From 6363787d7caa26c10a4acc0ab7c89c8cc2781b00 Mon Sep 17 00:00:00 2001 From: derain Date: Thu, 9 May 2024 17:40:39 +0300 Subject: [PATCH 01/21] [REG-1273] - Init --- .nvmrc | 1 + artifacts/AmountDerivationErrors.json | 16 + artifacts/AmountDeriver.json | 16 + artifacts/Assertions.json | 627 ++++ artifacts/BaseRegistrarImplementation.json | 4 +- artifacts/BasicOrderFulfiller.json | 675 ++++ artifacts/BytesUtils.json | 4 +- artifacts/CNSRegistryForwarder.json | 4 +- artifacts/Conduit.json | 395 +++ artifacts/ConduitController.json | 446 +++ artifacts/ConduitControllerInterface.json | 441 +++ artifacts/ConduitInterface.json | 265 ++ artifacts/Consideration.json | 2967 +++++++++++++++++ artifacts/ConsiderationBase.json | 475 +++ artifacts/ConsiderationEventsAndErrors.json | 464 +++ artifacts/ConsiderationInterface.json | 2199 ++++++++++++ artifacts/Controllable.json | 4 +- artifacts/CounterManager.json | 491 +++ artifacts/CriteriaResolution.json | 74 + artifacts/CriteriaResolutionErrors.json | 74 + artifacts/DNSRegistrar.json | 4 +- artifacts/DNSSECImpl.json | 4 +- artifacts/DotCoinBurner.json | 4 +- artifacts/DummyAlgorithm.json | 4 +- artifacts/DummyOracle.json | 4 +- artifacts/ENSCustody.json | 4 +- artifacts/ENSRegistry.json | 4 +- .../ERC1155PresetMinterPauserUpgradeable.json | 4 +- artifacts/ERC1155Upgradeable.json | 4 +- artifacts/ERC1271SimpleWallet.json | 4 +- artifacts/ERC20.json | 4 +- artifacts/ERC20Recoverable.json | 4 +- artifacts/ERC721.json | 4 +- artifacts/ERC721Upgradeable.json | 4 +- artifacts/ETHRegistrarController.json | 4 +- artifacts/Executor.json | 653 ++++ artifacts/FulfillmentApplicationErrors.json | 43 + artifacts/FulfillmentApplier.json | 43 + artifacts/GettersAndDerivers.json | 475 +++ artifacts/ISeaportProxyBuyer.json | 247 ++ artifacts/LegacyENSRegistry.json | 4 +- artifacts/MintingManager.json | 4 +- artifacts/MintingManagerForwarder.json | 4 +- artifacts/MultiSend.json | 4 +- artifacts/NameWrapper.json | 4 +- artifacts/OrderCombiner.json | 775 +++++ artifacts/OrderFulfiller.json | 743 +++++ artifacts/OrderValidator.json | 675 ++++ artifacts/Owned.json | 4 +- artifacts/ProxyReader.json | 4 +- artifacts/ProxyReaderV04.json | 4 +- artifacts/PublicResolver.json | 4 +- artifacts/RSASHA256Algorithm.json | 4 +- artifacts/ReentrancyErrors.json | 31 + artifacts/ReentrancyGuard.json | 43 + artifacts/ResolverForwarder.json | 4 +- artifacts/ReverseClaimer.json | 4 +- artifacts/ReverseRegistrar.json | 4 +- artifacts/Root.json | 4 +- artifacts/SHA1.json | 4 +- artifacts/SHA1Digest.json | 4 +- artifacts/SHA1NSEC3Digest.json | 4 +- artifacts/SHA256Digest.json | 4 +- artifacts/Seaport.json | 2967 +++++++++++++++++ artifacts/SeaportProxyBuyer.json | 866 +++++ artifacts/SignatureVerification.json | 37 + artifacts/SignatureVerificationErrors.json | 37 + artifacts/StablePriceOracle.json | 4 +- artifacts/TLDPublicSuffixList.json | 4 +- artifacts/TokenTransferrer.json | 136 + artifacts/TokenTransferrerErrors.json | 136 + artifacts/UNSOperator.json | 4 +- artifacts/UNSRegistry.json | 4 +- artifacts/UNSRegistryV07.json | 4 +- artifacts/Verifiers.json | 653 ++++ artifacts/ZilliqaRecover.json | 4 +- artifacts/ZoneInteraction.json | 33 + artifacts/ZoneInteractionErrors.json | 33 + artifacts/abi/AmountDerivationErrors.json | 1 + artifacts/abi/AmountDeriver.json | 1 + artifacts/abi/Assertions.json | 1 + artifacts/abi/BasicOrderFulfiller.json | 1 + artifacts/abi/Conduit.json | 1 + artifacts/abi/ConduitController.json | 1 + artifacts/abi/ConduitControllerInterface.json | 1 + artifacts/abi/ConduitInterface.json | 1 + artifacts/abi/Consideration.json | 1 + artifacts/abi/ConsiderationBase.json | 1 + .../abi/ConsiderationEventsAndErrors.json | 1 + artifacts/abi/ConsiderationInterface.json | 1 + artifacts/abi/CounterManager.json | 1 + artifacts/abi/CriteriaResolution.json | 1 + artifacts/abi/CriteriaResolutionErrors.json | 1 + artifacts/abi/Executor.json | 1 + .../abi/FulfillmentApplicationErrors.json | 1 + artifacts/abi/FulfillmentApplier.json | 1 + artifacts/abi/GettersAndDerivers.json | 1 + artifacts/abi/ISeaportProxyBuyer.json | 1 + artifacts/abi/OrderCombiner.json | 1 + artifacts/abi/OrderFulfiller.json | 1 + artifacts/abi/OrderValidator.json | 1 + artifacts/abi/ReentrancyErrors.json | 1 + artifacts/abi/ReentrancyGuard.json | 1 + artifacts/abi/Seaport.json | 1 + artifacts/abi/SeaportProxyBuyer.json | 1 + artifacts/abi/SignatureVerification.json | 1 + .../abi/SignatureVerificationErrors.json | 1 + artifacts/abi/TokenTransferrer.json | 1 + artifacts/abi/TokenTransferrerErrors.json | 1 + artifacts/abi/Verifiers.json | 1 + artifacts/abi/ZoneInteraction.json | 1 + artifacts/abi/ZoneInteractionErrors.json | 1 + contracts/marketplace/ISeaportProxyBuyer.sol | 76 + contracts/marketplace/SeaportProxyBuyer.sol | 90 + contracts/marketplace/_refs.sol | 7 + dist/sandbox/db.tgz | Bin 548064 -> 542776 bytes dist/types/contracts/index.d.ts | 2 + dist/types/contracts/index.d.ts.map | 2 +- .../marketplace/ISeaportProxyBuyer.d.ts | 128 + .../marketplace/ISeaportProxyBuyer.d.ts.map | 1 + .../marketplace/ISeaportProxyBuyer.js | 2 + .../marketplace/SeaportProxyBuyer.d.ts | 484 +++ .../marketplace/SeaportProxyBuyer.d.ts.map | 1 + .../marketplace/SeaportProxyBuyer.js | 2 + dist/types/contracts/marketplace/index.d.ts | 3 + .../contracts/marketplace/index.d.ts.map | 1 + dist/types/contracts/marketplace/index.js | 2 + dist/types/factories/contracts/index.d.ts | 1 + dist/types/factories/contracts/index.d.ts.map | 2 +- dist/types/factories/contracts/index.js | 3 +- .../ISeaportProxyBuyer__factory.d.ts | 126 + .../ISeaportProxyBuyer__factory.d.ts.map | 1 + .../ISeaportProxyBuyer__factory.js | 168 + .../SeaportProxyBuyer__factory.d.ts | 628 ++++ .../SeaportProxyBuyer__factory.d.ts.map | 1 + .../marketplace/SeaportProxyBuyer__factory.js | 818 +++++ .../contracts/marketplace/index.d.ts | 3 + .../contracts/marketplace/index.d.ts.map | 1 + .../factories/contracts/marketplace/index.js | 7 + dist/types/factories/index.d.ts | 1 + dist/types/factories/index.d.ts.map | 2 +- dist/types/factories/index.js | 3 +- dist/types/factories/seaport-types/index.d.ts | 2 + .../factories/seaport-types/index.d.ts.map | 1 + dist/types/factories/seaport-types/index.js | 27 + .../factories/seaport-types/src/index.d.ts | 2 + .../seaport-types/src/index.d.ts.map | 1 + .../factories/seaport-types/src/index.js | 27 + .../ConsiderationInterface__factory.d.ts | 1705 ++++++++++ .../ConsiderationInterface__factory.d.ts.map | 1 + .../ConsiderationInterface__factory.js | 2204 ++++++++++++ .../seaport-types/src/interfaces/index.d.ts | 2 + .../src/interfaces/index.d.ts.map | 1 + .../seaport-types/src/interfaces/index.js | 5 + dist/types/index.d.ts | 8 + dist/types/index.d.ts.map | 2 +- dist/types/index.js | 8 +- dist/types/seaport-types/index.d.ts | 3 + dist/types/seaport-types/index.d.ts.map | 1 + dist/types/seaport-types/index.js | 2 + dist/types/seaport-types/src/index.d.ts | 3 + dist/types/seaport-types/src/index.d.ts.map | 1 + dist/types/seaport-types/src/index.js | 2 + .../interfaces/ConsiderationInterface.d.ts | 604 ++++ .../ConsiderationInterface.d.ts.map | 1 + .../src/interfaces/ConsiderationInterface.js | 2 + .../seaport-types/src/interfaces/index.d.ts | 2 + .../src/interfaces/index.d.ts.map | 1 + .../seaport-types/src/interfaces/index.js | 2 + hardhat.config.ts | 12 +- package.json | 5 +- sandbox/db.tgz | Bin 548064 -> 542776 bytes test/marketplace/SeaportProxyBuyer.test.ts | 223 ++ yarn.lock | 103 +- 174 files changed, 25887 insertions(+), 100 deletions(-) create mode 100644 .nvmrc create mode 100644 artifacts/AmountDerivationErrors.json create mode 100644 artifacts/AmountDeriver.json create mode 100644 artifacts/Assertions.json create mode 100644 artifacts/BasicOrderFulfiller.json create mode 100644 artifacts/Conduit.json create mode 100644 artifacts/ConduitController.json create mode 100644 artifacts/ConduitControllerInterface.json create mode 100644 artifacts/ConduitInterface.json create mode 100644 artifacts/Consideration.json create mode 100644 artifacts/ConsiderationBase.json create mode 100644 artifacts/ConsiderationEventsAndErrors.json create mode 100644 artifacts/ConsiderationInterface.json create mode 100644 artifacts/CounterManager.json create mode 100644 artifacts/CriteriaResolution.json create mode 100644 artifacts/CriteriaResolutionErrors.json create mode 100644 artifacts/Executor.json create mode 100644 artifacts/FulfillmentApplicationErrors.json create mode 100644 artifacts/FulfillmentApplier.json create mode 100644 artifacts/GettersAndDerivers.json create mode 100644 artifacts/ISeaportProxyBuyer.json create mode 100644 artifacts/OrderCombiner.json create mode 100644 artifacts/OrderFulfiller.json create mode 100644 artifacts/OrderValidator.json create mode 100644 artifacts/ReentrancyErrors.json create mode 100644 artifacts/ReentrancyGuard.json create mode 100644 artifacts/Seaport.json create mode 100644 artifacts/SeaportProxyBuyer.json create mode 100644 artifacts/SignatureVerification.json create mode 100644 artifacts/SignatureVerificationErrors.json create mode 100644 artifacts/TokenTransferrer.json create mode 100644 artifacts/TokenTransferrerErrors.json create mode 100644 artifacts/Verifiers.json create mode 100644 artifacts/ZoneInteraction.json create mode 100644 artifacts/ZoneInteractionErrors.json create mode 100644 artifacts/abi/AmountDerivationErrors.json create mode 100644 artifacts/abi/AmountDeriver.json create mode 100644 artifacts/abi/Assertions.json create mode 100644 artifacts/abi/BasicOrderFulfiller.json create mode 100644 artifacts/abi/Conduit.json create mode 100644 artifacts/abi/ConduitController.json create mode 100644 artifacts/abi/ConduitControllerInterface.json create mode 100644 artifacts/abi/ConduitInterface.json create mode 100644 artifacts/abi/Consideration.json create mode 100644 artifacts/abi/ConsiderationBase.json create mode 100644 artifacts/abi/ConsiderationEventsAndErrors.json create mode 100644 artifacts/abi/ConsiderationInterface.json create mode 100644 artifacts/abi/CounterManager.json create mode 100644 artifacts/abi/CriteriaResolution.json create mode 100644 artifacts/abi/CriteriaResolutionErrors.json create mode 100644 artifacts/abi/Executor.json create mode 100644 artifacts/abi/FulfillmentApplicationErrors.json create mode 100644 artifacts/abi/FulfillmentApplier.json create mode 100644 artifacts/abi/GettersAndDerivers.json create mode 100644 artifacts/abi/ISeaportProxyBuyer.json create mode 100644 artifacts/abi/OrderCombiner.json create mode 100644 artifacts/abi/OrderFulfiller.json create mode 100644 artifacts/abi/OrderValidator.json create mode 100644 artifacts/abi/ReentrancyErrors.json create mode 100644 artifacts/abi/ReentrancyGuard.json create mode 100644 artifacts/abi/Seaport.json create mode 100644 artifacts/abi/SeaportProxyBuyer.json create mode 100644 artifacts/abi/SignatureVerification.json create mode 100644 artifacts/abi/SignatureVerificationErrors.json create mode 100644 artifacts/abi/TokenTransferrer.json create mode 100644 artifacts/abi/TokenTransferrerErrors.json create mode 100644 artifacts/abi/Verifiers.json create mode 100644 artifacts/abi/ZoneInteraction.json create mode 100644 artifacts/abi/ZoneInteractionErrors.json create mode 100644 contracts/marketplace/ISeaportProxyBuyer.sol create mode 100644 contracts/marketplace/SeaportProxyBuyer.sol create mode 100644 contracts/marketplace/_refs.sol create mode 100644 dist/types/contracts/marketplace/ISeaportProxyBuyer.d.ts create mode 100644 dist/types/contracts/marketplace/ISeaportProxyBuyer.d.ts.map create mode 100644 dist/types/contracts/marketplace/ISeaportProxyBuyer.js create mode 100644 dist/types/contracts/marketplace/SeaportProxyBuyer.d.ts create mode 100644 dist/types/contracts/marketplace/SeaportProxyBuyer.d.ts.map create mode 100644 dist/types/contracts/marketplace/SeaportProxyBuyer.js create mode 100644 dist/types/contracts/marketplace/index.d.ts create mode 100644 dist/types/contracts/marketplace/index.d.ts.map create mode 100644 dist/types/contracts/marketplace/index.js create mode 100644 dist/types/factories/contracts/marketplace/ISeaportProxyBuyer__factory.d.ts create mode 100644 dist/types/factories/contracts/marketplace/ISeaportProxyBuyer__factory.d.ts.map create mode 100644 dist/types/factories/contracts/marketplace/ISeaportProxyBuyer__factory.js create mode 100644 dist/types/factories/contracts/marketplace/SeaportProxyBuyer__factory.d.ts create mode 100644 dist/types/factories/contracts/marketplace/SeaportProxyBuyer__factory.d.ts.map create mode 100644 dist/types/factories/contracts/marketplace/SeaportProxyBuyer__factory.js create mode 100644 dist/types/factories/contracts/marketplace/index.d.ts create mode 100644 dist/types/factories/contracts/marketplace/index.d.ts.map create mode 100644 dist/types/factories/contracts/marketplace/index.js create mode 100644 dist/types/factories/seaport-types/index.d.ts create mode 100644 dist/types/factories/seaport-types/index.d.ts.map create mode 100644 dist/types/factories/seaport-types/index.js create mode 100644 dist/types/factories/seaport-types/src/index.d.ts create mode 100644 dist/types/factories/seaport-types/src/index.d.ts.map create mode 100644 dist/types/factories/seaport-types/src/index.js create mode 100644 dist/types/factories/seaport-types/src/interfaces/ConsiderationInterface__factory.d.ts create mode 100644 dist/types/factories/seaport-types/src/interfaces/ConsiderationInterface__factory.d.ts.map create mode 100644 dist/types/factories/seaport-types/src/interfaces/ConsiderationInterface__factory.js create mode 100644 dist/types/factories/seaport-types/src/interfaces/index.d.ts create mode 100644 dist/types/factories/seaport-types/src/interfaces/index.d.ts.map create mode 100644 dist/types/factories/seaport-types/src/interfaces/index.js create mode 100644 dist/types/seaport-types/index.d.ts create mode 100644 dist/types/seaport-types/index.d.ts.map create mode 100644 dist/types/seaport-types/index.js create mode 100644 dist/types/seaport-types/src/index.d.ts create mode 100644 dist/types/seaport-types/src/index.d.ts.map create mode 100644 dist/types/seaport-types/src/index.js create mode 100644 dist/types/seaport-types/src/interfaces/ConsiderationInterface.d.ts create mode 100644 dist/types/seaport-types/src/interfaces/ConsiderationInterface.d.ts.map create mode 100644 dist/types/seaport-types/src/interfaces/ConsiderationInterface.js create mode 100644 dist/types/seaport-types/src/interfaces/index.d.ts create mode 100644 dist/types/seaport-types/src/interfaces/index.d.ts.map create mode 100644 dist/types/seaport-types/src/interfaces/index.js create mode 100644 test/marketplace/SeaportProxyBuyer.test.ts diff --git a/.nvmrc b/.nvmrc new file mode 100644 index 00000000..8b0beab1 --- /dev/null +++ b/.nvmrc @@ -0,0 +1 @@ +20.11.0 diff --git a/artifacts/AmountDerivationErrors.json b/artifacts/AmountDerivationErrors.json new file mode 100644 index 00000000..e10b4ebe --- /dev/null +++ b/artifacts/AmountDerivationErrors.json @@ -0,0 +1,16 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "AmountDerivationErrors", + "sourceName": "seaport-types/src/interfaces/AmountDerivationErrors.sol", + "abi": [ + { + "inputs": [], + "name": "InexactFraction", + "type": "error" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x", + "linkReferences": {}, + "deployedLinkReferences": {} +} diff --git a/artifacts/AmountDeriver.json b/artifacts/AmountDeriver.json new file mode 100644 index 00000000..39a32a4c --- /dev/null +++ b/artifacts/AmountDeriver.json @@ -0,0 +1,16 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "AmountDeriver", + "sourceName": "seaport-core/src/lib/AmountDeriver.sol", + "abi": [ + { + "inputs": [], + "name": "InexactFraction", + "type": "error" + } + ], + "bytecode": "0x6080604052348015600e575f80fd5b50601580601a5f395ff3fe60806040525f80fdfea164736f6c6343000818000a", + "deployedBytecode": "0x60806040525f80fdfea164736f6c6343000818000a", + "linkReferences": {}, + "deployedLinkReferences": {} +} diff --git a/artifacts/Assertions.json b/artifacts/Assertions.json new file mode 100644 index 00000000..e5d6b70e --- /dev/null +++ b/artifacts/Assertions.json @@ -0,0 +1,627 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "Assertions", + "sourceName": "seaport-core/src/lib/Assertions.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "conduitController", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [], + "name": "BadFraction", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "BadReturnValueFromERC20OnTransfer", + "type": "error" + }, + { + "inputs": [], + "name": "CannotCancelOrder", + "type": "error" + }, + { + "inputs": [], + "name": "ConsiderationLengthNotEqualToTotalOriginal", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "considerationIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "shortfallAmount", + "type": "uint256" + } + ], + "name": "ConsiderationNotMet", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256[]", + "name": "identifiers", + "type": "uint256[]" + }, + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + } + ], + "name": "ERC1155BatchTransferGenericFailure", + "type": "error" + }, + { + "inputs": [], + "name": "InsufficientNativeTokensSupplied", + "type": "error" + }, + { + "inputs": [], + "name": "Invalid1155BatchTransferEncoding", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidBasicOrderParameterEncoding", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "conduit", + "type": "address" + } + ], + "name": "InvalidCallToConduit", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "conduit", + "type": "address" + } + ], + "name": "InvalidConduit", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "InvalidERC721TransferAmount", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "InvalidMsgValue", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidNativeOfferItem", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + } + ], + "name": "InvalidTime", + "type": "error" + }, + { + "inputs": [], + "name": "MissingItemAmount", + "type": "error" + }, + { + "inputs": [], + "name": "MissingOriginalConsiderationItems", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "NativeTokenTransferGenericFailure", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "NoContract", + "type": "error" + }, + { + "inputs": [], + "name": "NoReentrantCalls", + "type": "error" + }, + { + "inputs": [], + "name": "NoSpecifiedOrdersAvailable", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "OrderAlreadyFilled", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "OrderIsCancelled", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "OrderPartiallyFilled", + "type": "error" + }, + { + "inputs": [], + "name": "PartialFillsNotEnabledForOrder", + "type": "error" + }, + { + "inputs": [], + "name": "TStoreAlreadyActivated", + "type": "error" + }, + { + "inputs": [], + "name": "TStoreNotSupported", + "type": "error" + }, + { + "inputs": [], + "name": "TloadTestContractDeploymentFailed", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "TokenTransferGenericFailure", + "type": "error" + }, + { + "inputs": [], + "name": "UnusedItemParameters", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint256", + "name": "newCounter", + "type": "uint256" + }, + { + "indexed": true, + "internalType": "address", + "name": "offerer", + "type": "address" + } + ], + "name": "CounterIncremented", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "zone", + "type": "address" + } + ], + "name": "OrderCancelled", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "indexed": false, + "internalType": "struct SpentItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "indexed": false, + "internalType": "struct ReceivedItem[]", + "name": "consideration", + "type": "tuple[]" + } + ], + "name": "OrderFulfilled", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + }, + { + "components": [ + { + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + } + ], + "internalType": "struct OfferItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct ConsiderationItem[]", + "name": "consideration", + "type": "tuple[]" + }, + { + "internalType": "enum OrderType", + "name": "orderType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "zoneHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "salt", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "totalOriginalConsiderationItems", + "type": "uint256" + } + ], + "indexed": false, + "internalType": "struct OrderParameters", + "name": "orderParameters", + "type": "tuple" + } + ], + "name": "OrderValidated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32[]", + "name": "orderHashes", + "type": "bytes32[]" + } + ], + "name": "OrdersMatched", + "type": "event" + }, + { + "inputs": [], + "name": "__activateTstore", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x610200604052348015610010575f80fd5b5060405161078f38038061078f83398101604081905261002f916102f5565b8080610039610158565b610120526101005260e05260c081905260a082815246610140819052604080515f9485526020879052948152606091825230608090815292842085825293909152939052610160526001600160a01b038316610180819052630a96ad3960e01b825282519092630a96ad3992600480820193918290030181865afa1580156100c3573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906100e79190610322565b506101a052505f90506100f861027e565b90506001600160a01b03811661012157604051632aea588760e01b815260040160405180910390fd5b5f61012b82610297565b8015156101c0526001600160a01b0383166101e05290508061015057600163929eee14555b5050506103b6565b5f808080808061018860408051808201909152600d81526c21b7b739b4b232b930ba34b7b760991b602082015290565b8051906020012095506040518060400160405280600381526020016218971b60e91b8152508051906020012094505f6040518060a00160405280606a8152602001610725606a913990505f6040518060c001604052806084815260200161057b6084913990505f60405180610100016040528060d4815260200161065160d4913990506040518060800160405280605281526020016105ff6052913980519060200120965082805190602001209550818051906020012094505f81838560405160200161025793929190610371565b60405160208183030381529060405290508080519060200120945050505050909192939495565b5f696002601e613d5c3d52f35f52600a60165ff0905090565b5f816001600160a01b0316600a5a6102af9190610397565b6040515f8181818686fa925050503d805f81146102e7576040519150601f19603f3d011682016040523d82523d5f602084013e6102ec565b606091505b50909392505050565b5f60208284031215610305575f80fd5b81516001600160a01b038116811461031b575f80fd5b9392505050565b5f8060408385031215610333575f80fd5b505080516020909101519092909150565b5f81515f5b818110156103635760208185018101518683015201610349565b505f93019283525090919050565b5f61038e6103886103828488610344565b86610344565b84610344565b95945050505050565b5f826103b157634e487b7160e01b5f52601260045260245ffd5b500490565b60805160a05160c05160e05161010051610120516101405161016051610180516101a0516101c0516101e0516101626104195f395f608d01525f604201525f50505f50505f50505f50505f50505f50505f50505f50505f50505f50506101625ff3fe608060405234801561000f575f80fd5b5060043610610029575f3560e01c80637423eb3c1461002d575b5f80fd5b610035610037565b005b63929eee14546001147f00000000000000000000000000000000000000000000000000000000000000008061006a575080155b1561008857604051630f45b98b60e41b815260040160405180910390fd5b6100b17f00000000000000000000000000000000000000000000000000000000000000006100d8565b6100ce576040516370a4078f60e01b815260040160405180910390fd5b5f63929eee145550565b5f816001600160a01b0316600a5a6100f09190610136565b6040515f8181818686fa925050503d805f8114610128576040519150601f19603f3d011682016040523d82523d5f602084013e61012d565b606091505b50909392505050565b5f8261015057634e487b7160e01b5f52601260045260245ffd5b50049056fea164736f6c6343000818000a436f6e73696465726174696f6e4974656d2875696e7438206974656d547970652c6164647265737320746f6b656e2c75696e74323536206964656e7469666965724f7243726974657269612c75696e74323536207374617274416d6f756e742c75696e7432353620656e64416d6f756e742c6164647265737320726563697069656e7429454950373132446f6d61696e28737472696e67206e616d652c737472696e672076657273696f6e2c75696e7432353620636861696e49642c6164647265737320766572696679696e67436f6e7472616374294f72646572436f6d706f6e656e74732861646472657373206f6666657265722c61646472657373207a6f6e652c4f666665724974656d5b5d206f666665722c436f6e73696465726174696f6e4974656d5b5d20636f6e73696465726174696f6e2c75696e7438206f72646572547970652c75696e7432353620737461727454696d652c75696e7432353620656e6454696d652c62797465733332207a6f6e65486173682c75696e743235362073616c742c6279746573333220636f6e647569744b65792c75696e7432353620636f756e746572294f666665724974656d2875696e7438206974656d547970652c6164647265737320746f6b656e2c75696e74323536206964656e7469666965724f7243726974657269612c75696e74323536207374617274416d6f756e742c75696e7432353620656e64416d6f756e7429", + "deployedBytecode": "0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c80637423eb3c1461002d575b5f80fd5b610035610037565b005b63929eee14546001147f00000000000000000000000000000000000000000000000000000000000000008061006a575080155b1561008857604051630f45b98b60e41b815260040160405180910390fd5b6100b17f00000000000000000000000000000000000000000000000000000000000000006100d8565b6100ce576040516370a4078f60e01b815260040160405180910390fd5b5f63929eee145550565b5f816001600160a01b0316600a5a6100f09190610136565b6040515f8181818686fa925050503d805f8114610128576040519150601f19603f3d011682016040523d82523d5f602084013e61012d565b606091505b50909392505050565b5f8261015057634e487b7160e01b5f52601260045260245ffd5b50049056fea164736f6c6343000818000a", + "linkReferences": {}, + "deployedLinkReferences": {} +} diff --git a/artifacts/BaseRegistrarImplementation.json b/artifacts/BaseRegistrarImplementation.json index 1e58532f..2b92a6fd 100644 --- a/artifacts/BaseRegistrarImplementation.json +++ b/artifacts/BaseRegistrarImplementation.json @@ -732,8 +732,8 @@ "type": "function" } ], - "bytecode": "0x60806040523480156200001157600080fd5b506040516200201738038062002017833981016040819052620000349162000109565b60408051602080820183526000808352835191820190935282815290916200005d8382620001ea565b5060016200006c8282620001ea565b5050506200008962000083620000b360201b60201c565b620000b7565b600880546001600160a01b0319166001600160a01b039390931692909217909155600955620002b6565b3390565b600680546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600080604083850312156200011d57600080fd5b82516001600160a01b03811681146200013557600080fd5b6020939093015192949293505050565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200017057607f821691505b6020821081036200019157634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620001e557600081815260208120601f850160051c81016020861015620001c05750805b601f850160051c820191505b81811015620001e157828155600101620001cc565b5050505b505050565b81516001600160401b0381111562000206576200020662000145565b6200021e816200021784546200015b565b8462000197565b602080601f8311600181146200025657600084156200023d5750858301515b600019600386901b1c1916600185901b178555620001e1565b600085815260208120601f198616915b82811015620002875788860151825594840194600190910190840162000266565b5085821015620002a65787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b611d5180620002c66000396000f3fe608060405234801561001057600080fd5b50600436106101cf5760003560e01c806395d89b4111610104578063c87b56dd116100a2578063e985e9c511610071578063e985e9c5146103e0578063f2fde38b1461041c578063f6a74ed71461042f578063fca247ac1461044257600080fd5b8063c87b56dd14610381578063d6e4fa8614610394578063da8c229e146103b4578063ddf7fcb0146103d757600080fd5b8063a7fc7a07116100de578063a7fc7a071461033e578063b88d4fde14610351578063c1a287e214610364578063c475abff1461036e57600080fd5b806395d89b411461031057806396e494e814610318578063a22cb4651461032b57600080fd5b80633f15457f116101715780636352211e1161014b5780636352211e146102d157806370a08231146102e4578063715018a6146102f75780638da5cb5b146102ff57600080fd5b80633f15457f1461029857806342842e0e146102ab5780634e543b26146102be57600080fd5b8063095ea7b3116101ad578063095ea7b31461023c5780630e297b451461025157806323b872dd1461027257806328ed4f6c1461028557600080fd5b806301ffc9a7146101d457806306fdde03146101fc578063081812fc14610211575b600080fd5b6101e76101e236600461183e565b610455565b60405190151581526020015b60405180910390f35b6102046104a7565b6040516101f391906118ab565b61022461021f3660046118be565b610539565b6040516001600160a01b0390911681526020016101f3565b61024f61024a3660046118ec565b610560565b005b61026461025f366004611918565b61067a565b6040519081526020016101f3565b61024f610280366004611950565b610691565b61024f610293366004611980565b6106c2565b600854610224906001600160a01b031681565b61024f6102b9366004611950565b6107db565b61024f6102cc3660046119b0565b6107f6565b6102246102df3660046118be565b61086b565b6102646102f23660046119b0565b61088e565b61024f610914565b6006546001600160a01b0316610224565b610204610928565b6101e76103263660046118be565b610937565b61024f6103393660046119cd565b61095d565b61024f61034c3660046119b0565b61096c565b61024f61035f366004611a16565b6109c0565b6102646276a70081565b61026461037c366004611af6565b6109f8565b61020461038f3660046118be565b610b89565b6102646103a23660046118be565b60009081526007602052604090205490565b6101e76103c23660046119b0565b600a6020526000908152604090205460ff1681565b61026460095481565b6101e76103ee366004611b18565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b61024f61042a3660046119b0565b610bfd565b61024f61043d3660046119b0565b610c76565b610264610450366004611918565b610cc7565b60006001600160e01b031982166301ffc9a760e01b148061048657506001600160e01b031982166380ac58cd60e01b145b806104a157506001600160e01b03198216630a3b53db60e21b145b92915050565b6060600080546104b690611b46565b80601f01602080910402602001604051908101604052809291908181526020018280546104e290611b46565b801561052f5780601f106105045761010080835404028352916020019161052f565b820191906000526020600020905b81548152906001019060200180831161051257829003601f168201915b5050505050905090565b600061054482610cd6565b506000908152600460205260409020546001600160a01b031690565b600061056b82610d35565b9050806001600160a01b0316836001600160a01b0316036105dd5760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084015b60405180910390fd5b336001600160a01b03821614806105f957506105f981336103ee565b61066b5760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016105d4565b6106758383610d95565b505050565b60006106898484846000610e03565b949350505050565b61069b3382611013565b6106b75760405162461bcd60e51b81526004016105d490611b80565b61067583838361108e565b6008546009546040516302571be360e01b8152600481019190915230916001600160a01b0316906302571be390602401602060405180830381865afa15801561070f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107339190611bcd565b6001600160a01b03161461074657600080fd5b6107503383611013565b61075957600080fd5b6008546009546040516306ab592360e01b81526004810191909152602481018490526001600160a01b038381166044830152909116906306ab5923906064016020604051808303816000875af11580156107b7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106759190611bea565b610675838383604051806020016040528060008152506109c0565b6107fe6111f2565b600854600954604051630c4b7b8560e11b815260048101919091526001600160a01b03838116602483015290911690631896f70a90604401600060405180830381600087803b15801561085057600080fd5b505af1158015610864573d6000803e3d6000fd5b5050505050565b600081815260076020526040812054421061088557600080fd5b6104a182610d35565b60006001600160a01b0382166108f85760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b60648201526084016105d4565b506001600160a01b031660009081526003602052604090205490565b61091c6111f2565b610926600061124c565b565b6060600180546104b690611b46565b6000818152600760205260408120544290610956906276a70090611c03565b1092915050565b61096833838361129e565b5050565b6109746111f2565b6001600160a01b0381166000818152600a6020526040808220805460ff19166001179055517f0a8bb31534c0ed46f380cb867bd5c803a189ced9a764e30b3a4991a9901d74749190a250565b6109ca3383611013565b6109e65760405162461bcd60e51b81526004016105d490611b80565b6109f28484848461136c565b50505050565b6008546009546040516302571be360e01b8152600481019190915260009130916001600160a01b03909116906302571be390602401602060405180830381865afa158015610a4a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a6e9190611bcd565b6001600160a01b031614610a8157600080fd5b336000908152600a602052604090205460ff16610a9d57600080fd5b6000838152600760205260409020544290610abc906276a70090611c03565b1015610ac757600080fd5b610ad46276a70083611c03565b6000848152600760205260409020546276a70090610af3908590611c03565b610afd9190611c03565b11610b0757600080fd5b60008381526007602052604081208054849290610b25908490611c03565b90915550506000838152600760205260409081902054905184917f9b87a00e30f1ac65d898f070f8a3488fe60517182d0a2098e1b4b93a54aa9bd691610b6d91815260200190565b60405180910390a2505060009081526007602052604090205490565b6060610b9482610cd6565b6000610bab60408051602081019091526000815290565b90506000815111610bcb5760405180602001604052806000815250610bf6565b80610bd58461139f565b604051602001610be6929190611c24565b6040516020818303038152906040525b9392505050565b610c056111f2565b6001600160a01b038116610c6a5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016105d4565b610c738161124c565b50565b610c7e6111f2565b6001600160a01b0381166000818152600a6020526040808220805460ff19169055517f33d83959be2573f5453b12eb9d43b3499bc57d96bd2f067ba44803c859e811139190a250565b60006106898484846001610e03565b6000818152600260205260409020546001600160a01b0316610c735760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105d4565b6000818152600260205260408120546001600160a01b0316806104a15760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105d4565b600081815260046020526040902080546001600160a01b0319166001600160a01b0384169081179091558190610dca82610d35565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6008546009546040516302571be360e01b8152600481019190915260009130916001600160a01b03909116906302571be390602401602060405180830381865afa158015610e55573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e799190611bcd565b6001600160a01b031614610e8c57600080fd5b336000908152600a602052604090205460ff16610ea857600080fd5b610eb185610937565b610eba57600080fd5b610ec76276a70042611c03565b6276a700610ed58542611c03565b610edf9190611c03565b11610ee957600080fd5b610ef38342611c03565b6000868152600760209081526040808320939093556002905220546001600160a01b031615610f2557610f2585611432565b610f2f84866114c7565b8115610fb9576008546009546040516306ab592360e01b81526004810191909152602481018790526001600160a01b038681166044830152909116906306ab5923906064016020604051808303816000875af1158015610f93573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fb79190611bea565b505b6001600160a01b038416857fb3d987963d01b2f68493b4bdb130988f157ea43070d4ad840fee0466ed9370d9610fef8642611c03565b60405190815260200160405180910390a361100a8342611c03565b95945050505050565b60008061101f8361086b565b9050806001600160a01b0316846001600160a01b0316148061105a5750836001600160a01b031661104f84610539565b6001600160a01b0316145b8061068957506001600160a01b0380821660009081526005602090815260408083209388168352929052205460ff16610689565b826001600160a01b03166110a182610d35565b6001600160a01b0316146110c75760405162461bcd60e51b81526004016105d490611c53565b6001600160a01b0382166111295760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b60648201526084016105d4565b826001600160a01b031661113c82610d35565b6001600160a01b0316146111625760405162461bcd60e51b81526004016105d490611c53565b600081815260046020908152604080832080546001600160a01b03199081169091556001600160a01b0387811680865260038552838620805460001901905590871680865283862080546001019055868652600290945282852080549092168417909155905184937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6006546001600160a01b031633146109265760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016105d4565b600680546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b816001600160a01b0316836001600160a01b0316036112ff5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c65720000000000000060448201526064016105d4565b6001600160a01b03838116600081815260056020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b61137784848461108e565b61138384848484611652565b6109f25760405162461bcd60e51b81526004016105d490611c98565b606060006113ac83611750565b600101905060008167ffffffffffffffff8111156113cc576113cc611a00565b6040519080825280601f01601f1916602001820160405280156113f6576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a850494508461140057509392505050565b600061143d82610d35565b905061144882610d35565b600083815260046020908152604080832080546001600160a01b03199081169091556001600160a01b0385168085526003845282852080546000190190558785526002909352818420805490911690555192935084927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6001600160a01b03821661151d5760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f206164647265737360448201526064016105d4565b6000818152600260205260409020546001600160a01b0316156115825760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105d4565b6000818152600260205260409020546001600160a01b0316156115e75760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105d4565b6001600160a01b038216600081815260036020908152604080832080546001019055848352600290915280822080546001600160a01b0319168417905551839291907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b60006001600160a01b0384163b1561174857604051630a85bd0160e11b81526001600160a01b0385169063150b7a0290611696903390899088908890600401611cea565b6020604051808303816000875af19250505080156116d1575060408051601f3d908101601f191682019092526116ce91810190611d27565b60015b61172e573d8080156116ff576040519150601f19603f3d011682016040523d82523d6000602084013e611704565b606091505b5080516000036117265760405162461bcd60e51b81526004016105d490611c98565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610689565b506001610689565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b831061178f5772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef810000000083106117bb576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc1000083106117d957662386f26fc10000830492506010015b6305f5e10083106117f1576305f5e100830492506008015b612710831061180557612710830492506004015b60648310611817576064830492506002015b600a83106104a15760010192915050565b6001600160e01b031981168114610c7357600080fd5b60006020828403121561185057600080fd5b8135610bf681611828565b60005b8381101561187657818101518382015260200161185e565b50506000910152565b6000815180845261189781602086016020860161185b565b601f01601f19169290920160200192915050565b602081526000610bf6602083018461187f565b6000602082840312156118d057600080fd5b5035919050565b6001600160a01b0381168114610c7357600080fd5b600080604083850312156118ff57600080fd5b823561190a816118d7565b946020939093013593505050565b60008060006060848603121561192d57600080fd5b83359250602084013561193f816118d7565b929592945050506040919091013590565b60008060006060848603121561196557600080fd5b8335611970816118d7565b9250602084013561193f816118d7565b6000806040838503121561199357600080fd5b8235915060208301356119a5816118d7565b809150509250929050565b6000602082840312156119c257600080fd5b8135610bf6816118d7565b600080604083850312156119e057600080fd5b82356119eb816118d7565b9150602083013580151581146119a557600080fd5b634e487b7160e01b600052604160045260246000fd5b60008060008060808587031215611a2c57600080fd5b8435611a37816118d7565b93506020850135611a47816118d7565b925060408501359150606085013567ffffffffffffffff80821115611a6b57600080fd5b818701915087601f830112611a7f57600080fd5b813581811115611a9157611a91611a00565b604051601f8201601f19908116603f01168101908382118183101715611ab957611ab9611a00565b816040528281528a6020848701011115611ad257600080fd5b82602086016020830137600060208483010152809550505050505092959194509250565b60008060408385031215611b0957600080fd5b50508035926020909101359150565b60008060408385031215611b2b57600080fd5b8235611b36816118d7565b915060208301356119a5816118d7565b600181811c90821680611b5a57607f821691505b602082108103611b7a57634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252602d908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526c1c881bdc88185c1c1c9bdd9959609a1b606082015260800190565b600060208284031215611bdf57600080fd5b8151610bf6816118d7565b600060208284031215611bfc57600080fd5b5051919050565b808201808211156104a157634e487b7160e01b600052601160045260246000fd5b60008351611c3681846020880161185b565b835190830190611c4a81836020880161185b565b01949350505050565b60208082526025908201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060408201526437bbb732b960d91b606082015260800190565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090611d1d9083018461187f565b9695505050505050565b600060208284031215611d3957600080fd5b8151610bf68161182856fea164736f6c6343000811000a", - "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101cf5760003560e01c806395d89b4111610104578063c87b56dd116100a2578063e985e9c511610071578063e985e9c5146103e0578063f2fde38b1461041c578063f6a74ed71461042f578063fca247ac1461044257600080fd5b8063c87b56dd14610381578063d6e4fa8614610394578063da8c229e146103b4578063ddf7fcb0146103d757600080fd5b8063a7fc7a07116100de578063a7fc7a071461033e578063b88d4fde14610351578063c1a287e214610364578063c475abff1461036e57600080fd5b806395d89b411461031057806396e494e814610318578063a22cb4651461032b57600080fd5b80633f15457f116101715780636352211e1161014b5780636352211e146102d157806370a08231146102e4578063715018a6146102f75780638da5cb5b146102ff57600080fd5b80633f15457f1461029857806342842e0e146102ab5780634e543b26146102be57600080fd5b8063095ea7b3116101ad578063095ea7b31461023c5780630e297b451461025157806323b872dd1461027257806328ed4f6c1461028557600080fd5b806301ffc9a7146101d457806306fdde03146101fc578063081812fc14610211575b600080fd5b6101e76101e236600461183e565b610455565b60405190151581526020015b60405180910390f35b6102046104a7565b6040516101f391906118ab565b61022461021f3660046118be565b610539565b6040516001600160a01b0390911681526020016101f3565b61024f61024a3660046118ec565b610560565b005b61026461025f366004611918565b61067a565b6040519081526020016101f3565b61024f610280366004611950565b610691565b61024f610293366004611980565b6106c2565b600854610224906001600160a01b031681565b61024f6102b9366004611950565b6107db565b61024f6102cc3660046119b0565b6107f6565b6102246102df3660046118be565b61086b565b6102646102f23660046119b0565b61088e565b61024f610914565b6006546001600160a01b0316610224565b610204610928565b6101e76103263660046118be565b610937565b61024f6103393660046119cd565b61095d565b61024f61034c3660046119b0565b61096c565b61024f61035f366004611a16565b6109c0565b6102646276a70081565b61026461037c366004611af6565b6109f8565b61020461038f3660046118be565b610b89565b6102646103a23660046118be565b60009081526007602052604090205490565b6101e76103c23660046119b0565b600a6020526000908152604090205460ff1681565b61026460095481565b6101e76103ee366004611b18565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b61024f61042a3660046119b0565b610bfd565b61024f61043d3660046119b0565b610c76565b610264610450366004611918565b610cc7565b60006001600160e01b031982166301ffc9a760e01b148061048657506001600160e01b031982166380ac58cd60e01b145b806104a157506001600160e01b03198216630a3b53db60e21b145b92915050565b6060600080546104b690611b46565b80601f01602080910402602001604051908101604052809291908181526020018280546104e290611b46565b801561052f5780601f106105045761010080835404028352916020019161052f565b820191906000526020600020905b81548152906001019060200180831161051257829003601f168201915b5050505050905090565b600061054482610cd6565b506000908152600460205260409020546001600160a01b031690565b600061056b82610d35565b9050806001600160a01b0316836001600160a01b0316036105dd5760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084015b60405180910390fd5b336001600160a01b03821614806105f957506105f981336103ee565b61066b5760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016105d4565b6106758383610d95565b505050565b60006106898484846000610e03565b949350505050565b61069b3382611013565b6106b75760405162461bcd60e51b81526004016105d490611b80565b61067583838361108e565b6008546009546040516302571be360e01b8152600481019190915230916001600160a01b0316906302571be390602401602060405180830381865afa15801561070f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107339190611bcd565b6001600160a01b03161461074657600080fd5b6107503383611013565b61075957600080fd5b6008546009546040516306ab592360e01b81526004810191909152602481018490526001600160a01b038381166044830152909116906306ab5923906064016020604051808303816000875af11580156107b7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106759190611bea565b610675838383604051806020016040528060008152506109c0565b6107fe6111f2565b600854600954604051630c4b7b8560e11b815260048101919091526001600160a01b03838116602483015290911690631896f70a90604401600060405180830381600087803b15801561085057600080fd5b505af1158015610864573d6000803e3d6000fd5b5050505050565b600081815260076020526040812054421061088557600080fd5b6104a182610d35565b60006001600160a01b0382166108f85760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b60648201526084016105d4565b506001600160a01b031660009081526003602052604090205490565b61091c6111f2565b610926600061124c565b565b6060600180546104b690611b46565b6000818152600760205260408120544290610956906276a70090611c03565b1092915050565b61096833838361129e565b5050565b6109746111f2565b6001600160a01b0381166000818152600a6020526040808220805460ff19166001179055517f0a8bb31534c0ed46f380cb867bd5c803a189ced9a764e30b3a4991a9901d74749190a250565b6109ca3383611013565b6109e65760405162461bcd60e51b81526004016105d490611b80565b6109f28484848461136c565b50505050565b6008546009546040516302571be360e01b8152600481019190915260009130916001600160a01b03909116906302571be390602401602060405180830381865afa158015610a4a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a6e9190611bcd565b6001600160a01b031614610a8157600080fd5b336000908152600a602052604090205460ff16610a9d57600080fd5b6000838152600760205260409020544290610abc906276a70090611c03565b1015610ac757600080fd5b610ad46276a70083611c03565b6000848152600760205260409020546276a70090610af3908590611c03565b610afd9190611c03565b11610b0757600080fd5b60008381526007602052604081208054849290610b25908490611c03565b90915550506000838152600760205260409081902054905184917f9b87a00e30f1ac65d898f070f8a3488fe60517182d0a2098e1b4b93a54aa9bd691610b6d91815260200190565b60405180910390a2505060009081526007602052604090205490565b6060610b9482610cd6565b6000610bab60408051602081019091526000815290565b90506000815111610bcb5760405180602001604052806000815250610bf6565b80610bd58461139f565b604051602001610be6929190611c24565b6040516020818303038152906040525b9392505050565b610c056111f2565b6001600160a01b038116610c6a5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016105d4565b610c738161124c565b50565b610c7e6111f2565b6001600160a01b0381166000818152600a6020526040808220805460ff19169055517f33d83959be2573f5453b12eb9d43b3499bc57d96bd2f067ba44803c859e811139190a250565b60006106898484846001610e03565b6000818152600260205260409020546001600160a01b0316610c735760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105d4565b6000818152600260205260408120546001600160a01b0316806104a15760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105d4565b600081815260046020526040902080546001600160a01b0319166001600160a01b0384169081179091558190610dca82610d35565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6008546009546040516302571be360e01b8152600481019190915260009130916001600160a01b03909116906302571be390602401602060405180830381865afa158015610e55573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e799190611bcd565b6001600160a01b031614610e8c57600080fd5b336000908152600a602052604090205460ff16610ea857600080fd5b610eb185610937565b610eba57600080fd5b610ec76276a70042611c03565b6276a700610ed58542611c03565b610edf9190611c03565b11610ee957600080fd5b610ef38342611c03565b6000868152600760209081526040808320939093556002905220546001600160a01b031615610f2557610f2585611432565b610f2f84866114c7565b8115610fb9576008546009546040516306ab592360e01b81526004810191909152602481018790526001600160a01b038681166044830152909116906306ab5923906064016020604051808303816000875af1158015610f93573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fb79190611bea565b505b6001600160a01b038416857fb3d987963d01b2f68493b4bdb130988f157ea43070d4ad840fee0466ed9370d9610fef8642611c03565b60405190815260200160405180910390a361100a8342611c03565b95945050505050565b60008061101f8361086b565b9050806001600160a01b0316846001600160a01b0316148061105a5750836001600160a01b031661104f84610539565b6001600160a01b0316145b8061068957506001600160a01b0380821660009081526005602090815260408083209388168352929052205460ff16610689565b826001600160a01b03166110a182610d35565b6001600160a01b0316146110c75760405162461bcd60e51b81526004016105d490611c53565b6001600160a01b0382166111295760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b60648201526084016105d4565b826001600160a01b031661113c82610d35565b6001600160a01b0316146111625760405162461bcd60e51b81526004016105d490611c53565b600081815260046020908152604080832080546001600160a01b03199081169091556001600160a01b0387811680865260038552838620805460001901905590871680865283862080546001019055868652600290945282852080549092168417909155905184937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6006546001600160a01b031633146109265760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016105d4565b600680546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b816001600160a01b0316836001600160a01b0316036112ff5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c65720000000000000060448201526064016105d4565b6001600160a01b03838116600081815260056020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b61137784848461108e565b61138384848484611652565b6109f25760405162461bcd60e51b81526004016105d490611c98565b606060006113ac83611750565b600101905060008167ffffffffffffffff8111156113cc576113cc611a00565b6040519080825280601f01601f1916602001820160405280156113f6576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a850494508461140057509392505050565b600061143d82610d35565b905061144882610d35565b600083815260046020908152604080832080546001600160a01b03199081169091556001600160a01b0385168085526003845282852080546000190190558785526002909352818420805490911690555192935084927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6001600160a01b03821661151d5760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f206164647265737360448201526064016105d4565b6000818152600260205260409020546001600160a01b0316156115825760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105d4565b6000818152600260205260409020546001600160a01b0316156115e75760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105d4565b6001600160a01b038216600081815260036020908152604080832080546001019055848352600290915280822080546001600160a01b0319168417905551839291907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b60006001600160a01b0384163b1561174857604051630a85bd0160e11b81526001600160a01b0385169063150b7a0290611696903390899088908890600401611cea565b6020604051808303816000875af19250505080156116d1575060408051601f3d908101601f191682019092526116ce91810190611d27565b60015b61172e573d8080156116ff576040519150601f19603f3d011682016040523d82523d6000602084013e611704565b606091505b5080516000036117265760405162461bcd60e51b81526004016105d490611c98565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610689565b506001610689565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b831061178f5772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef810000000083106117bb576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc1000083106117d957662386f26fc10000830492506010015b6305f5e10083106117f1576305f5e100830492506008015b612710831061180557612710830492506004015b60648310611817576064830492506002015b600a83106104a15760010192915050565b6001600160e01b031981168114610c7357600080fd5b60006020828403121561185057600080fd5b8135610bf681611828565b60005b8381101561187657818101518382015260200161185e565b50506000910152565b6000815180845261189781602086016020860161185b565b601f01601f19169290920160200192915050565b602081526000610bf6602083018461187f565b6000602082840312156118d057600080fd5b5035919050565b6001600160a01b0381168114610c7357600080fd5b600080604083850312156118ff57600080fd5b823561190a816118d7565b946020939093013593505050565b60008060006060848603121561192d57600080fd5b83359250602084013561193f816118d7565b929592945050506040919091013590565b60008060006060848603121561196557600080fd5b8335611970816118d7565b9250602084013561193f816118d7565b6000806040838503121561199357600080fd5b8235915060208301356119a5816118d7565b809150509250929050565b6000602082840312156119c257600080fd5b8135610bf6816118d7565b600080604083850312156119e057600080fd5b82356119eb816118d7565b9150602083013580151581146119a557600080fd5b634e487b7160e01b600052604160045260246000fd5b60008060008060808587031215611a2c57600080fd5b8435611a37816118d7565b93506020850135611a47816118d7565b925060408501359150606085013567ffffffffffffffff80821115611a6b57600080fd5b818701915087601f830112611a7f57600080fd5b813581811115611a9157611a91611a00565b604051601f8201601f19908116603f01168101908382118183101715611ab957611ab9611a00565b816040528281528a6020848701011115611ad257600080fd5b82602086016020830137600060208483010152809550505050505092959194509250565b60008060408385031215611b0957600080fd5b50508035926020909101359150565b60008060408385031215611b2b57600080fd5b8235611b36816118d7565b915060208301356119a5816118d7565b600181811c90821680611b5a57607f821691505b602082108103611b7a57634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252602d908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526c1c881bdc88185c1c1c9bdd9959609a1b606082015260800190565b600060208284031215611bdf57600080fd5b8151610bf6816118d7565b600060208284031215611bfc57600080fd5b5051919050565b808201808211156104a157634e487b7160e01b600052601160045260246000fd5b60008351611c3681846020880161185b565b835190830190611c4a81836020880161185b565b01949350505050565b60208082526025908201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060408201526437bbb732b960d91b606082015260800190565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090611d1d9083018461187f565b9695505050505050565b600060208284031215611d3957600080fd5b8151610bf68161182856fea164736f6c6343000811000a", + "bytecode": "0x608060405234801562000010575f80fd5b5060405162001f7638038062001f76833981016040819052620000339162000106565b60408051602080820183525f808352835191820190935282815290916200005b8382620001dd565b5060016200006a8282620001dd565b5050506200008762000081620000b160201b60201c565b620000b5565b600880546001600160a01b0319166001600160a01b039390931692909217909155600955620002a9565b3390565b600680546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f806040838503121562000118575f80fd5b82516001600160a01b03811681146200012f575f80fd5b6020939093015192949293505050565b634e487b7160e01b5f52604160045260245ffd5b600181811c908216806200016857607f821691505b6020821081036200018757634e487b7160e01b5f52602260045260245ffd5b50919050565b601f821115620001d857805f5260205f20601f840160051c81016020851015620001b45750805b601f840160051c820191505b81811015620001d5575f8155600101620001c0565b50505b505050565b81516001600160401b03811115620001f957620001f96200013f565b62000211816200020a845462000153565b846200018d565b602080601f83116001811462000247575f84156200022f5750858301515b5f19600386901b1c1916600185901b178555620002a1565b5f85815260208120601f198616915b82811015620002775788860151825594840194600190910190840162000256565b50858210156200029557878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b611cbf80620002b75f395ff3fe608060405234801561000f575f80fd5b50600436106101c6575f3560e01c806395d89b41116100fe578063c87b56dd1161009e578063e985e9c51161006e578063e985e9c5146103d4578063f2fde38b1461040f578063f6a74ed714610422578063fca247ac14610435575f80fd5b8063c87b56dd14610377578063d6e4fa861461038a578063da8c229e146103a9578063ddf7fcb0146103cb575f80fd5b8063a7fc7a07116100d9578063a7fc7a0714610334578063b88d4fde14610347578063c1a287e21461035a578063c475abff14610364575f80fd5b806395d89b411461030657806396e494e81461030e578063a22cb46514610321575f80fd5b80633f15457f116101695780636352211e116101445780636352211e146102c757806370a08231146102da578063715018a6146102ed5780638da5cb5b146102f5575f80fd5b80633f15457f1461028e57806342842e0e146102a15780634e543b26146102b4575f80fd5b8063095ea7b3116101a4578063095ea7b3146102325780630e297b451461024757806323b872dd1461026857806328ed4f6c1461027b575f80fd5b806301ffc9a7146101ca57806306fdde03146101f2578063081812fc14610207575b5f80fd5b6101dd6101d83660046117dd565b610448565b60405190151581526020015b60405180910390f35b6101fa610499565b6040516101e99190611845565b61021a610215366004611857565b610528565b6040516001600160a01b0390911681526020016101e9565b610245610240366004611882565b61054d565b005b61025a6102553660046118ac565b610666565b6040519081526020016101e9565b6102456102763660046118e1565b61067b565b61024561028936600461190e565b6106ac565b60085461021a906001600160a01b031681565b6102456102af3660046118e1565b6107be565b6102456102c236600461193c565b6107d8565b61021a6102d5366004611857565b610848565b61025a6102e836600461193c565b610869565b6102456108ed565b6006546001600160a01b031661021a565b6101fa610900565b6101dd61031c366004611857565b61090f565b61024561032f366004611957565b610934565b61024561034236600461193c565b610943565b61024561035536600461199b565b610996565b61025a6276a70081565b61025a610372366004611a74565b6109ce565b6101fa610385366004611857565b610b52565b61025a610398366004611857565b5f9081526007602052604090205490565b6101dd6103b736600461193c565b600a6020525f908152604090205460ff1681565b61025a60095481565b6101dd6103e2366004611a94565b6001600160a01b039182165f90815260056020908152604080832093909416825291909152205460ff1690565b61024561041d36600461193c565b610bc2565b61024561043036600461193c565b610c3b565b61025a6104433660046118ac565b610c8b565b5f6001600160e01b031982166301ffc9a760e01b148061047857506001600160e01b031982166380ac58cd60e01b145b8061049357506001600160e01b03198216630a3b53db60e21b145b92915050565b60605f80546104a790611ac0565b80601f01602080910402602001604051908101604052809291908181526020018280546104d390611ac0565b801561051e5780601f106104f55761010080835404028352916020019161051e565b820191905f5260205f20905b81548152906001019060200180831161050157829003601f168201915b5050505050905090565b5f61053282610c99565b505f908152600460205260409020546001600160a01b031690565b5f61055782610cf7565b9050806001600160a01b0316836001600160a01b0316036105c95760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084015b60405180910390fd5b336001600160a01b03821614806105e557506105e581336103e2565b6106575760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016105c0565b6106618383610d56565b505050565b5f6106738484845f610dc3565b949350505050565b6106853382610fc7565b6106a15760405162461bcd60e51b81526004016105c090611af8565b610661838383611040565b6008546009546040516302571be360e01b8152600481019190915230916001600160a01b0316906302571be390602401602060405180830381865afa1580156106f7573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061071b9190611b45565b6001600160a01b03161461072d575f80fd5b6107373383610fc7565b61073f575f80fd5b6008546009546040516306ab592360e01b81526004810191909152602481018490526001600160a01b038381166044830152909116906306ab5923906064016020604051808303815f875af115801561079a573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106619190611b60565b61066183838360405180602001604052805f815250610996565b6107e06111a2565b600854600954604051630c4b7b8560e11b815260048101919091526001600160a01b03838116602483015290911690631896f70a906044015f604051808303815f87803b15801561082f575f80fd5b505af1158015610841573d5f803e3d5ffd5b5050505050565b5f818152600760205260408120544210610860575f80fd5b61049382610cf7565b5f6001600160a01b0382166108d25760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b60648201526084016105c0565b506001600160a01b03165f9081526003602052604090205490565b6108f56111a2565b6108fe5f6111fc565b565b6060600180546104a790611ac0565b5f81815260076020526040812054429061092d906276a70090611b77565b1092915050565b61093f33838361124d565b5050565b61094b6111a2565b6001600160a01b0381165f818152600a6020526040808220805460ff19166001179055517f0a8bb31534c0ed46f380cb867bd5c803a189ced9a764e30b3a4991a9901d74749190a250565b6109a03383610fc7565b6109bc5760405162461bcd60e51b81526004016105c090611af8565b6109c88484848461131a565b50505050565b6008546009546040516302571be360e01b815260048101919091525f9130916001600160a01b03909116906302571be390602401602060405180830381865afa158015610a1d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a419190611b45565b6001600160a01b031614610a53575f80fd5b335f908152600a602052604090205460ff16610a6d575f80fd5b5f838152600760205260409020544290610a8b906276a70090611b77565b1015610a95575f80fd5b610aa26276a70083611b77565b5f848152600760205260409020546276a70090610ac0908590611b77565b610aca9190611b77565b11610ad3575f80fd5b5f8381526007602052604081208054849290610af0908490611b77565b90915550505f838152600760205260409081902054905184917f9b87a00e30f1ac65d898f070f8a3488fe60517182d0a2098e1b4b93a54aa9bd691610b3791815260200190565b60405180910390a250505f9081526007602052604090205490565b6060610b5d82610c99565b5f610b7260408051602081019091525f815290565b90505f815111610b905760405180602001604052805f815250610bbb565b80610b9a8461134d565b604051602001610bab929190611b96565b6040516020818303038152906040525b9392505050565b610bca6111a2565b6001600160a01b038116610c2f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016105c0565b610c38816111fc565b50565b610c436111a2565b6001600160a01b0381165f818152600a6020526040808220805460ff19169055517f33d83959be2573f5453b12eb9d43b3499bc57d96bd2f067ba44803c859e811139190a250565b5f6106738484846001610dc3565b5f818152600260205260409020546001600160a01b0316610c385760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105c0565b5f818152600260205260408120546001600160a01b0316806104935760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105c0565b5f81815260046020526040902080546001600160a01b0319166001600160a01b0384169081179091558190610d8a82610cf7565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6008546009546040516302571be360e01b815260048101919091525f9130916001600160a01b03909116906302571be390602401602060405180830381865afa158015610e12573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e369190611b45565b6001600160a01b031614610e48575f80fd5b335f908152600a602052604090205460ff16610e62575f80fd5b610e6b8561090f565b610e73575f80fd5b610e806276a70042611b77565b6276a700610e8e8542611b77565b610e989190611b77565b11610ea1575f80fd5b610eab8342611b77565b5f868152600760209081526040808320939093556002905220546001600160a01b031615610edc57610edc856113dd565b610ee6848661146f565b8115610f6d576008546009546040516306ab592360e01b81526004810191909152602481018790526001600160a01b038681166044830152909116906306ab5923906064016020604051808303815f875af1158015610f47573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f6b9190611b60565b505b6001600160a01b038416857fb3d987963d01b2f68493b4bdb130988f157ea43070d4ad840fee0466ed9370d9610fa38642611b77565b60405190815260200160405180910390a3610fbe8342611b77565b95945050505050565b5f80610fd283610848565b9050806001600160a01b0316846001600160a01b0316148061100d5750836001600160a01b031661100284610528565b6001600160a01b0316145b8061067357506001600160a01b038082165f9081526005602090815260408083209388168352929052205460ff16610673565b826001600160a01b031661105382610cf7565b6001600160a01b0316146110795760405162461bcd60e51b81526004016105c090611bc4565b6001600160a01b0382166110db5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b60648201526084016105c0565b826001600160a01b03166110ee82610cf7565b6001600160a01b0316146111145760405162461bcd60e51b81526004016105c090611bc4565b5f81815260046020908152604080832080546001600160a01b03199081169091556001600160a01b038781168086526003855283862080545f1901905590871680865283862080546001019055868652600290945282852080549092168417909155905184937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6006546001600160a01b031633146108fe5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016105c0565b600680546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b816001600160a01b0316836001600160a01b0316036112ae5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c65720000000000000060448201526064016105c0565b6001600160a01b038381165f81815260056020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b611325848484611040565b611331848484846115f7565b6109c85760405162461bcd60e51b81526004016105c090611c09565b60605f611359836116f1565b60010190505f8167ffffffffffffffff81111561137857611378611987565b6040519080825280601f01601f1916602001820160405280156113a2576020820181803683370190505b5090508181016020015b5f19016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a85049450846113ac57509392505050565b5f6113e782610cf7565b90506113f282610cf7565b5f83815260046020908152604080832080546001600160a01b03199081169091556001600160a01b0385168085526003845282852080545f190190558785526002909352818420805490911690555192935084927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6001600160a01b0382166114c55760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f206164647265737360448201526064016105c0565b5f818152600260205260409020546001600160a01b0316156115295760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105c0565b5f818152600260205260409020546001600160a01b03161561158d5760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105c0565b6001600160a01b0382165f81815260036020908152604080832080546001019055848352600290915280822080546001600160a01b0319168417905551839291907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b5f6001600160a01b0384163b156116e957604051630a85bd0160e11b81526001600160a01b0385169063150b7a029061163a903390899088908890600401611c5b565b6020604051808303815f875af1925050508015611674575060408051601f3d908101601f1916820190925261167191810190611c97565b60015b6116cf573d8080156116a1576040519150601f19603f3d011682016040523d82523d5f602084013e6116a6565b606091505b5080515f036116c75760405162461bcd60e51b81526004016105c090611c09565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610673565b506001610673565b5f8072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b831061172f5772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef8100000000831061175b576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc10000831061177957662386f26fc10000830492506010015b6305f5e1008310611791576305f5e100830492506008015b61271083106117a557612710830492506004015b606483106117b7576064830492506002015b600a83106104935760010192915050565b6001600160e01b031981168114610c38575f80fd5b5f602082840312156117ed575f80fd5b8135610bbb816117c8565b5f5b838110156118125781810151838201526020016117fa565b50505f910152565b5f81518084526118318160208601602086016117f8565b601f01601f19169290920160200192915050565b602081525f610bbb602083018461181a565b5f60208284031215611867575f80fd5b5035919050565b6001600160a01b0381168114610c38575f80fd5b5f8060408385031215611893575f80fd5b823561189e8161186e565b946020939093013593505050565b5f805f606084860312156118be575f80fd5b8335925060208401356118d08161186e565b929592945050506040919091013590565b5f805f606084860312156118f3575f80fd5b83356118fe8161186e565b925060208401356118d08161186e565b5f806040838503121561191f575f80fd5b8235915060208301356119318161186e565b809150509250929050565b5f6020828403121561194c575f80fd5b8135610bbb8161186e565b5f8060408385031215611968575f80fd5b82356119738161186e565b915060208301358015158114611931575f80fd5b634e487b7160e01b5f52604160045260245ffd5b5f805f80608085870312156119ae575f80fd5b84356119b98161186e565b935060208501356119c98161186e565b925060408501359150606085013567ffffffffffffffff808211156119ec575f80fd5b818701915087601f8301126119ff575f80fd5b813581811115611a1157611a11611987565b604051601f8201601f19908116603f01168101908382118183101715611a3957611a39611987565b816040528281528a6020848701011115611a51575f80fd5b826020860160208301375f60208483010152809550505050505092959194509250565b5f8060408385031215611a85575f80fd5b50508035926020909101359150565b5f8060408385031215611aa5575f80fd5b8235611ab08161186e565b915060208301356119318161186e565b600181811c90821680611ad457607f821691505b602082108103611af257634e487b7160e01b5f52602260045260245ffd5b50919050565b6020808252602d908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526c1c881bdc88185c1c1c9bdd9959609a1b606082015260800190565b5f60208284031215611b55575f80fd5b8151610bbb8161186e565b5f60208284031215611b70575f80fd5b5051919050565b8082018082111561049357634e487b7160e01b5f52601160045260245ffd5b5f8351611ba78184602088016117f8565b835190830190611bbb8183602088016117f8565b01949350505050565b60208082526025908201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060408201526437bbb732b960d91b606082015260800190565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6001600160a01b03858116825284166020820152604081018390526080606082018190525f90611c8d9083018461181a565b9695505050505050565b5f60208284031215611ca7575f80fd5b8151610bbb816117c856fea164736f6c6343000818000a", + "deployedBytecode": "0x608060405234801561000f575f80fd5b50600436106101c6575f3560e01c806395d89b41116100fe578063c87b56dd1161009e578063e985e9c51161006e578063e985e9c5146103d4578063f2fde38b1461040f578063f6a74ed714610422578063fca247ac14610435575f80fd5b8063c87b56dd14610377578063d6e4fa861461038a578063da8c229e146103a9578063ddf7fcb0146103cb575f80fd5b8063a7fc7a07116100d9578063a7fc7a0714610334578063b88d4fde14610347578063c1a287e21461035a578063c475abff14610364575f80fd5b806395d89b411461030657806396e494e81461030e578063a22cb46514610321575f80fd5b80633f15457f116101695780636352211e116101445780636352211e146102c757806370a08231146102da578063715018a6146102ed5780638da5cb5b146102f5575f80fd5b80633f15457f1461028e57806342842e0e146102a15780634e543b26146102b4575f80fd5b8063095ea7b3116101a4578063095ea7b3146102325780630e297b451461024757806323b872dd1461026857806328ed4f6c1461027b575f80fd5b806301ffc9a7146101ca57806306fdde03146101f2578063081812fc14610207575b5f80fd5b6101dd6101d83660046117dd565b610448565b60405190151581526020015b60405180910390f35b6101fa610499565b6040516101e99190611845565b61021a610215366004611857565b610528565b6040516001600160a01b0390911681526020016101e9565b610245610240366004611882565b61054d565b005b61025a6102553660046118ac565b610666565b6040519081526020016101e9565b6102456102763660046118e1565b61067b565b61024561028936600461190e565b6106ac565b60085461021a906001600160a01b031681565b6102456102af3660046118e1565b6107be565b6102456102c236600461193c565b6107d8565b61021a6102d5366004611857565b610848565b61025a6102e836600461193c565b610869565b6102456108ed565b6006546001600160a01b031661021a565b6101fa610900565b6101dd61031c366004611857565b61090f565b61024561032f366004611957565b610934565b61024561034236600461193c565b610943565b61024561035536600461199b565b610996565b61025a6276a70081565b61025a610372366004611a74565b6109ce565b6101fa610385366004611857565b610b52565b61025a610398366004611857565b5f9081526007602052604090205490565b6101dd6103b736600461193c565b600a6020525f908152604090205460ff1681565b61025a60095481565b6101dd6103e2366004611a94565b6001600160a01b039182165f90815260056020908152604080832093909416825291909152205460ff1690565b61024561041d36600461193c565b610bc2565b61024561043036600461193c565b610c3b565b61025a6104433660046118ac565b610c8b565b5f6001600160e01b031982166301ffc9a760e01b148061047857506001600160e01b031982166380ac58cd60e01b145b8061049357506001600160e01b03198216630a3b53db60e21b145b92915050565b60605f80546104a790611ac0565b80601f01602080910402602001604051908101604052809291908181526020018280546104d390611ac0565b801561051e5780601f106104f55761010080835404028352916020019161051e565b820191905f5260205f20905b81548152906001019060200180831161050157829003601f168201915b5050505050905090565b5f61053282610c99565b505f908152600460205260409020546001600160a01b031690565b5f61055782610cf7565b9050806001600160a01b0316836001600160a01b0316036105c95760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084015b60405180910390fd5b336001600160a01b03821614806105e557506105e581336103e2565b6106575760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016105c0565b6106618383610d56565b505050565b5f6106738484845f610dc3565b949350505050565b6106853382610fc7565b6106a15760405162461bcd60e51b81526004016105c090611af8565b610661838383611040565b6008546009546040516302571be360e01b8152600481019190915230916001600160a01b0316906302571be390602401602060405180830381865afa1580156106f7573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061071b9190611b45565b6001600160a01b03161461072d575f80fd5b6107373383610fc7565b61073f575f80fd5b6008546009546040516306ab592360e01b81526004810191909152602481018490526001600160a01b038381166044830152909116906306ab5923906064016020604051808303815f875af115801561079a573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106619190611b60565b61066183838360405180602001604052805f815250610996565b6107e06111a2565b600854600954604051630c4b7b8560e11b815260048101919091526001600160a01b03838116602483015290911690631896f70a906044015f604051808303815f87803b15801561082f575f80fd5b505af1158015610841573d5f803e3d5ffd5b5050505050565b5f818152600760205260408120544210610860575f80fd5b61049382610cf7565b5f6001600160a01b0382166108d25760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b60648201526084016105c0565b506001600160a01b03165f9081526003602052604090205490565b6108f56111a2565b6108fe5f6111fc565b565b6060600180546104a790611ac0565b5f81815260076020526040812054429061092d906276a70090611b77565b1092915050565b61093f33838361124d565b5050565b61094b6111a2565b6001600160a01b0381165f818152600a6020526040808220805460ff19166001179055517f0a8bb31534c0ed46f380cb867bd5c803a189ced9a764e30b3a4991a9901d74749190a250565b6109a03383610fc7565b6109bc5760405162461bcd60e51b81526004016105c090611af8565b6109c88484848461131a565b50505050565b6008546009546040516302571be360e01b815260048101919091525f9130916001600160a01b03909116906302571be390602401602060405180830381865afa158015610a1d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a419190611b45565b6001600160a01b031614610a53575f80fd5b335f908152600a602052604090205460ff16610a6d575f80fd5b5f838152600760205260409020544290610a8b906276a70090611b77565b1015610a95575f80fd5b610aa26276a70083611b77565b5f848152600760205260409020546276a70090610ac0908590611b77565b610aca9190611b77565b11610ad3575f80fd5b5f8381526007602052604081208054849290610af0908490611b77565b90915550505f838152600760205260409081902054905184917f9b87a00e30f1ac65d898f070f8a3488fe60517182d0a2098e1b4b93a54aa9bd691610b3791815260200190565b60405180910390a250505f9081526007602052604090205490565b6060610b5d82610c99565b5f610b7260408051602081019091525f815290565b90505f815111610b905760405180602001604052805f815250610bbb565b80610b9a8461134d565b604051602001610bab929190611b96565b6040516020818303038152906040525b9392505050565b610bca6111a2565b6001600160a01b038116610c2f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016105c0565b610c38816111fc565b50565b610c436111a2565b6001600160a01b0381165f818152600a6020526040808220805460ff19169055517f33d83959be2573f5453b12eb9d43b3499bc57d96bd2f067ba44803c859e811139190a250565b5f6106738484846001610dc3565b5f818152600260205260409020546001600160a01b0316610c385760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105c0565b5f818152600260205260408120546001600160a01b0316806104935760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105c0565b5f81815260046020526040902080546001600160a01b0319166001600160a01b0384169081179091558190610d8a82610cf7565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6008546009546040516302571be360e01b815260048101919091525f9130916001600160a01b03909116906302571be390602401602060405180830381865afa158015610e12573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e369190611b45565b6001600160a01b031614610e48575f80fd5b335f908152600a602052604090205460ff16610e62575f80fd5b610e6b8561090f565b610e73575f80fd5b610e806276a70042611b77565b6276a700610e8e8542611b77565b610e989190611b77565b11610ea1575f80fd5b610eab8342611b77565b5f868152600760209081526040808320939093556002905220546001600160a01b031615610edc57610edc856113dd565b610ee6848661146f565b8115610f6d576008546009546040516306ab592360e01b81526004810191909152602481018790526001600160a01b038681166044830152909116906306ab5923906064016020604051808303815f875af1158015610f47573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f6b9190611b60565b505b6001600160a01b038416857fb3d987963d01b2f68493b4bdb130988f157ea43070d4ad840fee0466ed9370d9610fa38642611b77565b60405190815260200160405180910390a3610fbe8342611b77565b95945050505050565b5f80610fd283610848565b9050806001600160a01b0316846001600160a01b0316148061100d5750836001600160a01b031661100284610528565b6001600160a01b0316145b8061067357506001600160a01b038082165f9081526005602090815260408083209388168352929052205460ff16610673565b826001600160a01b031661105382610cf7565b6001600160a01b0316146110795760405162461bcd60e51b81526004016105c090611bc4565b6001600160a01b0382166110db5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b60648201526084016105c0565b826001600160a01b03166110ee82610cf7565b6001600160a01b0316146111145760405162461bcd60e51b81526004016105c090611bc4565b5f81815260046020908152604080832080546001600160a01b03199081169091556001600160a01b038781168086526003855283862080545f1901905590871680865283862080546001019055868652600290945282852080549092168417909155905184937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6006546001600160a01b031633146108fe5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016105c0565b600680546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b816001600160a01b0316836001600160a01b0316036112ae5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c65720000000000000060448201526064016105c0565b6001600160a01b038381165f81815260056020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b611325848484611040565b611331848484846115f7565b6109c85760405162461bcd60e51b81526004016105c090611c09565b60605f611359836116f1565b60010190505f8167ffffffffffffffff81111561137857611378611987565b6040519080825280601f01601f1916602001820160405280156113a2576020820181803683370190505b5090508181016020015b5f19016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a85049450846113ac57509392505050565b5f6113e782610cf7565b90506113f282610cf7565b5f83815260046020908152604080832080546001600160a01b03199081169091556001600160a01b0385168085526003845282852080545f190190558785526002909352818420805490911690555192935084927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6001600160a01b0382166114c55760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f206164647265737360448201526064016105c0565b5f818152600260205260409020546001600160a01b0316156115295760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105c0565b5f818152600260205260409020546001600160a01b03161561158d5760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105c0565b6001600160a01b0382165f81815260036020908152604080832080546001019055848352600290915280822080546001600160a01b0319168417905551839291907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b5f6001600160a01b0384163b156116e957604051630a85bd0160e11b81526001600160a01b0385169063150b7a029061163a903390899088908890600401611c5b565b6020604051808303815f875af1925050508015611674575060408051601f3d908101601f1916820190925261167191810190611c97565b60015b6116cf573d8080156116a1576040519150601f19603f3d011682016040523d82523d5f602084013e6116a6565b606091505b5080515f036116c75760405162461bcd60e51b81526004016105c090611c09565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610673565b506001610673565b5f8072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b831061172f5772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef8100000000831061175b576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc10000831061177957662386f26fc10000830492506010015b6305f5e1008310611791576305f5e100830492506008015b61271083106117a557612710830492506004015b606483106117b7576064830492506002015b600a83106104935760010192915050565b6001600160e01b031981168114610c38575f80fd5b5f602082840312156117ed575f80fd5b8135610bbb816117c8565b5f5b838110156118125781810151838201526020016117fa565b50505f910152565b5f81518084526118318160208601602086016117f8565b601f01601f19169290920160200192915050565b602081525f610bbb602083018461181a565b5f60208284031215611867575f80fd5b5035919050565b6001600160a01b0381168114610c38575f80fd5b5f8060408385031215611893575f80fd5b823561189e8161186e565b946020939093013593505050565b5f805f606084860312156118be575f80fd5b8335925060208401356118d08161186e565b929592945050506040919091013590565b5f805f606084860312156118f3575f80fd5b83356118fe8161186e565b925060208401356118d08161186e565b5f806040838503121561191f575f80fd5b8235915060208301356119318161186e565b809150509250929050565b5f6020828403121561194c575f80fd5b8135610bbb8161186e565b5f8060408385031215611968575f80fd5b82356119738161186e565b915060208301358015158114611931575f80fd5b634e487b7160e01b5f52604160045260245ffd5b5f805f80608085870312156119ae575f80fd5b84356119b98161186e565b935060208501356119c98161186e565b925060408501359150606085013567ffffffffffffffff808211156119ec575f80fd5b818701915087601f8301126119ff575f80fd5b813581811115611a1157611a11611987565b604051601f8201601f19908116603f01168101908382118183101715611a3957611a39611987565b816040528281528a6020848701011115611a51575f80fd5b826020860160208301375f60208483010152809550505050505092959194509250565b5f8060408385031215611a85575f80fd5b50508035926020909101359150565b5f8060408385031215611aa5575f80fd5b8235611ab08161186e565b915060208301356119318161186e565b600181811c90821680611ad457607f821691505b602082108103611af257634e487b7160e01b5f52602260045260245ffd5b50919050565b6020808252602d908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526c1c881bdc88185c1c1c9bdd9959609a1b606082015260800190565b5f60208284031215611b55575f80fd5b8151610bbb8161186e565b5f60208284031215611b70575f80fd5b5051919050565b8082018082111561049357634e487b7160e01b5f52601160045260245ffd5b5f8351611ba78184602088016117f8565b835190830190611bbb8183602088016117f8565b01949350505050565b60208082526025908201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060408201526437bbb732b960d91b606082015260800190565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6001600160a01b03858116825284166020820152604081018390526080606082018190525f90611c8d9083018461181a565b9695505050505050565b5f60208284031215611ca7575f80fd5b8151610bbb816117c856fea164736f6c6343000818000a", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/artifacts/BasicOrderFulfiller.json b/artifacts/BasicOrderFulfiller.json new file mode 100644 index 00000000..34387d3f --- /dev/null +++ b/artifacts/BasicOrderFulfiller.json @@ -0,0 +1,675 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "BasicOrderFulfiller", + "sourceName": "seaport-core/src/lib/BasicOrderFulfiller.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "conduitController", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [], + "name": "BadContractSignature", + "type": "error" + }, + { + "inputs": [], + "name": "BadFraction", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "BadReturnValueFromERC20OnTransfer", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint8", + "name": "v", + "type": "uint8" + } + ], + "name": "BadSignatureV", + "type": "error" + }, + { + "inputs": [], + "name": "CannotCancelOrder", + "type": "error" + }, + { + "inputs": [], + "name": "ConsiderationLengthNotEqualToTotalOriginal", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "considerationIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "shortfallAmount", + "type": "uint256" + } + ], + "name": "ConsiderationNotMet", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256[]", + "name": "identifiers", + "type": "uint256[]" + }, + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + } + ], + "name": "ERC1155BatchTransferGenericFailure", + "type": "error" + }, + { + "inputs": [], + "name": "InsufficientNativeTokensSupplied", + "type": "error" + }, + { + "inputs": [], + "name": "Invalid1155BatchTransferEncoding", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidBasicOrderParameterEncoding", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "conduit", + "type": "address" + } + ], + "name": "InvalidCallToConduit", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "conduit", + "type": "address" + } + ], + "name": "InvalidConduit", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "InvalidContractOrder", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "InvalidERC721TransferAmount", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "InvalidMsgValue", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidNativeOfferItem", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "InvalidRestrictedOrder", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidSignature", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidSigner", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + } + ], + "name": "InvalidTime", + "type": "error" + }, + { + "inputs": [], + "name": "MissingItemAmount", + "type": "error" + }, + { + "inputs": [], + "name": "MissingOriginalConsiderationItems", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "NativeTokenTransferGenericFailure", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "NoContract", + "type": "error" + }, + { + "inputs": [], + "name": "NoReentrantCalls", + "type": "error" + }, + { + "inputs": [], + "name": "NoSpecifiedOrdersAvailable", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "OrderAlreadyFilled", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "OrderIsCancelled", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "OrderPartiallyFilled", + "type": "error" + }, + { + "inputs": [], + "name": "PartialFillsNotEnabledForOrder", + "type": "error" + }, + { + "inputs": [], + "name": "TStoreAlreadyActivated", + "type": "error" + }, + { + "inputs": [], + "name": "TStoreNotSupported", + "type": "error" + }, + { + "inputs": [], + "name": "TloadTestContractDeploymentFailed", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "TokenTransferGenericFailure", + "type": "error" + }, + { + "inputs": [], + "name": "UnusedItemParameters", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint256", + "name": "newCounter", + "type": "uint256" + }, + { + "indexed": true, + "internalType": "address", + "name": "offerer", + "type": "address" + } + ], + "name": "CounterIncremented", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "zone", + "type": "address" + } + ], + "name": "OrderCancelled", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "indexed": false, + "internalType": "struct SpentItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "indexed": false, + "internalType": "struct ReceivedItem[]", + "name": "consideration", + "type": "tuple[]" + } + ], + "name": "OrderFulfilled", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + }, + { + "components": [ + { + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + } + ], + "internalType": "struct OfferItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct ConsiderationItem[]", + "name": "consideration", + "type": "tuple[]" + }, + { + "internalType": "enum OrderType", + "name": "orderType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "zoneHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "salt", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "totalOriginalConsiderationItems", + "type": "uint256" + } + ], + "indexed": false, + "internalType": "struct OrderParameters", + "name": "orderParameters", + "type": "tuple" + } + ], + "name": "OrderValidated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32[]", + "name": "orderHashes", + "type": "bytes32[]" + } + ], + "name": "OrdersMatched", + "type": "event" + }, + { + "inputs": [], + "name": "__activateTstore", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x610200604052348015610010575f80fd5b5060405161079738038061079783398101604081905261002f916102fd565b80808080808061003d610160565b610120526101005260e05260c081905260a082815246610140819052604080515f9485526020879052948152606091825230608090815292842085825293909152939052610160526001600160a01b038316610180819052630a96ad3960e01b825282519092630a96ad3992600480820193918290030181865afa1580156100c7573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906100eb919061032a565b506101a052505f90506100fc610286565b90506001600160a01b03811661012557604051632aea588760e01b815260040160405180910390fd5b5f61012f8261029f565b8015156101c0526001600160a01b0383166101e05290508061015457600163929eee14555b505050505050506103be565b5f808080808061019060408051808201909152600d81526c21b7b739b4b232b930ba34b7b760991b602082015290565b8051906020012095506040518060400160405280600381526020016218971b60e91b8152508051906020012094505f6040518060a00160405280606a815260200161072d606a913990505f6040518060c00160405280608481526020016105836084913990505f60405180610100016040528060d4815260200161065960d4913990506040518060800160405280605281526020016106076052913980519060200120965082805190602001209550818051906020012094505f81838560405160200161025f93929190610379565b60405160208183030381529060405290508080519060200120945050505050909192939495565b5f696002601e613d5c3d52f35f52600a60165ff0905090565b5f816001600160a01b0316600a5a6102b7919061039f565b6040515f8181818686fa925050503d805f81146102ef576040519150601f19603f3d011682016040523d82523d5f602084013e6102f4565b606091505b50909392505050565b5f6020828403121561030d575f80fd5b81516001600160a01b0381168114610323575f80fd5b9392505050565b5f806040838503121561033b575f80fd5b505080516020909101519092909150565b5f81515f5b8181101561036b5760208185018101518683015201610351565b505f93019283525090919050565b5f61039661039061038a848861034c565b8661034c565b8461034c565b95945050505050565b5f826103b957634e487b7160e01b5f52601260045260245ffd5b500490565b60805160a05160c05160e05161010051610120516101405161016051610180516101a0516101c0516101e0516101626104215f395f608d01525f604201525f50505f50505f50505f50505f50505f50505f50505f50505f50505f50506101625ff3fe608060405234801561000f575f80fd5b5060043610610029575f3560e01c80637423eb3c1461002d575b5f80fd5b610035610037565b005b63929eee14546001147f00000000000000000000000000000000000000000000000000000000000000008061006a575080155b1561008857604051630f45b98b60e41b815260040160405180910390fd5b6100b17f00000000000000000000000000000000000000000000000000000000000000006100d8565b6100ce576040516370a4078f60e01b815260040160405180910390fd5b5f63929eee145550565b5f816001600160a01b0316600a5a6100f09190610136565b6040515f8181818686fa925050503d805f8114610128576040519150601f19603f3d011682016040523d82523d5f602084013e61012d565b606091505b50909392505050565b5f8261015057634e487b7160e01b5f52601260045260245ffd5b50049056fea164736f6c6343000818000a436f6e73696465726174696f6e4974656d2875696e7438206974656d547970652c6164647265737320746f6b656e2c75696e74323536206964656e7469666965724f7243726974657269612c75696e74323536207374617274416d6f756e742c75696e7432353620656e64416d6f756e742c6164647265737320726563697069656e7429454950373132446f6d61696e28737472696e67206e616d652c737472696e672076657273696f6e2c75696e7432353620636861696e49642c6164647265737320766572696679696e67436f6e7472616374294f72646572436f6d706f6e656e74732861646472657373206f6666657265722c61646472657373207a6f6e652c4f666665724974656d5b5d206f666665722c436f6e73696465726174696f6e4974656d5b5d20636f6e73696465726174696f6e2c75696e7438206f72646572547970652c75696e7432353620737461727454696d652c75696e7432353620656e6454696d652c62797465733332207a6f6e65486173682c75696e743235362073616c742c6279746573333220636f6e647569744b65792c75696e7432353620636f756e746572294f666665724974656d2875696e7438206974656d547970652c6164647265737320746f6b656e2c75696e74323536206964656e7469666965724f7243726974657269612c75696e74323536207374617274416d6f756e742c75696e7432353620656e64416d6f756e7429", + "deployedBytecode": "0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c80637423eb3c1461002d575b5f80fd5b610035610037565b005b63929eee14546001147f00000000000000000000000000000000000000000000000000000000000000008061006a575080155b1561008857604051630f45b98b60e41b815260040160405180910390fd5b6100b17f00000000000000000000000000000000000000000000000000000000000000006100d8565b6100ce576040516370a4078f60e01b815260040160405180910390fd5b5f63929eee145550565b5f816001600160a01b0316600a5a6100f09190610136565b6040515f8181818686fa925050503d805f8114610128576040519150601f19603f3d011682016040523d82523d5f602084013e61012d565b606091505b50909392505050565b5f8261015057634e487b7160e01b5f52601260045260245ffd5b50049056fea164736f6c6343000818000a", + "linkReferences": {}, + "deployedLinkReferences": {} +} diff --git a/artifacts/BytesUtils.json b/artifacts/BytesUtils.json index dfb31502..5e8d3647 100644 --- a/artifacts/BytesUtils.json +++ b/artifacts/BytesUtils.json @@ -20,8 +20,8 @@ "type": "error" } ], - "bytecode": "0x602d6037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea164736f6c6343000811000a", - "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea164736f6c6343000811000a", + "bytecode": "0x602c6032600b8282823980515f1a607314602657634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe730000000000000000000000000000000000000000301460806040525f80fdfea164736f6c6343000818000a", + "deployedBytecode": "0x730000000000000000000000000000000000000000301460806040525f80fdfea164736f6c6343000818000a", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/artifacts/CNSRegistryForwarder.json b/artifacts/CNSRegistryForwarder.json index 5dec03b6..826b199c 100644 --- a/artifacts/CNSRegistryForwarder.json +++ b/artifacts/CNSRegistryForwarder.json @@ -126,8 +126,8 @@ "type": "function" } ], - "bytecode": "0x60806040523480156200001157600080fd5b5060405162001ef938038062001ef9833981016040819052620000349162000657565b600180546001600160a01b0319166001600160a01b03831617905560408051606081019091526025808252620000c7919062001b7960208301396040518060600160405280602e815260200162001e87602e913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b6200013e60405180606001604052806029815260200162001c046029913960405180606001604052806032815260200162001c8a6032913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b620001b56040518060600160405280602f815260200162001d93602f913960405180606001604052806038815260200162001b9e6038913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b620002216040518060400160405280600d81526020016c6275726e2875696e743235362960981b8152506040518060400160405280601681526020017f6275726e466f722875696e743235362c627974657329000000000000000000008152506200061860201b60201c565b6200029860405180606001604052806021815260200162001e66602191396040518060600160405280602a815260200162001d69602a913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b6200030f60405180606001604052806025815260200162001cde602591396040518060600160405280602e815260200162001bd6602e913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b620003866040518060600160405280602b815260200162001dfd602b913960405180606001604052806034815260200162001b456034913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b620003fd60405180606001604052806031815260200162001d38603191396040518060600160405280603a815260200162001c50603a913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b6200047460405180606001604052806035815260200162001d03603591396040518060600160405280603e815260200162001e28603e913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b620004eb6040518060600160405280603b815260200162001dc2603b913960405180608001604052806044815260200162001eb56044913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b6200057e6040518060400160405280601981526020017f6275726e4368696c642875696e743235362c737472696e67290000000000000081525060405180606001604052806022815260200162001cbc6022913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b620006116040518060400160405280601a81526020017f7265736f6c7665546f28616464726573732c75696e743235362900000000000081525060405180606001604052806023815260200162001c2d6023913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b5062000689565b80516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b6000602082840312156200066a57600080fd5b81516001600160a01b03811681146200068257600080fd5b9392505050565b6114ac80620006996000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a424740014610090575b600080fd5b610059610054366004610cac565b6100b3565b6040516100669190610d9b565b60405180910390f35b61008261007d366004610dae565b610162565b604051908152602001610066565b6100a361009e366004610cac565b6101d6565b6040519015158152602001610066565b606060005a90506101576100ca6020870187610ddc565b6001546001600160a01b03166040880135846100e960608b018b610df9565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061023592505050565b9150505b9392505050565b600154604051636ccbae5f60e01b8152600481018390526000916001600160a01b031690636ccbae5f90602401602060405180830381865afa1580156101ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d09190610e40565b92915050565b600061022d6101e485610ef1565b600154604080516020601f88018190048102820181019092528681526001600160a01b039092169190879087908190840183828082843760009201919091525061030d92505050565b949350505050565b6060600080876001600160a01b0316866102518b8a8989610355565b60405161025e9190610f9b565b60006040518083038160008787f1925050503d806000811461029c576040519150601f19603f3d011682016040523d82523d6000602084013e6102a1565b606091505b5090925090506102b2603f87610fb7565b5a116102c0576102c0610fd9565b61030082826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061040a565b9998505050505050505050565b600061031a848484610443565b801561022d575060608401516020908101516001600160e01b031990811660009081529182905260409091205460e01b16151561022d565b50565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036103e75760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526103ff82828661058c565b979650505050505050565b6060831561041957508161015b565b8251156104295782518084602001fd5b8160405162461bcd60e51b81526004016103de9190610d9b565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561048a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104ae9190610e40565b9050600061055c8660600151805190602001208688602001516040516020016104fc9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561058257508551610582906001600160a01b03168286610a38565b9695505050505050565b60606001600160e01b03198416631de5861160e31b0361061a576000806000858060200190518101906105bf9190610fef565b92509250925086838383886040516024016105dd9493929190611032565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152935061015b92505050565b6001600160e01b03198416636debcb8d60e01b0361064b576000806000858060200190518101906105bf9190610fef565b6001600160e01b0319841663280d9b0560e01b036106dd576000806000808680602001905181019061067d91906110aa565b935093509350935087848484848a60405160240161069f959493929190611118565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152945061015b9350505050565b6001600160e01b031984166361603dd960e01b0361075c5760008380602001905181019061070b9190610e40565b905084818460405160240161072192919061115d565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152915061015b9050565b6001600160e01b0319841663b34f33c560e01b036107ab5760008060008580602001905181019061078d9190611176565b92509250925086838383886040516024016105dd94939291906111d0565b6001600160e01b03198416633013529360e01b036107dc5760008060008580602001905181019061078d9190611176565b6001600160e01b031984166307eca39560e01b03610830576000806000808680602001905181019061080e9190611209565b935093509350935087848484848a60405160240161069f95949392919061127e565b6001600160e01b031984166368b6154f60e01b03610862576000806000808680602001905181019061067d91906110aa565b6001600160e01b0319841663341de35b60e21b03610894576000806000808680602001905181019061067d91906110aa565b6001600160e01b03198416637a84860f60e11b0361092d576000806000806000878060200190518101906108c891906112cb565b945094509450945094508885858585858c6040516024016108ee96959493929190611360565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152955061015b945050505050565b6001600160e01b03198416636fab95b360e01b036109b2576000808480602001905181019061095c91906113b9565b915091508582828660405160240161097693929190611400565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925061015b915050565b6001600160e01b0319841663288f888960e11b0361015b57600080848060200190518101906109e1919061142b565b91509150858282866040516024016109fb93929190611459565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925050509392505050565b6000806000610a478585610b7a565b90925090506000816004811115610a6057610a60611489565b148015610a7e5750856001600160a01b0316826001600160a01b0316145b15610a8e5760019250505061015b565b600080876001600160a01b0316631626ba7e60e01b8888604051602401610ab692919061115d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051610af49190610f9b565b600060405180830381855afa9150503d8060008114610b2f576040519150601f19603f3d011682016040523d82523d6000602084013e610b34565b606091505b5091509150818015610b47575080516020145b8015610b6e57508051630b135d3f60e11b90610b6c9083016020908101908401610e40565b145b98975050505050505050565b6000808251604103610bb05760208301516040840151606085015160001a610ba487828585610bbf565b94509450505050610bb8565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610bf65750600090506003610ca3565b8460ff16601b14158015610c0e57508460ff16601c14155b15610c1f5750600090506004610ca3565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610c73573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610c9c57600060019250925050610ca3565b9150600090505b94509492505050565b600080600060408486031215610cc157600080fd5b833567ffffffffffffffff80821115610cd957600080fd5b9085019060808288031215610ced57600080fd5b90935060208501359080821115610d0357600080fd5b818601915086601f830112610d1757600080fd5b813581811115610d2657600080fd5b876020828501011115610d3857600080fd5b6020830194508093505050509250925092565b60005b83811015610d66578181015183820152602001610d4e565b50506000910152565b60008151808452610d87816020860160208601610d4b565b601f01601f19169290920160200192915050565b60208152600061015b6020830184610d6f565b600060208284031215610dc057600080fd5b5035919050565b6001600160a01b038116811461035257600080fd5b600060208284031215610dee57600080fd5b813561015b81610dc7565b6000808335601e19843603018112610e1057600080fd5b83018035915067ffffffffffffffff821115610e2b57600080fd5b602001915036819003821315610bb857600080fd5b600060208284031215610e5257600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610e9257610e92610e59565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ec157610ec1610e59565b604052919050565b600067ffffffffffffffff821115610ee357610ee3610e59565b50601f01601f191660200190565b600060808236031215610f0357600080fd5b610f0b610e6f565b8235610f1681610dc7565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610f4657600080fd5b840136601f820112610f5757600080fd5b8035610f6a610f6582610ec9565b610e98565b8181523684838501011115610f7e57600080fd5b818484018583013760009181019093015250606082015292915050565b60008251610fad818460208701610d4b565b9190910192915050565b600082610fd457634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b60008060006060848603121561100457600080fd5b835161100f81610dc7565b602085015190935061102081610dc7565b80925050604084015190509250925092565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061058290830184610d6f565b600082601f83011261107657600080fd5b8151611084610f6582610ec9565b81815284602083860101111561109957600080fd5b61022d826020830160208701610d4b565b600080600080608085870312156110c057600080fd5b84516110cb81610dc7565b60208601519094506110dc81610dc7565b60408601516060870151919450925067ffffffffffffffff81111561110057600080fd5b61110c87828801611065565b91505092959194509250565b6001600160a01b038681168252851660208201526040810184905260a06060820181905260009061114b90830185610d6f565b8281036080840152610b6e8185610d6f565b82815260406020820152600061022d6040830184610d6f565b60008060006060848603121561118b57600080fd5b835161119681610dc7565b60208501516040860151919450925067ffffffffffffffff8111156111ba57600080fd5b6111c686828701611065565b9150509250925092565b60018060a01b03851681528360208201526080604082015260006111f76080830185610d6f565b82810360608401526103ff8185610d6f565b6000806000806080858703121561121f57600080fd5b845161122a81610dc7565b60208601516040870151919550935067ffffffffffffffff8082111561124f57600080fd5b61125b88838901611065565b9350606087015191508082111561127157600080fd5b5061110c87828801611065565b60018060a01b038616815284602082015260a0604082015260006112a560a0830186610d6f565b82810360608401526112b78186610d6f565b90508281036080840152610b6e8185610d6f565b600080600080600060a086880312156112e357600080fd5b85516112ee81610dc7565b60208701519095506112ff81610dc7565b60408701516060880151919550935067ffffffffffffffff8082111561132457600080fd5b61133089838a01611065565b9350608088015191508082111561134657600080fd5b5061135388828901611065565b9150509295509295909350565b6001600160a01b038781168252861660208201526040810185905260c06060820181905260009061139390830186610d6f565b82810360808401526113a58186610d6f565b905082810360a08401526103008185610d6f565b600080604083850312156113cc57600080fd5b82519150602083015167ffffffffffffffff8111156113ea57600080fd5b6113f685828601611065565b9150509250929050565b8381526060602082015260006114196060830185610d6f565b82810360408401526105828185610d6f565b6000806040838503121561143e57600080fd5b825161144981610dc7565b6020939093015192949293505050565b60018060a01b03841681528260208201526060604082015260006114806060830184610d6f565b95945050505050565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a736166654d696e744368696c64466f7228616464726573732c75696e743235362c737472696e672c62797465732c6279746573297472616e7366657246726f6d28616464726573732c616464726573732c75696e7432353629736166655472616e7366657246726f6d466f7228616464726573732c616464726573732c75696e743235362c62797465732c627974657329736166654d696e744368696c64466f7228616464726573732c75696e743235362c737472696e672c627974657329736166655472616e7366657246726f6d28616464726573732c616464726573732c75696e74323536297265736f6c7665546f466f7228616464726573732c75696e743235362c6279746573297472616e7366657246726f6d4368696c64466f7228616464726573732c616464726573732c75696e743235362c737472696e672c627974657329736166655472616e7366657246726f6d466f7228616464726573732c616464726573732c75696e743235362c6279746573296275726e4368696c64466f722875696e743235362c737472696e672c627974657329736166654d696e744368696c6428616464726573732c75696e743235362c737472696e6729736166655472616e7366657246726f6d4368696c6428616464726573732c616464726573732c75696e743235362c737472696e67297472616e7366657246726f6d4368696c6428616464726573732c616464726573732c75696e743235362c737472696e67296d696e744368696c64466f7228616464726573732c75696e743235362c737472696e672c627974657329736166655472616e7366657246726f6d28616464726573732c616464726573732c75696e743235362c627974657329736166655472616e7366657246726f6d4368696c6428616464726573732c616464726573732c75696e743235362c737472696e672c627974657329736166654d696e744368696c6428616464726573732c75696e743235362c737472696e672c627974657329736166655472616e7366657246726f6d4368696c64466f7228616464726573732c616464726573732c75696e743235362c737472696e672c6279746573296d696e744368696c6428616464726573732c75696e743235362c737472696e67297472616e7366657246726f6d466f7228616464726573732c616464726573732c75696e743235362c627974657329736166655472616e7366657246726f6d4368696c64466f7228616464726573732c616464726573732c75696e743235362c737472696e672c62797465732c627974657329", - "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a424740014610090575b600080fd5b610059610054366004610cac565b6100b3565b6040516100669190610d9b565b60405180910390f35b61008261007d366004610dae565b610162565b604051908152602001610066565b6100a361009e366004610cac565b6101d6565b6040519015158152602001610066565b606060005a90506101576100ca6020870187610ddc565b6001546001600160a01b03166040880135846100e960608b018b610df9565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061023592505050565b9150505b9392505050565b600154604051636ccbae5f60e01b8152600481018390526000916001600160a01b031690636ccbae5f90602401602060405180830381865afa1580156101ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d09190610e40565b92915050565b600061022d6101e485610ef1565b600154604080516020601f88018190048102820181019092528681526001600160a01b039092169190879087908190840183828082843760009201919091525061030d92505050565b949350505050565b6060600080876001600160a01b0316866102518b8a8989610355565b60405161025e9190610f9b565b60006040518083038160008787f1925050503d806000811461029c576040519150601f19603f3d011682016040523d82523d6000602084013e6102a1565b606091505b5090925090506102b2603f87610fb7565b5a116102c0576102c0610fd9565b61030082826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061040a565b9998505050505050505050565b600061031a848484610443565b801561022d575060608401516020908101516001600160e01b031990811660009081529182905260409091205460e01b16151561022d565b50565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036103e75760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526103ff82828661058c565b979650505050505050565b6060831561041957508161015b565b8251156104295782518084602001fd5b8160405162461bcd60e51b81526004016103de9190610d9b565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561048a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104ae9190610e40565b9050600061055c8660600151805190602001208688602001516040516020016104fc9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561058257508551610582906001600160a01b03168286610a38565b9695505050505050565b60606001600160e01b03198416631de5861160e31b0361061a576000806000858060200190518101906105bf9190610fef565b92509250925086838383886040516024016105dd9493929190611032565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152935061015b92505050565b6001600160e01b03198416636debcb8d60e01b0361064b576000806000858060200190518101906105bf9190610fef565b6001600160e01b0319841663280d9b0560e01b036106dd576000806000808680602001905181019061067d91906110aa565b935093509350935087848484848a60405160240161069f959493929190611118565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152945061015b9350505050565b6001600160e01b031984166361603dd960e01b0361075c5760008380602001905181019061070b9190610e40565b905084818460405160240161072192919061115d565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152915061015b9050565b6001600160e01b0319841663b34f33c560e01b036107ab5760008060008580602001905181019061078d9190611176565b92509250925086838383886040516024016105dd94939291906111d0565b6001600160e01b03198416633013529360e01b036107dc5760008060008580602001905181019061078d9190611176565b6001600160e01b031984166307eca39560e01b03610830576000806000808680602001905181019061080e9190611209565b935093509350935087848484848a60405160240161069f95949392919061127e565b6001600160e01b031984166368b6154f60e01b03610862576000806000808680602001905181019061067d91906110aa565b6001600160e01b0319841663341de35b60e21b03610894576000806000808680602001905181019061067d91906110aa565b6001600160e01b03198416637a84860f60e11b0361092d576000806000806000878060200190518101906108c891906112cb565b945094509450945094508885858585858c6040516024016108ee96959493929190611360565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152955061015b945050505050565b6001600160e01b03198416636fab95b360e01b036109b2576000808480602001905181019061095c91906113b9565b915091508582828660405160240161097693929190611400565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925061015b915050565b6001600160e01b0319841663288f888960e11b0361015b57600080848060200190518101906109e1919061142b565b91509150858282866040516024016109fb93929190611459565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925050509392505050565b6000806000610a478585610b7a565b90925090506000816004811115610a6057610a60611489565b148015610a7e5750856001600160a01b0316826001600160a01b0316145b15610a8e5760019250505061015b565b600080876001600160a01b0316631626ba7e60e01b8888604051602401610ab692919061115d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051610af49190610f9b565b600060405180830381855afa9150503d8060008114610b2f576040519150601f19603f3d011682016040523d82523d6000602084013e610b34565b606091505b5091509150818015610b47575080516020145b8015610b6e57508051630b135d3f60e11b90610b6c9083016020908101908401610e40565b145b98975050505050505050565b6000808251604103610bb05760208301516040840151606085015160001a610ba487828585610bbf565b94509450505050610bb8565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610bf65750600090506003610ca3565b8460ff16601b14158015610c0e57508460ff16601c14155b15610c1f5750600090506004610ca3565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610c73573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610c9c57600060019250925050610ca3565b9150600090505b94509492505050565b600080600060408486031215610cc157600080fd5b833567ffffffffffffffff80821115610cd957600080fd5b9085019060808288031215610ced57600080fd5b90935060208501359080821115610d0357600080fd5b818601915086601f830112610d1757600080fd5b813581811115610d2657600080fd5b876020828501011115610d3857600080fd5b6020830194508093505050509250925092565b60005b83811015610d66578181015183820152602001610d4e565b50506000910152565b60008151808452610d87816020860160208601610d4b565b601f01601f19169290920160200192915050565b60208152600061015b6020830184610d6f565b600060208284031215610dc057600080fd5b5035919050565b6001600160a01b038116811461035257600080fd5b600060208284031215610dee57600080fd5b813561015b81610dc7565b6000808335601e19843603018112610e1057600080fd5b83018035915067ffffffffffffffff821115610e2b57600080fd5b602001915036819003821315610bb857600080fd5b600060208284031215610e5257600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610e9257610e92610e59565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ec157610ec1610e59565b604052919050565b600067ffffffffffffffff821115610ee357610ee3610e59565b50601f01601f191660200190565b600060808236031215610f0357600080fd5b610f0b610e6f565b8235610f1681610dc7565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610f4657600080fd5b840136601f820112610f5757600080fd5b8035610f6a610f6582610ec9565b610e98565b8181523684838501011115610f7e57600080fd5b818484018583013760009181019093015250606082015292915050565b60008251610fad818460208701610d4b565b9190910192915050565b600082610fd457634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b60008060006060848603121561100457600080fd5b835161100f81610dc7565b602085015190935061102081610dc7565b80925050604084015190509250925092565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061058290830184610d6f565b600082601f83011261107657600080fd5b8151611084610f6582610ec9565b81815284602083860101111561109957600080fd5b61022d826020830160208701610d4b565b600080600080608085870312156110c057600080fd5b84516110cb81610dc7565b60208601519094506110dc81610dc7565b60408601516060870151919450925067ffffffffffffffff81111561110057600080fd5b61110c87828801611065565b91505092959194509250565b6001600160a01b038681168252851660208201526040810184905260a06060820181905260009061114b90830185610d6f565b8281036080840152610b6e8185610d6f565b82815260406020820152600061022d6040830184610d6f565b60008060006060848603121561118b57600080fd5b835161119681610dc7565b60208501516040860151919450925067ffffffffffffffff8111156111ba57600080fd5b6111c686828701611065565b9150509250925092565b60018060a01b03851681528360208201526080604082015260006111f76080830185610d6f565b82810360608401526103ff8185610d6f565b6000806000806080858703121561121f57600080fd5b845161122a81610dc7565b60208601516040870151919550935067ffffffffffffffff8082111561124f57600080fd5b61125b88838901611065565b9350606087015191508082111561127157600080fd5b5061110c87828801611065565b60018060a01b038616815284602082015260a0604082015260006112a560a0830186610d6f565b82810360608401526112b78186610d6f565b90508281036080840152610b6e8185610d6f565b600080600080600060a086880312156112e357600080fd5b85516112ee81610dc7565b60208701519095506112ff81610dc7565b60408701516060880151919550935067ffffffffffffffff8082111561132457600080fd5b61133089838a01611065565b9350608088015191508082111561134657600080fd5b5061135388828901611065565b9150509295509295909350565b6001600160a01b038781168252861660208201526040810185905260c06060820181905260009061139390830186610d6f565b82810360808401526113a58186610d6f565b905082810360a08401526103008185610d6f565b600080604083850312156113cc57600080fd5b82519150602083015167ffffffffffffffff8111156113ea57600080fd5b6113f685828601611065565b9150509250929050565b8381526060602082015260006114196060830185610d6f565b82810360408401526105828185610d6f565b6000806040838503121561143e57600080fd5b825161144981610dc7565b6020939093015192949293505050565b60018060a01b03841681528260208201526060604082015260006114806060830184610d6f565b95945050505050565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a", + "bytecode": "0x608060405234801562000010575f80fd5b5060405162001e5838038062001e5883398101604081905262000033916200064a565b600180546001600160a01b0319166001600160a01b03831617905560408051606081019091526025808252620000c5919062001ad860208301396040518060600160405280602e815260200162001de6602e913980516020918201208251928201929092206001600160e01b0319165f9081529081905260409020805463ffffffff191660e09290921c919091179055565b6200013b60405180606001604052806029815260200162001b636029913960405180606001604052806032815260200162001be96032913980516020918201208251928201929092206001600160e01b0319165f9081529081905260409020805463ffffffff191660e09290921c919091179055565b620001b16040518060600160405280602f815260200162001cf2602f913960405180606001604052806038815260200162001afd6038913980516020918201208251928201929092206001600160e01b0319165f9081529081905260409020805463ffffffff191660e09290921c919091179055565b6200021d6040518060400160405280600d81526020016c6275726e2875696e743235362960981b8152506040518060400160405280601681526020017f6275726e466f722875696e743235362c627974657329000000000000000000008152506200060c60201b60201c565b6200029360405180606001604052806021815260200162001dc5602191396040518060600160405280602a815260200162001cc8602a913980516020918201208251928201929092206001600160e01b0319165f9081529081905260409020805463ffffffff191660e09290921c919091179055565b6200030960405180606001604052806025815260200162001c3d602591396040518060600160405280602e815260200162001b35602e913980516020918201208251928201929092206001600160e01b0319165f9081529081905260409020805463ffffffff191660e09290921c919091179055565b6200037f6040518060600160405280602b815260200162001d5c602b913960405180606001604052806034815260200162001aa46034913980516020918201208251928201929092206001600160e01b0319165f9081529081905260409020805463ffffffff191660e09290921c919091179055565b620003f560405180606001604052806031815260200162001c97603191396040518060600160405280603a815260200162001baf603a913980516020918201208251928201929092206001600160e01b0319165f9081529081905260409020805463ffffffff191660e09290921c919091179055565b6200046b60405180606001604052806035815260200162001c62603591396040518060600160405280603e815260200162001d87603e913980516020918201208251928201929092206001600160e01b0319165f9081529081905260409020805463ffffffff191660e09290921c919091179055565b620004e16040518060600160405280603b815260200162001d21603b913960405180608001604052806044815260200162001e146044913980516020918201208251928201929092206001600160e01b0319165f9081529081905260409020805463ffffffff191660e09290921c919091179055565b620005736040518060400160405280601981526020017f6275726e4368696c642875696e743235362c737472696e67290000000000000081525060405180606001604052806022815260200162001c1b6022913980516020918201208251928201929092206001600160e01b0319165f9081529081905260409020805463ffffffff191660e09290921c919091179055565b620006056040518060400160405280601a81526020017f7265736f6c7665546f28616464726573732c75696e743235362900000000000081525060405180606001604052806023815260200162001b8c6023913980516020918201208251928201929092206001600160e01b0319165f9081529081905260409020805463ffffffff191660e09290921c919091179055565b5062000679565b80516020918201208251928201929092206001600160e01b0319165f9081529081905260409020805463ffffffff191660e09290921c919091179055565b5f602082840312156200065b575f80fd5b81516001600160a01b038116811462000672575f80fd5b9392505050565b61141d80620006875f395ff3fe608060405234801561000f575f80fd5b506004361061003f575f3560e01c80631bf7e13e146100435780636ccbae5f1461006c578063a42474001461008d575b5f80fd5b610056610051366004610c6c565b6100b0565b6040516100639190610d4f565b60405180910390f35b61007f61007a366004610d61565b61015c565b604051908152602001610063565b6100a061009b366004610c6c565b6101cd565b6040519015158152602001610063565b60605f5a90506101516100c66020870187610d8c565b6001546001600160a01b03166040880135846100e560608b018b610da7565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f9201919091525061022a92505050565b9150505b9392505050565b600154604051636ccbae5f60e01b8152600481018390525f916001600160a01b031690636ccbae5f90602401602060405180830381865afa1580156101a3573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101c79190610dea565b92915050565b5f6102226101da85610e96565b600154604080516020601f88018190048102820181019092528681526001600160a01b03909216919087908790819084018382808284375f920191909152506102fd92505050565b949350505050565b60605f80876001600160a01b0316866102458b8a8989610343565b6040516102529190610f3a565b5f604051808303815f8787f1925050503d805f811461028c576040519150601f19603f3d011682016040523d82523d5f602084013e610291565b606091505b5090925090506102a2603f87610f55565b5a116102b0576102b0610f74565b6102f082826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506103f6565b9998505050505050505050565b5f61030984848461042f565b8015610222575060608401516020908101516001600160e01b03199081165f9081529182905260409091205460e01b161515610222565b50565b6020808301516001600160e01b0319165f9081529081905260408120546060919060e01b90506001600160e01b031981165f036103d35760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526103eb828286610574565b979650505050505050565b60608315610405575081610155565b8251156104155782518084602001fd5b8160405162461bcd60e51b81526004016103ca9190610d4f565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015610473573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104979190610dea565b90505f6105448660600151805190602001208688602001516040516020016104e49392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561056a5750855161056a906001600160a01b03168286610a0a565b9695505050505050565b60606001600160e01b03198416631de5861160e31b03610600575f805f858060200190518101906105a59190610f88565b92509250925086838383886040516024016105c39493929190610fc8565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152935061015592505050565b6001600160e01b03198416636debcb8d60e01b0361062f575f805f858060200190518101906105a59190610f88565b6001600160e01b0319841663280d9b0560e01b036106bf575f805f808680602001905181019061065f919061103c565b935093509350935087848484848a6040516024016106819594939291906110a6565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915294506101559350505050565b6001600160e01b031984166361603dd960e01b0361073d575f838060200190518101906106ec9190610dea565b90508481846040516024016107029291906110ea565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915291506101559050565b6001600160e01b0319841663b34f33c560e01b0361078a575f805f8580602001905181019061076c9190611102565b92509250925086838383886040516024016105c39493929190611158565b6001600160e01b03198416633013529360e01b036107b9575f805f8580602001905181019061076c9190611102565b6001600160e01b031984166307eca39560e01b0361080b575f805f80868060200190518101906107e99190611190565b935093509350935087848484848a604051602401610681959493929190611200565b6001600160e01b031984166368b6154f60e01b0361083b575f805f808680602001905181019061065f919061103c565b6001600160e01b0319841663341de35b60e21b0361086b575f805f808680602001905181019061065f919061103c565b6001600160e01b03198416637a84860f60e11b03610901575f805f805f8780602001905181019061089c919061124c565b945094509450945094508885858585858c6040516024016108c2969594939291906112db565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092179091529550610155945050505050565b6001600160e01b03198416636fab95b360e01b03610985575f808480602001905181019061092f9190611333565b915091508582828660405160240161094993929190611377565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092179091529250610155915050565b6001600160e01b0319841663288f888960e11b03610155575f80848060200190518101906109b391906113a1565b91509150858282866040516024016109cd939291906113cd565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925050509392505050565b5f805f610a178585610b45565b90925090505f816004811115610a2f57610a2f6113fc565b148015610a4d5750856001600160a01b0316826001600160a01b0316145b15610a5d57600192505050610155565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401610a849291906110ea565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051610ac29190610f3a565b5f60405180830381855afa9150503d805f8114610afa576040519150601f19603f3d011682016040523d82523d5f602084013e610aff565b606091505b5091509150818015610b12575080516020145b8015610b3957508051630b135d3f60e11b90610b379083016020908101908401610dea565b145b98975050505050505050565b5f808251604103610b79576020830151604084015160608501515f1a610b6d87828585610b87565b94509450505050610b80565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610bbc57505f90506003610c63565b8460ff16601b14158015610bd457508460ff16601c14155b15610be457505f90506004610c63565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610c35573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b038116610c5d575f60019250925050610c63565b91505f90505b94509492505050565b5f805f60408486031215610c7e575f80fd5b833567ffffffffffffffff80821115610c95575f80fd5b9085019060808288031215610ca8575f80fd5b90935060208501359080821115610cbd575f80fd5b818601915086601f830112610cd0575f80fd5b813581811115610cde575f80fd5b876020828501011115610cef575f80fd5b6020830194508093505050509250925092565b5f5b83811015610d1c578181015183820152602001610d04565b50505f910152565b5f8151808452610d3b816020860160208601610d02565b601f01601f19169290920160200192915050565b602081525f6101556020830184610d24565b5f60208284031215610d71575f80fd5b5035919050565b6001600160a01b0381168114610340575f80fd5b5f60208284031215610d9c575f80fd5b813561015581610d78565b5f808335601e19843603018112610dbc575f80fd5b83018035915067ffffffffffffffff821115610dd6575f80fd5b602001915036819003821315610b80575f80fd5b5f60208284031215610dfa575f80fd5b5051919050565b634e487b7160e01b5f52604160045260245ffd5b6040516080810167ffffffffffffffff81118282101715610e3857610e38610e01565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610e6757610e67610e01565b604052919050565b5f67ffffffffffffffff821115610e8857610e88610e01565b50601f01601f191660200190565b5f60808236031215610ea6575f80fd5b610eae610e15565b8235610eb981610d78565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610ee8575f80fd5b840136601f820112610ef8575f80fd5b8035610f0b610f0682610e6f565b610e3e565b8181523684838501011115610f1e575f80fd5b81848401858301375f9181019093015250606082015292915050565b5f8251610f4b818460208701610d02565b9190910192915050565b5f82610f6f57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b5f805f60608486031215610f9a575f80fd5b8351610fa581610d78565b6020850151909350610fb681610d78565b80925050604084015190509250925092565b6001600160a01b03858116825284166020820152604081018390526080606082018190525f9061056a90830184610d24565b5f82601f830112611009575f80fd5b8151611017610f0682610e6f565b81815284602083860101111561102b575f80fd5b610222826020830160208701610d02565b5f805f806080858703121561104f575f80fd5b845161105a81610d78565b602086015190945061106b81610d78565b60408601516060870151919450925067ffffffffffffffff81111561108e575f80fd5b61109a87828801610ffa565b91505092959194509250565b6001600160a01b038681168252851660208201526040810184905260a0606082018190525f906110d890830185610d24565b8281036080840152610b398185610d24565b828152604060208201525f6102226040830184610d24565b5f805f60608486031215611114575f80fd5b835161111f81610d78565b60208501516040860151919450925067ffffffffffffffff811115611142575f80fd5b61114e86828701610ffa565b9150509250925092565b60018060a01b0385168152836020820152608060408201525f61117e6080830185610d24565b82810360608401526103eb8185610d24565b5f805f80608085870312156111a3575f80fd5b84516111ae81610d78565b60208601516040870151919550935067ffffffffffffffff808211156111d2575f80fd5b6111de88838901610ffa565b935060608701519150808211156111f3575f80fd5b5061109a87828801610ffa565b60018060a01b038616815284602082015260a060408201525f61122660a0830186610d24565b82810360608401526112388186610d24565b90508281036080840152610b398185610d24565b5f805f805f60a08688031215611260575f80fd5b855161126b81610d78565b602087015190955061127c81610d78565b60408701516060880151919550935067ffffffffffffffff808211156112a0575f80fd5b6112ac89838a01610ffa565b935060808801519150808211156112c1575f80fd5b506112ce88828901610ffa565b9150509295509295909350565b6001600160a01b038781168252861660208201526040810185905260c0606082018190525f9061130d90830186610d24565b828103608084015261131f8186610d24565b905082810360a08401526102f08185610d24565b5f8060408385031215611344575f80fd5b82519150602083015167ffffffffffffffff811115611361575f80fd5b61136d85828601610ffa565b9150509250929050565b838152606060208201525f61138f6060830185610d24565b828103604084015261056a8185610d24565b5f80604083850312156113b2575f80fd5b82516113bd81610d78565b6020939093015192949293505050565b60018060a01b0384168152826020820152606060408201525f6113f36060830184610d24565b95945050505050565b634e487b7160e01b5f52602160045260245ffdfea164736f6c6343000818000a736166654d696e744368696c64466f7228616464726573732c75696e743235362c737472696e672c62797465732c6279746573297472616e7366657246726f6d28616464726573732c616464726573732c75696e7432353629736166655472616e7366657246726f6d466f7228616464726573732c616464726573732c75696e743235362c62797465732c627974657329736166654d696e744368696c64466f7228616464726573732c75696e743235362c737472696e672c627974657329736166655472616e7366657246726f6d28616464726573732c616464726573732c75696e74323536297265736f6c7665546f466f7228616464726573732c75696e743235362c6279746573297472616e7366657246726f6d4368696c64466f7228616464726573732c616464726573732c75696e743235362c737472696e672c627974657329736166655472616e7366657246726f6d466f7228616464726573732c616464726573732c75696e743235362c6279746573296275726e4368696c64466f722875696e743235362c737472696e672c627974657329736166654d696e744368696c6428616464726573732c75696e743235362c737472696e6729736166655472616e7366657246726f6d4368696c6428616464726573732c616464726573732c75696e743235362c737472696e67297472616e7366657246726f6d4368696c6428616464726573732c616464726573732c75696e743235362c737472696e67296d696e744368696c64466f7228616464726573732c75696e743235362c737472696e672c627974657329736166655472616e7366657246726f6d28616464726573732c616464726573732c75696e743235362c627974657329736166655472616e7366657246726f6d4368696c6428616464726573732c616464726573732c75696e743235362c737472696e672c627974657329736166654d696e744368696c6428616464726573732c75696e743235362c737472696e672c627974657329736166655472616e7366657246726f6d4368696c64466f7228616464726573732c616464726573732c75696e743235362c737472696e672c6279746573296d696e744368696c6428616464726573732c75696e743235362c737472696e67297472616e7366657246726f6d466f7228616464726573732c616464726573732c75696e743235362c627974657329736166655472616e7366657246726f6d4368696c64466f7228616464726573732c616464726573732c75696e743235362c737472696e672c62797465732c627974657329", + "deployedBytecode": "0x608060405234801561000f575f80fd5b506004361061003f575f3560e01c80631bf7e13e146100435780636ccbae5f1461006c578063a42474001461008d575b5f80fd5b610056610051366004610c6c565b6100b0565b6040516100639190610d4f565b60405180910390f35b61007f61007a366004610d61565b61015c565b604051908152602001610063565b6100a061009b366004610c6c565b6101cd565b6040519015158152602001610063565b60605f5a90506101516100c66020870187610d8c565b6001546001600160a01b03166040880135846100e560608b018b610da7565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f9201919091525061022a92505050565b9150505b9392505050565b600154604051636ccbae5f60e01b8152600481018390525f916001600160a01b031690636ccbae5f90602401602060405180830381865afa1580156101a3573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101c79190610dea565b92915050565b5f6102226101da85610e96565b600154604080516020601f88018190048102820181019092528681526001600160a01b03909216919087908790819084018382808284375f920191909152506102fd92505050565b949350505050565b60605f80876001600160a01b0316866102458b8a8989610343565b6040516102529190610f3a565b5f604051808303815f8787f1925050503d805f811461028c576040519150601f19603f3d011682016040523d82523d5f602084013e610291565b606091505b5090925090506102a2603f87610f55565b5a116102b0576102b0610f74565b6102f082826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506103f6565b9998505050505050505050565b5f61030984848461042f565b8015610222575060608401516020908101516001600160e01b03199081165f9081529182905260409091205460e01b161515610222565b50565b6020808301516001600160e01b0319165f9081529081905260408120546060919060e01b90506001600160e01b031981165f036103d35760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526103eb828286610574565b979650505050505050565b60608315610405575081610155565b8251156104155782518084602001fd5b8160405162461bcd60e51b81526004016103ca9190610d4f565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015610473573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104979190610dea565b90505f6105448660600151805190602001208688602001516040516020016104e49392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561056a5750855161056a906001600160a01b03168286610a0a565b9695505050505050565b60606001600160e01b03198416631de5861160e31b03610600575f805f858060200190518101906105a59190610f88565b92509250925086838383886040516024016105c39493929190610fc8565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152935061015592505050565b6001600160e01b03198416636debcb8d60e01b0361062f575f805f858060200190518101906105a59190610f88565b6001600160e01b0319841663280d9b0560e01b036106bf575f805f808680602001905181019061065f919061103c565b935093509350935087848484848a6040516024016106819594939291906110a6565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915294506101559350505050565b6001600160e01b031984166361603dd960e01b0361073d575f838060200190518101906106ec9190610dea565b90508481846040516024016107029291906110ea565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915291506101559050565b6001600160e01b0319841663b34f33c560e01b0361078a575f805f8580602001905181019061076c9190611102565b92509250925086838383886040516024016105c39493929190611158565b6001600160e01b03198416633013529360e01b036107b9575f805f8580602001905181019061076c9190611102565b6001600160e01b031984166307eca39560e01b0361080b575f805f80868060200190518101906107e99190611190565b935093509350935087848484848a604051602401610681959493929190611200565b6001600160e01b031984166368b6154f60e01b0361083b575f805f808680602001905181019061065f919061103c565b6001600160e01b0319841663341de35b60e21b0361086b575f805f808680602001905181019061065f919061103c565b6001600160e01b03198416637a84860f60e11b03610901575f805f805f8780602001905181019061089c919061124c565b945094509450945094508885858585858c6040516024016108c2969594939291906112db565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092179091529550610155945050505050565b6001600160e01b03198416636fab95b360e01b03610985575f808480602001905181019061092f9190611333565b915091508582828660405160240161094993929190611377565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092179091529250610155915050565b6001600160e01b0319841663288f888960e11b03610155575f80848060200190518101906109b391906113a1565b91509150858282866040516024016109cd939291906113cd565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925050509392505050565b5f805f610a178585610b45565b90925090505f816004811115610a2f57610a2f6113fc565b148015610a4d5750856001600160a01b0316826001600160a01b0316145b15610a5d57600192505050610155565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401610a849291906110ea565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051610ac29190610f3a565b5f60405180830381855afa9150503d805f8114610afa576040519150601f19603f3d011682016040523d82523d5f602084013e610aff565b606091505b5091509150818015610b12575080516020145b8015610b3957508051630b135d3f60e11b90610b379083016020908101908401610dea565b145b98975050505050505050565b5f808251604103610b79576020830151604084015160608501515f1a610b6d87828585610b87565b94509450505050610b80565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610bbc57505f90506003610c63565b8460ff16601b14158015610bd457508460ff16601c14155b15610be457505f90506004610c63565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610c35573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b038116610c5d575f60019250925050610c63565b91505f90505b94509492505050565b5f805f60408486031215610c7e575f80fd5b833567ffffffffffffffff80821115610c95575f80fd5b9085019060808288031215610ca8575f80fd5b90935060208501359080821115610cbd575f80fd5b818601915086601f830112610cd0575f80fd5b813581811115610cde575f80fd5b876020828501011115610cef575f80fd5b6020830194508093505050509250925092565b5f5b83811015610d1c578181015183820152602001610d04565b50505f910152565b5f8151808452610d3b816020860160208601610d02565b601f01601f19169290920160200192915050565b602081525f6101556020830184610d24565b5f60208284031215610d71575f80fd5b5035919050565b6001600160a01b0381168114610340575f80fd5b5f60208284031215610d9c575f80fd5b813561015581610d78565b5f808335601e19843603018112610dbc575f80fd5b83018035915067ffffffffffffffff821115610dd6575f80fd5b602001915036819003821315610b80575f80fd5b5f60208284031215610dfa575f80fd5b5051919050565b634e487b7160e01b5f52604160045260245ffd5b6040516080810167ffffffffffffffff81118282101715610e3857610e38610e01565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610e6757610e67610e01565b604052919050565b5f67ffffffffffffffff821115610e8857610e88610e01565b50601f01601f191660200190565b5f60808236031215610ea6575f80fd5b610eae610e15565b8235610eb981610d78565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610ee8575f80fd5b840136601f820112610ef8575f80fd5b8035610f0b610f0682610e6f565b610e3e565b8181523684838501011115610f1e575f80fd5b81848401858301375f9181019093015250606082015292915050565b5f8251610f4b818460208701610d02565b9190910192915050565b5f82610f6f57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b5f805f60608486031215610f9a575f80fd5b8351610fa581610d78565b6020850151909350610fb681610d78565b80925050604084015190509250925092565b6001600160a01b03858116825284166020820152604081018390526080606082018190525f9061056a90830184610d24565b5f82601f830112611009575f80fd5b8151611017610f0682610e6f565b81815284602083860101111561102b575f80fd5b610222826020830160208701610d02565b5f805f806080858703121561104f575f80fd5b845161105a81610d78565b602086015190945061106b81610d78565b60408601516060870151919450925067ffffffffffffffff81111561108e575f80fd5b61109a87828801610ffa565b91505092959194509250565b6001600160a01b038681168252851660208201526040810184905260a0606082018190525f906110d890830185610d24565b8281036080840152610b398185610d24565b828152604060208201525f6102226040830184610d24565b5f805f60608486031215611114575f80fd5b835161111f81610d78565b60208501516040860151919450925067ffffffffffffffff811115611142575f80fd5b61114e86828701610ffa565b9150509250925092565b60018060a01b0385168152836020820152608060408201525f61117e6080830185610d24565b82810360608401526103eb8185610d24565b5f805f80608085870312156111a3575f80fd5b84516111ae81610d78565b60208601516040870151919550935067ffffffffffffffff808211156111d2575f80fd5b6111de88838901610ffa565b935060608701519150808211156111f3575f80fd5b5061109a87828801610ffa565b60018060a01b038616815284602082015260a060408201525f61122660a0830186610d24565b82810360608401526112388186610d24565b90508281036080840152610b398185610d24565b5f805f805f60a08688031215611260575f80fd5b855161126b81610d78565b602087015190955061127c81610d78565b60408701516060880151919550935067ffffffffffffffff808211156112a0575f80fd5b6112ac89838a01610ffa565b935060808801519150808211156112c1575f80fd5b506112ce88828901610ffa565b9150509295509295909350565b6001600160a01b038781168252861660208201526040810185905260c0606082018190525f9061130d90830186610d24565b828103608084015261131f8186610d24565b905082810360a08401526102f08185610d24565b5f8060408385031215611344575f80fd5b82519150602083015167ffffffffffffffff811115611361575f80fd5b61136d85828601610ffa565b9150509250929050565b838152606060208201525f61138f6060830185610d24565b828103604084015261056a8185610d24565b5f80604083850312156113b2575f80fd5b82516113bd81610d78565b6020939093015192949293505050565b60018060a01b0384168152826020820152606060408201525f6113f36060830184610d24565b95945050505050565b634e487b7160e01b5f52602160045260245ffdfea164736f6c6343000818000a", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/artifacts/Conduit.json b/artifacts/Conduit.json new file mode 100644 index 00000000..ae600b71 --- /dev/null +++ b/artifacts/Conduit.json @@ -0,0 +1,395 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "Conduit", + "sourceName": "seaport-core/src/conduit/Conduit.sol", + "abi": [ + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "BadReturnValueFromERC20OnTransfer", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "channel", + "type": "address" + } + ], + "name": "ChannelClosed", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "channel", + "type": "address" + }, + { + "internalType": "bool", + "name": "isOpen", + "type": "bool" + } + ], + "name": "ChannelStatusAlreadySet", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256[]", + "name": "identifiers", + "type": "uint256[]" + }, + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + } + ], + "name": "ERC1155BatchTransferGenericFailure", + "type": "error" + }, + { + "inputs": [], + "name": "Invalid1155BatchTransferEncoding", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidController", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "InvalidERC721TransferAmount", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidItemType", + "type": "error" + }, + { + "inputs": [], + "name": "MissingItemAmount", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "NoContract", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "TokenTransferGenericFailure", + "type": "error" + }, + { + "inputs": [], + "name": "UnusedItemParameters", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "channel", + "type": "address" + }, + { + "indexed": false, + "internalType": "bool", + "name": "open", + "type": "bool" + } + ], + "name": "ChannelUpdated", + "type": "event" + }, + { + "inputs": [ + { + "components": [ + { + "internalType": "enum ConduitItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "internalType": "struct ConduitTransfer[]", + "name": "transfers", + "type": "tuple[]" + } + ], + "name": "execute", + "outputs": [ + { + "internalType": "bytes4", + "name": "magicValue", + "type": "bytes4" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256[]", + "name": "ids", + "type": "uint256[]" + }, + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + } + ], + "internalType": "struct ConduitBatch1155Transfer[]", + "name": "batchTransfers", + "type": "tuple[]" + } + ], + "name": "executeBatch1155", + "outputs": [ + { + "internalType": "bytes4", + "name": "magicValue", + "type": "bytes4" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "internalType": "enum ConduitItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "internalType": "struct ConduitTransfer[]", + "name": "standardTransfers", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256[]", + "name": "ids", + "type": "uint256[]" + }, + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + } + ], + "internalType": "struct ConduitBatch1155Transfer[]", + "name": "batchTransfers", + "type": "tuple[]" + } + ], + "name": "executeWithBatch1155", + "outputs": [ + { + "internalType": "bytes4", + "name": "magicValue", + "type": "bytes4" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "channel", + "type": "address" + }, + { + "internalType": "bool", + "name": "isOpen", + "type": "bool" + } + ], + "name": "updateChannel", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x60a060405234801561000f575f80fd5b5033608052608051610a1561002c5f395f6101d20152610a155ff3fe608060405234801561000f575f80fd5b506004361061004a575f3560e01c80634ce34aa21461004e578063899e104c1461007e5780638df25d9214610091578063c4e8fcb5146100a4575b5f80fd5b61006161005c366004610834565b6100b9565b6040516001600160e01b0319909116815260200160405180910390f35b61006161008c3660046108b4565b610121565b61006161009f36600461091b565b61018a565b6100b76100b2366004610969565b6101c7565b005b5f335f525f60205260405f20546100dd576349ed56f960e11b5f523360045260245ffd5b815f5b81811015610110576101088585838181106100fd576100fd6109a2565b905060c002016102c4565b6001016100e0565b50632671a55160e11b949350505050565b5f335f525f60205260405f2054610145576349ed56f960e11b5f523360045260245ffd5b835f5b8181101561016d576101658787838181106100fd576100fd6109a2565b600101610148565b506101788484610436565b50632267841360e21b95945050505050565b5f335f525f60205260405f20546101ae576349ed56f960e11b5f523360045260245ffd5b6101b88383610436565b506346f92ec960e11b92915050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610210576040516336abb4df60e11b815260040160405180910390fd5b6001600160a01b0382165f9081526020819052604090205481151560ff909116151503610268576040516349271a0f60e11b81526001600160a01b038316600482015281151560248201526044015b60405180910390fd5b6001600160a01b0382165f8181526020818152604091829020805460ff191685151590811790915591519182527fae63067d43ac07563b7eb8db6595635fc77f1578a2a5ea06ba91b63e2afa37e2910160405180910390a25050565b60016102d360208301836109ca565b60038111156102e4576102e46109b6565b03610329576103266102fc60408301602084016109ef565b61030c60608401604085016109ef565b61031c60808501606086016109ef565b8460a0013561056c565b50565b600261033860208301836109ca565b6003811115610349576103496109b6565b036103b6578060a00135600114610379576040516369f9582760e01b815260a0820135600482015260240161025f565b61032661038c60408301602084016109ef565b61039c60608401604085016109ef565b6103ac60808501606086016109ef565b8460800135610660565b60036103c560208301836109ca565b60038111156103d6576103d66109b6565b0361041d576103266103ee60408301602084016109ef565b6103fe60608401604085016109ef565b61040e60808501606086016109ef565b84608001358560a00135610715565b604051631e4cbc7f60e21b815260040160405180910390fd5b808280631759616b60e11b6020525f5b8381101561055f57823582018035803b61046b57635f15d6725f52806020526024601cfd5b60a08201358060051b60c0018060808501351460a0606086013514168185013583141615905080156104a657633ae8821360e21b5f5260045ffd5b506020860195506080602084016024378060061b60400190508060a00160a4525f8160c401528060c4018160a0850160c4375f808260205f875af1935083610550573d1561053057601f3d0160051c91508060051c826003028184111561051a578184036003028280028580020360091c01015b5a60208201101561052d573d5f803e3d5ffd5b50505b6357e222f160e11b5f528260045260c0606452608451602001608452805ffd5b50505050600181019050610446565b5050505060806040525050565b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166106515780873b15151661065157806106405781610623573d1561060257601f3d0160051c8360051c81600302818311156105eb578183036003028280028480020360091c01015b5a6020820110156105fe573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b833b61067757635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af180610707573d156106e557601f3d0160051c8260051c81600302818311156106ce578183036003028280028480020360091c01015b5a6020820110156106e1573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b61072c57635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af1806107d1573d156107b057601f3d0160051c8560051c8160030281831115610799578183036003028280028480020360091c01015b5a6020820110156107ac573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b5f8083601f8401126107fc575f80fd5b50813567ffffffffffffffff811115610813575f80fd5b60208301915083602060c08302850101111561082d575f80fd5b9250929050565b5f8060208385031215610845575f80fd5b823567ffffffffffffffff81111561085b575f80fd5b610867858286016107ec565b90969095509350505050565b5f8083601f840112610883575f80fd5b50813567ffffffffffffffff81111561089a575f80fd5b6020830191508360208260051b850101111561082d575f80fd5b5f805f80604085870312156108c7575f80fd5b843567ffffffffffffffff808211156108de575f80fd5b6108ea888389016107ec565b90965094506020870135915080821115610902575f80fd5b5061090f87828801610873565b95989497509550505050565b5f806020838503121561092c575f80fd5b823567ffffffffffffffff811115610942575f80fd5b61086785828601610873565b80356001600160a01b0381168114610964575f80fd5b919050565b5f806040838503121561097a575f80fd5b6109838361094e565b915060208301358015158114610997575f80fd5b809150509250929050565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52602160045260245ffd5b5f602082840312156109da575f80fd5b8135600481106109e8575f80fd5b9392505050565b5f602082840312156109ff575f80fd5b6109e88261094e56fea164736f6c6343000818000a", + "deployedBytecode": "0x608060405234801561000f575f80fd5b506004361061004a575f3560e01c80634ce34aa21461004e578063899e104c1461007e5780638df25d9214610091578063c4e8fcb5146100a4575b5f80fd5b61006161005c366004610834565b6100b9565b6040516001600160e01b0319909116815260200160405180910390f35b61006161008c3660046108b4565b610121565b61006161009f36600461091b565b61018a565b6100b76100b2366004610969565b6101c7565b005b5f335f525f60205260405f20546100dd576349ed56f960e11b5f523360045260245ffd5b815f5b81811015610110576101088585838181106100fd576100fd6109a2565b905060c002016102c4565b6001016100e0565b50632671a55160e11b949350505050565b5f335f525f60205260405f2054610145576349ed56f960e11b5f523360045260245ffd5b835f5b8181101561016d576101658787838181106100fd576100fd6109a2565b600101610148565b506101788484610436565b50632267841360e21b95945050505050565b5f335f525f60205260405f20546101ae576349ed56f960e11b5f523360045260245ffd5b6101b88383610436565b506346f92ec960e11b92915050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610210576040516336abb4df60e11b815260040160405180910390fd5b6001600160a01b0382165f9081526020819052604090205481151560ff909116151503610268576040516349271a0f60e11b81526001600160a01b038316600482015281151560248201526044015b60405180910390fd5b6001600160a01b0382165f8181526020818152604091829020805460ff191685151590811790915591519182527fae63067d43ac07563b7eb8db6595635fc77f1578a2a5ea06ba91b63e2afa37e2910160405180910390a25050565b60016102d360208301836109ca565b60038111156102e4576102e46109b6565b03610329576103266102fc60408301602084016109ef565b61030c60608401604085016109ef565b61031c60808501606086016109ef565b8460a0013561056c565b50565b600261033860208301836109ca565b6003811115610349576103496109b6565b036103b6578060a00135600114610379576040516369f9582760e01b815260a0820135600482015260240161025f565b61032661038c60408301602084016109ef565b61039c60608401604085016109ef565b6103ac60808501606086016109ef565b8460800135610660565b60036103c560208301836109ca565b60038111156103d6576103d66109b6565b0361041d576103266103ee60408301602084016109ef565b6103fe60608401604085016109ef565b61040e60808501606086016109ef565b84608001358560a00135610715565b604051631e4cbc7f60e21b815260040160405180910390fd5b808280631759616b60e11b6020525f5b8381101561055f57823582018035803b61046b57635f15d6725f52806020526024601cfd5b60a08201358060051b60c0018060808501351460a0606086013514168185013583141615905080156104a657633ae8821360e21b5f5260045ffd5b506020860195506080602084016024378060061b60400190508060a00160a4525f8160c401528060c4018160a0850160c4375f808260205f875af1935083610550573d1561053057601f3d0160051c91508060051c826003028184111561051a578184036003028280028580020360091c01015b5a60208201101561052d573d5f803e3d5ffd5b50505b6357e222f160e11b5f528260045260c0606452608451602001608452805ffd5b50505050600181019050610446565b5050505060806040525050565b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166106515780873b15151661065157806106405781610623573d1561060257601f3d0160051c8360051c81600302818311156105eb578183036003028280028480020360091c01015b5a6020820110156105fe573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b833b61067757635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af180610707573d156106e557601f3d0160051c8260051c81600302818311156106ce578183036003028280028480020360091c01015b5a6020820110156106e1573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b61072c57635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af1806107d1573d156107b057601f3d0160051c8560051c8160030281831115610799578183036003028280028480020360091c01015b5a6020820110156107ac573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b5f8083601f8401126107fc575f80fd5b50813567ffffffffffffffff811115610813575f80fd5b60208301915083602060c08302850101111561082d575f80fd5b9250929050565b5f8060208385031215610845575f80fd5b823567ffffffffffffffff81111561085b575f80fd5b610867858286016107ec565b90969095509350505050565b5f8083601f840112610883575f80fd5b50813567ffffffffffffffff81111561089a575f80fd5b6020830191508360208260051b850101111561082d575f80fd5b5f805f80604085870312156108c7575f80fd5b843567ffffffffffffffff808211156108de575f80fd5b6108ea888389016107ec565b90965094506020870135915080821115610902575f80fd5b5061090f87828801610873565b95989497509550505050565b5f806020838503121561092c575f80fd5b823567ffffffffffffffff811115610942575f80fd5b61086785828601610873565b80356001600160a01b0381168114610964575f80fd5b919050565b5f806040838503121561097a575f80fd5b6109838361094e565b915060208301358015158114610997575f80fd5b809150509250929050565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52602160045260245ffd5b5f602082840312156109da575f80fd5b8135600481106109e8575f80fd5b9392505050565b5f602082840312156109ff575f80fd5b6109e88261094e56fea164736f6c6343000818000a", + "linkReferences": {}, + "deployedLinkReferences": {} +} diff --git a/artifacts/ConduitController.json b/artifacts/ConduitController.json new file mode 100644 index 00000000..b7033586 --- /dev/null +++ b/artifacts/ConduitController.json @@ -0,0 +1,446 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "ConduitController", + "sourceName": "seaport-core/src/conduit/ConduitController.sol", + "abi": [ + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "conduit", + "type": "address" + } + ], + "name": "CallerIsNotNewPotentialOwner", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "conduit", + "type": "address" + } + ], + "name": "CallerIsNotOwner", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "conduit", + "type": "address" + } + ], + "name": "ChannelOutOfRange", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "conduit", + "type": "address" + } + ], + "name": "ConduitAlreadyExists", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidCreator", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidInitialOwner", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "conduit", + "type": "address" + }, + { + "internalType": "address", + "name": "newPotentialOwner", + "type": "address" + } + ], + "name": "NewPotentialOwnerAlreadySet", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "conduit", + "type": "address" + } + ], + "name": "NewPotentialOwnerIsZeroAddress", + "type": "error" + }, + { + "inputs": [], + "name": "NoConduit", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "conduit", + "type": "address" + } + ], + "name": "NoPotentialOwnerCurrentlySet", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "conduit", + "type": "address" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + } + ], + "name": "NewConduit", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "conduit", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "newPotentialOwner", + "type": "address" + } + ], + "name": "PotentialOwnerUpdated", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "conduit", + "type": "address" + } + ], + "name": "acceptOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "conduit", + "type": "address" + } + ], + "name": "cancelOwnershipTransfer", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "initialOwner", + "type": "address" + } + ], + "name": "createConduit", + "outputs": [ + { + "internalType": "address", + "name": "conduit", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "conduit", + "type": "address" + }, + { + "internalType": "uint256", + "name": "channelIndex", + "type": "uint256" + } + ], + "name": "getChannel", + "outputs": [ + { + "internalType": "address", + "name": "channel", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "conduit", + "type": "address" + }, + { + "internalType": "address", + "name": "channel", + "type": "address" + } + ], + "name": "getChannelStatus", + "outputs": [ + { + "internalType": "bool", + "name": "isOpen", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "conduit", + "type": "address" + } + ], + "name": "getChannels", + "outputs": [ + { + "internalType": "address[]", + "name": "channels", + "type": "address[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + } + ], + "name": "getConduit", + "outputs": [ + { + "internalType": "address", + "name": "conduit", + "type": "address" + }, + { + "internalType": "bool", + "name": "exists", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getConduitCodeHashes", + "outputs": [ + { + "internalType": "bytes32", + "name": "creationCodeHash", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "runtimeCodeHash", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "conduit", + "type": "address" + } + ], + "name": "getKey", + "outputs": [ + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "conduit", + "type": "address" + } + ], + "name": "getPotentialOwner", + "outputs": [ + { + "internalType": "address", + "name": "potentialOwner", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "conduit", + "type": "address" + } + ], + "name": "getTotalChannels", + "outputs": [ + { + "internalType": "uint256", + "name": "totalChannels", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "conduit", + "type": "address" + } + ], + "name": "ownerOf", + "outputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "conduit", + "type": "address" + }, + { + "internalType": "address", + "name": "newPotentialOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "conduit", + "type": "address" + }, + { + "internalType": "address", + "name": "channel", + "type": "address" + }, + { + "internalType": "bool", + "name": "isOpen", + "type": "bool" + } + ], + "name": "updateChannel", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x60c060405234801561000f575f80fd5b5060405161001f60208201610082565b6020820181038252601f19601f8201166040525080519060200120608081815250505f805f1b60405161005190610082565b8190604051809103905ff590508015801561006e573d5f803e3d5ffd5b506001600160a01b03163f60a0525061008f565b610a418061191e83390190565b60805160a0516118526100cc5f395f81816101420152818161081101526108df01525f818161011f015281816107b9015261089b01526118525ff3fe608060405234801561000f575f80fd5b50600436106100e5575f3560e01c80636d435421116100885780637b37e561116100635780637b37e561146102435780638b9e028b14610256578063906c87cc1461027657806393790f4414610289575f80fd5b80636d435421146101eb5780636e9bfd9f146101fe578063794593bc14610230575f80fd5b806314afd79e116100c357806314afd79e1461018157806333bc8572146101945780634e3f9580146101b757806351710e45146101d8575f80fd5b8063027cc764146100e95780630a96ad391461011957806313ad9cab1461016c575b5f80fd5b6100fc6100f7366004610c39565b61029c565b6040516001600160a01b0390911681526020015b60405180910390f35b604080517f000000000000000000000000000000000000000000000000000000000000000081527f0000000000000000000000000000000000000000000000000000000000000000602082015201610110565b61017f61017a366004610c61565b610339565b005b6100fc61018f366004610ca9565b610531565b6101a76101a2366004610cc9565b61055c565b6040519015158152602001610110565b6101ca6101c5366004610ca9565b610595565b604051908152602001610110565b61017f6101e6366004610ca9565b6105bd565b61017f6101f9366004610cc9565b6106be565b61021161020c366004610cfa565b6107ae565b604080516001600160a01b039093168352901515602083015201610110565b6100fc61023e366004610d11565b610838565b61017f610251366004610ca9565b610a0a565b610269610264366004610ca9565b610aab565b6040516101109190610d32565b6100fc610284366004610ca9565b610b28565b6101ca610297366004610ca9565b610b53565b5f6102a683610b8e565b6001600160a01b0383165f908152602081905260409020600301548083106102f157604051636ceb340b60e01b81526001600160a01b03851660048201526024015b60405180910390fd5b6001600160a01b0384165f90815260208190526040902060030180548490811061031d5761031d610d7e565b5f918252602090912001546001600160a01b0316949350505050565b61034283610bc6565b60405163c4e8fcb560e01b81526001600160a01b038381166004830152821515602483015284169063c4e8fcb5906044015f604051808303815f87803b15801561038a575f80fd5b505af115801561039c573d5f803e3d5ffd5b505050506001600160a01b038381165f908152602081815260408083209386168352600484019091529020548015158380156103d6575080155b15610425576003830180546001810182555f828152602080822090920180546001600160a01b0319166001600160a01b038a169081179091559254928152600486019091526040902055610529565b831580156104305750805b156105295760038301545f198301905f9061044d90600190610d92565b90508181146104d8575f85600301828154811061046c5761046c610d7e565b5f918252602090912001546003870180546001600160a01b03909216925082918590811061049c5761049c610d7e565b5f91825260208083209190910180546001600160a01b0319166001600160a01b0394851617905592909116815260048701909152604090208490555b846003018054806104eb576104eb610db7565b5f828152602080822083015f1990810180546001600160a01b03191690559092019092556001600160a01b0389168252600487019052604081205550505b505050505050565b5f61053b82610b8e565b506001600160a01b039081165f908152602081905260409020600101541690565b5f61056683610b8e565b506001600160a01b039182165f9081526020818152604080832093909416825260049092019091522054151590565b5f61059f82610b8e565b506001600160a01b03165f9081526020819052604090206003015490565b6105c681610b8e565b6001600160a01b038181165f9081526020819052604090206002015416331461060d576040516388c3a11560e01b81526001600160a01b03821660048201526024016102e8565b6040515f907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da908290a26001600160a01b038082165f818152602081905260408082206002810180546001600160a01b031916905560010154905133949190911692917fc8894f26f396ce8c004245c8b7cd1b92103a6e4302fcbab883987149ac01b7ec91a46001600160a01b03165f90815260208190526040902060010180546001600160a01b03191633179055565b6106c782610bc6565b6001600160a01b0381166106f95760405163a388d26360e01b81526001600160a01b03831660048201526024016102e8565b6001600160a01b038083165f9081526020819052604090206002015481169082160361074b576040516365e0406560e11b81526001600160a01b038084166004830152821660248201526044016102e8565b6040516001600160a01b038216907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da905f90a26001600160a01b039182165f90815260208190526040902060020180546001600160a01b03191691909216179055565b5f8060ff60f81b30847f00000000000000000000000000000000000000000000000000000000000000006040516020016107eb9493929190610dcb565b60408051601f198184030181529190528051602090910120936001600160a01b0385163f7f0000000000000000000000000000000000000000000000000000000000000000149350915050565b5f6001600160a01b0382166108605760405163267eaa8160e21b815260040160405180910390fd5b606083901c3314610884576040516332db94d160e21b815260040160405180910390fd5b6040516108c3906001600160f81b031990309086907f000000000000000000000000000000000000000000000000000000000000000090602001610dcb565b604051602081830303815290604052805190602001205f1c90507f0000000000000000000000000000000000000000000000000000000000000000816001600160a01b03163f0361093257604051633194665960e11b81526001600160a01b03821660048201526024016102e8565b8260405161093f90610c16565b8190604051809103905ff590508015801561095c573d5f803e3d5ffd5b50506001600160a01b038181165f81815260208181526040918290206001810180546001600160a01b03191695881695909517909455868455815192835282018690527f4397af6128d529b8ae0442f99db1296d5136062597a15bbc61c1b2a6431a7d15910160405180910390a16040516001600160a01b03808516915f918516907fc8894f26f396ce8c004245c8b7cd1b92103a6e4302fcbab883987149ac01b7ec908390a45092915050565b610a1381610bc6565b6001600160a01b038181165f9081526020819052604090206002015416610a58576040516335809b0b60e11b81526001600160a01b03821660048201526024016102e8565b6040515f907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da908290a26001600160a01b03165f90815260208190526040902060020180546001600160a01b0319169055565b6060610ab682610b8e565b6001600160a01b0382165f908152602081815260409182902060030180548351818402810184019094528084529091830182828015610b1c57602002820191905f5260205f20905b81546001600160a01b03168152600190910190602001808311610afe575b50505050509050919050565b5f610b3282610b8e565b506001600160a01b039081165f908152602081905260409020600201541690565b6001600160a01b0381165f9081526020819052604090205480610b89576040516304ca820960e41b815260040160405180910390fd5b919050565b6001600160a01b0381165f90815260208190526040902054610bc3576040516304ca820960e41b815260040160405180910390fd5b50565b610bcf81610b8e565b6001600160a01b038181165f90815260208190526040902060010154163314610bc35760405163d4ed9a1760e01b81526001600160a01b03821660048201526024016102e8565b610a4180610e0583390190565b80356001600160a01b0381168114610b89575f80fd5b5f8060408385031215610c4a575f80fd5b610c5383610c23565b946020939093013593505050565b5f805f60608486031215610c73575f80fd5b610c7c84610c23565b9250610c8a60208501610c23565b915060408401358015158114610c9e575f80fd5b809150509250925092565b5f60208284031215610cb9575f80fd5b610cc282610c23565b9392505050565b5f8060408385031215610cda575f80fd5b610ce383610c23565b9150610cf160208401610c23565b90509250929050565b5f60208284031215610d0a575f80fd5b5035919050565b5f8060408385031215610d22575f80fd5b82359150610cf160208401610c23565b602080825282518282018190525f9190848201906040850190845b81811015610d725783516001600160a01b031683529284019291840191600101610d4d565b50909695505050505050565b634e487b7160e01b5f52603260045260245ffd5b81810381811115610db157634e487b7160e01b5f52601160045260245ffd5b92915050565b634e487b7160e01b5f52603160045260245ffd5b6001600160f81b031994909416845260609290921b6bffffffffffffffffffffffff19166001840152601583015260358201526055019056fe60a060405234801561000f575f80fd5b5033608052608051610a1561002c5f395f6101d20152610a155ff3fe608060405234801561000f575f80fd5b506004361061004a575f3560e01c80634ce34aa21461004e578063899e104c1461007e5780638df25d9214610091578063c4e8fcb5146100a4575b5f80fd5b61006161005c366004610834565b6100b9565b6040516001600160e01b0319909116815260200160405180910390f35b61006161008c3660046108b4565b610121565b61006161009f36600461091b565b61018a565b6100b76100b2366004610969565b6101c7565b005b5f335f525f60205260405f20546100dd576349ed56f960e11b5f523360045260245ffd5b815f5b81811015610110576101088585838181106100fd576100fd6109a2565b905060c002016102c4565b6001016100e0565b50632671a55160e11b949350505050565b5f335f525f60205260405f2054610145576349ed56f960e11b5f523360045260245ffd5b835f5b8181101561016d576101658787838181106100fd576100fd6109a2565b600101610148565b506101788484610436565b50632267841360e21b95945050505050565b5f335f525f60205260405f20546101ae576349ed56f960e11b5f523360045260245ffd5b6101b88383610436565b506346f92ec960e11b92915050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610210576040516336abb4df60e11b815260040160405180910390fd5b6001600160a01b0382165f9081526020819052604090205481151560ff909116151503610268576040516349271a0f60e11b81526001600160a01b038316600482015281151560248201526044015b60405180910390fd5b6001600160a01b0382165f8181526020818152604091829020805460ff191685151590811790915591519182527fae63067d43ac07563b7eb8db6595635fc77f1578a2a5ea06ba91b63e2afa37e2910160405180910390a25050565b60016102d360208301836109ca565b60038111156102e4576102e46109b6565b03610329576103266102fc60408301602084016109ef565b61030c60608401604085016109ef565b61031c60808501606086016109ef565b8460a0013561056c565b50565b600261033860208301836109ca565b6003811115610349576103496109b6565b036103b6578060a00135600114610379576040516369f9582760e01b815260a0820135600482015260240161025f565b61032661038c60408301602084016109ef565b61039c60608401604085016109ef565b6103ac60808501606086016109ef565b8460800135610660565b60036103c560208301836109ca565b60038111156103d6576103d66109b6565b0361041d576103266103ee60408301602084016109ef565b6103fe60608401604085016109ef565b61040e60808501606086016109ef565b84608001358560a00135610715565b604051631e4cbc7f60e21b815260040160405180910390fd5b808280631759616b60e11b6020525f5b8381101561055f57823582018035803b61046b57635f15d6725f52806020526024601cfd5b60a08201358060051b60c0018060808501351460a0606086013514168185013583141615905080156104a657633ae8821360e21b5f5260045ffd5b506020860195506080602084016024378060061b60400190508060a00160a4525f8160c401528060c4018160a0850160c4375f808260205f875af1935083610550573d1561053057601f3d0160051c91508060051c826003028184111561051a578184036003028280028580020360091c01015b5a60208201101561052d573d5f803e3d5ffd5b50505b6357e222f160e11b5f528260045260c0606452608451602001608452805ffd5b50505050600181019050610446565b5050505060806040525050565b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166106515780873b15151661065157806106405781610623573d1561060257601f3d0160051c8360051c81600302818311156105eb578183036003028280028480020360091c01015b5a6020820110156105fe573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b833b61067757635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af180610707573d156106e557601f3d0160051c8260051c81600302818311156106ce578183036003028280028480020360091c01015b5a6020820110156106e1573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b61072c57635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af1806107d1573d156107b057601f3d0160051c8560051c8160030281831115610799578183036003028280028480020360091c01015b5a6020820110156107ac573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b5f8083601f8401126107fc575f80fd5b50813567ffffffffffffffff811115610813575f80fd5b60208301915083602060c08302850101111561082d575f80fd5b9250929050565b5f8060208385031215610845575f80fd5b823567ffffffffffffffff81111561085b575f80fd5b610867858286016107ec565b90969095509350505050565b5f8083601f840112610883575f80fd5b50813567ffffffffffffffff81111561089a575f80fd5b6020830191508360208260051b850101111561082d575f80fd5b5f805f80604085870312156108c7575f80fd5b843567ffffffffffffffff808211156108de575f80fd5b6108ea888389016107ec565b90965094506020870135915080821115610902575f80fd5b5061090f87828801610873565b95989497509550505050565b5f806020838503121561092c575f80fd5b823567ffffffffffffffff811115610942575f80fd5b61086785828601610873565b80356001600160a01b0381168114610964575f80fd5b919050565b5f806040838503121561097a575f80fd5b6109838361094e565b915060208301358015158114610997575f80fd5b809150509250929050565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52602160045260245ffd5b5f602082840312156109da575f80fd5b8135600481106109e8575f80fd5b9392505050565b5f602082840312156109ff575f80fd5b6109e88261094e56fea164736f6c6343000818000aa164736f6c6343000818000a60a060405234801561000f575f80fd5b5033608052608051610a1561002c5f395f6101d20152610a155ff3fe608060405234801561000f575f80fd5b506004361061004a575f3560e01c80634ce34aa21461004e578063899e104c1461007e5780638df25d9214610091578063c4e8fcb5146100a4575b5f80fd5b61006161005c366004610834565b6100b9565b6040516001600160e01b0319909116815260200160405180910390f35b61006161008c3660046108b4565b610121565b61006161009f36600461091b565b61018a565b6100b76100b2366004610969565b6101c7565b005b5f335f525f60205260405f20546100dd576349ed56f960e11b5f523360045260245ffd5b815f5b81811015610110576101088585838181106100fd576100fd6109a2565b905060c002016102c4565b6001016100e0565b50632671a55160e11b949350505050565b5f335f525f60205260405f2054610145576349ed56f960e11b5f523360045260245ffd5b835f5b8181101561016d576101658787838181106100fd576100fd6109a2565b600101610148565b506101788484610436565b50632267841360e21b95945050505050565b5f335f525f60205260405f20546101ae576349ed56f960e11b5f523360045260245ffd5b6101b88383610436565b506346f92ec960e11b92915050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610210576040516336abb4df60e11b815260040160405180910390fd5b6001600160a01b0382165f9081526020819052604090205481151560ff909116151503610268576040516349271a0f60e11b81526001600160a01b038316600482015281151560248201526044015b60405180910390fd5b6001600160a01b0382165f8181526020818152604091829020805460ff191685151590811790915591519182527fae63067d43ac07563b7eb8db6595635fc77f1578a2a5ea06ba91b63e2afa37e2910160405180910390a25050565b60016102d360208301836109ca565b60038111156102e4576102e46109b6565b03610329576103266102fc60408301602084016109ef565b61030c60608401604085016109ef565b61031c60808501606086016109ef565b8460a0013561056c565b50565b600261033860208301836109ca565b6003811115610349576103496109b6565b036103b6578060a00135600114610379576040516369f9582760e01b815260a0820135600482015260240161025f565b61032661038c60408301602084016109ef565b61039c60608401604085016109ef565b6103ac60808501606086016109ef565b8460800135610660565b60036103c560208301836109ca565b60038111156103d6576103d66109b6565b0361041d576103266103ee60408301602084016109ef565b6103fe60608401604085016109ef565b61040e60808501606086016109ef565b84608001358560a00135610715565b604051631e4cbc7f60e21b815260040160405180910390fd5b808280631759616b60e11b6020525f5b8381101561055f57823582018035803b61046b57635f15d6725f52806020526024601cfd5b60a08201358060051b60c0018060808501351460a0606086013514168185013583141615905080156104a657633ae8821360e21b5f5260045ffd5b506020860195506080602084016024378060061b60400190508060a00160a4525f8160c401528060c4018160a0850160c4375f808260205f875af1935083610550573d1561053057601f3d0160051c91508060051c826003028184111561051a578184036003028280028580020360091c01015b5a60208201101561052d573d5f803e3d5ffd5b50505b6357e222f160e11b5f528260045260c0606452608451602001608452805ffd5b50505050600181019050610446565b5050505060806040525050565b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166106515780873b15151661065157806106405781610623573d1561060257601f3d0160051c8360051c81600302818311156105eb578183036003028280028480020360091c01015b5a6020820110156105fe573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b833b61067757635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af180610707573d156106e557601f3d0160051c8260051c81600302818311156106ce578183036003028280028480020360091c01015b5a6020820110156106e1573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b61072c57635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af1806107d1573d156107b057601f3d0160051c8560051c8160030281831115610799578183036003028280028480020360091c01015b5a6020820110156107ac573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b5f8083601f8401126107fc575f80fd5b50813567ffffffffffffffff811115610813575f80fd5b60208301915083602060c08302850101111561082d575f80fd5b9250929050565b5f8060208385031215610845575f80fd5b823567ffffffffffffffff81111561085b575f80fd5b610867858286016107ec565b90969095509350505050565b5f8083601f840112610883575f80fd5b50813567ffffffffffffffff81111561089a575f80fd5b6020830191508360208260051b850101111561082d575f80fd5b5f805f80604085870312156108c7575f80fd5b843567ffffffffffffffff808211156108de575f80fd5b6108ea888389016107ec565b90965094506020870135915080821115610902575f80fd5b5061090f87828801610873565b95989497509550505050565b5f806020838503121561092c575f80fd5b823567ffffffffffffffff811115610942575f80fd5b61086785828601610873565b80356001600160a01b0381168114610964575f80fd5b919050565b5f806040838503121561097a575f80fd5b6109838361094e565b915060208301358015158114610997575f80fd5b809150509250929050565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52602160045260245ffd5b5f602082840312156109da575f80fd5b8135600481106109e8575f80fd5b9392505050565b5f602082840312156109ff575f80fd5b6109e88261094e56fea164736f6c6343000818000a", + "deployedBytecode": "0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c80636d435421116100885780637b37e561116100635780637b37e561146102435780638b9e028b14610256578063906c87cc1461027657806393790f4414610289575f80fd5b80636d435421146101eb5780636e9bfd9f146101fe578063794593bc14610230575f80fd5b806314afd79e116100c357806314afd79e1461018157806333bc8572146101945780634e3f9580146101b757806351710e45146101d8575f80fd5b8063027cc764146100e95780630a96ad391461011957806313ad9cab1461016c575b5f80fd5b6100fc6100f7366004610c39565b61029c565b6040516001600160a01b0390911681526020015b60405180910390f35b604080517f000000000000000000000000000000000000000000000000000000000000000081527f0000000000000000000000000000000000000000000000000000000000000000602082015201610110565b61017f61017a366004610c61565b610339565b005b6100fc61018f366004610ca9565b610531565b6101a76101a2366004610cc9565b61055c565b6040519015158152602001610110565b6101ca6101c5366004610ca9565b610595565b604051908152602001610110565b61017f6101e6366004610ca9565b6105bd565b61017f6101f9366004610cc9565b6106be565b61021161020c366004610cfa565b6107ae565b604080516001600160a01b039093168352901515602083015201610110565b6100fc61023e366004610d11565b610838565b61017f610251366004610ca9565b610a0a565b610269610264366004610ca9565b610aab565b6040516101109190610d32565b6100fc610284366004610ca9565b610b28565b6101ca610297366004610ca9565b610b53565b5f6102a683610b8e565b6001600160a01b0383165f908152602081905260409020600301548083106102f157604051636ceb340b60e01b81526001600160a01b03851660048201526024015b60405180910390fd5b6001600160a01b0384165f90815260208190526040902060030180548490811061031d5761031d610d7e565b5f918252602090912001546001600160a01b0316949350505050565b61034283610bc6565b60405163c4e8fcb560e01b81526001600160a01b038381166004830152821515602483015284169063c4e8fcb5906044015f604051808303815f87803b15801561038a575f80fd5b505af115801561039c573d5f803e3d5ffd5b505050506001600160a01b038381165f908152602081815260408083209386168352600484019091529020548015158380156103d6575080155b15610425576003830180546001810182555f828152602080822090920180546001600160a01b0319166001600160a01b038a169081179091559254928152600486019091526040902055610529565b831580156104305750805b156105295760038301545f198301905f9061044d90600190610d92565b90508181146104d8575f85600301828154811061046c5761046c610d7e565b5f918252602090912001546003870180546001600160a01b03909216925082918590811061049c5761049c610d7e565b5f91825260208083209190910180546001600160a01b0319166001600160a01b0394851617905592909116815260048701909152604090208490555b846003018054806104eb576104eb610db7565b5f828152602080822083015f1990810180546001600160a01b03191690559092019092556001600160a01b0389168252600487019052604081205550505b505050505050565b5f61053b82610b8e565b506001600160a01b039081165f908152602081905260409020600101541690565b5f61056683610b8e565b506001600160a01b039182165f9081526020818152604080832093909416825260049092019091522054151590565b5f61059f82610b8e565b506001600160a01b03165f9081526020819052604090206003015490565b6105c681610b8e565b6001600160a01b038181165f9081526020819052604090206002015416331461060d576040516388c3a11560e01b81526001600160a01b03821660048201526024016102e8565b6040515f907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da908290a26001600160a01b038082165f818152602081905260408082206002810180546001600160a01b031916905560010154905133949190911692917fc8894f26f396ce8c004245c8b7cd1b92103a6e4302fcbab883987149ac01b7ec91a46001600160a01b03165f90815260208190526040902060010180546001600160a01b03191633179055565b6106c782610bc6565b6001600160a01b0381166106f95760405163a388d26360e01b81526001600160a01b03831660048201526024016102e8565b6001600160a01b038083165f9081526020819052604090206002015481169082160361074b576040516365e0406560e11b81526001600160a01b038084166004830152821660248201526044016102e8565b6040516001600160a01b038216907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da905f90a26001600160a01b039182165f90815260208190526040902060020180546001600160a01b03191691909216179055565b5f8060ff60f81b30847f00000000000000000000000000000000000000000000000000000000000000006040516020016107eb9493929190610dcb565b60408051601f198184030181529190528051602090910120936001600160a01b0385163f7f0000000000000000000000000000000000000000000000000000000000000000149350915050565b5f6001600160a01b0382166108605760405163267eaa8160e21b815260040160405180910390fd5b606083901c3314610884576040516332db94d160e21b815260040160405180910390fd5b6040516108c3906001600160f81b031990309086907f000000000000000000000000000000000000000000000000000000000000000090602001610dcb565b604051602081830303815290604052805190602001205f1c90507f0000000000000000000000000000000000000000000000000000000000000000816001600160a01b03163f0361093257604051633194665960e11b81526001600160a01b03821660048201526024016102e8565b8260405161093f90610c16565b8190604051809103905ff590508015801561095c573d5f803e3d5ffd5b50506001600160a01b038181165f81815260208181526040918290206001810180546001600160a01b03191695881695909517909455868455815192835282018690527f4397af6128d529b8ae0442f99db1296d5136062597a15bbc61c1b2a6431a7d15910160405180910390a16040516001600160a01b03808516915f918516907fc8894f26f396ce8c004245c8b7cd1b92103a6e4302fcbab883987149ac01b7ec908390a45092915050565b610a1381610bc6565b6001600160a01b038181165f9081526020819052604090206002015416610a58576040516335809b0b60e11b81526001600160a01b03821660048201526024016102e8565b6040515f907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da908290a26001600160a01b03165f90815260208190526040902060020180546001600160a01b0319169055565b6060610ab682610b8e565b6001600160a01b0382165f908152602081815260409182902060030180548351818402810184019094528084529091830182828015610b1c57602002820191905f5260205f20905b81546001600160a01b03168152600190910190602001808311610afe575b50505050509050919050565b5f610b3282610b8e565b506001600160a01b039081165f908152602081905260409020600201541690565b6001600160a01b0381165f9081526020819052604090205480610b89576040516304ca820960e41b815260040160405180910390fd5b919050565b6001600160a01b0381165f90815260208190526040902054610bc3576040516304ca820960e41b815260040160405180910390fd5b50565b610bcf81610b8e565b6001600160a01b038181165f90815260208190526040902060010154163314610bc35760405163d4ed9a1760e01b81526001600160a01b03821660048201526024016102e8565b610a4180610e0583390190565b80356001600160a01b0381168114610b89575f80fd5b5f8060408385031215610c4a575f80fd5b610c5383610c23565b946020939093013593505050565b5f805f60608486031215610c73575f80fd5b610c7c84610c23565b9250610c8a60208501610c23565b915060408401358015158114610c9e575f80fd5b809150509250925092565b5f60208284031215610cb9575f80fd5b610cc282610c23565b9392505050565b5f8060408385031215610cda575f80fd5b610ce383610c23565b9150610cf160208401610c23565b90509250929050565b5f60208284031215610d0a575f80fd5b5035919050565b5f8060408385031215610d22575f80fd5b82359150610cf160208401610c23565b602080825282518282018190525f9190848201906040850190845b81811015610d725783516001600160a01b031683529284019291840191600101610d4d565b50909695505050505050565b634e487b7160e01b5f52603260045260245ffd5b81810381811115610db157634e487b7160e01b5f52601160045260245ffd5b92915050565b634e487b7160e01b5f52603160045260245ffd5b6001600160f81b031994909416845260609290921b6bffffffffffffffffffffffff19166001840152601583015260358201526055019056fe60a060405234801561000f575f80fd5b5033608052608051610a1561002c5f395f6101d20152610a155ff3fe608060405234801561000f575f80fd5b506004361061004a575f3560e01c80634ce34aa21461004e578063899e104c1461007e5780638df25d9214610091578063c4e8fcb5146100a4575b5f80fd5b61006161005c366004610834565b6100b9565b6040516001600160e01b0319909116815260200160405180910390f35b61006161008c3660046108b4565b610121565b61006161009f36600461091b565b61018a565b6100b76100b2366004610969565b6101c7565b005b5f335f525f60205260405f20546100dd576349ed56f960e11b5f523360045260245ffd5b815f5b81811015610110576101088585838181106100fd576100fd6109a2565b905060c002016102c4565b6001016100e0565b50632671a55160e11b949350505050565b5f335f525f60205260405f2054610145576349ed56f960e11b5f523360045260245ffd5b835f5b8181101561016d576101658787838181106100fd576100fd6109a2565b600101610148565b506101788484610436565b50632267841360e21b95945050505050565b5f335f525f60205260405f20546101ae576349ed56f960e11b5f523360045260245ffd5b6101b88383610436565b506346f92ec960e11b92915050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610210576040516336abb4df60e11b815260040160405180910390fd5b6001600160a01b0382165f9081526020819052604090205481151560ff909116151503610268576040516349271a0f60e11b81526001600160a01b038316600482015281151560248201526044015b60405180910390fd5b6001600160a01b0382165f8181526020818152604091829020805460ff191685151590811790915591519182527fae63067d43ac07563b7eb8db6595635fc77f1578a2a5ea06ba91b63e2afa37e2910160405180910390a25050565b60016102d360208301836109ca565b60038111156102e4576102e46109b6565b03610329576103266102fc60408301602084016109ef565b61030c60608401604085016109ef565b61031c60808501606086016109ef565b8460a0013561056c565b50565b600261033860208301836109ca565b6003811115610349576103496109b6565b036103b6578060a00135600114610379576040516369f9582760e01b815260a0820135600482015260240161025f565b61032661038c60408301602084016109ef565b61039c60608401604085016109ef565b6103ac60808501606086016109ef565b8460800135610660565b60036103c560208301836109ca565b60038111156103d6576103d66109b6565b0361041d576103266103ee60408301602084016109ef565b6103fe60608401604085016109ef565b61040e60808501606086016109ef565b84608001358560a00135610715565b604051631e4cbc7f60e21b815260040160405180910390fd5b808280631759616b60e11b6020525f5b8381101561055f57823582018035803b61046b57635f15d6725f52806020526024601cfd5b60a08201358060051b60c0018060808501351460a0606086013514168185013583141615905080156104a657633ae8821360e21b5f5260045ffd5b506020860195506080602084016024378060061b60400190508060a00160a4525f8160c401528060c4018160a0850160c4375f808260205f875af1935083610550573d1561053057601f3d0160051c91508060051c826003028184111561051a578184036003028280028580020360091c01015b5a60208201101561052d573d5f803e3d5ffd5b50505b6357e222f160e11b5f528260045260c0606452608451602001608452805ffd5b50505050600181019050610446565b5050505060806040525050565b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166106515780873b15151661065157806106405781610623573d1561060257601f3d0160051c8360051c81600302818311156105eb578183036003028280028480020360091c01015b5a6020820110156105fe573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b833b61067757635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af180610707573d156106e557601f3d0160051c8260051c81600302818311156106ce578183036003028280028480020360091c01015b5a6020820110156106e1573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b61072c57635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af1806107d1573d156107b057601f3d0160051c8560051c8160030281831115610799578183036003028280028480020360091c01015b5a6020820110156107ac573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b5f8083601f8401126107fc575f80fd5b50813567ffffffffffffffff811115610813575f80fd5b60208301915083602060c08302850101111561082d575f80fd5b9250929050565b5f8060208385031215610845575f80fd5b823567ffffffffffffffff81111561085b575f80fd5b610867858286016107ec565b90969095509350505050565b5f8083601f840112610883575f80fd5b50813567ffffffffffffffff81111561089a575f80fd5b6020830191508360208260051b850101111561082d575f80fd5b5f805f80604085870312156108c7575f80fd5b843567ffffffffffffffff808211156108de575f80fd5b6108ea888389016107ec565b90965094506020870135915080821115610902575f80fd5b5061090f87828801610873565b95989497509550505050565b5f806020838503121561092c575f80fd5b823567ffffffffffffffff811115610942575f80fd5b61086785828601610873565b80356001600160a01b0381168114610964575f80fd5b919050565b5f806040838503121561097a575f80fd5b6109838361094e565b915060208301358015158114610997575f80fd5b809150509250929050565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52602160045260245ffd5b5f602082840312156109da575f80fd5b8135600481106109e8575f80fd5b9392505050565b5f602082840312156109ff575f80fd5b6109e88261094e56fea164736f6c6343000818000aa164736f6c6343000818000a", + "linkReferences": {}, + "deployedLinkReferences": {} +} diff --git a/artifacts/ConduitControllerInterface.json b/artifacts/ConduitControllerInterface.json new file mode 100644 index 00000000..52364eba --- /dev/null +++ b/artifacts/ConduitControllerInterface.json @@ -0,0 +1,441 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "ConduitControllerInterface", + "sourceName": "seaport-types/src/interfaces/ConduitControllerInterface.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "conduit", + "type": "address" + } + ], + "name": "CallerIsNotNewPotentialOwner", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "conduit", + "type": "address" + } + ], + "name": "CallerIsNotOwner", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "conduit", + "type": "address" + } + ], + "name": "ChannelOutOfRange", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "conduit", + "type": "address" + } + ], + "name": "ConduitAlreadyExists", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidCreator", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidInitialOwner", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "conduit", + "type": "address" + }, + { + "internalType": "address", + "name": "newPotentialOwner", + "type": "address" + } + ], + "name": "NewPotentialOwnerAlreadySet", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "conduit", + "type": "address" + } + ], + "name": "NewPotentialOwnerIsZeroAddress", + "type": "error" + }, + { + "inputs": [], + "name": "NoConduit", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "conduit", + "type": "address" + } + ], + "name": "NoPotentialOwnerCurrentlySet", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "conduit", + "type": "address" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + } + ], + "name": "NewConduit", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "conduit", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "newPotentialOwner", + "type": "address" + } + ], + "name": "PotentialOwnerUpdated", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "conduit", + "type": "address" + } + ], + "name": "acceptOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "conduit", + "type": "address" + } + ], + "name": "cancelOwnershipTransfer", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "initialOwner", + "type": "address" + } + ], + "name": "createConduit", + "outputs": [ + { + "internalType": "address", + "name": "conduit", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "conduit", + "type": "address" + }, + { + "internalType": "uint256", + "name": "channelIndex", + "type": "uint256" + } + ], + "name": "getChannel", + "outputs": [ + { + "internalType": "address", + "name": "channel", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "conduit", + "type": "address" + }, + { + "internalType": "address", + "name": "channel", + "type": "address" + } + ], + "name": "getChannelStatus", + "outputs": [ + { + "internalType": "bool", + "name": "isOpen", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "conduit", + "type": "address" + } + ], + "name": "getChannels", + "outputs": [ + { + "internalType": "address[]", + "name": "channels", + "type": "address[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + } + ], + "name": "getConduit", + "outputs": [ + { + "internalType": "address", + "name": "conduit", + "type": "address" + }, + { + "internalType": "bool", + "name": "exists", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getConduitCodeHashes", + "outputs": [ + { + "internalType": "bytes32", + "name": "creationCodeHash", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "runtimeCodeHash", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "conduit", + "type": "address" + } + ], + "name": "getKey", + "outputs": [ + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "conduit", + "type": "address" + } + ], + "name": "getPotentialOwner", + "outputs": [ + { + "internalType": "address", + "name": "potentialOwner", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "conduit", + "type": "address" + } + ], + "name": "getTotalChannels", + "outputs": [ + { + "internalType": "uint256", + "name": "totalChannels", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "conduit", + "type": "address" + } + ], + "name": "ownerOf", + "outputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "conduit", + "type": "address" + }, + { + "internalType": "address", + "name": "newPotentialOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "conduit", + "type": "address" + }, + { + "internalType": "address", + "name": "channel", + "type": "address" + }, + { + "internalType": "bool", + "name": "isOpen", + "type": "bool" + } + ], + "name": "updateChannel", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x", + "linkReferences": {}, + "deployedLinkReferences": {} +} diff --git a/artifacts/ConduitInterface.json b/artifacts/ConduitInterface.json new file mode 100644 index 00000000..86a66731 --- /dev/null +++ b/artifacts/ConduitInterface.json @@ -0,0 +1,265 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "ConduitInterface", + "sourceName": "seaport-types/src/interfaces/ConduitInterface.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "channel", + "type": "address" + } + ], + "name": "ChannelClosed", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "channel", + "type": "address" + }, + { + "internalType": "bool", + "name": "isOpen", + "type": "bool" + } + ], + "name": "ChannelStatusAlreadySet", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidController", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidItemType", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "channel", + "type": "address" + }, + { + "indexed": false, + "internalType": "bool", + "name": "open", + "type": "bool" + } + ], + "name": "ChannelUpdated", + "type": "event" + }, + { + "inputs": [ + { + "components": [ + { + "internalType": "enum ConduitItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "internalType": "struct ConduitTransfer[]", + "name": "transfers", + "type": "tuple[]" + } + ], + "name": "execute", + "outputs": [ + { + "internalType": "bytes4", + "name": "magicValue", + "type": "bytes4" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256[]", + "name": "ids", + "type": "uint256[]" + }, + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + } + ], + "internalType": "struct ConduitBatch1155Transfer[]", + "name": "batch1155Transfers", + "type": "tuple[]" + } + ], + "name": "executeBatch1155", + "outputs": [ + { + "internalType": "bytes4", + "name": "magicValue", + "type": "bytes4" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "internalType": "enum ConduitItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "internalType": "struct ConduitTransfer[]", + "name": "standardTransfers", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256[]", + "name": "ids", + "type": "uint256[]" + }, + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + } + ], + "internalType": "struct ConduitBatch1155Transfer[]", + "name": "batch1155Transfers", + "type": "tuple[]" + } + ], + "name": "executeWithBatch1155", + "outputs": [ + { + "internalType": "bytes4", + "name": "magicValue", + "type": "bytes4" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "channel", + "type": "address" + }, + { + "internalType": "bool", + "name": "isOpen", + "type": "bool" + } + ], + "name": "updateChannel", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x", + "linkReferences": {}, + "deployedLinkReferences": {} +} diff --git a/artifacts/Consideration.json b/artifacts/Consideration.json new file mode 100644 index 00000000..0e50a3b2 --- /dev/null +++ b/artifacts/Consideration.json @@ -0,0 +1,2967 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "Consideration", + "sourceName": "seaport-core/src/lib/Consideration.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "conduitController", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [], + "name": "BadContractSignature", + "type": "error" + }, + { + "inputs": [], + "name": "BadFraction", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "BadReturnValueFromERC20OnTransfer", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint8", + "name": "v", + "type": "uint8" + } + ], + "name": "BadSignatureV", + "type": "error" + }, + { + "inputs": [], + "name": "CannotCancelOrder", + "type": "error" + }, + { + "inputs": [], + "name": "ConsiderationCriteriaResolverOutOfRange", + "type": "error" + }, + { + "inputs": [], + "name": "ConsiderationLengthNotEqualToTotalOriginal", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "considerationIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "shortfallAmount", + "type": "uint256" + } + ], + "name": "ConsiderationNotMet", + "type": "error" + }, + { + "inputs": [], + "name": "CriteriaNotEnabledForItem", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256[]", + "name": "identifiers", + "type": "uint256[]" + }, + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + } + ], + "name": "ERC1155BatchTransferGenericFailure", + "type": "error" + }, + { + "inputs": [], + "name": "InexactFraction", + "type": "error" + }, + { + "inputs": [], + "name": "InsufficientNativeTokensSupplied", + "type": "error" + }, + { + "inputs": [], + "name": "Invalid1155BatchTransferEncoding", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidBasicOrderParameterEncoding", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "conduit", + "type": "address" + } + ], + "name": "InvalidCallToConduit", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "conduit", + "type": "address" + } + ], + "name": "InvalidConduit", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "InvalidContractOrder", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "InvalidERC721TransferAmount", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidFulfillmentComponentData", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "InvalidMsgValue", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidNativeOfferItem", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidProof", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "InvalidRestrictedOrder", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidSignature", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidSigner", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + } + ], + "name": "InvalidTime", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "fulfillmentIndex", + "type": "uint256" + } + ], + "name": "MismatchedFulfillmentOfferAndConsiderationComponents", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "enum Side", + "name": "side", + "type": "uint8" + } + ], + "name": "MissingFulfillmentComponentOnAggregation", + "type": "error" + }, + { + "inputs": [], + "name": "MissingItemAmount", + "type": "error" + }, + { + "inputs": [], + "name": "MissingOriginalConsiderationItems", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "NativeTokenTransferGenericFailure", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "NoContract", + "type": "error" + }, + { + "inputs": [], + "name": "NoReentrantCalls", + "type": "error" + }, + { + "inputs": [], + "name": "NoSpecifiedOrdersAvailable", + "type": "error" + }, + { + "inputs": [], + "name": "OfferAndConsiderationRequiredOnFulfillment", + "type": "error" + }, + { + "inputs": [], + "name": "OfferCriteriaResolverOutOfRange", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "OrderAlreadyFilled", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "enum Side", + "name": "side", + "type": "uint8" + } + ], + "name": "OrderCriteriaResolverOutOfRange", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "OrderIsCancelled", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "OrderPartiallyFilled", + "type": "error" + }, + { + "inputs": [], + "name": "PartialFillsNotEnabledForOrder", + "type": "error" + }, + { + "inputs": [], + "name": "TStoreAlreadyActivated", + "type": "error" + }, + { + "inputs": [], + "name": "TStoreNotSupported", + "type": "error" + }, + { + "inputs": [], + "name": "TloadTestContractDeploymentFailed", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "TokenTransferGenericFailure", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "considerationIndex", + "type": "uint256" + } + ], + "name": "UnresolvedConsiderationCriteria", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "offerIndex", + "type": "uint256" + } + ], + "name": "UnresolvedOfferCriteria", + "type": "error" + }, + { + "inputs": [], + "name": "UnusedItemParameters", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint256", + "name": "newCounter", + "type": "uint256" + }, + { + "indexed": true, + "internalType": "address", + "name": "offerer", + "type": "address" + } + ], + "name": "CounterIncremented", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "zone", + "type": "address" + } + ], + "name": "OrderCancelled", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "indexed": false, + "internalType": "struct SpentItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "indexed": false, + "internalType": "struct ReceivedItem[]", + "name": "consideration", + "type": "tuple[]" + } + ], + "name": "OrderFulfilled", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + }, + { + "components": [ + { + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + } + ], + "internalType": "struct OfferItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct ConsiderationItem[]", + "name": "consideration", + "type": "tuple[]" + }, + { + "internalType": "enum OrderType", + "name": "orderType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "zoneHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "salt", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "totalOriginalConsiderationItems", + "type": "uint256" + } + ], + "indexed": false, + "internalType": "struct OrderParameters", + "name": "orderParameters", + "type": "tuple" + } + ], + "name": "OrderValidated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32[]", + "name": "orderHashes", + "type": "bytes32[]" + } + ], + "name": "OrdersMatched", + "type": "event" + }, + { + "inputs": [], + "name": "__activateTstore", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + } + ], + "internalType": "struct OfferItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct ConsiderationItem[]", + "name": "consideration", + "type": "tuple[]" + }, + { + "internalType": "enum OrderType", + "name": "orderType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "zoneHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "salt", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "counter", + "type": "uint256" + } + ], + "internalType": "struct OrderComponents[]", + "name": "orders", + "type": "tuple[]" + } + ], + "name": "cancel", + "outputs": [ + { + "internalType": "bool", + "name": "cancelled", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "components": [ + { + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + } + ], + "internalType": "struct OfferItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct ConsiderationItem[]", + "name": "consideration", + "type": "tuple[]" + }, + { + "internalType": "enum OrderType", + "name": "orderType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "zoneHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "salt", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "totalOriginalConsiderationItems", + "type": "uint256" + } + ], + "internalType": "struct OrderParameters", + "name": "parameters", + "type": "tuple" + }, + { + "internalType": "uint120", + "name": "numerator", + "type": "uint120" + }, + { + "internalType": "uint120", + "name": "denominator", + "type": "uint120" + }, + { + "internalType": "bytes", + "name": "signature", + "type": "bytes" + }, + { + "internalType": "bytes", + "name": "extraData", + "type": "bytes" + } + ], + "internalType": "struct AdvancedOrder", + "name": "", + "type": "tuple" + }, + { + "components": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "enum Side", + "name": "side", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "index", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "bytes32[]", + "name": "criteriaProof", + "type": "bytes32[]" + } + ], + "internalType": "struct CriteriaResolver[]", + "name": "", + "type": "tuple[]" + }, + { + "internalType": "bytes32", + "name": "fulfillerConduitKey", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "recipient", + "type": "address" + } + ], + "name": "fulfillAdvancedOrder", + "outputs": [ + { + "internalType": "bool", + "name": "fulfilled", + "type": "bool" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "components": [ + { + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + } + ], + "internalType": "struct OfferItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct ConsiderationItem[]", + "name": "consideration", + "type": "tuple[]" + }, + { + "internalType": "enum OrderType", + "name": "orderType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "zoneHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "salt", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "totalOriginalConsiderationItems", + "type": "uint256" + } + ], + "internalType": "struct OrderParameters", + "name": "parameters", + "type": "tuple" + }, + { + "internalType": "uint120", + "name": "numerator", + "type": "uint120" + }, + { + "internalType": "uint120", + "name": "denominator", + "type": "uint120" + }, + { + "internalType": "bytes", + "name": "signature", + "type": "bytes" + }, + { + "internalType": "bytes", + "name": "extraData", + "type": "bytes" + } + ], + "internalType": "struct AdvancedOrder[]", + "name": "", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "enum Side", + "name": "side", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "index", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "bytes32[]", + "name": "criteriaProof", + "type": "bytes32[]" + } + ], + "internalType": "struct CriteriaResolver[]", + "name": "", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "itemIndex", + "type": "uint256" + } + ], + "internalType": "struct FulfillmentComponent[][]", + "name": "", + "type": "tuple[][]" + }, + { + "components": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "itemIndex", + "type": "uint256" + } + ], + "internalType": "struct FulfillmentComponent[][]", + "name": "", + "type": "tuple[][]" + }, + { + "internalType": "bytes32", + "name": "fulfillerConduitKey", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "maximumFulfilled", + "type": "uint256" + } + ], + "name": "fulfillAvailableAdvancedOrders", + "outputs": [ + { + "internalType": "bool[]", + "name": "", + "type": "bool[]" + }, + { + "components": [ + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct ReceivedItem", + "name": "item", + "type": "tuple" + }, + { + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + } + ], + "internalType": "struct Execution[]", + "name": "", + "type": "tuple[]" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "components": [ + { + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + } + ], + "internalType": "struct OfferItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct ConsiderationItem[]", + "name": "consideration", + "type": "tuple[]" + }, + { + "internalType": "enum OrderType", + "name": "orderType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "zoneHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "salt", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "totalOriginalConsiderationItems", + "type": "uint256" + } + ], + "internalType": "struct OrderParameters", + "name": "parameters", + "type": "tuple" + }, + { + "internalType": "bytes", + "name": "signature", + "type": "bytes" + } + ], + "internalType": "struct Order[]", + "name": "", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "itemIndex", + "type": "uint256" + } + ], + "internalType": "struct FulfillmentComponent[][]", + "name": "", + "type": "tuple[][]" + }, + { + "components": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "itemIndex", + "type": "uint256" + } + ], + "internalType": "struct FulfillmentComponent[][]", + "name": "", + "type": "tuple[][]" + }, + { + "internalType": "bytes32", + "name": "fulfillerConduitKey", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "maximumFulfilled", + "type": "uint256" + } + ], + "name": "fulfillAvailableOrders", + "outputs": [ + { + "internalType": "bool[]", + "name": "", + "type": "bool[]" + }, + { + "components": [ + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct ReceivedItem", + "name": "item", + "type": "tuple" + }, + { + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + } + ], + "internalType": "struct Execution[]", + "name": "", + "type": "tuple[]" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "internalType": "address", + "name": "considerationToken", + "type": "address" + }, + { + "internalType": "uint256", + "name": "considerationIdentifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "considerationAmount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "offerer", + "type": "address" + }, + { + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "internalType": "address", + "name": "offerToken", + "type": "address" + }, + { + "internalType": "uint256", + "name": "offerIdentifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "offerAmount", + "type": "uint256" + }, + { + "internalType": "enum BasicOrderType", + "name": "basicOrderType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "zoneHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "salt", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "offererConduitKey", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "fulfillerConduitKey", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "totalOriginalAdditionalRecipients", + "type": "uint256" + }, + { + "components": [ + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct AdditionalRecipient[]", + "name": "additionalRecipients", + "type": "tuple[]" + }, + { + "internalType": "bytes", + "name": "signature", + "type": "bytes" + } + ], + "internalType": "struct BasicOrderParameters", + "name": "", + "type": "tuple" + } + ], + "name": "fulfillBasicOrder", + "outputs": [ + { + "internalType": "bool", + "name": "fulfilled", + "type": "bool" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "internalType": "address", + "name": "considerationToken", + "type": "address" + }, + { + "internalType": "uint256", + "name": "considerationIdentifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "considerationAmount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "offerer", + "type": "address" + }, + { + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "internalType": "address", + "name": "offerToken", + "type": "address" + }, + { + "internalType": "uint256", + "name": "offerIdentifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "offerAmount", + "type": "uint256" + }, + { + "internalType": "enum BasicOrderType", + "name": "basicOrderType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "zoneHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "salt", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "offererConduitKey", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "fulfillerConduitKey", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "totalOriginalAdditionalRecipients", + "type": "uint256" + }, + { + "components": [ + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct AdditionalRecipient[]", + "name": "additionalRecipients", + "type": "tuple[]" + }, + { + "internalType": "bytes", + "name": "signature", + "type": "bytes" + } + ], + "internalType": "struct BasicOrderParameters", + "name": "", + "type": "tuple" + } + ], + "name": "fulfillBasicOrder_efficient_6GL6yc", + "outputs": [ + { + "internalType": "bool", + "name": "fulfilled", + "type": "bool" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "components": [ + { + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + } + ], + "internalType": "struct OfferItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct ConsiderationItem[]", + "name": "consideration", + "type": "tuple[]" + }, + { + "internalType": "enum OrderType", + "name": "orderType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "zoneHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "salt", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "totalOriginalConsiderationItems", + "type": "uint256" + } + ], + "internalType": "struct OrderParameters", + "name": "parameters", + "type": "tuple" + }, + { + "internalType": "bytes", + "name": "signature", + "type": "bytes" + } + ], + "internalType": "struct Order", + "name": "", + "type": "tuple" + }, + { + "internalType": "bytes32", + "name": "fulfillerConduitKey", + "type": "bytes32" + } + ], + "name": "fulfillOrder", + "outputs": [ + { + "internalType": "bool", + "name": "fulfilled", + "type": "bool" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "contractOfferer", + "type": "address" + } + ], + "name": "getContractOffererNonce", + "outputs": [ + { + "internalType": "uint256", + "name": "nonce", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "offerer", + "type": "address" + } + ], + "name": "getCounter", + "outputs": [ + { + "internalType": "uint256", + "name": "counter", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + } + ], + "internalType": "struct OfferItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct ConsiderationItem[]", + "name": "consideration", + "type": "tuple[]" + }, + { + "internalType": "enum OrderType", + "name": "orderType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "zoneHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "salt", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "counter", + "type": "uint256" + } + ], + "internalType": "struct OrderComponents", + "name": "", + "type": "tuple" + } + ], + "name": "getOrderHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "getOrderStatus", + "outputs": [ + { + "internalType": "bool", + "name": "isValidated", + "type": "bool" + }, + { + "internalType": "bool", + "name": "isCancelled", + "type": "bool" + }, + { + "internalType": "uint256", + "name": "totalFilled", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "totalSize", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "incrementCounter", + "outputs": [ + { + "internalType": "uint256", + "name": "newCounter", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "information", + "outputs": [ + { + "internalType": "string", + "name": "version", + "type": "string" + }, + { + "internalType": "bytes32", + "name": "domainSeparator", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "conduitController", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "components": [ + { + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + } + ], + "internalType": "struct OfferItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct ConsiderationItem[]", + "name": "consideration", + "type": "tuple[]" + }, + { + "internalType": "enum OrderType", + "name": "orderType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "zoneHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "salt", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "totalOriginalConsiderationItems", + "type": "uint256" + } + ], + "internalType": "struct OrderParameters", + "name": "parameters", + "type": "tuple" + }, + { + "internalType": "uint120", + "name": "numerator", + "type": "uint120" + }, + { + "internalType": "uint120", + "name": "denominator", + "type": "uint120" + }, + { + "internalType": "bytes", + "name": "signature", + "type": "bytes" + }, + { + "internalType": "bytes", + "name": "extraData", + "type": "bytes" + } + ], + "internalType": "struct AdvancedOrder[]", + "name": "", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "enum Side", + "name": "side", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "index", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "bytes32[]", + "name": "criteriaProof", + "type": "bytes32[]" + } + ], + "internalType": "struct CriteriaResolver[]", + "name": "", + "type": "tuple[]" + }, + { + "components": [ + { + "components": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "itemIndex", + "type": "uint256" + } + ], + "internalType": "struct FulfillmentComponent[]", + "name": "offerComponents", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "itemIndex", + "type": "uint256" + } + ], + "internalType": "struct FulfillmentComponent[]", + "name": "considerationComponents", + "type": "tuple[]" + } + ], + "internalType": "struct Fulfillment[]", + "name": "", + "type": "tuple[]" + }, + { + "internalType": "address", + "name": "recipient", + "type": "address" + } + ], + "name": "matchAdvancedOrders", + "outputs": [ + { + "components": [ + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct ReceivedItem", + "name": "item", + "type": "tuple" + }, + { + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + } + ], + "internalType": "struct Execution[]", + "name": "", + "type": "tuple[]" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "components": [ + { + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + } + ], + "internalType": "struct OfferItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct ConsiderationItem[]", + "name": "consideration", + "type": "tuple[]" + }, + { + "internalType": "enum OrderType", + "name": "orderType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "zoneHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "salt", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "totalOriginalConsiderationItems", + "type": "uint256" + } + ], + "internalType": "struct OrderParameters", + "name": "parameters", + "type": "tuple" + }, + { + "internalType": "bytes", + "name": "signature", + "type": "bytes" + } + ], + "internalType": "struct Order[]", + "name": "", + "type": "tuple[]" + }, + { + "components": [ + { + "components": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "itemIndex", + "type": "uint256" + } + ], + "internalType": "struct FulfillmentComponent[]", + "name": "offerComponents", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "itemIndex", + "type": "uint256" + } + ], + "internalType": "struct FulfillmentComponent[]", + "name": "considerationComponents", + "type": "tuple[]" + } + ], + "internalType": "struct Fulfillment[]", + "name": "", + "type": "tuple[]" + } + ], + "name": "matchOrders", + "outputs": [ + { + "components": [ + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct ReceivedItem", + "name": "item", + "type": "tuple" + }, + { + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + } + ], + "internalType": "struct Execution[]", + "name": "", + "type": "tuple[]" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [], + "name": "name", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "components": [ + { + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + } + ], + "internalType": "struct OfferItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct ConsiderationItem[]", + "name": "consideration", + "type": "tuple[]" + }, + { + "internalType": "enum OrderType", + "name": "orderType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "zoneHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "salt", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "totalOriginalConsiderationItems", + "type": "uint256" + } + ], + "internalType": "struct OrderParameters", + "name": "parameters", + "type": "tuple" + }, + { + "internalType": "bytes", + "name": "signature", + "type": "bytes" + } + ], + "internalType": "struct Order[]", + "name": "", + "type": "tuple[]" + } + ], + "name": "validate", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "stateMutability": "payable", + "type": "receive" + } + ], + "bytecode": "0x61020060405234801562000011575f80fd5b50604051620061953803806200619583398101604081905262000034916200031f565b8080808080808080806200004762000177565b610120526101005260e05260c081905260a082815246610140819052604080515f9485526020879052948152606091825230608090815292842085825293909152939052610160526001600160a01b038316610180819052630a96ad3960e01b825282519092630a96ad3992600480820193918290030181865afa158015620000d2573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620000f891906200034e565b506101a052505f90506200010b620002a4565b90506001600160a01b0381166200013557604051632aea588760e01b815260040160405180910390fd5b5f6200014182620002bd565b8015156101c0526001600160a01b0383166101e0529050806200016757600163929eee14555b50505050505050505050620003ec565b5f8080808080620001a860408051808201909152600d81526c21b7b739b4b232b930ba34b7b760991b602082015290565b8051906020012095506040518060400160405280600381526020016218971b60e91b8152508051906020012094505f6040518060a00160405280606a81526020016200612b606a913990505f6040518060c001604052806084815260200162005f816084913990505f60405180610100016040528060d481526020016200605760d491399050604051806080016040528060528152602001620060056052913980519060200120965082805190602001209550818051906020012094505f8183856040516020016200027d93929190620003a0565b60405160208183030381529060405290508080519060200120945050505050909192939495565b5f696002601e613d5c3d52f35f52600a60165ff0905090565b5f816001600160a01b0316600a5a620002d79190620003cc565b6040515f8181818686fa925050503d805f811462000311576040519150601f19603f3d011682016040523d82523d5f602084013e62000316565b606091505b50909392505050565b5f6020828403121562000330575f80fd5b81516001600160a01b038116811462000347575f80fd5b9392505050565b5f806040838503121562000360575f80fd5b505080516020909101519092909150565b5f81515f5b8181101562000392576020818501810151868301520162000376565b505f93019283525090919050565b5f620003c3620003bc620003b5848862000371565b8662000371565b8462000371565b95945050505050565b5f82620003e757634e487b7160e01b5f52601260045260245ffd5b500490565b60805160a05160c05160e05161010051610120516101405161016051610180516101a0516101c0516101e051615ad9620004a85f395f61047601525f818161036d0152818161042b01528181611a6601528181611ab901526124d301525f61306f01525f81816112b4015261303f01525f612f1901525f612e6101525f8181610c24015261164f01525f8181610bb3015261149801525f8181610b4d01526115e101525f612e9101525f612eda01525f612eb60152615ad95ff3fe608060405260043610610103575f3560e01c8063a900866b11610092578063f07ec37311610062578063f07ec373146102f7578063f2d12b1214610316578063f47b774014610329578063fb0f3ee114610116578063fd9f1e101461034c575f80fd5b8063a900866b1461028a578063b3a34c4c146102be578063e7acab24146102d1578063ed98a574146102e4575f80fd5b80637423eb3c116100d85780637423eb3c146101f757806379df72bd1461020b57806387201b411461022a578063881477321461024b578063a81744041461026a575f80fd5b801561011657806306fdde031461013e57806346423aa71461015f5780635b34b966146101d5575f80fd5b366101125761011061036b565b005b5f80fd5b61012961012436600461511b565b6103f9565b60405190151581526020015b60405180910390f35b348015610149575f80fd5b50610152610408565b6040516101359190615195565b34801561016a575f80fd5b506101b36101793660046151a7565b5f9081526001602052604090205460ff808216926101008304909116916001600160781b03620100008204811692600160881b9092041690565b6040805194151585529215156020850152918301526060820152608001610135565b3480156101e0575f80fd5b506101e9610417565b604051908152602001610135565b348015610202575f80fd5b50610110610420565b348015610216575f80fd5b506101e96102253660046151be565b6104c1565b61023d610238366004615252565b6104f8565b6040516101359291906153f6565b348015610256575f80fd5b50610129610265366004615445565b610571565b61027d610278366004615483565b61058f565b60405161013591906154e9565b348015610295575f80fd5b506101e96102a43660046154fb565b6001600160a01b03165f9081526002602052604090205490565b6101296102cc366004615514565b61062a565b6101296102df366004615559565b6106a3565b61023d6102f23660046155dd565b6106e1565b348015610302575f80fd5b506101e96103113660046154fb565b610784565b61027d61032436600461567d565b6107a1565b348015610334575f80fd5b5061033d6107ea565b6040516101359392919061571f565b348015610357575f80fd5b50610129610366366004615445565b610801565b7f000000000000000000000000000000000000000000000000000000000000000080156103b357600263929eee145c146103b05763a61be9f05f52346020526024601cfd5b50565b63929eee1454806103e057600263929eee145c146103dc5763a61be9f05f52346020526024601cfd5b5050565b600381146103dc5763a61be9f05f52346020526024601cfd5b5f61040261080c565b92915050565b60606104126109c0565b905090565b5f6104126109de565b63929eee14546001147f000000000000000000000000000000000000000000000000000000000000000080610453575080155b1561047157604051630f45b98b60e41b815260040160405180910390fd5b61049a7f0000000000000000000000000000000000000000000000000000000000000000610a4b565b6104b7576040516370a4078f60e01b815260040160405180910390fd5b5f63929eee145550565b5f806104cd6004610aa9565b90506104f16104e282610ab95b63ffffffff16565b610140830135610b36565b3590565b9392505050565b60608061055d61051361050b6004610aa9565b610c7a6104da565b61052a61052260046020610ce2565b610d006104da565b61054161053960046040610ce2565b610d586104da565b61055061053960046060610ce2565b89338a15028a0189610db0565b915091509b509b9950505050505050505050565b5f6104f161058a6105826004610aa9565b610dea6104da565b610e42565b606061061f6105a96105a16004610aa9565b610f636104da565b604080515f8082526020820190925290610601565b6105ee6040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816105be5790505b5061061961061160046020610ce2565b610fbb6104da565b33611013565b90505b949350505050565b5f6104f161064361063b6004610aa9565b6110516104da565b604080515f808252602082019092529061069b565b6106886040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816106585790505b5084336110c7565b5f6106d76106bc6106b46004610aa9565b6112466104da565b6106cb61052260046020610ce2565b853386150286016110c7565b9695505050505050565b6060806107736106f46105a16004610aa9565b604080515f808252602082019092529061074c565b6107396040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816107095790505b5061075c61053960046020610ce2565b61076b61053960046040610ce2565b883389610db0565b915091509850989650505050505050565b6001600160a01b0381165f90815260208190526040812054610402565b60606107dc6107b361050b6004610aa9565b6107c261052260046020610ce2565b6107d161061160046040610ce2565b338615028601611013565b90505b979650505050505050565b60605f806107f66112a2565b925092509250909192565b5f6104f183836112ee565b5f61012435600281901c90600316600182118334158214806108315761083134611429565b506003841160a0810260240135906502030203010160d01b861a905f630101020360d01b881a610864888289888861143a565b9096509150506101c4600583901b01355f8760058111156108875761088761532f565b036108bc5760443560243517156108a557636ab37ce75f526004601cfd5b6108af8482611757565b6108b761180f565b61099d565b6040805160208082528183019092525f9160208201818036833701905050905060028a60058111156108f0576108f061532f565b036109135761090e60c4356084353360e435610104355b878761188f565b610988565b60038a60058111156109275761092761532f565b036109455761090e60c4356084353360e435610104355b87876118da565b60048a60058111156109595761095961532f565b036109735761090e60243533608435604435606435610907565b6109886024353360843560443560643561093e565b6109928482611910565b61099b816119ca565b505b6109a88689846119ee565b6109b0611a64565b6001995050505050505050505090565b6060602080526d0d436f6e73696465726174696f6e604d5260606020f35b5f6109e7611ab7565b600143034060801c335f525f60205260405f208054820192508281555050336001600160a01b03167f721c20121297512b72821b97f5326877ea8ecf4bb9948fea5bfcb6453074d37f82604051610a4091815260200190565b60405180910390a290565b5f816001600160a01b0316600a5a610a639190615779565b6040515f8181818686fa925050503d805f8114610a9b576040519150601f19603f3d011682016040523d82523d5f602084013e610aa0565b606091505b50909392505050565b5f813563ffffffff168201610402565b5f610acc61016060408051918201905290565b9050610adb8282610140611b2e565b610af8610af1610aec846040610ce2565b611b37565b6040830152565b5f610b0c610b07846060610ce2565b611b8a565b9050610b19816060840152565b610b2c610b24825190565b610140840152565b50919050565b0190565b610140820151604080519084015180515f939284927f000000000000000000000000000000000000000000000000000000000000000092602090910190845b81811015610ba2578251601f1901805186825260c082208652905260209384019390920191600101610b75565b508060051b6040512094505050505f7f0000000000000000000000000000000000000000000000000000000000000000915060405160206060890151015f5b86811015610c0e578151601f1901805186825260e082208552905260209283019290910190600101610be1565b505060408051600587901b9020601f198a0180517f00000000000000000000000000000000000000000000000000000000000000008252928b01805197815260608c018051938152610140909c019a8b5261018082209390915295909552939097525050925250919050565b5f8063ffffffff8335169050600581901b610c9e6020820160408051918201905290565b828152925060208381019085015f5b83811015610cd857610cd0610cca610cc58484610ce2565b611246565b82850152565b602001610cad565b5050505050919050565b5f6104f163ffffffff610cfa6104ed8686610b328516565b16840190565b5f8063ffffffff8335169050600581901b610d246020820160408051918201905290565b828152925060208381019085015f5b83811015610cd857610d50610cca610d4b8484610ce2565b611bcd565b602001610d33565b5f8063ffffffff8335169050600581901b610d7c6020820160408051918201905290565b828152925060208381019085015f5b83811015610cd857610da8610cca610da38484610ce2565b611c0f565b602001610d8b565b60608036155f80610dc48c8c85898b611c52565b91509150610dd78c8b8b8b8b878761202f565b9450945050505097509795505050505050565b5f8063ffffffff8335169050600581901b610e0e6020820160408051918201905290565b828152925060208381019085015f5b83811015610cd857610e3a610cca610e358484610ce2565b612161565b602001610e1d565b5f610e4b611ab7565b5f805f80855190505f5b81811015610f56575f878281518110610e7057610e70615798565b60209081029190910101518051909150600481608001516004811115610e9857610e9861532f565b03610ea4575050610f4e565b80519450610eb1816121a4565b5f8181526001602052604081209850909650610ed390879089903615156121dd565b50865460ff16610f4b5780610140015181606001515114610ef657610ef661226b565b610f0585878460200151612278565b865460ff191660011787556040517ff280791efe782edcf06ce15c8f4dff17601db3b88eb3805a0db7d77faf757f0490610f42908890849061589b565b60405180910390a15b50505b600101610e55565b5060019695505050505050565b5f8063ffffffff8335169050600581901b610f876020820160408051918201905290565b828152925060208381019085015f5b83811015610cd857610fb3610cca610fae8484610ce2565b611051565b602001610f96565b5f8063ffffffff8335169050600581901b610fdf6020820160408051918201905290565b828152925060208381019085015f5b83811015610cd85761100b610cca6110068484610ce2565b612314565b602001610fee565b60605f36151590505f8061102b8888858b5189611c52565b9150915061103882612347565b6110458887848885612386565b98975050505050505050565b5f61106461020060408051918201905290565b60a0810180825290915061108061107a84610aa9565b82612459565b61108c60016020840152565b61109860016040840152565b6110b56110ae6110a9856020610ce2565b61248f565b6060840152565b610b2c6110c06124b7565b6080840152565b835160808101515f91906110ee60048260048111156110e8576110e861532f565b146124d1565b5f80806110fd8a361515612572565b60408051600180825281830190925293965091945092505f9190816020015b61112461502d565b81526020019060019003908161111c5790505090508a815f8151811061114c5761114c615798565b6020026020010181905250611161818b61276a565b61116d8684848b6128e3565b6040805160018082528183019092525f9160208083019080368337509192505050361515600487818111156111a4576111a461532f565b146111c7576111b58d83885f6129e3565b6111c186868684612a35565b506111d9565b6111d6888e6080015183612b39565b95505b6111e4888c8c612c09565b85825f815181106111f7576111f7615798565b60200260200101818152505061120e8d8388612d2c565b61122b86895f01518a602001518d8c604001518d60600151612df9565b611233611a64565b5060019c9b505050505050505050505050565b5f61125961020060408051918201905290565b905061126d60208381019083016040611b2e565b60a0810180825261128061107a84610aa9565b6112916110ae6110a9856060610ce2565b610b2c6110c06110a9856080610ce2565b60605f805f6112af612e5e565b90505f7f0000000000000000000000000000000000000000000000000000000000000000905060605f5281602052806040526303312e3660635260a05ff35b5f6112f7611ab7565b5f8083815b8181101561140e573687878381811061131757611317615798565b9050602002810190611329919061597d565b90505f61133960208301836154fb565b90505f61134c60408401602085016154fb565b90505f61135f60a085016080860161599c565b905081331483331417156004821417871796505f6113936113886113808790565b610ab96104da565b866101400135610b36565b5f8181526001602052604090819020805461ffff19166101001781559051909a509091506001600160a01b0380851691908616907f6bacc01dbe442496068f7d234edd811f1a5f833243e0aec824f86ab861f3c90d906113f69085815260200190565b60405180910390a385600101955050505050506112fc565b5050801561141e5761141e612f3b565b506001949350505050565b63a61be9f05f52806020526024601cfd5b5f806114455f6124d1565b61144d612f48565b42610164351115426101443511171561147b576321ccfeb75f5261014435602052610164356040526044601cfd5b610204356102643510156114965763466aa6165f526004601cfd5b7f0000000000000000000000000000000000000000000000000000000000000000608081905260a08790526060602460c037604060646101203760e060802061016052610264356102043560051b6102a0016001820181526020810190508881526080602460208301376101608860a0528760c0525f60e0525f6102043593505f5b8481101561156c578060400261028401602081610100376040816101203760208101358317925060208401935060e0608020845260a0850194508b85528a6020860152604081606087013750600101611518565b6001850160051b610160206060526102643594505b848110156115bc578060400261028401925060a0840193508a8452896020850152604083606086013760208301359190911790600101611581565b506001600160a01b038111156115d9576339f3e3fd5f526004601cfd5b50505050505f7f00000000000000000000000000000000000000000000000000000000000000009050806080528360a052606060c460c0376020610104610120375060c06080205f9081526020812060e0526084359061164d826001600160a01b03165f9081526020819052604090205490565b7f000000000000000000000000000000000000000000000000000000000000000060808190529091506040608460a03760605161010052896101205260a061014461014037816101e05261018060802094505050506102043560051b61018001828152336020820152608060408201526101206060820152600160808201528360a0820152606060c460c083013760a061026435026101e00160a4356084357f9d9af8e38d66c62e2c12f0225249fd9d721c54b83f48d9352c97c6cacdcb6f318385a35f60605260608101820160405250505f61172983612f93565b90506117358389612fe4565b7101000000000000000000000000000001000182559150509550959350505050565b60c43560843560e4356101043584156117bf575f6040519050632671a55160e11b815260206004820152600160248201528660448201528460648201528360848201523360a48201528260c48201528160e48201526117b98682610104613039565b50611807565b60028660058111156117d3576117d361532f565b036117fa57806001146117e9576117e9816130f0565b6117f584843385613101565b611807565b61180784843385856131b6565b505050505050565b346064356084356102643560061b5f80805b838110156118605761028481013592506102a48101359150868311156118495761184961328d565b8287039650611858828461329a565b604001611821565b50858511156118715761187161328d565b61187b848661329a565b84861115611807576118073386880361329a565b61189981836132d0565b816118c057826001146118af576118af836130f0565b6118bb87878787613101565b6118d1565b6118d1828260028a8a8a8a8a6132ee565b50505050505050565b6118e38361336d565b6118ed81836132d0565b816118ff576118bb87878787876131b6565b6118d1828260038a8a8a8a8a6132ee565b5f805f805f861561193557505060843592503391505060c4356101043560e43561194a565b50339350506084359150506024356064356044355b80156119585761195861337f565b50600586901b6101e403356102643560061b5f80805b838110156119af5761028481013592506102a481013591508a156119995761199683876159ba565b95505b6119a7878a8486898f61338c565b60400161196e565b506119be86898988888e61338c565b50505050505050505050565b60408151146119d65750565b5f6119e2826020015190565b90506103dc81836133c1565b611a0a8260a4355b331415600182116004909210919091161690565b15611a5f57805f611a19825190565b9050608081901c63ffffffff8216611a3a84826317b1f94282526001905250565b601c840163fb5014fc6060529350611a5660a4358886856133e5565b5f6060526118d1565b505050565b7f00000000000000000000000000000000000000000000000000000000000000008015611a95575f63929eee145d50565b63929eee145480611aab575f63929eee145d5050565b50600163929eee145550565b7f00000000000000000000000000000000000000000000000000000000000000008015611af65763929eee145c156103b057637fa8a9875f526004601cfd5b63929eee145480611b195763929eee145c156103dc57637fa8a9875f526004601cfd5b600181146103dc57637fa8a9875f526004601cfd5b80838337505050565b5f63ffffffff8235166040519150808252602082018160051b81018060a084026020870183378293505b81841015611b7a5780845260209093019260a001611b61565b60405250919392505050565b9052565b5f63ffffffff8235166040519150808252602082018160051b81018060c084026020870183378293505b81841015611b7a5780845260209093019260c001611bb4565b5f611bdf60a060408051918201905290565b9050611bed82826080611b2e565b611c0a611c03611bfe846080610ce2565b61342d565b6080830152565b919050565b5f63ffffffff8235166040519150808252602082018160051b8101808360061b6020870183378293505b81841015611b7a57808452602090930192604001611c39565b60605f611c5f60016124d1565b86515f90600160e61b82351690806001600160401b03811115611c8457611c84615751565b604051908082528060200260200182016040528015611cad578160200160208202803683370190505b50945060010160051b91505f60205b83811015611eae575f611cd28c83613cd46104da565b90505f805f611ce1848e612572565b6001600160781b0382166020880152919450925090505f829003611d085750505050611ea6565b6001600160781b0381166040808601919091528a8601849052845160a081015160c0820151608083015192909301518051600184119d909d179c600490931099509092915f5b81811015611df0575f838281518110611d6957611d69615798565b602002602001015190508b8151108d179c505f611d8b89898460800151613464565b90508160800151826060015103611da85760608201819052611dbd565b611db789898460600151613464565b60608301525b5f611dd68360600151838a8a611dd1361590565b6134a0565b606084018190526080909301929092525050600101611d4e565b5087516060015180515f5b81811015611e9a575f838281518110611e1657611e16615798565b602002602001015190505f611e308b8b8460800151613464565b90508160800151826060015103611e4d5760608201819052611e62565b611e5c8b8b8460600151613464565b60608301525b5f611e778360600151838c8c611dd136151590565b6060840181905260a0840180516080909501949094529092525050600101611dfb565b50505050505050505050505b602001611cbc565b50506001600160e61b018103611ec657611ec66134f3565b50611ed1888861276a565b5f8060205b8381101561201457858101519250821561200c575f611ef88c83613cd46104da565b9050885f03611f13575f87830181905260209091015261200c565b60048151608001516004811115611f2c57611f2c61532f565b14611faf57611f458188866001600587901c038e613500565b611f5b575f87830181905260209091015261200c565b602080820151604083015183516080810151930151611f949388936001600160781b039081169316913314156001909111168e17612a35565b611faa575f87830181905260209091015261200c565b611fda565b611fc1815f015182608001518c612b39565b878301819052935083611fda575f60209091015261200c565b886001900398505f815f0151905061200585825f015183602001518c85604001518660600151612df9565b6001935050505b602001611ed6565b50806120225761202261355b565b5050509550959350505050565b85518551606091829161204281836159cd565b6001600160401b0381111561205957612059615751565b60405190808252806020026020018201604052801561209257816020015b61207f615060565b8152602001906001900390816120775790505b5092505f5b828110156120ea576120c58c5f8d84815181106120b6576120b6615798565b60200260200101518c8c613568565b8482815181106120d7576120d7615798565b6020908102919091010152600101612097565b505f5b818110156121435761211c8c60018c848151811061210d5761210d615798565b60200260200101518c5f613568565b848483018151811061213057612130615798565b60209081029190910101526001016120ed565b506121518b84888a896135b7565b9350505097509795505050505050565b5f6121726040808051918201905290565b905061218c61218861218384610aa9565b6138a0565b8252565b611c0a61219d6110a9846020610ce2565b6020830152565b5f6121b98260600151518361014001516138bf565b81516001600160a01b03165f90815260208190526040902054610402908390610b36565b82545f90610100900460ff16156122045781156121fd576121fd856138cf565b505f610622565b83546201000090046001600160781b0316801561225f57831561222f5761222a866138e0565b61225f565b8454600160881b90046001600160781b0316811061225f57821561225657612256866138f1565b5f915050610622565b50600195945050505050565b632165628a5f526004601cfd5b33831480156122875750505050565b5f612290612e5e565b61190160f01b5f9081526002828152602287815260428320908390528651939450929190601f601d840116106102e260621984011016156122fa576122d58688613902565b61190160f01b5f908152600286905260228281526042822091905290975090506122fd565b50815b61230a888285858a613998565b5050505050505050565b5f6123256040808051918201905290565b9050612336612188610da384610aa9565b611c0a61219d610da3846020610ce2565b80518060051b6040019050602082038051602082527f4b9f2d36e1b4c93de62cc077b00b1a91d84b6c31b4a14e012718dcca230689e78383a190525050565b8351606090806001600160401b038111156123a3576123a3615751565b6040519080825280602002602001820160405280156123dc57816020015b6123c9615060565b8152602001906001900390816123c15790505b5091505f5b8181101561243f575f8782815181106123fc576123fc615798565b6020026020010151905061241989825f0151836020015185613ae1565b84838151811061242b5761242b615798565b6020908102919091010152506001016123e1565b5061244d87838787876135b7565b50505b95945050505050565b6124668282610160611b2e565b612477610af1610aec846040610ce2565b6103dc612488610b07846060610ce2565b6060830152565b6040518135601f0163ffffffe01660200180838337913563ffffffff16815290810160405290565b5f6124c9602060408051918201905290565b5f8152905090565b7f0000000000000000000000000000000000000000000000000000000000000000801561251e5763929eee145c1561251057637fa8a9875f526004601cfd5b8160010163929eee145d5050565b63929eee1454806125505763929eee145c1561254157637fa8a9875f526004601cfd5b8260010163929eee145d505050565b6001811461256557637fa8a9875f526004601cfd5b505060020163929eee1455565b5f805f80855f0151905061258f8160a001518260c0015187613c86565b6125a257505f9250829150819050612763565b602086015160408701516001600160781b0391821694501691505f6004826080015160048111156125d5576125d561532f565b0361260257600183850218905080156125f0576125f0613ca9565b50600193508392508291506127639050565b50818311831517801561261757612617613ca9565b608082015160011615848411161561263157612631613cb6565b61263a826121a4565b5f81815260016020526040812091965061265890879083908a6121dd565b61266b57505f9350839250612763915050565b805460ff1661268657612686835f0151878a60600151612278565b8054608881901c8061269a5786915061275d565b6001600160781b038260101c169150600186036126be57818103965080955061275d565b8086036126d95790860185810386821102909603959061275d565b80860296810291909502810186810387821102918290039695919003906001600160781b0386111561275d5761271d565b5f5b8215610b2c5790829006919061270c565b61273061272a878461270a565b8861270a565b8015019687900496909504946001600160781b0386111561275d57634e487b715f5260116020526024601cfd5b50505050505b9250925092565b805182515f5b82811015612859575f84828151811061278b5761278b615798565b602002602001015190505f815f015190508381106127b0576127b08260200151613cc3565b5f8782815181106127c3576127c3615798565b6020026020010151905080602001516001600160781b03165f036127e957505050612851565b80516040808201519085015163bfb3f8ce5f876020015160018111156128115761281161532f565b1461282d575f612822856060613cd4565b9350636088d7de9150505b8251821061283e57805f526004601cfd5b612849838389613cdf565b505050505050505b600101612770565b505f5b818110156128dc575f85828151811061287757612877615798565b6020026020010151905080602001516001600160781b03165f0361289b57506128d4565b8051608081015160608201516128b89085908363a8930e9a613d92565b6128d08483604001518363d69293326104da613d9290565b5050505b60010161285c565b5050505050565b60a084015160c08501516040860151515f805b82811015612960575f8960400151828151811061291557612915615798565b602002602001015190505f815f01519050801584179350505f61294c826060015183608001518c8c8b8b612947361590565b613df9565b6060830152506080018690526001016128f6565b506080880151600481108216801561297a5761297a6134f3565b505050506060860151515f5b8181101561230a575f886060015182815181106129a5576129a5615798565b602002602001015190505f6129ca826060015183608001518b8b8a8a61294736151590565b60608301525060a0810151608090910152600101612986565b8351608081015160208201513314156001821160049092109190911616156128dc575f80612a18858489608001518988613e34565b63fb5014fc6060529092509050611a5683602001518684846133e5565b5f848152600160205260408120805482908290608881901c80612a5a57889150612ae2565b6001600160781b038260101c169150808803612a7e57908801878111935090612ae2565b97880297808802979190910288018781119350906001600160781b038083119089111715612ae257612ab0888361270a565b8015019788900497909104906001600160781b038083119089111715612ae257634e487b715f5260116020526024601cfd5b508215612b1b578515612b0f576040516310fda3e160e01b8152600481018a905260240160405180910390fd5b5f945050505050610622565b8660881b8160101b1760011782556001945050505050949350505050565b5f83610140015184606001515114612b5357612b5361226b565b83515f8080612b628888613fb2565b915091505f8082845f885af16001600160a01b0385165f908152600260205260409020805460018101909155606086901b189550925082612bc1578515612bb457612bab61405c565b612bb4856140a3565b505f93506104f192505050565b505050505f805f612bde876040015188606001516104da6140b490565b925092509250825f14612bf457612bf4846140a3565b60408701919091526060860152509392505050565b6040805160208082528183019092525f916020820181803683375050506040850151519091505f5b81811015612c81575f86604001518281518110612c5057612c50615798565b60200260200101519050846080820152612c7881885f0151896101200151876104da61432d90565b50600101612c31565b50506060840151515f90815b81811015612d0f575f87606001518281518110612cac57612cac615798565b602002602001015190505f6005811115612cc857612cc861532f565b81516005811115612cdb57612cdb61532f565b03612cf7574793508381606001511115612cf757612cf761328d565b612d068133898861432d6104da565b50600101612c8d565b5050612d1a826119ca565b504780156128dc576128dc338261329a565b8251608081015160208201515f92839283928392916004811060019091111633909114151615612d8e57612d6f612d6961010083015190565b5190565b88614422565b9093509150612d8060208201612d65565b945063fb5014fc9350612dda565b600481608001516004811115612da657612da661532f565b0361230a57805194505f8560601b9050612dc787838b608001518b85614463565b639397928596509094509250612dda9050565b612de46060859052565b612df0858785856133e5565b5f60605261230a565b60608290506060829050856001600160a01b0316876001600160a01b03167f9d9af8e38d66c62e2c12f0225249fd9d721c54b83f48d9352c97c6cacdcb6f318a888686604051612e4c9493929190615a19565b60405180910390a35050505050505050565b5f7f00000000000000000000000000000000000000000000000000000000000000004614612f16575060408051608080517f00000000000000000000000000000000000000000000000000000000000000005f9081527f00000000000000000000000000000000000000000000000000000000000000006020527f0000000000000000000000000000000000000000000000000000000000000000855246606090815230845260a08220949095529093529190915290565b507f000000000000000000000000000000000000000000000000000000000000000090565b63fed398fc5f526004601cfd5b600435602014610224356102401416610244356102606102643560061b01141660186101243510600160a01b60843560a4351760c4356024351717101616806103b0576103b061452e565b5f8181526001602081905260409091209060843590612fb890849084903615156121dd565b50815460ff16610b2c57610b2c8184612fdf602463ffffffff61024435160161248f6104da565b612278565b5f612ff18260a4356119f6565b15610402575f805f6130028661453b565b63fb5014fc6060529194509250905061302260a43587601c8601856133e5565b5f60605260209190910160801b1781529392505050565b604080517f000000000000000000000000000000000000000000000000000000000000000060ff60a01b175f90815260208690527f000000000000000000000000000000000000000000000000000000000000000083526055600b20919092526001600160a01b031690505f805f805260205f85875f875af191505f519050816130ce576130c561405c565b6130ce836145f3565b6001600160e01b03198116632671a55160e11b14611807576118078684614604565b6369f958275f52806020526024601cfd5b833b61311857635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af1806131a8573d1561318657601f3d0160051c8260051c816003028183111561316f578183036003028280028480020360091c01015b5a602082011015613182573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b6131cd57635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af180613272573d1561325157601f3d0160051c8560051c816003028183111561323a578183036003028280028480020360091c01015b5a60208201101561324d573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b638ffff9805f526004601cfd5b6132a38161336d565b5f805f805f85875af1905080611a5f576132bb61405c565b63bc806b965f5282602052816040526044601cfd5b5f6132dc836020015190565b9050818114611a5f57611a5f836119ca565b5f60208851036133285750604080885260208089018a9052632671a55160e11b918901919091526044880152600160648801819052613337565b50606487018051600101908190525b603c60c082028901038781528660208201528560408201528460608201528360808201528260a082015250505050505050505050565b806103b0576391b3e5145f526004601cfd5b636ab37ce75f526004601cfd5b6133958361336d565b61339f81836132d0565b816133b0576117f586868686614619565b611807828260018989895f8a6132ee565b6064810151604082019060c0026044016133dc848383613039565b50506020905250565b5f806001600160e01b03198451165f805260205f85875f8b5af15f519093501490508161341e5761341461405c565b846080526024607cfd5b8061180757846080526024607cfd5b5f8063ffffffff83351690506001810160051b6134508160408051918201905290565b925061345d848483611b2e565b5050919050565b5f8284036134735750806104f1565b82848309156134895763c63cf0895f526004601cfd5b5f6134948584615ab5565b93909304949350505050565b5f8486146134e957838303428590038082035f6134bd838a615ab5565b6134c7838c615ab5565b6134d191906159cd565b90508584878303040181151502945050505050612450565b5092949350505050565b6312d3f5a35f526004601cfd5b8451608081015160208201515f92916004811060019091111633909114151615610f56575f8061353787848b608001518b8a613e34565b91509150613551836020015188848463fb5014fc8a61470d565b9350505050612450565b63d5da9a1b5f526004601cfd5b613570615060565b83515f03613581576135818561477a565b5f8560018111156135945761359461532f565b036135aa576135a58685838561478b565b612450565b61245086858333876148fb565b84516060905f816001600160401b038111156135d5576135d5615751565b6040519080825280602002602001820160405280156135fe578160200160208202803683370190505b506040805160208082528183019092529192505f9190602082018180368337505089519192505060010160051b60205b8181101561368d575f6136448b83613cd46104da565b8051606081015191925090801561368257478111825115161561366e57638ffff9805f526004601cfd5b61368282846020015185604001518961432d565b50505060200161362e565b50505f5b838110156137f9575f8a82815181106136ac576136ac615798565b6020026020010151905080602001516001600160781b03165f036136f3575f8483815181106136dd576136dd615798565b91151560209283029190910190910152506137f1565b600184838151811061370757613707615798565b911515602092830291909101909101528051604081015180515f5b8181101561378c575f83828151811061373d5761373d615798565b6020026020010151905080606001515f1461377957608081018051908e905285516101208701516137739184918c61432d6104da565b60808201525b6080810151606090910152600101613722565b505050606081015180515f5b818110156137eb575f8382815181106137b3576137b3615798565b602002602001015190505f81606001519050805f146137d7576137d7888483614a32565b5060a0810151606090910152600101613798565b50505050505b600101613691565b50613803816119ca565b47801561381457613814338261329a565b851561388a575f5b848110156138885783818151811061383657613836615798565b602002602001015115613880576138808b828151811061385857613858615798565b60200260200101518a8b848151811061387357613873615798565b6020026020010151612d2c565b60010161381c565b505b613892611a64565b509098975050505050505050565b5f6138b361016060408051918201905290565b9050611c0a8282612459565b808210156103dc576103dc614a4b565b631a5155745f52806020526024601cfd5b63ee9e0e635f52806020526024601cfd5b6310fda3e15f52806020526024601cfd5b5f805f84516001811660410380820360051c9250808752806020018701915050805160e81c6003820191506001811660051b868152825160208218525060015b8381101561396e5760405f2082821c60051b602090811691825293840180519190941852600101613942565b50505060405f2091505f61398182614a58565b5f9081526020939093525050604090209392505050565b5f805f528151602083038051826041035f600182116139fb57604087015160608801515f1a83156139dc57601b8260ff1c0190506001600160ff1b03821660408a01525b88528a855260205f60808760015afa508385528588526040880152505f515b8a148a1515169450849050613ac457858552604082526044850380516040870351630b135d3f60e11b835289604089035260205f60648b01858f5afa96508615613ab857630b135d3f60e11b5f5114613ab8578b3b15613a6257634f7fb80d5f526004601cfd5b6001866041031115613a7b57638baa579f5f526004601cfd5b64010100000060608901515f1a1a15604187141615613aab57631f003d0a5f5260608801515f1a6020526024601cfd5b63815e1d645f526004601cfd5b8385529152603f198601525b5050508061180757613ad461405c565b634f7fb80d5f526004601cfd5b613ae9615060565b8251158451151715613b02576398e9db6e5f526004601cfd5b613b0a615060565b613b178685835f806148fb565b805160608101515f03613b2c57509050610622565b613b3c878785846080015161478b565b82516040828101519082015160208085015190840151855185511891181791181715613b735763bced929d5f52846020526024601cfd5b806060015182606001511115613bfa575f865f81518110613b9657613b96615798565b60200260200101519050816060015183606001510389825f015181518110613bc057613bc0615798565b60200260200101515f015160600151826020015181518110613be457613be4615798565b6020026020010151606001818152505050613c7b565b5f875f81518110613c0d57613c0d615798565b60200260200101519050826060015182606001510389825f015181518110613c3757613c37615798565b60200260200101515f015160400151826020015181518110613c5b57613c5b615798565b602002602001015160600181815250508260600151826060018181525050505b505050949350505050565b428084111590831116818015613c9a575080155b156104f1576104f18484614e67565b635a052b325f526004601cfd5b63a11b63ff5f526004601cfd5b63133c37c65f52806020526024601cfd5b5f6104f18284015190565b5f838381518110613cf257613cf2615798565b602002602001015190505f815f01519050613d0d8160031090565b613d1957613d19614e7c565b60408201518015613d3c57613d378460600151828660800151614e89565b613d4f565b60808401515115613d4f57613d4f614ed3565b6004821460030383816005811115613d6957613d6961532f565b90816005811115613d7c57613d7c61532f565b9052505050606090920151604090910152505050565b82515f5b81811015611807575f858281518110613db157613db1615798565b60209081029190910101518051604082015191925090600382116004881415821515171615613deb57855f5288602052836040526044601cfd5b505050806001019050613d96565b5f868803613e1357613e0c868689613464565b90506107df565b6107dc613e2187878b613464565b613e2c88888b613464565b8686866134a0565b5f805f613e3f614ee0565b6301e4d72a815260208082015260408101898152336060830152601c820194509091508751604082015287613e7f613e7860a083015190565b60e0840152565b613e95613e8d60c083015190565b610100840152565b613eab613ea360e083015190565b610120840152565b610140613eb9816060850152565b5f613ec5604084015190565b90505f613ed482848701614eea565b928301929050613ee5836080870152565b5f613ef1606086015190565b90505f613f0082868901614f50565b948501949050613f118560a0890152565b5f613f1e8e878a01614fb5565b959095019450613f2f8560c0890152565b8685015f613f3d8e83614fd4565b602497019687019a50613f599050613f548c8c0190565b615004565b8060408b901b60808b901b17178f610100018181525050613f838c82611b8690919063ffffffff16565b60058c8e51613f9291906159ba565b613f9d911b8b6159ba565b99505050505050505050509550959350505050565b5f8083613fbd614ee0565b639891976581523360208201908152608060408301819052601c9092019450905f613fe9604085015190565b90505f613ff882848601614eea565b928301929050614009836040860152565b5f614015606087015190565b90505f61402482868801614eea565b948501949050614035856060880152565b895f61404382898901614fb5565b9a9d96909a016004019b50949950505050505050505050565b3d156140a157601f3d0160051c60405160051c816003028183111561408e578183036003028280028480020360091c01015b5a602082011015611a5f573d5f803e3d5ffd5b565b63939792855f52806020526024601cfd5b60603d105f8080808080866141265760405f803e5f51935060205192503d60208501113d60208501118082179850505086614126576020845f3e5f51915060208360203e60205190508160071b60208501018160a0026020850101803d10823d101761ffff8486171117985050505f80525b86614158575f8061413b84602088018d614161565b9250975061414d83602087018c614241565b929092179850909550505b50505050612763565b5f806040519150825160c08602602001830160405285835260208660010160051b8085018360010160051b870161419f858b81811090829003020190565b60010160051b8a861196505b808510156141ff57828589015260808a843e6060830151955085608084015260608201518681116141dc85856142e8565b17881797505060808a01995060a08301925060a0820191506020850194506141ab565b50505b81831015614235578083870152608088823e6060810151608082015260808801975060a081019050602083019250614202565b50505050935093915050565b604051815180851190808603818710028101602060e08202850181016040528185526001928301600590811b87019390920190911b908185015b8282101561423557808287015260a088823e60206060890160a083013e606081015160608501516142b86080840151608088015180159114171590565b818311176142c684886142e8565b60a09b909b019a179690961795505060c093840193602092909201910161427b565b5f81516040830151801560038311161561430a57506040840151600119909101905b604085015181148551831460208701516020870151141616159250505092915050565b5f845160058111156143415761434161532f565b0361437e57604084015160208501516001600160a01b031617156143675761436761337f565b6143798460800151856060015161329a565b61441c565b6001845160058111156143935761439361532f565b036143c4576040840151156143aa576143aa61337f565b61437984602001518486608001518760600151868661338c565b6002845160058111156143d9576143d961532f565b036143fd57614379846020015184866080015187604001518860600151878761188f565b61441c84602001518486608001518760400151886060015187876118da565b50505050565b608082901c63ffffffff604084901c8116908085169061444a9084906317b1f94290611b8616565b601c8301925061445a8482614fd4565b50509250929050565b5f8061446d614ee0565b63f4dd92ce815287841860a0820152601c8101925060200160a0808252875f614497604083015190565b90505f6144a682858701614eea565b9384019390506144b7846020870152565b5f6144c3606085015190565b90505f6144d282878901614f50565b9586019590506144e3866040890152565b5f6144f08d888a01614fb5565b9687019690506145018760608a0152565b5f61450e8d898b01614fd4565b905080880197508760040199505050505050505050509550959350505050565b6339f3e3fd5f526004601cfd5b6301e4d72a6102043560051b6080019081525f808260208082015260408101858152336060830152601c9190910190614575608435610af1565b61458661014460e083016060611b2e565b610140614594816060840152565b6145a260a082016080840152565b61016060a06102643581029290920101906145be908290840152565b6145c85f82840152565b6020016145d68160c0840152565b5f9181019182526020820196909652939560449095019492505050565b63d13d53d45f52806020526024601cfd5b631cf99b265f5281602052806040526044601cfd5b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166146fe5780873b1515166146fe57806146ed57816146d0573d156146af57601f3d0160051c8360051c8160030281831115614698578183036003028280028480020360091c01015b5a6020820110156146ab573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b5f805f6001600160e01b03198751165f805260205f888a5f8e5af15f51909350149050816147595783614744575f925050506106d7565b61474c61405c565b845f52876020526024601cfd5b8061476b57845f52876020526024601cfd5b50600198975050505050505050565b63375c24c15f52806020526024601cfd5b5f805f85865160051b87015b808210156148a8576020820191508851825151106147b7576147b76148dc565b81515160051b60208a01015180516020845101515f6040830151602085015115815184101517156147ec575050505050614797565b8260051b60208201015191505060608101935083518901915083511589831060011b17881797508198505f84528a5193508615600181146148555760608220881860408d01516101208601511860208e0151865118171715614850576148506148dc565b61489e565b8151855260208201516020860152604082015160408601528a6080860152835160208d015261012084015160408d015260608520975060208d0192508683181561489e57865183525b5050505050614797565b5050508160608551015280156148d557600181036148cd576391b3e5145f526004601cfd5b6148d56148e9565b505061441c565b637fda72795f526004601cfd5b634e487b715f5260116020526024601cfd5b5f805f86875160051b88015b808210156149fd576020820191508151518a518110614928576149286148dc565b8060051b60208c01015190506020835101515f6060835101516020840151158151841015171561495b5750505050614907565b8260051b60208201015191505060608101925082518801915082511588831060011b17871796508197505f83528a5192508515600181146149ad5760a0822087146149a8576149a86148dc565b6149f4565b815184526020820151602085015260408201516040850152608082015160808501528a60208d01528960408d015260a08220965060208d019250858318156149f457855183525b50505050614907565b50508551606001839052508015614a2b5760018103614a23576391b3e5145f526004601cfd5b614a2b6148e9565b50506128dc565b63a5f542085f528260205281604052806060526064601cfd5b63466aa6165f526004601cfd5b5f614e5e565b5f6009821015614bb7576005821015614b14576003821015614ac7577f832c58a5b611aadcfa6a082ac9d04bace53d8278387f10040347b7e98eb5b30260018314027fbf8e29b89f29ed9b529c154a63038ffca562f8d7cd1e2545dda53a1b582dde3018610402565b7ff3e8417a785f980bdaf134fa0274a6bf891eeb8195cd94b09d2aa651046e28bc60038314027fa02eb7ff164c884e5e2c336dc85f81c6a93329d8e9adf214b32729b894de2af118610402565b6007821015614b6a577f25d02425402d882d211a7ab774c0ed6eca048c4d03d9af40132475744753b2a360058314027f1c19f71958cdd8f081b4c31f7caf5c010b29d12950be2fa1c95070dc47e30b5518610402565b7fb58d772fb09b426b9dece637f61ca9065f2b994f1464b51e9207f55f7c8f594860078314027f7ff98d9d4e55d876c5cfac10b43c04039522f3ddfb0ea9bfe70c68cfb5c7cc1418610402565b6011821015614d0f57600d821015614c6c57600b821015614c1f577f6f0ec38c21f6f583ab7f3c5413c773ffd5344c34fde1d390958e438bf667448f60098314027fd1d97d1ef5eaa37a4ee5fbf234e6f6d64eb511eb562221cd7edfbdde0848da0518610402565b7f32f4e7485d6485f9f6c255929b9905c62ba919758bbe231f231eaeecf33d810c600b8314027fbb98d87cc12922b83759626c5f07d72266da9702d19ffad6a514c73a89002f5f18610402565b600f821015614cc2577f8df51df98847160517f5b1186b4bc3f418d98b8a7f17f1292f392d79d600d79e600d8314027f6b5b04cbae4fcb1a9d78e7b2dfc51a36933d023cf6e347e03d517b472a85259018610402565b7fcc4886e37eedd9aacd6c1c2c9247197a621a71282e87a7cbc673f3736d9aa141600f8314027f1da3eed3ecef6ebaa6e5023c057ec2c75150693fd0dac5c90f4a142f9879fde818610402565b6015821015614dbb576013821015614d6e577f2d7a3ed6dab270fdb8e054b2ad525f0ce2a8b89cc76c17f0965434740f673a5560118314027fc3939feff011e53ab8c35ca3370aad54c5df1fc2938cd62543174fa6e7d8587718610402565b7f54b3212a178782f104e0d514b41a9a5c4ca9c980bf6597c3cecbf280917e202a60138314027f5a4f867d3d458dabecad65f6201ceeaba0096df2d0c491cc32e6ea4e6435001718610402565b6017821015614e11577fbb40bf8cea3a5a716e2b6eb08bbdac8ec159f82f380783db3c56904f15a43d0460158314027f3bd8cff538aba49a9c374c806d277181e9651624b3e31111bc0624574f8bca1d18610402565b7f403be09941a31d05cfc2f896505811353d45d38743288b016630cce39435476a60178314027f1d51df90cba8de7637ca3e8fe1e3511d1dc2f23487d05dbdecb781860c21ac1c18610402565b61040282614a5e565b6321ccfeb75f5281602052806040526044601cfd5b6394eb6af65f526004601cfd5b5f835f5260205f2060208301835160051b81015b80821015614ec457815180841160051b93845260209384185260405f209290910190614e9d565b5050831490508061441c5761441c5b6309bde3395f526004601cfd5b5f61041260405190565b5f825180835260208401602084018260051b82015b80831015614f3d5782518051835260208101516020840152604081015160408401526060810151606084015250602083019250608082019150614eff565b5050508060071b60200191505092915050565b5f80614f5a845190565b8084529050602084810190600583901b860181019085015b82821115614fa2575f614f848461500e565b9050614f92818360a0615017565b506020929092019160a001614f72565b60a0840260200194505050505092915050565b5f63ffffffe0603f614fc5855190565b01169050610402838383615017565b5f80614fde845190565b8084529050600581901b614ff9602086810190860183615017565b602001949350505050565b6103b06040829052565b5f610402825190565b8082828560045afa80153d15171561441c575f80fd5b6040518060a001604052806150406150a2565b81525f602082018190526040820152606080820181905260809091015290565b60408051610100810182525f606082018181526080830182905260a0830182905260c0830182905260e083018290528252602082018190529181019190915290565b6040518061016001604052805f6001600160a01b031681526020015f6001600160a01b0316815260200160608152602001606081526020015f60048111156150ec576150ec61532f565b81525f6020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b5f6020828403121561512b575f80fd5b81356001600160401b03811115615140575f80fd5b820161024081850312156104f1575f80fd5b5f81518084525f5b818110156151765760208185018101518683018201520161515a565b505f602082860101526020601f19601f83011685010191505092915050565b602081525f6104f16020830184615152565b5f602082840312156151b7575f80fd5b5035919050565b5f602082840312156151ce575f80fd5b81356001600160401b038111156151e3575f80fd5b820161016081850312156104f1575f80fd5b5f8083601f840112615205575f80fd5b5081356001600160401b0381111561521b575f80fd5b6020830191508360208260051b8501011115615235575f80fd5b9250929050565b80356001600160a01b0381168114611c0a575f80fd5b5f805f805f805f805f805f60e08c8e03121561526c575f80fd5b6001600160401b03808d351115615281575f80fd5b61528e8e8e358f016151f5565b909c509a5060208d01358110156152a3575f80fd5b6152b38e60208f01358f016151f5565b909a50985060408d01358110156152c8575f80fd5b6152d88e60408f01358f016151f5565b909850965060608d01358110156152ed575f80fd5b506152fe8d60608e01358e016151f5565b909550935060808c0135925061531660a08d0161523c565b915060c08c013590509295989b509295989b9093969950565b634e487b7160e01b5f52602160045260245ffd5b60068110611b8657611b8661532f565b61535e828251615343565b6020818101516001600160a01b0390811691840191909152604080830151908401526060808301519084015260809182015116910152565b5f815180845260208085019450602084015f5b838110156153eb5781516153be888251615353565b808401516001600160a01b031660a08901526040015160c088015260e090960195908201906001016153a9565b509495945050505050565b604080825283519082018190525f906020906060840190828701845b82811015615430578151151584529284019290840190600101615412565b50505083810360208501526106d78186615396565b5f8060208385031215615456575f80fd5b82356001600160401b0381111561546b575f80fd5b615477858286016151f5565b90969095509350505050565b5f805f8060408587031215615496575f80fd5b84356001600160401b03808211156154ac575f80fd5b6154b8888389016151f5565b909650945060208701359150808211156154d0575f80fd5b506154dd878288016151f5565b95989497509550505050565b602081525f6104f16020830184615396565b5f6020828403121561550b575f80fd5b6104f18261523c565b5f8060408385031215615525575f80fd5b82356001600160401b0381111561553a575f80fd5b83016040818603121561554b575f80fd5b946020939093013593505050565b5f805f805f6080868803121561556d575f80fd5b85356001600160401b0380821115615583575f80fd5b9087019060a0828a031215615596575f80fd5b909550602087013590808211156155ab575f80fd5b506155b8888289016151f5565b909550935050604086013591506155d16060870161523c565b90509295509295909350565b5f805f805f805f8060a0898b0312156155f4575f80fd5b88356001600160401b038082111561560a575f80fd5b6156168c838d016151f5565b909a50985060208b013591508082111561562e575f80fd5b61563a8c838d016151f5565b909850965060408b0135915080821115615652575f80fd5b5061565f8b828c016151f5565b999c989b509699959896976060870135966080013595509350505050565b5f805f805f805f6080888a031215615693575f80fd5b87356001600160401b03808211156156a9575f80fd5b6156b58b838c016151f5565b909950975060208a01359150808211156156cd575f80fd5b6156d98b838c016151f5565b909750955060408a01359150808211156156f1575f80fd5b506156fe8a828b016151f5565b909450925061571190506060890161523c565b905092959891949750929550565b606081525f6157316060830186615152565b6020830194909452506001600160a01b0391909116604090910152919050565b634e487b7160e01b5f52604160045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b5f8261579357634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f815180845260208085019450602084015f5b838110156153eb5781516157d4888251615343565b838101516001600160a01b03168885015260408082015190890152606080820151908901526080908101519088015260a090960195908201906001016157bf565b5f815180845260208085019450602084015f5b838110156153eb57815161583d888251615343565b808401516001600160a01b0390811689860152604080830151908a0152606080830151908a0152608080830151908a015260a091820151169088015260c09096019590820190600101615828565b60058110611b8657611b8661532f565b828152604060208201526158bb6040820183516001600160a01b03169052565b5f60208301516158d660608401826001600160a01b03169052565b5060408301516101608060808501526158f36101a08501836157ac565b91506060850151603f198584030160a08601526159108382615815565b925050608085015161592560c086018261588b565b5060a085015160e085015260c0850151610100818187015260e0870151915061012082818801528188015192506101409150828288015280880151848801525080870151610180870152505050809150509392505050565b5f823561015e19833603018112615992575f80fd5b9190910192915050565b5f602082840312156159ac575f80fd5b8135600581106104f1575f80fd5b8181038181111561040257610402615765565b8082018082111561040257610402615765565b5f815180845260208085019450602084015f5b838110156153eb57615a06878351615353565b60a09690960195908201906001016159f3565b5f6080808301878452602060018060a01b03808916602087015260406080604088015283895180865260a08901915060208b0195505f5b81811015615a91578651615a65848251615343565b808701518616848801528481015185850152606090810151908401529585019591870191600101615a50565b50508781036060890152615aa5818a6159e0565b9c9b505050505050505050505050565b80820281158282048414176104025761040261576556fea164736f6c6343000818000a436f6e73696465726174696f6e4974656d2875696e7438206974656d547970652c6164647265737320746f6b656e2c75696e74323536206964656e7469666965724f7243726974657269612c75696e74323536207374617274416d6f756e742c75696e7432353620656e64416d6f756e742c6164647265737320726563697069656e7429454950373132446f6d61696e28737472696e67206e616d652c737472696e672076657273696f6e2c75696e7432353620636861696e49642c6164647265737320766572696679696e67436f6e7472616374294f72646572436f6d706f6e656e74732861646472657373206f6666657265722c61646472657373207a6f6e652c4f666665724974656d5b5d206f666665722c436f6e73696465726174696f6e4974656d5b5d20636f6e73696465726174696f6e2c75696e7438206f72646572547970652c75696e7432353620737461727454696d652c75696e7432353620656e6454696d652c62797465733332207a6f6e65486173682c75696e743235362073616c742c6279746573333220636f6e647569744b65792c75696e7432353620636f756e746572294f666665724974656d2875696e7438206974656d547970652c6164647265737320746f6b656e2c75696e74323536206964656e7469666965724f7243726974657269612c75696e74323536207374617274416d6f756e742c75696e7432353620656e64416d6f756e7429", + "deployedBytecode": "0x608060405260043610610103575f3560e01c8063a900866b11610092578063f07ec37311610062578063f07ec373146102f7578063f2d12b1214610316578063f47b774014610329578063fb0f3ee114610116578063fd9f1e101461034c575f80fd5b8063a900866b1461028a578063b3a34c4c146102be578063e7acab24146102d1578063ed98a574146102e4575f80fd5b80637423eb3c116100d85780637423eb3c146101f757806379df72bd1461020b57806387201b411461022a578063881477321461024b578063a81744041461026a575f80fd5b801561011657806306fdde031461013e57806346423aa71461015f5780635b34b966146101d5575f80fd5b366101125761011061036b565b005b5f80fd5b61012961012436600461511b565b6103f9565b60405190151581526020015b60405180910390f35b348015610149575f80fd5b50610152610408565b6040516101359190615195565b34801561016a575f80fd5b506101b36101793660046151a7565b5f9081526001602052604090205460ff808216926101008304909116916001600160781b03620100008204811692600160881b9092041690565b6040805194151585529215156020850152918301526060820152608001610135565b3480156101e0575f80fd5b506101e9610417565b604051908152602001610135565b348015610202575f80fd5b50610110610420565b348015610216575f80fd5b506101e96102253660046151be565b6104c1565b61023d610238366004615252565b6104f8565b6040516101359291906153f6565b348015610256575f80fd5b50610129610265366004615445565b610571565b61027d610278366004615483565b61058f565b60405161013591906154e9565b348015610295575f80fd5b506101e96102a43660046154fb565b6001600160a01b03165f9081526002602052604090205490565b6101296102cc366004615514565b61062a565b6101296102df366004615559565b6106a3565b61023d6102f23660046155dd565b6106e1565b348015610302575f80fd5b506101e96103113660046154fb565b610784565b61027d61032436600461567d565b6107a1565b348015610334575f80fd5b5061033d6107ea565b6040516101359392919061571f565b348015610357575f80fd5b50610129610366366004615445565b610801565b7f000000000000000000000000000000000000000000000000000000000000000080156103b357600263929eee145c146103b05763a61be9f05f52346020526024601cfd5b50565b63929eee1454806103e057600263929eee145c146103dc5763a61be9f05f52346020526024601cfd5b5050565b600381146103dc5763a61be9f05f52346020526024601cfd5b5f61040261080c565b92915050565b60606104126109c0565b905090565b5f6104126109de565b63929eee14546001147f000000000000000000000000000000000000000000000000000000000000000080610453575080155b1561047157604051630f45b98b60e41b815260040160405180910390fd5b61049a7f0000000000000000000000000000000000000000000000000000000000000000610a4b565b6104b7576040516370a4078f60e01b815260040160405180910390fd5b5f63929eee145550565b5f806104cd6004610aa9565b90506104f16104e282610ab95b63ffffffff16565b610140830135610b36565b3590565b9392505050565b60608061055d61051361050b6004610aa9565b610c7a6104da565b61052a61052260046020610ce2565b610d006104da565b61054161053960046040610ce2565b610d586104da565b61055061053960046060610ce2565b89338a15028a0189610db0565b915091509b509b9950505050505050505050565b5f6104f161058a6105826004610aa9565b610dea6104da565b610e42565b606061061f6105a96105a16004610aa9565b610f636104da565b604080515f8082526020820190925290610601565b6105ee6040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816105be5790505b5061061961061160046020610ce2565b610fbb6104da565b33611013565b90505b949350505050565b5f6104f161064361063b6004610aa9565b6110516104da565b604080515f808252602082019092529061069b565b6106886040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816106585790505b5084336110c7565b5f6106d76106bc6106b46004610aa9565b6112466104da565b6106cb61052260046020610ce2565b853386150286016110c7565b9695505050505050565b6060806107736106f46105a16004610aa9565b604080515f808252602082019092529061074c565b6107396040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816107095790505b5061075c61053960046020610ce2565b61076b61053960046040610ce2565b883389610db0565b915091509850989650505050505050565b6001600160a01b0381165f90815260208190526040812054610402565b60606107dc6107b361050b6004610aa9565b6107c261052260046020610ce2565b6107d161061160046040610ce2565b338615028601611013565b90505b979650505050505050565b60605f806107f66112a2565b925092509250909192565b5f6104f183836112ee565b5f61012435600281901c90600316600182118334158214806108315761083134611429565b506003841160a0810260240135906502030203010160d01b861a905f630101020360d01b881a610864888289888861143a565b9096509150506101c4600583901b01355f8760058111156108875761088761532f565b036108bc5760443560243517156108a557636ab37ce75f526004601cfd5b6108af8482611757565b6108b761180f565b61099d565b6040805160208082528183019092525f9160208201818036833701905050905060028a60058111156108f0576108f061532f565b036109135761090e60c4356084353360e435610104355b878761188f565b610988565b60038a60058111156109275761092761532f565b036109455761090e60c4356084353360e435610104355b87876118da565b60048a60058111156109595761095961532f565b036109735761090e60243533608435604435606435610907565b6109886024353360843560443560643561093e565b6109928482611910565b61099b816119ca565b505b6109a88689846119ee565b6109b0611a64565b6001995050505050505050505090565b6060602080526d0d436f6e73696465726174696f6e604d5260606020f35b5f6109e7611ab7565b600143034060801c335f525f60205260405f208054820192508281555050336001600160a01b03167f721c20121297512b72821b97f5326877ea8ecf4bb9948fea5bfcb6453074d37f82604051610a4091815260200190565b60405180910390a290565b5f816001600160a01b0316600a5a610a639190615779565b6040515f8181818686fa925050503d805f8114610a9b576040519150601f19603f3d011682016040523d82523d5f602084013e610aa0565b606091505b50909392505050565b5f813563ffffffff168201610402565b5f610acc61016060408051918201905290565b9050610adb8282610140611b2e565b610af8610af1610aec846040610ce2565b611b37565b6040830152565b5f610b0c610b07846060610ce2565b611b8a565b9050610b19816060840152565b610b2c610b24825190565b610140840152565b50919050565b0190565b610140820151604080519084015180515f939284927f000000000000000000000000000000000000000000000000000000000000000092602090910190845b81811015610ba2578251601f1901805186825260c082208652905260209384019390920191600101610b75565b508060051b6040512094505050505f7f0000000000000000000000000000000000000000000000000000000000000000915060405160206060890151015f5b86811015610c0e578151601f1901805186825260e082208552905260209283019290910190600101610be1565b505060408051600587901b9020601f198a0180517f00000000000000000000000000000000000000000000000000000000000000008252928b01805197815260608c018051938152610140909c019a8b5261018082209390915295909552939097525050925250919050565b5f8063ffffffff8335169050600581901b610c9e6020820160408051918201905290565b828152925060208381019085015f5b83811015610cd857610cd0610cca610cc58484610ce2565b611246565b82850152565b602001610cad565b5050505050919050565b5f6104f163ffffffff610cfa6104ed8686610b328516565b16840190565b5f8063ffffffff8335169050600581901b610d246020820160408051918201905290565b828152925060208381019085015f5b83811015610cd857610d50610cca610d4b8484610ce2565b611bcd565b602001610d33565b5f8063ffffffff8335169050600581901b610d7c6020820160408051918201905290565b828152925060208381019085015f5b83811015610cd857610da8610cca610da38484610ce2565b611c0f565b602001610d8b565b60608036155f80610dc48c8c85898b611c52565b91509150610dd78c8b8b8b8b878761202f565b9450945050505097509795505050505050565b5f8063ffffffff8335169050600581901b610e0e6020820160408051918201905290565b828152925060208381019085015f5b83811015610cd857610e3a610cca610e358484610ce2565b612161565b602001610e1d565b5f610e4b611ab7565b5f805f80855190505f5b81811015610f56575f878281518110610e7057610e70615798565b60209081029190910101518051909150600481608001516004811115610e9857610e9861532f565b03610ea4575050610f4e565b80519450610eb1816121a4565b5f8181526001602052604081209850909650610ed390879089903615156121dd565b50865460ff16610f4b5780610140015181606001515114610ef657610ef661226b565b610f0585878460200151612278565b865460ff191660011787556040517ff280791efe782edcf06ce15c8f4dff17601db3b88eb3805a0db7d77faf757f0490610f42908890849061589b565b60405180910390a15b50505b600101610e55565b5060019695505050505050565b5f8063ffffffff8335169050600581901b610f876020820160408051918201905290565b828152925060208381019085015f5b83811015610cd857610fb3610cca610fae8484610ce2565b611051565b602001610f96565b5f8063ffffffff8335169050600581901b610fdf6020820160408051918201905290565b828152925060208381019085015f5b83811015610cd85761100b610cca6110068484610ce2565b612314565b602001610fee565b60605f36151590505f8061102b8888858b5189611c52565b9150915061103882612347565b6110458887848885612386565b98975050505050505050565b5f61106461020060408051918201905290565b60a0810180825290915061108061107a84610aa9565b82612459565b61108c60016020840152565b61109860016040840152565b6110b56110ae6110a9856020610ce2565b61248f565b6060840152565b610b2c6110c06124b7565b6080840152565b835160808101515f91906110ee60048260048111156110e8576110e861532f565b146124d1565b5f80806110fd8a361515612572565b60408051600180825281830190925293965091945092505f9190816020015b61112461502d565b81526020019060019003908161111c5790505090508a815f8151811061114c5761114c615798565b6020026020010181905250611161818b61276a565b61116d8684848b6128e3565b6040805160018082528183019092525f9160208083019080368337509192505050361515600487818111156111a4576111a461532f565b146111c7576111b58d83885f6129e3565b6111c186868684612a35565b506111d9565b6111d6888e6080015183612b39565b95505b6111e4888c8c612c09565b85825f815181106111f7576111f7615798565b60200260200101818152505061120e8d8388612d2c565b61122b86895f01518a602001518d8c604001518d60600151612df9565b611233611a64565b5060019c9b505050505050505050505050565b5f61125961020060408051918201905290565b905061126d60208381019083016040611b2e565b60a0810180825261128061107a84610aa9565b6112916110ae6110a9856060610ce2565b610b2c6110c06110a9856080610ce2565b60605f805f6112af612e5e565b90505f7f0000000000000000000000000000000000000000000000000000000000000000905060605f5281602052806040526303312e3660635260a05ff35b5f6112f7611ab7565b5f8083815b8181101561140e573687878381811061131757611317615798565b9050602002810190611329919061597d565b90505f61133960208301836154fb565b90505f61134c60408401602085016154fb565b90505f61135f60a085016080860161599c565b905081331483331417156004821417871796505f6113936113886113808790565b610ab96104da565b866101400135610b36565b5f8181526001602052604090819020805461ffff19166101001781559051909a509091506001600160a01b0380851691908616907f6bacc01dbe442496068f7d234edd811f1a5f833243e0aec824f86ab861f3c90d906113f69085815260200190565b60405180910390a385600101955050505050506112fc565b5050801561141e5761141e612f3b565b506001949350505050565b63a61be9f05f52806020526024601cfd5b5f806114455f6124d1565b61144d612f48565b42610164351115426101443511171561147b576321ccfeb75f5261014435602052610164356040526044601cfd5b610204356102643510156114965763466aa6165f526004601cfd5b7f0000000000000000000000000000000000000000000000000000000000000000608081905260a08790526060602460c037604060646101203760e060802061016052610264356102043560051b6102a0016001820181526020810190508881526080602460208301376101608860a0528760c0525f60e0525f6102043593505f5b8481101561156c578060400261028401602081610100376040816101203760208101358317925060208401935060e0608020845260a0850194508b85528a6020860152604081606087013750600101611518565b6001850160051b610160206060526102643594505b848110156115bc578060400261028401925060a0840193508a8452896020850152604083606086013760208301359190911790600101611581565b506001600160a01b038111156115d9576339f3e3fd5f526004601cfd5b50505050505f7f00000000000000000000000000000000000000000000000000000000000000009050806080528360a052606060c460c0376020610104610120375060c06080205f9081526020812060e0526084359061164d826001600160a01b03165f9081526020819052604090205490565b7f000000000000000000000000000000000000000000000000000000000000000060808190529091506040608460a03760605161010052896101205260a061014461014037816101e05261018060802094505050506102043560051b61018001828152336020820152608060408201526101206060820152600160808201528360a0820152606060c460c083013760a061026435026101e00160a4356084357f9d9af8e38d66c62e2c12f0225249fd9d721c54b83f48d9352c97c6cacdcb6f318385a35f60605260608101820160405250505f61172983612f93565b90506117358389612fe4565b7101000000000000000000000000000001000182559150509550959350505050565b60c43560843560e4356101043584156117bf575f6040519050632671a55160e11b815260206004820152600160248201528660448201528460648201528360848201523360a48201528260c48201528160e48201526117b98682610104613039565b50611807565b60028660058111156117d3576117d361532f565b036117fa57806001146117e9576117e9816130f0565b6117f584843385613101565b611807565b61180784843385856131b6565b505050505050565b346064356084356102643560061b5f80805b838110156118605761028481013592506102a48101359150868311156118495761184961328d565b8287039650611858828461329a565b604001611821565b50858511156118715761187161328d565b61187b848661329a565b84861115611807576118073386880361329a565b61189981836132d0565b816118c057826001146118af576118af836130f0565b6118bb87878787613101565b6118d1565b6118d1828260028a8a8a8a8a6132ee565b50505050505050565b6118e38361336d565b6118ed81836132d0565b816118ff576118bb87878787876131b6565b6118d1828260038a8a8a8a8a6132ee565b5f805f805f861561193557505060843592503391505060c4356101043560e43561194a565b50339350506084359150506024356064356044355b80156119585761195861337f565b50600586901b6101e403356102643560061b5f80805b838110156119af5761028481013592506102a481013591508a156119995761199683876159ba565b95505b6119a7878a8486898f61338c565b60400161196e565b506119be86898988888e61338c565b50505050505050505050565b60408151146119d65750565b5f6119e2826020015190565b90506103dc81836133c1565b611a0a8260a4355b331415600182116004909210919091161690565b15611a5f57805f611a19825190565b9050608081901c63ffffffff8216611a3a84826317b1f94282526001905250565b601c840163fb5014fc6060529350611a5660a4358886856133e5565b5f6060526118d1565b505050565b7f00000000000000000000000000000000000000000000000000000000000000008015611a95575f63929eee145d50565b63929eee145480611aab575f63929eee145d5050565b50600163929eee145550565b7f00000000000000000000000000000000000000000000000000000000000000008015611af65763929eee145c156103b057637fa8a9875f526004601cfd5b63929eee145480611b195763929eee145c156103dc57637fa8a9875f526004601cfd5b600181146103dc57637fa8a9875f526004601cfd5b80838337505050565b5f63ffffffff8235166040519150808252602082018160051b81018060a084026020870183378293505b81841015611b7a5780845260209093019260a001611b61565b60405250919392505050565b9052565b5f63ffffffff8235166040519150808252602082018160051b81018060c084026020870183378293505b81841015611b7a5780845260209093019260c001611bb4565b5f611bdf60a060408051918201905290565b9050611bed82826080611b2e565b611c0a611c03611bfe846080610ce2565b61342d565b6080830152565b919050565b5f63ffffffff8235166040519150808252602082018160051b8101808360061b6020870183378293505b81841015611b7a57808452602090930192604001611c39565b60605f611c5f60016124d1565b86515f90600160e61b82351690806001600160401b03811115611c8457611c84615751565b604051908082528060200260200182016040528015611cad578160200160208202803683370190505b50945060010160051b91505f60205b83811015611eae575f611cd28c83613cd46104da565b90505f805f611ce1848e612572565b6001600160781b0382166020880152919450925090505f829003611d085750505050611ea6565b6001600160781b0381166040808601919091528a8601849052845160a081015160c0820151608083015192909301518051600184119d909d179c600490931099509092915f5b81811015611df0575f838281518110611d6957611d69615798565b602002602001015190508b8151108d179c505f611d8b89898460800151613464565b90508160800151826060015103611da85760608201819052611dbd565b611db789898460600151613464565b60608301525b5f611dd68360600151838a8a611dd1361590565b6134a0565b606084018190526080909301929092525050600101611d4e565b5087516060015180515f5b81811015611e9a575f838281518110611e1657611e16615798565b602002602001015190505f611e308b8b8460800151613464565b90508160800151826060015103611e4d5760608201819052611e62565b611e5c8b8b8460600151613464565b60608301525b5f611e778360600151838c8c611dd136151590565b6060840181905260a0840180516080909501949094529092525050600101611dfb565b50505050505050505050505b602001611cbc565b50506001600160e61b018103611ec657611ec66134f3565b50611ed1888861276a565b5f8060205b8381101561201457858101519250821561200c575f611ef88c83613cd46104da565b9050885f03611f13575f87830181905260209091015261200c565b60048151608001516004811115611f2c57611f2c61532f565b14611faf57611f458188866001600587901c038e613500565b611f5b575f87830181905260209091015261200c565b602080820151604083015183516080810151930151611f949388936001600160781b039081169316913314156001909111168e17612a35565b611faa575f87830181905260209091015261200c565b611fda565b611fc1815f015182608001518c612b39565b878301819052935083611fda575f60209091015261200c565b886001900398505f815f0151905061200585825f015183602001518c85604001518660600151612df9565b6001935050505b602001611ed6565b50806120225761202261355b565b5050509550959350505050565b85518551606091829161204281836159cd565b6001600160401b0381111561205957612059615751565b60405190808252806020026020018201604052801561209257816020015b61207f615060565b8152602001906001900390816120775790505b5092505f5b828110156120ea576120c58c5f8d84815181106120b6576120b6615798565b60200260200101518c8c613568565b8482815181106120d7576120d7615798565b6020908102919091010152600101612097565b505f5b818110156121435761211c8c60018c848151811061210d5761210d615798565b60200260200101518c5f613568565b848483018151811061213057612130615798565b60209081029190910101526001016120ed565b506121518b84888a896135b7565b9350505097509795505050505050565b5f6121726040808051918201905290565b905061218c61218861218384610aa9565b6138a0565b8252565b611c0a61219d6110a9846020610ce2565b6020830152565b5f6121b98260600151518361014001516138bf565b81516001600160a01b03165f90815260208190526040902054610402908390610b36565b82545f90610100900460ff16156122045781156121fd576121fd856138cf565b505f610622565b83546201000090046001600160781b0316801561225f57831561222f5761222a866138e0565b61225f565b8454600160881b90046001600160781b0316811061225f57821561225657612256866138f1565b5f915050610622565b50600195945050505050565b632165628a5f526004601cfd5b33831480156122875750505050565b5f612290612e5e565b61190160f01b5f9081526002828152602287815260428320908390528651939450929190601f601d840116106102e260621984011016156122fa576122d58688613902565b61190160f01b5f908152600286905260228281526042822091905290975090506122fd565b50815b61230a888285858a613998565b5050505050505050565b5f6123256040808051918201905290565b9050612336612188610da384610aa9565b611c0a61219d610da3846020610ce2565b80518060051b6040019050602082038051602082527f4b9f2d36e1b4c93de62cc077b00b1a91d84b6c31b4a14e012718dcca230689e78383a190525050565b8351606090806001600160401b038111156123a3576123a3615751565b6040519080825280602002602001820160405280156123dc57816020015b6123c9615060565b8152602001906001900390816123c15790505b5091505f5b8181101561243f575f8782815181106123fc576123fc615798565b6020026020010151905061241989825f0151836020015185613ae1565b84838151811061242b5761242b615798565b6020908102919091010152506001016123e1565b5061244d87838787876135b7565b50505b95945050505050565b6124668282610160611b2e565b612477610af1610aec846040610ce2565b6103dc612488610b07846060610ce2565b6060830152565b6040518135601f0163ffffffe01660200180838337913563ffffffff16815290810160405290565b5f6124c9602060408051918201905290565b5f8152905090565b7f0000000000000000000000000000000000000000000000000000000000000000801561251e5763929eee145c1561251057637fa8a9875f526004601cfd5b8160010163929eee145d5050565b63929eee1454806125505763929eee145c1561254157637fa8a9875f526004601cfd5b8260010163929eee145d505050565b6001811461256557637fa8a9875f526004601cfd5b505060020163929eee1455565b5f805f80855f0151905061258f8160a001518260c0015187613c86565b6125a257505f9250829150819050612763565b602086015160408701516001600160781b0391821694501691505f6004826080015160048111156125d5576125d561532f565b0361260257600183850218905080156125f0576125f0613ca9565b50600193508392508291506127639050565b50818311831517801561261757612617613ca9565b608082015160011615848411161561263157612631613cb6565b61263a826121a4565b5f81815260016020526040812091965061265890879083908a6121dd565b61266b57505f9350839250612763915050565b805460ff1661268657612686835f0151878a60600151612278565b8054608881901c8061269a5786915061275d565b6001600160781b038260101c169150600186036126be57818103965080955061275d565b8086036126d95790860185810386821102909603959061275d565b80860296810291909502810186810387821102918290039695919003906001600160781b0386111561275d5761271d565b5f5b8215610b2c5790829006919061270c565b61273061272a878461270a565b8861270a565b8015019687900496909504946001600160781b0386111561275d57634e487b715f5260116020526024601cfd5b50505050505b9250925092565b805182515f5b82811015612859575f84828151811061278b5761278b615798565b602002602001015190505f815f015190508381106127b0576127b08260200151613cc3565b5f8782815181106127c3576127c3615798565b6020026020010151905080602001516001600160781b03165f036127e957505050612851565b80516040808201519085015163bfb3f8ce5f876020015160018111156128115761281161532f565b1461282d575f612822856060613cd4565b9350636088d7de9150505b8251821061283e57805f526004601cfd5b612849838389613cdf565b505050505050505b600101612770565b505f5b818110156128dc575f85828151811061287757612877615798565b6020026020010151905080602001516001600160781b03165f0361289b57506128d4565b8051608081015160608201516128b89085908363a8930e9a613d92565b6128d08483604001518363d69293326104da613d9290565b5050505b60010161285c565b5050505050565b60a084015160c08501516040860151515f805b82811015612960575f8960400151828151811061291557612915615798565b602002602001015190505f815f01519050801584179350505f61294c826060015183608001518c8c8b8b612947361590565b613df9565b6060830152506080018690526001016128f6565b506080880151600481108216801561297a5761297a6134f3565b505050506060860151515f5b8181101561230a575f886060015182815181106129a5576129a5615798565b602002602001015190505f6129ca826060015183608001518b8b8a8a61294736151590565b60608301525060a0810151608090910152600101612986565b8351608081015160208201513314156001821160049092109190911616156128dc575f80612a18858489608001518988613e34565b63fb5014fc6060529092509050611a5683602001518684846133e5565b5f848152600160205260408120805482908290608881901c80612a5a57889150612ae2565b6001600160781b038260101c169150808803612a7e57908801878111935090612ae2565b97880297808802979190910288018781119350906001600160781b038083119089111715612ae257612ab0888361270a565b8015019788900497909104906001600160781b038083119089111715612ae257634e487b715f5260116020526024601cfd5b508215612b1b578515612b0f576040516310fda3e160e01b8152600481018a905260240160405180910390fd5b5f945050505050610622565b8660881b8160101b1760011782556001945050505050949350505050565b5f83610140015184606001515114612b5357612b5361226b565b83515f8080612b628888613fb2565b915091505f8082845f885af16001600160a01b0385165f908152600260205260409020805460018101909155606086901b189550925082612bc1578515612bb457612bab61405c565b612bb4856140a3565b505f93506104f192505050565b505050505f805f612bde876040015188606001516104da6140b490565b925092509250825f14612bf457612bf4846140a3565b60408701919091526060860152509392505050565b6040805160208082528183019092525f916020820181803683375050506040850151519091505f5b81811015612c81575f86604001518281518110612c5057612c50615798565b60200260200101519050846080820152612c7881885f0151896101200151876104da61432d90565b50600101612c31565b50506060840151515f90815b81811015612d0f575f87606001518281518110612cac57612cac615798565b602002602001015190505f6005811115612cc857612cc861532f565b81516005811115612cdb57612cdb61532f565b03612cf7574793508381606001511115612cf757612cf761328d565b612d068133898861432d6104da565b50600101612c8d565b5050612d1a826119ca565b504780156128dc576128dc338261329a565b8251608081015160208201515f92839283928392916004811060019091111633909114151615612d8e57612d6f612d6961010083015190565b5190565b88614422565b9093509150612d8060208201612d65565b945063fb5014fc9350612dda565b600481608001516004811115612da657612da661532f565b0361230a57805194505f8560601b9050612dc787838b608001518b85614463565b639397928596509094509250612dda9050565b612de46060859052565b612df0858785856133e5565b5f60605261230a565b60608290506060829050856001600160a01b0316876001600160a01b03167f9d9af8e38d66c62e2c12f0225249fd9d721c54b83f48d9352c97c6cacdcb6f318a888686604051612e4c9493929190615a19565b60405180910390a35050505050505050565b5f7f00000000000000000000000000000000000000000000000000000000000000004614612f16575060408051608080517f00000000000000000000000000000000000000000000000000000000000000005f9081527f00000000000000000000000000000000000000000000000000000000000000006020527f0000000000000000000000000000000000000000000000000000000000000000855246606090815230845260a08220949095529093529190915290565b507f000000000000000000000000000000000000000000000000000000000000000090565b63fed398fc5f526004601cfd5b600435602014610224356102401416610244356102606102643560061b01141660186101243510600160a01b60843560a4351760c4356024351717101616806103b0576103b061452e565b5f8181526001602081905260409091209060843590612fb890849084903615156121dd565b50815460ff16610b2c57610b2c8184612fdf602463ffffffff61024435160161248f6104da565b612278565b5f612ff18260a4356119f6565b15610402575f805f6130028661453b565b63fb5014fc6060529194509250905061302260a43587601c8601856133e5565b5f60605260209190910160801b1781529392505050565b604080517f000000000000000000000000000000000000000000000000000000000000000060ff60a01b175f90815260208690527f000000000000000000000000000000000000000000000000000000000000000083526055600b20919092526001600160a01b031690505f805f805260205f85875f875af191505f519050816130ce576130c561405c565b6130ce836145f3565b6001600160e01b03198116632671a55160e11b14611807576118078684614604565b6369f958275f52806020526024601cfd5b833b61311857635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af1806131a8573d1561318657601f3d0160051c8260051c816003028183111561316f578183036003028280028480020360091c01015b5a602082011015613182573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b6131cd57635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af180613272573d1561325157601f3d0160051c8560051c816003028183111561323a578183036003028280028480020360091c01015b5a60208201101561324d573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b638ffff9805f526004601cfd5b6132a38161336d565b5f805f805f85875af1905080611a5f576132bb61405c565b63bc806b965f5282602052816040526044601cfd5b5f6132dc836020015190565b9050818114611a5f57611a5f836119ca565b5f60208851036133285750604080885260208089018a9052632671a55160e11b918901919091526044880152600160648801819052613337565b50606487018051600101908190525b603c60c082028901038781528660208201528560408201528460608201528360808201528260a082015250505050505050505050565b806103b0576391b3e5145f526004601cfd5b636ab37ce75f526004601cfd5b6133958361336d565b61339f81836132d0565b816133b0576117f586868686614619565b611807828260018989895f8a6132ee565b6064810151604082019060c0026044016133dc848383613039565b50506020905250565b5f806001600160e01b03198451165f805260205f85875f8b5af15f519093501490508161341e5761341461405c565b846080526024607cfd5b8061180757846080526024607cfd5b5f8063ffffffff83351690506001810160051b6134508160408051918201905290565b925061345d848483611b2e565b5050919050565b5f8284036134735750806104f1565b82848309156134895763c63cf0895f526004601cfd5b5f6134948584615ab5565b93909304949350505050565b5f8486146134e957838303428590038082035f6134bd838a615ab5565b6134c7838c615ab5565b6134d191906159cd565b90508584878303040181151502945050505050612450565b5092949350505050565b6312d3f5a35f526004601cfd5b8451608081015160208201515f92916004811060019091111633909114151615610f56575f8061353787848b608001518b8a613e34565b91509150613551836020015188848463fb5014fc8a61470d565b9350505050612450565b63d5da9a1b5f526004601cfd5b613570615060565b83515f03613581576135818561477a565b5f8560018111156135945761359461532f565b036135aa576135a58685838561478b565b612450565b61245086858333876148fb565b84516060905f816001600160401b038111156135d5576135d5615751565b6040519080825280602002602001820160405280156135fe578160200160208202803683370190505b506040805160208082528183019092529192505f9190602082018180368337505089519192505060010160051b60205b8181101561368d575f6136448b83613cd46104da565b8051606081015191925090801561368257478111825115161561366e57638ffff9805f526004601cfd5b61368282846020015185604001518961432d565b50505060200161362e565b50505f5b838110156137f9575f8a82815181106136ac576136ac615798565b6020026020010151905080602001516001600160781b03165f036136f3575f8483815181106136dd576136dd615798565b91151560209283029190910190910152506137f1565b600184838151811061370757613707615798565b911515602092830291909101909101528051604081015180515f5b8181101561378c575f83828151811061373d5761373d615798565b6020026020010151905080606001515f1461377957608081018051908e905285516101208701516137739184918c61432d6104da565b60808201525b6080810151606090910152600101613722565b505050606081015180515f5b818110156137eb575f8382815181106137b3576137b3615798565b602002602001015190505f81606001519050805f146137d7576137d7888483614a32565b5060a0810151606090910152600101613798565b50505050505b600101613691565b50613803816119ca565b47801561381457613814338261329a565b851561388a575f5b848110156138885783818151811061383657613836615798565b602002602001015115613880576138808b828151811061385857613858615798565b60200260200101518a8b848151811061387357613873615798565b6020026020010151612d2c565b60010161381c565b505b613892611a64565b509098975050505050505050565b5f6138b361016060408051918201905290565b9050611c0a8282612459565b808210156103dc576103dc614a4b565b631a5155745f52806020526024601cfd5b63ee9e0e635f52806020526024601cfd5b6310fda3e15f52806020526024601cfd5b5f805f84516001811660410380820360051c9250808752806020018701915050805160e81c6003820191506001811660051b868152825160208218525060015b8381101561396e5760405f2082821c60051b602090811691825293840180519190941852600101613942565b50505060405f2091505f61398182614a58565b5f9081526020939093525050604090209392505050565b5f805f528151602083038051826041035f600182116139fb57604087015160608801515f1a83156139dc57601b8260ff1c0190506001600160ff1b03821660408a01525b88528a855260205f60808760015afa508385528588526040880152505f515b8a148a1515169450849050613ac457858552604082526044850380516040870351630b135d3f60e11b835289604089035260205f60648b01858f5afa96508615613ab857630b135d3f60e11b5f5114613ab8578b3b15613a6257634f7fb80d5f526004601cfd5b6001866041031115613a7b57638baa579f5f526004601cfd5b64010100000060608901515f1a1a15604187141615613aab57631f003d0a5f5260608801515f1a6020526024601cfd5b63815e1d645f526004601cfd5b8385529152603f198601525b5050508061180757613ad461405c565b634f7fb80d5f526004601cfd5b613ae9615060565b8251158451151715613b02576398e9db6e5f526004601cfd5b613b0a615060565b613b178685835f806148fb565b805160608101515f03613b2c57509050610622565b613b3c878785846080015161478b565b82516040828101519082015160208085015190840151855185511891181791181715613b735763bced929d5f52846020526024601cfd5b806060015182606001511115613bfa575f865f81518110613b9657613b96615798565b60200260200101519050816060015183606001510389825f015181518110613bc057613bc0615798565b60200260200101515f015160600151826020015181518110613be457613be4615798565b6020026020010151606001818152505050613c7b565b5f875f81518110613c0d57613c0d615798565b60200260200101519050826060015182606001510389825f015181518110613c3757613c37615798565b60200260200101515f015160400151826020015181518110613c5b57613c5b615798565b602002602001015160600181815250508260600151826060018181525050505b505050949350505050565b428084111590831116818015613c9a575080155b156104f1576104f18484614e67565b635a052b325f526004601cfd5b63a11b63ff5f526004601cfd5b63133c37c65f52806020526024601cfd5b5f6104f18284015190565b5f838381518110613cf257613cf2615798565b602002602001015190505f815f01519050613d0d8160031090565b613d1957613d19614e7c565b60408201518015613d3c57613d378460600151828660800151614e89565b613d4f565b60808401515115613d4f57613d4f614ed3565b6004821460030383816005811115613d6957613d6961532f565b90816005811115613d7c57613d7c61532f565b9052505050606090920151604090910152505050565b82515f5b81811015611807575f858281518110613db157613db1615798565b60209081029190910101518051604082015191925090600382116004881415821515171615613deb57855f5288602052836040526044601cfd5b505050806001019050613d96565b5f868803613e1357613e0c868689613464565b90506107df565b6107dc613e2187878b613464565b613e2c88888b613464565b8686866134a0565b5f805f613e3f614ee0565b6301e4d72a815260208082015260408101898152336060830152601c820194509091508751604082015287613e7f613e7860a083015190565b60e0840152565b613e95613e8d60c083015190565b610100840152565b613eab613ea360e083015190565b610120840152565b610140613eb9816060850152565b5f613ec5604084015190565b90505f613ed482848701614eea565b928301929050613ee5836080870152565b5f613ef1606086015190565b90505f613f0082868901614f50565b948501949050613f118560a0890152565b5f613f1e8e878a01614fb5565b959095019450613f2f8560c0890152565b8685015f613f3d8e83614fd4565b602497019687019a50613f599050613f548c8c0190565b615004565b8060408b901b60808b901b17178f610100018181525050613f838c82611b8690919063ffffffff16565b60058c8e51613f9291906159ba565b613f9d911b8b6159ba565b99505050505050505050509550959350505050565b5f8083613fbd614ee0565b639891976581523360208201908152608060408301819052601c9092019450905f613fe9604085015190565b90505f613ff882848601614eea565b928301929050614009836040860152565b5f614015606087015190565b90505f61402482868801614eea565b948501949050614035856060880152565b895f61404382898901614fb5565b9a9d96909a016004019b50949950505050505050505050565b3d156140a157601f3d0160051c60405160051c816003028183111561408e578183036003028280028480020360091c01015b5a602082011015611a5f573d5f803e3d5ffd5b565b63939792855f52806020526024601cfd5b60603d105f8080808080866141265760405f803e5f51935060205192503d60208501113d60208501118082179850505086614126576020845f3e5f51915060208360203e60205190508160071b60208501018160a0026020850101803d10823d101761ffff8486171117985050505f80525b86614158575f8061413b84602088018d614161565b9250975061414d83602087018c614241565b929092179850909550505b50505050612763565b5f806040519150825160c08602602001830160405285835260208660010160051b8085018360010160051b870161419f858b81811090829003020190565b60010160051b8a861196505b808510156141ff57828589015260808a843e6060830151955085608084015260608201518681116141dc85856142e8565b17881797505060808a01995060a08301925060a0820191506020850194506141ab565b50505b81831015614235578083870152608088823e6060810151608082015260808801975060a081019050602083019250614202565b50505050935093915050565b604051815180851190808603818710028101602060e08202850181016040528185526001928301600590811b87019390920190911b908185015b8282101561423557808287015260a088823e60206060890160a083013e606081015160608501516142b86080840151608088015180159114171590565b818311176142c684886142e8565b60a09b909b019a179690961795505060c093840193602092909201910161427b565b5f81516040830151801560038311161561430a57506040840151600119909101905b604085015181148551831460208701516020870151141616159250505092915050565b5f845160058111156143415761434161532f565b0361437e57604084015160208501516001600160a01b031617156143675761436761337f565b6143798460800151856060015161329a565b61441c565b6001845160058111156143935761439361532f565b036143c4576040840151156143aa576143aa61337f565b61437984602001518486608001518760600151868661338c565b6002845160058111156143d9576143d961532f565b036143fd57614379846020015184866080015187604001518860600151878761188f565b61441c84602001518486608001518760400151886060015187876118da565b50505050565b608082901c63ffffffff604084901c8116908085169061444a9084906317b1f94290611b8616565b601c8301925061445a8482614fd4565b50509250929050565b5f8061446d614ee0565b63f4dd92ce815287841860a0820152601c8101925060200160a0808252875f614497604083015190565b90505f6144a682858701614eea565b9384019390506144b7846020870152565b5f6144c3606085015190565b90505f6144d282878901614f50565b9586019590506144e3866040890152565b5f6144f08d888a01614fb5565b9687019690506145018760608a0152565b5f61450e8d898b01614fd4565b905080880197508760040199505050505050505050509550959350505050565b6339f3e3fd5f526004601cfd5b6301e4d72a6102043560051b6080019081525f808260208082015260408101858152336060830152601c9190910190614575608435610af1565b61458661014460e083016060611b2e565b610140614594816060840152565b6145a260a082016080840152565b61016060a06102643581029290920101906145be908290840152565b6145c85f82840152565b6020016145d68160c0840152565b5f9181019182526020820196909652939560449095019492505050565b63d13d53d45f52806020526024601cfd5b631cf99b265f5281602052806040526044601cfd5b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166146fe5780873b1515166146fe57806146ed57816146d0573d156146af57601f3d0160051c8360051c8160030281831115614698578183036003028280028480020360091c01015b5a6020820110156146ab573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b5f805f6001600160e01b03198751165f805260205f888a5f8e5af15f51909350149050816147595783614744575f925050506106d7565b61474c61405c565b845f52876020526024601cfd5b8061476b57845f52876020526024601cfd5b50600198975050505050505050565b63375c24c15f52806020526024601cfd5b5f805f85865160051b87015b808210156148a8576020820191508851825151106147b7576147b76148dc565b81515160051b60208a01015180516020845101515f6040830151602085015115815184101517156147ec575050505050614797565b8260051b60208201015191505060608101935083518901915083511589831060011b17881797508198505f84528a5193508615600181146148555760608220881860408d01516101208601511860208e0151865118171715614850576148506148dc565b61489e565b8151855260208201516020860152604082015160408601528a6080860152835160208d015261012084015160408d015260608520975060208d0192508683181561489e57865183525b5050505050614797565b5050508160608551015280156148d557600181036148cd576391b3e5145f526004601cfd5b6148d56148e9565b505061441c565b637fda72795f526004601cfd5b634e487b715f5260116020526024601cfd5b5f805f86875160051b88015b808210156149fd576020820191508151518a518110614928576149286148dc565b8060051b60208c01015190506020835101515f6060835101516020840151158151841015171561495b5750505050614907565b8260051b60208201015191505060608101925082518801915082511588831060011b17871796508197505f83528a5192508515600181146149ad5760a0822087146149a8576149a86148dc565b6149f4565b815184526020820151602085015260408201516040850152608082015160808501528a60208d01528960408d015260a08220965060208d019250858318156149f457855183525b50505050614907565b50508551606001839052508015614a2b5760018103614a23576391b3e5145f526004601cfd5b614a2b6148e9565b50506128dc565b63a5f542085f528260205281604052806060526064601cfd5b63466aa6165f526004601cfd5b5f614e5e565b5f6009821015614bb7576005821015614b14576003821015614ac7577f832c58a5b611aadcfa6a082ac9d04bace53d8278387f10040347b7e98eb5b30260018314027fbf8e29b89f29ed9b529c154a63038ffca562f8d7cd1e2545dda53a1b582dde3018610402565b7ff3e8417a785f980bdaf134fa0274a6bf891eeb8195cd94b09d2aa651046e28bc60038314027fa02eb7ff164c884e5e2c336dc85f81c6a93329d8e9adf214b32729b894de2af118610402565b6007821015614b6a577f25d02425402d882d211a7ab774c0ed6eca048c4d03d9af40132475744753b2a360058314027f1c19f71958cdd8f081b4c31f7caf5c010b29d12950be2fa1c95070dc47e30b5518610402565b7fb58d772fb09b426b9dece637f61ca9065f2b994f1464b51e9207f55f7c8f594860078314027f7ff98d9d4e55d876c5cfac10b43c04039522f3ddfb0ea9bfe70c68cfb5c7cc1418610402565b6011821015614d0f57600d821015614c6c57600b821015614c1f577f6f0ec38c21f6f583ab7f3c5413c773ffd5344c34fde1d390958e438bf667448f60098314027fd1d97d1ef5eaa37a4ee5fbf234e6f6d64eb511eb562221cd7edfbdde0848da0518610402565b7f32f4e7485d6485f9f6c255929b9905c62ba919758bbe231f231eaeecf33d810c600b8314027fbb98d87cc12922b83759626c5f07d72266da9702d19ffad6a514c73a89002f5f18610402565b600f821015614cc2577f8df51df98847160517f5b1186b4bc3f418d98b8a7f17f1292f392d79d600d79e600d8314027f6b5b04cbae4fcb1a9d78e7b2dfc51a36933d023cf6e347e03d517b472a85259018610402565b7fcc4886e37eedd9aacd6c1c2c9247197a621a71282e87a7cbc673f3736d9aa141600f8314027f1da3eed3ecef6ebaa6e5023c057ec2c75150693fd0dac5c90f4a142f9879fde818610402565b6015821015614dbb576013821015614d6e577f2d7a3ed6dab270fdb8e054b2ad525f0ce2a8b89cc76c17f0965434740f673a5560118314027fc3939feff011e53ab8c35ca3370aad54c5df1fc2938cd62543174fa6e7d8587718610402565b7f54b3212a178782f104e0d514b41a9a5c4ca9c980bf6597c3cecbf280917e202a60138314027f5a4f867d3d458dabecad65f6201ceeaba0096df2d0c491cc32e6ea4e6435001718610402565b6017821015614e11577fbb40bf8cea3a5a716e2b6eb08bbdac8ec159f82f380783db3c56904f15a43d0460158314027f3bd8cff538aba49a9c374c806d277181e9651624b3e31111bc0624574f8bca1d18610402565b7f403be09941a31d05cfc2f896505811353d45d38743288b016630cce39435476a60178314027f1d51df90cba8de7637ca3e8fe1e3511d1dc2f23487d05dbdecb781860c21ac1c18610402565b61040282614a5e565b6321ccfeb75f5281602052806040526044601cfd5b6394eb6af65f526004601cfd5b5f835f5260205f2060208301835160051b81015b80821015614ec457815180841160051b93845260209384185260405f209290910190614e9d565b5050831490508061441c5761441c5b6309bde3395f526004601cfd5b5f61041260405190565b5f825180835260208401602084018260051b82015b80831015614f3d5782518051835260208101516020840152604081015160408401526060810151606084015250602083019250608082019150614eff565b5050508060071b60200191505092915050565b5f80614f5a845190565b8084529050602084810190600583901b860181019085015b82821115614fa2575f614f848461500e565b9050614f92818360a0615017565b506020929092019160a001614f72565b60a0840260200194505050505092915050565b5f63ffffffe0603f614fc5855190565b01169050610402838383615017565b5f80614fde845190565b8084529050600581901b614ff9602086810190860183615017565b602001949350505050565b6103b06040829052565b5f610402825190565b8082828560045afa80153d15171561441c575f80fd5b6040518060a001604052806150406150a2565b81525f602082018190526040820152606080820181905260809091015290565b60408051610100810182525f606082018181526080830182905260a0830182905260c0830182905260e083018290528252602082018190529181019190915290565b6040518061016001604052805f6001600160a01b031681526020015f6001600160a01b0316815260200160608152602001606081526020015f60048111156150ec576150ec61532f565b81525f6020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b5f6020828403121561512b575f80fd5b81356001600160401b03811115615140575f80fd5b820161024081850312156104f1575f80fd5b5f81518084525f5b818110156151765760208185018101518683018201520161515a565b505f602082860101526020601f19601f83011685010191505092915050565b602081525f6104f16020830184615152565b5f602082840312156151b7575f80fd5b5035919050565b5f602082840312156151ce575f80fd5b81356001600160401b038111156151e3575f80fd5b820161016081850312156104f1575f80fd5b5f8083601f840112615205575f80fd5b5081356001600160401b0381111561521b575f80fd5b6020830191508360208260051b8501011115615235575f80fd5b9250929050565b80356001600160a01b0381168114611c0a575f80fd5b5f805f805f805f805f805f60e08c8e03121561526c575f80fd5b6001600160401b03808d351115615281575f80fd5b61528e8e8e358f016151f5565b909c509a5060208d01358110156152a3575f80fd5b6152b38e60208f01358f016151f5565b909a50985060408d01358110156152c8575f80fd5b6152d88e60408f01358f016151f5565b909850965060608d01358110156152ed575f80fd5b506152fe8d60608e01358e016151f5565b909550935060808c0135925061531660a08d0161523c565b915060c08c013590509295989b509295989b9093969950565b634e487b7160e01b5f52602160045260245ffd5b60068110611b8657611b8661532f565b61535e828251615343565b6020818101516001600160a01b0390811691840191909152604080830151908401526060808301519084015260809182015116910152565b5f815180845260208085019450602084015f5b838110156153eb5781516153be888251615353565b808401516001600160a01b031660a08901526040015160c088015260e090960195908201906001016153a9565b509495945050505050565b604080825283519082018190525f906020906060840190828701845b82811015615430578151151584529284019290840190600101615412565b50505083810360208501526106d78186615396565b5f8060208385031215615456575f80fd5b82356001600160401b0381111561546b575f80fd5b615477858286016151f5565b90969095509350505050565b5f805f8060408587031215615496575f80fd5b84356001600160401b03808211156154ac575f80fd5b6154b8888389016151f5565b909650945060208701359150808211156154d0575f80fd5b506154dd878288016151f5565b95989497509550505050565b602081525f6104f16020830184615396565b5f6020828403121561550b575f80fd5b6104f18261523c565b5f8060408385031215615525575f80fd5b82356001600160401b0381111561553a575f80fd5b83016040818603121561554b575f80fd5b946020939093013593505050565b5f805f805f6080868803121561556d575f80fd5b85356001600160401b0380821115615583575f80fd5b9087019060a0828a031215615596575f80fd5b909550602087013590808211156155ab575f80fd5b506155b8888289016151f5565b909550935050604086013591506155d16060870161523c565b90509295509295909350565b5f805f805f805f8060a0898b0312156155f4575f80fd5b88356001600160401b038082111561560a575f80fd5b6156168c838d016151f5565b909a50985060208b013591508082111561562e575f80fd5b61563a8c838d016151f5565b909850965060408b0135915080821115615652575f80fd5b5061565f8b828c016151f5565b999c989b509699959896976060870135966080013595509350505050565b5f805f805f805f6080888a031215615693575f80fd5b87356001600160401b03808211156156a9575f80fd5b6156b58b838c016151f5565b909950975060208a01359150808211156156cd575f80fd5b6156d98b838c016151f5565b909750955060408a01359150808211156156f1575f80fd5b506156fe8a828b016151f5565b909450925061571190506060890161523c565b905092959891949750929550565b606081525f6157316060830186615152565b6020830194909452506001600160a01b0391909116604090910152919050565b634e487b7160e01b5f52604160045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b5f8261579357634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f815180845260208085019450602084015f5b838110156153eb5781516157d4888251615343565b838101516001600160a01b03168885015260408082015190890152606080820151908901526080908101519088015260a090960195908201906001016157bf565b5f815180845260208085019450602084015f5b838110156153eb57815161583d888251615343565b808401516001600160a01b0390811689860152604080830151908a0152606080830151908a0152608080830151908a015260a091820151169088015260c09096019590820190600101615828565b60058110611b8657611b8661532f565b828152604060208201526158bb6040820183516001600160a01b03169052565b5f60208301516158d660608401826001600160a01b03169052565b5060408301516101608060808501526158f36101a08501836157ac565b91506060850151603f198584030160a08601526159108382615815565b925050608085015161592560c086018261588b565b5060a085015160e085015260c0850151610100818187015260e0870151915061012082818801528188015192506101409150828288015280880151848801525080870151610180870152505050809150509392505050565b5f823561015e19833603018112615992575f80fd5b9190910192915050565b5f602082840312156159ac575f80fd5b8135600581106104f1575f80fd5b8181038181111561040257610402615765565b8082018082111561040257610402615765565b5f815180845260208085019450602084015f5b838110156153eb57615a06878351615353565b60a09690960195908201906001016159f3565b5f6080808301878452602060018060a01b03808916602087015260406080604088015283895180865260a08901915060208b0195505f5b81811015615a91578651615a65848251615343565b808701518616848801528481015185850152606090810151908401529585019591870191600101615a50565b50508781036060890152615aa5818a6159e0565b9c9b505050505050505050505050565b80820281158282048414176104025761040261576556fea164736f6c6343000818000a", + "linkReferences": {}, + "deployedLinkReferences": {} +} diff --git a/artifacts/ConsiderationBase.json b/artifacts/ConsiderationBase.json new file mode 100644 index 00000000..b5f4756e --- /dev/null +++ b/artifacts/ConsiderationBase.json @@ -0,0 +1,475 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "ConsiderationBase", + "sourceName": "seaport-core/src/lib/ConsiderationBase.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "conduitController", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [], + "name": "BadFraction", + "type": "error" + }, + { + "inputs": [], + "name": "CannotCancelOrder", + "type": "error" + }, + { + "inputs": [], + "name": "ConsiderationLengthNotEqualToTotalOriginal", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "considerationIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "shortfallAmount", + "type": "uint256" + } + ], + "name": "ConsiderationNotMet", + "type": "error" + }, + { + "inputs": [], + "name": "InsufficientNativeTokensSupplied", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidBasicOrderParameterEncoding", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "conduit", + "type": "address" + } + ], + "name": "InvalidCallToConduit", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "conduit", + "type": "address" + } + ], + "name": "InvalidConduit", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "InvalidMsgValue", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidNativeOfferItem", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + } + ], + "name": "InvalidTime", + "type": "error" + }, + { + "inputs": [], + "name": "MissingOriginalConsiderationItems", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "NativeTokenTransferGenericFailure", + "type": "error" + }, + { + "inputs": [], + "name": "NoSpecifiedOrdersAvailable", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "OrderAlreadyFilled", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "OrderIsCancelled", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "OrderPartiallyFilled", + "type": "error" + }, + { + "inputs": [], + "name": "PartialFillsNotEnabledForOrder", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint256", + "name": "newCounter", + "type": "uint256" + }, + { + "indexed": true, + "internalType": "address", + "name": "offerer", + "type": "address" + } + ], + "name": "CounterIncremented", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "zone", + "type": "address" + } + ], + "name": "OrderCancelled", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "indexed": false, + "internalType": "struct SpentItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "indexed": false, + "internalType": "struct ReceivedItem[]", + "name": "consideration", + "type": "tuple[]" + } + ], + "name": "OrderFulfilled", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + }, + { + "components": [ + { + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + } + ], + "internalType": "struct OfferItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct ConsiderationItem[]", + "name": "consideration", + "type": "tuple[]" + }, + { + "internalType": "enum OrderType", + "name": "orderType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "zoneHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "salt", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "totalOriginalConsiderationItems", + "type": "uint256" + } + ], + "indexed": false, + "internalType": "struct OrderParameters", + "name": "orderParameters", + "type": "tuple" + } + ], + "name": "OrderValidated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32[]", + "name": "orderHashes", + "type": "bytes32[]" + } + ], + "name": "OrdersMatched", + "type": "event" + } + ], + "bytecode": "0x6101c0604052348015610010575f80fd5b5060405161053038038061053083398101604081905261002f91610216565b6100376100f0565b610120526101005260e05260c081905260a082815246610140819052604080515f9485526020879052948152606091825230608090815292842085825293909152939052610160526001600160a01b038316610180819052630a96ad3960e01b825282519092630a96ad3992600480820193918290030181865afa1580156100c1573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906100e59190610243565b506101a052506102b8565b5f808080808061012060408051808201909152600d81526c21b7b739b4b232b930ba34b7b760991b602082015290565b8051906020012095506040518060400160405280600381526020016218971b60e91b8152508051906020012094505f6040518060a00160405280606a81526020016104c6606a913990505f6040518060c001604052806084815260200161031c6084913990505f60405180610100016040528060d481526020016103f260d4913990506040518060800160405280605281526020016103a06052913980519060200120965082805190602001209550818051906020012094505f8183856040516020016101ef93929190610292565b60405160208183030381529060405290508080519060200120945050505050909192939495565b5f60208284031215610226575f80fd5b81516001600160a01b038116811461023c575f80fd5b9392505050565b5f8060408385031215610254575f80fd5b505080516020909101519092909150565b5f81515f5b81811015610284576020818501810151868301520161026a565b505f93019283525090919050565b5f6102af6102a96102a38488610265565b86610265565b84610265565b95945050505050565b60805160a05160c05160e05161010051610120516101405161016051610180516101a05160156103075f395f50505f50505f50505f50505f50505f50505f50505f50505f50505f505060155ff3fe60806040525f80fdfea164736f6c6343000818000a436f6e73696465726174696f6e4974656d2875696e7438206974656d547970652c6164647265737320746f6b656e2c75696e74323536206964656e7469666965724f7243726974657269612c75696e74323536207374617274416d6f756e742c75696e7432353620656e64416d6f756e742c6164647265737320726563697069656e7429454950373132446f6d61696e28737472696e67206e616d652c737472696e672076657273696f6e2c75696e7432353620636861696e49642c6164647265737320766572696679696e67436f6e7472616374294f72646572436f6d706f6e656e74732861646472657373206f6666657265722c61646472657373207a6f6e652c4f666665724974656d5b5d206f666665722c436f6e73696465726174696f6e4974656d5b5d20636f6e73696465726174696f6e2c75696e7438206f72646572547970652c75696e7432353620737461727454696d652c75696e7432353620656e6454696d652c62797465733332207a6f6e65486173682c75696e743235362073616c742c6279746573333220636f6e647569744b65792c75696e7432353620636f756e746572294f666665724974656d2875696e7438206974656d547970652c6164647265737320746f6b656e2c75696e74323536206964656e7469666965724f7243726974657269612c75696e74323536207374617274416d6f756e742c75696e7432353620656e64416d6f756e7429", + "deployedBytecode": "0x60806040525f80fdfea164736f6c6343000818000a", + "linkReferences": {}, + "deployedLinkReferences": {} +} diff --git a/artifacts/ConsiderationEventsAndErrors.json b/artifacts/ConsiderationEventsAndErrors.json new file mode 100644 index 00000000..0d359056 --- /dev/null +++ b/artifacts/ConsiderationEventsAndErrors.json @@ -0,0 +1,464 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "ConsiderationEventsAndErrors", + "sourceName": "seaport-types/src/interfaces/ConsiderationEventsAndErrors.sol", + "abi": [ + { + "inputs": [], + "name": "BadFraction", + "type": "error" + }, + { + "inputs": [], + "name": "CannotCancelOrder", + "type": "error" + }, + { + "inputs": [], + "name": "ConsiderationLengthNotEqualToTotalOriginal", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "considerationIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "shortfallAmount", + "type": "uint256" + } + ], + "name": "ConsiderationNotMet", + "type": "error" + }, + { + "inputs": [], + "name": "InsufficientNativeTokensSupplied", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidBasicOrderParameterEncoding", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "conduit", + "type": "address" + } + ], + "name": "InvalidCallToConduit", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "conduit", + "type": "address" + } + ], + "name": "InvalidConduit", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "InvalidMsgValue", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidNativeOfferItem", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + } + ], + "name": "InvalidTime", + "type": "error" + }, + { + "inputs": [], + "name": "MissingOriginalConsiderationItems", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "NativeTokenTransferGenericFailure", + "type": "error" + }, + { + "inputs": [], + "name": "NoSpecifiedOrdersAvailable", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "OrderAlreadyFilled", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "OrderIsCancelled", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "OrderPartiallyFilled", + "type": "error" + }, + { + "inputs": [], + "name": "PartialFillsNotEnabledForOrder", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint256", + "name": "newCounter", + "type": "uint256" + }, + { + "indexed": true, + "internalType": "address", + "name": "offerer", + "type": "address" + } + ], + "name": "CounterIncremented", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "zone", + "type": "address" + } + ], + "name": "OrderCancelled", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "indexed": false, + "internalType": "struct SpentItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "indexed": false, + "internalType": "struct ReceivedItem[]", + "name": "consideration", + "type": "tuple[]" + } + ], + "name": "OrderFulfilled", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + }, + { + "components": [ + { + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + } + ], + "internalType": "struct OfferItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct ConsiderationItem[]", + "name": "consideration", + "type": "tuple[]" + }, + { + "internalType": "enum OrderType", + "name": "orderType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "zoneHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "salt", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "totalOriginalConsiderationItems", + "type": "uint256" + } + ], + "indexed": false, + "internalType": "struct OrderParameters", + "name": "orderParameters", + "type": "tuple" + } + ], + "name": "OrderValidated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32[]", + "name": "orderHashes", + "type": "bytes32[]" + } + ], + "name": "OrdersMatched", + "type": "event" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x", + "linkReferences": {}, + "deployedLinkReferences": {} +} diff --git a/artifacts/ConsiderationInterface.json b/artifacts/ConsiderationInterface.json new file mode 100644 index 00000000..57cca64b --- /dev/null +++ b/artifacts/ConsiderationInterface.json @@ -0,0 +1,2199 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "ConsiderationInterface", + "sourceName": "seaport-types/src/interfaces/ConsiderationInterface.sol", + "abi": [ + { + "inputs": [ + { + "components": [ + { + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + } + ], + "internalType": "struct OfferItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct ConsiderationItem[]", + "name": "consideration", + "type": "tuple[]" + }, + { + "internalType": "enum OrderType", + "name": "orderType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "zoneHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "salt", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "counter", + "type": "uint256" + } + ], + "internalType": "struct OrderComponents[]", + "name": "orders", + "type": "tuple[]" + } + ], + "name": "cancel", + "outputs": [ + { + "internalType": "bool", + "name": "cancelled", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "components": [ + { + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + } + ], + "internalType": "struct OfferItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct ConsiderationItem[]", + "name": "consideration", + "type": "tuple[]" + }, + { + "internalType": "enum OrderType", + "name": "orderType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "zoneHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "salt", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "totalOriginalConsiderationItems", + "type": "uint256" + } + ], + "internalType": "struct OrderParameters", + "name": "parameters", + "type": "tuple" + }, + { + "internalType": "uint120", + "name": "numerator", + "type": "uint120" + }, + { + "internalType": "uint120", + "name": "denominator", + "type": "uint120" + }, + { + "internalType": "bytes", + "name": "signature", + "type": "bytes" + }, + { + "internalType": "bytes", + "name": "extraData", + "type": "bytes" + } + ], + "internalType": "struct AdvancedOrder", + "name": "advancedOrder", + "type": "tuple" + }, + { + "components": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "enum Side", + "name": "side", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "index", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "bytes32[]", + "name": "criteriaProof", + "type": "bytes32[]" + } + ], + "internalType": "struct CriteriaResolver[]", + "name": "criteriaResolvers", + "type": "tuple[]" + }, + { + "internalType": "bytes32", + "name": "fulfillerConduitKey", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "recipient", + "type": "address" + } + ], + "name": "fulfillAdvancedOrder", + "outputs": [ + { + "internalType": "bool", + "name": "fulfilled", + "type": "bool" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "components": [ + { + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + } + ], + "internalType": "struct OfferItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct ConsiderationItem[]", + "name": "consideration", + "type": "tuple[]" + }, + { + "internalType": "enum OrderType", + "name": "orderType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "zoneHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "salt", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "totalOriginalConsiderationItems", + "type": "uint256" + } + ], + "internalType": "struct OrderParameters", + "name": "parameters", + "type": "tuple" + }, + { + "internalType": "uint120", + "name": "numerator", + "type": "uint120" + }, + { + "internalType": "uint120", + "name": "denominator", + "type": "uint120" + }, + { + "internalType": "bytes", + "name": "signature", + "type": "bytes" + }, + { + "internalType": "bytes", + "name": "extraData", + "type": "bytes" + } + ], + "internalType": "struct AdvancedOrder[]", + "name": "advancedOrders", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "enum Side", + "name": "side", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "index", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "bytes32[]", + "name": "criteriaProof", + "type": "bytes32[]" + } + ], + "internalType": "struct CriteriaResolver[]", + "name": "criteriaResolvers", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "itemIndex", + "type": "uint256" + } + ], + "internalType": "struct FulfillmentComponent[][]", + "name": "offerFulfillments", + "type": "tuple[][]" + }, + { + "components": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "itemIndex", + "type": "uint256" + } + ], + "internalType": "struct FulfillmentComponent[][]", + "name": "considerationFulfillments", + "type": "tuple[][]" + }, + { + "internalType": "bytes32", + "name": "fulfillerConduitKey", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "maximumFulfilled", + "type": "uint256" + } + ], + "name": "fulfillAvailableAdvancedOrders", + "outputs": [ + { + "internalType": "bool[]", + "name": "availableOrders", + "type": "bool[]" + }, + { + "components": [ + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct ReceivedItem", + "name": "item", + "type": "tuple" + }, + { + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + } + ], + "internalType": "struct Execution[]", + "name": "executions", + "type": "tuple[]" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "components": [ + { + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + } + ], + "internalType": "struct OfferItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct ConsiderationItem[]", + "name": "consideration", + "type": "tuple[]" + }, + { + "internalType": "enum OrderType", + "name": "orderType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "zoneHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "salt", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "totalOriginalConsiderationItems", + "type": "uint256" + } + ], + "internalType": "struct OrderParameters", + "name": "parameters", + "type": "tuple" + }, + { + "internalType": "bytes", + "name": "signature", + "type": "bytes" + } + ], + "internalType": "struct Order[]", + "name": "orders", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "itemIndex", + "type": "uint256" + } + ], + "internalType": "struct FulfillmentComponent[][]", + "name": "offerFulfillments", + "type": "tuple[][]" + }, + { + "components": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "itemIndex", + "type": "uint256" + } + ], + "internalType": "struct FulfillmentComponent[][]", + "name": "considerationFulfillments", + "type": "tuple[][]" + }, + { + "internalType": "bytes32", + "name": "fulfillerConduitKey", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "maximumFulfilled", + "type": "uint256" + } + ], + "name": "fulfillAvailableOrders", + "outputs": [ + { + "internalType": "bool[]", + "name": "availableOrders", + "type": "bool[]" + }, + { + "components": [ + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct ReceivedItem", + "name": "item", + "type": "tuple" + }, + { + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + } + ], + "internalType": "struct Execution[]", + "name": "executions", + "type": "tuple[]" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "internalType": "address", + "name": "considerationToken", + "type": "address" + }, + { + "internalType": "uint256", + "name": "considerationIdentifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "considerationAmount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "offerer", + "type": "address" + }, + { + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "internalType": "address", + "name": "offerToken", + "type": "address" + }, + { + "internalType": "uint256", + "name": "offerIdentifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "offerAmount", + "type": "uint256" + }, + { + "internalType": "enum BasicOrderType", + "name": "basicOrderType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "zoneHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "salt", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "offererConduitKey", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "fulfillerConduitKey", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "totalOriginalAdditionalRecipients", + "type": "uint256" + }, + { + "components": [ + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct AdditionalRecipient[]", + "name": "additionalRecipients", + "type": "tuple[]" + }, + { + "internalType": "bytes", + "name": "signature", + "type": "bytes" + } + ], + "internalType": "struct BasicOrderParameters", + "name": "parameters", + "type": "tuple" + } + ], + "name": "fulfillBasicOrder", + "outputs": [ + { + "internalType": "bool", + "name": "fulfilled", + "type": "bool" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "internalType": "address", + "name": "considerationToken", + "type": "address" + }, + { + "internalType": "uint256", + "name": "considerationIdentifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "considerationAmount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "offerer", + "type": "address" + }, + { + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "internalType": "address", + "name": "offerToken", + "type": "address" + }, + { + "internalType": "uint256", + "name": "offerIdentifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "offerAmount", + "type": "uint256" + }, + { + "internalType": "enum BasicOrderType", + "name": "basicOrderType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "zoneHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "salt", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "offererConduitKey", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "fulfillerConduitKey", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "totalOriginalAdditionalRecipients", + "type": "uint256" + }, + { + "components": [ + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct AdditionalRecipient[]", + "name": "additionalRecipients", + "type": "tuple[]" + }, + { + "internalType": "bytes", + "name": "signature", + "type": "bytes" + } + ], + "internalType": "struct BasicOrderParameters", + "name": "parameters", + "type": "tuple" + } + ], + "name": "fulfillBasicOrder_efficient_6GL6yc", + "outputs": [ + { + "internalType": "bool", + "name": "fulfilled", + "type": "bool" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "components": [ + { + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + } + ], + "internalType": "struct OfferItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct ConsiderationItem[]", + "name": "consideration", + "type": "tuple[]" + }, + { + "internalType": "enum OrderType", + "name": "orderType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "zoneHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "salt", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "totalOriginalConsiderationItems", + "type": "uint256" + } + ], + "internalType": "struct OrderParameters", + "name": "parameters", + "type": "tuple" + }, + { + "internalType": "bytes", + "name": "signature", + "type": "bytes" + } + ], + "internalType": "struct Order", + "name": "order", + "type": "tuple" + }, + { + "internalType": "bytes32", + "name": "fulfillerConduitKey", + "type": "bytes32" + } + ], + "name": "fulfillOrder", + "outputs": [ + { + "internalType": "bool", + "name": "fulfilled", + "type": "bool" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "contractOfferer", + "type": "address" + } + ], + "name": "getContractOffererNonce", + "outputs": [ + { + "internalType": "uint256", + "name": "nonce", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "offerer", + "type": "address" + } + ], + "name": "getCounter", + "outputs": [ + { + "internalType": "uint256", + "name": "counter", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + } + ], + "internalType": "struct OfferItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct ConsiderationItem[]", + "name": "consideration", + "type": "tuple[]" + }, + { + "internalType": "enum OrderType", + "name": "orderType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "zoneHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "salt", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "counter", + "type": "uint256" + } + ], + "internalType": "struct OrderComponents", + "name": "order", + "type": "tuple" + } + ], + "name": "getOrderHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "getOrderStatus", + "outputs": [ + { + "internalType": "bool", + "name": "isValidated", + "type": "bool" + }, + { + "internalType": "bool", + "name": "isCancelled", + "type": "bool" + }, + { + "internalType": "uint256", + "name": "totalFilled", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "totalSize", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "incrementCounter", + "outputs": [ + { + "internalType": "uint256", + "name": "newCounter", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "information", + "outputs": [ + { + "internalType": "string", + "name": "version", + "type": "string" + }, + { + "internalType": "bytes32", + "name": "domainSeparator", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "conduitController", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "components": [ + { + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + } + ], + "internalType": "struct OfferItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct ConsiderationItem[]", + "name": "consideration", + "type": "tuple[]" + }, + { + "internalType": "enum OrderType", + "name": "orderType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "zoneHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "salt", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "totalOriginalConsiderationItems", + "type": "uint256" + } + ], + "internalType": "struct OrderParameters", + "name": "parameters", + "type": "tuple" + }, + { + "internalType": "uint120", + "name": "numerator", + "type": "uint120" + }, + { + "internalType": "uint120", + "name": "denominator", + "type": "uint120" + }, + { + "internalType": "bytes", + "name": "signature", + "type": "bytes" + }, + { + "internalType": "bytes", + "name": "extraData", + "type": "bytes" + } + ], + "internalType": "struct AdvancedOrder[]", + "name": "orders", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "enum Side", + "name": "side", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "index", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "bytes32[]", + "name": "criteriaProof", + "type": "bytes32[]" + } + ], + "internalType": "struct CriteriaResolver[]", + "name": "criteriaResolvers", + "type": "tuple[]" + }, + { + "components": [ + { + "components": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "itemIndex", + "type": "uint256" + } + ], + "internalType": "struct FulfillmentComponent[]", + "name": "offerComponents", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "itemIndex", + "type": "uint256" + } + ], + "internalType": "struct FulfillmentComponent[]", + "name": "considerationComponents", + "type": "tuple[]" + } + ], + "internalType": "struct Fulfillment[]", + "name": "fulfillments", + "type": "tuple[]" + }, + { + "internalType": "address", + "name": "recipient", + "type": "address" + } + ], + "name": "matchAdvancedOrders", + "outputs": [ + { + "components": [ + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct ReceivedItem", + "name": "item", + "type": "tuple" + }, + { + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + } + ], + "internalType": "struct Execution[]", + "name": "executions", + "type": "tuple[]" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "components": [ + { + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + } + ], + "internalType": "struct OfferItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct ConsiderationItem[]", + "name": "consideration", + "type": "tuple[]" + }, + { + "internalType": "enum OrderType", + "name": "orderType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "zoneHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "salt", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "totalOriginalConsiderationItems", + "type": "uint256" + } + ], + "internalType": "struct OrderParameters", + "name": "parameters", + "type": "tuple" + }, + { + "internalType": "bytes", + "name": "signature", + "type": "bytes" + } + ], + "internalType": "struct Order[]", + "name": "orders", + "type": "tuple[]" + }, + { + "components": [ + { + "components": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "itemIndex", + "type": "uint256" + } + ], + "internalType": "struct FulfillmentComponent[]", + "name": "offerComponents", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "itemIndex", + "type": "uint256" + } + ], + "internalType": "struct FulfillmentComponent[]", + "name": "considerationComponents", + "type": "tuple[]" + } + ], + "internalType": "struct Fulfillment[]", + "name": "fulfillments", + "type": "tuple[]" + } + ], + "name": "matchOrders", + "outputs": [ + { + "components": [ + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct ReceivedItem", + "name": "item", + "type": "tuple" + }, + { + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + } + ], + "internalType": "struct Execution[]", + "name": "executions", + "type": "tuple[]" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [], + "name": "name", + "outputs": [ + { + "internalType": "string", + "name": "contractName", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "components": [ + { + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + } + ], + "internalType": "struct OfferItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct ConsiderationItem[]", + "name": "consideration", + "type": "tuple[]" + }, + { + "internalType": "enum OrderType", + "name": "orderType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "zoneHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "salt", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "totalOriginalConsiderationItems", + "type": "uint256" + } + ], + "internalType": "struct OrderParameters", + "name": "parameters", + "type": "tuple" + }, + { + "internalType": "bytes", + "name": "signature", + "type": "bytes" + } + ], + "internalType": "struct Order[]", + "name": "orders", + "type": "tuple[]" + } + ], + "name": "validate", + "outputs": [ + { + "internalType": "bool", + "name": "validated", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x", + "linkReferences": {}, + "deployedLinkReferences": {} +} diff --git a/artifacts/Controllable.json b/artifacts/Controllable.json index 8c161bf2..1ea956da 100644 --- a/artifacts/Controllable.json +++ b/artifacts/Controllable.json @@ -112,8 +112,8 @@ "type": "function" } ], - "bytecode": "0x608060405234801561001057600080fd5b5061001a3361001f565b61006f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6103098061007e6000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c8063715018a61461005c5780638da5cb5b14610066578063da8c229e14610086578063e0dba60f146100b9578063f2fde38b146100cc575b600080fd5b6100646100df565b005b6000546040516001600160a01b0390911681526020015b60405180910390f35b6100a961009436600461029e565b60016020526000908152604090205460ff1681565b604051901515815260200161007d565b6100646100c73660046102c0565b6100f3565b6100646100da36600461029e565b61015a565b6100e76101d8565b6100f16000610232565b565b6100fb6101d8565b6001600160a01b038216600081815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b6101626101d8565b6001600160a01b0381166101cc5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b6101d581610232565b50565b6000546001600160a01b031633146100f15760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016101c3565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80356001600160a01b038116811461029957600080fd5b919050565b6000602082840312156102b057600080fd5b6102b982610282565b9392505050565b600080604083850312156102d357600080fd5b6102dc83610282565b9150602083013580151581146102f157600080fd5b80915050925092905056fea164736f6c6343000811000a", - "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100575760003560e01c8063715018a61461005c5780638da5cb5b14610066578063da8c229e14610086578063e0dba60f146100b9578063f2fde38b146100cc575b600080fd5b6100646100df565b005b6000546040516001600160a01b0390911681526020015b60405180910390f35b6100a961009436600461029e565b60016020526000908152604090205460ff1681565b604051901515815260200161007d565b6100646100c73660046102c0565b6100f3565b6100646100da36600461029e565b61015a565b6100e76101d8565b6100f16000610232565b565b6100fb6101d8565b6001600160a01b038216600081815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b6101626101d8565b6001600160a01b0381166101cc5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b6101d581610232565b50565b6000546001600160a01b031633146100f15760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016101c3565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80356001600160a01b038116811461029957600080fd5b919050565b6000602082840312156102b057600080fd5b6102b982610282565b9392505050565b600080604083850312156102d357600080fd5b6102dc83610282565b9150602083013580151581146102f157600080fd5b80915050925092905056fea164736f6c6343000811000a", + "bytecode": "0x608060405234801561000f575f80fd5b506100193361001e565b61006d565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6102fa8061007a5f395ff3fe608060405234801561000f575f80fd5b5060043610610055575f3560e01c8063715018a6146100595780638da5cb5b14610063578063da8c229e14610082578063e0dba60f146100b4578063f2fde38b146100c7575b5f80fd5b6100616100da565b005b5f546040516001600160a01b0390911681526020015b60405180910390f35b6100a4610090366004610294565b60016020525f908152604090205460ff1681565b6040519015158152602001610079565b6100616100c23660046102b4565b6100ed565b6100616100d5366004610294565b610153565b6100e26101d1565b6100eb5f61022a565b565b6100f56101d1565b6001600160a01b0382165f81815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b61015b6101d1565b6001600160a01b0381166101c55760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b6101ce8161022a565b50565b5f546001600160a01b031633146100eb5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016101bc565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80356001600160a01b038116811461028f575f80fd5b919050565b5f602082840312156102a4575f80fd5b6102ad82610279565b9392505050565b5f80604083850312156102c5575f80fd5b6102ce83610279565b9150602083013580151581146102e2575f80fd5b80915050925092905056fea164736f6c6343000818000a", + "deployedBytecode": "0x608060405234801561000f575f80fd5b5060043610610055575f3560e01c8063715018a6146100595780638da5cb5b14610063578063da8c229e14610082578063e0dba60f146100b4578063f2fde38b146100c7575b5f80fd5b6100616100da565b005b5f546040516001600160a01b0390911681526020015b60405180910390f35b6100a4610090366004610294565b60016020525f908152604090205460ff1681565b6040519015158152602001610079565b6100616100c23660046102b4565b6100ed565b6100616100d5366004610294565b610153565b6100e26101d1565b6100eb5f61022a565b565b6100f56101d1565b6001600160a01b0382165f81815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b61015b6101d1565b6001600160a01b0381166101c55760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b6101ce8161022a565b50565b5f546001600160a01b031633146100eb5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016101bc565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80356001600160a01b038116811461028f575f80fd5b919050565b5f602082840312156102a4575f80fd5b6102ad82610279565b9392505050565b5f80604083850312156102c5575f80fd5b6102ce83610279565b9150602083013580151581146102e2575f80fd5b80915050925092905056fea164736f6c6343000818000a", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/artifacts/CounterManager.json b/artifacts/CounterManager.json new file mode 100644 index 00000000..beb9f1d3 --- /dev/null +++ b/artifacts/CounterManager.json @@ -0,0 +1,491 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "CounterManager", + "sourceName": "seaport-core/src/lib/CounterManager.sol", + "abi": [ + { + "inputs": [], + "name": "BadFraction", + "type": "error" + }, + { + "inputs": [], + "name": "CannotCancelOrder", + "type": "error" + }, + { + "inputs": [], + "name": "ConsiderationLengthNotEqualToTotalOriginal", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "considerationIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "shortfallAmount", + "type": "uint256" + } + ], + "name": "ConsiderationNotMet", + "type": "error" + }, + { + "inputs": [], + "name": "InsufficientNativeTokensSupplied", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidBasicOrderParameterEncoding", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "conduit", + "type": "address" + } + ], + "name": "InvalidCallToConduit", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "conduit", + "type": "address" + } + ], + "name": "InvalidConduit", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "InvalidMsgValue", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidNativeOfferItem", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + } + ], + "name": "InvalidTime", + "type": "error" + }, + { + "inputs": [], + "name": "MissingOriginalConsiderationItems", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "NativeTokenTransferGenericFailure", + "type": "error" + }, + { + "inputs": [], + "name": "NoReentrantCalls", + "type": "error" + }, + { + "inputs": [], + "name": "NoSpecifiedOrdersAvailable", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "OrderAlreadyFilled", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "OrderIsCancelled", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "OrderPartiallyFilled", + "type": "error" + }, + { + "inputs": [], + "name": "PartialFillsNotEnabledForOrder", + "type": "error" + }, + { + "inputs": [], + "name": "TStoreAlreadyActivated", + "type": "error" + }, + { + "inputs": [], + "name": "TStoreNotSupported", + "type": "error" + }, + { + "inputs": [], + "name": "TloadTestContractDeploymentFailed", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint256", + "name": "newCounter", + "type": "uint256" + }, + { + "indexed": true, + "internalType": "address", + "name": "offerer", + "type": "address" + } + ], + "name": "CounterIncremented", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "zone", + "type": "address" + } + ], + "name": "OrderCancelled", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "indexed": false, + "internalType": "struct SpentItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "indexed": false, + "internalType": "struct ReceivedItem[]", + "name": "consideration", + "type": "tuple[]" + } + ], + "name": "OrderFulfilled", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + }, + { + "components": [ + { + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + } + ], + "internalType": "struct OfferItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct ConsiderationItem[]", + "name": "consideration", + "type": "tuple[]" + }, + { + "internalType": "enum OrderType", + "name": "orderType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "zoneHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "salt", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "totalOriginalConsiderationItems", + "type": "uint256" + } + ], + "indexed": false, + "internalType": "struct OrderParameters", + "name": "orderParameters", + "type": "tuple" + } + ], + "name": "OrderValidated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32[]", + "name": "orderHashes", + "type": "bytes32[]" + } + ], + "name": "OrdersMatched", + "type": "event" + }, + { + "inputs": [], + "name": "__activateTstore", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x60c060405234801561000f575f80fd5b505f610019610076565b90506001600160a01b03811661004257604051632aea588760e01b815260040160405180910390fd5b5f61004c8261008f565b8015156080526001600160a01b03831660a05290508061006f57600163929eee14555b505061010c565b5f696002601e613d5c3d52f35f52600a60165ff0905090565b5f816001600160a01b0316600a5a6100a791906100ed565b6040515f8181818686fa925050503d805f81146100df576040519150601f19603f3d011682016040523d82523d5f602084013e6100e4565b606091505b50909392505050565b5f8261010757634e487b7160e01b5f52601260045260245ffd5b500490565b60805160a05161016261012b5f395f608d01525f604201526101625ff3fe608060405234801561000f575f80fd5b5060043610610029575f3560e01c80637423eb3c1461002d575b5f80fd5b610035610037565b005b63929eee14546001147f00000000000000000000000000000000000000000000000000000000000000008061006a575080155b1561008857604051630f45b98b60e41b815260040160405180910390fd5b6100b17f00000000000000000000000000000000000000000000000000000000000000006100d8565b6100ce576040516370a4078f60e01b815260040160405180910390fd5b5f63929eee145550565b5f816001600160a01b0316600a5a6100f09190610136565b6040515f8181818686fa925050503d805f8114610128576040519150601f19603f3d011682016040523d82523d5f602084013e61012d565b606091505b50909392505050565b5f8261015057634e487b7160e01b5f52601260045260245ffd5b50049056fea164736f6c6343000818000a", + "deployedBytecode": "0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c80637423eb3c1461002d575b5f80fd5b610035610037565b005b63929eee14546001147f00000000000000000000000000000000000000000000000000000000000000008061006a575080155b1561008857604051630f45b98b60e41b815260040160405180910390fd5b6100b17f00000000000000000000000000000000000000000000000000000000000000006100d8565b6100ce576040516370a4078f60e01b815260040160405180910390fd5b5f63929eee145550565b5f816001600160a01b0316600a5a6100f09190610136565b6040515f8181818686fa925050503d805f8114610128576040519150601f19603f3d011682016040523d82523d5f602084013e61012d565b606091505b50909392505050565b5f8261015057634e487b7160e01b5f52601260045260245ffd5b50049056fea164736f6c6343000818000a", + "linkReferences": {}, + "deployedLinkReferences": {} +} diff --git a/artifacts/CriteriaResolution.json b/artifacts/CriteriaResolution.json new file mode 100644 index 00000000..f1ee7eaa --- /dev/null +++ b/artifacts/CriteriaResolution.json @@ -0,0 +1,74 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "CriteriaResolution", + "sourceName": "seaport-core/src/lib/CriteriaResolution.sol", + "abi": [ + { + "inputs": [], + "name": "ConsiderationCriteriaResolverOutOfRange", + "type": "error" + }, + { + "inputs": [], + "name": "CriteriaNotEnabledForItem", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidProof", + "type": "error" + }, + { + "inputs": [], + "name": "OfferCriteriaResolverOutOfRange", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "enum Side", + "name": "side", + "type": "uint8" + } + ], + "name": "OrderCriteriaResolverOutOfRange", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "considerationIndex", + "type": "uint256" + } + ], + "name": "UnresolvedConsiderationCriteria", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "offerIndex", + "type": "uint256" + } + ], + "name": "UnresolvedOfferCriteria", + "type": "error" + } + ], + "bytecode": "0x6080604052348015600e575f80fd5b50601580601a5f395ff3fe60806040525f80fdfea164736f6c6343000818000a", + "deployedBytecode": "0x60806040525f80fdfea164736f6c6343000818000a", + "linkReferences": {}, + "deployedLinkReferences": {} +} diff --git a/artifacts/CriteriaResolutionErrors.json b/artifacts/CriteriaResolutionErrors.json new file mode 100644 index 00000000..a638c613 --- /dev/null +++ b/artifacts/CriteriaResolutionErrors.json @@ -0,0 +1,74 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "CriteriaResolutionErrors", + "sourceName": "seaport-types/src/interfaces/CriteriaResolutionErrors.sol", + "abi": [ + { + "inputs": [], + "name": "ConsiderationCriteriaResolverOutOfRange", + "type": "error" + }, + { + "inputs": [], + "name": "CriteriaNotEnabledForItem", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidProof", + "type": "error" + }, + { + "inputs": [], + "name": "OfferCriteriaResolverOutOfRange", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "enum Side", + "name": "side", + "type": "uint8" + } + ], + "name": "OrderCriteriaResolverOutOfRange", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "considerationIndex", + "type": "uint256" + } + ], + "name": "UnresolvedConsiderationCriteria", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "offerIndex", + "type": "uint256" + } + ], + "name": "UnresolvedOfferCriteria", + "type": "error" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x", + "linkReferences": {}, + "deployedLinkReferences": {} +} diff --git a/artifacts/DNSRegistrar.json b/artifacts/DNSRegistrar.json index c07b313d..463fc72d 100644 --- a/artifacts/DNSRegistrar.json +++ b/artifacts/DNSRegistrar.json @@ -258,8 +258,8 @@ "type": "function" } ], - "bytecode": "0x60806040523480156200001157600080fd5b5060405162001f1438038062001f14833981016040819052620000349162000118565b600080546001600160a01b0319166001600160a01b0385169081179091556040519081527fb3eacd0e351fafdfefdec84e1cd19679b38dbcd63ea7c2c24da17fd2bc3b3c0e9060200160405180910390a1600280546001600160a01b0319166001600160a01b0384169081179091556040519081527f9176b7f47e4504df5e5516c99d90d82ac7cbd49cc77e7f22ba2ac2f2e3a3eba89060200160405180910390a1600180546001600160a01b0319166001600160a01b0392909216919091179055506200016c9050565b6001600160a01b03811681146200011557600080fd5b50565b6000806000606084860312156200012e57600080fd5b83516200013b81620000ff565b60208501519093506200014e81620000ff565b60408501519092506200016181620000ff565b809150509250925092565b611d98806200017c6000396000f3fe608060405234801561001057600080fd5b50600436106100935760003560e01c80633f15457f116100665780633f15457f146101135780637adbf973146101265780637dc0d1d0146101395780638bbedf751461014c578063be27b22c1461015f57600080fd5b806301ffc9a7146100985780631ecfc411146100c0578063224199c2146100d557806330349ebe146100e8575b600080fd5b6100ab6100a6366004611649565b610172565b60405190151581526020015b60405180910390f35b6100d36100ce36600461168b565b6101a9565b005b6100d36100e3366004611890565b6102eb565b6002546100fb906001600160a01b031681565b6040516001600160a01b0390911681526020016100b7565b6001546100fb906001600160a01b031681565b6100d361013436600461168b565b610668565b6000546100fb906001600160a01b031681565b6100d361015a366004611940565b6107a1565b6100d361016d3660046119c8565b61082b565b60006001600160e01b031982166301ffc9a760e01b14806101a357506001600160e01b031982166317d8f49b60e01b145b92915050565b6001546040516302571be360e01b8152600060048201819052916001600160a01b0316906302571be390602401602060405180830381865afa1580156101f3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102179190611a2c565b90506000816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610259573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061027d9190611a2c565b9050336001600160a01b0382161461029457600080fd5b600280546001600160a01b0319166001600160a01b0385169081179091556040519081527f9176b7f47e4504df5e5516c99d90d82ac7cbd49cc77e7f22ba2ac2f2e3a3eba8906020015b60405180910390a1505050565b6000546040516321ae60b160e11b81526001600160a01b039091169063435cc1629061031d9087908790600401611a99565b6000604051808303816000875af115801561033c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526103649190810190611b32565b9250600080600061037588876108ca565b91945092509050336001600160a01b038216146103ef5760405162461bcd60e51b815260206004820152602d60248201527f4f6e6c79206f776e65722063616e2063616c6c2070726f7665416e64436c616960448201526c36abb4ba342932b9b7b63b32b960991b60648201526084015b60405180910390fd5b6001600160a01b038416156105e1576001600160a01b0385166104635760405162461bcd60e51b815260206004820152602660248201527f43616e6e6f74207365742061646472206966207265736f6c766572206973206e6044820152651bdd081cd95d60d21b60648201526084016103e6565b6001546040516305ef2c7f60e41b815260048101859052602481018490523060448201526001600160a01b0387811660648301526000608483015290911690635ef2c7f09060a401600060405180830381600087803b1580156104c557600080fd5b505af11580156104d9573d6000803e3d6000fd5b50505050600083836040516020016104fb929190918252602082015260400190565b60408051808303601f1901815290829052805160209091012062d5fa2b60e81b8252600482018190526001600160a01b03878116602484015290925087169063d5fa2b0090604401600060405180830381600087803b15801561055d57600080fd5b505af1158015610571573d6000803e3d6000fd5b5050600154604051635b0fc9c360e01b8152600481018590526001600160a01b0386811660248301529091169250635b0fc9c39150604401600060405180830381600087803b1580156105c357600080fd5b505af11580156105d7573d6000803e3d6000fd5b505050505061065e565b6001546040516305ef2c7f60e41b815260048101859052602481018490526001600160a01b03838116604483015287811660648301526000608483015290911690635ef2c7f09060a401600060405180830381600087803b15801561064557600080fd5b505af1158015610659573d6000803e3d6000fd5b505050505b5050505050505050565b6001546040516302571be360e01b8152600060048201819052916001600160a01b0316906302571be390602401602060405180830381865afa1580156106b2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106d69190611a2c565b90506000816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610718573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061073c9190611a2c565b9050336001600160a01b0382161461075357600080fd5b600080546001600160a01b0319166001600160a01b0385169081179091556040519081527fb3eacd0e351fafdfefdec84e1cd19679b38dbcd63ea7c2c24da17fd2bc3b3c0e906020016102de565b6000546040516321ae60b160e11b81526001600160a01b039091169063435cc162906107d39085908590600401611a99565b6000604051808303816000875af11580156107f2573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261081a9190810190611b32565b9050610826838261082b565b505050565b600080600061083a85856108ca565b6001546040516306ab592360e01b815260048101859052602481018490526001600160a01b03808416604483015294975092955090935091909116906306ab5923906064016020604051808303816000875af115801561089e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108c29190611ba9565b505050505050565b60008080806108d98682610a85565b60ff1690506108ea86600183610aa9565b9250600061091d6108fc836001611bd8565b6001848a5161090b9190611beb565b6109159190611beb565b899190610acd565b6002546040516327c482cf60e11b81529192506001600160a01b031690634f89059e9061094e908490600401611bfe565b602060405180830381865afa15801561096b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061098f9190611c11565b6109e75760405162461bcd60e51b815260206004820152602360248201527f506172656e74206e616d65206d7573742062652061207075626c6963207375666044820152620ccd2f60eb1b60648201526084016103e6565b6109f2816000610b4f565b600054909550610a0c906001600160a01b03168888610e40565b5060408051602081018890529081018690529093506001600160a01b03841690606001604051602081830303815290604052805190602001207fa2e66ce20e6fb2c4f61339c364ad79f15160cf5307230c8bc4d628adbca2ba3989604051610a749190611bfe565b60405180910390a350509250925092565b6000828281518110610a9957610a99611c33565b016020015160f81c905092915050565b8251600090610ab88385611bd8565b1115610ac357600080fd5b5091016020012090565b8251606090610adc8385611bd8565b1115610ae757600080fd5b60008267ffffffffffffffff811115610b0257610b026116a8565b6040519080825280601f01601f191660200182016040528015610b2c576020820181803683370190505b50905060208082019086860101610b44828287611072565b509095945050505050565b600080610b5c8484610a85565b60ff16905080600003610b735750600090506101a3565b6000610b9385610b838487611bd8565b610b8e906001611bd8565b610b4f565b90506000610bad610ba5866001611bd8565b879085610aa9565b604080516020810185905290810182905290915060600160408051808303601f190181529082905280516020909101206001546302571be360e01b8352600483018290529095506000916001600160a01b03909116906302571be390602401602060405180830381865afa158015610c29573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c4d9190611a2c565b90506001600160a01b0381161580610c6d57506001600160a01b03811630145b610ccc5760405162461bcd60e51b815260206004820152602a60248201527f43616e6e6f7420656e61626c652061206e616d65206f776e656420627920736f6044820152696d656f6e6520656c736560b01b60648201526084016103e6565b6001600160a01b0381163014610e365782610db8576001546040516302571be360e01b8152600060048201819052916001600160a01b0316906302571be390602401602060405180830381865afa158015610d2b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d4f9190611a2c565b60405163232e3b3b60e21b8152600481018590523060248201529091506001600160a01b03821690638cb8ecec90604401600060405180830381600087803b158015610d9a57600080fd5b505af1158015610dae573d6000803e3d6000fd5b5050505050610e36565b6001546040516306ab592360e01b815260048101859052602481018490523060448201526001600160a01b03909116906306ab5923906064016020604051808303816000875af1158015610e10573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e349190611ba9565b505b5050505092915050565b600080610e60604051806040016040528060608152602001600081525090565b610e7885516005610e719190611bd8565b82906110c8565b50604080518082019091526005815264045f656e7360d81b6020820152610ea090829061112d565b50610eab818661112d565b50805160405163021e646f60e21b815260009182916001600160a01b038a169163087991bc91610ee091601091600401611c49565b606060405180830381865afa158015610efd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f219190611c7f565b93509150506bffffffffffffffffffffffff198216158015610f4257508551155b15610f56576000809450945050505061106a565b855160208701206bffffffffffffffffffffffff19838116911614610f7a57600080fd5b6000610f86878261115b565b90505b8051516020820151101561105e57610fb0816080015183610faa9190611cd8565b426111bc565b6110225760405162461bcd60e51b815260206004820152603c60248201527f444e53207265636f7264206973207374616c653b2072656672657368206f722060448201527f64656c657465206974206265666f72652070726f63656564696e672e0000000060648201526084016103e6565b600080611033898460a001516111d5565b92509050811561104e5796506001955061106a945050505050565b505061105981611248565b610f89565b50600080945094505050505b935093915050565b602081106110aa5781518352611089602084611bd8565b9250611096602083611bd8565b91506110a3602082611beb565b9050611072565b905182516020929092036101000a6000190180199091169116179052565b6040805180820190915260608152600060208201526110e8602083611cfc565b15611110576110f8602083611cfc565b611103906020611beb565b61110d9083611bd8565b91505b506020828101829052604080518085526000815290920101905290565b60408051808201909152606081526000602082015261115483846000015151848551611330565b9392505050565b6111a96040518060e001604052806060815260200160008152602001600061ffff168152602001600061ffff168152602001600063ffffffff16815260200160008152602001600081525090565b82815260c081018290526101a381611248565b6000806111c98385611d1e565b60030b12159392505050565b6000805b835183101561123a5760006111ee8585610a85565b60ff1690506111fe600185611bd8565b935060008061120e87878561141a565b92509050811561122657935060019250611241915050565b6112308387611bd8565b95505050506111d9565b5060009050805b9250929050565b60c0810151602082018190528151511161125f5750565b600061127382600001518360200151611476565b82602001516112829190611bd8565b825190915061129190826114d8565b61ffff1660408301526112a5600282611bd8565b82519091506112b490826114d8565b61ffff1660608301526112c8600282611bd8565b82519091506112d79082611500565b63ffffffff1660808301526112ed600482611bd8565b82519091506000906112ff90836114d8565b61ffff169050611310600283611bd8565b60a0840181905291506113238183611bd8565b60c0909301929092525050565b604080518082019091526060815260006020820152825182111561135357600080fd5b60208501516113628386611bd8565b11156113955761139585611385876020015187866113809190611bd8565b61152a565b611390906002611d45565b611541565b6000808651805187602083010193508088870111156113b45787860182525b505050602084015b602084106113f457805182526113d3602083611bd8565b91506113e0602082611bd8565b90506113ed602085611beb565b93506113bc565b51815160001960208690036101000a019081169019919091161790525083949350505050565b6000806114278585611500565b63ffffffff1663613d3078146114425750600090508061106a565b602c8310156114565750600090508061106a565b61146a85611465866004611bd8565b61155e565b91509150935093915050565b6000815b8351811061148a5761148a611d5c565b60006114968583610a85565b60ff1690506114a6816001611bd8565b6114b09083611bd8565b9150806000036114c057506114c6565b5061147a565b6114d08382611beb565b949350505050565b81516000906114e8836002611bd8565b11156114f357600080fd5b50016002015161ffff1690565b8151600090611510836004611bd8565b111561151b57600080fd5b50016004015163ffffffff1690565b60008183111561153b5750816101a3565b50919050565b815161154d83836110c8565b50611558838261112d565b50505050565b60008060288385516115709190611beb565b101561158157506000905080611241565b6000835b611590856028611bd8565b81101561163d5760049190911b9060006115aa8783610a85565b60ff169050603081101580156115c05750603a81105b156115d9576115d0603082611beb565b8317925061162a565b604181101580156115ea5750604781105b156115fa576115d0603782611beb565b6061811015801561160b5750606781105b1561161b576115d0605782611beb565b60008094509450505050611241565b508061163581611d72565b915050611585565b50946001945092505050565b60006020828403121561165b57600080fd5b81356001600160e01b03198116811461115457600080fd5b6001600160a01b038116811461168857600080fd5b50565b60006020828403121561169d57600080fd5b813561115481611673565b634e487b7160e01b600052604160045260246000fd5b6040805190810167ffffffffffffffff811182821017156116e1576116e16116a8565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715611710576117106116a8565b604052919050565b600067ffffffffffffffff821115611732576117326116a8565b50601f01601f191660200190565b600082601f83011261175157600080fd5b813561176461175f82611718565b6116e7565b81815284602083860101111561177957600080fd5b816020850160208301376000918101602001919091529392505050565b600082601f8301126117a757600080fd5b8135602067ffffffffffffffff808311156117c4576117c46116a8565b8260051b6117d38382016116e7565b93845285810183019383810190888611156117ed57600080fd5b84880192505b858310156118845782358481111561180b5760008081fd5b88016040818b03601f19018113156118235760008081fd5b61182b6116be565b878301358781111561183d5760008081fd5b61184b8d8a83870101611740565b8252509082013590868211156118615760008081fd5b61186f8c8984860101611740565b818901528452505091840191908401906117f3565b98975050505050505050565b600080600080600060a086880312156118a857600080fd5b853567ffffffffffffffff808211156118c057600080fd5b6118cc89838a01611740565b965060208801359150808211156118e257600080fd5b6118ee89838a01611796565b9550604088013591508082111561190457600080fd5b5061191188828901611740565b935050606086013561192281611673565b9150608086013561193281611673565b809150509295509295909350565b60008060006060848603121561195557600080fd5b833567ffffffffffffffff8082111561196d57600080fd5b61197987838801611740565b9450602086013591508082111561198f57600080fd5b61199b87838801611796565b935060408601359150808211156119b157600080fd5b506119be86828701611740565b9150509250925092565b600080604083850312156119db57600080fd5b823567ffffffffffffffff808211156119f357600080fd5b6119ff86838701611740565b93506020850135915080821115611a1557600080fd5b50611a2285828601611740565b9150509250929050565b600060208284031215611a3e57600080fd5b815161115481611673565b60005b83811015611a64578181015183820152602001611a4c565b50506000910152565b60008151808452611a85816020860160208601611a49565b601f01601f19169290920160200192915050565b6000604080830181845280865180835260608601915060608160051b8701019250602080890160005b83811015611b1257888603605f1901855281518051888852611ae689890182611a6d565b9185015188830389870152919050611afe8183611a6d565b975050509382019390820190600101611ac2565b505086840381880152505050611b288186611a6d565b9695505050505050565b600060208284031215611b4457600080fd5b815167ffffffffffffffff811115611b5b57600080fd5b8201601f81018413611b6c57600080fd5b8051611b7a61175f82611718565b818152856020838501011115611b8f57600080fd5b611ba0826020830160208601611a49565b95945050505050565b600060208284031215611bbb57600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b808201808211156101a3576101a3611bc2565b818103818111156101a3576101a3611bc2565b6020815260006111546020830184611a6d565b600060208284031215611c2357600080fd5b8151801515811461115457600080fd5b634e487b7160e01b600052603260045260246000fd5b61ffff831681526040602082015260006114d06040830184611a6d565b805163ffffffff81168114611c7a57600080fd5b919050565b600080600060608486031215611c9457600080fd5b611c9d84611c66565b9250611cab60208501611c66565b915060408401516bffffffffffffffffffffffff1981168114611ccd57600080fd5b809150509250925092565b63ffffffff818116838216019080821115611cf557611cf5611bc2565b5092915050565b600082611d1957634e487b7160e01b600052601260045260246000fd5b500690565b600382810b9082900b03637fffffff198112637fffffff821317156101a3576101a3611bc2565b80820281158282048414176101a3576101a3611bc2565b634e487b7160e01b600052600160045260246000fd5b600060018201611d8457611d84611bc2565b506001019056fea164736f6c6343000811000a", - "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100935760003560e01c80633f15457f116100665780633f15457f146101135780637adbf973146101265780637dc0d1d0146101395780638bbedf751461014c578063be27b22c1461015f57600080fd5b806301ffc9a7146100985780631ecfc411146100c0578063224199c2146100d557806330349ebe146100e8575b600080fd5b6100ab6100a6366004611649565b610172565b60405190151581526020015b60405180910390f35b6100d36100ce36600461168b565b6101a9565b005b6100d36100e3366004611890565b6102eb565b6002546100fb906001600160a01b031681565b6040516001600160a01b0390911681526020016100b7565b6001546100fb906001600160a01b031681565b6100d361013436600461168b565b610668565b6000546100fb906001600160a01b031681565b6100d361015a366004611940565b6107a1565b6100d361016d3660046119c8565b61082b565b60006001600160e01b031982166301ffc9a760e01b14806101a357506001600160e01b031982166317d8f49b60e01b145b92915050565b6001546040516302571be360e01b8152600060048201819052916001600160a01b0316906302571be390602401602060405180830381865afa1580156101f3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102179190611a2c565b90506000816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610259573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061027d9190611a2c565b9050336001600160a01b0382161461029457600080fd5b600280546001600160a01b0319166001600160a01b0385169081179091556040519081527f9176b7f47e4504df5e5516c99d90d82ac7cbd49cc77e7f22ba2ac2f2e3a3eba8906020015b60405180910390a1505050565b6000546040516321ae60b160e11b81526001600160a01b039091169063435cc1629061031d9087908790600401611a99565b6000604051808303816000875af115801561033c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526103649190810190611b32565b9250600080600061037588876108ca565b91945092509050336001600160a01b038216146103ef5760405162461bcd60e51b815260206004820152602d60248201527f4f6e6c79206f776e65722063616e2063616c6c2070726f7665416e64436c616960448201526c36abb4ba342932b9b7b63b32b960991b60648201526084015b60405180910390fd5b6001600160a01b038416156105e1576001600160a01b0385166104635760405162461bcd60e51b815260206004820152602660248201527f43616e6e6f74207365742061646472206966207265736f6c766572206973206e6044820152651bdd081cd95d60d21b60648201526084016103e6565b6001546040516305ef2c7f60e41b815260048101859052602481018490523060448201526001600160a01b0387811660648301526000608483015290911690635ef2c7f09060a401600060405180830381600087803b1580156104c557600080fd5b505af11580156104d9573d6000803e3d6000fd5b50505050600083836040516020016104fb929190918252602082015260400190565b60408051808303601f1901815290829052805160209091012062d5fa2b60e81b8252600482018190526001600160a01b03878116602484015290925087169063d5fa2b0090604401600060405180830381600087803b15801561055d57600080fd5b505af1158015610571573d6000803e3d6000fd5b5050600154604051635b0fc9c360e01b8152600481018590526001600160a01b0386811660248301529091169250635b0fc9c39150604401600060405180830381600087803b1580156105c357600080fd5b505af11580156105d7573d6000803e3d6000fd5b505050505061065e565b6001546040516305ef2c7f60e41b815260048101859052602481018490526001600160a01b03838116604483015287811660648301526000608483015290911690635ef2c7f09060a401600060405180830381600087803b15801561064557600080fd5b505af1158015610659573d6000803e3d6000fd5b505050505b5050505050505050565b6001546040516302571be360e01b8152600060048201819052916001600160a01b0316906302571be390602401602060405180830381865afa1580156106b2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106d69190611a2c565b90506000816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610718573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061073c9190611a2c565b9050336001600160a01b0382161461075357600080fd5b600080546001600160a01b0319166001600160a01b0385169081179091556040519081527fb3eacd0e351fafdfefdec84e1cd19679b38dbcd63ea7c2c24da17fd2bc3b3c0e906020016102de565b6000546040516321ae60b160e11b81526001600160a01b039091169063435cc162906107d39085908590600401611a99565b6000604051808303816000875af11580156107f2573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261081a9190810190611b32565b9050610826838261082b565b505050565b600080600061083a85856108ca565b6001546040516306ab592360e01b815260048101859052602481018490526001600160a01b03808416604483015294975092955090935091909116906306ab5923906064016020604051808303816000875af115801561089e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108c29190611ba9565b505050505050565b60008080806108d98682610a85565b60ff1690506108ea86600183610aa9565b9250600061091d6108fc836001611bd8565b6001848a5161090b9190611beb565b6109159190611beb565b899190610acd565b6002546040516327c482cf60e11b81529192506001600160a01b031690634f89059e9061094e908490600401611bfe565b602060405180830381865afa15801561096b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061098f9190611c11565b6109e75760405162461bcd60e51b815260206004820152602360248201527f506172656e74206e616d65206d7573742062652061207075626c6963207375666044820152620ccd2f60eb1b60648201526084016103e6565b6109f2816000610b4f565b600054909550610a0c906001600160a01b03168888610e40565b5060408051602081018890529081018690529093506001600160a01b03841690606001604051602081830303815290604052805190602001207fa2e66ce20e6fb2c4f61339c364ad79f15160cf5307230c8bc4d628adbca2ba3989604051610a749190611bfe565b60405180910390a350509250925092565b6000828281518110610a9957610a99611c33565b016020015160f81c905092915050565b8251600090610ab88385611bd8565b1115610ac357600080fd5b5091016020012090565b8251606090610adc8385611bd8565b1115610ae757600080fd5b60008267ffffffffffffffff811115610b0257610b026116a8565b6040519080825280601f01601f191660200182016040528015610b2c576020820181803683370190505b50905060208082019086860101610b44828287611072565b509095945050505050565b600080610b5c8484610a85565b60ff16905080600003610b735750600090506101a3565b6000610b9385610b838487611bd8565b610b8e906001611bd8565b610b4f565b90506000610bad610ba5866001611bd8565b879085610aa9565b604080516020810185905290810182905290915060600160408051808303601f190181529082905280516020909101206001546302571be360e01b8352600483018290529095506000916001600160a01b03909116906302571be390602401602060405180830381865afa158015610c29573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c4d9190611a2c565b90506001600160a01b0381161580610c6d57506001600160a01b03811630145b610ccc5760405162461bcd60e51b815260206004820152602a60248201527f43616e6e6f7420656e61626c652061206e616d65206f776e656420627920736f6044820152696d656f6e6520656c736560b01b60648201526084016103e6565b6001600160a01b0381163014610e365782610db8576001546040516302571be360e01b8152600060048201819052916001600160a01b0316906302571be390602401602060405180830381865afa158015610d2b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d4f9190611a2c565b60405163232e3b3b60e21b8152600481018590523060248201529091506001600160a01b03821690638cb8ecec90604401600060405180830381600087803b158015610d9a57600080fd5b505af1158015610dae573d6000803e3d6000fd5b5050505050610e36565b6001546040516306ab592360e01b815260048101859052602481018490523060448201526001600160a01b03909116906306ab5923906064016020604051808303816000875af1158015610e10573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e349190611ba9565b505b5050505092915050565b600080610e60604051806040016040528060608152602001600081525090565b610e7885516005610e719190611bd8565b82906110c8565b50604080518082019091526005815264045f656e7360d81b6020820152610ea090829061112d565b50610eab818661112d565b50805160405163021e646f60e21b815260009182916001600160a01b038a169163087991bc91610ee091601091600401611c49565b606060405180830381865afa158015610efd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f219190611c7f565b93509150506bffffffffffffffffffffffff198216158015610f4257508551155b15610f56576000809450945050505061106a565b855160208701206bffffffffffffffffffffffff19838116911614610f7a57600080fd5b6000610f86878261115b565b90505b8051516020820151101561105e57610fb0816080015183610faa9190611cd8565b426111bc565b6110225760405162461bcd60e51b815260206004820152603c60248201527f444e53207265636f7264206973207374616c653b2072656672657368206f722060448201527f64656c657465206974206265666f72652070726f63656564696e672e0000000060648201526084016103e6565b600080611033898460a001516111d5565b92509050811561104e5796506001955061106a945050505050565b505061105981611248565b610f89565b50600080945094505050505b935093915050565b602081106110aa5781518352611089602084611bd8565b9250611096602083611bd8565b91506110a3602082611beb565b9050611072565b905182516020929092036101000a6000190180199091169116179052565b6040805180820190915260608152600060208201526110e8602083611cfc565b15611110576110f8602083611cfc565b611103906020611beb565b61110d9083611bd8565b91505b506020828101829052604080518085526000815290920101905290565b60408051808201909152606081526000602082015261115483846000015151848551611330565b9392505050565b6111a96040518060e001604052806060815260200160008152602001600061ffff168152602001600061ffff168152602001600063ffffffff16815260200160008152602001600081525090565b82815260c081018290526101a381611248565b6000806111c98385611d1e565b60030b12159392505050565b6000805b835183101561123a5760006111ee8585610a85565b60ff1690506111fe600185611bd8565b935060008061120e87878561141a565b92509050811561122657935060019250611241915050565b6112308387611bd8565b95505050506111d9565b5060009050805b9250929050565b60c0810151602082018190528151511161125f5750565b600061127382600001518360200151611476565b82602001516112829190611bd8565b825190915061129190826114d8565b61ffff1660408301526112a5600282611bd8565b82519091506112b490826114d8565b61ffff1660608301526112c8600282611bd8565b82519091506112d79082611500565b63ffffffff1660808301526112ed600482611bd8565b82519091506000906112ff90836114d8565b61ffff169050611310600283611bd8565b60a0840181905291506113238183611bd8565b60c0909301929092525050565b604080518082019091526060815260006020820152825182111561135357600080fd5b60208501516113628386611bd8565b11156113955761139585611385876020015187866113809190611bd8565b61152a565b611390906002611d45565b611541565b6000808651805187602083010193508088870111156113b45787860182525b505050602084015b602084106113f457805182526113d3602083611bd8565b91506113e0602082611bd8565b90506113ed602085611beb565b93506113bc565b51815160001960208690036101000a019081169019919091161790525083949350505050565b6000806114278585611500565b63ffffffff1663613d3078146114425750600090508061106a565b602c8310156114565750600090508061106a565b61146a85611465866004611bd8565b61155e565b91509150935093915050565b6000815b8351811061148a5761148a611d5c565b60006114968583610a85565b60ff1690506114a6816001611bd8565b6114b09083611bd8565b9150806000036114c057506114c6565b5061147a565b6114d08382611beb565b949350505050565b81516000906114e8836002611bd8565b11156114f357600080fd5b50016002015161ffff1690565b8151600090611510836004611bd8565b111561151b57600080fd5b50016004015163ffffffff1690565b60008183111561153b5750816101a3565b50919050565b815161154d83836110c8565b50611558838261112d565b50505050565b60008060288385516115709190611beb565b101561158157506000905080611241565b6000835b611590856028611bd8565b81101561163d5760049190911b9060006115aa8783610a85565b60ff169050603081101580156115c05750603a81105b156115d9576115d0603082611beb565b8317925061162a565b604181101580156115ea5750604781105b156115fa576115d0603782611beb565b6061811015801561160b5750606781105b1561161b576115d0605782611beb565b60008094509450505050611241565b508061163581611d72565b915050611585565b50946001945092505050565b60006020828403121561165b57600080fd5b81356001600160e01b03198116811461115457600080fd5b6001600160a01b038116811461168857600080fd5b50565b60006020828403121561169d57600080fd5b813561115481611673565b634e487b7160e01b600052604160045260246000fd5b6040805190810167ffffffffffffffff811182821017156116e1576116e16116a8565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715611710576117106116a8565b604052919050565b600067ffffffffffffffff821115611732576117326116a8565b50601f01601f191660200190565b600082601f83011261175157600080fd5b813561176461175f82611718565b6116e7565b81815284602083860101111561177957600080fd5b816020850160208301376000918101602001919091529392505050565b600082601f8301126117a757600080fd5b8135602067ffffffffffffffff808311156117c4576117c46116a8565b8260051b6117d38382016116e7565b93845285810183019383810190888611156117ed57600080fd5b84880192505b858310156118845782358481111561180b5760008081fd5b88016040818b03601f19018113156118235760008081fd5b61182b6116be565b878301358781111561183d5760008081fd5b61184b8d8a83870101611740565b8252509082013590868211156118615760008081fd5b61186f8c8984860101611740565b818901528452505091840191908401906117f3565b98975050505050505050565b600080600080600060a086880312156118a857600080fd5b853567ffffffffffffffff808211156118c057600080fd5b6118cc89838a01611740565b965060208801359150808211156118e257600080fd5b6118ee89838a01611796565b9550604088013591508082111561190457600080fd5b5061191188828901611740565b935050606086013561192281611673565b9150608086013561193281611673565b809150509295509295909350565b60008060006060848603121561195557600080fd5b833567ffffffffffffffff8082111561196d57600080fd5b61197987838801611740565b9450602086013591508082111561198f57600080fd5b61199b87838801611796565b935060408601359150808211156119b157600080fd5b506119be86828701611740565b9150509250925092565b600080604083850312156119db57600080fd5b823567ffffffffffffffff808211156119f357600080fd5b6119ff86838701611740565b93506020850135915080821115611a1557600080fd5b50611a2285828601611740565b9150509250929050565b600060208284031215611a3e57600080fd5b815161115481611673565b60005b83811015611a64578181015183820152602001611a4c565b50506000910152565b60008151808452611a85816020860160208601611a49565b601f01601f19169290920160200192915050565b6000604080830181845280865180835260608601915060608160051b8701019250602080890160005b83811015611b1257888603605f1901855281518051888852611ae689890182611a6d565b9185015188830389870152919050611afe8183611a6d565b975050509382019390820190600101611ac2565b505086840381880152505050611b288186611a6d565b9695505050505050565b600060208284031215611b4457600080fd5b815167ffffffffffffffff811115611b5b57600080fd5b8201601f81018413611b6c57600080fd5b8051611b7a61175f82611718565b818152856020838501011115611b8f57600080fd5b611ba0826020830160208601611a49565b95945050505050565b600060208284031215611bbb57600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b808201808211156101a3576101a3611bc2565b818103818111156101a3576101a3611bc2565b6020815260006111546020830184611a6d565b600060208284031215611c2357600080fd5b8151801515811461115457600080fd5b634e487b7160e01b600052603260045260246000fd5b61ffff831681526040602082015260006114d06040830184611a6d565b805163ffffffff81168114611c7a57600080fd5b919050565b600080600060608486031215611c9457600080fd5b611c9d84611c66565b9250611cab60208501611c66565b915060408401516bffffffffffffffffffffffff1981168114611ccd57600080fd5b809150509250925092565b63ffffffff818116838216019080821115611cf557611cf5611bc2565b5092915050565b600082611d1957634e487b7160e01b600052601260045260246000fd5b500690565b600382810b9082900b03637fffffff198112637fffffff821317156101a3576101a3611bc2565b80820281158282048414176101a3576101a3611bc2565b634e487b7160e01b600052600160045260246000fd5b600060018201611d8457611d84611bc2565b506001019056fea164736f6c6343000811000a", + "bytecode": "0x608060405234801562000010575f80fd5b5060405162001e1238038062001e12833981016040819052620000339162000115565b5f80546001600160a01b0319166001600160a01b0385169081179091556040519081527fb3eacd0e351fafdfefdec84e1cd19679b38dbcd63ea7c2c24da17fd2bc3b3c0e9060200160405180910390a1600280546001600160a01b0319166001600160a01b0384169081179091556040519081527f9176b7f47e4504df5e5516c99d90d82ac7cbd49cc77e7f22ba2ac2f2e3a3eba89060200160405180910390a1600180546001600160a01b0319166001600160a01b039290921691909117905550620001669050565b6001600160a01b038116811462000112575f80fd5b50565b5f805f6060848603121562000128575f80fd5b83516200013581620000fd565b60208501519093506200014881620000fd565b60408501519092506200015b81620000fd565b809150509250925092565b611c9e80620001745f395ff3fe608060405234801561000f575f80fd5b5060043610610090575f3560e01c80633f15457f116100635780633f15457f1461010f5780637adbf973146101225780637dc0d1d0146101355780638bbedf7514610147578063be27b22c1461015a575f80fd5b806301ffc9a7146100945780631ecfc411146100bc578063224199c2146100d157806330349ebe146100e4575b5f80fd5b6100a76100a23660046115b1565b61016d565b60405190151581526020015b60405180910390f35b6100cf6100ca3660046115ef565b6101a3565b005b6100cf6100df3660046117e0565b6102de565b6002546100f7906001600160a01b031681565b6040516001600160a01b0390911681526020016100b3565b6001546100f7906001600160a01b031681565b6100cf6101303660046115ef565b61063c565b5f546100f7906001600160a01b031681565b6100cf610155366004611889565b61076d565b6100cf61016836600461190b565b6107f1565b5f6001600160e01b031982166301ffc9a760e01b148061019d57506001600160e01b031982166317d8f49b60e01b145b92915050565b6001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa1580156101ea573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061020e919061196b565b90505f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561024d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610271919061196b565b9050336001600160a01b03821614610287575f80fd5b600280546001600160a01b0319166001600160a01b0385169081179091556040519081527f9176b7f47e4504df5e5516c99d90d82ac7cbd49cc77e7f22ba2ac2f2e3a3eba8906020015b60405180910390a1505050565b5f546040516321ae60b160e11b81526001600160a01b039091169063435cc1629061030f90879087906004016119d3565b5f604051808303815f875af115801561032a573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526103519190810190611a6b565b92505f805f610360888761088b565b91945092509050336001600160a01b038216146103da5760405162461bcd60e51b815260206004820152602d60248201527f4f6e6c79206f776e65722063616e2063616c6c2070726f7665416e64436c616960448201526c36abb4ba342932b9b7b63b32b960991b60648201526084015b60405180910390fd5b6001600160a01b038416156105bb576001600160a01b03851661044e5760405162461bcd60e51b815260206004820152602660248201527f43616e6e6f74207365742061646472206966207265736f6c766572206973206e6044820152651bdd081cd95d60d21b60648201526084016103d1565b6001546040516305ef2c7f60e41b815260048101859052602481018490523060448201526001600160a01b0387811660648301525f608483015290911690635ef2c7f09060a4015f604051808303815f87803b1580156104ac575f80fd5b505af11580156104be573d5f803e3d5ffd5b505050505f83836040516020016104df929190918252602082015260400190565b60408051808303601f1901815290829052805160209091012062d5fa2b60e81b8252600482018190526001600160a01b03878116602484015290925087169063d5fa2b00906044015f604051808303815f87803b15801561053e575f80fd5b505af1158015610550573d5f803e3d5ffd5b5050600154604051635b0fc9c360e01b8152600481018590526001600160a01b0386811660248301529091169250635b0fc9c391506044015f604051808303815f87803b15801561059f575f80fd5b505af11580156105b1573d5f803e3d5ffd5b5050505050610632565b6001546040516305ef2c7f60e41b815260048101859052602481018490526001600160a01b03838116604483015287811660648301525f608483015290911690635ef2c7f09060a4015f604051808303815f87803b15801561061b575f80fd5b505af115801561062d573d5f803e3d5ffd5b505050505b5050505050505050565b6001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa158015610683573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106a7919061196b565b90505f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106e6573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061070a919061196b565b9050336001600160a01b03821614610720575f80fd5b5f80546001600160a01b0319166001600160a01b0385169081179091556040519081527fb3eacd0e351fafdfefdec84e1cd19679b38dbcd63ea7c2c24da17fd2bc3b3c0e906020016102d1565b5f546040516321ae60b160e11b81526001600160a01b039091169063435cc1629061079e90859085906004016119d3565b5f604051808303815f875af11580156107b9573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526107e09190810190611a6b565b90506107ec83826107f1565b505050565b5f805f6107fe858561088b565b6001546040516306ab592360e01b815260048101859052602481018490526001600160a01b03808416604483015294975092955090935091909116906306ab5923906064016020604051808303815f875af115801561085f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108839190611add565b505050505050565b5f8080806108998682610a40565b60ff1690506108aa86600183610a63565b92505f6108dc6108bb836001611b08565b6001848a516108ca9190611b1b565b6108d49190611b1b565b899190610a85565b6002546040516327c482cf60e11b81529192506001600160a01b031690634f89059e9061090d908490600401611b2e565b602060405180830381865afa158015610928573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061094c9190611b40565b6109a45760405162461bcd60e51b815260206004820152602360248201527f506172656e74206e616d65206d7573742062652061207075626c6963207375666044820152620ccd2f60eb1b60648201526084016103d1565b6109ae815f610b05565b5f549095506109c7906001600160a01b03168888610de3565b5060408051602081018890529081018690529093506001600160a01b03841690606001604051602081830303815290604052805190602001207fa2e66ce20e6fb2c4f61339c364ad79f15160cf5307230c8bc4d628adbca2ba3989604051610a2f9190611b2e565b60405180910390a350509250925092565b5f828281518110610a5357610a53611b5f565b016020015160f81c905092915050565b82515f90610a718385611b08565b1115610a7b575f80fd5b5091016020012090565b8251606090610a948385611b08565b1115610a9e575f80fd5b5f8267ffffffffffffffff811115610ab857610ab861160a565b6040519080825280601f01601f191660200182016040528015610ae2576020820181803683370190505b50905060208082019086860101610afa82828761100b565b509095945050505050565b5f80610b118484610a40565b60ff169050805f03610b2657505f905061019d565b5f610b4585610b358487611b08565b610b40906001611b08565b610b05565b90505f610b5e610b56866001611b08565b879085610a63565b604080516020810185905290810182905290915060600160408051808303601f190181529082905280516020909101206001546302571be360e01b8352600483018290529095505f916001600160a01b03909116906302571be390602401602060405180830381865afa158015610bd7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bfb919061196b565b90506001600160a01b0381161580610c1b57506001600160a01b03811630145b610c7a5760405162461bcd60e51b815260206004820152602a60248201527f43616e6e6f7420656e61626c652061206e616d65206f776e656420627920736f6044820152696d656f6e6520656c736560b01b60648201526084016103d1565b6001600160a01b0381163014610dd95782610d5e576001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa158015610cd6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cfa919061196b565b60405163232e3b3b60e21b8152600481018590523060248201529091506001600160a01b03821690638cb8ecec906044015f604051808303815f87803b158015610d42575f80fd5b505af1158015610d54573d5f803e3d5ffd5b5050505050610dd9565b6001546040516306ab592360e01b815260048101859052602481018490523060448201526001600160a01b03909116906306ab5923906064016020604051808303815f875af1158015610db3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610dd79190611add565b505b5050505092915050565b5f80610e016040518060400160405280606081526020015f81525090565b610e1985516005610e129190611b08565b8290611060565b50604080518082019091526005815264045f656e7360d81b6020820152610e419082906110c3565b50610e4c81866110c3565b50805160405163021e646f60e21b81525f9182916001600160a01b038a169163087991bc91610e8091601091600401611b73565b606060405180830381865afa158015610e9b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ebf9190611ba7565b93509150506bffffffffffffffffffffffff198216158015610ee057508551155b15610ef3575f8094509450505050611003565b855160208701206bffffffffffffffffffffffff19838116911614610f16575f80fd5b5f610f2187826110ef565b90505b80515160208201511015610ff857610f4b816080015183610f459190611bfc565b4261114a565b610fbd5760405162461bcd60e51b815260206004820152603c60248201527f444e53207265636f7264206973207374616c653b2072656672657368206f722060448201527f64656c657465206974206265666f72652070726f63656564696e672e0000000060648201526084016103d1565b5f80610fcd898460a00151611162565b925090508115610fe857965060019550611003945050505050565b5050610ff3816111d1565b610f24565b505f80945094505050505b935093915050565b602081106110435781518352611022602084611b08565b925061102f602083611b08565b915061103c602082611b1b565b905061100b565b905182516020929092036101000a5f190180199091169116179052565b60408051808201909152606081525f602082015261107f602083611c20565b156110a75761108f602083611c20565b61109a906020611b1b565b6110a49083611b08565b91505b506020828101829052604080518085525f815290920101905290565b60408051808201909152606081525f60208201526110e883845f0151518485516112b6565b9392505050565b6111376040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261019d816111d1565b5f806111568385611c3f565b60030b12159392505050565b5f805b83518310156111c4575f6111798585610a40565b60ff169050611189600185611b08565b93505f8061119887878561139c565b9250905081156111b0579350600192506111ca915050565b6111ba8387611b08565b9550505050611165565b505f9050805b9250929050565b60c081015160208201819052815151116111e85750565b5f6111fa825f015183602001516113f5565b82602001516112099190611b08565b82519091506112189082611454565b61ffff16604083015261122c600282611b08565b825190915061123b9082611454565b61ffff16606083015261124f600282611b08565b825190915061125e908261147a565b63ffffffff166080830152611274600482611b08565b82519091505f906112859083611454565b61ffff169050611296600283611b08565b60a0840181905291506112a98183611b08565b60c0909301929092525050565b60408051808201909152606081525f602082015282518211156112d7575f80fd5b60208501516112e68386611b08565b11156113195761131985611309876020015187866113049190611b08565b6114a2565b611314906002611c66565b6114b8565b5f808651805187602083010193508088870111156113375787860182525b505050602084015b602084106113775780518252611356602083611b08565b9150611363602082611b08565b9050611370602085611b1b565b935061133f565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b5f806113a8858561147a565b63ffffffff1663613d3078146113c257505f905080611003565b602c8310156113d557505f905080611003565b6113e9856113e4866004611b08565b6114d5565b91509150935093915050565b5f815b8351811061140857611408611c7d565b5f6114138583610a40565b60ff169050611423816001611b08565b61142d9083611b08565b9150805f0361143c5750611442565b506113f8565b61144c8382611b1b565b949350505050565b81515f90611463836002611b08565b111561146d575f80fd5b50016002015161ffff1690565b81515f90611489836004611b08565b1115611493575f80fd5b50016004015163ffffffff1690565b5f818311156114b257508161019d565b50919050565b81516114c48383611060565b506114cf83826110c3565b50505050565b5f8060288385516114e69190611b1b565b10156114f657505f9050806111ca565b5f835b611504856028611b08565b8110156115a55760049190911b905f61151d8783610a40565b60ff169050603081101580156115335750603a81105b1561154c57611543603082611b1b565b8317925061159c565b6041811015801561155d5750604781105b1561156d57611543603782611b1b565b6061811015801561157e5750606781105b1561158e57611543605782611b1b565b5f80945094505050506111ca565b506001016114f9565b50946001945092505050565b5f602082840312156115c1575f80fd5b81356001600160e01b0319811681146110e8575f80fd5b6001600160a01b03811681146115ec575f80fd5b50565b5f602082840312156115ff575f80fd5b81356110e8816115d8565b634e487b7160e01b5f52604160045260245ffd5b6040805190810167ffffffffffffffff811182821017156116415761164161160a565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156116705761167061160a565b604052919050565b5f67ffffffffffffffff8211156116915761169161160a565b50601f01601f191660200190565b5f82601f8301126116ae575f80fd5b81356116c16116bc82611678565b611647565b8181528460208386010111156116d5575f80fd5b816020850160208301375f918101602001919091529392505050565b5f82601f830112611700575f80fd5b8135602067ffffffffffffffff8083111561171d5761171d61160a565b8260051b61172c838201611647565b9384528581018301938381019088861115611745575f80fd5b84880192505b858310156117d457823584811115611761575f80fd5b88016040818b03601f1901811315611777575f80fd5b61177f61161e565b878301358781111561178f575f80fd5b61179d8d8a8387010161169f565b8252509082013590868211156117b1575f80fd5b6117bf8c898486010161169f565b8189015284525050918401919084019061174b565b98975050505050505050565b5f805f805f60a086880312156117f4575f80fd5b853567ffffffffffffffff8082111561180b575f80fd5b61181789838a0161169f565b9650602088013591508082111561182c575f80fd5b61183889838a016116f1565b9550604088013591508082111561184d575f80fd5b5061185a8882890161169f565b935050606086013561186b816115d8565b9150608086013561187b816115d8565b809150509295509295909350565b5f805f6060848603121561189b575f80fd5b833567ffffffffffffffff808211156118b2575f80fd5b6118be8783880161169f565b945060208601359150808211156118d3575f80fd5b6118df878388016116f1565b935060408601359150808211156118f4575f80fd5b506119018682870161169f565b9150509250925092565b5f806040838503121561191c575f80fd5b823567ffffffffffffffff80821115611933575f80fd5b61193f8683870161169f565b93506020850135915080821115611954575f80fd5b506119618582860161169f565b9150509250929050565b5f6020828403121561197b575f80fd5b81516110e8816115d8565b5f5b838110156119a0578181015183820152602001611988565b50505f910152565b5f81518084526119bf816020860160208601611986565b601f01601f19169290920160200192915050565b5f60408083016040845280865180835260608601915060608160051b870101925060208089015f5b83811015611a4b57888603605f1901855281518051888852611a1f898901826119a8565b9185015188830389870152919050611a3781836119a8565b9750505093820193908201906001016119fb565b505086840381880152505050611a6181866119a8565b9695505050505050565b5f60208284031215611a7b575f80fd5b815167ffffffffffffffff811115611a91575f80fd5b8201601f81018413611aa1575f80fd5b8051611aaf6116bc82611678565b818152856020838501011115611ac3575f80fd5b611ad4826020830160208601611986565b95945050505050565b5f60208284031215611aed575f80fd5b5051919050565b634e487b7160e01b5f52601160045260245ffd5b8082018082111561019d5761019d611af4565b8181038181111561019d5761019d611af4565b602081525f6110e860208301846119a8565b5f60208284031215611b50575f80fd5b815180151581146110e8575f80fd5b634e487b7160e01b5f52603260045260245ffd5b61ffff83168152604060208201525f61144c60408301846119a8565b805163ffffffff81168114611ba2575f80fd5b919050565b5f805f60608486031215611bb9575f80fd5b611bc284611b8f565b9250611bd060208501611b8f565b915060408401516bffffffffffffffffffffffff1981168114611bf1575f80fd5b809150509250925092565b63ffffffff818116838216019080821115611c1957611c19611af4565b5092915050565b5f82611c3a57634e487b7160e01b5f52601260045260245ffd5b500690565b600382810b9082900b03637fffffff198112637fffffff8213171561019d5761019d611af4565b808202811582820484141761019d5761019d611af4565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a", + "deployedBytecode": "0x608060405234801561000f575f80fd5b5060043610610090575f3560e01c80633f15457f116100635780633f15457f1461010f5780637adbf973146101225780637dc0d1d0146101355780638bbedf7514610147578063be27b22c1461015a575f80fd5b806301ffc9a7146100945780631ecfc411146100bc578063224199c2146100d157806330349ebe146100e4575b5f80fd5b6100a76100a23660046115b1565b61016d565b60405190151581526020015b60405180910390f35b6100cf6100ca3660046115ef565b6101a3565b005b6100cf6100df3660046117e0565b6102de565b6002546100f7906001600160a01b031681565b6040516001600160a01b0390911681526020016100b3565b6001546100f7906001600160a01b031681565b6100cf6101303660046115ef565b61063c565b5f546100f7906001600160a01b031681565b6100cf610155366004611889565b61076d565b6100cf61016836600461190b565b6107f1565b5f6001600160e01b031982166301ffc9a760e01b148061019d57506001600160e01b031982166317d8f49b60e01b145b92915050565b6001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa1580156101ea573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061020e919061196b565b90505f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561024d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610271919061196b565b9050336001600160a01b03821614610287575f80fd5b600280546001600160a01b0319166001600160a01b0385169081179091556040519081527f9176b7f47e4504df5e5516c99d90d82ac7cbd49cc77e7f22ba2ac2f2e3a3eba8906020015b60405180910390a1505050565b5f546040516321ae60b160e11b81526001600160a01b039091169063435cc1629061030f90879087906004016119d3565b5f604051808303815f875af115801561032a573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526103519190810190611a6b565b92505f805f610360888761088b565b91945092509050336001600160a01b038216146103da5760405162461bcd60e51b815260206004820152602d60248201527f4f6e6c79206f776e65722063616e2063616c6c2070726f7665416e64436c616960448201526c36abb4ba342932b9b7b63b32b960991b60648201526084015b60405180910390fd5b6001600160a01b038416156105bb576001600160a01b03851661044e5760405162461bcd60e51b815260206004820152602660248201527f43616e6e6f74207365742061646472206966207265736f6c766572206973206e6044820152651bdd081cd95d60d21b60648201526084016103d1565b6001546040516305ef2c7f60e41b815260048101859052602481018490523060448201526001600160a01b0387811660648301525f608483015290911690635ef2c7f09060a4015f604051808303815f87803b1580156104ac575f80fd5b505af11580156104be573d5f803e3d5ffd5b505050505f83836040516020016104df929190918252602082015260400190565b60408051808303601f1901815290829052805160209091012062d5fa2b60e81b8252600482018190526001600160a01b03878116602484015290925087169063d5fa2b00906044015f604051808303815f87803b15801561053e575f80fd5b505af1158015610550573d5f803e3d5ffd5b5050600154604051635b0fc9c360e01b8152600481018590526001600160a01b0386811660248301529091169250635b0fc9c391506044015f604051808303815f87803b15801561059f575f80fd5b505af11580156105b1573d5f803e3d5ffd5b5050505050610632565b6001546040516305ef2c7f60e41b815260048101859052602481018490526001600160a01b03838116604483015287811660648301525f608483015290911690635ef2c7f09060a4015f604051808303815f87803b15801561061b575f80fd5b505af115801561062d573d5f803e3d5ffd5b505050505b5050505050505050565b6001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa158015610683573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106a7919061196b565b90505f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106e6573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061070a919061196b565b9050336001600160a01b03821614610720575f80fd5b5f80546001600160a01b0319166001600160a01b0385169081179091556040519081527fb3eacd0e351fafdfefdec84e1cd19679b38dbcd63ea7c2c24da17fd2bc3b3c0e906020016102d1565b5f546040516321ae60b160e11b81526001600160a01b039091169063435cc1629061079e90859085906004016119d3565b5f604051808303815f875af11580156107b9573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526107e09190810190611a6b565b90506107ec83826107f1565b505050565b5f805f6107fe858561088b565b6001546040516306ab592360e01b815260048101859052602481018490526001600160a01b03808416604483015294975092955090935091909116906306ab5923906064016020604051808303815f875af115801561085f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108839190611add565b505050505050565b5f8080806108998682610a40565b60ff1690506108aa86600183610a63565b92505f6108dc6108bb836001611b08565b6001848a516108ca9190611b1b565b6108d49190611b1b565b899190610a85565b6002546040516327c482cf60e11b81529192506001600160a01b031690634f89059e9061090d908490600401611b2e565b602060405180830381865afa158015610928573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061094c9190611b40565b6109a45760405162461bcd60e51b815260206004820152602360248201527f506172656e74206e616d65206d7573742062652061207075626c6963207375666044820152620ccd2f60eb1b60648201526084016103d1565b6109ae815f610b05565b5f549095506109c7906001600160a01b03168888610de3565b5060408051602081018890529081018690529093506001600160a01b03841690606001604051602081830303815290604052805190602001207fa2e66ce20e6fb2c4f61339c364ad79f15160cf5307230c8bc4d628adbca2ba3989604051610a2f9190611b2e565b60405180910390a350509250925092565b5f828281518110610a5357610a53611b5f565b016020015160f81c905092915050565b82515f90610a718385611b08565b1115610a7b575f80fd5b5091016020012090565b8251606090610a948385611b08565b1115610a9e575f80fd5b5f8267ffffffffffffffff811115610ab857610ab861160a565b6040519080825280601f01601f191660200182016040528015610ae2576020820181803683370190505b50905060208082019086860101610afa82828761100b565b509095945050505050565b5f80610b118484610a40565b60ff169050805f03610b2657505f905061019d565b5f610b4585610b358487611b08565b610b40906001611b08565b610b05565b90505f610b5e610b56866001611b08565b879085610a63565b604080516020810185905290810182905290915060600160408051808303601f190181529082905280516020909101206001546302571be360e01b8352600483018290529095505f916001600160a01b03909116906302571be390602401602060405180830381865afa158015610bd7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bfb919061196b565b90506001600160a01b0381161580610c1b57506001600160a01b03811630145b610c7a5760405162461bcd60e51b815260206004820152602a60248201527f43616e6e6f7420656e61626c652061206e616d65206f776e656420627920736f6044820152696d656f6e6520656c736560b01b60648201526084016103d1565b6001600160a01b0381163014610dd95782610d5e576001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa158015610cd6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cfa919061196b565b60405163232e3b3b60e21b8152600481018590523060248201529091506001600160a01b03821690638cb8ecec906044015f604051808303815f87803b158015610d42575f80fd5b505af1158015610d54573d5f803e3d5ffd5b5050505050610dd9565b6001546040516306ab592360e01b815260048101859052602481018490523060448201526001600160a01b03909116906306ab5923906064016020604051808303815f875af1158015610db3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610dd79190611add565b505b5050505092915050565b5f80610e016040518060400160405280606081526020015f81525090565b610e1985516005610e129190611b08565b8290611060565b50604080518082019091526005815264045f656e7360d81b6020820152610e419082906110c3565b50610e4c81866110c3565b50805160405163021e646f60e21b81525f9182916001600160a01b038a169163087991bc91610e8091601091600401611b73565b606060405180830381865afa158015610e9b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ebf9190611ba7565b93509150506bffffffffffffffffffffffff198216158015610ee057508551155b15610ef3575f8094509450505050611003565b855160208701206bffffffffffffffffffffffff19838116911614610f16575f80fd5b5f610f2187826110ef565b90505b80515160208201511015610ff857610f4b816080015183610f459190611bfc565b4261114a565b610fbd5760405162461bcd60e51b815260206004820152603c60248201527f444e53207265636f7264206973207374616c653b2072656672657368206f722060448201527f64656c657465206974206265666f72652070726f63656564696e672e0000000060648201526084016103d1565b5f80610fcd898460a00151611162565b925090508115610fe857965060019550611003945050505050565b5050610ff3816111d1565b610f24565b505f80945094505050505b935093915050565b602081106110435781518352611022602084611b08565b925061102f602083611b08565b915061103c602082611b1b565b905061100b565b905182516020929092036101000a5f190180199091169116179052565b60408051808201909152606081525f602082015261107f602083611c20565b156110a75761108f602083611c20565b61109a906020611b1b565b6110a49083611b08565b91505b506020828101829052604080518085525f815290920101905290565b60408051808201909152606081525f60208201526110e883845f0151518485516112b6565b9392505050565b6111376040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261019d816111d1565b5f806111568385611c3f565b60030b12159392505050565b5f805b83518310156111c4575f6111798585610a40565b60ff169050611189600185611b08565b93505f8061119887878561139c565b9250905081156111b0579350600192506111ca915050565b6111ba8387611b08565b9550505050611165565b505f9050805b9250929050565b60c081015160208201819052815151116111e85750565b5f6111fa825f015183602001516113f5565b82602001516112099190611b08565b82519091506112189082611454565b61ffff16604083015261122c600282611b08565b825190915061123b9082611454565b61ffff16606083015261124f600282611b08565b825190915061125e908261147a565b63ffffffff166080830152611274600482611b08565b82519091505f906112859083611454565b61ffff169050611296600283611b08565b60a0840181905291506112a98183611b08565b60c0909301929092525050565b60408051808201909152606081525f602082015282518211156112d7575f80fd5b60208501516112e68386611b08565b11156113195761131985611309876020015187866113049190611b08565b6114a2565b611314906002611c66565b6114b8565b5f808651805187602083010193508088870111156113375787860182525b505050602084015b602084106113775780518252611356602083611b08565b9150611363602082611b08565b9050611370602085611b1b565b935061133f565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b5f806113a8858561147a565b63ffffffff1663613d3078146113c257505f905080611003565b602c8310156113d557505f905080611003565b6113e9856113e4866004611b08565b6114d5565b91509150935093915050565b5f815b8351811061140857611408611c7d565b5f6114138583610a40565b60ff169050611423816001611b08565b61142d9083611b08565b9150805f0361143c5750611442565b506113f8565b61144c8382611b1b565b949350505050565b81515f90611463836002611b08565b111561146d575f80fd5b50016002015161ffff1690565b81515f90611489836004611b08565b1115611493575f80fd5b50016004015163ffffffff1690565b5f818311156114b257508161019d565b50919050565b81516114c48383611060565b506114cf83826110c3565b50505050565b5f8060288385516114e69190611b1b565b10156114f657505f9050806111ca565b5f835b611504856028611b08565b8110156115a55760049190911b905f61151d8783610a40565b60ff169050603081101580156115335750603a81105b1561154c57611543603082611b1b565b8317925061159c565b6041811015801561155d5750604781105b1561156d57611543603782611b1b565b6061811015801561157e5750606781105b1561158e57611543605782611b1b565b5f80945094505050506111ca565b506001016114f9565b50946001945092505050565b5f602082840312156115c1575f80fd5b81356001600160e01b0319811681146110e8575f80fd5b6001600160a01b03811681146115ec575f80fd5b50565b5f602082840312156115ff575f80fd5b81356110e8816115d8565b634e487b7160e01b5f52604160045260245ffd5b6040805190810167ffffffffffffffff811182821017156116415761164161160a565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156116705761167061160a565b604052919050565b5f67ffffffffffffffff8211156116915761169161160a565b50601f01601f191660200190565b5f82601f8301126116ae575f80fd5b81356116c16116bc82611678565b611647565b8181528460208386010111156116d5575f80fd5b816020850160208301375f918101602001919091529392505050565b5f82601f830112611700575f80fd5b8135602067ffffffffffffffff8083111561171d5761171d61160a565b8260051b61172c838201611647565b9384528581018301938381019088861115611745575f80fd5b84880192505b858310156117d457823584811115611761575f80fd5b88016040818b03601f1901811315611777575f80fd5b61177f61161e565b878301358781111561178f575f80fd5b61179d8d8a8387010161169f565b8252509082013590868211156117b1575f80fd5b6117bf8c898486010161169f565b8189015284525050918401919084019061174b565b98975050505050505050565b5f805f805f60a086880312156117f4575f80fd5b853567ffffffffffffffff8082111561180b575f80fd5b61181789838a0161169f565b9650602088013591508082111561182c575f80fd5b61183889838a016116f1565b9550604088013591508082111561184d575f80fd5b5061185a8882890161169f565b935050606086013561186b816115d8565b9150608086013561187b816115d8565b809150509295509295909350565b5f805f6060848603121561189b575f80fd5b833567ffffffffffffffff808211156118b2575f80fd5b6118be8783880161169f565b945060208601359150808211156118d3575f80fd5b6118df878388016116f1565b935060408601359150808211156118f4575f80fd5b506119018682870161169f565b9150509250925092565b5f806040838503121561191c575f80fd5b823567ffffffffffffffff80821115611933575f80fd5b61193f8683870161169f565b93506020850135915080821115611954575f80fd5b506119618582860161169f565b9150509250929050565b5f6020828403121561197b575f80fd5b81516110e8816115d8565b5f5b838110156119a0578181015183820152602001611988565b50505f910152565b5f81518084526119bf816020860160208601611986565b601f01601f19169290920160200192915050565b5f60408083016040845280865180835260608601915060608160051b870101925060208089015f5b83811015611a4b57888603605f1901855281518051888852611a1f898901826119a8565b9185015188830389870152919050611a3781836119a8565b9750505093820193908201906001016119fb565b505086840381880152505050611a6181866119a8565b9695505050505050565b5f60208284031215611a7b575f80fd5b815167ffffffffffffffff811115611a91575f80fd5b8201601f81018413611aa1575f80fd5b8051611aaf6116bc82611678565b818152856020838501011115611ac3575f80fd5b611ad4826020830160208601611986565b95945050505050565b5f60208284031215611aed575f80fd5b5051919050565b634e487b7160e01b5f52601160045260245ffd5b8082018082111561019d5761019d611af4565b8181038181111561019d5761019d611af4565b602081525f6110e860208301846119a8565b5f60208284031215611b50575f80fd5b815180151581146110e8575f80fd5b634e487b7160e01b5f52603260045260245ffd5b61ffff83168152604060208201525f61144c60408301846119a8565b805163ffffffff81168114611ba2575f80fd5b919050565b5f805f60608486031215611bb9575f80fd5b611bc284611b8f565b9250611bd060208501611b8f565b915060408401516bffffffffffffffffffffffff1981168114611bf1575f80fd5b809150509250925092565b63ffffffff818116838216019080821115611c1957611c19611af4565b5092915050565b5f82611c3a57634e487b7160e01b5f52601260045260245ffd5b500690565b600382810b9082900b03637fffffff198112637fffffff8213171561019d5761019d611af4565b808202811582820484141761019d5761019d611af4565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/artifacts/DNSSECImpl.json b/artifacts/DNSSECImpl.json index 60078833..b6aa9c05 100644 --- a/artifacts/DNSSECImpl.json +++ b/artifacts/DNSSECImpl.json @@ -463,8 +463,8 @@ "type": "function" } ], - "bytecode": "0x60806040523480156200001157600080fd5b506040516200320d3803806200320d83398101604081905262000034916200018f565b600180546001600160a01b031916331790556000620000548282620002f3565b5060408051606081018252600080825263e090bba0602083015282519192830191620000819190620003bf565b60408051918290039091206001600160601b031916909152602b60009081527fc92a43746f20f69898978a3075767b860ba247ac0639d1831bf8c942c5db2389602090815283517f95c6356c1b7a542b884d2484ef785c9c7224e77e1016c20007bddc15c23b452f8054928601519585015160601c6801000000000000000002600160401b600160e01b031963ffffffff978816640100000000026001600160401b03199095169790931696909617929092171693909317909255517f55ced933cdd5a34dd03eb5d4bef19ec6ebb251dcd7a988eee0c1b9a13baaa88b916200016a916200043d565b60405180910390a150620004e5565b634e487b7160e01b600052604160045260246000fd5b60006020808385031215620001a357600080fd5b82516001600160401b0380821115620001bb57600080fd5b818501915085601f830112620001d057600080fd5b815181811115620001e557620001e562000179565b604051601f8201601f19908116603f0116810190838211818310171562000210576200021062000179565b8160405282815288868487010111156200022957600080fd5b600093505b828410156200024d57848401860151818501870152928501926200022e565b600086848301015280965050505050505092915050565b600181811c908216806200027957607f821691505b6020821081036200029a57634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620002ee57600081815260208120601f850160051c81016020861015620002c95750805b601f850160051c820191505b81811015620002ea57828155600101620002d5565b5050505b505050565b81516001600160401b038111156200030f576200030f62000179565b620003278162000320845462000264565b84620002a0565b602080601f8311600181146200035f5760008415620003465750858301515b600019600386901b1c1916600185901b178555620002ea565b600085815260208120601f198616915b8281101562000390578886015182559484019460019091019084016200036f565b5085821015620003af5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6000808354620003cf8162000264565b60018281168015620003ea5760018114620004005762000431565b60ff198416875282151583028701945062000431565b8760005260208060002060005b85811015620004285781548a8201529084019082016200040d565b50505082870194505b50929695505050505050565b604081526000600180604084015260006060840152602060808185015260008554620004698162000264565b80608088015260a0858316600081146200048c5760018114620004a757620004d7565b60ff1984168983015282151560051b890182019450620004d7565b896000528560002060005b84811015620004cf5781548b8201850152908801908701620004b2565b8a0183019550505b509298975050505050505050565b612d1880620004f56000396000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c806373cc48a61161008c57806398d35f201161006657806398d35f201461021c578063bd7ed31a14610224578063c327deef1461024d578063d7b82ebe1461027657600080fd5b806373cc48a6146101b55780638438dc04146101f65780638da5cb5b1461020957600080fd5b806313af4035116100c857806313af40351461015c57806328e7677d1461016f5780632c095cbb14610182578063435cc1621461019557600080fd5b8063020ed8d3146100ef578063087991bc146101045780630b1a249514610149575b600080fd5b6101026100fd3660046123fa565b610289565b005b61011761011236600461248c565b61030b565b6040805163ffffffff94851681529390921660208401526001600160601b031916908201526060015b60405180910390f35b610102610157366004612620565b61037b565b61010261016a3660046126de565b6104ef565b61010261017d3660046123fa565b610528565b6101026101903660046126fb565b6105a2565b6101a86101a3366004612794565b610673565b60405161014091906128b8565b6101de6101c33660046128cb565b6004602052600090815260409020546001600160a01b031681565b6040516001600160a01b039091168152602001610140565b6101026102043660046123fa565b6106fb565b6001546101de906001600160a01b031681565b6101a8610775565b6101de6102323660046128cb565b6005602052600090815260409020546001600160a01b031681565b6101de61025b3660046128cb565b6003602052600090815260409020546001600160a01b031681565b6101a86102843660046128e6565b610803565b6001546001600160a01b031633146102a057600080fd5b60ff821660008181526003602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527ff73c3c226af96b7f1ba666a21b3ceaf2be3ee6a365e3178fd9cd1eaae0075aa891015b60405180910390a15050565b60008060008060026000878760405161032592919061294a565b60408051918290039091208252602080830193909352908101600090812061ffff8b16825290925290205463ffffffff80821695506401000000008204169350600160401b900460601b91505093509350939050565b8351602080860191909120600090815260028252604080822061ffff891683529092529081205463ffffffff16906103b38584610818565b90506103c08187846108be565b6103c861232b565b845151156103e7576103da8585610818565b90506103e78188856108be565b60006103f283610904565b602081015190915060fe161561040757600080fd5b610412816027610963565b1580156104375750610425816002610963565b15806104375750610437816006610963565b61044057600080fd5b610451898985610120015184610975565b1561048d5787516020808a0191909120600090815260028252604080822061ffff8d1683529092522080546001600160e01b03191690556104e4565b6104ac88846101200151838561012001516104a787610904565b6109a5565b156100ea5787516020808a0191909120600090815260028252604080822061ffff8d1683529092522080546001600160e01b03191690555b505050505050505050565b6001546001600160a01b0316331461050657600080fd5b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6001546001600160a01b0316331461053f57600080fd5b60ff821660008181526004602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527f2fcc274c3b72dd483ab201bfa87295e3817e8b9b10693219873b722ca1af00c791016102ff565b6105aa61232b565b6105b48383610818565b805190915061ffff16602f146105c957600080fd5b60a08101518451602080870191909120600090815260028252604080822061ffff8a1683529092522054610603919063ffffffff16610ac0565b61060c57600080fd5b600061061782610ad9565b9050805151602082015110156100ea57610638818361012001518789610af1565b50508251602080850191909120600090815260028252604080822061ffff881683529092522080546001600160e01b03191690555b50505050565b6060600083838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201829052509394505050505b85518110156106f0576106dc8682815181106106ce576106ce61295a565b602002602001015183610c9f565b9150806106e881612986565b9150506106b0565b5090505b9392505050565b6001546001600160a01b0316331461071257600080fd5b60ff821660008181526005602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527fc7eec866a7a1386188cc3ca20ffea75b71bd3e90a60b6791b1d3f0971145118d91016102ff565b600080546107829061299f565b80601f01602080910402602001604051908101604052809291908181526020018280546107ae9061299f565b80156107fb5780601f106107d0576101008083540402835291602001916107fb565b820191906000526020600020905b8154815290600101906020018083116107de57829003601f168201915b505050505081565b606061080f8383610c9f565b90505b92915050565b61082061232b565b825161082b90610e1e565b905061083b8160e0015183610f18565b61084457600080fd5b6000610854828360000151610f80565b604083015190915060ff1661086a82600061102e565b1461087457600080fd5b6101208201819052608082015161088b9042610ac0565b61089457600080fd5b6108a2428360a00151610ac0565b6108ab57600080fd5b6108b78183868661108b565b5092915050565b6108cc8360a0015182610ac0565b6108d557600080fd5b825161ffff166032146108e757600080fd5b6108f683610120015183611170565b6108ff57600080fd5b505050565b6040805160c08101825260008082526020820181905291810182905260608082018190526080820183905260a08201529061093e83610ad9565b60a081015160c08201519192506106f49161095a9082906129d3565b835191906111de565b600061080f8360a00151600084611325565b600061098282848661143a565b15610999576109918286610963565b15905061099d565b5060005b949350505050565b602081015160009060fe16156109ba57600080fd5b60006109c586611461565b905060006109d285611461565b90506000806109e18a8261147d565b6109ec9060016129e6565b60ff1690505b8951811015610aae5783610a1e89610a1984858f51610a1191906129d3565b8f91906114a1565b611523565b03610a82576000610a3a87610a1985868f51610a1191906129d3565b90508660800151841015610a66578381118015610a5a5750866080015181105b95505050505050610ab7565b83811180610a5a57508660800151811095505050505050610ab7565b905080610a8f8a8261147d565b610a9a9060016129e6565b610aa79060ff16826129ff565b90506109f2565b50600093505050505b95945050505050565b600080610acd8385612a12565b60030b12159392505050565b610ae1612381565b61081282610100015160006115af565b60a08401518451600090610b0590836115ca565b905060008660a001518760c00151610b1d91906129d3565b9050818111610b2b57600080fd5b6000610b378688611624565b905080600003610b6657610b57610b4e84866129ff565b89519087611325565b15610b6157600080fd5b610bad565b8751600090610b769086866114a1565b905060008213610b8557600080fd5b6000610b918983611624565b12156104e4576000610ba38883611624565b126104e457600080fd5b5050505050505050565b60c08101516020820181905281515111610bce5750565b6000610be2826000015183602001516115ca565b8260200151610bf191906129ff565b8251909150610c00908261177d565b61ffff166040830152610c146002826129ff565b8251909150610c23908261177d565b61ffff166060830152610c376002826129ff565b8251909150610c4690826117a5565b63ffffffff166080830152610c5c6004826129ff565b8251909150600090610c6e908361177d565b61ffff169050610c7f6002836129ff565b60a084018190529150610c9281836129ff565b60c0909301929092525050565b6060610ca961232b565b610cb38484610818565b61012081015180516020918201206000908152600282526040808220845161ffff16835290925220805491925090600160401b900460601b6001600160601b03191615610d1a5760a08201518154610d11919063ffffffff16610ac0565b610d1a57600080fd5b604080516060808201835260a085015163ffffffff9081168352608086015181166020808501918252610100880180518051908301206001600160601b0319168688019081526101208a0180518051908501206000908152600285528981208c5161ffff16825290945292889020965187549451915190961c600160401b0268010000000000000000600160e01b03199186166401000000000267ffffffffffffffff19909516969095169590951792909217939093169190911790925551905191517f55ced933cdd5a34dd03eb5d4bef19ec6ebb251dcd7a988eee0c1b9a13baaa88b92610e099291612a39565b60405180910390a15061010001519392505050565b610e2661232b565b610e3182600061177d565b61ffff168152610e4282600261147d565b60ff166020820152610e5582600361147d565b60ff166040820152610e688260046117a5565b63ffffffff9081166060830152610e849083906008906117a516565b63ffffffff9081166080830152610ea0908390600c906117a516565b63ffffffff90811660a0830152610ebc90839060109061177d16565b61ffff1660c0820152610ed08260126117cf565b60e0820181905251610f0d90610ee79060126129ff565b8260e001515160128551610efb91906129d3565b610f0591906129d3565b8491906114a1565b610100820152919050565b600080610f2f610f2884836115ca565b849061177d565b8351602080860191909120865187830120600090815260028352604080822061ffff90951682529390925291902054600160401b900460601b6001600160601b031990811691161491505092915050565b60606000610f8d84610ad9565b90505b805151602082015110156108b757606081015161ffff16600114610fb357600080fd5b8151600003610fcc57610fc5816117ea565b9150611008565b60208101518151610fdc916115ca565b825114610fe857600080fd5b805160208201518351610fff92859260009261180b565b61100857600080fd5b8261ffff16816040015161ffff161461102057600080fd5b61102981610bb7565b610f90565b6000805b8351831061104257611042612a5e565b600061104e858561147d565b60ff16905061105e8160016129ff565b61106890856129ff565b935080600003611078575061080f565b6110836001836129ff565b915050611032565b83518360e0015151111561109e57600080fd5b6110c36000858560e001515187516110b691906129d3565b60e087015192919061182e565b6110cc57600080fd5b60006110d882826115af565b9050602b61ffff16816040015161ffff1603611107576110f9848483611863565b61110257600080fd5b611169565b603061ffff16816040015161ffff1603611126576110f98484836118fc565b60405162461bcd60e51b8152602060048201526014602482015273139bc81d985b1a59081c1c9bdbd988199bdd5b9960621b604482015260640160405180910390fd5b5050505050565b60008061117d848261147d565b6111889060016129e6565b60ff16905060005b8351811015610999576111a58482878561182e565b156111b557600192505050610812565b6111bf848261147d565b6111ca9060016129e6565b6111d79060ff16826129ff565b9050611190565b6040805160c08101825260008082526020820181905291810182905260608082018190526080820183905260a08201529061121983856129ff565b90506112306112296000866129ff565b869061147d565b60ff1682526112436112296001866129ff565b60ff1660208301526112606112596002866129ff565b869061177d565b61ffff16604083015260006112806112796004876129ff565b879061147d565b905061128d6005866129ff565b945061129d868660ff84166114a1565b60608401526112af60ff8216866129ff565b945060006112bd878761147d565b905060208160ff1611156112d057600080fd5b6112db6001876129ff565b95506112eb878760ff84166119a4565b60808501526112fd60ff8216876129ff565b95506113158661130d81866129d3565b8991906114a1565b60a0850152509195945050505050565b600060ff600883811c821691839161133e918616612a8a565b90506000611350600780871690612aab565b600160ff919091161b9050855b875181101561142c576000611372898361147d565b9050600061138b6113848460016129ff565b8b9061147d565b90508160ff168660ff1610156113aa57600096505050505050506106f4565b8160ff168660ff160361140b578460ff168160ff16116113d357600096505050505050506106f4565b836113f66113e460ff8816866129ff565b6113ef9060026129ff565b8c9061147d565b1660ff166000141596505050505050506106f4565b6114168160026129e6565b6114239060ff16846129ff565b9250505061135d565b506000979650505050505050565b6000806114478584611523565b9050600061145485611461565b9190911495945050505050565b60006108126001611472848461147d565b84919060ff166119e5565b60008282815181106114915761149161295a565b016020015160f81c905092915050565b82516060906114b083856129ff565b11156114bb57600080fd5b60008267ffffffffffffffff8111156114d6576114d66124df565b6040519080825280601f01601f191660200182016040528015611500576020820181803683370190505b50905060208082019086860101611518828287611bfd565b509095945050505050565b815160ff1660009081526005602052604080822054606085015182860151925163347ced5960e11b81526001600160a01b03909216926368f9dab29261156e92918791600401612ac4565b602060405180830381865afa15801561158b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061080f9190612afe565b6115b7612381565b82815260c0810182905261081281610bb7565b6000815b835181106115de576115de612a5e565b60006115ea858361147d565b60ff1690506115fa8160016129ff565b61160490836129ff565b915080600003611614575061161a565b506115ce565b61099d83826129d3565b60006116308383611c53565b1561163d57506000610812565b600080600080600061165088600061102e565b9050600061165f88600061102e565b90505b8082111561168b578593506116778987611c71565b95508161168381612b17565b925050611662565b818111156116b4578492506116a08886611c71565b9450806116ac81612b17565b91505061168b565b6000821180156116cd57506116cb89878a8861182e565b155b15611702578593506116df8987611c71565b95508492506116ee8886611c71565b94506116fb6001836129d3565b91506116b4565b8560000361171a576000199650505050505050610812565b846000036117315760019650505050505050610812565b61177061173f8560016129ff565b6117498b8761147d565b60ff168a6117588760016129ff565b6117628d8961147d565b8e949392919060ff16611c95565b9998505050505050505050565b815160009061178d8360026129ff565b111561179857600080fd5b50016002015161ffff1690565b81516000906117b58360046129ff565b11156117c057600080fd5b50016004015163ffffffff1690565b606060006117dd84846115ca565b905061099d8484836114a1565b602081015181516060916108129161180290826115ca565b845191906114a1565b6000611818848484611d8a565b611823878785611d8a565b149695505050505050565b6000611847838384865161184291906129d3565b611d8a565b611859868687895161184291906129d3565b1495945050505050565b60008061186f85610ad9565b90505b8051516020820151101561099957604081015161ffff1660301461189557600080fd5b60006118a082611dae565b905060006118bb6000835184611dca9092919063ffffffff16565b90506118c981838989611e68565b156118ec576118e26118da846117ea565b868385611f6d565b93505050506106f4565b50506118f781610bb7565b611872565b60006119158460e0015161190f846117ea565b90611c53565b61191e57600080fd5b8151516020830151101561199a5761193d8460e0015161190f846117ea565b61194657600080fd5b600061195183611dae565b9050600061196c6000835184611dca9092919063ffffffff16565b905061197a81838888611e68565b1561198a576001925050506106f4565b505061199582610bb7565b61191e565b5060009392505050565b600060208211156119b457600080fd5b83516119c083856129ff565b11156119cb57600080fd5b506020919092018101519190036101000a60001901191690565b600060348211156119f557600080fd5b600080805b84811015611ae157600087611a0f83896129ff565b81518110611a1f57611a1f61295a565b01602001516001600160f81b0319169050600360fc1b8110801590611a525750603d60f91b6001600160f81b0319821611155b611a5b57600080fd5b604051806080016040528060478152602001612cc560479139611a83603060f884901c6129d3565b81518110611a9357611a9361295a565b0160209081015160f81c9350831115611aab57600080fd5b611ab66001876129d3565b8203611ac25750611ae1565b5060059290921b60ff8216179180611ad981612986565b9150506119fa565b506000611aef856005612b2e565b9050611afc600886612b45565b600003611b14578160ff16600584901b179250611be3565b611b1f600886612b45565b600203611b4d5760028260ff16901c60ff16600384901b179250600281611b4691906129d3565b9050611be3565b611b58600886612b45565b600403611b7f5760048260ff16901c60ff16600184901b179250600481611b4691906129d3565b611b8a600886612b45565b600503611bb15760018260ff16901c60ff16600484901b179250600181611b4691906129d3565b611bbc600886612b45565b6007036100ea5760038260ff16901c60ff16600284901b179250600381611b4691906129d3565b611bef816101006129d3565b9290921b9695505050505050565b60208110611c355781518352611c146020846129ff565b9250611c216020836129ff565b9150611c2e6020826129d3565b9050611bfd565b905182516020929092036101000a6000190180199091169116179052565b60008151835114801561080f575061080f836000846000875161180b565b6000611c7d838361147d565b60ff16611c8b8360016129ff565b61080f91906129ff565b60008480831015611ca35750815b60208789018101908587010160005b83811015611d6f5782518251808214611d3f5760006020871115611cd95750600019611d15565b600184611ce78960206129d3565b611cf191906129ff565b611cfc906008612b2e565b611d07906002612c3d565b611d1191906129d3565b1990505b6000611d25838316858416612c49565b90508015611d3c579750611d809650505050505050565b50505b611d4a6020866129ff565b9450611d576020856129ff565b93505050602081611d6891906129ff565b9050611cb2565b50611d7a8589612c49565b93505050505b9695505050505050565b8251600090611d9983856129ff565b1115611da457600080fd5b5091016020012090565b60a081015160c0820151606091610812916118029082906129d3565b6040805160808101825260008082526020820181905291810191909152606080820152611e02611dfb6000856129ff565b859061177d565b61ffff168152611e1d611e166002856129ff565b859061147d565b60ff166020820152611e33611e166003856129ff565b60ff166040820152611e5c611e496004856129ff565b611e546004856129d3565b8691906114a1565b60608201529392505050565b6000846020015160ff16600314611e815750600061099d565b826020015160ff16856040015160ff1614611e9e5750600061099d565b6000611ea98561206e565b90508360c0015161ffff168161ffff1614611ec857600091505061099d565b855161010016600003611edf57600091505061099d565b60408087015160ff166000908152600360209081529082902054855191860151925163de8f50a160e01b81526001600160a01b039091169263de8f50a192611f2c928a9290600401612c69565b602060405180830381865afa158015611f49573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d809190612ca2565b600080611f798361206e565b90505b845151602086015110156120625760a085015160c0860151600091611faf91611fa69082906129d3565b88519190611dca565b90508161ffff16816000015161ffff1614611fca5750612054565b846040015160ff16816020015160ff1614611fe55750612054565b6040805180820190915260608152600060208201526120128551895161200b91906129ff565b82906120db565b5061201d8189612140565b506120288186612140565b50612040826040015182600001518460600151612167565b15612051576001935050505061099d565b50505b61205d85610bb7565b611f7c565b50600095945050505050565b60008060005b83518110156120cc57600181161561209857612090848261147d565b60ff166120aa565b60086120a4858361147d565b60ff16901b5b6120b89061ffff16836129ff565b9150806120c481612986565b915050612074565b506106f4601082901c826129ff565b6040805180820190915260608152600060208201526120fb602083612b45565b156121235761210b602083612b45565b6121169060206129d3565b61212090836129ff565b91505b506020828101829052604080518085526000815290920101905290565b60408051808201909152606081526000602082015261080f83846000015151848551612213565b60ff83166000908152600460205260408120546001600160a01b031661218f575060006106f4565b60ff8416600090815260046020819052604091829020549151637bf41d7760e11b81526001600160a01b039092169163f7e83aee916121d2918791879101612a39565b602060405180830381865afa1580156121ef573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061099d9190612ca2565b604080518082019091526060815260006020820152825182111561223657600080fd5b602085015161224583866129ff565b111561227857612278856122688760200151878661226391906129ff565b6122fd565b612273906002612b2e565b612314565b6000808651805187602083010193508088870111156122975787860182525b505050602084015b602084106122d757805182526122b66020836129ff565b91506122c36020826129ff565b90506122d06020856129d3565b935061229f565b51815160001960208690036101000a019081169019919091161790525083949350505050565b60008183111561230e575081610812565b50919050565b815161232083836120db565b5061066d8382612140565b604080516101408101825260008082526020820181905291810182905260608082018390526080820183905260a0820183905260c082019290925260e08101829052610100810182905261012081019190915290565b6040518060e001604052806060815260200160008152602001600061ffff168152602001600061ffff168152602001600063ffffffff16815260200160008152602001600081525090565b803560ff811681146123dd57600080fd5b919050565b6001600160a01b03811681146123f757600080fd5b50565b6000806040838503121561240d57600080fd5b612416836123cc565b91506020830135612426816123e2565b809150509250929050565b803561ffff811681146123dd57600080fd5b60008083601f84011261245557600080fd5b50813567ffffffffffffffff81111561246d57600080fd5b60208301915083602082850101111561248557600080fd5b9250929050565b6000806000604084860312156124a157600080fd5b6124aa84612431565b9250602084013567ffffffffffffffff8111156124c657600080fd5b6124d286828701612443565b9497909650939450505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff8111828210171561251e5761251e6124df565b604052919050565b600082601f83011261253757600080fd5b813567ffffffffffffffff811115612551576125516124df565b612564601f8201601f19166020016124f5565b81815284602083860101111561257957600080fd5b816020850160208301376000918101602001919091529392505050565b6000604082840312156125a857600080fd5b6040516040810167ffffffffffffffff82821081831117156125cc576125cc6124df565b8160405282935084359150808211156125e457600080fd5b6125f086838701612526565b8352602085013591508082111561260657600080fd5b5061261385828601612526565b6020830152505092915050565b600080600080600060a0868803121561263857600080fd5b61264186612431565b9450602086013567ffffffffffffffff8082111561265e57600080fd5b61266a89838a01612526565b9550604088013591508082111561268057600080fd5b61268c89838a01612596565b945060608801359150808211156126a257600080fd5b6126ae89838a01612596565b935060808801359150808211156126c457600080fd5b506126d188828901612526565b9150509295509295909350565b6000602082840312156126f057600080fd5b813561080f816123e2565b6000806000806080858703121561271157600080fd5b61271a85612431565b9350602085013567ffffffffffffffff8082111561273757600080fd5b61274388838901612526565b9450604087013591508082111561275957600080fd5b61276588838901612596565b9350606087013591508082111561277b57600080fd5b5061278887828801612526565b91505092959194509250565b6000806000604084860312156127a957600080fd5b833567ffffffffffffffff808211156127c157600080fd5b818601915086601f8301126127d557600080fd5b81356020828211156127e9576127e96124df565b8160051b6127f88282016124f5565b928352848101820192828101908b85111561281257600080fd5b83870192505b8483101561284e578235868111156128305760008081fd5b61283e8d86838b0101612596565b8352509183019190830190612818565b985050508701359250508082111561286557600080fd5b506124d286828701612443565b6000815180845260005b818110156128985760208185018101518683018201520161287c565b506000602082860101526020601f19601f83011685010191505092915050565b60208152600061080f6020830184612872565b6000602082840312156128dd57600080fd5b61080f826123cc565b600080604083850312156128f957600080fd5b823567ffffffffffffffff8082111561291157600080fd5b61291d86838701612596565b9350602085013591508082111561293357600080fd5b5061294085828601612526565b9150509250929050565b8183823760009101908152919050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b60006001820161299857612998612970565b5060010190565b600181811c908216806129b357607f821691505b60208210810361230e57634e487b7160e01b600052602260045260246000fd5b8181038181111561081257610812612970565b60ff818116838216019081111561081257610812612970565b8082018082111561081257610812612970565b600382810b9082900b03637fffffff198112637fffffff8213171561081257610812612970565b604081526000612a4c6040830185612872565b8281036020840152610ab78185612872565b634e487b7160e01b600052600160045260246000fd5b634e487b7160e01b600052601260045260246000fd5b600061ffff80841680612a9f57612a9f612a74565b92169190910492915050565b60ff828116828216039081111561081257610812612970565b606081526000612ad76060830186612872565b8281036020840152612ae98186612872565b91505061ffff83166040830152949350505050565b600060208284031215612b1057600080fd5b5051919050565b600081612b2657612b26612970565b506000190190565b808202811582820484141761081257610812612970565b600082612b5457612b54612a74565b500690565b600181815b80851115612b94578160001904821115612b7a57612b7a612970565b80851615612b8757918102915b93841c9390800290612b5e565b509250929050565b600082612bab57506001610812565b81612bb857506000610812565b8160018114612bce5760028114612bd857612bf4565b6001915050610812565b60ff841115612be957612be9612970565b50506001821b610812565b5060208310610133831016604e8410600b8410161715612c17575081810a610812565b612c218383612b59565b8060001904821115612c3557612c35612970565b029392505050565b600061080f8383612b9c565b81810360008312801583831316838312821617156108b7576108b7612970565b606081526000612c7c6060830186612872565b8281036020840152612c8e8186612872565b90508281036040840152611d808185612872565b600060208284031215612cb457600080fd5b8151801515811461080f57600080fdfe00010203040506070809ffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fffffffffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fa164736f6c6343000811000a", - "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100ea5760003560e01c806373cc48a61161008c57806398d35f201161006657806398d35f201461021c578063bd7ed31a14610224578063c327deef1461024d578063d7b82ebe1461027657600080fd5b806373cc48a6146101b55780638438dc04146101f65780638da5cb5b1461020957600080fd5b806313af4035116100c857806313af40351461015c57806328e7677d1461016f5780632c095cbb14610182578063435cc1621461019557600080fd5b8063020ed8d3146100ef578063087991bc146101045780630b1a249514610149575b600080fd5b6101026100fd3660046123fa565b610289565b005b61011761011236600461248c565b61030b565b6040805163ffffffff94851681529390921660208401526001600160601b031916908201526060015b60405180910390f35b610102610157366004612620565b61037b565b61010261016a3660046126de565b6104ef565b61010261017d3660046123fa565b610528565b6101026101903660046126fb565b6105a2565b6101a86101a3366004612794565b610673565b60405161014091906128b8565b6101de6101c33660046128cb565b6004602052600090815260409020546001600160a01b031681565b6040516001600160a01b039091168152602001610140565b6101026102043660046123fa565b6106fb565b6001546101de906001600160a01b031681565b6101a8610775565b6101de6102323660046128cb565b6005602052600090815260409020546001600160a01b031681565b6101de61025b3660046128cb565b6003602052600090815260409020546001600160a01b031681565b6101a86102843660046128e6565b610803565b6001546001600160a01b031633146102a057600080fd5b60ff821660008181526003602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527ff73c3c226af96b7f1ba666a21b3ceaf2be3ee6a365e3178fd9cd1eaae0075aa891015b60405180910390a15050565b60008060008060026000878760405161032592919061294a565b60408051918290039091208252602080830193909352908101600090812061ffff8b16825290925290205463ffffffff80821695506401000000008204169350600160401b900460601b91505093509350939050565b8351602080860191909120600090815260028252604080822061ffff891683529092529081205463ffffffff16906103b38584610818565b90506103c08187846108be565b6103c861232b565b845151156103e7576103da8585610818565b90506103e78188856108be565b60006103f283610904565b602081015190915060fe161561040757600080fd5b610412816027610963565b1580156104375750610425816002610963565b15806104375750610437816006610963565b61044057600080fd5b610451898985610120015184610975565b1561048d5787516020808a0191909120600090815260028252604080822061ffff8d1683529092522080546001600160e01b03191690556104e4565b6104ac88846101200151838561012001516104a787610904565b6109a5565b156100ea5787516020808a0191909120600090815260028252604080822061ffff8d1683529092522080546001600160e01b03191690555b505050505050505050565b6001546001600160a01b0316331461050657600080fd5b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6001546001600160a01b0316331461053f57600080fd5b60ff821660008181526004602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527f2fcc274c3b72dd483ab201bfa87295e3817e8b9b10693219873b722ca1af00c791016102ff565b6105aa61232b565b6105b48383610818565b805190915061ffff16602f146105c957600080fd5b60a08101518451602080870191909120600090815260028252604080822061ffff8a1683529092522054610603919063ffffffff16610ac0565b61060c57600080fd5b600061061782610ad9565b9050805151602082015110156100ea57610638818361012001518789610af1565b50508251602080850191909120600090815260028252604080822061ffff881683529092522080546001600160e01b03191690555b50505050565b6060600083838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201829052509394505050505b85518110156106f0576106dc8682815181106106ce576106ce61295a565b602002602001015183610c9f565b9150806106e881612986565b9150506106b0565b5090505b9392505050565b6001546001600160a01b0316331461071257600080fd5b60ff821660008181526005602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527fc7eec866a7a1386188cc3ca20ffea75b71bd3e90a60b6791b1d3f0971145118d91016102ff565b600080546107829061299f565b80601f01602080910402602001604051908101604052809291908181526020018280546107ae9061299f565b80156107fb5780601f106107d0576101008083540402835291602001916107fb565b820191906000526020600020905b8154815290600101906020018083116107de57829003601f168201915b505050505081565b606061080f8383610c9f565b90505b92915050565b61082061232b565b825161082b90610e1e565b905061083b8160e0015183610f18565b61084457600080fd5b6000610854828360000151610f80565b604083015190915060ff1661086a82600061102e565b1461087457600080fd5b6101208201819052608082015161088b9042610ac0565b61089457600080fd5b6108a2428360a00151610ac0565b6108ab57600080fd5b6108b78183868661108b565b5092915050565b6108cc8360a0015182610ac0565b6108d557600080fd5b825161ffff166032146108e757600080fd5b6108f683610120015183611170565b6108ff57600080fd5b505050565b6040805160c08101825260008082526020820181905291810182905260608082018190526080820183905260a08201529061093e83610ad9565b60a081015160c08201519192506106f49161095a9082906129d3565b835191906111de565b600061080f8360a00151600084611325565b600061098282848661143a565b15610999576109918286610963565b15905061099d565b5060005b949350505050565b602081015160009060fe16156109ba57600080fd5b60006109c586611461565b905060006109d285611461565b90506000806109e18a8261147d565b6109ec9060016129e6565b60ff1690505b8951811015610aae5783610a1e89610a1984858f51610a1191906129d3565b8f91906114a1565b611523565b03610a82576000610a3a87610a1985868f51610a1191906129d3565b90508660800151841015610a66578381118015610a5a5750866080015181105b95505050505050610ab7565b83811180610a5a57508660800151811095505050505050610ab7565b905080610a8f8a8261147d565b610a9a9060016129e6565b610aa79060ff16826129ff565b90506109f2565b50600093505050505b95945050505050565b600080610acd8385612a12565b60030b12159392505050565b610ae1612381565b61081282610100015160006115af565b60a08401518451600090610b0590836115ca565b905060008660a001518760c00151610b1d91906129d3565b9050818111610b2b57600080fd5b6000610b378688611624565b905080600003610b6657610b57610b4e84866129ff565b89519087611325565b15610b6157600080fd5b610bad565b8751600090610b769086866114a1565b905060008213610b8557600080fd5b6000610b918983611624565b12156104e4576000610ba38883611624565b126104e457600080fd5b5050505050505050565b60c08101516020820181905281515111610bce5750565b6000610be2826000015183602001516115ca565b8260200151610bf191906129ff565b8251909150610c00908261177d565b61ffff166040830152610c146002826129ff565b8251909150610c23908261177d565b61ffff166060830152610c376002826129ff565b8251909150610c4690826117a5565b63ffffffff166080830152610c5c6004826129ff565b8251909150600090610c6e908361177d565b61ffff169050610c7f6002836129ff565b60a084018190529150610c9281836129ff565b60c0909301929092525050565b6060610ca961232b565b610cb38484610818565b61012081015180516020918201206000908152600282526040808220845161ffff16835290925220805491925090600160401b900460601b6001600160601b03191615610d1a5760a08201518154610d11919063ffffffff16610ac0565b610d1a57600080fd5b604080516060808201835260a085015163ffffffff9081168352608086015181166020808501918252610100880180518051908301206001600160601b0319168688019081526101208a0180518051908501206000908152600285528981208c5161ffff16825290945292889020965187549451915190961c600160401b0268010000000000000000600160e01b03199186166401000000000267ffffffffffffffff19909516969095169590951792909217939093169190911790925551905191517f55ced933cdd5a34dd03eb5d4bef19ec6ebb251dcd7a988eee0c1b9a13baaa88b92610e099291612a39565b60405180910390a15061010001519392505050565b610e2661232b565b610e3182600061177d565b61ffff168152610e4282600261147d565b60ff166020820152610e5582600361147d565b60ff166040820152610e688260046117a5565b63ffffffff9081166060830152610e849083906008906117a516565b63ffffffff9081166080830152610ea0908390600c906117a516565b63ffffffff90811660a0830152610ebc90839060109061177d16565b61ffff1660c0820152610ed08260126117cf565b60e0820181905251610f0d90610ee79060126129ff565b8260e001515160128551610efb91906129d3565b610f0591906129d3565b8491906114a1565b610100820152919050565b600080610f2f610f2884836115ca565b849061177d565b8351602080860191909120865187830120600090815260028352604080822061ffff90951682529390925291902054600160401b900460601b6001600160601b031990811691161491505092915050565b60606000610f8d84610ad9565b90505b805151602082015110156108b757606081015161ffff16600114610fb357600080fd5b8151600003610fcc57610fc5816117ea565b9150611008565b60208101518151610fdc916115ca565b825114610fe857600080fd5b805160208201518351610fff92859260009261180b565b61100857600080fd5b8261ffff16816040015161ffff161461102057600080fd5b61102981610bb7565b610f90565b6000805b8351831061104257611042612a5e565b600061104e858561147d565b60ff16905061105e8160016129ff565b61106890856129ff565b935080600003611078575061080f565b6110836001836129ff565b915050611032565b83518360e0015151111561109e57600080fd5b6110c36000858560e001515187516110b691906129d3565b60e087015192919061182e565b6110cc57600080fd5b60006110d882826115af565b9050602b61ffff16816040015161ffff1603611107576110f9848483611863565b61110257600080fd5b611169565b603061ffff16816040015161ffff1603611126576110f98484836118fc565b60405162461bcd60e51b8152602060048201526014602482015273139bc81d985b1a59081c1c9bdbd988199bdd5b9960621b604482015260640160405180910390fd5b5050505050565b60008061117d848261147d565b6111889060016129e6565b60ff16905060005b8351811015610999576111a58482878561182e565b156111b557600192505050610812565b6111bf848261147d565b6111ca9060016129e6565b6111d79060ff16826129ff565b9050611190565b6040805160c08101825260008082526020820181905291810182905260608082018190526080820183905260a08201529061121983856129ff565b90506112306112296000866129ff565b869061147d565b60ff1682526112436112296001866129ff565b60ff1660208301526112606112596002866129ff565b869061177d565b61ffff16604083015260006112806112796004876129ff565b879061147d565b905061128d6005866129ff565b945061129d868660ff84166114a1565b60608401526112af60ff8216866129ff565b945060006112bd878761147d565b905060208160ff1611156112d057600080fd5b6112db6001876129ff565b95506112eb878760ff84166119a4565b60808501526112fd60ff8216876129ff565b95506113158661130d81866129d3565b8991906114a1565b60a0850152509195945050505050565b600060ff600883811c821691839161133e918616612a8a565b90506000611350600780871690612aab565b600160ff919091161b9050855b875181101561142c576000611372898361147d565b9050600061138b6113848460016129ff565b8b9061147d565b90508160ff168660ff1610156113aa57600096505050505050506106f4565b8160ff168660ff160361140b578460ff168160ff16116113d357600096505050505050506106f4565b836113f66113e460ff8816866129ff565b6113ef9060026129ff565b8c9061147d565b1660ff166000141596505050505050506106f4565b6114168160026129e6565b6114239060ff16846129ff565b9250505061135d565b506000979650505050505050565b6000806114478584611523565b9050600061145485611461565b9190911495945050505050565b60006108126001611472848461147d565b84919060ff166119e5565b60008282815181106114915761149161295a565b016020015160f81c905092915050565b82516060906114b083856129ff565b11156114bb57600080fd5b60008267ffffffffffffffff8111156114d6576114d66124df565b6040519080825280601f01601f191660200182016040528015611500576020820181803683370190505b50905060208082019086860101611518828287611bfd565b509095945050505050565b815160ff1660009081526005602052604080822054606085015182860151925163347ced5960e11b81526001600160a01b03909216926368f9dab29261156e92918791600401612ac4565b602060405180830381865afa15801561158b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061080f9190612afe565b6115b7612381565b82815260c0810182905261081281610bb7565b6000815b835181106115de576115de612a5e565b60006115ea858361147d565b60ff1690506115fa8160016129ff565b61160490836129ff565b915080600003611614575061161a565b506115ce565b61099d83826129d3565b60006116308383611c53565b1561163d57506000610812565b600080600080600061165088600061102e565b9050600061165f88600061102e565b90505b8082111561168b578593506116778987611c71565b95508161168381612b17565b925050611662565b818111156116b4578492506116a08886611c71565b9450806116ac81612b17565b91505061168b565b6000821180156116cd57506116cb89878a8861182e565b155b15611702578593506116df8987611c71565b95508492506116ee8886611c71565b94506116fb6001836129d3565b91506116b4565b8560000361171a576000199650505050505050610812565b846000036117315760019650505050505050610812565b61177061173f8560016129ff565b6117498b8761147d565b60ff168a6117588760016129ff565b6117628d8961147d565b8e949392919060ff16611c95565b9998505050505050505050565b815160009061178d8360026129ff565b111561179857600080fd5b50016002015161ffff1690565b81516000906117b58360046129ff565b11156117c057600080fd5b50016004015163ffffffff1690565b606060006117dd84846115ca565b905061099d8484836114a1565b602081015181516060916108129161180290826115ca565b845191906114a1565b6000611818848484611d8a565b611823878785611d8a565b149695505050505050565b6000611847838384865161184291906129d3565b611d8a565b611859868687895161184291906129d3565b1495945050505050565b60008061186f85610ad9565b90505b8051516020820151101561099957604081015161ffff1660301461189557600080fd5b60006118a082611dae565b905060006118bb6000835184611dca9092919063ffffffff16565b90506118c981838989611e68565b156118ec576118e26118da846117ea565b868385611f6d565b93505050506106f4565b50506118f781610bb7565b611872565b60006119158460e0015161190f846117ea565b90611c53565b61191e57600080fd5b8151516020830151101561199a5761193d8460e0015161190f846117ea565b61194657600080fd5b600061195183611dae565b9050600061196c6000835184611dca9092919063ffffffff16565b905061197a81838888611e68565b1561198a576001925050506106f4565b505061199582610bb7565b61191e565b5060009392505050565b600060208211156119b457600080fd5b83516119c083856129ff565b11156119cb57600080fd5b506020919092018101519190036101000a60001901191690565b600060348211156119f557600080fd5b600080805b84811015611ae157600087611a0f83896129ff565b81518110611a1f57611a1f61295a565b01602001516001600160f81b0319169050600360fc1b8110801590611a525750603d60f91b6001600160f81b0319821611155b611a5b57600080fd5b604051806080016040528060478152602001612cc560479139611a83603060f884901c6129d3565b81518110611a9357611a9361295a565b0160209081015160f81c9350831115611aab57600080fd5b611ab66001876129d3565b8203611ac25750611ae1565b5060059290921b60ff8216179180611ad981612986565b9150506119fa565b506000611aef856005612b2e565b9050611afc600886612b45565b600003611b14578160ff16600584901b179250611be3565b611b1f600886612b45565b600203611b4d5760028260ff16901c60ff16600384901b179250600281611b4691906129d3565b9050611be3565b611b58600886612b45565b600403611b7f5760048260ff16901c60ff16600184901b179250600481611b4691906129d3565b611b8a600886612b45565b600503611bb15760018260ff16901c60ff16600484901b179250600181611b4691906129d3565b611bbc600886612b45565b6007036100ea5760038260ff16901c60ff16600284901b179250600381611b4691906129d3565b611bef816101006129d3565b9290921b9695505050505050565b60208110611c355781518352611c146020846129ff565b9250611c216020836129ff565b9150611c2e6020826129d3565b9050611bfd565b905182516020929092036101000a6000190180199091169116179052565b60008151835114801561080f575061080f836000846000875161180b565b6000611c7d838361147d565b60ff16611c8b8360016129ff565b61080f91906129ff565b60008480831015611ca35750815b60208789018101908587010160005b83811015611d6f5782518251808214611d3f5760006020871115611cd95750600019611d15565b600184611ce78960206129d3565b611cf191906129ff565b611cfc906008612b2e565b611d07906002612c3d565b611d1191906129d3565b1990505b6000611d25838316858416612c49565b90508015611d3c579750611d809650505050505050565b50505b611d4a6020866129ff565b9450611d576020856129ff565b93505050602081611d6891906129ff565b9050611cb2565b50611d7a8589612c49565b93505050505b9695505050505050565b8251600090611d9983856129ff565b1115611da457600080fd5b5091016020012090565b60a081015160c0820151606091610812916118029082906129d3565b6040805160808101825260008082526020820181905291810191909152606080820152611e02611dfb6000856129ff565b859061177d565b61ffff168152611e1d611e166002856129ff565b859061147d565b60ff166020820152611e33611e166003856129ff565b60ff166040820152611e5c611e496004856129ff565b611e546004856129d3565b8691906114a1565b60608201529392505050565b6000846020015160ff16600314611e815750600061099d565b826020015160ff16856040015160ff1614611e9e5750600061099d565b6000611ea98561206e565b90508360c0015161ffff168161ffff1614611ec857600091505061099d565b855161010016600003611edf57600091505061099d565b60408087015160ff166000908152600360209081529082902054855191860151925163de8f50a160e01b81526001600160a01b039091169263de8f50a192611f2c928a9290600401612c69565b602060405180830381865afa158015611f49573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d809190612ca2565b600080611f798361206e565b90505b845151602086015110156120625760a085015160c0860151600091611faf91611fa69082906129d3565b88519190611dca565b90508161ffff16816000015161ffff1614611fca5750612054565b846040015160ff16816020015160ff1614611fe55750612054565b6040805180820190915260608152600060208201526120128551895161200b91906129ff565b82906120db565b5061201d8189612140565b506120288186612140565b50612040826040015182600001518460600151612167565b15612051576001935050505061099d565b50505b61205d85610bb7565b611f7c565b50600095945050505050565b60008060005b83518110156120cc57600181161561209857612090848261147d565b60ff166120aa565b60086120a4858361147d565b60ff16901b5b6120b89061ffff16836129ff565b9150806120c481612986565b915050612074565b506106f4601082901c826129ff565b6040805180820190915260608152600060208201526120fb602083612b45565b156121235761210b602083612b45565b6121169060206129d3565b61212090836129ff565b91505b506020828101829052604080518085526000815290920101905290565b60408051808201909152606081526000602082015261080f83846000015151848551612213565b60ff83166000908152600460205260408120546001600160a01b031661218f575060006106f4565b60ff8416600090815260046020819052604091829020549151637bf41d7760e11b81526001600160a01b039092169163f7e83aee916121d2918791879101612a39565b602060405180830381865afa1580156121ef573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061099d9190612ca2565b604080518082019091526060815260006020820152825182111561223657600080fd5b602085015161224583866129ff565b111561227857612278856122688760200151878661226391906129ff565b6122fd565b612273906002612b2e565b612314565b6000808651805187602083010193508088870111156122975787860182525b505050602084015b602084106122d757805182526122b66020836129ff565b91506122c36020826129ff565b90506122d06020856129d3565b935061229f565b51815160001960208690036101000a019081169019919091161790525083949350505050565b60008183111561230e575081610812565b50919050565b815161232083836120db565b5061066d8382612140565b604080516101408101825260008082526020820181905291810182905260608082018390526080820183905260a0820183905260c082019290925260e08101829052610100810182905261012081019190915290565b6040518060e001604052806060815260200160008152602001600061ffff168152602001600061ffff168152602001600063ffffffff16815260200160008152602001600081525090565b803560ff811681146123dd57600080fd5b919050565b6001600160a01b03811681146123f757600080fd5b50565b6000806040838503121561240d57600080fd5b612416836123cc565b91506020830135612426816123e2565b809150509250929050565b803561ffff811681146123dd57600080fd5b60008083601f84011261245557600080fd5b50813567ffffffffffffffff81111561246d57600080fd5b60208301915083602082850101111561248557600080fd5b9250929050565b6000806000604084860312156124a157600080fd5b6124aa84612431565b9250602084013567ffffffffffffffff8111156124c657600080fd5b6124d286828701612443565b9497909650939450505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff8111828210171561251e5761251e6124df565b604052919050565b600082601f83011261253757600080fd5b813567ffffffffffffffff811115612551576125516124df565b612564601f8201601f19166020016124f5565b81815284602083860101111561257957600080fd5b816020850160208301376000918101602001919091529392505050565b6000604082840312156125a857600080fd5b6040516040810167ffffffffffffffff82821081831117156125cc576125cc6124df565b8160405282935084359150808211156125e457600080fd5b6125f086838701612526565b8352602085013591508082111561260657600080fd5b5061261385828601612526565b6020830152505092915050565b600080600080600060a0868803121561263857600080fd5b61264186612431565b9450602086013567ffffffffffffffff8082111561265e57600080fd5b61266a89838a01612526565b9550604088013591508082111561268057600080fd5b61268c89838a01612596565b945060608801359150808211156126a257600080fd5b6126ae89838a01612596565b935060808801359150808211156126c457600080fd5b506126d188828901612526565b9150509295509295909350565b6000602082840312156126f057600080fd5b813561080f816123e2565b6000806000806080858703121561271157600080fd5b61271a85612431565b9350602085013567ffffffffffffffff8082111561273757600080fd5b61274388838901612526565b9450604087013591508082111561275957600080fd5b61276588838901612596565b9350606087013591508082111561277b57600080fd5b5061278887828801612526565b91505092959194509250565b6000806000604084860312156127a957600080fd5b833567ffffffffffffffff808211156127c157600080fd5b818601915086601f8301126127d557600080fd5b81356020828211156127e9576127e96124df565b8160051b6127f88282016124f5565b928352848101820192828101908b85111561281257600080fd5b83870192505b8483101561284e578235868111156128305760008081fd5b61283e8d86838b0101612596565b8352509183019190830190612818565b985050508701359250508082111561286557600080fd5b506124d286828701612443565b6000815180845260005b818110156128985760208185018101518683018201520161287c565b506000602082860101526020601f19601f83011685010191505092915050565b60208152600061080f6020830184612872565b6000602082840312156128dd57600080fd5b61080f826123cc565b600080604083850312156128f957600080fd5b823567ffffffffffffffff8082111561291157600080fd5b61291d86838701612596565b9350602085013591508082111561293357600080fd5b5061294085828601612526565b9150509250929050565b8183823760009101908152919050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b60006001820161299857612998612970565b5060010190565b600181811c908216806129b357607f821691505b60208210810361230e57634e487b7160e01b600052602260045260246000fd5b8181038181111561081257610812612970565b60ff818116838216019081111561081257610812612970565b8082018082111561081257610812612970565b600382810b9082900b03637fffffff198112637fffffff8213171561081257610812612970565b604081526000612a4c6040830185612872565b8281036020840152610ab78185612872565b634e487b7160e01b600052600160045260246000fd5b634e487b7160e01b600052601260045260246000fd5b600061ffff80841680612a9f57612a9f612a74565b92169190910492915050565b60ff828116828216039081111561081257610812612970565b606081526000612ad76060830186612872565b8281036020840152612ae98186612872565b91505061ffff83166040830152949350505050565b600060208284031215612b1057600080fd5b5051919050565b600081612b2657612b26612970565b506000190190565b808202811582820484141761081257610812612970565b600082612b5457612b54612a74565b500690565b600181815b80851115612b94578160001904821115612b7a57612b7a612970565b80851615612b8757918102915b93841c9390800290612b5e565b509250929050565b600082612bab57506001610812565b81612bb857506000610812565b8160018114612bce5760028114612bd857612bf4565b6001915050610812565b60ff841115612be957612be9612970565b50506001821b610812565b5060208310610133831016604e8410600b8410161715612c17575081810a610812565b612c218383612b59565b8060001904821115612c3557612c35612970565b029392505050565b600061080f8383612b9c565b81810360008312801583831316838312821617156108b7576108b7612970565b606081526000612c7c6060830186612872565b8281036020840152612c8e8186612872565b90508281036040840152611d808185612872565b600060208284031215612cb457600080fd5b8151801515811461080f57600080fdfe00010203040506070809ffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fffffffffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fa164736f6c6343000811000a", + "bytecode": "0x608060405234801562000010575f80fd5b506040516200308b3803806200308b833981016040819052620000339162000189565b600180546001600160a01b031916331790555f620000528282620002e1565b50604080516060810182525f80825263e090bba06020830152825191928301916200007e9190620003ad565b60408051918290039091206001600160601b031916909152602b5f9081527fc92a43746f20f69898978a3075767b860ba247ac0639d1831bf8c942c5db2389602090815283517f95c6356c1b7a542b884d2484ef785c9c7224e77e1016c20007bddc15c23b452f8054928601519585015160601c6801000000000000000002600160401b600160e01b031963ffffffff978816640100000000026001600160401b03199095169790931696909617929092171693909317909255517f55ced933cdd5a34dd03eb5d4bef19ec6ebb251dcd7a988eee0c1b9a13baaa88b91620001669162000427565b60405180910390a150620004ce565b634e487b7160e01b5f52604160045260245ffd5b5f60208083850312156200019b575f80fd5b82516001600160401b0380821115620001b2575f80fd5b818501915085601f830112620001c6575f80fd5b815181811115620001db57620001db62000175565b604051601f8201601f19908116603f0116810190838211818310171562000206576200020662000175565b8160405282815288868487010111156200021e575f80fd5b5f93505b8284101562000241578484018601518185018701529285019262000222565b5f86848301015280965050505050505092915050565b600181811c908216806200026c57607f821691505b6020821081036200028b57634e487b7160e01b5f52602260045260245ffd5b50919050565b601f821115620002dc57805f5260205f20601f840160051c81016020851015620002b85750805b601f840160051c820191505b81811015620002d9575f8155600101620002c4565b50505b505050565b81516001600160401b03811115620002fd57620002fd62000175565b62000315816200030e845462000257565b8462000291565b602080601f8311600181146200034b575f8415620003335750858301515b5f19600386901b1c1916600185901b178555620003a5565b5f85815260208120601f198616915b828110156200037b578886015182559484019460019091019084016200035a565b50858210156200039957878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b5f808354620003bc8162000257565b60018281168015620003d75760018114620003ed576200041b565b60ff19841687528215158302870194506200041b565b875f526020805f205f5b85811015620004125781548a820152908401908201620003f7565b50505082870194505b50929695505050505050565b604081525f60018060408401525f60608401526020608060208501525f8554620004518162000257565b80608088015260a0600183165f81146200047457600181146200049157620004c0565b60ff19841660a08a015260a083151560051b8a01019450620004c0565b895f5260205f205f5b84811015620004b75781548b82018501529088019087016200049a565b8a0160a0019550505b509298975050505050505050565b612baf80620004dc5f395ff3fe608060405234801561000f575f80fd5b50600436106100e5575f3560e01c806373cc48a61161008857806398d35f201161006357806398d35f2014610215578063bd7ed31a1461021d578063c327deef14610245578063d7b82ebe1461026d575f80fd5b806373cc48a6146101af5780638438dc04146101ef5780638da5cb5b14610202575f80fd5b806313af4035116100c357806313af40351461015657806328e7677d146101695780632c095cbb1461017c578063435cc1621461018f575f80fd5b8063020ed8d3146100e9578063087991bc146100fe5780630b1a249514610143575b5f80fd5b6100fc6100f73660046122ff565b610280565b005b61011161010c36600461238a565b610300565b6040805163ffffffff94851681529390921660208401526001600160601b031916908201526060015b60405180910390f35b6100fc610151366004612510565b61036c565b6100fc6101643660046125c6565b6104da565b6100fc6101773660046122ff565b610512565b6100fc61018a3660046125e1565b61058a565b6101a261019d366004612674565b610656565b60405161013a919061278c565b6101d76101bd36600461279e565b60046020525f90815260409020546001600160a01b031681565b6040516001600160a01b03909116815260200161013a565b6100fc6101fd3660046122ff565b6106d2565b6001546101d7906001600160a01b031681565b6101a261074a565b6101d761022b36600461279e565b60056020525f90815260409020546001600160a01b031681565b6101d761025336600461279e565b60036020525f90815260409020546001600160a01b031681565b6101a261027b3660046127b7565b6107d5565b6001546001600160a01b03163314610296575f80fd5b60ff82165f8181526003602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527ff73c3c226af96b7f1ba666a21b3ceaf2be3ee6a365e3178fd9cd1eaae0075aa891015b60405180910390a15050565b5f805f8060025f8787604051610317929190612817565b604080519182900390912082526020808301939093529081015f90812061ffff8b16825290925290205463ffffffff80821695506401000000008204169350600160401b900460601b91505093509350939050565b83516020808601919091205f90815260028252604080822061ffff891683529092529081205463ffffffff16906103a385846107ea565b90506103b0818784610889565b6103b8612239565b845151156103d7576103ca85856107ea565b90506103d7818885610889565b5f6103e1836108cc565b602081015190915060fe16156103f5575f80fd5b61040081602761092a565b158015610425575061041381600261092a565b1580610425575061042581600661092a565b61042d575f80fd5b61043e89898561012001518461093a565b156104795787516020808a01919091205f90815260028252604080822061ffff8d1683529092522080546001600160e01b03191690556104cf565b6104988884610120015183856101200151610493876108cc565b610968565b156100e55787516020808a01919091205f90815260028252604080822061ffff8d1683529092522080546001600160e01b03191690555b505050505050505050565b6001546001600160a01b031633146104f0575f80fd5b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6001546001600160a01b03163314610528575f80fd5b60ff82165f8181526004602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527f2fcc274c3b72dd483ab201bfa87295e3817e8b9b10693219873b722ca1af00c791016102f4565b610592612239565b61059c83836107ea565b805190915061ffff16602f146105b0575f80fd5b60a081015184516020808701919091205f90815260028252604080822061ffff8a16835290925220546105e9919063ffffffff16610a7c565b6105f1575f80fd5b5f6105fb82610a94565b9050805151602082015110156100e55761061c818361012001518789610aab565b505082516020808501919091205f90815260028252604080822061ffff881683529092522080546001600160e01b03191690555b50505050565b60605f83838080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201829052509394505050505b85518110156106c7576106bd8682815181106106af576106af612826565b602002602001015183610c4a565b9150600101610691565b5090505b9392505050565b6001546001600160a01b031633146106e8575f80fd5b60ff82165f8181526005602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527fc7eec866a7a1386188cc3ca20ffea75b71bd3e90a60b6791b1d3f0971145118d91016102f4565b5f80546107569061283a565b80601f01602080910402602001604051908101604052809291908181526020018280546107829061283a565b80156107cd5780601f106107a4576101008083540402835291602001916107cd565b820191905f5260205f20905b8154815290600101906020018083116107b057829003601f168201915b505050505081565b60606107e18383610c4a565b90505b92915050565b6107f2612239565b82516107fd90610dc6565b905061080d8160e0015183610ebf565b610815575f80fd5b5f61082382835f0151610f25565b604083015190915060ff16610838825f610fcc565b14610841575f80fd5b610120820181905260808201516108589042610a7c565b610860575f80fd5b61086e428360a00151610a7c565b610876575f80fd5b61088281838686611026565b5092915050565b6108978360a0015182610a7c565b61089f575f80fd5b825161ffff166032146108b0575f80fd5b6108bf83610120015183611106565b6108c7575f80fd5b505050565b6040805160c0810182525f8082526020820181905291810182905260608082018190526080820183905260a08201529061090583610a94565b60a081015160c08201519192506106cb91610921908290612880565b83519190611172565b5f6107e18360a001515f846112b4565b5f6109468284866113c1565b1561095d57610955828661092a565b159050610960565b505f5b949350505050565b60208101515f9060fe161561097b575f80fd5b5f610985866113e6565b90505f610991856113e6565b90505f8061099f8a82611401565b6109aa906001612893565b60ff1690505b8951811015610a6b57836109dc896109d784858f516109cf9190612880565b8f9190611424565b6114a4565b03610a3f575f6109f7876109d785868f516109cf9190612880565b90508660800151841015610a23578381118015610a175750866080015181105b95505050505050610a73565b83811180610a1757508660800151811095505050505050610a73565b905080610a4c8a82611401565b610a57906001612893565b610a649060ff16826128ac565b90506109b0565b505f93505050505b95945050505050565b5f80610a8883856128bf565b60030b12159392505050565b610a9c61228e565b6107e48261010001515f61152d565b60a084015184515f90610abe9083611548565b90505f8660a001518760c00151610ad59190612880565b9050818111610ae2575f80fd5b5f610aed868861159f565b9050805f03610b1a57610b0c610b0384866128ac565b895190876112b4565b15610b15575f80fd5b610b5b565b87515f90610b29908686611424565b90505f8213610b36575f80fd5b5f610b41898361159f565b12156104cf575f610b52888361159f565b126104cf575f80fd5b5050505050505050565b60c08101516020820181905281515111610b7c5750565b5f610b8e825f01518360200151611548565b8260200151610b9d91906128ac565b8251909150610bac90826116ec565b61ffff166040830152610bc06002826128ac565b8251909150610bcf90826116ec565b61ffff166060830152610be36002826128ac565b8251909150610bf29082611712565b63ffffffff166080830152610c086004826128ac565b82519091505f90610c1990836116ec565b61ffff169050610c2a6002836128ac565b60a084018190529150610c3d81836128ac565b60c0909301929092525050565b6060610c54612239565b610c5e84846107ea565b61012081015180516020918201205f908152600282526040808220845161ffff16835290925220805491925090600160401b900460601b6001600160601b03191615610cc35760a08201518154610cbb919063ffffffff16610a7c565b610cc3575f80fd5b604080516060808201835260a085015163ffffffff9081168352608086015181166020808501918252610100880180518051908301206001600160601b0319168688019081526101208a0180518051908501205f908152600285528981208c5161ffff16825290945292889020965187549451915190961c600160401b0268010000000000000000600160e01b03199186166401000000000267ffffffffffffffff19909516969095169590951792909217939093169190911790925551905191517f55ced933cdd5a34dd03eb5d4bef19ec6ebb251dcd7a988eee0c1b9a13baaa88b92610db192916128e6565b60405180910390a15061010001519392505050565b610dce612239565b610dd8825f6116ec565b61ffff168152610de9826002611401565b60ff166020820152610dfc826003611401565b60ff166040820152610e0f826004611712565b63ffffffff9081166060830152610e2b90839060089061171216565b63ffffffff9081166080830152610e47908390600c9061171216565b63ffffffff90811660a0830152610e639083906010906116ec16565b61ffff1660c0820152610e7782601261173a565b60e0820181905251610eb490610e8e9060126128ac565b8260e001515160128551610ea29190612880565b610eac9190612880565b849190611424565b610100820152919050565b5f80610ed5610ece8483611548565b84906116ec565b83516020808601919091208651878301205f90815260028352604080822061ffff90951682529390925291902054600160401b900460601b6001600160601b031990811691161491505092915050565b60605f610f3184610a94565b90505b8051516020820151101561088257606081015161ffff16600114610f56575f80fd5b81515f03610f6e57610f6781611754565b9150610fa7565b60208101518151610f7e91611548565b825114610f89575f80fd5b805160208201518351610f9f9285925f92611775565b610fa7575f80fd5b8261ffff16816040015161ffff1614610fbe575f80fd5b610fc781610b65565b610f34565b5f805b83518310610fdf57610fdf61290a565b5f610fea8585611401565b60ff169050610ffa8160016128ac565b61100490856128ac565b9350805f0361101357506107e1565b61101e6001836128ac565b915050610fcf565b83518360e00151511115611038575f80fd5b61105c5f858560e0015151875161104f9190612880565b60e0870151929190611797565b611064575f80fd5b5f61106f828261152d565b9050602b61ffff16816040015161ffff160361109d576110908484836117cb565b611098575f80fd5b6110ff565b603061ffff16816040015161ffff16036110bc5761109084848361185f565b60405162461bcd60e51b8152602060048201526014602482015273139bc81d985b1a59081c1c9bdbd988199bdd5b9960621b604482015260640160405180910390fd5b5050505050565b5f806111128482611401565b61111d906001612893565b60ff1690505f5b835181101561095d5761113984828785611797565b15611149576001925050506107e4565b6111538482611401565b61115e906001612893565b61116b9060ff16826128ac565b9050611124565b6040805160c0810182525f8082526020820181905291810182905260608082018190526080820183905260a0820152906111ac83856128ac565b90506111c26111bb5f866128ac565b8690611401565b60ff1682526111d56111bb6001866128ac565b60ff1660208301526111f26111eb6002866128ac565b86906116ec565b61ffff1660408301525f61121161120a6004876128ac565b8790611401565b905061121e6005866128ac565b945061122e868660ff8416611424565b606084015261124060ff8216866128ac565b94505f61124d8787611401565b905060208160ff16111561125f575f80fd5b61126a6001876128ac565b955061127a878760ff8416611900565b608085015261128c60ff8216876128ac565b95506112a48661129c8186612880565b899190611424565b60a0850152509195945050505050565b5f60ff600883811c82169183916112cc918616612932565b90505f6112dd600780871690612952565b600160ff919091161b9050855b87518110156113b4575f6112fe8983611401565b90505f61131661130f8460016128ac565b8b90611401565b90508160ff168660ff161015611334575f96505050505050506106cb565b8160ff168660ff1603611393578460ff168160ff161161135c575f96505050505050506106cb565b8361137f61136d60ff8816866128ac565b6113789060026128ac565b8c90611401565b1660ff165f141596505050505050506106cb565b61139e816002612893565b6113ab9060ff16846128ac565b925050506112ea565b505f979650505050505050565b5f806113cd85846114a4565b90505f6113d9856113e6565b9190911495945050505050565b5f6107e460016113f68484611401565b84919060ff1661193d565b5f82828151811061141457611414612826565b016020015160f81c905092915050565b825160609061143383856128ac565b111561143d575f80fd5b5f8267ffffffffffffffff811115611457576114576123d9565b6040519080825280601f01601f191660200182016040528015611481576020820181803683370190505b50905060208082019086860101611499828287611b43565b509095945050505050565b815160ff165f9081526005602052604080822054606085015182860151925163347ced5960e11b81526001600160a01b03909216926368f9dab2926114ee9291879160040161296b565b602060405180830381865afa158015611509573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107e191906129a4565b61153561228e565b82815260c081018290526107e481610b65565b5f815b8351811061155b5761155b61290a565b5f6115668583611401565b60ff1690506115768160016128ac565b61158090836128ac565b9150805f0361158f5750611595565b5061154b565b6109608382612880565b5f6115aa8383611b98565b156115b657505f6107e4565b5f805f805f6115c5885f610fcc565b90505f6115d2885f610fcc565b90505b808211156115fe578593506115ea8987611bb3565b9550816115f6816129bb565b9250506115d5565b81811115611627578492506116138886611bb3565b94508061161f816129bb565b9150506115fe565b5f8211801561163f575061163d89878a88611797565b155b15611674578593506116518987611bb3565b95508492506116608886611bb3565b945061166d600183612880565b9150611627565b855f0361168a575f1996505050505050506107e4565b845f036116a057600196505050505050506107e4565b6116df6116ae8560016128ac565b6116b88b87611401565b60ff168a6116c78760016128ac565b6116d18d89611401565b8e949392919060ff16611bd6565b9998505050505050505050565b81515f906116fb8360026128ac565b1115611705575f80fd5b50016002015161ffff1690565b81515f906117218360046128ac565b111561172b575f80fd5b50016004015163ffffffff1690565b60605f6117478484611548565b9050610960848483611424565b602081015181516060916107e49161176c9082611548565b84519190611424565b5f611781848484611cc6565b61178c878785611cc6565b149695505050505050565b5f6117af83838486516117aa9190612880565b611cc6565b6117c186868789516117aa9190612880565b1495945050505050565b5f806117d685610a94565b90505b8051516020820151101561095d57604081015161ffff166030146117fb575f80fd5b5f61180582611ce8565b90505f61181e5f835184611d049092919063ffffffff16565b905061182c81838989611da0565b1561184f5761184561183d84611754565b868385611e9b565b93505050506106cb565b505061185a81610b65565b6117d9565b5f6118778460e0015161187184611754565b90611b98565b61187f575f80fd5b815151602083015110156118f75761189e8460e0015161187184611754565b6118a6575f80fd5b5f6118b083611ce8565b90505f6118c95f835184611d049092919063ffffffff16565b90506118d781838888611da0565b156118e7576001925050506106cb565b50506118f282610b65565b61187f565b505f9392505050565b5f602082111561190e575f80fd5b835161191a83856128ac565b1115611924575f80fd5b506020919092018101519190036101000a5f1901191690565b5f603482111561194b575f80fd5b5f80805b84811015611a29575f8761196383896128ac565b8151811061197357611973612826565b01602001516001600160f81b0319169050600360fc1b81108015906119a65750603d60f91b6001600160f81b0319821611155b6119ae575f80fd5b604051806080016040528060478152602001612b5c604791396119d6603060f884901c612880565b815181106119e6576119e6612826565b0160209081015160f81c93508311156119fd575f80fd5b611a08600187612880565b8203611a145750611a29565b5060059290921b60ff8216179160010161194f565b505f611a368560056129d0565b9050611a436008866129e7565b5f03611a5a578160ff16600584901b179250611b29565b611a656008866129e7565b600203611a935760028260ff16901c60ff16600384901b179250600281611a8c9190612880565b9050611b29565b611a9e6008866129e7565b600403611ac55760048260ff16901c60ff16600184901b179250600481611a8c9190612880565b611ad06008866129e7565b600503611af75760018260ff16901c60ff16600484901b179250600181611a8c9190612880565b611b026008866129e7565b6007036100e55760038260ff16901c60ff16600284901b179250600381611a8c9190612880565b611b3581610100612880565b9290921b9695505050505050565b60208110611b7b5781518352611b5a6020846128ac565b9250611b676020836128ac565b9150611b74602082612880565b9050611b43565b905182516020929092036101000a5f190180199091169116179052565b5f815183511480156107e157506107e1835f845f8751611775565b5f611bbe8383611401565b60ff16611bcc8360016128ac565b6107e191906128ac565b5f8480831015611be35750815b6020878901810190858701015f5b83811015611cab5782518251808214611c7b575f6020871115611c1657505f19611c52565b600184611c24896020612880565b611c2e91906128ac565b611c399060086129d0565b611c44906002612ada565b611c4e9190612880565b1990505b5f611c61838316858416612ae5565b90508015611c78579750611cbc9650505050505050565b50505b611c866020866128ac565b9450611c936020856128ac565b93505050602081611ca491906128ac565b9050611bf1565b50611cb68589612ae5565b93505050505b9695505050505050565b82515f90611cd483856128ac565b1115611cde575f80fd5b5091016020012090565b60a081015160c08201516060916107e49161176c908290612880565b604080516080810182525f8082526020820181905291810191909152606080820152611d3a611d335f856128ac565b85906116ec565b61ffff168152611d55611d4e6002856128ac565b8590611401565b60ff166020820152611d6b611d4e6003856128ac565b60ff166040820152611d94611d816004856128ac565b611d8c600485612880565b869190611424565b60608201529392505050565b5f846020015160ff16600314611db757505f610960565b826020015160ff16856040015160ff1614611dd357505f610960565b5f611ddd85611f96565b90508360c0015161ffff168161ffff1614611dfb575f915050610960565b8551610100165f03611e10575f915050610960565b60408087015160ff165f908152600360209081529082902054855191860151925163de8f50a160e01b81526001600160a01b039091169263de8f50a192611e5c928a9290600401612b04565b602060405180830381865afa158015611e77573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611cbc9190612b3c565b5f80611ea683611f96565b90505b84515160208601511015611f8b5760a085015160c08601515f91611edb91611ed2908290612880565b88519190611d04565b90508161ffff16815f015161ffff1614611ef55750611f7d565b846040015160ff16816020015160ff1614611f105750611f7d565b60408051808201909152606081525f6020820152611f3c85518951611f3591906128ac565b8290611ff7565b50611f47818961205a565b50611f52818661205a565b50611f698260400151825f0151846060015161207f565b15611f7a5760019350505050610960565b50505b611f8685610b65565b611ea9565b505f95945050505050565b5f805f5b8351811015611fe8576001811615611fbe57611fb68482611401565b60ff16611fd0565b6008611fca8583611401565b60ff16901b5b611fde9061ffff16836128ac565b9150600101611f9a565b506106cb601082901c826128ac565b60408051808201909152606081525f60208201526120166020836129e7565b1561203e576120266020836129e7565b612031906020612880565b61203b90836128ac565b91505b506020828101829052604080518085525f815290920101905290565b60408051808201909152606081525f60208201526107e183845f015151848551612126565b60ff83165f908152600460205260408120546001600160a01b03166120a557505f6106cb565b60ff84165f90815260046020819052604091829020549151637bf41d7760e11b81526001600160a01b039092169163f7e83aee916120e79187918791016128e6565b602060405180830381865afa158015612102573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109609190612b3c565b60408051808201909152606081525f60208201528251821115612147575f80fd5b602085015161215683866128ac565b111561218957612189856121798760200151878661217491906128ac565b61220c565b6121849060026129d0565b612222565b5f808651805187602083010193508088870111156121a75787860182525b505050602084015b602084106121e757805182526121c66020836128ac565b91506121d36020826128ac565b90506121e0602085612880565b93506121af565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b5f8183111561221c5750816107e4565b50919050565b815161222e8383611ff7565b50610650838261205a565b60408051610140810182525f8082526020820181905291810182905260608082018390526080820183905260a0820183905260c082019290925260e08101829052610100810182905261012081019190915290565b6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b803560ff811681146122e3575f80fd5b919050565b6001600160a01b03811681146122fc575f80fd5b50565b5f8060408385031215612310575f80fd5b612319836122d3565b91506020830135612329816122e8565b809150509250929050565b803561ffff811681146122e3575f80fd5b5f8083601f840112612355575f80fd5b50813567ffffffffffffffff81111561236c575f80fd5b602083019150836020828501011115612383575f80fd5b9250929050565b5f805f6040848603121561239c575f80fd5b6123a584612334565b9250602084013567ffffffffffffffff8111156123c0575f80fd5b6123cc86828701612345565b9497909650939450505050565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff81118282101715612416576124166123d9565b604052919050565b5f82601f83011261242d575f80fd5b813567ffffffffffffffff811115612447576124476123d9565b61245a601f8201601f19166020016123ed565b81815284602083860101111561246e575f80fd5b816020850160208301375f918101602001919091529392505050565b5f6040828403121561249a575f80fd5b6040516040810167ffffffffffffffff82821081831117156124be576124be6123d9565b8160405282935084359150808211156124d5575f80fd5b6124e18683870161241e565b835260208501359150808211156124f6575f80fd5b506125038582860161241e565b6020830152505092915050565b5f805f805f60a08688031215612524575f80fd5b61252d86612334565b9450602086013567ffffffffffffffff80821115612549575f80fd5b61255589838a0161241e565b9550604088013591508082111561256a575f80fd5b61257689838a0161248a565b9450606088013591508082111561258b575f80fd5b61259789838a0161248a565b935060808801359150808211156125ac575f80fd5b506125b98882890161241e565b9150509295509295909350565b5f602082840312156125d6575f80fd5b81356107e1816122e8565b5f805f80608085870312156125f4575f80fd5b6125fd85612334565b9350602085013567ffffffffffffffff80821115612619575f80fd5b6126258883890161241e565b9450604087013591508082111561263a575f80fd5b6126468883890161248a565b9350606087013591508082111561265b575f80fd5b506126688782880161241e565b91505092959194509250565b5f805f60408486031215612686575f80fd5b833567ffffffffffffffff8082111561269d575f80fd5b818601915086601f8301126126b0575f80fd5b81356020828211156126c4576126c46123d9565b8160051b6126d38282016123ed565b928352848101820192828101908b8511156126ec575f80fd5b83870192505b8483101561272657823586811115612708575f80fd5b6127168d86838b010161248a565b83525091830191908301906126f2565b985050508701359250508082111561273c575f80fd5b506123cc86828701612345565b5f81518084525f5b8181101561276d57602081850181015186830182015201612751565b505f602082860101526020601f19601f83011685010191505092915050565b602081525f6107e16020830184612749565b5f602082840312156127ae575f80fd5b6107e1826122d3565b5f80604083850312156127c8575f80fd5b823567ffffffffffffffff808211156127df575f80fd5b6127eb8683870161248a565b93506020850135915080821115612800575f80fd5b5061280d8582860161241e565b9150509250929050565b818382375f9101908152919050565b634e487b7160e01b5f52603260045260245ffd5b600181811c9082168061284e57607f821691505b60208210810361221c57634e487b7160e01b5f52602260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b818103818111156107e4576107e461286c565b60ff81811683821601908111156107e4576107e461286c565b808201808211156107e4576107e461286c565b600382810b9082900b03637fffffff198112637fffffff821317156107e4576107e461286c565b604081525f6128f86040830185612749565b8281036020840152610a738185612749565b634e487b7160e01b5f52600160045260245ffd5b634e487b7160e01b5f52601260045260245ffd5b5f61ffff808416806129465761294661291e565b92169190910492915050565b60ff82811682821603908111156107e4576107e461286c565b606081525f61297d6060830186612749565b828103602084015261298f8186612749565b91505061ffff83166040830152949350505050565b5f602082840312156129b4575f80fd5b5051919050565b5f816129c9576129c961286c565b505f190190565b80820281158282048414176107e4576107e461286c565b5f826129f5576129f561291e565b500690565b600181815b80851115612a3457815f1904821115612a1a57612a1a61286c565b80851615612a2757918102915b93841c93908002906129ff565b509250929050565b5f82612a4a575060016107e4565b81612a5657505f6107e4565b8160018114612a6c5760028114612a7657612a92565b60019150506107e4565b60ff841115612a8757612a8761286c565b50506001821b6107e4565b5060208310610133831016604e8410600b8410161715612ab5575081810a6107e4565b612abf83836129fa565b805f1904821115612ad257612ad261286c565b029392505050565b5f6107e18383612a3c565b8181035f8312801583831316838312821617156108825761088261286c565b606081525f612b166060830186612749565b8281036020840152612b288186612749565b90508281036040840152611cbc8185612749565b5f60208284031215612b4c575f80fd5b815180151581146107e1575f80fdfe00010203040506070809ffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fffffffffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fa164736f6c6343000818000a", + "deployedBytecode": "0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c806373cc48a61161008857806398d35f201161006357806398d35f2014610215578063bd7ed31a1461021d578063c327deef14610245578063d7b82ebe1461026d575f80fd5b806373cc48a6146101af5780638438dc04146101ef5780638da5cb5b14610202575f80fd5b806313af4035116100c357806313af40351461015657806328e7677d146101695780632c095cbb1461017c578063435cc1621461018f575f80fd5b8063020ed8d3146100e9578063087991bc146100fe5780630b1a249514610143575b5f80fd5b6100fc6100f73660046122ff565b610280565b005b61011161010c36600461238a565b610300565b6040805163ffffffff94851681529390921660208401526001600160601b031916908201526060015b60405180910390f35b6100fc610151366004612510565b61036c565b6100fc6101643660046125c6565b6104da565b6100fc6101773660046122ff565b610512565b6100fc61018a3660046125e1565b61058a565b6101a261019d366004612674565b610656565b60405161013a919061278c565b6101d76101bd36600461279e565b60046020525f90815260409020546001600160a01b031681565b6040516001600160a01b03909116815260200161013a565b6100fc6101fd3660046122ff565b6106d2565b6001546101d7906001600160a01b031681565b6101a261074a565b6101d761022b36600461279e565b60056020525f90815260409020546001600160a01b031681565b6101d761025336600461279e565b60036020525f90815260409020546001600160a01b031681565b6101a261027b3660046127b7565b6107d5565b6001546001600160a01b03163314610296575f80fd5b60ff82165f8181526003602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527ff73c3c226af96b7f1ba666a21b3ceaf2be3ee6a365e3178fd9cd1eaae0075aa891015b60405180910390a15050565b5f805f8060025f8787604051610317929190612817565b604080519182900390912082526020808301939093529081015f90812061ffff8b16825290925290205463ffffffff80821695506401000000008204169350600160401b900460601b91505093509350939050565b83516020808601919091205f90815260028252604080822061ffff891683529092529081205463ffffffff16906103a385846107ea565b90506103b0818784610889565b6103b8612239565b845151156103d7576103ca85856107ea565b90506103d7818885610889565b5f6103e1836108cc565b602081015190915060fe16156103f5575f80fd5b61040081602761092a565b158015610425575061041381600261092a565b1580610425575061042581600661092a565b61042d575f80fd5b61043e89898561012001518461093a565b156104795787516020808a01919091205f90815260028252604080822061ffff8d1683529092522080546001600160e01b03191690556104cf565b6104988884610120015183856101200151610493876108cc565b610968565b156100e55787516020808a01919091205f90815260028252604080822061ffff8d1683529092522080546001600160e01b03191690555b505050505050505050565b6001546001600160a01b031633146104f0575f80fd5b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6001546001600160a01b03163314610528575f80fd5b60ff82165f8181526004602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527f2fcc274c3b72dd483ab201bfa87295e3817e8b9b10693219873b722ca1af00c791016102f4565b610592612239565b61059c83836107ea565b805190915061ffff16602f146105b0575f80fd5b60a081015184516020808701919091205f90815260028252604080822061ffff8a16835290925220546105e9919063ffffffff16610a7c565b6105f1575f80fd5b5f6105fb82610a94565b9050805151602082015110156100e55761061c818361012001518789610aab565b505082516020808501919091205f90815260028252604080822061ffff881683529092522080546001600160e01b03191690555b50505050565b60605f83838080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201829052509394505050505b85518110156106c7576106bd8682815181106106af576106af612826565b602002602001015183610c4a565b9150600101610691565b5090505b9392505050565b6001546001600160a01b031633146106e8575f80fd5b60ff82165f8181526005602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527fc7eec866a7a1386188cc3ca20ffea75b71bd3e90a60b6791b1d3f0971145118d91016102f4565b5f80546107569061283a565b80601f01602080910402602001604051908101604052809291908181526020018280546107829061283a565b80156107cd5780601f106107a4576101008083540402835291602001916107cd565b820191905f5260205f20905b8154815290600101906020018083116107b057829003601f168201915b505050505081565b60606107e18383610c4a565b90505b92915050565b6107f2612239565b82516107fd90610dc6565b905061080d8160e0015183610ebf565b610815575f80fd5b5f61082382835f0151610f25565b604083015190915060ff16610838825f610fcc565b14610841575f80fd5b610120820181905260808201516108589042610a7c565b610860575f80fd5b61086e428360a00151610a7c565b610876575f80fd5b61088281838686611026565b5092915050565b6108978360a0015182610a7c565b61089f575f80fd5b825161ffff166032146108b0575f80fd5b6108bf83610120015183611106565b6108c7575f80fd5b505050565b6040805160c0810182525f8082526020820181905291810182905260608082018190526080820183905260a08201529061090583610a94565b60a081015160c08201519192506106cb91610921908290612880565b83519190611172565b5f6107e18360a001515f846112b4565b5f6109468284866113c1565b1561095d57610955828661092a565b159050610960565b505f5b949350505050565b60208101515f9060fe161561097b575f80fd5b5f610985866113e6565b90505f610991856113e6565b90505f8061099f8a82611401565b6109aa906001612893565b60ff1690505b8951811015610a6b57836109dc896109d784858f516109cf9190612880565b8f9190611424565b6114a4565b03610a3f575f6109f7876109d785868f516109cf9190612880565b90508660800151841015610a23578381118015610a175750866080015181105b95505050505050610a73565b83811180610a1757508660800151811095505050505050610a73565b905080610a4c8a82611401565b610a57906001612893565b610a649060ff16826128ac565b90506109b0565b505f93505050505b95945050505050565b5f80610a8883856128bf565b60030b12159392505050565b610a9c61228e565b6107e48261010001515f61152d565b60a084015184515f90610abe9083611548565b90505f8660a001518760c00151610ad59190612880565b9050818111610ae2575f80fd5b5f610aed868861159f565b9050805f03610b1a57610b0c610b0384866128ac565b895190876112b4565b15610b15575f80fd5b610b5b565b87515f90610b29908686611424565b90505f8213610b36575f80fd5b5f610b41898361159f565b12156104cf575f610b52888361159f565b126104cf575f80fd5b5050505050505050565b60c08101516020820181905281515111610b7c5750565b5f610b8e825f01518360200151611548565b8260200151610b9d91906128ac565b8251909150610bac90826116ec565b61ffff166040830152610bc06002826128ac565b8251909150610bcf90826116ec565b61ffff166060830152610be36002826128ac565b8251909150610bf29082611712565b63ffffffff166080830152610c086004826128ac565b82519091505f90610c1990836116ec565b61ffff169050610c2a6002836128ac565b60a084018190529150610c3d81836128ac565b60c0909301929092525050565b6060610c54612239565b610c5e84846107ea565b61012081015180516020918201205f908152600282526040808220845161ffff16835290925220805491925090600160401b900460601b6001600160601b03191615610cc35760a08201518154610cbb919063ffffffff16610a7c565b610cc3575f80fd5b604080516060808201835260a085015163ffffffff9081168352608086015181166020808501918252610100880180518051908301206001600160601b0319168688019081526101208a0180518051908501205f908152600285528981208c5161ffff16825290945292889020965187549451915190961c600160401b0268010000000000000000600160e01b03199186166401000000000267ffffffffffffffff19909516969095169590951792909217939093169190911790925551905191517f55ced933cdd5a34dd03eb5d4bef19ec6ebb251dcd7a988eee0c1b9a13baaa88b92610db192916128e6565b60405180910390a15061010001519392505050565b610dce612239565b610dd8825f6116ec565b61ffff168152610de9826002611401565b60ff166020820152610dfc826003611401565b60ff166040820152610e0f826004611712565b63ffffffff9081166060830152610e2b90839060089061171216565b63ffffffff9081166080830152610e47908390600c9061171216565b63ffffffff90811660a0830152610e639083906010906116ec16565b61ffff1660c0820152610e7782601261173a565b60e0820181905251610eb490610e8e9060126128ac565b8260e001515160128551610ea29190612880565b610eac9190612880565b849190611424565b610100820152919050565b5f80610ed5610ece8483611548565b84906116ec565b83516020808601919091208651878301205f90815260028352604080822061ffff90951682529390925291902054600160401b900460601b6001600160601b031990811691161491505092915050565b60605f610f3184610a94565b90505b8051516020820151101561088257606081015161ffff16600114610f56575f80fd5b81515f03610f6e57610f6781611754565b9150610fa7565b60208101518151610f7e91611548565b825114610f89575f80fd5b805160208201518351610f9f9285925f92611775565b610fa7575f80fd5b8261ffff16816040015161ffff1614610fbe575f80fd5b610fc781610b65565b610f34565b5f805b83518310610fdf57610fdf61290a565b5f610fea8585611401565b60ff169050610ffa8160016128ac565b61100490856128ac565b9350805f0361101357506107e1565b61101e6001836128ac565b915050610fcf565b83518360e00151511115611038575f80fd5b61105c5f858560e0015151875161104f9190612880565b60e0870151929190611797565b611064575f80fd5b5f61106f828261152d565b9050602b61ffff16816040015161ffff160361109d576110908484836117cb565b611098575f80fd5b6110ff565b603061ffff16816040015161ffff16036110bc5761109084848361185f565b60405162461bcd60e51b8152602060048201526014602482015273139bc81d985b1a59081c1c9bdbd988199bdd5b9960621b604482015260640160405180910390fd5b5050505050565b5f806111128482611401565b61111d906001612893565b60ff1690505f5b835181101561095d5761113984828785611797565b15611149576001925050506107e4565b6111538482611401565b61115e906001612893565b61116b9060ff16826128ac565b9050611124565b6040805160c0810182525f8082526020820181905291810182905260608082018190526080820183905260a0820152906111ac83856128ac565b90506111c26111bb5f866128ac565b8690611401565b60ff1682526111d56111bb6001866128ac565b60ff1660208301526111f26111eb6002866128ac565b86906116ec565b61ffff1660408301525f61121161120a6004876128ac565b8790611401565b905061121e6005866128ac565b945061122e868660ff8416611424565b606084015261124060ff8216866128ac565b94505f61124d8787611401565b905060208160ff16111561125f575f80fd5b61126a6001876128ac565b955061127a878760ff8416611900565b608085015261128c60ff8216876128ac565b95506112a48661129c8186612880565b899190611424565b60a0850152509195945050505050565b5f60ff600883811c82169183916112cc918616612932565b90505f6112dd600780871690612952565b600160ff919091161b9050855b87518110156113b4575f6112fe8983611401565b90505f61131661130f8460016128ac565b8b90611401565b90508160ff168660ff161015611334575f96505050505050506106cb565b8160ff168660ff1603611393578460ff168160ff161161135c575f96505050505050506106cb565b8361137f61136d60ff8816866128ac565b6113789060026128ac565b8c90611401565b1660ff165f141596505050505050506106cb565b61139e816002612893565b6113ab9060ff16846128ac565b925050506112ea565b505f979650505050505050565b5f806113cd85846114a4565b90505f6113d9856113e6565b9190911495945050505050565b5f6107e460016113f68484611401565b84919060ff1661193d565b5f82828151811061141457611414612826565b016020015160f81c905092915050565b825160609061143383856128ac565b111561143d575f80fd5b5f8267ffffffffffffffff811115611457576114576123d9565b6040519080825280601f01601f191660200182016040528015611481576020820181803683370190505b50905060208082019086860101611499828287611b43565b509095945050505050565b815160ff165f9081526005602052604080822054606085015182860151925163347ced5960e11b81526001600160a01b03909216926368f9dab2926114ee9291879160040161296b565b602060405180830381865afa158015611509573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107e191906129a4565b61153561228e565b82815260c081018290526107e481610b65565b5f815b8351811061155b5761155b61290a565b5f6115668583611401565b60ff1690506115768160016128ac565b61158090836128ac565b9150805f0361158f5750611595565b5061154b565b6109608382612880565b5f6115aa8383611b98565b156115b657505f6107e4565b5f805f805f6115c5885f610fcc565b90505f6115d2885f610fcc565b90505b808211156115fe578593506115ea8987611bb3565b9550816115f6816129bb565b9250506115d5565b81811115611627578492506116138886611bb3565b94508061161f816129bb565b9150506115fe565b5f8211801561163f575061163d89878a88611797565b155b15611674578593506116518987611bb3565b95508492506116608886611bb3565b945061166d600183612880565b9150611627565b855f0361168a575f1996505050505050506107e4565b845f036116a057600196505050505050506107e4565b6116df6116ae8560016128ac565b6116b88b87611401565b60ff168a6116c78760016128ac565b6116d18d89611401565b8e949392919060ff16611bd6565b9998505050505050505050565b81515f906116fb8360026128ac565b1115611705575f80fd5b50016002015161ffff1690565b81515f906117218360046128ac565b111561172b575f80fd5b50016004015163ffffffff1690565b60605f6117478484611548565b9050610960848483611424565b602081015181516060916107e49161176c9082611548565b84519190611424565b5f611781848484611cc6565b61178c878785611cc6565b149695505050505050565b5f6117af83838486516117aa9190612880565b611cc6565b6117c186868789516117aa9190612880565b1495945050505050565b5f806117d685610a94565b90505b8051516020820151101561095d57604081015161ffff166030146117fb575f80fd5b5f61180582611ce8565b90505f61181e5f835184611d049092919063ffffffff16565b905061182c81838989611da0565b1561184f5761184561183d84611754565b868385611e9b565b93505050506106cb565b505061185a81610b65565b6117d9565b5f6118778460e0015161187184611754565b90611b98565b61187f575f80fd5b815151602083015110156118f75761189e8460e0015161187184611754565b6118a6575f80fd5b5f6118b083611ce8565b90505f6118c95f835184611d049092919063ffffffff16565b90506118d781838888611da0565b156118e7576001925050506106cb565b50506118f282610b65565b61187f565b505f9392505050565b5f602082111561190e575f80fd5b835161191a83856128ac565b1115611924575f80fd5b506020919092018101519190036101000a5f1901191690565b5f603482111561194b575f80fd5b5f80805b84811015611a29575f8761196383896128ac565b8151811061197357611973612826565b01602001516001600160f81b0319169050600360fc1b81108015906119a65750603d60f91b6001600160f81b0319821611155b6119ae575f80fd5b604051806080016040528060478152602001612b5c604791396119d6603060f884901c612880565b815181106119e6576119e6612826565b0160209081015160f81c93508311156119fd575f80fd5b611a08600187612880565b8203611a145750611a29565b5060059290921b60ff8216179160010161194f565b505f611a368560056129d0565b9050611a436008866129e7565b5f03611a5a578160ff16600584901b179250611b29565b611a656008866129e7565b600203611a935760028260ff16901c60ff16600384901b179250600281611a8c9190612880565b9050611b29565b611a9e6008866129e7565b600403611ac55760048260ff16901c60ff16600184901b179250600481611a8c9190612880565b611ad06008866129e7565b600503611af75760018260ff16901c60ff16600484901b179250600181611a8c9190612880565b611b026008866129e7565b6007036100e55760038260ff16901c60ff16600284901b179250600381611a8c9190612880565b611b3581610100612880565b9290921b9695505050505050565b60208110611b7b5781518352611b5a6020846128ac565b9250611b676020836128ac565b9150611b74602082612880565b9050611b43565b905182516020929092036101000a5f190180199091169116179052565b5f815183511480156107e157506107e1835f845f8751611775565b5f611bbe8383611401565b60ff16611bcc8360016128ac565b6107e191906128ac565b5f8480831015611be35750815b6020878901810190858701015f5b83811015611cab5782518251808214611c7b575f6020871115611c1657505f19611c52565b600184611c24896020612880565b611c2e91906128ac565b611c399060086129d0565b611c44906002612ada565b611c4e9190612880565b1990505b5f611c61838316858416612ae5565b90508015611c78579750611cbc9650505050505050565b50505b611c866020866128ac565b9450611c936020856128ac565b93505050602081611ca491906128ac565b9050611bf1565b50611cb68589612ae5565b93505050505b9695505050505050565b82515f90611cd483856128ac565b1115611cde575f80fd5b5091016020012090565b60a081015160c08201516060916107e49161176c908290612880565b604080516080810182525f8082526020820181905291810191909152606080820152611d3a611d335f856128ac565b85906116ec565b61ffff168152611d55611d4e6002856128ac565b8590611401565b60ff166020820152611d6b611d4e6003856128ac565b60ff166040820152611d94611d816004856128ac565b611d8c600485612880565b869190611424565b60608201529392505050565b5f846020015160ff16600314611db757505f610960565b826020015160ff16856040015160ff1614611dd357505f610960565b5f611ddd85611f96565b90508360c0015161ffff168161ffff1614611dfb575f915050610960565b8551610100165f03611e10575f915050610960565b60408087015160ff165f908152600360209081529082902054855191860151925163de8f50a160e01b81526001600160a01b039091169263de8f50a192611e5c928a9290600401612b04565b602060405180830381865afa158015611e77573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611cbc9190612b3c565b5f80611ea683611f96565b90505b84515160208601511015611f8b5760a085015160c08601515f91611edb91611ed2908290612880565b88519190611d04565b90508161ffff16815f015161ffff1614611ef55750611f7d565b846040015160ff16816020015160ff1614611f105750611f7d565b60408051808201909152606081525f6020820152611f3c85518951611f3591906128ac565b8290611ff7565b50611f47818961205a565b50611f52818661205a565b50611f698260400151825f0151846060015161207f565b15611f7a5760019350505050610960565b50505b611f8685610b65565b611ea9565b505f95945050505050565b5f805f5b8351811015611fe8576001811615611fbe57611fb68482611401565b60ff16611fd0565b6008611fca8583611401565b60ff16901b5b611fde9061ffff16836128ac565b9150600101611f9a565b506106cb601082901c826128ac565b60408051808201909152606081525f60208201526120166020836129e7565b1561203e576120266020836129e7565b612031906020612880565b61203b90836128ac565b91505b506020828101829052604080518085525f815290920101905290565b60408051808201909152606081525f60208201526107e183845f015151848551612126565b60ff83165f908152600460205260408120546001600160a01b03166120a557505f6106cb565b60ff84165f90815260046020819052604091829020549151637bf41d7760e11b81526001600160a01b039092169163f7e83aee916120e79187918791016128e6565b602060405180830381865afa158015612102573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109609190612b3c565b60408051808201909152606081525f60208201528251821115612147575f80fd5b602085015161215683866128ac565b111561218957612189856121798760200151878661217491906128ac565b61220c565b6121849060026129d0565b612222565b5f808651805187602083010193508088870111156121a75787860182525b505050602084015b602084106121e757805182526121c66020836128ac565b91506121d36020826128ac565b90506121e0602085612880565b93506121af565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b5f8183111561221c5750816107e4565b50919050565b815161222e8383611ff7565b50610650838261205a565b60408051610140810182525f8082526020820181905291810182905260608082018390526080820183905260a0820183905260c082019290925260e08101829052610100810182905261012081019190915290565b6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b803560ff811681146122e3575f80fd5b919050565b6001600160a01b03811681146122fc575f80fd5b50565b5f8060408385031215612310575f80fd5b612319836122d3565b91506020830135612329816122e8565b809150509250929050565b803561ffff811681146122e3575f80fd5b5f8083601f840112612355575f80fd5b50813567ffffffffffffffff81111561236c575f80fd5b602083019150836020828501011115612383575f80fd5b9250929050565b5f805f6040848603121561239c575f80fd5b6123a584612334565b9250602084013567ffffffffffffffff8111156123c0575f80fd5b6123cc86828701612345565b9497909650939450505050565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff81118282101715612416576124166123d9565b604052919050565b5f82601f83011261242d575f80fd5b813567ffffffffffffffff811115612447576124476123d9565b61245a601f8201601f19166020016123ed565b81815284602083860101111561246e575f80fd5b816020850160208301375f918101602001919091529392505050565b5f6040828403121561249a575f80fd5b6040516040810167ffffffffffffffff82821081831117156124be576124be6123d9565b8160405282935084359150808211156124d5575f80fd5b6124e18683870161241e565b835260208501359150808211156124f6575f80fd5b506125038582860161241e565b6020830152505092915050565b5f805f805f60a08688031215612524575f80fd5b61252d86612334565b9450602086013567ffffffffffffffff80821115612549575f80fd5b61255589838a0161241e565b9550604088013591508082111561256a575f80fd5b61257689838a0161248a565b9450606088013591508082111561258b575f80fd5b61259789838a0161248a565b935060808801359150808211156125ac575f80fd5b506125b98882890161241e565b9150509295509295909350565b5f602082840312156125d6575f80fd5b81356107e1816122e8565b5f805f80608085870312156125f4575f80fd5b6125fd85612334565b9350602085013567ffffffffffffffff80821115612619575f80fd5b6126258883890161241e565b9450604087013591508082111561263a575f80fd5b6126468883890161248a565b9350606087013591508082111561265b575f80fd5b506126688782880161241e565b91505092959194509250565b5f805f60408486031215612686575f80fd5b833567ffffffffffffffff8082111561269d575f80fd5b818601915086601f8301126126b0575f80fd5b81356020828211156126c4576126c46123d9565b8160051b6126d38282016123ed565b928352848101820192828101908b8511156126ec575f80fd5b83870192505b8483101561272657823586811115612708575f80fd5b6127168d86838b010161248a565b83525091830191908301906126f2565b985050508701359250508082111561273c575f80fd5b506123cc86828701612345565b5f81518084525f5b8181101561276d57602081850181015186830182015201612751565b505f602082860101526020601f19601f83011685010191505092915050565b602081525f6107e16020830184612749565b5f602082840312156127ae575f80fd5b6107e1826122d3565b5f80604083850312156127c8575f80fd5b823567ffffffffffffffff808211156127df575f80fd5b6127eb8683870161248a565b93506020850135915080821115612800575f80fd5b5061280d8582860161241e565b9150509250929050565b818382375f9101908152919050565b634e487b7160e01b5f52603260045260245ffd5b600181811c9082168061284e57607f821691505b60208210810361221c57634e487b7160e01b5f52602260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b818103818111156107e4576107e461286c565b60ff81811683821601908111156107e4576107e461286c565b808201808211156107e4576107e461286c565b600382810b9082900b03637fffffff198112637fffffff821317156107e4576107e461286c565b604081525f6128f86040830185612749565b8281036020840152610a738185612749565b634e487b7160e01b5f52600160045260245ffd5b634e487b7160e01b5f52601260045260245ffd5b5f61ffff808416806129465761294661291e565b92169190910492915050565b60ff82811682821603908111156107e4576107e461286c565b606081525f61297d6060830186612749565b828103602084015261298f8186612749565b91505061ffff83166040830152949350505050565b5f602082840312156129b4575f80fd5b5051919050565b5f816129c9576129c961286c565b505f190190565b80820281158282048414176107e4576107e461286c565b5f826129f5576129f561291e565b500690565b600181815b80851115612a3457815f1904821115612a1a57612a1a61286c565b80851615612a2757918102915b93841c93908002906129ff565b509250929050565b5f82612a4a575060016107e4565b81612a5657505f6107e4565b8160018114612a6c5760028114612a7657612a92565b60019150506107e4565b60ff841115612a8757612a8761286c565b50506001821b6107e4565b5060208310610133831016604e8410600b8410161715612ab5575081810a6107e4565b612abf83836129fa565b805f1904821115612ad257612ad261286c565b029392505050565b5f6107e18383612a3c565b8181035f8312801583831316838312821617156108825761088261286c565b606081525f612b166060830186612749565b8281036020840152612b288186612749565b90508281036040840152611cbc8185612749565b5f60208284031215612b4c575f80fd5b815180151581146107e1575f80fdfe00010203040506070809ffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fffffffffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fa164736f6c6343000818000a", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/artifacts/DotCoinBurner.json b/artifacts/DotCoinBurner.json index 27e2d31f..7f0b324b 100644 --- a/artifacts/DotCoinBurner.json +++ b/artifacts/DotCoinBurner.json @@ -47,8 +47,8 @@ "type": "function" } ], - "bytecode": "0x60a060405234801561001057600080fd5b5060405161047d38038061047d83398101604081905261002f91610040565b6001600160a01b0316608052610070565b60006020828403121561005257600080fd5b81516001600160a01b038116811461006957600080fd5b9392505050565b6080516103f361008a600039600060d401526103f36000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063100cdd9114610030575b600080fd5b61004361003e3660046102e3565b610045565b005b60005b818110156101cb5760007f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e284848481811061008557610085610358565b905060200201356040516020016100a6929190918252602082015260400190565b60408051808303601f190181529082905280516020909101206331a9108f60e11b82526004820181905291507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906323b872dd908290636352211e90602401602060405180830381865afa15801561012b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061014f919061036e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015261dead602482015260448101849052606401600060405180830381600087803b15801561019f57600080fd5b505af11580156101b3573d6000803e3d6000fd5b505050505080806101c3906103b4565b915050610048565b5080156102df577f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e282826102006001826103cd565b81811061020f5761020f610358565b90506020020135604051602001610230929190918252602082015260400190565b6040516020818303038152906040528051906020012060001c7f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e28383600081811061027d5761027d610358565b9050602002013560405160200161029e929190918252602082015260400190565b60408051601f19818403018152908290528051602090910120907fdf423376f9b0ab363b1b4d6f0b4cb6821921ec30f491555a97236a8a38ce095a90600090a35b5050565b600080602083850312156102f657600080fd5b823567ffffffffffffffff8082111561030e57600080fd5b818501915085601f83011261032257600080fd5b81358181111561033157600080fd5b8660208260051b850101111561034657600080fd5b60209290920196919550909350505050565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561038057600080fd5b81516001600160a01b038116811461039757600080fd5b9392505050565b634e487b7160e01b600052601160045260246000fd5b6000600182016103c6576103c661039e565b5060010190565b818103818111156103e0576103e061039e565b9291505056fea164736f6c6343000811000a", - "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061002b5760003560e01c8063100cdd9114610030575b600080fd5b61004361003e3660046102e3565b610045565b005b60005b818110156101cb5760007f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e284848481811061008557610085610358565b905060200201356040516020016100a6929190918252602082015260400190565b60408051808303601f190181529082905280516020909101206331a9108f60e11b82526004820181905291507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906323b872dd908290636352211e90602401602060405180830381865afa15801561012b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061014f919061036e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015261dead602482015260448101849052606401600060405180830381600087803b15801561019f57600080fd5b505af11580156101b3573d6000803e3d6000fd5b505050505080806101c3906103b4565b915050610048565b5080156102df577f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e282826102006001826103cd565b81811061020f5761020f610358565b90506020020135604051602001610230929190918252602082015260400190565b6040516020818303038152906040528051906020012060001c7f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e28383600081811061027d5761027d610358565b9050602002013560405160200161029e929190918252602082015260400190565b60408051601f19818403018152908290528051602090910120907fdf423376f9b0ab363b1b4d6f0b4cb6821921ec30f491555a97236a8a38ce095a90600090a35b5050565b600080602083850312156102f657600080fd5b823567ffffffffffffffff8082111561030e57600080fd5b818501915085601f83011261032257600080fd5b81358181111561033157600080fd5b8660208260051b850101111561034657600080fd5b60209290920196919550909350505050565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561038057600080fd5b81516001600160a01b038116811461039757600080fd5b9392505050565b634e487b7160e01b600052601160045260246000fd5b6000600182016103c6576103c661039e565b5060010190565b818103818111156103e0576103e061039e565b9291505056fea164736f6c6343000811000a", + "bytecode": "0x60a060405234801561000f575f80fd5b5060405161043238038061043283398101604081905261002e9161003f565b6001600160a01b031660805261006c565b5f6020828403121561004f575f80fd5b81516001600160a01b0381168114610065575f80fd5b9392505050565b6080516103af6100835f395f60cf01526103af5ff3fe608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063100cdd911461002d575b5f80fd5b61004061003b3660046102cd565b610042565b005b5f5b818110156101b8575f7f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e28484848181106100805761008061033c565b905060200201356040516020016100a1929190918252602082015260400190565b60408051808303601f190181529082905280516020909101206331a9108f60e11b82526004820181905291507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906323b872dd908290636352211e90602401602060405180830381865afa158015610124573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101489190610350565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015261dead6024820152604481018490526064015f604051808303815f87803b158015610195575f80fd5b505af11580156101a7573d5f803e3d5ffd5b505060019093019250610044915050565b5080156102c9577f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e282826101ed60018261037d565b8181106101fc576101fc61033c565b9050602002013560405160200161021d929190918252602082015260400190565b604051602081830303815290604052805190602001205f1c7f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e283835f8181106102685761026861033c565b90506020020135604051602001610289929190918252602082015260400190565b60408051601f19818403018152908290528051602090910120907fdf423376f9b0ab363b1b4d6f0b4cb6821921ec30f491555a97236a8a38ce095a905f90a35b5050565b5f80602083850312156102de575f80fd5b823567ffffffffffffffff808211156102f5575f80fd5b818501915085601f830112610308575f80fd5b813581811115610316575f80fd5b8660208260051b850101111561032a575f80fd5b60209290920196919550909350505050565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215610360575f80fd5b81516001600160a01b0381168114610376575f80fd5b9392505050565b8181038181111561039c57634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a", + "deployedBytecode": "0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063100cdd911461002d575b5f80fd5b61004061003b3660046102cd565b610042565b005b5f5b818110156101b8575f7f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e28484848181106100805761008061033c565b905060200201356040516020016100a1929190918252602082015260400190565b60408051808303601f190181529082905280516020909101206331a9108f60e11b82526004820181905291507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906323b872dd908290636352211e90602401602060405180830381865afa158015610124573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101489190610350565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015261dead6024820152604481018490526064015f604051808303815f87803b158015610195575f80fd5b505af11580156101a7573d5f803e3d5ffd5b505060019093019250610044915050565b5080156102c9577f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e282826101ed60018261037d565b8181106101fc576101fc61033c565b9050602002013560405160200161021d929190918252602082015260400190565b604051602081830303815290604052805190602001205f1c7f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e283835f8181106102685761026861033c565b90506020020135604051602001610289929190918252602082015260400190565b60408051601f19818403018152908290528051602090910120907fdf423376f9b0ab363b1b4d6f0b4cb6821921ec30f491555a97236a8a38ce095a905f90a35b5050565b5f80602083850312156102de575f80fd5b823567ffffffffffffffff808211156102f5575f80fd5b818501915085601f830112610308575f80fd5b813581811115610316575f80fd5b8660208260051b850101111561032a575f80fd5b60209290920196919550909350505050565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215610360575f80fd5b81516001600160a01b0381168114610376575f80fd5b9392505050565b8181038181111561039c57634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/artifacts/DummyAlgorithm.json b/artifacts/DummyAlgorithm.json index f1a40bf7..4e10bf4a 100644 --- a/artifacts/DummyAlgorithm.json +++ b/artifacts/DummyAlgorithm.json @@ -33,8 +33,8 @@ "type": "function" } ], - "bytecode": "0x608060405234801561001057600080fd5b5061014e806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063de8f50a114610030575b600080fd5b61004a61003e3660046100a7565b60019695505050505050565b604051901515815260200160405180910390f35b60008083601f84011261007057600080fd5b50813567ffffffffffffffff81111561008857600080fd5b6020830191508360208285010111156100a057600080fd5b9250929050565b600080600080600080606087890312156100c057600080fd5b863567ffffffffffffffff808211156100d857600080fd5b6100e48a838b0161005e565b909850965060208901359150808211156100fd57600080fd5b6101098a838b0161005e565b9096509450604089013591508082111561012257600080fd5b5061012f89828a0161005e565b979a969950949750929593949250505056fea164736f6c6343000811000a", - "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061002b5760003560e01c8063de8f50a114610030575b600080fd5b61004a61003e3660046100a7565b60019695505050505050565b604051901515815260200160405180910390f35b60008083601f84011261007057600080fd5b50813567ffffffffffffffff81111561008857600080fd5b6020830191508360208285010111156100a057600080fd5b9250929050565b600080600080600080606087890312156100c057600080fd5b863567ffffffffffffffff808211156100d857600080fd5b6100e48a838b0161005e565b909850965060208901359150808211156100fd57600080fd5b6101098a838b0161005e565b9096509450604089013591508082111561012257600080fd5b5061012f89828a0161005e565b979a969950949750929593949250505056fea164736f6c6343000811000a", + "bytecode": "0x608060405234801561000f575f80fd5b506101408061001d5f395ff3fe608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063de8f50a11461002d575b5f80fd5b61004761003b3660046100a0565b60019695505050505050565b604051901515815260200160405180910390f35b5f8083601f84011261006b575f80fd5b50813567ffffffffffffffff811115610082575f80fd5b602083019150836020828501011115610099575f80fd5b9250929050565b5f805f805f80606087890312156100b5575f80fd5b863567ffffffffffffffff808211156100cc575f80fd5b6100d88a838b0161005b565b909850965060208901359150808211156100f0575f80fd5b6100fc8a838b0161005b565b90965094506040890135915080821115610114575f80fd5b5061012189828a0161005b565b979a969950949750929593949250505056fea164736f6c6343000818000a", + "deployedBytecode": "0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063de8f50a11461002d575b5f80fd5b61004761003b3660046100a0565b60019695505050505050565b604051901515815260200160405180910390f35b5f8083601f84011261006b575f80fd5b50813567ffffffffffffffff811115610082575f80fd5b602083019150836020828501011115610099575f80fd5b9250929050565b5f805f805f80606087890312156100b5575f80fd5b863567ffffffffffffffff808211156100cc575f80fd5b6100d88a838b0161005b565b909850965060208901359150808211156100f0575f80fd5b6100fc8a838b0161005b565b90965094506040890135915080821115610114575f80fd5b5061012189828a0161005b565b979a969950949750929593949250505056fea164736f6c6343000818000a", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/artifacts/DummyOracle.json b/artifacts/DummyOracle.json index c9b9f1d4..b71210d3 100644 --- a/artifacts/DummyOracle.json +++ b/artifacts/DummyOracle.json @@ -41,8 +41,8 @@ "type": "function" } ], - "bytecode": "0x608060405234801561001057600080fd5b506040516100e83803806100e883398101604081905261002f9161003e565b61003881600055565b50610057565b60006020828403121561005057600080fd5b5051919050565b6083806100656000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c806350d25bcd146037578063e5c19b2d14604c575b600080fd5b60005460405190815260200160405180910390f35b605c6057366004605e565b600055565b005b600060208284031215606f57600080fd5b503591905056fea164736f6c6343000811000a", - "deployedBytecode": "0x6080604052348015600f57600080fd5b506004361060325760003560e01c806350d25bcd146037578063e5c19b2d14604c575b600080fd5b60005460405190815260200160405180910390f35b605c6057366004605e565b600055565b005b600060208284031215606f57600080fd5b503591905056fea164736f6c6343000811000a", + "bytecode": "0x608060405234801561000f575f80fd5b506040516100db3803806100db83398101604081905261002e9161003c565b610036815f55565b50610053565b5f6020828403121561004c575f80fd5b5051919050565b607c8061005f5f395ff3fe6080604052348015600e575f80fd5b50600436106030575f3560e01c806350d25bcd146034578063e5c19b2d146048575b5f80fd5b5f5460405190815260200160405180910390f35b605760533660046059565b5f55565b005b5f602082840312156068575f80fd5b503591905056fea164736f6c6343000818000a", + "deployedBytecode": "0x6080604052348015600e575f80fd5b50600436106030575f3560e01c806350d25bcd146034578063e5c19b2d146048575b5f80fd5b5f5460405190815260200160405180910390f35b605760533660046059565b5f55565b005b5f602082840312156068575f80fd5b503591905056fea164736f6c6343000818000a", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/artifacts/ENSCustody.json b/artifacts/ENSCustody.json index 4d295b2e..d397b256 100644 --- a/artifacts/ENSCustody.json +++ b/artifacts/ENSCustody.json @@ -1001,8 +1001,8 @@ "type": "receive" } ], - "bytecode": "0x60806040523480156200001157600080fd5b506200001c62000022565b620000e4565b600054610100900460ff16156200008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff9081161015620000e2576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b61344180620000f46000396000f3fe60806040526004361061021e5760003560e01c80638da5cb5b11610123578063acf1a841116100ab578063d547741f1161006f578063d547741f14610682578063f14fcbc8146106a2578063f23a6e61146106c2578063f2fde38b146106e2578063ffa1ad741461070257600080fd5b8063acf1a841146105e0578063bc197c8114610600578063c0c53b8b14610620578063cf01585314610640578063d53913931461066057600080fd5b8063a0e3aef1116100f2578063a0e3aef114610534578063a217fddf14610554578063a3f4df7e14610569578063a4247400146105a0578063aa271e1a146105c057600080fd5b80638da5cb5b146104c157806391d14854146104df578063983b2d56146104ff578063986502751461051f57600080fd5b80635fc1964f116101a65780636ccbae5f116101755780636ccbae5f14610439578063715018a61461045957806371e2a6571461046e57806381c81d351461048e57806383e7f6ff146104a157600080fd5b80635fc1964f146103ae578063634486da146103ce5780636352211e146103e15780636a8be89e1461041957600080fd5b80632f2ff15d116101ed5780632f2ff15d146103035780633092afd51461032557806336568abe14610345578063423f6cef14610365578063572b6c051461038557600080fd5b806301ffc9a71461022a578063150b7a021461025f5780631bf7e13e14610298578063248a9ca3146102c557600080fd5b3661022557005b600080fd5b34801561023657600080fd5b5061024a6102453660046125f2565b610733565b60405190151581526020015b60405180910390f35b34801561026b57600080fd5b5061027f61027a366004612672565b610779565b6040516001600160e01b03199091168152602001610256565b3480156102a457600080fd5b506102b86102b33660046126e4565b6108cb565b60405161025691906127a4565b3480156102d157600080fd5b506102f56102e03660046127b7565b600090815260fb602052604090206001015490565b604051908152602001610256565b34801561030f57600080fd5b5061032361031e3660046127d0565b610997565b005b34801561033157600080fd5b50610323610340366004612800565b6109c1565b34801561035157600080fd5b506103236103603660046127d0565b6109d5565b34801561037157600080fd5b5061032361038036600461281d565b610a68565b34801561039157600080fd5b5061024a6103a0366004612800565b6001600160a01b0316301490565b3480156103ba57600080fd5b506103236103c936600461288f565b610bd9565b6103236103dc366004612800565b610c21565b3480156103ed57600080fd5b506104016103fc3660046127b7565b610ce4565b6040516001600160a01b039091168152602001610256565b34801561042557600080fd5b50610323610434366004612800565b610cef565b34801561044557600080fd5b506102f56104543660046127b7565b610d38565b34801561046557600080fd5b50610323610d7e565b34801561047a57600080fd5b5061032361048936600461288f565b610d92565b61032361049c366004612800565b610dda565b3480156104ad57600080fd5b506102f56104bc366004612934565b610e57565b3480156104cd57600080fd5b506097546001600160a01b0316610401565b3480156104eb57600080fd5b5061024a6104fa3660046127d0565b610efa565b34801561050b57600080fd5b5061032361051a366004612800565b610f25565b34801561052b57600080fd5b50610323610f36565b34801561054057600080fd5b506102f561054f366004612a5c565b610f50565b34801561056057600080fd5b506102f5600081565b34801561057557600080fd5b506102b86040518060400160405280600b81526020016a454e5320437573746f647960a81b81525081565b3480156105ac57600080fd5b5061024a6105bb3660046126e4565b610ffc565b3480156105cc57600080fd5b5061024a6105db366004612800565b61104f565b3480156105ec57600080fd5b506103236105fb366004612934565b611069565b34801561060c57600080fd5b5061027f61061b366004612b35565b611222565b34801561062c57600080fd5b5061032361063b366004612bf3565b6112db565b34801561064c57600080fd5b5061032361065b366004612c3e565b611485565b34801561066c57600080fd5b506102f56000805160206133f583398151915281565b34801561068e57600080fd5b5061032361069d3660046127d0565b611592565b3480156106ae57600080fd5b506103236106bd3660046127b7565b6115b7565b3480156106ce57600080fd5b5061027f6106dd366004612d20565b61162b565b3480156106ee57600080fd5b506103236106fd366004612800565b6116bc565b34801561070e57600080fd5b506102b860405180604001604052806005815260200164302e312e3360d81b81525081565b60006001600160e01b03198216630a85bd0160e11b148061076457506001600160e01b03198216630271189760e51b145b806107735750610773826116d8565b92915050565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004546000906001600160a01b0316806107b061170d565b6001600160a01b0316036108a957600080806107ce86880188612d9b565b9250925092506107dd8361171c565b6001600160a01b03841663b88d4fde30600080516020613415833981519152546040516001600160a01b03909116908c9061082390879030906000908b90602001612dfc565b6040516020818303038152906040526040518563ffffffff1660e01b81526004016108519493929190612e3c565b600060405180830381600087803b15801561086b57600080fd5b505af115801561087f573d6000803e3d6000fd5b5050505061089561088f8261174e565b846117d3565b50630a85bd0160e11b93506108c292505050565b6040516344e7d94960e01b815260040160405180910390fd5b95945050505050565b606060005a90506108dd858585610ffc565b6108fa57604051638baa579f60e01b815260040160405180910390fd5b61098c61090a6020870187612800565b3060408801358461091e60608b018b612e6f565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061185e92505050565b9150505b9392505050565b600082815260fb60205260409020600101546109b28161193f565b6109bc8383611950565b505050565b6109c96119d7565b6109d281611a50565b50565b6109dd61170d565b6001600160a01b0316816001600160a01b031614610a5a5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b610a648282611a68565b5050565b80610a7161170d565b6001600160a01b0316610a8382611aed565b6001600160a01b031614610ac55780610a9a61170d565b604051637ea58b1160e01b815260048101929092526001600160a01b03166024820152604401610a51565b610ace82611c03565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052600090610b22906060015b6040516020818303038152906040528051906020012090565b80546001600160a01b0319166001600160a01b0392909216919091179055600060008051602061341583398151915254604051637921219560e11b81523060048201526001600160a01b038681166024830152604482018690526001606483015260a06084830152600060a48301529091169150819063f242432a9060c401600060405180830381600087803b158015610bbb57600080fd5b505af1158015610bcf573d6000803e3d6000fd5b5050505050505050565b610be16119d7565b60005b8151811015610a6457610c0f828281518110610c0257610c02612eb5565b6020026020010151611a50565b80610c1981612ee1565b915050610be4565b610c2c6105db61170d565b610c485760405162461bcd60e51b8152600401610a5190612efa565b6001600160a01b038116610c9e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a51565b610ca781611c1c565b610caf610f36565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610a64573d6000803e3d6000fd5b600061077382611aed565b610cf76119d7565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c500480546001600160a01b0319166001600160a01b0392909216919091179055565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a838156020820152908101829052600090610d7790606001610b09565b5492915050565b610d866119d7565b610d906000611c34565b565b610d9a6119d7565b60005b8151811015610a6457610dc8828281518110610dbb57610dbb612eb5565b6020026020010151611c1c565b80610dd281612ee1565b915050610d9d565b610de56105db61170d565b610e015760405162461bcd60e51b8152600401610a5190612efa565b6001600160a01b038116610ca75760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a51565b6000805160206133d5833981519152546040516383e7f6ff60e01b81526000916001600160a01b031690829082906383e7f6ff90610e9d90899089908990600401612f58565b6040805180830381865afa158015610eb9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610edd9190612f7c565b60208101518151919250610ef091612fca565b9695505050505050565b600091825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610f2d6119d7565b6109d281611c1c565b610d906000805160206133f583398151915261036061170d565b6000805160206133d5833981519152546000906001600160a01b0316806365a69dcf8d85610f7e5730610f80565b8d5b8d8d8d8d8d8d8d6040518a63ffffffff1660e01b8152600401610fab9998979695949392919061306e565b602060405180830381865afa158015610fc8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fec91906130de565b9c9b505050505050505050505050565b600061104761100a856130f7565b3085858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611c8692505050565b949350505050565b60006107736000805160206133f583398151915283610efa565b6110746105db61170d565b6110905760405162461bcd60e51b8152600401610a5190612efa565b6002603354036110e25760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a51565b60026033556000805160206133d5833981519152546040516383e7f6ff60e01b81526001600160a01b039091169060009082906383e7f6ff9061112d90889088908890600401612f58565b6040805180830381865afa158015611149573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061116d9190612f7c565b6020810151815191925061118091612fca565b4710156111a05760405163050205f960e01b815260040160405180910390fd5b816001600160a01b031663acf1a841826020015183600001516111c39190612fca565b8787876040518563ffffffff1660e01b81526004016111e493929190612f58565b6000604051808303818588803b1580156111fd57600080fd5b505af1158015611211573d6000803e3d6000fd5b505060016033555050505050505050565b6000600080516020613415833981519152546001600160a01b031661124561170d565b6001600160a01b03161461126c576040516344e7d94960e01b815260040160405180910390fd5b600061127a83850185612800565b90506112858161171c565b60005b878110156112c4576112b28989838181106112a5576112a5612eb5565b90506020020135836117d3565b806112bc81612ee1565b915050611288565b5063bc197c8160e01b9a9950505050505050505050565b600054610100900460ff16158080156112fb5750600054600160ff909116105b806113155750303b158015611315575060005460ff166001145b6113785760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610a51565b6000805460ff19166001179055801561139b576000805461ff0019166101001790555b6000805160206133d583398151915280546001600160a01b038087166001600160a01b03199283161790925560008051602061341583398151915280548684169083161790557ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004805492851692909116919091179055611419611dc5565b611421611df3565b611429611df3565b611431611e1a565b611439611e51565b801561147f576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6114906105db61170d565b6114ac5760405162461bcd60e51b8152600401610a5190612efa565b6002603354036114fe5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a51565b600260338190555060006115478c8c8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061174e92505050565b905061155281611c03565b6115708c8c846115625730611564565b8c5b8c8c8c8c8c8c8c611e8a565b8161157f5761157f818b6117d3565b5050600160335550505050505050505050565b600082815260fb60205260409020600101546115ad8161193f565b6109bc8383611a68565b60006000805160206133d583398151915254604051631e29f97960e31b8152600481018490526001600160a01b039091169150819063f14fcbc890602401600060405180830381600087803b15801561160f57600080fd5b505af1158015611623573d6000803e3d6000fd5b505050505050565b6000600080516020613415833981519152546001600160a01b031661164e61170d565b6001600160a01b031614611675576040516344e7d94960e01b815260040160405180910390fd5b6001600160a01b038616156116a957600061169283850185612800565b905061169d8161171c565b6116a786826117d3565b505b5063f23a6e6160e01b9695505050505050565b6116c46119d7565b6116cd81611fd5565b6109d260008261204b565b60006001600160e01b03198216637965db0b60e01b148061077357506301ffc9a760e01b6001600160e01b0319831614610773565b6000611717612055565b905090565b6001600160a01b0381166109d25760405163b20f76e360e01b81526001600160a01b0382166004820152602401610a51565b60007f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae60001b826040516020016117859190613195565b604051602081830303815290604052805190602001206040516020016117b5929190918252602082015260400190565b60408051601f19818403018152919052805160209091012092915050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052819061181190606001610b09565b80546001600160a01b0319166001600160a01b039283161790556040519082169083907f45aa97e368889fb3527c1db60c59c2ae91e82f21778613449e46d4208c1c4b1290600090a35050565b606061186985612073565b600080876001600160a01b0316866118838b8a89896120d9565b6040516118909190613195565b60006040518083038160008787f1925050503d80600081146118ce576040519150601f19603f3d011682016040523d82523d6000602084013e6118d3565b606091505b5090925090506118e4603f876131b1565b5a116118f2576118f26131d3565b61193282826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c4544000000000000815250612109565b9998505050505050505050565b6109d28161194b61170d565b612142565b61195a8282610efa565b610a6457600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff1916600117905561199361170d565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6119df61170d565b6001600160a01b03166119fa6097546001600160a01b031690565b6001600160a01b031614610d905760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a51565b6109d26000805160206133f583398151915282611592565b611a728282610efa565b15610a6457600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff19169055611aa961170d565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101829052600090611b2c90606001610b09565b546001600160a01b0316905080611b595760405163124bad6360e31b815260048101839052602401610a51565b30600080516020613415833981519152546040516331a9108f60e11b8152600481018590526001600160a01b0390911690636352211e90602401602060405180830381865afa158015611bb0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bd491906131e9565b6001600160a01b031614611bfe576040516303b673fd60e21b815260048101839052602401610a51565b919050565b303303611c13576109d2816121a6565b6109d281612073565b6109d26000805160206133f58339815191528261204b565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015611ccd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cf191906130de565b90506000611d9f866060015180519060200120868860200151604051602001611d3f9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b9050818660200151148015610ef057508551610ef0906001600160a01b031682866121d0565b600054610100900460ff16611dec5760405162461bcd60e51b8152600401610a5190613206565b6001603355565b600054610100900460ff16610d905760405162461bcd60e51b8152600401610a5190613206565b600054610100900460ff16611e415760405162461bcd60e51b8152600401610a5190613206565b610d90611e4c61170d565b611c34565b600054610100900460ff16611e785760405162461bcd60e51b8152600401610a5190613206565b610d906000611e8561170d565b61204b565b6000805160206133d5833981519152546040516383e7f6ff60e01b81526001600160a01b039091169060009082906383e7f6ff90611ed0908f908f908e90600401612f58565b6040805180830381865afa158015611eec573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f109190612f7c565b60208101518151919250611f2391612fca565b471015611f435760405163050205f960e01b815260040160405180910390fd5b816001600160a01b03166374694a2b82602001518360000151611f669190612fca565b8e8e8e8e8e8e8e8e8e8e6040518c63ffffffff1660e01b8152600401611f959a99989796959493929190613251565b6000604051808303818588803b158015611fae57600080fd5b505af1158015611fc2573d6000803e3d6000fd5b5050505050505050505050505050505050565b611fdd6119d7565b6001600160a01b0381166120425760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610a51565b6109d281611c34565b610a648282611950565b600030330361206b575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290526000906060016040516020818303038152906040528051906020012090506120c88190565b546120d4906001612fca565b905550565b60608285856040516020016120f0939291906132c3565b6040516020818303038152906040529050949350505050565b60608315612118575081610990565b8251156121285782518084602001fd5b8160405162461bcd60e51b8152600401610a5191906127a4565b61214c8282610efa565b610a6457612164816001600160a01b03166014612312565b61216f836020612312565b604051602001612180929190613302565b60408051601f198184030181529082905262461bcd60e51b8252610a51916004016127a4565b6121ae6124ad565b81146109d257604051635637b6af60e11b815260048101829052602401610a51565b60008060006121df85856124c0565b909250905060008160048111156121f8576121f8613377565b1480156122165750856001600160a01b0316826001600160a01b0316145b1561222657600192505050610990565b600080876001600160a01b0316631626ba7e60e01b888860405160240161224e92919061338d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161228c9190613195565b600060405180830381855afa9150503d80600081146122c7576040519150601f19603f3d011682016040523d82523d6000602084013e6122cc565b606091505b50915091508180156122df575080516020145b801561230657508051630b135d3f60e11b9061230490830160209081019084016130de565b145b98975050505050505050565b606060006123218360026133a6565b61232c906002612fca565b6001600160401b0381111561234357612343612849565b6040519080825280601f01601f19166020018201604052801561236d576020820181803683370190505b509050600360fc1b8160008151811061238857612388612eb5565b60200101906001600160f81b031916908160001a905350600f60fb1b816001815181106123b7576123b7612eb5565b60200101906001600160f81b031916908160001a90535060006123db8460026133a6565b6123e6906001612fca565b90505b600181111561245e576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061241a5761241a612eb5565b1a60f81b82828151811061243057612430612eb5565b60200101906001600160f81b031916908160001a90535060049490941c93612457816133bd565b90506123e9565b5083156109905760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610a51565b60003033036120705750601f1936013590565b60008082516041036124f65760208301516040840151606085015160001a6124ea87828585612505565b945094505050506124fe565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561253c57506000905060036125e9565b8460ff16601b1415801561255457508460ff16601c14155b1561256557506000905060046125e9565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156125b9573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166125e2576000600192509250506125e9565b9150600090505b94509492505050565b60006020828403121561260457600080fd5b81356001600160e01b03198116811461099057600080fd5b6001600160a01b03811681146109d257600080fd5b60008083601f84011261264357600080fd5b5081356001600160401b0381111561265a57600080fd5b6020830191508360208285010111156124fe57600080fd5b60008060008060006080868803121561268a57600080fd5b85356126958161261c565b945060208601356126a58161261c565b93506040860135925060608601356001600160401b038111156126c757600080fd5b6126d388828901612631565b969995985093965092949392505050565b6000806000604084860312156126f957600080fd5b83356001600160401b038082111561271057600080fd5b908501906080828803121561272457600080fd5b9093506020850135908082111561273a57600080fd5b5061274786828701612631565b9497909650939450505050565b60005b8381101561276f578181015183820152602001612757565b50506000910152565b60008151808452612790816020860160208601612754565b601f01601f19169290920160200192915050565b6020815260006109906020830184612778565b6000602082840312156127c957600080fd5b5035919050565b600080604083850312156127e357600080fd5b8235915060208301356127f58161261c565b809150509250929050565b60006020828403121561281257600080fd5b81356109908161261c565b6000806040838503121561283057600080fd5b823561283b8161261c565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561288757612887612849565b604052919050565b600060208083850312156128a257600080fd5b82356001600160401b03808211156128b957600080fd5b818501915085601f8301126128cd57600080fd5b8135818111156128df576128df612849565b8060051b91506128f084830161285f565b818152918301840191848101908884111561290a57600080fd5b938501935b8385101561230657843592506129248361261c565b828252938501939085019061290f565b60008060006040848603121561294957600080fd5b83356001600160401b0381111561295f57600080fd5b61296b86828701612631565b909790965060209590950135949350505050565b60006001600160401b0383111561299857612998612849565b6129ab601f8401601f191660200161285f565b90508281528383830111156129bf57600080fd5b828260208301376000602084830101529392505050565b600082601f8301126129e757600080fd5b6109908383356020850161297f565b60008083601f840112612a0857600080fd5b5081356001600160401b03811115612a1f57600080fd5b6020830191508360208260051b85010111156124fe57600080fd5b80358015158114611bfe57600080fd5b803561ffff81168114611bfe57600080fd5b6000806000806000806000806000806101208b8d031215612a7c57600080fd5b8a356001600160401b0380821115612a9357600080fd5b612a9f8e838f016129d6565b9b5060208d01359150612ab18261261c565b90995060408c0135985060608c0135975060808c013590612ad18261261c565b90965060a08c01359080821115612ae757600080fd5b50612af48d828e016129f6565b9096509450612b07905060c08c01612a3a565b9250612b1560e08c01612a4a565b9150612b246101008c01612a3a565b90509295989b9194979a5092959850565b60008060008060008060008060a0898b031215612b5157600080fd5b8835612b5c8161261c565b97506020890135612b6c8161261c565b965060408901356001600160401b0380821115612b8857600080fd5b612b948c838d016129f6565b909850965060608b0135915080821115612bad57600080fd5b612bb98c838d016129f6565b909650945060808b0135915080821115612bd257600080fd5b50612bdf8b828c01612631565b999c989b5096995094979396929594505050565b600080600060608486031215612c0857600080fd5b8335612c138161261c565b92506020840135612c238161261c565b91506040840135612c338161261c565b809150509250925092565b60008060008060008060008060008060006101208c8e031215612c6057600080fd5b6001600160401b03808d351115612c7657600080fd5b612c838e8e358f01612631565b909c509a50612c9560208e013561261c565b60208d0135995060408d0135985060608d01359750612cb760808e013561261c565b60808d013596508060a08e01351115612ccf57600080fd5b50612ce08d60a08e01358e016129f6565b9095509350612cf160c08d01612a3a565b9250612cff60e08d01612a4a565b9150612d0e6101008d01612a3a565b90509295989b509295989b9093969950565b60008060008060008060a08789031215612d3957600080fd5b8635612d448161261c565b95506020870135612d548161261c565b9450604087013593506060870135925060808701356001600160401b03811115612d7d57600080fd5b612d8989828a01612631565b979a9699509497509295939492505050565b600080600060608486031215612db057600080fd5b8335612dbb8161261c565b92506020840135612dcb8161261c565b915060408401356001600160401b03811115612de657600080fd5b612df2868287016129d6565b9150509250925092565b608081526000612e0f6080830187612778565b6001600160a01b03958616602084015261ffff949094166040830152509216606090920191909152919050565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090610ef090830184612778565b6000808335601e19843603018112612e8657600080fd5b8301803591506001600160401b03821115612ea057600080fd5b6020019150368190038213156124fe57600080fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201612ef357612ef3612ecb565b5060010190565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b604081526000612f6c604083018587612f2f565b9050826020830152949350505050565b600060408284031215612f8e57600080fd5b604051604081018181106001600160401b0382111715612fb057612fb0612849565b604052825181526020928301519281019290925250919050565b8082018082111561077357610773612ecb565b81835260006020808501808196508560051b810191508460005b878110156130615782840389528135601e1988360301811261301857600080fd5b870185810190356001600160401b0381111561303357600080fd5b80360382131561304257600080fd5b61304d868284612f2f565b9a87019a9550505090840190600101612ff7565b5091979650505050505050565b60006101008083526130828184018d612778565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a085015290506130bc818789612fdd565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b6000602082840312156130f057600080fd5b5051919050565b60006080823603121561310957600080fd5b604051608081016001600160401b03828210818311171561312c5761312c612849565b816040528435915061313d8261261c565b8183526020850135602084015260408501356040840152606085013591508082111561316857600080fd5b50830136601f82011261317a57600080fd5b6131893682356020840161297f565b60608301525092915050565b600082516131a7818460208701612754565b9190910192915050565b6000826131ce57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b6000602082840312156131fb57600080fd5b81516109908161261c565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60006101008083526132668184018d8f612f2f565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a085015290506132a0818789612fdd565b94151560c0840152505061ffff9190911660e09091015298975050505050505050565b600084516132d5818460208901612754565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081526000835161333a816017850160208801612754565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835161336b816028840160208801612754565b01602801949350505050565b634e487b7160e01b600052602160045260246000fd5b8281526040602082015260006110476040830184612778565b808202811582820484141761077357610773612ecb565b6000816133cc576133cc612ecb565b50600019019056fe412386de53449251cbf7ce1f4c6a038bf9c0746e62d331b08ef0c3fa7d0ab6729f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a660793a5062d506d35cc8f1beda67ee5028c16bfcd9c923d5bfc439c04bd929b1a164736f6c6343000811000a", - "deployedBytecode": "0x60806040526004361061021e5760003560e01c80638da5cb5b11610123578063acf1a841116100ab578063d547741f1161006f578063d547741f14610682578063f14fcbc8146106a2578063f23a6e61146106c2578063f2fde38b146106e2578063ffa1ad741461070257600080fd5b8063acf1a841146105e0578063bc197c8114610600578063c0c53b8b14610620578063cf01585314610640578063d53913931461066057600080fd5b8063a0e3aef1116100f2578063a0e3aef114610534578063a217fddf14610554578063a3f4df7e14610569578063a4247400146105a0578063aa271e1a146105c057600080fd5b80638da5cb5b146104c157806391d14854146104df578063983b2d56146104ff578063986502751461051f57600080fd5b80635fc1964f116101a65780636ccbae5f116101755780636ccbae5f14610439578063715018a61461045957806371e2a6571461046e57806381c81d351461048e57806383e7f6ff146104a157600080fd5b80635fc1964f146103ae578063634486da146103ce5780636352211e146103e15780636a8be89e1461041957600080fd5b80632f2ff15d116101ed5780632f2ff15d146103035780633092afd51461032557806336568abe14610345578063423f6cef14610365578063572b6c051461038557600080fd5b806301ffc9a71461022a578063150b7a021461025f5780631bf7e13e14610298578063248a9ca3146102c557600080fd5b3661022557005b600080fd5b34801561023657600080fd5b5061024a6102453660046125f2565b610733565b60405190151581526020015b60405180910390f35b34801561026b57600080fd5b5061027f61027a366004612672565b610779565b6040516001600160e01b03199091168152602001610256565b3480156102a457600080fd5b506102b86102b33660046126e4565b6108cb565b60405161025691906127a4565b3480156102d157600080fd5b506102f56102e03660046127b7565b600090815260fb602052604090206001015490565b604051908152602001610256565b34801561030f57600080fd5b5061032361031e3660046127d0565b610997565b005b34801561033157600080fd5b50610323610340366004612800565b6109c1565b34801561035157600080fd5b506103236103603660046127d0565b6109d5565b34801561037157600080fd5b5061032361038036600461281d565b610a68565b34801561039157600080fd5b5061024a6103a0366004612800565b6001600160a01b0316301490565b3480156103ba57600080fd5b506103236103c936600461288f565b610bd9565b6103236103dc366004612800565b610c21565b3480156103ed57600080fd5b506104016103fc3660046127b7565b610ce4565b6040516001600160a01b039091168152602001610256565b34801561042557600080fd5b50610323610434366004612800565b610cef565b34801561044557600080fd5b506102f56104543660046127b7565b610d38565b34801561046557600080fd5b50610323610d7e565b34801561047a57600080fd5b5061032361048936600461288f565b610d92565b61032361049c366004612800565b610dda565b3480156104ad57600080fd5b506102f56104bc366004612934565b610e57565b3480156104cd57600080fd5b506097546001600160a01b0316610401565b3480156104eb57600080fd5b5061024a6104fa3660046127d0565b610efa565b34801561050b57600080fd5b5061032361051a366004612800565b610f25565b34801561052b57600080fd5b50610323610f36565b34801561054057600080fd5b506102f561054f366004612a5c565b610f50565b34801561056057600080fd5b506102f5600081565b34801561057557600080fd5b506102b86040518060400160405280600b81526020016a454e5320437573746f647960a81b81525081565b3480156105ac57600080fd5b5061024a6105bb3660046126e4565b610ffc565b3480156105cc57600080fd5b5061024a6105db366004612800565b61104f565b3480156105ec57600080fd5b506103236105fb366004612934565b611069565b34801561060c57600080fd5b5061027f61061b366004612b35565b611222565b34801561062c57600080fd5b5061032361063b366004612bf3565b6112db565b34801561064c57600080fd5b5061032361065b366004612c3e565b611485565b34801561066c57600080fd5b506102f56000805160206133f583398151915281565b34801561068e57600080fd5b5061032361069d3660046127d0565b611592565b3480156106ae57600080fd5b506103236106bd3660046127b7565b6115b7565b3480156106ce57600080fd5b5061027f6106dd366004612d20565b61162b565b3480156106ee57600080fd5b506103236106fd366004612800565b6116bc565b34801561070e57600080fd5b506102b860405180604001604052806005815260200164302e312e3360d81b81525081565b60006001600160e01b03198216630a85bd0160e11b148061076457506001600160e01b03198216630271189760e51b145b806107735750610773826116d8565b92915050565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004546000906001600160a01b0316806107b061170d565b6001600160a01b0316036108a957600080806107ce86880188612d9b565b9250925092506107dd8361171c565b6001600160a01b03841663b88d4fde30600080516020613415833981519152546040516001600160a01b03909116908c9061082390879030906000908b90602001612dfc565b6040516020818303038152906040526040518563ffffffff1660e01b81526004016108519493929190612e3c565b600060405180830381600087803b15801561086b57600080fd5b505af115801561087f573d6000803e3d6000fd5b5050505061089561088f8261174e565b846117d3565b50630a85bd0160e11b93506108c292505050565b6040516344e7d94960e01b815260040160405180910390fd5b95945050505050565b606060005a90506108dd858585610ffc565b6108fa57604051638baa579f60e01b815260040160405180910390fd5b61098c61090a6020870187612800565b3060408801358461091e60608b018b612e6f565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061185e92505050565b9150505b9392505050565b600082815260fb60205260409020600101546109b28161193f565b6109bc8383611950565b505050565b6109c96119d7565b6109d281611a50565b50565b6109dd61170d565b6001600160a01b0316816001600160a01b031614610a5a5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b610a648282611a68565b5050565b80610a7161170d565b6001600160a01b0316610a8382611aed565b6001600160a01b031614610ac55780610a9a61170d565b604051637ea58b1160e01b815260048101929092526001600160a01b03166024820152604401610a51565b610ace82611c03565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052600090610b22906060015b6040516020818303038152906040528051906020012090565b80546001600160a01b0319166001600160a01b0392909216919091179055600060008051602061341583398151915254604051637921219560e11b81523060048201526001600160a01b038681166024830152604482018690526001606483015260a06084830152600060a48301529091169150819063f242432a9060c401600060405180830381600087803b158015610bbb57600080fd5b505af1158015610bcf573d6000803e3d6000fd5b5050505050505050565b610be16119d7565b60005b8151811015610a6457610c0f828281518110610c0257610c02612eb5565b6020026020010151611a50565b80610c1981612ee1565b915050610be4565b610c2c6105db61170d565b610c485760405162461bcd60e51b8152600401610a5190612efa565b6001600160a01b038116610c9e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a51565b610ca781611c1c565b610caf610f36565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610a64573d6000803e3d6000fd5b600061077382611aed565b610cf76119d7565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c500480546001600160a01b0319166001600160a01b0392909216919091179055565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a838156020820152908101829052600090610d7790606001610b09565b5492915050565b610d866119d7565b610d906000611c34565b565b610d9a6119d7565b60005b8151811015610a6457610dc8828281518110610dbb57610dbb612eb5565b6020026020010151611c1c565b80610dd281612ee1565b915050610d9d565b610de56105db61170d565b610e015760405162461bcd60e51b8152600401610a5190612efa565b6001600160a01b038116610ca75760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a51565b6000805160206133d5833981519152546040516383e7f6ff60e01b81526000916001600160a01b031690829082906383e7f6ff90610e9d90899089908990600401612f58565b6040805180830381865afa158015610eb9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610edd9190612f7c565b60208101518151919250610ef091612fca565b9695505050505050565b600091825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610f2d6119d7565b6109d281611c1c565b610d906000805160206133f583398151915261036061170d565b6000805160206133d5833981519152546000906001600160a01b0316806365a69dcf8d85610f7e5730610f80565b8d5b8d8d8d8d8d8d8d6040518a63ffffffff1660e01b8152600401610fab9998979695949392919061306e565b602060405180830381865afa158015610fc8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fec91906130de565b9c9b505050505050505050505050565b600061104761100a856130f7565b3085858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611c8692505050565b949350505050565b60006107736000805160206133f583398151915283610efa565b6110746105db61170d565b6110905760405162461bcd60e51b8152600401610a5190612efa565b6002603354036110e25760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a51565b60026033556000805160206133d5833981519152546040516383e7f6ff60e01b81526001600160a01b039091169060009082906383e7f6ff9061112d90889088908890600401612f58565b6040805180830381865afa158015611149573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061116d9190612f7c565b6020810151815191925061118091612fca565b4710156111a05760405163050205f960e01b815260040160405180910390fd5b816001600160a01b031663acf1a841826020015183600001516111c39190612fca565b8787876040518563ffffffff1660e01b81526004016111e493929190612f58565b6000604051808303818588803b1580156111fd57600080fd5b505af1158015611211573d6000803e3d6000fd5b505060016033555050505050505050565b6000600080516020613415833981519152546001600160a01b031661124561170d565b6001600160a01b03161461126c576040516344e7d94960e01b815260040160405180910390fd5b600061127a83850185612800565b90506112858161171c565b60005b878110156112c4576112b28989838181106112a5576112a5612eb5565b90506020020135836117d3565b806112bc81612ee1565b915050611288565b5063bc197c8160e01b9a9950505050505050505050565b600054610100900460ff16158080156112fb5750600054600160ff909116105b806113155750303b158015611315575060005460ff166001145b6113785760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610a51565b6000805460ff19166001179055801561139b576000805461ff0019166101001790555b6000805160206133d583398151915280546001600160a01b038087166001600160a01b03199283161790925560008051602061341583398151915280548684169083161790557ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004805492851692909116919091179055611419611dc5565b611421611df3565b611429611df3565b611431611e1a565b611439611e51565b801561147f576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6114906105db61170d565b6114ac5760405162461bcd60e51b8152600401610a5190612efa565b6002603354036114fe5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a51565b600260338190555060006115478c8c8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061174e92505050565b905061155281611c03565b6115708c8c846115625730611564565b8c5b8c8c8c8c8c8c8c611e8a565b8161157f5761157f818b6117d3565b5050600160335550505050505050505050565b600082815260fb60205260409020600101546115ad8161193f565b6109bc8383611a68565b60006000805160206133d583398151915254604051631e29f97960e31b8152600481018490526001600160a01b039091169150819063f14fcbc890602401600060405180830381600087803b15801561160f57600080fd5b505af1158015611623573d6000803e3d6000fd5b505050505050565b6000600080516020613415833981519152546001600160a01b031661164e61170d565b6001600160a01b031614611675576040516344e7d94960e01b815260040160405180910390fd5b6001600160a01b038616156116a957600061169283850185612800565b905061169d8161171c565b6116a786826117d3565b505b5063f23a6e6160e01b9695505050505050565b6116c46119d7565b6116cd81611fd5565b6109d260008261204b565b60006001600160e01b03198216637965db0b60e01b148061077357506301ffc9a760e01b6001600160e01b0319831614610773565b6000611717612055565b905090565b6001600160a01b0381166109d25760405163b20f76e360e01b81526001600160a01b0382166004820152602401610a51565b60007f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae60001b826040516020016117859190613195565b604051602081830303815290604052805190602001206040516020016117b5929190918252602082015260400190565b60408051601f19818403018152919052805160209091012092915050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052819061181190606001610b09565b80546001600160a01b0319166001600160a01b039283161790556040519082169083907f45aa97e368889fb3527c1db60c59c2ae91e82f21778613449e46d4208c1c4b1290600090a35050565b606061186985612073565b600080876001600160a01b0316866118838b8a89896120d9565b6040516118909190613195565b60006040518083038160008787f1925050503d80600081146118ce576040519150601f19603f3d011682016040523d82523d6000602084013e6118d3565b606091505b5090925090506118e4603f876131b1565b5a116118f2576118f26131d3565b61193282826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c4544000000000000815250612109565b9998505050505050505050565b6109d28161194b61170d565b612142565b61195a8282610efa565b610a6457600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff1916600117905561199361170d565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6119df61170d565b6001600160a01b03166119fa6097546001600160a01b031690565b6001600160a01b031614610d905760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a51565b6109d26000805160206133f583398151915282611592565b611a728282610efa565b15610a6457600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff19169055611aa961170d565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101829052600090611b2c90606001610b09565b546001600160a01b0316905080611b595760405163124bad6360e31b815260048101839052602401610a51565b30600080516020613415833981519152546040516331a9108f60e11b8152600481018590526001600160a01b0390911690636352211e90602401602060405180830381865afa158015611bb0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bd491906131e9565b6001600160a01b031614611bfe576040516303b673fd60e21b815260048101839052602401610a51565b919050565b303303611c13576109d2816121a6565b6109d281612073565b6109d26000805160206133f58339815191528261204b565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015611ccd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cf191906130de565b90506000611d9f866060015180519060200120868860200151604051602001611d3f9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b9050818660200151148015610ef057508551610ef0906001600160a01b031682866121d0565b600054610100900460ff16611dec5760405162461bcd60e51b8152600401610a5190613206565b6001603355565b600054610100900460ff16610d905760405162461bcd60e51b8152600401610a5190613206565b600054610100900460ff16611e415760405162461bcd60e51b8152600401610a5190613206565b610d90611e4c61170d565b611c34565b600054610100900460ff16611e785760405162461bcd60e51b8152600401610a5190613206565b610d906000611e8561170d565b61204b565b6000805160206133d5833981519152546040516383e7f6ff60e01b81526001600160a01b039091169060009082906383e7f6ff90611ed0908f908f908e90600401612f58565b6040805180830381865afa158015611eec573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f109190612f7c565b60208101518151919250611f2391612fca565b471015611f435760405163050205f960e01b815260040160405180910390fd5b816001600160a01b03166374694a2b82602001518360000151611f669190612fca565b8e8e8e8e8e8e8e8e8e8e6040518c63ffffffff1660e01b8152600401611f959a99989796959493929190613251565b6000604051808303818588803b158015611fae57600080fd5b505af1158015611fc2573d6000803e3d6000fd5b5050505050505050505050505050505050565b611fdd6119d7565b6001600160a01b0381166120425760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610a51565b6109d281611c34565b610a648282611950565b600030330361206b575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290526000906060016040516020818303038152906040528051906020012090506120c88190565b546120d4906001612fca565b905550565b60608285856040516020016120f0939291906132c3565b6040516020818303038152906040529050949350505050565b60608315612118575081610990565b8251156121285782518084602001fd5b8160405162461bcd60e51b8152600401610a5191906127a4565b61214c8282610efa565b610a6457612164816001600160a01b03166014612312565b61216f836020612312565b604051602001612180929190613302565b60408051601f198184030181529082905262461bcd60e51b8252610a51916004016127a4565b6121ae6124ad565b81146109d257604051635637b6af60e11b815260048101829052602401610a51565b60008060006121df85856124c0565b909250905060008160048111156121f8576121f8613377565b1480156122165750856001600160a01b0316826001600160a01b0316145b1561222657600192505050610990565b600080876001600160a01b0316631626ba7e60e01b888860405160240161224e92919061338d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161228c9190613195565b600060405180830381855afa9150503d80600081146122c7576040519150601f19603f3d011682016040523d82523d6000602084013e6122cc565b606091505b50915091508180156122df575080516020145b801561230657508051630b135d3f60e11b9061230490830160209081019084016130de565b145b98975050505050505050565b606060006123218360026133a6565b61232c906002612fca565b6001600160401b0381111561234357612343612849565b6040519080825280601f01601f19166020018201604052801561236d576020820181803683370190505b509050600360fc1b8160008151811061238857612388612eb5565b60200101906001600160f81b031916908160001a905350600f60fb1b816001815181106123b7576123b7612eb5565b60200101906001600160f81b031916908160001a90535060006123db8460026133a6565b6123e6906001612fca565b90505b600181111561245e576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061241a5761241a612eb5565b1a60f81b82828151811061243057612430612eb5565b60200101906001600160f81b031916908160001a90535060049490941c93612457816133bd565b90506123e9565b5083156109905760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610a51565b60003033036120705750601f1936013590565b60008082516041036124f65760208301516040840151606085015160001a6124ea87828585612505565b945094505050506124fe565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561253c57506000905060036125e9565b8460ff16601b1415801561255457508460ff16601c14155b1561256557506000905060046125e9565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156125b9573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166125e2576000600192509250506125e9565b9150600090505b94509492505050565b60006020828403121561260457600080fd5b81356001600160e01b03198116811461099057600080fd5b6001600160a01b03811681146109d257600080fd5b60008083601f84011261264357600080fd5b5081356001600160401b0381111561265a57600080fd5b6020830191508360208285010111156124fe57600080fd5b60008060008060006080868803121561268a57600080fd5b85356126958161261c565b945060208601356126a58161261c565b93506040860135925060608601356001600160401b038111156126c757600080fd5b6126d388828901612631565b969995985093965092949392505050565b6000806000604084860312156126f957600080fd5b83356001600160401b038082111561271057600080fd5b908501906080828803121561272457600080fd5b9093506020850135908082111561273a57600080fd5b5061274786828701612631565b9497909650939450505050565b60005b8381101561276f578181015183820152602001612757565b50506000910152565b60008151808452612790816020860160208601612754565b601f01601f19169290920160200192915050565b6020815260006109906020830184612778565b6000602082840312156127c957600080fd5b5035919050565b600080604083850312156127e357600080fd5b8235915060208301356127f58161261c565b809150509250929050565b60006020828403121561281257600080fd5b81356109908161261c565b6000806040838503121561283057600080fd5b823561283b8161261c565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561288757612887612849565b604052919050565b600060208083850312156128a257600080fd5b82356001600160401b03808211156128b957600080fd5b818501915085601f8301126128cd57600080fd5b8135818111156128df576128df612849565b8060051b91506128f084830161285f565b818152918301840191848101908884111561290a57600080fd5b938501935b8385101561230657843592506129248361261c565b828252938501939085019061290f565b60008060006040848603121561294957600080fd5b83356001600160401b0381111561295f57600080fd5b61296b86828701612631565b909790965060209590950135949350505050565b60006001600160401b0383111561299857612998612849565b6129ab601f8401601f191660200161285f565b90508281528383830111156129bf57600080fd5b828260208301376000602084830101529392505050565b600082601f8301126129e757600080fd5b6109908383356020850161297f565b60008083601f840112612a0857600080fd5b5081356001600160401b03811115612a1f57600080fd5b6020830191508360208260051b85010111156124fe57600080fd5b80358015158114611bfe57600080fd5b803561ffff81168114611bfe57600080fd5b6000806000806000806000806000806101208b8d031215612a7c57600080fd5b8a356001600160401b0380821115612a9357600080fd5b612a9f8e838f016129d6565b9b5060208d01359150612ab18261261c565b90995060408c0135985060608c0135975060808c013590612ad18261261c565b90965060a08c01359080821115612ae757600080fd5b50612af48d828e016129f6565b9096509450612b07905060c08c01612a3a565b9250612b1560e08c01612a4a565b9150612b246101008c01612a3a565b90509295989b9194979a5092959850565b60008060008060008060008060a0898b031215612b5157600080fd5b8835612b5c8161261c565b97506020890135612b6c8161261c565b965060408901356001600160401b0380821115612b8857600080fd5b612b948c838d016129f6565b909850965060608b0135915080821115612bad57600080fd5b612bb98c838d016129f6565b909650945060808b0135915080821115612bd257600080fd5b50612bdf8b828c01612631565b999c989b5096995094979396929594505050565b600080600060608486031215612c0857600080fd5b8335612c138161261c565b92506020840135612c238161261c565b91506040840135612c338161261c565b809150509250925092565b60008060008060008060008060008060006101208c8e031215612c6057600080fd5b6001600160401b03808d351115612c7657600080fd5b612c838e8e358f01612631565b909c509a50612c9560208e013561261c565b60208d0135995060408d0135985060608d01359750612cb760808e013561261c565b60808d013596508060a08e01351115612ccf57600080fd5b50612ce08d60a08e01358e016129f6565b9095509350612cf160c08d01612a3a565b9250612cff60e08d01612a4a565b9150612d0e6101008d01612a3a565b90509295989b509295989b9093969950565b60008060008060008060a08789031215612d3957600080fd5b8635612d448161261c565b95506020870135612d548161261c565b9450604087013593506060870135925060808701356001600160401b03811115612d7d57600080fd5b612d8989828a01612631565b979a9699509497509295939492505050565b600080600060608486031215612db057600080fd5b8335612dbb8161261c565b92506020840135612dcb8161261c565b915060408401356001600160401b03811115612de657600080fd5b612df2868287016129d6565b9150509250925092565b608081526000612e0f6080830187612778565b6001600160a01b03958616602084015261ffff949094166040830152509216606090920191909152919050565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090610ef090830184612778565b6000808335601e19843603018112612e8657600080fd5b8301803591506001600160401b03821115612ea057600080fd5b6020019150368190038213156124fe57600080fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201612ef357612ef3612ecb565b5060010190565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b604081526000612f6c604083018587612f2f565b9050826020830152949350505050565b600060408284031215612f8e57600080fd5b604051604081018181106001600160401b0382111715612fb057612fb0612849565b604052825181526020928301519281019290925250919050565b8082018082111561077357610773612ecb565b81835260006020808501808196508560051b810191508460005b878110156130615782840389528135601e1988360301811261301857600080fd5b870185810190356001600160401b0381111561303357600080fd5b80360382131561304257600080fd5b61304d868284612f2f565b9a87019a9550505090840190600101612ff7565b5091979650505050505050565b60006101008083526130828184018d612778565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a085015290506130bc818789612fdd565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b6000602082840312156130f057600080fd5b5051919050565b60006080823603121561310957600080fd5b604051608081016001600160401b03828210818311171561312c5761312c612849565b816040528435915061313d8261261c565b8183526020850135602084015260408501356040840152606085013591508082111561316857600080fd5b50830136601f82011261317a57600080fd5b6131893682356020840161297f565b60608301525092915050565b600082516131a7818460208701612754565b9190910192915050565b6000826131ce57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b6000602082840312156131fb57600080fd5b81516109908161261c565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60006101008083526132668184018d8f612f2f565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a085015290506132a0818789612fdd565b94151560c0840152505061ffff9190911660e09091015298975050505050505050565b600084516132d5818460208901612754565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081526000835161333a816017850160208801612754565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835161336b816028840160208801612754565b01602801949350505050565b634e487b7160e01b600052602160045260246000fd5b8281526040602082015260006110476040830184612778565b808202811582820484141761077357610773612ecb565b6000816133cc576133cc612ecb565b50600019019056fe412386de53449251cbf7ce1f4c6a038bf9c0746e62d331b08ef0c3fa7d0ab6729f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a660793a5062d506d35cc8f1beda67ee5028c16bfcd9c923d5bfc439c04bd929b1a164736f6c6343000811000a", + "bytecode": "0x608060405234801562000010575f80fd5b506200001b62000021565b620000e0565b5f54610100900460ff16156200008d5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b5f5460ff9081161015620000de575f805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b6132cb80620000ee5f395ff3fe608060405260043610610215575f3560e01c80638da5cb5b1161011e578063acf1a841116100a8578063d547741f1161006d578063d547741f14610657578063f14fcbc814610676578063f23a6e6114610695578063f2fde38b146106b4578063ffa1ad74146106d3575f80fd5b8063acf1a841146105bb578063bc197c81146105da578063c0c53b8b146105f9578063cf01585314610618578063d539139314610637575f80fd5b8063a0e3aef1116100ee578063a0e3aef114610515578063a217fddf14610534578063a3f4df7e14610547578063a42474001461057d578063aa271e1a1461059c575f80fd5b80638da5cb5b146104a657806391d14854146104c3578063983b2d56146104e25780639865027514610501575f80fd5b80635fc1964f1161019f5780636ccbae5f1161016f5780636ccbae5f14610422578063715018a61461044157806371e2a6571461045557806381c81d351461047457806383e7f6ff14610487575f80fd5b80635fc1964f1461039a578063634486da146103b95780636352211e146103cc5780636a8be89e14610403575f80fd5b80632f2ff15d116101e55780632f2ff15d146102f45780633092afd51461031557806336568abe14610334578063423f6cef14610353578063572b6c0514610372575f80fd5b806301ffc9a714610220578063150b7a02146102545780631bf7e13e1461028c578063248a9ca3146102b8575f80fd5b3661021c57005b5f80fd5b34801561022b575f80fd5b5061023f61023a366004612514565b610703565b60405190151581526020015b60405180910390f35b34801561025f575f80fd5b5061027361026e36600461258c565b610748565b6040516001600160e01b0319909116815260200161024b565b348015610297575f80fd5b506102ab6102a63660046125f9565b610891565b60405161024b91906126b0565b3480156102c3575f80fd5b506102e66102d23660046126c2565b5f90815260fb602052604090206001015490565b60405190815260200161024b565b3480156102ff575f80fd5b5061031361030e3660046126d9565b61095a565b005b348015610320575f80fd5b5061031361032f366004612707565b610983565b34801561033f575f80fd5b5061031361034e3660046126d9565b610997565b34801561035e575f80fd5b5061031361036d366004612722565b610a2a565b34801561037d575f80fd5b5061023f61038c366004612707565b6001600160a01b0316301490565b3480156103a5575f80fd5b506103136103b4366004612790565b610b92565b6103136103c7366004612707565b610bcf565b3480156103d7575f80fd5b506103eb6103e63660046126c2565b610c8f565b6040516001600160a01b03909116815260200161024b565b34801561040e575f80fd5b5061031361041d366004612707565b610c99565b34801561042d575f80fd5b506102e661043c3660046126c2565b610ce2565b34801561044c575f80fd5b50610313610d27565b348015610460575f80fd5b5061031361046f366004612790565b610d3a565b610313610482366004612707565b610d77565b348015610492575f80fd5b506102e66104a1366004612830565b610df4565b3480156104b1575f80fd5b506097546001600160a01b03166103eb565b3480156104ce575f80fd5b5061023f6104dd3660046126d9565b610e93565b3480156104ed575f80fd5b506103136104fc366004612707565b610ebd565b34801561050c575f80fd5b50610313610ece565b348015610520575f80fd5b506102e661052f366004612949565b610ee7565b34801561053f575f80fd5b506102e65f81565b348015610552575f80fd5b506102ab6040518060400160405280600b81526020016a454e5320437573746f647960a81b81525081565b348015610588575f80fd5b5061023f6105973660046125f9565b610f8f565b3480156105a7575f80fd5b5061023f6105b6366004612707565b610fe0565b3480156105c6575f80fd5b506103136105d5366004612830565b610ff8565b3480156105e5575f80fd5b506102736105f4366004612a1a565b6111a8565b348015610604575f80fd5b50610313610613366004612ad0565b611253565b348015610623575f80fd5b50610313610632366004612b18565b6113f5565b348015610642575f80fd5b506102e65f8051602061327f83398151915281565b348015610662575f80fd5b506103136106713660046126d9565b611500565b348015610681575f80fd5b506103136106903660046126c2565b611524565b3480156106a0575f80fd5b506102736106af366004612bf1565b611591565b3480156106bf575f80fd5b506103136106ce366004612707565b61161f565b3480156106de575f80fd5b506102ab60405180604001604052806005815260200164302e312e3360d81b81525081565b5f6001600160e01b03198216630a85bd0160e11b148061073357506001600160e01b03198216630271189760e51b145b8061074257506107428261163a565b92915050565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004545f906001600160a01b03168061077e61166e565b6001600160a01b03160361086f575f808061079b86880188612c67565b9250925092506107aa8361167c565b6001600160a01b03841663b88d4fde305f8051602061329f833981519152546040516001600160a01b03909116908c906107ee90879030905f908b90602001612cc4565b6040516020818303038152906040526040518563ffffffff1660e01b815260040161081c9493929190612d03565b5f604051808303815f87803b158015610833575f80fd5b505af1158015610845573d5f803e3d5ffd5b5050505061085b610855826116ae565b84611731565b50630a85bd0160e11b935061088892505050565b6040516344e7d94960e01b815260040160405180910390fd5b95945050505050565b60605f5a90506108a2858585610f8f565b6108bf57604051638baa579f60e01b815260040160405180910390fd5b61094f6108cf6020870187612707565b306040880135846108e360608b018b612d35565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f920191909152506117bb92505050565b9150505b9392505050565b5f82815260fb602052604090206001015461097481611897565b61097e83836118a8565b505050565b61098b61192e565b610994816119a7565b50565b61099f61166e565b6001600160a01b0316816001600160a01b031614610a1c5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b610a2682826119be565b5050565b80610a3361166e565b6001600160a01b0316610a4582611a42565b6001600160a01b031614610a875780610a5c61166e565b604051637ea58b1160e01b815260048101929092526001600160a01b03166024820152604401610a13565b610a9082611b54565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb4660208201529081018390525f90610ae3906060015b6040516020818303038152906040528051906020012090565b80546001600160a01b0319166001600160a01b03929092169190911790555f5f8051602061329f83398151915254604051637921219560e11b81523060048201526001600160a01b038681166024830152604482018690526001606483015260a060848301525f60a48301529091169150819063f242432a9060c4015f604051808303815f87803b158015610b76575f80fd5b505af1158015610b88573d5f803e3d5ffd5b5050505050505050565b610b9a61192e565b5f5b8151811015610a2657610bc7828281518110610bba57610bba612d77565b60200260200101516119a7565b600101610b9c565b610bda6105b661166e565b610bf65760405162461bcd60e51b8152600401610a1390612d8b565b6001600160a01b038116610c4c5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a13565b610c5581611b6d565b610c5d610ece565b6040516001600160a01b038216903480156108fc02915f818181858888f19350505050158015610a26573d5f803e3d5ffd5b5f61074282611a42565b610ca161192e565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c500480546001600160a01b0319166001600160a01b0392909216919091179055565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f90610d2090606001610aca565b5492915050565b610d2f61192e565b610d385f611b84565b565b610d4261192e565b5f5b8151811015610a2657610d6f828281518110610d6257610d62612d77565b6020026020010151611b6d565b600101610d44565b610d826105b661166e565b610d9e5760405162461bcd60e51b8152600401610a1390612d8b565b6001600160a01b038116610c555760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a13565b5f8051602061325f833981519152546040516383e7f6ff60e01b81525f916001600160a01b031690829082906383e7f6ff90610e3890899089908990600401612de8565b6040805180830381865afa158015610e52573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e769190612e0b565b60208101518151919250610e8991612e6b565b9695505050505050565b5f91825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610ec561192e565b61099481611b6d565b610d385f8051602061327f83398151915261034e61166e565b5f8051602061325f833981519152545f906001600160a01b0316806365a69dcf8d85610f135730610f15565b8d5b8d8d8d8d8d8d8d6040518a63ffffffff1660e01b8152600401610f4099989796959493929190612f0f565b602060405180830381865afa158015610f5b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f7f9190612f7e565b9c9b505050505050505050505050565b5f610fd8610f9c85612f95565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250611bd592505050565b949350505050565b5f6107425f8051602061327f83398151915283610e93565b6110036105b661166e565b61101f5760405162461bcd60e51b8152600401610a1390612d8b565b6002603354036110715760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a13565b60026033555f8051602061325f833981519152546040516383e7f6ff60e01b81526001600160a01b03909116905f9082906383e7f6ff906110ba90889088908890600401612de8565b6040805180830381865afa1580156110d4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110f89190612e0b565b6020810151815191925061110b91612e6b565b47101561112b5760405163050205f960e01b815260040160405180910390fd5b816001600160a01b031663acf1a8418260200151835f015161114d9190612e6b565b8787876040518563ffffffff1660e01b815260040161116e93929190612de8565b5f604051808303818588803b158015611185575f80fd5b505af1158015611197573d5f803e3d5ffd5b505060016033555050505050505050565b5f5f8051602061329f833981519152546001600160a01b03166111c961166e565b6001600160a01b0316146111f0576040516344e7d94960e01b815260040160405180910390fd5b5f6111fd83850185612707565b90506112088161167c565b5f5b8781101561123c5761123489898381811061122757611227612d77565b9050602002013583611731565b60010161120a565b5063bc197c8160e01b9a9950505050505050505050565b5f54610100900460ff161580801561127157505f54600160ff909116105b8061128a5750303b15801561128a57505f5460ff166001145b6112ed5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610a13565b5f805460ff19166001179055801561130e575f805461ff0019166101001790555b5f8051602061325f83398151915280546001600160a01b038087166001600160a01b0319928316179092555f8051602061329f83398151915280548684169083161790557ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c500480549285169290911691909117905561138a611d10565b611392611d3d565b61139a611d3d565b6113a2611d63565b6113aa611d99565b80156113ef575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6114006105b661166e565b61141c5760405162461bcd60e51b8152600401610a1390612d8b565b60026033540361146e5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a13565b60026033819055505f6114b58c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152506116ae92505050565b90506114c081611b54565b6114de8c8c846114d057306114d2565b8c5b8c8c8c8c8c8c8c611dd0565b816114ed576114ed818b611731565b5050600160335550505050505050505050565b5f82815260fb602052604090206001015461151a81611897565b61097e83836119be565b5f5f8051602061325f83398151915254604051631e29f97960e31b8152600481018490526001600160a01b039091169150819063f14fcbc8906024015f604051808303815f87803b158015611577575f80fd5b505af1158015611589573d5f803e3d5ffd5b505050505050565b5f5f8051602061329f833981519152546001600160a01b03166115b261166e565b6001600160a01b0316146115d9576040516344e7d94960e01b815260040160405180910390fd5b6001600160a01b0386161561160c575f6115f583850185612707565b90506116008161167c565b61160a8682611731565b505b5063f23a6e6160e01b9695505050505050565b61162761192e565b61163081611f12565b6109945f82611f88565b5f6001600160e01b03198216637965db0b60e01b148061074257506301ffc9a760e01b6001600160e01b0319831614610742565b5f611677611f92565b905090565b6001600160a01b0381166109945760405163b20f76e360e01b81526001600160a01b0382166004820152602401610a13565b5f7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae5f1b826040516020016116e3919061302f565b60405160208183030381529060405280519060200120604051602001611713929190918252602082015260400190565b60408051601f19818403018152919052805160209091012092915050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052819061176f90606001610aca565b80546001600160a01b0319166001600160a01b039283161790556040519082169083907f45aa97e368889fb3527c1db60c59c2ae91e82f21778613449e46d4208c1c4b12905f90a35050565b60606117c685611faf565b5f80876001600160a01b0316866117df8b8a8989612014565b6040516117ec919061302f565b5f604051808303815f8787f1925050503d805f8114611826576040519150601f19603f3d011682016040523d82523d5f602084013e61182b565b606091505b50909250905061183c603f8761304a565b5a1161184a5761184a613069565b61188a82826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c4544000000000000815250612044565b9998505050505050505050565b610994816118a361166e565b61207d565b6118b28282610e93565b610a26575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191660011790556118ea61166e565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b61193661166e565b6001600160a01b03166119516097546001600160a01b031690565b6001600160a01b031614610d385760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a13565b6109945f8051602061327f83398151915282611500565b6119c88282610e93565b15610a26575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191690556119fe61166e565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb4660208201529081018290525f90611a8090606001610aca565b546001600160a01b0316905080611aad5760405163124bad6360e31b815260048101839052602401610a13565b305f8051602061329f833981519152546040516331a9108f60e11b8152600481018590526001600160a01b0390911690636352211e90602401602060405180830381865afa158015611b01573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611b25919061307d565b6001600160a01b031614611b4f576040516303b673fd60e21b815260048101839052602401610a13565b919050565b303303611b6457610994816120e1565b61099481611faf565b6109945f8051602061327f83398151915282611f88565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015611c19573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611c3d9190612f7e565b90505f611cea866060015180519060200120868860200151604051602001611c8a9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b9050818660200151148015610e8957508551610e89906001600160a01b0316828661210b565b5f54610100900460ff16611d365760405162461bcd60e51b8152600401610a1390613098565b6001603355565b5f54610100900460ff16610d385760405162461bcd60e51b8152600401610a1390613098565b5f54610100900460ff16611d895760405162461bcd60e51b8152600401610a1390613098565b610d38611d9461166e565b611b84565b5f54610100900460ff16611dbf5760405162461bcd60e51b8152600401610a1390613098565b610d385f611dcb61166e565b611f88565b5f8051602061325f833981519152546040516383e7f6ff60e01b81526001600160a01b03909116905f9082906383e7f6ff90611e14908f908f908e90600401612de8565b6040805180830381865afa158015611e2e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611e529190612e0b565b60208101518151919250611e6591612e6b565b471015611e855760405163050205f960e01b815260040160405180910390fd5b816001600160a01b03166374694a2b8260200151835f0151611ea79190612e6b565b8e8e8e8e8e8e8e8e8e8e6040518c63ffffffff1660e01b8152600401611ed69a999897969594939291906130e3565b5f604051808303818588803b158015611eed575f80fd5b505af1158015611eff573d5f803e3d5ffd5b5050505050505050505050505050505050565b611f1a61192e565b6001600160a01b038116611f7f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610a13565b61099481611b84565b610a2682826118a8565b5f303303611fa7575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f906060016040516020818303038152906040528051906020012090506120038190565b5461200f906001612e6b565b905550565b606082858560405160200161202b93929190613154565b6040516020818303038152906040529050949350505050565b60608315612053575081610953565b8251156120635782518084602001fd5b8160405162461bcd60e51b8152600401610a1391906126b0565b6120878282610e93565b610a265761209f816001600160a01b03166014612246565b6120aa836020612246565b6040516020016120bb929190613192565b60408051601f198184030181529082905262461bcd60e51b8252610a13916004016126b0565b6120e96123db565b811461099457604051635637b6af60e11b815260048101829052602401610a13565b5f805f61211885856123ed565b90925090505f81600481111561213057612130613206565b14801561214e5750856001600160a01b0316826001600160a01b0316145b1561215e57600192505050610953565b5f80876001600160a01b0316631626ba7e60e01b888860405160240161218592919061321a565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516121c3919061302f565b5f60405180830381855afa9150503d805f81146121fb576040519150601f19603f3d011682016040523d82523d5f602084013e612200565b606091505b5091509150818015612213575080516020145b801561223a57508051630b135d3f60e11b906122389083016020908101908401612f7e565b145b98975050505050505050565b60605f612254836002613232565b61225f906002612e6b565b6001600160401b038111156122765761227661274c565b6040519080825280601f01601f1916602001820160405280156122a0576020820181803683370190505b509050600360fc1b815f815181106122ba576122ba612d77565b60200101906001600160f81b03191690815f1a905350600f60fb1b816001815181106122e8576122e8612d77565b60200101906001600160f81b03191690815f1a9053505f61230a846002613232565b612315906001612e6b565b90505b600181111561238c576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061234957612349612d77565b1a60f81b82828151811061235f5761235f612d77565b60200101906001600160f81b03191690815f1a90535060049490941c9361238581613249565b9050612318565b5083156109535760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610a13565b5f303303611fac5750601f1936013590565b5f808251604103612421576020830151604084015160608501515f1a6124158782858561242f565b94509450505050612428565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561246457505f9050600361250b565b8460ff16601b1415801561247c57508460ff16601c14155b1561248c57505f9050600461250b565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156124dd573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b038116612505575f6001925092505061250b565b91505f90505b94509492505050565b5f60208284031215612524575f80fd5b81356001600160e01b031981168114610953575f80fd5b6001600160a01b0381168114610994575f80fd5b5f8083601f84011261255f575f80fd5b5081356001600160401b03811115612575575f80fd5b602083019150836020828501011115612428575f80fd5b5f805f805f608086880312156125a0575f80fd5b85356125ab8161253b565b945060208601356125bb8161253b565b93506040860135925060608601356001600160401b038111156125dc575f80fd5b6125e88882890161254f565b969995985093965092949392505050565b5f805f6040848603121561260b575f80fd5b83356001600160401b0380821115612621575f80fd5b9085019060808288031215612634575f80fd5b90935060208501359080821115612649575f80fd5b506126568682870161254f565b9497909650939450505050565b5f5b8381101561267d578181015183820152602001612665565b50505f910152565b5f815180845261269c816020860160208601612663565b601f01601f19169290920160200192915050565b602081525f6109536020830184612685565b5f602082840312156126d2575f80fd5b5035919050565b5f80604083850312156126ea575f80fd5b8235915060208301356126fc8161253b565b809150509250929050565b5f60208284031215612717575f80fd5b81356109538161253b565b5f8060408385031215612733575f80fd5b823561273e8161253b565b946020939093013593505050565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f191681016001600160401b03811182821017156127885761278861274c565b604052919050565b5f60208083850312156127a1575f80fd5b82356001600160401b03808211156127b7575f80fd5b818501915085601f8301126127ca575f80fd5b8135818111156127dc576127dc61274c565b8060051b91506127ed848301612760565b8181529183018401918481019088841115612806575f80fd5b938501935b8385101561223a57843592506128208361253b565b828252938501939085019061280b565b5f805f60408486031215612842575f80fd5b83356001600160401b03811115612857575f80fd5b6128638682870161254f565b909790965060209590950135949350505050565b5f6001600160401b0383111561288f5761288f61274c565b6128a2601f8401601f1916602001612760565b90508281528383830111156128b5575f80fd5b828260208301375f602084830101529392505050565b5f82601f8301126128da575f80fd5b61095383833560208501612877565b5f8083601f8401126128f9575f80fd5b5081356001600160401b0381111561290f575f80fd5b6020830191508360208260051b8501011115612428575f80fd5b80358015158114611b4f575f80fd5b803561ffff81168114611b4f575f80fd5b5f805f805f805f805f806101208b8d031215612963575f80fd5b8a356001600160401b0380821115612979575f80fd5b6129858e838f016128cb565b9b5060208d013591506129978261253b565b90995060408c0135985060608c0135975060808c0135906129b78261253b565b90965060a08c013590808211156129cc575f80fd5b506129d98d828e016128e9565b90965094506129ec905060c08c01612929565b92506129fa60e08c01612938565b9150612a096101008c01612929565b90509295989b9194979a5092959850565b5f805f805f805f8060a0898b031215612a31575f80fd5b8835612a3c8161253b565b97506020890135612a4c8161253b565b965060408901356001600160401b0380821115612a67575f80fd5b612a738c838d016128e9565b909850965060608b0135915080821115612a8b575f80fd5b612a978c838d016128e9565b909650945060808b0135915080821115612aaf575f80fd5b50612abc8b828c0161254f565b999c989b5096995094979396929594505050565b5f805f60608486031215612ae2575f80fd5b8335612aed8161253b565b92506020840135612afd8161253b565b91506040840135612b0d8161253b565b809150509250925092565b5f805f805f805f805f805f6101208c8e031215612b33575f80fd5b6001600160401b03808d351115612b48575f80fd5b612b558e8e358f0161254f565b909c509a50612b6760208e013561253b565b60208d0135995060408d0135985060608d01359750612b8960808e013561253b565b60808d013596508060a08e01351115612ba0575f80fd5b50612bb18d60a08e01358e016128e9565b9095509350612bc260c08d01612929565b9250612bd060e08d01612938565b9150612bdf6101008d01612929565b90509295989b509295989b9093969950565b5f805f805f8060a08789031215612c06575f80fd5b8635612c118161253b565b95506020870135612c218161253b565b9450604087013593506060870135925060808701356001600160401b03811115612c49575f80fd5b612c5589828a0161254f565b979a9699509497509295939492505050565b5f805f60608486031215612c79575f80fd5b8335612c848161253b565b92506020840135612c948161253b565b915060408401356001600160401b03811115612cae575f80fd5b612cba868287016128cb565b9150509250925092565b608081525f612cd66080830187612685565b6001600160a01b03958616602084015261ffff949094166040830152509216606090920191909152919050565b6001600160a01b03858116825284166020820152604081018390526080606082018190525f90610e8990830184612685565b5f808335601e19843603018112612d4a575f80fd5b8301803591506001600160401b03821115612d63575f80fd5b602001915036819003821315612428575f80fd5b634e487b7160e01b5f52603260045260245ffd5b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b604081525f612dfb604083018587612dc0565b9050826020830152949350505050565b5f60408284031215612e1b575f80fd5b604051604081018181106001600160401b0382111715612e3d57612e3d61274c565b604052825181526020928301519281019290925250919050565b634e487b7160e01b5f52601160045260245ffd5b8082018082111561074257610742612e57565b5f838385526020808601955060208560051b830101845f5b87811015612f0257848303601f19018952813536889003601e19018112612ebb575f80fd5b870184810190356001600160401b03811115612ed5575f80fd5b803603821315612ee3575f80fd5b612eee858284612dc0565b9a86019a9450505090830190600101612e96565b5090979650505050505050565b5f610100808352612f228184018d612685565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a08501529050612f5c818789612e7e565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b5f60208284031215612f8e575f80fd5b5051919050565b5f60808236031215612fa5575f80fd5b604051608081016001600160401b038282108183111715612fc857612fc861274c565b8160405284359150612fd98261253b565b81835260208501356020840152604085013560408401526060850135915080821115613003575f80fd5b50830136601f820112613014575f80fd5b61302336823560208401612877565b60608301525092915050565b5f8251613040818460208701612663565b9190910192915050565b5f8261306457634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b5f6020828403121561308d575f80fd5b81516109538161253b565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b5f6101008083526130f78184018d8f612dc0565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a08501529050613131818789612e7e565b94151560c0840152505061ffff9190911660e09091015298975050505050505050565b5f8451613165818460208901612663565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081525f83516131c9816017850160208801612663565b7001034b99036b4b9b9b4b733903937b6329607d1b60179184019182015283516131fa816028840160208801612663565b01602801949350505050565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f610fd86040830184612685565b808202811582820484141761074257610742612e57565b5f8161325757613257612e57565b505f19019056fe412386de53449251cbf7ce1f4c6a038bf9c0746e62d331b08ef0c3fa7d0ab6729f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a660793a5062d506d35cc8f1beda67ee5028c16bfcd9c923d5bfc439c04bd929b1a164736f6c6343000818000a", + "deployedBytecode": "0x608060405260043610610215575f3560e01c80638da5cb5b1161011e578063acf1a841116100a8578063d547741f1161006d578063d547741f14610657578063f14fcbc814610676578063f23a6e6114610695578063f2fde38b146106b4578063ffa1ad74146106d3575f80fd5b8063acf1a841146105bb578063bc197c81146105da578063c0c53b8b146105f9578063cf01585314610618578063d539139314610637575f80fd5b8063a0e3aef1116100ee578063a0e3aef114610515578063a217fddf14610534578063a3f4df7e14610547578063a42474001461057d578063aa271e1a1461059c575f80fd5b80638da5cb5b146104a657806391d14854146104c3578063983b2d56146104e25780639865027514610501575f80fd5b80635fc1964f1161019f5780636ccbae5f1161016f5780636ccbae5f14610422578063715018a61461044157806371e2a6571461045557806381c81d351461047457806383e7f6ff14610487575f80fd5b80635fc1964f1461039a578063634486da146103b95780636352211e146103cc5780636a8be89e14610403575f80fd5b80632f2ff15d116101e55780632f2ff15d146102f45780633092afd51461031557806336568abe14610334578063423f6cef14610353578063572b6c0514610372575f80fd5b806301ffc9a714610220578063150b7a02146102545780631bf7e13e1461028c578063248a9ca3146102b8575f80fd5b3661021c57005b5f80fd5b34801561022b575f80fd5b5061023f61023a366004612514565b610703565b60405190151581526020015b60405180910390f35b34801561025f575f80fd5b5061027361026e36600461258c565b610748565b6040516001600160e01b0319909116815260200161024b565b348015610297575f80fd5b506102ab6102a63660046125f9565b610891565b60405161024b91906126b0565b3480156102c3575f80fd5b506102e66102d23660046126c2565b5f90815260fb602052604090206001015490565b60405190815260200161024b565b3480156102ff575f80fd5b5061031361030e3660046126d9565b61095a565b005b348015610320575f80fd5b5061031361032f366004612707565b610983565b34801561033f575f80fd5b5061031361034e3660046126d9565b610997565b34801561035e575f80fd5b5061031361036d366004612722565b610a2a565b34801561037d575f80fd5b5061023f61038c366004612707565b6001600160a01b0316301490565b3480156103a5575f80fd5b506103136103b4366004612790565b610b92565b6103136103c7366004612707565b610bcf565b3480156103d7575f80fd5b506103eb6103e63660046126c2565b610c8f565b6040516001600160a01b03909116815260200161024b565b34801561040e575f80fd5b5061031361041d366004612707565b610c99565b34801561042d575f80fd5b506102e661043c3660046126c2565b610ce2565b34801561044c575f80fd5b50610313610d27565b348015610460575f80fd5b5061031361046f366004612790565b610d3a565b610313610482366004612707565b610d77565b348015610492575f80fd5b506102e66104a1366004612830565b610df4565b3480156104b1575f80fd5b506097546001600160a01b03166103eb565b3480156104ce575f80fd5b5061023f6104dd3660046126d9565b610e93565b3480156104ed575f80fd5b506103136104fc366004612707565b610ebd565b34801561050c575f80fd5b50610313610ece565b348015610520575f80fd5b506102e661052f366004612949565b610ee7565b34801561053f575f80fd5b506102e65f81565b348015610552575f80fd5b506102ab6040518060400160405280600b81526020016a454e5320437573746f647960a81b81525081565b348015610588575f80fd5b5061023f6105973660046125f9565b610f8f565b3480156105a7575f80fd5b5061023f6105b6366004612707565b610fe0565b3480156105c6575f80fd5b506103136105d5366004612830565b610ff8565b3480156105e5575f80fd5b506102736105f4366004612a1a565b6111a8565b348015610604575f80fd5b50610313610613366004612ad0565b611253565b348015610623575f80fd5b50610313610632366004612b18565b6113f5565b348015610642575f80fd5b506102e65f8051602061327f83398151915281565b348015610662575f80fd5b506103136106713660046126d9565b611500565b348015610681575f80fd5b506103136106903660046126c2565b611524565b3480156106a0575f80fd5b506102736106af366004612bf1565b611591565b3480156106bf575f80fd5b506103136106ce366004612707565b61161f565b3480156106de575f80fd5b506102ab60405180604001604052806005815260200164302e312e3360d81b81525081565b5f6001600160e01b03198216630a85bd0160e11b148061073357506001600160e01b03198216630271189760e51b145b8061074257506107428261163a565b92915050565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004545f906001600160a01b03168061077e61166e565b6001600160a01b03160361086f575f808061079b86880188612c67565b9250925092506107aa8361167c565b6001600160a01b03841663b88d4fde305f8051602061329f833981519152546040516001600160a01b03909116908c906107ee90879030905f908b90602001612cc4565b6040516020818303038152906040526040518563ffffffff1660e01b815260040161081c9493929190612d03565b5f604051808303815f87803b158015610833575f80fd5b505af1158015610845573d5f803e3d5ffd5b5050505061085b610855826116ae565b84611731565b50630a85bd0160e11b935061088892505050565b6040516344e7d94960e01b815260040160405180910390fd5b95945050505050565b60605f5a90506108a2858585610f8f565b6108bf57604051638baa579f60e01b815260040160405180910390fd5b61094f6108cf6020870187612707565b306040880135846108e360608b018b612d35565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f920191909152506117bb92505050565b9150505b9392505050565b5f82815260fb602052604090206001015461097481611897565b61097e83836118a8565b505050565b61098b61192e565b610994816119a7565b50565b61099f61166e565b6001600160a01b0316816001600160a01b031614610a1c5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b610a2682826119be565b5050565b80610a3361166e565b6001600160a01b0316610a4582611a42565b6001600160a01b031614610a875780610a5c61166e565b604051637ea58b1160e01b815260048101929092526001600160a01b03166024820152604401610a13565b610a9082611b54565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb4660208201529081018390525f90610ae3906060015b6040516020818303038152906040528051906020012090565b80546001600160a01b0319166001600160a01b03929092169190911790555f5f8051602061329f83398151915254604051637921219560e11b81523060048201526001600160a01b038681166024830152604482018690526001606483015260a060848301525f60a48301529091169150819063f242432a9060c4015f604051808303815f87803b158015610b76575f80fd5b505af1158015610b88573d5f803e3d5ffd5b5050505050505050565b610b9a61192e565b5f5b8151811015610a2657610bc7828281518110610bba57610bba612d77565b60200260200101516119a7565b600101610b9c565b610bda6105b661166e565b610bf65760405162461bcd60e51b8152600401610a1390612d8b565b6001600160a01b038116610c4c5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a13565b610c5581611b6d565b610c5d610ece565b6040516001600160a01b038216903480156108fc02915f818181858888f19350505050158015610a26573d5f803e3d5ffd5b5f61074282611a42565b610ca161192e565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c500480546001600160a01b0319166001600160a01b0392909216919091179055565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f90610d2090606001610aca565b5492915050565b610d2f61192e565b610d385f611b84565b565b610d4261192e565b5f5b8151811015610a2657610d6f828281518110610d6257610d62612d77565b6020026020010151611b6d565b600101610d44565b610d826105b661166e565b610d9e5760405162461bcd60e51b8152600401610a1390612d8b565b6001600160a01b038116610c555760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a13565b5f8051602061325f833981519152546040516383e7f6ff60e01b81525f916001600160a01b031690829082906383e7f6ff90610e3890899089908990600401612de8565b6040805180830381865afa158015610e52573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e769190612e0b565b60208101518151919250610e8991612e6b565b9695505050505050565b5f91825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610ec561192e565b61099481611b6d565b610d385f8051602061327f83398151915261034e61166e565b5f8051602061325f833981519152545f906001600160a01b0316806365a69dcf8d85610f135730610f15565b8d5b8d8d8d8d8d8d8d6040518a63ffffffff1660e01b8152600401610f4099989796959493929190612f0f565b602060405180830381865afa158015610f5b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f7f9190612f7e565b9c9b505050505050505050505050565b5f610fd8610f9c85612f95565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250611bd592505050565b949350505050565b5f6107425f8051602061327f83398151915283610e93565b6110036105b661166e565b61101f5760405162461bcd60e51b8152600401610a1390612d8b565b6002603354036110715760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a13565b60026033555f8051602061325f833981519152546040516383e7f6ff60e01b81526001600160a01b03909116905f9082906383e7f6ff906110ba90889088908890600401612de8565b6040805180830381865afa1580156110d4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110f89190612e0b565b6020810151815191925061110b91612e6b565b47101561112b5760405163050205f960e01b815260040160405180910390fd5b816001600160a01b031663acf1a8418260200151835f015161114d9190612e6b565b8787876040518563ffffffff1660e01b815260040161116e93929190612de8565b5f604051808303818588803b158015611185575f80fd5b505af1158015611197573d5f803e3d5ffd5b505060016033555050505050505050565b5f5f8051602061329f833981519152546001600160a01b03166111c961166e565b6001600160a01b0316146111f0576040516344e7d94960e01b815260040160405180910390fd5b5f6111fd83850185612707565b90506112088161167c565b5f5b8781101561123c5761123489898381811061122757611227612d77565b9050602002013583611731565b60010161120a565b5063bc197c8160e01b9a9950505050505050505050565b5f54610100900460ff161580801561127157505f54600160ff909116105b8061128a5750303b15801561128a57505f5460ff166001145b6112ed5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610a13565b5f805460ff19166001179055801561130e575f805461ff0019166101001790555b5f8051602061325f83398151915280546001600160a01b038087166001600160a01b0319928316179092555f8051602061329f83398151915280548684169083161790557ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c500480549285169290911691909117905561138a611d10565b611392611d3d565b61139a611d3d565b6113a2611d63565b6113aa611d99565b80156113ef575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6114006105b661166e565b61141c5760405162461bcd60e51b8152600401610a1390612d8b565b60026033540361146e5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a13565b60026033819055505f6114b58c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152506116ae92505050565b90506114c081611b54565b6114de8c8c846114d057306114d2565b8c5b8c8c8c8c8c8c8c611dd0565b816114ed576114ed818b611731565b5050600160335550505050505050505050565b5f82815260fb602052604090206001015461151a81611897565b61097e83836119be565b5f5f8051602061325f83398151915254604051631e29f97960e31b8152600481018490526001600160a01b039091169150819063f14fcbc8906024015f604051808303815f87803b158015611577575f80fd5b505af1158015611589573d5f803e3d5ffd5b505050505050565b5f5f8051602061329f833981519152546001600160a01b03166115b261166e565b6001600160a01b0316146115d9576040516344e7d94960e01b815260040160405180910390fd5b6001600160a01b0386161561160c575f6115f583850185612707565b90506116008161167c565b61160a8682611731565b505b5063f23a6e6160e01b9695505050505050565b61162761192e565b61163081611f12565b6109945f82611f88565b5f6001600160e01b03198216637965db0b60e01b148061074257506301ffc9a760e01b6001600160e01b0319831614610742565b5f611677611f92565b905090565b6001600160a01b0381166109945760405163b20f76e360e01b81526001600160a01b0382166004820152602401610a13565b5f7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae5f1b826040516020016116e3919061302f565b60405160208183030381529060405280519060200120604051602001611713929190918252602082015260400190565b60408051601f19818403018152919052805160209091012092915050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052819061176f90606001610aca565b80546001600160a01b0319166001600160a01b039283161790556040519082169083907f45aa97e368889fb3527c1db60c59c2ae91e82f21778613449e46d4208c1c4b12905f90a35050565b60606117c685611faf565b5f80876001600160a01b0316866117df8b8a8989612014565b6040516117ec919061302f565b5f604051808303815f8787f1925050503d805f8114611826576040519150601f19603f3d011682016040523d82523d5f602084013e61182b565b606091505b50909250905061183c603f8761304a565b5a1161184a5761184a613069565b61188a82826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c4544000000000000815250612044565b9998505050505050505050565b610994816118a361166e565b61207d565b6118b28282610e93565b610a26575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191660011790556118ea61166e565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b61193661166e565b6001600160a01b03166119516097546001600160a01b031690565b6001600160a01b031614610d385760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a13565b6109945f8051602061327f83398151915282611500565b6119c88282610e93565b15610a26575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191690556119fe61166e565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb4660208201529081018290525f90611a8090606001610aca565b546001600160a01b0316905080611aad5760405163124bad6360e31b815260048101839052602401610a13565b305f8051602061329f833981519152546040516331a9108f60e11b8152600481018590526001600160a01b0390911690636352211e90602401602060405180830381865afa158015611b01573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611b25919061307d565b6001600160a01b031614611b4f576040516303b673fd60e21b815260048101839052602401610a13565b919050565b303303611b6457610994816120e1565b61099481611faf565b6109945f8051602061327f83398151915282611f88565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015611c19573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611c3d9190612f7e565b90505f611cea866060015180519060200120868860200151604051602001611c8a9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b9050818660200151148015610e8957508551610e89906001600160a01b0316828661210b565b5f54610100900460ff16611d365760405162461bcd60e51b8152600401610a1390613098565b6001603355565b5f54610100900460ff16610d385760405162461bcd60e51b8152600401610a1390613098565b5f54610100900460ff16611d895760405162461bcd60e51b8152600401610a1390613098565b610d38611d9461166e565b611b84565b5f54610100900460ff16611dbf5760405162461bcd60e51b8152600401610a1390613098565b610d385f611dcb61166e565b611f88565b5f8051602061325f833981519152546040516383e7f6ff60e01b81526001600160a01b03909116905f9082906383e7f6ff90611e14908f908f908e90600401612de8565b6040805180830381865afa158015611e2e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611e529190612e0b565b60208101518151919250611e6591612e6b565b471015611e855760405163050205f960e01b815260040160405180910390fd5b816001600160a01b03166374694a2b8260200151835f0151611ea79190612e6b565b8e8e8e8e8e8e8e8e8e8e6040518c63ffffffff1660e01b8152600401611ed69a999897969594939291906130e3565b5f604051808303818588803b158015611eed575f80fd5b505af1158015611eff573d5f803e3d5ffd5b5050505050505050505050505050505050565b611f1a61192e565b6001600160a01b038116611f7f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610a13565b61099481611b84565b610a2682826118a8565b5f303303611fa7575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f906060016040516020818303038152906040528051906020012090506120038190565b5461200f906001612e6b565b905550565b606082858560405160200161202b93929190613154565b6040516020818303038152906040529050949350505050565b60608315612053575081610953565b8251156120635782518084602001fd5b8160405162461bcd60e51b8152600401610a1391906126b0565b6120878282610e93565b610a265761209f816001600160a01b03166014612246565b6120aa836020612246565b6040516020016120bb929190613192565b60408051601f198184030181529082905262461bcd60e51b8252610a13916004016126b0565b6120e96123db565b811461099457604051635637b6af60e11b815260048101829052602401610a13565b5f805f61211885856123ed565b90925090505f81600481111561213057612130613206565b14801561214e5750856001600160a01b0316826001600160a01b0316145b1561215e57600192505050610953565b5f80876001600160a01b0316631626ba7e60e01b888860405160240161218592919061321a565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516121c3919061302f565b5f60405180830381855afa9150503d805f81146121fb576040519150601f19603f3d011682016040523d82523d5f602084013e612200565b606091505b5091509150818015612213575080516020145b801561223a57508051630b135d3f60e11b906122389083016020908101908401612f7e565b145b98975050505050505050565b60605f612254836002613232565b61225f906002612e6b565b6001600160401b038111156122765761227661274c565b6040519080825280601f01601f1916602001820160405280156122a0576020820181803683370190505b509050600360fc1b815f815181106122ba576122ba612d77565b60200101906001600160f81b03191690815f1a905350600f60fb1b816001815181106122e8576122e8612d77565b60200101906001600160f81b03191690815f1a9053505f61230a846002613232565b612315906001612e6b565b90505b600181111561238c576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061234957612349612d77565b1a60f81b82828151811061235f5761235f612d77565b60200101906001600160f81b03191690815f1a90535060049490941c9361238581613249565b9050612318565b5083156109535760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610a13565b5f303303611fac5750601f1936013590565b5f808251604103612421576020830151604084015160608501515f1a6124158782858561242f565b94509450505050612428565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561246457505f9050600361250b565b8460ff16601b1415801561247c57508460ff16601c14155b1561248c57505f9050600461250b565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156124dd573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b038116612505575f6001925092505061250b565b91505f90505b94509492505050565b5f60208284031215612524575f80fd5b81356001600160e01b031981168114610953575f80fd5b6001600160a01b0381168114610994575f80fd5b5f8083601f84011261255f575f80fd5b5081356001600160401b03811115612575575f80fd5b602083019150836020828501011115612428575f80fd5b5f805f805f608086880312156125a0575f80fd5b85356125ab8161253b565b945060208601356125bb8161253b565b93506040860135925060608601356001600160401b038111156125dc575f80fd5b6125e88882890161254f565b969995985093965092949392505050565b5f805f6040848603121561260b575f80fd5b83356001600160401b0380821115612621575f80fd5b9085019060808288031215612634575f80fd5b90935060208501359080821115612649575f80fd5b506126568682870161254f565b9497909650939450505050565b5f5b8381101561267d578181015183820152602001612665565b50505f910152565b5f815180845261269c816020860160208601612663565b601f01601f19169290920160200192915050565b602081525f6109536020830184612685565b5f602082840312156126d2575f80fd5b5035919050565b5f80604083850312156126ea575f80fd5b8235915060208301356126fc8161253b565b809150509250929050565b5f60208284031215612717575f80fd5b81356109538161253b565b5f8060408385031215612733575f80fd5b823561273e8161253b565b946020939093013593505050565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f191681016001600160401b03811182821017156127885761278861274c565b604052919050565b5f60208083850312156127a1575f80fd5b82356001600160401b03808211156127b7575f80fd5b818501915085601f8301126127ca575f80fd5b8135818111156127dc576127dc61274c565b8060051b91506127ed848301612760565b8181529183018401918481019088841115612806575f80fd5b938501935b8385101561223a57843592506128208361253b565b828252938501939085019061280b565b5f805f60408486031215612842575f80fd5b83356001600160401b03811115612857575f80fd5b6128638682870161254f565b909790965060209590950135949350505050565b5f6001600160401b0383111561288f5761288f61274c565b6128a2601f8401601f1916602001612760565b90508281528383830111156128b5575f80fd5b828260208301375f602084830101529392505050565b5f82601f8301126128da575f80fd5b61095383833560208501612877565b5f8083601f8401126128f9575f80fd5b5081356001600160401b0381111561290f575f80fd5b6020830191508360208260051b8501011115612428575f80fd5b80358015158114611b4f575f80fd5b803561ffff81168114611b4f575f80fd5b5f805f805f805f805f806101208b8d031215612963575f80fd5b8a356001600160401b0380821115612979575f80fd5b6129858e838f016128cb565b9b5060208d013591506129978261253b565b90995060408c0135985060608c0135975060808c0135906129b78261253b565b90965060a08c013590808211156129cc575f80fd5b506129d98d828e016128e9565b90965094506129ec905060c08c01612929565b92506129fa60e08c01612938565b9150612a096101008c01612929565b90509295989b9194979a5092959850565b5f805f805f805f8060a0898b031215612a31575f80fd5b8835612a3c8161253b565b97506020890135612a4c8161253b565b965060408901356001600160401b0380821115612a67575f80fd5b612a738c838d016128e9565b909850965060608b0135915080821115612a8b575f80fd5b612a978c838d016128e9565b909650945060808b0135915080821115612aaf575f80fd5b50612abc8b828c0161254f565b999c989b5096995094979396929594505050565b5f805f60608486031215612ae2575f80fd5b8335612aed8161253b565b92506020840135612afd8161253b565b91506040840135612b0d8161253b565b809150509250925092565b5f805f805f805f805f805f6101208c8e031215612b33575f80fd5b6001600160401b03808d351115612b48575f80fd5b612b558e8e358f0161254f565b909c509a50612b6760208e013561253b565b60208d0135995060408d0135985060608d01359750612b8960808e013561253b565b60808d013596508060a08e01351115612ba0575f80fd5b50612bb18d60a08e01358e016128e9565b9095509350612bc260c08d01612929565b9250612bd060e08d01612938565b9150612bdf6101008d01612929565b90509295989b509295989b9093969950565b5f805f805f8060a08789031215612c06575f80fd5b8635612c118161253b565b95506020870135612c218161253b565b9450604087013593506060870135925060808701356001600160401b03811115612c49575f80fd5b612c5589828a0161254f565b979a9699509497509295939492505050565b5f805f60608486031215612c79575f80fd5b8335612c848161253b565b92506020840135612c948161253b565b915060408401356001600160401b03811115612cae575f80fd5b612cba868287016128cb565b9150509250925092565b608081525f612cd66080830187612685565b6001600160a01b03958616602084015261ffff949094166040830152509216606090920191909152919050565b6001600160a01b03858116825284166020820152604081018390526080606082018190525f90610e8990830184612685565b5f808335601e19843603018112612d4a575f80fd5b8301803591506001600160401b03821115612d63575f80fd5b602001915036819003821315612428575f80fd5b634e487b7160e01b5f52603260045260245ffd5b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b604081525f612dfb604083018587612dc0565b9050826020830152949350505050565b5f60408284031215612e1b575f80fd5b604051604081018181106001600160401b0382111715612e3d57612e3d61274c565b604052825181526020928301519281019290925250919050565b634e487b7160e01b5f52601160045260245ffd5b8082018082111561074257610742612e57565b5f838385526020808601955060208560051b830101845f5b87811015612f0257848303601f19018952813536889003601e19018112612ebb575f80fd5b870184810190356001600160401b03811115612ed5575f80fd5b803603821315612ee3575f80fd5b612eee858284612dc0565b9a86019a9450505090830190600101612e96565b5090979650505050505050565b5f610100808352612f228184018d612685565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a08501529050612f5c818789612e7e565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b5f60208284031215612f8e575f80fd5b5051919050565b5f60808236031215612fa5575f80fd5b604051608081016001600160401b038282108183111715612fc857612fc861274c565b8160405284359150612fd98261253b565b81835260208501356020840152604085013560408401526060850135915080821115613003575f80fd5b50830136601f820112613014575f80fd5b61302336823560208401612877565b60608301525092915050565b5f8251613040818460208701612663565b9190910192915050565b5f8261306457634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b5f6020828403121561308d575f80fd5b81516109538161253b565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b5f6101008083526130f78184018d8f612dc0565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a08501529050613131818789612e7e565b94151560c0840152505061ffff9190911660e09091015298975050505050505050565b5f8451613165818460208901612663565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081525f83516131c9816017850160208801612663565b7001034b99036b4b9b9b4b733903937b6329607d1b60179184019182015283516131fa816028840160208801612663565b01602801949350505050565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f610fd86040830184612685565b808202811582820484141761074257610742612e57565b5f8161325757613257612e57565b505f19019056fe412386de53449251cbf7ce1f4c6a038bf9c0746e62d331b08ef0c3fa7d0ab6729f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a660793a5062d506d35cc8f1beda67ee5028c16bfcd9c923d5bfc439c04bd929b1a164736f6c6343000818000a", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/artifacts/ENSRegistry.json b/artifacts/ENSRegistry.json index bb988757..0736e046 100644 --- a/artifacts/ENSRegistry.json +++ b/artifacts/ENSRegistry.json @@ -378,8 +378,8 @@ "type": "function" } ], - "bytecode": "0x608060405234801561001057600080fd5b5060008080526020527fad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb580546001600160a01b0319163317905561098c806100596000396000f3fe608060405234801561001057600080fd5b50600436106100b45760003560e01c80635b0fc9c3116100715780635b0fc9c3146101ab5780635ef2c7f0146101be578063a22cb465146101d1578063cf408823146101e4578063e985e9c5146101f7578063f79fe5381461024357600080fd5b80630178b8bf146100b957806302571be31461010257806306ab59231461011557806314ab90381461013657806316a25cbd1461014b5780631896f70a14610198575b600080fd5b6100e56100c73660046107a4565b6000908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100e56101103660046107a4565b61026e565b6101286101233660046107d9565b61029c565b6040519081526020016100f9565b610149610144366004610826565b61036c565b005b61017f6101593660046107a4565b600090815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100f9565b6101496101a6366004610852565b61043f565b6101496101b9366004610852565b610504565b6101496101cc366004610875565b6105a6565b6101496101df3660046108cc565b6105c8565b6101496101f2366004610908565b610634565b610233610205366004610955565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205460ff1690565b60405190151581526020016100f9565b6102336102513660046107a4565b6000908152602081905260409020546001600160a01b0316151590565b6000818152602081905260408120546001600160a01b03163081036102965750600092915050565b92915050565b60008381526020819052604081205484906001600160a01b0316338114806102e757506001600160a01b038116600090815260016020908152604080832033845290915290205460ff165b6102f057600080fd5b60408051602080820189905281830188905282518083038401815260609092019092528051910120610322818661064f565b6040516001600160a01b0386168152869088907fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829060200160405180910390a39695505050505050565b60008281526020819052604090205482906001600160a01b0316338114806103b757506001600160a01b038116600090815260016020908152604080832033845290915290205460ff165b6103c057600080fd5b60405167ffffffffffffffff8416815284907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a25050600091825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b60008281526020819052604090205482906001600160a01b03163381148061048a57506001600160a01b038116600090815260016020908152604080832033845290915290205460ff165b61049357600080fd5b6040516001600160a01b038416815284907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a2505060009182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b60008281526020819052604090205482906001600160a01b03163381148061054f57506001600160a01b038116600090815260016020908152604080832033845290915290205460ff165b61055857600080fd5b610562848461064f565b6040516001600160a01b038416815284907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a250505050565b60006105b386868661029c565b90506105c081848461067d565b505050505050565b3360008181526001602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b61063e8484610504565b61064984838361067d565b50505050565b60009182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b6000838152602081905260409020600101546001600160a01b03838116911614610703576000838152602081815260409182902060010180546001600160a01b0319166001600160a01b038616908117909155915191825284917f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a0910160405180910390a25b60008381526020819052604090206001015467ffffffffffffffff828116600160a01b909204161461079f5760008381526020818152604091829020600101805467ffffffffffffffff60a01b1916600160a01b67ffffffffffffffff861690810291909117909155915191825284917f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa68910160405180910390a25b505050565b6000602082840312156107b657600080fd5b5035919050565b80356001600160a01b03811681146107d457600080fd5b919050565b6000806000606084860312156107ee57600080fd5b8335925060208401359150610805604085016107bd565b90509250925092565b803567ffffffffffffffff811681146107d457600080fd5b6000806040838503121561083957600080fd5b823591506108496020840161080e565b90509250929050565b6000806040838503121561086557600080fd5b82359150610849602084016107bd565b600080600080600060a0868803121561088d57600080fd5b85359450602086013593506108a4604087016107bd565b92506108b2606087016107bd565b91506108c06080870161080e565b90509295509295909350565b600080604083850312156108df57600080fd5b6108e8836107bd565b9150602083013580151581146108fd57600080fd5b809150509250929050565b6000806000806080858703121561091e57600080fd5b8435935061092e602086016107bd565b925061093c604086016107bd565b915061094a6060860161080e565b905092959194509250565b6000806040838503121561096857600080fd5b610971836107bd565b9150610849602084016107bd56fea164736f6c6343000811000a", - "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100b45760003560e01c80635b0fc9c3116100715780635b0fc9c3146101ab5780635ef2c7f0146101be578063a22cb465146101d1578063cf408823146101e4578063e985e9c5146101f7578063f79fe5381461024357600080fd5b80630178b8bf146100b957806302571be31461010257806306ab59231461011557806314ab90381461013657806316a25cbd1461014b5780631896f70a14610198575b600080fd5b6100e56100c73660046107a4565b6000908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100e56101103660046107a4565b61026e565b6101286101233660046107d9565b61029c565b6040519081526020016100f9565b610149610144366004610826565b61036c565b005b61017f6101593660046107a4565b600090815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100f9565b6101496101a6366004610852565b61043f565b6101496101b9366004610852565b610504565b6101496101cc366004610875565b6105a6565b6101496101df3660046108cc565b6105c8565b6101496101f2366004610908565b610634565b610233610205366004610955565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205460ff1690565b60405190151581526020016100f9565b6102336102513660046107a4565b6000908152602081905260409020546001600160a01b0316151590565b6000818152602081905260408120546001600160a01b03163081036102965750600092915050565b92915050565b60008381526020819052604081205484906001600160a01b0316338114806102e757506001600160a01b038116600090815260016020908152604080832033845290915290205460ff165b6102f057600080fd5b60408051602080820189905281830188905282518083038401815260609092019092528051910120610322818661064f565b6040516001600160a01b0386168152869088907fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829060200160405180910390a39695505050505050565b60008281526020819052604090205482906001600160a01b0316338114806103b757506001600160a01b038116600090815260016020908152604080832033845290915290205460ff165b6103c057600080fd5b60405167ffffffffffffffff8416815284907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a25050600091825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b60008281526020819052604090205482906001600160a01b03163381148061048a57506001600160a01b038116600090815260016020908152604080832033845290915290205460ff165b61049357600080fd5b6040516001600160a01b038416815284907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a2505060009182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b60008281526020819052604090205482906001600160a01b03163381148061054f57506001600160a01b038116600090815260016020908152604080832033845290915290205460ff165b61055857600080fd5b610562848461064f565b6040516001600160a01b038416815284907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a250505050565b60006105b386868661029c565b90506105c081848461067d565b505050505050565b3360008181526001602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b61063e8484610504565b61064984838361067d565b50505050565b60009182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b6000838152602081905260409020600101546001600160a01b03838116911614610703576000838152602081815260409182902060010180546001600160a01b0319166001600160a01b038616908117909155915191825284917f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a0910160405180910390a25b60008381526020819052604090206001015467ffffffffffffffff828116600160a01b909204161461079f5760008381526020818152604091829020600101805467ffffffffffffffff60a01b1916600160a01b67ffffffffffffffff861690810291909117909155915191825284917f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa68910160405180910390a25b505050565b6000602082840312156107b657600080fd5b5035919050565b80356001600160a01b03811681146107d457600080fd5b919050565b6000806000606084860312156107ee57600080fd5b8335925060208401359150610805604085016107bd565b90509250925092565b803567ffffffffffffffff811681146107d457600080fd5b6000806040838503121561083957600080fd5b823591506108496020840161080e565b90509250929050565b6000806040838503121561086557600080fd5b82359150610849602084016107bd565b600080600080600060a0868803121561088d57600080fd5b85359450602086013593506108a4604087016107bd565b92506108b2606087016107bd565b91506108c06080870161080e565b90509295509295909350565b600080604083850312156108df57600080fd5b6108e8836107bd565b9150602083013580151581146108fd57600080fd5b809150509250929050565b6000806000806080858703121561091e57600080fd5b8435935061092e602086016107bd565b925061093c604086016107bd565b915061094a6060860161080e565b905092959194509250565b6000806040838503121561096857600080fd5b610971836107bd565b9150610849602084016107bd56fea164736f6c6343000811000a", + "bytecode": "0x608060405234801561000f575f80fd5b505f8080526020527fad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb580546001600160a01b03191633179055610956806100555f395ff3fe608060405234801561000f575f80fd5b50600436106100b1575f3560e01c80635b0fc9c31161006e5780635b0fc9c3146101a55780635ef2c7f0146101b8578063a22cb465146101cb578063cf408823146101de578063e985e9c5146101f1578063f79fe5381461023c575f80fd5b80630178b8bf146100b557806302571be3146100fd57806306ab59231461011057806314ab90381461013157806316a25cbd146101465780631896f70a14610192575b5f80fd5b6100e06100c3366004610785565b5f908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100e061010b366004610785565b610266565b61012361011e3660046107b7565b610292565b6040519081526020016100f4565b61014461013f366004610800565b61035f565b005b610179610154366004610785565b5f90815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100f4565b6101446101a036600461082a565b61042e565b6101446101b336600461082a565b6104ef565b6101446101c636600461084b565b61058e565b6101446101d936600461089e565b6105af565b6101446101ec3660046108d7565b61061a565b61022c6101ff366004610921565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205460ff1690565b60405190151581526020016100f4565b61022c61024a366004610785565b5f908152602081905260409020546001600160a01b0316151590565b5f818152602081905260408120546001600160a01b031630810361028c57505f92915050565b92915050565b5f8381526020819052604081205484906001600160a01b0316338114806102db57506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b6102e3575f80fd5b604080516020808201899052818301889052825180830384018152606090920190925280519101206103158186610635565b6040516001600160a01b0386168152869088907fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829060200160405180910390a39695505050505050565b5f8281526020819052604090205482906001600160a01b0316338114806103a857506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b6103b0575f80fd5b60405167ffffffffffffffff8416815284907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a250505f91825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b5f8281526020819052604090205482906001600160a01b03163381148061047757506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b61047f575f80fd5b6040516001600160a01b038416815284907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a250505f9182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b5f8281526020819052604090205482906001600160a01b03163381148061053857506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b610540575f80fd5b61054a8484610635565b6040516001600160a01b038416815284907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a250505050565b5f61059a868686610292565b90506105a7818484610662565b505050505050565b335f8181526001602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b61062484846104ef565b61062f848383610662565b50505050565b5f9182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b5f838152602081905260409020600101546001600160a01b038381169116146106e6575f838152602081815260409182902060010180546001600160a01b0319166001600160a01b038616908117909155915191825284917f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a0910160405180910390a25b5f8381526020819052604090206001015467ffffffffffffffff828116600160a01b9092041614610780575f8381526020818152604091829020600101805467ffffffffffffffff60a01b1916600160a01b67ffffffffffffffff861690810291909117909155915191825284917f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa68910160405180910390a25b505050565b5f60208284031215610795575f80fd5b5035919050565b80356001600160a01b03811681146107b2575f80fd5b919050565b5f805f606084860312156107c9575f80fd5b83359250602084013591506107e06040850161079c565b90509250925092565b803567ffffffffffffffff811681146107b2575f80fd5b5f8060408385031215610811575f80fd5b82359150610821602084016107e9565b90509250929050565b5f806040838503121561083b575f80fd5b823591506108216020840161079c565b5f805f805f60a0868803121561085f575f80fd5b85359450602086013593506108766040870161079c565b92506108846060870161079c565b9150610892608087016107e9565b90509295509295909350565b5f80604083850312156108af575f80fd5b6108b88361079c565b9150602083013580151581146108cc575f80fd5b809150509250929050565b5f805f80608085870312156108ea575f80fd5b843593506108fa6020860161079c565b92506109086040860161079c565b9150610916606086016107e9565b905092959194509250565b5f8060408385031215610932575f80fd5b61093b8361079c565b91506108216020840161079c56fea164736f6c6343000818000a", + "deployedBytecode": "0x608060405234801561000f575f80fd5b50600436106100b1575f3560e01c80635b0fc9c31161006e5780635b0fc9c3146101a55780635ef2c7f0146101b8578063a22cb465146101cb578063cf408823146101de578063e985e9c5146101f1578063f79fe5381461023c575f80fd5b80630178b8bf146100b557806302571be3146100fd57806306ab59231461011057806314ab90381461013157806316a25cbd146101465780631896f70a14610192575b5f80fd5b6100e06100c3366004610785565b5f908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100e061010b366004610785565b610266565b61012361011e3660046107b7565b610292565b6040519081526020016100f4565b61014461013f366004610800565b61035f565b005b610179610154366004610785565b5f90815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100f4565b6101446101a036600461082a565b61042e565b6101446101b336600461082a565b6104ef565b6101446101c636600461084b565b61058e565b6101446101d936600461089e565b6105af565b6101446101ec3660046108d7565b61061a565b61022c6101ff366004610921565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205460ff1690565b60405190151581526020016100f4565b61022c61024a366004610785565b5f908152602081905260409020546001600160a01b0316151590565b5f818152602081905260408120546001600160a01b031630810361028c57505f92915050565b92915050565b5f8381526020819052604081205484906001600160a01b0316338114806102db57506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b6102e3575f80fd5b604080516020808201899052818301889052825180830384018152606090920190925280519101206103158186610635565b6040516001600160a01b0386168152869088907fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829060200160405180910390a39695505050505050565b5f8281526020819052604090205482906001600160a01b0316338114806103a857506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b6103b0575f80fd5b60405167ffffffffffffffff8416815284907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a250505f91825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b5f8281526020819052604090205482906001600160a01b03163381148061047757506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b61047f575f80fd5b6040516001600160a01b038416815284907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a250505f9182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b5f8281526020819052604090205482906001600160a01b03163381148061053857506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b610540575f80fd5b61054a8484610635565b6040516001600160a01b038416815284907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a250505050565b5f61059a868686610292565b90506105a7818484610662565b505050505050565b335f8181526001602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b61062484846104ef565b61062f848383610662565b50505050565b5f9182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b5f838152602081905260409020600101546001600160a01b038381169116146106e6575f838152602081815260409182902060010180546001600160a01b0319166001600160a01b038616908117909155915191825284917f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a0910160405180910390a25b5f8381526020819052604090206001015467ffffffffffffffff828116600160a01b9092041614610780575f8381526020818152604091829020600101805467ffffffffffffffff60a01b1916600160a01b67ffffffffffffffff861690810291909117909155915191825284917f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa68910160405180910390a25b505050565b5f60208284031215610795575f80fd5b5035919050565b80356001600160a01b03811681146107b2575f80fd5b919050565b5f805f606084860312156107c9575f80fd5b83359250602084013591506107e06040850161079c565b90509250925092565b803567ffffffffffffffff811681146107b2575f80fd5b5f8060408385031215610811575f80fd5b82359150610821602084016107e9565b90509250929050565b5f806040838503121561083b575f80fd5b823591506108216020840161079c565b5f805f805f60a0868803121561085f575f80fd5b85359450602086013593506108766040870161079c565b92506108846060870161079c565b9150610892608087016107e9565b90509295509295909350565b5f80604083850312156108af575f80fd5b6108b88361079c565b9150602083013580151581146108cc575f80fd5b809150509250929050565b5f805f80608085870312156108ea575f80fd5b843593506108fa6020860161079c565b92506109086040860161079c565b9150610916606086016107e9565b905092959194509250565b5f8060408385031215610932575f80fd5b61093b8361079c565b91506108216020840161079c56fea164736f6c6343000818000a", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/artifacts/ERC1155PresetMinterPauserUpgradeable.json b/artifacts/ERC1155PresetMinterPauserUpgradeable.json index a2089178..249780b8 100644 --- a/artifacts/ERC1155PresetMinterPauserUpgradeable.json +++ b/artifacts/ERC1155PresetMinterPauserUpgradeable.json @@ -751,8 +751,8 @@ "type": "function" } ], - "bytecode": "0x608060405234801561001057600080fd5b50612ce5806100206000396000f3fe608060405234801561001057600080fd5b506004361061018d5760003560e01c80638456cb59116100de578063d539139311610097578063e985e9c511610071578063e985e9c514610377578063f242432a146103b3578063f5298aca146103c6578063f62d1888146103d957600080fd5b8063d53913931461033a578063d547741f1461034f578063e63ab1e91461036257600080fd5b80638456cb59146102c65780639010d07c146102ce57806391d14854146102f9578063a217fddf1461030c578063a22cb46514610314578063ca15c8731461032757600080fd5b80632f2ff15d1161014b5780634e1273f4116101255780634e1273f4146102745780635c975abb146102945780636b20c454146102a0578063731133e9146102b357600080fd5b80632f2ff15d1461024657806336568abe146102595780633f4ba83a1461026c57600080fd5b8062fdd58e1461019257806301ffc9a7146101b85780630e89341c146101db5780631f7fdffa146101fb578063248a9ca3146102105780632eb2c2d614610233575b600080fd5b6101a56101a0366004611edd565b6103ec565b6040519081526020015b60405180910390f35b6101cb6101c6366004611f1d565b610487565b60405190151581526020016101af565b6101ee6101e9366004611f3a565b610492565b6040516101af9190611fa3565b61020e610209366004612109565b610526565b005b6101a561021e366004611f3a565b60009081526065602052604090206001015490565b61020e6102413660046121a1565b61056c565b61020e61025436600461224a565b6105b8565b61020e61026736600461224a565b6105e2565b61020e610660565b610287610282366004612276565b6106f4565b6040516101af919061237b565b61012d5460ff166101cb565b61020e6102ae36600461238e565b61081d565b61020e6102c1366004612401565b610860565b61020e6108a0565b6102e16102dc366004612455565b610932565b6040516001600160a01b0390911681526020016101af565b6101cb61030736600461224a565b610951565b6101a5600081565b61020e610322366004612477565b61097c565b6101a5610335366004611f3a565b610987565b6101a5600080516020612cb983398151915281565b61020e61035d36600461224a565b61099e565b6101a5600080516020612c9983398151915281565b6101cb6103853660046124b3565b6001600160a01b03918216600090815260ca6020908152604080832093909416825291909152205460ff1690565b61020e6103c13660046124dd565b6109c3565b61020e6103d4366004612541565b610a08565b61020e6103e7366004612574565b610a4b565b60006001600160a01b03831661045c5760405162461bcd60e51b815260206004820152602a60248201527f455243313135353a2061646472657373207a65726f206973206e6f742061207660448201526930b634b21037bbb732b960b11b60648201526084015b60405180910390fd5b50600081815260c9602090815260408083206001600160a01b03861684529091529020545b92915050565b600061048182610b5d565b606060cb80546104a1906125c4565b80601f01602080910402602001604051908101604052809291908181526020018280546104cd906125c4565b801561051a5780601f106104ef5761010080835404028352916020019161051a565b820191906000526020600020905b8154815290600101906020018083116104fd57829003601f168201915b50505050509050919050565b61053e600080516020612cb983398151915233610951565b61055a5760405162461bcd60e51b8152600401610453906125fe565b61056684848484610b9d565b50505050565b6001600160a01b03851633148061058857506105888533610385565b6105a45760405162461bcd60e51b81526004016104539061265b565b6105b18585858585610cf8565b5050505050565b6000828152606560205260409020600101546105d381610ea5565b6105dd8383610eb2565b505050565b6001600160a01b03811633146106525760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610453565b61065c8282610ed4565b5050565b610678600080516020612c9983398151915233610951565b6106ea5760405162461bcd60e51b815260206004820152603b60248201527f455243313135355072657365744d696e7465725061757365723a206d7573742060448201527f686176652070617573657220726f6c6520746f20756e706175736500000000006064820152608401610453565b6106f2610ef6565b565b606081518351146107595760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b6064820152608401610453565b600083516001600160401b0381111561077457610774611fb6565b60405190808252806020026020018201604052801561079d578160200160208202803683370190505b50905060005b8451811015610815576107e88582815181106107c1576107c16126aa565b60200260200101518583815181106107db576107db6126aa565b60200260200101516103ec565b8282815181106107fa576107fa6126aa565b602090810291909101015261080e816126d6565b90506107a3565b509392505050565b6001600160a01b03831633148061083957506108398333610385565b6108555760405162461bcd60e51b81526004016104539061265b565b6105dd838383610f49565b610878600080516020612cb983398151915233610951565b6108945760405162461bcd60e51b8152600401610453906125fe565b610566848484846110e8565b6108b8600080516020612c9983398151915233610951565b61092a5760405162461bcd60e51b815260206004820152603960248201527f455243313135355072657365744d696e7465725061757365723a206d7573742060448201527f686176652070617573657220726f6c6520746f207061757365000000000000006064820152608401610453565b6106f26111d3565b600082815260976020526040812061094a9083611211565b9392505050565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b61065c33838361121d565b6000818152609760205260408120610481906112fd565b6000828152606560205260409020600101546109b981610ea5565b6105dd8383610ed4565b6001600160a01b0385163314806109df57506109df8533610385565b6109fb5760405162461bcd60e51b81526004016104539061265b565b6105b18585858585611307565b6001600160a01b038316331480610a245750610a248333610385565b610a405760405162461bcd60e51b81526004016104539061265b565b6105dd838383611443565b600054610100900460ff1615808015610a6b5750600054600160ff909116105b80610a855750303b158015610a85575060005460ff166001145b610ae85760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610453565b6000805460ff191660011790558015610b0b576000805461ff0019166101001790555b610b148261155f565b801561065c576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b60006001600160e01b03198216636cdb3d1360e11b1480610b8e57506001600160e01b031982166303a24d0760e21b145b806104815750610481826115a0565b6001600160a01b038416610bc35760405162461bcd60e51b8152600401610453906126ef565b8151835114610be45760405162461bcd60e51b815260040161045390612730565b33610bf4816000878787876115c5565b60005b8451811015610c9057838181518110610c1257610c126126aa565b602002602001015160c96000878481518110610c3057610c306126aa565b602002602001015181526020019081526020016000206000886001600160a01b03166001600160a01b031681526020019081526020016000206000828254610c789190612778565b90915550819050610c88816126d6565b915050610bf7565b50846001600160a01b031660006001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051610ce192919061278b565b60405180910390a46105b1816000878787876115d3565b8151835114610d195760405162461bcd60e51b815260040161045390612730565b6001600160a01b038416610d3f5760405162461bcd60e51b8152600401610453906127b9565b33610d4e8187878787876115c5565b60005b8451811015610e37576000858281518110610d6e57610d6e6126aa565b602002602001015190506000858381518110610d8c57610d8c6126aa565b602090810291909101810151600084815260c9835260408082206001600160a01b038e168352909352919091205490915081811015610ddd5760405162461bcd60e51b8152600401610453906127fe565b600083815260c9602090815260408083206001600160a01b038e8116855292528083208585039055908b16825281208054849290610e1c908490612778565b9250508190555050505080610e30906126d6565b9050610d51565b50846001600160a01b0316866001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051610e8792919061278b565b60405180910390a4610e9d8187878787876115d3565b505050505050565b610eaf813361172e565b50565b610ebc8282611792565b60008281526097602052604090206105dd9082611818565b610ede828261182d565b60008281526097602052604090206105dd9082611894565b610efe6118a9565b61012d805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516001600160a01b03909116815260200160405180910390a1565b6001600160a01b038316610f6f5760405162461bcd60e51b815260040161045390612848565b8051825114610f905760405162461bcd60e51b815260040161045390612730565b6000339050610fb3818560008686604051806020016040528060008152506115c5565b60005b835181101561107b576000848281518110610fd357610fd36126aa565b602002602001015190506000848381518110610ff157610ff16126aa565b602090810291909101810151600084815260c9835260408082206001600160a01b038c1683529093529190912054909150818110156110425760405162461bcd60e51b81526004016104539061288b565b600092835260c9602090815260408085206001600160a01b038b1686529091529092209103905580611073816126d6565b915050610fb6565b5060006001600160a01b0316846001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516110cc92919061278b565b60405180910390a4604080516020810190915260009052610566565b6001600160a01b03841661110e5760405162461bcd60e51b8152600401610453906126ef565b33600061111a856118f3565b90506000611127856118f3565b9050611138836000898585896115c5565b600086815260c9602090815260408083206001600160a01b038b1684529091528120805487929061116a908490612778565b909155505060408051878152602081018790526001600160a01b03808a1692600092918716917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46111ca8360008989898961193e565b50505050505050565b6111db6119f9565b61012d805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258610f2c3390565b600061094a8383611a40565b816001600160a01b0316836001600160a01b0316036112905760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b6064820152608401610453565b6001600160a01b03838116600081815260ca6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6000610481825490565b6001600160a01b03841661132d5760405162461bcd60e51b8152600401610453906127b9565b336000611339856118f3565b90506000611346856118f3565b90506113568389898585896115c5565b600086815260c9602090815260408083206001600160a01b038c168452909152902054858110156113995760405162461bcd60e51b8152600401610453906127fe565b600087815260c9602090815260408083206001600160a01b038d8116855292528083208985039055908a168252812080548892906113d8908490612778565b909155505060408051888152602081018890526001600160a01b03808b16928c821692918816917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4611438848a8a8a8a8a61193e565b505050505050505050565b6001600160a01b0383166114695760405162461bcd60e51b815260040161045390612848565b336000611475846118f3565b90506000611482846118f3565b90506114a2838760008585604051806020016040528060008152506115c5565b600085815260c9602090815260408083206001600160a01b038a168452909152902054848110156114e55760405162461bcd60e51b81526004016104539061288b565b600086815260c9602090815260408083206001600160a01b038b81168086529184528285208a8703905582518b81529384018a90529092908816917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46040805160208101909152600090526111ca565b600054610100900460ff166115865760405162461bcd60e51b8152600401610453906128cf565b61158f81611a6a565b611597611a9a565b610eaf81611ace565b60006001600160e01b03198216635a05180f60e01b1480610481575061048182611b30565b610e9d868686868686611b65565b6001600160a01b0384163b15610e9d5760405163bc197c8160e01b81526001600160a01b0385169063bc197c8190611617908990899088908890889060040161291a565b6020604051808303816000875af1925050508015611652575060408051601f3d908101601f1916820190925261164f91810190612978565b60015b6116fe5761165e612995565b806308c379a00361169757506116726129b1565b8061167d5750611699565b8060405162461bcd60e51b81526004016104539190611fa3565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e20455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b6064820152608401610453565b6001600160e01b0319811663bc197c8160e01b146111ca5760405162461bcd60e51b815260040161045390612a3a565b6117388282610951565b61065c57611750816001600160a01b03166014611bce565b61175b836020611bce565b60405160200161176c929190612a82565b60408051601f198184030181529082905262461bcd60e51b825261045391600401611fa3565b61179c8282610951565b61065c5760008281526065602090815260408083206001600160a01b03851684529091529020805460ff191660011790556117d43390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b600061094a836001600160a01b038416611d69565b6118378282610951565b1561065c5760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b600061094a836001600160a01b038416611db8565b61012d5460ff166106f25760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b6044820152606401610453565b6040805160018082528183019092526060916000919060208083019080368337019050509050828160008151811061192d5761192d6126aa565b602090810291909101015292915050565b6001600160a01b0384163b15610e9d5760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e61906119829089908990889088908890600401612af7565b6020604051808303816000875af19250505080156119bd575060408051601f3d908101601f191682019092526119ba91810190612978565b60015b6119c95761165e612995565b6001600160e01b0319811663f23a6e6160e01b146111ca5760405162461bcd60e51b815260040161045390612a3a565b61012d5460ff16156106f25760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b6044820152606401610453565b6000826000018281548110611a5757611a576126aa565b9060005260206000200154905092915050565b600054610100900460ff16611a915760405162461bcd60e51b8152600401610453906128cf565b610eaf81611eab565b600054610100900460ff16611ac15760405162461bcd60e51b8152600401610453906128cf565b61012d805460ff19169055565b600054610100900460ff16611af55760405162461bcd60e51b8152600401610453906128cf565b611b00600033611eb7565b611b18600080516020612cb983398151915233611eb7565b610eaf600080516020612c9983398151915233611eb7565b60006001600160e01b03198216637965db0b60e01b148061048157506301ffc9a760e01b6001600160e01b0319831614610481565b61012d5460ff1615610e9d5760405162461bcd60e51b815260206004820152602c60248201527f455243313135355061757361626c653a20746f6b656e207472616e736665722060448201526b1dda1a5b19481c185d5cd95960a21b6064820152608401610453565b60606000611bdd836002612b3c565b611be8906002612778565b6001600160401b03811115611bff57611bff611fb6565b6040519080825280601f01601f191660200182016040528015611c29576020820181803683370190505b509050600360fc1b81600081518110611c4457611c446126aa565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110611c7357611c736126aa565b60200101906001600160f81b031916908160001a9053506000611c97846002612b3c565b611ca2906001612778565b90505b6001811115611d1a576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611cd657611cd66126aa565b1a60f81b828281518110611cec57611cec6126aa565b60200101906001600160f81b031916908160001a90535060049490941c93611d1381612b53565b9050611ca5565b50831561094a5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610453565b6000818152600183016020526040812054611db057508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610481565b506000610481565b60008181526001830160205260408120548015611ea1576000611ddc600183612b6a565b8554909150600090611df090600190612b6a565b9050818114611e55576000866000018281548110611e1057611e106126aa565b9060005260206000200154905080876000018481548110611e3357611e336126aa565b6000918252602080832090910192909255918252600188019052604090208390555b8554869080611e6657611e66612b7d565b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050610481565b6000915050610481565b60cb61065c8282612bd9565b61065c8282610eb2565b80356001600160a01b0381168114611ed857600080fd5b919050565b60008060408385031215611ef057600080fd5b611ef983611ec1565b946020939093013593505050565b6001600160e01b031981168114610eaf57600080fd5b600060208284031215611f2f57600080fd5b813561094a81611f07565b600060208284031215611f4c57600080fd5b5035919050565b60005b83811015611f6e578181015183820152602001611f56565b50506000910152565b60008151808452611f8f816020860160208601611f53565b601f01601f19169290920160200192915050565b60208152600061094a6020830184611f77565b634e487b7160e01b600052604160045260246000fd5b601f8201601f191681016001600160401b0381118282101715611ff157611ff1611fb6565b6040525050565b60006001600160401b0382111561201157612011611fb6565b5060051b60200190565b600082601f83011261202c57600080fd5b8135602061203982611ff8565b6040516120468282611fcc565b83815260059390931b850182019282810191508684111561206657600080fd5b8286015b84811015612081578035835291830191830161206a565b509695505050505050565b60006001600160401b038311156120a5576120a5611fb6565b6040516120bc601f8501601f191660200182611fcc565b8091508381528484840111156120d157600080fd5b83836020830137600060208583010152509392505050565b600082601f8301126120fa57600080fd5b61094a8383356020850161208c565b6000806000806080858703121561211f57600080fd5b61212885611ec1565b935060208501356001600160401b038082111561214457600080fd5b6121508883890161201b565b9450604087013591508082111561216657600080fd5b6121728883890161201b565b9350606087013591508082111561218857600080fd5b50612195878288016120e9565b91505092959194509250565b600080600080600060a086880312156121b957600080fd5b6121c286611ec1565b94506121d060208701611ec1565b935060408601356001600160401b03808211156121ec57600080fd5b6121f889838a0161201b565b9450606088013591508082111561220e57600080fd5b61221a89838a0161201b565b9350608088013591508082111561223057600080fd5b5061223d888289016120e9565b9150509295509295909350565b6000806040838503121561225d57600080fd5b8235915061226d60208401611ec1565b90509250929050565b6000806040838503121561228957600080fd5b82356001600160401b03808211156122a057600080fd5b818501915085601f8301126122b457600080fd5b813560206122c182611ff8565b6040516122ce8282611fcc565b83815260059390931b85018201928281019150898411156122ee57600080fd5b948201945b838610156123135761230486611ec1565b825294820194908201906122f3565b9650508601359250508082111561232957600080fd5b506123368582860161201b565b9150509250929050565b600081518084526020808501945080840160005b8381101561237057815187529582019590820190600101612354565b509495945050505050565b60208152600061094a6020830184612340565b6000806000606084860312156123a357600080fd5b6123ac84611ec1565b925060208401356001600160401b03808211156123c857600080fd5b6123d48783880161201b565b935060408601359150808211156123ea57600080fd5b506123f78682870161201b565b9150509250925092565b6000806000806080858703121561241757600080fd5b61242085611ec1565b9350602085013592506040850135915060608501356001600160401b0381111561244957600080fd5b612195878288016120e9565b6000806040838503121561246857600080fd5b50508035926020909101359150565b6000806040838503121561248a57600080fd5b61249383611ec1565b9150602083013580151581146124a857600080fd5b809150509250929050565b600080604083850312156124c657600080fd5b6124cf83611ec1565b915061226d60208401611ec1565b600080600080600060a086880312156124f557600080fd5b6124fe86611ec1565b945061250c60208701611ec1565b9350604086013592506060860135915060808601356001600160401b0381111561253557600080fd5b61223d888289016120e9565b60008060006060848603121561255657600080fd5b61255f84611ec1565b95602085013595506040909401359392505050565b60006020828403121561258657600080fd5b81356001600160401b0381111561259c57600080fd5b8201601f810184136125ad57600080fd5b6125bc8482356020840161208c565b949350505050565b600181811c908216806125d857607f821691505b6020821081036125f857634e487b7160e01b600052602260045260246000fd5b50919050565b60208082526038908201527f455243313135355072657365744d696e7465725061757365723a206d7573742060408201527f68617665206d696e74657220726f6c6520746f206d696e740000000000000000606082015260800190565b6020808252602f908201527f455243313135353a2063616c6c6572206973206e6f7420746f6b656e206f776e60408201526e195c881b9bdc88185c1c1c9bdd9959608a1b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000600182016126e8576126e86126c0565b5060010190565b60208082526021908201527f455243313135353a206d696e7420746f20746865207a65726f206164647265736040820152607360f81b606082015260800190565b60208082526028908201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206040820152670dad2e6dac2e8c6d60c31b606082015260800190565b80820180821115610481576104816126c0565b60408152600061279e6040830185612340565b82810360208401526127b08185612340565b95945050505050565b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b60208082526023908201527f455243313135353a206275726e2066726f6d20746865207a65726f206164647260408201526265737360e81b606082015260800190565b60208082526024908201527f455243313135353a206275726e20616d6f756e7420657863656564732062616c604082015263616e636560e01b606082015260800190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6001600160a01b0386811682528516602082015260a06040820181905260009061294690830186612340565b82810360608401526129588186612340565b9050828103608084015261296c8185611f77565b98975050505050505050565b60006020828403121561298a57600080fd5b815161094a81611f07565b600060033d11156129ae5760046000803e5060005160e01c5b90565b600060443d10156129bf5790565b6040516003193d81016004833e81513d6001600160401b0381602484011181841117156129ee57505050505090565b8285019150815181811115612a065750505050505090565b843d8701016020828501011115612a205750505050505090565b612a2f60208286010187611fcc565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351612aba816017850160208801611f53565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351612aeb816028840160208801611f53565b01602801949350505050565b6001600160a01b03868116825285166020820152604081018490526060810183905260a060808201819052600090612b3190830184611f77565b979650505050505050565b8082028115828204841417610481576104816126c0565b600081612b6257612b626126c0565b506000190190565b81810381811115610481576104816126c0565b634e487b7160e01b600052603160045260246000fd5b601f8211156105dd57600081815260208120601f850160051c81016020861015612bba5750805b601f850160051c820191505b81811015610e9d57828155600101612bc6565b81516001600160401b03811115612bf257612bf2611fb6565b612c0681612c0084546125c4565b84612b93565b602080601f831160018114612c3b5760008415612c235750858301515b600019600386901b1c1916600185901b178555610e9d565b600085815260208120601f198616915b82811015612c6a57888601518255948401946001909101908401612c4b565b5085821015612c885787850151600019600388901b60f8161c191681555b5050505050600190811b0190555056fe65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000811000a", - "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061018d5760003560e01c80638456cb59116100de578063d539139311610097578063e985e9c511610071578063e985e9c514610377578063f242432a146103b3578063f5298aca146103c6578063f62d1888146103d957600080fd5b8063d53913931461033a578063d547741f1461034f578063e63ab1e91461036257600080fd5b80638456cb59146102c65780639010d07c146102ce57806391d14854146102f9578063a217fddf1461030c578063a22cb46514610314578063ca15c8731461032757600080fd5b80632f2ff15d1161014b5780634e1273f4116101255780634e1273f4146102745780635c975abb146102945780636b20c454146102a0578063731133e9146102b357600080fd5b80632f2ff15d1461024657806336568abe146102595780633f4ba83a1461026c57600080fd5b8062fdd58e1461019257806301ffc9a7146101b85780630e89341c146101db5780631f7fdffa146101fb578063248a9ca3146102105780632eb2c2d614610233575b600080fd5b6101a56101a0366004611edd565b6103ec565b6040519081526020015b60405180910390f35b6101cb6101c6366004611f1d565b610487565b60405190151581526020016101af565b6101ee6101e9366004611f3a565b610492565b6040516101af9190611fa3565b61020e610209366004612109565b610526565b005b6101a561021e366004611f3a565b60009081526065602052604090206001015490565b61020e6102413660046121a1565b61056c565b61020e61025436600461224a565b6105b8565b61020e61026736600461224a565b6105e2565b61020e610660565b610287610282366004612276565b6106f4565b6040516101af919061237b565b61012d5460ff166101cb565b61020e6102ae36600461238e565b61081d565b61020e6102c1366004612401565b610860565b61020e6108a0565b6102e16102dc366004612455565b610932565b6040516001600160a01b0390911681526020016101af565b6101cb61030736600461224a565b610951565b6101a5600081565b61020e610322366004612477565b61097c565b6101a5610335366004611f3a565b610987565b6101a5600080516020612cb983398151915281565b61020e61035d36600461224a565b61099e565b6101a5600080516020612c9983398151915281565b6101cb6103853660046124b3565b6001600160a01b03918216600090815260ca6020908152604080832093909416825291909152205460ff1690565b61020e6103c13660046124dd565b6109c3565b61020e6103d4366004612541565b610a08565b61020e6103e7366004612574565b610a4b565b60006001600160a01b03831661045c5760405162461bcd60e51b815260206004820152602a60248201527f455243313135353a2061646472657373207a65726f206973206e6f742061207660448201526930b634b21037bbb732b960b11b60648201526084015b60405180910390fd5b50600081815260c9602090815260408083206001600160a01b03861684529091529020545b92915050565b600061048182610b5d565b606060cb80546104a1906125c4565b80601f01602080910402602001604051908101604052809291908181526020018280546104cd906125c4565b801561051a5780601f106104ef5761010080835404028352916020019161051a565b820191906000526020600020905b8154815290600101906020018083116104fd57829003601f168201915b50505050509050919050565b61053e600080516020612cb983398151915233610951565b61055a5760405162461bcd60e51b8152600401610453906125fe565b61056684848484610b9d565b50505050565b6001600160a01b03851633148061058857506105888533610385565b6105a45760405162461bcd60e51b81526004016104539061265b565b6105b18585858585610cf8565b5050505050565b6000828152606560205260409020600101546105d381610ea5565b6105dd8383610eb2565b505050565b6001600160a01b03811633146106525760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610453565b61065c8282610ed4565b5050565b610678600080516020612c9983398151915233610951565b6106ea5760405162461bcd60e51b815260206004820152603b60248201527f455243313135355072657365744d696e7465725061757365723a206d7573742060448201527f686176652070617573657220726f6c6520746f20756e706175736500000000006064820152608401610453565b6106f2610ef6565b565b606081518351146107595760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b6064820152608401610453565b600083516001600160401b0381111561077457610774611fb6565b60405190808252806020026020018201604052801561079d578160200160208202803683370190505b50905060005b8451811015610815576107e88582815181106107c1576107c16126aa565b60200260200101518583815181106107db576107db6126aa565b60200260200101516103ec565b8282815181106107fa576107fa6126aa565b602090810291909101015261080e816126d6565b90506107a3565b509392505050565b6001600160a01b03831633148061083957506108398333610385565b6108555760405162461bcd60e51b81526004016104539061265b565b6105dd838383610f49565b610878600080516020612cb983398151915233610951565b6108945760405162461bcd60e51b8152600401610453906125fe565b610566848484846110e8565b6108b8600080516020612c9983398151915233610951565b61092a5760405162461bcd60e51b815260206004820152603960248201527f455243313135355072657365744d696e7465725061757365723a206d7573742060448201527f686176652070617573657220726f6c6520746f207061757365000000000000006064820152608401610453565b6106f26111d3565b600082815260976020526040812061094a9083611211565b9392505050565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b61065c33838361121d565b6000818152609760205260408120610481906112fd565b6000828152606560205260409020600101546109b981610ea5565b6105dd8383610ed4565b6001600160a01b0385163314806109df57506109df8533610385565b6109fb5760405162461bcd60e51b81526004016104539061265b565b6105b18585858585611307565b6001600160a01b038316331480610a245750610a248333610385565b610a405760405162461bcd60e51b81526004016104539061265b565b6105dd838383611443565b600054610100900460ff1615808015610a6b5750600054600160ff909116105b80610a855750303b158015610a85575060005460ff166001145b610ae85760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610453565b6000805460ff191660011790558015610b0b576000805461ff0019166101001790555b610b148261155f565b801561065c576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b60006001600160e01b03198216636cdb3d1360e11b1480610b8e57506001600160e01b031982166303a24d0760e21b145b806104815750610481826115a0565b6001600160a01b038416610bc35760405162461bcd60e51b8152600401610453906126ef565b8151835114610be45760405162461bcd60e51b815260040161045390612730565b33610bf4816000878787876115c5565b60005b8451811015610c9057838181518110610c1257610c126126aa565b602002602001015160c96000878481518110610c3057610c306126aa565b602002602001015181526020019081526020016000206000886001600160a01b03166001600160a01b031681526020019081526020016000206000828254610c789190612778565b90915550819050610c88816126d6565b915050610bf7565b50846001600160a01b031660006001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051610ce192919061278b565b60405180910390a46105b1816000878787876115d3565b8151835114610d195760405162461bcd60e51b815260040161045390612730565b6001600160a01b038416610d3f5760405162461bcd60e51b8152600401610453906127b9565b33610d4e8187878787876115c5565b60005b8451811015610e37576000858281518110610d6e57610d6e6126aa565b602002602001015190506000858381518110610d8c57610d8c6126aa565b602090810291909101810151600084815260c9835260408082206001600160a01b038e168352909352919091205490915081811015610ddd5760405162461bcd60e51b8152600401610453906127fe565b600083815260c9602090815260408083206001600160a01b038e8116855292528083208585039055908b16825281208054849290610e1c908490612778565b9250508190555050505080610e30906126d6565b9050610d51565b50846001600160a01b0316866001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051610e8792919061278b565b60405180910390a4610e9d8187878787876115d3565b505050505050565b610eaf813361172e565b50565b610ebc8282611792565b60008281526097602052604090206105dd9082611818565b610ede828261182d565b60008281526097602052604090206105dd9082611894565b610efe6118a9565b61012d805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516001600160a01b03909116815260200160405180910390a1565b6001600160a01b038316610f6f5760405162461bcd60e51b815260040161045390612848565b8051825114610f905760405162461bcd60e51b815260040161045390612730565b6000339050610fb3818560008686604051806020016040528060008152506115c5565b60005b835181101561107b576000848281518110610fd357610fd36126aa565b602002602001015190506000848381518110610ff157610ff16126aa565b602090810291909101810151600084815260c9835260408082206001600160a01b038c1683529093529190912054909150818110156110425760405162461bcd60e51b81526004016104539061288b565b600092835260c9602090815260408085206001600160a01b038b1686529091529092209103905580611073816126d6565b915050610fb6565b5060006001600160a01b0316846001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516110cc92919061278b565b60405180910390a4604080516020810190915260009052610566565b6001600160a01b03841661110e5760405162461bcd60e51b8152600401610453906126ef565b33600061111a856118f3565b90506000611127856118f3565b9050611138836000898585896115c5565b600086815260c9602090815260408083206001600160a01b038b1684529091528120805487929061116a908490612778565b909155505060408051878152602081018790526001600160a01b03808a1692600092918716917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46111ca8360008989898961193e565b50505050505050565b6111db6119f9565b61012d805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258610f2c3390565b600061094a8383611a40565b816001600160a01b0316836001600160a01b0316036112905760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b6064820152608401610453565b6001600160a01b03838116600081815260ca6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6000610481825490565b6001600160a01b03841661132d5760405162461bcd60e51b8152600401610453906127b9565b336000611339856118f3565b90506000611346856118f3565b90506113568389898585896115c5565b600086815260c9602090815260408083206001600160a01b038c168452909152902054858110156113995760405162461bcd60e51b8152600401610453906127fe565b600087815260c9602090815260408083206001600160a01b038d8116855292528083208985039055908a168252812080548892906113d8908490612778565b909155505060408051888152602081018890526001600160a01b03808b16928c821692918816917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4611438848a8a8a8a8a61193e565b505050505050505050565b6001600160a01b0383166114695760405162461bcd60e51b815260040161045390612848565b336000611475846118f3565b90506000611482846118f3565b90506114a2838760008585604051806020016040528060008152506115c5565b600085815260c9602090815260408083206001600160a01b038a168452909152902054848110156114e55760405162461bcd60e51b81526004016104539061288b565b600086815260c9602090815260408083206001600160a01b038b81168086529184528285208a8703905582518b81529384018a90529092908816917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46040805160208101909152600090526111ca565b600054610100900460ff166115865760405162461bcd60e51b8152600401610453906128cf565b61158f81611a6a565b611597611a9a565b610eaf81611ace565b60006001600160e01b03198216635a05180f60e01b1480610481575061048182611b30565b610e9d868686868686611b65565b6001600160a01b0384163b15610e9d5760405163bc197c8160e01b81526001600160a01b0385169063bc197c8190611617908990899088908890889060040161291a565b6020604051808303816000875af1925050508015611652575060408051601f3d908101601f1916820190925261164f91810190612978565b60015b6116fe5761165e612995565b806308c379a00361169757506116726129b1565b8061167d5750611699565b8060405162461bcd60e51b81526004016104539190611fa3565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e20455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b6064820152608401610453565b6001600160e01b0319811663bc197c8160e01b146111ca5760405162461bcd60e51b815260040161045390612a3a565b6117388282610951565b61065c57611750816001600160a01b03166014611bce565b61175b836020611bce565b60405160200161176c929190612a82565b60408051601f198184030181529082905262461bcd60e51b825261045391600401611fa3565b61179c8282610951565b61065c5760008281526065602090815260408083206001600160a01b03851684529091529020805460ff191660011790556117d43390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b600061094a836001600160a01b038416611d69565b6118378282610951565b1561065c5760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b600061094a836001600160a01b038416611db8565b61012d5460ff166106f25760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b6044820152606401610453565b6040805160018082528183019092526060916000919060208083019080368337019050509050828160008151811061192d5761192d6126aa565b602090810291909101015292915050565b6001600160a01b0384163b15610e9d5760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e61906119829089908990889088908890600401612af7565b6020604051808303816000875af19250505080156119bd575060408051601f3d908101601f191682019092526119ba91810190612978565b60015b6119c95761165e612995565b6001600160e01b0319811663f23a6e6160e01b146111ca5760405162461bcd60e51b815260040161045390612a3a565b61012d5460ff16156106f25760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b6044820152606401610453565b6000826000018281548110611a5757611a576126aa565b9060005260206000200154905092915050565b600054610100900460ff16611a915760405162461bcd60e51b8152600401610453906128cf565b610eaf81611eab565b600054610100900460ff16611ac15760405162461bcd60e51b8152600401610453906128cf565b61012d805460ff19169055565b600054610100900460ff16611af55760405162461bcd60e51b8152600401610453906128cf565b611b00600033611eb7565b611b18600080516020612cb983398151915233611eb7565b610eaf600080516020612c9983398151915233611eb7565b60006001600160e01b03198216637965db0b60e01b148061048157506301ffc9a760e01b6001600160e01b0319831614610481565b61012d5460ff1615610e9d5760405162461bcd60e51b815260206004820152602c60248201527f455243313135355061757361626c653a20746f6b656e207472616e736665722060448201526b1dda1a5b19481c185d5cd95960a21b6064820152608401610453565b60606000611bdd836002612b3c565b611be8906002612778565b6001600160401b03811115611bff57611bff611fb6565b6040519080825280601f01601f191660200182016040528015611c29576020820181803683370190505b509050600360fc1b81600081518110611c4457611c446126aa565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110611c7357611c736126aa565b60200101906001600160f81b031916908160001a9053506000611c97846002612b3c565b611ca2906001612778565b90505b6001811115611d1a576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611cd657611cd66126aa565b1a60f81b828281518110611cec57611cec6126aa565b60200101906001600160f81b031916908160001a90535060049490941c93611d1381612b53565b9050611ca5565b50831561094a5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610453565b6000818152600183016020526040812054611db057508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610481565b506000610481565b60008181526001830160205260408120548015611ea1576000611ddc600183612b6a565b8554909150600090611df090600190612b6a565b9050818114611e55576000866000018281548110611e1057611e106126aa565b9060005260206000200154905080876000018481548110611e3357611e336126aa565b6000918252602080832090910192909255918252600188019052604090208390555b8554869080611e6657611e66612b7d565b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050610481565b6000915050610481565b60cb61065c8282612bd9565b61065c8282610eb2565b80356001600160a01b0381168114611ed857600080fd5b919050565b60008060408385031215611ef057600080fd5b611ef983611ec1565b946020939093013593505050565b6001600160e01b031981168114610eaf57600080fd5b600060208284031215611f2f57600080fd5b813561094a81611f07565b600060208284031215611f4c57600080fd5b5035919050565b60005b83811015611f6e578181015183820152602001611f56565b50506000910152565b60008151808452611f8f816020860160208601611f53565b601f01601f19169290920160200192915050565b60208152600061094a6020830184611f77565b634e487b7160e01b600052604160045260246000fd5b601f8201601f191681016001600160401b0381118282101715611ff157611ff1611fb6565b6040525050565b60006001600160401b0382111561201157612011611fb6565b5060051b60200190565b600082601f83011261202c57600080fd5b8135602061203982611ff8565b6040516120468282611fcc565b83815260059390931b850182019282810191508684111561206657600080fd5b8286015b84811015612081578035835291830191830161206a565b509695505050505050565b60006001600160401b038311156120a5576120a5611fb6565b6040516120bc601f8501601f191660200182611fcc565b8091508381528484840111156120d157600080fd5b83836020830137600060208583010152509392505050565b600082601f8301126120fa57600080fd5b61094a8383356020850161208c565b6000806000806080858703121561211f57600080fd5b61212885611ec1565b935060208501356001600160401b038082111561214457600080fd5b6121508883890161201b565b9450604087013591508082111561216657600080fd5b6121728883890161201b565b9350606087013591508082111561218857600080fd5b50612195878288016120e9565b91505092959194509250565b600080600080600060a086880312156121b957600080fd5b6121c286611ec1565b94506121d060208701611ec1565b935060408601356001600160401b03808211156121ec57600080fd5b6121f889838a0161201b565b9450606088013591508082111561220e57600080fd5b61221a89838a0161201b565b9350608088013591508082111561223057600080fd5b5061223d888289016120e9565b9150509295509295909350565b6000806040838503121561225d57600080fd5b8235915061226d60208401611ec1565b90509250929050565b6000806040838503121561228957600080fd5b82356001600160401b03808211156122a057600080fd5b818501915085601f8301126122b457600080fd5b813560206122c182611ff8565b6040516122ce8282611fcc565b83815260059390931b85018201928281019150898411156122ee57600080fd5b948201945b838610156123135761230486611ec1565b825294820194908201906122f3565b9650508601359250508082111561232957600080fd5b506123368582860161201b565b9150509250929050565b600081518084526020808501945080840160005b8381101561237057815187529582019590820190600101612354565b509495945050505050565b60208152600061094a6020830184612340565b6000806000606084860312156123a357600080fd5b6123ac84611ec1565b925060208401356001600160401b03808211156123c857600080fd5b6123d48783880161201b565b935060408601359150808211156123ea57600080fd5b506123f78682870161201b565b9150509250925092565b6000806000806080858703121561241757600080fd5b61242085611ec1565b9350602085013592506040850135915060608501356001600160401b0381111561244957600080fd5b612195878288016120e9565b6000806040838503121561246857600080fd5b50508035926020909101359150565b6000806040838503121561248a57600080fd5b61249383611ec1565b9150602083013580151581146124a857600080fd5b809150509250929050565b600080604083850312156124c657600080fd5b6124cf83611ec1565b915061226d60208401611ec1565b600080600080600060a086880312156124f557600080fd5b6124fe86611ec1565b945061250c60208701611ec1565b9350604086013592506060860135915060808601356001600160401b0381111561253557600080fd5b61223d888289016120e9565b60008060006060848603121561255657600080fd5b61255f84611ec1565b95602085013595506040909401359392505050565b60006020828403121561258657600080fd5b81356001600160401b0381111561259c57600080fd5b8201601f810184136125ad57600080fd5b6125bc8482356020840161208c565b949350505050565b600181811c908216806125d857607f821691505b6020821081036125f857634e487b7160e01b600052602260045260246000fd5b50919050565b60208082526038908201527f455243313135355072657365744d696e7465725061757365723a206d7573742060408201527f68617665206d696e74657220726f6c6520746f206d696e740000000000000000606082015260800190565b6020808252602f908201527f455243313135353a2063616c6c6572206973206e6f7420746f6b656e206f776e60408201526e195c881b9bdc88185c1c1c9bdd9959608a1b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000600182016126e8576126e86126c0565b5060010190565b60208082526021908201527f455243313135353a206d696e7420746f20746865207a65726f206164647265736040820152607360f81b606082015260800190565b60208082526028908201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206040820152670dad2e6dac2e8c6d60c31b606082015260800190565b80820180821115610481576104816126c0565b60408152600061279e6040830185612340565b82810360208401526127b08185612340565b95945050505050565b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b60208082526023908201527f455243313135353a206275726e2066726f6d20746865207a65726f206164647260408201526265737360e81b606082015260800190565b60208082526024908201527f455243313135353a206275726e20616d6f756e7420657863656564732062616c604082015263616e636560e01b606082015260800190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6001600160a01b0386811682528516602082015260a06040820181905260009061294690830186612340565b82810360608401526129588186612340565b9050828103608084015261296c8185611f77565b98975050505050505050565b60006020828403121561298a57600080fd5b815161094a81611f07565b600060033d11156129ae5760046000803e5060005160e01c5b90565b600060443d10156129bf5790565b6040516003193d81016004833e81513d6001600160401b0381602484011181841117156129ee57505050505090565b8285019150815181811115612a065750505050505090565b843d8701016020828501011115612a205750505050505090565b612a2f60208286010187611fcc565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351612aba816017850160208801611f53565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351612aeb816028840160208801611f53565b01602801949350505050565b6001600160a01b03868116825285166020820152604081018490526060810183905260a060808201819052600090612b3190830184611f77565b979650505050505050565b8082028115828204841417610481576104816126c0565b600081612b6257612b626126c0565b506000190190565b81810381811115610481576104816126c0565b634e487b7160e01b600052603160045260246000fd5b601f8211156105dd57600081815260208120601f850160051c81016020861015612bba5750805b601f850160051c820191505b81811015610e9d57828155600101612bc6565b81516001600160401b03811115612bf257612bf2611fb6565b612c0681612c0084546125c4565b84612b93565b602080601f831160018114612c3b5760008415612c235750858301515b600019600386901b1c1916600185901b178555610e9d565b600085815260208120601f198616915b82811015612c6a57888601518255948401946001909101908401612c4b565b5085821015612c885787850151600019600388901b60f8161c191681555b5050505050600190811b0190555056fe65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000811000a", + "bytecode": "0x608060405234801561000f575f80fd5b50612bc98061001d5f395ff3fe608060405234801561000f575f80fd5b5060043610610186575f3560e01c80638456cb59116100d9578063d539139311610093578063e985e9c51161006e578063e985e9c51461036b578063f242432a146103a6578063f5298aca146103b9578063f62d1888146103cc575f80fd5b8063d539139314610330578063d547741f14610344578063e63ab1e914610357575f80fd5b80638456cb59146102bd5780639010d07c146102c557806391d14854146102f0578063a217fddf14610303578063a22cb4651461030a578063ca15c8731461031d575f80fd5b80632f2ff15d116101445780634e1273f41161011f5780634e1273f41461026b5780635c975abb1461028b5780636b20c45414610297578063731133e9146102aa575f80fd5b80632f2ff15d1461023d57806336568abe146102505780633f4ba83a14610263575f80fd5b8062fdd58e1461018a57806301ffc9a7146101b05780630e89341c146101d35780631f7fdffa146101f3578063248a9ca3146102085780632eb2c2d61461022a575b5f80fd5b61019d610198366004611e38565b6103df565b6040519081526020015b60405180910390f35b6101c36101be366004611e75565b610478565b60405190151581526020016101a7565b6101e66101e1366004611e90565b610482565b6040516101a79190611ef4565b610206610201366004612053565b610514565b005b61019d610216366004611e90565b5f9081526065602052604090206001015490565b6102066102383660046120e5565b610559565b61020661024b366004612187565b6105a5565b61020661025e366004612187565b6105ce565b61020661064c565b61027e6102793660046121b1565b6106df565b6040516101a791906122af565b61012d5460ff166101c3565b6102066102a53660046122c1565b6107fe565b6102066102b836600461232f565b610841565b610206610880565b6102d86102d336600461237f565b610911565b6040516001600160a01b0390911681526020016101a7565b6101c36102fe366004612187565b61092f565b61019d5f81565b61020661031836600461239f565b610959565b61019d61032b366004611e90565b610964565b61019d5f80516020612b9d83398151915281565b610206610352366004612187565b61097a565b61019d5f80516020612b7d83398151915281565b6101c36103793660046123d8565b6001600160a01b039182165f90815260ca6020908152604080832093909416825291909152205460ff1690565b6102066103b4366004612400565b61099e565b6102066103c736600461245f565b6109e3565b6102066103da36600461248f565b610a26565b5f6001600160a01b03831661044e5760405162461bcd60e51b815260206004820152602a60248201527f455243313135353a2061646472657373207a65726f206973206e6f742061207660448201526930b634b21037bbb732b960b11b60648201526084015b60405180910390fd5b505f81815260c9602090815260408083206001600160a01b03861684529091529020545b92915050565b5f61047282610b32565b606060cb8054610491906124db565b80601f01602080910402602001604051908101604052809291908181526020018280546104bd906124db565b80156105085780601f106104df57610100808354040283529160200191610508565b820191905f5260205f20905b8154815290600101906020018083116104eb57829003601f168201915b50505050509050919050565b61052b5f80516020612b9d8339815191523361092f565b6105475760405162461bcd60e51b815260040161044590612513565b61055384848484610b71565b50505050565b6001600160a01b03851633148061057557506105758533610379565b6105915760405162461bcd60e51b815260040161044590612570565b61059e8585858585610cb8565b5050505050565b5f828152606560205260409020600101546105bf81610e59565b6105c98383610e66565b505050565b6001600160a01b038116331461063e5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610445565b6106488282610e87565b5050565b6106635f80516020612b7d8339815191523361092f565b6106d55760405162461bcd60e51b815260206004820152603b60248201527f455243313135355072657365744d696e7465725061757365723a206d7573742060448201527f686176652070617573657220726f6c6520746f20756e706175736500000000006064820152608401610445565b6106dd610ea8565b565b606081518351146107445760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b6064820152608401610445565b5f83516001600160401b0381111561075e5761075e611f06565b604051908082528060200260200182016040528015610787578160200160208202803683370190505b5090505f5b84518110156107f6576107d18582815181106107aa576107aa6125bf565b60200260200101518583815181106107c4576107c46125bf565b60200260200101516103df565b8282815181106107e3576107e36125bf565b602090810291909101015260010161078c565b509392505050565b6001600160a01b03831633148061081a575061081a8333610379565b6108365760405162461bcd60e51b815260040161044590612570565b6105c9838383610efb565b6108585f80516020612b9d8339815191523361092f565b6108745760405162461bcd60e51b815260040161044590612513565b61055384848484611086565b6108975f80516020612b7d8339815191523361092f565b6109095760405162461bcd60e51b815260206004820152603960248201527f455243313135355072657365744d696e7465725061757365723a206d7573742060448201527f686176652070617573657220726f6c6520746f207061757365000000000000006064820152608401610445565b6106dd61116b565b5f82815260976020526040812061092890836111a9565b9392505050565b5f9182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6106483383836111b4565b5f81815260976020526040812061047290611293565b5f8281526065602052604090206001015461099481610e59565b6105c98383610e87565b6001600160a01b0385163314806109ba57506109ba8533610379565b6109d65760405162461bcd60e51b815260040161044590612570565b61059e858585858561129c565b6001600160a01b0383163314806109ff57506109ff8333610379565b610a1b5760405162461bcd60e51b815260040161044590612570565b6105c98383836113d4565b5f54610100900460ff1615808015610a4457505f54600160ff909116105b80610a5d5750303b158015610a5d57505f5460ff166001145b610ac05760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610445565b5f805460ff191660011790558015610ae1575f805461ff0019166101001790555b610aea826114e9565b8015610648575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b5f6001600160e01b03198216636cdb3d1360e11b1480610b6257506001600160e01b031982166303a24d0760e21b145b80610472575061047282611529565b6001600160a01b038416610b975760405162461bcd60e51b8152600401610445906125d3565b8151835114610bb85760405162461bcd60e51b815260040161044590612614565b33610bc7815f8787878761154d565b5f5b8451811015610c5257838181518110610be457610be46125bf565b602002602001015160c95f878481518110610c0157610c016125bf565b602002602001015181526020019081526020015f205f886001600160a01b03166001600160a01b031681526020019081526020015f205f828254610c459190612670565b9091555050600101610bc9565b50846001600160a01b03165f6001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051610ca2929190612683565b60405180910390a461059e815f8787878761155b565b8151835114610cd95760405162461bcd60e51b815260040161044590612614565b6001600160a01b038416610cff5760405162461bcd60e51b8152600401610445906126b0565b33610d0e81878787878761154d565b5f5b8451811015610deb575f858281518110610d2c57610d2c6125bf565b602002602001015190505f858381518110610d4957610d496125bf565b6020908102919091018101515f84815260c9835260408082206001600160a01b038e168352909352919091205490915081811015610d995760405162461bcd60e51b8152600401610445906126f5565b5f83815260c9602090815260408083206001600160a01b038e8116855292528083208585039055908b16825281208054849290610dd7908490612670565b909155505060019093019250610d10915050565b50846001600160a01b0316866001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051610e3b929190612683565b60405180910390a4610e5181878787878761155b565b505050505050565b610e6381336116b5565b50565b610e708282611719565b5f8281526097602052604090206105c9908261179e565b610e9182826117b2565b5f8281526097602052604090206105c99082611818565b610eb061182c565b61012d805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516001600160a01b03909116815260200160405180910390a1565b6001600160a01b038316610f215760405162461bcd60e51b81526004016104459061273f565b8051825114610f425760405162461bcd60e51b815260040161044590612614565b5f339050610f6281855f868660405180602001604052805f81525061154d565b5f5b835181101561101b575f848281518110610f8057610f806125bf565b602002602001015190505f848381518110610f9d57610f9d6125bf565b6020908102919091018101515f84815260c9835260408082206001600160a01b038c168352909352919091205490915081811015610fed5760405162461bcd60e51b815260040161044590612782565b5f92835260c9602090815260408085206001600160a01b038b16865290915290922091039055600101610f64565b505f6001600160a01b0316846001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb868660405161106b929190612683565b60405180910390a460408051602081019091525f9052610553565b6001600160a01b0384166110ac5760405162461bcd60e51b8152600401610445906125d3565b335f6110b785611876565b90505f6110c385611876565b90506110d3835f8985858961154d565b5f86815260c9602090815260408083206001600160a01b038b16845290915281208054879290611104908490612670565b909155505060408051878152602081018790526001600160a01b03808a16925f92918716917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4611162835f898989896118bf565b50505050505050565b611173611979565b61012d805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258610ede3390565b5f61092883836119c0565b816001600160a01b0316836001600160a01b0316036112275760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b6064820152608401610445565b6001600160a01b038381165f81815260ca6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b5f610472825490565b6001600160a01b0384166112c25760405162461bcd60e51b8152600401610445906126b0565b335f6112cd85611876565b90505f6112d985611876565b90506112e983898985858961154d565b5f86815260c9602090815260408083206001600160a01b038c1684529091529020548581101561132b5760405162461bcd60e51b8152600401610445906126f5565b5f87815260c9602090815260408083206001600160a01b038d8116855292528083208985039055908a16825281208054889290611369908490612670565b909155505060408051888152602081018890526001600160a01b03808b16928c821692918816917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46113c9848a8a8a8a8a6118bf565b505050505050505050565b6001600160a01b0383166113fa5760405162461bcd60e51b81526004016104459061273f565b335f61140584611876565b90505f61141184611876565b905061142f83875f858560405180602001604052805f81525061154d565b5f85815260c9602090815260408083206001600160a01b038a168452909152902054848110156114715760405162461bcd60e51b815260040161044590612782565b5f86815260c9602090815260408083206001600160a01b038b81168086529184528285208a8703905582518b81529384018a90529092908816917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a460408051602081019091525f9052611162565b5f54610100900460ff1661150f5760405162461bcd60e51b8152600401610445906127c6565b611518816119e6565b611520611a15565b610e6381611a48565b5f6001600160e01b03198216635a05180f60e01b1480610472575061047282611aa6565b610e51868686868686611ada565b6001600160a01b0384163b15610e515760405163bc197c8160e01b81526001600160a01b0385169063bc197c819061159f9089908990889088908890600401612811565b6020604051808303815f875af19250505080156115d9575060408051601f3d908101601f191682019092526115d69181019061286e565b60015b611685576115e5612889565b806308c379a00361161e57506115f96128a2565b806116045750611620565b8060405162461bcd60e51b81526004016104459190611ef4565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e20455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b6064820152608401610445565b6001600160e01b0319811663bc197c8160e01b146111625760405162461bcd60e51b81526004016104459061292a565b6116bf828261092f565b610648576116d7816001600160a01b03166014611b43565b6116e2836020611b43565b6040516020016116f3929190612972565b60408051601f198184030181529082905262461bcd60e51b825261044591600401611ef4565b611723828261092f565b610648575f8281526065602090815260408083206001600160a01b03851684529091529020805460ff1916600117905561175a3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b5f610928836001600160a01b038416611cd8565b6117bc828261092f565b15610648575f8281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b5f610928836001600160a01b038416611d24565b61012d5460ff166106dd5760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b6044820152606401610445565b6040805160018082528183019092526060915f91906020808301908036833701905050905082815f815181106118ae576118ae6125bf565b602090810291909101015292915050565b6001600160a01b0384163b15610e515760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e619061190390899089908890889088906004016129e6565b6020604051808303815f875af192505050801561193d575060408051601f3d908101601f1916820190925261193a9181019061286e565b60015b611949576115e5612889565b6001600160e01b0319811663f23a6e6160e01b146111625760405162461bcd60e51b81526004016104459061292a565b61012d5460ff16156106dd5760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b6044820152606401610445565b5f825f0182815481106119d5576119d56125bf565b905f5260205f200154905092915050565b5f54610100900460ff16611a0c5760405162461bcd60e51b8152600401610445906127c6565b610e6381611e07565b5f54610100900460ff16611a3b5760405162461bcd60e51b8152600401610445906127c6565b61012d805460ff19169055565b5f54610100900460ff16611a6e5760405162461bcd60e51b8152600401610445906127c6565b611a785f33611e13565b611a8f5f80516020612b9d83398151915233611e13565b610e635f80516020612b7d83398151915233611e13565b5f6001600160e01b03198216637965db0b60e01b148061047257506301ffc9a760e01b6001600160e01b0319831614610472565b61012d5460ff1615610e515760405162461bcd60e51b815260206004820152602c60248201527f455243313135355061757361626c653a20746f6b656e207472616e736665722060448201526b1dda1a5b19481c185d5cd95960a21b6064820152608401610445565b60605f611b51836002612a2a565b611b5c906002612670565b6001600160401b03811115611b7357611b73611f06565b6040519080825280601f01601f191660200182016040528015611b9d576020820181803683370190505b509050600360fc1b815f81518110611bb757611bb76125bf565b60200101906001600160f81b03191690815f1a905350600f60fb1b81600181518110611be557611be56125bf565b60200101906001600160f81b03191690815f1a9053505f611c07846002612a2a565b611c12906001612670565b90505b6001811115611c89576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611c4657611c466125bf565b1a60f81b828281518110611c5c57611c5c6125bf565b60200101906001600160f81b03191690815f1a90535060049490941c93611c8281612a41565b9050611c15565b5083156109285760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610445565b5f818152600183016020526040812054611d1d57508154600181810184555f848152602080822090930184905584548482528286019093526040902091909155610472565b505f610472565b5f8181526001830160205260408120548015611dfe575f611d46600183612a56565b85549091505f90611d5990600190612a56565b9050818114611db8575f865f018281548110611d7757611d776125bf565b905f5260205f200154905080875f018481548110611d9757611d976125bf565b5f918252602080832090910192909255918252600188019052604090208390555b8554869080611dc957611dc9612a69565b600190038181905f5260205f20015f90559055856001015f8681526020019081526020015f205f905560019350505050610472565b5f915050610472565b60cb6106488282612ac1565b6106488282610e66565b80356001600160a01b0381168114611e33575f80fd5b919050565b5f8060408385031215611e49575f80fd5b611e5283611e1d565b946020939093013593505050565b6001600160e01b031981168114610e63575f80fd5b5f60208284031215611e85575f80fd5b813561092881611e60565b5f60208284031215611ea0575f80fd5b5035919050565b5f5b83811015611ec1578181015183820152602001611ea9565b50505f910152565b5f8151808452611ee0816020860160208601611ea7565b601f01601f19169290920160200192915050565b602081525f6109286020830184611ec9565b634e487b7160e01b5f52604160045260245ffd5b601f8201601f191681016001600160401b0381118282101715611f3f57611f3f611f06565b6040525050565b5f6001600160401b03821115611f5e57611f5e611f06565b5060051b60200190565b5f82601f830112611f77575f80fd5b81356020611f8482611f46565b604051611f918282611f1a565b80915083815260208101915060208460051b870101935086841115611fb4575f80fd5b602086015b84811015611fd05780358352918301918301611fb9565b509695505050505050565b5f6001600160401b03831115611ff357611ff3611f06565b60405161200a601f8501601f191660200182611f1a565b80915083815284848401111561201e575f80fd5b838360208301375f60208583010152509392505050565b5f82601f830112612044575f80fd5b61092883833560208501611fdb565b5f805f8060808587031215612066575f80fd5b61206f85611e1d565b935060208501356001600160401b038082111561208a575f80fd5b61209688838901611f68565b945060408701359150808211156120ab575f80fd5b6120b788838901611f68565b935060608701359150808211156120cc575f80fd5b506120d987828801612035565b91505092959194509250565b5f805f805f60a086880312156120f9575f80fd5b61210286611e1d565b945061211060208701611e1d565b935060408601356001600160401b038082111561212b575f80fd5b61213789838a01611f68565b9450606088013591508082111561214c575f80fd5b61215889838a01611f68565b9350608088013591508082111561216d575f80fd5b5061217a88828901612035565b9150509295509295909350565b5f8060408385031215612198575f80fd5b823591506121a860208401611e1d565b90509250929050565b5f80604083850312156121c2575f80fd5b82356001600160401b03808211156121d8575f80fd5b818501915085601f8301126121eb575f80fd5b813560206121f882611f46565b6040516122058282611f1a565b83815260059390931b8501820192828101915089841115612224575f80fd5b948201945b838610156122495761223a86611e1d565b82529482019490820190612229565b9650508601359250508082111561225e575f80fd5b5061226b85828601611f68565b9150509250929050565b5f815180845260208085019450602084015f5b838110156122a457815187529582019590820190600101612288565b509495945050505050565b602081525f6109286020830184612275565b5f805f606084860312156122d3575f80fd5b6122dc84611e1d565b925060208401356001600160401b03808211156122f7575f80fd5b61230387838801611f68565b93506040860135915080821115612318575f80fd5b5061232586828701611f68565b9150509250925092565b5f805f8060808587031215612342575f80fd5b61234b85611e1d565b9350602085013592506040850135915060608501356001600160401b03811115612373575f80fd5b6120d987828801612035565b5f8060408385031215612390575f80fd5b50508035926020909101359150565b5f80604083850312156123b0575f80fd5b6123b983611e1d565b9150602083013580151581146123cd575f80fd5b809150509250929050565b5f80604083850312156123e9575f80fd5b6123f283611e1d565b91506121a860208401611e1d565b5f805f805f60a08688031215612414575f80fd5b61241d86611e1d565b945061242b60208701611e1d565b9350604086013592506060860135915060808601356001600160401b03811115612453575f80fd5b61217a88828901612035565b5f805f60608486031215612471575f80fd5b61247a84611e1d565b95602085013595506040909401359392505050565b5f6020828403121561249f575f80fd5b81356001600160401b038111156124b4575f80fd5b8201601f810184136124c4575f80fd5b6124d384823560208401611fdb565b949350505050565b600181811c908216806124ef57607f821691505b60208210810361250d57634e487b7160e01b5f52602260045260245ffd5b50919050565b60208082526038908201527f455243313135355072657365744d696e7465725061757365723a206d7573742060408201527f68617665206d696e74657220726f6c6520746f206d696e740000000000000000606082015260800190565b6020808252602f908201527f455243313135353a2063616c6c6572206973206e6f7420746f6b656e206f776e60408201526e195c881b9bdc88185c1c1c9bdd9959608a1b606082015260800190565b634e487b7160e01b5f52603260045260245ffd5b60208082526021908201527f455243313135353a206d696e7420746f20746865207a65726f206164647265736040820152607360f81b606082015260800190565b60208082526028908201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206040820152670dad2e6dac2e8c6d60c31b606082015260800190565b634e487b7160e01b5f52601160045260245ffd5b808201808211156104725761047261265c565b604081525f6126956040830185612275565b82810360208401526126a78185612275565b95945050505050565b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b60208082526023908201527f455243313135353a206275726e2066726f6d20746865207a65726f206164647260408201526265737360e81b606082015260800190565b60208082526024908201527f455243313135353a206275726e20616d6f756e7420657863656564732062616c604082015263616e636560e01b606082015260800190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6001600160a01b0386811682528516602082015260a0604082018190525f9061283c90830186612275565b828103606084015261284e8186612275565b905082810360808401526128628185611ec9565b98975050505050505050565b5f6020828403121561287e575f80fd5b815161092881611e60565b5f60033d111561289f5760045f803e505f5160e01c5b90565b5f60443d10156128af5790565b6040516003193d81016004833e81513d6001600160401b0381602484011181841117156128de57505050505090565b82850191508151818111156128f65750505050505090565b843d87010160208285010111156129105750505050505090565b61291f60208286010187611f1a565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081525f83516129a9816017850160208801611ea7565b7001034b99036b4b9b9b4b733903937b6329607d1b60179184019182015283516129da816028840160208801611ea7565b01602801949350505050565b6001600160a01b03868116825285166020820152604081018490526060810183905260a0608082018190525f90612a1f90830184611ec9565b979650505050505050565b80820281158282048414176104725761047261265c565b5f81612a4f57612a4f61265c565b505f190190565b818103818111156104725761047261265c565b634e487b7160e01b5f52603160045260245ffd5b601f8211156105c957805f5260205f20601f840160051c81016020851015612aa25750805b601f840160051c820191505b8181101561059e575f8155600101612aae565b81516001600160401b03811115612ada57612ada611f06565b612aee81612ae884546124db565b84612a7d565b602080601f831160018114612b21575f8415612b0a5750858301515b5f19600386901b1c1916600185901b178555610e51565b5f85815260208120601f198616915b82811015612b4f57888601518255948401946001909101908401612b30565b5085821015612b6c57878501515f19600388901b60f8161c191681555b5050505050600190811b0190555056fe65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000818000a", + "deployedBytecode": "0x608060405234801561000f575f80fd5b5060043610610186575f3560e01c80638456cb59116100d9578063d539139311610093578063e985e9c51161006e578063e985e9c51461036b578063f242432a146103a6578063f5298aca146103b9578063f62d1888146103cc575f80fd5b8063d539139314610330578063d547741f14610344578063e63ab1e914610357575f80fd5b80638456cb59146102bd5780639010d07c146102c557806391d14854146102f0578063a217fddf14610303578063a22cb4651461030a578063ca15c8731461031d575f80fd5b80632f2ff15d116101445780634e1273f41161011f5780634e1273f41461026b5780635c975abb1461028b5780636b20c45414610297578063731133e9146102aa575f80fd5b80632f2ff15d1461023d57806336568abe146102505780633f4ba83a14610263575f80fd5b8062fdd58e1461018a57806301ffc9a7146101b05780630e89341c146101d35780631f7fdffa146101f3578063248a9ca3146102085780632eb2c2d61461022a575b5f80fd5b61019d610198366004611e38565b6103df565b6040519081526020015b60405180910390f35b6101c36101be366004611e75565b610478565b60405190151581526020016101a7565b6101e66101e1366004611e90565b610482565b6040516101a79190611ef4565b610206610201366004612053565b610514565b005b61019d610216366004611e90565b5f9081526065602052604090206001015490565b6102066102383660046120e5565b610559565b61020661024b366004612187565b6105a5565b61020661025e366004612187565b6105ce565b61020661064c565b61027e6102793660046121b1565b6106df565b6040516101a791906122af565b61012d5460ff166101c3565b6102066102a53660046122c1565b6107fe565b6102066102b836600461232f565b610841565b610206610880565b6102d86102d336600461237f565b610911565b6040516001600160a01b0390911681526020016101a7565b6101c36102fe366004612187565b61092f565b61019d5f81565b61020661031836600461239f565b610959565b61019d61032b366004611e90565b610964565b61019d5f80516020612b9d83398151915281565b610206610352366004612187565b61097a565b61019d5f80516020612b7d83398151915281565b6101c36103793660046123d8565b6001600160a01b039182165f90815260ca6020908152604080832093909416825291909152205460ff1690565b6102066103b4366004612400565b61099e565b6102066103c736600461245f565b6109e3565b6102066103da36600461248f565b610a26565b5f6001600160a01b03831661044e5760405162461bcd60e51b815260206004820152602a60248201527f455243313135353a2061646472657373207a65726f206973206e6f742061207660448201526930b634b21037bbb732b960b11b60648201526084015b60405180910390fd5b505f81815260c9602090815260408083206001600160a01b03861684529091529020545b92915050565b5f61047282610b32565b606060cb8054610491906124db565b80601f01602080910402602001604051908101604052809291908181526020018280546104bd906124db565b80156105085780601f106104df57610100808354040283529160200191610508565b820191905f5260205f20905b8154815290600101906020018083116104eb57829003601f168201915b50505050509050919050565b61052b5f80516020612b9d8339815191523361092f565b6105475760405162461bcd60e51b815260040161044590612513565b61055384848484610b71565b50505050565b6001600160a01b03851633148061057557506105758533610379565b6105915760405162461bcd60e51b815260040161044590612570565b61059e8585858585610cb8565b5050505050565b5f828152606560205260409020600101546105bf81610e59565b6105c98383610e66565b505050565b6001600160a01b038116331461063e5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610445565b6106488282610e87565b5050565b6106635f80516020612b7d8339815191523361092f565b6106d55760405162461bcd60e51b815260206004820152603b60248201527f455243313135355072657365744d696e7465725061757365723a206d7573742060448201527f686176652070617573657220726f6c6520746f20756e706175736500000000006064820152608401610445565b6106dd610ea8565b565b606081518351146107445760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b6064820152608401610445565b5f83516001600160401b0381111561075e5761075e611f06565b604051908082528060200260200182016040528015610787578160200160208202803683370190505b5090505f5b84518110156107f6576107d18582815181106107aa576107aa6125bf565b60200260200101518583815181106107c4576107c46125bf565b60200260200101516103df565b8282815181106107e3576107e36125bf565b602090810291909101015260010161078c565b509392505050565b6001600160a01b03831633148061081a575061081a8333610379565b6108365760405162461bcd60e51b815260040161044590612570565b6105c9838383610efb565b6108585f80516020612b9d8339815191523361092f565b6108745760405162461bcd60e51b815260040161044590612513565b61055384848484611086565b6108975f80516020612b7d8339815191523361092f565b6109095760405162461bcd60e51b815260206004820152603960248201527f455243313135355072657365744d696e7465725061757365723a206d7573742060448201527f686176652070617573657220726f6c6520746f207061757365000000000000006064820152608401610445565b6106dd61116b565b5f82815260976020526040812061092890836111a9565b9392505050565b5f9182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6106483383836111b4565b5f81815260976020526040812061047290611293565b5f8281526065602052604090206001015461099481610e59565b6105c98383610e87565b6001600160a01b0385163314806109ba57506109ba8533610379565b6109d65760405162461bcd60e51b815260040161044590612570565b61059e858585858561129c565b6001600160a01b0383163314806109ff57506109ff8333610379565b610a1b5760405162461bcd60e51b815260040161044590612570565b6105c98383836113d4565b5f54610100900460ff1615808015610a4457505f54600160ff909116105b80610a5d5750303b158015610a5d57505f5460ff166001145b610ac05760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610445565b5f805460ff191660011790558015610ae1575f805461ff0019166101001790555b610aea826114e9565b8015610648575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b5f6001600160e01b03198216636cdb3d1360e11b1480610b6257506001600160e01b031982166303a24d0760e21b145b80610472575061047282611529565b6001600160a01b038416610b975760405162461bcd60e51b8152600401610445906125d3565b8151835114610bb85760405162461bcd60e51b815260040161044590612614565b33610bc7815f8787878761154d565b5f5b8451811015610c5257838181518110610be457610be46125bf565b602002602001015160c95f878481518110610c0157610c016125bf565b602002602001015181526020019081526020015f205f886001600160a01b03166001600160a01b031681526020019081526020015f205f828254610c459190612670565b9091555050600101610bc9565b50846001600160a01b03165f6001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051610ca2929190612683565b60405180910390a461059e815f8787878761155b565b8151835114610cd95760405162461bcd60e51b815260040161044590612614565b6001600160a01b038416610cff5760405162461bcd60e51b8152600401610445906126b0565b33610d0e81878787878761154d565b5f5b8451811015610deb575f858281518110610d2c57610d2c6125bf565b602002602001015190505f858381518110610d4957610d496125bf565b6020908102919091018101515f84815260c9835260408082206001600160a01b038e168352909352919091205490915081811015610d995760405162461bcd60e51b8152600401610445906126f5565b5f83815260c9602090815260408083206001600160a01b038e8116855292528083208585039055908b16825281208054849290610dd7908490612670565b909155505060019093019250610d10915050565b50846001600160a01b0316866001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051610e3b929190612683565b60405180910390a4610e5181878787878761155b565b505050505050565b610e6381336116b5565b50565b610e708282611719565b5f8281526097602052604090206105c9908261179e565b610e9182826117b2565b5f8281526097602052604090206105c99082611818565b610eb061182c565b61012d805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516001600160a01b03909116815260200160405180910390a1565b6001600160a01b038316610f215760405162461bcd60e51b81526004016104459061273f565b8051825114610f425760405162461bcd60e51b815260040161044590612614565b5f339050610f6281855f868660405180602001604052805f81525061154d565b5f5b835181101561101b575f848281518110610f8057610f806125bf565b602002602001015190505f848381518110610f9d57610f9d6125bf565b6020908102919091018101515f84815260c9835260408082206001600160a01b038c168352909352919091205490915081811015610fed5760405162461bcd60e51b815260040161044590612782565b5f92835260c9602090815260408085206001600160a01b038b16865290915290922091039055600101610f64565b505f6001600160a01b0316846001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb868660405161106b929190612683565b60405180910390a460408051602081019091525f9052610553565b6001600160a01b0384166110ac5760405162461bcd60e51b8152600401610445906125d3565b335f6110b785611876565b90505f6110c385611876565b90506110d3835f8985858961154d565b5f86815260c9602090815260408083206001600160a01b038b16845290915281208054879290611104908490612670565b909155505060408051878152602081018790526001600160a01b03808a16925f92918716917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4611162835f898989896118bf565b50505050505050565b611173611979565b61012d805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258610ede3390565b5f61092883836119c0565b816001600160a01b0316836001600160a01b0316036112275760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b6064820152608401610445565b6001600160a01b038381165f81815260ca6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b5f610472825490565b6001600160a01b0384166112c25760405162461bcd60e51b8152600401610445906126b0565b335f6112cd85611876565b90505f6112d985611876565b90506112e983898985858961154d565b5f86815260c9602090815260408083206001600160a01b038c1684529091529020548581101561132b5760405162461bcd60e51b8152600401610445906126f5565b5f87815260c9602090815260408083206001600160a01b038d8116855292528083208985039055908a16825281208054889290611369908490612670565b909155505060408051888152602081018890526001600160a01b03808b16928c821692918816917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46113c9848a8a8a8a8a6118bf565b505050505050505050565b6001600160a01b0383166113fa5760405162461bcd60e51b81526004016104459061273f565b335f61140584611876565b90505f61141184611876565b905061142f83875f858560405180602001604052805f81525061154d565b5f85815260c9602090815260408083206001600160a01b038a168452909152902054848110156114715760405162461bcd60e51b815260040161044590612782565b5f86815260c9602090815260408083206001600160a01b038b81168086529184528285208a8703905582518b81529384018a90529092908816917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a460408051602081019091525f9052611162565b5f54610100900460ff1661150f5760405162461bcd60e51b8152600401610445906127c6565b611518816119e6565b611520611a15565b610e6381611a48565b5f6001600160e01b03198216635a05180f60e01b1480610472575061047282611aa6565b610e51868686868686611ada565b6001600160a01b0384163b15610e515760405163bc197c8160e01b81526001600160a01b0385169063bc197c819061159f9089908990889088908890600401612811565b6020604051808303815f875af19250505080156115d9575060408051601f3d908101601f191682019092526115d69181019061286e565b60015b611685576115e5612889565b806308c379a00361161e57506115f96128a2565b806116045750611620565b8060405162461bcd60e51b81526004016104459190611ef4565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e20455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b6064820152608401610445565b6001600160e01b0319811663bc197c8160e01b146111625760405162461bcd60e51b81526004016104459061292a565b6116bf828261092f565b610648576116d7816001600160a01b03166014611b43565b6116e2836020611b43565b6040516020016116f3929190612972565b60408051601f198184030181529082905262461bcd60e51b825261044591600401611ef4565b611723828261092f565b610648575f8281526065602090815260408083206001600160a01b03851684529091529020805460ff1916600117905561175a3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b5f610928836001600160a01b038416611cd8565b6117bc828261092f565b15610648575f8281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b5f610928836001600160a01b038416611d24565b61012d5460ff166106dd5760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b6044820152606401610445565b6040805160018082528183019092526060915f91906020808301908036833701905050905082815f815181106118ae576118ae6125bf565b602090810291909101015292915050565b6001600160a01b0384163b15610e515760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e619061190390899089908890889088906004016129e6565b6020604051808303815f875af192505050801561193d575060408051601f3d908101601f1916820190925261193a9181019061286e565b60015b611949576115e5612889565b6001600160e01b0319811663f23a6e6160e01b146111625760405162461bcd60e51b81526004016104459061292a565b61012d5460ff16156106dd5760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b6044820152606401610445565b5f825f0182815481106119d5576119d56125bf565b905f5260205f200154905092915050565b5f54610100900460ff16611a0c5760405162461bcd60e51b8152600401610445906127c6565b610e6381611e07565b5f54610100900460ff16611a3b5760405162461bcd60e51b8152600401610445906127c6565b61012d805460ff19169055565b5f54610100900460ff16611a6e5760405162461bcd60e51b8152600401610445906127c6565b611a785f33611e13565b611a8f5f80516020612b9d83398151915233611e13565b610e635f80516020612b7d83398151915233611e13565b5f6001600160e01b03198216637965db0b60e01b148061047257506301ffc9a760e01b6001600160e01b0319831614610472565b61012d5460ff1615610e515760405162461bcd60e51b815260206004820152602c60248201527f455243313135355061757361626c653a20746f6b656e207472616e736665722060448201526b1dda1a5b19481c185d5cd95960a21b6064820152608401610445565b60605f611b51836002612a2a565b611b5c906002612670565b6001600160401b03811115611b7357611b73611f06565b6040519080825280601f01601f191660200182016040528015611b9d576020820181803683370190505b509050600360fc1b815f81518110611bb757611bb76125bf565b60200101906001600160f81b03191690815f1a905350600f60fb1b81600181518110611be557611be56125bf565b60200101906001600160f81b03191690815f1a9053505f611c07846002612a2a565b611c12906001612670565b90505b6001811115611c89576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611c4657611c466125bf565b1a60f81b828281518110611c5c57611c5c6125bf565b60200101906001600160f81b03191690815f1a90535060049490941c93611c8281612a41565b9050611c15565b5083156109285760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610445565b5f818152600183016020526040812054611d1d57508154600181810184555f848152602080822090930184905584548482528286019093526040902091909155610472565b505f610472565b5f8181526001830160205260408120548015611dfe575f611d46600183612a56565b85549091505f90611d5990600190612a56565b9050818114611db8575f865f018281548110611d7757611d776125bf565b905f5260205f200154905080875f018481548110611d9757611d976125bf565b5f918252602080832090910192909255918252600188019052604090208390555b8554869080611dc957611dc9612a69565b600190038181905f5260205f20015f90559055856001015f8681526020019081526020015f205f905560019350505050610472565b5f915050610472565b60cb6106488282612ac1565b6106488282610e66565b80356001600160a01b0381168114611e33575f80fd5b919050565b5f8060408385031215611e49575f80fd5b611e5283611e1d565b946020939093013593505050565b6001600160e01b031981168114610e63575f80fd5b5f60208284031215611e85575f80fd5b813561092881611e60565b5f60208284031215611ea0575f80fd5b5035919050565b5f5b83811015611ec1578181015183820152602001611ea9565b50505f910152565b5f8151808452611ee0816020860160208601611ea7565b601f01601f19169290920160200192915050565b602081525f6109286020830184611ec9565b634e487b7160e01b5f52604160045260245ffd5b601f8201601f191681016001600160401b0381118282101715611f3f57611f3f611f06565b6040525050565b5f6001600160401b03821115611f5e57611f5e611f06565b5060051b60200190565b5f82601f830112611f77575f80fd5b81356020611f8482611f46565b604051611f918282611f1a565b80915083815260208101915060208460051b870101935086841115611fb4575f80fd5b602086015b84811015611fd05780358352918301918301611fb9565b509695505050505050565b5f6001600160401b03831115611ff357611ff3611f06565b60405161200a601f8501601f191660200182611f1a565b80915083815284848401111561201e575f80fd5b838360208301375f60208583010152509392505050565b5f82601f830112612044575f80fd5b61092883833560208501611fdb565b5f805f8060808587031215612066575f80fd5b61206f85611e1d565b935060208501356001600160401b038082111561208a575f80fd5b61209688838901611f68565b945060408701359150808211156120ab575f80fd5b6120b788838901611f68565b935060608701359150808211156120cc575f80fd5b506120d987828801612035565b91505092959194509250565b5f805f805f60a086880312156120f9575f80fd5b61210286611e1d565b945061211060208701611e1d565b935060408601356001600160401b038082111561212b575f80fd5b61213789838a01611f68565b9450606088013591508082111561214c575f80fd5b61215889838a01611f68565b9350608088013591508082111561216d575f80fd5b5061217a88828901612035565b9150509295509295909350565b5f8060408385031215612198575f80fd5b823591506121a860208401611e1d565b90509250929050565b5f80604083850312156121c2575f80fd5b82356001600160401b03808211156121d8575f80fd5b818501915085601f8301126121eb575f80fd5b813560206121f882611f46565b6040516122058282611f1a565b83815260059390931b8501820192828101915089841115612224575f80fd5b948201945b838610156122495761223a86611e1d565b82529482019490820190612229565b9650508601359250508082111561225e575f80fd5b5061226b85828601611f68565b9150509250929050565b5f815180845260208085019450602084015f5b838110156122a457815187529582019590820190600101612288565b509495945050505050565b602081525f6109286020830184612275565b5f805f606084860312156122d3575f80fd5b6122dc84611e1d565b925060208401356001600160401b03808211156122f7575f80fd5b61230387838801611f68565b93506040860135915080821115612318575f80fd5b5061232586828701611f68565b9150509250925092565b5f805f8060808587031215612342575f80fd5b61234b85611e1d565b9350602085013592506040850135915060608501356001600160401b03811115612373575f80fd5b6120d987828801612035565b5f8060408385031215612390575f80fd5b50508035926020909101359150565b5f80604083850312156123b0575f80fd5b6123b983611e1d565b9150602083013580151581146123cd575f80fd5b809150509250929050565b5f80604083850312156123e9575f80fd5b6123f283611e1d565b91506121a860208401611e1d565b5f805f805f60a08688031215612414575f80fd5b61241d86611e1d565b945061242b60208701611e1d565b9350604086013592506060860135915060808601356001600160401b03811115612453575f80fd5b61217a88828901612035565b5f805f60608486031215612471575f80fd5b61247a84611e1d565b95602085013595506040909401359392505050565b5f6020828403121561249f575f80fd5b81356001600160401b038111156124b4575f80fd5b8201601f810184136124c4575f80fd5b6124d384823560208401611fdb565b949350505050565b600181811c908216806124ef57607f821691505b60208210810361250d57634e487b7160e01b5f52602260045260245ffd5b50919050565b60208082526038908201527f455243313135355072657365744d696e7465725061757365723a206d7573742060408201527f68617665206d696e74657220726f6c6520746f206d696e740000000000000000606082015260800190565b6020808252602f908201527f455243313135353a2063616c6c6572206973206e6f7420746f6b656e206f776e60408201526e195c881b9bdc88185c1c1c9bdd9959608a1b606082015260800190565b634e487b7160e01b5f52603260045260245ffd5b60208082526021908201527f455243313135353a206d696e7420746f20746865207a65726f206164647265736040820152607360f81b606082015260800190565b60208082526028908201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206040820152670dad2e6dac2e8c6d60c31b606082015260800190565b634e487b7160e01b5f52601160045260245ffd5b808201808211156104725761047261265c565b604081525f6126956040830185612275565b82810360208401526126a78185612275565b95945050505050565b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b60208082526023908201527f455243313135353a206275726e2066726f6d20746865207a65726f206164647260408201526265737360e81b606082015260800190565b60208082526024908201527f455243313135353a206275726e20616d6f756e7420657863656564732062616c604082015263616e636560e01b606082015260800190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6001600160a01b0386811682528516602082015260a0604082018190525f9061283c90830186612275565b828103606084015261284e8186612275565b905082810360808401526128628185611ec9565b98975050505050505050565b5f6020828403121561287e575f80fd5b815161092881611e60565b5f60033d111561289f5760045f803e505f5160e01c5b90565b5f60443d10156128af5790565b6040516003193d81016004833e81513d6001600160401b0381602484011181841117156128de57505050505090565b82850191508151818111156128f65750505050505090565b843d87010160208285010111156129105750505050505090565b61291f60208286010187611f1a565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081525f83516129a9816017850160208801611ea7565b7001034b99036b4b9b9b4b733903937b6329607d1b60179184019182015283516129da816028840160208801611ea7565b01602801949350505050565b6001600160a01b03868116825285166020820152604081018490526060810183905260a0608082018190525f90612a1f90830184611ec9565b979650505050505050565b80820281158282048414176104725761047261265c565b5f81612a4f57612a4f61265c565b505f190190565b818103818111156104725761047261265c565b634e487b7160e01b5f52603160045260245ffd5b601f8211156105c957805f5260205f20601f840160051c81016020851015612aa25750805b601f840160051c820191505b8181101561059e575f8155600101612aae565b81516001600160401b03811115612ada57612ada611f06565b612aee81612ae884546124db565b84612a7d565b602080601f831160018114612b21575f8415612b0a5750858301515b5f19600386901b1c1916600185901b178555610e51565b5f85815260208120601f198616915b82811015612b4f57888601518255948401946001909101908401612b30565b5085821015612b6c57878501515f19600388901b60f8161c191681555b5050505050600190811b0190555056fe65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000818000a", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/artifacts/ERC1155Upgradeable.json b/artifacts/ERC1155Upgradeable.json index 51eb0a70..20da597c 100644 --- a/artifacts/ERC1155Upgradeable.json +++ b/artifacts/ERC1155Upgradeable.json @@ -329,8 +329,8 @@ "type": "function" } ], - "bytecode": "0x608060405234801561001057600080fd5b5061135e806100206000396000f3fe608060405234801561001057600080fd5b50600436106100875760003560e01c80634e1273f41161005b5780634e1273f41461010a578063a22cb4651461012a578063e985e9c51461013d578063f242432a1461017957600080fd5b8062fdd58e1461008c57806301ffc9a7146100b25780630e89341c146100d55780632eb2c2d6146100f5575b600080fd5b61009f61009a366004610b49565b61018c565b6040519081526020015b60405180910390f35b6100c56100c0366004610b8c565b610227565b60405190151581526020016100a9565b6100e86100e3366004610bb0565b610277565b6040516100a99190610c0f565b610108610103366004610d6e565b61030b565b005b61011d610118366004610e18565b610357565b6040516100a99190610f1e565b610108610138366004610f31565b610481565b6100c561014b366004610f6d565b6001600160a01b03918216600090815260666020908152604080832093909416825291909152205460ff1690565b610108610187366004610fa0565b610490565b60006001600160a01b0383166101fc5760405162461bcd60e51b815260206004820152602a60248201527f455243313135353a2061646472657373207a65726f206973206e6f742061207660448201526930b634b21037bbb732b960b11b60648201526084015b60405180910390fd5b5060008181526065602090815260408083206001600160a01b03861684529091529020545b92915050565b60006001600160e01b03198216636cdb3d1360e11b148061025857506001600160e01b031982166303a24d0760e21b145b8061022157506301ffc9a760e01b6001600160e01b0319831614610221565b60606067805461028690611005565b80601f01602080910402602001604051908101604052809291908181526020018280546102b290611005565b80156102ff5780601f106102d4576101008083540402835291602001916102ff565b820191906000526020600020905b8154815290600101906020018083116102e257829003601f168201915b50505050509050919050565b6001600160a01b0385163314806103275750610327853361014b565b6103435760405162461bcd60e51b81526004016101f39061103f565b61035085858585856104d5565b5050505050565b606081518351146103bc5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b60648201526084016101f3565b6000835167ffffffffffffffff8111156103d8576103d8610c22565b604051908082528060200260200182016040528015610401578160200160208202803683370190505b50905060005b84518110156104795761044c8582815181106104255761042561108e565b602002602001015185838151811061043f5761043f61108e565b602002602001015161018c565b82828151811061045e5761045e61108e565b6020908102919091010152610472816110ba565b9050610407565b509392505050565b61048c3383836106b5565b5050565b6001600160a01b0385163314806104ac57506104ac853361014b565b6104c85760405162461bcd60e51b81526004016101f39061103f565b6103508585858585610795565b81518351146105375760405162461bcd60e51b815260206004820152602860248201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206044820152670dad2e6dac2e8c6d60c31b60648201526084016101f3565b6001600160a01b03841661055d5760405162461bcd60e51b81526004016101f3906110d3565b3360005b845181101561064757600085828151811061057e5761057e61108e565b60200260200101519050600085838151811061059c5761059c61108e565b60209081029190910181015160008481526065835260408082206001600160a01b038e1683529093529190912054909150818110156105ed5760405162461bcd60e51b81526004016101f390611118565b60008381526065602090815260408083206001600160a01b038e8116855292528083208585039055908b1682528120805484929061062c908490611162565b9250508190555050505080610640906110ba565b9050610561565b50846001600160a01b0316866001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051610697929190611175565b60405180910390a46106ad8187878787876108c3565b505050505050565b816001600160a01b0316836001600160a01b0316036107285760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084016101f3565b6001600160a01b03838116600081815260666020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6001600160a01b0384166107bb5760405162461bcd60e51b81526004016101f3906110d3565b3360006107c785610a27565b905060006107d485610a27565b905060008681526065602090815260408083206001600160a01b038c168452909152902054858110156108195760405162461bcd60e51b81526004016101f390611118565b60008781526065602090815260408083206001600160a01b038d8116855292528083208985039055908a16825281208054889290610858908490611162565b909155505060408051888152602081018890526001600160a01b03808b16928c821692918816917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46108b8848a8a8a8a8a610a72565b505050505050505050565b6001600160a01b0384163b156106ad5760405163bc197c8160e01b81526001600160a01b0385169063bc197c819061090790899089908890889088906004016111a3565b6020604051808303816000875af1925050508015610942575060408051601f3d908101601f1916820190925261093f91810190611201565b60015b6109ee5761094e61121e565b806308c379a003610987575061096261123a565b8061096d5750610989565b8060405162461bcd60e51b81526004016101f39190610c0f565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e20455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b60648201526084016101f3565b6001600160e01b0319811663bc197c8160e01b14610a1e5760405162461bcd60e51b81526004016101f3906112c4565b50505050505050565b60408051600180825281830190925260609160009190602080830190803683370190505090508281600081518110610a6157610a6161108e565b602090810291909101015292915050565b6001600160a01b0384163b156106ad5760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e6190610ab6908990899088908890889060040161130c565b6020604051808303816000875af1925050508015610af1575060408051601f3d908101601f19168201909252610aee91810190611201565b60015b610afd5761094e61121e565b6001600160e01b0319811663f23a6e6160e01b14610a1e5760405162461bcd60e51b81526004016101f3906112c4565b80356001600160a01b0381168114610b4457600080fd5b919050565b60008060408385031215610b5c57600080fd5b610b6583610b2d565b946020939093013593505050565b6001600160e01b031981168114610b8957600080fd5b50565b600060208284031215610b9e57600080fd5b8135610ba981610b73565b9392505050565b600060208284031215610bc257600080fd5b5035919050565b6000815180845260005b81811015610bef57602081850181015186830182015201610bd3565b506000602082860101526020601f19601f83011685010191505092915050565b602081526000610ba96020830184610bc9565b634e487b7160e01b600052604160045260246000fd5b601f8201601f1916810167ffffffffffffffff81118282101715610c5e57610c5e610c22565b6040525050565b600067ffffffffffffffff821115610c7f57610c7f610c22565b5060051b60200190565b600082601f830112610c9a57600080fd5b81356020610ca782610c65565b604051610cb48282610c38565b83815260059390931b8501820192828101915086841115610cd457600080fd5b8286015b84811015610cef5780358352918301918301610cd8565b509695505050505050565b600082601f830112610d0b57600080fd5b813567ffffffffffffffff811115610d2557610d25610c22565b604051610d3c601f8301601f191660200182610c38565b818152846020838601011115610d5157600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a08688031215610d8657600080fd5b610d8f86610b2d565b9450610d9d60208701610b2d565b9350604086013567ffffffffffffffff80821115610dba57600080fd5b610dc689838a01610c89565b94506060880135915080821115610ddc57600080fd5b610de889838a01610c89565b93506080880135915080821115610dfe57600080fd5b50610e0b88828901610cfa565b9150509295509295909350565b60008060408385031215610e2b57600080fd5b823567ffffffffffffffff80821115610e4357600080fd5b818501915085601f830112610e5757600080fd5b81356020610e6482610c65565b604051610e718282610c38565b83815260059390931b8501820192828101915089841115610e9157600080fd5b948201945b83861015610eb657610ea786610b2d565b82529482019490820190610e96565b96505086013592505080821115610ecc57600080fd5b50610ed985828601610c89565b9150509250929050565b600081518084526020808501945080840160005b83811015610f1357815187529582019590820190600101610ef7565b509495945050505050565b602081526000610ba96020830184610ee3565b60008060408385031215610f4457600080fd5b610f4d83610b2d565b915060208301358015158114610f6257600080fd5b809150509250929050565b60008060408385031215610f8057600080fd5b610f8983610b2d565b9150610f9760208401610b2d565b90509250929050565b600080600080600060a08688031215610fb857600080fd5b610fc186610b2d565b9450610fcf60208701610b2d565b93506040860135925060608601359150608086013567ffffffffffffffff811115610ff957600080fd5b610e0b88828901610cfa565b600181811c9082168061101957607f821691505b60208210810361103957634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252602f908201527f455243313135353a2063616c6c6572206973206e6f7420746f6b656e206f776e60408201526e195c881b9bdc88185c1c1c9bdd9959608a1b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000600182016110cc576110cc6110a4565b5060010190565b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b80820180821115610221576102216110a4565b6040815260006111886040830185610ee3565b828103602084015261119a8185610ee3565b95945050505050565b6001600160a01b0386811682528516602082015260a0604082018190526000906111cf90830186610ee3565b82810360608401526111e18186610ee3565b905082810360808401526111f58185610bc9565b98975050505050505050565b60006020828403121561121357600080fd5b8151610ba981610b73565b600060033d11156112375760046000803e5060005160e01c5b90565b600060443d10156112485790565b6040516003193d81016004833e81513d67ffffffffffffffff816024840111818411171561127857505050505090565b82850191508151818111156112905750505050505090565b843d87010160208285010111156112aa5750505050505090565b6112b960208286010187610c38565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b6001600160a01b03868116825285166020820152604081018490526060810183905260a06080820181905260009061134690830184610bc9565b97965050505050505056fea164736f6c6343000811000a", - "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100875760003560e01c80634e1273f41161005b5780634e1273f41461010a578063a22cb4651461012a578063e985e9c51461013d578063f242432a1461017957600080fd5b8062fdd58e1461008c57806301ffc9a7146100b25780630e89341c146100d55780632eb2c2d6146100f5575b600080fd5b61009f61009a366004610b49565b61018c565b6040519081526020015b60405180910390f35b6100c56100c0366004610b8c565b610227565b60405190151581526020016100a9565b6100e86100e3366004610bb0565b610277565b6040516100a99190610c0f565b610108610103366004610d6e565b61030b565b005b61011d610118366004610e18565b610357565b6040516100a99190610f1e565b610108610138366004610f31565b610481565b6100c561014b366004610f6d565b6001600160a01b03918216600090815260666020908152604080832093909416825291909152205460ff1690565b610108610187366004610fa0565b610490565b60006001600160a01b0383166101fc5760405162461bcd60e51b815260206004820152602a60248201527f455243313135353a2061646472657373207a65726f206973206e6f742061207660448201526930b634b21037bbb732b960b11b60648201526084015b60405180910390fd5b5060008181526065602090815260408083206001600160a01b03861684529091529020545b92915050565b60006001600160e01b03198216636cdb3d1360e11b148061025857506001600160e01b031982166303a24d0760e21b145b8061022157506301ffc9a760e01b6001600160e01b0319831614610221565b60606067805461028690611005565b80601f01602080910402602001604051908101604052809291908181526020018280546102b290611005565b80156102ff5780601f106102d4576101008083540402835291602001916102ff565b820191906000526020600020905b8154815290600101906020018083116102e257829003601f168201915b50505050509050919050565b6001600160a01b0385163314806103275750610327853361014b565b6103435760405162461bcd60e51b81526004016101f39061103f565b61035085858585856104d5565b5050505050565b606081518351146103bc5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b60648201526084016101f3565b6000835167ffffffffffffffff8111156103d8576103d8610c22565b604051908082528060200260200182016040528015610401578160200160208202803683370190505b50905060005b84518110156104795761044c8582815181106104255761042561108e565b602002602001015185838151811061043f5761043f61108e565b602002602001015161018c565b82828151811061045e5761045e61108e565b6020908102919091010152610472816110ba565b9050610407565b509392505050565b61048c3383836106b5565b5050565b6001600160a01b0385163314806104ac57506104ac853361014b565b6104c85760405162461bcd60e51b81526004016101f39061103f565b6103508585858585610795565b81518351146105375760405162461bcd60e51b815260206004820152602860248201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206044820152670dad2e6dac2e8c6d60c31b60648201526084016101f3565b6001600160a01b03841661055d5760405162461bcd60e51b81526004016101f3906110d3565b3360005b845181101561064757600085828151811061057e5761057e61108e565b60200260200101519050600085838151811061059c5761059c61108e565b60209081029190910181015160008481526065835260408082206001600160a01b038e1683529093529190912054909150818110156105ed5760405162461bcd60e51b81526004016101f390611118565b60008381526065602090815260408083206001600160a01b038e8116855292528083208585039055908b1682528120805484929061062c908490611162565b9250508190555050505080610640906110ba565b9050610561565b50846001600160a01b0316866001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051610697929190611175565b60405180910390a46106ad8187878787876108c3565b505050505050565b816001600160a01b0316836001600160a01b0316036107285760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084016101f3565b6001600160a01b03838116600081815260666020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6001600160a01b0384166107bb5760405162461bcd60e51b81526004016101f3906110d3565b3360006107c785610a27565b905060006107d485610a27565b905060008681526065602090815260408083206001600160a01b038c168452909152902054858110156108195760405162461bcd60e51b81526004016101f390611118565b60008781526065602090815260408083206001600160a01b038d8116855292528083208985039055908a16825281208054889290610858908490611162565b909155505060408051888152602081018890526001600160a01b03808b16928c821692918816917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46108b8848a8a8a8a8a610a72565b505050505050505050565b6001600160a01b0384163b156106ad5760405163bc197c8160e01b81526001600160a01b0385169063bc197c819061090790899089908890889088906004016111a3565b6020604051808303816000875af1925050508015610942575060408051601f3d908101601f1916820190925261093f91810190611201565b60015b6109ee5761094e61121e565b806308c379a003610987575061096261123a565b8061096d5750610989565b8060405162461bcd60e51b81526004016101f39190610c0f565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e20455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b60648201526084016101f3565b6001600160e01b0319811663bc197c8160e01b14610a1e5760405162461bcd60e51b81526004016101f3906112c4565b50505050505050565b60408051600180825281830190925260609160009190602080830190803683370190505090508281600081518110610a6157610a6161108e565b602090810291909101015292915050565b6001600160a01b0384163b156106ad5760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e6190610ab6908990899088908890889060040161130c565b6020604051808303816000875af1925050508015610af1575060408051601f3d908101601f19168201909252610aee91810190611201565b60015b610afd5761094e61121e565b6001600160e01b0319811663f23a6e6160e01b14610a1e5760405162461bcd60e51b81526004016101f3906112c4565b80356001600160a01b0381168114610b4457600080fd5b919050565b60008060408385031215610b5c57600080fd5b610b6583610b2d565b946020939093013593505050565b6001600160e01b031981168114610b8957600080fd5b50565b600060208284031215610b9e57600080fd5b8135610ba981610b73565b9392505050565b600060208284031215610bc257600080fd5b5035919050565b6000815180845260005b81811015610bef57602081850181015186830182015201610bd3565b506000602082860101526020601f19601f83011685010191505092915050565b602081526000610ba96020830184610bc9565b634e487b7160e01b600052604160045260246000fd5b601f8201601f1916810167ffffffffffffffff81118282101715610c5e57610c5e610c22565b6040525050565b600067ffffffffffffffff821115610c7f57610c7f610c22565b5060051b60200190565b600082601f830112610c9a57600080fd5b81356020610ca782610c65565b604051610cb48282610c38565b83815260059390931b8501820192828101915086841115610cd457600080fd5b8286015b84811015610cef5780358352918301918301610cd8565b509695505050505050565b600082601f830112610d0b57600080fd5b813567ffffffffffffffff811115610d2557610d25610c22565b604051610d3c601f8301601f191660200182610c38565b818152846020838601011115610d5157600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a08688031215610d8657600080fd5b610d8f86610b2d565b9450610d9d60208701610b2d565b9350604086013567ffffffffffffffff80821115610dba57600080fd5b610dc689838a01610c89565b94506060880135915080821115610ddc57600080fd5b610de889838a01610c89565b93506080880135915080821115610dfe57600080fd5b50610e0b88828901610cfa565b9150509295509295909350565b60008060408385031215610e2b57600080fd5b823567ffffffffffffffff80821115610e4357600080fd5b818501915085601f830112610e5757600080fd5b81356020610e6482610c65565b604051610e718282610c38565b83815260059390931b8501820192828101915089841115610e9157600080fd5b948201945b83861015610eb657610ea786610b2d565b82529482019490820190610e96565b96505086013592505080821115610ecc57600080fd5b50610ed985828601610c89565b9150509250929050565b600081518084526020808501945080840160005b83811015610f1357815187529582019590820190600101610ef7565b509495945050505050565b602081526000610ba96020830184610ee3565b60008060408385031215610f4457600080fd5b610f4d83610b2d565b915060208301358015158114610f6257600080fd5b809150509250929050565b60008060408385031215610f8057600080fd5b610f8983610b2d565b9150610f9760208401610b2d565b90509250929050565b600080600080600060a08688031215610fb857600080fd5b610fc186610b2d565b9450610fcf60208701610b2d565b93506040860135925060608601359150608086013567ffffffffffffffff811115610ff957600080fd5b610e0b88828901610cfa565b600181811c9082168061101957607f821691505b60208210810361103957634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252602f908201527f455243313135353a2063616c6c6572206973206e6f7420746f6b656e206f776e60408201526e195c881b9bdc88185c1c1c9bdd9959608a1b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000600182016110cc576110cc6110a4565b5060010190565b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b80820180821115610221576102216110a4565b6040815260006111886040830185610ee3565b828103602084015261119a8185610ee3565b95945050505050565b6001600160a01b0386811682528516602082015260a0604082018190526000906111cf90830186610ee3565b82810360608401526111e18186610ee3565b905082810360808401526111f58185610bc9565b98975050505050505050565b60006020828403121561121357600080fd5b8151610ba981610b73565b600060033d11156112375760046000803e5060005160e01c5b90565b600060443d10156112485790565b6040516003193d81016004833e81513d67ffffffffffffffff816024840111818411171561127857505050505090565b82850191508151818111156112905750505050505090565b843d87010160208285010111156112aa5750505050505090565b6112b960208286010187610c38565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b6001600160a01b03868116825285166020820152604081018490526060810183905260a06080820181905260009061134690830184610bc9565b97965050505050505056fea164736f6c6343000811000a", + "bytecode": "0x608060405234801561000f575f80fd5b506112db8061001d5f395ff3fe608060405234801561000f575f80fd5b5060043610610084575f3560e01c80634e1273f4116100585780634e1273f414610106578063a22cb46514610126578063e985e9c514610139578063f242432a14610174575f80fd5b8062fdd58e1461008857806301ffc9a7146100ae5780630e89341c146100d15780632eb2c2d6146100f1575b5f80fd5b61009b610096366004610b1f565b610187565b6040519081526020015b60405180910390f35b6100c16100bc366004610b5f565b610220565b60405190151581526020016100a5565b6100e46100df366004610b81565b61026f565b6040516100a59190610bdb565b6101046100ff366004610d34565b610301565b005b610119610114366004610dd7565b61034d565b6040516100a59190610ed6565b610104610134366004610ee8565b61046d565b6100c1610147366004610f21565b6001600160a01b039182165f90815260666020908152604080832093909416825291909152205460ff1690565b610104610182366004610f52565b61047c565b5f6001600160a01b0383166101f65760405162461bcd60e51b815260206004820152602a60248201527f455243313135353a2061646472657373207a65726f206973206e6f742061207660448201526930b634b21037bbb732b960b11b60648201526084015b60405180910390fd5b505f8181526065602090815260408083206001600160a01b03861684529091529020545b92915050565b5f6001600160e01b03198216636cdb3d1360e11b148061025057506001600160e01b031982166303a24d0760e21b145b8061021a57506301ffc9a760e01b6001600160e01b031983161461021a565b60606067805461027e90610fb2565b80601f01602080910402602001604051908101604052809291908181526020018280546102aa90610fb2565b80156102f55780601f106102cc576101008083540402835291602001916102f5565b820191905f5260205f20905b8154815290600101906020018083116102d857829003601f168201915b50505050509050919050565b6001600160a01b03851633148061031d575061031d8533610147565b6103395760405162461bcd60e51b81526004016101ed90610fea565b61034685858585856104c1565b5050505050565b606081518351146103b25760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b60648201526084016101ed565b5f835167ffffffffffffffff8111156103cd576103cd610bed565b6040519080825280602002602001820160405280156103f6578160200160208202803683370190505b5090505f5b84518110156104655761044085828151811061041957610419611039565b602002602001015185838151811061043357610433611039565b6020026020010151610187565b82828151811061045257610452611039565b60209081029190910101526001016103fb565b509392505050565b610478338383610695565b5050565b6001600160a01b03851633148061049857506104988533610147565b6104b45760405162461bcd60e51b81526004016101ed90610fea565b6103468585858585610774565b81518351146105235760405162461bcd60e51b815260206004820152602860248201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206044820152670dad2e6dac2e8c6d60c31b60648201526084016101ed565b6001600160a01b0384166105495760405162461bcd60e51b81526004016101ed9061104d565b335f5b8451811015610627575f85828151811061056857610568611039565b602002602001015190505f85838151811061058557610585611039565b6020908102919091018101515f8481526065835260408082206001600160a01b038e1683529093529190912054909150818110156105d55760405162461bcd60e51b81526004016101ed90611092565b5f8381526065602090815260408083206001600160a01b038e8116855292528083208585039055908b168252812080548492906106139084906110dc565b90915550506001909301925061054c915050565b50846001600160a01b0316866001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb87876040516106779291906110fb565b60405180910390a461068d81878787878761089e565b505050505050565b816001600160a01b0316836001600160a01b0316036107085760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084016101ed565b6001600160a01b038381165f81815260666020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6001600160a01b03841661079a5760405162461bcd60e51b81526004016101ed9061104d565b335f6107a585610a01565b90505f6107b185610a01565b90505f8681526065602090815260408083206001600160a01b038c168452909152902054858110156107f55760405162461bcd60e51b81526004016101ed90611092565b5f8781526065602090815260408083206001600160a01b038d8116855292528083208985039055908a168252812080548892906108339084906110dc565b909155505060408051888152602081018890526001600160a01b03808b16928c821692918816917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4610893848a8a8a8a8a610a4a565b505050505050505050565b6001600160a01b0384163b1561068d5760405163bc197c8160e01b81526001600160a01b0385169063bc197c81906108e29089908990889088908890600401611128565b6020604051808303815f875af192505050801561091c575060408051601f3d908101601f1916820190925261091991810190611185565b60015b6109c8576109286111a0565b806308c379a003610961575061093c6111b9565b806109475750610963565b8060405162461bcd60e51b81526004016101ed9190610bdb565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e20455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b60648201526084016101ed565b6001600160e01b0319811663bc197c8160e01b146109f85760405162461bcd60e51b81526004016101ed90611242565b50505050505050565b6040805160018082528183019092526060915f91906020808301908036833701905050905082815f81518110610a3957610a39611039565b602090810291909101015292915050565b6001600160a01b0384163b1561068d5760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e6190610a8e908990899088908890889060040161128a565b6020604051808303815f875af1925050508015610ac8575060408051601f3d908101601f19168201909252610ac591810190611185565b60015b610ad4576109286111a0565b6001600160e01b0319811663f23a6e6160e01b146109f85760405162461bcd60e51b81526004016101ed90611242565b80356001600160a01b0381168114610b1a575f80fd5b919050565b5f8060408385031215610b30575f80fd5b610b3983610b04565b946020939093013593505050565b6001600160e01b031981168114610b5c575f80fd5b50565b5f60208284031215610b6f575f80fd5b8135610b7a81610b47565b9392505050565b5f60208284031215610b91575f80fd5b5035919050565b5f81518084525f5b81811015610bbc57602081850181015186830182015201610ba0565b505f602082860101526020601f19601f83011685010191505092915050565b602081525f610b7a6020830184610b98565b634e487b7160e01b5f52604160045260245ffd5b601f8201601f1916810167ffffffffffffffff81118282101715610c2757610c27610bed565b6040525050565b5f67ffffffffffffffff821115610c4757610c47610bed565b5060051b60200190565b5f82601f830112610c60575f80fd5b81356020610c6d82610c2e565b604051610c7a8282610c01565b80915083815260208101915060208460051b870101935086841115610c9d575f80fd5b602086015b84811015610cb95780358352918301918301610ca2565b509695505050505050565b5f82601f830112610cd3575f80fd5b813567ffffffffffffffff811115610ced57610ced610bed565b604051610d04601f8301601f191660200182610c01565b818152846020838601011115610d18575f80fd5b816020850160208301375f918101602001919091529392505050565b5f805f805f60a08688031215610d48575f80fd5b610d5186610b04565b9450610d5f60208701610b04565b9350604086013567ffffffffffffffff80821115610d7b575f80fd5b610d8789838a01610c51565b94506060880135915080821115610d9c575f80fd5b610da889838a01610c51565b93506080880135915080821115610dbd575f80fd5b50610dca88828901610cc4565b9150509295509295909350565b5f8060408385031215610de8575f80fd5b823567ffffffffffffffff80821115610dff575f80fd5b818501915085601f830112610e12575f80fd5b81356020610e1f82610c2e565b604051610e2c8282610c01565b83815260059390931b8501820192828101915089841115610e4b575f80fd5b948201945b83861015610e7057610e6186610b04565b82529482019490820190610e50565b96505086013592505080821115610e85575f80fd5b50610e9285828601610c51565b9150509250929050565b5f815180845260208085019450602084015f5b83811015610ecb57815187529582019590820190600101610eaf565b509495945050505050565b602081525f610b7a6020830184610e9c565b5f8060408385031215610ef9575f80fd5b610f0283610b04565b915060208301358015158114610f16575f80fd5b809150509250929050565b5f8060408385031215610f32575f80fd5b610f3b83610b04565b9150610f4960208401610b04565b90509250929050565b5f805f805f60a08688031215610f66575f80fd5b610f6f86610b04565b9450610f7d60208701610b04565b93506040860135925060608601359150608086013567ffffffffffffffff811115610fa6575f80fd5b610dca88828901610cc4565b600181811c90821680610fc657607f821691505b602082108103610fe457634e487b7160e01b5f52602260045260245ffd5b50919050565b6020808252602f908201527f455243313135353a2063616c6c6572206973206e6f7420746f6b656e206f776e60408201526e195c881b9bdc88185c1c1c9bdd9959608a1b606082015260800190565b634e487b7160e01b5f52603260045260245ffd5b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b8082018082111561021a57634e487b7160e01b5f52601160045260245ffd5b604081525f61110d6040830185610e9c565b828103602084015261111f8185610e9c565b95945050505050565b6001600160a01b0386811682528516602082015260a0604082018190525f9061115390830186610e9c565b82810360608401526111658186610e9c565b905082810360808401526111798185610b98565b98975050505050505050565b5f60208284031215611195575f80fd5b8151610b7a81610b47565b5f60033d11156111b65760045f803e505f5160e01c5b90565b5f60443d10156111c65790565b6040516003193d81016004833e81513d67ffffffffffffffff81602484011181841117156111f657505050505090565b828501915081518181111561120e5750505050505090565b843d87010160208285010111156112285750505050505090565b61123760208286010187610c01565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b6001600160a01b03868116825285166020820152604081018490526060810183905260a0608082018190525f906112c390830184610b98565b97965050505050505056fea164736f6c6343000818000a", + "deployedBytecode": "0x608060405234801561000f575f80fd5b5060043610610084575f3560e01c80634e1273f4116100585780634e1273f414610106578063a22cb46514610126578063e985e9c514610139578063f242432a14610174575f80fd5b8062fdd58e1461008857806301ffc9a7146100ae5780630e89341c146100d15780632eb2c2d6146100f1575b5f80fd5b61009b610096366004610b1f565b610187565b6040519081526020015b60405180910390f35b6100c16100bc366004610b5f565b610220565b60405190151581526020016100a5565b6100e46100df366004610b81565b61026f565b6040516100a59190610bdb565b6101046100ff366004610d34565b610301565b005b610119610114366004610dd7565b61034d565b6040516100a59190610ed6565b610104610134366004610ee8565b61046d565b6100c1610147366004610f21565b6001600160a01b039182165f90815260666020908152604080832093909416825291909152205460ff1690565b610104610182366004610f52565b61047c565b5f6001600160a01b0383166101f65760405162461bcd60e51b815260206004820152602a60248201527f455243313135353a2061646472657373207a65726f206973206e6f742061207660448201526930b634b21037bbb732b960b11b60648201526084015b60405180910390fd5b505f8181526065602090815260408083206001600160a01b03861684529091529020545b92915050565b5f6001600160e01b03198216636cdb3d1360e11b148061025057506001600160e01b031982166303a24d0760e21b145b8061021a57506301ffc9a760e01b6001600160e01b031983161461021a565b60606067805461027e90610fb2565b80601f01602080910402602001604051908101604052809291908181526020018280546102aa90610fb2565b80156102f55780601f106102cc576101008083540402835291602001916102f5565b820191905f5260205f20905b8154815290600101906020018083116102d857829003601f168201915b50505050509050919050565b6001600160a01b03851633148061031d575061031d8533610147565b6103395760405162461bcd60e51b81526004016101ed90610fea565b61034685858585856104c1565b5050505050565b606081518351146103b25760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b60648201526084016101ed565b5f835167ffffffffffffffff8111156103cd576103cd610bed565b6040519080825280602002602001820160405280156103f6578160200160208202803683370190505b5090505f5b84518110156104655761044085828151811061041957610419611039565b602002602001015185838151811061043357610433611039565b6020026020010151610187565b82828151811061045257610452611039565b60209081029190910101526001016103fb565b509392505050565b610478338383610695565b5050565b6001600160a01b03851633148061049857506104988533610147565b6104b45760405162461bcd60e51b81526004016101ed90610fea565b6103468585858585610774565b81518351146105235760405162461bcd60e51b815260206004820152602860248201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206044820152670dad2e6dac2e8c6d60c31b60648201526084016101ed565b6001600160a01b0384166105495760405162461bcd60e51b81526004016101ed9061104d565b335f5b8451811015610627575f85828151811061056857610568611039565b602002602001015190505f85838151811061058557610585611039565b6020908102919091018101515f8481526065835260408082206001600160a01b038e1683529093529190912054909150818110156105d55760405162461bcd60e51b81526004016101ed90611092565b5f8381526065602090815260408083206001600160a01b038e8116855292528083208585039055908b168252812080548492906106139084906110dc565b90915550506001909301925061054c915050565b50846001600160a01b0316866001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb87876040516106779291906110fb565b60405180910390a461068d81878787878761089e565b505050505050565b816001600160a01b0316836001600160a01b0316036107085760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084016101ed565b6001600160a01b038381165f81815260666020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6001600160a01b03841661079a5760405162461bcd60e51b81526004016101ed9061104d565b335f6107a585610a01565b90505f6107b185610a01565b90505f8681526065602090815260408083206001600160a01b038c168452909152902054858110156107f55760405162461bcd60e51b81526004016101ed90611092565b5f8781526065602090815260408083206001600160a01b038d8116855292528083208985039055908a168252812080548892906108339084906110dc565b909155505060408051888152602081018890526001600160a01b03808b16928c821692918816917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4610893848a8a8a8a8a610a4a565b505050505050505050565b6001600160a01b0384163b1561068d5760405163bc197c8160e01b81526001600160a01b0385169063bc197c81906108e29089908990889088908890600401611128565b6020604051808303815f875af192505050801561091c575060408051601f3d908101601f1916820190925261091991810190611185565b60015b6109c8576109286111a0565b806308c379a003610961575061093c6111b9565b806109475750610963565b8060405162461bcd60e51b81526004016101ed9190610bdb565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e20455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b60648201526084016101ed565b6001600160e01b0319811663bc197c8160e01b146109f85760405162461bcd60e51b81526004016101ed90611242565b50505050505050565b6040805160018082528183019092526060915f91906020808301908036833701905050905082815f81518110610a3957610a39611039565b602090810291909101015292915050565b6001600160a01b0384163b1561068d5760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e6190610a8e908990899088908890889060040161128a565b6020604051808303815f875af1925050508015610ac8575060408051601f3d908101601f19168201909252610ac591810190611185565b60015b610ad4576109286111a0565b6001600160e01b0319811663f23a6e6160e01b146109f85760405162461bcd60e51b81526004016101ed90611242565b80356001600160a01b0381168114610b1a575f80fd5b919050565b5f8060408385031215610b30575f80fd5b610b3983610b04565b946020939093013593505050565b6001600160e01b031981168114610b5c575f80fd5b50565b5f60208284031215610b6f575f80fd5b8135610b7a81610b47565b9392505050565b5f60208284031215610b91575f80fd5b5035919050565b5f81518084525f5b81811015610bbc57602081850181015186830182015201610ba0565b505f602082860101526020601f19601f83011685010191505092915050565b602081525f610b7a6020830184610b98565b634e487b7160e01b5f52604160045260245ffd5b601f8201601f1916810167ffffffffffffffff81118282101715610c2757610c27610bed565b6040525050565b5f67ffffffffffffffff821115610c4757610c47610bed565b5060051b60200190565b5f82601f830112610c60575f80fd5b81356020610c6d82610c2e565b604051610c7a8282610c01565b80915083815260208101915060208460051b870101935086841115610c9d575f80fd5b602086015b84811015610cb95780358352918301918301610ca2565b509695505050505050565b5f82601f830112610cd3575f80fd5b813567ffffffffffffffff811115610ced57610ced610bed565b604051610d04601f8301601f191660200182610c01565b818152846020838601011115610d18575f80fd5b816020850160208301375f918101602001919091529392505050565b5f805f805f60a08688031215610d48575f80fd5b610d5186610b04565b9450610d5f60208701610b04565b9350604086013567ffffffffffffffff80821115610d7b575f80fd5b610d8789838a01610c51565b94506060880135915080821115610d9c575f80fd5b610da889838a01610c51565b93506080880135915080821115610dbd575f80fd5b50610dca88828901610cc4565b9150509295509295909350565b5f8060408385031215610de8575f80fd5b823567ffffffffffffffff80821115610dff575f80fd5b818501915085601f830112610e12575f80fd5b81356020610e1f82610c2e565b604051610e2c8282610c01565b83815260059390931b8501820192828101915089841115610e4b575f80fd5b948201945b83861015610e7057610e6186610b04565b82529482019490820190610e50565b96505086013592505080821115610e85575f80fd5b50610e9285828601610c51565b9150509250929050565b5f815180845260208085019450602084015f5b83811015610ecb57815187529582019590820190600101610eaf565b509495945050505050565b602081525f610b7a6020830184610e9c565b5f8060408385031215610ef9575f80fd5b610f0283610b04565b915060208301358015158114610f16575f80fd5b809150509250929050565b5f8060408385031215610f32575f80fd5b610f3b83610b04565b9150610f4960208401610b04565b90509250929050565b5f805f805f60a08688031215610f66575f80fd5b610f6f86610b04565b9450610f7d60208701610b04565b93506040860135925060608601359150608086013567ffffffffffffffff811115610fa6575f80fd5b610dca88828901610cc4565b600181811c90821680610fc657607f821691505b602082108103610fe457634e487b7160e01b5f52602260045260245ffd5b50919050565b6020808252602f908201527f455243313135353a2063616c6c6572206973206e6f7420746f6b656e206f776e60408201526e195c881b9bdc88185c1c1c9bdd9959608a1b606082015260800190565b634e487b7160e01b5f52603260045260245ffd5b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b8082018082111561021a57634e487b7160e01b5f52601160045260245ffd5b604081525f61110d6040830185610e9c565b828103602084015261111f8185610e9c565b95945050505050565b6001600160a01b0386811682528516602082015260a0604082018190525f9061115390830186610e9c565b82810360608401526111658186610e9c565b905082810360808401526111798185610b98565b98975050505050505050565b5f60208284031215611195575f80fd5b8151610b7a81610b47565b5f60033d11156111b65760045f803e505f5160e01c5b90565b5f60443d10156111c65790565b6040516003193d81016004833e81513d67ffffffffffffffff81602484011181841117156111f657505050505090565b828501915081518181111561120e5750505050505090565b843d87010160208285010111156112285750505050505090565b61123760208286010187610c01565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b6001600160a01b03868116825285166020820152604081018490526060810183905260a0608082018190525f906112c390830184610b98565b97965050505050505056fea164736f6c6343000818000a", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/artifacts/ERC1271SimpleWallet.json b/artifacts/ERC1271SimpleWallet.json index 836f2c63..076115f2 100644 --- a/artifacts/ERC1271SimpleWallet.json +++ b/artifacts/ERC1271SimpleWallet.json @@ -39,8 +39,8 @@ "type": "function" } ], - "bytecode": "0x608060405234801561001057600080fd5b5060405161055138038061055183398101604081905261002f91610054565b600080546001600160a01b0319166001600160a01b0392909216919091179055610084565b60006020828403121561006657600080fd5b81516001600160a01b038116811461007d57600080fd5b9392505050565b6104be806100936000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c80631626ba7e14610030575b600080fd5b61004361003e3660046103e0565b610060565b6040516001600160e01b0319909116815260200160405180910390f35b600080546001600160a01b031661007784846100b6565b6001600160a01b0316036100ac57507f1626ba7e356f5979dd355a3d2bfb43e80420a480c3b854edce286a82d74968696100b0565b5060005b92915050565b60008060006100c585856100da565b915091506100d28161011f565b509392505050565b60008082516041036101105760208301516040840151606085015160001a610104878285856102dd565b94509450505050610118565b506000905060025b9250929050565b60008160048111156101335761013361049b565b0361013b5750565b600181600481111561014f5761014f61049b565b036101a15760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e6174757265000000000000000060448201526064015b60405180910390fd5b60028160048111156101b5576101b561049b565b036102025760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610198565b60038160048111156102165761021661049b565b0361026e5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b6064820152608401610198565b60048160048111156102825761028261049b565b036102da5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c604482015261756560f01b6064820152608401610198565b50565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561031457506000905060036103c1565b8460ff16601b1415801561032c57508460ff16601c14155b1561033d57506000905060046103c1565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610391573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166103ba576000600192509250506103c1565b9150600090505b94509492505050565b634e487b7160e01b600052604160045260246000fd5b600080604083850312156103f357600080fd5b82359150602083013567ffffffffffffffff8082111561041257600080fd5b818501915085601f83011261042657600080fd5b813581811115610438576104386103ca565b604051601f8201601f19908116603f01168101908382118183101715610460576104606103ca565b8160405282815288602084870101111561047957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a", - "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061002b5760003560e01c80631626ba7e14610030575b600080fd5b61004361003e3660046103e0565b610060565b6040516001600160e01b0319909116815260200160405180910390f35b600080546001600160a01b031661007784846100b6565b6001600160a01b0316036100ac57507f1626ba7e356f5979dd355a3d2bfb43e80420a480c3b854edce286a82d74968696100b0565b5060005b92915050565b60008060006100c585856100da565b915091506100d28161011f565b509392505050565b60008082516041036101105760208301516040840151606085015160001a610104878285856102dd565b94509450505050610118565b506000905060025b9250929050565b60008160048111156101335761013361049b565b0361013b5750565b600181600481111561014f5761014f61049b565b036101a15760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e6174757265000000000000000060448201526064015b60405180910390fd5b60028160048111156101b5576101b561049b565b036102025760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610198565b60038160048111156102165761021661049b565b0361026e5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b6064820152608401610198565b60048160048111156102825761028261049b565b036102da5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c604482015261756560f01b6064820152608401610198565b50565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561031457506000905060036103c1565b8460ff16601b1415801561032c57508460ff16601c14155b1561033d57506000905060046103c1565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610391573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166103ba576000600192509250506103c1565b9150600090505b94509492505050565b634e487b7160e01b600052604160045260246000fd5b600080604083850312156103f357600080fd5b82359150602083013567ffffffffffffffff8082111561041257600080fd5b818501915085601f83011261042657600080fd5b813581811115610438576104386103ca565b604051601f8201601f19908116603f01168101908382118183101715610460576104606103ca565b8160405282815288602084870101111561047957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a", + "bytecode": "0x608060405234801561000f575f80fd5b5060405161052d38038061052d83398101604081905261002e91610052565b5f80546001600160a01b0319166001600160a01b039290921691909117905561007f565b5f60208284031215610062575f80fd5b81516001600160a01b0381168114610078575f80fd5b9392505050565b6104a18061008c5f395ff3fe608060405234801561000f575f80fd5b5060043610610029575f3560e01c80631626ba7e1461002d575b5f80fd5b61004061003b3660046103cb565b61005d565b6040516001600160e01b0319909116815260200160405180910390f35b5f80546001600160a01b031661007384846100b1565b6001600160a01b0316036100a857507f1626ba7e356f5979dd355a3d2bfb43e80420a480c3b854edce286a82d74968696100ab565b505f5b92915050565b5f805f6100be85856100d3565b915091506100cb81610115565b509392505050565b5f808251604103610107576020830151604084015160608501515f1a6100fb878285856102d2565b9450945050505061010e565b505f905060025b9250929050565b5f81600481111561012857610128610480565b036101305750565b600181600481111561014457610144610480565b036101965760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e6174757265000000000000000060448201526064015b60405180910390fd5b60028160048111156101aa576101aa610480565b036101f75760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e67746800604482015260640161018d565b600381600481111561020b5761020b610480565b036102635760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b606482015260840161018d565b600481600481111561027757610277610480565b036102cf5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c604482015261756560f01b606482015260840161018d565b50565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561030757505f905060036103ae565b8460ff16601b1415801561031f57508460ff16601c14155b1561032f57505f905060046103ae565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610380573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b0381166103a8575f600192509250506103ae565b91505f90505b94509492505050565b634e487b7160e01b5f52604160045260245ffd5b5f80604083850312156103dc575f80fd5b82359150602083013567ffffffffffffffff808211156103fa575f80fd5b818501915085601f83011261040d575f80fd5b81358181111561041f5761041f6103b7565b604051601f8201601f19908116603f01168101908382118183101715610447576104476103b7565b8160405282815288602084870101111561045f575f80fd5b826020860160208301375f6020848301015280955050505050509250929050565b634e487b7160e01b5f52602160045260245ffdfea164736f6c6343000818000a", + "deployedBytecode": "0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c80631626ba7e1461002d575b5f80fd5b61004061003b3660046103cb565b61005d565b6040516001600160e01b0319909116815260200160405180910390f35b5f80546001600160a01b031661007384846100b1565b6001600160a01b0316036100a857507f1626ba7e356f5979dd355a3d2bfb43e80420a480c3b854edce286a82d74968696100ab565b505f5b92915050565b5f805f6100be85856100d3565b915091506100cb81610115565b509392505050565b5f808251604103610107576020830151604084015160608501515f1a6100fb878285856102d2565b9450945050505061010e565b505f905060025b9250929050565b5f81600481111561012857610128610480565b036101305750565b600181600481111561014457610144610480565b036101965760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e6174757265000000000000000060448201526064015b60405180910390fd5b60028160048111156101aa576101aa610480565b036101f75760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e67746800604482015260640161018d565b600381600481111561020b5761020b610480565b036102635760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b606482015260840161018d565b600481600481111561027757610277610480565b036102cf5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c604482015261756560f01b606482015260840161018d565b50565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561030757505f905060036103ae565b8460ff16601b1415801561031f57508460ff16601c14155b1561032f57505f905060046103ae565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610380573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b0381166103a8575f600192509250506103ae565b91505f90505b94509492505050565b634e487b7160e01b5f52604160045260245ffd5b5f80604083850312156103dc575f80fd5b82359150602083013567ffffffffffffffff808211156103fa575f80fd5b818501915085601f83011261040d575f80fd5b81358181111561041f5761041f6103b7565b604051601f8201601f19908116603f01168101908382118183101715610447576104476103b7565b8160405282815288602084870101111561045f575f80fd5b826020860160208301375f6020848301015280955050505050509250929050565b634e487b7160e01b5f52602160045260245ffdfea164736f6c6343000818000a", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/artifacts/ERC20.json b/artifacts/ERC20.json index 7285e8aa..93ca8727 100644 --- a/artifacts/ERC20.json +++ b/artifacts/ERC20.json @@ -290,8 +290,8 @@ "type": "function" } ], - "bytecode": "0x60806040523480156200001157600080fd5b5060405162000b1d38038062000b1d83398101604081905262000034916200011f565b600362000042838262000218565b50600462000051828262000218565b505050620002e4565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008257600080fd5b81516001600160401b03808211156200009f576200009f6200005a565b604051601f8301601f19908116603f01168101908282118183101715620000ca57620000ca6200005a565b81604052838152602092508683858801011115620000e757600080fd5b600091505b838210156200010b5785820183015181830184015290820190620000ec565b600093810190920192909252949350505050565b600080604083850312156200013357600080fd5b82516001600160401b03808211156200014b57600080fd5b620001598683870162000070565b935060208501519150808211156200017057600080fd5b506200017f8582860162000070565b9150509250929050565b600181811c908216806200019e57607f821691505b602082108103620001bf57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200021357600081815260208120601f850160051c81016020861015620001ee5750805b601f850160051c820191505b818110156200020f57828155600101620001fa565b5050505b505050565b81516001600160401b038111156200023457620002346200005a565b6200024c8162000245845462000189565b84620001c5565b602080601f8311600181146200028457600084156200026b5750858301515b600019600386901b1c1916600185901b1785556200020f565b600085815260208120601f198616915b82811015620002b55788860151825594840194600190910190840162000294565b5085821015620002d45787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b61082980620002f46000396000f3fe608060405234801561001057600080fd5b50600436106100a95760003560e01c80633950935111610071578063395093511461012357806370a082311461013657806395d89b411461015f578063a457c2d714610167578063a9059cbb1461017a578063dd62ed3e1461018d57600080fd5b806306fdde03146100ae578063095ea7b3146100cc57806318160ddd146100ef57806323b872dd14610101578063313ce56714610114575b600080fd5b6100b66101a0565b6040516100c3919061069c565b60405180910390f35b6100df6100da366004610706565b610232565b60405190151581526020016100c3565b6002545b6040519081526020016100c3565b6100df61010f366004610730565b61024c565b604051601281526020016100c3565b6100df610131366004610706565b610270565b6100f361014436600461076c565b6001600160a01b031660009081526020819052604090205490565b6100b6610292565b6100df610175366004610706565b6102a1565b6100df610188366004610706565b610321565b6100f361019b36600461078e565b61032f565b6060600380546101af906107c1565b80601f01602080910402602001604051908101604052809291908181526020018280546101db906107c1565b80156102285780601f106101fd57610100808354040283529160200191610228565b820191906000526020600020905b81548152906001019060200180831161020b57829003601f168201915b5050505050905090565b60003361024081858561035a565b60019150505b92915050565b60003361025a85828561047e565b6102658585856104f8565b506001949350505050565b600033610240818585610283838361032f565b61028d91906107fb565b61035a565b6060600480546101af906107c1565b600033816102af828661032f565b9050838110156103145760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b610265828686840361035a565b6000336102408185856104f8565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6001600160a01b0383166103bc5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161030b565b6001600160a01b03821661041d5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161030b565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b600061048a848461032f565b905060001981146104f257818110156104e55760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161030b565b6104f2848484840361035a565b50505050565b6001600160a01b03831661055c5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161030b565b6001600160a01b0382166105be5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161030b565b6001600160a01b038316600090815260208190526040902054818110156106365760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161030b565b6001600160a01b03848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a36104f2565b600060208083528351808285015260005b818110156106c9578581018301518582016040015282016106ad565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b038116811461070157600080fd5b919050565b6000806040838503121561071957600080fd5b610722836106ea565b946020939093013593505050565b60008060006060848603121561074557600080fd5b61074e846106ea565b925061075c602085016106ea565b9150604084013590509250925092565b60006020828403121561077e57600080fd5b610787826106ea565b9392505050565b600080604083850312156107a157600080fd5b6107aa836106ea565b91506107b8602084016106ea565b90509250929050565b600181811c908216806107d557607f821691505b6020821081036107f557634e487b7160e01b600052602260045260246000fd5b50919050565b8082018082111561024657634e487b7160e01b600052601160045260246000fdfea164736f6c6343000811000a", - "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100a95760003560e01c80633950935111610071578063395093511461012357806370a082311461013657806395d89b411461015f578063a457c2d714610167578063a9059cbb1461017a578063dd62ed3e1461018d57600080fd5b806306fdde03146100ae578063095ea7b3146100cc57806318160ddd146100ef57806323b872dd14610101578063313ce56714610114575b600080fd5b6100b66101a0565b6040516100c3919061069c565b60405180910390f35b6100df6100da366004610706565b610232565b60405190151581526020016100c3565b6002545b6040519081526020016100c3565b6100df61010f366004610730565b61024c565b604051601281526020016100c3565b6100df610131366004610706565b610270565b6100f361014436600461076c565b6001600160a01b031660009081526020819052604090205490565b6100b6610292565b6100df610175366004610706565b6102a1565b6100df610188366004610706565b610321565b6100f361019b36600461078e565b61032f565b6060600380546101af906107c1565b80601f01602080910402602001604051908101604052809291908181526020018280546101db906107c1565b80156102285780601f106101fd57610100808354040283529160200191610228565b820191906000526020600020905b81548152906001019060200180831161020b57829003601f168201915b5050505050905090565b60003361024081858561035a565b60019150505b92915050565b60003361025a85828561047e565b6102658585856104f8565b506001949350505050565b600033610240818585610283838361032f565b61028d91906107fb565b61035a565b6060600480546101af906107c1565b600033816102af828661032f565b9050838110156103145760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b610265828686840361035a565b6000336102408185856104f8565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6001600160a01b0383166103bc5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161030b565b6001600160a01b03821661041d5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161030b565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b600061048a848461032f565b905060001981146104f257818110156104e55760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161030b565b6104f2848484840361035a565b50505050565b6001600160a01b03831661055c5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161030b565b6001600160a01b0382166105be5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161030b565b6001600160a01b038316600090815260208190526040902054818110156106365760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161030b565b6001600160a01b03848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a36104f2565b600060208083528351808285015260005b818110156106c9578581018301518582016040015282016106ad565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b038116811461070157600080fd5b919050565b6000806040838503121561071957600080fd5b610722836106ea565b946020939093013593505050565b60008060006060848603121561074557600080fd5b61074e846106ea565b925061075c602085016106ea565b9150604084013590509250925092565b60006020828403121561077e57600080fd5b610787826106ea565b9392505050565b600080604083850312156107a157600080fd5b6107aa836106ea565b91506107b8602084016106ea565b90509250929050565b600181811c908216806107d557607f821691505b6020821081036107f557634e487b7160e01b600052602260045260246000fd5b50919050565b8082018082111561024657634e487b7160e01b600052601160045260246000fdfea164736f6c6343000811000a", + "bytecode": "0x608060405234801562000010575f80fd5b5060405162000aeb38038062000aeb83398101604081905262000033916200011a565b60036200004183826200020a565b5060046200005082826200020a565b505050620002d6565b634e487b7160e01b5f52604160045260245ffd5b5f82601f8301126200007d575f80fd5b81516001600160401b03808211156200009a576200009a62000059565b604051601f8301601f19908116603f01168101908282118183101715620000c557620000c562000059565b8160405283815260209250866020858801011115620000e2575f80fd5b5f91505b83821015620001055785820183015181830184015290820190620000e6565b5f602085830101528094505050505092915050565b5f80604083850312156200012c575f80fd5b82516001600160401b038082111562000143575f80fd5b62000151868387016200006d565b9350602085015191508082111562000167575f80fd5b5062000176858286016200006d565b9150509250929050565b600181811c908216806200019557607f821691505b602082108103620001b457634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156200020557805f5260205f20601f840160051c81016020851015620001e15750805b601f840160051c820191505b8181101562000202575f8155600101620001ed565b50505b505050565b81516001600160401b0381111562000226576200022662000059565b6200023e8162000237845462000180565b84620001ba565b602080601f83116001811462000274575f84156200025c5750858301515b5f19600386901b1c1916600185901b178555620002ce565b5f85815260208120601f198616915b82811015620002a45788860151825594840194600190910190840162000283565b5085821015620002c257878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b61080780620002e45f395ff3fe608060405234801561000f575f80fd5b50600436106100a6575f3560e01c8063395093511161006e578063395093511461011f57806370a082311461013257806395d89b411461015a578063a457c2d714610162578063a9059cbb14610175578063dd62ed3e14610188575f80fd5b806306fdde03146100aa578063095ea7b3146100c857806318160ddd146100eb57806323b872dd146100fd578063313ce56714610110575b5f80fd5b6100b261019b565b6040516100bf919061068a565b60405180910390f35b6100db6100d63660046106f1565b61022b565b60405190151581526020016100bf565b6002545b6040519081526020016100bf565b6100db61010b366004610719565b610244565b604051601281526020016100bf565b6100db61012d3660046106f1565b610267565b6100ef610140366004610752565b6001600160a01b03165f9081526020819052604090205490565b6100b2610288565b6100db6101703660046106f1565b610297565b6100db6101833660046106f1565b610316565b6100ef610196366004610772565b610323565b6060600380546101aa906107a3565b80601f01602080910402602001604051908101604052809291908181526020018280546101d6906107a3565b80156102215780601f106101f857610100808354040283529160200191610221565b820191905f5260205f20905b81548152906001019060200180831161020457829003601f168201915b5050505050905090565b5f3361023881858561034d565b60019150505b92915050565b5f33610251858285610470565b61025c8585856104e8565b506001949350505050565b5f336102388185856102798383610323565b61028391906107db565b61034d565b6060600480546101aa906107a3565b5f33816102a48286610323565b9050838110156103095760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b61025c828686840361034d565b5f336102388185856104e8565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b6001600160a01b0383166103af5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610300565b6001600160a01b0382166104105760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610300565b6001600160a01b038381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b5f61047b8484610323565b90505f1981146104e257818110156104d55760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610300565b6104e2848484840361034d565b50505050565b6001600160a01b03831661054c5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610300565b6001600160a01b0382166105ae5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610300565b6001600160a01b0383165f90815260208190526040902054818110156106255760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610300565b6001600160a01b038481165f81815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a36104e2565b5f602080835283518060208501525f5b818110156106b65785810183015185820160400152820161069a565b505f604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146106ec575f80fd5b919050565b5f8060408385031215610702575f80fd5b61070b836106d6565b946020939093013593505050565b5f805f6060848603121561072b575f80fd5b610734846106d6565b9250610742602085016106d6565b9150604084013590509250925092565b5f60208284031215610762575f80fd5b61076b826106d6565b9392505050565b5f8060408385031215610783575f80fd5b61078c836106d6565b915061079a602084016106d6565b90509250929050565b600181811c908216806107b757607f821691505b6020821081036107d557634e487b7160e01b5f52602260045260245ffd5b50919050565b8082018082111561023e57634e487b7160e01b5f52601160045260245ffdfea164736f6c6343000818000a", + "deployedBytecode": "0x608060405234801561000f575f80fd5b50600436106100a6575f3560e01c8063395093511161006e578063395093511461011f57806370a082311461013257806395d89b411461015a578063a457c2d714610162578063a9059cbb14610175578063dd62ed3e14610188575f80fd5b806306fdde03146100aa578063095ea7b3146100c857806318160ddd146100eb57806323b872dd146100fd578063313ce56714610110575b5f80fd5b6100b261019b565b6040516100bf919061068a565b60405180910390f35b6100db6100d63660046106f1565b61022b565b60405190151581526020016100bf565b6002545b6040519081526020016100bf565b6100db61010b366004610719565b610244565b604051601281526020016100bf565b6100db61012d3660046106f1565b610267565b6100ef610140366004610752565b6001600160a01b03165f9081526020819052604090205490565b6100b2610288565b6100db6101703660046106f1565b610297565b6100db6101833660046106f1565b610316565b6100ef610196366004610772565b610323565b6060600380546101aa906107a3565b80601f01602080910402602001604051908101604052809291908181526020018280546101d6906107a3565b80156102215780601f106101f857610100808354040283529160200191610221565b820191905f5260205f20905b81548152906001019060200180831161020457829003601f168201915b5050505050905090565b5f3361023881858561034d565b60019150505b92915050565b5f33610251858285610470565b61025c8585856104e8565b506001949350505050565b5f336102388185856102798383610323565b61028391906107db565b61034d565b6060600480546101aa906107a3565b5f33816102a48286610323565b9050838110156103095760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b61025c828686840361034d565b5f336102388185856104e8565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b6001600160a01b0383166103af5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610300565b6001600160a01b0382166104105760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610300565b6001600160a01b038381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b5f61047b8484610323565b90505f1981146104e257818110156104d55760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610300565b6104e2848484840361034d565b50505050565b6001600160a01b03831661054c5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610300565b6001600160a01b0382166105ae5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610300565b6001600160a01b0383165f90815260208190526040902054818110156106255760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610300565b6001600160a01b038481165f81815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a36104e2565b5f602080835283518060208501525f5b818110156106b65785810183015185820160400152820161069a565b505f604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146106ec575f80fd5b919050565b5f8060408385031215610702575f80fd5b61070b836106d6565b946020939093013593505050565b5f805f6060848603121561072b575f80fd5b610734846106d6565b9250610742602085016106d6565b9150604084013590509250925092565b5f60208284031215610762575f80fd5b61076b826106d6565b9392505050565b5f8060408385031215610783575f80fd5b61078c836106d6565b915061079a602084016106d6565b90509250929050565b600181811c908216806107b757607f821691505b6020821081036107d557634e487b7160e01b5f52602260045260245ffd5b50919050565b8082018082111561023e57634e487b7160e01b5f52601160045260245ffdfea164736f6c6343000818000a", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/artifacts/ERC20Recoverable.json b/artifacts/ERC20Recoverable.json index fb5becb9..1a376bee 100644 --- a/artifacts/ERC20Recoverable.json +++ b/artifacts/ERC20Recoverable.json @@ -79,8 +79,8 @@ "type": "function" } ], - "bytecode": "0x608060405234801561001057600080fd5b5061001a3361001f565b61006f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6103068061007e6000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c80635d3590d514610051578063715018a6146100665780638da5cb5b1461006e578063f2fde38b1461008d575b600080fd5b61006461005f366004610279565b6100a0565b005b610064610121565b600054604080516001600160a01b039092168252519081900360200190f35b61006461009b3660046102b5565b610135565b6100a86101b3565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303816000875af11580156100f7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061011b91906102d7565b50505050565b6101296101b3565b610133600061020d565b565b61013d6101b3565b6001600160a01b0381166101a75760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b6101b08161020d565b50565b6000546001600160a01b031633146101335760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161019e565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80356001600160a01b038116811461027457600080fd5b919050565b60008060006060848603121561028e57600080fd5b6102978461025d565b92506102a56020850161025d565b9150604084013590509250925092565b6000602082840312156102c757600080fd5b6102d08261025d565b9392505050565b6000602082840312156102e957600080fd5b815180151581146102d057600080fdfea164736f6c6343000811000a", - "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061004c5760003560e01c80635d3590d514610051578063715018a6146100665780638da5cb5b1461006e578063f2fde38b1461008d575b600080fd5b61006461005f366004610279565b6100a0565b005b610064610121565b600054604080516001600160a01b039092168252519081900360200190f35b61006461009b3660046102b5565b610135565b6100a86101b3565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303816000875af11580156100f7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061011b91906102d7565b50505050565b6101296101b3565b610133600061020d565b565b61013d6101b3565b6001600160a01b0381166101a75760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b6101b08161020d565b50565b6000546001600160a01b031633146101335760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161019e565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80356001600160a01b038116811461027457600080fd5b919050565b60008060006060848603121561028e57600080fd5b6102978461025d565b92506102a56020850161025d565b9150604084013590509250925092565b6000602082840312156102c757600080fd5b6102d08261025d565b9392505050565b6000602082840312156102e957600080fd5b815180151581146102d057600080fdfea164736f6c6343000811000a", + "bytecode": "0x608060405234801561000f575f80fd5b506100193361001e565b61006d565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6102f38061007a5f395ff3fe608060405234801561000f575f80fd5b506004361061004a575f3560e01c80635d3590d51461004e578063715018a6146100635780638da5cb5b1461006b578063f2fde38b14610089575b5f80fd5b61006161005c36600461026e565b61009c565b005b61006161011a565b5f54604080516001600160a01b039092168252519081900360200190f35b6100616100973660046102a7565b61012d565b6100a46101ab565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af11580156100f0573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061011491906102c7565b50505050565b6101226101ab565b61012b5f610204565b565b6101356101ab565b6001600160a01b03811661019f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b6101a881610204565b50565b5f546001600160a01b0316331461012b5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610196565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80356001600160a01b0381168114610269575f80fd5b919050565b5f805f60608486031215610280575f80fd5b61028984610253565b925061029760208501610253565b9150604084013590509250925092565b5f602082840312156102b7575f80fd5b6102c082610253565b9392505050565b5f602082840312156102d7575f80fd5b815180151581146102c0575f80fdfea164736f6c6343000818000a", + "deployedBytecode": "0x608060405234801561000f575f80fd5b506004361061004a575f3560e01c80635d3590d51461004e578063715018a6146100635780638da5cb5b1461006b578063f2fde38b14610089575b5f80fd5b61006161005c36600461026e565b61009c565b005b61006161011a565b5f54604080516001600160a01b039092168252519081900360200190f35b6100616100973660046102a7565b61012d565b6100a46101ab565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af11580156100f0573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061011491906102c7565b50505050565b6101226101ab565b61012b5f610204565b565b6101356101ab565b6001600160a01b03811661019f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b6101a881610204565b50565b5f546001600160a01b0316331461012b5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610196565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80356001600160a01b0381168114610269575f80fd5b919050565b5f805f60608486031215610280575f80fd5b61028984610253565b925061029760208501610253565b9150604084013590509250925092565b5f602082840312156102b7575f80fd5b6102c082610253565b9392505050565b5f602082840312156102d7575f80fd5b815180151581146102c0575f80fdfea164736f6c6343000818000a", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/artifacts/ERC721.json b/artifacts/ERC721.json index 15b852a0..1a6d2d17 100644 --- a/artifacts/ERC721.json +++ b/artifacts/ERC721.json @@ -350,8 +350,8 @@ "type": "function" } ], - "bytecode": "0x60806040523480156200001157600080fd5b50604051620013be380380620013be83398101604081905262000034916200011f565b600062000042838262000218565b50600162000051828262000218565b505050620002e4565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008257600080fd5b81516001600160401b03808211156200009f576200009f6200005a565b604051601f8301601f19908116603f01168101908282118183101715620000ca57620000ca6200005a565b81604052838152602092508683858801011115620000e757600080fd5b600091505b838210156200010b5785820183015181830184015290820190620000ec565b600093810190920192909252949350505050565b600080604083850312156200013357600080fd5b82516001600160401b03808211156200014b57600080fd5b620001598683870162000070565b935060208501519150808211156200017057600080fd5b506200017f8582860162000070565b9150509250929050565b600181811c908216806200019e57607f821691505b602082108103620001bf57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200021357600081815260208120601f850160051c81016020861015620001ee5750805b601f850160051c820191505b818110156200020f57828155600101620001fa565b5050505b505050565b81516001600160401b038111156200023457620002346200005a565b6200024c8162000245845462000189565b84620001c5565b602080601f8311600181146200028457600084156200026b5750858301515b600019600386901b1c1916600185901b1785556200020f565b600085815260208120601f198616915b82811015620002b55788860151825594840194600190910190840162000294565b5085821015620002d45787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6110ca80620002f46000396000f3fe608060405234801561001057600080fd5b50600436106100cf5760003560e01c80636352211e1161008c578063a22cb46511610066578063a22cb465146101b3578063b88d4fde146101c6578063c87b56dd146101d9578063e985e9c5146101ec57600080fd5b80636352211e1461017757806370a082311461018a57806395d89b41146101ab57600080fd5b806301ffc9a7146100d457806306fdde03146100fc578063081812fc14610111578063095ea7b31461013c57806323b872dd1461015157806342842e0e14610164575b600080fd5b6100e76100e2366004610c7f565b610228565b60405190151581526020015b60405180910390f35b61010461027a565b6040516100f39190610cec565b61012461011f366004610cff565b61030c565b6040516001600160a01b0390911681526020016100f3565b61014f61014a366004610d34565b610333565b005b61014f61015f366004610d5e565b61044d565b61014f610172366004610d5e565b61047e565b610124610185366004610cff565b610499565b61019d610198366004610d9a565b6104f9565b6040519081526020016100f3565b61010461057f565b61014f6101c1366004610db5565b61058e565b61014f6101d4366004610e07565b61059d565b6101046101e7366004610cff565b6105d5565b6100e76101fa366004610ee3565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b60006001600160e01b031982166380ac58cd60e01b148061025957506001600160e01b03198216635b5e139f60e01b145b8061027457506301ffc9a760e01b6001600160e01b03198316145b92915050565b60606000805461028990610f16565b80601f01602080910402602001604051908101604052809291908181526020018280546102b590610f16565b80156103025780601f106102d757610100808354040283529160200191610302565b820191906000526020600020905b8154815290600101906020018083116102e557829003601f168201915b5050505050905090565b600061031782610649565b506000908152600460205260409020546001600160a01b031690565b600061033e82610499565b9050806001600160a01b0316836001600160a01b0316036103b05760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084015b60405180910390fd5b336001600160a01b03821614806103cc57506103cc81336101fa565b61043e5760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016103a7565b61044883836106ab565b505050565b6104573382610719565b6104735760405162461bcd60e51b81526004016103a790610f50565b610448838383610798565b6104488383836040518060200160405280600081525061059d565b6000818152600260205260408120546001600160a01b0316806102745760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016103a7565b60006001600160a01b0382166105635760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b60648201526084016103a7565b506001600160a01b031660009081526003602052604090205490565b60606001805461028990610f16565b6105993383836108fc565b5050565b6105a73383610719565b6105c35760405162461bcd60e51b81526004016103a790610f50565b6105cf848484846109ca565b50505050565b60606105e082610649565b60006105f760408051602081019091526000815290565b905060008151116106175760405180602001604052806000815250610642565b80610621846109fd565b604051602001610632929190610f9d565b6040516020818303038152906040525b9392505050565b6000818152600260205260409020546001600160a01b03166106a85760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016103a7565b50565b600081815260046020526040902080546001600160a01b0319166001600160a01b03841690811790915581906106e082610499565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60008061072583610499565b9050806001600160a01b0316846001600160a01b0316148061076c57506001600160a01b0380821660009081526005602090815260408083209388168352929052205460ff165b806107905750836001600160a01b03166107858461030c565b6001600160a01b0316145b949350505050565b826001600160a01b03166107ab82610499565b6001600160a01b0316146107d15760405162461bcd60e51b81526004016103a790610fcc565b6001600160a01b0382166108335760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b60648201526084016103a7565b826001600160a01b031661084682610499565b6001600160a01b03161461086c5760405162461bcd60e51b81526004016103a790610fcc565b600081815260046020908152604080832080546001600160a01b03199081169091556001600160a01b0387811680865260038552838620805460001901905590871680865283862080546001019055868652600290945282852080549092168417909155905184937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b816001600160a01b0316836001600160a01b03160361095d5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c65720000000000000060448201526064016103a7565b6001600160a01b03838116600081815260056020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6109d5848484610798565b6109e184848484610a90565b6105cf5760405162461bcd60e51b81526004016103a790611011565b60606000610a0a83610b91565b600101905060008167ffffffffffffffff811115610a2a57610a2a610df1565b6040519080825280601f01601f191660200182016040528015610a54576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a8504945084610a5e57509392505050565b60006001600160a01b0384163b15610b8657604051630a85bd0160e11b81526001600160a01b0385169063150b7a0290610ad4903390899088908890600401611063565b6020604051808303816000875af1925050508015610b0f575060408051601f3d908101601f19168201909252610b0c918101906110a0565b60015b610b6c573d808015610b3d576040519150601f19603f3d011682016040523d82523d6000602084013e610b42565b606091505b508051600003610b645760405162461bcd60e51b81526004016103a790611011565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610790565b506001949350505050565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b8310610bd05772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef81000000008310610bfc576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc100008310610c1a57662386f26fc10000830492506010015b6305f5e1008310610c32576305f5e100830492506008015b6127108310610c4657612710830492506004015b60648310610c58576064830492506002015b600a83106102745760010192915050565b6001600160e01b0319811681146106a857600080fd5b600060208284031215610c9157600080fd5b813561064281610c69565b60005b83811015610cb7578181015183820152602001610c9f565b50506000910152565b60008151808452610cd8816020860160208601610c9c565b601f01601f19169290920160200192915050565b6020815260006106426020830184610cc0565b600060208284031215610d1157600080fd5b5035919050565b80356001600160a01b0381168114610d2f57600080fd5b919050565b60008060408385031215610d4757600080fd5b610d5083610d18565b946020939093013593505050565b600080600060608486031215610d7357600080fd5b610d7c84610d18565b9250610d8a60208501610d18565b9150604084013590509250925092565b600060208284031215610dac57600080fd5b61064282610d18565b60008060408385031215610dc857600080fd5b610dd183610d18565b915060208301358015158114610de657600080fd5b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b60008060008060808587031215610e1d57600080fd5b610e2685610d18565b9350610e3460208601610d18565b925060408501359150606085013567ffffffffffffffff80821115610e5857600080fd5b818701915087601f830112610e6c57600080fd5b813581811115610e7e57610e7e610df1565b604051601f8201601f19908116603f01168101908382118183101715610ea657610ea6610df1565b816040528281528a6020848701011115610ebf57600080fd5b82602086016020830137600060208483010152809550505050505092959194509250565b60008060408385031215610ef657600080fd5b610eff83610d18565b9150610f0d60208401610d18565b90509250929050565b600181811c90821680610f2a57607f821691505b602082108103610f4a57634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252602d908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526c1c881bdc88185c1c1c9bdd9959609a1b606082015260800190565b60008351610faf818460208801610c9c565b835190830190610fc3818360208801610c9c565b01949350505050565b60208082526025908201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060408201526437bbb732b960d91b606082015260800190565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061109690830184610cc0565b9695505050505050565b6000602082840312156110b257600080fd5b815161064281610c6956fea164736f6c6343000811000a", - "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100cf5760003560e01c80636352211e1161008c578063a22cb46511610066578063a22cb465146101b3578063b88d4fde146101c6578063c87b56dd146101d9578063e985e9c5146101ec57600080fd5b80636352211e1461017757806370a082311461018a57806395d89b41146101ab57600080fd5b806301ffc9a7146100d457806306fdde03146100fc578063081812fc14610111578063095ea7b31461013c57806323b872dd1461015157806342842e0e14610164575b600080fd5b6100e76100e2366004610c7f565b610228565b60405190151581526020015b60405180910390f35b61010461027a565b6040516100f39190610cec565b61012461011f366004610cff565b61030c565b6040516001600160a01b0390911681526020016100f3565b61014f61014a366004610d34565b610333565b005b61014f61015f366004610d5e565b61044d565b61014f610172366004610d5e565b61047e565b610124610185366004610cff565b610499565b61019d610198366004610d9a565b6104f9565b6040519081526020016100f3565b61010461057f565b61014f6101c1366004610db5565b61058e565b61014f6101d4366004610e07565b61059d565b6101046101e7366004610cff565b6105d5565b6100e76101fa366004610ee3565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b60006001600160e01b031982166380ac58cd60e01b148061025957506001600160e01b03198216635b5e139f60e01b145b8061027457506301ffc9a760e01b6001600160e01b03198316145b92915050565b60606000805461028990610f16565b80601f01602080910402602001604051908101604052809291908181526020018280546102b590610f16565b80156103025780601f106102d757610100808354040283529160200191610302565b820191906000526020600020905b8154815290600101906020018083116102e557829003601f168201915b5050505050905090565b600061031782610649565b506000908152600460205260409020546001600160a01b031690565b600061033e82610499565b9050806001600160a01b0316836001600160a01b0316036103b05760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084015b60405180910390fd5b336001600160a01b03821614806103cc57506103cc81336101fa565b61043e5760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016103a7565b61044883836106ab565b505050565b6104573382610719565b6104735760405162461bcd60e51b81526004016103a790610f50565b610448838383610798565b6104488383836040518060200160405280600081525061059d565b6000818152600260205260408120546001600160a01b0316806102745760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016103a7565b60006001600160a01b0382166105635760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b60648201526084016103a7565b506001600160a01b031660009081526003602052604090205490565b60606001805461028990610f16565b6105993383836108fc565b5050565b6105a73383610719565b6105c35760405162461bcd60e51b81526004016103a790610f50565b6105cf848484846109ca565b50505050565b60606105e082610649565b60006105f760408051602081019091526000815290565b905060008151116106175760405180602001604052806000815250610642565b80610621846109fd565b604051602001610632929190610f9d565b6040516020818303038152906040525b9392505050565b6000818152600260205260409020546001600160a01b03166106a85760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016103a7565b50565b600081815260046020526040902080546001600160a01b0319166001600160a01b03841690811790915581906106e082610499565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60008061072583610499565b9050806001600160a01b0316846001600160a01b0316148061076c57506001600160a01b0380821660009081526005602090815260408083209388168352929052205460ff165b806107905750836001600160a01b03166107858461030c565b6001600160a01b0316145b949350505050565b826001600160a01b03166107ab82610499565b6001600160a01b0316146107d15760405162461bcd60e51b81526004016103a790610fcc565b6001600160a01b0382166108335760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b60648201526084016103a7565b826001600160a01b031661084682610499565b6001600160a01b03161461086c5760405162461bcd60e51b81526004016103a790610fcc565b600081815260046020908152604080832080546001600160a01b03199081169091556001600160a01b0387811680865260038552838620805460001901905590871680865283862080546001019055868652600290945282852080549092168417909155905184937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b816001600160a01b0316836001600160a01b03160361095d5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c65720000000000000060448201526064016103a7565b6001600160a01b03838116600081815260056020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6109d5848484610798565b6109e184848484610a90565b6105cf5760405162461bcd60e51b81526004016103a790611011565b60606000610a0a83610b91565b600101905060008167ffffffffffffffff811115610a2a57610a2a610df1565b6040519080825280601f01601f191660200182016040528015610a54576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a8504945084610a5e57509392505050565b60006001600160a01b0384163b15610b8657604051630a85bd0160e11b81526001600160a01b0385169063150b7a0290610ad4903390899088908890600401611063565b6020604051808303816000875af1925050508015610b0f575060408051601f3d908101601f19168201909252610b0c918101906110a0565b60015b610b6c573d808015610b3d576040519150601f19603f3d011682016040523d82523d6000602084013e610b42565b606091505b508051600003610b645760405162461bcd60e51b81526004016103a790611011565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610790565b506001949350505050565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b8310610bd05772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef81000000008310610bfc576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc100008310610c1a57662386f26fc10000830492506010015b6305f5e1008310610c32576305f5e100830492506008015b6127108310610c4657612710830492506004015b60648310610c58576064830492506002015b600a83106102745760010192915050565b6001600160e01b0319811681146106a857600080fd5b600060208284031215610c9157600080fd5b813561064281610c69565b60005b83811015610cb7578181015183820152602001610c9f565b50506000910152565b60008151808452610cd8816020860160208601610c9c565b601f01601f19169290920160200192915050565b6020815260006106426020830184610cc0565b600060208284031215610d1157600080fd5b5035919050565b80356001600160a01b0381168114610d2f57600080fd5b919050565b60008060408385031215610d4757600080fd5b610d5083610d18565b946020939093013593505050565b600080600060608486031215610d7357600080fd5b610d7c84610d18565b9250610d8a60208501610d18565b9150604084013590509250925092565b600060208284031215610dac57600080fd5b61064282610d18565b60008060408385031215610dc857600080fd5b610dd183610d18565b915060208301358015158114610de657600080fd5b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b60008060008060808587031215610e1d57600080fd5b610e2685610d18565b9350610e3460208601610d18565b925060408501359150606085013567ffffffffffffffff80821115610e5857600080fd5b818701915087601f830112610e6c57600080fd5b813581811115610e7e57610e7e610df1565b604051601f8201601f19908116603f01168101908382118183101715610ea657610ea6610df1565b816040528281528a6020848701011115610ebf57600080fd5b82602086016020830137600060208483010152809550505050505092959194509250565b60008060408385031215610ef657600080fd5b610eff83610d18565b9150610f0d60208401610d18565b90509250929050565b600181811c90821680610f2a57607f821691505b602082108103610f4a57634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252602d908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526c1c881bdc88185c1c1c9bdd9959609a1b606082015260800190565b60008351610faf818460208801610c9c565b835190830190610fc3818360208801610c9c565b01949350505050565b60208082526025908201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060408201526437bbb732b960d91b606082015260800190565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061109690830184610cc0565b9695505050505050565b6000602082840312156110b257600080fd5b815161064281610c6956fea164736f6c6343000811000a", + "bytecode": "0x608060405234801562000010575f80fd5b506040516200136438038062001364833981016040819052620000339162000119565b5f62000040838262000209565b5060016200004f828262000209565b505050620002d5565b634e487b7160e01b5f52604160045260245ffd5b5f82601f8301126200007c575f80fd5b81516001600160401b038082111562000099576200009962000058565b604051601f8301601f19908116603f01168101908282118183101715620000c457620000c462000058565b8160405283815260209250866020858801011115620000e1575f80fd5b5f91505b83821015620001045785820183015181830184015290820190620000e5565b5f602085830101528094505050505092915050565b5f80604083850312156200012b575f80fd5b82516001600160401b038082111562000142575f80fd5b62000150868387016200006c565b9350602085015191508082111562000166575f80fd5b5062000175858286016200006c565b9150509250929050565b600181811c908216806200019457607f821691505b602082108103620001b357634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156200020457805f5260205f20601f840160051c81016020851015620001e05750805b601f840160051c820191505b8181101562000201575f8155600101620001ec565b50505b505050565b81516001600160401b0381111562000225576200022562000058565b6200023d816200023684546200017f565b84620001b9565b602080601f83116001811462000273575f84156200025b5750858301515b5f19600386901b1c1916600185901b178555620002cd565b5f85815260208120601f198616915b82811015620002a35788860151825594840194600190910190840162000282565b5085821015620002c157878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b61108180620002e35f395ff3fe608060405234801561000f575f80fd5b50600436106100cb575f3560e01c80636352211e11610088578063a22cb46511610063578063a22cb465146101ae578063b88d4fde146101c1578063c87b56dd146101d4578063e985e9c5146101e7575f80fd5b80636352211e1461017257806370a082311461018557806395d89b41146101a6575f80fd5b806301ffc9a7146100cf57806306fdde03146100f7578063081812fc1461010c578063095ea7b31461013757806323b872dd1461014c57806342842e0e1461015f575b5f80fd5b6100e26100dd366004610c5a565b610222565b60405190151581526020015b60405180910390f35b6100ff610273565b6040516100ee9190610cc2565b61011f61011a366004610cd4565b610302565b6040516001600160a01b0390911681526020016100ee565b61014a610145366004610d06565b610327565b005b61014a61015a366004610d2e565b610440565b61014a61016d366004610d2e565b610471565b61011f610180366004610cd4565b61048b565b610198610193366004610d67565b6104ea565b6040519081526020016100ee565b6100ff61056e565b61014a6101bc366004610d80565b61057d565b61014a6101cf366004610dcd565b61058c565b6100ff6101e2366004610cd4565b6105c4565b6100e26101f5366004610ea2565b6001600160a01b039182165f90815260056020908152604080832093909416825291909152205460ff1690565b5f6001600160e01b031982166380ac58cd60e01b148061025257506001600160e01b03198216635b5e139f60e01b145b8061026d57506301ffc9a760e01b6001600160e01b03198316145b92915050565b60605f805461028190610ed3565b80601f01602080910402602001604051908101604052809291908181526020018280546102ad90610ed3565b80156102f85780601f106102cf576101008083540402835291602001916102f8565b820191905f5260205f20905b8154815290600101906020018083116102db57829003601f168201915b5050505050905090565b5f61030c82610634565b505f908152600460205260409020546001600160a01b031690565b5f6103318261048b565b9050806001600160a01b0316836001600160a01b0316036103a35760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084015b60405180910390fd5b336001600160a01b03821614806103bf57506103bf81336101f5565b6104315760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c000000606482015260840161039a565b61043b8383610695565b505050565b61044a3382610702565b6104665760405162461bcd60e51b815260040161039a90610f0b565b61043b83838361077f565b61043b83838360405180602001604052805f81525061058c565b5f818152600260205260408120546001600160a01b03168061026d5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b604482015260640161039a565b5f6001600160a01b0382166105535760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b606482015260840161039a565b506001600160a01b03165f9081526003602052604090205490565b60606001805461028190610ed3565b6105883383836108e1565b5050565b6105963383610702565b6105b25760405162461bcd60e51b815260040161039a90610f0b565b6105be848484846109ae565b50505050565b60606105cf82610634565b5f6105e460408051602081019091525f815290565b90505f8151116106025760405180602001604052805f81525061062d565b8061060c846109e1565b60405160200161061d929190610f58565b6040516020818303038152906040525b9392505050565b5f818152600260205260409020546001600160a01b03166106925760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b604482015260640161039a565b50565b5f81815260046020526040902080546001600160a01b0319166001600160a01b03841690811790915581906106c98261048b565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b5f8061070d8361048b565b9050806001600160a01b0316846001600160a01b0316148061075357506001600160a01b038082165f9081526005602090815260408083209388168352929052205460ff165b806107775750836001600160a01b031661076c84610302565b6001600160a01b0316145b949350505050565b826001600160a01b03166107928261048b565b6001600160a01b0316146107b85760405162461bcd60e51b815260040161039a90610f86565b6001600160a01b03821661081a5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b606482015260840161039a565b826001600160a01b031661082d8261048b565b6001600160a01b0316146108535760405162461bcd60e51b815260040161039a90610f86565b5f81815260046020908152604080832080546001600160a01b03199081169091556001600160a01b038781168086526003855283862080545f1901905590871680865283862080546001019055868652600290945282852080549092168417909155905184937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b816001600160a01b0316836001600160a01b0316036109425760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604482015260640161039a565b6001600160a01b038381165f81815260056020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6109b984848461077f565b6109c584848484610a71565b6105be5760405162461bcd60e51b815260040161039a90610fcb565b60605f6109ed83610b6e565b60010190505f8167ffffffffffffffff811115610a0c57610a0c610db9565b6040519080825280601f01601f191660200182016040528015610a36576020820181803683370190505b5090508181016020015b5f19016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a8504945084610a4057509392505050565b5f6001600160a01b0384163b15610b6357604051630a85bd0160e11b81526001600160a01b0385169063150b7a0290610ab490339089908890889060040161101d565b6020604051808303815f875af1925050508015610aee575060408051601f3d908101601f19168201909252610aeb91810190611059565b60015b610b49573d808015610b1b576040519150601f19603f3d011682016040523d82523d5f602084013e610b20565b606091505b5080515f03610b415760405162461bcd60e51b815260040161039a90610fcb565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610777565b506001949350505050565b5f8072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b8310610bac5772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef81000000008310610bd8576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc100008310610bf657662386f26fc10000830492506010015b6305f5e1008310610c0e576305f5e100830492506008015b6127108310610c2257612710830492506004015b60648310610c34576064830492506002015b600a831061026d5760010192915050565b6001600160e01b031981168114610692575f80fd5b5f60208284031215610c6a575f80fd5b813561062d81610c45565b5f5b83811015610c8f578181015183820152602001610c77565b50505f910152565b5f8151808452610cae816020860160208601610c75565b601f01601f19169290920160200192915050565b602081525f61062d6020830184610c97565b5f60208284031215610ce4575f80fd5b5035919050565b80356001600160a01b0381168114610d01575f80fd5b919050565b5f8060408385031215610d17575f80fd5b610d2083610ceb565b946020939093013593505050565b5f805f60608486031215610d40575f80fd5b610d4984610ceb565b9250610d5760208501610ceb565b9150604084013590509250925092565b5f60208284031215610d77575f80fd5b61062d82610ceb565b5f8060408385031215610d91575f80fd5b610d9a83610ceb565b915060208301358015158114610dae575f80fd5b809150509250929050565b634e487b7160e01b5f52604160045260245ffd5b5f805f8060808587031215610de0575f80fd5b610de985610ceb565b9350610df760208601610ceb565b925060408501359150606085013567ffffffffffffffff80821115610e1a575f80fd5b818701915087601f830112610e2d575f80fd5b813581811115610e3f57610e3f610db9565b604051601f8201601f19908116603f01168101908382118183101715610e6757610e67610db9565b816040528281528a6020848701011115610e7f575f80fd5b826020860160208301375f60208483010152809550505050505092959194509250565b5f8060408385031215610eb3575f80fd5b610ebc83610ceb565b9150610eca60208401610ceb565b90509250929050565b600181811c90821680610ee757607f821691505b602082108103610f0557634e487b7160e01b5f52602260045260245ffd5b50919050565b6020808252602d908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526c1c881bdc88185c1c1c9bdd9959609a1b606082015260800190565b5f8351610f69818460208801610c75565b835190830190610f7d818360208801610c75565b01949350505050565b60208082526025908201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060408201526437bbb732b960d91b606082015260800190565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6001600160a01b03858116825284166020820152604081018390526080606082018190525f9061104f90830184610c97565b9695505050505050565b5f60208284031215611069575f80fd5b815161062d81610c4556fea164736f6c6343000818000a", + "deployedBytecode": "0x608060405234801561000f575f80fd5b50600436106100cb575f3560e01c80636352211e11610088578063a22cb46511610063578063a22cb465146101ae578063b88d4fde146101c1578063c87b56dd146101d4578063e985e9c5146101e7575f80fd5b80636352211e1461017257806370a082311461018557806395d89b41146101a6575f80fd5b806301ffc9a7146100cf57806306fdde03146100f7578063081812fc1461010c578063095ea7b31461013757806323b872dd1461014c57806342842e0e1461015f575b5f80fd5b6100e26100dd366004610c5a565b610222565b60405190151581526020015b60405180910390f35b6100ff610273565b6040516100ee9190610cc2565b61011f61011a366004610cd4565b610302565b6040516001600160a01b0390911681526020016100ee565b61014a610145366004610d06565b610327565b005b61014a61015a366004610d2e565b610440565b61014a61016d366004610d2e565b610471565b61011f610180366004610cd4565b61048b565b610198610193366004610d67565b6104ea565b6040519081526020016100ee565b6100ff61056e565b61014a6101bc366004610d80565b61057d565b61014a6101cf366004610dcd565b61058c565b6100ff6101e2366004610cd4565b6105c4565b6100e26101f5366004610ea2565b6001600160a01b039182165f90815260056020908152604080832093909416825291909152205460ff1690565b5f6001600160e01b031982166380ac58cd60e01b148061025257506001600160e01b03198216635b5e139f60e01b145b8061026d57506301ffc9a760e01b6001600160e01b03198316145b92915050565b60605f805461028190610ed3565b80601f01602080910402602001604051908101604052809291908181526020018280546102ad90610ed3565b80156102f85780601f106102cf576101008083540402835291602001916102f8565b820191905f5260205f20905b8154815290600101906020018083116102db57829003601f168201915b5050505050905090565b5f61030c82610634565b505f908152600460205260409020546001600160a01b031690565b5f6103318261048b565b9050806001600160a01b0316836001600160a01b0316036103a35760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084015b60405180910390fd5b336001600160a01b03821614806103bf57506103bf81336101f5565b6104315760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c000000606482015260840161039a565b61043b8383610695565b505050565b61044a3382610702565b6104665760405162461bcd60e51b815260040161039a90610f0b565b61043b83838361077f565b61043b83838360405180602001604052805f81525061058c565b5f818152600260205260408120546001600160a01b03168061026d5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b604482015260640161039a565b5f6001600160a01b0382166105535760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b606482015260840161039a565b506001600160a01b03165f9081526003602052604090205490565b60606001805461028190610ed3565b6105883383836108e1565b5050565b6105963383610702565b6105b25760405162461bcd60e51b815260040161039a90610f0b565b6105be848484846109ae565b50505050565b60606105cf82610634565b5f6105e460408051602081019091525f815290565b90505f8151116106025760405180602001604052805f81525061062d565b8061060c846109e1565b60405160200161061d929190610f58565b6040516020818303038152906040525b9392505050565b5f818152600260205260409020546001600160a01b03166106925760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b604482015260640161039a565b50565b5f81815260046020526040902080546001600160a01b0319166001600160a01b03841690811790915581906106c98261048b565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b5f8061070d8361048b565b9050806001600160a01b0316846001600160a01b0316148061075357506001600160a01b038082165f9081526005602090815260408083209388168352929052205460ff165b806107775750836001600160a01b031661076c84610302565b6001600160a01b0316145b949350505050565b826001600160a01b03166107928261048b565b6001600160a01b0316146107b85760405162461bcd60e51b815260040161039a90610f86565b6001600160a01b03821661081a5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b606482015260840161039a565b826001600160a01b031661082d8261048b565b6001600160a01b0316146108535760405162461bcd60e51b815260040161039a90610f86565b5f81815260046020908152604080832080546001600160a01b03199081169091556001600160a01b038781168086526003855283862080545f1901905590871680865283862080546001019055868652600290945282852080549092168417909155905184937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b816001600160a01b0316836001600160a01b0316036109425760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604482015260640161039a565b6001600160a01b038381165f81815260056020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6109b984848461077f565b6109c584848484610a71565b6105be5760405162461bcd60e51b815260040161039a90610fcb565b60605f6109ed83610b6e565b60010190505f8167ffffffffffffffff811115610a0c57610a0c610db9565b6040519080825280601f01601f191660200182016040528015610a36576020820181803683370190505b5090508181016020015b5f19016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a8504945084610a4057509392505050565b5f6001600160a01b0384163b15610b6357604051630a85bd0160e11b81526001600160a01b0385169063150b7a0290610ab490339089908890889060040161101d565b6020604051808303815f875af1925050508015610aee575060408051601f3d908101601f19168201909252610aeb91810190611059565b60015b610b49573d808015610b1b576040519150601f19603f3d011682016040523d82523d5f602084013e610b20565b606091505b5080515f03610b415760405162461bcd60e51b815260040161039a90610fcb565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610777565b506001949350505050565b5f8072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b8310610bac5772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef81000000008310610bd8576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc100008310610bf657662386f26fc10000830492506010015b6305f5e1008310610c0e576305f5e100830492506008015b6127108310610c2257612710830492506004015b60648310610c34576064830492506002015b600a831061026d5760010192915050565b6001600160e01b031981168114610692575f80fd5b5f60208284031215610c6a575f80fd5b813561062d81610c45565b5f5b83811015610c8f578181015183820152602001610c77565b50505f910152565b5f8151808452610cae816020860160208601610c75565b601f01601f19169290920160200192915050565b602081525f61062d6020830184610c97565b5f60208284031215610ce4575f80fd5b5035919050565b80356001600160a01b0381168114610d01575f80fd5b919050565b5f8060408385031215610d17575f80fd5b610d2083610ceb565b946020939093013593505050565b5f805f60608486031215610d40575f80fd5b610d4984610ceb565b9250610d5760208501610ceb565b9150604084013590509250925092565b5f60208284031215610d77575f80fd5b61062d82610ceb565b5f8060408385031215610d91575f80fd5b610d9a83610ceb565b915060208301358015158114610dae575f80fd5b809150509250929050565b634e487b7160e01b5f52604160045260245ffd5b5f805f8060808587031215610de0575f80fd5b610de985610ceb565b9350610df760208601610ceb565b925060408501359150606085013567ffffffffffffffff80821115610e1a575f80fd5b818701915087601f830112610e2d575f80fd5b813581811115610e3f57610e3f610db9565b604051601f8201601f19908116603f01168101908382118183101715610e6757610e67610db9565b816040528281528a6020848701011115610e7f575f80fd5b826020860160208301375f60208483010152809550505050505092959194509250565b5f8060408385031215610eb3575f80fd5b610ebc83610ceb565b9150610eca60208401610ceb565b90509250929050565b600181811c90821680610ee757607f821691505b602082108103610f0557634e487b7160e01b5f52602260045260245ffd5b50919050565b6020808252602d908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526c1c881bdc88185c1c1c9bdd9959609a1b606082015260800190565b5f8351610f69818460208801610c75565b835190830190610f7d818360208801610c75565b01949350505050565b60208082526025908201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060408201526437bbb732b960d91b606082015260800190565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6001600160a01b03858116825284166020820152604081018390526080606082018190525f9061104f90830184610c97565b9695505050505050565b5f60208284031215611069575f80fd5b815161062d81610c4556fea164736f6c6343000818000a", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/artifacts/ERC721Upgradeable.json b/artifacts/ERC721Upgradeable.json index fca6923a..35ab4b3b 100644 --- a/artifacts/ERC721Upgradeable.json +++ b/artifacts/ERC721Upgradeable.json @@ -347,8 +347,8 @@ "type": "function" } ], - "bytecode": "0x608060405234801561001057600080fd5b506110e2806100206000396000f3fe608060405234801561001057600080fd5b50600436106100cf5760003560e01c80636352211e1161008c578063a22cb46511610066578063a22cb465146101b3578063b88d4fde146101c6578063c87b56dd146101d9578063e985e9c5146101ec57600080fd5b80636352211e1461017757806370a082311461018a57806395d89b41146101ab57600080fd5b806301ffc9a7146100d457806306fdde03146100fc578063081812fc14610111578063095ea7b31461013c57806323b872dd1461015157806342842e0e14610164575b600080fd5b6100e76100e2366004610c32565b6101ff565b60405190151581526020015b60405180910390f35b610104610251565b6040516100f39190610c9f565b61012461011f366004610cb2565b6102e3565b6040516001600160a01b0390911681526020016100f3565b61014f61014a366004610ce7565b61030a565b005b61014f61015f366004610d11565b610424565b61014f610172366004610d11565b610455565b610124610185366004610cb2565b610470565b61019d610198366004610d4d565b6104d0565b6040519081526020016100f3565b610104610556565b61014f6101c1366004610d68565b610565565b61014f6101d4366004610dba565b610574565b6101046101e7366004610cb2565b6105ac565b6100e76101fa366004610e96565b610620565b60006001600160e01b031982166380ac58cd60e01b148061023057506001600160e01b03198216635b5e139f60e01b145b8061024b57506301ffc9a760e01b6001600160e01b03198316145b92915050565b60606065805461026090610ec9565b80601f016020809104026020016040519081016040528092919081815260200182805461028c90610ec9565b80156102d95780601f106102ae576101008083540402835291602001916102d9565b820191906000526020600020905b8154815290600101906020018083116102bc57829003601f168201915b5050505050905090565b60006102ee8261064e565b506000908152606960205260409020546001600160a01b031690565b600061031582610470565b9050806001600160a01b0316836001600160a01b0316036103875760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084015b60405180910390fd5b336001600160a01b03821614806103a357506103a38133610620565b6104155760405162461bcd60e51b815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c0000606482015260840161037e565b61041f83836106b0565b505050565b61042e338261071e565b61044a5760405162461bcd60e51b815260040161037e90610f03565b61041f83838361077d565b61041f83838360405180602001604052806000815250610574565b6000818152606760205260408120546001600160a01b03168061024b5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b604482015260640161037e565b60006001600160a01b03821661053a5760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b606482015260840161037e565b506001600160a01b031660009081526068602052604090205490565b60606066805461026090610ec9565b610570338383610919565b5050565b61057e338361071e565b61059a5760405162461bcd60e51b815260040161037e90610f03565b6105a6848484846109e7565b50505050565b60606105b78261064e565b60006105ce60408051602081019091526000815290565b905060008151116105ee5760405180602001604052806000815250610619565b806105f884610a1a565b604051602001610609929190610f51565b6040516020818303038152906040525b9392505050565b6001600160a01b039182166000908152606a6020908152604080832093909416825291909152205460ff1690565b6000818152606760205260409020546001600160a01b03166106ad5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b604482015260640161037e565b50565b600081815260696020526040902080546001600160a01b0319166001600160a01b03841690811790915581906106e582610470565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60008061072a83610470565b9050806001600160a01b0316846001600160a01b0316148061075157506107518185610620565b806107755750836001600160a01b031661076a846102e3565b6001600160a01b0316145b949350505050565b826001600160a01b031661079082610470565b6001600160a01b0316146107f45760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b606482015260840161037e565b6001600160a01b0382166108565760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b606482015260840161037e565b6108616000826106b0565b6001600160a01b038316600090815260686020526040812080546001929061088a908490610f96565b90915550506001600160a01b03821660009081526068602052604081208054600192906108b8908490610fa9565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b816001600160a01b0316836001600160a01b03160361097a5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604482015260640161037e565b6001600160a01b038381166000818152606a6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6109f284848461077d565b6109fe84848484610b1b565b6105a65760405162461bcd60e51b815260040161037e90610fbc565b606081600003610a415750506040805180820190915260018152600360fc1b602082015290565b8160005b8115610a6b5780610a558161100e565b9150610a649050600a8361103d565b9150610a45565b60008167ffffffffffffffff811115610a8657610a86610da4565b6040519080825280601f01601f191660200182016040528015610ab0576020820181803683370190505b5090505b841561077557610ac5600183610f96565b9150610ad2600a86611051565b610add906030610fa9565b60f81b818381518110610af257610af2611065565b60200101906001600160f81b031916908160001a905350610b14600a8661103d565b9450610ab4565b60006001600160a01b0384163b15610c1157604051630a85bd0160e11b81526001600160a01b0385169063150b7a0290610b5f90339089908890889060040161107b565b6020604051808303816000875af1925050508015610b9a575060408051601f3d908101601f19168201909252610b97918101906110b8565b60015b610bf7573d808015610bc8576040519150601f19603f3d011682016040523d82523d6000602084013e610bcd565b606091505b508051600003610bef5760405162461bcd60e51b815260040161037e90610fbc565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610775565b506001949350505050565b6001600160e01b0319811681146106ad57600080fd5b600060208284031215610c4457600080fd5b813561061981610c1c565b60005b83811015610c6a578181015183820152602001610c52565b50506000910152565b60008151808452610c8b816020860160208601610c4f565b601f01601f19169290920160200192915050565b6020815260006106196020830184610c73565b600060208284031215610cc457600080fd5b5035919050565b80356001600160a01b0381168114610ce257600080fd5b919050565b60008060408385031215610cfa57600080fd5b610d0383610ccb565b946020939093013593505050565b600080600060608486031215610d2657600080fd5b610d2f84610ccb565b9250610d3d60208501610ccb565b9150604084013590509250925092565b600060208284031215610d5f57600080fd5b61061982610ccb565b60008060408385031215610d7b57600080fd5b610d8483610ccb565b915060208301358015158114610d9957600080fd5b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b60008060008060808587031215610dd057600080fd5b610dd985610ccb565b9350610de760208601610ccb565b925060408501359150606085013567ffffffffffffffff80821115610e0b57600080fd5b818701915087601f830112610e1f57600080fd5b813581811115610e3157610e31610da4565b604051601f8201601f19908116603f01168101908382118183101715610e5957610e59610da4565b816040528281528a6020848701011115610e7257600080fd5b82602086016020830137600060208483010152809550505050505092959194509250565b60008060408385031215610ea957600080fd5b610eb283610ccb565b9150610ec060208401610ccb565b90509250929050565b600181811c90821680610edd57607f821691505b602082108103610efd57634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252602e908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526d1c881b9bdc88185c1c1c9bdd995960921b606082015260800190565b60008351610f63818460208801610c4f565b835190830190610f77818360208801610c4f565b01949350505050565b634e487b7160e01b600052601160045260246000fd5b8181038181111561024b5761024b610f80565b8082018082111561024b5761024b610f80565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b60006001820161102057611020610f80565b5060010190565b634e487b7160e01b600052601260045260246000fd5b60008261104c5761104c611027565b500490565b60008261106057611060611027565b500690565b634e487b7160e01b600052603260045260246000fd5b6001600160a01b03858116825284166020820152604081018390526080606082018190526000906110ae90830184610c73565b9695505050505050565b6000602082840312156110ca57600080fd5b815161061981610c1c56fea164736f6c6343000811000a", - "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100cf5760003560e01c80636352211e1161008c578063a22cb46511610066578063a22cb465146101b3578063b88d4fde146101c6578063c87b56dd146101d9578063e985e9c5146101ec57600080fd5b80636352211e1461017757806370a082311461018a57806395d89b41146101ab57600080fd5b806301ffc9a7146100d457806306fdde03146100fc578063081812fc14610111578063095ea7b31461013c57806323b872dd1461015157806342842e0e14610164575b600080fd5b6100e76100e2366004610c32565b6101ff565b60405190151581526020015b60405180910390f35b610104610251565b6040516100f39190610c9f565b61012461011f366004610cb2565b6102e3565b6040516001600160a01b0390911681526020016100f3565b61014f61014a366004610ce7565b61030a565b005b61014f61015f366004610d11565b610424565b61014f610172366004610d11565b610455565b610124610185366004610cb2565b610470565b61019d610198366004610d4d565b6104d0565b6040519081526020016100f3565b610104610556565b61014f6101c1366004610d68565b610565565b61014f6101d4366004610dba565b610574565b6101046101e7366004610cb2565b6105ac565b6100e76101fa366004610e96565b610620565b60006001600160e01b031982166380ac58cd60e01b148061023057506001600160e01b03198216635b5e139f60e01b145b8061024b57506301ffc9a760e01b6001600160e01b03198316145b92915050565b60606065805461026090610ec9565b80601f016020809104026020016040519081016040528092919081815260200182805461028c90610ec9565b80156102d95780601f106102ae576101008083540402835291602001916102d9565b820191906000526020600020905b8154815290600101906020018083116102bc57829003601f168201915b5050505050905090565b60006102ee8261064e565b506000908152606960205260409020546001600160a01b031690565b600061031582610470565b9050806001600160a01b0316836001600160a01b0316036103875760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084015b60405180910390fd5b336001600160a01b03821614806103a357506103a38133610620565b6104155760405162461bcd60e51b815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c0000606482015260840161037e565b61041f83836106b0565b505050565b61042e338261071e565b61044a5760405162461bcd60e51b815260040161037e90610f03565b61041f83838361077d565b61041f83838360405180602001604052806000815250610574565b6000818152606760205260408120546001600160a01b03168061024b5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b604482015260640161037e565b60006001600160a01b03821661053a5760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b606482015260840161037e565b506001600160a01b031660009081526068602052604090205490565b60606066805461026090610ec9565b610570338383610919565b5050565b61057e338361071e565b61059a5760405162461bcd60e51b815260040161037e90610f03565b6105a6848484846109e7565b50505050565b60606105b78261064e565b60006105ce60408051602081019091526000815290565b905060008151116105ee5760405180602001604052806000815250610619565b806105f884610a1a565b604051602001610609929190610f51565b6040516020818303038152906040525b9392505050565b6001600160a01b039182166000908152606a6020908152604080832093909416825291909152205460ff1690565b6000818152606760205260409020546001600160a01b03166106ad5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b604482015260640161037e565b50565b600081815260696020526040902080546001600160a01b0319166001600160a01b03841690811790915581906106e582610470565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60008061072a83610470565b9050806001600160a01b0316846001600160a01b0316148061075157506107518185610620565b806107755750836001600160a01b031661076a846102e3565b6001600160a01b0316145b949350505050565b826001600160a01b031661079082610470565b6001600160a01b0316146107f45760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b606482015260840161037e565b6001600160a01b0382166108565760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b606482015260840161037e565b6108616000826106b0565b6001600160a01b038316600090815260686020526040812080546001929061088a908490610f96565b90915550506001600160a01b03821660009081526068602052604081208054600192906108b8908490610fa9565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b816001600160a01b0316836001600160a01b03160361097a5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604482015260640161037e565b6001600160a01b038381166000818152606a6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6109f284848461077d565b6109fe84848484610b1b565b6105a65760405162461bcd60e51b815260040161037e90610fbc565b606081600003610a415750506040805180820190915260018152600360fc1b602082015290565b8160005b8115610a6b5780610a558161100e565b9150610a649050600a8361103d565b9150610a45565b60008167ffffffffffffffff811115610a8657610a86610da4565b6040519080825280601f01601f191660200182016040528015610ab0576020820181803683370190505b5090505b841561077557610ac5600183610f96565b9150610ad2600a86611051565b610add906030610fa9565b60f81b818381518110610af257610af2611065565b60200101906001600160f81b031916908160001a905350610b14600a8661103d565b9450610ab4565b60006001600160a01b0384163b15610c1157604051630a85bd0160e11b81526001600160a01b0385169063150b7a0290610b5f90339089908890889060040161107b565b6020604051808303816000875af1925050508015610b9a575060408051601f3d908101601f19168201909252610b97918101906110b8565b60015b610bf7573d808015610bc8576040519150601f19603f3d011682016040523d82523d6000602084013e610bcd565b606091505b508051600003610bef5760405162461bcd60e51b815260040161037e90610fbc565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610775565b506001949350505050565b6001600160e01b0319811681146106ad57600080fd5b600060208284031215610c4457600080fd5b813561061981610c1c565b60005b83811015610c6a578181015183820152602001610c52565b50506000910152565b60008151808452610c8b816020860160208601610c4f565b601f01601f19169290920160200192915050565b6020815260006106196020830184610c73565b600060208284031215610cc457600080fd5b5035919050565b80356001600160a01b0381168114610ce257600080fd5b919050565b60008060408385031215610cfa57600080fd5b610d0383610ccb565b946020939093013593505050565b600080600060608486031215610d2657600080fd5b610d2f84610ccb565b9250610d3d60208501610ccb565b9150604084013590509250925092565b600060208284031215610d5f57600080fd5b61061982610ccb565b60008060408385031215610d7b57600080fd5b610d8483610ccb565b915060208301358015158114610d9957600080fd5b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b60008060008060808587031215610dd057600080fd5b610dd985610ccb565b9350610de760208601610ccb565b925060408501359150606085013567ffffffffffffffff80821115610e0b57600080fd5b818701915087601f830112610e1f57600080fd5b813581811115610e3157610e31610da4565b604051601f8201601f19908116603f01168101908382118183101715610e5957610e59610da4565b816040528281528a6020848701011115610e7257600080fd5b82602086016020830137600060208483010152809550505050505092959194509250565b60008060408385031215610ea957600080fd5b610eb283610ccb565b9150610ec060208401610ccb565b90509250929050565b600181811c90821680610edd57607f821691505b602082108103610efd57634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252602e908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526d1c881b9bdc88185c1c1c9bdd995960921b606082015260800190565b60008351610f63818460208801610c4f565b835190830190610f77818360208801610c4f565b01949350505050565b634e487b7160e01b600052601160045260246000fd5b8181038181111561024b5761024b610f80565b8082018082111561024b5761024b610f80565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b60006001820161102057611020610f80565b5060010190565b634e487b7160e01b600052601260045260246000fd5b60008261104c5761104c611027565b500490565b60008261106057611060611027565b500690565b634e487b7160e01b600052603260045260246000fd5b6001600160a01b03858116825284166020820152604081018390526080606082018190526000906110ae90830184610c73565b9695505050505050565b6000602082840312156110ca57600080fd5b815161061981610c1c56fea164736f6c6343000811000a", + "bytecode": "0x608060405234801561000f575f80fd5b506110908061001d5f395ff3fe608060405234801561000f575f80fd5b50600436106100cb575f3560e01c80636352211e11610088578063a22cb46511610063578063a22cb465146101ae578063b88d4fde146101c1578063c87b56dd146101d4578063e985e9c5146101e7575f80fd5b80636352211e1461017257806370a082311461018557806395d89b41146101a6575f80fd5b806301ffc9a7146100cf57806306fdde03146100f7578063081812fc1461010c578063095ea7b31461013757806323b872dd1461014c57806342842e0e1461015f575b5f80fd5b6100e26100dd366004610c0d565b6101fa565b60405190151581526020015b60405180910390f35b6100ff61024b565b6040516100ee9190610c75565b61011f61011a366004610c87565b6102db565b6040516001600160a01b0390911681526020016100ee565b61014a610145366004610cb9565b610300565b005b61014a61015a366004610ce1565b610419565b61014a61016d366004610ce1565b61044a565b61011f610180366004610c87565b610464565b610198610193366004610d1a565b6104c3565b6040519081526020016100ee565b6100ff610547565b61014a6101bc366004610d33565b610556565b61014a6101cf366004610d80565b610565565b6100ff6101e2366004610c87565b61059d565b6100e26101f5366004610e55565b61060d565b5f6001600160e01b031982166380ac58cd60e01b148061022a57506001600160e01b03198216635b5e139f60e01b145b8061024557506301ffc9a760e01b6001600160e01b03198316145b92915050565b60606065805461025a90610e86565b80601f016020809104026020016040519081016040528092919081815260200182805461028690610e86565b80156102d15780601f106102a8576101008083540402835291602001916102d1565b820191905f5260205f20905b8154815290600101906020018083116102b457829003601f168201915b5050505050905090565b5f6102e58261063a565b505f908152606960205260409020546001600160a01b031690565b5f61030a82610464565b9050806001600160a01b0316836001600160a01b03160361037c5760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084015b60405180910390fd5b336001600160a01b03821614806103985750610398813361060d565b61040a5760405162461bcd60e51b815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c00006064820152608401610373565b610414838361069b565b505050565b6104233382610708565b61043f5760405162461bcd60e51b815260040161037390610ebe565b610414838383610766565b61041483838360405180602001604052805f815250610565565b5f818152606760205260408120546001600160a01b0316806102455760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610373565b5f6001600160a01b03821661052c5760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b6064820152608401610373565b506001600160a01b03165f9081526068602052604090205490565b60606066805461025a90610e86565b6105613383836108fe565b5050565b61056f3383610708565b61058b5760405162461bcd60e51b815260040161037390610ebe565b610597848484846109cb565b50505050565b60606105a88261063a565b5f6105bd60408051602081019091525f815290565b90505f8151116105db5760405180602001604052805f815250610606565b806105e5846109fe565b6040516020016105f6929190610f0c565b6040516020818303038152906040525b9392505050565b6001600160a01b039182165f908152606a6020908152604080832093909416825291909152205460ff1690565b5f818152606760205260409020546001600160a01b03166106985760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610373565b50565b5f81815260696020526040902080546001600160a01b0319166001600160a01b03841690811790915581906106cf82610464565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b5f8061071383610464565b9050806001600160a01b0316846001600160a01b0316148061073a575061073a818561060d565b8061075e5750836001600160a01b0316610753846102db565b6001600160a01b0316145b949350505050565b826001600160a01b031661077982610464565b6001600160a01b0316146107dd5760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b6064820152608401610373565b6001600160a01b03821661083f5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610373565b6108495f8261069b565b6001600160a01b0383165f908152606860205260408120805460019290610871908490610f4e565b90915550506001600160a01b0382165f90815260686020526040812080546001929061089e908490610f61565b90915550505f8181526067602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b816001600160a01b0316836001600160a01b03160361095f5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610373565b6001600160a01b038381165f818152606a6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6109d6848484610766565b6109e284848484610afb565b6105975760405162461bcd60e51b815260040161037390610f74565b6060815f03610a245750506040805180820190915260018152600360fc1b602082015290565b815f5b8115610a4d5780610a3781610fc6565b9150610a469050600a83610ff2565b9150610a27565b5f8167ffffffffffffffff811115610a6757610a67610d6c565b6040519080825280601f01601f191660200182016040528015610a91576020820181803683370190505b5090505b841561075e57610aa6600183610f4e565b9150610ab3600a86611005565b610abe906030610f61565b60f81b818381518110610ad357610ad3611018565b60200101906001600160f81b03191690815f1a905350610af4600a86610ff2565b9450610a95565b5f6001600160a01b0384163b15610bed57604051630a85bd0160e11b81526001600160a01b0385169063150b7a0290610b3e90339089908890889060040161102c565b6020604051808303815f875af1925050508015610b78575060408051601f3d908101601f19168201909252610b7591810190611068565b60015b610bd3573d808015610ba5576040519150601f19603f3d011682016040523d82523d5f602084013e610baa565b606091505b5080515f03610bcb5760405162461bcd60e51b815260040161037390610f74565b805181602001fd5b6001600160e01b031916630a85bd0160e11b14905061075e565b506001949350505050565b6001600160e01b031981168114610698575f80fd5b5f60208284031215610c1d575f80fd5b813561060681610bf8565b5f5b83811015610c42578181015183820152602001610c2a565b50505f910152565b5f8151808452610c61816020860160208601610c28565b601f01601f19169290920160200192915050565b602081525f6106066020830184610c4a565b5f60208284031215610c97575f80fd5b5035919050565b80356001600160a01b0381168114610cb4575f80fd5b919050565b5f8060408385031215610cca575f80fd5b610cd383610c9e565b946020939093013593505050565b5f805f60608486031215610cf3575f80fd5b610cfc84610c9e565b9250610d0a60208501610c9e565b9150604084013590509250925092565b5f60208284031215610d2a575f80fd5b61060682610c9e565b5f8060408385031215610d44575f80fd5b610d4d83610c9e565b915060208301358015158114610d61575f80fd5b809150509250929050565b634e487b7160e01b5f52604160045260245ffd5b5f805f8060808587031215610d93575f80fd5b610d9c85610c9e565b9350610daa60208601610c9e565b925060408501359150606085013567ffffffffffffffff80821115610dcd575f80fd5b818701915087601f830112610de0575f80fd5b813581811115610df257610df2610d6c565b604051601f8201601f19908116603f01168101908382118183101715610e1a57610e1a610d6c565b816040528281528a6020848701011115610e32575f80fd5b826020860160208301375f60208483010152809550505050505092959194509250565b5f8060408385031215610e66575f80fd5b610e6f83610c9e565b9150610e7d60208401610c9e565b90509250929050565b600181811c90821680610e9a57607f821691505b602082108103610eb857634e487b7160e01b5f52602260045260245ffd5b50919050565b6020808252602e908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526d1c881b9bdc88185c1c1c9bdd995960921b606082015260800190565b5f8351610f1d818460208801610c28565b835190830190610f31818360208801610c28565b01949350505050565b634e487b7160e01b5f52601160045260245ffd5b8181038181111561024557610245610f3a565b8082018082111561024557610245610f3a565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b5f60018201610fd757610fd7610f3a565b5060010190565b634e487b7160e01b5f52601260045260245ffd5b5f8261100057611000610fde565b500490565b5f8261101357611013610fde565b500690565b634e487b7160e01b5f52603260045260245ffd5b6001600160a01b03858116825284166020820152604081018390526080606082018190525f9061105e90830184610c4a565b9695505050505050565b5f60208284031215611078575f80fd5b815161060681610bf856fea164736f6c6343000818000a", + "deployedBytecode": "0x608060405234801561000f575f80fd5b50600436106100cb575f3560e01c80636352211e11610088578063a22cb46511610063578063a22cb465146101ae578063b88d4fde146101c1578063c87b56dd146101d4578063e985e9c5146101e7575f80fd5b80636352211e1461017257806370a082311461018557806395d89b41146101a6575f80fd5b806301ffc9a7146100cf57806306fdde03146100f7578063081812fc1461010c578063095ea7b31461013757806323b872dd1461014c57806342842e0e1461015f575b5f80fd5b6100e26100dd366004610c0d565b6101fa565b60405190151581526020015b60405180910390f35b6100ff61024b565b6040516100ee9190610c75565b61011f61011a366004610c87565b6102db565b6040516001600160a01b0390911681526020016100ee565b61014a610145366004610cb9565b610300565b005b61014a61015a366004610ce1565b610419565b61014a61016d366004610ce1565b61044a565b61011f610180366004610c87565b610464565b610198610193366004610d1a565b6104c3565b6040519081526020016100ee565b6100ff610547565b61014a6101bc366004610d33565b610556565b61014a6101cf366004610d80565b610565565b6100ff6101e2366004610c87565b61059d565b6100e26101f5366004610e55565b61060d565b5f6001600160e01b031982166380ac58cd60e01b148061022a57506001600160e01b03198216635b5e139f60e01b145b8061024557506301ffc9a760e01b6001600160e01b03198316145b92915050565b60606065805461025a90610e86565b80601f016020809104026020016040519081016040528092919081815260200182805461028690610e86565b80156102d15780601f106102a8576101008083540402835291602001916102d1565b820191905f5260205f20905b8154815290600101906020018083116102b457829003601f168201915b5050505050905090565b5f6102e58261063a565b505f908152606960205260409020546001600160a01b031690565b5f61030a82610464565b9050806001600160a01b0316836001600160a01b03160361037c5760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084015b60405180910390fd5b336001600160a01b03821614806103985750610398813361060d565b61040a5760405162461bcd60e51b815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c00006064820152608401610373565b610414838361069b565b505050565b6104233382610708565b61043f5760405162461bcd60e51b815260040161037390610ebe565b610414838383610766565b61041483838360405180602001604052805f815250610565565b5f818152606760205260408120546001600160a01b0316806102455760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610373565b5f6001600160a01b03821661052c5760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b6064820152608401610373565b506001600160a01b03165f9081526068602052604090205490565b60606066805461025a90610e86565b6105613383836108fe565b5050565b61056f3383610708565b61058b5760405162461bcd60e51b815260040161037390610ebe565b610597848484846109cb565b50505050565b60606105a88261063a565b5f6105bd60408051602081019091525f815290565b90505f8151116105db5760405180602001604052805f815250610606565b806105e5846109fe565b6040516020016105f6929190610f0c565b6040516020818303038152906040525b9392505050565b6001600160a01b039182165f908152606a6020908152604080832093909416825291909152205460ff1690565b5f818152606760205260409020546001600160a01b03166106985760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610373565b50565b5f81815260696020526040902080546001600160a01b0319166001600160a01b03841690811790915581906106cf82610464565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b5f8061071383610464565b9050806001600160a01b0316846001600160a01b0316148061073a575061073a818561060d565b8061075e5750836001600160a01b0316610753846102db565b6001600160a01b0316145b949350505050565b826001600160a01b031661077982610464565b6001600160a01b0316146107dd5760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b6064820152608401610373565b6001600160a01b03821661083f5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610373565b6108495f8261069b565b6001600160a01b0383165f908152606860205260408120805460019290610871908490610f4e565b90915550506001600160a01b0382165f90815260686020526040812080546001929061089e908490610f61565b90915550505f8181526067602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b816001600160a01b0316836001600160a01b03160361095f5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610373565b6001600160a01b038381165f818152606a6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6109d6848484610766565b6109e284848484610afb565b6105975760405162461bcd60e51b815260040161037390610f74565b6060815f03610a245750506040805180820190915260018152600360fc1b602082015290565b815f5b8115610a4d5780610a3781610fc6565b9150610a469050600a83610ff2565b9150610a27565b5f8167ffffffffffffffff811115610a6757610a67610d6c565b6040519080825280601f01601f191660200182016040528015610a91576020820181803683370190505b5090505b841561075e57610aa6600183610f4e565b9150610ab3600a86611005565b610abe906030610f61565b60f81b818381518110610ad357610ad3611018565b60200101906001600160f81b03191690815f1a905350610af4600a86610ff2565b9450610a95565b5f6001600160a01b0384163b15610bed57604051630a85bd0160e11b81526001600160a01b0385169063150b7a0290610b3e90339089908890889060040161102c565b6020604051808303815f875af1925050508015610b78575060408051601f3d908101601f19168201909252610b7591810190611068565b60015b610bd3573d808015610ba5576040519150601f19603f3d011682016040523d82523d5f602084013e610baa565b606091505b5080515f03610bcb5760405162461bcd60e51b815260040161037390610f74565b805181602001fd5b6001600160e01b031916630a85bd0160e11b14905061075e565b506001949350505050565b6001600160e01b031981168114610698575f80fd5b5f60208284031215610c1d575f80fd5b813561060681610bf8565b5f5b83811015610c42578181015183820152602001610c2a565b50505f910152565b5f8151808452610c61816020860160208601610c28565b601f01601f19169290920160200192915050565b602081525f6106066020830184610c4a565b5f60208284031215610c97575f80fd5b5035919050565b80356001600160a01b0381168114610cb4575f80fd5b919050565b5f8060408385031215610cca575f80fd5b610cd383610c9e565b946020939093013593505050565b5f805f60608486031215610cf3575f80fd5b610cfc84610c9e565b9250610d0a60208501610c9e565b9150604084013590509250925092565b5f60208284031215610d2a575f80fd5b61060682610c9e565b5f8060408385031215610d44575f80fd5b610d4d83610c9e565b915060208301358015158114610d61575f80fd5b809150509250929050565b634e487b7160e01b5f52604160045260245ffd5b5f805f8060808587031215610d93575f80fd5b610d9c85610c9e565b9350610daa60208601610c9e565b925060408501359150606085013567ffffffffffffffff80821115610dcd575f80fd5b818701915087601f830112610de0575f80fd5b813581811115610df257610df2610d6c565b604051601f8201601f19908116603f01168101908382118183101715610e1a57610e1a610d6c565b816040528281528a6020848701011115610e32575f80fd5b826020860160208301375f60208483010152809550505050505092959194509250565b5f8060408385031215610e66575f80fd5b610e6f83610c9e565b9150610e7d60208401610c9e565b90509250929050565b600181811c90821680610e9a57607f821691505b602082108103610eb857634e487b7160e01b5f52602260045260245ffd5b50919050565b6020808252602e908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526d1c881b9bdc88185c1c1c9bdd995960921b606082015260800190565b5f8351610f1d818460208801610c28565b835190830190610f31818360208801610c28565b01949350505050565b634e487b7160e01b5f52601160045260245ffd5b8181038181111561024557610245610f3a565b8082018082111561024557610245610f3a565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b5f60018201610fd757610fd7610f3a565b5060010190565b634e487b7160e01b5f52601260045260245ffd5b5f8261100057611000610fde565b500490565b5f8261101357611013610fde565b500690565b634e487b7160e01b5f52603260045260245ffd5b6001600160a01b03858116825284166020820152604081018390526080606082018190525f9061105e90830184610c4a565b9695505050505050565b5f60208284031215611078575f80fd5b815161060681610bf856fea164736f6c6343000818000a", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/artifacts/ETHRegistrarController.json b/artifacts/ETHRegistrarController.json index 0156fd1a..ca9d5405 100644 --- a/artifacts/ETHRegistrarController.json +++ b/artifacts/ETHRegistrarController.json @@ -599,8 +599,8 @@ "type": "function" } ], - "bytecode": "0x6101406040523480156200001257600080fd5b5060405162001e7038038062001e70833981016040819052620000359162000222565b80336200004281620001b9565b6040516302571be360e01b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e260048201526000906001600160a01b038416906302571be390602401602060405180830381865afa158015620000aa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620000d09190620002b6565b604051630f41a04d60e11b81526001600160a01b03848116600483015291925090821690631e83409a906024016020604051808303816000875af11580156200011d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001439190620002dd565b5050505084841162000168576040516307cb550760e31b815260040160405180910390fd5b428411156200018a57604051630b4319e560e21b815260040160405180910390fd5b506001600160a01b0395861660805293851660a05260c09290925260e0528216610100521661012052620002f7565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146200021f57600080fd5b50565b600080600080600080600060e0888a0312156200023e57600080fd5b87516200024b8162000209565b60208901519097506200025e8162000209565b8096505060408801519450606088015193506080880151620002808162000209565b60a0890151909350620002938162000209565b60c0890151909250620002a68162000209565b8091505092959891949750929550565b600060208284031215620002c957600080fd5b8151620002d68162000209565b9392505050565b600060208284031215620002f057600080fd5b5051919050565b60805160a05160c05160e0516101005161012051611af16200037f60003960008181610335015281816106f30152610ab60152600081816101f80152610fe301526000818161039c01528181610c7b0152610e6e0152600081816102c30152610e100152600081816103d001526108f40152600081816109290152610bea0152611af16000f3fe60806040526004361061011f5760003560e01c80638d839ffe116100a0578063aeb8ce9b11610064578063aeb8ce9b1461036a578063ce1e09c01461038a578063d3419bf3146103be578063f14fcbc8146103f2578063f2fde38b1461041257600080fd5b80638d839ffe146102b15780638da5cb5b146102e55780639791c09714610303578063a8e5fbc014610323578063acf1a8411461035757600080fd5b806374694a2b116100e757806374694a2b146101d357806380869853146101e6578063839df9451461023257806383e7f6ff1461025f5780638a95b09f1461029a57600080fd5b806301ffc9a7146101245780633ccfd60b146101595780635d3590d51461017057806365a69dcf14610190578063715018a6146101be575b600080fd5b34801561013057600080fd5b5061014461013f366004611198565b610432565b60405190151581526020015b60405180910390f35b34801561016557600080fd5b5061016e610469565b005b34801561017c57600080fd5b5061016e61018b3660046111de565b6104a6565b34801561019c57600080fd5b506101b06101ab36600461134b565b610527565b604051908152602001610150565b3480156101ca57600080fd5b5061016e6105ac565b61016e6101e136600461144e565b6105c0565b3480156101f257600080fd5b5061021a7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610150565b34801561023e57600080fd5b506101b061024d366004611518565b60016020526000908152604090205481565b34801561026b57600080fd5b5061027f61027a366004611531565b6108c3565b60408051825181526020928301519281019290925201610150565b3480156102a657600080fd5b506101b06224ea0081565b3480156102bd57600080fd5b506101b07f000000000000000000000000000000000000000000000000000000000000000081565b3480156102f157600080fd5b506000546001600160a01b031661021a565b34801561030f57600080fd5b5061014461031e366004611576565b6109fd565b34801561032f57600080fd5b5061021a7f000000000000000000000000000000000000000000000000000000000000000081565b61016e6103653660046115ab565b610a12565b34801561037657600080fd5b50610144610385366004611576565b610bba565b34801561039657600080fd5b506101b07f000000000000000000000000000000000000000000000000000000000000000081565b3480156103ca57600080fd5b5061021a7f000000000000000000000000000000000000000000000000000000000000000081565b3480156103fe57600080fd5b5061016e61040d366004611518565b610c64565b34801561041e57600080fd5b5061016e61042d3660046115f7565b610cd9565b60006001600160e01b031982166301ffc9a760e01b148061046357506001600160e01b0319821663612e8c0960e01b145b92915050565b600080546040516001600160a01b03909116914780156108fc02929091818181858888f193505050501580156104a3573d6000803e3d6000fd5b50565b6104ae610d4f565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303816000875af11580156104fd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105219190611612565b50505050565b885160208a0120600090841580159061054757506001600160a01b038716155b15610565576040516334fd817160e21b815260040160405180910390fd5b808a8a8a8a8a8a8a8a604051602001610586999897969594939291906116ea565b604051602081830303815290604052805190602001209150509998505050505050505050565b6105b4610d4f565b6105be6000610da9565b565b60006106038b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508c92506108c3915050565b6020810151815191925061061691611764565b3410156106365760405163044044a560e21b815260040160405180910390fd5b6106d98b8b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050896106d48e8e8080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050508d8d8d8d8d8d8d8d610527565b610df9565b604051635200a4c160e11b81526000906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063a401498290610732908f908f908f908f908e908b90600401611777565b6020604051808303816000875af1158015610751573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061077591906117c2565b905084156107a0576107a0878d8d6040516107919291906117db565b60405180910390208888610f17565b83156107e9576107e98c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508b9250339150610fe19050565b896001600160a01b03168c8c6040516108039291906117db565b60405180910390207f69e37f151eb98a09618ddaa80c8cfaf1ce5996867c489f45b555b412271ebf278e8e866000015187602001518760405161084a9594939291906117eb565b60405180910390a3602082015182516108639190611764565b3411156108b5576020820151825133916108fc916108819190611764565b61088b903461181c565b6040518115909202916000818181858888f193505050501580156108b3573d6000803e3d6000fd5b505b505050505050505050505050565b604080518082019091526000808252602082015282516020840120604051636b727d4360e11b8152600481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116916350e9a7159187917f00000000000000000000000000000000000000000000000000000000000000009091169063d6e4fa8690602401602060405180830381865afa158015610972573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061099691906117c2565b866040518463ffffffff1660e01b81526004016109b59392919061187f565b6040805180830381865afa1580156109d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109f591906118a4565b949350505050565b60006003610a0a83611095565b101592915050565b60008383604051610a249291906117db565b604080519182900382206020601f870181900481028401810190925285835292508291600091610a71919088908890819084018382808284376000920191909152508892506108c3915050565b8051909150341015610a965760405163044044a560e21b815260040160405180910390fd5b60405163c475abff60e01b815260048101839052602481018590526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063c475abff906044016020604051808303816000875af1158015610b07573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b2b91906117c2565b8251909150341115610b7357815133906108fc90610b49903461181c565b6040518115909202916000818181858888f19350505050158015610b71573d6000803e3d6000fd5b505b837f3da24c024582931cfaf8267d8ed24d13a82a8068d5bd337d30ec45cea4e506ae88883485604051610ba994939291906118f3565b60405180910390a250505050505050565b80516020820120600090610bcd836109fd565b8015610c5d57506040516312dc929d60e31b8152600481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906396e494e890602401602060405180830381865afa158015610c39573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c5d9190611612565b9392505050565b6000818152600160205260409020544290610ca0907f000000000000000000000000000000000000000000000000000000000000000090611764565b10610cc657604051630a059d7160e01b8152600481018290526024015b60405180910390fd5b6000908152600160205260409020429055565b610ce1610d4f565b6001600160a01b038116610d465760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610cbd565b6104a381610da9565b6000546001600160a01b031633146105be5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610cbd565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000818152600160205260409020544290610e35907f000000000000000000000000000000000000000000000000000000000000000090611764565b1115610e5757604051635320bcf960e01b815260048101829052602401610cbd565b6000818152600160205260409020544290610e93907f000000000000000000000000000000000000000000000000000000000000000090611764565b11610eb45760405163cb7690d760e01b815260048101829052602401610cbd565b610ebd83610bba565b610edc57826040516308eee0fd60e31b8152600401610cbd919061191a565b6000818152600160205260408120556224ea00821015610f1257604051639a71997b60e01b815260048101839052602401610cbd565b505050565b604080517f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae6020808301919091528183018690528251808303840181526060830193849052805191012063e32954eb60e01b90925285906001600160a01b0382169063e32954eb90610f919085908890889060640161192d565b6000604051808303816000875af1158015610fb0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610fd89190810190611950565b50505050505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316637a806d6b338385876040516020016110249190611a4f565b6040516020818303038152906040526040518563ffffffff1660e01b81526004016110529493929190611a77565b6020604051808303816000875af1158015611071573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061052191906117c2565b8051600090819081905b8082101561118f5760008583815181106110bb576110bb611ab5565b01602001516001600160f81b0319169050600160ff1b8110156110ea576110e3600184611764565b925061117c565b600760fd1b6001600160f81b03198216101561110b576110e3600284611764565b600f60fc1b6001600160f81b03198216101561112c576110e3600384611764565b601f60fb1b6001600160f81b03198216101561114d576110e3600484611764565b603f60fa1b6001600160f81b03198216101561116e576110e3600584611764565b611179600684611764565b92505b508261118781611acb565b93505061109f565b50909392505050565b6000602082840312156111aa57600080fd5b81356001600160e01b031981168114610c5d57600080fd5b80356001600160a01b03811681146111d957600080fd5b919050565b6000806000606084860312156111f357600080fd5b6111fc846111c2565b925061120a602085016111c2565b9150604084013590509250925092565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff811182821017156112595761125961121a565b604052919050565b600067ffffffffffffffff82111561127b5761127b61121a565b50601f01601f191660200190565b600082601f83011261129a57600080fd5b81356112ad6112a882611261565b611230565b8181528460208386010111156112c257600080fd5b816020850160208301376000918101602001919091529392505050565b60008083601f8401126112f157600080fd5b50813567ffffffffffffffff81111561130957600080fd5b6020830191508360208260051b850101111561132457600080fd5b9250929050565b80151581146104a357600080fd5b803561ffff811681146111d957600080fd5b60008060008060008060008060006101008a8c03121561136a57600080fd5b893567ffffffffffffffff8082111561138257600080fd5b61138e8d838e01611289565b9a5061139c60208d016111c2565b995060408c0135985060608c013597506113b860808d016111c2565b965060a08c01359150808211156113ce57600080fd5b506113db8c828d016112df565b90955093505060c08a01356113ef8161132b565b91506113fd60e08b01611339565b90509295985092959850929598565b60008083601f84011261141e57600080fd5b50813567ffffffffffffffff81111561143657600080fd5b60208301915083602082850101111561132457600080fd5b6000806000806000806000806000806101008b8d03121561146e57600080fd5b8a3567ffffffffffffffff8082111561148657600080fd5b6114928e838f0161140c565b909c509a508a91506114a660208e016111c2565b995060408d0135985060608d013597506114c260808e016111c2565b965060a08d01359150808211156114d857600080fd5b506114e58d828e016112df565b90955093505060c08b01356114f98161132b565b915061150760e08c01611339565b90509295989b9194979a5092959850565b60006020828403121561152a57600080fd5b5035919050565b6000806040838503121561154457600080fd5b823567ffffffffffffffff81111561155b57600080fd5b61156785828601611289565b95602094909401359450505050565b60006020828403121561158857600080fd5b813567ffffffffffffffff81111561159f57600080fd5b6109f584828501611289565b6000806000604084860312156115c057600080fd5b833567ffffffffffffffff8111156115d757600080fd5b6115e38682870161140c565b909790965060209590950135949350505050565b60006020828403121561160957600080fd5b610c5d826111c2565b60006020828403121561162457600080fd5b8151610c5d8161132b565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b81835260006020808501808196508560051b810191508460005b878110156116dd5782840389528135601e1988360301811261169357600080fd5b8701858101903567ffffffffffffffff8111156116af57600080fd5b8036038213156116be57600080fd5b6116c986828461162f565b9a87019a9550505090840190600101611672565b5091979650505050505050565b8981526001600160a01b03898116602083015260408201899052606082018890528616608082015261010060a0820181905260009061172c8382018789611658565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b634e487b7160e01b600052601160045260246000fd5b808201808211156104635761046361174e565b60a08152600061178b60a08301888a61162f565b6001600160a01b03968716602084015260408301959095525091909316606082015261ffff90921660809092019190915292915050565b6000602082840312156117d457600080fd5b5051919050565b8183823760009101908152919050565b6080815260006117ff60808301878961162f565b602083019590955250604081019290925260609091015292915050565b818103818111156104635761046361174e565b60005b8381101561184a578181015183820152602001611832565b50506000910152565b6000815180845261186b81602086016020860161182f565b601f01601f19169290920160200192915050565b6060815260006118926060830186611853565b60208301949094525060400152919050565b6000604082840312156118b657600080fd5b6040516040810181811067ffffffffffffffff821117156118d9576118d961121a565b604052825181526020928301519281019290925250919050565b60608152600061190760608301868861162f565b6020830194909452506040015292915050565b602081526000610c5d6020830184611853565b838152604060208201526000611947604083018486611658565b95945050505050565b6000602080838503121561196357600080fd5b825167ffffffffffffffff8082111561197b57600080fd5b818501915085601f83011261198f57600080fd5b8151818111156119a1576119a161121a565b8060051b6119b0858201611230565b91825283810185019185810190898411156119ca57600080fd5b86860192505b83831015611a42578251858111156119e85760008081fd5b8601603f81018b136119fa5760008081fd5b878101516040611a0c6112a883611261565b8281528d82848601011115611a215760008081fd5b611a30838c830184870161182f565b855250505091860191908601906119d0565b9998505050505050505050565b60008251611a6181846020870161182f565b6305ccae8d60e31b920191825250600401919050565b6001600160a01b038581168252848116602083015283166040820152608060608201819052600090611aab90830184611853565b9695505050505050565b634e487b7160e01b600052603260045260246000fd5b600060018201611add57611add61174e565b506001019056fea164736f6c6343000811000a", - "deployedBytecode": "0x60806040526004361061011f5760003560e01c80638d839ffe116100a0578063aeb8ce9b11610064578063aeb8ce9b1461036a578063ce1e09c01461038a578063d3419bf3146103be578063f14fcbc8146103f2578063f2fde38b1461041257600080fd5b80638d839ffe146102b15780638da5cb5b146102e55780639791c09714610303578063a8e5fbc014610323578063acf1a8411461035757600080fd5b806374694a2b116100e757806374694a2b146101d357806380869853146101e6578063839df9451461023257806383e7f6ff1461025f5780638a95b09f1461029a57600080fd5b806301ffc9a7146101245780633ccfd60b146101595780635d3590d51461017057806365a69dcf14610190578063715018a6146101be575b600080fd5b34801561013057600080fd5b5061014461013f366004611198565b610432565b60405190151581526020015b60405180910390f35b34801561016557600080fd5b5061016e610469565b005b34801561017c57600080fd5b5061016e61018b3660046111de565b6104a6565b34801561019c57600080fd5b506101b06101ab36600461134b565b610527565b604051908152602001610150565b3480156101ca57600080fd5b5061016e6105ac565b61016e6101e136600461144e565b6105c0565b3480156101f257600080fd5b5061021a7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610150565b34801561023e57600080fd5b506101b061024d366004611518565b60016020526000908152604090205481565b34801561026b57600080fd5b5061027f61027a366004611531565b6108c3565b60408051825181526020928301519281019290925201610150565b3480156102a657600080fd5b506101b06224ea0081565b3480156102bd57600080fd5b506101b07f000000000000000000000000000000000000000000000000000000000000000081565b3480156102f157600080fd5b506000546001600160a01b031661021a565b34801561030f57600080fd5b5061014461031e366004611576565b6109fd565b34801561032f57600080fd5b5061021a7f000000000000000000000000000000000000000000000000000000000000000081565b61016e6103653660046115ab565b610a12565b34801561037657600080fd5b50610144610385366004611576565b610bba565b34801561039657600080fd5b506101b07f000000000000000000000000000000000000000000000000000000000000000081565b3480156103ca57600080fd5b5061021a7f000000000000000000000000000000000000000000000000000000000000000081565b3480156103fe57600080fd5b5061016e61040d366004611518565b610c64565b34801561041e57600080fd5b5061016e61042d3660046115f7565b610cd9565b60006001600160e01b031982166301ffc9a760e01b148061046357506001600160e01b0319821663612e8c0960e01b145b92915050565b600080546040516001600160a01b03909116914780156108fc02929091818181858888f193505050501580156104a3573d6000803e3d6000fd5b50565b6104ae610d4f565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303816000875af11580156104fd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105219190611612565b50505050565b885160208a0120600090841580159061054757506001600160a01b038716155b15610565576040516334fd817160e21b815260040160405180910390fd5b808a8a8a8a8a8a8a8a604051602001610586999897969594939291906116ea565b604051602081830303815290604052805190602001209150509998505050505050505050565b6105b4610d4f565b6105be6000610da9565b565b60006106038b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508c92506108c3915050565b6020810151815191925061061691611764565b3410156106365760405163044044a560e21b815260040160405180910390fd5b6106d98b8b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050896106d48e8e8080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050508d8d8d8d8d8d8d8d610527565b610df9565b604051635200a4c160e11b81526000906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063a401498290610732908f908f908f908f908e908b90600401611777565b6020604051808303816000875af1158015610751573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061077591906117c2565b905084156107a0576107a0878d8d6040516107919291906117db565b60405180910390208888610f17565b83156107e9576107e98c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508b9250339150610fe19050565b896001600160a01b03168c8c6040516108039291906117db565b60405180910390207f69e37f151eb98a09618ddaa80c8cfaf1ce5996867c489f45b555b412271ebf278e8e866000015187602001518760405161084a9594939291906117eb565b60405180910390a3602082015182516108639190611764565b3411156108b5576020820151825133916108fc916108819190611764565b61088b903461181c565b6040518115909202916000818181858888f193505050501580156108b3573d6000803e3d6000fd5b505b505050505050505050505050565b604080518082019091526000808252602082015282516020840120604051636b727d4360e11b8152600481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116916350e9a7159187917f00000000000000000000000000000000000000000000000000000000000000009091169063d6e4fa8690602401602060405180830381865afa158015610972573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061099691906117c2565b866040518463ffffffff1660e01b81526004016109b59392919061187f565b6040805180830381865afa1580156109d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109f591906118a4565b949350505050565b60006003610a0a83611095565b101592915050565b60008383604051610a249291906117db565b604080519182900382206020601f870181900481028401810190925285835292508291600091610a71919088908890819084018382808284376000920191909152508892506108c3915050565b8051909150341015610a965760405163044044a560e21b815260040160405180910390fd5b60405163c475abff60e01b815260048101839052602481018590526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063c475abff906044016020604051808303816000875af1158015610b07573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b2b91906117c2565b8251909150341115610b7357815133906108fc90610b49903461181c565b6040518115909202916000818181858888f19350505050158015610b71573d6000803e3d6000fd5b505b837f3da24c024582931cfaf8267d8ed24d13a82a8068d5bd337d30ec45cea4e506ae88883485604051610ba994939291906118f3565b60405180910390a250505050505050565b80516020820120600090610bcd836109fd565b8015610c5d57506040516312dc929d60e31b8152600481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906396e494e890602401602060405180830381865afa158015610c39573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c5d9190611612565b9392505050565b6000818152600160205260409020544290610ca0907f000000000000000000000000000000000000000000000000000000000000000090611764565b10610cc657604051630a059d7160e01b8152600481018290526024015b60405180910390fd5b6000908152600160205260409020429055565b610ce1610d4f565b6001600160a01b038116610d465760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610cbd565b6104a381610da9565b6000546001600160a01b031633146105be5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610cbd565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000818152600160205260409020544290610e35907f000000000000000000000000000000000000000000000000000000000000000090611764565b1115610e5757604051635320bcf960e01b815260048101829052602401610cbd565b6000818152600160205260409020544290610e93907f000000000000000000000000000000000000000000000000000000000000000090611764565b11610eb45760405163cb7690d760e01b815260048101829052602401610cbd565b610ebd83610bba565b610edc57826040516308eee0fd60e31b8152600401610cbd919061191a565b6000818152600160205260408120556224ea00821015610f1257604051639a71997b60e01b815260048101839052602401610cbd565b505050565b604080517f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae6020808301919091528183018690528251808303840181526060830193849052805191012063e32954eb60e01b90925285906001600160a01b0382169063e32954eb90610f919085908890889060640161192d565b6000604051808303816000875af1158015610fb0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610fd89190810190611950565b50505050505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316637a806d6b338385876040516020016110249190611a4f565b6040516020818303038152906040526040518563ffffffff1660e01b81526004016110529493929190611a77565b6020604051808303816000875af1158015611071573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061052191906117c2565b8051600090819081905b8082101561118f5760008583815181106110bb576110bb611ab5565b01602001516001600160f81b0319169050600160ff1b8110156110ea576110e3600184611764565b925061117c565b600760fd1b6001600160f81b03198216101561110b576110e3600284611764565b600f60fc1b6001600160f81b03198216101561112c576110e3600384611764565b601f60fb1b6001600160f81b03198216101561114d576110e3600484611764565b603f60fa1b6001600160f81b03198216101561116e576110e3600584611764565b611179600684611764565b92505b508261118781611acb565b93505061109f565b50909392505050565b6000602082840312156111aa57600080fd5b81356001600160e01b031981168114610c5d57600080fd5b80356001600160a01b03811681146111d957600080fd5b919050565b6000806000606084860312156111f357600080fd5b6111fc846111c2565b925061120a602085016111c2565b9150604084013590509250925092565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff811182821017156112595761125961121a565b604052919050565b600067ffffffffffffffff82111561127b5761127b61121a565b50601f01601f191660200190565b600082601f83011261129a57600080fd5b81356112ad6112a882611261565b611230565b8181528460208386010111156112c257600080fd5b816020850160208301376000918101602001919091529392505050565b60008083601f8401126112f157600080fd5b50813567ffffffffffffffff81111561130957600080fd5b6020830191508360208260051b850101111561132457600080fd5b9250929050565b80151581146104a357600080fd5b803561ffff811681146111d957600080fd5b60008060008060008060008060006101008a8c03121561136a57600080fd5b893567ffffffffffffffff8082111561138257600080fd5b61138e8d838e01611289565b9a5061139c60208d016111c2565b995060408c0135985060608c013597506113b860808d016111c2565b965060a08c01359150808211156113ce57600080fd5b506113db8c828d016112df565b90955093505060c08a01356113ef8161132b565b91506113fd60e08b01611339565b90509295985092959850929598565b60008083601f84011261141e57600080fd5b50813567ffffffffffffffff81111561143657600080fd5b60208301915083602082850101111561132457600080fd5b6000806000806000806000806000806101008b8d03121561146e57600080fd5b8a3567ffffffffffffffff8082111561148657600080fd5b6114928e838f0161140c565b909c509a508a91506114a660208e016111c2565b995060408d0135985060608d013597506114c260808e016111c2565b965060a08d01359150808211156114d857600080fd5b506114e58d828e016112df565b90955093505060c08b01356114f98161132b565b915061150760e08c01611339565b90509295989b9194979a5092959850565b60006020828403121561152a57600080fd5b5035919050565b6000806040838503121561154457600080fd5b823567ffffffffffffffff81111561155b57600080fd5b61156785828601611289565b95602094909401359450505050565b60006020828403121561158857600080fd5b813567ffffffffffffffff81111561159f57600080fd5b6109f584828501611289565b6000806000604084860312156115c057600080fd5b833567ffffffffffffffff8111156115d757600080fd5b6115e38682870161140c565b909790965060209590950135949350505050565b60006020828403121561160957600080fd5b610c5d826111c2565b60006020828403121561162457600080fd5b8151610c5d8161132b565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b81835260006020808501808196508560051b810191508460005b878110156116dd5782840389528135601e1988360301811261169357600080fd5b8701858101903567ffffffffffffffff8111156116af57600080fd5b8036038213156116be57600080fd5b6116c986828461162f565b9a87019a9550505090840190600101611672565b5091979650505050505050565b8981526001600160a01b03898116602083015260408201899052606082018890528616608082015261010060a0820181905260009061172c8382018789611658565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b634e487b7160e01b600052601160045260246000fd5b808201808211156104635761046361174e565b60a08152600061178b60a08301888a61162f565b6001600160a01b03968716602084015260408301959095525091909316606082015261ffff90921660809092019190915292915050565b6000602082840312156117d457600080fd5b5051919050565b8183823760009101908152919050565b6080815260006117ff60808301878961162f565b602083019590955250604081019290925260609091015292915050565b818103818111156104635761046361174e565b60005b8381101561184a578181015183820152602001611832565b50506000910152565b6000815180845261186b81602086016020860161182f565b601f01601f19169290920160200192915050565b6060815260006118926060830186611853565b60208301949094525060400152919050565b6000604082840312156118b657600080fd5b6040516040810181811067ffffffffffffffff821117156118d9576118d961121a565b604052825181526020928301519281019290925250919050565b60608152600061190760608301868861162f565b6020830194909452506040015292915050565b602081526000610c5d6020830184611853565b838152604060208201526000611947604083018486611658565b95945050505050565b6000602080838503121561196357600080fd5b825167ffffffffffffffff8082111561197b57600080fd5b818501915085601f83011261198f57600080fd5b8151818111156119a1576119a161121a565b8060051b6119b0858201611230565b91825283810185019185810190898411156119ca57600080fd5b86860192505b83831015611a42578251858111156119e85760008081fd5b8601603f81018b136119fa5760008081fd5b878101516040611a0c6112a883611261565b8281528d82848601011115611a215760008081fd5b611a30838c830184870161182f565b855250505091860191908601906119d0565b9998505050505050505050565b60008251611a6181846020870161182f565b6305ccae8d60e31b920191825250600401919050565b6001600160a01b038581168252848116602083015283166040820152608060608201819052600090611aab90830184611853565b9695505050505050565b634e487b7160e01b600052603260045260246000fd5b600060018201611add57611add61174e565b506001019056fea164736f6c6343000811000a", + "bytecode": "0x61014060405234801562000011575f80fd5b5060405162001da938038062001da9833981016040819052620000349162000219565b80336200004181620001b2565b6040516302571be360e01b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e260048201525f906001600160a01b038416906302571be390602401602060405180830381865afa158015620000a6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620000cc9190620002a8565b604051630f41a04d60e11b81526001600160a01b03848116600483015291925090821690631e83409a906024016020604051808303815f875af115801562000116573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906200013c9190620002cd565b5050505084841162000161576040516307cb550760e31b815260040160405180910390fd5b428411156200018357604051630b4319e560e21b815260040160405180910390fd5b506001600160a01b0395861660805293851660a05260c09290925260e0528216610100521661012052620002e5565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b038116811462000216575f80fd5b50565b5f805f805f805f60e0888a03121562000230575f80fd5b87516200023d8162000201565b6020890151909750620002508162000201565b8096505060408801519450606088015193506080880151620002728162000201565b60a0890151909350620002858162000201565b60c0890151909250620002988162000201565b8091505092959891949750929550565b5f60208284031215620002b9575f80fd5b8151620002c68162000201565b9392505050565b5f60208284031215620002de575f80fd5b5051919050565b60805160a05160c05160e0516101005161012051611a44620003655f395f8181610321015281816106cc0152610a7d01525f81816101ed0152610f9501525f818161038601528181610c380152610e2601525f81816102b30152610dc901525f81816103b901526108c401525f81816108f90152610baa0152611a445ff3fe60806040526004361061011b575f3560e01c80638d839ffe1161009d578063aeb8ce9b11610062578063aeb8ce9b14610356578063ce1e09c014610375578063d3419bf3146103a8578063f14fcbc8146103db578063f2fde38b146103fa575f80fd5b80638d839ffe146102a25780638da5cb5b146102d55780639791c097146102f1578063a8e5fbc014610310578063acf1a84114610343575f80fd5b806374694a2b116100e357806374694a2b146101c957806380869853146101dc578063839df9451461022757806383e7f6ff146102525780638a95b09f1461028c575f80fd5b806301ffc9a71461011f5780633ccfd60b146101535780635d3590d51461016957806365a69dcf14610188578063715018a6146101b5575b5f80fd5b34801561012a575f80fd5b5061013e610139366004611145565b610419565b60405190151581526020015b60405180910390f35b34801561015e575f80fd5b5061016761044f565b005b348015610174575f80fd5b50610167610183366004611187565b610489565b348015610193575f80fd5b506101a76101a23660046112e4565b610507565b60405190815260200161014a565b3480156101c0575f80fd5b5061016761058b565b6101676101d73660046113db565b61059e565b3480156101e7575f80fd5b5061020f7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b03909116815260200161014a565b348015610232575f80fd5b506101a761024136600461149d565b60016020525f908152604090205481565b34801561025d575f80fd5b5061027161026c3660046114b4565b610894565b6040805182518152602092830151928101929092520161014a565b348015610297575f80fd5b506101a76224ea0081565b3480156102ad575f80fd5b506101a77f000000000000000000000000000000000000000000000000000000000000000081565b3480156102e0575f80fd5b505f546001600160a01b031661020f565b3480156102fc575f80fd5b5061013e61030b3660046114f6565b6109c9565b34801561031b575f80fd5b5061020f7f000000000000000000000000000000000000000000000000000000000000000081565b610167610351366004611528565b6109dd565b348015610361575f80fd5b5061013e6103703660046114f6565b610b7b565b348015610380575f80fd5b506101a77f000000000000000000000000000000000000000000000000000000000000000081565b3480156103b3575f80fd5b5061020f7f000000000000000000000000000000000000000000000000000000000000000081565b3480156103e6575f80fd5b506101676103f536600461149d565b610c22565b348015610405575f80fd5b50610167610414366004611570565b610c95565b5f6001600160e01b031982166301ffc9a760e01b148061044957506001600160e01b0319821663612e8c0960e01b145b92915050565b5f80546040516001600160a01b03909116914780156108fc02929091818181858888f19350505050158015610486573d5f803e3d5ffd5b50565b610491610d0b565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af11580156104dd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105019190611589565b50505050565b885160208a01205f90841580159061052657506001600160a01b038716155b15610544576040516334fd817160e21b815260040160405180910390fd5b808a8a8a8a8a8a8a8a6040516020016105659998979695949392919061165e565b604051602081830303815290604052805190602001209150509998505050505050505050565b610593610d0b565b61059c5f610d64565b565b5f6105df8b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c9250610894915050565b602081015181519192506105f2916116d5565b3410156106125760405163044044a560e21b815260040160405180910390fd5b6106b38b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f82011690508083019250505050505050896106ae8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f820116905080830192505050505050508d8d8d8d8d8d8d8d610507565b610db3565b604051635200a4c160e11b81525f906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063a40149829061070b908f908f908f908f908e908b906004016116e8565b6020604051808303815f875af1158015610727573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061074b9190611732565b9050841561077657610776878d8d604051610767929190611749565b60405180910390208888610ece565b83156107be576107be8c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508b9250339150610f939050565b896001600160a01b03168c8c6040516107d8929190611749565b60405180910390207f69e37f151eb98a09618ddaa80c8cfaf1ce5996867c489f45b555b412271ebf278e8e865f015187602001518760405161081e959493929190611758565b60405180910390a36020820151825161083791906116d5565b341115610886576020820151825133916108fc9161085591906116d5565b61085f9034611788565b6040518115909202915f818181858888f19350505050158015610884573d5f803e3d5ffd5b505b505050505050505050505050565b604080518082019091525f808252602082015282516020840120604051636b727d4360e11b8152600481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116916350e9a7159187917f00000000000000000000000000000000000000000000000000000000000000009091169063d6e4fa8690602401602060405180830381865afa158015610940573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109649190611732565b866040518463ffffffff1660e01b8152600401610983939291906117e8565b6040805180830381865afa15801561099d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109c1919061180c565b949350505050565b5f60036109d583611044565b101592915050565b5f83836040516109ee929190611749565b604080519182900382206020601f8701819004810284018101909252858352925082915f91610a39919088908890819084018382808284375f92019190915250889250610894915050565b8051909150341015610a5e5760405163044044a560e21b815260040160405180910390fd5b60405163c475abff60e01b815260048101839052602481018590525f907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063c475abff906044016020604051808303815f875af1158015610acb573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610aef9190611732565b8251909150341115610b3457815133906108fc90610b0d9034611788565b6040518115909202915f818181858888f19350505050158015610b32573d5f803e3d5ffd5b505b837f3da24c024582931cfaf8267d8ed24d13a82a8068d5bd337d30ec45cea4e506ae88883485604051610b6a9493929190611859565b60405180910390a250505050505050565b805160208201205f90610b8d836109c9565b8015610c1b57506040516312dc929d60e31b8152600481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906396e494e890602401602060405180830381865afa158015610bf7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c1b9190611589565b9392505050565b5f818152600160205260409020544290610c5d907f0000000000000000000000000000000000000000000000000000000000000000906116d5565b10610c8357604051630a059d7160e01b8152600481018290526024015b60405180910390fd5b5f908152600160205260409020429055565b610c9d610d0b565b6001600160a01b038116610d025760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610c7a565b61048681610d64565b5f546001600160a01b0316331461059c5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610c7a565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f818152600160205260409020544290610dee907f0000000000000000000000000000000000000000000000000000000000000000906116d5565b1115610e1057604051635320bcf960e01b815260048101829052602401610c7a565b5f818152600160205260409020544290610e4b907f0000000000000000000000000000000000000000000000000000000000000000906116d5565b11610e6c5760405163cb7690d760e01b815260048101829052602401610c7a565b610e7583610b7b565b610e9457826040516308eee0fd60e31b8152600401610c7a919061187f565b5f818152600160205260408120556224ea00821015610ec957604051639a71997b60e01b815260048101839052602401610c7a565b505050565b604080517f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae6020808301919091528183018690528251808303840181526060830193849052805191012063e32954eb60e01b90925285906001600160a01b0382169063e32954eb90610f4890859088908890606401611891565b5f604051808303815f875af1158015610f63573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052610f8a91908101906118b3565b50505050505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316637a806d6b33838587604051602001610fd691906119a7565b6040516020818303038152906040526040518563ffffffff1660e01b815260040161100494939291906119ce565b6020604051808303815f875af1158015611020573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105019190611732565b80515f90819081905b8082101561113c575f85838151811061106857611068611a0b565b01602001516001600160f81b0319169050600160ff1b811015611097576110906001846116d5565b9250611129565b600760fd1b6001600160f81b0319821610156110b8576110906002846116d5565b600f60fc1b6001600160f81b0319821610156110d9576110906003846116d5565b601f60fb1b6001600160f81b0319821610156110fa576110906004846116d5565b603f60fa1b6001600160f81b03198216101561111b576110906005846116d5565b6111266006846116d5565b92505b508261113481611a1f565b93505061104d565b50909392505050565b5f60208284031215611155575f80fd5b81356001600160e01b031981168114610c1b575f80fd5b80356001600160a01b0381168114611182575f80fd5b919050565b5f805f60608486031215611199575f80fd5b6111a28461116c565b92506111b06020850161116c565b9150604084013590509250925092565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff811182821017156111fd576111fd6111c0565b604052919050565b5f67ffffffffffffffff82111561121e5761121e6111c0565b50601f01601f191660200190565b5f82601f83011261123b575f80fd5b813561124e61124982611205565b6111d4565b818152846020838601011115611262575f80fd5b816020850160208301375f918101602001919091529392505050565b5f8083601f84011261128e575f80fd5b50813567ffffffffffffffff8111156112a5575f80fd5b6020830191508360208260051b85010111156112bf575f80fd5b9250929050565b8015158114610486575f80fd5b803561ffff81168114611182575f80fd5b5f805f805f805f805f6101008a8c0312156112fd575f80fd5b893567ffffffffffffffff80821115611314575f80fd5b6113208d838e0161122c565b9a5061132e60208d0161116c565b995060408c0135985060608c0135975061134a60808d0161116c565b965060a08c013591508082111561135f575f80fd5b5061136c8c828d0161127e565b90955093505060c08a0135611380816112c6565b915061138e60e08b016112d3565b90509295985092959850929598565b5f8083601f8401126113ad575f80fd5b50813567ffffffffffffffff8111156113c4575f80fd5b6020830191508360208285010111156112bf575f80fd5b5f805f805f805f805f806101008b8d0312156113f5575f80fd5b8a3567ffffffffffffffff8082111561140c575f80fd5b6114188e838f0161139d565b909c509a508a915061142c60208e0161116c565b995060408d0135985060608d0135975061144860808e0161116c565b965060a08d013591508082111561145d575f80fd5b5061146a8d828e0161127e565b90955093505060c08b013561147e816112c6565b915061148c60e08c016112d3565b90509295989b9194979a5092959850565b5f602082840312156114ad575f80fd5b5035919050565b5f80604083850312156114c5575f80fd5b823567ffffffffffffffff8111156114db575f80fd5b6114e78582860161122c565b95602094909401359450505050565b5f60208284031215611506575f80fd5b813567ffffffffffffffff81111561151c575f80fd5b6109c18482850161122c565b5f805f6040848603121561153a575f80fd5b833567ffffffffffffffff811115611550575f80fd5b61155c8682870161139d565b909790965060209590950135949350505050565b5f60208284031215611580575f80fd5b610c1b8261116c565b5f60208284031215611599575f80fd5b8151610c1b816112c6565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b5f838385526020808601955060208560051b830101845f5b8781101561165157848303601f19018952813536889003601e19018112611609575f80fd5b8701848101903567ffffffffffffffff811115611624575f80fd5b803603821315611632575f80fd5b61163d8582846115a4565b9a86019a94505050908301906001016115e4565b5090979650505050505050565b8981526001600160a01b03898116602083015260408201899052606082018890528616608082015261010060a082018190525f9061169f83820187896115cc565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610449576104496116c1565b60a081525f6116fb60a08301888a6115a4565b6001600160a01b03968716602084015260408301959095525091909316606082015261ffff90921660809092019190915292915050565b5f60208284031215611742575f80fd5b5051919050565b818382375f9101908152919050565b608081525f61176b6080830187896115a4565b602083019590955250604081019290925260609091015292915050565b81810381811115610449576104496116c1565b5f5b838110156117b557818101518382015260200161179d565b50505f910152565b5f81518084526117d481602086016020860161179b565b601f01601f19169290920160200192915050565b606081525f6117fa60608301866117bd565b60208301949094525060400152919050565b5f6040828403121561181c575f80fd5b6040516040810181811067ffffffffffffffff8211171561183f5761183f6111c0565b604052825181526020928301519281019290925250919050565b606081525f61186c6060830186886115a4565b6020830194909452506040015292915050565b602081525f610c1b60208301846117bd565b838152604060208201525f6118aa6040830184866115cc565b95945050505050565b5f60208083850312156118c4575f80fd5b825167ffffffffffffffff808211156118db575f80fd5b818501915085601f8301126118ee575f80fd5b815181811115611900576119006111c0565b8060051b61190f8582016111d4565b9182528381018501918581019089841115611928575f80fd5b86860192505b8383101561199a57825185811115611944575f80fd5b8601603f81018b13611954575f80fd5b87810151604061196661124983611205565b8281528d82848601011115611979575f80fd5b611988838c830184870161179b565b8552505050918601919086019061192e565b9998505050505050505050565b5f82516119b881846020870161179b565b6305ccae8d60e31b920191825250600401919050565b6001600160a01b0385811682528481166020830152831660408201526080606082018190525f90611a01908301846117bd565b9695505050505050565b634e487b7160e01b5f52603260045260245ffd5b5f60018201611a3057611a306116c1565b506001019056fea164736f6c6343000818000a", + "deployedBytecode": "0x60806040526004361061011b575f3560e01c80638d839ffe1161009d578063aeb8ce9b11610062578063aeb8ce9b14610356578063ce1e09c014610375578063d3419bf3146103a8578063f14fcbc8146103db578063f2fde38b146103fa575f80fd5b80638d839ffe146102a25780638da5cb5b146102d55780639791c097146102f1578063a8e5fbc014610310578063acf1a84114610343575f80fd5b806374694a2b116100e357806374694a2b146101c957806380869853146101dc578063839df9451461022757806383e7f6ff146102525780638a95b09f1461028c575f80fd5b806301ffc9a71461011f5780633ccfd60b146101535780635d3590d51461016957806365a69dcf14610188578063715018a6146101b5575b5f80fd5b34801561012a575f80fd5b5061013e610139366004611145565b610419565b60405190151581526020015b60405180910390f35b34801561015e575f80fd5b5061016761044f565b005b348015610174575f80fd5b50610167610183366004611187565b610489565b348015610193575f80fd5b506101a76101a23660046112e4565b610507565b60405190815260200161014a565b3480156101c0575f80fd5b5061016761058b565b6101676101d73660046113db565b61059e565b3480156101e7575f80fd5b5061020f7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b03909116815260200161014a565b348015610232575f80fd5b506101a761024136600461149d565b60016020525f908152604090205481565b34801561025d575f80fd5b5061027161026c3660046114b4565b610894565b6040805182518152602092830151928101929092520161014a565b348015610297575f80fd5b506101a76224ea0081565b3480156102ad575f80fd5b506101a77f000000000000000000000000000000000000000000000000000000000000000081565b3480156102e0575f80fd5b505f546001600160a01b031661020f565b3480156102fc575f80fd5b5061013e61030b3660046114f6565b6109c9565b34801561031b575f80fd5b5061020f7f000000000000000000000000000000000000000000000000000000000000000081565b610167610351366004611528565b6109dd565b348015610361575f80fd5b5061013e6103703660046114f6565b610b7b565b348015610380575f80fd5b506101a77f000000000000000000000000000000000000000000000000000000000000000081565b3480156103b3575f80fd5b5061020f7f000000000000000000000000000000000000000000000000000000000000000081565b3480156103e6575f80fd5b506101676103f536600461149d565b610c22565b348015610405575f80fd5b50610167610414366004611570565b610c95565b5f6001600160e01b031982166301ffc9a760e01b148061044957506001600160e01b0319821663612e8c0960e01b145b92915050565b5f80546040516001600160a01b03909116914780156108fc02929091818181858888f19350505050158015610486573d5f803e3d5ffd5b50565b610491610d0b565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af11580156104dd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105019190611589565b50505050565b885160208a01205f90841580159061052657506001600160a01b038716155b15610544576040516334fd817160e21b815260040160405180910390fd5b808a8a8a8a8a8a8a8a6040516020016105659998979695949392919061165e565b604051602081830303815290604052805190602001209150509998505050505050505050565b610593610d0b565b61059c5f610d64565b565b5f6105df8b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c9250610894915050565b602081015181519192506105f2916116d5565b3410156106125760405163044044a560e21b815260040160405180910390fd5b6106b38b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f82011690508083019250505050505050896106ae8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f820116905080830192505050505050508d8d8d8d8d8d8d8d610507565b610db3565b604051635200a4c160e11b81525f906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063a40149829061070b908f908f908f908f908e908b906004016116e8565b6020604051808303815f875af1158015610727573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061074b9190611732565b9050841561077657610776878d8d604051610767929190611749565b60405180910390208888610ece565b83156107be576107be8c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508b9250339150610f939050565b896001600160a01b03168c8c6040516107d8929190611749565b60405180910390207f69e37f151eb98a09618ddaa80c8cfaf1ce5996867c489f45b555b412271ebf278e8e865f015187602001518760405161081e959493929190611758565b60405180910390a36020820151825161083791906116d5565b341115610886576020820151825133916108fc9161085591906116d5565b61085f9034611788565b6040518115909202915f818181858888f19350505050158015610884573d5f803e3d5ffd5b505b505050505050505050505050565b604080518082019091525f808252602082015282516020840120604051636b727d4360e11b8152600481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116916350e9a7159187917f00000000000000000000000000000000000000000000000000000000000000009091169063d6e4fa8690602401602060405180830381865afa158015610940573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109649190611732565b866040518463ffffffff1660e01b8152600401610983939291906117e8565b6040805180830381865afa15801561099d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109c1919061180c565b949350505050565b5f60036109d583611044565b101592915050565b5f83836040516109ee929190611749565b604080519182900382206020601f8701819004810284018101909252858352925082915f91610a39919088908890819084018382808284375f92019190915250889250610894915050565b8051909150341015610a5e5760405163044044a560e21b815260040160405180910390fd5b60405163c475abff60e01b815260048101839052602481018590525f907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063c475abff906044016020604051808303815f875af1158015610acb573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610aef9190611732565b8251909150341115610b3457815133906108fc90610b0d9034611788565b6040518115909202915f818181858888f19350505050158015610b32573d5f803e3d5ffd5b505b837f3da24c024582931cfaf8267d8ed24d13a82a8068d5bd337d30ec45cea4e506ae88883485604051610b6a9493929190611859565b60405180910390a250505050505050565b805160208201205f90610b8d836109c9565b8015610c1b57506040516312dc929d60e31b8152600481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906396e494e890602401602060405180830381865afa158015610bf7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c1b9190611589565b9392505050565b5f818152600160205260409020544290610c5d907f0000000000000000000000000000000000000000000000000000000000000000906116d5565b10610c8357604051630a059d7160e01b8152600481018290526024015b60405180910390fd5b5f908152600160205260409020429055565b610c9d610d0b565b6001600160a01b038116610d025760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610c7a565b61048681610d64565b5f546001600160a01b0316331461059c5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610c7a565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f818152600160205260409020544290610dee907f0000000000000000000000000000000000000000000000000000000000000000906116d5565b1115610e1057604051635320bcf960e01b815260048101829052602401610c7a565b5f818152600160205260409020544290610e4b907f0000000000000000000000000000000000000000000000000000000000000000906116d5565b11610e6c5760405163cb7690d760e01b815260048101829052602401610c7a565b610e7583610b7b565b610e9457826040516308eee0fd60e31b8152600401610c7a919061187f565b5f818152600160205260408120556224ea00821015610ec957604051639a71997b60e01b815260048101839052602401610c7a565b505050565b604080517f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae6020808301919091528183018690528251808303840181526060830193849052805191012063e32954eb60e01b90925285906001600160a01b0382169063e32954eb90610f4890859088908890606401611891565b5f604051808303815f875af1158015610f63573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052610f8a91908101906118b3565b50505050505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316637a806d6b33838587604051602001610fd691906119a7565b6040516020818303038152906040526040518563ffffffff1660e01b815260040161100494939291906119ce565b6020604051808303815f875af1158015611020573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105019190611732565b80515f90819081905b8082101561113c575f85838151811061106857611068611a0b565b01602001516001600160f81b0319169050600160ff1b811015611097576110906001846116d5565b9250611129565b600760fd1b6001600160f81b0319821610156110b8576110906002846116d5565b600f60fc1b6001600160f81b0319821610156110d9576110906003846116d5565b601f60fb1b6001600160f81b0319821610156110fa576110906004846116d5565b603f60fa1b6001600160f81b03198216101561111b576110906005846116d5565b6111266006846116d5565b92505b508261113481611a1f565b93505061104d565b50909392505050565b5f60208284031215611155575f80fd5b81356001600160e01b031981168114610c1b575f80fd5b80356001600160a01b0381168114611182575f80fd5b919050565b5f805f60608486031215611199575f80fd5b6111a28461116c565b92506111b06020850161116c565b9150604084013590509250925092565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff811182821017156111fd576111fd6111c0565b604052919050565b5f67ffffffffffffffff82111561121e5761121e6111c0565b50601f01601f191660200190565b5f82601f83011261123b575f80fd5b813561124e61124982611205565b6111d4565b818152846020838601011115611262575f80fd5b816020850160208301375f918101602001919091529392505050565b5f8083601f84011261128e575f80fd5b50813567ffffffffffffffff8111156112a5575f80fd5b6020830191508360208260051b85010111156112bf575f80fd5b9250929050565b8015158114610486575f80fd5b803561ffff81168114611182575f80fd5b5f805f805f805f805f6101008a8c0312156112fd575f80fd5b893567ffffffffffffffff80821115611314575f80fd5b6113208d838e0161122c565b9a5061132e60208d0161116c565b995060408c0135985060608c0135975061134a60808d0161116c565b965060a08c013591508082111561135f575f80fd5b5061136c8c828d0161127e565b90955093505060c08a0135611380816112c6565b915061138e60e08b016112d3565b90509295985092959850929598565b5f8083601f8401126113ad575f80fd5b50813567ffffffffffffffff8111156113c4575f80fd5b6020830191508360208285010111156112bf575f80fd5b5f805f805f805f805f806101008b8d0312156113f5575f80fd5b8a3567ffffffffffffffff8082111561140c575f80fd5b6114188e838f0161139d565b909c509a508a915061142c60208e0161116c565b995060408d0135985060608d0135975061144860808e0161116c565b965060a08d013591508082111561145d575f80fd5b5061146a8d828e0161127e565b90955093505060c08b013561147e816112c6565b915061148c60e08c016112d3565b90509295989b9194979a5092959850565b5f602082840312156114ad575f80fd5b5035919050565b5f80604083850312156114c5575f80fd5b823567ffffffffffffffff8111156114db575f80fd5b6114e78582860161122c565b95602094909401359450505050565b5f60208284031215611506575f80fd5b813567ffffffffffffffff81111561151c575f80fd5b6109c18482850161122c565b5f805f6040848603121561153a575f80fd5b833567ffffffffffffffff811115611550575f80fd5b61155c8682870161139d565b909790965060209590950135949350505050565b5f60208284031215611580575f80fd5b610c1b8261116c565b5f60208284031215611599575f80fd5b8151610c1b816112c6565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b5f838385526020808601955060208560051b830101845f5b8781101561165157848303601f19018952813536889003601e19018112611609575f80fd5b8701848101903567ffffffffffffffff811115611624575f80fd5b803603821315611632575f80fd5b61163d8582846115a4565b9a86019a94505050908301906001016115e4565b5090979650505050505050565b8981526001600160a01b03898116602083015260408201899052606082018890528616608082015261010060a082018190525f9061169f83820187896115cc565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610449576104496116c1565b60a081525f6116fb60a08301888a6115a4565b6001600160a01b03968716602084015260408301959095525091909316606082015261ffff90921660809092019190915292915050565b5f60208284031215611742575f80fd5b5051919050565b818382375f9101908152919050565b608081525f61176b6080830187896115a4565b602083019590955250604081019290925260609091015292915050565b81810381811115610449576104496116c1565b5f5b838110156117b557818101518382015260200161179d565b50505f910152565b5f81518084526117d481602086016020860161179b565b601f01601f19169290920160200192915050565b606081525f6117fa60608301866117bd565b60208301949094525060400152919050565b5f6040828403121561181c575f80fd5b6040516040810181811067ffffffffffffffff8211171561183f5761183f6111c0565b604052825181526020928301519281019290925250919050565b606081525f61186c6060830186886115a4565b6020830194909452506040015292915050565b602081525f610c1b60208301846117bd565b838152604060208201525f6118aa6040830184866115cc565b95945050505050565b5f60208083850312156118c4575f80fd5b825167ffffffffffffffff808211156118db575f80fd5b818501915085601f8301126118ee575f80fd5b815181811115611900576119006111c0565b8060051b61190f8582016111d4565b9182528381018501918581019089841115611928575f80fd5b86860192505b8383101561199a57825185811115611944575f80fd5b8601603f81018b13611954575f80fd5b87810151604061196661124983611205565b8281528d82848601011115611979575f80fd5b611988838c830184870161179b565b8552505050918601919086019061192e565b9998505050505050505050565b5f82516119b881846020870161179b565b6305ccae8d60e31b920191825250600401919050565b6001600160a01b0385811682528481166020830152831660408201526080606082018190525f90611a01908301846117bd565b9695505050505050565b634e487b7160e01b5f52603260045260245ffd5b5f60018201611a3057611a306116c1565b506001019056fea164736f6c6343000818000a", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/artifacts/Executor.json b/artifacts/Executor.json new file mode 100644 index 00000000..64248a00 --- /dev/null +++ b/artifacts/Executor.json @@ -0,0 +1,653 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "Executor", + "sourceName": "seaport-core/src/lib/Executor.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "conduitController", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [], + "name": "BadContractSignature", + "type": "error" + }, + { + "inputs": [], + "name": "BadFraction", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "BadReturnValueFromERC20OnTransfer", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint8", + "name": "v", + "type": "uint8" + } + ], + "name": "BadSignatureV", + "type": "error" + }, + { + "inputs": [], + "name": "CannotCancelOrder", + "type": "error" + }, + { + "inputs": [], + "name": "ConsiderationLengthNotEqualToTotalOriginal", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "considerationIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "shortfallAmount", + "type": "uint256" + } + ], + "name": "ConsiderationNotMet", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256[]", + "name": "identifiers", + "type": "uint256[]" + }, + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + } + ], + "name": "ERC1155BatchTransferGenericFailure", + "type": "error" + }, + { + "inputs": [], + "name": "InsufficientNativeTokensSupplied", + "type": "error" + }, + { + "inputs": [], + "name": "Invalid1155BatchTransferEncoding", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidBasicOrderParameterEncoding", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "conduit", + "type": "address" + } + ], + "name": "InvalidCallToConduit", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "conduit", + "type": "address" + } + ], + "name": "InvalidConduit", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "InvalidERC721TransferAmount", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "InvalidMsgValue", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidNativeOfferItem", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidSignature", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidSigner", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + } + ], + "name": "InvalidTime", + "type": "error" + }, + { + "inputs": [], + "name": "MissingItemAmount", + "type": "error" + }, + { + "inputs": [], + "name": "MissingOriginalConsiderationItems", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "NativeTokenTransferGenericFailure", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "NoContract", + "type": "error" + }, + { + "inputs": [], + "name": "NoReentrantCalls", + "type": "error" + }, + { + "inputs": [], + "name": "NoSpecifiedOrdersAvailable", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "OrderAlreadyFilled", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "OrderIsCancelled", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "OrderPartiallyFilled", + "type": "error" + }, + { + "inputs": [], + "name": "PartialFillsNotEnabledForOrder", + "type": "error" + }, + { + "inputs": [], + "name": "TStoreAlreadyActivated", + "type": "error" + }, + { + "inputs": [], + "name": "TStoreNotSupported", + "type": "error" + }, + { + "inputs": [], + "name": "TloadTestContractDeploymentFailed", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "TokenTransferGenericFailure", + "type": "error" + }, + { + "inputs": [], + "name": "UnusedItemParameters", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint256", + "name": "newCounter", + "type": "uint256" + }, + { + "indexed": true, + "internalType": "address", + "name": "offerer", + "type": "address" + } + ], + "name": "CounterIncremented", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "zone", + "type": "address" + } + ], + "name": "OrderCancelled", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "indexed": false, + "internalType": "struct SpentItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "indexed": false, + "internalType": "struct ReceivedItem[]", + "name": "consideration", + "type": "tuple[]" + } + ], + "name": "OrderFulfilled", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + }, + { + "components": [ + { + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + } + ], + "internalType": "struct OfferItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct ConsiderationItem[]", + "name": "consideration", + "type": "tuple[]" + }, + { + "internalType": "enum OrderType", + "name": "orderType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "zoneHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "salt", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "totalOriginalConsiderationItems", + "type": "uint256" + } + ], + "indexed": false, + "internalType": "struct OrderParameters", + "name": "orderParameters", + "type": "tuple" + } + ], + "name": "OrderValidated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32[]", + "name": "orderHashes", + "type": "bytes32[]" + } + ], + "name": "OrdersMatched", + "type": "event" + }, + { + "inputs": [], + "name": "__activateTstore", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x610200604052348015610010575f80fd5b5060405161079338038061079383398101604081905261002f916102f9565b8080808061003b61015c565b610120526101005260e05260c081905260a082815246610140819052604080515f9485526020879052948152606091825230608090815292842085825293909152939052610160526001600160a01b038316610180819052630a96ad3960e01b825282519092630a96ad3992600480820193918290030181865afa1580156100c5573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906100e99190610326565b506101a052505f90506100fa610282565b90506001600160a01b03811661012357604051632aea588760e01b815260040160405180910390fd5b5f61012d8261029b565b8015156101c0526001600160a01b0383166101e05290508061015257600163929eee14555b50505050506103ba565b5f808080808061018c60408051808201909152600d81526c21b7b739b4b232b930ba34b7b760991b602082015290565b8051906020012095506040518060400160405280600381526020016218971b60e91b8152508051906020012094505f6040518060a00160405280606a8152602001610729606a913990505f6040518060c001604052806084815260200161057f6084913990505f60405180610100016040528060d4815260200161065560d4913990506040518060800160405280605281526020016106036052913980519060200120965082805190602001209550818051906020012094505f81838560405160200161025b93929190610375565b60405160208183030381529060405290508080519060200120945050505050909192939495565b5f696002601e613d5c3d52f35f52600a60165ff0905090565b5f816001600160a01b0316600a5a6102b3919061039b565b6040515f8181818686fa925050503d805f81146102eb576040519150601f19603f3d011682016040523d82523d5f602084013e6102f0565b606091505b50909392505050565b5f60208284031215610309575f80fd5b81516001600160a01b038116811461031f575f80fd5b9392505050565b5f8060408385031215610337575f80fd5b505080516020909101519092909150565b5f81515f5b81811015610367576020818501810151868301520161034d565b505f93019283525090919050565b5f61039261038c6103868488610348565b86610348565b84610348565b95945050505050565b5f826103b557634e487b7160e01b5f52601260045260245ffd5b500490565b60805160a05160c05160e05161010051610120516101405161016051610180516101a0516101c0516101e05161016261041d5f395f608d01525f604201525f50505f50505f50505f50505f50505f50505f50505f50505f50505f50506101625ff3fe608060405234801561000f575f80fd5b5060043610610029575f3560e01c80637423eb3c1461002d575b5f80fd5b610035610037565b005b63929eee14546001147f00000000000000000000000000000000000000000000000000000000000000008061006a575080155b1561008857604051630f45b98b60e41b815260040160405180910390fd5b6100b17f00000000000000000000000000000000000000000000000000000000000000006100d8565b6100ce576040516370a4078f60e01b815260040160405180910390fd5b5f63929eee145550565b5f816001600160a01b0316600a5a6100f09190610136565b6040515f8181818686fa925050503d805f8114610128576040519150601f19603f3d011682016040523d82523d5f602084013e61012d565b606091505b50909392505050565b5f8261015057634e487b7160e01b5f52601260045260245ffd5b50049056fea164736f6c6343000818000a436f6e73696465726174696f6e4974656d2875696e7438206974656d547970652c6164647265737320746f6b656e2c75696e74323536206964656e7469666965724f7243726974657269612c75696e74323536207374617274416d6f756e742c75696e7432353620656e64416d6f756e742c6164647265737320726563697069656e7429454950373132446f6d61696e28737472696e67206e616d652c737472696e672076657273696f6e2c75696e7432353620636861696e49642c6164647265737320766572696679696e67436f6e7472616374294f72646572436f6d706f6e656e74732861646472657373206f6666657265722c61646472657373207a6f6e652c4f666665724974656d5b5d206f666665722c436f6e73696465726174696f6e4974656d5b5d20636f6e73696465726174696f6e2c75696e7438206f72646572547970652c75696e7432353620737461727454696d652c75696e7432353620656e6454696d652c62797465733332207a6f6e65486173682c75696e743235362073616c742c6279746573333220636f6e647569744b65792c75696e7432353620636f756e746572294f666665724974656d2875696e7438206974656d547970652c6164647265737320746f6b656e2c75696e74323536206964656e7469666965724f7243726974657269612c75696e74323536207374617274416d6f756e742c75696e7432353620656e64416d6f756e7429", + "deployedBytecode": "0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c80637423eb3c1461002d575b5f80fd5b610035610037565b005b63929eee14546001147f00000000000000000000000000000000000000000000000000000000000000008061006a575080155b1561008857604051630f45b98b60e41b815260040160405180910390fd5b6100b17f00000000000000000000000000000000000000000000000000000000000000006100d8565b6100ce576040516370a4078f60e01b815260040160405180910390fd5b5f63929eee145550565b5f816001600160a01b0316600a5a6100f09190610136565b6040515f8181818686fa925050503d805f8114610128576040519150601f19603f3d011682016040523d82523d5f602084013e61012d565b606091505b50909392505050565b5f8261015057634e487b7160e01b5f52601260045260245ffd5b50049056fea164736f6c6343000818000a", + "linkReferences": {}, + "deployedLinkReferences": {} +} diff --git a/artifacts/FulfillmentApplicationErrors.json b/artifacts/FulfillmentApplicationErrors.json new file mode 100644 index 00000000..90113e64 --- /dev/null +++ b/artifacts/FulfillmentApplicationErrors.json @@ -0,0 +1,43 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "FulfillmentApplicationErrors", + "sourceName": "seaport-types/src/interfaces/FulfillmentApplicationErrors.sol", + "abi": [ + { + "inputs": [], + "name": "InvalidFulfillmentComponentData", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "fulfillmentIndex", + "type": "uint256" + } + ], + "name": "MismatchedFulfillmentOfferAndConsiderationComponents", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "enum Side", + "name": "side", + "type": "uint8" + } + ], + "name": "MissingFulfillmentComponentOnAggregation", + "type": "error" + }, + { + "inputs": [], + "name": "OfferAndConsiderationRequiredOnFulfillment", + "type": "error" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x", + "linkReferences": {}, + "deployedLinkReferences": {} +} diff --git a/artifacts/FulfillmentApplier.json b/artifacts/FulfillmentApplier.json new file mode 100644 index 00000000..ec47865d --- /dev/null +++ b/artifacts/FulfillmentApplier.json @@ -0,0 +1,43 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "FulfillmentApplier", + "sourceName": "seaport-core/src/lib/FulfillmentApplier.sol", + "abi": [ + { + "inputs": [], + "name": "InvalidFulfillmentComponentData", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "fulfillmentIndex", + "type": "uint256" + } + ], + "name": "MismatchedFulfillmentOfferAndConsiderationComponents", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "enum Side", + "name": "side", + "type": "uint8" + } + ], + "name": "MissingFulfillmentComponentOnAggregation", + "type": "error" + }, + { + "inputs": [], + "name": "OfferAndConsiderationRequiredOnFulfillment", + "type": "error" + } + ], + "bytecode": "0x6080604052348015600e575f80fd5b50601580601a5f395ff3fe60806040525f80fdfea164736f6c6343000818000a", + "deployedBytecode": "0x60806040525f80fdfea164736f6c6343000818000a", + "linkReferences": {}, + "deployedLinkReferences": {} +} diff --git a/artifacts/GettersAndDerivers.json b/artifacts/GettersAndDerivers.json new file mode 100644 index 00000000..fde4b672 --- /dev/null +++ b/artifacts/GettersAndDerivers.json @@ -0,0 +1,475 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "GettersAndDerivers", + "sourceName": "seaport-core/src/lib/GettersAndDerivers.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "conduitController", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [], + "name": "BadFraction", + "type": "error" + }, + { + "inputs": [], + "name": "CannotCancelOrder", + "type": "error" + }, + { + "inputs": [], + "name": "ConsiderationLengthNotEqualToTotalOriginal", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "considerationIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "shortfallAmount", + "type": "uint256" + } + ], + "name": "ConsiderationNotMet", + "type": "error" + }, + { + "inputs": [], + "name": "InsufficientNativeTokensSupplied", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidBasicOrderParameterEncoding", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "conduit", + "type": "address" + } + ], + "name": "InvalidCallToConduit", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "conduit", + "type": "address" + } + ], + "name": "InvalidConduit", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "InvalidMsgValue", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidNativeOfferItem", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + } + ], + "name": "InvalidTime", + "type": "error" + }, + { + "inputs": [], + "name": "MissingOriginalConsiderationItems", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "NativeTokenTransferGenericFailure", + "type": "error" + }, + { + "inputs": [], + "name": "NoSpecifiedOrdersAvailable", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "OrderAlreadyFilled", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "OrderIsCancelled", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "OrderPartiallyFilled", + "type": "error" + }, + { + "inputs": [], + "name": "PartialFillsNotEnabledForOrder", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint256", + "name": "newCounter", + "type": "uint256" + }, + { + "indexed": true, + "internalType": "address", + "name": "offerer", + "type": "address" + } + ], + "name": "CounterIncremented", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "zone", + "type": "address" + } + ], + "name": "OrderCancelled", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "indexed": false, + "internalType": "struct SpentItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "indexed": false, + "internalType": "struct ReceivedItem[]", + "name": "consideration", + "type": "tuple[]" + } + ], + "name": "OrderFulfilled", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + }, + { + "components": [ + { + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + } + ], + "internalType": "struct OfferItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct ConsiderationItem[]", + "name": "consideration", + "type": "tuple[]" + }, + { + "internalType": "enum OrderType", + "name": "orderType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "zoneHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "salt", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "totalOriginalConsiderationItems", + "type": "uint256" + } + ], + "indexed": false, + "internalType": "struct OrderParameters", + "name": "orderParameters", + "type": "tuple" + } + ], + "name": "OrderValidated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32[]", + "name": "orderHashes", + "type": "bytes32[]" + } + ], + "name": "OrdersMatched", + "type": "event" + } + ], + "bytecode": "0x6101c0604052348015610010575f80fd5b5060405161053338038061053383398101604081905261002f91610219565b806100386100f3565b610120526101005260e05260c081905260a082815246610140819052604080515f9485526020879052948152606091825230608090815292842085825293909152939052610160526001600160a01b038316610180819052630a96ad3960e01b825282519092630a96ad3992600480820193918290030181865afa1580156100c2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906100e69190610246565b506101a052506102bb9050565b5f808080808061012360408051808201909152600d81526c21b7b739b4b232b930ba34b7b760991b602082015290565b8051906020012095506040518060400160405280600381526020016218971b60e91b8152508051906020012094505f6040518060a00160405280606a81526020016104c9606a913990505f6040518060c001604052806084815260200161031f6084913990505f60405180610100016040528060d481526020016103f560d4913990506040518060800160405280605281526020016103a36052913980519060200120965082805190602001209550818051906020012094505f8183856040516020016101f293929190610295565b60405160208183030381529060405290508080519060200120945050505050909192939495565b5f60208284031215610229575f80fd5b81516001600160a01b038116811461023f575f80fd5b9392505050565b5f8060408385031215610257575f80fd5b505080516020909101519092909150565b5f81515f5b81811015610287576020818501810151868301520161026d565b505f93019283525090919050565b5f6102b26102ac6102a68488610268565b86610268565b84610268565b95945050505050565b60805160a05160c05160e05161010051610120516101405161016051610180516101a051601561030a5f395f50505f50505f50505f50505f50505f50505f50505f50505f50505f505060155ff3fe60806040525f80fdfea164736f6c6343000818000a436f6e73696465726174696f6e4974656d2875696e7438206974656d547970652c6164647265737320746f6b656e2c75696e74323536206964656e7469666965724f7243726974657269612c75696e74323536207374617274416d6f756e742c75696e7432353620656e64416d6f756e742c6164647265737320726563697069656e7429454950373132446f6d61696e28737472696e67206e616d652c737472696e672076657273696f6e2c75696e7432353620636861696e49642c6164647265737320766572696679696e67436f6e7472616374294f72646572436f6d706f6e656e74732861646472657373206f6666657265722c61646472657373207a6f6e652c4f666665724974656d5b5d206f666665722c436f6e73696465726174696f6e4974656d5b5d20636f6e73696465726174696f6e2c75696e7438206f72646572547970652c75696e7432353620737461727454696d652c75696e7432353620656e6454696d652c62797465733332207a6f6e65486173682c75696e743235362073616c742c6279746573333220636f6e647569744b65792c75696e7432353620636f756e746572294f666665724974656d2875696e7438206974656d547970652c6164647265737320746f6b656e2c75696e74323536206964656e7469666965724f7243726974657269612c75696e74323536207374617274416d6f756e742c75696e7432353620656e64416d6f756e7429", + "deployedBytecode": "0x60806040525f80fdfea164736f6c6343000818000a", + "linkReferences": {}, + "deployedLinkReferences": {} +} diff --git a/artifacts/ISeaportProxyBuyer.json b/artifacts/ISeaportProxyBuyer.json new file mode 100644 index 00000000..4efed64c --- /dev/null +++ b/artifacts/ISeaportProxyBuyer.json @@ -0,0 +1,247 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "ISeaportProxyBuyer", + "sourceName": "contracts/marketplace/ISeaportProxyBuyer.sol", + "abi": [ + { + "inputs": [ + { + "components": [ + { + "components": [ + { + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + } + ], + "internalType": "struct OfferItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct ConsiderationItem[]", + "name": "consideration", + "type": "tuple[]" + }, + { + "internalType": "enum OrderType", + "name": "orderType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "zoneHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "salt", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "totalOriginalConsiderationItems", + "type": "uint256" + } + ], + "internalType": "struct OrderParameters", + "name": "parameters", + "type": "tuple" + }, + { + "internalType": "uint120", + "name": "numerator", + "type": "uint120" + }, + { + "internalType": "uint120", + "name": "denominator", + "type": "uint120" + }, + { + "internalType": "bytes", + "name": "signature", + "type": "bytes" + }, + { + "internalType": "bytes", + "name": "extraData", + "type": "bytes" + } + ], + "internalType": "struct AdvancedOrder", + "name": "advancedOrder", + "type": "tuple" + }, + { + "components": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "enum Side", + "name": "side", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "index", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "bytes32[]", + "name": "criteriaProof", + "type": "bytes32[]" + } + ], + "internalType": "struct CriteriaResolver[]", + "name": "criteriaResolvers", + "type": "tuple[]" + }, + { + "internalType": "bytes32", + "name": "fulfillerConduitKey", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "recipient", + "type": "address" + } + ], + "name": "fulfillAdvancedOrder", + "outputs": [ + { + "internalType": "bool", + "name": "fulfilled", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "pause", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "unpause", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "withdraw", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x", + "linkReferences": {}, + "deployedLinkReferences": {} +} diff --git a/artifacts/LegacyENSRegistry.json b/artifacts/LegacyENSRegistry.json index 6b76a239..95a43430 100644 --- a/artifacts/LegacyENSRegistry.json +++ b/artifacts/LegacyENSRegistry.json @@ -225,8 +225,8 @@ "type": "function" } ], - "bytecode": "0x608060405234801561001057600080fd5b5060008080526020527fad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb580546001600160a01b031916331790556104f6806100596000396000f3fe608060405234801561001057600080fd5b506004361061007d5760003560e01c806314ab90381161005b57806314ab90381461010957806316a25cbd1461011c5780631896f70a146101695780635b0fc9c31461017c57600080fd5b80630178b8bf1461008257806302571be3146100cb57806306ab5923146100f4575b600080fd5b6100ae610090366004610416565b6000908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100ae6100d9366004610416565b6000908152602081905260409020546001600160a01b031690565b61010761010236600461044b565b61018f565b005b610107610117366004610480565b61024c565b61015061012a366004610416565b600090815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100c2565b6101076101773660046104bd565b6102ef565b61010761018a3660046104bd565b610384565b60008381526020819052604090205483906001600160a01b031633146101b457600080fd5b60408051602080820187905281830186905282518083038401815260608301808552815191909201206001600160a01b0386169091529151859187917fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829181900360800190a3600090815260208190526040902080546001600160a01b0319166001600160a01b039390931692909217909155505050565b60008281526020819052604090205482906001600160a01b0316331461027157600080fd5b60405167ffffffffffffffff8316815283907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a250600091825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b60008281526020819052604090205482906001600160a01b0316331461031457600080fd5b6040516001600160a01b038316815283907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a25060009182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b60008281526020819052604090205482906001600160a01b031633146103a957600080fd5b6040516001600160a01b038316815283907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a25060009182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b60006020828403121561042857600080fd5b5035919050565b80356001600160a01b038116811461044657600080fd5b919050565b60008060006060848603121561046057600080fd5b83359250602084013591506104776040850161042f565b90509250925092565b6000806040838503121561049357600080fd5b82359150602083013567ffffffffffffffff811681146104b257600080fd5b809150509250929050565b600080604083850312156104d057600080fd5b823591506104e06020840161042f565b9050925092905056fea164736f6c6343000811000a", - "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061007d5760003560e01c806314ab90381161005b57806314ab90381461010957806316a25cbd1461011c5780631896f70a146101695780635b0fc9c31461017c57600080fd5b80630178b8bf1461008257806302571be3146100cb57806306ab5923146100f4575b600080fd5b6100ae610090366004610416565b6000908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100ae6100d9366004610416565b6000908152602081905260409020546001600160a01b031690565b61010761010236600461044b565b61018f565b005b610107610117366004610480565b61024c565b61015061012a366004610416565b600090815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100c2565b6101076101773660046104bd565b6102ef565b61010761018a3660046104bd565b610384565b60008381526020819052604090205483906001600160a01b031633146101b457600080fd5b60408051602080820187905281830186905282518083038401815260608301808552815191909201206001600160a01b0386169091529151859187917fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829181900360800190a3600090815260208190526040902080546001600160a01b0319166001600160a01b039390931692909217909155505050565b60008281526020819052604090205482906001600160a01b0316331461027157600080fd5b60405167ffffffffffffffff8316815283907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a250600091825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b60008281526020819052604090205482906001600160a01b0316331461031457600080fd5b6040516001600160a01b038316815283907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a25060009182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b60008281526020819052604090205482906001600160a01b031633146103a957600080fd5b6040516001600160a01b038316815283907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a25060009182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b60006020828403121561042857600080fd5b5035919050565b80356001600160a01b038116811461044657600080fd5b919050565b60008060006060848603121561046057600080fd5b83359250602084013591506104776040850161042f565b90509250925092565b6000806040838503121561049357600080fd5b82359150602083013567ffffffffffffffff811681146104b257600080fd5b809150509250929050565b600080604083850312156104d057600080fd5b823591506104e06020840161042f565b9050925092905056fea164736f6c6343000811000a", + "bytecode": "0x608060405234801561000f575f80fd5b505f8080526020527fad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb580546001600160a01b031916331790556104d8806100555f395ff3fe608060405234801561000f575f80fd5b506004361061007a575f3560e01c806314ab90381161005857806314ab90381461010357806316a25cbd146101165780631896f70a146101625780635b0fc9c314610175575f80fd5b80630178b8bf1461007e57806302571be3146100c657806306ab5923146100ee575b5f80fd5b6100a961008c366004610403565b5f908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100a96100d4366004610403565b5f908152602081905260409020546001600160a01b031690565b6101016100fc366004610435565b610188565b005b610101610111366004610467565b610242565b610149610124366004610403565b5f90815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100bd565b6101016101703660046104a1565b6102e2565b6101016101833660046104a1565b610374565b5f8381526020819052604090205483906001600160a01b031633146101ab575f80fd5b60408051602080820187905281830186905282518083038401815260608301808552815191909201206001600160a01b0386169091529151859187917fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829181900360800190a35f90815260208190526040902080546001600160a01b0319166001600160a01b039390931692909217909155505050565b5f8281526020819052604090205482906001600160a01b03163314610265575f80fd5b60405167ffffffffffffffff8316815283907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a2505f91825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b5f8281526020819052604090205482906001600160a01b03163314610305575f80fd5b6040516001600160a01b038316815283907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a2505f9182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b5f8281526020819052604090205482906001600160a01b03163314610397575f80fd5b6040516001600160a01b038316815283907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a2505f9182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b5f60208284031215610413575f80fd5b5035919050565b80356001600160a01b0381168114610430575f80fd5b919050565b5f805f60608486031215610447575f80fd5b833592506020840135915061045e6040850161041a565b90509250925092565b5f8060408385031215610478575f80fd5b82359150602083013567ffffffffffffffff81168114610496575f80fd5b809150509250929050565b5f80604083850312156104b2575f80fd5b823591506104c26020840161041a565b9050925092905056fea164736f6c6343000818000a", + "deployedBytecode": "0x608060405234801561000f575f80fd5b506004361061007a575f3560e01c806314ab90381161005857806314ab90381461010357806316a25cbd146101165780631896f70a146101625780635b0fc9c314610175575f80fd5b80630178b8bf1461007e57806302571be3146100c657806306ab5923146100ee575b5f80fd5b6100a961008c366004610403565b5f908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100a96100d4366004610403565b5f908152602081905260409020546001600160a01b031690565b6101016100fc366004610435565b610188565b005b610101610111366004610467565b610242565b610149610124366004610403565b5f90815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100bd565b6101016101703660046104a1565b6102e2565b6101016101833660046104a1565b610374565b5f8381526020819052604090205483906001600160a01b031633146101ab575f80fd5b60408051602080820187905281830186905282518083038401815260608301808552815191909201206001600160a01b0386169091529151859187917fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829181900360800190a35f90815260208190526040902080546001600160a01b0319166001600160a01b039390931692909217909155505050565b5f8281526020819052604090205482906001600160a01b03163314610265575f80fd5b60405167ffffffffffffffff8316815283907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a2505f91825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b5f8281526020819052604090205482906001600160a01b03163314610305575f80fd5b6040516001600160a01b038316815283907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a2505f9182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b5f8281526020819052604090205482906001600160a01b03163314610397575f80fd5b6040516001600160a01b038316815283907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a2505f9182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b5f60208284031215610413575f80fd5b5035919050565b80356001600160a01b0381168114610430575f80fd5b919050565b5f805f60608486031215610447575f80fd5b833592506020840135915061045e6040850161041a565b90509250925092565b5f8060408385031215610478575f80fd5b82359150602083013567ffffffffffffffff81168114610496575f80fd5b809150509250929050565b5f80604083850312156104b2575f80fd5b823591506104c26020840161041a565b9050925092905056fea164736f6c6343000818000a", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/artifacts/MintingManager.json b/artifacts/MintingManager.json index 9a547a0b..222ab2b2 100644 --- a/artifacts/MintingManager.json +++ b/artifacts/MintingManager.json @@ -1156,8 +1156,8 @@ "type": "function" } ], - "bytecode": "0x608060405234801561001057600080fd5b50614f20806100206000396000f3fe6080604052600436106102ae5760003560e01c8063906cecc111610175578063b9998a24116100dc578063d547741f11610095578063f2fde38b1161006f578063f2fde38b14610892578063f5243bc4146108b2578063f940e385146108d2578063ffa1ad74146108f257600080fd5b8063d547741f1461083f578063d7db74c71461085f578063ec5273891461087257600080fd5b8063b9998a241461077d578063cc2a9a5b1461079d578063cc2c3fc4146107bd578063ceeb4f50146107dd578063d1f5692c146107fd578063d53913931461081d57600080fd5b8063a3a3f7f61161012e578063a3a3f7f614610690578063a3f4df7e146106b0578063a849d65c146106fd578063aa271e1a1461071d578063b0aa98c71461073d578063b3ab15fb1461075d57600080fd5b8063906cecc1146105e657806391d1485414610606578063983b2d5614610626578063986502751461064657806399e0dd7c1461065b578063a217fddf1461067b57600080fd5b80635b6fa8db11610219578063715018a6116101d2578063715018a61461054b57806371e2a6571461056057806377a2a5891461058057806381c81d35146105a05780638456cb59146105b35780638da5cb5b146105c857600080fd5b80635b6fa8db146104a35780635c975abb146104c35780635cd7e3b3146104d85780635e22cd86146104f85780635fc1964f14610518578063634486da1461053857600080fd5b80633092afd51161026b5780633092afd5146103a857806336568abe146103c85780633f41b614146103e85780633f4ba83a1461042057806351cff8d914610435578063572b6c051461045557600080fd5b806301ffc9a7146102b35780631edb948e146102e857806320c5429b1461030a578063248a9ca31461032a578063268b15ed146103685780632f2ff15d14610388575b600080fd5b3480156102bf57600080fd5b506102d36102ce366004613dc4565b610923565b60405190151581526020015b60405180910390f35b3480156102f457600080fd5b50610308610303366004613e13565b61095a565b005b34801561031657600080fd5b50610308610325366004613e3f565b610b03565b34801561033657600080fd5b5061035a610345366004613e3f565b60009081526097602052604090206001015490565b6040519081526020016102df565b34801561037457600080fd5b50610308610383366004613e99565b610c26565b34801561039457600080fd5b506103086103a3366004613f04565b610cb9565b3480156103b457600080fd5b506103086103c3366004613f34565b610ce3565b3480156103d457600080fd5b506103086103e3366004613f04565b610cf7565b3480156103f457600080fd5b5060c954610408906001600160a01b031681565b6040516001600160a01b0390911681526020016102df565b34801561042c57600080fd5b50610308610d85565b34801561044157600080fd5b50610308610450366004613f34565b610d97565b34801561046157600080fd5b506102d3610470366004613f34565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546001600160a01b0390811691161490565b3480156104af57600080fd5b5060cc54610408906001600160a01b031681565b3480156104cf57600080fd5b506102d3610e37565b3480156104e457600080fd5b506103086104f3366004613fa3565b610e4d565b34801561050457600080fd5b50610308610513366004614062565b6110b1565b34801561052457600080fd5b5061030861053336600461419c565b6112f6565b610308610546366004613f34565b61133e565b34801561055757600080fd5b50610308611401565b34801561056c57600080fd5b5061030861057b36600461419c565b611413565b34801561058c57600080fd5b5060ce54610408906001600160a01b031681565b6103086105ae366004613f34565b61145b565b3480156105bf57600080fd5b506103086114d8565b3480156105d457600080fd5b506033546001600160a01b0316610408565b3480156105f257600080fd5b5061030861060136600461423a565b6114e8565b34801561061257600080fd5b506102d3610621366004613f04565b61156e565b34801561063257600080fd5b50610308610641366004613f34565b611599565b34801561065257600080fd5b506103086115aa565b34801561066757600080fd5b50610308610676366004614295565b6115c4565b34801561068757600080fd5b5061035a600081565b34801561069c57600080fd5b506103086106ab3660046142d6565b6116ab565b3480156106bc57600080fd5b506106f0604051806040016040528060148152602001732aa7299d1026b4b73a34b7339026b0b730b3b2b960611b81525081565b6040516102df919061437c565b34801561070957600080fd5b5060cb54610408906001600160a01b031681565b34801561072957600080fd5b506102d3610738366004613f34565b6116f4565b34801561074957600080fd5b506102d3610758366004613e3f565b61170e565b34801561076957600080fd5b50610308610778366004613f34565b61176c565b34801561078957600080fd5b50610308610798366004613f34565b611796565b3480156107a957600080fd5b506103086107b836600461438f565b6117db565b3480156107c957600080fd5b5060ca54610408906001600160a01b031681565b3480156107e957600080fd5b506103086107f8366004614411565b611cd2565b34801561080957600080fd5b506103086108183660046144c6565b611d76565b34801561082957600080fd5b5061035a600080516020614ef483398151915281565b34801561084b57600080fd5b5061030861085a366004613f04565b611e2d565b61030861086d3660046144fb565b611e52565b34801561087e57600080fd5b5061030861088d366004613e3f565b611fe2565b34801561089e57600080fd5b506103086108ad366004613f34565b612054565b3480156108be57600080fd5b506103086108cd3660046145f0565b612070565b3480156108de57600080fd5b506103086108ed366004614708565b612222565b3480156108fe57600080fd5b506106f060405180604001604052806005815260200164302e352e3160d81b81525081565b60006001600160e01b03198216637965db0b60e01b148061095457506301ffc9a760e01b6001600160e01b03198316145b92915050565b61096561073861239e565b61098a5760405162461bcd60e51b815260040161098190614736565b60405180910390fd5b60c95460405163baef73e960e01b8152600481018390526000916001600160a01b03169063baef73e990602401602060405180830381865afa1580156109d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109f8919061476b565b9050806001600160401b0316600003610a235760405162461bcd60e51b815260040161098190614788565b806001600160401b0316836001600160401b031611610a905760405162461bcd60e51b815260206004820152602360248201527f4d696e74696e674d616e616765723a204558504952595f4e4f545f455854454e60448201526211115160ea1b6064820152608401610981565b60c954604051631fb9763760e11b81526001600160401b0385166004820152602481018490526001600160a01b0390911690633f72ec6e906044015b600060405180830381600087803b158015610ae657600080fd5b505af1158015610afa573d6000803e3d6000fd5b50505050505050565b610b0e61073861239e565b610b2a5760405162461bcd60e51b815260040161098190614736565b60c95460405163baef73e960e01b8152600481018390526001600160a01b039091169063baef73e990602401602060405180830381865afa158015610b73573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b97919061476b565b6001600160401b0316600003610bbf5760405162461bcd60e51b815260040161098190614788565b60c954604051637eee288d60e01b8152306004820152602481018390526001600160a01b0390911690637eee288d90604401600060405180830381600087803b158015610c0b57600080fd5b505af1158015610c1f573d6000803e3d6000fd5b5050505050565b8282828080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250610c6993508592508491506123ad565b610c71610e37565b15610c8e5760405162461bcd60e51b8152600401610981906147cb565b6060610afa610c9b61239e565b610cae88610ca98989612584565b6125b0565b8384600060016126c1565b600082815260976020526040902060010154610cd481612c15565b610cde8383612c26565b505050565b610ceb612cad565b610cf481612d26565b50565b610cff61239e565b6001600160a01b0316816001600160a01b031614610d775760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610981565b610d818282612d3e565b5050565b610d8d612cad565b610d95612dc3565b565b610d9f612cad565b6001600160a01b038116610db257600080fd5b60405147906001600160a01b0383169082156108fc029083906000818181858888f19350505050158015610dea573d6000803e3d6000fd5b50604080516001600160a01b03841681526020810183905260008183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a15050565b600080516020614ed48339815191525460ff1690565b610e5786886147f5565b8051600203610e8c57610e6b61073861239e565b610e875760405162461bcd60e51b8152600401610981906148bf565b610fd1565b6000610e9782612e6b565b60c9549092506001600160a01b0316905063430c2081610eb561239e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015610f00573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f249190614903565b80610fb3575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa158015610f7d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fa19190614903565b8015610fb35750610fb361073861239e565b610fcf5760405162461bcd60e51b815260040161098190614920565b505b610fdb87896147f5565b6000600282511015610fff5760405162461bcd60e51b81526004016109819061496f565b6110546110336000846001865161101691906149ca565b81518110611026576110266149dd565b6020026020010151612ea6565b83600081518110611046576110466149dd565b6020026020010151836123ad565b61105c610e37565b156110795760405162461bcd60e51b8152600401610981906147cb565b6110a38b6110878b8d6147f5565b6110918a8c6147f5565b61109b898b6147f5565b6000896126c1565b505050505050505050505050565b6110bb87896147f5565b80516002036110f0576110cf61073861239e565b6110eb5760405162461bcd60e51b8152600401610981906148bf565b611235565b60006110fb82612e6b565b60c9549092506001600160a01b0316905063430c208161111961239e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015611164573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111889190614903565b80611217575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa1580156111e1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112059190614903565b8015611217575061121761073861239e565b6112335760405162461bcd60e51b815260040161098190614920565b505b61123f888a6147f5565b836002825110156112625760405162461bcd60e51b81526004016109819061496f565b6112796110336000846001865161101691906149ca565b611281610e37565b1561129e5760405162461bcd60e51b8152600401610981906147cb565b60028a146112be5760405162461bcd60e51b8152600401610981906149f3565b6112e78c6112cc8c8e6147f5565b6112d68b8d6147f5565b6112e08a8c6147f5565b89896126c1565b50505050505050505050505050565b6112fe612cad565b60005b8151811015610d815761132c82828151811061131f5761131f6149dd565b6020026020010151612d26565b8061133681614a39565b915050611301565b61134961073861239e565b6113655760405162461bcd60e51b815260040161098190614736565b6001600160a01b0381166113bb5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610981565b6113c481612f5a565b6113cc6115aa565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610d81573d6000803e3d6000fd5b611409612cad565b610d956000612f72565b61141b612cad565b60005b8151811015610d815761144982828151811061143c5761143c6149dd565b6020026020010151612f5a565b8061145381614a39565b91505061141e565b61146661073861239e565b6114825760405162461bcd60e51b815260040161098190614736565b6001600160a01b0381166113c45760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610981565b6114e0612cad565b610d95612fc4565b8282828080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525061152b93508592508491506123ad565b611533610e37565b156115505760405162461bcd60e51b8152600401610981906147cb565b606061156487610cae88610ca98989612584565b5050505050505050565b60009182526097602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6115a1612cad565b610cf481612f5a565b610d95600080516020614ef48339815191526103e361239e565b6115cc612cad565b60c954604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906115fe9085908590600401614a52565b600060405180830381600087803b15801561161857600080fd5b505af115801561162c573d6000803e3d6000fd5b505060cb546001600160a01b0316159150610d8190505760cb54604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906116759085908590600401614a52565b600060405180830381600087803b15801561168f57600080fd5b505af11580156116a3573d6000803e3d6000fd5b505050505050565b6116b3612cad565b610cde83838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525085925061302c915050565b6000610954600080516020614ef48339815191528361156e565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd696020820152908101829052600090611762906060015b6040516020818303038152906040528051906020012090565b5460ff1692915050565b611774612cad565b60ce80546001600160a01b0319166001600160a01b0392909216919091179055565b61179e612cad565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e80546001600160a01b0319166001600160a01b03831617905550565b600054610100900460ff16158080156117fb5750600054600160ff909116105b806118155750303b158015611815575060005460ff166001145b6118785760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610981565b6000805460ff19166001179055801561189b576000805461ff0019166101001790555b60c980546001600160a01b03199081166001600160a01b038a81169190911790925560ca8054821689841617905560cb8054821688841617905560cc8054821687841617905560ce80549091169185169190911790556118f961314c565b611901613183565b61190a826131bc565b6119126131e3565b6040805161036081018252600661032082018181526563727970746f60d01b610340840152825282518084018452818152651dd85b1b195d60d21b602082810191909152808401919091528351808501855260018152600f60fb1b8183015283850152835180850185526003808252621b999d60ea1b82840152606085019190915284518086018652600a815269313637b1b5b1b430b4b760b11b818401526080850152845180860186526007808252663134ba31b7b4b760c91b8285015260a0860191909152855180870187528281526207070760eb1b8185015260c0860152855180870187528281526264616f60e81b8185015260e086015285518087018752828152621e9a5b60ea1b8185015261010086015285518087018752908152663837b63cb3b7b760c91b8184015261012085015284518086018652600b81526a756e73746f707061626c6560a81b81840152610140850152845180860186528381526535b632bb32b960d11b8184015261016085015284518086018652600280825261686960f01b8285015261018086019190915285518087018752848152656b726573757360d01b818501526101a086015285518087018752600580825264616e696d6560d81b828601526101c087019190915286518088018852818152646d616e676160d81b818601526101e087015286518088018852600981526862696e616e6365757360b81b8186015261020087015286518088018852818152647265616c6d60d81b818601526102208701528651808801885291825261676f60f01b82850152610240860191909152855180870187526008815267185b1d1a5b5a5cdd60c21b818501526102608601528551808701875290815264707564677960d81b81840152610280850152845180860186528381526530bab9ba34b760d11b818401526102a08501528451808601865292835265189a5d19d95d60d21b838301526102c08401929092528351808501855291825262706f6760e81b828201526102e083019190915282518084019093526004835263636c617960e01b9083015261030081019190915260005b6019811015611c5c57611c4a828260198110611c3e57611c3e6149dd565b6020020151600061302c565b80611c5481614a39565b915050611c20565b50611c8360405180604001604052806003815260200162636f6d60e81b815250600161302c565b508015610afa576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050505050565b8686868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250611d1593508592508491506123ad565b611d1d610e37565b15611d3a5760405162461bcd60e51b8152600401610981906147cb565b611d698a611d4c8b610ca98c8c612584565b611d56888a6147f5565b611d6087896147f5565b600060016126c1565b5050505050505050505050565b611d7e612cad565b60005b81811015610cde5760c9546001600160a01b03166350960239848484818110611dac57611dac6149dd565b9050602002016020810190611dc19190613f34565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401600060405180830381600087803b158015611e0257600080fd5b505af1158015611e16573d6000803e3d6000fd5b505050508080611e2590614a39565b915050611d81565b600082815260976020526040902060010154611e4881612c15565b610cde8383612d3e565b611e5c898b6147f5565b6000600282511015611e805760405162461bcd60e51b81526004016109819061496f565b611e976110336000846001865161101691906149ca565b611e9f610e37565b15611ebc5760405162461bcd60e51b8152600401610981906147cb565b60028b14611edc5760405162461bcd60e51b8152600401610981906149f3565b611f228d8d8d898960008a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061322392505050565b84341015611f725760405162461bcd60e51b815260206004820181905260248201527f4d696e74696e674d616e616765723a204e4f545f454e4f5547485f46554e44536044820152606401610981565b611f848d8d8d8d8d8d8d8c60006133e3565b843411156112e757611f9461239e565b6001600160a01b03166108fc611faa87346149ca565b6040518115909202916000818181858888f19350505050158015611fd2573d6000803e3d6000fd5b5050505050505050505050505050565b611fea612cad565b611ff38161349f565b61200f5760405162461bcd60e51b815260040161098190614a81565b600081815260cd6020526040812061202691613d76565b60405181907f0aa1aff0f830e739d86baf0e6624d6763da02f7733575e0e463886cd062dea6a90600090a250565b61205c612cad565b612065816134c5565b610cf460008261353b565b61207a8a8c6147f5565b600060028251101561209e5760405162461bcd60e51b81526004016109819061496f565b6120b56110336000846001865161101691906149ca565b6120bd610e37565b156120da5760405162461bcd60e51b8152600401610981906147cb565b60028c146120fa5760405162461bcd60e51b8152600401610981906149f3565b61213f8e8e8e8a898b8a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061322392505050565b856001600160a01b03166323b872dd61215661239e565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152306024820152604481018890526064016020604051808303816000875af11580156121a9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121cd9190614903565b6122115760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610981565b611fd28e8e8e8e8e8e8e8c8e6133e3565b61222a612cad565b6040516370a0823160e01b81523060048201526000906001600160a01b038416906370a0823190602401602060405180830381865afa158015612271573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122959190614ac3565b60405163a9059cbb60e01b81526001600160a01b038481166004830152602482018390529192509084169063a9059cbb906044016020604051808303816000875af11580156122e8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061230c9190614903565b6123505760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610981565b604080516001600160a01b0384811682526020820184905285168183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a1505050565b60006123a8613545565b905090565b6123b68361349f565b6123d25760405162461bcd60e51b815260040161098190614a81565b600083815260cf602052604090205460ff1615156001600160401b03821615151461244e5760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544c445f455850495241424c455f4d496044820152650a69a82a886960d31b6064820152608401610981565b60006124818360408051808201825260008082526020918201528151808301909252825182529182019181019190915290565b9050600a81600001511115612529576124ac6124a0826000600a61358b565b80516020909101512090565b7fb551e0305c8163b812374b8e78b577c77f226f6f10c5ad03e52699578fbc34b8036125295760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544f4b454e5f4c4142454c5f50524f4860448201526512509255115160d21b6064820152608401610981565b612532836135ca565b61257e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a204c4142454c5f494e56414c49440000006044820152606401610981565b50505050565b60608282604051602001612599929190614adc565b604051602081830303815290604052905092915050565b604080516002808252606082810190935260009190816020015b60608152602001906001900390816125ca57905050905082816000815181106125f5576125f56149dd565b602002602001018190525060cd6000858152602001908152602001600020805461261e90614b04565b80601f016020809104026020016040519081016040528092919081815260200182805461264a90614b04565b80156126975780601f1061266c57610100808354040283529160200191612697565b820191906000526020600020905b81548152906001019060200180831161267a57829003601f168201915b5050505050816001815181106126af576126af6149dd565b60209081029190910101529392505050565b60008060006126cf88612e6b565b915091508380156126e1575060028851115b8015612763575060c9546040516331a9108f60e11b8152600481018390526001600160a01b038b8116921690636352211e90602401602060405180830381865afa158015612733573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127579190614b3e565b6001600160a01b031614155b156127c35760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e616765723a20524556455253455f5245434f52445f4e60448201526913d517d0531313d5d15160b21b6064820152608401610981565b60c954604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401602060405180830381865afa15801561280c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128309190614903565b8015612921575060c9546040516331a9108f60e11b81526004810184905230916001600160a01b031690636352211e90602401602060405180830381865afa158015612880573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128a49190614b3e565b6001600160a01b03161480612921575060c95460405163d9548e5360e01b8152600481018490526001600160a01b039091169063d9548e5390602401602060405180830381865afa1580156128fd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129219190614903565b15612a12576001600160401b038516156129a35760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b15801561298a57600080fd5b505af115801561299e573d6000803e3d6000fd5b505050505b60c954604051630fb8df0360e11b81526001600160a01b0390911690631f71be06906129db908c908c908c908c908b90600401614bb0565b600060405180830381600087803b1580156129f557600080fd5b505af1158015612a09573d6000803e3d6000fd5b50505050612c09565b612a1b8261372e565b612a248861378d565b8015612a31575087516002145b8015612a4457506001600160401b038516155b15612b225760ca5488516001600160a01b039091169063c36c2125908b908b90600090612a7357612a736149dd565b602090810291909101015160cc546040516001600160e01b031960e086901b168152612aad9392916001600160a01b031690600401614c0f565b600060405180830381600087803b158015612ac757600080fd5b505af1158015612adb573d6000803e3d6000fd5b50505050600087511115612b1d5760cc54604051633a0deb9d60e21b81526001600160a01b039091169063e837ae74906129db908a908a908790600401614c44565b612c09565b60c95460405163ba5d40b760e01b81526001600160a01b039091169063ba5d40b790612b5a908c908c908c908c908b90600401614bb0565b600060405180830381600087803b158015612b7457600080fd5b505af1158015612b88573d6000803e3d6000fd5b505050506001600160401b03851615612c095760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b158015612bf057600080fd5b505af1158015612c04573d6000803e3d6000fd5b505050505b50979650505050505050565b610cf481612c2161239e565b6137e7565b612c30828261156e565b610d815760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19166001179055612c6961239e565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b612cb561239e565b6001600160a01b0316612cd06033546001600160a01b031690565b6001600160a01b031614610d955760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610981565b610cf4600080516020614ef483398151915282611e2d565b612d48828261156e565b15610d815760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19169055612d7f61239e565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612dcb610e37565b612e0e5760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881393d517d4105554d15160621b6044820152606401610981565b600080516020614ed4833981519152805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa612e4e61239e565b6040516001600160a01b03909116815260200160405180910390a1565b805160009081905b8015612ea057829150612e8c82856110166001856149ca565b925080612e9881614c7a565b915050612e73565b50915091565b60008151600003612ef95760405162461bcd60e51b815260206004820152601b60248201527f4d696e74696e674d616e616765723a204c4142454c5f454d50545900000000006044820152606401610981565b8282604051602001612f0b9190614c91565b60405160208183030381529060405280519060200120604051602001612f3b929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b610cf4600080516020614ef48339815191528261353b565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b612fcc610e37565b15612fe95760405162461bcd60e51b8152600401610981906147cb565b600080516020614ed4833981519152805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258612e4e61239e565b6000613039600084612ea6565b600081815260cd602052604090209091506130548482614cf3565b50600081815260cf602052604090819020805460ff19168415151790555181907f4fce6f6e172b04eaa80325d8e3b0180a34945000f3e214605039e8420fdf8980906130a190869061437c565b60405180910390a260c954604051634f558e7960e01b8152600481018390526001600160a01b0390911690634f558e7990602401602060405180830381865afa1580156130f2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131169190614903565b610cde5760c9546040516307befae360e51b81526001600160a01b039091169063f7df5c6090610acc9084908790600401614db2565b600054610100900460ff166131735760405162461bcd60e51b815260040161098190614dd3565b610d9561317e61239e565b612f72565b600054610100900460ff166131aa5760405162461bcd60e51b815260040161098190614dd3565b610d9560006131b761239e565b61353b565b600054610100900460ff1661179e5760405162461bcd60e51b815260040161098190614dd3565b600054610100900460ff1661320a5760405162461bcd60e51b815260040161098190614dd3565b600080516020614ed4833981519152805460ff19169055565b600061323761323287896147f5565b612e6b565b506040516bffffffffffffffffffffffff1930606090811b821660208401524660348401528b811b82166054840152606883018490526001600160c01b031960c08a901b1660888401526090830188905286901b1660b082015290915060009061331390849061330d9060c401604051602081830303815290604052805190602001206040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c8101829052600090605c01604051602081830303815290604052805190602001209050919050565b9061384b565b905061331e816116f4565b6133765760405162461bcd60e51b8152602060048201526024808201527f4d696e74696e674d616e616765723a205349474e45525f49535f4e4f545f4d49604482015263272a22a960e11b6064820152608401610981565b42866001600160401b0316116133d85760405162461bcd60e51b815260206004820152602160248201527f4d696e74696e674d616e616765723a20455850495245445f5349474e415455526044820152604560f81b6064820152608401610981565b505050505050505050565b600061342a8a6133f38a8c6147f5565b6133fd898b6147f5565b613407888a6147f5565b60008f6001600160a01b031661341b61239e565b6001600160a01b0316146126c1565b9050896001600160a01b031661343e61239e565b6001600160a01b0316827fa545b6fd3355e8d57f8c8147bafe740545bd3ea1f94bef2576a6d532a7c3b605868660405161348b9291909182526001600160a01b0316602082015260400190565b60405180910390a450505050505050505050565b600081815260cd6020526040812080548291906134bb90614b04565b9050119050919050565b6134cd612cad565b6001600160a01b0381166135325760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610981565b610cf481612f72565b610d818282612c26565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546000906001600160a01b03163303613586575060331936013560601c90565b503390565b604080518082019091526000808252602082015260405180604001604052808381526020018486602001516135c09190614e1e565b9052949350505050565b600081516000036135dd57506000919050565b60208201805160f81c603081108015906135fb575060398160ff1611155b15801561361d575060618160ff161015801561361b5750607a8160ff1611155b155b1561362c575060009392505050565b8351600181111561369a5761364e836136466001846149ca565b015160f81c90565b915060308260ff1610158015613668575060398260ff1611155b15801561368a575060618260ff16101580156136885750607a8260ff1611155b155b1561369a57506000949350505050565b60015b6136a86001836149ca565b811015613722578381015160f81c9250602d83148015906136de575060308360ff16101580156136dc575060398360ff1611155b155b80156136ff575060618360ff16101580156136fd5750607a8360ff1611155b155b156137105750600095945050505050565b8061371a81614a39565b91505061369d565b50600195945050505050565b6137378161170e565b156137845760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a20544f4b454e5f424c4f434b45440000006044820152606401610981565b610cf48161386f565b6000806137a46000846001865161101691906149ca565b60ca549091506001600160a01b0316158015906137e05750807f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f145b9392505050565b6137f1828261156e565b610d8157613809816001600160a01b031660146138f3565b6138148360206138f3565b604051602001613825929190614e31565b60408051601f198184030181529082905262461bcd60e51b82526109819160040161437c565b600080600061385a8585613a8e565b9150915061386781613ad3565b509392505050565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd6960208201529081018290526001906138ae90606001611749565b805460ff19169115159190911790556040518181527f2ce5d9351b1d590d5a066db0d2dc7602d55f092506a83a7ee8c4d78ee357d75a9060200160405180910390a150565b60606000613902836002614ea6565b61390d906002614e1e565b6001600160401b0381111561392457613924614133565b6040519080825280601f01601f19166020018201604052801561394e576020820181803683370190505b509050600360fc1b81600081518110613969576139696149dd565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110613998576139986149dd565b60200101906001600160f81b031916908160001a90535060006139bc846002614ea6565b6139c7906001614e1e565b90505b6001811115613a3f576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106139fb576139fb6149dd565b1a60f81b828281518110613a1157613a116149dd565b60200101906001600160f81b031916908160001a90535060049490941c93613a3881614c7a565b90506139ca565b5083156137e05760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610981565b6000808251604103613ac45760208301516040840151606085015160001a613ab887828585613c89565b94509450505050613acc565b506000905060025b9250929050565b6000816004811115613ae757613ae7614ebd565b03613aef5750565b6001816004811115613b0357613b03614ebd565b03613b505760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152606401610981565b6002816004811115613b6457613b64614ebd565b03613bb15760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610981565b6003816004811115613bc557613bc5614ebd565b03613c1d5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b6064820152608401610981565b6004816004811115613c3157613c31614ebd565b03610cf45760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c604482015261756560f01b6064820152608401610981565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613cc05750600090506003613d6d565b8460ff16601b14158015613cd857508460ff16601c14155b15613ce95750600090506004613d6d565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613d3d573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613d6657600060019250925050613d6d565b9150600090505b94509492505050565b508054613d8290614b04565b6000825580601f10613d92575050565b601f016020900490600052602060002090810190610cf491905b80821115613dc05760008155600101613dac565b5090565b600060208284031215613dd657600080fd5b81356001600160e01b0319811681146137e057600080fd5b6001600160401b0381168114610cf457600080fd5b8035613e0e81613dee565b919050565b60008060408385031215613e2657600080fd5b8235613e3181613dee565b946020939093013593505050565b600060208284031215613e5157600080fd5b5035919050565b60008083601f840112613e6a57600080fd5b5081356001600160401b03811115613e8157600080fd5b602083019150836020828501011115613acc57600080fd5b600080600060408486031215613eae57600080fd5b8335925060208401356001600160401b03811115613ecb57600080fd5b613ed786828701613e58565b9497909650939450505050565b6001600160a01b0381168114610cf457600080fd5b8035613e0e81613ee4565b60008060408385031215613f1757600080fd5b823591506020830135613f2981613ee4565b809150509250929050565b600060208284031215613f4657600080fd5b81356137e081613ee4565b60008083601f840112613f6357600080fd5b5081356001600160401b03811115613f7a57600080fd5b6020830191508360208260051b8501011115613acc57600080fd5b8015158114610cf457600080fd5b60008060008060008060008060a0898b031215613fbf57600080fd5b8835613fca81613ee4565b975060208901356001600160401b0380821115613fe657600080fd5b613ff28c838d01613f51565b909950975060408b013591508082111561400b57600080fd5b6140178c838d01613f51565b909750955060608b013591508082111561403057600080fd5b5061403d8b828c01613f51565b909450925050608089013561405181613f95565b809150509295985092959890939650565b600080600080600080600080600060c08a8c03121561408057600080fd5b893561408b81613ee4565b985060208a01356001600160401b03808211156140a757600080fd5b6140b38d838e01613f51565b909a50985060408c01359150808211156140cc57600080fd5b6140d88d838e01613f51565b909850965060608c01359150808211156140f157600080fd5b506140fe8c828d01613f51565b90955093505060808a013561411281613dee565b915060a08a013561412281613f95565b809150509295985092959850929598565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561417157614171614133565b604052919050565b60006001600160401b0382111561419257614192614133565b5060051b60200190565b600060208083850312156141af57600080fd5b82356001600160401b038111156141c557600080fd5b8301601f810185136141d657600080fd5b80356141e96141e482614179565b614149565b81815260059190911b8201830190838101908783111561420857600080fd5b928401925b8284101561422f57833561422081613ee4565b8252928401929084019061420d565b979650505050505050565b6000806000806060858703121561425057600080fd5b843561425b81613ee4565b93506020850135925060408501356001600160401b0381111561427d57600080fd5b61428987828801613e58565b95989497509550505050565b600080602083850312156142a857600080fd5b82356001600160401b038111156142be57600080fd5b6142ca85828601613e58565b90969095509350505050565b6000806000604084860312156142eb57600080fd5b83356001600160401b0381111561430157600080fd5b61430d86828701613e58565b909450925050602084013561432181613f95565b809150509250925092565b60005b8381101561434757818101518382015260200161432f565b50506000910152565b6000815180845261436881602086016020860161432c565b601f01601f19169290920160200192915050565b6020815260006137e06020830184614350565b60008060008060008060c087890312156143a857600080fd5b86356143b381613ee4565b955060208701356143c381613ee4565b945060408701356143d381613ee4565b935060608701356143e381613ee4565b925060808701356143f381613ee4565b915060a087013561440381613ee4565b809150509295509295509295565b60008060008060008060008060a0898b03121561442d57600080fd5b883561443881613ee4565b97506020890135965060408901356001600160401b038082111561445b57600080fd5b6144678c838d01613e58565b909850965060608b013591508082111561448057600080fd5b61448c8c838d01613f51565b909650945060808b01359150808211156144a557600080fd5b506144b28b828c01613f51565b999c989b5096995094979396929594505050565b600080602083850312156144d957600080fd5b82356001600160401b038111156144ef57600080fd5b6142ca85828601613f51565b600080600080600080600080600080600060e08c8e03121561451c57600080fd5b6145258c613ef9565b9a506001600160401b038060208e0135111561454057600080fd5b6145508e60208f01358f01613f51565b909b50995060408d013581101561456657600080fd5b6145768e60408f01358f01613f51565b909950975060608d013581101561458c57600080fd5b61459c8e60608f01358f01613f51565b90975095506145ad60808e01613e03565b945060a08d013593508060c08e013511156145c757600080fd5b506145d88d60c08e01358e01613e58565b81935080925050509295989b509295989b9093969950565b6000806000806000806000806000806000806101008d8f03121561461357600080fd5b61461c8d613ef9565b9b506001600160401b0360208e0135111561463657600080fd5b6146468e60208f01358f01613f51565b909b5099506001600160401b0360408e0135111561466357600080fd5b6146738e60408f01358f01613f51565b90995097506001600160401b0360608e0135111561469057600080fd5b6146a08e60608f01358f01613f51565b90975095506146b160808e01613e03565b94506146bf60a08e01613ef9565b935060c08d013592506001600160401b0360e08e013511156146e057600080fd5b6146f08e60e08f01358f01613e58565b81935080925050509295989b509295989b509295989b565b6000806040838503121561471b57600080fd5b823561472681613ee4565b91506020830135613f2981613ee4565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b60006020828403121561477d57600080fd5b81516137e081613dee565b60208082526023908201527f4d696e74696e674d616e616765723a20544f4b454e5f4e4f545f455850495241604082015262424c4560e81b606082015260800190565b60208082526010908201526f14185d5cd8589b194e8814105554d15160821b604082015260600190565b60006148036141e484614179565b80848252602080830192508560051b85013681111561482157600080fd5b855b818110156148b35780356001600160401b03808211156148435760008081fd5b90880190601f36818401126148585760008081fd5b82358281111561486a5761486a614133565b61487b818301601f19168801614149565b9250808352368782860101111561489457600091508182fd5b8087850188850137600090830187015250865250938201938201614823565b50919695505050505050565b60208082526024908201527f4d696e74696e674d616e616765723a2043414c4c45525f49535f4e4f545f4d49604082015263272a22a960e11b606082015260800190565b60006020828403121561491557600080fd5b81516137e081613f95565b6020808252602f908201527f4d696e74696e674d616e616765723a2053454e4445525f49535f4e4f545f415060408201526e282927ab22a22fa7a92fa7aba722a960891b606082015260800190565b60208082526025908201527f4d696e74696e674d616e616765723a204c4142454c535f4c454e4754485f42456040820152642627abaf9960d91b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b81810381811115610954576109546149b4565b634e487b7160e01b600052603260045260246000fd5b60208082526026908201527f4d696e74696e674d616e616765723a20535542444f4d41494e535f4e4f545f41604082015265131313d5d15160d21b606082015260800190565b600060018201614a4b57614a4b6149b4565b5060010190565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b60208082526022908201527f4d696e74696e674d616e616765723a20544c445f4e4f545f5245474953544552604082015261115160f21b606082015260800190565b600060208284031215614ad557600080fd5b5051919050565b6b756e732d646576746573742d60a01b81528183600c83013760009101600c01908152919050565b600181811c90821680614b1857607f821691505b602082108103614b3857634e487b7160e01b600052602260045260246000fd5b50919050565b600060208284031215614b5057600080fd5b81516137e081613ee4565b600081518084526020808501808196508360051b8101915082860160005b85811015614ba3578284038952614b91848351614350565b98850198935090840190600101614b79565b5091979650505050505050565b6001600160a01b038616815260a060208201819052600090614bd490830187614b5b565b8281036040840152614be68187614b5b565b90508281036060840152614bfa8186614b5b565b91505082151560808301529695505050505050565b600060018060a01b03808616835260606020840152614c316060840186614350565b9150808416604084015250949350505050565b606081526000614c576060830186614b5b565b8281036020840152614c698186614b5b565b915050826040830152949350505050565b600081614c8957614c896149b4565b506000190190565b60008251614ca381846020870161432c565b9190910192915050565b601f821115610cde57600081815260208120601f850160051c81016020861015614cd45750805b601f850160051c820191505b818110156116a357828155600101614ce0565b81516001600160401b03811115614d0c57614d0c614133565b614d2081614d1a8454614b04565b84614cad565b602080601f831160018114614d555760008415614d3d5750858301515b600019600386901b1c1916600185901b1785556116a3565b600085815260208120601f198616915b82811015614d8457888601518255948401946001909101908401614d65565b5085821015614da25787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b828152604060208201526000614dcb6040830184614350565b949350505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b80820180821115610954576109546149b4565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351614e6981601785016020880161432c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351614e9a81602884016020880161432c565b01602801949350505050565b8082028115828204841417610954576109546149b4565b634e487b7160e01b600052602160045260246000fdfe5496787fc1ebdfeba375028c1865f13fbb1d63c0caa356ccc1b29a80f3ebd6229f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000811000a", - "deployedBytecode": "0x6080604052600436106102ae5760003560e01c8063906cecc111610175578063b9998a24116100dc578063d547741f11610095578063f2fde38b1161006f578063f2fde38b14610892578063f5243bc4146108b2578063f940e385146108d2578063ffa1ad74146108f257600080fd5b8063d547741f1461083f578063d7db74c71461085f578063ec5273891461087257600080fd5b8063b9998a241461077d578063cc2a9a5b1461079d578063cc2c3fc4146107bd578063ceeb4f50146107dd578063d1f5692c146107fd578063d53913931461081d57600080fd5b8063a3a3f7f61161012e578063a3a3f7f614610690578063a3f4df7e146106b0578063a849d65c146106fd578063aa271e1a1461071d578063b0aa98c71461073d578063b3ab15fb1461075d57600080fd5b8063906cecc1146105e657806391d1485414610606578063983b2d5614610626578063986502751461064657806399e0dd7c1461065b578063a217fddf1461067b57600080fd5b80635b6fa8db11610219578063715018a6116101d2578063715018a61461054b57806371e2a6571461056057806377a2a5891461058057806381c81d35146105a05780638456cb59146105b35780638da5cb5b146105c857600080fd5b80635b6fa8db146104a35780635c975abb146104c35780635cd7e3b3146104d85780635e22cd86146104f85780635fc1964f14610518578063634486da1461053857600080fd5b80633092afd51161026b5780633092afd5146103a857806336568abe146103c85780633f41b614146103e85780633f4ba83a1461042057806351cff8d914610435578063572b6c051461045557600080fd5b806301ffc9a7146102b35780631edb948e146102e857806320c5429b1461030a578063248a9ca31461032a578063268b15ed146103685780632f2ff15d14610388575b600080fd5b3480156102bf57600080fd5b506102d36102ce366004613dc4565b610923565b60405190151581526020015b60405180910390f35b3480156102f457600080fd5b50610308610303366004613e13565b61095a565b005b34801561031657600080fd5b50610308610325366004613e3f565b610b03565b34801561033657600080fd5b5061035a610345366004613e3f565b60009081526097602052604090206001015490565b6040519081526020016102df565b34801561037457600080fd5b50610308610383366004613e99565b610c26565b34801561039457600080fd5b506103086103a3366004613f04565b610cb9565b3480156103b457600080fd5b506103086103c3366004613f34565b610ce3565b3480156103d457600080fd5b506103086103e3366004613f04565b610cf7565b3480156103f457600080fd5b5060c954610408906001600160a01b031681565b6040516001600160a01b0390911681526020016102df565b34801561042c57600080fd5b50610308610d85565b34801561044157600080fd5b50610308610450366004613f34565b610d97565b34801561046157600080fd5b506102d3610470366004613f34565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546001600160a01b0390811691161490565b3480156104af57600080fd5b5060cc54610408906001600160a01b031681565b3480156104cf57600080fd5b506102d3610e37565b3480156104e457600080fd5b506103086104f3366004613fa3565b610e4d565b34801561050457600080fd5b50610308610513366004614062565b6110b1565b34801561052457600080fd5b5061030861053336600461419c565b6112f6565b610308610546366004613f34565b61133e565b34801561055757600080fd5b50610308611401565b34801561056c57600080fd5b5061030861057b36600461419c565b611413565b34801561058c57600080fd5b5060ce54610408906001600160a01b031681565b6103086105ae366004613f34565b61145b565b3480156105bf57600080fd5b506103086114d8565b3480156105d457600080fd5b506033546001600160a01b0316610408565b3480156105f257600080fd5b5061030861060136600461423a565b6114e8565b34801561061257600080fd5b506102d3610621366004613f04565b61156e565b34801561063257600080fd5b50610308610641366004613f34565b611599565b34801561065257600080fd5b506103086115aa565b34801561066757600080fd5b50610308610676366004614295565b6115c4565b34801561068757600080fd5b5061035a600081565b34801561069c57600080fd5b506103086106ab3660046142d6565b6116ab565b3480156106bc57600080fd5b506106f0604051806040016040528060148152602001732aa7299d1026b4b73a34b7339026b0b730b3b2b960611b81525081565b6040516102df919061437c565b34801561070957600080fd5b5060cb54610408906001600160a01b031681565b34801561072957600080fd5b506102d3610738366004613f34565b6116f4565b34801561074957600080fd5b506102d3610758366004613e3f565b61170e565b34801561076957600080fd5b50610308610778366004613f34565b61176c565b34801561078957600080fd5b50610308610798366004613f34565b611796565b3480156107a957600080fd5b506103086107b836600461438f565b6117db565b3480156107c957600080fd5b5060ca54610408906001600160a01b031681565b3480156107e957600080fd5b506103086107f8366004614411565b611cd2565b34801561080957600080fd5b506103086108183660046144c6565b611d76565b34801561082957600080fd5b5061035a600080516020614ef483398151915281565b34801561084b57600080fd5b5061030861085a366004613f04565b611e2d565b61030861086d3660046144fb565b611e52565b34801561087e57600080fd5b5061030861088d366004613e3f565b611fe2565b34801561089e57600080fd5b506103086108ad366004613f34565b612054565b3480156108be57600080fd5b506103086108cd3660046145f0565b612070565b3480156108de57600080fd5b506103086108ed366004614708565b612222565b3480156108fe57600080fd5b506106f060405180604001604052806005815260200164302e352e3160d81b81525081565b60006001600160e01b03198216637965db0b60e01b148061095457506301ffc9a760e01b6001600160e01b03198316145b92915050565b61096561073861239e565b61098a5760405162461bcd60e51b815260040161098190614736565b60405180910390fd5b60c95460405163baef73e960e01b8152600481018390526000916001600160a01b03169063baef73e990602401602060405180830381865afa1580156109d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109f8919061476b565b9050806001600160401b0316600003610a235760405162461bcd60e51b815260040161098190614788565b806001600160401b0316836001600160401b031611610a905760405162461bcd60e51b815260206004820152602360248201527f4d696e74696e674d616e616765723a204558504952595f4e4f545f455854454e60448201526211115160ea1b6064820152608401610981565b60c954604051631fb9763760e11b81526001600160401b0385166004820152602481018490526001600160a01b0390911690633f72ec6e906044015b600060405180830381600087803b158015610ae657600080fd5b505af1158015610afa573d6000803e3d6000fd5b50505050505050565b610b0e61073861239e565b610b2a5760405162461bcd60e51b815260040161098190614736565b60c95460405163baef73e960e01b8152600481018390526001600160a01b039091169063baef73e990602401602060405180830381865afa158015610b73573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b97919061476b565b6001600160401b0316600003610bbf5760405162461bcd60e51b815260040161098190614788565b60c954604051637eee288d60e01b8152306004820152602481018390526001600160a01b0390911690637eee288d90604401600060405180830381600087803b158015610c0b57600080fd5b505af1158015610c1f573d6000803e3d6000fd5b5050505050565b8282828080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250610c6993508592508491506123ad565b610c71610e37565b15610c8e5760405162461bcd60e51b8152600401610981906147cb565b6060610afa610c9b61239e565b610cae88610ca98989612584565b6125b0565b8384600060016126c1565b600082815260976020526040902060010154610cd481612c15565b610cde8383612c26565b505050565b610ceb612cad565b610cf481612d26565b50565b610cff61239e565b6001600160a01b0316816001600160a01b031614610d775760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610981565b610d818282612d3e565b5050565b610d8d612cad565b610d95612dc3565b565b610d9f612cad565b6001600160a01b038116610db257600080fd5b60405147906001600160a01b0383169082156108fc029083906000818181858888f19350505050158015610dea573d6000803e3d6000fd5b50604080516001600160a01b03841681526020810183905260008183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a15050565b600080516020614ed48339815191525460ff1690565b610e5786886147f5565b8051600203610e8c57610e6b61073861239e565b610e875760405162461bcd60e51b8152600401610981906148bf565b610fd1565b6000610e9782612e6b565b60c9549092506001600160a01b0316905063430c2081610eb561239e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015610f00573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f249190614903565b80610fb3575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa158015610f7d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fa19190614903565b8015610fb35750610fb361073861239e565b610fcf5760405162461bcd60e51b815260040161098190614920565b505b610fdb87896147f5565b6000600282511015610fff5760405162461bcd60e51b81526004016109819061496f565b6110546110336000846001865161101691906149ca565b81518110611026576110266149dd565b6020026020010151612ea6565b83600081518110611046576110466149dd565b6020026020010151836123ad565b61105c610e37565b156110795760405162461bcd60e51b8152600401610981906147cb565b6110a38b6110878b8d6147f5565b6110918a8c6147f5565b61109b898b6147f5565b6000896126c1565b505050505050505050505050565b6110bb87896147f5565b80516002036110f0576110cf61073861239e565b6110eb5760405162461bcd60e51b8152600401610981906148bf565b611235565b60006110fb82612e6b565b60c9549092506001600160a01b0316905063430c208161111961239e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015611164573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111889190614903565b80611217575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa1580156111e1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112059190614903565b8015611217575061121761073861239e565b6112335760405162461bcd60e51b815260040161098190614920565b505b61123f888a6147f5565b836002825110156112625760405162461bcd60e51b81526004016109819061496f565b6112796110336000846001865161101691906149ca565b611281610e37565b1561129e5760405162461bcd60e51b8152600401610981906147cb565b60028a146112be5760405162461bcd60e51b8152600401610981906149f3565b6112e78c6112cc8c8e6147f5565b6112d68b8d6147f5565b6112e08a8c6147f5565b89896126c1565b50505050505050505050505050565b6112fe612cad565b60005b8151811015610d815761132c82828151811061131f5761131f6149dd565b6020026020010151612d26565b8061133681614a39565b915050611301565b61134961073861239e565b6113655760405162461bcd60e51b815260040161098190614736565b6001600160a01b0381166113bb5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610981565b6113c481612f5a565b6113cc6115aa565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610d81573d6000803e3d6000fd5b611409612cad565b610d956000612f72565b61141b612cad565b60005b8151811015610d815761144982828151811061143c5761143c6149dd565b6020026020010151612f5a565b8061145381614a39565b91505061141e565b61146661073861239e565b6114825760405162461bcd60e51b815260040161098190614736565b6001600160a01b0381166113c45760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610981565b6114e0612cad565b610d95612fc4565b8282828080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525061152b93508592508491506123ad565b611533610e37565b156115505760405162461bcd60e51b8152600401610981906147cb565b606061156487610cae88610ca98989612584565b5050505050505050565b60009182526097602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6115a1612cad565b610cf481612f5a565b610d95600080516020614ef48339815191526103e361239e565b6115cc612cad565b60c954604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906115fe9085908590600401614a52565b600060405180830381600087803b15801561161857600080fd5b505af115801561162c573d6000803e3d6000fd5b505060cb546001600160a01b0316159150610d8190505760cb54604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906116759085908590600401614a52565b600060405180830381600087803b15801561168f57600080fd5b505af11580156116a3573d6000803e3d6000fd5b505050505050565b6116b3612cad565b610cde83838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525085925061302c915050565b6000610954600080516020614ef48339815191528361156e565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd696020820152908101829052600090611762906060015b6040516020818303038152906040528051906020012090565b5460ff1692915050565b611774612cad565b60ce80546001600160a01b0319166001600160a01b0392909216919091179055565b61179e612cad565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e80546001600160a01b0319166001600160a01b03831617905550565b600054610100900460ff16158080156117fb5750600054600160ff909116105b806118155750303b158015611815575060005460ff166001145b6118785760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610981565b6000805460ff19166001179055801561189b576000805461ff0019166101001790555b60c980546001600160a01b03199081166001600160a01b038a81169190911790925560ca8054821689841617905560cb8054821688841617905560cc8054821687841617905560ce80549091169185169190911790556118f961314c565b611901613183565b61190a826131bc565b6119126131e3565b6040805161036081018252600661032082018181526563727970746f60d01b610340840152825282518084018452818152651dd85b1b195d60d21b602082810191909152808401919091528351808501855260018152600f60fb1b8183015283850152835180850185526003808252621b999d60ea1b82840152606085019190915284518086018652600a815269313637b1b5b1b430b4b760b11b818401526080850152845180860186526007808252663134ba31b7b4b760c91b8285015260a0860191909152855180870187528281526207070760eb1b8185015260c0860152855180870187528281526264616f60e81b8185015260e086015285518087018752828152621e9a5b60ea1b8185015261010086015285518087018752908152663837b63cb3b7b760c91b8184015261012085015284518086018652600b81526a756e73746f707061626c6560a81b81840152610140850152845180860186528381526535b632bb32b960d11b8184015261016085015284518086018652600280825261686960f01b8285015261018086019190915285518087018752848152656b726573757360d01b818501526101a086015285518087018752600580825264616e696d6560d81b828601526101c087019190915286518088018852818152646d616e676160d81b818601526101e087015286518088018852600981526862696e616e6365757360b81b8186015261020087015286518088018852818152647265616c6d60d81b818601526102208701528651808801885291825261676f60f01b82850152610240860191909152855180870187526008815267185b1d1a5b5a5cdd60c21b818501526102608601528551808701875290815264707564677960d81b81840152610280850152845180860186528381526530bab9ba34b760d11b818401526102a08501528451808601865292835265189a5d19d95d60d21b838301526102c08401929092528351808501855291825262706f6760e81b828201526102e083019190915282518084019093526004835263636c617960e01b9083015261030081019190915260005b6019811015611c5c57611c4a828260198110611c3e57611c3e6149dd565b6020020151600061302c565b80611c5481614a39565b915050611c20565b50611c8360405180604001604052806003815260200162636f6d60e81b815250600161302c565b508015610afa576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050505050565b8686868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250611d1593508592508491506123ad565b611d1d610e37565b15611d3a5760405162461bcd60e51b8152600401610981906147cb565b611d698a611d4c8b610ca98c8c612584565b611d56888a6147f5565b611d6087896147f5565b600060016126c1565b5050505050505050505050565b611d7e612cad565b60005b81811015610cde5760c9546001600160a01b03166350960239848484818110611dac57611dac6149dd565b9050602002016020810190611dc19190613f34565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401600060405180830381600087803b158015611e0257600080fd5b505af1158015611e16573d6000803e3d6000fd5b505050508080611e2590614a39565b915050611d81565b600082815260976020526040902060010154611e4881612c15565b610cde8383612d3e565b611e5c898b6147f5565b6000600282511015611e805760405162461bcd60e51b81526004016109819061496f565b611e976110336000846001865161101691906149ca565b611e9f610e37565b15611ebc5760405162461bcd60e51b8152600401610981906147cb565b60028b14611edc5760405162461bcd60e51b8152600401610981906149f3565b611f228d8d8d898960008a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061322392505050565b84341015611f725760405162461bcd60e51b815260206004820181905260248201527f4d696e74696e674d616e616765723a204e4f545f454e4f5547485f46554e44536044820152606401610981565b611f848d8d8d8d8d8d8d8c60006133e3565b843411156112e757611f9461239e565b6001600160a01b03166108fc611faa87346149ca565b6040518115909202916000818181858888f19350505050158015611fd2573d6000803e3d6000fd5b5050505050505050505050505050565b611fea612cad565b611ff38161349f565b61200f5760405162461bcd60e51b815260040161098190614a81565b600081815260cd6020526040812061202691613d76565b60405181907f0aa1aff0f830e739d86baf0e6624d6763da02f7733575e0e463886cd062dea6a90600090a250565b61205c612cad565b612065816134c5565b610cf460008261353b565b61207a8a8c6147f5565b600060028251101561209e5760405162461bcd60e51b81526004016109819061496f565b6120b56110336000846001865161101691906149ca565b6120bd610e37565b156120da5760405162461bcd60e51b8152600401610981906147cb565b60028c146120fa5760405162461bcd60e51b8152600401610981906149f3565b61213f8e8e8e8a898b8a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061322392505050565b856001600160a01b03166323b872dd61215661239e565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152306024820152604481018890526064016020604051808303816000875af11580156121a9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121cd9190614903565b6122115760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610981565b611fd28e8e8e8e8e8e8e8c8e6133e3565b61222a612cad565b6040516370a0823160e01b81523060048201526000906001600160a01b038416906370a0823190602401602060405180830381865afa158015612271573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122959190614ac3565b60405163a9059cbb60e01b81526001600160a01b038481166004830152602482018390529192509084169063a9059cbb906044016020604051808303816000875af11580156122e8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061230c9190614903565b6123505760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610981565b604080516001600160a01b0384811682526020820184905285168183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a1505050565b60006123a8613545565b905090565b6123b68361349f565b6123d25760405162461bcd60e51b815260040161098190614a81565b600083815260cf602052604090205460ff1615156001600160401b03821615151461244e5760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544c445f455850495241424c455f4d496044820152650a69a82a886960d31b6064820152608401610981565b60006124818360408051808201825260008082526020918201528151808301909252825182529182019181019190915290565b9050600a81600001511115612529576124ac6124a0826000600a61358b565b80516020909101512090565b7fb551e0305c8163b812374b8e78b577c77f226f6f10c5ad03e52699578fbc34b8036125295760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544f4b454e5f4c4142454c5f50524f4860448201526512509255115160d21b6064820152608401610981565b612532836135ca565b61257e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a204c4142454c5f494e56414c49440000006044820152606401610981565b50505050565b60608282604051602001612599929190614adc565b604051602081830303815290604052905092915050565b604080516002808252606082810190935260009190816020015b60608152602001906001900390816125ca57905050905082816000815181106125f5576125f56149dd565b602002602001018190525060cd6000858152602001908152602001600020805461261e90614b04565b80601f016020809104026020016040519081016040528092919081815260200182805461264a90614b04565b80156126975780601f1061266c57610100808354040283529160200191612697565b820191906000526020600020905b81548152906001019060200180831161267a57829003601f168201915b5050505050816001815181106126af576126af6149dd565b60209081029190910101529392505050565b60008060006126cf88612e6b565b915091508380156126e1575060028851115b8015612763575060c9546040516331a9108f60e11b8152600481018390526001600160a01b038b8116921690636352211e90602401602060405180830381865afa158015612733573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127579190614b3e565b6001600160a01b031614155b156127c35760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e616765723a20524556455253455f5245434f52445f4e60448201526913d517d0531313d5d15160b21b6064820152608401610981565b60c954604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401602060405180830381865afa15801561280c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128309190614903565b8015612921575060c9546040516331a9108f60e11b81526004810184905230916001600160a01b031690636352211e90602401602060405180830381865afa158015612880573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128a49190614b3e565b6001600160a01b03161480612921575060c95460405163d9548e5360e01b8152600481018490526001600160a01b039091169063d9548e5390602401602060405180830381865afa1580156128fd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129219190614903565b15612a12576001600160401b038516156129a35760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b15801561298a57600080fd5b505af115801561299e573d6000803e3d6000fd5b505050505b60c954604051630fb8df0360e11b81526001600160a01b0390911690631f71be06906129db908c908c908c908c908b90600401614bb0565b600060405180830381600087803b1580156129f557600080fd5b505af1158015612a09573d6000803e3d6000fd5b50505050612c09565b612a1b8261372e565b612a248861378d565b8015612a31575087516002145b8015612a4457506001600160401b038516155b15612b225760ca5488516001600160a01b039091169063c36c2125908b908b90600090612a7357612a736149dd565b602090810291909101015160cc546040516001600160e01b031960e086901b168152612aad9392916001600160a01b031690600401614c0f565b600060405180830381600087803b158015612ac757600080fd5b505af1158015612adb573d6000803e3d6000fd5b50505050600087511115612b1d5760cc54604051633a0deb9d60e21b81526001600160a01b039091169063e837ae74906129db908a908a908790600401614c44565b612c09565b60c95460405163ba5d40b760e01b81526001600160a01b039091169063ba5d40b790612b5a908c908c908c908c908b90600401614bb0565b600060405180830381600087803b158015612b7457600080fd5b505af1158015612b88573d6000803e3d6000fd5b505050506001600160401b03851615612c095760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b158015612bf057600080fd5b505af1158015612c04573d6000803e3d6000fd5b505050505b50979650505050505050565b610cf481612c2161239e565b6137e7565b612c30828261156e565b610d815760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19166001179055612c6961239e565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b612cb561239e565b6001600160a01b0316612cd06033546001600160a01b031690565b6001600160a01b031614610d955760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610981565b610cf4600080516020614ef483398151915282611e2d565b612d48828261156e565b15610d815760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19169055612d7f61239e565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612dcb610e37565b612e0e5760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881393d517d4105554d15160621b6044820152606401610981565b600080516020614ed4833981519152805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa612e4e61239e565b6040516001600160a01b03909116815260200160405180910390a1565b805160009081905b8015612ea057829150612e8c82856110166001856149ca565b925080612e9881614c7a565b915050612e73565b50915091565b60008151600003612ef95760405162461bcd60e51b815260206004820152601b60248201527f4d696e74696e674d616e616765723a204c4142454c5f454d50545900000000006044820152606401610981565b8282604051602001612f0b9190614c91565b60405160208183030381529060405280519060200120604051602001612f3b929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b610cf4600080516020614ef48339815191528261353b565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b612fcc610e37565b15612fe95760405162461bcd60e51b8152600401610981906147cb565b600080516020614ed4833981519152805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258612e4e61239e565b6000613039600084612ea6565b600081815260cd602052604090209091506130548482614cf3565b50600081815260cf602052604090819020805460ff19168415151790555181907f4fce6f6e172b04eaa80325d8e3b0180a34945000f3e214605039e8420fdf8980906130a190869061437c565b60405180910390a260c954604051634f558e7960e01b8152600481018390526001600160a01b0390911690634f558e7990602401602060405180830381865afa1580156130f2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131169190614903565b610cde5760c9546040516307befae360e51b81526001600160a01b039091169063f7df5c6090610acc9084908790600401614db2565b600054610100900460ff166131735760405162461bcd60e51b815260040161098190614dd3565b610d9561317e61239e565b612f72565b600054610100900460ff166131aa5760405162461bcd60e51b815260040161098190614dd3565b610d9560006131b761239e565b61353b565b600054610100900460ff1661179e5760405162461bcd60e51b815260040161098190614dd3565b600054610100900460ff1661320a5760405162461bcd60e51b815260040161098190614dd3565b600080516020614ed4833981519152805460ff19169055565b600061323761323287896147f5565b612e6b565b506040516bffffffffffffffffffffffff1930606090811b821660208401524660348401528b811b82166054840152606883018490526001600160c01b031960c08a901b1660888401526090830188905286901b1660b082015290915060009061331390849061330d9060c401604051602081830303815290604052805190602001206040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c8101829052600090605c01604051602081830303815290604052805190602001209050919050565b9061384b565b905061331e816116f4565b6133765760405162461bcd60e51b8152602060048201526024808201527f4d696e74696e674d616e616765723a205349474e45525f49535f4e4f545f4d49604482015263272a22a960e11b6064820152608401610981565b42866001600160401b0316116133d85760405162461bcd60e51b815260206004820152602160248201527f4d696e74696e674d616e616765723a20455850495245445f5349474e415455526044820152604560f81b6064820152608401610981565b505050505050505050565b600061342a8a6133f38a8c6147f5565b6133fd898b6147f5565b613407888a6147f5565b60008f6001600160a01b031661341b61239e565b6001600160a01b0316146126c1565b9050896001600160a01b031661343e61239e565b6001600160a01b0316827fa545b6fd3355e8d57f8c8147bafe740545bd3ea1f94bef2576a6d532a7c3b605868660405161348b9291909182526001600160a01b0316602082015260400190565b60405180910390a450505050505050505050565b600081815260cd6020526040812080548291906134bb90614b04565b9050119050919050565b6134cd612cad565b6001600160a01b0381166135325760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610981565b610cf481612f72565b610d818282612c26565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546000906001600160a01b03163303613586575060331936013560601c90565b503390565b604080518082019091526000808252602082015260405180604001604052808381526020018486602001516135c09190614e1e565b9052949350505050565b600081516000036135dd57506000919050565b60208201805160f81c603081108015906135fb575060398160ff1611155b15801561361d575060618160ff161015801561361b5750607a8160ff1611155b155b1561362c575060009392505050565b8351600181111561369a5761364e836136466001846149ca565b015160f81c90565b915060308260ff1610158015613668575060398260ff1611155b15801561368a575060618260ff16101580156136885750607a8260ff1611155b155b1561369a57506000949350505050565b60015b6136a86001836149ca565b811015613722578381015160f81c9250602d83148015906136de575060308360ff16101580156136dc575060398360ff1611155b155b80156136ff575060618360ff16101580156136fd5750607a8360ff1611155b155b156137105750600095945050505050565b8061371a81614a39565b91505061369d565b50600195945050505050565b6137378161170e565b156137845760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a20544f4b454e5f424c4f434b45440000006044820152606401610981565b610cf48161386f565b6000806137a46000846001865161101691906149ca565b60ca549091506001600160a01b0316158015906137e05750807f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f145b9392505050565b6137f1828261156e565b610d8157613809816001600160a01b031660146138f3565b6138148360206138f3565b604051602001613825929190614e31565b60408051601f198184030181529082905262461bcd60e51b82526109819160040161437c565b600080600061385a8585613a8e565b9150915061386781613ad3565b509392505050565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd6960208201529081018290526001906138ae90606001611749565b805460ff19169115159190911790556040518181527f2ce5d9351b1d590d5a066db0d2dc7602d55f092506a83a7ee8c4d78ee357d75a9060200160405180910390a150565b60606000613902836002614ea6565b61390d906002614e1e565b6001600160401b0381111561392457613924614133565b6040519080825280601f01601f19166020018201604052801561394e576020820181803683370190505b509050600360fc1b81600081518110613969576139696149dd565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110613998576139986149dd565b60200101906001600160f81b031916908160001a90535060006139bc846002614ea6565b6139c7906001614e1e565b90505b6001811115613a3f576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106139fb576139fb6149dd565b1a60f81b828281518110613a1157613a116149dd565b60200101906001600160f81b031916908160001a90535060049490941c93613a3881614c7a565b90506139ca565b5083156137e05760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610981565b6000808251604103613ac45760208301516040840151606085015160001a613ab887828585613c89565b94509450505050613acc565b506000905060025b9250929050565b6000816004811115613ae757613ae7614ebd565b03613aef5750565b6001816004811115613b0357613b03614ebd565b03613b505760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152606401610981565b6002816004811115613b6457613b64614ebd565b03613bb15760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610981565b6003816004811115613bc557613bc5614ebd565b03613c1d5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b6064820152608401610981565b6004816004811115613c3157613c31614ebd565b03610cf45760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c604482015261756560f01b6064820152608401610981565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613cc05750600090506003613d6d565b8460ff16601b14158015613cd857508460ff16601c14155b15613ce95750600090506004613d6d565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613d3d573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613d6657600060019250925050613d6d565b9150600090505b94509492505050565b508054613d8290614b04565b6000825580601f10613d92575050565b601f016020900490600052602060002090810190610cf491905b80821115613dc05760008155600101613dac565b5090565b600060208284031215613dd657600080fd5b81356001600160e01b0319811681146137e057600080fd5b6001600160401b0381168114610cf457600080fd5b8035613e0e81613dee565b919050565b60008060408385031215613e2657600080fd5b8235613e3181613dee565b946020939093013593505050565b600060208284031215613e5157600080fd5b5035919050565b60008083601f840112613e6a57600080fd5b5081356001600160401b03811115613e8157600080fd5b602083019150836020828501011115613acc57600080fd5b600080600060408486031215613eae57600080fd5b8335925060208401356001600160401b03811115613ecb57600080fd5b613ed786828701613e58565b9497909650939450505050565b6001600160a01b0381168114610cf457600080fd5b8035613e0e81613ee4565b60008060408385031215613f1757600080fd5b823591506020830135613f2981613ee4565b809150509250929050565b600060208284031215613f4657600080fd5b81356137e081613ee4565b60008083601f840112613f6357600080fd5b5081356001600160401b03811115613f7a57600080fd5b6020830191508360208260051b8501011115613acc57600080fd5b8015158114610cf457600080fd5b60008060008060008060008060a0898b031215613fbf57600080fd5b8835613fca81613ee4565b975060208901356001600160401b0380821115613fe657600080fd5b613ff28c838d01613f51565b909950975060408b013591508082111561400b57600080fd5b6140178c838d01613f51565b909750955060608b013591508082111561403057600080fd5b5061403d8b828c01613f51565b909450925050608089013561405181613f95565b809150509295985092959890939650565b600080600080600080600080600060c08a8c03121561408057600080fd5b893561408b81613ee4565b985060208a01356001600160401b03808211156140a757600080fd5b6140b38d838e01613f51565b909a50985060408c01359150808211156140cc57600080fd5b6140d88d838e01613f51565b909850965060608c01359150808211156140f157600080fd5b506140fe8c828d01613f51565b90955093505060808a013561411281613dee565b915060a08a013561412281613f95565b809150509295985092959850929598565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561417157614171614133565b604052919050565b60006001600160401b0382111561419257614192614133565b5060051b60200190565b600060208083850312156141af57600080fd5b82356001600160401b038111156141c557600080fd5b8301601f810185136141d657600080fd5b80356141e96141e482614179565b614149565b81815260059190911b8201830190838101908783111561420857600080fd5b928401925b8284101561422f57833561422081613ee4565b8252928401929084019061420d565b979650505050505050565b6000806000806060858703121561425057600080fd5b843561425b81613ee4565b93506020850135925060408501356001600160401b0381111561427d57600080fd5b61428987828801613e58565b95989497509550505050565b600080602083850312156142a857600080fd5b82356001600160401b038111156142be57600080fd5b6142ca85828601613e58565b90969095509350505050565b6000806000604084860312156142eb57600080fd5b83356001600160401b0381111561430157600080fd5b61430d86828701613e58565b909450925050602084013561432181613f95565b809150509250925092565b60005b8381101561434757818101518382015260200161432f565b50506000910152565b6000815180845261436881602086016020860161432c565b601f01601f19169290920160200192915050565b6020815260006137e06020830184614350565b60008060008060008060c087890312156143a857600080fd5b86356143b381613ee4565b955060208701356143c381613ee4565b945060408701356143d381613ee4565b935060608701356143e381613ee4565b925060808701356143f381613ee4565b915060a087013561440381613ee4565b809150509295509295509295565b60008060008060008060008060a0898b03121561442d57600080fd5b883561443881613ee4565b97506020890135965060408901356001600160401b038082111561445b57600080fd5b6144678c838d01613e58565b909850965060608b013591508082111561448057600080fd5b61448c8c838d01613f51565b909650945060808b01359150808211156144a557600080fd5b506144b28b828c01613f51565b999c989b5096995094979396929594505050565b600080602083850312156144d957600080fd5b82356001600160401b038111156144ef57600080fd5b6142ca85828601613f51565b600080600080600080600080600080600060e08c8e03121561451c57600080fd5b6145258c613ef9565b9a506001600160401b038060208e0135111561454057600080fd5b6145508e60208f01358f01613f51565b909b50995060408d013581101561456657600080fd5b6145768e60408f01358f01613f51565b909950975060608d013581101561458c57600080fd5b61459c8e60608f01358f01613f51565b90975095506145ad60808e01613e03565b945060a08d013593508060c08e013511156145c757600080fd5b506145d88d60c08e01358e01613e58565b81935080925050509295989b509295989b9093969950565b6000806000806000806000806000806000806101008d8f03121561461357600080fd5b61461c8d613ef9565b9b506001600160401b0360208e0135111561463657600080fd5b6146468e60208f01358f01613f51565b909b5099506001600160401b0360408e0135111561466357600080fd5b6146738e60408f01358f01613f51565b90995097506001600160401b0360608e0135111561469057600080fd5b6146a08e60608f01358f01613f51565b90975095506146b160808e01613e03565b94506146bf60a08e01613ef9565b935060c08d013592506001600160401b0360e08e013511156146e057600080fd5b6146f08e60e08f01358f01613e58565b81935080925050509295989b509295989b509295989b565b6000806040838503121561471b57600080fd5b823561472681613ee4565b91506020830135613f2981613ee4565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b60006020828403121561477d57600080fd5b81516137e081613dee565b60208082526023908201527f4d696e74696e674d616e616765723a20544f4b454e5f4e4f545f455850495241604082015262424c4560e81b606082015260800190565b60208082526010908201526f14185d5cd8589b194e8814105554d15160821b604082015260600190565b60006148036141e484614179565b80848252602080830192508560051b85013681111561482157600080fd5b855b818110156148b35780356001600160401b03808211156148435760008081fd5b90880190601f36818401126148585760008081fd5b82358281111561486a5761486a614133565b61487b818301601f19168801614149565b9250808352368782860101111561489457600091508182fd5b8087850188850137600090830187015250865250938201938201614823565b50919695505050505050565b60208082526024908201527f4d696e74696e674d616e616765723a2043414c4c45525f49535f4e4f545f4d49604082015263272a22a960e11b606082015260800190565b60006020828403121561491557600080fd5b81516137e081613f95565b6020808252602f908201527f4d696e74696e674d616e616765723a2053454e4445525f49535f4e4f545f415060408201526e282927ab22a22fa7a92fa7aba722a960891b606082015260800190565b60208082526025908201527f4d696e74696e674d616e616765723a204c4142454c535f4c454e4754485f42456040820152642627abaf9960d91b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b81810381811115610954576109546149b4565b634e487b7160e01b600052603260045260246000fd5b60208082526026908201527f4d696e74696e674d616e616765723a20535542444f4d41494e535f4e4f545f41604082015265131313d5d15160d21b606082015260800190565b600060018201614a4b57614a4b6149b4565b5060010190565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b60208082526022908201527f4d696e74696e674d616e616765723a20544c445f4e4f545f5245474953544552604082015261115160f21b606082015260800190565b600060208284031215614ad557600080fd5b5051919050565b6b756e732d646576746573742d60a01b81528183600c83013760009101600c01908152919050565b600181811c90821680614b1857607f821691505b602082108103614b3857634e487b7160e01b600052602260045260246000fd5b50919050565b600060208284031215614b5057600080fd5b81516137e081613ee4565b600081518084526020808501808196508360051b8101915082860160005b85811015614ba3578284038952614b91848351614350565b98850198935090840190600101614b79565b5091979650505050505050565b6001600160a01b038616815260a060208201819052600090614bd490830187614b5b565b8281036040840152614be68187614b5b565b90508281036060840152614bfa8186614b5b565b91505082151560808301529695505050505050565b600060018060a01b03808616835260606020840152614c316060840186614350565b9150808416604084015250949350505050565b606081526000614c576060830186614b5b565b8281036020840152614c698186614b5b565b915050826040830152949350505050565b600081614c8957614c896149b4565b506000190190565b60008251614ca381846020870161432c565b9190910192915050565b601f821115610cde57600081815260208120601f850160051c81016020861015614cd45750805b601f850160051c820191505b818110156116a357828155600101614ce0565b81516001600160401b03811115614d0c57614d0c614133565b614d2081614d1a8454614b04565b84614cad565b602080601f831160018114614d555760008415614d3d5750858301515b600019600386901b1c1916600185901b1785556116a3565b600085815260208120601f198616915b82811015614d8457888601518255948401946001909101908401614d65565b5085821015614da25787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b828152604060208201526000614dcb6040830184614350565b949350505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b80820180821115610954576109546149b4565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351614e6981601785016020880161432c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351614e9a81602884016020880161432c565b01602801949350505050565b8082028115828204841417610954576109546149b4565b634e487b7160e01b600052602160045260246000fdfe5496787fc1ebdfeba375028c1865f13fbb1d63c0caa356ccc1b29a80f3ebd6229f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000811000a", + "bytecode": "0x608060405234801561000f575f80fd5b50614d348061001d5f395ff3fe6080604052600436106102a5575f3560e01c8063906cecc11161016f578063b9998a24116100d8578063d547741f11610092578063f2fde38b1161006d578063f2fde38b1461085b578063f5243bc41461087a578063f940e38514610899578063ffa1ad74146108b8575f80fd5b8063d547741f1461080a578063d7db74c714610829578063ec5273891461083c575f80fd5b8063b9998a241461074f578063cc2a9a5b1461076e578063cc2c3fc41461078d578063ceeb4f50146107ac578063d1f5692c146107cb578063d5391393146107ea575f80fd5b8063a3a3f7f611610129578063a3a3f7f614610668578063a3f4df7e14610687578063a849d65c146106d3578063aa271e1a146106f2578063b0aa98c714610711578063b3ab15fb14610730575f80fd5b8063906cecc1146105c557806391d14854146105e4578063983b2d5614610603578063986502751461062257806399e0dd7c14610636578063a217fddf14610655575f80fd5b80635b6fa8db11610211578063715018a6116101cb578063715018a61461052f57806371e2a6571461054357806377a2a5891461056257806381c81d35146105815780638456cb59146105945780638da5cb5b146105a8575f80fd5b80635b6fa8db1461048c5780635c975abb146104ab5780635cd7e3b3146104bf5780635e22cd86146104de5780635fc1964f146104fd578063634486da1461051c575f80fd5b80633092afd5116102625780633092afd51461039757806336568abe146103b65780633f41b614146103d55780633f4ba83a1461040c57806351cff8d914610420578063572b6c051461043f575f80fd5b806301ffc9a7146102a95780631edb948e146102dd57806320c5429b146102fe578063248a9ca31461031d578063268b15ed146103595780632f2ff15d14610378575b5f80fd5b3480156102b4575f80fd5b506102c86102c3366004613c82565b6108e8565b60405190151581526020015b60405180910390f35b3480156102e8575f80fd5b506102fc6102f7366004613ccd565b61091e565b005b348015610309575f80fd5b506102fc610318366004613cf7565b610abe565b348015610328575f80fd5b5061034b610337366004613cf7565b5f9081526097602052604090206001015490565b6040519081526020016102d4565b348015610364575f80fd5b506102fc610373366004613d4b565b610bd9565b348015610383575f80fd5b506102fc610392366004613db1565b610c6a565b3480156103a2575f80fd5b506102fc6103b1366004613ddf565b610c93565b3480156103c1575f80fd5b506102fc6103d0366004613db1565b610ca7565b3480156103e0575f80fd5b5060c9546103f4906001600160a01b031681565b6040516001600160a01b0390911681526020016102d4565b348015610417575f80fd5b506102fc610d35565b34801561042b575f80fd5b506102fc61043a366004613ddf565b610d47565b34801561044a575f80fd5b506102c8610459366004613ddf565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546001600160a01b0390811691161490565b348015610497575f80fd5b5060cc546103f4906001600160a01b031681565b3480156104b6575f80fd5b506102c8610de2565b3480156104ca575f80fd5b506102fc6104d9366004613e47565b610df7565b3480156104e9575f80fd5b506102fc6104f8366004613efe565b611052565b348015610508575f80fd5b506102fc61051736600461402c565b611291565b6102fc61052a366004613ddf565b6112ce565b34801561053a575f80fd5b506102fc61138e565b34801561054e575f80fd5b506102fc61055d36600461402c565b61139f565b34801561056d575f80fd5b5060ce546103f4906001600160a01b031681565b6102fc61058f366004613ddf565b6113dc565b34801561059f575f80fd5b506102fc611459565b3480156105b3575f80fd5b506033546001600160a01b03166103f4565b3480156105d0575f80fd5b506102fc6105df3660046140c5565b611469565b3480156105ef575f80fd5b506102c86105fe366004613db1565b6114ee565b34801561060e575f80fd5b506102fc61061d366004613ddf565b611518565b34801561062d575f80fd5b506102fc611529565b348015610641575f80fd5b506102fc61065036600461411c565b611542565b348015610660575f80fd5b5061034b5f81565b348015610673575f80fd5b506102fc61068236600461415a565b61161f565b348015610692575f80fd5b506106c6604051806040016040528060148152602001732aa7299d1026b4b73a34b7339026b0b730b3b2b960611b81525081565b6040516102d491906141f9565b3480156106de575f80fd5b5060cb546103f4906001600160a01b031681565b3480156106fd575f80fd5b506102c861070c366004613ddf565b611667565b34801561071c575f80fd5b506102c861072b366004613cf7565b61167f565b34801561073b575f80fd5b506102fc61074a366004613ddf565b6116dc565b34801561075a575f80fd5b506102fc610769366004613ddf565b611706565b348015610779575f80fd5b506102fc61078836600461420b565b61174b565b348015610798575f80fd5b5060ca546103f4906001600160a01b031681565b3480156107b7575f80fd5b506102fc6107c6366004614289565b611c30565b3480156107d6575f80fd5b506102fc6107e5366004614336565b611cd2565b3480156107f5575f80fd5b5061034b5f80516020614d0883398151915281565b348015610815575f80fd5b506102fc610824366004613db1565b611d7c565b6102fc610837366004614368565b611da0565b348015610847575f80fd5b506102fc610856366004613cf7565b611f28565b348015610866575f80fd5b506102fc610875366004613ddf565b611f98565b348015610885575f80fd5b506102fc610894366004614452565b611fb3565b3480156108a4575f80fd5b506102fc6108b336600461455f565b61215f565b3480156108c3575f80fd5b506106c660405180604001604052806005815260200164302e352e3160d81b81525081565b5f6001600160e01b03198216637965db0b60e01b148061091857506301ffc9a760e01b6001600160e01b03198316145b92915050565b61092961070c6122d5565b61094e5760405162461bcd60e51b81526004016109459061458b565b60405180910390fd5b60c95460405163baef73e960e01b8152600481018390525f916001600160a01b03169063baef73e990602401602060405180830381865afa158015610995573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109b991906145c0565b9050806001600160401b03165f036109e35760405162461bcd60e51b8152600401610945906145db565b806001600160401b0316836001600160401b031611610a505760405162461bcd60e51b815260206004820152602360248201527f4d696e74696e674d616e616765723a204558504952595f4e4f545f455854454e60448201526211115160ea1b6064820152608401610945565b60c954604051631fb9763760e11b81526001600160401b0385166004820152602481018490526001600160a01b0390911690633f72ec6e906044015b5f604051808303815f87803b158015610aa3575f80fd5b505af1158015610ab5573d5f803e3d5ffd5b50505050505050565b610ac961070c6122d5565b610ae55760405162461bcd60e51b81526004016109459061458b565b60c95460405163baef73e960e01b8152600481018390526001600160a01b039091169063baef73e990602401602060405180830381865afa158015610b2c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b5091906145c0565b6001600160401b03165f03610b775760405162461bcd60e51b8152600401610945906145db565b60c954604051637eee288d60e01b8152306004820152602481018390526001600160a01b0390911690637eee288d906044015f604051808303815f87803b158015610bc0575f80fd5b505af1158015610bd2573d5f803e3d5ffd5b5050505050565b8282828080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920182905250610c1b93508592508491506122e3565b610c23610de2565b15610c405760405162461bcd60e51b81526004016109459061461e565b6060610ab5610c4d6122d5565b610c6088610c5b89896124b5565b6124e1565b83845f60016125ec565b5f82815260976020526040902060010154610c8481612b1b565b610c8e8383612b2c565b505050565b610c9b612bb2565b610ca481612c2b565b50565b610caf6122d5565b6001600160a01b0316816001600160a01b031614610d275760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610945565b610d318282612c42565b5050565b610d3d612bb2565b610d45612cc6565b565b610d4f612bb2565b6001600160a01b038116610d61575f80fd5b60405147906001600160a01b0383169082156108fc029083905f818181858888f19350505050158015610d96573d5f803e3d5ffd5b50604080516001600160a01b0384168152602081018390525f8183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a15050565b5f80516020614ce88339815191525460ff1690565b610e018688614648565b8051600203610e3657610e1561070c6122d5565b610e315760405162461bcd60e51b815260040161094590614707565b610f76565b5f610e4082612d6d565b60c9549092506001600160a01b0316905063430c2081610e5e6122d5565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015610ea7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ecb919061474b565b80610f58575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa158015610f22573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f46919061474b565b8015610f585750610f5861070c6122d5565b610f745760405162461bcd60e51b815260040161094590614766565b505b610f808789614648565b5f600282511015610fa35760405162461bcd60e51b8152600401610945906147b5565b610ff6610fd65f8460018651610fb9919061480e565b81518110610fc957610fc9614821565b6020026020010151612da7565b835f81518110610fe857610fe8614821565b6020026020010151836122e3565b610ffe610de2565b1561101b5760405162461bcd60e51b81526004016109459061461e565b6110448b6110298b8d614648565b6110338a8c614648565b61103d898b614648565b5f896125ec565b505050505050505050505050565b61105c8789614648565b80516002036110915761107061070c6122d5565b61108c5760405162461bcd60e51b815260040161094590614707565b6111d1565b5f61109b82612d6d565b60c9549092506001600160a01b0316905063430c20816110b96122d5565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015611102573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611126919061474b565b806111b3575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa15801561117d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111a1919061474b565b80156111b357506111b361070c6122d5565b6111cf5760405162461bcd60e51b815260040161094590614766565b505b6111db888a614648565b836002825110156111fe5760405162461bcd60e51b8152600401610945906147b5565b611214610fd65f8460018651610fb9919061480e565b61121c610de2565b156112395760405162461bcd60e51b81526004016109459061461e565b60028a146112595760405162461bcd60e51b815260040161094590614835565b6112828c6112678c8e614648565b6112718b8d614648565b61127b8a8c614648565b89896125ec565b50505050505050505050505050565b611299612bb2565b5f5b8151811015610d31576112c68282815181106112b9576112b9614821565b6020026020010151612c2b565b60010161129b565b6112d961070c6122d5565b6112f55760405162461bcd60e51b81526004016109459061458b565b6001600160a01b03811661134b5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610945565b61135481612e59565b61135c611529565b6040516001600160a01b038216903480156108fc02915f818181858888f19350505050158015610d31573d5f803e3d5ffd5b611396612bb2565b610d455f612e70565b6113a7612bb2565b5f5b8151811015610d31576113d48282815181106113c7576113c7614821565b6020026020010151612e59565b6001016113a9565b6113e761070c6122d5565b6114035760405162461bcd60e51b81526004016109459061458b565b6001600160a01b0381166113545760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610945565b611461612bb2565b610d45612ec1565b8282828080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201829052506114ab93508592508491506122e3565b6114b3610de2565b156114d05760405162461bcd60e51b81526004016109459061461e565b60606114e487610c6088610c5b89896124b5565b5050505050505050565b5f9182526097602090815260408084206001600160a01b0393909316845291905290205460ff1690565b611520612bb2565b610ca481612e59565b610d455f80516020614d088339815191526103d06122d5565b61154a612bb2565b60c954604051632678375f60e21b81526001600160a01b03909116906399e0dd7c9061157c908590859060040161487b565b5f604051808303815f87803b158015611593575f80fd5b505af11580156115a5573d5f803e3d5ffd5b505060cb546001600160a01b0316159150610d3190505760cb54604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906115ee908590859060040161487b565b5f604051808303815f87803b158015611605575f80fd5b505af1158015611617573d5f803e3d5ffd5b505050505050565b611627612bb2565b610c8e83838080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250859250612f28915050565b5f6109185f80516020614d08833981519152836114ee565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd6960208201529081018290525f906116d2906060015b6040516020818303038152906040528051906020012090565b5460ff1692915050565b6116e4612bb2565b60ce80546001600160a01b0319166001600160a01b0392909216919091179055565b61170e612bb2565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e80546001600160a01b0319166001600160a01b03831617905550565b5f54610100900460ff161580801561176957505f54600160ff909116105b806117825750303b15801561178257505f5460ff166001145b6117e55760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610945565b5f805460ff191660011790558015611806575f805461ff0019166101001790555b60c980546001600160a01b03199081166001600160a01b038a81169190911790925560ca8054821689841617905560cb8054821688841617905560cc8054821687841617905560ce8054909116918516919091179055611864613042565b61186c613078565b611875826130af565b61187d6130d5565b6040805161036081018252600661032082018181526563727970746f60d01b610340840152825282518084018452818152651dd85b1b195d60d21b602082810191909152808401919091528351808501855260018152600f60fb1b8183015283850152835180850185526003808252621b999d60ea1b82840152606085019190915284518086018652600a815269313637b1b5b1b430b4b760b11b818401526080850152845180860186526007808252663134ba31b7b4b760c91b8285015260a0860191909152855180870187528281526207070760eb1b8185015260c0860152855180870187528281526264616f60e81b8185015260e086015285518087018752828152621e9a5b60ea1b8185015261010086015285518087018752908152663837b63cb3b7b760c91b8184015261012085015284518086018652600b81526a756e73746f707061626c6560a81b81840152610140850152845180860186528381526535b632bb32b960d11b8184015261016085015284518086018652600280825261686960f01b8285015261018086019190915285518087018752848152656b726573757360d01b818501526101a086015285518087018752600580825264616e696d6560d81b828601526101c087019190915286518088018852818152646d616e676160d81b818601526101e087015286518088018852600981526862696e616e6365757360b81b8186015261020087015286518088018852818152647265616c6d60d81b818601526102208701528651808801885291825261676f60f01b82850152610240860191909152855180870187526008815267185b1d1a5b5a5cdd60c21b818501526102608601528551808701875290815264707564677960d81b81840152610280850152845180860186528381526530bab9ba34b760d11b818401526102a08501528451808601865292835265189a5d19d95d60d21b838301526102c08401929092528351808501855291825262706f6760e81b828201526102e083019190915282518084019093526004835263636c617960e01b908301526103008101919091525f5b6019811015611bbb57611bb3828260198110611ba857611ba8614821565b60200201515f612f28565b600101611b8a565b50611be260405180604001604052806003815260200162636f6d60e81b8152506001612f28565b508015610ab5575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050505050565b8686868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920182905250611c7293508592508491506122e3565b611c7a610de2565b15611c975760405162461bcd60e51b81526004016109459061461e565b611cc58a611ca98b610c5b8c8c6124b5565b611cb3888a614648565b611cbd8789614648565b5f60016125ec565b5050505050505050505050565b611cda612bb2565b5f5b81811015610c8e5760c9546001600160a01b03166350960239848484818110611d0757611d07614821565b9050602002016020810190611d1c9190613ddf565b6040516001600160e01b031960e084901b1681526001600160a01b0390911660048201526024015f604051808303815f87803b158015611d5a575f80fd5b505af1158015611d6c573d5f803e3d5ffd5b505060019092019150611cdc9050565b5f82815260976020526040902060010154611d9681612b1b565b610c8e8383612c42565b611daa898b614648565b5f600282511015611dcd5760405162461bcd60e51b8152600401610945906147b5565b611de3610fd65f8460018651610fb9919061480e565b611deb610de2565b15611e085760405162461bcd60e51b81526004016109459061461e565b60028b14611e285760405162461bcd60e51b815260040161094590614835565b611e6c8d8d8d89895f8a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061311392505050565b84341015611ebc5760405162461bcd60e51b815260206004820181905260248201527f4d696e74696e674d616e616765723a204e4f545f454e4f5547485f46554e44536044820152606401610945565b611ecd8d8d8d8d8d8d8d8c5f6132d0565b8434111561128257611edd6122d5565b6001600160a01b03166108fc611ef3873461480e565b6040518115909202915f818181858888f19350505050158015611f18573d5f803e3d5ffd5b5050505050505050505050505050565b611f30612bb2565b611f398161338a565b611f555760405162461bcd60e51b8152600401610945906148a9565b5f81815260cd60205260408120611f6b91613c38565b60405181907f0aa1aff0f830e739d86baf0e6624d6763da02f7733575e0e463886cd062dea6a905f90a250565b611fa0612bb2565b611fa9816133af565b610ca45f82613425565b611fbd8a8c614648565b5f600282511015611fe05760405162461bcd60e51b8152600401610945906147b5565b611ff6610fd65f8460018651610fb9919061480e565b611ffe610de2565b1561201b5760405162461bcd60e51b81526004016109459061461e565b60028c1461203b5760405162461bcd60e51b815260040161094590614835565b61207f8e8e8e8a898b8a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061311392505050565b856001600160a01b03166323b872dd6120966122d5565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152306024820152604481018890526064016020604051808303815f875af11580156120e6573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061210a919061474b565b61214e5760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610945565b611f188e8e8e8e8e8e8e8c8e6132d0565b612167612bb2565b6040516370a0823160e01b81523060048201525f906001600160a01b038416906370a0823190602401602060405180830381865afa1580156121ab573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906121cf91906148eb565b60405163a9059cbb60e01b81526001600160a01b038481166004830152602482018390529192509084169063a9059cbb906044016020604051808303815f875af115801561221f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612243919061474b565b6122875760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610945565b604080516001600160a01b0384811682526020820184905285168183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a1505050565b5f6122de61342f565b905090565b6122ec8361338a565b6123085760405162461bcd60e51b8152600401610945906148a9565b5f83815260cf602052604090205460ff1615156001600160401b0382161515146123835760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544c445f455850495241424c455f4d496044820152650a69a82a886960d31b6064820152608401610945565b5f6123b4836040805180820182525f8082526020918201528151808301909252825182529182019181019190915290565b9050600a815f0151111561245a576123dd6123d1825f600a613474565b80516020909101512090565b7fb551e0305c8163b812374b8e78b577c77f226f6f10c5ad03e52699578fbc34b80361245a5760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544f4b454e5f4c4142454c5f50524f4860448201526512509255115160d21b6064820152608401610945565b612463836134b2565b6124af5760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a204c4142454c5f494e56414c49440000006044820152606401610945565b50505050565b606082826040516020016124ca929190614902565b604051602081830303815290604052905092915050565b60408051600280825260608281019093525f9190816020015b60608152602001906001900390816124fa57905050905082815f8151811061252457612524614821565b602002602001018190525060cd5f8581526020019081526020015f20805461254b90614929565b80601f016020809104026020016040519081016040528092919081815260200182805461257790614929565b80156125c25780601f10612599576101008083540402835291602001916125c2565b820191905f5260205f20905b8154815290600101906020018083116125a557829003601f168201915b5050505050816001815181106125da576125da614821565b60209081029190910101529392505050565b5f805f6125f888612d6d565b9150915083801561260a575060028851115b801561268a575060c9546040516331a9108f60e11b8152600481018390526001600160a01b038b8116921690636352211e90602401602060405180830381865afa15801561265a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061267e9190614961565b6001600160a01b031614155b156126ea5760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e616765723a20524556455253455f5245434f52445f4e60448201526913d517d0531313d5d15160b21b6064820152608401610945565b60c954604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401602060405180830381865afa158015612731573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612755919061474b565b8015612842575060c9546040516331a9108f60e11b81526004810184905230916001600160a01b031690636352211e90602401602060405180830381865afa1580156127a3573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906127c79190614961565b6001600160a01b03161480612842575060c95460405163d9548e5360e01b8152600481018490526001600160a01b039091169063d9548e5390602401602060405180830381865afa15801561281e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612842919061474b565b15612929576001600160401b038516156128bf5760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e906044015f604051808303815f87803b1580156128a8575f80fd5b505af11580156128ba573d5f803e3d5ffd5b505050505b60c954604051630fb8df0360e11b81526001600160a01b0390911690631f71be06906128f7908c908c908c908c908b906004016149d4565b5f604051808303815f87803b15801561290e575f80fd5b505af1158015612920573d5f803e3d5ffd5b50505050612b0f565b61293282613606565b61293b88613665565b8015612948575087516002145b801561295b57506001600160401b038516155b15612a325760ca5488516001600160a01b039091169063c36c2125908b908b905f9061298957612989614821565b602090810291909101015160cc546040516001600160e01b031960e086901b1681526129c39392916001600160a01b031690600401614a32565b5f604051808303815f87803b1580156129da575f80fd5b505af11580156129ec573d5f803e3d5ffd5b505050505f87511115612a2d5760cc54604051633a0deb9d60e21b81526001600160a01b039091169063e837ae74906128f7908a908a908790600401614a66565b612b0f565b60c95460405163ba5d40b760e01b81526001600160a01b039091169063ba5d40b790612a6a908c908c908c908c908b906004016149d4565b5f604051808303815f87803b158015612a81575f80fd5b505af1158015612a93573d5f803e3d5ffd5b505050506001600160401b03851615612b0f5760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e906044015f604051808303815f87803b158015612af8575f80fd5b505af1158015612b0a573d5f803e3d5ffd5b505050505b50979650505050505050565b610ca481612b276122d5565b6136bd565b612b3682826114ee565b610d31575f8281526097602090815260408083206001600160a01b03851684529091529020805460ff19166001179055612b6e6122d5565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b612bba6122d5565b6001600160a01b0316612bd56033546001600160a01b031690565b6001600160a01b031614610d455760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610945565b610ca45f80516020614d0883398151915282611d7c565b612c4c82826114ee565b15610d31575f8281526097602090815260408083206001600160a01b03851684529091529020805460ff19169055612c826122d5565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612cce610de2565b612d115760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881393d517d4105554d15160621b6044820152606401610945565b5f80516020614ce8833981519152805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa612d506122d5565b6040516001600160a01b03909116815260200160405180910390a1565b80515f9081905b8015612da157829150612d8d8285610fb960018561480e565b925080612d9981614a9b565b915050612d74565b50915091565b5f81515f03612df85760405162461bcd60e51b815260206004820152601b60248201527f4d696e74696e674d616e616765723a204c4142454c5f454d50545900000000006044820152606401610945565b8282604051602001612e0a9190614ab0565b60405160208183030381529060405280519060200120604051602001612e3a929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b610ca45f80516020614d0883398151915282613425565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b612ec9610de2565b15612ee65760405162461bcd60e51b81526004016109459061461e565b5f80516020614ce8833981519152805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258612d506122d5565b5f612f335f84612da7565b5f81815260cd60205260409020909150612f4d8482614b0f565b505f81815260cf602052604090819020805460ff19168415151790555181907f4fce6f6e172b04eaa80325d8e3b0180a34945000f3e214605039e8420fdf898090612f999086906141f9565b60405180910390a260c954604051634f558e7960e01b8152600481018390526001600160a01b0390911690634f558e7990602401602060405180830381865afa158015612fe8573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061300c919061474b565b610c8e5760c9546040516307befae360e51b81526001600160a01b039091169063f7df5c6090610a8c9084908790600401614bca565b5f54610100900460ff166130685760405162461bcd60e51b815260040161094590614bea565b610d456130736122d5565b612e70565b5f54610100900460ff1661309e5760405162461bcd60e51b815260040161094590614bea565b610d455f6130aa6122d5565b613425565b5f54610100900460ff1661170e5760405162461bcd60e51b815260040161094590614bea565b5f54610100900460ff166130fb5760405162461bcd60e51b815260040161094590614bea565b5f80516020614ce8833981519152805460ff19169055565b5f6131266131218789614648565b612d6d565b506040516bffffffffffffffffffffffff1930606090811b821660208401524660348401528b811b82166054840152606883018490526001600160c01b031960c08a901b1660888401526090830188905286901b1660b08201529091505f906132009084906131fa9060c401604051602081830303815290604052805190602001206040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c81018290525f90605c01604051602081830303815290604052805190602001209050919050565b90613721565b905061320b81611667565b6132635760405162461bcd60e51b8152602060048201526024808201527f4d696e74696e674d616e616765723a205349474e45525f49535f4e4f545f4d49604482015263272a22a960e11b6064820152608401610945565b42866001600160401b0316116132c55760405162461bcd60e51b815260206004820152602160248201527f4d696e74696e674d616e616765723a20455850495245445f5349474e415455526044820152604560f81b6064820152608401610945565b505050505050505050565b5f6133158a6132df8a8c614648565b6132e9898b614648565b6132f3888a614648565b5f8f6001600160a01b03166133066122d5565b6001600160a01b0316146125ec565b9050896001600160a01b03166133296122d5565b6001600160a01b0316827fa545b6fd3355e8d57f8c8147bafe740545bd3ea1f94bef2576a6d532a7c3b60586866040516133769291909182526001600160a01b0316602082015260400190565b60405180910390a450505050505050505050565b5f81815260cd6020526040812080548291906133a590614929565b9050119050919050565b6133b7612bb2565b6001600160a01b03811661341c5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610945565b610ca481612e70565b610d318282612b2c565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e545f906001600160a01b0316330361346f575060331936013560601c90565b503390565b604080518082019091525f808252602082015260405180604001604052808381526020018486602001516134a89190614c35565b9052949350505050565b5f81515f036134c257505f919050565b60208201805160f81c603081108015906134e0575060398160ff1611155b158015613502575060618160ff16101580156135005750607a8160ff1611155b155b1561351057505f9392505050565b8351600181111561357d576135328361352a60018461480e565b015160f81c90565b915060308260ff161015801561354c575060398260ff1611155b15801561356e575060618260ff161015801561356c5750607a8260ff1611155b155b1561357d57505f949350505050565b60015b61358b60018361480e565b8110156135fa578381015160f81c9250602d83148015906135c1575060308360ff16101580156135bf575060398360ff1611155b155b80156135e2575060618360ff16101580156135e05750607a8360ff1611155b155b156135f257505f95945050505050565b600101613580565b50600195945050505050565b61360f8161167f565b1561365c5760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a20544f4b454e5f424c4f434b45440000006044820152606401610945565b610ca481613743565b5f8061367a5f8460018651610fb9919061480e565b60ca549091506001600160a01b0316158015906136b65750807f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f145b9392505050565b6136c782826114ee565b610d31576136df816001600160a01b031660146137c7565b6136ea8360206137c7565b6040516020016136fb929190614c48565b60408051601f198184030181529082905262461bcd60e51b8252610945916004016141f9565b5f805f61372e858561395c565b9150915061373b8161399e565b509392505050565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd696020820152908101829052600190613782906060016116b9565b805460ff19169115159190911790556040518181527f2ce5d9351b1d590d5a066db0d2dc7602d55f092506a83a7ee8c4d78ee357d75a9060200160405180910390a150565b60605f6137d5836002614cbc565b6137e0906002614c35565b6001600160401b038111156137f7576137f7613fc6565b6040519080825280601f01601f191660200182016040528015613821576020820181803683370190505b509050600360fc1b815f8151811061383b5761383b614821565b60200101906001600160f81b03191690815f1a905350600f60fb1b8160018151811061386957613869614821565b60200101906001600160f81b03191690815f1a9053505f61388b846002614cbc565b613896906001614c35565b90505b600181111561390d576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106138ca576138ca614821565b1a60f81b8282815181106138e0576138e0614821565b60200101906001600160f81b03191690815f1a90535060049490941c9361390681614a9b565b9050613899565b5083156136b65760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610945565b5f808251604103613990576020830151604084015160608501515f1a61398487828585613b53565b94509450505050613997565b505f905060025b9250929050565b5f8160048111156139b1576139b1614cd3565b036139b95750565b60018160048111156139cd576139cd614cd3565b03613a1a5760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152606401610945565b6002816004811115613a2e57613a2e614cd3565b03613a7b5760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610945565b6003816004811115613a8f57613a8f614cd3565b03613ae75760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b6064820152608401610945565b6004816004811115613afb57613afb614cd3565b03610ca45760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c604482015261756560f01b6064820152608401610945565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613b8857505f90506003613c2f565b8460ff16601b14158015613ba057508460ff16601c14155b15613bb057505f90506004613c2f565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613c01573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b038116613c29575f60019250925050613c2f565b91505f90505b94509492505050565b508054613c4490614929565b5f825580601f10613c53575050565b601f0160209004905f5260205f2090810190610ca491905b80821115613c7e575f8155600101613c6b565b5090565b5f60208284031215613c92575f80fd5b81356001600160e01b0319811681146136b6575f80fd5b6001600160401b0381168114610ca4575f80fd5b8035613cc881613ca9565b919050565b5f8060408385031215613cde575f80fd5b8235613ce981613ca9565b946020939093013593505050565b5f60208284031215613d07575f80fd5b5035919050565b5f8083601f840112613d1e575f80fd5b5081356001600160401b03811115613d34575f80fd5b602083019150836020828501011115613997575f80fd5b5f805f60408486031215613d5d575f80fd5b8335925060208401356001600160401b03811115613d79575f80fd5b613d8586828701613d0e565b9497909650939450505050565b6001600160a01b0381168114610ca4575f80fd5b8035613cc881613d92565b5f8060408385031215613dc2575f80fd5b823591506020830135613dd481613d92565b809150509250929050565b5f60208284031215613def575f80fd5b81356136b681613d92565b5f8083601f840112613e0a575f80fd5b5081356001600160401b03811115613e20575f80fd5b6020830191508360208260051b8501011115613997575f80fd5b8015158114610ca4575f80fd5b5f805f805f805f8060a0898b031215613e5e575f80fd5b8835613e6981613d92565b975060208901356001600160401b0380821115613e84575f80fd5b613e908c838d01613dfa565b909950975060408b0135915080821115613ea8575f80fd5b613eb48c838d01613dfa565b909750955060608b0135915080821115613ecc575f80fd5b50613ed98b828c01613dfa565b9094509250506080890135613eed81613e3a565b809150509295985092959890939650565b5f805f805f805f805f60c08a8c031215613f16575f80fd5b8935613f2181613d92565b985060208a01356001600160401b0380821115613f3c575f80fd5b613f488d838e01613dfa565b909a50985060408c0135915080821115613f60575f80fd5b613f6c8d838e01613dfa565b909850965060608c0135915080821115613f84575f80fd5b50613f918c828d01613dfa565b90955093505060808a0135613fa581613ca9565b915060a08a0135613fb581613e3a565b809150509295985092959850929598565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f191681016001600160401b038111828210171561400257614002613fc6565b604052919050565b5f6001600160401b0382111561402257614022613fc6565b5060051b60200190565b5f602080838503121561403d575f80fd5b82356001600160401b03811115614052575f80fd5b8301601f81018513614062575f80fd5b80356140756140708261400a565b613fda565b81815260059190911b82018301908381019087831115614093575f80fd5b928401925b828410156140ba5783356140ab81613d92565b82529284019290840190614098565b979650505050505050565b5f805f80606085870312156140d8575f80fd5b84356140e381613d92565b93506020850135925060408501356001600160401b03811115614104575f80fd5b61411087828801613d0e565b95989497509550505050565b5f806020838503121561412d575f80fd5b82356001600160401b03811115614142575f80fd5b61414e85828601613d0e565b90969095509350505050565b5f805f6040848603121561416c575f80fd5b83356001600160401b03811115614181575f80fd5b61418d86828701613d0e565b90945092505060208401356141a181613e3a565b809150509250925092565b5f5b838110156141c65781810151838201526020016141ae565b50505f910152565b5f81518084526141e58160208601602086016141ac565b601f01601f19169290920160200192915050565b602081525f6136b660208301846141ce565b5f805f805f8060c08789031215614220575f80fd5b863561422b81613d92565b9550602087013561423b81613d92565b9450604087013561424b81613d92565b9350606087013561425b81613d92565b9250608087013561426b81613d92565b915060a087013561427b81613d92565b809150509295509295509295565b5f805f805f805f8060a0898b0312156142a0575f80fd5b88356142ab81613d92565b97506020890135965060408901356001600160401b03808211156142cd575f80fd5b6142d98c838d01613d0e565b909850965060608b01359150808211156142f1575f80fd5b6142fd8c838d01613dfa565b909650945060808b0135915080821115614315575f80fd5b506143228b828c01613dfa565b999c989b5096995094979396929594505050565b5f8060208385031215614347575f80fd5b82356001600160401b0381111561435c575f80fd5b61414e85828601613dfa565b5f805f805f805f805f805f60e08c8e031215614382575f80fd5b61438b8c613da6565b9a506001600160401b038060208e013511156143a5575f80fd5b6143b58e60208f01358f01613dfa565b909b50995060408d01358110156143ca575f80fd5b6143da8e60408f01358f01613dfa565b909950975060608d01358110156143ef575f80fd5b6143ff8e60608f01358f01613dfa565b909750955061441060808e01613cbd565b945060a08d013593508060c08e01351115614429575f80fd5b5061443a8d60c08e01358e01613d0e565b81935080925050509295989b509295989b9093969950565b5f805f805f805f805f805f806101008d8f03121561446e575f80fd5b6144778d613da6565b9b506001600160401b0360208e01351115614490575f80fd5b6144a08e60208f01358f01613dfa565b909b5099506001600160401b0360408e013511156144bc575f80fd5b6144cc8e60408f01358f01613dfa565b90995097506001600160401b0360608e013511156144e8575f80fd5b6144f88e60608f01358f01613dfa565b909750955061450960808e01613cbd565b945061451760a08e01613da6565b935060c08d013592506001600160401b0360e08e01351115614537575f80fd5b6145478e60e08f01358f01613d0e565b81935080925050509295989b509295989b509295989b565b5f8060408385031215614570575f80fd5b823561457b81613d92565b91506020830135613dd481613d92565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b5f602082840312156145d0575f80fd5b81516136b681613ca9565b60208082526023908201527f4d696e74696e674d616e616765723a20544f4b454e5f4e4f545f455850495241604082015262424c4560e81b606082015260800190565b60208082526010908201526f14185d5cd8589b194e8814105554d15160821b604082015260600190565b5f6146556140708461400a565b80848252602080830192508560051b850136811115614672575f80fd5b855b818110156146fb5780356001600160401b0380821115614692575f80fd5b90880190601f36818401126146a5575f80fd5b8235828111156146b7576146b7613fc6565b6146c8818301601f19168801613fda565b925080835236878286010111156146dd575f80fd5b80878501888501375f90830187015250865250938201938201614674565b50919695505050505050565b60208082526024908201527f4d696e74696e674d616e616765723a2043414c4c45525f49535f4e4f545f4d49604082015263272a22a960e11b606082015260800190565b5f6020828403121561475b575f80fd5b81516136b681613e3a565b6020808252602f908201527f4d696e74696e674d616e616765723a2053454e4445525f49535f4e4f545f415060408201526e282927ab22a22fa7a92fa7aba722a960891b606082015260800190565b60208082526025908201527f4d696e74696e674d616e616765723a204c4142454c535f4c454e4754485f42456040820152642627abaf9960d91b606082015260800190565b634e487b7160e01b5f52601160045260245ffd5b81810381811115610918576109186147fa565b634e487b7160e01b5f52603260045260245ffd5b60208082526026908201527f4d696e74696e674d616e616765723a20535542444f4d41494e535f4e4f545f41604082015265131313d5d15160d21b606082015260800190565b60208152816020820152818360408301375f818301604090810191909152601f909201601f19160101919050565b60208082526022908201527f4d696e74696e674d616e616765723a20544c445f4e4f545f5245474953544552604082015261115160f21b606082015260800190565b5f602082840312156148fb575f80fd5b5051919050565b6b756e732d646576746573742d60a01b81528183600c8301375f9101600c01908152919050565b600181811c9082168061493d57607f821691505b60208210810361495b57634e487b7160e01b5f52602260045260245ffd5b50919050565b5f60208284031215614971575f80fd5b81516136b681613d92565b5f8282518085526020808601955060208260051b840101602086015f5b848110156149c757601f198684030189526149b58383516141ce565b98840198925090830190600101614999565b5090979650505050505050565b6001600160a01b038616815260a0602082018190525f906149f79083018761497c565b8281036040840152614a09818761497c565b90508281036060840152614a1d818661497c565b91505082151560808301529695505050505050565b5f60018060a01b03808616835260606020840152614a5360608401866141ce565b9150808416604084015250949350505050565b606081525f614a78606083018661497c565b8281036020840152614a8a818661497c565b915050826040830152949350505050565b5f81614aa957614aa96147fa565b505f190190565b5f8251614ac18184602087016141ac565b9190910192915050565b601f821115610c8e57805f5260205f20601f840160051c81016020851015614af05750805b601f840160051c820191505b81811015610bd2575f8155600101614afc565b81516001600160401b03811115614b2857614b28613fc6565b614b3c81614b368454614929565b84614acb565b602080601f831160018114614b6f575f8415614b585750858301515b5f19600386901b1c1916600185901b178555611617565b5f85815260208120601f198616915b82811015614b9d57888601518255948401946001909101908401614b7e565b5085821015614bba57878501515f19600388901b60f8161c191681555b5050505050600190811b01905550565b828152604060208201525f614be260408301846141ce565b949350505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b80820180821115610918576109186147fa565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081525f8351614c7f8160178501602088016141ac565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351614cb08160288401602088016141ac565b01602801949350505050565b8082028115828204841417610918576109186147fa565b634e487b7160e01b5f52602160045260245ffdfe5496787fc1ebdfeba375028c1865f13fbb1d63c0caa356ccc1b29a80f3ebd6229f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000818000a", + "deployedBytecode": "0x6080604052600436106102a5575f3560e01c8063906cecc11161016f578063b9998a24116100d8578063d547741f11610092578063f2fde38b1161006d578063f2fde38b1461085b578063f5243bc41461087a578063f940e38514610899578063ffa1ad74146108b8575f80fd5b8063d547741f1461080a578063d7db74c714610829578063ec5273891461083c575f80fd5b8063b9998a241461074f578063cc2a9a5b1461076e578063cc2c3fc41461078d578063ceeb4f50146107ac578063d1f5692c146107cb578063d5391393146107ea575f80fd5b8063a3a3f7f611610129578063a3a3f7f614610668578063a3f4df7e14610687578063a849d65c146106d3578063aa271e1a146106f2578063b0aa98c714610711578063b3ab15fb14610730575f80fd5b8063906cecc1146105c557806391d14854146105e4578063983b2d5614610603578063986502751461062257806399e0dd7c14610636578063a217fddf14610655575f80fd5b80635b6fa8db11610211578063715018a6116101cb578063715018a61461052f57806371e2a6571461054357806377a2a5891461056257806381c81d35146105815780638456cb59146105945780638da5cb5b146105a8575f80fd5b80635b6fa8db1461048c5780635c975abb146104ab5780635cd7e3b3146104bf5780635e22cd86146104de5780635fc1964f146104fd578063634486da1461051c575f80fd5b80633092afd5116102625780633092afd51461039757806336568abe146103b65780633f41b614146103d55780633f4ba83a1461040c57806351cff8d914610420578063572b6c051461043f575f80fd5b806301ffc9a7146102a95780631edb948e146102dd57806320c5429b146102fe578063248a9ca31461031d578063268b15ed146103595780632f2ff15d14610378575b5f80fd5b3480156102b4575f80fd5b506102c86102c3366004613c82565b6108e8565b60405190151581526020015b60405180910390f35b3480156102e8575f80fd5b506102fc6102f7366004613ccd565b61091e565b005b348015610309575f80fd5b506102fc610318366004613cf7565b610abe565b348015610328575f80fd5b5061034b610337366004613cf7565b5f9081526097602052604090206001015490565b6040519081526020016102d4565b348015610364575f80fd5b506102fc610373366004613d4b565b610bd9565b348015610383575f80fd5b506102fc610392366004613db1565b610c6a565b3480156103a2575f80fd5b506102fc6103b1366004613ddf565b610c93565b3480156103c1575f80fd5b506102fc6103d0366004613db1565b610ca7565b3480156103e0575f80fd5b5060c9546103f4906001600160a01b031681565b6040516001600160a01b0390911681526020016102d4565b348015610417575f80fd5b506102fc610d35565b34801561042b575f80fd5b506102fc61043a366004613ddf565b610d47565b34801561044a575f80fd5b506102c8610459366004613ddf565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546001600160a01b0390811691161490565b348015610497575f80fd5b5060cc546103f4906001600160a01b031681565b3480156104b6575f80fd5b506102c8610de2565b3480156104ca575f80fd5b506102fc6104d9366004613e47565b610df7565b3480156104e9575f80fd5b506102fc6104f8366004613efe565b611052565b348015610508575f80fd5b506102fc61051736600461402c565b611291565b6102fc61052a366004613ddf565b6112ce565b34801561053a575f80fd5b506102fc61138e565b34801561054e575f80fd5b506102fc61055d36600461402c565b61139f565b34801561056d575f80fd5b5060ce546103f4906001600160a01b031681565b6102fc61058f366004613ddf565b6113dc565b34801561059f575f80fd5b506102fc611459565b3480156105b3575f80fd5b506033546001600160a01b03166103f4565b3480156105d0575f80fd5b506102fc6105df3660046140c5565b611469565b3480156105ef575f80fd5b506102c86105fe366004613db1565b6114ee565b34801561060e575f80fd5b506102fc61061d366004613ddf565b611518565b34801561062d575f80fd5b506102fc611529565b348015610641575f80fd5b506102fc61065036600461411c565b611542565b348015610660575f80fd5b5061034b5f81565b348015610673575f80fd5b506102fc61068236600461415a565b61161f565b348015610692575f80fd5b506106c6604051806040016040528060148152602001732aa7299d1026b4b73a34b7339026b0b730b3b2b960611b81525081565b6040516102d491906141f9565b3480156106de575f80fd5b5060cb546103f4906001600160a01b031681565b3480156106fd575f80fd5b506102c861070c366004613ddf565b611667565b34801561071c575f80fd5b506102c861072b366004613cf7565b61167f565b34801561073b575f80fd5b506102fc61074a366004613ddf565b6116dc565b34801561075a575f80fd5b506102fc610769366004613ddf565b611706565b348015610779575f80fd5b506102fc61078836600461420b565b61174b565b348015610798575f80fd5b5060ca546103f4906001600160a01b031681565b3480156107b7575f80fd5b506102fc6107c6366004614289565b611c30565b3480156107d6575f80fd5b506102fc6107e5366004614336565b611cd2565b3480156107f5575f80fd5b5061034b5f80516020614d0883398151915281565b348015610815575f80fd5b506102fc610824366004613db1565b611d7c565b6102fc610837366004614368565b611da0565b348015610847575f80fd5b506102fc610856366004613cf7565b611f28565b348015610866575f80fd5b506102fc610875366004613ddf565b611f98565b348015610885575f80fd5b506102fc610894366004614452565b611fb3565b3480156108a4575f80fd5b506102fc6108b336600461455f565b61215f565b3480156108c3575f80fd5b506106c660405180604001604052806005815260200164302e352e3160d81b81525081565b5f6001600160e01b03198216637965db0b60e01b148061091857506301ffc9a760e01b6001600160e01b03198316145b92915050565b61092961070c6122d5565b61094e5760405162461bcd60e51b81526004016109459061458b565b60405180910390fd5b60c95460405163baef73e960e01b8152600481018390525f916001600160a01b03169063baef73e990602401602060405180830381865afa158015610995573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109b991906145c0565b9050806001600160401b03165f036109e35760405162461bcd60e51b8152600401610945906145db565b806001600160401b0316836001600160401b031611610a505760405162461bcd60e51b815260206004820152602360248201527f4d696e74696e674d616e616765723a204558504952595f4e4f545f455854454e60448201526211115160ea1b6064820152608401610945565b60c954604051631fb9763760e11b81526001600160401b0385166004820152602481018490526001600160a01b0390911690633f72ec6e906044015b5f604051808303815f87803b158015610aa3575f80fd5b505af1158015610ab5573d5f803e3d5ffd5b50505050505050565b610ac961070c6122d5565b610ae55760405162461bcd60e51b81526004016109459061458b565b60c95460405163baef73e960e01b8152600481018390526001600160a01b039091169063baef73e990602401602060405180830381865afa158015610b2c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b5091906145c0565b6001600160401b03165f03610b775760405162461bcd60e51b8152600401610945906145db565b60c954604051637eee288d60e01b8152306004820152602481018390526001600160a01b0390911690637eee288d906044015f604051808303815f87803b158015610bc0575f80fd5b505af1158015610bd2573d5f803e3d5ffd5b5050505050565b8282828080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920182905250610c1b93508592508491506122e3565b610c23610de2565b15610c405760405162461bcd60e51b81526004016109459061461e565b6060610ab5610c4d6122d5565b610c6088610c5b89896124b5565b6124e1565b83845f60016125ec565b5f82815260976020526040902060010154610c8481612b1b565b610c8e8383612b2c565b505050565b610c9b612bb2565b610ca481612c2b565b50565b610caf6122d5565b6001600160a01b0316816001600160a01b031614610d275760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610945565b610d318282612c42565b5050565b610d3d612bb2565b610d45612cc6565b565b610d4f612bb2565b6001600160a01b038116610d61575f80fd5b60405147906001600160a01b0383169082156108fc029083905f818181858888f19350505050158015610d96573d5f803e3d5ffd5b50604080516001600160a01b0384168152602081018390525f8183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a15050565b5f80516020614ce88339815191525460ff1690565b610e018688614648565b8051600203610e3657610e1561070c6122d5565b610e315760405162461bcd60e51b815260040161094590614707565b610f76565b5f610e4082612d6d565b60c9549092506001600160a01b0316905063430c2081610e5e6122d5565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015610ea7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ecb919061474b565b80610f58575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa158015610f22573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f46919061474b565b8015610f585750610f5861070c6122d5565b610f745760405162461bcd60e51b815260040161094590614766565b505b610f808789614648565b5f600282511015610fa35760405162461bcd60e51b8152600401610945906147b5565b610ff6610fd65f8460018651610fb9919061480e565b81518110610fc957610fc9614821565b6020026020010151612da7565b835f81518110610fe857610fe8614821565b6020026020010151836122e3565b610ffe610de2565b1561101b5760405162461bcd60e51b81526004016109459061461e565b6110448b6110298b8d614648565b6110338a8c614648565b61103d898b614648565b5f896125ec565b505050505050505050505050565b61105c8789614648565b80516002036110915761107061070c6122d5565b61108c5760405162461bcd60e51b815260040161094590614707565b6111d1565b5f61109b82612d6d565b60c9549092506001600160a01b0316905063430c20816110b96122d5565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015611102573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611126919061474b565b806111b3575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa15801561117d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111a1919061474b565b80156111b357506111b361070c6122d5565b6111cf5760405162461bcd60e51b815260040161094590614766565b505b6111db888a614648565b836002825110156111fe5760405162461bcd60e51b8152600401610945906147b5565b611214610fd65f8460018651610fb9919061480e565b61121c610de2565b156112395760405162461bcd60e51b81526004016109459061461e565b60028a146112595760405162461bcd60e51b815260040161094590614835565b6112828c6112678c8e614648565b6112718b8d614648565b61127b8a8c614648565b89896125ec565b50505050505050505050505050565b611299612bb2565b5f5b8151811015610d31576112c68282815181106112b9576112b9614821565b6020026020010151612c2b565b60010161129b565b6112d961070c6122d5565b6112f55760405162461bcd60e51b81526004016109459061458b565b6001600160a01b03811661134b5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610945565b61135481612e59565b61135c611529565b6040516001600160a01b038216903480156108fc02915f818181858888f19350505050158015610d31573d5f803e3d5ffd5b611396612bb2565b610d455f612e70565b6113a7612bb2565b5f5b8151811015610d31576113d48282815181106113c7576113c7614821565b6020026020010151612e59565b6001016113a9565b6113e761070c6122d5565b6114035760405162461bcd60e51b81526004016109459061458b565b6001600160a01b0381166113545760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610945565b611461612bb2565b610d45612ec1565b8282828080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201829052506114ab93508592508491506122e3565b6114b3610de2565b156114d05760405162461bcd60e51b81526004016109459061461e565b60606114e487610c6088610c5b89896124b5565b5050505050505050565b5f9182526097602090815260408084206001600160a01b0393909316845291905290205460ff1690565b611520612bb2565b610ca481612e59565b610d455f80516020614d088339815191526103d06122d5565b61154a612bb2565b60c954604051632678375f60e21b81526001600160a01b03909116906399e0dd7c9061157c908590859060040161487b565b5f604051808303815f87803b158015611593575f80fd5b505af11580156115a5573d5f803e3d5ffd5b505060cb546001600160a01b0316159150610d3190505760cb54604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906115ee908590859060040161487b565b5f604051808303815f87803b158015611605575f80fd5b505af1158015611617573d5f803e3d5ffd5b505050505050565b611627612bb2565b610c8e83838080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250859250612f28915050565b5f6109185f80516020614d08833981519152836114ee565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd6960208201529081018290525f906116d2906060015b6040516020818303038152906040528051906020012090565b5460ff1692915050565b6116e4612bb2565b60ce80546001600160a01b0319166001600160a01b0392909216919091179055565b61170e612bb2565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e80546001600160a01b0319166001600160a01b03831617905550565b5f54610100900460ff161580801561176957505f54600160ff909116105b806117825750303b15801561178257505f5460ff166001145b6117e55760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610945565b5f805460ff191660011790558015611806575f805461ff0019166101001790555b60c980546001600160a01b03199081166001600160a01b038a81169190911790925560ca8054821689841617905560cb8054821688841617905560cc8054821687841617905560ce8054909116918516919091179055611864613042565b61186c613078565b611875826130af565b61187d6130d5565b6040805161036081018252600661032082018181526563727970746f60d01b610340840152825282518084018452818152651dd85b1b195d60d21b602082810191909152808401919091528351808501855260018152600f60fb1b8183015283850152835180850185526003808252621b999d60ea1b82840152606085019190915284518086018652600a815269313637b1b5b1b430b4b760b11b818401526080850152845180860186526007808252663134ba31b7b4b760c91b8285015260a0860191909152855180870187528281526207070760eb1b8185015260c0860152855180870187528281526264616f60e81b8185015260e086015285518087018752828152621e9a5b60ea1b8185015261010086015285518087018752908152663837b63cb3b7b760c91b8184015261012085015284518086018652600b81526a756e73746f707061626c6560a81b81840152610140850152845180860186528381526535b632bb32b960d11b8184015261016085015284518086018652600280825261686960f01b8285015261018086019190915285518087018752848152656b726573757360d01b818501526101a086015285518087018752600580825264616e696d6560d81b828601526101c087019190915286518088018852818152646d616e676160d81b818601526101e087015286518088018852600981526862696e616e6365757360b81b8186015261020087015286518088018852818152647265616c6d60d81b818601526102208701528651808801885291825261676f60f01b82850152610240860191909152855180870187526008815267185b1d1a5b5a5cdd60c21b818501526102608601528551808701875290815264707564677960d81b81840152610280850152845180860186528381526530bab9ba34b760d11b818401526102a08501528451808601865292835265189a5d19d95d60d21b838301526102c08401929092528351808501855291825262706f6760e81b828201526102e083019190915282518084019093526004835263636c617960e01b908301526103008101919091525f5b6019811015611bbb57611bb3828260198110611ba857611ba8614821565b60200201515f612f28565b600101611b8a565b50611be260405180604001604052806003815260200162636f6d60e81b8152506001612f28565b508015610ab5575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050505050565b8686868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920182905250611c7293508592508491506122e3565b611c7a610de2565b15611c975760405162461bcd60e51b81526004016109459061461e565b611cc58a611ca98b610c5b8c8c6124b5565b611cb3888a614648565b611cbd8789614648565b5f60016125ec565b5050505050505050505050565b611cda612bb2565b5f5b81811015610c8e5760c9546001600160a01b03166350960239848484818110611d0757611d07614821565b9050602002016020810190611d1c9190613ddf565b6040516001600160e01b031960e084901b1681526001600160a01b0390911660048201526024015f604051808303815f87803b158015611d5a575f80fd5b505af1158015611d6c573d5f803e3d5ffd5b505060019092019150611cdc9050565b5f82815260976020526040902060010154611d9681612b1b565b610c8e8383612c42565b611daa898b614648565b5f600282511015611dcd5760405162461bcd60e51b8152600401610945906147b5565b611de3610fd65f8460018651610fb9919061480e565b611deb610de2565b15611e085760405162461bcd60e51b81526004016109459061461e565b60028b14611e285760405162461bcd60e51b815260040161094590614835565b611e6c8d8d8d89895f8a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061311392505050565b84341015611ebc5760405162461bcd60e51b815260206004820181905260248201527f4d696e74696e674d616e616765723a204e4f545f454e4f5547485f46554e44536044820152606401610945565b611ecd8d8d8d8d8d8d8d8c5f6132d0565b8434111561128257611edd6122d5565b6001600160a01b03166108fc611ef3873461480e565b6040518115909202915f818181858888f19350505050158015611f18573d5f803e3d5ffd5b5050505050505050505050505050565b611f30612bb2565b611f398161338a565b611f555760405162461bcd60e51b8152600401610945906148a9565b5f81815260cd60205260408120611f6b91613c38565b60405181907f0aa1aff0f830e739d86baf0e6624d6763da02f7733575e0e463886cd062dea6a905f90a250565b611fa0612bb2565b611fa9816133af565b610ca45f82613425565b611fbd8a8c614648565b5f600282511015611fe05760405162461bcd60e51b8152600401610945906147b5565b611ff6610fd65f8460018651610fb9919061480e565b611ffe610de2565b1561201b5760405162461bcd60e51b81526004016109459061461e565b60028c1461203b5760405162461bcd60e51b815260040161094590614835565b61207f8e8e8e8a898b8a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061311392505050565b856001600160a01b03166323b872dd6120966122d5565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152306024820152604481018890526064016020604051808303815f875af11580156120e6573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061210a919061474b565b61214e5760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610945565b611f188e8e8e8e8e8e8e8c8e6132d0565b612167612bb2565b6040516370a0823160e01b81523060048201525f906001600160a01b038416906370a0823190602401602060405180830381865afa1580156121ab573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906121cf91906148eb565b60405163a9059cbb60e01b81526001600160a01b038481166004830152602482018390529192509084169063a9059cbb906044016020604051808303815f875af115801561221f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612243919061474b565b6122875760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610945565b604080516001600160a01b0384811682526020820184905285168183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a1505050565b5f6122de61342f565b905090565b6122ec8361338a565b6123085760405162461bcd60e51b8152600401610945906148a9565b5f83815260cf602052604090205460ff1615156001600160401b0382161515146123835760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544c445f455850495241424c455f4d496044820152650a69a82a886960d31b6064820152608401610945565b5f6123b4836040805180820182525f8082526020918201528151808301909252825182529182019181019190915290565b9050600a815f0151111561245a576123dd6123d1825f600a613474565b80516020909101512090565b7fb551e0305c8163b812374b8e78b577c77f226f6f10c5ad03e52699578fbc34b80361245a5760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544f4b454e5f4c4142454c5f50524f4860448201526512509255115160d21b6064820152608401610945565b612463836134b2565b6124af5760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a204c4142454c5f494e56414c49440000006044820152606401610945565b50505050565b606082826040516020016124ca929190614902565b604051602081830303815290604052905092915050565b60408051600280825260608281019093525f9190816020015b60608152602001906001900390816124fa57905050905082815f8151811061252457612524614821565b602002602001018190525060cd5f8581526020019081526020015f20805461254b90614929565b80601f016020809104026020016040519081016040528092919081815260200182805461257790614929565b80156125c25780601f10612599576101008083540402835291602001916125c2565b820191905f5260205f20905b8154815290600101906020018083116125a557829003601f168201915b5050505050816001815181106125da576125da614821565b60209081029190910101529392505050565b5f805f6125f888612d6d565b9150915083801561260a575060028851115b801561268a575060c9546040516331a9108f60e11b8152600481018390526001600160a01b038b8116921690636352211e90602401602060405180830381865afa15801561265a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061267e9190614961565b6001600160a01b031614155b156126ea5760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e616765723a20524556455253455f5245434f52445f4e60448201526913d517d0531313d5d15160b21b6064820152608401610945565b60c954604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401602060405180830381865afa158015612731573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612755919061474b565b8015612842575060c9546040516331a9108f60e11b81526004810184905230916001600160a01b031690636352211e90602401602060405180830381865afa1580156127a3573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906127c79190614961565b6001600160a01b03161480612842575060c95460405163d9548e5360e01b8152600481018490526001600160a01b039091169063d9548e5390602401602060405180830381865afa15801561281e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612842919061474b565b15612929576001600160401b038516156128bf5760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e906044015f604051808303815f87803b1580156128a8575f80fd5b505af11580156128ba573d5f803e3d5ffd5b505050505b60c954604051630fb8df0360e11b81526001600160a01b0390911690631f71be06906128f7908c908c908c908c908b906004016149d4565b5f604051808303815f87803b15801561290e575f80fd5b505af1158015612920573d5f803e3d5ffd5b50505050612b0f565b61293282613606565b61293b88613665565b8015612948575087516002145b801561295b57506001600160401b038516155b15612a325760ca5488516001600160a01b039091169063c36c2125908b908b905f9061298957612989614821565b602090810291909101015160cc546040516001600160e01b031960e086901b1681526129c39392916001600160a01b031690600401614a32565b5f604051808303815f87803b1580156129da575f80fd5b505af11580156129ec573d5f803e3d5ffd5b505050505f87511115612a2d5760cc54604051633a0deb9d60e21b81526001600160a01b039091169063e837ae74906128f7908a908a908790600401614a66565b612b0f565b60c95460405163ba5d40b760e01b81526001600160a01b039091169063ba5d40b790612a6a908c908c908c908c908b906004016149d4565b5f604051808303815f87803b158015612a81575f80fd5b505af1158015612a93573d5f803e3d5ffd5b505050506001600160401b03851615612b0f5760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e906044015f604051808303815f87803b158015612af8575f80fd5b505af1158015612b0a573d5f803e3d5ffd5b505050505b50979650505050505050565b610ca481612b276122d5565b6136bd565b612b3682826114ee565b610d31575f8281526097602090815260408083206001600160a01b03851684529091529020805460ff19166001179055612b6e6122d5565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b612bba6122d5565b6001600160a01b0316612bd56033546001600160a01b031690565b6001600160a01b031614610d455760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610945565b610ca45f80516020614d0883398151915282611d7c565b612c4c82826114ee565b15610d31575f8281526097602090815260408083206001600160a01b03851684529091529020805460ff19169055612c826122d5565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612cce610de2565b612d115760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881393d517d4105554d15160621b6044820152606401610945565b5f80516020614ce8833981519152805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa612d506122d5565b6040516001600160a01b03909116815260200160405180910390a1565b80515f9081905b8015612da157829150612d8d8285610fb960018561480e565b925080612d9981614a9b565b915050612d74565b50915091565b5f81515f03612df85760405162461bcd60e51b815260206004820152601b60248201527f4d696e74696e674d616e616765723a204c4142454c5f454d50545900000000006044820152606401610945565b8282604051602001612e0a9190614ab0565b60405160208183030381529060405280519060200120604051602001612e3a929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b610ca45f80516020614d0883398151915282613425565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b612ec9610de2565b15612ee65760405162461bcd60e51b81526004016109459061461e565b5f80516020614ce8833981519152805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258612d506122d5565b5f612f335f84612da7565b5f81815260cd60205260409020909150612f4d8482614b0f565b505f81815260cf602052604090819020805460ff19168415151790555181907f4fce6f6e172b04eaa80325d8e3b0180a34945000f3e214605039e8420fdf898090612f999086906141f9565b60405180910390a260c954604051634f558e7960e01b8152600481018390526001600160a01b0390911690634f558e7990602401602060405180830381865afa158015612fe8573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061300c919061474b565b610c8e5760c9546040516307befae360e51b81526001600160a01b039091169063f7df5c6090610a8c9084908790600401614bca565b5f54610100900460ff166130685760405162461bcd60e51b815260040161094590614bea565b610d456130736122d5565b612e70565b5f54610100900460ff1661309e5760405162461bcd60e51b815260040161094590614bea565b610d455f6130aa6122d5565b613425565b5f54610100900460ff1661170e5760405162461bcd60e51b815260040161094590614bea565b5f54610100900460ff166130fb5760405162461bcd60e51b815260040161094590614bea565b5f80516020614ce8833981519152805460ff19169055565b5f6131266131218789614648565b612d6d565b506040516bffffffffffffffffffffffff1930606090811b821660208401524660348401528b811b82166054840152606883018490526001600160c01b031960c08a901b1660888401526090830188905286901b1660b08201529091505f906132009084906131fa9060c401604051602081830303815290604052805190602001206040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c81018290525f90605c01604051602081830303815290604052805190602001209050919050565b90613721565b905061320b81611667565b6132635760405162461bcd60e51b8152602060048201526024808201527f4d696e74696e674d616e616765723a205349474e45525f49535f4e4f545f4d49604482015263272a22a960e11b6064820152608401610945565b42866001600160401b0316116132c55760405162461bcd60e51b815260206004820152602160248201527f4d696e74696e674d616e616765723a20455850495245445f5349474e415455526044820152604560f81b6064820152608401610945565b505050505050505050565b5f6133158a6132df8a8c614648565b6132e9898b614648565b6132f3888a614648565b5f8f6001600160a01b03166133066122d5565b6001600160a01b0316146125ec565b9050896001600160a01b03166133296122d5565b6001600160a01b0316827fa545b6fd3355e8d57f8c8147bafe740545bd3ea1f94bef2576a6d532a7c3b60586866040516133769291909182526001600160a01b0316602082015260400190565b60405180910390a450505050505050505050565b5f81815260cd6020526040812080548291906133a590614929565b9050119050919050565b6133b7612bb2565b6001600160a01b03811661341c5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610945565b610ca481612e70565b610d318282612b2c565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e545f906001600160a01b0316330361346f575060331936013560601c90565b503390565b604080518082019091525f808252602082015260405180604001604052808381526020018486602001516134a89190614c35565b9052949350505050565b5f81515f036134c257505f919050565b60208201805160f81c603081108015906134e0575060398160ff1611155b158015613502575060618160ff16101580156135005750607a8160ff1611155b155b1561351057505f9392505050565b8351600181111561357d576135328361352a60018461480e565b015160f81c90565b915060308260ff161015801561354c575060398260ff1611155b15801561356e575060618260ff161015801561356c5750607a8260ff1611155b155b1561357d57505f949350505050565b60015b61358b60018361480e565b8110156135fa578381015160f81c9250602d83148015906135c1575060308360ff16101580156135bf575060398360ff1611155b155b80156135e2575060618360ff16101580156135e05750607a8360ff1611155b155b156135f257505f95945050505050565b600101613580565b50600195945050505050565b61360f8161167f565b1561365c5760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a20544f4b454e5f424c4f434b45440000006044820152606401610945565b610ca481613743565b5f8061367a5f8460018651610fb9919061480e565b60ca549091506001600160a01b0316158015906136b65750807f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f145b9392505050565b6136c782826114ee565b610d31576136df816001600160a01b031660146137c7565b6136ea8360206137c7565b6040516020016136fb929190614c48565b60408051601f198184030181529082905262461bcd60e51b8252610945916004016141f9565b5f805f61372e858561395c565b9150915061373b8161399e565b509392505050565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd696020820152908101829052600190613782906060016116b9565b805460ff19169115159190911790556040518181527f2ce5d9351b1d590d5a066db0d2dc7602d55f092506a83a7ee8c4d78ee357d75a9060200160405180910390a150565b60605f6137d5836002614cbc565b6137e0906002614c35565b6001600160401b038111156137f7576137f7613fc6565b6040519080825280601f01601f191660200182016040528015613821576020820181803683370190505b509050600360fc1b815f8151811061383b5761383b614821565b60200101906001600160f81b03191690815f1a905350600f60fb1b8160018151811061386957613869614821565b60200101906001600160f81b03191690815f1a9053505f61388b846002614cbc565b613896906001614c35565b90505b600181111561390d576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106138ca576138ca614821565b1a60f81b8282815181106138e0576138e0614821565b60200101906001600160f81b03191690815f1a90535060049490941c9361390681614a9b565b9050613899565b5083156136b65760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610945565b5f808251604103613990576020830151604084015160608501515f1a61398487828585613b53565b94509450505050613997565b505f905060025b9250929050565b5f8160048111156139b1576139b1614cd3565b036139b95750565b60018160048111156139cd576139cd614cd3565b03613a1a5760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152606401610945565b6002816004811115613a2e57613a2e614cd3565b03613a7b5760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610945565b6003816004811115613a8f57613a8f614cd3565b03613ae75760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b6064820152608401610945565b6004816004811115613afb57613afb614cd3565b03610ca45760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c604482015261756560f01b6064820152608401610945565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613b8857505f90506003613c2f565b8460ff16601b14158015613ba057508460ff16601c14155b15613bb057505f90506004613c2f565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613c01573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b038116613c29575f60019250925050613c2f565b91505f90505b94509492505050565b508054613c4490614929565b5f825580601f10613c53575050565b601f0160209004905f5260205f2090810190610ca491905b80821115613c7e575f8155600101613c6b565b5090565b5f60208284031215613c92575f80fd5b81356001600160e01b0319811681146136b6575f80fd5b6001600160401b0381168114610ca4575f80fd5b8035613cc881613ca9565b919050565b5f8060408385031215613cde575f80fd5b8235613ce981613ca9565b946020939093013593505050565b5f60208284031215613d07575f80fd5b5035919050565b5f8083601f840112613d1e575f80fd5b5081356001600160401b03811115613d34575f80fd5b602083019150836020828501011115613997575f80fd5b5f805f60408486031215613d5d575f80fd5b8335925060208401356001600160401b03811115613d79575f80fd5b613d8586828701613d0e565b9497909650939450505050565b6001600160a01b0381168114610ca4575f80fd5b8035613cc881613d92565b5f8060408385031215613dc2575f80fd5b823591506020830135613dd481613d92565b809150509250929050565b5f60208284031215613def575f80fd5b81356136b681613d92565b5f8083601f840112613e0a575f80fd5b5081356001600160401b03811115613e20575f80fd5b6020830191508360208260051b8501011115613997575f80fd5b8015158114610ca4575f80fd5b5f805f805f805f8060a0898b031215613e5e575f80fd5b8835613e6981613d92565b975060208901356001600160401b0380821115613e84575f80fd5b613e908c838d01613dfa565b909950975060408b0135915080821115613ea8575f80fd5b613eb48c838d01613dfa565b909750955060608b0135915080821115613ecc575f80fd5b50613ed98b828c01613dfa565b9094509250506080890135613eed81613e3a565b809150509295985092959890939650565b5f805f805f805f805f60c08a8c031215613f16575f80fd5b8935613f2181613d92565b985060208a01356001600160401b0380821115613f3c575f80fd5b613f488d838e01613dfa565b909a50985060408c0135915080821115613f60575f80fd5b613f6c8d838e01613dfa565b909850965060608c0135915080821115613f84575f80fd5b50613f918c828d01613dfa565b90955093505060808a0135613fa581613ca9565b915060a08a0135613fb581613e3a565b809150509295985092959850929598565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f191681016001600160401b038111828210171561400257614002613fc6565b604052919050565b5f6001600160401b0382111561402257614022613fc6565b5060051b60200190565b5f602080838503121561403d575f80fd5b82356001600160401b03811115614052575f80fd5b8301601f81018513614062575f80fd5b80356140756140708261400a565b613fda565b81815260059190911b82018301908381019087831115614093575f80fd5b928401925b828410156140ba5783356140ab81613d92565b82529284019290840190614098565b979650505050505050565b5f805f80606085870312156140d8575f80fd5b84356140e381613d92565b93506020850135925060408501356001600160401b03811115614104575f80fd5b61411087828801613d0e565b95989497509550505050565b5f806020838503121561412d575f80fd5b82356001600160401b03811115614142575f80fd5b61414e85828601613d0e565b90969095509350505050565b5f805f6040848603121561416c575f80fd5b83356001600160401b03811115614181575f80fd5b61418d86828701613d0e565b90945092505060208401356141a181613e3a565b809150509250925092565b5f5b838110156141c65781810151838201526020016141ae565b50505f910152565b5f81518084526141e58160208601602086016141ac565b601f01601f19169290920160200192915050565b602081525f6136b660208301846141ce565b5f805f805f8060c08789031215614220575f80fd5b863561422b81613d92565b9550602087013561423b81613d92565b9450604087013561424b81613d92565b9350606087013561425b81613d92565b9250608087013561426b81613d92565b915060a087013561427b81613d92565b809150509295509295509295565b5f805f805f805f8060a0898b0312156142a0575f80fd5b88356142ab81613d92565b97506020890135965060408901356001600160401b03808211156142cd575f80fd5b6142d98c838d01613d0e565b909850965060608b01359150808211156142f1575f80fd5b6142fd8c838d01613dfa565b909650945060808b0135915080821115614315575f80fd5b506143228b828c01613dfa565b999c989b5096995094979396929594505050565b5f8060208385031215614347575f80fd5b82356001600160401b0381111561435c575f80fd5b61414e85828601613dfa565b5f805f805f805f805f805f60e08c8e031215614382575f80fd5b61438b8c613da6565b9a506001600160401b038060208e013511156143a5575f80fd5b6143b58e60208f01358f01613dfa565b909b50995060408d01358110156143ca575f80fd5b6143da8e60408f01358f01613dfa565b909950975060608d01358110156143ef575f80fd5b6143ff8e60608f01358f01613dfa565b909750955061441060808e01613cbd565b945060a08d013593508060c08e01351115614429575f80fd5b5061443a8d60c08e01358e01613d0e565b81935080925050509295989b509295989b9093969950565b5f805f805f805f805f805f806101008d8f03121561446e575f80fd5b6144778d613da6565b9b506001600160401b0360208e01351115614490575f80fd5b6144a08e60208f01358f01613dfa565b909b5099506001600160401b0360408e013511156144bc575f80fd5b6144cc8e60408f01358f01613dfa565b90995097506001600160401b0360608e013511156144e8575f80fd5b6144f88e60608f01358f01613dfa565b909750955061450960808e01613cbd565b945061451760a08e01613da6565b935060c08d013592506001600160401b0360e08e01351115614537575f80fd5b6145478e60e08f01358f01613d0e565b81935080925050509295989b509295989b509295989b565b5f8060408385031215614570575f80fd5b823561457b81613d92565b91506020830135613dd481613d92565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b5f602082840312156145d0575f80fd5b81516136b681613ca9565b60208082526023908201527f4d696e74696e674d616e616765723a20544f4b454e5f4e4f545f455850495241604082015262424c4560e81b606082015260800190565b60208082526010908201526f14185d5cd8589b194e8814105554d15160821b604082015260600190565b5f6146556140708461400a565b80848252602080830192508560051b850136811115614672575f80fd5b855b818110156146fb5780356001600160401b0380821115614692575f80fd5b90880190601f36818401126146a5575f80fd5b8235828111156146b7576146b7613fc6565b6146c8818301601f19168801613fda565b925080835236878286010111156146dd575f80fd5b80878501888501375f90830187015250865250938201938201614674565b50919695505050505050565b60208082526024908201527f4d696e74696e674d616e616765723a2043414c4c45525f49535f4e4f545f4d49604082015263272a22a960e11b606082015260800190565b5f6020828403121561475b575f80fd5b81516136b681613e3a565b6020808252602f908201527f4d696e74696e674d616e616765723a2053454e4445525f49535f4e4f545f415060408201526e282927ab22a22fa7a92fa7aba722a960891b606082015260800190565b60208082526025908201527f4d696e74696e674d616e616765723a204c4142454c535f4c454e4754485f42456040820152642627abaf9960d91b606082015260800190565b634e487b7160e01b5f52601160045260245ffd5b81810381811115610918576109186147fa565b634e487b7160e01b5f52603260045260245ffd5b60208082526026908201527f4d696e74696e674d616e616765723a20535542444f4d41494e535f4e4f545f41604082015265131313d5d15160d21b606082015260800190565b60208152816020820152818360408301375f818301604090810191909152601f909201601f19160101919050565b60208082526022908201527f4d696e74696e674d616e616765723a20544c445f4e4f545f5245474953544552604082015261115160f21b606082015260800190565b5f602082840312156148fb575f80fd5b5051919050565b6b756e732d646576746573742d60a01b81528183600c8301375f9101600c01908152919050565b600181811c9082168061493d57607f821691505b60208210810361495b57634e487b7160e01b5f52602260045260245ffd5b50919050565b5f60208284031215614971575f80fd5b81516136b681613d92565b5f8282518085526020808601955060208260051b840101602086015f5b848110156149c757601f198684030189526149b58383516141ce565b98840198925090830190600101614999565b5090979650505050505050565b6001600160a01b038616815260a0602082018190525f906149f79083018761497c565b8281036040840152614a09818761497c565b90508281036060840152614a1d818661497c565b91505082151560808301529695505050505050565b5f60018060a01b03808616835260606020840152614a5360608401866141ce565b9150808416604084015250949350505050565b606081525f614a78606083018661497c565b8281036020840152614a8a818661497c565b915050826040830152949350505050565b5f81614aa957614aa96147fa565b505f190190565b5f8251614ac18184602087016141ac565b9190910192915050565b601f821115610c8e57805f5260205f20601f840160051c81016020851015614af05750805b601f840160051c820191505b81811015610bd2575f8155600101614afc565b81516001600160401b03811115614b2857614b28613fc6565b614b3c81614b368454614929565b84614acb565b602080601f831160018114614b6f575f8415614b585750858301515b5f19600386901b1c1916600185901b178555611617565b5f85815260208120601f198616915b82811015614b9d57888601518255948401946001909101908401614b7e565b5085821015614bba57878501515f19600388901b60f8161c191681555b5050505050600190811b01905550565b828152604060208201525f614be260408301846141ce565b949350505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b80820180821115610918576109186147fa565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081525f8351614c7f8160178501602088016141ac565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351614cb08160288401602088016141ac565b01602801949350505050565b8082028115828204841417610918576109186147fa565b634e487b7160e01b5f52602160045260245ffdfe5496787fc1ebdfeba375028c1865f13fbb1d63c0caa356ccc1b29a80f3ebd6229f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000818000a", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/artifacts/MintingManagerForwarder.json b/artifacts/MintingManagerForwarder.json index e45e29f9..50c5aa89 100644 --- a/artifacts/MintingManagerForwarder.json +++ b/artifacts/MintingManagerForwarder.json @@ -126,8 +126,8 @@ "type": "function" } ], - "bytecode": "0x608060405234801561001057600080fd5b50604051610bdd380380610bdd83398101604081905261002f91610054565b600080546001600160a01b0319166001600160a01b0392909216919091179055610084565b60006020828403121561006657600080fd5b81516001600160a01b038116811461007d57600080fd5b9392505050565b610b4a806100936000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a42474001461009d575b600080fd5b610059610054366004610771565b6100c0565b6040516100669190610860565b60405180910390f35b61008f61007d366004610873565b60009081526001602052604090205490565b604051908152602001610066565b6100b06100ab366004610771565b6101de565b6040519015158152602001610066565b606060005a90506100d28585856101de565b6101365760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e61676572466f727761726465723a205349474e415455604482015269149157d253959053125160b21b60648201526084015b60405180910390fd5b6101d361014660208701876108a8565b6000546001600160a01b031660408801358461016560608b018b6108c3565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061023d92505050565b9150505b9392505050565b60006102356101ec8561097a565b600054604080516020601f88018190048102820181019092528681526001600160a01b039092169190879087908190840183828082843760009201919091525061031e92505050565b949350505050565b606061024885610467565b600080876001600160a01b0316866102628b8a8989610494565b60405161026f9190610a3b565b60006040518083038160008787f1925050503d80600081146102ad576040519150601f19603f3d011682016040523d82523d6000602084013e6102b2565b606091505b5090925090506102c3603f87610a57565b5a116102d1576102d1610a79565b61031182826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506104c4565b9998505050505050505050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015610365573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103899190610a8f565b905060006104378660600151805190602001208688602001516040516020016103d79392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561045d5750855161045d906001600160a01b031682866104fd565b9695505050505050565b60008181526001602081905260409091205461048291610aa8565b60009182526001602052604090912055565b60608285856040516020016104ab93929190610acf565b6040516020818303038152906040529050949350505050565b606083156104d35750816101d7565b8251156104e35782518084602001fd5b8160405162461bcd60e51b815260040161012d9190610860565b600080600061050c858561063f565b9092509050600081600481111561052557610525610b0e565b1480156105435750856001600160a01b0316826001600160a01b0316145b15610553576001925050506101d7565b600080876001600160a01b0316631626ba7e60e01b888860405160240161057b929190610b24565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516105b99190610a3b565b600060405180830381855afa9150503d80600081146105f4576040519150601f19603f3d011682016040523d82523d6000602084013e6105f9565b606091505b509150915081801561060c575080516020145b801561063357508051630b135d3f60e11b906106319083016020908101908401610a8f565b145b98975050505050505050565b60008082516041036106755760208301516040840151606085015160001a61066987828585610684565b9450945050505061067d565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08311156106bb5750600090506003610768565b8460ff16601b141580156106d357508460ff16601c14155b156106e45750600090506004610768565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610738573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b03811661076157600060019250925050610768565b9150600090505b94509492505050565b60008060006040848603121561078657600080fd5b833567ffffffffffffffff8082111561079e57600080fd5b90850190608082880312156107b257600080fd5b909350602085013590808211156107c857600080fd5b818601915086601f8301126107dc57600080fd5b8135818111156107eb57600080fd5b8760208285010111156107fd57600080fd5b6020830194508093505050509250925092565b60005b8381101561082b578181015183820152602001610813565b50506000910152565b6000815180845261084c816020860160208601610810565b601f01601f19169290920160200192915050565b6020815260006101d76020830184610834565b60006020828403121561088557600080fd5b5035919050565b80356001600160a01b03811681146108a357600080fd5b919050565b6000602082840312156108ba57600080fd5b6101d78261088c565b6000808335601e198436030181126108da57600080fd5b83018035915067ffffffffffffffff8211156108f557600080fd5b60200191503681900382131561067d57600080fd5b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff811182821017156109435761094361090a565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156109725761097261090a565b604052919050565b60006080823603121561098c57600080fd5b610994610920565b61099d8361088c565b81526020808401358183015260408401356040830152606084013567ffffffffffffffff808211156109ce57600080fd5b9085019036601f8301126109e157600080fd5b8135818111156109f3576109f361090a565b610a05601f8201601f19168501610949565b91508082523684828501011115610a1b57600080fd5b808484018584013760009082019093019290925250606082015292915050565b60008251610a4d818460208701610810565b9190910192915050565b600082610a7457634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b600060208284031215610aa157600080fd5b5051919050565b80820180821115610ac957634e487b7160e01b600052601160045260246000fd5b92915050565b60008451610ae1818460208901610810565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b600052602160045260246000fd5b828152604060208201526000610235604083018461083456fea164736f6c6343000811000a", - "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a42474001461009d575b600080fd5b610059610054366004610771565b6100c0565b6040516100669190610860565b60405180910390f35b61008f61007d366004610873565b60009081526001602052604090205490565b604051908152602001610066565b6100b06100ab366004610771565b6101de565b6040519015158152602001610066565b606060005a90506100d28585856101de565b6101365760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e61676572466f727761726465723a205349474e415455604482015269149157d253959053125160b21b60648201526084015b60405180910390fd5b6101d361014660208701876108a8565b6000546001600160a01b031660408801358461016560608b018b6108c3565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061023d92505050565b9150505b9392505050565b60006102356101ec8561097a565b600054604080516020601f88018190048102820181019092528681526001600160a01b039092169190879087908190840183828082843760009201919091525061031e92505050565b949350505050565b606061024885610467565b600080876001600160a01b0316866102628b8a8989610494565b60405161026f9190610a3b565b60006040518083038160008787f1925050503d80600081146102ad576040519150601f19603f3d011682016040523d82523d6000602084013e6102b2565b606091505b5090925090506102c3603f87610a57565b5a116102d1576102d1610a79565b61031182826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506104c4565b9998505050505050505050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015610365573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103899190610a8f565b905060006104378660600151805190602001208688602001516040516020016103d79392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561045d5750855161045d906001600160a01b031682866104fd565b9695505050505050565b60008181526001602081905260409091205461048291610aa8565b60009182526001602052604090912055565b60608285856040516020016104ab93929190610acf565b6040516020818303038152906040529050949350505050565b606083156104d35750816101d7565b8251156104e35782518084602001fd5b8160405162461bcd60e51b815260040161012d9190610860565b600080600061050c858561063f565b9092509050600081600481111561052557610525610b0e565b1480156105435750856001600160a01b0316826001600160a01b0316145b15610553576001925050506101d7565b600080876001600160a01b0316631626ba7e60e01b888860405160240161057b929190610b24565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516105b99190610a3b565b600060405180830381855afa9150503d80600081146105f4576040519150601f19603f3d011682016040523d82523d6000602084013e6105f9565b606091505b509150915081801561060c575080516020145b801561063357508051630b135d3f60e11b906106319083016020908101908401610a8f565b145b98975050505050505050565b60008082516041036106755760208301516040840151606085015160001a61066987828585610684565b9450945050505061067d565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08311156106bb5750600090506003610768565b8460ff16601b141580156106d357508460ff16601c14155b156106e45750600090506004610768565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610738573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b03811661076157600060019250925050610768565b9150600090505b94509492505050565b60008060006040848603121561078657600080fd5b833567ffffffffffffffff8082111561079e57600080fd5b90850190608082880312156107b257600080fd5b909350602085013590808211156107c857600080fd5b818601915086601f8301126107dc57600080fd5b8135818111156107eb57600080fd5b8760208285010111156107fd57600080fd5b6020830194508093505050509250925092565b60005b8381101561082b578181015183820152602001610813565b50506000910152565b6000815180845261084c816020860160208601610810565b601f01601f19169290920160200192915050565b6020815260006101d76020830184610834565b60006020828403121561088557600080fd5b5035919050565b80356001600160a01b03811681146108a357600080fd5b919050565b6000602082840312156108ba57600080fd5b6101d78261088c565b6000808335601e198436030181126108da57600080fd5b83018035915067ffffffffffffffff8211156108f557600080fd5b60200191503681900382131561067d57600080fd5b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff811182821017156109435761094361090a565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156109725761097261090a565b604052919050565b60006080823603121561098c57600080fd5b610994610920565b61099d8361088c565b81526020808401358183015260408401356040830152606084013567ffffffffffffffff808211156109ce57600080fd5b9085019036601f8301126109e157600080fd5b8135818111156109f3576109f361090a565b610a05601f8201601f19168501610949565b91508082523684828501011115610a1b57600080fd5b808484018584013760009082019093019290925250606082015292915050565b60008251610a4d818460208701610810565b9190910192915050565b600082610a7457634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b600060208284031215610aa157600080fd5b5051919050565b80820180821115610ac957634e487b7160e01b600052601160045260246000fd5b92915050565b60008451610ae1818460208901610810565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b600052602160045260246000fd5b828152604060208201526000610235604083018461083456fea164736f6c6343000811000a", + "bytecode": "0x608060405234801561000f575f80fd5b50604051610b82380380610b8283398101604081905261002e91610052565b5f80546001600160a01b0319166001600160a01b039290921691909117905561007f565b5f60208284031215610062575f80fd5b81516001600160a01b0381168114610078575f80fd5b9392505050565b610af68061008c5f395ff3fe608060405234801561000f575f80fd5b506004361061003f575f3560e01c80631bf7e13e146100435780636ccbae5f1461006c578063a424740014610099575b5f80fd5b610056610051366004610749565b6100bc565b604051610063919061082c565b60405180910390f35b61008b61007a36600461083e565b5f9081526001602052604090205490565b604051908152602001610063565b6100ac6100a7366004610749565b6101d6565b6040519015158152602001610063565b60605f5a90506100cd8585856101d6565b6101315760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e61676572466f727761726465723a205349474e415455604482015269149157d253959053125160b21b60648201526084015b60405180910390fd5b6101cb6101416020870187610870565b5f546001600160a01b031660408801358461015f60608b018b610889565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f9201919091525061023292505050565b9150505b9392505050565b5f61022a6101e38561093a565b5f54604080516020601f88018190048102820181019092528681526001600160a01b03909216919087908790819084018382808284375f9201919091525061030e92505050565b949350505050565b606061023d85610453565b5f80876001600160a01b0316866102568b8a898961047e565b60405161026391906109f5565b5f604051808303815f8787f1925050503d805f811461029d576040519150601f19603f3d011682016040523d82523d5f602084013e6102a2565b606091505b5090925090506102b3603f87610a10565b5a116102c1576102c1610a2f565b61030182826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506104ae565b9998505050505050505050565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015610352573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103769190610a43565b90505f6104238660600151805190602001208688602001516040516020016103c39392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561044957508551610449906001600160a01b031682866104e7565b9695505050505050565b5f8181526001602081905260409091205461046d91610a5a565b5f9182526001602052604090912055565b606082858560405160200161049593929190610a7f565b6040516020818303038152906040529050949350505050565b606083156104bd5750816101cf565b8251156104cd5782518084602001fd5b8160405162461bcd60e51b8152600401610128919061082c565b5f805f6104f48585610622565b90925090505f81600481111561050c5761050c610abd565b14801561052a5750856001600160a01b0316826001600160a01b0316145b1561053a576001925050506101cf565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401610561929190610ad1565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161059f91906109f5565b5f60405180830381855afa9150503d805f81146105d7576040519150601f19603f3d011682016040523d82523d5f602084013e6105dc565b606091505b50915091508180156105ef575080516020145b801561061657508051630b135d3f60e11b906106149083016020908101908401610a43565b145b98975050505050505050565b5f808251604103610656576020830151604084015160608501515f1a61064a87828585610664565b9450945050505061065d565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561069957505f90506003610740565b8460ff16601b141580156106b157508460ff16601c14155b156106c157505f90506004610740565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610712573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b03811661073a575f60019250925050610740565b91505f90505b94509492505050565b5f805f6040848603121561075b575f80fd5b833567ffffffffffffffff80821115610772575f80fd5b9085019060808288031215610785575f80fd5b9093506020850135908082111561079a575f80fd5b818601915086601f8301126107ad575f80fd5b8135818111156107bb575f80fd5b8760208285010111156107cc575f80fd5b6020830194508093505050509250925092565b5f5b838110156107f95781810151838201526020016107e1565b50505f910152565b5f81518084526108188160208601602086016107df565b601f01601f19169290920160200192915050565b602081525f6101cf6020830184610801565b5f6020828403121561084e575f80fd5b5035919050565b80356001600160a01b038116811461086b575f80fd5b919050565b5f60208284031215610880575f80fd5b6101cf82610855565b5f808335601e1984360301811261089e575f80fd5b83018035915067ffffffffffffffff8211156108b8575f80fd5b60200191503681900382131561065d575f80fd5b634e487b7160e01b5f52604160045260245ffd5b6040516080810167ffffffffffffffff81118282101715610903576109036108cc565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610932576109326108cc565b604052919050565b5f6080823603121561094a575f80fd5b6109526108e0565b61095b83610855565b81526020808401358183015260408401356040830152606084013567ffffffffffffffff8082111561098b575f80fd5b9085019036601f83011261099d575f80fd5b8135818111156109af576109af6108cc565b6109c1601f8201601f19168501610909565b915080825236848285010111156109d6575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b5f8251610a068184602087016107df565b9190910192915050565b5f82610a2a57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b5f60208284031215610a53575f80fd5b5051919050565b80820180821115610a7957634e487b7160e01b5f52601160045260245ffd5b92915050565b5f8451610a908184602089016107df565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f61022a604083018461080156fea164736f6c6343000818000a", + "deployedBytecode": "0x608060405234801561000f575f80fd5b506004361061003f575f3560e01c80631bf7e13e146100435780636ccbae5f1461006c578063a424740014610099575b5f80fd5b610056610051366004610749565b6100bc565b604051610063919061082c565b60405180910390f35b61008b61007a36600461083e565b5f9081526001602052604090205490565b604051908152602001610063565b6100ac6100a7366004610749565b6101d6565b6040519015158152602001610063565b60605f5a90506100cd8585856101d6565b6101315760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e61676572466f727761726465723a205349474e415455604482015269149157d253959053125160b21b60648201526084015b60405180910390fd5b6101cb6101416020870187610870565b5f546001600160a01b031660408801358461015f60608b018b610889565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f9201919091525061023292505050565b9150505b9392505050565b5f61022a6101e38561093a565b5f54604080516020601f88018190048102820181019092528681526001600160a01b03909216919087908790819084018382808284375f9201919091525061030e92505050565b949350505050565b606061023d85610453565b5f80876001600160a01b0316866102568b8a898961047e565b60405161026391906109f5565b5f604051808303815f8787f1925050503d805f811461029d576040519150601f19603f3d011682016040523d82523d5f602084013e6102a2565b606091505b5090925090506102b3603f87610a10565b5a116102c1576102c1610a2f565b61030182826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506104ae565b9998505050505050505050565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015610352573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103769190610a43565b90505f6104238660600151805190602001208688602001516040516020016103c39392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561044957508551610449906001600160a01b031682866104e7565b9695505050505050565b5f8181526001602081905260409091205461046d91610a5a565b5f9182526001602052604090912055565b606082858560405160200161049593929190610a7f565b6040516020818303038152906040529050949350505050565b606083156104bd5750816101cf565b8251156104cd5782518084602001fd5b8160405162461bcd60e51b8152600401610128919061082c565b5f805f6104f48585610622565b90925090505f81600481111561050c5761050c610abd565b14801561052a5750856001600160a01b0316826001600160a01b0316145b1561053a576001925050506101cf565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401610561929190610ad1565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161059f91906109f5565b5f60405180830381855afa9150503d805f81146105d7576040519150601f19603f3d011682016040523d82523d5f602084013e6105dc565b606091505b50915091508180156105ef575080516020145b801561061657508051630b135d3f60e11b906106149083016020908101908401610a43565b145b98975050505050505050565b5f808251604103610656576020830151604084015160608501515f1a61064a87828585610664565b9450945050505061065d565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561069957505f90506003610740565b8460ff16601b141580156106b157508460ff16601c14155b156106c157505f90506004610740565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610712573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b03811661073a575f60019250925050610740565b91505f90505b94509492505050565b5f805f6040848603121561075b575f80fd5b833567ffffffffffffffff80821115610772575f80fd5b9085019060808288031215610785575f80fd5b9093506020850135908082111561079a575f80fd5b818601915086601f8301126107ad575f80fd5b8135818111156107bb575f80fd5b8760208285010111156107cc575f80fd5b6020830194508093505050509250925092565b5f5b838110156107f95781810151838201526020016107e1565b50505f910152565b5f81518084526108188160208601602086016107df565b601f01601f19169290920160200192915050565b602081525f6101cf6020830184610801565b5f6020828403121561084e575f80fd5b5035919050565b80356001600160a01b038116811461086b575f80fd5b919050565b5f60208284031215610880575f80fd5b6101cf82610855565b5f808335601e1984360301811261089e575f80fd5b83018035915067ffffffffffffffff8211156108b8575f80fd5b60200191503681900382131561065d575f80fd5b634e487b7160e01b5f52604160045260245ffd5b6040516080810167ffffffffffffffff81118282101715610903576109036108cc565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610932576109326108cc565b604052919050565b5f6080823603121561094a575f80fd5b6109526108e0565b61095b83610855565b81526020808401358183015260408401356040830152606084013567ffffffffffffffff8082111561098b575f80fd5b9085019036601f83011261099d575f80fd5b8135818111156109af576109af6108cc565b6109c1601f8201601f19168501610909565b915080825236848285010111156109d6575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b5f8251610a068184602087016107df565b9190910192915050565b5f82610a2a57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b5f60208284031215610a53575f80fd5b5051919050565b80820180821115610a7957634e487b7160e01b5f52601160045260245ffd5b92915050565b5f8451610a908184602089016107df565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f61022a604083018461080156fea164736f6c6343000818000a", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/artifacts/MultiSend.json b/artifacts/MultiSend.json index 03f45b63..c7741d52 100644 --- a/artifacts/MultiSend.json +++ b/artifacts/MultiSend.json @@ -20,8 +20,8 @@ "type": "constructor" } ], - "bytecode": "0x608060405260405161029338038061029383398101604081905261002291610184565b60005b82518110156100ac5782818151811061004057610040610255565b60200260200101516001600160a01b03166108fc83838151811061006657610066610255565b60200260200101519081150290604051600060405180830381858888f19350505050158015610099573d6000803e3d6000fd5b50806100a48161026b565b915050610025565b5033ff5b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b03811182821017156100ee576100ee6100b0565b604052919050565b60006001600160401b0382111561010f5761010f6100b0565b5060051b60200190565b600082601f83011261012a57600080fd5b8151602061013f61013a836100f6565b6100c6565b82815260059290921b8401810191818101908684111561015e57600080fd5b8286015b848110156101795780518352918301918301610162565b509695505050505050565b6000806040838503121561019757600080fd5b82516001600160401b03808211156101ae57600080fd5b818501915085601f8301126101c257600080fd5b815160206101d261013a836100f6565b82815260059290921b840181019181810190898411156101f157600080fd5b948201945b838610156102255785516001600160a01b03811681146102165760008081fd5b825294820194908201906101f6565b9188015191965090935050508082111561023e57600080fd5b5061024b85828601610119565b9150509250929050565b634e487b7160e01b600052603260045260246000fd5b60006001820161028b57634e487b7160e01b600052601160045260246000fd5b506001019056fe", - "deployedBytecode": "0x6080604052600080fdfea164736f6c6343000811000a", + "bytecode": "0x608060405260405161025238038061025283398101604081905261002291610174565b5f5b825181101561009e5782818151811061003f5761003f61023d565b60200260200101516001600160a01b03166108fc8383815181106100655761006561023d565b602002602001015190811502906040515f60405180830381858888f19350505050158015610095573d5f803e3d5ffd5b50600101610024565b5033ff5b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f191681016001600160401b03811182821017156100de576100de6100a2565b604052919050565b5f6001600160401b038211156100fe576100fe6100a2565b5060051b60200190565b5f82601f830112610117575f80fd5b8151602061012c610127836100e6565b6100b6565b8083825260208201915060208460051b87010193508684111561014d575f80fd5b602086015b848110156101695780518352918301918301610152565b509695505050505050565b5f8060408385031215610185575f80fd5b82516001600160401b038082111561019b575f80fd5b818501915085601f8301126101ae575f80fd5b815160206101be610127836100e6565b82815260059290921b840181019181810190898411156101dc575f80fd5b948201945b8386101561020e5785516001600160a01b03811681146101ff575f80fd5b825294820194908201906101e1565b91880151919650909350505080821115610226575f80fd5b5061023385828601610108565b9150509250929050565b634e487b7160e01b5f52603260045260245ffdfe", + "deployedBytecode": "0x60806040525f80fdfea164736f6c6343000818000a", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/artifacts/NameWrapper.json b/artifacts/NameWrapper.json index 4185f49a..aacf3fe3 100644 --- a/artifacts/NameWrapper.json +++ b/artifacts/NameWrapper.json @@ -1457,8 +1457,8 @@ "type": "function" } ], - "bytecode": "0x60c06040523480156200001157600080fd5b5060405162005d2338038062005d238339810160408190526200003491620002f8565b823362000041816200028f565b6040516302571be360e01b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e260048201526000906001600160a01b038416906302571be390602401602060405180830381865afa158015620000a9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620000cf91906200034c565b604051630f41a04d60e11b81526001600160a01b03848116600483015291925090821690631e83409a906024016020604051808303816000875af11580156200011c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000142919062000373565b505050506001600160a01b0383811660805282811660a052600580546001600160a01b031916918316919091179055600163fffeffff60a01b03197fafa26c20e8b3d9a2853d642cfe1021dae26242ffedfac91c97aab212c1a4b93b8190557fa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb4955604080518082019091526001815260006020808301829052908052600690527f54cdd369e4e8a8515e52ca72ec816c2101831ad1f18bf44102ed171459c9b4f89062000210908262000432565b506040805180820190915260058152626cae8d60e31b6020808301919091527f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae600052600690527ffb9e8e321b8a5ec48f12a7b41f22c6e595d761285c9eb19d8dda7c99edf1b54f9062000285908262000432565b50505050620004fe565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b0381168114620002f557600080fd5b50565b6000806000606084860312156200030e57600080fd5b83516200031b81620002df565b60208501519093506200032e81620002df565b60408501519092506200034181620002df565b809150509250925092565b6000602082840312156200035f57600080fd5b81516200036c81620002df565b9392505050565b6000602082840312156200038657600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b600181811c90821680620003b857607f821691505b602082108103620003d957634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200042d57600081815260208120601f850160051c81016020861015620004085750805b601f850160051c820191505b81811015620004295782815560010162000414565b5050505b505050565b81516001600160401b038111156200044e576200044e6200038d565b62000466816200045f8454620003a3565b84620003df565b602080601f8311600181146200049e5760008415620004855750858301515b600019600386901b1c1916600185901b17855562000429565b600085815260208120601f198616915b82811015620004cf57888601518255948401946001909101908401620004ae565b5085821015620004ee5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60805160a0516157186200060b6000396000818161047301528181610aee01528181610b9101528181610c20015281816118c60152818161195c01528181611a0a01528181611adc01528181611b4d01528181611bd201528181611de601528181611f2201528181612054015281816121ac0152818161223201526129700152600081816104c001528181610a7401528181610d6a01528181610ef901528181610faa015281816112bc01528181611fa7015281816120d9015281816122dd0152818161248f0152818161276001528181612ba901528181612c5701528181612d0c01528181612d8d01528181613298015281816133eb015281816136530152613bff01526157186000f3fe608060405234801561001057600080fd5b506004361061029f5760003560e01c80636352211e11610167578063c93ab3fd116100ce578063e985e9c511610087578063e985e9c5146106d4578063eb8ae530146106e7578063ed70554d146106fa578063f242432a1461071a578063f2fde38b1461072d578063fd0cd0d91461074057600080fd5b8063c93ab3fd14610652578063cf40882314610665578063d8c9921a14610678578063d9a50c121461068b578063da8c229e1461069e578063e0dba60f146106c157600080fd5b8063a22cb46511610120578063a22cb465146105e0578063a4014982146105f3578063adf4960a14610606578063b6bcad2614610619578063c475abff1461062c578063c658e0861461063f57600080fd5b80636352211e146105635780636e5d6ad214610576578063715018a6146105a15780638b4dfa75146105a95780638cf8b41e146105bc5780638da5cb5b146105cf57600080fd5b80631f4e15041161020b5780633f15457f116101c45780633f15457f146104bb578063402906fc146104e257806341415eab1461050a5780634e1273f41461051d578063530954671461053d5780635d3590d51461055057600080fd5b80631f4e15041461043557806320c38e2b1461044857806324c1af441461045b5780632b20e3971461046e5780632eb2c2d61461049557806333c69ea9146104a857600080fd5b80630e4cd7251161025d5780630e4cd725146103aa5780630e89341c146103bd57806314ab9038146103d0578063150b7a02146103e35780631534e1771461040f5780631896f70a1461042257600080fd5b8062fdd58e146102a45780630178fe3f146102ca57806301ffc9a71461031057806306fdde0314610333578063081812fc1461036a578063095ea7b314610395575b600080fd5b6102b76102b236600461444c565b610753565b6040519081526020015b60405180910390f35b6102dd6102d8366004614478565b610800565b604080516001600160a01b03909416845263ffffffff90921660208401526001600160401b0316908201526060016102c1565b61032361031e3660046144a7565b610830565b60405190151581526020016102c1565b61035d6040518060400160405280600b81526020016a2730b6b2abb930b83832b960a91b81525081565b6040516102c19190614514565b61037d610378366004614478565b610870565b6040516001600160a01b0390911681526020016102c1565b6103a86103a336600461444c565b6108b5565b005b6103236103b8366004614527565b6108fb565b61035d6103cb366004614478565b610975565b6103a86103de366004614573565b6109e7565b6103f66103f13660046145e7565b610ae1565b6040516001600160e01b031990911681526020016102c1565b6103a861041d366004614659565b610cc1565b6103a8610430366004614527565b610ceb565b60075461037d906001600160a01b031681565b61035d610456366004614478565b610da1565b6102b761046936600461474f565b610e3b565b61037d7f000000000000000000000000000000000000000000000000000000000000000081565b6103a86104a3366004614875565b611021565b6103a86104b6366004614922565b61125f565b61037d7f000000000000000000000000000000000000000000000000000000000000000081565b6104f56104f036600461497a565b611430565b60405163ffffffff90911681526020016102c1565b610323610518366004614527565b6114cd565b61053061052b36600461499d565b611506565b6040516102c19190614a9a565b60055461037d906001600160a01b031681565b6103a861055e366004614aad565b61162f565b61037d610571366004614478565b6116b0565b610589610584366004614aee565b6116bb565b6040516001600160401b0390911681526020016102c1565b6103a86117ee565b6103a86105b7366004614b23565b611802565b6105896105ca366004614b65565b611928565b6000546001600160a01b031661037d565b6103a86105ee366004614bed565b611ca4565b6102b7610601366004614c1b565b611d7a565b610323610614366004614c9b565b611ebb565b6103a8610627366004614659565b611ee0565b6102b761063a366004614cbe565b612138565b6102b761064d366004614ce0565b6123a2565b6103a8610660366004614d52565b61256a565b6103a8610673366004614dbd565b6126bd565b6103a8610686366004614df5565b612857565b610323610699366004614cbe565b612920565b6103236106ac366004614659565b60046020526000908152604090205460ff1681565b6103a86106cf366004614bed565b6129ff565b6103236106e2366004614e23565b612a67565b6103a86106f5366004614e51565b612a95565b6102b7610708366004614478565b60016020526000908152604090205481565b6103a8610728366004614eb8565b612e39565b6103a861073b366004614659565b612ee6565b61032361074e366004614478565b612f5c565b60006001600160a01b0383166107c45760405162461bcd60e51b815260206004820152602b60248201527f455243313135353a2062616c616e636520717565727920666f7220746865207a60448201526a65726f206164647265737360a81b60648201526084015b60405180910390fd5b60006107cf836116b0565b9050836001600160a01b0316816001600160a01b0316036107f45760019150506107fa565b60009150505b92915050565b60008181526001602052604090205460a081901c60c082901c610824838383613034565b90959094509092509050565b60006001600160e01b03198216631b05885b60e31b148061086157506001600160e01b03198216630a85bd0160e11b145b806107fa57506107fa8261306a565b60008061087c836116b0565b90506001600160a01b0381166108955750600092915050565b6000838152600360205260409020546001600160a01b03165b9392505050565b60006108c082610800565b50915050603f1960408216016108ec5760405163a2a7201360e01b8152600481018390526024016107bb565b6108f683836130ba565b505050565b600080808061090986610800565b925092509250846001600160a01b0316836001600160a01b0316148061093457506109348386612a67565b8061095857506001600160a01b03851661094d87610870565b6001600160a01b0316145b801561096b575061096982826131ca565b155b9695505050505050565b6005546040516303a24d0760e21b8152600481018390526060916001600160a01b031690630e89341c90602401600060405180830381865afa1580156109bf573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526107fa9190810190614f20565b816109f281336114cd565b610a1357803360405163168ab55d60e31b81526004016107bb929190614f97565b8260106000610a2183610800565b5091505063ffffffff8282161615610a4f5760405163a2a7201360e01b8152600481018490526024016107bb565b604051630295720760e31b8152600481018790526001600160401b03861660248201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906314ab9038906044015b600060405180830381600087803b158015610ac157600080fd5b505af1158015610ad5573d6000803e3d6000fd5b50505050505050505050565b6000336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610b2c5760405163032634a760e31b815260040160405180910390fd5b6000808080610b3d86880188614fae565b83516020850120939750919550935091508890808214610b7a576040516331970f3360e21b815260048101829052602481018390526044016107bb565b604051630a3b53db60e21b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906328ed4f6c90610bc89085903090600401614f97565b600060405180830381600087803b158015610be257600080fd5b505af1158015610bf6573d6000803e3d6000fd5b5050604051636b727d4360e11b8152600481018d9052600092506276a70091506001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063d6e4fa8690602401602060405180830381865afa158015610c67573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c8b9190615015565b610c959190615044565b9050610ca887878761ffff1684886131fa565b50630a85bd0160e11b9c9b505050505050505050505050565b610cc961330b565b600580546001600160a01b0319166001600160a01b0392909216919091179055565b81610cf681336114cd565b610d1757803360405163168ab55d60e31b81526004016107bb929190614f97565b8260086000610d2583610800565b5091505063ffffffff8282161615610d535760405163a2a7201360e01b8152600481018490526024016107bb565b604051630c4b7b8560e11b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690631896f70a90610aa79089908990600401614f97565b60066020526000908152604090208054610dba9061506b565b80601f0160208091040260200160405190810160405280929190818152602001828054610de69061506b565b8015610e335780601f10610e0857610100808354040283529160200191610e33565b820191906000526020600020905b815481529060010190602001808311610e1657829003601f168201915b505050505081565b600087610e4881336114cd565b610e6957803360405163168ab55d60e31b81526004016107bb929190614f97565b87516020890120610e7a8a82613365565b9250610e868a84613391565b610e9083866134cf565b610e9b8a848b613502565b50610ea88a8487876135cf565b9350610eb383613615565b610f68576040516305ef2c7f60e41b8152600481018b9052602481018290523060448201526001600160a01b0388811660648301526001600160401b03881660848301527f00000000000000000000000000000000000000000000000000000000000000001690635ef2c7f09060a401600060405180830381600087803b158015610f3d57600080fd5b505af1158015610f51573d6000803e3d6000fd5b50505050610f638a848b8b89896136ce565b611014565b6040516305ef2c7f60e41b8152600481018b9052602481018290523060448201526001600160a01b0388811660648301526001600160401b03881660848301527f00000000000000000000000000000000000000000000000000000000000000001690635ef2c7f09060a401600060405180830381600087803b158015610fee57600080fd5b505af1158015611002573d6000803e3d6000fd5b505050506110148a848b8b8989613705565b5050979650505050505050565b81518351146110835760405162461bcd60e51b815260206004820152602860248201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206044820152670dad2e6dac2e8c6d60c31b60648201526084016107bb565b6001600160a01b0384166110a95760405162461bcd60e51b81526004016107bb906150a5565b6001600160a01b0385163314806110c557506110c58533612a67565b61112c5760405162461bcd60e51b815260206004820152603260248201527f455243313135353a207472616e736665722063616c6c6572206973206e6f74206044820152711bdddb995c881b9bdc88185c1c1c9bdd995960721b60648201526084016107bb565b60005b83518110156111f257600084828151811061114c5761114c6150ea565b60200260200101519050600084838151811061116a5761116a6150ea565b60200260200101519050600080600061118285610800565b9250925092506111938583836137c9565b8360011480156111b457508a6001600160a01b0316836001600160a01b0316145b6111d05760405162461bcd60e51b81526004016107bb90615100565b6111dc858b8484613872565b5050505050806111eb9061514a565b905061112f565b50836001600160a01b0316856001600160a01b0316336001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051611242929190615163565b60405180910390a46112583386868686866138b4565b5050505050565b600061126b8585613365565b905061127781846134cf565b6000808061128484610800565b919450925090506001600160a01b038316158061133357506040516302571be360e01b81526004810185905230906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906302571be390602401602060405180830381865afa158015611303573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113279190615191565b6001600160a01b031614155b1561135157604051635374b59960e01b815260040160405180910390fd5b60008061135d8a610800565b90935091508a90506113995761137386336114cd565b61139457853360405163168ab55d60e31b81526004016107bb929190614f97565b6113c4565b6113a38a336114cd565b6113c457893360405163168ab55d60e31b81526004016107bb929190614f97565b6113cf868984613a0f565b6113da878483613a4a565b9650620100008416158015906113fe57508363ffffffff1688851763ffffffff1614155b1561141f5760405163a2a7201360e01b8152600481018790526024016107bb565b96831796610ad586868a868b613a90565b60008261143d81336114cd565b61145e57803360405163168ab55d60e31b81526004016107bb929190614f97565b836002600061146c83610800565b5091505063ffffffff828216161561149a5760405163a2a7201360e01b8152600481018490526024016107bb565b600080806114a78a610800565b9250925092506114c08a84848c61ffff16178485613a90565b5098975050505050505050565b60008080806114db86610800565b925092509250846001600160a01b0316836001600160a01b0316148061095857506109588386612a67565b6060815183511461156b5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b60648201526084016107bb565b600083516001600160401b0381111561158657611586614676565b6040519080825280602002602001820160405280156115af578160200160208202803683370190505b50905060005b8451811015611627576115fa8582815181106115d3576115d36150ea565b60200260200101518583815181106115ed576115ed6150ea565b6020026020010151610753565b82828151811061160c5761160c6150ea565b60209081029190910101526116208161514a565b90506115b5565b509392505050565b61163761330b565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303816000875af1158015611686573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116aa91906151ae565b50505050565b60006107fa82613b37565b6000806116c88585613365565b90506116d381613615565b6116f057604051635374b59960e01b815260040160405180910390fd5b60006116fc86336108fb565b905080158015611713575061171182336114cd565b155b1561173557813360405163168ab55d60e31b81526004016107bb929190614f97565b6000808061174285610800565b925092509250831580156117595750620400008216155b1561177a5760405163a2a7201360e01b8152600481018690526024016107bb565b60006117858a610800565b92505050611794888383613a4a565b97506117a28685858b613b4d565b6040516001600160401b038916815286907ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b1329060200160405180910390a2509598975050505050505050565b6117f661330b565b6118006000613b63565b565b61181a6000805160206156ec83398151915284613365565b61182481336114cd565b61184557803360405163168ab55d60e31b81526004016107bb929190614f97565b306001600160a01b0384160361187957604051632ca49b0d60e11b81526001600160a01b03841660048201526024016107bb565b61189a6118946000805160206156ec83398151915286613365565b83613bb3565b604051632142170760e11b81523060048201526001600160a01b038481166024830152604482018690527f000000000000000000000000000000000000000000000000000000000000000016906342842e0e90606401600060405180830381600087803b15801561190a57600080fd5b505af115801561191e573d6000803e3d6000fd5b5050505050505050565b600080868660405161193b9291906151cb565b6040519081900381206331a9108f60e11b82526004820181905291506000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690636352211e90602401602060405180830381865afa1580156119ab573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119cf9190615191565b90506001600160a01b0381163314801590611a77575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000000000000000000000000000000000000000000000169063e985e9c590604401602060405180830381865afa158015611a51573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a7591906151ae565b155b15611ab057611a946000805160206156ec83398151915283613365565b3360405163168ab55d60e31b81526004016107bb929190614f97565b6040516323b872dd60e01b81526001600160a01b038281166004830152306024830152604482018490527f000000000000000000000000000000000000000000000000000000000000000016906323b872dd90606401600060405180830381600087803b158015611b2057600080fd5b505af1158015611b34573d6000803e3d6000fd5b5050604051630a3b53db60e21b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001692506328ed4f6c9150611b869085903090600401614f97565b600060405180830381600087803b158015611ba057600080fd5b505af1158015611bb4573d6000803e3d6000fd5b5050604051636b727d4360e11b8152600481018590526276a70092507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316915063d6e4fa8690602401602060405180830381865afa158015611c22573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c469190615015565b611c509190615044565b9250611c9988888080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508a9250505061ffff881686886131fa565b505095945050505050565b6001600160a01b0382163303611d0e5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084016107bb565b3360008181526002602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b3360009081526004602052604081205460ff16611da95760405162461bcd60e51b81526004016107bb906151db565b60008787604051611dbb9291906151cb565b604051908190038120633f2891eb60e21b8252600482018190523060248301526044820187905291507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063fca247ac906064016020604051808303816000875af1158015611e37573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e5b9190615015565b9150611eb088888080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508a9250505061ffff8616611eaa6276a70087615044565b886131fa565b509695505050505050565b600080611ec784610800565b50841663ffffffff908116908516149250505092915050565b611ee861330b565b6007546001600160a01b0316156120085760075460405163a22cb46560e01b81526001600160a01b039182166004820152600060248201527f00000000000000000000000000000000000000000000000000000000000000009091169063a22cb46590604401600060405180830381600087803b158015611f6857600080fd5b505af1158015611f7c573d6000803e3d6000fd5b505060075460405163a22cb46560e01b81526001600160a01b039182166004820152600060248201527f0000000000000000000000000000000000000000000000000000000000000000909116925063a22cb4659150604401600060405180830381600087803b158015611fef57600080fd5b505af1158015612003573d6000803e3d6000fd5b505050505b600780546001600160a01b0319166001600160a01b038316908117909155156121355760075460405163a22cb46560e01b81526001600160a01b039182166004820152600160248201527f00000000000000000000000000000000000000000000000000000000000000009091169063a22cb46590604401600060405180830381600087803b15801561209a57600080fd5b505af11580156120ae573d6000803e3d6000fd5b505060075460405163a22cb46560e01b81526001600160a01b039182166004820152600160248201527f0000000000000000000000000000000000000000000000000000000000000000909116925063a22cb4659150604401600060405180830381600087803b15801561212157600080fd5b505af1158015611258573d6000803e3d6000fd5b50565b3360009081526004602052604081205460ff166121675760405162461bcd60e51b81526004016107bb906151db565b60006121816000805160206156ec83398151915285613365565b60405163c475abff60e01b815260048101869052602481018590529091506000906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063c475abff906044016020604051808303816000875af11580156121f5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122199190615015565b6040516331a9108f60e11b8152600481018790529091507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690636352211e90602401602060405180830381865afa92505050801561229d575060408051601f3d908101601f1916820190925261229a91810190615191565b60015b6122aa5791506107fa9050565b6001600160a01b0381163014158061235457506040516302571be360e01b81526004810184905230906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906302571be390602401602060405180830381865afa158015612324573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123489190615191565b6001600160a01b031614155b15612363575091506107fa9050565b5060006123736276a70083615044565b60008481526001602052604090205490915060a081901c61239685838386613b4d565b50919695505050505050565b6000866123af81336114cd565b6123d057803360405163168ab55d60e31b81526004016107bb929190614f97565b600087876040516123e29291906151cb565b604051809103902090506123f68982613365565b92506124028984613391565b61240c83866134cf565b600061244f8a858b8b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061350292505050565b905061245d8a8588886135cf565b945061246884613615565b612517576040516306ab592360e01b8152600481018b9052602481018390523060448201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906306ab5923906064016020604051808303816000875af11580156124e0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125049190615015565b506125128482898989613ca3565b61255d565b61255d8a858b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508d92508c91508b9050613705565b5050509695505050505050565b60006125b0600086868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509293925050613ce59050565b6007549091506001600160a01b03166125dc5760405163093075b560e21b815260040160405180910390fd5b6125e681336114cd565b61260757803360405163168ab55d60e31b81526004016107bb929190614f97565b6000808061261484610800565b91945092509050600061262685610870565b905061263185613da4565b600760009054906101000a90046001600160a01b03166001600160a01b0316639198c2768a8a878787878e8e6040518963ffffffff1660e01b815260040161268098979695949392919061524c565b600060405180830381600087803b15801561269a57600080fd5b505af11580156126ae573d6000803e3d6000fd5b50505050505050505050505050565b836126c881336114cd565b6126e957803360405163168ab55d60e31b81526004016107bb929190614f97565b84601c60006126f783610800565b5091505063ffffffff82821616156127255760405163a2a7201360e01b8152600481018490526024016107bb565b60405163cf40882360e01b8152600481018990523060248201526001600160a01b0387811660448301526001600160401b03871660648301527f0000000000000000000000000000000000000000000000000000000000000000169063cf40882390608401600060405180830381600087803b1580156127a457600080fd5b505af11580156127b8573d6000803e3d6000fd5b5050506001600160a01b038816905061281f5760006127d689610800565b509150506201ffff196202000082160161280e57604051632ca49b0d60e11b81526001600160a01b03891660048201526024016107bb565b612819896000613bb3565b5061191e565b600061282a896116b0565b905061284c81898b60001c600160405180602001604052806000815250613e44565b505050505050505050565b6128618383613365565b61286b81336114cd565b61288c57803360405163168ab55d60e31b81526004016107bb929190614f97565b7f6c32148f748aba23997146d7fe89e962e3cc30271290fb96f5f4337756c03b5284016128cc5760405163615a470360e01b815260040160405180910390fd5b6001600160a01b03821615806128ea57506001600160a01b03821630145b1561291357604051632ca49b0d60e11b81526001600160a01b03831660048201526024016107bb565b6116aa6118948585613365565b60008061292d8484613365565b9050600061293a82613615565b90506000805160206156ec833981519152851461295a5791506107fa9050565b6040516331a9108f60e11b8152600481018590527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690636352211e90602401602060405180830381865afa9250505080156129db575060408051601f3d908101601f191682019092526129d891810190615191565b60015b6129ea576000925050506107fa565b6001600160a01b0316301492506107fa915050565b612a0761330b565b6001600160a01b038216600081815260046020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf8791015b60405180910390a25050565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205460ff1690565b600080612adc600087878080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509293925050613f269050565b915091506000612b258288888080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509293925050613ce59050565b90506000612b338285613365565b6000818152600660205260409020909150612b4f888a836152fa565b507f6c32148f748aba23997146d7fe89e962e3cc30271290fb96f5f4337756c03b528201612b905760405163615a470360e01b815260040160405180910390fd5b6040516302571be360e01b8152600481018290526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906302571be390602401602060405180830381865afa158015612bf8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612c1c9190615191565b90506001600160a01b0381163314801590612cc4575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000000000000000000000000000000000000000000000169063e985e9c590604401602060405180830381865afa158015612c9e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612cc291906151ae565b155b15612ce657813360405163168ab55d60e31b81526004016107bb929190614f97565b6001600160a01b03861615612d7657604051630c4b7b8560e11b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690631896f70a90612d439085908a90600401614f97565b600060405180830381600087803b158015612d5d57600080fd5b505af1158015612d71573d6000803e3d6000fd5b505050505b604051635b0fc9c360e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690635b0fc9c390612dc49085903090600401614f97565b600060405180830381600087803b158015612dde57600080fd5b505af1158015612df2573d6000803e3d6000fd5b5050505061284c828a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201829052508d93509150819050613ca3565b6001600160a01b038416612e5f5760405162461bcd60e51b81526004016107bb906150a5565b6001600160a01b038516331480612e7b5750612e7b8533612a67565b612ed95760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2063616c6c6572206973206e6f74206f776e6572206e6f7260448201526808185c1c1c9bdd995960ba1b60648201526084016107bb565b6112588585858585613e44565b612eee61330b565b6001600160a01b038116612f535760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107bb565b61213581613b63565b60008181526006602052604081208054829190612f789061506b565b80601f0160208091040260200160405190810160405280929190818152602001828054612fa49061506b565b8015612ff15780601f10612fc657610100808354040283529160200191612ff1565b820191906000526020600020905b815481529060010190602001808311612fd457829003601f168201915b50505050509050805160000361300a5750600092915050565b6000806130178382613f26565b909250905060006130288483613ce5565b905061096b8184612920565b60008042836001600160401b031610156130615761ffff196201000085160161305c57600094505b600093505b50929391925050565b60006001600160e01b03198216636cdb3d1360e11b148061309b57506001600160e01b031982166303a24d0760e21b145b806107fa57506301ffc9a760e01b6001600160e01b03198316146107fa565b60006130c5826116b0565b9050806001600160a01b0316836001600160a01b0316036131325760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084016107bb565b336001600160a01b038216148061314e575061314e8133612a67565b6131c05760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016107bb565b6108f68383613fdd565b6000620200008381161480156108ae5750426131e96276a700846153b9565b6001600160401b0316109392505050565b84516020860120600061321b6000805160206156ec83398151915283613365565b9050600061324488604051806040016040528060058152602001626cae8d60e31b81525061404b565b600083815260066020526040902090915061325f82826153d9565b50613272828289620300008a1789613ca3565b6001600160a01b0384161561191e57604051630c4b7b8560e11b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690631896f70a906132cf9085908890600401614f97565b600060405180830381600087803b1580156132e957600080fd5b505af11580156132fd573d6000803e3d6000fd5b505050505050505050505050565b6000546001600160a01b031633146118005760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107bb565b604080516020808201949094528082019290925280518083038201815260609092019052805191012090565b6000808061339e84610800565b91945092509050426001600160401b0382161080801561346157506001600160a01b038416158061346157506040516302571be360e01b8152600481018690526000906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906302571be390602401602060405180830381865afa158015613432573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906134569190615191565b6001600160a01b0316145b156134a057600061347187610800565b50915050602081161561349a5760405163a2a7201360e01b8152600481018790526024016107bb565b506134c7565b620100008316156134c75760405163a2a7201360e01b8152600481018690526024016107bb565b505050505050565b63fffdffff81811763ffffffff16146134fe5760405163a2a7201360e01b8152600481018390526024016107bb565b5050565b606060006135ab836006600088815260200190815260200160002080546135289061506b565b80601f01602080910402602001604051908101604052809291908181526020018280546135549061506b565b80156135a15780601f10613576576101008083540402835291602001916135a1565b820191906000526020600020905b81548152906001019060200180831161358457829003601f168201915b505050505061404b565b60008581526006602052604090209091506135c682826153d9565b50949350505050565b6000806135db85610800565b925050506000806135ee8860001c610800565b92509250506135fe878784613a0f565b613609858483613a4a565b98975050505050505050565b600080613621836116b0565b6001600160a01b0316141580156107fa57506040516302571be360e01b81526004810183905230906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906302571be390602401602060405180830381865afa15801561369a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906136be9190615191565b6001600160a01b03161492915050565b600086815260066020526040812080546136ed9187916135289061506b565b90506136fc8682868686613ca3565b50505050505050565b6000808061371288610800565b925092509250600061373c88600660008d815260200190815260200160002080546135289061506b565b60008a81526006602052604090208054919250906137599061506b565b905060000361377c57600089815260066020526040902061377a82826153d9565b505b61378b89858886178589613a90565b6001600160a01b0387166137a9576137a4896000613bb3565b610ad5565b610ad584888b60001c600160405180602001604052806000815250613e44565b6201ffff19620200008316016137e9576137e66276a700826153b9565b90505b42816001600160401b03161015613822576201000082161561381d5760405162461bcd60e51b81526004016107bb90615100565b613847565b60048216156138475760405163a2a7201360e01b8152600481018490526024016107bb565b604082166000036108f6575050600090815260036020526040902080546001600160a01b0319169055565b60c0816001600160401b0316901b60a08363ffffffff16901b846001600160a01b03161717600160008681526020019081526020016000208190555050505050565b6001600160a01b0384163b156134c75760405163bc197c8160e01b81526001600160a01b0385169063bc197c81906138f89089908990889088908890600401615498565b6020604051808303816000875af1925050508015613933575060408051601f3d908101601f19168201909252613930918101906154ea565b60015b6139df5761393f615507565b806308c379a0036139785750613953615523565b8061395e575061397a565b8060405162461bcd60e51b81526004016107bb9190614514565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e20455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b60648201526084016107bb565b6001600160e01b0319811663bc197c8160e01b146136fc5760405162461bcd60e51b81526004016107bb906155ac565b63ffff00008216158015906001831615908290613a295750805b156112585760405163a2a7201360e01b8152600481018690526024016107bb565b6000816001600160401b0316846001600160401b03161115613a6a578193505b826001600160401b0316846001600160401b03161015613a88578293505b509192915050565b613a9c85858584613b4d565b60405163ffffffff8416815285907f39873f00c80f4f94b7bd1594aebcf650f003545b74824d57ddf4939e3ff3a34b9060200160405180910390a2816001600160401b0316816001600160401b03161115611258576040516001600160401b038216815285907ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b132906020015b60405180910390a25050505050565b600080613b4383610800565b5090949350505050565b613b5784836140c2565b6116aa84848484613872565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b613bbe826001611ebb565b15613bdf5760405163a2a7201360e01b8152600481018390526024016107bb565b613be882613da4565b604051635b0fc9c360e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690635b0fc9c390613c369085908590600401614f97565b600060405180830381600087803b158015613c5057600080fd5b505af1158015613c64573d6000803e3d6000fd5b50506040516001600160a01b03841681528492507fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c49150602001612a5b565b613caf858484846140fb565b847f8ce7013e8abebc55c3890a68f5a27c67c3f7efa64e584de5fb22363c606fd34085858585604051613b2894939291906155f4565b6000806000613cf48585613f26565b909250905081613d665760018551613d0c919061563b565b8414613d5a5760405162461bcd60e51b815260206004820152601d60248201527f6e616d65686173683a204a756e6b20617420656e64206f66206e616d6500000060448201526064016107bb565b50600091506107fa9050565b613d708582613ce5565b6040805160208101929092528101839052606001604051602081830303815290604052805190602001209250505092915050565b60008181526001602052604090205460a081901c60c082901c613dc8838383613034565b600086815260036020526040812080546001600160a01b0319169055909350613df5915085908484613872565b60408051858152600160208201526000916001600160a01b0386169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b6000806000613e5286610800565b925092509250613e638683836137c9565b846001148015613e845750876001600160a01b0316836001600160a01b0316145b613ea05760405162461bcd60e51b81526004016107bb90615100565b866001600160a01b0316836001600160a01b031603613ec157505050611258565b613ecd86888484613872565b60408051878152602081018790526001600160a01b03808a1692908b169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a461191e33898989898961416f565b60008083518310613f795760405162461bcd60e51b815260206004820152601e60248201527f726561644c6162656c3a20496e646578206f7574206f6620626f756e6473000060448201526064016107bb565b6000848481518110613f8d57613f8d6150ea565b016020015160f81c90508015613fb957613fb285613fac86600161564e565b8361422a565b9250613fbe565b600092505b613fc8818561564e565b613fd390600161564e565b9150509250929050565b600081815260036020526040902080546001600160a01b0319166001600160a01b0384169081179091558190614012826116b0565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b606060018351101561407057604051631406d65b60e11b815260040160405180910390fd5b60ff83511115614095578260405163e3ba295f60e01b81526004016107bb9190614514565b825183836040516020016140ab93929190615661565b604051602081830303815290604052905092915050565b61ffff8116158015906140da57506201000181811614155b156134fe5760405163a2a7201360e01b8152600481018390526024016107bb565b61410584836140c2565b6000848152600160205260409020546001600160a01b038116156141635761412c85613da4565b6040516000815285907fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c49060200160405180910390a25b6112588585858561424e565b6001600160a01b0384163b156134c75760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e61906141b390899089908890889088906004016156a6565b6020604051808303816000875af19250505080156141ee575060408051601f3d908101601f191682019092526141eb918101906154ea565b60015b6141fa5761393f615507565b6001600160e01b0319811663f23a6e6160e01b146136fc5760405162461bcd60e51b81526004016107bb906155ac565b8251600090614239838561564e565b111561424457600080fd5b5091016020012090565b836000808061425c84610800565b9194509250905063ffff000082166001600160401b038087169083161115614282578195505b42826001600160401b03161061429757958617955b6001600160a01b038416156142ee5760405162461bcd60e51b815260206004820152601f60248201527f455243313135353a206d696e74206f66206578697374696e6720746f6b656e0060448201526064016107bb565b6001600160a01b03881661434e5760405162461bcd60e51b815260206004820152602160248201527f455243313135353a206d696e7420746f20746865207a65726f206164647265736044820152607360f81b60648201526084016107bb565b306001600160a01b038916036143c35760405162461bcd60e51b815260206004820152603460248201527f455243313135353a206e65774f776e65722063616e6e6f74206265207468652060448201527313985b5955dc985c1c195c8818dbdb9d1c9858dd60621b60648201526084016107bb565b6143cf85898989613872565b60408051868152600160208201526001600160a01b038a169160009133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a461284c3360008a8860016040518060200160405280600081525061416f565b6001600160a01b038116811461213557600080fd5b6000806040838503121561445f57600080fd5b823561446a81614437565b946020939093013593505050565b60006020828403121561448a57600080fd5b5035919050565b6001600160e01b03198116811461213557600080fd5b6000602082840312156144b957600080fd5b81356108ae81614491565b60005b838110156144df5781810151838201526020016144c7565b50506000910152565b600081518084526145008160208601602086016144c4565b601f01601f19169290920160200192915050565b6020815260006108ae60208301846144e8565b6000806040838503121561453a57600080fd5b82359150602083013561454c81614437565b809150509250929050565b80356001600160401b038116811461456e57600080fd5b919050565b6000806040838503121561458657600080fd5b8235915061459660208401614557565b90509250929050565b60008083601f8401126145b157600080fd5b5081356001600160401b038111156145c857600080fd5b6020830191508360208285010111156145e057600080fd5b9250929050565b6000806000806000608086880312156145ff57600080fd5b853561460a81614437565b9450602086013561461a81614437565b93506040860135925060608601356001600160401b0381111561463c57600080fd5b6146488882890161459f565b969995985093965092949392505050565b60006020828403121561466b57600080fd5b81356108ae81614437565b634e487b7160e01b600052604160045260246000fd5b601f8201601f191681016001600160401b03811182821017156146b1576146b1614676565b6040525050565b60006001600160401b038211156146d1576146d1614676565b50601f01601f191660200190565b600082601f8301126146f057600080fd5b81356146fb816146b8565b604051614708828261468c565b82815285602084870101111561471d57600080fd5b82602086016020830137600092810160200192909252509392505050565b803563ffffffff8116811461456e57600080fd5b600080600080600080600060e0888a03121561476a57600080fd5b8735965060208801356001600160401b0381111561478757600080fd5b6147938a828b016146df565b96505060408801356147a481614437565b945060608801356147b481614437565b93506147c260808901614557565b92506147d060a0890161473b565b91506147de60c08901614557565b905092959891949750929550565b60006001600160401b0382111561480557614805614676565b5060051b60200190565b600082601f83011261482057600080fd5b8135602061482d826147ec565b60405161483a828261468c565b83815260059390931b850182019282810191508684111561485a57600080fd5b8286015b84811015611eb0578035835291830191830161485e565b600080600080600060a0868803121561488d57600080fd5b853561489881614437565b945060208601356148a881614437565b935060408601356001600160401b03808211156148c457600080fd5b6148d089838a0161480f565b945060608801359150808211156148e657600080fd5b6148f289838a0161480f565b9350608088013591508082111561490857600080fd5b50614915888289016146df565b9150509295509295909350565b6000806000806080858703121561493857600080fd5b843593506020850135925061494f6040860161473b565b915061495d60608601614557565b905092959194509250565b803561ffff8116811461456e57600080fd5b6000806040838503121561498d57600080fd5b8235915061459660208401614968565b600080604083850312156149b057600080fd5b82356001600160401b03808211156149c757600080fd5b818501915085601f8301126149db57600080fd5b813560206149e8826147ec565b6040516149f5828261468c565b83815260059390931b8501820192828101915089841115614a1557600080fd5b948201945b83861015614a3c578535614a2d81614437565b82529482019490820190614a1a565b96505086013592505080821115614a5257600080fd5b50613fd38582860161480f565b600081518084526020808501945080840160005b83811015614a8f57815187529582019590820190600101614a73565b509495945050505050565b6020815260006108ae6020830184614a5f565b600080600060608486031215614ac257600080fd5b8335614acd81614437565b92506020840135614add81614437565b929592945050506040919091013590565b600080600060608486031215614b0357600080fd5b8335925060208401359150614b1a60408501614557565b90509250925092565b600080600060608486031215614b3857600080fd5b833592506020840135614b4a81614437565b91506040840135614b5a81614437565b809150509250925092565b600080600080600060808688031215614b7d57600080fd5b85356001600160401b03811115614b9357600080fd5b614b9f8882890161459f565b9096509450506020860135614bb381614437565b9250614bc160408701614968565b91506060860135614bd181614437565b809150509295509295909350565b801515811461213557600080fd5b60008060408385031215614c0057600080fd5b8235614c0b81614437565b9150602083013561454c81614bdf565b60008060008060008060a08789031215614c3457600080fd5b86356001600160401b03811115614c4a57600080fd5b614c5689828a0161459f565b9097509550506020870135614c6a81614437565b9350604087013592506060870135614c8181614437565b9150614c8f60808801614968565b90509295509295509295565b60008060408385031215614cae57600080fd5b823591506145966020840161473b565b60008060408385031215614cd157600080fd5b50508035926020909101359150565b60008060008060008060a08789031215614cf957600080fd5b8635955060208701356001600160401b03811115614d1657600080fd5b614d2289828a0161459f565b9096509450506040870135614d3681614437565b9250614d446060880161473b565b9150614c8f60808801614557565b60008060008060408587031215614d6857600080fd5b84356001600160401b0380821115614d7f57600080fd5b614d8b8883890161459f565b90965094506020870135915080821115614da457600080fd5b50614db18782880161459f565b95989497509550505050565b60008060008060808587031215614dd357600080fd5b843593506020850135614de581614437565b9250604085013561494f81614437565b600080600060608486031215614e0a57600080fd5b83359250602084013591506040840135614b5a81614437565b60008060408385031215614e3657600080fd5b8235614e4181614437565b9150602083013561454c81614437565b60008060008060608587031215614e6757600080fd5b84356001600160401b03811115614e7d57600080fd5b614e898782880161459f565b9095509350506020850135614e9d81614437565b91506040850135614ead81614437565b939692955090935050565b600080600080600060a08688031215614ed057600080fd5b8535614edb81614437565b94506020860135614eeb81614437565b9350604086013592506060860135915060808601356001600160401b03811115614f1457600080fd5b614915888289016146df565b600060208284031215614f3257600080fd5b81516001600160401b03811115614f4857600080fd5b8201601f81018413614f5957600080fd5b8051614f64816146b8565b604051614f71828261468c565b828152866020848601011115614f8657600080fd5b61096b8360208301602087016144c4565b9182526001600160a01b0316602082015260400190565b60008060008060808587031215614fc457600080fd5b84356001600160401b03811115614fda57600080fd5b614fe6878288016146df565b9450506020850135614ff781614437565b925061500560408601614968565b91506060850135614ead81614437565b60006020828403121561502757600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b6001600160401b038181168382160190808211156150645761506461502e565b5092915050565b600181811c9082168061507f57607f821691505b60208210810361509f57634e487b7160e01b600052602260045260246000fd5b50919050565b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b60006001820161515c5761515c61502e565b5060010190565b6040815260006151766040830185614a5f565b82810360208401526151888185614a5f565b95945050505050565b6000602082840312156151a357600080fd5b81516108ae81614437565b6000602082840312156151c057600080fd5b81516108ae81614bdf565b8183823760009101908152919050565b60208082526028908201527f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f604082015267373a3937b63632b960c11b606082015260800190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60c08152600061526060c083018a8c615223565b6001600160a01b03898116602085015263ffffffff891660408501526001600160401b03881660608501528616608084015282810360a08401526152a5818587615223565b9b9a5050505050505050505050565b601f8211156108f657600081815260208120601f850160051c810160208610156152db5750805b601f850160051c820191505b818110156134c7578281556001016152e7565b6001600160401b0383111561531157615311614676565b6153258361531f835461506b565b836152b4565b6000601f84116001811461535957600085156153415750838201355b600019600387901b1c1916600186901b178355611258565b600083815260209020601f19861690835b8281101561538a578685013582556020948501946001909201910161536a565b50868210156153a75760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b6001600160401b038281168282160390808211156150645761506461502e565b81516001600160401b038111156153f2576153f2614676565b61540681615400845461506b565b846152b4565b602080601f83116001811461543b57600084156154235750858301515b600019600386901b1c1916600185901b1785556134c7565b600085815260208120601f198616915b8281101561546a5788860151825594840194600190910190840161544b565b50858210156154885787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6001600160a01b0386811682528516602082015260a0604082018190526000906154c490830186614a5f565b82810360608401526154d68186614a5f565b9050828103608084015261360981856144e8565b6000602082840312156154fc57600080fd5b81516108ae81614491565b600060033d11156155205760046000803e5060005160e01c5b90565b600060443d10156155315790565b6040516003193d81016004833e81513d6001600160401b03816024840111818411171561556057505050505090565b82850191508151818111156155785750505050505090565b843d87010160208285010111156155925750505050505090565b6155a16020828601018761468c565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b60808152600061560760808301876144e8565b6001600160a01b039590951660208301525063ffffffff9290921660408301526001600160401b0316606090910152919050565b818103818111156107fa576107fa61502e565b808201808211156107fa576107fa61502e565b60ff60f81b8460f81b168152600083516156828160018501602088016144c4565b8351908301906156998160018401602088016144c4565b0160010195945050505050565b6001600160a01b03868116825285166020820152604081018490526060810183905260a0608082018190526000906156e0908301846144e8565b97965050505050505056fe93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4aea164736f6c6343000811000a", - "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061029f5760003560e01c80636352211e11610167578063c93ab3fd116100ce578063e985e9c511610087578063e985e9c5146106d4578063eb8ae530146106e7578063ed70554d146106fa578063f242432a1461071a578063f2fde38b1461072d578063fd0cd0d91461074057600080fd5b8063c93ab3fd14610652578063cf40882314610665578063d8c9921a14610678578063d9a50c121461068b578063da8c229e1461069e578063e0dba60f146106c157600080fd5b8063a22cb46511610120578063a22cb465146105e0578063a4014982146105f3578063adf4960a14610606578063b6bcad2614610619578063c475abff1461062c578063c658e0861461063f57600080fd5b80636352211e146105635780636e5d6ad214610576578063715018a6146105a15780638b4dfa75146105a95780638cf8b41e146105bc5780638da5cb5b146105cf57600080fd5b80631f4e15041161020b5780633f15457f116101c45780633f15457f146104bb578063402906fc146104e257806341415eab1461050a5780634e1273f41461051d578063530954671461053d5780635d3590d51461055057600080fd5b80631f4e15041461043557806320c38e2b1461044857806324c1af441461045b5780632b20e3971461046e5780632eb2c2d61461049557806333c69ea9146104a857600080fd5b80630e4cd7251161025d5780630e4cd725146103aa5780630e89341c146103bd57806314ab9038146103d0578063150b7a02146103e35780631534e1771461040f5780631896f70a1461042257600080fd5b8062fdd58e146102a45780630178fe3f146102ca57806301ffc9a71461031057806306fdde0314610333578063081812fc1461036a578063095ea7b314610395575b600080fd5b6102b76102b236600461444c565b610753565b6040519081526020015b60405180910390f35b6102dd6102d8366004614478565b610800565b604080516001600160a01b03909416845263ffffffff90921660208401526001600160401b0316908201526060016102c1565b61032361031e3660046144a7565b610830565b60405190151581526020016102c1565b61035d6040518060400160405280600b81526020016a2730b6b2abb930b83832b960a91b81525081565b6040516102c19190614514565b61037d610378366004614478565b610870565b6040516001600160a01b0390911681526020016102c1565b6103a86103a336600461444c565b6108b5565b005b6103236103b8366004614527565b6108fb565b61035d6103cb366004614478565b610975565b6103a86103de366004614573565b6109e7565b6103f66103f13660046145e7565b610ae1565b6040516001600160e01b031990911681526020016102c1565b6103a861041d366004614659565b610cc1565b6103a8610430366004614527565b610ceb565b60075461037d906001600160a01b031681565b61035d610456366004614478565b610da1565b6102b761046936600461474f565b610e3b565b61037d7f000000000000000000000000000000000000000000000000000000000000000081565b6103a86104a3366004614875565b611021565b6103a86104b6366004614922565b61125f565b61037d7f000000000000000000000000000000000000000000000000000000000000000081565b6104f56104f036600461497a565b611430565b60405163ffffffff90911681526020016102c1565b610323610518366004614527565b6114cd565b61053061052b36600461499d565b611506565b6040516102c19190614a9a565b60055461037d906001600160a01b031681565b6103a861055e366004614aad565b61162f565b61037d610571366004614478565b6116b0565b610589610584366004614aee565b6116bb565b6040516001600160401b0390911681526020016102c1565b6103a86117ee565b6103a86105b7366004614b23565b611802565b6105896105ca366004614b65565b611928565b6000546001600160a01b031661037d565b6103a86105ee366004614bed565b611ca4565b6102b7610601366004614c1b565b611d7a565b610323610614366004614c9b565b611ebb565b6103a8610627366004614659565b611ee0565b6102b761063a366004614cbe565b612138565b6102b761064d366004614ce0565b6123a2565b6103a8610660366004614d52565b61256a565b6103a8610673366004614dbd565b6126bd565b6103a8610686366004614df5565b612857565b610323610699366004614cbe565b612920565b6103236106ac366004614659565b60046020526000908152604090205460ff1681565b6103a86106cf366004614bed565b6129ff565b6103236106e2366004614e23565b612a67565b6103a86106f5366004614e51565b612a95565b6102b7610708366004614478565b60016020526000908152604090205481565b6103a8610728366004614eb8565b612e39565b6103a861073b366004614659565b612ee6565b61032361074e366004614478565b612f5c565b60006001600160a01b0383166107c45760405162461bcd60e51b815260206004820152602b60248201527f455243313135353a2062616c616e636520717565727920666f7220746865207a60448201526a65726f206164647265737360a81b60648201526084015b60405180910390fd5b60006107cf836116b0565b9050836001600160a01b0316816001600160a01b0316036107f45760019150506107fa565b60009150505b92915050565b60008181526001602052604090205460a081901c60c082901c610824838383613034565b90959094509092509050565b60006001600160e01b03198216631b05885b60e31b148061086157506001600160e01b03198216630a85bd0160e11b145b806107fa57506107fa8261306a565b60008061087c836116b0565b90506001600160a01b0381166108955750600092915050565b6000838152600360205260409020546001600160a01b03165b9392505050565b60006108c082610800565b50915050603f1960408216016108ec5760405163a2a7201360e01b8152600481018390526024016107bb565b6108f683836130ba565b505050565b600080808061090986610800565b925092509250846001600160a01b0316836001600160a01b0316148061093457506109348386612a67565b8061095857506001600160a01b03851661094d87610870565b6001600160a01b0316145b801561096b575061096982826131ca565b155b9695505050505050565b6005546040516303a24d0760e21b8152600481018390526060916001600160a01b031690630e89341c90602401600060405180830381865afa1580156109bf573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526107fa9190810190614f20565b816109f281336114cd565b610a1357803360405163168ab55d60e31b81526004016107bb929190614f97565b8260106000610a2183610800565b5091505063ffffffff8282161615610a4f5760405163a2a7201360e01b8152600481018490526024016107bb565b604051630295720760e31b8152600481018790526001600160401b03861660248201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906314ab9038906044015b600060405180830381600087803b158015610ac157600080fd5b505af1158015610ad5573d6000803e3d6000fd5b50505050505050505050565b6000336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610b2c5760405163032634a760e31b815260040160405180910390fd5b6000808080610b3d86880188614fae565b83516020850120939750919550935091508890808214610b7a576040516331970f3360e21b815260048101829052602481018390526044016107bb565b604051630a3b53db60e21b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906328ed4f6c90610bc89085903090600401614f97565b600060405180830381600087803b158015610be257600080fd5b505af1158015610bf6573d6000803e3d6000fd5b5050604051636b727d4360e11b8152600481018d9052600092506276a70091506001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063d6e4fa8690602401602060405180830381865afa158015610c67573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c8b9190615015565b610c959190615044565b9050610ca887878761ffff1684886131fa565b50630a85bd0160e11b9c9b505050505050505050505050565b610cc961330b565b600580546001600160a01b0319166001600160a01b0392909216919091179055565b81610cf681336114cd565b610d1757803360405163168ab55d60e31b81526004016107bb929190614f97565b8260086000610d2583610800565b5091505063ffffffff8282161615610d535760405163a2a7201360e01b8152600481018490526024016107bb565b604051630c4b7b8560e11b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690631896f70a90610aa79089908990600401614f97565b60066020526000908152604090208054610dba9061506b565b80601f0160208091040260200160405190810160405280929190818152602001828054610de69061506b565b8015610e335780601f10610e0857610100808354040283529160200191610e33565b820191906000526020600020905b815481529060010190602001808311610e1657829003601f168201915b505050505081565b600087610e4881336114cd565b610e6957803360405163168ab55d60e31b81526004016107bb929190614f97565b87516020890120610e7a8a82613365565b9250610e868a84613391565b610e9083866134cf565b610e9b8a848b613502565b50610ea88a8487876135cf565b9350610eb383613615565b610f68576040516305ef2c7f60e41b8152600481018b9052602481018290523060448201526001600160a01b0388811660648301526001600160401b03881660848301527f00000000000000000000000000000000000000000000000000000000000000001690635ef2c7f09060a401600060405180830381600087803b158015610f3d57600080fd5b505af1158015610f51573d6000803e3d6000fd5b50505050610f638a848b8b89896136ce565b611014565b6040516305ef2c7f60e41b8152600481018b9052602481018290523060448201526001600160a01b0388811660648301526001600160401b03881660848301527f00000000000000000000000000000000000000000000000000000000000000001690635ef2c7f09060a401600060405180830381600087803b158015610fee57600080fd5b505af1158015611002573d6000803e3d6000fd5b505050506110148a848b8b8989613705565b5050979650505050505050565b81518351146110835760405162461bcd60e51b815260206004820152602860248201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206044820152670dad2e6dac2e8c6d60c31b60648201526084016107bb565b6001600160a01b0384166110a95760405162461bcd60e51b81526004016107bb906150a5565b6001600160a01b0385163314806110c557506110c58533612a67565b61112c5760405162461bcd60e51b815260206004820152603260248201527f455243313135353a207472616e736665722063616c6c6572206973206e6f74206044820152711bdddb995c881b9bdc88185c1c1c9bdd995960721b60648201526084016107bb565b60005b83518110156111f257600084828151811061114c5761114c6150ea565b60200260200101519050600084838151811061116a5761116a6150ea565b60200260200101519050600080600061118285610800565b9250925092506111938583836137c9565b8360011480156111b457508a6001600160a01b0316836001600160a01b0316145b6111d05760405162461bcd60e51b81526004016107bb90615100565b6111dc858b8484613872565b5050505050806111eb9061514a565b905061112f565b50836001600160a01b0316856001600160a01b0316336001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051611242929190615163565b60405180910390a46112583386868686866138b4565b5050505050565b600061126b8585613365565b905061127781846134cf565b6000808061128484610800565b919450925090506001600160a01b038316158061133357506040516302571be360e01b81526004810185905230906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906302571be390602401602060405180830381865afa158015611303573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113279190615191565b6001600160a01b031614155b1561135157604051635374b59960e01b815260040160405180910390fd5b60008061135d8a610800565b90935091508a90506113995761137386336114cd565b61139457853360405163168ab55d60e31b81526004016107bb929190614f97565b6113c4565b6113a38a336114cd565b6113c457893360405163168ab55d60e31b81526004016107bb929190614f97565b6113cf868984613a0f565b6113da878483613a4a565b9650620100008416158015906113fe57508363ffffffff1688851763ffffffff1614155b1561141f5760405163a2a7201360e01b8152600481018790526024016107bb565b96831796610ad586868a868b613a90565b60008261143d81336114cd565b61145e57803360405163168ab55d60e31b81526004016107bb929190614f97565b836002600061146c83610800565b5091505063ffffffff828216161561149a5760405163a2a7201360e01b8152600481018490526024016107bb565b600080806114a78a610800565b9250925092506114c08a84848c61ffff16178485613a90565b5098975050505050505050565b60008080806114db86610800565b925092509250846001600160a01b0316836001600160a01b0316148061095857506109588386612a67565b6060815183511461156b5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b60648201526084016107bb565b600083516001600160401b0381111561158657611586614676565b6040519080825280602002602001820160405280156115af578160200160208202803683370190505b50905060005b8451811015611627576115fa8582815181106115d3576115d36150ea565b60200260200101518583815181106115ed576115ed6150ea565b6020026020010151610753565b82828151811061160c5761160c6150ea565b60209081029190910101526116208161514a565b90506115b5565b509392505050565b61163761330b565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303816000875af1158015611686573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116aa91906151ae565b50505050565b60006107fa82613b37565b6000806116c88585613365565b90506116d381613615565b6116f057604051635374b59960e01b815260040160405180910390fd5b60006116fc86336108fb565b905080158015611713575061171182336114cd565b155b1561173557813360405163168ab55d60e31b81526004016107bb929190614f97565b6000808061174285610800565b925092509250831580156117595750620400008216155b1561177a5760405163a2a7201360e01b8152600481018690526024016107bb565b60006117858a610800565b92505050611794888383613a4a565b97506117a28685858b613b4d565b6040516001600160401b038916815286907ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b1329060200160405180910390a2509598975050505050505050565b6117f661330b565b6118006000613b63565b565b61181a6000805160206156ec83398151915284613365565b61182481336114cd565b61184557803360405163168ab55d60e31b81526004016107bb929190614f97565b306001600160a01b0384160361187957604051632ca49b0d60e11b81526001600160a01b03841660048201526024016107bb565b61189a6118946000805160206156ec83398151915286613365565b83613bb3565b604051632142170760e11b81523060048201526001600160a01b038481166024830152604482018690527f000000000000000000000000000000000000000000000000000000000000000016906342842e0e90606401600060405180830381600087803b15801561190a57600080fd5b505af115801561191e573d6000803e3d6000fd5b5050505050505050565b600080868660405161193b9291906151cb565b6040519081900381206331a9108f60e11b82526004820181905291506000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690636352211e90602401602060405180830381865afa1580156119ab573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119cf9190615191565b90506001600160a01b0381163314801590611a77575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000000000000000000000000000000000000000000000169063e985e9c590604401602060405180830381865afa158015611a51573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a7591906151ae565b155b15611ab057611a946000805160206156ec83398151915283613365565b3360405163168ab55d60e31b81526004016107bb929190614f97565b6040516323b872dd60e01b81526001600160a01b038281166004830152306024830152604482018490527f000000000000000000000000000000000000000000000000000000000000000016906323b872dd90606401600060405180830381600087803b158015611b2057600080fd5b505af1158015611b34573d6000803e3d6000fd5b5050604051630a3b53db60e21b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001692506328ed4f6c9150611b869085903090600401614f97565b600060405180830381600087803b158015611ba057600080fd5b505af1158015611bb4573d6000803e3d6000fd5b5050604051636b727d4360e11b8152600481018590526276a70092507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316915063d6e4fa8690602401602060405180830381865afa158015611c22573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c469190615015565b611c509190615044565b9250611c9988888080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508a9250505061ffff881686886131fa565b505095945050505050565b6001600160a01b0382163303611d0e5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084016107bb565b3360008181526002602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b3360009081526004602052604081205460ff16611da95760405162461bcd60e51b81526004016107bb906151db565b60008787604051611dbb9291906151cb565b604051908190038120633f2891eb60e21b8252600482018190523060248301526044820187905291507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063fca247ac906064016020604051808303816000875af1158015611e37573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e5b9190615015565b9150611eb088888080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508a9250505061ffff8616611eaa6276a70087615044565b886131fa565b509695505050505050565b600080611ec784610800565b50841663ffffffff908116908516149250505092915050565b611ee861330b565b6007546001600160a01b0316156120085760075460405163a22cb46560e01b81526001600160a01b039182166004820152600060248201527f00000000000000000000000000000000000000000000000000000000000000009091169063a22cb46590604401600060405180830381600087803b158015611f6857600080fd5b505af1158015611f7c573d6000803e3d6000fd5b505060075460405163a22cb46560e01b81526001600160a01b039182166004820152600060248201527f0000000000000000000000000000000000000000000000000000000000000000909116925063a22cb4659150604401600060405180830381600087803b158015611fef57600080fd5b505af1158015612003573d6000803e3d6000fd5b505050505b600780546001600160a01b0319166001600160a01b038316908117909155156121355760075460405163a22cb46560e01b81526001600160a01b039182166004820152600160248201527f00000000000000000000000000000000000000000000000000000000000000009091169063a22cb46590604401600060405180830381600087803b15801561209a57600080fd5b505af11580156120ae573d6000803e3d6000fd5b505060075460405163a22cb46560e01b81526001600160a01b039182166004820152600160248201527f0000000000000000000000000000000000000000000000000000000000000000909116925063a22cb4659150604401600060405180830381600087803b15801561212157600080fd5b505af1158015611258573d6000803e3d6000fd5b50565b3360009081526004602052604081205460ff166121675760405162461bcd60e51b81526004016107bb906151db565b60006121816000805160206156ec83398151915285613365565b60405163c475abff60e01b815260048101869052602481018590529091506000906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063c475abff906044016020604051808303816000875af11580156121f5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122199190615015565b6040516331a9108f60e11b8152600481018790529091507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690636352211e90602401602060405180830381865afa92505050801561229d575060408051601f3d908101601f1916820190925261229a91810190615191565b60015b6122aa5791506107fa9050565b6001600160a01b0381163014158061235457506040516302571be360e01b81526004810184905230906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906302571be390602401602060405180830381865afa158015612324573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123489190615191565b6001600160a01b031614155b15612363575091506107fa9050565b5060006123736276a70083615044565b60008481526001602052604090205490915060a081901c61239685838386613b4d565b50919695505050505050565b6000866123af81336114cd565b6123d057803360405163168ab55d60e31b81526004016107bb929190614f97565b600087876040516123e29291906151cb565b604051809103902090506123f68982613365565b92506124028984613391565b61240c83866134cf565b600061244f8a858b8b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061350292505050565b905061245d8a8588886135cf565b945061246884613615565b612517576040516306ab592360e01b8152600481018b9052602481018390523060448201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906306ab5923906064016020604051808303816000875af11580156124e0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125049190615015565b506125128482898989613ca3565b61255d565b61255d8a858b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508d92508c91508b9050613705565b5050509695505050505050565b60006125b0600086868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509293925050613ce59050565b6007549091506001600160a01b03166125dc5760405163093075b560e21b815260040160405180910390fd5b6125e681336114cd565b61260757803360405163168ab55d60e31b81526004016107bb929190614f97565b6000808061261484610800565b91945092509050600061262685610870565b905061263185613da4565b600760009054906101000a90046001600160a01b03166001600160a01b0316639198c2768a8a878787878e8e6040518963ffffffff1660e01b815260040161268098979695949392919061524c565b600060405180830381600087803b15801561269a57600080fd5b505af11580156126ae573d6000803e3d6000fd5b50505050505050505050505050565b836126c881336114cd565b6126e957803360405163168ab55d60e31b81526004016107bb929190614f97565b84601c60006126f783610800565b5091505063ffffffff82821616156127255760405163a2a7201360e01b8152600481018490526024016107bb565b60405163cf40882360e01b8152600481018990523060248201526001600160a01b0387811660448301526001600160401b03871660648301527f0000000000000000000000000000000000000000000000000000000000000000169063cf40882390608401600060405180830381600087803b1580156127a457600080fd5b505af11580156127b8573d6000803e3d6000fd5b5050506001600160a01b038816905061281f5760006127d689610800565b509150506201ffff196202000082160161280e57604051632ca49b0d60e11b81526001600160a01b03891660048201526024016107bb565b612819896000613bb3565b5061191e565b600061282a896116b0565b905061284c81898b60001c600160405180602001604052806000815250613e44565b505050505050505050565b6128618383613365565b61286b81336114cd565b61288c57803360405163168ab55d60e31b81526004016107bb929190614f97565b7f6c32148f748aba23997146d7fe89e962e3cc30271290fb96f5f4337756c03b5284016128cc5760405163615a470360e01b815260040160405180910390fd5b6001600160a01b03821615806128ea57506001600160a01b03821630145b1561291357604051632ca49b0d60e11b81526001600160a01b03831660048201526024016107bb565b6116aa6118948585613365565b60008061292d8484613365565b9050600061293a82613615565b90506000805160206156ec833981519152851461295a5791506107fa9050565b6040516331a9108f60e11b8152600481018590527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690636352211e90602401602060405180830381865afa9250505080156129db575060408051601f3d908101601f191682019092526129d891810190615191565b60015b6129ea576000925050506107fa565b6001600160a01b0316301492506107fa915050565b612a0761330b565b6001600160a01b038216600081815260046020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf8791015b60405180910390a25050565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205460ff1690565b600080612adc600087878080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509293925050613f269050565b915091506000612b258288888080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509293925050613ce59050565b90506000612b338285613365565b6000818152600660205260409020909150612b4f888a836152fa565b507f6c32148f748aba23997146d7fe89e962e3cc30271290fb96f5f4337756c03b528201612b905760405163615a470360e01b815260040160405180910390fd5b6040516302571be360e01b8152600481018290526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906302571be390602401602060405180830381865afa158015612bf8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612c1c9190615191565b90506001600160a01b0381163314801590612cc4575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000000000000000000000000000000000000000000000169063e985e9c590604401602060405180830381865afa158015612c9e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612cc291906151ae565b155b15612ce657813360405163168ab55d60e31b81526004016107bb929190614f97565b6001600160a01b03861615612d7657604051630c4b7b8560e11b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690631896f70a90612d439085908a90600401614f97565b600060405180830381600087803b158015612d5d57600080fd5b505af1158015612d71573d6000803e3d6000fd5b505050505b604051635b0fc9c360e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690635b0fc9c390612dc49085903090600401614f97565b600060405180830381600087803b158015612dde57600080fd5b505af1158015612df2573d6000803e3d6000fd5b5050505061284c828a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201829052508d93509150819050613ca3565b6001600160a01b038416612e5f5760405162461bcd60e51b81526004016107bb906150a5565b6001600160a01b038516331480612e7b5750612e7b8533612a67565b612ed95760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2063616c6c6572206973206e6f74206f776e6572206e6f7260448201526808185c1c1c9bdd995960ba1b60648201526084016107bb565b6112588585858585613e44565b612eee61330b565b6001600160a01b038116612f535760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107bb565b61213581613b63565b60008181526006602052604081208054829190612f789061506b565b80601f0160208091040260200160405190810160405280929190818152602001828054612fa49061506b565b8015612ff15780601f10612fc657610100808354040283529160200191612ff1565b820191906000526020600020905b815481529060010190602001808311612fd457829003601f168201915b50505050509050805160000361300a5750600092915050565b6000806130178382613f26565b909250905060006130288483613ce5565b905061096b8184612920565b60008042836001600160401b031610156130615761ffff196201000085160161305c57600094505b600093505b50929391925050565b60006001600160e01b03198216636cdb3d1360e11b148061309b57506001600160e01b031982166303a24d0760e21b145b806107fa57506301ffc9a760e01b6001600160e01b03198316146107fa565b60006130c5826116b0565b9050806001600160a01b0316836001600160a01b0316036131325760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084016107bb565b336001600160a01b038216148061314e575061314e8133612a67565b6131c05760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016107bb565b6108f68383613fdd565b6000620200008381161480156108ae5750426131e96276a700846153b9565b6001600160401b0316109392505050565b84516020860120600061321b6000805160206156ec83398151915283613365565b9050600061324488604051806040016040528060058152602001626cae8d60e31b81525061404b565b600083815260066020526040902090915061325f82826153d9565b50613272828289620300008a1789613ca3565b6001600160a01b0384161561191e57604051630c4b7b8560e11b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690631896f70a906132cf9085908890600401614f97565b600060405180830381600087803b1580156132e957600080fd5b505af11580156132fd573d6000803e3d6000fd5b505050505050505050505050565b6000546001600160a01b031633146118005760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107bb565b604080516020808201949094528082019290925280518083038201815260609092019052805191012090565b6000808061339e84610800565b91945092509050426001600160401b0382161080801561346157506001600160a01b038416158061346157506040516302571be360e01b8152600481018690526000906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906302571be390602401602060405180830381865afa158015613432573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906134569190615191565b6001600160a01b0316145b156134a057600061347187610800565b50915050602081161561349a5760405163a2a7201360e01b8152600481018790526024016107bb565b506134c7565b620100008316156134c75760405163a2a7201360e01b8152600481018690526024016107bb565b505050505050565b63fffdffff81811763ffffffff16146134fe5760405163a2a7201360e01b8152600481018390526024016107bb565b5050565b606060006135ab836006600088815260200190815260200160002080546135289061506b565b80601f01602080910402602001604051908101604052809291908181526020018280546135549061506b565b80156135a15780601f10613576576101008083540402835291602001916135a1565b820191906000526020600020905b81548152906001019060200180831161358457829003601f168201915b505050505061404b565b60008581526006602052604090209091506135c682826153d9565b50949350505050565b6000806135db85610800565b925050506000806135ee8860001c610800565b92509250506135fe878784613a0f565b613609858483613a4a565b98975050505050505050565b600080613621836116b0565b6001600160a01b0316141580156107fa57506040516302571be360e01b81526004810183905230906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906302571be390602401602060405180830381865afa15801561369a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906136be9190615191565b6001600160a01b03161492915050565b600086815260066020526040812080546136ed9187916135289061506b565b90506136fc8682868686613ca3565b50505050505050565b6000808061371288610800565b925092509250600061373c88600660008d815260200190815260200160002080546135289061506b565b60008a81526006602052604090208054919250906137599061506b565b905060000361377c57600089815260066020526040902061377a82826153d9565b505b61378b89858886178589613a90565b6001600160a01b0387166137a9576137a4896000613bb3565b610ad5565b610ad584888b60001c600160405180602001604052806000815250613e44565b6201ffff19620200008316016137e9576137e66276a700826153b9565b90505b42816001600160401b03161015613822576201000082161561381d5760405162461bcd60e51b81526004016107bb90615100565b613847565b60048216156138475760405163a2a7201360e01b8152600481018490526024016107bb565b604082166000036108f6575050600090815260036020526040902080546001600160a01b0319169055565b60c0816001600160401b0316901b60a08363ffffffff16901b846001600160a01b03161717600160008681526020019081526020016000208190555050505050565b6001600160a01b0384163b156134c75760405163bc197c8160e01b81526001600160a01b0385169063bc197c81906138f89089908990889088908890600401615498565b6020604051808303816000875af1925050508015613933575060408051601f3d908101601f19168201909252613930918101906154ea565b60015b6139df5761393f615507565b806308c379a0036139785750613953615523565b8061395e575061397a565b8060405162461bcd60e51b81526004016107bb9190614514565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e20455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b60648201526084016107bb565b6001600160e01b0319811663bc197c8160e01b146136fc5760405162461bcd60e51b81526004016107bb906155ac565b63ffff00008216158015906001831615908290613a295750805b156112585760405163a2a7201360e01b8152600481018690526024016107bb565b6000816001600160401b0316846001600160401b03161115613a6a578193505b826001600160401b0316846001600160401b03161015613a88578293505b509192915050565b613a9c85858584613b4d565b60405163ffffffff8416815285907f39873f00c80f4f94b7bd1594aebcf650f003545b74824d57ddf4939e3ff3a34b9060200160405180910390a2816001600160401b0316816001600160401b03161115611258576040516001600160401b038216815285907ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b132906020015b60405180910390a25050505050565b600080613b4383610800565b5090949350505050565b613b5784836140c2565b6116aa84848484613872565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b613bbe826001611ebb565b15613bdf5760405163a2a7201360e01b8152600481018390526024016107bb565b613be882613da4565b604051635b0fc9c360e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690635b0fc9c390613c369085908590600401614f97565b600060405180830381600087803b158015613c5057600080fd5b505af1158015613c64573d6000803e3d6000fd5b50506040516001600160a01b03841681528492507fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c49150602001612a5b565b613caf858484846140fb565b847f8ce7013e8abebc55c3890a68f5a27c67c3f7efa64e584de5fb22363c606fd34085858585604051613b2894939291906155f4565b6000806000613cf48585613f26565b909250905081613d665760018551613d0c919061563b565b8414613d5a5760405162461bcd60e51b815260206004820152601d60248201527f6e616d65686173683a204a756e6b20617420656e64206f66206e616d6500000060448201526064016107bb565b50600091506107fa9050565b613d708582613ce5565b6040805160208101929092528101839052606001604051602081830303815290604052805190602001209250505092915050565b60008181526001602052604090205460a081901c60c082901c613dc8838383613034565b600086815260036020526040812080546001600160a01b0319169055909350613df5915085908484613872565b60408051858152600160208201526000916001600160a01b0386169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b6000806000613e5286610800565b925092509250613e638683836137c9565b846001148015613e845750876001600160a01b0316836001600160a01b0316145b613ea05760405162461bcd60e51b81526004016107bb90615100565b866001600160a01b0316836001600160a01b031603613ec157505050611258565b613ecd86888484613872565b60408051878152602081018790526001600160a01b03808a1692908b169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a461191e33898989898961416f565b60008083518310613f795760405162461bcd60e51b815260206004820152601e60248201527f726561644c6162656c3a20496e646578206f7574206f6620626f756e6473000060448201526064016107bb565b6000848481518110613f8d57613f8d6150ea565b016020015160f81c90508015613fb957613fb285613fac86600161564e565b8361422a565b9250613fbe565b600092505b613fc8818561564e565b613fd390600161564e565b9150509250929050565b600081815260036020526040902080546001600160a01b0319166001600160a01b0384169081179091558190614012826116b0565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b606060018351101561407057604051631406d65b60e11b815260040160405180910390fd5b60ff83511115614095578260405163e3ba295f60e01b81526004016107bb9190614514565b825183836040516020016140ab93929190615661565b604051602081830303815290604052905092915050565b61ffff8116158015906140da57506201000181811614155b156134fe5760405163a2a7201360e01b8152600481018390526024016107bb565b61410584836140c2565b6000848152600160205260409020546001600160a01b038116156141635761412c85613da4565b6040516000815285907fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c49060200160405180910390a25b6112588585858561424e565b6001600160a01b0384163b156134c75760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e61906141b390899089908890889088906004016156a6565b6020604051808303816000875af19250505080156141ee575060408051601f3d908101601f191682019092526141eb918101906154ea565b60015b6141fa5761393f615507565b6001600160e01b0319811663f23a6e6160e01b146136fc5760405162461bcd60e51b81526004016107bb906155ac565b8251600090614239838561564e565b111561424457600080fd5b5091016020012090565b836000808061425c84610800565b9194509250905063ffff000082166001600160401b038087169083161115614282578195505b42826001600160401b03161061429757958617955b6001600160a01b038416156142ee5760405162461bcd60e51b815260206004820152601f60248201527f455243313135353a206d696e74206f66206578697374696e6720746f6b656e0060448201526064016107bb565b6001600160a01b03881661434e5760405162461bcd60e51b815260206004820152602160248201527f455243313135353a206d696e7420746f20746865207a65726f206164647265736044820152607360f81b60648201526084016107bb565b306001600160a01b038916036143c35760405162461bcd60e51b815260206004820152603460248201527f455243313135353a206e65774f776e65722063616e6e6f74206265207468652060448201527313985b5955dc985c1c195c8818dbdb9d1c9858dd60621b60648201526084016107bb565b6143cf85898989613872565b60408051868152600160208201526001600160a01b038a169160009133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a461284c3360008a8860016040518060200160405280600081525061416f565b6001600160a01b038116811461213557600080fd5b6000806040838503121561445f57600080fd5b823561446a81614437565b946020939093013593505050565b60006020828403121561448a57600080fd5b5035919050565b6001600160e01b03198116811461213557600080fd5b6000602082840312156144b957600080fd5b81356108ae81614491565b60005b838110156144df5781810151838201526020016144c7565b50506000910152565b600081518084526145008160208601602086016144c4565b601f01601f19169290920160200192915050565b6020815260006108ae60208301846144e8565b6000806040838503121561453a57600080fd5b82359150602083013561454c81614437565b809150509250929050565b80356001600160401b038116811461456e57600080fd5b919050565b6000806040838503121561458657600080fd5b8235915061459660208401614557565b90509250929050565b60008083601f8401126145b157600080fd5b5081356001600160401b038111156145c857600080fd5b6020830191508360208285010111156145e057600080fd5b9250929050565b6000806000806000608086880312156145ff57600080fd5b853561460a81614437565b9450602086013561461a81614437565b93506040860135925060608601356001600160401b0381111561463c57600080fd5b6146488882890161459f565b969995985093965092949392505050565b60006020828403121561466b57600080fd5b81356108ae81614437565b634e487b7160e01b600052604160045260246000fd5b601f8201601f191681016001600160401b03811182821017156146b1576146b1614676565b6040525050565b60006001600160401b038211156146d1576146d1614676565b50601f01601f191660200190565b600082601f8301126146f057600080fd5b81356146fb816146b8565b604051614708828261468c565b82815285602084870101111561471d57600080fd5b82602086016020830137600092810160200192909252509392505050565b803563ffffffff8116811461456e57600080fd5b600080600080600080600060e0888a03121561476a57600080fd5b8735965060208801356001600160401b0381111561478757600080fd5b6147938a828b016146df565b96505060408801356147a481614437565b945060608801356147b481614437565b93506147c260808901614557565b92506147d060a0890161473b565b91506147de60c08901614557565b905092959891949750929550565b60006001600160401b0382111561480557614805614676565b5060051b60200190565b600082601f83011261482057600080fd5b8135602061482d826147ec565b60405161483a828261468c565b83815260059390931b850182019282810191508684111561485a57600080fd5b8286015b84811015611eb0578035835291830191830161485e565b600080600080600060a0868803121561488d57600080fd5b853561489881614437565b945060208601356148a881614437565b935060408601356001600160401b03808211156148c457600080fd5b6148d089838a0161480f565b945060608801359150808211156148e657600080fd5b6148f289838a0161480f565b9350608088013591508082111561490857600080fd5b50614915888289016146df565b9150509295509295909350565b6000806000806080858703121561493857600080fd5b843593506020850135925061494f6040860161473b565b915061495d60608601614557565b905092959194509250565b803561ffff8116811461456e57600080fd5b6000806040838503121561498d57600080fd5b8235915061459660208401614968565b600080604083850312156149b057600080fd5b82356001600160401b03808211156149c757600080fd5b818501915085601f8301126149db57600080fd5b813560206149e8826147ec565b6040516149f5828261468c565b83815260059390931b8501820192828101915089841115614a1557600080fd5b948201945b83861015614a3c578535614a2d81614437565b82529482019490820190614a1a565b96505086013592505080821115614a5257600080fd5b50613fd38582860161480f565b600081518084526020808501945080840160005b83811015614a8f57815187529582019590820190600101614a73565b509495945050505050565b6020815260006108ae6020830184614a5f565b600080600060608486031215614ac257600080fd5b8335614acd81614437565b92506020840135614add81614437565b929592945050506040919091013590565b600080600060608486031215614b0357600080fd5b8335925060208401359150614b1a60408501614557565b90509250925092565b600080600060608486031215614b3857600080fd5b833592506020840135614b4a81614437565b91506040840135614b5a81614437565b809150509250925092565b600080600080600060808688031215614b7d57600080fd5b85356001600160401b03811115614b9357600080fd5b614b9f8882890161459f565b9096509450506020860135614bb381614437565b9250614bc160408701614968565b91506060860135614bd181614437565b809150509295509295909350565b801515811461213557600080fd5b60008060408385031215614c0057600080fd5b8235614c0b81614437565b9150602083013561454c81614bdf565b60008060008060008060a08789031215614c3457600080fd5b86356001600160401b03811115614c4a57600080fd5b614c5689828a0161459f565b9097509550506020870135614c6a81614437565b9350604087013592506060870135614c8181614437565b9150614c8f60808801614968565b90509295509295509295565b60008060408385031215614cae57600080fd5b823591506145966020840161473b565b60008060408385031215614cd157600080fd5b50508035926020909101359150565b60008060008060008060a08789031215614cf957600080fd5b8635955060208701356001600160401b03811115614d1657600080fd5b614d2289828a0161459f565b9096509450506040870135614d3681614437565b9250614d446060880161473b565b9150614c8f60808801614557565b60008060008060408587031215614d6857600080fd5b84356001600160401b0380821115614d7f57600080fd5b614d8b8883890161459f565b90965094506020870135915080821115614da457600080fd5b50614db18782880161459f565b95989497509550505050565b60008060008060808587031215614dd357600080fd5b843593506020850135614de581614437565b9250604085013561494f81614437565b600080600060608486031215614e0a57600080fd5b83359250602084013591506040840135614b5a81614437565b60008060408385031215614e3657600080fd5b8235614e4181614437565b9150602083013561454c81614437565b60008060008060608587031215614e6757600080fd5b84356001600160401b03811115614e7d57600080fd5b614e898782880161459f565b9095509350506020850135614e9d81614437565b91506040850135614ead81614437565b939692955090935050565b600080600080600060a08688031215614ed057600080fd5b8535614edb81614437565b94506020860135614eeb81614437565b9350604086013592506060860135915060808601356001600160401b03811115614f1457600080fd5b614915888289016146df565b600060208284031215614f3257600080fd5b81516001600160401b03811115614f4857600080fd5b8201601f81018413614f5957600080fd5b8051614f64816146b8565b604051614f71828261468c565b828152866020848601011115614f8657600080fd5b61096b8360208301602087016144c4565b9182526001600160a01b0316602082015260400190565b60008060008060808587031215614fc457600080fd5b84356001600160401b03811115614fda57600080fd5b614fe6878288016146df565b9450506020850135614ff781614437565b925061500560408601614968565b91506060850135614ead81614437565b60006020828403121561502757600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b6001600160401b038181168382160190808211156150645761506461502e565b5092915050565b600181811c9082168061507f57607f821691505b60208210810361509f57634e487b7160e01b600052602260045260246000fd5b50919050565b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b60006001820161515c5761515c61502e565b5060010190565b6040815260006151766040830185614a5f565b82810360208401526151888185614a5f565b95945050505050565b6000602082840312156151a357600080fd5b81516108ae81614437565b6000602082840312156151c057600080fd5b81516108ae81614bdf565b8183823760009101908152919050565b60208082526028908201527f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f604082015267373a3937b63632b960c11b606082015260800190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60c08152600061526060c083018a8c615223565b6001600160a01b03898116602085015263ffffffff891660408501526001600160401b03881660608501528616608084015282810360a08401526152a5818587615223565b9b9a5050505050505050505050565b601f8211156108f657600081815260208120601f850160051c810160208610156152db5750805b601f850160051c820191505b818110156134c7578281556001016152e7565b6001600160401b0383111561531157615311614676565b6153258361531f835461506b565b836152b4565b6000601f84116001811461535957600085156153415750838201355b600019600387901b1c1916600186901b178355611258565b600083815260209020601f19861690835b8281101561538a578685013582556020948501946001909201910161536a565b50868210156153a75760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b6001600160401b038281168282160390808211156150645761506461502e565b81516001600160401b038111156153f2576153f2614676565b61540681615400845461506b565b846152b4565b602080601f83116001811461543b57600084156154235750858301515b600019600386901b1c1916600185901b1785556134c7565b600085815260208120601f198616915b8281101561546a5788860151825594840194600190910190840161544b565b50858210156154885787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6001600160a01b0386811682528516602082015260a0604082018190526000906154c490830186614a5f565b82810360608401526154d68186614a5f565b9050828103608084015261360981856144e8565b6000602082840312156154fc57600080fd5b81516108ae81614491565b600060033d11156155205760046000803e5060005160e01c5b90565b600060443d10156155315790565b6040516003193d81016004833e81513d6001600160401b03816024840111818411171561556057505050505090565b82850191508151818111156155785750505050505090565b843d87010160208285010111156155925750505050505090565b6155a16020828601018761468c565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b60808152600061560760808301876144e8565b6001600160a01b039590951660208301525063ffffffff9290921660408301526001600160401b0316606090910152919050565b818103818111156107fa576107fa61502e565b808201808211156107fa576107fa61502e565b60ff60f81b8460f81b168152600083516156828160018501602088016144c4565b8351908301906156998160018401602088016144c4565b0160010195945050505050565b6001600160a01b03868116825285166020820152604081018490526060810183905260a0608082018190526000906156e0908301846144e8565b97965050505050505056fe93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4aea164736f6c6343000811000a", + "bytecode": "0x60c060405234801562000010575f80fd5b5060405162005b1638038062005b168339810160408190526200003391620002ed565b8233620000408162000286565b6040516302571be360e01b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e260048201525f906001600160a01b038416906302571be390602401602060405180830381865afa158015620000a5573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620000cb91906200033e565b604051630f41a04d60e11b81526001600160a01b03848116600483015291925090821690631e83409a906024016020604051808303815f875af115801562000115573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906200013b919062000363565b505050506001600160a01b0383811660805282811660a052600580546001600160a01b031916918316919091179055600163fffeffff60a01b03197fafa26c20e8b3d9a2853d642cfe1021dae26242ffedfac91c97aab212c1a4b93b8190557fa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb495560408051808201909152600181525f6020808301829052908052600690527f54cdd369e4e8a8515e52ca72ec816c2101831ad1f18bf44102ed171459c9b4f89062000208908262000419565b506040805180820190915260058152626cae8d60e31b6020808301919091527f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae5f52600690527ffb9e8e321b8a5ec48f12a7b41f22c6e595d761285c9eb19d8dda7c99edf1b54f906200027c908262000419565b50505050620004e5565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b0381168114620002ea575f80fd5b50565b5f805f6060848603121562000300575f80fd5b83516200030d81620002d5565b60208501519093506200032081620002d5565b60408501519092506200033381620002d5565b809150509250925092565b5f602082840312156200034f575f80fd5b81516200035c81620002d5565b9392505050565b5f6020828403121562000374575f80fd5b5051919050565b634e487b7160e01b5f52604160045260245ffd5b600181811c90821680620003a457607f821691505b602082108103620003c357634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156200041457805f5260205f20601f840160051c81016020851015620003f05750805b601f840160051c820191505b8181101562000411575f8155600101620003fc565b50505b505050565b81516001600160401b038111156200043557620004356200037b565b6200044d816200044684546200038f565b84620003c9565b602080601f83116001811462000483575f84156200046b5750858301515b5f19600386901b1c1916600185901b178555620004dd565b5f85815260208120601f198616915b82811015620004b35788860151825594840194600190910190840162000492565b5085821015620004d157878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b60805160a051615528620005ee5f395f818161046901528181610acc01528181610b6e01528181610bf701528181611863015281816118f20152818161199e01528181611a6d01528181611ad901528181611b5901528181611d6701528181611e9d01528181611fc40152818161210e0152818161219101526128aa01525f81816104b601528181610a5801528181610d3e01528181610ec901528181610f750152818161127501528181611f1c015281816120440152818161223c015281816123e6015281816126a701528181612ad801528181612b8401528181612c3701528181612cb3015281816131a7015281816132f20152818161354d0152613ae401526155285ff3fe608060405234801561000f575f80fd5b5060043610610296575f3560e01c80636352211e11610161578063c93ab3fd116100ca578063e985e9c511610084578063e985e9c5146106c8578063eb8ae530146106db578063ed70554d146106ee578063f242432a1461070d578063f2fde38b14610720578063fd0cd0d914610733575f80fd5b8063c93ab3fd14610647578063cf4088231461065a578063d8c9921a1461066d578063d9a50c1214610680578063da8c229e14610693578063e0dba60f146106b5575f80fd5b8063a22cb4651161011b578063a22cb465146105d5578063a4014982146105e8578063adf4960a146105fb578063b6bcad261461060e578063c475abff14610621578063c658e08614610634575f80fd5b80636352211e146105595780636e5d6ad21461056c578063715018a6146105975780638b4dfa751461059f5780638cf8b41e146105b25780638da5cb5b146105c5575f80fd5b80631f4e1504116102035780633f15457f116101bd5780633f15457f146104b1578063402906fc146104d857806341415eab146105005780634e1273f41461051357806353095467146105335780635d3590d514610546575f80fd5b80631f4e15041461042b57806320c38e2b1461043e57806324c1af44146104515780632b20e397146104645780632eb2c2d61461048b57806333c69ea91461049e575f80fd5b80630e4cd725116102545780630e4cd725146103a05780630e89341c146103b357806314ab9038146103c6578063150b7a02146103d95780631534e177146104055780631896f70a14610418575f80fd5b8062fdd58e1461029a5780630178fe3f146102c057806301ffc9a71461030657806306fdde0314610329578063081812fc14610360578063095ea7b31461038b575b5f80fd5b6102ad6102a8366004614316565b610746565b6040519081526020015b60405180910390f35b6102d36102ce366004614340565b6107f0565b604080516001600160a01b03909416845263ffffffff90921660208401526001600160401b0316908201526060016102b7565b61031961031436600461436c565b61081f565b60405190151581526020016102b7565b6103536040518060400160405280600b81526020016a2730b6b2abb930b83832b960a91b81525081565b6040516102b791906143d4565b61037361036e366004614340565b61085e565b6040516001600160a01b0390911681526020016102b7565b61039e610399366004614316565b6108a0565b005b6103196103ae3660046143e6565b6108e5565b6103536103c1366004614340565b61095e565b61039e6103d436600461442f565b6109cc565b6103ec6103e736600461449d565b610ac0565b6040516001600160e01b031990911681526020016102b7565b61039e61041336600461450a565b610c96565b61039e6104263660046143e6565b610cc0565b600754610373906001600160a01b031681565b61035361044c366004614340565b610d75565b6102ad61045f3660046145f6565b610e0c565b6103737f000000000000000000000000000000000000000000000000000000000000000081565b61039e610499366004614717565b610fe7565b61039e6104ac3660046147bd565b61121a565b6103737f000000000000000000000000000000000000000000000000000000000000000081565b6104eb6104e6366004614811565b6113e6565b60405163ffffffff90911681526020016102b7565b61031961050e3660046143e6565b611480565b610526610521366004614832565b6114b8565b6040516102b79190614928565b600554610373906001600160a01b031681565b61039e61055436600461493a565b6115d7565b610373610567366004614340565b611655565b61057f61057a366004614978565b61165f565b6040516001600160401b0390911681526020016102b7565b61039e61178e565b61039e6105ad3660046149aa565b6117a1565b61057f6105c03660046149e9565b6118c0565b5f546001600160a01b0316610373565b61039e6105e3366004614a6b565b611c28565b6102ad6105f6366004614a97565b611cfd565b610319610609366004614b12565b611e38565b61039e61061c36600461450a565b611e5c565b6102ad61062f366004614b33565b61209e565b6102ad610642366004614b53565b6122fd565b61039e610655366004614bc0565b6124bd565b61039e610668366004614c26565b612605565b61039e61067b366004614c5b565b612794565b61031961068e366004614b33565b61285d565b6103196106a136600461450a565b60046020525f908152604090205460ff1681565b61039e6106c3366004614a6b565b612938565b6103196106d6366004614c86565b61299f565b61039e6106e9366004614cb2565b6129cc565b6102ad6106fc366004614340565b60016020525f908152604090205481565b61039e61071b366004614d15565b612d59565b61039e61072e36600461450a565b612e06565b610319610741366004614340565b612e7c565b5f6001600160a01b0383166107b65760405162461bcd60e51b815260206004820152602b60248201527f455243313135353a2062616c616e636520717565727920666f7220746865207a60448201526a65726f206164647265737360a81b60648201526084015b60405180910390fd5b5f6107c083611655565b9050836001600160a01b0316816001600160a01b0316036107e55760019150506107ea565b5f9150505b92915050565b5f8181526001602052604090205460a081901c60c082901c610813838383612f4d565b90959094509092509050565b5f6001600160e01b03198216631b05885b60e31b148061084f57506001600160e01b03198216630a85bd0160e11b145b806107ea57506107ea82612f80565b5f8061086983611655565b90506001600160a01b03811661088157505f92915050565b5f838152600360205260409020546001600160a01b03165b9392505050565b5f6108aa826107f0565b50915050603f1960408216016108d65760405163a2a7201360e01b8152600481018390526024016107ad565b6108e08383612fcf565b505050565b5f8080806108f2866107f0565b925092509250846001600160a01b0316836001600160a01b0316148061091d575061091d838661299f565b8061094157506001600160a01b0385166109368761085e565b6001600160a01b0316145b8015610954575061095282826130de565b155b9695505050505050565b6005546040516303a24d0760e21b8152600481018390526060916001600160a01b031690630e89341c906024015f60405180830381865afa1580156109a5573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526107ea9190810190614d78565b816109d78133611480565b6109f857803360405163168ab55d60e31b81526004016107ad929190614dea565b8260105f610a05836107f0565b5091505063ffffffff8282161615610a335760405163a2a7201360e01b8152600481018490526024016107ad565b604051630295720760e31b8152600481018790526001600160401b03861660248201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906314ab9038906044015b5f604051808303815f87803b158015610aa2575f80fd5b505af1158015610ab4573d5f803e3d5ffd5b50505050505050505050565b5f336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610b0a5760405163032634a760e31b815260040160405180910390fd5b5f808080610b1a86880188614e01565b83516020850120939750919550935091508890808214610b57576040516331970f3360e21b815260048101829052602481018390526044016107ad565b604051630a3b53db60e21b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906328ed4f6c90610ba59085903090600401614dea565b5f604051808303815f87803b158015610bbc575f80fd5b505af1158015610bce573d5f803e3d5ffd5b5050604051636b727d4360e11b8152600481018d90525f92506276a70091506001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063d6e4fa8690602401602060405180830381865afa158015610c3c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c609190614e64565b610c6a9190614e8f565b9050610c7d87878761ffff16848861310d565b50630a85bd0160e11b9c9b505050505050505050505050565b610c9e613215565b600580546001600160a01b0319166001600160a01b0392909216919091179055565b81610ccb8133611480565b610cec57803360405163168ab55d60e31b81526004016107ad929190614dea565b8260085f610cf9836107f0565b5091505063ffffffff8282161615610d275760405163a2a7201360e01b8152600481018490526024016107ad565b604051630c4b7b8560e11b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690631896f70a90610a8b9089908990600401614dea565b60066020525f908152604090208054610d8d90614eb6565b80601f0160208091040260200160405190810160405280929190818152602001828054610db990614eb6565b8015610e045780601f10610ddb57610100808354040283529160200191610e04565b820191905f5260205f20905b815481529060010190602001808311610de757829003601f168201915b505050505081565b5f87610e188133611480565b610e3957803360405163168ab55d60e31b81526004016107ad929190614dea565b87516020890120610e4a8a8261326e565b9250610e568a8461329a565b610e6083866133d3565b610e6b8a848b613406565b50610e788a8487876134cd565b9350610e8383613510565b610f33576040516305ef2c7f60e41b8152600481018b9052602481018290523060448201526001600160a01b0388811660648301526001600160401b03881660848301527f00000000000000000000000000000000000000000000000000000000000000001690635ef2c7f09060a4015f604051808303815f87803b158015610f0a575f80fd5b505af1158015610f1c573d5f803e3d5ffd5b50505050610f2e8a848b8b89896135c6565b610fda565b6040516305ef2c7f60e41b8152600481018b9052602481018290523060448201526001600160a01b0388811660648301526001600160401b03881660848301527f00000000000000000000000000000000000000000000000000000000000000001690635ef2c7f09060a4015f604051808303815f87803b158015610fb6575f80fd5b505af1158015610fc8573d5f803e3d5ffd5b50505050610fda8a848b8b89896135fc565b5050979650505050505050565b81518351146110495760405162461bcd60e51b815260206004820152602860248201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206044820152670dad2e6dac2e8c6d60c31b60648201526084016107ad565b6001600160a01b03841661106f5760405162461bcd60e51b81526004016107ad90614eee565b6001600160a01b03851633148061108b575061108b853361299f565b6110f25760405162461bcd60e51b815260206004820152603260248201527f455243313135353a207472616e736665722063616c6c6572206973206e6f74206044820152711bdddb995c881b9bdc88185c1c1c9bdd995960721b60648201526084016107ad565b5f5b83518110156111ad575f84828151811061111057611110614f33565b602002602001015190505f84838151811061112d5761112d614f33565b602002602001015190505f805f611143856107f0565b9250925092506111548583836136b6565b83600114801561117557508a6001600160a01b0316836001600160a01b0316145b6111915760405162461bcd60e51b81526004016107ad90614f47565b61119d858b848461375d565b50505050508060010190506110f4565b50836001600160a01b0316856001600160a01b0316336001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516111fd929190614f91565b60405180910390a461121333868686868661379d565b5050505050565b5f611225858561326e565b905061123181846133d3565b5f808061123d846107f0565b919450925090506001600160a01b03831615806112ea57506040516302571be360e01b81526004810185905230906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906302571be390602401602060405180830381865afa1580156112ba573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112de9190614fbe565b6001600160a01b031614155b1561130857604051635374b59960e01b815260040160405180910390fd5b5f806113138a6107f0565b90935091508a905061134f576113298633611480565b61134a57853360405163168ab55d60e31b81526004016107ad929190614dea565b61137a565b6113598a33611480565b61137a57893360405163168ab55d60e31b81526004016107ad929190614dea565b6113858689846138f7565b611390878483613932565b9650620100008416158015906113b457508363ffffffff1688851763ffffffff1614155b156113d55760405163a2a7201360e01b8152600481018790526024016107ad565b96831796610ab486868a868b613977565b5f826113f28133611480565b61141357803360405163168ab55d60e31b81526004016107ad929190614dea565b8360025f611420836107f0565b5091505063ffffffff828216161561144e5760405163a2a7201360e01b8152600481018490526024016107ad565b5f808061145a8a6107f0565b9250925092506114738a84848c61ffff16178485613977565b5098975050505050505050565b5f80808061148d866107f0565b925092509250846001600160a01b0316836001600160a01b031614806109415750610941838661299f565b6060815183511461151d5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b60648201526084016107ad565b5f83516001600160401b0381111561153757611537614525565b604051908082528060200260200182016040528015611560578160200160208202803683370190505b5090505f5b84518110156115cf576115aa85828151811061158357611583614f33565b602002602001015185838151811061159d5761159d614f33565b6020026020010151610746565b8282815181106115bc576115bc614f33565b6020908102919091010152600101611565565b509392505050565b6115df613215565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af115801561162b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061164f9190614fd9565b50505050565b5f6107ea82613a1e565b5f8061166b858561326e565b905061167681613510565b61169357604051635374b59960e01b815260040160405180910390fd5b5f61169e86336108e5565b9050801580156116b557506116b38233611480565b155b156116d757813360405163168ab55d60e31b81526004016107ad929190614dea565b5f80806116e3856107f0565b925092509250831580156116fa5750620400008216155b1561171b5760405163a2a7201360e01b8152600481018690526024016107ad565b5f6117258a6107f0565b92505050611734888383613932565b97506117428685858b613a33565b6040516001600160401b038916815286907ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b1329060200160405180910390a2509598975050505050505050565b611796613215565b61179f5f613a49565b565b6117b85f805160206154fc8339815191528461326e565b6117c28133611480565b6117e357803360405163168ab55d60e31b81526004016107ad929190614dea565b306001600160a01b0384160361181757604051632ca49b0d60e11b81526001600160a01b03841660048201526024016107ad565b6118376118315f805160206154fc8339815191528661326e565b83613a98565b604051632142170760e11b81523060048201526001600160a01b038481166024830152604482018690527f000000000000000000000000000000000000000000000000000000000000000016906342842e0e906064015f604051808303815f87803b1580156118a4575f80fd5b505af11580156118b6573d5f803e3d5ffd5b5050505050505050565b5f8086866040516118d2929190614ff4565b6040519081900381206331a9108f60e11b82526004820181905291505f907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690636352211e90602401602060405180830381865afa15801561193f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119639190614fbe565b90506001600160a01b0381163314801590611a09575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000000000000000000000000000000000000000000000169063e985e9c590604401602060405180830381865afa1580156119e3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a079190614fd9565b155b15611a4157611a255f805160206154fc8339815191528361326e565b3360405163168ab55d60e31b81526004016107ad929190614dea565b6040516323b872dd60e01b81526001600160a01b038281166004830152306024830152604482018490527f000000000000000000000000000000000000000000000000000000000000000016906323b872dd906064015f604051808303815f87803b158015611aae575f80fd5b505af1158015611ac0573d5f803e3d5ffd5b5050604051630a3b53db60e21b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001692506328ed4f6c9150611b129085903090600401614dea565b5f604051808303815f87803b158015611b29575f80fd5b505af1158015611b3b573d5f803e3d5ffd5b5050604051636b727d4360e11b8152600481018590526276a70092507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316915063d6e4fa8690602401602060405180830381865afa158015611ba7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611bcb9190614e64565b611bd59190614e8f565b9250611c1d88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508a9250505061ffff8816868861310d565b505095945050505050565b6001600160a01b0382163303611c925760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084016107ad565b335f8181526002602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b335f9081526004602052604081205460ff16611d2b5760405162461bcd60e51b81526004016107ad90615003565b5f8787604051611d3c929190614ff4565b604051908190038120633f2891eb60e21b8252600482018190523060248301526044820187905291507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063fca247ac906064016020604051808303815f875af1158015611db5573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611dd99190614e64565b9150611e2d88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508a9250505061ffff8616611e276276a70087614e8f565b8861310d565b509695505050505050565b5f80611e43846107f0565b50841663ffffffff908116908516149250505092915050565b611e64613215565b6007546001600160a01b031615611f785760075460405163a22cb46560e01b81526001600160a01b0391821660048201525f60248201527f00000000000000000000000000000000000000000000000000000000000000009091169063a22cb465906044015f604051808303815f87803b158015611ee0575f80fd5b505af1158015611ef2573d5f803e3d5ffd5b505060075460405163a22cb46560e01b81526001600160a01b0391821660048201525f60248201527f0000000000000000000000000000000000000000000000000000000000000000909116925063a22cb46591506044015f604051808303815f87803b158015611f61575f80fd5b505af1158015611f73573d5f803e3d5ffd5b505050505b600780546001600160a01b0319166001600160a01b0383169081179091551561209b5760075460405163a22cb46560e01b81526001600160a01b039182166004820152600160248201527f00000000000000000000000000000000000000000000000000000000000000009091169063a22cb465906044015f604051808303815f87803b158015612007575f80fd5b505af1158015612019573d5f803e3d5ffd5b505060075460405163a22cb46560e01b81526001600160a01b039182166004820152600160248201527f0000000000000000000000000000000000000000000000000000000000000000909116925063a22cb46591506044015f604051808303815f87803b158015612089575f80fd5b505af1158015611213573d5f803e3d5ffd5b50565b335f9081526004602052604081205460ff166120cc5760405162461bcd60e51b81526004016107ad90615003565b5f6120e45f805160206154fc8339815191528561326e565b60405163c475abff60e01b815260048101869052602481018590529091505f906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063c475abff906044016020604051808303815f875af1158015612154573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906121789190614e64565b6040516331a9108f60e11b8152600481018790529091507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690636352211e90602401602060405180830381865afa9250505080156121fc575060408051601f3d908101601f191682019092526121f991810190614fbe565b60015b6122095791506107ea9050565b6001600160a01b038116301415806122b157506040516302571be360e01b81526004810184905230906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906302571be390602401602060405180830381865afa158015612281573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906122a59190614fbe565b6001600160a01b031614155b156122c0575091506107ea9050565b505f6122cf6276a70083614e8f565b5f8481526001602052604090205490915060a081901c6122f185838386613a33565b50919695505050505050565b5f866123098133611480565b61232a57803360405163168ab55d60e31b81526004016107ad929190614dea565b5f878760405161233b929190614ff4565b6040518091039020905061234f898261326e565b925061235b898461329a565b61236583866133d3565b5f6123a68a858b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061340692505050565b90506123b48a8588886134cd565b94506123bf84613510565b61246b576040516306ab592360e01b8152600481018b9052602481018390523060448201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906306ab5923906064016020604051808303815f875af1158015612434573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906124589190614e64565b506124668482898989613b83565b6124b0565b6124b08a858b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508d92508c91508b90506135fc565b5050509695505050505050565b5f6125005f86868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613bc59050565b6007549091506001600160a01b031661252c5760405163093075b560e21b815260040160405180910390fd5b6125368133611480565b61255757803360405163168ab55d60e31b81526004016107ad929190614dea565b5f8080612563846107f0565b919450925090505f6125748561085e565b905061257f85613c81565b60075f9054906101000a90046001600160a01b03166001600160a01b0316639198c2768a8a878787878e8e6040518963ffffffff1660e01b81526004016125cd989796959493929190615073565b5f604051808303815f87803b1580156125e4575f80fd5b505af11580156125f6573d5f803e3d5ffd5b50505050505050505050505050565b836126108133611480565b61263157803360405163168ab55d60e31b81526004016107ad929190614dea565b84601c5f61263e836107f0565b5091505063ffffffff828216161561266c5760405163a2a7201360e01b8152600481018490526024016107ad565b60405163cf40882360e01b8152600481018990523060248201526001600160a01b0387811660448301526001600160401b03871660648301527f0000000000000000000000000000000000000000000000000000000000000000169063cf408823906084015f604051808303815f87803b1580156126e8575f80fd5b505af11580156126fa573d5f803e3d5ffd5b5050506001600160a01b038816905061275f575f612717896107f0565b509150506201ffff196202000082160161274f57604051632ca49b0d60e11b81526001600160a01b03891660048201526024016107ad565b612759895f613a98565b506118b6565b5f61276989611655565b905061278981898b5f1c600160405180602001604052805f815250613d1e565b505050505050505050565b61279e838361326e565b6127a88133611480565b6127c957803360405163168ab55d60e31b81526004016107ad929190614dea565b7f6c32148f748aba23997146d7fe89e962e3cc30271290fb96f5f4337756c03b5284016128095760405163615a470360e01b815260040160405180910390fd5b6001600160a01b038216158061282757506001600160a01b03821630145b1561285057604051632ca49b0d60e11b81526001600160a01b03831660048201526024016107ad565b61164f611831858561326e565b5f80612869848461326e565b90505f61287582613510565b90505f805160206154fc83398151915285146128945791506107ea9050565b6040516331a9108f60e11b8152600481018590527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690636352211e90602401602060405180830381865afa925050508015612915575060408051601f3d908101601f1916820190925261291291810190614fbe565b60015b612923575f925050506107ea565b6001600160a01b0316301492506107ea915050565b612940613215565b6001600160a01b0382165f81815260046020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf8791015b60405180910390a25050565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205460ff1690565b5f80612a105f87878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613dfe9050565b915091505f612a578288888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613bc59050565b90505f612a64828561326e565b5f818152600660205260409020909150612a7f888a8361511e565b507f6c32148f748aba23997146d7fe89e962e3cc30271290fb96f5f4337756c03b528201612ac05760405163615a470360e01b815260040160405180910390fd5b6040516302571be360e01b8152600481018290525f907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906302571be390602401602060405180830381865afa158015612b25573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612b499190614fbe565b90506001600160a01b0381163314801590612bef575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000000000000000000000000000000000000000000000169063e985e9c590604401602060405180830381865afa158015612bc9573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612bed9190614fd9565b155b15612c1157813360405163168ab55d60e31b81526004016107ad929190614dea565b6001600160a01b03861615612c9c57604051630c4b7b8560e11b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690631896f70a90612c6e9085908a90600401614dea565b5f604051808303815f87803b158015612c85575f80fd5b505af1158015612c97573d5f803e3d5ffd5b505050505b604051635b0fc9c360e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690635b0fc9c390612cea9085903090600401614dea565b5f604051808303815f87803b158015612d01575f80fd5b505af1158015612d13573d5f803e3d5ffd5b50505050612789828a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201829052508d93509150819050613b83565b6001600160a01b038416612d7f5760405162461bcd60e51b81526004016107ad90614eee565b6001600160a01b038516331480612d9b5750612d9b853361299f565b612df95760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2063616c6c6572206973206e6f74206f776e6572206e6f7260448201526808185c1c1c9bdd995960ba1b60648201526084016107ad565b6112138585858585613d1e565b612e0e613215565b6001600160a01b038116612e735760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107ad565b61209b81613a49565b5f8181526006602052604081208054829190612e9790614eb6565b80601f0160208091040260200160405190810160405280929190818152602001828054612ec390614eb6565b8015612f0e5780601f10612ee557610100808354040283529160200191612f0e565b820191905f5260205f20905b815481529060010190602001808311612ef157829003601f168201915b5050505050905080515f03612f2557505f92915050565b5f80612f318382613dfe565b90925090505f612f418483613bc5565b9050610954818461285d565b5f8042836001600160401b03161015612f775761ffff1962010000851601612f73575f94505b5f93505b50929391925050565b5f6001600160e01b03198216636cdb3d1360e11b1480612fb057506001600160e01b031982166303a24d0760e21b145b806107ea57506301ffc9a760e01b6001600160e01b03198316146107ea565b5f612fd982611655565b9050806001600160a01b0316836001600160a01b0316036130465760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084016107ad565b336001600160a01b03821614806130625750613062813361299f565b6130d45760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016107ad565b6108e08383613eb2565b5f620200008381161480156108995750426130fc6276a700846151d7565b6001600160401b0316109392505050565b845160208601205f61312c5f805160206154fc8339815191528361326e565b90505f61315488604051806040016040528060058152602001626cae8d60e31b815250613f1f565b5f83815260066020526040902090915061316e82826151f7565b50613181828289620300008a1789613b83565b6001600160a01b038416156118b657604051630c4b7b8560e11b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690631896f70a906131de9085908890600401614dea565b5f604051808303815f87803b1580156131f5575f80fd5b505af1158015613207573d5f803e3d5ffd5b505050505050505050505050565b5f546001600160a01b0316331461179f5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107ad565b604080516020808201949094528082019290925280518083038201815260609092019052805191012090565b5f80806132a6846107f0565b91945092509050426001600160401b0382161080801561336657506001600160a01b038416158061336657506040516302571be360e01b8152600481018690525f906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906302571be390602401602060405180830381865afa158015613337573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061335b9190614fbe565b6001600160a01b0316145b156133a4575f613375876107f0565b50915050602081161561339e5760405163a2a7201360e01b8152600481018790526024016107ad565b506133cb565b620100008316156133cb5760405163a2a7201360e01b8152600481018690526024016107ad565b505050505050565b63fffdffff81811763ffffffff16146134025760405163a2a7201360e01b8152600481018390526024016107ad565b5050565b60605f6134aa8360065f8881526020019081526020015f20805461342990614eb6565b80601f016020809104026020016040519081016040528092919081815260200182805461345590614eb6565b80156134a05780601f10613477576101008083540402835291602001916134a0565b820191905f5260205f20905b81548152906001019060200180831161348357829003601f168201915b5050505050613f1f565b5f8581526006602052604090209091506134c482826151f7565b50949350505050565b5f806134d8856107f0565b925050505f806134e9885f1c6107f0565b92509250506134f98787846138f7565b613504858483613932565b98975050505050505050565b5f8061351b83611655565b6001600160a01b0316141580156107ea57506040516302571be360e01b81526004810183905230906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906302571be390602401602060405180830381865afa158015613592573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906135b69190614fbe565b6001600160a01b03161492915050565b5f86815260066020526040812080546135e491879161342990614eb6565b90506135f38682868686613b83565b50505050505050565b5f8080613608886107f0565b9250925092505f61362f8860065f8d81526020019081526020015f20805461342990614eb6565b5f8a815260066020526040902080549192509061364b90614eb6565b90505f0361366c575f89815260066020526040902061366a82826151f7565b505b61367b89858886178589613977565b6001600160a01b03871661369857613693895f613a98565b610ab4565b610ab484888b5f1c600160405180602001604052805f815250613d1e565b6201ffff19620200008316016136d6576136d36276a700826151d7565b90505b42816001600160401b0316101561370f576201000082161561370a5760405162461bcd60e51b81526004016107ad90614f47565b613734565b60048216156137345760405163a2a7201360e01b8152600481018490526024016107ad565b604082165f036108e05750505f90815260036020526040902080546001600160a01b0319169055565b60c0816001600160401b0316901b60a08363ffffffff16901b846001600160a01b0316171760015f8681526020019081526020015f208190555050505050565b6001600160a01b0384163b156133cb5760405163bc197c8160e01b81526001600160a01b0385169063bc197c81906137e190899089908890889088906004016152b2565b6020604051808303815f875af192505050801561381b575060408051601f3d908101601f1916820190925261381891810190615303565b60015b6138c75761382761531e565b806308c379a003613860575061383b615337565b806138465750613862565b8060405162461bcd60e51b81526004016107ad91906143d4565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e20455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b60648201526084016107ad565b6001600160e01b0319811663bc197c8160e01b146135f35760405162461bcd60e51b81526004016107ad906153bf565b63ffff000082161580159060018316159082906139115750805b156112135760405163a2a7201360e01b8152600481018690526024016107ad565b5f816001600160401b0316846001600160401b03161115613951578193505b826001600160401b0316846001600160401b0316101561396f578293505b509192915050565b61398385858584613a33565b60405163ffffffff8416815285907f39873f00c80f4f94b7bd1594aebcf650f003545b74824d57ddf4939e3ff3a34b9060200160405180910390a2816001600160401b0316816001600160401b03161115611213576040516001600160401b038216815285907ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b132906020015b60405180910390a25050505050565b5f80613a29836107f0565b5090949350505050565b613a3d8483613f96565b61164f8484848461375d565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b613aa3826001611e38565b15613ac45760405163a2a7201360e01b8152600481018390526024016107ad565b613acd82613c81565b604051635b0fc9c360e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690635b0fc9c390613b1b9085908590600401614dea565b5f604051808303815f87803b158015613b32575f80fd5b505af1158015613b44573d5f803e3d5ffd5b50506040516001600160a01b03841681528492507fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c49150602001612993565b613b8f85848484613fcf565b847f8ce7013e8abebc55c3890a68f5a27c67c3f7efa64e584de5fb22363c606fd34085858585604051613a0f9493929190615407565b5f805f613bd28585613dfe565b909250905081613c435760018551613bea919061544d565b8414613c385760405162461bcd60e51b815260206004820152601d60248201527f6e616d65686173683a204a756e6b20617420656e64206f66206e616d6500000060448201526064016107ad565b505f91506107ea9050565b613c4d8582613bc5565b6040805160208101929092528101839052606001604051602081830303815290604052805190602001209250505092915050565b5f8181526001602052604090205460a081901c60c082901c613ca4838383612f4d565b5f86815260036020526040812080546001600160a01b0319169055909350613cd091508590848461375d565b60408051858152600160208201525f916001600160a01b0386169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b5f805f613d2a866107f0565b925092509250613d3b8683836136b6565b846001148015613d5c5750876001600160a01b0316836001600160a01b0316145b613d785760405162461bcd60e51b81526004016107ad90614f47565b866001600160a01b0316836001600160a01b031603613d9957505050611213565b613da58688848461375d565b60408051878152602081018790526001600160a01b03808a1692908b169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46118b6338989898989614041565b5f8083518310613e505760405162461bcd60e51b815260206004820152601e60248201527f726561644c6162656c3a20496e646578206f7574206f6620626f756e6473000060448201526064016107ad565b5f848481518110613e6357613e63614f33565b016020015160f81c90508015613e8f57613e8885613e82866001615460565b836140fb565b9250613e93565b5f92505b613e9d8185615460565b613ea8906001615460565b9150509250929050565b5f81815260036020526040902080546001600160a01b0319166001600160a01b0384169081179091558190613ee682611655565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6060600183511015613f4457604051631406d65b60e11b815260040160405180910390fd5b60ff83511115613f69578260405163e3ba295f60e01b81526004016107ad91906143d4565b82518383604051602001613f7f93929190615473565b604051602081830303815290604052905092915050565b61ffff811615801590613fae57506201000181811614155b156134025760405163a2a7201360e01b8152600481018390526024016107ad565b613fd98483613f96565b5f848152600160205260409020546001600160a01b0381161561403557613fff85613c81565b6040515f815285907fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c49060200160405180910390a25b6112138585858561411d565b6001600160a01b0384163b156133cb5760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e619061408590899089908890889088906004016154b7565b6020604051808303815f875af19250505080156140bf575060408051601f3d908101601f191682019092526140bc91810190615303565b60015b6140cb5761382761531e565b6001600160e01b0319811663f23a6e6160e01b146135f35760405162461bcd60e51b81526004016107ad906153bf565b82515f906141098385615460565b1115614113575f80fd5b5091016020012090565b835f808061412a846107f0565b9194509250905063ffff000082166001600160401b038087169083161115614150578195505b42826001600160401b03161061416557958617955b6001600160a01b038416156141bc5760405162461bcd60e51b815260206004820152601f60248201527f455243313135353a206d696e74206f66206578697374696e6720746f6b656e0060448201526064016107ad565b6001600160a01b03881661421c5760405162461bcd60e51b815260206004820152602160248201527f455243313135353a206d696e7420746f20746865207a65726f206164647265736044820152607360f81b60648201526084016107ad565b306001600160a01b038916036142915760405162461bcd60e51b815260206004820152603460248201527f455243313135353a206e65774f776e65722063616e6e6f74206265207468652060448201527313985b5955dc985c1c195c8818dbdb9d1c9858dd60621b60648201526084016107ad565b61429d8589898961375d565b60408051868152600160208201526001600160a01b038a16915f9133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4612789335f8a88600160405180602001604052805f815250614041565b6001600160a01b038116811461209b575f80fd5b5f8060408385031215614327575f80fd5b823561433281614302565b946020939093013593505050565b5f60208284031215614350575f80fd5b5035919050565b6001600160e01b03198116811461209b575f80fd5b5f6020828403121561437c575f80fd5b813561089981614357565b5f5b838110156143a1578181015183820152602001614389565b50505f910152565b5f81518084526143c0816020860160208601614387565b601f01601f19169290920160200192915050565b602081525f61089960208301846143a9565b5f80604083850312156143f7575f80fd5b82359150602083013561440981614302565b809150509250929050565b80356001600160401b038116811461442a575f80fd5b919050565b5f8060408385031215614440575f80fd5b8235915061445060208401614414565b90509250929050565b5f8083601f840112614469575f80fd5b5081356001600160401b0381111561447f575f80fd5b602083019150836020828501011115614496575f80fd5b9250929050565b5f805f805f608086880312156144b1575f80fd5b85356144bc81614302565b945060208601356144cc81614302565b93506040860135925060608601356001600160401b038111156144ed575f80fd5b6144f988828901614459565b969995985093965092949392505050565b5f6020828403121561451a575f80fd5b813561089981614302565b634e487b7160e01b5f52604160045260245ffd5b601f8201601f191681016001600160401b038111828210171561455e5761455e614525565b6040525050565b5f6001600160401b0382111561457d5761457d614525565b50601f01601f191660200190565b5f82601f83011261459a575f80fd5b81356145a581614565565b6040516145b28282614539565b8281528560208487010111156145c6575f80fd5b826020860160208301375f92810160200192909252509392505050565b803563ffffffff8116811461442a575f80fd5b5f805f805f805f60e0888a03121561460c575f80fd5b8735965060208801356001600160401b03811115614628575f80fd5b6146348a828b0161458b565b965050604088013561464581614302565b9450606088013561465581614302565b935061466360808901614414565b925061467160a089016145e3565b915061467f60c08901614414565b905092959891949750929550565b5f6001600160401b038211156146a5576146a5614525565b5060051b60200190565b5f82601f8301126146be575f80fd5b813560206146cb8261468d565b6040516146d88282614539565b80915083815260208101915060208460051b8701019350868411156146fb575f80fd5b602086015b84811015611e2d5780358352918301918301614700565b5f805f805f60a0868803121561472b575f80fd5b853561473681614302565b9450602086013561474681614302565b935060408601356001600160401b0380821115614761575f80fd5b61476d89838a016146af565b94506060880135915080821115614782575f80fd5b61478e89838a016146af565b935060808801359150808211156147a3575f80fd5b506147b08882890161458b565b9150509295509295909350565b5f805f80608085870312156147d0575f80fd5b84359350602085013592506147e7604086016145e3565b91506147f560608601614414565b905092959194509250565b803561ffff8116811461442a575f80fd5b5f8060408385031215614822575f80fd5b8235915061445060208401614800565b5f8060408385031215614843575f80fd5b82356001600160401b0380821115614859575f80fd5b818501915085601f83011261486c575f80fd5b813560206148798261468d565b6040516148868282614539565b83815260059390931b85018201928281019150898411156148a5575f80fd5b948201945b838610156148cc5785356148bd81614302565b825294820194908201906148aa565b965050860135925050808211156148e1575f80fd5b50613ea8858286016146af565b5f815180845260208085019450602084015f5b8381101561491d57815187529582019590820190600101614901565b509495945050505050565b602081525f61089960208301846148ee565b5f805f6060848603121561494c575f80fd5b833561495781614302565b9250602084013561496781614302565b929592945050506040919091013590565b5f805f6060848603121561498a575f80fd5b83359250602084013591506149a160408501614414565b90509250925092565b5f805f606084860312156149bc575f80fd5b8335925060208401356149ce81614302565b915060408401356149de81614302565b809150509250925092565b5f805f805f608086880312156149fd575f80fd5b85356001600160401b03811115614a12575f80fd5b614a1e88828901614459565b9096509450506020860135614a3281614302565b9250614a4060408701614800565b91506060860135614a5081614302565b809150509295509295909350565b801515811461209b575f80fd5b5f8060408385031215614a7c575f80fd5b8235614a8781614302565b9150602083013561440981614a5e565b5f805f805f8060a08789031215614aac575f80fd5b86356001600160401b03811115614ac1575f80fd5b614acd89828a01614459565b9097509550506020870135614ae181614302565b9350604087013592506060870135614af881614302565b9150614b0660808801614800565b90509295509295509295565b5f8060408385031215614b23575f80fd5b82359150614450602084016145e3565b5f8060408385031215614b44575f80fd5b50508035926020909101359150565b5f805f805f8060a08789031215614b68575f80fd5b8635955060208701356001600160401b03811115614b84575f80fd5b614b9089828a01614459565b9096509450506040870135614ba481614302565b9250614bb2606088016145e3565b9150614b0660808801614414565b5f805f8060408587031215614bd3575f80fd5b84356001600160401b0380821115614be9575f80fd5b614bf588838901614459565b90965094506020870135915080821115614c0d575f80fd5b50614c1a87828801614459565b95989497509550505050565b5f805f8060808587031215614c39575f80fd5b843593506020850135614c4b81614302565b925060408501356147e781614302565b5f805f60608486031215614c6d575f80fd5b833592506020840135915060408401356149de81614302565b5f8060408385031215614c97575f80fd5b8235614ca281614302565b9150602083013561440981614302565b5f805f8060608587031215614cc5575f80fd5b84356001600160401b03811115614cda575f80fd5b614ce687828801614459565b9095509350506020850135614cfa81614302565b91506040850135614d0a81614302565b939692955090935050565b5f805f805f60a08688031215614d29575f80fd5b8535614d3481614302565b94506020860135614d4481614302565b9350604086013592506060860135915060808601356001600160401b03811115614d6c575f80fd5b6147b08882890161458b565b5f60208284031215614d88575f80fd5b81516001600160401b03811115614d9d575f80fd5b8201601f81018413614dad575f80fd5b8051614db881614565565b604051614dc58282614539565b828152866020848601011115614dd9575f80fd5b610954836020830160208701614387565b9182526001600160a01b0316602082015260400190565b5f805f8060808587031215614e14575f80fd5b84356001600160401b03811115614e29575f80fd5b614e358782880161458b565b9450506020850135614e4681614302565b9250614e5460408601614800565b91506060850135614d0a81614302565b5f60208284031215614e74575f80fd5b5051919050565b634e487b7160e01b5f52601160045260245ffd5b6001600160401b03818116838216019080821115614eaf57614eaf614e7b565b5092915050565b600181811c90821680614eca57607f821691505b602082108103614ee857634e487b7160e01b5f52602260045260245ffd5b50919050565b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b634e487b7160e01b5f52603260045260245ffd5b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b604081525f614fa360408301856148ee565b8281036020840152614fb581856148ee565b95945050505050565b5f60208284031215614fce575f80fd5b815161089981614302565b5f60208284031215614fe9575f80fd5b815161089981614a5e565b818382375f9101908152919050565b60208082526028908201527f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f604082015267373a3937b63632b960c11b606082015260800190565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b60c081525f61508660c083018a8c61504b565b6001600160a01b03898116602085015263ffffffff891660408501526001600160401b03881660608501528616608084015282810360a08401526150cb81858761504b565b9b9a5050505050505050505050565b601f8211156108e057805f5260205f20601f840160051c810160208510156150ff5750805b601f840160051c820191505b81811015611213575f815560010161510b565b6001600160401b0383111561513557615135614525565b615149836151438354614eb6565b836150da565b5f601f84116001811461517a575f85156151635750838201355b5f19600387901b1c1916600186901b178355611213565b5f83815260208120601f198716915b828110156151a95786850135825560209485019460019092019101615189565b50868210156151c5575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b6001600160401b03828116828216039080821115614eaf57614eaf614e7b565b81516001600160401b0381111561521057615210614525565b6152248161521e8454614eb6565b846150da565b602080601f831160018114615257575f84156152405750858301515b5f19600386901b1c1916600185901b1785556133cb565b5f85815260208120601f198616915b8281101561528557888601518255948401946001909101908401615266565b50858210156152a257878501515f19600388901b60f8161c191681555b5050505050600190811b01905550565b6001600160a01b0386811682528516602082015260a0604082018190525f906152dd908301866148ee565b82810360608401526152ef81866148ee565b9050828103608084015261350481856143a9565b5f60208284031215615313575f80fd5b815161089981614357565b5f60033d11156153345760045f803e505f5160e01c5b90565b5f60443d10156153445790565b6040516003193d81016004833e81513d6001600160401b03816024840111818411171561537357505050505090565b828501915081518181111561538b5750505050505090565b843d87010160208285010111156153a55750505050505090565b6153b460208286010187614539565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b608081525f61541960808301876143a9565b6001600160a01b039590951660208301525063ffffffff9290921660408301526001600160401b0316606090910152919050565b818103818111156107ea576107ea614e7b565b808201808211156107ea576107ea614e7b565b60ff60f81b8460f81b1681525f8351615493816001850160208801614387565b8351908301906154aa816001840160208801614387565b0160010195945050505050565b6001600160a01b03868116825285166020820152604081018490526060810183905260a0608082018190525f906154f0908301846143a9565b97965050505050505056fe93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4aea164736f6c6343000818000a", + "deployedBytecode": "0x608060405234801561000f575f80fd5b5060043610610296575f3560e01c80636352211e11610161578063c93ab3fd116100ca578063e985e9c511610084578063e985e9c5146106c8578063eb8ae530146106db578063ed70554d146106ee578063f242432a1461070d578063f2fde38b14610720578063fd0cd0d914610733575f80fd5b8063c93ab3fd14610647578063cf4088231461065a578063d8c9921a1461066d578063d9a50c1214610680578063da8c229e14610693578063e0dba60f146106b5575f80fd5b8063a22cb4651161011b578063a22cb465146105d5578063a4014982146105e8578063adf4960a146105fb578063b6bcad261461060e578063c475abff14610621578063c658e08614610634575f80fd5b80636352211e146105595780636e5d6ad21461056c578063715018a6146105975780638b4dfa751461059f5780638cf8b41e146105b25780638da5cb5b146105c5575f80fd5b80631f4e1504116102035780633f15457f116101bd5780633f15457f146104b1578063402906fc146104d857806341415eab146105005780634e1273f41461051357806353095467146105335780635d3590d514610546575f80fd5b80631f4e15041461042b57806320c38e2b1461043e57806324c1af44146104515780632b20e397146104645780632eb2c2d61461048b57806333c69ea91461049e575f80fd5b80630e4cd725116102545780630e4cd725146103a05780630e89341c146103b357806314ab9038146103c6578063150b7a02146103d95780631534e177146104055780631896f70a14610418575f80fd5b8062fdd58e1461029a5780630178fe3f146102c057806301ffc9a71461030657806306fdde0314610329578063081812fc14610360578063095ea7b31461038b575b5f80fd5b6102ad6102a8366004614316565b610746565b6040519081526020015b60405180910390f35b6102d36102ce366004614340565b6107f0565b604080516001600160a01b03909416845263ffffffff90921660208401526001600160401b0316908201526060016102b7565b61031961031436600461436c565b61081f565b60405190151581526020016102b7565b6103536040518060400160405280600b81526020016a2730b6b2abb930b83832b960a91b81525081565b6040516102b791906143d4565b61037361036e366004614340565b61085e565b6040516001600160a01b0390911681526020016102b7565b61039e610399366004614316565b6108a0565b005b6103196103ae3660046143e6565b6108e5565b6103536103c1366004614340565b61095e565b61039e6103d436600461442f565b6109cc565b6103ec6103e736600461449d565b610ac0565b6040516001600160e01b031990911681526020016102b7565b61039e61041336600461450a565b610c96565b61039e6104263660046143e6565b610cc0565b600754610373906001600160a01b031681565b61035361044c366004614340565b610d75565b6102ad61045f3660046145f6565b610e0c565b6103737f000000000000000000000000000000000000000000000000000000000000000081565b61039e610499366004614717565b610fe7565b61039e6104ac3660046147bd565b61121a565b6103737f000000000000000000000000000000000000000000000000000000000000000081565b6104eb6104e6366004614811565b6113e6565b60405163ffffffff90911681526020016102b7565b61031961050e3660046143e6565b611480565b610526610521366004614832565b6114b8565b6040516102b79190614928565b600554610373906001600160a01b031681565b61039e61055436600461493a565b6115d7565b610373610567366004614340565b611655565b61057f61057a366004614978565b61165f565b6040516001600160401b0390911681526020016102b7565b61039e61178e565b61039e6105ad3660046149aa565b6117a1565b61057f6105c03660046149e9565b6118c0565b5f546001600160a01b0316610373565b61039e6105e3366004614a6b565b611c28565b6102ad6105f6366004614a97565b611cfd565b610319610609366004614b12565b611e38565b61039e61061c36600461450a565b611e5c565b6102ad61062f366004614b33565b61209e565b6102ad610642366004614b53565b6122fd565b61039e610655366004614bc0565b6124bd565b61039e610668366004614c26565b612605565b61039e61067b366004614c5b565b612794565b61031961068e366004614b33565b61285d565b6103196106a136600461450a565b60046020525f908152604090205460ff1681565b61039e6106c3366004614a6b565b612938565b6103196106d6366004614c86565b61299f565b61039e6106e9366004614cb2565b6129cc565b6102ad6106fc366004614340565b60016020525f908152604090205481565b61039e61071b366004614d15565b612d59565b61039e61072e36600461450a565b612e06565b610319610741366004614340565b612e7c565b5f6001600160a01b0383166107b65760405162461bcd60e51b815260206004820152602b60248201527f455243313135353a2062616c616e636520717565727920666f7220746865207a60448201526a65726f206164647265737360a81b60648201526084015b60405180910390fd5b5f6107c083611655565b9050836001600160a01b0316816001600160a01b0316036107e55760019150506107ea565b5f9150505b92915050565b5f8181526001602052604090205460a081901c60c082901c610813838383612f4d565b90959094509092509050565b5f6001600160e01b03198216631b05885b60e31b148061084f57506001600160e01b03198216630a85bd0160e11b145b806107ea57506107ea82612f80565b5f8061086983611655565b90506001600160a01b03811661088157505f92915050565b5f838152600360205260409020546001600160a01b03165b9392505050565b5f6108aa826107f0565b50915050603f1960408216016108d65760405163a2a7201360e01b8152600481018390526024016107ad565b6108e08383612fcf565b505050565b5f8080806108f2866107f0565b925092509250846001600160a01b0316836001600160a01b0316148061091d575061091d838661299f565b8061094157506001600160a01b0385166109368761085e565b6001600160a01b0316145b8015610954575061095282826130de565b155b9695505050505050565b6005546040516303a24d0760e21b8152600481018390526060916001600160a01b031690630e89341c906024015f60405180830381865afa1580156109a5573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526107ea9190810190614d78565b816109d78133611480565b6109f857803360405163168ab55d60e31b81526004016107ad929190614dea565b8260105f610a05836107f0565b5091505063ffffffff8282161615610a335760405163a2a7201360e01b8152600481018490526024016107ad565b604051630295720760e31b8152600481018790526001600160401b03861660248201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906314ab9038906044015b5f604051808303815f87803b158015610aa2575f80fd5b505af1158015610ab4573d5f803e3d5ffd5b50505050505050505050565b5f336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610b0a5760405163032634a760e31b815260040160405180910390fd5b5f808080610b1a86880188614e01565b83516020850120939750919550935091508890808214610b57576040516331970f3360e21b815260048101829052602481018390526044016107ad565b604051630a3b53db60e21b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906328ed4f6c90610ba59085903090600401614dea565b5f604051808303815f87803b158015610bbc575f80fd5b505af1158015610bce573d5f803e3d5ffd5b5050604051636b727d4360e11b8152600481018d90525f92506276a70091506001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063d6e4fa8690602401602060405180830381865afa158015610c3c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c609190614e64565b610c6a9190614e8f565b9050610c7d87878761ffff16848861310d565b50630a85bd0160e11b9c9b505050505050505050505050565b610c9e613215565b600580546001600160a01b0319166001600160a01b0392909216919091179055565b81610ccb8133611480565b610cec57803360405163168ab55d60e31b81526004016107ad929190614dea565b8260085f610cf9836107f0565b5091505063ffffffff8282161615610d275760405163a2a7201360e01b8152600481018490526024016107ad565b604051630c4b7b8560e11b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690631896f70a90610a8b9089908990600401614dea565b60066020525f908152604090208054610d8d90614eb6565b80601f0160208091040260200160405190810160405280929190818152602001828054610db990614eb6565b8015610e045780601f10610ddb57610100808354040283529160200191610e04565b820191905f5260205f20905b815481529060010190602001808311610de757829003601f168201915b505050505081565b5f87610e188133611480565b610e3957803360405163168ab55d60e31b81526004016107ad929190614dea565b87516020890120610e4a8a8261326e565b9250610e568a8461329a565b610e6083866133d3565b610e6b8a848b613406565b50610e788a8487876134cd565b9350610e8383613510565b610f33576040516305ef2c7f60e41b8152600481018b9052602481018290523060448201526001600160a01b0388811660648301526001600160401b03881660848301527f00000000000000000000000000000000000000000000000000000000000000001690635ef2c7f09060a4015f604051808303815f87803b158015610f0a575f80fd5b505af1158015610f1c573d5f803e3d5ffd5b50505050610f2e8a848b8b89896135c6565b610fda565b6040516305ef2c7f60e41b8152600481018b9052602481018290523060448201526001600160a01b0388811660648301526001600160401b03881660848301527f00000000000000000000000000000000000000000000000000000000000000001690635ef2c7f09060a4015f604051808303815f87803b158015610fb6575f80fd5b505af1158015610fc8573d5f803e3d5ffd5b50505050610fda8a848b8b89896135fc565b5050979650505050505050565b81518351146110495760405162461bcd60e51b815260206004820152602860248201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206044820152670dad2e6dac2e8c6d60c31b60648201526084016107ad565b6001600160a01b03841661106f5760405162461bcd60e51b81526004016107ad90614eee565b6001600160a01b03851633148061108b575061108b853361299f565b6110f25760405162461bcd60e51b815260206004820152603260248201527f455243313135353a207472616e736665722063616c6c6572206973206e6f74206044820152711bdddb995c881b9bdc88185c1c1c9bdd995960721b60648201526084016107ad565b5f5b83518110156111ad575f84828151811061111057611110614f33565b602002602001015190505f84838151811061112d5761112d614f33565b602002602001015190505f805f611143856107f0565b9250925092506111548583836136b6565b83600114801561117557508a6001600160a01b0316836001600160a01b0316145b6111915760405162461bcd60e51b81526004016107ad90614f47565b61119d858b848461375d565b50505050508060010190506110f4565b50836001600160a01b0316856001600160a01b0316336001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516111fd929190614f91565b60405180910390a461121333868686868661379d565b5050505050565b5f611225858561326e565b905061123181846133d3565b5f808061123d846107f0565b919450925090506001600160a01b03831615806112ea57506040516302571be360e01b81526004810185905230906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906302571be390602401602060405180830381865afa1580156112ba573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112de9190614fbe565b6001600160a01b031614155b1561130857604051635374b59960e01b815260040160405180910390fd5b5f806113138a6107f0565b90935091508a905061134f576113298633611480565b61134a57853360405163168ab55d60e31b81526004016107ad929190614dea565b61137a565b6113598a33611480565b61137a57893360405163168ab55d60e31b81526004016107ad929190614dea565b6113858689846138f7565b611390878483613932565b9650620100008416158015906113b457508363ffffffff1688851763ffffffff1614155b156113d55760405163a2a7201360e01b8152600481018790526024016107ad565b96831796610ab486868a868b613977565b5f826113f28133611480565b61141357803360405163168ab55d60e31b81526004016107ad929190614dea565b8360025f611420836107f0565b5091505063ffffffff828216161561144e5760405163a2a7201360e01b8152600481018490526024016107ad565b5f808061145a8a6107f0565b9250925092506114738a84848c61ffff16178485613977565b5098975050505050505050565b5f80808061148d866107f0565b925092509250846001600160a01b0316836001600160a01b031614806109415750610941838661299f565b6060815183511461151d5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b60648201526084016107ad565b5f83516001600160401b0381111561153757611537614525565b604051908082528060200260200182016040528015611560578160200160208202803683370190505b5090505f5b84518110156115cf576115aa85828151811061158357611583614f33565b602002602001015185838151811061159d5761159d614f33565b6020026020010151610746565b8282815181106115bc576115bc614f33565b6020908102919091010152600101611565565b509392505050565b6115df613215565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af115801561162b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061164f9190614fd9565b50505050565b5f6107ea82613a1e565b5f8061166b858561326e565b905061167681613510565b61169357604051635374b59960e01b815260040160405180910390fd5b5f61169e86336108e5565b9050801580156116b557506116b38233611480565b155b156116d757813360405163168ab55d60e31b81526004016107ad929190614dea565b5f80806116e3856107f0565b925092509250831580156116fa5750620400008216155b1561171b5760405163a2a7201360e01b8152600481018690526024016107ad565b5f6117258a6107f0565b92505050611734888383613932565b97506117428685858b613a33565b6040516001600160401b038916815286907ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b1329060200160405180910390a2509598975050505050505050565b611796613215565b61179f5f613a49565b565b6117b85f805160206154fc8339815191528461326e565b6117c28133611480565b6117e357803360405163168ab55d60e31b81526004016107ad929190614dea565b306001600160a01b0384160361181757604051632ca49b0d60e11b81526001600160a01b03841660048201526024016107ad565b6118376118315f805160206154fc8339815191528661326e565b83613a98565b604051632142170760e11b81523060048201526001600160a01b038481166024830152604482018690527f000000000000000000000000000000000000000000000000000000000000000016906342842e0e906064015f604051808303815f87803b1580156118a4575f80fd5b505af11580156118b6573d5f803e3d5ffd5b5050505050505050565b5f8086866040516118d2929190614ff4565b6040519081900381206331a9108f60e11b82526004820181905291505f907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690636352211e90602401602060405180830381865afa15801561193f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119639190614fbe565b90506001600160a01b0381163314801590611a09575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000000000000000000000000000000000000000000000169063e985e9c590604401602060405180830381865afa1580156119e3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a079190614fd9565b155b15611a4157611a255f805160206154fc8339815191528361326e565b3360405163168ab55d60e31b81526004016107ad929190614dea565b6040516323b872dd60e01b81526001600160a01b038281166004830152306024830152604482018490527f000000000000000000000000000000000000000000000000000000000000000016906323b872dd906064015f604051808303815f87803b158015611aae575f80fd5b505af1158015611ac0573d5f803e3d5ffd5b5050604051630a3b53db60e21b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001692506328ed4f6c9150611b129085903090600401614dea565b5f604051808303815f87803b158015611b29575f80fd5b505af1158015611b3b573d5f803e3d5ffd5b5050604051636b727d4360e11b8152600481018590526276a70092507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316915063d6e4fa8690602401602060405180830381865afa158015611ba7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611bcb9190614e64565b611bd59190614e8f565b9250611c1d88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508a9250505061ffff8816868861310d565b505095945050505050565b6001600160a01b0382163303611c925760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084016107ad565b335f8181526002602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b335f9081526004602052604081205460ff16611d2b5760405162461bcd60e51b81526004016107ad90615003565b5f8787604051611d3c929190614ff4565b604051908190038120633f2891eb60e21b8252600482018190523060248301526044820187905291507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063fca247ac906064016020604051808303815f875af1158015611db5573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611dd99190614e64565b9150611e2d88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508a9250505061ffff8616611e276276a70087614e8f565b8861310d565b509695505050505050565b5f80611e43846107f0565b50841663ffffffff908116908516149250505092915050565b611e64613215565b6007546001600160a01b031615611f785760075460405163a22cb46560e01b81526001600160a01b0391821660048201525f60248201527f00000000000000000000000000000000000000000000000000000000000000009091169063a22cb465906044015f604051808303815f87803b158015611ee0575f80fd5b505af1158015611ef2573d5f803e3d5ffd5b505060075460405163a22cb46560e01b81526001600160a01b0391821660048201525f60248201527f0000000000000000000000000000000000000000000000000000000000000000909116925063a22cb46591506044015f604051808303815f87803b158015611f61575f80fd5b505af1158015611f73573d5f803e3d5ffd5b505050505b600780546001600160a01b0319166001600160a01b0383169081179091551561209b5760075460405163a22cb46560e01b81526001600160a01b039182166004820152600160248201527f00000000000000000000000000000000000000000000000000000000000000009091169063a22cb465906044015f604051808303815f87803b158015612007575f80fd5b505af1158015612019573d5f803e3d5ffd5b505060075460405163a22cb46560e01b81526001600160a01b039182166004820152600160248201527f0000000000000000000000000000000000000000000000000000000000000000909116925063a22cb46591506044015f604051808303815f87803b158015612089575f80fd5b505af1158015611213573d5f803e3d5ffd5b50565b335f9081526004602052604081205460ff166120cc5760405162461bcd60e51b81526004016107ad90615003565b5f6120e45f805160206154fc8339815191528561326e565b60405163c475abff60e01b815260048101869052602481018590529091505f906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063c475abff906044016020604051808303815f875af1158015612154573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906121789190614e64565b6040516331a9108f60e11b8152600481018790529091507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690636352211e90602401602060405180830381865afa9250505080156121fc575060408051601f3d908101601f191682019092526121f991810190614fbe565b60015b6122095791506107ea9050565b6001600160a01b038116301415806122b157506040516302571be360e01b81526004810184905230906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906302571be390602401602060405180830381865afa158015612281573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906122a59190614fbe565b6001600160a01b031614155b156122c0575091506107ea9050565b505f6122cf6276a70083614e8f565b5f8481526001602052604090205490915060a081901c6122f185838386613a33565b50919695505050505050565b5f866123098133611480565b61232a57803360405163168ab55d60e31b81526004016107ad929190614dea565b5f878760405161233b929190614ff4565b6040518091039020905061234f898261326e565b925061235b898461329a565b61236583866133d3565b5f6123a68a858b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061340692505050565b90506123b48a8588886134cd565b94506123bf84613510565b61246b576040516306ab592360e01b8152600481018b9052602481018390523060448201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906306ab5923906064016020604051808303815f875af1158015612434573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906124589190614e64565b506124668482898989613b83565b6124b0565b6124b08a858b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508d92508c91508b90506135fc565b5050509695505050505050565b5f6125005f86868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613bc59050565b6007549091506001600160a01b031661252c5760405163093075b560e21b815260040160405180910390fd5b6125368133611480565b61255757803360405163168ab55d60e31b81526004016107ad929190614dea565b5f8080612563846107f0565b919450925090505f6125748561085e565b905061257f85613c81565b60075f9054906101000a90046001600160a01b03166001600160a01b0316639198c2768a8a878787878e8e6040518963ffffffff1660e01b81526004016125cd989796959493929190615073565b5f604051808303815f87803b1580156125e4575f80fd5b505af11580156125f6573d5f803e3d5ffd5b50505050505050505050505050565b836126108133611480565b61263157803360405163168ab55d60e31b81526004016107ad929190614dea565b84601c5f61263e836107f0565b5091505063ffffffff828216161561266c5760405163a2a7201360e01b8152600481018490526024016107ad565b60405163cf40882360e01b8152600481018990523060248201526001600160a01b0387811660448301526001600160401b03871660648301527f0000000000000000000000000000000000000000000000000000000000000000169063cf408823906084015f604051808303815f87803b1580156126e8575f80fd5b505af11580156126fa573d5f803e3d5ffd5b5050506001600160a01b038816905061275f575f612717896107f0565b509150506201ffff196202000082160161274f57604051632ca49b0d60e11b81526001600160a01b03891660048201526024016107ad565b612759895f613a98565b506118b6565b5f61276989611655565b905061278981898b5f1c600160405180602001604052805f815250613d1e565b505050505050505050565b61279e838361326e565b6127a88133611480565b6127c957803360405163168ab55d60e31b81526004016107ad929190614dea565b7f6c32148f748aba23997146d7fe89e962e3cc30271290fb96f5f4337756c03b5284016128095760405163615a470360e01b815260040160405180910390fd5b6001600160a01b038216158061282757506001600160a01b03821630145b1561285057604051632ca49b0d60e11b81526001600160a01b03831660048201526024016107ad565b61164f611831858561326e565b5f80612869848461326e565b90505f61287582613510565b90505f805160206154fc83398151915285146128945791506107ea9050565b6040516331a9108f60e11b8152600481018590527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690636352211e90602401602060405180830381865afa925050508015612915575060408051601f3d908101601f1916820190925261291291810190614fbe565b60015b612923575f925050506107ea565b6001600160a01b0316301492506107ea915050565b612940613215565b6001600160a01b0382165f81815260046020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf8791015b60405180910390a25050565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205460ff1690565b5f80612a105f87878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613dfe9050565b915091505f612a578288888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613bc59050565b90505f612a64828561326e565b5f818152600660205260409020909150612a7f888a8361511e565b507f6c32148f748aba23997146d7fe89e962e3cc30271290fb96f5f4337756c03b528201612ac05760405163615a470360e01b815260040160405180910390fd5b6040516302571be360e01b8152600481018290525f907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906302571be390602401602060405180830381865afa158015612b25573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612b499190614fbe565b90506001600160a01b0381163314801590612bef575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000000000000000000000000000000000000000000000169063e985e9c590604401602060405180830381865afa158015612bc9573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612bed9190614fd9565b155b15612c1157813360405163168ab55d60e31b81526004016107ad929190614dea565b6001600160a01b03861615612c9c57604051630c4b7b8560e11b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690631896f70a90612c6e9085908a90600401614dea565b5f604051808303815f87803b158015612c85575f80fd5b505af1158015612c97573d5f803e3d5ffd5b505050505b604051635b0fc9c360e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690635b0fc9c390612cea9085903090600401614dea565b5f604051808303815f87803b158015612d01575f80fd5b505af1158015612d13573d5f803e3d5ffd5b50505050612789828a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201829052508d93509150819050613b83565b6001600160a01b038416612d7f5760405162461bcd60e51b81526004016107ad90614eee565b6001600160a01b038516331480612d9b5750612d9b853361299f565b612df95760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2063616c6c6572206973206e6f74206f776e6572206e6f7260448201526808185c1c1c9bdd995960ba1b60648201526084016107ad565b6112138585858585613d1e565b612e0e613215565b6001600160a01b038116612e735760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107ad565b61209b81613a49565b5f8181526006602052604081208054829190612e9790614eb6565b80601f0160208091040260200160405190810160405280929190818152602001828054612ec390614eb6565b8015612f0e5780601f10612ee557610100808354040283529160200191612f0e565b820191905f5260205f20905b815481529060010190602001808311612ef157829003601f168201915b5050505050905080515f03612f2557505f92915050565b5f80612f318382613dfe565b90925090505f612f418483613bc5565b9050610954818461285d565b5f8042836001600160401b03161015612f775761ffff1962010000851601612f73575f94505b5f93505b50929391925050565b5f6001600160e01b03198216636cdb3d1360e11b1480612fb057506001600160e01b031982166303a24d0760e21b145b806107ea57506301ffc9a760e01b6001600160e01b03198316146107ea565b5f612fd982611655565b9050806001600160a01b0316836001600160a01b0316036130465760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084016107ad565b336001600160a01b03821614806130625750613062813361299f565b6130d45760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016107ad565b6108e08383613eb2565b5f620200008381161480156108995750426130fc6276a700846151d7565b6001600160401b0316109392505050565b845160208601205f61312c5f805160206154fc8339815191528361326e565b90505f61315488604051806040016040528060058152602001626cae8d60e31b815250613f1f565b5f83815260066020526040902090915061316e82826151f7565b50613181828289620300008a1789613b83565b6001600160a01b038416156118b657604051630c4b7b8560e11b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690631896f70a906131de9085908890600401614dea565b5f604051808303815f87803b1580156131f5575f80fd5b505af1158015613207573d5f803e3d5ffd5b505050505050505050505050565b5f546001600160a01b0316331461179f5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107ad565b604080516020808201949094528082019290925280518083038201815260609092019052805191012090565b5f80806132a6846107f0565b91945092509050426001600160401b0382161080801561336657506001600160a01b038416158061336657506040516302571be360e01b8152600481018690525f906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906302571be390602401602060405180830381865afa158015613337573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061335b9190614fbe565b6001600160a01b0316145b156133a4575f613375876107f0565b50915050602081161561339e5760405163a2a7201360e01b8152600481018790526024016107ad565b506133cb565b620100008316156133cb5760405163a2a7201360e01b8152600481018690526024016107ad565b505050505050565b63fffdffff81811763ffffffff16146134025760405163a2a7201360e01b8152600481018390526024016107ad565b5050565b60605f6134aa8360065f8881526020019081526020015f20805461342990614eb6565b80601f016020809104026020016040519081016040528092919081815260200182805461345590614eb6565b80156134a05780601f10613477576101008083540402835291602001916134a0565b820191905f5260205f20905b81548152906001019060200180831161348357829003601f168201915b5050505050613f1f565b5f8581526006602052604090209091506134c482826151f7565b50949350505050565b5f806134d8856107f0565b925050505f806134e9885f1c6107f0565b92509250506134f98787846138f7565b613504858483613932565b98975050505050505050565b5f8061351b83611655565b6001600160a01b0316141580156107ea57506040516302571be360e01b81526004810183905230906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906302571be390602401602060405180830381865afa158015613592573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906135b69190614fbe565b6001600160a01b03161492915050565b5f86815260066020526040812080546135e491879161342990614eb6565b90506135f38682868686613b83565b50505050505050565b5f8080613608886107f0565b9250925092505f61362f8860065f8d81526020019081526020015f20805461342990614eb6565b5f8a815260066020526040902080549192509061364b90614eb6565b90505f0361366c575f89815260066020526040902061366a82826151f7565b505b61367b89858886178589613977565b6001600160a01b03871661369857613693895f613a98565b610ab4565b610ab484888b5f1c600160405180602001604052805f815250613d1e565b6201ffff19620200008316016136d6576136d36276a700826151d7565b90505b42816001600160401b0316101561370f576201000082161561370a5760405162461bcd60e51b81526004016107ad90614f47565b613734565b60048216156137345760405163a2a7201360e01b8152600481018490526024016107ad565b604082165f036108e05750505f90815260036020526040902080546001600160a01b0319169055565b60c0816001600160401b0316901b60a08363ffffffff16901b846001600160a01b0316171760015f8681526020019081526020015f208190555050505050565b6001600160a01b0384163b156133cb5760405163bc197c8160e01b81526001600160a01b0385169063bc197c81906137e190899089908890889088906004016152b2565b6020604051808303815f875af192505050801561381b575060408051601f3d908101601f1916820190925261381891810190615303565b60015b6138c75761382761531e565b806308c379a003613860575061383b615337565b806138465750613862565b8060405162461bcd60e51b81526004016107ad91906143d4565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e20455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b60648201526084016107ad565b6001600160e01b0319811663bc197c8160e01b146135f35760405162461bcd60e51b81526004016107ad906153bf565b63ffff000082161580159060018316159082906139115750805b156112135760405163a2a7201360e01b8152600481018690526024016107ad565b5f816001600160401b0316846001600160401b03161115613951578193505b826001600160401b0316846001600160401b0316101561396f578293505b509192915050565b61398385858584613a33565b60405163ffffffff8416815285907f39873f00c80f4f94b7bd1594aebcf650f003545b74824d57ddf4939e3ff3a34b9060200160405180910390a2816001600160401b0316816001600160401b03161115611213576040516001600160401b038216815285907ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b132906020015b60405180910390a25050505050565b5f80613a29836107f0565b5090949350505050565b613a3d8483613f96565b61164f8484848461375d565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b613aa3826001611e38565b15613ac45760405163a2a7201360e01b8152600481018390526024016107ad565b613acd82613c81565b604051635b0fc9c360e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690635b0fc9c390613b1b9085908590600401614dea565b5f604051808303815f87803b158015613b32575f80fd5b505af1158015613b44573d5f803e3d5ffd5b50506040516001600160a01b03841681528492507fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c49150602001612993565b613b8f85848484613fcf565b847f8ce7013e8abebc55c3890a68f5a27c67c3f7efa64e584de5fb22363c606fd34085858585604051613a0f9493929190615407565b5f805f613bd28585613dfe565b909250905081613c435760018551613bea919061544d565b8414613c385760405162461bcd60e51b815260206004820152601d60248201527f6e616d65686173683a204a756e6b20617420656e64206f66206e616d6500000060448201526064016107ad565b505f91506107ea9050565b613c4d8582613bc5565b6040805160208101929092528101839052606001604051602081830303815290604052805190602001209250505092915050565b5f8181526001602052604090205460a081901c60c082901c613ca4838383612f4d565b5f86815260036020526040812080546001600160a01b0319169055909350613cd091508590848461375d565b60408051858152600160208201525f916001600160a01b0386169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b5f805f613d2a866107f0565b925092509250613d3b8683836136b6565b846001148015613d5c5750876001600160a01b0316836001600160a01b0316145b613d785760405162461bcd60e51b81526004016107ad90614f47565b866001600160a01b0316836001600160a01b031603613d9957505050611213565b613da58688848461375d565b60408051878152602081018790526001600160a01b03808a1692908b169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46118b6338989898989614041565b5f8083518310613e505760405162461bcd60e51b815260206004820152601e60248201527f726561644c6162656c3a20496e646578206f7574206f6620626f756e6473000060448201526064016107ad565b5f848481518110613e6357613e63614f33565b016020015160f81c90508015613e8f57613e8885613e82866001615460565b836140fb565b9250613e93565b5f92505b613e9d8185615460565b613ea8906001615460565b9150509250929050565b5f81815260036020526040902080546001600160a01b0319166001600160a01b0384169081179091558190613ee682611655565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6060600183511015613f4457604051631406d65b60e11b815260040160405180910390fd5b60ff83511115613f69578260405163e3ba295f60e01b81526004016107ad91906143d4565b82518383604051602001613f7f93929190615473565b604051602081830303815290604052905092915050565b61ffff811615801590613fae57506201000181811614155b156134025760405163a2a7201360e01b8152600481018390526024016107ad565b613fd98483613f96565b5f848152600160205260409020546001600160a01b0381161561403557613fff85613c81565b6040515f815285907fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c49060200160405180910390a25b6112138585858561411d565b6001600160a01b0384163b156133cb5760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e619061408590899089908890889088906004016154b7565b6020604051808303815f875af19250505080156140bf575060408051601f3d908101601f191682019092526140bc91810190615303565b60015b6140cb5761382761531e565b6001600160e01b0319811663f23a6e6160e01b146135f35760405162461bcd60e51b81526004016107ad906153bf565b82515f906141098385615460565b1115614113575f80fd5b5091016020012090565b835f808061412a846107f0565b9194509250905063ffff000082166001600160401b038087169083161115614150578195505b42826001600160401b03161061416557958617955b6001600160a01b038416156141bc5760405162461bcd60e51b815260206004820152601f60248201527f455243313135353a206d696e74206f66206578697374696e6720746f6b656e0060448201526064016107ad565b6001600160a01b03881661421c5760405162461bcd60e51b815260206004820152602160248201527f455243313135353a206d696e7420746f20746865207a65726f206164647265736044820152607360f81b60648201526084016107ad565b306001600160a01b038916036142915760405162461bcd60e51b815260206004820152603460248201527f455243313135353a206e65774f776e65722063616e6e6f74206265207468652060448201527313985b5955dc985c1c195c8818dbdb9d1c9858dd60621b60648201526084016107ad565b61429d8589898961375d565b60408051868152600160208201526001600160a01b038a16915f9133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4612789335f8a88600160405180602001604052805f815250614041565b6001600160a01b038116811461209b575f80fd5b5f8060408385031215614327575f80fd5b823561433281614302565b946020939093013593505050565b5f60208284031215614350575f80fd5b5035919050565b6001600160e01b03198116811461209b575f80fd5b5f6020828403121561437c575f80fd5b813561089981614357565b5f5b838110156143a1578181015183820152602001614389565b50505f910152565b5f81518084526143c0816020860160208601614387565b601f01601f19169290920160200192915050565b602081525f61089960208301846143a9565b5f80604083850312156143f7575f80fd5b82359150602083013561440981614302565b809150509250929050565b80356001600160401b038116811461442a575f80fd5b919050565b5f8060408385031215614440575f80fd5b8235915061445060208401614414565b90509250929050565b5f8083601f840112614469575f80fd5b5081356001600160401b0381111561447f575f80fd5b602083019150836020828501011115614496575f80fd5b9250929050565b5f805f805f608086880312156144b1575f80fd5b85356144bc81614302565b945060208601356144cc81614302565b93506040860135925060608601356001600160401b038111156144ed575f80fd5b6144f988828901614459565b969995985093965092949392505050565b5f6020828403121561451a575f80fd5b813561089981614302565b634e487b7160e01b5f52604160045260245ffd5b601f8201601f191681016001600160401b038111828210171561455e5761455e614525565b6040525050565b5f6001600160401b0382111561457d5761457d614525565b50601f01601f191660200190565b5f82601f83011261459a575f80fd5b81356145a581614565565b6040516145b28282614539565b8281528560208487010111156145c6575f80fd5b826020860160208301375f92810160200192909252509392505050565b803563ffffffff8116811461442a575f80fd5b5f805f805f805f60e0888a03121561460c575f80fd5b8735965060208801356001600160401b03811115614628575f80fd5b6146348a828b0161458b565b965050604088013561464581614302565b9450606088013561465581614302565b935061466360808901614414565b925061467160a089016145e3565b915061467f60c08901614414565b905092959891949750929550565b5f6001600160401b038211156146a5576146a5614525565b5060051b60200190565b5f82601f8301126146be575f80fd5b813560206146cb8261468d565b6040516146d88282614539565b80915083815260208101915060208460051b8701019350868411156146fb575f80fd5b602086015b84811015611e2d5780358352918301918301614700565b5f805f805f60a0868803121561472b575f80fd5b853561473681614302565b9450602086013561474681614302565b935060408601356001600160401b0380821115614761575f80fd5b61476d89838a016146af565b94506060880135915080821115614782575f80fd5b61478e89838a016146af565b935060808801359150808211156147a3575f80fd5b506147b08882890161458b565b9150509295509295909350565b5f805f80608085870312156147d0575f80fd5b84359350602085013592506147e7604086016145e3565b91506147f560608601614414565b905092959194509250565b803561ffff8116811461442a575f80fd5b5f8060408385031215614822575f80fd5b8235915061445060208401614800565b5f8060408385031215614843575f80fd5b82356001600160401b0380821115614859575f80fd5b818501915085601f83011261486c575f80fd5b813560206148798261468d565b6040516148868282614539565b83815260059390931b85018201928281019150898411156148a5575f80fd5b948201945b838610156148cc5785356148bd81614302565b825294820194908201906148aa565b965050860135925050808211156148e1575f80fd5b50613ea8858286016146af565b5f815180845260208085019450602084015f5b8381101561491d57815187529582019590820190600101614901565b509495945050505050565b602081525f61089960208301846148ee565b5f805f6060848603121561494c575f80fd5b833561495781614302565b9250602084013561496781614302565b929592945050506040919091013590565b5f805f6060848603121561498a575f80fd5b83359250602084013591506149a160408501614414565b90509250925092565b5f805f606084860312156149bc575f80fd5b8335925060208401356149ce81614302565b915060408401356149de81614302565b809150509250925092565b5f805f805f608086880312156149fd575f80fd5b85356001600160401b03811115614a12575f80fd5b614a1e88828901614459565b9096509450506020860135614a3281614302565b9250614a4060408701614800565b91506060860135614a5081614302565b809150509295509295909350565b801515811461209b575f80fd5b5f8060408385031215614a7c575f80fd5b8235614a8781614302565b9150602083013561440981614a5e565b5f805f805f8060a08789031215614aac575f80fd5b86356001600160401b03811115614ac1575f80fd5b614acd89828a01614459565b9097509550506020870135614ae181614302565b9350604087013592506060870135614af881614302565b9150614b0660808801614800565b90509295509295509295565b5f8060408385031215614b23575f80fd5b82359150614450602084016145e3565b5f8060408385031215614b44575f80fd5b50508035926020909101359150565b5f805f805f8060a08789031215614b68575f80fd5b8635955060208701356001600160401b03811115614b84575f80fd5b614b9089828a01614459565b9096509450506040870135614ba481614302565b9250614bb2606088016145e3565b9150614b0660808801614414565b5f805f8060408587031215614bd3575f80fd5b84356001600160401b0380821115614be9575f80fd5b614bf588838901614459565b90965094506020870135915080821115614c0d575f80fd5b50614c1a87828801614459565b95989497509550505050565b5f805f8060808587031215614c39575f80fd5b843593506020850135614c4b81614302565b925060408501356147e781614302565b5f805f60608486031215614c6d575f80fd5b833592506020840135915060408401356149de81614302565b5f8060408385031215614c97575f80fd5b8235614ca281614302565b9150602083013561440981614302565b5f805f8060608587031215614cc5575f80fd5b84356001600160401b03811115614cda575f80fd5b614ce687828801614459565b9095509350506020850135614cfa81614302565b91506040850135614d0a81614302565b939692955090935050565b5f805f805f60a08688031215614d29575f80fd5b8535614d3481614302565b94506020860135614d4481614302565b9350604086013592506060860135915060808601356001600160401b03811115614d6c575f80fd5b6147b08882890161458b565b5f60208284031215614d88575f80fd5b81516001600160401b03811115614d9d575f80fd5b8201601f81018413614dad575f80fd5b8051614db881614565565b604051614dc58282614539565b828152866020848601011115614dd9575f80fd5b610954836020830160208701614387565b9182526001600160a01b0316602082015260400190565b5f805f8060808587031215614e14575f80fd5b84356001600160401b03811115614e29575f80fd5b614e358782880161458b565b9450506020850135614e4681614302565b9250614e5460408601614800565b91506060850135614d0a81614302565b5f60208284031215614e74575f80fd5b5051919050565b634e487b7160e01b5f52601160045260245ffd5b6001600160401b03818116838216019080821115614eaf57614eaf614e7b565b5092915050565b600181811c90821680614eca57607f821691505b602082108103614ee857634e487b7160e01b5f52602260045260245ffd5b50919050565b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b634e487b7160e01b5f52603260045260245ffd5b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b604081525f614fa360408301856148ee565b8281036020840152614fb581856148ee565b95945050505050565b5f60208284031215614fce575f80fd5b815161089981614302565b5f60208284031215614fe9575f80fd5b815161089981614a5e565b818382375f9101908152919050565b60208082526028908201527f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f604082015267373a3937b63632b960c11b606082015260800190565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b60c081525f61508660c083018a8c61504b565b6001600160a01b03898116602085015263ffffffff891660408501526001600160401b03881660608501528616608084015282810360a08401526150cb81858761504b565b9b9a5050505050505050505050565b601f8211156108e057805f5260205f20601f840160051c810160208510156150ff5750805b601f840160051c820191505b81811015611213575f815560010161510b565b6001600160401b0383111561513557615135614525565b615149836151438354614eb6565b836150da565b5f601f84116001811461517a575f85156151635750838201355b5f19600387901b1c1916600186901b178355611213565b5f83815260208120601f198716915b828110156151a95786850135825560209485019460019092019101615189565b50868210156151c5575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b6001600160401b03828116828216039080821115614eaf57614eaf614e7b565b81516001600160401b0381111561521057615210614525565b6152248161521e8454614eb6565b846150da565b602080601f831160018114615257575f84156152405750858301515b5f19600386901b1c1916600185901b1785556133cb565b5f85815260208120601f198616915b8281101561528557888601518255948401946001909101908401615266565b50858210156152a257878501515f19600388901b60f8161c191681555b5050505050600190811b01905550565b6001600160a01b0386811682528516602082015260a0604082018190525f906152dd908301866148ee565b82810360608401526152ef81866148ee565b9050828103608084015261350481856143a9565b5f60208284031215615313575f80fd5b815161089981614357565b5f60033d11156153345760045f803e505f5160e01c5b90565b5f60443d10156153445790565b6040516003193d81016004833e81513d6001600160401b03816024840111818411171561537357505050505090565b828501915081518181111561538b5750505050505090565b843d87010160208285010111156153a55750505050505090565b6153b460208286010187614539565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b608081525f61541960808301876143a9565b6001600160a01b039590951660208301525063ffffffff9290921660408301526001600160401b0316606090910152919050565b818103818111156107ea576107ea614e7b565b808201808211156107ea576107ea614e7b565b60ff60f81b8460f81b1681525f8351615493816001850160208801614387565b8351908301906154aa816001840160208801614387565b0160010195945050505050565b6001600160a01b03868116825285166020820152604081018490526060810183905260a0608082018190525f906154f0908301846143a9565b97965050505050505056fe93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4aea164736f6c6343000818000a", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/artifacts/OrderCombiner.json b/artifacts/OrderCombiner.json new file mode 100644 index 00000000..a2c333d2 --- /dev/null +++ b/artifacts/OrderCombiner.json @@ -0,0 +1,775 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "OrderCombiner", + "sourceName": "seaport-core/src/lib/OrderCombiner.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "conduitController", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [], + "name": "BadContractSignature", + "type": "error" + }, + { + "inputs": [], + "name": "BadFraction", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "BadReturnValueFromERC20OnTransfer", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint8", + "name": "v", + "type": "uint8" + } + ], + "name": "BadSignatureV", + "type": "error" + }, + { + "inputs": [], + "name": "CannotCancelOrder", + "type": "error" + }, + { + "inputs": [], + "name": "ConsiderationCriteriaResolverOutOfRange", + "type": "error" + }, + { + "inputs": [], + "name": "ConsiderationLengthNotEqualToTotalOriginal", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "considerationIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "shortfallAmount", + "type": "uint256" + } + ], + "name": "ConsiderationNotMet", + "type": "error" + }, + { + "inputs": [], + "name": "CriteriaNotEnabledForItem", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256[]", + "name": "identifiers", + "type": "uint256[]" + }, + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + } + ], + "name": "ERC1155BatchTransferGenericFailure", + "type": "error" + }, + { + "inputs": [], + "name": "InexactFraction", + "type": "error" + }, + { + "inputs": [], + "name": "InsufficientNativeTokensSupplied", + "type": "error" + }, + { + "inputs": [], + "name": "Invalid1155BatchTransferEncoding", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidBasicOrderParameterEncoding", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "conduit", + "type": "address" + } + ], + "name": "InvalidCallToConduit", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "conduit", + "type": "address" + } + ], + "name": "InvalidConduit", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "InvalidContractOrder", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "InvalidERC721TransferAmount", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidFulfillmentComponentData", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "InvalidMsgValue", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidNativeOfferItem", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidProof", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "InvalidRestrictedOrder", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidSignature", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidSigner", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + } + ], + "name": "InvalidTime", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "fulfillmentIndex", + "type": "uint256" + } + ], + "name": "MismatchedFulfillmentOfferAndConsiderationComponents", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "enum Side", + "name": "side", + "type": "uint8" + } + ], + "name": "MissingFulfillmentComponentOnAggregation", + "type": "error" + }, + { + "inputs": [], + "name": "MissingItemAmount", + "type": "error" + }, + { + "inputs": [], + "name": "MissingOriginalConsiderationItems", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "NativeTokenTransferGenericFailure", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "NoContract", + "type": "error" + }, + { + "inputs": [], + "name": "NoReentrantCalls", + "type": "error" + }, + { + "inputs": [], + "name": "NoSpecifiedOrdersAvailable", + "type": "error" + }, + { + "inputs": [], + "name": "OfferAndConsiderationRequiredOnFulfillment", + "type": "error" + }, + { + "inputs": [], + "name": "OfferCriteriaResolverOutOfRange", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "OrderAlreadyFilled", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "enum Side", + "name": "side", + "type": "uint8" + } + ], + "name": "OrderCriteriaResolverOutOfRange", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "OrderIsCancelled", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "OrderPartiallyFilled", + "type": "error" + }, + { + "inputs": [], + "name": "PartialFillsNotEnabledForOrder", + "type": "error" + }, + { + "inputs": [], + "name": "TStoreAlreadyActivated", + "type": "error" + }, + { + "inputs": [], + "name": "TStoreNotSupported", + "type": "error" + }, + { + "inputs": [], + "name": "TloadTestContractDeploymentFailed", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "TokenTransferGenericFailure", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "considerationIndex", + "type": "uint256" + } + ], + "name": "UnresolvedConsiderationCriteria", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "offerIndex", + "type": "uint256" + } + ], + "name": "UnresolvedOfferCriteria", + "type": "error" + }, + { + "inputs": [], + "name": "UnusedItemParameters", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint256", + "name": "newCounter", + "type": "uint256" + }, + { + "indexed": true, + "internalType": "address", + "name": "offerer", + "type": "address" + } + ], + "name": "CounterIncremented", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "zone", + "type": "address" + } + ], + "name": "OrderCancelled", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "indexed": false, + "internalType": "struct SpentItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "indexed": false, + "internalType": "struct ReceivedItem[]", + "name": "consideration", + "type": "tuple[]" + } + ], + "name": "OrderFulfilled", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + }, + { + "components": [ + { + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + } + ], + "internalType": "struct OfferItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct ConsiderationItem[]", + "name": "consideration", + "type": "tuple[]" + }, + { + "internalType": "enum OrderType", + "name": "orderType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "zoneHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "salt", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "totalOriginalConsiderationItems", + "type": "uint256" + } + ], + "indexed": false, + "internalType": "struct OrderParameters", + "name": "orderParameters", + "type": "tuple" + } + ], + "name": "OrderValidated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32[]", + "name": "orderHashes", + "type": "bytes32[]" + } + ], + "name": "OrdersMatched", + "type": "event" + }, + { + "inputs": [], + "name": "__activateTstore", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x610200604052348015610010575f80fd5b5060405161079b38038061079b83398101604081905261002f91610301565b808080808080808061003f610164565b610120526101005260e05260c081905260a082815246610140819052604080515f9485526020879052948152606091825230608090815292842085825293909152939052610160526001600160a01b038316610180819052630a96ad3960e01b825282519092630a96ad3992600480820193918290030181865afa1580156100c9573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906100ed919061032e565b506101a052505f90506100fe61028a565b90506001600160a01b03811661012757604051632aea588760e01b815260040160405180910390fd5b5f610131826102a3565b8015156101c0526001600160a01b0383166101e05290508061015657600163929eee14555b5050505050505050506103c2565b5f808080808061019460408051808201909152600d81526c21b7b739b4b232b930ba34b7b760991b602082015290565b8051906020012095506040518060400160405280600381526020016218971b60e91b8152508051906020012094505f6040518060a00160405280606a8152602001610731606a913990505f6040518060c00160405280608481526020016105876084913990505f60405180610100016040528060d4815260200161065d60d49139905060405180608001604052806052815260200161060b6052913980519060200120965082805190602001209550818051906020012094505f8183856040516020016102639392919061037d565b60405160208183030381529060405290508080519060200120945050505050909192939495565b5f696002601e613d5c3d52f35f52600a60165ff0905090565b5f816001600160a01b0316600a5a6102bb91906103a3565b6040515f8181818686fa925050503d805f81146102f3576040519150601f19603f3d011682016040523d82523d5f602084013e6102f8565b606091505b50909392505050565b5f60208284031215610311575f80fd5b81516001600160a01b0381168114610327575f80fd5b9392505050565b5f806040838503121561033f575f80fd5b505080516020909101519092909150565b5f81515f5b8181101561036f5760208185018101518683015201610355565b505f93019283525090919050565b5f61039a61039461038e8488610350565b86610350565b84610350565b95945050505050565b5f826103bd57634e487b7160e01b5f52601260045260245ffd5b500490565b60805160a05160c05160e05161010051610120516101405161016051610180516101a0516101c0516101e0516101626104255f395f608d01525f604201525f50505f50505f50505f50505f50505f50505f50505f50505f50505f50506101625ff3fe608060405234801561000f575f80fd5b5060043610610029575f3560e01c80637423eb3c1461002d575b5f80fd5b610035610037565b005b63929eee14546001147f00000000000000000000000000000000000000000000000000000000000000008061006a575080155b1561008857604051630f45b98b60e41b815260040160405180910390fd5b6100b17f00000000000000000000000000000000000000000000000000000000000000006100d8565b6100ce576040516370a4078f60e01b815260040160405180910390fd5b5f63929eee145550565b5f816001600160a01b0316600a5a6100f09190610136565b6040515f8181818686fa925050503d805f8114610128576040519150601f19603f3d011682016040523d82523d5f602084013e61012d565b606091505b50909392505050565b5f8261015057634e487b7160e01b5f52601260045260245ffd5b50049056fea164736f6c6343000818000a436f6e73696465726174696f6e4974656d2875696e7438206974656d547970652c6164647265737320746f6b656e2c75696e74323536206964656e7469666965724f7243726974657269612c75696e74323536207374617274416d6f756e742c75696e7432353620656e64416d6f756e742c6164647265737320726563697069656e7429454950373132446f6d61696e28737472696e67206e616d652c737472696e672076657273696f6e2c75696e7432353620636861696e49642c6164647265737320766572696679696e67436f6e7472616374294f72646572436f6d706f6e656e74732861646472657373206f6666657265722c61646472657373207a6f6e652c4f666665724974656d5b5d206f666665722c436f6e73696465726174696f6e4974656d5b5d20636f6e73696465726174696f6e2c75696e7438206f72646572547970652c75696e7432353620737461727454696d652c75696e7432353620656e6454696d652c62797465733332207a6f6e65486173682c75696e743235362073616c742c6279746573333220636f6e647569744b65792c75696e7432353620636f756e746572294f666665724974656d2875696e7438206974656d547970652c6164647265737320746f6b656e2c75696e74323536206964656e7469666965724f7243726974657269612c75696e74323536207374617274416d6f756e742c75696e7432353620656e64416d6f756e7429", + "deployedBytecode": "0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c80637423eb3c1461002d575b5f80fd5b610035610037565b005b63929eee14546001147f00000000000000000000000000000000000000000000000000000000000000008061006a575080155b1561008857604051630f45b98b60e41b815260040160405180910390fd5b6100b17f00000000000000000000000000000000000000000000000000000000000000006100d8565b6100ce576040516370a4078f60e01b815260040160405180910390fd5b5f63929eee145550565b5f816001600160a01b0316600a5a6100f09190610136565b6040515f8181818686fa925050503d805f8114610128576040519150601f19603f3d011682016040523d82523d5f602084013e61012d565b606091505b50909392505050565b5f8261015057634e487b7160e01b5f52601260045260245ffd5b50049056fea164736f6c6343000818000a", + "linkReferences": {}, + "deployedLinkReferences": {} +} diff --git a/artifacts/OrderFulfiller.json b/artifacts/OrderFulfiller.json new file mode 100644 index 00000000..17fc9edc --- /dev/null +++ b/artifacts/OrderFulfiller.json @@ -0,0 +1,743 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "OrderFulfiller", + "sourceName": "seaport-core/src/lib/OrderFulfiller.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "conduitController", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [], + "name": "BadContractSignature", + "type": "error" + }, + { + "inputs": [], + "name": "BadFraction", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "BadReturnValueFromERC20OnTransfer", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint8", + "name": "v", + "type": "uint8" + } + ], + "name": "BadSignatureV", + "type": "error" + }, + { + "inputs": [], + "name": "CannotCancelOrder", + "type": "error" + }, + { + "inputs": [], + "name": "ConsiderationCriteriaResolverOutOfRange", + "type": "error" + }, + { + "inputs": [], + "name": "ConsiderationLengthNotEqualToTotalOriginal", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "considerationIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "shortfallAmount", + "type": "uint256" + } + ], + "name": "ConsiderationNotMet", + "type": "error" + }, + { + "inputs": [], + "name": "CriteriaNotEnabledForItem", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256[]", + "name": "identifiers", + "type": "uint256[]" + }, + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + } + ], + "name": "ERC1155BatchTransferGenericFailure", + "type": "error" + }, + { + "inputs": [], + "name": "InexactFraction", + "type": "error" + }, + { + "inputs": [], + "name": "InsufficientNativeTokensSupplied", + "type": "error" + }, + { + "inputs": [], + "name": "Invalid1155BatchTransferEncoding", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidBasicOrderParameterEncoding", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "conduit", + "type": "address" + } + ], + "name": "InvalidCallToConduit", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "conduit", + "type": "address" + } + ], + "name": "InvalidConduit", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "InvalidContractOrder", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "InvalidERC721TransferAmount", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "InvalidMsgValue", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidNativeOfferItem", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidProof", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "InvalidRestrictedOrder", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidSignature", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidSigner", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + } + ], + "name": "InvalidTime", + "type": "error" + }, + { + "inputs": [], + "name": "MissingItemAmount", + "type": "error" + }, + { + "inputs": [], + "name": "MissingOriginalConsiderationItems", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "NativeTokenTransferGenericFailure", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "NoContract", + "type": "error" + }, + { + "inputs": [], + "name": "NoReentrantCalls", + "type": "error" + }, + { + "inputs": [], + "name": "NoSpecifiedOrdersAvailable", + "type": "error" + }, + { + "inputs": [], + "name": "OfferCriteriaResolverOutOfRange", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "OrderAlreadyFilled", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "enum Side", + "name": "side", + "type": "uint8" + } + ], + "name": "OrderCriteriaResolverOutOfRange", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "OrderIsCancelled", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "OrderPartiallyFilled", + "type": "error" + }, + { + "inputs": [], + "name": "PartialFillsNotEnabledForOrder", + "type": "error" + }, + { + "inputs": [], + "name": "TStoreAlreadyActivated", + "type": "error" + }, + { + "inputs": [], + "name": "TStoreNotSupported", + "type": "error" + }, + { + "inputs": [], + "name": "TloadTestContractDeploymentFailed", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "TokenTransferGenericFailure", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "considerationIndex", + "type": "uint256" + } + ], + "name": "UnresolvedConsiderationCriteria", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "offerIndex", + "type": "uint256" + } + ], + "name": "UnresolvedOfferCriteria", + "type": "error" + }, + { + "inputs": [], + "name": "UnusedItemParameters", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint256", + "name": "newCounter", + "type": "uint256" + }, + { + "indexed": true, + "internalType": "address", + "name": "offerer", + "type": "address" + } + ], + "name": "CounterIncremented", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "zone", + "type": "address" + } + ], + "name": "OrderCancelled", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "indexed": false, + "internalType": "struct SpentItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "indexed": false, + "internalType": "struct ReceivedItem[]", + "name": "consideration", + "type": "tuple[]" + } + ], + "name": "OrderFulfilled", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + }, + { + "components": [ + { + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + } + ], + "internalType": "struct OfferItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct ConsiderationItem[]", + "name": "consideration", + "type": "tuple[]" + }, + { + "internalType": "enum OrderType", + "name": "orderType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "zoneHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "salt", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "totalOriginalConsiderationItems", + "type": "uint256" + } + ], + "indexed": false, + "internalType": "struct OrderParameters", + "name": "orderParameters", + "type": "tuple" + } + ], + "name": "OrderValidated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32[]", + "name": "orderHashes", + "type": "bytes32[]" + } + ], + "name": "OrdersMatched", + "type": "event" + }, + { + "inputs": [], + "name": "__activateTstore", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x610200604052348015610010575f80fd5b5060405161079938038061079983398101604081905261002f916102ff565b8080808080808061003e610162565b610120526101005260e05260c081905260a082815246610140819052604080515f9485526020879052948152606091825230608090815292842085825293909152939052610160526001600160a01b038316610180819052630a96ad3960e01b825282519092630a96ad3992600480820193918290030181865afa1580156100c8573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906100ec919061032c565b506101a052505f90506100fd610288565b90506001600160a01b03811661012657604051632aea588760e01b815260040160405180910390fd5b5f610130826102a1565b8015156101c0526001600160a01b0383166101e05290508061015557600163929eee14555b50505050505050506103c0565b5f808080808061019260408051808201909152600d81526c21b7b739b4b232b930ba34b7b760991b602082015290565b8051906020012095506040518060400160405280600381526020016218971b60e91b8152508051906020012094505f6040518060a00160405280606a815260200161072f606a913990505f6040518060c00160405280608481526020016105856084913990505f60405180610100016040528060d4815260200161065b60d4913990506040518060800160405280605281526020016106096052913980519060200120965082805190602001209550818051906020012094505f8183856040516020016102619392919061037b565b60405160208183030381529060405290508080519060200120945050505050909192939495565b5f696002601e613d5c3d52f35f52600a60165ff0905090565b5f816001600160a01b0316600a5a6102b991906103a1565b6040515f8181818686fa925050503d805f81146102f1576040519150601f19603f3d011682016040523d82523d5f602084013e6102f6565b606091505b50909392505050565b5f6020828403121561030f575f80fd5b81516001600160a01b0381168114610325575f80fd5b9392505050565b5f806040838503121561033d575f80fd5b505080516020909101519092909150565b5f81515f5b8181101561036d5760208185018101518683015201610353565b505f93019283525090919050565b5f61039861039261038c848861034e565b8661034e565b8461034e565b95945050505050565b5f826103bb57634e487b7160e01b5f52601260045260245ffd5b500490565b60805160a05160c05160e05161010051610120516101405161016051610180516101a0516101c0516101e0516101626104235f395f608d01525f604201525f50505f50505f50505f50505f50505f50505f50505f50505f50505f50506101625ff3fe608060405234801561000f575f80fd5b5060043610610029575f3560e01c80637423eb3c1461002d575b5f80fd5b610035610037565b005b63929eee14546001147f00000000000000000000000000000000000000000000000000000000000000008061006a575080155b1561008857604051630f45b98b60e41b815260040160405180910390fd5b6100b17f00000000000000000000000000000000000000000000000000000000000000006100d8565b6100ce576040516370a4078f60e01b815260040160405180910390fd5b5f63929eee145550565b5f816001600160a01b0316600a5a6100f09190610136565b6040515f8181818686fa925050503d805f8114610128576040519150601f19603f3d011682016040523d82523d5f602084013e61012d565b606091505b50909392505050565b5f8261015057634e487b7160e01b5f52601260045260245ffd5b50049056fea164736f6c6343000818000a436f6e73696465726174696f6e4974656d2875696e7438206974656d547970652c6164647265737320746f6b656e2c75696e74323536206964656e7469666965724f7243726974657269612c75696e74323536207374617274416d6f756e742c75696e7432353620656e64416d6f756e742c6164647265737320726563697069656e7429454950373132446f6d61696e28737472696e67206e616d652c737472696e672076657273696f6e2c75696e7432353620636861696e49642c6164647265737320766572696679696e67436f6e7472616374294f72646572436f6d706f6e656e74732861646472657373206f6666657265722c61646472657373207a6f6e652c4f666665724974656d5b5d206f666665722c436f6e73696465726174696f6e4974656d5b5d20636f6e73696465726174696f6e2c75696e7438206f72646572547970652c75696e7432353620737461727454696d652c75696e7432353620656e6454696d652c62797465733332207a6f6e65486173682c75696e743235362073616c742c6279746573333220636f6e647569744b65792c75696e7432353620636f756e746572294f666665724974656d2875696e7438206974656d547970652c6164647265737320746f6b656e2c75696e74323536206964656e7469666965724f7243726974657269612c75696e74323536207374617274416d6f756e742c75696e7432353620656e64416d6f756e7429", + "deployedBytecode": "0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c80637423eb3c1461002d575b5f80fd5b610035610037565b005b63929eee14546001147f00000000000000000000000000000000000000000000000000000000000000008061006a575080155b1561008857604051630f45b98b60e41b815260040160405180910390fd5b6100b17f00000000000000000000000000000000000000000000000000000000000000006100d8565b6100ce576040516370a4078f60e01b815260040160405180910390fd5b5f63929eee145550565b5f816001600160a01b0316600a5a6100f09190610136565b6040515f8181818686fa925050503d805f8114610128576040519150601f19603f3d011682016040523d82523d5f602084013e61012d565b606091505b50909392505050565b5f8261015057634e487b7160e01b5f52601260045260245ffd5b50049056fea164736f6c6343000818000a", + "linkReferences": {}, + "deployedLinkReferences": {} +} diff --git a/artifacts/OrderValidator.json b/artifacts/OrderValidator.json new file mode 100644 index 00000000..9284fa68 --- /dev/null +++ b/artifacts/OrderValidator.json @@ -0,0 +1,675 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "OrderValidator", + "sourceName": "seaport-core/src/lib/OrderValidator.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "conduitController", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [], + "name": "BadContractSignature", + "type": "error" + }, + { + "inputs": [], + "name": "BadFraction", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "BadReturnValueFromERC20OnTransfer", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint8", + "name": "v", + "type": "uint8" + } + ], + "name": "BadSignatureV", + "type": "error" + }, + { + "inputs": [], + "name": "CannotCancelOrder", + "type": "error" + }, + { + "inputs": [], + "name": "ConsiderationLengthNotEqualToTotalOriginal", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "considerationIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "shortfallAmount", + "type": "uint256" + } + ], + "name": "ConsiderationNotMet", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256[]", + "name": "identifiers", + "type": "uint256[]" + }, + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + } + ], + "name": "ERC1155BatchTransferGenericFailure", + "type": "error" + }, + { + "inputs": [], + "name": "InsufficientNativeTokensSupplied", + "type": "error" + }, + { + "inputs": [], + "name": "Invalid1155BatchTransferEncoding", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidBasicOrderParameterEncoding", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "conduit", + "type": "address" + } + ], + "name": "InvalidCallToConduit", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "conduit", + "type": "address" + } + ], + "name": "InvalidConduit", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "InvalidContractOrder", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "InvalidERC721TransferAmount", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "InvalidMsgValue", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidNativeOfferItem", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "InvalidRestrictedOrder", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidSignature", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidSigner", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + } + ], + "name": "InvalidTime", + "type": "error" + }, + { + "inputs": [], + "name": "MissingItemAmount", + "type": "error" + }, + { + "inputs": [], + "name": "MissingOriginalConsiderationItems", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "NativeTokenTransferGenericFailure", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "NoContract", + "type": "error" + }, + { + "inputs": [], + "name": "NoReentrantCalls", + "type": "error" + }, + { + "inputs": [], + "name": "NoSpecifiedOrdersAvailable", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "OrderAlreadyFilled", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "OrderIsCancelled", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "OrderPartiallyFilled", + "type": "error" + }, + { + "inputs": [], + "name": "PartialFillsNotEnabledForOrder", + "type": "error" + }, + { + "inputs": [], + "name": "TStoreAlreadyActivated", + "type": "error" + }, + { + "inputs": [], + "name": "TStoreNotSupported", + "type": "error" + }, + { + "inputs": [], + "name": "TloadTestContractDeploymentFailed", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "TokenTransferGenericFailure", + "type": "error" + }, + { + "inputs": [], + "name": "UnusedItemParameters", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint256", + "name": "newCounter", + "type": "uint256" + }, + { + "indexed": true, + "internalType": "address", + "name": "offerer", + "type": "address" + } + ], + "name": "CounterIncremented", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "zone", + "type": "address" + } + ], + "name": "OrderCancelled", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "indexed": false, + "internalType": "struct SpentItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "indexed": false, + "internalType": "struct ReceivedItem[]", + "name": "consideration", + "type": "tuple[]" + } + ], + "name": "OrderFulfilled", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + }, + { + "components": [ + { + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + } + ], + "internalType": "struct OfferItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct ConsiderationItem[]", + "name": "consideration", + "type": "tuple[]" + }, + { + "internalType": "enum OrderType", + "name": "orderType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "zoneHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "salt", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "totalOriginalConsiderationItems", + "type": "uint256" + } + ], + "indexed": false, + "internalType": "struct OrderParameters", + "name": "orderParameters", + "type": "tuple" + } + ], + "name": "OrderValidated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32[]", + "name": "orderHashes", + "type": "bytes32[]" + } + ], + "name": "OrdersMatched", + "type": "event" + }, + { + "inputs": [], + "name": "__activateTstore", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x610200604052348015610010575f80fd5b5060405161079538038061079583398101604081905261002f916102fb565b808080808061003c61015e565b610120526101005260e05260c081905260a082815246610140819052604080515f9485526020879052948152606091825230608090815292842085825293909152939052610160526001600160a01b038316610180819052630a96ad3960e01b825282519092630a96ad3992600480820193918290030181865afa1580156100c6573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906100ea9190610328565b506101a052505f90506100fb610284565b90506001600160a01b03811661012457604051632aea588760e01b815260040160405180910390fd5b5f61012e8261029d565b8015156101c0526001600160a01b0383166101e05290508061015357600163929eee14555b5050505050506103bc565b5f808080808061018e60408051808201909152600d81526c21b7b739b4b232b930ba34b7b760991b602082015290565b8051906020012095506040518060400160405280600381526020016218971b60e91b8152508051906020012094505f6040518060a00160405280606a815260200161072b606a913990505f6040518060c00160405280608481526020016105816084913990505f60405180610100016040528060d4815260200161065760d4913990506040518060800160405280605281526020016106056052913980519060200120965082805190602001209550818051906020012094505f81838560405160200161025d93929190610377565b60405160208183030381529060405290508080519060200120945050505050909192939495565b5f696002601e613d5c3d52f35f52600a60165ff0905090565b5f816001600160a01b0316600a5a6102b5919061039d565b6040515f8181818686fa925050503d805f81146102ed576040519150601f19603f3d011682016040523d82523d5f602084013e6102f2565b606091505b50909392505050565b5f6020828403121561030b575f80fd5b81516001600160a01b0381168114610321575f80fd5b9392505050565b5f8060408385031215610339575f80fd5b505080516020909101519092909150565b5f81515f5b81811015610369576020818501810151868301520161034f565b505f93019283525090919050565b5f61039461038e610388848861034a565b8661034a565b8461034a565b95945050505050565b5f826103b757634e487b7160e01b5f52601260045260245ffd5b500490565b60805160a05160c05160e05161010051610120516101405161016051610180516101a0516101c0516101e05161016261041f5f395f608d01525f604201525f50505f50505f50505f50505f50505f50505f50505f50505f50505f50506101625ff3fe608060405234801561000f575f80fd5b5060043610610029575f3560e01c80637423eb3c1461002d575b5f80fd5b610035610037565b005b63929eee14546001147f00000000000000000000000000000000000000000000000000000000000000008061006a575080155b1561008857604051630f45b98b60e41b815260040160405180910390fd5b6100b17f00000000000000000000000000000000000000000000000000000000000000006100d8565b6100ce576040516370a4078f60e01b815260040160405180910390fd5b5f63929eee145550565b5f816001600160a01b0316600a5a6100f09190610136565b6040515f8181818686fa925050503d805f8114610128576040519150601f19603f3d011682016040523d82523d5f602084013e61012d565b606091505b50909392505050565b5f8261015057634e487b7160e01b5f52601260045260245ffd5b50049056fea164736f6c6343000818000a436f6e73696465726174696f6e4974656d2875696e7438206974656d547970652c6164647265737320746f6b656e2c75696e74323536206964656e7469666965724f7243726974657269612c75696e74323536207374617274416d6f756e742c75696e7432353620656e64416d6f756e742c6164647265737320726563697069656e7429454950373132446f6d61696e28737472696e67206e616d652c737472696e672076657273696f6e2c75696e7432353620636861696e49642c6164647265737320766572696679696e67436f6e7472616374294f72646572436f6d706f6e656e74732861646472657373206f6666657265722c61646472657373207a6f6e652c4f666665724974656d5b5d206f666665722c436f6e73696465726174696f6e4974656d5b5d20636f6e73696465726174696f6e2c75696e7438206f72646572547970652c75696e7432353620737461727454696d652c75696e7432353620656e6454696d652c62797465733332207a6f6e65486173682c75696e743235362073616c742c6279746573333220636f6e647569744b65792c75696e7432353620636f756e746572294f666665724974656d2875696e7438206974656d547970652c6164647265737320746f6b656e2c75696e74323536206964656e7469666965724f7243726974657269612c75696e74323536207374617274416d6f756e742c75696e7432353620656e64416d6f756e7429", + "deployedBytecode": "0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c80637423eb3c1461002d575b5f80fd5b610035610037565b005b63929eee14546001147f00000000000000000000000000000000000000000000000000000000000000008061006a575080155b1561008857604051630f45b98b60e41b815260040160405180910390fd5b6100b17f00000000000000000000000000000000000000000000000000000000000000006100d8565b6100ce576040516370a4078f60e01b815260040160405180910390fd5b5f63929eee145550565b5f816001600160a01b0316600a5a6100f09190610136565b6040515f8181818686fa925050503d805f8114610128576040519150601f19603f3d011682016040523d82523d5f602084013e61012d565b606091505b50909392505050565b5f8261015057634e487b7160e01b5f52601260045260245ffd5b50049056fea164736f6c6343000818000a", + "linkReferences": {}, + "deployedLinkReferences": {} +} diff --git a/artifacts/Owned.json b/artifacts/Owned.json index 15ca875c..84bd21ef 100644 --- a/artifacts/Owned.json +++ b/artifacts/Owned.json @@ -35,8 +35,8 @@ "type": "function" } ], - "bytecode": "0x608060405234801561001057600080fd5b50600080546001600160a01b0319163317905560e9806100316000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c806313af40351460375780638da5cb5b146048575b600080fd5b6046604236600460ae565b6076565b005b600054605a906001600160a01b031681565b6040516001600160a01b03909116815260200160405180910390f35b6000546001600160a01b03163314608c57600080fd5b600080546001600160a01b0319166001600160a01b0392909216919091179055565b60006020828403121560bf57600080fd5b81356001600160a01b038116811460d557600080fd5b939250505056fea164736f6c6343000811000a", - "deployedBytecode": "0x6080604052348015600f57600080fd5b506004361060325760003560e01c806313af40351460375780638da5cb5b146048575b600080fd5b6046604236600460ae565b6076565b005b600054605a906001600160a01b031681565b6040516001600160a01b03909116815260200160405180910390f35b6000546001600160a01b03163314608c57600080fd5b600080546001600160a01b0319166001600160a01b0392909216919091179055565b60006020828403121560bf57600080fd5b81356001600160a01b038116811460d557600080fd5b939250505056fea164736f6c6343000811000a", + "bytecode": "0x608060405234801561000f575f80fd5b505f80546001600160a01b0319163317905560df8061002d5f395ff3fe6080604052348015600e575f80fd5b50600436106030575f3560e01c806313af40351460345780638da5cb5b146045575b5f80fd5b6043603f36600460a7565b6072565b005b5f546056906001600160a01b031681565b6040516001600160a01b03909116815260200160405180910390f35b5f546001600160a01b031633146086575f80fd5b5f80546001600160a01b0319166001600160a01b0392909216919091179055565b5f6020828403121560b6575f80fd5b81356001600160a01b038116811460cb575f80fd5b939250505056fea164736f6c6343000818000a", + "deployedBytecode": "0x6080604052348015600e575f80fd5b50600436106030575f3560e01c806313af40351460345780638da5cb5b146045575b5f80fd5b6043603f36600460a7565b6072565b005b5f546056906001600160a01b031681565b6040516001600160a01b03909116815260200160405180910390f35b5f546001600160a01b031633146086575f80fd5b5f80546001600160a01b0319166001600160a01b0392909216919091179055565b5f6020828403121560b6575f80fd5b81356001600160a01b038116811460cb575f80fd5b939250505056fea164736f6c6343000818000a", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/artifacts/ProxyReader.json b/artifacts/ProxyReader.json index 43972081..ef2f48b5 100644 --- a/artifacts/ProxyReader.json +++ b/artifacts/ProxyReader.json @@ -835,8 +835,8 @@ "type": "function" } ], - "bytecode": "0x608060405234801561001057600080fd5b50613cb4806100206000396000f3fe608060405234801561001057600080fd5b506004361061021c5760003560e01c80638da5cb5b11610125578063bebec6b4116100ad578063e985e9c51161007c578063e985e9c514610540578063f059235914610553578063f2fde38b14610566578063ffa1ad7414610579578063ffad6f551461059d57600080fd5b8063bebec6b4146104e7578063bfc5429b146104fa578063c15ae7cf1461050d578063c87b56dd1461052d57600080fd5b8063a81ce6f9116100f4578063a81ce6f91461046d578063ac9650d814610480578063b3f9e4cb146104a0578063b85afd28146104b3578063b98b3526146104d457600080fd5b80638da5cb5b146103f157806391015f6b146103f9578063933c051d1461041b578063a3f4df7e1461043d57600080fd5b80634bd79ed0116101a857806370a082311161017757806370a082311461038d578063715018a6146103a05780637e37479e146103a857806383caffbe146103bb578063869b8884146103ce57600080fd5b80634bd79ed0146103335780634f558e79146103465780636352211e14610359578063672b9f811461036c57600080fd5b80631bd8cc1a116101ef5780631bd8cc1a146102ac5780631be5e7ed146102cc578063276fabb1146102ec578063430c20811461030d578063485cc9551461032057600080fd5b806301ffc9a7146102215780630328075514610249578063081812fc1461026c57806313af403514610297575b600080fd5b61023461022f366004612c9d565b6105b0565b60405190151581526020015b60405180910390f35b61025c610257366004612d0b565b610638565b6040516102409493929190612dfe565b61027f61027a366004612e3c565b61065b565b6040516001600160a01b039091168152602001610240565b6102aa6102a5366004612e6a565b610760565b005b6102bf6102ba366004612d0b565b6107d1565b6040516102409190612e87565b6102df6102da366004612edb565b6107f0565b6040516102409190612f12565b6102ff6102fa366004612f25565b61091b565b604051908152602001610240565b61023461031b366004612f66565b61098f565b6102aa61032e366004612f92565b610aa2565b6102aa610341366004612fcb565b610bf5565b610234610354366004612e3c565b610e51565b61027f610367366004612e3c565b610e5c565b61037f61037a366004613036565b610e67565b604051610240929190613058565b6102ff61039b366004612e6a565b610f97565b6102aa611095565b6102ff6103b6366004612e6a565b6110a9565b6102bf6103c936600461307d565b611118565b6103e16103dc366004612fcb565b6114f0565b60405161024094939291906131bb565b61027f6116e6565b61040c610407366004612d0b565b611714565b60405161024093929190613208565b61042e610429366004612fcb565b611734565b60405161024093929190613234565b6102df604051806040016040528060118152602001702aa7299d10283937bc3c902932b0b232b960791b81525081565b61027f61047b366004612e3c565b6118bd565b61049361048e366004612f25565b61198b565b6040516102409190613277565b61027f6104ae366004612e3c565b611a7f565b6104c66104c1366004612d0b565b611b05565b6040516102409291906132d9565b6102df6104e23660046132fe565b611ce1565b6102df6104f5366004612e6a565b611cfb565b6102df6105083660046132fe565b611d6f565b61052061051b366004612f25565b611d89565b6040516102409190613371565b6102df61053b366004612e3c565b611e37565b61023461054e366004612f92565b611f09565b6102aa610561366004612fcb565b611f54565b6102aa610574366004612e6a565b612018565b6102df604051806040016040528060058152602001640302e352e360dc1b81525081565b6102aa6105ab366004613384565b612085565b60006001600160e01b031982166362526e6360e01b14806105e157506001600160e01b03198216636fa624af60e11b145b806105fc57506001600160e01b031982166308da864d60e31b145b8061061757506001600160e01b03198216638584880360e01b145b8061063257506301ffc9a760e01b6001600160e01b03198316145b92915050565b6000806060806106498787876120d8565b93509350935093505b93509350935093565b60006106668261233a565b61067257506000919050565b61067b826123d2565b6106f25760665460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa1580156106c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106ed91906133bd565b610632565b60655460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa15801561073c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061063291906133bd565b600061076a6116e6565b6001600160a01b0316146107c55760405162461bcd60e51b815260206004820152601e60248201527f50726f78795265616465723a204f574e45525f414c52454144595f534554000060448201526064015b60405180910390fd5b6107ce81612419565b50565b60606107e66107e0848661346a565b83612495565b90505b9392505050565b60606107fb826123d2565b1561088057606554604051631be5e7ed60e01b81526001600160a01b0390911690631be5e7ed9061083490879087908790600401613547565b600060405180830381865afa158015610851573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261087991908101906135b0565b90506107e9565b600061088b83612617565b90506001600160a01b0381163b1561091357604051631be5e7ed60e01b81526001600160a01b03821690631be5e7ed906108cd90889088908890600401613547565b600060405180830381865afa92505050801561090b57506040513d6000823e601f3d908101601f1916820160405261090891908101906135b0565b60015b156109135791505b509392505050565b60655460405163276fabb160e01b81526000916001600160a01b03169063276fabb19061094e908690869060040161366c565b602060405180830381865afa15801561096b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613680565b600061099a8261233a565b6109a657506000610632565b6109af826123d2565b610a2d5760665460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a04573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a289190613699565b6107e9565b60655460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a7e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613699565b600054610100900460ff1615808015610ac25750600054600160ff909116105b80610adc5750303b158015610adc575060005460ff166001145b610b3f5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107bc565b6000805460ff191660011790558015610b62576000805461ff0019166101001790555b606580546001600160a01b038086166001600160a01b0319928316179092556066805492851692909116919091179055610b9a61268a565b610ba261268a565b610baa6126b1565b8015610bf0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b610bfd6126e1565b828114610c4c5760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107bc565b60005b83811015610e4a5760006068868684818110610c6d57610c6d6136bb565b9050602002810190610c7f91906136d1565b604051610c8d929190613717565b908152604051908190036020019020541115610cf1576068858583818110610cb757610cb76136bb565b9050602002810190610cc991906136d1565b604051610cd7929190613717565b90815260200160405180910390206000610cf19190612c18565b60005b838383818110610d0657610d066136bb565b9050602002810190610d189190613727565b9050811015610ddc576068868684818110610d3557610d356136bb565b9050602002810190610d4791906136d1565b604051610d55929190613717565b9081526020016040518091039020848484818110610d7557610d756136bb565b9050602002810190610d879190613727565b83818110610d9757610d976136bb565b9050602002810190610da991906136d1565b82546001810184556000938452602090932090920191610dc991836137f8565b5080610dd4816138cd565b915050610cf4565b507fb2b57b54285120d17f49f2490a39ef791441fd0ad1e6b6818c23262bf91f061c858583818110610e1057610e106136bb565b9050602002810190610e2291906136d1565b604051610e309291906138e6565b60405180910390a180610e42816138cd565b915050610c4f565b5050505050565b60006106328261233a565b600061063282612740565b606080610e73836123d2565b15610ef95760655460405163672b9f8160e01b815260048101869052602481018590526001600160a01b039091169063672b9f8190604401600060405180830381865afa158015610ec8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610ef091908101906138fa565b91509150610f90565b6000610f0484612617565b90506001600160a01b0381163b15610f8e5760405163672b9f8160e01b815260048101869052602481018590526001600160a01b0382169063672b9f8190604401600060405180830381865afa925050508015610f8357506040513d6000823e601f3d908101601f19168201604052610f8091908101906138fa565b60015b15610f8e5790935091505b505b9250929050565b6065546040516370a0823160e01b81526001600160a01b03838116600483015260009283929116906370a0823190602401602060405180830381865afa158015610fe5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110099190613680565b6066549091506001600160a01b031615610632576066546040516370a0823160e01b81526001600160a01b038581166004830152909116906370a0823190602401602060405180830381865afa158015611067573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061108b9190613680565b6107e9908261395d565b61109d6126e1565b6110a76000612419565b565b606554604051633f1ba3cf60e11b81526001600160a01b0383811660048301526000921690637e37479e90602401602060405180830381865afa1580156110f4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190613680565b606060006067868660405161112e929190613717565b9081526020016040518091039020805461114790613770565b80601f016020809104026020016040519081016040528092919081815260200182805461117390613770565b80156111c05780601f10611195576101008083540402835291602001916111c0565b820191906000526020600020905b8154815290600101906020018083116111a357829003601f168201915b5050505050905080516000036111d657506114e8565b6000604051806040016040528060068152602001653a37b5b2b71760d11b81525090506000604051806040016040528060088152602001672e6164647265737360c01b81525090506000604051806040016040528060018152602001601760f91b815250905060008385838c8c868d8d8a60405160200161125f99989796959493929190613970565b6040516020818303038152906040529050600060688260405161128291906139f3565b9081526020016040518091039020805480602002602001604051908101604052809291908181526020016000905b8282101561135c5783829060005260206000200180546112cf90613770565b80601f01602080910402602001604051908101604052809291908181526020018280546112fb90613770565b80156113485780601f1061131d57610100808354040283529160200191611348565b820191906000526020600020905b81548152906001019060200180831161132b57829003601f168201915b5050505050815260200190600101906112b0565b50505050905080516003611370919061395d565b6001600160401b03811115611387576113876133da565b6040519080825280602002602001820160405280156113ba57816020015b60608152602001906001900390816113a55790505b50965081876000815181106113d1576113d16136bb565b602002602001018190525060005b815181101561143e578181815181106113fa576113fa6136bb565b602002602001015188826001611410919061395d565b81518110611420576114206136bb565b60200260200101819052508080611436906138cd565b9150506113df565b508486848d8d8860405160200161145a96959493929190613a0f565b6040516020818303038152906040528782516001611478919061395d565b81518110611488576114886136bb565b60200260200101819052508486856040516020016114a893929190613a72565b60405160208183030381529060405287825160026114c6919061395d565b815181106114d6576114d66136bb565b60200260200101819052505050505050505b949350505050565b6060808080846001600160401b0381111561150d5761150d6133da565b604051908082528060200260200182016040528015611536578160200160208202803683370190505b509350846001600160401b03811115611551576115516133da565b60405190808252806020026020018201604052801561157a578160200160208202803683370190505b509250846001600160401b03811115611595576115956133da565b6040519080825280602002602001820160405280156115c857816020015b60608152602001906001900390816115b35790505b509150846001600160401b038111156115e3576115e36133da565b60405190808252806020026020018201604052801561161657816020015b60608152602001906001900390816116015790505b50905060005b858110156116da57611647898989898581811061163b5761163b6136bb565b905060200201356120d8565b888581518110611659576116596136bb565b60200260200101888681518110611672576116726136bb565b6020026020010188878151811061168b5761168b6136bb565b602002602001018888815181106116a4576116a46136bb565b6020908102919091010193909352929091526001600160a01b0392831690915291169052806116d2816138cd565b91505061161c565b50945094509450949050565b7fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c8121905546001600160a01b031690565b6000806060611724868686612761565b9250925092505b93509350939050565b60608080836001600160401b03811115611750576117506133da565b604051908082528060200260200182016040528015611779578160200160208202803683370190505b509250836001600160401b03811115611794576117946133da565b6040519080825280602002602001820160405280156117bd578160200160208202803683370190505b509150836001600160401b038111156117d8576117d86133da565b60405190808252806020026020018201604052801561180b57816020015b60608152602001906001900390816117f65790505b50905060005b848110156118b25761183c8888888885818110611830576118306136bb565b90506020020135612761565b86848151811061184e5761184e6136bb565b60200260200101868581518110611867576118676136bb565b60200260200101868681518110611880576118806136bb565b60209081029190910101929092526001600160a01b0392831690915291169052806118aa816138cd565b915050611811565b509450945094915050565b606554604051634f558e7960e01b8152600481018390526000916001600160a01b031690634f558e7990602401602060405180830381865afa158015611907573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061192b9190613699565b156119415750506065546001600160a01b031690565b6066546001600160a01b03161580159061196d575060006119618361296c565b6001600160a01b031614155b156119835750506066546001600160a01b031690565b506000919050565b6060816001600160401b038111156119a5576119a56133da565b6040519080825280602002602001820160405280156119d857816020015b60608152602001906001900390816119c35790505b50905060005b82811015611a7857611a48308585848181106119fc576119fc6136bb565b9050602002810190611a0e91906136d1565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061299e92505050565b828281518110611a5a57611a5a6136bb565b60200260200101819052508080611a70906138cd565b9150506119de565b5092915050565b6000611a8a8261233a565b611a9657506000919050565b611a9f826123d2565b611ad45760665460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb906024016106ac565b60655460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb9060240161071f565b606080836001600160401b03811115611b2057611b206133da565b604051908082528060200260200182016040528015611b5357816020015b6060815260200190600190039081611b3e5790505b509150836001600160401b03811115611b6e57611b6e6133da565b604051908082528060200260200182016040528015611ba157816020015b6060815260200190600190039081611b8c5790505b509050611bad836123d2565b15611c345760655460405163170b5fa560e31b81526001600160a01b039091169063b85afd2890611be690889088908890600401613ab5565b600060405180830381865afa158015611c03573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611c2b9190810190613b72565b91509150611cd9565b6000611c3f84612617565b90506001600160a01b0381163b15158015611c5957508415155b15611cd75760405163170b5fa560e31b81526001600160a01b0382169063b85afd2890611c8e90899089908990600401613ab5565b600060405180830381865afa925050508015611ccc57506040513d6000823e601f3d908101601f19168201604052611cc99190810190613b72565b60015b15611cd75790935091505b505b935093915050565b6060611cf08686868686612a92565b979650505050505050565b606554604051632fafb1ad60e21b81526001600160a01b038381166004830152606092169063bebec6b4906024015b600060405180830381865afa158015611d47573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261063291908101906135b0565b6060611d7e8686868686612a92565b509695505050505050565b6060816001600160401b03811115611da357611da36133da565b604051908082528060200260200182016040528015611dcc578160200160208202803683370190505b50905060005b82811015611a7857611dfb848483818110611def57611def6136bb565b90506020020135612740565b828281518110611e0d57611e0d6136bb565b6001600160a01b039092166020928302919091019091015280611e2f816138cd565b915050611dd2565b6060611e428261233a565b611e5a57505060408051602081019091526000815290565b611e63826123d2565b611ed85760665460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401600060405180830381865afa158015611eb0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106ed91908101906135b0565b60655460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401611d2a565b60405162461bcd60e51b815260206004820152601f60248201527f50726f78795265616465723a20554e535550504f525445445f4d4554484f440060448201526000906064016107bc565b611f5c6126e1565b828114611fab5760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107bc565b60005b83811015610e4a57612006858583818110611fcb57611fcb6136bb565b9050602002810190611fdd91906136d1565b858585818110611fef57611fef6136bb565b905060200281019061200191906136d1565b612b3e565b80612010816138cd565b915050611fae565b6120206126e1565b6001600160a01b0381166107c55760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107bc565b61208d6126e1565b60005b83811015610e4a576120c68585838181106120ad576120ad6136bb565b90506020028101906120bf91906136d1565b8585612b3e565b806120d0816138cd565b915050612090565b600080606080856001600160401b038111156120f6576120f66133da565b60405190808252806020026020018201604052801561212957816020015b60608152602001906001900390816121145790505b509150856001600160401b03811115612144576121446133da565b60405190808252806020026020018201604052801561217757816020015b60608152602001906001900390816121625790505b509050612183856123d2565b156122845760655460405163b3f9e4cb60e01b8152600481018790526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa1580156121d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121f591906133bd565b935061220085612bad565b60655460405163170b5fa560e31b81529194506001600160a01b03169063b85afd2890612235908a908a908a90600401613ab5565b600060405180830381865afa158015612252573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261227a9190810190613b72565b9092509050610652565b61228d85612617565b93506122988561296c565b92506001600160a01b0384163b151580156122b4575060008251115b156106525760405163170b5fa560e31b81526001600160a01b0385169063b85afd28906122e9908a908a908a90600401613ab5565b600060405180830381865afa92505050801561232757506040513d6000823e601f3d908101601f191682016040526123249190810190613b72565b60015b1561065257909250905093509350935093565b6000612345826123d2565b6123645760006123548361296c565b6001600160a01b03161415610632565b606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e79906024015b602060405180830381865afa1580156123ae573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190613699565b6066546000906001600160a01b031615806106325750606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401612391565b60006124236116e6565b9050817fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c812190580546001600160a01b0319166001600160a01b03928316179055604051838216918316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b606082516001600160401b038111156124b0576124b06133da565b6040519080825280602002602001820160405280156124e357816020015b60608152602001906001900390816124ce5790505b5090506124ef826123d2565b1561257257606554604051630dec660d60e11b81526001600160a01b0390911690631bd8cc1a906125269086908690600401613bcb565b600060405180830381865afa158015612543573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261256b9190810190613bed565b9050610632565b600061257d83612617565b90506001600160a01b0381163b15158015612599575060008451115b15611a7857604051630dec660d60e11b81526001600160a01b03821690631bd8cc1a906125cc9087908790600401613bcb565b600060405180830381865afa92505050801561260a57506040513d6000823e601f3d908101601f191682016040526126079190810190613bed565b60015b15611a7857949350505050565b60665460405163b3f9e4cb60e01b8152600481018390526000916001600160a01b03169063b3f9e4cb906024015b602060405180830381865afa92505050801561267e575060408051601f3d908101601f1916820190925261267b918101906133bd565b60015b61063257506000919050565b600054610100900460ff166110a75760405162461bcd60e51b81526004016107bc90613c21565b600054610100900460ff166126d85760405162461bcd60e51b81526004016107bc90613c21565b6110a733612419565b336126ea6116e6565b6001600160a01b0316146110a75760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107bc565b600061274b826123d2565b612758576106ed8261296c565b61063282612bad565b6000806060846001600160401b0381111561277e5761277e6133da565b6040519080825280602002602001820160405280156127b157816020015b606081526020019060019003908161279c5790505b5090506127bd846123d2565b156128bb5760655460405163b3f9e4cb60e01b8152600481018690526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561280b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061282f91906133bd565b925061283a84612bad565b606554604051630dec660d60e11b81529193506001600160a01b031690631bd8cc1a9061286f90899089908990600401613c6c565b600060405180830381865afa15801561288c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526128b49190810190613bed565b905061172b565b6128c484612617565b92506128cf8461296c565b91506001600160a01b0383163b151580156128e957508415155b1561172b57604051630dec660d60e11b81526001600160a01b03841690631bd8cc1a9061291e90899089908990600401613c6c565b600060405180830381865afa92505050801561295c57506040513d6000823e601f3d908101601f191682016040526129599190810190613bed565b60015b1561172b57905093509350939050565b6066546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401612645565b60606001600160a01b0383163b612a065760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b60648201526084016107bc565b600080846001600160a01b031684604051612a2191906139f3565b600060405180830381855af49150503d8060008114612a5c576040519150601f19603f3d011682016040523d82523d6000602084013e612a61565b606091505b5091509150612a898282604051806060016040528060278152602001613c8160279139612bdf565b95945050505050565b6060806000612aa388888888611118565b90506000612ab18286612495565b905060005b8151811015612b31576000828281518110612ad357612ad36136bb565b6020026020010151511115612b1f57828181518110612af457612af46136bb565b60200260200101519350818181518110612b1057612b106136bb565b60200260200101519450612b31565b80612b29816138cd565b915050612ab6565b5050509550959350505050565b818160678686604051612b52929190613717565b90815260200160405180910390209182612b6d9291906137f8565b507f0bf4b04a0f6d7d0800284e1abb0f58f795c0a25b9088634b6ab847be51001dec8484604051612b9f9291906138e6565b60405180910390a150505050565b6065546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401612645565b60608315612bee5750816107e9565b825115612bfe5782518084602001fd5b8160405162461bcd60e51b81526004016107bc9190612f12565b50805460008255906000526020600020908101906107ce91905b80821115612c4f576000612c468282612c53565b50600101612c32565b5090565b508054612c5f90613770565b6000825580601f10612c6f575050565b601f0160209004906000526020600020908101906107ce91905b80821115612c4f5760008155600101612c89565b600060208284031215612caf57600080fd5b81356001600160e01b0319811681146107e957600080fd5b60008083601f840112612cd957600080fd5b5081356001600160401b03811115612cf057600080fd5b6020830191508360208260051b8501011115610f9057600080fd5b600080600060408486031215612d2057600080fd5b83356001600160401b03811115612d3657600080fd5b612d4286828701612cc7565b909790965060209590950135949350505050565b60005b83811015612d71578181015183820152602001612d59565b50506000910152565b60008151808452612d92816020860160208601612d56565b601f01601f19169290920160200192915050565b600082825180855260208086019550808260051b84010181860160005b84811015612df157601f19868403018952612ddf838351612d7a565b98840198925090830190600101612dc3565b5090979650505050505050565b6001600160a01b03858116825284166020820152608060408201819052600090612e2a90830185612da6565b8281036060840152611cf08185612da6565b600060208284031215612e4e57600080fd5b5035919050565b6001600160a01b03811681146107ce57600080fd5b600060208284031215612e7c57600080fd5b81356107e981612e55565b6020815260006107e96020830184612da6565b60008083601f840112612eac57600080fd5b5081356001600160401b03811115612ec357600080fd5b602083019150836020828501011115610f9057600080fd5b600080600060408486031215612ef057600080fd5b83356001600160401b03811115612f0657600080fd5b612d4286828701612e9a565b6020815260006107e96020830184612d7a565b60008060208385031215612f3857600080fd5b82356001600160401b03811115612f4e57600080fd5b612f5a85828601612cc7565b90969095509350505050565b60008060408385031215612f7957600080fd5b8235612f8481612e55565b946020939093013593505050565b60008060408385031215612fa557600080fd5b8235612fb081612e55565b91506020830135612fc081612e55565b809150509250929050565b60008060008060408587031215612fe157600080fd5b84356001600160401b0380821115612ff857600080fd5b61300488838901612cc7565b9096509450602087013591508082111561301d57600080fd5b5061302a87828801612cc7565b95989497509550505050565b6000806040838503121561304957600080fd5b50508035926020909101359150565b60408152600061306b6040830185612d7a565b8281036020840152612a898185612d7a565b6000806000806040858703121561309357600080fd5b84356001600160401b03808211156130aa57600080fd5b6130b688838901612e9a565b909650945060208701359150808211156130cf57600080fd5b5061302a87828801612e9a565b600081518084526020808501945080840160005b838110156131155781516001600160a01b0316875295820195908201906001016130f0565b509495945050505050565b60008282518085526020808601955060058183821b8501018287016000805b868110156131ac57601f1988850381018c5283518051808752908801908887019080891b88018a01865b8281101561319557858a8303018452613183828651612d7a565b948c0194938c01939150600101613169565b509e8a019e9750505093870193505060010161313f565b50919998505050505050505050565b6080815260006131ce60808301876130dc565b82810360208401526131e081876130dc565b905082810360408401526131f48186613120565b90508281036060840152611cf08185613120565b6001600160a01b03848116825283166020820152606060408201819052600090612a8990830184612da6565b60608152600061324760608301866130dc565b828103602084015261325981866130dc565b9050828103604084015261326d8185613120565b9695505050505050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156132cc57603f198886030184526132ba858351612d7a565b9450928501929085019060010161329e565b5092979650505050505050565b6040815260006132ec6040830185612da6565b8281036020840152612a898185612da6565b60008060008060006060868803121561331657600080fd5b85356001600160401b038082111561332d57600080fd5b61333989838a01612e9a565b9097509550602088013591508082111561335257600080fd5b5061335f88828901612e9a565b96999598509660400135949350505050565b6020815260006107e960208301846130dc565b6000806000806040858703121561339a57600080fd5b84356001600160401b03808211156133b157600080fd5b6130b688838901612cc7565b6000602082840312156133cf57600080fd5b81516107e981612e55565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715613418576134186133da565b604052919050565b60006001600160401b03821115613439576134396133da565b5060051b60200190565b60006001600160401b0382111561345c5761345c6133da565b50601f01601f191660200190565b600061347d61347884613420565b6133f0565b80848252602080830192508560051b85013681111561349b57600080fd5b855b818110156135125780356001600160401b038111156134bc5760008081fd5b870136601f8201126134ce5760008081fd5b80356134dc61347882613443565b81815236868385010111156134f15760008081fd5b8186840187830137600091810186019190915286525093820193820161349d565b50919695505050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60408152600061355b60408301858761351e565b9050826020830152949350505050565b600082601f83011261357c57600080fd5b815161358a61347882613443565b81815284602083860101111561359f57600080fd5b6114e8826020830160208701612d56565b6000602082840312156135c257600080fd5b81516001600160401b038111156135d857600080fd5b6114e88482850161356b565b60008383855260208086019550808560051b8301018460005b87811015612df157848303601f19018952813536889003601e1901811261362357600080fd5b870184810190356001600160401b0381111561363e57600080fd5b80360382131561364d57600080fd5b61365885828461351e565b9a86019a94505050908301906001016135fd565b6020815260006107e66020830184866135e4565b60006020828403121561369257600080fd5b5051919050565b6000602082840312156136ab57600080fd5b815180151581146107e957600080fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e198436030181126136e857600080fd5b8301803591506001600160401b0382111561370257600080fd5b602001915036819003821315610f9057600080fd5b8183823760009101908152919050565b6000808335601e1984360301811261373e57600080fd5b8301803591506001600160401b0382111561375857600080fd5b6020019150600581901b3603821315610f9057600080fd5b600181811c9082168061378457607f821691505b6020821081036137a457634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115610bf057600081815260208120601f850160051c810160208610156137d15750805b601f850160051c820191505b818110156137f0578281556001016137dd565b505050505050565b6001600160401b0383111561380f5761380f6133da565b6138238361381d8354613770565b836137aa565b6000601f841160018114613857576000851561383f5750838201355b600019600387901b1c1916600186901b178355610e4a565b600083815260209020601f19861690835b828110156138885786850135825560209485019460019092019101613868565b50868210156138a55760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b634e487b7160e01b600052601160045260246000fd5b6000600182016138df576138df6138b7565b5060010190565b6020815260006107e660208301848661351e565b6000806040838503121561390d57600080fd5b82516001600160401b038082111561392457600080fd5b6139308683870161356b565b9350602085015191508082111561394657600080fd5b506139538582860161356b565b9150509250929050565b80820180821115610632576106326138b7565b60008a51613982818460208f01612d56565b8a5190830190613996818360208f01612d56565b8a519101906139a9818360208e01612d56565b0187898237600090880190815286516139c6818360208b01612d56565b0184868237600090850190815283516139e3818360208801612d56565b019b9a5050505050505050505050565b60008251613a05818460208701612d56565b9190910192915050565b60008751613a21818460208c01612d56565b875190830190613a35818360208c01612d56565b8751910190613a48818360208b01612d56565b018486823760009085019081528351613a65818360208801612d56565b0198975050505050505050565b60008451613a84818460208901612d56565b845190830190613a98818360208901612d56565b8451910190613aab818360208801612d56565b0195945050505050565b6040808252810183905260006001600160fb1b03841115613ad557600080fd5b8360051b808660608501376020830193909352500160600192915050565b600082601f830112613b0457600080fd5b81516020613b1461347883613420565b82815260059290921b84018101918181019086841115613b3357600080fd5b8286015b84811015611d7e5780516001600160401b03811115613b565760008081fd5b613b648986838b010161356b565b845250918301918301613b37565b60008060408385031215613b8557600080fd5b82516001600160401b0380821115613b9c57600080fd5b613ba886838701613af3565b93506020850151915080821115613bbe57600080fd5b5061395385828601613af3565b604081526000613bde6040830185612da6565b90508260208301529392505050565b600060208284031215613bff57600080fd5b81516001600160401b03811115613c1557600080fd5b6114e884828501613af3565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60408152600061355b6040830185876135e456fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a", - "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061021c5760003560e01c80638da5cb5b11610125578063bebec6b4116100ad578063e985e9c51161007c578063e985e9c514610540578063f059235914610553578063f2fde38b14610566578063ffa1ad7414610579578063ffad6f551461059d57600080fd5b8063bebec6b4146104e7578063bfc5429b146104fa578063c15ae7cf1461050d578063c87b56dd1461052d57600080fd5b8063a81ce6f9116100f4578063a81ce6f91461046d578063ac9650d814610480578063b3f9e4cb146104a0578063b85afd28146104b3578063b98b3526146104d457600080fd5b80638da5cb5b146103f157806391015f6b146103f9578063933c051d1461041b578063a3f4df7e1461043d57600080fd5b80634bd79ed0116101a857806370a082311161017757806370a082311461038d578063715018a6146103a05780637e37479e146103a857806383caffbe146103bb578063869b8884146103ce57600080fd5b80634bd79ed0146103335780634f558e79146103465780636352211e14610359578063672b9f811461036c57600080fd5b80631bd8cc1a116101ef5780631bd8cc1a146102ac5780631be5e7ed146102cc578063276fabb1146102ec578063430c20811461030d578063485cc9551461032057600080fd5b806301ffc9a7146102215780630328075514610249578063081812fc1461026c57806313af403514610297575b600080fd5b61023461022f366004612c9d565b6105b0565b60405190151581526020015b60405180910390f35b61025c610257366004612d0b565b610638565b6040516102409493929190612dfe565b61027f61027a366004612e3c565b61065b565b6040516001600160a01b039091168152602001610240565b6102aa6102a5366004612e6a565b610760565b005b6102bf6102ba366004612d0b565b6107d1565b6040516102409190612e87565b6102df6102da366004612edb565b6107f0565b6040516102409190612f12565b6102ff6102fa366004612f25565b61091b565b604051908152602001610240565b61023461031b366004612f66565b61098f565b6102aa61032e366004612f92565b610aa2565b6102aa610341366004612fcb565b610bf5565b610234610354366004612e3c565b610e51565b61027f610367366004612e3c565b610e5c565b61037f61037a366004613036565b610e67565b604051610240929190613058565b6102ff61039b366004612e6a565b610f97565b6102aa611095565b6102ff6103b6366004612e6a565b6110a9565b6102bf6103c936600461307d565b611118565b6103e16103dc366004612fcb565b6114f0565b60405161024094939291906131bb565b61027f6116e6565b61040c610407366004612d0b565b611714565b60405161024093929190613208565b61042e610429366004612fcb565b611734565b60405161024093929190613234565b6102df604051806040016040528060118152602001702aa7299d10283937bc3c902932b0b232b960791b81525081565b61027f61047b366004612e3c565b6118bd565b61049361048e366004612f25565b61198b565b6040516102409190613277565b61027f6104ae366004612e3c565b611a7f565b6104c66104c1366004612d0b565b611b05565b6040516102409291906132d9565b6102df6104e23660046132fe565b611ce1565b6102df6104f5366004612e6a565b611cfb565b6102df6105083660046132fe565b611d6f565b61052061051b366004612f25565b611d89565b6040516102409190613371565b6102df61053b366004612e3c565b611e37565b61023461054e366004612f92565b611f09565b6102aa610561366004612fcb565b611f54565b6102aa610574366004612e6a565b612018565b6102df604051806040016040528060058152602001640302e352e360dc1b81525081565b6102aa6105ab366004613384565b612085565b60006001600160e01b031982166362526e6360e01b14806105e157506001600160e01b03198216636fa624af60e11b145b806105fc57506001600160e01b031982166308da864d60e31b145b8061061757506001600160e01b03198216638584880360e01b145b8061063257506301ffc9a760e01b6001600160e01b03198316145b92915050565b6000806060806106498787876120d8565b93509350935093505b93509350935093565b60006106668261233a565b61067257506000919050565b61067b826123d2565b6106f25760665460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa1580156106c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106ed91906133bd565b610632565b60655460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa15801561073c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061063291906133bd565b600061076a6116e6565b6001600160a01b0316146107c55760405162461bcd60e51b815260206004820152601e60248201527f50726f78795265616465723a204f574e45525f414c52454144595f534554000060448201526064015b60405180910390fd5b6107ce81612419565b50565b60606107e66107e0848661346a565b83612495565b90505b9392505050565b60606107fb826123d2565b1561088057606554604051631be5e7ed60e01b81526001600160a01b0390911690631be5e7ed9061083490879087908790600401613547565b600060405180830381865afa158015610851573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261087991908101906135b0565b90506107e9565b600061088b83612617565b90506001600160a01b0381163b1561091357604051631be5e7ed60e01b81526001600160a01b03821690631be5e7ed906108cd90889088908890600401613547565b600060405180830381865afa92505050801561090b57506040513d6000823e601f3d908101601f1916820160405261090891908101906135b0565b60015b156109135791505b509392505050565b60655460405163276fabb160e01b81526000916001600160a01b03169063276fabb19061094e908690869060040161366c565b602060405180830381865afa15801561096b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613680565b600061099a8261233a565b6109a657506000610632565b6109af826123d2565b610a2d5760665460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a04573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a289190613699565b6107e9565b60655460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a7e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613699565b600054610100900460ff1615808015610ac25750600054600160ff909116105b80610adc5750303b158015610adc575060005460ff166001145b610b3f5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107bc565b6000805460ff191660011790558015610b62576000805461ff0019166101001790555b606580546001600160a01b038086166001600160a01b0319928316179092556066805492851692909116919091179055610b9a61268a565b610ba261268a565b610baa6126b1565b8015610bf0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b610bfd6126e1565b828114610c4c5760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107bc565b60005b83811015610e4a5760006068868684818110610c6d57610c6d6136bb565b9050602002810190610c7f91906136d1565b604051610c8d929190613717565b908152604051908190036020019020541115610cf1576068858583818110610cb757610cb76136bb565b9050602002810190610cc991906136d1565b604051610cd7929190613717565b90815260200160405180910390206000610cf19190612c18565b60005b838383818110610d0657610d066136bb565b9050602002810190610d189190613727565b9050811015610ddc576068868684818110610d3557610d356136bb565b9050602002810190610d4791906136d1565b604051610d55929190613717565b9081526020016040518091039020848484818110610d7557610d756136bb565b9050602002810190610d879190613727565b83818110610d9757610d976136bb565b9050602002810190610da991906136d1565b82546001810184556000938452602090932090920191610dc991836137f8565b5080610dd4816138cd565b915050610cf4565b507fb2b57b54285120d17f49f2490a39ef791441fd0ad1e6b6818c23262bf91f061c858583818110610e1057610e106136bb565b9050602002810190610e2291906136d1565b604051610e309291906138e6565b60405180910390a180610e42816138cd565b915050610c4f565b5050505050565b60006106328261233a565b600061063282612740565b606080610e73836123d2565b15610ef95760655460405163672b9f8160e01b815260048101869052602481018590526001600160a01b039091169063672b9f8190604401600060405180830381865afa158015610ec8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610ef091908101906138fa565b91509150610f90565b6000610f0484612617565b90506001600160a01b0381163b15610f8e5760405163672b9f8160e01b815260048101869052602481018590526001600160a01b0382169063672b9f8190604401600060405180830381865afa925050508015610f8357506040513d6000823e601f3d908101601f19168201604052610f8091908101906138fa565b60015b15610f8e5790935091505b505b9250929050565b6065546040516370a0823160e01b81526001600160a01b03838116600483015260009283929116906370a0823190602401602060405180830381865afa158015610fe5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110099190613680565b6066549091506001600160a01b031615610632576066546040516370a0823160e01b81526001600160a01b038581166004830152909116906370a0823190602401602060405180830381865afa158015611067573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061108b9190613680565b6107e9908261395d565b61109d6126e1565b6110a76000612419565b565b606554604051633f1ba3cf60e11b81526001600160a01b0383811660048301526000921690637e37479e90602401602060405180830381865afa1580156110f4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190613680565b606060006067868660405161112e929190613717565b9081526020016040518091039020805461114790613770565b80601f016020809104026020016040519081016040528092919081815260200182805461117390613770565b80156111c05780601f10611195576101008083540402835291602001916111c0565b820191906000526020600020905b8154815290600101906020018083116111a357829003601f168201915b5050505050905080516000036111d657506114e8565b6000604051806040016040528060068152602001653a37b5b2b71760d11b81525090506000604051806040016040528060088152602001672e6164647265737360c01b81525090506000604051806040016040528060018152602001601760f91b815250905060008385838c8c868d8d8a60405160200161125f99989796959493929190613970565b6040516020818303038152906040529050600060688260405161128291906139f3565b9081526020016040518091039020805480602002602001604051908101604052809291908181526020016000905b8282101561135c5783829060005260206000200180546112cf90613770565b80601f01602080910402602001604051908101604052809291908181526020018280546112fb90613770565b80156113485780601f1061131d57610100808354040283529160200191611348565b820191906000526020600020905b81548152906001019060200180831161132b57829003601f168201915b5050505050815260200190600101906112b0565b50505050905080516003611370919061395d565b6001600160401b03811115611387576113876133da565b6040519080825280602002602001820160405280156113ba57816020015b60608152602001906001900390816113a55790505b50965081876000815181106113d1576113d16136bb565b602002602001018190525060005b815181101561143e578181815181106113fa576113fa6136bb565b602002602001015188826001611410919061395d565b81518110611420576114206136bb565b60200260200101819052508080611436906138cd565b9150506113df565b508486848d8d8860405160200161145a96959493929190613a0f565b6040516020818303038152906040528782516001611478919061395d565b81518110611488576114886136bb565b60200260200101819052508486856040516020016114a893929190613a72565b60405160208183030381529060405287825160026114c6919061395d565b815181106114d6576114d66136bb565b60200260200101819052505050505050505b949350505050565b6060808080846001600160401b0381111561150d5761150d6133da565b604051908082528060200260200182016040528015611536578160200160208202803683370190505b509350846001600160401b03811115611551576115516133da565b60405190808252806020026020018201604052801561157a578160200160208202803683370190505b509250846001600160401b03811115611595576115956133da565b6040519080825280602002602001820160405280156115c857816020015b60608152602001906001900390816115b35790505b509150846001600160401b038111156115e3576115e36133da565b60405190808252806020026020018201604052801561161657816020015b60608152602001906001900390816116015790505b50905060005b858110156116da57611647898989898581811061163b5761163b6136bb565b905060200201356120d8565b888581518110611659576116596136bb565b60200260200101888681518110611672576116726136bb565b6020026020010188878151811061168b5761168b6136bb565b602002602001018888815181106116a4576116a46136bb565b6020908102919091010193909352929091526001600160a01b0392831690915291169052806116d2816138cd565b91505061161c565b50945094509450949050565b7fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c8121905546001600160a01b031690565b6000806060611724868686612761565b9250925092505b93509350939050565b60608080836001600160401b03811115611750576117506133da565b604051908082528060200260200182016040528015611779578160200160208202803683370190505b509250836001600160401b03811115611794576117946133da565b6040519080825280602002602001820160405280156117bd578160200160208202803683370190505b509150836001600160401b038111156117d8576117d86133da565b60405190808252806020026020018201604052801561180b57816020015b60608152602001906001900390816117f65790505b50905060005b848110156118b25761183c8888888885818110611830576118306136bb565b90506020020135612761565b86848151811061184e5761184e6136bb565b60200260200101868581518110611867576118676136bb565b60200260200101868681518110611880576118806136bb565b60209081029190910101929092526001600160a01b0392831690915291169052806118aa816138cd565b915050611811565b509450945094915050565b606554604051634f558e7960e01b8152600481018390526000916001600160a01b031690634f558e7990602401602060405180830381865afa158015611907573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061192b9190613699565b156119415750506065546001600160a01b031690565b6066546001600160a01b03161580159061196d575060006119618361296c565b6001600160a01b031614155b156119835750506066546001600160a01b031690565b506000919050565b6060816001600160401b038111156119a5576119a56133da565b6040519080825280602002602001820160405280156119d857816020015b60608152602001906001900390816119c35790505b50905060005b82811015611a7857611a48308585848181106119fc576119fc6136bb565b9050602002810190611a0e91906136d1565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061299e92505050565b828281518110611a5a57611a5a6136bb565b60200260200101819052508080611a70906138cd565b9150506119de565b5092915050565b6000611a8a8261233a565b611a9657506000919050565b611a9f826123d2565b611ad45760665460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb906024016106ac565b60655460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb9060240161071f565b606080836001600160401b03811115611b2057611b206133da565b604051908082528060200260200182016040528015611b5357816020015b6060815260200190600190039081611b3e5790505b509150836001600160401b03811115611b6e57611b6e6133da565b604051908082528060200260200182016040528015611ba157816020015b6060815260200190600190039081611b8c5790505b509050611bad836123d2565b15611c345760655460405163170b5fa560e31b81526001600160a01b039091169063b85afd2890611be690889088908890600401613ab5565b600060405180830381865afa158015611c03573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611c2b9190810190613b72565b91509150611cd9565b6000611c3f84612617565b90506001600160a01b0381163b15158015611c5957508415155b15611cd75760405163170b5fa560e31b81526001600160a01b0382169063b85afd2890611c8e90899089908990600401613ab5565b600060405180830381865afa925050508015611ccc57506040513d6000823e601f3d908101601f19168201604052611cc99190810190613b72565b60015b15611cd75790935091505b505b935093915050565b6060611cf08686868686612a92565b979650505050505050565b606554604051632fafb1ad60e21b81526001600160a01b038381166004830152606092169063bebec6b4906024015b600060405180830381865afa158015611d47573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261063291908101906135b0565b6060611d7e8686868686612a92565b509695505050505050565b6060816001600160401b03811115611da357611da36133da565b604051908082528060200260200182016040528015611dcc578160200160208202803683370190505b50905060005b82811015611a7857611dfb848483818110611def57611def6136bb565b90506020020135612740565b828281518110611e0d57611e0d6136bb565b6001600160a01b039092166020928302919091019091015280611e2f816138cd565b915050611dd2565b6060611e428261233a565b611e5a57505060408051602081019091526000815290565b611e63826123d2565b611ed85760665460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401600060405180830381865afa158015611eb0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106ed91908101906135b0565b60655460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401611d2a565b60405162461bcd60e51b815260206004820152601f60248201527f50726f78795265616465723a20554e535550504f525445445f4d4554484f440060448201526000906064016107bc565b611f5c6126e1565b828114611fab5760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107bc565b60005b83811015610e4a57612006858583818110611fcb57611fcb6136bb565b9050602002810190611fdd91906136d1565b858585818110611fef57611fef6136bb565b905060200281019061200191906136d1565b612b3e565b80612010816138cd565b915050611fae565b6120206126e1565b6001600160a01b0381166107c55760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107bc565b61208d6126e1565b60005b83811015610e4a576120c68585838181106120ad576120ad6136bb565b90506020028101906120bf91906136d1565b8585612b3e565b806120d0816138cd565b915050612090565b600080606080856001600160401b038111156120f6576120f66133da565b60405190808252806020026020018201604052801561212957816020015b60608152602001906001900390816121145790505b509150856001600160401b03811115612144576121446133da565b60405190808252806020026020018201604052801561217757816020015b60608152602001906001900390816121625790505b509050612183856123d2565b156122845760655460405163b3f9e4cb60e01b8152600481018790526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa1580156121d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121f591906133bd565b935061220085612bad565b60655460405163170b5fa560e31b81529194506001600160a01b03169063b85afd2890612235908a908a908a90600401613ab5565b600060405180830381865afa158015612252573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261227a9190810190613b72565b9092509050610652565b61228d85612617565b93506122988561296c565b92506001600160a01b0384163b151580156122b4575060008251115b156106525760405163170b5fa560e31b81526001600160a01b0385169063b85afd28906122e9908a908a908a90600401613ab5565b600060405180830381865afa92505050801561232757506040513d6000823e601f3d908101601f191682016040526123249190810190613b72565b60015b1561065257909250905093509350935093565b6000612345826123d2565b6123645760006123548361296c565b6001600160a01b03161415610632565b606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e79906024015b602060405180830381865afa1580156123ae573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190613699565b6066546000906001600160a01b031615806106325750606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401612391565b60006124236116e6565b9050817fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c812190580546001600160a01b0319166001600160a01b03928316179055604051838216918316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b606082516001600160401b038111156124b0576124b06133da565b6040519080825280602002602001820160405280156124e357816020015b60608152602001906001900390816124ce5790505b5090506124ef826123d2565b1561257257606554604051630dec660d60e11b81526001600160a01b0390911690631bd8cc1a906125269086908690600401613bcb565b600060405180830381865afa158015612543573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261256b9190810190613bed565b9050610632565b600061257d83612617565b90506001600160a01b0381163b15158015612599575060008451115b15611a7857604051630dec660d60e11b81526001600160a01b03821690631bd8cc1a906125cc9087908790600401613bcb565b600060405180830381865afa92505050801561260a57506040513d6000823e601f3d908101601f191682016040526126079190810190613bed565b60015b15611a7857949350505050565b60665460405163b3f9e4cb60e01b8152600481018390526000916001600160a01b03169063b3f9e4cb906024015b602060405180830381865afa92505050801561267e575060408051601f3d908101601f1916820190925261267b918101906133bd565b60015b61063257506000919050565b600054610100900460ff166110a75760405162461bcd60e51b81526004016107bc90613c21565b600054610100900460ff166126d85760405162461bcd60e51b81526004016107bc90613c21565b6110a733612419565b336126ea6116e6565b6001600160a01b0316146110a75760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107bc565b600061274b826123d2565b612758576106ed8261296c565b61063282612bad565b6000806060846001600160401b0381111561277e5761277e6133da565b6040519080825280602002602001820160405280156127b157816020015b606081526020019060019003908161279c5790505b5090506127bd846123d2565b156128bb5760655460405163b3f9e4cb60e01b8152600481018690526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561280b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061282f91906133bd565b925061283a84612bad565b606554604051630dec660d60e11b81529193506001600160a01b031690631bd8cc1a9061286f90899089908990600401613c6c565b600060405180830381865afa15801561288c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526128b49190810190613bed565b905061172b565b6128c484612617565b92506128cf8461296c565b91506001600160a01b0383163b151580156128e957508415155b1561172b57604051630dec660d60e11b81526001600160a01b03841690631bd8cc1a9061291e90899089908990600401613c6c565b600060405180830381865afa92505050801561295c57506040513d6000823e601f3d908101601f191682016040526129599190810190613bed565b60015b1561172b57905093509350939050565b6066546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401612645565b60606001600160a01b0383163b612a065760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b60648201526084016107bc565b600080846001600160a01b031684604051612a2191906139f3565b600060405180830381855af49150503d8060008114612a5c576040519150601f19603f3d011682016040523d82523d6000602084013e612a61565b606091505b5091509150612a898282604051806060016040528060278152602001613c8160279139612bdf565b95945050505050565b6060806000612aa388888888611118565b90506000612ab18286612495565b905060005b8151811015612b31576000828281518110612ad357612ad36136bb565b6020026020010151511115612b1f57828181518110612af457612af46136bb565b60200260200101519350818181518110612b1057612b106136bb565b60200260200101519450612b31565b80612b29816138cd565b915050612ab6565b5050509550959350505050565b818160678686604051612b52929190613717565b90815260200160405180910390209182612b6d9291906137f8565b507f0bf4b04a0f6d7d0800284e1abb0f58f795c0a25b9088634b6ab847be51001dec8484604051612b9f9291906138e6565b60405180910390a150505050565b6065546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401612645565b60608315612bee5750816107e9565b825115612bfe5782518084602001fd5b8160405162461bcd60e51b81526004016107bc9190612f12565b50805460008255906000526020600020908101906107ce91905b80821115612c4f576000612c468282612c53565b50600101612c32565b5090565b508054612c5f90613770565b6000825580601f10612c6f575050565b601f0160209004906000526020600020908101906107ce91905b80821115612c4f5760008155600101612c89565b600060208284031215612caf57600080fd5b81356001600160e01b0319811681146107e957600080fd5b60008083601f840112612cd957600080fd5b5081356001600160401b03811115612cf057600080fd5b6020830191508360208260051b8501011115610f9057600080fd5b600080600060408486031215612d2057600080fd5b83356001600160401b03811115612d3657600080fd5b612d4286828701612cc7565b909790965060209590950135949350505050565b60005b83811015612d71578181015183820152602001612d59565b50506000910152565b60008151808452612d92816020860160208601612d56565b601f01601f19169290920160200192915050565b600082825180855260208086019550808260051b84010181860160005b84811015612df157601f19868403018952612ddf838351612d7a565b98840198925090830190600101612dc3565b5090979650505050505050565b6001600160a01b03858116825284166020820152608060408201819052600090612e2a90830185612da6565b8281036060840152611cf08185612da6565b600060208284031215612e4e57600080fd5b5035919050565b6001600160a01b03811681146107ce57600080fd5b600060208284031215612e7c57600080fd5b81356107e981612e55565b6020815260006107e96020830184612da6565b60008083601f840112612eac57600080fd5b5081356001600160401b03811115612ec357600080fd5b602083019150836020828501011115610f9057600080fd5b600080600060408486031215612ef057600080fd5b83356001600160401b03811115612f0657600080fd5b612d4286828701612e9a565b6020815260006107e96020830184612d7a565b60008060208385031215612f3857600080fd5b82356001600160401b03811115612f4e57600080fd5b612f5a85828601612cc7565b90969095509350505050565b60008060408385031215612f7957600080fd5b8235612f8481612e55565b946020939093013593505050565b60008060408385031215612fa557600080fd5b8235612fb081612e55565b91506020830135612fc081612e55565b809150509250929050565b60008060008060408587031215612fe157600080fd5b84356001600160401b0380821115612ff857600080fd5b61300488838901612cc7565b9096509450602087013591508082111561301d57600080fd5b5061302a87828801612cc7565b95989497509550505050565b6000806040838503121561304957600080fd5b50508035926020909101359150565b60408152600061306b6040830185612d7a565b8281036020840152612a898185612d7a565b6000806000806040858703121561309357600080fd5b84356001600160401b03808211156130aa57600080fd5b6130b688838901612e9a565b909650945060208701359150808211156130cf57600080fd5b5061302a87828801612e9a565b600081518084526020808501945080840160005b838110156131155781516001600160a01b0316875295820195908201906001016130f0565b509495945050505050565b60008282518085526020808601955060058183821b8501018287016000805b868110156131ac57601f1988850381018c5283518051808752908801908887019080891b88018a01865b8281101561319557858a8303018452613183828651612d7a565b948c0194938c01939150600101613169565b509e8a019e9750505093870193505060010161313f565b50919998505050505050505050565b6080815260006131ce60808301876130dc565b82810360208401526131e081876130dc565b905082810360408401526131f48186613120565b90508281036060840152611cf08185613120565b6001600160a01b03848116825283166020820152606060408201819052600090612a8990830184612da6565b60608152600061324760608301866130dc565b828103602084015261325981866130dc565b9050828103604084015261326d8185613120565b9695505050505050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156132cc57603f198886030184526132ba858351612d7a565b9450928501929085019060010161329e565b5092979650505050505050565b6040815260006132ec6040830185612da6565b8281036020840152612a898185612da6565b60008060008060006060868803121561331657600080fd5b85356001600160401b038082111561332d57600080fd5b61333989838a01612e9a565b9097509550602088013591508082111561335257600080fd5b5061335f88828901612e9a565b96999598509660400135949350505050565b6020815260006107e960208301846130dc565b6000806000806040858703121561339a57600080fd5b84356001600160401b03808211156133b157600080fd5b6130b688838901612cc7565b6000602082840312156133cf57600080fd5b81516107e981612e55565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715613418576134186133da565b604052919050565b60006001600160401b03821115613439576134396133da565b5060051b60200190565b60006001600160401b0382111561345c5761345c6133da565b50601f01601f191660200190565b600061347d61347884613420565b6133f0565b80848252602080830192508560051b85013681111561349b57600080fd5b855b818110156135125780356001600160401b038111156134bc5760008081fd5b870136601f8201126134ce5760008081fd5b80356134dc61347882613443565b81815236868385010111156134f15760008081fd5b8186840187830137600091810186019190915286525093820193820161349d565b50919695505050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60408152600061355b60408301858761351e565b9050826020830152949350505050565b600082601f83011261357c57600080fd5b815161358a61347882613443565b81815284602083860101111561359f57600080fd5b6114e8826020830160208701612d56565b6000602082840312156135c257600080fd5b81516001600160401b038111156135d857600080fd5b6114e88482850161356b565b60008383855260208086019550808560051b8301018460005b87811015612df157848303601f19018952813536889003601e1901811261362357600080fd5b870184810190356001600160401b0381111561363e57600080fd5b80360382131561364d57600080fd5b61365885828461351e565b9a86019a94505050908301906001016135fd565b6020815260006107e66020830184866135e4565b60006020828403121561369257600080fd5b5051919050565b6000602082840312156136ab57600080fd5b815180151581146107e957600080fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e198436030181126136e857600080fd5b8301803591506001600160401b0382111561370257600080fd5b602001915036819003821315610f9057600080fd5b8183823760009101908152919050565b6000808335601e1984360301811261373e57600080fd5b8301803591506001600160401b0382111561375857600080fd5b6020019150600581901b3603821315610f9057600080fd5b600181811c9082168061378457607f821691505b6020821081036137a457634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115610bf057600081815260208120601f850160051c810160208610156137d15750805b601f850160051c820191505b818110156137f0578281556001016137dd565b505050505050565b6001600160401b0383111561380f5761380f6133da565b6138238361381d8354613770565b836137aa565b6000601f841160018114613857576000851561383f5750838201355b600019600387901b1c1916600186901b178355610e4a565b600083815260209020601f19861690835b828110156138885786850135825560209485019460019092019101613868565b50868210156138a55760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b634e487b7160e01b600052601160045260246000fd5b6000600182016138df576138df6138b7565b5060010190565b6020815260006107e660208301848661351e565b6000806040838503121561390d57600080fd5b82516001600160401b038082111561392457600080fd5b6139308683870161356b565b9350602085015191508082111561394657600080fd5b506139538582860161356b565b9150509250929050565b80820180821115610632576106326138b7565b60008a51613982818460208f01612d56565b8a5190830190613996818360208f01612d56565b8a519101906139a9818360208e01612d56565b0187898237600090880190815286516139c6818360208b01612d56565b0184868237600090850190815283516139e3818360208801612d56565b019b9a5050505050505050505050565b60008251613a05818460208701612d56565b9190910192915050565b60008751613a21818460208c01612d56565b875190830190613a35818360208c01612d56565b8751910190613a48818360208b01612d56565b018486823760009085019081528351613a65818360208801612d56565b0198975050505050505050565b60008451613a84818460208901612d56565b845190830190613a98818360208901612d56565b8451910190613aab818360208801612d56565b0195945050505050565b6040808252810183905260006001600160fb1b03841115613ad557600080fd5b8360051b808660608501376020830193909352500160600192915050565b600082601f830112613b0457600080fd5b81516020613b1461347883613420565b82815260059290921b84018101918181019086841115613b3357600080fd5b8286015b84811015611d7e5780516001600160401b03811115613b565760008081fd5b613b648986838b010161356b565b845250918301918301613b37565b60008060408385031215613b8557600080fd5b82516001600160401b0380821115613b9c57600080fd5b613ba886838701613af3565b93506020850151915080821115613bbe57600080fd5b5061395385828601613af3565b604081526000613bde6040830185612da6565b90508260208301529392505050565b600060208284031215613bff57600080fd5b81516001600160401b03811115613c1557600080fd5b6114e884828501613af3565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60408152600061355b6040830185876135e456fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a", + "bytecode": "0x608060405234801561000f575f80fd5b50613ae38061001d5f395ff3fe608060405234801561000f575f80fd5b5060043610610213575f3560e01c80638da5cb5b1161011f578063bebec6b4116100a9578063e985e9c511610079578063e985e9c514610536578063f059235914610549578063f2fde38b1461055c578063ffa1ad741461056f578063ffad6f5514610593575f80fd5b8063bebec6b4146104dd578063bfc5429b146104f0578063c15ae7cf14610503578063c87b56dd14610523575f80fd5b8063a81ce6f9116100ef578063a81ce6f914610463578063ac9650d814610476578063b3f9e4cb14610496578063b85afd28146104a9578063b98b3526146104ca575f80fd5b80638da5cb5b146103e757806391015f6b146103ef578063933c051d14610411578063a3f4df7e14610433575f80fd5b80634bd79ed0116101a057806370a082311161017057806370a0823114610383578063715018a6146103965780637e37479e1461039e57806383caffbe146103b1578063869b8884146103c4575f80fd5b80634bd79ed0146103295780634f558e791461033c5780636352211e1461034f578063672b9f8114610362575f80fd5b80631bd8cc1a116101e65780631bd8cc1a146102a25780631be5e7ed146102c2578063276fabb1146102e2578063430c208114610303578063485cc95514610316575f80fd5b806301ffc9a714610217578063032807551461023f578063081812fc1461026257806313af40351461028d575b5f80fd5b61022a610225366004612b8e565b6105a6565b60405190151581526020015b60405180910390f35b61025261024d366004612bf5565b61062d565b6040516102369493929190612ce1565b610275610270366004612d1e565b61064f565b6040516001600160a01b039091168152602001610236565b6102a061029b366004612d49565b61074e565b005b6102b56102b0366004612bf5565b6107be565b6040516102369190612d64565b6102d56102d0366004612db3565b6107dd565b6040516102369190612de6565b6102f56102f0366004612df8565b610901565b604051908152602001610236565b61022a610311366004612e36565b610972565b6102a0610324366004612e60565b610a7f565b6102a0610337366004612e97565b610bcc565b61022a61034a366004612d1e565b610e0f565b61027561035d366004612d1e565b610e19565b610375610370366004612efd565b610e23565b604051610236929190612f1d565b6102f5610391366004612d49565b610f4c565b6102a0611045565b6102f56103ac366004612d49565b611058565b6102b56103bf366004612f41565b6110c4565b6103d76103d2366004612e97565b611481565b6040516102369493929190613076565b61027561166c565b6104026103fd366004612bf5565b61169a565b604051610236939291906130c2565b61042461041f366004612e97565b6116b9565b604051610236939291906130ed565b6102d5604051806040016040528060118152602001702aa7299d10283937bc3c902932b0b232b960791b81525081565b610275610471366004612d1e565b611837565b610489610484366004612df8565b611900565b604051610236919061312f565b6102756104a4366004612d1e565b6119e7565b6104bc6104b7366004612bf5565b611a6b565b604051610236929190613191565b6102d56104d83660046131b5565b611c40565b6102d56104eb366004612d49565b611c5a565b6102d56104fe3660046131b5565b611cca565b610516610511366004612df8565b611ce4565b6040516102369190613222565b6102d5610531366004612d1e565b611d87565b61022a610544366004612e60565b611e54565b6102a0610557366004612e97565b611e9e565b6102a061056a366004612d49565b611f57565b6102d5604051806040016040528060058152602001640302e352e360dc1b81525081565b6102a06105a1366004613234565b611fc4565b5f6001600160e01b031982166362526e6360e01b14806105d657506001600160e01b03198216636fa624af60e11b145b806105f157506001600160e01b031982166308da864d60e31b145b8061060c57506001600160e01b03198216638584880360e01b145b8061062757506301ffc9a760e01b6001600160e01b03198316145b92915050565b5f8060608061063d87878761200c565b93509350935093505b93509350935093565b5f61065982612264565b61066457505f919050565b61066d826122f8565b6106e25760665460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa1580156106b9573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106dd9190613269565b610627565b60655460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa15801561072a573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106279190613269565b5f61075761166c565b6001600160a01b0316146107b25760405162461bcd60e51b815260206004820152601e60248201527f50726f78795265616465723a204f574e45525f414c52454144595f534554000060448201526064015b60405180910390fd5b6107bb8161233e565b50565b60606107d36107cd8486613310565b836123b8565b90505b9392505050565b60606107e8826122f8565b1561086957606554604051631be5e7ed60e01b81526001600160a01b0390911690631be5e7ed90610821908790879087906004016133e3565b5f60405180830381865afa15801561083b573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526108629190810190613448565b90506107d6565b5f61087383612532565b90506001600160a01b0381163b156108f957604051631be5e7ed60e01b81526001600160a01b03821690631be5e7ed906108b5908890889088906004016133e3565b5f60405180830381865afa9250505080156108f157506040513d5f823e601f3d908101601f191682016040526108ee9190810190613448565b60015b156108f95791505b509392505050565b60655460405163276fabb160e01b81525f916001600160a01b03169063276fabb19061093390869086906004016134fd565b602060405180830381865afa15801561094e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107d69190613510565b5f61097c82612264565b61098757505f610627565b610990826122f8565b610a0c5760665460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa1580156109e3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a079190613527565b6107d6565b60655460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a5b573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107d69190613527565b5f54610100900460ff1615808015610a9d57505f54600160ff909116105b80610ab65750303b158015610ab657505f5460ff166001145b610b195760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107a9565b5f805460ff191660011790558015610b3a575f805461ff0019166101001790555b606580546001600160a01b038086166001600160a01b0319928316179092556066805492851692909116919091179055610b726125a3565b610b7a6125a3565b610b826125c9565b8015610bc7575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b610bd46125f8565b828114610c235760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107a9565b5f5b83811015610e08575f6068868684818110610c4257610c42613546565b9050602002810190610c54919061355a565b604051610c6292919061359c565b908152604051908190036020019020541115610cc5576068858583818110610c8c57610c8c613546565b9050602002810190610c9e919061355a565b604051610cac92919061359c565b90815260200160405180910390205f610cc59190612b11565b5f5b838383818110610cd957610cd9613546565b9050602002810190610ceb91906135ab565b9050811015610da4576068868684818110610d0857610d08613546565b9050602002810190610d1a919061355a565b604051610d2892919061359c565b9081526020016040518091039020848484818110610d4857610d48613546565b9050602002810190610d5a91906135ab565b83818110610d6a57610d6a613546565b9050602002810190610d7c919061355a565b82546001810184555f938452602090932090920191610d9b918361366c565b50600101610cc7565b507fb2b57b54285120d17f49f2490a39ef791441fd0ad1e6b6818c23262bf91f061c858583818110610dd857610dd8613546565b9050602002810190610dea919061355a565b604051610df8929190613725565b60405180910390a1600101610c25565b5050505050565b5f61062782612264565b5f61062782612657565b606080610e2f836122f8565b15610eb15760655460405163672b9f8160e01b815260048101869052602481018590526001600160a01b039091169063672b9f81906044015f60405180830381865afa158015610e81573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052610ea89190810190613738565b91509150610f45565b5f610ebb84612532565b90506001600160a01b0381163b15610f435760405163672b9f8160e01b815260048101869052602481018590526001600160a01b0382169063672b9f81906044015f60405180830381865afa925050508015610f3857506040513d5f823e601f3d908101601f19168201604052610f359190810190613738565b60015b15610f435790935091505b505b9250929050565b6065546040516370a0823160e01b81526001600160a01b0383811660048301525f9283929116906370a0823190602401602060405180830381865afa158015610f97573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610fbb9190613510565b6066549091506001600160a01b031615610627576066546040516370a0823160e01b81526001600160a01b038581166004830152909116906370a0823190602401602060405180830381865afa158015611017573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061103b9190613510565b6107d69082613797565b61104d6125f8565b6110565f61233e565b565b606554604051633f1ba3cf60e11b81526001600160a01b0383811660048301525f921690637e37479e90602401602060405180830381865afa1580156110a0573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106279190613510565b60605f606786866040516110d992919061359c565b908152602001604051809103902080546110f2906135f0565b80601f016020809104026020016040519081016040528092919081815260200182805461111e906135f0565b80156111695780601f1061114057610100808354040283529160200191611169565b820191905f5260205f20905b81548152906001019060200180831161114c57829003601f168201915b5050505050905080515f0361117e5750611479565b5f604051806040016040528060068152602001653a37b5b2b71760d11b81525090505f604051806040016040528060088152602001672e6164647265737360c01b81525090505f604051806040016040528060018152602001601760f91b81525090505f8385838c8c868d8d8a604051602001611203999897969594939291906137b6565b60405160208183030381529060405290505f6068826040516112259190613836565b9081526020016040518091039020805480602002602001604051908101604052809291908181526020015f905b828210156112fa578382905f5260205f2001805461126f906135f0565b80601f016020809104026020016040519081016040528092919081815260200182805461129b906135f0565b80156112e65780601f106112bd576101008083540402835291602001916112e6565b820191905f5260205f20905b8154815290600101906020018083116112c957829003601f168201915b505050505081526020019060010190611252565b5050505090508051600361130e9190613797565b6001600160401b0381111561132557611325613284565b60405190808252806020026020018201604052801561135857816020015b60608152602001906001900390816113435790505b50965081875f8151811061136e5761136e613546565b60200260200101819052505f5b81518110156113cf5781818151811061139657611396613546565b6020026020010151888260016113ac9190613797565b815181106113bc576113bc613546565b602090810291909101015260010161137b565b508486848d8d886040516020016113eb96959493929190613851565b60405160208183030381529060405287825160016114099190613797565b8151811061141957611419613546565b6020026020010181905250848685604051602001611439939291906138b2565b60405160208183030381529060405287825160026114579190613797565b8151811061146757611467613546565b60200260200101819052505050505050505b949350505050565b6060808080846001600160401b0381111561149e5761149e613284565b6040519080825280602002602001820160405280156114c7578160200160208202803683370190505b509350846001600160401b038111156114e2576114e2613284565b60405190808252806020026020018201604052801561150b578160200160208202803683370190505b509250846001600160401b0381111561152657611526613284565b60405190808252806020026020018201604052801561155957816020015b60608152602001906001900390816115445790505b509150846001600160401b0381111561157457611574613284565b6040519080825280602002602001820160405280156115a757816020015b60608152602001906001900390816115925790505b5090505f5b85811015611660576115d789898989858181106115cb576115cb613546565b9050602002013561200c565b8885815181106115e9576115e9613546565b6020026020010188868151811061160257611602613546565b6020026020010188878151811061161b5761161b613546565b6020026020010188888151811061163457611634613546565b6020908102919091010193909352929091526001600160a01b03928316909152911690526001016115ac565b50945094509450949050565b7fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c8121905546001600160a01b031690565b5f8060606116a9868686612677565b9250925092505b93509350939050565b60608080836001600160401b038111156116d5576116d5613284565b6040519080825280602002602001820160405280156116fe578160200160208202803683370190505b509250836001600160401b0381111561171957611719613284565b604051908082528060200260200182016040528015611742578160200160208202803683370190505b509150836001600160401b0381111561175d5761175d613284565b60405190808252806020026020018201604052801561179057816020015b606081526020019060019003908161177b5790505b5090505f5b8481101561182c576117c088888888858181106117b4576117b4613546565b90506020020135612677565b8684815181106117d2576117d2613546565b602002602001018685815181106117eb576117eb613546565b6020026020010186868151811061180457611804613546565b60209081029190910101929092526001600160a01b0392831690915291169052600101611795565b509450945094915050565b606554604051634f558e7960e01b8152600481018390525f916001600160a01b031690634f558e7990602401602060405180830381865afa15801561187e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118a29190613527565b156118b85750506065546001600160a01b031690565b6066546001600160a01b0316158015906118e357505f6118d783612879565b6001600160a01b031614155b156118f95750506066546001600160a01b031690565b505f919050565b6060816001600160401b0381111561191a5761191a613284565b60405190808252806020026020018201604052801561194d57816020015b60608152602001906001900390816119385790505b5090505f5b828110156119e0576119bb3085858481811061197057611970613546565b9050602002810190611982919061355a565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152506128aa92505050565b8282815181106119cd576119cd613546565b6020908102919091010152600101611952565b5092915050565b5f6119f182612264565b6119fc57505f919050565b611a05826122f8565b611a3a5760665460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb9060240161069e565b60655460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb9060240161070f565b606080836001600160401b03811115611a8657611a86613284565b604051908082528060200260200182016040528015611ab957816020015b6060815260200190600190039081611aa45790505b509150836001600160401b03811115611ad457611ad4613284565b604051908082528060200260200182016040528015611b0757816020015b6060815260200190600190039081611af25790505b509050611b13836122f8565b15611b965760655460405163170b5fa560e31b81526001600160a01b039091169063b85afd2890611b4c908890889088906004016138f4565b5f60405180830381865afa158015611b66573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052611b8d91908101906139aa565b91509150611c38565b5f611ba084612532565b90506001600160a01b0381163b15158015611bba57508415155b15611c365760405163170b5fa560e31b81526001600160a01b0382169063b85afd2890611bef908990899089906004016138f4565b5f60405180830381865afa925050508015611c2b57506040513d5f823e601f3d908101601f19168201604052611c2891908101906139aa565b60015b15611c365790935091505b505b935093915050565b6060611c4f868686868661299a565b979650505050505050565b606554604051632fafb1ad60e21b81526001600160a01b038381166004830152606092169063bebec6b4906024015b5f60405180830381865afa158015611ca3573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526106279190810190613448565b6060611cd9868686868661299a565b509695505050505050565b6060816001600160401b03811115611cfe57611cfe613284565b604051908082528060200260200182016040528015611d27578160200160208202803683370190505b5090505f5b828110156119e057611d55848483818110611d4957611d49613546565b90506020020135612657565b828281518110611d6757611d67613546565b6001600160a01b0390921660209283029190910190910152600101611d2c565b6060611d9282612264565b611da957505060408051602081019091525f815290565b611db2826122f8565b611e235760665460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd906024015f60405180830381865afa158015611dfc573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526106dd9190810190613448565b60655460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401611c89565b60405162461bcd60e51b815260206004820152601f60248201527f50726f78795265616465723a20554e535550504f525445445f4d4554484f440060448201525f906064016107a9565b611ea66125f8565b828114611ef55760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107a9565b5f5b83811015610e0857611f4f858583818110611f1457611f14613546565b9050602002810190611f26919061355a565b858585818110611f3857611f38613546565b9050602002810190611f4a919061355a565b612a38565b600101611ef7565b611f5f6125f8565b6001600160a01b0381166107b25760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107a9565b611fcc6125f8565b5f5b83811015610e0857612004858583818110611feb57611feb613546565b9050602002810190611ffd919061355a565b8585612a38565b600101611fce565b5f80606080856001600160401b0381111561202957612029613284565b60405190808252806020026020018201604052801561205c57816020015b60608152602001906001900390816120475790505b509150856001600160401b0381111561207757612077613284565b6040519080825280602002602001820160405280156120aa57816020015b60608152602001906001900390816120955790505b5090506120b6856122f8565b156121b15760655460405163b3f9e4cb60e01b8152600481018790526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa158015612102573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906121269190613269565b935061213185612aa7565b60655460405163170b5fa560e31b81529194506001600160a01b03169063b85afd2890612166908a908a908a906004016138f4565b5f60405180830381865afa158015612180573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526121a791908101906139aa565b9092509050610646565b6121ba85612532565b93506121c585612879565b92506001600160a01b0384163b151580156121e057505f8251115b156106465760405163170b5fa560e31b81526001600160a01b0385169063b85afd2890612215908a908a908a906004016138f4565b5f60405180830381865afa92505050801561225157506040513d5f823e601f3d908101601f1916820160405261224e91908101906139aa565b60015b1561064657909250905093509350935093565b5f61226e826122f8565b61228c575f61227c83612879565b6001600160a01b03161415610627565b606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e79906024015b602060405180830381865afa1580156122d4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106279190613527565b6066545f906001600160a01b031615806106275750606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e79906024016122b9565b5f61234761166c565b9050817fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c812190580546001600160a01b0319166001600160a01b03928316179055604051838216918316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b606082516001600160401b038111156123d3576123d3613284565b60405190808252806020026020018201604052801561240657816020015b60608152602001906001900390816123f15790505b509050612412826122f8565b1561249157606554604051630dec660d60e11b81526001600160a01b0390911690631bd8cc1a9061244990869086906004016139ff565b5f60405180830381865afa158015612463573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261248a9190810190613a20565b9050610627565b5f61249b83612532565b90506001600160a01b0381163b151580156124b657505f8451115b156119e057604051630dec660d60e11b81526001600160a01b03821690631bd8cc1a906124e990879087906004016139ff565b5f60405180830381865afa92505050801561252557506040513d5f823e601f3d908101601f191682016040526125229190810190613a20565b60015b156119e057949350505050565b60665460405163b3f9e4cb60e01b8152600481018390525f916001600160a01b03169063b3f9e4cb906024015b602060405180830381865afa925050508015612598575060408051601f3d908101601f1916820190925261259591810190613269565b60015b61062757505f919050565b5f54610100900460ff166110565760405162461bcd60e51b81526004016107a990613a51565b5f54610100900460ff166125ef5760405162461bcd60e51b81526004016107a990613a51565b6110563361233e565b3361260161166c565b6001600160a01b0316146110565760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107a9565b5f612661826122f8565b61266e576106dd82612879565b61062782612aa7565b5f806060846001600160401b0381111561269357612693613284565b6040519080825280602002602001820160405280156126c657816020015b60608152602001906001900390816126b15790505b5090506126d2846122f8565b156127ca5760655460405163b3f9e4cb60e01b8152600481018690526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561271e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906127429190613269565b925061274d84612aa7565b606554604051630dec660d60e11b81529193506001600160a01b031690631bd8cc1a9061278290899089908990600401613a9c565b5f60405180830381865afa15801561279c573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526127c39190810190613a20565b90506116b0565b6127d384612532565b92506127de84612879565b91506001600160a01b0383163b151580156127f857508415155b156116b057604051630dec660d60e11b81526001600160a01b03841690631bd8cc1a9061282d90899089908990600401613a9c565b5f60405180830381865afa92505050801561286957506040513d5f823e601f3d908101601f191682016040526128669190810190613a20565b60015b156116b057905093509350939050565b6066546040516331a9108f60e11b8152600481018390525f916001600160a01b031690636352211e9060240161255f565b60606001600160a01b0383163b6129125760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b60648201526084016107a9565b5f80846001600160a01b03168460405161292c9190613836565b5f60405180830381855af49150503d805f8114612964576040519150601f19603f3d011682016040523d82523d5f602084013e612969565b606091505b50915091506129918282604051806060016040528060278152602001613ab060279139612ad8565b95945050505050565b6060805f6129aa888888886110c4565b90505f6129b782866123b8565b90505f5b8151811015612a2b575f8282815181106129d7576129d7613546565b6020026020010151511115612a23578281815181106129f8576129f8613546565b60200260200101519350818181518110612a1457612a14613546565b60200260200101519450612a2b565b6001016129bb565b5050509550959350505050565b818160678686604051612a4c92919061359c565b90815260200160405180910390209182612a6792919061366c565b507f0bf4b04a0f6d7d0800284e1abb0f58f795c0a25b9088634b6ab847be51001dec8484604051612a99929190613725565b60405180910390a150505050565b6065546040516331a9108f60e11b8152600481018390525f916001600160a01b031690636352211e9060240161255f565b60608315612ae75750816107d6565b825115612af75782518084602001fd5b8160405162461bcd60e51b81526004016107a99190612de6565b5080545f8255905f5260205f20908101906107bb91905b80821115612b44575f612b3b8282612b48565b50600101612b28565b5090565b508054612b54906135f0565b5f825580601f10612b63575050565b601f0160209004905f5260205f20908101906107bb91905b80821115612b44575f8155600101612b7b565b5f60208284031215612b9e575f80fd5b81356001600160e01b0319811681146107d6575f80fd5b5f8083601f840112612bc5575f80fd5b5081356001600160401b03811115612bdb575f80fd5b6020830191508360208260051b8501011115610f45575f80fd5b5f805f60408486031215612c07575f80fd5b83356001600160401b03811115612c1c575f80fd5b612c2886828701612bb5565b909790965060209590950135949350505050565b5f5b83811015612c56578181015183820152602001612c3e565b50505f910152565b5f8151808452612c75816020860160208601612c3c565b601f01601f19169290920160200192915050565b5f8282518085526020808601955060208260051b840101602086015f5b84811015612cd457601f19868403018952612cc2838351612c5e565b98840198925090830190600101612ca6565b5090979650505050505050565b6001600160a01b038581168252841660208201526080604082018190525f90612d0c90830185612c89565b8281036060840152611c4f8185612c89565b5f60208284031215612d2e575f80fd5b5035919050565b6001600160a01b03811681146107bb575f80fd5b5f60208284031215612d59575f80fd5b81356107d681612d35565b602081525f6107d66020830184612c89565b5f8083601f840112612d86575f80fd5b5081356001600160401b03811115612d9c575f80fd5b602083019150836020828501011115610f45575f80fd5b5f805f60408486031215612dc5575f80fd5b83356001600160401b03811115612dda575f80fd5b612c2886828701612d76565b602081525f6107d66020830184612c5e565b5f8060208385031215612e09575f80fd5b82356001600160401b03811115612e1e575f80fd5b612e2a85828601612bb5565b90969095509350505050565b5f8060408385031215612e47575f80fd5b8235612e5281612d35565b946020939093013593505050565b5f8060408385031215612e71575f80fd5b8235612e7c81612d35565b91506020830135612e8c81612d35565b809150509250929050565b5f805f8060408587031215612eaa575f80fd5b84356001600160401b0380821115612ec0575f80fd5b612ecc88838901612bb5565b90965094506020870135915080821115612ee4575f80fd5b50612ef187828801612bb5565b95989497509550505050565b5f8060408385031215612f0e575f80fd5b50508035926020909101359150565b604081525f612f2f6040830185612c5e565b82810360208401526129918185612c5e565b5f805f8060408587031215612f54575f80fd5b84356001600160401b0380821115612f6a575f80fd5b612f7688838901612d76565b90965094506020870135915080821115612f8e575f80fd5b50612ef187828801612d76565b5f815180845260208085019450602084015f5b83811015612fd35781516001600160a01b031687529582019590820190600101612fae565b509495945050505050565b5f828251808552602080860195506005818360051b8501018287015f5b8581101561306857601f1987840381018b5282518051808652908701908786019080881b870189015f5b82811015613051578589830301845261303f828651612c5e565b948b0194938b01939150600101613025565b509d89019d96505050928601925050600101612ffb565b509098975050505050505050565b608081525f6130886080830187612f9b565b828103602084015261309a8187612f9b565b905082810360408401526130ae8186612fde565b90508281036060840152611c4f8185612fde565b6001600160a01b038481168252831660208201526060604082018190525f9061299190830184612c89565b606081525f6130ff6060830186612f9b565b82810360208401526131118186612f9b565b905082810360408401526131258185612fde565b9695505050505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b8281101561318457603f19888603018452613172858351612c5e565b94509285019290850190600101613156565b5092979650505050505050565b604081525f6131a36040830185612c89565b82810360208401526129918185612c89565b5f805f805f606086880312156131c9575f80fd5b85356001600160401b03808211156131df575f80fd5b6131eb89838a01612d76565b90975095506020880135915080821115613203575f80fd5b5061321088828901612d76565b96999598509660400135949350505050565b602081525f6107d66020830184612f9b565b5f805f8060408587031215613247575f80fd5b84356001600160401b038082111561325d575f80fd5b612f7688838901612bb5565b5f60208284031215613279575f80fd5b81516107d681612d35565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f191681016001600160401b03811182821017156132c0576132c0613284565b604052919050565b5f6001600160401b038211156132e0576132e0613284565b5060051b60200190565b5f6001600160401b0382111561330257613302613284565b50601f01601f191660200190565b5f61332261331d846132c8565b613298565b80848252602080830192508560051b85013681111561333f575f80fd5b855b818110156133af5780356001600160401b0381111561335e575f80fd5b870136601f82011261336e575f80fd5b803561337c61331d826132ea565b818152368683850101111561338f575f80fd5b81868401878301375f918101860191909152865250938201938201613341565b50919695505050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b604081525f6133f66040830185876133bb565b9050826020830152949350505050565b5f82601f830112613415575f80fd5b815161342361331d826132ea565b818152846020838601011115613437575f80fd5b611479826020830160208701612c3c565b5f60208284031215613458575f80fd5b81516001600160401b0381111561346d575f80fd5b61147984828501613406565b5f838385526020808601955060208560051b830101845f5b87811015612cd457848303601f19018952813536889003601e190181126134b6575f80fd5b870184810190356001600160401b038111156134d0575f80fd5b8036038213156134de575f80fd5b6134e98582846133bb565b9a86019a9450505090830190600101613491565b602081525f6107d3602083018486613479565b5f60208284031215613520575f80fd5b5051919050565b5f60208284031215613537575f80fd5b815180151581146107d6575f80fd5b634e487b7160e01b5f52603260045260245ffd5b5f808335601e1984360301811261356f575f80fd5b8301803591506001600160401b03821115613588575f80fd5b602001915036819003821315610f45575f80fd5b818382375f9101908152919050565b5f808335601e198436030181126135c0575f80fd5b8301803591506001600160401b038211156135d9575f80fd5b6020019150600581901b3603821315610f45575f80fd5b600181811c9082168061360457607f821691505b60208210810361362257634e487b7160e01b5f52602260045260245ffd5b50919050565b601f821115610bc757805f5260205f20601f840160051c8101602085101561364d5750805b601f840160051c820191505b81811015610e08575f8155600101613659565b6001600160401b0383111561368357613683613284565b6136978361369183546135f0565b83613628565b5f601f8411600181146136c8575f85156136b15750838201355b5f19600387901b1c1916600186901b178355610e08565b5f83815260208120601f198716915b828110156136f757868501358255602094850194600190920191016136d7565b5086821015613713575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b602081525f6107d36020830184866133bb565b5f8060408385031215613749575f80fd5b82516001600160401b038082111561375f575f80fd5b61376b86838701613406565b93506020850151915080821115613780575f80fd5b5061378d85828601613406565b9150509250929050565b8082018082111561062757634e487b7160e01b5f52601160045260245ffd5b5f8a516137c7818460208f01612c3c565b8a51908301906137db818360208f01612c3c565b8a519101906137ee818360208e01612c3c565b01878982375f908801908152865161380a818360208b01612c3c565b01848682375f9085019081528351613826818360208801612c3c565b019b9a5050505050505050505050565b5f8251613847818460208701612c3c565b9190910192915050565b5f8751613862818460208c01612c3c565b875190830190613876818360208c01612c3c565b8751910190613889818360208b01612c3c565b01848682375f90850190815283516138a5818360208801612c3c565b0198975050505050505050565b5f84516138c3818460208901612c3c565b8451908301906138d7818360208901612c3c565b84519101906138ea818360208801612c3c565b0195945050505050565b604080825281018390525f6001600160fb1b03841115613912575f80fd5b8360051b808660608501376020830193909352500160600192915050565b5f82601f83011261393f575f80fd5b8151602061394f61331d836132c8565b82815260059290921b8401810191818101908684111561396d575f80fd5b8286015b84811015611cd95780516001600160401b0381111561398e575f80fd5b61399c8986838b0101613406565b845250918301918301613971565b5f80604083850312156139bb575f80fd5b82516001600160401b03808211156139d1575f80fd5b6139dd86838701613930565b935060208501519150808211156139f2575f80fd5b5061378d85828601613930565b604081525f613a116040830185612c89565b90508260208301529392505050565b5f60208284031215613a30575f80fd5b81516001600160401b03811115613a45575f80fd5b61147984828501613930565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b604081525f6133f660408301858761347956fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000818000a", + "deployedBytecode": "0x608060405234801561000f575f80fd5b5060043610610213575f3560e01c80638da5cb5b1161011f578063bebec6b4116100a9578063e985e9c511610079578063e985e9c514610536578063f059235914610549578063f2fde38b1461055c578063ffa1ad741461056f578063ffad6f5514610593575f80fd5b8063bebec6b4146104dd578063bfc5429b146104f0578063c15ae7cf14610503578063c87b56dd14610523575f80fd5b8063a81ce6f9116100ef578063a81ce6f914610463578063ac9650d814610476578063b3f9e4cb14610496578063b85afd28146104a9578063b98b3526146104ca575f80fd5b80638da5cb5b146103e757806391015f6b146103ef578063933c051d14610411578063a3f4df7e14610433575f80fd5b80634bd79ed0116101a057806370a082311161017057806370a0823114610383578063715018a6146103965780637e37479e1461039e57806383caffbe146103b1578063869b8884146103c4575f80fd5b80634bd79ed0146103295780634f558e791461033c5780636352211e1461034f578063672b9f8114610362575f80fd5b80631bd8cc1a116101e65780631bd8cc1a146102a25780631be5e7ed146102c2578063276fabb1146102e2578063430c208114610303578063485cc95514610316575f80fd5b806301ffc9a714610217578063032807551461023f578063081812fc1461026257806313af40351461028d575b5f80fd5b61022a610225366004612b8e565b6105a6565b60405190151581526020015b60405180910390f35b61025261024d366004612bf5565b61062d565b6040516102369493929190612ce1565b610275610270366004612d1e565b61064f565b6040516001600160a01b039091168152602001610236565b6102a061029b366004612d49565b61074e565b005b6102b56102b0366004612bf5565b6107be565b6040516102369190612d64565b6102d56102d0366004612db3565b6107dd565b6040516102369190612de6565b6102f56102f0366004612df8565b610901565b604051908152602001610236565b61022a610311366004612e36565b610972565b6102a0610324366004612e60565b610a7f565b6102a0610337366004612e97565b610bcc565b61022a61034a366004612d1e565b610e0f565b61027561035d366004612d1e565b610e19565b610375610370366004612efd565b610e23565b604051610236929190612f1d565b6102f5610391366004612d49565b610f4c565b6102a0611045565b6102f56103ac366004612d49565b611058565b6102b56103bf366004612f41565b6110c4565b6103d76103d2366004612e97565b611481565b6040516102369493929190613076565b61027561166c565b6104026103fd366004612bf5565b61169a565b604051610236939291906130c2565b61042461041f366004612e97565b6116b9565b604051610236939291906130ed565b6102d5604051806040016040528060118152602001702aa7299d10283937bc3c902932b0b232b960791b81525081565b610275610471366004612d1e565b611837565b610489610484366004612df8565b611900565b604051610236919061312f565b6102756104a4366004612d1e565b6119e7565b6104bc6104b7366004612bf5565b611a6b565b604051610236929190613191565b6102d56104d83660046131b5565b611c40565b6102d56104eb366004612d49565b611c5a565b6102d56104fe3660046131b5565b611cca565b610516610511366004612df8565b611ce4565b6040516102369190613222565b6102d5610531366004612d1e565b611d87565b61022a610544366004612e60565b611e54565b6102a0610557366004612e97565b611e9e565b6102a061056a366004612d49565b611f57565b6102d5604051806040016040528060058152602001640302e352e360dc1b81525081565b6102a06105a1366004613234565b611fc4565b5f6001600160e01b031982166362526e6360e01b14806105d657506001600160e01b03198216636fa624af60e11b145b806105f157506001600160e01b031982166308da864d60e31b145b8061060c57506001600160e01b03198216638584880360e01b145b8061062757506301ffc9a760e01b6001600160e01b03198316145b92915050565b5f8060608061063d87878761200c565b93509350935093505b93509350935093565b5f61065982612264565b61066457505f919050565b61066d826122f8565b6106e25760665460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa1580156106b9573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106dd9190613269565b610627565b60655460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa15801561072a573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106279190613269565b5f61075761166c565b6001600160a01b0316146107b25760405162461bcd60e51b815260206004820152601e60248201527f50726f78795265616465723a204f574e45525f414c52454144595f534554000060448201526064015b60405180910390fd5b6107bb8161233e565b50565b60606107d36107cd8486613310565b836123b8565b90505b9392505050565b60606107e8826122f8565b1561086957606554604051631be5e7ed60e01b81526001600160a01b0390911690631be5e7ed90610821908790879087906004016133e3565b5f60405180830381865afa15801561083b573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526108629190810190613448565b90506107d6565b5f61087383612532565b90506001600160a01b0381163b156108f957604051631be5e7ed60e01b81526001600160a01b03821690631be5e7ed906108b5908890889088906004016133e3565b5f60405180830381865afa9250505080156108f157506040513d5f823e601f3d908101601f191682016040526108ee9190810190613448565b60015b156108f95791505b509392505050565b60655460405163276fabb160e01b81525f916001600160a01b03169063276fabb19061093390869086906004016134fd565b602060405180830381865afa15801561094e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107d69190613510565b5f61097c82612264565b61098757505f610627565b610990826122f8565b610a0c5760665460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa1580156109e3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a079190613527565b6107d6565b60655460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a5b573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107d69190613527565b5f54610100900460ff1615808015610a9d57505f54600160ff909116105b80610ab65750303b158015610ab657505f5460ff166001145b610b195760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107a9565b5f805460ff191660011790558015610b3a575f805461ff0019166101001790555b606580546001600160a01b038086166001600160a01b0319928316179092556066805492851692909116919091179055610b726125a3565b610b7a6125a3565b610b826125c9565b8015610bc7575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b610bd46125f8565b828114610c235760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107a9565b5f5b83811015610e08575f6068868684818110610c4257610c42613546565b9050602002810190610c54919061355a565b604051610c6292919061359c565b908152604051908190036020019020541115610cc5576068858583818110610c8c57610c8c613546565b9050602002810190610c9e919061355a565b604051610cac92919061359c565b90815260200160405180910390205f610cc59190612b11565b5f5b838383818110610cd957610cd9613546565b9050602002810190610ceb91906135ab565b9050811015610da4576068868684818110610d0857610d08613546565b9050602002810190610d1a919061355a565b604051610d2892919061359c565b9081526020016040518091039020848484818110610d4857610d48613546565b9050602002810190610d5a91906135ab565b83818110610d6a57610d6a613546565b9050602002810190610d7c919061355a565b82546001810184555f938452602090932090920191610d9b918361366c565b50600101610cc7565b507fb2b57b54285120d17f49f2490a39ef791441fd0ad1e6b6818c23262bf91f061c858583818110610dd857610dd8613546565b9050602002810190610dea919061355a565b604051610df8929190613725565b60405180910390a1600101610c25565b5050505050565b5f61062782612264565b5f61062782612657565b606080610e2f836122f8565b15610eb15760655460405163672b9f8160e01b815260048101869052602481018590526001600160a01b039091169063672b9f81906044015f60405180830381865afa158015610e81573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052610ea89190810190613738565b91509150610f45565b5f610ebb84612532565b90506001600160a01b0381163b15610f435760405163672b9f8160e01b815260048101869052602481018590526001600160a01b0382169063672b9f81906044015f60405180830381865afa925050508015610f3857506040513d5f823e601f3d908101601f19168201604052610f359190810190613738565b60015b15610f435790935091505b505b9250929050565b6065546040516370a0823160e01b81526001600160a01b0383811660048301525f9283929116906370a0823190602401602060405180830381865afa158015610f97573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610fbb9190613510565b6066549091506001600160a01b031615610627576066546040516370a0823160e01b81526001600160a01b038581166004830152909116906370a0823190602401602060405180830381865afa158015611017573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061103b9190613510565b6107d69082613797565b61104d6125f8565b6110565f61233e565b565b606554604051633f1ba3cf60e11b81526001600160a01b0383811660048301525f921690637e37479e90602401602060405180830381865afa1580156110a0573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106279190613510565b60605f606786866040516110d992919061359c565b908152602001604051809103902080546110f2906135f0565b80601f016020809104026020016040519081016040528092919081815260200182805461111e906135f0565b80156111695780601f1061114057610100808354040283529160200191611169565b820191905f5260205f20905b81548152906001019060200180831161114c57829003601f168201915b5050505050905080515f0361117e5750611479565b5f604051806040016040528060068152602001653a37b5b2b71760d11b81525090505f604051806040016040528060088152602001672e6164647265737360c01b81525090505f604051806040016040528060018152602001601760f91b81525090505f8385838c8c868d8d8a604051602001611203999897969594939291906137b6565b60405160208183030381529060405290505f6068826040516112259190613836565b9081526020016040518091039020805480602002602001604051908101604052809291908181526020015f905b828210156112fa578382905f5260205f2001805461126f906135f0565b80601f016020809104026020016040519081016040528092919081815260200182805461129b906135f0565b80156112e65780601f106112bd576101008083540402835291602001916112e6565b820191905f5260205f20905b8154815290600101906020018083116112c957829003601f168201915b505050505081526020019060010190611252565b5050505090508051600361130e9190613797565b6001600160401b0381111561132557611325613284565b60405190808252806020026020018201604052801561135857816020015b60608152602001906001900390816113435790505b50965081875f8151811061136e5761136e613546565b60200260200101819052505f5b81518110156113cf5781818151811061139657611396613546565b6020026020010151888260016113ac9190613797565b815181106113bc576113bc613546565b602090810291909101015260010161137b565b508486848d8d886040516020016113eb96959493929190613851565b60405160208183030381529060405287825160016114099190613797565b8151811061141957611419613546565b6020026020010181905250848685604051602001611439939291906138b2565b60405160208183030381529060405287825160026114579190613797565b8151811061146757611467613546565b60200260200101819052505050505050505b949350505050565b6060808080846001600160401b0381111561149e5761149e613284565b6040519080825280602002602001820160405280156114c7578160200160208202803683370190505b509350846001600160401b038111156114e2576114e2613284565b60405190808252806020026020018201604052801561150b578160200160208202803683370190505b509250846001600160401b0381111561152657611526613284565b60405190808252806020026020018201604052801561155957816020015b60608152602001906001900390816115445790505b509150846001600160401b0381111561157457611574613284565b6040519080825280602002602001820160405280156115a757816020015b60608152602001906001900390816115925790505b5090505f5b85811015611660576115d789898989858181106115cb576115cb613546565b9050602002013561200c565b8885815181106115e9576115e9613546565b6020026020010188868151811061160257611602613546565b6020026020010188878151811061161b5761161b613546565b6020026020010188888151811061163457611634613546565b6020908102919091010193909352929091526001600160a01b03928316909152911690526001016115ac565b50945094509450949050565b7fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c8121905546001600160a01b031690565b5f8060606116a9868686612677565b9250925092505b93509350939050565b60608080836001600160401b038111156116d5576116d5613284565b6040519080825280602002602001820160405280156116fe578160200160208202803683370190505b509250836001600160401b0381111561171957611719613284565b604051908082528060200260200182016040528015611742578160200160208202803683370190505b509150836001600160401b0381111561175d5761175d613284565b60405190808252806020026020018201604052801561179057816020015b606081526020019060019003908161177b5790505b5090505f5b8481101561182c576117c088888888858181106117b4576117b4613546565b90506020020135612677565b8684815181106117d2576117d2613546565b602002602001018685815181106117eb576117eb613546565b6020026020010186868151811061180457611804613546565b60209081029190910101929092526001600160a01b0392831690915291169052600101611795565b509450945094915050565b606554604051634f558e7960e01b8152600481018390525f916001600160a01b031690634f558e7990602401602060405180830381865afa15801561187e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118a29190613527565b156118b85750506065546001600160a01b031690565b6066546001600160a01b0316158015906118e357505f6118d783612879565b6001600160a01b031614155b156118f95750506066546001600160a01b031690565b505f919050565b6060816001600160401b0381111561191a5761191a613284565b60405190808252806020026020018201604052801561194d57816020015b60608152602001906001900390816119385790505b5090505f5b828110156119e0576119bb3085858481811061197057611970613546565b9050602002810190611982919061355a565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152506128aa92505050565b8282815181106119cd576119cd613546565b6020908102919091010152600101611952565b5092915050565b5f6119f182612264565b6119fc57505f919050565b611a05826122f8565b611a3a5760665460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb9060240161069e565b60655460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb9060240161070f565b606080836001600160401b03811115611a8657611a86613284565b604051908082528060200260200182016040528015611ab957816020015b6060815260200190600190039081611aa45790505b509150836001600160401b03811115611ad457611ad4613284565b604051908082528060200260200182016040528015611b0757816020015b6060815260200190600190039081611af25790505b509050611b13836122f8565b15611b965760655460405163170b5fa560e31b81526001600160a01b039091169063b85afd2890611b4c908890889088906004016138f4565b5f60405180830381865afa158015611b66573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052611b8d91908101906139aa565b91509150611c38565b5f611ba084612532565b90506001600160a01b0381163b15158015611bba57508415155b15611c365760405163170b5fa560e31b81526001600160a01b0382169063b85afd2890611bef908990899089906004016138f4565b5f60405180830381865afa925050508015611c2b57506040513d5f823e601f3d908101601f19168201604052611c2891908101906139aa565b60015b15611c365790935091505b505b935093915050565b6060611c4f868686868661299a565b979650505050505050565b606554604051632fafb1ad60e21b81526001600160a01b038381166004830152606092169063bebec6b4906024015b5f60405180830381865afa158015611ca3573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526106279190810190613448565b6060611cd9868686868661299a565b509695505050505050565b6060816001600160401b03811115611cfe57611cfe613284565b604051908082528060200260200182016040528015611d27578160200160208202803683370190505b5090505f5b828110156119e057611d55848483818110611d4957611d49613546565b90506020020135612657565b828281518110611d6757611d67613546565b6001600160a01b0390921660209283029190910190910152600101611d2c565b6060611d9282612264565b611da957505060408051602081019091525f815290565b611db2826122f8565b611e235760665460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd906024015f60405180830381865afa158015611dfc573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526106dd9190810190613448565b60655460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401611c89565b60405162461bcd60e51b815260206004820152601f60248201527f50726f78795265616465723a20554e535550504f525445445f4d4554484f440060448201525f906064016107a9565b611ea66125f8565b828114611ef55760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107a9565b5f5b83811015610e0857611f4f858583818110611f1457611f14613546565b9050602002810190611f26919061355a565b858585818110611f3857611f38613546565b9050602002810190611f4a919061355a565b612a38565b600101611ef7565b611f5f6125f8565b6001600160a01b0381166107b25760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107a9565b611fcc6125f8565b5f5b83811015610e0857612004858583818110611feb57611feb613546565b9050602002810190611ffd919061355a565b8585612a38565b600101611fce565b5f80606080856001600160401b0381111561202957612029613284565b60405190808252806020026020018201604052801561205c57816020015b60608152602001906001900390816120475790505b509150856001600160401b0381111561207757612077613284565b6040519080825280602002602001820160405280156120aa57816020015b60608152602001906001900390816120955790505b5090506120b6856122f8565b156121b15760655460405163b3f9e4cb60e01b8152600481018790526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa158015612102573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906121269190613269565b935061213185612aa7565b60655460405163170b5fa560e31b81529194506001600160a01b03169063b85afd2890612166908a908a908a906004016138f4565b5f60405180830381865afa158015612180573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526121a791908101906139aa565b9092509050610646565b6121ba85612532565b93506121c585612879565b92506001600160a01b0384163b151580156121e057505f8251115b156106465760405163170b5fa560e31b81526001600160a01b0385169063b85afd2890612215908a908a908a906004016138f4565b5f60405180830381865afa92505050801561225157506040513d5f823e601f3d908101601f1916820160405261224e91908101906139aa565b60015b1561064657909250905093509350935093565b5f61226e826122f8565b61228c575f61227c83612879565b6001600160a01b03161415610627565b606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e79906024015b602060405180830381865afa1580156122d4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106279190613527565b6066545f906001600160a01b031615806106275750606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e79906024016122b9565b5f61234761166c565b9050817fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c812190580546001600160a01b0319166001600160a01b03928316179055604051838216918316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b606082516001600160401b038111156123d3576123d3613284565b60405190808252806020026020018201604052801561240657816020015b60608152602001906001900390816123f15790505b509050612412826122f8565b1561249157606554604051630dec660d60e11b81526001600160a01b0390911690631bd8cc1a9061244990869086906004016139ff565b5f60405180830381865afa158015612463573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261248a9190810190613a20565b9050610627565b5f61249b83612532565b90506001600160a01b0381163b151580156124b657505f8451115b156119e057604051630dec660d60e11b81526001600160a01b03821690631bd8cc1a906124e990879087906004016139ff565b5f60405180830381865afa92505050801561252557506040513d5f823e601f3d908101601f191682016040526125229190810190613a20565b60015b156119e057949350505050565b60665460405163b3f9e4cb60e01b8152600481018390525f916001600160a01b03169063b3f9e4cb906024015b602060405180830381865afa925050508015612598575060408051601f3d908101601f1916820190925261259591810190613269565b60015b61062757505f919050565b5f54610100900460ff166110565760405162461bcd60e51b81526004016107a990613a51565b5f54610100900460ff166125ef5760405162461bcd60e51b81526004016107a990613a51565b6110563361233e565b3361260161166c565b6001600160a01b0316146110565760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107a9565b5f612661826122f8565b61266e576106dd82612879565b61062782612aa7565b5f806060846001600160401b0381111561269357612693613284565b6040519080825280602002602001820160405280156126c657816020015b60608152602001906001900390816126b15790505b5090506126d2846122f8565b156127ca5760655460405163b3f9e4cb60e01b8152600481018690526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561271e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906127429190613269565b925061274d84612aa7565b606554604051630dec660d60e11b81529193506001600160a01b031690631bd8cc1a9061278290899089908990600401613a9c565b5f60405180830381865afa15801561279c573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526127c39190810190613a20565b90506116b0565b6127d384612532565b92506127de84612879565b91506001600160a01b0383163b151580156127f857508415155b156116b057604051630dec660d60e11b81526001600160a01b03841690631bd8cc1a9061282d90899089908990600401613a9c565b5f60405180830381865afa92505050801561286957506040513d5f823e601f3d908101601f191682016040526128669190810190613a20565b60015b156116b057905093509350939050565b6066546040516331a9108f60e11b8152600481018390525f916001600160a01b031690636352211e9060240161255f565b60606001600160a01b0383163b6129125760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b60648201526084016107a9565b5f80846001600160a01b03168460405161292c9190613836565b5f60405180830381855af49150503d805f8114612964576040519150601f19603f3d011682016040523d82523d5f602084013e612969565b606091505b50915091506129918282604051806060016040528060278152602001613ab060279139612ad8565b95945050505050565b6060805f6129aa888888886110c4565b90505f6129b782866123b8565b90505f5b8151811015612a2b575f8282815181106129d7576129d7613546565b6020026020010151511115612a23578281815181106129f8576129f8613546565b60200260200101519350818181518110612a1457612a14613546565b60200260200101519450612a2b565b6001016129bb565b5050509550959350505050565b818160678686604051612a4c92919061359c565b90815260200160405180910390209182612a6792919061366c565b507f0bf4b04a0f6d7d0800284e1abb0f58f795c0a25b9088634b6ab847be51001dec8484604051612a99929190613725565b60405180910390a150505050565b6065546040516331a9108f60e11b8152600481018390525f916001600160a01b031690636352211e9060240161255f565b60608315612ae75750816107d6565b825115612af75782518084602001fd5b8160405162461bcd60e51b81526004016107a99190612de6565b5080545f8255905f5260205f20908101906107bb91905b80821115612b44575f612b3b8282612b48565b50600101612b28565b5090565b508054612b54906135f0565b5f825580601f10612b63575050565b601f0160209004905f5260205f20908101906107bb91905b80821115612b44575f8155600101612b7b565b5f60208284031215612b9e575f80fd5b81356001600160e01b0319811681146107d6575f80fd5b5f8083601f840112612bc5575f80fd5b5081356001600160401b03811115612bdb575f80fd5b6020830191508360208260051b8501011115610f45575f80fd5b5f805f60408486031215612c07575f80fd5b83356001600160401b03811115612c1c575f80fd5b612c2886828701612bb5565b909790965060209590950135949350505050565b5f5b83811015612c56578181015183820152602001612c3e565b50505f910152565b5f8151808452612c75816020860160208601612c3c565b601f01601f19169290920160200192915050565b5f8282518085526020808601955060208260051b840101602086015f5b84811015612cd457601f19868403018952612cc2838351612c5e565b98840198925090830190600101612ca6565b5090979650505050505050565b6001600160a01b038581168252841660208201526080604082018190525f90612d0c90830185612c89565b8281036060840152611c4f8185612c89565b5f60208284031215612d2e575f80fd5b5035919050565b6001600160a01b03811681146107bb575f80fd5b5f60208284031215612d59575f80fd5b81356107d681612d35565b602081525f6107d66020830184612c89565b5f8083601f840112612d86575f80fd5b5081356001600160401b03811115612d9c575f80fd5b602083019150836020828501011115610f45575f80fd5b5f805f60408486031215612dc5575f80fd5b83356001600160401b03811115612dda575f80fd5b612c2886828701612d76565b602081525f6107d66020830184612c5e565b5f8060208385031215612e09575f80fd5b82356001600160401b03811115612e1e575f80fd5b612e2a85828601612bb5565b90969095509350505050565b5f8060408385031215612e47575f80fd5b8235612e5281612d35565b946020939093013593505050565b5f8060408385031215612e71575f80fd5b8235612e7c81612d35565b91506020830135612e8c81612d35565b809150509250929050565b5f805f8060408587031215612eaa575f80fd5b84356001600160401b0380821115612ec0575f80fd5b612ecc88838901612bb5565b90965094506020870135915080821115612ee4575f80fd5b50612ef187828801612bb5565b95989497509550505050565b5f8060408385031215612f0e575f80fd5b50508035926020909101359150565b604081525f612f2f6040830185612c5e565b82810360208401526129918185612c5e565b5f805f8060408587031215612f54575f80fd5b84356001600160401b0380821115612f6a575f80fd5b612f7688838901612d76565b90965094506020870135915080821115612f8e575f80fd5b50612ef187828801612d76565b5f815180845260208085019450602084015f5b83811015612fd35781516001600160a01b031687529582019590820190600101612fae565b509495945050505050565b5f828251808552602080860195506005818360051b8501018287015f5b8581101561306857601f1987840381018b5282518051808652908701908786019080881b870189015f5b82811015613051578589830301845261303f828651612c5e565b948b0194938b01939150600101613025565b509d89019d96505050928601925050600101612ffb565b509098975050505050505050565b608081525f6130886080830187612f9b565b828103602084015261309a8187612f9b565b905082810360408401526130ae8186612fde565b90508281036060840152611c4f8185612fde565b6001600160a01b038481168252831660208201526060604082018190525f9061299190830184612c89565b606081525f6130ff6060830186612f9b565b82810360208401526131118186612f9b565b905082810360408401526131258185612fde565b9695505050505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b8281101561318457603f19888603018452613172858351612c5e565b94509285019290850190600101613156565b5092979650505050505050565b604081525f6131a36040830185612c89565b82810360208401526129918185612c89565b5f805f805f606086880312156131c9575f80fd5b85356001600160401b03808211156131df575f80fd5b6131eb89838a01612d76565b90975095506020880135915080821115613203575f80fd5b5061321088828901612d76565b96999598509660400135949350505050565b602081525f6107d66020830184612f9b565b5f805f8060408587031215613247575f80fd5b84356001600160401b038082111561325d575f80fd5b612f7688838901612bb5565b5f60208284031215613279575f80fd5b81516107d681612d35565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f191681016001600160401b03811182821017156132c0576132c0613284565b604052919050565b5f6001600160401b038211156132e0576132e0613284565b5060051b60200190565b5f6001600160401b0382111561330257613302613284565b50601f01601f191660200190565b5f61332261331d846132c8565b613298565b80848252602080830192508560051b85013681111561333f575f80fd5b855b818110156133af5780356001600160401b0381111561335e575f80fd5b870136601f82011261336e575f80fd5b803561337c61331d826132ea565b818152368683850101111561338f575f80fd5b81868401878301375f918101860191909152865250938201938201613341565b50919695505050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b604081525f6133f66040830185876133bb565b9050826020830152949350505050565b5f82601f830112613415575f80fd5b815161342361331d826132ea565b818152846020838601011115613437575f80fd5b611479826020830160208701612c3c565b5f60208284031215613458575f80fd5b81516001600160401b0381111561346d575f80fd5b61147984828501613406565b5f838385526020808601955060208560051b830101845f5b87811015612cd457848303601f19018952813536889003601e190181126134b6575f80fd5b870184810190356001600160401b038111156134d0575f80fd5b8036038213156134de575f80fd5b6134e98582846133bb565b9a86019a9450505090830190600101613491565b602081525f6107d3602083018486613479565b5f60208284031215613520575f80fd5b5051919050565b5f60208284031215613537575f80fd5b815180151581146107d6575f80fd5b634e487b7160e01b5f52603260045260245ffd5b5f808335601e1984360301811261356f575f80fd5b8301803591506001600160401b03821115613588575f80fd5b602001915036819003821315610f45575f80fd5b818382375f9101908152919050565b5f808335601e198436030181126135c0575f80fd5b8301803591506001600160401b038211156135d9575f80fd5b6020019150600581901b3603821315610f45575f80fd5b600181811c9082168061360457607f821691505b60208210810361362257634e487b7160e01b5f52602260045260245ffd5b50919050565b601f821115610bc757805f5260205f20601f840160051c8101602085101561364d5750805b601f840160051c820191505b81811015610e08575f8155600101613659565b6001600160401b0383111561368357613683613284565b6136978361369183546135f0565b83613628565b5f601f8411600181146136c8575f85156136b15750838201355b5f19600387901b1c1916600186901b178355610e08565b5f83815260208120601f198716915b828110156136f757868501358255602094850194600190920191016136d7565b5086821015613713575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b602081525f6107d36020830184866133bb565b5f8060408385031215613749575f80fd5b82516001600160401b038082111561375f575f80fd5b61376b86838701613406565b93506020850151915080821115613780575f80fd5b5061378d85828601613406565b9150509250929050565b8082018082111561062757634e487b7160e01b5f52601160045260245ffd5b5f8a516137c7818460208f01612c3c565b8a51908301906137db818360208f01612c3c565b8a519101906137ee818360208e01612c3c565b01878982375f908801908152865161380a818360208b01612c3c565b01848682375f9085019081528351613826818360208801612c3c565b019b9a5050505050505050505050565b5f8251613847818460208701612c3c565b9190910192915050565b5f8751613862818460208c01612c3c565b875190830190613876818360208c01612c3c565b8751910190613889818360208b01612c3c565b01848682375f90850190815283516138a5818360208801612c3c565b0198975050505050505050565b5f84516138c3818460208901612c3c565b8451908301906138d7818360208901612c3c565b84519101906138ea818360208801612c3c565b0195945050505050565b604080825281018390525f6001600160fb1b03841115613912575f80fd5b8360051b808660608501376020830193909352500160600192915050565b5f82601f83011261393f575f80fd5b8151602061394f61331d836132c8565b82815260059290921b8401810191818101908684111561396d575f80fd5b8286015b84811015611cd95780516001600160401b0381111561398e575f80fd5b61399c8986838b0101613406565b845250918301918301613971565b5f80604083850312156139bb575f80fd5b82516001600160401b03808211156139d1575f80fd5b6139dd86838701613930565b935060208501519150808211156139f2575f80fd5b5061378d85828601613930565b604081525f613a116040830185612c89565b90508260208301529392505050565b5f60208284031215613a30575f80fd5b81516001600160401b03811115613a45575f80fd5b61147984828501613930565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b604081525f6133f660408301858761347956fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000818000a", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/artifacts/ProxyReaderV04.json b/artifacts/ProxyReaderV04.json index ab39fe76..5d2aeeeb 100644 --- a/artifacts/ProxyReaderV04.json +++ b/artifacts/ProxyReaderV04.json @@ -608,8 +608,8 @@ "type": "function" } ], - "bytecode": "0x608060405234801561001057600080fd5b50612c48806100206000396000f3fe608060405234801561001057600080fd5b506004361061018e5760003560e01c8063869b8884116100de578063b3f9e4cb11610097578063c15ae7cf11610071578063c15ae7cf14610410578063c87b56dd14610430578063e985e9c514610443578063ffa1ad741461045657600080fd5b8063b3f9e4cb146103c9578063b85afd28146103dc578063bebec6b4146103fd57600080fd5b8063869b8884146102ff57806391015f6b14610322578063933c051d14610344578063a3f4df7e14610366578063a81ce6f914610396578063ac9650d8146103a957600080fd5b8063430c20811161014b5780636352211e116101255780636352211e146102a5578063672b9f81146102b857806370a08231146102d95780637e37479e146102ec57600080fd5b8063430c20811461026a578063485cc9551461027d5780634f558e791461029257600080fd5b806301ffc9a71461019357806303280755146101bb578063081812fc146101de5780631bd8cc1a146102095780631be5e7ed14610229578063276fabb114610249575b600080fd5b6101a66101a1366004612046565b61047a565b60405190151581526020015b60405180910390f35b6101ce6101c93660046120b4565b6104e7565b6040516101b294939291906121a7565b6101f16101ec3660046121f0565b61050a565b6040516001600160a01b0390911681526020016101b2565b61021c6102173660046120b4565b61060f565b6040516101b29190612209565b61023c61023736600461221c565b61062e565b6040516101b29190612293565b61025c6102573660046122a6565b610759565b6040519081526020016101b2565b6101a66102783660046122ff565b6107cd565b61029061028b36600461232b565b6108e0565b005b6101a66102a03660046121f0565b610a30565b6101f16102b33660046121f0565b610a3b565b6102cb6102c6366004612364565b610a46565b6040516101b2929190612386565b61025c6102e73660046123ab565b610b76565b61025c6102fa3660046123ab565b610c74565b61031261030d3660046123c8565b610ce3565b6040516101b2949392919061250f565b6103356103303660046120b4565b610ed9565b6040516101b29392919061255c565b6103576103523660046123c8565b610ef9565b6040516101b293929190612588565b61023c604051806040016040528060118152602001702aa7299d10283937bc3c902932b0b232b960791b81525081565b6101f16103a43660046121f0565b611082565b6103bc6103b73660046122a6565b611150565b6040516101b291906125cb565b6101f16103d73660046121f0565b611244565b6103ef6103ea3660046120b4565b6112ca565b6040516101b292919061262d565b61023c61040b3660046123ab565b6114a6565b61042361041e3660046122a6565b61151a565b6040516101b29190612652565b61023c61043e3660046121f0565b6115c8565b6101a661045136600461232b565b61169a565b61023c60405180604001604052806005815260200164302e342e3160d81b81525081565b60006001600160e01b031982166362526e6360e01b14806104ab57506001600160e01b03198216636fa624af60e11b145b806104c657506001600160e01b031982166308da864d60e31b145b806104e157506301ffc9a760e01b6001600160e01b03198316145b92915050565b6000806060806104f88787876116e5565b93509350935093505b93509350935093565b600061051582611947565b61052157506000919050565b61052a826119df565b6105a15760665460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa158015610578573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061059c9190612665565b6104e1565b60655460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa1580156105eb573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104e19190612665565b606061062461061e8486612712565b83611a26565b90505b9392505050565b6060610639826119df565b156106be57606554604051631be5e7ed60e01b81526001600160a01b0390911690631be5e7ed90610672908790879087906004016127ef565b600060405180830381865afa15801561068f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106b79190810190612858565b9050610627565b60006106c983611ba9565b90506001600160a01b0381163b1561075157604051631be5e7ed60e01b81526001600160a01b03821690631be5e7ed9061070b908890889088906004016127ef565b600060405180830381865afa92505050801561074957506040513d6000823e601f3d908101601f191682016040526107469190810190612858565b60015b156107515791505b509392505050565b60655460405163276fabb160e01b81526000916001600160a01b03169063276fabb19061078c908690869060040161291d565b602060405180830381865afa1580156107a9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106279190612931565b60006107d882611947565b6107e4575060006104e1565b6107ed826119df565b61086b5760665460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610842573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610866919061294a565b610627565b60655460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa1580156108bc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610627919061294a565b600054610100900460ff16158080156109005750600054600160ff909116105b8061091a5750303b15801561091a575060005460ff166001145b6109825760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff1916600117905580156109a5576000805461ff0019166101001790555b606580546001600160a01b038086166001600160a01b03199283161790925560668054928516929091169190911790556109dd611c1c565b6109e5611c1c565b8015610a2b576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b60006104e182611947565b60006104e182611c89565b606080610a52836119df565b15610ad85760655460405163672b9f8160e01b815260048101869052602481018590526001600160a01b039091169063672b9f8190604401600060405180830381865afa158015610aa7573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610acf919081019061296c565b91509150610b6f565b6000610ae384611ba9565b90506001600160a01b0381163b15610b6d5760405163672b9f8160e01b815260048101869052602481018590526001600160a01b0382169063672b9f8190604401600060405180830381865afa925050508015610b6257506040513d6000823e601f3d908101601f19168201604052610b5f919081019061296c565b60015b15610b6d5790935091505b505b9250929050565b6065546040516370a0823160e01b81526001600160a01b03838116600483015260009283929116906370a0823190602401602060405180830381865afa158015610bc4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610be89190612931565b6066549091506001600160a01b0316156104e1576066546040516370a0823160e01b81526001600160a01b038581166004830152909116906370a0823190602401602060405180830381865afa158015610c46573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c6a9190612931565b61062790826129e5565b606554604051633f1ba3cf60e11b81526001600160a01b0383811660048301526000921690637e37479e90602401602060405180830381865afa158015610cbf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104e19190612931565b6060808080846001600160401b03811115610d0057610d00612682565b604051908082528060200260200182016040528015610d29578160200160208202803683370190505b509350846001600160401b03811115610d4457610d44612682565b604051908082528060200260200182016040528015610d6d578160200160208202803683370190505b509250846001600160401b03811115610d8857610d88612682565b604051908082528060200260200182016040528015610dbb57816020015b6060815260200190600190039081610da65790505b509150846001600160401b03811115610dd657610dd6612682565b604051908082528060200260200182016040528015610e0957816020015b6060815260200190600190039081610df45790505b50905060005b85811015610ecd57610e3a8989898985818110610e2e57610e2e6129f8565b905060200201356116e5565b888581518110610e4c57610e4c6129f8565b60200260200101888681518110610e6557610e656129f8565b60200260200101888781518110610e7e57610e7e6129f8565b60200260200101888881518110610e9757610e976129f8565b6020908102919091010193909352929091526001600160a01b039283169091529116905280610ec581612a0e565b915050610e0f565b50945094509450949050565b6000806060610ee9868686611caa565b9250925092505b93509350939050565b60608080836001600160401b03811115610f1557610f15612682565b604051908082528060200260200182016040528015610f3e578160200160208202803683370190505b509250836001600160401b03811115610f5957610f59612682565b604051908082528060200260200182016040528015610f82578160200160208202803683370190505b509150836001600160401b03811115610f9d57610f9d612682565b604051908082528060200260200182016040528015610fd057816020015b6060815260200190600190039081610fbb5790505b50905060005b84811015611077576110018888888885818110610ff557610ff56129f8565b90506020020135611caa565b868481518110611013576110136129f8565b6020026020010186858151811061102c5761102c6129f8565b60200260200101868681518110611045576110456129f8565b60209081029190910101929092526001600160a01b03928316909152911690528061106f81612a0e565b915050610fd6565b509450945094915050565b606554604051634f558e7960e01b8152600481018390526000916001600160a01b031690634f558e7990602401602060405180830381865afa1580156110cc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110f0919061294a565b156111065750506065546001600160a01b031690565b6066546001600160a01b0316158015906111325750600061112683611eb5565b6001600160a01b031614155b156111485750506066546001600160a01b031690565b506000919050565b6060816001600160401b0381111561116a5761116a612682565b60405190808252806020026020018201604052801561119d57816020015b60608152602001906001900390816111885790505b50905060005b8281101561123d5761120d308585848181106111c1576111c16129f8565b90506020028101906111d39190612a27565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611ee792505050565b82828151811061121f5761121f6129f8565b6020026020010181905250808061123590612a0e565b9150506111a3565b5092915050565b600061124f82611947565b61125b57506000919050565b611264826119df565b6112995760665460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb9060240161055b565b60655460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb906024016105ce565b606080836001600160401b038111156112e5576112e5612682565b60405190808252806020026020018201604052801561131857816020015b60608152602001906001900390816113035790505b509150836001600160401b0381111561133357611333612682565b60405190808252806020026020018201604052801561136657816020015b60608152602001906001900390816113515790505b509050611372836119df565b156113f95760655460405163170b5fa560e31b81526001600160a01b039091169063b85afd28906113ab90889088908890600401612a6d565b600060405180830381865afa1580156113c8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526113f09190810190612b35565b9150915061149e565b600061140484611ba9565b90506001600160a01b0381163b1515801561141e57508415155b1561149c5760405163170b5fa560e31b81526001600160a01b0382169063b85afd289061145390899089908990600401612a6d565b600060405180830381865afa92505050801561149157506040513d6000823e601f3d908101601f1916820160405261148e9190810190612b35565b60015b1561149c5790935091505b505b935093915050565b606554604051632fafb1ad60e21b81526001600160a01b038381166004830152606092169063bebec6b4906024015b600060405180830381865afa1580156114f2573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526104e19190810190612858565b6060816001600160401b0381111561153457611534612682565b60405190808252806020026020018201604052801561155d578160200160208202803683370190505b50905060005b8281101561123d5761158c848483818110611580576115806129f8565b90506020020135611c89565b82828151811061159e5761159e6129f8565b6001600160a01b0390921660209283029190910190910152806115c081612a0e565b915050611563565b60606115d382611947565b6115eb57505060408051602081019091526000815290565b6115f4826119df565b6116695760665460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401600060405180830381865afa158015611641573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261059c9190810190612858565b60655460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd906024016114d5565b60405162461bcd60e51b815260206004820152601f60248201527f50726f78795265616465723a20554e535550504f525445445f4d4554484f44006044820152600090606401610979565b600080606080856001600160401b0381111561170357611703612682565b60405190808252806020026020018201604052801561173657816020015b60608152602001906001900390816117215790505b509150856001600160401b0381111561175157611751612682565b60405190808252806020026020018201604052801561178457816020015b606081526020019060019003908161176f5790505b509050611790856119df565b156118915760655460405163b3f9e4cb60e01b8152600481018790526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa1580156117de573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118029190612665565b935061180d85611fdb565b60655460405163170b5fa560e31b81529194506001600160a01b03169063b85afd2890611842908a908a908a90600401612a6d565b600060405180830381865afa15801561185f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526118879190810190612b35565b9092509050610501565b61189a85611ba9565b93506118a585611eb5565b92506001600160a01b0384163b151580156118c1575060008251115b156105015760405163170b5fa560e31b81526001600160a01b0385169063b85afd28906118f6908a908a908a90600401612a6d565b600060405180830381865afa92505050801561193457506040513d6000823e601f3d908101601f191682016040526119319190810190612b35565b60015b1561050157909250905093509350935093565b6000611952826119df565b61197157600061196183611eb5565b6001600160a01b031614156104e1565b606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e79906024015b602060405180830381865afa1580156119bb573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104e1919061294a565b6066546000906001600160a01b031615806104e15750606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e799060240161199e565b606082516001600160401b03811115611a4157611a41612682565b604051908082528060200260200182016040528015611a7457816020015b6060815260200190600190039081611a5f5790505b509050611a80826119df565b15611b0357606554604051630dec660d60e11b81526001600160a01b0390911690631bd8cc1a90611ab79086908690600401612b8e565b600060405180830381865afa158015611ad4573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611afc9190810190612bb0565b90506104e1565b6000611b0e83611ba9565b90506001600160a01b0381163b15158015611b2a575060008451115b1561123d57604051630dec660d60e11b81526001600160a01b03821690631bd8cc1a90611b5d9087908790600401612b8e565b600060405180830381865afa925050508015611b9b57506040513d6000823e601f3d908101601f19168201604052611b989190810190612bb0565b60015b1561123d575b949350505050565b60665460405163b3f9e4cb60e01b8152600481018390526000916001600160a01b03169063b3f9e4cb906024015b602060405180830381865afa925050508015611c10575060408051601f3d908101601f19168201909252611c0d91810190612665565b60015b6104e157506000919050565b600054610100900460ff16611c875760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608401610979565b565b6000611c94826119df565b611ca15761059c82611eb5565b6104e182611fdb565b6000806060846001600160401b03811115611cc757611cc7612682565b604051908082528060200260200182016040528015611cfa57816020015b6060815260200190600190039081611ce55790505b509050611d06846119df565b15611e045760655460405163b3f9e4cb60e01b8152600481018690526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa158015611d54573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d789190612665565b9250611d8384611fdb565b606554604051630dec660d60e11b81529193506001600160a01b031690631bd8cc1a90611db890899089908990600401612be4565b600060405180830381865afa158015611dd5573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611dfd9190810190612bb0565b9050610ef0565b611e0d84611ba9565b9250611e1884611eb5565b91506001600160a01b0383163b15158015611e3257508415155b15610ef057604051630dec660d60e11b81526001600160a01b03841690631bd8cc1a90611e6790899089908990600401612be4565b600060405180830381865afa925050508015611ea557506040513d6000823e601f3d908101601f19168201604052611ea29190810190612bb0565b60015b15610ef057905093509350939050565b6066546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401611bd7565b60606001600160a01b0383163b611f4f5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b6064820152608401610979565b600080846001600160a01b031684604051611f6a9190612bf8565b600060405180830381855af49150503d8060008114611fa5576040519150601f19603f3d011682016040523d82523d6000602084013e611faa565b606091505b5091509150611fd28282604051806060016040528060278152602001612c156027913961200d565b95945050505050565b6065546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401611bd7565b6060831561201c575081610627565b82511561202c5782518084602001fd5b8160405162461bcd60e51b81526004016109799190612293565b60006020828403121561205857600080fd5b81356001600160e01b03198116811461062757600080fd5b60008083601f84011261208257600080fd5b5081356001600160401b0381111561209957600080fd5b6020830191508360208260051b8501011115610b6f57600080fd5b6000806000604084860312156120c957600080fd5b83356001600160401b038111156120df57600080fd5b6120eb86828701612070565b909790965060209590950135949350505050565b60005b8381101561211a578181015183820152602001612102565b50506000910152565b6000815180845261213b8160208601602086016120ff565b601f01601f19169290920160200192915050565b600082825180855260208086019550808260051b84010181860160005b8481101561219a57601f19868403018952612188838351612123565b9884019892509083019060010161216c565b5090979650505050505050565b6001600160a01b038581168252841660208201526080604082018190526000906121d39083018561214f565b82810360608401526121e5818561214f565b979650505050505050565b60006020828403121561220257600080fd5b5035919050565b602081526000610627602083018461214f565b60008060006040848603121561223157600080fd5b83356001600160401b038082111561224857600080fd5b818601915086601f83011261225c57600080fd5b81358181111561226b57600080fd5b87602082850101111561227d57600080fd5b6020928301989097509590910135949350505050565b6020815260006106276020830184612123565b600080602083850312156122b957600080fd5b82356001600160401b038111156122cf57600080fd5b6122db85828601612070565b90969095509350505050565b6001600160a01b03811681146122fc57600080fd5b50565b6000806040838503121561231257600080fd5b823561231d816122e7565b946020939093013593505050565b6000806040838503121561233e57600080fd5b8235612349816122e7565b91506020830135612359816122e7565b809150509250929050565b6000806040838503121561237757600080fd5b50508035926020909101359150565b6040815260006123996040830185612123565b8281036020840152611fd28185612123565b6000602082840312156123bd57600080fd5b8135610627816122e7565b600080600080604085870312156123de57600080fd5b84356001600160401b03808211156123f557600080fd5b61240188838901612070565b9096509450602087013591508082111561241a57600080fd5b5061242787828801612070565b95989497509550505050565b600081518084526020808501945080840160005b8381101561246c5781516001600160a01b031687529582019590820190600101612447565b509495945050505050565b600081518084526020808501808196506005915083821b81018387016000805b87811015612500578484038b5282518051808652908801908886019080891b87018a01855b828110156124ea57601f198983030184526124d8828651612123565b948c0194938c019391506001016124bc565b509d8a019d965050509287019250600101612497565b50919998505050505050505050565b6080815260006125226080830187612433565b82810360208401526125348187612433565b905082810360408401526125488186612477565b905082810360608401526121e58185612477565b6001600160a01b03848116825283166020820152606060408201819052600090611fd29083018461214f565b60608152600061259b6060830186612433565b82810360208401526125ad8186612433565b905082810360408401526125c18185612477565b9695505050505050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b8281101561262057603f1988860301845261260e858351612123565b945092850192908501906001016125f2565b5092979650505050505050565b604081526000612640604083018561214f565b8281036020840152611fd2818561214f565b6020815260006106276020830184612433565b60006020828403121561267757600080fd5b8151610627816122e7565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b03811182821017156126c0576126c0612682565b604052919050565b60006001600160401b038211156126e1576126e1612682565b5060051b60200190565b60006001600160401b0382111561270457612704612682565b50601f01601f191660200190565b6000612725612720846126c8565b612698565b80848252602080830192508560051b85013681111561274357600080fd5b855b818110156127ba5780356001600160401b038111156127645760008081fd5b870136601f8201126127765760008081fd5b8035612784612720826126eb565b81815236868385010111156127995760008081fd5b81868401878301376000918101860191909152865250938201938201612745565b50919695505050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b6040815260006128036040830185876127c6565b9050826020830152949350505050565b600082601f83011261282457600080fd5b8151612832612720826126eb565b81815284602083860101111561284757600080fd5b611ba18260208301602087016120ff565b60006020828403121561286a57600080fd5b81516001600160401b0381111561288057600080fd5b611ba184828501612813565b81835260006020808501808196508560051b810191508460005b878110156129105782840389528135601e198836030181126128c757600080fd5b870185810190356001600160401b038111156128e257600080fd5b8036038213156128f157600080fd5b6128fc8682846127c6565b9a87019a95505050908401906001016128a6565b5091979650505050505050565b60208152600061062460208301848661288c565b60006020828403121561294357600080fd5b5051919050565b60006020828403121561295c57600080fd5b8151801515811461062757600080fd5b6000806040838503121561297f57600080fd5b82516001600160401b038082111561299657600080fd5b6129a286838701612813565b935060208501519150808211156129b857600080fd5b506129c585828601612813565b9150509250929050565b634e487b7160e01b600052601160045260246000fd5b808201808211156104e1576104e16129cf565b634e487b7160e01b600052603260045260246000fd5b600060018201612a2057612a206129cf565b5060010190565b6000808335601e19843603018112612a3e57600080fd5b8301803591506001600160401b03821115612a5857600080fd5b602001915036819003821315610b6f57600080fd5b6040808252810183905260006001600160fb1b03841115612a8d57600080fd5b8360051b808660608501376020830193909352500160600192915050565b600082601f830112612abc57600080fd5b81516020612acc612720836126c8565b82815260059290921b84018101918181019086841115612aeb57600080fd5b8286015b84811015612b2a5780516001600160401b03811115612b0e5760008081fd5b612b1c8986838b0101612813565b845250918301918301612aef565b509695505050505050565b60008060408385031215612b4857600080fd5b82516001600160401b0380821115612b5f57600080fd5b612b6b86838701612aab565b93506020850151915080821115612b8157600080fd5b506129c585828601612aab565b604081526000612ba1604083018561214f565b90508260208301529392505050565b600060208284031215612bc257600080fd5b81516001600160401b03811115612bd857600080fd5b611ba184828501612aab565b60408152600061280360408301858761288c565b60008251612c0a8184602087016120ff565b919091019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a", - "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061018e5760003560e01c8063869b8884116100de578063b3f9e4cb11610097578063c15ae7cf11610071578063c15ae7cf14610410578063c87b56dd14610430578063e985e9c514610443578063ffa1ad741461045657600080fd5b8063b3f9e4cb146103c9578063b85afd28146103dc578063bebec6b4146103fd57600080fd5b8063869b8884146102ff57806391015f6b14610322578063933c051d14610344578063a3f4df7e14610366578063a81ce6f914610396578063ac9650d8146103a957600080fd5b8063430c20811161014b5780636352211e116101255780636352211e146102a5578063672b9f81146102b857806370a08231146102d95780637e37479e146102ec57600080fd5b8063430c20811461026a578063485cc9551461027d5780634f558e791461029257600080fd5b806301ffc9a71461019357806303280755146101bb578063081812fc146101de5780631bd8cc1a146102095780631be5e7ed14610229578063276fabb114610249575b600080fd5b6101a66101a1366004612046565b61047a565b60405190151581526020015b60405180910390f35b6101ce6101c93660046120b4565b6104e7565b6040516101b294939291906121a7565b6101f16101ec3660046121f0565b61050a565b6040516001600160a01b0390911681526020016101b2565b61021c6102173660046120b4565b61060f565b6040516101b29190612209565b61023c61023736600461221c565b61062e565b6040516101b29190612293565b61025c6102573660046122a6565b610759565b6040519081526020016101b2565b6101a66102783660046122ff565b6107cd565b61029061028b36600461232b565b6108e0565b005b6101a66102a03660046121f0565b610a30565b6101f16102b33660046121f0565b610a3b565b6102cb6102c6366004612364565b610a46565b6040516101b2929190612386565b61025c6102e73660046123ab565b610b76565b61025c6102fa3660046123ab565b610c74565b61031261030d3660046123c8565b610ce3565b6040516101b2949392919061250f565b6103356103303660046120b4565b610ed9565b6040516101b29392919061255c565b6103576103523660046123c8565b610ef9565b6040516101b293929190612588565b61023c604051806040016040528060118152602001702aa7299d10283937bc3c902932b0b232b960791b81525081565b6101f16103a43660046121f0565b611082565b6103bc6103b73660046122a6565b611150565b6040516101b291906125cb565b6101f16103d73660046121f0565b611244565b6103ef6103ea3660046120b4565b6112ca565b6040516101b292919061262d565b61023c61040b3660046123ab565b6114a6565b61042361041e3660046122a6565b61151a565b6040516101b29190612652565b61023c61043e3660046121f0565b6115c8565b6101a661045136600461232b565b61169a565b61023c60405180604001604052806005815260200164302e342e3160d81b81525081565b60006001600160e01b031982166362526e6360e01b14806104ab57506001600160e01b03198216636fa624af60e11b145b806104c657506001600160e01b031982166308da864d60e31b145b806104e157506301ffc9a760e01b6001600160e01b03198316145b92915050565b6000806060806104f88787876116e5565b93509350935093505b93509350935093565b600061051582611947565b61052157506000919050565b61052a826119df565b6105a15760665460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa158015610578573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061059c9190612665565b6104e1565b60655460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa1580156105eb573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104e19190612665565b606061062461061e8486612712565b83611a26565b90505b9392505050565b6060610639826119df565b156106be57606554604051631be5e7ed60e01b81526001600160a01b0390911690631be5e7ed90610672908790879087906004016127ef565b600060405180830381865afa15801561068f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106b79190810190612858565b9050610627565b60006106c983611ba9565b90506001600160a01b0381163b1561075157604051631be5e7ed60e01b81526001600160a01b03821690631be5e7ed9061070b908890889088906004016127ef565b600060405180830381865afa92505050801561074957506040513d6000823e601f3d908101601f191682016040526107469190810190612858565b60015b156107515791505b509392505050565b60655460405163276fabb160e01b81526000916001600160a01b03169063276fabb19061078c908690869060040161291d565b602060405180830381865afa1580156107a9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106279190612931565b60006107d882611947565b6107e4575060006104e1565b6107ed826119df565b61086b5760665460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610842573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610866919061294a565b610627565b60655460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa1580156108bc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610627919061294a565b600054610100900460ff16158080156109005750600054600160ff909116105b8061091a5750303b15801561091a575060005460ff166001145b6109825760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff1916600117905580156109a5576000805461ff0019166101001790555b606580546001600160a01b038086166001600160a01b03199283161790925560668054928516929091169190911790556109dd611c1c565b6109e5611c1c565b8015610a2b576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b60006104e182611947565b60006104e182611c89565b606080610a52836119df565b15610ad85760655460405163672b9f8160e01b815260048101869052602481018590526001600160a01b039091169063672b9f8190604401600060405180830381865afa158015610aa7573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610acf919081019061296c565b91509150610b6f565b6000610ae384611ba9565b90506001600160a01b0381163b15610b6d5760405163672b9f8160e01b815260048101869052602481018590526001600160a01b0382169063672b9f8190604401600060405180830381865afa925050508015610b6257506040513d6000823e601f3d908101601f19168201604052610b5f919081019061296c565b60015b15610b6d5790935091505b505b9250929050565b6065546040516370a0823160e01b81526001600160a01b03838116600483015260009283929116906370a0823190602401602060405180830381865afa158015610bc4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610be89190612931565b6066549091506001600160a01b0316156104e1576066546040516370a0823160e01b81526001600160a01b038581166004830152909116906370a0823190602401602060405180830381865afa158015610c46573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c6a9190612931565b61062790826129e5565b606554604051633f1ba3cf60e11b81526001600160a01b0383811660048301526000921690637e37479e90602401602060405180830381865afa158015610cbf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104e19190612931565b6060808080846001600160401b03811115610d0057610d00612682565b604051908082528060200260200182016040528015610d29578160200160208202803683370190505b509350846001600160401b03811115610d4457610d44612682565b604051908082528060200260200182016040528015610d6d578160200160208202803683370190505b509250846001600160401b03811115610d8857610d88612682565b604051908082528060200260200182016040528015610dbb57816020015b6060815260200190600190039081610da65790505b509150846001600160401b03811115610dd657610dd6612682565b604051908082528060200260200182016040528015610e0957816020015b6060815260200190600190039081610df45790505b50905060005b85811015610ecd57610e3a8989898985818110610e2e57610e2e6129f8565b905060200201356116e5565b888581518110610e4c57610e4c6129f8565b60200260200101888681518110610e6557610e656129f8565b60200260200101888781518110610e7e57610e7e6129f8565b60200260200101888881518110610e9757610e976129f8565b6020908102919091010193909352929091526001600160a01b039283169091529116905280610ec581612a0e565b915050610e0f565b50945094509450949050565b6000806060610ee9868686611caa565b9250925092505b93509350939050565b60608080836001600160401b03811115610f1557610f15612682565b604051908082528060200260200182016040528015610f3e578160200160208202803683370190505b509250836001600160401b03811115610f5957610f59612682565b604051908082528060200260200182016040528015610f82578160200160208202803683370190505b509150836001600160401b03811115610f9d57610f9d612682565b604051908082528060200260200182016040528015610fd057816020015b6060815260200190600190039081610fbb5790505b50905060005b84811015611077576110018888888885818110610ff557610ff56129f8565b90506020020135611caa565b868481518110611013576110136129f8565b6020026020010186858151811061102c5761102c6129f8565b60200260200101868681518110611045576110456129f8565b60209081029190910101929092526001600160a01b03928316909152911690528061106f81612a0e565b915050610fd6565b509450945094915050565b606554604051634f558e7960e01b8152600481018390526000916001600160a01b031690634f558e7990602401602060405180830381865afa1580156110cc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110f0919061294a565b156111065750506065546001600160a01b031690565b6066546001600160a01b0316158015906111325750600061112683611eb5565b6001600160a01b031614155b156111485750506066546001600160a01b031690565b506000919050565b6060816001600160401b0381111561116a5761116a612682565b60405190808252806020026020018201604052801561119d57816020015b60608152602001906001900390816111885790505b50905060005b8281101561123d5761120d308585848181106111c1576111c16129f8565b90506020028101906111d39190612a27565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611ee792505050565b82828151811061121f5761121f6129f8565b6020026020010181905250808061123590612a0e565b9150506111a3565b5092915050565b600061124f82611947565b61125b57506000919050565b611264826119df565b6112995760665460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb9060240161055b565b60655460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb906024016105ce565b606080836001600160401b038111156112e5576112e5612682565b60405190808252806020026020018201604052801561131857816020015b60608152602001906001900390816113035790505b509150836001600160401b0381111561133357611333612682565b60405190808252806020026020018201604052801561136657816020015b60608152602001906001900390816113515790505b509050611372836119df565b156113f95760655460405163170b5fa560e31b81526001600160a01b039091169063b85afd28906113ab90889088908890600401612a6d565b600060405180830381865afa1580156113c8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526113f09190810190612b35565b9150915061149e565b600061140484611ba9565b90506001600160a01b0381163b1515801561141e57508415155b1561149c5760405163170b5fa560e31b81526001600160a01b0382169063b85afd289061145390899089908990600401612a6d565b600060405180830381865afa92505050801561149157506040513d6000823e601f3d908101601f1916820160405261148e9190810190612b35565b60015b1561149c5790935091505b505b935093915050565b606554604051632fafb1ad60e21b81526001600160a01b038381166004830152606092169063bebec6b4906024015b600060405180830381865afa1580156114f2573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526104e19190810190612858565b6060816001600160401b0381111561153457611534612682565b60405190808252806020026020018201604052801561155d578160200160208202803683370190505b50905060005b8281101561123d5761158c848483818110611580576115806129f8565b90506020020135611c89565b82828151811061159e5761159e6129f8565b6001600160a01b0390921660209283029190910190910152806115c081612a0e565b915050611563565b60606115d382611947565b6115eb57505060408051602081019091526000815290565b6115f4826119df565b6116695760665460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401600060405180830381865afa158015611641573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261059c9190810190612858565b60655460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd906024016114d5565b60405162461bcd60e51b815260206004820152601f60248201527f50726f78795265616465723a20554e535550504f525445445f4d4554484f44006044820152600090606401610979565b600080606080856001600160401b0381111561170357611703612682565b60405190808252806020026020018201604052801561173657816020015b60608152602001906001900390816117215790505b509150856001600160401b0381111561175157611751612682565b60405190808252806020026020018201604052801561178457816020015b606081526020019060019003908161176f5790505b509050611790856119df565b156118915760655460405163b3f9e4cb60e01b8152600481018790526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa1580156117de573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118029190612665565b935061180d85611fdb565b60655460405163170b5fa560e31b81529194506001600160a01b03169063b85afd2890611842908a908a908a90600401612a6d565b600060405180830381865afa15801561185f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526118879190810190612b35565b9092509050610501565b61189a85611ba9565b93506118a585611eb5565b92506001600160a01b0384163b151580156118c1575060008251115b156105015760405163170b5fa560e31b81526001600160a01b0385169063b85afd28906118f6908a908a908a90600401612a6d565b600060405180830381865afa92505050801561193457506040513d6000823e601f3d908101601f191682016040526119319190810190612b35565b60015b1561050157909250905093509350935093565b6000611952826119df565b61197157600061196183611eb5565b6001600160a01b031614156104e1565b606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e79906024015b602060405180830381865afa1580156119bb573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104e1919061294a565b6066546000906001600160a01b031615806104e15750606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e799060240161199e565b606082516001600160401b03811115611a4157611a41612682565b604051908082528060200260200182016040528015611a7457816020015b6060815260200190600190039081611a5f5790505b509050611a80826119df565b15611b0357606554604051630dec660d60e11b81526001600160a01b0390911690631bd8cc1a90611ab79086908690600401612b8e565b600060405180830381865afa158015611ad4573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611afc9190810190612bb0565b90506104e1565b6000611b0e83611ba9565b90506001600160a01b0381163b15158015611b2a575060008451115b1561123d57604051630dec660d60e11b81526001600160a01b03821690631bd8cc1a90611b5d9087908790600401612b8e565b600060405180830381865afa925050508015611b9b57506040513d6000823e601f3d908101601f19168201604052611b989190810190612bb0565b60015b1561123d575b949350505050565b60665460405163b3f9e4cb60e01b8152600481018390526000916001600160a01b03169063b3f9e4cb906024015b602060405180830381865afa925050508015611c10575060408051601f3d908101601f19168201909252611c0d91810190612665565b60015b6104e157506000919050565b600054610100900460ff16611c875760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608401610979565b565b6000611c94826119df565b611ca15761059c82611eb5565b6104e182611fdb565b6000806060846001600160401b03811115611cc757611cc7612682565b604051908082528060200260200182016040528015611cfa57816020015b6060815260200190600190039081611ce55790505b509050611d06846119df565b15611e045760655460405163b3f9e4cb60e01b8152600481018690526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa158015611d54573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d789190612665565b9250611d8384611fdb565b606554604051630dec660d60e11b81529193506001600160a01b031690631bd8cc1a90611db890899089908990600401612be4565b600060405180830381865afa158015611dd5573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611dfd9190810190612bb0565b9050610ef0565b611e0d84611ba9565b9250611e1884611eb5565b91506001600160a01b0383163b15158015611e3257508415155b15610ef057604051630dec660d60e11b81526001600160a01b03841690631bd8cc1a90611e6790899089908990600401612be4565b600060405180830381865afa925050508015611ea557506040513d6000823e601f3d908101601f19168201604052611ea29190810190612bb0565b60015b15610ef057905093509350939050565b6066546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401611bd7565b60606001600160a01b0383163b611f4f5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b6064820152608401610979565b600080846001600160a01b031684604051611f6a9190612bf8565b600060405180830381855af49150503d8060008114611fa5576040519150601f19603f3d011682016040523d82523d6000602084013e611faa565b606091505b5091509150611fd28282604051806060016040528060278152602001612c156027913961200d565b95945050505050565b6065546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401611bd7565b6060831561201c575081610627565b82511561202c5782518084602001fd5b8160405162461bcd60e51b81526004016109799190612293565b60006020828403121561205857600080fd5b81356001600160e01b03198116811461062757600080fd5b60008083601f84011261208257600080fd5b5081356001600160401b0381111561209957600080fd5b6020830191508360208260051b8501011115610b6f57600080fd5b6000806000604084860312156120c957600080fd5b83356001600160401b038111156120df57600080fd5b6120eb86828701612070565b909790965060209590950135949350505050565b60005b8381101561211a578181015183820152602001612102565b50506000910152565b6000815180845261213b8160208601602086016120ff565b601f01601f19169290920160200192915050565b600082825180855260208086019550808260051b84010181860160005b8481101561219a57601f19868403018952612188838351612123565b9884019892509083019060010161216c565b5090979650505050505050565b6001600160a01b038581168252841660208201526080604082018190526000906121d39083018561214f565b82810360608401526121e5818561214f565b979650505050505050565b60006020828403121561220257600080fd5b5035919050565b602081526000610627602083018461214f565b60008060006040848603121561223157600080fd5b83356001600160401b038082111561224857600080fd5b818601915086601f83011261225c57600080fd5b81358181111561226b57600080fd5b87602082850101111561227d57600080fd5b6020928301989097509590910135949350505050565b6020815260006106276020830184612123565b600080602083850312156122b957600080fd5b82356001600160401b038111156122cf57600080fd5b6122db85828601612070565b90969095509350505050565b6001600160a01b03811681146122fc57600080fd5b50565b6000806040838503121561231257600080fd5b823561231d816122e7565b946020939093013593505050565b6000806040838503121561233e57600080fd5b8235612349816122e7565b91506020830135612359816122e7565b809150509250929050565b6000806040838503121561237757600080fd5b50508035926020909101359150565b6040815260006123996040830185612123565b8281036020840152611fd28185612123565b6000602082840312156123bd57600080fd5b8135610627816122e7565b600080600080604085870312156123de57600080fd5b84356001600160401b03808211156123f557600080fd5b61240188838901612070565b9096509450602087013591508082111561241a57600080fd5b5061242787828801612070565b95989497509550505050565b600081518084526020808501945080840160005b8381101561246c5781516001600160a01b031687529582019590820190600101612447565b509495945050505050565b600081518084526020808501808196506005915083821b81018387016000805b87811015612500578484038b5282518051808652908801908886019080891b87018a01855b828110156124ea57601f198983030184526124d8828651612123565b948c0194938c019391506001016124bc565b509d8a019d965050509287019250600101612497565b50919998505050505050505050565b6080815260006125226080830187612433565b82810360208401526125348187612433565b905082810360408401526125488186612477565b905082810360608401526121e58185612477565b6001600160a01b03848116825283166020820152606060408201819052600090611fd29083018461214f565b60608152600061259b6060830186612433565b82810360208401526125ad8186612433565b905082810360408401526125c18185612477565b9695505050505050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b8281101561262057603f1988860301845261260e858351612123565b945092850192908501906001016125f2565b5092979650505050505050565b604081526000612640604083018561214f565b8281036020840152611fd2818561214f565b6020815260006106276020830184612433565b60006020828403121561267757600080fd5b8151610627816122e7565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b03811182821017156126c0576126c0612682565b604052919050565b60006001600160401b038211156126e1576126e1612682565b5060051b60200190565b60006001600160401b0382111561270457612704612682565b50601f01601f191660200190565b6000612725612720846126c8565b612698565b80848252602080830192508560051b85013681111561274357600080fd5b855b818110156127ba5780356001600160401b038111156127645760008081fd5b870136601f8201126127765760008081fd5b8035612784612720826126eb565b81815236868385010111156127995760008081fd5b81868401878301376000918101860191909152865250938201938201612745565b50919695505050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b6040815260006128036040830185876127c6565b9050826020830152949350505050565b600082601f83011261282457600080fd5b8151612832612720826126eb565b81815284602083860101111561284757600080fd5b611ba18260208301602087016120ff565b60006020828403121561286a57600080fd5b81516001600160401b0381111561288057600080fd5b611ba184828501612813565b81835260006020808501808196508560051b810191508460005b878110156129105782840389528135601e198836030181126128c757600080fd5b870185810190356001600160401b038111156128e257600080fd5b8036038213156128f157600080fd5b6128fc8682846127c6565b9a87019a95505050908401906001016128a6565b5091979650505050505050565b60208152600061062460208301848661288c565b60006020828403121561294357600080fd5b5051919050565b60006020828403121561295c57600080fd5b8151801515811461062757600080fd5b6000806040838503121561297f57600080fd5b82516001600160401b038082111561299657600080fd5b6129a286838701612813565b935060208501519150808211156129b857600080fd5b506129c585828601612813565b9150509250929050565b634e487b7160e01b600052601160045260246000fd5b808201808211156104e1576104e16129cf565b634e487b7160e01b600052603260045260246000fd5b600060018201612a2057612a206129cf565b5060010190565b6000808335601e19843603018112612a3e57600080fd5b8301803591506001600160401b03821115612a5857600080fd5b602001915036819003821315610b6f57600080fd5b6040808252810183905260006001600160fb1b03841115612a8d57600080fd5b8360051b808660608501376020830193909352500160600192915050565b600082601f830112612abc57600080fd5b81516020612acc612720836126c8565b82815260059290921b84018101918181019086841115612aeb57600080fd5b8286015b84811015612b2a5780516001600160401b03811115612b0e5760008081fd5b612b1c8986838b0101612813565b845250918301918301612aef565b509695505050505050565b60008060408385031215612b4857600080fd5b82516001600160401b0380821115612b5f57600080fd5b612b6b86838701612aab565b93506020850151915080821115612b8157600080fd5b506129c585828601612aab565b604081526000612ba1604083018561214f565b90508260208301529392505050565b600060208284031215612bc257600080fd5b81516001600160401b03811115612bd857600080fd5b611ba184828501612aab565b60408152600061280360408301858761288c565b60008251612c0a8184602087016120ff565b919091019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a", + "bytecode": "0x608060405234801561000f575f80fd5b50612b068061001d5f395ff3fe608060405234801561000f575f80fd5b5060043610610187575f3560e01c8063869b8884116100d9578063b3f9e4cb11610093578063c15ae7cf1161006e578063c15ae7cf14610408578063c87b56dd14610428578063e985e9c51461043b578063ffa1ad741461044e575f80fd5b8063b3f9e4cb146103c1578063b85afd28146103d4578063bebec6b4146103f5575f80fd5b8063869b8884146102f757806391015f6b1461031a578063933c051d1461033c578063a3f4df7e1461035e578063a81ce6f91461038e578063ac9650d8146103a1575f80fd5b8063430c2081116101445780636352211e1161011f5780636352211e1461029d578063672b9f81146102b057806370a08231146102d15780637e37479e146102e4575f80fd5b8063430c208114610262578063485cc955146102755780634f558e791461028a575f80fd5b806301ffc9a71461018b57806303280755146101b3578063081812fc146101d65780631bd8cc1a146102015780631be5e7ed14610221578063276fabb114610241575b5f80fd5b61019e610199366004611f9e565b610472565b60405190151581526020015b60405180910390f35b6101c66101c1366004612005565b6104de565b6040516101aa94939291906120f1565b6101e96101e4366004612139565b610500565b6040516001600160a01b0390911681526020016101aa565b61021461020f366004612005565b6105ff565b6040516101aa9190612150565b61023461022f366004612162565b61061e565b6040516101aa91906121d2565b61025461024f3660046121e4565b610742565b6040519081526020016101aa565b61019e610270366004612239565b6107b3565b610288610283366004612263565b6108c0565b005b61019e610298366004612139565b610a0a565b6101e96102ab366004612139565b610a14565b6102c36102be36600461229a565b610a1e565b6040516101aa9291906122ba565b6102546102df3660046122de565b610b47565b6102546102f23660046122de565b610c40565b61030a6103053660046122f9565b610cac565b6040516101aa949392919061243a565b61032d610328366004612005565b610e97565b6040516101aa93929190612486565b61034f61034a3660046122f9565b610eb6565b6040516101aa939291906124b1565b610234604051806040016040528060118152602001702aa7299d10283937bc3c902932b0b232b960791b81525081565b6101e961039c366004612139565b611034565b6103b46103af3660046121e4565b6110fd565b6040516101aa91906124f3565b6101e96103cf366004612139565b6111e4565b6103e76103e2366004612005565b611268565b6040516101aa929190612555565b6102346104033660046122de565b61143d565b61041b6104163660046121e4565b6114ad565b6040516101aa9190612579565b610234610436366004612139565b611550565b61019e610449366004612263565b61161d565b61023460405180604001604052806005815260200164302e342e3160d81b81525081565b5f6001600160e01b031982166362526e6360e01b14806104a257506001600160e01b03198216636fa624af60e11b145b806104bd57506001600160e01b031982166308da864d60e31b145b806104d857506301ffc9a760e01b6001600160e01b03198316145b92915050565b5f806060806104ee878787611667565b93509350935093505b93509350935093565b5f61050a826118bf565b61051557505f919050565b61051e82611953565b6105935760665460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa15801561056a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061058e919061258b565b6104d8565b60655460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa1580156105db573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104d8919061258b565b606061061461060e8486612632565b83611999565b90505b9392505050565b606061062982611953565b156106aa57606554604051631be5e7ed60e01b81526001600160a01b0390911690631be5e7ed9061066290879087908790600401612705565b5f60405180830381865afa15801561067c573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526106a3919081019061276a565b9050610617565b5f6106b483611b14565b90506001600160a01b0381163b1561073a57604051631be5e7ed60e01b81526001600160a01b03821690631be5e7ed906106f690889088908890600401612705565b5f60405180830381865afa92505050801561073257506040513d5f823e601f3d908101601f1916820160405261072f919081019061276a565b60015b1561073a5791505b509392505050565b60655460405163276fabb160e01b81525f916001600160a01b03169063276fabb190610774908690869060040161281f565b602060405180830381865afa15801561078f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106179190612832565b5f6107bd826118bf565b6107c857505f6104d8565b6107d182611953565b61084d5760665460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610824573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108489190612849565b610617565b60655460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa15801561089c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106179190612849565b5f54610100900460ff16158080156108de57505f54600160ff909116105b806108f75750303b1580156108f757505f5460ff166001145b61095f5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b5f805460ff191660011790558015610980575f805461ff0019166101001790555b606580546001600160a01b038086166001600160a01b03199283161790925560668054928516929091169190911790556109b8611b85565b6109c0611b85565b8015610a05575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b5f6104d8826118bf565b5f6104d882611bf1565b606080610a2a83611953565b15610aac5760655460405163672b9f8160e01b815260048101869052602481018590526001600160a01b039091169063672b9f81906044015f60405180830381865afa158015610a7c573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052610aa39190810190612868565b91509150610b40565b5f610ab684611b14565b90506001600160a01b0381163b15610b3e5760405163672b9f8160e01b815260048101869052602481018590526001600160a01b0382169063672b9f81906044015f60405180830381865afa925050508015610b3357506040513d5f823e601f3d908101601f19168201604052610b309190810190612868565b60015b15610b3e5790935091505b505b9250929050565b6065546040516370a0823160e01b81526001600160a01b0383811660048301525f9283929116906370a0823190602401602060405180830381865afa158015610b92573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bb69190612832565b6066549091506001600160a01b0316156104d8576066546040516370a0823160e01b81526001600160a01b038581166004830152909116906370a0823190602401602060405180830381865afa158015610c12573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c369190612832565b61061790826128c7565b606554604051633f1ba3cf60e11b81526001600160a01b0383811660048301525f921690637e37479e90602401602060405180830381865afa158015610c88573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104d89190612832565b6060808080846001600160401b03811115610cc957610cc96125a6565b604051908082528060200260200182016040528015610cf2578160200160208202803683370190505b509350846001600160401b03811115610d0d57610d0d6125a6565b604051908082528060200260200182016040528015610d36578160200160208202803683370190505b509250846001600160401b03811115610d5157610d516125a6565b604051908082528060200260200182016040528015610d8457816020015b6060815260200190600190039081610d6f5790505b509150846001600160401b03811115610d9f57610d9f6125a6565b604051908082528060200260200182016040528015610dd257816020015b6060815260200190600190039081610dbd5790505b5090505f5b85811015610e8b57610e028989898985818110610df657610df66128e6565b90506020020135611667565b888581518110610e1457610e146128e6565b60200260200101888681518110610e2d57610e2d6128e6565b60200260200101888781518110610e4657610e466128e6565b60200260200101888881518110610e5f57610e5f6128e6565b6020908102919091010193909352929091526001600160a01b0392831690915291169052600101610dd7565b50945094509450949050565b5f806060610ea6868686611c11565b9250925092505b93509350939050565b60608080836001600160401b03811115610ed257610ed26125a6565b604051908082528060200260200182016040528015610efb578160200160208202803683370190505b509250836001600160401b03811115610f1657610f166125a6565b604051908082528060200260200182016040528015610f3f578160200160208202803683370190505b509150836001600160401b03811115610f5a57610f5a6125a6565b604051908082528060200260200182016040528015610f8d57816020015b6060815260200190600190039081610f785790505b5090505f5b8481101561102957610fbd8888888885818110610fb157610fb16128e6565b90506020020135611c11565b868481518110610fcf57610fcf6128e6565b60200260200101868581518110610fe857610fe86128e6565b60200260200101868681518110611001576110016128e6565b60209081029190910101929092526001600160a01b0392831690915291169052600101610f92565b509450945094915050565b606554604051634f558e7960e01b8152600481018390525f916001600160a01b031690634f558e7990602401602060405180830381865afa15801561107b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061109f9190612849565b156110b55750506065546001600160a01b031690565b6066546001600160a01b0316158015906110e057505f6110d483611e13565b6001600160a01b031614155b156110f65750506066546001600160a01b031690565b505f919050565b6060816001600160401b03811115611117576111176125a6565b60405190808252806020026020018201604052801561114a57816020015b60608152602001906001900390816111355790505b5090505f5b828110156111dd576111b83085858481811061116d5761116d6128e6565b905060200281019061117f91906128fa565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250611e4492505050565b8282815181106111ca576111ca6128e6565b602090810291909101015260010161114f565b5092915050565b5f6111ee826118bf565b6111f957505f919050565b61120282611953565b6112375760665460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb9060240161054f565b60655460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb906024016105c0565b606080836001600160401b03811115611283576112836125a6565b6040519080825280602002602001820160405280156112b657816020015b60608152602001906001900390816112a15790505b509150836001600160401b038111156112d1576112d16125a6565b60405190808252806020026020018201604052801561130457816020015b60608152602001906001900390816112ef5790505b50905061131083611953565b156113935760655460405163170b5fa560e31b81526001600160a01b039091169063b85afd28906113499088908890889060040161293c565b5f60405180830381865afa158015611363573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261138a91908101906129fd565b91509150611435565b5f61139d84611b14565b90506001600160a01b0381163b151580156113b757508415155b156114335760405163170b5fa560e31b81526001600160a01b0382169063b85afd28906113ec9089908990899060040161293c565b5f60405180830381865afa92505050801561142857506040513d5f823e601f3d908101601f1916820160405261142591908101906129fd565b60015b156114335790935091505b505b935093915050565b606554604051632fafb1ad60e21b81526001600160a01b038381166004830152606092169063bebec6b4906024015b5f60405180830381865afa158015611486573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526104d8919081019061276a565b6060816001600160401b038111156114c7576114c76125a6565b6040519080825280602002602001820160405280156114f0578160200160208202803683370190505b5090505f5b828110156111dd5761151e848483818110611512576115126128e6565b90506020020135611bf1565b828281518110611530576115306128e6565b6001600160a01b03909216602092830291909101909101526001016114f5565b606061155b826118bf565b61157257505060408051602081019091525f815290565b61157b82611953565b6115ec5760665460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd906024015f60405180830381865afa1580156115c5573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261058e919081019061276a565b60655460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd9060240161146c565b60405162461bcd60e51b815260206004820152601f60248201527f50726f78795265616465723a20554e535550504f525445445f4d4554484f440060448201525f90606401610956565b5f80606080856001600160401b03811115611684576116846125a6565b6040519080825280602002602001820160405280156116b757816020015b60608152602001906001900390816116a25790505b509150856001600160401b038111156116d2576116d26125a6565b60405190808252806020026020018201604052801561170557816020015b60608152602001906001900390816116f05790505b50905061171185611953565b1561180c5760655460405163b3f9e4cb60e01b8152600481018790526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561175d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611781919061258b565b935061178c85611f34565b60655460405163170b5fa560e31b81529194506001600160a01b03169063b85afd28906117c1908a908a908a9060040161293c565b5f60405180830381865afa1580156117db573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261180291908101906129fd565b90925090506104f7565b61181585611b14565b935061182085611e13565b92506001600160a01b0384163b1515801561183b57505f8251115b156104f75760405163170b5fa560e31b81526001600160a01b0385169063b85afd2890611870908a908a908a9060040161293c565b5f60405180830381865afa9250505080156118ac57506040513d5f823e601f3d908101601f191682016040526118a991908101906129fd565b60015b156104f757909250905093509350935093565b5f6118c982611953565b6118e7575f6118d783611e13565b6001600160a01b031614156104d8565b606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e79906024015b602060405180830381865afa15801561192f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104d89190612849565b6066545f906001600160a01b031615806104d85750606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401611914565b606082516001600160401b038111156119b4576119b46125a6565b6040519080825280602002602001820160405280156119e757816020015b60608152602001906001900390816119d25790505b5090506119f382611953565b15611a7257606554604051630dec660d60e11b81526001600160a01b0390911690631bd8cc1a90611a2a9086908690600401612a52565b5f60405180830381865afa158015611a44573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052611a6b9190810190612a73565b90506104d8565b5f611a7c83611b14565b90506001600160a01b0381163b15158015611a9757505f8451115b156111dd57604051630dec660d60e11b81526001600160a01b03821690631bd8cc1a90611aca9087908790600401612a52565b5f60405180830381865afa925050508015611b0657506040513d5f823e601f3d908101601f19168201604052611b039190810190612a73565b60015b156111dd575b949350505050565b60665460405163b3f9e4cb60e01b8152600481018390525f916001600160a01b03169063b3f9e4cb906024015b602060405180830381865afa925050508015611b7a575060408051601f3d908101601f19168201909252611b779181019061258b565b60015b6104d857505f919050565b5f54610100900460ff16611bef5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608401610956565b565b5f611bfb82611953565b611c085761058e82611e13565b6104d882611f34565b5f806060846001600160401b03811115611c2d57611c2d6125a6565b604051908082528060200260200182016040528015611c6057816020015b6060815260200190600190039081611c4b5790505b509050611c6c84611953565b15611d645760655460405163b3f9e4cb60e01b8152600481018690526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa158015611cb8573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611cdc919061258b565b9250611ce784611f34565b606554604051630dec660d60e11b81529193506001600160a01b031690631bd8cc1a90611d1c90899089908990600401612aa4565b5f60405180830381865afa158015611d36573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052611d5d9190810190612a73565b9050610ead565b611d6d84611b14565b9250611d7884611e13565b91506001600160a01b0383163b15158015611d9257508415155b15610ead57604051630dec660d60e11b81526001600160a01b03841690631bd8cc1a90611dc790899089908990600401612aa4565b5f60405180830381865afa925050508015611e0357506040513d5f823e601f3d908101601f19168201604052611e009190810190612a73565b60015b15610ead57905093509350939050565b6066546040516331a9108f60e11b8152600481018390525f916001600160a01b031690636352211e90602401611b41565b60606001600160a01b0383163b611eac5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b6064820152608401610956565b5f80846001600160a01b031684604051611ec69190612ab7565b5f60405180830381855af49150503d805f8114611efe576040519150601f19603f3d011682016040523d82523d5f602084013e611f03565b606091505b5091509150611f2b8282604051806060016040528060278152602001612ad360279139611f65565b95945050505050565b6065546040516331a9108f60e11b8152600481018390525f916001600160a01b031690636352211e90602401611b41565b60608315611f74575081610617565b825115611f845782518084602001fd5b8160405162461bcd60e51b815260040161095691906121d2565b5f60208284031215611fae575f80fd5b81356001600160e01b031981168114610617575f80fd5b5f8083601f840112611fd5575f80fd5b5081356001600160401b03811115611feb575f80fd5b6020830191508360208260051b8501011115610b40575f80fd5b5f805f60408486031215612017575f80fd5b83356001600160401b0381111561202c575f80fd5b61203886828701611fc5565b909790965060209590950135949350505050565b5f5b8381101561206657818101518382015260200161204e565b50505f910152565b5f815180845261208581602086016020860161204c565b601f01601f19169290920160200192915050565b5f8282518085526020808601955060208260051b840101602086015f5b848110156120e457601f198684030189526120d283835161206e565b988401989250908301906001016120b6565b5090979650505050505050565b6001600160a01b038581168252841660208201526080604082018190525f9061211c90830185612099565b828103606084015261212e8185612099565b979650505050505050565b5f60208284031215612149575f80fd5b5035919050565b602081525f6106176020830184612099565b5f805f60408486031215612174575f80fd5b83356001600160401b038082111561218a575f80fd5b818601915086601f83011261219d575f80fd5b8135818111156121ab575f80fd5b8760208285010111156121bc575f80fd5b6020928301989097509590910135949350505050565b602081525f610617602083018461206e565b5f80602083850312156121f5575f80fd5b82356001600160401b0381111561220a575f80fd5b61221685828601611fc5565b90969095509350505050565b6001600160a01b0381168114612236575f80fd5b50565b5f806040838503121561224a575f80fd5b823561225581612222565b946020939093013593505050565b5f8060408385031215612274575f80fd5b823561227f81612222565b9150602083013561228f81612222565b809150509250929050565b5f80604083850312156122ab575f80fd5b50508035926020909101359150565b604081525f6122cc604083018561206e565b8281036020840152611f2b818561206e565b5f602082840312156122ee575f80fd5b813561061781612222565b5f805f806040858703121561230c575f80fd5b84356001600160401b0380821115612322575f80fd5b61232e88838901611fc5565b90965094506020870135915080821115612346575f80fd5b5061235387828801611fc5565b95989497509550505050565b5f815180845260208085019450602084015f5b838110156123975781516001600160a01b031687529582019590820190600101612372565b509495945050505050565b5f828251808552602080860195506005818360051b8501018287015f5b8581101561242c57601f1987840381018b5282518051808652908701908786019080881b870189015f5b82811015612415578589830301845261240382865161206e565b948b0194938b019391506001016123e9565b509d89019d965050509286019250506001016123bf565b509098975050505050505050565b608081525f61244c608083018761235f565b828103602084015261245e818761235f565b9050828103604084015261247281866123a2565b9050828103606084015261212e81856123a2565b6001600160a01b038481168252831660208201526060604082018190525f90611f2b90830184612099565b606081525f6124c3606083018661235f565b82810360208401526124d5818661235f565b905082810360408401526124e981856123a2565b9695505050505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b8281101561254857603f1988860301845261253685835161206e565b9450928501929085019060010161251a565b5092979650505050505050565b604081525f6125676040830185612099565b8281036020840152611f2b8185612099565b602081525f610617602083018461235f565b5f6020828403121561259b575f80fd5b815161061781612222565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f191681016001600160401b03811182821017156125e2576125e26125a6565b604052919050565b5f6001600160401b03821115612602576126026125a6565b5060051b60200190565b5f6001600160401b03821115612624576126246125a6565b50601f01601f191660200190565b5f61264461263f846125ea565b6125ba565b80848252602080830192508560051b850136811115612661575f80fd5b855b818110156126d15780356001600160401b03811115612680575f80fd5b870136601f820112612690575f80fd5b803561269e61263f8261260c565b81815236868385010111156126b1575f80fd5b81868401878301375f918101860191909152865250938201938201612663565b50919695505050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b604081525f6127186040830185876126dd565b9050826020830152949350505050565b5f82601f830112612737575f80fd5b815161274561263f8261260c565b818152846020838601011115612759575f80fd5b611b0c82602083016020870161204c565b5f6020828403121561277a575f80fd5b81516001600160401b0381111561278f575f80fd5b611b0c84828501612728565b5f838385526020808601955060208560051b830101845f5b878110156120e457848303601f19018952813536889003601e190181126127d8575f80fd5b870184810190356001600160401b038111156127f2575f80fd5b803603821315612800575f80fd5b61280b8582846126dd565b9a86019a94505050908301906001016127b3565b602081525f61061460208301848661279b565b5f60208284031215612842575f80fd5b5051919050565b5f60208284031215612859575f80fd5b81518015158114610617575f80fd5b5f8060408385031215612879575f80fd5b82516001600160401b038082111561288f575f80fd5b61289b86838701612728565b935060208501519150808211156128b0575f80fd5b506128bd85828601612728565b9150509250929050565b808201808211156104d857634e487b7160e01b5f52601160045260245ffd5b634e487b7160e01b5f52603260045260245ffd5b5f808335601e1984360301811261290f575f80fd5b8301803591506001600160401b03821115612928575f80fd5b602001915036819003821315610b40575f80fd5b604080825281018390525f6001600160fb1b0384111561295a575f80fd5b8360051b808660608501376020830193909352500160600192915050565b5f82601f830112612987575f80fd5b8151602061299761263f836125ea565b82815260059290921b840181019181810190868411156129b5575f80fd5b8286015b848110156129f25780516001600160401b038111156129d6575f80fd5b6129e48986838b0101612728565b8452509183019183016129b9565b509695505050505050565b5f8060408385031215612a0e575f80fd5b82516001600160401b0380821115612a24575f80fd5b612a3086838701612978565b93506020850151915080821115612a45575f80fd5b506128bd85828601612978565b604081525f612a646040830185612099565b90508260208301529392505050565b5f60208284031215612a83575f80fd5b81516001600160401b03811115612a98575f80fd5b611b0c84828501612978565b604081525f61271860408301858761279b565b5f8251612ac881846020870161204c565b919091019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000818000a", + "deployedBytecode": "0x608060405234801561000f575f80fd5b5060043610610187575f3560e01c8063869b8884116100d9578063b3f9e4cb11610093578063c15ae7cf1161006e578063c15ae7cf14610408578063c87b56dd14610428578063e985e9c51461043b578063ffa1ad741461044e575f80fd5b8063b3f9e4cb146103c1578063b85afd28146103d4578063bebec6b4146103f5575f80fd5b8063869b8884146102f757806391015f6b1461031a578063933c051d1461033c578063a3f4df7e1461035e578063a81ce6f91461038e578063ac9650d8146103a1575f80fd5b8063430c2081116101445780636352211e1161011f5780636352211e1461029d578063672b9f81146102b057806370a08231146102d15780637e37479e146102e4575f80fd5b8063430c208114610262578063485cc955146102755780634f558e791461028a575f80fd5b806301ffc9a71461018b57806303280755146101b3578063081812fc146101d65780631bd8cc1a146102015780631be5e7ed14610221578063276fabb114610241575b5f80fd5b61019e610199366004611f9e565b610472565b60405190151581526020015b60405180910390f35b6101c66101c1366004612005565b6104de565b6040516101aa94939291906120f1565b6101e96101e4366004612139565b610500565b6040516001600160a01b0390911681526020016101aa565b61021461020f366004612005565b6105ff565b6040516101aa9190612150565b61023461022f366004612162565b61061e565b6040516101aa91906121d2565b61025461024f3660046121e4565b610742565b6040519081526020016101aa565b61019e610270366004612239565b6107b3565b610288610283366004612263565b6108c0565b005b61019e610298366004612139565b610a0a565b6101e96102ab366004612139565b610a14565b6102c36102be36600461229a565b610a1e565b6040516101aa9291906122ba565b6102546102df3660046122de565b610b47565b6102546102f23660046122de565b610c40565b61030a6103053660046122f9565b610cac565b6040516101aa949392919061243a565b61032d610328366004612005565b610e97565b6040516101aa93929190612486565b61034f61034a3660046122f9565b610eb6565b6040516101aa939291906124b1565b610234604051806040016040528060118152602001702aa7299d10283937bc3c902932b0b232b960791b81525081565b6101e961039c366004612139565b611034565b6103b46103af3660046121e4565b6110fd565b6040516101aa91906124f3565b6101e96103cf366004612139565b6111e4565b6103e76103e2366004612005565b611268565b6040516101aa929190612555565b6102346104033660046122de565b61143d565b61041b6104163660046121e4565b6114ad565b6040516101aa9190612579565b610234610436366004612139565b611550565b61019e610449366004612263565b61161d565b61023460405180604001604052806005815260200164302e342e3160d81b81525081565b5f6001600160e01b031982166362526e6360e01b14806104a257506001600160e01b03198216636fa624af60e11b145b806104bd57506001600160e01b031982166308da864d60e31b145b806104d857506301ffc9a760e01b6001600160e01b03198316145b92915050565b5f806060806104ee878787611667565b93509350935093505b93509350935093565b5f61050a826118bf565b61051557505f919050565b61051e82611953565b6105935760665460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa15801561056a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061058e919061258b565b6104d8565b60655460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa1580156105db573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104d8919061258b565b606061061461060e8486612632565b83611999565b90505b9392505050565b606061062982611953565b156106aa57606554604051631be5e7ed60e01b81526001600160a01b0390911690631be5e7ed9061066290879087908790600401612705565b5f60405180830381865afa15801561067c573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526106a3919081019061276a565b9050610617565b5f6106b483611b14565b90506001600160a01b0381163b1561073a57604051631be5e7ed60e01b81526001600160a01b03821690631be5e7ed906106f690889088908890600401612705565b5f60405180830381865afa92505050801561073257506040513d5f823e601f3d908101601f1916820160405261072f919081019061276a565b60015b1561073a5791505b509392505050565b60655460405163276fabb160e01b81525f916001600160a01b03169063276fabb190610774908690869060040161281f565b602060405180830381865afa15801561078f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106179190612832565b5f6107bd826118bf565b6107c857505f6104d8565b6107d182611953565b61084d5760665460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610824573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108489190612849565b610617565b60655460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa15801561089c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106179190612849565b5f54610100900460ff16158080156108de57505f54600160ff909116105b806108f75750303b1580156108f757505f5460ff166001145b61095f5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b5f805460ff191660011790558015610980575f805461ff0019166101001790555b606580546001600160a01b038086166001600160a01b03199283161790925560668054928516929091169190911790556109b8611b85565b6109c0611b85565b8015610a05575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b5f6104d8826118bf565b5f6104d882611bf1565b606080610a2a83611953565b15610aac5760655460405163672b9f8160e01b815260048101869052602481018590526001600160a01b039091169063672b9f81906044015f60405180830381865afa158015610a7c573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052610aa39190810190612868565b91509150610b40565b5f610ab684611b14565b90506001600160a01b0381163b15610b3e5760405163672b9f8160e01b815260048101869052602481018590526001600160a01b0382169063672b9f81906044015f60405180830381865afa925050508015610b3357506040513d5f823e601f3d908101601f19168201604052610b309190810190612868565b60015b15610b3e5790935091505b505b9250929050565b6065546040516370a0823160e01b81526001600160a01b0383811660048301525f9283929116906370a0823190602401602060405180830381865afa158015610b92573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bb69190612832565b6066549091506001600160a01b0316156104d8576066546040516370a0823160e01b81526001600160a01b038581166004830152909116906370a0823190602401602060405180830381865afa158015610c12573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c369190612832565b61061790826128c7565b606554604051633f1ba3cf60e11b81526001600160a01b0383811660048301525f921690637e37479e90602401602060405180830381865afa158015610c88573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104d89190612832565b6060808080846001600160401b03811115610cc957610cc96125a6565b604051908082528060200260200182016040528015610cf2578160200160208202803683370190505b509350846001600160401b03811115610d0d57610d0d6125a6565b604051908082528060200260200182016040528015610d36578160200160208202803683370190505b509250846001600160401b03811115610d5157610d516125a6565b604051908082528060200260200182016040528015610d8457816020015b6060815260200190600190039081610d6f5790505b509150846001600160401b03811115610d9f57610d9f6125a6565b604051908082528060200260200182016040528015610dd257816020015b6060815260200190600190039081610dbd5790505b5090505f5b85811015610e8b57610e028989898985818110610df657610df66128e6565b90506020020135611667565b888581518110610e1457610e146128e6565b60200260200101888681518110610e2d57610e2d6128e6565b60200260200101888781518110610e4657610e466128e6565b60200260200101888881518110610e5f57610e5f6128e6565b6020908102919091010193909352929091526001600160a01b0392831690915291169052600101610dd7565b50945094509450949050565b5f806060610ea6868686611c11565b9250925092505b93509350939050565b60608080836001600160401b03811115610ed257610ed26125a6565b604051908082528060200260200182016040528015610efb578160200160208202803683370190505b509250836001600160401b03811115610f1657610f166125a6565b604051908082528060200260200182016040528015610f3f578160200160208202803683370190505b509150836001600160401b03811115610f5a57610f5a6125a6565b604051908082528060200260200182016040528015610f8d57816020015b6060815260200190600190039081610f785790505b5090505f5b8481101561102957610fbd8888888885818110610fb157610fb16128e6565b90506020020135611c11565b868481518110610fcf57610fcf6128e6565b60200260200101868581518110610fe857610fe86128e6565b60200260200101868681518110611001576110016128e6565b60209081029190910101929092526001600160a01b0392831690915291169052600101610f92565b509450945094915050565b606554604051634f558e7960e01b8152600481018390525f916001600160a01b031690634f558e7990602401602060405180830381865afa15801561107b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061109f9190612849565b156110b55750506065546001600160a01b031690565b6066546001600160a01b0316158015906110e057505f6110d483611e13565b6001600160a01b031614155b156110f65750506066546001600160a01b031690565b505f919050565b6060816001600160401b03811115611117576111176125a6565b60405190808252806020026020018201604052801561114a57816020015b60608152602001906001900390816111355790505b5090505f5b828110156111dd576111b83085858481811061116d5761116d6128e6565b905060200281019061117f91906128fa565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250611e4492505050565b8282815181106111ca576111ca6128e6565b602090810291909101015260010161114f565b5092915050565b5f6111ee826118bf565b6111f957505f919050565b61120282611953565b6112375760665460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb9060240161054f565b60655460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb906024016105c0565b606080836001600160401b03811115611283576112836125a6565b6040519080825280602002602001820160405280156112b657816020015b60608152602001906001900390816112a15790505b509150836001600160401b038111156112d1576112d16125a6565b60405190808252806020026020018201604052801561130457816020015b60608152602001906001900390816112ef5790505b50905061131083611953565b156113935760655460405163170b5fa560e31b81526001600160a01b039091169063b85afd28906113499088908890889060040161293c565b5f60405180830381865afa158015611363573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261138a91908101906129fd565b91509150611435565b5f61139d84611b14565b90506001600160a01b0381163b151580156113b757508415155b156114335760405163170b5fa560e31b81526001600160a01b0382169063b85afd28906113ec9089908990899060040161293c565b5f60405180830381865afa92505050801561142857506040513d5f823e601f3d908101601f1916820160405261142591908101906129fd565b60015b156114335790935091505b505b935093915050565b606554604051632fafb1ad60e21b81526001600160a01b038381166004830152606092169063bebec6b4906024015b5f60405180830381865afa158015611486573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526104d8919081019061276a565b6060816001600160401b038111156114c7576114c76125a6565b6040519080825280602002602001820160405280156114f0578160200160208202803683370190505b5090505f5b828110156111dd5761151e848483818110611512576115126128e6565b90506020020135611bf1565b828281518110611530576115306128e6565b6001600160a01b03909216602092830291909101909101526001016114f5565b606061155b826118bf565b61157257505060408051602081019091525f815290565b61157b82611953565b6115ec5760665460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd906024015f60405180830381865afa1580156115c5573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261058e919081019061276a565b60655460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd9060240161146c565b60405162461bcd60e51b815260206004820152601f60248201527f50726f78795265616465723a20554e535550504f525445445f4d4554484f440060448201525f90606401610956565b5f80606080856001600160401b03811115611684576116846125a6565b6040519080825280602002602001820160405280156116b757816020015b60608152602001906001900390816116a25790505b509150856001600160401b038111156116d2576116d26125a6565b60405190808252806020026020018201604052801561170557816020015b60608152602001906001900390816116f05790505b50905061171185611953565b1561180c5760655460405163b3f9e4cb60e01b8152600481018790526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561175d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611781919061258b565b935061178c85611f34565b60655460405163170b5fa560e31b81529194506001600160a01b03169063b85afd28906117c1908a908a908a9060040161293c565b5f60405180830381865afa1580156117db573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261180291908101906129fd565b90925090506104f7565b61181585611b14565b935061182085611e13565b92506001600160a01b0384163b1515801561183b57505f8251115b156104f75760405163170b5fa560e31b81526001600160a01b0385169063b85afd2890611870908a908a908a9060040161293c565b5f60405180830381865afa9250505080156118ac57506040513d5f823e601f3d908101601f191682016040526118a991908101906129fd565b60015b156104f757909250905093509350935093565b5f6118c982611953565b6118e7575f6118d783611e13565b6001600160a01b031614156104d8565b606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e79906024015b602060405180830381865afa15801561192f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104d89190612849565b6066545f906001600160a01b031615806104d85750606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401611914565b606082516001600160401b038111156119b4576119b46125a6565b6040519080825280602002602001820160405280156119e757816020015b60608152602001906001900390816119d25790505b5090506119f382611953565b15611a7257606554604051630dec660d60e11b81526001600160a01b0390911690631bd8cc1a90611a2a9086908690600401612a52565b5f60405180830381865afa158015611a44573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052611a6b9190810190612a73565b90506104d8565b5f611a7c83611b14565b90506001600160a01b0381163b15158015611a9757505f8451115b156111dd57604051630dec660d60e11b81526001600160a01b03821690631bd8cc1a90611aca9087908790600401612a52565b5f60405180830381865afa925050508015611b0657506040513d5f823e601f3d908101601f19168201604052611b039190810190612a73565b60015b156111dd575b949350505050565b60665460405163b3f9e4cb60e01b8152600481018390525f916001600160a01b03169063b3f9e4cb906024015b602060405180830381865afa925050508015611b7a575060408051601f3d908101601f19168201909252611b779181019061258b565b60015b6104d857505f919050565b5f54610100900460ff16611bef5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608401610956565b565b5f611bfb82611953565b611c085761058e82611e13565b6104d882611f34565b5f806060846001600160401b03811115611c2d57611c2d6125a6565b604051908082528060200260200182016040528015611c6057816020015b6060815260200190600190039081611c4b5790505b509050611c6c84611953565b15611d645760655460405163b3f9e4cb60e01b8152600481018690526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa158015611cb8573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611cdc919061258b565b9250611ce784611f34565b606554604051630dec660d60e11b81529193506001600160a01b031690631bd8cc1a90611d1c90899089908990600401612aa4565b5f60405180830381865afa158015611d36573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052611d5d9190810190612a73565b9050610ead565b611d6d84611b14565b9250611d7884611e13565b91506001600160a01b0383163b15158015611d9257508415155b15610ead57604051630dec660d60e11b81526001600160a01b03841690631bd8cc1a90611dc790899089908990600401612aa4565b5f60405180830381865afa925050508015611e0357506040513d5f823e601f3d908101601f19168201604052611e009190810190612a73565b60015b15610ead57905093509350939050565b6066546040516331a9108f60e11b8152600481018390525f916001600160a01b031690636352211e90602401611b41565b60606001600160a01b0383163b611eac5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b6064820152608401610956565b5f80846001600160a01b031684604051611ec69190612ab7565b5f60405180830381855af49150503d805f8114611efe576040519150601f19603f3d011682016040523d82523d5f602084013e611f03565b606091505b5091509150611f2b8282604051806060016040528060278152602001612ad360279139611f65565b95945050505050565b6065546040516331a9108f60e11b8152600481018390525f916001600160a01b031690636352211e90602401611b41565b60608315611f74575081610617565b825115611f845782518084602001fd5b8160405162461bcd60e51b815260040161095691906121d2565b5f60208284031215611fae575f80fd5b81356001600160e01b031981168114610617575f80fd5b5f8083601f840112611fd5575f80fd5b5081356001600160401b03811115611feb575f80fd5b6020830191508360208260051b8501011115610b40575f80fd5b5f805f60408486031215612017575f80fd5b83356001600160401b0381111561202c575f80fd5b61203886828701611fc5565b909790965060209590950135949350505050565b5f5b8381101561206657818101518382015260200161204e565b50505f910152565b5f815180845261208581602086016020860161204c565b601f01601f19169290920160200192915050565b5f8282518085526020808601955060208260051b840101602086015f5b848110156120e457601f198684030189526120d283835161206e565b988401989250908301906001016120b6565b5090979650505050505050565b6001600160a01b038581168252841660208201526080604082018190525f9061211c90830185612099565b828103606084015261212e8185612099565b979650505050505050565b5f60208284031215612149575f80fd5b5035919050565b602081525f6106176020830184612099565b5f805f60408486031215612174575f80fd5b83356001600160401b038082111561218a575f80fd5b818601915086601f83011261219d575f80fd5b8135818111156121ab575f80fd5b8760208285010111156121bc575f80fd5b6020928301989097509590910135949350505050565b602081525f610617602083018461206e565b5f80602083850312156121f5575f80fd5b82356001600160401b0381111561220a575f80fd5b61221685828601611fc5565b90969095509350505050565b6001600160a01b0381168114612236575f80fd5b50565b5f806040838503121561224a575f80fd5b823561225581612222565b946020939093013593505050565b5f8060408385031215612274575f80fd5b823561227f81612222565b9150602083013561228f81612222565b809150509250929050565b5f80604083850312156122ab575f80fd5b50508035926020909101359150565b604081525f6122cc604083018561206e565b8281036020840152611f2b818561206e565b5f602082840312156122ee575f80fd5b813561061781612222565b5f805f806040858703121561230c575f80fd5b84356001600160401b0380821115612322575f80fd5b61232e88838901611fc5565b90965094506020870135915080821115612346575f80fd5b5061235387828801611fc5565b95989497509550505050565b5f815180845260208085019450602084015f5b838110156123975781516001600160a01b031687529582019590820190600101612372565b509495945050505050565b5f828251808552602080860195506005818360051b8501018287015f5b8581101561242c57601f1987840381018b5282518051808652908701908786019080881b870189015f5b82811015612415578589830301845261240382865161206e565b948b0194938b019391506001016123e9565b509d89019d965050509286019250506001016123bf565b509098975050505050505050565b608081525f61244c608083018761235f565b828103602084015261245e818761235f565b9050828103604084015261247281866123a2565b9050828103606084015261212e81856123a2565b6001600160a01b038481168252831660208201526060604082018190525f90611f2b90830184612099565b606081525f6124c3606083018661235f565b82810360208401526124d5818661235f565b905082810360408401526124e981856123a2565b9695505050505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b8281101561254857603f1988860301845261253685835161206e565b9450928501929085019060010161251a565b5092979650505050505050565b604081525f6125676040830185612099565b8281036020840152611f2b8185612099565b602081525f610617602083018461235f565b5f6020828403121561259b575f80fd5b815161061781612222565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f191681016001600160401b03811182821017156125e2576125e26125a6565b604052919050565b5f6001600160401b03821115612602576126026125a6565b5060051b60200190565b5f6001600160401b03821115612624576126246125a6565b50601f01601f191660200190565b5f61264461263f846125ea565b6125ba565b80848252602080830192508560051b850136811115612661575f80fd5b855b818110156126d15780356001600160401b03811115612680575f80fd5b870136601f820112612690575f80fd5b803561269e61263f8261260c565b81815236868385010111156126b1575f80fd5b81868401878301375f918101860191909152865250938201938201612663565b50919695505050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b604081525f6127186040830185876126dd565b9050826020830152949350505050565b5f82601f830112612737575f80fd5b815161274561263f8261260c565b818152846020838601011115612759575f80fd5b611b0c82602083016020870161204c565b5f6020828403121561277a575f80fd5b81516001600160401b0381111561278f575f80fd5b611b0c84828501612728565b5f838385526020808601955060208560051b830101845f5b878110156120e457848303601f19018952813536889003601e190181126127d8575f80fd5b870184810190356001600160401b038111156127f2575f80fd5b803603821315612800575f80fd5b61280b8582846126dd565b9a86019a94505050908301906001016127b3565b602081525f61061460208301848661279b565b5f60208284031215612842575f80fd5b5051919050565b5f60208284031215612859575f80fd5b81518015158114610617575f80fd5b5f8060408385031215612879575f80fd5b82516001600160401b038082111561288f575f80fd5b61289b86838701612728565b935060208501519150808211156128b0575f80fd5b506128bd85828601612728565b9150509250929050565b808201808211156104d857634e487b7160e01b5f52601160045260245ffd5b634e487b7160e01b5f52603260045260245ffd5b5f808335601e1984360301811261290f575f80fd5b8301803591506001600160401b03821115612928575f80fd5b602001915036819003821315610b40575f80fd5b604080825281018390525f6001600160fb1b0384111561295a575f80fd5b8360051b808660608501376020830193909352500160600192915050565b5f82601f830112612987575f80fd5b8151602061299761263f836125ea565b82815260059290921b840181019181810190868411156129b5575f80fd5b8286015b848110156129f25780516001600160401b038111156129d6575f80fd5b6129e48986838b0101612728565b8452509183019183016129b9565b509695505050505050565b5f8060408385031215612a0e575f80fd5b82516001600160401b0380821115612a24575f80fd5b612a3086838701612978565b93506020850151915080821115612a45575f80fd5b506128bd85828601612978565b604081525f612a646040830185612099565b90508260208301529392505050565b5f60208284031215612a83575f80fd5b81516001600160401b03811115612a98575f80fd5b611b0c84828501612978565b604081525f61271860408301858761279b565b5f8251612ac881846020870161204c565b919091019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000818000a", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/artifacts/PublicResolver.json b/artifacts/PublicResolver.json index aa273d76..df961e9a 100644 --- a/artifacts/PublicResolver.json +++ b/artifacts/PublicResolver.json @@ -1015,8 +1015,8 @@ "type": "function" } ], - "bytecode": "0x6101006040523480156200001257600080fd5b50604051620030403803806200304083398101604081905262000035916200017a565b6040516302571be360e01b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26004820152849033906000906001600160a01b038416906302571be390602401602060405180830381865afa158015620000a1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620000c79190620001e2565b604051630f41a04d60e11b81526001600160a01b03848116600483015291925090821690631e83409a906024016020604051808303816000875af115801562000114573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200013a919062000209565b5050506001600160a01b039485166080525091831660a052821660c0521660e05262000223565b6001600160a01b03811681146200017757600080fd5b50565b600080600080608085870312156200019157600080fd5b84516200019e8162000161565b6020860151909450620001b18162000161565b6040860151909350620001c48162000161565b6060860151909250620001d78162000161565b939692955090935050565b600060208284031215620001f557600080fd5b8151620002028162000161565b9392505050565b6000602082840312156200021c57600080fd5b5051919050565b60805160a05160c05160e051612ddc620002646000396000611720015260006116ee0152600081816117df015261182c015260006117680152612ddc6000f3fe608060405234801561001057600080fd5b50600436106101da5760003560e01c80638b95dd7111610104578063c8690233116100a2578063e32954eb11610071578063e32954eb14610500578063e59d895d14610513578063e985e9c514610526578063f1cb7e061461056257600080fd5b8063c869023314610441578063ce3decdc14610499578063d5fa2b00146104ac578063d700ff33146104bf57600080fd5b8063a8fa5682116100de578063a8fa5682146103b7578063a9784b3e146103ca578063ac9650d81461040e578063bc1c58d11461042e57600080fd5b80638b95dd711461037e578063a22cb46514610391578063a4b91a01146103a457600080fd5b80633603d7581161017c5780635c98042b1161014b5780635c98042b14610332578063623195b014610345578063691f343114610358578063773722131461036b57600080fd5b80633603d758146102a15780633b3b57de146102b45780634cbf6ba4146102c757806359d1d43c1461031257600080fd5b8063124a319c116101b8578063124a319c1461022f5780632203ab561461025a57806329cd62ea1461027b578063304e6ade1461028e57600080fd5b806301ffc9a7146101df5780630af179d71461020757806310f13a8c1461021c575b600080fd5b6101f26101ed36600461230a565b610575565b60405190151581526020015b60405180910390f35b61021a610215366004612366565b610586565b005b61021a61022a3660046123b1565b61078f565b61024261023d36600461242a565b61085b565b6040516001600160a01b0390911681526020016101fe565b61026d610268366004612456565b610aac565b6040516101fe9291906124c8565b61021a6102893660046124e1565b610be2565b61021a61029c366004612366565b610c7c565b61021a6102af36600461250d565b610cf7565b6102426102c236600461250d565b610d98565b6101f26102d5366004612456565b600082815260208181526040808320546001600160401b031683526006825280832094835293815283822092825291909152205461ffff16151590565b610325610320366004612366565b610dca565b6040516101fe9190612526565b61032561034036600461250d565b610ea9565b61021a610353366004612539565b610f67565b61032561036636600461250d565b611003565b61021a610379366004612366565b61103c565b61021a61038c3660046125a1565b6110b7565b61021a61039f366004612689565b611196565b61021a6103b23660046126b5565b611271565b6103256103c53660046126f3565b61133e565b6101f26103d8366004612733565b6001600160a01b039283166000908152600c60209081526040808320948352938152838220929094168152925290205460ff1690565b61042161041c3660046127ae565b61138b565b6040516101fe91906127ef565b61032561043c36600461250d565b611399565b61048461044f36600461250d565b600081815260208181526040808320546001600160401b03168352600982528083209383529290522080546001909101549091565b604080519283526020830191909152016101fe565b61021a6104a7366004612366565b6113d2565b61021a6104ba366004612851565b611513565b6104e86104cd36600461250d565b6000602081905290815260409020546001600160401b031681565b6040516001600160401b0390911681526020016101fe565b61042161050e366004612881565b61153a565b61021a6105213660046128bf565b61154f565b6101f26105343660046128f4565b6001600160a01b039182166000908152600b6020908152604080832093909416825291909152205460ff1690565b610325610570366004612456565b6115f5565b6000610580826116bc565b92915050565b82610590816116e1565b61059957600080fd5b600084815260208181526040808320548151601f87018490048402810184019092528582528392606092839285926001600160401b039091169183916105fe9183918d908d908190840183828082843760009201919091525092939250506119169050565b90505b80515160208201511015610728578661ffff16600003610666578060400151965061062b81611977565b94508460405160200161063e9190612922565b60405160208183030381529060405280519060200120925061065f81611998565b935061071a565b600061067182611977565b9050816040015161ffff168861ffff16141580610695575061069386826119b4565b155b15610718576106f18c878a8e8e8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250505060208801518d91506106e8908290612954565b8b51158a6119d2565b81604001519750816020015196508095508580519060200120935061071582611998565b94505b505b61072381611c39565b610601565b50835115610783576107838a85888c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508c925061077a91508290508f612954565b895115886119d2565b50505050505050505050565b84610799816116e1565b6107a257600080fd5b600086815260208181526040808320546001600160401b03168352600a8252808320898452909152908190209051849184916107e19089908990612967565b908152602001604051809103902091826107fc9291906129ff565b50848460405161080d929190612967565b6040518091039020867f448bc014f1536726cf8d54ff3d6481ed3cbc683c2591ca204274009afa09b1a18787878760405161084b9493929190612ae7565b60405180910390a3505050505050565b600082815260208181526040808320546001600160401b031683526007825280832085845282528083206001600160e01b0319851684529091528120546001600160a01b031680156108ae579050610580565b60006108b985610d98565b90506001600160a01b0381166108d457600092505050610580565b6040516301ffc9a760e01b602482015260009081906001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b1790525161092c9190612922565b600060405180830381855afa9150503d8060008114610967576040519150601f19603f3d011682016040523d82523d6000602084013e61096c565b606091505b509150915081158061097f575060208151105b806109a9575080601f8151811061099857610998612b19565b01602001516001600160f81b031916155b156109bb576000945050505050610580565b6040516001600160e01b0319871660248201526001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b17905251610a119190612922565b600060405180830381855afa9150503d8060008114610a4c576040519150601f19603f3d011682016040523d82523d6000602084013e610a51565b606091505b509092509050811580610a65575060208151105b80610a8f575080601f81518110610a7e57610a7e612b19565b01602001516001600160f81b031916155b15610aa1576000945050505050610580565b509095945050505050565b600082815260208181526040808320546001600160401b03168352600180835281842086855290925282206060915b848111610bc25780851615801590610b0b575060008181526020839052604081208054610b0790612977565b9050115b15610bba5780826000838152602001908152602001600020808054610b2f90612977565b80601f0160208091040260200160405190810160405280929190818152602001828054610b5b90612977565b8015610ba85780601f10610b7d57610100808354040283529160200191610ba8565b820191906000526020600020905b815481529060010190602001808311610b8b57829003601f168201915b50505050509050935093505050610bdb565b60011b610adb565b5060006040518060200160405280600081525092509250505b9250929050565b82610bec816116e1565b610bf557600080fd5b60408051808201825284815260208082018581526000888152808352848120546001600160401b031681526009835284812089825283528490209251835551600190920191909155815185815290810184905285917f1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e4691015b60405180910390a250505050565b82610c86816116e1565b610c8f57600080fd5b600084815260208181526040808320546001600160401b03168352600382528083208784529091529020610cc48385836129ff565b50837fe379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d75788484604051610c6e929190612b2f565b80610d01816116e1565b610d0a57600080fd5b600082815260208190526040812080546001600160401b031691610d2d83612b43565b82546101009290920a6001600160401b03818102199093169183160217909155600084815260208181526040918290205491519190921681528492507fc6621ccb8f3f5a04bb6502154b2caf6adf5983fe76dfef1cfc9c42e3579db444910160405180910390a25050565b600080610da683603c6115f5565b90508051600003610dba5750600092915050565b610dc381611d21565b9392505050565b600083815260208181526040808320546001600160401b03168352600a825280832086845290915290819020905160609190610e099085908590612967565b90815260200160405180910390208054610e2290612977565b80601f0160208091040260200160405190810160405280929190818152602001828054610e4e90612977565b8015610e9b5780601f10610e7057610100808354040283529160200191610e9b565b820191906000526020600020905b815481529060010190602001808311610e7e57829003601f168201915b505050505090509392505050565b600081815260208181526040808320546001600160401b03168352600482528083208484529091529020805460609190610ee290612977565b80601f0160208091040260200160405190810160405280929190818152602001828054610f0e90612977565b8015610f5b5780601f10610f3057610100808354040283529160200191610f5b565b820191906000526020600020905b815481529060010190602001808311610f3e57829003601f168201915b50505050509050919050565b83610f71816116e1565b610f7a57600080fd5b83610f86600182612954565b1615610f9157600080fd5b600085815260208181526040808320546001600160401b031683526001825280832088845282528083208784529091529020610fce8385836129ff565b50604051849086907faa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe390600090a35050505050565b600081815260208181526040808320546001600160401b03168352600882528083208484529091529020805460609190610ee290612977565b82611046816116e1565b61104f57600080fd5b600084815260208181526040808320546001600160401b031683526008825280832087845290915290206110848385836129ff565b50837fb7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f78484604051610c6e929190612b2f565b826110c1816116e1565b6110ca57600080fd5b837f65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af75284846040516110fc9291906124c8565b60405180910390a2603c830361115357837f52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd261113784611d21565b6040516001600160a01b03909116815260200160405180910390a25b600084815260208181526040808320546001600160401b03168352600282528083208784528252808320868452909152902061118f8382612b69565b5050505050565b6001600160a01b03821633036112055760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084015b60405180910390fd5b336000818152600b602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6001600160a01b03821633036112c95760405162461bcd60e51b815260206004820181905260248201527f53657474696e672064656c65676174652073746174757320666f722073656c6660448201526064016111fc565b336000818152600c6020908152604080832087845282528083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519384529286917ff0ddb3b04746704017f9aa8bd728fcc2c1d11675041205350018915f5e4750a0910160405180910390a4505050565b600083815260208181526040808320546001600160401b03168352600582528083208684528252808320858452825280832061ffff851684529091529020805460609190610e2290612977565b6060610dc360008484611d40565b600081815260208181526040808320546001600160401b03168352600382528083208484529091529020805460609190610ee290612977565b826113dc816116e1565b6113e557600080fd5b600084815260208181526040808320546001600160401b0316808452600483528184208885529092528220805491929161141e90612977565b80601f016020809104026020016040519081016040528092919081815260200182805461144a90612977565b80156114975780601f1061146c57610100808354040283529160200191611497565b820191906000526020600020905b81548152906001019060200180831161147a57829003601f168201915b505050506001600160401b03841660009081526004602090815260408083208b845290915290209192506114ce90508587836129ff565b50857f8f15ed4b723ef428f250961da8315675b507046737e19319fc1a4d81bfe87f8582878760405161150393929190612c28565b60405180910390a2505050505050565b8161151d816116e1565b61152657600080fd5b61153583603c61038c85611f0f565b505050565b6060611547848484611d40565b949350505050565b82611559816116e1565b61156257600080fd5b600084815260208181526040808320546001600160401b031683526007825280832087845282528083206001600160e01b031987168085529083529281902080546001600160a01b0319166001600160a01b038716908117909155905190815286917f7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa910160405180910390a350505050565b600082815260208181526040808320546001600160401b03168352600282528083208584528252808320848452909152902080546060919061163690612977565b80601f016020809104026020016040519081016040528092919081815260200182805461166290612977565b80156116af5780601f10611684576101008083540402835291602001916116af565b820191906000526020600020905b81548152906001019060200180831161169257829003601f168201915b5050505050905092915050565b60006001600160e01b03198216631674750f60e21b1480610580575061058082611f3f565b6000336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614806117425750336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016145b1561174f57506001919050565b6040516302571be360e01b8152600481018390526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906302571be390602401602060405180830381865afa1580156117b7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117db9190612c58565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b0316036118a2576040516331a9108f60e11b8152600481018490527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690636352211e90602401602060405180830381865afa15801561187b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061189f9190612c58565b90505b6001600160a01b0381163314806118dc57506001600160a01b0381166000908152600b6020908152604080832033845290915290205460ff165b80610dc357506001600160a01b0381166000908152600c60209081526040808320868452825280832033845290915290205460ff16610dc3565b6119646040518060e001604052806060815260200160008152602001600061ffff168152602001600061ffff168152602001600063ffffffff16815260200160008152602001600081525090565b82815260c0810182905261058081611c39565b602081015181516060916105809161198f9082611f64565b84519190611fbe565b60a081015160c08201516060916105809161198f908290612954565b600081518351148015610dc35750610dc38360008460008751612034565b8651602088012060006119e6878787611fbe565b90508315611b0d576001600160401b03831660009081526005602090815260408083208d84528252808320858452825280832061ffff8c16845290915290208054611a3090612977565b159050611a8e576001600160401b03831660009081526006602090815260408083208d845282528083208584529091528120805461ffff1691611a7283612c75565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b03831660009081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091528120611ace91612297565b897f03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a12078a8a604051611b00929190612c93565b60405180910390a2610783565b6001600160401b03831660009081526005602090815260408083208d84528252808320858452825280832061ffff8c16845290915290208054611b4f90612977565b9050600003611baf576001600160401b03831660009081526006602090815260408083208d845282528083208584529091528120805461ffff1691611b9383612cb9565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b03831660009081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091529020611bf08282612b69565b50897f52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b8a8a84604051611c2593929190612cd0565b60405180910390a250505050505050505050565b60c08101516020820181905281515111611c505750565b6000611c6482600001518360200151611f64565b8260200151611c739190612cff565b8251909150611c829082612057565b61ffff166040830152611c96600282612cff565b8251909150611ca59082612057565b61ffff166060830152611cb9600282612cff565b8251909150611cc8908261207f565b63ffffffff166080830152611cde600482612cff565b8251909150600090611cf09083612057565b61ffff169050611d01600283612cff565b60a084018190529150611d148183612cff565b60c0909301929092525050565b60008151601414611d3157600080fd5b5060200151600160601b900490565b6060816001600160401b03811115611d5a57611d5a61258b565b604051908082528060200260200182016040528015611d8d57816020015b6060815260200190600190039081611d785790505b50905060005b82811015611f07578415611e4f576000848483818110611db557611db5612b19565b9050602002810190611dc79190612d12565b611dd691602491600491612d58565b611ddf91612d82565b9050858114611e4d5760405162461bcd60e51b815260206004820152603460248201527f6d756c746963616c6c3a20416c6c207265636f726473206d7573742068617665604482015273040c240dac2e8c6d0d2dcce40dcc2dacad0c2e6d60631b60648201526084016111fc565b505b60008030868685818110611e6557611e65612b19565b9050602002810190611e779190612d12565b604051611e85929190612967565b600060405180830381855af49150503d8060008114611ec0576040519150601f19603f3d011682016040523d82523d6000602084013e611ec5565b606091505b509150915081611ed457600080fd5b80848481518110611ee757611ee7612b19565b602002602001018190525050508080611eff90612da0565b915050611d93565b509392505050565b604080516014808252818301909252606091602082018180368337505050600160601b9290920260208301525090565b60006001600160e01b0319821663c869023360e01b14806105805750610580826120a9565b6000815b83518110611f7857611f78612db9565b6000611f8485836120ce565b60ff169050611f94816001612cff565b611f9e9083612cff565b915080600003611fae5750611fb4565b50611f68565b6115478382612954565b8251606090611fcd8385612cff565b1115611fd857600080fd5b6000826001600160401b03811115611ff257611ff261258b565b6040519080825280601f01601f19166020018201604052801561201c576020820181803683370190505b50905060208082019086860101610aa18282876120f2565b6000612041848484612148565b61204c878785612148565b149695505050505050565b8151600090612067836002612cff565b111561207257600080fd5b50016002015161ffff1690565b815160009061208f836004612cff565b111561209a57600080fd5b50016004015163ffffffff1690565b60006001600160e01b0319821663691f343160e01b148061058057506105808261216c565b60008282815181106120e2576120e2612b19565b016020015160f81c905092915050565b6020811061212a5781518352612109602084612cff565b9250612116602083612cff565b9150612123602082612954565b90506120f2565b905182516020929092036101000a6000190180199091169116179052565b82516000906121578385612cff565b111561216257600080fd5b5091016020012090565b60006001600160e01b031982166304928c6760e21b148061058057506105808260006001600160e01b0319821663547d2b4160e11b14806121bd57506001600160e01b03198216635c98042b60e01b145b8061058057506105808260006001600160e01b0319821663bc1c58d160e01b148061058057506105808260006001600160e01b03198216631d9dabef60e11b148061221857506001600160e01b031982166378e5bf0360e11b145b8061058057506105808260006001600160e01b03198216631101d5ab60e11b148061058057506105808260006001600160e01b0319821663d700ff3360e01b148061058057506105808260006001600160e01b03198216634fbf043360e01b148061058057506301ffc9a760e01b6001600160e01b0319831614610580565b5080546122a390612977565b6000825580601f106122b3575050565b601f0160209004906000526020600020908101906122d191906122d4565b50565b5b808211156122e957600081556001016122d5565b5090565b80356001600160e01b03198116811461230557600080fd5b919050565b60006020828403121561231c57600080fd5b610dc3826122ed565b60008083601f84011261233757600080fd5b5081356001600160401b0381111561234e57600080fd5b602083019150836020828501011115610bdb57600080fd5b60008060006040848603121561237b57600080fd5b8335925060208401356001600160401b0381111561239857600080fd5b6123a486828701612325565b9497909650939450505050565b6000806000806000606086880312156123c957600080fd5b8535945060208601356001600160401b03808211156123e757600080fd5b6123f389838a01612325565b9096509450604088013591508082111561240c57600080fd5b5061241988828901612325565b969995985093965092949392505050565b6000806040838503121561243d57600080fd5b8235915061244d602084016122ed565b90509250929050565b6000806040838503121561246957600080fd5b50508035926020909101359150565b60005b8381101561249357818101518382015260200161247b565b50506000910152565b600081518084526124b4816020860160208601612478565b601f01601f19169290920160200192915050565b828152604060208201526000611547604083018461249c565b6000806000606084860312156124f657600080fd5b505081359360208301359350604090920135919050565b60006020828403121561251f57600080fd5b5035919050565b602081526000610dc3602083018461249c565b6000806000806060858703121561254f57600080fd5b843593506020850135925060408501356001600160401b0381111561257357600080fd5b61257f87828801612325565b95989497509550505050565b634e487b7160e01b600052604160045260246000fd5b6000806000606084860312156125b657600080fd5b833592506020840135915060408401356001600160401b03808211156125db57600080fd5b818601915086601f8301126125ef57600080fd5b8135818111156126015761260161258b565b604051601f8201601f19908116603f011681019083821181831017156126295761262961258b565b8160405282815289602084870101111561264257600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6001600160a01b03811681146122d157600080fd5b8035801515811461230557600080fd5b6000806040838503121561269c57600080fd5b82356126a781612664565b915061244d60208401612679565b6000806000606084860312156126ca57600080fd5b8335925060208401356126dc81612664565b91506126ea60408501612679565b90509250925092565b60008060006060848603121561270857600080fd5b8335925060208401359150604084013561ffff8116811461272857600080fd5b809150509250925092565b60008060006060848603121561274857600080fd5b833561275381612664565b925060208401359150604084013561272881612664565b60008083601f84011261277c57600080fd5b5081356001600160401b0381111561279357600080fd5b6020830191508360208260051b8501011115610bdb57600080fd5b600080602083850312156127c157600080fd5b82356001600160401b038111156127d757600080fd5b6127e38582860161276a565b90969095509350505050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b8281101561284457603f1988860301845261283285835161249c565b94509285019290850190600101612816565b5092979650505050505050565b6000806040838503121561286457600080fd5b82359150602083013561287681612664565b809150509250929050565b60008060006040848603121561289657600080fd5b8335925060208401356001600160401b038111156128b357600080fd5b6123a48682870161276a565b6000806000606084860312156128d457600080fd5b833592506128e4602085016122ed565b9150604084013561272881612664565b6000806040838503121561290757600080fd5b823561291281612664565b9150602083013561287681612664565b60008251612934818460208701612478565b9190910192915050565b634e487b7160e01b600052601160045260246000fd5b818103818111156105805761058061293e565b8183823760009101908152919050565b600181811c9082168061298b57607f821691505b6020821081036129ab57634e487b7160e01b600052602260045260246000fd5b50919050565b601f82111561153557600081815260208120601f850160051c810160208610156129d85750805b601f850160051c820191505b818110156129f7578281556001016129e4565b505050505050565b6001600160401b03831115612a1657612a1661258b565b612a2a83612a248354612977565b836129b1565b6000601f841160018114612a5e5760008515612a465750838201355b600019600387901b1c1916600186901b17835561118f565b600083815260209020601f19861690835b82811015612a8f5786850135825560209485019460019092019101612a6f565b5086821015612aac5760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b604081526000612afb604083018688612abe565b8281036020840152612b0e818587612abe565b979650505050505050565b634e487b7160e01b600052603260045260246000fd5b602081526000611547602083018486612abe565b60006001600160401b03808316818103612b5f57612b5f61293e565b6001019392505050565b81516001600160401b03811115612b8257612b8261258b565b612b9681612b908454612977565b846129b1565b602080601f831160018114612bcb5760008415612bb35750858301515b600019600386901b1c1916600185901b1785556129f7565b600085815260208120601f198616915b82811015612bfa57888601518255948401946001909101908401612bdb565b5085821015612c185787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b604081526000612c3b604083018661249c565b8281036020840152612c4e818587612abe565b9695505050505050565b600060208284031215612c6a57600080fd5b8151610dc381612664565b600061ffff821680612c8957612c8961293e565b6000190192915050565b604081526000612ca6604083018561249c565b905061ffff831660208301529392505050565b600061ffff808316818103612b5f57612b5f61293e565b606081526000612ce3606083018661249c565b61ffff851660208401528281036040840152612c4e818561249c565b808201808211156105805761058061293e565b6000808335601e19843603018112612d2957600080fd5b8301803591506001600160401b03821115612d4357600080fd5b602001915036819003821315610bdb57600080fd5b60008085851115612d6857600080fd5b83861115612d7557600080fd5b5050820193919092039150565b8035602083101561058057600019602084900360031b1b1692915050565b600060018201612db257612db261293e565b5060010190565b634e487b7160e01b600052600160045260246000fdfea164736f6c6343000811000a", - "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101da5760003560e01c80638b95dd7111610104578063c8690233116100a2578063e32954eb11610071578063e32954eb14610500578063e59d895d14610513578063e985e9c514610526578063f1cb7e061461056257600080fd5b8063c869023314610441578063ce3decdc14610499578063d5fa2b00146104ac578063d700ff33146104bf57600080fd5b8063a8fa5682116100de578063a8fa5682146103b7578063a9784b3e146103ca578063ac9650d81461040e578063bc1c58d11461042e57600080fd5b80638b95dd711461037e578063a22cb46514610391578063a4b91a01146103a457600080fd5b80633603d7581161017c5780635c98042b1161014b5780635c98042b14610332578063623195b014610345578063691f343114610358578063773722131461036b57600080fd5b80633603d758146102a15780633b3b57de146102b45780634cbf6ba4146102c757806359d1d43c1461031257600080fd5b8063124a319c116101b8578063124a319c1461022f5780632203ab561461025a57806329cd62ea1461027b578063304e6ade1461028e57600080fd5b806301ffc9a7146101df5780630af179d71461020757806310f13a8c1461021c575b600080fd5b6101f26101ed36600461230a565b610575565b60405190151581526020015b60405180910390f35b61021a610215366004612366565b610586565b005b61021a61022a3660046123b1565b61078f565b61024261023d36600461242a565b61085b565b6040516001600160a01b0390911681526020016101fe565b61026d610268366004612456565b610aac565b6040516101fe9291906124c8565b61021a6102893660046124e1565b610be2565b61021a61029c366004612366565b610c7c565b61021a6102af36600461250d565b610cf7565b6102426102c236600461250d565b610d98565b6101f26102d5366004612456565b600082815260208181526040808320546001600160401b031683526006825280832094835293815283822092825291909152205461ffff16151590565b610325610320366004612366565b610dca565b6040516101fe9190612526565b61032561034036600461250d565b610ea9565b61021a610353366004612539565b610f67565b61032561036636600461250d565b611003565b61021a610379366004612366565b61103c565b61021a61038c3660046125a1565b6110b7565b61021a61039f366004612689565b611196565b61021a6103b23660046126b5565b611271565b6103256103c53660046126f3565b61133e565b6101f26103d8366004612733565b6001600160a01b039283166000908152600c60209081526040808320948352938152838220929094168152925290205460ff1690565b61042161041c3660046127ae565b61138b565b6040516101fe91906127ef565b61032561043c36600461250d565b611399565b61048461044f36600461250d565b600081815260208181526040808320546001600160401b03168352600982528083209383529290522080546001909101549091565b604080519283526020830191909152016101fe565b61021a6104a7366004612366565b6113d2565b61021a6104ba366004612851565b611513565b6104e86104cd36600461250d565b6000602081905290815260409020546001600160401b031681565b6040516001600160401b0390911681526020016101fe565b61042161050e366004612881565b61153a565b61021a6105213660046128bf565b61154f565b6101f26105343660046128f4565b6001600160a01b039182166000908152600b6020908152604080832093909416825291909152205460ff1690565b610325610570366004612456565b6115f5565b6000610580826116bc565b92915050565b82610590816116e1565b61059957600080fd5b600084815260208181526040808320548151601f87018490048402810184019092528582528392606092839285926001600160401b039091169183916105fe9183918d908d908190840183828082843760009201919091525092939250506119169050565b90505b80515160208201511015610728578661ffff16600003610666578060400151965061062b81611977565b94508460405160200161063e9190612922565b60405160208183030381529060405280519060200120925061065f81611998565b935061071a565b600061067182611977565b9050816040015161ffff168861ffff16141580610695575061069386826119b4565b155b15610718576106f18c878a8e8e8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250505060208801518d91506106e8908290612954565b8b51158a6119d2565b81604001519750816020015196508095508580519060200120935061071582611998565b94505b505b61072381611c39565b610601565b50835115610783576107838a85888c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508c925061077a91508290508f612954565b895115886119d2565b50505050505050505050565b84610799816116e1565b6107a257600080fd5b600086815260208181526040808320546001600160401b03168352600a8252808320898452909152908190209051849184916107e19089908990612967565b908152602001604051809103902091826107fc9291906129ff565b50848460405161080d929190612967565b6040518091039020867f448bc014f1536726cf8d54ff3d6481ed3cbc683c2591ca204274009afa09b1a18787878760405161084b9493929190612ae7565b60405180910390a3505050505050565b600082815260208181526040808320546001600160401b031683526007825280832085845282528083206001600160e01b0319851684529091528120546001600160a01b031680156108ae579050610580565b60006108b985610d98565b90506001600160a01b0381166108d457600092505050610580565b6040516301ffc9a760e01b602482015260009081906001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b1790525161092c9190612922565b600060405180830381855afa9150503d8060008114610967576040519150601f19603f3d011682016040523d82523d6000602084013e61096c565b606091505b509150915081158061097f575060208151105b806109a9575080601f8151811061099857610998612b19565b01602001516001600160f81b031916155b156109bb576000945050505050610580565b6040516001600160e01b0319871660248201526001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b17905251610a119190612922565b600060405180830381855afa9150503d8060008114610a4c576040519150601f19603f3d011682016040523d82523d6000602084013e610a51565b606091505b509092509050811580610a65575060208151105b80610a8f575080601f81518110610a7e57610a7e612b19565b01602001516001600160f81b031916155b15610aa1576000945050505050610580565b509095945050505050565b600082815260208181526040808320546001600160401b03168352600180835281842086855290925282206060915b848111610bc25780851615801590610b0b575060008181526020839052604081208054610b0790612977565b9050115b15610bba5780826000838152602001908152602001600020808054610b2f90612977565b80601f0160208091040260200160405190810160405280929190818152602001828054610b5b90612977565b8015610ba85780601f10610b7d57610100808354040283529160200191610ba8565b820191906000526020600020905b815481529060010190602001808311610b8b57829003601f168201915b50505050509050935093505050610bdb565b60011b610adb565b5060006040518060200160405280600081525092509250505b9250929050565b82610bec816116e1565b610bf557600080fd5b60408051808201825284815260208082018581526000888152808352848120546001600160401b031681526009835284812089825283528490209251835551600190920191909155815185815290810184905285917f1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e4691015b60405180910390a250505050565b82610c86816116e1565b610c8f57600080fd5b600084815260208181526040808320546001600160401b03168352600382528083208784529091529020610cc48385836129ff565b50837fe379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d75788484604051610c6e929190612b2f565b80610d01816116e1565b610d0a57600080fd5b600082815260208190526040812080546001600160401b031691610d2d83612b43565b82546101009290920a6001600160401b03818102199093169183160217909155600084815260208181526040918290205491519190921681528492507fc6621ccb8f3f5a04bb6502154b2caf6adf5983fe76dfef1cfc9c42e3579db444910160405180910390a25050565b600080610da683603c6115f5565b90508051600003610dba5750600092915050565b610dc381611d21565b9392505050565b600083815260208181526040808320546001600160401b03168352600a825280832086845290915290819020905160609190610e099085908590612967565b90815260200160405180910390208054610e2290612977565b80601f0160208091040260200160405190810160405280929190818152602001828054610e4e90612977565b8015610e9b5780601f10610e7057610100808354040283529160200191610e9b565b820191906000526020600020905b815481529060010190602001808311610e7e57829003601f168201915b505050505090509392505050565b600081815260208181526040808320546001600160401b03168352600482528083208484529091529020805460609190610ee290612977565b80601f0160208091040260200160405190810160405280929190818152602001828054610f0e90612977565b8015610f5b5780601f10610f3057610100808354040283529160200191610f5b565b820191906000526020600020905b815481529060010190602001808311610f3e57829003601f168201915b50505050509050919050565b83610f71816116e1565b610f7a57600080fd5b83610f86600182612954565b1615610f9157600080fd5b600085815260208181526040808320546001600160401b031683526001825280832088845282528083208784529091529020610fce8385836129ff565b50604051849086907faa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe390600090a35050505050565b600081815260208181526040808320546001600160401b03168352600882528083208484529091529020805460609190610ee290612977565b82611046816116e1565b61104f57600080fd5b600084815260208181526040808320546001600160401b031683526008825280832087845290915290206110848385836129ff565b50837fb7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f78484604051610c6e929190612b2f565b826110c1816116e1565b6110ca57600080fd5b837f65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af75284846040516110fc9291906124c8565b60405180910390a2603c830361115357837f52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd261113784611d21565b6040516001600160a01b03909116815260200160405180910390a25b600084815260208181526040808320546001600160401b03168352600282528083208784528252808320868452909152902061118f8382612b69565b5050505050565b6001600160a01b03821633036112055760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084015b60405180910390fd5b336000818152600b602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6001600160a01b03821633036112c95760405162461bcd60e51b815260206004820181905260248201527f53657474696e672064656c65676174652073746174757320666f722073656c6660448201526064016111fc565b336000818152600c6020908152604080832087845282528083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519384529286917ff0ddb3b04746704017f9aa8bd728fcc2c1d11675041205350018915f5e4750a0910160405180910390a4505050565b600083815260208181526040808320546001600160401b03168352600582528083208684528252808320858452825280832061ffff851684529091529020805460609190610e2290612977565b6060610dc360008484611d40565b600081815260208181526040808320546001600160401b03168352600382528083208484529091529020805460609190610ee290612977565b826113dc816116e1565b6113e557600080fd5b600084815260208181526040808320546001600160401b0316808452600483528184208885529092528220805491929161141e90612977565b80601f016020809104026020016040519081016040528092919081815260200182805461144a90612977565b80156114975780601f1061146c57610100808354040283529160200191611497565b820191906000526020600020905b81548152906001019060200180831161147a57829003601f168201915b505050506001600160401b03841660009081526004602090815260408083208b845290915290209192506114ce90508587836129ff565b50857f8f15ed4b723ef428f250961da8315675b507046737e19319fc1a4d81bfe87f8582878760405161150393929190612c28565b60405180910390a2505050505050565b8161151d816116e1565b61152657600080fd5b61153583603c61038c85611f0f565b505050565b6060611547848484611d40565b949350505050565b82611559816116e1565b61156257600080fd5b600084815260208181526040808320546001600160401b031683526007825280832087845282528083206001600160e01b031987168085529083529281902080546001600160a01b0319166001600160a01b038716908117909155905190815286917f7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa910160405180910390a350505050565b600082815260208181526040808320546001600160401b03168352600282528083208584528252808320848452909152902080546060919061163690612977565b80601f016020809104026020016040519081016040528092919081815260200182805461166290612977565b80156116af5780601f10611684576101008083540402835291602001916116af565b820191906000526020600020905b81548152906001019060200180831161169257829003601f168201915b5050505050905092915050565b60006001600160e01b03198216631674750f60e21b1480610580575061058082611f3f565b6000336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614806117425750336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016145b1561174f57506001919050565b6040516302571be360e01b8152600481018390526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906302571be390602401602060405180830381865afa1580156117b7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117db9190612c58565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b0316036118a2576040516331a9108f60e11b8152600481018490527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690636352211e90602401602060405180830381865afa15801561187b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061189f9190612c58565b90505b6001600160a01b0381163314806118dc57506001600160a01b0381166000908152600b6020908152604080832033845290915290205460ff165b80610dc357506001600160a01b0381166000908152600c60209081526040808320868452825280832033845290915290205460ff16610dc3565b6119646040518060e001604052806060815260200160008152602001600061ffff168152602001600061ffff168152602001600063ffffffff16815260200160008152602001600081525090565b82815260c0810182905261058081611c39565b602081015181516060916105809161198f9082611f64565b84519190611fbe565b60a081015160c08201516060916105809161198f908290612954565b600081518351148015610dc35750610dc38360008460008751612034565b8651602088012060006119e6878787611fbe565b90508315611b0d576001600160401b03831660009081526005602090815260408083208d84528252808320858452825280832061ffff8c16845290915290208054611a3090612977565b159050611a8e576001600160401b03831660009081526006602090815260408083208d845282528083208584529091528120805461ffff1691611a7283612c75565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b03831660009081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091528120611ace91612297565b897f03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a12078a8a604051611b00929190612c93565b60405180910390a2610783565b6001600160401b03831660009081526005602090815260408083208d84528252808320858452825280832061ffff8c16845290915290208054611b4f90612977565b9050600003611baf576001600160401b03831660009081526006602090815260408083208d845282528083208584529091528120805461ffff1691611b9383612cb9565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b03831660009081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091529020611bf08282612b69565b50897f52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b8a8a84604051611c2593929190612cd0565b60405180910390a250505050505050505050565b60c08101516020820181905281515111611c505750565b6000611c6482600001518360200151611f64565b8260200151611c739190612cff565b8251909150611c829082612057565b61ffff166040830152611c96600282612cff565b8251909150611ca59082612057565b61ffff166060830152611cb9600282612cff565b8251909150611cc8908261207f565b63ffffffff166080830152611cde600482612cff565b8251909150600090611cf09083612057565b61ffff169050611d01600283612cff565b60a084018190529150611d148183612cff565b60c0909301929092525050565b60008151601414611d3157600080fd5b5060200151600160601b900490565b6060816001600160401b03811115611d5a57611d5a61258b565b604051908082528060200260200182016040528015611d8d57816020015b6060815260200190600190039081611d785790505b50905060005b82811015611f07578415611e4f576000848483818110611db557611db5612b19565b9050602002810190611dc79190612d12565b611dd691602491600491612d58565b611ddf91612d82565b9050858114611e4d5760405162461bcd60e51b815260206004820152603460248201527f6d756c746963616c6c3a20416c6c207265636f726473206d7573742068617665604482015273040c240dac2e8c6d0d2dcce40dcc2dacad0c2e6d60631b60648201526084016111fc565b505b60008030868685818110611e6557611e65612b19565b9050602002810190611e779190612d12565b604051611e85929190612967565b600060405180830381855af49150503d8060008114611ec0576040519150601f19603f3d011682016040523d82523d6000602084013e611ec5565b606091505b509150915081611ed457600080fd5b80848481518110611ee757611ee7612b19565b602002602001018190525050508080611eff90612da0565b915050611d93565b509392505050565b604080516014808252818301909252606091602082018180368337505050600160601b9290920260208301525090565b60006001600160e01b0319821663c869023360e01b14806105805750610580826120a9565b6000815b83518110611f7857611f78612db9565b6000611f8485836120ce565b60ff169050611f94816001612cff565b611f9e9083612cff565b915080600003611fae5750611fb4565b50611f68565b6115478382612954565b8251606090611fcd8385612cff565b1115611fd857600080fd5b6000826001600160401b03811115611ff257611ff261258b565b6040519080825280601f01601f19166020018201604052801561201c576020820181803683370190505b50905060208082019086860101610aa18282876120f2565b6000612041848484612148565b61204c878785612148565b149695505050505050565b8151600090612067836002612cff565b111561207257600080fd5b50016002015161ffff1690565b815160009061208f836004612cff565b111561209a57600080fd5b50016004015163ffffffff1690565b60006001600160e01b0319821663691f343160e01b148061058057506105808261216c565b60008282815181106120e2576120e2612b19565b016020015160f81c905092915050565b6020811061212a5781518352612109602084612cff565b9250612116602083612cff565b9150612123602082612954565b90506120f2565b905182516020929092036101000a6000190180199091169116179052565b82516000906121578385612cff565b111561216257600080fd5b5091016020012090565b60006001600160e01b031982166304928c6760e21b148061058057506105808260006001600160e01b0319821663547d2b4160e11b14806121bd57506001600160e01b03198216635c98042b60e01b145b8061058057506105808260006001600160e01b0319821663bc1c58d160e01b148061058057506105808260006001600160e01b03198216631d9dabef60e11b148061221857506001600160e01b031982166378e5bf0360e11b145b8061058057506105808260006001600160e01b03198216631101d5ab60e11b148061058057506105808260006001600160e01b0319821663d700ff3360e01b148061058057506105808260006001600160e01b03198216634fbf043360e01b148061058057506301ffc9a760e01b6001600160e01b0319831614610580565b5080546122a390612977565b6000825580601f106122b3575050565b601f0160209004906000526020600020908101906122d191906122d4565b50565b5b808211156122e957600081556001016122d5565b5090565b80356001600160e01b03198116811461230557600080fd5b919050565b60006020828403121561231c57600080fd5b610dc3826122ed565b60008083601f84011261233757600080fd5b5081356001600160401b0381111561234e57600080fd5b602083019150836020828501011115610bdb57600080fd5b60008060006040848603121561237b57600080fd5b8335925060208401356001600160401b0381111561239857600080fd5b6123a486828701612325565b9497909650939450505050565b6000806000806000606086880312156123c957600080fd5b8535945060208601356001600160401b03808211156123e757600080fd5b6123f389838a01612325565b9096509450604088013591508082111561240c57600080fd5b5061241988828901612325565b969995985093965092949392505050565b6000806040838503121561243d57600080fd5b8235915061244d602084016122ed565b90509250929050565b6000806040838503121561246957600080fd5b50508035926020909101359150565b60005b8381101561249357818101518382015260200161247b565b50506000910152565b600081518084526124b4816020860160208601612478565b601f01601f19169290920160200192915050565b828152604060208201526000611547604083018461249c565b6000806000606084860312156124f657600080fd5b505081359360208301359350604090920135919050565b60006020828403121561251f57600080fd5b5035919050565b602081526000610dc3602083018461249c565b6000806000806060858703121561254f57600080fd5b843593506020850135925060408501356001600160401b0381111561257357600080fd5b61257f87828801612325565b95989497509550505050565b634e487b7160e01b600052604160045260246000fd5b6000806000606084860312156125b657600080fd5b833592506020840135915060408401356001600160401b03808211156125db57600080fd5b818601915086601f8301126125ef57600080fd5b8135818111156126015761260161258b565b604051601f8201601f19908116603f011681019083821181831017156126295761262961258b565b8160405282815289602084870101111561264257600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6001600160a01b03811681146122d157600080fd5b8035801515811461230557600080fd5b6000806040838503121561269c57600080fd5b82356126a781612664565b915061244d60208401612679565b6000806000606084860312156126ca57600080fd5b8335925060208401356126dc81612664565b91506126ea60408501612679565b90509250925092565b60008060006060848603121561270857600080fd5b8335925060208401359150604084013561ffff8116811461272857600080fd5b809150509250925092565b60008060006060848603121561274857600080fd5b833561275381612664565b925060208401359150604084013561272881612664565b60008083601f84011261277c57600080fd5b5081356001600160401b0381111561279357600080fd5b6020830191508360208260051b8501011115610bdb57600080fd5b600080602083850312156127c157600080fd5b82356001600160401b038111156127d757600080fd5b6127e38582860161276a565b90969095509350505050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b8281101561284457603f1988860301845261283285835161249c565b94509285019290850190600101612816565b5092979650505050505050565b6000806040838503121561286457600080fd5b82359150602083013561287681612664565b809150509250929050565b60008060006040848603121561289657600080fd5b8335925060208401356001600160401b038111156128b357600080fd5b6123a48682870161276a565b6000806000606084860312156128d457600080fd5b833592506128e4602085016122ed565b9150604084013561272881612664565b6000806040838503121561290757600080fd5b823561291281612664565b9150602083013561287681612664565b60008251612934818460208701612478565b9190910192915050565b634e487b7160e01b600052601160045260246000fd5b818103818111156105805761058061293e565b8183823760009101908152919050565b600181811c9082168061298b57607f821691505b6020821081036129ab57634e487b7160e01b600052602260045260246000fd5b50919050565b601f82111561153557600081815260208120601f850160051c810160208610156129d85750805b601f850160051c820191505b818110156129f7578281556001016129e4565b505050505050565b6001600160401b03831115612a1657612a1661258b565b612a2a83612a248354612977565b836129b1565b6000601f841160018114612a5e5760008515612a465750838201355b600019600387901b1c1916600186901b17835561118f565b600083815260209020601f19861690835b82811015612a8f5786850135825560209485019460019092019101612a6f565b5086821015612aac5760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b604081526000612afb604083018688612abe565b8281036020840152612b0e818587612abe565b979650505050505050565b634e487b7160e01b600052603260045260246000fd5b602081526000611547602083018486612abe565b60006001600160401b03808316818103612b5f57612b5f61293e565b6001019392505050565b81516001600160401b03811115612b8257612b8261258b565b612b9681612b908454612977565b846129b1565b602080601f831160018114612bcb5760008415612bb35750858301515b600019600386901b1c1916600185901b1785556129f7565b600085815260208120601f198616915b82811015612bfa57888601518255948401946001909101908401612bdb565b5085821015612c185787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b604081526000612c3b604083018661249c565b8281036020840152612c4e818587612abe565b9695505050505050565b600060208284031215612c6a57600080fd5b8151610dc381612664565b600061ffff821680612c8957612c8961293e565b6000190192915050565b604081526000612ca6604083018561249c565b905061ffff831660208301529392505050565b600061ffff808316818103612b5f57612b5f61293e565b606081526000612ce3606083018661249c565b61ffff851660208401528281036040840152612c4e818561249c565b808201808211156105805761058061293e565b6000808335601e19843603018112612d2957600080fd5b8301803591506001600160401b03821115612d4357600080fd5b602001915036819003821315610bdb57600080fd5b60008085851115612d6857600080fd5b83861115612d7557600080fd5b5050820193919092039150565b8035602083101561058057600019602084900360031b1b1692915050565b600060018201612db257612db261293e565b5060010190565b634e487b7160e01b600052600160045260246000fdfea164736f6c6343000811000a", + "bytecode": "0x61010060405234801562000011575f80fd5b5060405162002ef638038062002ef6833981016040819052620000349162000172565b6040516302571be360e01b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26004820152849033905f906001600160a01b038416906302571be390602401602060405180830381865afa1580156200009d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620000c39190620001d7565b604051630f41a04d60e11b81526001600160a01b03848116600483015291925090821690631e83409a906024016020604051808303815f875af11580156200010d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620001339190620001fc565b5050506001600160a01b039485166080525091831660a052821660c0521660e05262000214565b6001600160a01b03811681146200016f575f80fd5b50565b5f805f806080858703121562000186575f80fd5b845162000193816200015a565b6020860151909450620001a6816200015a565b6040860151909350620001b9816200015a565b6060860151909250620001cc816200015a565b939692955090935050565b5f60208284031215620001e8575f80fd5b8151620001f5816200015a565b9392505050565b5f602082840312156200020d575f80fd5b5051919050565b60805160a05160c05160e051612ca76200024f5f395f6116c801525f61169601525f818161178401526117d101525f61170f0152612ca75ff3fe608060405234801561000f575f80fd5b50600436106101d1575f3560e01c80638b95dd71116100fe578063c86902331161009e578063e32954eb1161006e578063e32954eb146104f2578063e59d895d14610505578063e985e9c514610518578063f1cb7e0614610553575f80fd5b8063c869023314610435578063ce3decdc1461048c578063d5fa2b001461049f578063d700ff33146104b2575f80fd5b8063a8fa5682116100d9578063a8fa5682146103ac578063a9784b3e146103bf578063ac9650d814610402578063bc1c58d114610422575f80fd5b80638b95dd7114610373578063a22cb46514610386578063a4b91a0114610399575f80fd5b80633603d758116101745780635c98042b116101445780635c98042b14610327578063623195b01461033a578063691f34311461034d5780637737221314610360575f80fd5b80633603d758146102975780633b3b57de146102aa5780634cbf6ba4146102bd57806359d1d43c14610307575f80fd5b8063124a319c116101af578063124a319c146102255780632203ab561461025057806329cd62ea14610271578063304e6ade14610284575f80fd5b806301ffc9a7146101d55780630af179d7146101fd57806310f13a8c14610212575b5f80fd5b6101e86101e3366004612267565b610566565b60405190151581526020015b60405180910390f35b61021061020b3660046122bd565b610576565b005b610210610220366004612304565b610778565b610238610233366004612377565b610842565b6040516001600160a01b0390911681526020016101f4565b61026361025e3660046123a1565b610a87565b6040516101f492919061240e565b61021061027f366004612426565b610bb5565b6102106102923660046122bd565b610c4d565b6102106102a536600461244f565b610cc6565b6102386102b836600461244f565b610d64565b6101e86102cb3660046123a1565b5f82815260208181526040808320546001600160401b031683526006825280832094835293815283822092825291909152205461ffff16151590565b61031a6103153660046122bd565b610d93565b6040516101f49190612466565b61031a61033536600461244f565b610e6f565b610210610348366004612478565b610f2a565b61031a61035b36600461244f565b610fc2565b61021061036e3660046122bd565b610ffa565b6102106103813660046124da565b611073565b6102106103943660046125b9565b611150565b6102106103a73660046125e3565b61122a565b61031a6103ba36600461261e565b6112f6565b6101e86103cd36600461265a565b6001600160a01b039283165f908152600c60209081526040808320948352938152838220929094168152925290205460ff1690565b6104156104103660046126ce565b611342565b6040516101f4919061270c565b61031a61043036600461244f565b61134f565b61047761044336600461244f565b5f81815260208181526040808320546001600160401b03168352600982528083209383529290522080546001909101549091565b604080519283526020830191909152016101f4565b61021061049a3660046122bd565b611387565b6102106104ad36600461276e565b6114c3565b6104da6104c036600461244f565b5f602081905290815260409020546001600160401b031681565b6040516001600160401b0390911681526020016101f4565b61041561050036600461279c565b6114e9565b6102106105133660046127d6565b6114fe565b6101e8610526366004612808565b6001600160a01b039182165f908152600b6020908152604080832093909416825291909152205460ff1690565b61031a6105613660046123a1565b6115a2565b5f61057082611666565b92915050565b826105808161168a565b610588575f80fd5b5f84815260208181526040808320548151601f87018490048402810184019092528582528392606092839285926001600160401b039091169183916105eb9183918d908d90819084018382808284375f9201919091525092939250506118b79050565b90505b80515160208201511015610712578661ffff165f03610652578060400151965061061781611912565b94508460405160200161062a9190612834565b60405160208183030381529060405280519060200120925061064b81611933565b9350610704565b5f61065c82611912565b9050816040015161ffff168861ffff16141580610680575061067e868261194f565b155b15610702576106db8c878a8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250505060208801518d91506106d2908290612863565b8b51158a61196a565b8160400151975081602001519650809550858051906020012093506106ff82611933565b94505b505b61070d81611bc9565b6105ee565b5083511561076c5761076c8a85888c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c925061076391508290508f612863565b8951158861196a565b50505050505050505050565b846107828161168a565b61078a575f80fd5b5f86815260208181526040808320546001600160401b03168352600a8252808320898452909152908190209051849184916107c89089908990612876565b908152602001604051809103902091826107e3929190612901565b5084846040516107f4929190612876565b6040518091039020867f448bc014f1536726cf8d54ff3d6481ed3cbc683c2591ca204274009afa09b1a18787878760405161083294939291906129e2565b60405180910390a3505050505050565b5f82815260208181526040808320546001600160401b031683526007825280832085845282528083206001600160e01b0319851684529091528120546001600160a01b03168015610894579050610570565b5f61089e85610d64565b90506001600160a01b0381166108b8575f92505050610570565b6040516301ffc9a760e01b60248201525f9081906001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b1790525161090f9190612834565b5f60405180830381855afa9150503d805f8114610947576040519150601f19603f3d011682016040523d82523d5f602084013e61094c565b606091505b509150915081158061095f575060208151105b80610989575080601f8151811061097857610978612a13565b01602001516001600160f81b031916155b1561099a575f945050505050610570565b6040516001600160e01b0319871660248201526001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b179052516109f09190612834565b5f60405180830381855afa9150503d805f8114610a28576040519150601f19603f3d011682016040523d82523d5f602084013e610a2d565b606091505b509092509050811580610a41575060208151105b80610a6b575080601f81518110610a5a57610a5a612a13565b01602001516001600160f81b031916155b15610a7c575f945050505050610570565b509095945050505050565b5f82815260208181526040808320546001600160401b03168352600180835281842086855290925282206060915b848111610b975780851615801590610ae457505f8181526020839052604081208054610ae090612885565b9050115b15610b8f5780825f8381526020019081526020015f20808054610b0690612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610b3290612885565b8015610b7d5780601f10610b5457610100808354040283529160200191610b7d565b820191905f5260205f20905b815481529060010190602001808311610b6057829003601f168201915b50505050509050935093505050610bae565b60011b610ab5565b505f60405180602001604052805f81525092509250505b9250929050565b82610bbf8161168a565b610bc7575f80fd5b60408051808201825284815260208082018581525f888152808352848120546001600160401b031681526009835284812089825283528490209251835551600190920191909155815185815290810184905285917f1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e4691015b60405180910390a250505050565b82610c578161168a565b610c5f575f80fd5b5f84815260208181526040808320546001600160401b03168352600382528083208784529091529020610c93838583612901565b50837fe379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d75788484604051610c3f929190612a27565b80610cd08161168a565b610cd8575f80fd5b5f82815260208190526040812080546001600160401b031691610cfa83612a3a565b82546101009290920a6001600160401b038181021990931691831602179091555f84815260208181526040918290205491519190921681528492507fc6621ccb8f3f5a04bb6502154b2caf6adf5983fe76dfef1cfc9c42e3579db444910160405180910390a25050565b5f80610d7183603c6115a2565b905080515f03610d8357505f92915050565b610d8c81611cae565b9392505050565b5f83815260208181526040808320546001600160401b03168352600a825280832086845290915290819020905160609190610dd19085908590612876565b90815260200160405180910390208054610dea90612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610e1690612885565b8015610e615780601f10610e3857610100808354040283529160200191610e61565b820191905f5260205f20905b815481529060010190602001808311610e4457829003601f168201915b505050505090509392505050565b5f81815260208181526040808320546001600160401b03168352600482528083208484529091529020805460609190610ea790612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610ed390612885565b8015610f1e5780601f10610ef557610100808354040283529160200191610f1e565b820191905f5260205f20905b815481529060010190602001808311610f0157829003601f168201915b50505050509050919050565b83610f348161168a565b610f3c575f80fd5b83610f48600182612863565b1615610f52575f80fd5b5f85815260208181526040808320546001600160401b031683526001825280832088845282528083208784529091529020610f8e838583612901565b50604051849086907faa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe3905f90a35050505050565b5f81815260208181526040808320546001600160401b03168352600882528083208484529091529020805460609190610ea790612885565b826110048161168a565b61100c575f80fd5b5f84815260208181526040808320546001600160401b03168352600882528083208784529091529020611040838583612901565b50837fb7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f78484604051610c3f929190612a27565b8261107d8161168a565b611085575f80fd5b837f65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af75284846040516110b792919061240e565b60405180910390a2603c830361110e57837f52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd26110f284611cae565b6040516001600160a01b03909116815260200160405180910390a25b5f84815260208181526040808320546001600160401b0316835260028252808320878452825280832086845290915290206111498382612a5f565b5050505050565b6001600160a01b03821633036111bf5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084015b60405180910390fd5b335f818152600b602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6001600160a01b03821633036112825760405162461bcd60e51b815260206004820181905260248201527f53657474696e672064656c65676174652073746174757320666f722073656c6660448201526064016111b6565b335f818152600c6020908152604080832087845282528083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519384529286917ff0ddb3b04746704017f9aa8bd728fcc2c1d11675041205350018915f5e4750a0910160405180910390a4505050565b5f83815260208181526040808320546001600160401b03168352600582528083208684528252808320858452825280832061ffff851684529091529020805460609190610dea90612885565b6060610d8c5f8484611ccb565b5f81815260208181526040808320546001600160401b03168352600382528083208484529091529020805460609190610ea790612885565b826113918161168a565b611399575f80fd5b5f84815260208181526040808320546001600160401b031680845260048352818420888552909252822080549192916113d190612885565b80601f01602080910402602001604051908101604052809291908181526020018280546113fd90612885565b80156114485780601f1061141f57610100808354040283529160200191611448565b820191905f5260205f20905b81548152906001019060200180831161142b57829003601f168201915b505050506001600160401b0384165f9081526004602090815260408083208b8452909152902091925061147e9050858783612901565b50857f8f15ed4b723ef428f250961da8315675b507046737e19319fc1a4d81bfe87f858287876040516114b393929190612b1e565b60405180910390a2505050505050565b816114cd8161168a565b6114d5575f80fd5b6114e483603c61038185611e88565b505050565b60606114f6848484611ccb565b949350505050565b826115088161168a565b611510575f80fd5b5f84815260208181526040808320546001600160401b031683526007825280832087845282528083206001600160e01b031987168085529083529281902080546001600160a01b0319166001600160a01b038716908117909155905190815286917f7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa910160405180910390a350505050565b5f82815260208181526040808320546001600160401b0316835260028252808320858452825280832084845290915290208054606091906115e290612885565b80601f016020809104026020016040519081016040528092919081815260200182805461160e90612885565b80156116595780601f1061163057610100808354040283529160200191611659565b820191905f5260205f20905b81548152906001019060200180831161163c57829003601f168201915b5050505050905092915050565b5f6001600160e01b03198216631674750f60e21b1480610570575061057082611eb8565b5f336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614806116ea5750336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016145b156116f757506001919050565b6040516302571be360e01b8152600481018390525f907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906302571be390602401602060405180830381865afa15801561175c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117809190612b4d565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031603611845576040516331a9108f60e11b8152600481018490527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690636352211e90602401602060405180830381865afa15801561181e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118429190612b4d565b90505b6001600160a01b03811633148061187e57506001600160a01b0381165f908152600b6020908152604080832033845290915290205460ff165b80610d8c57506001600160a01b0381165f908152600c60209081526040808320868452825280832033845290915290205460ff16610d8c565b6118ff6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261057081611bc9565b602081015181516060916105709161192a9082611edc565b84519190611f33565b60a081015160c08201516060916105709161192a908290612863565b5f81518351148015610d8c5750610d8c835f845f8751611fa7565b865160208801205f61197d878787611f33565b90508315611aa1576001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c168452909152902080546119c690612885565b159050611a23576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611a0783612b68565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091528120611a62916121f9565b897f03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a12078a8a604051611a94929190612b84565b60405180910390a261076c565b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c16845290915290208054611ae290612885565b90505f03611b40576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611b2483612ba9565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091529020611b808282612a5f565b50897f52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b8a8a84604051611bb593929190612bbf565b60405180910390a250505050505050505050565b60c08101516020820181905281515111611be05750565b5f611bf2825f01518360200151611edc565b8260200151611c019190612bed565b8251909150611c109082611fc9565b61ffff166040830152611c24600282612bed565b8251909150611c339082611fc9565b61ffff166060830152611c47600282612bed565b8251909150611c569082611fef565b63ffffffff166080830152611c6c600482612bed565b82519091505f90611c7d9083611fc9565b61ffff169050611c8e600283612bed565b60a084018190529150611ca18183612bed565b60c0909301929092525050565b5f8151601414611cbc575f80fd5b5060200151600160601b900490565b6060816001600160401b03811115611ce557611ce56124c6565b604051908082528060200260200182016040528015611d1857816020015b6060815260200190600190039081611d035790505b5090505f5b82811015611e80578415611dd8575f848483818110611d3e57611d3e612a13565b9050602002810190611d509190612c00565b611d5f91602491600491612c42565b611d6891612c69565b9050858114611dd65760405162461bcd60e51b815260206004820152603460248201527f6d756c746963616c6c3a20416c6c207265636f726473206d7573742068617665604482015273040c240dac2e8c6d0d2dcce40dcc2dacad0c2e6d60631b60648201526084016111b6565b505b5f8030868685818110611ded57611ded612a13565b9050602002810190611dff9190612c00565b604051611e0d929190612876565b5f60405180830381855af49150503d805f8114611e45576040519150601f19603f3d011682016040523d82523d5f602084013e611e4a565b606091505b509150915081611e58575f80fd5b80848481518110611e6b57611e6b612a13565b60209081029190910101525050600101611d1d565b509392505050565b604080516014808252818301909252606091602082018180368337505050600160601b9290920260208301525090565b5f6001600160e01b0319821663c869023360e01b1480610570575061057082612017565b5f815b83518110611eef57611eef612c86565b5f611efa858361203b565b60ff169050611f0a816001612bed565b611f149083612bed565b9150805f03611f235750611f29565b50611edf565b6114f68382612863565b8251606090611f428385612bed565b1115611f4c575f80fd5b5f826001600160401b03811115611f6557611f656124c6565b6040519080825280601f01601f191660200182016040528015611f8f576020820181803683370190505b50905060208082019086860101610a7c82828761205e565b5f611fb38484846120b3565b611fbe8787856120b3565b149695505050505050565b81515f90611fd8836002612bed565b1115611fe2575f80fd5b50016002015161ffff1690565b81515f90611ffe836004612bed565b1115612008575f80fd5b50016004015163ffffffff1690565b5f6001600160e01b0319821663691f343160e01b14806105705750610570826120d5565b5f82828151811061204e5761204e612a13565b016020015160f81c905092915050565b602081106120965781518352612075602084612bed565b9250612082602083612bed565b915061208f602082612863565b905061205e565b905182516020929092036101000a5f190180199091169116179052565b82515f906120c18385612bed565b11156120cb575f80fd5b5091016020012090565b5f6001600160e01b031982166304928c6760e21b14806105705750610570825f6001600160e01b0319821663547d2b4160e11b148061212457506001600160e01b03198216635c98042b60e01b145b806105705750610570825f6001600160e01b0319821663bc1c58d160e01b14806105705750610570825f6001600160e01b03198216631d9dabef60e11b148061217d57506001600160e01b031982166378e5bf0360e11b145b806105705750610570825f6001600160e01b03198216631101d5ab60e11b14806105705750610570825f6001600160e01b0319821663d700ff3360e01b14806105705750610570825f6001600160e01b03198216634fbf043360e01b148061057057506301ffc9a760e01b6001600160e01b0319831614610570565b50805461220590612885565b5f825580601f10612214575050565b601f0160209004905f5260205f20908101906122309190612233565b50565b5b80821115612247575f8155600101612234565b5090565b80356001600160e01b031981168114612262575f80fd5b919050565b5f60208284031215612277575f80fd5b610d8c8261224b565b5f8083601f840112612290575f80fd5b5081356001600160401b038111156122a6575f80fd5b602083019150836020828501011115610bae575f80fd5b5f805f604084860312156122cf575f80fd5b8335925060208401356001600160401b038111156122eb575f80fd5b6122f786828701612280565b9497909650939450505050565b5f805f805f60608688031215612318575f80fd5b8535945060208601356001600160401b0380821115612335575f80fd5b61234189838a01612280565b90965094506040880135915080821115612359575f80fd5b5061236688828901612280565b969995985093965092949392505050565b5f8060408385031215612388575f80fd5b823591506123986020840161224b565b90509250929050565b5f80604083850312156123b2575f80fd5b50508035926020909101359150565b5f5b838110156123db5781810151838201526020016123c3565b50505f910152565b5f81518084526123fa8160208601602086016123c1565b601f01601f19169290920160200192915050565b828152604060208201525f6114f660408301846123e3565b5f805f60608486031215612438575f80fd5b505081359360208301359350604090920135919050565b5f6020828403121561245f575f80fd5b5035919050565b602081525f610d8c60208301846123e3565b5f805f806060858703121561248b575f80fd5b843593506020850135925060408501356001600160401b038111156124ae575f80fd5b6124ba87828801612280565b95989497509550505050565b634e487b7160e01b5f52604160045260245ffd5b5f805f606084860312156124ec575f80fd5b833592506020840135915060408401356001600160401b0380821115612510575f80fd5b818601915086601f830112612523575f80fd5b813581811115612535576125356124c6565b604051601f8201601f19908116603f0116810190838211818310171561255d5761255d6124c6565b81604052828152896020848701011115612575575f80fd5b826020860160208301375f6020848301015280955050505050509250925092565b6001600160a01b0381168114612230575f80fd5b80358015158114612262575f80fd5b5f80604083850312156125ca575f80fd5b82356125d581612596565b9150612398602084016125aa565b5f805f606084860312156125f5575f80fd5b83359250602084013561260781612596565b9150612615604085016125aa565b90509250925092565b5f805f60608486031215612630575f80fd5b8335925060208401359150604084013561ffff8116811461264f575f80fd5b809150509250925092565b5f805f6060848603121561266c575f80fd5b833561267781612596565b925060208401359150604084013561264f81612596565b5f8083601f84011261269e575f80fd5b5081356001600160401b038111156126b4575f80fd5b6020830191508360208260051b8501011115610bae575f80fd5b5f80602083850312156126df575f80fd5b82356001600160401b038111156126f4575f80fd5b6127008582860161268e565b90969095509350505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b8281101561276157603f1988860301845261274f8583516123e3565b94509285019290850190600101612733565b5092979650505050505050565b5f806040838503121561277f575f80fd5b82359150602083013561279181612596565b809150509250929050565b5f805f604084860312156127ae575f80fd5b8335925060208401356001600160401b038111156127ca575f80fd5b6122f78682870161268e565b5f805f606084860312156127e8575f80fd5b833592506127f86020850161224b565b9150604084013561264f81612596565b5f8060408385031215612819575f80fd5b823561282481612596565b9150602083013561279181612596565b5f82516128458184602087016123c1565b9190910192915050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156105705761057061284f565b818382375f9101908152919050565b600181811c9082168061289957607f821691505b6020821081036128b757634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156114e457805f5260205f20601f840160051c810160208510156128e25750805b601f840160051c820191505b81811015611149575f81556001016128ee565b6001600160401b03831115612918576129186124c6565b61292c836129268354612885565b836128bd565b5f601f84116001811461295d575f85156129465750838201355b5f19600387901b1c1916600186901b178355611149565b5f83815260208120601f198716915b8281101561298c578685013582556020948501946001909201910161296c565b50868210156129a8575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b604081525f6129f56040830186886129ba565b8281036020840152612a088185876129ba565b979650505050505050565b634e487b7160e01b5f52603260045260245ffd5b602081525f6114f66020830184866129ba565b5f6001600160401b03808316818103612a5557612a5561284f565b6001019392505050565b81516001600160401b03811115612a7857612a786124c6565b612a8c81612a868454612885565b846128bd565b602080601f831160018114612abf575f8415612aa85750858301515b5f19600386901b1c1916600185901b178555612b16565b5f85815260208120601f198616915b82811015612aed57888601518255948401946001909101908401612ace565b5085821015612b0a57878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b604081525f612b3060408301866123e3565b8281036020840152612b438185876129ba565b9695505050505050565b5f60208284031215612b5d575f80fd5b8151610d8c81612596565b5f61ffff821680612b7b57612b7b61284f565b5f190192915050565b604081525f612b9660408301856123e3565b905061ffff831660208301529392505050565b5f61ffff808316818103612a5557612a5561284f565b606081525f612bd160608301866123e3565b61ffff851660208401528281036040840152612b4381856123e3565b808201808211156105705761057061284f565b5f808335601e19843603018112612c15575f80fd5b8301803591506001600160401b03821115612c2e575f80fd5b602001915036819003821315610bae575f80fd5b5f8085851115612c50575f80fd5b83861115612c5c575f80fd5b5050820193919092039150565b80356020831015610570575f19602084900360031b1b1692915050565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a", + "deployedBytecode": "0x608060405234801561000f575f80fd5b50600436106101d1575f3560e01c80638b95dd71116100fe578063c86902331161009e578063e32954eb1161006e578063e32954eb146104f2578063e59d895d14610505578063e985e9c514610518578063f1cb7e0614610553575f80fd5b8063c869023314610435578063ce3decdc1461048c578063d5fa2b001461049f578063d700ff33146104b2575f80fd5b8063a8fa5682116100d9578063a8fa5682146103ac578063a9784b3e146103bf578063ac9650d814610402578063bc1c58d114610422575f80fd5b80638b95dd7114610373578063a22cb46514610386578063a4b91a0114610399575f80fd5b80633603d758116101745780635c98042b116101445780635c98042b14610327578063623195b01461033a578063691f34311461034d5780637737221314610360575f80fd5b80633603d758146102975780633b3b57de146102aa5780634cbf6ba4146102bd57806359d1d43c14610307575f80fd5b8063124a319c116101af578063124a319c146102255780632203ab561461025057806329cd62ea14610271578063304e6ade14610284575f80fd5b806301ffc9a7146101d55780630af179d7146101fd57806310f13a8c14610212575b5f80fd5b6101e86101e3366004612267565b610566565b60405190151581526020015b60405180910390f35b61021061020b3660046122bd565b610576565b005b610210610220366004612304565b610778565b610238610233366004612377565b610842565b6040516001600160a01b0390911681526020016101f4565b61026361025e3660046123a1565b610a87565b6040516101f492919061240e565b61021061027f366004612426565b610bb5565b6102106102923660046122bd565b610c4d565b6102106102a536600461244f565b610cc6565b6102386102b836600461244f565b610d64565b6101e86102cb3660046123a1565b5f82815260208181526040808320546001600160401b031683526006825280832094835293815283822092825291909152205461ffff16151590565b61031a6103153660046122bd565b610d93565b6040516101f49190612466565b61031a61033536600461244f565b610e6f565b610210610348366004612478565b610f2a565b61031a61035b36600461244f565b610fc2565b61021061036e3660046122bd565b610ffa565b6102106103813660046124da565b611073565b6102106103943660046125b9565b611150565b6102106103a73660046125e3565b61122a565b61031a6103ba36600461261e565b6112f6565b6101e86103cd36600461265a565b6001600160a01b039283165f908152600c60209081526040808320948352938152838220929094168152925290205460ff1690565b6104156104103660046126ce565b611342565b6040516101f4919061270c565b61031a61043036600461244f565b61134f565b61047761044336600461244f565b5f81815260208181526040808320546001600160401b03168352600982528083209383529290522080546001909101549091565b604080519283526020830191909152016101f4565b61021061049a3660046122bd565b611387565b6102106104ad36600461276e565b6114c3565b6104da6104c036600461244f565b5f602081905290815260409020546001600160401b031681565b6040516001600160401b0390911681526020016101f4565b61041561050036600461279c565b6114e9565b6102106105133660046127d6565b6114fe565b6101e8610526366004612808565b6001600160a01b039182165f908152600b6020908152604080832093909416825291909152205460ff1690565b61031a6105613660046123a1565b6115a2565b5f61057082611666565b92915050565b826105808161168a565b610588575f80fd5b5f84815260208181526040808320548151601f87018490048402810184019092528582528392606092839285926001600160401b039091169183916105eb9183918d908d90819084018382808284375f9201919091525092939250506118b79050565b90505b80515160208201511015610712578661ffff165f03610652578060400151965061061781611912565b94508460405160200161062a9190612834565b60405160208183030381529060405280519060200120925061064b81611933565b9350610704565b5f61065c82611912565b9050816040015161ffff168861ffff16141580610680575061067e868261194f565b155b15610702576106db8c878a8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250505060208801518d91506106d2908290612863565b8b51158a61196a565b8160400151975081602001519650809550858051906020012093506106ff82611933565b94505b505b61070d81611bc9565b6105ee565b5083511561076c5761076c8a85888c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c925061076391508290508f612863565b8951158861196a565b50505050505050505050565b846107828161168a565b61078a575f80fd5b5f86815260208181526040808320546001600160401b03168352600a8252808320898452909152908190209051849184916107c89089908990612876565b908152602001604051809103902091826107e3929190612901565b5084846040516107f4929190612876565b6040518091039020867f448bc014f1536726cf8d54ff3d6481ed3cbc683c2591ca204274009afa09b1a18787878760405161083294939291906129e2565b60405180910390a3505050505050565b5f82815260208181526040808320546001600160401b031683526007825280832085845282528083206001600160e01b0319851684529091528120546001600160a01b03168015610894579050610570565b5f61089e85610d64565b90506001600160a01b0381166108b8575f92505050610570565b6040516301ffc9a760e01b60248201525f9081906001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b1790525161090f9190612834565b5f60405180830381855afa9150503d805f8114610947576040519150601f19603f3d011682016040523d82523d5f602084013e61094c565b606091505b509150915081158061095f575060208151105b80610989575080601f8151811061097857610978612a13565b01602001516001600160f81b031916155b1561099a575f945050505050610570565b6040516001600160e01b0319871660248201526001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b179052516109f09190612834565b5f60405180830381855afa9150503d805f8114610a28576040519150601f19603f3d011682016040523d82523d5f602084013e610a2d565b606091505b509092509050811580610a41575060208151105b80610a6b575080601f81518110610a5a57610a5a612a13565b01602001516001600160f81b031916155b15610a7c575f945050505050610570565b509095945050505050565b5f82815260208181526040808320546001600160401b03168352600180835281842086855290925282206060915b848111610b975780851615801590610ae457505f8181526020839052604081208054610ae090612885565b9050115b15610b8f5780825f8381526020019081526020015f20808054610b0690612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610b3290612885565b8015610b7d5780601f10610b5457610100808354040283529160200191610b7d565b820191905f5260205f20905b815481529060010190602001808311610b6057829003601f168201915b50505050509050935093505050610bae565b60011b610ab5565b505f60405180602001604052805f81525092509250505b9250929050565b82610bbf8161168a565b610bc7575f80fd5b60408051808201825284815260208082018581525f888152808352848120546001600160401b031681526009835284812089825283528490209251835551600190920191909155815185815290810184905285917f1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e4691015b60405180910390a250505050565b82610c578161168a565b610c5f575f80fd5b5f84815260208181526040808320546001600160401b03168352600382528083208784529091529020610c93838583612901565b50837fe379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d75788484604051610c3f929190612a27565b80610cd08161168a565b610cd8575f80fd5b5f82815260208190526040812080546001600160401b031691610cfa83612a3a565b82546101009290920a6001600160401b038181021990931691831602179091555f84815260208181526040918290205491519190921681528492507fc6621ccb8f3f5a04bb6502154b2caf6adf5983fe76dfef1cfc9c42e3579db444910160405180910390a25050565b5f80610d7183603c6115a2565b905080515f03610d8357505f92915050565b610d8c81611cae565b9392505050565b5f83815260208181526040808320546001600160401b03168352600a825280832086845290915290819020905160609190610dd19085908590612876565b90815260200160405180910390208054610dea90612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610e1690612885565b8015610e615780601f10610e3857610100808354040283529160200191610e61565b820191905f5260205f20905b815481529060010190602001808311610e4457829003601f168201915b505050505090509392505050565b5f81815260208181526040808320546001600160401b03168352600482528083208484529091529020805460609190610ea790612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610ed390612885565b8015610f1e5780601f10610ef557610100808354040283529160200191610f1e565b820191905f5260205f20905b815481529060010190602001808311610f0157829003601f168201915b50505050509050919050565b83610f348161168a565b610f3c575f80fd5b83610f48600182612863565b1615610f52575f80fd5b5f85815260208181526040808320546001600160401b031683526001825280832088845282528083208784529091529020610f8e838583612901565b50604051849086907faa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe3905f90a35050505050565b5f81815260208181526040808320546001600160401b03168352600882528083208484529091529020805460609190610ea790612885565b826110048161168a565b61100c575f80fd5b5f84815260208181526040808320546001600160401b03168352600882528083208784529091529020611040838583612901565b50837fb7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f78484604051610c3f929190612a27565b8261107d8161168a565b611085575f80fd5b837f65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af75284846040516110b792919061240e565b60405180910390a2603c830361110e57837f52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd26110f284611cae565b6040516001600160a01b03909116815260200160405180910390a25b5f84815260208181526040808320546001600160401b0316835260028252808320878452825280832086845290915290206111498382612a5f565b5050505050565b6001600160a01b03821633036111bf5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084015b60405180910390fd5b335f818152600b602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6001600160a01b03821633036112825760405162461bcd60e51b815260206004820181905260248201527f53657474696e672064656c65676174652073746174757320666f722073656c6660448201526064016111b6565b335f818152600c6020908152604080832087845282528083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519384529286917ff0ddb3b04746704017f9aa8bd728fcc2c1d11675041205350018915f5e4750a0910160405180910390a4505050565b5f83815260208181526040808320546001600160401b03168352600582528083208684528252808320858452825280832061ffff851684529091529020805460609190610dea90612885565b6060610d8c5f8484611ccb565b5f81815260208181526040808320546001600160401b03168352600382528083208484529091529020805460609190610ea790612885565b826113918161168a565b611399575f80fd5b5f84815260208181526040808320546001600160401b031680845260048352818420888552909252822080549192916113d190612885565b80601f01602080910402602001604051908101604052809291908181526020018280546113fd90612885565b80156114485780601f1061141f57610100808354040283529160200191611448565b820191905f5260205f20905b81548152906001019060200180831161142b57829003601f168201915b505050506001600160401b0384165f9081526004602090815260408083208b8452909152902091925061147e9050858783612901565b50857f8f15ed4b723ef428f250961da8315675b507046737e19319fc1a4d81bfe87f858287876040516114b393929190612b1e565b60405180910390a2505050505050565b816114cd8161168a565b6114d5575f80fd5b6114e483603c61038185611e88565b505050565b60606114f6848484611ccb565b949350505050565b826115088161168a565b611510575f80fd5b5f84815260208181526040808320546001600160401b031683526007825280832087845282528083206001600160e01b031987168085529083529281902080546001600160a01b0319166001600160a01b038716908117909155905190815286917f7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa910160405180910390a350505050565b5f82815260208181526040808320546001600160401b0316835260028252808320858452825280832084845290915290208054606091906115e290612885565b80601f016020809104026020016040519081016040528092919081815260200182805461160e90612885565b80156116595780601f1061163057610100808354040283529160200191611659565b820191905f5260205f20905b81548152906001019060200180831161163c57829003601f168201915b5050505050905092915050565b5f6001600160e01b03198216631674750f60e21b1480610570575061057082611eb8565b5f336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614806116ea5750336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016145b156116f757506001919050565b6040516302571be360e01b8152600481018390525f907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906302571be390602401602060405180830381865afa15801561175c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117809190612b4d565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b031603611845576040516331a9108f60e11b8152600481018490527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690636352211e90602401602060405180830381865afa15801561181e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118429190612b4d565b90505b6001600160a01b03811633148061187e57506001600160a01b0381165f908152600b6020908152604080832033845290915290205460ff165b80610d8c57506001600160a01b0381165f908152600c60209081526040808320868452825280832033845290915290205460ff16610d8c565b6118ff6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261057081611bc9565b602081015181516060916105709161192a9082611edc565b84519190611f33565b60a081015160c08201516060916105709161192a908290612863565b5f81518351148015610d8c5750610d8c835f845f8751611fa7565b865160208801205f61197d878787611f33565b90508315611aa1576001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c168452909152902080546119c690612885565b159050611a23576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611a0783612b68565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091528120611a62916121f9565b897f03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a12078a8a604051611a94929190612b84565b60405180910390a261076c565b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c16845290915290208054611ae290612885565b90505f03611b40576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611b2483612ba9565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091529020611b808282612a5f565b50897f52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b8a8a84604051611bb593929190612bbf565b60405180910390a250505050505050505050565b60c08101516020820181905281515111611be05750565b5f611bf2825f01518360200151611edc565b8260200151611c019190612bed565b8251909150611c109082611fc9565b61ffff166040830152611c24600282612bed565b8251909150611c339082611fc9565b61ffff166060830152611c47600282612bed565b8251909150611c569082611fef565b63ffffffff166080830152611c6c600482612bed565b82519091505f90611c7d9083611fc9565b61ffff169050611c8e600283612bed565b60a084018190529150611ca18183612bed565b60c0909301929092525050565b5f8151601414611cbc575f80fd5b5060200151600160601b900490565b6060816001600160401b03811115611ce557611ce56124c6565b604051908082528060200260200182016040528015611d1857816020015b6060815260200190600190039081611d035790505b5090505f5b82811015611e80578415611dd8575f848483818110611d3e57611d3e612a13565b9050602002810190611d509190612c00565b611d5f91602491600491612c42565b611d6891612c69565b9050858114611dd65760405162461bcd60e51b815260206004820152603460248201527f6d756c746963616c6c3a20416c6c207265636f726473206d7573742068617665604482015273040c240dac2e8c6d0d2dcce40dcc2dacad0c2e6d60631b60648201526084016111b6565b505b5f8030868685818110611ded57611ded612a13565b9050602002810190611dff9190612c00565b604051611e0d929190612876565b5f60405180830381855af49150503d805f8114611e45576040519150601f19603f3d011682016040523d82523d5f602084013e611e4a565b606091505b509150915081611e58575f80fd5b80848481518110611e6b57611e6b612a13565b60209081029190910101525050600101611d1d565b509392505050565b604080516014808252818301909252606091602082018180368337505050600160601b9290920260208301525090565b5f6001600160e01b0319821663c869023360e01b1480610570575061057082612017565b5f815b83518110611eef57611eef612c86565b5f611efa858361203b565b60ff169050611f0a816001612bed565b611f149083612bed565b9150805f03611f235750611f29565b50611edf565b6114f68382612863565b8251606090611f428385612bed565b1115611f4c575f80fd5b5f826001600160401b03811115611f6557611f656124c6565b6040519080825280601f01601f191660200182016040528015611f8f576020820181803683370190505b50905060208082019086860101610a7c82828761205e565b5f611fb38484846120b3565b611fbe8787856120b3565b149695505050505050565b81515f90611fd8836002612bed565b1115611fe2575f80fd5b50016002015161ffff1690565b81515f90611ffe836004612bed565b1115612008575f80fd5b50016004015163ffffffff1690565b5f6001600160e01b0319821663691f343160e01b14806105705750610570826120d5565b5f82828151811061204e5761204e612a13565b016020015160f81c905092915050565b602081106120965781518352612075602084612bed565b9250612082602083612bed565b915061208f602082612863565b905061205e565b905182516020929092036101000a5f190180199091169116179052565b82515f906120c18385612bed565b11156120cb575f80fd5b5091016020012090565b5f6001600160e01b031982166304928c6760e21b14806105705750610570825f6001600160e01b0319821663547d2b4160e11b148061212457506001600160e01b03198216635c98042b60e01b145b806105705750610570825f6001600160e01b0319821663bc1c58d160e01b14806105705750610570825f6001600160e01b03198216631d9dabef60e11b148061217d57506001600160e01b031982166378e5bf0360e11b145b806105705750610570825f6001600160e01b03198216631101d5ab60e11b14806105705750610570825f6001600160e01b0319821663d700ff3360e01b14806105705750610570825f6001600160e01b03198216634fbf043360e01b148061057057506301ffc9a760e01b6001600160e01b0319831614610570565b50805461220590612885565b5f825580601f10612214575050565b601f0160209004905f5260205f20908101906122309190612233565b50565b5b80821115612247575f8155600101612234565b5090565b80356001600160e01b031981168114612262575f80fd5b919050565b5f60208284031215612277575f80fd5b610d8c8261224b565b5f8083601f840112612290575f80fd5b5081356001600160401b038111156122a6575f80fd5b602083019150836020828501011115610bae575f80fd5b5f805f604084860312156122cf575f80fd5b8335925060208401356001600160401b038111156122eb575f80fd5b6122f786828701612280565b9497909650939450505050565b5f805f805f60608688031215612318575f80fd5b8535945060208601356001600160401b0380821115612335575f80fd5b61234189838a01612280565b90965094506040880135915080821115612359575f80fd5b5061236688828901612280565b969995985093965092949392505050565b5f8060408385031215612388575f80fd5b823591506123986020840161224b565b90509250929050565b5f80604083850312156123b2575f80fd5b50508035926020909101359150565b5f5b838110156123db5781810151838201526020016123c3565b50505f910152565b5f81518084526123fa8160208601602086016123c1565b601f01601f19169290920160200192915050565b828152604060208201525f6114f660408301846123e3565b5f805f60608486031215612438575f80fd5b505081359360208301359350604090920135919050565b5f6020828403121561245f575f80fd5b5035919050565b602081525f610d8c60208301846123e3565b5f805f806060858703121561248b575f80fd5b843593506020850135925060408501356001600160401b038111156124ae575f80fd5b6124ba87828801612280565b95989497509550505050565b634e487b7160e01b5f52604160045260245ffd5b5f805f606084860312156124ec575f80fd5b833592506020840135915060408401356001600160401b0380821115612510575f80fd5b818601915086601f830112612523575f80fd5b813581811115612535576125356124c6565b604051601f8201601f19908116603f0116810190838211818310171561255d5761255d6124c6565b81604052828152896020848701011115612575575f80fd5b826020860160208301375f6020848301015280955050505050509250925092565b6001600160a01b0381168114612230575f80fd5b80358015158114612262575f80fd5b5f80604083850312156125ca575f80fd5b82356125d581612596565b9150612398602084016125aa565b5f805f606084860312156125f5575f80fd5b83359250602084013561260781612596565b9150612615604085016125aa565b90509250925092565b5f805f60608486031215612630575f80fd5b8335925060208401359150604084013561ffff8116811461264f575f80fd5b809150509250925092565b5f805f6060848603121561266c575f80fd5b833561267781612596565b925060208401359150604084013561264f81612596565b5f8083601f84011261269e575f80fd5b5081356001600160401b038111156126b4575f80fd5b6020830191508360208260051b8501011115610bae575f80fd5b5f80602083850312156126df575f80fd5b82356001600160401b038111156126f4575f80fd5b6127008582860161268e565b90969095509350505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b8281101561276157603f1988860301845261274f8583516123e3565b94509285019290850190600101612733565b5092979650505050505050565b5f806040838503121561277f575f80fd5b82359150602083013561279181612596565b809150509250929050565b5f805f604084860312156127ae575f80fd5b8335925060208401356001600160401b038111156127ca575f80fd5b6122f78682870161268e565b5f805f606084860312156127e8575f80fd5b833592506127f86020850161224b565b9150604084013561264f81612596565b5f8060408385031215612819575f80fd5b823561282481612596565b9150602083013561279181612596565b5f82516128458184602087016123c1565b9190910192915050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156105705761057061284f565b818382375f9101908152919050565b600181811c9082168061289957607f821691505b6020821081036128b757634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156114e457805f5260205f20601f840160051c810160208510156128e25750805b601f840160051c820191505b81811015611149575f81556001016128ee565b6001600160401b03831115612918576129186124c6565b61292c836129268354612885565b836128bd565b5f601f84116001811461295d575f85156129465750838201355b5f19600387901b1c1916600186901b178355611149565b5f83815260208120601f198716915b8281101561298c578685013582556020948501946001909201910161296c565b50868210156129a8575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b604081525f6129f56040830186886129ba565b8281036020840152612a088185876129ba565b979650505050505050565b634e487b7160e01b5f52603260045260245ffd5b602081525f6114f66020830184866129ba565b5f6001600160401b03808316818103612a5557612a5561284f565b6001019392505050565b81516001600160401b03811115612a7857612a786124c6565b612a8c81612a868454612885565b846128bd565b602080601f831160018114612abf575f8415612aa85750858301515b5f19600386901b1c1916600185901b178555612b16565b5f85815260208120601f198616915b82811015612aed57888601518255948401946001909101908401612ace565b5085821015612b0a57878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b604081525f612b3060408301866123e3565b8281036020840152612b438185876129ba565b9695505050505050565b5f60208284031215612b5d575f80fd5b8151610d8c81612596565b5f61ffff821680612b7b57612b7b61284f565b5f190192915050565b604081525f612b9660408301856123e3565b905061ffff831660208301529392505050565b5f61ffff808316818103612a5557612a5561284f565b606081525f612bd160608301866123e3565b61ffff851660208401528281036040840152612b4381856123e3565b808201808211156105705761057061284f565b5f808335601e19843603018112612c15575f80fd5b8301803591506001600160401b03821115612c2e575f80fd5b602001915036819003821315610bae575f80fd5b5f8085851115612c50575f80fd5b83861115612c5c575f80fd5b5050820193919092039150565b80356020831015610570575f19602084900360031b1b1692915050565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/artifacts/RSASHA256Algorithm.json b/artifacts/RSASHA256Algorithm.json index 7b0e0fe4..87cee177 100644 --- a/artifacts/RSASHA256Algorithm.json +++ b/artifacts/RSASHA256Algorithm.json @@ -33,8 +33,8 @@ "type": "function" } ], - "bytecode": "0x608060405234801561001057600080fd5b506106ff806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063de8f50a114610030575b600080fd5b61004361003e366004610539565b610057565b604051901515815260200160405180910390f35b600060608060006100a260048b8b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092939250506102f59050565b60ff169050801561016e576100f760058261ffff168c8c8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092949392505061031a9050565b92506101676101078260056105e9565b61ffff9081169060059061011d9085168d61060b565b610127919061060b565b8c8c8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092949392505061031a9050565b9150610227565b6101b260058b8b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929392505061039c9050565b90506101fe60078261ffff168c8c8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092949392505061031a9050565b925061022461020e8260076105e9565b61ffff9081169060079061011d9085168d61060b565b91505b6000606061026c84868a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506103c492505050565b90925090508180156102e557506102916020825161028a919061060b565b82906103df565b60028b8b6040516102a392919061061e565b602060405180830381855afa1580156102c0573d6000803e3d6000fd5b5050506040513d601f19601f820116820180604052508101906102e3919061062e565b145b9c9b505050505050505050505050565b600082828151811061030957610309610647565b016020015160f81c90505b92915050565b8251606090610329838561065d565b111561033457600080fd5b60008267ffffffffffffffff81111561034f5761034f610670565b6040519080825280601f01601f191660200182016040528015610379576020820181803683370190505b50905060208082019086860101610391828287610403565b509095945050505050565b81516000906103ac83600261065d565b11156103b757600080fd5b50016002015161ffff1690565b600060606103d3838587610459565b91509150935093915050565b81516000906103ef83602061065d565b11156103fa57600080fd5b50016020015190565b6020811061043b578151835261041a60208461065d565b925061042760208361065d565b915061043460208261060b565b9050610403565b905182516020929092036101000a6000190180199091169116179052565b60006060600085518551855188888860405160200161047d969594939291906106b6565b6040516020818303038152906040529050835167ffffffffffffffff8111156104a8576104a8610670565b6040519080825280601f01601f1916602001820160405280156104d2576020820181803683370190505b50915083516020830182516020840160055afa925050935093915050565b60008083601f84011261050257600080fd5b50813567ffffffffffffffff81111561051a57600080fd5b60208301915083602082850101111561053257600080fd5b9250929050565b6000806000806000806060878903121561055257600080fd5b863567ffffffffffffffff8082111561056a57600080fd5b6105768a838b016104f0565b9098509650602089013591508082111561058f57600080fd5b61059b8a838b016104f0565b909650945060408901359150808211156105b457600080fd5b506105c189828a016104f0565b979a9699509497509295939492505050565b634e487b7160e01b600052601160045260246000fd5b61ffff818116838216019080821115610604576106046105d3565b5092915050565b81810381811115610314576103146105d3565b8183823760009101908152919050565b60006020828403121561064057600080fd5b5051919050565b634e487b7160e01b600052603260045260246000fd5b80820180821115610314576103146105d3565b634e487b7160e01b600052604160045260246000fd5b6000815160005b818110156106a7576020818501810151868301520161068d565b50600093019283525090919050565b86815285602082015284604082015260006106e66106e06106da6060850188610686565b86610686565b84610686565b9897505050505050505056fea164736f6c6343000811000a", - "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061002b5760003560e01c8063de8f50a114610030575b600080fd5b61004361003e366004610539565b610057565b604051901515815260200160405180910390f35b600060608060006100a260048b8b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092939250506102f59050565b60ff169050801561016e576100f760058261ffff168c8c8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092949392505061031a9050565b92506101676101078260056105e9565b61ffff9081169060059061011d9085168d61060b565b610127919061060b565b8c8c8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092949392505061031a9050565b9150610227565b6101b260058b8b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929392505061039c9050565b90506101fe60078261ffff168c8c8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092949392505061031a9050565b925061022461020e8260076105e9565b61ffff9081169060079061011d9085168d61060b565b91505b6000606061026c84868a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506103c492505050565b90925090508180156102e557506102916020825161028a919061060b565b82906103df565b60028b8b6040516102a392919061061e565b602060405180830381855afa1580156102c0573d6000803e3d6000fd5b5050506040513d601f19601f820116820180604052508101906102e3919061062e565b145b9c9b505050505050505050505050565b600082828151811061030957610309610647565b016020015160f81c90505b92915050565b8251606090610329838561065d565b111561033457600080fd5b60008267ffffffffffffffff81111561034f5761034f610670565b6040519080825280601f01601f191660200182016040528015610379576020820181803683370190505b50905060208082019086860101610391828287610403565b509095945050505050565b81516000906103ac83600261065d565b11156103b757600080fd5b50016002015161ffff1690565b600060606103d3838587610459565b91509150935093915050565b81516000906103ef83602061065d565b11156103fa57600080fd5b50016020015190565b6020811061043b578151835261041a60208461065d565b925061042760208361065d565b915061043460208261060b565b9050610403565b905182516020929092036101000a6000190180199091169116179052565b60006060600085518551855188888860405160200161047d969594939291906106b6565b6040516020818303038152906040529050835167ffffffffffffffff8111156104a8576104a8610670565b6040519080825280601f01601f1916602001820160405280156104d2576020820181803683370190505b50915083516020830182516020840160055afa925050935093915050565b60008083601f84011261050257600080fd5b50813567ffffffffffffffff81111561051a57600080fd5b60208301915083602082850101111561053257600080fd5b9250929050565b6000806000806000806060878903121561055257600080fd5b863567ffffffffffffffff8082111561056a57600080fd5b6105768a838b016104f0565b9098509650602089013591508082111561058f57600080fd5b61059b8a838b016104f0565b909650945060408901359150808211156105b457600080fd5b506105c189828a016104f0565b979a9699509497509295939492505050565b634e487b7160e01b600052601160045260246000fd5b61ffff818116838216019080821115610604576106046105d3565b5092915050565b81810381811115610314576103146105d3565b8183823760009101908152919050565b60006020828403121561064057600080fd5b5051919050565b634e487b7160e01b600052603260045260246000fd5b80820180821115610314576103146105d3565b634e487b7160e01b600052604160045260246000fd5b6000815160005b818110156106a7576020818501810151868301520161068d565b50600093019283525090919050565b86815285602082015284604082015260006106e66106e06106da6060850188610686565b86610686565b84610686565b9897505050505050505056fea164736f6c6343000811000a", + "bytecode": "0x608060405234801561000f575f80fd5b506106ce8061001d5f395ff3fe608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063de8f50a11461002d575b5f80fd5b61004061003b36600461051c565b610054565b604051901515815260200160405180910390f35b5f6060805f61009c60048b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506102e79050565b60ff1690508015610166576100f060058261ffff168c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b925061015f6101008260056105c3565b61ffff908116906005906101169085168d6105e5565b61012091906105e5565b8c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b915061021d565b6101a960058b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250929392505061038b9050565b90506101f460078261ffff168c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b925061021a6102048260076105c3565b61ffff908116906007906101169085168d6105e5565b91505b5f606061026084868a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152506103b192505050565b90925090508180156102d757506102856020825161027e91906105e5565b82906103cb565b60028b8b6040516102979291906105f8565b602060405180830381855afa1580156102b2573d5f803e3d5ffd5b5050506040513d601f19601f820116820180604052508101906102d59190610607565b145b9c9b505050505050505050505050565b5f8282815181106102fa576102fa61061e565b016020015160f81c90505b92915050565b825160609061031a8385610632565b1115610324575f80fd5b5f8267ffffffffffffffff81111561033e5761033e610645565b6040519080825280601f01601f191660200182016040528015610368576020820181803683370190505b509050602080820190868601016103808282876103ed565b509095945050505050565b81515f9061039a836002610632565b11156103a4575f80fd5b50016002015161ffff1690565b5f60606103bf838587610442565b91509150935093915050565b81515f906103da836020610632565b11156103e4575f80fd5b50016020015190565b602081106104255781518352610404602084610632565b9250610411602083610632565b915061041e6020826105e5565b90506103ed565b905182516020929092036101000a5f190180199091169116179052565b5f60605f85518551855188888860405160200161046496959493929190610686565b6040516020818303038152906040529050835167ffffffffffffffff81111561048f5761048f610645565b6040519080825280601f01601f1916602001820160405280156104b9576020820181803683370190505b50915083516020830182516020840160055afa925050935093915050565b5f8083601f8401126104e7575f80fd5b50813567ffffffffffffffff8111156104fe575f80fd5b602083019150836020828501011115610515575f80fd5b9250929050565b5f805f805f8060608789031215610531575f80fd5b863567ffffffffffffffff80821115610548575f80fd5b6105548a838b016104d7565b9098509650602089013591508082111561056c575f80fd5b6105788a838b016104d7565b90965094506040890135915080821115610590575f80fd5b5061059d89828a016104d7565b979a9699509497509295939492505050565b634e487b7160e01b5f52601160045260245ffd5b61ffff8181168382160190808211156105de576105de6105af565b5092915050565b81810381811115610305576103056105af565b818382375f9101908152919050565b5f60208284031215610617575f80fd5b5051919050565b634e487b7160e01b5f52603260045260245ffd5b80820180821115610305576103056105af565b634e487b7160e01b5f52604160045260245ffd5b5f81515f5b81811015610678576020818501810151868301520161065e565b505f93019283525090919050565b8681528560208201528460408201525f6106b56106af6106a96060850188610659565b86610659565b84610659565b9897505050505050505056fea164736f6c6343000818000a", + "deployedBytecode": "0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063de8f50a11461002d575b5f80fd5b61004061003b36600461051c565b610054565b604051901515815260200160405180910390f35b5f6060805f61009c60048b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506102e79050565b60ff1690508015610166576100f060058261ffff168c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b925061015f6101008260056105c3565b61ffff908116906005906101169085168d6105e5565b61012091906105e5565b8c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b915061021d565b6101a960058b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250929392505061038b9050565b90506101f460078261ffff168c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b925061021a6102048260076105c3565b61ffff908116906007906101169085168d6105e5565b91505b5f606061026084868a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152506103b192505050565b90925090508180156102d757506102856020825161027e91906105e5565b82906103cb565b60028b8b6040516102979291906105f8565b602060405180830381855afa1580156102b2573d5f803e3d5ffd5b5050506040513d601f19601f820116820180604052508101906102d59190610607565b145b9c9b505050505050505050505050565b5f8282815181106102fa576102fa61061e565b016020015160f81c90505b92915050565b825160609061031a8385610632565b1115610324575f80fd5b5f8267ffffffffffffffff81111561033e5761033e610645565b6040519080825280601f01601f191660200182016040528015610368576020820181803683370190505b509050602080820190868601016103808282876103ed565b509095945050505050565b81515f9061039a836002610632565b11156103a4575f80fd5b50016002015161ffff1690565b5f60606103bf838587610442565b91509150935093915050565b81515f906103da836020610632565b11156103e4575f80fd5b50016020015190565b602081106104255781518352610404602084610632565b9250610411602083610632565b915061041e6020826105e5565b90506103ed565b905182516020929092036101000a5f190180199091169116179052565b5f60605f85518551855188888860405160200161046496959493929190610686565b6040516020818303038152906040529050835167ffffffffffffffff81111561048f5761048f610645565b6040519080825280601f01601f1916602001820160405280156104b9576020820181803683370190505b50915083516020830182516020840160055afa925050935093915050565b5f8083601f8401126104e7575f80fd5b50813567ffffffffffffffff8111156104fe575f80fd5b602083019150836020828501011115610515575f80fd5b9250929050565b5f805f805f8060608789031215610531575f80fd5b863567ffffffffffffffff80821115610548575f80fd5b6105548a838b016104d7565b9098509650602089013591508082111561056c575f80fd5b6105788a838b016104d7565b90965094506040890135915080821115610590575f80fd5b5061059d89828a016104d7565b979a9699509497509295939492505050565b634e487b7160e01b5f52601160045260245ffd5b61ffff8181168382160190808211156105de576105de6105af565b5092915050565b81810381811115610305576103056105af565b818382375f9101908152919050565b5f60208284031215610617575f80fd5b5051919050565b634e487b7160e01b5f52603260045260245ffd5b80820180821115610305576103056105af565b634e487b7160e01b5f52604160045260245ffd5b5f81515f5b81811015610678576020818501810151868301520161065e565b505f93019283525090919050565b8681528560208201528460408201525f6106b56106af6106a96060850188610659565b86610659565b84610659565b9897505050505050505056fea164736f6c6343000818000a", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/artifacts/ReentrancyErrors.json b/artifacts/ReentrancyErrors.json new file mode 100644 index 00000000..194fa7e9 --- /dev/null +++ b/artifacts/ReentrancyErrors.json @@ -0,0 +1,31 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "ReentrancyErrors", + "sourceName": "seaport-types/src/interfaces/ReentrancyErrors.sol", + "abi": [ + { + "inputs": [], + "name": "NoReentrantCalls", + "type": "error" + }, + { + "inputs": [], + "name": "TStoreAlreadyActivated", + "type": "error" + }, + { + "inputs": [], + "name": "TStoreNotSupported", + "type": "error" + }, + { + "inputs": [], + "name": "TloadTestContractDeploymentFailed", + "type": "error" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x", + "linkReferences": {}, + "deployedLinkReferences": {} +} diff --git a/artifacts/ReentrancyGuard.json b/artifacts/ReentrancyGuard.json new file mode 100644 index 00000000..1797b594 --- /dev/null +++ b/artifacts/ReentrancyGuard.json @@ -0,0 +1,43 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "ReentrancyGuard", + "sourceName": "seaport-core/src/lib/ReentrancyGuard.sol", + "abi": [ + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [], + "name": "NoReentrantCalls", + "type": "error" + }, + { + "inputs": [], + "name": "TStoreAlreadyActivated", + "type": "error" + }, + { + "inputs": [], + "name": "TStoreNotSupported", + "type": "error" + }, + { + "inputs": [], + "name": "TloadTestContractDeploymentFailed", + "type": "error" + }, + { + "inputs": [], + "name": "__activateTstore", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x60c060405234801561000f575f80fd5b505f610019610076565b90506001600160a01b03811661004257604051632aea588760e01b815260040160405180910390fd5b5f61004c8261008f565b8015156080526001600160a01b03831660a05290508061006f57600163929eee14555b505061010c565b5f696002601e613d5c3d52f35f52600a60165ff0905090565b5f816001600160a01b0316600a5a6100a791906100ed565b6040515f8181818686fa925050503d805f81146100df576040519150601f19603f3d011682016040523d82523d5f602084013e6100e4565b606091505b50909392505050565b5f8261010757634e487b7160e01b5f52601260045260245ffd5b500490565b60805160a05161016261012b5f395f608d01525f604201526101625ff3fe608060405234801561000f575f80fd5b5060043610610029575f3560e01c80637423eb3c1461002d575b5f80fd5b610035610037565b005b63929eee14546001147f00000000000000000000000000000000000000000000000000000000000000008061006a575080155b1561008857604051630f45b98b60e41b815260040160405180910390fd5b6100b17f00000000000000000000000000000000000000000000000000000000000000006100d8565b6100ce576040516370a4078f60e01b815260040160405180910390fd5b5f63929eee145550565b5f816001600160a01b0316600a5a6100f09190610136565b6040515f8181818686fa925050503d805f8114610128576040519150601f19603f3d011682016040523d82523d5f602084013e61012d565b606091505b50909392505050565b5f8261015057634e487b7160e01b5f52601260045260245ffd5b50049056fea164736f6c6343000818000a", + "deployedBytecode": "0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c80637423eb3c1461002d575b5f80fd5b610035610037565b005b63929eee14546001147f00000000000000000000000000000000000000000000000000000000000000008061006a575080155b1561008857604051630f45b98b60e41b815260040160405180910390fd5b6100b17f00000000000000000000000000000000000000000000000000000000000000006100d8565b6100ce576040516370a4078f60e01b815260040160405180910390fd5b5f63929eee145550565b5f816001600160a01b0316600a5a6100f09190610136565b6040515f8181818686fa925050503d805f8114610128576040519150601f19603f3d011682016040523d82523d5f602084013e61012d565b606091505b50909392505050565b5f8261015057634e487b7160e01b5f52601260045260245ffd5b50049056fea164736f6c6343000818000a", + "linkReferences": {}, + "deployedLinkReferences": {} +} diff --git a/artifacts/ResolverForwarder.json b/artifacts/ResolverForwarder.json index cf8fedf7..d9937497 100644 --- a/artifacts/ResolverForwarder.json +++ b/artifacts/ResolverForwarder.json @@ -131,8 +131,8 @@ "type": "function" } ], - "bytecode": "0x60806040523480156200001157600080fd5b506040516200153938038062001539833981016040819052620000349162000286565b600180546001600160a01b038481166001600160a01b0319928316179092556002805492841692909116919091179055604080518082018252600e81526d72657365742875696e743235362960901b602080830191825283518085018552601781527f7265736574466f722875696e743235362c62797465732900000000000000000090820152915190206001600160e01b03191660009081529081905220805463ffffffff191663b87abc11179055620001776040518060400160405280601a81526020017f73657428737472696e672c737472696e672c75696e7432353629000000000000815250604051806060016040528060238152602001620014ce6023913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b620001ee604051806060016040528060228152602001620014f1602291396040518060600160405280602b815260200162001474602b913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b6200026560405180606001604052806026815260200162001513602691396040518060600160405280602f81526020016200149f602f913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b5050620002c5565b6001600160a01b03811681146200028357600080fd5b50565b600080604083850312156200029a57600080fd5b8251620002a7816200026d565b6020840151909250620002ba816200026d565b809150509250929050565b61119f80620002d56000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a424740014610090575b600080fd5b610059610054366004610ba9565b6100b3565b6040516100669190610c98565b60405180910390f35b61008261007d366004610cab565b6101ce565b604051908152602001610066565b6100a361009e366004610ba9565b610332565b6040519015158152602001610066565b606060005a6001546040805163b3f9e4cb60e01b81529088013560048201529192506000916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561010a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061012e9190610cd9565b90506101c26101406020880188610cf6565b8260408901358561015460608c018c610d13565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8f018190048102820181019092528d815292508d91508c90819084018382808284376000920191909152506103fb92505050565b925050505b9392505050565b60025460015460405163b3f9e4cb60e01b8152600481018490526000926001600160a01b0390811692169063b3f9e4cb90602401602060405180830381865afa92505050801561023b575060408051601f3d908101601f1916820190925261023891810190610cd9565b60015b156102435790505b6001600160a01b0381163b156102c557604051636ccbae5f60e01b81526004810184905281906001600160a01b03821690636ccbae5f90602401602060405180830381865afa9250505080156102b6575060408051601f3d908101601f191682019092526102b391810190610d5a565b60015b156102c357949350505050565b505b600254604051636ccbae5f60e01b8152600481018590526001600160a01b0390911690636ccbae5f90602401602060405180830381865afa15801561030e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101c79190610d5a565b6001546040805163b3f9e4cb60e01b815290850135600482015260009182916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa158015610383573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103a79190610cd9565b90506103f26103b586610e0b565b8286868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506104d392505050565b95945050505050565b6060600080876001600160a01b0316866104178b8a898961051f565b6040516104249190610eb5565b60006040518083038160008787f1925050503d8060008114610462576040519150601f19603f3d011682016040523d82523d6000602084013e610467565b606091505b509092509050610478603f87610ed1565b5a1161048657610486610ef3565b6104c682826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506105d4565b9998505050505050505050565b60006104e084848461060d565b8015610514575060608401516020908101516001600160e01b031990811660009081529182905260409091205460e01b1615155b949350505050565b50565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036105b15760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526105c982828661074c565b979650505050505050565b606083156105e35750816101c7565b8251156105f35782518084602001fd5b8160405162461bcd60e51b81526004016105a89190610c98565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015610654573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106789190610d5a565b905060006107268660600151805190602001208688602001516040516020016106c69392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156101c2575085516101c2906001600160a01b03168286610935565b60606001600160e01b0319841663b87abc1160e01b036107cd5760008380602001905181019061077c9190610d5a565b9050848184604051602401610792929190610f09565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915291506101c79050565b6001600160e01b0319841663c597407360e01b03610859576000806000858060200190518101906107fe9190610f67565b925092509250868383838860405160240161081c9493929190610fd4565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293506101c792505050565b6001600160e01b031984166311ed383160e31b036108a85760008060008580602001905181019061088a91906110a6565b925092509250868383838860405160240161081c9493929190611157565b6001600160e01b031984166328d55f9b60e21b036101c7576000806000858060200190518101906108d991906110a6565b92509250925086838383886040516024016108f79493929190611157565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293505050509392505050565b60008060006109448585610a77565b9092509050600081600481111561095d5761095d61117c565b14801561097b5750856001600160a01b0316826001600160a01b0316145b1561098b576001925050506101c7565b600080876001600160a01b0316631626ba7e60e01b88886040516024016109b3929190610f09565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516109f19190610eb5565b600060405180830381855afa9150503d8060008114610a2c576040519150601f19603f3d011682016040523d82523d6000602084013e610a31565b606091505b5091509150818015610a44575080516020145b8015610a6b57508051630b135d3f60e11b90610a699083016020908101908401610d5a565b145b98975050505050505050565b6000808251604103610aad5760208301516040840151606085015160001a610aa187828585610abc565b94509450505050610ab5565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610af35750600090506003610ba0565b8460ff16601b14158015610b0b57508460ff16601c14155b15610b1c5750600090506004610ba0565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610b70573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610b9957600060019250925050610ba0565b9150600090505b94509492505050565b600080600060408486031215610bbe57600080fd5b833567ffffffffffffffff80821115610bd657600080fd5b9085019060808288031215610bea57600080fd5b90935060208501359080821115610c0057600080fd5b818601915086601f830112610c1457600080fd5b813581811115610c2357600080fd5b876020828501011115610c3557600080fd5b6020830194508093505050509250925092565b60005b83811015610c63578181015183820152602001610c4b565b50506000910152565b60008151808452610c84816020860160208601610c48565b601f01601f19169290920160200192915050565b6020815260006101c76020830184610c6c565b600060208284031215610cbd57600080fd5b5035919050565b6001600160a01b038116811461051c57600080fd5b600060208284031215610ceb57600080fd5b81516101c781610cc4565b600060208284031215610d0857600080fd5b81356101c781610cc4565b6000808335601e19843603018112610d2a57600080fd5b83018035915067ffffffffffffffff821115610d4557600080fd5b602001915036819003821315610ab557600080fd5b600060208284031215610d6c57600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610dac57610dac610d73565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ddb57610ddb610d73565b604052919050565b600067ffffffffffffffff821115610dfd57610dfd610d73565b50601f01601f191660200190565b600060808236031215610e1d57600080fd5b610e25610d89565b8235610e3081610cc4565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610e6057600080fd5b840136601f820112610e7157600080fd5b8035610e84610e7f82610de3565b610db2565b8181523684838501011115610e9857600080fd5b818484018583013760009181019093015250606082015292915050565b60008251610ec7818460208701610c48565b9190910192915050565b600082610eee57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b8281526040602082015260006105146040830184610c6c565b600082601f830112610f3357600080fd5b8151610f41610e7f82610de3565b818152846020838601011115610f5657600080fd5b610514826020830160208701610c48565b600080600060608486031215610f7c57600080fd5b835167ffffffffffffffff80821115610f9457600080fd5b610fa087838801610f22565b94506020860151915080821115610fb657600080fd5b50610fc386828701610f22565b925050604084015190509250925092565b608081526000610fe76080830187610c6c565b8281036020840152610ff98187610c6c565b905084604084015282810360608401526105c98185610c6c565b600082601f83011261102457600080fd5b8151602067ffffffffffffffff8083111561104157611041610d73565b8260051b611050838201610db2565b938452858101830193838101908886111561106a57600080fd5b84880192505b85831015610a6b578251848111156110885760008081fd5b6110968a87838c0101610f22565b8352509184019190840190611070565b6000806000606084860312156110bb57600080fd5b835167ffffffffffffffff808211156110d357600080fd5b6110df87838801611013565b945060208601519150808211156110f557600080fd5b50610fc386828701611013565b600081518084526020808501808196508360051b8101915082860160005b8581101561114a578284038952611138848351610c6c565b98850198935090840190600101611120565b5091979650505050505050565b60808152600061116a6080830187611102565b8281036020840152610ff98187611102565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a7365744d616e79466f7228737472696e675b5d2c737472696e675b5d2c75696e743235362c6279746573297265636f6e666967757265466f7228737472696e675b5d2c737472696e675b5d2c75696e743235362c627974657329736574466f7228737472696e672c737472696e672c75696e743235362c6279746573297365744d616e7928737472696e675b5d2c737472696e675b5d2c75696e74323536297265636f6e66696775726528737472696e675b5d2c737472696e675b5d2c75696e7432353629", - "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a424740014610090575b600080fd5b610059610054366004610ba9565b6100b3565b6040516100669190610c98565b60405180910390f35b61008261007d366004610cab565b6101ce565b604051908152602001610066565b6100a361009e366004610ba9565b610332565b6040519015158152602001610066565b606060005a6001546040805163b3f9e4cb60e01b81529088013560048201529192506000916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561010a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061012e9190610cd9565b90506101c26101406020880188610cf6565b8260408901358561015460608c018c610d13565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8f018190048102820181019092528d815292508d91508c90819084018382808284376000920191909152506103fb92505050565b925050505b9392505050565b60025460015460405163b3f9e4cb60e01b8152600481018490526000926001600160a01b0390811692169063b3f9e4cb90602401602060405180830381865afa92505050801561023b575060408051601f3d908101601f1916820190925261023891810190610cd9565b60015b156102435790505b6001600160a01b0381163b156102c557604051636ccbae5f60e01b81526004810184905281906001600160a01b03821690636ccbae5f90602401602060405180830381865afa9250505080156102b6575060408051601f3d908101601f191682019092526102b391810190610d5a565b60015b156102c357949350505050565b505b600254604051636ccbae5f60e01b8152600481018590526001600160a01b0390911690636ccbae5f90602401602060405180830381865afa15801561030e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101c79190610d5a565b6001546040805163b3f9e4cb60e01b815290850135600482015260009182916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa158015610383573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103a79190610cd9565b90506103f26103b586610e0b565b8286868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506104d392505050565b95945050505050565b6060600080876001600160a01b0316866104178b8a898961051f565b6040516104249190610eb5565b60006040518083038160008787f1925050503d8060008114610462576040519150601f19603f3d011682016040523d82523d6000602084013e610467565b606091505b509092509050610478603f87610ed1565b5a1161048657610486610ef3565b6104c682826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506105d4565b9998505050505050505050565b60006104e084848461060d565b8015610514575060608401516020908101516001600160e01b031990811660009081529182905260409091205460e01b1615155b949350505050565b50565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036105b15760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526105c982828661074c565b979650505050505050565b606083156105e35750816101c7565b8251156105f35782518084602001fd5b8160405162461bcd60e51b81526004016105a89190610c98565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015610654573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106789190610d5a565b905060006107268660600151805190602001208688602001516040516020016106c69392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156101c2575085516101c2906001600160a01b03168286610935565b60606001600160e01b0319841663b87abc1160e01b036107cd5760008380602001905181019061077c9190610d5a565b9050848184604051602401610792929190610f09565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915291506101c79050565b6001600160e01b0319841663c597407360e01b03610859576000806000858060200190518101906107fe9190610f67565b925092509250868383838860405160240161081c9493929190610fd4565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293506101c792505050565b6001600160e01b031984166311ed383160e31b036108a85760008060008580602001905181019061088a91906110a6565b925092509250868383838860405160240161081c9493929190611157565b6001600160e01b031984166328d55f9b60e21b036101c7576000806000858060200190518101906108d991906110a6565b92509250925086838383886040516024016108f79493929190611157565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293505050509392505050565b60008060006109448585610a77565b9092509050600081600481111561095d5761095d61117c565b14801561097b5750856001600160a01b0316826001600160a01b0316145b1561098b576001925050506101c7565b600080876001600160a01b0316631626ba7e60e01b88886040516024016109b3929190610f09565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516109f19190610eb5565b600060405180830381855afa9150503d8060008114610a2c576040519150601f19603f3d011682016040523d82523d6000602084013e610a31565b606091505b5091509150818015610a44575080516020145b8015610a6b57508051630b135d3f60e11b90610a699083016020908101908401610d5a565b145b98975050505050505050565b6000808251604103610aad5760208301516040840151606085015160001a610aa187828585610abc565b94509450505050610ab5565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610af35750600090506003610ba0565b8460ff16601b14158015610b0b57508460ff16601c14155b15610b1c5750600090506004610ba0565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610b70573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610b9957600060019250925050610ba0565b9150600090505b94509492505050565b600080600060408486031215610bbe57600080fd5b833567ffffffffffffffff80821115610bd657600080fd5b9085019060808288031215610bea57600080fd5b90935060208501359080821115610c0057600080fd5b818601915086601f830112610c1457600080fd5b813581811115610c2357600080fd5b876020828501011115610c3557600080fd5b6020830194508093505050509250925092565b60005b83811015610c63578181015183820152602001610c4b565b50506000910152565b60008151808452610c84816020860160208601610c48565b601f01601f19169290920160200192915050565b6020815260006101c76020830184610c6c565b600060208284031215610cbd57600080fd5b5035919050565b6001600160a01b038116811461051c57600080fd5b600060208284031215610ceb57600080fd5b81516101c781610cc4565b600060208284031215610d0857600080fd5b81356101c781610cc4565b6000808335601e19843603018112610d2a57600080fd5b83018035915067ffffffffffffffff821115610d4557600080fd5b602001915036819003821315610ab557600080fd5b600060208284031215610d6c57600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610dac57610dac610d73565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ddb57610ddb610d73565b604052919050565b600067ffffffffffffffff821115610dfd57610dfd610d73565b50601f01601f191660200190565b600060808236031215610e1d57600080fd5b610e25610d89565b8235610e3081610cc4565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610e6057600080fd5b840136601f820112610e7157600080fd5b8035610e84610e7f82610de3565b610db2565b8181523684838501011115610e9857600080fd5b818484018583013760009181019093015250606082015292915050565b60008251610ec7818460208701610c48565b9190910192915050565b600082610eee57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b8281526040602082015260006105146040830184610c6c565b600082601f830112610f3357600080fd5b8151610f41610e7f82610de3565b818152846020838601011115610f5657600080fd5b610514826020830160208701610c48565b600080600060608486031215610f7c57600080fd5b835167ffffffffffffffff80821115610f9457600080fd5b610fa087838801610f22565b94506020860151915080821115610fb657600080fd5b50610fc386828701610f22565b925050604084015190509250925092565b608081526000610fe76080830187610c6c565b8281036020840152610ff98187610c6c565b905084604084015282810360608401526105c98185610c6c565b600082601f83011261102457600080fd5b8151602067ffffffffffffffff8083111561104157611041610d73565b8260051b611050838201610db2565b938452858101830193838101908886111561106a57600080fd5b84880192505b85831015610a6b578251848111156110885760008081fd5b6110968a87838c0101610f22565b8352509184019190840190611070565b6000806000606084860312156110bb57600080fd5b835167ffffffffffffffff808211156110d357600080fd5b6110df87838801611013565b945060208601519150808211156110f557600080fd5b50610fc386828701611013565b600081518084526020808501808196508360051b8101915082860160005b8581101561114a578284038952611138848351610c6c565b98850198935090840190600101611120565b5091979650505050505050565b60808152600061116a6080830187611102565b8281036020840152610ff98187611102565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a", + "bytecode": "0x608060405234801562000010575f80fd5b50604051620014bc380380620014bc833981016040819052620000339162000280565b600180546001600160a01b038481166001600160a01b0319928316179092556002805492841692909116919091179055604080518082018252600e81526d72657365742875696e743235362960901b602080830191825283518085018552601781527f7265736574466f722875696e743235362c62797465732900000000000000000090820152915190206001600160e01b0319165f9081529081905220805463ffffffff191663b87abc11179055620001746040518060400160405280601a81526020017f73657428737472696e672c737472696e672c75696e7432353629000000000000815250604051806060016040528060238152602001620014516023913980516020918201208251928201929092206001600160e01b0319165f9081529081905260409020805463ffffffff191660e09290921c919091179055565b620001ea60405180606001604052806022815260200162001474602291396040518060600160405280602b8152602001620013f7602b913980516020918201208251928201929092206001600160e01b0319165f9081529081905260409020805463ffffffff191660e09290921c919091179055565b6200026060405180606001604052806026815260200162001496602691396040518060600160405280602f815260200162001422602f913980516020918201208251928201929092206001600160e01b0319165f9081529081905260409020805463ffffffff191660e09290921c919091179055565b5050620002bd565b6001600160a01b03811681146200027d575f80fd5b50565b5f806040838503121562000292575f80fd5b82516200029f8162000268565b6020840151909250620002b28162000268565b809150509250929050565b61112c80620002cb5f395ff3fe608060405234801561000f575f80fd5b506004361061003f575f3560e01c80631bf7e13e146100435780636ccbae5f1461006c578063a42474001461008d575b5f80fd5b610056610051366004610b73565b6100b0565b6040516100639190610c56565b60405180910390f35b61007f61007a366004610c68565b6101c5565b604051908152602001610063565b6100a061009b366004610b73565b610326565b6040519015158152602001610063565b60605f5a6001546040805163b3f9e4cb60e01b81529088013560048201529192505f916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa158015610103573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101279190610c93565b90506101b96101396020880188610cae565b8260408901358561014d60608c018c610cc9565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8f018190048102820181019092528d815292508d91508c90819084018382808284375f920191909152506103eb92505050565b925050505b9392505050565b60025460015460405163b3f9e4cb60e01b8152600481018490525f926001600160a01b0390811692169063b3f9e4cb90602401602060405180830381865afa925050508015610231575060408051601f3d908101601f1916820190925261022e91810190610c93565b60015b156102395790505b6001600160a01b0381163b156102bb57604051636ccbae5f60e01b81526004810184905281906001600160a01b03821690636ccbae5f90602401602060405180830381865afa9250505080156102ac575060408051601f3d908101601f191682019092526102a991810190610d0c565b60015b156102b957949350505050565b505b600254604051636ccbae5f60e01b8152600481018590526001600160a01b0390911690636ccbae5f90602401602060405180830381865afa158015610302573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101be9190610d0c565b6001546040805163b3f9e4cb60e01b81529085013560048201525f9182916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa158015610374573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103989190610c93565b90506103e26103a686610db8565b8286868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152506104be92505050565b95945050505050565b60605f80876001600160a01b0316866104068b8a8989610508565b6040516104139190610e5c565b5f604051808303815f8787f1925050503d805f811461044d576040519150601f19603f3d011682016040523d82523d5f602084013e610452565b606091505b509092509050610463603f87610e77565b5a1161047157610471610e96565b6104b182826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506105bb565b9998505050505050505050565b5f6104ca8484846105f4565b80156104fd575060608401516020908101516001600160e01b03199081165f9081529182905260409091205460e01b1615155b949350505050565b50565b6020808301516001600160e01b0319165f9081529081905260408120546060919060e01b90506001600160e01b031981165f036105985760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526105b082828661072f565b979650505050505050565b606083156105ca5750816101be565b8251156105da5782518084602001fd5b8160405162461bcd60e51b815260040161058f9190610c56565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015610638573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061065c9190610d0c565b90505f6107098660600151805190602001208688602001516040516020016106a99392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156101b9575085516101b9906001600160a01b03168286610911565b60606001600160e01b0319841663b87abc1160e01b036107af575f8380602001905181019061075e9190610d0c565b9050848184604051602401610774929190610eaa565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915291506101be9050565b6001600160e01b0319841663c597407360e01b03610839575f805f858060200190518101906107de9190610f04565b92509250925086838383886040516024016107fc9493929190610f6c565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293506101be92505050565b6001600160e01b031984166311ed383160e31b03610886575f805f858060200190518101906108689190611038565b92509250925086838383886040516024016107fc94939291906110e7565b6001600160e01b031984166328d55f9b60e21b036101be575f805f858060200190518101906108b59190611038565b92509250925086838383886040516024016108d394939291906110e7565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293505050509392505050565b5f805f61091e8585610a4c565b90925090505f8160048111156109365761093661110b565b1480156109545750856001600160a01b0316826001600160a01b0316145b15610964576001925050506101be565b5f80876001600160a01b0316631626ba7e60e01b888860405160240161098b929190610eaa565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516109c99190610e5c565b5f60405180830381855afa9150503d805f8114610a01576040519150601f19603f3d011682016040523d82523d5f602084013e610a06565b606091505b5091509150818015610a19575080516020145b8015610a4057508051630b135d3f60e11b90610a3e9083016020908101908401610d0c565b145b98975050505050505050565b5f808251604103610a80576020830151604084015160608501515f1a610a7487828585610a8e565b94509450505050610a87565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610ac357505f90506003610b6a565b8460ff16601b14158015610adb57508460ff16601c14155b15610aeb57505f90506004610b6a565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610b3c573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b038116610b64575f60019250925050610b6a565b91505f90505b94509492505050565b5f805f60408486031215610b85575f80fd5b833567ffffffffffffffff80821115610b9c575f80fd5b9085019060808288031215610baf575f80fd5b90935060208501359080821115610bc4575f80fd5b818601915086601f830112610bd7575f80fd5b813581811115610be5575f80fd5b876020828501011115610bf6575f80fd5b6020830194508093505050509250925092565b5f5b83811015610c23578181015183820152602001610c0b565b50505f910152565b5f8151808452610c42816020860160208601610c09565b601f01601f19169290920160200192915050565b602081525f6101be6020830184610c2b565b5f60208284031215610c78575f80fd5b5035919050565b6001600160a01b0381168114610505575f80fd5b5f60208284031215610ca3575f80fd5b81516101be81610c7f565b5f60208284031215610cbe575f80fd5b81356101be81610c7f565b5f808335601e19843603018112610cde575f80fd5b83018035915067ffffffffffffffff821115610cf8575f80fd5b602001915036819003821315610a87575f80fd5b5f60208284031215610d1c575f80fd5b5051919050565b634e487b7160e01b5f52604160045260245ffd5b6040516080810167ffffffffffffffff81118282101715610d5a57610d5a610d23565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610d8957610d89610d23565b604052919050565b5f67ffffffffffffffff821115610daa57610daa610d23565b50601f01601f191660200190565b5f60808236031215610dc8575f80fd5b610dd0610d37565b8235610ddb81610c7f565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610e0a575f80fd5b840136601f820112610e1a575f80fd5b8035610e2d610e2882610d91565b610d60565b8181523684838501011115610e40575f80fd5b81848401858301375f9181019093015250606082015292915050565b5f8251610e6d818460208701610c09565b9190910192915050565b5f82610e9157634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b828152604060208201525f6104fd6040830184610c2b565b5f82601f830112610ed1575f80fd5b8151610edf610e2882610d91565b818152846020838601011115610ef3575f80fd5b6104fd826020830160208701610c09565b5f805f60608486031215610f16575f80fd5b835167ffffffffffffffff80821115610f2d575f80fd5b610f3987838801610ec2565b94506020860151915080821115610f4e575f80fd5b50610f5b86828701610ec2565b925050604084015190509250925092565b608081525f610f7e6080830187610c2b565b8281036020840152610f908187610c2b565b905084604084015282810360608401526105b08185610c2b565b5f82601f830112610fb9575f80fd5b8151602067ffffffffffffffff80831115610fd657610fd6610d23565b8260051b610fe5838201610d60565b9384528581018301938381019088861115610ffe575f80fd5b84880192505b85831015610a405782518481111561101a575f80fd5b6110288a87838c0101610ec2565b8352509184019190840190611004565b5f805f6060848603121561104a575f80fd5b835167ffffffffffffffff80821115611061575f80fd5b61106d87838801610faa565b94506020860151915080821115611082575f80fd5b50610f5b86828701610faa565b5f8282518085526020808601955060208260051b840101602086015f5b848110156110da57601f198684030189526110c8838351610c2b565b988401989250908301906001016110ac565b5090979650505050505050565b608081525f6110f9608083018761108f565b8281036020840152610f90818761108f565b634e487b7160e01b5f52602160045260245ffdfea164736f6c6343000818000a7365744d616e79466f7228737472696e675b5d2c737472696e675b5d2c75696e743235362c6279746573297265636f6e666967757265466f7228737472696e675b5d2c737472696e675b5d2c75696e743235362c627974657329736574466f7228737472696e672c737472696e672c75696e743235362c6279746573297365744d616e7928737472696e675b5d2c737472696e675b5d2c75696e74323536297265636f6e66696775726528737472696e675b5d2c737472696e675b5d2c75696e7432353629", + "deployedBytecode": "0x608060405234801561000f575f80fd5b506004361061003f575f3560e01c80631bf7e13e146100435780636ccbae5f1461006c578063a42474001461008d575b5f80fd5b610056610051366004610b73565b6100b0565b6040516100639190610c56565b60405180910390f35b61007f61007a366004610c68565b6101c5565b604051908152602001610063565b6100a061009b366004610b73565b610326565b6040519015158152602001610063565b60605f5a6001546040805163b3f9e4cb60e01b81529088013560048201529192505f916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa158015610103573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101279190610c93565b90506101b96101396020880188610cae565b8260408901358561014d60608c018c610cc9565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8f018190048102820181019092528d815292508d91508c90819084018382808284375f920191909152506103eb92505050565b925050505b9392505050565b60025460015460405163b3f9e4cb60e01b8152600481018490525f926001600160a01b0390811692169063b3f9e4cb90602401602060405180830381865afa925050508015610231575060408051601f3d908101601f1916820190925261022e91810190610c93565b60015b156102395790505b6001600160a01b0381163b156102bb57604051636ccbae5f60e01b81526004810184905281906001600160a01b03821690636ccbae5f90602401602060405180830381865afa9250505080156102ac575060408051601f3d908101601f191682019092526102a991810190610d0c565b60015b156102b957949350505050565b505b600254604051636ccbae5f60e01b8152600481018590526001600160a01b0390911690636ccbae5f90602401602060405180830381865afa158015610302573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101be9190610d0c565b6001546040805163b3f9e4cb60e01b81529085013560048201525f9182916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa158015610374573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103989190610c93565b90506103e26103a686610db8565b8286868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152506104be92505050565b95945050505050565b60605f80876001600160a01b0316866104068b8a8989610508565b6040516104139190610e5c565b5f604051808303815f8787f1925050503d805f811461044d576040519150601f19603f3d011682016040523d82523d5f602084013e610452565b606091505b509092509050610463603f87610e77565b5a1161047157610471610e96565b6104b182826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506105bb565b9998505050505050505050565b5f6104ca8484846105f4565b80156104fd575060608401516020908101516001600160e01b03199081165f9081529182905260409091205460e01b1615155b949350505050565b50565b6020808301516001600160e01b0319165f9081529081905260408120546060919060e01b90506001600160e01b031981165f036105985760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526105b082828661072f565b979650505050505050565b606083156105ca5750816101be565b8251156105da5782518084602001fd5b8160405162461bcd60e51b815260040161058f9190610c56565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015610638573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061065c9190610d0c565b90505f6107098660600151805190602001208688602001516040516020016106a99392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156101b9575085516101b9906001600160a01b03168286610911565b60606001600160e01b0319841663b87abc1160e01b036107af575f8380602001905181019061075e9190610d0c565b9050848184604051602401610774929190610eaa565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915291506101be9050565b6001600160e01b0319841663c597407360e01b03610839575f805f858060200190518101906107de9190610f04565b92509250925086838383886040516024016107fc9493929190610f6c565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293506101be92505050565b6001600160e01b031984166311ed383160e31b03610886575f805f858060200190518101906108689190611038565b92509250925086838383886040516024016107fc94939291906110e7565b6001600160e01b031984166328d55f9b60e21b036101be575f805f858060200190518101906108b59190611038565b92509250925086838383886040516024016108d394939291906110e7565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293505050509392505050565b5f805f61091e8585610a4c565b90925090505f8160048111156109365761093661110b565b1480156109545750856001600160a01b0316826001600160a01b0316145b15610964576001925050506101be565b5f80876001600160a01b0316631626ba7e60e01b888860405160240161098b929190610eaa565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516109c99190610e5c565b5f60405180830381855afa9150503d805f8114610a01576040519150601f19603f3d011682016040523d82523d5f602084013e610a06565b606091505b5091509150818015610a19575080516020145b8015610a4057508051630b135d3f60e11b90610a3e9083016020908101908401610d0c565b145b98975050505050505050565b5f808251604103610a80576020830151604084015160608501515f1a610a7487828585610a8e565b94509450505050610a87565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610ac357505f90506003610b6a565b8460ff16601b14158015610adb57508460ff16601c14155b15610aeb57505f90506004610b6a565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610b3c573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b038116610b64575f60019250925050610b6a565b91505f90505b94509492505050565b5f805f60408486031215610b85575f80fd5b833567ffffffffffffffff80821115610b9c575f80fd5b9085019060808288031215610baf575f80fd5b90935060208501359080821115610bc4575f80fd5b818601915086601f830112610bd7575f80fd5b813581811115610be5575f80fd5b876020828501011115610bf6575f80fd5b6020830194508093505050509250925092565b5f5b83811015610c23578181015183820152602001610c0b565b50505f910152565b5f8151808452610c42816020860160208601610c09565b601f01601f19169290920160200192915050565b602081525f6101be6020830184610c2b565b5f60208284031215610c78575f80fd5b5035919050565b6001600160a01b0381168114610505575f80fd5b5f60208284031215610ca3575f80fd5b81516101be81610c7f565b5f60208284031215610cbe575f80fd5b81356101be81610c7f565b5f808335601e19843603018112610cde575f80fd5b83018035915067ffffffffffffffff821115610cf8575f80fd5b602001915036819003821315610a87575f80fd5b5f60208284031215610d1c575f80fd5b5051919050565b634e487b7160e01b5f52604160045260245ffd5b6040516080810167ffffffffffffffff81118282101715610d5a57610d5a610d23565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610d8957610d89610d23565b604052919050565b5f67ffffffffffffffff821115610daa57610daa610d23565b50601f01601f191660200190565b5f60808236031215610dc8575f80fd5b610dd0610d37565b8235610ddb81610c7f565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610e0a575f80fd5b840136601f820112610e1a575f80fd5b8035610e2d610e2882610d91565b610d60565b8181523684838501011115610e40575f80fd5b81848401858301375f9181019093015250606082015292915050565b5f8251610e6d818460208701610c09565b9190910192915050565b5f82610e9157634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b828152604060208201525f6104fd6040830184610c2b565b5f82601f830112610ed1575f80fd5b8151610edf610e2882610d91565b818152846020838601011115610ef3575f80fd5b6104fd826020830160208701610c09565b5f805f60608486031215610f16575f80fd5b835167ffffffffffffffff80821115610f2d575f80fd5b610f3987838801610ec2565b94506020860151915080821115610f4e575f80fd5b50610f5b86828701610ec2565b925050604084015190509250925092565b608081525f610f7e6080830187610c2b565b8281036020840152610f908187610c2b565b905084604084015282810360608401526105b08185610c2b565b5f82601f830112610fb9575f80fd5b8151602067ffffffffffffffff80831115610fd657610fd6610d23565b8260051b610fe5838201610d60565b9384528581018301938381019088861115610ffe575f80fd5b84880192505b85831015610a405782518481111561101a575f80fd5b6110288a87838c0101610ec2565b8352509184019190840190611004565b5f805f6060848603121561104a575f80fd5b835167ffffffffffffffff80821115611061575f80fd5b61106d87838801610faa565b94506020860151915080821115611082575f80fd5b50610f5b86828701610faa565b5f8282518085526020808601955060208260051b840101602086015f5b848110156110da57601f198684030189526110c8838351610c2b565b988401989250908301906001016110ac565b5090979650505050505050565b608081525f6110f9608083018761108f565b8281036020840152610f90818761108f565b634e487b7160e01b5f52602160045260245ffdfea164736f6c6343000818000a", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/artifacts/ReverseClaimer.json b/artifacts/ReverseClaimer.json index 1053add1..862aed99 100644 --- a/artifacts/ReverseClaimer.json +++ b/artifacts/ReverseClaimer.json @@ -20,8 +20,8 @@ "type": "constructor" } ], - "bytecode": "0x608060405234801561001057600080fd5b506040516101e63803806101e683398101604081905261002f9161014b565b6040516302571be360e01b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e260048201526000906001600160a01b038416906302571be390602401602060405180830381865afa158015610096573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906100ba9190610185565b604051630f41a04d60e11b81526001600160a01b03848116600483015291925090821690631e83409a906024016020604051808303816000875af1158015610106573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061012a91906101a9565b505050506101c2565b6001600160a01b038116811461014857600080fd5b50565b6000806040838503121561015e57600080fd5b825161016981610133565b602084015190925061017a81610133565b809150509250929050565b60006020828403121561019757600080fd5b81516101a281610133565b9392505050565b6000602082840312156101bb57600080fd5b5051919050565b6016806101d06000396000f3fe6080604052600080fdfea164736f6c6343000811000a", - "deployedBytecode": "0x6080604052600080fdfea164736f6c6343000811000a", + "bytecode": "0x608060405234801561000f575f80fd5b506040516101d53803806101d583398101604081905261002e91610143565b6040516302571be360e01b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e260048201525f906001600160a01b038416906302571be390602401602060405180830381865afa158015610092573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906100b6919061017b565b604051630f41a04d60e11b81526001600160a01b03848116600483015291925090821690631e83409a906024016020604051808303815f875af11580156100ff573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610123919061019d565b505050506101b4565b6001600160a01b0381168114610140575f80fd5b50565b5f8060408385031215610154575f80fd5b825161015f8161012c565b60208401519092506101708161012c565b809150509250929050565b5f6020828403121561018b575f80fd5b81516101968161012c565b9392505050565b5f602082840312156101ad575f80fd5b5051919050565b6015806101c05f395ff3fe60806040525f80fdfea164736f6c6343000818000a", + "deployedBytecode": "0x60806040525f80fdfea164736f6c6343000818000a", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/artifacts/ReverseRegistrar.json b/artifacts/ReverseRegistrar.json index 0c951511..0f10f41a 100644 --- a/artifacts/ReverseRegistrar.json +++ b/artifacts/ReverseRegistrar.json @@ -338,8 +338,8 @@ "type": "function" } ], - "bytecode": "0x60a060405234801561001057600080fd5b50604051610e6b380380610e6b83398101604081905261002f916101b4565b6100383361014c565b6001600160a01b03811660808190526040516302571be360e01b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26004820152600091906302571be390602401602060405180830381865afa1580156100a4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906100c891906101b4565b90506001600160a01b0381161561014557604051630f41a04d60e11b81523360048201526001600160a01b03821690631e83409a906024016020604051808303816000875af115801561011f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061014391906101d8565b505b50506101f1565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146101b157600080fd5b50565b6000602082840312156101c657600080fd5b81516101d18161019c565b9392505050565b6000602082840312156101ea57600080fd5b5051919050565b608051610c5161021a6000396000818161012d015281816102d701526104d50152610c516000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c80638da5cb5b1161008c578063c66485b211610066578063c66485b2146101e1578063da8c229e146101f4578063e0dba60f14610227578063f2fde38b1461023a57600080fd5b80638da5cb5b146101aa578063bffbe61c146101bb578063c47f0027146101ce57600080fd5b806365669631116100c85780636566963114610167578063715018a61461017a5780637a806d6b14610184578063828eab0e1461019757600080fd5b80630f5a5466146100ef5780631e83409a146101155780633f15457f14610128575b600080fd5b6101026100fd366004610982565b61024d565b6040519081526020015b60405180910390f35b6101026101233660046109bb565b610261565b61014f7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b03909116815260200161010c565b6101026101753660046109d8565b610283565b61018261053c565b005b610102610192366004610ac6565b610550565b60025461014f906001600160a01b031681565b6000546001600160a01b031661014f565b6101026101c93660046109bb565b6105cb565b6101026101dc366004610b3b565b610626565b6101826101ef3660046109bb565b610643565b6102176102023660046109bb565b60016020526000908152604090205460ff1681565b604051901515815260200161010c565b610182610235366004610b86565b610704565b6101826102483660046109bb565b61076b565b600061025a338484610283565b9392505050565b60025460009061027d90339084906001600160a01b0316610283565b92915050565b6000836001600160a01b0381163314806102ac57503360009081526001602052604090205460ff165b80610342575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000000000000000000000000000000000000000000000169063e985e9c590604401602060405180830381865afa15801561031e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103429190610bb4565b806103515750610351816107e4565b6103ee5760405162461bcd60e51b815260206004820152605b60248201527f526576657273655265676973747261723a2043616c6c6572206973206e6f742060448201527f6120636f6e74726f6c6c6572206f7220617574686f726973656420627920616460648201527f6472657373206f7220746865206164647265737320697473656c660000000000608482015260a4015b60405180910390fd5b60006103f98661085d565b604080517f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e2602080830191909152818301849052825180830384018152606090920192839052815191012091925081906001600160a01b038916907f6ada868dd3058cf77a48a74489fd7963688e5464b2b0fa957ace976243270e9290600090a36040516305ef2c7f60e41b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26004820152602481018390526001600160a01b0387811660448301528681166064830152600060848301527f00000000000000000000000000000000000000000000000000000000000000001690635ef2c7f09060a401600060405180830381600087803b15801561051957600080fd5b505af115801561052d573d6000803e3d6000fd5b50929998505050505050505050565b6105446108c3565b61054e600061091d565b565b60008061055e868686610283565b604051637737221360e01b81529091506001600160a01b0385169063773722139061058f9084908790600401610bd1565b600060405180830381600087803b1580156105a957600080fd5b505af11580156105bd573d6000803e3d6000fd5b509298975050505050505050565b60007f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26105f78361085d565b604080516020810193909352820152606001604051602081830303815290604052805190602001209050919050565b60025460009061027d90339081906001600160a01b031685610550565b61064b6108c3565b6001600160a01b0381166106ba5760405162461bcd60e51b815260206004820152603060248201527f526576657273655265676973747261723a205265736f6c76657220616464726560448201526f07373206d757374206e6f7420626520360841b60648201526084016103e5565b600280546001600160a01b0319166001600160a01b0383169081179091556040517feae17a84d9eb83d8c8eb317f9e7d64857bc363fa51674d996c023f4340c577cf90600090a250565b61070c6108c3565b6001600160a01b038216600081815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b6107736108c3565b6001600160a01b0381166107d85760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016103e5565b6107e18161091d565b50565b6000816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015610840575060408051601f3d908101601f1916820190925261083d91810190610c27565b60015b61084c57506000919050565b6001600160a01b0316331492915050565b600060285b80156108b757600019016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a8153601090920491600019016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a8153601083049250610862565b50506028600020919050565b6000546001600160a01b0316331461054e5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016103e5565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146107e157600080fd5b6000806040838503121561099557600080fd5b82356109a08161096d565b915060208301356109b08161096d565b809150509250929050565b6000602082840312156109cd57600080fd5b813561025a8161096d565b6000806000606084860312156109ed57600080fd5b83356109f88161096d565b92506020840135610a088161096d565b91506040840135610a188161096d565b809150509250925092565b634e487b7160e01b600052604160045260246000fd5b600082601f830112610a4a57600080fd5b813567ffffffffffffffff80821115610a6557610a65610a23565b604051601f8301601f19908116603f01168101908282118183101715610a8d57610a8d610a23565b81604052838152866020858801011115610aa657600080fd5b836020870160208301376000602085830101528094505050505092915050565b60008060008060808587031215610adc57600080fd5b8435610ae78161096d565b93506020850135610af78161096d565b92506040850135610b078161096d565b9150606085013567ffffffffffffffff811115610b2357600080fd5b610b2f87828801610a39565b91505092959194509250565b600060208284031215610b4d57600080fd5b813567ffffffffffffffff811115610b6457600080fd5b610b7084828501610a39565b949350505050565b80151581146107e157600080fd5b60008060408385031215610b9957600080fd5b8235610ba48161096d565b915060208301356109b081610b78565b600060208284031215610bc657600080fd5b815161025a81610b78565b82815260006020604081840152835180604085015260005b81811015610c0557858101830151858201606001528201610be9565b506000606082860101526060601f19601f830116850101925050509392505050565b600060208284031215610c3957600080fd5b815161025a8161096d56fea164736f6c6343000811000a", - "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100ea5760003560e01c80638da5cb5b1161008c578063c66485b211610066578063c66485b2146101e1578063da8c229e146101f4578063e0dba60f14610227578063f2fde38b1461023a57600080fd5b80638da5cb5b146101aa578063bffbe61c146101bb578063c47f0027146101ce57600080fd5b806365669631116100c85780636566963114610167578063715018a61461017a5780637a806d6b14610184578063828eab0e1461019757600080fd5b80630f5a5466146100ef5780631e83409a146101155780633f15457f14610128575b600080fd5b6101026100fd366004610982565b61024d565b6040519081526020015b60405180910390f35b6101026101233660046109bb565b610261565b61014f7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b03909116815260200161010c565b6101026101753660046109d8565b610283565b61018261053c565b005b610102610192366004610ac6565b610550565b60025461014f906001600160a01b031681565b6000546001600160a01b031661014f565b6101026101c93660046109bb565b6105cb565b6101026101dc366004610b3b565b610626565b6101826101ef3660046109bb565b610643565b6102176102023660046109bb565b60016020526000908152604090205460ff1681565b604051901515815260200161010c565b610182610235366004610b86565b610704565b6101826102483660046109bb565b61076b565b600061025a338484610283565b9392505050565b60025460009061027d90339084906001600160a01b0316610283565b92915050565b6000836001600160a01b0381163314806102ac57503360009081526001602052604090205460ff165b80610342575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000000000000000000000000000000000000000000000169063e985e9c590604401602060405180830381865afa15801561031e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103429190610bb4565b806103515750610351816107e4565b6103ee5760405162461bcd60e51b815260206004820152605b60248201527f526576657273655265676973747261723a2043616c6c6572206973206e6f742060448201527f6120636f6e74726f6c6c6572206f7220617574686f726973656420627920616460648201527f6472657373206f7220746865206164647265737320697473656c660000000000608482015260a4015b60405180910390fd5b60006103f98661085d565b604080517f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e2602080830191909152818301849052825180830384018152606090920192839052815191012091925081906001600160a01b038916907f6ada868dd3058cf77a48a74489fd7963688e5464b2b0fa957ace976243270e9290600090a36040516305ef2c7f60e41b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26004820152602481018390526001600160a01b0387811660448301528681166064830152600060848301527f00000000000000000000000000000000000000000000000000000000000000001690635ef2c7f09060a401600060405180830381600087803b15801561051957600080fd5b505af115801561052d573d6000803e3d6000fd5b50929998505050505050505050565b6105446108c3565b61054e600061091d565b565b60008061055e868686610283565b604051637737221360e01b81529091506001600160a01b0385169063773722139061058f9084908790600401610bd1565b600060405180830381600087803b1580156105a957600080fd5b505af11580156105bd573d6000803e3d6000fd5b509298975050505050505050565b60007f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26105f78361085d565b604080516020810193909352820152606001604051602081830303815290604052805190602001209050919050565b60025460009061027d90339081906001600160a01b031685610550565b61064b6108c3565b6001600160a01b0381166106ba5760405162461bcd60e51b815260206004820152603060248201527f526576657273655265676973747261723a205265736f6c76657220616464726560448201526f07373206d757374206e6f7420626520360841b60648201526084016103e5565b600280546001600160a01b0319166001600160a01b0383169081179091556040517feae17a84d9eb83d8c8eb317f9e7d64857bc363fa51674d996c023f4340c577cf90600090a250565b61070c6108c3565b6001600160a01b038216600081815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b6107736108c3565b6001600160a01b0381166107d85760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016103e5565b6107e18161091d565b50565b6000816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015610840575060408051601f3d908101601f1916820190925261083d91810190610c27565b60015b61084c57506000919050565b6001600160a01b0316331492915050565b600060285b80156108b757600019016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a8153601090920491600019016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a8153601083049250610862565b50506028600020919050565b6000546001600160a01b0316331461054e5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016103e5565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146107e157600080fd5b6000806040838503121561099557600080fd5b82356109a08161096d565b915060208301356109b08161096d565b809150509250929050565b6000602082840312156109cd57600080fd5b813561025a8161096d565b6000806000606084860312156109ed57600080fd5b83356109f88161096d565b92506020840135610a088161096d565b91506040840135610a188161096d565b809150509250925092565b634e487b7160e01b600052604160045260246000fd5b600082601f830112610a4a57600080fd5b813567ffffffffffffffff80821115610a6557610a65610a23565b604051601f8301601f19908116603f01168101908282118183101715610a8d57610a8d610a23565b81604052838152866020858801011115610aa657600080fd5b836020870160208301376000602085830101528094505050505092915050565b60008060008060808587031215610adc57600080fd5b8435610ae78161096d565b93506020850135610af78161096d565b92506040850135610b078161096d565b9150606085013567ffffffffffffffff811115610b2357600080fd5b610b2f87828801610a39565b91505092959194509250565b600060208284031215610b4d57600080fd5b813567ffffffffffffffff811115610b6457600080fd5b610b7084828501610a39565b949350505050565b80151581146107e157600080fd5b60008060408385031215610b9957600080fd5b8235610ba48161096d565b915060208301356109b081610b78565b600060208284031215610bc657600080fd5b815161025a81610b78565b82815260006020604081840152835180604085015260005b81811015610c0557858101830151858201606001528201610be9565b506000606082860101526060601f19601f830116850101925050509392505050565b600060208284031215610c3957600080fd5b815161025a8161096d56fea164736f6c6343000811000a", + "bytecode": "0x60a060405234801561000f575f80fd5b50604051610e14380380610e1483398101604081905261002e916101ab565b61003733610145565b6001600160a01b03811660808190526040516302571be360e01b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e260048201525f91906302571be390602401602060405180830381865afa1580156100a0573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906100c491906101ab565b90506001600160a01b0381161561013e57604051630f41a04d60e11b81523360048201526001600160a01b03821690631e83409a906024016020604051808303815f875af1158015610118573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061013c91906101cd565b505b50506101e4565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146101a8575f80fd5b50565b5f602082840312156101bb575f80fd5b81516101c681610194565b9392505050565b5f602082840312156101dd575f80fd5b5051919050565b608051610c0a61020a5f395f8181610127015281816102cb01526104c40152610c0a5ff3fe608060405234801561000f575f80fd5b50600436106100e5575f3560e01c80638da5cb5b11610088578063c66485b211610063578063c66485b2146101da578063da8c229e146101ed578063e0dba60f1461021f578063f2fde38b14610232575f80fd5b80638da5cb5b146101a4578063bffbe61c146101b4578063c47f0027146101c7575f80fd5b806365669631116100c35780636566963114610161578063715018a6146101745780637a806d6b1461017e578063828eab0e14610191575f80fd5b80630f5a5466146100e95780631e83409a1461010f5780633f15457f14610122575b5f80fd5b6100fc6100f7366004610958565b610245565b6040519081526020015b60405180910390f35b6100fc61011d36600461098f565b610258565b6101497f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610106565b6100fc61016f3660046109aa565b610279565b61017c610526565b005b6100fc61018c366004610a8f565b610539565b600254610149906001600160a01b031681565b5f546001600160a01b0316610149565b6100fc6101c236600461098f565b6105ae565b6100fc6101d5366004610b00565b610608565b61017c6101e836600461098f565b610624565b61020f6101fb36600461098f565b60016020525f908152604090205460ff1681565b6040519015158152602001610106565b61017c61022d366004610b47565b6106e4565b61017c61024036600461098f565b61074a565b5f610251338484610279565b9392505050565b6002545f9061027390339084906001600160a01b0316610279565b92915050565b5f836001600160a01b0381163314806102a05750335f9081526001602052604090205460ff165b80610334575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000000000000000000000000000000000000000000000169063e985e9c590604401602060405180830381865afa158015610310573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103349190610b73565b806103435750610343816107c3565b6103e05760405162461bcd60e51b815260206004820152605b60248201527f526576657273655265676973747261723a2043616c6c6572206973206e6f742060448201527f6120636f6e74726f6c6c6572206f7220617574686f726973656420627920616460648201527f6472657373206f7220746865206164647265737320697473656c660000000000608482015260a4015b60405180910390fd5b5f6103ea8661083a565b604080517f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e2602080830191909152818301849052825180830384018152606090920192839052815191012091925081906001600160a01b038916907f6ada868dd3058cf77a48a74489fd7963688e5464b2b0fa957ace976243270e92905f90a36040516305ef2c7f60e41b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26004820152602481018390526001600160a01b03878116604483015286811660648301525f60848301527f00000000000000000000000000000000000000000000000000000000000000001690635ef2c7f09060a4015f604051808303815f87803b158015610505575f80fd5b505af1158015610517573d5f803e3d5ffd5b50929998505050505050505050565b61052e61089c565b6105375f6108f5565b565b5f80610546868686610279565b604051637737221360e01b81529091506001600160a01b038516906377372213906105779084908790600401610b8e565b5f604051808303815f87803b15801561058e575f80fd5b505af11580156105a0573d5f803e3d5ffd5b509298975050505050505050565b5f7f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26105d98361083a565b604080516020810193909352820152606001604051602081830303815290604052805190602001209050919050565b6002545f9061027390339081906001600160a01b031685610539565b61062c61089c565b6001600160a01b03811661069b5760405162461bcd60e51b815260206004820152603060248201527f526576657273655265676973747261723a205265736f6c76657220616464726560448201526f07373206d757374206e6f7420626520360841b60648201526084016103d7565b600280546001600160a01b0319166001600160a01b0383169081179091556040517feae17a84d9eb83d8c8eb317f9e7d64857bc363fa51674d996c023f4340c577cf905f90a250565b6106ec61089c565b6001600160a01b0382165f81815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b61075261089c565b6001600160a01b0381166107b75760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016103d7565b6107c0816108f5565b50565b5f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801561081e575060408051601f3d908101601f1916820190925261081b91810190610be2565b60015b61082957505f919050565b6001600160a01b0316331492915050565b5f60285b8015610891575f19016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a81536010909204915f19016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a815360108304925061083e565b505060285f20919050565b5f546001600160a01b031633146105375760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016103d7565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146107c0575f80fd5b5f8060408385031215610969575f80fd5b823561097481610944565b9150602083013561098481610944565b809150509250929050565b5f6020828403121561099f575f80fd5b813561025181610944565b5f805f606084860312156109bc575f80fd5b83356109c781610944565b925060208401356109d781610944565b915060408401356109e781610944565b809150509250925092565b634e487b7160e01b5f52604160045260245ffd5b5f82601f830112610a15575f80fd5b813567ffffffffffffffff80821115610a3057610a306109f2565b604051601f8301601f19908116603f01168101908282118183101715610a5857610a586109f2565b81604052838152866020858801011115610a70575f80fd5b836020870160208301375f602085830101528094505050505092915050565b5f805f8060808587031215610aa2575f80fd5b8435610aad81610944565b93506020850135610abd81610944565b92506040850135610acd81610944565b9150606085013567ffffffffffffffff811115610ae8575f80fd5b610af487828801610a06565b91505092959194509250565b5f60208284031215610b10575f80fd5b813567ffffffffffffffff811115610b26575f80fd5b610b3284828501610a06565b949350505050565b80151581146107c0575f80fd5b5f8060408385031215610b58575f80fd5b8235610b6381610944565b9150602083013561098481610b3a565b5f60208284031215610b83575f80fd5b815161025181610b3a565b8281525f60206040602084015283518060408501525f5b81811015610bc157858101830151858201606001528201610ba5565b505f606082860101526060601f19601f830116850101925050509392505050565b5f60208284031215610bf2575f80fd5b81516102518161094456fea164736f6c6343000818000a", + "deployedBytecode": "0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c80638da5cb5b11610088578063c66485b211610063578063c66485b2146101da578063da8c229e146101ed578063e0dba60f1461021f578063f2fde38b14610232575f80fd5b80638da5cb5b146101a4578063bffbe61c146101b4578063c47f0027146101c7575f80fd5b806365669631116100c35780636566963114610161578063715018a6146101745780637a806d6b1461017e578063828eab0e14610191575f80fd5b80630f5a5466146100e95780631e83409a1461010f5780633f15457f14610122575b5f80fd5b6100fc6100f7366004610958565b610245565b6040519081526020015b60405180910390f35b6100fc61011d36600461098f565b610258565b6101497f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610106565b6100fc61016f3660046109aa565b610279565b61017c610526565b005b6100fc61018c366004610a8f565b610539565b600254610149906001600160a01b031681565b5f546001600160a01b0316610149565b6100fc6101c236600461098f565b6105ae565b6100fc6101d5366004610b00565b610608565b61017c6101e836600461098f565b610624565b61020f6101fb36600461098f565b60016020525f908152604090205460ff1681565b6040519015158152602001610106565b61017c61022d366004610b47565b6106e4565b61017c61024036600461098f565b61074a565b5f610251338484610279565b9392505050565b6002545f9061027390339084906001600160a01b0316610279565b92915050565b5f836001600160a01b0381163314806102a05750335f9081526001602052604090205460ff165b80610334575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000000000000000000000000000000000000000000000169063e985e9c590604401602060405180830381865afa158015610310573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103349190610b73565b806103435750610343816107c3565b6103e05760405162461bcd60e51b815260206004820152605b60248201527f526576657273655265676973747261723a2043616c6c6572206973206e6f742060448201527f6120636f6e74726f6c6c6572206f7220617574686f726973656420627920616460648201527f6472657373206f7220746865206164647265737320697473656c660000000000608482015260a4015b60405180910390fd5b5f6103ea8661083a565b604080517f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e2602080830191909152818301849052825180830384018152606090920192839052815191012091925081906001600160a01b038916907f6ada868dd3058cf77a48a74489fd7963688e5464b2b0fa957ace976243270e92905f90a36040516305ef2c7f60e41b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26004820152602481018390526001600160a01b03878116604483015286811660648301525f60848301527f00000000000000000000000000000000000000000000000000000000000000001690635ef2c7f09060a4015f604051808303815f87803b158015610505575f80fd5b505af1158015610517573d5f803e3d5ffd5b50929998505050505050505050565b61052e61089c565b6105375f6108f5565b565b5f80610546868686610279565b604051637737221360e01b81529091506001600160a01b038516906377372213906105779084908790600401610b8e565b5f604051808303815f87803b15801561058e575f80fd5b505af11580156105a0573d5f803e3d5ffd5b509298975050505050505050565b5f7f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26105d98361083a565b604080516020810193909352820152606001604051602081830303815290604052805190602001209050919050565b6002545f9061027390339081906001600160a01b031685610539565b61062c61089c565b6001600160a01b03811661069b5760405162461bcd60e51b815260206004820152603060248201527f526576657273655265676973747261723a205265736f6c76657220616464726560448201526f07373206d757374206e6f7420626520360841b60648201526084016103d7565b600280546001600160a01b0319166001600160a01b0383169081179091556040517feae17a84d9eb83d8c8eb317f9e7d64857bc363fa51674d996c023f4340c577cf905f90a250565b6106ec61089c565b6001600160a01b0382165f81815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b61075261089c565b6001600160a01b0381166107b75760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016103d7565b6107c0816108f5565b50565b5f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801561081e575060408051601f3d908101601f1916820190925261081b91810190610be2565b60015b61082957505f919050565b6001600160a01b0316331492915050565b5f60285b8015610891575f19016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a81536010909204915f19016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a815360108304925061083e565b505060285f20919050565b5f546001600160a01b031633146105375760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016103d7565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146107c0575f80fd5b5f8060408385031215610969575f80fd5b823561097481610944565b9150602083013561098481610944565b809150509250929050565b5f6020828403121561099f575f80fd5b813561025181610944565b5f805f606084860312156109bc575f80fd5b83356109c781610944565b925060208401356109d781610944565b915060408401356109e781610944565b809150509250925092565b634e487b7160e01b5f52604160045260245ffd5b5f82601f830112610a15575f80fd5b813567ffffffffffffffff80821115610a3057610a306109f2565b604051601f8301601f19908116603f01168101908282118183101715610a5857610a586109f2565b81604052838152866020858801011115610a70575f80fd5b836020870160208301375f602085830101528094505050505092915050565b5f805f8060808587031215610aa2575f80fd5b8435610aad81610944565b93506020850135610abd81610944565b92506040850135610acd81610944565b9150606085013567ffffffffffffffff811115610ae8575f80fd5b610af487828801610a06565b91505092959194509250565b5f60208284031215610b10575f80fd5b813567ffffffffffffffff811115610b26575f80fd5b610b3284828501610a06565b949350505050565b80151581146107c0575f80fd5b5f8060408385031215610b58575f80fd5b8235610b6381610944565b9150602083013561098481610b3a565b5f60208284031215610b83575f80fd5b815161025181610b3a565b8281525f60206040602084015283518060408501525f5b81811015610bc157858101830151858201606001528201610ba5565b505f606082860101526060601f19601f830116850101925050509392505050565b5f60208284031215610bf2575f80fd5b81516102518161094456fea164736f6c6343000818000a", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/artifacts/Root.json b/artifacts/Root.json index 58a6d0ba..090bdee0 100644 --- a/artifacts/Root.json +++ b/artifacts/Root.json @@ -231,8 +231,8 @@ "type": "function" } ], - "bytecode": "0x608060405234801561001057600080fd5b5060405161073e38038061073e83398101604081905261002f916100ad565b6100383361005d565b600280546001600160a01b0319166001600160a01b03929092169190911790556100dd565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000602082840312156100bf57600080fd5b81516001600160a01b03811681146100d657600080fd5b9392505050565b610652806100ec6000396000f3fe608060405234801561001057600080fd5b50600436106100a95760003560e01c80638cb8ecec116100715780638cb8ecec146101425780638da5cb5b14610155578063cbe9e76414610166578063da8c229e14610189578063e0dba60f146101ac578063f2fde38b146101bf57600080fd5b806301670ba9146100ae57806301ffc9a7146100c35780633f15457f146100fc5780634e543b2614610127578063715018a61461013a575b600080fd5b6100c16100bc366004610543565b6101d2565b005b6100e76100d136600461055c565b6001600160e01b0319166301ffc9a760e01b1490565b60405190151581526020015b60405180910390f35b60025461010f906001600160a01b031681565b6040516001600160a01b0390911681526020016100f3565b6100c16101353660046105a9565b610220565b6100c1610291565b6100c16101503660046105c4565b6102a5565b6000546001600160a01b031661010f565b6100e7610174366004610543565b60036020526000908152604090205460ff1681565b6100e76101973660046105a9565b60016020526000908152604090205460ff1681565b6100c16101ba3660046105f0565b6103b9565b6100c16101cd3660046105a9565b610420565b6101da610499565b60405181907f1764176cfa565853ba1ded547a830a9f9bff95231ef6fd228b3ddd617577756990600090a26000908152600360205260409020805460ff19166001179055565b610228610499565b600254604051630c4b7b8560e11b8152600060048201526001600160a01b03838116602483015290911690631896f70a90604401600060405180830381600087803b15801561027657600080fd5b505af115801561028a573d6000803e3d6000fd5b5050505050565b610299610499565b6102a360006104f3565b565b3360009081526001602052604090205460ff1661031a5760405162461bcd60e51b815260206004820152602860248201527f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f604482015267373a3937b63632b960c11b60648201526084015b60405180910390fd5b60008281526003602052604090205460ff161561033657600080fd5b6002546040516306ab592360e01b815260006004820152602481018490526001600160a01b038381166044830152909116906306ab5923906064016020604051808303816000875af1158015610390573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103b4919061062c565b505050565b6103c1610499565b6001600160a01b038216600081815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b610428610499565b6001600160a01b03811661048d5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610311565b610496816104f3565b50565b6000546001600160a01b031633146102a35760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610311565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60006020828403121561055557600080fd5b5035919050565b60006020828403121561056e57600080fd5b81356001600160e01b03198116811461058657600080fd5b9392505050565b80356001600160a01b03811681146105a457600080fd5b919050565b6000602082840312156105bb57600080fd5b6105868261058d565b600080604083850312156105d757600080fd5b823591506105e76020840161058d565b90509250929050565b6000806040838503121561060357600080fd5b61060c8361058d565b91506020830135801515811461062157600080fd5b809150509250929050565b60006020828403121561063e57600080fd5b505191905056fea164736f6c6343000811000a", - "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100a95760003560e01c80638cb8ecec116100715780638cb8ecec146101425780638da5cb5b14610155578063cbe9e76414610166578063da8c229e14610189578063e0dba60f146101ac578063f2fde38b146101bf57600080fd5b806301670ba9146100ae57806301ffc9a7146100c35780633f15457f146100fc5780634e543b2614610127578063715018a61461013a575b600080fd5b6100c16100bc366004610543565b6101d2565b005b6100e76100d136600461055c565b6001600160e01b0319166301ffc9a760e01b1490565b60405190151581526020015b60405180910390f35b60025461010f906001600160a01b031681565b6040516001600160a01b0390911681526020016100f3565b6100c16101353660046105a9565b610220565b6100c1610291565b6100c16101503660046105c4565b6102a5565b6000546001600160a01b031661010f565b6100e7610174366004610543565b60036020526000908152604090205460ff1681565b6100e76101973660046105a9565b60016020526000908152604090205460ff1681565b6100c16101ba3660046105f0565b6103b9565b6100c16101cd3660046105a9565b610420565b6101da610499565b60405181907f1764176cfa565853ba1ded547a830a9f9bff95231ef6fd228b3ddd617577756990600090a26000908152600360205260409020805460ff19166001179055565b610228610499565b600254604051630c4b7b8560e11b8152600060048201526001600160a01b03838116602483015290911690631896f70a90604401600060405180830381600087803b15801561027657600080fd5b505af115801561028a573d6000803e3d6000fd5b5050505050565b610299610499565b6102a360006104f3565b565b3360009081526001602052604090205460ff1661031a5760405162461bcd60e51b815260206004820152602860248201527f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f604482015267373a3937b63632b960c11b60648201526084015b60405180910390fd5b60008281526003602052604090205460ff161561033657600080fd5b6002546040516306ab592360e01b815260006004820152602481018490526001600160a01b038381166044830152909116906306ab5923906064016020604051808303816000875af1158015610390573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103b4919061062c565b505050565b6103c1610499565b6001600160a01b038216600081815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b610428610499565b6001600160a01b03811661048d5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610311565b610496816104f3565b50565b6000546001600160a01b031633146102a35760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610311565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60006020828403121561055557600080fd5b5035919050565b60006020828403121561056e57600080fd5b81356001600160e01b03198116811461058657600080fd5b9392505050565b80356001600160a01b03811681146105a457600080fd5b919050565b6000602082840312156105bb57600080fd5b6105868261058d565b600080604083850312156105d757600080fd5b823591506105e76020840161058d565b90509250929050565b6000806040838503121561060357600080fd5b61060c8361058d565b91506020830135801515811461062157600080fd5b809150509250929050565b60006020828403121561063e57600080fd5b505191905056fea164736f6c6343000811000a", + "bytecode": "0x608060405234801561000f575f80fd5b5060405161070e38038061070e83398101604081905261002e916100ab565b6100373361005c565b600280546001600160a01b0319166001600160a01b03929092169190911790556100d8565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f602082840312156100bb575f80fd5b81516001600160a01b03811681146100d1575f80fd5b9392505050565b610629806100e55f395ff3fe608060405234801561000f575f80fd5b50600436106100a6575f3560e01c80638cb8ecec1161006e5780638cb8ecec1461013e5780638da5cb5b14610151578063cbe9e76414610161578063da8c229e14610183578063e0dba60f146101a5578063f2fde38b146101b8575f80fd5b806301670ba9146100aa57806301ffc9a7146100bf5780633f15457f146100f85780634e543b2614610123578063715018a614610136575b5f80fd5b6100bd6100b8366004610529565b6101cb565b005b6100e36100cd366004610540565b6001600160e01b0319166301ffc9a760e01b1490565b60405190151581526020015b60405180910390f35b60025461010b906001600160a01b031681565b6040516001600160a01b0390911681526020016100ef565b6100bd610131366004610589565b610217565b6100bd610282565b6100bd61014c3660046105a2565b610295565b5f546001600160a01b031661010b565b6100e361016f366004610529565b60036020525f908152604090205460ff1681565b6100e3610191366004610589565b60016020525f908152604090205460ff1681565b6100bd6101b33660046105cc565b6103a2565b6100bd6101c6366004610589565b610408565b6101d3610481565b60405181907f1764176cfa565853ba1ded547a830a9f9bff95231ef6fd228b3ddd6175777569905f90a25f908152600360205260409020805460ff19166001179055565b61021f610481565b600254604051630c4b7b8560e11b81525f60048201526001600160a01b03838116602483015290911690631896f70a906044015f604051808303815f87803b158015610269575f80fd5b505af115801561027b573d5f803e3d5ffd5b5050505050565b61028a610481565b6102935f6104da565b565b335f9081526001602052604090205460ff166103095760405162461bcd60e51b815260206004820152602860248201527f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f604482015267373a3937b63632b960c11b60648201526084015b60405180910390fd5b5f8281526003602052604090205460ff1615610323575f80fd5b6002546040516306ab592360e01b81525f6004820152602481018490526001600160a01b038381166044830152909116906306ab5923906064016020604051808303815f875af1158015610379573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061039d9190610605565b505050565b6103aa610481565b6001600160a01b0382165f81815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b610410610481565b6001600160a01b0381166104755760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610300565b61047e816104da565b50565b5f546001600160a01b031633146102935760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610300565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f60208284031215610539575f80fd5b5035919050565b5f60208284031215610550575f80fd5b81356001600160e01b031981168114610567575f80fd5b9392505050565b80356001600160a01b0381168114610584575f80fd5b919050565b5f60208284031215610599575f80fd5b6105678261056e565b5f80604083850312156105b3575f80fd5b823591506105c36020840161056e565b90509250929050565b5f80604083850312156105dd575f80fd5b6105e68361056e565b9150602083013580151581146105fa575f80fd5b809150509250929050565b5f60208284031215610615575f80fd5b505191905056fea164736f6c6343000818000a", + "deployedBytecode": "0x608060405234801561000f575f80fd5b50600436106100a6575f3560e01c80638cb8ecec1161006e5780638cb8ecec1461013e5780638da5cb5b14610151578063cbe9e76414610161578063da8c229e14610183578063e0dba60f146101a5578063f2fde38b146101b8575f80fd5b806301670ba9146100aa57806301ffc9a7146100bf5780633f15457f146100f85780634e543b2614610123578063715018a614610136575b5f80fd5b6100bd6100b8366004610529565b6101cb565b005b6100e36100cd366004610540565b6001600160e01b0319166301ffc9a760e01b1490565b60405190151581526020015b60405180910390f35b60025461010b906001600160a01b031681565b6040516001600160a01b0390911681526020016100ef565b6100bd610131366004610589565b610217565b6100bd610282565b6100bd61014c3660046105a2565b610295565b5f546001600160a01b031661010b565b6100e361016f366004610529565b60036020525f908152604090205460ff1681565b6100e3610191366004610589565b60016020525f908152604090205460ff1681565b6100bd6101b33660046105cc565b6103a2565b6100bd6101c6366004610589565b610408565b6101d3610481565b60405181907f1764176cfa565853ba1ded547a830a9f9bff95231ef6fd228b3ddd6175777569905f90a25f908152600360205260409020805460ff19166001179055565b61021f610481565b600254604051630c4b7b8560e11b81525f60048201526001600160a01b03838116602483015290911690631896f70a906044015f604051808303815f87803b158015610269575f80fd5b505af115801561027b573d5f803e3d5ffd5b5050505050565b61028a610481565b6102935f6104da565b565b335f9081526001602052604090205460ff166103095760405162461bcd60e51b815260206004820152602860248201527f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f604482015267373a3937b63632b960c11b60648201526084015b60405180910390fd5b5f8281526003602052604090205460ff1615610323575f80fd5b6002546040516306ab592360e01b81525f6004820152602481018490526001600160a01b038381166044830152909116906306ab5923906064016020604051808303815f875af1158015610379573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061039d9190610605565b505050565b6103aa610481565b6001600160a01b0382165f81815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b610410610481565b6001600160a01b0381166104755760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610300565b61047e816104da565b50565b5f546001600160a01b031633146102935760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610300565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f60208284031215610539575f80fd5b5035919050565b5f60208284031215610550575f80fd5b81356001600160e01b031981168114610567575f80fd5b9392505050565b80356001600160a01b0381168114610584575f80fd5b919050565b5f60208284031215610599575f80fd5b6105678261056e565b5f80604083850312156105b3575f80fd5b823591506105c36020840161056e565b90509250929050565b5f80604083850312156105dd575f80fd5b6105e68361056e565b9150602083013580151581146105fa575f80fd5b809150509250929050565b5f60208284031215610615575f80fd5b505191905056fea164736f6c6343000818000a", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/artifacts/SHA1.json b/artifacts/SHA1.json index eea941e0..ddb7bf77 100644 --- a/artifacts/SHA1.json +++ b/artifacts/SHA1.json @@ -17,8 +17,8 @@ "type": "event" } ], - "bytecode": "0x602d6037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea164736f6c6343000811000a", - "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea164736f6c6343000811000a", + "bytecode": "0x602c6032600b8282823980515f1a607314602657634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe730000000000000000000000000000000000000000301460806040525f80fdfea164736f6c6343000818000a", + "deployedBytecode": "0x730000000000000000000000000000000000000000301460806040525f80fdfea164736f6c6343000818000a", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/artifacts/SHA1Digest.json b/artifacts/SHA1Digest.json index ccb1fdc4..653fa2ca 100644 --- a/artifacts/SHA1Digest.json +++ b/artifacts/SHA1Digest.json @@ -28,8 +28,8 @@ "type": "function" } ], - "bytecode": "0x608060405234801561001057600080fd5b5061066f806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063f7e83aee14610030575b600080fd5b61004361003e3660046105cf565b610057565b604051901515815260200160405180910390f35b6000601482146100ad5760405162461bcd60e51b815260206004820152601860248201527f496e76616c696420736861312068617368206c656e6774680000000000000000604482015260640160405180910390fd5b60006100f3600085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092939250506101629050565b6bffffffffffffffffffffffff19169050600061014587878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061019592505050565b6bffffffffffffffffffffffff1916919091149695505050505050565b815160009061017283601461063b565b111561017d57600080fd5b5001602001516bffffffffffffffffffffffff191690565b60006040518251602084019350604067ffffffffffffffc0600183011601600982820310600181036101c8576040820191505b50776745230100efcdab890098badcfe001032547600c3d2e1f061021b565b600083831015610214575080820151928290039260208410156102145760001960208590036101000a0119165b9392505050565b60005b82811015610525576102318482896101e7565b85526102418460208301896101e7565b60208601526040818503106001810361025d5760808286038701535b506040830381146001810361027a57602086018051600887021790525b5060405b608081101561030257858101603f19810151603719820151601f19830151600b198401516002911891909218189081027ffffffffefffffffefffffffefffffffefffffffefffffffefffffffefffffffe1663800000009091047c010000000100000001000000010000000100000001000000010000000116179052600c0161027e565b5060805b61014081101561038b57858101607f19810151606f19820151603f198301516017198401516004911891909218189081027ffffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffc1663400000009091047c030000000300000003000000030000000300000003000000030000000316179052601801610306565b508160008060005b60508110156104fb576014810480156103c357600181146103ea576002811461040f57600381146104395761045a565b600160281b8504600160501b86048118600160781b870416189350635a827999925061045a565b600160281b8504600160781b8604600160501b870418189350636ed9eba1925061045a565b600160501b8504600160781b8604818117600160281b8804169116179350638f1bbcdc925061045a565b600160281b8504600160781b8604600160501b87041818935063ca62c1d692505b50601f600160bb1b8504168063ffffffe06001609b1b87041617905080840190508063ffffffff8616019050808301905080600160e01b600484028c015104019050600160a01b8102600160281b860417945050600160501b633fffffff600160521b86041663c00000006604000000000000870416170277ffffffff00ffffffff000000000000ffffffff00ffffffff8516179350600181019050610393565b5050509190910177ffffffff00ffffffff00ffffffff00ffffffff00ffffffff169060400161021e565b50600160601b63ffffffff821667ffffffff000000006101008404166bffffffff00000000000000006201000085041663ffffffff60601b630100000086041663ffffffff60801b6401000000008704161717171702945050505050919050565b60008083601f84011261059857600080fd5b50813567ffffffffffffffff8111156105b057600080fd5b6020830191508360208285010111156105c857600080fd5b9250929050565b600080600080604085870312156105e557600080fd5b843567ffffffffffffffff808211156105fd57600080fd5b61060988838901610586565b9096509450602087013591508082111561062257600080fd5b5061062f87828801610586565b95989497509550505050565b8082018082111561065c57634e487b7160e01b600052601160045260246000fd5b9291505056fea164736f6c6343000811000a", - "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061002b5760003560e01c8063f7e83aee14610030575b600080fd5b61004361003e3660046105cf565b610057565b604051901515815260200160405180910390f35b6000601482146100ad5760405162461bcd60e51b815260206004820152601860248201527f496e76616c696420736861312068617368206c656e6774680000000000000000604482015260640160405180910390fd5b60006100f3600085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092939250506101629050565b6bffffffffffffffffffffffff19169050600061014587878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061019592505050565b6bffffffffffffffffffffffff1916919091149695505050505050565b815160009061017283601461063b565b111561017d57600080fd5b5001602001516bffffffffffffffffffffffff191690565b60006040518251602084019350604067ffffffffffffffc0600183011601600982820310600181036101c8576040820191505b50776745230100efcdab890098badcfe001032547600c3d2e1f061021b565b600083831015610214575080820151928290039260208410156102145760001960208590036101000a0119165b9392505050565b60005b82811015610525576102318482896101e7565b85526102418460208301896101e7565b60208601526040818503106001810361025d5760808286038701535b506040830381146001810361027a57602086018051600887021790525b5060405b608081101561030257858101603f19810151603719820151601f19830151600b198401516002911891909218189081027ffffffffefffffffefffffffefffffffefffffffefffffffefffffffefffffffe1663800000009091047c010000000100000001000000010000000100000001000000010000000116179052600c0161027e565b5060805b61014081101561038b57858101607f19810151606f19820151603f198301516017198401516004911891909218189081027ffffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffc1663400000009091047c030000000300000003000000030000000300000003000000030000000316179052601801610306565b508160008060005b60508110156104fb576014810480156103c357600181146103ea576002811461040f57600381146104395761045a565b600160281b8504600160501b86048118600160781b870416189350635a827999925061045a565b600160281b8504600160781b8604600160501b870418189350636ed9eba1925061045a565b600160501b8504600160781b8604818117600160281b8804169116179350638f1bbcdc925061045a565b600160281b8504600160781b8604600160501b87041818935063ca62c1d692505b50601f600160bb1b8504168063ffffffe06001609b1b87041617905080840190508063ffffffff8616019050808301905080600160e01b600484028c015104019050600160a01b8102600160281b860417945050600160501b633fffffff600160521b86041663c00000006604000000000000870416170277ffffffff00ffffffff000000000000ffffffff00ffffffff8516179350600181019050610393565b5050509190910177ffffffff00ffffffff00ffffffff00ffffffff00ffffffff169060400161021e565b50600160601b63ffffffff821667ffffffff000000006101008404166bffffffff00000000000000006201000085041663ffffffff60601b630100000086041663ffffffff60801b6401000000008704161717171702945050505050919050565b60008083601f84011261059857600080fd5b50813567ffffffffffffffff8111156105b057600080fd5b6020830191508360208285010111156105c857600080fd5b9250929050565b600080600080604085870312156105e557600080fd5b843567ffffffffffffffff808211156105fd57600080fd5b61060988838901610586565b9096509450602087013591508082111561062257600080fd5b5061062f87828801610586565b95989497509550505050565b8082018082111561065c57634e487b7160e01b600052601160045260246000fd5b9291505056fea164736f6c6343000811000a", + "bytecode": "0x608060405234801561000f575f80fd5b506106538061001d5f395ff3fe608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f7e83aee1461002d575b5f80fd5b61004061003b3660046105ba565b610054565b604051901515815260200160405180910390f35b5f601482146100a95760405162461bcd60e51b815260206004820152601860248201527f496e76616c696420736861312068617368206c656e6774680000000000000000604482015260640160405180910390fd5b5f6100ec5f85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101599050565b6bffffffffffffffffffffffff191690505f61013c87878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061018a92505050565b6bffffffffffffffffffffffff1916919091149695505050505050565b81515f90610168836014610621565b1115610172575f80fd5b5001602001516bffffffffffffffffffffffff191690565b5f6040518251602084019350604067ffffffffffffffc0600183011601600982820310600181036101bc576040820191505b50776745230100efcdab890098badcfe001032547600c3d2e1f061020d565b5f8383101561020657508082015192829003926020841015610206575f1960208590036101000a0119165b9392505050565b5f5b82811015610514576102228482896101db565b85526102328460208301896101db565b60208601526040818503106001810361024e5760808286038701535b506040830381146001810361026b57602086018051600887021790525b5060405b60808110156102f357858101603f19810151603719820151601f19830151600b198401516002911891909218189081027ffffffffefffffffefffffffefffffffefffffffefffffffefffffffefffffffe1663800000009091047c010000000100000001000000010000000100000001000000010000000116179052600c0161026f565b5060805b61014081101561037c57858101607f19810151606f19820151603f198301516017198401516004911891909218189081027ffffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffc1663400000009091047c0300000003000000030000000300000003000000030000000300000003161790526018016102f7565b50815f805f5b60508110156104ea576014810480156103b257600181146103d957600281146103fe576003811461042857610449565b600160281b8504600160501b86048118600160781b870416189350635a8279999250610449565b600160281b8504600160781b8604600160501b870418189350636ed9eba19250610449565b600160501b8504600160781b8604818117600160281b8804169116179350638f1bbcdc9250610449565b600160281b8504600160781b8604600160501b87041818935063ca62c1d692505b50601f600160bb1b8504168063ffffffe06001609b1b87041617905080840190508063ffffffff8616019050808301905080600160e01b600484028c015104019050600160a01b8102600160281b860417945050600160501b633fffffff600160521b86041663c00000006604000000000000870416170277ffffffff00ffffffff000000000000ffffffff00ffffffff8516179350600181019050610382565b5050509190910177ffffffff00ffffffff00ffffffff00ffffffff00ffffffff169060400161020f565b50600160601b63ffffffff821667ffffffff000000006101008404166bffffffff00000000000000006201000085041663ffffffff60601b630100000086041663ffffffff60801b6401000000008704161717171702945050505050919050565b5f8083601f840112610585575f80fd5b50813567ffffffffffffffff81111561059c575f80fd5b6020830191508360208285010111156105b3575f80fd5b9250929050565b5f805f80604085870312156105cd575f80fd5b843567ffffffffffffffff808211156105e4575f80fd5b6105f088838901610575565b90965094506020870135915080821115610608575f80fd5b5061061587828801610575565b95989497509550505050565b8082018082111561064057634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a", + "deployedBytecode": "0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f7e83aee1461002d575b5f80fd5b61004061003b3660046105ba565b610054565b604051901515815260200160405180910390f35b5f601482146100a95760405162461bcd60e51b815260206004820152601860248201527f496e76616c696420736861312068617368206c656e6774680000000000000000604482015260640160405180910390fd5b5f6100ec5f85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101599050565b6bffffffffffffffffffffffff191690505f61013c87878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061018a92505050565b6bffffffffffffffffffffffff1916919091149695505050505050565b81515f90610168836014610621565b1115610172575f80fd5b5001602001516bffffffffffffffffffffffff191690565b5f6040518251602084019350604067ffffffffffffffc0600183011601600982820310600181036101bc576040820191505b50776745230100efcdab890098badcfe001032547600c3d2e1f061020d565b5f8383101561020657508082015192829003926020841015610206575f1960208590036101000a0119165b9392505050565b5f5b82811015610514576102228482896101db565b85526102328460208301896101db565b60208601526040818503106001810361024e5760808286038701535b506040830381146001810361026b57602086018051600887021790525b5060405b60808110156102f357858101603f19810151603719820151601f19830151600b198401516002911891909218189081027ffffffffefffffffefffffffefffffffefffffffefffffffefffffffefffffffe1663800000009091047c010000000100000001000000010000000100000001000000010000000116179052600c0161026f565b5060805b61014081101561037c57858101607f19810151606f19820151603f198301516017198401516004911891909218189081027ffffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffc1663400000009091047c0300000003000000030000000300000003000000030000000300000003161790526018016102f7565b50815f805f5b60508110156104ea576014810480156103b257600181146103d957600281146103fe576003811461042857610449565b600160281b8504600160501b86048118600160781b870416189350635a8279999250610449565b600160281b8504600160781b8604600160501b870418189350636ed9eba19250610449565b600160501b8504600160781b8604818117600160281b8804169116179350638f1bbcdc9250610449565b600160281b8504600160781b8604600160501b87041818935063ca62c1d692505b50601f600160bb1b8504168063ffffffe06001609b1b87041617905080840190508063ffffffff8616019050808301905080600160e01b600484028c015104019050600160a01b8102600160281b860417945050600160501b633fffffff600160521b86041663c00000006604000000000000870416170277ffffffff00ffffffff000000000000ffffffff00ffffffff8516179350600181019050610382565b5050509190910177ffffffff00ffffffff00ffffffff00ffffffff00ffffffff169060400161020f565b50600160601b63ffffffff821667ffffffff000000006101008404166bffffffff00000000000000006201000085041663ffffffff60601b630100000086041663ffffffff60801b6401000000008704161717171702945050505050919050565b5f8083601f840112610585575f80fd5b50813567ffffffffffffffff81111561059c575f80fd5b6020830191508360208285010111156105b3575f80fd5b9250929050565b5f805f80604085870312156105cd575f80fd5b843567ffffffffffffffff808211156105e4575f80fd5b6105f088838901610575565b90965094506020870135915080821115610608575f80fd5b5061061587828801610575565b95989497509550505050565b8082018082111561064057634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/artifacts/SHA1NSEC3Digest.json b/artifacts/SHA1NSEC3Digest.json index 627f285e..5cca42ab 100644 --- a/artifacts/SHA1NSEC3Digest.json +++ b/artifacts/SHA1NSEC3Digest.json @@ -33,8 +33,8 @@ "type": "function" } ], - "bytecode": "0x608060405234801561001057600080fd5b506109c9806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c806368f9dab214610030575b600080fd5b61004361003e3660046108ba565b610055565b60405190815260200160405180910390f35b6000610074604051806040016040528060608152602001600081525090565b6100936100818588610944565b61008c906010610944565b82906101e9565b506100d685858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525085939250506102549050565b5061011987878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525085939250506102549050565b5060006101298260000151610282565b905083156101d457604080518082019091526060815260006020909101819052825152610157826000610672565b5061019a88888080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525086939250506102549050565b5060005b848110156101d2576101b2836000846106a2565b5082516101be90610282565b9150806101ca81610957565b91505061019e565b505b6001600160601b031916979650505050505050565b604080518082019091526060815260006020820152610209602083610970565b1561023157610219602083610970565b610224906020610992565b61022e9083610944565b91505b506020808301829052604080518085526000815283019091019052815b92915050565b60408051808201909152606081526000602082015261027b838460000151518485516106d6565b9392505050565b60006040518251602084019350604067ffffffffffffffc0600183011601600982820310600181036102b5576040820191505b50776745230100efcdab890098badcfe001032547600c3d2e1f0610307565b60008383101561027b5750808201519282900392602084101561027b5760001960208590036101000a0119169392505050565b60005b828110156106115761031d8482896102d4565b855261032d8460208301896102d4565b6020860152604081850310600181036103495760808286038701535b506040830381146001810361036657602086018051600887021790525b5060405b60808110156103ee57858101603f19810151603719820151601f19830151600b198401516002911891909218189081027ffffffffefffffffefffffffefffffffefffffffefffffffefffffffefffffffe1663800000009091047c010000000100000001000000010000000100000001000000010000000116179052600c0161036a565b5060805b61014081101561047757858101607f19810151606f19820151603f198301516017198401516004911891909218189081027ffffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffc1663400000009091047c0300000003000000030000000300000003000000030000000300000003161790526018016103f2565b508160008060005b60508110156105e7576014810480156104af57600181146104d657600281146104fb576003811461052557610546565b600160281b8504600160501b86048118600160781b870416189350635a8279999250610546565b600160281b8504600160781b8604600160501b870418189350636ed9eba19250610546565b600160501b8504600160781b8604818117600160281b8804169116179350638f1bbcdc9250610546565b600160281b8504600160781b8604600160501b87041818935063ca62c1d692505b50601f600160bb1b8504168063ffffffe06001609b1b87041617905080840190508063ffffffff8616019050808301905080600160e01b600484028c015104019050600160a01b8102600160281b860417945050600160501b633fffffff600160521b86041663c00000006604000000000000870416170277ffffffff00ffffffff000000000000ffffffff00ffffffff851617935060018101905061047f565b5050509190910177ffffffff00ffffffff00ffffffff00ffffffff00ffffffff169060400161030a565b50600160601b63ffffffff821667ffffffff000000006101008404166bffffffff00000000000000006201000085041663ffffffff60601b630100000086041663ffffffff60801b6401000000008704161717171702945050505050919050565b60408051808201909152606081526000602082015282515161027b9084906001600160601b0319851660146107c0565b6040805180820190915260608152600060208201526106ce84846001600160601b0319851660146107c0565b949350505050565b60408051808201909152606081526000602082015282518211156106f957600080fd5b60208501516107088386610944565b111561073b5761073b8561072b876020015187866107269190610944565b61083d565b6107369060026109a5565b610854565b60008086518051876020830101935080888701111561075a5787860182525b505050602084015b6020841061079a5780518252610779602083610944565b9150610786602082610944565b9050610793602085610992565b9350610762565b51815160001960208690036101000a019081169019919091161790525083949350505050565b60408051808201909152606081526000602082015260208501516107e48584610944565b11156107f8576107f88561072b8685610944565b60006001836101000a0390508260200360080284901c93508551838682010185831982511617815250805184870111156108325783860181525b509495945050505050565b60008183111561084e57508161024e565b50919050565b815161086083836101e9565b5061086b8382610254565b50505050565b60008083601f84011261088357600080fd5b50813567ffffffffffffffff81111561089b57600080fd5b6020830191508360208285010111156108b357600080fd5b9250929050565b6000806000806000606086880312156108d257600080fd5b853567ffffffffffffffff808211156108ea57600080fd5b6108f689838a01610871565b9097509550602088013591508082111561090f57600080fd5b5061091c88828901610871565b96999598509660400135949350505050565b634e487b7160e01b600052601160045260246000fd5b8082018082111561024e5761024e61092e565b6000600182016109695761096961092e565b5060010190565b60008261098d57634e487b7160e01b600052601260045260246000fd5b500690565b8181038181111561024e5761024e61092e565b808202811582820484141761024e5761024e61092e56fea164736f6c6343000811000a", - "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061002b5760003560e01c806368f9dab214610030575b600080fd5b61004361003e3660046108ba565b610055565b60405190815260200160405180910390f35b6000610074604051806040016040528060608152602001600081525090565b6100936100818588610944565b61008c906010610944565b82906101e9565b506100d685858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525085939250506102549050565b5061011987878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525085939250506102549050565b5060006101298260000151610282565b905083156101d457604080518082019091526060815260006020909101819052825152610157826000610672565b5061019a88888080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525086939250506102549050565b5060005b848110156101d2576101b2836000846106a2565b5082516101be90610282565b9150806101ca81610957565b91505061019e565b505b6001600160601b031916979650505050505050565b604080518082019091526060815260006020820152610209602083610970565b1561023157610219602083610970565b610224906020610992565b61022e9083610944565b91505b506020808301829052604080518085526000815283019091019052815b92915050565b60408051808201909152606081526000602082015261027b838460000151518485516106d6565b9392505050565b60006040518251602084019350604067ffffffffffffffc0600183011601600982820310600181036102b5576040820191505b50776745230100efcdab890098badcfe001032547600c3d2e1f0610307565b60008383101561027b5750808201519282900392602084101561027b5760001960208590036101000a0119169392505050565b60005b828110156106115761031d8482896102d4565b855261032d8460208301896102d4565b6020860152604081850310600181036103495760808286038701535b506040830381146001810361036657602086018051600887021790525b5060405b60808110156103ee57858101603f19810151603719820151601f19830151600b198401516002911891909218189081027ffffffffefffffffefffffffefffffffefffffffefffffffefffffffefffffffe1663800000009091047c010000000100000001000000010000000100000001000000010000000116179052600c0161036a565b5060805b61014081101561047757858101607f19810151606f19820151603f198301516017198401516004911891909218189081027ffffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffc1663400000009091047c0300000003000000030000000300000003000000030000000300000003161790526018016103f2565b508160008060005b60508110156105e7576014810480156104af57600181146104d657600281146104fb576003811461052557610546565b600160281b8504600160501b86048118600160781b870416189350635a8279999250610546565b600160281b8504600160781b8604600160501b870418189350636ed9eba19250610546565b600160501b8504600160781b8604818117600160281b8804169116179350638f1bbcdc9250610546565b600160281b8504600160781b8604600160501b87041818935063ca62c1d692505b50601f600160bb1b8504168063ffffffe06001609b1b87041617905080840190508063ffffffff8616019050808301905080600160e01b600484028c015104019050600160a01b8102600160281b860417945050600160501b633fffffff600160521b86041663c00000006604000000000000870416170277ffffffff00ffffffff000000000000ffffffff00ffffffff851617935060018101905061047f565b5050509190910177ffffffff00ffffffff00ffffffff00ffffffff00ffffffff169060400161030a565b50600160601b63ffffffff821667ffffffff000000006101008404166bffffffff00000000000000006201000085041663ffffffff60601b630100000086041663ffffffff60801b6401000000008704161717171702945050505050919050565b60408051808201909152606081526000602082015282515161027b9084906001600160601b0319851660146107c0565b6040805180820190915260608152600060208201526106ce84846001600160601b0319851660146107c0565b949350505050565b60408051808201909152606081526000602082015282518211156106f957600080fd5b60208501516107088386610944565b111561073b5761073b8561072b876020015187866107269190610944565b61083d565b6107369060026109a5565b610854565b60008086518051876020830101935080888701111561075a5787860182525b505050602084015b6020841061079a5780518252610779602083610944565b9150610786602082610944565b9050610793602085610992565b9350610762565b51815160001960208690036101000a019081169019919091161790525083949350505050565b60408051808201909152606081526000602082015260208501516107e48584610944565b11156107f8576107f88561072b8685610944565b60006001836101000a0390508260200360080284901c93508551838682010185831982511617815250805184870111156108325783860181525b509495945050505050565b60008183111561084e57508161024e565b50919050565b815161086083836101e9565b5061086b8382610254565b50505050565b60008083601f84011261088357600080fd5b50813567ffffffffffffffff81111561089b57600080fd5b6020830191508360208285010111156108b357600080fd5b9250929050565b6000806000806000606086880312156108d257600080fd5b853567ffffffffffffffff808211156108ea57600080fd5b6108f689838a01610871565b9097509550602088013591508082111561090f57600080fd5b5061091c88828901610871565b96999598509660400135949350505050565b634e487b7160e01b600052601160045260246000fd5b8082018082111561024e5761024e61092e565b6000600182016109695761096961092e565b5060010190565b60008261098d57634e487b7160e01b600052601260045260246000fd5b500690565b8181038181111561024e5761024e61092e565b808202811582820484141761024e5761024e61092e56fea164736f6c6343000811000a", + "bytecode": "0x608060405234801561000f575f80fd5b506109768061001d5f395ff3fe608060405234801561000f575f80fd5b5060043610610029575f3560e01c806368f9dab21461002d575b5f80fd5b61004061003b36600461088b565b610052565b60405190815260200160405180910390f35b5f61006f6040518060400160405280606081526020015f81525090565b61008e61007c858861090d565b61008790601061090d565b82906101d1565b506100d085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250859392505061023a9050565b5061011287878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250859392505061023a9050565b505f610120825f0151610266565b905083156101bc5760408051808201909152606081525f602090910181905282515261014c825f610650565b5061018e88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250869392505061023a9050565b505f5b848110156101ba576101a4835f8461067f565b5082516101b090610266565b9150600101610191565b505b6001600160601b031916979650505050505050565b60408051808201909152606081525f60208201526101f0602083610920565b1561021857610200602083610920565b61020b90602061093f565b610215908361090d565b91505b506020808301829052604080518085525f815283019091019052815b92915050565b60408051808201909152606081525f602082015261025f83845f0151518485516106b2565b9392505050565b5f6040518251602084019350604067ffffffffffffffc060018301160160098282031060018103610298576040820191505b50776745230100efcdab890098badcfe001032547600c3d2e1f06102e8565b5f8383101561025f5750808201519282900392602084101561025f575f1960208590036101000a0119169392505050565b5f5b828110156105ef576102fd8482896102b7565b855261030d8460208301896102b7565b6020860152604081850310600181036103295760808286038701535b506040830381146001810361034657602086018051600887021790525b5060405b60808110156103ce57858101603f19810151603719820151601f19830151600b198401516002911891909218189081027ffffffffefffffffefffffffefffffffefffffffefffffffefffffffefffffffe1663800000009091047c010000000100000001000000010000000100000001000000010000000116179052600c0161034a565b5060805b61014081101561045757858101607f19810151606f19820151603f198301516017198401516004911891909218189081027ffffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffc1663400000009091047c0300000003000000030000000300000003000000030000000300000003161790526018016103d2565b50815f805f5b60508110156105c55760148104801561048d57600181146104b457600281146104d9576003811461050357610524565b600160281b8504600160501b86048118600160781b870416189350635a8279999250610524565b600160281b8504600160781b8604600160501b870418189350636ed9eba19250610524565b600160501b8504600160781b8604818117600160281b8804169116179350638f1bbcdc9250610524565b600160281b8504600160781b8604600160501b87041818935063ca62c1d692505b50601f600160bb1b8504168063ffffffe06001609b1b87041617905080840190508063ffffffff8616019050808301905080600160e01b600484028c015104019050600160a01b8102600160281b860417945050600160501b633fffffff600160521b86041663c00000006604000000000000870416170277ffffffff00ffffffff000000000000ffffffff00ffffffff851617935060018101905061045d565b5050509190910177ffffffff00ffffffff00ffffffff00ffffffff00ffffffff16906040016102ea565b50600160601b63ffffffff821667ffffffff000000006101008404166bffffffff00000000000000006201000085041663ffffffff60601b630100000086041663ffffffff60801b6401000000008704161717171702945050505050919050565b60408051808201909152606081525f602082015282515161025f9084906001600160601b031985166014610798565b60408051808201909152606081525f60208201526106aa84846001600160601b031985166014610798565b949350505050565b60408051808201909152606081525f602082015282518211156106d3575f80fd5b60208501516106e2838661090d565b1115610715576107158561070587602001518786610700919061090d565b610813565b610710906002610952565b610829565b5f808651805187602083010193508088870111156107335787860182525b505050602084015b60208410610773578051825261075260208361090d565b915061075f60208261090d565b905061076c60208561093f565b935061073b565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b60408051808201909152606081525f602082015260208501516107bb858461090d565b11156107cf576107cf85610705868561090d565b5f6001836101000a0390508260200360080284901c93508551838682010185831982511617815250805184870111156108085783860181525b509495945050505050565b5f81831115610823575081610234565b50919050565b815161083583836101d1565b50610840838261023a565b50505050565b5f8083601f840112610856575f80fd5b50813567ffffffffffffffff81111561086d575f80fd5b602083019150836020828501011115610884575f80fd5b9250929050565b5f805f805f6060868803121561089f575f80fd5b853567ffffffffffffffff808211156108b6575f80fd5b6108c289838a01610846565b909750955060208801359150808211156108da575f80fd5b506108e788828901610846565b96999598509660400135949350505050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610234576102346108f9565b5f8261093a57634e487b7160e01b5f52601260045260245ffd5b500690565b81810381811115610234576102346108f9565b8082028115828204841417610234576102346108f956fea164736f6c6343000818000a", + "deployedBytecode": "0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c806368f9dab21461002d575b5f80fd5b61004061003b36600461088b565b610052565b60405190815260200160405180910390f35b5f61006f6040518060400160405280606081526020015f81525090565b61008e61007c858861090d565b61008790601061090d565b82906101d1565b506100d085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250859392505061023a9050565b5061011287878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250859392505061023a9050565b505f610120825f0151610266565b905083156101bc5760408051808201909152606081525f602090910181905282515261014c825f610650565b5061018e88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250869392505061023a9050565b505f5b848110156101ba576101a4835f8461067f565b5082516101b090610266565b9150600101610191565b505b6001600160601b031916979650505050505050565b60408051808201909152606081525f60208201526101f0602083610920565b1561021857610200602083610920565b61020b90602061093f565b610215908361090d565b91505b506020808301829052604080518085525f815283019091019052815b92915050565b60408051808201909152606081525f602082015261025f83845f0151518485516106b2565b9392505050565b5f6040518251602084019350604067ffffffffffffffc060018301160160098282031060018103610298576040820191505b50776745230100efcdab890098badcfe001032547600c3d2e1f06102e8565b5f8383101561025f5750808201519282900392602084101561025f575f1960208590036101000a0119169392505050565b5f5b828110156105ef576102fd8482896102b7565b855261030d8460208301896102b7565b6020860152604081850310600181036103295760808286038701535b506040830381146001810361034657602086018051600887021790525b5060405b60808110156103ce57858101603f19810151603719820151601f19830151600b198401516002911891909218189081027ffffffffefffffffefffffffefffffffefffffffefffffffefffffffefffffffe1663800000009091047c010000000100000001000000010000000100000001000000010000000116179052600c0161034a565b5060805b61014081101561045757858101607f19810151606f19820151603f198301516017198401516004911891909218189081027ffffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffc1663400000009091047c0300000003000000030000000300000003000000030000000300000003161790526018016103d2565b50815f805f5b60508110156105c55760148104801561048d57600181146104b457600281146104d9576003811461050357610524565b600160281b8504600160501b86048118600160781b870416189350635a8279999250610524565b600160281b8504600160781b8604600160501b870418189350636ed9eba19250610524565b600160501b8504600160781b8604818117600160281b8804169116179350638f1bbcdc9250610524565b600160281b8504600160781b8604600160501b87041818935063ca62c1d692505b50601f600160bb1b8504168063ffffffe06001609b1b87041617905080840190508063ffffffff8616019050808301905080600160e01b600484028c015104019050600160a01b8102600160281b860417945050600160501b633fffffff600160521b86041663c00000006604000000000000870416170277ffffffff00ffffffff000000000000ffffffff00ffffffff851617935060018101905061045d565b5050509190910177ffffffff00ffffffff00ffffffff00ffffffff00ffffffff16906040016102ea565b50600160601b63ffffffff821667ffffffff000000006101008404166bffffffff00000000000000006201000085041663ffffffff60601b630100000086041663ffffffff60801b6401000000008704161717171702945050505050919050565b60408051808201909152606081525f602082015282515161025f9084906001600160601b031985166014610798565b60408051808201909152606081525f60208201526106aa84846001600160601b031985166014610798565b949350505050565b60408051808201909152606081525f602082015282518211156106d3575f80fd5b60208501516106e2838661090d565b1115610715576107158561070587602001518786610700919061090d565b610813565b610710906002610952565b610829565b5f808651805187602083010193508088870111156107335787860182525b505050602084015b60208410610773578051825261075260208361090d565b915061075f60208261090d565b905061076c60208561093f565b935061073b565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b60408051808201909152606081525f602082015260208501516107bb858461090d565b11156107cf576107cf85610705868561090d565b5f6001836101000a0390508260200360080284901c93508551838682010185831982511617815250805184870111156108085783860181525b509495945050505050565b5f81831115610823575081610234565b50919050565b815161083583836101d1565b50610840838261023a565b50505050565b5f8083601f840112610856575f80fd5b50813567ffffffffffffffff81111561086d575f80fd5b602083019150836020828501011115610884575f80fd5b9250929050565b5f805f805f6060868803121561089f575f80fd5b853567ffffffffffffffff808211156108b6575f80fd5b6108c289838a01610846565b909750955060208801359150808211156108da575f80fd5b506108e788828901610846565b96999598509660400135949350505050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610234576102346108f9565b5f8261093a57634e487b7160e01b5f52601260045260245ffd5b500690565b81810381811115610234576102346108f9565b8082028115828204841417610234576102346108f956fea164736f6c6343000818000a", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/artifacts/SHA256Digest.json b/artifacts/SHA256Digest.json index ebd14a29..402e63f0 100644 --- a/artifacts/SHA256Digest.json +++ b/artifacts/SHA256Digest.json @@ -28,8 +28,8 @@ "type": "function" } ], - "bytecode": "0x608060405234801561001057600080fd5b50610283806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063f7e83aee14610030575b600080fd5b61004361003e3660046101ba565b610057565b604051901515815260200160405180910390f35b6000602082146100ad5760405162461bcd60e51b815260206004820152601a60248201527f496e76616c6964207368613235362068617368206c656e677468000000000000604482015260640160405180910390fd5b6100f1600084848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929392505061014d9050565b60028686604051610103929190610226565b602060405180830381855afa158015610120573d6000803e3d6000fd5b5050506040513d601f19601f820116820180604052508101906101439190610236565b1495945050505050565b815160009061015d83602061024f565b111561016857600080fd5b50016020015190565b60008083601f84011261018357600080fd5b50813567ffffffffffffffff81111561019b57600080fd5b6020830191508360208285010111156101b357600080fd5b9250929050565b600080600080604085870312156101d057600080fd5b843567ffffffffffffffff808211156101e857600080fd5b6101f488838901610171565b9096509450602087013591508082111561020d57600080fd5b5061021a87828801610171565b95989497509550505050565b8183823760009101908152919050565b60006020828403121561024857600080fd5b5051919050565b8082018082111561027057634e487b7160e01b600052601160045260246000fd5b9291505056fea164736f6c6343000811000a", - "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061002b5760003560e01c8063f7e83aee14610030575b600080fd5b61004361003e3660046101ba565b610057565b604051901515815260200160405180910390f35b6000602082146100ad5760405162461bcd60e51b815260206004820152601a60248201527f496e76616c6964207368613235362068617368206c656e677468000000000000604482015260640160405180910390fd5b6100f1600084848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929392505061014d9050565b60028686604051610103929190610226565b602060405180830381855afa158015610120573d6000803e3d6000fd5b5050506040513d601f19601f820116820180604052508101906101439190610236565b1495945050505050565b815160009061015d83602061024f565b111561016857600080fd5b50016020015190565b60008083601f84011261018357600080fd5b50813567ffffffffffffffff81111561019b57600080fd5b6020830191508360208285010111156101b357600080fd5b9250929050565b600080600080604085870312156101d057600080fd5b843567ffffffffffffffff808211156101e857600080fd5b6101f488838901610171565b9096509450602087013591508082111561020d57600080fd5b5061021a87828801610171565b95989497509550505050565b8183823760009101908152919050565b60006020828403121561024857600080fd5b5051919050565b8082018082111561027057634e487b7160e01b600052601160045260246000fd5b9291505056fea164736f6c6343000811000a", + "bytecode": "0x608060405234801561000f575f80fd5b5061026b8061001d5f395ff3fe608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f7e83aee1461002d575b5f80fd5b61004061003b3660046101ac565b610054565b604051901515815260200160405180910390f35b5f602082146100a95760405162461bcd60e51b815260206004820152601a60248201527f496e76616c6964207368613235362068617368206c656e677468000000000000604482015260640160405180910390fd5b6100eb5f84848080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101459050565b600286866040516100fd929190610213565b602060405180830381855afa158015610118573d5f803e3d5ffd5b5050506040513d601f19601f8201168201806040525081019061013b9190610222565b1495945050505050565b81515f90610154836020610239565b111561015e575f80fd5b50016020015190565b5f8083601f840112610177575f80fd5b50813567ffffffffffffffff81111561018e575f80fd5b6020830191508360208285010111156101a5575f80fd5b9250929050565b5f805f80604085870312156101bf575f80fd5b843567ffffffffffffffff808211156101d6575f80fd5b6101e288838901610167565b909650945060208701359150808211156101fa575f80fd5b5061020787828801610167565b95989497509550505050565b818382375f9101908152919050565b5f60208284031215610232575f80fd5b5051919050565b8082018082111561025857634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a", + "deployedBytecode": "0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f7e83aee1461002d575b5f80fd5b61004061003b3660046101ac565b610054565b604051901515815260200160405180910390f35b5f602082146100a95760405162461bcd60e51b815260206004820152601a60248201527f496e76616c6964207368613235362068617368206c656e677468000000000000604482015260640160405180910390fd5b6100eb5f84848080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101459050565b600286866040516100fd929190610213565b602060405180830381855afa158015610118573d5f803e3d5ffd5b5050506040513d601f19601f8201168201806040525081019061013b9190610222565b1495945050505050565b81515f90610154836020610239565b111561015e575f80fd5b50016020015190565b5f8083601f840112610177575f80fd5b50813567ffffffffffffffff81111561018e575f80fd5b6020830191508360208285010111156101a5575f80fd5b9250929050565b5f805f80604085870312156101bf575f80fd5b843567ffffffffffffffff808211156101d6575f80fd5b6101e288838901610167565b909650945060208701359150808211156101fa575f80fd5b5061020787828801610167565b95989497509550505050565b818382375f9101908152919050565b5f60208284031215610232575f80fd5b5051919050565b8082018082111561025857634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/artifacts/Seaport.json b/artifacts/Seaport.json new file mode 100644 index 00000000..c0cd2dde --- /dev/null +++ b/artifacts/Seaport.json @@ -0,0 +1,2967 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "Seaport", + "sourceName": "seaport-core/src/Seaport.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "conduitController", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [], + "name": "BadContractSignature", + "type": "error" + }, + { + "inputs": [], + "name": "BadFraction", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "BadReturnValueFromERC20OnTransfer", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint8", + "name": "v", + "type": "uint8" + } + ], + "name": "BadSignatureV", + "type": "error" + }, + { + "inputs": [], + "name": "CannotCancelOrder", + "type": "error" + }, + { + "inputs": [], + "name": "ConsiderationCriteriaResolverOutOfRange", + "type": "error" + }, + { + "inputs": [], + "name": "ConsiderationLengthNotEqualToTotalOriginal", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "considerationIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "shortfallAmount", + "type": "uint256" + } + ], + "name": "ConsiderationNotMet", + "type": "error" + }, + { + "inputs": [], + "name": "CriteriaNotEnabledForItem", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256[]", + "name": "identifiers", + "type": "uint256[]" + }, + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + } + ], + "name": "ERC1155BatchTransferGenericFailure", + "type": "error" + }, + { + "inputs": [], + "name": "InexactFraction", + "type": "error" + }, + { + "inputs": [], + "name": "InsufficientNativeTokensSupplied", + "type": "error" + }, + { + "inputs": [], + "name": "Invalid1155BatchTransferEncoding", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidBasicOrderParameterEncoding", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "conduit", + "type": "address" + } + ], + "name": "InvalidCallToConduit", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "conduit", + "type": "address" + } + ], + "name": "InvalidConduit", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "InvalidContractOrder", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "InvalidERC721TransferAmount", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidFulfillmentComponentData", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "InvalidMsgValue", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidNativeOfferItem", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidProof", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "InvalidRestrictedOrder", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidSignature", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidSigner", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + } + ], + "name": "InvalidTime", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "fulfillmentIndex", + "type": "uint256" + } + ], + "name": "MismatchedFulfillmentOfferAndConsiderationComponents", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "enum Side", + "name": "side", + "type": "uint8" + } + ], + "name": "MissingFulfillmentComponentOnAggregation", + "type": "error" + }, + { + "inputs": [], + "name": "MissingItemAmount", + "type": "error" + }, + { + "inputs": [], + "name": "MissingOriginalConsiderationItems", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "NativeTokenTransferGenericFailure", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "NoContract", + "type": "error" + }, + { + "inputs": [], + "name": "NoReentrantCalls", + "type": "error" + }, + { + "inputs": [], + "name": "NoSpecifiedOrdersAvailable", + "type": "error" + }, + { + "inputs": [], + "name": "OfferAndConsiderationRequiredOnFulfillment", + "type": "error" + }, + { + "inputs": [], + "name": "OfferCriteriaResolverOutOfRange", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "OrderAlreadyFilled", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "enum Side", + "name": "side", + "type": "uint8" + } + ], + "name": "OrderCriteriaResolverOutOfRange", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "OrderIsCancelled", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "OrderPartiallyFilled", + "type": "error" + }, + { + "inputs": [], + "name": "PartialFillsNotEnabledForOrder", + "type": "error" + }, + { + "inputs": [], + "name": "TStoreAlreadyActivated", + "type": "error" + }, + { + "inputs": [], + "name": "TStoreNotSupported", + "type": "error" + }, + { + "inputs": [], + "name": "TloadTestContractDeploymentFailed", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "TokenTransferGenericFailure", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "considerationIndex", + "type": "uint256" + } + ], + "name": "UnresolvedConsiderationCriteria", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "offerIndex", + "type": "uint256" + } + ], + "name": "UnresolvedOfferCriteria", + "type": "error" + }, + { + "inputs": [], + "name": "UnusedItemParameters", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint256", + "name": "newCounter", + "type": "uint256" + }, + { + "indexed": true, + "internalType": "address", + "name": "offerer", + "type": "address" + } + ], + "name": "CounterIncremented", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "zone", + "type": "address" + } + ], + "name": "OrderCancelled", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "indexed": false, + "internalType": "struct SpentItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "indexed": false, + "internalType": "struct ReceivedItem[]", + "name": "consideration", + "type": "tuple[]" + } + ], + "name": "OrderFulfilled", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + }, + { + "components": [ + { + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + } + ], + "internalType": "struct OfferItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct ConsiderationItem[]", + "name": "consideration", + "type": "tuple[]" + }, + { + "internalType": "enum OrderType", + "name": "orderType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "zoneHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "salt", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "totalOriginalConsiderationItems", + "type": "uint256" + } + ], + "indexed": false, + "internalType": "struct OrderParameters", + "name": "orderParameters", + "type": "tuple" + } + ], + "name": "OrderValidated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32[]", + "name": "orderHashes", + "type": "bytes32[]" + } + ], + "name": "OrdersMatched", + "type": "event" + }, + { + "inputs": [], + "name": "__activateTstore", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + } + ], + "internalType": "struct OfferItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct ConsiderationItem[]", + "name": "consideration", + "type": "tuple[]" + }, + { + "internalType": "enum OrderType", + "name": "orderType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "zoneHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "salt", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "counter", + "type": "uint256" + } + ], + "internalType": "struct OrderComponents[]", + "name": "orders", + "type": "tuple[]" + } + ], + "name": "cancel", + "outputs": [ + { + "internalType": "bool", + "name": "cancelled", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "components": [ + { + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + } + ], + "internalType": "struct OfferItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct ConsiderationItem[]", + "name": "consideration", + "type": "tuple[]" + }, + { + "internalType": "enum OrderType", + "name": "orderType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "zoneHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "salt", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "totalOriginalConsiderationItems", + "type": "uint256" + } + ], + "internalType": "struct OrderParameters", + "name": "parameters", + "type": "tuple" + }, + { + "internalType": "uint120", + "name": "numerator", + "type": "uint120" + }, + { + "internalType": "uint120", + "name": "denominator", + "type": "uint120" + }, + { + "internalType": "bytes", + "name": "signature", + "type": "bytes" + }, + { + "internalType": "bytes", + "name": "extraData", + "type": "bytes" + } + ], + "internalType": "struct AdvancedOrder", + "name": "", + "type": "tuple" + }, + { + "components": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "enum Side", + "name": "side", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "index", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "bytes32[]", + "name": "criteriaProof", + "type": "bytes32[]" + } + ], + "internalType": "struct CriteriaResolver[]", + "name": "", + "type": "tuple[]" + }, + { + "internalType": "bytes32", + "name": "fulfillerConduitKey", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "recipient", + "type": "address" + } + ], + "name": "fulfillAdvancedOrder", + "outputs": [ + { + "internalType": "bool", + "name": "fulfilled", + "type": "bool" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "components": [ + { + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + } + ], + "internalType": "struct OfferItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct ConsiderationItem[]", + "name": "consideration", + "type": "tuple[]" + }, + { + "internalType": "enum OrderType", + "name": "orderType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "zoneHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "salt", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "totalOriginalConsiderationItems", + "type": "uint256" + } + ], + "internalType": "struct OrderParameters", + "name": "parameters", + "type": "tuple" + }, + { + "internalType": "uint120", + "name": "numerator", + "type": "uint120" + }, + { + "internalType": "uint120", + "name": "denominator", + "type": "uint120" + }, + { + "internalType": "bytes", + "name": "signature", + "type": "bytes" + }, + { + "internalType": "bytes", + "name": "extraData", + "type": "bytes" + } + ], + "internalType": "struct AdvancedOrder[]", + "name": "", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "enum Side", + "name": "side", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "index", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "bytes32[]", + "name": "criteriaProof", + "type": "bytes32[]" + } + ], + "internalType": "struct CriteriaResolver[]", + "name": "", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "itemIndex", + "type": "uint256" + } + ], + "internalType": "struct FulfillmentComponent[][]", + "name": "", + "type": "tuple[][]" + }, + { + "components": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "itemIndex", + "type": "uint256" + } + ], + "internalType": "struct FulfillmentComponent[][]", + "name": "", + "type": "tuple[][]" + }, + { + "internalType": "bytes32", + "name": "fulfillerConduitKey", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "maximumFulfilled", + "type": "uint256" + } + ], + "name": "fulfillAvailableAdvancedOrders", + "outputs": [ + { + "internalType": "bool[]", + "name": "", + "type": "bool[]" + }, + { + "components": [ + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct ReceivedItem", + "name": "item", + "type": "tuple" + }, + { + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + } + ], + "internalType": "struct Execution[]", + "name": "", + "type": "tuple[]" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "components": [ + { + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + } + ], + "internalType": "struct OfferItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct ConsiderationItem[]", + "name": "consideration", + "type": "tuple[]" + }, + { + "internalType": "enum OrderType", + "name": "orderType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "zoneHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "salt", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "totalOriginalConsiderationItems", + "type": "uint256" + } + ], + "internalType": "struct OrderParameters", + "name": "parameters", + "type": "tuple" + }, + { + "internalType": "bytes", + "name": "signature", + "type": "bytes" + } + ], + "internalType": "struct Order[]", + "name": "", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "itemIndex", + "type": "uint256" + } + ], + "internalType": "struct FulfillmentComponent[][]", + "name": "", + "type": "tuple[][]" + }, + { + "components": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "itemIndex", + "type": "uint256" + } + ], + "internalType": "struct FulfillmentComponent[][]", + "name": "", + "type": "tuple[][]" + }, + { + "internalType": "bytes32", + "name": "fulfillerConduitKey", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "maximumFulfilled", + "type": "uint256" + } + ], + "name": "fulfillAvailableOrders", + "outputs": [ + { + "internalType": "bool[]", + "name": "", + "type": "bool[]" + }, + { + "components": [ + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct ReceivedItem", + "name": "item", + "type": "tuple" + }, + { + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + } + ], + "internalType": "struct Execution[]", + "name": "", + "type": "tuple[]" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "internalType": "address", + "name": "considerationToken", + "type": "address" + }, + { + "internalType": "uint256", + "name": "considerationIdentifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "considerationAmount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "offerer", + "type": "address" + }, + { + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "internalType": "address", + "name": "offerToken", + "type": "address" + }, + { + "internalType": "uint256", + "name": "offerIdentifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "offerAmount", + "type": "uint256" + }, + { + "internalType": "enum BasicOrderType", + "name": "basicOrderType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "zoneHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "salt", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "offererConduitKey", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "fulfillerConduitKey", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "totalOriginalAdditionalRecipients", + "type": "uint256" + }, + { + "components": [ + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct AdditionalRecipient[]", + "name": "additionalRecipients", + "type": "tuple[]" + }, + { + "internalType": "bytes", + "name": "signature", + "type": "bytes" + } + ], + "internalType": "struct BasicOrderParameters", + "name": "", + "type": "tuple" + } + ], + "name": "fulfillBasicOrder", + "outputs": [ + { + "internalType": "bool", + "name": "fulfilled", + "type": "bool" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "internalType": "address", + "name": "considerationToken", + "type": "address" + }, + { + "internalType": "uint256", + "name": "considerationIdentifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "considerationAmount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "offerer", + "type": "address" + }, + { + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "internalType": "address", + "name": "offerToken", + "type": "address" + }, + { + "internalType": "uint256", + "name": "offerIdentifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "offerAmount", + "type": "uint256" + }, + { + "internalType": "enum BasicOrderType", + "name": "basicOrderType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "zoneHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "salt", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "offererConduitKey", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "fulfillerConduitKey", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "totalOriginalAdditionalRecipients", + "type": "uint256" + }, + { + "components": [ + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct AdditionalRecipient[]", + "name": "additionalRecipients", + "type": "tuple[]" + }, + { + "internalType": "bytes", + "name": "signature", + "type": "bytes" + } + ], + "internalType": "struct BasicOrderParameters", + "name": "", + "type": "tuple" + } + ], + "name": "fulfillBasicOrder_efficient_6GL6yc", + "outputs": [ + { + "internalType": "bool", + "name": "fulfilled", + "type": "bool" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "components": [ + { + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + } + ], + "internalType": "struct OfferItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct ConsiderationItem[]", + "name": "consideration", + "type": "tuple[]" + }, + { + "internalType": "enum OrderType", + "name": "orderType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "zoneHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "salt", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "totalOriginalConsiderationItems", + "type": "uint256" + } + ], + "internalType": "struct OrderParameters", + "name": "parameters", + "type": "tuple" + }, + { + "internalType": "bytes", + "name": "signature", + "type": "bytes" + } + ], + "internalType": "struct Order", + "name": "", + "type": "tuple" + }, + { + "internalType": "bytes32", + "name": "fulfillerConduitKey", + "type": "bytes32" + } + ], + "name": "fulfillOrder", + "outputs": [ + { + "internalType": "bool", + "name": "fulfilled", + "type": "bool" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "contractOfferer", + "type": "address" + } + ], + "name": "getContractOffererNonce", + "outputs": [ + { + "internalType": "uint256", + "name": "nonce", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "offerer", + "type": "address" + } + ], + "name": "getCounter", + "outputs": [ + { + "internalType": "uint256", + "name": "counter", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + } + ], + "internalType": "struct OfferItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct ConsiderationItem[]", + "name": "consideration", + "type": "tuple[]" + }, + { + "internalType": "enum OrderType", + "name": "orderType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "zoneHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "salt", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "counter", + "type": "uint256" + } + ], + "internalType": "struct OrderComponents", + "name": "", + "type": "tuple" + } + ], + "name": "getOrderHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "getOrderStatus", + "outputs": [ + { + "internalType": "bool", + "name": "isValidated", + "type": "bool" + }, + { + "internalType": "bool", + "name": "isCancelled", + "type": "bool" + }, + { + "internalType": "uint256", + "name": "totalFilled", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "totalSize", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "incrementCounter", + "outputs": [ + { + "internalType": "uint256", + "name": "newCounter", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "information", + "outputs": [ + { + "internalType": "string", + "name": "version", + "type": "string" + }, + { + "internalType": "bytes32", + "name": "domainSeparator", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "conduitController", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "components": [ + { + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + } + ], + "internalType": "struct OfferItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct ConsiderationItem[]", + "name": "consideration", + "type": "tuple[]" + }, + { + "internalType": "enum OrderType", + "name": "orderType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "zoneHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "salt", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "totalOriginalConsiderationItems", + "type": "uint256" + } + ], + "internalType": "struct OrderParameters", + "name": "parameters", + "type": "tuple" + }, + { + "internalType": "uint120", + "name": "numerator", + "type": "uint120" + }, + { + "internalType": "uint120", + "name": "denominator", + "type": "uint120" + }, + { + "internalType": "bytes", + "name": "signature", + "type": "bytes" + }, + { + "internalType": "bytes", + "name": "extraData", + "type": "bytes" + } + ], + "internalType": "struct AdvancedOrder[]", + "name": "", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "enum Side", + "name": "side", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "index", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "bytes32[]", + "name": "criteriaProof", + "type": "bytes32[]" + } + ], + "internalType": "struct CriteriaResolver[]", + "name": "", + "type": "tuple[]" + }, + { + "components": [ + { + "components": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "itemIndex", + "type": "uint256" + } + ], + "internalType": "struct FulfillmentComponent[]", + "name": "offerComponents", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "itemIndex", + "type": "uint256" + } + ], + "internalType": "struct FulfillmentComponent[]", + "name": "considerationComponents", + "type": "tuple[]" + } + ], + "internalType": "struct Fulfillment[]", + "name": "", + "type": "tuple[]" + }, + { + "internalType": "address", + "name": "recipient", + "type": "address" + } + ], + "name": "matchAdvancedOrders", + "outputs": [ + { + "components": [ + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct ReceivedItem", + "name": "item", + "type": "tuple" + }, + { + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + } + ], + "internalType": "struct Execution[]", + "name": "", + "type": "tuple[]" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "components": [ + { + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + } + ], + "internalType": "struct OfferItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct ConsiderationItem[]", + "name": "consideration", + "type": "tuple[]" + }, + { + "internalType": "enum OrderType", + "name": "orderType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "zoneHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "salt", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "totalOriginalConsiderationItems", + "type": "uint256" + } + ], + "internalType": "struct OrderParameters", + "name": "parameters", + "type": "tuple" + }, + { + "internalType": "bytes", + "name": "signature", + "type": "bytes" + } + ], + "internalType": "struct Order[]", + "name": "", + "type": "tuple[]" + }, + { + "components": [ + { + "components": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "itemIndex", + "type": "uint256" + } + ], + "internalType": "struct FulfillmentComponent[]", + "name": "offerComponents", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "itemIndex", + "type": "uint256" + } + ], + "internalType": "struct FulfillmentComponent[]", + "name": "considerationComponents", + "type": "tuple[]" + } + ], + "internalType": "struct Fulfillment[]", + "name": "", + "type": "tuple[]" + } + ], + "name": "matchOrders", + "outputs": [ + { + "components": [ + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct ReceivedItem", + "name": "item", + "type": "tuple" + }, + { + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + } + ], + "internalType": "struct Execution[]", + "name": "", + "type": "tuple[]" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [], + "name": "name", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "components": [ + { + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + } + ], + "internalType": "struct OfferItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct ConsiderationItem[]", + "name": "consideration", + "type": "tuple[]" + }, + { + "internalType": "enum OrderType", + "name": "orderType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "zoneHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "salt", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "totalOriginalConsiderationItems", + "type": "uint256" + } + ], + "internalType": "struct OrderParameters", + "name": "parameters", + "type": "tuple" + }, + { + "internalType": "bytes", + "name": "signature", + "type": "bytes" + } + ], + "internalType": "struct Order[]", + "name": "", + "type": "tuple[]" + } + ], + "name": "validate", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "stateMutability": "payable", + "type": "receive" + } + ], + "bytecode": "0x61020060405234801562000011575f80fd5b506040516200618b3803806200618b83398101604081905262000034916200031b565b808080808080808080806200004862000179565b610120526101005260e05260c081905260a082815246610140819052604080515f9485526020879052948152606091825230608090815292842085825293909152939052610160526001600160a01b038316610180819052630a96ad3960e01b825282519092630a96ad3992600480820193918290030181865afa158015620000d3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620000f991906200034a565b506101a052505f90506200010c620002a0565b90506001600160a01b0381166200013657604051632aea588760e01b815260040160405180910390fd5b5f6200014282620002b9565b8015156101c0526001600160a01b0383166101e0529050806200016857600163929eee14555b5050505050505050505050620003e8565b5f8080808080620001a460408051808201909152600781526614d9585c1bdc9d60ca1b602082015290565b8051906020012095506040518060400160405280600381526020016218971b60e91b8152508051906020012094505f6040518060a00160405280606a815260200162006121606a913990505f6040518060c001604052806084815260200162005f776084913990505f60405180610100016040528060d481526020016200604d60d49139905060405180608001604052806052815260200162005ffb6052913980519060200120965082805190602001209550818051906020012094505f81838560405160200162000279939291906200039c565b60405160208183030381529060405290508080519060200120945050505050909192939495565b5f696002601e613d5c3d52f35f52600a60165ff0905090565b5f816001600160a01b0316600a5a620002d39190620003c8565b6040515f8181818686fa925050503d805f81146200030d576040519150601f19603f3d011682016040523d82523d5f602084013e62000312565b606091505b50909392505050565b5f602082840312156200032c575f80fd5b81516001600160a01b038116811462000343575f80fd5b9392505050565b5f80604083850312156200035c575f80fd5b505080516020909101519092909150565b5f81515f5b818110156200038e576020818501810151868301520162000372565b505f93019283525090919050565b5f620003bf620003b8620003b184886200036d565b866200036d565b846200036d565b95945050505050565b5f82620003e357634e487b7160e01b5f52601260045260245ffd5b500490565b60805160a05160c05160e05161010051610120516101405161016051610180516101a0516101c0516101e051615ad3620004a45f395f61047601525f818161036d0152818161042b01528181611a6001528181611ab301526124cd01525f61306901525f81816112ae015261303901525f612f1301525f612e5b01525f8181610c1e015261164901525f8181610bad015261149201525f8181610b4701526115db01525f612e8b01525f612ed401525f612eb00152615ad35ff3fe608060405260043610610103575f3560e01c8063a900866b11610092578063f07ec37311610062578063f07ec373146102f7578063f2d12b1214610316578063f47b774014610329578063fb0f3ee114610116578063fd9f1e101461034c575f80fd5b8063a900866b1461028a578063b3a34c4c146102be578063e7acab24146102d1578063ed98a574146102e4575f80fd5b80637423eb3c116100d85780637423eb3c146101f757806379df72bd1461020b57806387201b411461022a578063881477321461024b578063a81744041461026a575f80fd5b801561011657806306fdde031461013e57806346423aa71461015f5780635b34b966146101d5575f80fd5b366101125761011061036b565b005b5f80fd5b610129610124366004615115565b6103f9565b60405190151581526020015b60405180910390f35b348015610149575f80fd5b50610152610408565b604051610135919061518f565b34801561016a575f80fd5b506101b36101793660046151a1565b5f9081526001602052604090205460ff808216926101008304909116916001600160781b03620100008204811692600160881b9092041690565b6040805194151585529215156020850152918301526060820152608001610135565b3480156101e0575f80fd5b506101e9610417565b604051908152602001610135565b348015610202575f80fd5b50610110610420565b348015610216575f80fd5b506101e96102253660046151b8565b6104c1565b61023d61023836600461524c565b6104f8565b6040516101359291906153f0565b348015610256575f80fd5b5061012961026536600461543f565b610571565b61027d61027836600461547d565b61058f565b60405161013591906154e3565b348015610295575f80fd5b506101e96102a43660046154f5565b6001600160a01b03165f9081526002602052604090205490565b6101296102cc36600461550e565b61062a565b6101296102df366004615553565b6106a3565b61023d6102f23660046155d7565b6106e1565b348015610302575f80fd5b506101e96103113660046154f5565b610784565b61027d610324366004615677565b6107a1565b348015610334575f80fd5b5061033d6107ea565b60405161013593929190615719565b348015610357575f80fd5b5061012961036636600461543f565b610801565b7f000000000000000000000000000000000000000000000000000000000000000080156103b357600263929eee145c146103b05763a61be9f05f52346020526024601cfd5b50565b63929eee1454806103e057600263929eee145c146103dc5763a61be9f05f52346020526024601cfd5b5050565b600381146103dc5763a61be9f05f52346020526024601cfd5b5f61040261080c565b92915050565b60606104126109c0565b905090565b5f6104126109d8565b63929eee14546001147f000000000000000000000000000000000000000000000000000000000000000080610453575080155b1561047157604051630f45b98b60e41b815260040160405180910390fd5b61049a7f0000000000000000000000000000000000000000000000000000000000000000610a45565b6104b7576040516370a4078f60e01b815260040160405180910390fd5b5f63929eee145550565b5f806104cd6004610aa3565b90506104f16104e282610ab35b63ffffffff16565b610140830135610b30565b3590565b9392505050565b60608061055d61051361050b6004610aa3565b610c746104da565b61052a61052260046020610cdc565b610cfa6104da565b61054161053960046040610cdc565b610d526104da565b61055061053960046060610cdc565b89338a15028a0189610daa565b915091509b509b9950505050505050505050565b5f6104f161058a6105826004610aa3565b610de46104da565b610e3c565b606061061f6105a96105a16004610aa3565b610f5d6104da565b604080515f8082526020820190925290610601565b6105ee6040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816105be5790505b5061061961061160046020610cdc565b610fb56104da565b3361100d565b90505b949350505050565b5f6104f161064361063b6004610aa3565b61104b6104da565b604080515f808252602082019092529061069b565b6106886040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816106585790505b5084336110c1565b5f6106d76106bc6106b46004610aa3565b6112406104da565b6106cb61052260046020610cdc565b853386150286016110c1565b9695505050505050565b6060806107736106f46105a16004610aa3565b604080515f808252602082019092529061074c565b6107396040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816107095790505b5061075c61053960046020610cdc565b61076b61053960046040610cdc565b883389610daa565b915091509850989650505050505050565b6001600160a01b0381165f90815260208190526040812054610402565b60606107dc6107b361050b6004610aa3565b6107c261052260046020610cdc565b6107d161061160046040610cdc565b33861502860161100d565b90505b979650505050505050565b60605f806107f661129c565b925092509250909192565b5f6104f183836112e8565b5f61012435600281901c90600316600182118334158214806108315761083134611423565b506003841160a0810260240135906502030203010160d01b861a905f630101020360d01b881a6108648882898888611434565b9096509150506101c4600583901b01355f87600581111561088757610887615329565b036108bc5760443560243517156108a557636ab37ce75f526004601cfd5b6108af8482611751565b6108b7611809565b61099d565b6040805160208082528183019092525f9160208201818036833701905050905060028a60058111156108f0576108f0615329565b036109135761090e60c4356084353360e435610104355b8787611889565b610988565b60038a600581111561092757610927615329565b036109455761090e60c4356084353360e435610104355b87876118d4565b60048a600581111561095957610959615329565b036109735761090e60243533608435604435606435610907565b6109886024353360843560443560643561093e565b610992848261190a565b61099b816119c4565b505b6109a88689846119e8565b6109b0611a5e565b6001995050505050505050505090565b6060602080526707536561706f727460475260606020f35b5f6109e1611ab1565b600143034060801c335f525f60205260405f208054820192508281555050336001600160a01b03167f721c20121297512b72821b97f5326877ea8ecf4bb9948fea5bfcb6453074d37f82604051610a3a91815260200190565b60405180910390a290565b5f816001600160a01b0316600a5a610a5d9190615773565b6040515f8181818686fa925050503d805f8114610a95576040519150601f19603f3d011682016040523d82523d5f602084013e610a9a565b606091505b50909392505050565b5f813563ffffffff168201610402565b5f610ac661016060408051918201905290565b9050610ad58282610140611b28565b610af2610aeb610ae6846040610cdc565b611b31565b6040830152565b5f610b06610b01846060610cdc565b611b84565b9050610b13816060840152565b610b26610b1e825190565b610140840152565b50919050565b0190565b610140820151604080519084015180515f939284927f000000000000000000000000000000000000000000000000000000000000000092602090910190845b81811015610b9c578251601f1901805186825260c082208652905260209384019390920191600101610b6f565b508060051b6040512094505050505f7f0000000000000000000000000000000000000000000000000000000000000000915060405160206060890151015f5b86811015610c08578151601f1901805186825260e082208552905260209283019290910190600101610bdb565b505060408051600587901b9020601f198a0180517f00000000000000000000000000000000000000000000000000000000000000008252928b01805197815260608c018051938152610140909c019a8b5261018082209390915295909552939097525050925250919050565b5f8063ffffffff8335169050600581901b610c986020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610cca610cc4610cbf8484610cdc565b611240565b82850152565b602001610ca7565b5050505050919050565b5f6104f163ffffffff610cf46104ed8686610b2c8516565b16840190565b5f8063ffffffff8335169050600581901b610d1e6020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610d4a610cc4610d458484610cdc565b611bc7565b602001610d2d565b5f8063ffffffff8335169050600581901b610d766020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610da2610cc4610d9d8484610cdc565b611c09565b602001610d85565b60608036155f80610dbe8c8c85898b611c4c565b91509150610dd18c8b8b8b8b8787612029565b9450945050505097509795505050505050565b5f8063ffffffff8335169050600581901b610e086020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610e34610cc4610e2f8484610cdc565b61215b565b602001610e17565b5f610e45611ab1565b5f805f80855190505f5b81811015610f50575f878281518110610e6a57610e6a615792565b60209081029190910101518051909150600481608001516004811115610e9257610e92615329565b03610e9e575050610f48565b80519450610eab8161219e565b5f8181526001602052604081209850909650610ecd90879089903615156121d7565b50865460ff16610f455780610140015181606001515114610ef057610ef0612265565b610eff85878460200151612272565b865460ff191660011787556040517ff280791efe782edcf06ce15c8f4dff17601db3b88eb3805a0db7d77faf757f0490610f3c9088908490615895565b60405180910390a15b50505b600101610e4f565b5060019695505050505050565b5f8063ffffffff8335169050600581901b610f816020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610fad610cc4610fa88484610cdc565b61104b565b602001610f90565b5f8063ffffffff8335169050600581901b610fd96020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257611005610cc46110008484610cdc565b61230e565b602001610fe8565b60605f36151590505f806110258888858b5189611c4c565b9150915061103282612341565b61103f8887848885612380565b98975050505050505050565b5f61105e61020060408051918201905290565b60a0810180825290915061107a61107484610aa3565b82612453565b61108660016020840152565b61109260016040840152565b6110af6110a86110a3856020610cdc565b612489565b6060840152565b610b266110ba6124b1565b6080840152565b835160808101515f91906110e860048260048111156110e2576110e2615329565b146124cb565b5f80806110f78a36151561256c565b60408051600180825281830190925293965091945092505f9190816020015b61111e615027565b8152602001906001900390816111165790505090508a815f8151811061114657611146615792565b602002602001018190525061115b818b612764565b6111678684848b6128dd565b6040805160018082528183019092525f91602080830190803683375091925050503615156004878181111561119e5761119e615329565b146111c1576111af8d83885f6129dd565b6111bb86868684612a2f565b506111d3565b6111d0888e6080015183612b33565b95505b6111de888c8c612c03565b85825f815181106111f1576111f1615792565b6020026020010181815250506112088d8388612d26565b61122586895f01518a602001518d8c604001518d60600151612df3565b61122d611a5e565b5060019c9b505050505050505050505050565b5f61125361020060408051918201905290565b905061126760208381019083016040611b28565b60a0810180825261127a61107484610aa3565b61128b6110a86110a3856060610cdc565b610b266110ba6110a3856080610cdc565b60605f805f6112a9612e58565b90505f7f0000000000000000000000000000000000000000000000000000000000000000905060605f5281602052806040526303312e3660635260a05ff35b5f6112f1611ab1565b5f8083815b81811015611408573687878381811061131157611311615792565b90506020028101906113239190615977565b90505f61133360208301836154f5565b90505f61134660408401602085016154f5565b90505f61135960a0850160808601615996565b905081331483331417156004821417871796505f61138d61138261137a8790565b610ab36104da565b866101400135610b30565b5f8181526001602052604090819020805461ffff19166101001781559051909a509091506001600160a01b0380851691908616907f6bacc01dbe442496068f7d234edd811f1a5f833243e0aec824f86ab861f3c90d906113f09085815260200190565b60405180910390a385600101955050505050506112f6565b5050801561141857611418612f35565b506001949350505050565b63a61be9f05f52806020526024601cfd5b5f8061143f5f6124cb565b611447612f42565b426101643511154261014435111715611475576321ccfeb75f5261014435602052610164356040526044601cfd5b610204356102643510156114905763466aa6165f526004601cfd5b7f0000000000000000000000000000000000000000000000000000000000000000608081905260a08790526060602460c037604060646101203760e060802061016052610264356102043560051b6102a0016001820181526020810190508881526080602460208301376101608860a0528760c0525f60e0525f6102043593505f5b84811015611566578060400261028401602081610100376040816101203760208101358317925060208401935060e0608020845260a0850194508b85528a6020860152604081606087013750600101611512565b6001850160051b610160206060526102643594505b848110156115b6578060400261028401925060a0840193508a845289602085015260408360608601376020830135919091179060010161157b565b506001600160a01b038111156115d3576339f3e3fd5f526004601cfd5b50505050505f7f00000000000000000000000000000000000000000000000000000000000000009050806080528360a052606060c460c0376020610104610120375060c06080205f9081526020812060e05260843590611647826001600160a01b03165f9081526020819052604090205490565b7f000000000000000000000000000000000000000000000000000000000000000060808190529091506040608460a03760605161010052896101205260a061014461014037816101e05261018060802094505050506102043560051b61018001828152336020820152608060408201526101206060820152600160808201528360a0820152606060c460c083013760a061026435026101e00160a4356084357f9d9af8e38d66c62e2c12f0225249fd9d721c54b83f48d9352c97c6cacdcb6f318385a35f60605260608101820160405250505f61172383612f8d565b905061172f8389612fde565b7101000000000000000000000000000001000182559150509550959350505050565b60c43560843560e4356101043584156117b9575f6040519050632671a55160e11b815260206004820152600160248201528660448201528460648201528360848201523360a48201528260c48201528160e48201526117b38682610104613033565b50611801565b60028660058111156117cd576117cd615329565b036117f457806001146117e3576117e3816130ea565b6117ef848433856130fb565b611801565b61180184843385856131b0565b505050505050565b346064356084356102643560061b5f80805b8381101561185a5761028481013592506102a481013591508683111561184357611843613287565b82870396506118528284613294565b60400161181b565b508585111561186b5761186b613287565b6118758486613294565b848611156118015761180133868803613294565b61189381836132ca565b816118ba57826001146118a9576118a9836130ea565b6118b5878787876130fb565b6118cb565b6118cb828260028a8a8a8a8a6132e8565b50505050505050565b6118dd83613367565b6118e781836132ca565b816118f9576118b587878787876131b0565b6118cb828260038a8a8a8a8a6132e8565b5f805f805f861561192f57505060843592503391505060c4356101043560e435611944565b50339350506084359150506024356064356044355b801561195257611952613379565b50600586901b6101e403356102643560061b5f80805b838110156119a95761028481013592506102a481013591508a156119935761199083876159b4565b95505b6119a1878a8486898f613386565b604001611968565b506119b886898988888e613386565b50505050505050505050565b60408151146119d05750565b5f6119dc826020015190565b90506103dc81836133bb565b611a048260a4355b331415600182116004909210919091161690565b15611a5957805f611a13825190565b9050608081901c63ffffffff8216611a3484826317b1f94282526001905250565b601c840163fb5014fc6060529350611a5060a4358886856133df565b5f6060526118cb565b505050565b7f00000000000000000000000000000000000000000000000000000000000000008015611a8f575f63929eee145d50565b63929eee145480611aa5575f63929eee145d5050565b50600163929eee145550565b7f00000000000000000000000000000000000000000000000000000000000000008015611af05763929eee145c156103b057637fa8a9875f526004601cfd5b63929eee145480611b135763929eee145c156103dc57637fa8a9875f526004601cfd5b600181146103dc57637fa8a9875f526004601cfd5b80838337505050565b5f63ffffffff8235166040519150808252602082018160051b81018060a084026020870183378293505b81841015611b745780845260209093019260a001611b5b565b60405250919392505050565b9052565b5f63ffffffff8235166040519150808252602082018160051b81018060c084026020870183378293505b81841015611b745780845260209093019260c001611bae565b5f611bd960a060408051918201905290565b9050611be782826080611b28565b611c04611bfd611bf8846080610cdc565b613427565b6080830152565b919050565b5f63ffffffff8235166040519150808252602082018160051b8101808360061b6020870183378293505b81841015611b7457808452602090930192604001611c33565b60605f611c5960016124cb565b86515f90600160e61b82351690806001600160401b03811115611c7e57611c7e61574b565b604051908082528060200260200182016040528015611ca7578160200160208202803683370190505b50945060010160051b91505f60205b83811015611ea8575f611ccc8c83613cce6104da565b90505f805f611cdb848e61256c565b6001600160781b0382166020880152919450925090505f829003611d025750505050611ea0565b6001600160781b0381166040808601919091528a8601849052845160a081015160c0820151608083015192909301518051600184119d909d179c600490931099509092915f5b81811015611dea575f838281518110611d6357611d63615792565b602002602001015190508b8151108d179c505f611d858989846080015161345e565b90508160800151826060015103611da25760608201819052611db7565b611db18989846060015161345e565b60608301525b5f611dd08360600151838a8a611dcb361590565b61349a565b606084018190526080909301929092525050600101611d48565b5087516060015180515f5b81811015611e94575f838281518110611e1057611e10615792565b602002602001015190505f611e2a8b8b846080015161345e565b90508160800151826060015103611e475760608201819052611e5c565b611e568b8b846060015161345e565b60608301525b5f611e718360600151838c8c611dcb36151590565b6060840181905260a0840180516080909501949094529092525050600101611df5565b50505050505050505050505b602001611cb6565b50506001600160e61b018103611ec057611ec06134ed565b50611ecb8888612764565b5f8060205b8381101561200e578581015192508215612006575f611ef28c83613cce6104da565b9050885f03611f0d575f878301819052602090910152612006565b60048151608001516004811115611f2657611f26615329565b14611fa957611f3f8188866001600587901c038e6134fa565b611f55575f878301819052602090910152612006565b602080820151604083015183516080810151930151611f8e9388936001600160781b039081169316913314156001909111168e17612a2f565b611fa4575f878301819052602090910152612006565b611fd4565b611fbb815f015182608001518c612b33565b878301819052935083611fd4575f602090910152612006565b886001900398505f815f01519050611fff85825f015183602001518c85604001518660600151612df3565b6001935050505b602001611ed0565b508061201c5761201c613555565b5050509550959350505050565b85518551606091829161203c81836159c7565b6001600160401b038111156120535761205361574b565b60405190808252806020026020018201604052801561208c57816020015b61207961505a565b8152602001906001900390816120715790505b5092505f5b828110156120e4576120bf8c5f8d84815181106120b0576120b0615792565b60200260200101518c8c613562565b8482815181106120d1576120d1615792565b6020908102919091010152600101612091565b505f5b8181101561213d576121168c60018c848151811061210757612107615792565b60200260200101518c5f613562565b848483018151811061212a5761212a615792565b60209081029190910101526001016120e7565b5061214b8b84888a896135b1565b9350505097509795505050505050565b5f61216c6040808051918201905290565b905061218661218261217d84610aa3565b61389a565b8252565b611c046121976110a3846020610cdc565b6020830152565b5f6121b38260600151518361014001516138b9565b81516001600160a01b03165f90815260208190526040902054610402908390610b30565b82545f90610100900460ff16156121fe5781156121f7576121f7856138c9565b505f610622565b83546201000090046001600160781b0316801561225957831561222957612224866138da565b612259565b8454600160881b90046001600160781b0316811061225957821561225057612250866138eb565b5f915050610622565b50600195945050505050565b632165628a5f526004601cfd5b33831480156122815750505050565b5f61228a612e58565b61190160f01b5f9081526002828152602287815260428320908390528651939450929190601f601d840116106102e260621984011016156122f4576122cf86886138fc565b61190160f01b5f908152600286905260228281526042822091905290975090506122f7565b50815b612304888285858a613992565b5050505050505050565b5f61231f6040808051918201905290565b9050612330612182610d9d84610aa3565b611c04612197610d9d846020610cdc565b80518060051b6040019050602082038051602082527f4b9f2d36e1b4c93de62cc077b00b1a91d84b6c31b4a14e012718dcca230689e78383a190525050565b8351606090806001600160401b0381111561239d5761239d61574b565b6040519080825280602002602001820160405280156123d657816020015b6123c361505a565b8152602001906001900390816123bb5790505b5091505f5b81811015612439575f8782815181106123f6576123f6615792565b6020026020010151905061241389825f0151836020015185613adb565b84838151811061242557612425615792565b6020908102919091010152506001016123db565b5061244787838787876135b1565b50505b95945050505050565b6124608282610160611b28565b612471610aeb610ae6846040610cdc565b6103dc612482610b01846060610cdc565b6060830152565b6040518135601f0163ffffffe01660200180838337913563ffffffff16815290810160405290565b5f6124c3602060408051918201905290565b5f8152905090565b7f000000000000000000000000000000000000000000000000000000000000000080156125185763929eee145c1561250a57637fa8a9875f526004601cfd5b8160010163929eee145d5050565b63929eee14548061254a5763929eee145c1561253b57637fa8a9875f526004601cfd5b8260010163929eee145d505050565b6001811461255f57637fa8a9875f526004601cfd5b505060020163929eee1455565b5f805f80855f015190506125898160a001518260c0015187613c80565b61259c57505f925082915081905061275d565b602086015160408701516001600160781b0391821694501691505f6004826080015160048111156125cf576125cf615329565b036125fc57600183850218905080156125ea576125ea613ca3565b506001935083925082915061275d9050565b50818311831517801561261157612611613ca3565b608082015160011615848411161561262b5761262b613cb0565b6126348261219e565b5f81815260016020526040812091965061265290879083908a6121d7565b61266557505f935083925061275d915050565b805460ff1661268057612680835f0151878a60600151612272565b8054608881901c8061269457869150612757565b6001600160781b038260101c169150600186036126b8578181039650809550612757565b8086036126d357908601858103868211029096039590612757565b80860296810291909502810186810387821102918290039695919003906001600160781b0386111561275757612717565b5f5b8215610b2657908290069190612706565b61272a6127248784612704565b88612704565b8015019687900496909504946001600160781b0386111561275757634e487b715f5260116020526024601cfd5b50505050505b9250925092565b805182515f5b82811015612853575f84828151811061278557612785615792565b602002602001015190505f815f015190508381106127aa576127aa8260200151613cbd565b5f8782815181106127bd576127bd615792565b6020026020010151905080602001516001600160781b03165f036127e35750505061284b565b80516040808201519085015163bfb3f8ce5f8760200151600181111561280b5761280b615329565b14612827575f61281c856060613cce565b9350636088d7de9150505b8251821061283857805f526004601cfd5b612843838389613cd9565b505050505050505b60010161276a565b505f5b818110156128d6575f85828151811061287157612871615792565b6020026020010151905080602001516001600160781b03165f0361289557506128ce565b8051608081015160608201516128b29085908363a8930e9a613d8c565b6128ca8483604001518363d69293326104da613d8c90565b5050505b600101612856565b5050505050565b60a084015160c08501516040860151515f805b8281101561295a575f8960400151828151811061290f5761290f615792565b602002602001015190505f815f01519050801584179350505f612946826060015183608001518c8c8b8b612941361590565b613df3565b6060830152506080018690526001016128f0565b5060808801516004811082168015612974576129746134ed565b505050506060860151515f5b81811015612304575f8860600151828151811061299f5761299f615792565b602002602001015190505f6129c4826060015183608001518b8b8a8a61294136151590565b60608301525060a0810151608090910152600101612980565b8351608081015160208201513314156001821160049092109190911616156128d6575f80612a12858489608001518988613e2e565b63fb5014fc6060529092509050611a5083602001518684846133df565b5f848152600160205260408120805482908290608881901c80612a5457889150612adc565b6001600160781b038260101c169150808803612a7857908801878111935090612adc565b97880297808802979190910288018781119350906001600160781b038083119089111715612adc57612aaa8883612704565b8015019788900497909104906001600160781b038083119089111715612adc57634e487b715f5260116020526024601cfd5b508215612b15578515612b09576040516310fda3e160e01b8152600481018a905260240160405180910390fd5b5f945050505050610622565b8660881b8160101b1760011782556001945050505050949350505050565b5f83610140015184606001515114612b4d57612b4d612265565b83515f8080612b5c8888613fac565b915091505f8082845f885af16001600160a01b0385165f908152600260205260409020805460018101909155606086901b189550925082612bbb578515612bae57612ba5614056565b612bae8561409d565b505f93506104f192505050565b505050505f805f612bd8876040015188606001516104da6140ae90565b925092509250825f14612bee57612bee8461409d565b60408701919091526060860152509392505050565b6040805160208082528183019092525f916020820181803683375050506040850151519091505f5b81811015612c7b575f86604001518281518110612c4a57612c4a615792565b60200260200101519050846080820152612c7281885f0151896101200151876104da61432790565b50600101612c2b565b50506060840151515f90815b81811015612d09575f87606001518281518110612ca657612ca6615792565b602002602001015190505f6005811115612cc257612cc2615329565b81516005811115612cd557612cd5615329565b03612cf1574793508381606001511115612cf157612cf1613287565b612d00813389886143276104da565b50600101612c87565b5050612d14826119c4565b504780156128d6576128d63382613294565b8251608081015160208201515f92839283928392916004811060019091111633909114151615612d8857612d69612d6361010083015190565b5190565b8861441c565b9093509150612d7a60208201612d5f565b945063fb5014fc9350612dd4565b600481608001516004811115612da057612da0615329565b0361230457805194505f8560601b9050612dc187838b608001518b8561445d565b639397928596509094509250612dd49050565b612dde6060859052565b612dea858785856133df565b5f606052612304565b60608290506060829050856001600160a01b0316876001600160a01b03167f9d9af8e38d66c62e2c12f0225249fd9d721c54b83f48d9352c97c6cacdcb6f318a888686604051612e469493929190615a13565b60405180910390a35050505050505050565b5f7f00000000000000000000000000000000000000000000000000000000000000004614612f10575060408051608080517f00000000000000000000000000000000000000000000000000000000000000005f9081527f00000000000000000000000000000000000000000000000000000000000000006020527f0000000000000000000000000000000000000000000000000000000000000000855246606090815230845260a08220949095529093529190915290565b507f000000000000000000000000000000000000000000000000000000000000000090565b63fed398fc5f526004601cfd5b600435602014610224356102401416610244356102606102643560061b01141660186101243510600160a01b60843560a4351760c4356024351717101616806103b0576103b0614528565b5f8181526001602081905260409091209060843590612fb290849084903615156121d7565b50815460ff16610b2657610b268184612fd9602463ffffffff6102443516016124896104da565b612272565b5f612feb8260a4356119f0565b15610402575f805f612ffc86614535565b63fb5014fc6060529194509250905061301c60a43587601c8601856133df565b5f60605260209190910160801b1781529392505050565b604080517f000000000000000000000000000000000000000000000000000000000000000060ff60a01b175f90815260208690527f000000000000000000000000000000000000000000000000000000000000000083526055600b20919092526001600160a01b031690505f805f805260205f85875f875af191505f519050816130c8576130bf614056565b6130c8836145ed565b6001600160e01b03198116632671a55160e11b146118015761180186846145fe565b6369f958275f52806020526024601cfd5b833b61311257635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af1806131a2573d1561318057601f3d0160051c8260051c8160030281831115613169578183036003028280028480020360091c01015b5a60208201101561317c573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b6131c757635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af18061326c573d1561324b57601f3d0160051c8560051c8160030281831115613234578183036003028280028480020360091c01015b5a602082011015613247573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b638ffff9805f526004601cfd5b61329d81613367565b5f805f805f85875af1905080611a59576132b5614056565b63bc806b965f5282602052816040526044601cfd5b5f6132d6836020015190565b9050818114611a5957611a59836119c4565b5f60208851036133225750604080885260208089018a9052632671a55160e11b918901919091526044880152600160648801819052613331565b50606487018051600101908190525b603c60c082028901038781528660208201528560408201528460608201528360808201528260a082015250505050505050505050565b806103b0576391b3e5145f526004601cfd5b636ab37ce75f526004601cfd5b61338f83613367565b61339981836132ca565b816133aa576117ef86868686614613565b611801828260018989895f8a6132e8565b6064810151604082019060c0026044016133d6848383613033565b50506020905250565b5f806001600160e01b03198451165f805260205f85875f8b5af15f51909350149050816134185761340e614056565b846080526024607cfd5b8061180157846080526024607cfd5b5f8063ffffffff83351690506001810160051b61344a8160408051918201905290565b9250613457848483611b28565b5050919050565b5f82840361346d5750806104f1565b82848309156134835763c63cf0895f526004601cfd5b5f61348e8584615aaf565b93909304949350505050565b5f8486146134e357838303428590038082035f6134b7838a615aaf565b6134c1838c615aaf565b6134cb91906159c7565b9050858487830304018115150294505050505061244a565b5092949350505050565b6312d3f5a35f526004601cfd5b8451608081015160208201515f92916004811060019091111633909114151615610f50575f8061353187848b608001518b8a613e2e565b9150915061354b836020015188848463fb5014fc8a614707565b935050505061244a565b63d5da9a1b5f526004601cfd5b61356a61505a565b83515f0361357b5761357b85614774565b5f85600181111561358e5761358e615329565b036135a45761359f86858385614785565b61244a565b61244a86858333876148f5565b84516060905f816001600160401b038111156135cf576135cf61574b565b6040519080825280602002602001820160405280156135f8578160200160208202803683370190505b506040805160208082528183019092529192505f9190602082018180368337505089519192505060010160051b60205b81811015613687575f61363e8b83613cce6104da565b8051606081015191925090801561367c57478111825115161561366857638ffff9805f526004601cfd5b61367c828460200151856040015189614327565b505050602001613628565b50505f5b838110156137f3575f8a82815181106136a6576136a6615792565b6020026020010151905080602001516001600160781b03165f036136ed575f8483815181106136d7576136d7615792565b91151560209283029190910190910152506137eb565b600184838151811061370157613701615792565b911515602092830291909101909101528051604081015180515f5b81811015613786575f83828151811061373757613737615792565b6020026020010151905080606001515f1461377357608081018051908e9052855161012087015161376d9184918c6143276104da565b60808201525b608081015160609091015260010161371c565b505050606081015180515f5b818110156137e5575f8382815181106137ad576137ad615792565b602002602001015190505f81606001519050805f146137d1576137d1888483614a2c565b5060a0810151606090910152600101613792565b50505050505b60010161368b565b506137fd816119c4565b47801561380e5761380e3382613294565b8515613884575f5b848110156138825783818151811061383057613830615792565b60200260200101511561387a5761387a8b828151811061385257613852615792565b60200260200101518a8b848151811061386d5761386d615792565b6020026020010151612d26565b600101613816565b505b61388c611a5e565b509098975050505050505050565b5f6138ad61016060408051918201905290565b9050611c048282612453565b808210156103dc576103dc614a45565b631a5155745f52806020526024601cfd5b63ee9e0e635f52806020526024601cfd5b6310fda3e15f52806020526024601cfd5b5f805f84516001811660410380820360051c9250808752806020018701915050805160e81c6003820191506001811660051b868152825160208218525060015b838110156139685760405f2082821c60051b60209081169182529384018051919094185260010161393c565b50505060405f2091505f61397b82614a52565b5f9081526020939093525050604090209392505050565b5f805f528151602083038051826041035f600182116139f557604087015160608801515f1a83156139d657601b8260ff1c0190506001600160ff1b03821660408a01525b88528a855260205f60808760015afa508385528588526040880152505f515b8a148a1515169450849050613abe57858552604082526044850380516040870351630b135d3f60e11b835289604089035260205f60648b01858f5afa96508615613ab257630b135d3f60e11b5f5114613ab2578b3b15613a5c57634f7fb80d5f526004601cfd5b6001866041031115613a7557638baa579f5f526004601cfd5b64010100000060608901515f1a1a15604187141615613aa557631f003d0a5f5260608801515f1a6020526024601cfd5b63815e1d645f526004601cfd5b8385529152603f198601525b5050508061180157613ace614056565b634f7fb80d5f526004601cfd5b613ae361505a565b8251158451151715613afc576398e9db6e5f526004601cfd5b613b0461505a565b613b118685835f806148f5565b805160608101515f03613b2657509050610622565b613b368787858460800151614785565b82516040828101519082015160208085015190840151855185511891181791181715613b6d5763bced929d5f52846020526024601cfd5b806060015182606001511115613bf4575f865f81518110613b9057613b90615792565b60200260200101519050816060015183606001510389825f015181518110613bba57613bba615792565b60200260200101515f015160600151826020015181518110613bde57613bde615792565b6020026020010151606001818152505050613c75565b5f875f81518110613c0757613c07615792565b60200260200101519050826060015182606001510389825f015181518110613c3157613c31615792565b60200260200101515f015160400151826020015181518110613c5557613c55615792565b602002602001015160600181815250508260600151826060018181525050505b505050949350505050565b428084111590831116818015613c94575080155b156104f1576104f18484614e61565b635a052b325f526004601cfd5b63a11b63ff5f526004601cfd5b63133c37c65f52806020526024601cfd5b5f6104f18284015190565b5f838381518110613cec57613cec615792565b602002602001015190505f815f01519050613d078160031090565b613d1357613d13614e76565b60408201518015613d3657613d318460600151828660800151614e83565b613d49565b60808401515115613d4957613d49614ecd565b6004821460030383816005811115613d6357613d63615329565b90816005811115613d7657613d76615329565b9052505050606090920151604090910152505050565b82515f5b81811015611801575f858281518110613dab57613dab615792565b60209081029190910101518051604082015191925090600382116004881415821515171615613de557855f5288602052836040526044601cfd5b505050806001019050613d90565b5f868803613e0d57613e0686868961345e565b90506107df565b6107dc613e1b87878b61345e565b613e2688888b61345e565b86868661349a565b5f805f613e39614eda565b6301e4d72a815260208082015260408101898152336060830152601c820194509091508751604082015287613e79613e7260a083015190565b60e0840152565b613e8f613e8760c083015190565b610100840152565b613ea5613e9d60e083015190565b610120840152565b610140613eb3816060850152565b5f613ebf604084015190565b90505f613ece82848701614ee4565b928301929050613edf836080870152565b5f613eeb606086015190565b90505f613efa82868901614f4a565b948501949050613f0b8560a0890152565b5f613f188e878a01614faf565b959095019450613f298560c0890152565b8685015f613f378e83614fce565b602497019687019a50613f539050613f4e8c8c0190565b614ffe565b8060408b901b60808b901b17178f610100018181525050613f7d8c82611b8090919063ffffffff16565b60058c8e51613f8c91906159b4565b613f97911b8b6159b4565b99505050505050505050509550959350505050565b5f8083613fb7614eda565b639891976581523360208201908152608060408301819052601c9092019450905f613fe3604085015190565b90505f613ff282848601614ee4565b928301929050614003836040860152565b5f61400f606087015190565b90505f61401e82868801614ee4565b94850194905061402f856060880152565b895f61403d82898901614faf565b9a9d96909a016004019b50949950505050505050505050565b3d1561409b57601f3d0160051c60405160051c8160030281831115614088578183036003028280028480020360091c01015b5a602082011015611a59573d5f803e3d5ffd5b565b63939792855f52806020526024601cfd5b60603d105f8080808080866141205760405f803e5f51935060205192503d60208501113d60208501118082179850505086614120576020845f3e5f51915060208360203e60205190508160071b60208501018160a0026020850101803d10823d101761ffff8486171117985050505f80525b86614152575f8061413584602088018d61415b565b9250975061414783602087018c61423b565b929092179850909550505b5050505061275d565b5f806040519150825160c08602602001830160405285835260208660010160051b8085018360010160051b8701614199858b81811090829003020190565b60010160051b8a861196505b808510156141f957828589015260808a843e6060830151955085608084015260608201518681116141d685856142e2565b17881797505060808a01995060a08301925060a0820191506020850194506141a5565b50505b8183101561422f578083870152608088823e6060810151608082015260808801975060a0810190506020830192506141fc565b50505050935093915050565b604051815180851190808603818710028101602060e08202850181016040528185526001928301600590811b87019390920190911b908185015b8282101561422f57808287015260a088823e60206060890160a083013e606081015160608501516142b26080840151608088015180159114171590565b818311176142c084886142e2565b60a09b909b019a179690961795505060c0938401936020929092019101614275565b5f81516040830151801560038311161561430457506040840151600119909101905b604085015181148551831460208701516020870151141616159250505092915050565b5f8451600581111561433b5761433b615329565b0361437857604084015160208501516001600160a01b0316171561436157614361613379565b61437384608001518560600151613294565b614416565b60018451600581111561438d5761438d615329565b036143be576040840151156143a4576143a4613379565b614373846020015184866080015187606001518686613386565b6002845160058111156143d3576143d3615329565b036143f7576143738460200151848660800151876040015188606001518787611889565b61441684602001518486608001518760400151886060015187876118d4565b50505050565b608082901c63ffffffff604084901c811690808516906144449084906317b1f94290611b8016565b601c830192506144548482614fce565b50509250929050565b5f80614467614eda565b63f4dd92ce815287841860a0820152601c8101925060200160a0808252875f614491604083015190565b90505f6144a082858701614ee4565b9384019390506144b1846020870152565b5f6144bd606085015190565b90505f6144cc82878901614f4a565b9586019590506144dd866040890152565b5f6144ea8d888a01614faf565b9687019690506144fb8760608a0152565b5f6145088d898b01614fce565b905080880197508760040199505050505050505050509550959350505050565b6339f3e3fd5f526004601cfd5b6301e4d72a6102043560051b6080019081525f808260208082015260408101858152336060830152601c919091019061456f608435610aeb565b61458061014460e083016060611b28565b61014061458e816060840152565b61459c60a082016080840152565b61016060a06102643581029290920101906145b8908290840152565b6145c25f82840152565b6020016145d08160c0840152565b5f9181019182526020820196909652939560449095019492505050565b63d13d53d45f52806020526024601cfd5b631cf99b265f5281602052806040526044601cfd5b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166146f85780873b1515166146f857806146e757816146ca573d156146a957601f3d0160051c8360051c8160030281831115614692578183036003028280028480020360091c01015b5a6020820110156146a5573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b5f805f6001600160e01b03198751165f805260205f888a5f8e5af15f5190935014905081614753578361473e575f925050506106d7565b614746614056565b845f52876020526024601cfd5b8061476557845f52876020526024601cfd5b50600198975050505050505050565b63375c24c15f52806020526024601cfd5b5f805f85865160051b87015b808210156148a2576020820191508851825151106147b1576147b16148d6565b81515160051b60208a01015180516020845101515f6040830151602085015115815184101517156147e6575050505050614791565b8260051b60208201015191505060608101935083518901915083511589831060011b17881797508198505f84528a51935086156001811461484f5760608220881860408d01516101208601511860208e015186511817171561484a5761484a6148d6565b614898565b8151855260208201516020860152604082015160408601528a6080860152835160208d015261012084015160408d015260608520975060208d0192508683181561489857865183525b5050505050614791565b5050508160608551015280156148cf57600181036148c7576391b3e5145f526004601cfd5b6148cf6148e3565b5050614416565b637fda72795f526004601cfd5b634e487b715f5260116020526024601cfd5b5f805f86875160051b88015b808210156149f7576020820191508151518a518110614922576149226148d6565b8060051b60208c01015190506020835101515f606083510151602084015115815184101517156149555750505050614901565b8260051b60208201015191505060608101925082518801915082511588831060011b17871796508197505f83528a5192508515600181146149a75760a0822087146149a2576149a26148d6565b6149ee565b815184526020820151602085015260408201516040850152608082015160808501528a60208d01528960408d015260a08220965060208d019250858318156149ee57855183525b50505050614901565b50508551606001839052508015614a255760018103614a1d576391b3e5145f526004601cfd5b614a256148e3565b50506128d6565b63a5f542085f528260205281604052806060526064601cfd5b63466aa6165f526004601cfd5b5f614e58565b5f6009821015614bb1576005821015614b0e576003821015614ac1577f832c58a5b611aadcfa6a082ac9d04bace53d8278387f10040347b7e98eb5b30260018314027fbf8e29b89f29ed9b529c154a63038ffca562f8d7cd1e2545dda53a1b582dde3018610402565b7ff3e8417a785f980bdaf134fa0274a6bf891eeb8195cd94b09d2aa651046e28bc60038314027fa02eb7ff164c884e5e2c336dc85f81c6a93329d8e9adf214b32729b894de2af118610402565b6007821015614b64577f25d02425402d882d211a7ab774c0ed6eca048c4d03d9af40132475744753b2a360058314027f1c19f71958cdd8f081b4c31f7caf5c010b29d12950be2fa1c95070dc47e30b5518610402565b7fb58d772fb09b426b9dece637f61ca9065f2b994f1464b51e9207f55f7c8f594860078314027f7ff98d9d4e55d876c5cfac10b43c04039522f3ddfb0ea9bfe70c68cfb5c7cc1418610402565b6011821015614d0957600d821015614c6657600b821015614c19577f6f0ec38c21f6f583ab7f3c5413c773ffd5344c34fde1d390958e438bf667448f60098314027fd1d97d1ef5eaa37a4ee5fbf234e6f6d64eb511eb562221cd7edfbdde0848da0518610402565b7f32f4e7485d6485f9f6c255929b9905c62ba919758bbe231f231eaeecf33d810c600b8314027fbb98d87cc12922b83759626c5f07d72266da9702d19ffad6a514c73a89002f5f18610402565b600f821015614cbc577f8df51df98847160517f5b1186b4bc3f418d98b8a7f17f1292f392d79d600d79e600d8314027f6b5b04cbae4fcb1a9d78e7b2dfc51a36933d023cf6e347e03d517b472a85259018610402565b7fcc4886e37eedd9aacd6c1c2c9247197a621a71282e87a7cbc673f3736d9aa141600f8314027f1da3eed3ecef6ebaa6e5023c057ec2c75150693fd0dac5c90f4a142f9879fde818610402565b6015821015614db5576013821015614d68577f2d7a3ed6dab270fdb8e054b2ad525f0ce2a8b89cc76c17f0965434740f673a5560118314027fc3939feff011e53ab8c35ca3370aad54c5df1fc2938cd62543174fa6e7d8587718610402565b7f54b3212a178782f104e0d514b41a9a5c4ca9c980bf6597c3cecbf280917e202a60138314027f5a4f867d3d458dabecad65f6201ceeaba0096df2d0c491cc32e6ea4e6435001718610402565b6017821015614e0b577fbb40bf8cea3a5a716e2b6eb08bbdac8ec159f82f380783db3c56904f15a43d0460158314027f3bd8cff538aba49a9c374c806d277181e9651624b3e31111bc0624574f8bca1d18610402565b7f403be09941a31d05cfc2f896505811353d45d38743288b016630cce39435476a60178314027f1d51df90cba8de7637ca3e8fe1e3511d1dc2f23487d05dbdecb781860c21ac1c18610402565b61040282614a58565b6321ccfeb75f5281602052806040526044601cfd5b6394eb6af65f526004601cfd5b5f835f5260205f2060208301835160051b81015b80821015614ebe57815180841160051b93845260209384185260405f209290910190614e97565b50508314905080614416576144165b6309bde3395f526004601cfd5b5f61041260405190565b5f825180835260208401602084018260051b82015b80831015614f375782518051835260208101516020840152604081015160408401526060810151606084015250602083019250608082019150614ef9565b5050508060071b60200191505092915050565b5f80614f54845190565b8084529050602084810190600583901b860181019085015b82821115614f9c575f614f7e84615008565b9050614f8c818360a0615011565b506020929092019160a001614f6c565b60a0840260200194505050505092915050565b5f63ffffffe0603f614fbf855190565b01169050610402838383615011565b5f80614fd8845190565b8084529050600581901b614ff3602086810190860183615011565b602001949350505050565b6103b06040829052565b5f610402825190565b8082828560045afa80153d151715614416575f80fd5b6040518060a0016040528061503a61509c565b81525f602082018190526040820152606080820181905260809091015290565b60408051610100810182525f606082018181526080830182905260a0830182905260c0830182905260e083018290528252602082018190529181019190915290565b6040518061016001604052805f6001600160a01b031681526020015f6001600160a01b0316815260200160608152602001606081526020015f60048111156150e6576150e6615329565b81525f6020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b5f60208284031215615125575f80fd5b81356001600160401b0381111561513a575f80fd5b820161024081850312156104f1575f80fd5b5f81518084525f5b8181101561517057602081850181015186830182015201615154565b505f602082860101526020601f19601f83011685010191505092915050565b602081525f6104f1602083018461514c565b5f602082840312156151b1575f80fd5b5035919050565b5f602082840312156151c8575f80fd5b81356001600160401b038111156151dd575f80fd5b820161016081850312156104f1575f80fd5b5f8083601f8401126151ff575f80fd5b5081356001600160401b03811115615215575f80fd5b6020830191508360208260051b850101111561522f575f80fd5b9250929050565b80356001600160a01b0381168114611c04575f80fd5b5f805f805f805f805f805f60e08c8e031215615266575f80fd5b6001600160401b03808d35111561527b575f80fd5b6152888e8e358f016151ef565b909c509a5060208d013581101561529d575f80fd5b6152ad8e60208f01358f016151ef565b909a50985060408d01358110156152c2575f80fd5b6152d28e60408f01358f016151ef565b909850965060608d01358110156152e7575f80fd5b506152f88d60608e01358e016151ef565b909550935060808c0135925061531060a08d01615236565b915060c08c013590509295989b509295989b9093969950565b634e487b7160e01b5f52602160045260245ffd5b60068110611b8057611b80615329565b61535882825161533d565b6020818101516001600160a01b0390811691840191909152604080830151908401526060808301519084015260809182015116910152565b5f815180845260208085019450602084015f5b838110156153e55781516153b888825161534d565b808401516001600160a01b031660a08901526040015160c088015260e090960195908201906001016153a3565b509495945050505050565b604080825283519082018190525f906020906060840190828701845b8281101561542a57815115158452928401929084019060010161540c565b50505083810360208501526106d78186615390565b5f8060208385031215615450575f80fd5b82356001600160401b03811115615465575f80fd5b615471858286016151ef565b90969095509350505050565b5f805f8060408587031215615490575f80fd5b84356001600160401b03808211156154a6575f80fd5b6154b2888389016151ef565b909650945060208701359150808211156154ca575f80fd5b506154d7878288016151ef565b95989497509550505050565b602081525f6104f16020830184615390565b5f60208284031215615505575f80fd5b6104f182615236565b5f806040838503121561551f575f80fd5b82356001600160401b03811115615534575f80fd5b830160408186031215615545575f80fd5b946020939093013593505050565b5f805f805f60808688031215615567575f80fd5b85356001600160401b038082111561557d575f80fd5b9087019060a0828a031215615590575f80fd5b909550602087013590808211156155a5575f80fd5b506155b2888289016151ef565b909550935050604086013591506155cb60608701615236565b90509295509295909350565b5f805f805f805f8060a0898b0312156155ee575f80fd5b88356001600160401b0380821115615604575f80fd5b6156108c838d016151ef565b909a50985060208b0135915080821115615628575f80fd5b6156348c838d016151ef565b909850965060408b013591508082111561564c575f80fd5b506156598b828c016151ef565b999c989b509699959896976060870135966080013595509350505050565b5f805f805f805f6080888a03121561568d575f80fd5b87356001600160401b03808211156156a3575f80fd5b6156af8b838c016151ef565b909950975060208a01359150808211156156c7575f80fd5b6156d38b838c016151ef565b909750955060408a01359150808211156156eb575f80fd5b506156f88a828b016151ef565b909450925061570b905060608901615236565b905092959891949750929550565b606081525f61572b606083018661514c565b6020830194909452506001600160a01b0391909116604090910152919050565b634e487b7160e01b5f52604160045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b5f8261578d57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f815180845260208085019450602084015f5b838110156153e55781516157ce88825161533d565b838101516001600160a01b03168885015260408082015190890152606080820151908901526080908101519088015260a090960195908201906001016157b9565b5f815180845260208085019450602084015f5b838110156153e557815161583788825161533d565b808401516001600160a01b0390811689860152604080830151908a0152606080830151908a0152608080830151908a015260a091820151169088015260c09096019590820190600101615822565b60058110611b8057611b80615329565b828152604060208201526158b56040820183516001600160a01b03169052565b5f60208301516158d060608401826001600160a01b03169052565b5060408301516101608060808501526158ed6101a08501836157a6565b91506060850151603f198584030160a086015261590a838261580f565b925050608085015161591f60c0860182615885565b5060a085015160e085015260c0850151610100818187015260e0870151915061012082818801528188015192506101409150828288015280880151848801525080870151610180870152505050809150509392505050565b5f823561015e1983360301811261598c575f80fd5b9190910192915050565b5f602082840312156159a6575f80fd5b8135600581106104f1575f80fd5b818103818111156104025761040261575f565b808201808211156104025761040261575f565b5f815180845260208085019450602084015f5b838110156153e557615a0087835161534d565b60a09690960195908201906001016159ed565b5f6080808301878452602060018060a01b03808916602087015260406080604088015283895180865260a08901915060208b0195505f5b81811015615a8b578651615a5f84825161533d565b808701518616848801528481015185850152606090810151908401529585019591870191600101615a4a565b50508781036060890152615a9f818a6159da565b9c9b505050505050505050505050565b80820281158282048414176104025761040261575f56fea164736f6c6343000818000a436f6e73696465726174696f6e4974656d2875696e7438206974656d547970652c6164647265737320746f6b656e2c75696e74323536206964656e7469666965724f7243726974657269612c75696e74323536207374617274416d6f756e742c75696e7432353620656e64416d6f756e742c6164647265737320726563697069656e7429454950373132446f6d61696e28737472696e67206e616d652c737472696e672076657273696f6e2c75696e7432353620636861696e49642c6164647265737320766572696679696e67436f6e7472616374294f72646572436f6d706f6e656e74732861646472657373206f6666657265722c61646472657373207a6f6e652c4f666665724974656d5b5d206f666665722c436f6e73696465726174696f6e4974656d5b5d20636f6e73696465726174696f6e2c75696e7438206f72646572547970652c75696e7432353620737461727454696d652c75696e7432353620656e6454696d652c62797465733332207a6f6e65486173682c75696e743235362073616c742c6279746573333220636f6e647569744b65792c75696e7432353620636f756e746572294f666665724974656d2875696e7438206974656d547970652c6164647265737320746f6b656e2c75696e74323536206964656e7469666965724f7243726974657269612c75696e74323536207374617274416d6f756e742c75696e7432353620656e64416d6f756e7429", + "deployedBytecode": "0x608060405260043610610103575f3560e01c8063a900866b11610092578063f07ec37311610062578063f07ec373146102f7578063f2d12b1214610316578063f47b774014610329578063fb0f3ee114610116578063fd9f1e101461034c575f80fd5b8063a900866b1461028a578063b3a34c4c146102be578063e7acab24146102d1578063ed98a574146102e4575f80fd5b80637423eb3c116100d85780637423eb3c146101f757806379df72bd1461020b57806387201b411461022a578063881477321461024b578063a81744041461026a575f80fd5b801561011657806306fdde031461013e57806346423aa71461015f5780635b34b966146101d5575f80fd5b366101125761011061036b565b005b5f80fd5b610129610124366004615115565b6103f9565b60405190151581526020015b60405180910390f35b348015610149575f80fd5b50610152610408565b604051610135919061518f565b34801561016a575f80fd5b506101b36101793660046151a1565b5f9081526001602052604090205460ff808216926101008304909116916001600160781b03620100008204811692600160881b9092041690565b6040805194151585529215156020850152918301526060820152608001610135565b3480156101e0575f80fd5b506101e9610417565b604051908152602001610135565b348015610202575f80fd5b50610110610420565b348015610216575f80fd5b506101e96102253660046151b8565b6104c1565b61023d61023836600461524c565b6104f8565b6040516101359291906153f0565b348015610256575f80fd5b5061012961026536600461543f565b610571565b61027d61027836600461547d565b61058f565b60405161013591906154e3565b348015610295575f80fd5b506101e96102a43660046154f5565b6001600160a01b03165f9081526002602052604090205490565b6101296102cc36600461550e565b61062a565b6101296102df366004615553565b6106a3565b61023d6102f23660046155d7565b6106e1565b348015610302575f80fd5b506101e96103113660046154f5565b610784565b61027d610324366004615677565b6107a1565b348015610334575f80fd5b5061033d6107ea565b60405161013593929190615719565b348015610357575f80fd5b5061012961036636600461543f565b610801565b7f000000000000000000000000000000000000000000000000000000000000000080156103b357600263929eee145c146103b05763a61be9f05f52346020526024601cfd5b50565b63929eee1454806103e057600263929eee145c146103dc5763a61be9f05f52346020526024601cfd5b5050565b600381146103dc5763a61be9f05f52346020526024601cfd5b5f61040261080c565b92915050565b60606104126109c0565b905090565b5f6104126109d8565b63929eee14546001147f000000000000000000000000000000000000000000000000000000000000000080610453575080155b1561047157604051630f45b98b60e41b815260040160405180910390fd5b61049a7f0000000000000000000000000000000000000000000000000000000000000000610a45565b6104b7576040516370a4078f60e01b815260040160405180910390fd5b5f63929eee145550565b5f806104cd6004610aa3565b90506104f16104e282610ab35b63ffffffff16565b610140830135610b30565b3590565b9392505050565b60608061055d61051361050b6004610aa3565b610c746104da565b61052a61052260046020610cdc565b610cfa6104da565b61054161053960046040610cdc565b610d526104da565b61055061053960046060610cdc565b89338a15028a0189610daa565b915091509b509b9950505050505050505050565b5f6104f161058a6105826004610aa3565b610de46104da565b610e3c565b606061061f6105a96105a16004610aa3565b610f5d6104da565b604080515f8082526020820190925290610601565b6105ee6040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816105be5790505b5061061961061160046020610cdc565b610fb56104da565b3361100d565b90505b949350505050565b5f6104f161064361063b6004610aa3565b61104b6104da565b604080515f808252602082019092529061069b565b6106886040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816106585790505b5084336110c1565b5f6106d76106bc6106b46004610aa3565b6112406104da565b6106cb61052260046020610cdc565b853386150286016110c1565b9695505050505050565b6060806107736106f46105a16004610aa3565b604080515f808252602082019092529061074c565b6107396040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816107095790505b5061075c61053960046020610cdc565b61076b61053960046040610cdc565b883389610daa565b915091509850989650505050505050565b6001600160a01b0381165f90815260208190526040812054610402565b60606107dc6107b361050b6004610aa3565b6107c261052260046020610cdc565b6107d161061160046040610cdc565b33861502860161100d565b90505b979650505050505050565b60605f806107f661129c565b925092509250909192565b5f6104f183836112e8565b5f61012435600281901c90600316600182118334158214806108315761083134611423565b506003841160a0810260240135906502030203010160d01b861a905f630101020360d01b881a6108648882898888611434565b9096509150506101c4600583901b01355f87600581111561088757610887615329565b036108bc5760443560243517156108a557636ab37ce75f526004601cfd5b6108af8482611751565b6108b7611809565b61099d565b6040805160208082528183019092525f9160208201818036833701905050905060028a60058111156108f0576108f0615329565b036109135761090e60c4356084353360e435610104355b8787611889565b610988565b60038a600581111561092757610927615329565b036109455761090e60c4356084353360e435610104355b87876118d4565b60048a600581111561095957610959615329565b036109735761090e60243533608435604435606435610907565b6109886024353360843560443560643561093e565b610992848261190a565b61099b816119c4565b505b6109a88689846119e8565b6109b0611a5e565b6001995050505050505050505090565b6060602080526707536561706f727460475260606020f35b5f6109e1611ab1565b600143034060801c335f525f60205260405f208054820192508281555050336001600160a01b03167f721c20121297512b72821b97f5326877ea8ecf4bb9948fea5bfcb6453074d37f82604051610a3a91815260200190565b60405180910390a290565b5f816001600160a01b0316600a5a610a5d9190615773565b6040515f8181818686fa925050503d805f8114610a95576040519150601f19603f3d011682016040523d82523d5f602084013e610a9a565b606091505b50909392505050565b5f813563ffffffff168201610402565b5f610ac661016060408051918201905290565b9050610ad58282610140611b28565b610af2610aeb610ae6846040610cdc565b611b31565b6040830152565b5f610b06610b01846060610cdc565b611b84565b9050610b13816060840152565b610b26610b1e825190565b610140840152565b50919050565b0190565b610140820151604080519084015180515f939284927f000000000000000000000000000000000000000000000000000000000000000092602090910190845b81811015610b9c578251601f1901805186825260c082208652905260209384019390920191600101610b6f565b508060051b6040512094505050505f7f0000000000000000000000000000000000000000000000000000000000000000915060405160206060890151015f5b86811015610c08578151601f1901805186825260e082208552905260209283019290910190600101610bdb565b505060408051600587901b9020601f198a0180517f00000000000000000000000000000000000000000000000000000000000000008252928b01805197815260608c018051938152610140909c019a8b5261018082209390915295909552939097525050925250919050565b5f8063ffffffff8335169050600581901b610c986020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610cca610cc4610cbf8484610cdc565b611240565b82850152565b602001610ca7565b5050505050919050565b5f6104f163ffffffff610cf46104ed8686610b2c8516565b16840190565b5f8063ffffffff8335169050600581901b610d1e6020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610d4a610cc4610d458484610cdc565b611bc7565b602001610d2d565b5f8063ffffffff8335169050600581901b610d766020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610da2610cc4610d9d8484610cdc565b611c09565b602001610d85565b60608036155f80610dbe8c8c85898b611c4c565b91509150610dd18c8b8b8b8b8787612029565b9450945050505097509795505050505050565b5f8063ffffffff8335169050600581901b610e086020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610e34610cc4610e2f8484610cdc565b61215b565b602001610e17565b5f610e45611ab1565b5f805f80855190505f5b81811015610f50575f878281518110610e6a57610e6a615792565b60209081029190910101518051909150600481608001516004811115610e9257610e92615329565b03610e9e575050610f48565b80519450610eab8161219e565b5f8181526001602052604081209850909650610ecd90879089903615156121d7565b50865460ff16610f455780610140015181606001515114610ef057610ef0612265565b610eff85878460200151612272565b865460ff191660011787556040517ff280791efe782edcf06ce15c8f4dff17601db3b88eb3805a0db7d77faf757f0490610f3c9088908490615895565b60405180910390a15b50505b600101610e4f565b5060019695505050505050565b5f8063ffffffff8335169050600581901b610f816020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610fad610cc4610fa88484610cdc565b61104b565b602001610f90565b5f8063ffffffff8335169050600581901b610fd96020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257611005610cc46110008484610cdc565b61230e565b602001610fe8565b60605f36151590505f806110258888858b5189611c4c565b9150915061103282612341565b61103f8887848885612380565b98975050505050505050565b5f61105e61020060408051918201905290565b60a0810180825290915061107a61107484610aa3565b82612453565b61108660016020840152565b61109260016040840152565b6110af6110a86110a3856020610cdc565b612489565b6060840152565b610b266110ba6124b1565b6080840152565b835160808101515f91906110e860048260048111156110e2576110e2615329565b146124cb565b5f80806110f78a36151561256c565b60408051600180825281830190925293965091945092505f9190816020015b61111e615027565b8152602001906001900390816111165790505090508a815f8151811061114657611146615792565b602002602001018190525061115b818b612764565b6111678684848b6128dd565b6040805160018082528183019092525f91602080830190803683375091925050503615156004878181111561119e5761119e615329565b146111c1576111af8d83885f6129dd565b6111bb86868684612a2f565b506111d3565b6111d0888e6080015183612b33565b95505b6111de888c8c612c03565b85825f815181106111f1576111f1615792565b6020026020010181815250506112088d8388612d26565b61122586895f01518a602001518d8c604001518d60600151612df3565b61122d611a5e565b5060019c9b505050505050505050505050565b5f61125361020060408051918201905290565b905061126760208381019083016040611b28565b60a0810180825261127a61107484610aa3565b61128b6110a86110a3856060610cdc565b610b266110ba6110a3856080610cdc565b60605f805f6112a9612e58565b90505f7f0000000000000000000000000000000000000000000000000000000000000000905060605f5281602052806040526303312e3660635260a05ff35b5f6112f1611ab1565b5f8083815b81811015611408573687878381811061131157611311615792565b90506020028101906113239190615977565b90505f61133360208301836154f5565b90505f61134660408401602085016154f5565b90505f61135960a0850160808601615996565b905081331483331417156004821417871796505f61138d61138261137a8790565b610ab36104da565b866101400135610b30565b5f8181526001602052604090819020805461ffff19166101001781559051909a509091506001600160a01b0380851691908616907f6bacc01dbe442496068f7d234edd811f1a5f833243e0aec824f86ab861f3c90d906113f09085815260200190565b60405180910390a385600101955050505050506112f6565b5050801561141857611418612f35565b506001949350505050565b63a61be9f05f52806020526024601cfd5b5f8061143f5f6124cb565b611447612f42565b426101643511154261014435111715611475576321ccfeb75f5261014435602052610164356040526044601cfd5b610204356102643510156114905763466aa6165f526004601cfd5b7f0000000000000000000000000000000000000000000000000000000000000000608081905260a08790526060602460c037604060646101203760e060802061016052610264356102043560051b6102a0016001820181526020810190508881526080602460208301376101608860a0528760c0525f60e0525f6102043593505f5b84811015611566578060400261028401602081610100376040816101203760208101358317925060208401935060e0608020845260a0850194508b85528a6020860152604081606087013750600101611512565b6001850160051b610160206060526102643594505b848110156115b6578060400261028401925060a0840193508a845289602085015260408360608601376020830135919091179060010161157b565b506001600160a01b038111156115d3576339f3e3fd5f526004601cfd5b50505050505f7f00000000000000000000000000000000000000000000000000000000000000009050806080528360a052606060c460c0376020610104610120375060c06080205f9081526020812060e05260843590611647826001600160a01b03165f9081526020819052604090205490565b7f000000000000000000000000000000000000000000000000000000000000000060808190529091506040608460a03760605161010052896101205260a061014461014037816101e05261018060802094505050506102043560051b61018001828152336020820152608060408201526101206060820152600160808201528360a0820152606060c460c083013760a061026435026101e00160a4356084357f9d9af8e38d66c62e2c12f0225249fd9d721c54b83f48d9352c97c6cacdcb6f318385a35f60605260608101820160405250505f61172383612f8d565b905061172f8389612fde565b7101000000000000000000000000000001000182559150509550959350505050565b60c43560843560e4356101043584156117b9575f6040519050632671a55160e11b815260206004820152600160248201528660448201528460648201528360848201523360a48201528260c48201528160e48201526117b38682610104613033565b50611801565b60028660058111156117cd576117cd615329565b036117f457806001146117e3576117e3816130ea565b6117ef848433856130fb565b611801565b61180184843385856131b0565b505050505050565b346064356084356102643560061b5f80805b8381101561185a5761028481013592506102a481013591508683111561184357611843613287565b82870396506118528284613294565b60400161181b565b508585111561186b5761186b613287565b6118758486613294565b848611156118015761180133868803613294565b61189381836132ca565b816118ba57826001146118a9576118a9836130ea565b6118b5878787876130fb565b6118cb565b6118cb828260028a8a8a8a8a6132e8565b50505050505050565b6118dd83613367565b6118e781836132ca565b816118f9576118b587878787876131b0565b6118cb828260038a8a8a8a8a6132e8565b5f805f805f861561192f57505060843592503391505060c4356101043560e435611944565b50339350506084359150506024356064356044355b801561195257611952613379565b50600586901b6101e403356102643560061b5f80805b838110156119a95761028481013592506102a481013591508a156119935761199083876159b4565b95505b6119a1878a8486898f613386565b604001611968565b506119b886898988888e613386565b50505050505050505050565b60408151146119d05750565b5f6119dc826020015190565b90506103dc81836133bb565b611a048260a4355b331415600182116004909210919091161690565b15611a5957805f611a13825190565b9050608081901c63ffffffff8216611a3484826317b1f94282526001905250565b601c840163fb5014fc6060529350611a5060a4358886856133df565b5f6060526118cb565b505050565b7f00000000000000000000000000000000000000000000000000000000000000008015611a8f575f63929eee145d50565b63929eee145480611aa5575f63929eee145d5050565b50600163929eee145550565b7f00000000000000000000000000000000000000000000000000000000000000008015611af05763929eee145c156103b057637fa8a9875f526004601cfd5b63929eee145480611b135763929eee145c156103dc57637fa8a9875f526004601cfd5b600181146103dc57637fa8a9875f526004601cfd5b80838337505050565b5f63ffffffff8235166040519150808252602082018160051b81018060a084026020870183378293505b81841015611b745780845260209093019260a001611b5b565b60405250919392505050565b9052565b5f63ffffffff8235166040519150808252602082018160051b81018060c084026020870183378293505b81841015611b745780845260209093019260c001611bae565b5f611bd960a060408051918201905290565b9050611be782826080611b28565b611c04611bfd611bf8846080610cdc565b613427565b6080830152565b919050565b5f63ffffffff8235166040519150808252602082018160051b8101808360061b6020870183378293505b81841015611b7457808452602090930192604001611c33565b60605f611c5960016124cb565b86515f90600160e61b82351690806001600160401b03811115611c7e57611c7e61574b565b604051908082528060200260200182016040528015611ca7578160200160208202803683370190505b50945060010160051b91505f60205b83811015611ea8575f611ccc8c83613cce6104da565b90505f805f611cdb848e61256c565b6001600160781b0382166020880152919450925090505f829003611d025750505050611ea0565b6001600160781b0381166040808601919091528a8601849052845160a081015160c0820151608083015192909301518051600184119d909d179c600490931099509092915f5b81811015611dea575f838281518110611d6357611d63615792565b602002602001015190508b8151108d179c505f611d858989846080015161345e565b90508160800151826060015103611da25760608201819052611db7565b611db18989846060015161345e565b60608301525b5f611dd08360600151838a8a611dcb361590565b61349a565b606084018190526080909301929092525050600101611d48565b5087516060015180515f5b81811015611e94575f838281518110611e1057611e10615792565b602002602001015190505f611e2a8b8b846080015161345e565b90508160800151826060015103611e475760608201819052611e5c565b611e568b8b846060015161345e565b60608301525b5f611e718360600151838c8c611dcb36151590565b6060840181905260a0840180516080909501949094529092525050600101611df5565b50505050505050505050505b602001611cb6565b50506001600160e61b018103611ec057611ec06134ed565b50611ecb8888612764565b5f8060205b8381101561200e578581015192508215612006575f611ef28c83613cce6104da565b9050885f03611f0d575f878301819052602090910152612006565b60048151608001516004811115611f2657611f26615329565b14611fa957611f3f8188866001600587901c038e6134fa565b611f55575f878301819052602090910152612006565b602080820151604083015183516080810151930151611f8e9388936001600160781b039081169316913314156001909111168e17612a2f565b611fa4575f878301819052602090910152612006565b611fd4565b611fbb815f015182608001518c612b33565b878301819052935083611fd4575f602090910152612006565b886001900398505f815f01519050611fff85825f015183602001518c85604001518660600151612df3565b6001935050505b602001611ed0565b508061201c5761201c613555565b5050509550959350505050565b85518551606091829161203c81836159c7565b6001600160401b038111156120535761205361574b565b60405190808252806020026020018201604052801561208c57816020015b61207961505a565b8152602001906001900390816120715790505b5092505f5b828110156120e4576120bf8c5f8d84815181106120b0576120b0615792565b60200260200101518c8c613562565b8482815181106120d1576120d1615792565b6020908102919091010152600101612091565b505f5b8181101561213d576121168c60018c848151811061210757612107615792565b60200260200101518c5f613562565b848483018151811061212a5761212a615792565b60209081029190910101526001016120e7565b5061214b8b84888a896135b1565b9350505097509795505050505050565b5f61216c6040808051918201905290565b905061218661218261217d84610aa3565b61389a565b8252565b611c046121976110a3846020610cdc565b6020830152565b5f6121b38260600151518361014001516138b9565b81516001600160a01b03165f90815260208190526040902054610402908390610b30565b82545f90610100900460ff16156121fe5781156121f7576121f7856138c9565b505f610622565b83546201000090046001600160781b0316801561225957831561222957612224866138da565b612259565b8454600160881b90046001600160781b0316811061225957821561225057612250866138eb565b5f915050610622565b50600195945050505050565b632165628a5f526004601cfd5b33831480156122815750505050565b5f61228a612e58565b61190160f01b5f9081526002828152602287815260428320908390528651939450929190601f601d840116106102e260621984011016156122f4576122cf86886138fc565b61190160f01b5f908152600286905260228281526042822091905290975090506122f7565b50815b612304888285858a613992565b5050505050505050565b5f61231f6040808051918201905290565b9050612330612182610d9d84610aa3565b611c04612197610d9d846020610cdc565b80518060051b6040019050602082038051602082527f4b9f2d36e1b4c93de62cc077b00b1a91d84b6c31b4a14e012718dcca230689e78383a190525050565b8351606090806001600160401b0381111561239d5761239d61574b565b6040519080825280602002602001820160405280156123d657816020015b6123c361505a565b8152602001906001900390816123bb5790505b5091505f5b81811015612439575f8782815181106123f6576123f6615792565b6020026020010151905061241389825f0151836020015185613adb565b84838151811061242557612425615792565b6020908102919091010152506001016123db565b5061244787838787876135b1565b50505b95945050505050565b6124608282610160611b28565b612471610aeb610ae6846040610cdc565b6103dc612482610b01846060610cdc565b6060830152565b6040518135601f0163ffffffe01660200180838337913563ffffffff16815290810160405290565b5f6124c3602060408051918201905290565b5f8152905090565b7f000000000000000000000000000000000000000000000000000000000000000080156125185763929eee145c1561250a57637fa8a9875f526004601cfd5b8160010163929eee145d5050565b63929eee14548061254a5763929eee145c1561253b57637fa8a9875f526004601cfd5b8260010163929eee145d505050565b6001811461255f57637fa8a9875f526004601cfd5b505060020163929eee1455565b5f805f80855f015190506125898160a001518260c0015187613c80565b61259c57505f925082915081905061275d565b602086015160408701516001600160781b0391821694501691505f6004826080015160048111156125cf576125cf615329565b036125fc57600183850218905080156125ea576125ea613ca3565b506001935083925082915061275d9050565b50818311831517801561261157612611613ca3565b608082015160011615848411161561262b5761262b613cb0565b6126348261219e565b5f81815260016020526040812091965061265290879083908a6121d7565b61266557505f935083925061275d915050565b805460ff1661268057612680835f0151878a60600151612272565b8054608881901c8061269457869150612757565b6001600160781b038260101c169150600186036126b8578181039650809550612757565b8086036126d357908601858103868211029096039590612757565b80860296810291909502810186810387821102918290039695919003906001600160781b0386111561275757612717565b5f5b8215610b2657908290069190612706565b61272a6127248784612704565b88612704565b8015019687900496909504946001600160781b0386111561275757634e487b715f5260116020526024601cfd5b50505050505b9250925092565b805182515f5b82811015612853575f84828151811061278557612785615792565b602002602001015190505f815f015190508381106127aa576127aa8260200151613cbd565b5f8782815181106127bd576127bd615792565b6020026020010151905080602001516001600160781b03165f036127e35750505061284b565b80516040808201519085015163bfb3f8ce5f8760200151600181111561280b5761280b615329565b14612827575f61281c856060613cce565b9350636088d7de9150505b8251821061283857805f526004601cfd5b612843838389613cd9565b505050505050505b60010161276a565b505f5b818110156128d6575f85828151811061287157612871615792565b6020026020010151905080602001516001600160781b03165f0361289557506128ce565b8051608081015160608201516128b29085908363a8930e9a613d8c565b6128ca8483604001518363d69293326104da613d8c90565b5050505b600101612856565b5050505050565b60a084015160c08501516040860151515f805b8281101561295a575f8960400151828151811061290f5761290f615792565b602002602001015190505f815f01519050801584179350505f612946826060015183608001518c8c8b8b612941361590565b613df3565b6060830152506080018690526001016128f0565b5060808801516004811082168015612974576129746134ed565b505050506060860151515f5b81811015612304575f8860600151828151811061299f5761299f615792565b602002602001015190505f6129c4826060015183608001518b8b8a8a61294136151590565b60608301525060a0810151608090910152600101612980565b8351608081015160208201513314156001821160049092109190911616156128d6575f80612a12858489608001518988613e2e565b63fb5014fc6060529092509050611a5083602001518684846133df565b5f848152600160205260408120805482908290608881901c80612a5457889150612adc565b6001600160781b038260101c169150808803612a7857908801878111935090612adc565b97880297808802979190910288018781119350906001600160781b038083119089111715612adc57612aaa8883612704565b8015019788900497909104906001600160781b038083119089111715612adc57634e487b715f5260116020526024601cfd5b508215612b15578515612b09576040516310fda3e160e01b8152600481018a905260240160405180910390fd5b5f945050505050610622565b8660881b8160101b1760011782556001945050505050949350505050565b5f83610140015184606001515114612b4d57612b4d612265565b83515f8080612b5c8888613fac565b915091505f8082845f885af16001600160a01b0385165f908152600260205260409020805460018101909155606086901b189550925082612bbb578515612bae57612ba5614056565b612bae8561409d565b505f93506104f192505050565b505050505f805f612bd8876040015188606001516104da6140ae90565b925092509250825f14612bee57612bee8461409d565b60408701919091526060860152509392505050565b6040805160208082528183019092525f916020820181803683375050506040850151519091505f5b81811015612c7b575f86604001518281518110612c4a57612c4a615792565b60200260200101519050846080820152612c7281885f0151896101200151876104da61432790565b50600101612c2b565b50506060840151515f90815b81811015612d09575f87606001518281518110612ca657612ca6615792565b602002602001015190505f6005811115612cc257612cc2615329565b81516005811115612cd557612cd5615329565b03612cf1574793508381606001511115612cf157612cf1613287565b612d00813389886143276104da565b50600101612c87565b5050612d14826119c4565b504780156128d6576128d63382613294565b8251608081015160208201515f92839283928392916004811060019091111633909114151615612d8857612d69612d6361010083015190565b5190565b8861441c565b9093509150612d7a60208201612d5f565b945063fb5014fc9350612dd4565b600481608001516004811115612da057612da0615329565b0361230457805194505f8560601b9050612dc187838b608001518b8561445d565b639397928596509094509250612dd49050565b612dde6060859052565b612dea858785856133df565b5f606052612304565b60608290506060829050856001600160a01b0316876001600160a01b03167f9d9af8e38d66c62e2c12f0225249fd9d721c54b83f48d9352c97c6cacdcb6f318a888686604051612e469493929190615a13565b60405180910390a35050505050505050565b5f7f00000000000000000000000000000000000000000000000000000000000000004614612f10575060408051608080517f00000000000000000000000000000000000000000000000000000000000000005f9081527f00000000000000000000000000000000000000000000000000000000000000006020527f0000000000000000000000000000000000000000000000000000000000000000855246606090815230845260a08220949095529093529190915290565b507f000000000000000000000000000000000000000000000000000000000000000090565b63fed398fc5f526004601cfd5b600435602014610224356102401416610244356102606102643560061b01141660186101243510600160a01b60843560a4351760c4356024351717101616806103b0576103b0614528565b5f8181526001602081905260409091209060843590612fb290849084903615156121d7565b50815460ff16610b2657610b268184612fd9602463ffffffff6102443516016124896104da565b612272565b5f612feb8260a4356119f0565b15610402575f805f612ffc86614535565b63fb5014fc6060529194509250905061301c60a43587601c8601856133df565b5f60605260209190910160801b1781529392505050565b604080517f000000000000000000000000000000000000000000000000000000000000000060ff60a01b175f90815260208690527f000000000000000000000000000000000000000000000000000000000000000083526055600b20919092526001600160a01b031690505f805f805260205f85875f875af191505f519050816130c8576130bf614056565b6130c8836145ed565b6001600160e01b03198116632671a55160e11b146118015761180186846145fe565b6369f958275f52806020526024601cfd5b833b61311257635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af1806131a2573d1561318057601f3d0160051c8260051c8160030281831115613169578183036003028280028480020360091c01015b5a60208201101561317c573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b6131c757635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af18061326c573d1561324b57601f3d0160051c8560051c8160030281831115613234578183036003028280028480020360091c01015b5a602082011015613247573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b638ffff9805f526004601cfd5b61329d81613367565b5f805f805f85875af1905080611a59576132b5614056565b63bc806b965f5282602052816040526044601cfd5b5f6132d6836020015190565b9050818114611a5957611a59836119c4565b5f60208851036133225750604080885260208089018a9052632671a55160e11b918901919091526044880152600160648801819052613331565b50606487018051600101908190525b603c60c082028901038781528660208201528560408201528460608201528360808201528260a082015250505050505050505050565b806103b0576391b3e5145f526004601cfd5b636ab37ce75f526004601cfd5b61338f83613367565b61339981836132ca565b816133aa576117ef86868686614613565b611801828260018989895f8a6132e8565b6064810151604082019060c0026044016133d6848383613033565b50506020905250565b5f806001600160e01b03198451165f805260205f85875f8b5af15f51909350149050816134185761340e614056565b846080526024607cfd5b8061180157846080526024607cfd5b5f8063ffffffff83351690506001810160051b61344a8160408051918201905290565b9250613457848483611b28565b5050919050565b5f82840361346d5750806104f1565b82848309156134835763c63cf0895f526004601cfd5b5f61348e8584615aaf565b93909304949350505050565b5f8486146134e357838303428590038082035f6134b7838a615aaf565b6134c1838c615aaf565b6134cb91906159c7565b9050858487830304018115150294505050505061244a565b5092949350505050565b6312d3f5a35f526004601cfd5b8451608081015160208201515f92916004811060019091111633909114151615610f50575f8061353187848b608001518b8a613e2e565b9150915061354b836020015188848463fb5014fc8a614707565b935050505061244a565b63d5da9a1b5f526004601cfd5b61356a61505a565b83515f0361357b5761357b85614774565b5f85600181111561358e5761358e615329565b036135a45761359f86858385614785565b61244a565b61244a86858333876148f5565b84516060905f816001600160401b038111156135cf576135cf61574b565b6040519080825280602002602001820160405280156135f8578160200160208202803683370190505b506040805160208082528183019092529192505f9190602082018180368337505089519192505060010160051b60205b81811015613687575f61363e8b83613cce6104da565b8051606081015191925090801561367c57478111825115161561366857638ffff9805f526004601cfd5b61367c828460200151856040015189614327565b505050602001613628565b50505f5b838110156137f3575f8a82815181106136a6576136a6615792565b6020026020010151905080602001516001600160781b03165f036136ed575f8483815181106136d7576136d7615792565b91151560209283029190910190910152506137eb565b600184838151811061370157613701615792565b911515602092830291909101909101528051604081015180515f5b81811015613786575f83828151811061373757613737615792565b6020026020010151905080606001515f1461377357608081018051908e9052855161012087015161376d9184918c6143276104da565b60808201525b608081015160609091015260010161371c565b505050606081015180515f5b818110156137e5575f8382815181106137ad576137ad615792565b602002602001015190505f81606001519050805f146137d1576137d1888483614a2c565b5060a0810151606090910152600101613792565b50505050505b60010161368b565b506137fd816119c4565b47801561380e5761380e3382613294565b8515613884575f5b848110156138825783818151811061383057613830615792565b60200260200101511561387a5761387a8b828151811061385257613852615792565b60200260200101518a8b848151811061386d5761386d615792565b6020026020010151612d26565b600101613816565b505b61388c611a5e565b509098975050505050505050565b5f6138ad61016060408051918201905290565b9050611c048282612453565b808210156103dc576103dc614a45565b631a5155745f52806020526024601cfd5b63ee9e0e635f52806020526024601cfd5b6310fda3e15f52806020526024601cfd5b5f805f84516001811660410380820360051c9250808752806020018701915050805160e81c6003820191506001811660051b868152825160208218525060015b838110156139685760405f2082821c60051b60209081169182529384018051919094185260010161393c565b50505060405f2091505f61397b82614a52565b5f9081526020939093525050604090209392505050565b5f805f528151602083038051826041035f600182116139f557604087015160608801515f1a83156139d657601b8260ff1c0190506001600160ff1b03821660408a01525b88528a855260205f60808760015afa508385528588526040880152505f515b8a148a1515169450849050613abe57858552604082526044850380516040870351630b135d3f60e11b835289604089035260205f60648b01858f5afa96508615613ab257630b135d3f60e11b5f5114613ab2578b3b15613a5c57634f7fb80d5f526004601cfd5b6001866041031115613a7557638baa579f5f526004601cfd5b64010100000060608901515f1a1a15604187141615613aa557631f003d0a5f5260608801515f1a6020526024601cfd5b63815e1d645f526004601cfd5b8385529152603f198601525b5050508061180157613ace614056565b634f7fb80d5f526004601cfd5b613ae361505a565b8251158451151715613afc576398e9db6e5f526004601cfd5b613b0461505a565b613b118685835f806148f5565b805160608101515f03613b2657509050610622565b613b368787858460800151614785565b82516040828101519082015160208085015190840151855185511891181791181715613b6d5763bced929d5f52846020526024601cfd5b806060015182606001511115613bf4575f865f81518110613b9057613b90615792565b60200260200101519050816060015183606001510389825f015181518110613bba57613bba615792565b60200260200101515f015160600151826020015181518110613bde57613bde615792565b6020026020010151606001818152505050613c75565b5f875f81518110613c0757613c07615792565b60200260200101519050826060015182606001510389825f015181518110613c3157613c31615792565b60200260200101515f015160400151826020015181518110613c5557613c55615792565b602002602001015160600181815250508260600151826060018181525050505b505050949350505050565b428084111590831116818015613c94575080155b156104f1576104f18484614e61565b635a052b325f526004601cfd5b63a11b63ff5f526004601cfd5b63133c37c65f52806020526024601cfd5b5f6104f18284015190565b5f838381518110613cec57613cec615792565b602002602001015190505f815f01519050613d078160031090565b613d1357613d13614e76565b60408201518015613d3657613d318460600151828660800151614e83565b613d49565b60808401515115613d4957613d49614ecd565b6004821460030383816005811115613d6357613d63615329565b90816005811115613d7657613d76615329565b9052505050606090920151604090910152505050565b82515f5b81811015611801575f858281518110613dab57613dab615792565b60209081029190910101518051604082015191925090600382116004881415821515171615613de557855f5288602052836040526044601cfd5b505050806001019050613d90565b5f868803613e0d57613e0686868961345e565b90506107df565b6107dc613e1b87878b61345e565b613e2688888b61345e565b86868661349a565b5f805f613e39614eda565b6301e4d72a815260208082015260408101898152336060830152601c820194509091508751604082015287613e79613e7260a083015190565b60e0840152565b613e8f613e8760c083015190565b610100840152565b613ea5613e9d60e083015190565b610120840152565b610140613eb3816060850152565b5f613ebf604084015190565b90505f613ece82848701614ee4565b928301929050613edf836080870152565b5f613eeb606086015190565b90505f613efa82868901614f4a565b948501949050613f0b8560a0890152565b5f613f188e878a01614faf565b959095019450613f298560c0890152565b8685015f613f378e83614fce565b602497019687019a50613f539050613f4e8c8c0190565b614ffe565b8060408b901b60808b901b17178f610100018181525050613f7d8c82611b8090919063ffffffff16565b60058c8e51613f8c91906159b4565b613f97911b8b6159b4565b99505050505050505050509550959350505050565b5f8083613fb7614eda565b639891976581523360208201908152608060408301819052601c9092019450905f613fe3604085015190565b90505f613ff282848601614ee4565b928301929050614003836040860152565b5f61400f606087015190565b90505f61401e82868801614ee4565b94850194905061402f856060880152565b895f61403d82898901614faf565b9a9d96909a016004019b50949950505050505050505050565b3d1561409b57601f3d0160051c60405160051c8160030281831115614088578183036003028280028480020360091c01015b5a602082011015611a59573d5f803e3d5ffd5b565b63939792855f52806020526024601cfd5b60603d105f8080808080866141205760405f803e5f51935060205192503d60208501113d60208501118082179850505086614120576020845f3e5f51915060208360203e60205190508160071b60208501018160a0026020850101803d10823d101761ffff8486171117985050505f80525b86614152575f8061413584602088018d61415b565b9250975061414783602087018c61423b565b929092179850909550505b5050505061275d565b5f806040519150825160c08602602001830160405285835260208660010160051b8085018360010160051b8701614199858b81811090829003020190565b60010160051b8a861196505b808510156141f957828589015260808a843e6060830151955085608084015260608201518681116141d685856142e2565b17881797505060808a01995060a08301925060a0820191506020850194506141a5565b50505b8183101561422f578083870152608088823e6060810151608082015260808801975060a0810190506020830192506141fc565b50505050935093915050565b604051815180851190808603818710028101602060e08202850181016040528185526001928301600590811b87019390920190911b908185015b8282101561422f57808287015260a088823e60206060890160a083013e606081015160608501516142b26080840151608088015180159114171590565b818311176142c084886142e2565b60a09b909b019a179690961795505060c0938401936020929092019101614275565b5f81516040830151801560038311161561430457506040840151600119909101905b604085015181148551831460208701516020870151141616159250505092915050565b5f8451600581111561433b5761433b615329565b0361437857604084015160208501516001600160a01b0316171561436157614361613379565b61437384608001518560600151613294565b614416565b60018451600581111561438d5761438d615329565b036143be576040840151156143a4576143a4613379565b614373846020015184866080015187606001518686613386565b6002845160058111156143d3576143d3615329565b036143f7576143738460200151848660800151876040015188606001518787611889565b61441684602001518486608001518760400151886060015187876118d4565b50505050565b608082901c63ffffffff604084901c811690808516906144449084906317b1f94290611b8016565b601c830192506144548482614fce565b50509250929050565b5f80614467614eda565b63f4dd92ce815287841860a0820152601c8101925060200160a0808252875f614491604083015190565b90505f6144a082858701614ee4565b9384019390506144b1846020870152565b5f6144bd606085015190565b90505f6144cc82878901614f4a565b9586019590506144dd866040890152565b5f6144ea8d888a01614faf565b9687019690506144fb8760608a0152565b5f6145088d898b01614fce565b905080880197508760040199505050505050505050509550959350505050565b6339f3e3fd5f526004601cfd5b6301e4d72a6102043560051b6080019081525f808260208082015260408101858152336060830152601c919091019061456f608435610aeb565b61458061014460e083016060611b28565b61014061458e816060840152565b61459c60a082016080840152565b61016060a06102643581029290920101906145b8908290840152565b6145c25f82840152565b6020016145d08160c0840152565b5f9181019182526020820196909652939560449095019492505050565b63d13d53d45f52806020526024601cfd5b631cf99b265f5281602052806040526044601cfd5b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166146f85780873b1515166146f857806146e757816146ca573d156146a957601f3d0160051c8360051c8160030281831115614692578183036003028280028480020360091c01015b5a6020820110156146a5573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b5f805f6001600160e01b03198751165f805260205f888a5f8e5af15f5190935014905081614753578361473e575f925050506106d7565b614746614056565b845f52876020526024601cfd5b8061476557845f52876020526024601cfd5b50600198975050505050505050565b63375c24c15f52806020526024601cfd5b5f805f85865160051b87015b808210156148a2576020820191508851825151106147b1576147b16148d6565b81515160051b60208a01015180516020845101515f6040830151602085015115815184101517156147e6575050505050614791565b8260051b60208201015191505060608101935083518901915083511589831060011b17881797508198505f84528a51935086156001811461484f5760608220881860408d01516101208601511860208e015186511817171561484a5761484a6148d6565b614898565b8151855260208201516020860152604082015160408601528a6080860152835160208d015261012084015160408d015260608520975060208d0192508683181561489857865183525b5050505050614791565b5050508160608551015280156148cf57600181036148c7576391b3e5145f526004601cfd5b6148cf6148e3565b5050614416565b637fda72795f526004601cfd5b634e487b715f5260116020526024601cfd5b5f805f86875160051b88015b808210156149f7576020820191508151518a518110614922576149226148d6565b8060051b60208c01015190506020835101515f606083510151602084015115815184101517156149555750505050614901565b8260051b60208201015191505060608101925082518801915082511588831060011b17871796508197505f83528a5192508515600181146149a75760a0822087146149a2576149a26148d6565b6149ee565b815184526020820151602085015260408201516040850152608082015160808501528a60208d01528960408d015260a08220965060208d019250858318156149ee57855183525b50505050614901565b50508551606001839052508015614a255760018103614a1d576391b3e5145f526004601cfd5b614a256148e3565b50506128d6565b63a5f542085f528260205281604052806060526064601cfd5b63466aa6165f526004601cfd5b5f614e58565b5f6009821015614bb1576005821015614b0e576003821015614ac1577f832c58a5b611aadcfa6a082ac9d04bace53d8278387f10040347b7e98eb5b30260018314027fbf8e29b89f29ed9b529c154a63038ffca562f8d7cd1e2545dda53a1b582dde3018610402565b7ff3e8417a785f980bdaf134fa0274a6bf891eeb8195cd94b09d2aa651046e28bc60038314027fa02eb7ff164c884e5e2c336dc85f81c6a93329d8e9adf214b32729b894de2af118610402565b6007821015614b64577f25d02425402d882d211a7ab774c0ed6eca048c4d03d9af40132475744753b2a360058314027f1c19f71958cdd8f081b4c31f7caf5c010b29d12950be2fa1c95070dc47e30b5518610402565b7fb58d772fb09b426b9dece637f61ca9065f2b994f1464b51e9207f55f7c8f594860078314027f7ff98d9d4e55d876c5cfac10b43c04039522f3ddfb0ea9bfe70c68cfb5c7cc1418610402565b6011821015614d0957600d821015614c6657600b821015614c19577f6f0ec38c21f6f583ab7f3c5413c773ffd5344c34fde1d390958e438bf667448f60098314027fd1d97d1ef5eaa37a4ee5fbf234e6f6d64eb511eb562221cd7edfbdde0848da0518610402565b7f32f4e7485d6485f9f6c255929b9905c62ba919758bbe231f231eaeecf33d810c600b8314027fbb98d87cc12922b83759626c5f07d72266da9702d19ffad6a514c73a89002f5f18610402565b600f821015614cbc577f8df51df98847160517f5b1186b4bc3f418d98b8a7f17f1292f392d79d600d79e600d8314027f6b5b04cbae4fcb1a9d78e7b2dfc51a36933d023cf6e347e03d517b472a85259018610402565b7fcc4886e37eedd9aacd6c1c2c9247197a621a71282e87a7cbc673f3736d9aa141600f8314027f1da3eed3ecef6ebaa6e5023c057ec2c75150693fd0dac5c90f4a142f9879fde818610402565b6015821015614db5576013821015614d68577f2d7a3ed6dab270fdb8e054b2ad525f0ce2a8b89cc76c17f0965434740f673a5560118314027fc3939feff011e53ab8c35ca3370aad54c5df1fc2938cd62543174fa6e7d8587718610402565b7f54b3212a178782f104e0d514b41a9a5c4ca9c980bf6597c3cecbf280917e202a60138314027f5a4f867d3d458dabecad65f6201ceeaba0096df2d0c491cc32e6ea4e6435001718610402565b6017821015614e0b577fbb40bf8cea3a5a716e2b6eb08bbdac8ec159f82f380783db3c56904f15a43d0460158314027f3bd8cff538aba49a9c374c806d277181e9651624b3e31111bc0624574f8bca1d18610402565b7f403be09941a31d05cfc2f896505811353d45d38743288b016630cce39435476a60178314027f1d51df90cba8de7637ca3e8fe1e3511d1dc2f23487d05dbdecb781860c21ac1c18610402565b61040282614a58565b6321ccfeb75f5281602052806040526044601cfd5b6394eb6af65f526004601cfd5b5f835f5260205f2060208301835160051b81015b80821015614ebe57815180841160051b93845260209384185260405f209290910190614e97565b50508314905080614416576144165b6309bde3395f526004601cfd5b5f61041260405190565b5f825180835260208401602084018260051b82015b80831015614f375782518051835260208101516020840152604081015160408401526060810151606084015250602083019250608082019150614ef9565b5050508060071b60200191505092915050565b5f80614f54845190565b8084529050602084810190600583901b860181019085015b82821115614f9c575f614f7e84615008565b9050614f8c818360a0615011565b506020929092019160a001614f6c565b60a0840260200194505050505092915050565b5f63ffffffe0603f614fbf855190565b01169050610402838383615011565b5f80614fd8845190565b8084529050600581901b614ff3602086810190860183615011565b602001949350505050565b6103b06040829052565b5f610402825190565b8082828560045afa80153d151715614416575f80fd5b6040518060a0016040528061503a61509c565b81525f602082018190526040820152606080820181905260809091015290565b60408051610100810182525f606082018181526080830182905260a0830182905260c0830182905260e083018290528252602082018190529181019190915290565b6040518061016001604052805f6001600160a01b031681526020015f6001600160a01b0316815260200160608152602001606081526020015f60048111156150e6576150e6615329565b81525f6020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b5f60208284031215615125575f80fd5b81356001600160401b0381111561513a575f80fd5b820161024081850312156104f1575f80fd5b5f81518084525f5b8181101561517057602081850181015186830182015201615154565b505f602082860101526020601f19601f83011685010191505092915050565b602081525f6104f1602083018461514c565b5f602082840312156151b1575f80fd5b5035919050565b5f602082840312156151c8575f80fd5b81356001600160401b038111156151dd575f80fd5b820161016081850312156104f1575f80fd5b5f8083601f8401126151ff575f80fd5b5081356001600160401b03811115615215575f80fd5b6020830191508360208260051b850101111561522f575f80fd5b9250929050565b80356001600160a01b0381168114611c04575f80fd5b5f805f805f805f805f805f60e08c8e031215615266575f80fd5b6001600160401b03808d35111561527b575f80fd5b6152888e8e358f016151ef565b909c509a5060208d013581101561529d575f80fd5b6152ad8e60208f01358f016151ef565b909a50985060408d01358110156152c2575f80fd5b6152d28e60408f01358f016151ef565b909850965060608d01358110156152e7575f80fd5b506152f88d60608e01358e016151ef565b909550935060808c0135925061531060a08d01615236565b915060c08c013590509295989b509295989b9093969950565b634e487b7160e01b5f52602160045260245ffd5b60068110611b8057611b80615329565b61535882825161533d565b6020818101516001600160a01b0390811691840191909152604080830151908401526060808301519084015260809182015116910152565b5f815180845260208085019450602084015f5b838110156153e55781516153b888825161534d565b808401516001600160a01b031660a08901526040015160c088015260e090960195908201906001016153a3565b509495945050505050565b604080825283519082018190525f906020906060840190828701845b8281101561542a57815115158452928401929084019060010161540c565b50505083810360208501526106d78186615390565b5f8060208385031215615450575f80fd5b82356001600160401b03811115615465575f80fd5b615471858286016151ef565b90969095509350505050565b5f805f8060408587031215615490575f80fd5b84356001600160401b03808211156154a6575f80fd5b6154b2888389016151ef565b909650945060208701359150808211156154ca575f80fd5b506154d7878288016151ef565b95989497509550505050565b602081525f6104f16020830184615390565b5f60208284031215615505575f80fd5b6104f182615236565b5f806040838503121561551f575f80fd5b82356001600160401b03811115615534575f80fd5b830160408186031215615545575f80fd5b946020939093013593505050565b5f805f805f60808688031215615567575f80fd5b85356001600160401b038082111561557d575f80fd5b9087019060a0828a031215615590575f80fd5b909550602087013590808211156155a5575f80fd5b506155b2888289016151ef565b909550935050604086013591506155cb60608701615236565b90509295509295909350565b5f805f805f805f8060a0898b0312156155ee575f80fd5b88356001600160401b0380821115615604575f80fd5b6156108c838d016151ef565b909a50985060208b0135915080821115615628575f80fd5b6156348c838d016151ef565b909850965060408b013591508082111561564c575f80fd5b506156598b828c016151ef565b999c989b509699959896976060870135966080013595509350505050565b5f805f805f805f6080888a03121561568d575f80fd5b87356001600160401b03808211156156a3575f80fd5b6156af8b838c016151ef565b909950975060208a01359150808211156156c7575f80fd5b6156d38b838c016151ef565b909750955060408a01359150808211156156eb575f80fd5b506156f88a828b016151ef565b909450925061570b905060608901615236565b905092959891949750929550565b606081525f61572b606083018661514c565b6020830194909452506001600160a01b0391909116604090910152919050565b634e487b7160e01b5f52604160045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b5f8261578d57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f815180845260208085019450602084015f5b838110156153e55781516157ce88825161533d565b838101516001600160a01b03168885015260408082015190890152606080820151908901526080908101519088015260a090960195908201906001016157b9565b5f815180845260208085019450602084015f5b838110156153e557815161583788825161533d565b808401516001600160a01b0390811689860152604080830151908a0152606080830151908a0152608080830151908a015260a091820151169088015260c09096019590820190600101615822565b60058110611b8057611b80615329565b828152604060208201526158b56040820183516001600160a01b03169052565b5f60208301516158d060608401826001600160a01b03169052565b5060408301516101608060808501526158ed6101a08501836157a6565b91506060850151603f198584030160a086015261590a838261580f565b925050608085015161591f60c0860182615885565b5060a085015160e085015260c0850151610100818187015260e0870151915061012082818801528188015192506101409150828288015280880151848801525080870151610180870152505050809150509392505050565b5f823561015e1983360301811261598c575f80fd5b9190910192915050565b5f602082840312156159a6575f80fd5b8135600581106104f1575f80fd5b818103818111156104025761040261575f565b808201808211156104025761040261575f565b5f815180845260208085019450602084015f5b838110156153e557615a0087835161534d565b60a09690960195908201906001016159ed565b5f6080808301878452602060018060a01b03808916602087015260406080604088015283895180865260a08901915060208b0195505f5b81811015615a8b578651615a5f84825161533d565b808701518616848801528481015185850152606090810151908401529585019591870191600101615a4a565b50508781036060890152615a9f818a6159da565b9c9b505050505050505050505050565b80820281158282048414176104025761040261575f56fea164736f6c6343000818000a", + "linkReferences": {}, + "deployedLinkReferences": {} +} diff --git a/artifacts/SeaportProxyBuyer.json b/artifacts/SeaportProxyBuyer.json new file mode 100644 index 00000000..0884f1cd --- /dev/null +++ b/artifacts/SeaportProxyBuyer.json @@ -0,0 +1,866 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "SeaportProxyBuyer", + "sourceName": "contracts/marketplace/SeaportProxyBuyer.sol", + "abi": [ + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [], + "name": "InvalidSignature", + "type": "error" + }, + { + "inputs": [], + "name": "OrderIsNotFulfiled", + "type": "error" + }, + { + "inputs": [], + "name": "RecipientIsZeroAddress", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint8", + "name": "version", + "type": "uint8" + } + ], + "name": "Initialized", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "Paused", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "role", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "previousAdminRole", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "newAdminRole", + "type": "bytes32" + } + ], + "name": "RoleAdminChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "role", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "sender", + "type": "address" + } + ], + "name": "RoleGranted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "role", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "sender", + "type": "address" + } + ], + "name": "RoleRevoked", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "Unpaused", + "type": "event" + }, + { + "inputs": [], + "name": "DEFAULT_ADMIN_ROLE", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "MINTER_ROLE", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "NAME", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "VERSION", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "addMinter", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address[]", + "name": "accounts", + "type": "address[]" + } + ], + "name": "addMinters", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address payable", + "name": "receiver", + "type": "address" + } + ], + "name": "closeMinter", + "outputs": [], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "uint256", + "name": "nonce", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "internalType": "struct IForwarder.ForwardRequest", + "name": "req", + "type": "tuple" + }, + { + "internalType": "bytes", + "name": "signature", + "type": "bytes" + } + ], + "name": "execute", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "components": [ + { + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + } + ], + "internalType": "struct OfferItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct ConsiderationItem[]", + "name": "consideration", + "type": "tuple[]" + }, + { + "internalType": "enum OrderType", + "name": "orderType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "zoneHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "salt", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "totalOriginalConsiderationItems", + "type": "uint256" + } + ], + "internalType": "struct OrderParameters", + "name": "parameters", + "type": "tuple" + }, + { + "internalType": "uint120", + "name": "numerator", + "type": "uint120" + }, + { + "internalType": "uint120", + "name": "denominator", + "type": "uint120" + }, + { + "internalType": "bytes", + "name": "signature", + "type": "bytes" + }, + { + "internalType": "bytes", + "name": "extraData", + "type": "bytes" + } + ], + "internalType": "struct AdvancedOrder", + "name": "advancedOrder", + "type": "tuple" + }, + { + "components": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "enum Side", + "name": "side", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "index", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "bytes32[]", + "name": "criteriaProof", + "type": "bytes32[]" + } + ], + "internalType": "struct CriteriaResolver[]", + "name": "criteriaResolvers", + "type": "tuple[]" + }, + { + "internalType": "bytes32", + "name": "fulfillerConduitKey", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "recipient", + "type": "address" + } + ], + "name": "fulfillAdvancedOrder", + "outputs": [ + { + "internalType": "bool", + "name": "fulfilled", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "role", + "type": "bytes32" + } + ], + "name": "getRoleAdmin", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "role", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "grantRole", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "role", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "hasRole", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract ConsiderationInterface", + "name": "seaport", + "type": "address" + }, + { + "internalType": "contract IERC20", + "name": "usdc", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "isMinter", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "forwarder", + "type": "address" + } + ], + "name": "isTrustedForwarder", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "nonceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "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": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "removeMinter", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address[]", + "name": "accounts", + "type": "address[]" + } + ], + "name": "removeMinters", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "renounceMinter", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "role", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "renounceRole", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "role", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "revokeRole", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address payable", + "name": "receiver", + "type": "address" + } + ], + "name": "rotateMinter", + "outputs": [], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes4", + "name": "interfaceId", + "type": "bytes4" + } + ], + "name": "supportsInterface", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "unpause", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "uint256", + "name": "nonce", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "internalType": "struct IForwarder.ForwardRequest", + "name": "req", + "type": "tuple" + }, + { + "internalType": "bytes", + "name": "signature", + "type": "bytes" + } + ], + "name": "verify", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "withdraw", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801562000010575f80fd5b506200001b62000021565b620000e0565b5f54610100900460ff16156200008d5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b5f5460ff9081161015620000de575f805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b61276880620000ee5f395ff3fe6080604052600436106101d0575f3560e01c806381c81d35116100fd578063a424740011610092578063e7acab2411610062578063e7acab2414610534578063f2fde38b14610553578063f3fef3a314610572578063ffa1ad7414610591575f80fd5b8063a4247400146104b7578063aa271e1a146104d6578063d5391393146104f5578063d547741f14610515575f80fd5b8063983b2d56116100cd578063983b2d56146104335780639865027514610452578063a217fddf14610466578063a3f4df7e14610479575f80fd5b806381c81d35146103c65780638456cb59146103d95780638da5cb5b146103ed57806391d1485414610414575f80fd5b8063485cc95511610173578063634486da11610143578063634486da146103615780636ccbae5f14610374578063715018a61461039357806371e2a657146103a7575f80fd5b8063485cc955146102e3578063572b6c05146103025780635c975abb1461032a5780635fc1964f14610342575f80fd5b80632f2ff15d116101ae5780632f2ff15d146102705780633092afd51461029157806336568abe146102b05780633f4ba83a146102cf575f80fd5b806301ffc9a7146101d45780631bf7e13e14610208578063248a9ca314610234575b5f80fd5b3480156101df575f80fd5b506101f36101ee366004611b01565b6105c1565b60405190151581526020015b60405180910390f35b348015610213575f80fd5b50610227610222366004611b28565b6105f7565b6040516101ff9190611c0b565b34801561023f575f80fd5b5061026261024e366004611c1d565b5f90815260fb602052604090206001015490565b6040519081526020016101ff565b34801561027b575f80fd5b5061028f61028a366004611c58565b6106c0565b005b34801561029c575f80fd5b5061028f6102ab366004611c86565b6106e9565b3480156102bb575f80fd5b5061028f6102ca366004611c58565b6106fd565b3480156102da575f80fd5b5061028f610790565b3480156102ee575f80fd5b5061028f6102fd366004611ca1565b6107aa565b34801561030d575f80fd5b506101f361031c366004611c86565b6001600160a01b0316301490565b348015610335575f80fd5b5061012d5460ff166101f3565b34801561034d575f80fd5b5061028f61035c366004611d3b565b610977565b61028f61036f366004611c86565b6109b4565b34801561037f575f80fd5b5061026261038e366004611c1d565b610a74565b34801561039e575f80fd5b5061028f610acd565b3480156103b2575f80fd5b5061028f6103c1366004611d3b565b610ade565b61028f6103d4366004611c86565b610b1b565b3480156103e4575f80fd5b5061028f610b98565b3480156103f8575f80fd5b506097546040516001600160a01b0390911681526020016101ff565b34801561041f575f80fd5b506101f361042e366004611c58565b610bb0565b34801561043e575f80fd5b5061028f61044d366004611c86565b610bda565b34801561045d575f80fd5b5061028f610beb565b348015610471575f80fd5b506102625f81565b348015610484575f80fd5b506102276040518060400160405280601381526020017229b2b0b837b93a10283937bc3c90213abcb2b960691b81525081565b3480156104c2575f80fd5b506101f36104d1366004611b28565b610c04565b3480156104e1575f80fd5b506101f36104f0366004611c86565b610c55565b348015610500575f80fd5b506102625f8051602061273c83398151915281565b348015610520575f80fd5b5061028f61052f366004611c58565b610c6d565b34801561053f575f80fd5b506101f361054e366004611ddc565b610c91565b34801561055e575f80fd5b5061028f61056d366004611c86565b610de6565b34801561057d575f80fd5b5061028f61058c366004611e8f565b610e01565b34801561059c575f80fd5b5061022760405180604001604052806005815260200164302e302e3160d81b81525081565b5f6001600160e01b03198216637965db0b60e01b14806105f157506301ffc9a760e01b6001600160e01b03198316145b92915050565b60605f5a9050610608858585610c04565b61062557604051638baa579f60e01b815260040160405180910390fd5b6106b56106356020870187611c86565b3060408801358461064960608b018b611eb9565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f92019190915250610ee792505050565b9150505b9392505050565b5f82815260fb60205260409020600101546106da81610fc5565b6106e48383610fd6565b505050565b6106f161105c565b6106fa816110d5565b50565b6107056110ec565b6001600160a01b0316816001600160a01b0316146107825760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b61078c82826110fa565b5050565b61079861105c565b6107a061117e565b6107a86111c8565b565b5f54610100900460ff16158080156107c857505f54600160ff909116105b806107e15750303b1580156107e157505f5460ff166001145b6108445760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610779565b5f805460ff191660011790558015610865575f805461ff0019166101001790555b61015f80546001600160a01b03199081166001600160a01b03868116918217909355610160805490921692851692831790915560405163095ea7b360e01b815260048101919091525f19602482015263095ea7b3906044016020604051808303815f875af11580156108d9573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108fd9190611efc565b50610906611221565b61090e61124e565b61091661124e565b61091e611274565b6109266112aa565b61092e6112e1565b80156106e4575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a1505050565b61097f61105c565b5f5b815181101561078c576109ac82828151811061099f5761099f611f1b565b60200260200101516110d5565b600101610981565b6109bf6104f06110ec565b6109db5760405162461bcd60e51b815260040161077990611f2f565b6001600160a01b038116610a315760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610779565b610a3a81611314565b610a42610beb565b6040516001600160a01b038216903480156108fc02915f818181858888f1935050505015801561078c573d5f803e3d5ffd5b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f90610ac6906060016040516020818303038152906040528051906020012090565b5492915050565b610ad561105c565b6107a85f61132b565b610ae661105c565b5f5b815181101561078c57610b13828281518110610b0657610b06611f1b565b6020026020010151611314565b600101610ae8565b610b266104f06110ec565b610b425760405162461bcd60e51b815260040161077990611f2f565b6001600160a01b038116610a3a5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610779565b610ba061105c565b610ba861137c565b6107a86113c3565b5f91825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610be261105c565b6106fa81611314565b6107a85f8051602061273c8339815191526102ca6110ec565b5f610c4d610c1185611f64565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061140292505050565b949350505050565b5f6105f15f8051602061273c83398151915283610bb0565b5f82815260fb6020526040902060010154610c8781610fc5565b6106e483836110fa565b5f610c9d6104f06110ec565b610cb95760405162461bcd60e51b815260040161077990611f2f565b600260335403610d0b5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610779565b6002603355610d1861137c565b6001600160a01b038216610d3f576040516311d000e160e31b815260040160405180910390fd5b61015f546040516339eb2ac960e21b81526001600160a01b039091169063e7acab2490610d789089908990899089908990600401612398565b6020604051808303815f875af1158015610d94573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610db89190611efc565b905080610dd857604051636725093760e01b815260040160405180910390fd5b600160335595945050505050565b610dee61105c565b610df78161153d565b6106fa5f826115b3565b610e0961105c565b600260335403610e5b5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610779565b6002603355610e6861137c565b6101605460405163a9059cbb60e01b81526001600160a01b038481166004830152602482018490529091169063a9059cbb906044016020604051808303815f875af1158015610eb9573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610edd9190611efc565b5050600160335550565b6060610ef2856115bd565b5f80876001600160a01b031686610f0b8b8a8989611622565b604051610f18919061256e565b5f604051808303815f8787f1925050503d805f8114610f52576040519150601f19603f3d011682016040523d82523d5f602084013e610f57565b606091505b509092509050610f68603f8761259d565b5a11610f7657610f766125bc565b610fb682826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c4544000000000000815250611652565b925050505b9695505050505050565b6106fa81610fd16110ec565b61168b565b610fe08282610bb0565b61078c575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191660011790556110186110ec565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6110646110ec565b6001600160a01b031661107f6097546001600160a01b031690565b6001600160a01b0316146107a85760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610779565b6106fa5f8051602061273c83398151915282610c6d565b5f6110f56116ef565b905090565b6111048282610bb0565b1561078c575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff1916905561113a6110ec565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b61012d5460ff166107a85760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b6044820152606401610779565b6111d061117e565b61012d805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6112046110ec565b6040516001600160a01b03909116815260200160405180910390a1565b5f54610100900460ff166112475760405162461bcd60e51b8152600401610779906125d0565b6001603355565b5f54610100900460ff166107a85760405162461bcd60e51b8152600401610779906125d0565b5f54610100900460ff1661129a5760405162461bcd60e51b8152600401610779906125d0565b6107a86112a56110ec565b61132b565b5f54610100900460ff166112d05760405162461bcd60e51b8152600401610779906125d0565b6107a85f6112dc6110ec565b6115b3565b5f54610100900460ff166113075760405162461bcd60e51b8152600401610779906125d0565b61012d805460ff19169055565b6106fa5f8051602061273c833981519152826115b3565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b61012d5460ff16156107a85760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b6044820152606401610779565b6113cb61137c565b61012d805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586112046110ec565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015611446573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061146a919061261b565b90505f6115178660600151805190602001208688602001516040516020016114b79392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b9050818660200151148015610fbb57508551610fbb906001600160a01b03168286611709565b61154561105c565b6001600160a01b0381166115aa5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610779565b6106fa8161132b565b61078c8282610fd6565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f906060016040516020818303038152906040528051906020012090506116118190565b5461161d906001612632565b905550565b606082858560405160200161163993929190612645565b6040516020818303038152906040529050949350505050565b606083156116615750816106b9565b8251156116715782518084602001fd5b8160405162461bcd60e51b81526004016107799190611c0b565b6116958282610bb0565b61078c576116ad816001600160a01b03166014611844565b6116b8836020611844565b6040516020016116c9929190612683565b60408051601f198184030181529082905262461bcd60e51b825261077991600401611c0b565b5f303303611704575060331936013560601c90565b503390565b5f805f61171685856119da565b90925090505f81600481111561172e5761172e612074565b14801561174c5750856001600160a01b0316826001600160a01b0316145b1561175c576001925050506106b9565b5f80876001600160a01b0316631626ba7e60e01b88886040516024016117839291906126f7565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516117c1919061256e565b5f60405180830381855afa9150503d805f81146117f9576040519150601f19603f3d011682016040523d82523d5f602084013e6117fe565b606091505b5091509150818015611811575080516020145b801561183857508051630b135d3f60e11b90611836908301602090810190840161261b565b145b98975050505050505050565b60605f61185283600261270f565b61185d906002612632565b67ffffffffffffffff81111561187557611875611ccd565b6040519080825280601f01601f19166020018201604052801561189f576020820181803683370190505b509050600360fc1b815f815181106118b9576118b9611f1b565b60200101906001600160f81b03191690815f1a905350600f60fb1b816001815181106118e7576118e7611f1b565b60200101906001600160f81b03191690815f1a9053505f61190984600261270f565b611914906001612632565b90505b600181111561198b576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061194857611948611f1b565b1a60f81b82828151811061195e5761195e611f1b565b60200101906001600160f81b03191690815f1a90535060049490941c9361198481612726565b9050611917565b5083156106b95760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610779565b5f808251604103611a0e576020830151604084015160608501515f1a611a0287828585611a1c565b94509450505050611a15565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115611a5157505f90506003611af8565b8460ff16601b14158015611a6957508460ff16601c14155b15611a7957505f90506004611af8565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015611aca573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b038116611af2575f60019250925050611af8565b91505f90505b94509492505050565b5f60208284031215611b11575f80fd5b81356001600160e01b0319811681146106b9575f80fd5b5f805f60408486031215611b3a575f80fd5b833567ffffffffffffffff80821115611b51575f80fd5b9085019060808288031215611b64575f80fd5b90935060208501359080821115611b79575f80fd5b818601915086601f830112611b8c575f80fd5b813581811115611b9a575f80fd5b876020828501011115611bab575f80fd5b6020830194508093505050509250925092565b5f5b83811015611bd8578181015183820152602001611bc0565b50505f910152565b5f8151808452611bf7816020860160208601611bbe565b601f01601f19169290920160200192915050565b602081525f6106b96020830184611be0565b5f60208284031215611c2d575f80fd5b5035919050565b6001600160a01b03811681146106fa575f80fd5b8035611c5381611c34565b919050565b5f8060408385031215611c69575f80fd5b823591506020830135611c7b81611c34565b809150509250929050565b5f60208284031215611c96575f80fd5b81356106b981611c34565b5f8060408385031215611cb2575f80fd5b8235611cbd81611c34565b91506020830135611c7b81611c34565b634e487b7160e01b5f52604160045260245ffd5b6040516080810167ffffffffffffffff81118282101715611d0457611d04611ccd565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715611d3357611d33611ccd565b604052919050565b5f6020808385031215611d4c575f80fd5b823567ffffffffffffffff80821115611d63575f80fd5b818501915085601f830112611d76575f80fd5b813581811115611d8857611d88611ccd565b8060051b9150611d99848301611d0a565b8181529183018401918481019088841115611db2575f80fd5b938501935b838510156118385784359250611dcc83611c34565b8282529385019390850190611db7565b5f805f805f60808688031215611df0575f80fd5b853567ffffffffffffffff80821115611e07575f80fd5b9087019060a0828a031215611e1a575f80fd5b90955060208701359080821115611e2f575f80fd5b818801915088601f830112611e42575f80fd5b813581811115611e50575f80fd5b8960208260051b8501011115611e64575f80fd5b60208301965080955050505060408601359150611e8360608701611c48565b90509295509295909350565b5f8060408385031215611ea0575f80fd5b8235611eab81611c34565b946020939093013593505050565b5f808335601e19843603018112611ece575f80fd5b83018035915067ffffffffffffffff821115611ee8575f80fd5b602001915036819003821315611a15575f80fd5b5f60208284031215611f0c575f80fd5b815180151581146106b9575f80fd5b634e487b7160e01b5f52603260045260245ffd5b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b5f60808236031215611f74575f80fd5b611f7c611ce1565b8235611f8781611c34565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff80821115611fb7575f80fd5b9085019036601f830112611fc9575f80fd5b813581811115611fdb57611fdb611ccd565b611fed601f8201601f19168501611d0a565b91508082523684828501011115612002575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b5f808335601e19843603018112612036575f80fd5b830160208101925035905067ffffffffffffffff811115612055575f80fd5b60a081023603821315611a15575f80fd5b803560068110611c53575f80fd5b634e487b7160e01b5f52602160045260245ffd5b6006811061209857612098612074565b9052565b8183525f60208085019450825f5b8581101561210e576120c4876120bf84612066565b612088565b828201356120d181611c34565b6001600160a01b03168388015260408281013590880152606080830135908801526080808301359088015260a096870196909101906001016120aa565b509495945050505050565b5f808335601e1984360301811261212e575f80fd5b830160208101925035905067ffffffffffffffff81111561214d575f80fd5b60c081023603821315611a15575f80fd5b8183525f60208085019450825f5b8581101561210e57612181876120bf84612066565b8282013561218e81611c34565b6001600160a01b039081168885015260408381013590890152606080840135908901526080808401359089015260a090838201356121cb81611c34565b169088015260c096870196919091019060010161216c565b803560058110611c53575f80fd5b6005811061209857612098612074565b80356001600160781b0381168114611c53575f80fd5b5f808335601e1984360301811261222c575f80fd5b830160208101925035905067ffffffffffffffff81111561224b575f80fd5b803603821315611a15575f80fd5b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b8183525f6001600160fb1b03831115612298575f80fd5b8260051b80836020870137939093016020019392505050565b8183526020808401935f91600585811b8301820185855b8881101561238a57858303601f19018a52813536899003609e190181126122ed575f80fd5b88018035845260a08682013560028110612305575f80fd5b85880152604082810135908601526060808301359086015260808083013536849003601e19018112612335575f80fd5b90920187810192903567ffffffffffffffff811115612352575f80fd5b80881b3603841315612362575f80fd5b82828801526123748388018286612281565b9d89019d965050509286019250506001016122c8565b509098975050505050505050565b608081525f610120873561015e198936030181126123b4575f80fd5b60a0608085015288016123d98285016123cc83611c48565b6001600160a01b03169052565b6123e560208201611c48565b6101406123fc818701836001600160a01b03169052565b6124096040840184612021565b6101608881015292506124216102808801848361209c565b9250506124316060840184612119565b87840361011f190161018089015261244a84828461215e565b9350505061245a608084016121e3565b6124686101a08801826121f1565b5060a08301356101c087015260c08301356101e087015260e08301356102008701526101008084013561022088015284840135610240880152818401356102608801526124b760208d01612201565b6001600160781b03811660a089015294506124d460408d01612201565b6001600160781b03811660c089015294506124f260608d018d612217565b95509350607f199150818784030160e0880152612510838686612259565b945061251f60808d018d612217565b945092508187860301818801525050612539838383612259565b9250505082810360208401526125508187896122b1565b915050836040830152610fbb60608301846001600160a01b03169052565b5f825161257f818460208701611bbe565b9190910192915050565b634e487b7160e01b5f52601160045260245ffd5b5f826125b757634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b5f6020828403121561262b575f80fd5b5051919050565b808201808211156105f1576105f1612589565b5f8451612656818460208901611bbe565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081525f83516126ba816017850160208801611bbe565b7001034b99036b4b9b9b4b733903937b6329607d1b60179184019182015283516126eb816028840160208801611bbe565b01602801949350505050565b828152604060208201525f610c4d6040830184611be0565b80820281158282048414176105f1576105f1612589565b5f8161273457612734612589565b505f19019056fe9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000818000a", + "deployedBytecode": "0x6080604052600436106101d0575f3560e01c806381c81d35116100fd578063a424740011610092578063e7acab2411610062578063e7acab2414610534578063f2fde38b14610553578063f3fef3a314610572578063ffa1ad7414610591575f80fd5b8063a4247400146104b7578063aa271e1a146104d6578063d5391393146104f5578063d547741f14610515575f80fd5b8063983b2d56116100cd578063983b2d56146104335780639865027514610452578063a217fddf14610466578063a3f4df7e14610479575f80fd5b806381c81d35146103c65780638456cb59146103d95780638da5cb5b146103ed57806391d1485414610414575f80fd5b8063485cc95511610173578063634486da11610143578063634486da146103615780636ccbae5f14610374578063715018a61461039357806371e2a657146103a7575f80fd5b8063485cc955146102e3578063572b6c05146103025780635c975abb1461032a5780635fc1964f14610342575f80fd5b80632f2ff15d116101ae5780632f2ff15d146102705780633092afd51461029157806336568abe146102b05780633f4ba83a146102cf575f80fd5b806301ffc9a7146101d45780631bf7e13e14610208578063248a9ca314610234575b5f80fd5b3480156101df575f80fd5b506101f36101ee366004611b01565b6105c1565b60405190151581526020015b60405180910390f35b348015610213575f80fd5b50610227610222366004611b28565b6105f7565b6040516101ff9190611c0b565b34801561023f575f80fd5b5061026261024e366004611c1d565b5f90815260fb602052604090206001015490565b6040519081526020016101ff565b34801561027b575f80fd5b5061028f61028a366004611c58565b6106c0565b005b34801561029c575f80fd5b5061028f6102ab366004611c86565b6106e9565b3480156102bb575f80fd5b5061028f6102ca366004611c58565b6106fd565b3480156102da575f80fd5b5061028f610790565b3480156102ee575f80fd5b5061028f6102fd366004611ca1565b6107aa565b34801561030d575f80fd5b506101f361031c366004611c86565b6001600160a01b0316301490565b348015610335575f80fd5b5061012d5460ff166101f3565b34801561034d575f80fd5b5061028f61035c366004611d3b565b610977565b61028f61036f366004611c86565b6109b4565b34801561037f575f80fd5b5061026261038e366004611c1d565b610a74565b34801561039e575f80fd5b5061028f610acd565b3480156103b2575f80fd5b5061028f6103c1366004611d3b565b610ade565b61028f6103d4366004611c86565b610b1b565b3480156103e4575f80fd5b5061028f610b98565b3480156103f8575f80fd5b506097546040516001600160a01b0390911681526020016101ff565b34801561041f575f80fd5b506101f361042e366004611c58565b610bb0565b34801561043e575f80fd5b5061028f61044d366004611c86565b610bda565b34801561045d575f80fd5b5061028f610beb565b348015610471575f80fd5b506102625f81565b348015610484575f80fd5b506102276040518060400160405280601381526020017229b2b0b837b93a10283937bc3c90213abcb2b960691b81525081565b3480156104c2575f80fd5b506101f36104d1366004611b28565b610c04565b3480156104e1575f80fd5b506101f36104f0366004611c86565b610c55565b348015610500575f80fd5b506102625f8051602061273c83398151915281565b348015610520575f80fd5b5061028f61052f366004611c58565b610c6d565b34801561053f575f80fd5b506101f361054e366004611ddc565b610c91565b34801561055e575f80fd5b5061028f61056d366004611c86565b610de6565b34801561057d575f80fd5b5061028f61058c366004611e8f565b610e01565b34801561059c575f80fd5b5061022760405180604001604052806005815260200164302e302e3160d81b81525081565b5f6001600160e01b03198216637965db0b60e01b14806105f157506301ffc9a760e01b6001600160e01b03198316145b92915050565b60605f5a9050610608858585610c04565b61062557604051638baa579f60e01b815260040160405180910390fd5b6106b56106356020870187611c86565b3060408801358461064960608b018b611eb9565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f92019190915250610ee792505050565b9150505b9392505050565b5f82815260fb60205260409020600101546106da81610fc5565b6106e48383610fd6565b505050565b6106f161105c565b6106fa816110d5565b50565b6107056110ec565b6001600160a01b0316816001600160a01b0316146107825760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b61078c82826110fa565b5050565b61079861105c565b6107a061117e565b6107a86111c8565b565b5f54610100900460ff16158080156107c857505f54600160ff909116105b806107e15750303b1580156107e157505f5460ff166001145b6108445760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610779565b5f805460ff191660011790558015610865575f805461ff0019166101001790555b61015f80546001600160a01b03199081166001600160a01b03868116918217909355610160805490921692851692831790915560405163095ea7b360e01b815260048101919091525f19602482015263095ea7b3906044016020604051808303815f875af11580156108d9573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108fd9190611efc565b50610906611221565b61090e61124e565b61091661124e565b61091e611274565b6109266112aa565b61092e6112e1565b80156106e4575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a1505050565b61097f61105c565b5f5b815181101561078c576109ac82828151811061099f5761099f611f1b565b60200260200101516110d5565b600101610981565b6109bf6104f06110ec565b6109db5760405162461bcd60e51b815260040161077990611f2f565b6001600160a01b038116610a315760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610779565b610a3a81611314565b610a42610beb565b6040516001600160a01b038216903480156108fc02915f818181858888f1935050505015801561078c573d5f803e3d5ffd5b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f90610ac6906060016040516020818303038152906040528051906020012090565b5492915050565b610ad561105c565b6107a85f61132b565b610ae661105c565b5f5b815181101561078c57610b13828281518110610b0657610b06611f1b565b6020026020010151611314565b600101610ae8565b610b266104f06110ec565b610b425760405162461bcd60e51b815260040161077990611f2f565b6001600160a01b038116610a3a5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610779565b610ba061105c565b610ba861137c565b6107a86113c3565b5f91825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610be261105c565b6106fa81611314565b6107a85f8051602061273c8339815191526102ca6110ec565b5f610c4d610c1185611f64565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061140292505050565b949350505050565b5f6105f15f8051602061273c83398151915283610bb0565b5f82815260fb6020526040902060010154610c8781610fc5565b6106e483836110fa565b5f610c9d6104f06110ec565b610cb95760405162461bcd60e51b815260040161077990611f2f565b600260335403610d0b5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610779565b6002603355610d1861137c565b6001600160a01b038216610d3f576040516311d000e160e31b815260040160405180910390fd5b61015f546040516339eb2ac960e21b81526001600160a01b039091169063e7acab2490610d789089908990899089908990600401612398565b6020604051808303815f875af1158015610d94573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610db89190611efc565b905080610dd857604051636725093760e01b815260040160405180910390fd5b600160335595945050505050565b610dee61105c565b610df78161153d565b6106fa5f826115b3565b610e0961105c565b600260335403610e5b5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610779565b6002603355610e6861137c565b6101605460405163a9059cbb60e01b81526001600160a01b038481166004830152602482018490529091169063a9059cbb906044016020604051808303815f875af1158015610eb9573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610edd9190611efc565b5050600160335550565b6060610ef2856115bd565b5f80876001600160a01b031686610f0b8b8a8989611622565b604051610f18919061256e565b5f604051808303815f8787f1925050503d805f8114610f52576040519150601f19603f3d011682016040523d82523d5f602084013e610f57565b606091505b509092509050610f68603f8761259d565b5a11610f7657610f766125bc565b610fb682826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c4544000000000000815250611652565b925050505b9695505050505050565b6106fa81610fd16110ec565b61168b565b610fe08282610bb0565b61078c575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191660011790556110186110ec565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6110646110ec565b6001600160a01b031661107f6097546001600160a01b031690565b6001600160a01b0316146107a85760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610779565b6106fa5f8051602061273c83398151915282610c6d565b5f6110f56116ef565b905090565b6111048282610bb0565b1561078c575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff1916905561113a6110ec565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b61012d5460ff166107a85760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b6044820152606401610779565b6111d061117e565b61012d805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6112046110ec565b6040516001600160a01b03909116815260200160405180910390a1565b5f54610100900460ff166112475760405162461bcd60e51b8152600401610779906125d0565b6001603355565b5f54610100900460ff166107a85760405162461bcd60e51b8152600401610779906125d0565b5f54610100900460ff1661129a5760405162461bcd60e51b8152600401610779906125d0565b6107a86112a56110ec565b61132b565b5f54610100900460ff166112d05760405162461bcd60e51b8152600401610779906125d0565b6107a85f6112dc6110ec565b6115b3565b5f54610100900460ff166113075760405162461bcd60e51b8152600401610779906125d0565b61012d805460ff19169055565b6106fa5f8051602061273c833981519152826115b3565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b61012d5460ff16156107a85760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b6044820152606401610779565b6113cb61137c565b61012d805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586112046110ec565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015611446573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061146a919061261b565b90505f6115178660600151805190602001208688602001516040516020016114b79392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b9050818660200151148015610fbb57508551610fbb906001600160a01b03168286611709565b61154561105c565b6001600160a01b0381166115aa5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610779565b6106fa8161132b565b61078c8282610fd6565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f906060016040516020818303038152906040528051906020012090506116118190565b5461161d906001612632565b905550565b606082858560405160200161163993929190612645565b6040516020818303038152906040529050949350505050565b606083156116615750816106b9565b8251156116715782518084602001fd5b8160405162461bcd60e51b81526004016107799190611c0b565b6116958282610bb0565b61078c576116ad816001600160a01b03166014611844565b6116b8836020611844565b6040516020016116c9929190612683565b60408051601f198184030181529082905262461bcd60e51b825261077991600401611c0b565b5f303303611704575060331936013560601c90565b503390565b5f805f61171685856119da565b90925090505f81600481111561172e5761172e612074565b14801561174c5750856001600160a01b0316826001600160a01b0316145b1561175c576001925050506106b9565b5f80876001600160a01b0316631626ba7e60e01b88886040516024016117839291906126f7565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516117c1919061256e565b5f60405180830381855afa9150503d805f81146117f9576040519150601f19603f3d011682016040523d82523d5f602084013e6117fe565b606091505b5091509150818015611811575080516020145b801561183857508051630b135d3f60e11b90611836908301602090810190840161261b565b145b98975050505050505050565b60605f61185283600261270f565b61185d906002612632565b67ffffffffffffffff81111561187557611875611ccd565b6040519080825280601f01601f19166020018201604052801561189f576020820181803683370190505b509050600360fc1b815f815181106118b9576118b9611f1b565b60200101906001600160f81b03191690815f1a905350600f60fb1b816001815181106118e7576118e7611f1b565b60200101906001600160f81b03191690815f1a9053505f61190984600261270f565b611914906001612632565b90505b600181111561198b576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061194857611948611f1b565b1a60f81b82828151811061195e5761195e611f1b565b60200101906001600160f81b03191690815f1a90535060049490941c9361198481612726565b9050611917565b5083156106b95760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610779565b5f808251604103611a0e576020830151604084015160608501515f1a611a0287828585611a1c565b94509450505050611a15565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115611a5157505f90506003611af8565b8460ff16601b14158015611a6957508460ff16601c14155b15611a7957505f90506004611af8565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015611aca573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b038116611af2575f60019250925050611af8565b91505f90505b94509492505050565b5f60208284031215611b11575f80fd5b81356001600160e01b0319811681146106b9575f80fd5b5f805f60408486031215611b3a575f80fd5b833567ffffffffffffffff80821115611b51575f80fd5b9085019060808288031215611b64575f80fd5b90935060208501359080821115611b79575f80fd5b818601915086601f830112611b8c575f80fd5b813581811115611b9a575f80fd5b876020828501011115611bab575f80fd5b6020830194508093505050509250925092565b5f5b83811015611bd8578181015183820152602001611bc0565b50505f910152565b5f8151808452611bf7816020860160208601611bbe565b601f01601f19169290920160200192915050565b602081525f6106b96020830184611be0565b5f60208284031215611c2d575f80fd5b5035919050565b6001600160a01b03811681146106fa575f80fd5b8035611c5381611c34565b919050565b5f8060408385031215611c69575f80fd5b823591506020830135611c7b81611c34565b809150509250929050565b5f60208284031215611c96575f80fd5b81356106b981611c34565b5f8060408385031215611cb2575f80fd5b8235611cbd81611c34565b91506020830135611c7b81611c34565b634e487b7160e01b5f52604160045260245ffd5b6040516080810167ffffffffffffffff81118282101715611d0457611d04611ccd565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715611d3357611d33611ccd565b604052919050565b5f6020808385031215611d4c575f80fd5b823567ffffffffffffffff80821115611d63575f80fd5b818501915085601f830112611d76575f80fd5b813581811115611d8857611d88611ccd565b8060051b9150611d99848301611d0a565b8181529183018401918481019088841115611db2575f80fd5b938501935b838510156118385784359250611dcc83611c34565b8282529385019390850190611db7565b5f805f805f60808688031215611df0575f80fd5b853567ffffffffffffffff80821115611e07575f80fd5b9087019060a0828a031215611e1a575f80fd5b90955060208701359080821115611e2f575f80fd5b818801915088601f830112611e42575f80fd5b813581811115611e50575f80fd5b8960208260051b8501011115611e64575f80fd5b60208301965080955050505060408601359150611e8360608701611c48565b90509295509295909350565b5f8060408385031215611ea0575f80fd5b8235611eab81611c34565b946020939093013593505050565b5f808335601e19843603018112611ece575f80fd5b83018035915067ffffffffffffffff821115611ee8575f80fd5b602001915036819003821315611a15575f80fd5b5f60208284031215611f0c575f80fd5b815180151581146106b9575f80fd5b634e487b7160e01b5f52603260045260245ffd5b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b5f60808236031215611f74575f80fd5b611f7c611ce1565b8235611f8781611c34565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff80821115611fb7575f80fd5b9085019036601f830112611fc9575f80fd5b813581811115611fdb57611fdb611ccd565b611fed601f8201601f19168501611d0a565b91508082523684828501011115612002575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b5f808335601e19843603018112612036575f80fd5b830160208101925035905067ffffffffffffffff811115612055575f80fd5b60a081023603821315611a15575f80fd5b803560068110611c53575f80fd5b634e487b7160e01b5f52602160045260245ffd5b6006811061209857612098612074565b9052565b8183525f60208085019450825f5b8581101561210e576120c4876120bf84612066565b612088565b828201356120d181611c34565b6001600160a01b03168388015260408281013590880152606080830135908801526080808301359088015260a096870196909101906001016120aa565b509495945050505050565b5f808335601e1984360301811261212e575f80fd5b830160208101925035905067ffffffffffffffff81111561214d575f80fd5b60c081023603821315611a15575f80fd5b8183525f60208085019450825f5b8581101561210e57612181876120bf84612066565b8282013561218e81611c34565b6001600160a01b039081168885015260408381013590890152606080840135908901526080808401359089015260a090838201356121cb81611c34565b169088015260c096870196919091019060010161216c565b803560058110611c53575f80fd5b6005811061209857612098612074565b80356001600160781b0381168114611c53575f80fd5b5f808335601e1984360301811261222c575f80fd5b830160208101925035905067ffffffffffffffff81111561224b575f80fd5b803603821315611a15575f80fd5b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b8183525f6001600160fb1b03831115612298575f80fd5b8260051b80836020870137939093016020019392505050565b8183526020808401935f91600585811b8301820185855b8881101561238a57858303601f19018a52813536899003609e190181126122ed575f80fd5b88018035845260a08682013560028110612305575f80fd5b85880152604082810135908601526060808301359086015260808083013536849003601e19018112612335575f80fd5b90920187810192903567ffffffffffffffff811115612352575f80fd5b80881b3603841315612362575f80fd5b82828801526123748388018286612281565b9d89019d965050509286019250506001016122c8565b509098975050505050505050565b608081525f610120873561015e198936030181126123b4575f80fd5b60a0608085015288016123d98285016123cc83611c48565b6001600160a01b03169052565b6123e560208201611c48565b6101406123fc818701836001600160a01b03169052565b6124096040840184612021565b6101608881015292506124216102808801848361209c565b9250506124316060840184612119565b87840361011f190161018089015261244a84828461215e565b9350505061245a608084016121e3565b6124686101a08801826121f1565b5060a08301356101c087015260c08301356101e087015260e08301356102008701526101008084013561022088015284840135610240880152818401356102608801526124b760208d01612201565b6001600160781b03811660a089015294506124d460408d01612201565b6001600160781b03811660c089015294506124f260608d018d612217565b95509350607f199150818784030160e0880152612510838686612259565b945061251f60808d018d612217565b945092508187860301818801525050612539838383612259565b9250505082810360208401526125508187896122b1565b915050836040830152610fbb60608301846001600160a01b03169052565b5f825161257f818460208701611bbe565b9190910192915050565b634e487b7160e01b5f52601160045260245ffd5b5f826125b757634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b5f6020828403121561262b575f80fd5b5051919050565b808201808211156105f1576105f1612589565b5f8451612656818460208901611bbe565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081525f83516126ba816017850160208801611bbe565b7001034b99036b4b9b9b4b733903937b6329607d1b60179184019182015283516126eb816028840160208801611bbe565b01602801949350505050565b828152604060208201525f610c4d6040830184611be0565b80820281158282048414176105f1576105f1612589565b5f8161273457612734612589565b505f19019056fe9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000818000a", + "linkReferences": {}, + "deployedLinkReferences": {} +} diff --git a/artifacts/SignatureVerification.json b/artifacts/SignatureVerification.json new file mode 100644 index 00000000..9a3fffbc --- /dev/null +++ b/artifacts/SignatureVerification.json @@ -0,0 +1,37 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "SignatureVerification", + "sourceName": "seaport-core/src/lib/SignatureVerification.sol", + "abi": [ + { + "inputs": [], + "name": "BadContractSignature", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint8", + "name": "v", + "type": "uint8" + } + ], + "name": "BadSignatureV", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidSignature", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidSigner", + "type": "error" + } + ], + "bytecode": "0x6080604052348015600e575f80fd5b50601580601a5f395ff3fe60806040525f80fdfea164736f6c6343000818000a", + "deployedBytecode": "0x60806040525f80fdfea164736f6c6343000818000a", + "linkReferences": {}, + "deployedLinkReferences": {} +} diff --git a/artifacts/SignatureVerificationErrors.json b/artifacts/SignatureVerificationErrors.json new file mode 100644 index 00000000..e572ac3c --- /dev/null +++ b/artifacts/SignatureVerificationErrors.json @@ -0,0 +1,37 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "SignatureVerificationErrors", + "sourceName": "seaport-types/src/interfaces/SignatureVerificationErrors.sol", + "abi": [ + { + "inputs": [], + "name": "BadContractSignature", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint8", + "name": "v", + "type": "uint8" + } + ], + "name": "BadSignatureV", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidSignature", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidSigner", + "type": "error" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x", + "linkReferences": {}, + "deployedLinkReferences": {} +} diff --git a/artifacts/StablePriceOracle.json b/artifacts/StablePriceOracle.json index 5047c91b..6d4f1b97 100644 --- a/artifacts/StablePriceOracle.json +++ b/artifacts/StablePriceOracle.json @@ -200,8 +200,8 @@ "type": "function" } ], - "bytecode": "0x61014060405234801561001157600080fd5b506040516109e63803806109e683398101604081905261003091610106565b6001600160a01b0382166101205280518190600090610051576100516101e6565b60200260200101516080818152505080600181518110610073576100736101e6565b602002602001015160a0818152505080600281518110610095576100956101e6565b602002602001015160c08181525050806003815181106100b7576100b76101e6565b602002602001015160e08181525050806004815181106100d9576100d96101e6565b6020026020010151610100818152505050506101fc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561011957600080fd5b82516001600160a01b038116811461013057600080fd5b602084810151919350906001600160401b038082111561014f57600080fd5b818601915086601f83011261016357600080fd5b815181811115610175576101756100f0565b8060051b604051601f19603f8301168101818110858211171561019a5761019a6100f0565b6040529182528482019250838101850191898311156101b857600080fd5b938501935b828510156101d6578451845293850193928501926101bd565b8096505050505050509250929050565b634e487b7160e01b600052603260045260246000fd5b60805160a05160c05160e051610100516101205161077261027460003960008181610189015261056701526000818161012801526102af0152600081816101ef01526102e801526000818161014f015261031a0152600081816101c8015261034c01526000818160c5015261037601526107726000f3fe608060405234801561001057600080fd5b50600436106100935760003560e01c8063a200e15311610066578063a200e1531461014a578063a34e359614610171578063c8a4271f14610184578063cd5d2c74146101c3578063d820ed42146101ea57600080fd5b806301ffc9a7146100985780632c0fd74c146100c057806350e9a715146100f557806359b6b86c14610123575b600080fd5b6100ab6100a6366004610612565b610211565b60405190151581526020015b60405180910390f35b6100e77f000000000000000000000000000000000000000000000000000000000000000081565b6040519081526020016100b7565b61010861010336600461063c565b610248565b604080518251815260209283015192810192909252016100b7565b6100e77f000000000000000000000000000000000000000000000000000000000000000081565b6100e77f000000000000000000000000000000000000000000000000000000000000000081565b6100e761017f36600461063c565b61040e565b6101ab7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020016100b7565b6100e77f000000000000000000000000000000000000000000000000000000000000000081565b6100e77f000000000000000000000000000000000000000000000000000000000000000081565b60006001600160e01b031982166301ffc9a760e01b148061024257506001600160e01b031982166350e9a71560e01b145b92915050565b6040805180820190915260008082526020820152600061029d86868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061045f92505050565b90506000600582106102da576102d3847f00000000000000000000000000000000000000000000000000000000000000006106d1565b905061039d565b8160040361030c576102d3847f00000000000000000000000000000000000000000000000000000000000000006106d1565b8160030361033e576102d3847f00000000000000000000000000000000000000000000000000000000000000006106d1565b81600203610370576102d3847f00000000000000000000000000000000000000000000000000000000000000006106d1565b61039a847f00000000000000000000000000000000000000000000000000000000000000006106d1565b90505b60405180604001604052806103b183610562565b81526020016104016103fc8a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508c92508b91506106099050565b610562565b9052979650505050505050565b60006104566103fc86868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508892508791506106099050565b95945050505050565b8051600090819081905b80821015610559576000858381518110610485576104856106e8565b01602001516001600160f81b0319169050600160ff1b8110156104b4576104ad6001846106fe565b9250610546565b600760fd1b6001600160f81b0319821610156104d5576104ad6002846106fe565b600f60fc1b6001600160f81b0319821610156104f6576104ad6003846106fe565b601f60fb1b6001600160f81b031982161015610517576104ad6004846106fe565b603f60fa1b6001600160f81b031982161015610538576104ad6005846106fe565b6105436006846106fe565b92505b508261055181610711565b935050610469565b50909392505050565b6000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166350d25bcd6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105e7919061072a565b9050806105f8846305f5e1006106d1565b6106029190610743565b9392505050565b60009392505050565b60006020828403121561062457600080fd5b81356001600160e01b03198116811461060257600080fd5b6000806000806060858703121561065257600080fd5b843567ffffffffffffffff8082111561066a57600080fd5b818701915087601f83011261067e57600080fd5b81358181111561068d57600080fd5b88602082850101111561069f57600080fd5b6020928301999098509187013596604001359550909350505050565b634e487b7160e01b600052601160045260246000fd5b8082028115828204841417610242576102426106bb565b634e487b7160e01b600052603260045260246000fd5b80820180821115610242576102426106bb565b600060018201610723576107236106bb565b5060010190565b60006020828403121561073c57600080fd5b5051919050565b60008261076057634e487b7160e01b600052601260045260246000fd5b50049056fea164736f6c6343000811000a", - "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100935760003560e01c8063a200e15311610066578063a200e1531461014a578063a34e359614610171578063c8a4271f14610184578063cd5d2c74146101c3578063d820ed42146101ea57600080fd5b806301ffc9a7146100985780632c0fd74c146100c057806350e9a715146100f557806359b6b86c14610123575b600080fd5b6100ab6100a6366004610612565b610211565b60405190151581526020015b60405180910390f35b6100e77f000000000000000000000000000000000000000000000000000000000000000081565b6040519081526020016100b7565b61010861010336600461063c565b610248565b604080518251815260209283015192810192909252016100b7565b6100e77f000000000000000000000000000000000000000000000000000000000000000081565b6100e77f000000000000000000000000000000000000000000000000000000000000000081565b6100e761017f36600461063c565b61040e565b6101ab7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020016100b7565b6100e77f000000000000000000000000000000000000000000000000000000000000000081565b6100e77f000000000000000000000000000000000000000000000000000000000000000081565b60006001600160e01b031982166301ffc9a760e01b148061024257506001600160e01b031982166350e9a71560e01b145b92915050565b6040805180820190915260008082526020820152600061029d86868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061045f92505050565b90506000600582106102da576102d3847f00000000000000000000000000000000000000000000000000000000000000006106d1565b905061039d565b8160040361030c576102d3847f00000000000000000000000000000000000000000000000000000000000000006106d1565b8160030361033e576102d3847f00000000000000000000000000000000000000000000000000000000000000006106d1565b81600203610370576102d3847f00000000000000000000000000000000000000000000000000000000000000006106d1565b61039a847f00000000000000000000000000000000000000000000000000000000000000006106d1565b90505b60405180604001604052806103b183610562565b81526020016104016103fc8a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508c92508b91506106099050565b610562565b9052979650505050505050565b60006104566103fc86868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508892508791506106099050565b95945050505050565b8051600090819081905b80821015610559576000858381518110610485576104856106e8565b01602001516001600160f81b0319169050600160ff1b8110156104b4576104ad6001846106fe565b9250610546565b600760fd1b6001600160f81b0319821610156104d5576104ad6002846106fe565b600f60fc1b6001600160f81b0319821610156104f6576104ad6003846106fe565b601f60fb1b6001600160f81b031982161015610517576104ad6004846106fe565b603f60fa1b6001600160f81b031982161015610538576104ad6005846106fe565b6105436006846106fe565b92505b508261055181610711565b935050610469565b50909392505050565b6000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166350d25bcd6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105e7919061072a565b9050806105f8846305f5e1006106d1565b6106029190610743565b9392505050565b60009392505050565b60006020828403121561062457600080fd5b81356001600160e01b03198116811461060257600080fd5b6000806000806060858703121561065257600080fd5b843567ffffffffffffffff8082111561066a57600080fd5b818701915087601f83011261067e57600080fd5b81358181111561068d57600080fd5b88602082850101111561069f57600080fd5b6020928301999098509187013596604001359550909350505050565b634e487b7160e01b600052601160045260246000fd5b8082028115828204841417610242576102426106bb565b634e487b7160e01b600052603260045260246000fd5b80820180821115610242576102426106bb565b600060018201610723576107236106bb565b5060010190565b60006020828403121561073c57600080fd5b5051919050565b60008261076057634e487b7160e01b600052601260045260246000fd5b50049056fea164736f6c6343000811000a", + "bytecode": "0x610140604052348015610010575f80fd5b506040516109ac3803806109ac83398101604081905261002f91610102565b6001600160a01b03821661012052805181905f9061004f5761004f6101dc565b60200260200101516080818152505080600181518110610071576100716101dc565b602002602001015160a0818152505080600281518110610093576100936101dc565b602002602001015160c08181525050806003815181106100b5576100b56101dc565b602002602001015160e08181525050806004815181106100d7576100d76101dc565b6020026020010151610100818152505050506101f0565b634e487b7160e01b5f52604160045260245ffd5b5f8060408385031215610113575f80fd5b82516001600160a01b0381168114610129575f80fd5b602084810151919350906001600160401b0380821115610147575f80fd5b818601915086601f83011261015a575f80fd5b81518181111561016c5761016c6100ee565b8060051b604051601f19603f83011681018181108582111715610191576101916100ee565b6040529182528482019250838101850191898311156101ae575f80fd5b938501935b828510156101cc578451845293850193928501926101b3565b8096505050505050509250929050565b634e487b7160e01b5f52603260045260245ffd5b60805160a05160c05160e051610100516101205161074c6102605f395f8181610185015261055801525f818161012401526102a601525f81816101eb01526102df01525f818161014b015261031101525f81816101c4015261034301525f818160c1015261036d015261074c5ff3fe608060405234801561000f575f80fd5b5060043610610090575f3560e01c8063a200e15311610063578063a200e15314610146578063a34e35961461016d578063c8a4271f14610180578063cd5d2c74146101bf578063d820ed42146101e6575f80fd5b806301ffc9a7146100945780632c0fd74c146100bc57806350e9a715146100f157806359b6b86c1461011f575b5f80fd5b6100a76100a2366004610600565b61020d565b60405190151581526020015b60405180910390f35b6100e37f000000000000000000000000000000000000000000000000000000000000000081565b6040519081526020016100b3565b6101046100ff366004610627565b610243565b604080518251815260209283015192810192909252016100b3565b6100e37f000000000000000000000000000000000000000000000000000000000000000081565b6100e37f000000000000000000000000000000000000000000000000000000000000000081565b6100e361017b366004610627565b610404565b6101a77f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020016100b3565b6100e37f000000000000000000000000000000000000000000000000000000000000000081565b6100e37f000000000000000000000000000000000000000000000000000000000000000081565b5f6001600160e01b031982166301ffc9a760e01b148061023d57506001600160e01b031982166350e9a71560e01b145b92915050565b604080518082019091525f80825260208201525f61029586868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061045392505050565b90505f600582106102d1576102ca847f00000000000000000000000000000000000000000000000000000000000000006106b3565b9050610394565b81600403610303576102ca847f00000000000000000000000000000000000000000000000000000000000000006106b3565b81600303610335576102ca847f00000000000000000000000000000000000000000000000000000000000000006106b3565b81600203610367576102ca847f00000000000000000000000000000000000000000000000000000000000000006106b3565b610391847f00000000000000000000000000000000000000000000000000000000000000006106b3565b90505b60405180604001604052806103a883610554565b81526020016103f76103f28a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c92508b91506105f89050565b610554565b9052979650505050505050565b5f61044a6103f286868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508892508791506105f89050565b95945050505050565b80515f90819081905b8082101561054b575f858381518110610477576104776106ca565b01602001516001600160f81b0319169050600160ff1b8110156104a65761049f6001846106de565b9250610538565b600760fd1b6001600160f81b0319821610156104c75761049f6002846106de565b600f60fc1b6001600160f81b0319821610156104e85761049f6003846106de565b601f60fb1b6001600160f81b0319821610156105095761049f6004846106de565b603f60fa1b6001600160f81b03198216101561052a5761049f6005846106de565b6105356006846106de565b92505b5082610543816106f1565b93505061045c565b50909392505050565b5f807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166350d25bcd6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105b2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105d69190610709565b9050806105e7846305f5e1006106b3565b6105f19190610720565b9392505050565b5f9392505050565b5f60208284031215610610575f80fd5b81356001600160e01b0319811681146105f1575f80fd5b5f805f806060858703121561063a575f80fd5b843567ffffffffffffffff80821115610651575f80fd5b818701915087601f830112610664575f80fd5b813581811115610672575f80fd5b886020828501011115610683575f80fd5b6020928301999098509187013596604001359550909350505050565b634e487b7160e01b5f52601160045260245ffd5b808202811582820484141761023d5761023d61069f565b634e487b7160e01b5f52603260045260245ffd5b8082018082111561023d5761023d61069f565b5f600182016107025761070261069f565b5060010190565b5f60208284031215610719575f80fd5b5051919050565b5f8261073a57634e487b7160e01b5f52601260045260245ffd5b50049056fea164736f6c6343000818000a", + "deployedBytecode": "0x608060405234801561000f575f80fd5b5060043610610090575f3560e01c8063a200e15311610063578063a200e15314610146578063a34e35961461016d578063c8a4271f14610180578063cd5d2c74146101bf578063d820ed42146101e6575f80fd5b806301ffc9a7146100945780632c0fd74c146100bc57806350e9a715146100f157806359b6b86c1461011f575b5f80fd5b6100a76100a2366004610600565b61020d565b60405190151581526020015b60405180910390f35b6100e37f000000000000000000000000000000000000000000000000000000000000000081565b6040519081526020016100b3565b6101046100ff366004610627565b610243565b604080518251815260209283015192810192909252016100b3565b6100e37f000000000000000000000000000000000000000000000000000000000000000081565b6100e37f000000000000000000000000000000000000000000000000000000000000000081565b6100e361017b366004610627565b610404565b6101a77f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020016100b3565b6100e37f000000000000000000000000000000000000000000000000000000000000000081565b6100e37f000000000000000000000000000000000000000000000000000000000000000081565b5f6001600160e01b031982166301ffc9a760e01b148061023d57506001600160e01b031982166350e9a71560e01b145b92915050565b604080518082019091525f80825260208201525f61029586868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061045392505050565b90505f600582106102d1576102ca847f00000000000000000000000000000000000000000000000000000000000000006106b3565b9050610394565b81600403610303576102ca847f00000000000000000000000000000000000000000000000000000000000000006106b3565b81600303610335576102ca847f00000000000000000000000000000000000000000000000000000000000000006106b3565b81600203610367576102ca847f00000000000000000000000000000000000000000000000000000000000000006106b3565b610391847f00000000000000000000000000000000000000000000000000000000000000006106b3565b90505b60405180604001604052806103a883610554565b81526020016103f76103f28a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c92508b91506105f89050565b610554565b9052979650505050505050565b5f61044a6103f286868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508892508791506105f89050565b95945050505050565b80515f90819081905b8082101561054b575f858381518110610477576104776106ca565b01602001516001600160f81b0319169050600160ff1b8110156104a65761049f6001846106de565b9250610538565b600760fd1b6001600160f81b0319821610156104c75761049f6002846106de565b600f60fc1b6001600160f81b0319821610156104e85761049f6003846106de565b601f60fb1b6001600160f81b0319821610156105095761049f6004846106de565b603f60fa1b6001600160f81b03198216101561052a5761049f6005846106de565b6105356006846106de565b92505b5082610543816106f1565b93505061045c565b50909392505050565b5f807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166350d25bcd6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105b2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105d69190610709565b9050806105e7846305f5e1006106b3565b6105f19190610720565b9392505050565b5f9392505050565b5f60208284031215610610575f80fd5b81356001600160e01b0319811681146105f1575f80fd5b5f805f806060858703121561063a575f80fd5b843567ffffffffffffffff80821115610651575f80fd5b818701915087601f830112610664575f80fd5b813581811115610672575f80fd5b886020828501011115610683575f80fd5b6020928301999098509187013596604001359550909350505050565b634e487b7160e01b5f52601160045260245ffd5b808202811582820484141761023d5761023d61069f565b634e487b7160e01b5f52603260045260245ffd5b8082018082111561023d5761023d61069f565b5f600182016107025761070261069f565b5060010190565b5f60208284031215610719575f80fd5b5051919050565b5f8261073a57634e487b7160e01b5f52601260045260245ffd5b50049056fea164736f6c6343000818000a", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/artifacts/TLDPublicSuffixList.json b/artifacts/TLDPublicSuffixList.json index de126baf..da247f41 100644 --- a/artifacts/TLDPublicSuffixList.json +++ b/artifacts/TLDPublicSuffixList.json @@ -23,8 +23,8 @@ "type": "function" } ], - "bytecode": "0x608060405234801561001057600080fd5b506101e4806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c80634f89059e14610030575b600080fd5b61004361003e36600461012e565b610057565b604051901515815260200160405180910390f35b60008061009e600085858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929392505061010a9050565b60ff16905060008111801561010057506100fb6100bc8260016101a0565b85858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929392505061010a9050565b60ff16155b9150505b92915050565b600082828151811061011e5761011e6101c1565b016020015160f81c905092915050565b6000806020838503121561014157600080fd5b823567ffffffffffffffff8082111561015957600080fd5b818501915085601f83011261016d57600080fd5b81358181111561017c57600080fd5b86602082850101111561018e57600080fd5b60209290920196919550909350505050565b8082018082111561010457634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fdfea164736f6c6343000811000a", - "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061002b5760003560e01c80634f89059e14610030575b600080fd5b61004361003e36600461012e565b610057565b604051901515815260200160405180910390f35b60008061009e600085858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929392505061010a9050565b60ff16905060008111801561010057506100fb6100bc8260016101a0565b85858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929392505061010a9050565b60ff16155b9150505b92915050565b600082828151811061011e5761011e6101c1565b016020015160f81c905092915050565b6000806020838503121561014157600080fd5b823567ffffffffffffffff8082111561015957600080fd5b818501915085601f83011261016d57600080fd5b81358181111561017c57600080fd5b86602082850101111561018e57600080fd5b60209290920196919550909350505050565b8082018082111561010457634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fdfea164736f6c6343000811000a", + "bytecode": "0x608060405234801561000f575f80fd5b506101d18061001d5f395ff3fe608060405234801561000f575f80fd5b5060043610610029575f3560e01c80634f89059e1461002d575b5f80fd5b61004061003b366004610125565b610054565b604051901515815260200160405180910390f35b5f806100985f85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101029050565b60ff1690505f811180156100f857506100f36100b5826001610191565b85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101029050565b60ff16155b9150505b92915050565b5f828281518110610115576101156101b0565b016020015160f81c905092915050565b5f8060208385031215610136575f80fd5b823567ffffffffffffffff8082111561014d575f80fd5b818501915085601f830112610160575f80fd5b81358181111561016e575f80fd5b86602082850101111561017f575f80fd5b60209290920196919550909350505050565b808201808211156100fc57634e487b7160e01b5f52601160045260245ffd5b634e487b7160e01b5f52603260045260245ffdfea164736f6c6343000818000a", + "deployedBytecode": "0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c80634f89059e1461002d575b5f80fd5b61004061003b366004610125565b610054565b604051901515815260200160405180910390f35b5f806100985f85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101029050565b60ff1690505f811180156100f857506100f36100b5826001610191565b85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101029050565b60ff16155b9150505b92915050565b5f828281518110610115576101156101b0565b016020015160f81c905092915050565b5f8060208385031215610136575f80fd5b823567ffffffffffffffff8082111561014d575f80fd5b818501915085601f830112610160575f80fd5b81358181111561016e575f80fd5b86602082850101111561017f575f80fd5b60209290920196919550909350505050565b808201808211156100fc57634e487b7160e01b5f52601160045260245ffd5b634e487b7160e01b5f52603260045260245ffdfea164736f6c6343000818000a", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/artifacts/TokenTransferrer.json b/artifacts/TokenTransferrer.json new file mode 100644 index 00000000..13521f8d --- /dev/null +++ b/artifacts/TokenTransferrer.json @@ -0,0 +1,136 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "TokenTransferrer", + "sourceName": "seaport-core/src/lib/TokenTransferrer.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "BadReturnValueFromERC20OnTransfer", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256[]", + "name": "identifiers", + "type": "uint256[]" + }, + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + } + ], + "name": "ERC1155BatchTransferGenericFailure", + "type": "error" + }, + { + "inputs": [], + "name": "Invalid1155BatchTransferEncoding", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "InvalidERC721TransferAmount", + "type": "error" + }, + { + "inputs": [], + "name": "MissingItemAmount", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "NoContract", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "TokenTransferGenericFailure", + "type": "error" + }, + { + "inputs": [], + "name": "UnusedItemParameters", + "type": "error" + } + ], + "bytecode": "0x6080604052348015600e575f80fd5b50601580601a5f395ff3fe60806040525f80fdfea164736f6c6343000818000a", + "deployedBytecode": "0x60806040525f80fdfea164736f6c6343000818000a", + "linkReferences": {}, + "deployedLinkReferences": {} +} diff --git a/artifacts/TokenTransferrerErrors.json b/artifacts/TokenTransferrerErrors.json new file mode 100644 index 00000000..0d8d99dd --- /dev/null +++ b/artifacts/TokenTransferrerErrors.json @@ -0,0 +1,136 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "TokenTransferrerErrors", + "sourceName": "seaport-types/src/interfaces/TokenTransferrerErrors.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "BadReturnValueFromERC20OnTransfer", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256[]", + "name": "identifiers", + "type": "uint256[]" + }, + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + } + ], + "name": "ERC1155BatchTransferGenericFailure", + "type": "error" + }, + { + "inputs": [], + "name": "Invalid1155BatchTransferEncoding", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "InvalidERC721TransferAmount", + "type": "error" + }, + { + "inputs": [], + "name": "MissingItemAmount", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "NoContract", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "TokenTransferGenericFailure", + "type": "error" + }, + { + "inputs": [], + "name": "UnusedItemParameters", + "type": "error" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x", + "linkReferences": {}, + "deployedLinkReferences": {} +} diff --git a/artifacts/UNSOperator.json b/artifacts/UNSOperator.json index cf761779..46207936 100644 --- a/artifacts/UNSOperator.json +++ b/artifacts/UNSOperator.json @@ -102,8 +102,8 @@ "type": "function" } ], - "bytecode": "0x608060405234801561001057600080fd5b50610454806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c8063715018a6146100675780638129fc1c146100715780638da5cb5b14610079578063a3f4df7e14610099578063f2fde38b146100d2578063ffa1ad74146100e5575b600080fd5b61006f610109565b005b61006f61011d565b6033546040516001600160a01b0390911681526020015b60405180910390f35b6100c56040518060400160405280600d81526020016c2aa7299d1027b832b930ba37b960991b81525081565b60405161009091906103c9565b61006f6100e0366004610417565b610233565b6100c5604051806040016040528060058152602001640302e312e360dc1b81525081565b6101116102a9565b61011b6000610303565b565b600054610100900460ff161580801561013d5750600054600160ff909116105b806101575750303b158015610157575060005460ff166001145b6101bf5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff1916600117905580156101e2576000805461ff0019166101001790555b6101ea610355565b8015610230576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50565b61023b6102a9565b6001600160a01b0381166102a05760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016101b6565b61023081610303565b6033546001600160a01b0316331461011b5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016101b6565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600054610100900460ff166103c05760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016101b6565b61011b33610303565b600060208083528351808285015260005b818110156103f6578581018301518582016040015282016103da565b506000604082860101526040601f19601f8301168501019250505092915050565b60006020828403121561042957600080fd5b81356001600160a01b038116811461044057600080fd5b939250505056fea164736f6c6343000811000a", - "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100625760003560e01c8063715018a6146100675780638129fc1c146100715780638da5cb5b14610079578063a3f4df7e14610099578063f2fde38b146100d2578063ffa1ad74146100e5575b600080fd5b61006f610109565b005b61006f61011d565b6033546040516001600160a01b0390911681526020015b60405180910390f35b6100c56040518060400160405280600d81526020016c2aa7299d1027b832b930ba37b960991b81525081565b60405161009091906103c9565b61006f6100e0366004610417565b610233565b6100c5604051806040016040528060058152602001640302e312e360dc1b81525081565b6101116102a9565b61011b6000610303565b565b600054610100900460ff161580801561013d5750600054600160ff909116105b806101575750303b158015610157575060005460ff166001145b6101bf5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff1916600117905580156101e2576000805461ff0019166101001790555b6101ea610355565b8015610230576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50565b61023b6102a9565b6001600160a01b0381166102a05760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016101b6565b61023081610303565b6033546001600160a01b0316331461011b5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016101b6565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600054610100900460ff166103c05760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016101b6565b61011b33610303565b600060208083528351808285015260005b818110156103f6578581018301518582016040015282016103da565b506000604082860101526040601f19601f8301168501019250505092915050565b60006020828403121561042957600080fd5b81356001600160a01b038116811461044057600080fd5b939250505056fea164736f6c6343000811000a", + "bytecode": "0x608060405234801561000f575f80fd5b506104438061001d5f395ff3fe608060405234801561000f575f80fd5b5060043610610060575f3560e01c8063715018a6146100645780638129fc1c1461006e5780638da5cb5b14610076578063a3f4df7e14610096578063f2fde38b146100cf578063ffa1ad74146100e2575b5f80fd5b61006c610106565b005b61006c610119565b6033546040516001600160a01b0390911681526020015b60405180910390f35b6100c26040518060400160405280600d81526020016c2aa7299d1027b832b930ba37b960991b81525081565b60405161008d91906103bd565b61006c6100dd366004610409565b610229565b6100c2604051806040016040528060058152602001640302e312e360dc1b81525081565b61010e61029f565b6101175f6102f9565b565b5f54610100900460ff161580801561013757505f54600160ff909116105b806101505750303b15801561015057505f5460ff166001145b6101b85760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b5f805460ff1916600117905580156101d9575f805461ff0019166101001790555b6101e161034a565b8015610226575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50565b61023161029f565b6001600160a01b0381166102965760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016101af565b610226816102f9565b6033546001600160a01b031633146101175760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016101af565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff166103b45760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016101af565b610117336102f9565b5f602080835283518060208501525f5b818110156103e9578581018301518582016040015282016103cd565b505f604082860101526040601f19601f8301168501019250505092915050565b5f60208284031215610419575f80fd5b81356001600160a01b038116811461042f575f80fd5b939250505056fea164736f6c6343000818000a", + "deployedBytecode": "0x608060405234801561000f575f80fd5b5060043610610060575f3560e01c8063715018a6146100645780638129fc1c1461006e5780638da5cb5b14610076578063a3f4df7e14610096578063f2fde38b146100cf578063ffa1ad74146100e2575b5f80fd5b61006c610106565b005b61006c610119565b6033546040516001600160a01b0390911681526020015b60405180910390f35b6100c26040518060400160405280600d81526020016c2aa7299d1027b832b930ba37b960991b81525081565b60405161008d91906103bd565b61006c6100dd366004610409565b610229565b6100c2604051806040016040528060058152602001640302e312e360dc1b81525081565b61010e61029f565b6101175f6102f9565b565b5f54610100900460ff161580801561013757505f54600160ff909116105b806101505750303b15801561015057505f5460ff166001145b6101b85760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b5f805460ff1916600117905580156101d9575f805461ff0019166101001790555b6101e161034a565b8015610226575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50565b61023161029f565b6001600160a01b0381166102965760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016101af565b610226816102f9565b6033546001600160a01b031633146101175760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016101af565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff166103b45760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016101af565b610117336102f9565b5f602080835283518060208501525f5b818110156103e9578581018301518582016040015282016103cd565b505f604082860101526040601f19601f8301168501019250505092915050565b5f60208284031215610419575f80fd5b81356001600160a01b038116811461042f575f80fd5b939250505056fea164736f6c6343000818000a", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/artifacts/UNSRegistry.json b/artifacts/UNSRegistry.json index 821c1fde..7b08eb18 100644 --- a/artifacts/UNSRegistry.json +++ b/artifacts/UNSRegistry.json @@ -1539,8 +1539,8 @@ "type": "function" } ], - "bytecode": "0x608060405234801561001057600080fd5b506152e6806100206000396000f3fe608060405234801561001057600080fd5b50600436106103af5760003560e01c80637e37479e116101f4578063ba5d40b71161011a578063e985e9c5116100ad578063f5c1f76e1161007c578063f5c1f76e146108d8578063f7df5c60146108eb578063f8c8765e146108fe578063ffa1ad741461091157600080fd5b8063e985e9c51461087a578063ebf0c717146108b6578063ec129eea146108bd578063f25eb5c1146108d057600080fd5b8063c87b56dd116100e9578063c87b56dd1461082e578063ce92b33e14610841578063cf2c52cb14610854578063d9548e531461086757600080fd5b8063ba5d40b7146107b3578063baef73e9146107c6578063bb5b27e114610808578063bebec6b41461081b57600080fd5b8063a22cb46511610192578063ac9650d811610161578063ac9650d81461074c578063b3f9e4cb1461076c578063b85afd281461077f578063b88d4fde146107a057600080fd5b8063a22cb465146106e7578063a3f4df7e146106fa578063a424740014610726578063ab3b87fe1461073957600080fd5b80639508b1c4116101ce5780639508b1c4146106b15780639559c0bd146106c457806395d89b41146106cc57806399e0dd7c146106d457600080fd5b80637e37479e146106785780637eee288d1461068b57806394d008ef1461069e57600080fd5b806342842e0e116102d95780635096023911610277578063663f7b2a11610246578063663f7b2a14610610578063672b9f81146106235780636ccbae5f1461064457806370a082311461066557600080fd5b806350960239146105bb578063572b6c05146105ce5780636352211e146105ea578063638e5c78146105fd57600080fd5b806347c81699116102b357806347c816991461056f5780634a72584d146105825780634f558e791461059557806350382c1a146105a857600080fd5b806342842e0e1461053657806342966c6814610549578063430c20811461055c57600080fd5b80631bf7e13e1161035157806327f189751161032057806327f18975146104ea578063310bd74b146104fd5780633f72ec6e1461051057806340c10f191461052357600080fd5b80631bf7e13e146104905780631f71be06146104a357806323b872dd146104b6578063276fabb1146104c957600080fd5b8063095ea7b31161038d578063095ea7b31461041c578063150b7a02146104315780631bd8cc1a1461045d5780631be5e7ed1461047d57600080fd5b806301ffc9a7146103b457806306fdde03146103dc578063081812fc146103f1575b600080fd5b6103c76103c2366004613f0b565b610935565b60405190151581526020015b60405180910390f35b6103e4610946565b6040516103d39190613f78565b6104046103ff366004613f8b565b6109d8565b6040516001600160a01b0390911681526020016103d3565b61042f61042a366004613fb9565b6109ff565b005b61044461043f366004614026565b610a18565b6040516001600160e01b031990911681526020016103d3565b61047061046b3660046140dc565b610b72565b6040516103d3919061417f565b6103e461048b366004614192565b610c68565b6103e461049e3660046141c9565b610cb3565b61042f6104b1366004614249565b610dbe565b61042f6104c4366004614305565b610e54565b6104dc6104d7366004614346565b610ea7565b6040519081526020016103d3565b61042f6104f8366004614387565b610eb6565b61042f61050b366004613f8b565b610efe565b61042f61051e3660046143fa565b610f39565b61042f610531366004613fb9565b61103b565b61042f610544366004614305565b611088565b61042f610557366004613f8b565b6110a3565b6103c761056a366004613fb9565b6110e7565b61042f61057d366004614424565b6110f3565b61042f610590366004614485565b611132565b6103c76105a3366004613f8b565b611178565b61042f6105b636600461458c565b611197565b61042f6105c93660046145c0565b6111cd565b6103c76105dc3660046145c0565b6001600160a01b0316301490565b6104046105f8366004613f8b565b61122d565b61042f61060b366004613f8b565b61124a565b61042f61061e366004614678565b611295565b6106366106313660046146c0565b611336565b6040516103d39291906146e2565b6104dc610652366004613f8b565b6000908152610100602052604090205490565b6104dc6106733660046145c0565b61134e565b6104dc6106863660046145c0565b6113d4565b61042f610699366004613fb9565b611405565b61042f6106ac366004614707565b61145c565b61042f6106bf366004614762565b6114ab565b6104dc601481565b6103e4611532565b61042f6106e2366004614805565b611541565b61042f6106f536600461483a565b6115c8565b6103e46040518060400160405280600d81526020016c554e533a20526567697374727960981b81525081565b6103c76107343660046141c9565b6115da565b61042f610747366004613fb9565b611625565b61075f61075a366004614346565b61166a565b6040516103d39190614866565b61040461077a366004613f8b565b611746565b61079261078d3660046140dc565b611770565b6040516103d39291906148c8565b61042f6107ae3660046148ed565b611892565b61042f6107c1366004614249565b6118d9565b6107f06107d4366004613f8b565b600090815261013960205260409020546001600160401b031690565b6040516001600160401b0390911681526020016103d3565b6103e4610816366004613f8b565b611962565b6103e46108293660046145c0565b611a04565b6103e461083c366004613f8b565b611ace565b61042f61084f366004614387565b611b34565b61042f610862366004614958565b611b73565b6103c7610875366004613f8b565b611c42565b6103c761088836600461499f565b6001600160a01b039182166000908152606a6020908152604080832093909416825291909152205460ff1690565b60006104dc565b61042f6108cb366004614387565b611c85565b61042f611cc4565b6104706108e6366004614346565b611d4b565b61042f6108f93660046149d8565b611dfe565b61042f61090c366004614a0a565b611e8f565b6103e460405180604001604052806005815260200164302e392e3160d81b81525081565b600061094082612065565b92915050565b60606065805461095590614a66565b80601f016020809104026020016040519081016040528092919081815260200182805461098190614a66565b80156109ce5780601f106109a3576101008083540402835291602001916109ce565b820191906000526020600020905b8154815290600101906020018083116109b157829003601f168201915b5050505050905090565b60006109e3826120b5565b506000908152606960205260409020546001600160a01b031690565b80610a0981612114565b610a13838361217a565b505050565b60007f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378546001600160a01b0316610a4d61229c565b6001600160a01b031603610b0e57610a6361229c565b6001600160a01b03166342966c68856040518263ffffffff1660e01b8152600401610a9091815260200190565b600060405180830381600087803b158015610aaa57600080fd5b505af1158015610abe573d6000803e3d6000fd5b505050821580159150610ad85750610ad882840184614a9a565b15610af657610ae730856122ab565b610af185856123f9565b610b00565b610b0085856122ab565b50630a85bd0160e11b610b69565b60405162461bcd60e51b815260206004820152602560248201527f52656769737472793a204552433732315f524543454956494e475f50524f4849604482015264109255115160da1b60648201526084015b60405180910390fd5b95945050505050565b6060826001600160401b03811115610b8c57610b8c6144d7565b604051908082528060200260200182016040528015610bbf57816020015b6060815260200190600190039081610baa5790505b50905060005b83811015610c6057610c30858583818110610be257610be2614ab5565b9050602002810190610bf49190614acb565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508792506124a4915050565b828281518110610c4257610c42614ab5565b60200260200101819052508080610c5890614b27565b915050610bc5565b509392505050565b6060610cab84848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508692506124a4915050565b949350505050565b606060005a9050610cc58585856115da565b610d215760405162461bcd60e51b815260206004820152602760248201527f554e535265676973747279466f727761726465723a205349474e41545552455f6044820152661253959053125160ca1b6064820152608401610b60565b610db3610d3160208701876145c0565b30604088013584610d4560608b018b614acb565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284376000920191909152506124d992505050565b9150505b9392505050565b610134546001600160a01b0316610dd361229c565b6001600160a01b031614610df95760405162461bcd60e51b8152600401610b6090614b40565b6000610e0d610e08888a614b87565b6125ba565b509050610e1a8982611405565b610e278686868685612612565b8115610e4957610e498982610e44610e3f8b8d614b87565b612680565b612701565b505050505050505050565b80610e66610e6061229c565b82612743565b610e825760405162461bcd60e51b8152600401610b6090614b94565b81610e8c81612114565b610e95836127d4565b610ea0858585612841565b5050505050565b6000610c60610e088385614b87565b80610ec2610e6061229c565b610ede5760405162461bcd60e51b8152600401610b6090614b94565b81610ee881612114565b610ef587878787876129e8565b50505050505050565b80610f0a610e6061229c565b610f265760405162461bcd60e51b8152600401610b6090614b94565b81610f3081612114565b610a13836127d4565b610134546001600160a01b0316610f4e61229c565b6001600160a01b031614610f745760405162461bcd60e51b8152600401610b6090614b40565b610f7d816120b5565b42826001600160401b031611610fd55760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a204558504952595f494e5f5041535400000000000000006044820152606401610b60565b60008181526101396020908152604091829020805467ffffffffffffffff19166001600160401b038616908117909155915191825282917f93feabb03ab84f47fc85bf0c298103fca21d8c8bc376eae0c1e1c56b9d4f7789910160405180910390a25050565b611043612a4b565b6001600160a01b031661105461229c565b6001600160a01b03161461107a5760405162461bcd60e51b8152600401610b6090614bdd565b61108482826122ab565b5050565b610a1383838360405180602001604052806000815250611892565b806110af610e6061229c565b6110cb5760405162461bcd60e51b8152600401610b6090614b94565b816110d581612114565b6110de836127d4565b610a1383612b4c565b6000610db78383612743565b806110ff610e6061229c565b61111b5760405162461bcd60e51b8152600401610b6090614b94565b8161112581612114565b610ef58787878787612bf3565b8061113e610e6061229c565b61115a5760405162461bcd60e51b8152600401610b6090614b94565b8161116481612114565b61117086868686612cd2565b505050505050565b6000818152606760205260408120546001600160a01b03161515610940565b6111ca816040516020016111ab9190614c1f565b6040516020818303038152906040528051906020012060001c82612d72565b50565b610134546001600160a01b03166111e261229c565b6001600160a01b0316146112085760405162461bcd60e51b8152600401610b6090614b40565b6001600160a01b0316600090815261013660205260409020805460ff19166001179055565b600061123882611c42565b6112455761094082612d97565b919050565b80611256610e6061229c565b6112725760405162461bcd60e51b8152600401610b6090614b94565b61128461127d61229c565b3084612841565b61108461128f61229c565b836123f9565b60006112a0826125ba565b5090506112ab61229c565b6001600160a01b03166112bd8261122d565b6001600160a01b0316146113135760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b60565b61131c81612114565b61108461132761229c565b8261133185612680565b612df7565b6060806113438484612e7e565b909590945092505050565b60006001600160a01b0382166113b85760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b6064820152608401610b60565b506001600160a01b031660009081526068602052604090205490565b6001600160a01b038116600090815261013560205260408120546113f781612e9f565b6113ff578091505b50919050565b610134546001600160a01b031661141a61229c565b6001600160a01b0316146114405760405162461bcd60e51b8152600401610b6090614b40565b611449816127d4565b61108461145582612d97565b8383612841565b611464612a4b565b6001600160a01b031661147561229c565b6001600160a01b03161461149b5760405162461bcd60e51b8152600401610b6090614bdd565b6114a584846122ab565b50505050565b6114b58787612ee9565b6114bd61229c565b6001600160a01b03166114cf8661122d565b6001600160a01b0316146115255760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b60565b610ef58484848489612612565b60606066805461095590614a66565b610134546001600160a01b031661155661229c565b6001600160a01b03161461157c5760405162461bcd60e51b8152600401610b6090614b40565b61013361158a828483614c81565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b82826040516115bc929190614d69565b60405180910390a15050565b6110846115d361229c565b8383612f58565b6000610cab6115e885614d7d565b3085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061302692505050565b80611631610e6061229c565b61164d5760405162461bcd60e51b8152600401610b6090614b94565b8161165781612114565b6114a561166384612d97565b8585612841565b606060006116788385614e07565b905030330361173d5760005b8381101561173b5761170b61169761229c565b61169f61316f565b8787858181106116b1576116b1614ab5565b90506020028101906116c39190614acb565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250613183915050565b82828151811061171d5761171d614ab5565b6020026020010181905250808061173390614b27565b915050611684565b505b610cab816131b3565b6000818152606760205260408120546001600160a01b0316611769576000610940565b3092915050565b606080836001600160401b0381111561178b5761178b6144d7565b6040519080825280602002602001820160405280156117be57816020015b60608152602001906001900390816117a95790505b509150836001600160401b038111156117d9576117d96144d7565b60405190808252806020026020018201604052801561180c57816020015b60608152602001906001900390816117f75790505b50905060005b848110156118895761183c86868381811061182f5761182f614ab5565b9050602002013585612e7e565b84838151811061184e5761184e614ab5565b6020026020010184848151811061186757611867614ab5565b602002602001018290528290525050808061188190614b27565b915050611812565b50935093915050565b8161189e610e6061229c565b6118ba5760405162461bcd60e51b8152600401610b6090614b94565b826118c481612114565b6118cd846127d4565b611170868686866132de565b610134546001600160a01b03166118ee61229c565b6001600160a01b0316146119145760405162461bcd60e51b8152600401610b6090614b40565b600080611924610e08898b614b87565b9150915061193181613311565b6119498a83611943610e3f8c8e614b87565b86613371565b6119568787878786612612565b50505050505050505050565b600081815260c96020526040902080546060919061197f90614a66565b80601f01602080910402602001604051908101604052809291908181526020018280546119ab90614a66565b80156119f85780601f106119cd576101008083540402835291602001916119f8565b820191906000526020600020905b8154815290600101906020018083116119db57829003601f168201915b50505050509050919050565b6001600160a01b03811660009081526101356020526040902054606090611a2a81612e9f565b6113ff576000818152610138602052604090208054611a4890614a66565b80601f0160208091040260200160405190810160405280929190818152602001828054611a7490614a66565b8015611ac15780601f10611a9657610100808354040283529160200191611ac1565b820191906000526020600020905b815481529060010190602001808311611aa457829003601f168201915b5050505050915050919050565b6060611ad9826120b5565b6000611ae36133c4565b90506000815111611b035760405180602001604052806000815250610db7565b80611b0d846133d4565b604051602001611b1e929190614e7a565b6040516020818303038152906040529392505050565b80611b40610e6061229c565b611b5c5760405162461bcd60e51b8152600401610b6090614b94565b81611b6681612114565b610ef58787878787612612565b7f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87546001600160a01b0316611ba661229c565b6001600160a01b031614611bcc5760405162461bcd60e51b8152600401610b6090614bdd565b6020819003611bef576000611be382840184613f8b565b90506114a584826122ab565b6000611bfd82840184614ea9565b805190915060005b8181101561117057611c3086848381518110611c2357611c23614ab5565b60200260200101516122ab565b80611c3a81614b27565b915050611c05565b600081815261013960205260408120546001600160401b03161580159061094057505060009081526101396020526040902054426001600160401b039091161090565b80611c91610e6061229c565b611cad5760405162461bcd60e51b8152600401610b6090614b94565b81611cb781612114565b610ef587878787876134d4565b6000611cce61229c565b6001600160a01b0381166000908152610135602052604081205491925003611d425760405162461bcd60e51b815260206004820152602160248201527f52656769737472793a20524556455253455f5245434f52445f49535f454d50546044820152605960f81b6064820152608401610b60565b6111ca816134ea565b6060816001600160401b03811115611d6557611d656144d7565b604051908082528060200260200182016040528015611d9857816020015b6060815260200190600190039081611d835790505b50905060005b82811015611df757611dc7848483818110611dbb57611dbb614ab5565b90506020020135611962565b828281518110611dd957611dd9614ab5565b60200260200101819052508080611def90614b27565b915050611d9e565b5092915050565b610134546001600160a01b0316611e1361229c565b6001600160a01b031614611e395760405162461bcd60e51b8152600401610b6090614b40565b61013454611e50906001600160a01b0316846122ab565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c39528383604051611e82929190614d69565b60405180910390a2505050565b600054610100900460ff1615808015611eaf5750600054600160ff909116105b80611ec95750303b158015611ec9575060005460ff166001145b611f2c5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610b60565b6000805460ff191660011790558015611f4f576000805461ff0019166101001790555b61013480546001600160a01b0319166001600160a01b038716179055837f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec9237880546001600160a01b0319166001600160a01b03929092169190911790556040805180820182526013815272556e73746f707061626c6520446f6d61696e7360681b60208083019190915282518084019093526002835261155160f21b90830152611ff79161352f565b611fff61356f565b61200761356f565b61201083613598565b612019826135c8565b8015610ea0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b60006001600160e01b031982166380ac58cd60e01b148061209657506001600160e01b03198216635b5e139f60e01b145b8061094057506301ffc9a760e01b6001600160e01b0319831614610940565b6000818152606760205260409020546001600160a01b03166111ca5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b60565b3033036121715761212361316f565b81146111ca5760405162461bcd60e51b815260206004820152601760248201527f52656769737472793a20544f4b454e5f494e56414c49440000000000000000006044820152606401610b60565b6111ca816135f8565b600061218582612d97565b9050806001600160a01b0316836001600160a01b0316036121f25760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b6064820152608401610b60565b806001600160a01b031661220461229c565b6001600160a01b0316148061222057506122208161088861229c565b6122925760405162461bcd60e51b815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c00006064820152608401610b60565b610a138383613626565b60006122a6613694565b905090565b6001600160a01b0382166123015760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610b60565b6000818152606760205260409020546001600160a01b0316156123665760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610b60565b612372600083836136af565b6001600160a01b038216600090815260686020526040812080546001929061239b908490614f39565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b03861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b6000612403612a4b565b905061240f8183613626565b60008051602061529383398151915254604080516020808201869052825180830390910181528183019283905263e3dec8fb60e01b9092526001600160a01b0390921691829163e3dec8fb9161246c918891309190604401614f4c565b600060405180830381600087803b15801561248657600080fd5b505af115801561249a573d6000803e3d6000fd5b5050505050505050565b6060610db7836040516020016124ba9190614c1f565b6040516020818303038152906040528051906020012060001c8361378b565b60606124e4856135f8565b600080876001600160a01b0316866124fe8b8a8989613183565b60405161250b9190614c1f565b60006040518083038160008787f1925050503d8060008114612549576040519150601f19603f3d011682016040523d82523d6000602084013e61254e565b606091505b50909250905061255f603f87614f8e565b5a1161256d5761256d614fa2565b6125ad82826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061386d565b9998505050505050505050565b805160009081905b801561260c578291506125f882856125db600185614fb8565b815181106125eb576125eb614ab5565b60200260200101516138a6565b92508061260481614fcb565b9150506125c2565b50915091565b60005b848110156111705761266e86868381811061263257612632614ab5565b90506020028101906126449190614acb565b86868581811061265657612656614ab5565b90506020028101906126689190614acb565b86612bf3565b8061267881614b27565b915050612615565b606060008260008151811061269757612697614ab5565b602002602001015190506000600190505b8351811015611df757818482815181106126c4576126c4614ab5565b60200260200101516040516020016126dd929190614fe2565b604051602081830303815290604052915080806126f990614b27565b9150506126a8565b61dead6001600160a01b0384161480159061273357506001600160a01b03831660009081526101356020526040902054155b15610a1357610a13838383612df7565b60008061274f8361122d565b90506001600160a01b03811615801590610cab5750806001600160a01b0316846001600160a01b031614806127a957506001600160a01b038082166000908152606a602090815260408083209388168352929052205460ff165b80610cab5750836001600160a01b03166127c2846109d8565b6001600160a01b031614949350505050565b6127dd81613952565b6040516020016127ef91815260200190565b60408051601f198184030181528282528051602091820120600085815260cb9092529181209190915582917f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9190a250565b826001600160a01b031661285482612d97565b6001600160a01b0316146128b85760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b6064820152608401610b60565b6001600160a01b03821661291a5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610b60565b6129258383836136af565b612930600082613626565b6001600160a01b0383166000908152606860205260408120805460019290612959908490614fb8565b90915550506001600160a01b0382166000908152606860205260408120805460019290612987908490614f39565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60005b8481101561117057612a39868683818110612a0857612a08614ab5565b90506020020135858584818110612a2157612a21614ab5565b9050602002810190612a339190614acb565b85612cd2565b80612a4381614b27565b9150506129eb565b600080516020615293833981519152546000906001600160a01b03168015612b485760405163721804d360e11b81523060048201526000906001600160a01b0383169063e43009a690602401602060405180830381865afa158015612ab4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ad8919061501e565b60405163e66f960360e01b8152600481018290529091506001600160a01b0383169063e66f960390602401602060405180830381865afa158015612b20573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b449190615037565b9250505b5090565b6000612b5782612d97565b9050612b65816000846136af565b612b70600083613626565b6001600160a01b0381166000908152606860205260408120805460019290612b99908490614fb8565b909155505060008281526067602052604080822080546001600160a01b0319169055518391906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b60008585604051602001612c08929190615054565b60408051601f198184030181528282528051602091820120601f8901829004820284018201909252878352909250612c5c9183918990899081908401838280828437600092019190915250612d7292505050565b6111708187878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061397a915050565b612cdb84613aaf565b612d275760405162461bcd60e51b815260206004820152601c60248201527f5265636f726453746f726167653a204b45595f4e4f545f464f554e44000000006044820152606401610b60565b6114a584612d3486611962565b85858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525087925061397a915050565b612d7b82613aaf565b61108457600082815260c960205260409020610a138282615064565b6000818152606760205260408120546001600160a01b0316806109405760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b60565b6000828152610138602052604090208054612e1190614a66565b9050600003612e3557600082815261013860205260409020612e338282615064565b505b6001600160a01b03831660008181526101356020526040808220859055518492917feb76a21470988c474a21f690cc28fee1ed511bd812dc3c21fd0f49c5e5d4708a91a3505050565b606080612e8a84611962565b9150612e96848461378b565b90509250929050565b6000818152610137602052604081205460ff16801561094057506101366000612ec661229c565b6001600160a01b0316815260208101919091526040016000205460ff1692915050565b60008051602061529383398151915254604051633805550f60e01b81526001600160a01b03909116908190633805550f90612f2a9086908690600401614d69565b600060405180830381600087803b158015612f4457600080fd5b505af1158015610ef5573d6000803e3d6000fd5b816001600160a01b0316836001600160a01b031603612fb95760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610b60565b6001600160a01b038381166000818152606a6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561306d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613091919061501e565b9050600061313f8660600151805190602001208688602001516040516020016130df9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561316557508551613165906001600160a01b03168286613ad5565b9695505050505050565b60003033036131805750601f193601355b90565b606082858560405160200161319a93929190615123565b6040516020818303038152906040529050949350505050565b606081516001600160401b038111156131ce576131ce6144d7565b60405190808252806020026020018201604052801561320157816020015b60608152602001906001900390816131ec5790505b50905060005b82518110156113ff57600080306001600160a01b031685848151811061322f5761322f614ab5565b60200260200101516040516132449190614c1f565b600060405180830381855af49150503d806000811461327f576040519150601f19603f3d011682016040523d82523d6000602084013e613284565b606091505b50915091506132ac82826040518060600160405280602781526020016152b36027913961386d565b8484815181106132be576132be614ab5565b6020026020010181905250505080806132d690614b27565b915050613207565b6132e9848484612841565b6132f584848484613c17565b6114a55760405162461bcd60e51b8152600401610b6090615162565b6000818152610137602052604090205460ff16156111ca5760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a20544f4b454e5f555047524144454400000000000000006044820152606401610b60565b61337b84846122ab565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952836040516133ab9190613f78565b60405180910390a280156114a5576114a5848484612701565b6060610133805461095590614a66565b6060816000036133fb5750506040805180820190915260018152600360fc1b602082015290565b8160005b8115613425578061340f81614b27565b915061341e9050600a83614f8e565b91506133ff565b6000816001600160401b0381111561343f5761343f6144d7565b6040519080825280601f01601f191660200182016040528015613469576020820181803683370190505b5090505b8415610cab5761347e600183614fb8565b915061348b600a866151b4565b613496906030614f39565b60f81b8183815181106134ab576134ab614ab5565b60200101906001600160f81b031916908160001a9053506134cd600a86614f8e565b945061346d565b6134dd816127d4565b610ea08585858585612612565b6001600160a01b03811660008181526101356020526040808220829055517ffcf5eec0cfa3e6332f5f0e63ec242d71f866a61d121d6cdf5c2eb3b668a26c4f9190a250565b600054610100900460ff166135565760405162461bcd60e51b8152600401610b60906151c8565b60656135628382615064565b506066610a138282615064565b600054610100900460ff166135965760405162461bcd60e51b8152600401610b60906151c8565b565b600054610100900460ff166135bf5760405162461bcd60e51b8152600401610b60906151c8565b6111ca81613d1c565b600054610100900460ff166135ef5760405162461bcd60e51b8152600401610b60906151c8565b6111ca81613d75565b60008181526101006020526040902054613613906001614f39565b6000918252610100602052604090912055565b600081815260696020526040902080546001600160a01b0319166001600160a01b038416908117909155819061365b82612d97565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60003033036136aa575060331936013560601c90565b503390565b6001600160a01b0382166136c6576136c681613311565b600081815261013960205260409020546001600160401b031615613761576001600160a01b0382161580159061371557506136ff612a4b565b6001600160a01b0316826001600160a01b031614155b6137615760405162461bcd60e51b815260206004820152601960248201527f52656769737472793a20544f4b454e5f455850495241424c45000000000000006044820152606401610b60565b6001600160a01b03831660009081526101356020526040902054819003610a1357610a13836134ea565b606061379682612e9f565b156137b05750604080516020810190915260008152610940565b60ca60006137bd84613952565b8152602001908152602001600020600084815260200190815260200160002080546137e790614a66565b80601f016020809104026020016040519081016040528092919081815260200182805461381390614a66565b80156138605780601f1061383557610100808354040283529160200191613860565b820191906000526020600020905b81548152906001019060200180831161384357829003601f168201915b5050505050905092915050565b6060831561387c575081610db7565b82511561388c5782518084602001fd5b8160405162461bcd60e51b8152600401610b609190613f78565b600081516000036138f15760405162461bcd60e51b815260206004820152601560248201527452656769737472793a204c4142454c5f454d50545960581b6044820152606401610b60565b82826040516020016139039190614c1f565b60405160208183030381529060405280519060200120604051602001613933929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b600081815260cb602052604081205415612b4857600082815260cb6020526040902054610940565b60ca600061398783613952565b8152602001908152602001600020600085815260200190815260200160002080546139b190614a66565b9050600003613a0957826040516139c89190614c1f565b6040518091039020817f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f8685604051613a009190613f78565b60405180910390a35b8160ca6000613a1784613952565b815260200190815260200160002060008681526020019081526020016000209081613a429190615064565b5081604051613a519190614c1f565b604051809103902083604051613a679190614c1f565b6040518091039020827f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d928686604051613aa19291906146e2565b60405180910390a450505050565b600081815260c9602052604081208054829190613acb90614a66565b9050119050919050565b6000806000613ae48585613dc3565b90925090506000816004811115613afd57613afd615213565b148015613b1b5750856001600160a01b0316826001600160a01b0316145b15613b2b57600192505050610db7565b600080876001600160a01b0316631626ba7e60e01b8888604051602401613b53929190615229565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051613b919190614c1f565b600060405180830381855afa9150503d8060008114613bcc576040519150601f19603f3d011682016040523d82523d6000602084013e613bd1565b606091505b5091509150818015613be4575080516020145b8015613c0b57508051630b135d3f60e11b90613c09908301602090810190840161501e565b145b98975050505050505050565b60006001600160a01b0384163b15613d1457836001600160a01b031663150b7a02613c4061229c565b8786866040518563ffffffff1660e01b8152600401613c629493929190615242565b6020604051808303816000875af1925050508015613c9d575060408051601f3d908101601f19168201909252613c9a91810190615275565b60015b613cfa573d808015613ccb576040519150601f19603f3d011682016040523d82523d6000602084013e613cd0565b606091505b508051600003613cf25760405162461bcd60e51b8152600401610b6090615162565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610cab565b506001610cab565b600054610100900460ff16613d435760405162461bcd60e51b8152600401610b60906151c8565b806000805160206152938339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b600054610100900460ff16613d9c5760405162461bcd60e51b8152600401610b60906151c8565b807f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87613d54565b6000808251604103613df95760208301516040840151606085015160001a613ded87828585613e08565b94509450505050613e01565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613e3f5750600090506003613eec565b8460ff16601b14158015613e5757508460ff16601c14155b15613e685750600090506004613eec565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613ebc573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613ee557600060019250925050613eec565b9150600090505b94509492505050565b6001600160e01b0319811681146111ca57600080fd5b600060208284031215613f1d57600080fd5b8135610db781613ef5565b60005b83811015613f43578181015183820152602001613f2b565b50506000910152565b60008151808452613f64816020860160208601613f28565b601f01601f19169290920160200192915050565b602081526000610db76020830184613f4c565b600060208284031215613f9d57600080fd5b5035919050565b6001600160a01b03811681146111ca57600080fd5b60008060408385031215613fcc57600080fd5b8235613fd781613fa4565b946020939093013593505050565b60008083601f840112613ff757600080fd5b5081356001600160401b0381111561400e57600080fd5b602083019150836020828501011115613e0157600080fd5b60008060008060006080868803121561403e57600080fd5b853561404981613fa4565b9450602086013561405981613fa4565b93506040860135925060608601356001600160401b0381111561407b57600080fd5b61408788828901613fe5565b969995985093965092949392505050565b60008083601f8401126140aa57600080fd5b5081356001600160401b038111156140c157600080fd5b6020830191508360208260051b8501011115613e0157600080fd5b6000806000604084860312156140f157600080fd5b83356001600160401b0381111561410757600080fd5b61411386828701614098565b909790965060209590950135949350505050565b600082825180855260208086019550808260051b84010181860160005b8481101561417257601f19868403018952614160838351613f4c565b98840198925090830190600101614144565b5090979650505050505050565b602081526000610db76020830184614127565b6000806000604084860312156141a757600080fd5b83356001600160401b038111156141bd57600080fd5b61411386828701613fe5565b6000806000604084860312156141de57600080fd5b83356001600160401b03808211156141f557600080fd5b908501906080828803121561420957600080fd5b9093506020850135908082111561421f57600080fd5b5061422c86828701613fe5565b9497909650939450505050565b8035801515811461124557600080fd5b60008060008060008060008060a0898b03121561426557600080fd5b883561427081613fa4565b975060208901356001600160401b038082111561428c57600080fd5b6142988c838d01614098565b909950975060408b01359150808211156142b157600080fd5b6142bd8c838d01614098565b909750955060608b01359150808211156142d657600080fd5b506142e38b828c01614098565b90945092506142f6905060808a01614239565b90509295985092959890939650565b60008060006060848603121561431a57600080fd5b833561432581613fa4565b9250602084013561433581613fa4565b929592945050506040919091013590565b6000806020838503121561435957600080fd5b82356001600160401b0381111561436f57600080fd5b61437b85828601614098565b90969095509350505050565b60008060008060006060868803121561439f57600080fd5b85356001600160401b03808211156143b657600080fd5b6143c289838a01614098565b909750955060208801359150808211156143db57600080fd5b506143e888828901614098565b96999598509660400135949350505050565b6000806040838503121561440d57600080fd5b82356001600160401b0381168114613fd757600080fd5b60008060008060006060868803121561443c57600080fd5b85356001600160401b038082111561445357600080fd5b61445f89838a01613fe5565b9097509550602088013591508082111561447857600080fd5b506143e888828901613fe5565b6000806000806060858703121561449b57600080fd5b8435935060208501356001600160401b038111156144b857600080fd5b6144c487828801613fe5565b9598909750949560400135949350505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715614515576145156144d7565b604052919050565b600082601f83011261452e57600080fd5b81356001600160401b03811115614547576145476144d7565b61455a601f8201601f19166020016144ed565b81815284602083860101111561456f57600080fd5b816020850160208301376000918101602001919091529392505050565b60006020828403121561459e57600080fd5b81356001600160401b038111156145b457600080fd5b610cab8482850161451d565b6000602082840312156145d257600080fd5b8135610db781613fa4565b60006001600160401b038211156145f6576145f66144d7565b5060051b60200190565b600061461361460e846145dd565b6144ed565b8381529050602080820190600585901b84018681111561463257600080fd5b845b8181101561466d5780356001600160401b038111156146535760008081fd5b61465f8982890161451d565b855250928201928201614634565b505050509392505050565b60006020828403121561468a57600080fd5b81356001600160401b038111156146a057600080fd5b8201601f810184136146b157600080fd5b610cab84823560208401614600565b600080604083850312156146d357600080fd5b50508035926020909101359150565b6040815260006146f56040830185613f4c565b8281036020840152610db38185613f4c565b6000806000806060858703121561471d57600080fd5b843561472881613fa4565b93506020850135925060408501356001600160401b0381111561474a57600080fd5b61475687828801613fe5565b95989497509550505050565b60008060008060008060006080888a03121561477d57600080fd5b87356001600160401b038082111561479457600080fd5b6147a08b838c01613fe5565b909950975060208a0135965060408a01359150808211156147c057600080fd5b6147cc8b838c01614098565b909650945060608a01359150808211156147e557600080fd5b506147f28a828b01614098565b989b979a50959850939692959293505050565b6000806020838503121561481857600080fd5b82356001600160401b0381111561482e57600080fd5b61437b85828601613fe5565b6000806040838503121561484d57600080fd5b823561485881613fa4565b9150612e9660208401614239565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156148bb57603f198886030184526148a9858351613f4c565b9450928501929085019060010161488d565b5092979650505050505050565b6040815260006148db6040830185614127565b8281036020840152610db38185614127565b6000806000806080858703121561490357600080fd5b843561490e81613fa4565b9350602085013561491e81613fa4565b92506040850135915060608501356001600160401b0381111561494057600080fd5b61494c8782880161451d565b91505092959194509250565b60008060006040848603121561496d57600080fd5b833561497881613fa4565b925060208401356001600160401b0381111561499357600080fd5b61422c86828701613fe5565b600080604083850312156149b257600080fd5b82356149bd81613fa4565b915060208301356149cd81613fa4565b809150509250929050565b6000806000604084860312156149ed57600080fd5b8335925060208401356001600160401b0381111561499357600080fd5b60008060008060808587031215614a2057600080fd5b8435614a2b81613fa4565b93506020850135614a3b81613fa4565b92506040850135614a4b81613fa4565b91506060850135614a5b81613fa4565b939692955090935050565b600181811c90821680614a7a57607f821691505b6020821081036113ff57634e487b7160e01b600052602260045260246000fd5b600060208284031215614aac57600080fd5b610db782614239565b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112614ae257600080fd5b8301803591506001600160401b03821115614afc57600080fd5b602001915036819003821315613e0157600080fd5b634e487b7160e01b600052601160045260246000fd5b600060018201614b3957614b39614b11565b5060010190565b60208082526027908201527f52656769737472793a2053454e4445525f49535f4e4f545f4d494e54494e475f60408201526626a0a720a3a2a960c91b606082015260800190565b6000610db7368484614600565b60208082526029908201527f52656769737472793a2053454e4445525f49535f4e4f545f415050524f5645446040820152682fa7a92fa7aba722a960b91b606082015260800190565b60208082526022908201527f52656769737472793a20494e53554646494349454e545f5045524d495353494f6040820152614e5360f01b606082015260800190565b60008251614c31818460208701613f28565b9190910192915050565b601f821115610a1357600081815260208120601f850160051c81016020861015614c625750805b601f850160051c820191505b8181101561117057828155600101614c6e565b6001600160401b03831115614c9857614c986144d7565b614cac83614ca68354614a66565b83614c3b565b6000601f841160018114614ce05760008515614cc85750838201355b600019600387901b1c1916600186901b178355610ea0565b600083815260209020601f19861690835b82811015614d115786850135825560209485019460019092019101614cf1565b5086821015614d2e5760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b602081526000610cab602083018486614d40565b600060808236031215614d8f57600080fd5b604051608081016001600160401b038282108183111715614db257614db26144d7565b8160405284359150614dc382613fa4565b81835260208501356020840152604085013560408401526060850135915080821115614dee57600080fd5b50614dfb3682860161451d565b60608301525092915050565b6000614e1561460e846145dd565b80848252602080830192508560051b850136811115614e3357600080fd5b855b81811015614e6e5780356001600160401b03811115614e545760008081fd5b614e6036828a0161451d565b865250938201938201614e35565b50919695505050505050565b60008351614e8c818460208801613f28565b835190830190614ea0818360208801613f28565b01949350505050565b60006020808385031215614ebc57600080fd5b82356001600160401b03811115614ed257600080fd5b8301601f81018513614ee357600080fd5b8035614ef161460e826145dd565b81815260059190911b82018301908381019087831115614f1057600080fd5b928401925b82841015614f2e57833582529284019290840190614f15565b979650505050505050565b8082018082111561094057610940614b11565b6001600160a01b03848116825283166020820152606060408201819052600090610b6990830184613f4c565b634e487b7160e01b600052601260045260246000fd5b600082614f9d57614f9d614f78565b500490565b634e487b7160e01b600052600160045260246000fd5b8181038181111561094057610940614b11565b600081614fda57614fda614b11565b506000190190565b60008351614ff4818460208801613f28565b601760f91b9083019081528351615012816001840160208801613f28565b01600101949350505050565b60006020828403121561503057600080fd5b5051919050565b60006020828403121561504957600080fd5b8151610db781613fa4565b8183823760009101908152919050565b81516001600160401b0381111561507d5761507d6144d7565b6150918161508b8454614a66565b84614c3b565b602080601f8311600181146150c657600084156150ae5750858301515b600019600386901b1c1916600185901b178555611170565b600085815260208120601f198616915b828110156150f5578886015182559484019460019091019084016150d6565b50858210156151135787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60008451615135818460208901613f28565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6000826151c3576151c3614f78565b500690565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b634e487b7160e01b600052602160045260246000fd5b828152604060208201526000610cab6040830184613f4c565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061316590830184613f4c565b60006020828403121561528757600080fd5b8151610db781613ef556febe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a", - "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106103af5760003560e01c80637e37479e116101f4578063ba5d40b71161011a578063e985e9c5116100ad578063f5c1f76e1161007c578063f5c1f76e146108d8578063f7df5c60146108eb578063f8c8765e146108fe578063ffa1ad741461091157600080fd5b8063e985e9c51461087a578063ebf0c717146108b6578063ec129eea146108bd578063f25eb5c1146108d057600080fd5b8063c87b56dd116100e9578063c87b56dd1461082e578063ce92b33e14610841578063cf2c52cb14610854578063d9548e531461086757600080fd5b8063ba5d40b7146107b3578063baef73e9146107c6578063bb5b27e114610808578063bebec6b41461081b57600080fd5b8063a22cb46511610192578063ac9650d811610161578063ac9650d81461074c578063b3f9e4cb1461076c578063b85afd281461077f578063b88d4fde146107a057600080fd5b8063a22cb465146106e7578063a3f4df7e146106fa578063a424740014610726578063ab3b87fe1461073957600080fd5b80639508b1c4116101ce5780639508b1c4146106b15780639559c0bd146106c457806395d89b41146106cc57806399e0dd7c146106d457600080fd5b80637e37479e146106785780637eee288d1461068b57806394d008ef1461069e57600080fd5b806342842e0e116102d95780635096023911610277578063663f7b2a11610246578063663f7b2a14610610578063672b9f81146106235780636ccbae5f1461064457806370a082311461066557600080fd5b806350960239146105bb578063572b6c05146105ce5780636352211e146105ea578063638e5c78146105fd57600080fd5b806347c81699116102b357806347c816991461056f5780634a72584d146105825780634f558e791461059557806350382c1a146105a857600080fd5b806342842e0e1461053657806342966c6814610549578063430c20811461055c57600080fd5b80631bf7e13e1161035157806327f189751161032057806327f18975146104ea578063310bd74b146104fd5780633f72ec6e1461051057806340c10f191461052357600080fd5b80631bf7e13e146104905780631f71be06146104a357806323b872dd146104b6578063276fabb1146104c957600080fd5b8063095ea7b31161038d578063095ea7b31461041c578063150b7a02146104315780631bd8cc1a1461045d5780631be5e7ed1461047d57600080fd5b806301ffc9a7146103b457806306fdde03146103dc578063081812fc146103f1575b600080fd5b6103c76103c2366004613f0b565b610935565b60405190151581526020015b60405180910390f35b6103e4610946565b6040516103d39190613f78565b6104046103ff366004613f8b565b6109d8565b6040516001600160a01b0390911681526020016103d3565b61042f61042a366004613fb9565b6109ff565b005b61044461043f366004614026565b610a18565b6040516001600160e01b031990911681526020016103d3565b61047061046b3660046140dc565b610b72565b6040516103d3919061417f565b6103e461048b366004614192565b610c68565b6103e461049e3660046141c9565b610cb3565b61042f6104b1366004614249565b610dbe565b61042f6104c4366004614305565b610e54565b6104dc6104d7366004614346565b610ea7565b6040519081526020016103d3565b61042f6104f8366004614387565b610eb6565b61042f61050b366004613f8b565b610efe565b61042f61051e3660046143fa565b610f39565b61042f610531366004613fb9565b61103b565b61042f610544366004614305565b611088565b61042f610557366004613f8b565b6110a3565b6103c761056a366004613fb9565b6110e7565b61042f61057d366004614424565b6110f3565b61042f610590366004614485565b611132565b6103c76105a3366004613f8b565b611178565b61042f6105b636600461458c565b611197565b61042f6105c93660046145c0565b6111cd565b6103c76105dc3660046145c0565b6001600160a01b0316301490565b6104046105f8366004613f8b565b61122d565b61042f61060b366004613f8b565b61124a565b61042f61061e366004614678565b611295565b6106366106313660046146c0565b611336565b6040516103d39291906146e2565b6104dc610652366004613f8b565b6000908152610100602052604090205490565b6104dc6106733660046145c0565b61134e565b6104dc6106863660046145c0565b6113d4565b61042f610699366004613fb9565b611405565b61042f6106ac366004614707565b61145c565b61042f6106bf366004614762565b6114ab565b6104dc601481565b6103e4611532565b61042f6106e2366004614805565b611541565b61042f6106f536600461483a565b6115c8565b6103e46040518060400160405280600d81526020016c554e533a20526567697374727960981b81525081565b6103c76107343660046141c9565b6115da565b61042f610747366004613fb9565b611625565b61075f61075a366004614346565b61166a565b6040516103d39190614866565b61040461077a366004613f8b565b611746565b61079261078d3660046140dc565b611770565b6040516103d39291906148c8565b61042f6107ae3660046148ed565b611892565b61042f6107c1366004614249565b6118d9565b6107f06107d4366004613f8b565b600090815261013960205260409020546001600160401b031690565b6040516001600160401b0390911681526020016103d3565b6103e4610816366004613f8b565b611962565b6103e46108293660046145c0565b611a04565b6103e461083c366004613f8b565b611ace565b61042f61084f366004614387565b611b34565b61042f610862366004614958565b611b73565b6103c7610875366004613f8b565b611c42565b6103c761088836600461499f565b6001600160a01b039182166000908152606a6020908152604080832093909416825291909152205460ff1690565b60006104dc565b61042f6108cb366004614387565b611c85565b61042f611cc4565b6104706108e6366004614346565b611d4b565b61042f6108f93660046149d8565b611dfe565b61042f61090c366004614a0a565b611e8f565b6103e460405180604001604052806005815260200164302e392e3160d81b81525081565b600061094082612065565b92915050565b60606065805461095590614a66565b80601f016020809104026020016040519081016040528092919081815260200182805461098190614a66565b80156109ce5780601f106109a3576101008083540402835291602001916109ce565b820191906000526020600020905b8154815290600101906020018083116109b157829003601f168201915b5050505050905090565b60006109e3826120b5565b506000908152606960205260409020546001600160a01b031690565b80610a0981612114565b610a13838361217a565b505050565b60007f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378546001600160a01b0316610a4d61229c565b6001600160a01b031603610b0e57610a6361229c565b6001600160a01b03166342966c68856040518263ffffffff1660e01b8152600401610a9091815260200190565b600060405180830381600087803b158015610aaa57600080fd5b505af1158015610abe573d6000803e3d6000fd5b505050821580159150610ad85750610ad882840184614a9a565b15610af657610ae730856122ab565b610af185856123f9565b610b00565b610b0085856122ab565b50630a85bd0160e11b610b69565b60405162461bcd60e51b815260206004820152602560248201527f52656769737472793a204552433732315f524543454956494e475f50524f4849604482015264109255115160da1b60648201526084015b60405180910390fd5b95945050505050565b6060826001600160401b03811115610b8c57610b8c6144d7565b604051908082528060200260200182016040528015610bbf57816020015b6060815260200190600190039081610baa5790505b50905060005b83811015610c6057610c30858583818110610be257610be2614ab5565b9050602002810190610bf49190614acb565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508792506124a4915050565b828281518110610c4257610c42614ab5565b60200260200101819052508080610c5890614b27565b915050610bc5565b509392505050565b6060610cab84848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508692506124a4915050565b949350505050565b606060005a9050610cc58585856115da565b610d215760405162461bcd60e51b815260206004820152602760248201527f554e535265676973747279466f727761726465723a205349474e41545552455f6044820152661253959053125160ca1b6064820152608401610b60565b610db3610d3160208701876145c0565b30604088013584610d4560608b018b614acb565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284376000920191909152506124d992505050565b9150505b9392505050565b610134546001600160a01b0316610dd361229c565b6001600160a01b031614610df95760405162461bcd60e51b8152600401610b6090614b40565b6000610e0d610e08888a614b87565b6125ba565b509050610e1a8982611405565b610e278686868685612612565b8115610e4957610e498982610e44610e3f8b8d614b87565b612680565b612701565b505050505050505050565b80610e66610e6061229c565b82612743565b610e825760405162461bcd60e51b8152600401610b6090614b94565b81610e8c81612114565b610e95836127d4565b610ea0858585612841565b5050505050565b6000610c60610e088385614b87565b80610ec2610e6061229c565b610ede5760405162461bcd60e51b8152600401610b6090614b94565b81610ee881612114565b610ef587878787876129e8565b50505050505050565b80610f0a610e6061229c565b610f265760405162461bcd60e51b8152600401610b6090614b94565b81610f3081612114565b610a13836127d4565b610134546001600160a01b0316610f4e61229c565b6001600160a01b031614610f745760405162461bcd60e51b8152600401610b6090614b40565b610f7d816120b5565b42826001600160401b031611610fd55760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a204558504952595f494e5f5041535400000000000000006044820152606401610b60565b60008181526101396020908152604091829020805467ffffffffffffffff19166001600160401b038616908117909155915191825282917f93feabb03ab84f47fc85bf0c298103fca21d8c8bc376eae0c1e1c56b9d4f7789910160405180910390a25050565b611043612a4b565b6001600160a01b031661105461229c565b6001600160a01b03161461107a5760405162461bcd60e51b8152600401610b6090614bdd565b61108482826122ab565b5050565b610a1383838360405180602001604052806000815250611892565b806110af610e6061229c565b6110cb5760405162461bcd60e51b8152600401610b6090614b94565b816110d581612114565b6110de836127d4565b610a1383612b4c565b6000610db78383612743565b806110ff610e6061229c565b61111b5760405162461bcd60e51b8152600401610b6090614b94565b8161112581612114565b610ef58787878787612bf3565b8061113e610e6061229c565b61115a5760405162461bcd60e51b8152600401610b6090614b94565b8161116481612114565b61117086868686612cd2565b505050505050565b6000818152606760205260408120546001600160a01b03161515610940565b6111ca816040516020016111ab9190614c1f565b6040516020818303038152906040528051906020012060001c82612d72565b50565b610134546001600160a01b03166111e261229c565b6001600160a01b0316146112085760405162461bcd60e51b8152600401610b6090614b40565b6001600160a01b0316600090815261013660205260409020805460ff19166001179055565b600061123882611c42565b6112455761094082612d97565b919050565b80611256610e6061229c565b6112725760405162461bcd60e51b8152600401610b6090614b94565b61128461127d61229c565b3084612841565b61108461128f61229c565b836123f9565b60006112a0826125ba565b5090506112ab61229c565b6001600160a01b03166112bd8261122d565b6001600160a01b0316146113135760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b60565b61131c81612114565b61108461132761229c565b8261133185612680565b612df7565b6060806113438484612e7e565b909590945092505050565b60006001600160a01b0382166113b85760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b6064820152608401610b60565b506001600160a01b031660009081526068602052604090205490565b6001600160a01b038116600090815261013560205260408120546113f781612e9f565b6113ff578091505b50919050565b610134546001600160a01b031661141a61229c565b6001600160a01b0316146114405760405162461bcd60e51b8152600401610b6090614b40565b611449816127d4565b61108461145582612d97565b8383612841565b611464612a4b565b6001600160a01b031661147561229c565b6001600160a01b03161461149b5760405162461bcd60e51b8152600401610b6090614bdd565b6114a584846122ab565b50505050565b6114b58787612ee9565b6114bd61229c565b6001600160a01b03166114cf8661122d565b6001600160a01b0316146115255760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b60565b610ef58484848489612612565b60606066805461095590614a66565b610134546001600160a01b031661155661229c565b6001600160a01b03161461157c5760405162461bcd60e51b8152600401610b6090614b40565b61013361158a828483614c81565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b82826040516115bc929190614d69565b60405180910390a15050565b6110846115d361229c565b8383612f58565b6000610cab6115e885614d7d565b3085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061302692505050565b80611631610e6061229c565b61164d5760405162461bcd60e51b8152600401610b6090614b94565b8161165781612114565b6114a561166384612d97565b8585612841565b606060006116788385614e07565b905030330361173d5760005b8381101561173b5761170b61169761229c565b61169f61316f565b8787858181106116b1576116b1614ab5565b90506020028101906116c39190614acb565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250613183915050565b82828151811061171d5761171d614ab5565b6020026020010181905250808061173390614b27565b915050611684565b505b610cab816131b3565b6000818152606760205260408120546001600160a01b0316611769576000610940565b3092915050565b606080836001600160401b0381111561178b5761178b6144d7565b6040519080825280602002602001820160405280156117be57816020015b60608152602001906001900390816117a95790505b509150836001600160401b038111156117d9576117d96144d7565b60405190808252806020026020018201604052801561180c57816020015b60608152602001906001900390816117f75790505b50905060005b848110156118895761183c86868381811061182f5761182f614ab5565b9050602002013585612e7e565b84838151811061184e5761184e614ab5565b6020026020010184848151811061186757611867614ab5565b602002602001018290528290525050808061188190614b27565b915050611812565b50935093915050565b8161189e610e6061229c565b6118ba5760405162461bcd60e51b8152600401610b6090614b94565b826118c481612114565b6118cd846127d4565b611170868686866132de565b610134546001600160a01b03166118ee61229c565b6001600160a01b0316146119145760405162461bcd60e51b8152600401610b6090614b40565b600080611924610e08898b614b87565b9150915061193181613311565b6119498a83611943610e3f8c8e614b87565b86613371565b6119568787878786612612565b50505050505050505050565b600081815260c96020526040902080546060919061197f90614a66565b80601f01602080910402602001604051908101604052809291908181526020018280546119ab90614a66565b80156119f85780601f106119cd576101008083540402835291602001916119f8565b820191906000526020600020905b8154815290600101906020018083116119db57829003601f168201915b50505050509050919050565b6001600160a01b03811660009081526101356020526040902054606090611a2a81612e9f565b6113ff576000818152610138602052604090208054611a4890614a66565b80601f0160208091040260200160405190810160405280929190818152602001828054611a7490614a66565b8015611ac15780601f10611a9657610100808354040283529160200191611ac1565b820191906000526020600020905b815481529060010190602001808311611aa457829003601f168201915b5050505050915050919050565b6060611ad9826120b5565b6000611ae36133c4565b90506000815111611b035760405180602001604052806000815250610db7565b80611b0d846133d4565b604051602001611b1e929190614e7a565b6040516020818303038152906040529392505050565b80611b40610e6061229c565b611b5c5760405162461bcd60e51b8152600401610b6090614b94565b81611b6681612114565b610ef58787878787612612565b7f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87546001600160a01b0316611ba661229c565b6001600160a01b031614611bcc5760405162461bcd60e51b8152600401610b6090614bdd565b6020819003611bef576000611be382840184613f8b565b90506114a584826122ab565b6000611bfd82840184614ea9565b805190915060005b8181101561117057611c3086848381518110611c2357611c23614ab5565b60200260200101516122ab565b80611c3a81614b27565b915050611c05565b600081815261013960205260408120546001600160401b03161580159061094057505060009081526101396020526040902054426001600160401b039091161090565b80611c91610e6061229c565b611cad5760405162461bcd60e51b8152600401610b6090614b94565b81611cb781612114565b610ef587878787876134d4565b6000611cce61229c565b6001600160a01b0381166000908152610135602052604081205491925003611d425760405162461bcd60e51b815260206004820152602160248201527f52656769737472793a20524556455253455f5245434f52445f49535f454d50546044820152605960f81b6064820152608401610b60565b6111ca816134ea565b6060816001600160401b03811115611d6557611d656144d7565b604051908082528060200260200182016040528015611d9857816020015b6060815260200190600190039081611d835790505b50905060005b82811015611df757611dc7848483818110611dbb57611dbb614ab5565b90506020020135611962565b828281518110611dd957611dd9614ab5565b60200260200101819052508080611def90614b27565b915050611d9e565b5092915050565b610134546001600160a01b0316611e1361229c565b6001600160a01b031614611e395760405162461bcd60e51b8152600401610b6090614b40565b61013454611e50906001600160a01b0316846122ab565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c39528383604051611e82929190614d69565b60405180910390a2505050565b600054610100900460ff1615808015611eaf5750600054600160ff909116105b80611ec95750303b158015611ec9575060005460ff166001145b611f2c5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610b60565b6000805460ff191660011790558015611f4f576000805461ff0019166101001790555b61013480546001600160a01b0319166001600160a01b038716179055837f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec9237880546001600160a01b0319166001600160a01b03929092169190911790556040805180820182526013815272556e73746f707061626c6520446f6d61696e7360681b60208083019190915282518084019093526002835261155160f21b90830152611ff79161352f565b611fff61356f565b61200761356f565b61201083613598565b612019826135c8565b8015610ea0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b60006001600160e01b031982166380ac58cd60e01b148061209657506001600160e01b03198216635b5e139f60e01b145b8061094057506301ffc9a760e01b6001600160e01b0319831614610940565b6000818152606760205260409020546001600160a01b03166111ca5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b60565b3033036121715761212361316f565b81146111ca5760405162461bcd60e51b815260206004820152601760248201527f52656769737472793a20544f4b454e5f494e56414c49440000000000000000006044820152606401610b60565b6111ca816135f8565b600061218582612d97565b9050806001600160a01b0316836001600160a01b0316036121f25760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b6064820152608401610b60565b806001600160a01b031661220461229c565b6001600160a01b0316148061222057506122208161088861229c565b6122925760405162461bcd60e51b815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c00006064820152608401610b60565b610a138383613626565b60006122a6613694565b905090565b6001600160a01b0382166123015760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610b60565b6000818152606760205260409020546001600160a01b0316156123665760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610b60565b612372600083836136af565b6001600160a01b038216600090815260686020526040812080546001929061239b908490614f39565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b03861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b6000612403612a4b565b905061240f8183613626565b60008051602061529383398151915254604080516020808201869052825180830390910181528183019283905263e3dec8fb60e01b9092526001600160a01b0390921691829163e3dec8fb9161246c918891309190604401614f4c565b600060405180830381600087803b15801561248657600080fd5b505af115801561249a573d6000803e3d6000fd5b5050505050505050565b6060610db7836040516020016124ba9190614c1f565b6040516020818303038152906040528051906020012060001c8361378b565b60606124e4856135f8565b600080876001600160a01b0316866124fe8b8a8989613183565b60405161250b9190614c1f565b60006040518083038160008787f1925050503d8060008114612549576040519150601f19603f3d011682016040523d82523d6000602084013e61254e565b606091505b50909250905061255f603f87614f8e565b5a1161256d5761256d614fa2565b6125ad82826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061386d565b9998505050505050505050565b805160009081905b801561260c578291506125f882856125db600185614fb8565b815181106125eb576125eb614ab5565b60200260200101516138a6565b92508061260481614fcb565b9150506125c2565b50915091565b60005b848110156111705761266e86868381811061263257612632614ab5565b90506020028101906126449190614acb565b86868581811061265657612656614ab5565b90506020028101906126689190614acb565b86612bf3565b8061267881614b27565b915050612615565b606060008260008151811061269757612697614ab5565b602002602001015190506000600190505b8351811015611df757818482815181106126c4576126c4614ab5565b60200260200101516040516020016126dd929190614fe2565b604051602081830303815290604052915080806126f990614b27565b9150506126a8565b61dead6001600160a01b0384161480159061273357506001600160a01b03831660009081526101356020526040902054155b15610a1357610a13838383612df7565b60008061274f8361122d565b90506001600160a01b03811615801590610cab5750806001600160a01b0316846001600160a01b031614806127a957506001600160a01b038082166000908152606a602090815260408083209388168352929052205460ff165b80610cab5750836001600160a01b03166127c2846109d8565b6001600160a01b031614949350505050565b6127dd81613952565b6040516020016127ef91815260200190565b60408051601f198184030181528282528051602091820120600085815260cb9092529181209190915582917f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9190a250565b826001600160a01b031661285482612d97565b6001600160a01b0316146128b85760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b6064820152608401610b60565b6001600160a01b03821661291a5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610b60565b6129258383836136af565b612930600082613626565b6001600160a01b0383166000908152606860205260408120805460019290612959908490614fb8565b90915550506001600160a01b0382166000908152606860205260408120805460019290612987908490614f39565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60005b8481101561117057612a39868683818110612a0857612a08614ab5565b90506020020135858584818110612a2157612a21614ab5565b9050602002810190612a339190614acb565b85612cd2565b80612a4381614b27565b9150506129eb565b600080516020615293833981519152546000906001600160a01b03168015612b485760405163721804d360e11b81523060048201526000906001600160a01b0383169063e43009a690602401602060405180830381865afa158015612ab4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ad8919061501e565b60405163e66f960360e01b8152600481018290529091506001600160a01b0383169063e66f960390602401602060405180830381865afa158015612b20573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b449190615037565b9250505b5090565b6000612b5782612d97565b9050612b65816000846136af565b612b70600083613626565b6001600160a01b0381166000908152606860205260408120805460019290612b99908490614fb8565b909155505060008281526067602052604080822080546001600160a01b0319169055518391906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b60008585604051602001612c08929190615054565b60408051601f198184030181528282528051602091820120601f8901829004820284018201909252878352909250612c5c9183918990899081908401838280828437600092019190915250612d7292505050565b6111708187878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061397a915050565b612cdb84613aaf565b612d275760405162461bcd60e51b815260206004820152601c60248201527f5265636f726453746f726167653a204b45595f4e4f545f464f554e44000000006044820152606401610b60565b6114a584612d3486611962565b85858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525087925061397a915050565b612d7b82613aaf565b61108457600082815260c960205260409020610a138282615064565b6000818152606760205260408120546001600160a01b0316806109405760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b60565b6000828152610138602052604090208054612e1190614a66565b9050600003612e3557600082815261013860205260409020612e338282615064565b505b6001600160a01b03831660008181526101356020526040808220859055518492917feb76a21470988c474a21f690cc28fee1ed511bd812dc3c21fd0f49c5e5d4708a91a3505050565b606080612e8a84611962565b9150612e96848461378b565b90509250929050565b6000818152610137602052604081205460ff16801561094057506101366000612ec661229c565b6001600160a01b0316815260208101919091526040016000205460ff1692915050565b60008051602061529383398151915254604051633805550f60e01b81526001600160a01b03909116908190633805550f90612f2a9086908690600401614d69565b600060405180830381600087803b158015612f4457600080fd5b505af1158015610ef5573d6000803e3d6000fd5b816001600160a01b0316836001600160a01b031603612fb95760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610b60565b6001600160a01b038381166000818152606a6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561306d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613091919061501e565b9050600061313f8660600151805190602001208688602001516040516020016130df9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561316557508551613165906001600160a01b03168286613ad5565b9695505050505050565b60003033036131805750601f193601355b90565b606082858560405160200161319a93929190615123565b6040516020818303038152906040529050949350505050565b606081516001600160401b038111156131ce576131ce6144d7565b60405190808252806020026020018201604052801561320157816020015b60608152602001906001900390816131ec5790505b50905060005b82518110156113ff57600080306001600160a01b031685848151811061322f5761322f614ab5565b60200260200101516040516132449190614c1f565b600060405180830381855af49150503d806000811461327f576040519150601f19603f3d011682016040523d82523d6000602084013e613284565b606091505b50915091506132ac82826040518060600160405280602781526020016152b36027913961386d565b8484815181106132be576132be614ab5565b6020026020010181905250505080806132d690614b27565b915050613207565b6132e9848484612841565b6132f584848484613c17565b6114a55760405162461bcd60e51b8152600401610b6090615162565b6000818152610137602052604090205460ff16156111ca5760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a20544f4b454e5f555047524144454400000000000000006044820152606401610b60565b61337b84846122ab565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952836040516133ab9190613f78565b60405180910390a280156114a5576114a5848484612701565b6060610133805461095590614a66565b6060816000036133fb5750506040805180820190915260018152600360fc1b602082015290565b8160005b8115613425578061340f81614b27565b915061341e9050600a83614f8e565b91506133ff565b6000816001600160401b0381111561343f5761343f6144d7565b6040519080825280601f01601f191660200182016040528015613469576020820181803683370190505b5090505b8415610cab5761347e600183614fb8565b915061348b600a866151b4565b613496906030614f39565b60f81b8183815181106134ab576134ab614ab5565b60200101906001600160f81b031916908160001a9053506134cd600a86614f8e565b945061346d565b6134dd816127d4565b610ea08585858585612612565b6001600160a01b03811660008181526101356020526040808220829055517ffcf5eec0cfa3e6332f5f0e63ec242d71f866a61d121d6cdf5c2eb3b668a26c4f9190a250565b600054610100900460ff166135565760405162461bcd60e51b8152600401610b60906151c8565b60656135628382615064565b506066610a138282615064565b600054610100900460ff166135965760405162461bcd60e51b8152600401610b60906151c8565b565b600054610100900460ff166135bf5760405162461bcd60e51b8152600401610b60906151c8565b6111ca81613d1c565b600054610100900460ff166135ef5760405162461bcd60e51b8152600401610b60906151c8565b6111ca81613d75565b60008181526101006020526040902054613613906001614f39565b6000918252610100602052604090912055565b600081815260696020526040902080546001600160a01b0319166001600160a01b038416908117909155819061365b82612d97565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60003033036136aa575060331936013560601c90565b503390565b6001600160a01b0382166136c6576136c681613311565b600081815261013960205260409020546001600160401b031615613761576001600160a01b0382161580159061371557506136ff612a4b565b6001600160a01b0316826001600160a01b031614155b6137615760405162461bcd60e51b815260206004820152601960248201527f52656769737472793a20544f4b454e5f455850495241424c45000000000000006044820152606401610b60565b6001600160a01b03831660009081526101356020526040902054819003610a1357610a13836134ea565b606061379682612e9f565b156137b05750604080516020810190915260008152610940565b60ca60006137bd84613952565b8152602001908152602001600020600084815260200190815260200160002080546137e790614a66565b80601f016020809104026020016040519081016040528092919081815260200182805461381390614a66565b80156138605780601f1061383557610100808354040283529160200191613860565b820191906000526020600020905b81548152906001019060200180831161384357829003601f168201915b5050505050905092915050565b6060831561387c575081610db7565b82511561388c5782518084602001fd5b8160405162461bcd60e51b8152600401610b609190613f78565b600081516000036138f15760405162461bcd60e51b815260206004820152601560248201527452656769737472793a204c4142454c5f454d50545960581b6044820152606401610b60565b82826040516020016139039190614c1f565b60405160208183030381529060405280519060200120604051602001613933929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b600081815260cb602052604081205415612b4857600082815260cb6020526040902054610940565b60ca600061398783613952565b8152602001908152602001600020600085815260200190815260200160002080546139b190614a66565b9050600003613a0957826040516139c89190614c1f565b6040518091039020817f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f8685604051613a009190613f78565b60405180910390a35b8160ca6000613a1784613952565b815260200190815260200160002060008681526020019081526020016000209081613a429190615064565b5081604051613a519190614c1f565b604051809103902083604051613a679190614c1f565b6040518091039020827f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d928686604051613aa19291906146e2565b60405180910390a450505050565b600081815260c9602052604081208054829190613acb90614a66565b9050119050919050565b6000806000613ae48585613dc3565b90925090506000816004811115613afd57613afd615213565b148015613b1b5750856001600160a01b0316826001600160a01b0316145b15613b2b57600192505050610db7565b600080876001600160a01b0316631626ba7e60e01b8888604051602401613b53929190615229565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051613b919190614c1f565b600060405180830381855afa9150503d8060008114613bcc576040519150601f19603f3d011682016040523d82523d6000602084013e613bd1565b606091505b5091509150818015613be4575080516020145b8015613c0b57508051630b135d3f60e11b90613c09908301602090810190840161501e565b145b98975050505050505050565b60006001600160a01b0384163b15613d1457836001600160a01b031663150b7a02613c4061229c565b8786866040518563ffffffff1660e01b8152600401613c629493929190615242565b6020604051808303816000875af1925050508015613c9d575060408051601f3d908101601f19168201909252613c9a91810190615275565b60015b613cfa573d808015613ccb576040519150601f19603f3d011682016040523d82523d6000602084013e613cd0565b606091505b508051600003613cf25760405162461bcd60e51b8152600401610b6090615162565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610cab565b506001610cab565b600054610100900460ff16613d435760405162461bcd60e51b8152600401610b60906151c8565b806000805160206152938339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b600054610100900460ff16613d9c5760405162461bcd60e51b8152600401610b60906151c8565b807f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87613d54565b6000808251604103613df95760208301516040840151606085015160001a613ded87828585613e08565b94509450505050613e01565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613e3f5750600090506003613eec565b8460ff16601b14158015613e5757508460ff16601c14155b15613e685750600090506004613eec565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613ebc573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613ee557600060019250925050613eec565b9150600090505b94509492505050565b6001600160e01b0319811681146111ca57600080fd5b600060208284031215613f1d57600080fd5b8135610db781613ef5565b60005b83811015613f43578181015183820152602001613f2b565b50506000910152565b60008151808452613f64816020860160208601613f28565b601f01601f19169290920160200192915050565b602081526000610db76020830184613f4c565b600060208284031215613f9d57600080fd5b5035919050565b6001600160a01b03811681146111ca57600080fd5b60008060408385031215613fcc57600080fd5b8235613fd781613fa4565b946020939093013593505050565b60008083601f840112613ff757600080fd5b5081356001600160401b0381111561400e57600080fd5b602083019150836020828501011115613e0157600080fd5b60008060008060006080868803121561403e57600080fd5b853561404981613fa4565b9450602086013561405981613fa4565b93506040860135925060608601356001600160401b0381111561407b57600080fd5b61408788828901613fe5565b969995985093965092949392505050565b60008083601f8401126140aa57600080fd5b5081356001600160401b038111156140c157600080fd5b6020830191508360208260051b8501011115613e0157600080fd5b6000806000604084860312156140f157600080fd5b83356001600160401b0381111561410757600080fd5b61411386828701614098565b909790965060209590950135949350505050565b600082825180855260208086019550808260051b84010181860160005b8481101561417257601f19868403018952614160838351613f4c565b98840198925090830190600101614144565b5090979650505050505050565b602081526000610db76020830184614127565b6000806000604084860312156141a757600080fd5b83356001600160401b038111156141bd57600080fd5b61411386828701613fe5565b6000806000604084860312156141de57600080fd5b83356001600160401b03808211156141f557600080fd5b908501906080828803121561420957600080fd5b9093506020850135908082111561421f57600080fd5b5061422c86828701613fe5565b9497909650939450505050565b8035801515811461124557600080fd5b60008060008060008060008060a0898b03121561426557600080fd5b883561427081613fa4565b975060208901356001600160401b038082111561428c57600080fd5b6142988c838d01614098565b909950975060408b01359150808211156142b157600080fd5b6142bd8c838d01614098565b909750955060608b01359150808211156142d657600080fd5b506142e38b828c01614098565b90945092506142f6905060808a01614239565b90509295985092959890939650565b60008060006060848603121561431a57600080fd5b833561432581613fa4565b9250602084013561433581613fa4565b929592945050506040919091013590565b6000806020838503121561435957600080fd5b82356001600160401b0381111561436f57600080fd5b61437b85828601614098565b90969095509350505050565b60008060008060006060868803121561439f57600080fd5b85356001600160401b03808211156143b657600080fd5b6143c289838a01614098565b909750955060208801359150808211156143db57600080fd5b506143e888828901614098565b96999598509660400135949350505050565b6000806040838503121561440d57600080fd5b82356001600160401b0381168114613fd757600080fd5b60008060008060006060868803121561443c57600080fd5b85356001600160401b038082111561445357600080fd5b61445f89838a01613fe5565b9097509550602088013591508082111561447857600080fd5b506143e888828901613fe5565b6000806000806060858703121561449b57600080fd5b8435935060208501356001600160401b038111156144b857600080fd5b6144c487828801613fe5565b9598909750949560400135949350505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715614515576145156144d7565b604052919050565b600082601f83011261452e57600080fd5b81356001600160401b03811115614547576145476144d7565b61455a601f8201601f19166020016144ed565b81815284602083860101111561456f57600080fd5b816020850160208301376000918101602001919091529392505050565b60006020828403121561459e57600080fd5b81356001600160401b038111156145b457600080fd5b610cab8482850161451d565b6000602082840312156145d257600080fd5b8135610db781613fa4565b60006001600160401b038211156145f6576145f66144d7565b5060051b60200190565b600061461361460e846145dd565b6144ed565b8381529050602080820190600585901b84018681111561463257600080fd5b845b8181101561466d5780356001600160401b038111156146535760008081fd5b61465f8982890161451d565b855250928201928201614634565b505050509392505050565b60006020828403121561468a57600080fd5b81356001600160401b038111156146a057600080fd5b8201601f810184136146b157600080fd5b610cab84823560208401614600565b600080604083850312156146d357600080fd5b50508035926020909101359150565b6040815260006146f56040830185613f4c565b8281036020840152610db38185613f4c565b6000806000806060858703121561471d57600080fd5b843561472881613fa4565b93506020850135925060408501356001600160401b0381111561474a57600080fd5b61475687828801613fe5565b95989497509550505050565b60008060008060008060006080888a03121561477d57600080fd5b87356001600160401b038082111561479457600080fd5b6147a08b838c01613fe5565b909950975060208a0135965060408a01359150808211156147c057600080fd5b6147cc8b838c01614098565b909650945060608a01359150808211156147e557600080fd5b506147f28a828b01614098565b989b979a50959850939692959293505050565b6000806020838503121561481857600080fd5b82356001600160401b0381111561482e57600080fd5b61437b85828601613fe5565b6000806040838503121561484d57600080fd5b823561485881613fa4565b9150612e9660208401614239565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156148bb57603f198886030184526148a9858351613f4c565b9450928501929085019060010161488d565b5092979650505050505050565b6040815260006148db6040830185614127565b8281036020840152610db38185614127565b6000806000806080858703121561490357600080fd5b843561490e81613fa4565b9350602085013561491e81613fa4565b92506040850135915060608501356001600160401b0381111561494057600080fd5b61494c8782880161451d565b91505092959194509250565b60008060006040848603121561496d57600080fd5b833561497881613fa4565b925060208401356001600160401b0381111561499357600080fd5b61422c86828701613fe5565b600080604083850312156149b257600080fd5b82356149bd81613fa4565b915060208301356149cd81613fa4565b809150509250929050565b6000806000604084860312156149ed57600080fd5b8335925060208401356001600160401b0381111561499357600080fd5b60008060008060808587031215614a2057600080fd5b8435614a2b81613fa4565b93506020850135614a3b81613fa4565b92506040850135614a4b81613fa4565b91506060850135614a5b81613fa4565b939692955090935050565b600181811c90821680614a7a57607f821691505b6020821081036113ff57634e487b7160e01b600052602260045260246000fd5b600060208284031215614aac57600080fd5b610db782614239565b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112614ae257600080fd5b8301803591506001600160401b03821115614afc57600080fd5b602001915036819003821315613e0157600080fd5b634e487b7160e01b600052601160045260246000fd5b600060018201614b3957614b39614b11565b5060010190565b60208082526027908201527f52656769737472793a2053454e4445525f49535f4e4f545f4d494e54494e475f60408201526626a0a720a3a2a960c91b606082015260800190565b6000610db7368484614600565b60208082526029908201527f52656769737472793a2053454e4445525f49535f4e4f545f415050524f5645446040820152682fa7a92fa7aba722a960b91b606082015260800190565b60208082526022908201527f52656769737472793a20494e53554646494349454e545f5045524d495353494f6040820152614e5360f01b606082015260800190565b60008251614c31818460208701613f28565b9190910192915050565b601f821115610a1357600081815260208120601f850160051c81016020861015614c625750805b601f850160051c820191505b8181101561117057828155600101614c6e565b6001600160401b03831115614c9857614c986144d7565b614cac83614ca68354614a66565b83614c3b565b6000601f841160018114614ce05760008515614cc85750838201355b600019600387901b1c1916600186901b178355610ea0565b600083815260209020601f19861690835b82811015614d115786850135825560209485019460019092019101614cf1565b5086821015614d2e5760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b602081526000610cab602083018486614d40565b600060808236031215614d8f57600080fd5b604051608081016001600160401b038282108183111715614db257614db26144d7565b8160405284359150614dc382613fa4565b81835260208501356020840152604085013560408401526060850135915080821115614dee57600080fd5b50614dfb3682860161451d565b60608301525092915050565b6000614e1561460e846145dd565b80848252602080830192508560051b850136811115614e3357600080fd5b855b81811015614e6e5780356001600160401b03811115614e545760008081fd5b614e6036828a0161451d565b865250938201938201614e35565b50919695505050505050565b60008351614e8c818460208801613f28565b835190830190614ea0818360208801613f28565b01949350505050565b60006020808385031215614ebc57600080fd5b82356001600160401b03811115614ed257600080fd5b8301601f81018513614ee357600080fd5b8035614ef161460e826145dd565b81815260059190911b82018301908381019087831115614f1057600080fd5b928401925b82841015614f2e57833582529284019290840190614f15565b979650505050505050565b8082018082111561094057610940614b11565b6001600160a01b03848116825283166020820152606060408201819052600090610b6990830184613f4c565b634e487b7160e01b600052601260045260246000fd5b600082614f9d57614f9d614f78565b500490565b634e487b7160e01b600052600160045260246000fd5b8181038181111561094057610940614b11565b600081614fda57614fda614b11565b506000190190565b60008351614ff4818460208801613f28565b601760f91b9083019081528351615012816001840160208801613f28565b01600101949350505050565b60006020828403121561503057600080fd5b5051919050565b60006020828403121561504957600080fd5b8151610db781613fa4565b8183823760009101908152919050565b81516001600160401b0381111561507d5761507d6144d7565b6150918161508b8454614a66565b84614c3b565b602080601f8311600181146150c657600084156150ae5750858301515b600019600386901b1c1916600185901b178555611170565b600085815260208120601f198616915b828110156150f5578886015182559484019460019091019084016150d6565b50858210156151135787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60008451615135818460208901613f28565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6000826151c3576151c3614f78565b500690565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b634e487b7160e01b600052602160045260246000fd5b828152604060208201526000610cab6040830184613f4c565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061316590830184613f4c565b60006020828403121561528757600080fd5b8151610db781613ef556febe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a", + "bytecode": "0x608060405234801561000f575f80fd5b506150e28061001d5f395ff3fe608060405234801561000f575f80fd5b506004361061039e575f3560e01c80637e37479e116101ea578063ba5d40b711610114578063e985e9c5116100a9578063f5c1f76e11610079578063f5c1f76e146108c2578063f7df5c60146108d5578063f8c8765e146108e8578063ffa1ad74146108fb575f80fd5b8063e985e9c514610866578063ebf0c717146108a1578063ec129eea146108a7578063f25eb5c1146108ba575f80fd5b8063c87b56dd116100e4578063c87b56dd1461081a578063ce92b33e1461082d578063cf2c52cb14610840578063d9548e5314610853575f80fd5b8063ba5d40b7146107a0578063baef73e9146107b3578063bb5b27e1146107f4578063bebec6b414610807575f80fd5b8063a22cb4651161018a578063ac9650d81161015a578063ac9650d814610739578063b3f9e4cb14610759578063b85afd281461076c578063b88d4fde1461078d575f80fd5b8063a22cb465146106d4578063a3f4df7e146106e7578063a424740014610713578063ab3b87fe14610726575f80fd5b80639508b1c4116101c55780639508b1c41461069e5780639559c0bd146106b157806395d89b41146106b957806399e0dd7c146106c1575f80fd5b80637e37479e146106655780637eee288d1461067857806394d008ef1461068b575f80fd5b806342842e0e116102cb578063509602391161026b578063663f7b2a1161023b578063663f7b2a146105fe578063672b9f81146106115780636ccbae5f1461063257806370a0823114610652575f80fd5b806350960239146105a9578063572b6c05146105bc5780636352211e146105d8578063638e5c78146105eb575f80fd5b806347c81699116102a657806347c816991461055d5780634a72584d146105705780634f558e791461058357806350382c1a14610596575f80fd5b806342842e0e1461052457806342966c6814610537578063430c20811461054a575f80fd5b80631bf7e13e1161034157806327f189751161031157806327f18975146104d8578063310bd74b146104eb5780633f72ec6e146104fe57806340c10f1914610511575f80fd5b80631bf7e13e1461047e5780631f71be061461049157806323b872dd146104a4578063276fabb1146104b7575f80fd5b8063095ea7b31161037c578063095ea7b31461040a578063150b7a021461041f5780631bd8cc1a1461044b5780631be5e7ed1461046b575f80fd5b806301ffc9a7146103a257806306fdde03146103ca578063081812fc146103df575b5f80fd5b6103b56103b0366004613dca565b61091f565b60405190151581526020015b60405180910390f35b6103d261092f565b6040516103c19190613e32565b6103f26103ed366004613e44565b6109bf565b6040516001600160a01b0390911681526020016103c1565b61041d610418366004613e6f565b6109e4565b005b61043261042d366004613ed6565b6109fd565b6040516001600160e01b031990911681526020016103c1565b61045e610459366004613f83565b610b51565b6040516103c19190614022565b6103d2610479366004614034565b610c3a565b6103d261048c366004614067565b610c84565b61041d61049f3660046140e0565b610d8c565b61041d6104b2366004614194565b610e21565b6104ca6104c53660046141d2565b610e74565b6040519081526020016103c1565b61041d6104e6366004614210565b610e82565b61041d6104f9366004613e44565b610eca565b61041d61050c36600461427d565b610f05565b61041d61051f366004613e6f565b611006565b61041d610532366004614194565b611053565b61041d610545366004613e44565b61106d565b6103b5610558366004613e6f565b6110b1565b61041d61056b3660046142a4565b6110bc565b61041d61057e3660046142ff565b6110fb565b6103b5610591366004613e44565b611141565b61041d6105a43660046143fc565b61115f565b61041d6105b736600461442d565b611194565b6103b56105ca36600461442d565b6001600160a01b0316301490565b6103f26105e6366004613e44565b6111f3565b61041d6105f9366004613e44565b61120f565b61041d61060c3660046144de565b61125a565b61062461061f366004614522565b6112fa565b6040516103c1929190614542565b6104ca610640366004613e44565b5f908152610100602052604090205490565b6104ca61066036600461442d565b611312565b6104ca61067336600461442d565b611396565b61041d610686366004613e6f565b6113c6565b61041d610699366004614566565b61141d565b61041d6106ac3660046145bd565b61146c565b6104ca601481565b6103d26114f3565b61041d6106cf366004614658565b611502565b61041d6106e236600461468a565b611589565b6103d26040518060400160405280600d81526020016c554e533a20526567697374727960981b81525081565b6103b5610721366004614067565b61159b565b61041d610734366004613e6f565b6115e4565b61074c6107473660046141d2565b611629565b6040516103c191906146b4565b6103f2610767366004613e44565b6116f7565b61077f61077a366004613f83565b61171f565b6040516103c1929190614716565b61041d61079b36600461473a565b611835565b61041d6107ae3660046140e0565b61187c565b6107dc6107c1366004613e44565b5f90815261013960205260409020546001600160401b031690565b6040516001600160401b0390911681526020016103c1565b6103d2610802366004613e44565b611904565b6103d261081536600461442d565b6119a3565b6103d2610828366004613e44565b611a69565b61041d61083b366004614210565b611acc565b61041d61084e3660046147a1565b611b0b565b6103b5610861366004613e44565b611bcd565b6103b56108743660046147e4565b6001600160a01b039182165f908152606a6020908152604080832093909416825291909152205460ff1690565b5f6104ca565b61041d6108b5366004614210565b611c0e565b61041d611c4d565b61045e6108d03660046141d2565b611cd2565b61041d6108e336600461481b565b611d79565b61041d6108f6366004614849565b611e0a565b6103d260405180604001604052806005815260200164302e392e3160d81b81525081565b5f61092982611fda565b92915050565b60606065805461093e906148a2565b80601f016020809104026020016040519081016040528092919081815260200182805461096a906148a2565b80156109b55780601f1061098c576101008083540402835291602001916109b5565b820191905f5260205f20905b81548152906001019060200180831161099857829003601f168201915b5050505050905090565b5f6109c982612029565b505f908152606960205260409020546001600160a01b031690565b806109ee81612087565b6109f883836120ed565b505050565b5f7f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378546001600160a01b0316610a3161220e565b6001600160a01b031603610aed57610a4761220e565b6001600160a01b03166342966c68856040518263ffffffff1660e01b8152600401610a7491815260200190565b5f604051808303815f87803b158015610a8b575f80fd5b505af1158015610a9d573d5f803e3d5ffd5b505050821580159150610ab75750610ab7828401846148d4565b15610ad557610ac6308561221c565b610ad08585612366565b610adf565b610adf858561221c565b50630a85bd0160e11b610b48565b60405162461bcd60e51b815260206004820152602560248201527f52656769737472793a204552433732315f524543454956494e475f50524f4849604482015264109255115160da1b60648201526084015b60405180910390fd5b95945050505050565b6060826001600160401b03811115610b6b57610b6b61434d565b604051908082528060200260200182016040528015610b9e57816020015b6060815260200190600190039081610b895790505b5090505f5b83811015610c3257610c0d858583818110610bc057610bc06148ed565b9050602002810190610bd29190614901565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525087925061240a915050565b828281518110610c1f57610c1f6148ed565b6020908102919091010152600101610ba3565b509392505050565b6060610c7c84848080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525086925061240a915050565b949350505050565b60605f5a9050610c9585858561159b565b610cf15760405162461bcd60e51b815260206004820152602760248201527f554e535265676973747279466f727761726465723a205349474e41545552455f6044820152661253959053125160ca1b6064820152608401610b3f565b610d81610d01602087018761442d565b30604088013584610d1560608b018b614901565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f9201919091525061243e92505050565b9150505b9392505050565b610134546001600160a01b0316610da161220e565b6001600160a01b031614610dc75760405162461bcd60e51b8152600401610b3f90614943565b5f610dda610dd5888a61498a565b61251a565b509050610de789826113c6565b610df48686868685612571565b8115610e1657610e168982610e11610e0c8b8d61498a565b6125d4565b612648565b505050505050505050565b80610e33610e2d61220e565b82612689565b610e4f5760405162461bcd60e51b8152600401610b3f90614996565b81610e5981612087565b610e6283612718565b610e6d858585612784565b5050505050565b5f610c32610dd5838561498a565b80610e8e610e2d61220e565b610eaa5760405162461bcd60e51b8152600401610b3f90614996565b81610eb481612087565b610ec18787878787612927565b50505050505050565b80610ed6610e2d61220e565b610ef25760405162461bcd60e51b8152600401610b3f90614996565b81610efc81612087565b6109f883612718565b610134546001600160a01b0316610f1a61220e565b6001600160a01b031614610f405760405162461bcd60e51b8152600401610b3f90614943565b610f4981612029565b42826001600160401b031611610fa15760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a204558504952595f494e5f5041535400000000000000006044820152606401610b3f565b5f8181526101396020908152604091829020805467ffffffffffffffff19166001600160401b038616908117909155915191825282917f93feabb03ab84f47fc85bf0c298103fca21d8c8bc376eae0c1e1c56b9d4f7789910160405180910390a25050565b61100e61297f565b6001600160a01b031661101f61220e565b6001600160a01b0316146110455760405162461bcd60e51b8152600401610b3f906149df565b61104f828261221c565b5050565b6109f883838360405180602001604052805f815250611835565b80611079610e2d61220e565b6110955760405162461bcd60e51b8152600401610b3f90614996565b8161109f81612087565b6110a883612718565b6109f883612a79565b5f610d858383612689565b806110c8610e2d61220e565b6110e45760405162461bcd60e51b8152600401610b3f90614996565b816110ee81612087565b610ec18787878787612b1b565b80611107610e2d61220e565b6111235760405162461bcd60e51b8152600401610b3f90614996565b8161112d81612087565b61113986868686612bf6565b505050505050565b5f818152606760205260408120546001600160a01b03161515610929565b611191816040516020016111739190614a21565b604051602081830303815290604052805190602001205f1c82612c95565b50565b610134546001600160a01b03166111a961220e565b6001600160a01b0316146111cf5760405162461bcd60e51b8152600401610b3f90614943565b6001600160a01b03165f90815261013660205260409020805460ff19166001179055565b5f6111fd82611bcd565b61120a5761092982612cb9565b919050565b8061121b610e2d61220e565b6112375760405162461bcd60e51b8152600401610b3f90614996565b61124961124261220e565b3084612784565b61104f61125461220e565b83612366565b5f6112648261251a565b50905061126f61220e565b6001600160a01b0316611281826111f3565b6001600160a01b0316146112d75760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b3f565b6112e081612087565b61104f6112eb61220e565b826112f5856125d4565b612d18565b6060806113078484612d9b565b909590945092505050565b5f6001600160a01b03821661137b5760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b6064820152608401610b3f565b506001600160a01b03165f9081526068602052604090205490565b6001600160a01b0381165f90815261013560205260408120546113b881612dbc565b6113c0578091505b50919050565b610134546001600160a01b03166113db61220e565b6001600160a01b0316146114015760405162461bcd60e51b8152600401610b3f90614943565b61140a81612718565b61104f61141682612cb9565b8383612784565b61142561297f565b6001600160a01b031661143661220e565b6001600160a01b03161461145c5760405162461bcd60e51b8152600401610b3f906149df565b611466848461221c565b50505050565b6114768787612e03565b61147e61220e565b6001600160a01b0316611490866111f3565b6001600160a01b0316146114e65760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b3f565b610ec18484848489612571565b60606066805461093e906148a2565b610134546001600160a01b031661151761220e565b6001600160a01b03161461153d5760405162461bcd60e51b8152600401610b3f90614943565b61013361154b828483614a80565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b828260405161157d929190614b61565b60405180910390a15050565b61104f61159461220e565b8383612e6c565b5f610c7c6115a885614b74565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250612f3992505050565b806115f0610e2d61220e565b61160c5760405162461bcd60e51b8152600401610b3f90614996565b8161161681612087565b61146661162284612cb9565b8585612784565b60605f6116368385614bfb565b90503033036116ee575f5b838110156116ec576116c761165461220e565b61165c61307e565b87878581811061166e5761166e6148ed565b90506020028101906116809190614901565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92018290525060408051602081019091529081529250613091915050565b8282815181106116d9576116d96148ed565b6020908102919091010152600101611641565b505b610c7c816130c1565b5f818152606760205260408120546001600160a01b0316611718575f610929565b3092915050565b606080836001600160401b0381111561173a5761173a61434d565b60405190808252806020026020018201604052801561176d57816020015b60608152602001906001900390816117585790505b509150836001600160401b038111156117885761178861434d565b6040519080825280602002602001820160405280156117bb57816020015b60608152602001906001900390816117a65790505b5090505f5b8481101561182c576117ea8686838181106117dd576117dd6148ed565b9050602002013585612d9b565b8483815181106117fc576117fc6148ed565b60200260200101848481518110611815576118156148ed565b6020908102919091010191909152526001016117c0565b50935093915050565b81611841610e2d61220e565b61185d5760405162461bcd60e51b8152600401610b3f90614996565b8261186781612087565b61187084612718565b611139868686866131dc565b610134546001600160a01b031661189161220e565b6001600160a01b0316146118b75760405162461bcd60e51b8152600401610b3f90614943565b5f806118c6610dd5898b61498a565b915091506118d38161320f565b6118eb8a836118e5610e0c8c8e61498a565b8661326e565b6118f88787878786612571565b50505050505050505050565b5f81815260c960205260409020805460609190611920906148a2565b80601f016020809104026020016040519081016040528092919081815260200182805461194c906148a2565b80156119975780601f1061196e57610100808354040283529160200191611997565b820191905f5260205f20905b81548152906001019060200180831161197a57829003601f168201915b50505050509050919050565b6001600160a01b0381165f90815261013560205260409020546060906119c881612dbc565b6113c0575f8181526101386020526040902080546119e5906148a2565b80601f0160208091040260200160405190810160405280929190818152602001828054611a11906148a2565b8015611a5c5780601f10611a3357610100808354040283529160200191611a5c565b820191905f5260205f20905b815481529060010190602001808311611a3f57829003601f168201915b5050505050915050919050565b6060611a7482612029565b5f611a7d6132c1565b90505f815111611a9b5760405180602001604052805f815250610d85565b80611aa5846132d1565b604051602001611ab6929190614c6a565b6040516020818303038152906040529392505050565b80611ad8610e2d61220e565b611af45760405162461bcd60e51b8152600401610b3f90614996565b81611afe81612087565b610ec18787878787612571565b7f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87546001600160a01b0316611b3e61220e565b6001600160a01b031614611b645760405162461bcd60e51b8152600401610b3f906149df565b6020819003611b86575f611b7a82840184613e44565b9050611466848261221c565b5f611b9382840184614c98565b80519091505f5b8181101561113957611bc586848381518110611bb857611bb86148ed565b602002602001015161221c565b600101611b9a565b5f81815261013960205260408120546001600160401b0316158015906109295750505f9081526101396020526040902054426001600160401b039091161090565b80611c1a610e2d61220e565b611c365760405162461bcd60e51b8152600401610b3f90614996565b81611c4081612087565b610ec187878787876133cd565b5f611c5661220e565b6001600160a01b0381165f908152610135602052604081205491925003611cc95760405162461bcd60e51b815260206004820152602160248201527f52656769737472793a20524556455253455f5245434f52445f49535f454d50546044820152605960f81b6064820152608401610b3f565b611191816133e3565b6060816001600160401b03811115611cec57611cec61434d565b604051908082528060200260200182016040528015611d1f57816020015b6060815260200190600190039081611d0a5790505b5090505f5b82811015611d7257611d4d848483818110611d4157611d416148ed565b90506020020135611904565b828281518110611d5f57611d5f6148ed565b6020908102919091010152600101611d24565b5092915050565b610134546001600160a01b0316611d8e61220e565b6001600160a01b031614611db45760405162461bcd60e51b8152600401610b3f90614943565b61013454611dcb906001600160a01b03168461221c565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c39528383604051611dfd929190614b61565b60405180910390a2505050565b5f54610100900460ff1615808015611e2857505f54600160ff909116105b80611e415750303b158015611e4157505f5460ff166001145b611ea45760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610b3f565b5f805460ff191660011790558015611ec5575f805461ff0019166101001790555b61013480546001600160a01b0319166001600160a01b038716179055837f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec9237880546001600160a01b0319166001600160a01b03929092169190911790556040805180820182526013815272556e73746f707061626c6520446f6d61696e7360681b60208083019190915282518084019093526002835261155160f21b90830152611f6d91613427565b611f75613466565b611f7d613466565b611f868361348e565b611f8f826134bd565b8015610e6d575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b5f6001600160e01b031982166380ac58cd60e01b148061200a57506001600160e01b03198216635b5e139f60e01b145b8061092957506301ffc9a760e01b6001600160e01b0319831614610929565b5f818152606760205260409020546001600160a01b03166111915760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b3f565b3033036120e45761209661307e565b81146111915760405162461bcd60e51b815260206004820152601760248201527f52656769737472793a20544f4b454e5f494e56414c49440000000000000000006044820152606401610b3f565b611191816134ec565b5f6120f782612cb9565b9050806001600160a01b0316836001600160a01b0316036121645760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b6064820152608401610b3f565b806001600160a01b031661217661220e565b6001600160a01b0316148061219257506121928161087461220e565b6122045760405162461bcd60e51b815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c00006064820152608401610b3f565b6109f88383613518565b5f612217613585565b905090565b6001600160a01b0382166122725760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610b3f565b5f818152606760205260409020546001600160a01b0316156122d65760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610b3f565b6122e15f838361359f565b6001600160a01b0382165f908152606860205260408120805460019290612309908490614d37565b90915550505f8181526067602052604080822080546001600160a01b0319166001600160a01b03861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b5f61236f61297f565b905061237b8183613518565b5f8051602061508f83398151915254604080516020808201869052825180830390910181528183019283905263e3dec8fb60e01b9092526001600160a01b0390921691829163e3dec8fb916123d7918891309190604401614d4a565b5f604051808303815f87803b1580156123ee575f80fd5b505af1158015612400573d5f803e3d5ffd5b5050505050505050565b6060610d85836040516020016124209190614a21565b604051602081830303815290604052805190602001205f1c83613679565b6060612449856134ec565b5f80876001600160a01b0316866124628b8a8989613091565b60405161246f9190614a21565b5f604051808303815f8787f1925050503d805f81146124a9576040519150601f19603f3d011682016040523d82523d5f602084013e6124ae565b606091505b5090925090506124bf603f87614d89565b5a116124cd576124cd614d9c565b61250d82826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c4544000000000000815250613754565b9998505050505050505050565b80515f9081905b801561256b57829150612557828561253a600185614db0565b8151811061254a5761254a6148ed565b602002602001015161378d565b92508061256381614dc3565b915050612521565b50915091565b5f5b84811015611139576125cc868683818110612590576125906148ed565b90506020028101906125a29190614901565b8686858181106125b4576125b46148ed565b90506020028101906125c69190614901565b86612b1b565b600101612573565b60605f825f815181106125e9576125e96148ed565b602002602001015190505f600190505b8351811015611d725781848281518110612615576126156148ed565b602002602001015160405160200161262e929190614dd8565b60408051601f1981840301815291905291506001016125f9565b61dead6001600160a01b0384161480159061267957506001600160a01b0383165f9081526101356020526040902054155b156109f8576109f8838383612d18565b5f80612694836111f3565b90506001600160a01b03811615801590610c7c5750806001600160a01b0316846001600160a01b031614806126ed57506001600160a01b038082165f908152606a602090815260408083209388168352929052205460ff165b80610c7c5750836001600160a01b0316612706846109bf565b6001600160a01b031614949350505050565b61272181613837565b60405160200161273391815260200190565b60408051601f1981840301815282825280516020918201205f85815260cb9092529181209190915582917f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9190a250565b826001600160a01b031661279782612cb9565b6001600160a01b0316146127fb5760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b6064820152608401610b3f565b6001600160a01b03821661285d5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610b3f565b61286883838361359f565b6128725f82613518565b6001600160a01b0383165f90815260686020526040812080546001929061289a908490614db0565b90915550506001600160a01b0382165f9081526068602052604081208054600192906128c7908490614d37565b90915550505f8181526067602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b5f5b8481101561113957612977868683818110612946576129466148ed565b9050602002013585858481811061295f5761295f6148ed565b90506020028101906129719190614901565b85612bf6565b600101612929565b5f8051602061508f833981519152545f906001600160a01b03168015612a755760405163721804d360e11b81523060048201525f906001600160a01b0383169063e43009a690602401602060405180830381865afa1580156129e3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612a079190614e13565b60405163e66f960360e01b8152600481018290529091506001600160a01b0383169063e66f960390602401602060405180830381865afa158015612a4d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612a719190614e2a565b9250505b5090565b5f612a8382612cb9565b9050612a90815f8461359f565b612a9a5f83613518565b6001600160a01b0381165f908152606860205260408120805460019290612ac2908490614db0565b90915550505f8281526067602052604080822080546001600160a01b0319169055518391906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b5f8585604051602001612b2f929190614e45565b60408051601f198184030181528282528051602091820120601f8901829004820284018201909252878352909250612b8291839189908990819084018382808284375f92019190915250612c9592505050565b6111398187878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8b0181900481028201810190925289815292508991508890819084018382808284375f9201919091525088925061385d915050565b612bff84613989565b612c4b5760405162461bcd60e51b815260206004820152601c60248201527f5265636f726453746f726167653a204b45595f4e4f545f464f554e44000000006044820152606401610b3f565b61146684612c5886611904565b85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525087925061385d915050565b612c9e82613989565b61104f575f82815260c9602052604090206109f88282614e54565b5f818152606760205260408120546001600160a01b0316806109295760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b3f565b5f828152610138602052604090208054612d31906148a2565b90505f03612d53575f82815261013860205260409020612d518282614e54565b505b6001600160a01b0383165f8181526101356020526040808220859055518492917feb76a21470988c474a21f690cc28fee1ed511bd812dc3c21fd0f49c5e5d4708a91a3505050565b606080612da784611904565b9150612db38484613679565b90509250929050565b5f818152610137602052604081205460ff16801561092957506101365f612de161220e565b6001600160a01b0316815260208101919091526040015f205460ff1692915050565b5f8051602061508f83398151915254604051633805550f60e01b81526001600160a01b03909116908190633805550f90612e439086908690600401614b61565b5f604051808303815f87803b158015612e5a575f80fd5b505af1158015610ec1573d5f803e3d5ffd5b816001600160a01b0316836001600160a01b031603612ecd5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610b3f565b6001600160a01b038381165f818152606a6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015612f7d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612fa19190614e13565b90505f61304e866060015180519060200120868860200151604051602001612fee9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561307457508551613074906001600160a01b031682866139ae565b9695505050505050565b5f30330361308e5750601f193601355b90565b60608285856040516020016130a893929190614f0f565b6040516020818303038152906040529050949350505050565b606081516001600160401b038111156130dc576130dc61434d565b60405190808252806020026020018201604052801561310f57816020015b60608152602001906001900390816130fa5790505b5090505f5b82518110156113c0575f80306001600160a01b031685848151811061313b5761313b6148ed565b60200260200101516040516131509190614a21565b5f60405180830381855af49150503d805f8114613188576040519150601f19603f3d011682016040523d82523d5f602084013e61318d565b606091505b50915091506131b582826040518060600160405280602781526020016150af60279139613754565b8484815181106131c7576131c76148ed565b60209081029190910101525050600101613114565b6131e7848484612784565b6131f384848484613ae9565b6114665760405162461bcd60e51b8152600401610b3f90614f4d565b5f818152610137602052604090205460ff16156111915760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a20544f4b454e5f555047524144454400000000000000006044820152606401610b3f565b613278848461221c565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952836040516132a89190613e32565b60405180910390a2801561146657611466848484612648565b6060610133805461093e906148a2565b6060815f036132f75750506040805180820190915260018152600360fc1b602082015290565b815f5b8115613320578061330a81614f9f565b91506133199050600a83614d89565b91506132fa565b5f816001600160401b038111156133395761333961434d565b6040519080825280601f01601f191660200182016040528015613363576020820181803683370190505b5090505b8415610c7c57613378600183614db0565b9150613385600a86614fb7565b613390906030614d37565b60f81b8183815181106133a5576133a56148ed565b60200101906001600160f81b03191690815f1a9053506133c6600a86614d89565b9450613367565b6133d681612718565b610e6d8585858585612571565b6001600160a01b0381165f8181526101356020526040808220829055517ffcf5eec0cfa3e6332f5f0e63ec242d71f866a61d121d6cdf5c2eb3b668a26c4f9190a250565b5f54610100900460ff1661344d5760405162461bcd60e51b8152600401610b3f90614fca565b60656134598382614e54565b5060666109f88282614e54565b5f54610100900460ff1661348c5760405162461bcd60e51b8152600401610b3f90614fca565b565b5f54610100900460ff166134b45760405162461bcd60e51b8152600401610b3f90614fca565b61119181613bea565b5f54610100900460ff166134e35760405162461bcd60e51b8152600401610b3f90614fca565b61119181613c41565b5f8181526101006020526040902054613506906001614d37565b5f918252610100602052604090912055565b5f81815260696020526040902080546001600160a01b0319166001600160a01b038416908117909155819061354c82612cb9565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b5f30330361359a575060331936013560601c90565b503390565b6001600160a01b0382166135b6576135b68161320f565b5f81815261013960205260409020546001600160401b031615613650576001600160a01b0382161580159061360457506135ee61297f565b6001600160a01b0316826001600160a01b031614155b6136505760405162461bcd60e51b815260206004820152601960248201527f52656769737472793a20544f4b454e5f455850495241424c45000000000000006044820152606401610b3f565b6001600160a01b0383165f90815261013560205260409020548190036109f8576109f8836133e3565b606061368482612dbc565b1561369d575060408051602081019091525f8152610929565b60ca5f6136a984613837565b81526020019081526020015f205f8481526020019081526020015f2080546136d0906148a2565b80601f01602080910402602001604051908101604052809291908181526020018280546136fc906148a2565b80156137475780601f1061371e57610100808354040283529160200191613747565b820191905f5260205f20905b81548152906001019060200180831161372a57829003601f168201915b5050505050905092915050565b60608315613763575081610d85565b8251156137735782518084602001fd5b8160405162461bcd60e51b8152600401610b3f9190613e32565b5f81515f036137d65760405162461bcd60e51b815260206004820152601560248201527452656769737472793a204c4142454c5f454d50545960581b6044820152606401610b3f565b82826040516020016137e89190614a21565b60405160208183030381529060405280519060200120604051602001613818929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b5f81815260cb602052604081205415612a75575f82815260cb6020526040902054610929565b60ca5f61386983613837565b81526020019081526020015f205f8581526020019081526020015f208054613890906148a2565b90505f036138e757826040516138a69190614a21565b6040518091039020817f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f86856040516138de9190613e32565b60405180910390a35b8160ca5f6138f484613837565b81526020019081526020015f205f8681526020019081526020015f20908161391c9190614e54565b508160405161392b9190614a21565b6040518091039020836040516139419190614a21565b6040518091039020827f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d92868660405161397b929190614542565b60405180910390a450505050565b5f81815260c96020526040812080548291906139a4906148a2565b9050119050919050565b5f805f6139bb8585613c8e565b90925090505f8160048111156139d3576139d3615015565b1480156139f15750856001600160a01b0316826001600160a01b0316145b15613a0157600192505050610d85565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401613a28929190615029565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051613a669190614a21565b5f60405180830381855afa9150503d805f8114613a9e576040519150601f19603f3d011682016040523d82523d5f602084013e613aa3565b606091505b5091509150818015613ab6575080516020145b8015613add57508051630b135d3f60e11b90613adb9083016020908101908401614e13565b145b98975050505050505050565b5f6001600160a01b0384163b15613be257836001600160a01b031663150b7a02613b1161220e565b8786866040518563ffffffff1660e01b8152600401613b339493929190615041565b6020604051808303815f875af1925050508015613b6d575060408051601f3d908101601f19168201909252613b6a91810190615073565b60015b613bc8573d808015613b9a576040519150601f19603f3d011682016040523d82523d5f602084013e613b9f565b606091505b5080515f03613bc05760405162461bcd60e51b8152600401610b3f90614f4d565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610c7c565b506001610c7c565b5f54610100900460ff16613c105760405162461bcd60e51b8152600401610b3f90614fca565b805f8051602061508f8339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b5f54610100900460ff16613c675760405162461bcd60e51b8152600401610b3f90614fca565b807f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87613c20565b5f808251604103613cc2576020830151604084015160608501515f1a613cb687828585613cd0565b94509450505050613cc9565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613d0557505f90506003613dac565b8460ff16601b14158015613d1d57508460ff16601c14155b15613d2d57505f90506004613dac565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613d7e573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b038116613da6575f60019250925050613dac565b91505f90505b94509492505050565b6001600160e01b031981168114611191575f80fd5b5f60208284031215613dda575f80fd5b8135610d8581613db5565b5f5b83811015613dff578181015183820152602001613de7565b50505f910152565b5f8151808452613e1e816020860160208601613de5565b601f01601f19169290920160200192915050565b602081525f610d856020830184613e07565b5f60208284031215613e54575f80fd5b5035919050565b6001600160a01b0381168114611191575f80fd5b5f8060408385031215613e80575f80fd5b8235613e8b81613e5b565b946020939093013593505050565b5f8083601f840112613ea9575f80fd5b5081356001600160401b03811115613ebf575f80fd5b602083019150836020828501011115613cc9575f80fd5b5f805f805f60808688031215613eea575f80fd5b8535613ef581613e5b565b94506020860135613f0581613e5b565b93506040860135925060608601356001600160401b03811115613f26575f80fd5b613f3288828901613e99565b969995985093965092949392505050565b5f8083601f840112613f53575f80fd5b5081356001600160401b03811115613f69575f80fd5b6020830191508360208260051b8501011115613cc9575f80fd5b5f805f60408486031215613f95575f80fd5b83356001600160401b03811115613faa575f80fd5b613fb686828701613f43565b909790965060209590950135949350505050565b5f8282518085526020808601955060208260051b840101602086015f5b8481101561401557601f19868403018952614003838351613e07565b98840198925090830190600101613fe7565b5090979650505050505050565b602081525f610d856020830184613fca565b5f805f60408486031215614046575f80fd5b83356001600160401b0381111561405b575f80fd5b613fb686828701613e99565b5f805f60408486031215614079575f80fd5b83356001600160401b038082111561408f575f80fd5b90850190608082880312156140a2575f80fd5b909350602085013590808211156140b7575f80fd5b506140c486828701613e99565b9497909650939450505050565b8035801515811461120a575f80fd5b5f805f805f805f8060a0898b0312156140f7575f80fd5b883561410281613e5b565b975060208901356001600160401b038082111561411d575f80fd5b6141298c838d01613f43565b909950975060408b0135915080821115614141575f80fd5b61414d8c838d01613f43565b909750955060608b0135915080821115614165575f80fd5b506141728b828c01613f43565b9094509250614185905060808a016140d1565b90509295985092959890939650565b5f805f606084860312156141a6575f80fd5b83356141b181613e5b565b925060208401356141c181613e5b565b929592945050506040919091013590565b5f80602083850312156141e3575f80fd5b82356001600160401b038111156141f8575f80fd5b61420485828601613f43565b90969095509350505050565b5f805f805f60608688031215614224575f80fd5b85356001600160401b038082111561423a575f80fd5b61424689838a01613f43565b9097509550602088013591508082111561425e575f80fd5b5061426b88828901613f43565b96999598509660400135949350505050565b5f806040838503121561428e575f80fd5b82356001600160401b0381168114613e8b575f80fd5b5f805f805f606086880312156142b8575f80fd5b85356001600160401b03808211156142ce575f80fd5b6142da89838a01613e99565b909750955060208801359150808211156142f2575f80fd5b5061426b88828901613e99565b5f805f8060608587031215614312575f80fd5b8435935060208501356001600160401b0381111561432e575f80fd5b61433a87828801613e99565b9598909750949560400135949350505050565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f191681016001600160401b03811182821017156143895761438961434d565b604052919050565b5f82601f8301126143a0575f80fd5b81356001600160401b038111156143b9576143b961434d565b6143cc601f8201601f1916602001614361565b8181528460208386010111156143e0575f80fd5b816020850160208301375f918101602001919091529392505050565b5f6020828403121561440c575f80fd5b81356001600160401b03811115614421575f80fd5b610c7c84828501614391565b5f6020828403121561443d575f80fd5b8135610d8581613e5b565b5f6001600160401b038211156144605761446061434d565b5060051b60200190565b5f61447c61447784614448565b614361565b8381529050602080820190600585901b84018681111561449a575f80fd5b845b818110156144d35780356001600160401b038111156144b9575f80fd5b6144c589828901614391565b85525092820192820161449c565b505050509392505050565b5f602082840312156144ee575f80fd5b81356001600160401b03811115614503575f80fd5b8201601f81018413614513575f80fd5b610c7c8482356020840161446a565b5f8060408385031215614533575f80fd5b50508035926020909101359150565b604081525f6145546040830185613e07565b8281036020840152610d818185613e07565b5f805f8060608587031215614579575f80fd5b843561458481613e5b565b93506020850135925060408501356001600160401b038111156145a5575f80fd5b6145b187828801613e99565b95989497509550505050565b5f805f805f805f6080888a0312156145d3575f80fd5b87356001600160401b03808211156145e9575f80fd5b6145f58b838c01613e99565b909950975060208a0135965060408a0135915080821115614614575f80fd5b6146208b838c01613f43565b909650945060608a0135915080821115614638575f80fd5b506146458a828b01613f43565b989b979a50959850939692959293505050565b5f8060208385031215614669575f80fd5b82356001600160401b0381111561467e575f80fd5b61420485828601613e99565b5f806040838503121561469b575f80fd5b82356146a681613e5b565b9150612db3602084016140d1565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b8281101561470957603f198886030184526146f7858351613e07565b945092850192908501906001016146db565b5092979650505050505050565b604081525f6147286040830185613fca565b8281036020840152610d818185613fca565b5f805f806080858703121561474d575f80fd5b843561475881613e5b565b9350602085013561476881613e5b565b92506040850135915060608501356001600160401b03811115614789575f80fd5b61479587828801614391565b91505092959194509250565b5f805f604084860312156147b3575f80fd5b83356147be81613e5b565b925060208401356001600160401b038111156147d8575f80fd5b6140c486828701613e99565b5f80604083850312156147f5575f80fd5b823561480081613e5b565b9150602083013561481081613e5b565b809150509250929050565b5f805f6040848603121561482d575f80fd5b8335925060208401356001600160401b038111156147d8575f80fd5b5f805f806080858703121561485c575f80fd5b843561486781613e5b565b9350602085013561487781613e5b565b9250604085013561488781613e5b565b9150606085013561489781613e5b565b939692955090935050565b600181811c908216806148b657607f821691505b6020821081036113c057634e487b7160e01b5f52602260045260245ffd5b5f602082840312156148e4575f80fd5b610d85826140d1565b634e487b7160e01b5f52603260045260245ffd5b5f808335601e19843603018112614916575f80fd5b8301803591506001600160401b0382111561492f575f80fd5b602001915036819003821315613cc9575f80fd5b60208082526027908201527f52656769737472793a2053454e4445525f49535f4e4f545f4d494e54494e475f60408201526626a0a720a3a2a960c91b606082015260800190565b5f610d8536848461446a565b60208082526029908201527f52656769737472793a2053454e4445525f49535f4e4f545f415050524f5645446040820152682fa7a92fa7aba722a960b91b606082015260800190565b60208082526022908201527f52656769737472793a20494e53554646494349454e545f5045524d495353494f6040820152614e5360f01b606082015260800190565b5f8251614a32818460208701613de5565b9190910192915050565b601f8211156109f857805f5260205f20601f840160051c81016020851015614a615750805b601f840160051c820191505b81811015610e6d575f8155600101614a6d565b6001600160401b03831115614a9757614a9761434d565b614aab83614aa583546148a2565b83614a3c565b5f601f841160018114614adc575f8515614ac55750838201355b5f19600387901b1c1916600186901b178355610e6d565b5f83815260208120601f198716915b82811015614b0b5786850135825560209485019460019092019101614aeb565b5086821015614b27575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b602081525f610c7c602083018486614b39565b5f60808236031215614b84575f80fd5b604051608081016001600160401b038282108183111715614ba757614ba761434d565b8160405284359150614bb882613e5b565b81835260208501356020840152604085013560408401526060850135915080821115614be2575f80fd5b50614bef36828601614391565b60608301525092915050565b5f614c0861447784614448565b80848252602080830192508560051b850136811115614c25575f80fd5b855b81811015614c5e5780356001600160401b03811115614c44575f80fd5b614c5036828a01614391565b865250938201938201614c27565b50919695505050505050565b5f8351614c7b818460208801613de5565b835190830190614c8f818360208801613de5565b01949350505050565b5f6020808385031215614ca9575f80fd5b82356001600160401b03811115614cbe575f80fd5b8301601f81018513614cce575f80fd5b8035614cdc61447782614448565b81815260059190911b82018301908381019087831115614cfa575f80fd5b928401925b82841015614d1857833582529284019290840190614cff565b979650505050505050565b634e487b7160e01b5f52601160045260245ffd5b8082018082111561092957610929614d23565b6001600160a01b038481168252831660208201526060604082018190525f90610b4890830184613e07565b634e487b7160e01b5f52601260045260245ffd5b5f82614d9757614d97614d75565b500490565b634e487b7160e01b5f52600160045260245ffd5b8181038181111561092957610929614d23565b5f81614dd157614dd1614d23565b505f190190565b5f8351614de9818460208801613de5565b601760f91b9083019081528351614e07816001840160208801613de5565b01600101949350505050565b5f60208284031215614e23575f80fd5b5051919050565b5f60208284031215614e3a575f80fd5b8151610d8581613e5b565b818382375f9101908152919050565b81516001600160401b03811115614e6d57614e6d61434d565b614e8181614e7b84546148a2565b84614a3c565b602080601f831160018114614eb4575f8415614e9d5750858301515b5f19600386901b1c1916600185901b178555611139565b5f85815260208120601f198616915b82811015614ee257888601518255948401946001909101908401614ec3565b5085821015614eff57878501515f19600388901b60f8161c191681555b5050505050600190811b01905550565b5f8451614f20818460208901613de5565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b5f60018201614fb057614fb0614d23565b5060010190565b5f82614fc557614fc5614d75565b500690565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f610c7c6040830184613e07565b6001600160a01b03858116825284166020820152604081018390526080606082018190525f9061307490830184613e07565b5f60208284031215615083575f80fd5b8151610d8581613db556febe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000818000a", + "deployedBytecode": "0x608060405234801561000f575f80fd5b506004361061039e575f3560e01c80637e37479e116101ea578063ba5d40b711610114578063e985e9c5116100a9578063f5c1f76e11610079578063f5c1f76e146108c2578063f7df5c60146108d5578063f8c8765e146108e8578063ffa1ad74146108fb575f80fd5b8063e985e9c514610866578063ebf0c717146108a1578063ec129eea146108a7578063f25eb5c1146108ba575f80fd5b8063c87b56dd116100e4578063c87b56dd1461081a578063ce92b33e1461082d578063cf2c52cb14610840578063d9548e5314610853575f80fd5b8063ba5d40b7146107a0578063baef73e9146107b3578063bb5b27e1146107f4578063bebec6b414610807575f80fd5b8063a22cb4651161018a578063ac9650d81161015a578063ac9650d814610739578063b3f9e4cb14610759578063b85afd281461076c578063b88d4fde1461078d575f80fd5b8063a22cb465146106d4578063a3f4df7e146106e7578063a424740014610713578063ab3b87fe14610726575f80fd5b80639508b1c4116101c55780639508b1c41461069e5780639559c0bd146106b157806395d89b41146106b957806399e0dd7c146106c1575f80fd5b80637e37479e146106655780637eee288d1461067857806394d008ef1461068b575f80fd5b806342842e0e116102cb578063509602391161026b578063663f7b2a1161023b578063663f7b2a146105fe578063672b9f81146106115780636ccbae5f1461063257806370a0823114610652575f80fd5b806350960239146105a9578063572b6c05146105bc5780636352211e146105d8578063638e5c78146105eb575f80fd5b806347c81699116102a657806347c816991461055d5780634a72584d146105705780634f558e791461058357806350382c1a14610596575f80fd5b806342842e0e1461052457806342966c6814610537578063430c20811461054a575f80fd5b80631bf7e13e1161034157806327f189751161031157806327f18975146104d8578063310bd74b146104eb5780633f72ec6e146104fe57806340c10f1914610511575f80fd5b80631bf7e13e1461047e5780631f71be061461049157806323b872dd146104a4578063276fabb1146104b7575f80fd5b8063095ea7b31161037c578063095ea7b31461040a578063150b7a021461041f5780631bd8cc1a1461044b5780631be5e7ed1461046b575f80fd5b806301ffc9a7146103a257806306fdde03146103ca578063081812fc146103df575b5f80fd5b6103b56103b0366004613dca565b61091f565b60405190151581526020015b60405180910390f35b6103d261092f565b6040516103c19190613e32565b6103f26103ed366004613e44565b6109bf565b6040516001600160a01b0390911681526020016103c1565b61041d610418366004613e6f565b6109e4565b005b61043261042d366004613ed6565b6109fd565b6040516001600160e01b031990911681526020016103c1565b61045e610459366004613f83565b610b51565b6040516103c19190614022565b6103d2610479366004614034565b610c3a565b6103d261048c366004614067565b610c84565b61041d61049f3660046140e0565b610d8c565b61041d6104b2366004614194565b610e21565b6104ca6104c53660046141d2565b610e74565b6040519081526020016103c1565b61041d6104e6366004614210565b610e82565b61041d6104f9366004613e44565b610eca565b61041d61050c36600461427d565b610f05565b61041d61051f366004613e6f565b611006565b61041d610532366004614194565b611053565b61041d610545366004613e44565b61106d565b6103b5610558366004613e6f565b6110b1565b61041d61056b3660046142a4565b6110bc565b61041d61057e3660046142ff565b6110fb565b6103b5610591366004613e44565b611141565b61041d6105a43660046143fc565b61115f565b61041d6105b736600461442d565b611194565b6103b56105ca36600461442d565b6001600160a01b0316301490565b6103f26105e6366004613e44565b6111f3565b61041d6105f9366004613e44565b61120f565b61041d61060c3660046144de565b61125a565b61062461061f366004614522565b6112fa565b6040516103c1929190614542565b6104ca610640366004613e44565b5f908152610100602052604090205490565b6104ca61066036600461442d565b611312565b6104ca61067336600461442d565b611396565b61041d610686366004613e6f565b6113c6565b61041d610699366004614566565b61141d565b61041d6106ac3660046145bd565b61146c565b6104ca601481565b6103d26114f3565b61041d6106cf366004614658565b611502565b61041d6106e236600461468a565b611589565b6103d26040518060400160405280600d81526020016c554e533a20526567697374727960981b81525081565b6103b5610721366004614067565b61159b565b61041d610734366004613e6f565b6115e4565b61074c6107473660046141d2565b611629565b6040516103c191906146b4565b6103f2610767366004613e44565b6116f7565b61077f61077a366004613f83565b61171f565b6040516103c1929190614716565b61041d61079b36600461473a565b611835565b61041d6107ae3660046140e0565b61187c565b6107dc6107c1366004613e44565b5f90815261013960205260409020546001600160401b031690565b6040516001600160401b0390911681526020016103c1565b6103d2610802366004613e44565b611904565b6103d261081536600461442d565b6119a3565b6103d2610828366004613e44565b611a69565b61041d61083b366004614210565b611acc565b61041d61084e3660046147a1565b611b0b565b6103b5610861366004613e44565b611bcd565b6103b56108743660046147e4565b6001600160a01b039182165f908152606a6020908152604080832093909416825291909152205460ff1690565b5f6104ca565b61041d6108b5366004614210565b611c0e565b61041d611c4d565b61045e6108d03660046141d2565b611cd2565b61041d6108e336600461481b565b611d79565b61041d6108f6366004614849565b611e0a565b6103d260405180604001604052806005815260200164302e392e3160d81b81525081565b5f61092982611fda565b92915050565b60606065805461093e906148a2565b80601f016020809104026020016040519081016040528092919081815260200182805461096a906148a2565b80156109b55780601f1061098c576101008083540402835291602001916109b5565b820191905f5260205f20905b81548152906001019060200180831161099857829003601f168201915b5050505050905090565b5f6109c982612029565b505f908152606960205260409020546001600160a01b031690565b806109ee81612087565b6109f883836120ed565b505050565b5f7f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378546001600160a01b0316610a3161220e565b6001600160a01b031603610aed57610a4761220e565b6001600160a01b03166342966c68856040518263ffffffff1660e01b8152600401610a7491815260200190565b5f604051808303815f87803b158015610a8b575f80fd5b505af1158015610a9d573d5f803e3d5ffd5b505050821580159150610ab75750610ab7828401846148d4565b15610ad557610ac6308561221c565b610ad08585612366565b610adf565b610adf858561221c565b50630a85bd0160e11b610b48565b60405162461bcd60e51b815260206004820152602560248201527f52656769737472793a204552433732315f524543454956494e475f50524f4849604482015264109255115160da1b60648201526084015b60405180910390fd5b95945050505050565b6060826001600160401b03811115610b6b57610b6b61434d565b604051908082528060200260200182016040528015610b9e57816020015b6060815260200190600190039081610b895790505b5090505f5b83811015610c3257610c0d858583818110610bc057610bc06148ed565b9050602002810190610bd29190614901565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525087925061240a915050565b828281518110610c1f57610c1f6148ed565b6020908102919091010152600101610ba3565b509392505050565b6060610c7c84848080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525086925061240a915050565b949350505050565b60605f5a9050610c9585858561159b565b610cf15760405162461bcd60e51b815260206004820152602760248201527f554e535265676973747279466f727761726465723a205349474e41545552455f6044820152661253959053125160ca1b6064820152608401610b3f565b610d81610d01602087018761442d565b30604088013584610d1560608b018b614901565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f9201919091525061243e92505050565b9150505b9392505050565b610134546001600160a01b0316610da161220e565b6001600160a01b031614610dc75760405162461bcd60e51b8152600401610b3f90614943565b5f610dda610dd5888a61498a565b61251a565b509050610de789826113c6565b610df48686868685612571565b8115610e1657610e168982610e11610e0c8b8d61498a565b6125d4565b612648565b505050505050505050565b80610e33610e2d61220e565b82612689565b610e4f5760405162461bcd60e51b8152600401610b3f90614996565b81610e5981612087565b610e6283612718565b610e6d858585612784565b5050505050565b5f610c32610dd5838561498a565b80610e8e610e2d61220e565b610eaa5760405162461bcd60e51b8152600401610b3f90614996565b81610eb481612087565b610ec18787878787612927565b50505050505050565b80610ed6610e2d61220e565b610ef25760405162461bcd60e51b8152600401610b3f90614996565b81610efc81612087565b6109f883612718565b610134546001600160a01b0316610f1a61220e565b6001600160a01b031614610f405760405162461bcd60e51b8152600401610b3f90614943565b610f4981612029565b42826001600160401b031611610fa15760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a204558504952595f494e5f5041535400000000000000006044820152606401610b3f565b5f8181526101396020908152604091829020805467ffffffffffffffff19166001600160401b038616908117909155915191825282917f93feabb03ab84f47fc85bf0c298103fca21d8c8bc376eae0c1e1c56b9d4f7789910160405180910390a25050565b61100e61297f565b6001600160a01b031661101f61220e565b6001600160a01b0316146110455760405162461bcd60e51b8152600401610b3f906149df565b61104f828261221c565b5050565b6109f883838360405180602001604052805f815250611835565b80611079610e2d61220e565b6110955760405162461bcd60e51b8152600401610b3f90614996565b8161109f81612087565b6110a883612718565b6109f883612a79565b5f610d858383612689565b806110c8610e2d61220e565b6110e45760405162461bcd60e51b8152600401610b3f90614996565b816110ee81612087565b610ec18787878787612b1b565b80611107610e2d61220e565b6111235760405162461bcd60e51b8152600401610b3f90614996565b8161112d81612087565b61113986868686612bf6565b505050505050565b5f818152606760205260408120546001600160a01b03161515610929565b611191816040516020016111739190614a21565b604051602081830303815290604052805190602001205f1c82612c95565b50565b610134546001600160a01b03166111a961220e565b6001600160a01b0316146111cf5760405162461bcd60e51b8152600401610b3f90614943565b6001600160a01b03165f90815261013660205260409020805460ff19166001179055565b5f6111fd82611bcd565b61120a5761092982612cb9565b919050565b8061121b610e2d61220e565b6112375760405162461bcd60e51b8152600401610b3f90614996565b61124961124261220e565b3084612784565b61104f61125461220e565b83612366565b5f6112648261251a565b50905061126f61220e565b6001600160a01b0316611281826111f3565b6001600160a01b0316146112d75760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b3f565b6112e081612087565b61104f6112eb61220e565b826112f5856125d4565b612d18565b6060806113078484612d9b565b909590945092505050565b5f6001600160a01b03821661137b5760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b6064820152608401610b3f565b506001600160a01b03165f9081526068602052604090205490565b6001600160a01b0381165f90815261013560205260408120546113b881612dbc565b6113c0578091505b50919050565b610134546001600160a01b03166113db61220e565b6001600160a01b0316146114015760405162461bcd60e51b8152600401610b3f90614943565b61140a81612718565b61104f61141682612cb9565b8383612784565b61142561297f565b6001600160a01b031661143661220e565b6001600160a01b03161461145c5760405162461bcd60e51b8152600401610b3f906149df565b611466848461221c565b50505050565b6114768787612e03565b61147e61220e565b6001600160a01b0316611490866111f3565b6001600160a01b0316146114e65760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b3f565b610ec18484848489612571565b60606066805461093e906148a2565b610134546001600160a01b031661151761220e565b6001600160a01b03161461153d5760405162461bcd60e51b8152600401610b3f90614943565b61013361154b828483614a80565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b828260405161157d929190614b61565b60405180910390a15050565b61104f61159461220e565b8383612e6c565b5f610c7c6115a885614b74565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250612f3992505050565b806115f0610e2d61220e565b61160c5760405162461bcd60e51b8152600401610b3f90614996565b8161161681612087565b61146661162284612cb9565b8585612784565b60605f6116368385614bfb565b90503033036116ee575f5b838110156116ec576116c761165461220e565b61165c61307e565b87878581811061166e5761166e6148ed565b90506020028101906116809190614901565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92018290525060408051602081019091529081529250613091915050565b8282815181106116d9576116d96148ed565b6020908102919091010152600101611641565b505b610c7c816130c1565b5f818152606760205260408120546001600160a01b0316611718575f610929565b3092915050565b606080836001600160401b0381111561173a5761173a61434d565b60405190808252806020026020018201604052801561176d57816020015b60608152602001906001900390816117585790505b509150836001600160401b038111156117885761178861434d565b6040519080825280602002602001820160405280156117bb57816020015b60608152602001906001900390816117a65790505b5090505f5b8481101561182c576117ea8686838181106117dd576117dd6148ed565b9050602002013585612d9b565b8483815181106117fc576117fc6148ed565b60200260200101848481518110611815576118156148ed565b6020908102919091010191909152526001016117c0565b50935093915050565b81611841610e2d61220e565b61185d5760405162461bcd60e51b8152600401610b3f90614996565b8261186781612087565b61187084612718565b611139868686866131dc565b610134546001600160a01b031661189161220e565b6001600160a01b0316146118b75760405162461bcd60e51b8152600401610b3f90614943565b5f806118c6610dd5898b61498a565b915091506118d38161320f565b6118eb8a836118e5610e0c8c8e61498a565b8661326e565b6118f88787878786612571565b50505050505050505050565b5f81815260c960205260409020805460609190611920906148a2565b80601f016020809104026020016040519081016040528092919081815260200182805461194c906148a2565b80156119975780601f1061196e57610100808354040283529160200191611997565b820191905f5260205f20905b81548152906001019060200180831161197a57829003601f168201915b50505050509050919050565b6001600160a01b0381165f90815261013560205260409020546060906119c881612dbc565b6113c0575f8181526101386020526040902080546119e5906148a2565b80601f0160208091040260200160405190810160405280929190818152602001828054611a11906148a2565b8015611a5c5780601f10611a3357610100808354040283529160200191611a5c565b820191905f5260205f20905b815481529060010190602001808311611a3f57829003601f168201915b5050505050915050919050565b6060611a7482612029565b5f611a7d6132c1565b90505f815111611a9b5760405180602001604052805f815250610d85565b80611aa5846132d1565b604051602001611ab6929190614c6a565b6040516020818303038152906040529392505050565b80611ad8610e2d61220e565b611af45760405162461bcd60e51b8152600401610b3f90614996565b81611afe81612087565b610ec18787878787612571565b7f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87546001600160a01b0316611b3e61220e565b6001600160a01b031614611b645760405162461bcd60e51b8152600401610b3f906149df565b6020819003611b86575f611b7a82840184613e44565b9050611466848261221c565b5f611b9382840184614c98565b80519091505f5b8181101561113957611bc586848381518110611bb857611bb86148ed565b602002602001015161221c565b600101611b9a565b5f81815261013960205260408120546001600160401b0316158015906109295750505f9081526101396020526040902054426001600160401b039091161090565b80611c1a610e2d61220e565b611c365760405162461bcd60e51b8152600401610b3f90614996565b81611c4081612087565b610ec187878787876133cd565b5f611c5661220e565b6001600160a01b0381165f908152610135602052604081205491925003611cc95760405162461bcd60e51b815260206004820152602160248201527f52656769737472793a20524556455253455f5245434f52445f49535f454d50546044820152605960f81b6064820152608401610b3f565b611191816133e3565b6060816001600160401b03811115611cec57611cec61434d565b604051908082528060200260200182016040528015611d1f57816020015b6060815260200190600190039081611d0a5790505b5090505f5b82811015611d7257611d4d848483818110611d4157611d416148ed565b90506020020135611904565b828281518110611d5f57611d5f6148ed565b6020908102919091010152600101611d24565b5092915050565b610134546001600160a01b0316611d8e61220e565b6001600160a01b031614611db45760405162461bcd60e51b8152600401610b3f90614943565b61013454611dcb906001600160a01b03168461221c565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c39528383604051611dfd929190614b61565b60405180910390a2505050565b5f54610100900460ff1615808015611e2857505f54600160ff909116105b80611e415750303b158015611e4157505f5460ff166001145b611ea45760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610b3f565b5f805460ff191660011790558015611ec5575f805461ff0019166101001790555b61013480546001600160a01b0319166001600160a01b038716179055837f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec9237880546001600160a01b0319166001600160a01b03929092169190911790556040805180820182526013815272556e73746f707061626c6520446f6d61696e7360681b60208083019190915282518084019093526002835261155160f21b90830152611f6d91613427565b611f75613466565b611f7d613466565b611f868361348e565b611f8f826134bd565b8015610e6d575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b5f6001600160e01b031982166380ac58cd60e01b148061200a57506001600160e01b03198216635b5e139f60e01b145b8061092957506301ffc9a760e01b6001600160e01b0319831614610929565b5f818152606760205260409020546001600160a01b03166111915760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b3f565b3033036120e45761209661307e565b81146111915760405162461bcd60e51b815260206004820152601760248201527f52656769737472793a20544f4b454e5f494e56414c49440000000000000000006044820152606401610b3f565b611191816134ec565b5f6120f782612cb9565b9050806001600160a01b0316836001600160a01b0316036121645760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b6064820152608401610b3f565b806001600160a01b031661217661220e565b6001600160a01b0316148061219257506121928161087461220e565b6122045760405162461bcd60e51b815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c00006064820152608401610b3f565b6109f88383613518565b5f612217613585565b905090565b6001600160a01b0382166122725760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610b3f565b5f818152606760205260409020546001600160a01b0316156122d65760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610b3f565b6122e15f838361359f565b6001600160a01b0382165f908152606860205260408120805460019290612309908490614d37565b90915550505f8181526067602052604080822080546001600160a01b0319166001600160a01b03861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b5f61236f61297f565b905061237b8183613518565b5f8051602061508f83398151915254604080516020808201869052825180830390910181528183019283905263e3dec8fb60e01b9092526001600160a01b0390921691829163e3dec8fb916123d7918891309190604401614d4a565b5f604051808303815f87803b1580156123ee575f80fd5b505af1158015612400573d5f803e3d5ffd5b5050505050505050565b6060610d85836040516020016124209190614a21565b604051602081830303815290604052805190602001205f1c83613679565b6060612449856134ec565b5f80876001600160a01b0316866124628b8a8989613091565b60405161246f9190614a21565b5f604051808303815f8787f1925050503d805f81146124a9576040519150601f19603f3d011682016040523d82523d5f602084013e6124ae565b606091505b5090925090506124bf603f87614d89565b5a116124cd576124cd614d9c565b61250d82826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c4544000000000000815250613754565b9998505050505050505050565b80515f9081905b801561256b57829150612557828561253a600185614db0565b8151811061254a5761254a6148ed565b602002602001015161378d565b92508061256381614dc3565b915050612521565b50915091565b5f5b84811015611139576125cc868683818110612590576125906148ed565b90506020028101906125a29190614901565b8686858181106125b4576125b46148ed565b90506020028101906125c69190614901565b86612b1b565b600101612573565b60605f825f815181106125e9576125e96148ed565b602002602001015190505f600190505b8351811015611d725781848281518110612615576126156148ed565b602002602001015160405160200161262e929190614dd8565b60408051601f1981840301815291905291506001016125f9565b61dead6001600160a01b0384161480159061267957506001600160a01b0383165f9081526101356020526040902054155b156109f8576109f8838383612d18565b5f80612694836111f3565b90506001600160a01b03811615801590610c7c5750806001600160a01b0316846001600160a01b031614806126ed57506001600160a01b038082165f908152606a602090815260408083209388168352929052205460ff165b80610c7c5750836001600160a01b0316612706846109bf565b6001600160a01b031614949350505050565b61272181613837565b60405160200161273391815260200190565b60408051601f1981840301815282825280516020918201205f85815260cb9092529181209190915582917f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9190a250565b826001600160a01b031661279782612cb9565b6001600160a01b0316146127fb5760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b6064820152608401610b3f565b6001600160a01b03821661285d5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610b3f565b61286883838361359f565b6128725f82613518565b6001600160a01b0383165f90815260686020526040812080546001929061289a908490614db0565b90915550506001600160a01b0382165f9081526068602052604081208054600192906128c7908490614d37565b90915550505f8181526067602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b5f5b8481101561113957612977868683818110612946576129466148ed565b9050602002013585858481811061295f5761295f6148ed565b90506020028101906129719190614901565b85612bf6565b600101612929565b5f8051602061508f833981519152545f906001600160a01b03168015612a755760405163721804d360e11b81523060048201525f906001600160a01b0383169063e43009a690602401602060405180830381865afa1580156129e3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612a079190614e13565b60405163e66f960360e01b8152600481018290529091506001600160a01b0383169063e66f960390602401602060405180830381865afa158015612a4d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612a719190614e2a565b9250505b5090565b5f612a8382612cb9565b9050612a90815f8461359f565b612a9a5f83613518565b6001600160a01b0381165f908152606860205260408120805460019290612ac2908490614db0565b90915550505f8281526067602052604080822080546001600160a01b0319169055518391906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b5f8585604051602001612b2f929190614e45565b60408051601f198184030181528282528051602091820120601f8901829004820284018201909252878352909250612b8291839189908990819084018382808284375f92019190915250612c9592505050565b6111398187878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8b0181900481028201810190925289815292508991508890819084018382808284375f9201919091525088925061385d915050565b612bff84613989565b612c4b5760405162461bcd60e51b815260206004820152601c60248201527f5265636f726453746f726167653a204b45595f4e4f545f464f554e44000000006044820152606401610b3f565b61146684612c5886611904565b85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525087925061385d915050565b612c9e82613989565b61104f575f82815260c9602052604090206109f88282614e54565b5f818152606760205260408120546001600160a01b0316806109295760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b3f565b5f828152610138602052604090208054612d31906148a2565b90505f03612d53575f82815261013860205260409020612d518282614e54565b505b6001600160a01b0383165f8181526101356020526040808220859055518492917feb76a21470988c474a21f690cc28fee1ed511bd812dc3c21fd0f49c5e5d4708a91a3505050565b606080612da784611904565b9150612db38484613679565b90509250929050565b5f818152610137602052604081205460ff16801561092957506101365f612de161220e565b6001600160a01b0316815260208101919091526040015f205460ff1692915050565b5f8051602061508f83398151915254604051633805550f60e01b81526001600160a01b03909116908190633805550f90612e439086908690600401614b61565b5f604051808303815f87803b158015612e5a575f80fd5b505af1158015610ec1573d5f803e3d5ffd5b816001600160a01b0316836001600160a01b031603612ecd5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610b3f565b6001600160a01b038381165f818152606a6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015612f7d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612fa19190614e13565b90505f61304e866060015180519060200120868860200151604051602001612fee9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561307457508551613074906001600160a01b031682866139ae565b9695505050505050565b5f30330361308e5750601f193601355b90565b60608285856040516020016130a893929190614f0f565b6040516020818303038152906040529050949350505050565b606081516001600160401b038111156130dc576130dc61434d565b60405190808252806020026020018201604052801561310f57816020015b60608152602001906001900390816130fa5790505b5090505f5b82518110156113c0575f80306001600160a01b031685848151811061313b5761313b6148ed565b60200260200101516040516131509190614a21565b5f60405180830381855af49150503d805f8114613188576040519150601f19603f3d011682016040523d82523d5f602084013e61318d565b606091505b50915091506131b582826040518060600160405280602781526020016150af60279139613754565b8484815181106131c7576131c76148ed565b60209081029190910101525050600101613114565b6131e7848484612784565b6131f384848484613ae9565b6114665760405162461bcd60e51b8152600401610b3f90614f4d565b5f818152610137602052604090205460ff16156111915760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a20544f4b454e5f555047524144454400000000000000006044820152606401610b3f565b613278848461221c565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952836040516132a89190613e32565b60405180910390a2801561146657611466848484612648565b6060610133805461093e906148a2565b6060815f036132f75750506040805180820190915260018152600360fc1b602082015290565b815f5b8115613320578061330a81614f9f565b91506133199050600a83614d89565b91506132fa565b5f816001600160401b038111156133395761333961434d565b6040519080825280601f01601f191660200182016040528015613363576020820181803683370190505b5090505b8415610c7c57613378600183614db0565b9150613385600a86614fb7565b613390906030614d37565b60f81b8183815181106133a5576133a56148ed565b60200101906001600160f81b03191690815f1a9053506133c6600a86614d89565b9450613367565b6133d681612718565b610e6d8585858585612571565b6001600160a01b0381165f8181526101356020526040808220829055517ffcf5eec0cfa3e6332f5f0e63ec242d71f866a61d121d6cdf5c2eb3b668a26c4f9190a250565b5f54610100900460ff1661344d5760405162461bcd60e51b8152600401610b3f90614fca565b60656134598382614e54565b5060666109f88282614e54565b5f54610100900460ff1661348c5760405162461bcd60e51b8152600401610b3f90614fca565b565b5f54610100900460ff166134b45760405162461bcd60e51b8152600401610b3f90614fca565b61119181613bea565b5f54610100900460ff166134e35760405162461bcd60e51b8152600401610b3f90614fca565b61119181613c41565b5f8181526101006020526040902054613506906001614d37565b5f918252610100602052604090912055565b5f81815260696020526040902080546001600160a01b0319166001600160a01b038416908117909155819061354c82612cb9565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b5f30330361359a575060331936013560601c90565b503390565b6001600160a01b0382166135b6576135b68161320f565b5f81815261013960205260409020546001600160401b031615613650576001600160a01b0382161580159061360457506135ee61297f565b6001600160a01b0316826001600160a01b031614155b6136505760405162461bcd60e51b815260206004820152601960248201527f52656769737472793a20544f4b454e5f455850495241424c45000000000000006044820152606401610b3f565b6001600160a01b0383165f90815261013560205260409020548190036109f8576109f8836133e3565b606061368482612dbc565b1561369d575060408051602081019091525f8152610929565b60ca5f6136a984613837565b81526020019081526020015f205f8481526020019081526020015f2080546136d0906148a2565b80601f01602080910402602001604051908101604052809291908181526020018280546136fc906148a2565b80156137475780601f1061371e57610100808354040283529160200191613747565b820191905f5260205f20905b81548152906001019060200180831161372a57829003601f168201915b5050505050905092915050565b60608315613763575081610d85565b8251156137735782518084602001fd5b8160405162461bcd60e51b8152600401610b3f9190613e32565b5f81515f036137d65760405162461bcd60e51b815260206004820152601560248201527452656769737472793a204c4142454c5f454d50545960581b6044820152606401610b3f565b82826040516020016137e89190614a21565b60405160208183030381529060405280519060200120604051602001613818929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b5f81815260cb602052604081205415612a75575f82815260cb6020526040902054610929565b60ca5f61386983613837565b81526020019081526020015f205f8581526020019081526020015f208054613890906148a2565b90505f036138e757826040516138a69190614a21565b6040518091039020817f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f86856040516138de9190613e32565b60405180910390a35b8160ca5f6138f484613837565b81526020019081526020015f205f8681526020019081526020015f20908161391c9190614e54565b508160405161392b9190614a21565b6040518091039020836040516139419190614a21565b6040518091039020827f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d92868660405161397b929190614542565b60405180910390a450505050565b5f81815260c96020526040812080548291906139a4906148a2565b9050119050919050565b5f805f6139bb8585613c8e565b90925090505f8160048111156139d3576139d3615015565b1480156139f15750856001600160a01b0316826001600160a01b0316145b15613a0157600192505050610d85565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401613a28929190615029565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051613a669190614a21565b5f60405180830381855afa9150503d805f8114613a9e576040519150601f19603f3d011682016040523d82523d5f602084013e613aa3565b606091505b5091509150818015613ab6575080516020145b8015613add57508051630b135d3f60e11b90613adb9083016020908101908401614e13565b145b98975050505050505050565b5f6001600160a01b0384163b15613be257836001600160a01b031663150b7a02613b1161220e565b8786866040518563ffffffff1660e01b8152600401613b339493929190615041565b6020604051808303815f875af1925050508015613b6d575060408051601f3d908101601f19168201909252613b6a91810190615073565b60015b613bc8573d808015613b9a576040519150601f19603f3d011682016040523d82523d5f602084013e613b9f565b606091505b5080515f03613bc05760405162461bcd60e51b8152600401610b3f90614f4d565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610c7c565b506001610c7c565b5f54610100900460ff16613c105760405162461bcd60e51b8152600401610b3f90614fca565b805f8051602061508f8339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b5f54610100900460ff16613c675760405162461bcd60e51b8152600401610b3f90614fca565b807f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87613c20565b5f808251604103613cc2576020830151604084015160608501515f1a613cb687828585613cd0565b94509450505050613cc9565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613d0557505f90506003613dac565b8460ff16601b14158015613d1d57508460ff16601c14155b15613d2d57505f90506004613dac565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613d7e573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b038116613da6575f60019250925050613dac565b91505f90505b94509492505050565b6001600160e01b031981168114611191575f80fd5b5f60208284031215613dda575f80fd5b8135610d8581613db5565b5f5b83811015613dff578181015183820152602001613de7565b50505f910152565b5f8151808452613e1e816020860160208601613de5565b601f01601f19169290920160200192915050565b602081525f610d856020830184613e07565b5f60208284031215613e54575f80fd5b5035919050565b6001600160a01b0381168114611191575f80fd5b5f8060408385031215613e80575f80fd5b8235613e8b81613e5b565b946020939093013593505050565b5f8083601f840112613ea9575f80fd5b5081356001600160401b03811115613ebf575f80fd5b602083019150836020828501011115613cc9575f80fd5b5f805f805f60808688031215613eea575f80fd5b8535613ef581613e5b565b94506020860135613f0581613e5b565b93506040860135925060608601356001600160401b03811115613f26575f80fd5b613f3288828901613e99565b969995985093965092949392505050565b5f8083601f840112613f53575f80fd5b5081356001600160401b03811115613f69575f80fd5b6020830191508360208260051b8501011115613cc9575f80fd5b5f805f60408486031215613f95575f80fd5b83356001600160401b03811115613faa575f80fd5b613fb686828701613f43565b909790965060209590950135949350505050565b5f8282518085526020808601955060208260051b840101602086015f5b8481101561401557601f19868403018952614003838351613e07565b98840198925090830190600101613fe7565b5090979650505050505050565b602081525f610d856020830184613fca565b5f805f60408486031215614046575f80fd5b83356001600160401b0381111561405b575f80fd5b613fb686828701613e99565b5f805f60408486031215614079575f80fd5b83356001600160401b038082111561408f575f80fd5b90850190608082880312156140a2575f80fd5b909350602085013590808211156140b7575f80fd5b506140c486828701613e99565b9497909650939450505050565b8035801515811461120a575f80fd5b5f805f805f805f8060a0898b0312156140f7575f80fd5b883561410281613e5b565b975060208901356001600160401b038082111561411d575f80fd5b6141298c838d01613f43565b909950975060408b0135915080821115614141575f80fd5b61414d8c838d01613f43565b909750955060608b0135915080821115614165575f80fd5b506141728b828c01613f43565b9094509250614185905060808a016140d1565b90509295985092959890939650565b5f805f606084860312156141a6575f80fd5b83356141b181613e5b565b925060208401356141c181613e5b565b929592945050506040919091013590565b5f80602083850312156141e3575f80fd5b82356001600160401b038111156141f8575f80fd5b61420485828601613f43565b90969095509350505050565b5f805f805f60608688031215614224575f80fd5b85356001600160401b038082111561423a575f80fd5b61424689838a01613f43565b9097509550602088013591508082111561425e575f80fd5b5061426b88828901613f43565b96999598509660400135949350505050565b5f806040838503121561428e575f80fd5b82356001600160401b0381168114613e8b575f80fd5b5f805f805f606086880312156142b8575f80fd5b85356001600160401b03808211156142ce575f80fd5b6142da89838a01613e99565b909750955060208801359150808211156142f2575f80fd5b5061426b88828901613e99565b5f805f8060608587031215614312575f80fd5b8435935060208501356001600160401b0381111561432e575f80fd5b61433a87828801613e99565b9598909750949560400135949350505050565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f191681016001600160401b03811182821017156143895761438961434d565b604052919050565b5f82601f8301126143a0575f80fd5b81356001600160401b038111156143b9576143b961434d565b6143cc601f8201601f1916602001614361565b8181528460208386010111156143e0575f80fd5b816020850160208301375f918101602001919091529392505050565b5f6020828403121561440c575f80fd5b81356001600160401b03811115614421575f80fd5b610c7c84828501614391565b5f6020828403121561443d575f80fd5b8135610d8581613e5b565b5f6001600160401b038211156144605761446061434d565b5060051b60200190565b5f61447c61447784614448565b614361565b8381529050602080820190600585901b84018681111561449a575f80fd5b845b818110156144d35780356001600160401b038111156144b9575f80fd5b6144c589828901614391565b85525092820192820161449c565b505050509392505050565b5f602082840312156144ee575f80fd5b81356001600160401b03811115614503575f80fd5b8201601f81018413614513575f80fd5b610c7c8482356020840161446a565b5f8060408385031215614533575f80fd5b50508035926020909101359150565b604081525f6145546040830185613e07565b8281036020840152610d818185613e07565b5f805f8060608587031215614579575f80fd5b843561458481613e5b565b93506020850135925060408501356001600160401b038111156145a5575f80fd5b6145b187828801613e99565b95989497509550505050565b5f805f805f805f6080888a0312156145d3575f80fd5b87356001600160401b03808211156145e9575f80fd5b6145f58b838c01613e99565b909950975060208a0135965060408a0135915080821115614614575f80fd5b6146208b838c01613f43565b909650945060608a0135915080821115614638575f80fd5b506146458a828b01613f43565b989b979a50959850939692959293505050565b5f8060208385031215614669575f80fd5b82356001600160401b0381111561467e575f80fd5b61420485828601613e99565b5f806040838503121561469b575f80fd5b82356146a681613e5b565b9150612db3602084016140d1565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b8281101561470957603f198886030184526146f7858351613e07565b945092850192908501906001016146db565b5092979650505050505050565b604081525f6147286040830185613fca565b8281036020840152610d818185613fca565b5f805f806080858703121561474d575f80fd5b843561475881613e5b565b9350602085013561476881613e5b565b92506040850135915060608501356001600160401b03811115614789575f80fd5b61479587828801614391565b91505092959194509250565b5f805f604084860312156147b3575f80fd5b83356147be81613e5b565b925060208401356001600160401b038111156147d8575f80fd5b6140c486828701613e99565b5f80604083850312156147f5575f80fd5b823561480081613e5b565b9150602083013561481081613e5b565b809150509250929050565b5f805f6040848603121561482d575f80fd5b8335925060208401356001600160401b038111156147d8575f80fd5b5f805f806080858703121561485c575f80fd5b843561486781613e5b565b9350602085013561487781613e5b565b9250604085013561488781613e5b565b9150606085013561489781613e5b565b939692955090935050565b600181811c908216806148b657607f821691505b6020821081036113c057634e487b7160e01b5f52602260045260245ffd5b5f602082840312156148e4575f80fd5b610d85826140d1565b634e487b7160e01b5f52603260045260245ffd5b5f808335601e19843603018112614916575f80fd5b8301803591506001600160401b0382111561492f575f80fd5b602001915036819003821315613cc9575f80fd5b60208082526027908201527f52656769737472793a2053454e4445525f49535f4e4f545f4d494e54494e475f60408201526626a0a720a3a2a960c91b606082015260800190565b5f610d8536848461446a565b60208082526029908201527f52656769737472793a2053454e4445525f49535f4e4f545f415050524f5645446040820152682fa7a92fa7aba722a960b91b606082015260800190565b60208082526022908201527f52656769737472793a20494e53554646494349454e545f5045524d495353494f6040820152614e5360f01b606082015260800190565b5f8251614a32818460208701613de5565b9190910192915050565b601f8211156109f857805f5260205f20601f840160051c81016020851015614a615750805b601f840160051c820191505b81811015610e6d575f8155600101614a6d565b6001600160401b03831115614a9757614a9761434d565b614aab83614aa583546148a2565b83614a3c565b5f601f841160018114614adc575f8515614ac55750838201355b5f19600387901b1c1916600186901b178355610e6d565b5f83815260208120601f198716915b82811015614b0b5786850135825560209485019460019092019101614aeb565b5086821015614b27575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b602081525f610c7c602083018486614b39565b5f60808236031215614b84575f80fd5b604051608081016001600160401b038282108183111715614ba757614ba761434d565b8160405284359150614bb882613e5b565b81835260208501356020840152604085013560408401526060850135915080821115614be2575f80fd5b50614bef36828601614391565b60608301525092915050565b5f614c0861447784614448565b80848252602080830192508560051b850136811115614c25575f80fd5b855b81811015614c5e5780356001600160401b03811115614c44575f80fd5b614c5036828a01614391565b865250938201938201614c27565b50919695505050505050565b5f8351614c7b818460208801613de5565b835190830190614c8f818360208801613de5565b01949350505050565b5f6020808385031215614ca9575f80fd5b82356001600160401b03811115614cbe575f80fd5b8301601f81018513614cce575f80fd5b8035614cdc61447782614448565b81815260059190911b82018301908381019087831115614cfa575f80fd5b928401925b82841015614d1857833582529284019290840190614cff565b979650505050505050565b634e487b7160e01b5f52601160045260245ffd5b8082018082111561092957610929614d23565b6001600160a01b038481168252831660208201526060604082018190525f90610b4890830184613e07565b634e487b7160e01b5f52601260045260245ffd5b5f82614d9757614d97614d75565b500490565b634e487b7160e01b5f52600160045260245ffd5b8181038181111561092957610929614d23565b5f81614dd157614dd1614d23565b505f190190565b5f8351614de9818460208801613de5565b601760f91b9083019081528351614e07816001840160208801613de5565b01600101949350505050565b5f60208284031215614e23575f80fd5b5051919050565b5f60208284031215614e3a575f80fd5b8151610d8581613e5b565b818382375f9101908152919050565b81516001600160401b03811115614e6d57614e6d61434d565b614e8181614e7b84546148a2565b84614a3c565b602080601f831160018114614eb4575f8415614e9d5750858301515b5f19600386901b1c1916600185901b178555611139565b5f85815260208120601f198616915b82811015614ee257888601518255948401946001909101908401614ec3565b5085821015614eff57878501515f19600388901b60f8161c191681555b5050505050600190811b01905550565b5f8451614f20818460208901613de5565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b5f60018201614fb057614fb0614d23565b5060010190565b5f82614fc557614fc5614d75565b500690565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f610c7c6040830184613e07565b6001600160a01b03858116825284166020820152604081018390526080606082018190525f9061307490830184613e07565b5f60208284031215615083575f80fd5b8151610d8581613db556febe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000818000a", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/artifacts/UNSRegistryV07.json b/artifacts/UNSRegistryV07.json index 35b6e2a2..3da456e2 100644 --- a/artifacts/UNSRegistryV07.json +++ b/artifacts/UNSRegistryV07.json @@ -1427,8 +1427,8 @@ "type": "function" } ], - "bytecode": "0x608060405234801561001057600080fd5b50614c76806100206000396000f3fe608060405234801561001057600080fd5b50600436106103785760003560e01c806370a08231116101d3578063ba5d40b711610104578063ebf0c717116100a2578063f5c1f76e1161007c578063f5c1f76e14610806578063f7df5c6014610819578063f8c8765e1461082c578063ffa1ad741461083f57600080fd5b8063ebf0c717146107e4578063ec129eea146107eb578063f25eb5c1146107fe57600080fd5b8063c87b56dd116100de578063c87b56dd1461076f578063ce92b33e14610782578063cf2c52cb14610795578063e985e9c5146107a857600080fd5b8063ba5d40b714610736578063bb5b27e114610749578063bebec6b41461075c57600080fd5b8063a22cb46511610171578063ab3b87fe1161014b578063ab3b87fe146106dc578063b3f9e4cb146106ef578063b85afd2814610702578063b88d4fde1461072357600080fd5b8063a22cb4651461068a578063a3f4df7e1461069d578063a4247400146106c957600080fd5b80639508b1c4116101ad5780639508b1c4146106545780639559c0bd1461066757806395d89b411461066f57806399e0dd7c1461067757600080fd5b806370a082311461061b5780637e37479e1461062e57806394d008ef1461064157600080fd5b806342842e0e116102ad578063509602391161024b578063638e5c7811610225578063638e5c78146105b3578063663f7b2a146105c6578063672b9f81146105d95780636ccbae5f146105fa57600080fd5b80635096023914610571578063572b6c05146105845780636352211e146105a057600080fd5b806347c816991161028757806347c81699146105255780634a72584d146105385780634f558e791461054b57806350382c1a1461055e57600080fd5b806342842e0e146104ec57806342966c68146104ff578063430c20811461051257600080fd5b80631bf7e13e1161031a578063276fabb1116102f4578063276fabb11461049257806327f18975146104b3578063310bd74b146104c657806340c10f19146104d957600080fd5b80631bf7e13e146104595780631f71be061461046c57806323b872dd1461047f57600080fd5b8063095ea7b311610356578063095ea7b3146103e5578063150b7a02146103fa5780631bd8cc1a146104265780631be5e7ed1461044657600080fd5b806301ffc9a71461037d57806306fdde03146103a5578063081812fc146103ba575b600080fd5b61039061038b3660046139bf565b610863565b60405190151581526020015b60405180910390f35b6103ad610874565b60405161039c9190613a2c565b6103cd6103c8366004613a3f565b610906565b6040516001600160a01b03909116815260200161039c565b6103f86103f3366004613a6d565b61092d565b005b61040d610408366004613ada565b610946565b6040516001600160e01b0319909116815260200161039c565b610439610434366004613b90565b610aa0565b60405161039c9190613c30565b6103ad610454366004613c43565b610b96565b6103ad610467366004613c7a565b610be1565b6103f861047a366004613cff565b610cec565b6103f861048d366004613dbb565b610d93565b6104a56104a0366004613dfc565b610de6565b60405190815260200161039c565b6103f86104c1366004613e3d565b610df5565b6103f86104d4366004613a3f565b610e3d565b6103f86104e7366004613a6d565b610e78565b6103f86104fa366004613dbb565b610ec5565b6103f861050d366004613a3f565b610ee0565b610390610520366004613a6d565b610f24565b6103f8610533366004613eb0565b610f30565b6103f8610546366004613f11565b610f6f565b610390610559366004613a3f565b610fb5565b6103f861056c366004614018565b610fd4565b6103f861057f36600461404c565b61100a565b61039061059236600461404c565b6001600160a01b0316301490565b6103cd6105ae366004613a3f565b61106a565b6103f86105c1366004613a3f565b6110ca565b6103f86105d4366004614104565b611115565b6105ec6105e736600461414c565b61114e565b60405161039c92919061416e565b6104a5610608366004613a3f565b6000908152610100602052604090205490565b6104a561062936600461404c565b611166565b6104a561063c36600461404c565b6111ec565b6103f861064f366004614193565b61121d565b6103f86106623660046141ee565b61126c565b6104a5601481565b6103ad6112f3565b6103f8610685366004614291565b611302565b6103f86106983660046142c6565b611389565b6103ad6040518060400160405280600d81526020016c554e533a20526567697374727960981b81525081565b6103906106d7366004613c7a565b61139b565b6103f86106ea366004613a6d565b6113e6565b6103cd6106fd366004613a3f565b61142b565b610715610710366004613b90565b611455565b60405161039c9291906142f2565b6103f8610731366004614317565b611577565b6103f8610744366004613cff565b6115be565b6103ad610757366004613a3f565b61162f565b6103ad61076a36600461404c565b6116d1565b6103ad61077d366004613a3f565b61179b565b6103f8610790366004613e3d565b611801565b6103f86107a3366004614382565b611840565b6103906107b63660046143c9565b6001600160a01b039182166000908152606a6020908152604080832093909416825291909152205460ff1690565b60006104a5565b6103f86107f9366004613e3d565b61190f565b6103f861194e565b610439610814366004613dfc565b6119d5565b6103f8610827366004614402565b611a88565b6103f861083a366004614434565b611b19565b6103ad60405180604001604052806005815260200164302e372e3360d81b81525081565b600061086e82611cef565b92915050565b60606065805461088390614490565b80601f01602080910402602001604051908101604052809291908181526020018280546108af90614490565b80156108fc5780601f106108d1576101008083540402835291602001916108fc565b820191906000526020600020905b8154815290600101906020018083116108df57829003601f168201915b5050505050905090565b600061091182611d3f565b506000908152606960205260409020546001600160a01b031690565b8061093781611d9e565b6109418383611e04565b505050565b60007f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378546001600160a01b031661097b611f26565b6001600160a01b031603610a3c57610991611f26565b6001600160a01b03166342966c68856040518263ffffffff1660e01b81526004016109be91815260200190565b600060405180830381600087803b1580156109d857600080fd5b505af11580156109ec573d6000803e3d6000fd5b505050821580159150610a065750610a06828401846144c4565b15610a2457610a153085611f35565b610a1f8585612083565b610a2e565b610a2e8585611f35565b50630a85bd0160e11b610a97565b60405162461bcd60e51b815260206004820152602560248201527f52656769737472793a204552433732315f524543454956494e475f50524f4849604482015264109255115160da1b60648201526084015b60405180910390fd5b95945050505050565b6060826001600160401b03811115610aba57610aba613f63565b604051908082528060200260200182016040528015610aed57816020015b6060815260200190600190039081610ad85790505b50905060005b83811015610b8e57610b5e858583818110610b1057610b106144df565b9050602002810190610b2291906144f5565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525087925061212e915050565b828281518110610b7057610b706144df565b60200260200101819052508080610b8690614551565b915050610af3565b509392505050565b6060610bd984848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525086925061212e915050565b949350505050565b606060005a9050610bf385858561139b565b610c4f5760405162461bcd60e51b815260206004820152602760248201527f554e535265676973747279466f727761726465723a205349474e41545552455f6044820152661253959053125160ca1b6064820152608401610a8e565b610ce1610c5f602087018761404c565b30604088013584610c7360608b018b6144f5565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061216392505050565b9150505b9392505050565b610134546001600160a01b0316610d01611f26565b6001600160a01b031614610d275760405162461bcd60e51b8152600401610a8e9061456a565b6000610d3b610d36888a6145b1565b612244565b9050610d4681612293565b610d59610d528261106a565b8a83612300565b610d6686868686856124a7565b8115610d8857610d888982610d83610d7e8b8d6145b1565b612515565b612596565b505050505050505050565b80610da5610d9f611f26565b826125d8565b610dc15760405162461bcd60e51b8152600401610a8e906145be565b81610dcb81611d9e565b610dd483612293565b610ddf858585612300565b5050505050565b6000610ce5610d3683856145b1565b80610e01610d9f611f26565b610e1d5760405162461bcd60e51b8152600401610a8e906145be565b81610e2781611d9e565b610e348787878787612656565b50505050505050565b80610e49610d9f611f26565b610e655760405162461bcd60e51b8152600401610a8e906145be565b81610e6f81611d9e565b61094183612293565b610e806126b9565b6001600160a01b0316610e91611f26565b6001600160a01b031614610eb75760405162461bcd60e51b8152600401610a8e90614607565b610ec18282611f35565b5050565b61094183838360405180602001604052806000815250611577565b80610eec610d9f611f26565b610f085760405162461bcd60e51b8152600401610a8e906145be565b81610f1281611d9e565b610f1b83612293565b610941836127ba565b6000610ce583836125d8565b80610f3c610d9f611f26565b610f585760405162461bcd60e51b8152600401610a8e906145be565b81610f6281611d9e565b610e348787878787612861565b80610f7b610d9f611f26565b610f975760405162461bcd60e51b8152600401610a8e906145be565b81610fa181611d9e565b610fad86868686612940565b505050505050565b6000818152606760205260408120546001600160a01b0316151561086e565b61100781604051602001610fe89190614649565b6040516020818303038152906040528051906020012060001c826129e0565b50565b610134546001600160a01b031661101f611f26565b6001600160a01b0316146110455760405162461bcd60e51b8152600401610a8e9061456a565b6001600160a01b0316600090815261013660205260409020805460ff19166001179055565b6000818152606760205260408120546001600160a01b03168061086e5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610a8e565b806110d6610d9f611f26565b6110f25760405162461bcd60e51b8152600401610a8e906145be565b6111046110fd611f26565b3084612300565b610ec161110f611f26565b83612083565b600061112082612244565b905061112b81612a05565b61113481611d9e565b610ec161113f611f26565b8261114985612515565b612a75565b60608061115b8484612afc565b909590945092505050565b60006001600160a01b0382166111d05760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b6064820152608401610a8e565b506001600160a01b031660009081526068602052604090205490565b6001600160a01b0381166000908152610135602052604081205461120f81612b1d565b611217578091505b50919050565b6112256126b9565b6001600160a01b0316611236611f26565b6001600160a01b03161461125c5760405162461bcd60e51b8152600401610a8e90614607565b6112668484611f35565b50505050565b6112768787612b67565b61127e611f26565b6001600160a01b03166112908661106a565b6001600160a01b0316146112e65760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610a8e565b610e3484848484896124a7565b60606066805461088390614490565b610134546001600160a01b0316611317611f26565b6001600160a01b03161461133d5760405162461bcd60e51b8152600401610a8e9061456a565b61013361134b8284836146ab565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b828260405161137d929190614793565b60405180910390a15050565b610ec1611394611f26565b8383612bd6565b6000610bd96113a9856147a7565b3085858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250612ca492505050565b806113f2610d9f611f26565b61140e5760405162461bcd60e51b8152600401610a8e906145be565b8161141881611d9e565b6112666114248461106a565b8585612300565b6000818152606760205260408120546001600160a01b031661144e57600061086e565b3092915050565b606080836001600160401b0381111561147057611470613f63565b6040519080825280602002602001820160405280156114a357816020015b606081526020019060019003908161148e5790505b509150836001600160401b038111156114be576114be613f63565b6040519080825280602002602001820160405280156114f157816020015b60608152602001906001900390816114dc5790505b50905060005b8481101561156e57611521868683818110611514576115146144df565b9050602002013585612afc565b848381518110611533576115336144df565b6020026020010184848151811061154c5761154c6144df565b602002602001018290528290525050808061156690614551565b9150506114f7565b50935093915050565b81611583610d9f611f26565b61159f5760405162461bcd60e51b8152600401610a8e906145be565b826115a981611d9e565b6115b284612293565b610fad86868686612ded565b610134546001600160a01b03166115d3611f26565b6001600160a01b0316146115f95760405162461bcd60e51b8152600401610a8e9061456a565b6000611608610d36888a6145b1565b9050611622898261161c610d7e8b8d6145b1565b85612e20565b610d8886868686856124a7565b600081815260c96020526040902080546060919061164c90614490565b80601f016020809104026020016040519081016040528092919081815260200182805461167890614490565b80156116c55780601f1061169a576101008083540402835291602001916116c5565b820191906000526020600020905b8154815290600101906020018083116116a857829003601f168201915b50505050509050919050565b6001600160a01b038116600090815261013560205260409020546060906116f781612b1d565b61121757600081815261013860205260409020805461171590614490565b80601f016020809104026020016040519081016040528092919081815260200182805461174190614490565b801561178e5780601f106117635761010080835404028352916020019161178e565b820191906000526020600020905b81548152906001019060200180831161177157829003601f168201915b5050505050915050919050565b60606117a682611d3f565b60006117b0612e73565b905060008151116117d05760405180602001604052806000815250610ce5565b806117da84612e83565b6040516020016117eb929190614831565b6040516020818303038152906040529392505050565b8061180d610d9f611f26565b6118295760405162461bcd60e51b8152600401610a8e906145be565b8161183381611d9e565b610e3487878787876124a7565b7f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87546001600160a01b0316611873611f26565b6001600160a01b0316146118995760405162461bcd60e51b8152600401610a8e90614607565b60208190036118bc5760006118b082840184613a3f565b90506112668482611f35565b60006118ca82840184614860565b805190915060005b81811015610fad576118fd868483815181106118f0576118f06144df565b6020026020010151611f35565b8061190781614551565b9150506118d2565b8061191b610d9f611f26565b6119375760405162461bcd60e51b8152600401610a8e906145be565b8161194181611d9e565b610e348787878787612f83565b6000611958611f26565b6001600160a01b03811660009081526101356020526040812054919250036119cc5760405162461bcd60e51b815260206004820152602160248201527f52656769737472793a20524556455253455f5245434f52445f49535f454d50546044820152605960f81b6064820152608401610a8e565b61100781612f99565b6060816001600160401b038111156119ef576119ef613f63565b604051908082528060200260200182016040528015611a2257816020015b6060815260200190600190039081611a0d5790505b50905060005b82811015611a8157611a51848483818110611a4557611a456144df565b9050602002013561162f565b828281518110611a6357611a636144df565b60200260200101819052508080611a7990614551565b915050611a28565b5092915050565b610134546001600160a01b0316611a9d611f26565b6001600160a01b031614611ac35760405162461bcd60e51b8152600401610a8e9061456a565b61013454611ada906001600160a01b031684611f35565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c39528383604051611b0c929190614793565b60405180910390a2505050565b600054610100900460ff1615808015611b395750600054600160ff909116105b80611b535750303b158015611b53575060005460ff166001145b611bb65760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610a8e565b6000805460ff191660011790558015611bd9576000805461ff0019166101001790555b61013480546001600160a01b0319166001600160a01b038716179055837f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec9237880546001600160a01b0319166001600160a01b03929092169190911790556040805180820182526013815272556e73746f707061626c6520446f6d61696e7360681b60208083019190915282518084019093526002835261155160f21b90830152611c8191612fde565b611c8961301e565b611c9161301e565b611c9a83613047565b611ca382613077565b8015610ddf576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b60006001600160e01b031982166380ac58cd60e01b1480611d2057506001600160e01b03198216635b5e139f60e01b145b8061086e57506301ffc9a760e01b6001600160e01b031983161461086e565b6000818152606760205260409020546001600160a01b03166110075760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610a8e565b303303611dfb57611dad6130a7565b81146110075760405162461bcd60e51b815260206004820152601760248201527f52656769737472793a20544f4b454e5f494e56414c49440000000000000000006044820152606401610a8e565b611007816130bb565b6000611e0f8261106a565b9050806001600160a01b0316836001600160a01b031603611e7c5760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b6064820152608401610a8e565b806001600160a01b0316611e8e611f26565b6001600160a01b03161480611eaa5750611eaa816107b6611f26565b611f1c5760405162461bcd60e51b815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c00006064820152608401610a8e565b61094183836130e9565b6000611f30613157565b905090565b6001600160a01b038216611f8b5760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610a8e565b6000818152606760205260409020546001600160a01b031615611ff05760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610a8e565b611ffc60008383613172565b6001600160a01b03821660009081526068602052604081208054600192906120259084906148f0565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b03861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b600061208d6126b9565b905061209981836130e9565b600080516020614c4a83398151915254604080516020808201869052825180830390910181528183019283905263e3dec8fb60e01b9092526001600160a01b0390921691829163e3dec8fb916120f6918891309190604401614903565b600060405180830381600087803b15801561211057600080fd5b505af1158015612124573d6000803e3d6000fd5b5050505050505050565b6060610ce5836040516020016121449190614649565b6040516020818303038152906040528051906020012060001c8361320f565b606061216e856130bb565b600080876001600160a01b0316866121888b8a89896132f1565b6040516121959190614649565b60006040518083038160008787f1925050503d80600081146121d3576040519150601f19603f3d011682016040523d82523d6000602084013e6121d8565b606091505b5090925090506121e9603f87614945565b5a116121f7576121f7614959565b61223782826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c4544000000000000815250613321565b9998505050505050505050565b805160009081905b8015611a815761227f828561226260018561496f565b81518110612272576122726144df565b602002602001015161335a565b91508061228b81614982565b91505061224c565b61229c81613406565b6040516020016122ae91815260200190565b60408051601f198184030181528282528051602091820120600085815260cb9092529181209190915582917f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9190a250565b826001600160a01b03166123138261106a565b6001600160a01b0316146123775760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b6064820152608401610a8e565b6001600160a01b0382166123d95760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610a8e565b6123e4838383613172565b6123ef6000826130e9565b6001600160a01b038316600090815260686020526040812080546001929061241890849061496f565b90915550506001600160a01b03821660009081526068602052604081208054600192906124469084906148f0565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60005b84811015610fad576125038686838181106124c7576124c76144df565b90506020028101906124d991906144f5565b8686858181106124eb576124eb6144df565b90506020028101906124fd91906144f5565b86612861565b8061250d81614551565b9150506124aa565b606060008260008151811061252c5761252c6144df565b602002602001015190506000600190505b8351811015611a815781848281518110612559576125596144df565b6020026020010151604051602001612572929190614999565b6040516020818303038152906040529150808061258e90614551565b91505061253d565b61dead6001600160a01b038416148015906125c857506001600160a01b03831660009081526101356020526040902054155b1561094157610941838383612a75565b6000806125e48361106a565b9050806001600160a01b0316846001600160a01b0316148061262b57506001600160a01b038082166000908152606a602090815260408083209388168352929052205460ff165b80610bd95750836001600160a01b031661264484610906565b6001600160a01b031614949350505050565b60005b84811015610fad576126a7868683818110612676576126766144df565b9050602002013585858481811061268f5761268f6144df565b90506020028101906126a191906144f5565b85612940565b806126b181614551565b915050612659565b600080516020614c4a833981519152546000906001600160a01b031680156127b65760405163721804d360e11b81523060048201526000906001600160a01b0383169063e43009a690602401602060405180830381865afa158015612722573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061274691906149d5565b60405163e66f960360e01b8152600481018290529091506001600160a01b0383169063e66f960390602401602060405180830381865afa15801561278e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127b291906149ee565b9250505b5090565b60006127c58261106a565b90506127d381600084613172565b6127de6000836130e9565b6001600160a01b038116600090815260686020526040812080546001929061280790849061496f565b909155505060008281526067602052604080822080546001600160a01b0319169055518391906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b60008585604051602001612876929190614a0b565b60408051601f198184030181528282528051602091820120601f89018290048202840182019092528783529092506128ca91839189908990819084018382808284376000920191909152506129e092505050565b610fad8187878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061342e915050565b61294984613563565b6129955760405162461bcd60e51b815260206004820152601c60248201527f5265636f726453746f726167653a204b45595f4e4f545f464f554e44000000006044820152606401610a8e565b611266846129a28661162f565b85858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525087925061342e915050565b6129e982613563565b610ec157600082815260c9602052604090206109418282614a1b565b612a0d611f26565b6001600160a01b0316612a1f8261106a565b6001600160a01b0316146110075760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610a8e565b6000828152610138602052604090208054612a8f90614490565b9050600003612ab357600082815261013860205260409020612ab18282614a1b565b505b6001600160a01b03831660008181526101356020526040808220859055518492917feb76a21470988c474a21f690cc28fee1ed511bd812dc3c21fd0f49c5e5d4708a91a3505050565b606080612b088461162f565b9150612b14848461320f565b90509250929050565b6000818152610137602052604081205460ff16801561086e57506101366000612b44611f26565b6001600160a01b0316815260208101919091526040016000205460ff1692915050565b600080516020614c4a83398151915254604051633805550f60e01b81526001600160a01b03909116908190633805550f90612ba89086908690600401614793565b600060405180830381600087803b158015612bc257600080fd5b505af1158015610e34573d6000803e3d6000fd5b816001600160a01b0316836001600160a01b031603612c375760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610a8e565b6001600160a01b038381166000818152606a6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015612ceb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612d0f91906149d5565b90506000612dbd866060015180519060200120868860200151604051602001612d5d9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b9050818660200151148015612de357508551612de3906001600160a01b03168286613589565b9695505050505050565b612df8848484612300565b612e04848484846136cb565b6112665760405162461bcd60e51b8152600401610a8e90614ada565b612e2a8484611f35565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c395283604051612e5a9190613a2c565b60405180910390a2801561126657611266848484612596565b6060610133805461088390614490565b606081600003612eaa5750506040805180820190915260018152600360fc1b602082015290565b8160005b8115612ed45780612ebe81614551565b9150612ecd9050600a83614945565b9150612eae565b6000816001600160401b03811115612eee57612eee613f63565b6040519080825280601f01601f191660200182016040528015612f18576020820181803683370190505b5090505b8415610bd957612f2d60018361496f565b9150612f3a600a86614b2c565b612f459060306148f0565b60f81b818381518110612f5a57612f5a6144df565b60200101906001600160f81b031916908160001a905350612f7c600a86614945565b9450612f1c565b612f8c81612293565b610ddf85858585856124a7565b6001600160a01b03811660008181526101356020526040808220829055517ffcf5eec0cfa3e6332f5f0e63ec242d71f866a61d121d6cdf5c2eb3b668a26c4f9190a250565b600054610100900460ff166130055760405162461bcd60e51b8152600401610a8e90614b40565b60656130118382614a1b565b5060666109418282614a1b565b600054610100900460ff166130455760405162461bcd60e51b8152600401610a8e90614b40565b565b600054610100900460ff1661306e5760405162461bcd60e51b8152600401610a8e90614b40565b611007816137d0565b600054610100900460ff1661309e5760405162461bcd60e51b8152600401610a8e90614b40565b61100781613829565b60003033036130b85750601f193601355b90565b600081815261010060205260409020546130d69060016148f0565b6000918252610100602052604090912055565b600081815260696020526040902080546001600160a01b0319166001600160a01b038416908117909155819061311e8261106a565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b600030330361316d575060331936013560601c90565b503390565b6000818152610137602052604090205460ff16158061319957506001600160a01b03821615155b6131e55760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a20544f4b454e5f555047524144454400000000000000006044820152606401610a8e565b6001600160a01b038316600090815261013560205260409020548190036109415761094183612f99565b606061321a82612b1d565b15613234575060408051602081019091526000815261086e565b60ca600061324184613406565b81526020019081526020016000206000848152602001908152602001600020805461326b90614490565b80601f016020809104026020016040519081016040528092919081815260200182805461329790614490565b80156132e45780601f106132b9576101008083540402835291602001916132e4565b820191906000526020600020905b8154815290600101906020018083116132c757829003601f168201915b5050505050905092915050565b606082858560405160200161330893929190614b8b565b6040516020818303038152906040529050949350505050565b60608315613330575081610ce5565b8251156133405782518084602001fd5b8160405162461bcd60e51b8152600401610a8e9190613a2c565b600081516000036133a55760405162461bcd60e51b815260206004820152601560248201527452656769737472793a204c4142454c5f454d50545960581b6044820152606401610a8e565b82826040516020016133b79190614649565b604051602081830303815290604052805190602001206040516020016133e7929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b600081815260cb6020526040812054156127b657600082815260cb602052604090205461086e565b60ca600061343b83613406565b81526020019081526020016000206000858152602001908152602001600020805461346590614490565b90506000036134bd578260405161347c9190614649565b6040518091039020817f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f86856040516134b49190613a2c565b60405180910390a35b8160ca60006134cb84613406565b8152602001908152602001600020600086815260200190815260200160002090816134f69190614a1b565b50816040516135059190614649565b60405180910390208360405161351b9190614649565b6040518091039020827f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d92868660405161355592919061416e565b60405180910390a450505050565b600081815260c960205260408120805482919061357f90614490565b9050119050919050565b60008060006135988585613877565b909250905060008160048111156135b1576135b1614bca565b1480156135cf5750856001600160a01b0316826001600160a01b0316145b156135df57600192505050610ce5565b600080876001600160a01b0316631626ba7e60e01b8888604051602401613607929190614be0565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516136459190614649565b600060405180830381855afa9150503d8060008114613680576040519150601f19603f3d011682016040523d82523d6000602084013e613685565b606091505b5091509150818015613698575080516020145b80156136bf57508051630b135d3f60e11b906136bd90830160209081019084016149d5565b145b98975050505050505050565b60006001600160a01b0384163b156137c857836001600160a01b031663150b7a026136f4611f26565b8786866040518563ffffffff1660e01b81526004016137169493929190614bf9565b6020604051808303816000875af1925050508015613751575060408051601f3d908101601f1916820190925261374e91810190614c2c565b60015b6137ae573d80801561377f576040519150601f19603f3d011682016040523d82523d6000602084013e613784565b606091505b5080516000036137a65760405162461bcd60e51b8152600401610a8e90614ada565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610bd9565b506001610bd9565b600054610100900460ff166137f75760405162461bcd60e51b8152600401610a8e90614b40565b80600080516020614c4a8339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b600054610100900460ff166138505760405162461bcd60e51b8152600401610a8e90614b40565b807f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87613808565b60008082516041036138ad5760208301516040840151606085015160001a6138a1878285856138bc565b945094505050506138b5565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08311156138f357506000905060036139a0565b8460ff16601b1415801561390b57508460ff16601c14155b1561391c57506000905060046139a0565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613970573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613999576000600192509250506139a0565b9150600090505b94509492505050565b6001600160e01b03198116811461100757600080fd5b6000602082840312156139d157600080fd5b8135610ce5816139a9565b60005b838110156139f75781810151838201526020016139df565b50506000910152565b60008151808452613a188160208601602086016139dc565b601f01601f19169290920160200192915050565b602081526000610ce56020830184613a00565b600060208284031215613a5157600080fd5b5035919050565b6001600160a01b038116811461100757600080fd5b60008060408385031215613a8057600080fd5b8235613a8b81613a58565b946020939093013593505050565b60008083601f840112613aab57600080fd5b5081356001600160401b03811115613ac257600080fd5b6020830191508360208285010111156138b557600080fd5b600080600080600060808688031215613af257600080fd5b8535613afd81613a58565b94506020860135613b0d81613a58565b93506040860135925060608601356001600160401b03811115613b2f57600080fd5b613b3b88828901613a99565b969995985093965092949392505050565b60008083601f840112613b5e57600080fd5b5081356001600160401b03811115613b7557600080fd5b6020830191508360208260051b85010111156138b557600080fd5b600080600060408486031215613ba557600080fd5b83356001600160401b03811115613bbb57600080fd5b613bc786828701613b4c565b909790965060209590950135949350505050565b600081518084526020808501808196508360051b8101915082860160005b85811015613c23578284038952613c11848351613a00565b98850198935090840190600101613bf9565b5091979650505050505050565b602081526000610ce56020830184613bdb565b600080600060408486031215613c5857600080fd5b83356001600160401b03811115613c6e57600080fd5b613bc786828701613a99565b600080600060408486031215613c8f57600080fd5b83356001600160401b0380821115613ca657600080fd5b9085019060808288031215613cba57600080fd5b90935060208501359080821115613cd057600080fd5b50613cdd86828701613a99565b9497909650939450505050565b80358015158114613cfa57600080fd5b919050565b60008060008060008060008060a0898b031215613d1b57600080fd5b8835613d2681613a58565b975060208901356001600160401b0380821115613d4257600080fd5b613d4e8c838d01613b4c565b909950975060408b0135915080821115613d6757600080fd5b613d738c838d01613b4c565b909750955060608b0135915080821115613d8c57600080fd5b50613d998b828c01613b4c565b9094509250613dac905060808a01613cea565b90509295985092959890939650565b600080600060608486031215613dd057600080fd5b8335613ddb81613a58565b92506020840135613deb81613a58565b929592945050506040919091013590565b60008060208385031215613e0f57600080fd5b82356001600160401b03811115613e2557600080fd5b613e3185828601613b4c565b90969095509350505050565b600080600080600060608688031215613e5557600080fd5b85356001600160401b0380821115613e6c57600080fd5b613e7889838a01613b4c565b90975095506020880135915080821115613e9157600080fd5b50613e9e88828901613b4c565b96999598509660400135949350505050565b600080600080600060608688031215613ec857600080fd5b85356001600160401b0380821115613edf57600080fd5b613eeb89838a01613a99565b90975095506020880135915080821115613f0457600080fd5b50613e9e88828901613a99565b60008060008060608587031215613f2757600080fd5b8435935060208501356001600160401b03811115613f4457600080fd5b613f5087828801613a99565b9598909750949560400135949350505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715613fa157613fa1613f63565b604052919050565b600082601f830112613fba57600080fd5b81356001600160401b03811115613fd357613fd3613f63565b613fe6601f8201601f1916602001613f79565b818152846020838601011115613ffb57600080fd5b816020850160208301376000918101602001919091529392505050565b60006020828403121561402a57600080fd5b81356001600160401b0381111561404057600080fd5b610bd984828501613fa9565b60006020828403121561405e57600080fd5b8135610ce581613a58565b60006001600160401b0382111561408257614082613f63565b5060051b60200190565b600061409f61409a84614069565b613f79565b8381529050602080820190600585901b8401868111156140be57600080fd5b845b818110156140f95780356001600160401b038111156140df5760008081fd5b6140eb89828901613fa9565b8552509282019282016140c0565b505050509392505050565b60006020828403121561411657600080fd5b81356001600160401b0381111561412c57600080fd5b8201601f8101841361413d57600080fd5b610bd98482356020840161408c565b6000806040838503121561415f57600080fd5b50508035926020909101359150565b6040815260006141816040830185613a00565b8281036020840152610ce18185613a00565b600080600080606085870312156141a957600080fd5b84356141b481613a58565b93506020850135925060408501356001600160401b038111156141d657600080fd5b6141e287828801613a99565b95989497509550505050565b60008060008060008060006080888a03121561420957600080fd5b87356001600160401b038082111561422057600080fd5b61422c8b838c01613a99565b909950975060208a0135965060408a013591508082111561424c57600080fd5b6142588b838c01613b4c565b909650945060608a013591508082111561427157600080fd5b5061427e8a828b01613b4c565b989b979a50959850939692959293505050565b600080602083850312156142a457600080fd5b82356001600160401b038111156142ba57600080fd5b613e3185828601613a99565b600080604083850312156142d957600080fd5b82356142e481613a58565b9150612b1460208401613cea565b6040815260006143056040830185613bdb565b8281036020840152610ce18185613bdb565b6000806000806080858703121561432d57600080fd5b843561433881613a58565b9350602085013561434881613a58565b92506040850135915060608501356001600160401b0381111561436a57600080fd5b61437687828801613fa9565b91505092959194509250565b60008060006040848603121561439757600080fd5b83356143a281613a58565b925060208401356001600160401b038111156143bd57600080fd5b613cdd86828701613a99565b600080604083850312156143dc57600080fd5b82356143e781613a58565b915060208301356143f781613a58565b809150509250929050565b60008060006040848603121561441757600080fd5b8335925060208401356001600160401b038111156143bd57600080fd5b6000806000806080858703121561444a57600080fd5b843561445581613a58565b9350602085013561446581613a58565b9250604085013561447581613a58565b9150606085013561448581613a58565b939692955090935050565b600181811c908216806144a457607f821691505b60208210810361121757634e487b7160e01b600052602260045260246000fd5b6000602082840312156144d657600080fd5b610ce582613cea565b634e487b7160e01b600052603260045260246000fd5b6000808335601e1984360301811261450c57600080fd5b8301803591506001600160401b0382111561452657600080fd5b6020019150368190038213156138b557600080fd5b634e487b7160e01b600052601160045260246000fd5b6000600182016145635761456361453b565b5060010190565b60208082526027908201527f52656769737472793a2053454e4445525f49535f4e4f545f4d494e54494e475f60408201526626a0a720a3a2a960c91b606082015260800190565b6000610ce536848461408c565b60208082526029908201527f52656769737472793a2053454e4445525f49535f4e4f545f415050524f5645446040820152682fa7a92fa7aba722a960b91b606082015260800190565b60208082526022908201527f52656769737472793a20494e53554646494349454e545f5045524d495353494f6040820152614e5360f01b606082015260800190565b6000825161465b8184602087016139dc565b9190910192915050565b601f82111561094157600081815260208120601f850160051c8101602086101561468c5750805b601f850160051c820191505b81811015610fad57828155600101614698565b6001600160401b038311156146c2576146c2613f63565b6146d6836146d08354614490565b83614665565b6000601f84116001811461470a57600085156146f25750838201355b600019600387901b1c1916600186901b178355610ddf565b600083815260209020601f19861690835b8281101561473b578685013582556020948501946001909201910161471b565b50868210156147585760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b602081526000610bd960208301848661476a565b6000608082360312156147b957600080fd5b604051608081016001600160401b0382821081831117156147dc576147dc613f63565b81604052843591506147ed82613a58565b8183526020850135602084015260408501356040840152606085013591508082111561481857600080fd5b5061482536828601613fa9565b60608301525092915050565b600083516148438184602088016139dc565b8351908301906148578183602088016139dc565b01949350505050565b6000602080838503121561487357600080fd5b82356001600160401b0381111561488957600080fd5b8301601f8101851361489a57600080fd5b80356148a861409a82614069565b81815260059190911b820183019083810190878311156148c757600080fd5b928401925b828410156148e5578335825292840192908401906148cc565b979650505050505050565b8082018082111561086e5761086e61453b565b6001600160a01b03848116825283166020820152606060408201819052600090610a9790830184613a00565b634e487b7160e01b600052601260045260246000fd5b6000826149545761495461492f565b500490565b634e487b7160e01b600052600160045260246000fd5b8181038181111561086e5761086e61453b565b6000816149915761499161453b565b506000190190565b600083516149ab8184602088016139dc565b601760f91b90830190815283516149c98160018401602088016139dc565b01600101949350505050565b6000602082840312156149e757600080fd5b5051919050565b600060208284031215614a0057600080fd5b8151610ce581613a58565b8183823760009101908152919050565b81516001600160401b03811115614a3457614a34613f63565b614a4881614a428454614490565b84614665565b602080601f831160018114614a7d5760008415614a655750858301515b600019600386901b1c1916600185901b178555610fad565b600085815260208120601f198616915b82811015614aac57888601518255948401946001909101908401614a8d565b5085821015614aca5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b600082614b3b57614b3b61492f565b500690565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60008451614b9d8184602089016139dc565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b600052602160045260246000fd5b828152604060208201526000610bd96040830184613a00565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090612de390830184613a00565b600060208284031215614c3e57600080fd5b8151610ce5816139a956febe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafea164736f6c6343000811000a", - "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106103785760003560e01c806370a08231116101d3578063ba5d40b711610104578063ebf0c717116100a2578063f5c1f76e1161007c578063f5c1f76e14610806578063f7df5c6014610819578063f8c8765e1461082c578063ffa1ad741461083f57600080fd5b8063ebf0c717146107e4578063ec129eea146107eb578063f25eb5c1146107fe57600080fd5b8063c87b56dd116100de578063c87b56dd1461076f578063ce92b33e14610782578063cf2c52cb14610795578063e985e9c5146107a857600080fd5b8063ba5d40b714610736578063bb5b27e114610749578063bebec6b41461075c57600080fd5b8063a22cb46511610171578063ab3b87fe1161014b578063ab3b87fe146106dc578063b3f9e4cb146106ef578063b85afd2814610702578063b88d4fde1461072357600080fd5b8063a22cb4651461068a578063a3f4df7e1461069d578063a4247400146106c957600080fd5b80639508b1c4116101ad5780639508b1c4146106545780639559c0bd1461066757806395d89b411461066f57806399e0dd7c1461067757600080fd5b806370a082311461061b5780637e37479e1461062e57806394d008ef1461064157600080fd5b806342842e0e116102ad578063509602391161024b578063638e5c7811610225578063638e5c78146105b3578063663f7b2a146105c6578063672b9f81146105d95780636ccbae5f146105fa57600080fd5b80635096023914610571578063572b6c05146105845780636352211e146105a057600080fd5b806347c816991161028757806347c81699146105255780634a72584d146105385780634f558e791461054b57806350382c1a1461055e57600080fd5b806342842e0e146104ec57806342966c68146104ff578063430c20811461051257600080fd5b80631bf7e13e1161031a578063276fabb1116102f4578063276fabb11461049257806327f18975146104b3578063310bd74b146104c657806340c10f19146104d957600080fd5b80631bf7e13e146104595780631f71be061461046c57806323b872dd1461047f57600080fd5b8063095ea7b311610356578063095ea7b3146103e5578063150b7a02146103fa5780631bd8cc1a146104265780631be5e7ed1461044657600080fd5b806301ffc9a71461037d57806306fdde03146103a5578063081812fc146103ba575b600080fd5b61039061038b3660046139bf565b610863565b60405190151581526020015b60405180910390f35b6103ad610874565b60405161039c9190613a2c565b6103cd6103c8366004613a3f565b610906565b6040516001600160a01b03909116815260200161039c565b6103f86103f3366004613a6d565b61092d565b005b61040d610408366004613ada565b610946565b6040516001600160e01b0319909116815260200161039c565b610439610434366004613b90565b610aa0565b60405161039c9190613c30565b6103ad610454366004613c43565b610b96565b6103ad610467366004613c7a565b610be1565b6103f861047a366004613cff565b610cec565b6103f861048d366004613dbb565b610d93565b6104a56104a0366004613dfc565b610de6565b60405190815260200161039c565b6103f86104c1366004613e3d565b610df5565b6103f86104d4366004613a3f565b610e3d565b6103f86104e7366004613a6d565b610e78565b6103f86104fa366004613dbb565b610ec5565b6103f861050d366004613a3f565b610ee0565b610390610520366004613a6d565b610f24565b6103f8610533366004613eb0565b610f30565b6103f8610546366004613f11565b610f6f565b610390610559366004613a3f565b610fb5565b6103f861056c366004614018565b610fd4565b6103f861057f36600461404c565b61100a565b61039061059236600461404c565b6001600160a01b0316301490565b6103cd6105ae366004613a3f565b61106a565b6103f86105c1366004613a3f565b6110ca565b6103f86105d4366004614104565b611115565b6105ec6105e736600461414c565b61114e565b60405161039c92919061416e565b6104a5610608366004613a3f565b6000908152610100602052604090205490565b6104a561062936600461404c565b611166565b6104a561063c36600461404c565b6111ec565b6103f861064f366004614193565b61121d565b6103f86106623660046141ee565b61126c565b6104a5601481565b6103ad6112f3565b6103f8610685366004614291565b611302565b6103f86106983660046142c6565b611389565b6103ad6040518060400160405280600d81526020016c554e533a20526567697374727960981b81525081565b6103906106d7366004613c7a565b61139b565b6103f86106ea366004613a6d565b6113e6565b6103cd6106fd366004613a3f565b61142b565b610715610710366004613b90565b611455565b60405161039c9291906142f2565b6103f8610731366004614317565b611577565b6103f8610744366004613cff565b6115be565b6103ad610757366004613a3f565b61162f565b6103ad61076a36600461404c565b6116d1565b6103ad61077d366004613a3f565b61179b565b6103f8610790366004613e3d565b611801565b6103f86107a3366004614382565b611840565b6103906107b63660046143c9565b6001600160a01b039182166000908152606a6020908152604080832093909416825291909152205460ff1690565b60006104a5565b6103f86107f9366004613e3d565b61190f565b6103f861194e565b610439610814366004613dfc565b6119d5565b6103f8610827366004614402565b611a88565b6103f861083a366004614434565b611b19565b6103ad60405180604001604052806005815260200164302e372e3360d81b81525081565b600061086e82611cef565b92915050565b60606065805461088390614490565b80601f01602080910402602001604051908101604052809291908181526020018280546108af90614490565b80156108fc5780601f106108d1576101008083540402835291602001916108fc565b820191906000526020600020905b8154815290600101906020018083116108df57829003601f168201915b5050505050905090565b600061091182611d3f565b506000908152606960205260409020546001600160a01b031690565b8061093781611d9e565b6109418383611e04565b505050565b60007f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378546001600160a01b031661097b611f26565b6001600160a01b031603610a3c57610991611f26565b6001600160a01b03166342966c68856040518263ffffffff1660e01b81526004016109be91815260200190565b600060405180830381600087803b1580156109d857600080fd5b505af11580156109ec573d6000803e3d6000fd5b505050821580159150610a065750610a06828401846144c4565b15610a2457610a153085611f35565b610a1f8585612083565b610a2e565b610a2e8585611f35565b50630a85bd0160e11b610a97565b60405162461bcd60e51b815260206004820152602560248201527f52656769737472793a204552433732315f524543454956494e475f50524f4849604482015264109255115160da1b60648201526084015b60405180910390fd5b95945050505050565b6060826001600160401b03811115610aba57610aba613f63565b604051908082528060200260200182016040528015610aed57816020015b6060815260200190600190039081610ad85790505b50905060005b83811015610b8e57610b5e858583818110610b1057610b106144df565b9050602002810190610b2291906144f5565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525087925061212e915050565b828281518110610b7057610b706144df565b60200260200101819052508080610b8690614551565b915050610af3565b509392505050565b6060610bd984848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525086925061212e915050565b949350505050565b606060005a9050610bf385858561139b565b610c4f5760405162461bcd60e51b815260206004820152602760248201527f554e535265676973747279466f727761726465723a205349474e41545552455f6044820152661253959053125160ca1b6064820152608401610a8e565b610ce1610c5f602087018761404c565b30604088013584610c7360608b018b6144f5565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061216392505050565b9150505b9392505050565b610134546001600160a01b0316610d01611f26565b6001600160a01b031614610d275760405162461bcd60e51b8152600401610a8e9061456a565b6000610d3b610d36888a6145b1565b612244565b9050610d4681612293565b610d59610d528261106a565b8a83612300565b610d6686868686856124a7565b8115610d8857610d888982610d83610d7e8b8d6145b1565b612515565b612596565b505050505050505050565b80610da5610d9f611f26565b826125d8565b610dc15760405162461bcd60e51b8152600401610a8e906145be565b81610dcb81611d9e565b610dd483612293565b610ddf858585612300565b5050505050565b6000610ce5610d3683856145b1565b80610e01610d9f611f26565b610e1d5760405162461bcd60e51b8152600401610a8e906145be565b81610e2781611d9e565b610e348787878787612656565b50505050505050565b80610e49610d9f611f26565b610e655760405162461bcd60e51b8152600401610a8e906145be565b81610e6f81611d9e565b61094183612293565b610e806126b9565b6001600160a01b0316610e91611f26565b6001600160a01b031614610eb75760405162461bcd60e51b8152600401610a8e90614607565b610ec18282611f35565b5050565b61094183838360405180602001604052806000815250611577565b80610eec610d9f611f26565b610f085760405162461bcd60e51b8152600401610a8e906145be565b81610f1281611d9e565b610f1b83612293565b610941836127ba565b6000610ce583836125d8565b80610f3c610d9f611f26565b610f585760405162461bcd60e51b8152600401610a8e906145be565b81610f6281611d9e565b610e348787878787612861565b80610f7b610d9f611f26565b610f975760405162461bcd60e51b8152600401610a8e906145be565b81610fa181611d9e565b610fad86868686612940565b505050505050565b6000818152606760205260408120546001600160a01b0316151561086e565b61100781604051602001610fe89190614649565b6040516020818303038152906040528051906020012060001c826129e0565b50565b610134546001600160a01b031661101f611f26565b6001600160a01b0316146110455760405162461bcd60e51b8152600401610a8e9061456a565b6001600160a01b0316600090815261013660205260409020805460ff19166001179055565b6000818152606760205260408120546001600160a01b03168061086e5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610a8e565b806110d6610d9f611f26565b6110f25760405162461bcd60e51b8152600401610a8e906145be565b6111046110fd611f26565b3084612300565b610ec161110f611f26565b83612083565b600061112082612244565b905061112b81612a05565b61113481611d9e565b610ec161113f611f26565b8261114985612515565b612a75565b60608061115b8484612afc565b909590945092505050565b60006001600160a01b0382166111d05760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b6064820152608401610a8e565b506001600160a01b031660009081526068602052604090205490565b6001600160a01b0381166000908152610135602052604081205461120f81612b1d565b611217578091505b50919050565b6112256126b9565b6001600160a01b0316611236611f26565b6001600160a01b03161461125c5760405162461bcd60e51b8152600401610a8e90614607565b6112668484611f35565b50505050565b6112768787612b67565b61127e611f26565b6001600160a01b03166112908661106a565b6001600160a01b0316146112e65760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610a8e565b610e3484848484896124a7565b60606066805461088390614490565b610134546001600160a01b0316611317611f26565b6001600160a01b03161461133d5760405162461bcd60e51b8152600401610a8e9061456a565b61013361134b8284836146ab565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b828260405161137d929190614793565b60405180910390a15050565b610ec1611394611f26565b8383612bd6565b6000610bd96113a9856147a7565b3085858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250612ca492505050565b806113f2610d9f611f26565b61140e5760405162461bcd60e51b8152600401610a8e906145be565b8161141881611d9e565b6112666114248461106a565b8585612300565b6000818152606760205260408120546001600160a01b031661144e57600061086e565b3092915050565b606080836001600160401b0381111561147057611470613f63565b6040519080825280602002602001820160405280156114a357816020015b606081526020019060019003908161148e5790505b509150836001600160401b038111156114be576114be613f63565b6040519080825280602002602001820160405280156114f157816020015b60608152602001906001900390816114dc5790505b50905060005b8481101561156e57611521868683818110611514576115146144df565b9050602002013585612afc565b848381518110611533576115336144df565b6020026020010184848151811061154c5761154c6144df565b602002602001018290528290525050808061156690614551565b9150506114f7565b50935093915050565b81611583610d9f611f26565b61159f5760405162461bcd60e51b8152600401610a8e906145be565b826115a981611d9e565b6115b284612293565b610fad86868686612ded565b610134546001600160a01b03166115d3611f26565b6001600160a01b0316146115f95760405162461bcd60e51b8152600401610a8e9061456a565b6000611608610d36888a6145b1565b9050611622898261161c610d7e8b8d6145b1565b85612e20565b610d8886868686856124a7565b600081815260c96020526040902080546060919061164c90614490565b80601f016020809104026020016040519081016040528092919081815260200182805461167890614490565b80156116c55780601f1061169a576101008083540402835291602001916116c5565b820191906000526020600020905b8154815290600101906020018083116116a857829003601f168201915b50505050509050919050565b6001600160a01b038116600090815261013560205260409020546060906116f781612b1d565b61121757600081815261013860205260409020805461171590614490565b80601f016020809104026020016040519081016040528092919081815260200182805461174190614490565b801561178e5780601f106117635761010080835404028352916020019161178e565b820191906000526020600020905b81548152906001019060200180831161177157829003601f168201915b5050505050915050919050565b60606117a682611d3f565b60006117b0612e73565b905060008151116117d05760405180602001604052806000815250610ce5565b806117da84612e83565b6040516020016117eb929190614831565b6040516020818303038152906040529392505050565b8061180d610d9f611f26565b6118295760405162461bcd60e51b8152600401610a8e906145be565b8161183381611d9e565b610e3487878787876124a7565b7f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87546001600160a01b0316611873611f26565b6001600160a01b0316146118995760405162461bcd60e51b8152600401610a8e90614607565b60208190036118bc5760006118b082840184613a3f565b90506112668482611f35565b60006118ca82840184614860565b805190915060005b81811015610fad576118fd868483815181106118f0576118f06144df565b6020026020010151611f35565b8061190781614551565b9150506118d2565b8061191b610d9f611f26565b6119375760405162461bcd60e51b8152600401610a8e906145be565b8161194181611d9e565b610e348787878787612f83565b6000611958611f26565b6001600160a01b03811660009081526101356020526040812054919250036119cc5760405162461bcd60e51b815260206004820152602160248201527f52656769737472793a20524556455253455f5245434f52445f49535f454d50546044820152605960f81b6064820152608401610a8e565b61100781612f99565b6060816001600160401b038111156119ef576119ef613f63565b604051908082528060200260200182016040528015611a2257816020015b6060815260200190600190039081611a0d5790505b50905060005b82811015611a8157611a51848483818110611a4557611a456144df565b9050602002013561162f565b828281518110611a6357611a636144df565b60200260200101819052508080611a7990614551565b915050611a28565b5092915050565b610134546001600160a01b0316611a9d611f26565b6001600160a01b031614611ac35760405162461bcd60e51b8152600401610a8e9061456a565b61013454611ada906001600160a01b031684611f35565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c39528383604051611b0c929190614793565b60405180910390a2505050565b600054610100900460ff1615808015611b395750600054600160ff909116105b80611b535750303b158015611b53575060005460ff166001145b611bb65760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610a8e565b6000805460ff191660011790558015611bd9576000805461ff0019166101001790555b61013480546001600160a01b0319166001600160a01b038716179055837f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec9237880546001600160a01b0319166001600160a01b03929092169190911790556040805180820182526013815272556e73746f707061626c6520446f6d61696e7360681b60208083019190915282518084019093526002835261155160f21b90830152611c8191612fde565b611c8961301e565b611c9161301e565b611c9a83613047565b611ca382613077565b8015610ddf576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b60006001600160e01b031982166380ac58cd60e01b1480611d2057506001600160e01b03198216635b5e139f60e01b145b8061086e57506301ffc9a760e01b6001600160e01b031983161461086e565b6000818152606760205260409020546001600160a01b03166110075760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610a8e565b303303611dfb57611dad6130a7565b81146110075760405162461bcd60e51b815260206004820152601760248201527f52656769737472793a20544f4b454e5f494e56414c49440000000000000000006044820152606401610a8e565b611007816130bb565b6000611e0f8261106a565b9050806001600160a01b0316836001600160a01b031603611e7c5760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b6064820152608401610a8e565b806001600160a01b0316611e8e611f26565b6001600160a01b03161480611eaa5750611eaa816107b6611f26565b611f1c5760405162461bcd60e51b815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c00006064820152608401610a8e565b61094183836130e9565b6000611f30613157565b905090565b6001600160a01b038216611f8b5760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610a8e565b6000818152606760205260409020546001600160a01b031615611ff05760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610a8e565b611ffc60008383613172565b6001600160a01b03821660009081526068602052604081208054600192906120259084906148f0565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b03861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b600061208d6126b9565b905061209981836130e9565b600080516020614c4a83398151915254604080516020808201869052825180830390910181528183019283905263e3dec8fb60e01b9092526001600160a01b0390921691829163e3dec8fb916120f6918891309190604401614903565b600060405180830381600087803b15801561211057600080fd5b505af1158015612124573d6000803e3d6000fd5b5050505050505050565b6060610ce5836040516020016121449190614649565b6040516020818303038152906040528051906020012060001c8361320f565b606061216e856130bb565b600080876001600160a01b0316866121888b8a89896132f1565b6040516121959190614649565b60006040518083038160008787f1925050503d80600081146121d3576040519150601f19603f3d011682016040523d82523d6000602084013e6121d8565b606091505b5090925090506121e9603f87614945565b5a116121f7576121f7614959565b61223782826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c4544000000000000815250613321565b9998505050505050505050565b805160009081905b8015611a815761227f828561226260018561496f565b81518110612272576122726144df565b602002602001015161335a565b91508061228b81614982565b91505061224c565b61229c81613406565b6040516020016122ae91815260200190565b60408051601f198184030181528282528051602091820120600085815260cb9092529181209190915582917f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9190a250565b826001600160a01b03166123138261106a565b6001600160a01b0316146123775760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b6064820152608401610a8e565b6001600160a01b0382166123d95760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610a8e565b6123e4838383613172565b6123ef6000826130e9565b6001600160a01b038316600090815260686020526040812080546001929061241890849061496f565b90915550506001600160a01b03821660009081526068602052604081208054600192906124469084906148f0565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60005b84811015610fad576125038686838181106124c7576124c76144df565b90506020028101906124d991906144f5565b8686858181106124eb576124eb6144df565b90506020028101906124fd91906144f5565b86612861565b8061250d81614551565b9150506124aa565b606060008260008151811061252c5761252c6144df565b602002602001015190506000600190505b8351811015611a815781848281518110612559576125596144df565b6020026020010151604051602001612572929190614999565b6040516020818303038152906040529150808061258e90614551565b91505061253d565b61dead6001600160a01b038416148015906125c857506001600160a01b03831660009081526101356020526040902054155b1561094157610941838383612a75565b6000806125e48361106a565b9050806001600160a01b0316846001600160a01b0316148061262b57506001600160a01b038082166000908152606a602090815260408083209388168352929052205460ff165b80610bd95750836001600160a01b031661264484610906565b6001600160a01b031614949350505050565b60005b84811015610fad576126a7868683818110612676576126766144df565b9050602002013585858481811061268f5761268f6144df565b90506020028101906126a191906144f5565b85612940565b806126b181614551565b915050612659565b600080516020614c4a833981519152546000906001600160a01b031680156127b65760405163721804d360e11b81523060048201526000906001600160a01b0383169063e43009a690602401602060405180830381865afa158015612722573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061274691906149d5565b60405163e66f960360e01b8152600481018290529091506001600160a01b0383169063e66f960390602401602060405180830381865afa15801561278e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127b291906149ee565b9250505b5090565b60006127c58261106a565b90506127d381600084613172565b6127de6000836130e9565b6001600160a01b038116600090815260686020526040812080546001929061280790849061496f565b909155505060008281526067602052604080822080546001600160a01b0319169055518391906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b60008585604051602001612876929190614a0b565b60408051601f198184030181528282528051602091820120601f89018290048202840182019092528783529092506128ca91839189908990819084018382808284376000920191909152506129e092505050565b610fad8187878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061342e915050565b61294984613563565b6129955760405162461bcd60e51b815260206004820152601c60248201527f5265636f726453746f726167653a204b45595f4e4f545f464f554e44000000006044820152606401610a8e565b611266846129a28661162f565b85858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525087925061342e915050565b6129e982613563565b610ec157600082815260c9602052604090206109418282614a1b565b612a0d611f26565b6001600160a01b0316612a1f8261106a565b6001600160a01b0316146110075760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610a8e565b6000828152610138602052604090208054612a8f90614490565b9050600003612ab357600082815261013860205260409020612ab18282614a1b565b505b6001600160a01b03831660008181526101356020526040808220859055518492917feb76a21470988c474a21f690cc28fee1ed511bd812dc3c21fd0f49c5e5d4708a91a3505050565b606080612b088461162f565b9150612b14848461320f565b90509250929050565b6000818152610137602052604081205460ff16801561086e57506101366000612b44611f26565b6001600160a01b0316815260208101919091526040016000205460ff1692915050565b600080516020614c4a83398151915254604051633805550f60e01b81526001600160a01b03909116908190633805550f90612ba89086908690600401614793565b600060405180830381600087803b158015612bc257600080fd5b505af1158015610e34573d6000803e3d6000fd5b816001600160a01b0316836001600160a01b031603612c375760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610a8e565b6001600160a01b038381166000818152606a6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015612ceb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612d0f91906149d5565b90506000612dbd866060015180519060200120868860200151604051602001612d5d9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b9050818660200151148015612de357508551612de3906001600160a01b03168286613589565b9695505050505050565b612df8848484612300565b612e04848484846136cb565b6112665760405162461bcd60e51b8152600401610a8e90614ada565b612e2a8484611f35565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c395283604051612e5a9190613a2c565b60405180910390a2801561126657611266848484612596565b6060610133805461088390614490565b606081600003612eaa5750506040805180820190915260018152600360fc1b602082015290565b8160005b8115612ed45780612ebe81614551565b9150612ecd9050600a83614945565b9150612eae565b6000816001600160401b03811115612eee57612eee613f63565b6040519080825280601f01601f191660200182016040528015612f18576020820181803683370190505b5090505b8415610bd957612f2d60018361496f565b9150612f3a600a86614b2c565b612f459060306148f0565b60f81b818381518110612f5a57612f5a6144df565b60200101906001600160f81b031916908160001a905350612f7c600a86614945565b9450612f1c565b612f8c81612293565b610ddf85858585856124a7565b6001600160a01b03811660008181526101356020526040808220829055517ffcf5eec0cfa3e6332f5f0e63ec242d71f866a61d121d6cdf5c2eb3b668a26c4f9190a250565b600054610100900460ff166130055760405162461bcd60e51b8152600401610a8e90614b40565b60656130118382614a1b565b5060666109418282614a1b565b600054610100900460ff166130455760405162461bcd60e51b8152600401610a8e90614b40565b565b600054610100900460ff1661306e5760405162461bcd60e51b8152600401610a8e90614b40565b611007816137d0565b600054610100900460ff1661309e5760405162461bcd60e51b8152600401610a8e90614b40565b61100781613829565b60003033036130b85750601f193601355b90565b600081815261010060205260409020546130d69060016148f0565b6000918252610100602052604090912055565b600081815260696020526040902080546001600160a01b0319166001600160a01b038416908117909155819061311e8261106a565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b600030330361316d575060331936013560601c90565b503390565b6000818152610137602052604090205460ff16158061319957506001600160a01b03821615155b6131e55760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a20544f4b454e5f555047524144454400000000000000006044820152606401610a8e565b6001600160a01b038316600090815261013560205260409020548190036109415761094183612f99565b606061321a82612b1d565b15613234575060408051602081019091526000815261086e565b60ca600061324184613406565b81526020019081526020016000206000848152602001908152602001600020805461326b90614490565b80601f016020809104026020016040519081016040528092919081815260200182805461329790614490565b80156132e45780601f106132b9576101008083540402835291602001916132e4565b820191906000526020600020905b8154815290600101906020018083116132c757829003601f168201915b5050505050905092915050565b606082858560405160200161330893929190614b8b565b6040516020818303038152906040529050949350505050565b60608315613330575081610ce5565b8251156133405782518084602001fd5b8160405162461bcd60e51b8152600401610a8e9190613a2c565b600081516000036133a55760405162461bcd60e51b815260206004820152601560248201527452656769737472793a204c4142454c5f454d50545960581b6044820152606401610a8e565b82826040516020016133b79190614649565b604051602081830303815290604052805190602001206040516020016133e7929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b600081815260cb6020526040812054156127b657600082815260cb602052604090205461086e565b60ca600061343b83613406565b81526020019081526020016000206000858152602001908152602001600020805461346590614490565b90506000036134bd578260405161347c9190614649565b6040518091039020817f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f86856040516134b49190613a2c565b60405180910390a35b8160ca60006134cb84613406565b8152602001908152602001600020600086815260200190815260200160002090816134f69190614a1b565b50816040516135059190614649565b60405180910390208360405161351b9190614649565b6040518091039020827f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d92868660405161355592919061416e565b60405180910390a450505050565b600081815260c960205260408120805482919061357f90614490565b9050119050919050565b60008060006135988585613877565b909250905060008160048111156135b1576135b1614bca565b1480156135cf5750856001600160a01b0316826001600160a01b0316145b156135df57600192505050610ce5565b600080876001600160a01b0316631626ba7e60e01b8888604051602401613607929190614be0565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516136459190614649565b600060405180830381855afa9150503d8060008114613680576040519150601f19603f3d011682016040523d82523d6000602084013e613685565b606091505b5091509150818015613698575080516020145b80156136bf57508051630b135d3f60e11b906136bd90830160209081019084016149d5565b145b98975050505050505050565b60006001600160a01b0384163b156137c857836001600160a01b031663150b7a026136f4611f26565b8786866040518563ffffffff1660e01b81526004016137169493929190614bf9565b6020604051808303816000875af1925050508015613751575060408051601f3d908101601f1916820190925261374e91810190614c2c565b60015b6137ae573d80801561377f576040519150601f19603f3d011682016040523d82523d6000602084013e613784565b606091505b5080516000036137a65760405162461bcd60e51b8152600401610a8e90614ada565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610bd9565b506001610bd9565b600054610100900460ff166137f75760405162461bcd60e51b8152600401610a8e90614b40565b80600080516020614c4a8339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b600054610100900460ff166138505760405162461bcd60e51b8152600401610a8e90614b40565b807f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87613808565b60008082516041036138ad5760208301516040840151606085015160001a6138a1878285856138bc565b945094505050506138b5565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08311156138f357506000905060036139a0565b8460ff16601b1415801561390b57508460ff16601c14155b1561391c57506000905060046139a0565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613970573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613999576000600192509250506139a0565b9150600090505b94509492505050565b6001600160e01b03198116811461100757600080fd5b6000602082840312156139d157600080fd5b8135610ce5816139a9565b60005b838110156139f75781810151838201526020016139df565b50506000910152565b60008151808452613a188160208601602086016139dc565b601f01601f19169290920160200192915050565b602081526000610ce56020830184613a00565b600060208284031215613a5157600080fd5b5035919050565b6001600160a01b038116811461100757600080fd5b60008060408385031215613a8057600080fd5b8235613a8b81613a58565b946020939093013593505050565b60008083601f840112613aab57600080fd5b5081356001600160401b03811115613ac257600080fd5b6020830191508360208285010111156138b557600080fd5b600080600080600060808688031215613af257600080fd5b8535613afd81613a58565b94506020860135613b0d81613a58565b93506040860135925060608601356001600160401b03811115613b2f57600080fd5b613b3b88828901613a99565b969995985093965092949392505050565b60008083601f840112613b5e57600080fd5b5081356001600160401b03811115613b7557600080fd5b6020830191508360208260051b85010111156138b557600080fd5b600080600060408486031215613ba557600080fd5b83356001600160401b03811115613bbb57600080fd5b613bc786828701613b4c565b909790965060209590950135949350505050565b600081518084526020808501808196508360051b8101915082860160005b85811015613c23578284038952613c11848351613a00565b98850198935090840190600101613bf9565b5091979650505050505050565b602081526000610ce56020830184613bdb565b600080600060408486031215613c5857600080fd5b83356001600160401b03811115613c6e57600080fd5b613bc786828701613a99565b600080600060408486031215613c8f57600080fd5b83356001600160401b0380821115613ca657600080fd5b9085019060808288031215613cba57600080fd5b90935060208501359080821115613cd057600080fd5b50613cdd86828701613a99565b9497909650939450505050565b80358015158114613cfa57600080fd5b919050565b60008060008060008060008060a0898b031215613d1b57600080fd5b8835613d2681613a58565b975060208901356001600160401b0380821115613d4257600080fd5b613d4e8c838d01613b4c565b909950975060408b0135915080821115613d6757600080fd5b613d738c838d01613b4c565b909750955060608b0135915080821115613d8c57600080fd5b50613d998b828c01613b4c565b9094509250613dac905060808a01613cea565b90509295985092959890939650565b600080600060608486031215613dd057600080fd5b8335613ddb81613a58565b92506020840135613deb81613a58565b929592945050506040919091013590565b60008060208385031215613e0f57600080fd5b82356001600160401b03811115613e2557600080fd5b613e3185828601613b4c565b90969095509350505050565b600080600080600060608688031215613e5557600080fd5b85356001600160401b0380821115613e6c57600080fd5b613e7889838a01613b4c565b90975095506020880135915080821115613e9157600080fd5b50613e9e88828901613b4c565b96999598509660400135949350505050565b600080600080600060608688031215613ec857600080fd5b85356001600160401b0380821115613edf57600080fd5b613eeb89838a01613a99565b90975095506020880135915080821115613f0457600080fd5b50613e9e88828901613a99565b60008060008060608587031215613f2757600080fd5b8435935060208501356001600160401b03811115613f4457600080fd5b613f5087828801613a99565b9598909750949560400135949350505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715613fa157613fa1613f63565b604052919050565b600082601f830112613fba57600080fd5b81356001600160401b03811115613fd357613fd3613f63565b613fe6601f8201601f1916602001613f79565b818152846020838601011115613ffb57600080fd5b816020850160208301376000918101602001919091529392505050565b60006020828403121561402a57600080fd5b81356001600160401b0381111561404057600080fd5b610bd984828501613fa9565b60006020828403121561405e57600080fd5b8135610ce581613a58565b60006001600160401b0382111561408257614082613f63565b5060051b60200190565b600061409f61409a84614069565b613f79565b8381529050602080820190600585901b8401868111156140be57600080fd5b845b818110156140f95780356001600160401b038111156140df5760008081fd5b6140eb89828901613fa9565b8552509282019282016140c0565b505050509392505050565b60006020828403121561411657600080fd5b81356001600160401b0381111561412c57600080fd5b8201601f8101841361413d57600080fd5b610bd98482356020840161408c565b6000806040838503121561415f57600080fd5b50508035926020909101359150565b6040815260006141816040830185613a00565b8281036020840152610ce18185613a00565b600080600080606085870312156141a957600080fd5b84356141b481613a58565b93506020850135925060408501356001600160401b038111156141d657600080fd5b6141e287828801613a99565b95989497509550505050565b60008060008060008060006080888a03121561420957600080fd5b87356001600160401b038082111561422057600080fd5b61422c8b838c01613a99565b909950975060208a0135965060408a013591508082111561424c57600080fd5b6142588b838c01613b4c565b909650945060608a013591508082111561427157600080fd5b5061427e8a828b01613b4c565b989b979a50959850939692959293505050565b600080602083850312156142a457600080fd5b82356001600160401b038111156142ba57600080fd5b613e3185828601613a99565b600080604083850312156142d957600080fd5b82356142e481613a58565b9150612b1460208401613cea565b6040815260006143056040830185613bdb565b8281036020840152610ce18185613bdb565b6000806000806080858703121561432d57600080fd5b843561433881613a58565b9350602085013561434881613a58565b92506040850135915060608501356001600160401b0381111561436a57600080fd5b61437687828801613fa9565b91505092959194509250565b60008060006040848603121561439757600080fd5b83356143a281613a58565b925060208401356001600160401b038111156143bd57600080fd5b613cdd86828701613a99565b600080604083850312156143dc57600080fd5b82356143e781613a58565b915060208301356143f781613a58565b809150509250929050565b60008060006040848603121561441757600080fd5b8335925060208401356001600160401b038111156143bd57600080fd5b6000806000806080858703121561444a57600080fd5b843561445581613a58565b9350602085013561446581613a58565b9250604085013561447581613a58565b9150606085013561448581613a58565b939692955090935050565b600181811c908216806144a457607f821691505b60208210810361121757634e487b7160e01b600052602260045260246000fd5b6000602082840312156144d657600080fd5b610ce582613cea565b634e487b7160e01b600052603260045260246000fd5b6000808335601e1984360301811261450c57600080fd5b8301803591506001600160401b0382111561452657600080fd5b6020019150368190038213156138b557600080fd5b634e487b7160e01b600052601160045260246000fd5b6000600182016145635761456361453b565b5060010190565b60208082526027908201527f52656769737472793a2053454e4445525f49535f4e4f545f4d494e54494e475f60408201526626a0a720a3a2a960c91b606082015260800190565b6000610ce536848461408c565b60208082526029908201527f52656769737472793a2053454e4445525f49535f4e4f545f415050524f5645446040820152682fa7a92fa7aba722a960b91b606082015260800190565b60208082526022908201527f52656769737472793a20494e53554646494349454e545f5045524d495353494f6040820152614e5360f01b606082015260800190565b6000825161465b8184602087016139dc565b9190910192915050565b601f82111561094157600081815260208120601f850160051c8101602086101561468c5750805b601f850160051c820191505b81811015610fad57828155600101614698565b6001600160401b038311156146c2576146c2613f63565b6146d6836146d08354614490565b83614665565b6000601f84116001811461470a57600085156146f25750838201355b600019600387901b1c1916600186901b178355610ddf565b600083815260209020601f19861690835b8281101561473b578685013582556020948501946001909201910161471b565b50868210156147585760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b602081526000610bd960208301848661476a565b6000608082360312156147b957600080fd5b604051608081016001600160401b0382821081831117156147dc576147dc613f63565b81604052843591506147ed82613a58565b8183526020850135602084015260408501356040840152606085013591508082111561481857600080fd5b5061482536828601613fa9565b60608301525092915050565b600083516148438184602088016139dc565b8351908301906148578183602088016139dc565b01949350505050565b6000602080838503121561487357600080fd5b82356001600160401b0381111561488957600080fd5b8301601f8101851361489a57600080fd5b80356148a861409a82614069565b81815260059190911b820183019083810190878311156148c757600080fd5b928401925b828410156148e5578335825292840192908401906148cc565b979650505050505050565b8082018082111561086e5761086e61453b565b6001600160a01b03848116825283166020820152606060408201819052600090610a9790830184613a00565b634e487b7160e01b600052601260045260246000fd5b6000826149545761495461492f565b500490565b634e487b7160e01b600052600160045260246000fd5b8181038181111561086e5761086e61453b565b6000816149915761499161453b565b506000190190565b600083516149ab8184602088016139dc565b601760f91b90830190815283516149c98160018401602088016139dc565b01600101949350505050565b6000602082840312156149e757600080fd5b5051919050565b600060208284031215614a0057600080fd5b8151610ce581613a58565b8183823760009101908152919050565b81516001600160401b03811115614a3457614a34613f63565b614a4881614a428454614490565b84614665565b602080601f831160018114614a7d5760008415614a655750858301515b600019600386901b1c1916600185901b178555610fad565b600085815260208120601f198616915b82811015614aac57888601518255948401946001909101908401614a8d565b5085821015614aca5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b600082614b3b57614b3b61492f565b500690565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60008451614b9d8184602089016139dc565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b600052602160045260246000fd5b828152604060208201526000610bd96040830184613a00565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090612de390830184613a00565b600060208284031215614c3e57600080fd5b8151610ce5816139a956febe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafea164736f6c6343000811000a", + "bytecode": "0x608060405234801561000f575f80fd5b50614aa08061001d5f395ff3fe608060405234801561000f575f80fd5b5060043610610367575f3560e01c806370a08231116101c9578063ba5d40b7116100fe578063ebf0c7171161009e578063f5c1f76e11610079578063f5c1f76e146107f1578063f7df5c6014610804578063f8c8765e14610817578063ffa1ad741461082a575f80fd5b8063ebf0c717146107d0578063ec129eea146107d6578063f25eb5c1146107e9575f80fd5b8063c87b56dd116100d9578063c87b56dd1461075c578063ce92b33e1461076f578063cf2c52cb14610782578063e985e9c514610795575f80fd5b8063ba5d40b714610723578063bb5b27e114610736578063bebec6b414610749575f80fd5b8063a22cb46511610169578063ab3b87fe11610144578063ab3b87fe146106c9578063b3f9e4cb146106dc578063b85afd28146106ef578063b88d4fde14610710575f80fd5b8063a22cb46514610677578063a3f4df7e1461068a578063a4247400146106b6575f80fd5b80639508b1c4116101a45780639508b1c4146106415780639559c0bd1461065457806395d89b411461065c57806399e0dd7c14610664575f80fd5b806370a08231146106085780637e37479e1461061b57806394d008ef1461062e575f80fd5b806342842e0e1161029f578063509602391161023f578063638e5c781161021a578063638e5c78146105a1578063663f7b2a146105b4578063672b9f81146105c75780636ccbae5f146105e8575f80fd5b8063509602391461055f578063572b6c05146105725780636352211e1461058e575f80fd5b806347c816991161027a57806347c81699146105135780634a72584d146105265780634f558e791461053957806350382c1a1461054c575f80fd5b806342842e0e146104da57806342966c68146104ed578063430c208114610500575f80fd5b80631bf7e13e1161030a578063276fabb1116102e5578063276fabb11461048057806327f18975146104a1578063310bd74b146104b457806340c10f19146104c7575f80fd5b80631bf7e13e146104475780631f71be061461045a57806323b872dd1461046d575f80fd5b8063095ea7b311610345578063095ea7b3146103d3578063150b7a02146103e85780631bd8cc1a146104145780631be5e7ed14610434575f80fd5b806301ffc9a71461036b57806306fdde0314610393578063081812fc146103a8575b5f80fd5b61037e6103793660046138a2565b61084e565b60405190151581526020015b60405180910390f35b61039b61085e565b60405161038a919061390a565b6103bb6103b636600461391c565b6108ee565b6040516001600160a01b03909116815260200161038a565b6103e66103e1366004613947565b610913565b005b6103fb6103f63660046139ae565b61092c565b6040516001600160e01b0319909116815260200161038a565b610427610422366004613a5b565b610a80565b60405161038a9190613afa565b61039b610442366004613b0c565b610b69565b61039b610455366004613b3f565b610bb3565b6103e6610468366004613bbd565b610cbb565b6103e661047b366004613c71565b610d61565b61049361048e366004613caf565b610db4565b60405190815260200161038a565b6103e66104af366004613ced565b610dc2565b6103e66104c236600461391c565b610e0a565b6103e66104d5366004613947565b610e45565b6103e66104e8366004613c71565b610e92565b6103e66104fb36600461391c565b610eac565b61037e61050e366004613947565b610ef0565b6103e6610521366004613d5a565b610efb565b6103e6610534366004613db5565b610f3a565b61037e61054736600461391c565b610f80565b6103e661055a366004613eb2565b610f9e565b6103e661056d366004613ee3565b610fd3565b61037e610580366004613ee3565b6001600160a01b0316301490565b6103bb61059c36600461391c565b611032565b6103e66105af36600461391c565b611091565b6103e66105c2366004613f94565b6110dc565b6105da6105d5366004613fd8565b611114565b60405161038a929190613ff8565b6104936105f636600461391c565b5f908152610100602052604090205490565b610493610616366004613ee3565b61112c565b610493610629366004613ee3565b6111b0565b6103e661063c36600461401c565b6111e0565b6103e661064f366004614073565b61122f565b610493601481565b61039b6112b6565b6103e661067236600461410e565b6112c5565b6103e6610685366004614140565b61134c565b61039b6040518060400160405280600d81526020016c554e533a20526567697374727960981b81525081565b61037e6106c4366004613b3f565b61135e565b6103e66106d7366004613947565b6113a7565b6103bb6106ea36600461391c565b6113ec565b6107026106fd366004613a5b565b611414565b60405161038a92919061416a565b6103e661071e36600461418e565b61152a565b6103e6610731366004613bbd565b611571565b61039b61074436600461391c565b6115e1565b61039b610757366004613ee3565b611680565b61039b61076a36600461391c565b611746565b6103e661077d366004613ced565b6117a9565b6103e66107903660046141f5565b6117e8565b61037e6107a3366004614238565b6001600160a01b039182165f908152606a6020908152604080832093909416825291909152205460ff1690565b5f610493565b6103e66107e4366004613ced565b6118aa565b6103e66118e9565b6104276107ff366004613caf565b61196e565b6103e661081236600461426f565b611a15565b6103e661082536600461429d565b611aa6565b61039b60405180604001604052806005815260200164302e372e3360d81b81525081565b5f61085882611c76565b92915050565b60606065805461086d906142f6565b80601f0160208091040260200160405190810160405280929190818152602001828054610899906142f6565b80156108e45780601f106108bb576101008083540402835291602001916108e4565b820191905f5260205f20905b8154815290600101906020018083116108c757829003601f168201915b5050505050905090565b5f6108f882611cc5565b505f908152606960205260409020546001600160a01b031690565b8061091d81611d23565b6109278383611d89565b505050565b5f7f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378546001600160a01b0316610960611eaa565b6001600160a01b031603610a1c57610976611eaa565b6001600160a01b03166342966c68856040518263ffffffff1660e01b81526004016109a391815260200190565b5f604051808303815f87803b1580156109ba575f80fd5b505af11580156109cc573d5f803e3d5ffd5b5050508215801591506109e657506109e682840184614328565b15610a04576109f53085611eb8565b6109ff8585612002565b610a0e565b610a0e8585611eb8565b50630a85bd0160e11b610a77565b60405162461bcd60e51b815260206004820152602560248201527f52656769737472793a204552433732315f524543454956494e475f50524f4849604482015264109255115160da1b60648201526084015b60405180910390fd5b95945050505050565b6060826001600160401b03811115610a9a57610a9a613e03565b604051908082528060200260200182016040528015610acd57816020015b6060815260200190600190039081610ab85790505b5090505f5b83811015610b6157610b3c858583818110610aef57610aef614341565b9050602002810190610b019190614355565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508792506120a6915050565b828281518110610b4e57610b4e614341565b6020908102919091010152600101610ad2565b509392505050565b6060610bab84848080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508692506120a6915050565b949350505050565b60605f5a9050610bc485858561135e565b610c205760405162461bcd60e51b815260206004820152602760248201527f554e535265676973747279466f727761726465723a205349474e41545552455f6044820152661253959053125160ca1b6064820152608401610a6e565b610cb0610c306020870187613ee3565b30604088013584610c4460608b018b614355565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f920191909152506120da92505050565b9150505b9392505050565b610134546001600160a01b0316610cd0611eaa565b6001600160a01b031614610cf65760405162461bcd60e51b8152600401610a6e90614397565b5f610d09610d04888a6143de565b6121b6565b9050610d1481612204565b610d27610d2082611032565b8a83612270565b610d348686868685612413565b8115610d5657610d568982610d51610d4c8b8d6143de565b612476565b6124ea565b505050505050505050565b80610d73610d6d611eaa565b8261252b565b610d8f5760405162461bcd60e51b8152600401610a6e906143ea565b81610d9981611d23565b610da283612204565b610dad858585612270565b5050505050565b5f610cb4610d0483856143de565b80610dce610d6d611eaa565b610dea5760405162461bcd60e51b8152600401610a6e906143ea565b81610df481611d23565b610e0187878787876125a7565b50505050505050565b80610e16610d6d611eaa565b610e325760405162461bcd60e51b8152600401610a6e906143ea565b81610e3c81611d23565b61092783612204565b610e4d6125ff565b6001600160a01b0316610e5e611eaa565b6001600160a01b031614610e845760405162461bcd60e51b8152600401610a6e90614433565b610e8e8282611eb8565b5050565b61092783838360405180602001604052805f81525061152a565b80610eb8610d6d611eaa565b610ed45760405162461bcd60e51b8152600401610a6e906143ea565b81610ede81611d23565b610ee783612204565b610927836126f9565b5f610cb4838361252b565b80610f07610d6d611eaa565b610f235760405162461bcd60e51b8152600401610a6e906143ea565b81610f2d81611d23565b610e01878787878761279b565b80610f46610d6d611eaa565b610f625760405162461bcd60e51b8152600401610a6e906143ea565b81610f6c81611d23565b610f7886868686612876565b505050505050565b5f818152606760205260408120546001600160a01b03161515610858565b610fd081604051602001610fb29190614475565b604051602081830303815290604052805190602001205f1c82612915565b50565b610134546001600160a01b0316610fe8611eaa565b6001600160a01b03161461100e5760405162461bcd60e51b8152600401610a6e90614397565b6001600160a01b03165f90815261013660205260409020805460ff19166001179055565b5f818152606760205260408120546001600160a01b0316806108585760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610a6e565b8061109d610d6d611eaa565b6110b95760405162461bcd60e51b8152600401610a6e906143ea565b6110cb6110c4611eaa565b3084612270565b610e8e6110d6611eaa565b83612002565b5f6110e6826121b6565b90506110f181612939565b6110fa81611d23565b610e8e611105611eaa565b8261110f85612476565b6129a9565b6060806111218484612a2c565b909590945092505050565b5f6001600160a01b0382166111955760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b6064820152608401610a6e565b506001600160a01b03165f9081526068602052604090205490565b6001600160a01b0381165f90815261013560205260408120546111d281612a4d565b6111da578091505b50919050565b6111e86125ff565b6001600160a01b03166111f9611eaa565b6001600160a01b03161461121f5760405162461bcd60e51b8152600401610a6e90614433565b6112298484611eb8565b50505050565b6112398787612a94565b611241611eaa565b6001600160a01b031661125386611032565b6001600160a01b0316146112a95760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610a6e565b610e018484848489612413565b60606066805461086d906142f6565b610134546001600160a01b03166112da611eaa565b6001600160a01b0316146113005760405162461bcd60e51b8152600401610a6e90614397565b61013361130e8284836144d4565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b82826040516113409291906145b5565b60405180910390a15050565b610e8e611357611eaa565b8383612afd565b5f610bab61136b856145c8565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250612bca92505050565b806113b3610d6d611eaa565b6113cf5760405162461bcd60e51b8152600401610a6e906143ea565b816113d981611d23565b6112296113e584611032565b8585612270565b5f818152606760205260408120546001600160a01b031661140d575f610858565b3092915050565b606080836001600160401b0381111561142f5761142f613e03565b60405190808252806020026020018201604052801561146257816020015b606081526020019060019003908161144d5790505b509150836001600160401b0381111561147d5761147d613e03565b6040519080825280602002602001820160405280156114b057816020015b606081526020019060019003908161149b5790505b5090505f5b84811015611521576114df8686838181106114d2576114d2614341565b9050602002013585612a2c565b8483815181106114f1576114f1614341565b6020026020010184848151811061150a5761150a614341565b6020908102919091010191909152526001016114b5565b50935093915050565b81611536610d6d611eaa565b6115525760405162461bcd60e51b8152600401610a6e906143ea565b8261155c81611d23565b61156584612204565b610f7886868686612d0f565b610134546001600160a01b0316611586611eaa565b6001600160a01b0316146115ac5760405162461bcd60e51b8152600401610a6e90614397565b5f6115ba610d04888a6143de565b90506115d489826115ce610d4c8b8d6143de565b85612d42565b610d568686868685612413565b5f81815260c9602052604090208054606091906115fd906142f6565b80601f0160208091040260200160405190810160405280929190818152602001828054611629906142f6565b80156116745780601f1061164b57610100808354040283529160200191611674565b820191905f5260205f20905b81548152906001019060200180831161165757829003601f168201915b50505050509050919050565b6001600160a01b0381165f90815261013560205260409020546060906116a581612a4d565b6111da575f8181526101386020526040902080546116c2906142f6565b80601f01602080910402602001604051908101604052809291908181526020018280546116ee906142f6565b80156117395780601f1061171057610100808354040283529160200191611739565b820191905f5260205f20905b81548152906001019060200180831161171c57829003601f168201915b5050505050915050919050565b606061175182611cc5565b5f61175a612d95565b90505f8151116117785760405180602001604052805f815250610cb4565b8061178284612da5565b60405160200161179392919061464f565b6040516020818303038152906040529392505050565b806117b5610d6d611eaa565b6117d15760405162461bcd60e51b8152600401610a6e906143ea565b816117db81611d23565b610e018787878787612413565b7f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87546001600160a01b031661181b611eaa565b6001600160a01b0316146118415760405162461bcd60e51b8152600401610a6e90614433565b6020819003611863575f6118578284018461391c565b90506112298482611eb8565b5f6118708284018461467d565b80519091505f5b81811015610f78576118a28684838151811061189557611895614341565b6020026020010151611eb8565b600101611877565b806118b6610d6d611eaa565b6118d25760405162461bcd60e51b8152600401610a6e906143ea565b816118dc81611d23565b610e018787878787612ea1565b5f6118f2611eaa565b6001600160a01b0381165f9081526101356020526040812054919250036119655760405162461bcd60e51b815260206004820152602160248201527f52656769737472793a20524556455253455f5245434f52445f49535f454d50546044820152605960f81b6064820152608401610a6e565b610fd081612eb7565b6060816001600160401b0381111561198857611988613e03565b6040519080825280602002602001820160405280156119bb57816020015b60608152602001906001900390816119a65790505b5090505f5b82811015611a0e576119e98484838181106119dd576119dd614341565b905060200201356115e1565b8282815181106119fb576119fb614341565b60209081029190910101526001016119c0565b5092915050565b610134546001600160a01b0316611a2a611eaa565b6001600160a01b031614611a505760405162461bcd60e51b8152600401610a6e90614397565b61013454611a67906001600160a01b031684611eb8565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c39528383604051611a999291906145b5565b60405180910390a2505050565b5f54610100900460ff1615808015611ac457505f54600160ff909116105b80611add5750303b158015611add57505f5460ff166001145b611b405760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610a6e565b5f805460ff191660011790558015611b61575f805461ff0019166101001790555b61013480546001600160a01b0319166001600160a01b038716179055837f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec9237880546001600160a01b0319166001600160a01b03929092169190911790556040805180820182526013815272556e73746f707061626c6520446f6d61696e7360681b60208083019190915282518084019093526002835261155160f21b90830152611c0991612efb565b611c11612f3a565b611c19612f3a565b611c2283612f62565b611c2b82612f91565b8015610dad575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b5f6001600160e01b031982166380ac58cd60e01b1480611ca657506001600160e01b03198216635b5e139f60e01b145b8061085857506301ffc9a760e01b6001600160e01b0319831614610858565b5f818152606760205260409020546001600160a01b0316610fd05760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610a6e565b303303611d8057611d32612fc0565b8114610fd05760405162461bcd60e51b815260206004820152601760248201527f52656769737472793a20544f4b454e5f494e56414c49440000000000000000006044820152606401610a6e565b610fd081612fd3565b5f611d9382611032565b9050806001600160a01b0316836001600160a01b031603611e005760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b6064820152608401610a6e565b806001600160a01b0316611e12611eaa565b6001600160a01b03161480611e2e5750611e2e816107a3611eaa565b611ea05760405162461bcd60e51b815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c00006064820152608401610a6e565b6109278383612fff565b5f611eb361306c565b905090565b6001600160a01b038216611f0e5760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610a6e565b5f818152606760205260409020546001600160a01b031615611f725760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610a6e565b611f7d5f8383613086565b6001600160a01b0382165f908152606860205260408120805460019290611fa590849061471c565b90915550505f8181526067602052604080822080546001600160a01b0319166001600160a01b03861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b5f61200b6125ff565b90506120178183612fff565b5f80516020614a7483398151915254604080516020808201869052825180830390910181528183019283905263e3dec8fb60e01b9092526001600160a01b0390921691829163e3dec8fb9161207391889130919060440161472f565b5f604051808303815f87803b15801561208a575f80fd5b505af115801561209c573d5f803e3d5ffd5b5050505050505050565b6060610cb4836040516020016120bc9190614475565b604051602081830303815290604052805190602001205f1c83613121565b60606120e585612fd3565b5f80876001600160a01b0316866120fe8b8a89896131fc565b60405161210b9190614475565b5f604051808303815f8787f1925050503d805f8114612145576040519150601f19603f3d011682016040523d82523d5f602084013e61214a565b606091505b50909250905061215b603f8761476e565b5a1161216957612169614781565b6121a982826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061322c565b9998505050505050505050565b80515f9081905b8015611a0e576121f082856121d3600185614795565b815181106121e3576121e3614341565b6020026020010151613265565b9150806121fc816147a8565b9150506121bd565b61220d8161330f565b60405160200161221f91815260200190565b60408051601f1981840301815282825280516020918201205f85815260cb9092529181209190915582917f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9190a250565b826001600160a01b031661228382611032565b6001600160a01b0316146122e75760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b6064820152608401610a6e565b6001600160a01b0382166123495760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610a6e565b612354838383613086565b61235e5f82612fff565b6001600160a01b0383165f908152606860205260408120805460019290612386908490614795565b90915550506001600160a01b0382165f9081526068602052604081208054600192906123b390849061471c565b90915550505f8181526067602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b5f5b84811015610f785761246e86868381811061243257612432614341565b90506020028101906124449190614355565b86868581811061245657612456614341565b90506020028101906124689190614355565b8661279b565b600101612415565b60605f825f8151811061248b5761248b614341565b602002602001015190505f600190505b8351811015611a0e57818482815181106124b7576124b7614341565b60200260200101516040516020016124d09291906147bd565b60408051601f19818403018152919052915060010161249b565b61dead6001600160a01b0384161480159061251b57506001600160a01b0383165f9081526101356020526040902054155b15610927576109278383836129a9565b5f8061253683611032565b9050806001600160a01b0316846001600160a01b0316148061257c57506001600160a01b038082165f908152606a602090815260408083209388168352929052205460ff165b80610bab5750836001600160a01b0316612595846108ee565b6001600160a01b031614949350505050565b5f5b84811015610f78576125f78686838181106125c6576125c6614341565b905060200201358585848181106125df576125df614341565b90506020028101906125f19190614355565b85612876565b6001016125a9565b5f80516020614a74833981519152545f906001600160a01b031680156126f55760405163721804d360e11b81523060048201525f906001600160a01b0383169063e43009a690602401602060405180830381865afa158015612663573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061268791906147f8565b60405163e66f960360e01b8152600481018290529091506001600160a01b0383169063e66f960390602401602060405180830381865afa1580156126cd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906126f1919061480f565b9250505b5090565b5f61270382611032565b9050612710815f84613086565b61271a5f83612fff565b6001600160a01b0381165f908152606860205260408120805460019290612742908490614795565b90915550505f8281526067602052604080822080546001600160a01b0319169055518391906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b5f85856040516020016127af92919061482a565b60408051601f198184030181528282528051602091820120601f890182900482028401820190925287835290925061280291839189908990819084018382808284375f9201919091525061291592505050565b610f788187878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8b0181900481028201810190925289815292508991508890819084018382808284375f92019190915250889250613335915050565b61287f84613461565b6128cb5760405162461bcd60e51b815260206004820152601c60248201527f5265636f726453746f726167653a204b45595f4e4f545f464f554e44000000006044820152606401610a6e565b611229846128d8866115e1565b85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250879250613335915050565b61291e82613461565b610e8e575f82815260c9602052604090206109278282614839565b612941611eaa565b6001600160a01b031661295382611032565b6001600160a01b031614610fd05760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610a6e565b5f8281526101386020526040902080546129c2906142f6565b90505f036129e4575f828152610138602052604090206129e28282614839565b505b6001600160a01b0383165f8181526101356020526040808220859055518492917feb76a21470988c474a21f690cc28fee1ed511bd812dc3c21fd0f49c5e5d4708a91a3505050565b606080612a38846115e1565b9150612a448484613121565b90509250929050565b5f818152610137602052604081205460ff16801561085857506101365f612a72611eaa565b6001600160a01b0316815260208101919091526040015f205460ff1692915050565b5f80516020614a7483398151915254604051633805550f60e01b81526001600160a01b03909116908190633805550f90612ad490869086906004016145b5565b5f604051808303815f87803b158015612aeb575f80fd5b505af1158015610e01573d5f803e3d5ffd5b816001600160a01b0316836001600160a01b031603612b5e5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610a6e565b6001600160a01b038381165f818152606a6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015612c0e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612c3291906147f8565b90505f612cdf866060015180519060200120868860200151604051602001612c7f9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b9050818660200151148015612d0557508551612d05906001600160a01b03168286613486565b9695505050505050565b612d1a848484612270565b612d26848484846135c1565b6112295760405162461bcd60e51b8152600401610a6e906148f4565b612d4c8484611eb8565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c395283604051612d7c919061390a565b60405180910390a28015611229576112298484846124ea565b6060610133805461086d906142f6565b6060815f03612dcb5750506040805180820190915260018152600360fc1b602082015290565b815f5b8115612df45780612dde81614946565b9150612ded9050600a8361476e565b9150612dce565b5f816001600160401b03811115612e0d57612e0d613e03565b6040519080825280601f01601f191660200182016040528015612e37576020820181803683370190505b5090505b8415610bab57612e4c600183614795565b9150612e59600a8661495e565b612e6490603061471c565b60f81b818381518110612e7957612e79614341565b60200101906001600160f81b03191690815f1a905350612e9a600a8661476e565b9450612e3b565b612eaa81612204565b610dad8585858585612413565b6001600160a01b0381165f8181526101356020526040808220829055517ffcf5eec0cfa3e6332f5f0e63ec242d71f866a61d121d6cdf5c2eb3b668a26c4f9190a250565b5f54610100900460ff16612f215760405162461bcd60e51b8152600401610a6e90614971565b6065612f2d8382614839565b5060666109278282614839565b5f54610100900460ff16612f605760405162461bcd60e51b8152600401610a6e90614971565b565b5f54610100900460ff16612f885760405162461bcd60e51b8152600401610a6e90614971565b610fd0816136c2565b5f54610100900460ff16612fb75760405162461bcd60e51b8152600401610a6e90614971565b610fd081613719565b5f303303612fd05750601f193601355b90565b5f8181526101006020526040902054612fed90600161471c565b5f918252610100602052604090912055565b5f81815260696020526040902080546001600160a01b0319166001600160a01b038416908117909155819061303382611032565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b5f303303613081575060331936013560601c90565b503390565b5f818152610137602052604090205460ff1615806130ac57506001600160a01b03821615155b6130f85760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a20544f4b454e5f555047524144454400000000000000006044820152606401610a6e565b6001600160a01b0383165f90815261013560205260409020548190036109275761092783612eb7565b606061312c82612a4d565b15613145575060408051602081019091525f8152610858565b60ca5f6131518461330f565b81526020019081526020015f205f8481526020019081526020015f208054613178906142f6565b80601f01602080910402602001604051908101604052809291908181526020018280546131a4906142f6565b80156131ef5780601f106131c6576101008083540402835291602001916131ef565b820191905f5260205f20905b8154815290600101906020018083116131d257829003601f168201915b5050505050905092915050565b6060828585604051602001613213939291906149bc565b6040516020818303038152906040529050949350505050565b6060831561323b575081610cb4565b82511561324b5782518084602001fd5b8160405162461bcd60e51b8152600401610a6e919061390a565b5f81515f036132ae5760405162461bcd60e51b815260206004820152601560248201527452656769737472793a204c4142454c5f454d50545960581b6044820152606401610a6e565b82826040516020016132c09190614475565b604051602081830303815290604052805190602001206040516020016132f0929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b5f81815260cb6020526040812054156126f5575f82815260cb6020526040902054610858565b60ca5f6133418361330f565b81526020019081526020015f205f8581526020019081526020015f208054613368906142f6565b90505f036133bf578260405161337e9190614475565b6040518091039020817f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f86856040516133b6919061390a565b60405180910390a35b8160ca5f6133cc8461330f565b81526020019081526020015f205f8681526020019081526020015f2090816133f49190614839565b50816040516134039190614475565b6040518091039020836040516134199190614475565b6040518091039020827f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d928686604051613453929190613ff8565b60405180910390a450505050565b5f81815260c960205260408120805482919061347c906142f6565b9050119050919050565b5f805f6134938585613766565b90925090505f8160048111156134ab576134ab6149fa565b1480156134c95750856001600160a01b0316826001600160a01b0316145b156134d957600192505050610cb4565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401613500929190614a0e565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161353e9190614475565b5f60405180830381855afa9150503d805f8114613576576040519150601f19603f3d011682016040523d82523d5f602084013e61357b565b606091505b509150915081801561358e575080516020145b80156135b557508051630b135d3f60e11b906135b390830160209081019084016147f8565b145b98975050505050505050565b5f6001600160a01b0384163b156136ba57836001600160a01b031663150b7a026135e9611eaa565b8786866040518563ffffffff1660e01b815260040161360b9493929190614a26565b6020604051808303815f875af1925050508015613645575060408051601f3d908101601f1916820190925261364291810190614a58565b60015b6136a0573d808015613672576040519150601f19603f3d011682016040523d82523d5f602084013e613677565b606091505b5080515f036136985760405162461bcd60e51b8152600401610a6e906148f4565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610bab565b506001610bab565b5f54610100900460ff166136e85760405162461bcd60e51b8152600401610a6e90614971565b805f80516020614a748339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b5f54610100900460ff1661373f5760405162461bcd60e51b8152600401610a6e90614971565b807f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b876136f8565b5f80825160410361379a576020830151604084015160608501515f1a61378e878285856137a8565b945094505050506137a1565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08311156137dd57505f90506003613884565b8460ff16601b141580156137f557508460ff16601c14155b1561380557505f90506004613884565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613856573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b03811661387e575f60019250925050613884565b91505f90505b94509492505050565b6001600160e01b031981168114610fd0575f80fd5b5f602082840312156138b2575f80fd5b8135610cb48161388d565b5f5b838110156138d75781810151838201526020016138bf565b50505f910152565b5f81518084526138f68160208601602086016138bd565b601f01601f19169290920160200192915050565b602081525f610cb460208301846138df565b5f6020828403121561392c575f80fd5b5035919050565b6001600160a01b0381168114610fd0575f80fd5b5f8060408385031215613958575f80fd5b823561396381613933565b946020939093013593505050565b5f8083601f840112613981575f80fd5b5081356001600160401b03811115613997575f80fd5b6020830191508360208285010111156137a1575f80fd5b5f805f805f608086880312156139c2575f80fd5b85356139cd81613933565b945060208601356139dd81613933565b93506040860135925060608601356001600160401b038111156139fe575f80fd5b613a0a88828901613971565b969995985093965092949392505050565b5f8083601f840112613a2b575f80fd5b5081356001600160401b03811115613a41575f80fd5b6020830191508360208260051b85010111156137a1575f80fd5b5f805f60408486031215613a6d575f80fd5b83356001600160401b03811115613a82575f80fd5b613a8e86828701613a1b565b909790965060209590950135949350505050565b5f8282518085526020808601955060208260051b840101602086015f5b84811015613aed57601f19868403018952613adb8383516138df565b98840198925090830190600101613abf565b5090979650505050505050565b602081525f610cb46020830184613aa2565b5f805f60408486031215613b1e575f80fd5b83356001600160401b03811115613b33575f80fd5b613a8e86828701613971565b5f805f60408486031215613b51575f80fd5b83356001600160401b0380821115613b67575f80fd5b9085019060808288031215613b7a575f80fd5b90935060208501359080821115613b8f575f80fd5b50613b9c86828701613971565b9497909650939450505050565b80358015158114613bb8575f80fd5b919050565b5f805f805f805f8060a0898b031215613bd4575f80fd5b8835613bdf81613933565b975060208901356001600160401b0380821115613bfa575f80fd5b613c068c838d01613a1b565b909950975060408b0135915080821115613c1e575f80fd5b613c2a8c838d01613a1b565b909750955060608b0135915080821115613c42575f80fd5b50613c4f8b828c01613a1b565b9094509250613c62905060808a01613ba9565b90509295985092959890939650565b5f805f60608486031215613c83575f80fd5b8335613c8e81613933565b92506020840135613c9e81613933565b929592945050506040919091013590565b5f8060208385031215613cc0575f80fd5b82356001600160401b03811115613cd5575f80fd5b613ce185828601613a1b565b90969095509350505050565b5f805f805f60608688031215613d01575f80fd5b85356001600160401b0380821115613d17575f80fd5b613d2389838a01613a1b565b90975095506020880135915080821115613d3b575f80fd5b50613d4888828901613a1b565b96999598509660400135949350505050565b5f805f805f60608688031215613d6e575f80fd5b85356001600160401b0380821115613d84575f80fd5b613d9089838a01613971565b90975095506020880135915080821115613da8575f80fd5b50613d4888828901613971565b5f805f8060608587031215613dc8575f80fd5b8435935060208501356001600160401b03811115613de4575f80fd5b613df087828801613971565b9598909750949560400135949350505050565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f191681016001600160401b0381118282101715613e3f57613e3f613e03565b604052919050565b5f82601f830112613e56575f80fd5b81356001600160401b03811115613e6f57613e6f613e03565b613e82601f8201601f1916602001613e17565b818152846020838601011115613e96575f80fd5b816020850160208301375f918101602001919091529392505050565b5f60208284031215613ec2575f80fd5b81356001600160401b03811115613ed7575f80fd5b610bab84828501613e47565b5f60208284031215613ef3575f80fd5b8135610cb481613933565b5f6001600160401b03821115613f1657613f16613e03565b5060051b60200190565b5f613f32613f2d84613efe565b613e17565b8381529050602080820190600585901b840186811115613f50575f80fd5b845b81811015613f895780356001600160401b03811115613f6f575f80fd5b613f7b89828901613e47565b855250928201928201613f52565b505050509392505050565b5f60208284031215613fa4575f80fd5b81356001600160401b03811115613fb9575f80fd5b8201601f81018413613fc9575f80fd5b610bab84823560208401613f20565b5f8060408385031215613fe9575f80fd5b50508035926020909101359150565b604081525f61400a60408301856138df565b8281036020840152610cb081856138df565b5f805f806060858703121561402f575f80fd5b843561403a81613933565b93506020850135925060408501356001600160401b0381111561405b575f80fd5b61406787828801613971565b95989497509550505050565b5f805f805f805f6080888a031215614089575f80fd5b87356001600160401b038082111561409f575f80fd5b6140ab8b838c01613971565b909950975060208a0135965060408a01359150808211156140ca575f80fd5b6140d68b838c01613a1b565b909650945060608a01359150808211156140ee575f80fd5b506140fb8a828b01613a1b565b989b979a50959850939692959293505050565b5f806020838503121561411f575f80fd5b82356001600160401b03811115614134575f80fd5b613ce185828601613971565b5f8060408385031215614151575f80fd5b823561415c81613933565b9150612a4460208401613ba9565b604081525f61417c6040830185613aa2565b8281036020840152610cb08185613aa2565b5f805f80608085870312156141a1575f80fd5b84356141ac81613933565b935060208501356141bc81613933565b92506040850135915060608501356001600160401b038111156141dd575f80fd5b6141e987828801613e47565b91505092959194509250565b5f805f60408486031215614207575f80fd5b833561421281613933565b925060208401356001600160401b0381111561422c575f80fd5b613b9c86828701613971565b5f8060408385031215614249575f80fd5b823561425481613933565b9150602083013561426481613933565b809150509250929050565b5f805f60408486031215614281575f80fd5b8335925060208401356001600160401b0381111561422c575f80fd5b5f805f80608085870312156142b0575f80fd5b84356142bb81613933565b935060208501356142cb81613933565b925060408501356142db81613933565b915060608501356142eb81613933565b939692955090935050565b600181811c9082168061430a57607f821691505b6020821081036111da57634e487b7160e01b5f52602260045260245ffd5b5f60208284031215614338575f80fd5b610cb482613ba9565b634e487b7160e01b5f52603260045260245ffd5b5f808335601e1984360301811261436a575f80fd5b8301803591506001600160401b03821115614383575f80fd5b6020019150368190038213156137a1575f80fd5b60208082526027908201527f52656769737472793a2053454e4445525f49535f4e4f545f4d494e54494e475f60408201526626a0a720a3a2a960c91b606082015260800190565b5f610cb4368484613f20565b60208082526029908201527f52656769737472793a2053454e4445525f49535f4e4f545f415050524f5645446040820152682fa7a92fa7aba722a960b91b606082015260800190565b60208082526022908201527f52656769737472793a20494e53554646494349454e545f5045524d495353494f6040820152614e5360f01b606082015260800190565b5f82516144868184602087016138bd565b9190910192915050565b601f82111561092757805f5260205f20601f840160051c810160208510156144b55750805b601f840160051c820191505b81811015610dad575f81556001016144c1565b6001600160401b038311156144eb576144eb613e03565b6144ff836144f983546142f6565b83614490565b5f601f841160018114614530575f85156145195750838201355b5f19600387901b1c1916600186901b178355610dad565b5f83815260208120601f198716915b8281101561455f578685013582556020948501946001909201910161453f565b508682101561457b575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b602081525f610bab60208301848661458d565b5f608082360312156145d8575f80fd5b604051608081016001600160401b0382821081831117156145fb576145fb613e03565b816040528435915061460c82613933565b81835260208501356020840152604085013560408401526060850135915080821115614636575f80fd5b5061464336828601613e47565b60608301525092915050565b5f83516146608184602088016138bd565b8351908301906146748183602088016138bd565b01949350505050565b5f602080838503121561468e575f80fd5b82356001600160401b038111156146a3575f80fd5b8301601f810185136146b3575f80fd5b80356146c1613f2d82613efe565b81815260059190911b820183019083810190878311156146df575f80fd5b928401925b828410156146fd578335825292840192908401906146e4565b979650505050505050565b634e487b7160e01b5f52601160045260245ffd5b8082018082111561085857610858614708565b6001600160a01b038481168252831660208201526060604082018190525f90610a77908301846138df565b634e487b7160e01b5f52601260045260245ffd5b5f8261477c5761477c61475a565b500490565b634e487b7160e01b5f52600160045260245ffd5b8181038181111561085857610858614708565b5f816147b6576147b6614708565b505f190190565b5f83516147ce8184602088016138bd565b601760f91b90830190815283516147ec8160018401602088016138bd565b01600101949350505050565b5f60208284031215614808575f80fd5b5051919050565b5f6020828403121561481f575f80fd5b8151610cb481613933565b818382375f9101908152919050565b81516001600160401b0381111561485257614852613e03565b6148668161486084546142f6565b84614490565b602080601f831160018114614899575f84156148825750858301515b5f19600386901b1c1916600185901b178555610f78565b5f85815260208120601f198616915b828110156148c7578886015182559484019460019091019084016148a8565b50858210156148e457878501515f19600388901b60f8161c191681555b5050505050600190811b01905550565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b5f6001820161495757614957614708565b5060010190565b5f8261496c5761496c61475a565b500690565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b5f84516149cd8184602089016138bd565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f610bab60408301846138df565b6001600160a01b03858116825284166020820152604081018390526080606082018190525f90612d05908301846138df565b5f60208284031215614a68575f80fd5b8151610cb48161388d56febe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafea164736f6c6343000818000a", + "deployedBytecode": "0x608060405234801561000f575f80fd5b5060043610610367575f3560e01c806370a08231116101c9578063ba5d40b7116100fe578063ebf0c7171161009e578063f5c1f76e11610079578063f5c1f76e146107f1578063f7df5c6014610804578063f8c8765e14610817578063ffa1ad741461082a575f80fd5b8063ebf0c717146107d0578063ec129eea146107d6578063f25eb5c1146107e9575f80fd5b8063c87b56dd116100d9578063c87b56dd1461075c578063ce92b33e1461076f578063cf2c52cb14610782578063e985e9c514610795575f80fd5b8063ba5d40b714610723578063bb5b27e114610736578063bebec6b414610749575f80fd5b8063a22cb46511610169578063ab3b87fe11610144578063ab3b87fe146106c9578063b3f9e4cb146106dc578063b85afd28146106ef578063b88d4fde14610710575f80fd5b8063a22cb46514610677578063a3f4df7e1461068a578063a4247400146106b6575f80fd5b80639508b1c4116101a45780639508b1c4146106415780639559c0bd1461065457806395d89b411461065c57806399e0dd7c14610664575f80fd5b806370a08231146106085780637e37479e1461061b57806394d008ef1461062e575f80fd5b806342842e0e1161029f578063509602391161023f578063638e5c781161021a578063638e5c78146105a1578063663f7b2a146105b4578063672b9f81146105c75780636ccbae5f146105e8575f80fd5b8063509602391461055f578063572b6c05146105725780636352211e1461058e575f80fd5b806347c816991161027a57806347c81699146105135780634a72584d146105265780634f558e791461053957806350382c1a1461054c575f80fd5b806342842e0e146104da57806342966c68146104ed578063430c208114610500575f80fd5b80631bf7e13e1161030a578063276fabb1116102e5578063276fabb11461048057806327f18975146104a1578063310bd74b146104b457806340c10f19146104c7575f80fd5b80631bf7e13e146104475780631f71be061461045a57806323b872dd1461046d575f80fd5b8063095ea7b311610345578063095ea7b3146103d3578063150b7a02146103e85780631bd8cc1a146104145780631be5e7ed14610434575f80fd5b806301ffc9a71461036b57806306fdde0314610393578063081812fc146103a8575b5f80fd5b61037e6103793660046138a2565b61084e565b60405190151581526020015b60405180910390f35b61039b61085e565b60405161038a919061390a565b6103bb6103b636600461391c565b6108ee565b6040516001600160a01b03909116815260200161038a565b6103e66103e1366004613947565b610913565b005b6103fb6103f63660046139ae565b61092c565b6040516001600160e01b0319909116815260200161038a565b610427610422366004613a5b565b610a80565b60405161038a9190613afa565b61039b610442366004613b0c565b610b69565b61039b610455366004613b3f565b610bb3565b6103e6610468366004613bbd565b610cbb565b6103e661047b366004613c71565b610d61565b61049361048e366004613caf565b610db4565b60405190815260200161038a565b6103e66104af366004613ced565b610dc2565b6103e66104c236600461391c565b610e0a565b6103e66104d5366004613947565b610e45565b6103e66104e8366004613c71565b610e92565b6103e66104fb36600461391c565b610eac565b61037e61050e366004613947565b610ef0565b6103e6610521366004613d5a565b610efb565b6103e6610534366004613db5565b610f3a565b61037e61054736600461391c565b610f80565b6103e661055a366004613eb2565b610f9e565b6103e661056d366004613ee3565b610fd3565b61037e610580366004613ee3565b6001600160a01b0316301490565b6103bb61059c36600461391c565b611032565b6103e66105af36600461391c565b611091565b6103e66105c2366004613f94565b6110dc565b6105da6105d5366004613fd8565b611114565b60405161038a929190613ff8565b6104936105f636600461391c565b5f908152610100602052604090205490565b610493610616366004613ee3565b61112c565b610493610629366004613ee3565b6111b0565b6103e661063c36600461401c565b6111e0565b6103e661064f366004614073565b61122f565b610493601481565b61039b6112b6565b6103e661067236600461410e565b6112c5565b6103e6610685366004614140565b61134c565b61039b6040518060400160405280600d81526020016c554e533a20526567697374727960981b81525081565b61037e6106c4366004613b3f565b61135e565b6103e66106d7366004613947565b6113a7565b6103bb6106ea36600461391c565b6113ec565b6107026106fd366004613a5b565b611414565b60405161038a92919061416a565b6103e661071e36600461418e565b61152a565b6103e6610731366004613bbd565b611571565b61039b61074436600461391c565b6115e1565b61039b610757366004613ee3565b611680565b61039b61076a36600461391c565b611746565b6103e661077d366004613ced565b6117a9565b6103e66107903660046141f5565b6117e8565b61037e6107a3366004614238565b6001600160a01b039182165f908152606a6020908152604080832093909416825291909152205460ff1690565b5f610493565b6103e66107e4366004613ced565b6118aa565b6103e66118e9565b6104276107ff366004613caf565b61196e565b6103e661081236600461426f565b611a15565b6103e661082536600461429d565b611aa6565b61039b60405180604001604052806005815260200164302e372e3360d81b81525081565b5f61085882611c76565b92915050565b60606065805461086d906142f6565b80601f0160208091040260200160405190810160405280929190818152602001828054610899906142f6565b80156108e45780601f106108bb576101008083540402835291602001916108e4565b820191905f5260205f20905b8154815290600101906020018083116108c757829003601f168201915b5050505050905090565b5f6108f882611cc5565b505f908152606960205260409020546001600160a01b031690565b8061091d81611d23565b6109278383611d89565b505050565b5f7f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378546001600160a01b0316610960611eaa565b6001600160a01b031603610a1c57610976611eaa565b6001600160a01b03166342966c68856040518263ffffffff1660e01b81526004016109a391815260200190565b5f604051808303815f87803b1580156109ba575f80fd5b505af11580156109cc573d5f803e3d5ffd5b5050508215801591506109e657506109e682840184614328565b15610a04576109f53085611eb8565b6109ff8585612002565b610a0e565b610a0e8585611eb8565b50630a85bd0160e11b610a77565b60405162461bcd60e51b815260206004820152602560248201527f52656769737472793a204552433732315f524543454956494e475f50524f4849604482015264109255115160da1b60648201526084015b60405180910390fd5b95945050505050565b6060826001600160401b03811115610a9a57610a9a613e03565b604051908082528060200260200182016040528015610acd57816020015b6060815260200190600190039081610ab85790505b5090505f5b83811015610b6157610b3c858583818110610aef57610aef614341565b9050602002810190610b019190614355565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508792506120a6915050565b828281518110610b4e57610b4e614341565b6020908102919091010152600101610ad2565b509392505050565b6060610bab84848080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508692506120a6915050565b949350505050565b60605f5a9050610bc485858561135e565b610c205760405162461bcd60e51b815260206004820152602760248201527f554e535265676973747279466f727761726465723a205349474e41545552455f6044820152661253959053125160ca1b6064820152608401610a6e565b610cb0610c306020870187613ee3565b30604088013584610c4460608b018b614355565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f920191909152506120da92505050565b9150505b9392505050565b610134546001600160a01b0316610cd0611eaa565b6001600160a01b031614610cf65760405162461bcd60e51b8152600401610a6e90614397565b5f610d09610d04888a6143de565b6121b6565b9050610d1481612204565b610d27610d2082611032565b8a83612270565b610d348686868685612413565b8115610d5657610d568982610d51610d4c8b8d6143de565b612476565b6124ea565b505050505050505050565b80610d73610d6d611eaa565b8261252b565b610d8f5760405162461bcd60e51b8152600401610a6e906143ea565b81610d9981611d23565b610da283612204565b610dad858585612270565b5050505050565b5f610cb4610d0483856143de565b80610dce610d6d611eaa565b610dea5760405162461bcd60e51b8152600401610a6e906143ea565b81610df481611d23565b610e0187878787876125a7565b50505050505050565b80610e16610d6d611eaa565b610e325760405162461bcd60e51b8152600401610a6e906143ea565b81610e3c81611d23565b61092783612204565b610e4d6125ff565b6001600160a01b0316610e5e611eaa565b6001600160a01b031614610e845760405162461bcd60e51b8152600401610a6e90614433565b610e8e8282611eb8565b5050565b61092783838360405180602001604052805f81525061152a565b80610eb8610d6d611eaa565b610ed45760405162461bcd60e51b8152600401610a6e906143ea565b81610ede81611d23565b610ee783612204565b610927836126f9565b5f610cb4838361252b565b80610f07610d6d611eaa565b610f235760405162461bcd60e51b8152600401610a6e906143ea565b81610f2d81611d23565b610e01878787878761279b565b80610f46610d6d611eaa565b610f625760405162461bcd60e51b8152600401610a6e906143ea565b81610f6c81611d23565b610f7886868686612876565b505050505050565b5f818152606760205260408120546001600160a01b03161515610858565b610fd081604051602001610fb29190614475565b604051602081830303815290604052805190602001205f1c82612915565b50565b610134546001600160a01b0316610fe8611eaa565b6001600160a01b03161461100e5760405162461bcd60e51b8152600401610a6e90614397565b6001600160a01b03165f90815261013660205260409020805460ff19166001179055565b5f818152606760205260408120546001600160a01b0316806108585760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610a6e565b8061109d610d6d611eaa565b6110b95760405162461bcd60e51b8152600401610a6e906143ea565b6110cb6110c4611eaa565b3084612270565b610e8e6110d6611eaa565b83612002565b5f6110e6826121b6565b90506110f181612939565b6110fa81611d23565b610e8e611105611eaa565b8261110f85612476565b6129a9565b6060806111218484612a2c565b909590945092505050565b5f6001600160a01b0382166111955760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b6064820152608401610a6e565b506001600160a01b03165f9081526068602052604090205490565b6001600160a01b0381165f90815261013560205260408120546111d281612a4d565b6111da578091505b50919050565b6111e86125ff565b6001600160a01b03166111f9611eaa565b6001600160a01b03161461121f5760405162461bcd60e51b8152600401610a6e90614433565b6112298484611eb8565b50505050565b6112398787612a94565b611241611eaa565b6001600160a01b031661125386611032565b6001600160a01b0316146112a95760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610a6e565b610e018484848489612413565b60606066805461086d906142f6565b610134546001600160a01b03166112da611eaa565b6001600160a01b0316146113005760405162461bcd60e51b8152600401610a6e90614397565b61013361130e8284836144d4565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b82826040516113409291906145b5565b60405180910390a15050565b610e8e611357611eaa565b8383612afd565b5f610bab61136b856145c8565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250612bca92505050565b806113b3610d6d611eaa565b6113cf5760405162461bcd60e51b8152600401610a6e906143ea565b816113d981611d23565b6112296113e584611032565b8585612270565b5f818152606760205260408120546001600160a01b031661140d575f610858565b3092915050565b606080836001600160401b0381111561142f5761142f613e03565b60405190808252806020026020018201604052801561146257816020015b606081526020019060019003908161144d5790505b509150836001600160401b0381111561147d5761147d613e03565b6040519080825280602002602001820160405280156114b057816020015b606081526020019060019003908161149b5790505b5090505f5b84811015611521576114df8686838181106114d2576114d2614341565b9050602002013585612a2c565b8483815181106114f1576114f1614341565b6020026020010184848151811061150a5761150a614341565b6020908102919091010191909152526001016114b5565b50935093915050565b81611536610d6d611eaa565b6115525760405162461bcd60e51b8152600401610a6e906143ea565b8261155c81611d23565b61156584612204565b610f7886868686612d0f565b610134546001600160a01b0316611586611eaa565b6001600160a01b0316146115ac5760405162461bcd60e51b8152600401610a6e90614397565b5f6115ba610d04888a6143de565b90506115d489826115ce610d4c8b8d6143de565b85612d42565b610d568686868685612413565b5f81815260c9602052604090208054606091906115fd906142f6565b80601f0160208091040260200160405190810160405280929190818152602001828054611629906142f6565b80156116745780601f1061164b57610100808354040283529160200191611674565b820191905f5260205f20905b81548152906001019060200180831161165757829003601f168201915b50505050509050919050565b6001600160a01b0381165f90815261013560205260409020546060906116a581612a4d565b6111da575f8181526101386020526040902080546116c2906142f6565b80601f01602080910402602001604051908101604052809291908181526020018280546116ee906142f6565b80156117395780601f1061171057610100808354040283529160200191611739565b820191905f5260205f20905b81548152906001019060200180831161171c57829003601f168201915b5050505050915050919050565b606061175182611cc5565b5f61175a612d95565b90505f8151116117785760405180602001604052805f815250610cb4565b8061178284612da5565b60405160200161179392919061464f565b6040516020818303038152906040529392505050565b806117b5610d6d611eaa565b6117d15760405162461bcd60e51b8152600401610a6e906143ea565b816117db81611d23565b610e018787878787612413565b7f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87546001600160a01b031661181b611eaa565b6001600160a01b0316146118415760405162461bcd60e51b8152600401610a6e90614433565b6020819003611863575f6118578284018461391c565b90506112298482611eb8565b5f6118708284018461467d565b80519091505f5b81811015610f78576118a28684838151811061189557611895614341565b6020026020010151611eb8565b600101611877565b806118b6610d6d611eaa565b6118d25760405162461bcd60e51b8152600401610a6e906143ea565b816118dc81611d23565b610e018787878787612ea1565b5f6118f2611eaa565b6001600160a01b0381165f9081526101356020526040812054919250036119655760405162461bcd60e51b815260206004820152602160248201527f52656769737472793a20524556455253455f5245434f52445f49535f454d50546044820152605960f81b6064820152608401610a6e565b610fd081612eb7565b6060816001600160401b0381111561198857611988613e03565b6040519080825280602002602001820160405280156119bb57816020015b60608152602001906001900390816119a65790505b5090505f5b82811015611a0e576119e98484838181106119dd576119dd614341565b905060200201356115e1565b8282815181106119fb576119fb614341565b60209081029190910101526001016119c0565b5092915050565b610134546001600160a01b0316611a2a611eaa565b6001600160a01b031614611a505760405162461bcd60e51b8152600401610a6e90614397565b61013454611a67906001600160a01b031684611eb8565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c39528383604051611a999291906145b5565b60405180910390a2505050565b5f54610100900460ff1615808015611ac457505f54600160ff909116105b80611add5750303b158015611add57505f5460ff166001145b611b405760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610a6e565b5f805460ff191660011790558015611b61575f805461ff0019166101001790555b61013480546001600160a01b0319166001600160a01b038716179055837f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec9237880546001600160a01b0319166001600160a01b03929092169190911790556040805180820182526013815272556e73746f707061626c6520446f6d61696e7360681b60208083019190915282518084019093526002835261155160f21b90830152611c0991612efb565b611c11612f3a565b611c19612f3a565b611c2283612f62565b611c2b82612f91565b8015610dad575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b5f6001600160e01b031982166380ac58cd60e01b1480611ca657506001600160e01b03198216635b5e139f60e01b145b8061085857506301ffc9a760e01b6001600160e01b0319831614610858565b5f818152606760205260409020546001600160a01b0316610fd05760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610a6e565b303303611d8057611d32612fc0565b8114610fd05760405162461bcd60e51b815260206004820152601760248201527f52656769737472793a20544f4b454e5f494e56414c49440000000000000000006044820152606401610a6e565b610fd081612fd3565b5f611d9382611032565b9050806001600160a01b0316836001600160a01b031603611e005760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b6064820152608401610a6e565b806001600160a01b0316611e12611eaa565b6001600160a01b03161480611e2e5750611e2e816107a3611eaa565b611ea05760405162461bcd60e51b815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c00006064820152608401610a6e565b6109278383612fff565b5f611eb361306c565b905090565b6001600160a01b038216611f0e5760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610a6e565b5f818152606760205260409020546001600160a01b031615611f725760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610a6e565b611f7d5f8383613086565b6001600160a01b0382165f908152606860205260408120805460019290611fa590849061471c565b90915550505f8181526067602052604080822080546001600160a01b0319166001600160a01b03861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b5f61200b6125ff565b90506120178183612fff565b5f80516020614a7483398151915254604080516020808201869052825180830390910181528183019283905263e3dec8fb60e01b9092526001600160a01b0390921691829163e3dec8fb9161207391889130919060440161472f565b5f604051808303815f87803b15801561208a575f80fd5b505af115801561209c573d5f803e3d5ffd5b5050505050505050565b6060610cb4836040516020016120bc9190614475565b604051602081830303815290604052805190602001205f1c83613121565b60606120e585612fd3565b5f80876001600160a01b0316866120fe8b8a89896131fc565b60405161210b9190614475565b5f604051808303815f8787f1925050503d805f8114612145576040519150601f19603f3d011682016040523d82523d5f602084013e61214a565b606091505b50909250905061215b603f8761476e565b5a1161216957612169614781565b6121a982826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061322c565b9998505050505050505050565b80515f9081905b8015611a0e576121f082856121d3600185614795565b815181106121e3576121e3614341565b6020026020010151613265565b9150806121fc816147a8565b9150506121bd565b61220d8161330f565b60405160200161221f91815260200190565b60408051601f1981840301815282825280516020918201205f85815260cb9092529181209190915582917f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9190a250565b826001600160a01b031661228382611032565b6001600160a01b0316146122e75760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b6064820152608401610a6e565b6001600160a01b0382166123495760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610a6e565b612354838383613086565b61235e5f82612fff565b6001600160a01b0383165f908152606860205260408120805460019290612386908490614795565b90915550506001600160a01b0382165f9081526068602052604081208054600192906123b390849061471c565b90915550505f8181526067602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b5f5b84811015610f785761246e86868381811061243257612432614341565b90506020028101906124449190614355565b86868581811061245657612456614341565b90506020028101906124689190614355565b8661279b565b600101612415565b60605f825f8151811061248b5761248b614341565b602002602001015190505f600190505b8351811015611a0e57818482815181106124b7576124b7614341565b60200260200101516040516020016124d09291906147bd565b60408051601f19818403018152919052915060010161249b565b61dead6001600160a01b0384161480159061251b57506001600160a01b0383165f9081526101356020526040902054155b15610927576109278383836129a9565b5f8061253683611032565b9050806001600160a01b0316846001600160a01b0316148061257c57506001600160a01b038082165f908152606a602090815260408083209388168352929052205460ff165b80610bab5750836001600160a01b0316612595846108ee565b6001600160a01b031614949350505050565b5f5b84811015610f78576125f78686838181106125c6576125c6614341565b905060200201358585848181106125df576125df614341565b90506020028101906125f19190614355565b85612876565b6001016125a9565b5f80516020614a74833981519152545f906001600160a01b031680156126f55760405163721804d360e11b81523060048201525f906001600160a01b0383169063e43009a690602401602060405180830381865afa158015612663573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061268791906147f8565b60405163e66f960360e01b8152600481018290529091506001600160a01b0383169063e66f960390602401602060405180830381865afa1580156126cd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906126f1919061480f565b9250505b5090565b5f61270382611032565b9050612710815f84613086565b61271a5f83612fff565b6001600160a01b0381165f908152606860205260408120805460019290612742908490614795565b90915550505f8281526067602052604080822080546001600160a01b0319169055518391906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b5f85856040516020016127af92919061482a565b60408051601f198184030181528282528051602091820120601f890182900482028401820190925287835290925061280291839189908990819084018382808284375f9201919091525061291592505050565b610f788187878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8b0181900481028201810190925289815292508991508890819084018382808284375f92019190915250889250613335915050565b61287f84613461565b6128cb5760405162461bcd60e51b815260206004820152601c60248201527f5265636f726453746f726167653a204b45595f4e4f545f464f554e44000000006044820152606401610a6e565b611229846128d8866115e1565b85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250879250613335915050565b61291e82613461565b610e8e575f82815260c9602052604090206109278282614839565b612941611eaa565b6001600160a01b031661295382611032565b6001600160a01b031614610fd05760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610a6e565b5f8281526101386020526040902080546129c2906142f6565b90505f036129e4575f828152610138602052604090206129e28282614839565b505b6001600160a01b0383165f8181526101356020526040808220859055518492917feb76a21470988c474a21f690cc28fee1ed511bd812dc3c21fd0f49c5e5d4708a91a3505050565b606080612a38846115e1565b9150612a448484613121565b90509250929050565b5f818152610137602052604081205460ff16801561085857506101365f612a72611eaa565b6001600160a01b0316815260208101919091526040015f205460ff1692915050565b5f80516020614a7483398151915254604051633805550f60e01b81526001600160a01b03909116908190633805550f90612ad490869086906004016145b5565b5f604051808303815f87803b158015612aeb575f80fd5b505af1158015610e01573d5f803e3d5ffd5b816001600160a01b0316836001600160a01b031603612b5e5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610a6e565b6001600160a01b038381165f818152606a6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015612c0e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612c3291906147f8565b90505f612cdf866060015180519060200120868860200151604051602001612c7f9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b9050818660200151148015612d0557508551612d05906001600160a01b03168286613486565b9695505050505050565b612d1a848484612270565b612d26848484846135c1565b6112295760405162461bcd60e51b8152600401610a6e906148f4565b612d4c8484611eb8565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c395283604051612d7c919061390a565b60405180910390a28015611229576112298484846124ea565b6060610133805461086d906142f6565b6060815f03612dcb5750506040805180820190915260018152600360fc1b602082015290565b815f5b8115612df45780612dde81614946565b9150612ded9050600a8361476e565b9150612dce565b5f816001600160401b03811115612e0d57612e0d613e03565b6040519080825280601f01601f191660200182016040528015612e37576020820181803683370190505b5090505b8415610bab57612e4c600183614795565b9150612e59600a8661495e565b612e6490603061471c565b60f81b818381518110612e7957612e79614341565b60200101906001600160f81b03191690815f1a905350612e9a600a8661476e565b9450612e3b565b612eaa81612204565b610dad8585858585612413565b6001600160a01b0381165f8181526101356020526040808220829055517ffcf5eec0cfa3e6332f5f0e63ec242d71f866a61d121d6cdf5c2eb3b668a26c4f9190a250565b5f54610100900460ff16612f215760405162461bcd60e51b8152600401610a6e90614971565b6065612f2d8382614839565b5060666109278282614839565b5f54610100900460ff16612f605760405162461bcd60e51b8152600401610a6e90614971565b565b5f54610100900460ff16612f885760405162461bcd60e51b8152600401610a6e90614971565b610fd0816136c2565b5f54610100900460ff16612fb75760405162461bcd60e51b8152600401610a6e90614971565b610fd081613719565b5f303303612fd05750601f193601355b90565b5f8181526101006020526040902054612fed90600161471c565b5f918252610100602052604090912055565b5f81815260696020526040902080546001600160a01b0319166001600160a01b038416908117909155819061303382611032565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b5f303303613081575060331936013560601c90565b503390565b5f818152610137602052604090205460ff1615806130ac57506001600160a01b03821615155b6130f85760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a20544f4b454e5f555047524144454400000000000000006044820152606401610a6e565b6001600160a01b0383165f90815261013560205260409020548190036109275761092783612eb7565b606061312c82612a4d565b15613145575060408051602081019091525f8152610858565b60ca5f6131518461330f565b81526020019081526020015f205f8481526020019081526020015f208054613178906142f6565b80601f01602080910402602001604051908101604052809291908181526020018280546131a4906142f6565b80156131ef5780601f106131c6576101008083540402835291602001916131ef565b820191905f5260205f20905b8154815290600101906020018083116131d257829003601f168201915b5050505050905092915050565b6060828585604051602001613213939291906149bc565b6040516020818303038152906040529050949350505050565b6060831561323b575081610cb4565b82511561324b5782518084602001fd5b8160405162461bcd60e51b8152600401610a6e919061390a565b5f81515f036132ae5760405162461bcd60e51b815260206004820152601560248201527452656769737472793a204c4142454c5f454d50545960581b6044820152606401610a6e565b82826040516020016132c09190614475565b604051602081830303815290604052805190602001206040516020016132f0929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b5f81815260cb6020526040812054156126f5575f82815260cb6020526040902054610858565b60ca5f6133418361330f565b81526020019081526020015f205f8581526020019081526020015f208054613368906142f6565b90505f036133bf578260405161337e9190614475565b6040518091039020817f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f86856040516133b6919061390a565b60405180910390a35b8160ca5f6133cc8461330f565b81526020019081526020015f205f8681526020019081526020015f2090816133f49190614839565b50816040516134039190614475565b6040518091039020836040516134199190614475565b6040518091039020827f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d928686604051613453929190613ff8565b60405180910390a450505050565b5f81815260c960205260408120805482919061347c906142f6565b9050119050919050565b5f805f6134938585613766565b90925090505f8160048111156134ab576134ab6149fa565b1480156134c95750856001600160a01b0316826001600160a01b0316145b156134d957600192505050610cb4565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401613500929190614a0e565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161353e9190614475565b5f60405180830381855afa9150503d805f8114613576576040519150601f19603f3d011682016040523d82523d5f602084013e61357b565b606091505b509150915081801561358e575080516020145b80156135b557508051630b135d3f60e11b906135b390830160209081019084016147f8565b145b98975050505050505050565b5f6001600160a01b0384163b156136ba57836001600160a01b031663150b7a026135e9611eaa565b8786866040518563ffffffff1660e01b815260040161360b9493929190614a26565b6020604051808303815f875af1925050508015613645575060408051601f3d908101601f1916820190925261364291810190614a58565b60015b6136a0573d808015613672576040519150601f19603f3d011682016040523d82523d5f602084013e613677565b606091505b5080515f036136985760405162461bcd60e51b8152600401610a6e906148f4565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610bab565b506001610bab565b5f54610100900460ff166136e85760405162461bcd60e51b8152600401610a6e90614971565b805f80516020614a748339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b5f54610100900460ff1661373f5760405162461bcd60e51b8152600401610a6e90614971565b807f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b876136f8565b5f80825160410361379a576020830151604084015160608501515f1a61378e878285856137a8565b945094505050506137a1565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08311156137dd57505f90506003613884565b8460ff16601b141580156137f557508460ff16601c14155b1561380557505f90506004613884565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613856573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b03811661387e575f60019250925050613884565b91505f90505b94509492505050565b6001600160e01b031981168114610fd0575f80fd5b5f602082840312156138b2575f80fd5b8135610cb48161388d565b5f5b838110156138d75781810151838201526020016138bf565b50505f910152565b5f81518084526138f68160208601602086016138bd565b601f01601f19169290920160200192915050565b602081525f610cb460208301846138df565b5f6020828403121561392c575f80fd5b5035919050565b6001600160a01b0381168114610fd0575f80fd5b5f8060408385031215613958575f80fd5b823561396381613933565b946020939093013593505050565b5f8083601f840112613981575f80fd5b5081356001600160401b03811115613997575f80fd5b6020830191508360208285010111156137a1575f80fd5b5f805f805f608086880312156139c2575f80fd5b85356139cd81613933565b945060208601356139dd81613933565b93506040860135925060608601356001600160401b038111156139fe575f80fd5b613a0a88828901613971565b969995985093965092949392505050565b5f8083601f840112613a2b575f80fd5b5081356001600160401b03811115613a41575f80fd5b6020830191508360208260051b85010111156137a1575f80fd5b5f805f60408486031215613a6d575f80fd5b83356001600160401b03811115613a82575f80fd5b613a8e86828701613a1b565b909790965060209590950135949350505050565b5f8282518085526020808601955060208260051b840101602086015f5b84811015613aed57601f19868403018952613adb8383516138df565b98840198925090830190600101613abf565b5090979650505050505050565b602081525f610cb46020830184613aa2565b5f805f60408486031215613b1e575f80fd5b83356001600160401b03811115613b33575f80fd5b613a8e86828701613971565b5f805f60408486031215613b51575f80fd5b83356001600160401b0380821115613b67575f80fd5b9085019060808288031215613b7a575f80fd5b90935060208501359080821115613b8f575f80fd5b50613b9c86828701613971565b9497909650939450505050565b80358015158114613bb8575f80fd5b919050565b5f805f805f805f8060a0898b031215613bd4575f80fd5b8835613bdf81613933565b975060208901356001600160401b0380821115613bfa575f80fd5b613c068c838d01613a1b565b909950975060408b0135915080821115613c1e575f80fd5b613c2a8c838d01613a1b565b909750955060608b0135915080821115613c42575f80fd5b50613c4f8b828c01613a1b565b9094509250613c62905060808a01613ba9565b90509295985092959890939650565b5f805f60608486031215613c83575f80fd5b8335613c8e81613933565b92506020840135613c9e81613933565b929592945050506040919091013590565b5f8060208385031215613cc0575f80fd5b82356001600160401b03811115613cd5575f80fd5b613ce185828601613a1b565b90969095509350505050565b5f805f805f60608688031215613d01575f80fd5b85356001600160401b0380821115613d17575f80fd5b613d2389838a01613a1b565b90975095506020880135915080821115613d3b575f80fd5b50613d4888828901613a1b565b96999598509660400135949350505050565b5f805f805f60608688031215613d6e575f80fd5b85356001600160401b0380821115613d84575f80fd5b613d9089838a01613971565b90975095506020880135915080821115613da8575f80fd5b50613d4888828901613971565b5f805f8060608587031215613dc8575f80fd5b8435935060208501356001600160401b03811115613de4575f80fd5b613df087828801613971565b9598909750949560400135949350505050565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f191681016001600160401b0381118282101715613e3f57613e3f613e03565b604052919050565b5f82601f830112613e56575f80fd5b81356001600160401b03811115613e6f57613e6f613e03565b613e82601f8201601f1916602001613e17565b818152846020838601011115613e96575f80fd5b816020850160208301375f918101602001919091529392505050565b5f60208284031215613ec2575f80fd5b81356001600160401b03811115613ed7575f80fd5b610bab84828501613e47565b5f60208284031215613ef3575f80fd5b8135610cb481613933565b5f6001600160401b03821115613f1657613f16613e03565b5060051b60200190565b5f613f32613f2d84613efe565b613e17565b8381529050602080820190600585901b840186811115613f50575f80fd5b845b81811015613f895780356001600160401b03811115613f6f575f80fd5b613f7b89828901613e47565b855250928201928201613f52565b505050509392505050565b5f60208284031215613fa4575f80fd5b81356001600160401b03811115613fb9575f80fd5b8201601f81018413613fc9575f80fd5b610bab84823560208401613f20565b5f8060408385031215613fe9575f80fd5b50508035926020909101359150565b604081525f61400a60408301856138df565b8281036020840152610cb081856138df565b5f805f806060858703121561402f575f80fd5b843561403a81613933565b93506020850135925060408501356001600160401b0381111561405b575f80fd5b61406787828801613971565b95989497509550505050565b5f805f805f805f6080888a031215614089575f80fd5b87356001600160401b038082111561409f575f80fd5b6140ab8b838c01613971565b909950975060208a0135965060408a01359150808211156140ca575f80fd5b6140d68b838c01613a1b565b909650945060608a01359150808211156140ee575f80fd5b506140fb8a828b01613a1b565b989b979a50959850939692959293505050565b5f806020838503121561411f575f80fd5b82356001600160401b03811115614134575f80fd5b613ce185828601613971565b5f8060408385031215614151575f80fd5b823561415c81613933565b9150612a4460208401613ba9565b604081525f61417c6040830185613aa2565b8281036020840152610cb08185613aa2565b5f805f80608085870312156141a1575f80fd5b84356141ac81613933565b935060208501356141bc81613933565b92506040850135915060608501356001600160401b038111156141dd575f80fd5b6141e987828801613e47565b91505092959194509250565b5f805f60408486031215614207575f80fd5b833561421281613933565b925060208401356001600160401b0381111561422c575f80fd5b613b9c86828701613971565b5f8060408385031215614249575f80fd5b823561425481613933565b9150602083013561426481613933565b809150509250929050565b5f805f60408486031215614281575f80fd5b8335925060208401356001600160401b0381111561422c575f80fd5b5f805f80608085870312156142b0575f80fd5b84356142bb81613933565b935060208501356142cb81613933565b925060408501356142db81613933565b915060608501356142eb81613933565b939692955090935050565b600181811c9082168061430a57607f821691505b6020821081036111da57634e487b7160e01b5f52602260045260245ffd5b5f60208284031215614338575f80fd5b610cb482613ba9565b634e487b7160e01b5f52603260045260245ffd5b5f808335601e1984360301811261436a575f80fd5b8301803591506001600160401b03821115614383575f80fd5b6020019150368190038213156137a1575f80fd5b60208082526027908201527f52656769737472793a2053454e4445525f49535f4e4f545f4d494e54494e475f60408201526626a0a720a3a2a960c91b606082015260800190565b5f610cb4368484613f20565b60208082526029908201527f52656769737472793a2053454e4445525f49535f4e4f545f415050524f5645446040820152682fa7a92fa7aba722a960b91b606082015260800190565b60208082526022908201527f52656769737472793a20494e53554646494349454e545f5045524d495353494f6040820152614e5360f01b606082015260800190565b5f82516144868184602087016138bd565b9190910192915050565b601f82111561092757805f5260205f20601f840160051c810160208510156144b55750805b601f840160051c820191505b81811015610dad575f81556001016144c1565b6001600160401b038311156144eb576144eb613e03565b6144ff836144f983546142f6565b83614490565b5f601f841160018114614530575f85156145195750838201355b5f19600387901b1c1916600186901b178355610dad565b5f83815260208120601f198716915b8281101561455f578685013582556020948501946001909201910161453f565b508682101561457b575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b602081525f610bab60208301848661458d565b5f608082360312156145d8575f80fd5b604051608081016001600160401b0382821081831117156145fb576145fb613e03565b816040528435915061460c82613933565b81835260208501356020840152604085013560408401526060850135915080821115614636575f80fd5b5061464336828601613e47565b60608301525092915050565b5f83516146608184602088016138bd565b8351908301906146748183602088016138bd565b01949350505050565b5f602080838503121561468e575f80fd5b82356001600160401b038111156146a3575f80fd5b8301601f810185136146b3575f80fd5b80356146c1613f2d82613efe565b81815260059190911b820183019083810190878311156146df575f80fd5b928401925b828410156146fd578335825292840192908401906146e4565b979650505050505050565b634e487b7160e01b5f52601160045260245ffd5b8082018082111561085857610858614708565b6001600160a01b038481168252831660208201526060604082018190525f90610a77908301846138df565b634e487b7160e01b5f52601260045260245ffd5b5f8261477c5761477c61475a565b500490565b634e487b7160e01b5f52600160045260245ffd5b8181038181111561085857610858614708565b5f816147b6576147b6614708565b505f190190565b5f83516147ce8184602088016138bd565b601760f91b90830190815283516147ec8160018401602088016138bd565b01600101949350505050565b5f60208284031215614808575f80fd5b5051919050565b5f6020828403121561481f575f80fd5b8151610cb481613933565b818382375f9101908152919050565b81516001600160401b0381111561485257614852613e03565b6148668161486084546142f6565b84614490565b602080601f831160018114614899575f84156148825750858301515b5f19600386901b1c1916600185901b178555610f78565b5f85815260208120601f198616915b828110156148c7578886015182559484019460019091019084016148a8565b50858210156148e457878501515f19600388901b60f8161c191681555b5050505050600190811b01905550565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b5f6001820161495757614957614708565b5060010190565b5f8261496c5761496c61475a565b500690565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b5f84516149cd8184602089016138bd565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f610bab60408301846138df565b6001600160a01b03858116825284166020820152604081018390526080606082018190525f90612d05908301846138df565b5f60208284031215614a68575f80fd5b8151610cb48161388d56febe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafea164736f6c6343000818000a", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/artifacts/Verifiers.json b/artifacts/Verifiers.json new file mode 100644 index 00000000..3ea9d868 --- /dev/null +++ b/artifacts/Verifiers.json @@ -0,0 +1,653 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "Verifiers", + "sourceName": "seaport-core/src/lib/Verifiers.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "conduitController", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [], + "name": "BadContractSignature", + "type": "error" + }, + { + "inputs": [], + "name": "BadFraction", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "BadReturnValueFromERC20OnTransfer", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint8", + "name": "v", + "type": "uint8" + } + ], + "name": "BadSignatureV", + "type": "error" + }, + { + "inputs": [], + "name": "CannotCancelOrder", + "type": "error" + }, + { + "inputs": [], + "name": "ConsiderationLengthNotEqualToTotalOriginal", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "orderIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "considerationIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "shortfallAmount", + "type": "uint256" + } + ], + "name": "ConsiderationNotMet", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256[]", + "name": "identifiers", + "type": "uint256[]" + }, + { + "internalType": "uint256[]", + "name": "amounts", + "type": "uint256[]" + } + ], + "name": "ERC1155BatchTransferGenericFailure", + "type": "error" + }, + { + "inputs": [], + "name": "InsufficientNativeTokensSupplied", + "type": "error" + }, + { + "inputs": [], + "name": "Invalid1155BatchTransferEncoding", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidBasicOrderParameterEncoding", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "conduit", + "type": "address" + } + ], + "name": "InvalidCallToConduit", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "conduit", + "type": "address" + } + ], + "name": "InvalidConduit", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "InvalidERC721TransferAmount", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "InvalidMsgValue", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidNativeOfferItem", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidSignature", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidSigner", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + } + ], + "name": "InvalidTime", + "type": "error" + }, + { + "inputs": [], + "name": "MissingItemAmount", + "type": "error" + }, + { + "inputs": [], + "name": "MissingOriginalConsiderationItems", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "NativeTokenTransferGenericFailure", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "NoContract", + "type": "error" + }, + { + "inputs": [], + "name": "NoReentrantCalls", + "type": "error" + }, + { + "inputs": [], + "name": "NoSpecifiedOrdersAvailable", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "OrderAlreadyFilled", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "OrderIsCancelled", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "OrderPartiallyFilled", + "type": "error" + }, + { + "inputs": [], + "name": "PartialFillsNotEnabledForOrder", + "type": "error" + }, + { + "inputs": [], + "name": "TStoreAlreadyActivated", + "type": "error" + }, + { + "inputs": [], + "name": "TStoreNotSupported", + "type": "error" + }, + { + "inputs": [], + "name": "TloadTestContractDeploymentFailed", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "TokenTransferGenericFailure", + "type": "error" + }, + { + "inputs": [], + "name": "UnusedItemParameters", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint256", + "name": "newCounter", + "type": "uint256" + }, + { + "indexed": true, + "internalType": "address", + "name": "offerer", + "type": "address" + } + ], + "name": "CounterIncremented", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "zone", + "type": "address" + } + ], + "name": "OrderCancelled", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "indexed": false, + "internalType": "struct SpentItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "indexed": false, + "internalType": "struct ReceivedItem[]", + "name": "consideration", + "type": "tuple[]" + } + ], + "name": "OrderFulfilled", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + }, + { + "components": [ + { + "internalType": "address", + "name": "offerer", + "type": "address" + }, + { + "internalType": "address", + "name": "zone", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + } + ], + "internalType": "struct OfferItem[]", + "name": "offer", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "enum ItemType", + "name": "itemType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "identifierOrCriteria", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endAmount", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "recipient", + "type": "address" + } + ], + "internalType": "struct ConsiderationItem[]", + "name": "consideration", + "type": "tuple[]" + }, + { + "internalType": "enum OrderType", + "name": "orderType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "zoneHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "salt", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "conduitKey", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "totalOriginalConsiderationItems", + "type": "uint256" + } + ], + "indexed": false, + "internalType": "struct OrderParameters", + "name": "orderParameters", + "type": "tuple" + } + ], + "name": "OrderValidated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32[]", + "name": "orderHashes", + "type": "bytes32[]" + } + ], + "name": "OrdersMatched", + "type": "event" + }, + { + "inputs": [], + "name": "__activateTstore", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x610200604052348015610010575f80fd5b5060405161079138038061079183398101604081905261002f916102f7565b80808061003a61015a565b610120526101005260e05260c081905260a082815246610140819052604080515f9485526020879052948152606091825230608090815292842085825293909152939052610160526001600160a01b038316610180819052630a96ad3960e01b825282519092630a96ad3992600480820193918290030181865afa1580156100c4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906100e89190610324565b506101a052505f90506100f9610280565b90506001600160a01b03811661012257604051632aea588760e01b815260040160405180910390fd5b5f61012c82610299565b8015156101c0526001600160a01b0383166101e05290508061015157600163929eee14555b505050506103b8565b5f808080808061018a60408051808201909152600d81526c21b7b739b4b232b930ba34b7b760991b602082015290565b8051906020012095506040518060400160405280600381526020016218971b60e91b8152508051906020012094505f6040518060a00160405280606a8152602001610727606a913990505f6040518060c001604052806084815260200161057d6084913990505f60405180610100016040528060d4815260200161065360d4913990506040518060800160405280605281526020016106016052913980519060200120965082805190602001209550818051906020012094505f81838560405160200161025993929190610373565b60405160208183030381529060405290508080519060200120945050505050909192939495565b5f696002601e613d5c3d52f35f52600a60165ff0905090565b5f816001600160a01b0316600a5a6102b19190610399565b6040515f8181818686fa925050503d805f81146102e9576040519150601f19603f3d011682016040523d82523d5f602084013e6102ee565b606091505b50909392505050565b5f60208284031215610307575f80fd5b81516001600160a01b038116811461031d575f80fd5b9392505050565b5f8060408385031215610335575f80fd5b505080516020909101519092909150565b5f81515f5b81811015610365576020818501810151868301520161034b565b505f93019283525090919050565b5f61039061038a6103848488610346565b86610346565b84610346565b95945050505050565b5f826103b357634e487b7160e01b5f52601260045260245ffd5b500490565b60805160a05160c05160e05161010051610120516101405161016051610180516101a0516101c0516101e05161016261041b5f395f608d01525f604201525f50505f50505f50505f50505f50505f50505f50505f50505f50505f50506101625ff3fe608060405234801561000f575f80fd5b5060043610610029575f3560e01c80637423eb3c1461002d575b5f80fd5b610035610037565b005b63929eee14546001147f00000000000000000000000000000000000000000000000000000000000000008061006a575080155b1561008857604051630f45b98b60e41b815260040160405180910390fd5b6100b17f00000000000000000000000000000000000000000000000000000000000000006100d8565b6100ce576040516370a4078f60e01b815260040160405180910390fd5b5f63929eee145550565b5f816001600160a01b0316600a5a6100f09190610136565b6040515f8181818686fa925050503d805f8114610128576040519150601f19603f3d011682016040523d82523d5f602084013e61012d565b606091505b50909392505050565b5f8261015057634e487b7160e01b5f52601260045260245ffd5b50049056fea164736f6c6343000818000a436f6e73696465726174696f6e4974656d2875696e7438206974656d547970652c6164647265737320746f6b656e2c75696e74323536206964656e7469666965724f7243726974657269612c75696e74323536207374617274416d6f756e742c75696e7432353620656e64416d6f756e742c6164647265737320726563697069656e7429454950373132446f6d61696e28737472696e67206e616d652c737472696e672076657273696f6e2c75696e7432353620636861696e49642c6164647265737320766572696679696e67436f6e7472616374294f72646572436f6d706f6e656e74732861646472657373206f6666657265722c61646472657373207a6f6e652c4f666665724974656d5b5d206f666665722c436f6e73696465726174696f6e4974656d5b5d20636f6e73696465726174696f6e2c75696e7438206f72646572547970652c75696e7432353620737461727454696d652c75696e7432353620656e6454696d652c62797465733332207a6f6e65486173682c75696e743235362073616c742c6279746573333220636f6e647569744b65792c75696e7432353620636f756e746572294f666665724974656d2875696e7438206974656d547970652c6164647265737320746f6b656e2c75696e74323536206964656e7469666965724f7243726974657269612c75696e74323536207374617274416d6f756e742c75696e7432353620656e64416d6f756e7429", + "deployedBytecode": "0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c80637423eb3c1461002d575b5f80fd5b610035610037565b005b63929eee14546001147f00000000000000000000000000000000000000000000000000000000000000008061006a575080155b1561008857604051630f45b98b60e41b815260040160405180910390fd5b6100b17f00000000000000000000000000000000000000000000000000000000000000006100d8565b6100ce576040516370a4078f60e01b815260040160405180910390fd5b5f63929eee145550565b5f816001600160a01b0316600a5a6100f09190610136565b6040515f8181818686fa925050503d805f8114610128576040519150601f19603f3d011682016040523d82523d5f602084013e61012d565b606091505b50909392505050565b5f8261015057634e487b7160e01b5f52601260045260245ffd5b50049056fea164736f6c6343000818000a", + "linkReferences": {}, + "deployedLinkReferences": {} +} diff --git a/artifacts/ZilliqaRecover.json b/artifacts/ZilliqaRecover.json index 2d46ba82..f7723614 100644 --- a/artifacts/ZilliqaRecover.json +++ b/artifacts/ZilliqaRecover.json @@ -569,8 +569,8 @@ "type": "function" } ], - "bytecode": "0x608060405234801561001057600080fd5b5061001961001e565b6100de565b600054610100900460ff161561008a5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811610156100dc576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b611c80806100ed6000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c806371017a54116100a25780639e32d364116100715780639e32d36414610260578063a424740014610287578063dd6b9e221461029a578063e1c4b65a146102ad578063e35a14e5146102c057600080fd5b806371017a54146102145780637b103999146102275780638f0dbd251461023a5780639810b6951461024d57600080fd5b8063485cc955116100de578063485cc95514610197578063572b6c05146101aa57806358884432146101d65780636ccbae5f1461020157600080fd5b8063150b7a02146101105780631694116d146101415780631bf7e13e146101565780631c351a9d14610176575b600080fd5b61012361011e3660046114ae565b6102e9565b6040516001600160e01b031990911681526020015b60405180910390f35b61015461014f366004611566565b61037b565b005b6101696101643660046115d1565b610422565b6040516101389190611692565b6101896101843660046116a5565b6104ee565b604051908152602001610138565b6101546101a53660046116fc565b6105df565b6101c66101b8366004611735565b6001600160a01b0316301490565b6040519015158152602001610138565b6067546101e9906001600160a01b031681565b6040516001600160a01b039091168152602001610138565b61018961020f366004611752565b61071a565b6101e961022236600461176b565b610774565b6066546101e9906001600160a01b031681565b61015461024836600461178d565b6107b5565b6101e961025b36600461176b565b61082a565b6101897fd81bbfcee722494b885e891546eeac23d0eedcd44038d7a2f6ef9ec2f9e0d23981565b6101c66102953660046115d1565b610886565b6101c66102a83660046117ce565b6108d1565b6101546102bb366004611816565b610953565b6101e96102ce366004611752565b6000908152606560205260409020546001600160a01b031690565b6066546000906001600160a01b0316610300610a86565b6001600160a01b031614158061032b57506000848152606560205260409020546001600160a01b0316155b156103695783610339610a86565b60405163634afa0d60e01b815260048101929092526001600160a01b031660248201526044015b60405180910390fd5b50630a85bd0160e11b95945050505050565b82826103878282610774565b6001600160a01b0316610398610a86565b6001600160a01b0316146103c957604051632cd9b44d60e11b81526004810183905260248101829052604401610360565b60006103d5868661082a565b905060005b87811015610417576104058989838181106103f7576103f7611858565b905060200201358387610a95565b8061040f81611884565b9150506103da565b505050505050505050565b606060005a9050610434858585610886565b61045157604051638baa579f60e01b815260040160405180910390fd5b6104e36104616020870187611735565b3060408801358461047560608b018b61189d565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b9081908401838280828437600092019190915250610bd092505050565b9150505b9392505050565b6067546000906001600160a01b031663aa271e1a61050a610a86565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa15801561054e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061057291906118e4565b158061058d575030610582610a86565b6001600160a01b0316145b156105bf5761059a610a86565b60405163e2c8c9d560e01b81526001600160a01b039091166004820152602401610360565b60006105cc858585610cb1565b90506105d781610ece565b949350505050565b600054610100900460ff16158080156105ff5750600054600160ff909116105b806106195750303b158015610619575060005460ff166001145b61067c5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610360565b6000805460ff19166001179055801561069f576000805461ff0019166101001790555b606680546001600160a01b038086166001600160a01b03199283161790925560678054928516929091169190911790558015610715576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a83815602082015290810182905260009061076d906060016040516020818303038152906040528051906020012090565b5492915050565b6000808383604051602001610793929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209150505b92915050565b82826107c18282610774565b6001600160a01b03166107d2610a86565b6001600160a01b03161461080357604051632cd9b44d60e11b81526004810183905260248101829052604401610360565b8561080d81610ece565b6108218761081b888961082a565b86610a95565b50505050505050565b60008060026108398585610eea565b6040516108469190611906565b602060405180830381855afa158015610863573d6000803e3d6000fd5b5050506040513d601f19601f820116820180604052508101906105d79190611922565b60006105d7610894856119ab565b3085858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250610f7092505050565b6000805b8281101561094857846001600160a01b031661091e8585848181106108fc576108fc611858565b905060200201356000908152606560205260409020546001600160a01b031690565b6001600160a01b0316146109365760009150506104e7565b8061094081611884565b9150506108d5565b506001949350505050565b6067546001600160a01b031663aa271e1a61096c610a86565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa1580156109b0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109d491906118e4565b15806109ef5750306109e4610a86565b6001600160a01b0316145b156109fc5761059a610a86565b60005b8181101561071557610a73838383818110610a1c57610a1c611858565b9050602002810190610a2e9190611a6e565b610a3c90602081019061189d565b858585818110610a4e57610a4e611858565b9050602002810190610a609190611a6e565b610a6e906020810190611735565b610cb1565b5080610a7e81611884565b9150506109ff565b6000610a906110b9565b905090565b6000838152606560205260409020546001600160a01b03838116911614610afa57600083815260656020526040908190205490516326995d8360e11b8152600481018590526001600160a01b0391821660248201529083166044820152606401610360565b6000838152606560205260409081902080546001600160a01b03191690556066549051632142170760e11b81523060048201526001600160a01b03838116602483015260448201869052909116906342842e0e90606401600060405180830381600087803b158015610b6b57600080fd5b505af1158015610b7f573d6000803e3d6000fd5b50505050806001600160a01b0316610b95610a86565b6001600160a01b0316847f9a471856befea1cabcd7fc8a1c4d70ea07b8ed2ee205cc361f932433542ef3fe60405160405180910390a4505050565b6060610bdb856110d7565b600080876001600160a01b031686610bf58b8a898961113d565b604051610c029190611906565b60006040518083038160008787f1925050503d8060008114610c40576040519150601f19603f3d011682016040523d82523d6000602084013e610c45565b606091505b509092509050610c56603f87611a9a565b5a11610c6457610c64611aae565b610ca482826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061116d565b9998505050505050505050565b6000606060007fd81bbfcee722494b885e891546eeac23d0eedcd44038d7a2f6ef9ec2f9e0d2398686604051602001610ceb929190611ac4565b60405160208183030381529060405280519060200120604051602001610d1b929190918252602082015260400190565b60408051808303601f190181528282528051602090910120600280845260608401909252925060009190816020015b6060815260200190600190039081610d4a57905050905086868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250855186945090925015159050610dab57610dab611858565b6020026020010181905250604051806040016040528060038152602001621e9a5b60ea1b81525081600181518110610de557610de5611858565b60209081029190910181019190915260008381526065909152604080822080546001600160a01b0319166001600160a01b03898116919091179091556067549151635cd7e3b360e01b8152911691635cd7e3b391610e4e91309186918991829190600401611b29565b600060405180830381600087803b158015610e6857600080fd5b505af1158015610e7c573d6000803e3d6000fd5b50505050846001600160a01b0316827f08717469d38a4b02325ea6637978c7952f94d3d8fc7848994f618ddbf4d637f18989604051610ebc929190611b88565b60405180910390a35095945050505050565b303303610ee157610ede816111a6565b50565b610ede816110d7565b6060600082610efb60016020611bb7565b60ff1660208110610f0e57610f0e611858565b1a9050610f1c600282611bd0565b60ff1615610f2b576003610f2e565b60025b84604051602001610f5892919060f89290921b6001600160f81b0319168252600182015260210190565b60405160208183030381529060405291505092915050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015610fb7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fdb9190611922565b905060006110898660600151805190602001208688602001516040516020016110299392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156110af575085516110af906001600160a01b031682866111d0565b9695505050505050565b60003033036110cf575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a83815602082015290810182905260009060600160405160208183030381529060405280519060200120905061112c8190565b54611138906001611bf2565b905550565b606082858560405160200161115493929190611c05565b6040516020818303038152906040529050949350505050565b6060831561117c5750816104e7565b82511561118c5782518084602001fd5b8160405162461bcd60e51b81526004016103609190611692565b6111ae611312565b8114610ede57604051635637b6af60e11b815260048101829052602401610360565b60008060006111df8585611325565b909250905060008160048111156111f8576111f8611c44565b1480156112165750856001600160a01b0316826001600160a01b0316145b15611226576001925050506104e7565b600080876001600160a01b0316631626ba7e60e01b888860405160240161124e929190611c5a565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161128c9190611906565b600060405180830381855afa9150503d80600081146112c7576040519150601f19603f3d011682016040523d82523d6000602084013e6112cc565b606091505b50915091508180156112df575080516020145b801561130657508051630b135d3f60e11b906113049083016020908101908401611922565b145b98975050505050505050565b60003033036110d45750601f1936013590565b600080825160410361135b5760208301516040840151606085015160001a61134f8782858561136a565b94509450505050611363565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08311156113a1575060009050600361144e565b8460ff16601b141580156113b957508460ff16601c14155b156113ca575060009050600461144e565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa15801561141e573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166114475760006001925092505061144e565b9150600090505b94509492505050565b6001600160a01b0381168114610ede57600080fd5b60008083601f84011261147e57600080fd5b50813567ffffffffffffffff81111561149657600080fd5b60208301915083602082850101111561136357600080fd5b6000806000806000608086880312156114c657600080fd5b85356114d181611457565b945060208601356114e181611457565b935060408601359250606086013567ffffffffffffffff81111561150457600080fd5b6115108882890161146c565b969995985093965092949392505050565b60008083601f84011261153357600080fd5b50813567ffffffffffffffff81111561154b57600080fd5b6020830191508360208260051b850101111561136357600080fd5b60008060008060006080868803121561157e57600080fd5b853567ffffffffffffffff81111561159557600080fd5b6115a188828901611521565b909650945050602086013592506040860135915060608601356115c381611457565b809150509295509295909350565b6000806000604084860312156115e657600080fd5b833567ffffffffffffffff808211156115fe57600080fd5b908501906080828803121561161257600080fd5b9093506020850135908082111561162857600080fd5b506116358682870161146c565b9497909650939450505050565b60005b8381101561165d578181015183820152602001611645565b50506000910152565b6000815180845261167e816020860160208601611642565b601f01601f19169290920160200192915050565b6020815260006104e76020830184611666565b6000806000604084860312156116ba57600080fd5b833567ffffffffffffffff8111156116d157600080fd5b6116dd8682870161146c565b90945092505060208401356116f181611457565b809150509250925092565b6000806040838503121561170f57600080fd5b823561171a81611457565b9150602083013561172a81611457565b809150509250929050565b60006020828403121561174757600080fd5b81356104e781611457565b60006020828403121561176457600080fd5b5035919050565b6000806040838503121561177e57600080fd5b50508035926020909101359150565b600080600080608085870312156117a357600080fd5b84359350602085013592506040850135915060608501356117c381611457565b939692955090935050565b6000806000604084860312156117e357600080fd5b83356117ee81611457565b9250602084013567ffffffffffffffff81111561180a57600080fd5b61163586828701611521565b6000806020838503121561182957600080fd5b823567ffffffffffffffff81111561184057600080fd5b61184c85828601611521565b90969095509350505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000600182016118965761189661186e565b5060010190565b6000808335601e198436030181126118b457600080fd5b83018035915067ffffffffffffffff8211156118cf57600080fd5b60200191503681900382131561136357600080fd5b6000602082840312156118f657600080fd5b815180151581146104e757600080fd5b60008251611918818460208701611642565b9190910192915050565b60006020828403121561193457600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff811182821017156119745761197461193b565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156119a3576119a361193b565b604052919050565b6000608082360312156119bd57600080fd5b6119c5611951565b82356119d081611457565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff80821115611a0157600080fd5b9085019036601f830112611a1457600080fd5b813581811115611a2657611a2661193b565b611a38601f8201601f1916850161197a565b91508082523684828501011115611a4e57600080fd5b808484018584013760009082019093019290925250606082015292915050565b60008235603e1983360301811261191857600080fd5b634e487b7160e01b600052601260045260246000fd5b600082611aa957611aa9611a84565b500490565b634e487b7160e01b600052600160045260246000fd5b8183823760009101908152919050565b600081518084526020808501808196508360051b8101915082860160005b85811015611b1c578284038952611b0a848351611666565b98850198935090840190600101611af2565b5091979650505050505050565b6001600160a01b038616815260a060208201819052600090611b4d90830187611ad4565b8281036040840152611b5f8187611ad4565b90508281036060840152611b738186611ad4565b91505082151560808301529695505050505050565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b60ff82811682821603908111156107af576107af61186e565b600060ff831680611be357611be3611a84565b8060ff84160691505092915050565b808201808211156107af576107af61186e565b60008451611c17818460208901611642565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b600052602160045260246000fd5b8281526040602082015260006105d7604083018461166656fea164736f6c6343000811000a", - "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061010b5760003560e01c806371017a54116100a25780639e32d364116100715780639e32d36414610260578063a424740014610287578063dd6b9e221461029a578063e1c4b65a146102ad578063e35a14e5146102c057600080fd5b806371017a54146102145780637b103999146102275780638f0dbd251461023a5780639810b6951461024d57600080fd5b8063485cc955116100de578063485cc95514610197578063572b6c05146101aa57806358884432146101d65780636ccbae5f1461020157600080fd5b8063150b7a02146101105780631694116d146101415780631bf7e13e146101565780631c351a9d14610176575b600080fd5b61012361011e3660046114ae565b6102e9565b6040516001600160e01b031990911681526020015b60405180910390f35b61015461014f366004611566565b61037b565b005b6101696101643660046115d1565b610422565b6040516101389190611692565b6101896101843660046116a5565b6104ee565b604051908152602001610138565b6101546101a53660046116fc565b6105df565b6101c66101b8366004611735565b6001600160a01b0316301490565b6040519015158152602001610138565b6067546101e9906001600160a01b031681565b6040516001600160a01b039091168152602001610138565b61018961020f366004611752565b61071a565b6101e961022236600461176b565b610774565b6066546101e9906001600160a01b031681565b61015461024836600461178d565b6107b5565b6101e961025b36600461176b565b61082a565b6101897fd81bbfcee722494b885e891546eeac23d0eedcd44038d7a2f6ef9ec2f9e0d23981565b6101c66102953660046115d1565b610886565b6101c66102a83660046117ce565b6108d1565b6101546102bb366004611816565b610953565b6101e96102ce366004611752565b6000908152606560205260409020546001600160a01b031690565b6066546000906001600160a01b0316610300610a86565b6001600160a01b031614158061032b57506000848152606560205260409020546001600160a01b0316155b156103695783610339610a86565b60405163634afa0d60e01b815260048101929092526001600160a01b031660248201526044015b60405180910390fd5b50630a85bd0160e11b95945050505050565b82826103878282610774565b6001600160a01b0316610398610a86565b6001600160a01b0316146103c957604051632cd9b44d60e11b81526004810183905260248101829052604401610360565b60006103d5868661082a565b905060005b87811015610417576104058989838181106103f7576103f7611858565b905060200201358387610a95565b8061040f81611884565b9150506103da565b505050505050505050565b606060005a9050610434858585610886565b61045157604051638baa579f60e01b815260040160405180910390fd5b6104e36104616020870187611735565b3060408801358461047560608b018b61189d565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b9081908401838280828437600092019190915250610bd092505050565b9150505b9392505050565b6067546000906001600160a01b031663aa271e1a61050a610a86565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa15801561054e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061057291906118e4565b158061058d575030610582610a86565b6001600160a01b0316145b156105bf5761059a610a86565b60405163e2c8c9d560e01b81526001600160a01b039091166004820152602401610360565b60006105cc858585610cb1565b90506105d781610ece565b949350505050565b600054610100900460ff16158080156105ff5750600054600160ff909116105b806106195750303b158015610619575060005460ff166001145b61067c5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610360565b6000805460ff19166001179055801561069f576000805461ff0019166101001790555b606680546001600160a01b038086166001600160a01b03199283161790925560678054928516929091169190911790558015610715576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a83815602082015290810182905260009061076d906060016040516020818303038152906040528051906020012090565b5492915050565b6000808383604051602001610793929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209150505b92915050565b82826107c18282610774565b6001600160a01b03166107d2610a86565b6001600160a01b03161461080357604051632cd9b44d60e11b81526004810183905260248101829052604401610360565b8561080d81610ece565b6108218761081b888961082a565b86610a95565b50505050505050565b60008060026108398585610eea565b6040516108469190611906565b602060405180830381855afa158015610863573d6000803e3d6000fd5b5050506040513d601f19601f820116820180604052508101906105d79190611922565b60006105d7610894856119ab565b3085858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250610f7092505050565b6000805b8281101561094857846001600160a01b031661091e8585848181106108fc576108fc611858565b905060200201356000908152606560205260409020546001600160a01b031690565b6001600160a01b0316146109365760009150506104e7565b8061094081611884565b9150506108d5565b506001949350505050565b6067546001600160a01b031663aa271e1a61096c610a86565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa1580156109b0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109d491906118e4565b15806109ef5750306109e4610a86565b6001600160a01b0316145b156109fc5761059a610a86565b60005b8181101561071557610a73838383818110610a1c57610a1c611858565b9050602002810190610a2e9190611a6e565b610a3c90602081019061189d565b858585818110610a4e57610a4e611858565b9050602002810190610a609190611a6e565b610a6e906020810190611735565b610cb1565b5080610a7e81611884565b9150506109ff565b6000610a906110b9565b905090565b6000838152606560205260409020546001600160a01b03838116911614610afa57600083815260656020526040908190205490516326995d8360e11b8152600481018590526001600160a01b0391821660248201529083166044820152606401610360565b6000838152606560205260409081902080546001600160a01b03191690556066549051632142170760e11b81523060048201526001600160a01b03838116602483015260448201869052909116906342842e0e90606401600060405180830381600087803b158015610b6b57600080fd5b505af1158015610b7f573d6000803e3d6000fd5b50505050806001600160a01b0316610b95610a86565b6001600160a01b0316847f9a471856befea1cabcd7fc8a1c4d70ea07b8ed2ee205cc361f932433542ef3fe60405160405180910390a4505050565b6060610bdb856110d7565b600080876001600160a01b031686610bf58b8a898961113d565b604051610c029190611906565b60006040518083038160008787f1925050503d8060008114610c40576040519150601f19603f3d011682016040523d82523d6000602084013e610c45565b606091505b509092509050610c56603f87611a9a565b5a11610c6457610c64611aae565b610ca482826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061116d565b9998505050505050505050565b6000606060007fd81bbfcee722494b885e891546eeac23d0eedcd44038d7a2f6ef9ec2f9e0d2398686604051602001610ceb929190611ac4565b60405160208183030381529060405280519060200120604051602001610d1b929190918252602082015260400190565b60408051808303601f190181528282528051602090910120600280845260608401909252925060009190816020015b6060815260200190600190039081610d4a57905050905086868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250855186945090925015159050610dab57610dab611858565b6020026020010181905250604051806040016040528060038152602001621e9a5b60ea1b81525081600181518110610de557610de5611858565b60209081029190910181019190915260008381526065909152604080822080546001600160a01b0319166001600160a01b03898116919091179091556067549151635cd7e3b360e01b8152911691635cd7e3b391610e4e91309186918991829190600401611b29565b600060405180830381600087803b158015610e6857600080fd5b505af1158015610e7c573d6000803e3d6000fd5b50505050846001600160a01b0316827f08717469d38a4b02325ea6637978c7952f94d3d8fc7848994f618ddbf4d637f18989604051610ebc929190611b88565b60405180910390a35095945050505050565b303303610ee157610ede816111a6565b50565b610ede816110d7565b6060600082610efb60016020611bb7565b60ff1660208110610f0e57610f0e611858565b1a9050610f1c600282611bd0565b60ff1615610f2b576003610f2e565b60025b84604051602001610f5892919060f89290921b6001600160f81b0319168252600182015260210190565b60405160208183030381529060405291505092915050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015610fb7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fdb9190611922565b905060006110898660600151805190602001208688602001516040516020016110299392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156110af575085516110af906001600160a01b031682866111d0565b9695505050505050565b60003033036110cf575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a83815602082015290810182905260009060600160405160208183030381529060405280519060200120905061112c8190565b54611138906001611bf2565b905550565b606082858560405160200161115493929190611c05565b6040516020818303038152906040529050949350505050565b6060831561117c5750816104e7565b82511561118c5782518084602001fd5b8160405162461bcd60e51b81526004016103609190611692565b6111ae611312565b8114610ede57604051635637b6af60e11b815260048101829052602401610360565b60008060006111df8585611325565b909250905060008160048111156111f8576111f8611c44565b1480156112165750856001600160a01b0316826001600160a01b0316145b15611226576001925050506104e7565b600080876001600160a01b0316631626ba7e60e01b888860405160240161124e929190611c5a565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161128c9190611906565b600060405180830381855afa9150503d80600081146112c7576040519150601f19603f3d011682016040523d82523d6000602084013e6112cc565b606091505b50915091508180156112df575080516020145b801561130657508051630b135d3f60e11b906113049083016020908101908401611922565b145b98975050505050505050565b60003033036110d45750601f1936013590565b600080825160410361135b5760208301516040840151606085015160001a61134f8782858561136a565b94509450505050611363565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08311156113a1575060009050600361144e565b8460ff16601b141580156113b957508460ff16601c14155b156113ca575060009050600461144e565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa15801561141e573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166114475760006001925092505061144e565b9150600090505b94509492505050565b6001600160a01b0381168114610ede57600080fd5b60008083601f84011261147e57600080fd5b50813567ffffffffffffffff81111561149657600080fd5b60208301915083602082850101111561136357600080fd5b6000806000806000608086880312156114c657600080fd5b85356114d181611457565b945060208601356114e181611457565b935060408601359250606086013567ffffffffffffffff81111561150457600080fd5b6115108882890161146c565b969995985093965092949392505050565b60008083601f84011261153357600080fd5b50813567ffffffffffffffff81111561154b57600080fd5b6020830191508360208260051b850101111561136357600080fd5b60008060008060006080868803121561157e57600080fd5b853567ffffffffffffffff81111561159557600080fd5b6115a188828901611521565b909650945050602086013592506040860135915060608601356115c381611457565b809150509295509295909350565b6000806000604084860312156115e657600080fd5b833567ffffffffffffffff808211156115fe57600080fd5b908501906080828803121561161257600080fd5b9093506020850135908082111561162857600080fd5b506116358682870161146c565b9497909650939450505050565b60005b8381101561165d578181015183820152602001611645565b50506000910152565b6000815180845261167e816020860160208601611642565b601f01601f19169290920160200192915050565b6020815260006104e76020830184611666565b6000806000604084860312156116ba57600080fd5b833567ffffffffffffffff8111156116d157600080fd5b6116dd8682870161146c565b90945092505060208401356116f181611457565b809150509250925092565b6000806040838503121561170f57600080fd5b823561171a81611457565b9150602083013561172a81611457565b809150509250929050565b60006020828403121561174757600080fd5b81356104e781611457565b60006020828403121561176457600080fd5b5035919050565b6000806040838503121561177e57600080fd5b50508035926020909101359150565b600080600080608085870312156117a357600080fd5b84359350602085013592506040850135915060608501356117c381611457565b939692955090935050565b6000806000604084860312156117e357600080fd5b83356117ee81611457565b9250602084013567ffffffffffffffff81111561180a57600080fd5b61163586828701611521565b6000806020838503121561182957600080fd5b823567ffffffffffffffff81111561184057600080fd5b61184c85828601611521565b90969095509350505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000600182016118965761189661186e565b5060010190565b6000808335601e198436030181126118b457600080fd5b83018035915067ffffffffffffffff8211156118cf57600080fd5b60200191503681900382131561136357600080fd5b6000602082840312156118f657600080fd5b815180151581146104e757600080fd5b60008251611918818460208701611642565b9190910192915050565b60006020828403121561193457600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff811182821017156119745761197461193b565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156119a3576119a361193b565b604052919050565b6000608082360312156119bd57600080fd5b6119c5611951565b82356119d081611457565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff80821115611a0157600080fd5b9085019036601f830112611a1457600080fd5b813581811115611a2657611a2661193b565b611a38601f8201601f1916850161197a565b91508082523684828501011115611a4e57600080fd5b808484018584013760009082019093019290925250606082015292915050565b60008235603e1983360301811261191857600080fd5b634e487b7160e01b600052601260045260246000fd5b600082611aa957611aa9611a84565b500490565b634e487b7160e01b600052600160045260246000fd5b8183823760009101908152919050565b600081518084526020808501808196508360051b8101915082860160005b85811015611b1c578284038952611b0a848351611666565b98850198935090840190600101611af2565b5091979650505050505050565b6001600160a01b038616815260a060208201819052600090611b4d90830187611ad4565b8281036040840152611b5f8187611ad4565b90508281036060840152611b738186611ad4565b91505082151560808301529695505050505050565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b60ff82811682821603908111156107af576107af61186e565b600060ff831680611be357611be3611a84565b8060ff84160691505092915050565b808201808211156107af576107af61186e565b60008451611c17818460208901611642565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b600052602160045260246000fd5b8281526040602082015260006105d7604083018461166656fea164736f6c6343000811000a", + "bytecode": "0x608060405234801561000f575f80fd5b5061001861001d565b6100da565b5f54610100900460ff16156100885760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b5f5460ff90811610156100d8575f805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b611b9d806100e75f395ff3fe608060405234801561000f575f80fd5b5060043610610106575f3560e01c806371017a541161009e5780639e32d3641161006e5780639e32d3641461025a578063a424740014610281578063dd6b9e2214610294578063e1c4b65a146102a7578063e35a14e5146102ba575f80fd5b806371017a541461020e5780637b103999146102215780638f0dbd25146102345780639810b69514610247575f80fd5b8063485cc955116100d9578063485cc95514610191578063572b6c05146101a457806358884432146101d05780636ccbae5f146101fb575f80fd5b8063150b7a021461010a5780631694116d1461013b5780631bf7e13e146101505780631c351a9d14610170575b5f80fd5b61011d610118366004611434565b6102e2565b6040516001600160e01b031990911681526020015b60405180910390f35b61014e6101493660046114e3565b610372565b005b61016361015e366004611549565b61040d565b6040516101329190611601565b61018361017e366004611613565b6104d6565b604051908152602001610132565b61014e61019f366004611666565b6105c3565b6101c06101b236600461169d565b6001600160a01b0316301490565b6040519015158152602001610132565b6067546101e3906001600160a01b031681565b6040516001600160a01b039091168152602001610132565b6101836102093660046116b8565b6106f8565b6101e361021c3660046116cf565b610751565b6066546101e3906001600160a01b031681565b61014e6102423660046116ef565b610791565b6101e36102553660046116cf565b610806565b6101837fd81bbfcee722494b885e891546eeac23d0eedcd44038d7a2f6ef9ec2f9e0d23981565b6101c061028f366004611549565b61085f565b6101c06102a236600461172d565b6108a8565b61014e6102b5366004611771565b61091d565b6101e36102c83660046116b8565b5f908152606560205260409020546001600160a01b031690565b6066545f906001600160a01b03166102f8610a43565b6001600160a01b031614158061032257505f848152606560205260409020546001600160a01b0316155b156103605783610330610a43565b60405163634afa0d60e01b815260048101929092526001600160a01b031660248201526044015b60405180910390fd5b50630a85bd0160e11b95945050505050565b828261037e8282610751565b6001600160a01b031661038f610a43565b6001600160a01b0316146103c057604051632cd9b44d60e11b81526004810183905260248101829052604401610357565b5f6103cb8686610806565b90505f5b87811015610402576103fa8989838181106103ec576103ec6117b0565b905060200201358387610a51565b6001016103cf565b505050505050505050565b60605f5a905061041e85858561085f565b61043b57604051638baa579f60e01b815260040160405180910390fd5b6104cb61044b602087018761169d565b3060408801358461045f60608b018b6117c4565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f92019190915250610b8492505050565b9150505b9392505050565b6067545f906001600160a01b031663aa271e1a6104f1610a43565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015610533573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105579190611807565b1580610572575030610567610a43565b6001600160a01b0316145b156105a45761057f610a43565b60405163e2c8c9d560e01b81526001600160a01b039091166004820152602401610357565b5f6105b0858585610c60565b90506105bb81610e73565b949350505050565b5f54610100900460ff16158080156105e157505f54600160ff909116105b806105fa5750303b1580156105fa57505f5460ff166001145b61065d5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610357565b5f805460ff19166001179055801561067e575f805461ff0019166101001790555b606680546001600160a01b038086166001600160a01b031992831617909255606780549285169290911691909117905580156106f3575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f9061074a906060016040516020818303038152906040528051906020012090565b5492915050565b5f80838360405160200161076f929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209150505b92915050565b828261079d8282610751565b6001600160a01b03166107ae610a43565b6001600160a01b0316146107df57604051632cd9b44d60e11b81526004810183905260248101829052604401610357565b856107e981610e73565b6107fd876107f78889610806565b86610a51565b50505050505050565b5f8060026108148585610e8f565b6040516108219190611826565b602060405180830381855afa15801561083c573d5f803e3d5ffd5b5050506040513d601f19601f820116820180604052508101906105bb9190611841565b5f6105bb61086c856118c6565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250610f1492505050565b5f805b8281101561091257846001600160a01b03166108f38585848181106108d2576108d26117b0565b905060200201355f908152606560205260409020546001600160a01b031690565b6001600160a01b03161461090a575f9150506104cf565b6001016108ab565b506001949350505050565b6067546001600160a01b031663aa271e1a610936610a43565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015610978573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061099c9190611807565b15806109b75750306109ac610a43565b6001600160a01b0316145b156109c45761057f610a43565b5f5b818110156106f357610a3a8383838181106109e3576109e36117b0565b90506020028101906109f59190611983565b610a039060208101906117c4565b858585818110610a1557610a156117b0565b9050602002810190610a279190611983565b610a3590602081019061169d565b610c60565b506001016109c6565b5f610a4c611059565b905090565b5f838152606560205260409020546001600160a01b03838116911614610ab4575f83815260656020526040908190205490516326995d8360e11b8152600481018590526001600160a01b0391821660248201529083166044820152606401610357565b5f838152606560205260409081902080546001600160a01b03191690556066549051632142170760e11b81523060048201526001600160a01b03838116602483015260448201869052909116906342842e0e906064015f604051808303815f87803b158015610b21575f80fd5b505af1158015610b33573d5f803e3d5ffd5b50505050806001600160a01b0316610b49610a43565b6001600160a01b0316847f9a471856befea1cabcd7fc8a1c4d70ea07b8ed2ee205cc361f932433542ef3fe60405160405180910390a4505050565b6060610b8f85611076565b5f80876001600160a01b031686610ba88b8a89896110db565b604051610bb59190611826565b5f604051808303815f8787f1925050503d805f8114610bef576040519150601f19603f3d011682016040523d82523d5f602084013e610bf4565b606091505b509092509050610c05603f876119bf565b5a11610c1357610c136119d2565b610c5382826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061110b565b9998505050505050505050565b5f60605f7fd81bbfcee722494b885e891546eeac23d0eedcd44038d7a2f6ef9ec2f9e0d2398686604051602001610c989291906119e6565b60405160208183030381529060405280519060200120604051602001610cc8929190918252602082015260400190565b60408051808303601f19018152828252805160209091012060028084526060840190925292505f9190816020015b6060815260200190600190039081610cf657905050905086868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920182905250855186945090925015159050610d5657610d566117b0565b6020026020010181905250604051806040016040528060038152602001621e9a5b60ea1b81525081600181518110610d9057610d906117b0565b6020908102919091018101919091525f8381526065909152604080822080546001600160a01b0319166001600160a01b03898116919091179091556067549151635cd7e3b360e01b8152911691635cd7e3b391610df891309186918991829190600401611a4d565b5f604051808303815f87803b158015610e0f575f80fd5b505af1158015610e21573d5f803e3d5ffd5b50505050846001600160a01b0316827f08717469d38a4b02325ea6637978c7952f94d3d8fc7848994f618ddbf4d637f18989604051610e61929190611aab565b60405180910390a35095945050505050565b303303610e8657610e8381611144565b50565b610e8381611076565b60605f82610e9f60016020611ad9565b60ff1660208110610eb257610eb26117b0565b1a9050610ec0600282611af2565b60ff1615610ecf576003610ed2565b60025b84604051602001610efc92919060f89290921b6001600160f81b0319168252600182015260210190565b60405160208183030381529060405291505092915050565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015610f58573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f7c9190611841565b90505f611029866060015180519060200120868860200151604051602001610fc99392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561104f5750855161104f906001600160a01b0316828661116e565b9695505050505050565b5f30330361106e575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f906060016040516020818303038152906040528051906020012090506110ca8190565b546110d6906001611b13565b905550565b60608285856040516020016110f293929190611b26565b6040516020818303038152906040529050949350505050565b6060831561111a5750816104cf565b82511561112a5782518084602001fd5b8160405162461bcd60e51b81526004016103579190611601565b61114c6112a9565b8114610e8357604051635637b6af60e11b815260048101829052602401610357565b5f805f61117b85856112bb565b90925090505f81600481111561119357611193611b64565b1480156111b15750856001600160a01b0316826001600160a01b0316145b156111c1576001925050506104cf565b5f80876001600160a01b0316631626ba7e60e01b88886040516024016111e8929190611b78565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516112269190611826565b5f60405180830381855afa9150503d805f811461125e576040519150601f19603f3d011682016040523d82523d5f602084013e611263565b606091505b5091509150818015611276575080516020145b801561129d57508051630b135d3f60e11b9061129b9083016020908101908401611841565b145b98975050505050505050565b5f3033036110735750601f1936013590565b5f8082516041036112ef576020830151604084015160608501515f1a6112e3878285856112fd565b945094505050506112f6565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561133257505f905060036113d9565b8460ff16601b1415801561134a57508460ff16601c14155b1561135a57505f905060046113d9565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156113ab573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b0381166113d3575f600192509250506113d9565b91505f90505b94509492505050565b6001600160a01b0381168114610e83575f80fd5b5f8083601f840112611406575f80fd5b50813567ffffffffffffffff81111561141d575f80fd5b6020830191508360208285010111156112f6575f80fd5b5f805f805f60808688031215611448575f80fd5b8535611453816113e2565b94506020860135611463816113e2565b935060408601359250606086013567ffffffffffffffff811115611485575f80fd5b611491888289016113f6565b969995985093965092949392505050565b5f8083601f8401126114b2575f80fd5b50813567ffffffffffffffff8111156114c9575f80fd5b6020830191508360208260051b85010111156112f6575f80fd5b5f805f805f608086880312156114f7575f80fd5b853567ffffffffffffffff81111561150d575f80fd5b611519888289016114a2565b9096509450506020860135925060408601359150606086013561153b816113e2565b809150509295509295909350565b5f805f6040848603121561155b575f80fd5b833567ffffffffffffffff80821115611572575f80fd5b9085019060808288031215611585575f80fd5b9093506020850135908082111561159a575f80fd5b506115a7868287016113f6565b9497909650939450505050565b5f5b838110156115ce5781810151838201526020016115b6565b50505f910152565b5f81518084526115ed8160208601602086016115b4565b601f01601f19169290920160200192915050565b602081525f6104cf60208301846115d6565b5f805f60408486031215611625575f80fd5b833567ffffffffffffffff81111561163b575f80fd5b611647868287016113f6565b909450925050602084013561165b816113e2565b809150509250925092565b5f8060408385031215611677575f80fd5b8235611682816113e2565b91506020830135611692816113e2565b809150509250929050565b5f602082840312156116ad575f80fd5b81356104cf816113e2565b5f602082840312156116c8575f80fd5b5035919050565b5f80604083850312156116e0575f80fd5b50508035926020909101359150565b5f805f8060808587031215611702575f80fd5b8435935060208501359250604085013591506060850135611722816113e2565b939692955090935050565b5f805f6040848603121561173f575f80fd5b833561174a816113e2565b9250602084013567ffffffffffffffff811115611765575f80fd5b6115a7868287016114a2565b5f8060208385031215611782575f80fd5b823567ffffffffffffffff811115611798575f80fd5b6117a4858286016114a2565b90969095509350505050565b634e487b7160e01b5f52603260045260245ffd5b5f808335601e198436030181126117d9575f80fd5b83018035915067ffffffffffffffff8211156117f3575f80fd5b6020019150368190038213156112f6575f80fd5b5f60208284031215611817575f80fd5b815180151581146104cf575f80fd5b5f82516118378184602087016115b4565b9190910192915050565b5f60208284031215611851575f80fd5b5051919050565b634e487b7160e01b5f52604160045260245ffd5b6040516080810167ffffffffffffffff8111828210171561188f5761188f611858565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156118be576118be611858565b604052919050565b5f608082360312156118d6575f80fd5b6118de61186c565b82356118e9816113e2565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff80821115611919575f80fd5b9085019036601f83011261192b575f80fd5b81358181111561193d5761193d611858565b61194f601f8201601f19168501611895565b91508082523684828501011115611964575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b5f8235603e19833603018112611837575f80fd5b634e487b7160e01b5f52601260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b5f826119cd576119cd611997565b500490565b634e487b7160e01b5f52600160045260245ffd5b818382375f9101908152919050565b5f8282518085526020808601955060208260051b840101602086015f5b84811015611a4057601f19868403018952611a2e8383516115d6565b98840198925090830190600101611a12565b5090979650505050505050565b6001600160a01b038616815260a0602082018190525f90611a70908301876119f5565b8281036040840152611a8281876119f5565b90508281036060840152611a9681866119f5565b91505082151560808301529695505050505050565b60208152816020820152818360408301375f818301604090810191909152601f909201601f19160101919050565b60ff828116828216039081111561078b5761078b6119ab565b5f60ff831680611b0457611b04611997565b8060ff84160691505092915050565b8082018082111561078b5761078b6119ab565b5f8451611b378184602089016115b4565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f6105bb60408301846115d656fea164736f6c6343000818000a", + "deployedBytecode": "0x608060405234801561000f575f80fd5b5060043610610106575f3560e01c806371017a541161009e5780639e32d3641161006e5780639e32d3641461025a578063a424740014610281578063dd6b9e2214610294578063e1c4b65a146102a7578063e35a14e5146102ba575f80fd5b806371017a541461020e5780637b103999146102215780638f0dbd25146102345780639810b69514610247575f80fd5b8063485cc955116100d9578063485cc95514610191578063572b6c05146101a457806358884432146101d05780636ccbae5f146101fb575f80fd5b8063150b7a021461010a5780631694116d1461013b5780631bf7e13e146101505780631c351a9d14610170575b5f80fd5b61011d610118366004611434565b6102e2565b6040516001600160e01b031990911681526020015b60405180910390f35b61014e6101493660046114e3565b610372565b005b61016361015e366004611549565b61040d565b6040516101329190611601565b61018361017e366004611613565b6104d6565b604051908152602001610132565b61014e61019f366004611666565b6105c3565b6101c06101b236600461169d565b6001600160a01b0316301490565b6040519015158152602001610132565b6067546101e3906001600160a01b031681565b6040516001600160a01b039091168152602001610132565b6101836102093660046116b8565b6106f8565b6101e361021c3660046116cf565b610751565b6066546101e3906001600160a01b031681565b61014e6102423660046116ef565b610791565b6101e36102553660046116cf565b610806565b6101837fd81bbfcee722494b885e891546eeac23d0eedcd44038d7a2f6ef9ec2f9e0d23981565b6101c061028f366004611549565b61085f565b6101c06102a236600461172d565b6108a8565b61014e6102b5366004611771565b61091d565b6101e36102c83660046116b8565b5f908152606560205260409020546001600160a01b031690565b6066545f906001600160a01b03166102f8610a43565b6001600160a01b031614158061032257505f848152606560205260409020546001600160a01b0316155b156103605783610330610a43565b60405163634afa0d60e01b815260048101929092526001600160a01b031660248201526044015b60405180910390fd5b50630a85bd0160e11b95945050505050565b828261037e8282610751565b6001600160a01b031661038f610a43565b6001600160a01b0316146103c057604051632cd9b44d60e11b81526004810183905260248101829052604401610357565b5f6103cb8686610806565b90505f5b87811015610402576103fa8989838181106103ec576103ec6117b0565b905060200201358387610a51565b6001016103cf565b505050505050505050565b60605f5a905061041e85858561085f565b61043b57604051638baa579f60e01b815260040160405180910390fd5b6104cb61044b602087018761169d565b3060408801358461045f60608b018b6117c4565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f92019190915250610b8492505050565b9150505b9392505050565b6067545f906001600160a01b031663aa271e1a6104f1610a43565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015610533573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105579190611807565b1580610572575030610567610a43565b6001600160a01b0316145b156105a45761057f610a43565b60405163e2c8c9d560e01b81526001600160a01b039091166004820152602401610357565b5f6105b0858585610c60565b90506105bb81610e73565b949350505050565b5f54610100900460ff16158080156105e157505f54600160ff909116105b806105fa5750303b1580156105fa57505f5460ff166001145b61065d5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610357565b5f805460ff19166001179055801561067e575f805461ff0019166101001790555b606680546001600160a01b038086166001600160a01b031992831617909255606780549285169290911691909117905580156106f3575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f9061074a906060016040516020818303038152906040528051906020012090565b5492915050565b5f80838360405160200161076f929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209150505b92915050565b828261079d8282610751565b6001600160a01b03166107ae610a43565b6001600160a01b0316146107df57604051632cd9b44d60e11b81526004810183905260248101829052604401610357565b856107e981610e73565b6107fd876107f78889610806565b86610a51565b50505050505050565b5f8060026108148585610e8f565b6040516108219190611826565b602060405180830381855afa15801561083c573d5f803e3d5ffd5b5050506040513d601f19601f820116820180604052508101906105bb9190611841565b5f6105bb61086c856118c6565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250610f1492505050565b5f805b8281101561091257846001600160a01b03166108f38585848181106108d2576108d26117b0565b905060200201355f908152606560205260409020546001600160a01b031690565b6001600160a01b03161461090a575f9150506104cf565b6001016108ab565b506001949350505050565b6067546001600160a01b031663aa271e1a610936610a43565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015610978573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061099c9190611807565b15806109b75750306109ac610a43565b6001600160a01b0316145b156109c45761057f610a43565b5f5b818110156106f357610a3a8383838181106109e3576109e36117b0565b90506020028101906109f59190611983565b610a039060208101906117c4565b858585818110610a1557610a156117b0565b9050602002810190610a279190611983565b610a3590602081019061169d565b610c60565b506001016109c6565b5f610a4c611059565b905090565b5f838152606560205260409020546001600160a01b03838116911614610ab4575f83815260656020526040908190205490516326995d8360e11b8152600481018590526001600160a01b0391821660248201529083166044820152606401610357565b5f838152606560205260409081902080546001600160a01b03191690556066549051632142170760e11b81523060048201526001600160a01b03838116602483015260448201869052909116906342842e0e906064015f604051808303815f87803b158015610b21575f80fd5b505af1158015610b33573d5f803e3d5ffd5b50505050806001600160a01b0316610b49610a43565b6001600160a01b0316847f9a471856befea1cabcd7fc8a1c4d70ea07b8ed2ee205cc361f932433542ef3fe60405160405180910390a4505050565b6060610b8f85611076565b5f80876001600160a01b031686610ba88b8a89896110db565b604051610bb59190611826565b5f604051808303815f8787f1925050503d805f8114610bef576040519150601f19603f3d011682016040523d82523d5f602084013e610bf4565b606091505b509092509050610c05603f876119bf565b5a11610c1357610c136119d2565b610c5382826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061110b565b9998505050505050505050565b5f60605f7fd81bbfcee722494b885e891546eeac23d0eedcd44038d7a2f6ef9ec2f9e0d2398686604051602001610c989291906119e6565b60405160208183030381529060405280519060200120604051602001610cc8929190918252602082015260400190565b60408051808303601f19018152828252805160209091012060028084526060840190925292505f9190816020015b6060815260200190600190039081610cf657905050905086868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920182905250855186945090925015159050610d5657610d566117b0565b6020026020010181905250604051806040016040528060038152602001621e9a5b60ea1b81525081600181518110610d9057610d906117b0565b6020908102919091018101919091525f8381526065909152604080822080546001600160a01b0319166001600160a01b03898116919091179091556067549151635cd7e3b360e01b8152911691635cd7e3b391610df891309186918991829190600401611a4d565b5f604051808303815f87803b158015610e0f575f80fd5b505af1158015610e21573d5f803e3d5ffd5b50505050846001600160a01b0316827f08717469d38a4b02325ea6637978c7952f94d3d8fc7848994f618ddbf4d637f18989604051610e61929190611aab565b60405180910390a35095945050505050565b303303610e8657610e8381611144565b50565b610e8381611076565b60605f82610e9f60016020611ad9565b60ff1660208110610eb257610eb26117b0565b1a9050610ec0600282611af2565b60ff1615610ecf576003610ed2565b60025b84604051602001610efc92919060f89290921b6001600160f81b0319168252600182015260210190565b60405160208183030381529060405291505092915050565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015610f58573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f7c9190611841565b90505f611029866060015180519060200120868860200151604051602001610fc99392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561104f5750855161104f906001600160a01b0316828661116e565b9695505050505050565b5f30330361106e575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f906060016040516020818303038152906040528051906020012090506110ca8190565b546110d6906001611b13565b905550565b60608285856040516020016110f293929190611b26565b6040516020818303038152906040529050949350505050565b6060831561111a5750816104cf565b82511561112a5782518084602001fd5b8160405162461bcd60e51b81526004016103579190611601565b61114c6112a9565b8114610e8357604051635637b6af60e11b815260048101829052602401610357565b5f805f61117b85856112bb565b90925090505f81600481111561119357611193611b64565b1480156111b15750856001600160a01b0316826001600160a01b0316145b156111c1576001925050506104cf565b5f80876001600160a01b0316631626ba7e60e01b88886040516024016111e8929190611b78565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516112269190611826565b5f60405180830381855afa9150503d805f811461125e576040519150601f19603f3d011682016040523d82523d5f602084013e611263565b606091505b5091509150818015611276575080516020145b801561129d57508051630b135d3f60e11b9061129b9083016020908101908401611841565b145b98975050505050505050565b5f3033036110735750601f1936013590565b5f8082516041036112ef576020830151604084015160608501515f1a6112e3878285856112fd565b945094505050506112f6565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561133257505f905060036113d9565b8460ff16601b1415801561134a57508460ff16601c14155b1561135a57505f905060046113d9565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156113ab573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b0381166113d3575f600192509250506113d9565b91505f90505b94509492505050565b6001600160a01b0381168114610e83575f80fd5b5f8083601f840112611406575f80fd5b50813567ffffffffffffffff81111561141d575f80fd5b6020830191508360208285010111156112f6575f80fd5b5f805f805f60808688031215611448575f80fd5b8535611453816113e2565b94506020860135611463816113e2565b935060408601359250606086013567ffffffffffffffff811115611485575f80fd5b611491888289016113f6565b969995985093965092949392505050565b5f8083601f8401126114b2575f80fd5b50813567ffffffffffffffff8111156114c9575f80fd5b6020830191508360208260051b85010111156112f6575f80fd5b5f805f805f608086880312156114f7575f80fd5b853567ffffffffffffffff81111561150d575f80fd5b611519888289016114a2565b9096509450506020860135925060408601359150606086013561153b816113e2565b809150509295509295909350565b5f805f6040848603121561155b575f80fd5b833567ffffffffffffffff80821115611572575f80fd5b9085019060808288031215611585575f80fd5b9093506020850135908082111561159a575f80fd5b506115a7868287016113f6565b9497909650939450505050565b5f5b838110156115ce5781810151838201526020016115b6565b50505f910152565b5f81518084526115ed8160208601602086016115b4565b601f01601f19169290920160200192915050565b602081525f6104cf60208301846115d6565b5f805f60408486031215611625575f80fd5b833567ffffffffffffffff81111561163b575f80fd5b611647868287016113f6565b909450925050602084013561165b816113e2565b809150509250925092565b5f8060408385031215611677575f80fd5b8235611682816113e2565b91506020830135611692816113e2565b809150509250929050565b5f602082840312156116ad575f80fd5b81356104cf816113e2565b5f602082840312156116c8575f80fd5b5035919050565b5f80604083850312156116e0575f80fd5b50508035926020909101359150565b5f805f8060808587031215611702575f80fd5b8435935060208501359250604085013591506060850135611722816113e2565b939692955090935050565b5f805f6040848603121561173f575f80fd5b833561174a816113e2565b9250602084013567ffffffffffffffff811115611765575f80fd5b6115a7868287016114a2565b5f8060208385031215611782575f80fd5b823567ffffffffffffffff811115611798575f80fd5b6117a4858286016114a2565b90969095509350505050565b634e487b7160e01b5f52603260045260245ffd5b5f808335601e198436030181126117d9575f80fd5b83018035915067ffffffffffffffff8211156117f3575f80fd5b6020019150368190038213156112f6575f80fd5b5f60208284031215611817575f80fd5b815180151581146104cf575f80fd5b5f82516118378184602087016115b4565b9190910192915050565b5f60208284031215611851575f80fd5b5051919050565b634e487b7160e01b5f52604160045260245ffd5b6040516080810167ffffffffffffffff8111828210171561188f5761188f611858565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156118be576118be611858565b604052919050565b5f608082360312156118d6575f80fd5b6118de61186c565b82356118e9816113e2565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff80821115611919575f80fd5b9085019036601f83011261192b575f80fd5b81358181111561193d5761193d611858565b61194f601f8201601f19168501611895565b91508082523684828501011115611964575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b5f8235603e19833603018112611837575f80fd5b634e487b7160e01b5f52601260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b5f826119cd576119cd611997565b500490565b634e487b7160e01b5f52600160045260245ffd5b818382375f9101908152919050565b5f8282518085526020808601955060208260051b840101602086015f5b84811015611a4057601f19868403018952611a2e8383516115d6565b98840198925090830190600101611a12565b5090979650505050505050565b6001600160a01b038616815260a0602082018190525f90611a70908301876119f5565b8281036040840152611a8281876119f5565b90508281036060840152611a9681866119f5565b91505082151560808301529695505050505050565b60208152816020820152818360408301375f818301604090810191909152601f909201601f19160101919050565b60ff828116828216039081111561078b5761078b6119ab565b5f60ff831680611b0457611b04611997565b8060ff84160691505092915050565b8082018082111561078b5761078b6119ab565b5f8451611b378184602089016115b4565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f6105bb60408301846115d656fea164736f6c6343000818000a", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/artifacts/ZoneInteraction.json b/artifacts/ZoneInteraction.json new file mode 100644 index 00000000..4d6f5322 --- /dev/null +++ b/artifacts/ZoneInteraction.json @@ -0,0 +1,33 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "ZoneInteraction", + "sourceName": "seaport-core/src/lib/ZoneInteraction.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "InvalidContractOrder", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "InvalidRestrictedOrder", + "type": "error" + } + ], + "bytecode": "0x6080604052348015600e575f80fd5b50601580601a5f395ff3fe60806040525f80fdfea164736f6c6343000818000a", + "deployedBytecode": "0x60806040525f80fdfea164736f6c6343000818000a", + "linkReferences": {}, + "deployedLinkReferences": {} +} diff --git a/artifacts/ZoneInteractionErrors.json b/artifacts/ZoneInteractionErrors.json new file mode 100644 index 00000000..608da8eb --- /dev/null +++ b/artifacts/ZoneInteractionErrors.json @@ -0,0 +1,33 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "ZoneInteractionErrors", + "sourceName": "seaport-types/src/interfaces/ZoneInteractionErrors.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "InvalidContractOrder", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "orderHash", + "type": "bytes32" + } + ], + "name": "InvalidRestrictedOrder", + "type": "error" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x", + "linkReferences": {}, + "deployedLinkReferences": {} +} diff --git a/artifacts/abi/AmountDerivationErrors.json b/artifacts/abi/AmountDerivationErrors.json new file mode 100644 index 00000000..711bb3bb --- /dev/null +++ b/artifacts/abi/AmountDerivationErrors.json @@ -0,0 +1 @@ +[{"inputs":[],"name":"InexactFraction","type":"error"}] diff --git a/artifacts/abi/AmountDeriver.json b/artifacts/abi/AmountDeriver.json new file mode 100644 index 00000000..711bb3bb --- /dev/null +++ b/artifacts/abi/AmountDeriver.json @@ -0,0 +1 @@ +[{"inputs":[],"name":"InexactFraction","type":"error"}] diff --git a/artifacts/abi/Assertions.json b/artifacts/abi/Assertions.json new file mode 100644 index 00000000..e10b75a3 --- /dev/null +++ b/artifacts/abi/Assertions.json @@ -0,0 +1 @@ +[{"inputs":[{"internalType":"address","name":"conduitController","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"BadFraction","type":"error"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"BadReturnValueFromERC20OnTransfer","type":"error"},{"inputs":[],"name":"CannotCancelOrder","type":"error"},{"inputs":[],"name":"ConsiderationLengthNotEqualToTotalOriginal","type":"error"},{"inputs":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"uint256","name":"considerationIndex","type":"uint256"},{"internalType":"uint256","name":"shortfallAmount","type":"uint256"}],"name":"ConsiderationNotMet","type":"error"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256[]","name":"identifiers","type":"uint256[]"},{"internalType":"uint256[]","name":"amounts","type":"uint256[]"}],"name":"ERC1155BatchTransferGenericFailure","type":"error"},{"inputs":[],"name":"InsufficientNativeTokensSupplied","type":"error"},{"inputs":[],"name":"Invalid1155BatchTransferEncoding","type":"error"},{"inputs":[],"name":"InvalidBasicOrderParameterEncoding","type":"error"},{"inputs":[{"internalType":"address","name":"conduit","type":"address"}],"name":"InvalidCallToConduit","type":"error"},{"inputs":[{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"address","name":"conduit","type":"address"}],"name":"InvalidConduit","type":"error"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"InvalidERC721TransferAmount","type":"error"},{"inputs":[{"internalType":"uint256","name":"value","type":"uint256"}],"name":"InvalidMsgValue","type":"error"},{"inputs":[],"name":"InvalidNativeOfferItem","type":"error"},{"inputs":[{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"}],"name":"InvalidTime","type":"error"},{"inputs":[],"name":"MissingItemAmount","type":"error"},{"inputs":[],"name":"MissingOriginalConsiderationItems","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"NativeTokenTransferGenericFailure","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"NoContract","type":"error"},{"inputs":[],"name":"NoReentrantCalls","type":"error"},{"inputs":[],"name":"NoSpecifiedOrdersAvailable","type":"error"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"OrderAlreadyFilled","type":"error"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"OrderIsCancelled","type":"error"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"OrderPartiallyFilled","type":"error"},{"inputs":[],"name":"PartialFillsNotEnabledForOrder","type":"error"},{"inputs":[],"name":"TStoreAlreadyActivated","type":"error"},{"inputs":[],"name":"TStoreNotSupported","type":"error"},{"inputs":[],"name":"TloadTestContractDeploymentFailed","type":"error"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"TokenTransferGenericFailure","type":"error"},{"inputs":[],"name":"UnusedItemParameters","type":"error"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"newCounter","type":"uint256"},{"indexed":true,"internalType":"address","name":"offerer","type":"address"}],"name":"CounterIncremented","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"orderHash","type":"bytes32"},{"indexed":true,"internalType":"address","name":"offerer","type":"address"},{"indexed":true,"internalType":"address","name":"zone","type":"address"}],"name":"OrderCancelled","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"orderHash","type":"bytes32"},{"indexed":true,"internalType":"address","name":"offerer","type":"address"},{"indexed":true,"internalType":"address","name":"zone","type":"address"},{"indexed":false,"internalType":"address","name":"recipient","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"}],"indexed":false,"internalType":"struct SpentItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"indexed":false,"internalType":"struct ReceivedItem[]","name":"consideration","type":"tuple[]"}],"name":"OrderFulfilled","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"orderHash","type":"bytes32"},{"components":[{"internalType":"address","name":"offerer","type":"address"},{"internalType":"address","name":"zone","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"}],"internalType":"struct OfferItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ConsiderationItem[]","name":"consideration","type":"tuple[]"},{"internalType":"enum OrderType","name":"orderType","type":"uint8"},{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"},{"internalType":"bytes32","name":"zoneHash","type":"bytes32"},{"internalType":"uint256","name":"salt","type":"uint256"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"uint256","name":"totalOriginalConsiderationItems","type":"uint256"}],"indexed":false,"internalType":"struct OrderParameters","name":"orderParameters","type":"tuple"}],"name":"OrderValidated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32[]","name":"orderHashes","type":"bytes32[]"}],"name":"OrdersMatched","type":"event"},{"inputs":[],"name":"__activateTstore","outputs":[],"stateMutability":"nonpayable","type":"function"}] diff --git a/artifacts/abi/BasicOrderFulfiller.json b/artifacts/abi/BasicOrderFulfiller.json new file mode 100644 index 00000000..24f4e091 --- /dev/null +++ b/artifacts/abi/BasicOrderFulfiller.json @@ -0,0 +1 @@ +[{"inputs":[{"internalType":"address","name":"conduitController","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"BadContractSignature","type":"error"},{"inputs":[],"name":"BadFraction","type":"error"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"BadReturnValueFromERC20OnTransfer","type":"error"},{"inputs":[{"internalType":"uint8","name":"v","type":"uint8"}],"name":"BadSignatureV","type":"error"},{"inputs":[],"name":"CannotCancelOrder","type":"error"},{"inputs":[],"name":"ConsiderationLengthNotEqualToTotalOriginal","type":"error"},{"inputs":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"uint256","name":"considerationIndex","type":"uint256"},{"internalType":"uint256","name":"shortfallAmount","type":"uint256"}],"name":"ConsiderationNotMet","type":"error"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256[]","name":"identifiers","type":"uint256[]"},{"internalType":"uint256[]","name":"amounts","type":"uint256[]"}],"name":"ERC1155BatchTransferGenericFailure","type":"error"},{"inputs":[],"name":"InsufficientNativeTokensSupplied","type":"error"},{"inputs":[],"name":"Invalid1155BatchTransferEncoding","type":"error"},{"inputs":[],"name":"InvalidBasicOrderParameterEncoding","type":"error"},{"inputs":[{"internalType":"address","name":"conduit","type":"address"}],"name":"InvalidCallToConduit","type":"error"},{"inputs":[{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"address","name":"conduit","type":"address"}],"name":"InvalidConduit","type":"error"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"InvalidContractOrder","type":"error"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"InvalidERC721TransferAmount","type":"error"},{"inputs":[{"internalType":"uint256","name":"value","type":"uint256"}],"name":"InvalidMsgValue","type":"error"},{"inputs":[],"name":"InvalidNativeOfferItem","type":"error"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"InvalidRestrictedOrder","type":"error"},{"inputs":[],"name":"InvalidSignature","type":"error"},{"inputs":[],"name":"InvalidSigner","type":"error"},{"inputs":[{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"}],"name":"InvalidTime","type":"error"},{"inputs":[],"name":"MissingItemAmount","type":"error"},{"inputs":[],"name":"MissingOriginalConsiderationItems","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"NativeTokenTransferGenericFailure","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"NoContract","type":"error"},{"inputs":[],"name":"NoReentrantCalls","type":"error"},{"inputs":[],"name":"NoSpecifiedOrdersAvailable","type":"error"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"OrderAlreadyFilled","type":"error"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"OrderIsCancelled","type":"error"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"OrderPartiallyFilled","type":"error"},{"inputs":[],"name":"PartialFillsNotEnabledForOrder","type":"error"},{"inputs":[],"name":"TStoreAlreadyActivated","type":"error"},{"inputs":[],"name":"TStoreNotSupported","type":"error"},{"inputs":[],"name":"TloadTestContractDeploymentFailed","type":"error"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"TokenTransferGenericFailure","type":"error"},{"inputs":[],"name":"UnusedItemParameters","type":"error"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"newCounter","type":"uint256"},{"indexed":true,"internalType":"address","name":"offerer","type":"address"}],"name":"CounterIncremented","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"orderHash","type":"bytes32"},{"indexed":true,"internalType":"address","name":"offerer","type":"address"},{"indexed":true,"internalType":"address","name":"zone","type":"address"}],"name":"OrderCancelled","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"orderHash","type":"bytes32"},{"indexed":true,"internalType":"address","name":"offerer","type":"address"},{"indexed":true,"internalType":"address","name":"zone","type":"address"},{"indexed":false,"internalType":"address","name":"recipient","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"}],"indexed":false,"internalType":"struct SpentItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"indexed":false,"internalType":"struct ReceivedItem[]","name":"consideration","type":"tuple[]"}],"name":"OrderFulfilled","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"orderHash","type":"bytes32"},{"components":[{"internalType":"address","name":"offerer","type":"address"},{"internalType":"address","name":"zone","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"}],"internalType":"struct OfferItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ConsiderationItem[]","name":"consideration","type":"tuple[]"},{"internalType":"enum OrderType","name":"orderType","type":"uint8"},{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"},{"internalType":"bytes32","name":"zoneHash","type":"bytes32"},{"internalType":"uint256","name":"salt","type":"uint256"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"uint256","name":"totalOriginalConsiderationItems","type":"uint256"}],"indexed":false,"internalType":"struct OrderParameters","name":"orderParameters","type":"tuple"}],"name":"OrderValidated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32[]","name":"orderHashes","type":"bytes32[]"}],"name":"OrdersMatched","type":"event"},{"inputs":[],"name":"__activateTstore","outputs":[],"stateMutability":"nonpayable","type":"function"}] diff --git a/artifacts/abi/Conduit.json b/artifacts/abi/Conduit.json new file mode 100644 index 00000000..a11433da --- /dev/null +++ b/artifacts/abi/Conduit.json @@ -0,0 +1 @@ +[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"BadReturnValueFromERC20OnTransfer","type":"error"},{"inputs":[{"internalType":"address","name":"channel","type":"address"}],"name":"ChannelClosed","type":"error"},{"inputs":[{"internalType":"address","name":"channel","type":"address"},{"internalType":"bool","name":"isOpen","type":"bool"}],"name":"ChannelStatusAlreadySet","type":"error"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256[]","name":"identifiers","type":"uint256[]"},{"internalType":"uint256[]","name":"amounts","type":"uint256[]"}],"name":"ERC1155BatchTransferGenericFailure","type":"error"},{"inputs":[],"name":"Invalid1155BatchTransferEncoding","type":"error"},{"inputs":[],"name":"InvalidController","type":"error"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"InvalidERC721TransferAmount","type":"error"},{"inputs":[],"name":"InvalidItemType","type":"error"},{"inputs":[],"name":"MissingItemAmount","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"NoContract","type":"error"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"TokenTransferGenericFailure","type":"error"},{"inputs":[],"name":"UnusedItemParameters","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"channel","type":"address"},{"indexed":false,"internalType":"bool","name":"open","type":"bool"}],"name":"ChannelUpdated","type":"event"},{"inputs":[{"components":[{"internalType":"enum ConduitItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"}],"internalType":"struct ConduitTransfer[]","name":"transfers","type":"tuple[]"}],"name":"execute","outputs":[{"internalType":"bytes4","name":"magicValue","type":"bytes4"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256[]","name":"ids","type":"uint256[]"},{"internalType":"uint256[]","name":"amounts","type":"uint256[]"}],"internalType":"struct ConduitBatch1155Transfer[]","name":"batchTransfers","type":"tuple[]"}],"name":"executeBatch1155","outputs":[{"internalType":"bytes4","name":"magicValue","type":"bytes4"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"enum ConduitItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"}],"internalType":"struct ConduitTransfer[]","name":"standardTransfers","type":"tuple[]"},{"components":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256[]","name":"ids","type":"uint256[]"},{"internalType":"uint256[]","name":"amounts","type":"uint256[]"}],"internalType":"struct ConduitBatch1155Transfer[]","name":"batchTransfers","type":"tuple[]"}],"name":"executeWithBatch1155","outputs":[{"internalType":"bytes4","name":"magicValue","type":"bytes4"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"channel","type":"address"},{"internalType":"bool","name":"isOpen","type":"bool"}],"name":"updateChannel","outputs":[],"stateMutability":"nonpayable","type":"function"}] diff --git a/artifacts/abi/ConduitController.json b/artifacts/abi/ConduitController.json new file mode 100644 index 00000000..51fd822b --- /dev/null +++ b/artifacts/abi/ConduitController.json @@ -0,0 +1 @@ +[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"address","name":"conduit","type":"address"}],"name":"CallerIsNotNewPotentialOwner","type":"error"},{"inputs":[{"internalType":"address","name":"conduit","type":"address"}],"name":"CallerIsNotOwner","type":"error"},{"inputs":[{"internalType":"address","name":"conduit","type":"address"}],"name":"ChannelOutOfRange","type":"error"},{"inputs":[{"internalType":"address","name":"conduit","type":"address"}],"name":"ConduitAlreadyExists","type":"error"},{"inputs":[],"name":"InvalidCreator","type":"error"},{"inputs":[],"name":"InvalidInitialOwner","type":"error"},{"inputs":[{"internalType":"address","name":"conduit","type":"address"},{"internalType":"address","name":"newPotentialOwner","type":"address"}],"name":"NewPotentialOwnerAlreadySet","type":"error"},{"inputs":[{"internalType":"address","name":"conduit","type":"address"}],"name":"NewPotentialOwnerIsZeroAddress","type":"error"},{"inputs":[],"name":"NoConduit","type":"error"},{"inputs":[{"internalType":"address","name":"conduit","type":"address"}],"name":"NoPotentialOwnerCurrentlySet","type":"error"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"conduit","type":"address"},{"indexed":false,"internalType":"bytes32","name":"conduitKey","type":"bytes32"}],"name":"NewConduit","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"conduit","type":"address"},{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"newPotentialOwner","type":"address"}],"name":"PotentialOwnerUpdated","type":"event"},{"inputs":[{"internalType":"address","name":"conduit","type":"address"}],"name":"acceptOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"conduit","type":"address"}],"name":"cancelOwnershipTransfer","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"address","name":"initialOwner","type":"address"}],"name":"createConduit","outputs":[{"internalType":"address","name":"conduit","type":"address"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"conduit","type":"address"},{"internalType":"uint256","name":"channelIndex","type":"uint256"}],"name":"getChannel","outputs":[{"internalType":"address","name":"channel","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"conduit","type":"address"},{"internalType":"address","name":"channel","type":"address"}],"name":"getChannelStatus","outputs":[{"internalType":"bool","name":"isOpen","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"conduit","type":"address"}],"name":"getChannels","outputs":[{"internalType":"address[]","name":"channels","type":"address[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"conduitKey","type":"bytes32"}],"name":"getConduit","outputs":[{"internalType":"address","name":"conduit","type":"address"},{"internalType":"bool","name":"exists","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getConduitCodeHashes","outputs":[{"internalType":"bytes32","name":"creationCodeHash","type":"bytes32"},{"internalType":"bytes32","name":"runtimeCodeHash","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"conduit","type":"address"}],"name":"getKey","outputs":[{"internalType":"bytes32","name":"conduitKey","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"conduit","type":"address"}],"name":"getPotentialOwner","outputs":[{"internalType":"address","name":"potentialOwner","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"conduit","type":"address"}],"name":"getTotalChannels","outputs":[{"internalType":"uint256","name":"totalChannels","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"conduit","type":"address"}],"name":"ownerOf","outputs":[{"internalType":"address","name":"owner","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"conduit","type":"address"},{"internalType":"address","name":"newPotentialOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"conduit","type":"address"},{"internalType":"address","name":"channel","type":"address"},{"internalType":"bool","name":"isOpen","type":"bool"}],"name":"updateChannel","outputs":[],"stateMutability":"nonpayable","type":"function"}] diff --git a/artifacts/abi/ConduitControllerInterface.json b/artifacts/abi/ConduitControllerInterface.json new file mode 100644 index 00000000..d1b87c47 --- /dev/null +++ b/artifacts/abi/ConduitControllerInterface.json @@ -0,0 +1 @@ +[{"inputs":[{"internalType":"address","name":"conduit","type":"address"}],"name":"CallerIsNotNewPotentialOwner","type":"error"},{"inputs":[{"internalType":"address","name":"conduit","type":"address"}],"name":"CallerIsNotOwner","type":"error"},{"inputs":[{"internalType":"address","name":"conduit","type":"address"}],"name":"ChannelOutOfRange","type":"error"},{"inputs":[{"internalType":"address","name":"conduit","type":"address"}],"name":"ConduitAlreadyExists","type":"error"},{"inputs":[],"name":"InvalidCreator","type":"error"},{"inputs":[],"name":"InvalidInitialOwner","type":"error"},{"inputs":[{"internalType":"address","name":"conduit","type":"address"},{"internalType":"address","name":"newPotentialOwner","type":"address"}],"name":"NewPotentialOwnerAlreadySet","type":"error"},{"inputs":[{"internalType":"address","name":"conduit","type":"address"}],"name":"NewPotentialOwnerIsZeroAddress","type":"error"},{"inputs":[],"name":"NoConduit","type":"error"},{"inputs":[{"internalType":"address","name":"conduit","type":"address"}],"name":"NoPotentialOwnerCurrentlySet","type":"error"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"conduit","type":"address"},{"indexed":false,"internalType":"bytes32","name":"conduitKey","type":"bytes32"}],"name":"NewConduit","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"conduit","type":"address"},{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"newPotentialOwner","type":"address"}],"name":"PotentialOwnerUpdated","type":"event"},{"inputs":[{"internalType":"address","name":"conduit","type":"address"}],"name":"acceptOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"conduit","type":"address"}],"name":"cancelOwnershipTransfer","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"address","name":"initialOwner","type":"address"}],"name":"createConduit","outputs":[{"internalType":"address","name":"conduit","type":"address"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"conduit","type":"address"},{"internalType":"uint256","name":"channelIndex","type":"uint256"}],"name":"getChannel","outputs":[{"internalType":"address","name":"channel","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"conduit","type":"address"},{"internalType":"address","name":"channel","type":"address"}],"name":"getChannelStatus","outputs":[{"internalType":"bool","name":"isOpen","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"conduit","type":"address"}],"name":"getChannels","outputs":[{"internalType":"address[]","name":"channels","type":"address[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"conduitKey","type":"bytes32"}],"name":"getConduit","outputs":[{"internalType":"address","name":"conduit","type":"address"},{"internalType":"bool","name":"exists","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getConduitCodeHashes","outputs":[{"internalType":"bytes32","name":"creationCodeHash","type":"bytes32"},{"internalType":"bytes32","name":"runtimeCodeHash","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"conduit","type":"address"}],"name":"getKey","outputs":[{"internalType":"bytes32","name":"conduitKey","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"conduit","type":"address"}],"name":"getPotentialOwner","outputs":[{"internalType":"address","name":"potentialOwner","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"conduit","type":"address"}],"name":"getTotalChannels","outputs":[{"internalType":"uint256","name":"totalChannels","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"conduit","type":"address"}],"name":"ownerOf","outputs":[{"internalType":"address","name":"owner","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"conduit","type":"address"},{"internalType":"address","name":"newPotentialOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"conduit","type":"address"},{"internalType":"address","name":"channel","type":"address"},{"internalType":"bool","name":"isOpen","type":"bool"}],"name":"updateChannel","outputs":[],"stateMutability":"nonpayable","type":"function"}] diff --git a/artifacts/abi/ConduitInterface.json b/artifacts/abi/ConduitInterface.json new file mode 100644 index 00000000..ddee3e71 --- /dev/null +++ b/artifacts/abi/ConduitInterface.json @@ -0,0 +1 @@ +[{"inputs":[{"internalType":"address","name":"channel","type":"address"}],"name":"ChannelClosed","type":"error"},{"inputs":[{"internalType":"address","name":"channel","type":"address"},{"internalType":"bool","name":"isOpen","type":"bool"}],"name":"ChannelStatusAlreadySet","type":"error"},{"inputs":[],"name":"InvalidController","type":"error"},{"inputs":[],"name":"InvalidItemType","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"channel","type":"address"},{"indexed":false,"internalType":"bool","name":"open","type":"bool"}],"name":"ChannelUpdated","type":"event"},{"inputs":[{"components":[{"internalType":"enum ConduitItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"}],"internalType":"struct ConduitTransfer[]","name":"transfers","type":"tuple[]"}],"name":"execute","outputs":[{"internalType":"bytes4","name":"magicValue","type":"bytes4"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256[]","name":"ids","type":"uint256[]"},{"internalType":"uint256[]","name":"amounts","type":"uint256[]"}],"internalType":"struct ConduitBatch1155Transfer[]","name":"batch1155Transfers","type":"tuple[]"}],"name":"executeBatch1155","outputs":[{"internalType":"bytes4","name":"magicValue","type":"bytes4"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"enum ConduitItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"}],"internalType":"struct ConduitTransfer[]","name":"standardTransfers","type":"tuple[]"},{"components":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256[]","name":"ids","type":"uint256[]"},{"internalType":"uint256[]","name":"amounts","type":"uint256[]"}],"internalType":"struct ConduitBatch1155Transfer[]","name":"batch1155Transfers","type":"tuple[]"}],"name":"executeWithBatch1155","outputs":[{"internalType":"bytes4","name":"magicValue","type":"bytes4"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"channel","type":"address"},{"internalType":"bool","name":"isOpen","type":"bool"}],"name":"updateChannel","outputs":[],"stateMutability":"nonpayable","type":"function"}] diff --git a/artifacts/abi/Consideration.json b/artifacts/abi/Consideration.json new file mode 100644 index 00000000..9aed30ff --- /dev/null +++ b/artifacts/abi/Consideration.json @@ -0,0 +1 @@ +[{"inputs":[{"internalType":"address","name":"conduitController","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"BadContractSignature","type":"error"},{"inputs":[],"name":"BadFraction","type":"error"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"BadReturnValueFromERC20OnTransfer","type":"error"},{"inputs":[{"internalType":"uint8","name":"v","type":"uint8"}],"name":"BadSignatureV","type":"error"},{"inputs":[],"name":"CannotCancelOrder","type":"error"},{"inputs":[],"name":"ConsiderationCriteriaResolverOutOfRange","type":"error"},{"inputs":[],"name":"ConsiderationLengthNotEqualToTotalOriginal","type":"error"},{"inputs":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"uint256","name":"considerationIndex","type":"uint256"},{"internalType":"uint256","name":"shortfallAmount","type":"uint256"}],"name":"ConsiderationNotMet","type":"error"},{"inputs":[],"name":"CriteriaNotEnabledForItem","type":"error"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256[]","name":"identifiers","type":"uint256[]"},{"internalType":"uint256[]","name":"amounts","type":"uint256[]"}],"name":"ERC1155BatchTransferGenericFailure","type":"error"},{"inputs":[],"name":"InexactFraction","type":"error"},{"inputs":[],"name":"InsufficientNativeTokensSupplied","type":"error"},{"inputs":[],"name":"Invalid1155BatchTransferEncoding","type":"error"},{"inputs":[],"name":"InvalidBasicOrderParameterEncoding","type":"error"},{"inputs":[{"internalType":"address","name":"conduit","type":"address"}],"name":"InvalidCallToConduit","type":"error"},{"inputs":[{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"address","name":"conduit","type":"address"}],"name":"InvalidConduit","type":"error"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"InvalidContractOrder","type":"error"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"InvalidERC721TransferAmount","type":"error"},{"inputs":[],"name":"InvalidFulfillmentComponentData","type":"error"},{"inputs":[{"internalType":"uint256","name":"value","type":"uint256"}],"name":"InvalidMsgValue","type":"error"},{"inputs":[],"name":"InvalidNativeOfferItem","type":"error"},{"inputs":[],"name":"InvalidProof","type":"error"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"InvalidRestrictedOrder","type":"error"},{"inputs":[],"name":"InvalidSignature","type":"error"},{"inputs":[],"name":"InvalidSigner","type":"error"},{"inputs":[{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"}],"name":"InvalidTime","type":"error"},{"inputs":[{"internalType":"uint256","name":"fulfillmentIndex","type":"uint256"}],"name":"MismatchedFulfillmentOfferAndConsiderationComponents","type":"error"},{"inputs":[{"internalType":"enum Side","name":"side","type":"uint8"}],"name":"MissingFulfillmentComponentOnAggregation","type":"error"},{"inputs":[],"name":"MissingItemAmount","type":"error"},{"inputs":[],"name":"MissingOriginalConsiderationItems","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"NativeTokenTransferGenericFailure","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"NoContract","type":"error"},{"inputs":[],"name":"NoReentrantCalls","type":"error"},{"inputs":[],"name":"NoSpecifiedOrdersAvailable","type":"error"},{"inputs":[],"name":"OfferAndConsiderationRequiredOnFulfillment","type":"error"},{"inputs":[],"name":"OfferCriteriaResolverOutOfRange","type":"error"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"OrderAlreadyFilled","type":"error"},{"inputs":[{"internalType":"enum Side","name":"side","type":"uint8"}],"name":"OrderCriteriaResolverOutOfRange","type":"error"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"OrderIsCancelled","type":"error"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"OrderPartiallyFilled","type":"error"},{"inputs":[],"name":"PartialFillsNotEnabledForOrder","type":"error"},{"inputs":[],"name":"TStoreAlreadyActivated","type":"error"},{"inputs":[],"name":"TStoreNotSupported","type":"error"},{"inputs":[],"name":"TloadTestContractDeploymentFailed","type":"error"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"TokenTransferGenericFailure","type":"error"},{"inputs":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"uint256","name":"considerationIndex","type":"uint256"}],"name":"UnresolvedConsiderationCriteria","type":"error"},{"inputs":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"uint256","name":"offerIndex","type":"uint256"}],"name":"UnresolvedOfferCriteria","type":"error"},{"inputs":[],"name":"UnusedItemParameters","type":"error"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"newCounter","type":"uint256"},{"indexed":true,"internalType":"address","name":"offerer","type":"address"}],"name":"CounterIncremented","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"orderHash","type":"bytes32"},{"indexed":true,"internalType":"address","name":"offerer","type":"address"},{"indexed":true,"internalType":"address","name":"zone","type":"address"}],"name":"OrderCancelled","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"orderHash","type":"bytes32"},{"indexed":true,"internalType":"address","name":"offerer","type":"address"},{"indexed":true,"internalType":"address","name":"zone","type":"address"},{"indexed":false,"internalType":"address","name":"recipient","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"}],"indexed":false,"internalType":"struct SpentItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"indexed":false,"internalType":"struct ReceivedItem[]","name":"consideration","type":"tuple[]"}],"name":"OrderFulfilled","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"orderHash","type":"bytes32"},{"components":[{"internalType":"address","name":"offerer","type":"address"},{"internalType":"address","name":"zone","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"}],"internalType":"struct OfferItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ConsiderationItem[]","name":"consideration","type":"tuple[]"},{"internalType":"enum OrderType","name":"orderType","type":"uint8"},{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"},{"internalType":"bytes32","name":"zoneHash","type":"bytes32"},{"internalType":"uint256","name":"salt","type":"uint256"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"uint256","name":"totalOriginalConsiderationItems","type":"uint256"}],"indexed":false,"internalType":"struct OrderParameters","name":"orderParameters","type":"tuple"}],"name":"OrderValidated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32[]","name":"orderHashes","type":"bytes32[]"}],"name":"OrdersMatched","type":"event"},{"inputs":[],"name":"__activateTstore","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"offerer","type":"address"},{"internalType":"address","name":"zone","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"}],"internalType":"struct OfferItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ConsiderationItem[]","name":"consideration","type":"tuple[]"},{"internalType":"enum OrderType","name":"orderType","type":"uint8"},{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"},{"internalType":"bytes32","name":"zoneHash","type":"bytes32"},{"internalType":"uint256","name":"salt","type":"uint256"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"uint256","name":"counter","type":"uint256"}],"internalType":"struct OrderComponents[]","name":"orders","type":"tuple[]"}],"name":"cancel","outputs":[{"internalType":"bool","name":"cancelled","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"address","name":"offerer","type":"address"},{"internalType":"address","name":"zone","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"}],"internalType":"struct OfferItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ConsiderationItem[]","name":"consideration","type":"tuple[]"},{"internalType":"enum OrderType","name":"orderType","type":"uint8"},{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"},{"internalType":"bytes32","name":"zoneHash","type":"bytes32"},{"internalType":"uint256","name":"salt","type":"uint256"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"uint256","name":"totalOriginalConsiderationItems","type":"uint256"}],"internalType":"struct OrderParameters","name":"parameters","type":"tuple"},{"internalType":"uint120","name":"numerator","type":"uint120"},{"internalType":"uint120","name":"denominator","type":"uint120"},{"internalType":"bytes","name":"signature","type":"bytes"},{"internalType":"bytes","name":"extraData","type":"bytes"}],"internalType":"struct AdvancedOrder","name":"","type":"tuple"},{"components":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"enum Side","name":"side","type":"uint8"},{"internalType":"uint256","name":"index","type":"uint256"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"bytes32[]","name":"criteriaProof","type":"bytes32[]"}],"internalType":"struct CriteriaResolver[]","name":"","type":"tuple[]"},{"internalType":"bytes32","name":"fulfillerConduitKey","type":"bytes32"},{"internalType":"address","name":"recipient","type":"address"}],"name":"fulfillAdvancedOrder","outputs":[{"internalType":"bool","name":"fulfilled","type":"bool"}],"stateMutability":"payable","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"address","name":"offerer","type":"address"},{"internalType":"address","name":"zone","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"}],"internalType":"struct OfferItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ConsiderationItem[]","name":"consideration","type":"tuple[]"},{"internalType":"enum OrderType","name":"orderType","type":"uint8"},{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"},{"internalType":"bytes32","name":"zoneHash","type":"bytes32"},{"internalType":"uint256","name":"salt","type":"uint256"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"uint256","name":"totalOriginalConsiderationItems","type":"uint256"}],"internalType":"struct OrderParameters","name":"parameters","type":"tuple"},{"internalType":"uint120","name":"numerator","type":"uint120"},{"internalType":"uint120","name":"denominator","type":"uint120"},{"internalType":"bytes","name":"signature","type":"bytes"},{"internalType":"bytes","name":"extraData","type":"bytes"}],"internalType":"struct AdvancedOrder[]","name":"","type":"tuple[]"},{"components":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"enum Side","name":"side","type":"uint8"},{"internalType":"uint256","name":"index","type":"uint256"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"bytes32[]","name":"criteriaProof","type":"bytes32[]"}],"internalType":"struct CriteriaResolver[]","name":"","type":"tuple[]"},{"components":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"uint256","name":"itemIndex","type":"uint256"}],"internalType":"struct FulfillmentComponent[][]","name":"","type":"tuple[][]"},{"components":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"uint256","name":"itemIndex","type":"uint256"}],"internalType":"struct FulfillmentComponent[][]","name":"","type":"tuple[][]"},{"internalType":"bytes32","name":"fulfillerConduitKey","type":"bytes32"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"maximumFulfilled","type":"uint256"}],"name":"fulfillAvailableAdvancedOrders","outputs":[{"internalType":"bool[]","name":"","type":"bool[]"},{"components":[{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ReceivedItem","name":"item","type":"tuple"},{"internalType":"address","name":"offerer","type":"address"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"}],"internalType":"struct Execution[]","name":"","type":"tuple[]"}],"stateMutability":"payable","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"address","name":"offerer","type":"address"},{"internalType":"address","name":"zone","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"}],"internalType":"struct OfferItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ConsiderationItem[]","name":"consideration","type":"tuple[]"},{"internalType":"enum OrderType","name":"orderType","type":"uint8"},{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"},{"internalType":"bytes32","name":"zoneHash","type":"bytes32"},{"internalType":"uint256","name":"salt","type":"uint256"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"uint256","name":"totalOriginalConsiderationItems","type":"uint256"}],"internalType":"struct OrderParameters","name":"parameters","type":"tuple"},{"internalType":"bytes","name":"signature","type":"bytes"}],"internalType":"struct Order[]","name":"","type":"tuple[]"},{"components":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"uint256","name":"itemIndex","type":"uint256"}],"internalType":"struct FulfillmentComponent[][]","name":"","type":"tuple[][]"},{"components":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"uint256","name":"itemIndex","type":"uint256"}],"internalType":"struct FulfillmentComponent[][]","name":"","type":"tuple[][]"},{"internalType":"bytes32","name":"fulfillerConduitKey","type":"bytes32"},{"internalType":"uint256","name":"maximumFulfilled","type":"uint256"}],"name":"fulfillAvailableOrders","outputs":[{"internalType":"bool[]","name":"","type":"bool[]"},{"components":[{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ReceivedItem","name":"item","type":"tuple"},{"internalType":"address","name":"offerer","type":"address"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"}],"internalType":"struct Execution[]","name":"","type":"tuple[]"}],"stateMutability":"payable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"considerationToken","type":"address"},{"internalType":"uint256","name":"considerationIdentifier","type":"uint256"},{"internalType":"uint256","name":"considerationAmount","type":"uint256"},{"internalType":"address payable","name":"offerer","type":"address"},{"internalType":"address","name":"zone","type":"address"},{"internalType":"address","name":"offerToken","type":"address"},{"internalType":"uint256","name":"offerIdentifier","type":"uint256"},{"internalType":"uint256","name":"offerAmount","type":"uint256"},{"internalType":"enum BasicOrderType","name":"basicOrderType","type":"uint8"},{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"},{"internalType":"bytes32","name":"zoneHash","type":"bytes32"},{"internalType":"uint256","name":"salt","type":"uint256"},{"internalType":"bytes32","name":"offererConduitKey","type":"bytes32"},{"internalType":"bytes32","name":"fulfillerConduitKey","type":"bytes32"},{"internalType":"uint256","name":"totalOriginalAdditionalRecipients","type":"uint256"},{"components":[{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct AdditionalRecipient[]","name":"additionalRecipients","type":"tuple[]"},{"internalType":"bytes","name":"signature","type":"bytes"}],"internalType":"struct BasicOrderParameters","name":"","type":"tuple"}],"name":"fulfillBasicOrder","outputs":[{"internalType":"bool","name":"fulfilled","type":"bool"}],"stateMutability":"payable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"considerationToken","type":"address"},{"internalType":"uint256","name":"considerationIdentifier","type":"uint256"},{"internalType":"uint256","name":"considerationAmount","type":"uint256"},{"internalType":"address payable","name":"offerer","type":"address"},{"internalType":"address","name":"zone","type":"address"},{"internalType":"address","name":"offerToken","type":"address"},{"internalType":"uint256","name":"offerIdentifier","type":"uint256"},{"internalType":"uint256","name":"offerAmount","type":"uint256"},{"internalType":"enum BasicOrderType","name":"basicOrderType","type":"uint8"},{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"},{"internalType":"bytes32","name":"zoneHash","type":"bytes32"},{"internalType":"uint256","name":"salt","type":"uint256"},{"internalType":"bytes32","name":"offererConduitKey","type":"bytes32"},{"internalType":"bytes32","name":"fulfillerConduitKey","type":"bytes32"},{"internalType":"uint256","name":"totalOriginalAdditionalRecipients","type":"uint256"},{"components":[{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct AdditionalRecipient[]","name":"additionalRecipients","type":"tuple[]"},{"internalType":"bytes","name":"signature","type":"bytes"}],"internalType":"struct BasicOrderParameters","name":"","type":"tuple"}],"name":"fulfillBasicOrder_efficient_6GL6yc","outputs":[{"internalType":"bool","name":"fulfilled","type":"bool"}],"stateMutability":"payable","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"address","name":"offerer","type":"address"},{"internalType":"address","name":"zone","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"}],"internalType":"struct OfferItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ConsiderationItem[]","name":"consideration","type":"tuple[]"},{"internalType":"enum OrderType","name":"orderType","type":"uint8"},{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"},{"internalType":"bytes32","name":"zoneHash","type":"bytes32"},{"internalType":"uint256","name":"salt","type":"uint256"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"uint256","name":"totalOriginalConsiderationItems","type":"uint256"}],"internalType":"struct OrderParameters","name":"parameters","type":"tuple"},{"internalType":"bytes","name":"signature","type":"bytes"}],"internalType":"struct Order","name":"","type":"tuple"},{"internalType":"bytes32","name":"fulfillerConduitKey","type":"bytes32"}],"name":"fulfillOrder","outputs":[{"internalType":"bool","name":"fulfilled","type":"bool"}],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"contractOfferer","type":"address"}],"name":"getContractOffererNonce","outputs":[{"internalType":"uint256","name":"nonce","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"offerer","type":"address"}],"name":"getCounter","outputs":[{"internalType":"uint256","name":"counter","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"offerer","type":"address"},{"internalType":"address","name":"zone","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"}],"internalType":"struct OfferItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ConsiderationItem[]","name":"consideration","type":"tuple[]"},{"internalType":"enum OrderType","name":"orderType","type":"uint8"},{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"},{"internalType":"bytes32","name":"zoneHash","type":"bytes32"},{"internalType":"uint256","name":"salt","type":"uint256"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"uint256","name":"counter","type":"uint256"}],"internalType":"struct OrderComponents","name":"","type":"tuple"}],"name":"getOrderHash","outputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"getOrderStatus","outputs":[{"internalType":"bool","name":"isValidated","type":"bool"},{"internalType":"bool","name":"isCancelled","type":"bool"},{"internalType":"uint256","name":"totalFilled","type":"uint256"},{"internalType":"uint256","name":"totalSize","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"incrementCounter","outputs":[{"internalType":"uint256","name":"newCounter","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"information","outputs":[{"internalType":"string","name":"version","type":"string"},{"internalType":"bytes32","name":"domainSeparator","type":"bytes32"},{"internalType":"address","name":"conduitController","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"address","name":"offerer","type":"address"},{"internalType":"address","name":"zone","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"}],"internalType":"struct OfferItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ConsiderationItem[]","name":"consideration","type":"tuple[]"},{"internalType":"enum OrderType","name":"orderType","type":"uint8"},{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"},{"internalType":"bytes32","name":"zoneHash","type":"bytes32"},{"internalType":"uint256","name":"salt","type":"uint256"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"uint256","name":"totalOriginalConsiderationItems","type":"uint256"}],"internalType":"struct OrderParameters","name":"parameters","type":"tuple"},{"internalType":"uint120","name":"numerator","type":"uint120"},{"internalType":"uint120","name":"denominator","type":"uint120"},{"internalType":"bytes","name":"signature","type":"bytes"},{"internalType":"bytes","name":"extraData","type":"bytes"}],"internalType":"struct AdvancedOrder[]","name":"","type":"tuple[]"},{"components":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"enum Side","name":"side","type":"uint8"},{"internalType":"uint256","name":"index","type":"uint256"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"bytes32[]","name":"criteriaProof","type":"bytes32[]"}],"internalType":"struct CriteriaResolver[]","name":"","type":"tuple[]"},{"components":[{"components":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"uint256","name":"itemIndex","type":"uint256"}],"internalType":"struct FulfillmentComponent[]","name":"offerComponents","type":"tuple[]"},{"components":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"uint256","name":"itemIndex","type":"uint256"}],"internalType":"struct FulfillmentComponent[]","name":"considerationComponents","type":"tuple[]"}],"internalType":"struct Fulfillment[]","name":"","type":"tuple[]"},{"internalType":"address","name":"recipient","type":"address"}],"name":"matchAdvancedOrders","outputs":[{"components":[{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ReceivedItem","name":"item","type":"tuple"},{"internalType":"address","name":"offerer","type":"address"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"}],"internalType":"struct Execution[]","name":"","type":"tuple[]"}],"stateMutability":"payable","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"address","name":"offerer","type":"address"},{"internalType":"address","name":"zone","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"}],"internalType":"struct OfferItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ConsiderationItem[]","name":"consideration","type":"tuple[]"},{"internalType":"enum OrderType","name":"orderType","type":"uint8"},{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"},{"internalType":"bytes32","name":"zoneHash","type":"bytes32"},{"internalType":"uint256","name":"salt","type":"uint256"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"uint256","name":"totalOriginalConsiderationItems","type":"uint256"}],"internalType":"struct OrderParameters","name":"parameters","type":"tuple"},{"internalType":"bytes","name":"signature","type":"bytes"}],"internalType":"struct Order[]","name":"","type":"tuple[]"},{"components":[{"components":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"uint256","name":"itemIndex","type":"uint256"}],"internalType":"struct FulfillmentComponent[]","name":"offerComponents","type":"tuple[]"},{"components":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"uint256","name":"itemIndex","type":"uint256"}],"internalType":"struct FulfillmentComponent[]","name":"considerationComponents","type":"tuple[]"}],"internalType":"struct Fulfillment[]","name":"","type":"tuple[]"}],"name":"matchOrders","outputs":[{"components":[{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ReceivedItem","name":"item","type":"tuple"},{"internalType":"address","name":"offerer","type":"address"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"}],"internalType":"struct Execution[]","name":"","type":"tuple[]"}],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"address","name":"offerer","type":"address"},{"internalType":"address","name":"zone","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"}],"internalType":"struct OfferItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ConsiderationItem[]","name":"consideration","type":"tuple[]"},{"internalType":"enum OrderType","name":"orderType","type":"uint8"},{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"},{"internalType":"bytes32","name":"zoneHash","type":"bytes32"},{"internalType":"uint256","name":"salt","type":"uint256"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"uint256","name":"totalOriginalConsiderationItems","type":"uint256"}],"internalType":"struct OrderParameters","name":"parameters","type":"tuple"},{"internalType":"bytes","name":"signature","type":"bytes"}],"internalType":"struct Order[]","name":"","type":"tuple[]"}],"name":"validate","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}] diff --git a/artifacts/abi/ConsiderationBase.json b/artifacts/abi/ConsiderationBase.json new file mode 100644 index 00000000..60f50bb4 --- /dev/null +++ b/artifacts/abi/ConsiderationBase.json @@ -0,0 +1 @@ +[{"inputs":[{"internalType":"address","name":"conduitController","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"BadFraction","type":"error"},{"inputs":[],"name":"CannotCancelOrder","type":"error"},{"inputs":[],"name":"ConsiderationLengthNotEqualToTotalOriginal","type":"error"},{"inputs":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"uint256","name":"considerationIndex","type":"uint256"},{"internalType":"uint256","name":"shortfallAmount","type":"uint256"}],"name":"ConsiderationNotMet","type":"error"},{"inputs":[],"name":"InsufficientNativeTokensSupplied","type":"error"},{"inputs":[],"name":"InvalidBasicOrderParameterEncoding","type":"error"},{"inputs":[{"internalType":"address","name":"conduit","type":"address"}],"name":"InvalidCallToConduit","type":"error"},{"inputs":[{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"address","name":"conduit","type":"address"}],"name":"InvalidConduit","type":"error"},{"inputs":[{"internalType":"uint256","name":"value","type":"uint256"}],"name":"InvalidMsgValue","type":"error"},{"inputs":[],"name":"InvalidNativeOfferItem","type":"error"},{"inputs":[{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"}],"name":"InvalidTime","type":"error"},{"inputs":[],"name":"MissingOriginalConsiderationItems","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"NativeTokenTransferGenericFailure","type":"error"},{"inputs":[],"name":"NoSpecifiedOrdersAvailable","type":"error"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"OrderAlreadyFilled","type":"error"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"OrderIsCancelled","type":"error"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"OrderPartiallyFilled","type":"error"},{"inputs":[],"name":"PartialFillsNotEnabledForOrder","type":"error"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"newCounter","type":"uint256"},{"indexed":true,"internalType":"address","name":"offerer","type":"address"}],"name":"CounterIncremented","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"orderHash","type":"bytes32"},{"indexed":true,"internalType":"address","name":"offerer","type":"address"},{"indexed":true,"internalType":"address","name":"zone","type":"address"}],"name":"OrderCancelled","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"orderHash","type":"bytes32"},{"indexed":true,"internalType":"address","name":"offerer","type":"address"},{"indexed":true,"internalType":"address","name":"zone","type":"address"},{"indexed":false,"internalType":"address","name":"recipient","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"}],"indexed":false,"internalType":"struct SpentItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"indexed":false,"internalType":"struct ReceivedItem[]","name":"consideration","type":"tuple[]"}],"name":"OrderFulfilled","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"orderHash","type":"bytes32"},{"components":[{"internalType":"address","name":"offerer","type":"address"},{"internalType":"address","name":"zone","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"}],"internalType":"struct OfferItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ConsiderationItem[]","name":"consideration","type":"tuple[]"},{"internalType":"enum OrderType","name":"orderType","type":"uint8"},{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"},{"internalType":"bytes32","name":"zoneHash","type":"bytes32"},{"internalType":"uint256","name":"salt","type":"uint256"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"uint256","name":"totalOriginalConsiderationItems","type":"uint256"}],"indexed":false,"internalType":"struct OrderParameters","name":"orderParameters","type":"tuple"}],"name":"OrderValidated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32[]","name":"orderHashes","type":"bytes32[]"}],"name":"OrdersMatched","type":"event"}] diff --git a/artifacts/abi/ConsiderationEventsAndErrors.json b/artifacts/abi/ConsiderationEventsAndErrors.json new file mode 100644 index 00000000..df5d260f --- /dev/null +++ b/artifacts/abi/ConsiderationEventsAndErrors.json @@ -0,0 +1 @@ +[{"inputs":[],"name":"BadFraction","type":"error"},{"inputs":[],"name":"CannotCancelOrder","type":"error"},{"inputs":[],"name":"ConsiderationLengthNotEqualToTotalOriginal","type":"error"},{"inputs":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"uint256","name":"considerationIndex","type":"uint256"},{"internalType":"uint256","name":"shortfallAmount","type":"uint256"}],"name":"ConsiderationNotMet","type":"error"},{"inputs":[],"name":"InsufficientNativeTokensSupplied","type":"error"},{"inputs":[],"name":"InvalidBasicOrderParameterEncoding","type":"error"},{"inputs":[{"internalType":"address","name":"conduit","type":"address"}],"name":"InvalidCallToConduit","type":"error"},{"inputs":[{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"address","name":"conduit","type":"address"}],"name":"InvalidConduit","type":"error"},{"inputs":[{"internalType":"uint256","name":"value","type":"uint256"}],"name":"InvalidMsgValue","type":"error"},{"inputs":[],"name":"InvalidNativeOfferItem","type":"error"},{"inputs":[{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"}],"name":"InvalidTime","type":"error"},{"inputs":[],"name":"MissingOriginalConsiderationItems","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"NativeTokenTransferGenericFailure","type":"error"},{"inputs":[],"name":"NoSpecifiedOrdersAvailable","type":"error"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"OrderAlreadyFilled","type":"error"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"OrderIsCancelled","type":"error"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"OrderPartiallyFilled","type":"error"},{"inputs":[],"name":"PartialFillsNotEnabledForOrder","type":"error"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"newCounter","type":"uint256"},{"indexed":true,"internalType":"address","name":"offerer","type":"address"}],"name":"CounterIncremented","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"orderHash","type":"bytes32"},{"indexed":true,"internalType":"address","name":"offerer","type":"address"},{"indexed":true,"internalType":"address","name":"zone","type":"address"}],"name":"OrderCancelled","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"orderHash","type":"bytes32"},{"indexed":true,"internalType":"address","name":"offerer","type":"address"},{"indexed":true,"internalType":"address","name":"zone","type":"address"},{"indexed":false,"internalType":"address","name":"recipient","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"}],"indexed":false,"internalType":"struct SpentItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"indexed":false,"internalType":"struct ReceivedItem[]","name":"consideration","type":"tuple[]"}],"name":"OrderFulfilled","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"orderHash","type":"bytes32"},{"components":[{"internalType":"address","name":"offerer","type":"address"},{"internalType":"address","name":"zone","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"}],"internalType":"struct OfferItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ConsiderationItem[]","name":"consideration","type":"tuple[]"},{"internalType":"enum OrderType","name":"orderType","type":"uint8"},{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"},{"internalType":"bytes32","name":"zoneHash","type":"bytes32"},{"internalType":"uint256","name":"salt","type":"uint256"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"uint256","name":"totalOriginalConsiderationItems","type":"uint256"}],"indexed":false,"internalType":"struct OrderParameters","name":"orderParameters","type":"tuple"}],"name":"OrderValidated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32[]","name":"orderHashes","type":"bytes32[]"}],"name":"OrdersMatched","type":"event"}] diff --git a/artifacts/abi/ConsiderationInterface.json b/artifacts/abi/ConsiderationInterface.json new file mode 100644 index 00000000..5f8ff1f8 --- /dev/null +++ b/artifacts/abi/ConsiderationInterface.json @@ -0,0 +1 @@ +[{"inputs":[{"components":[{"internalType":"address","name":"offerer","type":"address"},{"internalType":"address","name":"zone","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"}],"internalType":"struct OfferItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ConsiderationItem[]","name":"consideration","type":"tuple[]"},{"internalType":"enum OrderType","name":"orderType","type":"uint8"},{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"},{"internalType":"bytes32","name":"zoneHash","type":"bytes32"},{"internalType":"uint256","name":"salt","type":"uint256"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"uint256","name":"counter","type":"uint256"}],"internalType":"struct OrderComponents[]","name":"orders","type":"tuple[]"}],"name":"cancel","outputs":[{"internalType":"bool","name":"cancelled","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"address","name":"offerer","type":"address"},{"internalType":"address","name":"zone","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"}],"internalType":"struct OfferItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ConsiderationItem[]","name":"consideration","type":"tuple[]"},{"internalType":"enum OrderType","name":"orderType","type":"uint8"},{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"},{"internalType":"bytes32","name":"zoneHash","type":"bytes32"},{"internalType":"uint256","name":"salt","type":"uint256"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"uint256","name":"totalOriginalConsiderationItems","type":"uint256"}],"internalType":"struct OrderParameters","name":"parameters","type":"tuple"},{"internalType":"uint120","name":"numerator","type":"uint120"},{"internalType":"uint120","name":"denominator","type":"uint120"},{"internalType":"bytes","name":"signature","type":"bytes"},{"internalType":"bytes","name":"extraData","type":"bytes"}],"internalType":"struct AdvancedOrder","name":"advancedOrder","type":"tuple"},{"components":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"enum Side","name":"side","type":"uint8"},{"internalType":"uint256","name":"index","type":"uint256"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"bytes32[]","name":"criteriaProof","type":"bytes32[]"}],"internalType":"struct CriteriaResolver[]","name":"criteriaResolvers","type":"tuple[]"},{"internalType":"bytes32","name":"fulfillerConduitKey","type":"bytes32"},{"internalType":"address","name":"recipient","type":"address"}],"name":"fulfillAdvancedOrder","outputs":[{"internalType":"bool","name":"fulfilled","type":"bool"}],"stateMutability":"payable","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"address","name":"offerer","type":"address"},{"internalType":"address","name":"zone","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"}],"internalType":"struct OfferItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ConsiderationItem[]","name":"consideration","type":"tuple[]"},{"internalType":"enum OrderType","name":"orderType","type":"uint8"},{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"},{"internalType":"bytes32","name":"zoneHash","type":"bytes32"},{"internalType":"uint256","name":"salt","type":"uint256"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"uint256","name":"totalOriginalConsiderationItems","type":"uint256"}],"internalType":"struct OrderParameters","name":"parameters","type":"tuple"},{"internalType":"uint120","name":"numerator","type":"uint120"},{"internalType":"uint120","name":"denominator","type":"uint120"},{"internalType":"bytes","name":"signature","type":"bytes"},{"internalType":"bytes","name":"extraData","type":"bytes"}],"internalType":"struct AdvancedOrder[]","name":"advancedOrders","type":"tuple[]"},{"components":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"enum Side","name":"side","type":"uint8"},{"internalType":"uint256","name":"index","type":"uint256"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"bytes32[]","name":"criteriaProof","type":"bytes32[]"}],"internalType":"struct CriteriaResolver[]","name":"criteriaResolvers","type":"tuple[]"},{"components":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"uint256","name":"itemIndex","type":"uint256"}],"internalType":"struct FulfillmentComponent[][]","name":"offerFulfillments","type":"tuple[][]"},{"components":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"uint256","name":"itemIndex","type":"uint256"}],"internalType":"struct FulfillmentComponent[][]","name":"considerationFulfillments","type":"tuple[][]"},{"internalType":"bytes32","name":"fulfillerConduitKey","type":"bytes32"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"maximumFulfilled","type":"uint256"}],"name":"fulfillAvailableAdvancedOrders","outputs":[{"internalType":"bool[]","name":"availableOrders","type":"bool[]"},{"components":[{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ReceivedItem","name":"item","type":"tuple"},{"internalType":"address","name":"offerer","type":"address"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"}],"internalType":"struct Execution[]","name":"executions","type":"tuple[]"}],"stateMutability":"payable","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"address","name":"offerer","type":"address"},{"internalType":"address","name":"zone","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"}],"internalType":"struct OfferItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ConsiderationItem[]","name":"consideration","type":"tuple[]"},{"internalType":"enum OrderType","name":"orderType","type":"uint8"},{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"},{"internalType":"bytes32","name":"zoneHash","type":"bytes32"},{"internalType":"uint256","name":"salt","type":"uint256"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"uint256","name":"totalOriginalConsiderationItems","type":"uint256"}],"internalType":"struct OrderParameters","name":"parameters","type":"tuple"},{"internalType":"bytes","name":"signature","type":"bytes"}],"internalType":"struct Order[]","name":"orders","type":"tuple[]"},{"components":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"uint256","name":"itemIndex","type":"uint256"}],"internalType":"struct FulfillmentComponent[][]","name":"offerFulfillments","type":"tuple[][]"},{"components":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"uint256","name":"itemIndex","type":"uint256"}],"internalType":"struct FulfillmentComponent[][]","name":"considerationFulfillments","type":"tuple[][]"},{"internalType":"bytes32","name":"fulfillerConduitKey","type":"bytes32"},{"internalType":"uint256","name":"maximumFulfilled","type":"uint256"}],"name":"fulfillAvailableOrders","outputs":[{"internalType":"bool[]","name":"availableOrders","type":"bool[]"},{"components":[{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ReceivedItem","name":"item","type":"tuple"},{"internalType":"address","name":"offerer","type":"address"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"}],"internalType":"struct Execution[]","name":"executions","type":"tuple[]"}],"stateMutability":"payable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"considerationToken","type":"address"},{"internalType":"uint256","name":"considerationIdentifier","type":"uint256"},{"internalType":"uint256","name":"considerationAmount","type":"uint256"},{"internalType":"address payable","name":"offerer","type":"address"},{"internalType":"address","name":"zone","type":"address"},{"internalType":"address","name":"offerToken","type":"address"},{"internalType":"uint256","name":"offerIdentifier","type":"uint256"},{"internalType":"uint256","name":"offerAmount","type":"uint256"},{"internalType":"enum BasicOrderType","name":"basicOrderType","type":"uint8"},{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"},{"internalType":"bytes32","name":"zoneHash","type":"bytes32"},{"internalType":"uint256","name":"salt","type":"uint256"},{"internalType":"bytes32","name":"offererConduitKey","type":"bytes32"},{"internalType":"bytes32","name":"fulfillerConduitKey","type":"bytes32"},{"internalType":"uint256","name":"totalOriginalAdditionalRecipients","type":"uint256"},{"components":[{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct AdditionalRecipient[]","name":"additionalRecipients","type":"tuple[]"},{"internalType":"bytes","name":"signature","type":"bytes"}],"internalType":"struct BasicOrderParameters","name":"parameters","type":"tuple"}],"name":"fulfillBasicOrder","outputs":[{"internalType":"bool","name":"fulfilled","type":"bool"}],"stateMutability":"payable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"considerationToken","type":"address"},{"internalType":"uint256","name":"considerationIdentifier","type":"uint256"},{"internalType":"uint256","name":"considerationAmount","type":"uint256"},{"internalType":"address payable","name":"offerer","type":"address"},{"internalType":"address","name":"zone","type":"address"},{"internalType":"address","name":"offerToken","type":"address"},{"internalType":"uint256","name":"offerIdentifier","type":"uint256"},{"internalType":"uint256","name":"offerAmount","type":"uint256"},{"internalType":"enum BasicOrderType","name":"basicOrderType","type":"uint8"},{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"},{"internalType":"bytes32","name":"zoneHash","type":"bytes32"},{"internalType":"uint256","name":"salt","type":"uint256"},{"internalType":"bytes32","name":"offererConduitKey","type":"bytes32"},{"internalType":"bytes32","name":"fulfillerConduitKey","type":"bytes32"},{"internalType":"uint256","name":"totalOriginalAdditionalRecipients","type":"uint256"},{"components":[{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct AdditionalRecipient[]","name":"additionalRecipients","type":"tuple[]"},{"internalType":"bytes","name":"signature","type":"bytes"}],"internalType":"struct BasicOrderParameters","name":"parameters","type":"tuple"}],"name":"fulfillBasicOrder_efficient_6GL6yc","outputs":[{"internalType":"bool","name":"fulfilled","type":"bool"}],"stateMutability":"payable","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"address","name":"offerer","type":"address"},{"internalType":"address","name":"zone","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"}],"internalType":"struct OfferItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ConsiderationItem[]","name":"consideration","type":"tuple[]"},{"internalType":"enum OrderType","name":"orderType","type":"uint8"},{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"},{"internalType":"bytes32","name":"zoneHash","type":"bytes32"},{"internalType":"uint256","name":"salt","type":"uint256"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"uint256","name":"totalOriginalConsiderationItems","type":"uint256"}],"internalType":"struct OrderParameters","name":"parameters","type":"tuple"},{"internalType":"bytes","name":"signature","type":"bytes"}],"internalType":"struct Order","name":"order","type":"tuple"},{"internalType":"bytes32","name":"fulfillerConduitKey","type":"bytes32"}],"name":"fulfillOrder","outputs":[{"internalType":"bool","name":"fulfilled","type":"bool"}],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"contractOfferer","type":"address"}],"name":"getContractOffererNonce","outputs":[{"internalType":"uint256","name":"nonce","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"offerer","type":"address"}],"name":"getCounter","outputs":[{"internalType":"uint256","name":"counter","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"offerer","type":"address"},{"internalType":"address","name":"zone","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"}],"internalType":"struct OfferItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ConsiderationItem[]","name":"consideration","type":"tuple[]"},{"internalType":"enum OrderType","name":"orderType","type":"uint8"},{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"},{"internalType":"bytes32","name":"zoneHash","type":"bytes32"},{"internalType":"uint256","name":"salt","type":"uint256"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"uint256","name":"counter","type":"uint256"}],"internalType":"struct OrderComponents","name":"order","type":"tuple"}],"name":"getOrderHash","outputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"getOrderStatus","outputs":[{"internalType":"bool","name":"isValidated","type":"bool"},{"internalType":"bool","name":"isCancelled","type":"bool"},{"internalType":"uint256","name":"totalFilled","type":"uint256"},{"internalType":"uint256","name":"totalSize","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"incrementCounter","outputs":[{"internalType":"uint256","name":"newCounter","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"information","outputs":[{"internalType":"string","name":"version","type":"string"},{"internalType":"bytes32","name":"domainSeparator","type":"bytes32"},{"internalType":"address","name":"conduitController","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"address","name":"offerer","type":"address"},{"internalType":"address","name":"zone","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"}],"internalType":"struct OfferItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ConsiderationItem[]","name":"consideration","type":"tuple[]"},{"internalType":"enum OrderType","name":"orderType","type":"uint8"},{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"},{"internalType":"bytes32","name":"zoneHash","type":"bytes32"},{"internalType":"uint256","name":"salt","type":"uint256"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"uint256","name":"totalOriginalConsiderationItems","type":"uint256"}],"internalType":"struct OrderParameters","name":"parameters","type":"tuple"},{"internalType":"uint120","name":"numerator","type":"uint120"},{"internalType":"uint120","name":"denominator","type":"uint120"},{"internalType":"bytes","name":"signature","type":"bytes"},{"internalType":"bytes","name":"extraData","type":"bytes"}],"internalType":"struct AdvancedOrder[]","name":"orders","type":"tuple[]"},{"components":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"enum Side","name":"side","type":"uint8"},{"internalType":"uint256","name":"index","type":"uint256"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"bytes32[]","name":"criteriaProof","type":"bytes32[]"}],"internalType":"struct CriteriaResolver[]","name":"criteriaResolvers","type":"tuple[]"},{"components":[{"components":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"uint256","name":"itemIndex","type":"uint256"}],"internalType":"struct FulfillmentComponent[]","name":"offerComponents","type":"tuple[]"},{"components":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"uint256","name":"itemIndex","type":"uint256"}],"internalType":"struct FulfillmentComponent[]","name":"considerationComponents","type":"tuple[]"}],"internalType":"struct Fulfillment[]","name":"fulfillments","type":"tuple[]"},{"internalType":"address","name":"recipient","type":"address"}],"name":"matchAdvancedOrders","outputs":[{"components":[{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ReceivedItem","name":"item","type":"tuple"},{"internalType":"address","name":"offerer","type":"address"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"}],"internalType":"struct Execution[]","name":"executions","type":"tuple[]"}],"stateMutability":"payable","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"address","name":"offerer","type":"address"},{"internalType":"address","name":"zone","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"}],"internalType":"struct OfferItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ConsiderationItem[]","name":"consideration","type":"tuple[]"},{"internalType":"enum OrderType","name":"orderType","type":"uint8"},{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"},{"internalType":"bytes32","name":"zoneHash","type":"bytes32"},{"internalType":"uint256","name":"salt","type":"uint256"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"uint256","name":"totalOriginalConsiderationItems","type":"uint256"}],"internalType":"struct OrderParameters","name":"parameters","type":"tuple"},{"internalType":"bytes","name":"signature","type":"bytes"}],"internalType":"struct Order[]","name":"orders","type":"tuple[]"},{"components":[{"components":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"uint256","name":"itemIndex","type":"uint256"}],"internalType":"struct FulfillmentComponent[]","name":"offerComponents","type":"tuple[]"},{"components":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"uint256","name":"itemIndex","type":"uint256"}],"internalType":"struct FulfillmentComponent[]","name":"considerationComponents","type":"tuple[]"}],"internalType":"struct Fulfillment[]","name":"fulfillments","type":"tuple[]"}],"name":"matchOrders","outputs":[{"components":[{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ReceivedItem","name":"item","type":"tuple"},{"internalType":"address","name":"offerer","type":"address"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"}],"internalType":"struct Execution[]","name":"executions","type":"tuple[]"}],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"contractName","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"address","name":"offerer","type":"address"},{"internalType":"address","name":"zone","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"}],"internalType":"struct OfferItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ConsiderationItem[]","name":"consideration","type":"tuple[]"},{"internalType":"enum OrderType","name":"orderType","type":"uint8"},{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"},{"internalType":"bytes32","name":"zoneHash","type":"bytes32"},{"internalType":"uint256","name":"salt","type":"uint256"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"uint256","name":"totalOriginalConsiderationItems","type":"uint256"}],"internalType":"struct OrderParameters","name":"parameters","type":"tuple"},{"internalType":"bytes","name":"signature","type":"bytes"}],"internalType":"struct Order[]","name":"orders","type":"tuple[]"}],"name":"validate","outputs":[{"internalType":"bool","name":"validated","type":"bool"}],"stateMutability":"nonpayable","type":"function"}] diff --git a/artifacts/abi/CounterManager.json b/artifacts/abi/CounterManager.json new file mode 100644 index 00000000..a1684b45 --- /dev/null +++ b/artifacts/abi/CounterManager.json @@ -0,0 +1 @@ +[{"inputs":[],"name":"BadFraction","type":"error"},{"inputs":[],"name":"CannotCancelOrder","type":"error"},{"inputs":[],"name":"ConsiderationLengthNotEqualToTotalOriginal","type":"error"},{"inputs":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"uint256","name":"considerationIndex","type":"uint256"},{"internalType":"uint256","name":"shortfallAmount","type":"uint256"}],"name":"ConsiderationNotMet","type":"error"},{"inputs":[],"name":"InsufficientNativeTokensSupplied","type":"error"},{"inputs":[],"name":"InvalidBasicOrderParameterEncoding","type":"error"},{"inputs":[{"internalType":"address","name":"conduit","type":"address"}],"name":"InvalidCallToConduit","type":"error"},{"inputs":[{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"address","name":"conduit","type":"address"}],"name":"InvalidConduit","type":"error"},{"inputs":[{"internalType":"uint256","name":"value","type":"uint256"}],"name":"InvalidMsgValue","type":"error"},{"inputs":[],"name":"InvalidNativeOfferItem","type":"error"},{"inputs":[{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"}],"name":"InvalidTime","type":"error"},{"inputs":[],"name":"MissingOriginalConsiderationItems","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"NativeTokenTransferGenericFailure","type":"error"},{"inputs":[],"name":"NoReentrantCalls","type":"error"},{"inputs":[],"name":"NoSpecifiedOrdersAvailable","type":"error"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"OrderAlreadyFilled","type":"error"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"OrderIsCancelled","type":"error"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"OrderPartiallyFilled","type":"error"},{"inputs":[],"name":"PartialFillsNotEnabledForOrder","type":"error"},{"inputs":[],"name":"TStoreAlreadyActivated","type":"error"},{"inputs":[],"name":"TStoreNotSupported","type":"error"},{"inputs":[],"name":"TloadTestContractDeploymentFailed","type":"error"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"newCounter","type":"uint256"},{"indexed":true,"internalType":"address","name":"offerer","type":"address"}],"name":"CounterIncremented","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"orderHash","type":"bytes32"},{"indexed":true,"internalType":"address","name":"offerer","type":"address"},{"indexed":true,"internalType":"address","name":"zone","type":"address"}],"name":"OrderCancelled","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"orderHash","type":"bytes32"},{"indexed":true,"internalType":"address","name":"offerer","type":"address"},{"indexed":true,"internalType":"address","name":"zone","type":"address"},{"indexed":false,"internalType":"address","name":"recipient","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"}],"indexed":false,"internalType":"struct SpentItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"indexed":false,"internalType":"struct ReceivedItem[]","name":"consideration","type":"tuple[]"}],"name":"OrderFulfilled","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"orderHash","type":"bytes32"},{"components":[{"internalType":"address","name":"offerer","type":"address"},{"internalType":"address","name":"zone","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"}],"internalType":"struct OfferItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ConsiderationItem[]","name":"consideration","type":"tuple[]"},{"internalType":"enum OrderType","name":"orderType","type":"uint8"},{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"},{"internalType":"bytes32","name":"zoneHash","type":"bytes32"},{"internalType":"uint256","name":"salt","type":"uint256"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"uint256","name":"totalOriginalConsiderationItems","type":"uint256"}],"indexed":false,"internalType":"struct OrderParameters","name":"orderParameters","type":"tuple"}],"name":"OrderValidated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32[]","name":"orderHashes","type":"bytes32[]"}],"name":"OrdersMatched","type":"event"},{"inputs":[],"name":"__activateTstore","outputs":[],"stateMutability":"nonpayable","type":"function"}] diff --git a/artifacts/abi/CriteriaResolution.json b/artifacts/abi/CriteriaResolution.json new file mode 100644 index 00000000..8fe7a5b2 --- /dev/null +++ b/artifacts/abi/CriteriaResolution.json @@ -0,0 +1 @@ +[{"inputs":[],"name":"ConsiderationCriteriaResolverOutOfRange","type":"error"},{"inputs":[],"name":"CriteriaNotEnabledForItem","type":"error"},{"inputs":[],"name":"InvalidProof","type":"error"},{"inputs":[],"name":"OfferCriteriaResolverOutOfRange","type":"error"},{"inputs":[{"internalType":"enum Side","name":"side","type":"uint8"}],"name":"OrderCriteriaResolverOutOfRange","type":"error"},{"inputs":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"uint256","name":"considerationIndex","type":"uint256"}],"name":"UnresolvedConsiderationCriteria","type":"error"},{"inputs":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"uint256","name":"offerIndex","type":"uint256"}],"name":"UnresolvedOfferCriteria","type":"error"}] diff --git a/artifacts/abi/CriteriaResolutionErrors.json b/artifacts/abi/CriteriaResolutionErrors.json new file mode 100644 index 00000000..8fe7a5b2 --- /dev/null +++ b/artifacts/abi/CriteriaResolutionErrors.json @@ -0,0 +1 @@ +[{"inputs":[],"name":"ConsiderationCriteriaResolverOutOfRange","type":"error"},{"inputs":[],"name":"CriteriaNotEnabledForItem","type":"error"},{"inputs":[],"name":"InvalidProof","type":"error"},{"inputs":[],"name":"OfferCriteriaResolverOutOfRange","type":"error"},{"inputs":[{"internalType":"enum Side","name":"side","type":"uint8"}],"name":"OrderCriteriaResolverOutOfRange","type":"error"},{"inputs":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"uint256","name":"considerationIndex","type":"uint256"}],"name":"UnresolvedConsiderationCriteria","type":"error"},{"inputs":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"uint256","name":"offerIndex","type":"uint256"}],"name":"UnresolvedOfferCriteria","type":"error"}] diff --git a/artifacts/abi/Executor.json b/artifacts/abi/Executor.json new file mode 100644 index 00000000..b622ded1 --- /dev/null +++ b/artifacts/abi/Executor.json @@ -0,0 +1 @@ +[{"inputs":[{"internalType":"address","name":"conduitController","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"BadContractSignature","type":"error"},{"inputs":[],"name":"BadFraction","type":"error"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"BadReturnValueFromERC20OnTransfer","type":"error"},{"inputs":[{"internalType":"uint8","name":"v","type":"uint8"}],"name":"BadSignatureV","type":"error"},{"inputs":[],"name":"CannotCancelOrder","type":"error"},{"inputs":[],"name":"ConsiderationLengthNotEqualToTotalOriginal","type":"error"},{"inputs":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"uint256","name":"considerationIndex","type":"uint256"},{"internalType":"uint256","name":"shortfallAmount","type":"uint256"}],"name":"ConsiderationNotMet","type":"error"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256[]","name":"identifiers","type":"uint256[]"},{"internalType":"uint256[]","name":"amounts","type":"uint256[]"}],"name":"ERC1155BatchTransferGenericFailure","type":"error"},{"inputs":[],"name":"InsufficientNativeTokensSupplied","type":"error"},{"inputs":[],"name":"Invalid1155BatchTransferEncoding","type":"error"},{"inputs":[],"name":"InvalidBasicOrderParameterEncoding","type":"error"},{"inputs":[{"internalType":"address","name":"conduit","type":"address"}],"name":"InvalidCallToConduit","type":"error"},{"inputs":[{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"address","name":"conduit","type":"address"}],"name":"InvalidConduit","type":"error"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"InvalidERC721TransferAmount","type":"error"},{"inputs":[{"internalType":"uint256","name":"value","type":"uint256"}],"name":"InvalidMsgValue","type":"error"},{"inputs":[],"name":"InvalidNativeOfferItem","type":"error"},{"inputs":[],"name":"InvalidSignature","type":"error"},{"inputs":[],"name":"InvalidSigner","type":"error"},{"inputs":[{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"}],"name":"InvalidTime","type":"error"},{"inputs":[],"name":"MissingItemAmount","type":"error"},{"inputs":[],"name":"MissingOriginalConsiderationItems","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"NativeTokenTransferGenericFailure","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"NoContract","type":"error"},{"inputs":[],"name":"NoReentrantCalls","type":"error"},{"inputs":[],"name":"NoSpecifiedOrdersAvailable","type":"error"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"OrderAlreadyFilled","type":"error"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"OrderIsCancelled","type":"error"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"OrderPartiallyFilled","type":"error"},{"inputs":[],"name":"PartialFillsNotEnabledForOrder","type":"error"},{"inputs":[],"name":"TStoreAlreadyActivated","type":"error"},{"inputs":[],"name":"TStoreNotSupported","type":"error"},{"inputs":[],"name":"TloadTestContractDeploymentFailed","type":"error"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"TokenTransferGenericFailure","type":"error"},{"inputs":[],"name":"UnusedItemParameters","type":"error"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"newCounter","type":"uint256"},{"indexed":true,"internalType":"address","name":"offerer","type":"address"}],"name":"CounterIncremented","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"orderHash","type":"bytes32"},{"indexed":true,"internalType":"address","name":"offerer","type":"address"},{"indexed":true,"internalType":"address","name":"zone","type":"address"}],"name":"OrderCancelled","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"orderHash","type":"bytes32"},{"indexed":true,"internalType":"address","name":"offerer","type":"address"},{"indexed":true,"internalType":"address","name":"zone","type":"address"},{"indexed":false,"internalType":"address","name":"recipient","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"}],"indexed":false,"internalType":"struct SpentItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"indexed":false,"internalType":"struct ReceivedItem[]","name":"consideration","type":"tuple[]"}],"name":"OrderFulfilled","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"orderHash","type":"bytes32"},{"components":[{"internalType":"address","name":"offerer","type":"address"},{"internalType":"address","name":"zone","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"}],"internalType":"struct OfferItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ConsiderationItem[]","name":"consideration","type":"tuple[]"},{"internalType":"enum OrderType","name":"orderType","type":"uint8"},{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"},{"internalType":"bytes32","name":"zoneHash","type":"bytes32"},{"internalType":"uint256","name":"salt","type":"uint256"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"uint256","name":"totalOriginalConsiderationItems","type":"uint256"}],"indexed":false,"internalType":"struct OrderParameters","name":"orderParameters","type":"tuple"}],"name":"OrderValidated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32[]","name":"orderHashes","type":"bytes32[]"}],"name":"OrdersMatched","type":"event"},{"inputs":[],"name":"__activateTstore","outputs":[],"stateMutability":"nonpayable","type":"function"}] diff --git a/artifacts/abi/FulfillmentApplicationErrors.json b/artifacts/abi/FulfillmentApplicationErrors.json new file mode 100644 index 00000000..e7d67293 --- /dev/null +++ b/artifacts/abi/FulfillmentApplicationErrors.json @@ -0,0 +1 @@ +[{"inputs":[],"name":"InvalidFulfillmentComponentData","type":"error"},{"inputs":[{"internalType":"uint256","name":"fulfillmentIndex","type":"uint256"}],"name":"MismatchedFulfillmentOfferAndConsiderationComponents","type":"error"},{"inputs":[{"internalType":"enum Side","name":"side","type":"uint8"}],"name":"MissingFulfillmentComponentOnAggregation","type":"error"},{"inputs":[],"name":"OfferAndConsiderationRequiredOnFulfillment","type":"error"}] diff --git a/artifacts/abi/FulfillmentApplier.json b/artifacts/abi/FulfillmentApplier.json new file mode 100644 index 00000000..e7d67293 --- /dev/null +++ b/artifacts/abi/FulfillmentApplier.json @@ -0,0 +1 @@ +[{"inputs":[],"name":"InvalidFulfillmentComponentData","type":"error"},{"inputs":[{"internalType":"uint256","name":"fulfillmentIndex","type":"uint256"}],"name":"MismatchedFulfillmentOfferAndConsiderationComponents","type":"error"},{"inputs":[{"internalType":"enum Side","name":"side","type":"uint8"}],"name":"MissingFulfillmentComponentOnAggregation","type":"error"},{"inputs":[],"name":"OfferAndConsiderationRequiredOnFulfillment","type":"error"}] diff --git a/artifacts/abi/GettersAndDerivers.json b/artifacts/abi/GettersAndDerivers.json new file mode 100644 index 00000000..60f50bb4 --- /dev/null +++ b/artifacts/abi/GettersAndDerivers.json @@ -0,0 +1 @@ +[{"inputs":[{"internalType":"address","name":"conduitController","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"BadFraction","type":"error"},{"inputs":[],"name":"CannotCancelOrder","type":"error"},{"inputs":[],"name":"ConsiderationLengthNotEqualToTotalOriginal","type":"error"},{"inputs":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"uint256","name":"considerationIndex","type":"uint256"},{"internalType":"uint256","name":"shortfallAmount","type":"uint256"}],"name":"ConsiderationNotMet","type":"error"},{"inputs":[],"name":"InsufficientNativeTokensSupplied","type":"error"},{"inputs":[],"name":"InvalidBasicOrderParameterEncoding","type":"error"},{"inputs":[{"internalType":"address","name":"conduit","type":"address"}],"name":"InvalidCallToConduit","type":"error"},{"inputs":[{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"address","name":"conduit","type":"address"}],"name":"InvalidConduit","type":"error"},{"inputs":[{"internalType":"uint256","name":"value","type":"uint256"}],"name":"InvalidMsgValue","type":"error"},{"inputs":[],"name":"InvalidNativeOfferItem","type":"error"},{"inputs":[{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"}],"name":"InvalidTime","type":"error"},{"inputs":[],"name":"MissingOriginalConsiderationItems","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"NativeTokenTransferGenericFailure","type":"error"},{"inputs":[],"name":"NoSpecifiedOrdersAvailable","type":"error"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"OrderAlreadyFilled","type":"error"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"OrderIsCancelled","type":"error"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"OrderPartiallyFilled","type":"error"},{"inputs":[],"name":"PartialFillsNotEnabledForOrder","type":"error"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"newCounter","type":"uint256"},{"indexed":true,"internalType":"address","name":"offerer","type":"address"}],"name":"CounterIncremented","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"orderHash","type":"bytes32"},{"indexed":true,"internalType":"address","name":"offerer","type":"address"},{"indexed":true,"internalType":"address","name":"zone","type":"address"}],"name":"OrderCancelled","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"orderHash","type":"bytes32"},{"indexed":true,"internalType":"address","name":"offerer","type":"address"},{"indexed":true,"internalType":"address","name":"zone","type":"address"},{"indexed":false,"internalType":"address","name":"recipient","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"}],"indexed":false,"internalType":"struct SpentItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"indexed":false,"internalType":"struct ReceivedItem[]","name":"consideration","type":"tuple[]"}],"name":"OrderFulfilled","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"orderHash","type":"bytes32"},{"components":[{"internalType":"address","name":"offerer","type":"address"},{"internalType":"address","name":"zone","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"}],"internalType":"struct OfferItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ConsiderationItem[]","name":"consideration","type":"tuple[]"},{"internalType":"enum OrderType","name":"orderType","type":"uint8"},{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"},{"internalType":"bytes32","name":"zoneHash","type":"bytes32"},{"internalType":"uint256","name":"salt","type":"uint256"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"uint256","name":"totalOriginalConsiderationItems","type":"uint256"}],"indexed":false,"internalType":"struct OrderParameters","name":"orderParameters","type":"tuple"}],"name":"OrderValidated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32[]","name":"orderHashes","type":"bytes32[]"}],"name":"OrdersMatched","type":"event"}] diff --git a/artifacts/abi/ISeaportProxyBuyer.json b/artifacts/abi/ISeaportProxyBuyer.json new file mode 100644 index 00000000..94f83ace --- /dev/null +++ b/artifacts/abi/ISeaportProxyBuyer.json @@ -0,0 +1 @@ +[{"inputs":[{"components":[{"components":[{"internalType":"address","name":"offerer","type":"address"},{"internalType":"address","name":"zone","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"}],"internalType":"struct OfferItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ConsiderationItem[]","name":"consideration","type":"tuple[]"},{"internalType":"enum OrderType","name":"orderType","type":"uint8"},{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"},{"internalType":"bytes32","name":"zoneHash","type":"bytes32"},{"internalType":"uint256","name":"salt","type":"uint256"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"uint256","name":"totalOriginalConsiderationItems","type":"uint256"}],"internalType":"struct OrderParameters","name":"parameters","type":"tuple"},{"internalType":"uint120","name":"numerator","type":"uint120"},{"internalType":"uint120","name":"denominator","type":"uint120"},{"internalType":"bytes","name":"signature","type":"bytes"},{"internalType":"bytes","name":"extraData","type":"bytes"}],"internalType":"struct AdvancedOrder","name":"advancedOrder","type":"tuple"},{"components":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"enum Side","name":"side","type":"uint8"},{"internalType":"uint256","name":"index","type":"uint256"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"bytes32[]","name":"criteriaProof","type":"bytes32[]"}],"internalType":"struct CriteriaResolver[]","name":"criteriaResolvers","type":"tuple[]"},{"internalType":"bytes32","name":"fulfillerConduitKey","type":"bytes32"},{"internalType":"address","name":"recipient","type":"address"}],"name":"fulfillAdvancedOrder","outputs":[{"internalType":"bool","name":"fulfilled","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"pause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unpause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"withdraw","outputs":[],"stateMutability":"nonpayable","type":"function"}] diff --git a/artifacts/abi/OrderCombiner.json b/artifacts/abi/OrderCombiner.json new file mode 100644 index 00000000..f8919196 --- /dev/null +++ b/artifacts/abi/OrderCombiner.json @@ -0,0 +1 @@ +[{"inputs":[{"internalType":"address","name":"conduitController","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"BadContractSignature","type":"error"},{"inputs":[],"name":"BadFraction","type":"error"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"BadReturnValueFromERC20OnTransfer","type":"error"},{"inputs":[{"internalType":"uint8","name":"v","type":"uint8"}],"name":"BadSignatureV","type":"error"},{"inputs":[],"name":"CannotCancelOrder","type":"error"},{"inputs":[],"name":"ConsiderationCriteriaResolverOutOfRange","type":"error"},{"inputs":[],"name":"ConsiderationLengthNotEqualToTotalOriginal","type":"error"},{"inputs":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"uint256","name":"considerationIndex","type":"uint256"},{"internalType":"uint256","name":"shortfallAmount","type":"uint256"}],"name":"ConsiderationNotMet","type":"error"},{"inputs":[],"name":"CriteriaNotEnabledForItem","type":"error"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256[]","name":"identifiers","type":"uint256[]"},{"internalType":"uint256[]","name":"amounts","type":"uint256[]"}],"name":"ERC1155BatchTransferGenericFailure","type":"error"},{"inputs":[],"name":"InexactFraction","type":"error"},{"inputs":[],"name":"InsufficientNativeTokensSupplied","type":"error"},{"inputs":[],"name":"Invalid1155BatchTransferEncoding","type":"error"},{"inputs":[],"name":"InvalidBasicOrderParameterEncoding","type":"error"},{"inputs":[{"internalType":"address","name":"conduit","type":"address"}],"name":"InvalidCallToConduit","type":"error"},{"inputs":[{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"address","name":"conduit","type":"address"}],"name":"InvalidConduit","type":"error"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"InvalidContractOrder","type":"error"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"InvalidERC721TransferAmount","type":"error"},{"inputs":[],"name":"InvalidFulfillmentComponentData","type":"error"},{"inputs":[{"internalType":"uint256","name":"value","type":"uint256"}],"name":"InvalidMsgValue","type":"error"},{"inputs":[],"name":"InvalidNativeOfferItem","type":"error"},{"inputs":[],"name":"InvalidProof","type":"error"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"InvalidRestrictedOrder","type":"error"},{"inputs":[],"name":"InvalidSignature","type":"error"},{"inputs":[],"name":"InvalidSigner","type":"error"},{"inputs":[{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"}],"name":"InvalidTime","type":"error"},{"inputs":[{"internalType":"uint256","name":"fulfillmentIndex","type":"uint256"}],"name":"MismatchedFulfillmentOfferAndConsiderationComponents","type":"error"},{"inputs":[{"internalType":"enum Side","name":"side","type":"uint8"}],"name":"MissingFulfillmentComponentOnAggregation","type":"error"},{"inputs":[],"name":"MissingItemAmount","type":"error"},{"inputs":[],"name":"MissingOriginalConsiderationItems","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"NativeTokenTransferGenericFailure","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"NoContract","type":"error"},{"inputs":[],"name":"NoReentrantCalls","type":"error"},{"inputs":[],"name":"NoSpecifiedOrdersAvailable","type":"error"},{"inputs":[],"name":"OfferAndConsiderationRequiredOnFulfillment","type":"error"},{"inputs":[],"name":"OfferCriteriaResolverOutOfRange","type":"error"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"OrderAlreadyFilled","type":"error"},{"inputs":[{"internalType":"enum Side","name":"side","type":"uint8"}],"name":"OrderCriteriaResolverOutOfRange","type":"error"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"OrderIsCancelled","type":"error"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"OrderPartiallyFilled","type":"error"},{"inputs":[],"name":"PartialFillsNotEnabledForOrder","type":"error"},{"inputs":[],"name":"TStoreAlreadyActivated","type":"error"},{"inputs":[],"name":"TStoreNotSupported","type":"error"},{"inputs":[],"name":"TloadTestContractDeploymentFailed","type":"error"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"TokenTransferGenericFailure","type":"error"},{"inputs":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"uint256","name":"considerationIndex","type":"uint256"}],"name":"UnresolvedConsiderationCriteria","type":"error"},{"inputs":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"uint256","name":"offerIndex","type":"uint256"}],"name":"UnresolvedOfferCriteria","type":"error"},{"inputs":[],"name":"UnusedItemParameters","type":"error"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"newCounter","type":"uint256"},{"indexed":true,"internalType":"address","name":"offerer","type":"address"}],"name":"CounterIncremented","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"orderHash","type":"bytes32"},{"indexed":true,"internalType":"address","name":"offerer","type":"address"},{"indexed":true,"internalType":"address","name":"zone","type":"address"}],"name":"OrderCancelled","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"orderHash","type":"bytes32"},{"indexed":true,"internalType":"address","name":"offerer","type":"address"},{"indexed":true,"internalType":"address","name":"zone","type":"address"},{"indexed":false,"internalType":"address","name":"recipient","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"}],"indexed":false,"internalType":"struct SpentItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"indexed":false,"internalType":"struct ReceivedItem[]","name":"consideration","type":"tuple[]"}],"name":"OrderFulfilled","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"orderHash","type":"bytes32"},{"components":[{"internalType":"address","name":"offerer","type":"address"},{"internalType":"address","name":"zone","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"}],"internalType":"struct OfferItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ConsiderationItem[]","name":"consideration","type":"tuple[]"},{"internalType":"enum OrderType","name":"orderType","type":"uint8"},{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"},{"internalType":"bytes32","name":"zoneHash","type":"bytes32"},{"internalType":"uint256","name":"salt","type":"uint256"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"uint256","name":"totalOriginalConsiderationItems","type":"uint256"}],"indexed":false,"internalType":"struct OrderParameters","name":"orderParameters","type":"tuple"}],"name":"OrderValidated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32[]","name":"orderHashes","type":"bytes32[]"}],"name":"OrdersMatched","type":"event"},{"inputs":[],"name":"__activateTstore","outputs":[],"stateMutability":"nonpayable","type":"function"}] diff --git a/artifacts/abi/OrderFulfiller.json b/artifacts/abi/OrderFulfiller.json new file mode 100644 index 00000000..f5d0b79b --- /dev/null +++ b/artifacts/abi/OrderFulfiller.json @@ -0,0 +1 @@ +[{"inputs":[{"internalType":"address","name":"conduitController","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"BadContractSignature","type":"error"},{"inputs":[],"name":"BadFraction","type":"error"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"BadReturnValueFromERC20OnTransfer","type":"error"},{"inputs":[{"internalType":"uint8","name":"v","type":"uint8"}],"name":"BadSignatureV","type":"error"},{"inputs":[],"name":"CannotCancelOrder","type":"error"},{"inputs":[],"name":"ConsiderationCriteriaResolverOutOfRange","type":"error"},{"inputs":[],"name":"ConsiderationLengthNotEqualToTotalOriginal","type":"error"},{"inputs":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"uint256","name":"considerationIndex","type":"uint256"},{"internalType":"uint256","name":"shortfallAmount","type":"uint256"}],"name":"ConsiderationNotMet","type":"error"},{"inputs":[],"name":"CriteriaNotEnabledForItem","type":"error"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256[]","name":"identifiers","type":"uint256[]"},{"internalType":"uint256[]","name":"amounts","type":"uint256[]"}],"name":"ERC1155BatchTransferGenericFailure","type":"error"},{"inputs":[],"name":"InexactFraction","type":"error"},{"inputs":[],"name":"InsufficientNativeTokensSupplied","type":"error"},{"inputs":[],"name":"Invalid1155BatchTransferEncoding","type":"error"},{"inputs":[],"name":"InvalidBasicOrderParameterEncoding","type":"error"},{"inputs":[{"internalType":"address","name":"conduit","type":"address"}],"name":"InvalidCallToConduit","type":"error"},{"inputs":[{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"address","name":"conduit","type":"address"}],"name":"InvalidConduit","type":"error"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"InvalidContractOrder","type":"error"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"InvalidERC721TransferAmount","type":"error"},{"inputs":[{"internalType":"uint256","name":"value","type":"uint256"}],"name":"InvalidMsgValue","type":"error"},{"inputs":[],"name":"InvalidNativeOfferItem","type":"error"},{"inputs":[],"name":"InvalidProof","type":"error"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"InvalidRestrictedOrder","type":"error"},{"inputs":[],"name":"InvalidSignature","type":"error"},{"inputs":[],"name":"InvalidSigner","type":"error"},{"inputs":[{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"}],"name":"InvalidTime","type":"error"},{"inputs":[],"name":"MissingItemAmount","type":"error"},{"inputs":[],"name":"MissingOriginalConsiderationItems","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"NativeTokenTransferGenericFailure","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"NoContract","type":"error"},{"inputs":[],"name":"NoReentrantCalls","type":"error"},{"inputs":[],"name":"NoSpecifiedOrdersAvailable","type":"error"},{"inputs":[],"name":"OfferCriteriaResolverOutOfRange","type":"error"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"OrderAlreadyFilled","type":"error"},{"inputs":[{"internalType":"enum Side","name":"side","type":"uint8"}],"name":"OrderCriteriaResolverOutOfRange","type":"error"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"OrderIsCancelled","type":"error"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"OrderPartiallyFilled","type":"error"},{"inputs":[],"name":"PartialFillsNotEnabledForOrder","type":"error"},{"inputs":[],"name":"TStoreAlreadyActivated","type":"error"},{"inputs":[],"name":"TStoreNotSupported","type":"error"},{"inputs":[],"name":"TloadTestContractDeploymentFailed","type":"error"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"TokenTransferGenericFailure","type":"error"},{"inputs":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"uint256","name":"considerationIndex","type":"uint256"}],"name":"UnresolvedConsiderationCriteria","type":"error"},{"inputs":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"uint256","name":"offerIndex","type":"uint256"}],"name":"UnresolvedOfferCriteria","type":"error"},{"inputs":[],"name":"UnusedItemParameters","type":"error"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"newCounter","type":"uint256"},{"indexed":true,"internalType":"address","name":"offerer","type":"address"}],"name":"CounterIncremented","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"orderHash","type":"bytes32"},{"indexed":true,"internalType":"address","name":"offerer","type":"address"},{"indexed":true,"internalType":"address","name":"zone","type":"address"}],"name":"OrderCancelled","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"orderHash","type":"bytes32"},{"indexed":true,"internalType":"address","name":"offerer","type":"address"},{"indexed":true,"internalType":"address","name":"zone","type":"address"},{"indexed":false,"internalType":"address","name":"recipient","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"}],"indexed":false,"internalType":"struct SpentItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"indexed":false,"internalType":"struct ReceivedItem[]","name":"consideration","type":"tuple[]"}],"name":"OrderFulfilled","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"orderHash","type":"bytes32"},{"components":[{"internalType":"address","name":"offerer","type":"address"},{"internalType":"address","name":"zone","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"}],"internalType":"struct OfferItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ConsiderationItem[]","name":"consideration","type":"tuple[]"},{"internalType":"enum OrderType","name":"orderType","type":"uint8"},{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"},{"internalType":"bytes32","name":"zoneHash","type":"bytes32"},{"internalType":"uint256","name":"salt","type":"uint256"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"uint256","name":"totalOriginalConsiderationItems","type":"uint256"}],"indexed":false,"internalType":"struct OrderParameters","name":"orderParameters","type":"tuple"}],"name":"OrderValidated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32[]","name":"orderHashes","type":"bytes32[]"}],"name":"OrdersMatched","type":"event"},{"inputs":[],"name":"__activateTstore","outputs":[],"stateMutability":"nonpayable","type":"function"}] diff --git a/artifacts/abi/OrderValidator.json b/artifacts/abi/OrderValidator.json new file mode 100644 index 00000000..24f4e091 --- /dev/null +++ b/artifacts/abi/OrderValidator.json @@ -0,0 +1 @@ +[{"inputs":[{"internalType":"address","name":"conduitController","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"BadContractSignature","type":"error"},{"inputs":[],"name":"BadFraction","type":"error"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"BadReturnValueFromERC20OnTransfer","type":"error"},{"inputs":[{"internalType":"uint8","name":"v","type":"uint8"}],"name":"BadSignatureV","type":"error"},{"inputs":[],"name":"CannotCancelOrder","type":"error"},{"inputs":[],"name":"ConsiderationLengthNotEqualToTotalOriginal","type":"error"},{"inputs":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"uint256","name":"considerationIndex","type":"uint256"},{"internalType":"uint256","name":"shortfallAmount","type":"uint256"}],"name":"ConsiderationNotMet","type":"error"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256[]","name":"identifiers","type":"uint256[]"},{"internalType":"uint256[]","name":"amounts","type":"uint256[]"}],"name":"ERC1155BatchTransferGenericFailure","type":"error"},{"inputs":[],"name":"InsufficientNativeTokensSupplied","type":"error"},{"inputs":[],"name":"Invalid1155BatchTransferEncoding","type":"error"},{"inputs":[],"name":"InvalidBasicOrderParameterEncoding","type":"error"},{"inputs":[{"internalType":"address","name":"conduit","type":"address"}],"name":"InvalidCallToConduit","type":"error"},{"inputs":[{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"address","name":"conduit","type":"address"}],"name":"InvalidConduit","type":"error"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"InvalidContractOrder","type":"error"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"InvalidERC721TransferAmount","type":"error"},{"inputs":[{"internalType":"uint256","name":"value","type":"uint256"}],"name":"InvalidMsgValue","type":"error"},{"inputs":[],"name":"InvalidNativeOfferItem","type":"error"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"InvalidRestrictedOrder","type":"error"},{"inputs":[],"name":"InvalidSignature","type":"error"},{"inputs":[],"name":"InvalidSigner","type":"error"},{"inputs":[{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"}],"name":"InvalidTime","type":"error"},{"inputs":[],"name":"MissingItemAmount","type":"error"},{"inputs":[],"name":"MissingOriginalConsiderationItems","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"NativeTokenTransferGenericFailure","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"NoContract","type":"error"},{"inputs":[],"name":"NoReentrantCalls","type":"error"},{"inputs":[],"name":"NoSpecifiedOrdersAvailable","type":"error"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"OrderAlreadyFilled","type":"error"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"OrderIsCancelled","type":"error"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"OrderPartiallyFilled","type":"error"},{"inputs":[],"name":"PartialFillsNotEnabledForOrder","type":"error"},{"inputs":[],"name":"TStoreAlreadyActivated","type":"error"},{"inputs":[],"name":"TStoreNotSupported","type":"error"},{"inputs":[],"name":"TloadTestContractDeploymentFailed","type":"error"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"TokenTransferGenericFailure","type":"error"},{"inputs":[],"name":"UnusedItemParameters","type":"error"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"newCounter","type":"uint256"},{"indexed":true,"internalType":"address","name":"offerer","type":"address"}],"name":"CounterIncremented","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"orderHash","type":"bytes32"},{"indexed":true,"internalType":"address","name":"offerer","type":"address"},{"indexed":true,"internalType":"address","name":"zone","type":"address"}],"name":"OrderCancelled","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"orderHash","type":"bytes32"},{"indexed":true,"internalType":"address","name":"offerer","type":"address"},{"indexed":true,"internalType":"address","name":"zone","type":"address"},{"indexed":false,"internalType":"address","name":"recipient","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"}],"indexed":false,"internalType":"struct SpentItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"indexed":false,"internalType":"struct ReceivedItem[]","name":"consideration","type":"tuple[]"}],"name":"OrderFulfilled","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"orderHash","type":"bytes32"},{"components":[{"internalType":"address","name":"offerer","type":"address"},{"internalType":"address","name":"zone","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"}],"internalType":"struct OfferItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ConsiderationItem[]","name":"consideration","type":"tuple[]"},{"internalType":"enum OrderType","name":"orderType","type":"uint8"},{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"},{"internalType":"bytes32","name":"zoneHash","type":"bytes32"},{"internalType":"uint256","name":"salt","type":"uint256"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"uint256","name":"totalOriginalConsiderationItems","type":"uint256"}],"indexed":false,"internalType":"struct OrderParameters","name":"orderParameters","type":"tuple"}],"name":"OrderValidated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32[]","name":"orderHashes","type":"bytes32[]"}],"name":"OrdersMatched","type":"event"},{"inputs":[],"name":"__activateTstore","outputs":[],"stateMutability":"nonpayable","type":"function"}] diff --git a/artifacts/abi/ReentrancyErrors.json b/artifacts/abi/ReentrancyErrors.json new file mode 100644 index 00000000..bf472cf1 --- /dev/null +++ b/artifacts/abi/ReentrancyErrors.json @@ -0,0 +1 @@ +[{"inputs":[],"name":"NoReentrantCalls","type":"error"},{"inputs":[],"name":"TStoreAlreadyActivated","type":"error"},{"inputs":[],"name":"TStoreNotSupported","type":"error"},{"inputs":[],"name":"TloadTestContractDeploymentFailed","type":"error"}] diff --git a/artifacts/abi/ReentrancyGuard.json b/artifacts/abi/ReentrancyGuard.json new file mode 100644 index 00000000..d7eadb2f --- /dev/null +++ b/artifacts/abi/ReentrancyGuard.json @@ -0,0 +1 @@ +[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"NoReentrantCalls","type":"error"},{"inputs":[],"name":"TStoreAlreadyActivated","type":"error"},{"inputs":[],"name":"TStoreNotSupported","type":"error"},{"inputs":[],"name":"TloadTestContractDeploymentFailed","type":"error"},{"inputs":[],"name":"__activateTstore","outputs":[],"stateMutability":"nonpayable","type":"function"}] diff --git a/artifacts/abi/Seaport.json b/artifacts/abi/Seaport.json new file mode 100644 index 00000000..9aed30ff --- /dev/null +++ b/artifacts/abi/Seaport.json @@ -0,0 +1 @@ +[{"inputs":[{"internalType":"address","name":"conduitController","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"BadContractSignature","type":"error"},{"inputs":[],"name":"BadFraction","type":"error"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"BadReturnValueFromERC20OnTransfer","type":"error"},{"inputs":[{"internalType":"uint8","name":"v","type":"uint8"}],"name":"BadSignatureV","type":"error"},{"inputs":[],"name":"CannotCancelOrder","type":"error"},{"inputs":[],"name":"ConsiderationCriteriaResolverOutOfRange","type":"error"},{"inputs":[],"name":"ConsiderationLengthNotEqualToTotalOriginal","type":"error"},{"inputs":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"uint256","name":"considerationIndex","type":"uint256"},{"internalType":"uint256","name":"shortfallAmount","type":"uint256"}],"name":"ConsiderationNotMet","type":"error"},{"inputs":[],"name":"CriteriaNotEnabledForItem","type":"error"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256[]","name":"identifiers","type":"uint256[]"},{"internalType":"uint256[]","name":"amounts","type":"uint256[]"}],"name":"ERC1155BatchTransferGenericFailure","type":"error"},{"inputs":[],"name":"InexactFraction","type":"error"},{"inputs":[],"name":"InsufficientNativeTokensSupplied","type":"error"},{"inputs":[],"name":"Invalid1155BatchTransferEncoding","type":"error"},{"inputs":[],"name":"InvalidBasicOrderParameterEncoding","type":"error"},{"inputs":[{"internalType":"address","name":"conduit","type":"address"}],"name":"InvalidCallToConduit","type":"error"},{"inputs":[{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"address","name":"conduit","type":"address"}],"name":"InvalidConduit","type":"error"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"InvalidContractOrder","type":"error"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"InvalidERC721TransferAmount","type":"error"},{"inputs":[],"name":"InvalidFulfillmentComponentData","type":"error"},{"inputs":[{"internalType":"uint256","name":"value","type":"uint256"}],"name":"InvalidMsgValue","type":"error"},{"inputs":[],"name":"InvalidNativeOfferItem","type":"error"},{"inputs":[],"name":"InvalidProof","type":"error"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"InvalidRestrictedOrder","type":"error"},{"inputs":[],"name":"InvalidSignature","type":"error"},{"inputs":[],"name":"InvalidSigner","type":"error"},{"inputs":[{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"}],"name":"InvalidTime","type":"error"},{"inputs":[{"internalType":"uint256","name":"fulfillmentIndex","type":"uint256"}],"name":"MismatchedFulfillmentOfferAndConsiderationComponents","type":"error"},{"inputs":[{"internalType":"enum Side","name":"side","type":"uint8"}],"name":"MissingFulfillmentComponentOnAggregation","type":"error"},{"inputs":[],"name":"MissingItemAmount","type":"error"},{"inputs":[],"name":"MissingOriginalConsiderationItems","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"NativeTokenTransferGenericFailure","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"NoContract","type":"error"},{"inputs":[],"name":"NoReentrantCalls","type":"error"},{"inputs":[],"name":"NoSpecifiedOrdersAvailable","type":"error"},{"inputs":[],"name":"OfferAndConsiderationRequiredOnFulfillment","type":"error"},{"inputs":[],"name":"OfferCriteriaResolverOutOfRange","type":"error"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"OrderAlreadyFilled","type":"error"},{"inputs":[{"internalType":"enum Side","name":"side","type":"uint8"}],"name":"OrderCriteriaResolverOutOfRange","type":"error"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"OrderIsCancelled","type":"error"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"OrderPartiallyFilled","type":"error"},{"inputs":[],"name":"PartialFillsNotEnabledForOrder","type":"error"},{"inputs":[],"name":"TStoreAlreadyActivated","type":"error"},{"inputs":[],"name":"TStoreNotSupported","type":"error"},{"inputs":[],"name":"TloadTestContractDeploymentFailed","type":"error"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"TokenTransferGenericFailure","type":"error"},{"inputs":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"uint256","name":"considerationIndex","type":"uint256"}],"name":"UnresolvedConsiderationCriteria","type":"error"},{"inputs":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"uint256","name":"offerIndex","type":"uint256"}],"name":"UnresolvedOfferCriteria","type":"error"},{"inputs":[],"name":"UnusedItemParameters","type":"error"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"newCounter","type":"uint256"},{"indexed":true,"internalType":"address","name":"offerer","type":"address"}],"name":"CounterIncremented","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"orderHash","type":"bytes32"},{"indexed":true,"internalType":"address","name":"offerer","type":"address"},{"indexed":true,"internalType":"address","name":"zone","type":"address"}],"name":"OrderCancelled","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"orderHash","type":"bytes32"},{"indexed":true,"internalType":"address","name":"offerer","type":"address"},{"indexed":true,"internalType":"address","name":"zone","type":"address"},{"indexed":false,"internalType":"address","name":"recipient","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"}],"indexed":false,"internalType":"struct SpentItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"indexed":false,"internalType":"struct ReceivedItem[]","name":"consideration","type":"tuple[]"}],"name":"OrderFulfilled","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"orderHash","type":"bytes32"},{"components":[{"internalType":"address","name":"offerer","type":"address"},{"internalType":"address","name":"zone","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"}],"internalType":"struct OfferItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ConsiderationItem[]","name":"consideration","type":"tuple[]"},{"internalType":"enum OrderType","name":"orderType","type":"uint8"},{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"},{"internalType":"bytes32","name":"zoneHash","type":"bytes32"},{"internalType":"uint256","name":"salt","type":"uint256"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"uint256","name":"totalOriginalConsiderationItems","type":"uint256"}],"indexed":false,"internalType":"struct OrderParameters","name":"orderParameters","type":"tuple"}],"name":"OrderValidated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32[]","name":"orderHashes","type":"bytes32[]"}],"name":"OrdersMatched","type":"event"},{"inputs":[],"name":"__activateTstore","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"offerer","type":"address"},{"internalType":"address","name":"zone","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"}],"internalType":"struct OfferItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ConsiderationItem[]","name":"consideration","type":"tuple[]"},{"internalType":"enum OrderType","name":"orderType","type":"uint8"},{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"},{"internalType":"bytes32","name":"zoneHash","type":"bytes32"},{"internalType":"uint256","name":"salt","type":"uint256"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"uint256","name":"counter","type":"uint256"}],"internalType":"struct OrderComponents[]","name":"orders","type":"tuple[]"}],"name":"cancel","outputs":[{"internalType":"bool","name":"cancelled","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"address","name":"offerer","type":"address"},{"internalType":"address","name":"zone","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"}],"internalType":"struct OfferItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ConsiderationItem[]","name":"consideration","type":"tuple[]"},{"internalType":"enum OrderType","name":"orderType","type":"uint8"},{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"},{"internalType":"bytes32","name":"zoneHash","type":"bytes32"},{"internalType":"uint256","name":"salt","type":"uint256"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"uint256","name":"totalOriginalConsiderationItems","type":"uint256"}],"internalType":"struct OrderParameters","name":"parameters","type":"tuple"},{"internalType":"uint120","name":"numerator","type":"uint120"},{"internalType":"uint120","name":"denominator","type":"uint120"},{"internalType":"bytes","name":"signature","type":"bytes"},{"internalType":"bytes","name":"extraData","type":"bytes"}],"internalType":"struct AdvancedOrder","name":"","type":"tuple"},{"components":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"enum Side","name":"side","type":"uint8"},{"internalType":"uint256","name":"index","type":"uint256"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"bytes32[]","name":"criteriaProof","type":"bytes32[]"}],"internalType":"struct CriteriaResolver[]","name":"","type":"tuple[]"},{"internalType":"bytes32","name":"fulfillerConduitKey","type":"bytes32"},{"internalType":"address","name":"recipient","type":"address"}],"name":"fulfillAdvancedOrder","outputs":[{"internalType":"bool","name":"fulfilled","type":"bool"}],"stateMutability":"payable","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"address","name":"offerer","type":"address"},{"internalType":"address","name":"zone","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"}],"internalType":"struct OfferItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ConsiderationItem[]","name":"consideration","type":"tuple[]"},{"internalType":"enum OrderType","name":"orderType","type":"uint8"},{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"},{"internalType":"bytes32","name":"zoneHash","type":"bytes32"},{"internalType":"uint256","name":"salt","type":"uint256"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"uint256","name":"totalOriginalConsiderationItems","type":"uint256"}],"internalType":"struct OrderParameters","name":"parameters","type":"tuple"},{"internalType":"uint120","name":"numerator","type":"uint120"},{"internalType":"uint120","name":"denominator","type":"uint120"},{"internalType":"bytes","name":"signature","type":"bytes"},{"internalType":"bytes","name":"extraData","type":"bytes"}],"internalType":"struct AdvancedOrder[]","name":"","type":"tuple[]"},{"components":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"enum Side","name":"side","type":"uint8"},{"internalType":"uint256","name":"index","type":"uint256"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"bytes32[]","name":"criteriaProof","type":"bytes32[]"}],"internalType":"struct CriteriaResolver[]","name":"","type":"tuple[]"},{"components":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"uint256","name":"itemIndex","type":"uint256"}],"internalType":"struct FulfillmentComponent[][]","name":"","type":"tuple[][]"},{"components":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"uint256","name":"itemIndex","type":"uint256"}],"internalType":"struct FulfillmentComponent[][]","name":"","type":"tuple[][]"},{"internalType":"bytes32","name":"fulfillerConduitKey","type":"bytes32"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"maximumFulfilled","type":"uint256"}],"name":"fulfillAvailableAdvancedOrders","outputs":[{"internalType":"bool[]","name":"","type":"bool[]"},{"components":[{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ReceivedItem","name":"item","type":"tuple"},{"internalType":"address","name":"offerer","type":"address"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"}],"internalType":"struct Execution[]","name":"","type":"tuple[]"}],"stateMutability":"payable","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"address","name":"offerer","type":"address"},{"internalType":"address","name":"zone","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"}],"internalType":"struct OfferItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ConsiderationItem[]","name":"consideration","type":"tuple[]"},{"internalType":"enum OrderType","name":"orderType","type":"uint8"},{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"},{"internalType":"bytes32","name":"zoneHash","type":"bytes32"},{"internalType":"uint256","name":"salt","type":"uint256"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"uint256","name":"totalOriginalConsiderationItems","type":"uint256"}],"internalType":"struct OrderParameters","name":"parameters","type":"tuple"},{"internalType":"bytes","name":"signature","type":"bytes"}],"internalType":"struct Order[]","name":"","type":"tuple[]"},{"components":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"uint256","name":"itemIndex","type":"uint256"}],"internalType":"struct FulfillmentComponent[][]","name":"","type":"tuple[][]"},{"components":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"uint256","name":"itemIndex","type":"uint256"}],"internalType":"struct FulfillmentComponent[][]","name":"","type":"tuple[][]"},{"internalType":"bytes32","name":"fulfillerConduitKey","type":"bytes32"},{"internalType":"uint256","name":"maximumFulfilled","type":"uint256"}],"name":"fulfillAvailableOrders","outputs":[{"internalType":"bool[]","name":"","type":"bool[]"},{"components":[{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ReceivedItem","name":"item","type":"tuple"},{"internalType":"address","name":"offerer","type":"address"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"}],"internalType":"struct Execution[]","name":"","type":"tuple[]"}],"stateMutability":"payable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"considerationToken","type":"address"},{"internalType":"uint256","name":"considerationIdentifier","type":"uint256"},{"internalType":"uint256","name":"considerationAmount","type":"uint256"},{"internalType":"address payable","name":"offerer","type":"address"},{"internalType":"address","name":"zone","type":"address"},{"internalType":"address","name":"offerToken","type":"address"},{"internalType":"uint256","name":"offerIdentifier","type":"uint256"},{"internalType":"uint256","name":"offerAmount","type":"uint256"},{"internalType":"enum BasicOrderType","name":"basicOrderType","type":"uint8"},{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"},{"internalType":"bytes32","name":"zoneHash","type":"bytes32"},{"internalType":"uint256","name":"salt","type":"uint256"},{"internalType":"bytes32","name":"offererConduitKey","type":"bytes32"},{"internalType":"bytes32","name":"fulfillerConduitKey","type":"bytes32"},{"internalType":"uint256","name":"totalOriginalAdditionalRecipients","type":"uint256"},{"components":[{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct AdditionalRecipient[]","name":"additionalRecipients","type":"tuple[]"},{"internalType":"bytes","name":"signature","type":"bytes"}],"internalType":"struct BasicOrderParameters","name":"","type":"tuple"}],"name":"fulfillBasicOrder","outputs":[{"internalType":"bool","name":"fulfilled","type":"bool"}],"stateMutability":"payable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"considerationToken","type":"address"},{"internalType":"uint256","name":"considerationIdentifier","type":"uint256"},{"internalType":"uint256","name":"considerationAmount","type":"uint256"},{"internalType":"address payable","name":"offerer","type":"address"},{"internalType":"address","name":"zone","type":"address"},{"internalType":"address","name":"offerToken","type":"address"},{"internalType":"uint256","name":"offerIdentifier","type":"uint256"},{"internalType":"uint256","name":"offerAmount","type":"uint256"},{"internalType":"enum BasicOrderType","name":"basicOrderType","type":"uint8"},{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"},{"internalType":"bytes32","name":"zoneHash","type":"bytes32"},{"internalType":"uint256","name":"salt","type":"uint256"},{"internalType":"bytes32","name":"offererConduitKey","type":"bytes32"},{"internalType":"bytes32","name":"fulfillerConduitKey","type":"bytes32"},{"internalType":"uint256","name":"totalOriginalAdditionalRecipients","type":"uint256"},{"components":[{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct AdditionalRecipient[]","name":"additionalRecipients","type":"tuple[]"},{"internalType":"bytes","name":"signature","type":"bytes"}],"internalType":"struct BasicOrderParameters","name":"","type":"tuple"}],"name":"fulfillBasicOrder_efficient_6GL6yc","outputs":[{"internalType":"bool","name":"fulfilled","type":"bool"}],"stateMutability":"payable","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"address","name":"offerer","type":"address"},{"internalType":"address","name":"zone","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"}],"internalType":"struct OfferItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ConsiderationItem[]","name":"consideration","type":"tuple[]"},{"internalType":"enum OrderType","name":"orderType","type":"uint8"},{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"},{"internalType":"bytes32","name":"zoneHash","type":"bytes32"},{"internalType":"uint256","name":"salt","type":"uint256"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"uint256","name":"totalOriginalConsiderationItems","type":"uint256"}],"internalType":"struct OrderParameters","name":"parameters","type":"tuple"},{"internalType":"bytes","name":"signature","type":"bytes"}],"internalType":"struct Order","name":"","type":"tuple"},{"internalType":"bytes32","name":"fulfillerConduitKey","type":"bytes32"}],"name":"fulfillOrder","outputs":[{"internalType":"bool","name":"fulfilled","type":"bool"}],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"contractOfferer","type":"address"}],"name":"getContractOffererNonce","outputs":[{"internalType":"uint256","name":"nonce","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"offerer","type":"address"}],"name":"getCounter","outputs":[{"internalType":"uint256","name":"counter","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"offerer","type":"address"},{"internalType":"address","name":"zone","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"}],"internalType":"struct OfferItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ConsiderationItem[]","name":"consideration","type":"tuple[]"},{"internalType":"enum OrderType","name":"orderType","type":"uint8"},{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"},{"internalType":"bytes32","name":"zoneHash","type":"bytes32"},{"internalType":"uint256","name":"salt","type":"uint256"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"uint256","name":"counter","type":"uint256"}],"internalType":"struct OrderComponents","name":"","type":"tuple"}],"name":"getOrderHash","outputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"getOrderStatus","outputs":[{"internalType":"bool","name":"isValidated","type":"bool"},{"internalType":"bool","name":"isCancelled","type":"bool"},{"internalType":"uint256","name":"totalFilled","type":"uint256"},{"internalType":"uint256","name":"totalSize","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"incrementCounter","outputs":[{"internalType":"uint256","name":"newCounter","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"information","outputs":[{"internalType":"string","name":"version","type":"string"},{"internalType":"bytes32","name":"domainSeparator","type":"bytes32"},{"internalType":"address","name":"conduitController","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"address","name":"offerer","type":"address"},{"internalType":"address","name":"zone","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"}],"internalType":"struct OfferItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ConsiderationItem[]","name":"consideration","type":"tuple[]"},{"internalType":"enum OrderType","name":"orderType","type":"uint8"},{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"},{"internalType":"bytes32","name":"zoneHash","type":"bytes32"},{"internalType":"uint256","name":"salt","type":"uint256"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"uint256","name":"totalOriginalConsiderationItems","type":"uint256"}],"internalType":"struct OrderParameters","name":"parameters","type":"tuple"},{"internalType":"uint120","name":"numerator","type":"uint120"},{"internalType":"uint120","name":"denominator","type":"uint120"},{"internalType":"bytes","name":"signature","type":"bytes"},{"internalType":"bytes","name":"extraData","type":"bytes"}],"internalType":"struct AdvancedOrder[]","name":"","type":"tuple[]"},{"components":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"enum Side","name":"side","type":"uint8"},{"internalType":"uint256","name":"index","type":"uint256"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"bytes32[]","name":"criteriaProof","type":"bytes32[]"}],"internalType":"struct CriteriaResolver[]","name":"","type":"tuple[]"},{"components":[{"components":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"uint256","name":"itemIndex","type":"uint256"}],"internalType":"struct FulfillmentComponent[]","name":"offerComponents","type":"tuple[]"},{"components":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"uint256","name":"itemIndex","type":"uint256"}],"internalType":"struct FulfillmentComponent[]","name":"considerationComponents","type":"tuple[]"}],"internalType":"struct Fulfillment[]","name":"","type":"tuple[]"},{"internalType":"address","name":"recipient","type":"address"}],"name":"matchAdvancedOrders","outputs":[{"components":[{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ReceivedItem","name":"item","type":"tuple"},{"internalType":"address","name":"offerer","type":"address"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"}],"internalType":"struct Execution[]","name":"","type":"tuple[]"}],"stateMutability":"payable","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"address","name":"offerer","type":"address"},{"internalType":"address","name":"zone","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"}],"internalType":"struct OfferItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ConsiderationItem[]","name":"consideration","type":"tuple[]"},{"internalType":"enum OrderType","name":"orderType","type":"uint8"},{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"},{"internalType":"bytes32","name":"zoneHash","type":"bytes32"},{"internalType":"uint256","name":"salt","type":"uint256"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"uint256","name":"totalOriginalConsiderationItems","type":"uint256"}],"internalType":"struct OrderParameters","name":"parameters","type":"tuple"},{"internalType":"bytes","name":"signature","type":"bytes"}],"internalType":"struct Order[]","name":"","type":"tuple[]"},{"components":[{"components":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"uint256","name":"itemIndex","type":"uint256"}],"internalType":"struct FulfillmentComponent[]","name":"offerComponents","type":"tuple[]"},{"components":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"uint256","name":"itemIndex","type":"uint256"}],"internalType":"struct FulfillmentComponent[]","name":"considerationComponents","type":"tuple[]"}],"internalType":"struct Fulfillment[]","name":"","type":"tuple[]"}],"name":"matchOrders","outputs":[{"components":[{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ReceivedItem","name":"item","type":"tuple"},{"internalType":"address","name":"offerer","type":"address"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"}],"internalType":"struct Execution[]","name":"","type":"tuple[]"}],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"address","name":"offerer","type":"address"},{"internalType":"address","name":"zone","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"}],"internalType":"struct OfferItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ConsiderationItem[]","name":"consideration","type":"tuple[]"},{"internalType":"enum OrderType","name":"orderType","type":"uint8"},{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"},{"internalType":"bytes32","name":"zoneHash","type":"bytes32"},{"internalType":"uint256","name":"salt","type":"uint256"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"uint256","name":"totalOriginalConsiderationItems","type":"uint256"}],"internalType":"struct OrderParameters","name":"parameters","type":"tuple"},{"internalType":"bytes","name":"signature","type":"bytes"}],"internalType":"struct Order[]","name":"","type":"tuple[]"}],"name":"validate","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}] diff --git a/artifacts/abi/SeaportProxyBuyer.json b/artifacts/abi/SeaportProxyBuyer.json new file mode 100644 index 00000000..5c487294 --- /dev/null +++ b/artifacts/abi/SeaportProxyBuyer.json @@ -0,0 +1 @@ +[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"InvalidSignature","type":"error"},{"inputs":[],"name":"OrderIsNotFulfiled","type":"error"},{"inputs":[],"name":"RecipientIsZeroAddress","type":"error"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint8","name":"version","type":"uint8"}],"name":"Initialized","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"role","type":"bytes32"},{"indexed":true,"internalType":"bytes32","name":"previousAdminRole","type":"bytes32"},{"indexed":true,"internalType":"bytes32","name":"newAdminRole","type":"bytes32"}],"name":"RoleAdminChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"role","type":"bytes32"},{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":true,"internalType":"address","name":"sender","type":"address"}],"name":"RoleGranted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"role","type":"bytes32"},{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":true,"internalType":"address","name":"sender","type":"address"}],"name":"RoleRevoked","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Unpaused","type":"event"},{"inputs":[],"name":"DEFAULT_ADMIN_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MINTER_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"NAME","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"VERSION","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"addMinter","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"accounts","type":"address[]"}],"name":"addMinters","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"receiver","type":"address"}],"name":"closeMinter","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"from","type":"address"},{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"uint256","name":"tokenId","type":"uint256"},{"internalType":"bytes","name":"data","type":"bytes"}],"internalType":"struct IForwarder.ForwardRequest","name":"req","type":"tuple"},{"internalType":"bytes","name":"signature","type":"bytes"}],"name":"execute","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"address","name":"offerer","type":"address"},{"internalType":"address","name":"zone","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"}],"internalType":"struct OfferItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ConsiderationItem[]","name":"consideration","type":"tuple[]"},{"internalType":"enum OrderType","name":"orderType","type":"uint8"},{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"},{"internalType":"bytes32","name":"zoneHash","type":"bytes32"},{"internalType":"uint256","name":"salt","type":"uint256"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"uint256","name":"totalOriginalConsiderationItems","type":"uint256"}],"internalType":"struct OrderParameters","name":"parameters","type":"tuple"},{"internalType":"uint120","name":"numerator","type":"uint120"},{"internalType":"uint120","name":"denominator","type":"uint120"},{"internalType":"bytes","name":"signature","type":"bytes"},{"internalType":"bytes","name":"extraData","type":"bytes"}],"internalType":"struct AdvancedOrder","name":"advancedOrder","type":"tuple"},{"components":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"enum Side","name":"side","type":"uint8"},{"internalType":"uint256","name":"index","type":"uint256"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"bytes32[]","name":"criteriaProof","type":"bytes32[]"}],"internalType":"struct CriteriaResolver[]","name":"criteriaResolvers","type":"tuple[]"},{"internalType":"bytes32","name":"fulfillerConduitKey","type":"bytes32"},{"internalType":"address","name":"recipient","type":"address"}],"name":"fulfillAdvancedOrder","outputs":[{"internalType":"bool","name":"fulfilled","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"}],"name":"getRoleAdmin","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"grantRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"hasRole","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"contract ConsiderationInterface","name":"seaport","type":"address"},{"internalType":"contract IERC20","name":"usdc","type":"address"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isMinter","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"forwarder","type":"address"}],"name":"isTrustedForwarder","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"nonceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"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":[{"internalType":"address","name":"account","type":"address"}],"name":"removeMinter","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"accounts","type":"address[]"}],"name":"removeMinters","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceMinter","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"renounceRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"revokeRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"receiver","type":"address"}],"name":"rotateMinter","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unpause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"from","type":"address"},{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"uint256","name":"tokenId","type":"uint256"},{"internalType":"bytes","name":"data","type":"bytes"}],"internalType":"struct IForwarder.ForwardRequest","name":"req","type":"tuple"},{"internalType":"bytes","name":"signature","type":"bytes"}],"name":"verify","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"withdraw","outputs":[],"stateMutability":"nonpayable","type":"function"}] diff --git a/artifacts/abi/SignatureVerification.json b/artifacts/abi/SignatureVerification.json new file mode 100644 index 00000000..5e611812 --- /dev/null +++ b/artifacts/abi/SignatureVerification.json @@ -0,0 +1 @@ +[{"inputs":[],"name":"BadContractSignature","type":"error"},{"inputs":[{"internalType":"uint8","name":"v","type":"uint8"}],"name":"BadSignatureV","type":"error"},{"inputs":[],"name":"InvalidSignature","type":"error"},{"inputs":[],"name":"InvalidSigner","type":"error"}] diff --git a/artifacts/abi/SignatureVerificationErrors.json b/artifacts/abi/SignatureVerificationErrors.json new file mode 100644 index 00000000..5e611812 --- /dev/null +++ b/artifacts/abi/SignatureVerificationErrors.json @@ -0,0 +1 @@ +[{"inputs":[],"name":"BadContractSignature","type":"error"},{"inputs":[{"internalType":"uint8","name":"v","type":"uint8"}],"name":"BadSignatureV","type":"error"},{"inputs":[],"name":"InvalidSignature","type":"error"},{"inputs":[],"name":"InvalidSigner","type":"error"}] diff --git a/artifacts/abi/TokenTransferrer.json b/artifacts/abi/TokenTransferrer.json new file mode 100644 index 00000000..304abdb2 --- /dev/null +++ b/artifacts/abi/TokenTransferrer.json @@ -0,0 +1 @@ +[{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"BadReturnValueFromERC20OnTransfer","type":"error"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256[]","name":"identifiers","type":"uint256[]"},{"internalType":"uint256[]","name":"amounts","type":"uint256[]"}],"name":"ERC1155BatchTransferGenericFailure","type":"error"},{"inputs":[],"name":"Invalid1155BatchTransferEncoding","type":"error"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"InvalidERC721TransferAmount","type":"error"},{"inputs":[],"name":"MissingItemAmount","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"NoContract","type":"error"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"TokenTransferGenericFailure","type":"error"},{"inputs":[],"name":"UnusedItemParameters","type":"error"}] diff --git a/artifacts/abi/TokenTransferrerErrors.json b/artifacts/abi/TokenTransferrerErrors.json new file mode 100644 index 00000000..304abdb2 --- /dev/null +++ b/artifacts/abi/TokenTransferrerErrors.json @@ -0,0 +1 @@ +[{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"BadReturnValueFromERC20OnTransfer","type":"error"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256[]","name":"identifiers","type":"uint256[]"},{"internalType":"uint256[]","name":"amounts","type":"uint256[]"}],"name":"ERC1155BatchTransferGenericFailure","type":"error"},{"inputs":[],"name":"Invalid1155BatchTransferEncoding","type":"error"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"InvalidERC721TransferAmount","type":"error"},{"inputs":[],"name":"MissingItemAmount","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"NoContract","type":"error"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"TokenTransferGenericFailure","type":"error"},{"inputs":[],"name":"UnusedItemParameters","type":"error"}] diff --git a/artifacts/abi/Verifiers.json b/artifacts/abi/Verifiers.json new file mode 100644 index 00000000..b622ded1 --- /dev/null +++ b/artifacts/abi/Verifiers.json @@ -0,0 +1 @@ +[{"inputs":[{"internalType":"address","name":"conduitController","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"BadContractSignature","type":"error"},{"inputs":[],"name":"BadFraction","type":"error"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"BadReturnValueFromERC20OnTransfer","type":"error"},{"inputs":[{"internalType":"uint8","name":"v","type":"uint8"}],"name":"BadSignatureV","type":"error"},{"inputs":[],"name":"CannotCancelOrder","type":"error"},{"inputs":[],"name":"ConsiderationLengthNotEqualToTotalOriginal","type":"error"},{"inputs":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"uint256","name":"considerationIndex","type":"uint256"},{"internalType":"uint256","name":"shortfallAmount","type":"uint256"}],"name":"ConsiderationNotMet","type":"error"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256[]","name":"identifiers","type":"uint256[]"},{"internalType":"uint256[]","name":"amounts","type":"uint256[]"}],"name":"ERC1155BatchTransferGenericFailure","type":"error"},{"inputs":[],"name":"InsufficientNativeTokensSupplied","type":"error"},{"inputs":[],"name":"Invalid1155BatchTransferEncoding","type":"error"},{"inputs":[],"name":"InvalidBasicOrderParameterEncoding","type":"error"},{"inputs":[{"internalType":"address","name":"conduit","type":"address"}],"name":"InvalidCallToConduit","type":"error"},{"inputs":[{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"address","name":"conduit","type":"address"}],"name":"InvalidConduit","type":"error"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"InvalidERC721TransferAmount","type":"error"},{"inputs":[{"internalType":"uint256","name":"value","type":"uint256"}],"name":"InvalidMsgValue","type":"error"},{"inputs":[],"name":"InvalidNativeOfferItem","type":"error"},{"inputs":[],"name":"InvalidSignature","type":"error"},{"inputs":[],"name":"InvalidSigner","type":"error"},{"inputs":[{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"}],"name":"InvalidTime","type":"error"},{"inputs":[],"name":"MissingItemAmount","type":"error"},{"inputs":[],"name":"MissingOriginalConsiderationItems","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"NativeTokenTransferGenericFailure","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"NoContract","type":"error"},{"inputs":[],"name":"NoReentrantCalls","type":"error"},{"inputs":[],"name":"NoSpecifiedOrdersAvailable","type":"error"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"OrderAlreadyFilled","type":"error"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"OrderIsCancelled","type":"error"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"OrderPartiallyFilled","type":"error"},{"inputs":[],"name":"PartialFillsNotEnabledForOrder","type":"error"},{"inputs":[],"name":"TStoreAlreadyActivated","type":"error"},{"inputs":[],"name":"TStoreNotSupported","type":"error"},{"inputs":[],"name":"TloadTestContractDeploymentFailed","type":"error"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"TokenTransferGenericFailure","type":"error"},{"inputs":[],"name":"UnusedItemParameters","type":"error"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"newCounter","type":"uint256"},{"indexed":true,"internalType":"address","name":"offerer","type":"address"}],"name":"CounterIncremented","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"orderHash","type":"bytes32"},{"indexed":true,"internalType":"address","name":"offerer","type":"address"},{"indexed":true,"internalType":"address","name":"zone","type":"address"}],"name":"OrderCancelled","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"orderHash","type":"bytes32"},{"indexed":true,"internalType":"address","name":"offerer","type":"address"},{"indexed":true,"internalType":"address","name":"zone","type":"address"},{"indexed":false,"internalType":"address","name":"recipient","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"}],"indexed":false,"internalType":"struct SpentItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"indexed":false,"internalType":"struct ReceivedItem[]","name":"consideration","type":"tuple[]"}],"name":"OrderFulfilled","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"orderHash","type":"bytes32"},{"components":[{"internalType":"address","name":"offerer","type":"address"},{"internalType":"address","name":"zone","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"}],"internalType":"struct OfferItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ConsiderationItem[]","name":"consideration","type":"tuple[]"},{"internalType":"enum OrderType","name":"orderType","type":"uint8"},{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"},{"internalType":"bytes32","name":"zoneHash","type":"bytes32"},{"internalType":"uint256","name":"salt","type":"uint256"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"uint256","name":"totalOriginalConsiderationItems","type":"uint256"}],"indexed":false,"internalType":"struct OrderParameters","name":"orderParameters","type":"tuple"}],"name":"OrderValidated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32[]","name":"orderHashes","type":"bytes32[]"}],"name":"OrdersMatched","type":"event"},{"inputs":[],"name":"__activateTstore","outputs":[],"stateMutability":"nonpayable","type":"function"}] diff --git a/artifacts/abi/ZoneInteraction.json b/artifacts/abi/ZoneInteraction.json new file mode 100644 index 00000000..7079ec6c --- /dev/null +++ b/artifacts/abi/ZoneInteraction.json @@ -0,0 +1 @@ +[{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"InvalidContractOrder","type":"error"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"InvalidRestrictedOrder","type":"error"}] diff --git a/artifacts/abi/ZoneInteractionErrors.json b/artifacts/abi/ZoneInteractionErrors.json new file mode 100644 index 00000000..7079ec6c --- /dev/null +++ b/artifacts/abi/ZoneInteractionErrors.json @@ -0,0 +1 @@ +[{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"InvalidContractOrder","type":"error"},{"inputs":[{"internalType":"bytes32","name":"orderHash","type":"bytes32"}],"name":"InvalidRestrictedOrder","type":"error"}] diff --git a/contracts/marketplace/ISeaportProxyBuyer.sol b/contracts/marketplace/ISeaportProxyBuyer.sol new file mode 100644 index 00000000..144ab5a8 --- /dev/null +++ b/contracts/marketplace/ISeaportProxyBuyer.sol @@ -0,0 +1,76 @@ +// @author Unstoppable Domains, Inc. +// @date April 25th, 2024 + +pragma solidity ^0.8.0; + +import {AdvancedOrder, CriteriaResolver} from 'seaport-types/src/lib/ConsiderationStructs.sol'; + +error OrderIsNotFulfiled(); +error RecipientIsZeroAddress(); + +interface ISeaportProxyBuyer { + /** + * @dev Fill an order, fully or partially, with an arbitrary number of + * items for offer and consideration alongside criteria resolvers + * containing specific token identifiers and associated proofs. + * + * @param advancedOrder The order to fulfill along with the fraction + * of the order to attempt to fill. Note that + * both the offerer and the fulfiller must first + * approve this contract (or their preferred + * conduit if indicated by the order) to transfer + * any relevant tokens on their behalf and that + * contracts must implement `onERC1155Received` + * to receive ERC1155 tokens as consideration. + * Also note that all offer and consideration + * components must have no remainder after + * multiplication of the respective amount with + * the supplied fraction for the partial fill to + * be considered valid. + * @param criteriaResolvers An array where each element contains a + * reference to a specific offer or + * consideration, a token identifier, and a proof + * that the supplied token identifier is + * contained in the merkle root held by the item + * in question's criteria element. Note that an + * empty criteria indicates that any + * (transferable) token identifier on the token + * in question is valid and that no associated + * proof needs to be supplied. + * @param fulfillerConduitKey A bytes32 value indicating what conduit, if + * any, to source the fulfiller's token approvals + * from. The zero hash signifies that no conduit + * should be used, with direct approvals set on + * Consideration. + * @param recipient The intended recipient for all received items, + * with `address(0)` indicating that the caller + * should receive the items. + * + * @return fulfilled A boolean indicating whether the order has been + * successfully fulfilled. + */ + function fulfillAdvancedOrder( + AdvancedOrder calldata advancedOrder, + CriteriaResolver[] calldata criteriaResolvers, + bytes32 fulfillerConduitKey, + address recipient + ) external returns (bool fulfilled); + + /** + * @dev Withdraw USDC from the contract balance. + * + * @param recipient Recipient of the USDC on contract balance + * @param amount Amount of USDC to withdraw + */ + function withdraw(address recipient, uint256 amount) external; + + /** + * @dev Pause the contract. + */ + function pause() external; + + /** + * @dev Unpause the contract. + */ + function unpause() external; +} diff --git a/contracts/marketplace/SeaportProxyBuyer.sol b/contracts/marketplace/SeaportProxyBuyer.sol new file mode 100644 index 00000000..0a6146e5 --- /dev/null +++ b/contracts/marketplace/SeaportProxyBuyer.sol @@ -0,0 +1,90 @@ +// @author Unstoppable Domains, Inc. +// @date April 25th, 2024 + +pragma solidity ^0.8.0; + +import {Initializable} from '@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol'; +import {ContextUpgradeable} from '@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol'; +import {ReentrancyGuardUpgradeable} from '@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.sol'; +import {PausableUpgradeable} from '@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol'; +import {IERC20} from '@openzeppelin/contracts/token/ERC20/IERC20.sol'; +import {InvalidForwardedToken, ERC2771RegistryContext} from '../metatx/ERC2771RegistryContext.sol'; +import {Forwarder} from '../metatx/Forwarder.sol'; +import {MinterRole} from '../roles/MinterRole.sol'; +import {ISeaportProxyBuyer, OrderIsNotFulfiled, RecipientIsZeroAddress} from './ISeaportProxyBuyer.sol'; +import {ConsiderationInterface} from 'seaport-types/src/interfaces/ConsiderationInterface.sol'; +import {AdvancedOrder, CriteriaResolver} from 'seaport-types/src/lib/ConsiderationStructs.sol'; + +contract SeaportProxyBuyer is + Initializable, + ContextUpgradeable, + ReentrancyGuardUpgradeable, + ERC2771RegistryContext, + Forwarder, + MinterRole, + PausableUpgradeable, + ISeaportProxyBuyer +{ + string public constant NAME = 'Seaport Proxy Buyer'; + string public constant VERSION = '0.0.1'; + + ConsiderationInterface private _seaport; + IERC20 private _usdc; + + /// @custom:oz-upgrades-unsafe-allow constructor + constructor() { + _disableInitializers(); + } + + function initialize(ConsiderationInterface seaport, IERC20 usdc) public initializer { + _seaport = seaport; + _usdc = usdc; + _usdc.approve(address(_seaport), type(uint256).max); + + __ReentrancyGuard_init_unchained(); + __ERC2771RegistryContext_init_unchained(); + __Forwarder_init_unchained(); + __Ownable_init_unchained(); + __MinterRole_init_unchained(); + __Pausable_init_unchained(); + } + + function _msgSender() internal view override(ContextUpgradeable, ERC2771RegistryContext) returns (address) { + return super._msgSender(); + } + + function _msgData() internal view override(ContextUpgradeable, ERC2771RegistryContext) returns (bytes calldata) { + return super._msgData(); + } + + function fulfillAdvancedOrder( + AdvancedOrder calldata advancedOrder, + CriteriaResolver[] calldata criteriaResolvers, + bytes32 fulfillerConduitKey, + address recipient + ) external override onlyMinter nonReentrant whenNotPaused returns (bool fulfilled) { + // todo put TokenId in extradata to use protectTokenOperation ? - clarify + if (recipient == address(0)) { + revert RecipientIsZeroAddress(); + } + fulfilled = _seaport.fulfillAdvancedOrder(advancedOrder, criteriaResolvers, fulfillerConduitKey, recipient); + if (!fulfilled) { + revert OrderIsNotFulfiled(); + } + return fulfilled; + } + + function withdraw(address recipient, uint256 amount) external onlyOwner nonReentrant whenNotPaused { + _usdc.transfer(recipient, amount); + } + + function pause() external onlyOwner whenNotPaused { + _pause(); + } + + function unpause() external onlyOwner whenPaused { + _unpause(); + } + + uint256[47] __gap; +} diff --git a/contracts/marketplace/_refs.sol b/contracts/marketplace/_refs.sol new file mode 100644 index 00000000..998e8bca --- /dev/null +++ b/contracts/marketplace/_refs.sol @@ -0,0 +1,7 @@ +// @author Unstoppable Domains, Inc. +// @date April 25th, 2024 + +pragma solidity ^0.8.0; + +import {Seaport} from 'seaport-core/src/Seaport.sol'; +import {ConduitController} from 'seaport-core/src/conduit/ConduitController.sol'; diff --git a/dist/sandbox/db.tgz b/dist/sandbox/db.tgz index 50cebf3e5c6c2598d11c1cdaafd376017ff29d9a..994cfa75d94c3c1914f6ab86653b640191f43f94 100644 GIT binary patch literal 542776 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 z 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

)o@RC# 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


E!`m13tPDCg;nsSiy3@0R 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
35qi(o;Z&UpvKieYzN#7^B`mE)jN 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 z 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

$~D?>C;UwI{(`=Km9m8} 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%0DufPU`NdD|#v?d`>x3{{LdN^ThPYI{`A_|xU!{ht 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�xK!0PN%ae%+ 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 tor!K140X>oh+-sj+#yCABmJF(O>p>1a)CLlb( zBRrvft-&HhsXd^eYb^Mw3mfy zjowq$sA@ZXTe=yVAqHWry$nwBogWP z2ru;&d%dm`K>KJ!X9*XCCZ&*SY+Z2n2-QwUy#yvDIlyM#461;IydgJ6JIU4sG6D52 zt-w>qA}&267ED!Kc=D3^Mp{n(D-UkKvrG9bAkxa$6akGY54`n-QUb;s$6P!`KlDb% zzog5jF|NWrYvkR8@9a_FZWkmAocqNPNb(Kl!~IE)10eFpGJ%ZNM6Qxf!aAgyB(md9 zdNxc-WqqT)fX|k8mG$&Hl}7w3*WJwc+1lMig<)&8)4Av&za8rI9JN9udRr8aXfWR; z8kPU6K&g+M98E`^pzWI~ab>6RPSaY$^eUS;k>&X>0?$r76qRLn1B~`Ka>AieArGuNk5G?J z*!)4*SAbvjy*Mx?pc#A5&55MZVusYm zmkaH*-3*NqzLO&cV&qqs8=597+vl{by32jU)6Z2ZMXOa-FSW^K2Vk|HlPb(;UT-($ zj!zB-e601p`Mc)z%MyOA_MUXRw~5;i{>McQO|Km}R^W_5aA>za26%zd11X}|=1fwR zubm2jeK_^>)IZ}S*l!o7KJUlt!=~c%oVut#bDc{vOPIdu5-2-u8!UG1E~fJhB*YRR zAK~7Th=D>ont5m*;i>Y+25)hgqf*wAw3(79J7jk#ZaSRi?J^w0G*pZgC|C^nej_4{ zD-X^pW!SCAG26Twa_O# z5B;^kJb<){2fU0``_-EQU>-5^=P{k>%RE{SCj2x`2>#P{vxw|{-$U$?bpTpX8$!

&m?$&?JntlJ$U*luYLA8$eGS1-Qux21 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 + interface: ISeaportProxyBuyerInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + fulfillOrder: TypedContractMethod<[ + order: OrderStruct, + fulfillerConduitKey: BytesLike + ], [ + boolean + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "fulfillOrder"): TypedContractMethod<[ + order: OrderStruct, + fulfillerConduitKey: BytesLike + ], [ + boolean + ], "nonpayable">; + filters: {}; +} +//# sourceMappingURL=ISeaportProxyBuyer.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/marketplace/ISeaportProxyBuyer.d.ts.map b/dist/types/contracts/marketplace/ISeaportProxyBuyer.d.ts.map new file mode 100644 index 00000000..d12e331a --- /dev/null +++ b/dist/types/contracts/marketplace/ISeaportProxyBuyer.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ISeaportProxyBuyer.d.ts","sourceRoot":"","sources":["../../../../types/contracts/marketplace/ISeaportProxyBuyer.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,WAAW,EACX,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,aAAa,EACb,mBAAmB,EACpB,MAAM,cAAc,CAAC;AAEtB,oBAAY,eAAe,GAAG;IAC5B,QAAQ,EAAE,YAAY,CAAC;IACvB,KAAK,EAAE,WAAW,CAAC;IACnB,oBAAoB,EAAE,YAAY,CAAC;IACnC,WAAW,EAAE,YAAY,CAAC;IAC1B,SAAS,EAAE,YAAY,CAAC;CACzB,CAAC;AAEF,oBAAY,qBAAqB,GAAG;IAClC,QAAQ,EAAE,MAAM;IAChB,KAAK,EAAE,MAAM;IACb,oBAAoB,EAAE,MAAM;IAC5B,WAAW,EAAE,MAAM;IACnB,SAAS,EAAE,MAAM;CAClB,GAAG;IACF,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,oBAAoB,EAAE,MAAM,CAAC;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,oBAAY,uBAAuB,GAAG;IACpC,QAAQ,EAAE,YAAY,CAAC;IACvB,KAAK,EAAE,WAAW,CAAC;IACnB,oBAAoB,EAAE,YAAY,CAAC;IACnC,WAAW,EAAE,YAAY,CAAC;IAC1B,SAAS,EAAE,YAAY,CAAC;IACxB,SAAS,EAAE,WAAW,CAAC;CACxB,CAAC;AAEF,oBAAY,6BAA6B,GAAG;IAC1C,QAAQ,EAAE,MAAM;IAChB,KAAK,EAAE,MAAM;IACb,oBAAoB,EAAE,MAAM;IAC5B,WAAW,EAAE,MAAM;IACnB,SAAS,EAAE,MAAM;IACjB,SAAS,EAAE,MAAM;CAClB,GAAG;IACF,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,oBAAoB,EAAE,MAAM,CAAC;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,oBAAY,qBAAqB,GAAG;IAClC,OAAO,EAAE,WAAW,CAAC;IACrB,IAAI,EAAE,WAAW,CAAC;IAClB,KAAK,EAAE,eAAe,EAAE,CAAC;IACzB,aAAa,EAAE,uBAAuB,EAAE,CAAC;IACzC,SAAS,EAAE,YAAY,CAAC;IACxB,SAAS,EAAE,YAAY,CAAC;IACxB,OAAO,EAAE,YAAY,CAAC;IACtB,QAAQ,EAAE,SAAS,CAAC;IACpB,IAAI,EAAE,YAAY,CAAC;IACnB,UAAU,EAAE,SAAS,CAAC;IACtB,+BAA+B,EAAE,YAAY,CAAC;CAC/C,CAAC;AAEF,oBAAY,2BAA2B,GAAG;IACxC,OAAO,EAAE,MAAM;IACf,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,qBAAqB,EAAE;IAC9B,aAAa,EAAE,6BAA6B,EAAE;IAC9C,SAAS,EAAE,MAAM;IACjB,SAAS,EAAE,MAAM;IACjB,OAAO,EAAE,MAAM;IACf,QAAQ,EAAE,MAAM;IAChB,IAAI,EAAE,MAAM;IACZ,UAAU,EAAE,MAAM;IAClB,+BAA+B,EAAE,MAAM;CACxC,GAAG;IACF,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,qBAAqB,EAAE,CAAC;IAC/B,aAAa,EAAE,6BAA6B,EAAE,CAAC;IAC/C,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,+BAA+B,EAAE,MAAM,CAAC;CACzC,CAAC;AAEF,oBAAY,WAAW,GAAG;IACxB,UAAU,EAAE,qBAAqB,CAAC;IAClC,SAAS,EAAE,SAAS,CAAC;CACtB,CAAC;AAEF,oBAAY,iBAAiB,GAAG;IAC9B,UAAU,EAAE,2BAA2B;IACvC,SAAS,EAAE,MAAM;CAClB,GAAG;IAAE,UAAU,EAAE,2BAA2B,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC;AAEnE,MAAM,WAAW,2BAA4B,SAAQ,SAAS;IAC5D,WAAW,CAAC,eAAe,EAAE,cAAc,GAAG,gBAAgB,CAAC;IAE/D,kBAAkB,CAChB,gBAAgB,EAAE,cAAc,EAChC,MAAM,EAAE,CAAC,WAAW,EAAE,SAAS,CAAC,GAC/B,MAAM,CAAC;IAEV,oBAAoB,CAClB,gBAAgB,EAAE,cAAc,EAChC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;CACX;AAED,MAAM,WAAW,kBAAmB,SAAQ,YAAY;IACtD,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,kBAAkB,CAAC;IAC5D,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,2BAA2B,CAAC;IAEvC,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,YAAY,EAAE,mBAAmB,CAC/B;QAAC,KAAK,EAAE,WAAW;QAAE,mBAAmB,EAAE,SAAS;KAAC,EACpD;QAAC,OAAO;KAAC,EACT,YAAY,CACb,CAAC;IAEF,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,WAAW,CACT,eAAe,EAAE,cAAc,GAC9B,mBAAmB,CACpB;QAAC,KAAK,EAAE,WAAW;QAAE,mBAAmB,EAAE,SAAS;KAAC,EACpD;QAAC,OAAO;KAAC,EACT,YAAY,CACb,CAAC;IAEF,OAAO,EAAE,EAAE,CAAC;CACb"} \ No newline at end of file diff --git a/dist/types/contracts/marketplace/ISeaportProxyBuyer.js b/dist/types/contracts/marketplace/ISeaportProxyBuyer.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/marketplace/ISeaportProxyBuyer.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/marketplace/SeaportProxyBuyer.d.ts b/dist/types/contracts/marketplace/SeaportProxyBuyer.d.ts new file mode 100644 index 00000000..d5e4941c --- /dev/null +++ b/dist/types/contracts/marketplace/SeaportProxyBuyer.d.ts @@ -0,0 +1,484 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; +export declare type OfferItemStruct = { + itemType: BigNumberish; + token: AddressLike; + identifierOrCriteria: BigNumberish; + startAmount: BigNumberish; + endAmount: BigNumberish; +}; +export declare type OfferItemStructOutput = [ + itemType: bigint, + token: string, + identifierOrCriteria: bigint, + startAmount: bigint, + endAmount: bigint +] & { + itemType: bigint; + token: string; + identifierOrCriteria: bigint; + startAmount: bigint; + endAmount: bigint; +}; +export declare type ConsiderationItemStruct = { + itemType: BigNumberish; + token: AddressLike; + identifierOrCriteria: BigNumberish; + startAmount: BigNumberish; + endAmount: BigNumberish; + recipient: AddressLike; +}; +export declare type ConsiderationItemStructOutput = [ + itemType: bigint, + token: string, + identifierOrCriteria: bigint, + startAmount: bigint, + endAmount: bigint, + recipient: string +] & { + itemType: bigint; + token: string; + identifierOrCriteria: bigint; + startAmount: bigint; + endAmount: bigint; + recipient: string; +}; +export declare type OrderParametersStruct = { + offerer: AddressLike; + zone: AddressLike; + offer: OfferItemStruct[]; + consideration: ConsiderationItemStruct[]; + orderType: BigNumberish; + startTime: BigNumberish; + endTime: BigNumberish; + zoneHash: BytesLike; + salt: BigNumberish; + conduitKey: BytesLike; + totalOriginalConsiderationItems: BigNumberish; +}; +export declare type OrderParametersStructOutput = [ + offerer: string, + zone: string, + offer: OfferItemStructOutput[], + consideration: ConsiderationItemStructOutput[], + orderType: bigint, + startTime: bigint, + endTime: bigint, + zoneHash: string, + salt: bigint, + conduitKey: string, + totalOriginalConsiderationItems: bigint +] & { + offerer: string; + zone: string; + offer: OfferItemStructOutput[]; + consideration: ConsiderationItemStructOutput[]; + orderType: bigint; + startTime: bigint; + endTime: bigint; + zoneHash: string; + salt: bigint; + conduitKey: string; + totalOriginalConsiderationItems: bigint; +}; +export declare type OrderStruct = { + parameters: OrderParametersStruct; + signature: BytesLike; +}; +export declare type OrderStructOutput = [ + parameters: OrderParametersStructOutput, + signature: string +] & { + parameters: OrderParametersStructOutput; + signature: string; +}; +export declare namespace IForwarder { + type ForwardRequestStruct = { + from: AddressLike; + nonce: BigNumberish; + tokenId: BigNumberish; + data: BytesLike; + }; + type ForwardRequestStructOutput = [ + from: string, + nonce: bigint, + tokenId: bigint, + data: string + ] & { + from: string; + nonce: bigint; + tokenId: bigint; + data: string; + }; +} +export interface SeaportProxyBuyerInterface extends Interface { + getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE" | "MINTER_ROLE" | "NAME" | "VERSION" | "addMinter" | "addMinters" | "closeMinter" | "execute" | "fulfillOrder" | "getRoleAdmin" | "grantRole" | "hasRole" | "initialize" | "isMinter" | "isTrustedForwarder" | "nonceOf" | "owner" | "pause" | "paused" | "removeMinter" | "removeMinters" | "renounceMinter" | "renounceOwnership" | "renounceRole" | "revokeRole" | "rotateMinter" | "supportsInterface" | "transferOwnership" | "unpause" | "verify" | "withdraw"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Initialized" | "OwnershipTransferred" | "Paused" | "RoleAdminChanged" | "RoleGranted" | "RoleRevoked" | "Unpaused"): EventFragment; + encodeFunctionData(functionFragment: "DEFAULT_ADMIN_ROLE", values?: undefined): string; + encodeFunctionData(functionFragment: "MINTER_ROLE", values?: undefined): string; + encodeFunctionData(functionFragment: "NAME", values?: undefined): string; + encodeFunctionData(functionFragment: "VERSION", values?: undefined): string; + encodeFunctionData(functionFragment: "addMinter", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "addMinters", values: [AddressLike[]]): string; + encodeFunctionData(functionFragment: "closeMinter", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "execute", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; + encodeFunctionData(functionFragment: "fulfillOrder", values: [OrderStruct, BytesLike]): string; + encodeFunctionData(functionFragment: "getRoleAdmin", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "grantRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "hasRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "initialize", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "isMinter", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "isTrustedForwarder", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "nonceOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData(functionFragment: "pause", values?: undefined): string; + encodeFunctionData(functionFragment: "paused", values?: undefined): string; + encodeFunctionData(functionFragment: "removeMinter", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "removeMinters", values: [AddressLike[]]): string; + encodeFunctionData(functionFragment: "renounceMinter", values?: undefined): string; + encodeFunctionData(functionFragment: "renounceOwnership", values?: undefined): string; + encodeFunctionData(functionFragment: "renounceRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "revokeRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "rotateMinter", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "transferOwnership", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "unpause", values?: undefined): string; + encodeFunctionData(functionFragment: "verify", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; + encodeFunctionData(functionFragment: "withdraw", values?: undefined): string; + decodeFunctionResult(functionFragment: "DEFAULT_ADMIN_ROLE", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "MINTER_ROLE", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "NAME", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "VERSION", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "addMinter", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "addMinters", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "closeMinter", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "fulfillOrder", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getRoleAdmin", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "grantRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "hasRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isMinter", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isTrustedForwarder", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "nonceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "pause", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "paused", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "removeMinter", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "removeMinters", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceMinter", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceOwnership", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "revokeRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "rotateMinter", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "unpause", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "verify", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "withdraw", data: BytesLike): Result; +} +export declare namespace InitializedEvent { + type InputTuple = [version: BigNumberish]; + type OutputTuple = [version: bigint]; + interface OutputObject { + version: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace OwnershipTransferredEvent { + type InputTuple = [previousOwner: AddressLike, newOwner: AddressLike]; + type OutputTuple = [previousOwner: string, newOwner: string]; + interface OutputObject { + previousOwner: string; + newOwner: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace PausedEvent { + type InputTuple = [account: AddressLike]; + type OutputTuple = [account: string]; + interface OutputObject { + account: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RoleAdminChangedEvent { + type InputTuple = [ + role: BytesLike, + previousAdminRole: BytesLike, + newAdminRole: BytesLike + ]; + type OutputTuple = [ + role: string, + previousAdminRole: string, + newAdminRole: string + ]; + interface OutputObject { + role: string; + previousAdminRole: string; + newAdminRole: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RoleGrantedEvent { + type InputTuple = [ + role: BytesLike, + account: AddressLike, + sender: AddressLike + ]; + type OutputTuple = [role: string, account: string, sender: string]; + interface OutputObject { + role: string; + account: string; + sender: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RoleRevokedEvent { + type InputTuple = [ + role: BytesLike, + account: AddressLike, + sender: AddressLike + ]; + type OutputTuple = [role: string, account: string, sender: string]; + interface OutputObject { + role: string; + account: string; + sender: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace UnpausedEvent { + type InputTuple = [account: AddressLike]; + type OutputTuple = [account: string]; + interface OutputObject { + account: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface SeaportProxyBuyer extends BaseContract { + connect(runner?: ContractRunner | null): SeaportProxyBuyer; + waitForDeployment(): Promise; + interface: SeaportProxyBuyerInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + DEFAULT_ADMIN_ROLE: TypedContractMethod<[], [string], "view">; + MINTER_ROLE: TypedContractMethod<[], [string], "view">; + NAME: TypedContractMethod<[], [string], "view">; + VERSION: TypedContractMethod<[], [string], "view">; + addMinter: TypedContractMethod<[account: AddressLike], [void], "nonpayable">; + addMinters: TypedContractMethod<[ + accounts: AddressLike[] + ], [ + void + ], "nonpayable">; + closeMinter: TypedContractMethod<[receiver: AddressLike], [void], "payable">; + execute: TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + string + ], "nonpayable">; + fulfillOrder: TypedContractMethod<[ + parameters: OrderStruct, + fulfillerConduitKey: BytesLike + ], [ + boolean + ], "nonpayable">; + getRoleAdmin: TypedContractMethod<[role: BytesLike], [string], "view">; + grantRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + hasRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + boolean + ], "view">; + initialize: TypedContractMethod<[ + _seaport: AddressLike, + _usdc: AddressLike + ], [ + void + ], "nonpayable">; + isMinter: TypedContractMethod<[account: AddressLike], [boolean], "view">; + isTrustedForwarder: TypedContractMethod<[ + forwarder: AddressLike + ], [ + boolean + ], "view">; + nonceOf: TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; + owner: TypedContractMethod<[], [string], "view">; + pause: TypedContractMethod<[], [void], "nonpayable">; + paused: TypedContractMethod<[], [boolean], "view">; + removeMinter: TypedContractMethod<[ + account: AddressLike + ], [ + void + ], "nonpayable">; + removeMinters: TypedContractMethod<[ + accounts: AddressLike[] + ], [ + void + ], "nonpayable">; + renounceMinter: TypedContractMethod<[], [void], "nonpayable">; + renounceOwnership: TypedContractMethod<[], [void], "nonpayable">; + renounceRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + revokeRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + rotateMinter: TypedContractMethod<[receiver: AddressLike], [void], "payable">; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + transferOwnership: TypedContractMethod<[ + newOwner: AddressLike + ], [ + void + ], "nonpayable">; + unpause: TypedContractMethod<[], [void], "nonpayable">; + verify: TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + boolean + ], "view">; + withdraw: TypedContractMethod<[], [void], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "MINTER_ROLE"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "NAME"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "VERSION"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "addMinter"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "addMinters"): TypedContractMethod<[accounts: AddressLike[]], [void], "nonpayable">; + getFunction(nameOrSignature: "closeMinter"): TypedContractMethod<[receiver: AddressLike], [void], "payable">; + getFunction(nameOrSignature: "execute"): TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + string + ], "nonpayable">; + getFunction(nameOrSignature: "fulfillOrder"): TypedContractMethod<[ + parameters: OrderStruct, + fulfillerConduitKey: BytesLike + ], [ + boolean + ], "nonpayable">; + getFunction(nameOrSignature: "getRoleAdmin"): TypedContractMethod<[role: BytesLike], [string], "view">; + getFunction(nameOrSignature: "grantRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "hasRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "initialize"): TypedContractMethod<[ + _seaport: AddressLike, + _usdc: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "isMinter"): TypedContractMethod<[account: AddressLike], [boolean], "view">; + getFunction(nameOrSignature: "isTrustedForwarder"): TypedContractMethod<[forwarder: AddressLike], [boolean], "view">; + getFunction(nameOrSignature: "nonceOf"): TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; + getFunction(nameOrSignature: "owner"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "pause"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "paused"): TypedContractMethod<[], [boolean], "view">; + getFunction(nameOrSignature: "removeMinter"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "removeMinters"): TypedContractMethod<[accounts: AddressLike[]], [void], "nonpayable">; + getFunction(nameOrSignature: "renounceMinter"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "renounceOwnership"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "renounceRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "revokeRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "rotateMinter"): TypedContractMethod<[receiver: AddressLike], [void], "payable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "transferOwnership"): TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "unpause"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "verify"): TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "withdraw"): TypedContractMethod<[], [void], "nonpayable">; + getEvent(key: "Initialized"): TypedContractEvent; + getEvent(key: "OwnershipTransferred"): TypedContractEvent; + getEvent(key: "Paused"): TypedContractEvent; + getEvent(key: "RoleAdminChanged"): TypedContractEvent; + getEvent(key: "RoleGranted"): TypedContractEvent; + getEvent(key: "RoleRevoked"): TypedContractEvent; + getEvent(key: "Unpaused"): TypedContractEvent; + filters: { + "Initialized(uint8)": TypedContractEvent; + Initialized: TypedContractEvent; + "OwnershipTransferred(address,address)": TypedContractEvent; + OwnershipTransferred: TypedContractEvent; + "Paused(address)": TypedContractEvent; + Paused: TypedContractEvent; + "RoleAdminChanged(bytes32,bytes32,bytes32)": TypedContractEvent; + RoleAdminChanged: TypedContractEvent; + "RoleGranted(bytes32,address,address)": TypedContractEvent; + RoleGranted: TypedContractEvent; + "RoleRevoked(bytes32,address,address)": TypedContractEvent; + RoleRevoked: TypedContractEvent; + "Unpaused(address)": TypedContractEvent; + Unpaused: TypedContractEvent; + }; +} +//# sourceMappingURL=SeaportProxyBuyer.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/marketplace/SeaportProxyBuyer.d.ts.map b/dist/types/contracts/marketplace/SeaportProxyBuyer.d.ts.map new file mode 100644 index 00000000..f985168f --- /dev/null +++ b/dist/types/contracts/marketplace/SeaportProxyBuyer.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"SeaportProxyBuyer.d.ts","sourceRoot":"","sources":["../../../../types/contracts/marketplace/SeaportProxyBuyer.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/marketplace/SeaportProxyBuyer.js b/dist/types/contracts/marketplace/SeaportProxyBuyer.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/marketplace/SeaportProxyBuyer.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/marketplace/index.d.ts b/dist/types/contracts/marketplace/index.d.ts new file mode 100644 index 00000000..e7b26fbd --- /dev/null +++ b/dist/types/contracts/marketplace/index.d.ts @@ -0,0 +1,3 @@ +export type { ISeaportProxyBuyer } from "./ISeaportProxyBuyer"; +export type { SeaportProxyBuyer } from "./SeaportProxyBuyer"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/marketplace/index.d.ts.map b/dist/types/contracts/marketplace/index.d.ts.map new file mode 100644 index 00000000..7deb13c2 --- /dev/null +++ b/dist/types/contracts/marketplace/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../types/contracts/marketplace/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,YAAY,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC"} \ No newline at end of file diff --git a/dist/types/contracts/marketplace/index.js b/dist/types/contracts/marketplace/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/marketplace/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/factories/contracts/index.d.ts b/dist/types/factories/contracts/index.d.ts index a4e7e943..9ea1ec9e 100644 --- a/dist/types/factories/contracts/index.d.ts +++ b/dist/types/factories/contracts/index.d.ts @@ -3,6 +3,7 @@ export * as maticnetwork from "./@maticnetwork"; export * as cns from "./cns"; export * as custody from "./custody"; export * as history from "./history"; +export * as marketplace from "./marketplace"; export * as metatx from "./metatx"; export * as mocks from "./mocks"; export * as roles from "./roles"; diff --git a/dist/types/factories/contracts/index.d.ts.map b/dist/types/factories/contracts/index.d.ts.map index eb0a0bea..3163dc5b 100644 --- a/dist/types/factories/contracts/index.d.ts.map +++ b/dist/types/factories/contracts/index.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../types/factories/contracts/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,GAAG,MAAM,QAAQ,CAAC;AAC9B,OAAO,KAAK,YAAY,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC;AAC7B,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AACrC,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AACrC,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC"} \ No newline at end of file +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../types/factories/contracts/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,GAAG,MAAM,QAAQ,CAAC;AAC9B,OAAO,KAAK,YAAY,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC;AAC7B,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AACrC,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AACrC,OAAO,KAAK,WAAW,MAAM,eAAe,CAAC;AAC7C,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/contracts/index.js b/dist/types/factories/contracts/index.js index a313b274..a459a8cb 100644 --- a/dist/types/factories/contracts/index.js +++ b/dist/types/factories/contracts/index.js @@ -23,12 +23,13 @@ var __importStar = (this && this.__importStar) || function (mod) { return result; }; Object.defineProperty(exports, "__esModule", { value: true }); -exports.UNSRegistry__factory = exports.UNSOperator__factory = exports.RootRegistry__factory = exports.RecordStorage__factory = exports.ProxyReader__factory = exports.MintingManager__factory = exports.KeyStorage__factory = exports.IUNSRegistry__factory = exports.IRootRegistry__factory = exports.IReverseRegistry__factory = exports.IRegistryReader__factory = exports.IRecordStorage__factory = exports.IRecordReader__factory = exports.IMintingManager__factory = exports.IERC1967__factory = exports.IDataReader__factory = exports.IAddressReader__factory = exports.DotCoinBurner__factory = exports.ChildRegistry__factory = exports.utils = exports.roles = exports.mocks = exports.metatx = exports.history = exports.custody = exports.cns = exports.maticnetwork = exports.ens = void 0; +exports.UNSRegistry__factory = exports.UNSOperator__factory = exports.RootRegistry__factory = exports.RecordStorage__factory = exports.ProxyReader__factory = exports.MintingManager__factory = exports.KeyStorage__factory = exports.IUNSRegistry__factory = exports.IRootRegistry__factory = exports.IReverseRegistry__factory = exports.IRegistryReader__factory = exports.IRecordStorage__factory = exports.IRecordReader__factory = exports.IMintingManager__factory = exports.IERC1967__factory = exports.IDataReader__factory = exports.IAddressReader__factory = exports.DotCoinBurner__factory = exports.ChildRegistry__factory = exports.utils = exports.roles = exports.mocks = exports.metatx = exports.marketplace = exports.history = exports.custody = exports.cns = exports.maticnetwork = exports.ens = void 0; exports.ens = __importStar(require("./@ens")); exports.maticnetwork = __importStar(require("./@maticnetwork")); exports.cns = __importStar(require("./cns")); exports.custody = __importStar(require("./custody")); exports.history = __importStar(require("./history")); +exports.marketplace = __importStar(require("./marketplace")); exports.metatx = __importStar(require("./metatx")); exports.mocks = __importStar(require("./mocks")); exports.roles = __importStar(require("./roles")); diff --git a/dist/types/factories/contracts/marketplace/ISeaportProxyBuyer__factory.d.ts b/dist/types/factories/contracts/marketplace/ISeaportProxyBuyer__factory.d.ts new file mode 100644 index 00000000..660eb1ec --- /dev/null +++ b/dist/types/factories/contracts/marketplace/ISeaportProxyBuyer__factory.d.ts @@ -0,0 +1,126 @@ +import { type ContractRunner } from "ethers"; +import type { ISeaportProxyBuyer, ISeaportProxyBuyerInterface } from "../../../contracts/marketplace/ISeaportProxyBuyer"; +export declare class ISeaportProxyBuyer__factory { + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly components: readonly [{ + readonly components: readonly [{ + readonly internalType: "address"; + readonly name: "offerer"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "zone"; + readonly type: "address"; + }, { + readonly components: readonly [{ + readonly internalType: "enum ItemType"; + readonly name: "itemType"; + readonly type: "uint8"; + }, { + readonly internalType: "address"; + readonly name: "token"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "identifierOrCriteria"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "startAmount"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "endAmount"; + readonly type: "uint256"; + }]; + readonly internalType: "struct OfferItem[]"; + readonly name: "offer"; + readonly type: "tuple[]"; + }, { + readonly components: readonly [{ + readonly internalType: "enum ItemType"; + readonly name: "itemType"; + readonly type: "uint8"; + }, { + readonly internalType: "address"; + readonly name: "token"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "identifierOrCriteria"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "startAmount"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "endAmount"; + readonly type: "uint256"; + }, { + readonly internalType: "address payable"; + readonly name: "recipient"; + readonly type: "address"; + }]; + readonly internalType: "struct ConsiderationItem[]"; + readonly name: "consideration"; + readonly type: "tuple[]"; + }, { + readonly internalType: "enum OrderType"; + readonly name: "orderType"; + readonly type: "uint8"; + }, { + readonly internalType: "uint256"; + readonly name: "startTime"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "endTime"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes32"; + readonly name: "zoneHash"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "salt"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes32"; + readonly name: "conduitKey"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "totalOriginalConsiderationItems"; + readonly type: "uint256"; + }]; + readonly internalType: "struct OrderParameters"; + readonly name: "parameters"; + readonly type: "tuple"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly internalType: "struct Order"; + readonly name: "order"; + readonly type: "tuple"; + }, { + readonly internalType: "bytes32"; + readonly name: "fulfillerConduitKey"; + readonly type: "bytes32"; + }]; + readonly name: "fulfillOrder"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: "fulfilled"; + readonly type: "bool"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): ISeaportProxyBuyerInterface; + static connect(address: string, runner?: ContractRunner | null): ISeaportProxyBuyer; +} +//# sourceMappingURL=ISeaportProxyBuyer__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/marketplace/ISeaportProxyBuyer__factory.d.ts.map b/dist/types/factories/contracts/marketplace/ISeaportProxyBuyer__factory.d.ts.map new file mode 100644 index 00000000..c5f62d59 --- /dev/null +++ b/dist/types/factories/contracts/marketplace/ISeaportProxyBuyer__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ISeaportProxyBuyer__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/marketplace/ISeaportProxyBuyer__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,kBAAkB,EAClB,2BAA2B,EAC5B,MAAM,mDAAmD,CAAC;AA6J3D,qBAAa,2BAA2B;IACtC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,2BAA2B;IAGrD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,kBAAkB;CAGtB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/marketplace/ISeaportProxyBuyer__factory.js b/dist/types/factories/contracts/marketplace/ISeaportProxyBuyer__factory.js new file mode 100644 index 00000000..9fecd794 --- /dev/null +++ b/dist/types/factories/contracts/marketplace/ISeaportProxyBuyer__factory.js @@ -0,0 +1,168 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ISeaportProxyBuyer__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + components: [ + { + components: [ + { + internalType: "address", + name: "offerer", + type: "address", + }, + { + internalType: "address", + name: "zone", + type: "address", + }, + { + components: [ + { + internalType: "enum ItemType", + name: "itemType", + type: "uint8", + }, + { + internalType: "address", + name: "token", + type: "address", + }, + { + internalType: "uint256", + name: "identifierOrCriteria", + type: "uint256", + }, + { + internalType: "uint256", + name: "startAmount", + type: "uint256", + }, + { + internalType: "uint256", + name: "endAmount", + type: "uint256", + }, + ], + internalType: "struct OfferItem[]", + name: "offer", + type: "tuple[]", + }, + { + components: [ + { + internalType: "enum ItemType", + name: "itemType", + type: "uint8", + }, + { + internalType: "address", + name: "token", + type: "address", + }, + { + internalType: "uint256", + name: "identifierOrCriteria", + type: "uint256", + }, + { + internalType: "uint256", + name: "startAmount", + type: "uint256", + }, + { + internalType: "uint256", + name: "endAmount", + type: "uint256", + }, + { + internalType: "address payable", + name: "recipient", + type: "address", + }, + ], + internalType: "struct ConsiderationItem[]", + name: "consideration", + type: "tuple[]", + }, + { + internalType: "enum OrderType", + name: "orderType", + type: "uint8", + }, + { + internalType: "uint256", + name: "startTime", + type: "uint256", + }, + { + internalType: "uint256", + name: "endTime", + type: "uint256", + }, + { + internalType: "bytes32", + name: "zoneHash", + type: "bytes32", + }, + { + internalType: "uint256", + name: "salt", + type: "uint256", + }, + { + internalType: "bytes32", + name: "conduitKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "totalOriginalConsiderationItems", + type: "uint256", + }, + ], + internalType: "struct OrderParameters", + name: "parameters", + type: "tuple", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + internalType: "struct Order", + name: "order", + type: "tuple", + }, + { + internalType: "bytes32", + name: "fulfillerConduitKey", + type: "bytes32", + }, + ], + name: "fulfillOrder", + outputs: [ + { + internalType: "bool", + name: "fulfilled", + type: "bool", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, +]; +class ISeaportProxyBuyer__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.ISeaportProxyBuyer__factory = ISeaportProxyBuyer__factory; +ISeaportProxyBuyer__factory.abi = _abi; diff --git a/dist/types/factories/contracts/marketplace/SeaportProxyBuyer__factory.d.ts b/dist/types/factories/contracts/marketplace/SeaportProxyBuyer__factory.d.ts new file mode 100644 index 00000000..cf9fc7d6 --- /dev/null +++ b/dist/types/factories/contracts/marketplace/SeaportProxyBuyer__factory.d.ts @@ -0,0 +1,628 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../common"; +import type { SeaportProxyBuyer, SeaportProxyBuyerInterface } from "../../../contracts/marketplace/SeaportProxyBuyer"; +declare type SeaportProxyBuyerConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class SeaportProxyBuyer__factory extends ContractFactory { + constructor(...args: SeaportProxyBuyerConstructorParams); + getDeployTransaction(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): SeaportProxyBuyer__factory; + static readonly bytecode = "0x60806040523480156200001157600080fd5b506200001c62000022565b620000e4565b600054610100900460ff16156200008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff9081161015620000e2576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b6125e880620000f46000396000f3fe6080604052600436106101d85760003560e01c806371e2a65711610102578063a3f4df7e11610095578063d539139311610064578063d53913931461054c578063d547741f1461056e578063f2fde38b1461058e578063ffa1ad74146105ae57600080fd5b8063a3f4df7e146104ad578063a4247400146104ec578063aa271e1a1461050c578063b3a34c4c1461052c57600080fd5b806391d14854116100d157806391d1485414610443578063983b2d56146104635780639865027514610483578063a217fddf1461049857600080fd5b806371e2a657146103d357806381c81d35146103f35780638456cb59146104065780638da5cb5b1461041b57600080fd5b80633f4ba83a1161017a5780635fc1964f116101495780635fc1964f1461036b578063634486da1461038b5780636ccbae5f1461039e578063715018a6146103be57600080fd5b80633f4ba83a146102f4578063485cc95514610309578063572b6c05146103295780635c975abb1461035257600080fd5b80632f2ff15d116101b65780632f2ff15d1461027d5780633092afd51461029f57806336568abe146102bf5780633ccfd60b146102df57600080fd5b806301ffc9a7146101dd5780631bf7e13e14610212578063248a9ca31461023f575b600080fd5b3480156101e957600080fd5b506101fd6101f8366004611b67565b6105df565b60405190151581526020015b60405180910390f35b34801561021e57600080fd5b5061023261022d366004611b91565b610616565b6040516102099190611c80565b34801561024b57600080fd5b5061026f61025a366004611c93565b600090815260fb602052604090206001015490565b604051908152602001610209565b34801561028957600080fd5b5061029d610298366004611cd1565b6106e2565b005b3480156102ab57600080fd5b5061029d6102ba366004611d01565b61070c565b3480156102cb57600080fd5b5061029d6102da366004611cd1565b610720565b3480156102eb57600080fd5b5061029d6107b3565b34801561030057600080fd5b5061029d6108c3565b34801561031557600080fd5b5061029d610324366004611d1e565b6108dd565b34801561033557600080fd5b506101fd610344366004611d01565b6001600160a01b0316301490565b34801561035e57600080fd5b5061012d5460ff166101fd565b34801561037757600080fd5b5061029d610386366004611dbc565b610ab4565b61029d610399366004611d01565b610afc565b3480156103aa57600080fd5b5061026f6103b9366004611c93565b610bbf565b3480156103ca57600080fd5b5061029d610c19565b3480156103df57600080fd5b5061029d6103ee366004611dbc565b610c2b565b61029d610401366004611d01565b610c73565b34801561041257600080fd5b5061029d610cf0565b34801561042757600080fd5b506097546040516001600160a01b039091168152602001610209565b34801561044f57600080fd5b506101fd61045e366004611cd1565b610d08565b34801561046f57600080fd5b5061029d61047e366004611d01565b610d33565b34801561048f57600080fd5b5061029d610d44565b3480156104a457600080fd5b5061026f600081565b3480156104b957600080fd5b506102326040518060400160405280601381526020017229b2b0b837b93a10283937bc3c90213abcb2b960691b81525081565b3480156104f857600080fd5b506101fd610507366004611b91565b610d5e565b34801561051857600080fd5b506101fd610527366004611d01565b610db1565b34801561053857600080fd5b506101fd610547366004611e62565b610dcb565b34801561055857600080fd5b5061026f6000805160206125bc83398151915281565b34801561057a57600080fd5b5061029d610589366004611cd1565b610ed5565b34801561059a57600080fd5b5061029d6105a9366004611d01565b610efa565b3480156105ba57600080fd5b5061023260405180604001604052806005815260200164302e302e3160d81b81525081565b60006001600160e01b03198216637965db0b60e01b148061061057506301ffc9a760e01b6001600160e01b03198316145b92915050565b606060005a9050610628858585610d5e565b61064557604051638baa579f60e01b815260040160405180910390fd5b6106d76106556020870187611d01565b3060408801358461066960608b018b611eac565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b9081908401838280828437600092019190915250610f1692505050565b9150505b9392505050565b600082815260fb60205260409020600101546106fd81610ff7565b6107078383611008565b505050565b61071461108f565b61071d81611108565b50565b610728611120565b6001600160a01b0316816001600160a01b0316146107a55760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6107af828261112f565b5050565b6107bb61108f565b6107c36111b4565b610160546001600160a01b031663a9059cbb6107e76097546001600160a01b031690565b610160546040516370a0823160e01b81523060048201526001600160a01b03909116906370a0823190602401602060405180830381865afa158015610830573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108549190611ef3565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303816000875af115801561089f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061071d9190611f0c565b6108cb61108f565b6108d36111fb565b6108db611245565b565b600054610100900460ff16158080156108fd5750600054600160ff909116105b806109175750303b158015610917575060005460ff166001145b61097a5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840161079c565b6000805460ff19166001179055801561099d576000805461ff0019166101001790555b61015f80546001600160a01b03199081166001600160a01b03868116918217909355610160805490921692851692831790915560405163095ea7b360e01b81526004810191909152600019602482015263095ea7b3906044016020604051808303816000875af1158015610a15573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a399190611f0c565b50610a4261129e565b610a4a6112cc565b610a526112cc565b610a5a6112f3565b610a6261132a565b610a6a611363565b8015610707576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a1505050565b610abc61108f565b60005b81518110156107af57610aea828281518110610add57610add611f2e565b6020026020010151611108565b80610af481611f5a565b915050610abf565b610b07610527611120565b610b235760405162461bcd60e51b815260040161079c90611f73565b6001600160a01b038116610b795760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d505459000000604482015260640161079c565b610b8281611397565b610b8a610d44565b6040516001600160a01b038216903480156108fc02916000818181858888f193505050501580156107af573d6000803e3d6000fd5b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a838156020820152908101829052600090610c12906060016040516020818303038152906040528051906020012090565b5492915050565b610c2161108f565b6108db60006113af565b610c3361108f565b60005b81518110156107af57610c61828281518110610c5457610c54611f2e565b6020026020010151611397565b80610c6b81611f5a565b915050610c36565b610c7e610527611120565b610c9a5760405162461bcd60e51b815260040161079c90611f73565b6001600160a01b038116610b825760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d505459000000604482015260640161079c565b610cf861108f565b610d006111b4565b6108db611401565b600091825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610d3b61108f565b61071d81611397565b6108db6000805160206125bc8339815191526102da611120565b6000610da9610d6c85611fa8565b3085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061144092505050565b949350505050565b60006106106000805160206125bc83398151915283610d08565b6000610dd8610527611120565b610df45760405162461bcd60e51b815260040161079c90611f73565b600260335403610e465760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015260640161079c565b6002603355610e536111b4565b61015f54604051632ce8d31360e21b81526001600160a01b039091169063b3a34c4c90610e8690869086906004016122ca565b6020604051808303816000875af1158015610ea5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ec99190611f0c565b60016033559392505050565b600082815260fb6020526040902060010154610ef081610ff7565b610707838361112f565b610f0261108f565b610f0b81611589565b61071d6000826115ff565b6060610f2185611609565b600080876001600160a01b031686610f3b8b8a898961166f565b604051610f48919061240e565b60006040518083038160008787f1925050503d8060008114610f86576040519150601f19603f3d011682016040523d82523d6000602084013e610f8b565b606091505b509092509050610f9c603f8761242a565b5a11610faa57610faa61244c565b610fea82826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061169f565b9998505050505050505050565b61071d81611003611120565b6116d8565b6110128282610d08565b6107af57600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff1916600117905561104b611120565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b611097611120565b6001600160a01b03166110b26097546001600160a01b031690565b6001600160a01b0316146108db5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161079c565b61071d6000805160206125bc83398151915282610ed5565b600061112a61173c565b905090565b6111398282610d08565b156107af57600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff19169055611170611120565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b61012d5460ff16156108db5760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b604482015260640161079c565b61012d5460ff166108db5760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b604482015260640161079c565b61124d6111fb565b61012d805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa611281611120565b6040516001600160a01b03909116815260200160405180910390a1565b600054610100900460ff166112c55760405162461bcd60e51b815260040161079c90612462565b6001603355565b600054610100900460ff166108db5760405162461bcd60e51b815260040161079c90612462565b600054610100900460ff1661131a5760405162461bcd60e51b815260040161079c90612462565b6108db611325611120565b6113af565b600054610100900460ff166113515760405162461bcd60e51b815260040161079c90612462565b6108db600061135e611120565b6115ff565b600054610100900460ff1661138a5760405162461bcd60e51b815260040161079c90612462565b61012d805460ff19169055565b61071d6000805160206125bc833981519152826115ff565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6114096111b4565b61012d805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258611281611120565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015611487573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114ab9190611ef3565b905060006115598660600151805190602001208688602001516040516020016114f99392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561157f5750855161157f906001600160a01b03168286611757565b9695505050505050565b61159161108f565b6001600160a01b0381166115f65760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161079c565b61071d816113af565b6107af8282611008565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a83815602082015290810182905260009060600160405160208183030381529060405280519060200120905061165e8190565b5461166a9060016124ad565b905550565b6060828585604051602001611686939291906124c0565b6040516020818303038152906040529050949350505050565b606083156116ae5750816106db565b8251156116be5782518084602001fd5b8160405162461bcd60e51b815260040161079c9190611c80565b6116e28282610d08565b6107af576116fa816001600160a01b03166014611899565b611705836020611899565b6040516020016117169291906124ff565b60408051601f198184030181529082905262461bcd60e51b825261079c91600401611c80565b6000303303611752575060331936013560601c90565b503390565b60008060006117668585611a35565b9092509050600081600481111561177f5761177f6120c3565b14801561179d5750856001600160a01b0316826001600160a01b0316145b156117ad576001925050506106db565b600080876001600160a01b0316631626ba7e60e01b88886040516024016117d5929190612574565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051611813919061240e565b600060405180830381855afa9150503d806000811461184e576040519150601f19603f3d011682016040523d82523d6000602084013e611853565b606091505b5091509150818015611866575080516020145b801561188d57508051630b135d3f60e11b9061188b9083016020908101908401611ef3565b145b98975050505050505050565b606060006118a883600261258d565b6118b39060026124ad565b67ffffffffffffffff8111156118cb576118cb611d4c565b6040519080825280601f01601f1916602001820160405280156118f5576020820181803683370190505b509050600360fc1b8160008151811061191057611910611f2e565b60200101906001600160f81b031916908160001a905350600f60fb1b8160018151811061193f5761193f611f2e565b60200101906001600160f81b031916908160001a905350600061196384600261258d565b61196e9060016124ad565b90505b60018111156119e6576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106119a2576119a2611f2e565b1a60f81b8282815181106119b8576119b8611f2e565b60200101906001600160f81b031916908160001a90535060049490941c936119df816125a4565b9050611971565b5083156106db5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e74604482015260640161079c565b6000808251604103611a6b5760208301516040840151606085015160001a611a5f87828585611a7a565b94509450505050611a73565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115611ab15750600090506003611b5e565b8460ff16601b14158015611ac957508460ff16601c14155b15611ada5750600090506004611b5e565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015611b2e573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116611b5757600060019250925050611b5e565b9150600090505b94509492505050565b600060208284031215611b7957600080fd5b81356001600160e01b0319811681146106db57600080fd5b600080600060408486031215611ba657600080fd5b833567ffffffffffffffff80821115611bbe57600080fd5b9085019060808288031215611bd257600080fd5b90935060208501359080821115611be857600080fd5b818601915086601f830112611bfc57600080fd5b813581811115611c0b57600080fd5b876020828501011115611c1d57600080fd5b6020830194508093505050509250925092565b60005b83811015611c4b578181015183820152602001611c33565b50506000910152565b60008151808452611c6c816020860160208601611c30565b601f01601f19169290920160200192915050565b6020815260006106db6020830184611c54565b600060208284031215611ca557600080fd5b5035919050565b6001600160a01b038116811461071d57600080fd5b8035611ccc81611cac565b919050565b60008060408385031215611ce457600080fd5b823591506020830135611cf681611cac565b809150509250929050565b600060208284031215611d1357600080fd5b81356106db81611cac565b60008060408385031215611d3157600080fd5b8235611d3c81611cac565b91506020830135611cf681611cac565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715611d8557611d85611d4c565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715611db457611db4611d4c565b604052919050565b60006020808385031215611dcf57600080fd5b823567ffffffffffffffff80821115611de757600080fd5b818501915085601f830112611dfb57600080fd5b813581811115611e0d57611e0d611d4c565b8060051b9150611e1e848301611d8b565b8181529183018401918481019088841115611e3857600080fd5b938501935b8385101561188d5784359250611e5283611cac565b8282529385019390850190611e3d565b60008060408385031215611e7557600080fd5b823567ffffffffffffffff811115611e8c57600080fd5b830160408186031215611e9e57600080fd5b946020939093013593505050565b6000808335601e19843603018112611ec357600080fd5b83018035915067ffffffffffffffff821115611ede57600080fd5b602001915036819003821315611a7357600080fd5b600060208284031215611f0557600080fd5b5051919050565b600060208284031215611f1e57600080fd5b815180151581146106db57600080fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201611f6c57611f6c611f44565b5060010190565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b600060808236031215611fba57600080fd5b611fc2611d62565b8235611fcd81611cac565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff80821115611ffe57600080fd5b9085019036601f83011261201157600080fd5b81358181111561202357612023611d4c565b612035601f8201601f19168501611d8b565b9150808252368482850101111561204b57600080fd5b808484018584013760009082019093019290925250606082015292915050565b6000808335601e1984360301811261208257600080fd5b830160208101925035905067ffffffffffffffff8111156120a257600080fd5b60a081023603821315611a7357600080fd5b803560068110611ccc57600080fd5b634e487b7160e01b600052602160045260246000fd5b600681106120e9576120e96120c3565b9052565b8183526000602080850194508260005b858110156121615761211787612112846120b4565b6120d9565b8282013561212481611cac565b6001600160a01b03168388015260408281013590880152606080830135908801526080808301359088015260a096870196909101906001016120fd565b509495945050505050565b6000808335601e1984360301811261218357600080fd5b830160208101925035905067ffffffffffffffff8111156121a357600080fd5b60c081023603821315611a7357600080fd5b8183526000602080850194508260005b85811015612161576121da87612112846120b4565b828201356121e781611cac565b6001600160a01b039081168885015260408381013590890152606080840135908901526080808401359089015260a0908382013561222481611cac565b169088015260c09687019691909101906001016121c5565b803560058110611ccc57600080fd5b600581106120e9576120e96120c3565b6000808335601e1984360301811261227257600080fd5b830160208101925035905067ffffffffffffffff81111561229257600080fd5b803603821315611a7357600080fd5b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b604081526000833561015e198536030181126122e557600080fd5b604083810152840161230a608084016122fd83611cc1565b6001600160a01b03169052565b61231660208201611cc1565b6001600160a01b031660a0840152612331604082018261206b565b6101608060c08701526123496101e0870183856120ed565b9250612358606085018561216c565b878503607f190160e089015292506123718484836121b5565b9350506123806080850161223c565b91506101006123918188018461224b565b610120925060a08501358388015261014060c08601358189015260e08601358389015281860135610180890152838601356101a0890152808601356101c0890152505050506123e3602087018761225b565b858303603f1901606087015292506123fc8284836122a1565b93505050508260208301529392505050565b60008251612420818460208701611c30565b9190910192915050565b60008261244757634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b8082018082111561061057610610611f44565b600084516124d2818460208901611c30565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351612537816017850160208801611c30565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351612568816028840160208801611c30565b01602801949350505050565b828152604060208201526000610da96040830184611c54565b808202811582820484141761061057610610611f44565b6000816125b3576125b3611f44565b50600019019056fe9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000811000a"; + static readonly abi: readonly [{ + readonly inputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "constructor"; + }, { + readonly inputs: readonly []; + readonly name: "InvalidSignature"; + readonly type: "error"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "uint8"; + readonly name: "version"; + readonly type: "uint8"; + }]; + readonly name: "Initialized"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "previousOwner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "newOwner"; + readonly type: "address"; + }]; + readonly name: "OwnershipTransferred"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "Paused"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "previousAdminRole"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "newAdminRole"; + readonly type: "bytes32"; + }]; + readonly name: "RoleAdminChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "sender"; + readonly type: "address"; + }]; + readonly name: "RoleGranted"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "sender"; + readonly type: "address"; + }]; + readonly name: "RoleRevoked"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "Unpaused"; + readonly type: "event"; + }, { + readonly inputs: readonly []; + readonly name: "DEFAULT_ADMIN_ROLE"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "MINTER_ROLE"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "NAME"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "VERSION"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "addMinter"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address[]"; + readonly name: "accounts"; + readonly type: "address[]"; + }]; + readonly name: "addMinters"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address payable"; + readonly name: "receiver"; + readonly type: "address"; + }]; + readonly name: "closeMinter"; + readonly outputs: readonly []; + readonly stateMutability: "payable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly components: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "nonce"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly internalType: "struct IForwarder.ForwardRequest"; + readonly name: "req"; + readonly type: "tuple"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "execute"; + readonly outputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly components: readonly [{ + readonly components: readonly [{ + readonly internalType: "address"; + readonly name: "offerer"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "zone"; + readonly type: "address"; + }, { + readonly components: readonly [{ + readonly internalType: "enum ItemType"; + readonly name: "itemType"; + readonly type: "uint8"; + }, { + readonly internalType: "address"; + readonly name: "token"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "identifierOrCriteria"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "startAmount"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "endAmount"; + readonly type: "uint256"; + }]; + readonly internalType: "struct OfferItem[]"; + readonly name: "offer"; + readonly type: "tuple[]"; + }, { + readonly components: readonly [{ + readonly internalType: "enum ItemType"; + readonly name: "itemType"; + readonly type: "uint8"; + }, { + readonly internalType: "address"; + readonly name: "token"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "identifierOrCriteria"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "startAmount"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "endAmount"; + readonly type: "uint256"; + }, { + readonly internalType: "address payable"; + readonly name: "recipient"; + readonly type: "address"; + }]; + readonly internalType: "struct ConsiderationItem[]"; + readonly name: "consideration"; + readonly type: "tuple[]"; + }, { + readonly internalType: "enum OrderType"; + readonly name: "orderType"; + readonly type: "uint8"; + }, { + readonly internalType: "uint256"; + readonly name: "startTime"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "endTime"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes32"; + readonly name: "zoneHash"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "salt"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes32"; + readonly name: "conduitKey"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "totalOriginalConsiderationItems"; + readonly type: "uint256"; + }]; + readonly internalType: "struct OrderParameters"; + readonly name: "parameters"; + readonly type: "tuple"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly internalType: "struct Order"; + readonly name: "parameters"; + readonly type: "tuple"; + }, { + readonly internalType: "bytes32"; + readonly name: "fulfillerConduitKey"; + readonly type: "bytes32"; + }]; + readonly name: "fulfillOrder"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: "fulfilled"; + readonly type: "bool"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }]; + readonly name: "getRoleAdmin"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "grantRole"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "hasRole"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "contract ConsiderationInterface"; + readonly name: "_seaport"; + readonly type: "address"; + }, { + readonly internalType: "contract IERC20"; + readonly name: "_usdc"; + readonly type: "address"; + }]; + readonly name: "initialize"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "isMinter"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "forwarder"; + readonly type: "address"; + }]; + readonly name: "isTrustedForwarder"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "nonceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "owner"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "pause"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "paused"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "removeMinter"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address[]"; + readonly name: "accounts"; + readonly type: "address[]"; + }]; + readonly name: "removeMinters"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "renounceMinter"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "renounceOwnership"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "renounceRole"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "revokeRole"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address payable"; + readonly name: "receiver"; + readonly type: "address"; + }]; + readonly name: "rotateMinter"; + readonly outputs: readonly []; + readonly stateMutability: "payable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "newOwner"; + readonly type: "address"; + }]; + readonly name: "transferOwnership"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "unpause"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly components: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "nonce"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly internalType: "struct IForwarder.ForwardRequest"; + readonly name: "req"; + readonly type: "tuple"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "verify"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "withdraw"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): SeaportProxyBuyerInterface; + static connect(address: string, runner?: ContractRunner | null): SeaportProxyBuyer; +} +export {}; +//# sourceMappingURL=SeaportProxyBuyer__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/marketplace/SeaportProxyBuyer__factory.d.ts.map b/dist/types/factories/contracts/marketplace/SeaportProxyBuyer__factory.d.ts.map new file mode 100644 index 00000000..a0a040e3 --- /dev/null +++ b/dist/types/factories/contracts/marketplace/SeaportProxyBuyer__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"SeaportProxyBuyer__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/marketplace/SeaportProxyBuyer__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,KAAK,EACV,iBAAiB,EACjB,0BAA0B,EAC3B,MAAM,kDAAkD,CAAC;AAsxB1D,aAAK,kCAAkC,GACnC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,0BAA2B,SAAQ,eAAe;gBACjD,GAAG,IAAI,EAAE,kCAAkC;IAQ9C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,0BAA0B;IAI3E,MAAM,CAAC,QAAQ,CAAC,QAAQ,g8mBAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,0BAA0B;IAGpD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,iBAAiB;CAGrB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/marketplace/SeaportProxyBuyer__factory.js b/dist/types/factories/contracts/marketplace/SeaportProxyBuyer__factory.js new file mode 100644 index 00000000..fa81ab5f --- /dev/null +++ b/dist/types/factories/contracts/marketplace/SeaportProxyBuyer__factory.js @@ -0,0 +1,818 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.SeaportProxyBuyer__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [], + stateMutability: "nonpayable", + type: "constructor", + }, + { + inputs: [], + name: "InvalidSignature", + type: "error", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint8", + name: "version", + type: "uint8", + }, + ], + name: "Initialized", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "previousOwner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnershipTransferred", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "Paused", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + indexed: true, + internalType: "bytes32", + name: "previousAdminRole", + type: "bytes32", + }, + { + indexed: true, + internalType: "bytes32", + name: "newAdminRole", + type: "bytes32", + }, + ], + name: "RoleAdminChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "RoleGranted", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "RoleRevoked", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "Unpaused", + type: "event", + }, + { + inputs: [], + name: "DEFAULT_ADMIN_ROLE", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "MINTER_ROLE", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "NAME", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "VERSION", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "addMinter", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address[]", + name: "accounts", + type: "address[]", + }, + ], + name: "addMinters", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address payable", + name: "receiver", + type: "address", + }, + ], + name: "closeMinter", + outputs: [], + stateMutability: "payable", + type: "function", + }, + { + inputs: [ + { + components: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "uint256", + name: "nonce", + type: "uint256", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + internalType: "struct IForwarder.ForwardRequest", + name: "req", + type: "tuple", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "execute", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + components: [ + { + components: [ + { + internalType: "address", + name: "offerer", + type: "address", + }, + { + internalType: "address", + name: "zone", + type: "address", + }, + { + components: [ + { + internalType: "enum ItemType", + name: "itemType", + type: "uint8", + }, + { + internalType: "address", + name: "token", + type: "address", + }, + { + internalType: "uint256", + name: "identifierOrCriteria", + type: "uint256", + }, + { + internalType: "uint256", + name: "startAmount", + type: "uint256", + }, + { + internalType: "uint256", + name: "endAmount", + type: "uint256", + }, + ], + internalType: "struct OfferItem[]", + name: "offer", + type: "tuple[]", + }, + { + components: [ + { + internalType: "enum ItemType", + name: "itemType", + type: "uint8", + }, + { + internalType: "address", + name: "token", + type: "address", + }, + { + internalType: "uint256", + name: "identifierOrCriteria", + type: "uint256", + }, + { + internalType: "uint256", + name: "startAmount", + type: "uint256", + }, + { + internalType: "uint256", + name: "endAmount", + type: "uint256", + }, + { + internalType: "address payable", + name: "recipient", + type: "address", + }, + ], + internalType: "struct ConsiderationItem[]", + name: "consideration", + type: "tuple[]", + }, + { + internalType: "enum OrderType", + name: "orderType", + type: "uint8", + }, + { + internalType: "uint256", + name: "startTime", + type: "uint256", + }, + { + internalType: "uint256", + name: "endTime", + type: "uint256", + }, + { + internalType: "bytes32", + name: "zoneHash", + type: "bytes32", + }, + { + internalType: "uint256", + name: "salt", + type: "uint256", + }, + { + internalType: "bytes32", + name: "conduitKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "totalOriginalConsiderationItems", + type: "uint256", + }, + ], + internalType: "struct OrderParameters", + name: "parameters", + type: "tuple", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + internalType: "struct Order", + name: "parameters", + type: "tuple", + }, + { + internalType: "bytes32", + name: "fulfillerConduitKey", + type: "bytes32", + }, + ], + name: "fulfillOrder", + outputs: [ + { + internalType: "bool", + name: "fulfilled", + type: "bool", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + ], + name: "getRoleAdmin", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "grantRole", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "hasRole", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "contract ConsiderationInterface", + name: "_seaport", + type: "address", + }, + { + internalType: "contract IERC20", + name: "_usdc", + type: "address", + }, + ], + name: "initialize", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "isMinter", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "forwarder", + type: "address", + }, + ], + name: "isTrustedForwarder", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "nonceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + 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: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "removeMinter", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address[]", + name: "accounts", + type: "address[]", + }, + ], + name: "removeMinters", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "renounceMinter", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "renounceOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "renounceRole", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "revokeRole", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address payable", + name: "receiver", + type: "address", + }, + ], + name: "rotateMinter", + outputs: [], + stateMutability: "payable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "transferOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "unpause", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + components: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "uint256", + name: "nonce", + type: "uint256", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + internalType: "struct IForwarder.ForwardRequest", + name: "req", + type: "tuple", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "verify", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "withdraw", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +const _bytecode = "0x60806040523480156200001157600080fd5b506200001c62000022565b620000e4565b600054610100900460ff16156200008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff9081161015620000e2576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b6125e880620000f46000396000f3fe6080604052600436106101d85760003560e01c806371e2a65711610102578063a3f4df7e11610095578063d539139311610064578063d53913931461054c578063d547741f1461056e578063f2fde38b1461058e578063ffa1ad74146105ae57600080fd5b8063a3f4df7e146104ad578063a4247400146104ec578063aa271e1a1461050c578063b3a34c4c1461052c57600080fd5b806391d14854116100d157806391d1485414610443578063983b2d56146104635780639865027514610483578063a217fddf1461049857600080fd5b806371e2a657146103d357806381c81d35146103f35780638456cb59146104065780638da5cb5b1461041b57600080fd5b80633f4ba83a1161017a5780635fc1964f116101495780635fc1964f1461036b578063634486da1461038b5780636ccbae5f1461039e578063715018a6146103be57600080fd5b80633f4ba83a146102f4578063485cc95514610309578063572b6c05146103295780635c975abb1461035257600080fd5b80632f2ff15d116101b65780632f2ff15d1461027d5780633092afd51461029f57806336568abe146102bf5780633ccfd60b146102df57600080fd5b806301ffc9a7146101dd5780631bf7e13e14610212578063248a9ca31461023f575b600080fd5b3480156101e957600080fd5b506101fd6101f8366004611b67565b6105df565b60405190151581526020015b60405180910390f35b34801561021e57600080fd5b5061023261022d366004611b91565b610616565b6040516102099190611c80565b34801561024b57600080fd5b5061026f61025a366004611c93565b600090815260fb602052604090206001015490565b604051908152602001610209565b34801561028957600080fd5b5061029d610298366004611cd1565b6106e2565b005b3480156102ab57600080fd5b5061029d6102ba366004611d01565b61070c565b3480156102cb57600080fd5b5061029d6102da366004611cd1565b610720565b3480156102eb57600080fd5b5061029d6107b3565b34801561030057600080fd5b5061029d6108c3565b34801561031557600080fd5b5061029d610324366004611d1e565b6108dd565b34801561033557600080fd5b506101fd610344366004611d01565b6001600160a01b0316301490565b34801561035e57600080fd5b5061012d5460ff166101fd565b34801561037757600080fd5b5061029d610386366004611dbc565b610ab4565b61029d610399366004611d01565b610afc565b3480156103aa57600080fd5b5061026f6103b9366004611c93565b610bbf565b3480156103ca57600080fd5b5061029d610c19565b3480156103df57600080fd5b5061029d6103ee366004611dbc565b610c2b565b61029d610401366004611d01565b610c73565b34801561041257600080fd5b5061029d610cf0565b34801561042757600080fd5b506097546040516001600160a01b039091168152602001610209565b34801561044f57600080fd5b506101fd61045e366004611cd1565b610d08565b34801561046f57600080fd5b5061029d61047e366004611d01565b610d33565b34801561048f57600080fd5b5061029d610d44565b3480156104a457600080fd5b5061026f600081565b3480156104b957600080fd5b506102326040518060400160405280601381526020017229b2b0b837b93a10283937bc3c90213abcb2b960691b81525081565b3480156104f857600080fd5b506101fd610507366004611b91565b610d5e565b34801561051857600080fd5b506101fd610527366004611d01565b610db1565b34801561053857600080fd5b506101fd610547366004611e62565b610dcb565b34801561055857600080fd5b5061026f6000805160206125bc83398151915281565b34801561057a57600080fd5b5061029d610589366004611cd1565b610ed5565b34801561059a57600080fd5b5061029d6105a9366004611d01565b610efa565b3480156105ba57600080fd5b5061023260405180604001604052806005815260200164302e302e3160d81b81525081565b60006001600160e01b03198216637965db0b60e01b148061061057506301ffc9a760e01b6001600160e01b03198316145b92915050565b606060005a9050610628858585610d5e565b61064557604051638baa579f60e01b815260040160405180910390fd5b6106d76106556020870187611d01565b3060408801358461066960608b018b611eac565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b9081908401838280828437600092019190915250610f1692505050565b9150505b9392505050565b600082815260fb60205260409020600101546106fd81610ff7565b6107078383611008565b505050565b61071461108f565b61071d81611108565b50565b610728611120565b6001600160a01b0316816001600160a01b0316146107a55760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6107af828261112f565b5050565b6107bb61108f565b6107c36111b4565b610160546001600160a01b031663a9059cbb6107e76097546001600160a01b031690565b610160546040516370a0823160e01b81523060048201526001600160a01b03909116906370a0823190602401602060405180830381865afa158015610830573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108549190611ef3565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303816000875af115801561089f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061071d9190611f0c565b6108cb61108f565b6108d36111fb565b6108db611245565b565b600054610100900460ff16158080156108fd5750600054600160ff909116105b806109175750303b158015610917575060005460ff166001145b61097a5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840161079c565b6000805460ff19166001179055801561099d576000805461ff0019166101001790555b61015f80546001600160a01b03199081166001600160a01b03868116918217909355610160805490921692851692831790915560405163095ea7b360e01b81526004810191909152600019602482015263095ea7b3906044016020604051808303816000875af1158015610a15573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a399190611f0c565b50610a4261129e565b610a4a6112cc565b610a526112cc565b610a5a6112f3565b610a6261132a565b610a6a611363565b8015610707576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a1505050565b610abc61108f565b60005b81518110156107af57610aea828281518110610add57610add611f2e565b6020026020010151611108565b80610af481611f5a565b915050610abf565b610b07610527611120565b610b235760405162461bcd60e51b815260040161079c90611f73565b6001600160a01b038116610b795760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d505459000000604482015260640161079c565b610b8281611397565b610b8a610d44565b6040516001600160a01b038216903480156108fc02916000818181858888f193505050501580156107af573d6000803e3d6000fd5b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a838156020820152908101829052600090610c12906060016040516020818303038152906040528051906020012090565b5492915050565b610c2161108f565b6108db60006113af565b610c3361108f565b60005b81518110156107af57610c61828281518110610c5457610c54611f2e565b6020026020010151611397565b80610c6b81611f5a565b915050610c36565b610c7e610527611120565b610c9a5760405162461bcd60e51b815260040161079c90611f73565b6001600160a01b038116610b825760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d505459000000604482015260640161079c565b610cf861108f565b610d006111b4565b6108db611401565b600091825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610d3b61108f565b61071d81611397565b6108db6000805160206125bc8339815191526102da611120565b6000610da9610d6c85611fa8565b3085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061144092505050565b949350505050565b60006106106000805160206125bc83398151915283610d08565b6000610dd8610527611120565b610df45760405162461bcd60e51b815260040161079c90611f73565b600260335403610e465760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015260640161079c565b6002603355610e536111b4565b61015f54604051632ce8d31360e21b81526001600160a01b039091169063b3a34c4c90610e8690869086906004016122ca565b6020604051808303816000875af1158015610ea5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ec99190611f0c565b60016033559392505050565b600082815260fb6020526040902060010154610ef081610ff7565b610707838361112f565b610f0261108f565b610f0b81611589565b61071d6000826115ff565b6060610f2185611609565b600080876001600160a01b031686610f3b8b8a898961166f565b604051610f48919061240e565b60006040518083038160008787f1925050503d8060008114610f86576040519150601f19603f3d011682016040523d82523d6000602084013e610f8b565b606091505b509092509050610f9c603f8761242a565b5a11610faa57610faa61244c565b610fea82826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061169f565b9998505050505050505050565b61071d81611003611120565b6116d8565b6110128282610d08565b6107af57600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff1916600117905561104b611120565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b611097611120565b6001600160a01b03166110b26097546001600160a01b031690565b6001600160a01b0316146108db5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161079c565b61071d6000805160206125bc83398151915282610ed5565b600061112a61173c565b905090565b6111398282610d08565b156107af57600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff19169055611170611120565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b61012d5460ff16156108db5760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b604482015260640161079c565b61012d5460ff166108db5760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b604482015260640161079c565b61124d6111fb565b61012d805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa611281611120565b6040516001600160a01b03909116815260200160405180910390a1565b600054610100900460ff166112c55760405162461bcd60e51b815260040161079c90612462565b6001603355565b600054610100900460ff166108db5760405162461bcd60e51b815260040161079c90612462565b600054610100900460ff1661131a5760405162461bcd60e51b815260040161079c90612462565b6108db611325611120565b6113af565b600054610100900460ff166113515760405162461bcd60e51b815260040161079c90612462565b6108db600061135e611120565b6115ff565b600054610100900460ff1661138a5760405162461bcd60e51b815260040161079c90612462565b61012d805460ff19169055565b61071d6000805160206125bc833981519152826115ff565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6114096111b4565b61012d805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258611281611120565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015611487573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114ab9190611ef3565b905060006115598660600151805190602001208688602001516040516020016114f99392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561157f5750855161157f906001600160a01b03168286611757565b9695505050505050565b61159161108f565b6001600160a01b0381166115f65760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161079c565b61071d816113af565b6107af8282611008565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a83815602082015290810182905260009060600160405160208183030381529060405280519060200120905061165e8190565b5461166a9060016124ad565b905550565b6060828585604051602001611686939291906124c0565b6040516020818303038152906040529050949350505050565b606083156116ae5750816106db565b8251156116be5782518084602001fd5b8160405162461bcd60e51b815260040161079c9190611c80565b6116e28282610d08565b6107af576116fa816001600160a01b03166014611899565b611705836020611899565b6040516020016117169291906124ff565b60408051601f198184030181529082905262461bcd60e51b825261079c91600401611c80565b6000303303611752575060331936013560601c90565b503390565b60008060006117668585611a35565b9092509050600081600481111561177f5761177f6120c3565b14801561179d5750856001600160a01b0316826001600160a01b0316145b156117ad576001925050506106db565b600080876001600160a01b0316631626ba7e60e01b88886040516024016117d5929190612574565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051611813919061240e565b600060405180830381855afa9150503d806000811461184e576040519150601f19603f3d011682016040523d82523d6000602084013e611853565b606091505b5091509150818015611866575080516020145b801561188d57508051630b135d3f60e11b9061188b9083016020908101908401611ef3565b145b98975050505050505050565b606060006118a883600261258d565b6118b39060026124ad565b67ffffffffffffffff8111156118cb576118cb611d4c565b6040519080825280601f01601f1916602001820160405280156118f5576020820181803683370190505b509050600360fc1b8160008151811061191057611910611f2e565b60200101906001600160f81b031916908160001a905350600f60fb1b8160018151811061193f5761193f611f2e565b60200101906001600160f81b031916908160001a905350600061196384600261258d565b61196e9060016124ad565b90505b60018111156119e6576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106119a2576119a2611f2e565b1a60f81b8282815181106119b8576119b8611f2e565b60200101906001600160f81b031916908160001a90535060049490941c936119df816125a4565b9050611971565b5083156106db5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e74604482015260640161079c565b6000808251604103611a6b5760208301516040840151606085015160001a611a5f87828585611a7a565b94509450505050611a73565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115611ab15750600090506003611b5e565b8460ff16601b14158015611ac957508460ff16601c14155b15611ada5750600090506004611b5e565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015611b2e573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116611b5757600060019250925050611b5e565b9150600090505b94509492505050565b600060208284031215611b7957600080fd5b81356001600160e01b0319811681146106db57600080fd5b600080600060408486031215611ba657600080fd5b833567ffffffffffffffff80821115611bbe57600080fd5b9085019060808288031215611bd257600080fd5b90935060208501359080821115611be857600080fd5b818601915086601f830112611bfc57600080fd5b813581811115611c0b57600080fd5b876020828501011115611c1d57600080fd5b6020830194508093505050509250925092565b60005b83811015611c4b578181015183820152602001611c33565b50506000910152565b60008151808452611c6c816020860160208601611c30565b601f01601f19169290920160200192915050565b6020815260006106db6020830184611c54565b600060208284031215611ca557600080fd5b5035919050565b6001600160a01b038116811461071d57600080fd5b8035611ccc81611cac565b919050565b60008060408385031215611ce457600080fd5b823591506020830135611cf681611cac565b809150509250929050565b600060208284031215611d1357600080fd5b81356106db81611cac565b60008060408385031215611d3157600080fd5b8235611d3c81611cac565b91506020830135611cf681611cac565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715611d8557611d85611d4c565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715611db457611db4611d4c565b604052919050565b60006020808385031215611dcf57600080fd5b823567ffffffffffffffff80821115611de757600080fd5b818501915085601f830112611dfb57600080fd5b813581811115611e0d57611e0d611d4c565b8060051b9150611e1e848301611d8b565b8181529183018401918481019088841115611e3857600080fd5b938501935b8385101561188d5784359250611e5283611cac565b8282529385019390850190611e3d565b60008060408385031215611e7557600080fd5b823567ffffffffffffffff811115611e8c57600080fd5b830160408186031215611e9e57600080fd5b946020939093013593505050565b6000808335601e19843603018112611ec357600080fd5b83018035915067ffffffffffffffff821115611ede57600080fd5b602001915036819003821315611a7357600080fd5b600060208284031215611f0557600080fd5b5051919050565b600060208284031215611f1e57600080fd5b815180151581146106db57600080fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201611f6c57611f6c611f44565b5060010190565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b600060808236031215611fba57600080fd5b611fc2611d62565b8235611fcd81611cac565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff80821115611ffe57600080fd5b9085019036601f83011261201157600080fd5b81358181111561202357612023611d4c565b612035601f8201601f19168501611d8b565b9150808252368482850101111561204b57600080fd5b808484018584013760009082019093019290925250606082015292915050565b6000808335601e1984360301811261208257600080fd5b830160208101925035905067ffffffffffffffff8111156120a257600080fd5b60a081023603821315611a7357600080fd5b803560068110611ccc57600080fd5b634e487b7160e01b600052602160045260246000fd5b600681106120e9576120e96120c3565b9052565b8183526000602080850194508260005b858110156121615761211787612112846120b4565b6120d9565b8282013561212481611cac565b6001600160a01b03168388015260408281013590880152606080830135908801526080808301359088015260a096870196909101906001016120fd565b509495945050505050565b6000808335601e1984360301811261218357600080fd5b830160208101925035905067ffffffffffffffff8111156121a357600080fd5b60c081023603821315611a7357600080fd5b8183526000602080850194508260005b85811015612161576121da87612112846120b4565b828201356121e781611cac565b6001600160a01b039081168885015260408381013590890152606080840135908901526080808401359089015260a0908382013561222481611cac565b169088015260c09687019691909101906001016121c5565b803560058110611ccc57600080fd5b600581106120e9576120e96120c3565b6000808335601e1984360301811261227257600080fd5b830160208101925035905067ffffffffffffffff81111561229257600080fd5b803603821315611a7357600080fd5b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b604081526000833561015e198536030181126122e557600080fd5b604083810152840161230a608084016122fd83611cc1565b6001600160a01b03169052565b61231660208201611cc1565b6001600160a01b031660a0840152612331604082018261206b565b6101608060c08701526123496101e0870183856120ed565b9250612358606085018561216c565b878503607f190160e089015292506123718484836121b5565b9350506123806080850161223c565b91506101006123918188018461224b565b610120925060a08501358388015261014060c08601358189015260e08601358389015281860135610180890152838601356101a0890152808601356101c0890152505050506123e3602087018761225b565b858303603f1901606087015292506123fc8284836122a1565b93505050508260208301529392505050565b60008251612420818460208701611c30565b9190910192915050565b60008261244757634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b8082018082111561061057610610611f44565b600084516124d2818460208901611c30565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351612537816017850160208801611c30565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351612568816028840160208801611c30565b01602801949350505050565b828152604060208201526000610da96040830184611c54565b808202811582820484141761061057610610611f44565b6000816125b3576125b3611f44565b50600019019056fe9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000811000a"; +const isSuperArgs = (xs) => xs.length > 1; +class SeaportProxyBuyer__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(overrides) { + return super.getDeployTransaction(overrides || {}); + } + deploy(overrides) { + return super.deploy(overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.SeaportProxyBuyer__factory = SeaportProxyBuyer__factory; +SeaportProxyBuyer__factory.bytecode = _bytecode; +SeaportProxyBuyer__factory.abi = _abi; diff --git a/dist/types/factories/contracts/marketplace/index.d.ts b/dist/types/factories/contracts/marketplace/index.d.ts new file mode 100644 index 00000000..efbb5579 --- /dev/null +++ b/dist/types/factories/contracts/marketplace/index.d.ts @@ -0,0 +1,3 @@ +export { ISeaportProxyBuyer__factory } from "./ISeaportProxyBuyer__factory"; +export { SeaportProxyBuyer__factory } from "./SeaportProxyBuyer__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/marketplace/index.d.ts.map b/dist/types/factories/contracts/marketplace/index.d.ts.map new file mode 100644 index 00000000..f5f73a7b --- /dev/null +++ b/dist/types/factories/contracts/marketplace/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/marketplace/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/contracts/marketplace/index.js b/dist/types/factories/contracts/marketplace/index.js new file mode 100644 index 00000000..e349988a --- /dev/null +++ b/dist/types/factories/contracts/marketplace/index.js @@ -0,0 +1,7 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.SeaportProxyBuyer__factory = exports.ISeaportProxyBuyer__factory = void 0; +var ISeaportProxyBuyer__factory_1 = require("./ISeaportProxyBuyer__factory"); +Object.defineProperty(exports, "ISeaportProxyBuyer__factory", { enumerable: true, get: function () { return ISeaportProxyBuyer__factory_1.ISeaportProxyBuyer__factory; } }); +var SeaportProxyBuyer__factory_1 = require("./SeaportProxyBuyer__factory"); +Object.defineProperty(exports, "SeaportProxyBuyer__factory", { enumerable: true, get: function () { return SeaportProxyBuyer__factory_1.SeaportProxyBuyer__factory; } }); diff --git a/dist/types/factories/index.d.ts b/dist/types/factories/index.d.ts index 31854a8b..3190a4cf 100644 --- a/dist/types/factories/index.d.ts +++ b/dist/types/factories/index.d.ts @@ -2,4 +2,5 @@ export * as ensdomains from "./@ensdomains"; export * as openzeppelin from "./@openzeppelin"; export * as contracts from "./contracts"; export * as dotCrypto from "./dot-crypto"; +export * as seaportTypes from "./seaport-types"; //# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/index.d.ts.map b/dist/types/factories/index.d.ts.map index 11d31583..0f75d44a 100644 --- a/dist/types/factories/index.d.ts.map +++ b/dist/types/factories/index.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../types/factories/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,UAAU,MAAM,eAAe,CAAC;AAC5C,OAAO,KAAK,YAAY,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,SAAS,MAAM,cAAc,CAAC"} \ No newline at end of file +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../types/factories/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,UAAU,MAAM,eAAe,CAAC;AAC5C,OAAO,KAAK,YAAY,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,SAAS,MAAM,cAAc,CAAC;AAC1C,OAAO,KAAK,YAAY,MAAM,iBAAiB,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/index.js b/dist/types/factories/index.js index 341fdb15..fa2f2e34 100644 --- a/dist/types/factories/index.js +++ b/dist/types/factories/index.js @@ -23,8 +23,9 @@ var __importStar = (this && this.__importStar) || function (mod) { return result; }; Object.defineProperty(exports, "__esModule", { value: true }); -exports.dotCrypto = exports.contracts = exports.openzeppelin = exports.ensdomains = void 0; +exports.seaportTypes = exports.dotCrypto = exports.contracts = exports.openzeppelin = exports.ensdomains = void 0; exports.ensdomains = __importStar(require("./@ensdomains")); exports.openzeppelin = __importStar(require("./@openzeppelin")); exports.contracts = __importStar(require("./contracts")); exports.dotCrypto = __importStar(require("./dot-crypto")); +exports.seaportTypes = __importStar(require("./seaport-types")); diff --git a/dist/types/factories/seaport-types/index.d.ts b/dist/types/factories/seaport-types/index.d.ts new file mode 100644 index 00000000..f83478b5 --- /dev/null +++ b/dist/types/factories/seaport-types/index.d.ts @@ -0,0 +1,2 @@ +export * as src from "./src"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/seaport-types/index.d.ts.map b/dist/types/factories/seaport-types/index.d.ts.map new file mode 100644 index 00000000..43555a96 --- /dev/null +++ b/dist/types/factories/seaport-types/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../types/factories/seaport-types/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/seaport-types/index.js b/dist/types/factories/seaport-types/index.js new file mode 100644 index 00000000..ebd202b6 --- /dev/null +++ b/dist/types/factories/seaport-types/index.js @@ -0,0 +1,27 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.src = void 0; +exports.src = __importStar(require("./src")); diff --git a/dist/types/factories/seaport-types/src/index.d.ts b/dist/types/factories/seaport-types/src/index.d.ts new file mode 100644 index 00000000..3f4ce49d --- /dev/null +++ b/dist/types/factories/seaport-types/src/index.d.ts @@ -0,0 +1,2 @@ +export * as interfaces from "./interfaces"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/seaport-types/src/index.d.ts.map b/dist/types/factories/seaport-types/src/index.d.ts.map new file mode 100644 index 00000000..cf695f0c --- /dev/null +++ b/dist/types/factories/seaport-types/src/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/factories/seaport-types/src/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/seaport-types/src/index.js b/dist/types/factories/seaport-types/src/index.js new file mode 100644 index 00000000..f6659030 --- /dev/null +++ b/dist/types/factories/seaport-types/src/index.js @@ -0,0 +1,27 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.interfaces = void 0; +exports.interfaces = __importStar(require("./interfaces")); diff --git a/dist/types/factories/seaport-types/src/interfaces/ConsiderationInterface__factory.d.ts b/dist/types/factories/seaport-types/src/interfaces/ConsiderationInterface__factory.d.ts new file mode 100644 index 00000000..c7839802 --- /dev/null +++ b/dist/types/factories/seaport-types/src/interfaces/ConsiderationInterface__factory.d.ts @@ -0,0 +1,1705 @@ +import { type ContractRunner } from "ethers"; +import type { ConsiderationInterface, ConsiderationInterfaceInterface } from "../../../../seaport-types/src/interfaces/ConsiderationInterface"; +export declare class ConsiderationInterface__factory { + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly components: readonly [{ + readonly internalType: "address"; + readonly name: "offerer"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "zone"; + readonly type: "address"; + }, { + readonly components: readonly [{ + readonly internalType: "enum ItemType"; + readonly name: "itemType"; + readonly type: "uint8"; + }, { + readonly internalType: "address"; + readonly name: "token"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "identifierOrCriteria"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "startAmount"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "endAmount"; + readonly type: "uint256"; + }]; + readonly internalType: "struct OfferItem[]"; + readonly name: "offer"; + readonly type: "tuple[]"; + }, { + readonly components: readonly [{ + readonly internalType: "enum ItemType"; + readonly name: "itemType"; + readonly type: "uint8"; + }, { + readonly internalType: "address"; + readonly name: "token"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "identifierOrCriteria"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "startAmount"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "endAmount"; + readonly type: "uint256"; + }, { + readonly internalType: "address payable"; + readonly name: "recipient"; + readonly type: "address"; + }]; + readonly internalType: "struct ConsiderationItem[]"; + readonly name: "consideration"; + readonly type: "tuple[]"; + }, { + readonly internalType: "enum OrderType"; + readonly name: "orderType"; + readonly type: "uint8"; + }, { + readonly internalType: "uint256"; + readonly name: "startTime"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "endTime"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes32"; + readonly name: "zoneHash"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "salt"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes32"; + readonly name: "conduitKey"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "counter"; + readonly type: "uint256"; + }]; + readonly internalType: "struct OrderComponents[]"; + readonly name: "orders"; + readonly type: "tuple[]"; + }]; + readonly name: "cancel"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: "cancelled"; + readonly type: "bool"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly components: readonly [{ + readonly components: readonly [{ + readonly internalType: "address"; + readonly name: "offerer"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "zone"; + readonly type: "address"; + }, { + readonly components: readonly [{ + readonly internalType: "enum ItemType"; + readonly name: "itemType"; + readonly type: "uint8"; + }, { + readonly internalType: "address"; + readonly name: "token"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "identifierOrCriteria"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "startAmount"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "endAmount"; + readonly type: "uint256"; + }]; + readonly internalType: "struct OfferItem[]"; + readonly name: "offer"; + readonly type: "tuple[]"; + }, { + readonly components: readonly [{ + readonly internalType: "enum ItemType"; + readonly name: "itemType"; + readonly type: "uint8"; + }, { + readonly internalType: "address"; + readonly name: "token"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "identifierOrCriteria"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "startAmount"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "endAmount"; + readonly type: "uint256"; + }, { + readonly internalType: "address payable"; + readonly name: "recipient"; + readonly type: "address"; + }]; + readonly internalType: "struct ConsiderationItem[]"; + readonly name: "consideration"; + readonly type: "tuple[]"; + }, { + readonly internalType: "enum OrderType"; + readonly name: "orderType"; + readonly type: "uint8"; + }, { + readonly internalType: "uint256"; + readonly name: "startTime"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "endTime"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes32"; + readonly name: "zoneHash"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "salt"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes32"; + readonly name: "conduitKey"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "totalOriginalConsiderationItems"; + readonly type: "uint256"; + }]; + readonly internalType: "struct OrderParameters"; + readonly name: "parameters"; + readonly type: "tuple"; + }, { + readonly internalType: "uint120"; + readonly name: "numerator"; + readonly type: "uint120"; + }, { + readonly internalType: "uint120"; + readonly name: "denominator"; + readonly type: "uint120"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }, { + readonly internalType: "bytes"; + readonly name: "extraData"; + readonly type: "bytes"; + }]; + readonly internalType: "struct AdvancedOrder"; + readonly name: "advancedOrder"; + readonly type: "tuple"; + }, { + readonly components: readonly [{ + readonly internalType: "uint256"; + readonly name: "orderIndex"; + readonly type: "uint256"; + }, { + readonly internalType: "enum Side"; + readonly name: "side"; + readonly type: "uint8"; + }, { + readonly internalType: "uint256"; + readonly name: "index"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "identifier"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes32[]"; + readonly name: "criteriaProof"; + readonly type: "bytes32[]"; + }]; + readonly internalType: "struct CriteriaResolver[]"; + readonly name: "criteriaResolvers"; + readonly type: "tuple[]"; + }, { + readonly internalType: "bytes32"; + readonly name: "fulfillerConduitKey"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "recipient"; + readonly type: "address"; + }]; + readonly name: "fulfillAdvancedOrder"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: "fulfilled"; + readonly type: "bool"; + }]; + readonly stateMutability: "payable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly components: readonly [{ + readonly components: readonly [{ + readonly internalType: "address"; + readonly name: "offerer"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "zone"; + readonly type: "address"; + }, { + readonly components: readonly [{ + readonly internalType: "enum ItemType"; + readonly name: "itemType"; + readonly type: "uint8"; + }, { + readonly internalType: "address"; + readonly name: "token"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "identifierOrCriteria"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "startAmount"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "endAmount"; + readonly type: "uint256"; + }]; + readonly internalType: "struct OfferItem[]"; + readonly name: "offer"; + readonly type: "tuple[]"; + }, { + readonly components: readonly [{ + readonly internalType: "enum ItemType"; + readonly name: "itemType"; + readonly type: "uint8"; + }, { + readonly internalType: "address"; + readonly name: "token"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "identifierOrCriteria"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "startAmount"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "endAmount"; + readonly type: "uint256"; + }, { + readonly internalType: "address payable"; + readonly name: "recipient"; + readonly type: "address"; + }]; + readonly internalType: "struct ConsiderationItem[]"; + readonly name: "consideration"; + readonly type: "tuple[]"; + }, { + readonly internalType: "enum OrderType"; + readonly name: "orderType"; + readonly type: "uint8"; + }, { + readonly internalType: "uint256"; + readonly name: "startTime"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "endTime"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes32"; + readonly name: "zoneHash"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "salt"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes32"; + readonly name: "conduitKey"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "totalOriginalConsiderationItems"; + readonly type: "uint256"; + }]; + readonly internalType: "struct OrderParameters"; + readonly name: "parameters"; + readonly type: "tuple"; + }, { + readonly internalType: "uint120"; + readonly name: "numerator"; + readonly type: "uint120"; + }, { + readonly internalType: "uint120"; + readonly name: "denominator"; + readonly type: "uint120"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }, { + readonly internalType: "bytes"; + readonly name: "extraData"; + readonly type: "bytes"; + }]; + readonly internalType: "struct AdvancedOrder[]"; + readonly name: "advancedOrders"; + readonly type: "tuple[]"; + }, { + readonly components: readonly [{ + readonly internalType: "uint256"; + readonly name: "orderIndex"; + readonly type: "uint256"; + }, { + readonly internalType: "enum Side"; + readonly name: "side"; + readonly type: "uint8"; + }, { + readonly internalType: "uint256"; + readonly name: "index"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "identifier"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes32[]"; + readonly name: "criteriaProof"; + readonly type: "bytes32[]"; + }]; + readonly internalType: "struct CriteriaResolver[]"; + readonly name: "criteriaResolvers"; + readonly type: "tuple[]"; + }, { + readonly components: readonly [{ + readonly internalType: "uint256"; + readonly name: "orderIndex"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "itemIndex"; + readonly type: "uint256"; + }]; + readonly internalType: "struct FulfillmentComponent[][]"; + readonly name: "offerFulfillments"; + readonly type: "tuple[][]"; + }, { + readonly components: readonly [{ + readonly internalType: "uint256"; + readonly name: "orderIndex"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "itemIndex"; + readonly type: "uint256"; + }]; + readonly internalType: "struct FulfillmentComponent[][]"; + readonly name: "considerationFulfillments"; + readonly type: "tuple[][]"; + }, { + readonly internalType: "bytes32"; + readonly name: "fulfillerConduitKey"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "recipient"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "maximumFulfilled"; + readonly type: "uint256"; + }]; + readonly name: "fulfillAvailableAdvancedOrders"; + readonly outputs: readonly [{ + readonly internalType: "bool[]"; + readonly name: "availableOrders"; + readonly type: "bool[]"; + }, { + readonly components: readonly [{ + readonly components: readonly [{ + readonly internalType: "enum ItemType"; + readonly name: "itemType"; + readonly type: "uint8"; + }, { + readonly internalType: "address"; + readonly name: "token"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "identifier"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "amount"; + readonly type: "uint256"; + }, { + readonly internalType: "address payable"; + readonly name: "recipient"; + readonly type: "address"; + }]; + readonly internalType: "struct ReceivedItem"; + readonly name: "item"; + readonly type: "tuple"; + }, { + readonly internalType: "address"; + readonly name: "offerer"; + readonly type: "address"; + }, { + readonly internalType: "bytes32"; + readonly name: "conduitKey"; + readonly type: "bytes32"; + }]; + readonly internalType: "struct Execution[]"; + readonly name: "executions"; + readonly type: "tuple[]"; + }]; + readonly stateMutability: "payable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly components: readonly [{ + readonly components: readonly [{ + readonly internalType: "address"; + readonly name: "offerer"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "zone"; + readonly type: "address"; + }, { + readonly components: readonly [{ + readonly internalType: "enum ItemType"; + readonly name: "itemType"; + readonly type: "uint8"; + }, { + readonly internalType: "address"; + readonly name: "token"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "identifierOrCriteria"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "startAmount"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "endAmount"; + readonly type: "uint256"; + }]; + readonly internalType: "struct OfferItem[]"; + readonly name: "offer"; + readonly type: "tuple[]"; + }, { + readonly components: readonly [{ + readonly internalType: "enum ItemType"; + readonly name: "itemType"; + readonly type: "uint8"; + }, { + readonly internalType: "address"; + readonly name: "token"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "identifierOrCriteria"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "startAmount"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "endAmount"; + readonly type: "uint256"; + }, { + readonly internalType: "address payable"; + readonly name: "recipient"; + readonly type: "address"; + }]; + readonly internalType: "struct ConsiderationItem[]"; + readonly name: "consideration"; + readonly type: "tuple[]"; + }, { + readonly internalType: "enum OrderType"; + readonly name: "orderType"; + readonly type: "uint8"; + }, { + readonly internalType: "uint256"; + readonly name: "startTime"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "endTime"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes32"; + readonly name: "zoneHash"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "salt"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes32"; + readonly name: "conduitKey"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "totalOriginalConsiderationItems"; + readonly type: "uint256"; + }]; + readonly internalType: "struct OrderParameters"; + readonly name: "parameters"; + readonly type: "tuple"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly internalType: "struct Order[]"; + readonly name: "orders"; + readonly type: "tuple[]"; + }, { + readonly components: readonly [{ + readonly internalType: "uint256"; + readonly name: "orderIndex"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "itemIndex"; + readonly type: "uint256"; + }]; + readonly internalType: "struct FulfillmentComponent[][]"; + readonly name: "offerFulfillments"; + readonly type: "tuple[][]"; + }, { + readonly components: readonly [{ + readonly internalType: "uint256"; + readonly name: "orderIndex"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "itemIndex"; + readonly type: "uint256"; + }]; + readonly internalType: "struct FulfillmentComponent[][]"; + readonly name: "considerationFulfillments"; + readonly type: "tuple[][]"; + }, { + readonly internalType: "bytes32"; + readonly name: "fulfillerConduitKey"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "maximumFulfilled"; + readonly type: "uint256"; + }]; + readonly name: "fulfillAvailableOrders"; + readonly outputs: readonly [{ + readonly internalType: "bool[]"; + readonly name: "availableOrders"; + readonly type: "bool[]"; + }, { + readonly components: readonly [{ + readonly components: readonly [{ + readonly internalType: "enum ItemType"; + readonly name: "itemType"; + readonly type: "uint8"; + }, { + readonly internalType: "address"; + readonly name: "token"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "identifier"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "amount"; + readonly type: "uint256"; + }, { + readonly internalType: "address payable"; + readonly name: "recipient"; + readonly type: "address"; + }]; + readonly internalType: "struct ReceivedItem"; + readonly name: "item"; + readonly type: "tuple"; + }, { + readonly internalType: "address"; + readonly name: "offerer"; + readonly type: "address"; + }, { + readonly internalType: "bytes32"; + readonly name: "conduitKey"; + readonly type: "bytes32"; + }]; + readonly internalType: "struct Execution[]"; + readonly name: "executions"; + readonly type: "tuple[]"; + }]; + readonly stateMutability: "payable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly components: readonly [{ + readonly internalType: "address"; + readonly name: "considerationToken"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "considerationIdentifier"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "considerationAmount"; + readonly type: "uint256"; + }, { + readonly internalType: "address payable"; + readonly name: "offerer"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "zone"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "offerToken"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "offerIdentifier"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "offerAmount"; + readonly type: "uint256"; + }, { + readonly internalType: "enum BasicOrderType"; + readonly name: "basicOrderType"; + readonly type: "uint8"; + }, { + readonly internalType: "uint256"; + readonly name: "startTime"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "endTime"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes32"; + readonly name: "zoneHash"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "salt"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes32"; + readonly name: "offererConduitKey"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes32"; + readonly name: "fulfillerConduitKey"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "totalOriginalAdditionalRecipients"; + readonly type: "uint256"; + }, { + readonly components: readonly [{ + readonly internalType: "uint256"; + readonly name: "amount"; + readonly type: "uint256"; + }, { + readonly internalType: "address payable"; + readonly name: "recipient"; + readonly type: "address"; + }]; + readonly internalType: "struct AdditionalRecipient[]"; + readonly name: "additionalRecipients"; + readonly type: "tuple[]"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly internalType: "struct BasicOrderParameters"; + readonly name: "parameters"; + readonly type: "tuple"; + }]; + readonly name: "fulfillBasicOrder"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: "fulfilled"; + readonly type: "bool"; + }]; + readonly stateMutability: "payable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly components: readonly [{ + readonly internalType: "address"; + readonly name: "considerationToken"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "considerationIdentifier"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "considerationAmount"; + readonly type: "uint256"; + }, { + readonly internalType: "address payable"; + readonly name: "offerer"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "zone"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "offerToken"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "offerIdentifier"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "offerAmount"; + readonly type: "uint256"; + }, { + readonly internalType: "enum BasicOrderType"; + readonly name: "basicOrderType"; + readonly type: "uint8"; + }, { + readonly internalType: "uint256"; + readonly name: "startTime"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "endTime"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes32"; + readonly name: "zoneHash"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "salt"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes32"; + readonly name: "offererConduitKey"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes32"; + readonly name: "fulfillerConduitKey"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "totalOriginalAdditionalRecipients"; + readonly type: "uint256"; + }, { + readonly components: readonly [{ + readonly internalType: "uint256"; + readonly name: "amount"; + readonly type: "uint256"; + }, { + readonly internalType: "address payable"; + readonly name: "recipient"; + readonly type: "address"; + }]; + readonly internalType: "struct AdditionalRecipient[]"; + readonly name: "additionalRecipients"; + readonly type: "tuple[]"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly internalType: "struct BasicOrderParameters"; + readonly name: "parameters"; + readonly type: "tuple"; + }]; + readonly name: "fulfillBasicOrder_efficient_6GL6yc"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: "fulfilled"; + readonly type: "bool"; + }]; + readonly stateMutability: "payable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly components: readonly [{ + readonly components: readonly [{ + readonly internalType: "address"; + readonly name: "offerer"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "zone"; + readonly type: "address"; + }, { + readonly components: readonly [{ + readonly internalType: "enum ItemType"; + readonly name: "itemType"; + readonly type: "uint8"; + }, { + readonly internalType: "address"; + readonly name: "token"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "identifierOrCriteria"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "startAmount"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "endAmount"; + readonly type: "uint256"; + }]; + readonly internalType: "struct OfferItem[]"; + readonly name: "offer"; + readonly type: "tuple[]"; + }, { + readonly components: readonly [{ + readonly internalType: "enum ItemType"; + readonly name: "itemType"; + readonly type: "uint8"; + }, { + readonly internalType: "address"; + readonly name: "token"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "identifierOrCriteria"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "startAmount"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "endAmount"; + readonly type: "uint256"; + }, { + readonly internalType: "address payable"; + readonly name: "recipient"; + readonly type: "address"; + }]; + readonly internalType: "struct ConsiderationItem[]"; + readonly name: "consideration"; + readonly type: "tuple[]"; + }, { + readonly internalType: "enum OrderType"; + readonly name: "orderType"; + readonly type: "uint8"; + }, { + readonly internalType: "uint256"; + readonly name: "startTime"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "endTime"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes32"; + readonly name: "zoneHash"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "salt"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes32"; + readonly name: "conduitKey"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "totalOriginalConsiderationItems"; + readonly type: "uint256"; + }]; + readonly internalType: "struct OrderParameters"; + readonly name: "parameters"; + readonly type: "tuple"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly internalType: "struct Order"; + readonly name: "order"; + readonly type: "tuple"; + }, { + readonly internalType: "bytes32"; + readonly name: "fulfillerConduitKey"; + readonly type: "bytes32"; + }]; + readonly name: "fulfillOrder"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: "fulfilled"; + readonly type: "bool"; + }]; + readonly stateMutability: "payable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "contractOfferer"; + readonly type: "address"; + }]; + readonly name: "getContractOffererNonce"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "nonce"; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "offerer"; + readonly type: "address"; + }]; + readonly name: "getCounter"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "counter"; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly components: readonly [{ + readonly internalType: "address"; + readonly name: "offerer"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "zone"; + readonly type: "address"; + }, { + readonly components: readonly [{ + readonly internalType: "enum ItemType"; + readonly name: "itemType"; + readonly type: "uint8"; + }, { + readonly internalType: "address"; + readonly name: "token"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "identifierOrCriteria"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "startAmount"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "endAmount"; + readonly type: "uint256"; + }]; + readonly internalType: "struct OfferItem[]"; + readonly name: "offer"; + readonly type: "tuple[]"; + }, { + readonly components: readonly [{ + readonly internalType: "enum ItemType"; + readonly name: "itemType"; + readonly type: "uint8"; + }, { + readonly internalType: "address"; + readonly name: "token"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "identifierOrCriteria"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "startAmount"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "endAmount"; + readonly type: "uint256"; + }, { + readonly internalType: "address payable"; + readonly name: "recipient"; + readonly type: "address"; + }]; + readonly internalType: "struct ConsiderationItem[]"; + readonly name: "consideration"; + readonly type: "tuple[]"; + }, { + readonly internalType: "enum OrderType"; + readonly name: "orderType"; + readonly type: "uint8"; + }, { + readonly internalType: "uint256"; + readonly name: "startTime"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "endTime"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes32"; + readonly name: "zoneHash"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "salt"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes32"; + readonly name: "conduitKey"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "counter"; + readonly type: "uint256"; + }]; + readonly internalType: "struct OrderComponents"; + readonly name: "order"; + readonly type: "tuple"; + }]; + readonly name: "getOrderHash"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "orderHash"; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "orderHash"; + readonly type: "bytes32"; + }]; + readonly name: "getOrderStatus"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: "isValidated"; + readonly type: "bool"; + }, { + readonly internalType: "bool"; + readonly name: "isCancelled"; + readonly type: "bool"; + }, { + readonly internalType: "uint256"; + readonly name: "totalFilled"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "totalSize"; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "incrementCounter"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "newCounter"; + readonly type: "uint256"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "information"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: "version"; + readonly type: "string"; + }, { + readonly internalType: "bytes32"; + readonly name: "domainSeparator"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "conduitController"; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly components: readonly [{ + readonly components: readonly [{ + readonly internalType: "address"; + readonly name: "offerer"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "zone"; + readonly type: "address"; + }, { + readonly components: readonly [{ + readonly internalType: "enum ItemType"; + readonly name: "itemType"; + readonly type: "uint8"; + }, { + readonly internalType: "address"; + readonly name: "token"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "identifierOrCriteria"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "startAmount"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "endAmount"; + readonly type: "uint256"; + }]; + readonly internalType: "struct OfferItem[]"; + readonly name: "offer"; + readonly type: "tuple[]"; + }, { + readonly components: readonly [{ + readonly internalType: "enum ItemType"; + readonly name: "itemType"; + readonly type: "uint8"; + }, { + readonly internalType: "address"; + readonly name: "token"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "identifierOrCriteria"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "startAmount"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "endAmount"; + readonly type: "uint256"; + }, { + readonly internalType: "address payable"; + readonly name: "recipient"; + readonly type: "address"; + }]; + readonly internalType: "struct ConsiderationItem[]"; + readonly name: "consideration"; + readonly type: "tuple[]"; + }, { + readonly internalType: "enum OrderType"; + readonly name: "orderType"; + readonly type: "uint8"; + }, { + readonly internalType: "uint256"; + readonly name: "startTime"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "endTime"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes32"; + readonly name: "zoneHash"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "salt"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes32"; + readonly name: "conduitKey"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "totalOriginalConsiderationItems"; + readonly type: "uint256"; + }]; + readonly internalType: "struct OrderParameters"; + readonly name: "parameters"; + readonly type: "tuple"; + }, { + readonly internalType: "uint120"; + readonly name: "numerator"; + readonly type: "uint120"; + }, { + readonly internalType: "uint120"; + readonly name: "denominator"; + readonly type: "uint120"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }, { + readonly internalType: "bytes"; + readonly name: "extraData"; + readonly type: "bytes"; + }]; + readonly internalType: "struct AdvancedOrder[]"; + readonly name: "orders"; + readonly type: "tuple[]"; + }, { + readonly components: readonly [{ + readonly internalType: "uint256"; + readonly name: "orderIndex"; + readonly type: "uint256"; + }, { + readonly internalType: "enum Side"; + readonly name: "side"; + readonly type: "uint8"; + }, { + readonly internalType: "uint256"; + readonly name: "index"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "identifier"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes32[]"; + readonly name: "criteriaProof"; + readonly type: "bytes32[]"; + }]; + readonly internalType: "struct CriteriaResolver[]"; + readonly name: "criteriaResolvers"; + readonly type: "tuple[]"; + }, { + readonly components: readonly [{ + readonly components: readonly [{ + readonly internalType: "uint256"; + readonly name: "orderIndex"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "itemIndex"; + readonly type: "uint256"; + }]; + readonly internalType: "struct FulfillmentComponent[]"; + readonly name: "offerComponents"; + readonly type: "tuple[]"; + }, { + readonly components: readonly [{ + readonly internalType: "uint256"; + readonly name: "orderIndex"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "itemIndex"; + readonly type: "uint256"; + }]; + readonly internalType: "struct FulfillmentComponent[]"; + readonly name: "considerationComponents"; + readonly type: "tuple[]"; + }]; + readonly internalType: "struct Fulfillment[]"; + readonly name: "fulfillments"; + readonly type: "tuple[]"; + }, { + readonly internalType: "address"; + readonly name: "recipient"; + readonly type: "address"; + }]; + readonly name: "matchAdvancedOrders"; + readonly outputs: readonly [{ + readonly components: readonly [{ + readonly components: readonly [{ + readonly internalType: "enum ItemType"; + readonly name: "itemType"; + readonly type: "uint8"; + }, { + readonly internalType: "address"; + readonly name: "token"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "identifier"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "amount"; + readonly type: "uint256"; + }, { + readonly internalType: "address payable"; + readonly name: "recipient"; + readonly type: "address"; + }]; + readonly internalType: "struct ReceivedItem"; + readonly name: "item"; + readonly type: "tuple"; + }, { + readonly internalType: "address"; + readonly name: "offerer"; + readonly type: "address"; + }, { + readonly internalType: "bytes32"; + readonly name: "conduitKey"; + readonly type: "bytes32"; + }]; + readonly internalType: "struct Execution[]"; + readonly name: "executions"; + readonly type: "tuple[]"; + }]; + readonly stateMutability: "payable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly components: readonly [{ + readonly components: readonly [{ + readonly internalType: "address"; + readonly name: "offerer"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "zone"; + readonly type: "address"; + }, { + readonly components: readonly [{ + readonly internalType: "enum ItemType"; + readonly name: "itemType"; + readonly type: "uint8"; + }, { + readonly internalType: "address"; + readonly name: "token"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "identifierOrCriteria"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "startAmount"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "endAmount"; + readonly type: "uint256"; + }]; + readonly internalType: "struct OfferItem[]"; + readonly name: "offer"; + readonly type: "tuple[]"; + }, { + readonly components: readonly [{ + readonly internalType: "enum ItemType"; + readonly name: "itemType"; + readonly type: "uint8"; + }, { + readonly internalType: "address"; + readonly name: "token"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "identifierOrCriteria"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "startAmount"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "endAmount"; + readonly type: "uint256"; + }, { + readonly internalType: "address payable"; + readonly name: "recipient"; + readonly type: "address"; + }]; + readonly internalType: "struct ConsiderationItem[]"; + readonly name: "consideration"; + readonly type: "tuple[]"; + }, { + readonly internalType: "enum OrderType"; + readonly name: "orderType"; + readonly type: "uint8"; + }, { + readonly internalType: "uint256"; + readonly name: "startTime"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "endTime"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes32"; + readonly name: "zoneHash"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "salt"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes32"; + readonly name: "conduitKey"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "totalOriginalConsiderationItems"; + readonly type: "uint256"; + }]; + readonly internalType: "struct OrderParameters"; + readonly name: "parameters"; + readonly type: "tuple"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly internalType: "struct Order[]"; + readonly name: "orders"; + readonly type: "tuple[]"; + }, { + readonly components: readonly [{ + readonly components: readonly [{ + readonly internalType: "uint256"; + readonly name: "orderIndex"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "itemIndex"; + readonly type: "uint256"; + }]; + readonly internalType: "struct FulfillmentComponent[]"; + readonly name: "offerComponents"; + readonly type: "tuple[]"; + }, { + readonly components: readonly [{ + readonly internalType: "uint256"; + readonly name: "orderIndex"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "itemIndex"; + readonly type: "uint256"; + }]; + readonly internalType: "struct FulfillmentComponent[]"; + readonly name: "considerationComponents"; + readonly type: "tuple[]"; + }]; + readonly internalType: "struct Fulfillment[]"; + readonly name: "fulfillments"; + readonly type: "tuple[]"; + }]; + readonly name: "matchOrders"; + readonly outputs: readonly [{ + readonly components: readonly [{ + readonly components: readonly [{ + readonly internalType: "enum ItemType"; + readonly name: "itemType"; + readonly type: "uint8"; + }, { + readonly internalType: "address"; + readonly name: "token"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "identifier"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "amount"; + readonly type: "uint256"; + }, { + readonly internalType: "address payable"; + readonly name: "recipient"; + readonly type: "address"; + }]; + readonly internalType: "struct ReceivedItem"; + readonly name: "item"; + readonly type: "tuple"; + }, { + readonly internalType: "address"; + readonly name: "offerer"; + readonly type: "address"; + }, { + readonly internalType: "bytes32"; + readonly name: "conduitKey"; + readonly type: "bytes32"; + }]; + readonly internalType: "struct Execution[]"; + readonly name: "executions"; + readonly type: "tuple[]"; + }]; + readonly stateMutability: "payable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "name"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: "contractName"; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly components: readonly [{ + readonly components: readonly [{ + readonly internalType: "address"; + readonly name: "offerer"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "zone"; + readonly type: "address"; + }, { + readonly components: readonly [{ + readonly internalType: "enum ItemType"; + readonly name: "itemType"; + readonly type: "uint8"; + }, { + readonly internalType: "address"; + readonly name: "token"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "identifierOrCriteria"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "startAmount"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "endAmount"; + readonly type: "uint256"; + }]; + readonly internalType: "struct OfferItem[]"; + readonly name: "offer"; + readonly type: "tuple[]"; + }, { + readonly components: readonly [{ + readonly internalType: "enum ItemType"; + readonly name: "itemType"; + readonly type: "uint8"; + }, { + readonly internalType: "address"; + readonly name: "token"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "identifierOrCriteria"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "startAmount"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "endAmount"; + readonly type: "uint256"; + }, { + readonly internalType: "address payable"; + readonly name: "recipient"; + readonly type: "address"; + }]; + readonly internalType: "struct ConsiderationItem[]"; + readonly name: "consideration"; + readonly type: "tuple[]"; + }, { + readonly internalType: "enum OrderType"; + readonly name: "orderType"; + readonly type: "uint8"; + }, { + readonly internalType: "uint256"; + readonly name: "startTime"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "endTime"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes32"; + readonly name: "zoneHash"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "salt"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes32"; + readonly name: "conduitKey"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "totalOriginalConsiderationItems"; + readonly type: "uint256"; + }]; + readonly internalType: "struct OrderParameters"; + readonly name: "parameters"; + readonly type: "tuple"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly internalType: "struct Order[]"; + readonly name: "orders"; + readonly type: "tuple[]"; + }]; + readonly name: "validate"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: "validated"; + readonly type: "bool"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): ConsiderationInterfaceInterface; + static connect(address: string, runner?: ContractRunner | null): ConsiderationInterface; +} +//# sourceMappingURL=ConsiderationInterface__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/seaport-types/src/interfaces/ConsiderationInterface__factory.d.ts.map b/dist/types/factories/seaport-types/src/interfaces/ConsiderationInterface__factory.d.ts.map new file mode 100644 index 00000000..3d2e5988 --- /dev/null +++ b/dist/types/factories/seaport-types/src/interfaces/ConsiderationInterface__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ConsiderationInterface__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/seaport-types/src/interfaces/ConsiderationInterface__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,sBAAsB,EACtB,+BAA+B,EAChC,MAAM,iEAAiE,CAAC;AAipEzE,qBAAa,+BAA+B;IAC1C,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,+BAA+B;IAGzD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,sBAAsB;CAO1B"} \ No newline at end of file diff --git a/dist/types/factories/seaport-types/src/interfaces/ConsiderationInterface__factory.js b/dist/types/factories/seaport-types/src/interfaces/ConsiderationInterface__factory.js new file mode 100644 index 00000000..7799078f --- /dev/null +++ b/dist/types/factories/seaport-types/src/interfaces/ConsiderationInterface__factory.js @@ -0,0 +1,2204 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ConsiderationInterface__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + components: [ + { + internalType: "address", + name: "offerer", + type: "address", + }, + { + internalType: "address", + name: "zone", + type: "address", + }, + { + components: [ + { + internalType: "enum ItemType", + name: "itemType", + type: "uint8", + }, + { + internalType: "address", + name: "token", + type: "address", + }, + { + internalType: "uint256", + name: "identifierOrCriteria", + type: "uint256", + }, + { + internalType: "uint256", + name: "startAmount", + type: "uint256", + }, + { + internalType: "uint256", + name: "endAmount", + type: "uint256", + }, + ], + internalType: "struct OfferItem[]", + name: "offer", + type: "tuple[]", + }, + { + components: [ + { + internalType: "enum ItemType", + name: "itemType", + type: "uint8", + }, + { + internalType: "address", + name: "token", + type: "address", + }, + { + internalType: "uint256", + name: "identifierOrCriteria", + type: "uint256", + }, + { + internalType: "uint256", + name: "startAmount", + type: "uint256", + }, + { + internalType: "uint256", + name: "endAmount", + type: "uint256", + }, + { + internalType: "address payable", + name: "recipient", + type: "address", + }, + ], + internalType: "struct ConsiderationItem[]", + name: "consideration", + type: "tuple[]", + }, + { + internalType: "enum OrderType", + name: "orderType", + type: "uint8", + }, + { + internalType: "uint256", + name: "startTime", + type: "uint256", + }, + { + internalType: "uint256", + name: "endTime", + type: "uint256", + }, + { + internalType: "bytes32", + name: "zoneHash", + type: "bytes32", + }, + { + internalType: "uint256", + name: "salt", + type: "uint256", + }, + { + internalType: "bytes32", + name: "conduitKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "counter", + type: "uint256", + }, + ], + internalType: "struct OrderComponents[]", + name: "orders", + type: "tuple[]", + }, + ], + name: "cancel", + outputs: [ + { + internalType: "bool", + name: "cancelled", + type: "bool", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + components: [ + { + components: [ + { + internalType: "address", + name: "offerer", + type: "address", + }, + { + internalType: "address", + name: "zone", + type: "address", + }, + { + components: [ + { + internalType: "enum ItemType", + name: "itemType", + type: "uint8", + }, + { + internalType: "address", + name: "token", + type: "address", + }, + { + internalType: "uint256", + name: "identifierOrCriteria", + type: "uint256", + }, + { + internalType: "uint256", + name: "startAmount", + type: "uint256", + }, + { + internalType: "uint256", + name: "endAmount", + type: "uint256", + }, + ], + internalType: "struct OfferItem[]", + name: "offer", + type: "tuple[]", + }, + { + components: [ + { + internalType: "enum ItemType", + name: "itemType", + type: "uint8", + }, + { + internalType: "address", + name: "token", + type: "address", + }, + { + internalType: "uint256", + name: "identifierOrCriteria", + type: "uint256", + }, + { + internalType: "uint256", + name: "startAmount", + type: "uint256", + }, + { + internalType: "uint256", + name: "endAmount", + type: "uint256", + }, + { + internalType: "address payable", + name: "recipient", + type: "address", + }, + ], + internalType: "struct ConsiderationItem[]", + name: "consideration", + type: "tuple[]", + }, + { + internalType: "enum OrderType", + name: "orderType", + type: "uint8", + }, + { + internalType: "uint256", + name: "startTime", + type: "uint256", + }, + { + internalType: "uint256", + name: "endTime", + type: "uint256", + }, + { + internalType: "bytes32", + name: "zoneHash", + type: "bytes32", + }, + { + internalType: "uint256", + name: "salt", + type: "uint256", + }, + { + internalType: "bytes32", + name: "conduitKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "totalOriginalConsiderationItems", + type: "uint256", + }, + ], + internalType: "struct OrderParameters", + name: "parameters", + type: "tuple", + }, + { + internalType: "uint120", + name: "numerator", + type: "uint120", + }, + { + internalType: "uint120", + name: "denominator", + type: "uint120", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + { + internalType: "bytes", + name: "extraData", + type: "bytes", + }, + ], + internalType: "struct AdvancedOrder", + name: "advancedOrder", + type: "tuple", + }, + { + components: [ + { + internalType: "uint256", + name: "orderIndex", + type: "uint256", + }, + { + internalType: "enum Side", + name: "side", + type: "uint8", + }, + { + internalType: "uint256", + name: "index", + type: "uint256", + }, + { + internalType: "uint256", + name: "identifier", + type: "uint256", + }, + { + internalType: "bytes32[]", + name: "criteriaProof", + type: "bytes32[]", + }, + ], + internalType: "struct CriteriaResolver[]", + name: "criteriaResolvers", + type: "tuple[]", + }, + { + internalType: "bytes32", + name: "fulfillerConduitKey", + type: "bytes32", + }, + { + internalType: "address", + name: "recipient", + type: "address", + }, + ], + name: "fulfillAdvancedOrder", + outputs: [ + { + internalType: "bool", + name: "fulfilled", + type: "bool", + }, + ], + stateMutability: "payable", + type: "function", + }, + { + inputs: [ + { + components: [ + { + components: [ + { + internalType: "address", + name: "offerer", + type: "address", + }, + { + internalType: "address", + name: "zone", + type: "address", + }, + { + components: [ + { + internalType: "enum ItemType", + name: "itemType", + type: "uint8", + }, + { + internalType: "address", + name: "token", + type: "address", + }, + { + internalType: "uint256", + name: "identifierOrCriteria", + type: "uint256", + }, + { + internalType: "uint256", + name: "startAmount", + type: "uint256", + }, + { + internalType: "uint256", + name: "endAmount", + type: "uint256", + }, + ], + internalType: "struct OfferItem[]", + name: "offer", + type: "tuple[]", + }, + { + components: [ + { + internalType: "enum ItemType", + name: "itemType", + type: "uint8", + }, + { + internalType: "address", + name: "token", + type: "address", + }, + { + internalType: "uint256", + name: "identifierOrCriteria", + type: "uint256", + }, + { + internalType: "uint256", + name: "startAmount", + type: "uint256", + }, + { + internalType: "uint256", + name: "endAmount", + type: "uint256", + }, + { + internalType: "address payable", + name: "recipient", + type: "address", + }, + ], + internalType: "struct ConsiderationItem[]", + name: "consideration", + type: "tuple[]", + }, + { + internalType: "enum OrderType", + name: "orderType", + type: "uint8", + }, + { + internalType: "uint256", + name: "startTime", + type: "uint256", + }, + { + internalType: "uint256", + name: "endTime", + type: "uint256", + }, + { + internalType: "bytes32", + name: "zoneHash", + type: "bytes32", + }, + { + internalType: "uint256", + name: "salt", + type: "uint256", + }, + { + internalType: "bytes32", + name: "conduitKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "totalOriginalConsiderationItems", + type: "uint256", + }, + ], + internalType: "struct OrderParameters", + name: "parameters", + type: "tuple", + }, + { + internalType: "uint120", + name: "numerator", + type: "uint120", + }, + { + internalType: "uint120", + name: "denominator", + type: "uint120", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + { + internalType: "bytes", + name: "extraData", + type: "bytes", + }, + ], + internalType: "struct AdvancedOrder[]", + name: "advancedOrders", + type: "tuple[]", + }, + { + components: [ + { + internalType: "uint256", + name: "orderIndex", + type: "uint256", + }, + { + internalType: "enum Side", + name: "side", + type: "uint8", + }, + { + internalType: "uint256", + name: "index", + type: "uint256", + }, + { + internalType: "uint256", + name: "identifier", + type: "uint256", + }, + { + internalType: "bytes32[]", + name: "criteriaProof", + type: "bytes32[]", + }, + ], + internalType: "struct CriteriaResolver[]", + name: "criteriaResolvers", + type: "tuple[]", + }, + { + components: [ + { + internalType: "uint256", + name: "orderIndex", + type: "uint256", + }, + { + internalType: "uint256", + name: "itemIndex", + type: "uint256", + }, + ], + internalType: "struct FulfillmentComponent[][]", + name: "offerFulfillments", + type: "tuple[][]", + }, + { + components: [ + { + internalType: "uint256", + name: "orderIndex", + type: "uint256", + }, + { + internalType: "uint256", + name: "itemIndex", + type: "uint256", + }, + ], + internalType: "struct FulfillmentComponent[][]", + name: "considerationFulfillments", + type: "tuple[][]", + }, + { + internalType: "bytes32", + name: "fulfillerConduitKey", + type: "bytes32", + }, + { + internalType: "address", + name: "recipient", + type: "address", + }, + { + internalType: "uint256", + name: "maximumFulfilled", + type: "uint256", + }, + ], + name: "fulfillAvailableAdvancedOrders", + outputs: [ + { + internalType: "bool[]", + name: "availableOrders", + type: "bool[]", + }, + { + components: [ + { + components: [ + { + internalType: "enum ItemType", + name: "itemType", + type: "uint8", + }, + { + internalType: "address", + name: "token", + type: "address", + }, + { + internalType: "uint256", + name: "identifier", + type: "uint256", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + { + internalType: "address payable", + name: "recipient", + type: "address", + }, + ], + internalType: "struct ReceivedItem", + name: "item", + type: "tuple", + }, + { + internalType: "address", + name: "offerer", + type: "address", + }, + { + internalType: "bytes32", + name: "conduitKey", + type: "bytes32", + }, + ], + internalType: "struct Execution[]", + name: "executions", + type: "tuple[]", + }, + ], + stateMutability: "payable", + type: "function", + }, + { + inputs: [ + { + components: [ + { + components: [ + { + internalType: "address", + name: "offerer", + type: "address", + }, + { + internalType: "address", + name: "zone", + type: "address", + }, + { + components: [ + { + internalType: "enum ItemType", + name: "itemType", + type: "uint8", + }, + { + internalType: "address", + name: "token", + type: "address", + }, + { + internalType: "uint256", + name: "identifierOrCriteria", + type: "uint256", + }, + { + internalType: "uint256", + name: "startAmount", + type: "uint256", + }, + { + internalType: "uint256", + name: "endAmount", + type: "uint256", + }, + ], + internalType: "struct OfferItem[]", + name: "offer", + type: "tuple[]", + }, + { + components: [ + { + internalType: "enum ItemType", + name: "itemType", + type: "uint8", + }, + { + internalType: "address", + name: "token", + type: "address", + }, + { + internalType: "uint256", + name: "identifierOrCriteria", + type: "uint256", + }, + { + internalType: "uint256", + name: "startAmount", + type: "uint256", + }, + { + internalType: "uint256", + name: "endAmount", + type: "uint256", + }, + { + internalType: "address payable", + name: "recipient", + type: "address", + }, + ], + internalType: "struct ConsiderationItem[]", + name: "consideration", + type: "tuple[]", + }, + { + internalType: "enum OrderType", + name: "orderType", + type: "uint8", + }, + { + internalType: "uint256", + name: "startTime", + type: "uint256", + }, + { + internalType: "uint256", + name: "endTime", + type: "uint256", + }, + { + internalType: "bytes32", + name: "zoneHash", + type: "bytes32", + }, + { + internalType: "uint256", + name: "salt", + type: "uint256", + }, + { + internalType: "bytes32", + name: "conduitKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "totalOriginalConsiderationItems", + type: "uint256", + }, + ], + internalType: "struct OrderParameters", + name: "parameters", + type: "tuple", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + internalType: "struct Order[]", + name: "orders", + type: "tuple[]", + }, + { + components: [ + { + internalType: "uint256", + name: "orderIndex", + type: "uint256", + }, + { + internalType: "uint256", + name: "itemIndex", + type: "uint256", + }, + ], + internalType: "struct FulfillmentComponent[][]", + name: "offerFulfillments", + type: "tuple[][]", + }, + { + components: [ + { + internalType: "uint256", + name: "orderIndex", + type: "uint256", + }, + { + internalType: "uint256", + name: "itemIndex", + type: "uint256", + }, + ], + internalType: "struct FulfillmentComponent[][]", + name: "considerationFulfillments", + type: "tuple[][]", + }, + { + internalType: "bytes32", + name: "fulfillerConduitKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "maximumFulfilled", + type: "uint256", + }, + ], + name: "fulfillAvailableOrders", + outputs: [ + { + internalType: "bool[]", + name: "availableOrders", + type: "bool[]", + }, + { + components: [ + { + components: [ + { + internalType: "enum ItemType", + name: "itemType", + type: "uint8", + }, + { + internalType: "address", + name: "token", + type: "address", + }, + { + internalType: "uint256", + name: "identifier", + type: "uint256", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + { + internalType: "address payable", + name: "recipient", + type: "address", + }, + ], + internalType: "struct ReceivedItem", + name: "item", + type: "tuple", + }, + { + internalType: "address", + name: "offerer", + type: "address", + }, + { + internalType: "bytes32", + name: "conduitKey", + type: "bytes32", + }, + ], + internalType: "struct Execution[]", + name: "executions", + type: "tuple[]", + }, + ], + stateMutability: "payable", + type: "function", + }, + { + inputs: [ + { + components: [ + { + internalType: "address", + name: "considerationToken", + type: "address", + }, + { + internalType: "uint256", + name: "considerationIdentifier", + type: "uint256", + }, + { + internalType: "uint256", + name: "considerationAmount", + type: "uint256", + }, + { + internalType: "address payable", + name: "offerer", + type: "address", + }, + { + internalType: "address", + name: "zone", + type: "address", + }, + { + internalType: "address", + name: "offerToken", + type: "address", + }, + { + internalType: "uint256", + name: "offerIdentifier", + type: "uint256", + }, + { + internalType: "uint256", + name: "offerAmount", + type: "uint256", + }, + { + internalType: "enum BasicOrderType", + name: "basicOrderType", + type: "uint8", + }, + { + internalType: "uint256", + name: "startTime", + type: "uint256", + }, + { + internalType: "uint256", + name: "endTime", + type: "uint256", + }, + { + internalType: "bytes32", + name: "zoneHash", + type: "bytes32", + }, + { + internalType: "uint256", + name: "salt", + type: "uint256", + }, + { + internalType: "bytes32", + name: "offererConduitKey", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "fulfillerConduitKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "totalOriginalAdditionalRecipients", + type: "uint256", + }, + { + components: [ + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + { + internalType: "address payable", + name: "recipient", + type: "address", + }, + ], + internalType: "struct AdditionalRecipient[]", + name: "additionalRecipients", + type: "tuple[]", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + internalType: "struct BasicOrderParameters", + name: "parameters", + type: "tuple", + }, + ], + name: "fulfillBasicOrder", + outputs: [ + { + internalType: "bool", + name: "fulfilled", + type: "bool", + }, + ], + stateMutability: "payable", + type: "function", + }, + { + inputs: [ + { + components: [ + { + internalType: "address", + name: "considerationToken", + type: "address", + }, + { + internalType: "uint256", + name: "considerationIdentifier", + type: "uint256", + }, + { + internalType: "uint256", + name: "considerationAmount", + type: "uint256", + }, + { + internalType: "address payable", + name: "offerer", + type: "address", + }, + { + internalType: "address", + name: "zone", + type: "address", + }, + { + internalType: "address", + name: "offerToken", + type: "address", + }, + { + internalType: "uint256", + name: "offerIdentifier", + type: "uint256", + }, + { + internalType: "uint256", + name: "offerAmount", + type: "uint256", + }, + { + internalType: "enum BasicOrderType", + name: "basicOrderType", + type: "uint8", + }, + { + internalType: "uint256", + name: "startTime", + type: "uint256", + }, + { + internalType: "uint256", + name: "endTime", + type: "uint256", + }, + { + internalType: "bytes32", + name: "zoneHash", + type: "bytes32", + }, + { + internalType: "uint256", + name: "salt", + type: "uint256", + }, + { + internalType: "bytes32", + name: "offererConduitKey", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "fulfillerConduitKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "totalOriginalAdditionalRecipients", + type: "uint256", + }, + { + components: [ + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + { + internalType: "address payable", + name: "recipient", + type: "address", + }, + ], + internalType: "struct AdditionalRecipient[]", + name: "additionalRecipients", + type: "tuple[]", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + internalType: "struct BasicOrderParameters", + name: "parameters", + type: "tuple", + }, + ], + name: "fulfillBasicOrder_efficient_6GL6yc", + outputs: [ + { + internalType: "bool", + name: "fulfilled", + type: "bool", + }, + ], + stateMutability: "payable", + type: "function", + }, + { + inputs: [ + { + components: [ + { + components: [ + { + internalType: "address", + name: "offerer", + type: "address", + }, + { + internalType: "address", + name: "zone", + type: "address", + }, + { + components: [ + { + internalType: "enum ItemType", + name: "itemType", + type: "uint8", + }, + { + internalType: "address", + name: "token", + type: "address", + }, + { + internalType: "uint256", + name: "identifierOrCriteria", + type: "uint256", + }, + { + internalType: "uint256", + name: "startAmount", + type: "uint256", + }, + { + internalType: "uint256", + name: "endAmount", + type: "uint256", + }, + ], + internalType: "struct OfferItem[]", + name: "offer", + type: "tuple[]", + }, + { + components: [ + { + internalType: "enum ItemType", + name: "itemType", + type: "uint8", + }, + { + internalType: "address", + name: "token", + type: "address", + }, + { + internalType: "uint256", + name: "identifierOrCriteria", + type: "uint256", + }, + { + internalType: "uint256", + name: "startAmount", + type: "uint256", + }, + { + internalType: "uint256", + name: "endAmount", + type: "uint256", + }, + { + internalType: "address payable", + name: "recipient", + type: "address", + }, + ], + internalType: "struct ConsiderationItem[]", + name: "consideration", + type: "tuple[]", + }, + { + internalType: "enum OrderType", + name: "orderType", + type: "uint8", + }, + { + internalType: "uint256", + name: "startTime", + type: "uint256", + }, + { + internalType: "uint256", + name: "endTime", + type: "uint256", + }, + { + internalType: "bytes32", + name: "zoneHash", + type: "bytes32", + }, + { + internalType: "uint256", + name: "salt", + type: "uint256", + }, + { + internalType: "bytes32", + name: "conduitKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "totalOriginalConsiderationItems", + type: "uint256", + }, + ], + internalType: "struct OrderParameters", + name: "parameters", + type: "tuple", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + internalType: "struct Order", + name: "order", + type: "tuple", + }, + { + internalType: "bytes32", + name: "fulfillerConduitKey", + type: "bytes32", + }, + ], + name: "fulfillOrder", + outputs: [ + { + internalType: "bool", + name: "fulfilled", + type: "bool", + }, + ], + stateMutability: "payable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "contractOfferer", + type: "address", + }, + ], + name: "getContractOffererNonce", + outputs: [ + { + internalType: "uint256", + name: "nonce", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "offerer", + type: "address", + }, + ], + name: "getCounter", + outputs: [ + { + internalType: "uint256", + name: "counter", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + components: [ + { + internalType: "address", + name: "offerer", + type: "address", + }, + { + internalType: "address", + name: "zone", + type: "address", + }, + { + components: [ + { + internalType: "enum ItemType", + name: "itemType", + type: "uint8", + }, + { + internalType: "address", + name: "token", + type: "address", + }, + { + internalType: "uint256", + name: "identifierOrCriteria", + type: "uint256", + }, + { + internalType: "uint256", + name: "startAmount", + type: "uint256", + }, + { + internalType: "uint256", + name: "endAmount", + type: "uint256", + }, + ], + internalType: "struct OfferItem[]", + name: "offer", + type: "tuple[]", + }, + { + components: [ + { + internalType: "enum ItemType", + name: "itemType", + type: "uint8", + }, + { + internalType: "address", + name: "token", + type: "address", + }, + { + internalType: "uint256", + name: "identifierOrCriteria", + type: "uint256", + }, + { + internalType: "uint256", + name: "startAmount", + type: "uint256", + }, + { + internalType: "uint256", + name: "endAmount", + type: "uint256", + }, + { + internalType: "address payable", + name: "recipient", + type: "address", + }, + ], + internalType: "struct ConsiderationItem[]", + name: "consideration", + type: "tuple[]", + }, + { + internalType: "enum OrderType", + name: "orderType", + type: "uint8", + }, + { + internalType: "uint256", + name: "startTime", + type: "uint256", + }, + { + internalType: "uint256", + name: "endTime", + type: "uint256", + }, + { + internalType: "bytes32", + name: "zoneHash", + type: "bytes32", + }, + { + internalType: "uint256", + name: "salt", + type: "uint256", + }, + { + internalType: "bytes32", + name: "conduitKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "counter", + type: "uint256", + }, + ], + internalType: "struct OrderComponents", + name: "order", + type: "tuple", + }, + ], + name: "getOrderHash", + outputs: [ + { + internalType: "bytes32", + name: "orderHash", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "orderHash", + type: "bytes32", + }, + ], + name: "getOrderStatus", + outputs: [ + { + internalType: "bool", + name: "isValidated", + type: "bool", + }, + { + internalType: "bool", + name: "isCancelled", + type: "bool", + }, + { + internalType: "uint256", + name: "totalFilled", + type: "uint256", + }, + { + internalType: "uint256", + name: "totalSize", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "incrementCounter", + outputs: [ + { + internalType: "uint256", + name: "newCounter", + type: "uint256", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "information", + outputs: [ + { + internalType: "string", + name: "version", + type: "string", + }, + { + internalType: "bytes32", + name: "domainSeparator", + type: "bytes32", + }, + { + internalType: "address", + name: "conduitController", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + components: [ + { + components: [ + { + internalType: "address", + name: "offerer", + type: "address", + }, + { + internalType: "address", + name: "zone", + type: "address", + }, + { + components: [ + { + internalType: "enum ItemType", + name: "itemType", + type: "uint8", + }, + { + internalType: "address", + name: "token", + type: "address", + }, + { + internalType: "uint256", + name: "identifierOrCriteria", + type: "uint256", + }, + { + internalType: "uint256", + name: "startAmount", + type: "uint256", + }, + { + internalType: "uint256", + name: "endAmount", + type: "uint256", + }, + ], + internalType: "struct OfferItem[]", + name: "offer", + type: "tuple[]", + }, + { + components: [ + { + internalType: "enum ItemType", + name: "itemType", + type: "uint8", + }, + { + internalType: "address", + name: "token", + type: "address", + }, + { + internalType: "uint256", + name: "identifierOrCriteria", + type: "uint256", + }, + { + internalType: "uint256", + name: "startAmount", + type: "uint256", + }, + { + internalType: "uint256", + name: "endAmount", + type: "uint256", + }, + { + internalType: "address payable", + name: "recipient", + type: "address", + }, + ], + internalType: "struct ConsiderationItem[]", + name: "consideration", + type: "tuple[]", + }, + { + internalType: "enum OrderType", + name: "orderType", + type: "uint8", + }, + { + internalType: "uint256", + name: "startTime", + type: "uint256", + }, + { + internalType: "uint256", + name: "endTime", + type: "uint256", + }, + { + internalType: "bytes32", + name: "zoneHash", + type: "bytes32", + }, + { + internalType: "uint256", + name: "salt", + type: "uint256", + }, + { + internalType: "bytes32", + name: "conduitKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "totalOriginalConsiderationItems", + type: "uint256", + }, + ], + internalType: "struct OrderParameters", + name: "parameters", + type: "tuple", + }, + { + internalType: "uint120", + name: "numerator", + type: "uint120", + }, + { + internalType: "uint120", + name: "denominator", + type: "uint120", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + { + internalType: "bytes", + name: "extraData", + type: "bytes", + }, + ], + internalType: "struct AdvancedOrder[]", + name: "orders", + type: "tuple[]", + }, + { + components: [ + { + internalType: "uint256", + name: "orderIndex", + type: "uint256", + }, + { + internalType: "enum Side", + name: "side", + type: "uint8", + }, + { + internalType: "uint256", + name: "index", + type: "uint256", + }, + { + internalType: "uint256", + name: "identifier", + type: "uint256", + }, + { + internalType: "bytes32[]", + name: "criteriaProof", + type: "bytes32[]", + }, + ], + internalType: "struct CriteriaResolver[]", + name: "criteriaResolvers", + type: "tuple[]", + }, + { + components: [ + { + components: [ + { + internalType: "uint256", + name: "orderIndex", + type: "uint256", + }, + { + internalType: "uint256", + name: "itemIndex", + type: "uint256", + }, + ], + internalType: "struct FulfillmentComponent[]", + name: "offerComponents", + type: "tuple[]", + }, + { + components: [ + { + internalType: "uint256", + name: "orderIndex", + type: "uint256", + }, + { + internalType: "uint256", + name: "itemIndex", + type: "uint256", + }, + ], + internalType: "struct FulfillmentComponent[]", + name: "considerationComponents", + type: "tuple[]", + }, + ], + internalType: "struct Fulfillment[]", + name: "fulfillments", + type: "tuple[]", + }, + { + internalType: "address", + name: "recipient", + type: "address", + }, + ], + name: "matchAdvancedOrders", + outputs: [ + { + components: [ + { + components: [ + { + internalType: "enum ItemType", + name: "itemType", + type: "uint8", + }, + { + internalType: "address", + name: "token", + type: "address", + }, + { + internalType: "uint256", + name: "identifier", + type: "uint256", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + { + internalType: "address payable", + name: "recipient", + type: "address", + }, + ], + internalType: "struct ReceivedItem", + name: "item", + type: "tuple", + }, + { + internalType: "address", + name: "offerer", + type: "address", + }, + { + internalType: "bytes32", + name: "conduitKey", + type: "bytes32", + }, + ], + internalType: "struct Execution[]", + name: "executions", + type: "tuple[]", + }, + ], + stateMutability: "payable", + type: "function", + }, + { + inputs: [ + { + components: [ + { + components: [ + { + internalType: "address", + name: "offerer", + type: "address", + }, + { + internalType: "address", + name: "zone", + type: "address", + }, + { + components: [ + { + internalType: "enum ItemType", + name: "itemType", + type: "uint8", + }, + { + internalType: "address", + name: "token", + type: "address", + }, + { + internalType: "uint256", + name: "identifierOrCriteria", + type: "uint256", + }, + { + internalType: "uint256", + name: "startAmount", + type: "uint256", + }, + { + internalType: "uint256", + name: "endAmount", + type: "uint256", + }, + ], + internalType: "struct OfferItem[]", + name: "offer", + type: "tuple[]", + }, + { + components: [ + { + internalType: "enum ItemType", + name: "itemType", + type: "uint8", + }, + { + internalType: "address", + name: "token", + type: "address", + }, + { + internalType: "uint256", + name: "identifierOrCriteria", + type: "uint256", + }, + { + internalType: "uint256", + name: "startAmount", + type: "uint256", + }, + { + internalType: "uint256", + name: "endAmount", + type: "uint256", + }, + { + internalType: "address payable", + name: "recipient", + type: "address", + }, + ], + internalType: "struct ConsiderationItem[]", + name: "consideration", + type: "tuple[]", + }, + { + internalType: "enum OrderType", + name: "orderType", + type: "uint8", + }, + { + internalType: "uint256", + name: "startTime", + type: "uint256", + }, + { + internalType: "uint256", + name: "endTime", + type: "uint256", + }, + { + internalType: "bytes32", + name: "zoneHash", + type: "bytes32", + }, + { + internalType: "uint256", + name: "salt", + type: "uint256", + }, + { + internalType: "bytes32", + name: "conduitKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "totalOriginalConsiderationItems", + type: "uint256", + }, + ], + internalType: "struct OrderParameters", + name: "parameters", + type: "tuple", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + internalType: "struct Order[]", + name: "orders", + type: "tuple[]", + }, + { + components: [ + { + components: [ + { + internalType: "uint256", + name: "orderIndex", + type: "uint256", + }, + { + internalType: "uint256", + name: "itemIndex", + type: "uint256", + }, + ], + internalType: "struct FulfillmentComponent[]", + name: "offerComponents", + type: "tuple[]", + }, + { + components: [ + { + internalType: "uint256", + name: "orderIndex", + type: "uint256", + }, + { + internalType: "uint256", + name: "itemIndex", + type: "uint256", + }, + ], + internalType: "struct FulfillmentComponent[]", + name: "considerationComponents", + type: "tuple[]", + }, + ], + internalType: "struct Fulfillment[]", + name: "fulfillments", + type: "tuple[]", + }, + ], + name: "matchOrders", + outputs: [ + { + components: [ + { + components: [ + { + internalType: "enum ItemType", + name: "itemType", + type: "uint8", + }, + { + internalType: "address", + name: "token", + type: "address", + }, + { + internalType: "uint256", + name: "identifier", + type: "uint256", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + { + internalType: "address payable", + name: "recipient", + type: "address", + }, + ], + internalType: "struct ReceivedItem", + name: "item", + type: "tuple", + }, + { + internalType: "address", + name: "offerer", + type: "address", + }, + { + internalType: "bytes32", + name: "conduitKey", + type: "bytes32", + }, + ], + internalType: "struct Execution[]", + name: "executions", + type: "tuple[]", + }, + ], + stateMutability: "payable", + type: "function", + }, + { + inputs: [], + name: "name", + outputs: [ + { + internalType: "string", + name: "contractName", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + components: [ + { + components: [ + { + internalType: "address", + name: "offerer", + type: "address", + }, + { + internalType: "address", + name: "zone", + type: "address", + }, + { + components: [ + { + internalType: "enum ItemType", + name: "itemType", + type: "uint8", + }, + { + internalType: "address", + name: "token", + type: "address", + }, + { + internalType: "uint256", + name: "identifierOrCriteria", + type: "uint256", + }, + { + internalType: "uint256", + name: "startAmount", + type: "uint256", + }, + { + internalType: "uint256", + name: "endAmount", + type: "uint256", + }, + ], + internalType: "struct OfferItem[]", + name: "offer", + type: "tuple[]", + }, + { + components: [ + { + internalType: "enum ItemType", + name: "itemType", + type: "uint8", + }, + { + internalType: "address", + name: "token", + type: "address", + }, + { + internalType: "uint256", + name: "identifierOrCriteria", + type: "uint256", + }, + { + internalType: "uint256", + name: "startAmount", + type: "uint256", + }, + { + internalType: "uint256", + name: "endAmount", + type: "uint256", + }, + { + internalType: "address payable", + name: "recipient", + type: "address", + }, + ], + internalType: "struct ConsiderationItem[]", + name: "consideration", + type: "tuple[]", + }, + { + internalType: "enum OrderType", + name: "orderType", + type: "uint8", + }, + { + internalType: "uint256", + name: "startTime", + type: "uint256", + }, + { + internalType: "uint256", + name: "endTime", + type: "uint256", + }, + { + internalType: "bytes32", + name: "zoneHash", + type: "bytes32", + }, + { + internalType: "uint256", + name: "salt", + type: "uint256", + }, + { + internalType: "bytes32", + name: "conduitKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "totalOriginalConsiderationItems", + type: "uint256", + }, + ], + internalType: "struct OrderParameters", + name: "parameters", + type: "tuple", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + internalType: "struct Order[]", + name: "orders", + type: "tuple[]", + }, + ], + name: "validate", + outputs: [ + { + internalType: "bool", + name: "validated", + type: "bool", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, +]; +class ConsiderationInterface__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.ConsiderationInterface__factory = ConsiderationInterface__factory; +ConsiderationInterface__factory.abi = _abi; diff --git a/dist/types/factories/seaport-types/src/interfaces/index.d.ts b/dist/types/factories/seaport-types/src/interfaces/index.d.ts new file mode 100644 index 00000000..b2df2560 --- /dev/null +++ b/dist/types/factories/seaport-types/src/interfaces/index.d.ts @@ -0,0 +1,2 @@ +export { ConsiderationInterface__factory } from "./ConsiderationInterface__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/seaport-types/src/interfaces/index.d.ts.map b/dist/types/factories/seaport-types/src/interfaces/index.d.ts.map new file mode 100644 index 00000000..d2d729bf --- /dev/null +++ b/dist/types/factories/seaport-types/src/interfaces/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/seaport-types/src/interfaces/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,+BAA+B,EAAE,MAAM,mCAAmC,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/seaport-types/src/interfaces/index.js b/dist/types/factories/seaport-types/src/interfaces/index.js new file mode 100644 index 00000000..1ec1bab6 --- /dev/null +++ b/dist/types/factories/seaport-types/src/interfaces/index.js @@ -0,0 +1,5 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ConsiderationInterface__factory = void 0; +var ConsiderationInterface__factory_1 = require("./ConsiderationInterface__factory"); +Object.defineProperty(exports, "ConsiderationInterface__factory", { enumerable: true, get: function () { return ConsiderationInterface__factory_1.ConsiderationInterface__factory; } }); diff --git a/dist/types/index.d.ts b/dist/types/index.d.ts index 912208f3..42335e46 100644 --- a/dist/types/index.d.ts +++ b/dist/types/index.d.ts @@ -6,6 +6,8 @@ import type * as contracts from "./contracts"; export type { contracts }; import type * as dotCrypto from "./dot-crypto"; export type { dotCrypto }; +import type * as seaportTypes from "./seaport-types"; +export type { seaportTypes }; export * as factories from "./factories"; export type { BytesUtils } from "./@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils"; export { BytesUtils__factory } from "./factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils__factory"; @@ -305,6 +307,10 @@ export type { IUNSRegistry } from "./contracts/IUNSRegistry"; export { IUNSRegistry__factory } from "./factories/contracts/IUNSRegistry__factory"; export type { KeyStorage } from "./contracts/KeyStorage"; export { KeyStorage__factory } from "./factories/contracts/KeyStorage__factory"; +export type { ISeaportProxyBuyer } from "./contracts/marketplace/ISeaportProxyBuyer"; +export { ISeaportProxyBuyer__factory } from "./factories/contracts/marketplace/ISeaportProxyBuyer__factory"; +export type { SeaportProxyBuyer } from "./contracts/marketplace/SeaportProxyBuyer"; +export { SeaportProxyBuyer__factory } from "./factories/contracts/marketplace/SeaportProxyBuyer__factory"; export type { BaseForwarder } from "./contracts/metatx/BaseForwarder"; export { BaseForwarder__factory } from "./factories/contracts/metatx/BaseForwarder__factory"; export type { BaseRoutingForwarder } from "./contracts/metatx/BaseRoutingForwarder"; @@ -393,4 +399,6 @@ export type { FreeMinter } from "./dot-crypto/contracts/util/FreeMinter"; export { FreeMinter__factory } from "./factories/dot-crypto/contracts/util/FreeMinter__factory"; export type { SignatureUtil } from "./dot-crypto/contracts/util/SignatureUtil"; export { SignatureUtil__factory } from "./factories/dot-crypto/contracts/util/SignatureUtil__factory"; +export type { ConsiderationInterface } from "./seaport-types/src/interfaces/ConsiderationInterface"; +export { ConsiderationInterface__factory } from "./factories/seaport-types/src/interfaces/ConsiderationInterface__factory"; //# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/index.d.ts.map b/dist/types/index.d.ts.map index 11f846b9..9252b8f8 100644 --- a/dist/types/index.d.ts.map +++ b/dist/types/index.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../types/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../types/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/index.js b/dist/types/index.js index 0dfb1207..8b72a45a 100644 --- a/dist/types/index.js +++ b/dist/types/index.js @@ -26,7 +26,7 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.WhitelistAdminRole__factory = exports.MinterRole__factory = exports.NameWrapper__factory = exports.INameWrapperUpgrade__factory = exports.INameWrapper__factory = exports.IMetadataService__factory = exports.ERC1155Fuse__factory = exports.ERC20Recoverable__factory = exports.Root__factory = exports.Controllable__factory = exports.ReverseRegistrar__factory = exports.ReverseClaimer__factory = exports.IReverseRegistrar__factory = exports.ResolverBase__factory = exports.Resolver__factory = exports.PublicResolver__factory = exports.TextResolver__factory = exports.PubkeyResolver__factory = exports.NameResolver__factory = exports.IVersionableResolver__factory = exports.ITextResolver__factory = exports.IPubkeyResolver__factory = exports.InterfaceResolver__factory = exports.INameResolver__factory = exports.IInterfaceResolver__factory = exports.IExtendedResolver__factory = exports.IDNSZoneResolver__factory = exports.IDNSRecordResolver__factory = exports.IContentHashResolver__factory = exports.IAddrResolver__factory = exports.IAddressResolver__factory = exports.IABIResolver__factory = exports.DNSResolver__factory = exports.ContentHashResolver__factory = exports.AddrResolver__factory = exports.ABIResolver__factory = exports.Multicallable__factory = exports.IMulticallable__factory = exports.ENSRegistry__factory = exports.ENS__factory = exports.StablePriceOracle__factory = exports.AggregatorInterface__factory = exports.IPriceOracle__factory = exports.IETHRegistrarController__factory = exports.IBaseRegistrar__factory = exports.ETHRegistrarController__factory = exports.DummyOracle__factory = exports.BaseRegistrarImplementation__factory = exports.BytesUtils__factory = exports.factories = void 0; exports.Algorithm__factory = exports.Owned__factory = exports.DNSSECImpl__factory = exports.DNSSEC__factory = exports.DNSRegistrar__factory = exports.SHA256Digest__factory = exports.SHA1NSEC3Digest__factory = exports.SHA1Digest__factory = exports.RSASHA256Algorithm__factory = exports.DummyAlgorithm__factory = exports.IERC20__factory = exports.IERC20Metadata__factory = exports.ERC20__factory = exports.IERC1155Receiver__factory = exports.IERC1155__factory = exports.IERC1155MetadataURI__factory = exports.Ownable__factory = exports.MulticallUpgradeable__factory = exports.IERC165Upgradeable__factory = exports.ERC165Upgradeable__factory = exports.ContextUpgradeable__factory = exports.IERC721Upgradeable__factory = exports.IERC721ReceiverUpgradeable__factory = exports.IERC721MetadataUpgradeable__factory = exports.ERC721Upgradeable__factory = exports.IERC20Upgradeable__factory = exports.ERC1155PresetMinterPauserUpgradeable__factory = exports.IERC1155Upgradeable__factory = exports.IERC1155ReceiverUpgradeable__factory = exports.IERC1155MetadataURIUpgradeable__factory = exports.ERC1155PausableUpgradeable__factory = exports.ERC1155BurnableUpgradeable__factory = exports.ERC1155Upgradeable__factory = exports.ReentrancyGuardUpgradeable__factory = exports.PausableUpgradeable__factory = exports.Initializable__factory = exports.IERC1271Upgradeable__factory = exports.OwnableUpgradeable__factory = exports.IAccessControlUpgradeable__factory = exports.IAccessControlEnumerableUpgradeable__factory = exports.AccessControlUpgradeable__factory = exports.AccessControlEnumerableUpgradeable__factory = exports.IERC721Receiver__factory = exports.IERC721Metadata__factory = exports.IERC721__factory = exports.ERC721Burnable__factory = exports.ERC721__factory = exports.IERC165__factory = exports.ERC165__factory = exports.WhitelistedRole__factory = void 0; exports.KeyStorage__factory = exports.IUNSRegistry__factory = exports.IRootRegistry__factory = exports.IReverseRegistry__factory = exports.IRegistryReader__factory = exports.IRecordStorage__factory = exports.IRecordReader__factory = exports.IMintingManager__factory = exports.IERC1967__factory = exports.IDataReader__factory = exports.IAddressReader__factory = exports.UNSRegistryV07__factory = exports.ProxyReaderV04__factory = exports.IUNSRegistryV07__factory = exports.DotCoinBurner__factory = exports.ZilliqaRecover__factory = exports.IENSCustody__factory = exports.ENSCustody__factory = exports.IURIPrefixController__factory = exports.IResolver__factory = exports.IMintingController__factory = exports.ICNSRegistry__factory = exports.ChildRegistry__factory = exports.SimpleCheckpointManager__factory = exports.IRootChain__factory = exports.RootChainManagerStorage__factory = exports.RootChainManager__factory = exports.NativeMetaTransaction__factory = exports.ICheckpointManager__factory = exports.EIP712Base__factory = exports.MintableERC721Predicate__factory = exports.ITokenPredicate__factory = exports.AccessControlMixin__factory = exports.AccessControl__factory = exports.IStateSender__factory = exports.DummyStateSender__factory = exports.IRootChainManager__factory = exports.IMintableERC721__factory = exports.IChildToken__factory = exports.PriceOracle__factory = exports.LegacyETHRegistrarController__factory = exports.BaseRegistrar__factory = exports.LegacyENSRegistry__factory = exports.LegacyENS__factory = exports.TLDPublicSuffixList__factory = exports.SHA1__factory = exports.PublicSuffixList__factory = exports.NSEC3Digest__factory = exports.IDNSRegistrar__factory = exports.Digest__factory = void 0; -exports.SignatureUtil__factory = exports.FreeMinter__factory = exports.ControllerRole__factory = exports.BulkWhitelistedRole__factory = exports.IResolverReader__factory = exports.URIPrefixController__factory = exports.SignatureController__factory = exports.MintingController__factory = exports.ISignatureController__factory = exports.DomainZoneController__factory = exports.CNSRegistry__factory = exports.Pausable__factory = exports.MultiSend__factory = exports.ERC1271SimpleWallet__factory = exports.Blocklist__factory = exports.UNSRegistry__factory = exports.UNSOperator__factory = exports.RootRegistry__factory = exports.RecordStorage__factory = exports.ProxyReader__factory = exports.UNSRegistryMock__factory = exports.UNSRegistryForwarderMock__factory = exports.MintingManagerMock__factory = exports.MinterRoleMock__factory = exports.ERC721ReceiverMock__factory = exports.ERC721Mock__factory = exports.ERC2771RegistryContextMock__factory = exports.ERC2771ContextMock__factory = exports.ERC20UnsafeMock__factory = exports.ERC20Mock__factory = exports.ERC1155Mock__factory = exports.BaseRoutingForwarderMock__factory = exports.BaseForwarderMock__factory = exports.MintingManager__factory = exports.UNSRegistryForwarder__factory = exports.ResolverForwarder__factory = exports.MintingManagerForwarder__factory = exports.IForwarder__factory = exports.Forwarder__factory = exports.ERC2771RegistryContext__factory = exports.ERC2771Context__factory = exports.CNSRegistryForwarder__factory = exports.BaseRoutingForwarder__factory = exports.BaseForwarder__factory = void 0; +exports.ConsiderationInterface__factory = exports.SignatureUtil__factory = exports.FreeMinter__factory = exports.ControllerRole__factory = exports.BulkWhitelistedRole__factory = exports.IResolverReader__factory = exports.URIPrefixController__factory = exports.SignatureController__factory = exports.MintingController__factory = exports.ISignatureController__factory = exports.DomainZoneController__factory = exports.CNSRegistry__factory = exports.Pausable__factory = exports.MultiSend__factory = exports.ERC1271SimpleWallet__factory = exports.Blocklist__factory = exports.UNSRegistry__factory = exports.UNSOperator__factory = exports.RootRegistry__factory = exports.RecordStorage__factory = exports.ProxyReader__factory = exports.UNSRegistryMock__factory = exports.UNSRegistryForwarderMock__factory = exports.MintingManagerMock__factory = exports.MinterRoleMock__factory = exports.ERC721ReceiverMock__factory = exports.ERC721Mock__factory = exports.ERC2771RegistryContextMock__factory = exports.ERC2771ContextMock__factory = exports.ERC20UnsafeMock__factory = exports.ERC20Mock__factory = exports.ERC1155Mock__factory = exports.BaseRoutingForwarderMock__factory = exports.BaseForwarderMock__factory = exports.MintingManager__factory = exports.UNSRegistryForwarder__factory = exports.ResolverForwarder__factory = exports.MintingManagerForwarder__factory = exports.IForwarder__factory = exports.Forwarder__factory = exports.ERC2771RegistryContext__factory = exports.ERC2771Context__factory = exports.CNSRegistryForwarder__factory = exports.BaseRoutingForwarder__factory = exports.BaseForwarder__factory = exports.SeaportProxyBuyer__factory = exports.ISeaportProxyBuyer__factory = void 0; exports.factories = __importStar(require("./factories")); var BytesUtils__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils__factory"); Object.defineProperty(exports, "BytesUtils__factory", { enumerable: true, get: function () { return BytesUtils__factory_1.BytesUtils__factory; } }); @@ -326,6 +326,10 @@ var IUNSRegistry__factory_1 = require("./factories/contracts/IUNSRegistry__facto Object.defineProperty(exports, "IUNSRegistry__factory", { enumerable: true, get: function () { return IUNSRegistry__factory_1.IUNSRegistry__factory; } }); var KeyStorage__factory_1 = require("./factories/contracts/KeyStorage__factory"); Object.defineProperty(exports, "KeyStorage__factory", { enumerable: true, get: function () { return KeyStorage__factory_1.KeyStorage__factory; } }); +var ISeaportProxyBuyer__factory_1 = require("./factories/contracts/marketplace/ISeaportProxyBuyer__factory"); +Object.defineProperty(exports, "ISeaportProxyBuyer__factory", { enumerable: true, get: function () { return ISeaportProxyBuyer__factory_1.ISeaportProxyBuyer__factory; } }); +var SeaportProxyBuyer__factory_1 = require("./factories/contracts/marketplace/SeaportProxyBuyer__factory"); +Object.defineProperty(exports, "SeaportProxyBuyer__factory", { enumerable: true, get: function () { return SeaportProxyBuyer__factory_1.SeaportProxyBuyer__factory; } }); var BaseForwarder__factory_1 = require("./factories/contracts/metatx/BaseForwarder__factory"); Object.defineProperty(exports, "BaseForwarder__factory", { enumerable: true, get: function () { return BaseForwarder__factory_1.BaseForwarder__factory; } }); var BaseRoutingForwarder__factory_1 = require("./factories/contracts/metatx/BaseRoutingForwarder__factory"); @@ -414,3 +418,5 @@ var FreeMinter__factory_1 = require("./factories/dot-crypto/contracts/util/FreeM Object.defineProperty(exports, "FreeMinter__factory", { enumerable: true, get: function () { return FreeMinter__factory_1.FreeMinter__factory; } }); var SignatureUtil__factory_1 = require("./factories/dot-crypto/contracts/util/SignatureUtil__factory"); Object.defineProperty(exports, "SignatureUtil__factory", { enumerable: true, get: function () { return SignatureUtil__factory_1.SignatureUtil__factory; } }); +var ConsiderationInterface__factory_1 = require("./factories/seaport-types/src/interfaces/ConsiderationInterface__factory"); +Object.defineProperty(exports, "ConsiderationInterface__factory", { enumerable: true, get: function () { return ConsiderationInterface__factory_1.ConsiderationInterface__factory; } }); diff --git a/dist/types/seaport-types/index.d.ts b/dist/types/seaport-types/index.d.ts new file mode 100644 index 00000000..11d0df31 --- /dev/null +++ b/dist/types/seaport-types/index.d.ts @@ -0,0 +1,3 @@ +import type * as src from "./src"; +export type { src }; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/seaport-types/index.d.ts.map b/dist/types/seaport-types/index.d.ts.map new file mode 100644 index 00000000..8f6a0b06 --- /dev/null +++ b/dist/types/seaport-types/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../types/seaport-types/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,GAAG,MAAM,OAAO,CAAC;AAClC,YAAY,EAAE,GAAG,EAAE,CAAC"} \ No newline at end of file diff --git a/dist/types/seaport-types/index.js b/dist/types/seaport-types/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/seaport-types/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/seaport-types/src/index.d.ts b/dist/types/seaport-types/src/index.d.ts new file mode 100644 index 00000000..2c1195f8 --- /dev/null +++ b/dist/types/seaport-types/src/index.d.ts @@ -0,0 +1,3 @@ +import type * as interfaces from "./interfaces"; +export type { interfaces }; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/seaport-types/src/index.d.ts.map b/dist/types/seaport-types/src/index.d.ts.map new file mode 100644 index 00000000..d97ab511 --- /dev/null +++ b/dist/types/seaport-types/src/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../types/seaport-types/src/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,UAAU,MAAM,cAAc,CAAC;AAChD,YAAY,EAAE,UAAU,EAAE,CAAC"} \ No newline at end of file diff --git a/dist/types/seaport-types/src/index.js b/dist/types/seaport-types/src/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/seaport-types/src/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/seaport-types/src/interfaces/ConsiderationInterface.d.ts b/dist/types/seaport-types/src/interfaces/ConsiderationInterface.d.ts new file mode 100644 index 00000000..13b0f1c7 --- /dev/null +++ b/dist/types/seaport-types/src/interfaces/ConsiderationInterface.d.ts @@ -0,0 +1,604 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../common"; +export declare type OfferItemStruct = { + itemType: BigNumberish; + token: AddressLike; + identifierOrCriteria: BigNumberish; + startAmount: BigNumberish; + endAmount: BigNumberish; +}; +export declare type OfferItemStructOutput = [ + itemType: bigint, + token: string, + identifierOrCriteria: bigint, + startAmount: bigint, + endAmount: bigint +] & { + itemType: bigint; + token: string; + identifierOrCriteria: bigint; + startAmount: bigint; + endAmount: bigint; +}; +export declare type ConsiderationItemStruct = { + itemType: BigNumberish; + token: AddressLike; + identifierOrCriteria: BigNumberish; + startAmount: BigNumberish; + endAmount: BigNumberish; + recipient: AddressLike; +}; +export declare type ConsiderationItemStructOutput = [ + itemType: bigint, + token: string, + identifierOrCriteria: bigint, + startAmount: bigint, + endAmount: bigint, + recipient: string +] & { + itemType: bigint; + token: string; + identifierOrCriteria: bigint; + startAmount: bigint; + endAmount: bigint; + recipient: string; +}; +export declare type OrderComponentsStruct = { + offerer: AddressLike; + zone: AddressLike; + offer: OfferItemStruct[]; + consideration: ConsiderationItemStruct[]; + orderType: BigNumberish; + startTime: BigNumberish; + endTime: BigNumberish; + zoneHash: BytesLike; + salt: BigNumberish; + conduitKey: BytesLike; + counter: BigNumberish; +}; +export declare type OrderComponentsStructOutput = [ + offerer: string, + zone: string, + offer: OfferItemStructOutput[], + consideration: ConsiderationItemStructOutput[], + orderType: bigint, + startTime: bigint, + endTime: bigint, + zoneHash: string, + salt: bigint, + conduitKey: string, + counter: bigint +] & { + offerer: string; + zone: string; + offer: OfferItemStructOutput[]; + consideration: ConsiderationItemStructOutput[]; + orderType: bigint; + startTime: bigint; + endTime: bigint; + zoneHash: string; + salt: bigint; + conduitKey: string; + counter: bigint; +}; +export declare type OrderParametersStruct = { + offerer: AddressLike; + zone: AddressLike; + offer: OfferItemStruct[]; + consideration: ConsiderationItemStruct[]; + orderType: BigNumberish; + startTime: BigNumberish; + endTime: BigNumberish; + zoneHash: BytesLike; + salt: BigNumberish; + conduitKey: BytesLike; + totalOriginalConsiderationItems: BigNumberish; +}; +export declare type OrderParametersStructOutput = [ + offerer: string, + zone: string, + offer: OfferItemStructOutput[], + consideration: ConsiderationItemStructOutput[], + orderType: bigint, + startTime: bigint, + endTime: bigint, + zoneHash: string, + salt: bigint, + conduitKey: string, + totalOriginalConsiderationItems: bigint +] & { + offerer: string; + zone: string; + offer: OfferItemStructOutput[]; + consideration: ConsiderationItemStructOutput[]; + orderType: bigint; + startTime: bigint; + endTime: bigint; + zoneHash: string; + salt: bigint; + conduitKey: string; + totalOriginalConsiderationItems: bigint; +}; +export declare type AdvancedOrderStruct = { + parameters: OrderParametersStruct; + numerator: BigNumberish; + denominator: BigNumberish; + signature: BytesLike; + extraData: BytesLike; +}; +export declare type AdvancedOrderStructOutput = [ + parameters: OrderParametersStructOutput, + numerator: bigint, + denominator: bigint, + signature: string, + extraData: string +] & { + parameters: OrderParametersStructOutput; + numerator: bigint; + denominator: bigint; + signature: string; + extraData: string; +}; +export declare type CriteriaResolverStruct = { + orderIndex: BigNumberish; + side: BigNumberish; + index: BigNumberish; + identifier: BigNumberish; + criteriaProof: BytesLike[]; +}; +export declare type CriteriaResolverStructOutput = [ + orderIndex: bigint, + side: bigint, + index: bigint, + identifier: bigint, + criteriaProof: string[] +] & { + orderIndex: bigint; + side: bigint; + index: bigint; + identifier: bigint; + criteriaProof: string[]; +}; +export declare type FulfillmentComponentStruct = { + orderIndex: BigNumberish; + itemIndex: BigNumberish; +}; +export declare type FulfillmentComponentStructOutput = [ + orderIndex: bigint, + itemIndex: bigint +] & { + orderIndex: bigint; + itemIndex: bigint; +}; +export declare type ReceivedItemStruct = { + itemType: BigNumberish; + token: AddressLike; + identifier: BigNumberish; + amount: BigNumberish; + recipient: AddressLike; +}; +export declare type ReceivedItemStructOutput = [ + itemType: bigint, + token: string, + identifier: bigint, + amount: bigint, + recipient: string +] & { + itemType: bigint; + token: string; + identifier: bigint; + amount: bigint; + recipient: string; +}; +export declare type ExecutionStruct = { + item: ReceivedItemStruct; + offerer: AddressLike; + conduitKey: BytesLike; +}; +export declare type ExecutionStructOutput = [ + item: ReceivedItemStructOutput, + offerer: string, + conduitKey: string +] & { + item: ReceivedItemStructOutput; + offerer: string; + conduitKey: string; +}; +export declare type OrderStruct = { + parameters: OrderParametersStruct; + signature: BytesLike; +}; +export declare type OrderStructOutput = [ + parameters: OrderParametersStructOutput, + signature: string +] & { + parameters: OrderParametersStructOutput; + signature: string; +}; +export declare type AdditionalRecipientStruct = { + amount: BigNumberish; + recipient: AddressLike; +}; +export declare type AdditionalRecipientStructOutput = [ + amount: bigint, + recipient: string +] & { + amount: bigint; + recipient: string; +}; +export declare type BasicOrderParametersStruct = { + considerationToken: AddressLike; + considerationIdentifier: BigNumberish; + considerationAmount: BigNumberish; + offerer: AddressLike; + zone: AddressLike; + offerToken: AddressLike; + offerIdentifier: BigNumberish; + offerAmount: BigNumberish; + basicOrderType: BigNumberish; + startTime: BigNumberish; + endTime: BigNumberish; + zoneHash: BytesLike; + salt: BigNumberish; + offererConduitKey: BytesLike; + fulfillerConduitKey: BytesLike; + totalOriginalAdditionalRecipients: BigNumberish; + additionalRecipients: AdditionalRecipientStruct[]; + signature: BytesLike; +}; +export declare type BasicOrderParametersStructOutput = [ + considerationToken: string, + considerationIdentifier: bigint, + considerationAmount: bigint, + offerer: string, + zone: string, + offerToken: string, + offerIdentifier: bigint, + offerAmount: bigint, + basicOrderType: bigint, + startTime: bigint, + endTime: bigint, + zoneHash: string, + salt: bigint, + offererConduitKey: string, + fulfillerConduitKey: string, + totalOriginalAdditionalRecipients: bigint, + additionalRecipients: AdditionalRecipientStructOutput[], + signature: string +] & { + considerationToken: string; + considerationIdentifier: bigint; + considerationAmount: bigint; + offerer: string; + zone: string; + offerToken: string; + offerIdentifier: bigint; + offerAmount: bigint; + basicOrderType: bigint; + startTime: bigint; + endTime: bigint; + zoneHash: string; + salt: bigint; + offererConduitKey: string; + fulfillerConduitKey: string; + totalOriginalAdditionalRecipients: bigint; + additionalRecipients: AdditionalRecipientStructOutput[]; + signature: string; +}; +export declare type FulfillmentStruct = { + offerComponents: FulfillmentComponentStruct[]; + considerationComponents: FulfillmentComponentStruct[]; +}; +export declare type FulfillmentStructOutput = [ + offerComponents: FulfillmentComponentStructOutput[], + considerationComponents: FulfillmentComponentStructOutput[] +] & { + offerComponents: FulfillmentComponentStructOutput[]; + considerationComponents: FulfillmentComponentStructOutput[]; +}; +export interface ConsiderationInterfaceInterface extends Interface { + getFunction(nameOrSignature: "cancel" | "fulfillAdvancedOrder" | "fulfillAvailableAdvancedOrders" | "fulfillAvailableOrders" | "fulfillBasicOrder" | "fulfillBasicOrder_efficient_6GL6yc" | "fulfillOrder" | "getContractOffererNonce" | "getCounter" | "getOrderHash" | "getOrderStatus" | "incrementCounter" | "information" | "matchAdvancedOrders" | "matchOrders" | "name" | "validate"): FunctionFragment; + encodeFunctionData(functionFragment: "cancel", values: [OrderComponentsStruct[]]): string; + encodeFunctionData(functionFragment: "fulfillAdvancedOrder", values: [ + AdvancedOrderStruct, + CriteriaResolverStruct[], + BytesLike, + AddressLike + ]): string; + encodeFunctionData(functionFragment: "fulfillAvailableAdvancedOrders", values: [ + AdvancedOrderStruct[], + CriteriaResolverStruct[], + FulfillmentComponentStruct[][], + FulfillmentComponentStruct[][], + BytesLike, + AddressLike, + BigNumberish + ]): string; + encodeFunctionData(functionFragment: "fulfillAvailableOrders", values: [ + OrderStruct[], + FulfillmentComponentStruct[][], + FulfillmentComponentStruct[][], + BytesLike, + BigNumberish + ]): string; + encodeFunctionData(functionFragment: "fulfillBasicOrder", values: [BasicOrderParametersStruct]): string; + encodeFunctionData(functionFragment: "fulfillBasicOrder_efficient_6GL6yc", values: [BasicOrderParametersStruct]): string; + encodeFunctionData(functionFragment: "fulfillOrder", values: [OrderStruct, BytesLike]): string; + encodeFunctionData(functionFragment: "getContractOffererNonce", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "getCounter", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "getOrderHash", values: [OrderComponentsStruct]): string; + encodeFunctionData(functionFragment: "getOrderStatus", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "incrementCounter", values?: undefined): string; + encodeFunctionData(functionFragment: "information", values?: undefined): string; + encodeFunctionData(functionFragment: "matchAdvancedOrders", values: [ + AdvancedOrderStruct[], + CriteriaResolverStruct[], + FulfillmentStruct[], + AddressLike + ]): string; + encodeFunctionData(functionFragment: "matchOrders", values: [OrderStruct[], FulfillmentStruct[]]): string; + encodeFunctionData(functionFragment: "name", values?: undefined): string; + encodeFunctionData(functionFragment: "validate", values: [OrderStruct[]]): string; + decodeFunctionResult(functionFragment: "cancel", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "fulfillAdvancedOrder", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "fulfillAvailableAdvancedOrders", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "fulfillAvailableOrders", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "fulfillBasicOrder", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "fulfillBasicOrder_efficient_6GL6yc", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "fulfillOrder", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getContractOffererNonce", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getCounter", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getOrderHash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getOrderStatus", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "incrementCounter", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "information", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "matchAdvancedOrders", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "matchOrders", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "validate", data: BytesLike): Result; +} +export interface ConsiderationInterface extends BaseContract { + connect(runner?: ContractRunner | null): ConsiderationInterface; + waitForDeployment(): Promise; + interface: ConsiderationInterfaceInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + cancel: TypedContractMethod<[ + orders: OrderComponentsStruct[] + ], [ + boolean + ], "nonpayable">; + fulfillAdvancedOrder: TypedContractMethod<[ + advancedOrder: AdvancedOrderStruct, + criteriaResolvers: CriteriaResolverStruct[], + fulfillerConduitKey: BytesLike, + recipient: AddressLike + ], [ + boolean + ], "payable">; + fulfillAvailableAdvancedOrders: TypedContractMethod<[ + advancedOrders: AdvancedOrderStruct[], + criteriaResolvers: CriteriaResolverStruct[], + offerFulfillments: FulfillmentComponentStruct[][], + considerationFulfillments: FulfillmentComponentStruct[][], + fulfillerConduitKey: BytesLike, + recipient: AddressLike, + maximumFulfilled: BigNumberish + ], [ + [ + boolean[], + ExecutionStructOutput[] + ] & { + availableOrders: boolean[]; + executions: ExecutionStructOutput[]; + } + ], "payable">; + fulfillAvailableOrders: TypedContractMethod<[ + orders: OrderStruct[], + offerFulfillments: FulfillmentComponentStruct[][], + considerationFulfillments: FulfillmentComponentStruct[][], + fulfillerConduitKey: BytesLike, + maximumFulfilled: BigNumberish + ], [ + [ + boolean[], + ExecutionStructOutput[] + ] & { + availableOrders: boolean[]; + executions: ExecutionStructOutput[]; + } + ], "payable">; + fulfillBasicOrder: TypedContractMethod<[ + parameters: BasicOrderParametersStruct + ], [ + boolean + ], "payable">; + fulfillBasicOrder_efficient_6GL6yc: TypedContractMethod<[ + parameters: BasicOrderParametersStruct + ], [ + boolean + ], "payable">; + fulfillOrder: TypedContractMethod<[ + order: OrderStruct, + fulfillerConduitKey: BytesLike + ], [ + boolean + ], "payable">; + getContractOffererNonce: TypedContractMethod<[ + contractOfferer: AddressLike + ], [ + bigint + ], "view">; + getCounter: TypedContractMethod<[offerer: AddressLike], [bigint], "view">; + getOrderHash: TypedContractMethod<[ + order: OrderComponentsStruct + ], [ + string + ], "view">; + getOrderStatus: TypedContractMethod<[ + orderHash: BytesLike + ], [ + [ + boolean, + boolean, + bigint, + bigint + ] & { + isValidated: boolean; + isCancelled: boolean; + totalFilled: bigint; + totalSize: bigint; + } + ], "view">; + incrementCounter: TypedContractMethod<[], [bigint], "nonpayable">; + information: TypedContractMethod<[ + ], [ + [ + string, + string, + string + ] & { + version: string; + domainSeparator: string; + conduitController: string; + } + ], "view">; + matchAdvancedOrders: TypedContractMethod<[ + orders: AdvancedOrderStruct[], + criteriaResolvers: CriteriaResolverStruct[], + fulfillments: FulfillmentStruct[], + recipient: AddressLike + ], [ + ExecutionStructOutput[] + ], "payable">; + matchOrders: TypedContractMethod<[ + orders: OrderStruct[], + fulfillments: FulfillmentStruct[] + ], [ + ExecutionStructOutput[] + ], "payable">; + name: TypedContractMethod<[], [string], "view">; + validate: TypedContractMethod<[ + orders: OrderStruct[] + ], [ + boolean + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "cancel"): TypedContractMethod<[ + orders: OrderComponentsStruct[] + ], [ + boolean + ], "nonpayable">; + getFunction(nameOrSignature: "fulfillAdvancedOrder"): TypedContractMethod<[ + advancedOrder: AdvancedOrderStruct, + criteriaResolvers: CriteriaResolverStruct[], + fulfillerConduitKey: BytesLike, + recipient: AddressLike + ], [ + boolean + ], "payable">; + getFunction(nameOrSignature: "fulfillAvailableAdvancedOrders"): TypedContractMethod<[ + advancedOrders: AdvancedOrderStruct[], + criteriaResolvers: CriteriaResolverStruct[], + offerFulfillments: FulfillmentComponentStruct[][], + considerationFulfillments: FulfillmentComponentStruct[][], + fulfillerConduitKey: BytesLike, + recipient: AddressLike, + maximumFulfilled: BigNumberish + ], [ + [ + boolean[], + ExecutionStructOutput[] + ] & { + availableOrders: boolean[]; + executions: ExecutionStructOutput[]; + } + ], "payable">; + getFunction(nameOrSignature: "fulfillAvailableOrders"): TypedContractMethod<[ + orders: OrderStruct[], + offerFulfillments: FulfillmentComponentStruct[][], + considerationFulfillments: FulfillmentComponentStruct[][], + fulfillerConduitKey: BytesLike, + maximumFulfilled: BigNumberish + ], [ + [ + boolean[], + ExecutionStructOutput[] + ] & { + availableOrders: boolean[]; + executions: ExecutionStructOutput[]; + } + ], "payable">; + getFunction(nameOrSignature: "fulfillBasicOrder"): TypedContractMethod<[ + parameters: BasicOrderParametersStruct + ], [ + boolean + ], "payable">; + getFunction(nameOrSignature: "fulfillBasicOrder_efficient_6GL6yc"): TypedContractMethod<[ + parameters: BasicOrderParametersStruct + ], [ + boolean + ], "payable">; + getFunction(nameOrSignature: "fulfillOrder"): TypedContractMethod<[ + order: OrderStruct, + fulfillerConduitKey: BytesLike + ], [ + boolean + ], "payable">; + getFunction(nameOrSignature: "getContractOffererNonce"): TypedContractMethod<[contractOfferer: AddressLike], [bigint], "view">; + getFunction(nameOrSignature: "getCounter"): TypedContractMethod<[offerer: AddressLike], [bigint], "view">; + getFunction(nameOrSignature: "getOrderHash"): TypedContractMethod<[order: OrderComponentsStruct], [string], "view">; + getFunction(nameOrSignature: "getOrderStatus"): TypedContractMethod<[ + orderHash: BytesLike + ], [ + [ + boolean, + boolean, + bigint, + bigint + ] & { + isValidated: boolean; + isCancelled: boolean; + totalFilled: bigint; + totalSize: bigint; + } + ], "view">; + getFunction(nameOrSignature: "incrementCounter"): TypedContractMethod<[], [bigint], "nonpayable">; + getFunction(nameOrSignature: "information"): TypedContractMethod<[ + ], [ + [ + string, + string, + string + ] & { + version: string; + domainSeparator: string; + conduitController: string; + } + ], "view">; + getFunction(nameOrSignature: "matchAdvancedOrders"): TypedContractMethod<[ + orders: AdvancedOrderStruct[], + criteriaResolvers: CriteriaResolverStruct[], + fulfillments: FulfillmentStruct[], + recipient: AddressLike + ], [ + ExecutionStructOutput[] + ], "payable">; + getFunction(nameOrSignature: "matchOrders"): TypedContractMethod<[ + orders: OrderStruct[], + fulfillments: FulfillmentStruct[] + ], [ + ExecutionStructOutput[] + ], "payable">; + getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "validate"): TypedContractMethod<[orders: OrderStruct[]], [boolean], "nonpayable">; + filters: {}; +} +//# sourceMappingURL=ConsiderationInterface.d.ts.map \ No newline at end of file diff --git a/dist/types/seaport-types/src/interfaces/ConsiderationInterface.d.ts.map b/dist/types/seaport-types/src/interfaces/ConsiderationInterface.d.ts.map new file mode 100644 index 00000000..8a7369fd --- /dev/null +++ b/dist/types/seaport-types/src/interfaces/ConsiderationInterface.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ConsiderationInterface.d.ts","sourceRoot":"","sources":["../../../../../types/seaport-types/src/interfaces/ConsiderationInterface.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/seaport-types/src/interfaces/ConsiderationInterface.js b/dist/types/seaport-types/src/interfaces/ConsiderationInterface.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/seaport-types/src/interfaces/ConsiderationInterface.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/seaport-types/src/interfaces/index.d.ts b/dist/types/seaport-types/src/interfaces/index.d.ts new file mode 100644 index 00000000..f91e0267 --- /dev/null +++ b/dist/types/seaport-types/src/interfaces/index.d.ts @@ -0,0 +1,2 @@ +export type { ConsiderationInterface } from "./ConsiderationInterface"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/seaport-types/src/interfaces/index.d.ts.map b/dist/types/seaport-types/src/interfaces/index.d.ts.map new file mode 100644 index 00000000..093abbd7 --- /dev/null +++ b/dist/types/seaport-types/src/interfaces/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/seaport-types/src/interfaces/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC"} \ No newline at end of file diff --git a/dist/types/seaport-types/src/interfaces/index.js b/dist/types/seaport-types/src/interfaces/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/seaport-types/src/interfaces/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/hardhat.config.ts b/hardhat.config.ts index 471394d9..e7a3530f 100644 --- a/hardhat.config.ts +++ b/hardhat.config.ts @@ -118,6 +118,16 @@ const config: HardhatUserConfig = { }, }, }, + { + version: '0.8.24', + settings: { + ...settings, + metadata: { + bytecodeHash: 'none', + }, + evmVersion: 'cancun', + }, + }, ], }, paths: { @@ -128,7 +138,7 @@ const config: HardhatUserConfig = { hardhat: { blockGasLimit: 10000000, initialBaseFeePerGas: 0, - hardfork: 'merge', + hardfork: 'cancun', }, localhost: { url: 'http://localhost:8545', diff --git a/package.json b/package.json index 1f7334bd..b9f574fc 100644 --- a/package.json +++ b/package.json @@ -43,6 +43,7 @@ "@nomicfoundation/hardhat-ethers": "^3.0.0", "@nomicfoundation/hardhat-verify": "^1.1.0", "@nomiclabs/hardhat-solhint": "^3.0.1", + "@opensea/seaport-js": "^4.0.0", "@openzeppelin/contracts-upgradeable": "^4.7.3", "@openzeppelin/hardhat-upgrades": "^2.0.0", "@openzeppelin/upgrades-core": "^1.32.5", @@ -74,7 +75,7 @@ "ethereumjs-common": "^1.5.2", "ethereumjs-tx": "^1.3.7", "ethereumjs-util": "^7.1.0", - "ethers": "^6.1.0", + "ethers": "^6.11.1", "hardhat": "~2.20.0", "hardhat-abi-exporter": "^2.2.1", "hardhat-contract-sizer": "~2.6.0", @@ -86,6 +87,8 @@ "mocha": "^10.0.0", "prettier": "^2.3.0", "prettier-plugin-solidity": "^1.3.1", + "seaport-core": "1.6.4", + "seaport-types": "1.6.3", "solhint": "^3.3.7", "solidity-coverage": "^0.8.4", "tar": "^6.1.9", diff --git a/sandbox/db.tgz b/sandbox/db.tgz index 50cebf3e5c6c2598d11c1cdaafd376017ff29d9a..994cfa75d94c3c1914f6ab86653b640191f43f94 100644 GIT binary patch literal 542776 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 z zfJV{A*x+*6bUu1oBN@r>dgbvby)brfzbd=@?wOmE4f8b?3K>QG319Tti6M^moDy`w z81qeGu2!({``J0*6{8$VcHQ@L*%U}96q`;oEp3dinxpkcnGVDyp|;!&S|4H2^#A4n z<>-?qByIsS;&Mu|+V-AY1^MW+@Ex;I z<%fTb#pg9bSvi=8j3#QuDY*%_7i~eF_9)a}0t*&03_uYLEa$+#bS9~u#Q1fxvMMA? zD~{`{d=8PI>|nHhw2uVS8+Ur6ar~r&DO}VT|NWS<)HeBi?3UfDH23gTKCN`;Sg484 zesOxV34rf~QE*G=31~bu<@+hZwOP|McCAM$PHOnJeyqD*^yCIddD+TI+{Wlbllpq? z^Pgc}N1X8_v!&`}sLT<6xzTS{`x#AdRsSVafh*eqB31yz1Ak(`1L9H4YgfaWECd9N zwyY1lOJn`y^S~nDQM(B)grd6!3LYKzF=(!{xe=ec5&G_Tb)y(2MOg}=dpWu9SycxX zz)0cV&rxhy73jp4Z|dw_xrxcay@W$SA$vJd?2tSsB*39_8{k~*r~(TnpXlDc)@I~I zZ0Zd2tJ@AKJDve{2~YC+hp~7w{<>lI zyOUS$cVw(?$IWQ%Mac;_`*Gt#czy)+b%sAGaWx!Le+2FCac3?>a$j)ZH;(Nupkdq4 z$N(rQ8@J^#X~-r42QWUE&Fu^@j!fV|Gf~kDDD#F0VnNuZx^tnG3Tv>yb+@RKT{8(| zV1Xhrv$=8&CNTp(zC@kh494I=q9ph796;cq4q^xjI)52koEU+HmuZh9{r6Gfd5Gtn zcqZH<>^;>V1qD7FPBb21m7(e?8hDPR0yClvfVEHAvchbRa6Lm1{m$yS1y4q>i+m?K zBOF1TP-#ziTQkd%qj zrJGIC@-v8%6?Ii7&g`-ci1PS$=Gsn-_LhGr40R;9lXpbRR`%nPaUKym4_Ly4E@p%;QUo@PM`z_N=;x(lTyFm#p65ug7hW3LTA`!iSu|aYKV++5{TsyArgzjA+10o-n7ikLb(|K6$U8#_=rmU`TwpFU6;(O9EWhqdDLN9xhQa{Iy0o)VEfc zW>1;$?4xaq_$nVgsoeF4Y=rWM6Eu%!1wN7JoxBzr{{1=ZQ0XBxDPJ}n>~JabkNUx6 z0#`)rGMFGiVp;S|3z>DHlTgo>e;I0jhwT~3RaIvW7^?!(et_sPsZ0m{pkAF^wxP$- zr)u`nmbEw&-|XFEyBypWug$|p=O`cHDA{U3snh?)+BwFE61;1EY}>YH&e*oj*tTus zjBVStZQHhO@7#Yj+2m%E{jm2-r@B&|w+mgJym{*Plq@eu*ov2|J3bH3yg1^>88_y1 zn%jOR&wDenapmBwJxuj3eQ$dX{1I^~j1If#wi;%%|N8E+m&RExs8`GV5ST7H7x{!P zao6u6#Q>(@#JDaq{#x#Fw0IklKYX=5eFkw1u(ik2aQkQzfb#E zW{(w4e$_dz@_~!*B;ZF=M;4~Q>Ya7GRTMQcXA<`TA9E%~6ZY5Qgt(jAxe}NceeCyJ zSTxSvEGN)M>g)v>3%goo5MaV4DVVl_1svmfs)$?>zDeI^HwEe@Hj=^T^9GF{T>_5g z*(%YqjGI1R3Gp*ZbX%GO`$xmMKv_Fy1A^s`ZccJ->wgVdy*dy>qY=Cnc(eS-;6dL-v8&X zJ26pK*sM>u5j(8V$Y79Cj6|Z$gQ!nUkaCTLLpP(mT7yO-f#YG(h~U4`^U(s8yWI>8 zoafQ}?>S9jh%Ej3KkxbYOtH*KMkD*=&(VD2vbIKkZHS&I|0GMOnSjnhc*4afD+prF zYsJj>#WbX9#VUqk8bkCK2>2eOAsSZ-7X(HqT<*Q7;J?Da6KrqUxpx`m5l5ft4qFtu zB7lnOwuk0ZZN>shX&}r|yK4h@+TlR3Y2(@FuSx7%wE>f#RBHRhbAkTUWqFCEz_x`7 z8IbsM@G!B1OV7L0fVCfwfWXnF%AyBY&k|+>#XwTq1-NxX$eQJ24Esqy@0z|tdFnz1 zB&U;jujfqMiNQaX6xOCmDl82wxQA z6+@lI<1`~IW478R^S;_pgK-8>X31O2LBpUWLyESi5ny8*5aA_Dhp6=@>^j9WhEoc+ z7zt|O1xuL->D|U2%^189+jVoZ4hojbQlbKR%A-jEc@hi&-y-AHgOk!jJnrb_0@g!@ zv{|7oz%OPvU{>s z7pCqsa>T99W0g?Xex>1P_{rZ%<3*i-Q>)w}`9~j5NQg=53*u5bTjmlMF>vEj!X_>u zo>m4oXcB4xgH}N21V7GM@i7b{5G#`Ak1DAzO6!n;PL{B9LxoHR_44y>N{AzTLY&p#^B&253M?S>g4v$ChxbweigakBCeS>@;DYHbF+?LO)2B;?4 z%RH3dqqs4sGYtCqLJ%=h*g)KJDWG#1{nuV?4 z03g*%9j;vmbt;8m?mcpd8;heIjm-*%v$d*QEdx0wnO9z#c_`h7%$XI!AVlQA%7DG7 zLhK`r@b}kiI^hOcR{KeXpukXB5dbfgNrK(xkA;CD;L$mdmMSTBtt5Tv0oV zK<)4#N!~Y$s04;65~q*MqZE*!pijo%A59{$R37zlt=Qs-^hi-%CG*szf%NKAHQdsG zz%rQw5Y}yLfO`>O?ypEY~4rv#lTXp4X5mQzWm?2B~FYxc9Kf3HPPP0jL0;}s767@79a-xVcWxyeUwQv=TVRdfmDwn=-}Ybzzz1IL719FRH%uo~vL2=nF7HzEkg2KV zh}2Eg)6y<6&y!@B)|+GRMD)|m#`o~fnjKh@N{it=8sNNo)8akf6fJ;OV1mx(1TIA5 zb`B^)=jQobP3wlN8fLdIv06)bc9A$MseQ7xm2pg+``$&H&v)kQ9>Vicc@DgZpmQVS zZy#l`)EYE1Uky#6J!DC{ih+?&Yn0~W#mMjHEb1f)%cHBmh7)ZM{o$`G#{|rm^xq>& zn@PraF;SrWm)4DBA;5I6r%jAEe>s;vZB|*_KCQsA^c1fWX%|b($S;?KkwzZyT!K9z zRegeCeLe~jH#~pE7h@n1S>Qj4^rg3@nKp(XN{Ufi zc7hY+CZ+a5tE<*ps^-$4DVDRF898vmInBwfZb^P{|4%M4tAf^`Qnp2tl)amlkP*^d zZU#?tx_4U>eNq(vC7EzUBquu7eOzK!<68~I74|;F7TV$B+Sb==$^LOtBjy?O-8jmXdUDJ4VRpUJ)UyPrUJt(p4BA;?;_2mEv}KG^z2XP~(PpJ2)5 zi8y`EWVAU@(byW02`O6b&i(z@?+&9(> zj1zRwRG{|TeDUbXIIj!q7Fn=UZnYO~&P-A<0Cg$_p?8B9tX2RamI#tn7%kL{1|m{; zbr(Jh_&Zh_3CTy&cNk123U>T~rAKqC&Nqls#?P+}73_;V$;QGDVnI(X zmi~QdvX=qFi-$4^Q5sXde+~!IQY%!^54OAx&yA#*Mjjj#FR-BZ07}`Ylx`tBP8!OG zLZ1e0gD974;BKDZ^&h6fe_fvVT?uG`olG%8_@6MV`E%c4Rv_};^_IYicDV*n4Sp|A z{H#8?$I`1*@Ns;BGA)Pv9<}3C7N7?IHu_3ZL!^b6=~V8OvbrHX;6Hem?TxM`CCQCfZM zi}(=8(hGkOb0Qbvi=jds_eB8ys#880(;}t}y%;n3UzGRsfCW2!DS5jSN($sX)dL}un}C2F4%&L8u~j6Ob;P!+$S3R%l%X%arcA(KFeVb zGaF{o7j1Szy$&Duj2o2%LIVypCA4Sbgk^pA=M^*}%@lq&2{)S$X4Xt&6Kz0s=^@!H zXOr|R_n&KTh0+}tMlH|?;zbA-)4CTm7s};DhK4_-X2hHd z1Py4L2jxLQeI!du0)q0u$H)u>$XhTEn|EO7W9{!H8{W?pw7m0^!I={yvK#~aIWc}) ze(QCCWt4i@?+bsiac zXmXqtVZmLEv3RT>jL4+9o7TW9{WwAbD7#fHt@aF&6`Pfdx|}8Tyu8qb;Va% z0J-+eF`2bT#yuec+Y3?k#npy2Ja@u>4?mTAz-Kj+tSPbZ4LZZY~k@11`%L>)#dbr=r-ZY$^o zn#L&N)o&`fu1)X-BBRQ9KxIv@HW@VRraxfnIj~a&s=t$5*xlQkkZ`k2J-F27CH0AU zhp8=eY(PbTLY+(!?U1!ZuWhO+)u8+s4XN#qds=L1Pr%gHsfiV{WHVQHCvDd8sYZbTpbt0rdl*b!v))=>K;qA? z(>t?7ZK4OL_BIB`fSwgQ{2PAy9|XA?Ki)4e5BGnMFE5x_`)7X|XL9xX6-abDp*TtR zA_lttxd*I(!NOx6BO}a@tgP&iBXnLJ;O`?dPfq9_i$Ke?``-?!g*3e_FJp5ZTW==Y zwv-+G>-=n9#y+bh2@xDxgVKF8AniBV>z~8JXjF^Tv)5msy4~V`<$-Z>9=*wh6hECU zjU58KK{ZH@JS;<=pD^h=eh$s?rv*W(fdWs{Ljib~xLtirUu;PjJw@?qXbnj8LDIj2 zn12X(8Ik-7>IQ2!x$S*~K<*41Rt|=zarOfxfOpf|&GYNLhJQsd&NockObx3~qX7@o z1)(P()~VD2yBB1qhWrB4941;r)`vc+apKf|jDK~&wGRWGEJRt2B-B16 zBx8g0gwV{cpm(&7c3US=mm8D|y-#l6C^9sHSa1;O6Z5r-Cmi>O`DZRByn!0)ETn&t^8Qu* z>e^0b~GC5rXw>qOudtrh>lJ=(%cFDNK%=1dUY8FiT^a@mWL2BKz-*zQ;iXw`&Y zk$PIkn+!1dsYbqT!!*ME)$xTAXuCnjxZ&Z+#PtAuKo-^f#+Il}$ib{62Aw9wQ6U+hA#BlYtV!}u zb)!!4npHDO%;w%!tFMNvRTF2g6F!S7nRTD;wMZZ zZEoy!w59Mxv6*{6ns!>x$BYI~mfN6RpF41iMUof(^l})Cyn4!RDN+8E9Sph|xd=4z z_jTdit7urN@oaUs34w2I`DELMhg_+q-S4T@G&5G+=$h95ZLm;fuNTUHUP|iHu2>hX z8B_JJanSCNQ@IvZX&H}T+n@w3NK;@jC2OMPv-b3bLM?oNDxoV<1x*aE8g&WDmeFE zGk0~|3IiquM_0W5qR>Q6tkHRvgf@hLN9Xrz0Y^4Adj~;9|7m-n?ZCk)U2F5?TIs`S zQZ8_jroh%cGWYN;6UaEfb zcNG%z)T}(cT=eP*A`kol?Rm^`5dXniJkN>X^(4C3zb)Ey&&rCr2j{W7Mr?Jgx$eky zPJSO5gYHbh(J-0SnpOfZ)dWvA&(`jZLpHTK$lK!!p${upYh!a$i8)Bn)!58nsJHux zNYEAH1+%Bmwk)f^wV+Z#+ZJ{DKjN+3tS}!-U!=rUgG?N5$6VCavJm*dc!qu|5*YNC z>+)Pe>xubrsn05=j;1yi3)>z|Lf4MJoYA>mRI84qsujV37aA4IYc~9`_DLL6hd}tz zOOy7;RuN@}7?DI9effbf2NERObBj9zw%lVXRS`hIZy{T#Yia|BZ-F?~pLZmoaK{Uy zSG6REPDp?Fy`nHNCp#}{{*hu6vTZK!5JliI@T<_w+A%3(P!{tu<>|=}BaNvsylzKE z;Sj7CGh@NDI;N-vl=e6*02uYL)-Ry?db`r(g7Jv$>+I@klD#?#I<+@`&uNDpS>HO> znpI&IiaD_F*2Fo@O0-hIW{*f58riq)+G^5-0>*QUuD9LB9g>L@%A>t1lDrv5JxW5m zImA(VO@cTFUx%V|3HP87wZNYPL<#Di7FIjWf8Y-yqU}RK+Xn@+_Y30a6Gqn}h^d7V z|B^=kN2-&5s)%Vw!sHB9izU9dSBp$ZWA#9hS$XEx7)snS6fghb&b*H#Cr|sXAFqvr z9tY;Pp+`f4cx;5&IP|o7TyN@>b$PxfWl>x(ZXBF1oKuxpk*UTybaj?p)Ze*qKt{*X zqjX*?EV?>=7tM(%pU~FG!0)h-eH;&Y{ru^Y?d<+h3HG<~6s(yTCT`Bw0#_Frg`?aj zGE{&h3b|Y_K<1Xr;fs+hO)J|@XO`8a9H9m462`s>5X6FWhbYSTbDY4#Llt?XvO&!N zZ*?K)49BKNFAUHbs=D_u)6PJ5M)~TkB+b-to(=b`w?--MVu?gB}Hsub*5Ug^* zSm)fA{|JeF9=_jr=z)Ywr1|`G{BoP36u5bxG5`7;tpt<|nz?KTfp|EQ zT@|c4FZ%;xY!HMh9P~kUs^B@pck!Y36?2a~aO^8zcxh#A%;D+yqEv-k^ee8{=7rAm zl@g|SYDqM8w|`U3(O5g9!{jSmC_RYKfrTQ+%=F>*y$BnZjgEm&-=SQC9#ys^QN#N5{J*^Ten@7+H; zSztHZ$<|)JQ%9rK3H71urB(uo4O4YyUeS-3Xy+&7pjCmuYX}KQjsgur{{@N=yq5lW zA~k{#OQRwBIF6HTvU7L(w%o8$d5NCC*3HN+OjbY>&)i`ru_PXCp`Z4%h?)o93n&0+i@uBWXgz@Wl7eh{cg~Y`Wl16 zHUe_ld0hr=TZ^EZLvVFX3z$HiL`Rj>HvIpP5YFn+B2a3W!c^Ek0r!p^$i0j@lzRao zH2e{ZLm^(yeh!3o+$ZnzBtH)1-U{PntEc%sj7Df)a*%P^YIxop$Y)Wj-mZ@Gq7`qv zX)=1fH!~-qJ1tA_RegRq)IZFVhCn9U73g-wn&J@S1n9DlDE| z1bD!z0BZE~={m>58O#P~yd6YUqkNkV3y-E&Y`v{DyfYd5MD`{MMqWDkTse3TRQ|}o z#r&Y9X`v+Hg3uVsM9>1)Fm1g?hXCmNZ$kQJZLFNbfEDYGyYe8^7L5F z+-xVuu_m+9o@xwIn%v730xmVpH~@0ejt;)+5+_! z*#M;5nUS-?{|s_?x*jlnNP;Ijdu&^}8;MjDNgxM8M%hiG=&fK7dJjbVWHQt(oN2Kf zPaiS;lPhAnPMg;Z?VPFP^7cBr3ZBD?hfQpXJXk@VejzHGMp~QrMB9wgIlft~!3Bb_ zP2k$UF!?ot$uHk+1<$hHee6?{rK_lg%JoRk^eBn(=^!?vK9gy?V#V{|tULEAtw+*j zf_kB0JLz`!Cv<}>E=yO*Khzpy9_OU{zgSo1kCyKUdQyf)Fqfc^9$EeSqeMRy)_+=caPjmNOS zd?Rzoz3C7T)#x}@3^@Fy!D`uj4mn$gPwc=UQMYphn}K`Cp!ox>s%kF6}aAcH_Ub>9JY5wYWhA>>u<38Z=F==96LzSe6!_(GB|s@AJa8uZ{=ielZuTn8&9n+c!-v zO((pZ&KTLO*f!hIJ-~@PdpcZMOl*z9m-pVkJZnclf>&?J*#3bvGdgDuTpat$i>m_# zT0P1xO4Mb4DSvPnY&zglkn2`v!HbsvG+kQmgvE){y|1)5ur)5>8#CI~4*i2Nx#0m9 zzn#_`-BtD*=^4!B_Z!J_JG9HwOKgaF<7^P&(jvBXuGmb_XS(S1OSfE+yylS0D0r(r z@trHa3mQ{Py^#YdZmAh64k54lVDwx8?*BNFeT^QNe6dGRBDvVbC=4U+YG{wVohVQJ zcmwBPJt49kP;cqX=6Y692EB%46~oaQ4#FSGns~R_s{0uYL00@%;ueL|n6*({nc;rw zuNiXvbmTxcEg2(N<~)&;l+IGFmnr9!@ZAy1@$xE zFDRX%IUWrgJDYjr)YAi?zsP}H%g*QU=-TMC)QZh!-Bs-G*mqQc?M{2U+Syo#;sj91 zB9-&%Qr{-Kj2tCV2fD$~l&kx3TfnQ`eE1VO(#KUeXKndGe)cEhX2M?9+d__}c4^yn zs62ILc7uj}{8gD}<^(?MO#|AR>=piU36o9H&`Yy&oEV=y$6SV^3#2W8@v55d(x}ae zc-wRi-s5%*FAsD5%K)cL_rO|)SfDGd@NzDQ8*1sz&|PYUE`ZwdHW}#-h3kNNk$t<( zG^tPl%R&A?y@s`OOLzU{dg>*wZ}ikbn0Pd+?!ire-kfnTt$zW<9K%4F|m<ZSLD z4qtib7T>0?LR1WMRL=-Ph<0^AMiKcJ8m)#Gd~0D+d!&~snr z{B=gxB|SY%We0dKCh}-@7>J!DuD$cA4x}0WSstSNcRr-Q+WO8ZFf>PTo4`5$)mT1+_LYA<3nyhM?uU7QX@3hT>9FK7xL|fhwYEl;6xEy&$A-5`N>@1rvZHeABr0OI?So4hqQA zBC36j2r0lFWvK#Z`NVmC{u$dHapZrk*n}LhV$iOV_}7i-ulyUTet&k3wYhiIXPoD| ztywV+iXc)WO$)L|9(%Ed3o`)4sNJ5ZRuV)d!}Ou@?P|;4oa#RdZ)}qf8IzAxf1S3_b9Ou2 zX8TJbu9$qggQ3Qf!()w98le(#5ip{tG6F_V~8mGFc>6+O|JG%#UN zU{G_mb%M94S@&m0xcsa9*Fh4QuK#W%V)Ftf3vYe-YS*`13-J)j{ziy|tEP4FK-B>B zR~^c_&2RDE!1Kq}U796BRDO#ARe*2#ssKzd*wz{EDj$!=c%czk5xVvZae#`L5{xP= zABOh+u8G?9=XY+hT9gblO(-4Xe>83mU1mM0U=-riyF-#?>lgntWs%hSz2*_ z*j;FoIdrVMMzlWxAvPwm>~`yJ+^Z1|2`Z$C^24!(p=G&qA)Mx`hdBEZhBKjMwE^_S z+K_oM9V*2DK$=pNSrPw!O$;-QI`&=V)}buBUB-m04AY{vi%e8#>Gw}mDV?wV0t|*GeH%D0?6aB}V1L(< zY-)x~*|qFH?$A)G-&f#3jwaIDv*0fXIq~I1HV7tx_830-&kxmQfd5B@g3^ z`>I#Gw0W++4%$Wcc-+;1$w`#J^1MfdG^qv^uIF5lqz;!+*RVNoG^l`7BL zJ-+bxF22+Z^#4rFp?6|vazlLJNIe%0GLVS<+ z_;gAY%9(@RWBW~GgY+=6HaaL}o0yy<{+sdVbFcTa=4Sppxh4IJO8o*hb8hc-FBRd5 zEQ)sRYkzM!Izn(g>+8 zc2_^~_)Ajd=uOv1o`#h107s0KSGuIgHvk0%#3lqn%#Rm($cKPh1yv|Z4l+;;P!p)5 zRznc!+kPrn>jQg+TlRe^L_pwn(B1Za`MNnJ$4TI6X!z66(9of%Bg3NgqoRIdk*>OP zTPFtI5&LmN>fT=66G!CnR^<^s9zCsIU7(^Ls8!x+($z7OU1U?U&4AxEJmR z9P?(}#&JCZWLt^Z+#-dab)ZRUI2kUw*j9%S_oGOy_|V{k?Q6G%Z<@F)!pMD-Q4_kU z5)SgRsfk-ZqT#fE4?%L4aFrVw^s3!LohXSP_Z-DFb;fM>eS$rX{B}`d2+@RF{${rU z^F06?s8Au6jBlXr;j?RmW!f?zzLdyHmqFp$;$o90%sHm4LbUa{5J)IWVIEY8#6gM0 zUELBv>@ViuSj$ccK>F6-zpPOU!)4ym8qP|oMZw>sI);w+i>XlHwkp+zxX=eT+zD$) z3Ov5u;!bQ-0fR(TJwd|2W@GjTQ&Yf-B9*8{Q2Q4q z9}Dx%%0@+MeJ5|k;sF4zHpcXrAYU)%pZ*Jo={ROf5ZgyX7G@n3 zuR36$CrE`eKHFzUp+^$P(b!i@1PPBB5bvnZCa9Ln5(t$lvps~99(jKKVhVCzaHzof z8gjl3f|M`3Z>L8tjUJgb>4HIz9FkY3Pn>UPQoxv}&j?I0pe+^yhqZUkvc4r#8MCIR zHjecji8@iHq%Hx^&syYCyP0=y=c}d{y_qG8n(~?tU>=vW$&6epQ|n{}_mB`ac)g8Rn)FXl+2pU?@82SP z99g9D`q>;pUCzug7SW`sQzh1L2E9F&+n#BsX!r>5)3>O;?=rUy?X|;WpnZt+Q1(O| zb{l`8iTSF`XV3X6Es8iBwMum5wAeu-BHnl=YYEETl9vq^6;m2sDt z=<)`8jlb38iR7GP!#R!%Z9WeSn z%wdR|AOVPNfLSflnfCVUik4iLDj8wOzENR<5PpwVUGGhmw0;ESP?R=9JhNP=ZZ7t$ zV&HK5qX%|uF|og)?|#8P3u1@lV9twzck1Uxk01mF4KwWZbzzv?(x=k=h~iIJfHgpM z$311(P9Bh+G2#2MEp{vvk+#JjG4Mg&aROhkO8gYx?&Sm{9d2}LQT1)dzNx0B!KP7G zXc32Ca9{U=)pSD>4O{j~cmrKlVPF9YQsJ9vKvJDIFmOkT`+~;6goe~oB0WnfC@`KA zL>7y4`)NCWVTREgkN|ySAt{wtE+XoIl<)PO6r?}&ZjSXrl{NSuhk)v(I^DvvNIseJ zZ`<|^*x>w`prPEow(Ajk}a2?0uh zl$sO*s7M5X%DY1p>qTNrq>N!>(?r8BC_^r73WQK2s}1B9^&J|biu|2=8p9FaBsN(4 zhcZvoKYjuvn1EfbQEz7%;{Yhe%r`$|OO>bL{tcreboG}OmosTa-cxBpa$X+OG88dA zD9H;1<#pQM*+LNvaYoQAa@yaxeLF^E|+T#35b{LF~o7z9DHT7|Y8 z)JhNu1&jbr?L_U&hzh4Wb5i1B&Kx%>**=p7mt93d>7w}65s<+-l?F~lP+m%bNGX=G zx`v`x!-8639FL4p&?3I|w5YkP5rqgFs@_FRVvdi&ix!Zpk934P#=~}or8pxq13F@g$a9Ef54*7JSJXQB!F}ct32hepI$<5C&Ehdd~|Zn zN{KerS`7!Ju@tPRD8ZN{v$-~p`bA2;Mm9uXl!a<2bTB95M#kNH0Edy^x%jiMR?rbi z;kY=|S>b{*rxAZix0OHA2m*xC-vwSLk}d^rhDgC-kLeshGQvu-i*co5#w&sw!V~|- z(OoHMgEOPqK0YOIMJZ#Q8Yf8YO0~mymFqbQ&A6y1l zDvIFK15{I#-(r9(cZ9N1a7s2DGXA)4HK3fAiM1JYy~nzRoNMNf!mJ30nUvLMQ@_Q5zmBN$&MBqbt^?1{BnyG0;qe({ zvf}o$L1saobGEI=!09C9^T>cj zfTglo_cM7V=A*jNRB)B)D)gM~zwPkrLMkpmW?aX%nzC_=l~kU0}IM#WLv?+9?i+0~$xn zWmDNO3gzP+QquLYj)5cqgcgg3SM`AvL!hBr1y%L=G`}JPKABofP&J1S1{=bXkQ($g zPwW;s!2l2f)}F!mh>MV5hKox!1Tr-yz>LolCS{Oeqfm>mQVbx@3t&bMP>qcbimOPd z5Q&Y+N5^9wLR6;|IXD=lQpV!bvN8?8Mu}4Qzly|TR~1H==M@SwfNRjt#+#AQ|7)86 z>os`Z%{mILl%YkCFI^UjmDcAF1&g!~;K%my+1nJ1^+PRL{gj+RQYp zfu~0+29rZ+T!kp5g^C1}q#T^MqPnc${lufH&|MS7D{=5LeFW?QlZ6y#Tb)cqlg>l( zAU>Ijb8f&#|MWy3y%hChf2Ifm26|(J^-)G?ta??%CKR*rG4i<4uzn@lb^fM7?*QWnpI_9{ zXZVuuB=o=nT;LAtn(2msjq|CVU#m9|U-=2o6+V{N#iv!PF(#$$o~s?S?AYzxzJ{BD zx*l&*f{#nj-@>`=Bb@CqS=Cs6a~VXgsep{Uf4@`Xi2Xpj8!_02555}Neu@(k{uO)) z8xetCmF?(SxRkR~pVe&w-=@`nnccJPiMHuxrywAiwKs5-|HNZ|!|pQPszo<$NL? zIDA}i#C##YHze*FvH~OITa!uP&bkMir)>4^aw_%O5vFV_?eG9rp?lrv^8xgcfK?G- z@>ad6BlKdpL?Ky!2e#@lrc=%o@EFHqwewcZXCl+xd@Hq>I1LTwyvjRf_RE3~#ODB` zzBPb}5g!~%HJ~5%xDLC$`IDlX8Ton>m0=y*KJ1Yzv17d*Gn@o(U#R{*6Nqk@*z;gO zV|x-5l_$aZr=E*uRbHVGUtZqw4_Wuj#0;(&w`R>Y#~#o>`3+CQ-<11_34NL4Q?o1E z^9DMmaaDx>_ zi#B}nP3D^YuxCc!>=P=yxw|SbclddT{#h6P2kj#nd)5x(^@@40>H$cWN>F+1TDqMLR`YlRO^RFCX=-h^Jo*-km1zdBPG zyd)D_cB0cZqTj3v#%}gVbSCEj4FR#`H|r00R1ggxhHw~g7xtU> zU5@cXog3!^FeNaDK}k%xxJQy06t zdyt^N_c?`pVQV$PXx||MCCZ(wVkjTp82-fZ+RI3T`mFY`B*4}frs1mLys8AtBS7b0 z4T6aS-&P0O6ii!FUoG9(p0}M(?LwWq(sAGAA?>C8lg5MXx}kd?^`>Fs3+g1*ob1{? zJM1S0HWL|EpM!~ry0TGbYkKV9$QnhpGcJ6Y52zUx8Xd=aiN?)FN7MXA;u*XXbagXX zg3(lgrnWnI0)9|qyxFeU`GC+R4vsfqO$1O#X+8;jTVTAoV-l|4UGPwxQUcFS z^(?iUv4i!xIi^w5)dXL}=|cw3jo!TFE3FI5m5W~zoXXJ;s9iZa0sNZeN+s-Uv2}w` zp?c#_2u1#e>3uJ_WCzbM4#inA>G!bA`jt*`#&2VZ*c^Bh*a!Vre8jlCdQ3!YbYw)9 zHpc<4Sg~c%aX%qxY|z}o@|{R@Wob1lr^8By9Wzg6W|U9z<_sqlwutzuUrLMghA$>5 z`{S34*Zz(Mp zEL3bfv_C{-9_f|d3ky0BtE$y`+?U1PqrkSPf_zW&M4a`8XUF{C+?6>Vwy0>WhF3IP zttmZI?~uijaI^?}CDGVyHhV=m!(lJ|%)t!>!N)y;GSs6F6*@i{Eep492rE>>KT@Ng zPCF7rEGc98I8tju!uoJrI={pl zn>WN8>WLuh>#FJ>7vqeJXm?N!N4o4e7(0R`neq2&YVoZf<=Ka=V7@PHFdFj#2K#CB zJ?-@fG~3Il^x2b633{E12bSV^Mx$JX_thw#>=}&dcBW>UZqcmZUno=aGGi+q0QTrp zC@c{DX9VK>&wGx7ct~YcV~mu?9P%bq6H@((E8kNjFI57x8Kz~F>T5s%FkWBouCi@z zp=M;)1JP#Gi2lkohF#_4WVPolT@onY{dH@{q#h1ac8~yLe;F5l8Ykb)2h_?(nQK~i z;L6E1trxC~o>ZueX^!?&+t)=(^RIU2eebZgMC*Jn7xU1m*YpkdxoY2?S36S7LaUOq zg|cY3d1?zd&z4PJ-etFtuw>CCRsD4T=U-;i+QVbvMM~6-_a9UHwE+`LJl8L$7)(Ck z!2H03l5_`78gdKQ$v3O4&*@RTrz_9mp1c?49a1hS8xE!Eq1@JeqwOLsNBsEHuYv`X3H=;tdS!(K zveg)`{N#z&Zh_d8^P3+RK(Hff*?48itusQ~a{B5;*)j#!S|*5Sl*GiP=p5E_uNL=% zoJHQNMv%b$zy!uj>%ECM{QIbo4Q*qs(_TjQW2ak*==AlzT{Z8l7kDr|c?|ZqV~XwTFz<+tl$*## zTRtC`r6_7CTp04yk;qq?NX7KU?~957j6`Dgw_XZTPsY8ssGokVF&UWc#ROxy%r za+$LGKkG@zoD)xvg2HQ@^BTVxF;(Q`fN!G8I}O5f0KM9#_r1NRW$^R3ntb9z=nUOw zdOVfdGX=f7Ek~6Vlc1aISm%d*vh_1Uavfeb+InuTsum`ADPx2cs&!#O@VAqGr zM)rY~wt?<8t*OUR3!C?d+s;@2c#AHIA3O0hAD9^jXqsnwNj>&H*q$RW8D=WW}Y*dq;-hSb?T65%Xtx=nag4*JfY z_cj{DZD`7Q@ND&sw4*1Lhlr}<*o&%th!l3RJtVQ#K}0(HRyup?Xk~nDgKBBFUv7YX zkSWd{rr7^qQOhygz6dLa_nT#hJ(>mkZ*z1l8R2=}PFoJKgt*m$5tr1)4#r#KiSYdt zdk?1mMoi@rkAajiK5sAf{ITqy8T?f!p!1g_rCYVmnmRdqc_$tnoO_2Xe)=D=1Bp<% zOURKA0Z09)tyYzjm%f2BukX1qfLrNc;BVQO)xB_nhIEyu3i}E=2X1F_wpVBU^d3&# zwyEMFaQqf%k(R-$vL&cD?z$iHzcoF=L@@8xeE0{7U1yg8_8%;|WYI0p)oEM2Bri63 z%1x@f0a6hoz^8DJhcjRq);B#{_y+cyUb`l;?FCQf&E4N8X(wQZxG>x~S<0?7gGXl8 z)<*jo>gl-R2{6hHSq2QJfy4NC%RaHg_3Fj43mzF)-_yG97T2Z=gVe?>bgI0Qol$}=^a^xK)nwraIL4>?-i~jMm`JmQ)9q%A*Lx> zHP9I|mv3Q>T+!ngdf!e{`+nGI4LizsTJxaE*4b^QHgmZ{M?%DCHtpKZr%Qd{zR}xQ zCf5v)i)nybB|djvI&+;u?--2_aT~rg(-ap5JvOG5-s$CtFUOxHEj-Y`wDpfA!RoU1 z0ZDEmZrW6-s^nsJVnFf3E$M}BfgBIz^*jKXxpuw82gQ-RQ3PQ!7gIhIXLqK#4!h$w zCAv;bvYTf{YJN&BYul_=I!{T&U|3=*{_etW7Y&b+wY#s(OXb@5Qd3`4a9;N8n=gxg zWkoekydl0X;*y*RK-8Ye)$OT>-cj8K*CVJ>;7ssXatxK)%6~@n*6Jf*PQu<6-a3&d zvomxX7PC8LxzK2|36yvSqO=NBtXcbXjgQ9#@E!t@RbW+WA@-w?Er&SDJn_Y$T7C(^ zY^kv#)Wv|k+`+)t43=+%#2|ZY%IFm?xb;7W1ns6isuS7_7PF1EnE||aDaYD0zZSR` z0V@(@Ex*l zTh9uSe`B%}!YwS2T-21WU{aAiXbkK#XjNB)Py4vXpbV2C;9qu($lNtJpl7+;mY7Gd zt(~qJGy&K}_WZP^Vq7l*3Cd*B-ooF-HHG<(R$4|uT~-Bs8(s!ty3Svv+`BjGYzMOvD!`%aGDNJB4F@j2!OzB)HB zM#e)wPsXW_o#a=_Fqz8}D5i8?P6>5C*gQJo+OwbxiXq?~gBd$c&{OLC$j_>dA@Nv- z!ED|E0qB+3cj+{_bbuCPA;(jtZ=k1JWLDYrTBdMifq*^F|L_2RusGMl5u7;$ zZ}gE)G|vG0sZ!wFb}l^H>FL#wz+C>2gSqrQ;o|!jRw}pRR^~s6VF6?o*!9ZE-EacI zSRv}`{R~b*c6kN+9bcf>fG?QT{9{$k?g!+naHIhRd-mw>wP9%hFUbl#J{SEBQAbB* z$JQjV=U3Cc-GT?OU1%ak^m4DBV91PC^ z0PI<%zxR73vN=DYAp{7_`nLr)MgIUKz;>QpZ;c@(+wW*R_|Ek5p4c036P(%nhSGG# zSOU1k3kH^LZ0AM6SoMSi{`d*==kXbshUHfXN3{X}L+6tX4S+Atu7_v*V6LZ!|J&c3 zRQCfx3iR2}+WxEE@h9LP5I-ptxYbFBK05q2qXQUKVE=__H}M%_>w@#ZTLg^9ReXdn=9| zNRhyY;-0*K$c24)W>HyNAaED8l+JIHD2X9MXe%gG7{e%c6D1?2ncm6GosSo*HMWN* zxjj>D^a0Fv^@OUZ!VN>hDrRr8YiPT}MXIc{1&LHplh6GoBTsNsPsWdYIW)A7&S!of zebH}hFK0!osy0|`H*;2J|Iv+BQ(b#=6{)Pq3_!fFDDeHgFB>LWrXEDRpt|uvtgHV0 z)fE3&47Qiw+(0&-SnD%1GYCrX0scFwK*J9bU4hf6`@`(xhhIq@^(ABm_1+!DBy`1a9Ce*xg zNbCHF{OG8S`eaP;?ah7pNK|G_vY?`ro1ew`%Lf8>x& z^voyJkFw)T)5%w#C)9`IX#IICjSBQ(BR&Z9$*pNdJSeZN{7qF!I{N~k}1E&%yz zwZ#6TT=M*|cAw`fh9^d|lW$64gwqSR}V6#=Wc7#BzCS<}^u1X^;lCkN3mzLr-U`u8mi zR`aCxvwExHFFmjtH!=%7D%&lcpH7aMJ)EVyLMQ_~X-SI=IY<>AGyu?&BO=PNJ4t|R ziY#$}tJ%m;<540<47peZ5t98>HH6f|J?_r|qERf23=At);s{nVHNGSP#1SE>%7i>z z5HTo+Tu^>a8Be0Cz6ym6etPyM4OMKkfLH(sZ}Iu5ssUnYV7#kN$UkeH>lKg*;gmshR*CsV&O0>z6aPOg-twCq5m`tI*@i~4 zXGj`&EvonU%&;7MI23YFlmXmt6vB8(J1uEKH!Li4pinWG*C773C!&g@6Z-W5o?V{5 zlLq7J>br1)0I=JrcS%RU!-oSfm~`qy;5%AVOl=*Kh8W(Nb2G zZh@HdKqN~p0?jPRU?^tbsW(){)Sx@^mK5+eJE>((z?fwmm|r}}jg zh9WsPsqRu;+5?}5b=IeNi>&7$Su1{qqAmuF%Jp>)r%Pz%esQX_OCX;6#prp;t=UFhPzo_*dL&18%+e{q zDqpUU5~}jCytrG(;VVX0qss@1mB>a{tIIjp5<0Eo4Ek>f4O9{6qIo~o?-!o!+U;D%3iOY zM_@8{n4c9(Hl1yL-}FOdZNGTEhDneeAF5XJpXcG#UCjj6Hon4b4K;*K_mWQ$7)Z-2 z0Hm65FN#dv+v?4wu1I-Z)69FSPQSiSR+@*Lg>=WlB4C%T>M#9UWOx{R&uwD2lJbyT z?VzNC+-phtc#eh<$22{BE;C5h?X%V%1IhkFdUNwn)KgaF;)k+wkVW)N3dy%Z;Kk_=# zn0$UGweLn|Y({?A7K}N45+I4$VooIQ&t;X_B%E?|ggCk~5lc!e!L6dupt1@*^ZfeTngKg<4!q0jx*C(~?jN*aZFH%}1avzZzg=R?5h z)8zK((`8?)deIzUsbAcbr0GGD$OJPTL5eC$g9e6A@s0Fr4|dp^KPpJawy_;JtHmOc zo3{)A_nHP)lZ5Gz@hH^zx9tj)W8q|ul^!=mrW&?1=DhXdu0Tjlh_Bj1&2@%np^%B_sP@FA9>%dhY>Z!vtPd(Px8Xw) zfE|=7(Y=Fs{y#D5QuX|Qj%96bjInupf+U!+5T}4gB`QK5luG>I5!LP*{ngt%```i{ z`Uy7}p*Udwe~9^Pc9^w>j>a=3tv4?6K3792E3!{BFC7fzw4~hByhe8uDK*=c^js`9 zPYTt!&=(!13U|I=d1#VX^3JtgciS8o%KBr-s=W1%RBUbL&35X=op|z(Z1pFKe8X9J zPagjAk8jXtnR0-SF8hb*xg31X1sb02-=^*Y$4~ImbXbW6wnxs_Ix6c(`W&UNK?5G4 zeZ>2I#o}=p<DKAzE*1>TX2Z6!4DI-6$ynd*trH5HLJs;x?7W4)Q4+vFAuQ zVEB|M!C8`pvGAI2?n##dlYnpJqK_4yueHrKzZf4eC|c&|XnEZIoZnwrilVp2xCI+GN3L9d|v+MJ`eNHkf>C@Ejt@Zqj{gw`1L;o2I_z3c9 zMmK3dyTh$hZ@d!G??x~Gn(dKlv953|v0sNzau_au{lbuL+26zqXa7o3NAuBaAa=a= z%5sxy-eq@IFV;KP=Pka7QEh&nTw14dQu8`r3%5#Qy^@ucZPC6I9lj66cpCH9ZX&jS zm8N;ms~?ykC&K>G$M{1@>Dy%WI4||uA2Zs=Iq=#q9}vTJM3T@MK*DhRf5m6}jxgs- zwS;bI_0*OalB@l&cg{Wj=>KmKe0w<2s!4?y^%^WQQl4!UM8k zB?S#1n|b&nXFd!?e@~X5KROly$S5U-zD`~RIO^{7K4%In1Q-eDdY8M_N$vQOY zk20m(D#S8f+(6ncq0S53M-WY;{f=Qs?67Ey34R`fUvN2s49gq@w9;NZBeDjaWMl{& z5sKsj&YRI>m!$S&^mfXZ-=SaH)#o3YEe8xpTE0(y!%GK9I|zg<^qL(r3|ewr?3iIB zf=5$@K?&cKMYu^312~~}c+3UdKT7PX0h(u?4yJK*3}t2A>8|}P(#7@GV+a)&n%L^- zCDbjp(gJCgtj8{*zbBTvSXDn;zYklXzl=|Dzj9CM+UPGj4=#^xvy?BUJ9eM;T)$UC>cR^;_Oty7Dy?<%-0`_f2pe?pK*ujRld0j!t=v!AlsO$)h7e|F>snA8`^rBqXrMjAv zC+x7sf@~t{Tb`Lm)B`nPvhMQSnq?|yKRMEs``qDezIPc3H2Gkt&>a8C-%r8PRkp&iFNf?Ps=y{Zm*5+VX^-=aVY`qD(VXZ&)aY|;Q#$v7X9B(<&% zJo!s^t?X_)RKG>u-LDvop)GTn&KNtL&i=2&vpm>CuR1%vI2z~cM}u6_U(v&uwXJr3&bnjBois*GJoQbwcN230pU1k*t7Z#-xVR=_ zMltv^*?WuZm-&g)V_mNw);rnR!fn5eA8t1xq?`DnV9gTB7cbkRNWW7B>IxY_c=Z4u zUJ2`4OrLYsi~`M{(XUo)oAjKAL#wb;SaEzM6<^9rj-ZnWWN+gG0vSMQ~PlOR^S?dQ?(_E{|nEWfr59V!F&sl2p&3|q=(We@L)>c`JRmR zsa7EC->lQxK2*Vam`5VdmvkFbw4OrKO;!*RWMM>qCg`GdnP=CLvp?)*qRv!@C({oi z?Ebxca-~$6RF!dqN-t6R+v%_%b#>K{tcJL&aV?^!J{1&$;1U7IU%kb1&hPZ!7SIhs zurY5K%QO%WITa1|K9{9)1CT+%V!$n`V*I(6c8DC(shFI^ zX4SO1RncTCzoYz9Sn=`27(3cg^LAw<0o5M2-Q;h{f)PxCM4BB(ERT&Yst5U-7UibA zpfGjRUrl*3v0e_j1?xug?H8oj4~rwnCcvL`w>A4j4I!ohgJKr^AWeedRKhi3ak!{V z$lWvtzq@k7x?9PvBEnr&iB5lM2dqH7oc`s^{ms)dCP+co6acZWP&0!|-Y4XfYC`{# zI{+$>0InHkFJ8nbLTKagd}v$?WP>?m6i7UsLxA>xidu_Q^U&iOIwvSeIJjoifi)c1S8BWSOA z3)S0EwbQuu-IAz=pZ3DPj?-M~ztuhr8mA4V*q7 zOWwX~%%6ScOdHMe&*{XFY^4N~eYl#(INjV?1_!=%=b^AV>_}IWjte3)k1drA9aV z4hY|>h(h;IoJ$N|V&o@)(Pc8b9S)aqH${waO#K;pYB~4x>`3O_Sx@5(XJIuoPR!tC z-xb=o+Rd?E`5SNmt3(xUSr=VQqiWUeq!74Z%5RQTt444v!mi zk)CFK#TV6;go)-G#+)pRwf3uCUHf}uy$iz~usu~f{^e+Qh~eer;qkUHk!sd}-OeCn zo$TxXvgvv5JuF%72XPf_WlvcEy7TKg z6FSQ5W^&TcwI0k2XZ)MR%Y!iKHde!v*&W_zorM5u=k^ZG)+gcRQi)4_0)^>0Bg1&0 z_LxCX^41ve``{K$l0;!{lSG*cKK|Re(^>>{y!N4PCbOHIysEWdQs)r%u8lV34qTL7 zi-Xp|7KY7jTKbFUiRZhO^jmB<`W=gd%3FDcfxj@!)ZVZ%>&LjCU)}>|Fl< zHNB}V@9cVSdfojoy7P15^W>;SMyA>IUzO4*+nl>(-?|%Aq)*(iv-Z6_DFwEffBMz! z$=7_>4+pd&wJTojxt^cfdX8`?nA zhN^b*Lx01}sA5>eL?<&QjO%y+?Y^M{g^lSCj}F8)SM+kQ_fuf)dfrc=0uD09Y`TG} ze&jl{$&`f0v5re8mHy{`n+I*-UFWa9aS4#>WiyB$@+e+(1W&X%SkVIm*Hfnl(dv<7 z=uR(jcatIORt{^ta_h)r9sZ(qNMnr*F?pS-lE>)0IssWFsP+Es`Fz%yh&uUgK2n(r zB5xKuKNbu=LBOyzzN6aCEssY^+s%CbNuScf%@ z?)yKwJ@8a;43h$NWpjom$q)}y^fahcdfWlYi;qDg5=M$p6bo^t&@TOvg`zI~-#+zS z`YSjo=NNTO|IU-|6eXANG~x4MU*Q2DyZzO48j1( zzg1e%wQyv$c$ycq1_{>C7fZ(cMz5ttuL-{37#a6NaKCA^go&9A*Z4h&p{#+loeIAEyV>@Mn$55q(HGzfEINrhVd*8SWTmUYAG)tH;D>tDkJM* z;c%GJm%WS1NN*m;ZQCDML@?=|#wDD>AwEWariX>hQKVX&=-$}(X_@9HDa?D*E~BTz zkI~cB#)A5ZECDk^rDr0H-KWIT8|4?hV*tc_26O{X_gPX zLMozRhX!K%26|=^=15{LKv>rk^Uftmf$}Jy=N;OzCz%d~N(xcsw@ld( z5W%V9^(84qK|5n?*^-x&tdKbLL|-^)afLZz&a$?(vFxYIK-mEf@MdV-{o z--6&xDDbJc^35!gqA#nbP834tQU+9i{K*Nhg@qO-R|JFo$yNwaKQ5?f==i9(sOtis zLaj!gg9S>y6-R=ZI4Y{Toma--QNpw!PX474Ax2(iHeyI@L(qg@RwVU3WuTN}BluM(|T=Vw5Yf>3R!R$AzsYQhBtN1W$&i$Of6NlmPrn(2>>L{24{A#w*D zQ%bt+7zh^P@lKZoGaunp6FE*E7nx+>910vVV`53G32Io@#J)*3FQ3s`8D;IPN%wQW z4xyhs1<$IUsU4_U>X%vU0W+P)9eCv@^SD_hSHQMltfr6`M0tbqB=3tg?7-(1Hltht zm;u?sK2--aL#3zF3W=tjP~E^iZO_Xh3N1>!vmA(@IjJm14uhXKro$%E9E;PfBO0Ni zzf1HV*!+NvgPG+#>}NWg`I5&skY(+69OM+J1dj>gd!VG^Fh@Efi(;~5A>m~Nhmv4o zzA+sosfq)86X+CPsP%%MNu+#eAWM8H9H>=JyfVpsCh}*GaUJeDoPj$@1VtbV|H!B0 zK(ha}B5#iWX;T-8JBbp>uN!<7Vd;?}sc+G-bmD>Y%0FNzlG?4?TFkN+nr z8*g&8-^0P$4V=OY&rTX;(n@$)-h_yVFMhFWQEbmv-t9o|JydT@_{4CTCs?3th4@H9Q7JSdAiP z?wF9n23x^HR+C{(DJgegkfb6*5by-&gcs*pJ6TT3AE~m-wu@Q~zIz-YCPGcE!%i66 z0_r$+AdcB>9qD*Djd`x*7hJni@!^?t+Qyz{+U6%)P-tk?NV~6FfPM&TmYi+UK}2B_ zxH(po(^d#l8z(qvC7bhRK7!2KG;={>F~r&j%Vlx9yUK3kxb{InK2)+rD%0fuQ|2qs z^df61$*|VQN6>rPEiw^h5+nudNF&1TkH3XiQv z_f}^KlVL6rk%i7r;6G3igMBgd1Y4&pqitaXg%9uC04$onTriqQ3gaW&-$Xzx#}^UW z7??#n-Q?QW+ZbHaHv^p$Bvt%a3j8Ex-cVER&-b*h(fzP(ivvnG1njj!2uVJF6p{G1 z%jG-fk~~vGXCxk0Q%hGZLQpd?QL@{BFTlQQp7g)kt z!qz_@wUD+;U#cZ?@FZ~l#|B&I7nbIya96t|h8B%kv)Ms>Ku-Eup|2#8G3_?3cKbu}hI7yrpO?@Qg&1%}z+S;$@)tJZcH2L`Y7lmSEH* zxREiiZ8PMFjB(9oQU1^q-Q_`RIA6T-0}8UAhLaUHfA)E>juvAmZ`_*X=3wupX}qyU z1AAm;LQP(2M9600XdBPs%w}Cu`}>IvTkiAZ9h)w%6@_)1YxMg0h0CefVDpUm(lZ}B zPkI{1DLh-1__{nwG5C^%Y)1O>q1xUVOv9{-7G^}E&JFhYHTT*$orOj~^?OUs?3FQ} z51*t!sashAD~cLC(0CKP896OSU}htuB1%GFQ#;J_MtjzZ{& zwF}crsjjE-YLOZ3WK#K)p%&dy0Mpu1DHpmRm(3Um$Mf!%ot`ltBRW`XG|b&S_W3&sOn|Ee zT#a3OjptO8y-iee}gF)zX{xaRxj1fVF#%LLop8Qc9Im||+t4)BVJvb&NtnFYb*9p}KsWaT7VAC4krY&hZ*#hY$v{H9wrb`STtmgD=i$FilA7 z!9v8!gf@drG(Y?rg}KYNF^36G6ntheA#;BP03bZ0-~@J6rY z4P*eFR*5GuyLj*+XK7OiV7L1fAUr3*q~N0zkwCK7n5f zLcN0^*pyfSz*h4YVWm&0c44@}C z5fowKoVf#^7L@v^`9yZJ3~1^GFNx6Vt%E8_{FUJxz#*O;3@ySFB+=+H{V=5c&IHTC}?m9J|;Q>5FU*y7!C(2 zYeYG3HZ-L8x1Z7i6&x-T9Z4)4P$UyAl)tC7^3G2CZ@+_gsO{}-cH=NfzLqSca`MV9 z?vVwmWS*(2tDn!G;7>}8=B#r6!A|re4hmRQ6}n+_Smpc6?$wpu{@;*ZwH^)3{X^^J zufL<&)-D)$R99}lFWaf)Tl?!qmUqJsve-sp?plv*9VFzO39haVujS%J5bK5g>^F!E z3T74mIrmcL0~rhVQSR*5Xh?auz~)GrwBV{t{IUeLI^S>nSN>J)5`wU!Ex$pawO6Yp z&p42$tzM4NHk*xiCAx{jf7;Dk_9%c3^??8viT`yQl(|XKoU#8DZivoad{0j&A%F>c z1mB%~>$ludZ(a4tu4UEBEvBp-LIqVxBa#==bcj3Q_fc1HX;wHOT3i_2PVsmnXqe`{LH&#qaAkE$^CUV&~qZWxef0gH?JWJqDP4N89sW zBgiqU-uxHRD*6 z+3?b2k1G=DZq!+I3*wYUTtSlrP0HH3lild!z(d2#uj@5N&?nOCDFE$oVUZVdyy$E^ zm^|uNljI!%VC3@{g35cst%1{_&F;A#oKFIm{FdL(!#K^&fd2X@%G^dS>tEgYkEaTb zaed?r#dW}|=r5y)y)Vn@TX^lxLUNQf2hHU-zpJzlZzJzEq%Xk?QJ-kD?*GIXCiMR| zjA8C9B5CgT?`^eE`JM3borNI&>x7Zdv=I61+&R9r?U$#8uNkDmN@(t9yclzCa-E5+ zic<_WQymLpvc<|R@y0D~gb;b_Ta^R`y5uMNvaQ^j?@&3ru^@BaT`YNzA(X7!{|@nE`vglrB5Y}O zdQBqxs;->$@-1X?eV!+z5)WmvW~OQ@YkhpUB2c%@;x67h8M&;T`Z(s)?M$uPxUqUu zj-Q~ko9gzZ2bkrtOM=ga%91myICSL7TEk}OskG=*kMx9O_=Q@}xg-tingPRxD=A@g z+;>SeJ-F4+K(hZfKr${wJ3*fmnIm3`2(NDFc#4**;YFjpVlDPV@SW5AnKpA+W6lA? z>&`rIvgvvI3Za(Mj^BZWVsrM5Ra^i2e!>~_4jv+_cqf3uShBy-_CKyNIqd(S&O>n_ z)&ln>&Az|lL-tLvz5ze#bdp5Vk)@ilOYyI-(U{#tK`VP%cM`DO-PhvPZaPn? zTz*$PG96rAbi}hFGdC=*M%{RAGhbX$0j>P-xsxS0y&Mq-R6#T}f4!(dUK6pX^Bb>w z`AF4|mgAj!1jUWztr27hUrKiu@?I9$CWif$fPJhdqeVzDznG0+K=tUa>Jgz+ykR`+B|Q|1`pr&PLoqT_lnqF}nhp z2}*9i)cy|PzX4wvI#n-_|`Q}iqqX<)E7r2da zQMUAWcLladCan$w>qILngO4DH!h4`e>o=X1 z7LcV^Sww+fCt2qF7ij0-FUShZ&XE@~XspEq#p&(LbtgxA;lr4`heaIkr*5q{{ke6| z#esNuEPaW}2c$|c=Z)R19cSW@=iNm^lq>kGn~65QI`$(jo-qTx9+dhVJAXexMnT;# z#&^swucwhgaP2FEb;IWAuKq;%ys9zC1Ut9}rPIln@XGXD1NN{R2XomXzC9qTXiGM> zTL=^@Z6`b+{BnmLR#&7+c%hE;y3@s8V(Z32_c2KPbF)RdeV)c^JOdvMZZMzKrOmei zg?5@xf$%r+2{Zd&{>#&f&|(C$JOjbi>=DH2#qC+LNDk8UYu%pY-lq_|G^6wQL~W*sKe_qawPTDl#lx3(;Yo|^6aFBXS) z{>slH#k(Yz?oWFE1H5hDZ$vFznuOo9y@%euhIXdX7=-GVul|vUs?N7y05b3o2JN!s z@N4DxJClC5x;c?ngfnwGU7)K=@FH=?Nn_1E$vx+O99^M&3+P+&PyyoSAt|b7;AO{g zj^F2@GE9~T^=4~*EiPA65hc+708V{Qp*~`{ygw*hW*d&IXth{1XKj?%vpRiz;y6;d zN>6aVU2WK*o3A2tO-3CwN5Wt7PsR-@$Loe%L7TC1+f}5g7%p=G;#AlTXtqDWJeL&5 zl)XGNHFgp=-8y5PvugjUyCv!N*129_`Z^rSh5n~F;Q@GP!JNQVi*!WgJR5M^R9BDC z`zk%OWW9}kMJf88!kUV2SgZUPSyIbxgQ&nkmG5nha@)KKjmtW_2YaO3NF?<=?dq;SU}&v@+bu8Rh1lLuIoZ>eEmTIicxz(5gd2h z$095is!USmwW>t5bcYB?{ROFW%UN5`k0q2Y2PCmMEx`XU$!&S*zIPUM_EivS|4yVG zf@?1UkHF>AJL?U)q4AYOT(Rzd&^Y)vGhUAWWUc9GFQM|EEtWhxy;>*VxTk764!HC@ zQBJC2GW!F3$Lcejwcu+1ppZG=GWoin^~TC<4A~qD zYb~_oy%Q9|4C_~#%ZA-bqHs7V;D&nudlydLZymF2@50>3GKGF+t4mLC3~;0E)3R`t z=5)3Hr~l$@V8$AidekHTqn-5i^RpV3(7~`0os-wfcWh!FJfI&9er1bujvrfyoI`gm zs#GNC5l_XJVE`)c&7Rv><>{!x3e){6QIu{dXe;Z9)}n1!v@0CErXM!haX)ek0{+F= zX#1Z;CGtnqu=oQSA3@=r$yg^mRq=X<$l2CMG;Y`p8gCvN#o{9rWXdo*OgJ}SJ&_z7LRUVLoox3NUhEkma)FrPWi zhskZ@V^%%T4Q?=K6DQB|D;ad^yMU|7>(uqBgy7`sF9A)~mtHr>01QgpnzPAZ-%CW& zEY7+C)2ibvF0}y2@Sg!XU7qVqKq)^)pjC-fJ&Gc-JDRLw^F!*2P5|??{0xxUk-q{5 z`iXm68Frh1vj^Knkw}V22y9qoMd_(B3C^bF*KEE90m{g8=pi7;ZaDPXxL#3I_F?;qa>B$I=wW)kKy^x{K?$HBEzp(kbebN2ejj z!2s&f`~|t;|Bdg(`q$(~m49(Yirn%R>`JT5E(PFE`FS^R&o~eBlMqz58-OOVggO6a~eo5fm4DV;dW(Hi*7fsG zp~&7+m_ZS0`dLrqZv9(UuW(Ov=8usJ2BF))0q#_|4h$GL5gdOn$fIe|s34o?(J4UP zE>(Y~=uER#2io!d1=(@^f(|FoT$jyRNBT3U=FhiI#x3~BsnCxhYE?GUpaBR!(~Pw_ zZ$FNX819Y4an>ayo9L>;!4W!0p!wC6JZ7CD01+s2?(AUpTSt>RX`aW>!o|&?1tOa6 z9o$s|#@7O=M1a)gDL(=nCp)|wfgD=g?aQF|yUBBd z$fIVY+7>g4gL3jfh2E*NLgF#aP&CbtSXSU)QTFe7`GQl5xd#->w{X_a|Ca9W>iLK7 zEa#!!t6*vZI$L+Ymf8C)=|ZA$_cGaSzb54rhQ>G5!^PYAPew`)A|v(0vwzZg|5rjd zhhlG^)RJ)3oX`Wne3AD2m95^D1EG~s;2ND`SO3KZmxBVp3#FNi^ zuiZRzl$fa_okJ;z0pLw zx=jqc@j71JlsEe`{Y&V+7UTF~CnicINPOjYe`RrwB|_;3X~WG{f3i8_({6Ls??*nf z2a1{E325ngF{@GeO?&|};0LcU#+Z;oudqPkb6yuCwfh{x{M&vjGo+u&8*y%Rej1)W zqNwlA4*%WuAmw@(&N{pAu3Q{3qrEND=4V99`DnVoHYxSqEx(COAWt{_EVK>j62>@d zOVNfGu6ObxbK3Qp%TpL?Mmt@0-Q-{N_V|bTys1#%Fac*0-F5}r%VE&;sJt}fe4F}Q zNA~^isTW#bqXI$!;RFvEyVDSFh)?6whZ$tVMRHG@5i8#THg$jQ=e;A}w6o3_m=DU8c^crk729jvx3t zcqP7jn6*XR(>5cn%_)+qUVR(PI?faLs}+PSRy(u2_Y9tcM5M?LTa|fEUd6c1>gBIf z1l#KsTQ0s=+TmM@s_3)Q88ZVA5f%CnkxaM{6%Zlq$iTqRhP|0lG2m5j6J?TAQIfPB z_qW!$%PQ;TbX=GD%3O0=&fKrZ38DYRKB=uwOZW#{-)((wdQY_;M}M~;gM~!KD5}SI zkz*DV)e2W1>YZQFdViT`24;q!7pn?5w|L+8c9VBlS{?G1?&qep&}!?0!Zlx1sACjw z*zKS++O8q0i7vlP9rR@BT#Z=2V<*{kcpe%YJu;j`KSKX=8}`_&?TUz`!ci41_;i^f zG9Q&kka%82M0aA6x}f4#w3_!zyWZlVDMF0tX3%2RZ5VKSpH|klna+6KFD3HRyT7i; z_A&naGl}7Q)v!)~3W9dcM&`d!^7T56dtvr(F;99po}jqGoA~wXqKh8`|M2m&MfB1o zufyn#F*Jz`!||^SSba7@d3(}G>m@VAMZ$xpxxK$3#%a?GPyLt2c+ARdZUx`Y`7_O% z9&BRv@D=*jf^ot5L#g!ohFpwQN01@@Jt=d&Z@7GSFSzd6Z*Lq0B436YwMyZ29UtWj z=6x9Kw=HYWVl@d4O^1OqFM%uu?^-);!c#AEheVa)YE^$RSKTO1Yl7+UlNA062c0MT z@sOBwt?QU5n(WB;t6RwIl`DJi*(}u>`V*Na<)v>s-mjjb+XX7k(1j9l&v0<2 z{CXJe52wR`&`I+LNiEiTd*!pV=>2r=D{i%>*IScq_@6qn)zaDPM;B>?T|TF^f-M7U zlrpByZ}c*BIJyI#oag8)k2~|~6yj!ZzW@_>FPocDZ1Oz#1bAvLE9M4u$I)SRS8Vm5 zX$;34IJMKBv_-E_(`2^G4X2vr7$!rLw3dv!Ie^u36}PN^k4WwOaLbRI9|dJ><-t}< zHcE1PA>t`kW(Tx%wXKSkgErsi`N$@-+8=7+TNJ3^+iRVs)4MbT!%b`|nr~WVN=aR8 z#FvDyE{JceuhkBSsohT;`%FD(fz#e6EXhO?p8_lDkm_hX=uSH-$9$R9ZnnGl&qu~| z)jAAz&j%DJSq!bXw^Uyi5Z4|t+dPL|5T?~*PN~BCIcY}uhUYp1u2~sBG3S{r@!Qt3 zE1lj&-xk^5lzyrNF$+02A6m~Z(z8?uk1Sbja%NYMV%9;1>3o|4F5~=Mr!xx@c>RAP zNvb^PtX&0qlpYvwbe`t(1|INPHnu6MIG@KBUBxmt^s}O3k>9h&HR8=l8z#N^2^%ZA zuVg~r)|4B30+x4U>2hJ{#zdQ^o;c0;ja=imF*e{Z7Ypyl)#+9+0h`4}p(6xo<7%>W~PufENBeLG$$CldPav|JdWhAP2^ zFVvq4p>I+T*N>yR)iiXW)DJGY*!J}Ku08TJ(@zg+^y5Cc__>cN0n!V;$@zgVL>TFu zOJHJ^&Fxh|D894Z?E&Tm6VU>_&Svit!1AQSJ$oeUY#npGR8_3d_mJ_mVD2hoaKJm! zx+KL(r&+Z;+6CTM=L_4VXa8C4M)7R{+7&ST$4cI9shCOu=FBz6xe_pBpGs!m8~Rh% zDcsm;8KKek_8nFFCV!yC8N1o*s=U5j{VU}kh2FzTdC6Az6+#uk6^CP^$$5?~h1A8g zW-!mealz87vEq7+A(eEpOA+Pn&SYxcV zes!Sw#GVJ@H*FnJ<+9~v)W;~C)e<-qTPGYBSvmib-E^ZqMWWl(<` z#0?F{)!xXqF5uhD_pH-p+jU!lc{ktta)z^S<&P#{_Dr>EqP4UUf(nGlHBf?QYZEzz z5d`vWyr&Iy)=J}Vn9KPXG`%OTm#43N(+XqKHPB;F8Ep-gtHT1_>l=xiGp@SCpu%+Ly=(RNzN9qjQK0o7^GZn9Cqf9QTZ ztl#LgMU)Xs1)hAU?YnRPo@-XX(63)o8A1n1YCISUW5EH}hPOzLFR^Tzl|rWA6_WA!Wi1Hg%Z7^VX2ysexoQ>6XF-+) zcM#t_w$r(S?0wZnMR(18dm3W1X{_Q=q;s9?!k91`k=4GqzXl2*Y2nu~Yk<)eZz7Pe z)+PFka=CvD3?i0fWoZZPX09swMQwNi2KY0?XWehapb@E&xDO9FPJCXD5Z0{d zfHI6N;-o|02p$wv9r#6py4RP!=)*>9R{mEV^HQ-76D`_YD}KV^MK!ADW3z@69xdO` zDM)N#0lPC8*E+5+)(_|dPCA#AC9GnJhCI509TVIqXNy}*NGRoB1c!p889|+w)1e`J z2~JQMjxcm%3Q~QdeI4}`8Y@Q4ERW{os>vfOs)1p}#~Ja@L3Aw_eC6(Wy$=ki^Ky;% zPuho~B9Wd2!KVS%DJ&UbcQE&RuhTb=AyG@;(TVSG&zfJvu&fmPwWHV(BXB3d{8^Mr zgdjJ~wCV{oXuzqW`@GoJokP8FOA`^tvl{9&JTXOXT_W_(OV*jp9A&SooG27VB{)$& zi5zu9ap*i~1WoFG77LjTEjct^P_C;pcjIAqH^|~rpBxl)Rn$N*F8ZzF5-kzx5!%rw zcC%5_jU#nUAL7P2X4Ogis04M3S|(JAJ|~6uNJF*)?_oBBQP67~N|Q`k1+Lts8{$zg zjkXId8rf0U1oM&Zw@|^`Gag&}5qri0|I}v(R4RKfmcHsl_+>{Te~d%wrra(O_GLiO@z*ruqGul!<0vi<8@O*r8>8fvUymSr8>sI*n>k z_LJj{tb1!guf0qK7hBnX(@zpVEaYsfU=s^mRKON^j3D)m3sB3UxS>(91mw*z7+Ssv zX0`qMcGoWxgsoFUk^89_wYg)#6QJ1`(aZ@Ow{3J(RWFhjTteH+q~=JbUdh8n{a~0> zqMTqB{|K045&>4MsJ~CWe9xdf=Tq45kd{q&T&Lu(*!ey%M6^;v74jAK19*}&hHwQ_ z^208!GTvvYMyaZ79ZuFaws*Yh`08$bKt|DDFUTsEBWJELFVB8w;*Z&vnw4#G9S|X$ zm7`uf=s6a4U(xWWf*seCF0Youk#c=4lp2?AXtRni{8P@)N6g%h9SaDcD3lBSx0nPy z%)59?Ld-R9yf=pdef(SVXi8R!Y+X*rSib80cw&KOIk}C6g#cB6lRQ=@GO1g0x?s!W z7=~+h?yeNFp~Ot-pCDnZ$&+Wa_yFRAa4VZ;rq`_gkeCFUb|?_Ls~oxL2n-P>m;|iw z=$YNgZv#~^B4Ix80a;aTF>e@OQycY$6`p0KA|A>(kza64iyFcc9)MSB6t zu7roNi|W5d&ZG~O=??J2td#1+kGp+ETf}QV!W^R3(4wK1p_VZCi^V&~`i?1MU;(Rl zC{VO653v6aYi}J?N7Q|ZUL?4?Yj6lI!QI{6U4lb!cMlTW0|bX4!7aG^#Vxo7cczo? zH&t({X6ntndH?ji)qT2q_u1#Hwf64b-G^eowknnlwdjrIECjCDmwZ`M3LND-RBleHx1c!BF;5OzkWoqW7qK>w{;d?j6)tHh-$_qFj? zQZcWNTvUHAO+EN?VKAlJ)PlrMZl(8McNeX=GdS`5$Gxf`nV^ zG)YXtC!~LwlG}xi>S+H!*q^awcNcv1&>&%+ zygL?zJ){+aT{1a|yr27>f}Z`^1JsZ}`Bw31@a2_=u)p9?9&O0@CdIj~fq!u{FWk3-Fx%-hb;;r- z1&z}7c}H@lj&Jl*_8)&DY=L!44-p0}KkCxHU(*{k>qNKQ4T12rg>|bQQl-|4t!8mb z4yiiQaU(Z|B;CEbFzN~lBGK$LXCZVaSs;(eYCri1}NF|2M zDb=`op`#Pix7y9@5!g_Ush;x|D|~7aU5O50o*<8%fv6xUhdsolLhvGEJtK|{+VzF^AYBh5Zv!N3{g%=m6dOA_p}HM z)q<-!%AzthbEZ!p_L=T$6;- zMt+ljjpdLiZzLl)F;qWkE8nW`XNb(%Jz~)+6LYY}aguJM9Ld*sMddWrJIsP!@|#1G zU%Lqq*}1zc;Nw;Y!5NQ8$A z{3MvoC(&a1ivzy5V`@^YSeiCb;NWr4J>d|1`H}Z_&h~8iW4E!rL`5#b!>IdW{F*>e zjD%|3q;Dhc%bruk5r)k=B(H!JL!Y=b?}Av;93!k&0rN+Xl#v?oEgSj)O$P3=9o2d- z5Bcl~f!y+waGp;y%C-V+%nLRTUoI6H@=I7u72Pyp^e8qu5}gX!!OuvBB-t{uu3KX= zzb3*^8_ACq5;Pnf(UD?JUv$^=YiLt`k9*T#m1ly4kQ zNvgHMbKEL=VD+YMWywZFp9+R@Vs(Qr-z?m6zWfk~GTXIf*YI|ze}zL{n`eG7ZN;pY zp?Q)e*sId7t0HS>I9o>F^Y&@{KES59`)i5!bagr0jlQ~=>(fZbx3*Bdetf3g`nTSh zICcZ{`T=dTgKrev{{AeMeyQPMGr;(!Jm*MZ+%Dy2PHOYLA=!^Y&0M5*>##*_Lv_V1C!c7<5<$zs!3PbEx}Lfm~1KEhv;mU;1-2p5*1JO;jPJ=pR4T1U1G4tMA%JF2C8VWFAb@)G1Io){GM@U%tm^@18aA zUz9YeGqDhh(L$%BpT-|}NTaw!U`bF@dC;iA!nzKHhML<_@>=L`9~7I=?cnn^=W&)| z7yAfVq>luesHe-0PS+JbB~CinzxJ1@Frrb_l-6BQL{ z>Q&TEl6XjZ0_((%8Xx6>-!^aHxH`Uq^d(j`fE7VoBa64tWqlN$AB6cHRS(p@r_U5? zar6w4K}|C@jiDEUf;gX@XtN6`fD-U<&EGdD)tj466Xx|C3`d*>0TQ0J8XUOpY&AvD zL&YTYyS>8+zGC2GHjAyuW~u6$SY7O1@@YeYcNOoxLYePWTR+xRP{*BKFBCiT5pxF7 z(+I*ZDYukybA5=VB1FaR2}jg%s-mkYpooy#`I9=2k{GwUm7a=@IXqC2l2iMqLl$X3 z<0GTedwm8xB=yud&cjo~ca~kJ8pLCQb9IS@O~!uhA-~_pdFs^#HwSet^NE)I9)RQd zV+kkY=tAG`D$>#2Lt35Qu0p|%tta;wFKq3MpVID&Y4$FOLhdtq^bT)Kg){bH2eaA- z-gAW`ER^Lg=1tk(u5|HuP3I-mS$TAyO3I3TKb-WY)p7~iO<}4O*qz)Vz|9P@hSbvT zqhXO2#RL~@*^+C0# zYkEmRtKDIXOS}h3NU|hRBb3EqileSeY!~0GvIhh6P{QcC)IZ{j!=PGx?fQmfDeVP`o*ut0 zfgWsgfl8|R?iE|2FoVuJCWcnD=d-KVvo!vuG?flQN+Vj>^(_8u+m~^>UFAi(c7-P= z!!XuQ9xY1+Jz)vG)snWntX+2AIq6+X`!Ahce4I^i>}YJe52@>L3Jmv`adU7ZMu{d& zQE)nFM!Aq-l(AS*pi*B$sg8_5L%AU_%dzAVQk@HDjq6ujPU>|sfl%(TmTwG{JEgVq z0Uy^L5*>@as|DOrzF4U+lT?HXsqrSmzU6ZVY>MJKFO~x@9%bX|ks5}H-gLz0j8msG z@1o#kn}b#9C|ylnCPt4M(yUCMJo8RepdYm<9TT2eR+oaon4gH7XzoI&SC8p!4a=}U z@w4dm=@=+eEI`@s)xy@{7&x3(p2x9iCCtRopVWgRlm8hG{U-A(UI%QTA!Oif z7R0>{e}kVDNtFn%2$hAz#8_}s8gf04P6mjJ%7;Fk9s5HUqN{L016uFz$ux^PE0v0K z9c9uJQ5zA(APymJR4@9fdCyr^g5%{9XY9pBg_zFAqc$CbI9)C%Y`dk(J|k^EZn+s? zkyU1PQ^lcxEjK`|hg|-?_wx_TR>OBTO}C`6ET2BM2Fj_cN#dart4!>3?7tZZ4%QV3 z%PbYjNLIMnGK-E+Hzf0AE>MZ{{kAT1j=A)ji`7MXGAZ6x3;Xqc1Y3#f$&i2$Idk9} zDA@%&gJl?`bmSDF3^7S_47rUej@y%w^Vk#?ul0xC*yd2D__)u=ZO{}IToBv;>5sf8 z<87eat{o(C9at}P@C$@v=p2DKc1(wa6Siqx^WmQd?GuPQK~i8vJwHxcR~s9SPYhkT z_Q_m?`sXX0ikkt`(hns-OK=VFHafpZNobyQ*G<*f&rnl2s+8KSSnmy_@NRKPu}r{8 zNV_IrD2LI$S~UwVyjx*U2|SM@+49_=o)MOlIje8w6wpzTR24L|eYLP92MB#6a14~m zcPciy-ZZIo*eM7J^?oHo(1ORpj3(rvc32NtEJ1d2B`J_>PTbF>@c5C28|qz0m3tb^ zn?iBhQx_F%*lZVO{i)W<$Fi~AQY|b868Gw{4=9U&E?%$cPjH*!XX=b1Juc7)A!$rq zZOWbnPPI?`b znpE;1UA~0KOqAiGSSZChX!DB?#r}l#-;zF^+bMW$u*;l8Sen6DLQH|`sidwW(;GOJY%Z8mYoq!i6HRtLY{v7QjxIZBI3&`r zb(0-VG5fu$u}l+VT&nOS4DQ$%BWC^Xf_9MfL#JCR5#7l()4A9=701PgpWsQh%qaUf z`;6FUjZSwHh`Zq+)-TIkk_b1nm}CtIHINw#%Uv_ja8-qGs*s_Y>{HO#D6i%fc}Vhs z#-94QAc&XwR1o?5Cs%khQM}am!f@ZMv>`(i&jKhRg4@s7G-Swd`q1g;cCQ}G+*EO0 zjLd*V`F8P#xz^}GsqcrGDO4JjL2%>kNSUsP2Tf)C$mwi6q1B6Hn`qt|lp$gV^Or~{ zwUwzo?uYc8Qwc7rt1JA4p0hk7xja*z3?0Es!)Yx#( zxTH39`C*4qN-5ZusxCPeI!!BI=j<=;lY@>8Lot zw|1A7P|v-l3&$Bj3!e5dGx?)~-{>JcltWulao83IzXpYs=b^T`l9Q>s9m_QPT8H!2 z8{n;wJ~B3bk!sp)Je;nc4LoxwZ1q=El9ssCT7Uf>iYG8M_uDy2w{Tv5s30jt)Nvtp zBpoV@f}x3vzg3OLQJ4cuS{+vVV5-Em`QldEq4w-|B=iK{H<*v`baUiiw#;pxHz#A# za3S7FMJW&d@OBSRRcTim+LdSs;hafywD96?z_g)_eT%U?oSH_*4%X1O`Am?&z#e`_ zbT_wWyHi5`O-yb);e<-8Nk`|!`@ZQnXI7rR5hLi+sZdk)rHSs%5x^%(DXxBEw-P-bUy#`vX5n(Lh{B`)-+AX=@@v38P zOuWO#>%~EgS)ntIbfNi|v26{#x%uK6c$n{pV>$3?$X4x+0(6x%hbQfvX1b|N*E)^W z=Iei)^@`SDS~~_UmL3VLe_Awu+WX<)QR2$bdnsA9mNPrD?o#RR(VDc}*mi2UanDqp z)n%+r>nB>=C%T1b|=lp?F-#9!2%zxfeeY<+}0we zWr~E|?V}eOj&tn_?8BCwKfMQ;caNH!At9YS%IbdpE^YySTk4rs($NRp$-!b)3H|iE|EeVC(((3%Lp2fy8(9ON};PqI{ z_pkXXP!l@T-a=amXSHNPw%r^3tx205=N1S@tF;CA1k7c9)e2sEn#4>cpMMTwOE0#( zpP3Mz#XnG+3mC%pZQOi)Tla+}Ehk;a(4S#4zdA+AA`Lk8o9jPI6nn8!6QyW#7~j}? z+8HljsN||#+U6o@FDBnGDPMB2`#M`h3V&3Bgv%p%W~#d4;I}B%_KAo$&xs}QdR54= zpkQQXQ8l&xTH(qD)+9e83hZ-o04J!jr z5G>?NTaC^+=R0*jtCRfo_Pfr;gXDT+!j*3}0m{pd0NyqZ%yx&nZHG2|T6{64x+J9u zyt>`sI#Cs64E@zp`$ct%oyl*7wrF+fyE=1M|gAp=26@)SJmSwRT>gC)n@jqiVQjy}?%L z{dFOl*oQIuDk-g=+OGq49gEqoI`^AN2F<>n^nR2Pj-*rw$!Idqe``6MD^+Y?XWqZk^ z(`v9dM#f<^V+iseXWSohgB49IYoL6uz>S9Mar*~-u#yvf*>-KOC0Zd*TUTFlZVcYp ziggD~G%_o`bL^8_4@Q+3h5by7vV_q(RVeRvY@cAZN2$sE;McPjsA9m|yD*Ho3xR6X5qsjrvtuS_PTa3$N-?yZWFRQl=e^`Yb{@$^y7j{S?2mimV&ZAejFq7V57R!!1 zFcxyFCFKR95}!n%+={_I6@qpM^`2WwgO#Kh5r7&au`!2wS-v7l8ucW~*C(WO) z9&5s$(8DL+Nlpw;ASpk65rY&$e&y5@M-q8!YX8erVzSW)5EK^OT zBPS+$RcA(%^ap~VA*v3LJ}+iEhF~4#XlMx=m8zKYABQA?;g)mL9WnzUo(}HEHLg2t zT+P&oHLu5bq0gUmJoqK%w0#o2>#RO}BKXi|+BdD$73In-7}1>u4)W6bfCLZOEekQG z3K`Lbh}iJy(XL96)hd>{bT#e_cuwSzgFLZo@xgZFcxfG~Z*&>^;myHIB_aC$(Ceb4 zxy|-7uF|`t3OfaV_wRX2QQ!Omh8;M~ecF%BP!~6%gRg&KLt-T!*5Sm}6Mu3vao3-A z(s|v@{W>xCV%CuS`>WA{Bm1eK_1IWh{SbxU={D|R1&Yzm{@&>Heu1eyl4fk@$U2H$ zHgeDsIEY5l+)Bs-r1y?R4Zi))y<_dXNInVntshk#)R_hWY+^cNv zi2JBxl!otntwrZKoor9msujI%~Zz2D1WE^lyG^>n}Keu)8%?6OGc{Seg7x%h1FZOnz(?i+MbKijcC;qz#Amx?WzqZ|E&{Zbwqo@58;XRl2Wt|TrXVJccd)ag`KV4HS zIn4r`s1=y9KQ_W{2@A`;~psB3DlE!F6Mk;la%s8W@?+sb>1e=Y9~! zRIajHW|xil;rI_n!e*Uhw2MHeOt9>X(1m92$-6Fzr)#wKO85xeiG>aaU&7luAHV(J z(N?~^UM?L}-lMY_=Q$6P;n!gH)3y<*2X6((7J;=ZYqzms@fbZp->-6nM;tnrT;lB< z9WSQ6CU1&7?VFtW6n+|7c-qE`;xLqTb=MOIhLa!0Kg4)B7v4P_u*2HIs&72}G3|@z zql22&dSZ4k&Uu_f4D#4CsU<$JbC{Vq*g^Y=?y+e$v7@*S)vdN-;89~D_K0>|{M09S z6QJpHd!L<>m>|^7r!m!(FS280lZ!LdUCt3l#QMwPD#=O-Hw#&hqiX$23>7?emKC1T z&qa>IWZVZ=lST3%$7mjABgJ%_Rm8JtjWEH-yw3UTO4z|4jPMJq&N6HclSOrl#e$B#YPrC z2{tWy^6DjIvwJQPDUyS?FKQ1*-VHuKIlx#DcEys!TsM9{^6qqBYlj8CbPzIMphQqg zkhAnID9aS~wRVf96b_VWbDS~n_-nR!aIF=a7(b&cYur4RzD2<5{MSbmfp8_kt@eBZ z*rSg;HDVPqZBi>((ekKoGrqv9Q-#NIM;U97`Hg9SuPc6A(QnDcq;BCI@62k+vk+*w z-6A%ta9>+3(HMVu_f?1}d(4!Er!^bO!s_~{McT;y)xu*+h=m5VoT1y;{V*BFljHmY z^rs-=&pLf~8&ME&b4?-V5RUER2l~#*ZBVGbt@S>={_Dw~Y8Kk@%#D_d#Mxf_>4_vV zSAABRp1zc&Z>Pp{$Lshya$m;Hn&)}-Mq2C%LS-p%*eVaxs=jR9kwAg#-<^%xzn5|M zWMng(uFg9xGg9(cOMML7t^ z{)Mv2^^=h$8eZ3C(qg$v8j%_8?cRjskBxQjfY!7Re?8YVu};Us><_=>{vYdW#S3Pi zaUQO?yPo^qj(4}rd~r{fjk8zRIy;=eiJT>rdZ`m|I_p;v!W<6Ex5JM=&0lL0Dq((c zd|5s@!@IiP`H~tRH>|M!<%;BN$t9pMoOroWY-op_&_}Lm-T>@OG3ev>7(Ed{f|69n z?hBjaAi;EU%_+~yIi*Dx7q*7HcOw+vyt2jidGA4EL2BZ+;>HqN@A} za0}IFWIYz#>N`HCqtOFf5s=$AnTjq+U1R|a;&<4yP<+i;6WPs3kW$95)$2Z+gQZB_ zFD23y<0wjg`5a#0mTw83s{tY1D&Qc}uL6qKuwzM- zJUe74^Z=PCpR5_4h)o>h@d`1|ipAIbyK|l!1roInWz}sutppu}R4T)e?NPgAW+oTX_ zKeU<6Of+@X#ckMO1$DmH3-pQJ-E2I!$kk&MIH-omojIsGxz-huI>c6A&Ma`)C<^l; z6Ninc>6i~_NP_wWMR=1A9OQYPi9-M_%sUSM%&C}fP-{-B9*g$0@N$u~b}V9y?qO`C znb4zzFZ`_F4Ed6bI8{N54{kndL3}D`w4nCbd_G=@e}qbuaD@y%rD%VivSL@4M!Bte zB1PE?6Wja_4#LINX|6K~KDSW}+=FhYTH@Z8LF3@1yRGu+v2X4}(+(&8X(N!Rj3oR4 zuz-dqNbY!?OO%hcyVE^Df`5|_PCt@3-QBTmQ~+c-likhT4d0-PsY|Rotq)wpjphgB zknXEms6o7bftz>6g5&Ub^|0Q$oK3K1Xs zpg=Ud=1evSIL0X=Y>lpjaI!&+-?9JO$vO(!XW~~VI5qDUL6EV4U*c{S%TzqM!?edT z^@&Fcqjv-sh}#TS@Wq)kQ`EjkQTN7G#?agH>7j8Zgk)n9t)Qx_xS)0(>`k_voOWFBFnAGhX{#@;UBI z_S1ANmh)*zp6Z}*&lQh1z3sOp4BD1c?AwytUCX)joAGTFe9|m z`nLOlO?{B+WOYXT>nJk$g~dtt-9j^g)-U7NM`oHTUE=Yju3VGrngW_~OOy&f+{Iws zw&)yFw%jRL;@CD|m~5qPubYCZXIJO7_Nz4$x>#_I?x{VZhrwNfh>#n-DEv=&@ zxjz%xFH!;xM~~|Xgf|DlL4(xDvha|b@CwM!oVNL?PW=>R=~iIR3s0VLadO+YZj|f} z6Lqi}%;#4H6)4H52^r-~=DPFE4Zk#JbjU8CcW7_Oqn$Nm)u6&1sPR0PZDFx5VV+Q4 zHxHy!Z1R!#oXn1YtT?1^GASTW%>_1bK2`Copb)G{Jr61>PDuW7fBS{u$+n> zLu#V%t9miJj}Sux6Y*Uj4y=-Ng4EfkGn=R9ge|;tXKjR8)TNOB@%=(?#=(45COF70 z#|Re-d)(?T@OSqZyj2Qmue%;S7g5C}yt5-Bvshg9Bgw z#~|hjc<`&C1JPVvV-N2_n|s#-8K%WXKZ-r6*gofq%0TXWmsGrtQ0pv5benO;JjT7^m9)}eh!}a5|n&E^Vn-esPm%$+G z{8M`CnR46W`AVrB?l1-HkhLj@PcE9l<3B8s|-evxAs|CxaP*Q9Y6pjLksAs=Y)1e|m$w7NMFW~8S9z*z8OFH);eWTDhmoe(p!X?+rP6e|GiyJ)QxdiE}x!s2{l@jFKp z=KD9F@c1TfXj1fW_?kIBZTw!MZD#b?WJRG~M+dnT|0R~h6eoL*5qp5!WE=Dwh%B1= zQHU}g)}@eywK5wXkBU>fCO`f9>@hgO#L3!0DY@hczy{WeQ(-z;Fm;vn41%K(+{^kJ zG!@c7r~A2^n-U@%Q5^AS%Qz);RM3G8Fy}*qa_L+|v6PulJlrTBOi|%h3HfSQUO!nQ zOvCcoP(?al$eRWJ1Q4!cBrY@N%Nu|l9`1Qhe6p`G#Gmzw^WD+@v20C}=1x^rr81Wx zK!Nm2Z9*dhF~s0g;Ve`oe6rUpimKLH{X`nMUlUC3pJtZcLDHDOP7D)y_mKvQaM)M? z4^?bIeDxLydvCU%hEivRC$dQn4&w7~y`Kn&51;uDyj?}W;>@ae7yu{GEv;qz>yC@x z6%WKQ5O{#M-r#4Ba0by&F-ian71x-*qXrF{!mf9ESP%MuVvA%d90P&7A^S_nyVd;@ zOvpg6gF0dWT*BsWoC;rv^#9QOMB17cE&B(LPc{P*!-jC#@x(kXgJ5TL(1pzmLMicm z$tXzn7vKvFw=;eys_lLhey3EupLihFe;i-Fc%tP@E5PFMiH^E(UN?mVkI%_=&3UaT zoh;_RoRRM9=tO8;zhSn~>bU)L3ky0IK*T5fvtO_v`BK2fUg735p4fHjFDA`J4jb47 zcX=*#P!Z!Jc`!j&waJ>CFpl0S1E2?^sD^s5fIFrvNod63t zEuJ@`tU5z6bqtEm2+7go?Y#H)NjU(zi$twvt`v#o9Po!n1B(be11>Ny4HNin!Y{8) zVRK(|tm}n968{{c#q_6_L76-TAQOp#I@*jQjFWD@K@TsJK4`grf&~x(fDg$G@coxXEQT`R!`CH+9Q^NkIUDrzUqoaLE~u*d+T`0!Vejk z!(kIPi(+b7QlK^A0gM^l6F+C%zYbY_3$K$$>PF?TxtW(?2+F5MsINl>q~|IHHdWkO z0x_6s)kX~qlPF(?A+w=(1$ScUV{Rz*6DFW_W?z<>!n=jcVB<5X5AQ*NeZVmk@T~oc zU}=SVSWi6OuN{9y3Q918HC*yvRfF?|R#x8 z&ONS-&7xIe_SoDzWZHj#a?1E8guOjoBQVv6umR>xWmWK1Mld|-PHQT?1GDsSW;PVc zFgV!xb5)76MBh7@yj%UZ5q|q z!GR8JX{yL?sVH~WD)_NYMVnOH6Fsf9l+-@YtU_UO()}dhIPW_GYLsuZTzXqvO^sUQ z6dbv-`^z&WpDW|uja&hM*R$QH833wmm=|}|^0u^Vhi_C?H4MQntZ8JhB2JI|a%l>C zYXkQAfs9$J(5U%=!&AalOMmGPON!>AanbDJ@@rk?ENvAqPaIY+eKX+=cPJe;!ZCCyd7w4Js#^1esDZXH1 z;^Sn?3gp=-yBLL9C{Kg4&-~HwnYNP_)_)_LS3@Hnp`A1Nlvcc_g^soNRw<5@XnaoI zj>9dmAn0iz05i$&adq@Am>UG2(sE9p5kRB#ptSqnsi({_Ve#4AxQ$ll0m0@C5N!4u z#eaIYf*qctN6_kV2cPm4fY{|Jx$_W^wcLMXw!Did<~OI4)h`;Sif6P*EFPP~YJ*<| zEdt{=ux$Fh*iLu>N9E|boDwC*Ts{NIkuCE(wg6D;OmS+Ea~Na7V?l8{z~)~=`$+-U zopduTJ(Vo6h(P~WtQm0h;{`WG6M!VQmnu@zKSgy=-0>qkhDgFn03RzQYR;dkrT@b` zo25f+S~@*P;1IbevaPVfq(B20=?W?Xy?i*F7XVi|5d{n2aG+|Tlvo}fzA=M?^WsyH4oon;@KO}RK$Aoh|I}>vDWavulT6kGaI=~Dgs2NAhlM1{ z@Ax&&h=LbW0D;eGCr19-f5!SGyZcwgC&yVl<1wvm=xRmpduS?DKsy99g}m{n@Z<4a z+*0Fgi2#iHF{o<*o^d=NoWe~J2=ltO7vewCP6MdrL-Wf2mI6WTrp%#e1lia7vtuG0A>Ra!Z~e?FaKki z-8#&Obtq%t9KKN5!Z&saQ|(N+Ks3y@NF7kP+6WFx5YK*?#|`w&#AGpNzF#`Dp%pVE z2dsc<+M*R(mp|ziXcO$hg6L+<#O$_#)q0a(iop0|y3s1+)4+rAmuKV+9ae;qy7@CP z?~k&(k6O8|RJ@IWP<5cRT0rtJs1C}}^)vs6X!vOBzX3B4+&?$sPIdlP1)AJ4A2)_| zkJdtMJPJNBLL0{CU`EmzqU8;M7&`(^v){o(1l>&! zoXjp;_;N`nGC}X}^$vYeL!l)Ey1eO-*_+=Y@MZ&xrnYX5w8OCp9k|+(T6o&f3+j{Z zqLL1Yo+_@{>_C$?IKmUQsf8C!z>usb12G!WCKK4)_4`GBLTa$0D4HdH53YajO$VRPYf(>^7JxXk1kJlMY~oVUZA# zREtF&RL$l&83l+(#1)d~baU-y97@Gf57@3ppkP`w)&vgPf6UO1f#3nWZj^(0anA$S zvEhXCwBQF6Qysj7y8@{HhuI*~G#DcjGyfw*yI+A`vX-k#?_aM#&Fa3O1TmYz<~lS| zU_!n{=U}E|Ocw*ehyH_Xwy?|n>kDlGGvNRDr-ByVrZRY`Qts0Y}oVdaSG7Ar{7QgdH7FxvAtk&71_*r5Z^A?j57|-@ z7LAkVX~rkanu|_{fk<^n*F2RUl%JNd@R&5=^C!S2pJq7gV2w!b#N#@~-I5NvsTbu0 zR8kn`KpYZu1*esKv@7k4CIeGs2G?2Gs*p_p~PFxPeCX;S7O}HSVwezcJ(KnX7&S;&wFg=Lx8lH7@zh zk`9-Gzmf$3$jDLI-Ld?=kK^&Hf|^#xhw`MG)h;;!8*1~rKmi~x0;oJKR@QKUR$O3| z>&AuU5Iz)(!G4tI{o`Y~bBN7~(+@UhM{kL32%V1?L=A-{|86qy%1cYhv}XZ9Q+zht z3U1)u@)cKRTe!YS zSv3%(e*2{2I9aq>3uprBw30{&xB{7q8X%8VXI7*PQw31cL>KZ4{I?%KCM_G!mZ%@v z;U9wo@MQ{t*nfdE2%xaH+y*r*DF8Z&dL1MpoAKa}5HT5~)g`RLr8U3c;WT|5rRY5C z9M=$C2l|Ur+Q30NiZZYvpaWS~$bdM^pXPs#K`G>a!8k1D10lH+w8y5QPrEL^1?Y^s zAKs}c&Mjo-x5-9p-mAF;ysRdW?Ugs$hj|5w1LzghQp-%z3c|(+0l+WZ0$J&AHWyQeKhPQT&JK*wB;mw7zAkGY|0aV!LS%bP-83_`6||}Xte0oYv>xTsX9~O5lGj29 zB!hu7xGQd6KE1#8@52LZwCE5Pl(mW>=J`Bu^-)EhCG9UBfE52AN)}7?me?;`P{kctK^dUWp(6R}%fdQ;iHK zh(16W3&|*LS)?62o&EE0C}EP|OZ(^-=<2%Xd$pVFJH0Ql^R@RY1rN=}tP&~>)Z@oJ z+o#7;>wTt}+U+}5okTbZ-P;{0qBxA55&crXw!{|98)53+volgF##<|7HbxlbIJEv| zVFW%_dqu34W9aWVYNR88CMZ;n!C3P5c^2G zxBayFEnUr#LhH18^KW&Msin5GRAXk7P5$sQjttl%1#{1d_Os^{ny{*Rg#>Ii?JJWJ zZfUWqJ?NP@R~A|;5EMyb9IiW%$G&46SQJEgXF3Cg6XAda2F3iT<)JWplGbKamujGn zliku9A3N)=iLK}{6_%ec)OHK*7v9NjG^xX7l&l$g-5t||jDa$q{!g`XUt!Jpm4EF|DR?t=o?IIRw!SSbPRJ|IzHJ`$*vDaX z92GUYYaEwKnKaQyhzoAUurFg|^}03bJoU?)={%A|J(~fsb_31i8A)~O8FFk-iSx;3 z+mS5(?;$n=Bv2S_KIjd_q#zVC216Ay?{dRwaED?@K7(-3scQpCCpCR5+qI_jyVH7B zGJgyo*<7?#)?HS_lvSXP)@T|s+E1j(yc0&K1NEQ>@4=U4u|lU^%-~+ig$ajt2IbYp z{?5C|k|Xbwmj|J%Au;YYM>0BWVV_+xn5zorIR!`hW}ssl%7yj}bZ_wc8-DQ34TKfK zjJg+fMhs3uG*`t>$kOZHMabHBZqW~>1YN+JrJ@*Rh_t^iF(%j`iE2ZO^ND+W5& zwzAc}oR{qr5jU=Y0OJ>CGdlAL?<%!DNlt9iQL1TuIt4DBCvhbAqNJKj$p!5h)6(s} z+Y!{b)?^&q-=|+RlpCgjD(c^;yUM5t=tu|igP@#*+huFP>1 ztbRv*IzdbJXoINyIy5(_6WbBBJs{c$18$=e)UTpeev*tvy*tJ#JM531sT2D4bNAbX z-dMRtd%sEIGY-3F4)F}5xCMNCT{J_B?b@(P0qPI&oI;MQN~4r`e1u5ToSaGfjeT*Q z^PuekJ=?;{4aq+y@7|;u2iq+r(C27=H>Y!}+NG;SZucqYAhVx;7a)KKw~TlUD+ka_ zl@+iuW?0#IdR?_VwzfZ@5*Vz1&nncU;%&63E_&k=NZC*wS8sDwZdR|TQLUZz=}&!a ztvOLg&+ZFf4-(NNly-SG+b&+^`CDKeVwM|8Kpd9ji!MhG1(~Z3x7jspI~r=1dvuSU zlzqtRd>9kzTFmIWPyOwS15I@u&Ekuz%)BRM|%uRbn8$$bl;~a^_HDG$K|w zs*1i>DKu-MFwwo_dCaLBC_bKN(N*_ARCY)w#cl{u2)Q9j0#&mQdG_pi*0hMhIE-p> z?WEKB$Vp>G8WK|nxbo{>imWQoEsVK-U z98~JOLotEwr`d!rGMUA9-?~r&v95%}ON?+)tcnYh?aEk);!l%|=+dW&axTEdhq2=$ z)=QphfBtBMx{V@*8ezrs-% zA-#uOpBsXNr%lAUaG{v>3A5tk9wr?-Ren(;4L^trd&~XVTv44iSM4dZaWg#~H;-6? z{d-So^y@B$FZ|Frhz-KNUYkBoV}WfUU1Q<7W4p3mGkL@^_2Iz9q5`*PUG)AtBOe2- zzoHJJ5QYwN=EMLxQPMjdIjqryPz<+nhA?*XV9F3K=pkKrX}t2%i(>@JB}nJ@SdsiVsYv#>q# zfBl{-LPF(_|YB)ZnZrN0aYUSl}3pzC` zWu~0YW|tC&usw~6aAEXYs3KQ(7>pawPdy1l_!2TzV-a2V*cZ%OR_J#W!;-fb^cC>M z8s+IM$pJ#rFFun&7d|xu2Zi>mCe`6&cZ8-7SB-5o^AHAWi?+`4`o*C2uQVmREF8Ms z5n8nt_Ih;8xWA*k=8U_)3NI$YuF>h+_6d2-@W-!m$rrb@>z8@qU)wl2f1=#^;@&FP zk_xvXMrZHZTeJ-#gAJRIjy{nJKY78dchj>`A}9J{Zk|JguMY9dkYpih!cYvg8}mzc zVVFj&sKENj9t(p}mcu=*91&F}uhLbx@B{aQ#o+vhqHDE%D4qSL$X2L@=+?aqUiF=@ z-I4)Zdhg(*dYU1Z7JES(VznqTeXL+OJ*A(%9`Du33BRH`IsK+epDN!pW24;q9osOG zY$*fJ{=Hsejz{OKgP5*S+3yGBl*vhQ0`&&(tjFS;KE~eSRY;lR=A|PXndS6-w34H@ zYQ9vK4__G$PZ7f$k_%T1_=eXSKTt4~C^S!;!aDsQ7my#oj%Mxfp|lcojzs)IR7<9i z&Qcv2jFibz(kb2$9Epjh^ZF5$g@7KzfYNj+_>eKFK_BFLBHjPKp#6#duKxc~S?-K& zNxZw`MBVibx%Ifr6k=xo1Bi~Zop&Hvlv4(8a-VQ*M(P*2-JDvCB`!=gJFk|lmFB6$?3d?&uUp(% zOf|clak{(>Pmtk`C5spMLjmAK6hgNInnqd$l;#-M?6nHd7sXp=*T?x&h2OmD>N$N? z<#NSdhzHk1RY;iRhuWx_P}xVC|5b_}8n5F}UG(ur62@I$mTNLTYPMxiEp-iTP=P?U z%IdD4m&r(V-R9jKmgHE}#E7xn?>1ZvMK_qNyq?hzb{U%w*&n08Ef)n`<{gK1<)`B= z(8Pok_BKkki(=h}I-SmCeaMM76BTHUH1?TJ&gLCi`1ttcuT^V(*oaw=)V7FOBRF{e zBi|SFdTX}TQOiFJ&#<*B4lm{Ys&i?~pzq+)2?z~8JNoL&x(2^goa{%1e5F|p);+f$i2HhW6)c*9h>H|6ku}r--vt1;7o(ITQs(9 z+qN;WZA@%yV&_RFb|&@{+qP}nb|%=f->UE1XIJeXr|Rsg^QUXwecj#tue~(wBi*R?a}r_4ylMDfle>(NOG1GbfTggTaCG+qoH8V%`EDWg`mb5dS8 zeJn`=O@b>h0PeU#KrbgQ3Jkt@iHPuG*OLu6z zqfK4&O`v*OP%|O5?Nbo7V`{0aI7?cJG48a+9P+^VSDuN01F;(ua)KWHP8?thT9JL68?ksZ_~X9M2!@7rgK+LDp5PFP79cNssaS%9 zbQ}*0JGS`4ZM=1GPG&%LnBC1m*jABV`o&*0-**p%1%ZjcPWr#8>414Z_6CMh`8Rc? z*V)gp(COXDLkdh4a5v%qX0W%eh${MJ>3?~5TaHMD z09zcB+d0eLGIo#yx`BnFY6FJ8tmv z3D}6V+!7HM@@ph#Z_+D&ly?4v$uA$UJ^Zx@vE~#Nk3b{QB)&jXW~fNzqiZi#Msdk_cv-vf7fY^jghsm<%3nAhR z9~c7?_{alepy*&C+9pMU&lztE(jQmj3u#y#{JeKXw(fa7m!R4g$fW}A<8h5@APN~Q z-H*HUZg%t#0-y?;O~xu#YxrFqrEZE%J9vGjj#=lp#OR?!Tqk?EFKuH5zyS3(GZfOI zO0C}&P=e6gU!&J7yB!xJx8c#^B?b$MnNz8#(pa@b<}Y;3&3+UpGNgx~G1p)*pXpdH zK{x>_Ix!hJOdDd=oi@RP3X3d)(b!|-wkE@GP)v&5I{*C}{^!`RxMb~~7?!^6xGhcUOV98DeFY&2zH52DQC-#u34V>L zNB{5(9V?F3QLR9NQT@uEBALGa{|XdujwPm$RrHtSjP?mk7G z*4=ii99KRXm9)8!_Em+TzO17m#it06JWJueuQI~Ca|qIo{xLQMxM{hiw^0^zqZxy) znmPJEHVf=jKqypCC-(SsBtEse#bO=NIeVgG{uRJPm{cG>tCYvVf)U<6mbKo#Dt!G< ze`)-3#=ycQ3(#193A;~elV0@8e+Ul#oqSAhNcKQ3BOFog!WM}@G|m(thdUX64?)I4 z*cD9%v9L=lR0;P%50GG2d&I(4fvDR(|3gd*PEbxE7gUc`5bvLbu-U1Jqzji(oi3zKpGA?p}gg6aGA!v^Ard9*fF zB9s9JR+b8az@$hTg6HUg?|cg4QCEzJ?Pm_h=V)+TMZrr?8S5R?8EL1Hf!$I6G@gEa8TTb&T~Q@c4mgXn{VffZd8>K?gGoAzWhb7 zar--Q)utPiD&aW>!l9mNLF=Qiu%>U z7k~e}5d_JUZT`N~2Lyu6qgwX`0{}E#G$ab@BoZWasWC7BG8$9nB2@_vlGSCjUwzwk zrjDz1X-zNPSlaO48ExF8pd9r^{*Hd%p5DyYhZffv?Ch4)f7p+F;Yu-O;qEO-6*Q*) zdJt6|uJDa4KiXy&f49F}ndT1`!>c68rR@gn`gKsyc<(Tw+un7X7trodvV#kW=UEhM zy4n0WbfK-fqKTY%&n1MEsqr6Z^pVID7-I;=(CSnyj9RvCRVZhL*cunZYB2$YcV~uo zlc`>xaX$JqdU353d#z{GGc$WFI%tA{ltdSy!`oqV08!=e+V1B=)>|awK_V|NRgaD` zCz?@O?n=hOOAd=BqcTbGrvY!}-JKu=0|+2%qinWVb-?I)04A`S2!<*|D|Ch7ZGU+| zwR!rg(_3lELMTvfqJbu>v=}I-D&zL%iJdUz zN)FzmfWD9*IsIkm6^aBw1PA4i+wAf$xLY5y8+UT((B&ZFlHVi}x1hjajx=9w`6$sR z!qdEtnr$8xM~5@B!uAKN$}7k6eH%dgsEr)h8qKVeG12uN=qV^IF1%2S?b5g+__z|UTIADkm~k{ zcaYAakW*&B3!GRg$AUjvR^W2w@T=o-<-FM7aFLB#Kn3~CPT+Sdy@BVXBol|@!8fD2 zsfX&2-IFAy9mV-^To!qgm7k0?s-$pUVZv_#e6eo#3(gM<_c1j|>mUnS@$Ex4eweH| zKcX9%sdPMZ_N{w1D*kOKzH;4&dVCr%>=G#8 z_VYWt(09;RAdDFm>%sKGC-V-v>eaBN;R4xqZc^hOT3qlM4uP;Rz2AMkn;e{*Y)r;D z&Ko4%+-^#k*=74Vl;A7A`xF3qqw!!xr7v#1sLdf6cP%GU@lJRi5TR$Isy_R#XyhSDcYxEUttE0!5xABKO zG9?Vec!l*{HdV855zGt0&gr@2QWunXso$bOuF4+TAR7O`gyV6@F7BF9_BaN6CQ{C# zPh;n8eKO(a=SNH@!+3|b@!+|&g~9Zq!8$jBXzpP_XZqKHHMW8*IQ2&jOM%>mVa^_r z@Chv*(P9YC9#NusyP5L}DWOG|ell6v4E&H1G^T*Rt|mL8%yOo2@FStz+-sB$?AvbJ6&EVM`* zpZF&=GZA9RP@pJjoPgEB4bN3s0G)!pZx=OcOu2$3qA2*Vk(hrBbW7}4LBOZ@0Q5UF zRDFog6I`?sxXNwSToIAIAQdZbRZ;~$J1-?KQ#T=w01qbCl)SV8?wrGHXrotp5fkB~ zEI}f|{BY55%bT;e#uXaIxXaBdEsHtCQ1bz_>~|YS_(Ey4>gs1 zV9&0u`1a_0Hb1LWNKs=h##+i1G108Oae6=vk?=Y7qU50tci1wur_rsCuQJKfHF*9S z@i8%`as-m}Z{jRA0U?4S%GlpE%Z(ZW&v1ya$foodL_~yKC|AQD@jc{7}&@B+ZST#*09pmqpZp(kO-S4%@PZi4` z=+%rLByILU$wrs#94cS~Z$OROw}@@I&(>OpD?0u>q;xtGVP#W(X+Oq}Bu&p5R4gqI zJv`n*O#lpE1(09p&s5l|C-d)8yo-edN;lu;;gP9vnls;qJQIzCtGpYQe?QY2UAB6N zuLUpsY>{fhS=^6)l>81k7_6ooFtp3HOLcjAdm@X+#PjQ&xymzl$Sb`XI#Bh$$qrCl zH>JMB6&U4Z>N7cbT*#pG^nCg}?3kGz4--7eNiH15vFoR8^{&onJ}Kur|0f<`Kc^iB$=Znk?@p1adg9dc?&W{jFeKX&FwYQ z8NJCp@H?$%WtKS$>pT_3zqTPabHw8Z_xI6CeNj!1AWlhJxk6At+$H2+P5a1)Q69Tz zuZ@GqvH?DN>OY(ANSqg}T{Ro5pC5v|AiEA-Roz5qkaFC9MCf*rc5QLO=C3`VO> zS~}~wx#Q{p1>IkE=DGD+SEc}bp8KLOzS0*0d#qa5^aH5B9ccwT+XIfBD7IaGt1c$7 zpJBzeEn~q@g3VDf?mNvSx4M!c4Kw0Ps%;xE1|gWFdakZ9jMzS?!ABp#es}7!wCzMspq)_gwUnCA$ z*^j3~#$*SsuDKuOYR#K`)rR+xb%iUmqVzX10Y(d_%!WdVF;fFkZNJPmfvMhUnrl=# zLs^s2#D{n0%RvolHS+B?t+&3zH4T`87lZP@Q=bNxle&LF>ZBLtTR|4q(g-2y6pQZFC!~AZFsN0UpUWa0ZQpnhz4%(WVZ8zpk&x+-|>dgbVScIGV zVt)-zcU(unrK$q`A%CYL@Zh!l%(HGOaNn#(91Ye$t)SDk@y`4F+plyd{_!3Y-RbgP zZ>hH{&>VCyyG8He#m9r6>Z3ALA`IKJbvJi-#EQ)q*15BlguODdf0r}?j#uVAsbGXx z#EkBt@fMzfY_MtmovD2_`oP;^al&NXrMhU<3$cRYN4#5mF|<$9HS*~JnFfs}u=Fmg z5zjg~ljd)YHCC}*;_HlPLftk9Z_y3tvsSgtqVAMi+YTYps1JLP_jqk)<19+Q=#rF&OM*ylV!jDu7w zaCq=%A*=4)!O3i1{3Y?nbEyLjpn#6*f&viyv}yfwgm*u0>s&Z>?eA$` zDSY?Mg$JD|TZU%9__>mX)F*biu*M&{@y#bs)K9c|UHMlpvb)|}CL3lhr_`P=kEhn@ z$!=J=<44zF?`|%>?x~7O%abZ(HhJW&Q`dT(B=S@)#}bd&%eF3KsR(h;BeiN^jP+5u z>TyHc%i=uJKQ28Vn{A|#*;gKI9M?s53t#p*wcs@m&76srgtzvA9rsG{SJfKqK*?g# zCkKbg0bkBkG$m5$jlOUZE-@#cjl{a{)uc{UW~_Evy~pyj(a|J`OY@=YKuA8i)(X0% zINwE&;PU;#{&=tS(Yf5I<|)-94BjYu`NmgT_m&Ia|j#>U{X!eHg4 zq@J+g*4C(y{*9SxS9w*9{rzr%J;oMP)(A2?X*9(K{A7#SN#oxNwo=epZTv;og{eN1 zZNGjwjevV!q5!h@9w^zBXZn=xZ_t;y$c0G2e zP+oO;X2~pM7R4AU3z@v-nHXrkT{Oi7{PHu&J$+qJP&D{xc>5r25u1Qs#Cy;O0)^)L zO+6>zjsL0{Rv?7bp^_e8GddBmJR43>pTLQ42`im1Ob1f4b#h#A+5Pz^vgoQ_Gtv1g+Fia!%Z0h+*;4Ci(?9pyf(f!~eju;836g*ep z%{0_ZZ=xoBUtcqEk3CLwABNZY6Z^I%*?t~POXSYvsac`OH>Z8S>yi08cB+b_kJ6SZ zJD!<|5fy$tvNe_jy4&k)Lr1H|@y5+SoC&6ZaFC%tx`S^gQEp)!V>B+g85`eLM3*UHv@v!QLR! z1H_5eZHYx+-7q)fzhr;l!}T@$q%nzYIYCi$c5TBtPDel45ldd?nfO}a5aSI;gx{54 z@o*s?h!4EZvIyz_rzih^1^>ZTju_Tq=|C;B&MxB%vW`^JW*Vn%V{_n%w z9jIX`bBb8#Qewxp5pC1CwYD_(33^*YNcjN#v+AwQvA6EGWWyZ#m3h#FZ%c5p@3g`{ zAGW%=G2e(!-eYVwhj6C0X2yI3BD1!-pw*8Q2U32&_JWcl;>GLbi+>U=!3hB7m zMBKb>@5>RpDLyGsz1U<0($QR`vrBwmQeGeJ(RUenVRKhl+3=mujYYw`3kmlGi1-|T zt`h+Y$^c`0QKkXezty<^#9wZ*^^;BeqprRTx(~j7y(P&P@Hf2}c7CeiRDC5c3;55d$md*GP>6JZC9FpxBNCuw*=>jJKpT}0Q^6mo3HFvB5GVA zG*zxF{|?Uk<)4qU_?d&afLg4O{u>=j9H&v!fCuoJ^>^MLOUbtzKew6-N#~%0+T_s2 z`mU<&0E+Q%x*73TK`67vr{Oe*I83{^chOpRjI*TtTP;15O|%@2r&o`{axFNm8{D1Y zZX;j$8AeAvL%iANJJqiSuVD1mlb}Tod(X|24)ILiu2Iy~j>hWEMs{!9T6?bdUpI*x z9VfBCS5)6P;JLIg$1hil&#-Mho{`Y*9cX7C#@N_<-I@FB-m#SC94`0nAX4NNl!2Er zGA^~M;8{xJpBUd1R$t$vMzD5JX#U5{m$ zIO!LeG*OJy`-4BkFJUyum2Iq8)T;Wz6^T-nMvOS8mU^05xqS}G)_lYoXyty#@Z-9t z7^d$!H@|cz`@ts-X!=yscP|@mO*p(@?xYcks)a*T37^VEb4zvs##F}5EhG7E)IgQd7wFj8DIqM(tmDRFI_Z6}&JzVH#%!{1I`L18n-*=7l5kK`h zbv^5Torx{D?)5GQCSpReHH{$|35u>|10f2*iB%g!|rRk%@kc)x|~=>gy+Rhj)D536(ys1_f}ZH|(6is`1o~ z@GwSS_e^W%-W(JyaQxeRDOUzg&J1@6#%8u2{da)}_Fe(h)gK;x{mx4I-(Z|ij>CYh zA|Ramc}c$LyoxPzb2rLy$&=KJ8aBV>oySXNMGC{zdam<>M#!K1C(1P-ownx~SAf&* zetNbcGoU8h_U&3{$NDo#Q^0>Hv$?p;GH;7q;KYLj}Rdo<_BjtO&Z1cKhbRwmJ()dry>`HATG7EnV zePaLd%J0i}@vmIt-f|x){Y!~~&-uB}En?v`VIeTMKK5+(O=1VJoSbpS?fTa2=1y}A z+JM+g2YgL;;e_7K$nuzDP9HEYZ;2bKi5ZcHm7GO z@P~hrxX*E~8q+Z-mM?Tc>vo!g&duKq%QQU|GSf9ooJ8&W$p)7(fa4ZN=1g~;muIp8 zCiu{oi*+5K4c!fch7e;F$$1%x`qQCfKFRuzAV@nX6~hzbBH&jMS9@w7HdBG)=0^dZ=;IspNrZ~R|0zv4)6F@NOH6#=*fO$n>pmZ^r zJ6da66e3|j{ZLe>GL}Se^)j)>*9Z_y;Ez1Ft7aa{0Sj2ls+JS((@o3%zGyYe)aSp` zf`_&%BO25j#j596#B87B>9;JjbxRN{pJ81s3af|ST-5=(kx$i^+=TQk^QOZjG17qm z6L+XGtJgEJ0lGlIj%-E>&Nob+SPB#ntc+#e9z7e}5-A*MNjc^{lQ;FN?G~RxevyCg zKC66xYuUyI!-O2yWc~ilsL}V!z_#O}F2p44rsPjn$GDN#sP=E}%dM<0^EFVYTtNE| zB1d!cTQ5l5B*L&wGn`Syzj+{6=lDmU>!s}x3~UgC&`8Vqy zj7*uhK+AV?=sprqz4RUa1>HdIKlEOMr=}X(3=b1Lh?jXyBA3sZ+F6IB`cy%A^SE4K z!G%m(DYSSD9wV*yMEy%8VoMJk%bJ@pzQ>WjjD z6(L-eHPsH46e!#8`K$kM84yv+Qbm!zx%8rEn=UUkwi(IKLaRaX6AUl!^man%gBO$P zJACYjaUO>yO;8@o+tNQmMrjQ`Y&|Qkw}0AYl)@J@Oq%&ptsa>wF7L2O_`{?ggX(0f z>v!;Y+Ss<_7GzIcgs_6&79Td1t8x8q=QDn~KE=e6#$lNw%wqLGu6DzcfQbu%Jk_hB zOW>F>oeX3K@w^8sF_p^ZOVI*8R6hlvR9Kbn6ej784G7LRW6U~E#xt&H{+TJY(qbVUf21cm_+@)?FmXOIx^X|%Ob#mvEL zK12|2k+n&)7|dp5{2L{j*9mDJsEIp7cZBJzAa2Tozn#To;p=o zQO00*7k)a0@xjQ0?KvytSH)`y9M<@t!4cGzON|b@c9(hNQt;zS1`ZK; z?zouk6M8`$Bg;t_`pw}4j_C9mqQX1uP;WRHv4!KCYxfRihl}g`fh4I}4seTNk4bg4 zAy5%r?|Tbh!}aSEuxT&c)2&NKZu}+Rg}x_&6XQ_mAC>Pk)_El;8RFeq42g? zFzyNKf(L0DwZUW}s-e6%z?vajDI{~Z@QxRyAUC=kkq`P7nQnOSi()o_vVXz(+a@Xr z^3f0@D^!!SIR6EV_ZS5H$B zV`HR<4i;M_G2L_xn^V$#&D=xP1=r(_{7kk&#tnktJHv@o3Js*N1<$up{2MZK#2Gl8 z(Gfjd9^EcSyQtvb#zFY}!Fprj5+H*QTn@ZdM5uMa+NtyYQZx;hCq$H^=5_kg)zHrJ z%7x?1>u8b>#!u^LIM=&#(GQJL%@`&!2n8}Yj8JQ;$Wbk~22+Zbp5dS024%y}9}bI= z)@I>|hoM*&&3v$R^mXdlYt6Xve$UF<2gPlSjn0xr-(+(?(P3N)ulaWN8&rpzYjv-X2O_H&=h_lH z#)(Koiu@CzgmN5EiVvYyG@V5#j|{&VG@b1Pn-W9#h)e$n!dy}AjN9FAC~`8hA?kCG z*&-}*3&v)TB;4IDKM?Uy7E!iB;FBFOm2!h0lB$EoKa|4%;o_+60$r#jc|Z25SJ_YK z9%Khma8UHS#B~=M!jST$B2yFvkB}sUBoDm?ZVwr+DkVagL}~xrg;!)nh5_sT4JvQW zPx?vdw3{&Z$`W`73v2ZVdY*h;YErtw8LMg`1mCC~OKBiNbh>f{2Y&%LQ){t$L*t4b z0dMc3%#)(Wzz%}^M`^jD??CE4fE59gBh2kZ-^Ff51sh|t<)Lnv= zgsqOqZU5aIwVEssd+_KOh4;HsbgcGHzWNGb)dA0!)9vL);!Mu8!8urCp3RPy=+YfCcV}i8hWKJx@#JQ=7XI{gOnulH~Czu-jvqV-}otCbeU( z&m3#kF_V$x#PCxS_f`qv^0%q!TZxEpGPv-q)Tc<^O;(azx5bROsCXps*T^Xr%B&K| zyZ&ShNF$s`BSaIsDu@jD=UFn`JTpeH<|x{1T0yn_l~Tgc=DEwid@L&yR;rV|xI8OZr*sOZ8$Z8KRWTZfCEj630K!10~SEOK@Xlmf*5p&2nE2F;J(3iy*(};0}7OQzH~_i;X^;dk`E4H_zivm<64z%8K}~Lc^Rm* zaz(aQad))ys%F8ukJGEr2Yj?2(lx4zGqd;9j|h62=sC>+`74MW>RsC}mNm#FhTH^E zKhUf^Rak$JsUnD*rAZwsSintzQjmq0z8-er8*4)>c_``4yH$Aag-_I?1wNPa%+}V+ z<89Y$DOgN*mSQcxTn`w|2MKfzl!hQE?T2kvR_#qR zcu%UMU;!WQurV)397D5~+}+iB9q%7}UBqx}gU>F4o~#3D;8>h8j}H2qlbsD{8ya6g zlWQAj6~_#MO#T@J)~`Wj(fi6y%)|7dDx`uICW)0(`upxDq)9zkGfO#1Er4YWDI)KHJ$YSAflPkdTs;kDA@zwG z^_^HnWYSImQ|y6Uv~O9hb5*_la&FkJVvrN`Omk>h3Bb)Vuobz zV>wQ!LXfxuL-j8KCF)=2KvtFu8sc>e6JZr^3j&+d^hyv5XEFxFMfupD>>0l!*u7e@ z>SeS4ECum`y^u|5xjG`TI6_PwD;G0B5vnOS%CNFoPI0;JO0E6jRPVG|L0K+eGOsl$wPV=xM z0G*opfc~)K8&GxJ^M+^lbyAmHZV<6p{T-@{zO`QNSM5S2!Q)}X1YO+8lKcuO(*u&Zn zp^852Up9L|4pRWhB*+h~8pA~`4=IakUdTQ_s2{sHKbY@7q%L7a)@}@3w(vk|=0eRx zsy!Wro({LNrf|zd(S{Jg_j*V8aD{Rr3d;jfJqJJlph}+1OBU*A1#x8u4utA z01oLPv5pR9gN8Ej{wD%z!ZA23>(eUtmz8rF-n=W6_tE@7Vr(z}85_2AW z{l^;}nTW5MPX(0;s(&p`799iyMI5IfBEq?LKaKLMiTW~XX<{2q%o9&%!Jz#h)b19| z9JvQIL=}y8n2ircr?Yl0H0s_n>R-t#LrfIlxPP-c#E(4$p)W*vX_v+LM+K zgs$v-y}z?9E|ZRcoMc&uE<`(TP#M< z8b7a8iE~o2k;E)Pt{3uLp6Dd9su~ZIuqysDC1QHIFNh9hPfe#IQgt z1--avk~dj)1SVHMk$G3rnj2XE)HhhQ69_OJXq5oPPnF2YYFvdllX~fy`{J-|&={dG zFzKszR&~#X%#AXzEb+^7dcLGKP~!4<4*Z>$$=Z-SpP{16D9xd~iBDulp7omm3ob<5 zi9VrHM5c~+%!GIENi>;E{Ll$DN!xg%dU@KNf}fj%mz5Eff>KeU1=yADy!d2n<`q)3 z=rw;%WFq=w&U&4{`7F?zCpp$siM|h61j>$l7R(%@%uG97w0cTK*|)#A+3PyP;#Mku zJZvd9BDj>yA9hv$rw~6UpSPRt_-H~IpZvZ5qt&&toaC(>Dv}Av5w%c zxl53Pp;PSDDQU-D1(jEW97z~S)e)t&b5%G-3$Jr(Iobn+LJCXS(g;h=-v&I~&DO;B zwiEa(KO17m+6)*|D*es!)_?DVbR4f@9A$k(R(rb-i5g;*GJ&z%7!>rK_csyPGV-&Y zamiq?Bm;wKMX9#G<&DM&#}dfZ)P{p8+~Ncr=*C$Yf9H%r)P~2ZyUf&sVr(v5; z%oU#~H1rqM;kh*|vkJlivMdOrQ}5J-o7%=imgq`pcrkL&Y!IB?-b&!iT#diOt_>O3^WA+&oX$UcEBB0DNZT7Viyh_5(Re8jMW9 zr1+s=Zc%3_N7hc~ZHrZ9W0u4w-H!OEwRZWH1xM?Z4Z z(E|Mttn*d5h-cC0Vc&n%eQelTOIX3T1n)~4@6cX^D6kwRBk4nU%F9-0PetD#aCAtz z1VZw_aoPBYfKhP9#QXaDKY60q(t(jVP4;(;9EtJ)rprx({m)qAU<4WppGYHJp33Z4&dt4w`K!dp#LRgPXc$*z> z{6!WlnZ@AXGbaS2l+!M>1cRjQ)kPgW^NyLFY&g|9+>a4@J7tL1mrI#20}@OaHf_Nl zgEUgbMg4)KlJ+$ds3JQl@}3;s3R{$|C)`XH{L+>xT!u5T!GUH3y_2VJ%46pQIc;G5I6TOqg4NU zr?FhvMcc+hk_T3~J`)6SOmhdQBw+%uNQQrem7wGTZfye~EQAV@GZIn$Zj3fYwi<~` z+{aUz8L61VuGNJ5xmb3|b4e(JiX}CrG=QmVBF>CrT(RJ}j+)!LD4_WKt|ANd!j)Bp zm~WPZ_ANf8n2yADvE%|Fu(lhEfh(18wA^AVaO86~d)p%UB3mvrGn@f^LoE5uo3!vRG-crY%zE zvN{MYVEhSL&VaMjkg-RHTq z)we(gqf#0Ziq760Dql81TUH=}2K_D?b=Pkpda;Lj@Jm&k1Dznk)SlnsX`2V*tuCc^fxyweQpYKLRCIkzri+2igXIe z3Cfi^Ti^k!IWiO{3^6w^TOH0Tq>fYXd8)nHp9l-LpQ@tj*}-A+VYzZ5(9kkaAH=$k zy%!jql`BX=vda};QjlGJHB0#y%KEk^I*Zrxqyb2O)tVfhCf);;hWa&Y3EeMDXG!$&t-njvA>dBu0~Yc>Kwln+l{MVEpX@r1vQ$dp1P20 z6@LW3X2mNw(5Js62G-XFCH$uOCP5CP=nyHfiO zz|Gz5MVUv_n$jJ53u6r6LjFtYo}#w+#$f*pF6bI@)!vtW%>`O3#e;S-jSSN5cjXO* z#R?#~P;J7jXu}F&Q)!J7o)oSJjUIExXu(#T<6s#1C!;fRcnC}c<>oSQc#zo`SY5uV zn&hKqt$5|>L6<6G5@_EMM>+o&GwH{^R9XzK}w9(2dT=vw4QwpEvYtKKoXa>6Ue5 zy>r=pYE*QI11W0M?)|~N81F)Ot`em=z*yP%>Oy!rNusAy9gw-!7RlGktVa_j2=_LU zbx7t52H)Nu+R#7Ep&J>_xA_JiF$9D{&zt_Vi6VQc&)>Y88}FfYvL5@V$~(-aht#?% z5@kg*cuoItt{=4_p|Y#*%X?eM;KV5g(Lu2cgGxZpCaH+vlrc^jx;iR4bmW9@5jbjJ zYp!o0*Q&TmaGa`lKjsI6o!k?7eyJ-C37*Ct31->?;*T2yvvo{QK#iV6y@tWad?X_W zLS6M(Lu{1xNAG#HZ9wF+HH~pSj!sG2+TJYt(NcJ%ia(r50YK7481`hns|((igHeFa zq9@=)NKsTG=McQ#S$+F;N!)G3co0NvF<23mT?IS}C?xyFX-l6#z5wU`x!P=YP#D;F zpL?I~QnWP)teV7&jf&I_-Ioj0v*YAu@$iG$q^OKF14+s$eZG`p$u9V2D@&6^qRn| z?}{1#LP1J0`Q-*L6#f-LeZF~HD)6N{wmejToOS_{S;bu<#`yQD1-Gz~LVL2E5B zRY{3VU0JN*!jKjTW(@2fd}@hOd~julG}G-?j9LImo7k2{0@aArt%+`IuCVE}Jv4eA zA8+s$(H+;H5+Em1pCTA4Id9d!-^9pLCUBckk!EA8UYBZV?h`tFq&#W_s zWcj*RCxsb_?e23PCoz`SllJih&)Rh6gkI+NcG*R9sDX4r!^lawLU()A$~>+C))CHs zBQ6~G4D{b*eol~Osdu2;W6Q?b$F6eAu5OwA`f{7TvqgNmXN{-4 z)g|lrsa}i&%qsi?Im$cG!(_eGfF)+@oc(*E$%n5qNTH24||V~;%bwFls8a}r2AUEXO^ZGJh^ z;#{GFnvMODUOS#dmd6f-bOcM*_H~};3JLut?8JmgddSH75iy71=AQ!l2|p`|zb5s{ z1a~SHpBAF6-=y7EI3=f4qyBXObbZgq29yKv_dzr*&g&B+SMw238SdB323Gc4Fcx|rl_jk<=Po~vtTt4TP;U#TuOi+E z%ul3lafLAX)s<5_zH?U8TgsLZvm@prEG+#B!UffRtoLa#)@egoA+%PooeJOG4uWTn zVPR5z%P|s}P<=gA69`{nwdA*I09IG7kR%3Mh$0pnq-n57mx4NG_}9#lxmiBiXM6n2 zP<1bJGF?L0IegCxY0pe>Hh9lTL#zHPadAIY0yB8eB!eiIU4hiBc#alN8mBE6eNP^o zWSHriqx}^Fapg3d) z+sqV7o+L=I) ztyJJqB5y;*V`V+gYYRZ-cs)R)O8-Xf7_TYs-qsV?6AlXdA)FY8>Wh;`-D|L>5#a;H zA45x}PswAcr3ai7UGcalgHs-u{HM1;Y~Wo|qD=HVI9U?n+bA0 z#5dkfETgJ=q5Rw}o8KT^&b?m%Yw|ozyj2xP)_{A0?W$s&BSK?TtflTSqk44BKb|~Y z@klJC_Ar&tU`1>eSp=lgsk@6DClU*!D0#$Vuo11FicB2>JU`7%?*rm>B&w68>A1{xnRG~{*dTTO2V?IPBw7$; zi?(gswr$(CZQHhO+dQq)wr$&X_d7E&F>mgT`{KU+QIUJ?tjesPid_}CRvle7V4pTX zL7`Hkqwm-*P_z_-_n`RKfn{$3$zpi?K`=0#BCo1|0s%WIBN+R4V7^oZ78*Z|;9wi7 z01nDIK?WkK7bLWYP51_ju%s@ADGMD~UjR96F5E7b5vZz!u>9{HdqS3#?fsm7a)uNM zJngzi6J&w8BCW|yv1Q$M2@q5kh$c0!)1rlv(4&;5gT2d&^I$$fH-1AmO$Fcay6qqX zV}u%dAi=W}P$M0PZvr&FC&GQJC{l%4(}IOyZpCdOJakyR{(VYE^q8)E_;qN!j94$U zMsl;}ITU&Vfd*(#u0LYB!R5>U^sK3(psbYn2!m+s)GE5EvEm6b3Q30h(<$bS?sXm; zrNKhsT*=fL`|%C=gkn;g0_x)+8UlCJdNZ=TQArtww8#PpN?Lumgo_|p1NB)WVb0|k z(U6J>5;*L0XnVGDEI9tlN2U>gq++ z!ngosEA6a@mPDXZJ1{n)jGTzB)1qe@sN_ma=-s;{UzoBaQoS|#S|2)in$m@rk9%;c z>X#-7mc;7b6y1f@I+wk8m*TAw=khvM6B~pF>G~Mpr`eXv4(AXbC`nzq7gCBuoYHK< ztjk%dm1A-Ki0+IPewxI_s6c-Cg?-HkgUUO1VU7D#*Xw?z^ zsV~M7vo8mTPCkInMbX<6^d21%Is(JBC!YJ}Q?(2_m9qU(j%xT+&pd|+or|ScM8{Ca zjE!o6Ma?8EK)T!?55%7vMBt9p@MlVtUzB=it~NC++*hQ~0a%6CWp7WfGosV}6Xv~u zM2IV#AFed$#l0;;q*QL0W$P!km_KYJJ_G`4lqJkvqqS(LI$vdGJ!dNjT9u*DY!zY! zPB|PR;6Z<*ZQ2WxSYR&R3$YzMIs?PxNr66s#%d;P{NM!9Vv?z&&CzM8Rp?0z9Cwr# z%t50^^NbK^I6;pEA)!)}H=g1Q%ninw&U@;#7oMZwU56Z$M;)r@VF^yw(}>oHib*u( zJ%?PF5WSC0&Ovh)-8ryJ({YiBBu#zfWG+E79XcBLk} z0aesF1;nT*P-G+Ix6|)8Ex?dxD6y~UFxlL3k!GfbRwOg99D^UL!z(mJN&{)gQtJLD z#D*__adXxX7NDctk6qjb5eBybe8+F1Zva}V9YXsJgAg{$C``Qt8|kqoBSlgeI#Ast zTVOhXjwN(RVgn8C=P-F!=t>lX1Umo+ea8_@lVFCV z8Yc^0mtZhi_$bg(xdpQqDIvmDkukhh?IavUw3W&9Ic5hVUuOmoB0dfi;82%sfTbw` zmdz?H@b@>^LEU9Q!I2up>gDcSqNPb<9!ZRdA2LMxUFe;;XhKI6$50ldx4n&%>Z{16 zn>bp~24(7FkT%-tHFtmRX9r3*p2(d;#gjoEH z%Agn=A_!h2<6kka)j;40qMa5lzY8u_HOPAs=B~_Nw5&ww5gnF>xp|W?5EiMFu^eAf zR^yTaGY|qJLU2EUA&)g3ETrR{5FYaU`k7O8>b!n%ME1Q&b_&qp27+(~o6`t*sOu@# zQ?-Ii03<%_pCP6LXGlcF|CEhfXwy?zL}bC z-RZ1>Kzyf!=7+a{RAM6V&Ip_%8N8Oxam5)fFw5vYYHSXg#)JqGaZfPTi9*XLgijd7 zGZLr%9Qn8ho`2o=oSK*-Bm`XoA>i+MoN6DTY_J%y4iiUmWV*$`EX^coI*%O+l7n&H z-4eW|gS2XqMS~>Nmjc#RfSsU8K$qk3#^!QmEADTJ^v?yQI+BmX%Mp{6lPbrUt~_c& z#9gnii{-8QoP_OJRuMo%h01lE9o)ch!mx>Y%w&^CP4&$tF`W zctX0g61$83u8)Jl*&4hh62-P=c_ETM`}qh(tUMxUO1*K9NL$spG%}}_ zluwRk+U@^G zHQq~3_1{b03kzU*eg|X%ASEAwPdco&!1|-Q*K*j-|Dkr@k}c`PE3$=Y#uP4V9<7tI zy+5%!-md6qY}@^vB#ioDRVm*^Ij)jCugPR?qK==^Fzad9U$fmd(@^z_)lJfLqkfHF zTXe@+>zhi8`zg{)&KUkjvMVn;Nne3lsnv5LvX2XXpN~}jqV+NB#xZXl`Ag;Ta#@Uy z+9j!qda)!+_T9V9&o;_ze+C^pOxakQ)bUmOn&T|3l`s1>rz@LFTuDE!rrQ5Ux-FXd z(e6DA@O{*c?B-dX&Xaju&}iY-CER_zRQ43l@mA~$T$rZXN`!03={rnghXln*skXi> z10U8g;$_Xr_wi~FZiQ_z?M9v}54p$X@MZrvQt4!6{=0?9JqNbY8~Iza$>2%cjr#P) zKi2Mh+PcX?RpP<}>QnOgP8C%ZleuM#?gZ~~oz#)oemWBzkEhFRLjBt;=d>*1FHZBK zB_JBPczS%0Q%ThIFF0diJgvXgqUZO(W3Y}7(kDk}H#XNL(W%?i%TT#F`*9xJ*`X|a z5*HkjD)09vOwulTd_|MC%1_paZ+vSUS4J1DemB|vQFTI4jX9t)bj>qWE%Jh2Dzov} zI?;WAwjR0EWn{CMpFQ0$a=O?tEYB&k+t5?j$8E4rF&)UdcDfv07U$j9!w24Il~xhd zi&SW;RQw@VobkVC+A)WFoY!!Tm?4t6hSVyN(&^*+%1b@V|F#RT7$`{#*OjHRpL+8b z%iQXp7YQMHgXtk>{(2vdGgr5=_HO=7=Lv5^R7FLr^HF-i2pLI<64&cfFo|`89R!AV zy|z4hj`d)yfM5WhjPM16CV4s|`n#3@Kv)3*U<3t#5GIr2EC7J80s_DYa{wSL0D<`b zul+yZe4M5>;4eKdvIZvi^MJcOW5MSa!*+Jk97Y#MJQU)|C+&nL;og2`oCv7#)9ylkP0{f z1z}0fr!&5Fmu+3duUGT%+as8_`4xTpmLl4RV)fB;Xcss{+>%quZ0KgAt@_)Q6)r>L zd-oCYfbzW_qTDnx+6{-j`5a>G% z8OHCWKWPOn6qv1@*L$(S@VxY4p9_hWozsE^=5yR!gLD(Kou9txX8K<>`4;7Wynrwe z@O8|3S|X|-@MHLDGiF=xL=+;0qbJbFy^ zhBa=k!S{Hu@Zgtx_=DYD|KZp<9Crfm1StnrVt79e$Ut_J>h8Y;cC?;@gEp_w%u?{}XI{_J79zxlb(p_qYEZNDUJEe;u~kO78y>;r}D>|A5=;{-u}D z7P6bhu7y$^X@h>!?l!c>X{8{L%~Eq-FU0 zJk18(KouqbBlU@JgBjAqsxeC%A*6AsJjp*<+M%14JFXn;p!SVo?IMMHb?UFm>Afh( zH#dDfRUGwr>cmEuYw8{2NoUwT>FLE!V77cjdCg_f#HS$hs@>3Dos@r%*ACJ!fA`@H zqpnQk*>2vI+khFW_Kay7%dqh}cDNb8y^J#6dUyKFdkUGH+GilF)O&ses!`izF{$3C zu#*|nk=W?ohU7nWr9(k(E@d`UMYIOHjfDJNY5#_A`)Q&4ydC(%aM_cn1rp;L6mor$ zdpDdDx1Zq9>}BseIIh@bc**|z&v7m^8Sd|&mWo#~sJKlmNXYh@U%}OY~R_~~W z#+Zhx5nAPX0y+tK&eZdG@0N`d$w%0GW&1LJ%=bH;vXcdpuv+!wd&wJp;8M{=`-d{< z<<|iE?VI@4>?a$Y!)4u>cc~qA_~;oVe;TjRL&?*#x@D`&15YoHU{g_gpS``iEbtQJmnjoO36O^*ZArCDeMm+V@D~QY7#pCOWxD1q!n{yeiwD+Q;8D#4}2VQ zH(JaWqfe9OlRa+%UpFw^H8SCiWQYR>3;rVTMoR*?Z$4x@wpoha`91NZy+9 z&9LS>3GR+ZT(ejD@25{PbERKX|7rFS*{m^E+ib_Ub6Bk=YEGrtol17IZ1xdk*6kwC zj>5r(Z5IXWT}SSf_8tl!)WuQK-sze^f7r`!x&E^ghZ#GG_V#DXQ9`r3s{gS}9s6@u zt4VCn_4Dhw4c5r9%+kx48TTdUERosx^<5G>j=#5L|GjmvfW|w1eGsc1x7JnPOGesw ze4N(`vAC8#S2lXZj(?{&^>UvcFB)COBZ;e3d&MGUd;U> zmbrU?-k2w`Q&UdNN%5+XCkA%_47Kn zK73I5Fk%U&#ZpA9ByT&XYYu^7fYW3F1R;z9;o$;P+@J{*3hVn?5Kg9uVc7q=yBUuR zeDdIuX|R?o3jhrMhb3y+gjD86G%<-<8#Z8Enjy36z=cNUM>KR}xUjK&GKV}2h2ckF zo{06N5PGgCV?*fF$#mcSzKi_mRu90cj3R)}@2h;kc*I)937@2Lg)Ho=C+Q=%`%`AS z-cZ0Ftw&(32%W`s9@_H=IwToLa6ny7Ay@EwM(NA9pd0SOZt0d7^+KXV{ku0-OR8$) zM|_kyqBW_*k7A0jb-x~?L-BkI=w4!Yg!f+OpG81bQ77bxMUr^N5Rj#p2V${P4+Q|R zR1?Sr^;y0G1q$RUczPV5CH@72d%5CApEKxN;ZURfm;KO6z#M)1BV&ETnS`rCXVTNI zl~L-nbGgZSOHAZ=Dmi`8>LdifCslMGK}RQK`V%G+`skzN>#4)6)acPfF?3s;gzg1zc>WOaSr^HB<~XA!ND4%0a`$!L7B z-Gz{O;YA(_pCGFIb{?<3w2O2>Z)UuA(6g|oVjp_WsBaAcy=v064N%vEIlI^Kmuix^Idx84dhRen*8Q~T8J2e*$u5n4MtYvJy0svEGauPVpt;Q~y+3^u zglztz&3bGsd>gAICSQg#JAAHRecN|kZ|8?0U@XylZ}bS<8iWG1%C+Gnnmy~xB)UDT zT~ek=bUPOP*ez6aJO5gb(pKqGOENvBbsI6{m>VUl?-A%*|LsGEzelG~@3Wv4X)EdJ!!1v?{|cRStZuq#!sWHd8|6 zYZpu9H6)-X0?@5{KYl1k|A`{Cz?p|wZxMaPyWkD<1Xhyt-B@$7#Wf5r#C~)^NAYK~ z(NTC3v?6Rbr_q@mQlilqWx4@0#N1yr+9v@%tb$xfI(3LnBVpSr2ZUg1?W4C|7l(tf zkokWaw~XX^H%0}z9|Vp&2m8R>G0YS!Yh{X--!_{i9iCtI!uag7>76NDFsJ&=uQRDb zIg|GH5#O&>eIK3X&FnsX)3+t74(B)Zw@Qz+y`Y;0R8=rlnj)TgE~_u*?Axnu+Im!S zluqk)DO#d@S@OI?om=&E-jsx`pGMJ+Uw<4 zs$CfeU~xR>|M#7f=TZJsqpVETXB%kXDiv0aFJ4vJ#J1QORt>~@R<^NC=Nz|ah_m60 zs^XO@-gvU2trC~@NzBy*F>{(Gy$y$(b~~n8s-AJWN!s?rH}T68E;w82^-?jhs6p;y zt+>@7JZRdMJ2w0Cc-GZZrKL4L4J^#($|$ngfbd8?rvvbpOKj3P0+pjpUr+3@FQ4b(N=;PlGk{_{1GQ%06k%G%D83umdR0|le+q{qIGdab>S z62zQso4S*pl9$pEg1Bw`5u0Y@yk3kMV{cnqG4Bb+YPWj+eHL8Bybls*Nie<@7Ir7>tf8V`SjDS{#+-a$M^cDGcP}p^=u0lTi?QM zc{Q<|c%__Ifc5JRtoyO>sIzVkCnece5syaiG&9|#cExMjRaFY*J56eh*C_5%9#jJOZpqik=F|JB93Yqt_n9qitT zj^Oq+kvTl5eZe@|_6h$-w+buKt?Od-`s3wGDLT1!CZ@BV@7z>pYe%f-O?pMXzMBB@ z;F+i83iRIA!?P%b((bqO{V$-QI33JaaeraKM8}BnZD1*In}<*H+#L-EyN$YoCqaL5 zmD5LQ6%OIl96se?6FJ)MYK%lS&&r8xzkYZ(Dff(L9H!@*d)aDSFgBkK(FFZcGCqZ> z>icg^zK7K~Q8YcVx&HL}`>4ZosK59l-pmt+&YR1kJ~DXTbPgHHLh;=zc4$?}GrD*o zmE3>qWw+ZTDUM3C^ko_Ou?`Tf8;?Iu*28gYY|Ci3^Idqzz0OCjOE&s`=!*1(w4x#L zZO-1wou)SL@Wo412?=1LqN5;Nv`J7yj{$u*fYizyH8@hczxGkK&zMEl~t!%O0 z$t;M&d0{Q_bg4d%!#QS^hH&A#PRnFlyM^AVy6qA{yZ?lcmI=K?Jteh|&PH)Jx3Y@# zD7SJ#rW{oU7d56T?}rv;>Ui%ZcpYY-c_#X;YG`;m@zQxS>2fY?67t85H>=3H98db~E3P@JoI8p0{%0Kbuhplq} zEL{8EV^~Yp3h>dG#T5)jyM-o0=@%Nmpx+12Kt?qLs$|vZyj8=CHccGg#*JN+l3JkOWdeYb5_{b{A!i=(UHeKu+@ zeP)d-KElrIp%C%~-75nD0ufu)p)^5mWvPPqUNROY<-7yc-*a&P<;Ufqwi+^dOKQFq zv$y`=Z=iAipHUUbS|6$RlAyc4OLwN8|8!c~5~`^5D1~it zXN7wdtnVAh#WyRt;s;cQ0mMMrIi*tY)hGpz7am0a>5E8yp>IYB{5`I!63j5zb4uRR@G_+neo zbC)#+y@y5)V|Rq@u)gYeO-ejlQ!A7_Vzn-!d6&zde%doZAj4?KiA&@p z(x_pTs}-_lxxSdIgZrP&m$*(Y(jxx0iGrySl#9obELd`0EDUlIMu`9O@FE?eQ4bvU zL6h384ukX8D$gdr9;t3GKTmnA$mhvZeRBHEKzZk=&AflIp_loN;I%C9^NZv=dG-`z zR_}`EPzHbB6sOS^TTO$(+(}tFKa?6y56h3Vc+oK#d2E{EZ4LZw=d>Au?q#=LbyT_L zuF|H^0N}G+$8}Y?{ud-s0#OYeaku#6Ka!2*{-pV=i!GaK$c-JdS^s3lW!#FS!DxtV z*`~IaPuicKVlpE4y7V}mj@rwZ{bahI<&!%A>d{1IS$7z;<89q1uZMO}tJ7WKi`*ZZ zC-dFF_thoxzGlOo%PHpFJJ+4zuwwbO&-gbTj;0v>H{x0HiMU@gzo*UCS@Kw~<+mY^ z6Ttd$eJLvV%$J-xdHH; zR{>8~`SIZcly5(Fg3i_ETr%8^f1@97UMd2N=h7YBeZ744@9&TRa@9(xK1DDHrgii2=xMyaaRG8%R{^`+2sr^XyjM@ReaqEvLOt1k`Z#X!zS>?t z=hCmb_;`ze{G);Ya=PQ*9i1g_8}1zM{O4HcUt2E>7zL64qJ^Yze!~TjZ@d1z&d0Rn z%)HJa2YN{a*yYx||2-Us;(DSbY$`DH0>-Fn2S$MoB=EJnVFy`^yX16^4 zJGg73->+9$`O8Af*|geiS6$UkszZajYhRu0eG{*FENKoVli6xk!_JQg&sEOhvC)P;;KnbLTCj*qF1@goP-3K;N6b@ zno`0{_(A8T>OLWda#{4rH)0d-YMdULPWS;L0raKc`YNv*1(>=}Bru+iN`2#KmYU_4S>FYw4wCT}|hV0`f`t>^At zIDv33@W@!HQe-gzE^p`^$Ha1lYgFg~P+}&+y8)g= zJX*414{$uw7yp!C9X1K$6DaBIEmz$>BETdN1hM}OVKtpVdeuFSngsFN$2J{7;wNBS zH91}2p-hGFxMUa10!AD-IYAX>ypa@nfzUF*#B8RjG(jhr1MYkkGfAFuKKyn*A+^J8 zhDM@H$Vr8pmEeL)lM40iRGpYNk_x)X>qo5m(CiqBJVkGqoBIh#d zJC=Wg5g=(h#h?HMUbFBKzCGwjO~Q>^18D0s=xU?c;}kl*X__pi`$RI#9qj!iwIc_0M}KR8qcRlPh_>Kf!zU84Gz8 zvdA;mN5bL8$qC{s#f8LyuWzM4kGxv~@-q97FUvGZ75uPwLu53x;&xeTb>o9(xSShB zyeK$QI$z5fA&nRI_T><1WQPK{hY!X`!<9*`{H<3TC_{Y5RGBG%u)VD`N(V{Gi4urz z6(fHkT5oGMDW6vipBFOzHR8MnAUN$TTlPlp=PA@<{1Rg0`H1QA=fsQe=iLG+ z+FBMwg}?7MI+-ow?s5%HwA;+VvAO9;jiaogy_Z`T3;i1jnyL#_yEG$L$rj4@c!o z#+&@wcfixbbXy0*paj1WhN!Llc*mmR&;P`asP(Mur75ylihlBAZQjSFi7Ec+#F5;U zq7Fo~|4j#`yE6&|Wh&djJSb+mEM_)Z#5Qqy?}&=e>ldfQI2tloF~~0HRZ>FmTb0Exb!Gq70E6mV`)XwZiJjWpcVxL=m|Kf~mvAQ8Y0(+=3FWz%ZcyUF< zheelu@f8;!dnx0o1qz3TFFPn+iF`K?6c|v8K8_lUG%SwVvUI4X*UAwEKfd~o+2XN^ z5UWJIMRfX*xi&}Hc}>uKM{(9c;HBkH9xr;w(f98aEW-X?&Uej*p7(BbTa0QKq~LV$9kjSX7p;9p+) z&!lI86CzX?`z9*rknaG{MO+&CLn{Kj(C&B|BJjw9<(O{z^q^F;YlL7wJY$*dvUz4g zwa^wE*D~JjD}`VmmS;97H-S_0CP82L})v6ahKjdlrgpz zi=k06jUUkex^IRR6w&fNZ9}$gw?}m(;-47`6YE0GXGtAmVNVrO{;Vaq4_95eailn2 z+3B%eD3;AhrV6otu9$t88H(K=>vp%YB)Qt(2zE?sXlw0qXGvC}x~Yx})@s!?h_w`@ zx3&|voanZ1#tiGR{$d^Q(Q2zR*|s{=k@l;o(08**QH~u_&~lAb*eLQjr{cwH$=;8Z zQFVPOpl?|pH~eWM`}^md$$D|6!JuZ5B*x&5ON^(eslyjNysMr!v=BIxE;f(o?e1+U zB_`ww$M!*m%Z0gnq<(+Y+qBVsT~yq*FT5rGuQuUiB@T@FA$0}?vSohEtE2j_IY=ro ze_d1Lmqu_RzBNsjRrowvS3a@?pBlM=f1^RJLOW!`j$pD8JDe?JSo{NR9 zqUcEB-PJwO&RQKIE|)r1NNc75_HKR z`gDIUNq?_i9Dm6xDW-bJVq+{!xv>Vb16P>#a7jQh>^ZmDT5|8<0GXsb7u{)viChY4 zU_SZz+k9@QUa?>XnVjr&MwKK+K5Z_W70yL26@UvQY7p^E%g!EoD;20pc_9*P+QM?X z8z29Zf!PHAiTdXAiOR1HWL+g++gmuac%PT=OK~Q=%0xd>yTZvMhAFmIl!wWta=&q= zG1VUG79Lr!U_w8Z<2&O*syb~=Hwy;G1-IA1eGZQVUU?QKNqqc};KQ2`4hc?eujN5& zb3-p7Gf?*?6VL2lvpvt324g(JmiAK#>u1Sn)qFa&*PL+XNHOF#J*W$go636n*vydq z$)Ue8dEDAj!1e^+(r4oc+Idf38-6U^TI{rNM~5Uq4;Z$vfnt~=`Q`KT5vvHn1wEdm zmla4MfOBWZ>0Sq^)QiK_C6a#-=#lTWyeXWyqKe zKxrDRE%rb+Erh`M53V^#JnXwLDh4X?_X!d_Zo(?ip~ZvDMB#U?2}3~nO}c0-ZNOz< z>S;2xSAbdB64wHzBVO}yV!OiH6)(>#8F~?S-(1>GvGd=`Of%)HFoF;wj+2S+fMr;? z>i8C~K|*GW#0uD1X$ctaiYW*xBJS3~l^ydOA&Sx zP0lEseYCYaPPg6`+zQJs#zm6!s)8jamINvmQsSO2|NO9G%gR^$VmW_{O`U(-()J*O zr}MX`oHN->1WZI2vJ_$8`(oM-x(I5E8g^?UjF25r*Zc~62O@`%I+Ne`n2?=M8diOS zH|9usXw-Jde29)IZ_@W*CZ3ifm&eT_57F<6bPDQ>E7}tKNgII9ItbUI2;+am&q-cX z|1#j-+e?3~MAq`i5k)yaPE1Z$%zX3|1jpBMUAkZKE11I;lu{MJK2$g)LKG{tKEs2F z1mRY+{UoX_ugr$*7Y6>tiCkN3VIlts<+7p~0FX#4+Nn_a{jM%-y)awy{~d%|_Wv!f z{D=n(OqrVjY;m3zxLlfHY~imR0fBv3tW*-`f~BV}9uX-IyfZCG{g6q?gyKs^=xk92 zGcl)tBpa!}WhQ?^wWtCgKVDB`aqkWzIFi2=&lU)E|1 zH_XVK_*rK~QHo+Fq2jr))Wokduc$^mV5!?JWrPOh7ZeZ{h`gYHc5F{5AS|s16p$SI zE6N7wE>rx@WY8#=8)IE2kzpl7*`CJ??puk|P$zLNd{nLlPut=+7ru>u6SQx>g163s`(k3`J7=RcS+R&D>lm?D&uD={p6Q_HpkOq#8swnmF zFUT)sfLw-*3L1DHh`yfEgwaJc>S~=q!f*d6PK|DVpGK+eoiT>e$ikXG!h!9q4PoOn z1$}U{WW)#-&`+GPZ*i))5R9AF6q=&O1R$|5Bc9oqGuJ(C?B*EtUrIvz3zq#Q#t6!( zF4&Vuc|6GLQwIldh~UjB)q4{;$-n};Sy%|nMNa#}lo{j)uHAM+B5iB#g{QqP6Iei? z!pyVGDYEulpf3Pxj|de<6qM#Ic&1odFO}^0a!N4{b_-2=Iqf9n76ZfkZqGGbSEYL$ zrGK31TvUl*&4P!p#xP93)-=#gDWB%GY7B5eX`$bigo;20ufldolrwdaYqFnbhNOz; z3%yx5xcU{JW`>T|V7p#d*%#`Df2u@-{fQuO}V7P<6Cy3v5nI)4u@OI$+<;<{G2h73!HaiFet z@hQtVQfBBVkaoQ&spt|XWrkvPFk1 zZ4D3&3Et<$zJt_P%J&>XE(`4*;%yp$U$gNeMrfe%{ z-Qd8o=}#uxWqTmY4=z5Y;plMHo}I(O5idyV@$gM*Os4z!sdiD{T_$Hk>3jRF@H0}o z*PM5Kw|^aGe|zcXr}*`3=IMI`qj=}Js4G6=JO$t2az-ApA^J6gYD1RDVa5{;Lr}Ag z0nCgoVR_pA4AaZ~z#=0bZb+Si3us`{unY?QnQc_j7!XXBHj*&QD(=a>F=g}S-e%|W zk%Vsf^8y}I&s~N~+;Ipl2Q5_5xT5*yDuN zr|C0ZCvF8zzy3Uypx0E4*dZBTX`{nAu9KS0KA!xPQ5_6Fz7-_*qPrB9?vBpAnA*pZ zNJF7;B@-hhA)U>|MaW94nL=1m3746j-EP>kFqs$nHCS8#XI;)55V=s?Z$QR7(;Sm& zf;VKrQh@l>0aUBsxO^DK6G_i}E|~!>&Lj^hB^bZzbWR;40oD&9;>%DY!2&o4)}Joe z2IirWWD$^_sz}UBgFbPzk(x=Gis)NzC|$E*oKe4r%241J2e1Md;L6rfga+c3NH&{6 zS|yYtso**gC%k{i7Agt{`H7<%Jynn07y-&!*nq7jOL0YskxcI<*=+~}2tj2%E0KGp z%gn|U$#CS1ZJ)bWkCqc?K=(4mqV$Vg4>2qAyz9p83bk*i6t$5jue~|Xz420a$82To zX}E|j5nfPJ4SfEdCCSl49GtSdd-cvK9=sV1a{eCe>aB{|v<*N-iPC`KuwkH6sLYT| zn}hWfjuTwkvUue1xTX79<*)1h6dy$X;low`TJ%GI>!j8CyuuF+r|!-jpHkxf*wpL(-k0`_Gp6p} z%Ql*1s%1<0+T22MOS>t8I>lA}ITY3WN8b8vVPmAxm~B3WE@6Jyjp{WLrMxNA&g4uo zUvZ^!>oY32b#UAYCm`X18!Vi%uOxXg{E2qc!7!sH^p17YeqcL)Xw}A2#wBIgREXn= z&-+>pYz!~(fnzD)0YkpgiXzDzP*N7c^!w{JYPD*J84Tx7o=3FUI+_``RdxNx%*I9Z zgFJF@6ACH6uF~fPNo?E`Z9wP{$({VJXT#U#9sFqq@rPZ*F+RDlGEV=g2_`MmwTz#8 z!vl6{>aGnMsc_#41r_W1G(^~(6hUru|2l{pbws#RG1>~pf_>AlMdcASuARy&J)(O# z@2TVQ@$dVIN9**72kD0uHEkA@xUCw1T;n82cH6EeGG>&@?d@5vxn|%ZT0ll7pP!*4 zWF{oqe#cRy3$THUnVguCG3d-GB=R|bM-0~HZy^^%yI$M8Qc_1gO1DX1PRm(BaSc5X7h-AZEl)d~m1&kyZO+l%_qVC^W>=Y4$*rFh)fZ!aN z6T-qqh(p-rbQ1G0jRxP935=h`JPH};V@wHygE!<`BKi| ze$zFUZb;$fKtt`GeM-c?@^NIM*$F8*M{B>x?*->^x}_2)W4Q<8zT=8e#87XG+m6V* zUZ7=k$dzkJV&W`gcVm6716omlH-=?IpH*xAK$d$_c=V|b1J1g^-e*rH4&svO#KFP= z#2Xlu?@;>0=f_lRdDs1pTyJYkIS!A(LFZuT7Y&4R__i^IAbgX|??s5hVD$!=#HvmW zomOqKnByDJDVW`9=7W`7Q*0nk1AIdUG=0iAHd{bKJXjS#AaCv`qrf5Uh(JZ!;QA*- z1+$#PoJ`FQA+nX8>vURR8ZA=4oj;F>?(Kf)oDNpuU-(_G`MV5<;|BG6oceNj4d%Z! zw9ZVR*5dp5WQv_}nP(&@)C7u)F$YfLGYWN=Q6JXXHTLRv%Vf|>_6HFJT@QUN3Vw-G zCl8dqNY}6}s1dgy)FC;hil-765{0ht&54FaNVy6)@EIc^e>x{l$MUA|p~lZ}2}p<)C7Nsy8mh?_R=_d7!{GP^ z%4(+ZQXYo7=pzZatVyksM&E*75PUaZETWcUp6{oNQ?vBSuTQyo6Vnqi(zdR+w#SkK zvR#YF1-JN#7_DJl>QU$X^vZcE0=iOzEx@T!{{TP6*!denreDJw9jK`#gWO zn}5ju`RT6(9C|(CB4a-ZSIHbh2_?w+GHfJyJ z5YGXI*{U+WFJKl3lU%?{t%W*At|%83Nb02%%ax*k|8wZ1$On{$i)asV|K zLQR#R_=nkK&0|Pob2E>hV}i@;9hQ@y67lcqd+mw(XRzg@d7@$3$VAFPUb|tr_P?dQ zr(UIu<7$na3%02YUhZt)_Fmdg`4B>J(6r6F(DSyXLpHfW8~5H*1;xIQSOF#QLZAoQ zvOeH#Pa2f_ zd|m28y|XM1WBDkns-2nkF>80Eb&*JnXMtr8O+G3CaXp0|R?{XZDyE}Q_>&yEo^;Yk z6YHVp-~?UvuzGhH8&CHJ(VnnUSnP#1a5FqwuypK4yQf z!~{k!usAnDi-LUBOHou>Sgt-(=w$DGtfSN5bDV=w!z<5KhQTg18c1m~v<#3I-qGu^ z2F*eyMqQ&c$BM+Bi(F?)9Sqd7*Lk4D!b(gRY9%KPUwRm^4jvuvt>Qu>vYtEJ)UVe2 zMR(KU^RBx^juW{FMm$|5*v6n(T^jumV^a}%PvqzymC#91Du%x+2m&>>mnhWQFH@h1 zJ+6UW+yg0Nills5c8nuouaua0Io4;Qh@$3{7a^LRvwbHM|P03r)x%G zF7f51LAP>mUC3KN*imiylTovLE^4YF+EJk_L<9b+TcU+ptZzQom*ti_%j266(w9#c4R; zy3c42=JEu_l@fV#z>LArni+XuIXQ{T=<+{%$|;lw>24oj>k^X7`JuDm}fC=w0@8K5F`oWrV!1v8bHtx99aZzjt5-%3LV+3m1;O`|{vajnMVh@&+#EJb%*;ic+r)Gvtp}CNido4U`f%dvrC0IM&&}AJrxK6 z>5bd{se_H`qrWKzk-(Bt^q!o;Y9Nvb_M?fE#-c+?PN+DV;W75it>+J#ilY0`uf8dp zas??|kV?L-jbb?hDsWZR85A1H2h~TODNZ6(-dSm=AW&!SG}RPOwJhsOb!wPZp-PwR zwVM@%)wB_en*0evs~K`}{~Exy1L>?5qT|t$NvN?5NT8lGJ2>3ZAq~TpXR$D5%V)C& z(3T3Uz2{DxJ3~(3tgObI#JH|FPsz~{P?eNQ429AW9$PeYC4>XBIn?O^Auco0JVRBw zk^zc%PWl)ox{|hH8v0rJS=)864ux_E+%e0 zhVGG|>ey|k94>V|C8hK=8cH?-b!loH{%loU5~mBh%(2RP2@$k94mn@#x4MplwYKm4 zl9z1Dl{60HWhTdwmsZl5HAA)`LgUf#wT36}JPkYy8DJ~WWdlyS2==%0@ikMfwxvDr zG^{Cqc)3t-I4Q$zRY%-r62cKaVx+QfKwwjH(@?>Q&uqb6NJs|J;QedSktp;4Y)s#j zj(d8jfyQ5nDq;phmeFdM9ko(L$W7%)7+@hAofHi81$A^=%%QO%hrl z<^$+^m5jku@fHIiM2wpr(DtDLWYuQEhK|m#1Fp3&W=*~1USbkUcrB;O>To6Cij_!~jv%{_gcs-ps?91KmC6CNX`mi} zG*mh9F+#}PG4aprrwDN`8siWh50@))KJUc@M@qaeCIVDpIcxsROf3cWYffqa2epurzsm3=&BPg%!15kQHP)h{-F+Ex2Fq2~!5U2WAHp zOMWl{=b8ru6_6D+Ag7gk$TXUH5=#7PYC$ag#)$#Sse-SJS&+`wAdlarE(7#HUb`Ty zwPG>1Ruw5Kn21DK7wh_#gfm^93XQ57aK)ta>i2L6%|L&;-MwF?P0nJ*Do zt3uS6P6=^Gnk+esy<-}ysv{CpK{D&PwTPMe5KOx-VNC6i92R+0tD%g)!G4$(_zJ7J z4(A#J1IJ==hS7_!OrqTORkJd-dV(Q8(K`psV3^Jw0PlcUn0^F38|gX-@D`Q0#*e-h zR7xc1n&spRT0bG{jL^u@@MK*LCAWokn_N*3$D|8QVMv@5bG;=@kqXeE@3fH+ryp^k z_5|pzcO#24@rO?2M*&Sx3Sh0DnP-$nf-vh8%{a=s{1e4QHkqJoUZlK5^v1;x zwvgc%XYP49Q5g?opmrB%11#fWm{e>Fz6Q=z)IO6U+EkPfkV*u&&ec2fa~23H4+en7 zckqQzCLl4V!#OU$ce)nX<2yNXZ<`qT z5RKluUgU(G_%U1LB>ohG_|G#!4F@<8)Y}Lgy=^Bfa%^{=_oc&b&nteUWT} zQxut9nqibX7b{`0i6a_aFYeyq=%y`rxu0+|JSD zok&dCoNm{l@nnwoMeW-ho_%Dg4B#le2>%ah-x!?P)9pLK1QTas+qP}nwr$(a z#J2H-6Wg|J+q!xG=e%`M=c4LX?W*2u^;*08WACmX0)3yS!`K?S`PYCAn9!;0)XApf z&aPVvg!E$>G1;APdQ!w44kxJa=b+-!n1}}?lXtUzItHV1{`%Iy5*}7!^xK~k`?T6W zc2|?=i2E~M2yP+Xjr3@NXDM*JhQvzXujW^D{lwMF#iw*}T+Aw&I@GVpr=j$=M0WNkzDxCNsQY6_@~OZ`V!jTfq{Md;DZQr{32U$wH3_Df)wjntKLh zT`F^Et*388s`oF?z(2VbL)N1lazWKOpT%<73DkUz3lnu&t_+M4GGDxUB9LX{t=J&y!ZarbnAa z%29J-!aX!P9;he&;Ct(mjJwZ^oAF`6E+<`ronEl+q`t+KwUM{+L^XI!>u{KBNaRcW!Ng5YK1rt@@U+r5+Wt4C{ng zGZVAXu-9e{d@x1vDzjlE^2Jrw+ekj%7F<_qnGh9ps0ej@3Rf=G`J zA#ze*9&~)`Gr^p?fO7H#CR(u1GT?+ev^e`Q^XSZJYxt&MIqBzs$t_j&o1LkBKVUZo zH`#PAn8LNZR;_^8z2i?>MvLBri1K3C@3f)K=i)%Xd7JLr3$_~j(~AqL%QJULShAC; z>zeEs=k*e27aWJHrP6N8fS}V#(ztB#g5Z$#=KMor4Ch*Dh#VR922NMHdF?#zy6cPA zcntlTOh%;ZU}ekg%JLJ1sfcoprSGu8Goh*HV9vuB1F5a+*sJ+tV^*va)*tR8z*3v= z$LDqoYj&pFVTn&ms0PgRl5ZE`lTg#y2kL{iDJLdxhs)lr&qk|4&c}-&b0044*Z8_- z`*8bbTikj=YDX+lR>#a~7Op~;P$RYY2`lL*HPbp`?F-C6Y-kSKHPuspxgaI3`t88-w5&~a_^au}FdS_C zhpW|H4*JZIo<|>>cZ=uo66qIYSWYugiyJ4FYkJ_!);X2Ll zZ1VS((fO0XZG6nLlx3aFn8bRRy>3kT(DV+VK4woaRO$C5ULV9D&B zPE*y`RUHU`<*#VmD-_e_`5xb?75pi#KNs~!Oa8nXlkdz{p8`);zB0$x-nV(RO9CN7 zvTrt%gI@-A;mKicw14|IU}$azO|eO}xRDYWyrzDyl@DtBu#z}V`PF>BI*AUv_mG19 zIY>2SMOv(2M3Gh|-PgTjI4?u(Wu8GDbBfK(ZpJGe!u00iTC&eGgpIKgGq``C4rVE{ z9bqblSeWpAIIFg~$qE=r{|RRlnbYah2afj0aVC zrIKYwPYc^0I7blmuO+8;iEt7wglm0`!=V9T4>x0Sq{$ZzA0)Ywh>TBWjpocjrL zr@x%dis4M$lY{iul|4&pI(+F!Tgkmh%2sGGw!=UnR_&T zw|o0I$ZH8S8rf9n35FqlI2}9da?o)*Ke8-2QXY?*D$iiq2YGY|HL zHDM`yQxXy7M!BrpLgaa&p`Kf7$35qCSf$DN^RPL@)6Rj{EDOFwjxLNzpzOG2y|?F} zeTBrR+kHO6YSM|N+_g`mU);(xVccI$sxvVWrFL2W{ywsZn@wHD;d7ED_SLn;(_#O$ zrBp&8ZefjdAhj}N`EKRUG=jY zs%`!2;}S-+anP2g>D7CBg|r5AQo|~{O_cigV zo?h0rt%prE*eB5q2FQC^zNmXKdrN0Z2DmOM+RjpQ0x#?=W2qo4q6zjp0|tK1$w)cK z&Xj_$3bxbHC3|TnoW;Rrcp&Vk4-6Y4oFXc=*Bf#tJL$&}4=swHF^7XF$jGr~_>WG0 zglLS2NYkD?KR2{Y=K!4w9C(heplNqc(uVU~e*)hRTDGN18do%|BOBKMgGe8iA54(L z6&fT;o)V>CvT$El?!&oRTMohB_*N3fd2;YhOR_!N9sk4>)}4+J;FXECn!Nsgt%C>N zYdso|+8x`X+29Mkp#bJyD*2BhMmz%5Bpv;ox36_-s%a?@!GqafLqkQ#lOidwDob=J zKiU2Uv0VHThW{gyaa<($%avdrv*wzV<$$S>hLudS>b|At=_OzeMmT8p%!E4<%J>oD z8sB*tv@2u>K=}Lyo9zbQS+GY91yRE#0nW}Fp(A36<#G%}XwB%*psmV_{TVR(JN=1A zpbV5M9S`Z?ycZxSlO0rI8ILf4Xj3A%Lx7j&&E>rI~F6HR|+y^ zfMebPP7-|fbCEpR`SoM5<73S8E#>Kv_Ub}+bFHhr+1K6n>vr?=;0xp}g?b``(`rrp zW{)hQm0?RB%cu=9H8E2q1Wt0g+1n5 zd0AQG`rxFQiS?2HR0Q&bYwheQ@JVYPShM9*cKnw1hWeoKr(R^iPIrTPZgLdl>l(z@ z_bGAxIS;OR@-A{iek)-?cZ+`4J8(_)J+p8sAe5w~>+!Z>ig#t?_~5g`?EQITUkOCc9L8qZU$~j zGCrqdc!(?p$$~olkFj-+Dy1y>0``K~% z*LBOuSu!D8V8&$n)cOoEBAJXwli}4D&#K!!Tkw*K_ z>4y8#D^T1le!!Nl2WBkmo_aFrYhcD}pV#`ci+-DqAXr<2fM5@bC}(ltNu?Px+jmRv zvuq0U&h>4443Oxs(jTbH3EuRzpEp{7jxQ_4c6Q@7KATVP<$Zl}FR7cET4z<_zBT?) zGUfC+P03zcZISm>lkwYjFh@O0;RvGZHF-Vfp++`4Cwuwkz*yVXSAX(v`gDzUw(;ly zbBT=2JIxOD5y;u&;uUwp`Rj1N$V#8+Lng1~N#tf3KJX z$!J^GbH_YbB&m-|I_PS4lwjH@GoH}q(`miq$w>mVUG&Wq>Dh}_b&|EyApw3&_~wD+ zynOAwjDHPneY_B!<(I1tHoy6ve2tEUj#0GQq_@O7e$n+i&T$@PueJn>SNKLDWZKcp z;Pk(!!+*-32jhA3@E#2nWCy7i&K=>d$}M0=HBaHa$dC5QiBNs`U$eNhj*5E2PMnrKtbd?Pg5FX6t47Z z?E&9r4FAk2C)z#E3n}qqH}_|=D&EUvk`xRPZ|MHp64V?2Ey*t0SqDZpsH9$#&BqnF?zIigTu zG@ShhY#r5A>_|v!6<&*v+LxACh<;tSI|9-7A-6Ah3OB$Ahp72^>wPx#lp8p;eYa%N z6Y=QBaC*(jJ<;~Fe=6wq9^K1BB8OOAoR{9%Z$3;_ZladN9{IS+&_eR3c_Fb&|NT)? z8K7V-SqlF*_>`(RX7`Q46g+q6#2l@4kdgYh_L{Rb<2Wn7{rLh*#ylHRu|v`%?_VSM zh^g1BM?An-re{G!YIw5z3>?j;bVRZO3^e*(a748F4(p17K=~L6>Q^k8fksF~&fZ6V z1sFsF!uZv_!x(q596D`~i2&8F5B<_VieZS_RJrSr6TI=zRW9Cs6PfZmYs_O&B(gx>RMb&sN7x&6j>?|D_iCZFeXLa4@x9X zv-%S&`HUiRn}vUS)1%B2r{hu|$r6+sk?V#HHOjOXWErPg>F^2Gwq|u9S<)&Au+FYx z{_tp{qwkVQ>q5TU)1v!|OYKrk^Nl)$8+?y6_(V7U6t?`}9q=mqI?q_?FKT37gf=yt zzDD8IY}bAz-)>@!g!_#Ir_IE`aIqBrB1A7hb65C2I~uR*d(Am}5xYH}3D@<;e!0BR zWm}v&oQpsU=e5vV(m<0y{aa3l+J~nd;({IWVJ=#(58 zd)U=ke!tDb(C3{Ay80m?bxS)9H~a+>ZE5ig?m0MCWUS*6hg@Zby!@GNw~t+d4Q|xV zt9{@dqs;M&=@hH#wsJj2He2mL*_hLGAawS*K0c!RThVu5y&{653Jo-k4T)a|@mABF zTx_{Ka-6$U*x(b-_yZK3cnij$QzibYP0))?QQe&0+6hL5gXS!)M?yM*zl zhvlaR{g=7%C;vF^1KnW`>fP3#Yu_>Y&y=JG%vzrW(s{U7zG2&o>S5cB@WU>km!8Oh z_svm+{N@Eyt=}$I{U{o-iUO%bj51=r{@$8XMSNd_q8fnFU&cvE3^M{@$nVuM3Q79)mfYf-6o0x6fxI&Wb6yjMnung7kg+F3a_Ga`)6B~B0U+r2U zc{1;N^Miwh8Rx_i(!%Y-%`-9aB@AwZ&iA2D`_c|i(gr^D9@hU70)A2i;b>q93VKUW zr+@TMS7I6NS_fPn3?;p*1^MS!`6#lF>ttN@+oSZJH@;NZ$C+tua1MhkG|A3^Ec8E< z$(viat4$)+uwTY(d)VHgnm3E1MY&9=#JR|- zswCi$K>K}o*<{ZICB_F~7ugVVW<@q|_Qm^js@*^p#NR`WA!jZXZXnOb8rVe>e)N?d zr8TrkuhmLOo{=D#fB6Y6;*fbH+}%N;P@x4^@9nZ5%hD*IqE4un(~y%<=qUZstyz0dmBn)y>&~WFs&|qj^?PaCtLf<#gZtp-6RTWD+CTsrLTDBVY02bV5ydrMt#=8}JT0hGlI#v2bV^y*!KsJ%LJS&|L`w_AL zg?6YPQja$EnU7ay)O85yM2QSI)8Mt2eq`aVI-^@JAsWLrjm@obBy1{sVy$Iis@u99q#Njb-k>?%E} zt?nz4;%HWci@HBZL{Q$;DlLSSNhd83d?q;+TO#qMekCmP`VVpW{G{4UGT*Z=GRL`# z$mcq|ajoY%M7KkA8+Uxof~hwR9yiqabd4P1>T0bY?9i&>3aRR&O^eZqpSVd?)e=U= z1}PXe(3wj&p|2^5QHyf3CrEVTUcC3%);bVuhvf|U-~@i@3~|e_=o#9ZBBwbxl$lPcwIzZVSA4JItt)8UsFtITb)f9QMQG{fX?*8@95;9sXQ|2%FIhjNh8Q^jHGe? zW#Qd|_qPZrQt#ld#%bG1dE>PFAW$8kE9^9%PkU>w*AH@3Z#f~g?0m^3udIwQfwZ&P zjqzPDYRKZ7Z#M3eW%Y-@%cqIIUPc`os*^AI5eu%6ZNZ@4CsM=WQGd;(nMGlKW`C1V z0d&627h41yEFtJA(T2)(s;QtT{*_%$m;#19VV9*&xA6+v_3(Y-1J(8jwO!%)xCK*D z2K8bb$MHEy03U)Tlq;Ya@lAG*pW1=|i70l6s)%j3-#3p==8CE7D~1@ifLQZBnH|{Z z-V%vo5_L-c`72s~p|;l=4FfI}kmco^ZYSX@rN3$Ix0@)+!OoLO$Cny5p@k@Y_y-9h z^!FiHP}E6gv%SO-qf1hVf}BJ7W1$3;J3zAjpd&Q6jzj>*`Q4UI1N&lP zWo3Pozza0mh+m-^B7gw_2BkK0>{4AFSd z@I*_YQCsV_$z=rlNDh!{Z;V19LuvG#mJEaiTt&820tYZUg^yDh`4)BHM{O2!l9Y0_ z73%d6a6J&{soD<2I0ui;iOcV-13y~j=0VrT{+W9<3ts-?h`nClvPs7q#A zD7Bb1H<_-YCe$4f2nPF$I5Vq~xR!(NIkQE<*|d@Qw;=8mRWiJ5Of!F`^@O>p%P7=k zCad}F(YYn?llM1WHCoAjac!3BeL#>FmIrTUyk#?8({digX_bw58|yZA zCagtNiis_M*vxOG!F_;HzZAwTZu%uaK0?~o;M-!r2fgv-#c^0cj?KNY+5wR^-*waw zL=FTZy^@gM5C-gBBtWD$B|ZVnuX#IAPxvPu*;@Gz(7b%HfGCNpbP2Y`Y+WwYG?_>M z10Y}IdVF{e_mGN$A+xE0>0EC;I)A$JX$s?*Tj*_Qmf~seXHIq5gZ|cwrq!fPdo(pA<=YaacWupu1TGd;^?i?E28&(*RE3zG26N>dGjl*B0h_8)q&S@=b1#}F z4APzIFa^qN^9Cx1R(nwqvu^z&`=Sv8KMtgi2so~UHFVX%_%vez(KDII4z^c`O9V)> zY*_t70_Lu1^Zw}rQ6V@joEhEG^bsP1$cZC=C>UfK6{cOjGkm`7DhGu6(KH8yyB3yz zTuKH2w%l86*i>2*JWpG-T1#DhghN^R!_wOy`jjLyju|EdCn%Xs4W6FLU(lA++0n%4 zurMl(gM*aNyuHcf=`G7Wqns<&BFU+Dfs*Z zFg4{}(ieG({T2?zeda5??1U`{{nN2g{ss3WS%MYrQ8%66`a{Dj>$DcljlcqpN0UUu zgu%5Gd(HO`=lmO%L+C4VJm-84OCL5fkI;we-1-c$%|f}da?--r@55T0orx=#+I`1a z;-{D_@SQ)d%S16{+wtsHf!KSsF7B_B=g%~@kuF>(rz=`V7%ByFY|L6y>aly9lN8Ee&ajZeCU2T~*?0 zFY)mX;`~nc`1Zm`vBJV5nf{?21)b#}f)lHIw@j8?Zyzwcf97#AnSQY-L!iq#@s;Yu zBBK&z8n74;zLfs)*_fhStJKOZoS!fNGF!OjQ$QEo<~==*G+3*AB>}W2|MryB^cytCtJ<+8-ANt$j1hg{k&FgJ>8 zZ{CtP8*;b1CPm|HzR`1n7TsL9T}vi4GDF%NzxP%BSiAFzey&OPSQ+HL8XjAGYn4{? zUcX2u_*m!fe1K$%O9e_j*5Nl$nWew_oj3OIhXC&&xeZ2#^2zm?QtqjPH=FuvAVeH za{qEOgz9bC7PvjEnVRA~c*?pjO204^z?pXyvu9A>`4h}|iyw}Ylf@IP?@+1?z#$?3 zS*92;>t242gz3F0{xlS7eg4Gk{h|Dt!Xll-YamDp$MG~+;H}`3y24WS)awn9zxs08 zJ-nyXrYYn?KEpMWP5LY;WflT+vim#!JPk{GeZpjXy8@X3%s|nu>bvhdNJxsAoM7&< zT5-|T8DxF(N07H!e4_1j<3f~bE!y0F&BiD0zP|_?eGm7&_B7NsTemh4dbk$giBuv+ z`~|Iikm(j93dxYGW7~USB(8qTIfH>ufqK+;KD_1l7VX8onR;55$ zUTz^zZ{N>o22>xf(%ked$P7#OYXA9eaqq3(J;{7sw1B#fgMP(2GsJmvG5yq}&HS@4 zx%#a2VeW|L@Nj-6>1VjS6k=9?5T3v0Jcy1%H+MIny^~!1{_BxS@e+C~MrWO11ET2!xSn^*YFbCopbM4|LZ>)?Re$a_-^#^ zkDlNhZyeS|DvWtlf)4)%qB`y=oMzv#RStSdkOY366eOzj3LIUw`cl1Cjt;#Z;M8}) zH6hr1#_Y+(omm}h&K5|u_K?nzkwpBx779;;w1(6-_k`j4Z%WtfxcKOPVcD{pfJ=-Dyv2xBpf%JlaJ;CkZ60N! zTi26sTQ%t!eo3&la9GR56aBM%4z_6*>)Sk7D;>o$GKSfvu)O>5{SQ_`M;dP>jlQCG zH_JTBTS`LKEwm@e*a2A|CbKudN42r>v^c|G4Wt4EVN7?5DszeTq)##LCLogI?G(_! z#3i?gJrS@jYhMi-3pvM_AMQ6ps!=BnzNR&*k*z;SGZS-7pRZGQu-oVL9{#)tmy0Q( zn@z_9%}61Qf$=Xf$M1RodkH^j-``3Q+U88_?MIbC`xwWU67q#b!Q%xiV%Vvx5f<IT`M}H%a>(W0DZ@3HAmLdPudKSxAf0gE}dC5 zivnk9EtWB2;|@Qu+8BuNK@!F$JW5DKi^)C@^(gk;`-#XU9d4dhFi6aL3oIXlp&%tp z7rwGMya7{;EFt`|{qvFYFhHh&_JVEEaIKNO!@?&l`_<<5#Fdk46nycZ>dO1o>v86B zNQRp7F~0f*kG_i>$&I0ZqujQR#|WaeFZ3CW|J_hQ$vxzrPghAKD61HxJY40xi681& z(+(kzlKG(@I?aeBF|VTkj6Gz0e^^dUiz%V`a0{o_PuYFA-mN>}xn%Y&mrkpxrlvL} zb`A0S7{1kfln)$8+LSYIae0U9)wKLlPJNHT&j zAn9y6*3iL|2u|l!_*%eSakpqdwlBWHQ|>nv)XaqQ6@atczct;z)et`ULxXFcd0r7b z#{|=*Z0{^UB{5GB^aBfJL`_dRdInV;fX-?8-iw$D0TohiicBRxMNXF9Vwc=nYu1yG z&iLyN3Mv9+bqzO!iiKY|1ZQdIC#c?0>NcvRVU;V1AY3x0Ut5Uk;o*Y$aVC+VtfKet zic9FGU?5jSF1IK0pN0s-N1%;MP|(Q(Yf<*P06_E-a@+2^1XMq1s4=m>K zssIQ#>b+7Q7jkr-dbM1wUhNSM?X3BR9nEPDNF$XF1kc=ZV z#v~4_4n1MNy3+q3UPy%_5L&_Y?`UHJNhJ#x$dlm`UfaMX_f#}7HQ1NWS;U$Dq%WN@ zO+*0WkJitEW}mm@$yX5-CTd-GN3AHqqE2*KqS9mA)5ar=`C&y9YK+FPi|!|6Yn4EQ zhkgTaA`d%PEO<)VMk>036$6IFZThVXz91SOkIlxgd!%*3^ZUgkAzpts8c&W$fJ|Yi zT=lLZt#sk)n3p97!Ue$@4l*!aJwJzBBEZ;4P&x_~-MuRnf0ra;B|b9@ecUAyOa(76 zZBv-xzTr7@vkyh~N}rH02l>i89Qfytb7)PmlKu)M5g&zb9>wr5q~AG*PnC&tR-v32 z$o$_s!Y;sxYi8HH?F|nK;*us=VKW&Ge>?{^s|Eq5oCX+)3m46n{?K0Xifg7bOv6Rn z=8~#Ec~Q`PS7%*13sonW1`tFiF;hD%e076D$gNc7GX_$4n}(s*NZem4_-#xkIi}8Z zf0|i=n_WvjqRlN0vn-S75M$)v-XheaT~Q@Wi+%;?;p0l2bmCfq#J|i0S&NlJa9ti% z-^O)c;2^bNobWZM+sXnH7I`3Nc_7Lz*kM~VJ58oV_DRd9A}~nNHGo|g4GO144YLjt zY9~JVW7ZasW(#Nq)+I9)L-1Vngl%G(pD>!TU9Q&i`0q^a&9PoDF}Oo&Lu-27W3GsY zXWN9QNE#=%c;>b!wUVX5z>N)lV9P+R2cSH2P+n=*nf)meDiUtmnJCj#!?d;u*MRYL z$Q1EjRD=i|ho2YZ)7@z3IP>P6SVa~FmU$vo;bjwyseCIkSfz|2@j{Js zWMI^X*Cg=5;TQfRixgB$9Ql%(A7e8i6T9yHU}sYm>|U2fKd6D#@4> zLFjEJ-q^R9&>GZETsP#R*s@$yKyG7JWWRr0TL#bku}=&V-9;96Bjb-kyfPpvSRGRk z+&4v{Gg3kwxRz8U{gr|nEdgkGH=F14h|F?2K}h)-360Ji`I|-&_*~>+EXjr`fEYY` zMJoU_0Yun8JgP2@N_3PG;YHryYwSk>H?X$8LHQU$pJDG42OizWXP%U6vQHP8S18c* z+*KFUR(#KmXMzO&$|A&@2qT1s#nrA#(NGo&(gn+vD-O8d&kSlyr!#&i_`$#6haz`Xc zez6m~hbURxP_XF8M~v#JP$&~7c^Dy&QAq3r;f=JZaYHo5Q*g{a$eA{REei?>u7VMc zn5xc(R)7XL%0Vc@#;Ii-)4~s8Vu%~Q%c7Me!5KD-dPbT>!D@)Nb%u#El~HV#BF^1EmwFF>4~{bSP|b#6qB8LJRrY}L?+ zB>!ozu4LV<94cVcb|d`;AEa7(!v-77PEAjp)`2u!2cavwqX>@!k-yw}v`2XUga&L) zhi|A<%awY3o6DMKQ^^{zYEfJ+#x$8quMLVd(aXO;@9E^RX3k@RgtBdOc!QkF94g{i zdKZ<3$HOFqPWI=``8w|m1N{!qv`_$^h^Jbt5u-yMQyX>;!8wQC4Lm})4_)tpf|U{3 zq&+BxmEj;tMX`9Hl7;R%C+Z}GQ*hCeI+(}RRgC3rCl@rXqwZJh$X>#!B_j>lXD}ET zhn1d}gGfT7KPZfKZmH^3HfNg+`rnTe|20>e&?XAZSb4b6?Qipd=Q8sVbn+F$ViFQX zySYA(OD`J`PZ>y|GC#M`Ul2oO$H9J=E8hV6`HrTa;OflC5rV0EGzUZ^#>J$CCSl(B zY)EcUL$W-z1sEV83@(|lJPph+*(V4p%rPDg*L-LllJG;^*{HF}p}U9>THSQ{6^MY7 z)6|=}1Tu`({Xg?Jvql8j>TcN81vi*)@nkUdWXCI!5h(XLI<;>4JpsWVJwLYL3tW&0 zq57Ko0%do99%G^QW4_-TX^~=UT3pwgO$VO#lnwvI=O9LC8x@*g-uS^TW7x+LK+LBM zbex+u<7mmh;0gnZVdl5PpGdb?iP5YKzChV%lsRBDo{!P(!C3Fp2!>44a6h=CT!~V& zNW98m{C7k{)?2Q3O>A#++X#Q}_WIBZxmEVZscYsnsBEBrY0=c@?&vY2+5=2yC)K!T zl>tvr=_x{I=lB%Ftia!FdTQXaWchbJbCwtRYm62BF$HcC>7hE2Vkr^+QjJnG*cJYh zCKB_c@2iXTJtVxSV*JQLYh>GKp#^b!OCz#hIP3WZZ6Fph6Cvs7i_Bqy!cfO)E?_lv z$ha7OivicSAPi8+j;lYthSbZ@3!CS9MC0U6a_@^>S&S9$)`ezWKXWx5ICY&hK+!#fhxTI(B5rOvKakPo}e;BA4s!G z)7Zwnv*-&cwmZ?(T=#Nfrt=>P_^F=filb#ktaM6?ltvLB%n(GpU2gI-0*zjf#J9lL z4kGwNuNf!Y`%Xwl^yT)LO7%n5t4uchl@Oqhh8vXsEM(@inmpfOw6{%HQEXu_oFGQO*9VGCra0v>ykY$qMNJfp0CH3(XU%I zUh5AxpIw`;+x@%rx>9=0S&Q@SLkp>JIP2|<7e~4()o|tG-VXIn^ra<=8Jule4ke>n z7f)|tP}#BCla{KS-ty~`ik37<9W57YIjuC*9Zm~d{}0Gk13+^p zcV{Bk@0XS4$$DK$j$7w@5Xw&9);gzwUhJhNqN1(L=Vm)hJ<0AvRwP~=pWW{I_1_h+ zRbECTsD^^PEiELcIn0E-Y~znxfC*m{p`5@In7#Xh%bAM;D6OZ>qPX)B@XN1Z_hVd1 z&V!&#HIyVbXYHx3~AKj`3pbp6#_l5YA&*!phlyQ+RTd;8pAH5us++_z7a@c!LxL|ZD49`k~#@P%Af zacqC`y@{FsM%Z4(%(r=pmJ_>aZn@aDcNMwL$}iNN=5V;bX|KP(Ks9H+Pr67=Uv*vg zoQL#!JWPP-4i%n5tUpYkX340ahitIk^v;#|j^Dc-_b#~dX4H`%Y#)aZiEQ28Tc4;X zMod?-exOv&c73UJm1Ao%@=CJ%T)zzP;^-)Q?47js&^CJ{r*(yzyX}0{sVi+EBK%aC zdiJn3Uv4rk%VYFON9QqqS_Vh;HYcN+!-eYVxQo8>IO6)y%`~P)c-f?CYpbs$mO^D3 z57qbFG@DNX^;J0k@{q{M#BZDGsC`t+*^Vox4n4{&om{zH=kdp%`bcJXAMCx9tjVEz z=RMa3*ZMuSG?5^uRH(`iIV&VA{1XT&Os$qL4C$w2axoVIJU~wx=sW>$d7xAcpnATH z`MBwM74eJWbz>!nVk+rLh4*W!2bW=GJUc6mlhJc3YlE>3yg}Z*m4oa|cxFIwK_QS3 zb^LfCYBaHkw~jw!S{V%6^z@4Jtyo^qn|fiBhrT`?0B&I-z5${vY2wow1^M&F;c_pn zSsC%MV|XeOb8D)PmfGq5!e!*PSwWd<2D@pcVoh0rk5G0>;MNJOrVJ*4k)>TKMw)TpYXxKhPZ z53qA{!AQtHlu>i;rSj@F*%_pf=+v~q&29FFdv37MG91xx)*av$P__#yXnL|`5HP|F zaM-I48&Ou7FFB);eQdnr5-gXJ2d*IZ`%TrQr9NjqQXB--e=iH0lRfxkThey2&}p;R zuA$Au_3Bl7gapVWyZ_KQ=2R7~JhezIM8xpIEAyBOCrNNAn^tXp^^luA5ZezcQp9?H zJoqJ!(tQ4@sJ4nFnPF(|NM)_FQ-nli9aA&`0%%}QW}!92|0m+E{Z}+Jd-zW!Wlea| z1fap)o$;TZ@9KYw|2_Thq_EnmmOEwNe>VL)`(Kv+Uy|+nJy8Gb_o#F;y}%4 zu6e>5&nt|yDOMX7^{>Og_WFse$Uf2jkAYXWhaDvb#zq&_C4`|2nzclNcF)dOz3ND!uVJ1k)VShl&m2^=Z`MZ;Nf28>nRiVf(5@4KIB+73 zqLm>sH>1`^ex+GI<jc7;Vb>o>?U?g6Ng{>NKn*Z{{^X21Z)zcXr;jPQ}p27t*g zV!))Uhl}oJ^8rMy$x*Brf!>5n<%)VJbM=~@3y z0{s&a{Fih8KgnOU|5}Kuk@bIC?Z5isB(F$4Gu5$pappuLO|*2(AV$Jw1CTZ?EZZ;sO_P5&|A z%eV&(T19Bv@znxAlkG&7!wf9T^ zU?bd_ZYzV{TwpirMuu%}tdsOYXNcY&D51rhX$w7;mpi{`47_EI*Mi_zhnfC* zdvvxUcof&&qK_`_orrx|NJd|xQ8R;X6h(T4!zoNIYlr%tiQQI%0aWUttGpP>UqI zO;FYPmuTymz^o z60;(gLL3DbTOeB40pv!$*Nw@$H4$Ln3?19%%X)eE4ZsG4{xk7>y^KOe0OUrz*Uha` zm%(jYTqglpsS7Q|S~&@T3ZJ_zke)P$Y3r(-6s%Z4FszRGKytm>XIluKp@M3z2^DF2 zJ|~{a_EKh3@7DP>n5+ z5iGo@%lNYVcU_ac=W4@MBc1hV>Mu2%f_^Y2Xpt_rx@zCUXUyD98KAcne`(c*_peRZ zMeciR)xn$9))LRhbSQW08cOrgQ{UMymy#keVL=TWP6Rpc>+zMTgJ?}$SRHI!Qp`7ymtqso6EWT<&6Y9GtCv+hp)WRLv~(L#E5 z#pUTfSN`$#p1X>aG5z?4TjX)_*~!P^%#pL+)(FOm?lbqL_<=)U^xlaWTZ;~2 zyh()sGNQ(te({-a=oN_OjJ77Dv&QFw<2UMM1P>Fr-cGu71i<;F(Y9t7^sL`Cw7><< ztl-wkS#B{hKQgqu2uzeFb*2J6spJjd74O%s<$F_28#-8cf7q&fo=?d_a?s3OCpyS> z1ePbI)U)}vVZ3zL()Ci*H;LV*Fu0U8XWLY|y28=wD5Is5+!1$7F-261!LC9$WU;Rn zja3nE$m~!l60#RPQ(jk5^>&i@&Wp!jHvJqU>CN zAmYa#vWQffRBa0b&f&1zBDoi()#Rz%8xaOUyV%iMrFea<7wGdfY@+~hrI5Y|X!Zlf zdqgdI!2s5{9RPtK5Hi#k$?Z{D*!#;+B7NZA@Ha#t$nUSujgcGZsZ;y&@=o})bT7C< zd>25TUW^^&TlSWLgX0f0X18?M!C;=&Iw(UYE;164v}XZ34`iNcQdmpg3i6A-t)Q3z z+Q_1i2Rbm2xRC_WJVzSeO;bE}qnrpZpfRx}!RoGiS2(Ut7P66vsgNWCkb!ma>I$2= z&*s+nxfnn!6y=;zI}xjM4BJ&Z&(bF%Vda%Nn~aiwv#Q3@G~nX!3$ z1m#iPE>xZJXy#NIW+`0^fMCR4Nu}!EJKU%NcHAYn&a5=WU5$pF4Hr+d;1o?Rz#YeD z+gUU9*ScnbDD!qi)xi7WaY%+x1O7@l1nQwH&H}@EI62}7Tf%R6GzAY@OISjy)P$e4 zDdJ+2>H{0Xs$zAld2d1ZBRptAbx)E+ME;lczZOyfhP`dX9xN=ARdeLtil1#arr0?? zm8dhTj*b00e8pq&{YnX0U(%dK;@dt{ftZ9&vOXgQzefP@@#U|7uAv*?O7P2C1z&`^ z82>=M!{fh8|C%fj7(G_jhJ_1G*$R={G5(v?8_&&eC%A6~MbW8LCog%rw?)g-q)eqn znQbRnKuN+fnCEs%+os2V@1Gwo2J2B4?FgOD|DbbX9kj3YJKjR$Ao~IlQ+((W&6z&+ zt+(3jG1?mQuQe~In#&sf_L;-PdMkdlD#n9@nfg0}T$*wsfDwa%k6EbHHH_L<4wr^kZ_ z7xUUcqH2P!o;almI00Iw?rD&8g&T28wZB<(S<)20tra>d1}&e;P(JFY|w=W9T^*;la7mm#=$PO)kCY}qSL=KkkO?6Lj(7A!}U5lndqRWB1A;9 z7+R~s{rkQ@-C(L1qXPX#uzdOH5Vs4NPJgt%#&u0|ylr*UcQ0y*r0HtO_t?crCF?-; z2}Oa-sdWxBEWr6TQ#!V$No|Ill9rvNO?Yt5GD}wa_=xGmVWNuR=FP8&2X~*)%adC9 z$&&|<*R%S+vG$Kak~LrWDB9Dut!aDOwr$(CZJX1!Z5z|Jt?8b2SKGYx{?7eJ+=z1{ z&X@CLM^;5u?##6po?JVhmF_Cvr_*5S@(vPpoE;@6ohJxj?Nw~3lS`lwag>;O@;aGq z)`yEsqz|rk9FGE}@AmF(N=t#|c;q6fn+JDLZlH%cwmBDWm5P92G>25rL2+Rf3#Tyz z6^gU$85^AJ(7SPK3$}S)Pw&FsHNvMzsX4iaxGVaOzALz?(`0v@zsEWj=)#k(8gyym z5|M!R4>$c0fM1c6V6F&h4)5M{!#k%o;3Cp5tuU{6&)!o}Aro-=`ML3L(tPcz8h-sE z)o09WJtJa@GL|5vfh3?%qrE6EA04X<3{MrAr+=dGSG8D7xqU9P$4lHSCRPk{4!=bU zSF_B11IbiJzR72fJ%nE9VHLr&_R`rSo7X-moJn&}Ah`iK;AhDZ=5VNMml^O>Fg1FV zP0yvBhPbplFbi&E>Yp{*rExgDUz^14SAMI!`M)*KhZd;Y#Qo1-G z*!29H)KkcPj~H87>b)M~v959_>aNK=tx_as;mSDoU{~YnPILMCr>X%w`Y(zsQBSr*4bO8yfl$F z+KbPr=!BHFaJHq8>tAYhYpHfm`MAe(5iCx8O30YQlV|rD>4kvNsxzxL-T%~cp6$3T zF6ExJkO=q<31OM%-%T}s^|&?u!t^$GLich6mRnaT4auFG9}DG;0mZGS@$w7utyxUO z{Z>oVK9vKn=z<;&5ElV$7sV%ShydXjY$pCKbk5_}Ldn{DL{>dS+vqpf+ z7;w2{=fySDxh+hvBn+6LF;>$kCc~)qp^#d!$mUH}y_iISZMTM^b@#iyfittxb25Tk z_!&j(-D*H~6w##F)})AOL8xsUh%{^57zh#24H15`pOF5WGF$+yQbR^qtEwDSWZwh{ z=EI|(vkvl1lBNMN>L1aI0!h#{49|}>_%AYCxQ=51Li3O%jzO&;0aVM79*=@)Q5p>E z5QX~vl;|~q1U(p#>Gq}uX4VZzbPdRt;N$^jYf9k?&mdT4S(P3kazmlojX&tA1~nDF zBZkgW1rSZXA232qi}PIA5+mml(UN!!Uq8E%+wG676Q=1!r{O6kVHh{^G2L3t#B1!4}I+vJhrO7l&W|Q4%RmDptciz<3qH;lvF1xhRUPiZ@fZd+-Yl zGxWYIJqqqi?CRShU&LAi^e!VtRfs7xVAq#{_6r=Py4p2i9l^e0rOkFP*9bmwMK zjU9$oYS1vuNRa3YMM+0a6%#7!uR;vjaeOd2bzCV`UV+HiS{jv5C=9JHdVc6v_ut^q z7+SPZ$l-~&c!r71%A_s1gJ%~|j#NSY>#Al;3Nc!1o z$K_3azo+~SHsr@^uD_uz`z(%7@5z!q4EfxC{WM919Rlbj2ROWCpoh-(! zG$H655qMs6=x3s%xcM75r7Yh}p8m_}$Kx^|&WB2#D zGcJhGsS=M&x`5>(xJbvUyNk?VF;Ypg6%}6!FBZe|ZBdwUAY3GQpP#a58?=gWjt!Gq zN%7{RsG&Qw5`h-G6h0sgB7xM2adrm#UBdHf|`>wX@yn%EA{mRKAg%Bg63k6K~d1dg~8N@BOmF zVj#1|iZzF^8k@m-u1AVGI{&XQZPcI!)=dBdHUCI`5s^i`6<71m z^FvBOiCrDHn+VxCYP}bjJfe%K4gMFmfj&?DRxw_Lcfz>*?y`f+Zl|`z<7RfLg6w=i z>p=7P;dV>>S!$|+Jl5B51`nw?z?cBCvyo4N{@SzM?d99QD!=>HEJPpqZArLUJjrnd zZGT>xZhAZlpLLf>mlJt*9ex8Xmz`PK(@;;38+jWK&^bN2Ax%{3tzbxRgC-~lL^kW*#D8o;p4-}55?=-M0t@W$gynnqgoS!(sdaTfSm;z~4^NIx z)kR$P-zAppL;qLlR|8?TK}yqfM5h(Ixfsv0t8Sg=VEDW4(SF0IMx1+X&gO@{&1!{) zZbW1RlK#=pDLwxlotv>Ks=1@$cJb}+O zktX54DJlDDos71~bEZ*0CeE?Q;L$b$*dzWCNy=;a(t#&OCF=eTaDfMMkniLccBB${ z!6xeA)X4?!{1qb)u12ECqpV?rp(-~ST{!L;4oNT^&J<;}18W)(eJh*Yz*^ z=f&&EFV)JmwXV}-gtfhuxQpMDYAHLCu1kPc!Zp|jp(!{ADkalMx)<}N(S%{ls&`g< zXgJD6388kCOgcZT!J{Cui>1)my2!TFb<8lKsP@b-NvCccXRLpswR6#zx(CDh5TJP^ z;!FYD;B_-hp%irh6|B^sPx*FX(Z0^grQ|EhX1Zz^uXFRllz%3Wa$uYB1&Ru{Rib>Qy6?#5Gw1*jDXtsc@ya{QN4w-)g+;dO@j+er%aF3G`OCQzzt$Pb>fwCT8nQ_rxAkD**re_?*-0o1X#ix8H!U#k~gz zon5FM*Ne;_!1{O&xp8>K&#~{k)4!rC9<|x%>bkUZ>8F4o$^-4LU2fi_LQ~-nM~j2E z((dP7!5=yJw_a;^*Y)AYl#rLQ4UG;hu#eWe$*ib4ST$yq3)1JV{@$KGB2Ee();pys z0tFE^Yy7rq3xUeii%N{$lXjMs`!kwx-??_&gXXpf?}kb?9DfRzv5<5mzCD9Gzcy20 zci($}HNhPHOISR!9;t~$rj|seYk=K9Lf!7cEx?ir51CHSo^wEoSdg{J_x^dk{#p_^ zj`H;{YpLq}TMAi;EH27fI}Cf>tyqInpjl0lnF{9A8hjD>EA154!>8dX^DvapoQ7SswPL zJquB8elCx~E9PN2DyMN~CL=25E6Jcd(wrhlFkw1eFni$xlJWhCrcP7*rGX-*oTB0X zT}Bln>CzLQ4R%sEtY-%;>;QJv)iG;z9b2m|t=Vsjow>2@>|C>NmJ}9qr%mhDbKMLG z{nPr5%wOX^#a=2q)y@2R1U54)N&dRYA0F4v^D_~5H@W4yfL-W(AI)-ir(1WG&I0#; z#=cik8!^Uif7IB0PBWn^VUoSmLlA8nrHPf&1zoJj=S04(1Uf4S7Jovt$iZw7(wv0l zpR)Da<@IhYA1zfr!^_rO&A0i{Kce&L(GP`sNAH@JsTXz;dq?M8HNFSDp!4ng((<2Q z4cITthElL^(^ir=nTmgV^ElTQz~j1FUGOS<4h^Zt|NV>_AjhA#c)jx%(t-d}6c1}8 z)I87WQh@yYD@L?E4D&*(W32%i?VQ^Clv~X|TAweIQ-8d(A=O2_G|>h1onyU!@C)I| z;fwT3uI_A)&p`C#cjQVPbv^^L7VcYCtU1avZIcq#538SeXQQ~iZ-U+aTT3=)XAiIh zh8Mn$mmM>3!SqOkr|SDnfilm@#^R;VZ@0Z>26kFBNdA!^XgrsFtfo$rcZOX>z~hb{ zaiO37(4g6J@0+YqzOj)-N=O^JGu;fTJ};2E=!-YDc}Sc6NL>1u`H{`+~L zE3UqcmX73H9{E89$*L4?5&NIL$Q`M zNB^z>tLGlH#l$G!WoR)viie(u;?6T3G4uoKUcAoW4e1Kd?%*6Vg~`ucnWO+_#7Y zo2pHJ;-4YOqYYAv4*IpkMjqoJ*QB{^b-lG@q(8K>b^O%9xqKcw#hE1J9s$GM_G~pn zgn|Yub84C=P`ET?q*t3~0z6lU&27SdEc@GPeR6HCFTRJzFzFUEjQq4tlT8Mn$GH=S zb$yD416$9??_IziZlE3;s&3<{mphwCU!!F>$EGZOxbXxjmNv&ZAYS0a*YOh(zAyRy)?uIhx0ez4wd z(Qq*7nW+L-mp>f&4+q=R69mApsD2LwrxHlO;!+V5%C+vZ64j zdv-;(op(RKX}pnATzf=?sTB_AwKV2|mhF#hOL#$Lg z2Tx(U3*9^%Kp z0-Gz;7TmwBEN*8`!O<+`a%tKr^vv8n0jEdckUU8vqer~`}wDI*6g-!KhBMZIuzO+ zE&cUC*v;@g1HN{Y_UTrEy&-i|#hISZ4Pv(9JfGoT!6@=pBOVR}lRgRrHe22rxM13> z>LnDRrNzFxYVW|=fH~@o2GySTcmun~aL44US`$$+!W;GLaz_~D2RGCi4T6h+10G*y z`7FT|!&assvVpk*7FE2e$8d&&7ous#svlz+9^?D7P% z9qDBlg6(WVP}GRJUVx1)F#ko#KVR43wm6VO4l56LWOvzoyt>lj+ri$gM7k5_ug}o_ z{?8JAdT*`Fzh?#zLjuEQ!>+ketQ7s!*?BeNu$++FuL_W=joGv-|D{Rq-tB+x4AzS5 zwUE-hDsdT))cJ?-m5$C#I?k6CkTQ;i;uspsJ zL6~#Y;ct)6y}N4mX0V9>S-qF^Q}u+7vq^8n!x7L-i3-Y!AHKE81$h6*9AJO&=Y>g+ zLdYmxAR#9$y>`i3PJg%R7oNoO0=~;p2jk(=mUvcK)Gy&}N@E0=4-g#xKzIScCp;TT z?6~bsJ%O5h*adlR=I8iUDZ3M-QIqRhXV2c%1$lw*4?Wm0d$4_kF3kw^i$r4rQ&+q?vigX?vmjE9n#ZpIrlS;)Iw>UCGXNv0GQb9r+{h6=A7|+Zogvjsmd<+ z-k`-U;c2tidIHvk-c&Wqm7Gz9W_I?jZw^K~sWf9lh^E6~iG;0l^l08dDnpj8Em0)b z`*PX;$y*Vup++>B`PAgauIauw?-%%?WXEbCRJxgdTLEZ`7-++p{=bk*Krjbde|gMA znxxZSqaXOL+&cM@e>%^s-M_;yFQBlo{{?Fl`wSOn3_CN93A2%h&2GVb!}wX=LN5=( z+x<(l!GSdzzwZF>D!OGAg6OS$uDPPJYb(pa!@9nkdC%Pppe<&6-{7BUN8PU9Yq!4t zXAf7(jj0!^BQFtM32MizQ>PMeyV%|YeVe_FCiAnL@VJLxz`|eQzAybr!eE8qE{)3b zb1FE`x$F2fRcL`UonE#r1;MkEqr`kNc|QB^lSdyGb9Ko+!055Zr|R7R^Dn}jjyKmg5Opa{ zWW}^i`+BDqCbQYPyM1K(<)!c&TPMCj2!@mf!xt8P1&zHOe#_5TjB!gS(DYW=5x}? z&(=K)QJTF$CynnJ@aQdL{kT2&YuV}7a$n$byKHh~{TFF6t8v!^`HD@CxDRjqfDi8h zAK@)wf@gw6&lu_MAxeGiL91F%TlAXx?Iw-B&WKI5r`=ahgP*gwo#Esqf4H%E>aEPU98@4Q_};OxD;6L?u0(l6>)&eX7Sd0ueDqE zvYmB5xTC>ysK<5N_@60#)$0ww3T`eXH36Blqg(Z>cJT;rR5AGDf8k; zL@dPtrY^ibqhvTfm9;0!+PT7L{4C3pgfZHK7wCuqz7J?nvd02_AN4pYq~BJr8QAVF z->)M9U*lwn=p1@Tq_Wi1_DixC!h9@bBXZ?CpGc)0X9xGr#rBjOdh34Hp$|(E?+9UB z3JyGM-6zJi&04M-;^>P9UDZ7%!Q^9QZ}j~Uy`q?9d}*vLcvwgLosQE*ifrzOC7*2C z2icS{jHM+VM&fl%=j^>!_u?9kkd4u59yH*Cob+ z&C4UJ+jm{8&X4TigipSXx<6~bv#?zJRT&ecWLA6@ZV*^20#fmQ*D+J$U0Z-Uf*cNr z*pc9AqKO)c$@J>F8d871W$!P#RtDrt-{Vaf9|Ep3G45dvpB74Qi7F6C-JU}q2YmFDwy>8&ka*8qYpkw5Mvu9GONG7mF5HF6*I_L`J{7x{$!Adi!rOnY7?`jVZ?)Ay z2;Qn2kglzdy^r?TAkU`wo`2a^ob#D03k)E$bkPw-LlbD?zafG5nzY%PrB4f~u08(efXD#d+0n*;TfQ@F#m=w4Z zYY?YCK9BugdN#l9Lv7}LvG;^(qkXT0a{O%bNWy0_Z5j!bv7%rSvec$_i1E1`kYO!mv~{_DDdC`SvOWE}y^g=&ZC}k?ZL-W%tniYhIr&TfhH%{iMJ%`5^^7VzOcwp0w@e+BHVG#@7x{1CB|?D*^W z{fbcjCvnW>m>*s9THkZ7ukk)uTnb_JnwD{XnsO_l2?nR98oKZz^b!xvX_~uuG|*&o zCJ&pPIjbahqe#ml;v(BXK0SdTBgvklb}r*zb**nWr2vM)B))*fgl&FfbUUq0Uz?Vl zn$1dt$q$vecl}Q0w$i7~?&}>)QHZe7sl%0b(o{$;J%}(f;Qp~AwZ33Y79o@4-Bvk= z3UK-?kBhdagG>3^G#-kdnO%eB@)b_oGu#5)6sI&d0&Em%>KDrdT~`KbS6!~PT6XQO zOdv>x_%BN0wV5FJK;^2j|2M7~jQz6I;Rux;qp+J(wMumy=rBHR`K033rlV88zBXE4 zMqpODy6vm5@#C!SdG9>%P{&_*OJZ1kBgeJ2((7=Y4J6(Kzr!mx7X^ej@-|(Y16b(H zZ;<5RyTWi~{E$ zJovuoXi${Sujv{XV{pXLdHFvV(|<-o5X6}XSzf&b@T5Ru&G9{9v#D-KBAGa`@9X2P z@z)11Y{^V{&6$1gc0@pc^(kJeCL+NJ3rR)?vBi5^PZ{SVWiTV!{?J+avLRk(4SSx7 z@+jrQ4NL$R4$R%nvf{|poD}yyo!=Wi?Dk+G2^PGrMOFNhP=S<;h_*dr!^EOt8IdN; zz~8ux4tKdM7|pwtGZX%O(Po)K4phN`if2l_hBBl+{Qa^}l_6U&+$0c<+F!q7h}d$> zI+|JCxJA)&kTlDA6X-GwQZS4YfJ^S5SEU4o>k4@|t;TtNPY#kd!FiJw<}wFHo)<>V z1YpfcHFZX^WsGn-_TG2ZRshMH;&f~actS21zGo!=S{pU!AB4B-=g)UKp0sMZWd@nT zf$C#C7oH~y)(oV+t$$oS(Be>3&>H46%f;L;g&NR`1-q`rs)N$?WI7(|Pv6V$e?0(a zd{G{ywmH~=>;>_}IUEQlDE9!P@4Rp1wP^Oa^b)O^7fPC{l* zRtNY_h&!+&dcekH7LogbAv{nlM90Mub?z*LELN9`B&dNdI8bT7a&D$$h@SQhr~BFa zV&;-74U7GNx+J@z0|4Luj0N+_7@frzMTT-@JYMs*q0|8{s(eER4xr2Ef)eb;2v{K( z@3AQrWf%oN_Oxim_t;QRlcoX)O2qMphVY1^A302ai~E0dqL5N`j|I_Jdd~wMB)~8S4yon(4ZFi} z@aIUFjV)&w<_JHtycU*#hJ;d|LM)hrj4v}z$IXdA9NdL#R}3NX>ky~e3_3?7)P8*| z7!t3+9ApP$wK#-~5&g#u>qprhFDty7wdx8msP8l~f*^>n9}d)=Z2E)KPgh#%PKQ<7 ze)xztGX%#iSJ{$wt#W#EFB1l?;6UvXP;*1+Y8DsWGGTpn?rzSM<$M{=pR2J`>DlBG zW>|m@umOXF!SEKeu4c2b!l3TUcRS@He(4qze4UzE$Wp7hVg#vWt!lQ@{-XgDJQRIR zG5Dx1wu@2t*l@49k4V7%$9NJDc4K@^hjSNnF^)QBMuG{% z7wm=~l5J8W?}GtZra!IFo8h&a)l+p+>X?zB7=&aj&11pZt(5Gr5^e9J&EM)%E?Inf z^a_M7RCi3uDyP}lHjF^p4DmS)I((@UZRsgCTJF0g@LDwtL%L#J{$`Y*od%)Ojs|H= z`wPHIwy{xcd~d!4&ADj@#@XVW4Dqq!bAb-H$AW3dXgxwmy7S341=QlL&p5>6Vz=-g z>T=qOKcj$b2RiLPFUYDUf6?N4s$w=ciN?aTuyV|5Tx&VHG(f3lsg%HJOq#v zI7)KD)wXr~FNkoddQfj7FUC3Tqm?rh6E7v-8cv(#=fW^(idGBIV5gie;{S?nHR3g2 zB>7@F*Sv}at2bbrIcAHwd07f(qWIK0_2N?)HKAC->goa82To0aVo6^cEfnj2F=Xw& zyZ{P~8)%1I**iv5AReap9bfB182aD~F#ofUcfYRYAHYQ_P`jUlAOSx*;0^~&TIJl4 zNFwWiQO2gXRpaSxZlHi4=vv%&y120d{eXUd??97?6q*p|74-f4`{ZVc7&-HAGbVbf zh2cQ1W;q+4ZwoMqX+i}MM}h81A({NrYns3=Z`RZD4^OHeF0jSvcmmaX{KJtExXpTw zTrY+^5*g@*QVDJxi z2|i5-VS3=X?X>fWf4Vm3H7_Ed6wgLRFvQnv4VcjfBICFaCZN*jQ~_)e*`tAiSMIQZ z-khUNb24;GU9S&;CP9QU@o&ufTiShEx$g-Sy@DH_CfJSPXpl|~ZG7L~~KChnu zy4@a-5G0^yVZL$t3p*z2np#M$9xz1 zj$*+$dcNwg908dbHo%_%@kC$PP`c&4>uBc1y+0Qmh$rFU00XN5;s3Vyb8xZ0zyXwI zIoH_t*uRk-?OuP5wB`bj9S5)NOmvdwWo{P(*(Azw+DD4PC4j2SeJpnZh>Og!g+S^J zagt-QGYSN<@0;UyjMO|^7LS=_*enUGw;2X7t{Xxe{$B6SKeh&$1#%7s0Jnf%Xk&8y zc_6g->3U4oO3iVoyS^iu``^^}X>(D-1e?~3lRs^C1Si%qsqmZgoaiqdLq-2)AOPP4 z^cu$onK}%Uy+4znS8=&WF}|3Ob~-*~U)jvh{*47I*FEhfkaS0+*vK&b&S7GrIy0i# zyajrQ^W8G09|Jr%Q1*{T8DJpS#`vDP&vCexhfbqXPd#ydw`H^_}C&P4U z_L`+#?hJ;VbCMH_-TSB&9gsD{d7~~KYLfilBR)5|NRnJ-8>Ob5x~caC>6_(b)R}K11la>R z@RNIsmck1;;Ec08R1`oa`W_{cY}3u-Et`6QwPn=RrbyK=a{4 zRbFtPa=?M&uiEpYPrUR61_}n@TdD~Q(#?)+CwkuovuLdUTKnej>vTjL5dUY&6}5Fp z1sDG2IZf<-6IqZ0VnFohuIYpfzyw;h!6PYD!Ojp4vg-i+J9kCBVPA4^6AqYKSOn*5i)tE(z5KEdxD>90LE+DTFqXuYjWFOKXkWW(E?wy zIr~V9Xag7H7x0mB+;?v($}WjRyB8Fq&OJ?k-^agThy7n1w91s_$Oua)7K_ z;J?I}zi|?6Kw|j70>f%QAGPo2DQJt6M=FB+T2?L`d%Ogm2MeOD3qVDIXoEu9P_~I_ z!rW8#G`6x2w5!f5wVPhg#@ss>27G@r7HrOk4-H_X3dF%sdSJN4J44m*vJy=meSQu< z$gq3@!z5bpys-e)z&XA%UP}^fATa%>{Po@5HiVn7z$eMe zWv~wWpA2q-h6mUF7t#My1>WX#guwzipmzIRZRvsS17QhA-isS{;^i^Wn)O2uhB~2^ z7Djh~{kejILMXx*)8BI4*!+zALOeDsh}(5y z{)~y2b-*Fp92(3S6NqP<0cA25-qBGs(*z9UxwT8!lI%z+mj)M*)*J>#5$u1=bKn>v zqxxfkEqu=Y$EtI|rca>EdZ9-`lQt|xjs-_M8}!~A%0cjlIU8J87F~%p_!uWf$=*+5 zqb{l$+=A-1Vw@(u+vbfaH|c=}qEgF^D7=%HGHM&)$vG^n9&l`3K z*91*=N*$ZZgX)61abYajPq}+S#{o@pSr}VQ_-(t{5P2x~?peq9ZruhY*RSPOAtX$F zH_tQ|{~fL_tA<4zp2qjQ>Ldq3y7v2>w4T5b*GEPqGDtsNkmP*r7{hv@Id=-wa`s<%?~; zkZ~NzIKe)u;ib{=hm#hDdsjqgyamko>Zaq=`Gx8G(Ksba;bYP85Q&3-7+OL$oCf_^ zPz(kz9EZUT_Ng1f1x!8vHk#pFB|V&iFmr0XBoE zB%@t&>&Frdt`P>B);YSx921DQ3|tZvN7VEg3QbE36D6=)S_3HLN!D;+BBG(cRTq+^ zq*^5$sR=6&h>D~~)P6^kAKdT5KYa`!6DsTzhh`1nF!R5Griv07!bqiFVcdWRmfJ^r zgFO65i|#Y8%!6p^hY8h7xho9m3GbLR{6t zkTO+S*)a99nVwLf*h#vR45i)*d#X+~P?kxO9ZJdz8je4}6F#D0FXD@@HxPBWD?v}_ zQxJ1mEF2B{cL^u=Qb$t4Gm&jTg-Aa6M}?AsAPvl0nT&;c$UNBE=IE5Gyp?@;9L{m` ze`+!mwVqf<{RxsyCylBkL1-Xcdh=kloM@Ys8dx;bxtYG2SJ ziezqmB^>{_wHtnQ|IlZJuV z%i2YH@0^@v`91&E(sg2P=WNIb_|Yb7L}gTI@g*&2d^6&NK3IMZc>8pik%_kJ^m16X zaU!Fwjzhw)#2Sc+v55qvK-w1A=DRM_d)*i9G6RwM! zxZQfOFD{vdk>AkpcNDt90oS+Hnfn@*Ov(&(763be5ca%pe7=x44MSfAHPJ}LHS!$( z<2=vI&=9C|^_WL{_$Gmn>5Oz!+(8hXw#1n`&f8d$U6}cag^l(Cx|gDfBrudUA`^L? zJj9(p$r)y>;3jw_XS>||(8=a7@?)kU@+1CenCLHOgHA{#$_kX;q9$jKbn>R)TAd}+ zr2nPeb;Zz-L<})4c^`jEyeyC%g5gfQTr=d)qO2jp@w0U^kn|Q}mZx_QH5Fwd31%Wv zYyYDmgixeL92Na@w7mvwf|81>b{fu@c|(t z3wi=xRXjbsm8i4E_V#Zxi|-K^UzY$`FY$(a3LJzQKrLtL@(+N$i);(2ugQnc2%4;O zvgF5vkeG9gQzIN%4AB|kH@tTpO;!CEp`D7Pc4}CVuJX&I@jN}7BzRHA3s_#_)XgP){3HUqgmS!ir3(g+CDYaQ$PkOEnL z2{o%hZ^@?lVcqHPj;@C%iI?@u6Dji(>64ux%9%++{pR^%T6ifrZ>p=cR2Lf2FOEHu z@jTq8MsQHo*}wA=GQ=PPIg?oeCw&n3S0Wiy(%MYGDnXqo3a_`y1}SI0CPgxr3rSDs zABBtNQK>~LYkE-C-MqAGMKL$`vW%A{hZ_|-!DLwj zI3$VK9+Pd=v@?|1Stuj?77bEwF=A(-NJQl}`rMu3O-+`nLKNc7+12Qg#6t{j4st$K z1`I!eLW!lu<1u;f;!QNDQm=`WRh;dsz&~$2EFoL*QFv@-e%3=JJx{ zBQ-hcFlU|ZmOFP%&$M;b{@mXbsjR#CJYdqz8E3GEWMxjRA<(7~qQZaw$ETn+w>lq9 zyqhHtLUD3aW;hMfMtVjCri538npB-OC3@+?%`Y5v^O@8L;RWJr!qa&}F)(X*YOaNC z6)#KPR2zRQgVd^5Be(hL6i1Z`HF>9n(XrQ6MF*pl^plwDiM0^yQ$gVf znl_7wusMXI1SG_U(uMeOd@-;|C`^_Axw}Bn)v=2HOTgw9lKksaD4Jf=MlVTc21get zHYH3omu6g05$RDFnH>m5gUec_>yb#?6_Qw^FDI&vTac;yld9+_QV@7H_~!37tFFx& z8-%n{b^*6JT{C;y6H@=(&*MFQv(q%LBsErJrNi}b}5RBBI=^Ii+`qzRmeMGn#%zb(F~qOD=8kR!CU60 zaTSw?2JEo(8oZPpPC+ZJmgno~dwqI7*MbiD@qS*ud-A*J>2PaOaPyBMNo?d1v&nh#OvLu#zBz(a0;~5nQGBOpI@P4|7)J1gaz` z(J6r}r6`umx1*)Ek{5JU{FVTyrB-Hto=*d}pC8k(B!(X1JabWX( zlcza?g4X7gr)TQb4h zaNsGCQr|T~sl>uTBdV4h@seV)fkBHeDPkY2yQVk}$*N>>BxDE9CyA@+7;-RiO8EC= zQO9QDMl;PvW7$8nni(sMv5Uh&;QtB9A#1Zq{ffIqo1nM6YuUhz^hT>xvkBI8x?X9L z3CcHJR7b*YBd$Cm0PnvkO~a}@;i7~XUyMG} z-&VY!UXK?3T>Mg!N>U1Htxn&!-13K#=$1OOt)#N%g0p;AZ3%QA+S3kPCj3=IVL6u! zGbow9%x_?&!TxHFc|Lf5{Cs%khaz0Vf|6SayS;OIk!KxGG_8{7w775H&`1 zXy&+rPFgvxNduSoIx+0qXnWbhuwk>~?91aXzgug?U>u;Y>2p`&Cz8Lt>GD1h=+*a! zVmw-;0Irh1Vky36uT-{Fir_oCwt%JRPQ4>uUI8@*LxoAf3oBVQHbBKbA#qtt#h5JD zWREF%)~hth)t)LYv}UD%b|uc*K4=U7JSFhC6WT?v7RS_1Akm_wo0A`T2$TZr;QZZH{n&}p*fk9PGSk$s%F(crEkCdqKMz1oiaRdm_D4Wf zzMxxlc#9LNjs6@RIJ`b#26IR$+S(L?k`7|2!rINF+JY%qpEkoff5 zLYa~L6Lmlavw_h8;b4o^n-yR-Ew4TOxqhZ+6vO)}lG$raZ>1bTUnW@RK}cNBobXjC@^FvoL$3oXRdm9KK9= zn^OC=te3dZWT8nz1}m&gk$1>lczh4Xq9y0{xZiS;%Vr5qHmf~>>g5P-J3L98O`*(RZgq_r$SB}v=olt!7h z+E}dM5M5wI>7t3`<;S18RlTMS|EjqrQU9(I9G+9W@1|o+*6z#|S(5Br6>m*&D|M)u z27b~$r_M4Ag$Q#(a=zu7HIFip=5bg=vU7YBO1?}2p2iBVuiQ?)H;Q*lLPloC?H!Nn z8kf&44;y!Y|CE#2TkS@2^yezwwSz;3qAGPZt4~xJesi~~C^*E!KJfH$1yCv(OTP}&4SCw}{DMs{C@&}w&H>SNYkEaneib!4IoL!Ix_Qs-?0A}% z27X9h?9_~fS9u2mA&{0XIzHIk`updp$%P4{No}{=`p<{KyEFN7-6n&K#nxsfqY(9# z_z~p<_ZtR}4#CID@lUC1KWLZgw2 z(BH0T=g~rt7mJKaN9{@&>pWyth0$>c*g*Mujz@p_+d_J6o4Wdj4($+HYL~0jCT{fF zJVIBlSg0!qX?w~1@hkj|AoPRIS1E8Y|6`JwEm--F&@xRbUk39mbl>lJNcH}2S-3l$ zP-Ed~tkam6+ti*wl2Zprm4;B~-C_SBGGXpGhCr`W)(5m6rW9#teydv{ac(xq3oT#r z+<|_Q&hyEBZq!993h9h!sq#Pn9{`R(alh0gttBt5AG*AsfDrM=j7zd%eFJ7j^9HpjiXJ^F&LV*>S4MXueF_dAt{?g-llYPe53Yj-Eq*hOj z+GbZShm6B?v8%1~=7qLMFcol3ykW$3-0#LYQsyZSem5_tXi`vdJg`9wYI3Z$q_dq`O_q>B0m}5U%{1N)=80~ zDMbQzY?uQ?5+Y3^<%iw9arhGqOlcawxGZS063eJBWTbVpY`m-qcye9@>D#rkB_8XP za!Wkcv&%2>lq{T};GNPrv))D*4wH~ACQ&C@-%D1GG~u`syQYxVUnWhQFacPfV#(E} zMloQS;*EQaTs`Gut2W*=kFDDH6hF2qO+x`Io4x|~ais6mz>r{F(q>=~{F1&4QLKFx z#o$7V=Bj{5CVg|zgN@)3*gS=+KP~Uaxhx3`N#hAgTaJkIJ*IF9Z1x6H58YA^ z#w8W|gSIhB3TWFDJ~S;)z-_&h1Uw~$BI&k)kSDN0p8myol(AFW;icZAt)U_+AV&T< z0+;~+Gs=|}c|qV8@j@hi|Hs~!0K~Mu|IcY(6rxS2kkG148!g(kt45+`S|sg>C~CI$ zXi6!BX|a_hv{+M;vMXDZB|AwaQ6m5MoSC)}r|y4#_ulXK+uS>-IrE(7eb&$WyzlcK z1{5Mv=ul_&C2;YjAr~_&WcFhiTG%}Q#Y9qIBs9Bw013@L2z2t~NS|#`KmY`gRaO<- zUtJ^rG9?m*R~RQ@>Gf)QF%V1_Wo^hv{fXNDO(Grtjw`?p3htD_p;q?Lz}m{wyg@q_6`wCILta zE=VE4ZW9eIxduErg(wB^gCi*=N^FI4wEvOf#I}rzFJAlRJqnt;PT|}U%+}oA?`zB6 zUg=Fi_5+g!IGW=?PiKPwz@yq zu-HH{m^)?Id(0vXdkdy~fZW0Z$qLVyaQ$2vG9zT;=PCm$r3c8NhQS=Y=Q<{=z zkRIyF^HdqG9E~hw5b*OB54iH&=3#ONW?*svf|Q&YtR{~TF^)TMD~!D|T}=ZQkwvH; zFO_-sQ*pB(phS8sj#>T<&J6R4m@)(Scp)5*B}s5RhBvd?B23l;CT*u9rtk4Oa63C= zs{s)%J;9URLHB|`9`0UpQX{*U931~_7r?O;j{HbUmBaQSI=q}0NF)@x{m2D@^gqOY zh{Ici+>W94gCYISBB+jba>uJn)b z=2frm1|_8AGLRhsub4nVqzV9x;&uuJ0dLfSUHS<91^t5f35ODRatJR`V(^NWht6PN zfe;aq!w?IDe1TDT{{`9Fd1!Jvj;9BRfnBh`x{%*f@k;ZkG2lPA=z-KJenGEFMnll6 zVCSH?K^%5Mr*wK)<%thJnS$qY$b4$pHU2&w5a~)7j2zNpMFC3UCraEHpnwpsb^cOIeY^v}WYh{k05}lvsj9%TroeP`3DJGU zlxX_Q2e*Q{4PH0`CIm@QVQz^rFmnJn;^%u|ZKLhLUju266oc2kH@JBXhk=U=^9fjZ zGNA#fBh8CAQhz|6zY`uE-freE;FW4SunmgXzm*d%G|s8m}x`;$n& zCp`UOEGwy$0d~rmi=4=!lFI!7aIXSy99DTpp)fWXs32>&cwJE>nh#sov~y>QI8-En z2>-dR^h^E6(bm-7z{uEW`1+4(1ZBjfQdrEY1&j^+eT7n>QNTa4I!-}$V8Okss)LrK z;X*Ws;i^4YdM*V(81_`yeA#i|C6LxnD%?DUfwy<5$zTb1wefve4zD&HSOgy#nZAM_ zRevHf8EkNBdRXutYH;*6r$I)i=7WWAL?mdC7eI77bD;>slNh{OBn~1YAP2r(B91Qx zZ&w5)qqd!jQ%2x0u1kVQUx!eGuPNX2WoFiiual3bczHGkObQfm`z zxOqCI<1zc>@~{g>rgO&r?ttmfih*O~h^Kac_KO;}qZvhYf>13x8U;iU?s z^OpFl)%Jxx3`lt(q-nMfs~2HJFQEf^u{1C=wnP@~oN>#BB3~rQz==hR{m+F&##O37 zM!+ACpb0P~Gp0zPBA5bz1F60Z&xo&F>qD&ci7x{4uk|}yzb3U}$-`S`Tp)ayA8pa$Eh}c|F93SbHiQ8i9N<K|3Z!kldy1&GcJRRJ3I8*3f&9J-&gK z-Q869>aP6q&blMwJiTu-s_Xd#Qe$F}FJ|}k7!3pl=FJrFq?rV+(!SOwnTdTH8ZZQS zEH6RiUswq~NJT&n5nxu3y|jN|!5eQs$;kyqZ8{PFwG9^rfD`J-f!G0S6*1Q#Wn>SL z*=HgF5{`?54P_RD*I5d4Y(JOTK8T3v5c(VCMEd?APE8ZpM%^X~rnXc&yiUrmVCvfd zn9{k90;Y6o2ZJdhJg}EoTi7%w!w#*>5C7o7KWU{Nu1SK5*X5;>A$Y<7fw?q-yC=J3 zW(?l6G7#8xgz*a}V+W=&NJk@HS09;q#UlEOX6ozEbx%WZti2(ewg=`-%aO7=%+GE{ zc#~WRhavzSkm>?ncV`Mb8?c8n6y$=}{f1o#F9YjdLm9sA?Y`j?kU*jP>9+unU`Irv zO}`#Q`Z_@-!@UIs$lgli@4-2B;o{%sR07k~awJC+3?iKMd%~zYMeqw95W6JV;SAXE z3%jxK{0HPx3ityT4gSDP!7pry1@jC1A|4nYA-yR0MG(C?$QH-u(m&BAL`D4^`dWz% zSc}cGo%ZydlF4cbDH<7g&mui6{hRFgMIQhphgaVvCc`tmMOdsY^5fLWaE*M?YQ}{e z$c2cq0i$$ppxDP#?QuWjL{dpmD!hDzBf=|8I06xh27iH6LZi+= z(YYbhN%#s$aR^w(pt?JL(JL%$zp3!1T;%2{2q*CH86mn)^~gyGFt~@O@dJk-=uPW8 zm;g9F5x=O@ssFeDy~RV03(%88&VA`SCV&W1nLS?5lSn^)AO>78$EoiO05DMSyCKI0 z0P?WLD0n^k@>t*fcQXnL>P-8yhH%?|0)yUl#-Ru5c)bTiyj~vAG)@Y{7D#;?!^a{+7ccf?9Zrg5~n%191`&ib` zAD-n3W|ncB62ou}oFN8bxt(!9#t-DlpF(se!M;207oXp`X(-nQ2ZrVP{7|l82@d_*6XvfWhj18l(tk~j2J8?>h$;H9TN-2eQJo+x4D3c8lIKie-7 zNlA>W;NAIn!!IBf5fUK0p%zkK1oj5rRA6&`vcu73w|GjQ?C^_a=u87623ZFDtj_p3 zJv9v}Wx>aKs8i_#r0CAL*tyRc2WxC`AcOnG5z(X=24CB$>9+m$#c(hj-N6>`?Q^gp zl3HBSN9JNYIbpC6q~iL8u(+X52#en$4hCO^IM{XoUcM0A1fn5ga)XRNbs>T#==huo890)JLr$tOR_sd%gLyGF1>Z15 zzJWJh-bWcu3q~yfLKE%5w1ymmgd}5z{)zB_80XReqyx{W!0fI+=Jh22<2}RPuZS`B zaRn3*pz+4jhJ2@PNYaAsl!4;F*J05ce*x@%LD;ng;j6Fh7H={MZz4#+8^bLZFymw} z53)rzeNb_n(NqxUV&J=*s4&z*-!5w6k0lJ@&ID0E5wK_C77uF{W-r>_7EbXb2ydcB z-xmGLSWOa!8>aaiJO)x{O*yK*%sYe9$RAfq~o`Te_kq~Rr z39f^pk)TW>veQrN5jaVVX5`+%7HB%H&jRtLbNbU6Y>FTf=rdWQsRe^EQ>Q@|nFbsF z5Z6Z1XIuh8pK`(_XP3xmXOC%>T90-YnQVEbc$VvJM{eEOx-goVF#z@MWerG<@|rEkp8VR{a3PY#Ci% z$Z8IvB||N`wh3g2NU8z$%VO>*o3liI`g=T8E7t0K3%m6gb;3rDJpd{*+?AVMt0DLULPQhLazX)fqxI zKhZB_^YeW|Mo!woo8O@SOh_4Yyw%|QxAfir54RmE91E#_;aJEG6^@0@5aHl0mh^Lj zLwgQ#8QDTL^FQoH1yKpw3wMX9Plv?|sk_7@-D{%1)Xz02&9= zo;a8p2n4YuT3GPLFPVr;5|Q{R1BH^jvuOvUa&r#hu1Mf; z@GOGB2*U!U8WajWrXe)v{*k7Et*yO{ld%y(bG6ceLrMn<4$L?Nw+RlSiV&K?M9AEF zsiTRB`C@ZpYX>)5V|y#}rAy6i5JGtCrMR}Ce39(%mh%}WpTU!vK_{O{!ouX6MDGd# zNLC6b36dMCXz-01tSy*}se{kNaqO{FiK+0EJBBJDN_NBx z(%|oqVcw`xFgO>XlIbzVY9clUm@3H;CzTcrrGW`&DwG2FX$N|ZA;A~G0Z$y)6^CP& z5Sc1YiG|cfh>q}74~oV?5)j#u5qF4Wdm@t57r>h}Nc5TtvM?$MANdCG0Qifp3nV~| zD?pHb4BiUa#|%)o25jP1$qbVO2!$|!O#m_>k|zRiVs!!w-iT!2Gw&$CqVZOhB*f1E z3v`$S2RnLt(ue{I7<=1oBnbSEw^oOD7!Fnnon|{|*{}t1w4MB(y#^T#mA?>+^RQF+@+oTQg2LB&g%9+rijK$kN&#%y2!q+nK*9m=2oWu> zKHLY5goOT*8Bv5}&p2Wghl3pp-kOY|;`x23eUtscVMb_Bm?7b9c4NUCZ?gf2i-S7! zN~r%zB9R?AG;#3lF+{x0Bk<)%i~xlZr@Jtav(4v0a>j|`y5V*JD$yQ%WGh6(K@?~} z;=nTp3!NT=ZIu}oWXE)1q^&svzS;G|P9m8E!&{g>a`DjRYTM0N@TNPtZ3+=@n@FKM zIfd@zQUrjx>0WMo8PKMHuN=kNMw1~sx|hc=yc|GN(P&2yPGEMT`yvqV@)Ww0+je5( zVjw$`V;Ti<@f3Qk^F9zwH09!!>D{PVr2zgD{JV~1GJqE4sYGP$BP z>}T;kX3y74N4yIge{j()J?f{KR*rGeodxi* z@)_gux#iTfuK9B17BuU=x7IITQXY19-uU}FuImz%x9p^;-w-6Zv!_(dd>=P1r`12W z(yLhX$hs+4F4c~IMC{EEqcyLr2#Z!PU(;N?NhI*W`-cViICIAf`Wh7yTa2_M>#Awn z=V!S(uGp`3QzYxu_3urB!hwrFXzYFYSWF%C3DlXY5NX) zp50N0YxSL!_lZOBZi2bSD(i}c`fQrT7&C*s`Z!v##GwiE_8sU*@gjXHzj@$Yat%lO zy@D@dkvFXLaF(*T}PE`Nf_g@tFJB<;18=dzGCyeXjJ}OBP{aGq4=oC(EQIiMpi$Zd+0Yt zBNp5hxL3Kl^eA!P*3( zIlYw>mALM>|0mh_b!vH6fQ#8Pi5-4N${}~9;uju8(zL2N6Da2EOx@JT%_kbG*~?#H zN|s(F$?8OWtLIo5ofm|#Rnsb>wVV5#<*dD5F2>82^u$T%?L6JW#`T6{ZdOEW+sl!& z)s4OB%~s1Iwp1JyUR)CHUBh-IsX%0NWbH}P-2_Sbvd;wsS+>Guu8#++32g|YQq!VX zuOF&@Uz44)4!+5L;B30*A_ zE*RvmygPYMnNZGT4&m0bIq$Mo{rDThIhv5i!Z~ZhIT|DIGZ<;O4OMp}5^}5Fg)A@B zU-)1tWghu@r?Al$rLva?B5}=0v`3c4s&j&7ZcWTHcoDT!J{QC5^uaFH=&s_*)#(uN!UnMkgg6qj9^_g}hrY>xwU zdDw2VVpZs@jh!_<7kn47H6O+1ef;sDnm2j*s_cvvs))s^p1I>wcWbv-$lB_6M#zEh1@n%UgIBFGd@+TxeqaYf$j;u5E&%V##syd%i5ILy-0 ziVxFcZTt*7QqHEpoJqB8ZhJ1yBF;9g+GdWoPqyIec~<#Q`kVWfHS)9z`&|rpTEszz`?b=2YRll~;=E-9rYLp=g%@qC>A$=miAXv3%<&xU3$t5;c3rFo%^48j6* z!lBXu9zHTE_b#WoPp;}LI#bbW_|T!aO)_a2`}EL|^z+nx^=#dcV^;?oiBn6Q0$uth zN8wIi`JBv_-I_KbOttr+pXD9u6{B292blvsnMYj-rzr6ANCrQ8b-2fK5B_|(2W}4j ze7HwuVo+Y?5N$^)NB*NqoxM_-i;~};$*#RTO}uqeSlxs64-212oArL9xvW|ElIp!L z@rKKf)SH2`HXhbJc}L96?V6PnMM~yLlSP+nS}&y_zVtg)spHlICw=W?9v2aWd> zXloB-me#2~g&$LNJ?w{78N1+0#Aym+wk1mCF))7J_8Ra?KXe07MsF=DSB443>m!ZEBQymJ$X$BMDXwmI^={}pO*SA}$N%vq-Ug0kr}N^A zouYFjrtmkE_U>D_dELxIoW`_i*R9?@sa_dg5MAtDa{caCWG_)*3nWEq2l_sz+#LM8TC+AiQ#)sB`L3v(D~3VBsZDIAa}t2Fb%2{g2C#`XP!!ug}w zwd?DtPPVR3|9c6$T;l7Ozm~E|Y~O+Z_(%iM?@L-a#}5O=FaxmrBGZb4EwBIVb~&d0 z?7>pnx%syqU5tHr=9HJP%bC>;dD>l?*-~h!BRy?6*^=jxk^$z69W~}dd--qY-+1eC%cJgJZH*nItealVeI z9!;G6D~2?T&C5G`-k%Dqm5#{y{=EJ!rm;!Ol}~b0PL3acLtW~10!^`SZ=0T*jMN%D zzcv?=>cPQlhO z9!PXzn5RkMp*wiUg#J__o`Xm$VSi&L;{ipG7ySW6Je7af1B%!d{_=n#__^Wgc<4hk zo;RG%C4+9<5V|qMAxB42W5IvJ-GO~No$SCFD0nurXgr5EQ(JBfp3NOO-H{`WZU}6F zz!3O!2KCi4pYF(Z1f{o>?S#{i(;e9=;nN-Yu*m6-Y_(YM#`A52A0RjJFQ4wnaf#`4 z$G?8!4!hULPTXOShb5EDIB|z#!EaC8VSn&%J#mL)C34~p$I2lm?r{7Vdg2a|?&l(pQs@gyNQXM-I1o9w^q4!;Ic2cmjprAncc^nN{(Xl!=hD6ob@=|cKX#~dM!@6Y zpY<0z)HzQxd(w~&b z-~5-Z=fN!@+%bJEAxzI{-}7sWDEEosT12^P7+W{tR-PDopB#5%UoRK^iSEseKBxYM zV(uRUUAt+v1jLPCj#CFZta;>ybXfCD8m7aV$8w;*XQf@{qpE`$oiQJK*i>yyZ>9^Gbmf#=D!0 zj0}zm1PY{1goCm^+%cpN{|i77CVSz%IbbgubR*zx8e#;z9e{xjgaJGsXCJ505T4f@ zwo%|58We_g@bx``okD@4DR7S@l>~wC4?Bx3vO~GATY+SU=d)sTrN9O-s4E3S!t;e< zhu>fShYj@uYUaxxvemtBqd(sj?C`xoefOmRo|+iD#1W$$%`Wi~Y`SJsr*FCjmfSn~ z-OUFqyIN#2H8={{cLuAZlwV-?<8x5C7Lw=_m9kkt?xN0r`9{BgZ13d1bT8?;EnjWB zzSWAjKv9=uN+(LsiqXC?;rQhjn|rPr&s<}=cEoJ)@hrdEJ5zy0Y?)QG_qdgjMHPMq zMy;Xq9)HvWUx;`g&(KUp+bO=v?Hm74shKaZ$co!xmKyMMpdvT*FOA`7X5 z$9rAvj?&27KQ>CU%JR_$$a>4)@V%W{t8V>d$rBTIvZYyrR{5dti-Mmf&!{)Jb4a-6 z>fc!YK@;*=`G>XTpXIjtlDLGs8+NuB2bOCEH`%<;_nt1YIegk4w`Gv9Nhh)|Q}f8l zH66D|Rb0m*$MyS`iB9L-wnRQOm_wU`@$dmg9ub>TyDUHL=mb&`J z#w*DE0ty}9^A)wX1>!amKBSrDbU)VI8Qb$;EIyt<0%Agv|x@Fx#52kY9F{}FehKCexFpP={V-W(+Z$ZFgw&5^ZI7~y->S@ulJd ztsx3CwZqo%s_;%cwe|7Go;JM9jcmMzIyvkuYq;1konT7SKDK+N1H)Es1hb4C}Y>Z-2cM{zBA~Ewh zss_uE&J(n&APJ=NL?U}yx8NSQ^8~F`C#-Ygi?xYyVD2nc_E5`fh8g>cK=zp&rAi-lRsHA1XxdFw%s97V?=`tG+rvN- zNaqPKz|nV}nBL>-9_My?+zPhtam)UZs>N8jVys*-R<0N;SB#Y_#>y3A<%+R##aOvw ztXwfxuK2GiSCmivU5htbje#WS#c1)Ch~9Wf^dkm3%vh6!`|gp&UYn|R?GxQ+#wi?3 zgzO3gH+`;O$#Xq##f?F5JSx^B|l zgtW5MIaU>q1f8n!$o?xD+U>w4KXQV07a4B#ji~FGTj@GgF(_HM#FLWpY|qC{KeE_v zePyqeAV+eR>$pzQxY}@?{)6$lCBAOA$3RC%y~2$) zn9|pJ?*ZXsEGOK-`H|X=feM+`B%L;nyzg0}X1ovx|ScQ-CaaD05@Ju};sdaWAQZGdr|VEnAdZ}qtfofVxpx~9$x4{j)2;83{2Fw`7hj)vMEJipZ8}`Gz~6 z6P&X9{1ufMX)ZvyDi3CdX4v>FakF!FR#`mJN^@UjR{Z@ErH@>aoik?%Hl?Ro=!#pP zieDv~_@iFb=<%c8`x8$o(;X8(^X#3AIQQ)82SF0Yn|F6jb1-@Vz1t`@2mfWAue2Y$ zQG6uIrJ=F;cPc+}6?PlY(V5XZAc{1Uv-Z9MgwL{^a3?hDohJmHV^)6k*D8k=@3lc4 zo9`S=GslU`u!K=})9lKt7`_-%mjqNk3)gvZxKyU>5z1>f zDL6^qnWgX9bERnZojXuh?SGE)X=uWt8;4j^;|-w0vQg_0Op>4m7k8B3n+;80`-W$c-~CW1ro=&V4yP#5!DWuAdxx!o)>O zY?=!s1-lcwznm2tvCX56;NN8P#D&M!1Jk@TYSToMmJ->U4-l?mIpMcE2{IH2y38C9 z--!mNFOm9W+^plh+c$LMx#ad`x@V-!n;#v#&!1OOF$Y+ss$Xrjb=LzGe}Z)B`ikV@ zeIZMtBChBv8NOUJp;fkaUV7TiC8dqiPdC27E`G9RiP=({yRxlz2zBcMOq}+L5MSNW zP#y83n!dS;UpnFyAB7q$AV%K7)7U$puJ->bIHvSO8W9X&Zm6BxnuQ5yl8xG^oQHGuF9 zmJ_ag_m;a5f^ITf*L$kD_wtxlZLL}kmwbV+g7jA0y5b%Cie}zdd;UuI&9Rx!Y3hfq zv>Hlxa=e)s+*AI9%qO`lBul99;%!aA2xk>kIyFeJzO`%rRuo*Ne zJw7-+DtSiBuGdFz-4y=xxjQ*)&$qdIi_?F%@x?(}o!WClW-H-ZcH8-E{!)>h<~em| zD#W6F-PBhoEU1?&x(lq&jzB|WV$3>6Wt|2aNt=NY-5s?Np{XlS=?p(0e2?XX{kYoU z(-H5poN&8y{p289M$VR^#~@~Yt7d(Sr>9%&Q;RLR;0+CsO*|N z?lazalZ?ySvL7@w-s$uAm*eGkZFfE#><|>Z`Ea}irLB9zgE>!Zc5gHDo3eVgGl4Nh zLtFHrp$(9BrMYC$`0aVYlqQ95oAQf1EseHu%R@>EzQm^e<#|;RBUp+!%XxqPXNdXZg>34XiOvPQ(#;S4Tr>LrKH<~4brH*m+hKJ}4XTgLy!7cO7nJj%@H zg)iE??LyX^5W;Lve&xrr-gs}M{J41S-np%9!=I!}UlWmP#7@IJ{nU2R#NWI-Ut5{a z4RDc9;&Oaa{k@p5d})^*4UL0-&p;dV;PTZ^|Bza;xy*hYg&=?ar}wA1U+Uz@%=~=T zNyBpG>K%Kt8Rn11-+!0+pV@KXF|g8Cqqb5sX`XJxqyoaPSx&evhI->28}x?R{10C$ zPguUQ>f@dKy|dT^uiDImy6pt&8fAsno?C2Xl!BCW|2nkSdK+*>P$vF;p3O`FVw+AgJiLEhh@5G;K^(G_SsXLx0?hx9OP7*)Or@)n0FzVj;V2(8)&x8X8~V z5;Vc|JBYweef3*@r!%DA*L~N!9kFHEsc$zfrN%`phO}pfPdqEgfNp5~jX^h-Lbu1# z^WeuVHILen(A4=|r5v6&ePB7^6aE|El-j~_!qL;V&H>QvBQtb^9{miP+`)6!$cnOd z=ZDNd(^`TmQrRPMgZN|5JIKzjww0a{x-XTS{D8#U@gz~w)7y6@t&v8 z*G^AdmodNO{{Xt7@lJQmERp+H$K}=Xhv}xY$hNfKPP!T7);?-GLz5=2`_ZR>@F$iN{>-6j;=%@XFy}6>2E}6;*Y+eWEel&x zs;T|5Qeo$ArRPcVzE0(L+btC`;oNmXur)^b$&L!1LN|f)G~yMp456faRsVHQdonIf zlCw%rb3Z=iUMFc^)twDJ^C6i+WeypKb~^Cc0p%Z0I+OI}O~Q@2Vx=6D(jJW$uSwXv z{jAb4iS%23F!i{SxB6{w#I#Bz9_{jqU#|a%d!0=2Te*^8otZ0l9NPQ`JV&}gv`E?c z{Z=9Gz3Vq(_I7)({rW!cjH{o*Hq(^yd6Fx;Z&-y;GEsbsbkypl30?xoeeMD;l zH8xp2vVq?z2VTAx^*UyDb|G$mvXa}uuIVbr9~2w&e?p+!r=+DHjz{W;&pBG!al6K1 zU7diUKsSGDQrSSSztV{h?L0qq3r@PLjR3l_BZQ7)cut+=puOKJ z8r8_T;ox|i=?$wm!?vvRnV7U@r7z9l{{Xt7@lJP5${Ht)_cHuR$KRfP)A=oSfx2?b zD@^jmyu*u~uFfzY?=#Xgg*L$ds5EtBaZN3-Gj@T|+8LTO4-2_(0)#nOPFVIPcFH~o z;$#r+Us}0Jt#B~ByvZnI%lF`gA$y<9RIzH_>-&0jSK*aKj?%m{0l3l%QhB-7X~jwXSGXa{{dXR$5-sEcH4Dur+u(f;o;Vqxzi<9JH7k# z?EvTTJyS}P+WIy|{MT3y4NaaSu`X}5*KNQExJPXSXyWEuJ>w)G%)@fR>C)u}Dr^uh zvvrwk=;Uk?Q}w;|6T4&O@pJf)39njQ_f<=@-JdpX9HC?`j9qjp%T!)DZfY@xODd}h9&IDY?R;X49| z!GRFEB0iPHnY&b@HYs{{H}Cpz%(J7&7v`>fx`i zEqVEgEUK-vo=oFB^l?^%=;DYAcjssc;4mZ35@;j*ugVfn34v5#h!aO`h-l(&JgM0T z2n(^CaQfUxIX5F?ULf9ixME-rej4i|VN z53kws3M;7ZAw(z=+8a({D|NKRb-i9)4}BH8Yf|(F3=%O3m0x_*y72vt-Wz=?bRM6acGCN$Z;3~<&$(+A zVKD^Tr()wr>=$Sv_^!VVe2fun9&_^Lan}ADlX`#QwZo&Z*O8w{q`3 zw-tYxU+W&7yFYh(=%s9$yI-J(ug7YJ)H-j_+ zbj67f`r@XAX}G_p^Q2GwY?H(TDwLYf@|#ZPMcwxAd2@1otKL76X3z#lPcsR;>svY^ zAJ}H7Zw`#I=#pA~xFtS4b%pnVVz248hSRi1oMzBO@L!c?UgSo?i)>P(wp286-*7FN z4+u-MobcD%&mL@IgJv)Y_pellZMcwrBt${C`hG`R#}vc3PZ4w1CJ|32-hKBaC$yUT zI1Io3dI@OLhvgQhFUGTf)_-(Euk()Ak{4}iTcK5@x77FMB)#9P0aJGnmCdW+CB%7k zMe5?tRh_)E)l*;3U*eR)ssexP?%98!o-o01s`=i}{HmO@-ZAwmo~)wv8rkzx*CUKv-5Jx_6t|PMh9U-+8LO`OSWXx?8dTh>Wced&y2QHStGYjz{l)cv<9oZz1kU zp@60)RV5(#;A{zGg)gW1#A`BlluB&xepwEUxY`#lCG1bEUwUqS{i$jh&Dj9w`Gk4| z{s!cMmms~|Yw4-zexyFe%W+?8+LC4GKpI?Z?brlC1)w;Zt`u>tt026J1V*rzt05j`CUL9~d z`BA$anmGvZ`ppJ}61+wiI4{R~faXqKP|r%`Q7YSe503ucn_dtb!ml<~qiLRhUWpKV2bZ~y_d%L`f_J$3b(T~YV2>{E%{~M_%w;L@uUI^Nuw6 z`3DFXpkDTIYhL4W4^J_zWraHH=PBJ;y*K)rV1iFLpWSYe8GSvoW7aibT{JY65Q4V3 zwE`p27`2h0sbi51>se39rfF(w z{tj8eFM5cM&%Wg~>jS^f-qX$&9Y0@%KD4qDRn9CtNZIChW3Pj?J^jgc|Mwt=hBoFg z5X3?dWKq%h5LmSKs4W`JTs*la%L2kWEGHaoy>&7mtjlu3#ZCwE*RVkgnL&_zTA|{% zQzlA=D>IBkj@CiuZmIR`o7$(_wl5@z z9{s+fj&E(vYy1ozRZ}yD)!1?gCV!E7ET=_g*W4;dv^}wDfOWVtQl&5am zRiyr~Hgm$6x5f?zS-6L|xy$8ce=LKkdk22oeP=20T>SgnWW|r`!Hhz{F7LvJpqf?>D;6KQzPV9Pr5!k-T zsBIrj9p61wGyq{!mJ{}@Cxn}`LuSlQl|OlbU*(0(*pvB3_XG%@os8Ml*0oznfz~Ob zVtv9(;RbB>fBg`}{roq?X}izwJj`Kf+O}Zwqdehb6E7x}`JcwrOs=J_M3AM_dDZU+ zyIrnaI~1?0b^Fc>{5gxzwxUCK?}Z$?;m=l^n@#h?|Ncyheq+>-{$fkr#_45K-5MOf zt$%W9Sq)J)HYG)Df7ckK9UY`aQ{=w`(qcLSgMp)3j@nVt%;o5jgOY%-70U@9iTk+( z5VmGH;aS|SH~?vFm?3T0M9*m}UTPnEba9=+j?Hqshnn_s>Rz{A$rrE9w)gzp$0LBW zJoH^23e?v|oVn@Ip;hdj`=_fvvuvT7b!onCeH!@WSx(}oe*)5?4UQfg=B3P?`#7>f zQ?EGkd@0vdj(1n4m-62AbwBnV64D~aEE{q5MH9jQRQ5GGcXa`1(3CL+>G&CN@taEhM`Jm;VIWQupQ5zAOx*ndGUJ3|fSx(se zLcCrwhHcs3JK@rvvs`k)W{c_tq3RoVdOonN>ftb{5ov$+C93M?h5PuSL&RD8lu|6FERsE@ zvcKWLYft~%KJ)fOE8G;A_t4;5TQ`@~h$mq*G~NeN4IP`tc+K|Vd8Pg+LQLsP22uBA zcOB`7)km&GqLb^%FF!l~gCHWB496g1KSbwTTqSA>c!BwO71dR|dn?~bF4egw;sG@6M1r;_vsx4b4`>F%SpbToBc%=c3Q zggsbJ*v?b*!xc8jlQ~Jp%*KA&uTs^)6|?(ghDPsu1BZ26LfIoa4x~Y9GkA&mNdB}H z+j#0~w9MO!KkW7>UAUFg{C>8rP+C6QweLMb?-n~`(;SWdls+-^_NdN%DqF8wuOa6+ zJ)1V`;Z}B2y_$rG%B9cmW-r4S7L`ti@xY3Zt1r|lgf)+Ai040UH@S8tu7S6XuZ?VZ z-B&V5b;}>n>b2fEnFOvmF>}UcjkCJInlILeR>ER`2Y!rU(^|g(YB8%9Hn~rDGf&%?EdIzFx zPHguqsQDa}cln9Yy~JV8RM-fMoHR7PM^gmVsgI)u z7k)6nYv1A#>~0q`@|?SL}wW z0W5v(s4X2$U24j`%7Abv%L%6@ky_8OLF^T@omFwYLOzegD@DI-EVP~x=xR1MaF;yUPAIZ)0(FzA(jQ>wD{t2) zo6j6>;N=ajO4-3nE%yz2HE&9Uf|iJ>;%UKg0xDk$IgRsPCHqn5W*Md@1ecbo+W8paKF(+NLZp`B^zDedNB8=BHyNIdX-{p0%l*$@-n@-IGeUE zU~On%P!QhT&uchPD?-1OTc>ps+mZZ`-S}dOK(SR7CNpnnML>-c%`X@qm#m!s8DPiu zG3+=(>_|h?+7r@I?q*O&NHZ3{xPhd;5!7=8Y^S#`}6%QWz_?(BGdx~CY=#16R zZ_jfI%E`a%xxzEkm}O}WO+^1wX|6_5`U9|Z^5|z#DC#;S8w)>dhQe~f+q3F7M6yBA z%q|p?w!~5SZg;MumcgCf1?RhFS;;5u6Eyh|Jkzmtibll_82zaPE1#XT=jhJ5tt;&k z7jG_lvdFuCK!4@ccVu>Y-o8_uWNFZ_ZO@G5@$FBooH^H?B*m+m z+)3g`&XZy#`lF$Zhk*{c149f`@0Tg6Pk0@fJoUj3LTJ5JPSq19y9G8H-S@-t$K2*u zw?R`Ty4!^B*{ceyJ8sn0jixR&Piz$+9M5vXu`Tzl*0Vzi%u}-c-)r$Lv-h1}WHa7k zwXvDk)>Bc62|dBzL%z9dC<;W@ASF-MoV#Pr{(k1=nZ{~?`*Xs$*KXs{*mu!|ZA1Hs zT{>5K;tRvFky|~hjIfq2_k1Azo@aSj*SqjXirNa}IOEp(i?%)bkg__P=IiIR-YaC- z+rTgSb2+Yh$=;**Ee=$OHgPppzb9IEVf~JX2d5VOkj?hH7`fXUnXI7=eefP_0u7CO zx;vJvH7oauy}Ndcf``$Z-KkR^uUJ@YT=#+Vks7IKvE1#XF$DZ?L%?XJ!U_buR^m3? zV6k=7UX5l>3t#cTEg{J)Cw$sSa~&W|WjW!`%c`CN1f0U0zMb;6Uv*jK`q~n=PP&I} z`bj$z?Nb*^wbFI-t-0M2z3?MIz;xHoF{};NoJ2Enj5(fDKc|<^{`;-m$qlcUSjwbH zeR`p*{ZAlZw87D1$3o|K`_|Q1o@w_`xtx}rJB#?`rvXxz0q55or0EuTtOI{d^^JSa61aFc${Xl2ZM&z*t|2x)6LzDL3W4#** zA@_ihWscg&(A2rWB7Y_zyo2S0wc1w4%CSQ`nG--mT<`fJr4uD-s}8u6kNAY*9;$nH zdWcMD<7_fK_WZ&c1RWL}#ij9~&`^Y|uXDLQ(JbHh&526r=ZN_m{h= ze3|{VMDjpb;3*mQ$<9sR>@qvx`s!atmt520DtD=TzUiZ=;ef*_XLFqHDUrArv*g^P zdT$4*mQ67Aue>^n4NBt^-Opq{zH(mC@@2qb>0R}j&&D5#EY?{x;Sba=e~e!jvfgs< zd}n{0cy6mKPKfXE2j{6z6-{>X3cWJ68Q74DHcD^_8mog7dMAO$Db%L27boDu7W=kB z)F_2A&ENb{mw6O9!77#9^S|blXo~oIoRVlmTnl{X(5QU}O`W9K^Wb&Ee3ldbIr&=+ z0L=x=d9P&hrW5*!?E7pR!d*I^T-lcJ-poEp?=v<=(EO5L^!K$0Xg0{4Z*_shA-{rS zt@KK(w2g6b^POmXZaVgxo3^$lJj|x~hIp-AxAwQ7nO;}%o_aBH-8wa$ZM>2VLf2o< zC_E_5wcu*yl>DwNTKJ;Vx9Ol6Z>^GW`X#BBpndLY#rloXky1_WPo8RuP-EA+x~0@3 z4=|>clbye?^&YYpsVZn(t%D~ecE9${^$#PiJgeL3Q0wVVLmSqRmMj<3MwxG>>lIQi zxGKC-37D^=${(_O_PC-*r7+3;uWF_LJ)jv)gkzwYb)Z=*L!Aw{;?YsNBAPjc+5OlG z2p?lP;f`ZBD1dMw%L(5i1jYf-e4IIWZ20(1;{3wOM%wlFvF8piTjHv#u1-_p^ba^$ zC(IMSwPpmMnZB3ZTD7NPOSTU;JOB4RKaOrvbUt;W)>gN*jq~WEgk9cqJpT#Mj5at% z!$_(Bjcd^OgI4P-?K8sy_I!2Q z13CwVR&G3f>)q>9{%yq;PfZW%e0ZvDSRqS)4BVLY_E|3tO&x!Wb?13BJ_km4YSc!E zrf$C7leYuHr&&(8`Hq;a4?A>*c}nPeu0vr~8rxJMyoxO zToltpmG<{YmS2l9)6QP;79-+$FkE0@euy??&E9l?|$3#;)((HMfZ$`!W4dykvtwa8j>FhW7ne)ECzeSk73pUzta;8^!hU{|!k(PPIGcEfQ^ zkt$LPsJWDuw)weB+`=_lIBw;Mn|!=)v8p?RW!WE1L}S^16xsjiE`11i%B4|z3Yxkx zUR}w6a23l5Hm+V;)f7H4js z@5*)magvvqn-yLa4;yW4GTS1=8Y1G+!5_>6%Y<%&nt9v(h5ac)@B`m-&E zO!HHBYrOehTuM9C^7pwNnux~SZouvMU7o^~*(;;=4m5T1Oo@YQ$yZrU_(S{WmvZdT zwO=;Mm2~YtdR=ysy-JREXsxrL502JwN8Wnl9*yf_wyx{eBd}QX^Z#S-t>dap`u~3p z9TI}H3Q9<)ASEbL5+WrcAsv#^0wM@VOGrx`K_R zdU5XG`Ruy8oWIZGbYUT) zGZAX8V_~ENhQ&!Vw#GbbkaYhnE1&uVXuaW;)1=;tPWa+kI-+=LcVzdLd=YcX78I;r zzhCmj?-@3pfsbmai}6|BbL2tc?$``M}tWF2#8h zu;LrItq7J*Y4^Xt4%2EwxG)P+S*9+C?03FWw{l=BUVIlVhS zs~jJB%)F__E)$&{OQ82Hk@f)COt34YlJJ(b$XagvRt%QL+Z!G?D|Zw$ii?UPvebOm zA3f?A{41~-ta5vOM_XS)l(WY8g@9b-w~)KY7^ksBo}3UxKFO~uZlXZpUW>5t8?1>A z$8R{sZ)Hlar+`zs;dTmGxNm%tQv!s05H4IGN?B=x0_pul811`o?a+#$Aa>-OL!shM zeNVo8^n7gTXjw2f&Vw_bk$eQJ&#fki{Ld$G&NRjs+?8Xe&bf3o3v2aaG_REK>(deS z+Y$!ixh_1>l@qM^|^_uQ}&I4VCooRIv zhVG+j`6^LsR|BI22^u3A$d|kg_D=f*E8c&6&2z9T7u*CTZUmp_`7#x!ltr%X-q-#3 zTy>pYb)1(#I*GE-gV~>`uK;VKe^Fl%{PE)yVCg})Ee#g#+cr|VfbbB)g(ZqalI&3+ z@AfaSAMuu=5_WHLnDSI_y_Rk;yrou`xuDEr)+2gzQ3grt_%7=s=IDn0%x)fIH2OO; zUm6Y8M;SWeg6K0Zhq_|M+6wQ`%V*r(JG|E-I=u$hVQgjGCCw(N<(&+z<_xQ>PmvUJ zFq-6hBG|pG7CIJs27k1fgmCv!nXN-L-rW`}A;WR!yV~2L+QV!fK+ZqZx)iPSTyoB{ z<+s&#u=?-*39RJ5O&dm)@j6GglAntaVX|>bzAqs6r?yQclTrv8SWN2DbDubzHo!G) z0E^?_WZLj%d$AI5^$6Uq21}>bb6K|l;g1Lx9<|ax2?&oOTsWVY;|VZr7~4N>K$d9h zZXV!Jbt~hEA91s7FJa6rvU*POo~Xmz2FU z50zg(4@DRXfHlz}3c!H^&stx=EI0wTQ^3M4^iql+5dMsCVaJ!wR+Y$*FZ(TcL_}z- zdnI2N-Nh%Oj3eSEQh`TFT*9WwP(YW;ZFz%-u+?@9ha1i2TAk-zyvou;{e8`|TwW8> zpCYVFq-5y4Dzy3owD+C~$l+z29=z8OOngi@Mo9JaST`;OLA-f3C+B34i{jo&9~fan z!3qgKft#phS12uGFT{ItHOo_b-!RpepgDG{>intW6-vCv-^KhywgYR!f06ARTBl(j zCrrcb4zO_Z6Vdtr!ZQdLKDH8?HG=|~-9KBek7C4Y?eA7XI(g$H(a_5eRUd>?IZDTv z>||rB%zV83#MVR;&LU(F%C;)@;6VSat0XmN*%ZURzPv2WNc@U-xs4)^08^SlPZIVd z;S4twpS~153&(FH<Oh9`ps*sw)r|s5_V*-_q$zgjyTun3;n;$vD!Hdo1R-k+tlq z?`yufQjHMBhs4xhiAnjB8cV|nasmE^g4O%?P6jLaul%hEA()rG>N>4t;wM1p*hSvr zYQXn8=Uuc=pWB?iB>N1U+ibw<@f-M8KQq7)4zA2u*2st8{~i1(IvQao2rt3inSiB}pr@`jAiRulVLRcNJV1B_;lj6G5f204 zzq+3~>=t{q40XEva|n5DRh6zoX9=yL0%zaG+_H?X>%$HSJOKFb&G{*79rI{|W#fu! zj*a+cnp&?;+$})TLLRWmtF{+rh;{rcz#pt~dwmC4YjBU6KBvCLvgPoN7!DczrsDzL z8da#Q!TNFwjPHUGMj&8KbVwj@5QwAjV;F&~!|fEXa65mkr3HjH5H3uaFV+r#|K@%R z4vc@bV?h)9h=Z-kY7xvWW^KtbC3ovWV>>tTiMlU@R50)tH<2zQG?_CFh$!EVRi|g%M-i1%w zg}K*#3_o#H(nFdxGBioB*?6gZThG>Lqy22tb)Vh!@Ig&!8|n5qrD&|Ge7#79ywvN= zqXMBf9b7uHL^ka`6QO*3e1A;i-!HQhz@Kex>8!Y=wStN_yOl z7N^S9wE6S9V!A+6EQ>rvwy==WS-dwAg3{HqdvDUf>J9}f@$X-??b*3#RVn7Z>jQP` zw38*3l@Lq=&YaQlPn5xqaYa)S+h-U5Gy(@}fkOiS6A9dPAvX|kH7Xvwt_DjdjuPWd zKo||-!rZPRuuH+v5iUHcL|_OII0oLn;s31HO#grZWhqoS139XBUHAUit_RNqTI>cR zEKrsV(ftoV;6%GZO{rWO3GN#MC>Z$4uZg*tHItnkmw8@<2AySV;?rYL`zr_>ta5vO z2VUy90M4w+=GQqY`-WDIoa9rY7jG?853Aa$G*hqVG$9NHz?$d~1>isdq4rYP89>-@ zI|VG<))a2AQ;TpAF6>36I=zDoIkMk^lin9x>j^HS^Rj5&91jo|-X6uGIni&WbH_u6 z4?`gd3M25byLvs9149h#XY}96NDn+)eI{0N%l5G&TEsLeNgwSG2)rcEWjP0Z^76?2 zbg9RUqz$JUsF#XluYA1WEVo#hftFeTS$hTrE5c9d+subtWAB1E`3*C5PSd=43pr}o z@t*B-1Zi3#x6y0UBq4e=XRe@Dsb5JlXu$AY2|+(zixf_OH^%BOf9SqOb(u?A|tH*3ocf?JbwN+o=-! zmqA5Ot!3^xHwm$ejtLXYo#|i-4|^k1GIX+RXhQYU`&%+nO7h)j<`nk!hOyoY{bV?N zJtwBsz)go9C%`xAk*OXtn!f#0>ZmZ9)?I49wjyKl(DPn@gcow*;Bdx`g}NaQ8FL$G z7S7A{LNlX8sE(PfiMff5?H^G4-ey}yzeeAC43{!jv#;B(A$O%oQYn#de3)z!!}c=* z>Y=fFnl)H?+@N6X@!!;byDD09k)wMut);P*A&75c{Bc-~HYBvSw&VG7t)*=4A+`VQ zs2wbq4sutZt?3qEWMa6D43N*bZ^5gx^r`ongq*ksow3U$J?AJ8E#9ecO8J*_s-16)I6K>N}BXu(pX+bqVnzR zVl6C2>CkTSiZ#mE&29$WpOFs!tMZT)nwAy_>b^Gk<%G2QTB_LYG)6zSSGIzJ*37lk zRjbP!Q_?2`LX`%5Q7}$RudhT{`_L(RIe~*^1E5#i#t25OxB$v zn!a6-wGKqu7YbIL{|kHnKYjhiD0nq0r9!YZnQekTL{p?s+H6`^)N`^YC2c+M{smuz z`5LT=4}A@XuSZVVg#z}YhTDE%;coj}u?+~HLb!187)Px=3gq;D_`lBe{-XP*_D;2I zW*>X)LhRhK#)^9bEAb=NdY@zOyxH42e@E*CjYXm=BTC4oyDTQF;aFz^^Mh>Jh7WDb zU*#Bg5}|t5cdTsxcwv3-WJH6HueM(3Os^UC3Q|h=or%0y_`nrVJvmK zkFufRwH9icIO%nZ>;jH|g}0$+T2X1M%tp+^rJP~HyNOUMJAI=&fB2+dw(cxNTOP4- zg045WnLKch)h4OS%}-FKKxcX$%7js2i8S!b4jL#}k$}H|HPC;~1hOsEuM?l{#mer1 zI#n;+k2B7yJ^3o8{N1$466^Ayt@7ba;7^_jfMvp;G82$6JO{fqoE~mhgQb&k><(-Z z;taxt(X3GP0bvG&3y(|bIANne829riG3HLLZ+*~`(48~vvz*85YBvNd1)JE80S8KW`9dB6PGf=F zX<*@I7U3TUgjo?T+!3MIA%X&7+i&5%=Ogot9YPJ|=7l_7MjVdzEDx;-P zGQ>28BYIH+i53ghkdMdE%f}bnVF|LffIweE!D{pK_UhJB~Ug>Ye+vdDF2 z6bScz-{VuUFX`UK%JVh%0#HVp@!b2uq6snpG9Xzn*jF$|L!lVNwy6b&w#(UOy7_$tMNry zzA(@#veIQBGdh3vA;hqxjVB=~VDc_66s$VmmjcNN1f8PM7$Qzjo5&v{Fqp8`i!(zx zD&=#7SSBCOqnG>8cJSH`EYygwoq0Vv>|?i!aJvI6+!mIau%$XtgbT|tX;;XiKrZdK z-9!473of6j@+{`Wj?_Fv(jW@TA(m*(5NNqudi||zddDu7Z_vGZ^U?g$J9lCYydW&I zr&E#7&iAqk1(B^Ece27lYh>_8+it#N`Djgj-vlYP`Z?2%DO&WmPqyDR+A_G9 zLCNV~+@z;oVuJ0NMHrVu!72t1w+msfY(Y`J)yhz+Fuc7GemuXnV>2YSCa4h6b3!M~h5C(( zU*eh(h00@3@y*u_SHr?EPkHM4X#W$r9jx*8`X-;sX%v3eZ)6tbk8O%+%bg3Dx`d&VlTzibQpA<5#Q)s?jyTHp?xpqBc=ZNTloLnILt+`Idf1B;V0`+s) zj*eCrHnJ+f?GCVT(<@-XPSjOIxUjy#^P>Q_EA6)(wTG6<3p&ksO8>m&I@&;AfAf`2 z7vdl`u@hObVxRT*w#gJY4|buoQe2-O8jvt!X~3Yp(p*P_*P_+0aZ%$ca$X|T%F^f$ zp&jY_7qw}4PNz4jERTO-FxIa#aUG=DfKD@D^B--Brs2?>49Io7p7Yx8^Kkk2g1Ib$(&#CngFf38h3xsoVTP%?9@!?g+WkC6D|#dZ^JpWY zxgV=;?fLkPp57AVg9}#58!oC>5=iWy)mqB7A4$c?ZyRo5zS=N@g4O(YCauYS@V?vS zSmCrJTadnQOi01fDWfxdysBjolVt;5wR4E#cCZ#Y7?qp z)CUNwB3w8o3Lgg$zK(EV3(F7Z0d7~@-@9}*G^{g4L+?m_ramQv=HkO}U8+!{>5ULk zAg>j%Bdz)YxSecoRWCD71r?v_{*83IR;<=zcl{gMZ!oFS)h7{P-lAj`ME)moJ6PlG z^-X?T5209}EyFqUD%tw|rUPWv%#ipW*xm6w-!_2}z+Qp4ExjNiI0OiIE>j&z_6D4& z0k;#u!mV<~bR7`ZM7Z$y&PmiQWQf-OExq~Kp?$ro3v&bMNn)xm3pa{nsPGpa&6&Lz zBd5;2{j3ef?f?5_ssnV<1_K2b?kGB?>&81eDm~XNXb!MVeyv0|qSN@!s~M(#D&#_q zR@EHii&Mu+Kaf9J$6X_@FM5}b@+fvdQKLuy2kPx)*q?loj62Xxr>5Opgw@Vn*1eFo zAz^Q>kl!SWjm7pKXXk@e6!ssm;(iB;+58Fm7YVFyCO+FP3!txC#nndRa-2plb>AXJ z<~`rSc4*ptrUi@CpJLjo2Xq~Pw{+p(>jDz)1;H5+Kv)mq!euD6G|VUv{r`GNHi|X> zB}wa9thY{(szC3%>Kh_`&X?{Jhc7}&^c#|{?oz*iuv;{Ff3ILt{}laL+?ZdDyvXR| zV|>)J^_Y0;QRX!ijAeIPwAC>u%VXCV^E|7LL zO9bQI_n9}8vA{!pAt%4vuRe@u;0ZFpqSqAd*3tPeWc=(;;uIFofxmzi8z$2zAG>+R za?3MyY?9O`w-v$CNdUV~9uPK0xUg+C^-Dn51mVIH z9Sgbu)Zg0Qd3fg#>lz)G9?eme&y{CbmO>w@QjMk!J0_4vXMTS@HS_>bPrfU(afMeH zr@bcehDw}LP}01Lq(AHcx}Briru04JKm?L@F}6W@6u3J6;uT=*Hp zl~^1ZV)=_O@^@i(mvpj_xvw$OUE5uTU7o0`O5ATweO}h*Cg0Hd`s6ARfZg0&_IyWm zz0Gc;zl=X-dwu)s3z_HT441CFqbWb7{#aD-2iVP;c2REFrX&~RWA0AQPm~IS6U&rG zF_loFIr(gi=Kb0BtIwYhGng~8RReTv`GYgxzpsh&PrI|6=2uDJ8+dbmhyvI2ja*l; z7u_&gwUk4jHutK)-kSK{@Rf1woLOzvUDbk&oOlbo@?%Jk=hx!cS)nU*Tvzf9SXn`= zmSE475}W#2;e+a8n_*I&$hw!uHyR66JQ(GgD^N(Oev&gXb{IVN@R(d7VcDD3MZNoM zx4gZcrmmqtc7;A$wvSi6_n-(!@bqxUc0I*E@Il6#kcX~>| zsm^da6)c@4IEIv%}@sAAZ#iC7J|d600O5154KHV zo5$SXb}CppFw{MPZFh4=xbW0k`pR(>$o>6qw{EPkN;^_o-Iqwr$n=_}^CEC4u2`7h zV{r`0)WbQ`ca6c@bU zaaKuMqZO@q>GuQm4$qeiZj_D_N+0jtOsgY(vJgGQT#s*rgyX1A$3+z~_S@SnC|E&& zzks#G@3zYXbl9Nk@e`(s%_p#Ro8WO=!CmX_zg-rAeNBKHj}hX1XzHKP)L_}-M%==M z1bFWO+};CAhsVT|!GN$g!i7sqnd+EOAU^xYb-5$NI&9iG!POUbwC3=m9sDfMf2-JN z3l|NiW0`YgB7lwSxYPa0{<>+sDB|fpe3p$eK;lVVz+B~Je?)?}^hs|I?T3VUUFj!c z;!Rik=v}V#CsuZ;3S*N>q>jEIvc0gfB!<`>ZD7TQXGhyRZlxFgPc7(fEFi5j5w3mm z#(PSQUO5Emii@%#wDT!O6uN`8&>_12Oz2)+p(_hG(I0Lnf~8YpR3iis4nVjt$+yQ> z0O3Hmg;QnMX6T}LQS(q@ZgYiHSD~0;D|5A2`k4^ha(b6M`w#C-ikqcv3MR*4?X6ztMv{sZ+L-DQ`kjCvfXkOM8DbYe8 z5&I+cgp~O6V#rkQo40Q#sY|i+B4y9q&ZS)NxE6$(gv)&!_Ns}uQl3~tYjLW}f%$Y0 zJCgCqD?Rtk1_jA4y*`>voPB~JJdD7Bd%NFEwkx zmfki}-bCi6f|?rFrK56uPitd+dyCm;(WzEwXz@nE!=#1Cuax>4lKOw^BNcl$u-$vK zlw;4BIyB{7HQKs~4R5U|pH0QBolq7Vg?za~#-OumXL`zPZ)FucxKOZS{+YoiIX}+{ z#3&Yi1A??hln28wARLEq;nveWruq;_{QlrKe0`-nV`O8sbhj%f?6Nk=gX5<*rN7}7 z^$gC9`n=ER0fK+-jfXi3GxI95D|KYrhm^jY0%f#p;xi{By7I{UPM~jwhe=t#rX0tP zD{FLvJ~=nwbZg=4e9*4CmBj_EI$W-0;!Xop_1chl!Y2z7nFSs(u^03=n+oZ>U?(sB zeS!}KYplKGm>|6dyJ{8+cMQQ=tEn>{b~$b$!iDLKlXV1&M8;w5#9I0d?dl%Hd;4B`dDF0AOCyLQ0<|%ioBh!Nb)Lk$XHP4zW@5TQL?#% zyJor2igJg(E=--=nqy=vKcTw9^X*$-!|G6F#oVt=Jcl9v-yQ`yNFsNdec};u0RUC`iNJeSKgx z+?~^b74+9`VfVpNvfdxsUt`q!T3>MzVKie#@jEIkBR`c%g}3g%zFJOp;G74m!OxWQ z=wH#Bfz(WaJ2k;tEA3euFCd(XaN*6O)*GG>NZS4m5$tY0*shxY{py=5nMghY8rG&l zCANa(IeezcY^zJYYy-9z&$+vH=|E9nFB$$($pL=Xp_|(son;Cj#u;$O7_2qVr3zU9 z!kGvccD_u~_Y?xj+MhgNYY;G$N>zV9`B_`eBg{T0{+mA@afX=dsj9cjgdXL}A6a7V zhlg!@X8M+F1+y=;y}fopAP7^Pgg;|foi{AW(Sp<29_shRPdzi@1_^eb+R+q#0<%1C zR_xf%6=BHhkfVQ>>;YY`K~#1zx(8zdNst3~5`ZG z48Cl1vH$aqoOFBDb8VvcXT)4Nd!Z{=wr zkVu?|iS(aWvVyg~n_puS?3}24xbp!l9JI(s9|OV#2p4A8<>mYYffVjfG|W`)FQu_~ zngbu*3VTH6{ZHw#nF_qdjT$^Yj&Z-|>Kf3E355i|YDB&`#QrYrGOba3BrZF z$j1!<;ZlSPBU|P=5+Xy&_NP7A6>+dFrRNZH@ricf{pBlsw@urJK8!F+qS&u{<1}0m zTgGxz^4=0iQ1Ms>JaGHa1HXCz^!h%8c!a<|TM)>&a=0@NESw8X+=PJe3xo?-A#J(> z!W9S?CZ2P-fQbyL-2Ym3_-@n!ROP)JvsB92CvPT{J2+etWvXk)Oxy!k`%g?!A7H!H z9)n1k8PcxyT75Z+F}1lu-1F2pu<5qOPKe}1$0s7aq+RK-1$%gI-*W@s?F3f#z4`kX zKFi|>wXEC9R=4kF`AU1vuRFeFcrPFKNXm@Dm|o58mnj<9OCKm$1))t-#lrXzPi}jT zux_|y6za>0J;Gptu(O)FkEB#TdF6b7R}tlCy_{vx@aZpKj-1R}zxc)y?<=&qYX zbVDS%*mcb|*`K)3e&=mr_saX7Yw zSuQ5$X%jOYRdhe9#5IjavL&9!$xW78YWe`^hP*3O@+Fu3TKfk5U~r|=s)Y?^#C*7w z9=?8AMaM~hyGYLB{{wUbEBl@`V@Z0Ok38wXaS#fbIWx1+%06k2nIXb)uJc>mL}zr7 z`a#DounPXI#xCt6{?~v!>w-Jaz*^J&GBNBblWv3yho^A1t0O~t_K#f#gKW8xE%5&o7)X< zM%EEA%Y}#OKBMSax&QQ4m*XZUgf5Q*l}>qK4}78_8P5Wq2dqx`wK9^Gpb~`*;FCA{ z-Hj+`&!r4+GlQx76o0-jKS9P{OgZq_!1u<50Sr63qR-65w*_f5qtoyHfamVFx=V+| zY_;WK^}KF#H{2Fd+~Ic z)_*(6EzA;d#HZ$iNX4=HPiSi5(zv!AekM~H#Q>%0XRa5V7;;LM+8d?qI&s->*Ky`X zV%eyZo@{$1LLL8*+ID|?;|JKGjo;Dj0H+P@{_Vi02?e$Ln^})oFAR}=Sn{dK<3tM{ zIM*oELU=jjiQLS9?9rbO-3qaILdTF${{aLCdQvC5;N>yEI>T^V2P~?08W&-oE_^_^ z@Hu2A*vA$l2p6sqAD{&Y?&E*mjD=MiR~}f2qAOoG6k#b;McWlcXwIHLy@0tRlv$vA zkQ4S%c7>iHVV0JoLMI=R-Wx)5Ov9HyIcSLH5NKy|G~kw|DOCCYfZ)K&zUNTSTi19e z>2Ly`eJ-C^+3-Hc!!h#-DX8X2)}?FBr!V819CWk-tKi>iv?{8SCxB0-Tyj$hrsKwIc}>D9r?6-M z#^Sf)8nco3)|mckGSmAt?rigX`0+8TXdh#mn>n-#REa-etVx}hF%35#r^P7VzLu9Y zN0WS#()ik!#f?<7XYmvz0rTJYNBm>52MX4n2gxp?JLtAR5`2L>3Ba10;Du%yAUuh1 z;YTVTvAB>SQ~R?E>`N#Z!U)z@a(z;BB+ByFNe@?OWMjSc@wLW^Y-3(>WHKIi;$R}w z!tjrmo{+vD2{V?>>0H>`v+XeZ9RJ%<)vuv(g$laQvXN$9mMgei+tJ)R`|JPzr&))K zM2JKTJXP@~AR}ksf7t*MZrqb6!vW!0gbOE+^^O9uWX2XfNCnvKJ)mgmv$W2nmz=A*8TfIv zkq$gcfYtCHHA;MLorbV5!mB11Oz(~}zX98dlf z`U5nLMCGahp9jZ$(BC;|c)0q;=}AUyiH^YNi4$wtJncABv0?>tQfZk~TXOfutK?%D z9lBo0DajGGb%{`2GfO>FJ!73exVQb-?xWflZnEAFdm}Aw@$`~S!-%Si_L8cKM(A9}qMp__ax8TlLuylA-xY!K{e?z!%uzQ&gAiRxm zVd^p=k*Er_tze}Xf_?h_0q6>CS7`Mn zKhj|Dt(5{3UwR4uR4&iPWfqr$C->UTHzx}0=S2RBVFs*nd&7($mi^3<>)Wf5Ja;Yc zNv~1g$eQsD57jVAEiyQHRrG|wfrlBeCiq7UGro^eQGrZF#)mgk!J7Mw#Jy91W?j&w znYL})wr#W0S!vt0ZM!NfZR<_jwr#uf`+M$Z`ljdZ+@IL7SL|5vM4$D_1>ujQ4aa(5 zh+zb2!63xn*9h2co8t$K@=Q)tThVTGHdbPu$7bC2idESLW7*@OKJ%#b9TdTBN?l=8 z)@FtGiMY_m;Q1ZTPYKnk^|6eJxzKijc4t=Cjh|SCu#qM^m5AUpS1dM=_iLfV%v=PQ z&JaqAz-K&1=6==k5lV?cOn>Q_v_=a z1gdcL+i+w5ZcBkXcYZ=@fP*N~2ouFUb~m%LJv9&3Ussu(jwPTyEdT5{Ry4*MC5%o0MD%&2wuKY*h^gh=ZG3s$j_ z_gpHG*@!C;d%!NoEOVd0!>9in>e|zBU%g$YJhdyK6a6i4SmwXq9Ghz2^=CFfjvvCk zEQsCx8~j%Wcmy(okL)u24LX=eP>(%6=*5mI5HR@H^Sltf2aP$Q0Cs!fAH^Yme#M!* z$gXj&z6$W^=>cdR;<$r{XGL?whVzyS5W(oB<`du_UNTE-G8i2mh^kX<4Z$cfLr$|* znNciU;Yz-5l>%6ZlT<9Z?=^wJP`WW{6+By-%p}Jc=lF=~HM$gj&@B3LL0Mz0i+7F+ zn}&L~KAEWgnd^~q;7m3G1HLv%_ETP@l7K+BAPMb?eNFU}ybWtX?hvyym1?s7+N;Sr zBcqsTL@N1MYClEKjKgfYl-kp0 zXpjL!F?z%#PT=4yvxlQ?s}i?q*p_FV#x%d{_RpO8%+nMe@MZblG=-3~4xfl3v{##{ zEU3?N0yGV7hdYfJzM#f6-3iM&^ZXfJpnX+EUwZq|ell4_Sb3phP_3K*ygNm3Xz~3E z%7p~Rj~?$>TiY8V5w&<`q%yHh>uf30gU!-u*P1?ddgm$J?8mIXGCv6kk?f*=^=0T^ z8Vz#{v)_Qb6m`_*@^szp#I>B#aG`9LC;b$^ui4euyxKL=9H7{Xmn(jZZwO^oeOF_J zj{L27{ZGeEg^FG+%K^{bQ+H&38(IA3qoMU~Q0vmqb_kcwyjw5499P?Jz?HhK=O)+Y z*)Y2a(hRK?M)9AQ*HA>~ZI<$jUx48p@ZOp*yeq4_^fHCmOa3EcZZl6d>TIo2orCBu z$^FN0mpXVY&e!k~NG-^9rWM#_GCRWgJMSF&2-r+2<6pN+5tB`rzdEeqz|e;nSn&Qu z>Y+%{({=Am+#Ije{=S76W3mW=~Ta?QdxL-IHGm<+eM0 z)vgErtg+Var7GKAgXHhM{C5i0a{U$Xa7A$bpy7NFcOdq+dy0@y{+3od31bQ}TMpKa zp6%4hWf7iL`L>^gb6J>?);MQapsMOKpwz7Ferj}V zpA%A@<6?VR&)x;|4gs22R-0Gs*GmEhU4kIwoR@)32)@@CM2m9YTgX(sA>mlu$m6-DGeA!r^u5_|MgfykJJQ0$3uYhrj3ysJ_D=eZ?N%qsX96@W zw^U0oVCp_D(=PA`_*ToL@7V5eMDpy4uG_H>4TBLm9d<^wo@|A`5e|9z5YO!Rx}Npx zAp$o+%*TNeS*sOFAQ=@1@BxL1AnNK1UR&6k&%29a*edLLRqfKxt&_*g{AOR%y(X4w zL8kpu>t)a1WZ(<1ONU=voRmF@THCf2lUEjqhspM7H2H1Mq~CYOl+w75znci<%EAn4 zF1q&Tf_M%MVD8kW0--wmIJqvLvDc-wy~FZo@Y4d7{3CF40SlvXvOSc+PvvVUWFPbz zY2KR|Z^ERePkqOPwU|G zlJXo`+vjZouOL}#Mu@s>LVj2H&CXGfvy8GfjMx0FS-^x3IZA04MZkNBWnLHf^2 z8*E9Is%ly)jTruv(p8@IDXUX|PcWxvK)W&`-mZ4Sz(s1~0%2X`zj#u~C=LD2B@K5a z2ML?r=#6>dO!FhQB`pn*twqA5E(mi8XDS%V9J+pq_#<&*jCSyQDz7rkU<`Uvv%@(( zv8BC-Zr=X1-*e~87~7}Wx6$@iE7p?AC{Alo!c2);Y-~~d+DdYu)REt3Zz3C?^%lld ztHUQX?L5i!-W`IPzloztq>A&MtLBEU2F|65LdhwOhzg80`MjRUnYUT>?_%6xQRw9b zg0*s2?g{E^DS?u?M~njvEl{@5-R{~{e4{&uS_0^mr^+sgVS^xG(FWD zLVf=}HUWl*pQbKlzdEYFz>dd1$=K$aTb3KAo$-emWZ`LH((i^Ehbj%8-|q3CmcYKr zAdLl3bHHLq;9Hb?0jYPc%pgc0h zr_6MKobJTwpvO2q$+E~nQKI>eGf}pIS0at50|oPe6*s*qZ=nbCyqsPc-$OCXyrSNg zSQ+)|0bIVY?Vs)Qzgp00yCD5Tgz2+ChWUy&mz}54JRr6i9_O$o#&0ozCSQiVRZNBM zO7tRSUNYSmC``H;LC9SdyIfufEqMaFiojA?5xgTyp%)rJX#81IfAyl0P;2c;vk$jW zYt%b$cv;7M{x1PkSBl@C9HfOm9u9U!V=t=<9CW z;{LO3iWgdHZs*Hd*Cww!yWanfr5|OcKhQ&9|C?(mREsq&y(l&De^NQE{GBqaJ%8-t zT#kSe_Bfqq$ntKFL~7#${$Fgp{Ho(mKrm^C*~mn|s2+39a|^g(|0(3~_4uAau#4LB z9m1n4Z)Dz47lyBF6?3h#^e($GX4?SU$*etPsUoJ)j7=z zNyd#n6MKb1Cs~q67bK%!pcfw|C68ZM_m#qQmFqPkMRh?H@>K%N%3KY1$x`*HyZC*f z<<3bt#Bd^_Yii!Qw<~qNnf5qUx1ehMYjsB8)ED5PgNO@@#>$?K1l{p`z75XS9hYm! zr2VW7LH0C>992#IB5j&!MoO^Y6+74Ruo@fJpm&s@jj+S4S_y+Oxi3}M`P8GbuSeg% zf2EF}a|&WJw6W^@I$MtN z+N>~8idl`?Y0q#D<4AS4r9d?`)YdgM*3Zqd|16dlrvE`P*j4Ld3r|he#?4a~HIlLV zPz%qGUBhAXc(uuVV5`$p7G1%7yVsJU(K-2}HeWayy+WCM$iE1xflB{TJR#5xsO12J z>gbOxfC6}+FqbfVpD+w%H$QE-iT7on}>u+P;ZkC#&TvJm>NFG;fgismzrQVO%Zry^Ma0+oVT_gku)z~ut zg2E-yZH=Mnm_o-kZrm1GGGd{@+dLno`M~VhW1(HLIMf2k+mrU`kS}JD?0aXyk?_}T z;U0_Jb2jE7w4!-2XwM#odyKXq^~_-+kz zeBin4jn9H$d%xWb3`@~!>#<4@3$*GBdvyT;n_gVS!%JlI)8dFWC~f(fyEA+LV?wQi z&%^qlNE>o^TN*o93P+H(_4|Ikv&*!raC|)Me66+PATk5gouOE6Zeczmze!HoskhcM zWc0mJ0)N$!_`A+!h0n`ShQgX(}WYl4L9fXmaW5N^o+cad}>~FP1}_4@}pVpWj#}@0cV-3cykm- zYtg@ldmSD|PXV!{O;`g#73!KosO_6$*<^ z9Z9&i)SQJDNK>cp(yG?w*JlAGDAcw@>&+M`F^$j)&MrXYjzSR#q(94*xl2q}#?3X;4%-pGVrlaBXZ=>tdRZ zjf1X48bgeiqngxC4Uu8(*ySVs@nSb$lXZ%3cfqhaVOoaVc{k6}m^!N(%R`w)U18AAb5|ShjCTB9extrFoU;L}k;MSLd zl-{1zIDqa|=OEtEUcf0{GU)r*%+E6lPRzA*hB6VuJ7j=x{$-TN)5jiDznWgW4XVzi zA3-rXKT42iBl7G^=pee{kj>$>kVf)@!ATIGOu zF(e-)M53Yfy!pa#9ulm>Zg(1f(uy_}`aZ?puIFZNFFdK?CwkEdawRar>8*LuFiVlb zijWhc9c@r4YBAX?9nnRYgOUBS@QOL+)lWChbeU>eC~V`$5Us1*bErbE*K1xBv45h5 zDwESK#c+2(ojbaKc}&BD7nBWIAi1Geh)Xvh?N(uY()`@z{ko>o%D9#D4`#az4W&!d zqI83d`df2`^rw`1L-?vyI>OfM_0=Fa< zzJGr`bd30$=NX97qwf-|)*%kU$Q%TKh{VVz*u@b7ce~Z2)QHb)uRx7N!l9j~;+t%p z`en_m{x8^+8h?zrDG@&OFZs&b*|$Ra38jw}p)-9Cv(di#($bNX82vh3*@Y+3y>Y>` zRHoMuc-a@aY=Uh9{`GT7?-y{t+d z(lqK(I^+_=_WeyV?BmKuOC|~(l7AfaA2nt!pzD|ZOZ-{~WB=ehpb$_b1|R#ZV_2Zc z!1v*u7s)Lpo>Q- zWx6Z)goIPpN*CEdQSOoiQ?HMdBJx%6HWxNuNLkNI>M?Q4FYBwh=sqFh>{2gYA1?Z9 z)DO;+O=#HGbxM@G^-ug3OKpHdO%Au7e)%2od)as1Kf2|TF58IriD2IA7MpOV>s`HA zzy9Ca*=Uu&zHg<|+7FO6!%FzArBX4@DH&iDgzfOox!y=at1l4LsPlOgKKW+gmO{d3 zVz?{>XeG|!w3xB}3(4fVyMfsqtgR9rf@+fKSG3o`e-)i9Hj z#fNY&{2azJ-?Rlk)9XDxOe)4(Yao4!tPZ}9J~;J0>J!r}d0S^g;FE2XSC6W!@KCt< zeOV_CK3|(JJ`4I}C=McEAKShGA*_Li=a@oVD7%34v5=6H1Y+g)bQ5yzb<@a2S{Wh> z=l+94?fsJC6}N_(Lx}xG6WQBD)(XR6VBM%ctnf}pJ*!<>lDMS_lV1Bgm~YIKfs~0q zJ07dd-uwfa2*p^HSv;!CV9JoKwy3S&S@f+049NKDGAX$D>4@I$CbmB9!&l$=y$cO@ zUsUVgqa|$qk`2u>-ImR zeq-1!BzK(dszjFCXSH$_O&BFN%Xk{YR}GdkKpxEtUq}s6);w%*;-ZoDJiJ+OI6gs# z-7tYbUS0aJu2%0*)S1wjwl7Tn#jDbDEq6@Jo=7#=%A^8^ZQt1nQj*^pracmfS-jq0 zHYfBSYaeg^8^w3v`eib+2mM!q0~@&gcXAA9T;JinK(u;1)DLpEkOza}=zAK!!n>!7 zktHGJyt{r4esmDEydgBP{*R4{ddo&KiqyhOj95|rQONuH2U6u&hd&7ItNjHJ*+sou zHvcvYCED}8cLn0G?a-q$e4LgDmS^}o4o(clm-Ge9&*1OHTdtmV9FZ%CL>R!zks-iKhw~2v+CkR*O&AzwbLRT30F|q%*VxRpXe7b z{|WPb{-~2gWKD)M=f2TA*87}M7S3D`bEWmX1lfrv8Qf|~5}OA|>!SWy!noP|Izbr% z2N{?R1z^|~&h95!AujY?fRxlWnj(ZciRj!@cCGFcj5&K1pX@RT#c)N?#!?<2`2$tt z1k6DC_pm0*jaxjbai>{tZ5%Rl4^`Wqu4zHl@Qh!uO!0uz)_}=SapKt>;z@H2!#)+x zd1OR~#N6~c?NX9!54vF+Y*vCp#?WS?b_YB-ZC@TKvd@^1HM`E!>Q`mZaZKET zq}{)*7RG$(^a-fg{oEBAn!vK@56>Y`>mt$pPqR)Sr*Mm2!c2$vpBauL5m@N}2Mj=H zFpdH;Yq3!Mw{?Z??Jt?Bb5^k^U1^DCd@B!%wV6JKG+OsPPlIH=#rlSA@ZWQX*0?TI z-NPVnXjy}ewKLrWRv@JUzsriZHeKvkTb zPFV{&v(N^7vXW?umvI+cMU2K%t3g4F=g-mIFZ{)pomXP!^QED2&Re&v!(|3=hA3exi!A-ZsT!dITvy_rsZMDH4-l9Sxt@fKXQT4Wn?lLsDI? z_P>!(K*vF!x#1-MZxL=gnnNE^V}m{@!zd@dvL*aLT&Nc?eQ6t!r7NEnlez`XFNu1>81$J@pO;B zMR0c(3N~a9W5s?=O{7Z%KPrdCwGzEej2BjC)HMTmAMUW-pX08ZA{1)+T(NYp-K86# ztvo43E4ce<&Q-|<@nR@m^Pt?wD?;N!^ZE#FDTz0H)y&S7V%=K?Wkwt}UaOy)|2{Eg zLnhoKHZh3P@~7wA+q~L#;a7hB@4Pl2rfk|dl~{FfY%G>xlaq7}JMvj>t2$bO76gHj z-2SjZiSP&BK_0hv?}amyW2Oik5QkJ1y1r<5O6He(0zstvGt4ue(T67Vf({6M)X#GT zErWl2{{ugQV!JsBiucdXl<$_*uKAKYrcGR9ntBV>l{=pi`Pr1Kw{iERdL}(;KfWRE z%q~VtOJW(#FZQV5deY6>ZGTmH1Lh*Pllom#4!4)4W!Zg2w^O9eX8UsPj|P*r{*J74 zVN(30YRyYhefm-1-T84Llqhg51&f)o%ECjZ=WbEiC zt^In^xrvCF(Rh~WW@wLA6vLJrkS_s=|5=_YpIjKgkh*>cfoN25iG{$KHQB^7-Qkg1 z8vgd4W!~0FQ6ea=l`b_pc3Nkr3lrpVZ=*0Z zN`yJsl`6ml2n#|-@dM#h9M(7JM|@B8Yorb2 zQrI`iy6<`92*k!M#D7qNj-7}!9-@t~AC0ZWF@=pL_5QW$<%>qDZ|&cLGB=7#85ySU z_xFt`XH1!A$b=GC$Mk6bkg}N~%K?M9L#bK44ifUsUXQ$-d%O(m>G9CiQescDbKDlq z6D(s6&MT>w6571A{Nk}UmyFz4{(=^cL;~#1&)mRPk2{OjsQ;n8JXBxjgZi>1 zIjSJA$S}hlh9+qDGWT^+=-bB81No}?&V~i3M*Mbf&s!#NoPz^?IOdt8f#WLuX6E_j z)}WV9{#CVdxt?DB$DJaGf31W7*!T5L{`be0P66v_U>u+fID!BNMnI_hz|oJH zxaG&QF!JvJthdKr&~=6W$qM_-<@FfpZtWk9UicKsFH!KR?$|a{Y=h-+d=w9$o9*m- z)g_*zS%~o=^hG?}+ex-2{oGcafRa!?!(>fc#tEeJ7tH{{|EVJCmv#u)eHDD8O~-d} znekZOfEDg%_|36q7n3<8G@U8ox8&^QEoUbw+{6u^|M(JYW{K22s4Z@$kC~ST+ ztaHsfmfzmrl5jR_6N@CnhFg`_=Dey|iTBmAbAgWY-QcV_j=4)mnOQCMSFc1k&+_F= zNpKN+o>mu=NSifp3X#{Bm#>VW9s_gA0KxUOIc-PT(a4j<(m2#zSP^UIy+bdhysO#Y zBX^${9r4EG!ndOi?P#;=b<8X;mwcsN@yaUZD<3>gO=WI+o-QN{C*kQd-%d}^sSmBV z^a`mJmiNc*gD!z(S{R;DHb%sy4IcJnV5Jr2&s!ydi})}ad)qx$>kZDc|5PTtmm$xV zEGcDaXo)i*a=454^QnUI_oK?lnx`4QEWr?#K*GVkC{bQ)Q@G%I7xx`HaOiTyXwe z(@~_&Zy+#*M%smxvC_nyZsvfXz?zS&jBIVz)m6vLV{wZa?PdxAeu$=?px(a!lI2cm z9PG}-m;XhsJKyr=_jgxS43w!RTD_#0hS-RlNb^OP2-K>nnJMMgh?EpD87XPUg$=dx z(^S;<`6RnYu@zne$G30%{`B#=jS(kkXn&EfEt{0C#XTvE^r3 zYq?fo=BF=Z%wK7jB)he1BoCwNb7O>~)`i+-($RO`fy(kDJb!u*BFBHypnQHNK!T{e3N%P@vOuF(+!h6I;c$hK9SaI9WozW z5d$0O6>9`b@4!;tlR3UU)Kt%rP+LXgqs*c{3^&q`MWu=l#S5!DlLiCPn^tYi&ovCjwrgzfUSkOg{d#ZzrN-T^uL92 zdwBaphsRg{J<L-WzL(` zTAn}x@N#$w7O6mDY^g848P|>ddKwk@A1+5_+LO>Fw7%C=Kw=NcPkG~{0;ljBB1Dr2 zb4jHh2Pj077_+;&4vQ@gMrS=1&L(@@ltws>vcqcfWNNCH2DOTptb;=}zT36Tq}5Nk z*cWl3+u2GWZ7DMc$5Q3_AaP@Ytn_?!x~UGkw4ZlGR+DOfnHTH9PmBl1`a?0ixU0G- z>UzWw?&fbDCQ_|wbrFMs{y|2900CO{%6U8kI5vJjs6#$NLIEhmx0y??^mc;aJ{;NR zgtqd(fE$Vf0O3?5vQlARvzv|@Of_DLT7t$XztH1Wd_291!`WyiuDZu&eX0&@%jfJ5 zNmTo_Sm`boUSj`V3;%w}^ItYi)*YU*Rk&FTm!j3=vS0XFriH4S2W!TnSa^wG51zm* zc}OY?6Fpgd)8d55I!EQd5{G!-=vlS{}nyG|JT0SYa)kx*W~K~=mN!xONM zzXqw!N(1+*ve~~l8uEh`1g4Vr+Et#nN<)lvKBsRvw=XU-d&+%dhG?Wik?CzVRWYI$ zElTJUUlp2dF5g@JLvgeu?YuQ}+FpEni2EKZiS;A0<1)HZYR0sKQIUh36pPullZ z?r6|{XxuT-LFbpHQ%euYEUtxN4xMvUM*W)&$u-XPwnbw>Rxs_IdAG^10F-cW@bp>^ znJj5V1|rNZeB6Q-?TK}ACn`#+V8*x@_tpt_^XY!rQ8%D!Liog*OUv31Z(Gq|$7XMI z(T=gO?Me7cmMQgcba{KrI_A#iZGk!TzQR!W$h#Kp;++6`TX32`zLn#ZY3>P3_PJw0 zPEzOv>HvWI4_$7;f@yEFTTpCpr~qd~Bm(2X$AOE>K$uJuTD`5FGi9dDo_~5H(j@!5 z4L_Spqm=Y5qADkum#%>m6fwHlA@QZF`$AI3;YC0kMfW)@_mglV;`JO2(16d+esEF8 zH$4;}B%j4*>k2p2Y!7 z;0J(^*Clc}3#PHn++iULOnOhpvSw?hbOn0^32RJF3hBt#3{=mlMF<#=nJjVJCrJlcT zd6td6X(nCUhSIOU>U}Q*|Md2> zD*Thh)O;(Z&%3t8(6{1DdFAq^z%o;NN#kYaw)nt6#H-{MWCTw_h2k1EW)jQIVM`Sh zG2}9<`0fRXRhm=G)jGoNcE?=qzD#Js*ZNmjn`<$WX&%69k>CcY)o!VOya5?vNsQ?i zN2VYVwMjtNtA9jXLQ@6Lh3R1qIk)c&Y-x$^SzAEh_woDi{EArxFSg;R3birg zn!pZWVU@M@SMR7|SEpN)S0HqqHU|!t^vk+Ymw&7VEB(or0 zttN64)E&2@%`RD5{X(#I5&rIZr_ZC)K*w?Q!Hz+j3*qpH_v_oT4IT$G#0`aZ`UMTI zt*Z>X5ZXuF!+;X>-!O;o0(O@$8hxrWKA%qlFqjt16EFyL01hpCI!0td(kCoUu4JR9|B_g3A1;nC*A z20uM^QTocD75^binQJAO#2wzUB`?-^h%!`89j3~i_SjP)z3Q)-9X{G+YI4W89mo98 zi+uyWR*@gvI(Sa=F7QTQXd`d$oUKAf*vrWk+yNkeaGnI%?s&_V*UH}ZFx}-BbV^`b z^kSp?Cn$aTnr@`%%0QgyV6-pC$|^B0tCYi!dkp$PBTbpD*#4sX6LZHvHLXx~7=+Co*l8N9$~K)<9Gp=^I4yLYW6qGY-wMi(K46wtL<@_Qc@+A^c$@%qW*Q^!5EZ-K4qy6CZ#|Z<=>~LH|$q zx`%Xrh#|&rt%uQYrv`k&p4nxCfG+nz1@C@ob<#k6AVPCdtnASU79%%sC!WcAFSa8$Q`%9pE&fky`)j4`#2h$UZ4bH*8Rj% zBfn=q--aUS9{(+RAy!cbX-B!Pz381&5#tvzCi^)XYj$x&+5%#&vyiEFqECrxn5kS3 zQ}Ffw#Gz`h1QXtSgX_WR21|2Zz$lS6J1kl^FQ?sGjyJCxQA8J7`wxeMdIb`S3`k^D zKn2aA25nTYKNp@*psdaQ(BQJNwi(g|6(5#=lA^>}+PE z3p+ZU^k6};TF^Io=jr>4U{SwatADHWp0kEaa8B02NyVoyeHqClf38G|vr>oCp#!+k zkL1Fq)a?~+e;idZYAab#cTk7eUytbq>Qdk58huhB`1)^4!miJqEQjSFTYkoa1G)+? zZK=C}yF8#zWmmh44uNC+8etOBnrhF#m*CmFAj6Nt?aY+qJiBiCDf%O$f&=lN@hz8v zF@~odQt@4mwaGf?CBuA>>6s$)8EO3mvZU#dnX&F)(EG)_ zt2Xr34(WD5uLP$%cVj%aaGbfPc|i0f@veL$WSIQDgWQ50I6xkio+uq*DlmI{0{A&Z z$`l0ra<{ztDSb_H7H%RJWDIa`i|dI}T|00CGM zU=6f6%z+E^-Q16NvqdY-ebnB5$3=ahdWMNhPkcG0YOO_(ezduy=~tZYdIxyj*%mg* z@`<$4r%DeC@_UDq1T}AwxJmHfG&C!8EWbVi-^$hblPm;-+yAkrakSRx|LaQ^yX%&* z<$n>w)J1AFbzsR!lM8c^M7n<^n{W&KlOF%OicheFMTNTf{tL=yQ^#u7fE&}1P$o7fleQ+UONT_NPQ80 zgXr^&8kD$|3Ohev>ieRQT|g;tRuU@Cvp9Hn@Ma}8iIb>Xs3L-{x7!Xj{i#ogF;`(f zJNB-3E&U{J6E)tekgMS5vKl8I-HLzmS^UdHtjF(?2$#g5)PDH!Vc&pSlmmbxL0D(K z1=Has=!VQLRxZGdTcI~1D5)T$KX!qL%N2 zN>HWQN^&CS@3QRLKK6*2gUMNSz=ejFwz)4pkJ%l&r4`eXea0d?yX>bPRd+Ib60QCH zvhARXMds>s!mTs?&EHmWuv;q{--;DFmVWjUuPKH_#%kXz$9pIH zvd^N!8tY1F9LMSGKI&9UceTF<1@V}&|Bf|{CDl4-hQzBh?X4-<cxPl2|z$FL+UW#2E7bzR2Hq zc4KB|USBReptG$s&zPU5&E5&yM-_+>`nO2fYR)Bc?ltB>cJpMQOXF0Q#}g|=zK-r1 z_PhqW0wc=z)8%dCAL;EN`Bj(4&q{R~dMA)wR{$#aPx~2)i^88ffGj!!zKfIQhPEv> zM1{Zggg>$PfwKg&Pz<%`OW>=tkdCk{lhocehP? zq{lC?vP`%3l~1wOfgysU4m93urKmTrqkPIki7MasrDuuvy1UGW<{w+2 zqfaHVzgqcCp#Po^=8ux#mqw1)@@qjvTyCZ0`QGFh#pL7ImV<9_+zpF6*)F3Jbt1|} z4k$JBmjK$00b<8RuS+WnZ&d9YBeo8#!9iLI*Uf;duJu8KH>-UoPk%$HXhbcIO&3!+ z+Fze{X@SPePoIjtt>+5mUm7m`F@JQ1{qx{kWr93LH$=wmXCn*#a*d zj@cw@?q(%CsxZ^^&&2Z#>27m0bl9A~T5EXeAmmbUxk(8t^2FsFLpnRM{51dlb}{=( zvHK>;N_{}7mw()K;HIpgUx-fci++RusFAM;N06fMJBo0l##Aj?ASe3L+|PFe3w&8R zI4+sS=3qHp*P#{?_zRp4rDv5Lb-^mUdRj7tfg^il$tY^t5!$}A_}I%4ZA#sb!ABzF zy1U$8NHthJdN=_K-8joWsPVaXtZ?xV-!5G^n#Z&#EsT5t~(MQoP8O zIVUkSai9Q=1laInq;ep@k`(Np@oKr*!JC5PqCvf5xC$!ChF;}8o5r90V~8E0!@ATr zWa%#_Y%mjM&me6+lX%|^iRK=4fKoS0RPuCn|mSywv~-i+rT=R zcdBf8s9R^y{Mu*e`ReUGWt{*=w90P(Os%u;|%YkFOm8`lS7e;?hMJPXpcpA1UB2w?mS5X*%#EDH?S-Ud&U)ovWp(J z9yj590@gC=cC0n6iUyjXB6*@OzfHiwAuaGEd2X&;;3r9AW>l?O9Vp0IfQwKcj%Z(M z1TYk@2t$qp#g-IoF!$xuf~d;g^t}i{lg z9*d{3{N-z;o8(b4@dXvdFr%xN_5*Z+fd$C~#gxDh61MQpNYmHI886tb=IG+!gG0y$y!r{@}3pIEO#!1vSM=zEkVMLw|wP6?hZT!-S z&O!(|iBrH@*4vpDuU9F)jh*Ea?BML|Q?MaUo#pDcUwYH4f0)bDey|+jq@*Q3ED`iq z+(Zb!a|(3alg$efy1fT#cMxEaL$j>Y$bSY}e*~)ha{W9I#QjR{$65`$jOvgZ2W-ol zGf9by)D<3o9m6MlPeFtIQSr8+8D+vpgMBCcY({2!=H}mG)~!FT#|P9#CaCj-@mAC1 zuv}qn1lYuu>tftd_XVv}pkFsOH4Up9nX3u5uDBKVYl|K^(F3+&CphXx&|-+kWCX{a z!-M&pS~b&xi*Z~5x7W!&Tw1kmQKYWTy@(@)m~-4<(HK{-E$BikxK2ig#ACc5f0^<( zVQJgbxj>^NJAd)N7;tntwR!?#y|nBdBGSngmKENAX>rmTpYHcuW7BjlrYUn0>JgWF zZrGC)oTIn$SmhX>o|LPTw3aMb6@)8Mwj5#+c&2G7pWR>O_9%V>*zF1&2grsO`C_pqt-I;yjYAD~AJ-j=C+@*6n6|y#a2U8pc_i^o zxlhBkEgBm(@jgEWHaU1JKt2`pxWKLp;*p-ecbA^_TKlidP61*tCM>2?raW%HbVpomAl0D-A?m3Z6PCYLvMrJMzRiW zD5Ui0klisTzxARVqhr^d-mmmHkf!+VUUpO*zlzqfNxiVNEP9e8*55q!;pS-s3D$s!K*E@k2)E`Qw1rNL<7-nq`KK(0|AT@ zVDAa!v8O}(0PdR09)DBn-g2@1x;0#4<@kn&6IppUVT@JpE!(GjUdXtfLXJRlcxB^i zYM2mwV{YEO1`FC0n+#zBw~un7w1VVTiw{I`d6P}~`@8+}>sFTKRl(`0hbZpnfOk&- z8myhgw%x8lFS6yYLd3aSj3wI!qc9l0h-FdJjY9llM0$vZr#F4OCqN;j#F%ziu9@Fp z!Qz(;Y?Ut6jN-R1zq$zd?s!AZK^0HxGVeKe2Ose9`F9pQJ;6_g!1_h3&y>X9Rv}s9 zI>K{u+6A-jpWtsl_N=6Q064#mg-t>#46&-BEcFVx6plx;E0bC94>>p81umiV?8{)E zEabB2&fsx`ubzk=IByfrFAlquuwnFHTX)eC5>LEKw5b7Ep=-8g~PY%54_4m5$w&uS5 zGG0lt`u{Q7U6R*{+aQW>!+(jHUW@mFEE!T^-7$5D71rtmpS(+1cW2;&nI>;xL|0QF6 z?CjWZwh8h=T(5G&5}N}=xV4QR!R`h|K9cWEsU>$jF0;1)7^1lN(XL2r{X?{BC6Au? z5pOmX45zzU{Rz1ToCIa)&)btGA9b|9<^&ol6t1x#4hc7s8w;4YOOI~n(cmvif1bYr zZ{8x0MZ${+^q;ZK^qeOrI1|u2+ylUermU{Gb2M&ihfEP`NMxAW6)^irDSLdlJ^0+! z&%pO%Uq&nVZHDPw^0z0*845tZJ~_J@#eLUT&4lz%tE|oKJ&*q zroWHJcUG@2U_sV3id&0-AiaYOa)6hPwiyg;wbz=xWM@mEYuB{)5M1%+EA&O;Bem(; z#z-qnQL-~0R9}Pb-d`nCzc)a&wF_hjiT%-dq}Yx-5L7_{nF+AZijjJ+K``E(9Ul$< zXh9bCt;*I}Q7x5kaSt*LD_}fqKOe;07#T+*Lv0yPzn(3opI84861K3@MH=*)%cNGK>HAsNuj z<*J=a@S`0!fp#wqa`Js$bao8&O%%1u_)hmqM(^bXu`E4z8>EZqCI-#NUC5`^_*!}Q z49l@8EpO%DRVmz0QHa6Ps$o!jv3$QTK_Sjs^X)n_K55PVzVNEnxF93d2UX|Ei+u#G zOaPwwdN)6obu|6V%J~ZTQg6@V%AnQR8PI|@@SH0IhJ14{TV}wG^GGQAgcT~Al2K^K zFhjpUGv#b7v~ZMZ97|~D2dR3cBjSo6SY3ue)k#LOX{>OJ-t>+66%yi5H(;zQOcUn0 zk}{eCX6&H8lev*V&o@Jxfkot+TKqUk(@MT${>>6gj{%Y=cWwjWMK13JPF9KML zpCxQ!f_Ssu5uFS>8fwt*sAD577*MV~$NAIKaf!G5e=fT0Pip+SpL^lkgQh2@YhY(A z1_jz5@$>Gjo>CB^*FCbMH&+*YC>D0`<4gO+!t=B)zIw(LK?hGXPVCD32YK;+!nc0Q z&^yHb(+}_U)@EX3Ir&V-IlMrbk}wvojaki+lfq-tzH9_j8R%bObarm>i%iM9NopBe zi!Jy5fdLfYngILmx`v2+ zlae+T;@R2O2F@xIxf9=4Dt75sxmx5GwjoXGeRlK%hu%w2(UXF(vz-e(k{acoOup6|G4DHcN)lrNc6@KReFk zkK}z-F<%~&(1*vQMiTXk9S82Nc039_To18Iht@B_KHyz{R;g5LWYBbL>?|*HJ|Dlo z<(CAEg(9)!FUljLe4;;eAQD_;o5gWJ0Q3p4xQUkd5Ft9mm>5!31;52Yn=U2bR5~VV z;3WpVbYPx`=oBRJxPE(6MUKRcrW_T=-wky(z7imT`s)16%PD#qGo3_2jYU)i$>QRE zT*LTt#Fr-?Hbvz#=KZ_iT~G+_Cl3h2@ubPy9nVT+CVJYd__;y;>^dv9{DnCO%W#Mf z=i|XcN50z4^f{{M0V+9KvhC(1aPWopZ|&FSLkWc7 z_@@oXJwljSl8R@|b}p%3254N?mfaWP1LKfQ1On;FDce(#>5y{Sv8GIBa=cA1M$ ztDHd6>OXg0a(eQyZXW1rbE7KzYWt#h$meFl)vxljHtR}#Wc!lADiy|+MT82fbGpA& z27JV6qZHG-zi$HFj%Ol$y@F!$cK#P*XVn&G(?n}rgS$h5dxE;dB2l=xc4uZx%#QD>aJevF2nJVz?zRagQRebu9&Bh@Jxsyw4XIZ z-H{xPOj4vx{cpU+LVSkD;7gQ^20KS{BZ5b-G*Zm#Uh3@UcZJGOUpkCZWy2=t0Y@xC zVY}H68?bst)~GB7`x2+;-*hH89z|%d(q~RpTgUb?pXR!U9etQ*jijDy3C;S5TREoS z3N&7X|9J^^C8t;^A?3yeh!2`D`M+fv(g1`)bal%9#=tM5+dXHypYSI7=Q{ zNvq`6_WEmy4dKft^(7NQssLrg&VzTiECtFB5=R;j{*uxf!vV|QyH3$GS$h?MZXwxW zu?RUWaK4nbIUl1|@AWtXfqBX6>vSOo0s7C)eVJ8m%{Bw1sxLbwN}{Y6l%b4F_)_mK`$%+Vv+l-vlG7jAPm zdf;>cAPh>3=RtthRSK8k;^bA2NqP2}Rk%`TLw;YTfuX(M$xQS=i|wkp=$zJVLyU){ zyguWb&DQPJ61y$+)tBhSTQQo;F&gi~)r2St**A5Rs$p#|sd65vd>HvUgezFuWd8~Z z8&#w=TYQVnfRvzY@lae!!H-C!*u?XJ#$kf>9()kL4aSrO73^(F5eQ-F2J~$jNkXIAY>bA+!APQjR zIZ6C&#SscGdwpvb^^WZj2D{6Mvb(6`-Lak7Q|0;U8H`9Ukn5Oh$hU&4I0}xLERU>6 z3wqaOECeGaJF8AI#O9)=$IKk&GhcGYz*WGjN*ML}_sXkGnNo8Sk;bv9<&!<7Yw0;W z^Ssoi9Op^cVabI|;!_S3&p6fc9dd>t)j$h88`)cqbF9+2=VOg{m=Ccgz8i49rZ z#UW#^(~xQ)}y;CU4vPUIf24Bk%bsyWrbzBJaalDWk=an(c*V(#we$KS{Nr25NqGTwjT#UXyGt9JX=VFw7B? z&qT0r)|Q*<*>X)r!}apdhustp8^^;P`%W-wUV1)6QdV5yl&6{zPPUxBTWY|&;zJ#A zQ|nJzH*zV8*_h}fHYPr$1>W4A6*)k6xRcac-9k~c%JiYSL3Ywp{WJSP;z0WFr7lhO z?}v9v&L`A-xILy8ovE(yhy8UmOU?#$1sOlx)9o7cLbTaPn@aSMGqf;0rq4a~Qck39 zl)6o*?>-0{>LE5e0@R6cM%2fA9*E%OG3w9MXspM?U3yFMmzP? zWWHNGosnI>(Z0av0*`gHjv-KqV#xBg{ej{@-1)l9K0>FXyV9SvP*M(eQ^Iz_qYXFC zk2}XxiV}z|SB1U=jwpqR>IaOeRnEIlh+ghf>b)AC(s!vO!65C6vu-&ds`3dI7?sAw65r&KH|VE8l>bpK@=iOxv8a7+zl;zuL5^8Ns2rqmNYch;@`x@V}paMoVRD&sw zK~ZN-%I-nBqyBivM*xyzVA6hw7}+ms(EXdj+`d$QDd_(?jRmIbPT|osvHNNwLaaE1 zY28sAvOgP_sX4)0hgiJbeyS70<*fGU3(Z}N4_cqwxc~1{Y1MP>bksWy|jTn9R-f>fV`XF(H{4?MJ`F64T z!Izt27c&ttlTCN^{Pt)6Xgn7MXG`W8vNz-f`)PSVcNQVs+K2(rgt~Bt2M3dI5U&c@ z?#~*ENkvkqY+Xar+E+WOkzNJnJZ4VoNA)K2;jA0x8qN6b<~?=p?R4vdhfs$P10V3J zkz16Qg7$K=-_PC@T!1D~&ajf-1Dvq}N-C?3Q=l9{-=2KeeYm=%O)f^bNi6?p;xFJeeX1Ik|Jf5BLD<`Bcx=e4 zJ#n^{*L6s8m;>j=-3;}?;!p#!TcA*Z=&~(*PKyvySxV)RTeSfHzCMOmP1hK!TzdfF z5xq_fM$^gYyG`6DaL;kvYEg+^9h=Jjjag=Cv}|#j^iJ2`H#ghY@dhbXC!fL zt27j$x+Ft_SEZ{N5y=I$ixZF9csfe~6Raf8+EvAAh3k(}v_2g=5CVPP%BIKDvr0&R zCft-yNa_jUB&e-LP&BjNTCLH27pkKIwqS;x`~?)$BEX}bCzn$zu@qaDv;8{s8S=r4 zq|1ISZsP*g8cKZRk_WV-d9|6}ze{sS`Ek&XEYWK(#%Da_TK!mle<85dC>6MdSwH!N z{~wBjIcPTWxekQ8kb<7dIvA@Ij!}6^MZoPh>{~&OH&W;2+~f4)w{T3O8T9>3P{N&|ji zf5E*qBE?v^w^_Y1`1c_K`pQ8b%O_x$NX(2H(_dl?hhBFYllUGVw_nGk$I97z58;6_ zvIfjLRjZY)5JAL`V9z_~BhD-R(MQiLLjupNhjToK)jC-(&idAXs~;GJV6rI`9-tS| zb1BMGpP_`$TQR^R7n^Z1d_s~K5yjU_YSZPh#zN6-_-ui_HL|f+TF*6BGsG7(>Jr6` zVSo|oqK^0X0X=bdlgUn7R!xfEum9&CdcRH|={0f<9$kFXV;tOB`0mVARwTiXeLoKnFR3<|XHXIxG`G;Ab$jXgZGL zZm|- zy*lnIXDmreX1U>7R-h>xu7bd@d)`++F`lF=dZP!>sRZ*;AD8i1s8*fKhv|L&rBd~a zXn&q$$G`rCL*IZdQp}?e-8I22!3P?~Xgi)0biB2H1dr5~(QS5$+0}XaS8c@0Ekmmr z9G!(ZQorp!`{&OR_bPl|)W2g~ILvBKQ`EMS`=$*rzg4GnoTNc==^g`3=Sc)>F3u`5dkXN6D_2uD{i5XGY4?7W)=66*_0iv1GGNMlkJBR+7{#J(R-$q@6q z-X!190*)A9P_3m(*Ltjd5e-$11-m}UOHJUD#GZfMW&Flbsfuv>P0uv>sPd zqkN11aymO$%GrKq)ky=K`NZ<~Az z%rEHc?1=xREOw0?*HXOlho~{7QqhIslPz&LB)N}0x)CEXg@#AlyeZy-^=*Qbtde2E z`|~9Rd0NffL_J)|o}725Vv(Rk|2-qVm|ylP-w$-UgP~@4D+W0Iwv@?F7~!6B*&rF@ z53bH~^}fJ^hVrH&f%)8mJ|;EOf*adzaR+28KAZSsB1)P_+IKI^E1-wU&jkw7Dj|{i zU1%$v`J0+=+_r(rt?@1_zn$Zh^v&f!ndW~BC$+4!!zz}_~N!(#Xj3cbuE z#~{ho*#=I~aUNgE6vQlcm12pQ_g#_WD_NEx{9W8?e1&;D2e-${Zi+niOdKvm zpai+mjnprZY4q?uHQY9m58X62Qs-ReeBzJ|%+ev`C)@z%i3B}wwx<>K$M-Cb?get4 z+aTLGTq!QJIEHDaxk-uxPLh}zx5)|ZlvesO!J9%GrQK zJSdiGCxB6mRkvQy6_e8NaC`7+IZPRiSZbrFfuBdQs)&46HU1ylU*>}-+^H_-f7QxVn!Qtd3QI(7&I!bl`H+lnLn@` zg30&A0}LqSjP!UeQmCdnq3hC|w)&*~D=qaXTTMLPZ)7k%#dg!gpUW^4CVfz5Bk#J? zr=$~tj>@CIbztv~E~W+A+8XHGTvsUaYBoW#&tlZN>tJv*Xcr_AQWYm|M2Gszwc}Ck zd{EoQq7fE%grFW?Y*LRJMZCz3l5380Y%FUR2W`5FmBiVjzA}RjB-+=x$%JS6LRXVO zLsPERGZDdT^NsN?cZ41COjtWlaw!Vz3V~VaU@9V8lWU+7-_|eiPcF&g^32DW{jtl~ z1Fei5&fz$g4EbGrXyq;<{LR{bVi*X4K|;4PCjnFaV${6+W#0@&DR5974?8l+QkPQM zh>oc)E{iPxoH$VaX+~i5ghTBU76QvWq^p9U9mXnI7u4aH%B<=9hEBaa<57zo7%68^ zm%?Ho*&*mnh?_k`OYG4QQ*Gg96X2!>iyAhviCQqKLe87j^X>@$p?n?QF#YS#{LOTx>a7EyEBq<%$Nxt7Ay; zNW&%1={AOeBrY))T^if-7UVQBBk+yQt1~90yi6DC%%C2A4YY;Ak?Z6$Y9r@VdM=7uaibPMPJdJ*^TZ_&ZcT49VP3pLm;Je|Xf!Ba_K zGxjqC+`$5_P>QBp#(3OzL9_YfGQv2*s*gPhrALIqSpQsTS zOz`XKpWH8FP6kY8Cec6_tp}4l1D!Tx3tRJej{eOusI;$#<@3p z-t=0#AKKpslRVb#{KI6EEw9Z1HrHKUqDJrH?O0BhXT{aTF9}}pV9hJ=yDybzfd11{-+6DJsb9n_ zq_K=)NBrcIQNmcnGB%B7K3dl_VfAI?4x?rhmh;-$qIaly$Bk$F0gCuaYM_-=gS)xV zygCiu-0Z8PC+rmo2jLsu2NR?%uZM)8$=WuUY=Ygn(&H<#P8T!2VUGQT)O**;l*H^R zj%ss!%&Z~R21TA9hwzg!wh^qNy*T(DBi`9HmYWx5fajyz+q8;NED^$Yt)JLEw((i6 zN?99eFrDag+zc_zd$^NHhiuJtK#TP})zau;xGFR&^;||++l}6bOt3UYdCcsW#^I3Q z-V}s=LwbAI?C-IF=Bxh0S8dv-L+5}`pR2Qm?Rul}wPx^TF!ZJ{(@FOTd?b6F(6)RZ z!Mfe{bm1ezAx`YZPF zjMJ^?tbD)cM+Cbb=~cclyekONNk`KdFR0ThRaJb{&#N)-Z^2~42hSynY*E6{cc==% z>qG0KgrC14k+yStF`I5moDZv%C!Z{=nm9JKF4IVd)P7C#A!7ga3D16*BS<-h>_^)j zHSbQo&19kvXNpUf&3vtWk_KX8e_mWaSK~Mmd(PQ!QU|n>nV0D_z!%J8`M`7S3~g|p zfVvylRd`BN`7e0Fv&evTw+=xEj=^h#|CeM@C$(SVkvT4Q&?oaQgX1tmg&ixO}_3A7?OVggpd*;|V33gy79yL#snK`{}2P(GZMYD5-iX~cqgsd$25A~#J9?4oRYi6j2 z42AGrCN)8la;HBccUlFlXOrFiUZP5=NslmU)~j{Hf`s~GDX4@k^VZ$=n}}fcg>_<2b9a;Fx)WVX!OD-D3A^kY_pIsku?NBcpHeyQ|h~=pZ+K605#m zk;J_S_L9UQRXt|)Me6ziwyOpcquS21E$_%abz4bINIlS5WbGKq} zFL#G?;?h&(J=HCVd+i%dfV#qm8p*CqbKY$x_LE3NH9HrFQ)Vp z&~IBn&Ktq*~s{fg+LI^gY zBA78*d@~J0hphL!U7E*uMQ z{Cu#F)%3)7SomDevQg6->(V5RJ*Y!66{Wg&lG$yPczE_Nv|ZkWK&4z$wkP~*T0MXcEnt0%QoxP#-lfAv=x|>M&dv!NVa;kd z-UVNQmFwul-Y_)jeaWw^GEcf3uTJ=E6)fY~oiWV>Rb#cz2&v^ zpH#%U3KYI?EEt}KCKR^84%m-{^!_d7;Lq<*bY-ifct|P6zN>P}zM22i0~)jcBT)^y z&Bkt(EIVoTAi}*Y+N{Euo<|dk6KGRlSKQ79shGEc5(*y0#wtctc5O9pf#N!42OM@E z4o54z*K+Jx2UCkBu0hsf2hmVfV_22|>3?|4&x@*vu+Fe{#gMo>x;5rQ5y zWi~>4o#yzGv?wo`qmgIYo4esge7)C(KjUpnQ9+u-a8bH|(b`~7N&KyBz%*)P|KKI- zG0N~e5s=-6atj}%;`!iNDl>Ps8hFAG0zaa1)eqB(6mUGL~ zI;Rok{dkbnl?zJ$$ZSAcRB~MWtrJbp(y-Grf?rcuE@(8foi}289Tt8+JMUaP1`UTS zU!kQR5#%mgoN8L5C_)fHI%e(MSULP+YB}G>=UlbyUj+VK3*aRW4)U%a>y!NO{!Xv> z^YB0hksMwu@Hg;uai6M2!&M#BheU!7j32{ktI&3>*!w)A8;D^ZB-mWr(H;Odjn#PP zL>HUNct=VW{u*G7h(G9;aM^}Of_40K^!Z~Juyf~@q!mJ~B(+?l zPVC#qlw{5?4rsG`I+40C%oYgmQQ-#I6AwRu=ZcH1jv%SK^78K~>B(&EHS~f1koy4kb*_+= zaYH3As-IOql358`rvhUp!VL~za}rMn(H-~Ury&$quPH)Z(>!shZg?RmhLayR+vsKkVlqcn^v93duasII#V{}e71grKuxf5bbjCBfFq5FIP7JF<|`J97+w#_vck zJHtiXg-3C1TgV?WlbzQv!H~wS1{4!JOfZ6s9<@xGwBG$}QuexZWFieF+{*!@+#vqf zG8bDR-Ka3L-{`ZP_mmNe{TTiR{u5to#>a0}9ukqf6MR#cQ zZ!e}YRiD9@T1Wbr^9VKlUsDeKpb3^@L1X~E6^dTQyLE_Y)Qnpn0RD+f)r{zN?3)(x zeW}HJc;>uT8Ql{F7mzG zU5*W;OHQz3f$Ag%)(b`0$|I>TJ0&w598y#m$9VODsltcfEG0*?nXRVms=D6|c>ucp zvoQ=C(!{qK6vmEBN5+|<Bvk1GbMhnof2oZ)h3+D?e#PWVj~7}F#Arm&UM%Gtd^G-zCWytJqLR(mqT^H=ZX zld843WDq11D#jX>5JB8`;47yF2jL7>IWn8KmI!Xrx7j zL-Kf#i$FV0at66(Dm?9Euw6iyTrB0<2moeK$L8#nKSou)EU_B&0n8}#KNHclN>0@j zs{c7vOB>(D02gb@wzot|*UQB8MDTUdB2%1G0!j$_(@R zADzR!VknHWZ`nnrlej7yUzZ-!zR3QhO`G5Zd|qRhYKm9To4MD&^EU?9kas$HkNE*0{;GW687X$8X|PmX_S zRV212o<&h_5&O7yvh%QVD3l-nNgDHcjOBf%VaFH2)iVg1=ya!SQfU}v`r=x^=(|E; zlJlZ(SRbmB9)T14Xh~={x$I8umuewpx$d8oUZ+7FQCr?xv{Ihr)`twF7g)YB0Acha zQX(Y2Y4ZooCu)Uh0m1_1bIQ$Q`h{p})_vN0Q?W5`RQv%Sz~^0^c9vzvKK)CXO;qM> zW(@#8^Z;2r>ZAjO$nQvm^R1X04T0yraxM=*{FR!38z<1tGeS`|DfT0k&1UukE#_x=}~tn6Fm+Ir0cbl_wXNN zn(i9E&ZCAIt=8#Ym%yz>u65cQu+3p<6soY%TR}|;{SypRVlc3nS0TFTku+=Qm{&o% zyt{XL$qs6o5L;8jO-mGs;%rrgOj+lOjI8pCTfBw^#1!&EEKYrp%7rbBI(g-I0(lOos z{wz*-E-!bVM}r@3^X-TA{hS%bPM|(+<<9qKJsppv@bp`)4_5|k{2pxh|EPoMlfBJ@ z=AQ-CN4s2d&q^ap1*MZW3f5U>lCYrqefWU zaB-}+pjo}N4ytPxJg|H?%>6QJ0fb?!qs1vGoMm+}IVg+RSE()OOE`~2*YcB^-RCYl z6yFSjLfiqXGSB?S`4yiGd$EfDLun+}l$H43(2a!vV*IdOMT26lN_~ILh+)ktvDjFy zPx+$rzwjzWp8wePO2ZDdc@!B1csDkhgG+&5i7Tn`q?+nnl(d-DixOJC9|^2CG+zV0 z`K6d_{RlkY+-a(Z?BhM=e8EB!S+ee0%F+FLhMk{`lplvb-n);W!Q!jU>=AqF2q*Ul zR9c_ESwmTgBkQ%1awX@fTUs5XE6Oj|GGk$Nr!o&eQODjo3JtiO7I`bl170u>X;U;g zh1PO+adqz#)k>(mA7~X~!_$78t4d)@R_MD$Y;ppEgs^Ye452~qxRjeeBvPJD30z(2 zw%Uzn&I4rCmv1xM5(8ux;a7%*y-MC0`tk(fp(=w#exvw{(TDJ^xRd^OW?bBNGYYrb zr==vYwf`bXS}2U%UN==RWKYVuwq)Bw|Cc$b$!&{~aZlLaOHL?H$hKxaQ5h`rZMj;_ zLAoGtNJt(!yfx&T1NZqOM| zp*}EB<#0s1mPh@$eIPh0v_{|fUW>i@!peJ-tA$cu6Y`0sPrNG*TPA<#1MYP1zi5`= zO03yo1P(y`W_)gI+jQtz7T-%kB~S*-|AkRo-3{d{ZFe5CtIz#=2zbvVxG2Q z6-X-=uzZHpXU54=*Ruk`Bz4+k-t-NCMJ&ADd7qJMyaqqeKQ+T|F0{MrvAM*KK+Rlp z6H!VkX8ydKZB_;7ECH~U(E7r@too-R3k}1#dy)28$I8#FRC#y0C0>}B4I+&ai_f8` z8=I5gw1RT+>W7gsQgxF*PEd`|aT=yU^QjjCY4cMcrW? zjk>rDkZC#BTK|8T8aIB&ga1#aMhFUyFSRff>W(5nEsX}dap{>;zaiV<@Cd%8e<%R~ z&AEfBDNH3H+KD?ya;{qpO158^g0demI%Jg)imnio>im11^XrVH3+w>a%rmBUh5IthUnMV&>4J&Zed~1YK<+&;DEnIBVYD|g6Y%JsQIyt1n5f}N4 zry!D4bE)L$$IX(V>S5Z#@)4n{;zKYY<$x~KBE5KXeZ$eTL(|s{Sfv0zha9yu)|v-t z9YMe*bJvnB{k;QFo_(tPhQ-a;aqgLgoLAGyS09U-4%0q%*f5-*&w|k}xX*q{9TEUf zTu_|HUq8j+ea%|qvq@zoP^Ttg)QM0gIy69xuy6$>=jLM(21gnFA#%1)GiYTdzUZ^v zgwNCFzXoM6u3Ac682)CDJlc&XHI6uv2ao7T{=GJ(Xtp(ZA=aDD!bl}R5RBlum8fG; zp)1S-ivV}vSpS}(k{*Ah-wR~spoICx7}a@!G{H#O*2fNGQutEi|KoG|USi5rR*1q9 zPq-JcWy$Z9lu;P*wetG#N zNIrD~80Ifma+5dNE;_XC-&3E-(I)B0y~`tnh=|^YaKlqW{~5sVIn)4`FLmKL<`3)5 zjpYV&cp}>o{Pps9|6P^{n~2)EHRkSBqOJB2JKImn-F^l5-TiPhTIJKCZ8CiZKB(Ut z^t3$2;GNg+_|i9A0yNliiF!bD97@&7keydhaK6FHL-aWdkGGqZil+yM=c{;crBEqu zNUR3%=dUv9>dnWC*nESAj$*qP*0Y~$ONq8vg*!WYtx_b~;t#hylAe}tO9>>tQ=TSj z$Mt|M+3-*6Ugk?A7@KrCL|=`4A?Cg!JNJ+li`50ucQ<)~*LlFd=ex+!Trw6kp2O)} z=st2KQv10(3z2}GD+{5^WKfxtD`K?XrI6kIG%WbO@>rqWijVKd?D&~JgAgMp2RElyVpZuaA_ezf$`FHAZ7z?#;Ifb zHGk>&m^=vu9d}x2^Id9`>t;>lh-plZ=Vu$kIuI{spnC@QsLSOpO>UFc z4^PgovwhGX+WOD<09wEfnt3Jp#rlfhBoKsrK6=iBmoi`Wg?4A+$^NBi`AOCea?{VT zB`BPl2cdJ>g)du;4FUONTdqPTRKwhaHIrLD-}eXmZFqavwiT4*%F&*NWij>$y##u1 zvPpngn9KEzHbCa95n`~PxdbW-vqBP-B!w8dyJ=9~KeRGDrvX`l>CLhJ%Q)bJ^Ur+fJpCtcTd_S@3tXyvfEy zScrSf$M-;O*c#F$J+~>~px+&n%mmHD-`^TcY#>5PSEhET5;wIl zw}dF)J2maRZxmkEIOwc@R zx=zd0*qHzIe8K(5Ec-)EX)s0}_}^1*XXk{Q?v3Z6ZJ2<5UY8fxWxX(MrhL@<*W9NE zHvZ=KddtgVHXWrNU=%QPPe=iVz>ui(OxcqIRY1=7P+--!}{COLr%Msp`Jb zTpboPx2u@90w~^-2v{(<^F_~dvYb4Idz_X3{q}yN4B%0L&9XG)?c)nLc~+gpSYf~i z{JEj$ZBv(Q0;ls{I@T^4VCZ^*wEva-O0yK6itcSw5f**fq@(Jl6NoWbj5mnRX2ywXTUtiX^qu(BP%VKI&&M{XzVGfP2CKk0<`>2>~s-=}jny+>wm0UHhG_l*JY zKKIrsHfVyEj6T-Z{A+g3hDY0wY6Ry$(V9)tq&pB!hfc28!-j zhMyyZCD?jO#=Qj^N2i-sj)mu#pK8-atu#!F5U{3UyD~Y6#oMum6{AJCDeH{x0{&Na#$vVEpYNC8yw=1Xmk~ zAA#myvt7q)QvsgFATha*(Dl6`1oe+E!4?_Ph6)1Ztu5MmUwlGfq0oKy{Dq`PQ%cuV zjRXz7pxN&S&U55@Ae zCfwuX6Yt((d2DpqWg0p2eHDKMGewfCdOmF;Za7$QdG_!-QWLXp7ip z{XVv-#P20aD=PNWT))mv)jLqPAjd;<+KRz=M}GV5OK>yd-Zk;#Q)e14uL+CW5A|ct z>9{YnikU9zJ)*+KS(`H^(sl>uAR$!?Z&#P1BuEls;BtArlQM=~uayH7wPqXA+o+gUVp#9O-7#RoKd%b2K&+Qk8q(m#tp2KHTY16wF)zGoJ%4mtHw|$Fi zX~k{>wYCa9iCyNf*IrLH@AHTZ7#6ht-qJoCPI${6MRTK4S`nbUO$6E7X4VCi{R9r8 z;DSfVgtSzN_O)%y$NHRDUsrT2aoJgOg7FQVGn##7A17f!Q`|OFb_C7?{!e*8o43a) zHzfjuD-mDM>zK>#S-{r&(G~{E-otf656*F^u=NOLtni%Q!&P(Cp_nvA9t3D-25Mtr zn}$%ilWkMIc9y`RLmCMr^4>Pu%YU0sk{0?|j6Hc2IUTXFSpzx*_Fl4^-QJRb7qu1$ zptR6;p{AWiwz#(f@2ybS+*(}&-$3ShlM?V z;ojM+!@$)?^xo{5Tpr)S)rRENN`z!`Vua|l)VU*9Q-~z_j2}3CwgPy(_xTt>U%%e- z?ou^?%`{uT@hO>n%*@Oi9AOO;k7QO ztSlg($(SD3h`H8`&2aF{vSO&*+)FHZwR>>FL%7^01qX(bbpy&(&=isg2)cgjH|YgS z_qgRv`YiywIO44|kot0^mX@~!lTeg#Jm}l#_Y)|ZZrb~QVy0D69$w(Epfn=e|@SMS9kBCBT8l&_m`~z|_U2Z{hnP0Tz zjD3j#Nj6uKpjj*{v1qNFh|O1UtQ!TB5OFSWucX&Rc6-xJ8? zZSH~-c~#6zzZ8c{l7Ii%_}&5agQ~Xv0nKj1zo1uqSE`wo$V(({yfDS{Y*z65w0Hxs z-NPRvrhM5`h&4bqBY$N;+CpG$;BE6SRDzT){ zqZ!l;aO&%fK&>(j*x_Zf_U(xO_53k+#MLB$nN6q4#Q2wP5KlrCxrP+5L1rW1YyOIr z(>-CNB#@OBzqtoSp(5VLAk?trpsvAWiLso@i;qXCq!6cR4yW8mW&cw&vcjfC!n+KU zJ7=HM!vHCiprOdGvLXhU0pf30lmUSk3ZEU()cd%#D8o#{+EFMX@nY?#A`|vstDf>x z*pW*4@tQ)ES0+vU*_y1diIdmm&IFt%4-rO_#e7cXf4kG8v?wdYs&~26h)<~61t5UAh5mO7~uYN)K2hFZq z?QPp1ew+yMx;jr(hg?nT{Gt=D**;e$%z8-exgM=V^agE-Q+KY1E4p}MNZEXIHw3Dw z3ij5Bq5FQaJVeh&_8|r3t9O2V39wJ_*T8-IXE1n@HOFR?tzIdL&WKhFnF{K?l0baC zG3%8|3nATEMN%LVLP(S*!I@9X3Xgz?UqmTWiVKKP*NryUkhPEnye%X)SkO}d!f0?3 zSo1L-IrB#-!v@`p(P4?S^(Lk(4Tcgh__9rYTA2@6iEr{_w0J+E0;1Ky_|AUAt=D$H zXu&CqE<;!27zTE|wL1C_8NMbUbW;lf*XjwuWkQT4%N7M^SUzXfr67sIFGa@5G$D<3 z*-*&JoO)W^6+ijP?6oVfv7Axch35_2aiGOWcrTh+W(}%&1G)u=c8$*sxw8bQhQAkpE=+Jtu@OxkR+u){@XrBi-}q zz6syQu@A|p^osQoB)SCh$nv?iD!P_bEyX8LguacKi2Q+!^+N^_)jivKn!Iv)vHnYV zQYxoRLo+E~@mF5Nv1~?f7Ea7c%S!;hHP-3Rxmxlkxc*!O2Zvqy%X@yQ*&$}r9vqyb2 zBAJqhfBxdRE>U+BU9y$GBU&+OxN&o=vPQr|c`^Mb6FNi{X(lH6XenGQ7SBi(D-UFq zvcLNs*=6Rs`6D)HgFm%Ah_aX*&w`|psg ztz7@eNL17nd|ZVbb{{n!o|4U)sjaEgD2=fOV+=FjhjAKnpJ64xhg)|$aPsseTi5Qb zYyZQ--dn$`P4>k=xS5l{d100GNZh91b>{~QKk~0F6J3pAwxY9xp2x*QXpB|GE?Ol+ z;l><#0_zxORHfv*tiYvr+T()_=luiVitgiHYo`;#2nz zxA-Dm?HkCvm}as5vz3cF4ecTebzC%?xhW5NTup|x*B%Tnb0p?ief)lX@Lk*9@a_js zwu>ZCKmM`m@1m9ezJoAwU)b&eMy&;(pfxi8!2B^P}NsC>FdA)Y2KIV;p%un`0=t%vTFYWGMU)TUTT~(*FaNW$6+EF zbj&`u)$Vt^f4o|QG)CJyP~&4;nceY%aO2NImyR;}{o_U?#!!XWiCTF8KD2Qp8B0%s z)GbonENKwwk;B;uNS-7V38^eQm^X{rFGWWzTqtNtElokjMJ? zs)YkA-rc&y4b(!k^*mAFs3@LzJ)+?+r!&Q3gvy_oT*`ASkORhTT*mPYN+R{EpV=Xlfr0r(0!=w1qff#A`;Wk8L=|ZVHu zfM0ap11=3PA(jZ3AUmdu4)acPd-nFT@Fkp4@WQ}}Qc6Wq@s=&B z#6Fi`cWnFRO}oHpl-MO!%|p&wI(Jm#MRa3^0bIfkc1~Zfg7){mLX%Bd!9~cx4HDDe zz0>KGm09bk921Jf78X&{7E%5#Tc16vA$Nyocf&^agK3&NhIJ$b{pKa*2pPTw8gfTt zQ4&+Uu=;b{xUR7DeHCNBtM;Mv(d~}g7Yu8spG*T{@cr+fK_PQx zaH;h;@3j1JZ^tOJErY%|ERGW^W>mxQkB$$h9(jE)Gi~vub^BQ{sU(fi7I(xE#pW0 z29tUpv@?#iRn19NBesA=GQ)SOr234%G=?}(%r3X^35 z<}cCoj0{YS8N4tl`4J(D#>ostYNuyqBfm|};^c@@auUUu^KNTuv>tvncJBvAOe^=> z9Z%6;FsP!k5DW1>gFpQ?Tuv;BoQ}%_$|1|qshZir+Gtdeg^w=)>3p-L4d~*Ys>+8l z1}?LQ11wi7PXjECy^G5^xdbmuMK*4lbS5z3hS!>2^T+FV6Ea_Q;$Gk?3=@8=l<$5{ z{}B_h)RP0Bu<@#e!@#3dwrJ737OHHifDRnuf}cRk;D|btXO<|9(XU-5>YMvp8u-zTbVb%5?YQK^jjP`F;q4uv=SEB#} zJOyk9lgxl8BMRJ4j4>;n3$;JVpgsy*@mswf^$E=7Tt2A%HPnY-aFaoO1Bt%|wSP$3 zFiT6b>lSsGWs|l0^Zu9oe6ZREV~0y=G4{fgC`(IzrahoGM3nM+ z4^{`_>>qnp&%*l2FvhB?>%_%_hqA*}=}<~NS_Y!x@dAd?Q))JAZfALHo~MR79Gco{ z;k}Q(j!yAX&UiiW;q*1jga24HYL1CvWi(B(YlykauLLK#l^~mb=)q#mN>fpVhTH;~ zkwx3fkaMjDIZqZRmvg1fflvDY@;ZJ=oM_HVb*SHD!q;q_$}IR)`Geal8RYyfH)_1H zN*wDK46L^YBV~3ANs-)WGIq3kw8_}fA0}fuX#QH%ajOO^&7hy**@jW!L;&BWNoUa} zo^H4dYpd}WAF=T@LgNb3I{YQlvE%19>6os>UQX2UY-KeW1DGoIx-1u{|Il{%QmpG{ zBbPAR&OlQYS;)l$H~JZNhA}S4B~SxDlztw2H}IsVvQWR*U=jkyko;80PqoO`b5q@A z3_sOfo@;WdBbRmakW1yf`2<(wVyda-Q!A_I@%UGhnXZ!j!TG!R{&76!@&{n?xkwwA zYfbZ*TLj@Tm%p3kF;}lAz+$rU_ zu#?*bo}H>2^AKhtw+EbfwIi$!l9JIN_dYruVQhClc<{4ie7tUGk$WVAhDKxGrV6=J z*zQXgDdt|-wCZ4%;_kbe^X+4`sc@RQw74)vsZJT3lAfEQ9+y6HT*?Sl_ES>dK3PND z4=||zXq-4g3@%GoKGAdku{YUR78nVCAi0yU_Q2feKMh-i-i?VPPv?mv9|RABEQy1W z&?5OrGjZfyFq{b@apby3BF=#)M;!SDaY^le;6Kw~6um7q7)2P*u?kgl8jPZ#(o%IX z^BpMjI-;~-&rpKapcFd4h+X7iP@7mas}$B!#Tv8LLPi-6kcIt)WEVN=Dvodi#wmk= zv!lk*KX@~i`X6>ivPkiOHNt-wZJ=tiSinIE z1Bu6zw+KDUxN$nx{H_%)xtf%0(OYHSTLMuOBxN(@ToVicoRU9DD)*G+=)35pQXs;%SB4mfjSv zE@_?fR*daDDzEd?%b%j_tn55HK>Z;`8j!^Zti%kEjUL*0c>vb%64+VNJG=qJr)wCF zPIWo-XWDF?N3{WWm_CftRb2WAPFHeiAU1T@WaNp9I^9Jf!-2$J6bjMff7|L%$Zni) zLm?MA9zZf0##c?ZMlu*|;HN_FdxG>A-bj{Upwv3GE=y~m3~HR`dn(V{Yb<@-8#sd@ z+y+_rAAOeANEu;500}$Ne|uv^TW_Sq_cEGlyDlmd|0F9&lz zC?qoKop;~a7QF2}`W9QgZu);Yo8s;pJTN4IEZ6CDtJ=`9~2T@81LhTs! zGc!u2mz7SPikXAnz?Vrdm(c^oBDRO_3f)P6$>-7%2=>q=G^vRGgY*VbT8r)&pz`Et zh0|x?y@NgAOK_wFr_U@4U3zd|R zNjov>N#l!35Lj{0zz(j2y`8xPt_}=dJVmH(uQX?ZXh#!E1;p(WED)#LFzSh&@_akz zjUIEJ{*c4np0=QD0r`?7292p=ueGFE@cTR84}VXfnSFyfw@$Av?6hL6*J;dydOgnF zXP`iy2#f}pjh|XN5r$fakKfo|&=b@M3$u%0{nD%RafA*~I9Xg>X2-EHXaKYq)&P9Q zXpqlPoen=CpE!7k6EpxS3&d$~AFKfQWSbQLAFL=MAHCGOCL?lre17Q^%yeo{y-7tC z=a~_wKg?OI$S~^i^1vPOcT4n{p2); zxW-mgR6O=d@2jv}>3x0qmEJd|X#>W$s0R5Cp9kxFZ7t`b@Xh7bV&qGkjWEhu1I77s zMHLIvxBa&oym$*sYrblUeYC+~fIQ^;rUrh5+N=uGo182{zWYIs#y-(Uvr}xieY)6N zEV*4gtd?A@7Ig_=#R2tYZ2DZfq)B})*r9>Cj1dhu-a6=_ZQ45Mvec$^(B)-*1iI{Q z#yXfMM_tY}Z5{Y^n?HYkbv12QQ}fvR0t)TUohvhhLl69>*;o)6PylRtJBgb!BQs}6 z+PKu5jO3A)nyH^*KKG{h2HOY zW51@E*Zi(>YLnle3<`f4d&xW6B-v0h!k8FG$p|w_qzp8n*qL10YOSGtF>EtsE)uHO(De;}YLNe%$iG1c!l5mSm`9v^O4dYW zVN0s~-K-12W0?FMZc)P)%zk&)!SZgUr7j`+@#*68!g`F!_h8T3S7o_kw1VVXR4FOaeJjj?q7L+F%o3Yms#`{n_H%tISZZ>Hzuw3NO7jEj`e8&XdUYj zY<3m*>}s2w&}Oi7uevE>_Rv0Jo3At?rdHbc>Ffm~o9r;owAuLmM{B%iSH8mv)XPm{ z-i3zluhTTONnP3UCUs*yyl0Jt9^P}c6@tR}cHHru%-os)*YDZAtpVG!Y%TxaJmO^= zw%L}Kt>-O^rg}M9HHG>(fqd)btwT}$aKgU|Ma?H;-YZ0-sszC!ClARQm4qTdqTby! z^k>;sSr({$RNOTH(3ywTLey)z27Xp^IEy}#ZK*0%5LF5F+61bXnU!#lhIh2pqh1Fs zdvw-%bnPnf!qVGU!!?y3)8X2x#$L)RQE!zID%QY%m0WwtKmkk-Vc&mj!h06_2)E%6 zZ&}oP^dphKcbNsUy{oK|m2g=frzgv0z5lRiyN`o4m#LO6F`Eq7=iH|&=Uk4uj0q8} z(-99T-V6}UK+cP;7rod<4}%)7>Pm@k5A`W(YNuUa-oLWSb?)4UzPg_Se|avQ`tpU@ z_Cr-cP6@#&3G2fOOFLlZ;OzTX2wr{OwK97sZX!T?qJmN!k6+tGewLQj9Ps@IUK z6Wb;CEPFRP;>%wT-Y>Y;^}>)1(VpJcROx$|SVO3vv(05jPC7hY-f8TZQ=?XTWmLH@ z`pWa9OHMW{CF8BMSIcdE0o(GiJAZ4No_FJ?hcB7d>xX;4a{qYpt5@F082S8(nyZ&K zPk#gT%doI}B&SFP{|r&(>{y1y5~N>)MrTr?eziIySamdIBxYTmN{jj}W6W;ig6!7w^FrN(}_1$Hb}gFt!xS zt73j$j6p^*cW@{6NC}C-k?xGYuJ&Hd91X=v$w<54YGh!7dLlm8(y!n`|}4mt%|;q)bYD& zEsKKJuoc`HO`d<&+R}2Y&p0)u4zC%7%ikhz?2#rv%m)!t}a?L=PsH+Rcr=Grh0A@6bZ2}4Qh zd)oG;j5uLgEVOMi#cYZIGWwxWC^VFJY!Y=F6LRuH$sey^nr0bqod>xFlS+rf-}A_G zHr~6Kq!*X0eR#d!R|D%kU4^q)J@$j(^`G91_t#7+tTu$X1BFpo2bMlyeMQkcKg+#R zKx|JdoH0c?vS?ySVS#c);q>Vs17g~Sg_4O+ChZ_$%Z?t?1T0oXu0gSAz%X);GOPVTiiP<@7PPV1ccPv|w_yJ-3!h6-Aus?-^HevU9KP?J(Xy`I>tLRS@8axER^`f%8wx*aeP}Ksv^jr(r~}~pd1Tdpw7ZGC zO2BZ(CCE`eeA@64?lzbmW*%WO6j1?+beLBp6+zQJ&~;T9zpMaXk?j|)xZsGpD0;H0 z8Yn#Cg1<%U$aO5HP9l_|U=K=_3VdGv(}XEb1sR7ez%ePh?WE;s0QQOxkn2JG z<0P;73<$t3sf-XSg$FbgHQ#NW8t^yaMT9Ka#33_aw9$xS7Vvl52TWv83@k1x!D;ij z=PY1x9`F`EXMsG^bMv@G$)r$lTl#o+f>D?E`SEmwx9?LOMz@}_`S`h+_Fs*23TV9{ zX6}^(-z>PO`DV1mZecFDxQ?Rj^|U?80DT5U!y;o(CX*nPF_TC8Yv6|x!?+7wFd?=4 zT~6%&A~O;SWoR(6j5bmqMX_K@u_{_d|KlyV-lB^DND*)RVviSY;0`{s!9tPF>_`=N zJb?FiMK6Qm%bG0?nC~`-m>+~9oET8$adR^!UQ^ns({isBomYCl`>3v`z%5+12{Du7RhK}O_g4OS+N;&Yh>9p zmc)D~k(DCYDW77L`n&F=0Yceo`q{ z`0;rIZM*+F@t3&=Cyz{w0iu4)bHYGBZZRUUOZa$bU_8L9%_Xc@{#qz>J{855u^%2=&I z#u_<`A~x3YTpYfr?nPypR4R$`5sNRj(^MUf-$5EDI;{#bEhh$5+H4f7KoIv$g|3o9aiajsrR);bqIyA-5JskPuj4LRbU5Bq=rA9}0LAy@3TaJ} z&;dfH<5LBC1Bpdoe8=PSZFW39lwm{;`Xe2>UeR|6uvm;tnKeIe67ja~{`$Wzc~d zs}3Zr7jWA;U%!BFb%hFwCe)g7J0cW1WiGT#wFEjKDRf=zz=K+y(9OlFMYsddEJ}3a z=YWcCAkWab1zAf;jl$8=c=BEWT3xdlXC4Mb3cjC_|@sbWDJ_mY2BB)N-j%o#Jledo2 zQ!MDwY$X<_No}|qbq1;~PiFuvJE^}$AAypT+@R>xIEOWW3`*(%OtwT~nvoHujg=U| zBozn809Et2s*7MejTD}-2}a8qoAe?-U`f@Lx+-qQE?!oTc}@haSg~up8VbSBL`wYYn`!2ps~F1B(I!8f-CH_ElD6sjS2pe#AZ31A)o&36btJdA`U!!vJW>^Pk)^W^nwRER#sK#oYh7HlX$BBQb#N^3x-KPZHr-&f45{949HS2VTQR-y8weo@!<=n1k|FqySaHQ#2p%F zW&sre08G5knh7v)pDT8d@2HSO3DPG)XW8Rf}|9Y!L(4SRw(t-0-BbT z!V?0eY@)Rw)Z%1hq#Nerr5D(PM?=^KLn)``la~uPf-_JE>lz@jR+7I!7%y)mjq(48 zvYWpUcRSUcMIAtu90g%f& zHOK(VyD5VchYy$f|1z>u)N}%t5;SF@rVZicACpDY2E6JJh;(Oo&M5>+G;&zQ8X z9F9irplaGyjn;CSrwzshnEQEb6{yR8kqp*((nj$wbrCuO!gR#CPa2MaVp1_WSiLHZRFx5jZesORC8btXs8x$}6#S3Uy5pT8b1*or z&;B;aW<4B)0HQlqLN{?-(iIltg2g}AK!2MJj7-T$HaC!{A`O)E=oz%J+uHu?U+=$u z<9cYTy73qV*aSy*twxR;o{}*nJ8fK23ISIT7_{;2<@9MO5UB#lhBO_t7oU%3W zL+RTr3x=9C6@o*c?JngcC1;LEOwZu^L~tl{=Z>Eox1t&a12S}&27aV96+Y9$t!fN$ z;ot*dBmx&6_XL(dTJDFJK;Qz3;(e4Dn{Kule|R!ML!B}teWWm%kZTqWB57;k9?|gE4APFfvhedwlSTLxEx#A6Dm~MZ-F2=yIKhNrhdf zE{qHf8=#RAv71Oll~vrdVJZvO;Vc273P1;ql$Kcns(vePpn(b)9yAFfo>jxvX`p(w z8VxfU^jSm$SZ1V_EmC2H3!8YuZ~#M-RO{kxnF_qg+CZF7+-;;`C-G!K!}369V`SKG z0#JWqxHtGT7>HW(?jBP?-odJ`Qz&Sd_iD*}f>G6C_}U5&JxB{KsM+ukT(^SY2TQZT zgMe3wo?4pdF~c=9t*0tP6u7EIlIAcwNd47lc(n$8JongnaigirLc`bbvDUEaB#E`= zhXoJbq9fY^N=8Zh87aDz4}%pgpy%+DH~=L7QU|o=gqH`9nKPM(U%+>qrJBKr_8Rzc z5^4k}y(2msvWZ=8K*Ki?_N4vvuD~L4Gy=!7GC-ABjmoH}vH({vT2{e&```^#BkS#H z%z?IWAB+NeUKJiDpavi@!l0?Dpt5v1^#-aQ#IT8iK}I7Aq3cE+&R?skBz`V{S;czO zcRT5d{{$&BjFws2z$A9^SvGwKyoKeKko;VO*6*r1gDcP{)vdP0%t{gT! zTDIu<{GRlS-n6I5K;cuOxWWpC?qM)jpy(cy&?T+To>Ay@4hFerQ}V5=Ff|`!FPUAw z|Jrxg*3Gc5?NoR@ewT0lzR%X>9@)QTh4#;DUw3=C?;j72ADo%??I`+{BdXdjm|EkG z9cwlY|Lynr%Y3SHUt1%D({r_JOTy_TeX@VV;_EMdzHEJ>{zG?r?K9VZAA7QTu*>a@ zNm&Pjd|ZBdl?$hbFW%a@2vK=(Y&{t^+ql?zbEAf=c16@pjh37pf@Eh%{%rjDV^?Ii z2}jY}|5phlU*MB+)CNav!~4yUyavfThh{!4#}RCV*m_Q`ytPNbK-L_{y7tFGPe^XZ zvGv?mUxg%&ns?*rclSf`3!%cH=X1}y;sC&060&fpykm7+;~<#`$-6&AO7=KwTzOv5Fi!aF$m)V@8CJb;s@RwhF7h&g26Nue$tE_j{|SvY_SBZOIU)Y}UXV=XlTg70k`sHsjKgkrhh*{Lx5hy- z8It(uJR}PRh!~6)9bfFWAim!60&?Csc1LH9+DxD^geY2y5lewCx5*BDT&@GW!oUD z_5E*Uki?NJ+jMgK2a?zMc!EfF5Xn9yF{aw#SWOYRwnGRa*(KzZN-~k`1ipSX8;UzP zAlXAwc^_Fa0o%gAyQg;*RuoR zl;WI>kugej;l!fpWz(Lcm+=wRFkKzPMXpqw;UGE=5wZ0MfWI8aA;-}o3wk^wVfVBN z+z2?%5y|a|3pv&y$NAz6@ti89ZQ3Ee84^x0?N@l}RL8&CFV2Tfr!km6kmE_K5r`IV z)CgyGSo2&>u%7EcyEYyoZeHX0S3Sic>g>S38YGtLe2l}UO{O@lyu90 zPV}_-NgNB`VSMSkq`_186+hdZ+T&M4+rm?qg^k!k46qk%5nvBFCFqb6bYNb=r|Cj% zHgd{g(a;Hxb_<2vewskesyiLyZlO4>Yjg|6=~zp*P@LYezJcJn2q)=Pd#NFtz zbqKxf8I5&_))upkp+lqu@LQK2E@xQH(48AHfTEbh=;feX2b zbw=DGHb+Yo&*FfYBDLe%)oS2}lE0Ch*C4l@gtHp$KG4{@F4gW04S#Th_wKi+HK={C z(Wu9lu-p9rP=7!}-{mi1lURK>@lCD6FzAnad$h7nh5TPJae?*7!Hf1u&{z_IFS(ng z)uQ&Jz@!i2P9e4XSaN`dM(sBm43FJ(g}G_7*-qPyW>u*D$3_@LB8xk8wYjw)#0?$D zbYb*TOQ+33(+Y%BkN6;B$~ZD~6Wm5FW=FbZ(Vv<3_uJ7J_Eyv(1RM30L=Fbi2~|{t z0d+{h+XD0cGlKG8+@Spy0NorIdmY8#yN0!lx=vMVQq5x-u(9GM$r=bNsydT(v+g{1rr59Ng3*=LyJ}CdlYe&|nO!aX2M{NIif? z&b7PVloWE@j_7ws4txEg{^}HhD zN&@Az72$LYYz9upV6&LyaI_$O#|&%IcPwj?^r+*D43W%9q9pKeMIFCt?l6x;{BV&; z(=*1Y5=Uk?I?RK4mbjUS0zj5flMbI~7r$%32i{4*&N!CwWKB7yER#;HGnFrTuyJ$D zj?5wd7(Zy=lac+i*0*-vM>DTp*#G^!z7)?vH7g1;4;TH z70%=82Az(R!76_F(bHDnks2up%gfjWR$ z#Pu_VKhEg75nuQ4%Wdkqhnvuz;y^rB$tjPKytW{@c0s7< zHbBQ|Z*D0Xq6GC_${)YcBDY+TE^gDBqziI0Ah#Duv0ww4MD8w{x5TznXV+kZD7jv(>ukoyjsDD@OSwE|iM{t^{At<4?a=G~h}Ig>leJt;DL zi%Zn5_d<8lJ1v(bmF0lZlO*Pr`P>jcm=OY-A@{!+)DPdscYmnSlJ6C`Kv%-PCyV5A%7R9V85SnYL691 z$Um>J<_JZ=lj8{ITL$=3O_oAXKPE_YeM{OYa;-b4c%f<9QDI0?qciByaD4Nje3)B@ zXBMw8ysEsHcI$4`k%r5ro=M@AZ$C$M9XPgMb;v++0}Ls4W7}{9r>*jlggEjmxb+{X z-+vUhWNt)?D@HWpMVM+vD>*s7 z>@gcw@C-++l?I2&kY}t$P+vUdF zEDoL|`Pvza6)qH_m#Vg&zJQ3Y4b|2&%&gja7)V&r_8S=#vbAYxjy!QNeIn6=1xryY z1|`Spzvnz?ZC*3#zvo_?>c8jfME%DH@ubjB1GLl4KNKdL zf*2E>`olwiGxezmBN2QCJt0`949L!q63k%WGA2UCL}><)ACCa0W+%o>%}#FEP*5!* z6k<@P)grTXdcR3#)1giWcxLN#)WFFgexVKh)_Puc`ptS?ddZtnjkU;mLh>U1_73fp*dWt`y=T-jbo&v9p zqNl*?4(BQGI@-un;B}`ZPl4Cj#-0LxAKB)5fn5bak>~@ z9qGKE>qzG%jXKhKe@h+d{EBr)fN_McA$C5^c|Bm-b-swg4iKKTW3pV4w@lMWzwGcH zmTul13@Gemu5f|Gy9>EMGN+NswMY<$-U%XydXH&F9C}Z%QXnyNl+U}mqO|6I_{|?) z8a2+C(f(r(dB_LjK3slsQp$+1b3YEOl<=+hYu0@0eWb|+6HsMk$QvISL*5sOD+GJn zK!bvnlvA~F&V7=T@jAZXOl~c5o6W9MHOMEpf}hkr-QlUbbna#m09xb|!-x~tr!yQH$1_-gsJ%NOLo?`a!rm+$XpY3sWh1QZ|O)j~*iakpl+F44^> zFX7p!i^_aGkWQC{^x^dRmS-XsI%}bP6genNCmgCg?`^$tP`ork? zJwy>CUY#TVuZtcYTS~SzhO-+W2~(Ih|MKmPIFd zTd4b3Gwu4U26gRDbWld#6kJbh!NHw)G{?@e;hQ1iBH|8_T3wBty(E0wra}B<4d+Df zdZRgcC0dYEr%o%KiO8o_^Jh%MA3P>^gSlp->ARL(Y;Fp5bFiB5TGUOcQNdpfYE#9D z<8E~}afq{pL!otSl2Yy?%aaRB_}j`QrPGA61a^!h*(w z-hCQvhkNz5v>Q^(oxz$RRmY<4D{%mU%xLJeDMzJ}qNmj)7)1H`JTF ze>k+V=)=vE{)w9Z#^T=Vuje0Fh!ES|KhiY{>CAA>&&qxKv?NaB*TRKi%nIgU=xn- zgEEKP+S~E3u-M!2UtuFGDADRVyr<`tGynHna);?r)I3tj|B{iPY1&G0Tq}_OgLyU8 z)g+cSUWo$Q2>>PNRbI!c9{>60fbX4O1x(Sv z4`r^!PWDa2h8K4iJCl{aJPA!Nlq+WJ&beh2S zBsxvN9i0&coW;>;GI#LbLXskGXb$a7+Aua zfPta#5Nc_F2PX3dctr&<(gSm$Os-X#NkSRkcN#d`tUU%QIInz!hsj zG`^v%&*D`f#=xmMfd`=Q0gJ*shXkI-szv4xjabBlHKD+}W=$w?1B}VHn*`o4c#y04 zL17xvyQXhs65%VFZQV7TznXIfg1H!!sVDv?R&t$^=)dhZY9zwlAQiPiubbP^+S>N6 z^3bd6SZ>oBNQXh0R|gdIp@BQSBZ3q^l^t}RLD6c_o(cNhyuB*D5wFvc5I`m!o;LX8 z=V6%1CPoSRLypc=-f2v*amuE5=l!vC|Lww8d!3oub4K6Yo9q^>d+^Wny;nYcU?Q<| zb!LouWOK`zM1kyK+Xot8B}1p7lIas*d6+P*bc(X5B)=3^F;LF9Jyp*CdD==BGcN`` zJ2w;Sq)`)A>j4+*gsch|tn~Vx0eW6!qn^Py954}(mW*L7y?Z`Ir1uU%dN(iYdsaTS ztY<*J;x7r9vJ8t%l^&)R<-O?@UIjDH>R!?OtnSqY9@XTLF=JZF{tU zNWD%0lBzC*_49u!T_O`hFX>pdBp3y53uoJEtGDve+UkwvpDGH=QWbxn8THl(8Xf9g z$l%aZgnxQZh2`IZe;C^w(R;Zi|B(1>HaUXL$!nK>EBjTJcg zs|M6Jyn-0p|A8yLQi5OK=XD%@E(SgTpWqyXMMbAWs)D8+%ET~w0wxY=*TRw4&y{n| z;T2bg`bB80ilBaBJZ>rrA;_3lN8nH+u%)5SRDNydTKUvvwL^w>z0Dr!@!^$0#5nf2YmC^RjJBVSA3)Q#SYbg)v~bL6B+=^_3o4gSs9Et`>H1D-;UJUVph~ z@Z62j8SZaLVxQWxWaJII8_GI|>d$&V6;)ImBJT9_pW$`+FMHP-6#fz-q@9-q6!-I1{)KRR74(24upvUIb;Ry9m?w7NO@(Y*On}90)-sYz^@rc zV<=_Q(HQcJ#L-C9YvSS828-w$xqY0_{u=mMtJ)|u+1hY2j=pIUt)|fO7ObXFgJ3n0 z4VKV1dE1EQY@;B8EK+Z!gG|xH{NcBiLiYkXd##Nu;?=zh>5WD~ZF0qi^1?)X4vnqZ*=4OioF*?f(gT-tfq-QcUKsjr_@d!BGk$ z3iy-VaRWJe1*R?)CfSn4j%bkKVSj75wUiIehS?VfdE&xUfqjTQ{|XcypwXi6j)E?S z!n@!I_j+Q!!eiJ&LK7*&g~w~)XUTAlLQI7hH3~76XHZ}x28GYX(b2GygPWU2x2-@~ z+ki6ROISLXsKfLfZ-(242*>3&@`G(N!V?NViXmWh>)~Mv26Ud0oFg-GN7$sAm*t|R zgGHhO<9XQDCvoJ1&Tr%b0sbWodUFn$cL6k zQ_NvyS&9@cTz7YKe~QwF26kHPV9$c(;;seSd}{ zZ|pG;`<}7*3<6jimM=ggL|uOL?b!kD;`ZzSn%kZo5YcFRb^zVd_UwScjrW;_!w-6Z z{enitkd0Se7ChBz@Kyy>#X3_Xt`$TdA0u+W_2#~JVjdSsAZ2=#rRFP!QI3{1??~iJ zg*|QgrHzi<)#j#NL7ang{(K+%WHoxt-)$&}Bz zbQ>*Rxc5l^S$iitZ_yrq?Y6^~)m^4_J=A+u!-2QUE3m48V(cszm32UTj8BZGZO*E& zd;!`+OcGYuuzX_(z$`07$l4V%(dwvM9@g3hdV|(xOANpy9N1ffqoJv|a{?A_qZ=dn{rXd4g%nW}$(m#>&(^vobaCNDIo;z%QlB6oWfT*AqQforITdv)weBxYaQ}t9bF|7mGy^s1C%tfCjBFVQWB*S12kE4Z5d^ z#oNGx4!6+#L0<^n*AhW7=th$Yo;Hgi(ncHy58(=k9A7HfNX}N0f2C_`?BFKXRIQb1 znb-U_u9X%M`%=?@TRbU(VzYD2!6#$y+6q1y`zr}P8P~=fd@_!*5q$E|!WhQIi(w4o zez6E+7^kraV;DC{3}c83KA|v%al0QOjA7i5k}!t2aqBRK;?R@GdRV#V;?;@a@qESb zcpctjP#g&~%^g#WA8ZjrE55gl7+UcK<``P>J#w3iq1E9%E{0Y-w>>7bzsfQuq1ZJG zY|X*{j);MO;=f@~{40&49g4C2{<0a{FTvS%P{TONGL#>!t*9bV@Z$I&I}s=$oo`Wv z`wP!canFlja4JZIBf7#eidw?+LfE^?DqS^@=tr=SmoHwXTC_w}S8x7G5|47i8@5s2 z-()yK3#^4`YC;@6%V=tejyx`j?j)L8!ZIAXiCqGnSu8Tj?+AtVmqYR-i|gu%D+`BsiC}Z3 zaoh$!Wh;)`;8G!K-}5An8^Oyu@E<{fn_z=q7ABYlr3P;oz%qRw%PMGNz(WvtGW+kozEg03`HCrWiksm=zJg0Ea)#PwhY zsmP%ZmTqNaLC#g+)>A|IVd0L8rcRLrRwMZ%`4DO-bzC(bS&W`ht-?#ZjzX#7+_C6J zeNC;g)z?%$e2R{Q2sHqT??^fyf#)MiwX@*j)Dt{wsk9Mw#3Tcz!-GjgZ0ao>amYx7 zvKZy5!&b(~uf0+Z9O5f*AR5v`T+W&Z3OZyckJyl02}fE61r?Xisv2n=y-LdoG^AdD z)G$w9%TFL82XTB^9I~=ToJT|U31yFvvYbG{aVTj?p&y0GHsnT)ZXQ=^*~+CWRAjXU zF(&EOqu0^}lLh3jLns`Ern-y#w@eUCt7F1%yf9eT5vfiR9`8+_Fdg30 z5q4@KJ|L)!5p)+XLnIj9ZfNKae5WaGgh?e8ghT%kR7YUKNQRZ^+|5d(?I4AG)WBiU z8u+1Mu9B#M*ro|$o4ZqnBWmI}0VHVIgusUN%5`gBr$4of1qhvsG#EIUMqu`A7G|PK zrOwPvNhUBSnWHxDY#g<*n-!q+jFCC1sp*5$Q!=v0sZ!J<(npR=&*WkhW{kw~?WK6( zsCFTIR6A_USVy&M>)v!!yYV)o+PO{@quQ0^ilN=HaXEaM27cUvI{ZyN8vdF-o49r$ zNxmBe76BL1Za5B;YJ?hxG%B#gBDj!tm3&CM3f9|GpM#tma2@jf8I}ua$Ljf*cCMNV zU{zfXt*keasCIRf3GlfN<61$2+F^m`Mc=8SW!@e>UWQ64f{STKQ%0Kdrt~?y++p-; zhAiq)_^^hK^QrLhB27dez~7BzMNPl`MxyCgpb_L8Gic$Fn8imdI0Uw55|}*$P~#x@9YHrRr-TaAlVJqXn)66tYlO1SViL zPe8h!t+zgUV8SN@01G)k|HDO34;I3qY*VKZOG-=lkTU8*B7~m}*|Kd{=uVgL?K>hv zw{LkbCUhtLtd&qkSs!WO$8kw(QPe+?;F&g~Q(A`a1Sysvx~+JwH)5_g2p>k{zICX@ zV0q>bDP$Xay3~~x+!J>z_rc!Y+n(7MH9c|7FJnSHzUlat{i>;*U`lm(J>2TsX6^SXoe5TsRSxan}!&6HrlcVL_v4n2Tn}H(&1c|FHKZa4~-0 z|1<5SeNWr8DB2fAC5jR$YD$At^R!ASDpIIf+83s>MKLN$5g`?+2!#lRlqE_?NJ0ty z@AJ%*@`>@)r=R)1UZ3%r=FD^MJ@?#m-uK*d@AJ&n)a+N>;nd?WeSrHpIzF{9%yy+x zWTooC7BNhwz~hRV#}6KTb-_=uP1&W%PRJnnbfu<6yQH5FZg}Q`NXfP7dp%{hA=`1* zJ?r#Rsw!Fic^vhw1tt1MrflI;zhKhH+K;|Py{gm5ANnj$?zvK-S42zXz}oiuSoSP` zl)Uj^&88V&ET{!ZErcX8>se@E!P8{DW00mxuq`}o+qN}r+qP}n*0gQgw(XwgwB2vp zw)@ULU&Pt_-tXrVkrlaCR%S(1JXtH@ptJNsp%12O^Mp?o8+EZUJ_~m60tL24vSusz zwoWn$#N7s}G;^Y+E74U$*eanmW$Us;|442NKbFDb=h%6>&FXFz2#ZY)I!?-I8sA0s zcC2G4{m#}OLM^B0TS8T#K;pZkjPvk>FebTRn_bi8=2H2*Nr3^-t7>a1xu2P})9ZR# zyusZ@&v!D&zl;DMyJB70`>T9sC*r00RVGIo3wlQGwYDwNIAQV9^r1D=#pj=V^nY9& z7Cus+d!flzEKw7f+Vkp9b&j+SzdSO_i~5*a!G^SNA56uR@CvuhIPc+%Y z29G;vRi>;S^udDbFKJ`#m2*z4|5uqV4*2YRBu>jFs`s6Id3Y$<>n8ko?P24k&5xLq z*XAPz3I?tRBafZcI72g9%OH0FRh%xBkG9WSNG$Znm24 zRF=$JRT+3SRL#<(3y41u@EG5A87Mw3{$$yE-F+DkkN?=Fh1sZ^gs^~PMsBTTaOjhh zl_a{|S#CUtj)|*2y!PEPyfGcS*g*4`{=kJI&}~uL=oS5?fnSTJ-bZDrl%qE;EwMt! z%OcTwAyIP%#7vTkhnQ?JHzAvv>5~9t&fPA(WqkF8_=w?sJSWVS_!^t7Ks#Nn&SrmY>fJM8Wov`|o7VUO!ve6Y+i!xKs0bHHSo9bkmkw7=7d#m4s`Ew^4QM>%iC%j7+evX*8 z2T9P`)E@i|(z$W@4H1%P2iD|?33aUHa=l{paJZs5wX)*jue&CPPhsr)WqGm+P_`K9 z2YaqJ!O0z-FS1+z6+N7GRVAdn)pphNqQfTOMWy@3?lUGxN>aU==gjJ68MZBkHQQ&32K?+bXahaeTxc;$zYh-L{9g!ypGmKg>6y$zGxZc@_f zauo3{%3ZZ&a){hW{b7xqW`;)tE^2q}S<>;mVGUpTx$zF<-Nf=5dsw>I3RRC2lw2HwhiG{vnY-@nevG{&mtymbuUDn zUNxKMQRB+*S?8DKM>+BIfl7Bx=RhRlEOtq>|GfnVg?2noA&+0sRW19Fe|N_-Vc6R} zY)e0@-~H46xg_qJ$#Q~q>}JUPJyyI=MVC?1OtNEo%~7$hHo@4mtba?c~{a zvfTQ+)!tf@Kl6nls$kvsZ0la)C81^M{6<#KY<(SL(Y&n3do+nzOhAfBRm1mJ&ShWw zLsk1QB+?X08m1swF++HyXU98~w8Uf9c4vztpV?Ezm3A)L?N)LJx`|lLoYS)^jqbcT z4W7M4ydU7b@^kn7dp<})*7D}9%=0*I^%*yu<9fYoXooBa|FN%ltr2%W5!G|#Nb{ww%Iv*}y;k3P+eUh(Syzh|-5pcQ=jPj|o0)0p z#>2cB=1Cv;jvwAdOu-;BFm_>eC04ZH^Ot3xfxytUzv;qa*X_pWiXrWn%YYrr01@;N zHnNlxw?6*zbURCXH~X+Bat|?D$2;3b2}t_oh4^_>{Ax^b(I37-?jnxW zxYQ)mBIq_8(-6)S(jq6V*T0V!JKMtkPBWV(O4h4Z-q?@EzD0&z`gQ{VN&}rnh_$yJ zrLOv~gjN!K&NY>yr1yKsko(vqHF#{k+|?l4v0G6xhaLw z_ce442OUM2rE4wa4NSC+kpf#?UbVuzHVMVI)eAmMMf{4Ha%et28SSSp_|gfn2EHMG5FRe5IWL`3TOV?woyFd$u~Ffab*hnhc;*du7t?nO_;Yo!x;|Y( z-+_clSTM7kF~(I=aoJ8f`*7)2{wyzg>n6r<1kDpmp#WA5=Ir%ZM(&E;xum_kbZ@Ry z+{S&KtG2S|kz4nsZASP7s)yT>thWeiSx zazeUI{&5$l?XDVVyH9}SjA8#j3kP-XmO5V6Rwnp1CzHx8ji%#!^OSJoS+6Y(7pFle zYF7_qwLS6OzXcHZ<5c7A`{k3rv)T<7KW}$}pk&^U+YJ`@=tMl|eH}{qx26(;R+ZeH-O%L<;&b&2gaoeSZK9CH-mEagJ2ibH8J6P}H&Z*61F9 ztJwK^Bv`aI<*i8oxa#@?@Y=BWmWJhG6zRaca=iDR`OL z%i|m+I=xS+?Rz{gxKiuR6RqyYYCeh|0pHpY4JrS3R5=iFT;29@fOO(N0|w_(#0Nz^ z+E2U=^fg1ic?R}H{ugcC$X$ZmbCd{klzlNl)foR2BSJTK zyv|`qpY#FOIm+OLBh75%#PbT+7d1Vmt3OY>0q{Thx_E|{dJbL1LC~nKJ6Pv`a?qCU z_ZayUszN0Gv{;8X2Ka`_hrff?Blv(h{3ieJ%Gfobuvng{oCGY1fnQW;_!Pw(&@%Mn zRJ?|C>({P(7e{{`!h^lkVtKz6(R{Q2cS{1#hi&GwJSmwC5tX$v~}74K;7AWT<~~yKSl!IB3R+MdzR&f*U_2S-nPfD?lT-pl*$rac<4Y$ zaax@vqw7gr$uDWRe3-cn<{F2&)4z`b_Q$}0?c}G|`SATGM2$SWOfoe5q~pDApLde4 zSn{J{Rf2o9>(k{~n;_AM=m<=&XBk9x$K58hYc?N*o* zGgGWM!N6@$dB+GYmTR9Mpx#CQpFDVh2d>np_sR+ry8?LOFp zSHRys8vFG}{!=3(jT$Y*Lr2Rs*D!@(7XbVwC|+CFyp}$iT&qeFPdB^wcHUxbv#QdP64nGt^|nS=g=)pi1PWFOhLj4GYDabl&($DLq*COW|- z82z2QcVGND{8j0!_dtWqz;h}x^1Q+t&OMVx1s4YUNvVD$5 zp6BXQ*$_4?5y?k#SULtF7k;}pXSM~Wl=6JncB!U?~%9>5)~6wvUCgW5kfP;(Qi>ZWuKn5qWZ5; z4SD1qM~OLA`Ao>aMKvk$VnO4cfz&i$<-$`|Zxg2e0aJ`lfZ}l8Fyq?8nvB;!8_5 zWu5mFPl(%nomJryR8Y<-s?Zz(fBP<&1e$l}AME;i^m&iUWo4~<-Y7OKgVXWA;d0c{ zaxux|&G{c+1#d|BEjyOB354(V)Y5P(;buw+m1fG5UR*FJFY{&WxPAS4=Qu* zGl$4MoZDlZ0cmta-N#?;P|tq)ki@1l+hiFl zE)UB!mPm*NGEq?#S2=qno{y4mI}uBr44d$KjI-B~RXROEWLw*>#G+>h;`CM~kGD!O7nmuJ7eHtgAV=05 zBXDdYYIOU9r)>tUKIrCgXK32myxvvco6?=jS+oSX?$-c+7+v>V_oOCE5Mongz*^CH zEPZZo`N?P3Mn#Yk{2{}2`)SsN^eW?O>{0ULX!SA9&rYXmH>;M{q;3rTIyoj}-i4~! zw}YC&{6jG#AQdp`{kr+Bd{GI~e`9Lf*4>Kq3=qxujvWg^*1*6(MBT_RCszebZ$l zEBvRINw9P>YBOyX(c!A)@aOog+m<|WuNd7jDol`7Oj*=sYj(SUUBA&&2QXr?F0vrk zBu;Xnh%rW??C9xp>$PpojUG2O zrLDH(pnIPl`4pz`WE$(o_26Uw8eX4@Cc@U(>*=K{Jf=(Qg?%-u4m9e%B>sSk-m8qJ zqYik{1H+6454Nb7<&QuXPMW9{-gtq8MT%PlmUA`r6JG6J#RCaq7mqOCn$)ASGFKY@ z)kXZ-?Ud;{|9r6EPTacA-Rjdo3MFq1Z5$DDcc)7y+8K>bOWwMr<-3zkACU>>{Y^;b z;9RwoU-X9<#98#2`cl_>WcHloEAJ&vpAWnnKdCcB&#>EIq_2GbSfTstx@ecz?gbnL zs^{I-ZM9;(PBs!L$sER2%lU=wv)?07@q<0iwE=h5W1n2Bl7rDIHCCgK`mzw2T(A&jmnVZt( zYujc~6N2eAY)81G+oHVDibtg?@8?4a2v*cD)w#6Zb?mARx*{J9>y^xJtOO-fD;x9X zX-Var$HSf1(XiRQky;H}Rvx6=!B4|P@s|XJDQ3Ord+T34I=#8U^d}J=wJfQxlxSXE zryZhVmeC5oWq3uTa*BRg$FmHFI8;Nc$_IT|Ho0X}~6<0VW%i|uU` zEZkwIY&o5rL5;~7I~sjF)^YSMW#cn@H^2Te0fw-ExDvV3WfDeng!kJXk*bVwHJ%H; zw&!4Z=!n497r5n}El*<;Sy`BK@%4`6b;cXEtwm2!R`DYyzga#6oecq6tspa1Gm~oD zNyDq`d|uKOO=RM@GH7KwPPa#82GFZN=dATxubhx80053b!g(ujE3a!HnAr71#4r?{BM@ zN8QsAJ%q3z>0n&>-8dE5g*bxFc#7*!MBrhjO|b#_siQyF2nM#9pWpRe)Q87G@iZGh zqt5-JiuqtO5sA!_-#MNFhcNQ=IhJi)&VqvhUwFB2roP^^#E3ZTo8Urmu6Xg1%uxK+ zJsE1PSV9VVJjd3J^_kQnM^U$+OZXm0VN1g0E&C>`1H4YO4Ba+G+p#qZ9xfAYmBF)b zLvi`|!cErLOyL4@RX3brzy^m9blWk^>S>$u@AkXV?A`A0>hFD$y?r@}LzKnzs-<-L z3T~z!gO>+4wT@YDnrgZb;3<{A$eiJJGtban#Y@dZv6{EzOm_W0R*@ zeU%obz&GPmh?Uy4m%Hvwxx;x*y+$%dpB%}H6X?nk%{#EUm3ugE+^E<`xuSLOPS$Q$ z-M)_GagWRNAnkTk`Lt0V7QYN2!<@EAwKiRy-1L;0N?wkJX1nwy^VWKLm@j>A!0Te2 zGYb$J!HwM$86WAyyQgEaHkK;)DHLOo*!U>y73+BQs7pc}!2)=Z zf^O7H+IYj0M`(g;TV?qX67hvAKEke#^t+H(27R;2vTT%(Df-m-u@(?ftggNLTy^{P z%;_mA%JTz`h5$3SN4!~mEniKDX2x*DhYr6+Hq5_xAdY|Kr05>@ZVXA!&l7id?`x$? z3{$1h+M$qH=DsRGcGI^#gN2aS+wvZ5l%~; z^ZLlAI{FPu<)GzK`Rt{He%}s_0LH}`t(-NEJ9_`$@OC?)vW@a6886 z$D(Lc$2A}lsXf(hKu`5N+AW3E6gQ+qCgh&a9&A*LvbK**5v*=)Qgf8)I=BQ5 ztwPh5Vm#BOK-@;yg6Dx3K-d@Rro8&;8uaC=ogV{9@|5Sthb`gbD0)Z(+gNc%?wGNicS=#zG~g&n=x!_a_6#ZD+Mk!>+Wu{0ZGR=MKEqN zdwgmP4)_UoV)i*RnhCxk-gfq`4f5G-hwWUfhUPu114FSsxrvj+*o*Cv0hnmso=%OQrms1fOtgXE`Q;mM~BhlLTqmot9L z>T#BdEErkk_-m$LjOUIRPcdzj?snKm?Qq|xSEtWSWKXp4n}&BByOX2L*a+ZO%g*5A z<+5BoipU905}o2ka;>~TVU?ASehi!^t}2V1Q8euY<&%%$svB1s+_ypFZ?O9b4WG*r5Tm?+s5(AB3GMBoRMuU;6p~8$}8$DO*6Q( zC(v||r3?3K*tT$~kS_kj@2G!>=D68r9VC|W!Zve_+JU8T)ufeBtinFnSaLKI#Zeg` z-E6-r>(|1dPjg%`-sZ=$#-F)#%}Z<=_-d!SA%&bZD%ENLhOu#J=;+ufr-ILpa*;}* z4ItkfbI{3hJc+#tEUUz;tRo0Np>*BMez?4S|Lu|6bbh~}ccfsMQCYS-=@M5I6ZxAf$G|0pWvutvht1m{%TI&PGhNVnsz^b=%H|-7Q zYz6cZpHJs;?Eel9OM{xaV&${*f5s&qiG#BybY)ab^m^lTJyetwjEzx850SgmvcO(Z z&LFp_2wRiaqZ4>Y)bD+bkuMx6?$!#Me8ba&X$Pcc(kt;S<9Prl>~THcypR5gB{NJQ z1H`g{krL>*Q}A~q`a2JVu7%ocxaTv14SItne!Sc5hN#KYl`~HLk=xl;D_NxLe>G^O zwR898ARe*FOj=p=o5|VYRU=?i_1fhv-PR%MYb34TSb1jcQ1c@y&6>jB132xN9TRa2 z1HhP@w11U>Rf+fwfSK>9pWW8(2^Q0)ow&a7gs|$doc8h_%ZN-=bxdQZJD|%Fd*Cqv zNIi+=yzI>r8X;V^FFhjPXml?@FnRYiMSEeWaNT*;=#}Rsw4PkhOP%tn9KTZyzUi=-9t)0~%#^r{Of-jy|#THi++$9WVneIp5UR%q%-2;#0M8 zCq>Gf`tn{m)P#oO2tV>;Y=Mvx8do?8KX1T#|2!e!W!(q0>3X+ItR1$L%Ie$#yFzy@ zkswWF?Tcy)dDl8zSY|)-xiVu+ejb#-&n}YHim-QTz@%Q>h!u12=!M;J^psFDJ^NMl z-WU#a$*$_^-tVU{GbrpIJ^5LU+SER5HsANx1i$4(RXX1}wMD#drD^xvYb3CZWw(7` znR;ZR&ip}BUuoZF+rrg#<6vdM0M(zfg2jv zJ;1_z+g#A=br!huI{P@Ym@@)er8*VHw|bt^oz$u2=F#RH1|j{nPouoDTml&$dPUhL zP+Z;g&_a*$`ZCw972_xRE!@&fwbg^zr_R z9%jgPO__M{?&GlEZp;-qA~+n?SJrX4{o}@y8)wGXZ~ksc#Y;F_e);lp>yuWM{w2zM zf$>z1li}FDy?v^1@XxU>=<(6?$S5ZRv08Q4`I!r`sH7@v0&>&U=BGT~L_$WyhEda# z3BSG_XPfw|immEwSX6aZ6d$@~ay9%~SAwrOMwUkslbNMe|9MM8%L-pqsh`cw z>mR>ua?aD4UdzO#^TKvf9{@U$k{ze7#z7Y=_1)KuMXEAg+`W2t*NcGpT&BTUg5>eL z{Oh|x>FSlINOqgQ)*smWu3$4Hu)CV3Sh)HM_71KK2UddBlt_uS{QKX6%3s^t6YNXx zWDLF6NUCYs3;N7GIb)Xl$7tw$`iwkLEWrqU&-^b(=*MMe8|FqN(zvY}pqyZ@y8fO= z6O%q#M~vrh^Q~)|jQXXo>5i;Vpt(9vaBWTzGc$+4TfttD^t`O;t;j>?u2mh^Es9&< zJdp<>wGwpJL9}MF$96B+%vq#@QLbe{DX_t2x}NkHJzDcNN_!m|*X7-N^XE}~*K2RR zHw`!FQ!Vmq?q<$w1W1!eG?NPa-9nx#LsMc+s^Tieb*%oM=xDzrI$XY0*Y3?-w@Mi% zxxvt+p~#^^J0`sQHYJ_BG8&SHJbp0q`z)>4kZree=31NQai=-8)Q1!#X^zry(}Eu7JFZ0qZcYBMYW8tEUn=Gkq~oI zt5l=d0+dFg|2)IUp37q>-Sk@`Yn%6vu)wRRjDuA%`XW3OKPT`Do*PxlRg=b zehhn9JK2SrP2_WCo>NU?f)}AX-X#{uV>J;5rI|WMsTZ-&UlMbB5f@NRnyDkDt4i^6 zEoGt-9;ff5y>JVksq$4EZe9~QQ<*dOf5@DZVf9xVjI$s&$k;pay3a}g2kLcIXryY5BnJkA;Kum^WCd`y0F z@|?tn*+P+PU@H@C3lnG}(%L0XZ?A8~^ceg+Q<k}5)VRgFLg9u_T-}i5(>X&xqn^LqkaWz@`8{z0Fs zDQqqKHEE}FeM@Lr6C1;qzA+Y=Ae|HT&Ql?va=Dd(wWay#L1wzg%#2Idcz@yU4d<;et#V0DqVvC@VhYT&WA58z3xzl(b` zPE>{=_;iH$`sP@@X~P|!GAH;-4gTWi!*>({8V4QwVC4LPMbOAm@WTWcLYDGJ#tx4l zIRxSU0xkt=fXq%l6c`~2uFm+u4-+4ogI~b$P`E6AO@mO7GjIc5Pww(+?&-N9TV$!Ds$89oS8jffpDR_m=zXsbBCPQ;w0u z-$3Ipuyg--;;{H1P^L`(fKuc77nF|NKcJKq{{!mB#6O@u&i)0JB=$d`Jahg9RZR5{ zsKCbmfRZ!)2ULff5D>@T|B{qpAzGNNeS2k4BSa|KOA`kiCO%46zxMti+Q57Z;73jU z2cE=sL{7waZ!kG}fdBV{rWpj`P?JB!-w(k5N8;#ztm1e7C2@TE4~aZ8o_|T~=>0>& zIO$&!*@#pBkl?%jmqbzcKO_)>a{nc9#P|=1h=qSiz^j}6Lt@?Q-^fzU{1aJo3;F+v zY}OZQ!1ti!rUe<8KA6~;NxtbH8|W)&CJ@}uYMl2u{c;fCK}$}x;43`}lxwdky&(IU zhw^wvyy2`27b>I1r0j}D*H#AnrS@MKA{g)4wbt32gf>(?yhI|!@BN!~W-*p(8)HhL znN&CJg-5r+;`+Kb$~MYwmW?P(5`4N9mUHx{$H6$c9SRL>Tjk!#Gex&Gb-J|~t@!Ge zx-s5|v8r%Vt2?co4pq#mWDZJ`OJz^gSV}!5fxHV-mlM5HQlz;lG+Y(hx3`@ox>(rF zL;rMC2qML^Y4&TQ>aYk0!dSe3j0Ap&7Jz~&cC$PqlTIsu9uNb?6sp&NUGpe}M;eJY zAngoNvU!PSs-O}lM~M-|6p$&Ro0$y(<|qY!nFUJ%e*j4t|A+~FHQOP;h=c>-`&o}# z?1Bc>9FA;KAPIIRMzpjWX(3q5JEdSOfw0=kjja{|0|Jvs%V+l(UY1oPa!rT}AS`+*FL7HtH=+>Svo+ z@3H!ES*uVnBk>iK&vgo)JJqNK%xW&?{Bq{L(A5@m@T`0DlN+#hO7LnoR7^#wjueXr zUW6~z)lhyAsIwM)-0m5t#-O!RU#$38^C|Ilq)9cw0a!P9v!9m-Va`-$?u-E}=t_pDv7nag|qER+BtNif#1|8YN?(kuSXXhc_yENA| z=ffHbBq(*!5#)H(MEQ5Kk;Ks58`2nqPW|+akBS4j|ESOP4Bu17^}|&MhJ%NyGh2?D ztnhQmkBI1pqSj$wZg;8o;nU0Qj;n*BUZR(Ga6ST_VX&^XyeZzNW+zrzMr}Pt2^f8e z3ML#EUz&LQOhk*f$Iat6JZE>AIgc(y+4xAJE_%AWy+(PiTaRne!-JP$RsuVF^o>$e zB5%^6y^!M(q)g{(lo{QU)?AwL-z0aJma@SU&0746$&h&yV7IBhTaohKn(uShu zRn7Y|vey#1HZ_@IrY1y{-L4RVo=T>_081DM^74{T`|upGOY6BxZ=v6#J}Bpv>?#Bq zFcIe~^6ZlPsrE><=L$TzW&Mo%R*wfCy|7j<7mZnqv?cMX;JznA5#r0Ey4&(S7d;w^ z#OOHm2A-gqlYKl>p=Uwp7p<*PCr&rAKhd{W30>(1t<7|IhaNO#f3@YRt=Cmtq)&}B z#!$sJU5GY!bzR*%Fbh}rq|th^&D|Ndw&qv-f^({Uh)E98iDJ5>@}dg<54)5 z=SZsV^I(KqmA2}(Z$9V*jd_LwYSbripPhPntKl*_*Yc=Kl&(sHJnO`AQWbCrI9>Gy z#)>9|-ZZf9st@pr`P$s{8g?XaBr{DK69sZi!nwM#WmRYFPGK^98eTUDF6lY=A6128 zY#Z;!NSrxHpu$!kcDB_5) zWNUaYAlR-0s}wup;{sHRe@E}btwflnM(E}Ov`lfYe1j(usHGJ+KL@6^msJ7;hv6Yf z^9KSteXVOYtvA-6Ty}Vm(Sr>cJ1Q?q9h@K`R!~9UMvHQshS20xE01t|0p_cxTvuUd z^rtcGK?k@!P}&__zlQ)2P#_Ve{Wt)CcXu=N3)EJy6y>taN|XU}gakJ+2<>2&7Sp zqm!I;OH-4xQ)#rruZVQa4>UB*>Z;C(bt*;nc7@{VYeX&q&(^V14EtYf+tVrGxd*@v zT-@+0k_D@C*cTxhZ9^$U=xV||IE>JH<4#WGg;a=92GC%89zdCm!5SxP=s=A?&c@6p5#& z2hBf*N+%cOZ6!6B8MK#9`Ct>y3Y(f`bZir*5z0ywDia&Bn##p_y=fTMot<44jD#Ku zV(af3s&PM#s134-`&%#kM+5r)1>}qo;<+jAuvdai=pO-mL~!+}=$mG^tSUN1vNi*6 z$Lp|m@GbScGOvsoI#O%Bb@qFyRkrY!X971VvM7`WD#g8@JPj6HdI$nGcOv1spy6T{ zL#03sX+uX4q0FFO(?9HQuv!W+9-@9`2_OcqUN{8!UBiC)fZ>q_(;PdJdWT=a+Lc#W zIHDY!V}dBAvLR0M@&B`p5(S$E5$2*4 zNtYe4qYZY`b*Aydmix4pe;q5Kj}TFBU^o(ReDAw7|3RV-;o5v6Rg?Fc@JB9zY`=o{ zQ;!1!)ZCnq5#kusdOYD+zdp64{>6pFNi(VxwKa4-#K2D1mjSI)^W4OrLIO=o!&f;Fd5z{QG{mrENulB*1c$7q1cYF)Vn&fqkVu#4 zQTUFc?7l>hbwx>&{6^mfGC8@ z$p((0K;~+s%LkBPqVHwGxI~H}U<^+V^#mwF4MNmRwCx675MWk9eFJY3?4KT9AA*E< z%#F6PADmwwW*nY&EpvNh6#f)@xj-%>8{mGbU(Z^mt?1pHk&it+Sw>`#)N{^mW7Ypi zH+RVI8{~Z9;BZRRP-U<^_ z!r{p(ARJbLlramiPa*P9_~@E}5j=V12ol%y3SyG*#Q$*@s~XNj=>DVe*jk&I5ahI& zaySKg9ASbS1IQCN{?p8ME}$E3d;mmT_{W;CGo&o+3m-)NRm-o%AMC@mO`MizZhfEOJD}V#Or)$I=}_oBz1UYtWcskKf)1y${Hz1 zqxgq)PR;>Q{=O|2)Gvmh-(_JA0mC3nEa!yvaNI!g!&;gk0!lzwhc339gz~^luRE*; zL{IApgQ7&OHvL*1)+3q%YC{J-tw{kkz{OR2kC*~aK=YR$Gi3R-q=dY*MwvjI&Jxjb zXARr};{3QVp!aV0gm5{?)IT&~#yOA5M1fv`$uSPGKq4>&)>odlAc}zq9nZcl0(7`Y zk$64G)KQHBT~n>sdePz?bf-!>yaO@u1*j=ZOhA<2;;AEy>VP_+`7C@5kFs$anz*?vye~k)H`3-Fjx%{6phK8FCOjw$ zk5W3BkAU&>E+5%UdYKrjP(g9W^({88F8Pd^NiYV9*dbrinW^ zAM&|}?Z^0n{OV6TLU`6PVe5gm6G2n_>+4&BGb{8kJo3-0q;O8xZQKlzDsY^aB<3n6!&rF6EFgA$L>JF76JtiPJsX!Y@ZB1gy*T^zprH zwn5r#=CCfhZRukM+~4|axJ;xkr#=9roZU?h9sR+)nK**qfX|%1q#1smM1AP{W82_Y zI+w2$qR+b6n(xVk$M>B#bfNs-DO>EkC~wd_Y2;mfaGy0em#^jo{2+|hKYMzONOOE( z()NMYa}rQAp@Af2lEDls*dixCe4wQ3kQp1L?&{|b^5$RP#qQ$ZalrN^j@6?N^uu0L zw|@H5<$PO^ezQ)s0T2C9QYpUgi-{q00~O5W(gN4&d?_Uw&kuc;mDs~K)T2w<@kIe1 zz6@^?E@k1M!>1NR$8aq*{e{?u(GOGHj6ja!z)w%n9)UVO@#pmY3IcK>;ECg&?S(8J z6oa_%H)^~}DQs7AkOP&6X}rcf#xf%fUsNExBl}*wDtTk$uLbRXwvd$-LSOK6YmUjL zV0WnY_a6^6A3LVhKuFf$!+VO=h;j3)*rS1HLk@y>KgmFE6-ISlDd+wwhxGyx^#bv= zD*QOuM>C0T&@pR6?Ao-wMHXkDG>uJ-N=S+8ijU{*y?^%#!(n5ahQ2e!G3)0xT`fQ_ z8nL`fi8!Hzb{kd^y-i11L=za$&hNWs+fi%)MOmfg!E@oS^9b|#{0L65klvO27>dm- zesUK79Ofrcea-MD2m8+TCciA~GEcTASN&RKcPSy>mXQ@pp2upPkE0fT>65goadxgEdD&Y)n`w73ti%WnY8vzU`#f6Y=r1bbH zM17nvvWmcoF}xx1i)DBxGH%>NLU<&i^$_H?H;4rh&MP9m6uMC#iy$7R6cwhPvt5;*B zO?8`?V(~}>$p9aW36g%qpzA3@E(#Wt?hzuvAwvPRhV#4-^JBlHQGYp?NVFa zVkgC~E=ioj$3=;Ydw|K$;=xuT$0P_rnwYCOI&^dH2Ix;pHpVF}`Vok(3E?2EtDl zkZ8=Ft6;^ZnB82??(p0RGbo58VY-=3#KH$*UHM`X$?-#E3k;~z3p!LT`k$-8ZkaCf z70(&MTVl*~8@MuuEPm%tjAGfnl+6#%y%Ka|Nd^x0Di#j#YZzNsFJNLdwI7t5DCiig zPy$&W?0QgvPYsF}|4`O3Uafxd5}UTe*|K@!M|So2?VD(a6u8Ld^#O=Rkg<@D-&*61rcA(Fe2yNnZ&|F>TV}NF!?coXn(= z{1Q`K6?iwg*%FTc`Zj(V9r2oM??uL$ToPRvZP1-&tc{AwujJFOsgLCdhW-o5u+YlE5m^Vha%3mtY(Da53>Z5z{e_q1)>nzn7*wlQtnwr$(CZS4Fv;y&zd+5Q&nGnndy)i zAj+Xqb|App?F%!f$w1#|=E!<`Wej0)W}br7oao&&$J1kD;l89YL21eir|~#)6o@|o z!{)eC@f!!QjR73J*gNV3HtsW-_8!Y)$gMnT_>j?9d9x%$E>B?xgLm$aj3zr1asETF zvKLuPR0BKtj(5Z)wSKe$6<&8+;fwP#l@cVc*d$EYUTHi@z`0if>`QZgC_q>v zH&A}CnG}MIhw&YjmEu}1FOXV*KzJBM+roTYYf}@q*FXjsazUDEWU6s_{#VIV`Zy=(}Y`_Uk5}*%WipbWHg3ICA=tA|cH<9#@u~-z7 zv6!-TdLQ?^{e6iqvy12YEr~-EzkfsD608xk--=es)CFEebE|`nWka|#capz*UL-Lz zdmpNa%CtG`^GUaXf{?HUGhWK8@27gwI>3ltxAkKGirXCD1H~#4qm)iN%7a52QYED@MkUcMW(p#y~Iu%qD&KGMd7-226M@-;hOYC+M$Qu_)4n7wy1C&_~ zg{TBBRbEQZ*NpenjauSOVUf)JP5A8N*DY;ZZz@@XC^szj0q4Fx5qN)TA%8KpnY9v; zJ3P+C^@6+2;-PEQj^^7nxKg=GDev@O-|xxP3!L<1yz%Q)844AZ=qR#N<0+YR7WQ#y>wsy7!n1@hqsec`P2sIi{+r#!8^Z$k3d^I z$sz#+La>sZZSGlt+Q1fq`~wPl_7K%Oy`cG!!v4J-%@HcCl9~fTkvxV6R))edL_#r1 zZDilfu+c0}I6)~T91BWA|KQPkHw5$H_{Et^HM(b_ju z-A|nc$xfkTrF!g^H&N?)JwTx!@~xw@SzLVFr33-4K*=mJEHq=;9Z*i*l>lreBOC-J zzJF2~2_lXgL7=cvB7%^Fz{UVo*{H#XO4eWDSj9c8$YvXA_^R+fu&}6|PDxK`lAJc0 zZ;y&9YW+X+O{9_37#(Z>=Fw>1FhHx$f016ReXdC8$)1JZWXLBH3yam;XDSI=pdAr! zJzGepb!lYNFuOmZ4gFpXglD93dyfPsBOw<&(hDfTUr9vedUrIT@7~41`a?uCh7CPP zaj1a7ja=3nR#>YTHk(wz9+8DR6eC<{yCVDM2e^sHX4Ctw2h`!A$y9`W4i(T7z$wKS z@JFuhYWf-u5AD^82TW)zOhgF$?y$=ZAt>CB1yq28ti?wMN67#mDFRK5VYOy~@bQHK zN6Tl1$Jouxnz4ry#|0DowZnnZ)5U|GLR}{j1(hJEY#V35aa&+1K~&!@Ih|E|H{7`; z4xs&?ptH16H%BHDC~zPJjKOZ8rO5wK-#>IKtR1@ioKk zrO{u??X}*GkBW0&!+&PDd{YHC_E%T654h1fk7VwLl&HfhGA6cZg7s>kw0N=A*9>}o z7yM2}CLMHYHUR2~-At5m-;qT-Q=1x+JAV`dCUXli5(uS?YX4Rh_ux{jOy#PE9;`GG zvLrZ8gC4%q7jxkGm2+gSOc6HWw}6G1!1)udq+P5P=G#?&cZ)90!7A8PKp(usXD z8F$QwuJO+k+M`IUV8Spol-?dS4Nvr5kXoLQ>yM7qzft32W^A8*%Fu<~`z@0-c#M+j zPp$ZWas3(Lu6;3#&$kNJm-Rl7j9ofhd~_LmJ*R&`H%=X4&FBlA#)*%@Q+hG!xnYTK z43Qz+7>GrR>F=rIG8xz+%-?>kWw|&Mx>#k(3lHW}pA|`}t_nU@O<}87Uj1pCa-yDc zc4x};SC_T@t;n}Qs0kV zHWBW6j({QuYOuIJaTq$9m}FgGV}kgco^q&|81Y2=A1;u>rVPlnpoM0f#(=CiT_C~< zMbB3W%&Kn&Pl~UKMa$FYS%k6`yYV6(C}EF`Bwr(~N8HamMKXdjiM*nR-WD@x9<;<1 zBGJ11@Y^bEkMf8-axz1Ga2?=(z8bcci9I(KQt?CK$Vtp@H~+-XjuJ_ugDTUo5O+uU zMCdC=w#Sdc5;RepMX6g}l~+kdxjE$3XfYLQ;!^9*k4Lr76FGFDBMvl-g2Y=n+~xaGsfzgn^*z+D4ae=iGL3&lIdb1R~wSyJTbt|F#U(v?@@b4vp}FvTW|{xFhv5a zddJseh70Hf!h}j=kx>9ueb`V@F+BzRoDdWYji$_JuVcTcCf@F_N^*=jIC*;5&MqPl zszA@M9dZSxBWA3b4P&g%77qTpK@Td4h3Cs*G?R;N+4(yKjywig1Fn(_Z9r*S`(HH0 zlqY_an|?;NJ%O0(oW2Iuf=qco1- zo7gT_v7fiOR;hlg^`vddh|~Y-l*|6`?S8Rg=3GnTaV*YcVlp-HfnfGKfZrGCBp>TE zD_jjjc2nR@Q(D*|QKI;8Yv5`#l$9+MLCG;4_=WQzbZofqmrqnpIfK~qGY{ho{A04$ zBeYjMMA7Y3S?&k$9i;0ZZ2OlOQ2kgCAoL>e>ann|9k$5_rEz+5VtG#}aBOTA-_wb)t z^$j7s8cZjm{?2U15qUR}-`NI))0mq9k*JOnTUk}D_}yvRjBgXmFs5Rk8%(dD9_v44 zBqjlW&(SmW%+?|bmVxCq-E)j$0ttMytxgYT?nue5vilOlHKsibTC(IJunDU#PLI#In!=W9FdaPH?anWsXhlVy?^1^$z2eVz=`Cly;$SeN&;z~esteb;&18P% zP;o;BS65n}di+lER}?Blee-h$f>P5Tznn^bx7d5}L1p@5o%h5xZ0f39l_b1Qzay8P z5fghw&F2NmDv8s$uSuGBEB+((D^j9`fYJPzzidJXjqFYq8u{Ia4&2AzDkdPY?#yL5 zw)yX=5X_;Trw{(`p#l!$2XpZ2`QV(asb_v=5|HXvI*_}381O`|;?bH0+(bcwla}!A zWm|?M7!M$UFj59pZwml)y+6-t2ncF=qTU0<;R2K^y?(0`p&Q7Xaf{QjH67{c24@#8q>j@jQVz75`k^DuH!h#uRYl@LGGEBJ%kmag9 z^2%ULzpABLnvihaNaM>7*QJH+S?gv|2Uy<(W4itY?^SSkv z;sYKyCqq_T`Z&daz6FBqQrcLKm9wV-T@{)pZbrZ`DH4+v$T_wF9wlOuHIEK`hltA} zEELKttai3;B)PBY(Nt)R)l`9S-9}ofLoU9C_vo&2KLS2FerFPDf?lvpSd+}PN#PQT zY-#tTxl)W_z*vLgjH`w8fQcPbeihX~Sj+_27(dvUI4mb7)l~nc1X!yC>(pJWY+zOf zbnk`U`cl#3rK$LT{5n&X-#R*pJ~73pBvh9R z7P+Mw&mmvSjsFIt>akJ-(uEhGL+MNtLCu9k)pH31d96;kZ6*!n3!QW({11QiNtI&4 zsfKqx(K5F@P@1r95!h??R3d6a++PG3p!%Utjd;dh!J${%iyUaso}QroI0I!&hxqsB z<2wSC;2lub*M!7yM5yHuBPDdZlN1Q#!#yaqT&~_L_WT_CFrTv)fq6RPj)WZ~MQZ+L ze)}_hAJxLFjT_42m$1+`8L$UXK6>YX3kqj?YsMo&FJaK*xqPQmSx+;hfB9%}o#NR* zll7jf4R6(I2xM~sLtuXYmT^JNl0o^^+MZHcpwrW>4{Mw8YhOm&ijcmBwI}QSsf8o`RRLA6GB)Z zjHgAkP7;jO1~q`rNg(Wlc}NLl6D;O&7FEg6ssj}y%B>{IhaBbqkfEVMQtRQ414~YY z`nNQ)L%?_Cdd69aKljx7S#rD%a0mxG3J|fc0R6H=`bLl+hVhvnzNHJ9bvW)fc$p_& zJ2g%Y#PE!7Tuo4XaY!UNE6QC=80_hJI?5u005t8?pncns7fQB*?20lemLJeNCyS1{D^459pCrSEuH)FmgE>i0pTm;`Jxm29KM{&dEa>NVWG5e?J+%5Lwp$ogX$y3q1t_yv~U*fiP%RhKM&ICa88^Q0d9J0>)a^)V^Fl|L-TP*ScHSVdqmb zB@=C{9*gL&@_J>0n#r7v(kwxT*XpI*Q($0#XXtbIHIiRqq`9q9vp%qgc5>Jyx3DTF z!kz;bdz4C|JnO50cgr}rQ+ZD9E_b7O^027dK`b4=8l>$ZVekKF~M0F#2{v6L7PgnmmlD7c5Fi6t`GQx zQPg5=SOF5WCf%NiLPgkNiP$uD+BI4-7ez^{e;O(^2s=WtDf<`)q(%gnJWUUoKbkNr*AXNDdV7Ot@*+}85IVb zKq4FBrykH?unT;sVjC@R<{Y4MWvzWEZa8pe+V4vyHaK5!aNlfyVCX|$VbN^<3I_sj z*>pmDGZ>IXD?ef{Hnzbn8AuW#b!k_O{dpupu`DbnqbIso8jOG8u=UmtpJetJt4v( zOI|0e01FD$3GmA(B zUaD=Y-?eH;dLpnQL}M7ln0DO|5`u3uJs2dWKU3L>RZ%G zB?D;6DmATq&hVto)qqgEef#iVG!mdj2--AM8aQ|X7amwy^N8TU*bGGW`>m+Os4dvf zV6!O@!;T8XkU=Q|jr(pvbN{Mr(mx`R@8q70_a(8XVbjba(GFmc+@#RDYNH}tkmtJm zv+!Ys;y8F&mc0jMP><0*MLU%w`ENW<+ewRnnHyfZH1QeM81D`5mbb8oMAEUg~E zoxVOp9%)+{HyAN8=Z>cI8X9BcydzWS$tiSn*th4-vhnIBuj5C^>^#~UN`(rLgTsc? zGtJ9+FRfoZ1-Ap8xlZ~m%0kz%lng%I=CRc_ZEr4_5sZ~jQc;|Tov(!hq*r6Hs+xaV z)bY74OwLpOsVj;rFvw@AyL@mmuD_RbwUWIP6Q@ishr1u$>BlVI7shB*KQgaqJyyu* zsfAwi{{3Z$vv<6zOvo{2lnj|A$Fp5MS!Y}FeTNREnrUjNOD~7*N7X6t@Sk?qQfPgP zxF@)I#2>DP1b`1*)3D$0-0JnF_sea+@VFvdy!cdHC^8<(>}D!UQqlk#A}>)mHguVr z=2PK;JFz(DxCGfJt!`>+i;^i!A(0bQJ=-g+;+Jpz)@ub^rWGQjN*Go&7!7BQnBFdZ zQw_@+*|9H~a_JePbupbsEgz@F;aB8~YMzk@O+RKn-5vynCcE%8DY1r?b6@V}MAw7W z|N7%tWN0;B6|HW(xedJM-4+(MpO-vi)}pv}J?=ElZp)^{N}|;?-^fY|-0aF$Vzi_# zu(xJc3cQfxC{ac}wjdAbpkOyl;_AS$TLp3Mj&^U$H~{G;e`_L}PpGFoIK37RJNF!u z-+i~=f?pOJwL14}Qnz4eb8ALU|8^@abTfC6iiSF6>Y zc-fL)s`n?$OB`b>y1F{e)({&`EkjXk&Sg<|q-w?)(%p47@|44F9`k~AX=m=b8(S`A z&sJrz#HO09mkHw*|1Q0t7rG?2dTlIZTw8u5sX(JlY{KO1oV(IG7FsSpp>sL9;}597 zeUfCOqc%x0y&k2e*ALNT38Ez9ng8pid|xl13f1yh!**!!$B=e;crakRsyp3+w=jb9SmUaOyXKDnq)X=xep1?Yi$6Ev!fS`AtsG=?8>sXVDpZD2CJOXB*XuJNIA`qDUc)W^4I zXv|EsFNMO#0^vj7Hl@jGtsc>^zI z)q<4QArB+rxlE>|Q=RFbh0JiNoAd_nDalOn#pBG%VhFU<$bps2tmlQ-WBE4Z1-bW( z3#=g9i7wvd1=5erVM9rxp!EFm53r^-Vj@&B)1N^VC}IyQ)45|NTt?z_-p}TdqvmUw zj?4|i7w_Fi?lYHK-8?HMN~(T*7A1eubPg7i`&a%Ae9BMl=J=30>bXw2;`4yW_|=i2 z4%zbZ6Dq3QbI)%k(?i;?r&@is^cD&>M_*^2O?9==rRh%!x1N`8JB`UPU->Mm3M0v^ z3Y9FXgCwW3y7(DW@-$r;X3qHy)=9&MCz%KMwRFu%+U*oOYN|@N0oFKSdE;8z2p8u4 z-elS?O*`TNZ5Yf4st&H6=9lhom%CBr8UBO|+ra#N#dX;)J8qvJO#JtUr^|WOooYNw zMm8dww@(VwPSuU(H~V*`8GtWXk0$R$Z*98ZN{L3b>_?A?Y^tK2!HD$CjbaMk_&v4~ zHl0Z~kKrP3{pa@=*Jz}Vc2+Hqr%L2lwVMY*31~0~wrt{-lpLSCdTGP4Iwa4S6X1rqJ@xils z^r_gvhKl;!pRHy`4Vew>$}8^ohX`}mN7H+ll+}pf8Y|f@4>kw=#9W$7rX<04q2R(w zs?Qq=5@TFAb-hY=={2nWNXJ`0hUU0aM=X#r@2+G7{apI@*B)>xn=Mz!c+_ z7KYP#?akwU%I|bHEn{z89iE@nkSh^)w)sx*J^n7QDzzx%atIKP&NbU8aj7Bbn3K72VOMDC`V`Wk_C*ukk z$=M(I*}u-gKTrZa@;t;;K_OnBhA-md?NTf>2}*h4UPMrq$U#b#tXtS!7prlqD-E#H zDXSQpsGHsj@>X+)$FW#EAyw)}e9RsYUGVm0UHm6yp6O6=*^W6di)_~1Bc8urVQQus z5ZAs{r?*EDlq9%`J`Bg^zOTS-aXYzxqjAK!(i}P0B+GEA5bV!c?rXGGQ^neM8Xr1& zpWLh3TPV@O)2zE04*CR&094ef(Je`4Y#B$L)AlwCW*kktYAzfd)n3dIqHd&{vI|dK z9k#As*YzX3X{jm@>mXK!J(gqj8%$nbD(c%h@BN`p{+Ae|fOIAHe*~C4BDB7G4ki42wk$zZX18x9M_13qJK2{Yre$ z%x{vi#GtzT(*#miA8BM@yv$o?B^%M6qy-{^8wk*VvN$%PvLvmBOf$_H!LdmH*)MmF ztMyIvzT7h84psH^$v#l3*D~Y3;o(P7XppRBtP!-pr@WGGg0Og5V3*`N`f=#;=ZtJo zRFNIT`7>@u_2B-?8Mce_Fp~Ygk9i|>>isBIi|CW2y}9Y~V4?C1pKAwqwnSWM^h;w| z!b%70^>Df_Z(%%WL)50GbMf7v0%##%jncz5`Q`Q4ld{LvKcAOOrI>6;)f6|}ynR?d zrZi{zIj#{?iP`q2(}m7@Tl&5IbtzxK%d^gTk=bx~>G5)k<9ynYZ_A>@gePu|*DJi^ zB=`a(OX3KhLZX=P__K8rmtP0e9dWD%Y(xZSOvBEG#<0qVeh)qF7WrNbLB$c2I%(d24*E@0#17R`K{* zHDxUEI*l=z^B%ftT3O*i?Bv+>{&4&=8wYEd_~hwToO-U(WAYEA7qg4fTLQ6W$$oV&ff>Dw z*uDbj3k*2I0FqB%ZVsh3tog`s)N0Gksfu<~GdySxbPgVHAC{3kzS0X=ADhrR|I44i zLfZbtgTm?F#ghKr_Cb0?EkQiBAgM|Uxz}&3E z;3X4fXM&wytVp1AQDA*N$92{I1Ww6KMb~qbh(Xi!72YTIgA9$6&r{X#XX&1HbnN_^Gzf!jU3@-W-c}xiRQ< zH*9*+k$#!n$$k6zG`Ixnt>?o6LuSVpLHck7Qn&?Tf#$u?L*{@42=Ut)l^D-jn*_yG%ytMzjx!n}9h>o42 zn~~FwLUpt36eHkMSBX%%t)Wx4+Z3DrS2o7G=PJEVgs5+<;f)qRPkL&|#QR0RqjMi- zv0DIpsvd10WC6@K1;VF=hBR-#HsP9(@Tdv?D27lG=>j|%^aQ5*4+Zq+08s4hJy&a= z7%}N*AG8CeH2tU=361l_o3IIIu+gH6dD3*cT_-0dxt#-3ADy;g>VS8Yz0`R6H};#T z-KNZ~u^QO7s%1=>xg^zsxNZWf+!-kDNvU(+BBx|HR@-QaT_2Se`neKD&DdQlRWW?_ zwP$-cC#Uu1Wg|+KBH2sswK_tJpdjnL4BOF>{)iao6MD<+9tq1*z-6 zlqbdK^-HHtS*H*d2znsos~3~kiLt!m6*HGGcjDUra`1475XzYtoRuh#qfwF*-|Y*e2&47ND9xOCRK%$2bWN=JLV1hixY;W4OV&1|Px3 zi>3*l!GX-v&E3Y?6GQe0pT9`B;W3ig8*jkPra6&>z5m89aweuh^bQj<#~c%b0>gq8 zM-b)sTAoAlfdMK!&&bY>VW{a7Y8%9t0OB(*M;aMe=l3=IB{BaomOAWodkX^FX;@&- zz73)+WX%UWTL82KbxsC(i@1ikCvYHqfQZMe)BhZpB{Kk3i}rzURJK+Xug)2-9w0f3 z6AhC&Ipr}$3{AJ7j+k<0_p(k{rv}Rnjx`u^3gQD01o`|76-I!Dtm^SlyAgq2;2s!S zPe+suSCDRiUg#tjAJF30JutL}xy#5;=x8N)hf(+ePel)vSq8@u^#SJ$kP}Hwj-N@P*sYbM zCpbxh;YHV%0gssP#UJ(46nvH2D*E@8oH3?Kaywe>Z_mx@#?-^)!Ksueppm|&HN_V~K8)K_NzxN84gnkYMM!!4hnPX7W$(bhu z?VdnYyc>emKGy6E6r{g<&@FqQAdD=ZkNLnR$+8StK0=y$5MmS04W}SJ;ph2fG2%-W z?zo`(^nCzkj4Qd};{?@`<}ZP4`eH>zduq#5BlUe4jvF!t>IZC^O8N&04=u+WcDpX2 zzku*;!B7~H0NcTaA^m_J+qF}Qytr7Ubzq7sGybz6>Y|GJq{1Q-5K4=0^g$<9ved(a zLk+XqKGke37(?-1aNfSG+)V?iiMf6>5?AZE&KBuwnts$1Sp$!jRLJd|)!i>AMy`Oo zH-e#0aLVO4j$3|m5P&kKg=ujYV(ryifc*TA~hbZqG|wK_bsZa$~dC<3Mlee zfpo}HeY&sFbMz1$6_1if1fCf^uWvLrnhwXM7iP@MVRNoJF^bDBo>;^sz_o58!L`m< zlrU8kekW#;WPJpinqcMx^I}-_(ehW0Z&k=(q0R0C#Br(G;>4pFU>=L2E6PQ;gWZHtvOl1_!@XMivlU zynv<_K@*E_z3mWH2uXE8zOaj0GY}SY~d(d9FuAr#h~( z`H-{<&3Qy7)xrH;3jTK0RqD+qx;a8pOBlG!U^TiI>kL;+0bOK5#Cl=caP({=BaEmZ zzH<2_NJ2^5pk)bzH$fj47Y*5ID`cKx<;Q^hw+HC(rQ(y<+Z^ENyAi`Eql(YB!~x`kJ{E1_l(JP$eR0yVMqF0&Vp zC@u`)L$F(w)+EeC+sv@iw%pWL^6rgTT~7aQOQ+e4W=(GErQ%E;UFy*CxG$>ogjUns zsckr+I0{_xo>ru`Gv%sOt5ULpYexYX=#IOSA!sWiBj?944L+DNasQ&o7*;B@B+F08J!0 z1_|Y2*G<7kf}le}@|Q1FC{R}q6?#uE1mpaKIK(8^79G)d*Dl?|_ar_`Y)1sY>eR;( z*;XIfbKy*e#_|~yuBWB=WcQ#-dhuw_D9;+eWRa1a9I~c&`!8Kc2$NOV2!DSzAi*ar}ngFbn^|x~&-|o6_p3DE89Y9>T51pdUOVIsuK}L{w^9Ht2jERYhvAN{TAqf zAudWkwqJk7EnzS_2ejfYZxYo;DjC)4?nlNjb6asOgADu<8=22r?Gq~Na(ir`d>EaO zbT>%7?$OD6Rnu78cg~0KS!)t~a$KrG6*0dK60~T{^1+1|d?HuwEHV?(vIndAjTukP zw&rY$nK`LNLPcI+GDkHV3P(+}ZqPRmWt= z>~LnZ9IjUGBtw)UYqD}D%5+g}b{3R~*KYy^tEbD>F|IO7Ava#KhND3CEryhHC^%ku zzXC(qfbz7t2SXWGWJCz&Q&Z;7Jx>EZ?u1JnhD$1D@|KOydLh8A(f*b_=tw|`Ynl3OI4 zX;JqFT1d@&CsyvwdyzxM1D)^vfl8&b-ocx-5ZE$O-LTGwK2$rb1F`9DANY)gX)QfJ|Q8!KcmIfo&S`ERy|5o(TYut=loj= z1+3}}O?${yHbWQ*8e1B@D$FKDKL(Q)?1^=pJK`z&_@gpqUg#z=0G1Zn-{gvjmZMgM34{^@=R%C_6Z zb;h{JNw=9W#R$W8=W#{5v&)3X)(ry!OLB??`goJCs*>bgyn05GF?)#Y7?d$B01R*0 z$AfkfW#^X|QFyfkt*;R``f26+n4$kM9@6rZB(M61WsfwtIQv1ep=sq;L&(Ps+}Mu{ zIm2LX)Y>C?li!pcYii)F9j@Pv*Df?Vys$$tR)+dN(Ta?1^IBmo+Xi*=qe(^=NIjeD zYL(rgxaHyKT%I~{m%~~ju^1lA#V%EKN&?mD1S@flj~4TcBF24e;l4eq`tq$NPR zTr;=AgbhGU+6ODmZmre%LJwJ+`Nso+(od|b#2-2vp@WcE^c;?+fEPTyCt0EEK`gKz z|6XrHD)`vygs}+^ArtVX(tx+k44ug6t(j$ncWm$V-uG64V(-stv(Z{4UW7ZhW8+Z< zZ$K=t68vcNejYg<{m1_&mXIX7NyJ8YU{?Fj!#l~0WPNX#>_PAtK+!Tg9!Sv@J^&?qx+|A1 zN&xf|dwDIKzc_?_C95Eu2c2@-`D9S{K#Pq)D%aV08aBmW?V?kFVYum7iBgLZs(16P zT@dJa+ScbER4fGYT8}A%Uj9)wH_Wt|#10_479ZNpOAp z)SI-?a5IVrq6BGB;q|95b%kt>0}Sj2 z;YaNzZ1?b9M|(17LpCSPEqq2BwB-nLz}Z|%={0HYq3bhArjL+H^`;ps3)BGTQ|hM- z+6}(#CjqSqYy;I>?n5832r2tzz>>(#`AE7@&tC1`O2^C(_M5g79e0>Nijz<$Qc;V4 zL%LdCqvi>R>yYYjRlh3e;EH{uHrnU-)d~=Emz)HwPpxMU8YWDQ3%9Cu*5)|y7$=CQ zNU@K^xPJ?7!>|}DdY=$l?)b)C%EoUCj3rvUclaGppF(J47k`Q9Lr#S-GUk;3P+_x80Q39kX?|T3sS&) zF)$W*7C1$-6X=-Xo&Fc{-{U`Hq8%AVg?mfKjZ)&}%^)h-h+`;F;U2ILSZfJN%Wd3?_ke zZHx**YB&2($Zq>khyUzS5{3Oq6pWC|ZgBQ{|4v9x8b<&*>I?cB+4=T>j@pik`>$3Q`gX^H610#QJp+O9}Ns`dmNm**_wYH%-y|DmhP89Avgntr&c51 z>ri__9H5mtBn)Z$M5G@wghp~T^Vsiei$on`#h}C9Y(tgs%&;Wc-k4`l-Q+<)Xs&}j zr9@~t1h{CMiepbWH&eIhDGrk(#%rgXkJ5perAoFWl5 z$u6ES?cob#4^tXjO8^Sg2DTGXj$|8|y}FHhE#_P{MH=7l*#02mHbMLto`2#%yiYMz z&%OMbx2KR(E#x;Qjc~DzL(s)tNFE&nN2mVF{LTT~0nk6yq}~uv>-7m5$ZmU2JkW0Y zPI4E4#=nC+hWcay9R36SN$7rqEAMePx-FCxuz$csA9x!~ANJN7HGP>g zsl45S1nMSpd>IlS?80@ZE5~R-7=Ity9hA&tg~|8mOS^Ksa1C zyAXx73;pp}AmWH4RCqQntTE_A=E%{+zkb`;{YpJ8R-_c!+LI$_O3567 z=g#-f5I~KZI()?Ogb5wc97w7N84?Xa14TfMc+Q@B(wJgdPSTqoiI2fqWXmcBy}f_6 zlQ^thSo4%bAl~4ne&B$T5H+aC1%^@(-gPW7>>?<6)BRik(ATU;D68@m&LAz7V9KTAN;YzgTVcwZm6+g}i>x zMSJR{tG4RF*Yt(=fX|AvZlKS}lMW}ibC(j|K|HKL0yd3e*7{RueqTX`|L3m1k}_`o zqg>!&!R?J=g|gtjQAg0KL>&~|rK-J}m!Q>T&H(9}IA5945df)|NrWkI=BRh+skM=|| zL=&x*+u@p9vw?{#?WIy7Q8Ug^_CpRg#rEob(t*~N>7WpC5iYTTyDJ2%aa*^d#Snb7Uay7rq1^U|6d z_?@?}oky#W^Eg9IY-D+rGAF9Q<=!`}s;cFyMAfOlF_@O)?l#{#snNW)NW9964o}0s z+NvjyZzu_tKR}ko<8AduH|BLzUTnq$a~V$QYIIx{OTHG98a*i=TQSa;h*g|tsw$yL zk3R$RKR>#ER(`Y#H`C=1;JcpOn&+uAp9%Hfy>2wUJDech*KK_^ZqR2ms1#P@A(Rf$XqwmkOqZdo_aU?q2yu#t8_zTh`53EyaniJ<{xxUVzKIAN=sa`YeskW2M;u(y@?-BF2DR8><2~#s zwLP+Pap`zuV#Zvyrh+J7P)H}2^!&*RfG@}$pg5(6=8XFP!@okIG-9+_i?V+T5Cq- z30c#M9s9QPRHM@izkTCcyUg6!+i_xzkF?YAul2#`KG-@K`_s`$&rtHlBffH6m0NB3 zcl*ByuLdUr_n@-Z9B z?#ZFUns&FItK!%dBt@>RsMXoB_uTd`IY77vnqn|4A2TZ1JZ&ZyP z-H!k$(^UVw(B!6@y0}{0M2w#x>)efZ6S+o0WT{YWu-m%s6)z&IK%`+zN>01fw+}LI ziaxi&BF2eTTpn~k3piaj-@^AKTn8ea9pG3mGD^U8==EH27hT10KQu1Fg@$0dY+sgU zuq_eMvDW^0*4jH>?Ju4R$U-d1>4(px+=x6Yb%lhe-5xl&_Er;zJy2v#BT;!03LzuX zZwGHyJh*I}T}jtGG?(b1Qec8Xi~0vBsvwJPBgf>Q{TB~c@Q{; z1>zfr0bA?}d8&#C2|#t{f;uB=6Hlk9!98IURJ!BYM9*Niv=;W~(EcD&jYjOzWOzoC zZVA?=x*flzp;Kg+!8O#uTUGrEXKa?+%f#n^M-~VSngNv2&PxPr9^o-u!(>irPu=?S zdNjjEdH)Wa!`pn}udzu@J{J0NnRA~EG&Z=@akq3$`aDtst2~GPuI*BHCs9PH1bQJs zH;o03E-N}#zFUi@9npfyZ({gAqGHpeNQV#H_ipxI@A5=zq18x5RP{wTshpa z-QalrfnThedN@bI42_X0jTy`ZpAC%hqz?P^1W?dMX{Oy+_F&D4xwvKmz4mV?u&Fny zYh(55Q^(t{H>B^(rw(+4ZqBkPuvn*RAN3mPtmoLjtbkM#M4G#NFZZ?^=)8yaOFx#! zH}G`jMDEA`McX&Vh!!h_STx*+)x%Je9j;Js%d|s=%Rt zRB!_m%-_ju6>-AFjhC7Gs7LCcal$Jm;E0S(E9d)DWkXW%;7YVMYA zEG9GG~)bMMh3}BQz;VXx@1RZ>`Xe zvia+PQbi@TqPS)Uus=&lhTZa4>B0I>q2oZar8>8zRzjEV0&`HuIOsaGtxfrLqu^=1 zW7DzcOw|Zp$up?+$uMKKhPT4%^;n;6pXAj`4vqJBC3l5#pT>Jxjjjgw6^4eIU0?~p z>HdXW{o7$Sg<`r&41^5Nex%}xpvX{8SDVwpM(%QjEbQN%&EpLR>2^6Hug5GVi;FI{ zjT54#wkUJ1I!0FIwN|!h+E0-6+zGrEzxsI{fnZah{%1-uDUb8?s~CJZSgaL>S@X@i zM_RPT8K+XrL`S;rtq9TnImm^7#T7nY8!j{#oMu|!BlUUvZL%lEn7ELUUKd^uZPg>2 zs5)e(UZ<7UhAQn8J#u?eU?sR-G=;_Yn^8KZJ2(^Q?EC&J+#heEIPby>5@?}HqH!T|Rter2#6lEGQ=h-_H@EczyP;1i?Clo)5SJ>K&rc7pVExa~x z#!Y{IN5tv)R<(};+pa>?M({&L2b{lExV*=faUF-HdTzT9^7Ku#hi6z;afwE|S{|1o zZ6nT3wgCxT+BYt3gq*fnh9g^0D_gd)3!Ze*w9L{yJG*vPWrGgr?4hB--c{+WzXiVB zl~ejK#4PsK?6I!81#+BtTH8-;A`QY zzQI@WB;$F={Oey!J=;o8<_4e;uB#pT$96#7^l;84s|2yS-p4lejS55xUO<#t2N^s@ z`O?!ZRHGn8*{*=CuWIg(PWy^na(s`>dViXZPB&o#GWmj@RNl((`l4XReC_a(keqQ> z7SX6hKNKeBU{abOO837hbyD;@fiW~LBov2g@`eOzP}cv_7B%m&B(Mxk}B{~^N1 zE^_D(#+4=o?iW<<#@5zixg=4GhWh|dDFCJ>y9lTks_hNMuS=>6giq0V#7Jh0N7JYLgHaAAOTy>v;SFH&Z|Vib}$#9AFQUl5EpuFIS-!PC9=%@8=HL$yXmrE2r@H^|5z4%mDJa=8r@6 z(E6YOE$1ba{yWWSe0Zw~vlFHl{!Ot%ROJC+uZ)uHlBD$mp;E9!{$lpW{bY1~1(5O_ zgHo5aSKxolUVP z(#MHayNlh=CO}+eAxFlhZT-Z`Wv+wOPamTn-q@DE z%BFjJ;>9S=d~40}BFai5m!Ffc1cXJq(#Q0DGR!`QxjW{M=$5ri3l>WmF~jjkRQ~*Z zb5&&R2~Bi9%Y^Rf-#XH5FPiQ9FSWHitLc({?uKj~6F4)JEhdN7E<1-37BV<*UWZZ_ zU)St|eSLj-D(z`>TH2aVcij#Ax)bOYIfr$2Cy484XJ}o^3}S za~r}Dj{D@D>w*l@<{UZ0D;l1~?}E3tbHB(mKh91ap6EJ}my@EfR-}$=4y0w~HnTm+ zx~`YI&?oT&X<3gA)tkR2OxL~_LzYDYB^-EJtOnLc8JW@hWo#X_Hi6qKpZE6WLCGaU5p~To05?-e;wwWoX6ry#Q$Ja? z9~&jTb4%eYwgoN|e+t{R{}j;*ilRI(Ai)CC?3k11G{=}QapN)2~UY5WMJ zdg=QNCYiqd>5?p@!i`q@lH26DGT-?be_GaNsHXlmkjs`a(c>e&WWnf&`4eHtPv6(} z|1+$nfZIYIqnS8DGk$=2WFK+gD(tqI&t)V3KloVu1MI&Y=?gYSGivb8zM7g7>7{7+ z(GFb0Cj9#lL?}xAAGOE&hqB-fmaEFft`ZQM^3&h?9mnpC*NZ02wv?HxOgUxGg=^uX z)cghb$zYv_wfqR(SmyyVcdN+ah`GpHk5Xps+or)-97Yvm(=}~8;yCH_>)axsqBhKE z`YWw3Tuf^|Y8q4otYCtf-0I%gIAWCkQigt$>&5KbV_dP6;F5xmF|t|rk(?Nwexyo5 z#KH+Oz0I4X2$em^Xe7w-BP5|bHmN-p-q>A=xLlPxFjx5gM)dT+C`sHHlA&lxNGx7P z$cV5Y9Dtq9X9EKUL;D2-i%<4hg9AO$P+(X#Y%B&aOuUf+rAcIJb7C9&L8;*U8!36f zLLExSAlPwyJU6^Bf&>N;$Io82a01CUPf!&>8de(?qtqZto2D=$%=`*JK%Nb$tz$E$ za$VPC!+ZCxtR|{BduuNdE1!D_m+>TJk$w|F1`(q#3hMh$l;B0ZNFdL03Ded*3oXE6 zc^DHDKBT!lK=mlH*1I&Dk)bvNM6J2j+ftfgwO}k4Zw_!k*?33#_gt_?IX>BiKrUrL zyqSO!JA$y_M14SeN_1}3@yu4hx_=In`jLu*(BMUMN{CrYDMZ@O@s^#NT&VNAR@T+T zf?(RmUMv@O`Sy{ax#>je%z2Hddv)58dyuYk^Pfq3sd4#(c9W@;rtBt@G6xR}3{CWF zO9c^toj$Uql*1N0#m;f)OHO~$4Y4voF!Uk|tRn4GXGReCVuZCkeg!>|*qcJS0pel`h~J4W2Qx8jO$$%?0k&{=qw6mfSDCIR!TVNT`GxGANk;v>o~{;<)S zr)ro=dBInD%h}ub($OP2^#1sVVtTp&>u4$(_GLxC#J$RZ+axP<_JRS|t~_e_(P^x()d-dBqOD_4#BlE#((TOYDDzHFrrh39 zt)HA}1p9Q_2rg*Te{cYn>JE!VP5;`ep1Ckf9SswZ)gEOv*I|IUfRel=!@qVg5-l5w z1HDL=jF=Ou+Rxs330d6I6#0R^(&~*nq9J zb{u|>K1(iIT|kno9u*>#4t7BkHB)FtAnBGWazsZ1`SgH3HGPPcUhVk_J1_C~9{jD3 zj3&L%FOW)TR~^$6su+We0n~91M92~9mp(vRq%|^6V30+qgD9A9?#``Ui-%dsES#T% zAseoAAAw$f0$`m8N0-C$nwU&EP#H(}JV31W5OyyXQ^(aUFy&yQd!rPY0P zCjHXnB|#MwW_%qqWBbIJ@^_x)!aX9Ztuscy0?Zpx7CKy`2;k_+Lu>e~1lKeUIcckuaIJpG-8$|A;@M^8T%*P!U5Oa5 zvaB9L)?uf8^+zLXIL*}SO#D=(ux&bgThpQbQ7Xkr8o8Ib?YJl_9gkagbM6PgP-9ur zkb59x!q)a(hN*LTKBnPo8x&|!L_L~)kUY&Y?5d~~CJWNyTd_vU!;U-fq0}%1x5Q+! z#&YdGcR2_)hHK1-3=fZX;M<}5DV66q*JlX0Wvrom#i)2%LS0kw67SV|6phf(c#w3F zl-7~G*^t|1C^PGCM9JovsoRrg-o=VQ4)ljyM^ljq5svi)u;qv2e8%wPwbp8h*sr|l z{AeSi)e*cmpR$hdRqH6vixe7hWd&dGhOGy?K}FK*XpoNBdI{^+y~)(3=LLGfK7;i~ zZUR?E^#ZT1A{HezPD}%fDPXhvH_t~GcYJg+9 zt8+X!k*cs&*Hv;eW*KJoZPP})F%GK|nRRO0fwETE&^A)Z_q=yTOE)@{^}AsFK$Vp2JH10mM_cuEt0U z+$P??=dyt=Bm$?Bzorf^J#UubS4%EG_+V-E62-_!ss~6I_S_9N@4L7W zm)e5hYzwZn5?+JHt~tq;l*5a|5oslnH8-n@OKg)3@lSh*tj)R=v8w;J$vz5g)a)lt z+Nwm|YBYQTiBy7p$yA!jhcWsYYm8kWZtUpqGPEz#34$I?l4&`R4}5&r9QS&F{`w^+7qit8KS(zKsk&Q{rbFWrHf8Zz}y%tUERq{%-lkGb&4_ z)ptL}h^H~ih$kLJdGc_MeOlzt#cen1<7U*@rn`(TZyGq?bq5-%>knZy`w_<=;^{V( zX8(I%MzE>)5}jiD>@G_(7*da>!s86nTR z;Ydfd!ko+`*}L|MMuZBnT&eKKl>3K+%Q{@oOrn0~iov@ogAHCs4K;3#>hVAd#`V|_vbbHR)9hknK4tuGKVv>xEaKz#TU

)o@RC# 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


E!`m13tPDCg;nsSiy3@0R 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 z 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

$~D?>C;UwI{(`=Km9m8} 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%0DufPU`NdD|#v?d`>x3{{LdN^ThPYI{`A_|xU!{ht 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�xK!0PN%ae%+ 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 tor!K140X>oh+-sj+#yCABmJF(O>p>1a)CLlb( zBRrvft-&HhsXd^eYb^Mw3mfy zjowq$sA@ZXTe=yVAqHWry$nwBogWP z2ru;&d%dm`K>KJ!X9*XCCZ&*SY+Z2n2-QwUy#yvDIlyM#461;IydgJ6JIU4sG6D52 zt-w>qA}&267ED!Kc=D3^Mp{n(D-UkKvrG9bAkxa$6akGY54`n-QUb;s$6P!`KlDb% zzog5jF|NWrYvkR8@9a_FZWkmAocqNPNb(Kl!~IE)10eFpGJ%ZNM6Qxf!aAgyB(md9 zdNxc-WqqT)fX|k8mG$&Hl}7w3*WJwc+1lMig<)&8)4Av&za8rI9JN9udRr8aXfWR; z8kPU6K&g+M98E`^pzWI~ab>6RPSaY$^eUS;k>&X>0?$r76qRLn1B~`Ka>AieArGuNk5G?J z*!)4*SAbvjy*Mx?pc#A5&55MZVusYm zmkaH*-3*NqzLO&cV&qqs8=597+vl{by32jU)6Z2ZMXOa-FSW^K2Vk|HlPb(;UT-($ zj!zB-e601p`Mc)z%MyOA_MUXRw~5;i{>McQO|Km}R^W_5aA>za26%zd11X}|=1fwR zubm2jeK_^>)IZ}S*l!o7KJUlt!=~c%oVut#bDc{vOPIdu5-2-u8!UG1E~fJhB*YRR zAK~7Th=D>ont5m*;i>Y+25)hgqf*wAw3(79J7jk#ZaSRi?J^w0G*pZgC|C^nej_4{ zD-X^pW!SCAG26Twa_O# z5B;^kJb<){2fU0``_-EQU>-5^=P{k>%RE{SCj2x`2>#P{vxw|{-$U$?bpTpX8$!

&m?$&?JntlJ$U*luYLA8$eGS1-Qux21 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 { + let unsRegistry: UNSRegistry, + seaportProxyBuyer: SeaportProxyBuyer, + seaportContract: SeaportContract, + conduitController: ConduitController, + usdcMock: ERC20Mock; + + let signers: SignerWithAddress[], + coinbase: SignerWithAddress, + seller: SignerWithAddress, + buyer: SignerWithAddress, + reader: SignerWithAddress, + feesRecipient: SignerWithAddress; + + let tokenIdToSell: bigint; + + let seaportSdk: seaportjs; + + + before(async () => { + + signers = await ethers.getSigners(); + [coinbase, seller, buyer, reader, feesRecipient] = signers; + + unsRegistry = await new UNSRegistry__factory(coinbase).deploy(); + await unsRegistry.initialize(coinbase.address, ZERO_ADDRESS, ZERO_ADDRESS, ZERO_ADDRESS); + await unsRegistry.mintTLD(TLD.CRYPTO, 'crypto'); + await unsRegistry.setTokenURIPrefix('/'); + await unsRegistry.addProxyReader(reader.address); + + conduitController = await new ConduitController__factory(coinbase).deploy(); + seaportContract = await new SeaportContract__factory(coinbase).deploy(await conduitController.getAddress()); + usdcMock = await new ERC20Mock__factory(coinbase).deploy(); + + seaportProxyBuyer = (await deployProxy(new SeaportProxyBuyer__factory(coinbase), [ + await seaportContract.getAddress(), + await usdcMock.getAddress(), + ])) as SeaportProxyBuyer; + await seaportProxyBuyer.addMinter(coinbase.address); + seaportSdk = new seaportjs(seller, { + overrides: { + contractAddress: await seaportContract.getAddress(), + }, + }); + }); + + beforeEach(async () => { + await usdcMock.mint(await seaportProxyBuyer.getAddress(), ethers.parseUnits('250000', 6)); + await unsRegistry.connect(seller).setApprovalForAll(await seaportContract.getAddress(), true); + tokenIdToSell = await mintRandomDomain({ unsRegistry, owner: seller.address, tld: 'crypto' }); + try { await seaportProxyBuyer.connect(coinbase).unpause(); } catch {} + }); + + it('should execute Seaport order via Proxy', async () => { + const priceToSell = BigInt(ethers.parseUnits('100', 6)); + const recipientFeesBasisPoints = BigInt(50); // 0.5% + const feesAmount = priceToSell * recipientFeesBasisPoints / BigInt(10000); + const { fulfillOrderData, numerator, denominator } = await createOrder(priceToSell, recipientFeesBasisPoints); + + const initialProxyBalance = await usdcMock.balanceOf(await seaportProxyBuyer.getAddress()); + await (await seaportProxyBuyer.connect(coinbase).fulfillAdvancedOrder( + { ...fulfillOrderData, numerator, denominator, extraData: '0x' }, [], ethers.ZeroHash, buyer.address, + )).wait(); + + const sellerBalance = await usdcMock.balanceOf(seller.address); + const proxyBalance = await usdcMock.balanceOf(await seaportProxyBuyer.getAddress()); + const domainOwner = await unsRegistry.ownerOf(tokenIdToSell); + const feesRecipientBalance = await usdcMock.balanceOf(feesRecipient.address); + + expect(sellerBalance).to.be.eq(priceToSell - feesAmount); + expect(feesRecipientBalance).to.be.eq(feesAmount); + expect(proxyBalance).to.be.eq(initialProxyBalance - priceToSell); + expect(domainOwner).to.be.eq(buyer.address); + }); + + it('should not execute Seaport order from non-minter', async () => { + const priceToSell = BigInt(ethers.parseUnits('100', 6)); + const recipientFeesBasisPoints = BigInt(50); + const { fulfillOrderData, numerator, denominator } = await createOrder(priceToSell, recipientFeesBasisPoints); + + await expect(seaportProxyBuyer.connect(buyer).fulfillAdvancedOrder( + { ...fulfillOrderData, numerator, denominator, extraData: '0x' }, [], ethers.ZeroHash, buyer.address, + )).to.be.revertedWith('MinterRole: CALLER_IS_NOT_MINTER'); + }); + + it('should withdraw USDC from Proxy', async () => { + const amountToWithdraw = BigInt(ethers.parseUnits('100', 6)); + const initialProxyBalance = await usdcMock.balanceOf(await seaportProxyBuyer.getAddress()); + const initialRecipientBalance = await usdcMock.balanceOf(feesRecipient.address); + await seaportProxyBuyer.connect(coinbase).withdraw(feesRecipient.address, amountToWithdraw); + + const recipientBalance = await usdcMock.balanceOf(feesRecipient.address); + const proxyBalance = await usdcMock.balanceOf(await seaportProxyBuyer.getAddress()); + expect(recipientBalance).to.be.eq(initialRecipientBalance + amountToWithdraw); + expect(proxyBalance).to.be.eq(initialProxyBalance - amountToWithdraw); + }); + + it('should not withdraw USDC from Proxy by non-owner', async () => { + const amountToWithdraw = BigInt(ethers.parseUnits('100', 6)); + await expect( + seaportProxyBuyer.connect(buyer).withdraw(feesRecipient.address, amountToWithdraw), + ).to.be.revertedWith('Ownable: caller is not the owner'); + }); + + it('should not execute Seaport order with zero recipient address', async () => { + const priceToSell = BigInt(ethers.parseUnits('100', 6)); + const recipientFeesBasisPoints = BigInt(50); + const { fulfillOrderData, numerator, denominator } = await createOrder(priceToSell, recipientFeesBasisPoints); + + await expect(seaportProxyBuyer.connect(coinbase).fulfillAdvancedOrder( + { ...fulfillOrderData, numerator, denominator, extraData: '0x' }, [], ethers.ZeroHash, ZERO_ADDRESS, + )).to.be.revertedWithCustomError(seaportProxyBuyer, 'RecipientIsZeroAddress'); + }); + + it('should not execute Seaport order if contract is paused', async () => { + await seaportProxyBuyer.connect(coinbase).pause(); + const priceToSell = BigInt(ethers.parseUnits('100', 6)); + const recipientFeesBasisPoints = BigInt(50); + const { fulfillOrderData, numerator, denominator } = await createOrder(priceToSell, recipientFeesBasisPoints); + + await expect(seaportProxyBuyer.connect(coinbase).fulfillAdvancedOrder( + { ...fulfillOrderData, numerator, denominator, extraData: '0x' }, [], ethers.ZeroHash, buyer.address, + )).to.be.revertedWith('Pausable: paused'); + }); + + it('should not withdraw USDC from Proxy if contract is paused', async () => { + await seaportProxyBuyer.connect(coinbase).pause(); + const amountToWithdraw = BigInt(ethers.parseUnits('100', 6)); + await expect( + seaportProxyBuyer.connect(coinbase).withdraw(feesRecipient.address, amountToWithdraw), + ).to.be.revertedWith('Pausable: paused'); + }); + + it('should unpause contract', async () => { + await seaportProxyBuyer.connect(coinbase).pause(); + await seaportProxyBuyer.connect(coinbase).unpause(); + const priceToSell = BigInt(ethers.parseUnits('100', 6)); + const recipientFeesBasisPoints = BigInt(50); + const { fulfillOrderData, numerator, denominator } = await createOrder(priceToSell, recipientFeesBasisPoints); + + await seaportProxyBuyer.connect(coinbase).fulfillAdvancedOrder( + { ...fulfillOrderData, numerator, denominator, extraData: '0x' }, [], ethers.ZeroHash, buyer.address, + ); + }); + + it('should not pause if paused', async () => { + await seaportProxyBuyer.connect(coinbase).pause(); + await expect(seaportProxyBuyer.connect(coinbase).pause()).to.be.revertedWith('Pausable: paused'); + }); + + it('should not unpause if not paused', async () => { + await expect(seaportProxyBuyer.connect(coinbase).unpause()).to.be.revertedWith('Pausable: not paused'); + }); + + it('should not pause by non-owner', async () => { + await expect(seaportProxyBuyer.connect(buyer).pause()).to.be.revertedWith('Ownable: caller is not the owner'); + }); + + it('should not unpause by non-owner', async () => { + await seaportProxyBuyer.connect(coinbase).pause(); + await expect(seaportProxyBuyer.connect(buyer).unpause()).to.be.revertedWith('Ownable: caller is not the owner'); + }); + + const createOrder = async (priceToSell: bigint, recipientFeesBasisPoints: bigint) => { + const order = await seaportSdk.createOrder({ + zone: await seaportProxyBuyer.getAddress(), + restrictedByZone: true, + offer: [ + { + token: await unsRegistry.getAddress(), + itemType: ItemType.ERC721, + identifier: tokenIdToSell.toString(), + }, + ], + consideration: [ + { + token: await usdcMock.getAddress(), + amount: priceToSell.toString(), + }, + ], + fees: [ + { + recipient: feesRecipient.address, + basisPoints: Number(recipientFeesBasisPoints), + }, + ], + }, seller.address); + const seaportOrderData = await order.executeAllActions(); + const fulfillOrderData: OrderStruct = { + ...seaportOrderData, + parameters: { + ...seaportOrderData.parameters, + consideration: seaportOrderData.parameters.consideration, + totalOriginalConsiderationItems: seaportOrderData.parameters.consideration.length, + }, + }; + const { numerator, denominator } = getAdvancedOrderNumeratorDenominator(seaportOrderData); + + return { fulfillOrderData, numerator, denominator }; + }; +}); diff --git a/yarn.lock b/yarn.lock index a77746d3..a5dbf7c7 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1214,6 +1214,16 @@ __metadata: languageName: node linkType: hard +"@opensea/seaport-js@npm:^4.0.0": + version: 4.0.0 + resolution: "@opensea/seaport-js@npm:4.0.0" + dependencies: + ethers: ^6.9.0 + merkletreejs: ^0.3.11 + checksum: dcc921db35818da0111c7884e7aeb26a3b2e1909ad9395fd467ae429dbdca319e4673115d91c378fc7b6bf422c80fb0f56477813c7c45c3f0d66e7dfbc0ad02b + languageName: node + linkType: hard + "@openzeppelin/contracts-2.3@npm:@openzeppelin/contracts@2.3.0": version: 2.3.0 resolution: "@openzeppelin/contracts@npm:2.3.0" @@ -2891,6 +2901,13 @@ __metadata: languageName: node linkType: hard +"bignumber.js@npm:^9.0.1": + version: 9.1.2 + resolution: "bignumber.js@npm:9.1.2" + checksum: 582c03af77ec9cb0ebd682a373ee6c66475db94a4325f92299621d544aa4bd45cb45fd60001610e94aef8ae98a0905fa538241d9638d4422d57abbeeac6fadaf + languageName: node + linkType: hard + "binary-extensions@npm:^2.0.0": version: 2.2.0 resolution: "binary-extensions@npm:2.2.0" @@ -3128,6 +3145,13 @@ __metadata: languageName: node linkType: hard +"buffer-reverse@npm:^1.0.1": + version: 1.0.1 + resolution: "buffer-reverse@npm:1.0.1" + checksum: e350872a89b17af0a7e1bd7a73239a535164f3f010b0800add44f2e52bd0511548dc5b96c20309effba969868c385023d2d02a0add6155f6a76da7b3073b77bd + languageName: node + linkType: hard + "buffer-to-arraybuffer@npm:^0.0.5": version: 0.0.5 resolution: "buffer-to-arraybuffer@npm:0.0.5" @@ -3969,6 +3993,13 @@ __metadata: languageName: node linkType: hard +"crypto-js@npm:^4.2.0": + version: 4.2.0 + resolution: "crypto-js@npm:4.2.0" + checksum: f051666dbc077c8324777f44fbd3aaea2986f198fe85092535130d17026c7c2ccf2d23ee5b29b36f7a4a07312db2fae23c9094b644cc35f7858b1b4fcaf27774 + languageName: node + linkType: hard + "csv-parse@npm:^5.4.0": version: 5.4.0 resolution: "csv-parse@npm:5.4.0" @@ -5339,9 +5370,9 @@ __metadata: languageName: node linkType: hard -"ethers@npm:^6.1.0": - version: 6.12.0 - resolution: "ethers@npm:6.12.0" +"ethers@npm:^6.11.1, ethers@npm:^6.9.0": + version: 6.12.1 + resolution: "ethers@npm:6.12.1" dependencies: "@adraffy/ens-normalize": 1.10.1 "@noble/curves": 1.2.0 @@ -5350,7 +5381,7 @@ __metadata: aes-js: 4.0.0-beta.5 tslib: 2.4.0 ws: 8.5.0 - checksum: a9fa6937f57be00f217cac045752113f0be6ecbef77b90d653202f4127930023e86d20f06631cc4114bdbcf28fcb7dcb5244a88e2e430df1dfcb623e93c23366 + checksum: ddf398c91f584b9e643740ec17a9c82b4a1c4ea3fb6efd00f1a043b89d1ec6f9427aa80894f75850ee805722e91b8d054bce18579a2c621226302c096774df90 languageName: node linkType: hard @@ -8227,6 +8258,19 @@ __metadata: languageName: node linkType: hard +"merkletreejs@npm:^0.3.11": + version: 0.3.11 + resolution: "merkletreejs@npm:0.3.11" + dependencies: + bignumber.js: ^9.0.1 + buffer-reverse: ^1.0.1 + crypto-js: ^4.2.0 + treeify: ^1.1.0 + web3-utils: ^1.3.4 + checksum: 93edb8ec66aa6c9f59aa0902e675590e3791692893bb3e8c1018f758367ded1bf7d6b1057ccde3729b283ca946a316838a631a922960b76889b3be528c43ef4e + languageName: node + linkType: hard + "methods@npm:~1.1.2": version: 1.1.2 resolution: "methods@npm:1.1.2" @@ -10172,6 +10216,29 @@ __metadata: languageName: node linkType: hard +"seaport-core@npm:1.6.4": + version: 1.6.4 + resolution: "seaport-core@npm:1.6.4" + dependencies: + seaport-types: 1.6.2 + checksum: cb505249c6b771532cc175cdac7db0b05014c56d1274cf12396c5c0734483e230b18caed52156536b9d2d17da094e60826a4b75f499dba5f4579399531e45039 + languageName: node + linkType: hard + +"seaport-types@npm:1.6.2": + version: 1.6.2 + resolution: "seaport-types@npm:1.6.2" + checksum: 9fb3546a9a6af324cd509380aa68abc255a1199a401c066c143136b5c09d1df0ae49bd1844828414e7482d7b8fd13abd7f144fa22b44be8309fe8ead9fc98715 + languageName: node + linkType: hard + +"seaport-types@npm:1.6.3": + version: 1.6.3 + resolution: "seaport-types@npm:1.6.3" + checksum: 456407167efca1c01b977da4738689816e85e6a6e7bf8e6c10d1991df04a2801fa4cc389260cc675992451cc9a28f37dc5ed2b1ab794a9842142b9ee72cbf059 + languageName: node + linkType: hard + "secp256k1@npm:4.0.3, secp256k1@npm:^4.0.0, secp256k1@npm:^4.0.1": version: 4.0.3 resolution: "secp256k1@npm:4.0.3" @@ -11167,6 +11234,13 @@ __metadata: languageName: node linkType: hard +"treeify@npm:^1.1.0": + version: 1.1.0 + resolution: "treeify@npm:1.1.0" + checksum: aa00dded220c1dd052573bd6fc2c52862f09870851a284f0d3650d72bf913ba9b4f6b824f4f1ab81899bae29375f4266b07fe47cbf82343a1efa13cc09ce87af + languageName: node + linkType: hard + "ts-command-line-args@npm:^2.2.0": version: 2.3.1 resolution: "ts-command-line-args@npm:2.3.1" @@ -11632,6 +11706,7 @@ __metadata: "@nomicfoundation/hardhat-ethers": ^3.0.0 "@nomicfoundation/hardhat-verify": ^1.1.0 "@nomiclabs/hardhat-solhint": ^3.0.1 + "@opensea/seaport-js": ^4.0.0 "@openzeppelin/contracts-upgradeable": ^4.7.3 "@openzeppelin/hardhat-upgrades": ^2.0.0 "@openzeppelin/upgrades-core": ^1.32.5 @@ -11665,7 +11740,7 @@ __metadata: ethereumjs-common: ^1.5.2 ethereumjs-tx: ^1.3.7 ethereumjs-util: ^7.1.0 - ethers: ^6.1.0 + ethers: ^6.11.1 ganache: ^7.9.1 hardhat: ~2.20.0 hardhat-abi-exporter: ^2.2.1 @@ -11679,6 +11754,8 @@ __metadata: mocha: ^10.0.0 prettier: ^2.3.0 prettier-plugin-solidity: ^1.3.1 + seaport-core: 1.6.4 + seaport-types: 1.6.3 solhint: ^3.3.7 solidity-coverage: ^0.8.4 tar: ^6.1.9 @@ -12114,6 +12191,22 @@ __metadata: languageName: node linkType: hard +"web3-utils@npm:^1.3.4": + version: 1.10.4 + resolution: "web3-utils@npm:1.10.4" + 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 + checksum: a1535817a4653f1b5cc868aa19305158122379078a41e13642e1ba64803f6f8e5dd2fb8c45c033612b8f52dde42d8008afce85296c0608276fe1513dece66a49 + languageName: node + linkType: hard + "web3-utils@npm:^1.3.6": version: 1.10.2 resolution: "web3-utils@npm:1.10.2" From 9ca710fcc942ea0e747ea93e5fcd9d4aa1fd3d9b Mon Sep 17 00:00:00 2001 From: derain Date: Thu, 9 May 2024 22:08:23 +0300 Subject: [PATCH 02/21] [REG-1273] - Add tests --- contracts/marketplace/SeaportProxyBuyer.sol | 3 +- test/helpers/metatx.ts | 4 +- test/marketplace/SeaportProxyBuyer.test.ts | 356 ++++++++++++++------ 3 files changed, 264 insertions(+), 99 deletions(-) diff --git a/contracts/marketplace/SeaportProxyBuyer.sol b/contracts/marketplace/SeaportProxyBuyer.sol index 0a6146e5..29f85670 100644 --- a/contracts/marketplace/SeaportProxyBuyer.sol +++ b/contracts/marketplace/SeaportProxyBuyer.sol @@ -63,7 +63,6 @@ contract SeaportProxyBuyer is bytes32 fulfillerConduitKey, address recipient ) external override onlyMinter nonReentrant whenNotPaused returns (bool fulfilled) { - // todo put TokenId in extradata to use protectTokenOperation ? - clarify if (recipient == address(0)) { revert RecipientIsZeroAddress(); } @@ -86,5 +85,5 @@ contract SeaportProxyBuyer is _unpause(); } - uint256[47] __gap; + uint256[48] __gap; } diff --git a/test/helpers/metatx.ts b/test/helpers/metatx.ts index 3427effe..e06b54c6 100644 --- a/test/helpers/metatx.ts +++ b/test/helpers/metatx.ts @@ -1,5 +1,5 @@ import { Contract, BigNumberish, Signer, Interface, solidityPackedKeccak256, keccak256, getBytes } from 'ethers'; -import type { BaseRoutingForwarderMock, MintingManagerForwarder, UNSRegistry } from '../../types'; +import type { BaseRoutingForwarderMock, MintingManagerForwarder, SeaportProxyBuyer, UNSRegistry } from '../../types'; export async function sign ( data: string, @@ -33,7 +33,7 @@ type ISignerWithAddress = Signer & {address: string}; export function buildExecuteFunc ( iface: Interface, toAddress: string, - forwarder: Contract | MintingManagerForwarder | UNSRegistry | BaseRoutingForwarderMock, + forwarder: Contract | MintingManagerForwarder | UNSRegistry | BaseRoutingForwarderMock | SeaportProxyBuyer, ): ExecuteFunc { return async ( selector: string, diff --git a/test/marketplace/SeaportProxyBuyer.test.ts b/test/marketplace/SeaportProxyBuyer.test.ts index 921b2b78..c9edea8a 100644 --- a/test/marketplace/SeaportProxyBuyer.test.ts +++ b/test/marketplace/SeaportProxyBuyer.test.ts @@ -1,4 +1,4 @@ -import { ethers } from 'hardhat'; +import { ethers, upgrades } from 'hardhat'; import { expect } from 'chai'; import { SignerWithAddress } from '@nomicfoundation/hardhat-ethers/signers'; import { Seaport as seaportjs } from '@opensea/seaport-js'; @@ -18,14 +18,15 @@ import { ERC20Mock } from '../../types/contracts/mocks/ERC20Mock'; import { TLD, ZERO_ADDRESS } from '../helpers/constants'; import { deployProxy } from '../../src/helpers'; import { OrderStruct } from '../../types/seaport-core/src/Seaport'; - +import { ExecuteFunc, buildExecuteFunc } from '../helpers/metatx'; describe('SeaportProxyBuyer', async () => { let unsRegistry: UNSRegistry, seaportProxyBuyer: SeaportProxyBuyer, seaportContract: SeaportContract, conduitController: ConduitController, - usdcMock: ERC20Mock; + usdcMock: ERC20Mock, + seaportProxyBuyerFactory: SeaportProxyBuyer__factory; let signers: SignerWithAddress[], coinbase: SignerWithAddress, @@ -54,10 +55,15 @@ describe('SeaportProxyBuyer', async () => { seaportContract = await new SeaportContract__factory(coinbase).deploy(await conduitController.getAddress()); usdcMock = await new ERC20Mock__factory(coinbase).deploy(); - seaportProxyBuyer = (await deployProxy(new SeaportProxyBuyer__factory(coinbase), [ + seaportProxyBuyerFactory = new SeaportProxyBuyer__factory(coinbase); + seaportProxyBuyer = (await deployProxy(seaportProxyBuyerFactory, [ + await seaportContract.getAddress(), + await usdcMock.getAddress(), + ], { initializer: false })) as SeaportProxyBuyer; + await seaportProxyBuyer.initialize( await seaportContract.getAddress(), await usdcMock.getAddress(), - ])) as SeaportProxyBuyer; + ); await seaportProxyBuyer.addMinter(coinbase.address); seaportSdk = new seaportjs(seller, { overrides: { @@ -73,114 +79,274 @@ describe('SeaportProxyBuyer', async () => { try { await seaportProxyBuyer.connect(coinbase).unpause(); } catch {} }); - it('should execute Seaport order via Proxy', async () => { - const priceToSell = BigInt(ethers.parseUnits('100', 6)); - const recipientFeesBasisPoints = BigInt(50); // 0.5% - const feesAmount = priceToSell * recipientFeesBasisPoints / BigInt(10000); - const { fulfillOrderData, numerator, denominator } = await createOrder(priceToSell, recipientFeesBasisPoints); - - const initialProxyBalance = await usdcMock.balanceOf(await seaportProxyBuyer.getAddress()); - await (await seaportProxyBuyer.connect(coinbase).fulfillAdvancedOrder( - { ...fulfillOrderData, numerator, denominator, extraData: '0x' }, [], ethers.ZeroHash, buyer.address, - )).wait(); - - const sellerBalance = await usdcMock.balanceOf(seller.address); - const proxyBalance = await usdcMock.balanceOf(await seaportProxyBuyer.getAddress()); - const domainOwner = await unsRegistry.ownerOf(tokenIdToSell); - const feesRecipientBalance = await usdcMock.balanceOf(feesRecipient.address); - - expect(sellerBalance).to.be.eq(priceToSell - feesAmount); - expect(feesRecipientBalance).to.be.eq(feesAmount); - expect(proxyBalance).to.be.eq(initialProxyBalance - priceToSell); - expect(domainOwner).to.be.eq(buyer.address); - }); + describe('Regular tranactions', async () => { + it('should execute Seaport order via Proxy', async () => { + const priceToSell = BigInt(ethers.parseUnits('100', 6)); + const recipientFeesBasisPoints = BigInt(50); // 0.5% + const feesAmount = priceToSell * recipientFeesBasisPoints / BigInt(10000); + const { fulfillOrderData, numerator, denominator } = await createOrder(priceToSell, recipientFeesBasisPoints); + + const initialProxyBalance = await usdcMock.balanceOf(await seaportProxyBuyer.getAddress()); + const initialSellerBalance = await usdcMock.balanceOf(seller.address); + const initialFeesRecipientBalance = await usdcMock.balanceOf(feesRecipient.address); + await (await seaportProxyBuyer.connect(coinbase).fulfillAdvancedOrder( + { ...fulfillOrderData, numerator, denominator, extraData: '0x' }, [], ethers.ZeroHash, buyer.address, + )).wait(); + + const sellerBalance = await usdcMock.balanceOf(seller.address); + const proxyBalance = await usdcMock.balanceOf(await seaportProxyBuyer.getAddress()); + const domainOwner = await unsRegistry.ownerOf(tokenIdToSell); + const feesRecipientBalance = await usdcMock.balanceOf(feesRecipient.address); + + expect(sellerBalance).to.be.eq(initialSellerBalance + priceToSell - feesAmount); + expect(feesRecipientBalance).to.be.eq(initialFeesRecipientBalance + feesAmount); + expect(proxyBalance).to.be.eq(initialProxyBalance - priceToSell); + expect(domainOwner).to.be.eq(buyer.address); + }); - it('should not execute Seaport order from non-minter', async () => { - const priceToSell = BigInt(ethers.parseUnits('100', 6)); - const recipientFeesBasisPoints = BigInt(50); - const { fulfillOrderData, numerator, denominator } = await createOrder(priceToSell, recipientFeesBasisPoints); + it('should not execute Seaport order from non-minter', async () => { + const priceToSell = BigInt(ethers.parseUnits('100', 6)); + const recipientFeesBasisPoints = BigInt(50); + const { fulfillOrderData, numerator, denominator } = await createOrder(priceToSell, recipientFeesBasisPoints); - await expect(seaportProxyBuyer.connect(buyer).fulfillAdvancedOrder( - { ...fulfillOrderData, numerator, denominator, extraData: '0x' }, [], ethers.ZeroHash, buyer.address, - )).to.be.revertedWith('MinterRole: CALLER_IS_NOT_MINTER'); - }); + await expect(seaportProxyBuyer.connect(buyer).fulfillAdvancedOrder( + { ...fulfillOrderData, numerator, denominator, extraData: '0x' }, [], ethers.ZeroHash, buyer.address, + )).to.be.revertedWith('MinterRole: CALLER_IS_NOT_MINTER'); + }); - it('should withdraw USDC from Proxy', async () => { - const amountToWithdraw = BigInt(ethers.parseUnits('100', 6)); - const initialProxyBalance = await usdcMock.balanceOf(await seaportProxyBuyer.getAddress()); - const initialRecipientBalance = await usdcMock.balanceOf(feesRecipient.address); - await seaportProxyBuyer.connect(coinbase).withdraw(feesRecipient.address, amountToWithdraw); + it('should withdraw USDC from Proxy', async () => { + const amountToWithdraw = BigInt(ethers.parseUnits('100', 6)); + const initialProxyBalance = await usdcMock.balanceOf(await seaportProxyBuyer.getAddress()); + const initialRecipientBalance = await usdcMock.balanceOf(feesRecipient.address); + await seaportProxyBuyer.connect(coinbase).withdraw(feesRecipient.address, amountToWithdraw); - const recipientBalance = await usdcMock.balanceOf(feesRecipient.address); - const proxyBalance = await usdcMock.balanceOf(await seaportProxyBuyer.getAddress()); - expect(recipientBalance).to.be.eq(initialRecipientBalance + amountToWithdraw); - expect(proxyBalance).to.be.eq(initialProxyBalance - amountToWithdraw); - }); + const recipientBalance = await usdcMock.balanceOf(feesRecipient.address); + const proxyBalance = await usdcMock.balanceOf(await seaportProxyBuyer.getAddress()); + expect(recipientBalance).to.be.eq(initialRecipientBalance + amountToWithdraw); + expect(proxyBalance).to.be.eq(initialProxyBalance - amountToWithdraw); + }); - it('should not withdraw USDC from Proxy by non-owner', async () => { - const amountToWithdraw = BigInt(ethers.parseUnits('100', 6)); - await expect( - seaportProxyBuyer.connect(buyer).withdraw(feesRecipient.address, amountToWithdraw), - ).to.be.revertedWith('Ownable: caller is not the owner'); - }); + it('should not withdraw USDC from Proxy by non-owner', async () => { + const amountToWithdraw = BigInt(ethers.parseUnits('100', 6)); + await expect( + seaportProxyBuyer.connect(buyer).withdraw(feesRecipient.address, amountToWithdraw), + ).to.be.revertedWith('Ownable: caller is not the owner'); + }); - it('should not execute Seaport order with zero recipient address', async () => { - const priceToSell = BigInt(ethers.parseUnits('100', 6)); - const recipientFeesBasisPoints = BigInt(50); - const { fulfillOrderData, numerator, denominator } = await createOrder(priceToSell, recipientFeesBasisPoints); + it('should not execute Seaport order with zero recipient address', async () => { + const priceToSell = BigInt(ethers.parseUnits('100', 6)); + const recipientFeesBasisPoints = BigInt(50); + const { fulfillOrderData, numerator, denominator } = await createOrder(priceToSell, recipientFeesBasisPoints); - await expect(seaportProxyBuyer.connect(coinbase).fulfillAdvancedOrder( - { ...fulfillOrderData, numerator, denominator, extraData: '0x' }, [], ethers.ZeroHash, ZERO_ADDRESS, - )).to.be.revertedWithCustomError(seaportProxyBuyer, 'RecipientIsZeroAddress'); - }); + await expect(seaportProxyBuyer.connect(coinbase).fulfillAdvancedOrder( + { ...fulfillOrderData, numerator, denominator, extraData: '0x' }, [], ethers.ZeroHash, ZERO_ADDRESS, + )).to.be.revertedWithCustomError(seaportProxyBuyer, 'RecipientIsZeroAddress'); + }); - it('should not execute Seaport order if contract is paused', async () => { - await seaportProxyBuyer.connect(coinbase).pause(); - const priceToSell = BigInt(ethers.parseUnits('100', 6)); - const recipientFeesBasisPoints = BigInt(50); - const { fulfillOrderData, numerator, denominator } = await createOrder(priceToSell, recipientFeesBasisPoints); + it('should not execute Seaport order if contract is paused', async () => { + await seaportProxyBuyer.connect(coinbase).pause(); + const priceToSell = BigInt(ethers.parseUnits('100', 6)); + const recipientFeesBasisPoints = BigInt(50); + const { fulfillOrderData, numerator, denominator } = await createOrder(priceToSell, recipientFeesBasisPoints); - await expect(seaportProxyBuyer.connect(coinbase).fulfillAdvancedOrder( - { ...fulfillOrderData, numerator, denominator, extraData: '0x' }, [], ethers.ZeroHash, buyer.address, - )).to.be.revertedWith('Pausable: paused'); - }); + await expect(seaportProxyBuyer.connect(coinbase).fulfillAdvancedOrder( + { ...fulfillOrderData, numerator, denominator, extraData: '0x' }, [], ethers.ZeroHash, buyer.address, + )).to.be.revertedWith('Pausable: paused'); + }); - it('should not withdraw USDC from Proxy if contract is paused', async () => { - await seaportProxyBuyer.connect(coinbase).pause(); - const amountToWithdraw = BigInt(ethers.parseUnits('100', 6)); - await expect( - seaportProxyBuyer.connect(coinbase).withdraw(feesRecipient.address, amountToWithdraw), - ).to.be.revertedWith('Pausable: paused'); - }); + it('should not withdraw USDC from Proxy if contract is paused', async () => { + await seaportProxyBuyer.connect(coinbase).pause(); + const amountToWithdraw = BigInt(ethers.parseUnits('100', 6)); + await expect( + seaportProxyBuyer.connect(coinbase).withdraw(feesRecipient.address, amountToWithdraw), + ).to.be.revertedWith('Pausable: paused'); + }); - it('should unpause contract', async () => { - await seaportProxyBuyer.connect(coinbase).pause(); - await seaportProxyBuyer.connect(coinbase).unpause(); - const priceToSell = BigInt(ethers.parseUnits('100', 6)); - const recipientFeesBasisPoints = BigInt(50); - const { fulfillOrderData, numerator, denominator } = await createOrder(priceToSell, recipientFeesBasisPoints); + it('should unpause contract', async () => { + await seaportProxyBuyer.connect(coinbase).pause(); + await seaportProxyBuyer.connect(coinbase).unpause(); + const priceToSell = BigInt(ethers.parseUnits('100', 6)); + const recipientFeesBasisPoints = BigInt(50); + const { fulfillOrderData, numerator, denominator } = await createOrder(priceToSell, recipientFeesBasisPoints); - await seaportProxyBuyer.connect(coinbase).fulfillAdvancedOrder( - { ...fulfillOrderData, numerator, denominator, extraData: '0x' }, [], ethers.ZeroHash, buyer.address, - ); - }); + await seaportProxyBuyer.connect(coinbase).fulfillAdvancedOrder( + { ...fulfillOrderData, numerator, denominator, extraData: '0x' }, [], ethers.ZeroHash, buyer.address, + ); + }); - it('should not pause if paused', async () => { - await seaportProxyBuyer.connect(coinbase).pause(); - await expect(seaportProxyBuyer.connect(coinbase).pause()).to.be.revertedWith('Pausable: paused'); - }); + it('should not pause if paused', async () => { + await seaportProxyBuyer.connect(coinbase).pause(); + await expect(seaportProxyBuyer.connect(coinbase).pause()).to.be.revertedWith('Pausable: paused'); + }); - it('should not unpause if not paused', async () => { - await expect(seaportProxyBuyer.connect(coinbase).unpause()).to.be.revertedWith('Pausable: not paused'); + it('should not unpause if not paused', async () => { + await expect(seaportProxyBuyer.connect(coinbase).unpause()).to.be.revertedWith('Pausable: not paused'); + }); + + it('should not pause by non-owner', async () => { + await expect(seaportProxyBuyer.connect(buyer).pause()).to.be.revertedWith('Ownable: caller is not the owner'); + }); + + it('should not unpause by non-owner', async () => { + await seaportProxyBuyer.connect(coinbase).pause(); + await expect(seaportProxyBuyer.connect(buyer).unpause()).to.be.revertedWith('Ownable: caller is not the owner'); + }); }); - it('should not pause by non-owner', async () => { - await expect(seaportProxyBuyer.connect(buyer).pause()).to.be.revertedWith('Ownable: caller is not the owner'); + describe('Meta transactions', async () => { + let buildExecuteParams: ExecuteFunc; + + before(async () => { + buildExecuteParams = buildExecuteFunc( + seaportProxyBuyer.interface, + await seaportProxyBuyer.getAddress(), + seaportProxyBuyer, + ); + }); + + it('should execute Seaport order via Proxy', async () => { + const priceToSell = BigInt(ethers.parseUnits('100', 6)); + const recipientFeesBasisPoints = BigInt(50); + const feesAmount = priceToSell * recipientFeesBasisPoints / BigInt(10000); + const { fulfillOrderData, numerator, denominator } = await createOrder(priceToSell, recipientFeesBasisPoints); + + const initialProxyBalance = await usdcMock.balanceOf(await seaportProxyBuyer.getAddress()); + const initialSellerBalance = await usdcMock.balanceOf(seller.address); + const initialFeesRecipientBalance = await usdcMock.balanceOf(feesRecipient.address); + const { req, signature } = await buildExecuteParams( + 'fulfillAdvancedOrder', + [{ ...fulfillOrderData, numerator, denominator, extraData: '0x' }, [], ethers.ZeroHash, buyer.address], + coinbase, + 0, + ); + await (await seaportProxyBuyer.connect(seller).execute(req, signature)).wait(); + + const sellerBalance = await usdcMock.balanceOf(seller.address); + const proxyBalance = await usdcMock.balanceOf(await seaportProxyBuyer.getAddress()); + const domainOwner = await unsRegistry.ownerOf(tokenIdToSell); + const feesRecipientBalance = await usdcMock.balanceOf(feesRecipient.address); + + expect(sellerBalance).to.be.eq(initialSellerBalance + priceToSell - feesAmount); + expect(feesRecipientBalance).to.be.eq(initialFeesRecipientBalance + feesAmount); + expect(proxyBalance).to.be.eq(initialProxyBalance - priceToSell); + expect(domainOwner).to.be.eq(buyer.address); + }); + + it('should not execute Seaport order from non-minter', async () => { + const priceToSell = BigInt(ethers.parseUnits('100', 6)); + const recipientFeesBasisPoints = BigInt(50); + const { fulfillOrderData, numerator, denominator } = await createOrder(priceToSell, recipientFeesBasisPoints); + + const { req, signature } = await buildExecuteParams( + 'fulfillAdvancedOrder', + [{ ...fulfillOrderData, numerator, denominator, extraData: '0x' }, [], ethers.ZeroHash, buyer.address], + buyer, + 0, + ); + await expect( + seaportProxyBuyer.connect(coinbase).execute(req, signature), + ).to.be.revertedWith('MinterRole: CALLER_IS_NOT_MINTER'); + }); + + it('should withdraw USDC from Proxy', async () => { + const amountToWithdraw = BigInt(ethers.parseUnits('100', 6)); + const initialProxyBalance = await usdcMock.balanceOf(await seaportProxyBuyer.getAddress()); + const initialRecipientBalance = await usdcMock.balanceOf(feesRecipient.address); + const { req, signature } = await buildExecuteParams( + 'withdraw', + [feesRecipient.address, amountToWithdraw], + coinbase, + 0, + ); + await seaportProxyBuyer.connect(coinbase).execute(req, signature); + + const recipientBalance = await usdcMock.balanceOf(feesRecipient.address); + const proxyBalance = await usdcMock.balanceOf(await seaportProxyBuyer.getAddress()); + expect(recipientBalance).to.be.eq(initialRecipientBalance + amountToWithdraw); + expect(proxyBalance).to.be.eq(initialProxyBalance - amountToWithdraw); + }); + + it('should not withdraw USDC from Proxy by non-owner', async () => { + const amountToWithdraw = BigInt(ethers.parseUnits('100', 6)); + const { req, signature } = await buildExecuteParams( + 'withdraw', + [feesRecipient.address, amountToWithdraw], + buyer, + 0, + ); + await expect( + seaportProxyBuyer.connect(coinbase).execute(req, signature), + ).to.be.revertedWith('Ownable: caller is not the owner'); + }); }); - it('should not unpause by non-owner', async () => { - await seaportProxyBuyer.connect(coinbase).pause(); - await expect(seaportProxyBuyer.connect(buyer).unpause()).to.be.revertedWith('Ownable: caller is not the owner'); + describe('Contract upgrades', async () => { + it('should keep USDC balance after upgrade', async () => { + const balanceBefore = await usdcMock.balanceOf(await seaportProxyBuyer.getAddress()); + seaportProxyBuyer = + (await upgrades.upgradeProxy( + await seaportProxyBuyer.getAddress(), seaportProxyBuyerFactory, + )) as unknown as SeaportProxyBuyer; + const balanceAfter = await usdcMock.balanceOf(await seaportProxyBuyer.getAddress()); + expect(balanceAfter).to.be.eq(balanceBefore); + }); + + it('should execute Seaport order after upgrade', async () => { + const priceToSell = BigInt(ethers.parseUnits('100', 6)); + const recipientFeesBasisPoints = BigInt(50); + const { fulfillOrderData, numerator, denominator } = await createOrder(priceToSell, recipientFeesBasisPoints); + seaportProxyBuyer = + (await upgrades.upgradeProxy( + await seaportProxyBuyer.getAddress(), seaportProxyBuyerFactory, + )) as unknown as SeaportProxyBuyer; + (await seaportProxyBuyer.connect(coinbase).fulfillAdvancedOrder( + { ...fulfillOrderData, numerator, denominator, extraData: '0x' }, [], ethers.ZeroHash, buyer.address, + )).wait(); + + const domainOwner = await unsRegistry.ownerOf(tokenIdToSell); + expect(domainOwner).to.be.eq(buyer.address); + }); + + it('should withdraw USDC after upgrade', async () => { + const amountToWithdraw = BigInt(ethers.parseUnits('100', 6)); + const initialProxyBalance = await usdcMock.balanceOf(await seaportProxyBuyer.getAddress()); + const initialRecipientBalance = await usdcMock.balanceOf(feesRecipient.address); + seaportProxyBuyer = + (await upgrades.upgradeProxy( + await seaportProxyBuyer.getAddress(), seaportProxyBuyerFactory, + )) as unknown as SeaportProxyBuyer; + await seaportProxyBuyer.connect(coinbase).withdraw(feesRecipient.address, amountToWithdraw); + + const recipientBalance = await usdcMock.balanceOf(feesRecipient.address); + const proxyBalance = await usdcMock.balanceOf(await seaportProxyBuyer.getAddress()); + expect(recipientBalance).to.be.eq(initialRecipientBalance + amountToWithdraw); + expect(proxyBalance).to.be.eq(initialProxyBalance - amountToWithdraw); + }); + + it('should not withdraw USDC after upgrade by non-owner', async () => { + const amountToWithdraw = BigInt(ethers.parseUnits('100', 6)); + seaportProxyBuyer = + (await upgrades.upgradeProxy( + await seaportProxyBuyer.getAddress(), seaportProxyBuyerFactory, + )) as unknown as SeaportProxyBuyer; + await expect( + seaportProxyBuyer.connect(buyer).withdraw(feesRecipient.address, amountToWithdraw), + ).to.be.revertedWith('Ownable: caller is not the owner'); + }); + + it('should not execute Seaport order after upgrade by non-minter', async () => { + const priceToSell = BigInt(ethers.parseUnits('100', 6)); + const recipientFeesBasisPoints = BigInt(50); + const { fulfillOrderData, numerator, denominator } = await createOrder(priceToSell, recipientFeesBasisPoints); + seaportProxyBuyer = + (await upgrades.upgradeProxy( + await seaportProxyBuyer.getAddress(), seaportProxyBuyerFactory, + )) as unknown as SeaportProxyBuyer; + + await expect(seaportProxyBuyer.connect(buyer).fulfillAdvancedOrder( + { ...fulfillOrderData, numerator, denominator, extraData: '0x' }, [], ethers.ZeroHash, buyer.address, + )).to.be.revertedWith('MinterRole: CALLER_IS_NOT_MINTER'); + }); }); const createOrder = async (priceToSell: bigint, recipientFeesBasisPoints: bigint) => { From 146239b76ca98595bc2c15bb7027dc309eb70b80 Mon Sep 17 00:00:00 2001 From: derain Date: Thu, 16 May 2024 13:22:35 +0300 Subject: [PATCH 03/21] [REG-1237] - Code review fixes --- .node-version | 1 - artifacts/ENSCustody.json | 4 +- artifacts/ISeaportProxyBuyer.json | 18 + artifacts/MintingManager.json | 4 +- artifacts/ProxyReader.json | 4 +- artifacts/SeaportProxyBuyer.json | 43 +- artifacts/UNSRegistry.json | 4 +- artifacts/abi/ISeaportProxyBuyer.json | 2 +- artifacts/abi/SeaportProxyBuyer.json | 2 +- contracts/MintingManager.sol | 2 +- contracts/ProxyReader.sol | 2 +- contracts/UNSRegistry.sol | 2 +- contracts/custody/ENSCustody.sol | 2 +- contracts/marketplace/ISeaportProxyBuyer.sol | 13 +- contracts/marketplace/SeaportProxyBuyer.sol | 69 +- contracts/marketplace/_refs.sol | 2 +- contracts/mocks/MintingManagerMock.sol | 2 +- contracts/mocks/UNSRegistryForwarderMock.sol | 2 +- contracts/mocks/UNSRegistryMock.sol | 2 +- dist/hardhat.config.d.ts | 36 - dist/hardhat.config.d.ts.map | 1 - dist/hardhat.config.js | 183 -- dist/index.d.ts | 5 - dist/index.d.ts.map | 1 - dist/index.js | 33 - dist/sandbox/db.tgz | Bin 542776 -> 0 bytes dist/sandbox/ganache-service.d.ts | 17 - dist/sandbox/ganache-service.d.ts.map | 1 - dist/sandbox/ganache-service.js | 43 - dist/sandbox/index.d.ts | 57 - dist/sandbox/index.d.ts.map | 1 - dist/sandbox/index.js | 173 -- dist/src/config.d.ts | 9 - dist/src/config.d.ts.map | 1 - dist/src/config.js | 33 - dist/src/types.d.ts | 101 - dist/src/types.d.ts.map | 1 - dist/src/types.js | 82 - dist/src/utils.d.ts | 5 - dist/src/utils.d.ts.map | 1 - dist/src/utils.js | 23 - .../contracts/dnssec-oracle/BytesUtils.d.ts | 21 - .../dnssec-oracle/BytesUtils.d.ts.map | 1 - .../contracts/dnssec-oracle/BytesUtils.js | 2 - .../contracts/dnssec-oracle/index.d.ts | 2 - .../contracts/dnssec-oracle/index.d.ts.map | 1 - .../contracts/dnssec-oracle/index.js | 2 - .../BaseRegistrarImplementation.d.ts | 434 ---- .../BaseRegistrarImplementation.d.ts.map | 1 - .../BaseRegistrarImplementation.js | 2 - .../contracts/ethregistrar/DummyOracle.d.ts | 30 - .../ethregistrar/DummyOracle.d.ts.map | 1 - .../contracts/ethregistrar/DummyOracle.js | 2 - .../ethregistrar/ETHRegistrarController.d.ts | 291 --- .../ETHRegistrarController.d.ts.map | 1 - .../ethregistrar/ETHRegistrarController.js | 2 - .../ethregistrar/IBaseRegistrar.d.ts | 359 --- .../ethregistrar/IBaseRegistrar.d.ts.map | 1 - .../contracts/ethregistrar/IBaseRegistrar.js | 2 - .../ethregistrar/IETHRegistrarController.d.ts | 133 - .../IETHRegistrarController.d.ts.map | 1 - .../ethregistrar/IETHRegistrarController.js | 2 - .../contracts/ethregistrar/IPriceOracle.d.ts | 48 - .../ethregistrar/IPriceOracle.d.ts.map | 1 - .../contracts/ethregistrar/IPriceOracle.js | 2 - .../AggregatorInterface.d.ts | 26 - .../AggregatorInterface.d.ts.map | 1 - .../AggregatorInterface.js | 2 - .../StablePriceOracle.d.ts | 112 - .../StablePriceOracle.d.ts.map | 1 - .../StablePriceOracle.js | 2 - .../StablePriceOracle.sol/index.d.ts | 3 - .../StablePriceOracle.sol/index.d.ts.map | 1 - .../StablePriceOracle.sol/index.js | 2 - .../contracts/ethregistrar/index.d.ts | 9 - .../contracts/ethregistrar/index.d.ts.map | 1 - .../contracts/ethregistrar/index.js | 2 - .../ens-contracts/contracts/index.d.ts | 17 - .../ens-contracts/contracts/index.d.ts.map | 1 - .../ens-contracts/contracts/index.js | 2 - .../ens-contracts/contracts/registry/ENS.d.ts | 253 -- .../contracts/registry/ENS.d.ts.map | 1 - .../ens-contracts/contracts/registry/ENS.js | 2 - .../contracts/registry/ENSRegistry.d.ts | 253 -- .../contracts/registry/ENSRegistry.d.ts.map | 1 - .../contracts/registry/ENSRegistry.js | 2 - .../contracts/registry/index.d.ts | 3 - .../contracts/registry/index.d.ts.map | 1 - .../ens-contracts/contracts/registry/index.js | 2 - .../contracts/resolvers/IMulticallable.d.ts | 40 - .../resolvers/IMulticallable.d.ts.map | 1 - .../contracts/resolvers/IMulticallable.js | 2 - .../contracts/resolvers/Multicallable.d.ts | 48 - .../resolvers/Multicallable.d.ts.map | 1 - .../contracts/resolvers/Multicallable.js | 2 - .../contracts/resolvers/PublicResolver.d.ts | 661 ----- .../resolvers/PublicResolver.d.ts.map | 1 - .../contracts/resolvers/PublicResolver.js | 2 - .../contracts/resolvers/Resolver.d.ts | 624 ----- .../contracts/resolvers/Resolver.d.ts.map | 1 - .../contracts/resolvers/Resolver.js | 2 - .../contracts/resolvers/ResolverBase.d.ts | 55 - .../contracts/resolvers/ResolverBase.d.ts.map | 1 - .../contracts/resolvers/ResolverBase.js | 2 - .../contracts/resolvers/index.d.ts | 8 - .../contracts/resolvers/index.d.ts.map | 1 - .../contracts/resolvers/index.js | 2 - .../resolvers/profiles/ABIResolver.d.ts | 100 - .../resolvers/profiles/ABIResolver.d.ts.map | 1 - .../resolvers/profiles/ABIResolver.js | 2 - .../resolvers/profiles/AddrResolver.d.ts | 142 -- .../resolvers/profiles/AddrResolver.d.ts.map | 1 - .../resolvers/profiles/AddrResolver.js | 2 - .../profiles/ContentHashResolver.d.ts | 88 - .../profiles/ContentHashResolver.d.ts.map | 1 - .../resolvers/profiles/ContentHashResolver.js | 2 - .../resolvers/profiles/DNSResolver.d.ts | 183 -- .../resolvers/profiles/DNSResolver.d.ts.map | 1 - .../resolvers/profiles/DNSResolver.js | 2 - .../resolvers/profiles/IABIResolver.d.ts | 53 - .../resolvers/profiles/IABIResolver.d.ts.map | 1 - .../resolvers/profiles/IABIResolver.js | 2 - .../resolvers/profiles/IAddrResolver.d.ts | 43 - .../resolvers/profiles/IAddrResolver.d.ts.map | 1 - .../resolvers/profiles/IAddrResolver.js | 2 - .../resolvers/profiles/IAddressResolver.d.ts | 62 - .../profiles/IAddressResolver.d.ts.map | 1 - .../resolvers/profiles/IAddressResolver.js | 2 - .../profiles/IContentHashResolver.d.ts | 43 - .../profiles/IContentHashResolver.d.ts.map | 1 - .../profiles/IContentHashResolver.js | 2 - .../profiles/IDNSRecordResolver.d.ts | 87 - .../profiles/IDNSRecordResolver.d.ts.map | 1 - .../resolvers/profiles/IDNSRecordResolver.js | 2 - .../resolvers/profiles/IDNSZoneResolver.d.ts | 52 - .../profiles/IDNSZoneResolver.d.ts.map | 1 - .../resolvers/profiles/IDNSZoneResolver.js | 2 - .../resolvers/profiles/IExtendedResolver.d.ts | 31 - .../profiles/IExtendedResolver.d.ts.map | 1 - .../resolvers/profiles/IExtendedResolver.js | 2 - .../profiles/IInterfaceResolver.d.ts | 62 - .../profiles/IInterfaceResolver.d.ts.map | 1 - .../resolvers/profiles/IInterfaceResolver.js | 2 - .../resolvers/profiles/INameResolver.d.ts | 43 - .../resolvers/profiles/INameResolver.d.ts.map | 1 - .../resolvers/profiles/INameResolver.js | 2 - .../resolvers/profiles/IPubkeyResolver.d.ts | 58 - .../profiles/IPubkeyResolver.d.ts.map | 1 - .../resolvers/profiles/IPubkeyResolver.js | 2 - .../resolvers/profiles/ITextResolver.d.ts | 55 - .../resolvers/profiles/ITextResolver.d.ts.map | 1 - .../resolvers/profiles/ITextResolver.js | 2 - .../profiles/IVersionableResolver.d.ts | 43 - .../profiles/IVersionableResolver.d.ts.map | 1 - .../profiles/IVersionableResolver.js | 2 - .../resolvers/profiles/InterfaceResolver.d.ts | 196 -- .../profiles/InterfaceResolver.d.ts.map | 1 - .../resolvers/profiles/InterfaceResolver.js | 2 - .../resolvers/profiles/NameResolver.d.ts | 88 - .../resolvers/profiles/NameResolver.d.ts.map | 1 - .../resolvers/profiles/NameResolver.js | 2 - .../resolvers/profiles/PubkeyResolver.d.ts | 105 - .../profiles/PubkeyResolver.d.ts.map | 1 - .../resolvers/profiles/PubkeyResolver.js | 2 - .../resolvers/profiles/TextResolver.d.ts | 102 - .../resolvers/profiles/TextResolver.d.ts.map | 1 - .../resolvers/profiles/TextResolver.js | 2 - .../contracts/resolvers/profiles/index.d.ts | 21 - .../resolvers/profiles/index.d.ts.map | 1 - .../contracts/resolvers/profiles/index.js | 2 - .../reverseRegistrar/IReverseRegistrar.d.ts | 90 - .../IReverseRegistrar.d.ts.map | 1 - .../reverseRegistrar/IReverseRegistrar.js | 2 - .../reverseRegistrar/ReverseClaimer.d.ts | 21 - .../reverseRegistrar/ReverseClaimer.d.ts.map | 1 - .../reverseRegistrar/ReverseClaimer.js | 2 - .../ReverseRegistrar.sol/NameResolver.d.ts | 31 - .../NameResolver.d.ts.map | 1 - .../ReverseRegistrar.sol/NameResolver.js | 2 - .../ReverseRegistrar.d.ts | 193 -- .../ReverseRegistrar.d.ts.map | 1 - .../ReverseRegistrar.sol/ReverseRegistrar.js | 2 - .../ReverseRegistrar.sol/index.d.ts | 3 - .../ReverseRegistrar.sol/index.d.ts.map | 1 - .../ReverseRegistrar.sol/index.js | 2 - .../contracts/reverseRegistrar/index.d.ts | 5 - .../contracts/reverseRegistrar/index.d.ts.map | 1 - .../contracts/reverseRegistrar/index.js | 2 - .../contracts/root/Controllable.d.ts | 88 - .../contracts/root/Controllable.d.ts.map | 1 - .../contracts/root/Controllable.js | 2 - .../ens-contracts/contracts/root/Root.d.ts | 144 -- .../contracts/root/Root.d.ts.map | 1 - .../ens-contracts/contracts/root/Root.js | 2 - .../ens-contracts/contracts/root/index.d.ts | 3 - .../contracts/root/index.d.ts.map | 1 - .../ens-contracts/contracts/root/index.js | 2 - .../contracts/utils/ERC20Recoverable.d.ts | 71 - .../contracts/utils/ERC20Recoverable.d.ts.map | 1 - .../contracts/utils/ERC20Recoverable.js | 2 - .../ens-contracts/contracts/utils/index.d.ts | 2 - .../contracts/utils/index.d.ts.map | 1 - .../ens-contracts/contracts/utils/index.js | 2 - .../contracts/wrapper/Controllable.d.ts | 88 - .../contracts/wrapper/Controllable.d.ts.map | 1 - .../contracts/wrapper/Controllable.js | 2 - .../contracts/wrapper/ERC1155Fuse.d.ts | 311 --- .../contracts/wrapper/ERC1155Fuse.d.ts.map | 1 - .../contracts/wrapper/ERC1155Fuse.js | 2 - .../contracts/wrapper/IMetadataService.d.ts | 26 - .../wrapper/IMetadataService.d.ts.map | 1 - .../contracts/wrapper/IMetadataService.js | 2 - .../contracts/wrapper/INameWrapper.d.ts | 691 ------ .../contracts/wrapper/INameWrapper.d.ts.map | 1 - .../contracts/wrapper/INameWrapper.js | 2 - .../wrapper/INameWrapperUpgrade.d.ts | 51 - .../wrapper/INameWrapperUpgrade.d.ts.map | 1 - .../contracts/wrapper/INameWrapperUpgrade.js | 2 - .../contracts/wrapper/NameWrapper.d.ts | 848 ------- .../contracts/wrapper/NameWrapper.d.ts.map | 1 - .../contracts/wrapper/NameWrapper.js | 2 - .../contracts/wrapper/index.d.ts | 7 - .../contracts/wrapper/index.d.ts.map | 1 - .../ens-contracts/contracts/wrapper/index.js | 2 - .../@ensdomains/ens-contracts/index.d.ts | 3 - .../@ensdomains/ens-contracts/index.d.ts.map | 1 - dist/types/@ensdomains/ens-contracts/index.js | 2 - dist/types/@ensdomains/index.d.ts | 3 - dist/types/@ensdomains/index.d.ts.map | 1 - dist/types/@ensdomains/index.js | 2 - .../contracts-2.3/access/index.d.ts | 3 - .../contracts-2.3/access/index.d.ts.map | 1 - .../contracts-2.3/access/index.js | 2 - .../access/roles/MinterRole.d.ts | 64 - .../access/roles/MinterRole.d.ts.map | 1 - .../contracts-2.3/access/roles/MinterRole.js | 2 - .../access/roles/WhitelistAdminRole.d.ts | 72 - .../access/roles/WhitelistAdminRole.d.ts.map | 1 - .../access/roles/WhitelistAdminRole.js | 2 - .../access/roles/WhitelistedRole.d.ts | 124 - .../access/roles/WhitelistedRole.d.ts.map | 1 - .../access/roles/WhitelistedRole.js | 2 - .../contracts-2.3/access/roles/index.d.ts | 4 - .../contracts-2.3/access/roles/index.d.ts.map | 1 - .../contracts-2.3/access/roles/index.js | 2 - .../@openzeppelin/contracts-2.3/index.d.ts | 7 - .../contracts-2.3/index.d.ts.map | 1 - .../@openzeppelin/contracts-2.3/index.js | 2 - .../contracts-2.3/introspection/ERC165.d.ts | 30 - .../introspection/ERC165.d.ts.map | 1 - .../contracts-2.3/introspection/ERC165.js | 2 - .../contracts-2.3/introspection/IERC165.d.ts | 30 - .../introspection/IERC165.d.ts.map | 1 - .../contracts-2.3/introspection/IERC165.js | 2 - .../contracts-2.3/introspection/index.d.ts | 3 - .../introspection/index.d.ts.map | 1 - .../contracts-2.3/introspection/index.js | 2 - .../contracts-2.3/token/ERC721/ERC721.d.ts | 200 -- .../token/ERC721/ERC721.d.ts.map | 1 - .../contracts-2.3/token/ERC721/ERC721.js | 2 - .../token/ERC721/ERC721Burnable.d.ts | 204 -- .../token/ERC721/ERC721Burnable.d.ts.map | 1 - .../token/ERC721/ERC721Burnable.js | 2 - .../contracts-2.3/token/ERC721/IERC721.d.ts | 200 -- .../token/ERC721/IERC721.d.ts.map | 1 - .../contracts-2.3/token/ERC721/IERC721.js | 2 - .../token/ERC721/IERC721Metadata.d.ts | 212 -- .../token/ERC721/IERC721Metadata.d.ts.map | 1 - .../token/ERC721/IERC721Metadata.js | 2 - .../token/ERC721/IERC721Receiver.d.ts | 40 - .../token/ERC721/IERC721Receiver.d.ts.map | 1 - .../token/ERC721/IERC721Receiver.js | 2 - .../contracts-2.3/token/ERC721/index.d.ts | 6 - .../contracts-2.3/token/ERC721/index.d.ts.map | 1 - .../contracts-2.3/token/ERC721/index.js | 2 - .../contracts-2.3/token/index.d.ts | 3 - .../contracts-2.3/token/index.d.ts.map | 1 - .../contracts-2.3/token/index.js | 2 - .../AccessControlEnumerableUpgradeable.d.ts | 192 -- ...ccessControlEnumerableUpgradeable.d.ts.map | 1 - .../AccessControlEnumerableUpgradeable.js | 2 - .../access/AccessControlUpgradeable.d.ts | 174 -- .../access/AccessControlUpgradeable.d.ts.map | 1 - .../access/AccessControlUpgradeable.js | 2 - .../IAccessControlEnumerableUpgradeable.d.ts | 166 -- ...ccessControlEnumerableUpgradeable.d.ts.map | 1 - .../IAccessControlEnumerableUpgradeable.js | 2 - .../access/IAccessControlUpgradeable.d.ts | 148 -- .../access/IAccessControlUpgradeable.d.ts.map | 1 - .../access/IAccessControlUpgradeable.js | 2 - .../access/OwnableUpgradeable.d.ts | 69 - .../access/OwnableUpgradeable.d.ts.map | 1 - .../access/OwnableUpgradeable.js | 2 - .../contracts-upgradeable/access/index.d.ts | 6 - .../access/index.d.ts.map | 1 - .../contracts-upgradeable/access/index.js | 2 - .../contracts-upgradeable/index.d.ts | 13 - .../contracts-upgradeable/index.d.ts.map | 1 - .../contracts-upgradeable/index.js | 2 - .../interfaces/IERC1271Upgradeable.d.ts | 36 - .../interfaces/IERC1271Upgradeable.d.ts.map | 1 - .../interfaces/IERC1271Upgradeable.js | 2 - .../interfaces/index.d.ts | 2 - .../interfaces/index.d.ts.map | 1 - .../contracts-upgradeable/interfaces/index.js | 2 - .../contracts-upgradeable/proxy/index.d.ts | 3 - .../proxy/index.d.ts.map | 1 - .../contracts-upgradeable/proxy/index.js | 2 - .../proxy/utils/Initializable.d.ts | 37 - .../proxy/utils/Initializable.d.ts.map | 1 - .../proxy/utils/Initializable.js | 2 - .../proxy/utils/index.d.ts | 2 - .../proxy/utils/index.d.ts.map | 1 - .../proxy/utils/index.js | 2 - .../security/PausableUpgradeable.d.ts | 70 - .../security/PausableUpgradeable.d.ts.map | 1 - .../security/PausableUpgradeable.js | 2 - .../security/ReentrancyGuardUpgradeable.d.ts | 37 - .../ReentrancyGuardUpgradeable.d.ts.map | 1 - .../security/ReentrancyGuardUpgradeable.js | 2 - .../contracts-upgradeable/security/index.d.ts | 3 - .../security/index.d.ts.map | 1 - .../contracts-upgradeable/security/index.js | 2 - .../token/ERC1155/ERC1155Upgradeable.d.ts | 251 -- .../token/ERC1155/ERC1155Upgradeable.d.ts.map | 1 - .../token/ERC1155/ERC1155Upgradeable.js | 2 - .../ERC1155/IERC1155ReceiverUpgradeable.d.ts | 76 - .../IERC1155ReceiverUpgradeable.d.ts.map | 1 - .../ERC1155/IERC1155ReceiverUpgradeable.js | 2 - .../token/ERC1155/IERC1155Upgradeable.d.ts | 233 -- .../ERC1155/IERC1155Upgradeable.d.ts.map | 1 - .../token/ERC1155/IERC1155Upgradeable.js | 2 - .../ERC1155BurnableUpgradeable.d.ts | 283 --- .../ERC1155BurnableUpgradeable.d.ts.map | 1 - .../extensions/ERC1155BurnableUpgradeable.js | 2 - .../ERC1155PausableUpgradeable.d.ts | 283 --- .../ERC1155PausableUpgradeable.d.ts.map | 1 - .../extensions/ERC1155PausableUpgradeable.js | 2 - .../IERC1155MetadataURIUpgradeable.d.ts | 237 -- .../IERC1155MetadataURIUpgradeable.d.ts.map | 1 - .../IERC1155MetadataURIUpgradeable.js | 2 - .../token/ERC1155/extensions/index.d.ts | 4 - .../token/ERC1155/extensions/index.d.ts.map | 1 - .../token/ERC1155/extensions/index.js | 2 - .../token/ERC1155/index.d.ts | 8 - .../token/ERC1155/index.d.ts.map | 1 - .../token/ERC1155/index.js | 2 - .../ERC1155PresetMinterPauserUpgradeable.d.ts | 517 ---- ...1155PresetMinterPauserUpgradeable.d.ts.map | 1 - .../ERC1155PresetMinterPauserUpgradeable.js | 2 - .../token/ERC1155/presets/index.d.ts | 2 - .../token/ERC1155/presets/index.d.ts.map | 1 - .../token/ERC1155/presets/index.js | 2 - .../token/ERC20/IERC20Upgradeable.d.ts | 130 - .../token/ERC20/IERC20Upgradeable.d.ts.map | 1 - .../token/ERC20/IERC20Upgradeable.js | 2 - .../token/ERC20/index.d.ts | 2 - .../token/ERC20/index.d.ts.map | 1 - .../token/ERC20/index.js | 2 - .../token/ERC721/ERC721Upgradeable.d.ts | 226 -- .../token/ERC721/ERC721Upgradeable.d.ts.map | 1 - .../token/ERC721/ERC721Upgradeable.js | 2 - .../ERC721/IERC721ReceiverUpgradeable.d.ts | 40 - .../IERC721ReceiverUpgradeable.d.ts.map | 1 - .../ERC721/IERC721ReceiverUpgradeable.js | 2 - .../token/ERC721/IERC721Upgradeable.d.ts | 200 -- .../token/ERC721/IERC721Upgradeable.d.ts.map | 1 - .../token/ERC721/IERC721Upgradeable.js | 2 - .../IERC721MetadataUpgradeable.d.ts | 212 -- .../IERC721MetadataUpgradeable.d.ts.map | 1 - .../extensions/IERC721MetadataUpgradeable.js | 2 - .../token/ERC721/extensions/index.d.ts | 2 - .../token/ERC721/extensions/index.d.ts.map | 1 - .../token/ERC721/extensions/index.js | 2 - .../token/ERC721/index.d.ts | 6 - .../token/ERC721/index.d.ts.map | 1 - .../token/ERC721/index.js | 2 - .../contracts-upgradeable/token/index.d.ts | 7 - .../token/index.d.ts.map | 1 - .../contracts-upgradeable/token/index.js | 2 - .../utils/ContextUpgradeable.d.ts | 37 - .../utils/ContextUpgradeable.d.ts.map | 1 - .../utils/ContextUpgradeable.js | 2 - .../utils/MulticallUpgradeable.d.ts | 42 - .../utils/MulticallUpgradeable.d.ts.map | 1 - .../utils/MulticallUpgradeable.js | 2 - .../contracts-upgradeable/utils/index.d.ts | 5 - .../utils/index.d.ts.map | 1 - .../contracts-upgradeable/utils/index.js | 2 - .../introspection/ERC165Upgradeable.d.ts | 46 - .../introspection/ERC165Upgradeable.d.ts.map | 1 - .../utils/introspection/ERC165Upgradeable.js | 2 - .../introspection/IERC165Upgradeable.d.ts | 30 - .../introspection/IERC165Upgradeable.d.ts.map | 1 - .../utils/introspection/IERC165Upgradeable.js | 2 - .../utils/introspection/index.d.ts | 3 - .../utils/introspection/index.d.ts.map | 1 - .../utils/introspection/index.js | 2 - .../contracts/access/Ownable.d.ts | 55 - .../contracts/access/Ownable.d.ts.map | 1 - .../@openzeppelin/contracts/access/Ownable.js | 2 - .../@openzeppelin/contracts/access/index.d.ts | 2 - .../contracts/access/index.d.ts.map | 1 - .../@openzeppelin/contracts/access/index.js | 2 - dist/types/@openzeppelin/contracts/index.d.ts | 7 - .../@openzeppelin/contracts/index.d.ts.map | 1 - dist/types/@openzeppelin/contracts/index.js | 2 - .../contracts/token/ERC1155/IERC1155.d.ts | 233 -- .../contracts/token/ERC1155/IERC1155.d.ts.map | 1 - .../contracts/token/ERC1155/IERC1155.js | 2 - .../token/ERC1155/IERC1155Receiver.d.ts | 76 - .../token/ERC1155/IERC1155Receiver.d.ts.map | 1 - .../token/ERC1155/IERC1155Receiver.js | 2 - .../extensions/IERC1155MetadataURI.d.ts | 237 -- .../extensions/IERC1155MetadataURI.d.ts.map | 1 - .../ERC1155/extensions/IERC1155MetadataURI.js | 2 - .../token/ERC1155/extensions/index.d.ts | 2 - .../token/ERC1155/extensions/index.d.ts.map | 1 - .../token/ERC1155/extensions/index.js | 2 - .../contracts/token/ERC1155/index.d.ts | 5 - .../contracts/token/ERC1155/index.d.ts.map | 1 - .../contracts/token/ERC1155/index.js | 2 - .../contracts/token/ERC20/ERC20.d.ts | 170 -- .../contracts/token/ERC20/ERC20.d.ts.map | 1 - .../contracts/token/ERC20/ERC20.js | 2 - .../contracts/token/ERC20/IERC20.d.ts | 130 - .../contracts/token/ERC20/IERC20.d.ts.map | 1 - .../contracts/token/ERC20/IERC20.js | 2 - .../ERC20/extensions/IERC20Metadata.d.ts | 142 -- .../ERC20/extensions/IERC20Metadata.d.ts.map | 1 - .../token/ERC20/extensions/IERC20Metadata.js | 2 - .../token/ERC20/extensions/index.d.ts | 2 - .../token/ERC20/extensions/index.d.ts.map | 1 - .../contracts/token/ERC20/extensions/index.js | 2 - .../contracts/token/ERC20/index.d.ts | 5 - .../contracts/token/ERC20/index.d.ts.map | 1 - .../contracts/token/ERC20/index.js | 2 - .../contracts/token/ERC721/ERC721.d.ts | 212 -- .../contracts/token/ERC721/ERC721.d.ts.map | 1 - .../contracts/token/ERC721/ERC721.js | 2 - .../contracts/token/ERC721/IERC721.d.ts | 200 -- .../contracts/token/ERC721/IERC721.d.ts.map | 1 - .../contracts/token/ERC721/IERC721.js | 2 - .../token/ERC721/IERC721Receiver.d.ts | 40 - .../token/ERC721/IERC721Receiver.d.ts.map | 1 - .../contracts/token/ERC721/IERC721Receiver.js | 2 - .../ERC721/extensions/IERC721Metadata.d.ts | 212 -- .../extensions/IERC721Metadata.d.ts.map | 1 - .../ERC721/extensions/IERC721Metadata.js | 2 - .../token/ERC721/extensions/index.d.ts | 2 - .../token/ERC721/extensions/index.d.ts.map | 1 - .../token/ERC721/extensions/index.js | 2 - .../contracts/token/ERC721/index.d.ts | 6 - .../contracts/token/ERC721/index.d.ts.map | 1 - .../contracts/token/ERC721/index.js | 2 - .../@openzeppelin/contracts/token/index.d.ts | 7 - .../contracts/token/index.d.ts.map | 1 - .../@openzeppelin/contracts/token/index.js | 2 - .../@openzeppelin/contracts/utils/index.d.ts | 3 - .../contracts/utils/index.d.ts.map | 1 - .../@openzeppelin/contracts/utils/index.js | 2 - .../contracts/utils/introspection/ERC165.d.ts | 30 - .../utils/introspection/ERC165.d.ts.map | 1 - .../contracts/utils/introspection/ERC165.js | 2 - .../utils/introspection/IERC165.d.ts | 30 - .../utils/introspection/IERC165.d.ts.map | 1 - .../contracts/utils/introspection/IERC165.js | 2 - .../contracts/utils/introspection/index.d.ts | 3 - .../utils/introspection/index.d.ts.map | 1 - .../contracts/utils/introspection/index.js | 2 - dist/types/@openzeppelin/index.d.ts | 7 - dist/types/@openzeppelin/index.d.ts.map | 1 - dist/types/@openzeppelin/index.js | 2 - dist/types/common.d.ts | 51 - dist/types/common.d.ts.map | 1 - dist/types/common.js | 2 - .../@ens/LegacyENSRegistry.sol/LegacyENS.d.ts | 159 -- .../LegacyENSRegistry.sol/LegacyENS.d.ts.map | 1 - .../@ens/LegacyENSRegistry.sol/LegacyENS.js | 2 - .../LegacyENSRegistry.d.ts | 159 -- .../LegacyENSRegistry.d.ts.map | 1 - .../LegacyENSRegistry.js | 2 - .../@ens/LegacyENSRegistry.sol/index.d.ts | 3 - .../@ens/LegacyENSRegistry.sol/index.d.ts.map | 1 - .../@ens/LegacyENSRegistry.sol/index.js | 2 - .../BaseRegistrar.d.ts | 410 --- .../BaseRegistrar.d.ts.map | 1 - .../BaseRegistrar.js | 2 - .../LegacyETHRegistrarController.sol/ENS.d.ts | 253 -- .../ENS.d.ts.map | 1 - .../LegacyETHRegistrarController.sol/ENS.js | 2 - .../IERC165.d.ts | 30 - .../IERC165.d.ts.map | 1 - .../IERC165.js | 2 - .../IERC721.d.ts | 200 -- .../IERC721.d.ts.map | 1 - .../IERC721.js | 2 - .../LegacyETHRegistrarController.d.ts | 303 --- .../LegacyETHRegistrarController.d.ts.map | 1 - .../LegacyETHRegistrarController.js | 2 - .../Ownable.d.ts | 59 - .../Ownable.d.ts.map | 1 - .../Ownable.js | 2 - .../PriceOracle.d.ts | 38 - .../PriceOracle.d.ts.map | 1 - .../PriceOracle.js | 2 - .../Resolver.d.ts | 415 ---- .../Resolver.d.ts.map | 1 - .../Resolver.js | 2 - .../index.d.ts | 9 - .../index.d.ts.map | 1 - .../LegacyETHRegistrarController.sol/index.js | 2 - .../contracts/@ens/dnssec/DNSRegistrar.d.ts | 170 -- .../@ens/dnssec/DNSRegistrar.d.ts.map | 1 - .../contracts/@ens/dnssec/DNSRegistrar.js | 2 - dist/types/contracts/@ens/dnssec/DNSSEC.d.ts | 189 -- .../contracts/@ens/dnssec/DNSSEC.d.ts.map | 1 - dist/types/contracts/@ens/dnssec/DNSSEC.js | 2 - .../dnssec/DNSSECImpl.sol/DNSSECImpl.d.ts | 278 --- .../dnssec/DNSSECImpl.sol/DNSSECImpl.d.ts.map | 1 - .../@ens/dnssec/DNSSECImpl.sol/DNSSECImpl.js | 2 - .../@ens/dnssec/DNSSECImpl.sol/Owned.d.ts | 30 - .../@ens/dnssec/DNSSECImpl.sol/Owned.d.ts.map | 1 - .../@ens/dnssec/DNSSECImpl.sol/Owned.js | 2 - .../@ens/dnssec/DNSSECImpl.sol/index.d.ts | 3 - .../@ens/dnssec/DNSSECImpl.sol/index.d.ts.map | 1 - .../@ens/dnssec/DNSSECImpl.sol/index.js | 2 - .../@ens/dnssec/TLDPublicSuffixList.d.ts | 26 - .../@ens/dnssec/TLDPublicSuffixList.d.ts.map | 1 - .../@ens/dnssec/TLDPublicSuffixList.js | 2 - .../dnssec/algorithms/DummyAlgorithm.d.ts | 38 - .../dnssec/algorithms/DummyAlgorithm.d.ts.map | 1 - .../@ens/dnssec/algorithms/DummyAlgorithm.js | 2 - .../dnssec/algorithms/RSASHA256Algorithm.d.ts | 38 - .../algorithms/RSASHA256Algorithm.d.ts.map | 1 - .../dnssec/algorithms/RSASHA256Algorithm.js | 2 - .../@ens/dnssec/algorithms/index.d.ts | 3 - .../@ens/dnssec/algorithms/index.d.ts.map | 1 - .../contracts/@ens/dnssec/algorithms/index.js | 2 - .../@ens/dnssec/digests/SHA1Digest.d.ts | 31 - .../@ens/dnssec/digests/SHA1Digest.d.ts.map | 1 - .../@ens/dnssec/digests/SHA1Digest.js | 2 - .../@ens/dnssec/digests/SHA1NSEC3Digest.d.ts | 38 - .../dnssec/digests/SHA1NSEC3Digest.d.ts.map | 1 - .../@ens/dnssec/digests/SHA1NSEC3Digest.js | 2 - .../@ens/dnssec/digests/SHA256Digest.d.ts | 31 - .../@ens/dnssec/digests/SHA256Digest.d.ts.map | 1 - .../@ens/dnssec/digests/SHA256Digest.js | 2 - .../contracts/@ens/dnssec/digests/index.d.ts | 4 - .../@ens/dnssec/digests/index.d.ts.map | 1 - .../contracts/@ens/dnssec/digests/index.js | 2 - dist/types/contracts/@ens/dnssec/index.d.ts | 14 - .../contracts/@ens/dnssec/index.d.ts.map | 1 - dist/types/contracts/@ens/dnssec/index.js | 2 - .../@ens/dnssec/interfaces/Algorithm.d.ts | 38 - .../@ens/dnssec/interfaces/Algorithm.d.ts.map | 1 - .../@ens/dnssec/interfaces/Algorithm.js | 2 - .../@ens/dnssec/interfaces/Digest.d.ts | 31 - .../@ens/dnssec/interfaces/Digest.d.ts.map | 1 - .../@ens/dnssec/interfaces/Digest.js | 2 - .../@ens/dnssec/interfaces/IDNSRegistrar.d.ts | 88 - .../dnssec/interfaces/IDNSRegistrar.d.ts.map | 1 - .../@ens/dnssec/interfaces/IDNSRegistrar.js | 2 - .../@ens/dnssec/interfaces/NSEC3Digest.d.ts | 38 - .../dnssec/interfaces/NSEC3Digest.d.ts.map | 1 - .../@ens/dnssec/interfaces/NSEC3Digest.js | 2 - .../dnssec/interfaces/PublicSuffixList.d.ts | 26 - .../interfaces/PublicSuffixList.d.ts.map | 1 - .../dnssec/interfaces/PublicSuffixList.js | 2 - .../@ens/dnssec/interfaces/index.d.ts | 6 - .../@ens/dnssec/interfaces/index.d.ts.map | 1 - .../contracts/@ens/dnssec/interfaces/index.js | 2 - .../contracts/@ens/dnssec/libraries/SHA1.d.ts | 37 - .../@ens/dnssec/libraries/SHA1.d.ts.map | 1 - .../contracts/@ens/dnssec/libraries/SHA1.js | 2 - .../@ens/dnssec/libraries/index.d.ts | 2 - .../@ens/dnssec/libraries/index.d.ts.map | 1 - .../contracts/@ens/dnssec/libraries/index.js | 2 - dist/types/contracts/@ens/index.d.ts | 7 - dist/types/contracts/@ens/index.d.ts.map | 1 - dist/types/contracts/@ens/index.js | 2 - .../contracts/@maticnetwork/IChildToken.d.ts | 36 - .../@maticnetwork/IChildToken.d.ts.map | 1 - .../contracts/@maticnetwork/IChildToken.js | 2 - .../@maticnetwork/IMintableERC721.d.ts | 234 -- .../@maticnetwork/IMintableERC721.d.ts.map | 1 - .../@maticnetwork/IMintableERC721.js | 2 - .../@maticnetwork/IRootChainManager.d.ts | 150 -- .../@maticnetwork/IRootChainManager.d.ts.map | 1 - .../@maticnetwork/IRootChainManager.js | 2 - .../RootChainManagerStorage.d.ts | 30 - .../RootChainManagerStorage.d.ts.map | 1 - .../@maticnetwork/RootChainManagerStorage.js | 2 - dist/types/contracts/@maticnetwork/index.d.ts | 7 - .../contracts/@maticnetwork/index.d.ts.map | 1 - dist/types/contracts/@maticnetwork/index.js | 2 - .../DummyStateSender.d.ts | 58 - .../DummyStateSender.d.ts.map | 1 - .../DummyStateSender.sol/DummyStateSender.js | 2 - .../DummyStateSender.sol/IStateSender.d.ts | 36 - .../IStateSender.d.ts.map | 1 - .../DummyStateSender.sol/IStateSender.js | 2 - .../DummyStateSender.sol/index.d.ts | 3 - .../DummyStateSender.sol/index.d.ts.map | 1 - .../pos-portal/DummyStateSender.sol/index.js | 2 - .../AccessControl.d.ts | 170 -- .../AccessControl.d.ts.map | 1 - .../AccessControl.js | 2 - .../AccessControlMixin.d.ts | 170 -- .../AccessControlMixin.d.ts.map | 1 - .../AccessControlMixin.js | 2 - .../MintableERC721Predicate.sol/IERC165.d.ts | 30 - .../IERC165.d.ts.map | 1 - .../MintableERC721Predicate.sol/IERC165.js | 2 - .../MintableERC721Predicate.sol/IERC721.d.ts | 200 -- .../IERC721.d.ts.map | 1 - .../MintableERC721Predicate.sol/IERC721.js | 2 - .../IERC721Receiver.d.ts | 40 - .../IERC721Receiver.d.ts.map | 1 - .../IERC721Receiver.js | 2 - .../IMintableERC721.d.ts | 234 -- .../IMintableERC721.d.ts.map | 1 - .../IMintableERC721.js | 2 - .../ITokenPredicate.d.ts | 56 - .../ITokenPredicate.d.ts.map | 1 - .../ITokenPredicate.js | 2 - .../MintableERC721Predicate.d.ts | 304 --- .../MintableERC721Predicate.d.ts.map | 1 - .../MintableERC721Predicate.js | 2 - .../MintableERC721Predicate.sol/index.d.ts | 9 - .../index.d.ts.map | 1 - .../MintableERC721Predicate.sol/index.js | 2 - .../RootChainManager.sol/AccessControl.d.ts | 170 -- .../AccessControl.d.ts.map | 1 - .../RootChainManager.sol/AccessControl.js | 2 - .../AccessControlMixin.d.ts | 170 -- .../AccessControlMixin.d.ts.map | 1 - .../AccessControlMixin.js | 2 - .../RootChainManager.sol/EIP712Base.d.ts | 34 - .../RootChainManager.sol/EIP712Base.d.ts.map | 1 - .../RootChainManager.sol/EIP712Base.js | 2 - .../ICheckpointManager.d.ts | 58 - .../ICheckpointManager.d.ts.map | 1 - .../ICheckpointManager.js | 2 - .../IRootChainManager.d.ts | 150 -- .../IRootChainManager.d.ts.map | 1 - .../RootChainManager.sol/IRootChainManager.js | 2 - .../RootChainManager.sol/IStateSender.d.ts | 36 - .../IStateSender.d.ts.map | 1 - .../RootChainManager.sol/IStateSender.js | 2 - .../RootChainManager.sol/ITokenPredicate.d.ts | 56 - .../ITokenPredicate.d.ts.map | 1 - .../RootChainManager.sol/ITokenPredicate.js | 2 - .../NativeMetaTransaction.d.ts | 84 - .../NativeMetaTransaction.d.ts.map | 1 - .../NativeMetaTransaction.js | 2 - .../RootChainManager.d.ts | 448 ---- .../RootChainManager.d.ts.map | 1 - .../RootChainManager.sol/RootChainManager.js | 2 - .../RootChainManagerStorage.d.ts | 46 - .../RootChainManagerStorage.d.ts.map | 1 - .../RootChainManagerStorage.js | 2 - .../RootChainManager.sol/index.d.ts | 11 - .../RootChainManager.sol/index.d.ts.map | 1 - .../pos-portal/RootChainManager.sol/index.js | 2 - .../ICheckpointManager.d.ts | 58 - .../ICheckpointManager.d.ts.map | 1 - .../ICheckpointManager.js | 2 - .../IRootChain.d.ts | 56 - .../IRootChain.d.ts.map | 1 - .../SimpleCheckpointManager.sol/IRootChain.js | 2 - .../SimpleCheckpointManager.d.ts | 113 - .../SimpleCheckpointManager.d.ts.map | 1 - .../SimpleCheckpointManager.js | 2 - .../SimpleCheckpointManager.sol/index.d.ts | 4 - .../index.d.ts.map | 1 - .../SimpleCheckpointManager.sol/index.js | 2 - .../@maticnetwork/pos-portal/index.d.ts | 9 - .../@maticnetwork/pos-portal/index.d.ts.map | 1 - .../@maticnetwork/pos-portal/index.js | 2 - dist/types/contracts/ChildRegistry.d.ts | 244 -- dist/types/contracts/ChildRegistry.d.ts.map | 1 - dist/types/contracts/ChildRegistry.js | 2 - dist/types/contracts/DotCoinBurner.d.ts | 47 - dist/types/contracts/DotCoinBurner.d.ts.map | 1 - dist/types/contracts/DotCoinBurner.js | 2 - dist/types/contracts/IAddressReader.d.ts | 63 - dist/types/contracts/IAddressReader.d.ts.map | 1 - dist/types/contracts/IAddressReader.js | 2 - dist/types/contracts/IDataReader.d.ts | 158 -- dist/types/contracts/IDataReader.d.ts.map | 1 - dist/types/contracts/IDataReader.js | 2 - dist/types/contracts/IERC1967.d.ts | 52 - dist/types/contracts/IERC1967.d.ts.map | 1 - dist/types/contracts/IERC1967.js | 2 - dist/types/contracts/IMintingManager.d.ts | 357 --- dist/types/contracts/IMintingManager.d.ts.map | 1 - dist/types/contracts/IMintingManager.js | 2 - dist/types/contracts/IRecordReader.d.ts | 90 - dist/types/contracts/IRecordReader.d.ts.map | 1 - dist/types/contracts/IRecordReader.js | 2 - dist/types/contracts/IRecordStorage.d.ts | 240 -- dist/types/contracts/IRecordStorage.d.ts.map | 1 - dist/types/contracts/IRecordStorage.js | 2 - dist/types/contracts/IRegistryReader.d.ts | 86 - dist/types/contracts/IRegistryReader.d.ts.map | 1 - dist/types/contracts/IRegistryReader.js | 2 - dist/types/contracts/IReverseRegistry.d.ts | 69 - .../types/contracts/IReverseRegistry.d.ts.map | 1 - dist/types/contracts/IReverseRegistry.js | 2 - dist/types/contracts/IRootRegistry.d.ts | 260 -- dist/types/contracts/IRootRegistry.d.ts.map | 1 - dist/types/contracts/IRootRegistry.js | 2 - dist/types/contracts/IUNSRegistry.d.ts | 784 ------ dist/types/contracts/IUNSRegistry.d.ts.map | 1 - dist/types/contracts/IUNSRegistry.js | 2 - dist/types/contracts/KeyStorage.d.ts | 34 - dist/types/contracts/KeyStorage.d.ts.map | 1 - dist/types/contracts/KeyStorage.js | 2 - dist/types/contracts/MintingManager.d.ts | 761 ------ dist/types/contracts/MintingManager.d.ts.map | 1 - dist/types/contracts/MintingManager.js | 2 - dist/types/contracts/ProxyReader.d.ts | 490 ---- dist/types/contracts/ProxyReader.d.ts.map | 1 - dist/types/contracts/ProxyReader.js | 2 - dist/types/contracts/RecordStorage.d.ts | 252 -- dist/types/contracts/RecordStorage.d.ts.map | 1 - dist/types/contracts/RecordStorage.js | 2 - dist/types/contracts/RootRegistry.d.ts | 286 --- dist/types/contracts/RootRegistry.d.ts.map | 1 - dist/types/contracts/RootRegistry.js | 2 - dist/types/contracts/UNSOperator.d.ts | 81 - dist/types/contracts/UNSOperator.d.ts.map | 1 - dist/types/contracts/UNSOperator.js | 2 - dist/types/contracts/UNSRegistry.d.ts | 907 ------- dist/types/contracts/UNSRegistry.d.ts.map | 1 - dist/types/contracts/UNSRegistry.js | 2 - dist/types/contracts/cns/ICNSRegistry.d.ts | 248 -- .../types/contracts/cns/ICNSRegistry.d.ts.map | 1 - dist/types/contracts/cns/ICNSRegistry.js | 2 - .../contracts/cns/IMintingController.d.ts | 116 - .../contracts/cns/IMintingController.d.ts.map | 1 - .../types/contracts/cns/IMintingController.js | 2 - dist/types/contracts/cns/IResolver.d.ts | 122 - dist/types/contracts/cns/IResolver.d.ts.map | 1 - dist/types/contracts/cns/IResolver.js | 2 - .../contracts/cns/IURIPrefixController.d.ts | 30 - .../cns/IURIPrefixController.d.ts.map | 1 - .../contracts/cns/IURIPrefixController.js | 2 - dist/types/contracts/cns/index.d.ts | 5 - dist/types/contracts/cns/index.d.ts.map | 1 - dist/types/contracts/cns/index.js | 2 - dist/types/contracts/custody/ENSCustody.d.ts | 549 ---- .../contracts/custody/ENSCustody.d.ts.map | 1 - dist/types/contracts/custody/ENSCustody.js | 2 - dist/types/contracts/custody/IENSCustody.d.ts | 219 -- .../contracts/custody/IENSCustody.d.ts.map | 1 - dist/types/contracts/custody/IENSCustody.js | 2 - .../contracts/custody/ZilliqaRecover.d.ts | 307 --- .../contracts/custody/ZilliqaRecover.d.ts.map | 1 - .../types/contracts/custody/ZilliqaRecover.js | 2 - dist/types/contracts/custody/index.d.ts | 4 - dist/types/contracts/custody/index.d.ts.map | 1 - dist/types/contracts/custody/index.js | 2 - .../contracts/history/IUNSRegistryV07.d.ts | 733 ------ .../history/IUNSRegistryV07.d.ts.map | 1 - .../contracts/history/IUNSRegistryV07.js | 2 - .../contracts/history/ProxyReaderV04.d.ts | 344 --- .../contracts/history/ProxyReaderV04.d.ts.map | 1 - .../types/contracts/history/ProxyReaderV04.js | 2 - .../contracts/history/UNSRegistryV07.d.ts | 852 ------- .../contracts/history/UNSRegistryV07.d.ts.map | 1 - .../types/contracts/history/UNSRegistryV07.js | 2 - dist/types/contracts/history/index.d.ts | 4 - dist/types/contracts/history/index.d.ts.map | 1 - dist/types/contracts/history/index.js | 2 - dist/types/contracts/index.d.ts | 40 - dist/types/contracts/index.d.ts.map | 1 - dist/types/contracts/index.js | 2 - .../marketplace/ISeaportProxyBuyer.d.ts | 128 - .../marketplace/ISeaportProxyBuyer.d.ts.map | 1 - .../marketplace/ISeaportProxyBuyer.js | 2 - .../marketplace/SeaportProxyBuyer.d.ts | 484 ---- .../marketplace/SeaportProxyBuyer.d.ts.map | 1 - .../marketplace/SeaportProxyBuyer.js | 2 - dist/types/contracts/marketplace/index.d.ts | 3 - .../contracts/marketplace/index.d.ts.map | 1 - dist/types/contracts/marketplace/index.js | 2 - .../types/contracts/metatx/BaseForwarder.d.ts | 73 - .../contracts/metatx/BaseForwarder.d.ts.map | 1 - dist/types/contracts/metatx/BaseForwarder.js | 2 - .../metatx/BaseRoutingForwarder.d.ts | 73 - .../metatx/BaseRoutingForwarder.d.ts.map | 1 - .../contracts/metatx/BaseRoutingForwarder.js | 2 - .../metatx/CNSRegistryForwarder.d.ts | 73 - .../metatx/CNSRegistryForwarder.d.ts.map | 1 - .../contracts/metatx/CNSRegistryForwarder.js | 2 - .../contracts/metatx/ERC2771Context.d.ts | 46 - .../contracts/metatx/ERC2771Context.d.ts.map | 1 - dist/types/contracts/metatx/ERC2771Context.js | 2 - .../metatx/ERC2771RegistryContext.d.ts | 46 - .../metatx/ERC2771RegistryContext.d.ts.map | 1 - .../metatx/ERC2771RegistryContext.js | 2 - dist/types/contracts/metatx/Forwarder.d.ts | 89 - .../types/contracts/metatx/Forwarder.d.ts.map | 1 - dist/types/contracts/metatx/Forwarder.js | 2 - dist/types/contracts/metatx/IForwarder.d.ts | 73 - .../contracts/metatx/IForwarder.d.ts.map | 1 - dist/types/contracts/metatx/IForwarder.js | 2 - .../metatx/MintingManagerForwarder.d.ts | 73 - .../metatx/MintingManagerForwarder.d.ts.map | 1 - .../metatx/MintingManagerForwarder.js | 2 - .../contracts/metatx/ResolverForwarder.d.ts | 73 - .../metatx/ResolverForwarder.d.ts.map | 1 - .../contracts/metatx/ResolverForwarder.js | 2 - .../metatx/UNSRegistryForwarder.d.ts | 89 - .../metatx/UNSRegistryForwarder.d.ts.map | 1 - .../contracts/metatx/UNSRegistryForwarder.js | 2 - dist/types/contracts/metatx/index.d.ts | 11 - dist/types/contracts/metatx/index.d.ts.map | 1 - dist/types/contracts/metatx/index.js | 2 - .../contracts/mocks/BaseForwarderMock.d.ts | 89 - .../mocks/BaseForwarderMock.d.ts.map | 1 - .../contracts/mocks/BaseForwarderMock.js | 2 - .../mocks/BaseRoutingForwarderMock.d.ts | 131 - .../mocks/BaseRoutingForwarderMock.d.ts.map | 1 - .../mocks/BaseRoutingForwarderMock.js | 2 - dist/types/contracts/mocks/ERC1155Mock.d.ts | 517 ---- .../contracts/mocks/ERC1155Mock.d.ts.map | 1 - dist/types/contracts/mocks/ERC1155Mock.js | 2 - dist/types/contracts/mocks/ERC20Mock.d.ts | 184 -- dist/types/contracts/mocks/ERC20Mock.d.ts.map | 1 - dist/types/contracts/mocks/ERC20Mock.js | 2 - .../contracts/mocks/ERC20UnsafeMock.d.ts | 184 -- .../contracts/mocks/ERC20UnsafeMock.d.ts.map | 1 - dist/types/contracts/mocks/ERC20UnsafeMock.js | 2 - .../contracts/mocks/ERC2771ContextMock.d.ts | 70 - .../mocks/ERC2771ContextMock.d.ts.map | 1 - .../contracts/mocks/ERC2771ContextMock.js | 2 - .../mocks/ERC2771RegistryContextMock.d.ts | 70 - .../mocks/ERC2771RegistryContextMock.d.ts.map | 1 - .../mocks/ERC2771RegistryContextMock.js | 2 - dist/types/contracts/mocks/ERC721Mock.d.ts | 226 -- .../types/contracts/mocks/ERC721Mock.d.ts.map | 1 - dist/types/contracts/mocks/ERC721Mock.js | 2 - .../contracts/mocks/ERC721ReceiverMock.d.ts | 40 - .../mocks/ERC721ReceiverMock.d.ts.map | 1 - .../contracts/mocks/ERC721ReceiverMock.js | 2 - .../types/contracts/mocks/MinterRoleMock.d.ts | 261 -- .../contracts/mocks/MinterRoleMock.d.ts.map | 1 - dist/types/contracts/mocks/MinterRoleMock.js | 2 - .../contracts/mocks/MintingManagerMock.d.ts | 769 ------ .../mocks/MintingManagerMock.d.ts.map | 1 - .../contracts/mocks/MintingManagerMock.js | 2 - .../mocks/UNSRegistryForwarderMock.d.ts | 93 - .../mocks/UNSRegistryForwarderMock.d.ts.map | 1 - .../mocks/UNSRegistryForwarderMock.js | 2 - .../contracts/mocks/UNSRegistryMock.d.ts | 919 ------- .../contracts/mocks/UNSRegistryMock.d.ts.map | 1 - dist/types/contracts/mocks/UNSRegistryMock.js | 2 - dist/types/contracts/mocks/index.d.ts | 14 - dist/types/contracts/mocks/index.d.ts.map | 1 - dist/types/contracts/mocks/index.js | 2 - dist/types/contracts/roles/MinterRole.d.ts | 253 -- .../types/contracts/roles/MinterRole.d.ts.map | 1 - dist/types/contracts/roles/MinterRole.js | 2 - dist/types/contracts/roles/index.d.ts | 2 - dist/types/contracts/roles/index.d.ts.map | 1 - dist/types/contracts/roles/index.js | 2 - dist/types/contracts/utils/Blocklist.d.ts | 84 - dist/types/contracts/utils/Blocklist.d.ts.map | 1 - dist/types/contracts/utils/Blocklist.js | 2 - .../contracts/utils/ERC1271SimpleWallet.d.ts | 36 - .../utils/ERC1271SimpleWallet.d.ts.map | 1 - .../contracts/utils/ERC1271SimpleWallet.js | 2 - dist/types/contracts/utils/MultiSend.d.ts | 21 - dist/types/contracts/utils/MultiSend.d.ts.map | 1 - dist/types/contracts/utils/MultiSend.js | 2 - dist/types/contracts/utils/Ownable.d.ts | 69 - dist/types/contracts/utils/Ownable.d.ts.map | 1 - dist/types/contracts/utils/Ownable.js | 2 - dist/types/contracts/utils/Pausable.d.ts | 70 - dist/types/contracts/utils/Pausable.d.ts.map | 1 - dist/types/contracts/utils/Pausable.js | 2 - dist/types/contracts/utils/index.d.ts | 6 - dist/types/contracts/utils/index.d.ts.map | 1 - dist/types/contracts/utils/index.js | 2 - .../dot-crypto/contracts/CNSRegistry.d.ts | 596 ----- .../dot-crypto/contracts/CNSRegistry.d.ts.map | 1 - .../types/dot-crypto/contracts/CNSRegistry.js | 2 - .../dot-crypto/contracts/ICNSRegistry.d.ts | 506 ---- .../contracts/ICNSRegistry.d.ts.map | 1 - .../dot-crypto/contracts/ICNSRegistry.js | 2 - .../dot-crypto/contracts/IRegistryReader.d.ts | 100 - .../contracts/IRegistryReader.d.ts.map | 1 - .../dot-crypto/contracts/IRegistryReader.js | 2 - .../types/dot-crypto/contracts/IResolver.d.ts | 90 - .../dot-crypto/contracts/IResolver.d.ts.map | 1 - dist/types/dot-crypto/contracts/IResolver.js | 2 - .../dot-crypto/contracts/IResolverReader.d.ts | 98 - .../contracts/IResolverReader.d.ts.map | 1 - .../dot-crypto/contracts/IResolverReader.js | 2 - dist/types/dot-crypto/contracts/Resolver.d.ts | 312 --- .../dot-crypto/contracts/Resolver.d.ts.map | 1 - dist/types/dot-crypto/contracts/Resolver.js | 2 - .../controllers/DomainZoneController.d.ts | 214 -- .../controllers/DomainZoneController.d.ts.map | 1 - .../controllers/DomainZoneController.js | 2 - .../controllers/IMintingController.d.ts | 66 - .../controllers/IMintingController.d.ts.map | 1 - .../controllers/IMintingController.js | 2 - .../controllers/ISignatureController.d.ts | 215 -- .../controllers/ISignatureController.d.ts.map | 1 - .../controllers/ISignatureController.js | 2 - .../controllers/IURIPrefixController.d.ts | 30 - .../controllers/IURIPrefixController.d.ts.map | 1 - .../controllers/IURIPrefixController.js | 2 - .../controllers/MintingController.d.ts | 162 -- .../controllers/MintingController.d.ts.map | 1 - .../controllers/MintingController.js | 2 - .../controllers/SignatureController.d.ts | 257 -- .../controllers/SignatureController.d.ts.map | 1 - .../controllers/SignatureController.js | 2 - .../controllers/URIPrefixController.d.ts | 136 - .../controllers/URIPrefixController.d.ts.map | 1 - .../controllers/URIPrefixController.js | 2 - .../contracts/controllers/index.d.ts | 8 - .../contracts/controllers/index.d.ts.map | 1 - .../dot-crypto/contracts/controllers/index.js | 2 - dist/types/dot-crypto/contracts/index.d.ts | 11 - .../types/dot-crypto/contracts/index.d.ts.map | 1 - dist/types/dot-crypto/contracts/index.js | 2 - .../contracts/util/BulkWhitelistedRole.d.ts | 140 -- .../util/BulkWhitelistedRole.d.ts.map | 1 - .../contracts/util/BulkWhitelistedRole.js | 2 - .../contracts/util/ControllerRole.d.ts | 38 - .../contracts/util/ControllerRole.d.ts.map | 1 - .../contracts/util/ControllerRole.js | 2 - .../dot-crypto/contracts/util/FreeMinter.d.ts | 66 - .../contracts/util/FreeMinter.d.ts.map | 1 - .../dot-crypto/contracts/util/FreeMinter.js | 2 - .../contracts/util/SignatureUtil.d.ts | 30 - .../contracts/util/SignatureUtil.d.ts.map | 1 - .../contracts/util/SignatureUtil.js | 2 - .../dot-crypto/contracts/util/index.d.ts | 5 - .../dot-crypto/contracts/util/index.d.ts.map | 1 - dist/types/dot-crypto/contracts/util/index.js | 2 - dist/types/dot-crypto/index.d.ts | 3 - dist/types/dot-crypto/index.d.ts.map | 1 - dist/types/dot-crypto/index.js | 2 - .../dnssec-oracle/BytesUtils__factory.d.ts | 35 - .../BytesUtils__factory.d.ts.map | 1 - .../dnssec-oracle/BytesUtils__factory.js | 52 - .../contracts/dnssec-oracle/index.d.ts | 2 - .../contracts/dnssec-oracle/index.d.ts.map | 1 - .../contracts/dnssec-oracle/index.js | 5 - .../BaseRegistrarImplementation__factory.d.ts | 583 ----- ...eRegistrarImplementation__factory.d.ts.map | 1 - .../BaseRegistrarImplementation__factory.js | 764 ------ .../ethregistrar/DummyOracle__factory.d.ts | 51 - .../DummyOracle__factory.d.ts.map | 1 - .../ethregistrar/DummyOracle__factory.js | 73 - .../ETHRegistrarController__factory.d.ts | 483 ---- .../ETHRegistrarController__factory.d.ts.map | 1 - .../ETHRegistrarController__factory.js | 631 ----- .../ethregistrar/IBaseRegistrar__factory.d.ts | 415 ---- .../IBaseRegistrar__factory.d.ts.map | 1 - .../ethregistrar/IBaseRegistrar__factory.js | 544 ---- .../IETHRegistrarController__factory.d.ts | 153 -- .../IETHRegistrarController__factory.d.ts.map | 1 - .../IETHRegistrarController__factory.js | 204 -- .../ethregistrar/IPriceOracle__factory.d.ts | 39 - .../IPriceOracle__factory.d.ts.map | 1 - .../ethregistrar/IPriceOracle__factory.js | 57 - .../AggregatorInterface__factory.d.ts | 18 - .../AggregatorInterface__factory.d.ts.map | 1 - .../AggregatorInterface__factory.js | 29 - .../StablePriceOracle__factory.d.ts | 172 -- .../StablePriceOracle__factory.d.ts.map | 1 - .../StablePriceOracle__factory.js | 232 -- .../StablePriceOracle.sol/index.d.ts | 3 - .../StablePriceOracle.sol/index.d.ts.map | 1 - .../StablePriceOracle.sol/index.js | 7 - .../contracts/ethregistrar/index.d.ts | 8 - .../contracts/ethregistrar/index.d.ts.map | 1 - .../contracts/ethregistrar/index.js | 39 - .../ens-contracts/contracts/index.d.ts | 9 - .../ens-contracts/contracts/index.d.ts.map | 1 - .../ens-contracts/contracts/index.js | 34 - .../registry/ENSRegistry__factory.d.ts | 312 --- .../registry/ENSRegistry__factory.d.ts.map | 1 - .../registry/ENSRegistry__factory.js | 410 --- .../contracts/registry/ENS__factory.d.ts | 293 --- .../contracts/registry/ENS__factory.d.ts.map | 1 - .../contracts/registry/ENS__factory.js | 385 --- .../contracts/registry/index.d.ts | 3 - .../contracts/registry/index.d.ts.map | 1 - .../ens-contracts/contracts/registry/index.js | 7 - .../resolvers/IMulticallable__factory.d.ts | 40 - .../IMulticallable__factory.d.ts.map | 1 - .../resolvers/IMulticallable__factory.js | 59 - .../resolvers/Multicallable__factory.d.ts | 54 - .../resolvers/Multicallable__factory.d.ts.map | 1 - .../resolvers/Multicallable__factory.js | 78 - .../resolvers/PublicResolver__factory.d.ts | 805 ------ .../PublicResolver__factory.d.ts.map | 1 - .../resolvers/PublicResolver__factory.js | 1047 -------- .../resolvers/ResolverBase__factory.d.ts | 61 - .../resolvers/ResolverBase__factory.d.ts.map | 1 - .../resolvers/ResolverBase__factory.js | 86 - .../resolvers/Resolver__factory.d.ts | 735 ------ .../resolvers/Resolver__factory.d.ts.map | 1 - .../contracts/resolvers/Resolver__factory.js | 957 ------- .../contracts/resolvers/index.d.ts | 7 - .../contracts/resolvers/index.d.ts.map | 1 - .../contracts/resolvers/index.js | 37 - .../profiles/ABIResolver__factory.d.ts | 116 - .../profiles/ABIResolver__factory.d.ts.map | 1 - .../profiles/ABIResolver__factory.js | 157 -- .../profiles/AddrResolver__factory.d.ts | 160 -- .../profiles/AddrResolver__factory.d.ts.map | 1 - .../profiles/AddrResolver__factory.js | 214 -- .../ContentHashResolver__factory.d.ts | 104 - .../ContentHashResolver__factory.d.ts.map | 1 - .../profiles/ContentHashResolver__factory.js | 142 -- .../profiles/DNSResolver__factory.d.ts | 208 -- .../profiles/DNSResolver__factory.d.ts.map | 1 - .../profiles/DNSResolver__factory.js | 275 -- .../profiles/IABIResolver__factory.d.ts | 45 - .../profiles/IABIResolver__factory.d.ts.map | 1 - .../profiles/IABIResolver__factory.js | 64 - .../profiles/IAddrResolver__factory.d.ts | 37 - .../profiles/IAddrResolver__factory.d.ts.map | 1 - .../profiles/IAddrResolver__factory.js | 54 - .../profiles/IAddressResolver__factory.d.ts | 46 - .../IAddressResolver__factory.d.ts.map | 1 - .../profiles/IAddressResolver__factory.js | 65 - .../IContentHashResolver__factory.d.ts | 37 - .../IContentHashResolver__factory.d.ts.map | 1 - .../profiles/IContentHashResolver__factory.js | 54 - .../profiles/IDNSRecordResolver__factory.d.ts | 75 - .../IDNSRecordResolver__factory.d.ts.map | 1 - .../profiles/IDNSRecordResolver__factory.js | 101 - .../profiles/IDNSZoneResolver__factory.d.ts | 42 - .../IDNSZoneResolver__factory.d.ts.map | 1 - .../profiles/IDNSZoneResolver__factory.js | 60 - .../profiles/IExtendedResolver__factory.d.ts | 26 - .../IExtendedResolver__factory.d.ts.map | 1 - .../profiles/IExtendedResolver__factory.js | 40 - .../profiles/IInterfaceResolver__factory.d.ts | 46 - .../IInterfaceResolver__factory.d.ts.map | 1 - .../profiles/IInterfaceResolver__factory.js | 65 - .../profiles/INameResolver__factory.d.ts | 37 - .../profiles/INameResolver__factory.d.ts.map | 1 - .../profiles/INameResolver__factory.js | 54 - .../profiles/IPubkeyResolver__factory.d.ts | 46 - .../IPubkeyResolver__factory.d.ts.map | 1 - .../profiles/IPubkeyResolver__factory.js | 65 - .../profiles/ITextResolver__factory.d.ts | 51 - .../profiles/ITextResolver__factory.d.ts.map | 1 - .../profiles/ITextResolver__factory.js | 71 - .../IVersionableResolver__factory.d.ts | 37 - .../IVersionableResolver__factory.d.ts.map | 1 - .../profiles/IVersionableResolver__factory.js | 54 - .../profiles/InterfaceResolver__factory.d.ts | 216 -- .../InterfaceResolver__factory.d.ts.map | 1 - .../profiles/InterfaceResolver__factory.js | 286 --- .../profiles/NameResolver__factory.d.ts | 104 - .../profiles/NameResolver__factory.d.ts.map | 1 - .../profiles/NameResolver__factory.js | 142 -- .../profiles/PubkeyResolver__factory.d.ts | 117 - .../profiles/PubkeyResolver__factory.d.ts.map | 1 - .../profiles/PubkeyResolver__factory.js | 158 -- .../profiles/TextResolver__factory.d.ts | 122 - .../profiles/TextResolver__factory.d.ts.map | 1 - .../profiles/TextResolver__factory.js | 164 -- .../contracts/resolvers/profiles/index.d.ts | 21 - .../resolvers/profiles/index.d.ts.map | 1 - .../contracts/resolvers/profiles/index.js | 43 - .../IReverseRegistrar__factory.d.ts | 126 - .../IReverseRegistrar__factory.d.ts.map | 1 - .../IReverseRegistrar__factory.js | 173 -- .../ReverseClaimer__factory.d.ts | 35 - .../ReverseClaimer__factory.d.ts.map | 1 - .../ReverseClaimer__factory.js | 52 - .../NameResolver__factory.d.ts | 22 - .../NameResolver__factory.d.ts.map | 1 - .../NameResolver__factory.js | 34 - .../ReverseRegistrar__factory.d.ts | 278 --- .../ReverseRegistrar__factory.d.ts.map | 1 - .../ReverseRegistrar__factory.js | 370 --- .../ReverseRegistrar.sol/index.d.ts | 3 - .../ReverseRegistrar.sol/index.d.ts.map | 1 - .../ReverseRegistrar.sol/index.js | 7 - .../contracts/reverseRegistrar/index.d.ts | 4 - .../contracts/reverseRegistrar/index.d.ts.map | 1 - .../contracts/reverseRegistrar/index.js | 31 - .../contracts/root/Controllable__factory.d.ts | 107 - .../root/Controllable__factory.d.ts.map | 1 - .../contracts/root/Controllable__factory.js | 144 -- .../contracts/root/Root__factory.d.ts | 197 -- .../contracts/root/Root__factory.d.ts.map | 1 - .../contracts/root/Root__factory.js | 263 -- .../ens-contracts/contracts/root/index.d.ts | 3 - .../contracts/root/index.d.ts.map | 1 - .../ens-contracts/contracts/root/index.js | 7 - .../utils/ERC20Recoverable__factory.d.ts | 82 - .../utils/ERC20Recoverable__factory.d.ts.map | 1 - .../utils/ERC20Recoverable__factory.js | 111 - .../ens-contracts/contracts/utils/index.d.ts | 2 - .../contracts/utils/index.d.ts.map | 1 - .../ens-contracts/contracts/utils/index.js | 5 - .../wrapper/Controllable__factory.d.ts | 107 - .../wrapper/Controllable__factory.d.ts.map | 1 - .../wrapper/Controllable__factory.js | 144 -- .../wrapper/ERC1155Fuse__factory.d.ts | 349 --- .../wrapper/ERC1155Fuse__factory.d.ts.map | 1 - .../contracts/wrapper/ERC1155Fuse__factory.js | 457 ---- .../wrapper/IMetadataService__factory.d.ts | 22 - .../IMetadataService__factory.d.ts.map | 1 - .../wrapper/IMetadataService__factory.js | 35 - .../wrapper/INameWrapperUpgrade__factory.d.ts | 38 - .../INameWrapperUpgrade__factory.d.ts.map | 1 - .../wrapper/INameWrapperUpgrade__factory.js | 54 - .../wrapper/INameWrapper__factory.d.ts | 864 ------- .../wrapper/INameWrapper__factory.d.ts.map | 1 - .../wrapper/INameWrapper__factory.js | 1125 --------- .../wrapper/NameWrapper__factory.d.ts | 1143 --------- .../wrapper/NameWrapper__factory.d.ts.map | 1 - .../contracts/wrapper/NameWrapper__factory.js | 1489 ----------- .../contracts/wrapper/index.d.ts | 7 - .../contracts/wrapper/index.d.ts.map | 1 - .../ens-contracts/contracts/wrapper/index.js | 15 - .../@ensdomains/ens-contracts/index.d.ts | 2 - .../@ensdomains/ens-contracts/index.d.ts.map | 1 - .../@ensdomains/ens-contracts/index.js | 27 - dist/types/factories/@ensdomains/index.d.ts | 2 - .../factories/@ensdomains/index.d.ts.map | 1 - dist/types/factories/@ensdomains/index.js | 27 - .../contracts-2.3/access/index.d.ts | 2 - .../contracts-2.3/access/index.d.ts.map | 1 - .../contracts-2.3/access/index.js | 27 - .../access/roles/MinterRole__factory.d.ts | 69 - .../access/roles/MinterRole__factory.d.ts.map | 1 - .../access/roles/MinterRole__factory.js | 93 - .../roles/WhitelistAdminRole__factory.d.ts | 69 - .../WhitelistAdminRole__factory.d.ts.map | 1 - .../roles/WhitelistAdminRole__factory.js | 93 - .../roles/WhitelistedRole__factory.d.ts | 147 -- .../roles/WhitelistedRole__factory.d.ts.map | 1 - .../access/roles/WhitelistedRole__factory.js | 193 -- .../contracts-2.3/access/roles/index.d.ts | 4 - .../contracts-2.3/access/roles/index.d.ts.map | 1 - .../contracts-2.3/access/roles/index.js | 9 - .../@openzeppelin/contracts-2.3/index.d.ts | 4 - .../contracts-2.3/index.d.ts.map | 1 - .../@openzeppelin/contracts-2.3/index.js | 29 - .../introspection/ERC165__factory.d.ts | 29 - .../introspection/ERC165__factory.d.ts.map | 1 - .../introspection/ERC165__factory.js | 43 - .../introspection/IERC165__factory.d.ts | 24 - .../introspection/IERC165__factory.d.ts.map | 1 - .../introspection/IERC165__factory.js | 37 - .../contracts-2.3/introspection/index.d.ts | 3 - .../introspection/index.d.ts.map | 1 - .../contracts-2.3/introspection/index.js | 7 - .../token/ERC721/ERC721Burnable__factory.d.ts | 275 -- .../ERC721/ERC721Burnable__factory.d.ts.map | 1 - .../token/ERC721/ERC721Burnable__factory.js | 356 --- .../token/ERC721/ERC721__factory.d.ts | 268 -- .../token/ERC721/ERC721__factory.d.ts.map | 1 - .../token/ERC721/ERC721__factory.js | 347 --- .../ERC721/IERC721Metadata__factory.d.ts | 288 --- .../ERC721/IERC721Metadata__factory.d.ts.map | 1 - .../token/ERC721/IERC721Metadata__factory.js | 372 --- .../ERC721/IERC721Receiver__factory.d.ts | 36 - .../ERC721/IERC721Receiver__factory.d.ts.map | 1 - .../token/ERC721/IERC721Receiver__factory.js | 52 - .../token/ERC721/IERC721__factory.d.ts | 248 -- .../token/ERC721/IERC721__factory.d.ts.map | 1 - .../token/ERC721/IERC721__factory.js | 321 --- .../contracts-2.3/token/ERC721/index.d.ts | 6 - .../contracts-2.3/token/ERC721/index.d.ts.map | 1 - .../contracts-2.3/token/ERC721/index.js | 13 - .../contracts-2.3/token/index.d.ts | 2 - .../contracts-2.3/token/index.d.ts.map | 1 - .../contracts-2.3/token/index.js | 27 - ...ControlEnumerableUpgradeable__factory.d.ts | 208 -- ...rolEnumerableUpgradeable__factory.d.ts.map | 1 - ...ssControlEnumerableUpgradeable__factory.js | 276 --- .../AccessControlUpgradeable__factory.d.ts | 176 -- ...AccessControlUpgradeable__factory.d.ts.map | 1 - .../AccessControlUpgradeable__factory.js | 233 -- ...ControlEnumerableUpgradeable__factory.d.ts | 174 -- ...rolEnumerableUpgradeable__factory.d.ts.map | 1 - ...ssControlEnumerableUpgradeable__factory.js | 231 -- .../IAccessControlUpgradeable__factory.d.ts | 142 -- ...AccessControlUpgradeable__factory.d.ts.map | 1 - .../IAccessControlUpgradeable__factory.js | 188 -- .../access/OwnableUpgradeable__factory.d.ts | 59 - .../OwnableUpgradeable__factory.d.ts.map | 1 - .../access/OwnableUpgradeable__factory.js | 81 - .../contracts-upgradeable/access/index.d.ts | 6 - .../access/index.d.ts.map | 1 - .../contracts-upgradeable/access/index.js | 13 - .../contracts-upgradeable/index.d.ts | 7 - .../contracts-upgradeable/index.d.ts.map | 1 - .../contracts-upgradeable/index.js | 32 - .../IERC1271Upgradeable__factory.d.ts | 26 - .../IERC1271Upgradeable__factory.d.ts.map | 1 - .../IERC1271Upgradeable__factory.js | 40 - .../interfaces/index.d.ts | 2 - .../interfaces/index.d.ts.map | 1 - .../contracts-upgradeable/interfaces/index.js | 5 - .../contracts-upgradeable/proxy/index.d.ts | 2 - .../proxy/index.d.ts.map | 1 - .../contracts-upgradeable/proxy/index.js | 27 - .../proxy/utils/Initializable__factory.d.ts | 18 - .../utils/Initializable__factory.d.ts.map | 1 - .../proxy/utils/Initializable__factory.js | 29 - .../proxy/utils/index.d.ts | 2 - .../proxy/utils/index.d.ts.map | 1 - .../proxy/utils/index.js | 5 - .../PausableUpgradeable__factory.d.ts | 48 - .../PausableUpgradeable__factory.d.ts.map | 1 - .../security/PausableUpgradeable__factory.js | 68 - .../ReentrancyGuardUpgradeable__factory.d.ts | 18 - ...entrancyGuardUpgradeable__factory.d.ts.map | 1 - .../ReentrancyGuardUpgradeable__factory.js | 29 - .../contracts-upgradeable/security/index.d.ts | 3 - .../security/index.d.ts.map | 1 - .../contracts-upgradeable/security/index.js | 7 - .../ERC1155/ERC1155Upgradeable__factory.d.ts | 276 --- .../ERC1155Upgradeable__factory.d.ts.map | 1 - .../ERC1155/ERC1155Upgradeable__factory.js | 361 --- .../IERC1155ReceiverUpgradeable__factory.d.ts | 82 - ...C1155ReceiverUpgradeable__factory.d.ts.map | 1 - .../IERC1155ReceiverUpgradeable__factory.js | 113 - .../ERC1155/IERC1155Upgradeable__factory.d.ts | 237 -- .../IERC1155Upgradeable__factory.d.ts.map | 1 - .../ERC1155/IERC1155Upgradeable__factory.js | 309 --- .../ERC1155BurnableUpgradeable__factory.d.ts | 297 --- ...C1155BurnableUpgradeable__factory.d.ts.map | 1 - .../ERC1155BurnableUpgradeable__factory.js | 387 --- .../ERC1155PausableUpgradeable__factory.d.ts | 291 --- ...C1155PausableUpgradeable__factory.d.ts.map | 1 - .../ERC1155PausableUpgradeable__factory.js | 380 --- ...RC1155MetadataURIUpgradeable__factory.d.ts | 251 -- ...55MetadataURIUpgradeable__factory.d.ts.map | 1 - ...IERC1155MetadataURIUpgradeable__factory.js | 328 --- .../token/ERC1155/extensions/index.d.ts | 4 - .../token/ERC1155/extensions/index.d.ts.map | 1 - .../token/ERC1155/extensions/index.js | 9 - .../token/ERC1155/index.d.ts | 6 - .../token/ERC1155/index.d.ts.map | 1 - .../token/ERC1155/index.js | 34 - ...resetMinterPauserUpgradeable__factory.d.ts | 604 ----- ...tMinterPauserUpgradeable__factory.d.ts.map | 1 - ...5PresetMinterPauserUpgradeable__factory.js | 783 ------ .../token/ERC1155/presets/index.d.ts | 2 - .../token/ERC1155/presets/index.d.ts.map | 1 - .../token/ERC1155/presets/index.js | 5 - .../ERC20/IERC20Upgradeable__factory.d.ts | 148 -- .../ERC20/IERC20Upgradeable__factory.d.ts.map | 1 - .../token/ERC20/IERC20Upgradeable__factory.js | 199 -- .../token/ERC20/index.d.ts | 2 - .../token/ERC20/index.d.ts.map | 1 - .../token/ERC20/index.js | 5 - .../ERC721/ERC721Upgradeable__factory.d.ts | 287 --- .../ERC721Upgradeable__factory.d.ts.map | 1 - .../ERC721/ERC721Upgradeable__factory.js | 379 --- .../IERC721ReceiverUpgradeable__factory.d.ts | 34 - ...RC721ReceiverUpgradeable__factory.d.ts.map | 1 - .../IERC721ReceiverUpgradeable__factory.js | 50 - .../ERC721/IERC721Upgradeable__factory.d.ts | 228 -- .../IERC721Upgradeable__factory.d.ts.map | 1 - .../ERC721/IERC721Upgradeable__factory.js | 301 --- .../IERC721MetadataUpgradeable__factory.d.ts | 262 -- ...RC721MetadataUpgradeable__factory.d.ts.map | 1 - .../IERC721MetadataUpgradeable__factory.js | 346 --- .../token/ERC721/extensions/index.d.ts | 2 - .../token/ERC721/extensions/index.d.ts.map | 1 - .../token/ERC721/extensions/index.js | 5 - .../token/ERC721/index.d.ts | 5 - .../token/ERC721/index.d.ts.map | 1 - .../token/ERC721/index.js | 33 - .../contracts-upgradeable/token/index.d.ts | 4 - .../token/index.d.ts.map | 1 - .../contracts-upgradeable/token/index.js | 29 - .../utils/ContextUpgradeable__factory.d.ts | 18 - .../ContextUpgradeable__factory.d.ts.map | 1 - .../utils/ContextUpgradeable__factory.js | 29 - .../utils/MulticallUpgradeable__factory.d.ts | 32 - .../MulticallUpgradeable__factory.d.ts.map | 1 - .../utils/MulticallUpgradeable__factory.js | 48 - .../contracts-upgradeable/utils/index.d.ts | 4 - .../utils/index.d.ts.map | 1 - .../contracts-upgradeable/utils/index.js | 31 - .../ERC165Upgradeable__factory.d.ts | 32 - .../ERC165Upgradeable__factory.d.ts.map | 1 - .../ERC165Upgradeable__factory.js | 48 - .../IERC165Upgradeable__factory.d.ts | 22 - .../IERC165Upgradeable__factory.d.ts.map | 1 - .../IERC165Upgradeable__factory.js | 35 - .../utils/introspection/index.d.ts | 3 - .../utils/introspection/index.d.ts.map | 1 - .../utils/introspection/index.js | 7 - .../contracts/access/Ownable__factory.d.ts | 49 - .../access/Ownable__factory.d.ts.map | 1 - .../contracts/access/Ownable__factory.js | 68 - .../@openzeppelin/contracts/access/index.d.ts | 2 - .../contracts/access/index.d.ts.map | 1 - .../@openzeppelin/contracts/access/index.js | 5 - .../@openzeppelin/contracts/index.d.ts | 4 - .../@openzeppelin/contracts/index.d.ts.map | 1 - .../@openzeppelin/contracts/index.js | 29 - .../ERC1155/IERC1155Receiver__factory.d.ts | 82 - .../IERC1155Receiver__factory.d.ts.map | 1 - .../ERC1155/IERC1155Receiver__factory.js | 113 - .../token/ERC1155/IERC1155__factory.d.ts | 237 -- .../token/ERC1155/IERC1155__factory.d.ts.map | 1 - .../token/ERC1155/IERC1155__factory.js | 309 --- .../IERC1155MetadataURI__factory.d.ts | 251 -- .../IERC1155MetadataURI__factory.d.ts.map | 1 - .../IERC1155MetadataURI__factory.js | 328 --- .../token/ERC1155/extensions/index.d.ts | 2 - .../token/ERC1155/extensions/index.d.ts.map | 1 - .../token/ERC1155/extensions/index.js | 5 - .../contracts/token/ERC1155/index.d.ts | 4 - .../contracts/token/ERC1155/index.d.ts.map | 1 - .../contracts/token/ERC1155/index.js | 31 - .../contracts/token/ERC20/ERC20__factory.d.ts | 241 -- .../token/ERC20/ERC20__factory.d.ts.map | 1 - .../contracts/token/ERC20/ERC20__factory.js | 322 --- .../token/ERC20/IERC20__factory.d.ts | 148 -- .../token/ERC20/IERC20__factory.d.ts.map | 1 - .../contracts/token/ERC20/IERC20__factory.js | 199 -- .../extensions/IERC20Metadata__factory.d.ts | 178 -- .../IERC20Metadata__factory.d.ts.map | 1 - .../extensions/IERC20Metadata__factory.js | 238 -- .../token/ERC20/extensions/index.d.ts | 2 - .../token/ERC20/extensions/index.d.ts.map | 1 - .../contracts/token/ERC20/extensions/index.js | 5 - .../contracts/token/ERC20/index.d.ts | 4 - .../contracts/token/ERC20/index.d.ts.map | 1 - .../contracts/token/ERC20/index.js | 31 - .../token/ERC721/ERC721__factory.d.ts | 289 --- .../token/ERC721/ERC721__factory.d.ts.map | 1 - .../contracts/token/ERC721/ERC721__factory.js | 382 --- .../ERC721/IERC721Receiver__factory.d.ts | 34 - .../ERC721/IERC721Receiver__factory.d.ts.map | 1 - .../token/ERC721/IERC721Receiver__factory.js | 50 - .../token/ERC721/IERC721__factory.d.ts | 228 -- .../token/ERC721/IERC721__factory.d.ts.map | 1 - .../token/ERC721/IERC721__factory.js | 301 --- .../extensions/IERC721Metadata__factory.d.ts | 262 -- .../IERC721Metadata__factory.d.ts.map | 1 - .../extensions/IERC721Metadata__factory.js | 346 --- .../token/ERC721/extensions/index.d.ts | 2 - .../token/ERC721/extensions/index.d.ts.map | 1 - .../token/ERC721/extensions/index.js | 5 - .../contracts/token/ERC721/index.d.ts | 5 - .../contracts/token/ERC721/index.d.ts.map | 1 - .../contracts/token/ERC721/index.js | 33 - .../@openzeppelin/contracts/token/index.d.ts | 4 - .../contracts/token/index.d.ts.map | 1 - .../@openzeppelin/contracts/token/index.js | 29 - .../@openzeppelin/contracts/utils/index.d.ts | 2 - .../contracts/utils/index.d.ts.map | 1 - .../@openzeppelin/contracts/utils/index.js | 27 - .../utils/introspection/ERC165__factory.d.ts | 22 - .../introspection/ERC165__factory.d.ts.map | 1 - .../utils/introspection/ERC165__factory.js | 35 - .../utils/introspection/IERC165__factory.d.ts | 22 - .../introspection/IERC165__factory.d.ts.map | 1 - .../utils/introspection/IERC165__factory.js | 35 - .../contracts/utils/introspection/index.d.ts | 3 - .../utils/introspection/index.d.ts.map | 1 - .../contracts/utils/introspection/index.js | 7 - dist/types/factories/@openzeppelin/index.d.ts | 4 - .../factories/@openzeppelin/index.d.ts.map | 1 - dist/types/factories/@openzeppelin/index.js | 29 - .../LegacyENSRegistry__factory.d.ts | 194 -- .../LegacyENSRegistry__factory.d.ts.map | 1 - .../LegacyENSRegistry__factory.js | 257 -- .../LegacyENS__factory.d.ts | 175 -- .../LegacyENS__factory.d.ts.map | 1 - .../LegacyENS__factory.js | 232 -- .../@ens/LegacyENSRegistry.sol/index.d.ts | 3 - .../@ens/LegacyENSRegistry.sol/index.d.ts.map | 1 - .../@ens/LegacyENSRegistry.sol/index.js | 7 - .../BaseRegistrar__factory.d.ts | 562 ----- .../BaseRegistrar__factory.d.ts.map | 1 - .../BaseRegistrar__factory.js | 719 ------ .../ENS__factory.d.ts | 317 --- .../ENS__factory.d.ts.map | 1 - .../ENS__factory.js | 409 --- .../IERC165__factory.d.ts | 24 - .../IERC165__factory.d.ts.map | 1 - .../IERC165__factory.js | 37 - .../IERC721__factory.d.ts | 248 -- .../IERC721__factory.d.ts.map | 1 - .../IERC721__factory.js | 321 --- ...LegacyETHRegistrarController__factory.d.ts | 464 ---- ...cyETHRegistrarController__factory.d.ts.map | 1 - .../LegacyETHRegistrarController__factory.js | 593 ----- .../Ownable__factory.d.ts | 72 - .../Ownable__factory.d.ts.map | 1 - .../Ownable__factory.js | 95 - .../PriceOracle__factory.d.ts | 32 - .../PriceOracle__factory.d.ts.map | 1 - .../PriceOracle__factory.js | 47 - .../Resolver__factory.d.ts | 555 ----- .../Resolver__factory.d.ts.map | 1 - .../Resolver__factory.js | 713 ------ .../index.d.ts | 9 - .../index.d.ts.map | 1 - .../LegacyETHRegistrarController.sol/index.js | 19 - .../@ens/dnssec/DNSRegistrar__factory.d.ts | 219 -- .../dnssec/DNSRegistrar__factory.d.ts.map | 1 - .../@ens/dnssec/DNSRegistrar__factory.js | 290 --- .../DNSSECImpl.sol/DNSSECImpl__factory.d.ts | 375 --- .../DNSSECImpl__factory.d.ts.map | 1 - .../DNSSECImpl.sol/DNSSECImpl__factory.js | 495 ---- .../dnssec/DNSSECImpl.sol/Owned__factory.d.ts | 47 - .../DNSSECImpl.sol/Owned__factory.d.ts.map | 1 - .../dnssec/DNSSECImpl.sol/Owned__factory.js | 67 - .../@ens/dnssec/DNSSECImpl.sol/index.d.ts | 3 - .../@ens/dnssec/DNSSECImpl.sol/index.d.ts.map | 1 - .../@ens/dnssec/DNSSECImpl.sol/index.js | 7 - .../@ens/dnssec/DNSSEC__factory.d.ts | 233 -- .../@ens/dnssec/DNSSEC__factory.d.ts.map | 1 - .../contracts/@ens/dnssec/DNSSEC__factory.js | 308 --- .../dnssec/TLDPublicSuffixList__factory.d.ts | 37 - .../TLDPublicSuffixList__factory.d.ts.map | 1 - .../dnssec/TLDPublicSuffixList__factory.js | 55 - .../algorithms/DummyAlgorithm__factory.d.ts | 45 - .../DummyAlgorithm__factory.d.ts.map | 1 - .../algorithms/DummyAlgorithm__factory.js | 65 - .../RSASHA256Algorithm__factory.d.ts | 45 - .../RSASHA256Algorithm__factory.d.ts.map | 1 - .../algorithms/RSASHA256Algorithm__factory.js | 65 - .../@ens/dnssec/algorithms/index.d.ts | 3 - .../@ens/dnssec/algorithms/index.d.ts.map | 1 - .../contracts/@ens/dnssec/algorithms/index.js | 7 - .../dnssec/digests/SHA1Digest__factory.d.ts | 41 - .../digests/SHA1Digest__factory.d.ts.map | 1 - .../dnssec/digests/SHA1Digest__factory.js | 60 - .../digests/SHA1NSEC3Digest__factory.d.ts | 45 - .../digests/SHA1NSEC3Digest__factory.d.ts.map | 1 - .../digests/SHA1NSEC3Digest__factory.js | 65 - .../dnssec/digests/SHA256Digest__factory.d.ts | 41 - .../digests/SHA256Digest__factory.d.ts.map | 1 - .../dnssec/digests/SHA256Digest__factory.js | 60 - .../contracts/@ens/dnssec/digests/index.d.ts | 4 - .../@ens/dnssec/digests/index.d.ts.map | 1 - .../contracts/@ens/dnssec/digests/index.js | 9 - .../contracts/@ens/dnssec/index.d.ts | 9 - .../contracts/@ens/dnssec/index.d.ts.map | 1 - .../factories/contracts/@ens/dnssec/index.js | 37 - .../dnssec/interfaces/Algorithm__factory.d.ts | 30 - .../interfaces/Algorithm__factory.d.ts.map | 1 - .../dnssec/interfaces/Algorithm__factory.js | 45 - .../dnssec/interfaces/Digest__factory.d.ts | 26 - .../interfaces/Digest__factory.d.ts.map | 1 - .../@ens/dnssec/interfaces/Digest__factory.js | 40 - .../interfaces/IDNSRegistrar__factory.d.ts | 84 - .../IDNSRegistrar__factory.d.ts.map | 1 - .../interfaces/IDNSRegistrar__factory.js | 114 - .../interfaces/NSEC3Digest__factory.d.ts | 30 - .../interfaces/NSEC3Digest__factory.d.ts.map | 1 - .../dnssec/interfaces/NSEC3Digest__factory.js | 45 - .../interfaces/PublicSuffixList__factory.d.ts | 22 - .../PublicSuffixList__factory.d.ts.map | 1 - .../interfaces/PublicSuffixList__factory.js | 35 - .../@ens/dnssec/interfaces/index.d.ts | 6 - .../@ens/dnssec/interfaces/index.d.ts.map | 1 - .../contracts/@ens/dnssec/interfaces/index.js | 13 - .../@ens/dnssec/libraries/SHA1__factory.d.ts | 33 - .../dnssec/libraries/SHA1__factory.d.ts.map | 1 - .../@ens/dnssec/libraries/SHA1__factory.js | 49 - .../@ens/dnssec/libraries/index.d.ts | 2 - .../@ens/dnssec/libraries/index.d.ts.map | 1 - .../contracts/@ens/dnssec/libraries/index.js | 5 - .../types/factories/contracts/@ens/index.d.ts | 4 - .../factories/contracts/@ens/index.d.ts.map | 1 - dist/types/factories/contracts/@ens/index.js | 29 - .../@maticnetwork/IChildToken__factory.d.ts | 22 - .../IChildToken__factory.d.ts.map | 1 - .../@maticnetwork/IChildToken__factory.js | 34 - .../IMintableERC721__factory.d.ts | 274 -- .../IMintableERC721__factory.d.ts.map | 1 - .../@maticnetwork/IMintableERC721__factory.js | 361 --- .../IRootChainManager__factory.d.ts | 145 -- .../IRootChainManager__factory.d.ts.map | 1 - .../IRootChainManager__factory.js | 191 -- .../RootChainManagerStorage__factory.d.ts | 36 - .../RootChainManagerStorage__factory.d.ts.map | 1 - .../RootChainManagerStorage__factory.js | 54 - .../contracts/@maticnetwork/index.d.ts | 6 - .../contracts/@maticnetwork/index.d.ts.map | 1 - .../contracts/@maticnetwork/index.js | 35 - .../DummyStateSender__factory.d.ts | 57 - .../DummyStateSender__factory.d.ts.map | 1 - .../DummyStateSender__factory.js | 79 - .../IStateSender__factory.d.ts | 22 - .../IStateSender__factory.d.ts.map | 1 - .../IStateSender__factory.js | 34 - .../DummyStateSender.sol/index.d.ts | 3 - .../DummyStateSender.sol/index.d.ts.map | 1 - .../pos-portal/DummyStateSender.sol/index.js | 7 - .../AccessControlMixin__factory.d.ts | 199 -- .../AccessControlMixin__factory.d.ts.map | 1 - .../AccessControlMixin__factory.js | 264 -- .../AccessControl__factory.d.ts | 184 -- .../AccessControl__factory.d.ts.map | 1 - .../AccessControl__factory.js | 244 -- .../IERC165__factory.d.ts | 22 - .../IERC165__factory.d.ts.map | 1 - .../IERC165__factory.js | 35 - .../IERC721Receiver__factory.d.ts | 34 - .../IERC721Receiver__factory.d.ts.map | 1 - .../IERC721Receiver__factory.js | 50 - .../IERC721__factory.d.ts | 228 -- .../IERC721__factory.d.ts.map | 1 - .../IERC721__factory.js | 301 --- .../IMintableERC721__factory.d.ts | 274 -- .../IMintableERC721__factory.d.ts.map | 1 - .../IMintableERC721__factory.js | 361 --- .../ITokenPredicate__factory.d.ts | 48 - .../ITokenPredicate__factory.d.ts.map | 1 - .../ITokenPredicate__factory.js | 67 - .../MintableERC721Predicate__factory.d.ts | 389 --- .../MintableERC721Predicate__factory.d.ts.map | 1 - .../MintableERC721Predicate__factory.js | 507 ---- .../MintableERC721Predicate.sol/index.d.ts | 9 - .../index.d.ts.map | 1 - .../MintableERC721Predicate.sol/index.js | 19 - .../AccessControlMixin__factory.d.ts | 199 -- .../AccessControlMixin__factory.d.ts.map | 1 - .../AccessControlMixin__factory.js | 264 -- .../AccessControl__factory.d.ts | 184 -- .../AccessControl__factory.d.ts.map | 1 - .../AccessControl__factory.js | 244 -- .../EIP712Base__factory.d.ts | 53 - .../EIP712Base__factory.d.ts.map | 1 - .../EIP712Base__factory.js | 75 - .../ICheckpointManager__factory.d.ts | 53 - .../ICheckpointManager__factory.d.ts.map | 1 - .../ICheckpointManager__factory.js | 75 - .../IRootChainManager__factory.d.ts | 145 -- .../IRootChainManager__factory.d.ts.map | 1 - .../IRootChainManager__factory.js | 191 -- .../IStateSender__factory.d.ts | 22 - .../IStateSender__factory.d.ts.map | 1 - .../IStateSender__factory.js | 34 - .../ITokenPredicate__factory.d.ts | 48 - .../ITokenPredicate__factory.d.ts.map | 1 - .../ITokenPredicate__factory.js | 67 - .../NativeMetaTransaction__factory.d.ts | 117 - .../NativeMetaTransaction__factory.d.ts.map | 1 - .../NativeMetaTransaction__factory.js | 158 -- .../RootChainManagerStorage__factory.d.ts | 88 - .../RootChainManagerStorage__factory.d.ts.map | 1 - .../RootChainManagerStorage__factory.js | 124 - .../RootChainManager__factory.d.ts | 625 ----- .../RootChainManager__factory.d.ts.map | 1 - .../RootChainManager__factory.js | 817 ------ .../RootChainManager.sol/index.d.ts | 11 - .../RootChainManager.sol/index.d.ts.map | 1 - .../pos-portal/RootChainManager.sol/index.js | 23 - .../ICheckpointManager__factory.d.ts | 53 - .../ICheckpointManager__factory.d.ts.map | 1 - .../ICheckpointManager__factory.js | 75 - .../IRootChain__factory.d.ts | 43 - .../IRootChain__factory.d.ts.map | 1 - .../IRootChain__factory.js | 59 - .../SimpleCheckpointManager__factory.d.ts | 116 - .../SimpleCheckpointManager__factory.d.ts.map | 1 - .../SimpleCheckpointManager__factory.js | 154 -- .../SimpleCheckpointManager.sol/index.d.ts | 4 - .../index.d.ts.map | 1 - .../SimpleCheckpointManager.sol/index.js | 9 - .../@maticnetwork/pos-portal/index.d.ts | 5 - .../@maticnetwork/pos-portal/index.d.ts.map | 1 - .../@maticnetwork/pos-portal/index.js | 30 - .../contracts/ChildRegistry__factory.d.ts | 296 --- .../contracts/ChildRegistry__factory.d.ts.map | 1 - .../contracts/ChildRegistry__factory.js | 390 --- .../contracts/DotCoinBurner__factory.d.ts | 56 - .../contracts/DotCoinBurner__factory.d.ts.map | 1 - .../contracts/DotCoinBurner__factory.js | 79 - .../contracts/IAddressReader__factory.d.ts | 70 - .../IAddressReader__factory.d.ts.map | 1 - .../contracts/IAddressReader__factory.js | 98 - .../contracts/IDataReader__factory.d.ts | 134 - .../contracts/IDataReader__factory.d.ts.map | 1 - .../contracts/IDataReader__factory.js | 181 -- .../contracts/IERC1967__factory.d.ts | 33 - .../contracts/IERC1967__factory.d.ts.map | 1 - .../factories/contracts/IERC1967__factory.js | 48 - .../contracts/IMintingManager__factory.d.ts | 376 --- .../IMintingManager__factory.d.ts.map | 1 - .../contracts/IMintingManager__factory.js | 484 ---- .../contracts/IRecordReader__factory.d.ts | 88 - .../contracts/IRecordReader__factory.d.ts.map | 1 - .../contracts/IRecordReader__factory.js | 122 - .../contracts/IRecordStorage__factory.d.ts | 248 -- .../IRecordStorage__factory.d.ts.map | 1 - .../contracts/IRecordStorage__factory.js | 325 --- .../contracts/IRegistryReader__factory.d.ts | 170 -- .../IRegistryReader__factory.d.ts.map | 1 - .../contracts/IRegistryReader__factory.js | 235 -- .../contracts/IReverseRegistry__factory.d.ts | 77 - .../IReverseRegistry__factory.d.ts.map | 1 - .../contracts/IReverseRegistry__factory.js | 106 - .../contracts/IRootRegistry__factory.d.ts | 306 --- .../contracts/IRootRegistry__factory.d.ts.map | 1 - .../contracts/IRootRegistry__factory.js | 402 --- .../contracts/IUNSRegistry__factory.d.ts | 966 -------- .../contracts/IUNSRegistry__factory.d.ts.map | 1 - .../contracts/IUNSRegistry__factory.js | 1258 ---------- .../contracts/KeyStorage__factory.d.ts | 46 - .../contracts/KeyStorage__factory.d.ts.map | 1 - .../contracts/KeyStorage__factory.js | 67 - .../contracts/MintingManager__factory.d.ts | 920 ------- .../MintingManager__factory.d.ts.map | 1 - .../contracts/MintingManager__factory.js | 1188 --------- .../contracts/ProxyReader__factory.d.ts | 652 ----- .../contracts/ProxyReader__factory.d.ts.map | 1 - .../contracts/ProxyReader__factory.js | 867 ------- .../contracts/RecordStorage__factory.d.ts | 286 --- .../contracts/RecordStorage__factory.d.ts.map | 1 - .../contracts/RecordStorage__factory.js | 376 --- .../contracts/RootRegistry__factory.d.ts | 350 --- .../contracts/RootRegistry__factory.d.ts.map | 1 - .../contracts/RootRegistry__factory.js | 460 ---- .../contracts/UNSOperator__factory.d.ts | 100 - .../contracts/UNSOperator__factory.d.ts.map | 1 - .../contracts/UNSOperator__factory.js | 134 - .../contracts/UNSRegistry__factory.d.ts | 1203 --------- .../contracts/UNSRegistry__factory.d.ts.map | 1 - .../contracts/UNSRegistry__factory.js | 1571 ------------ .../contracts/cns/ICNSRegistry__factory.d.ts | 322 --- .../cns/ICNSRegistry__factory.d.ts.map | 1 - .../contracts/cns/ICNSRegistry__factory.js | 426 ---- .../cns/IMintingController__factory.d.ts | 112 - .../cns/IMintingController__factory.d.ts.map | 1 - .../cns/IMintingController__factory.js | 149 -- .../contracts/cns/IResolver__factory.d.ts | 124 - .../contracts/cns/IResolver__factory.d.ts.map | 1 - .../contracts/cns/IResolver__factory.js | 168 -- .../cns/IURIPrefixController__factory.d.ts | 18 - .../IURIPrefixController__factory.d.ts.map | 1 - .../cns/IURIPrefixController__factory.js | 29 - dist/types/factories/contracts/cns/index.d.ts | 5 - .../factories/contracts/cns/index.d.ts.map | 1 - dist/types/factories/contracts/cns/index.js | 11 - .../custody/ENSCustody__factory.d.ts | 790 ------ .../custody/ENSCustody__factory.d.ts.map | 1 - .../contracts/custody/ENSCustody__factory.js | 1033 -------- .../custody/IENSCustody__factory.d.ts | 258 -- .../custody/IENSCustody__factory.d.ts.map | 1 - .../contracts/custody/IENSCustody__factory.js | 340 --- .../custody/ZilliqaRecover__factory.d.ts | 454 ---- .../custody/ZilliqaRecover__factory.d.ts.map | 1 - .../custody/ZilliqaRecover__factory.js | 601 ----- .../factories/contracts/custody/index.d.ts | 4 - .../contracts/custody/index.d.ts.map | 1 - .../factories/contracts/custody/index.js | 9 - .../history/IUNSRegistryV07__factory.d.ts | 895 ------- .../history/IUNSRegistryV07__factory.d.ts.map | 1 - .../history/IUNSRegistryV07__factory.js | 1165 --------- .../history/ProxyReaderV04__factory.d.ts | 477 ---- .../history/ProxyReaderV04__factory.d.ts.map | 1 - .../history/ProxyReaderV04__factory.js | 640 ----- .../history/UNSRegistryV07__factory.d.ts | 1118 --------- .../history/UNSRegistryV07__factory.d.ts.map | 1 - .../history/UNSRegistryV07__factory.js | 1459 ----------- .../factories/contracts/history/index.d.ts | 4 - .../contracts/history/index.d.ts.map | 1 - .../factories/contracts/history/index.js | 9 - dist/types/factories/contracts/index.d.ts | 30 - dist/types/factories/contracts/index.d.ts.map | 1 - dist/types/factories/contracts/index.js | 74 - .../ISeaportProxyBuyer__factory.d.ts | 126 - .../ISeaportProxyBuyer__factory.d.ts.map | 1 - .../ISeaportProxyBuyer__factory.js | 168 -- .../SeaportProxyBuyer__factory.d.ts | 628 ----- .../SeaportProxyBuyer__factory.d.ts.map | 1 - .../marketplace/SeaportProxyBuyer__factory.js | 818 ------ .../contracts/marketplace/index.d.ts | 3 - .../contracts/marketplace/index.d.ts.map | 1 - .../factories/contracts/marketplace/index.js | 7 - .../metatx/BaseForwarder__factory.d.ts | 92 - .../metatx/BaseForwarder__factory.d.ts.map | 1 - .../metatx/BaseForwarder__factory.js | 127 - .../metatx/BaseRoutingForwarder__factory.d.ts | 92 - .../BaseRoutingForwarder__factory.d.ts.map | 1 - .../metatx/BaseRoutingForwarder__factory.js | 127 - .../metatx/CNSRegistryForwarder__factory.d.ts | 115 - .../CNSRegistryForwarder__factory.d.ts.map | 1 - .../metatx/CNSRegistryForwarder__factory.js | 158 -- .../metatx/ERC2771Context__factory.d.ts | 32 - .../metatx/ERC2771Context__factory.d.ts.map | 1 - .../metatx/ERC2771Context__factory.js | 48 - .../ERC2771RegistryContext__factory.d.ts | 32 - .../ERC2771RegistryContext__factory.d.ts.map | 1 - .../metatx/ERC2771RegistryContext__factory.js | 48 - .../contracts/metatx/Forwarder__factory.d.ts | 106 - .../metatx/Forwarder__factory.d.ts.map | 1 - .../contracts/metatx/Forwarder__factory.js | 145 -- .../contracts/metatx/IForwarder__factory.d.ts | 92 - .../metatx/IForwarder__factory.d.ts.map | 1 - .../contracts/metatx/IForwarder__factory.js | 127 - .../MintingManagerForwarder__factory.d.ts | 115 - .../MintingManagerForwarder__factory.d.ts.map | 1 - .../MintingManagerForwarder__factory.js | 158 -- .../metatx/ResolverForwarder__factory.d.ts | 119 - .../ResolverForwarder__factory.d.ts.map | 1 - .../metatx/ResolverForwarder__factory.js | 163 -- .../metatx/UNSRegistryForwarder__factory.d.ts | 102 - .../UNSRegistryForwarder__factory.d.ts.map | 1 - .../metatx/UNSRegistryForwarder__factory.js | 140 -- .../factories/contracts/metatx/index.d.ts | 11 - .../factories/contracts/metatx/index.d.ts.map | 1 - .../types/factories/contracts/metatx/index.js | 23 - .../mocks/BaseForwarderMock__factory.d.ts | 139 -- .../mocks/BaseForwarderMock__factory.d.ts.map | 1 - .../mocks/BaseForwarderMock__factory.js | 187 -- .../BaseRoutingForwarderMock__factory.d.ts | 218 -- ...BaseRoutingForwarderMock__factory.d.ts.map | 1 - .../BaseRoutingForwarderMock__factory.js | 291 --- .../contracts/mocks/ERC1155Mock__factory.d.ts | 612 ----- .../mocks/ERC1155Mock__factory.d.ts.map | 1 - .../contracts/mocks/ERC1155Mock__factory.js | 794 ------ .../contracts/mocks/ERC20Mock__factory.d.ts | 243 -- .../mocks/ERC20Mock__factory.d.ts.map | 1 - .../contracts/mocks/ERC20Mock__factory.js | 324 --- .../mocks/ERC20UnsafeMock__factory.d.ts | 243 -- .../mocks/ERC20UnsafeMock__factory.d.ts.map | 1 - .../mocks/ERC20UnsafeMock__factory.js | 324 --- .../mocks/ERC2771ContextMock__factory.d.ts | 97 - .../ERC2771ContextMock__factory.d.ts.map | 1 - .../mocks/ERC2771ContextMock__factory.js | 133 - .../ERC2771RegistryContextMock__factory.d.ts | 101 - ...C2771RegistryContextMock__factory.d.ts.map | 1 - .../ERC2771RegistryContextMock__factory.js | 138 -- .../contracts/mocks/ERC721Mock__factory.d.ts | 295 --- .../mocks/ERC721Mock__factory.d.ts.map | 1 - .../contracts/mocks/ERC721Mock__factory.js | 389 --- .../mocks/ERC721ReceiverMock__factory.d.ts | 49 - .../ERC721ReceiverMock__factory.d.ts.map | 1 - .../mocks/ERC721ReceiverMock__factory.js | 70 - .../mocks/MinterRoleMock__factory.d.ts | 334 --- .../mocks/MinterRoleMock__factory.d.ts.map | 1 - .../mocks/MinterRoleMock__factory.js | 436 ---- .../mocks/MintingManagerMock__factory.d.ts | 930 ------- .../MintingManagerMock__factory.d.ts.map | 1 - .../mocks/MintingManagerMock__factory.js | 1201 --------- .../UNSRegistryForwarderMock__factory.d.ts | 123 - ...UNSRegistryForwarderMock__factory.d.ts.map | 1 - .../UNSRegistryForwarderMock__factory.js | 167 -- .../mocks/UNSRegistryMock__factory.d.ts | 1227 --------- .../mocks/UNSRegistryMock__factory.d.ts.map | 1 - .../mocks/UNSRegistryMock__factory.js | 1603 ------------ .../factories/contracts/mocks/index.d.ts | 14 - .../factories/contracts/mocks/index.d.ts.map | 1 - dist/types/factories/contracts/mocks/index.js | 29 - .../contracts/roles/MinterRole__factory.d.ts | 307 --- .../roles/MinterRole__factory.d.ts.map | 1 - .../contracts/roles/MinterRole__factory.js | 402 --- .../factories/contracts/roles/index.d.ts | 2 - .../factories/contracts/roles/index.d.ts.map | 1 - dist/types/factories/contracts/roles/index.js | 5 - .../contracts/utils/Blocklist__factory.d.ts | 62 - .../utils/Blocklist__factory.d.ts.map | 1 - .../contracts/utils/Blocklist__factory.js | 87 - .../utils/ERC1271SimpleWallet__factory.d.ts | 49 - .../ERC1271SimpleWallet__factory.d.ts.map | 1 - .../utils/ERC1271SimpleWallet__factory.js | 71 - .../contracts/utils/MultiSend__factory.d.ts | 35 - .../utils/MultiSend__factory.d.ts.map | 1 - .../contracts/utils/MultiSend__factory.js | 52 - .../contracts/utils/Ownable__factory.d.ts | 59 - .../contracts/utils/Ownable__factory.d.ts.map | 1 - .../contracts/utils/Ownable__factory.js | 81 - .../contracts/utils/Pausable__factory.d.ts | 48 - .../utils/Pausable__factory.d.ts.map | 1 - .../contracts/utils/Pausable__factory.js | 68 - .../factories/contracts/utils/index.d.ts | 6 - .../factories/contracts/utils/index.d.ts.map | 1 - dist/types/factories/contracts/utils/index.js | 13 - .../contracts/CNSRegistry__factory.d.ts | 816 ------ .../contracts/CNSRegistry__factory.d.ts.map | 1 - .../contracts/CNSRegistry__factory.js | 1037 -------- .../contracts/ICNSRegistry__factory.d.ts | 652 ----- .../contracts/ICNSRegistry__factory.d.ts.map | 1 - .../contracts/ICNSRegistry__factory.js | 831 ------- .../contracts/IRegistryReader__factory.d.ts | 200 -- .../IRegistryReader__factory.d.ts.map | 1 - .../contracts/IRegistryReader__factory.js | 265 -- .../contracts/IResolverReader__factory.d.ts | 124 - .../IResolverReader__factory.d.ts.map | 1 - .../contracts/IResolverReader__factory.js | 166 -- .../contracts/IResolver__factory.d.ts | 100 - .../contracts/IResolver__factory.d.ts.map | 1 - .../contracts/IResolver__factory.js | 131 - .../contracts/Resolver__factory.d.ts | 424 ---- .../contracts/Resolver__factory.d.ts.map | 1 - .../dot-crypto/contracts/Resolver__factory.js | 545 ---- .../DomainZoneController__factory.d.ts | 268 -- .../DomainZoneController__factory.d.ts.map | 1 - .../DomainZoneController__factory.js | 345 --- .../IMintingController__factory.d.ts | 60 - .../IMintingController__factory.d.ts.map | 1 - .../IMintingController__factory.js | 81 - .../ISignatureController__factory.d.ts | 268 -- .../ISignatureController__factory.d.ts.map | 1 - .../ISignatureController__factory.js | 342 --- .../IURIPrefixController__factory.d.ts | 20 - .../IURIPrefixController__factory.d.ts.map | 1 - .../IURIPrefixController__factory.js | 31 - .../MintingController__factory.d.ts | 216 -- .../MintingController__factory.d.ts.map | 1 - .../controllers/MintingController__factory.js | 279 --- .../SignatureController__factory.d.ts | 356 --- .../SignatureController__factory.d.ts.map | 1 - .../SignatureController__factory.js | 454 ---- .../URIPrefixController__factory.d.ts | 180 -- .../URIPrefixController__factory.d.ts.map | 1 - .../URIPrefixController__factory.js | 235 -- .../contracts/controllers/index.d.ts | 8 - .../contracts/controllers/index.d.ts.map | 1 - .../dot-crypto/contracts/controllers/index.js | 17 - .../factories/dot-crypto/contracts/index.d.ts | 9 - .../dot-crypto/contracts/index.d.ts.map | 1 - .../factories/dot-crypto/contracts/index.js | 40 - .../util/BulkWhitelistedRole__factory.d.ts | 171 -- .../BulkWhitelistedRole__factory.d.ts.map | 1 - .../util/BulkWhitelistedRole__factory.js | 223 -- .../util/ControllerRole__factory.d.ts | 64 - .../util/ControllerRole__factory.d.ts.map | 1 - .../contracts/util/ControllerRole__factory.js | 87 - .../contracts/util/FreeMinter__factory.d.ts | 116 - .../util/FreeMinter__factory.d.ts.map | 1 - .../contracts/util/FreeMinter__factory.js | 153 -- .../util/SignatureUtil__factory.d.ts | 60 - .../util/SignatureUtil__factory.d.ts.map | 1 - .../contracts/util/SignatureUtil__factory.js | 84 - .../dot-crypto/contracts/util/index.d.ts | 5 - .../dot-crypto/contracts/util/index.d.ts.map | 1 - .../dot-crypto/contracts/util/index.js | 11 - dist/types/factories/dot-crypto/index.d.ts | 2 - .../types/factories/dot-crypto/index.d.ts.map | 1 - dist/types/factories/dot-crypto/index.js | 27 - dist/types/factories/index.d.ts | 6 - dist/types/factories/index.d.ts.map | 1 - dist/types/factories/index.js | 31 - dist/types/factories/seaport-types/index.d.ts | 2 - .../factories/seaport-types/index.d.ts.map | 1 - dist/types/factories/seaport-types/index.js | 27 - .../factories/seaport-types/src/index.d.ts | 2 - .../seaport-types/src/index.d.ts.map | 1 - .../factories/seaport-types/src/index.js | 27 - .../ConsiderationInterface__factory.d.ts | 1705 ------------- .../ConsiderationInterface__factory.d.ts.map | 1 - .../ConsiderationInterface__factory.js | 2204 ----------------- .../seaport-types/src/interfaces/index.d.ts | 2 - .../src/interfaces/index.d.ts.map | 1 - .../seaport-types/src/interfaces/index.js | 5 - dist/types/index.d.ts | 404 --- dist/types/index.d.ts.map | 1 - dist/types/index.js | 422 ---- dist/types/seaport-types/index.d.ts | 3 - dist/types/seaport-types/index.d.ts.map | 1 - dist/types/seaport-types/index.js | 2 - dist/types/seaport-types/src/index.d.ts | 3 - dist/types/seaport-types/src/index.d.ts.map | 1 - dist/types/seaport-types/src/index.js | 2 - .../interfaces/ConsiderationInterface.d.ts | 604 ----- .../ConsiderationInterface.d.ts.map | 1 - .../src/interfaces/ConsiderationInterface.js | 2 - .../seaport-types/src/interfaces/index.d.ts | 2 - .../src/interfaces/index.d.ts.map | 1 - .../seaport-types/src/interfaces/index.js | 2 - dist/uns-config.json | 571 ----- test/marketplace/SeaportProxyBuyer.test.ts | 284 ++- 1888 files changed, 302 insertions(+), 155996 deletions(-) delete mode 100644 .node-version delete mode 100644 dist/hardhat.config.d.ts delete mode 100644 dist/hardhat.config.d.ts.map delete mode 100644 dist/hardhat.config.js delete mode 100644 dist/index.d.ts delete mode 100644 dist/index.d.ts.map delete mode 100644 dist/index.js delete mode 100644 dist/sandbox/db.tgz delete mode 100644 dist/sandbox/ganache-service.d.ts delete mode 100644 dist/sandbox/ganache-service.d.ts.map delete mode 100644 dist/sandbox/ganache-service.js delete mode 100644 dist/sandbox/index.d.ts delete mode 100644 dist/sandbox/index.d.ts.map delete mode 100644 dist/sandbox/index.js delete mode 100644 dist/src/config.d.ts delete mode 100644 dist/src/config.d.ts.map delete mode 100644 dist/src/config.js delete mode 100644 dist/src/types.d.ts delete mode 100644 dist/src/types.d.ts.map delete mode 100644 dist/src/types.js delete mode 100644 dist/src/utils.d.ts delete mode 100644 dist/src/utils.d.ts.map delete mode 100644 dist/src/utils.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/dnssec-oracle/index.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/dnssec-oracle/index.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/dnssec-oracle/index.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/index.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/index.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/index.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/index.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/index.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/index.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/index.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/index.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/index.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/registry/ENS.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/registry/ENS.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/registry/ENS.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/registry/ENSRegistry.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/registry/ENSRegistry.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/registry/ENSRegistry.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/registry/index.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/registry/index.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/registry/index.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/Multicallable.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/Multicallable.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/Multicallable.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/Resolver.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/Resolver.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/Resolver.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/index.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/index.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/index.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/index.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/index.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/index.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/NameResolver.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/NameResolver.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/NameResolver.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/index.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/index.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/index.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/index.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/index.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/index.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/root/Controllable.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/root/Controllable.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/root/Controllable.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/root/Root.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/root/Root.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/root/Root.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/root/index.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/root/index.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/root/index.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/utils/index.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/utils/index.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/utils/index.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/wrapper/Controllable.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/wrapper/Controllable.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/wrapper/Controllable.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.js delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/wrapper/index.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/wrapper/index.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/contracts/wrapper/index.js delete mode 100644 dist/types/@ensdomains/ens-contracts/index.d.ts delete mode 100644 dist/types/@ensdomains/ens-contracts/index.d.ts.map delete mode 100644 dist/types/@ensdomains/ens-contracts/index.js delete mode 100644 dist/types/@ensdomains/index.d.ts delete mode 100644 dist/types/@ensdomains/index.d.ts.map delete mode 100644 dist/types/@ensdomains/index.js delete mode 100644 dist/types/@openzeppelin/contracts-2.3/access/index.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-2.3/access/index.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-2.3/access/index.js delete mode 100644 dist/types/@openzeppelin/contracts-2.3/access/roles/MinterRole.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-2.3/access/roles/MinterRole.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-2.3/access/roles/MinterRole.js delete mode 100644 dist/types/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole.js delete mode 100644 dist/types/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole.js delete mode 100644 dist/types/@openzeppelin/contracts-2.3/access/roles/index.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-2.3/access/roles/index.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-2.3/access/roles/index.js delete mode 100644 dist/types/@openzeppelin/contracts-2.3/index.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-2.3/index.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-2.3/index.js delete mode 100644 dist/types/@openzeppelin/contracts-2.3/introspection/ERC165.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-2.3/introspection/ERC165.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-2.3/introspection/ERC165.js delete mode 100644 dist/types/@openzeppelin/contracts-2.3/introspection/IERC165.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-2.3/introspection/IERC165.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-2.3/introspection/IERC165.js delete mode 100644 dist/types/@openzeppelin/contracts-2.3/introspection/index.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-2.3/introspection/index.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-2.3/introspection/index.js delete mode 100644 dist/types/@openzeppelin/contracts-2.3/token/ERC721/ERC721.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-2.3/token/ERC721/ERC721.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-2.3/token/ERC721/ERC721.js delete mode 100644 dist/types/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable.js delete mode 100644 dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721.js delete mode 100644 dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata.js delete mode 100644 dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver.js delete mode 100644 dist/types/@openzeppelin/contracts-2.3/token/ERC721/index.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-2.3/token/ERC721/index.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-2.3/token/ERC721/index.js delete mode 100644 dist/types/@openzeppelin/contracts-2.3/token/index.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-2.3/token/index.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-2.3/token/index.js delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable.js delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.js delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable.js delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable.js delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.js delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/access/index.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/access/index.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/access/index.js delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/index.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/index.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/index.js delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable.js delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/interfaces/index.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/interfaces/index.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/interfaces/index.js delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/proxy/index.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/proxy/index.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/proxy/index.js delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.js delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/proxy/utils/index.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/proxy/utils/index.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/proxy/utils/index.js delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.js delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.js delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/security/index.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/security/index.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/security/index.js delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable.js delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable.js delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable.js delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable.js delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable.js delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.js delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/index.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/index.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/index.js delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/index.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/index.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/index.js delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable.js delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/index.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/index.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/index.js delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.js delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC20/index.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC20/index.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC20/index.js delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.js delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable.js delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable.js delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable.js delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/index.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/index.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/index.js delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/index.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/index.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/index.js delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/index.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/index.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/index.js delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.js delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable.js delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/utils/index.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/utils/index.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/utils/index.js delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.js delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable.js delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/index.d.ts delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/index.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/index.js delete mode 100644 dist/types/@openzeppelin/contracts/access/Ownable.d.ts delete mode 100644 dist/types/@openzeppelin/contracts/access/Ownable.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts/access/Ownable.js delete mode 100644 dist/types/@openzeppelin/contracts/access/index.d.ts delete mode 100644 dist/types/@openzeppelin/contracts/access/index.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts/access/index.js delete mode 100644 dist/types/@openzeppelin/contracts/index.d.ts delete mode 100644 dist/types/@openzeppelin/contracts/index.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts/index.js delete mode 100644 dist/types/@openzeppelin/contracts/token/ERC1155/IERC1155.d.ts delete mode 100644 dist/types/@openzeppelin/contracts/token/ERC1155/IERC1155.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts/token/ERC1155/IERC1155.js delete mode 100644 dist/types/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.d.ts delete mode 100644 dist/types/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.js delete mode 100644 dist/types/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI.d.ts delete mode 100644 dist/types/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI.js delete mode 100644 dist/types/@openzeppelin/contracts/token/ERC1155/extensions/index.d.ts delete mode 100644 dist/types/@openzeppelin/contracts/token/ERC1155/extensions/index.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts/token/ERC1155/extensions/index.js delete mode 100644 dist/types/@openzeppelin/contracts/token/ERC1155/index.d.ts delete mode 100644 dist/types/@openzeppelin/contracts/token/ERC1155/index.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts/token/ERC1155/index.js delete mode 100644 dist/types/@openzeppelin/contracts/token/ERC20/ERC20.d.ts delete mode 100644 dist/types/@openzeppelin/contracts/token/ERC20/ERC20.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts/token/ERC20/ERC20.js delete mode 100644 dist/types/@openzeppelin/contracts/token/ERC20/IERC20.d.ts delete mode 100644 dist/types/@openzeppelin/contracts/token/ERC20/IERC20.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts/token/ERC20/IERC20.js delete mode 100644 dist/types/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.d.ts delete mode 100644 dist/types/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.js delete mode 100644 dist/types/@openzeppelin/contracts/token/ERC20/extensions/index.d.ts delete mode 100644 dist/types/@openzeppelin/contracts/token/ERC20/extensions/index.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts/token/ERC20/extensions/index.js delete mode 100644 dist/types/@openzeppelin/contracts/token/ERC20/index.d.ts delete mode 100644 dist/types/@openzeppelin/contracts/token/ERC20/index.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts/token/ERC20/index.js delete mode 100644 dist/types/@openzeppelin/contracts/token/ERC721/ERC721.d.ts delete mode 100644 dist/types/@openzeppelin/contracts/token/ERC721/ERC721.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts/token/ERC721/ERC721.js delete mode 100644 dist/types/@openzeppelin/contracts/token/ERC721/IERC721.d.ts delete mode 100644 dist/types/@openzeppelin/contracts/token/ERC721/IERC721.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts/token/ERC721/IERC721.js delete mode 100644 dist/types/@openzeppelin/contracts/token/ERC721/IERC721Receiver.d.ts delete mode 100644 dist/types/@openzeppelin/contracts/token/ERC721/IERC721Receiver.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts/token/ERC721/IERC721Receiver.js delete mode 100644 dist/types/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.d.ts delete mode 100644 dist/types/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.js delete mode 100644 dist/types/@openzeppelin/contracts/token/ERC721/extensions/index.d.ts delete mode 100644 dist/types/@openzeppelin/contracts/token/ERC721/extensions/index.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts/token/ERC721/extensions/index.js delete mode 100644 dist/types/@openzeppelin/contracts/token/ERC721/index.d.ts delete mode 100644 dist/types/@openzeppelin/contracts/token/ERC721/index.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts/token/ERC721/index.js delete mode 100644 dist/types/@openzeppelin/contracts/token/index.d.ts delete mode 100644 dist/types/@openzeppelin/contracts/token/index.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts/token/index.js delete mode 100644 dist/types/@openzeppelin/contracts/utils/index.d.ts delete mode 100644 dist/types/@openzeppelin/contracts/utils/index.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts/utils/index.js delete mode 100644 dist/types/@openzeppelin/contracts/utils/introspection/ERC165.d.ts delete mode 100644 dist/types/@openzeppelin/contracts/utils/introspection/ERC165.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts/utils/introspection/ERC165.js delete mode 100644 dist/types/@openzeppelin/contracts/utils/introspection/IERC165.d.ts delete mode 100644 dist/types/@openzeppelin/contracts/utils/introspection/IERC165.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts/utils/introspection/IERC165.js delete mode 100644 dist/types/@openzeppelin/contracts/utils/introspection/index.d.ts delete mode 100644 dist/types/@openzeppelin/contracts/utils/introspection/index.d.ts.map delete mode 100644 dist/types/@openzeppelin/contracts/utils/introspection/index.js delete mode 100644 dist/types/@openzeppelin/index.d.ts delete mode 100644 dist/types/@openzeppelin/index.d.ts.map delete mode 100644 dist/types/@openzeppelin/index.js delete mode 100644 dist/types/common.d.ts delete mode 100644 dist/types/common.d.ts.map delete mode 100644 dist/types/common.js delete mode 100644 dist/types/contracts/@ens/LegacyENSRegistry.sol/LegacyENS.d.ts delete mode 100644 dist/types/contracts/@ens/LegacyENSRegistry.sol/LegacyENS.d.ts.map delete mode 100644 dist/types/contracts/@ens/LegacyENSRegistry.sol/LegacyENS.js delete mode 100644 dist/types/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry.d.ts delete mode 100644 dist/types/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry.d.ts.map delete mode 100644 dist/types/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry.js delete mode 100644 dist/types/contracts/@ens/LegacyENSRegistry.sol/index.d.ts delete mode 100644 dist/types/contracts/@ens/LegacyENSRegistry.sol/index.d.ts.map delete mode 100644 dist/types/contracts/@ens/LegacyENSRegistry.sol/index.js delete mode 100644 dist/types/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar.d.ts delete mode 100644 dist/types/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar.d.ts.map delete mode 100644 dist/types/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar.js delete mode 100644 dist/types/contracts/@ens/LegacyETHRegistrarController.sol/ENS.d.ts delete mode 100644 dist/types/contracts/@ens/LegacyETHRegistrarController.sol/ENS.d.ts.map delete mode 100644 dist/types/contracts/@ens/LegacyETHRegistrarController.sol/ENS.js delete mode 100644 dist/types/contracts/@ens/LegacyETHRegistrarController.sol/IERC165.d.ts delete mode 100644 dist/types/contracts/@ens/LegacyETHRegistrarController.sol/IERC165.d.ts.map delete mode 100644 dist/types/contracts/@ens/LegacyETHRegistrarController.sol/IERC165.js delete mode 100644 dist/types/contracts/@ens/LegacyETHRegistrarController.sol/IERC721.d.ts delete mode 100644 dist/types/contracts/@ens/LegacyETHRegistrarController.sol/IERC721.d.ts.map delete mode 100644 dist/types/contracts/@ens/LegacyETHRegistrarController.sol/IERC721.js delete mode 100644 dist/types/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController.d.ts delete mode 100644 dist/types/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController.d.ts.map delete mode 100644 dist/types/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController.js delete mode 100644 dist/types/contracts/@ens/LegacyETHRegistrarController.sol/Ownable.d.ts delete mode 100644 dist/types/contracts/@ens/LegacyETHRegistrarController.sol/Ownable.d.ts.map delete mode 100644 dist/types/contracts/@ens/LegacyETHRegistrarController.sol/Ownable.js delete mode 100644 dist/types/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle.d.ts delete mode 100644 dist/types/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle.d.ts.map delete mode 100644 dist/types/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle.js delete mode 100644 dist/types/contracts/@ens/LegacyETHRegistrarController.sol/Resolver.d.ts delete mode 100644 dist/types/contracts/@ens/LegacyETHRegistrarController.sol/Resolver.d.ts.map delete mode 100644 dist/types/contracts/@ens/LegacyETHRegistrarController.sol/Resolver.js delete mode 100644 dist/types/contracts/@ens/LegacyETHRegistrarController.sol/index.d.ts delete mode 100644 dist/types/contracts/@ens/LegacyETHRegistrarController.sol/index.d.ts.map delete mode 100644 dist/types/contracts/@ens/LegacyETHRegistrarController.sol/index.js delete mode 100644 dist/types/contracts/@ens/dnssec/DNSRegistrar.d.ts delete mode 100644 dist/types/contracts/@ens/dnssec/DNSRegistrar.d.ts.map delete mode 100644 dist/types/contracts/@ens/dnssec/DNSRegistrar.js delete mode 100644 dist/types/contracts/@ens/dnssec/DNSSEC.d.ts delete mode 100644 dist/types/contracts/@ens/dnssec/DNSSEC.d.ts.map delete mode 100644 dist/types/contracts/@ens/dnssec/DNSSEC.js delete mode 100644 dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl.d.ts delete mode 100644 dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl.d.ts.map delete mode 100644 dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl.js delete mode 100644 dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/Owned.d.ts delete mode 100644 dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/Owned.d.ts.map delete mode 100644 dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/Owned.js delete mode 100644 dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/index.d.ts delete mode 100644 dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/index.d.ts.map delete mode 100644 dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/index.js delete mode 100644 dist/types/contracts/@ens/dnssec/TLDPublicSuffixList.d.ts delete mode 100644 dist/types/contracts/@ens/dnssec/TLDPublicSuffixList.d.ts.map delete mode 100644 dist/types/contracts/@ens/dnssec/TLDPublicSuffixList.js delete mode 100644 dist/types/contracts/@ens/dnssec/algorithms/DummyAlgorithm.d.ts delete mode 100644 dist/types/contracts/@ens/dnssec/algorithms/DummyAlgorithm.d.ts.map delete mode 100644 dist/types/contracts/@ens/dnssec/algorithms/DummyAlgorithm.js delete mode 100644 dist/types/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm.d.ts delete mode 100644 dist/types/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm.d.ts.map delete mode 100644 dist/types/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm.js delete mode 100644 dist/types/contracts/@ens/dnssec/algorithms/index.d.ts delete mode 100644 dist/types/contracts/@ens/dnssec/algorithms/index.d.ts.map delete mode 100644 dist/types/contracts/@ens/dnssec/algorithms/index.js delete mode 100644 dist/types/contracts/@ens/dnssec/digests/SHA1Digest.d.ts delete mode 100644 dist/types/contracts/@ens/dnssec/digests/SHA1Digest.d.ts.map delete mode 100644 dist/types/contracts/@ens/dnssec/digests/SHA1Digest.js delete mode 100644 dist/types/contracts/@ens/dnssec/digests/SHA1NSEC3Digest.d.ts delete mode 100644 dist/types/contracts/@ens/dnssec/digests/SHA1NSEC3Digest.d.ts.map delete mode 100644 dist/types/contracts/@ens/dnssec/digests/SHA1NSEC3Digest.js delete mode 100644 dist/types/contracts/@ens/dnssec/digests/SHA256Digest.d.ts delete mode 100644 dist/types/contracts/@ens/dnssec/digests/SHA256Digest.d.ts.map delete mode 100644 dist/types/contracts/@ens/dnssec/digests/SHA256Digest.js delete mode 100644 dist/types/contracts/@ens/dnssec/digests/index.d.ts delete mode 100644 dist/types/contracts/@ens/dnssec/digests/index.d.ts.map delete mode 100644 dist/types/contracts/@ens/dnssec/digests/index.js delete mode 100644 dist/types/contracts/@ens/dnssec/index.d.ts delete mode 100644 dist/types/contracts/@ens/dnssec/index.d.ts.map delete mode 100644 dist/types/contracts/@ens/dnssec/index.js delete mode 100644 dist/types/contracts/@ens/dnssec/interfaces/Algorithm.d.ts delete mode 100644 dist/types/contracts/@ens/dnssec/interfaces/Algorithm.d.ts.map delete mode 100644 dist/types/contracts/@ens/dnssec/interfaces/Algorithm.js delete mode 100644 dist/types/contracts/@ens/dnssec/interfaces/Digest.d.ts delete mode 100644 dist/types/contracts/@ens/dnssec/interfaces/Digest.d.ts.map delete mode 100644 dist/types/contracts/@ens/dnssec/interfaces/Digest.js delete mode 100644 dist/types/contracts/@ens/dnssec/interfaces/IDNSRegistrar.d.ts delete mode 100644 dist/types/contracts/@ens/dnssec/interfaces/IDNSRegistrar.d.ts.map delete mode 100644 dist/types/contracts/@ens/dnssec/interfaces/IDNSRegistrar.js delete mode 100644 dist/types/contracts/@ens/dnssec/interfaces/NSEC3Digest.d.ts delete mode 100644 dist/types/contracts/@ens/dnssec/interfaces/NSEC3Digest.d.ts.map delete mode 100644 dist/types/contracts/@ens/dnssec/interfaces/NSEC3Digest.js delete mode 100644 dist/types/contracts/@ens/dnssec/interfaces/PublicSuffixList.d.ts delete mode 100644 dist/types/contracts/@ens/dnssec/interfaces/PublicSuffixList.d.ts.map delete mode 100644 dist/types/contracts/@ens/dnssec/interfaces/PublicSuffixList.js delete mode 100644 dist/types/contracts/@ens/dnssec/interfaces/index.d.ts delete mode 100644 dist/types/contracts/@ens/dnssec/interfaces/index.d.ts.map delete mode 100644 dist/types/contracts/@ens/dnssec/interfaces/index.js delete mode 100644 dist/types/contracts/@ens/dnssec/libraries/SHA1.d.ts delete mode 100644 dist/types/contracts/@ens/dnssec/libraries/SHA1.d.ts.map delete mode 100644 dist/types/contracts/@ens/dnssec/libraries/SHA1.js delete mode 100644 dist/types/contracts/@ens/dnssec/libraries/index.d.ts delete mode 100644 dist/types/contracts/@ens/dnssec/libraries/index.d.ts.map delete mode 100644 dist/types/contracts/@ens/dnssec/libraries/index.js delete mode 100644 dist/types/contracts/@ens/index.d.ts delete mode 100644 dist/types/contracts/@ens/index.d.ts.map delete mode 100644 dist/types/contracts/@ens/index.js delete mode 100644 dist/types/contracts/@maticnetwork/IChildToken.d.ts delete mode 100644 dist/types/contracts/@maticnetwork/IChildToken.d.ts.map delete mode 100644 dist/types/contracts/@maticnetwork/IChildToken.js delete mode 100644 dist/types/contracts/@maticnetwork/IMintableERC721.d.ts delete mode 100644 dist/types/contracts/@maticnetwork/IMintableERC721.d.ts.map delete mode 100644 dist/types/contracts/@maticnetwork/IMintableERC721.js delete mode 100644 dist/types/contracts/@maticnetwork/IRootChainManager.d.ts delete mode 100644 dist/types/contracts/@maticnetwork/IRootChainManager.d.ts.map delete mode 100644 dist/types/contracts/@maticnetwork/IRootChainManager.js delete mode 100644 dist/types/contracts/@maticnetwork/RootChainManagerStorage.d.ts delete mode 100644 dist/types/contracts/@maticnetwork/RootChainManagerStorage.d.ts.map delete mode 100644 dist/types/contracts/@maticnetwork/RootChainManagerStorage.js delete mode 100644 dist/types/contracts/@maticnetwork/index.d.ts delete mode 100644 dist/types/contracts/@maticnetwork/index.d.ts.map delete mode 100644 dist/types/contracts/@maticnetwork/index.js delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender.d.ts delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender.d.ts.map delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender.js delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender.d.ts delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender.d.ts.map delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender.js delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/index.d.ts delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/index.d.ts.map delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/index.js delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl.d.ts delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl.d.ts.map delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl.js delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin.d.ts delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin.d.ts.map delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin.js delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC165.d.ts delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC165.d.ts.map delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC165.js delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721.d.ts delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721.d.ts.map delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721.js delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721Receiver.d.ts delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721Receiver.d.ts.map delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721Receiver.js delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IMintableERC721.d.ts delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IMintableERC721.d.ts.map delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IMintableERC721.js delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate.d.ts delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate.d.ts.map delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate.js delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate.d.ts delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate.d.ts.map delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate.js delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/index.d.ts delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/index.d.ts.map delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/index.js delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControl.d.ts delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControl.d.ts.map delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControl.js delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControlMixin.d.ts delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControlMixin.d.ts.map delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControlMixin.js delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base.d.ts delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base.d.ts.map delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base.js delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager.d.ts delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager.d.ts.map delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager.js delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IRootChainManager.d.ts delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IRootChainManager.d.ts.map delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IRootChainManager.js delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IStateSender.d.ts delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IStateSender.d.ts.map delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IStateSender.js delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ITokenPredicate.d.ts delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ITokenPredicate.d.ts.map delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ITokenPredicate.js delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction.d.ts delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction.d.ts.map delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction.js delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager.d.ts delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager.d.ts.map delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager.js delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage.d.ts delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage.d.ts.map delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage.js delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/index.d.ts delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/index.d.ts.map delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/index.js delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/ICheckpointManager.d.ts delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/ICheckpointManager.d.ts.map delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/ICheckpointManager.js delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain.d.ts delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain.d.ts.map delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain.js delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager.d.ts delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager.d.ts.map delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager.js delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/index.d.ts delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/index.d.ts.map delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/index.js delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/index.d.ts delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/index.d.ts.map delete mode 100644 dist/types/contracts/@maticnetwork/pos-portal/index.js delete mode 100644 dist/types/contracts/ChildRegistry.d.ts delete mode 100644 dist/types/contracts/ChildRegistry.d.ts.map delete mode 100644 dist/types/contracts/ChildRegistry.js delete mode 100644 dist/types/contracts/DotCoinBurner.d.ts delete mode 100644 dist/types/contracts/DotCoinBurner.d.ts.map delete mode 100644 dist/types/contracts/DotCoinBurner.js delete mode 100644 dist/types/contracts/IAddressReader.d.ts delete mode 100644 dist/types/contracts/IAddressReader.d.ts.map delete mode 100644 dist/types/contracts/IAddressReader.js delete mode 100644 dist/types/contracts/IDataReader.d.ts delete mode 100644 dist/types/contracts/IDataReader.d.ts.map delete mode 100644 dist/types/contracts/IDataReader.js delete mode 100644 dist/types/contracts/IERC1967.d.ts delete mode 100644 dist/types/contracts/IERC1967.d.ts.map delete mode 100644 dist/types/contracts/IERC1967.js delete mode 100644 dist/types/contracts/IMintingManager.d.ts delete mode 100644 dist/types/contracts/IMintingManager.d.ts.map delete mode 100644 dist/types/contracts/IMintingManager.js delete mode 100644 dist/types/contracts/IRecordReader.d.ts delete mode 100644 dist/types/contracts/IRecordReader.d.ts.map delete mode 100644 dist/types/contracts/IRecordReader.js delete mode 100644 dist/types/contracts/IRecordStorage.d.ts delete mode 100644 dist/types/contracts/IRecordStorage.d.ts.map delete mode 100644 dist/types/contracts/IRecordStorage.js delete mode 100644 dist/types/contracts/IRegistryReader.d.ts delete mode 100644 dist/types/contracts/IRegistryReader.d.ts.map delete mode 100644 dist/types/contracts/IRegistryReader.js delete mode 100644 dist/types/contracts/IReverseRegistry.d.ts delete mode 100644 dist/types/contracts/IReverseRegistry.d.ts.map delete mode 100644 dist/types/contracts/IReverseRegistry.js delete mode 100644 dist/types/contracts/IRootRegistry.d.ts delete mode 100644 dist/types/contracts/IRootRegistry.d.ts.map delete mode 100644 dist/types/contracts/IRootRegistry.js delete mode 100644 dist/types/contracts/IUNSRegistry.d.ts delete mode 100644 dist/types/contracts/IUNSRegistry.d.ts.map delete mode 100644 dist/types/contracts/IUNSRegistry.js delete mode 100644 dist/types/contracts/KeyStorage.d.ts delete mode 100644 dist/types/contracts/KeyStorage.d.ts.map delete mode 100644 dist/types/contracts/KeyStorage.js delete mode 100644 dist/types/contracts/MintingManager.d.ts delete mode 100644 dist/types/contracts/MintingManager.d.ts.map delete mode 100644 dist/types/contracts/MintingManager.js delete mode 100644 dist/types/contracts/ProxyReader.d.ts delete mode 100644 dist/types/contracts/ProxyReader.d.ts.map delete mode 100644 dist/types/contracts/ProxyReader.js delete mode 100644 dist/types/contracts/RecordStorage.d.ts delete mode 100644 dist/types/contracts/RecordStorage.d.ts.map delete mode 100644 dist/types/contracts/RecordStorage.js delete mode 100644 dist/types/contracts/RootRegistry.d.ts delete mode 100644 dist/types/contracts/RootRegistry.d.ts.map delete mode 100644 dist/types/contracts/RootRegistry.js delete mode 100644 dist/types/contracts/UNSOperator.d.ts delete mode 100644 dist/types/contracts/UNSOperator.d.ts.map delete mode 100644 dist/types/contracts/UNSOperator.js delete mode 100644 dist/types/contracts/UNSRegistry.d.ts delete mode 100644 dist/types/contracts/UNSRegistry.d.ts.map delete mode 100644 dist/types/contracts/UNSRegistry.js delete mode 100644 dist/types/contracts/cns/ICNSRegistry.d.ts delete mode 100644 dist/types/contracts/cns/ICNSRegistry.d.ts.map delete mode 100644 dist/types/contracts/cns/ICNSRegistry.js delete mode 100644 dist/types/contracts/cns/IMintingController.d.ts delete mode 100644 dist/types/contracts/cns/IMintingController.d.ts.map delete mode 100644 dist/types/contracts/cns/IMintingController.js delete mode 100644 dist/types/contracts/cns/IResolver.d.ts delete mode 100644 dist/types/contracts/cns/IResolver.d.ts.map delete mode 100644 dist/types/contracts/cns/IResolver.js delete mode 100644 dist/types/contracts/cns/IURIPrefixController.d.ts delete mode 100644 dist/types/contracts/cns/IURIPrefixController.d.ts.map delete mode 100644 dist/types/contracts/cns/IURIPrefixController.js delete mode 100644 dist/types/contracts/cns/index.d.ts delete mode 100644 dist/types/contracts/cns/index.d.ts.map delete mode 100644 dist/types/contracts/cns/index.js delete mode 100644 dist/types/contracts/custody/ENSCustody.d.ts delete mode 100644 dist/types/contracts/custody/ENSCustody.d.ts.map delete mode 100644 dist/types/contracts/custody/ENSCustody.js delete mode 100644 dist/types/contracts/custody/IENSCustody.d.ts delete mode 100644 dist/types/contracts/custody/IENSCustody.d.ts.map delete mode 100644 dist/types/contracts/custody/IENSCustody.js delete mode 100644 dist/types/contracts/custody/ZilliqaRecover.d.ts delete mode 100644 dist/types/contracts/custody/ZilliqaRecover.d.ts.map delete mode 100644 dist/types/contracts/custody/ZilliqaRecover.js delete mode 100644 dist/types/contracts/custody/index.d.ts delete mode 100644 dist/types/contracts/custody/index.d.ts.map delete mode 100644 dist/types/contracts/custody/index.js delete mode 100644 dist/types/contracts/history/IUNSRegistryV07.d.ts delete mode 100644 dist/types/contracts/history/IUNSRegistryV07.d.ts.map delete mode 100644 dist/types/contracts/history/IUNSRegistryV07.js delete mode 100644 dist/types/contracts/history/ProxyReaderV04.d.ts delete mode 100644 dist/types/contracts/history/ProxyReaderV04.d.ts.map delete mode 100644 dist/types/contracts/history/ProxyReaderV04.js delete mode 100644 dist/types/contracts/history/UNSRegistryV07.d.ts delete mode 100644 dist/types/contracts/history/UNSRegistryV07.d.ts.map delete mode 100644 dist/types/contracts/history/UNSRegistryV07.js delete mode 100644 dist/types/contracts/history/index.d.ts delete mode 100644 dist/types/contracts/history/index.d.ts.map delete mode 100644 dist/types/contracts/history/index.js delete mode 100644 dist/types/contracts/index.d.ts delete mode 100644 dist/types/contracts/index.d.ts.map delete mode 100644 dist/types/contracts/index.js delete mode 100644 dist/types/contracts/marketplace/ISeaportProxyBuyer.d.ts delete mode 100644 dist/types/contracts/marketplace/ISeaportProxyBuyer.d.ts.map delete mode 100644 dist/types/contracts/marketplace/ISeaportProxyBuyer.js delete mode 100644 dist/types/contracts/marketplace/SeaportProxyBuyer.d.ts delete mode 100644 dist/types/contracts/marketplace/SeaportProxyBuyer.d.ts.map delete mode 100644 dist/types/contracts/marketplace/SeaportProxyBuyer.js delete mode 100644 dist/types/contracts/marketplace/index.d.ts delete mode 100644 dist/types/contracts/marketplace/index.d.ts.map delete mode 100644 dist/types/contracts/marketplace/index.js delete mode 100644 dist/types/contracts/metatx/BaseForwarder.d.ts delete mode 100644 dist/types/contracts/metatx/BaseForwarder.d.ts.map delete mode 100644 dist/types/contracts/metatx/BaseForwarder.js delete mode 100644 dist/types/contracts/metatx/BaseRoutingForwarder.d.ts delete mode 100644 dist/types/contracts/metatx/BaseRoutingForwarder.d.ts.map delete mode 100644 dist/types/contracts/metatx/BaseRoutingForwarder.js delete mode 100644 dist/types/contracts/metatx/CNSRegistryForwarder.d.ts delete mode 100644 dist/types/contracts/metatx/CNSRegistryForwarder.d.ts.map delete mode 100644 dist/types/contracts/metatx/CNSRegistryForwarder.js delete mode 100644 dist/types/contracts/metatx/ERC2771Context.d.ts delete mode 100644 dist/types/contracts/metatx/ERC2771Context.d.ts.map delete mode 100644 dist/types/contracts/metatx/ERC2771Context.js delete mode 100644 dist/types/contracts/metatx/ERC2771RegistryContext.d.ts delete mode 100644 dist/types/contracts/metatx/ERC2771RegistryContext.d.ts.map delete mode 100644 dist/types/contracts/metatx/ERC2771RegistryContext.js delete mode 100644 dist/types/contracts/metatx/Forwarder.d.ts delete mode 100644 dist/types/contracts/metatx/Forwarder.d.ts.map delete mode 100644 dist/types/contracts/metatx/Forwarder.js delete mode 100644 dist/types/contracts/metatx/IForwarder.d.ts delete mode 100644 dist/types/contracts/metatx/IForwarder.d.ts.map delete mode 100644 dist/types/contracts/metatx/IForwarder.js delete mode 100644 dist/types/contracts/metatx/MintingManagerForwarder.d.ts delete mode 100644 dist/types/contracts/metatx/MintingManagerForwarder.d.ts.map delete mode 100644 dist/types/contracts/metatx/MintingManagerForwarder.js delete mode 100644 dist/types/contracts/metatx/ResolverForwarder.d.ts delete mode 100644 dist/types/contracts/metatx/ResolverForwarder.d.ts.map delete mode 100644 dist/types/contracts/metatx/ResolverForwarder.js delete mode 100644 dist/types/contracts/metatx/UNSRegistryForwarder.d.ts delete mode 100644 dist/types/contracts/metatx/UNSRegistryForwarder.d.ts.map delete mode 100644 dist/types/contracts/metatx/UNSRegistryForwarder.js delete mode 100644 dist/types/contracts/metatx/index.d.ts delete mode 100644 dist/types/contracts/metatx/index.d.ts.map delete mode 100644 dist/types/contracts/metatx/index.js delete mode 100644 dist/types/contracts/mocks/BaseForwarderMock.d.ts delete mode 100644 dist/types/contracts/mocks/BaseForwarderMock.d.ts.map delete mode 100644 dist/types/contracts/mocks/BaseForwarderMock.js delete mode 100644 dist/types/contracts/mocks/BaseRoutingForwarderMock.d.ts delete mode 100644 dist/types/contracts/mocks/BaseRoutingForwarderMock.d.ts.map delete mode 100644 dist/types/contracts/mocks/BaseRoutingForwarderMock.js delete mode 100644 dist/types/contracts/mocks/ERC1155Mock.d.ts delete mode 100644 dist/types/contracts/mocks/ERC1155Mock.d.ts.map delete mode 100644 dist/types/contracts/mocks/ERC1155Mock.js delete mode 100644 dist/types/contracts/mocks/ERC20Mock.d.ts delete mode 100644 dist/types/contracts/mocks/ERC20Mock.d.ts.map delete mode 100644 dist/types/contracts/mocks/ERC20Mock.js delete mode 100644 dist/types/contracts/mocks/ERC20UnsafeMock.d.ts delete mode 100644 dist/types/contracts/mocks/ERC20UnsafeMock.d.ts.map delete mode 100644 dist/types/contracts/mocks/ERC20UnsafeMock.js delete mode 100644 dist/types/contracts/mocks/ERC2771ContextMock.d.ts delete mode 100644 dist/types/contracts/mocks/ERC2771ContextMock.d.ts.map delete mode 100644 dist/types/contracts/mocks/ERC2771ContextMock.js delete mode 100644 dist/types/contracts/mocks/ERC2771RegistryContextMock.d.ts delete mode 100644 dist/types/contracts/mocks/ERC2771RegistryContextMock.d.ts.map delete mode 100644 dist/types/contracts/mocks/ERC2771RegistryContextMock.js delete mode 100644 dist/types/contracts/mocks/ERC721Mock.d.ts delete mode 100644 dist/types/contracts/mocks/ERC721Mock.d.ts.map delete mode 100644 dist/types/contracts/mocks/ERC721Mock.js delete mode 100644 dist/types/contracts/mocks/ERC721ReceiverMock.d.ts delete mode 100644 dist/types/contracts/mocks/ERC721ReceiverMock.d.ts.map delete mode 100644 dist/types/contracts/mocks/ERC721ReceiverMock.js delete mode 100644 dist/types/contracts/mocks/MinterRoleMock.d.ts delete mode 100644 dist/types/contracts/mocks/MinterRoleMock.d.ts.map delete mode 100644 dist/types/contracts/mocks/MinterRoleMock.js delete mode 100644 dist/types/contracts/mocks/MintingManagerMock.d.ts delete mode 100644 dist/types/contracts/mocks/MintingManagerMock.d.ts.map delete mode 100644 dist/types/contracts/mocks/MintingManagerMock.js delete mode 100644 dist/types/contracts/mocks/UNSRegistryForwarderMock.d.ts delete mode 100644 dist/types/contracts/mocks/UNSRegistryForwarderMock.d.ts.map delete mode 100644 dist/types/contracts/mocks/UNSRegistryForwarderMock.js delete mode 100644 dist/types/contracts/mocks/UNSRegistryMock.d.ts delete mode 100644 dist/types/contracts/mocks/UNSRegistryMock.d.ts.map delete mode 100644 dist/types/contracts/mocks/UNSRegistryMock.js delete mode 100644 dist/types/contracts/mocks/index.d.ts delete mode 100644 dist/types/contracts/mocks/index.d.ts.map delete mode 100644 dist/types/contracts/mocks/index.js delete mode 100644 dist/types/contracts/roles/MinterRole.d.ts delete mode 100644 dist/types/contracts/roles/MinterRole.d.ts.map delete mode 100644 dist/types/contracts/roles/MinterRole.js delete mode 100644 dist/types/contracts/roles/index.d.ts delete mode 100644 dist/types/contracts/roles/index.d.ts.map delete mode 100644 dist/types/contracts/roles/index.js delete mode 100644 dist/types/contracts/utils/Blocklist.d.ts delete mode 100644 dist/types/contracts/utils/Blocklist.d.ts.map delete mode 100644 dist/types/contracts/utils/Blocklist.js delete mode 100644 dist/types/contracts/utils/ERC1271SimpleWallet.d.ts delete mode 100644 dist/types/contracts/utils/ERC1271SimpleWallet.d.ts.map delete mode 100644 dist/types/contracts/utils/ERC1271SimpleWallet.js delete mode 100644 dist/types/contracts/utils/MultiSend.d.ts delete mode 100644 dist/types/contracts/utils/MultiSend.d.ts.map delete mode 100644 dist/types/contracts/utils/MultiSend.js delete mode 100644 dist/types/contracts/utils/Ownable.d.ts delete mode 100644 dist/types/contracts/utils/Ownable.d.ts.map delete mode 100644 dist/types/contracts/utils/Ownable.js delete mode 100644 dist/types/contracts/utils/Pausable.d.ts delete mode 100644 dist/types/contracts/utils/Pausable.d.ts.map delete mode 100644 dist/types/contracts/utils/Pausable.js delete mode 100644 dist/types/contracts/utils/index.d.ts delete mode 100644 dist/types/contracts/utils/index.d.ts.map delete mode 100644 dist/types/contracts/utils/index.js delete mode 100644 dist/types/dot-crypto/contracts/CNSRegistry.d.ts delete mode 100644 dist/types/dot-crypto/contracts/CNSRegistry.d.ts.map delete mode 100644 dist/types/dot-crypto/contracts/CNSRegistry.js delete mode 100644 dist/types/dot-crypto/contracts/ICNSRegistry.d.ts delete mode 100644 dist/types/dot-crypto/contracts/ICNSRegistry.d.ts.map delete mode 100644 dist/types/dot-crypto/contracts/ICNSRegistry.js delete mode 100644 dist/types/dot-crypto/contracts/IRegistryReader.d.ts delete mode 100644 dist/types/dot-crypto/contracts/IRegistryReader.d.ts.map delete mode 100644 dist/types/dot-crypto/contracts/IRegistryReader.js delete mode 100644 dist/types/dot-crypto/contracts/IResolver.d.ts delete mode 100644 dist/types/dot-crypto/contracts/IResolver.d.ts.map delete mode 100644 dist/types/dot-crypto/contracts/IResolver.js delete mode 100644 dist/types/dot-crypto/contracts/IResolverReader.d.ts delete mode 100644 dist/types/dot-crypto/contracts/IResolverReader.d.ts.map delete mode 100644 dist/types/dot-crypto/contracts/IResolverReader.js delete mode 100644 dist/types/dot-crypto/contracts/Resolver.d.ts delete mode 100644 dist/types/dot-crypto/contracts/Resolver.d.ts.map delete mode 100644 dist/types/dot-crypto/contracts/Resolver.js delete mode 100644 dist/types/dot-crypto/contracts/controllers/DomainZoneController.d.ts delete mode 100644 dist/types/dot-crypto/contracts/controllers/DomainZoneController.d.ts.map delete mode 100644 dist/types/dot-crypto/contracts/controllers/DomainZoneController.js delete mode 100644 dist/types/dot-crypto/contracts/controllers/IMintingController.d.ts delete mode 100644 dist/types/dot-crypto/contracts/controllers/IMintingController.d.ts.map delete mode 100644 dist/types/dot-crypto/contracts/controllers/IMintingController.js delete mode 100644 dist/types/dot-crypto/contracts/controllers/ISignatureController.d.ts delete mode 100644 dist/types/dot-crypto/contracts/controllers/ISignatureController.d.ts.map delete mode 100644 dist/types/dot-crypto/contracts/controllers/ISignatureController.js delete mode 100644 dist/types/dot-crypto/contracts/controllers/IURIPrefixController.d.ts delete mode 100644 dist/types/dot-crypto/contracts/controllers/IURIPrefixController.d.ts.map delete mode 100644 dist/types/dot-crypto/contracts/controllers/IURIPrefixController.js delete mode 100644 dist/types/dot-crypto/contracts/controllers/MintingController.d.ts delete mode 100644 dist/types/dot-crypto/contracts/controllers/MintingController.d.ts.map delete mode 100644 dist/types/dot-crypto/contracts/controllers/MintingController.js delete mode 100644 dist/types/dot-crypto/contracts/controllers/SignatureController.d.ts delete mode 100644 dist/types/dot-crypto/contracts/controllers/SignatureController.d.ts.map delete mode 100644 dist/types/dot-crypto/contracts/controllers/SignatureController.js delete mode 100644 dist/types/dot-crypto/contracts/controllers/URIPrefixController.d.ts delete mode 100644 dist/types/dot-crypto/contracts/controllers/URIPrefixController.d.ts.map delete mode 100644 dist/types/dot-crypto/contracts/controllers/URIPrefixController.js delete mode 100644 dist/types/dot-crypto/contracts/controllers/index.d.ts delete mode 100644 dist/types/dot-crypto/contracts/controllers/index.d.ts.map delete mode 100644 dist/types/dot-crypto/contracts/controllers/index.js delete mode 100644 dist/types/dot-crypto/contracts/index.d.ts delete mode 100644 dist/types/dot-crypto/contracts/index.d.ts.map delete mode 100644 dist/types/dot-crypto/contracts/index.js delete mode 100644 dist/types/dot-crypto/contracts/util/BulkWhitelistedRole.d.ts delete mode 100644 dist/types/dot-crypto/contracts/util/BulkWhitelistedRole.d.ts.map delete mode 100644 dist/types/dot-crypto/contracts/util/BulkWhitelistedRole.js delete mode 100644 dist/types/dot-crypto/contracts/util/ControllerRole.d.ts delete mode 100644 dist/types/dot-crypto/contracts/util/ControllerRole.d.ts.map delete mode 100644 dist/types/dot-crypto/contracts/util/ControllerRole.js delete mode 100644 dist/types/dot-crypto/contracts/util/FreeMinter.d.ts delete mode 100644 dist/types/dot-crypto/contracts/util/FreeMinter.d.ts.map delete mode 100644 dist/types/dot-crypto/contracts/util/FreeMinter.js delete mode 100644 dist/types/dot-crypto/contracts/util/SignatureUtil.d.ts delete mode 100644 dist/types/dot-crypto/contracts/util/SignatureUtil.d.ts.map delete mode 100644 dist/types/dot-crypto/contracts/util/SignatureUtil.js delete mode 100644 dist/types/dot-crypto/contracts/util/index.d.ts delete mode 100644 dist/types/dot-crypto/contracts/util/index.d.ts.map delete mode 100644 dist/types/dot-crypto/contracts/util/index.js delete mode 100644 dist/types/dot-crypto/index.d.ts delete mode 100644 dist/types/dot-crypto/index.d.ts.map delete mode 100644 dist/types/dot-crypto/index.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils__factory.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils__factory.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils__factory.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/index.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/index.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/index.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation__factory.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation__factory.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation__factory.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle__factory.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle__factory.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle__factory.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController__factory.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController__factory.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController__factory.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar__factory.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar__factory.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar__factory.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController__factory.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController__factory.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController__factory.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle__factory.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle__factory.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle__factory.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface__factory.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface__factory.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface__factory.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle__factory.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle__factory.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle__factory.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/index.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/index.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/index.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/index.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/index.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/index.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/index.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/index.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/index.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/registry/ENSRegistry__factory.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/registry/ENSRegistry__factory.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/registry/ENSRegistry__factory.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/registry/ENS__factory.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/registry/ENS__factory.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/registry/ENS__factory.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/registry/index.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/registry/index.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/registry/index.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable__factory.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable__factory.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable__factory.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/Multicallable__factory.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/Multicallable__factory.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/Multicallable__factory.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver__factory.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver__factory.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver__factory.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase__factory.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase__factory.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase__factory.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/Resolver__factory.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/Resolver__factory.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/Resolver__factory.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/index.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/index.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/index.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver__factory.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver__factory.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver__factory.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver__factory.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver__factory.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver__factory.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver__factory.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver__factory.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver__factory.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver__factory.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver__factory.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver__factory.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver__factory.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver__factory.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver__factory.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver__factory.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver__factory.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver__factory.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver__factory.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver__factory.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver__factory.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver__factory.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver__factory.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver__factory.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver__factory.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver__factory.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver__factory.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver__factory.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver__factory.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver__factory.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver__factory.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver__factory.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver__factory.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver__factory.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver__factory.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver__factory.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver__factory.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver__factory.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver__factory.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver__factory.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver__factory.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver__factory.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver__factory.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver__factory.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver__factory.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver__factory.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver__factory.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver__factory.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver__factory.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver__factory.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver__factory.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver__factory.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver__factory.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver__factory.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver__factory.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver__factory.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver__factory.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver__factory.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver__factory.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver__factory.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/index.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/index.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/index.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar__factory.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar__factory.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar__factory.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer__factory.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer__factory.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer__factory.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/NameResolver__factory.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/NameResolver__factory.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/NameResolver__factory.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar__factory.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar__factory.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar__factory.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/index.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/index.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/index.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/index.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/index.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/index.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/root/Controllable__factory.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/root/Controllable__factory.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/root/Controllable__factory.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/root/Root__factory.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/root/Root__factory.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/root/Root__factory.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/root/index.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/root/index.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/root/index.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable__factory.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable__factory.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable__factory.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/utils/index.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/utils/index.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/utils/index.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/Controllable__factory.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/Controllable__factory.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/Controllable__factory.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse__factory.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse__factory.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse__factory.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService__factory.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService__factory.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService__factory.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade__factory.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade__factory.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade__factory.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper__factory.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper__factory.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper__factory.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper__factory.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper__factory.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper__factory.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/index.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/index.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/index.js delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/index.d.ts delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/index.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/ens-contracts/index.js delete mode 100644 dist/types/factories/@ensdomains/index.d.ts delete mode 100644 dist/types/factories/@ensdomains/index.d.ts.map delete mode 100644 dist/types/factories/@ensdomains/index.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/access/index.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/access/index.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/access/index.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/access/roles/MinterRole__factory.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/access/roles/MinterRole__factory.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/access/roles/MinterRole__factory.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole__factory.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole__factory.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole__factory.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole__factory.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole__factory.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole__factory.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/access/roles/index.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/access/roles/index.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/access/roles/index.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/index.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/index.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/index.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/introspection/ERC165__factory.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/introspection/ERC165__factory.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/introspection/ERC165__factory.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/introspection/IERC165__factory.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/introspection/IERC165__factory.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/introspection/IERC165__factory.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/introspection/index.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/introspection/index.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/introspection/index.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable__factory.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable__factory.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable__factory.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721__factory.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721__factory.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721__factory.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata__factory.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata__factory.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata__factory.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver__factory.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver__factory.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver__factory.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721__factory.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721__factory.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721__factory.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/index.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/index.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/index.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/token/index.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/token/index.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/token/index.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable__factory.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable__factory.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable__factory.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable__factory.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable__factory.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable__factory.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable__factory.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable__factory.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable__factory.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable__factory.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable__factory.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable__factory.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable__factory.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable__factory.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable__factory.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/access/index.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/access/index.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/access/index.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/index.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/index.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/index.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable__factory.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable__factory.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable__factory.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/interfaces/index.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/interfaces/index.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/interfaces/index.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/index.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/index.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/index.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable__factory.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable__factory.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable__factory.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/index.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/index.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/index.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable__factory.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable__factory.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable__factory.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable__factory.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable__factory.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable__factory.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/security/index.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/security/index.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/security/index.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable__factory.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable__factory.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable__factory.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable__factory.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable__factory.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable__factory.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable__factory.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable__factory.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable__factory.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable__factory.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable__factory.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable__factory.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable__factory.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable__factory.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable__factory.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable__factory.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable__factory.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable__factory.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/index.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/index.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/index.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/index.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/index.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/index.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable__factory.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable__factory.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable__factory.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/index.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/index.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/index.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable__factory.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable__factory.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable__factory.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/index.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/index.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/index.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable__factory.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable__factory.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable__factory.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable__factory.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable__factory.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable__factory.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable__factory.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable__factory.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable__factory.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable__factory.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable__factory.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable__factory.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/index.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/index.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/index.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/index.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/index.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/index.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/index.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/index.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/index.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable__factory.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable__factory.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable__factory.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable__factory.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable__factory.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable__factory.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/utils/index.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/utils/index.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/utils/index.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable__factory.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable__factory.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable__factory.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable__factory.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable__factory.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable__factory.js delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/index.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/index.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/index.js delete mode 100644 dist/types/factories/@openzeppelin/contracts/access/Ownable__factory.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts/access/Ownable__factory.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts/access/Ownable__factory.js delete mode 100644 dist/types/factories/@openzeppelin/contracts/access/index.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts/access/index.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts/access/index.js delete mode 100644 dist/types/factories/@openzeppelin/contracts/index.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts/index.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts/index.js delete mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver__factory.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver__factory.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver__factory.js delete mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC1155/IERC1155__factory.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC1155/IERC1155__factory.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC1155/IERC1155__factory.js delete mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI__factory.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI__factory.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI__factory.js delete mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC1155/extensions/index.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC1155/extensions/index.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC1155/extensions/index.js delete mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC1155/index.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC1155/index.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC1155/index.js delete mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC20/ERC20__factory.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC20/ERC20__factory.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC20/ERC20__factory.js delete mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC20/IERC20__factory.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC20/IERC20__factory.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC20/IERC20__factory.js delete mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata__factory.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata__factory.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata__factory.js delete mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC20/extensions/index.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC20/extensions/index.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC20/extensions/index.js delete mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC20/index.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC20/index.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC20/index.js delete mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC721/ERC721__factory.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC721/ERC721__factory.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC721/ERC721__factory.js delete mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC721/IERC721Receiver__factory.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC721/IERC721Receiver__factory.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC721/IERC721Receiver__factory.js delete mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC721/IERC721__factory.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC721/IERC721__factory.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC721/IERC721__factory.js delete mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata__factory.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata__factory.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata__factory.js delete mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC721/extensions/index.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC721/extensions/index.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC721/extensions/index.js delete mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC721/index.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC721/index.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC721/index.js delete mode 100644 dist/types/factories/@openzeppelin/contracts/token/index.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts/token/index.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts/token/index.js delete mode 100644 dist/types/factories/@openzeppelin/contracts/utils/index.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts/utils/index.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts/utils/index.js delete mode 100644 dist/types/factories/@openzeppelin/contracts/utils/introspection/ERC165__factory.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts/utils/introspection/ERC165__factory.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts/utils/introspection/ERC165__factory.js delete mode 100644 dist/types/factories/@openzeppelin/contracts/utils/introspection/IERC165__factory.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts/utils/introspection/IERC165__factory.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts/utils/introspection/IERC165__factory.js delete mode 100644 dist/types/factories/@openzeppelin/contracts/utils/introspection/index.d.ts delete mode 100644 dist/types/factories/@openzeppelin/contracts/utils/introspection/index.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/contracts/utils/introspection/index.js delete mode 100644 dist/types/factories/@openzeppelin/index.d.ts delete mode 100644 dist/types/factories/@openzeppelin/index.d.ts.map delete mode 100644 dist/types/factories/@openzeppelin/index.js delete mode 100644 dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry__factory.d.ts delete mode 100644 dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry__factory.js delete mode 100644 dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENS__factory.d.ts delete mode 100644 dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENS__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENS__factory.js delete mode 100644 dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/index.d.ts delete mode 100644 dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/index.d.ts.map delete mode 100644 dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/index.js delete mode 100644 dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar__factory.d.ts delete mode 100644 dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar__factory.js delete mode 100644 dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/ENS__factory.d.ts delete mode 100644 dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/ENS__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/ENS__factory.js delete mode 100644 dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/IERC165__factory.d.ts delete mode 100644 dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/IERC165__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/IERC165__factory.js delete mode 100644 dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/IERC721__factory.d.ts delete mode 100644 dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/IERC721__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/IERC721__factory.js delete mode 100644 dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController__factory.d.ts delete mode 100644 dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController__factory.js delete mode 100644 dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/Ownable__factory.d.ts delete mode 100644 dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/Ownable__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/Ownable__factory.js delete mode 100644 dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle__factory.d.ts delete mode 100644 dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle__factory.js delete mode 100644 dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/Resolver__factory.d.ts delete mode 100644 dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/Resolver__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/Resolver__factory.js delete mode 100644 dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/index.d.ts delete mode 100644 dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/index.d.ts.map delete mode 100644 dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/index.js delete mode 100644 dist/types/factories/contracts/@ens/dnssec/DNSRegistrar__factory.d.ts delete mode 100644 dist/types/factories/contracts/@ens/dnssec/DNSRegistrar__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/@ens/dnssec/DNSRegistrar__factory.js delete mode 100644 dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl__factory.d.ts delete mode 100644 dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl__factory.js delete mode 100644 dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/Owned__factory.d.ts delete mode 100644 dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/Owned__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/Owned__factory.js delete mode 100644 dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/index.d.ts delete mode 100644 dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/index.d.ts.map delete mode 100644 dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/index.js delete mode 100644 dist/types/factories/contracts/@ens/dnssec/DNSSEC__factory.d.ts delete mode 100644 dist/types/factories/contracts/@ens/dnssec/DNSSEC__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/@ens/dnssec/DNSSEC__factory.js delete mode 100644 dist/types/factories/contracts/@ens/dnssec/TLDPublicSuffixList__factory.d.ts delete mode 100644 dist/types/factories/contracts/@ens/dnssec/TLDPublicSuffixList__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/@ens/dnssec/TLDPublicSuffixList__factory.js delete mode 100644 dist/types/factories/contracts/@ens/dnssec/algorithms/DummyAlgorithm__factory.d.ts delete mode 100644 dist/types/factories/contracts/@ens/dnssec/algorithms/DummyAlgorithm__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/@ens/dnssec/algorithms/DummyAlgorithm__factory.js delete mode 100644 dist/types/factories/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm__factory.d.ts delete mode 100644 dist/types/factories/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm__factory.js delete mode 100644 dist/types/factories/contracts/@ens/dnssec/algorithms/index.d.ts delete mode 100644 dist/types/factories/contracts/@ens/dnssec/algorithms/index.d.ts.map delete mode 100644 dist/types/factories/contracts/@ens/dnssec/algorithms/index.js delete mode 100644 dist/types/factories/contracts/@ens/dnssec/digests/SHA1Digest__factory.d.ts delete mode 100644 dist/types/factories/contracts/@ens/dnssec/digests/SHA1Digest__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/@ens/dnssec/digests/SHA1Digest__factory.js delete mode 100644 dist/types/factories/contracts/@ens/dnssec/digests/SHA1NSEC3Digest__factory.d.ts delete mode 100644 dist/types/factories/contracts/@ens/dnssec/digests/SHA1NSEC3Digest__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/@ens/dnssec/digests/SHA1NSEC3Digest__factory.js delete mode 100644 dist/types/factories/contracts/@ens/dnssec/digests/SHA256Digest__factory.d.ts delete mode 100644 dist/types/factories/contracts/@ens/dnssec/digests/SHA256Digest__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/@ens/dnssec/digests/SHA256Digest__factory.js delete mode 100644 dist/types/factories/contracts/@ens/dnssec/digests/index.d.ts delete mode 100644 dist/types/factories/contracts/@ens/dnssec/digests/index.d.ts.map delete mode 100644 dist/types/factories/contracts/@ens/dnssec/digests/index.js delete mode 100644 dist/types/factories/contracts/@ens/dnssec/index.d.ts delete mode 100644 dist/types/factories/contracts/@ens/dnssec/index.d.ts.map delete mode 100644 dist/types/factories/contracts/@ens/dnssec/index.js delete mode 100644 dist/types/factories/contracts/@ens/dnssec/interfaces/Algorithm__factory.d.ts delete mode 100644 dist/types/factories/contracts/@ens/dnssec/interfaces/Algorithm__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/@ens/dnssec/interfaces/Algorithm__factory.js delete mode 100644 dist/types/factories/contracts/@ens/dnssec/interfaces/Digest__factory.d.ts delete mode 100644 dist/types/factories/contracts/@ens/dnssec/interfaces/Digest__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/@ens/dnssec/interfaces/Digest__factory.js delete mode 100644 dist/types/factories/contracts/@ens/dnssec/interfaces/IDNSRegistrar__factory.d.ts delete mode 100644 dist/types/factories/contracts/@ens/dnssec/interfaces/IDNSRegistrar__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/@ens/dnssec/interfaces/IDNSRegistrar__factory.js delete mode 100644 dist/types/factories/contracts/@ens/dnssec/interfaces/NSEC3Digest__factory.d.ts delete mode 100644 dist/types/factories/contracts/@ens/dnssec/interfaces/NSEC3Digest__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/@ens/dnssec/interfaces/NSEC3Digest__factory.js delete mode 100644 dist/types/factories/contracts/@ens/dnssec/interfaces/PublicSuffixList__factory.d.ts delete mode 100644 dist/types/factories/contracts/@ens/dnssec/interfaces/PublicSuffixList__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/@ens/dnssec/interfaces/PublicSuffixList__factory.js delete mode 100644 dist/types/factories/contracts/@ens/dnssec/interfaces/index.d.ts delete mode 100644 dist/types/factories/contracts/@ens/dnssec/interfaces/index.d.ts.map delete mode 100644 dist/types/factories/contracts/@ens/dnssec/interfaces/index.js delete mode 100644 dist/types/factories/contracts/@ens/dnssec/libraries/SHA1__factory.d.ts delete mode 100644 dist/types/factories/contracts/@ens/dnssec/libraries/SHA1__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/@ens/dnssec/libraries/SHA1__factory.js delete mode 100644 dist/types/factories/contracts/@ens/dnssec/libraries/index.d.ts delete mode 100644 dist/types/factories/contracts/@ens/dnssec/libraries/index.d.ts.map delete mode 100644 dist/types/factories/contracts/@ens/dnssec/libraries/index.js delete mode 100644 dist/types/factories/contracts/@ens/index.d.ts delete mode 100644 dist/types/factories/contracts/@ens/index.d.ts.map delete mode 100644 dist/types/factories/contracts/@ens/index.js delete mode 100644 dist/types/factories/contracts/@maticnetwork/IChildToken__factory.d.ts delete mode 100644 dist/types/factories/contracts/@maticnetwork/IChildToken__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/@maticnetwork/IChildToken__factory.js delete mode 100644 dist/types/factories/contracts/@maticnetwork/IMintableERC721__factory.d.ts delete mode 100644 dist/types/factories/contracts/@maticnetwork/IMintableERC721__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/@maticnetwork/IMintableERC721__factory.js delete mode 100644 dist/types/factories/contracts/@maticnetwork/IRootChainManager__factory.d.ts delete mode 100644 dist/types/factories/contracts/@maticnetwork/IRootChainManager__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/@maticnetwork/IRootChainManager__factory.js delete mode 100644 dist/types/factories/contracts/@maticnetwork/RootChainManagerStorage__factory.d.ts delete mode 100644 dist/types/factories/contracts/@maticnetwork/RootChainManagerStorage__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/@maticnetwork/RootChainManagerStorage__factory.js delete mode 100644 dist/types/factories/contracts/@maticnetwork/index.d.ts delete mode 100644 dist/types/factories/contracts/@maticnetwork/index.d.ts.map delete mode 100644 dist/types/factories/contracts/@maticnetwork/index.js delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender__factory.d.ts delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender__factory.js delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender__factory.d.ts delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender__factory.js delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/index.d.ts delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/index.d.ts.map delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/index.js delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin__factory.d.ts delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin__factory.js delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl__factory.d.ts delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl__factory.js delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC165__factory.d.ts delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC165__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC165__factory.js delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721Receiver__factory.d.ts delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721Receiver__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721Receiver__factory.js delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721__factory.d.ts delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721__factory.js delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IMintableERC721__factory.d.ts delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IMintableERC721__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IMintableERC721__factory.js delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate__factory.d.ts delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate__factory.js delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate__factory.d.ts delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate__factory.js delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/index.d.ts delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/index.d.ts.map delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/index.js delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControlMixin__factory.d.ts delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControlMixin__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControlMixin__factory.js delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControl__factory.d.ts delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControl__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControl__factory.js delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base__factory.d.ts delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base__factory.js delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager__factory.d.ts delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager__factory.js delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IRootChainManager__factory.d.ts delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IRootChainManager__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IRootChainManager__factory.js delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IStateSender__factory.d.ts delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IStateSender__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IStateSender__factory.js delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ITokenPredicate__factory.d.ts delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ITokenPredicate__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ITokenPredicate__factory.js delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction__factory.d.ts delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction__factory.js delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage__factory.d.ts delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage__factory.js delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager__factory.d.ts delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager__factory.js delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/index.d.ts delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/index.d.ts.map delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/index.js delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/ICheckpointManager__factory.d.ts delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/ICheckpointManager__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/ICheckpointManager__factory.js delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain__factory.d.ts delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain__factory.js delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager__factory.d.ts delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager__factory.js delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/index.d.ts delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/index.d.ts.map delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/index.js delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/index.d.ts delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/index.d.ts.map delete mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/index.js delete mode 100644 dist/types/factories/contracts/ChildRegistry__factory.d.ts delete mode 100644 dist/types/factories/contracts/ChildRegistry__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/ChildRegistry__factory.js delete mode 100644 dist/types/factories/contracts/DotCoinBurner__factory.d.ts delete mode 100644 dist/types/factories/contracts/DotCoinBurner__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/DotCoinBurner__factory.js delete mode 100644 dist/types/factories/contracts/IAddressReader__factory.d.ts delete mode 100644 dist/types/factories/contracts/IAddressReader__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/IAddressReader__factory.js delete mode 100644 dist/types/factories/contracts/IDataReader__factory.d.ts delete mode 100644 dist/types/factories/contracts/IDataReader__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/IDataReader__factory.js delete mode 100644 dist/types/factories/contracts/IERC1967__factory.d.ts delete mode 100644 dist/types/factories/contracts/IERC1967__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/IERC1967__factory.js delete mode 100644 dist/types/factories/contracts/IMintingManager__factory.d.ts delete mode 100644 dist/types/factories/contracts/IMintingManager__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/IMintingManager__factory.js delete mode 100644 dist/types/factories/contracts/IRecordReader__factory.d.ts delete mode 100644 dist/types/factories/contracts/IRecordReader__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/IRecordReader__factory.js delete mode 100644 dist/types/factories/contracts/IRecordStorage__factory.d.ts delete mode 100644 dist/types/factories/contracts/IRecordStorage__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/IRecordStorage__factory.js delete mode 100644 dist/types/factories/contracts/IRegistryReader__factory.d.ts delete mode 100644 dist/types/factories/contracts/IRegistryReader__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/IRegistryReader__factory.js delete mode 100644 dist/types/factories/contracts/IReverseRegistry__factory.d.ts delete mode 100644 dist/types/factories/contracts/IReverseRegistry__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/IReverseRegistry__factory.js delete mode 100644 dist/types/factories/contracts/IRootRegistry__factory.d.ts delete mode 100644 dist/types/factories/contracts/IRootRegistry__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/IRootRegistry__factory.js delete mode 100644 dist/types/factories/contracts/IUNSRegistry__factory.d.ts delete mode 100644 dist/types/factories/contracts/IUNSRegistry__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/IUNSRegistry__factory.js delete mode 100644 dist/types/factories/contracts/KeyStorage__factory.d.ts delete mode 100644 dist/types/factories/contracts/KeyStorage__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/KeyStorage__factory.js delete mode 100644 dist/types/factories/contracts/MintingManager__factory.d.ts delete mode 100644 dist/types/factories/contracts/MintingManager__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/MintingManager__factory.js delete mode 100644 dist/types/factories/contracts/ProxyReader__factory.d.ts delete mode 100644 dist/types/factories/contracts/ProxyReader__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/ProxyReader__factory.js delete mode 100644 dist/types/factories/contracts/RecordStorage__factory.d.ts delete mode 100644 dist/types/factories/contracts/RecordStorage__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/RecordStorage__factory.js delete mode 100644 dist/types/factories/contracts/RootRegistry__factory.d.ts delete mode 100644 dist/types/factories/contracts/RootRegistry__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/RootRegistry__factory.js delete mode 100644 dist/types/factories/contracts/UNSOperator__factory.d.ts delete mode 100644 dist/types/factories/contracts/UNSOperator__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/UNSOperator__factory.js delete mode 100644 dist/types/factories/contracts/UNSRegistry__factory.d.ts delete mode 100644 dist/types/factories/contracts/UNSRegistry__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/UNSRegistry__factory.js delete mode 100644 dist/types/factories/contracts/cns/ICNSRegistry__factory.d.ts delete mode 100644 dist/types/factories/contracts/cns/ICNSRegistry__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/cns/ICNSRegistry__factory.js delete mode 100644 dist/types/factories/contracts/cns/IMintingController__factory.d.ts delete mode 100644 dist/types/factories/contracts/cns/IMintingController__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/cns/IMintingController__factory.js delete mode 100644 dist/types/factories/contracts/cns/IResolver__factory.d.ts delete mode 100644 dist/types/factories/contracts/cns/IResolver__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/cns/IResolver__factory.js delete mode 100644 dist/types/factories/contracts/cns/IURIPrefixController__factory.d.ts delete mode 100644 dist/types/factories/contracts/cns/IURIPrefixController__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/cns/IURIPrefixController__factory.js delete mode 100644 dist/types/factories/contracts/cns/index.d.ts delete mode 100644 dist/types/factories/contracts/cns/index.d.ts.map delete mode 100644 dist/types/factories/contracts/cns/index.js delete mode 100644 dist/types/factories/contracts/custody/ENSCustody__factory.d.ts delete mode 100644 dist/types/factories/contracts/custody/ENSCustody__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/custody/ENSCustody__factory.js delete mode 100644 dist/types/factories/contracts/custody/IENSCustody__factory.d.ts delete mode 100644 dist/types/factories/contracts/custody/IENSCustody__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/custody/IENSCustody__factory.js delete mode 100644 dist/types/factories/contracts/custody/ZilliqaRecover__factory.d.ts delete mode 100644 dist/types/factories/contracts/custody/ZilliqaRecover__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/custody/ZilliqaRecover__factory.js delete mode 100644 dist/types/factories/contracts/custody/index.d.ts delete mode 100644 dist/types/factories/contracts/custody/index.d.ts.map delete mode 100644 dist/types/factories/contracts/custody/index.js delete mode 100644 dist/types/factories/contracts/history/IUNSRegistryV07__factory.d.ts delete mode 100644 dist/types/factories/contracts/history/IUNSRegistryV07__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/history/IUNSRegistryV07__factory.js delete mode 100644 dist/types/factories/contracts/history/ProxyReaderV04__factory.d.ts delete mode 100644 dist/types/factories/contracts/history/ProxyReaderV04__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/history/ProxyReaderV04__factory.js delete mode 100644 dist/types/factories/contracts/history/UNSRegistryV07__factory.d.ts delete mode 100644 dist/types/factories/contracts/history/UNSRegistryV07__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/history/UNSRegistryV07__factory.js delete mode 100644 dist/types/factories/contracts/history/index.d.ts delete mode 100644 dist/types/factories/contracts/history/index.d.ts.map delete mode 100644 dist/types/factories/contracts/history/index.js delete mode 100644 dist/types/factories/contracts/index.d.ts delete mode 100644 dist/types/factories/contracts/index.d.ts.map delete mode 100644 dist/types/factories/contracts/index.js delete mode 100644 dist/types/factories/contracts/marketplace/ISeaportProxyBuyer__factory.d.ts delete mode 100644 dist/types/factories/contracts/marketplace/ISeaportProxyBuyer__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/marketplace/ISeaportProxyBuyer__factory.js delete mode 100644 dist/types/factories/contracts/marketplace/SeaportProxyBuyer__factory.d.ts delete mode 100644 dist/types/factories/contracts/marketplace/SeaportProxyBuyer__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/marketplace/SeaportProxyBuyer__factory.js delete mode 100644 dist/types/factories/contracts/marketplace/index.d.ts delete mode 100644 dist/types/factories/contracts/marketplace/index.d.ts.map delete mode 100644 dist/types/factories/contracts/marketplace/index.js delete mode 100644 dist/types/factories/contracts/metatx/BaseForwarder__factory.d.ts delete mode 100644 dist/types/factories/contracts/metatx/BaseForwarder__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/metatx/BaseForwarder__factory.js delete mode 100644 dist/types/factories/contracts/metatx/BaseRoutingForwarder__factory.d.ts delete mode 100644 dist/types/factories/contracts/metatx/BaseRoutingForwarder__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/metatx/BaseRoutingForwarder__factory.js delete mode 100644 dist/types/factories/contracts/metatx/CNSRegistryForwarder__factory.d.ts delete mode 100644 dist/types/factories/contracts/metatx/CNSRegistryForwarder__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/metatx/CNSRegistryForwarder__factory.js delete mode 100644 dist/types/factories/contracts/metatx/ERC2771Context__factory.d.ts delete mode 100644 dist/types/factories/contracts/metatx/ERC2771Context__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/metatx/ERC2771Context__factory.js delete mode 100644 dist/types/factories/contracts/metatx/ERC2771RegistryContext__factory.d.ts delete mode 100644 dist/types/factories/contracts/metatx/ERC2771RegistryContext__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/metatx/ERC2771RegistryContext__factory.js delete mode 100644 dist/types/factories/contracts/metatx/Forwarder__factory.d.ts delete mode 100644 dist/types/factories/contracts/metatx/Forwarder__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/metatx/Forwarder__factory.js delete mode 100644 dist/types/factories/contracts/metatx/IForwarder__factory.d.ts delete mode 100644 dist/types/factories/contracts/metatx/IForwarder__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/metatx/IForwarder__factory.js delete mode 100644 dist/types/factories/contracts/metatx/MintingManagerForwarder__factory.d.ts delete mode 100644 dist/types/factories/contracts/metatx/MintingManagerForwarder__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/metatx/MintingManagerForwarder__factory.js delete mode 100644 dist/types/factories/contracts/metatx/ResolverForwarder__factory.d.ts delete mode 100644 dist/types/factories/contracts/metatx/ResolverForwarder__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/metatx/ResolverForwarder__factory.js delete mode 100644 dist/types/factories/contracts/metatx/UNSRegistryForwarder__factory.d.ts delete mode 100644 dist/types/factories/contracts/metatx/UNSRegistryForwarder__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/metatx/UNSRegistryForwarder__factory.js delete mode 100644 dist/types/factories/contracts/metatx/index.d.ts delete mode 100644 dist/types/factories/contracts/metatx/index.d.ts.map delete mode 100644 dist/types/factories/contracts/metatx/index.js delete mode 100644 dist/types/factories/contracts/mocks/BaseForwarderMock__factory.d.ts delete mode 100644 dist/types/factories/contracts/mocks/BaseForwarderMock__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/mocks/BaseForwarderMock__factory.js delete mode 100644 dist/types/factories/contracts/mocks/BaseRoutingForwarderMock__factory.d.ts delete mode 100644 dist/types/factories/contracts/mocks/BaseRoutingForwarderMock__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/mocks/BaseRoutingForwarderMock__factory.js delete mode 100644 dist/types/factories/contracts/mocks/ERC1155Mock__factory.d.ts delete mode 100644 dist/types/factories/contracts/mocks/ERC1155Mock__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/mocks/ERC1155Mock__factory.js delete mode 100644 dist/types/factories/contracts/mocks/ERC20Mock__factory.d.ts delete mode 100644 dist/types/factories/contracts/mocks/ERC20Mock__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/mocks/ERC20Mock__factory.js delete mode 100644 dist/types/factories/contracts/mocks/ERC20UnsafeMock__factory.d.ts delete mode 100644 dist/types/factories/contracts/mocks/ERC20UnsafeMock__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/mocks/ERC20UnsafeMock__factory.js delete mode 100644 dist/types/factories/contracts/mocks/ERC2771ContextMock__factory.d.ts delete mode 100644 dist/types/factories/contracts/mocks/ERC2771ContextMock__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/mocks/ERC2771ContextMock__factory.js delete mode 100644 dist/types/factories/contracts/mocks/ERC2771RegistryContextMock__factory.d.ts delete mode 100644 dist/types/factories/contracts/mocks/ERC2771RegistryContextMock__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/mocks/ERC2771RegistryContextMock__factory.js delete mode 100644 dist/types/factories/contracts/mocks/ERC721Mock__factory.d.ts delete mode 100644 dist/types/factories/contracts/mocks/ERC721Mock__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/mocks/ERC721Mock__factory.js delete mode 100644 dist/types/factories/contracts/mocks/ERC721ReceiverMock__factory.d.ts delete mode 100644 dist/types/factories/contracts/mocks/ERC721ReceiverMock__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/mocks/ERC721ReceiverMock__factory.js delete mode 100644 dist/types/factories/contracts/mocks/MinterRoleMock__factory.d.ts delete mode 100644 dist/types/factories/contracts/mocks/MinterRoleMock__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/mocks/MinterRoleMock__factory.js delete mode 100644 dist/types/factories/contracts/mocks/MintingManagerMock__factory.d.ts delete mode 100644 dist/types/factories/contracts/mocks/MintingManagerMock__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/mocks/MintingManagerMock__factory.js delete mode 100644 dist/types/factories/contracts/mocks/UNSRegistryForwarderMock__factory.d.ts delete mode 100644 dist/types/factories/contracts/mocks/UNSRegistryForwarderMock__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/mocks/UNSRegistryForwarderMock__factory.js delete mode 100644 dist/types/factories/contracts/mocks/UNSRegistryMock__factory.d.ts delete mode 100644 dist/types/factories/contracts/mocks/UNSRegistryMock__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/mocks/UNSRegistryMock__factory.js delete mode 100644 dist/types/factories/contracts/mocks/index.d.ts delete mode 100644 dist/types/factories/contracts/mocks/index.d.ts.map delete mode 100644 dist/types/factories/contracts/mocks/index.js delete mode 100644 dist/types/factories/contracts/roles/MinterRole__factory.d.ts delete mode 100644 dist/types/factories/contracts/roles/MinterRole__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/roles/MinterRole__factory.js delete mode 100644 dist/types/factories/contracts/roles/index.d.ts delete mode 100644 dist/types/factories/contracts/roles/index.d.ts.map delete mode 100644 dist/types/factories/contracts/roles/index.js delete mode 100644 dist/types/factories/contracts/utils/Blocklist__factory.d.ts delete mode 100644 dist/types/factories/contracts/utils/Blocklist__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/utils/Blocklist__factory.js delete mode 100644 dist/types/factories/contracts/utils/ERC1271SimpleWallet__factory.d.ts delete mode 100644 dist/types/factories/contracts/utils/ERC1271SimpleWallet__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/utils/ERC1271SimpleWallet__factory.js delete mode 100644 dist/types/factories/contracts/utils/MultiSend__factory.d.ts delete mode 100644 dist/types/factories/contracts/utils/MultiSend__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/utils/MultiSend__factory.js delete mode 100644 dist/types/factories/contracts/utils/Ownable__factory.d.ts delete mode 100644 dist/types/factories/contracts/utils/Ownable__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/utils/Ownable__factory.js delete mode 100644 dist/types/factories/contracts/utils/Pausable__factory.d.ts delete mode 100644 dist/types/factories/contracts/utils/Pausable__factory.d.ts.map delete mode 100644 dist/types/factories/contracts/utils/Pausable__factory.js delete mode 100644 dist/types/factories/contracts/utils/index.d.ts delete mode 100644 dist/types/factories/contracts/utils/index.d.ts.map delete mode 100644 dist/types/factories/contracts/utils/index.js delete mode 100644 dist/types/factories/dot-crypto/contracts/CNSRegistry__factory.d.ts delete mode 100644 dist/types/factories/dot-crypto/contracts/CNSRegistry__factory.d.ts.map delete mode 100644 dist/types/factories/dot-crypto/contracts/CNSRegistry__factory.js delete mode 100644 dist/types/factories/dot-crypto/contracts/ICNSRegistry__factory.d.ts delete mode 100644 dist/types/factories/dot-crypto/contracts/ICNSRegistry__factory.d.ts.map delete mode 100644 dist/types/factories/dot-crypto/contracts/ICNSRegistry__factory.js delete mode 100644 dist/types/factories/dot-crypto/contracts/IRegistryReader__factory.d.ts delete mode 100644 dist/types/factories/dot-crypto/contracts/IRegistryReader__factory.d.ts.map delete mode 100644 dist/types/factories/dot-crypto/contracts/IRegistryReader__factory.js delete mode 100644 dist/types/factories/dot-crypto/contracts/IResolverReader__factory.d.ts delete mode 100644 dist/types/factories/dot-crypto/contracts/IResolverReader__factory.d.ts.map delete mode 100644 dist/types/factories/dot-crypto/contracts/IResolverReader__factory.js delete mode 100644 dist/types/factories/dot-crypto/contracts/IResolver__factory.d.ts delete mode 100644 dist/types/factories/dot-crypto/contracts/IResolver__factory.d.ts.map delete mode 100644 dist/types/factories/dot-crypto/contracts/IResolver__factory.js delete mode 100644 dist/types/factories/dot-crypto/contracts/Resolver__factory.d.ts delete mode 100644 dist/types/factories/dot-crypto/contracts/Resolver__factory.d.ts.map delete mode 100644 dist/types/factories/dot-crypto/contracts/Resolver__factory.js delete mode 100644 dist/types/factories/dot-crypto/contracts/controllers/DomainZoneController__factory.d.ts delete mode 100644 dist/types/factories/dot-crypto/contracts/controllers/DomainZoneController__factory.d.ts.map delete mode 100644 dist/types/factories/dot-crypto/contracts/controllers/DomainZoneController__factory.js delete mode 100644 dist/types/factories/dot-crypto/contracts/controllers/IMintingController__factory.d.ts delete mode 100644 dist/types/factories/dot-crypto/contracts/controllers/IMintingController__factory.d.ts.map delete mode 100644 dist/types/factories/dot-crypto/contracts/controllers/IMintingController__factory.js delete mode 100644 dist/types/factories/dot-crypto/contracts/controllers/ISignatureController__factory.d.ts delete mode 100644 dist/types/factories/dot-crypto/contracts/controllers/ISignatureController__factory.d.ts.map delete mode 100644 dist/types/factories/dot-crypto/contracts/controllers/ISignatureController__factory.js delete mode 100644 dist/types/factories/dot-crypto/contracts/controllers/IURIPrefixController__factory.d.ts delete mode 100644 dist/types/factories/dot-crypto/contracts/controllers/IURIPrefixController__factory.d.ts.map delete mode 100644 dist/types/factories/dot-crypto/contracts/controllers/IURIPrefixController__factory.js delete mode 100644 dist/types/factories/dot-crypto/contracts/controllers/MintingController__factory.d.ts delete mode 100644 dist/types/factories/dot-crypto/contracts/controllers/MintingController__factory.d.ts.map delete mode 100644 dist/types/factories/dot-crypto/contracts/controllers/MintingController__factory.js delete mode 100644 dist/types/factories/dot-crypto/contracts/controllers/SignatureController__factory.d.ts delete mode 100644 dist/types/factories/dot-crypto/contracts/controllers/SignatureController__factory.d.ts.map delete mode 100644 dist/types/factories/dot-crypto/contracts/controllers/SignatureController__factory.js delete mode 100644 dist/types/factories/dot-crypto/contracts/controllers/URIPrefixController__factory.d.ts delete mode 100644 dist/types/factories/dot-crypto/contracts/controllers/URIPrefixController__factory.d.ts.map delete mode 100644 dist/types/factories/dot-crypto/contracts/controllers/URIPrefixController__factory.js delete mode 100644 dist/types/factories/dot-crypto/contracts/controllers/index.d.ts delete mode 100644 dist/types/factories/dot-crypto/contracts/controllers/index.d.ts.map delete mode 100644 dist/types/factories/dot-crypto/contracts/controllers/index.js delete mode 100644 dist/types/factories/dot-crypto/contracts/index.d.ts delete mode 100644 dist/types/factories/dot-crypto/contracts/index.d.ts.map delete mode 100644 dist/types/factories/dot-crypto/contracts/index.js delete mode 100644 dist/types/factories/dot-crypto/contracts/util/BulkWhitelistedRole__factory.d.ts delete mode 100644 dist/types/factories/dot-crypto/contracts/util/BulkWhitelistedRole__factory.d.ts.map delete mode 100644 dist/types/factories/dot-crypto/contracts/util/BulkWhitelistedRole__factory.js delete mode 100644 dist/types/factories/dot-crypto/contracts/util/ControllerRole__factory.d.ts delete mode 100644 dist/types/factories/dot-crypto/contracts/util/ControllerRole__factory.d.ts.map delete mode 100644 dist/types/factories/dot-crypto/contracts/util/ControllerRole__factory.js delete mode 100644 dist/types/factories/dot-crypto/contracts/util/FreeMinter__factory.d.ts delete mode 100644 dist/types/factories/dot-crypto/contracts/util/FreeMinter__factory.d.ts.map delete mode 100644 dist/types/factories/dot-crypto/contracts/util/FreeMinter__factory.js delete mode 100644 dist/types/factories/dot-crypto/contracts/util/SignatureUtil__factory.d.ts delete mode 100644 dist/types/factories/dot-crypto/contracts/util/SignatureUtil__factory.d.ts.map delete mode 100644 dist/types/factories/dot-crypto/contracts/util/SignatureUtil__factory.js delete mode 100644 dist/types/factories/dot-crypto/contracts/util/index.d.ts delete mode 100644 dist/types/factories/dot-crypto/contracts/util/index.d.ts.map delete mode 100644 dist/types/factories/dot-crypto/contracts/util/index.js delete mode 100644 dist/types/factories/dot-crypto/index.d.ts delete mode 100644 dist/types/factories/dot-crypto/index.d.ts.map delete mode 100644 dist/types/factories/dot-crypto/index.js delete mode 100644 dist/types/factories/index.d.ts delete mode 100644 dist/types/factories/index.d.ts.map delete mode 100644 dist/types/factories/index.js delete mode 100644 dist/types/factories/seaport-types/index.d.ts delete mode 100644 dist/types/factories/seaport-types/index.d.ts.map delete mode 100644 dist/types/factories/seaport-types/index.js delete mode 100644 dist/types/factories/seaport-types/src/index.d.ts delete mode 100644 dist/types/factories/seaport-types/src/index.d.ts.map delete mode 100644 dist/types/factories/seaport-types/src/index.js delete mode 100644 dist/types/factories/seaport-types/src/interfaces/ConsiderationInterface__factory.d.ts delete mode 100644 dist/types/factories/seaport-types/src/interfaces/ConsiderationInterface__factory.d.ts.map delete mode 100644 dist/types/factories/seaport-types/src/interfaces/ConsiderationInterface__factory.js delete mode 100644 dist/types/factories/seaport-types/src/interfaces/index.d.ts delete mode 100644 dist/types/factories/seaport-types/src/interfaces/index.d.ts.map delete mode 100644 dist/types/factories/seaport-types/src/interfaces/index.js delete mode 100644 dist/types/index.d.ts delete mode 100644 dist/types/index.d.ts.map delete mode 100644 dist/types/index.js delete mode 100644 dist/types/seaport-types/index.d.ts delete mode 100644 dist/types/seaport-types/index.d.ts.map delete mode 100644 dist/types/seaport-types/index.js delete mode 100644 dist/types/seaport-types/src/index.d.ts delete mode 100644 dist/types/seaport-types/src/index.d.ts.map delete mode 100644 dist/types/seaport-types/src/index.js delete mode 100644 dist/types/seaport-types/src/interfaces/ConsiderationInterface.d.ts delete mode 100644 dist/types/seaport-types/src/interfaces/ConsiderationInterface.d.ts.map delete mode 100644 dist/types/seaport-types/src/interfaces/ConsiderationInterface.js delete mode 100644 dist/types/seaport-types/src/interfaces/index.d.ts delete mode 100644 dist/types/seaport-types/src/interfaces/index.d.ts.map delete mode 100644 dist/types/seaport-types/src/interfaces/index.js delete mode 100644 dist/uns-config.json diff --git a/.node-version b/.node-version deleted file mode 100644 index 8b0beab1..00000000 --- a/.node-version +++ /dev/null @@ -1 +0,0 @@ -20.11.0 diff --git a/artifacts/ENSCustody.json b/artifacts/ENSCustody.json index d397b256..4d295b2e 100644 --- a/artifacts/ENSCustody.json +++ b/artifacts/ENSCustody.json @@ -1001,8 +1001,8 @@ "type": "receive" } ], - "bytecode": "0x608060405234801562000010575f80fd5b506200001b62000021565b620000e0565b5f54610100900460ff16156200008d5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b5f5460ff9081161015620000de575f805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b6132cb80620000ee5f395ff3fe608060405260043610610215575f3560e01c80638da5cb5b1161011e578063acf1a841116100a8578063d547741f1161006d578063d547741f14610657578063f14fcbc814610676578063f23a6e6114610695578063f2fde38b146106b4578063ffa1ad74146106d3575f80fd5b8063acf1a841146105bb578063bc197c81146105da578063c0c53b8b146105f9578063cf01585314610618578063d539139314610637575f80fd5b8063a0e3aef1116100ee578063a0e3aef114610515578063a217fddf14610534578063a3f4df7e14610547578063a42474001461057d578063aa271e1a1461059c575f80fd5b80638da5cb5b146104a657806391d14854146104c3578063983b2d56146104e25780639865027514610501575f80fd5b80635fc1964f1161019f5780636ccbae5f1161016f5780636ccbae5f14610422578063715018a61461044157806371e2a6571461045557806381c81d351461047457806383e7f6ff14610487575f80fd5b80635fc1964f1461039a578063634486da146103b95780636352211e146103cc5780636a8be89e14610403575f80fd5b80632f2ff15d116101e55780632f2ff15d146102f45780633092afd51461031557806336568abe14610334578063423f6cef14610353578063572b6c0514610372575f80fd5b806301ffc9a714610220578063150b7a02146102545780631bf7e13e1461028c578063248a9ca3146102b8575f80fd5b3661021c57005b5f80fd5b34801561022b575f80fd5b5061023f61023a366004612514565b610703565b60405190151581526020015b60405180910390f35b34801561025f575f80fd5b5061027361026e36600461258c565b610748565b6040516001600160e01b0319909116815260200161024b565b348015610297575f80fd5b506102ab6102a63660046125f9565b610891565b60405161024b91906126b0565b3480156102c3575f80fd5b506102e66102d23660046126c2565b5f90815260fb602052604090206001015490565b60405190815260200161024b565b3480156102ff575f80fd5b5061031361030e3660046126d9565b61095a565b005b348015610320575f80fd5b5061031361032f366004612707565b610983565b34801561033f575f80fd5b5061031361034e3660046126d9565b610997565b34801561035e575f80fd5b5061031361036d366004612722565b610a2a565b34801561037d575f80fd5b5061023f61038c366004612707565b6001600160a01b0316301490565b3480156103a5575f80fd5b506103136103b4366004612790565b610b92565b6103136103c7366004612707565b610bcf565b3480156103d7575f80fd5b506103eb6103e63660046126c2565b610c8f565b6040516001600160a01b03909116815260200161024b565b34801561040e575f80fd5b5061031361041d366004612707565b610c99565b34801561042d575f80fd5b506102e661043c3660046126c2565b610ce2565b34801561044c575f80fd5b50610313610d27565b348015610460575f80fd5b5061031361046f366004612790565b610d3a565b610313610482366004612707565b610d77565b348015610492575f80fd5b506102e66104a1366004612830565b610df4565b3480156104b1575f80fd5b506097546001600160a01b03166103eb565b3480156104ce575f80fd5b5061023f6104dd3660046126d9565b610e93565b3480156104ed575f80fd5b506103136104fc366004612707565b610ebd565b34801561050c575f80fd5b50610313610ece565b348015610520575f80fd5b506102e661052f366004612949565b610ee7565b34801561053f575f80fd5b506102e65f81565b348015610552575f80fd5b506102ab6040518060400160405280600b81526020016a454e5320437573746f647960a81b81525081565b348015610588575f80fd5b5061023f6105973660046125f9565b610f8f565b3480156105a7575f80fd5b5061023f6105b6366004612707565b610fe0565b3480156105c6575f80fd5b506103136105d5366004612830565b610ff8565b3480156105e5575f80fd5b506102736105f4366004612a1a565b6111a8565b348015610604575f80fd5b50610313610613366004612ad0565b611253565b348015610623575f80fd5b50610313610632366004612b18565b6113f5565b348015610642575f80fd5b506102e65f8051602061327f83398151915281565b348015610662575f80fd5b506103136106713660046126d9565b611500565b348015610681575f80fd5b506103136106903660046126c2565b611524565b3480156106a0575f80fd5b506102736106af366004612bf1565b611591565b3480156106bf575f80fd5b506103136106ce366004612707565b61161f565b3480156106de575f80fd5b506102ab60405180604001604052806005815260200164302e312e3360d81b81525081565b5f6001600160e01b03198216630a85bd0160e11b148061073357506001600160e01b03198216630271189760e51b145b8061074257506107428261163a565b92915050565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004545f906001600160a01b03168061077e61166e565b6001600160a01b03160361086f575f808061079b86880188612c67565b9250925092506107aa8361167c565b6001600160a01b03841663b88d4fde305f8051602061329f833981519152546040516001600160a01b03909116908c906107ee90879030905f908b90602001612cc4565b6040516020818303038152906040526040518563ffffffff1660e01b815260040161081c9493929190612d03565b5f604051808303815f87803b158015610833575f80fd5b505af1158015610845573d5f803e3d5ffd5b5050505061085b610855826116ae565b84611731565b50630a85bd0160e11b935061088892505050565b6040516344e7d94960e01b815260040160405180910390fd5b95945050505050565b60605f5a90506108a2858585610f8f565b6108bf57604051638baa579f60e01b815260040160405180910390fd5b61094f6108cf6020870187612707565b306040880135846108e360608b018b612d35565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f920191909152506117bb92505050565b9150505b9392505050565b5f82815260fb602052604090206001015461097481611897565b61097e83836118a8565b505050565b61098b61192e565b610994816119a7565b50565b61099f61166e565b6001600160a01b0316816001600160a01b031614610a1c5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b610a2682826119be565b5050565b80610a3361166e565b6001600160a01b0316610a4582611a42565b6001600160a01b031614610a875780610a5c61166e565b604051637ea58b1160e01b815260048101929092526001600160a01b03166024820152604401610a13565b610a9082611b54565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb4660208201529081018390525f90610ae3906060015b6040516020818303038152906040528051906020012090565b80546001600160a01b0319166001600160a01b03929092169190911790555f5f8051602061329f83398151915254604051637921219560e11b81523060048201526001600160a01b038681166024830152604482018690526001606483015260a060848301525f60a48301529091169150819063f242432a9060c4015f604051808303815f87803b158015610b76575f80fd5b505af1158015610b88573d5f803e3d5ffd5b5050505050505050565b610b9a61192e565b5f5b8151811015610a2657610bc7828281518110610bba57610bba612d77565b60200260200101516119a7565b600101610b9c565b610bda6105b661166e565b610bf65760405162461bcd60e51b8152600401610a1390612d8b565b6001600160a01b038116610c4c5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a13565b610c5581611b6d565b610c5d610ece565b6040516001600160a01b038216903480156108fc02915f818181858888f19350505050158015610a26573d5f803e3d5ffd5b5f61074282611a42565b610ca161192e565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c500480546001600160a01b0319166001600160a01b0392909216919091179055565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f90610d2090606001610aca565b5492915050565b610d2f61192e565b610d385f611b84565b565b610d4261192e565b5f5b8151811015610a2657610d6f828281518110610d6257610d62612d77565b6020026020010151611b6d565b600101610d44565b610d826105b661166e565b610d9e5760405162461bcd60e51b8152600401610a1390612d8b565b6001600160a01b038116610c555760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a13565b5f8051602061325f833981519152546040516383e7f6ff60e01b81525f916001600160a01b031690829082906383e7f6ff90610e3890899089908990600401612de8565b6040805180830381865afa158015610e52573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e769190612e0b565b60208101518151919250610e8991612e6b565b9695505050505050565b5f91825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610ec561192e565b61099481611b6d565b610d385f8051602061327f83398151915261034e61166e565b5f8051602061325f833981519152545f906001600160a01b0316806365a69dcf8d85610f135730610f15565b8d5b8d8d8d8d8d8d8d6040518a63ffffffff1660e01b8152600401610f4099989796959493929190612f0f565b602060405180830381865afa158015610f5b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f7f9190612f7e565b9c9b505050505050505050505050565b5f610fd8610f9c85612f95565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250611bd592505050565b949350505050565b5f6107425f8051602061327f83398151915283610e93565b6110036105b661166e565b61101f5760405162461bcd60e51b8152600401610a1390612d8b565b6002603354036110715760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a13565b60026033555f8051602061325f833981519152546040516383e7f6ff60e01b81526001600160a01b03909116905f9082906383e7f6ff906110ba90889088908890600401612de8565b6040805180830381865afa1580156110d4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110f89190612e0b565b6020810151815191925061110b91612e6b565b47101561112b5760405163050205f960e01b815260040160405180910390fd5b816001600160a01b031663acf1a8418260200151835f015161114d9190612e6b565b8787876040518563ffffffff1660e01b815260040161116e93929190612de8565b5f604051808303818588803b158015611185575f80fd5b505af1158015611197573d5f803e3d5ffd5b505060016033555050505050505050565b5f5f8051602061329f833981519152546001600160a01b03166111c961166e565b6001600160a01b0316146111f0576040516344e7d94960e01b815260040160405180910390fd5b5f6111fd83850185612707565b90506112088161167c565b5f5b8781101561123c5761123489898381811061122757611227612d77565b9050602002013583611731565b60010161120a565b5063bc197c8160e01b9a9950505050505050505050565b5f54610100900460ff161580801561127157505f54600160ff909116105b8061128a5750303b15801561128a57505f5460ff166001145b6112ed5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610a13565b5f805460ff19166001179055801561130e575f805461ff0019166101001790555b5f8051602061325f83398151915280546001600160a01b038087166001600160a01b0319928316179092555f8051602061329f83398151915280548684169083161790557ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c500480549285169290911691909117905561138a611d10565b611392611d3d565b61139a611d3d565b6113a2611d63565b6113aa611d99565b80156113ef575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6114006105b661166e565b61141c5760405162461bcd60e51b8152600401610a1390612d8b565b60026033540361146e5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a13565b60026033819055505f6114b58c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152506116ae92505050565b90506114c081611b54565b6114de8c8c846114d057306114d2565b8c5b8c8c8c8c8c8c8c611dd0565b816114ed576114ed818b611731565b5050600160335550505050505050505050565b5f82815260fb602052604090206001015461151a81611897565b61097e83836119be565b5f5f8051602061325f83398151915254604051631e29f97960e31b8152600481018490526001600160a01b039091169150819063f14fcbc8906024015f604051808303815f87803b158015611577575f80fd5b505af1158015611589573d5f803e3d5ffd5b505050505050565b5f5f8051602061329f833981519152546001600160a01b03166115b261166e565b6001600160a01b0316146115d9576040516344e7d94960e01b815260040160405180910390fd5b6001600160a01b0386161561160c575f6115f583850185612707565b90506116008161167c565b61160a8682611731565b505b5063f23a6e6160e01b9695505050505050565b61162761192e565b61163081611f12565b6109945f82611f88565b5f6001600160e01b03198216637965db0b60e01b148061074257506301ffc9a760e01b6001600160e01b0319831614610742565b5f611677611f92565b905090565b6001600160a01b0381166109945760405163b20f76e360e01b81526001600160a01b0382166004820152602401610a13565b5f7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae5f1b826040516020016116e3919061302f565b60405160208183030381529060405280519060200120604051602001611713929190918252602082015260400190565b60408051601f19818403018152919052805160209091012092915050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052819061176f90606001610aca565b80546001600160a01b0319166001600160a01b039283161790556040519082169083907f45aa97e368889fb3527c1db60c59c2ae91e82f21778613449e46d4208c1c4b12905f90a35050565b60606117c685611faf565b5f80876001600160a01b0316866117df8b8a8989612014565b6040516117ec919061302f565b5f604051808303815f8787f1925050503d805f8114611826576040519150601f19603f3d011682016040523d82523d5f602084013e61182b565b606091505b50909250905061183c603f8761304a565b5a1161184a5761184a613069565b61188a82826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c4544000000000000815250612044565b9998505050505050505050565b610994816118a361166e565b61207d565b6118b28282610e93565b610a26575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191660011790556118ea61166e565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b61193661166e565b6001600160a01b03166119516097546001600160a01b031690565b6001600160a01b031614610d385760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a13565b6109945f8051602061327f83398151915282611500565b6119c88282610e93565b15610a26575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191690556119fe61166e565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb4660208201529081018290525f90611a8090606001610aca565b546001600160a01b0316905080611aad5760405163124bad6360e31b815260048101839052602401610a13565b305f8051602061329f833981519152546040516331a9108f60e11b8152600481018590526001600160a01b0390911690636352211e90602401602060405180830381865afa158015611b01573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611b25919061307d565b6001600160a01b031614611b4f576040516303b673fd60e21b815260048101839052602401610a13565b919050565b303303611b6457610994816120e1565b61099481611faf565b6109945f8051602061327f83398151915282611f88565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015611c19573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611c3d9190612f7e565b90505f611cea866060015180519060200120868860200151604051602001611c8a9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b9050818660200151148015610e8957508551610e89906001600160a01b0316828661210b565b5f54610100900460ff16611d365760405162461bcd60e51b8152600401610a1390613098565b6001603355565b5f54610100900460ff16610d385760405162461bcd60e51b8152600401610a1390613098565b5f54610100900460ff16611d895760405162461bcd60e51b8152600401610a1390613098565b610d38611d9461166e565b611b84565b5f54610100900460ff16611dbf5760405162461bcd60e51b8152600401610a1390613098565b610d385f611dcb61166e565b611f88565b5f8051602061325f833981519152546040516383e7f6ff60e01b81526001600160a01b03909116905f9082906383e7f6ff90611e14908f908f908e90600401612de8565b6040805180830381865afa158015611e2e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611e529190612e0b565b60208101518151919250611e6591612e6b565b471015611e855760405163050205f960e01b815260040160405180910390fd5b816001600160a01b03166374694a2b8260200151835f0151611ea79190612e6b565b8e8e8e8e8e8e8e8e8e8e6040518c63ffffffff1660e01b8152600401611ed69a999897969594939291906130e3565b5f604051808303818588803b158015611eed575f80fd5b505af1158015611eff573d5f803e3d5ffd5b5050505050505050505050505050505050565b611f1a61192e565b6001600160a01b038116611f7f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610a13565b61099481611b84565b610a2682826118a8565b5f303303611fa7575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f906060016040516020818303038152906040528051906020012090506120038190565b5461200f906001612e6b565b905550565b606082858560405160200161202b93929190613154565b6040516020818303038152906040529050949350505050565b60608315612053575081610953565b8251156120635782518084602001fd5b8160405162461bcd60e51b8152600401610a1391906126b0565b6120878282610e93565b610a265761209f816001600160a01b03166014612246565b6120aa836020612246565b6040516020016120bb929190613192565b60408051601f198184030181529082905262461bcd60e51b8252610a13916004016126b0565b6120e96123db565b811461099457604051635637b6af60e11b815260048101829052602401610a13565b5f805f61211885856123ed565b90925090505f81600481111561213057612130613206565b14801561214e5750856001600160a01b0316826001600160a01b0316145b1561215e57600192505050610953565b5f80876001600160a01b0316631626ba7e60e01b888860405160240161218592919061321a565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516121c3919061302f565b5f60405180830381855afa9150503d805f81146121fb576040519150601f19603f3d011682016040523d82523d5f602084013e612200565b606091505b5091509150818015612213575080516020145b801561223a57508051630b135d3f60e11b906122389083016020908101908401612f7e565b145b98975050505050505050565b60605f612254836002613232565b61225f906002612e6b565b6001600160401b038111156122765761227661274c565b6040519080825280601f01601f1916602001820160405280156122a0576020820181803683370190505b509050600360fc1b815f815181106122ba576122ba612d77565b60200101906001600160f81b03191690815f1a905350600f60fb1b816001815181106122e8576122e8612d77565b60200101906001600160f81b03191690815f1a9053505f61230a846002613232565b612315906001612e6b565b90505b600181111561238c576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061234957612349612d77565b1a60f81b82828151811061235f5761235f612d77565b60200101906001600160f81b03191690815f1a90535060049490941c9361238581613249565b9050612318565b5083156109535760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610a13565b5f303303611fac5750601f1936013590565b5f808251604103612421576020830151604084015160608501515f1a6124158782858561242f565b94509450505050612428565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561246457505f9050600361250b565b8460ff16601b1415801561247c57508460ff16601c14155b1561248c57505f9050600461250b565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156124dd573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b038116612505575f6001925092505061250b565b91505f90505b94509492505050565b5f60208284031215612524575f80fd5b81356001600160e01b031981168114610953575f80fd5b6001600160a01b0381168114610994575f80fd5b5f8083601f84011261255f575f80fd5b5081356001600160401b03811115612575575f80fd5b602083019150836020828501011115612428575f80fd5b5f805f805f608086880312156125a0575f80fd5b85356125ab8161253b565b945060208601356125bb8161253b565b93506040860135925060608601356001600160401b038111156125dc575f80fd5b6125e88882890161254f565b969995985093965092949392505050565b5f805f6040848603121561260b575f80fd5b83356001600160401b0380821115612621575f80fd5b9085019060808288031215612634575f80fd5b90935060208501359080821115612649575f80fd5b506126568682870161254f565b9497909650939450505050565b5f5b8381101561267d578181015183820152602001612665565b50505f910152565b5f815180845261269c816020860160208601612663565b601f01601f19169290920160200192915050565b602081525f6109536020830184612685565b5f602082840312156126d2575f80fd5b5035919050565b5f80604083850312156126ea575f80fd5b8235915060208301356126fc8161253b565b809150509250929050565b5f60208284031215612717575f80fd5b81356109538161253b565b5f8060408385031215612733575f80fd5b823561273e8161253b565b946020939093013593505050565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f191681016001600160401b03811182821017156127885761278861274c565b604052919050565b5f60208083850312156127a1575f80fd5b82356001600160401b03808211156127b7575f80fd5b818501915085601f8301126127ca575f80fd5b8135818111156127dc576127dc61274c565b8060051b91506127ed848301612760565b8181529183018401918481019088841115612806575f80fd5b938501935b8385101561223a57843592506128208361253b565b828252938501939085019061280b565b5f805f60408486031215612842575f80fd5b83356001600160401b03811115612857575f80fd5b6128638682870161254f565b909790965060209590950135949350505050565b5f6001600160401b0383111561288f5761288f61274c565b6128a2601f8401601f1916602001612760565b90508281528383830111156128b5575f80fd5b828260208301375f602084830101529392505050565b5f82601f8301126128da575f80fd5b61095383833560208501612877565b5f8083601f8401126128f9575f80fd5b5081356001600160401b0381111561290f575f80fd5b6020830191508360208260051b8501011115612428575f80fd5b80358015158114611b4f575f80fd5b803561ffff81168114611b4f575f80fd5b5f805f805f805f805f806101208b8d031215612963575f80fd5b8a356001600160401b0380821115612979575f80fd5b6129858e838f016128cb565b9b5060208d013591506129978261253b565b90995060408c0135985060608c0135975060808c0135906129b78261253b565b90965060a08c013590808211156129cc575f80fd5b506129d98d828e016128e9565b90965094506129ec905060c08c01612929565b92506129fa60e08c01612938565b9150612a096101008c01612929565b90509295989b9194979a5092959850565b5f805f805f805f8060a0898b031215612a31575f80fd5b8835612a3c8161253b565b97506020890135612a4c8161253b565b965060408901356001600160401b0380821115612a67575f80fd5b612a738c838d016128e9565b909850965060608b0135915080821115612a8b575f80fd5b612a978c838d016128e9565b909650945060808b0135915080821115612aaf575f80fd5b50612abc8b828c0161254f565b999c989b5096995094979396929594505050565b5f805f60608486031215612ae2575f80fd5b8335612aed8161253b565b92506020840135612afd8161253b565b91506040840135612b0d8161253b565b809150509250925092565b5f805f805f805f805f805f6101208c8e031215612b33575f80fd5b6001600160401b03808d351115612b48575f80fd5b612b558e8e358f0161254f565b909c509a50612b6760208e013561253b565b60208d0135995060408d0135985060608d01359750612b8960808e013561253b565b60808d013596508060a08e01351115612ba0575f80fd5b50612bb18d60a08e01358e016128e9565b9095509350612bc260c08d01612929565b9250612bd060e08d01612938565b9150612bdf6101008d01612929565b90509295989b509295989b9093969950565b5f805f805f8060a08789031215612c06575f80fd5b8635612c118161253b565b95506020870135612c218161253b565b9450604087013593506060870135925060808701356001600160401b03811115612c49575f80fd5b612c5589828a0161254f565b979a9699509497509295939492505050565b5f805f60608486031215612c79575f80fd5b8335612c848161253b565b92506020840135612c948161253b565b915060408401356001600160401b03811115612cae575f80fd5b612cba868287016128cb565b9150509250925092565b608081525f612cd66080830187612685565b6001600160a01b03958616602084015261ffff949094166040830152509216606090920191909152919050565b6001600160a01b03858116825284166020820152604081018390526080606082018190525f90610e8990830184612685565b5f808335601e19843603018112612d4a575f80fd5b8301803591506001600160401b03821115612d63575f80fd5b602001915036819003821315612428575f80fd5b634e487b7160e01b5f52603260045260245ffd5b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b604081525f612dfb604083018587612dc0565b9050826020830152949350505050565b5f60408284031215612e1b575f80fd5b604051604081018181106001600160401b0382111715612e3d57612e3d61274c565b604052825181526020928301519281019290925250919050565b634e487b7160e01b5f52601160045260245ffd5b8082018082111561074257610742612e57565b5f838385526020808601955060208560051b830101845f5b87811015612f0257848303601f19018952813536889003601e19018112612ebb575f80fd5b870184810190356001600160401b03811115612ed5575f80fd5b803603821315612ee3575f80fd5b612eee858284612dc0565b9a86019a9450505090830190600101612e96565b5090979650505050505050565b5f610100808352612f228184018d612685565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a08501529050612f5c818789612e7e565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b5f60208284031215612f8e575f80fd5b5051919050565b5f60808236031215612fa5575f80fd5b604051608081016001600160401b038282108183111715612fc857612fc861274c565b8160405284359150612fd98261253b565b81835260208501356020840152604085013560408401526060850135915080821115613003575f80fd5b50830136601f820112613014575f80fd5b61302336823560208401612877565b60608301525092915050565b5f8251613040818460208701612663565b9190910192915050565b5f8261306457634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b5f6020828403121561308d575f80fd5b81516109538161253b565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b5f6101008083526130f78184018d8f612dc0565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a08501529050613131818789612e7e565b94151560c0840152505061ffff9190911660e09091015298975050505050505050565b5f8451613165818460208901612663565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081525f83516131c9816017850160208801612663565b7001034b99036b4b9b9b4b733903937b6329607d1b60179184019182015283516131fa816028840160208801612663565b01602801949350505050565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f610fd86040830184612685565b808202811582820484141761074257610742612e57565b5f8161325757613257612e57565b505f19019056fe412386de53449251cbf7ce1f4c6a038bf9c0746e62d331b08ef0c3fa7d0ab6729f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a660793a5062d506d35cc8f1beda67ee5028c16bfcd9c923d5bfc439c04bd929b1a164736f6c6343000818000a", - "deployedBytecode": "0x608060405260043610610215575f3560e01c80638da5cb5b1161011e578063acf1a841116100a8578063d547741f1161006d578063d547741f14610657578063f14fcbc814610676578063f23a6e6114610695578063f2fde38b146106b4578063ffa1ad74146106d3575f80fd5b8063acf1a841146105bb578063bc197c81146105da578063c0c53b8b146105f9578063cf01585314610618578063d539139314610637575f80fd5b8063a0e3aef1116100ee578063a0e3aef114610515578063a217fddf14610534578063a3f4df7e14610547578063a42474001461057d578063aa271e1a1461059c575f80fd5b80638da5cb5b146104a657806391d14854146104c3578063983b2d56146104e25780639865027514610501575f80fd5b80635fc1964f1161019f5780636ccbae5f1161016f5780636ccbae5f14610422578063715018a61461044157806371e2a6571461045557806381c81d351461047457806383e7f6ff14610487575f80fd5b80635fc1964f1461039a578063634486da146103b95780636352211e146103cc5780636a8be89e14610403575f80fd5b80632f2ff15d116101e55780632f2ff15d146102f45780633092afd51461031557806336568abe14610334578063423f6cef14610353578063572b6c0514610372575f80fd5b806301ffc9a714610220578063150b7a02146102545780631bf7e13e1461028c578063248a9ca3146102b8575f80fd5b3661021c57005b5f80fd5b34801561022b575f80fd5b5061023f61023a366004612514565b610703565b60405190151581526020015b60405180910390f35b34801561025f575f80fd5b5061027361026e36600461258c565b610748565b6040516001600160e01b0319909116815260200161024b565b348015610297575f80fd5b506102ab6102a63660046125f9565b610891565b60405161024b91906126b0565b3480156102c3575f80fd5b506102e66102d23660046126c2565b5f90815260fb602052604090206001015490565b60405190815260200161024b565b3480156102ff575f80fd5b5061031361030e3660046126d9565b61095a565b005b348015610320575f80fd5b5061031361032f366004612707565b610983565b34801561033f575f80fd5b5061031361034e3660046126d9565b610997565b34801561035e575f80fd5b5061031361036d366004612722565b610a2a565b34801561037d575f80fd5b5061023f61038c366004612707565b6001600160a01b0316301490565b3480156103a5575f80fd5b506103136103b4366004612790565b610b92565b6103136103c7366004612707565b610bcf565b3480156103d7575f80fd5b506103eb6103e63660046126c2565b610c8f565b6040516001600160a01b03909116815260200161024b565b34801561040e575f80fd5b5061031361041d366004612707565b610c99565b34801561042d575f80fd5b506102e661043c3660046126c2565b610ce2565b34801561044c575f80fd5b50610313610d27565b348015610460575f80fd5b5061031361046f366004612790565b610d3a565b610313610482366004612707565b610d77565b348015610492575f80fd5b506102e66104a1366004612830565b610df4565b3480156104b1575f80fd5b506097546001600160a01b03166103eb565b3480156104ce575f80fd5b5061023f6104dd3660046126d9565b610e93565b3480156104ed575f80fd5b506103136104fc366004612707565b610ebd565b34801561050c575f80fd5b50610313610ece565b348015610520575f80fd5b506102e661052f366004612949565b610ee7565b34801561053f575f80fd5b506102e65f81565b348015610552575f80fd5b506102ab6040518060400160405280600b81526020016a454e5320437573746f647960a81b81525081565b348015610588575f80fd5b5061023f6105973660046125f9565b610f8f565b3480156105a7575f80fd5b5061023f6105b6366004612707565b610fe0565b3480156105c6575f80fd5b506103136105d5366004612830565b610ff8565b3480156105e5575f80fd5b506102736105f4366004612a1a565b6111a8565b348015610604575f80fd5b50610313610613366004612ad0565b611253565b348015610623575f80fd5b50610313610632366004612b18565b6113f5565b348015610642575f80fd5b506102e65f8051602061327f83398151915281565b348015610662575f80fd5b506103136106713660046126d9565b611500565b348015610681575f80fd5b506103136106903660046126c2565b611524565b3480156106a0575f80fd5b506102736106af366004612bf1565b611591565b3480156106bf575f80fd5b506103136106ce366004612707565b61161f565b3480156106de575f80fd5b506102ab60405180604001604052806005815260200164302e312e3360d81b81525081565b5f6001600160e01b03198216630a85bd0160e11b148061073357506001600160e01b03198216630271189760e51b145b8061074257506107428261163a565b92915050565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004545f906001600160a01b03168061077e61166e565b6001600160a01b03160361086f575f808061079b86880188612c67565b9250925092506107aa8361167c565b6001600160a01b03841663b88d4fde305f8051602061329f833981519152546040516001600160a01b03909116908c906107ee90879030905f908b90602001612cc4565b6040516020818303038152906040526040518563ffffffff1660e01b815260040161081c9493929190612d03565b5f604051808303815f87803b158015610833575f80fd5b505af1158015610845573d5f803e3d5ffd5b5050505061085b610855826116ae565b84611731565b50630a85bd0160e11b935061088892505050565b6040516344e7d94960e01b815260040160405180910390fd5b95945050505050565b60605f5a90506108a2858585610f8f565b6108bf57604051638baa579f60e01b815260040160405180910390fd5b61094f6108cf6020870187612707565b306040880135846108e360608b018b612d35565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f920191909152506117bb92505050565b9150505b9392505050565b5f82815260fb602052604090206001015461097481611897565b61097e83836118a8565b505050565b61098b61192e565b610994816119a7565b50565b61099f61166e565b6001600160a01b0316816001600160a01b031614610a1c5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b610a2682826119be565b5050565b80610a3361166e565b6001600160a01b0316610a4582611a42565b6001600160a01b031614610a875780610a5c61166e565b604051637ea58b1160e01b815260048101929092526001600160a01b03166024820152604401610a13565b610a9082611b54565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb4660208201529081018390525f90610ae3906060015b6040516020818303038152906040528051906020012090565b80546001600160a01b0319166001600160a01b03929092169190911790555f5f8051602061329f83398151915254604051637921219560e11b81523060048201526001600160a01b038681166024830152604482018690526001606483015260a060848301525f60a48301529091169150819063f242432a9060c4015f604051808303815f87803b158015610b76575f80fd5b505af1158015610b88573d5f803e3d5ffd5b5050505050505050565b610b9a61192e565b5f5b8151811015610a2657610bc7828281518110610bba57610bba612d77565b60200260200101516119a7565b600101610b9c565b610bda6105b661166e565b610bf65760405162461bcd60e51b8152600401610a1390612d8b565b6001600160a01b038116610c4c5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a13565b610c5581611b6d565b610c5d610ece565b6040516001600160a01b038216903480156108fc02915f818181858888f19350505050158015610a26573d5f803e3d5ffd5b5f61074282611a42565b610ca161192e565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c500480546001600160a01b0319166001600160a01b0392909216919091179055565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f90610d2090606001610aca565b5492915050565b610d2f61192e565b610d385f611b84565b565b610d4261192e565b5f5b8151811015610a2657610d6f828281518110610d6257610d62612d77565b6020026020010151611b6d565b600101610d44565b610d826105b661166e565b610d9e5760405162461bcd60e51b8152600401610a1390612d8b565b6001600160a01b038116610c555760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a13565b5f8051602061325f833981519152546040516383e7f6ff60e01b81525f916001600160a01b031690829082906383e7f6ff90610e3890899089908990600401612de8565b6040805180830381865afa158015610e52573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e769190612e0b565b60208101518151919250610e8991612e6b565b9695505050505050565b5f91825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610ec561192e565b61099481611b6d565b610d385f8051602061327f83398151915261034e61166e565b5f8051602061325f833981519152545f906001600160a01b0316806365a69dcf8d85610f135730610f15565b8d5b8d8d8d8d8d8d8d6040518a63ffffffff1660e01b8152600401610f4099989796959493929190612f0f565b602060405180830381865afa158015610f5b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f7f9190612f7e565b9c9b505050505050505050505050565b5f610fd8610f9c85612f95565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250611bd592505050565b949350505050565b5f6107425f8051602061327f83398151915283610e93565b6110036105b661166e565b61101f5760405162461bcd60e51b8152600401610a1390612d8b565b6002603354036110715760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a13565b60026033555f8051602061325f833981519152546040516383e7f6ff60e01b81526001600160a01b03909116905f9082906383e7f6ff906110ba90889088908890600401612de8565b6040805180830381865afa1580156110d4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110f89190612e0b565b6020810151815191925061110b91612e6b565b47101561112b5760405163050205f960e01b815260040160405180910390fd5b816001600160a01b031663acf1a8418260200151835f015161114d9190612e6b565b8787876040518563ffffffff1660e01b815260040161116e93929190612de8565b5f604051808303818588803b158015611185575f80fd5b505af1158015611197573d5f803e3d5ffd5b505060016033555050505050505050565b5f5f8051602061329f833981519152546001600160a01b03166111c961166e565b6001600160a01b0316146111f0576040516344e7d94960e01b815260040160405180910390fd5b5f6111fd83850185612707565b90506112088161167c565b5f5b8781101561123c5761123489898381811061122757611227612d77565b9050602002013583611731565b60010161120a565b5063bc197c8160e01b9a9950505050505050505050565b5f54610100900460ff161580801561127157505f54600160ff909116105b8061128a5750303b15801561128a57505f5460ff166001145b6112ed5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610a13565b5f805460ff19166001179055801561130e575f805461ff0019166101001790555b5f8051602061325f83398151915280546001600160a01b038087166001600160a01b0319928316179092555f8051602061329f83398151915280548684169083161790557ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c500480549285169290911691909117905561138a611d10565b611392611d3d565b61139a611d3d565b6113a2611d63565b6113aa611d99565b80156113ef575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6114006105b661166e565b61141c5760405162461bcd60e51b8152600401610a1390612d8b565b60026033540361146e5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a13565b60026033819055505f6114b58c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152506116ae92505050565b90506114c081611b54565b6114de8c8c846114d057306114d2565b8c5b8c8c8c8c8c8c8c611dd0565b816114ed576114ed818b611731565b5050600160335550505050505050505050565b5f82815260fb602052604090206001015461151a81611897565b61097e83836119be565b5f5f8051602061325f83398151915254604051631e29f97960e31b8152600481018490526001600160a01b039091169150819063f14fcbc8906024015f604051808303815f87803b158015611577575f80fd5b505af1158015611589573d5f803e3d5ffd5b505050505050565b5f5f8051602061329f833981519152546001600160a01b03166115b261166e565b6001600160a01b0316146115d9576040516344e7d94960e01b815260040160405180910390fd5b6001600160a01b0386161561160c575f6115f583850185612707565b90506116008161167c565b61160a8682611731565b505b5063f23a6e6160e01b9695505050505050565b61162761192e565b61163081611f12565b6109945f82611f88565b5f6001600160e01b03198216637965db0b60e01b148061074257506301ffc9a760e01b6001600160e01b0319831614610742565b5f611677611f92565b905090565b6001600160a01b0381166109945760405163b20f76e360e01b81526001600160a01b0382166004820152602401610a13565b5f7f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae5f1b826040516020016116e3919061302f565b60405160208183030381529060405280519060200120604051602001611713929190918252602082015260400190565b60408051601f19818403018152919052805160209091012092915050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052819061176f90606001610aca565b80546001600160a01b0319166001600160a01b039283161790556040519082169083907f45aa97e368889fb3527c1db60c59c2ae91e82f21778613449e46d4208c1c4b12905f90a35050565b60606117c685611faf565b5f80876001600160a01b0316866117df8b8a8989612014565b6040516117ec919061302f565b5f604051808303815f8787f1925050503d805f8114611826576040519150601f19603f3d011682016040523d82523d5f602084013e61182b565b606091505b50909250905061183c603f8761304a565b5a1161184a5761184a613069565b61188a82826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c4544000000000000815250612044565b9998505050505050505050565b610994816118a361166e565b61207d565b6118b28282610e93565b610a26575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191660011790556118ea61166e565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b61193661166e565b6001600160a01b03166119516097546001600160a01b031690565b6001600160a01b031614610d385760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a13565b6109945f8051602061327f83398151915282611500565b6119c88282610e93565b15610a26575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191690556119fe61166e565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb4660208201529081018290525f90611a8090606001610aca565b546001600160a01b0316905080611aad5760405163124bad6360e31b815260048101839052602401610a13565b305f8051602061329f833981519152546040516331a9108f60e11b8152600481018590526001600160a01b0390911690636352211e90602401602060405180830381865afa158015611b01573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611b25919061307d565b6001600160a01b031614611b4f576040516303b673fd60e21b815260048101839052602401610a13565b919050565b303303611b6457610994816120e1565b61099481611faf565b6109945f8051602061327f83398151915282611f88565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015611c19573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611c3d9190612f7e565b90505f611cea866060015180519060200120868860200151604051602001611c8a9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b9050818660200151148015610e8957508551610e89906001600160a01b0316828661210b565b5f54610100900460ff16611d365760405162461bcd60e51b8152600401610a1390613098565b6001603355565b5f54610100900460ff16610d385760405162461bcd60e51b8152600401610a1390613098565b5f54610100900460ff16611d895760405162461bcd60e51b8152600401610a1390613098565b610d38611d9461166e565b611b84565b5f54610100900460ff16611dbf5760405162461bcd60e51b8152600401610a1390613098565b610d385f611dcb61166e565b611f88565b5f8051602061325f833981519152546040516383e7f6ff60e01b81526001600160a01b03909116905f9082906383e7f6ff90611e14908f908f908e90600401612de8565b6040805180830381865afa158015611e2e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611e529190612e0b565b60208101518151919250611e6591612e6b565b471015611e855760405163050205f960e01b815260040160405180910390fd5b816001600160a01b03166374694a2b8260200151835f0151611ea79190612e6b565b8e8e8e8e8e8e8e8e8e8e6040518c63ffffffff1660e01b8152600401611ed69a999897969594939291906130e3565b5f604051808303818588803b158015611eed575f80fd5b505af1158015611eff573d5f803e3d5ffd5b5050505050505050505050505050505050565b611f1a61192e565b6001600160a01b038116611f7f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610a13565b61099481611b84565b610a2682826118a8565b5f303303611fa7575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f906060016040516020818303038152906040528051906020012090506120038190565b5461200f906001612e6b565b905550565b606082858560405160200161202b93929190613154565b6040516020818303038152906040529050949350505050565b60608315612053575081610953565b8251156120635782518084602001fd5b8160405162461bcd60e51b8152600401610a1391906126b0565b6120878282610e93565b610a265761209f816001600160a01b03166014612246565b6120aa836020612246565b6040516020016120bb929190613192565b60408051601f198184030181529082905262461bcd60e51b8252610a13916004016126b0565b6120e96123db565b811461099457604051635637b6af60e11b815260048101829052602401610a13565b5f805f61211885856123ed565b90925090505f81600481111561213057612130613206565b14801561214e5750856001600160a01b0316826001600160a01b0316145b1561215e57600192505050610953565b5f80876001600160a01b0316631626ba7e60e01b888860405160240161218592919061321a565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516121c3919061302f565b5f60405180830381855afa9150503d805f81146121fb576040519150601f19603f3d011682016040523d82523d5f602084013e612200565b606091505b5091509150818015612213575080516020145b801561223a57508051630b135d3f60e11b906122389083016020908101908401612f7e565b145b98975050505050505050565b60605f612254836002613232565b61225f906002612e6b565b6001600160401b038111156122765761227661274c565b6040519080825280601f01601f1916602001820160405280156122a0576020820181803683370190505b509050600360fc1b815f815181106122ba576122ba612d77565b60200101906001600160f81b03191690815f1a905350600f60fb1b816001815181106122e8576122e8612d77565b60200101906001600160f81b03191690815f1a9053505f61230a846002613232565b612315906001612e6b565b90505b600181111561238c576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061234957612349612d77565b1a60f81b82828151811061235f5761235f612d77565b60200101906001600160f81b03191690815f1a90535060049490941c9361238581613249565b9050612318565b5083156109535760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610a13565b5f303303611fac5750601f1936013590565b5f808251604103612421576020830151604084015160608501515f1a6124158782858561242f565b94509450505050612428565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561246457505f9050600361250b565b8460ff16601b1415801561247c57508460ff16601c14155b1561248c57505f9050600461250b565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156124dd573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b038116612505575f6001925092505061250b565b91505f90505b94509492505050565b5f60208284031215612524575f80fd5b81356001600160e01b031981168114610953575f80fd5b6001600160a01b0381168114610994575f80fd5b5f8083601f84011261255f575f80fd5b5081356001600160401b03811115612575575f80fd5b602083019150836020828501011115612428575f80fd5b5f805f805f608086880312156125a0575f80fd5b85356125ab8161253b565b945060208601356125bb8161253b565b93506040860135925060608601356001600160401b038111156125dc575f80fd5b6125e88882890161254f565b969995985093965092949392505050565b5f805f6040848603121561260b575f80fd5b83356001600160401b0380821115612621575f80fd5b9085019060808288031215612634575f80fd5b90935060208501359080821115612649575f80fd5b506126568682870161254f565b9497909650939450505050565b5f5b8381101561267d578181015183820152602001612665565b50505f910152565b5f815180845261269c816020860160208601612663565b601f01601f19169290920160200192915050565b602081525f6109536020830184612685565b5f602082840312156126d2575f80fd5b5035919050565b5f80604083850312156126ea575f80fd5b8235915060208301356126fc8161253b565b809150509250929050565b5f60208284031215612717575f80fd5b81356109538161253b565b5f8060408385031215612733575f80fd5b823561273e8161253b565b946020939093013593505050565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f191681016001600160401b03811182821017156127885761278861274c565b604052919050565b5f60208083850312156127a1575f80fd5b82356001600160401b03808211156127b7575f80fd5b818501915085601f8301126127ca575f80fd5b8135818111156127dc576127dc61274c565b8060051b91506127ed848301612760565b8181529183018401918481019088841115612806575f80fd5b938501935b8385101561223a57843592506128208361253b565b828252938501939085019061280b565b5f805f60408486031215612842575f80fd5b83356001600160401b03811115612857575f80fd5b6128638682870161254f565b909790965060209590950135949350505050565b5f6001600160401b0383111561288f5761288f61274c565b6128a2601f8401601f1916602001612760565b90508281528383830111156128b5575f80fd5b828260208301375f602084830101529392505050565b5f82601f8301126128da575f80fd5b61095383833560208501612877565b5f8083601f8401126128f9575f80fd5b5081356001600160401b0381111561290f575f80fd5b6020830191508360208260051b8501011115612428575f80fd5b80358015158114611b4f575f80fd5b803561ffff81168114611b4f575f80fd5b5f805f805f805f805f806101208b8d031215612963575f80fd5b8a356001600160401b0380821115612979575f80fd5b6129858e838f016128cb565b9b5060208d013591506129978261253b565b90995060408c0135985060608c0135975060808c0135906129b78261253b565b90965060a08c013590808211156129cc575f80fd5b506129d98d828e016128e9565b90965094506129ec905060c08c01612929565b92506129fa60e08c01612938565b9150612a096101008c01612929565b90509295989b9194979a5092959850565b5f805f805f805f8060a0898b031215612a31575f80fd5b8835612a3c8161253b565b97506020890135612a4c8161253b565b965060408901356001600160401b0380821115612a67575f80fd5b612a738c838d016128e9565b909850965060608b0135915080821115612a8b575f80fd5b612a978c838d016128e9565b909650945060808b0135915080821115612aaf575f80fd5b50612abc8b828c0161254f565b999c989b5096995094979396929594505050565b5f805f60608486031215612ae2575f80fd5b8335612aed8161253b565b92506020840135612afd8161253b565b91506040840135612b0d8161253b565b809150509250925092565b5f805f805f805f805f805f6101208c8e031215612b33575f80fd5b6001600160401b03808d351115612b48575f80fd5b612b558e8e358f0161254f565b909c509a50612b6760208e013561253b565b60208d0135995060408d0135985060608d01359750612b8960808e013561253b565b60808d013596508060a08e01351115612ba0575f80fd5b50612bb18d60a08e01358e016128e9565b9095509350612bc260c08d01612929565b9250612bd060e08d01612938565b9150612bdf6101008d01612929565b90509295989b509295989b9093969950565b5f805f805f8060a08789031215612c06575f80fd5b8635612c118161253b565b95506020870135612c218161253b565b9450604087013593506060870135925060808701356001600160401b03811115612c49575f80fd5b612c5589828a0161254f565b979a9699509497509295939492505050565b5f805f60608486031215612c79575f80fd5b8335612c848161253b565b92506020840135612c948161253b565b915060408401356001600160401b03811115612cae575f80fd5b612cba868287016128cb565b9150509250925092565b608081525f612cd66080830187612685565b6001600160a01b03958616602084015261ffff949094166040830152509216606090920191909152919050565b6001600160a01b03858116825284166020820152604081018390526080606082018190525f90610e8990830184612685565b5f808335601e19843603018112612d4a575f80fd5b8301803591506001600160401b03821115612d63575f80fd5b602001915036819003821315612428575f80fd5b634e487b7160e01b5f52603260045260245ffd5b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b604081525f612dfb604083018587612dc0565b9050826020830152949350505050565b5f60408284031215612e1b575f80fd5b604051604081018181106001600160401b0382111715612e3d57612e3d61274c565b604052825181526020928301519281019290925250919050565b634e487b7160e01b5f52601160045260245ffd5b8082018082111561074257610742612e57565b5f838385526020808601955060208560051b830101845f5b87811015612f0257848303601f19018952813536889003601e19018112612ebb575f80fd5b870184810190356001600160401b03811115612ed5575f80fd5b803603821315612ee3575f80fd5b612eee858284612dc0565b9a86019a9450505090830190600101612e96565b5090979650505050505050565b5f610100808352612f228184018d612685565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a08501529050612f5c818789612e7e565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b5f60208284031215612f8e575f80fd5b5051919050565b5f60808236031215612fa5575f80fd5b604051608081016001600160401b038282108183111715612fc857612fc861274c565b8160405284359150612fd98261253b565b81835260208501356020840152604085013560408401526060850135915080821115613003575f80fd5b50830136601f820112613014575f80fd5b61302336823560208401612877565b60608301525092915050565b5f8251613040818460208701612663565b9190910192915050565b5f8261306457634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b5f6020828403121561308d575f80fd5b81516109538161253b565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b5f6101008083526130f78184018d8f612dc0565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a08501529050613131818789612e7e565b94151560c0840152505061ffff9190911660e09091015298975050505050505050565b5f8451613165818460208901612663565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081525f83516131c9816017850160208801612663565b7001034b99036b4b9b9b4b733903937b6329607d1b60179184019182015283516131fa816028840160208801612663565b01602801949350505050565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f610fd86040830184612685565b808202811582820484141761074257610742612e57565b5f8161325757613257612e57565b505f19019056fe412386de53449251cbf7ce1f4c6a038bf9c0746e62d331b08ef0c3fa7d0ab6729f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a660793a5062d506d35cc8f1beda67ee5028c16bfcd9c923d5bfc439c04bd929b1a164736f6c6343000818000a", + "bytecode": "0x60806040523480156200001157600080fd5b506200001c62000022565b620000e4565b600054610100900460ff16156200008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff9081161015620000e2576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b61344180620000f46000396000f3fe60806040526004361061021e5760003560e01c80638da5cb5b11610123578063acf1a841116100ab578063d547741f1161006f578063d547741f14610682578063f14fcbc8146106a2578063f23a6e61146106c2578063f2fde38b146106e2578063ffa1ad741461070257600080fd5b8063acf1a841146105e0578063bc197c8114610600578063c0c53b8b14610620578063cf01585314610640578063d53913931461066057600080fd5b8063a0e3aef1116100f2578063a0e3aef114610534578063a217fddf14610554578063a3f4df7e14610569578063a4247400146105a0578063aa271e1a146105c057600080fd5b80638da5cb5b146104c157806391d14854146104df578063983b2d56146104ff578063986502751461051f57600080fd5b80635fc1964f116101a65780636ccbae5f116101755780636ccbae5f14610439578063715018a61461045957806371e2a6571461046e57806381c81d351461048e57806383e7f6ff146104a157600080fd5b80635fc1964f146103ae578063634486da146103ce5780636352211e146103e15780636a8be89e1461041957600080fd5b80632f2ff15d116101ed5780632f2ff15d146103035780633092afd51461032557806336568abe14610345578063423f6cef14610365578063572b6c051461038557600080fd5b806301ffc9a71461022a578063150b7a021461025f5780631bf7e13e14610298578063248a9ca3146102c557600080fd5b3661022557005b600080fd5b34801561023657600080fd5b5061024a6102453660046125f2565b610733565b60405190151581526020015b60405180910390f35b34801561026b57600080fd5b5061027f61027a366004612672565b610779565b6040516001600160e01b03199091168152602001610256565b3480156102a457600080fd5b506102b86102b33660046126e4565b6108cb565b60405161025691906127a4565b3480156102d157600080fd5b506102f56102e03660046127b7565b600090815260fb602052604090206001015490565b604051908152602001610256565b34801561030f57600080fd5b5061032361031e3660046127d0565b610997565b005b34801561033157600080fd5b50610323610340366004612800565b6109c1565b34801561035157600080fd5b506103236103603660046127d0565b6109d5565b34801561037157600080fd5b5061032361038036600461281d565b610a68565b34801561039157600080fd5b5061024a6103a0366004612800565b6001600160a01b0316301490565b3480156103ba57600080fd5b506103236103c936600461288f565b610bd9565b6103236103dc366004612800565b610c21565b3480156103ed57600080fd5b506104016103fc3660046127b7565b610ce4565b6040516001600160a01b039091168152602001610256565b34801561042557600080fd5b50610323610434366004612800565b610cef565b34801561044557600080fd5b506102f56104543660046127b7565b610d38565b34801561046557600080fd5b50610323610d7e565b34801561047a57600080fd5b5061032361048936600461288f565b610d92565b61032361049c366004612800565b610dda565b3480156104ad57600080fd5b506102f56104bc366004612934565b610e57565b3480156104cd57600080fd5b506097546001600160a01b0316610401565b3480156104eb57600080fd5b5061024a6104fa3660046127d0565b610efa565b34801561050b57600080fd5b5061032361051a366004612800565b610f25565b34801561052b57600080fd5b50610323610f36565b34801561054057600080fd5b506102f561054f366004612a5c565b610f50565b34801561056057600080fd5b506102f5600081565b34801561057557600080fd5b506102b86040518060400160405280600b81526020016a454e5320437573746f647960a81b81525081565b3480156105ac57600080fd5b5061024a6105bb3660046126e4565b610ffc565b3480156105cc57600080fd5b5061024a6105db366004612800565b61104f565b3480156105ec57600080fd5b506103236105fb366004612934565b611069565b34801561060c57600080fd5b5061027f61061b366004612b35565b611222565b34801561062c57600080fd5b5061032361063b366004612bf3565b6112db565b34801561064c57600080fd5b5061032361065b366004612c3e565b611485565b34801561066c57600080fd5b506102f56000805160206133f583398151915281565b34801561068e57600080fd5b5061032361069d3660046127d0565b611592565b3480156106ae57600080fd5b506103236106bd3660046127b7565b6115b7565b3480156106ce57600080fd5b5061027f6106dd366004612d20565b61162b565b3480156106ee57600080fd5b506103236106fd366004612800565b6116bc565b34801561070e57600080fd5b506102b860405180604001604052806005815260200164302e312e3360d81b81525081565b60006001600160e01b03198216630a85bd0160e11b148061076457506001600160e01b03198216630271189760e51b145b806107735750610773826116d8565b92915050565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004546000906001600160a01b0316806107b061170d565b6001600160a01b0316036108a957600080806107ce86880188612d9b565b9250925092506107dd8361171c565b6001600160a01b03841663b88d4fde30600080516020613415833981519152546040516001600160a01b03909116908c9061082390879030906000908b90602001612dfc565b6040516020818303038152906040526040518563ffffffff1660e01b81526004016108519493929190612e3c565b600060405180830381600087803b15801561086b57600080fd5b505af115801561087f573d6000803e3d6000fd5b5050505061089561088f8261174e565b846117d3565b50630a85bd0160e11b93506108c292505050565b6040516344e7d94960e01b815260040160405180910390fd5b95945050505050565b606060005a90506108dd858585610ffc565b6108fa57604051638baa579f60e01b815260040160405180910390fd5b61098c61090a6020870187612800565b3060408801358461091e60608b018b612e6f565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061185e92505050565b9150505b9392505050565b600082815260fb60205260409020600101546109b28161193f565b6109bc8383611950565b505050565b6109c96119d7565b6109d281611a50565b50565b6109dd61170d565b6001600160a01b0316816001600160a01b031614610a5a5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b610a648282611a68565b5050565b80610a7161170d565b6001600160a01b0316610a8382611aed565b6001600160a01b031614610ac55780610a9a61170d565b604051637ea58b1160e01b815260048101929092526001600160a01b03166024820152604401610a51565b610ace82611c03565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052600090610b22906060015b6040516020818303038152906040528051906020012090565b80546001600160a01b0319166001600160a01b0392909216919091179055600060008051602061341583398151915254604051637921219560e11b81523060048201526001600160a01b038681166024830152604482018690526001606483015260a06084830152600060a48301529091169150819063f242432a9060c401600060405180830381600087803b158015610bbb57600080fd5b505af1158015610bcf573d6000803e3d6000fd5b5050505050505050565b610be16119d7565b60005b8151811015610a6457610c0f828281518110610c0257610c02612eb5565b6020026020010151611a50565b80610c1981612ee1565b915050610be4565b610c2c6105db61170d565b610c485760405162461bcd60e51b8152600401610a5190612efa565b6001600160a01b038116610c9e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a51565b610ca781611c1c565b610caf610f36565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610a64573d6000803e3d6000fd5b600061077382611aed565b610cf76119d7565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c500480546001600160a01b0319166001600160a01b0392909216919091179055565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a838156020820152908101829052600090610d7790606001610b09565b5492915050565b610d866119d7565b610d906000611c34565b565b610d9a6119d7565b60005b8151811015610a6457610dc8828281518110610dbb57610dbb612eb5565b6020026020010151611c1c565b80610dd281612ee1565b915050610d9d565b610de56105db61170d565b610e015760405162461bcd60e51b8152600401610a5190612efa565b6001600160a01b038116610ca75760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a51565b6000805160206133d5833981519152546040516383e7f6ff60e01b81526000916001600160a01b031690829082906383e7f6ff90610e9d90899089908990600401612f58565b6040805180830381865afa158015610eb9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610edd9190612f7c565b60208101518151919250610ef091612fca565b9695505050505050565b600091825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610f2d6119d7565b6109d281611c1c565b610d906000805160206133f583398151915261036061170d565b6000805160206133d5833981519152546000906001600160a01b0316806365a69dcf8d85610f7e5730610f80565b8d5b8d8d8d8d8d8d8d6040518a63ffffffff1660e01b8152600401610fab9998979695949392919061306e565b602060405180830381865afa158015610fc8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fec91906130de565b9c9b505050505050505050505050565b600061104761100a856130f7565b3085858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611c8692505050565b949350505050565b60006107736000805160206133f583398151915283610efa565b6110746105db61170d565b6110905760405162461bcd60e51b8152600401610a5190612efa565b6002603354036110e25760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a51565b60026033556000805160206133d5833981519152546040516383e7f6ff60e01b81526001600160a01b039091169060009082906383e7f6ff9061112d90889088908890600401612f58565b6040805180830381865afa158015611149573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061116d9190612f7c565b6020810151815191925061118091612fca565b4710156111a05760405163050205f960e01b815260040160405180910390fd5b816001600160a01b031663acf1a841826020015183600001516111c39190612fca565b8787876040518563ffffffff1660e01b81526004016111e493929190612f58565b6000604051808303818588803b1580156111fd57600080fd5b505af1158015611211573d6000803e3d6000fd5b505060016033555050505050505050565b6000600080516020613415833981519152546001600160a01b031661124561170d565b6001600160a01b03161461126c576040516344e7d94960e01b815260040160405180910390fd5b600061127a83850185612800565b90506112858161171c565b60005b878110156112c4576112b28989838181106112a5576112a5612eb5565b90506020020135836117d3565b806112bc81612ee1565b915050611288565b5063bc197c8160e01b9a9950505050505050505050565b600054610100900460ff16158080156112fb5750600054600160ff909116105b806113155750303b158015611315575060005460ff166001145b6113785760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610a51565b6000805460ff19166001179055801561139b576000805461ff0019166101001790555b6000805160206133d583398151915280546001600160a01b038087166001600160a01b03199283161790925560008051602061341583398151915280548684169083161790557ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004805492851692909116919091179055611419611dc5565b611421611df3565b611429611df3565b611431611e1a565b611439611e51565b801561147f576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6114906105db61170d565b6114ac5760405162461bcd60e51b8152600401610a5190612efa565b6002603354036114fe5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a51565b600260338190555060006115478c8c8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061174e92505050565b905061155281611c03565b6115708c8c846115625730611564565b8c5b8c8c8c8c8c8c8c611e8a565b8161157f5761157f818b6117d3565b5050600160335550505050505050505050565b600082815260fb60205260409020600101546115ad8161193f565b6109bc8383611a68565b60006000805160206133d583398151915254604051631e29f97960e31b8152600481018490526001600160a01b039091169150819063f14fcbc890602401600060405180830381600087803b15801561160f57600080fd5b505af1158015611623573d6000803e3d6000fd5b505050505050565b6000600080516020613415833981519152546001600160a01b031661164e61170d565b6001600160a01b031614611675576040516344e7d94960e01b815260040160405180910390fd5b6001600160a01b038616156116a957600061169283850185612800565b905061169d8161171c565b6116a786826117d3565b505b5063f23a6e6160e01b9695505050505050565b6116c46119d7565b6116cd81611fd5565b6109d260008261204b565b60006001600160e01b03198216637965db0b60e01b148061077357506301ffc9a760e01b6001600160e01b0319831614610773565b6000611717612055565b905090565b6001600160a01b0381166109d25760405163b20f76e360e01b81526001600160a01b0382166004820152602401610a51565b60007f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae60001b826040516020016117859190613195565b604051602081830303815290604052805190602001206040516020016117b5929190918252602082015260400190565b60408051601f19818403018152919052805160209091012092915050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052819061181190606001610b09565b80546001600160a01b0319166001600160a01b039283161790556040519082169083907f45aa97e368889fb3527c1db60c59c2ae91e82f21778613449e46d4208c1c4b1290600090a35050565b606061186985612073565b600080876001600160a01b0316866118838b8a89896120d9565b6040516118909190613195565b60006040518083038160008787f1925050503d80600081146118ce576040519150601f19603f3d011682016040523d82523d6000602084013e6118d3565b606091505b5090925090506118e4603f876131b1565b5a116118f2576118f26131d3565b61193282826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c4544000000000000815250612109565b9998505050505050505050565b6109d28161194b61170d565b612142565b61195a8282610efa565b610a6457600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff1916600117905561199361170d565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6119df61170d565b6001600160a01b03166119fa6097546001600160a01b031690565b6001600160a01b031614610d905760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a51565b6109d26000805160206133f583398151915282611592565b611a728282610efa565b15610a6457600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff19169055611aa961170d565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101829052600090611b2c90606001610b09565b546001600160a01b0316905080611b595760405163124bad6360e31b815260048101839052602401610a51565b30600080516020613415833981519152546040516331a9108f60e11b8152600481018590526001600160a01b0390911690636352211e90602401602060405180830381865afa158015611bb0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bd491906131e9565b6001600160a01b031614611bfe576040516303b673fd60e21b815260048101839052602401610a51565b919050565b303303611c13576109d2816121a6565b6109d281612073565b6109d26000805160206133f58339815191528261204b565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015611ccd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cf191906130de565b90506000611d9f866060015180519060200120868860200151604051602001611d3f9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b9050818660200151148015610ef057508551610ef0906001600160a01b031682866121d0565b600054610100900460ff16611dec5760405162461bcd60e51b8152600401610a5190613206565b6001603355565b600054610100900460ff16610d905760405162461bcd60e51b8152600401610a5190613206565b600054610100900460ff16611e415760405162461bcd60e51b8152600401610a5190613206565b610d90611e4c61170d565b611c34565b600054610100900460ff16611e785760405162461bcd60e51b8152600401610a5190613206565b610d906000611e8561170d565b61204b565b6000805160206133d5833981519152546040516383e7f6ff60e01b81526001600160a01b039091169060009082906383e7f6ff90611ed0908f908f908e90600401612f58565b6040805180830381865afa158015611eec573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f109190612f7c565b60208101518151919250611f2391612fca565b471015611f435760405163050205f960e01b815260040160405180910390fd5b816001600160a01b03166374694a2b82602001518360000151611f669190612fca565b8e8e8e8e8e8e8e8e8e8e6040518c63ffffffff1660e01b8152600401611f959a99989796959493929190613251565b6000604051808303818588803b158015611fae57600080fd5b505af1158015611fc2573d6000803e3d6000fd5b5050505050505050505050505050505050565b611fdd6119d7565b6001600160a01b0381166120425760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610a51565b6109d281611c34565b610a648282611950565b600030330361206b575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290526000906060016040516020818303038152906040528051906020012090506120c88190565b546120d4906001612fca565b905550565b60608285856040516020016120f0939291906132c3565b6040516020818303038152906040529050949350505050565b60608315612118575081610990565b8251156121285782518084602001fd5b8160405162461bcd60e51b8152600401610a5191906127a4565b61214c8282610efa565b610a6457612164816001600160a01b03166014612312565b61216f836020612312565b604051602001612180929190613302565b60408051601f198184030181529082905262461bcd60e51b8252610a51916004016127a4565b6121ae6124ad565b81146109d257604051635637b6af60e11b815260048101829052602401610a51565b60008060006121df85856124c0565b909250905060008160048111156121f8576121f8613377565b1480156122165750856001600160a01b0316826001600160a01b0316145b1561222657600192505050610990565b600080876001600160a01b0316631626ba7e60e01b888860405160240161224e92919061338d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161228c9190613195565b600060405180830381855afa9150503d80600081146122c7576040519150601f19603f3d011682016040523d82523d6000602084013e6122cc565b606091505b50915091508180156122df575080516020145b801561230657508051630b135d3f60e11b9061230490830160209081019084016130de565b145b98975050505050505050565b606060006123218360026133a6565b61232c906002612fca565b6001600160401b0381111561234357612343612849565b6040519080825280601f01601f19166020018201604052801561236d576020820181803683370190505b509050600360fc1b8160008151811061238857612388612eb5565b60200101906001600160f81b031916908160001a905350600f60fb1b816001815181106123b7576123b7612eb5565b60200101906001600160f81b031916908160001a90535060006123db8460026133a6565b6123e6906001612fca565b90505b600181111561245e576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061241a5761241a612eb5565b1a60f81b82828151811061243057612430612eb5565b60200101906001600160f81b031916908160001a90535060049490941c93612457816133bd565b90506123e9565b5083156109905760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610a51565b60003033036120705750601f1936013590565b60008082516041036124f65760208301516040840151606085015160001a6124ea87828585612505565b945094505050506124fe565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561253c57506000905060036125e9565b8460ff16601b1415801561255457508460ff16601c14155b1561256557506000905060046125e9565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156125b9573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166125e2576000600192509250506125e9565b9150600090505b94509492505050565b60006020828403121561260457600080fd5b81356001600160e01b03198116811461099057600080fd5b6001600160a01b03811681146109d257600080fd5b60008083601f84011261264357600080fd5b5081356001600160401b0381111561265a57600080fd5b6020830191508360208285010111156124fe57600080fd5b60008060008060006080868803121561268a57600080fd5b85356126958161261c565b945060208601356126a58161261c565b93506040860135925060608601356001600160401b038111156126c757600080fd5b6126d388828901612631565b969995985093965092949392505050565b6000806000604084860312156126f957600080fd5b83356001600160401b038082111561271057600080fd5b908501906080828803121561272457600080fd5b9093506020850135908082111561273a57600080fd5b5061274786828701612631565b9497909650939450505050565b60005b8381101561276f578181015183820152602001612757565b50506000910152565b60008151808452612790816020860160208601612754565b601f01601f19169290920160200192915050565b6020815260006109906020830184612778565b6000602082840312156127c957600080fd5b5035919050565b600080604083850312156127e357600080fd5b8235915060208301356127f58161261c565b809150509250929050565b60006020828403121561281257600080fd5b81356109908161261c565b6000806040838503121561283057600080fd5b823561283b8161261c565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561288757612887612849565b604052919050565b600060208083850312156128a257600080fd5b82356001600160401b03808211156128b957600080fd5b818501915085601f8301126128cd57600080fd5b8135818111156128df576128df612849565b8060051b91506128f084830161285f565b818152918301840191848101908884111561290a57600080fd5b938501935b8385101561230657843592506129248361261c565b828252938501939085019061290f565b60008060006040848603121561294957600080fd5b83356001600160401b0381111561295f57600080fd5b61296b86828701612631565b909790965060209590950135949350505050565b60006001600160401b0383111561299857612998612849565b6129ab601f8401601f191660200161285f565b90508281528383830111156129bf57600080fd5b828260208301376000602084830101529392505050565b600082601f8301126129e757600080fd5b6109908383356020850161297f565b60008083601f840112612a0857600080fd5b5081356001600160401b03811115612a1f57600080fd5b6020830191508360208260051b85010111156124fe57600080fd5b80358015158114611bfe57600080fd5b803561ffff81168114611bfe57600080fd5b6000806000806000806000806000806101208b8d031215612a7c57600080fd5b8a356001600160401b0380821115612a9357600080fd5b612a9f8e838f016129d6565b9b5060208d01359150612ab18261261c565b90995060408c0135985060608c0135975060808c013590612ad18261261c565b90965060a08c01359080821115612ae757600080fd5b50612af48d828e016129f6565b9096509450612b07905060c08c01612a3a565b9250612b1560e08c01612a4a565b9150612b246101008c01612a3a565b90509295989b9194979a5092959850565b60008060008060008060008060a0898b031215612b5157600080fd5b8835612b5c8161261c565b97506020890135612b6c8161261c565b965060408901356001600160401b0380821115612b8857600080fd5b612b948c838d016129f6565b909850965060608b0135915080821115612bad57600080fd5b612bb98c838d016129f6565b909650945060808b0135915080821115612bd257600080fd5b50612bdf8b828c01612631565b999c989b5096995094979396929594505050565b600080600060608486031215612c0857600080fd5b8335612c138161261c565b92506020840135612c238161261c565b91506040840135612c338161261c565b809150509250925092565b60008060008060008060008060008060006101208c8e031215612c6057600080fd5b6001600160401b03808d351115612c7657600080fd5b612c838e8e358f01612631565b909c509a50612c9560208e013561261c565b60208d0135995060408d0135985060608d01359750612cb760808e013561261c565b60808d013596508060a08e01351115612ccf57600080fd5b50612ce08d60a08e01358e016129f6565b9095509350612cf160c08d01612a3a565b9250612cff60e08d01612a4a565b9150612d0e6101008d01612a3a565b90509295989b509295989b9093969950565b60008060008060008060a08789031215612d3957600080fd5b8635612d448161261c565b95506020870135612d548161261c565b9450604087013593506060870135925060808701356001600160401b03811115612d7d57600080fd5b612d8989828a01612631565b979a9699509497509295939492505050565b600080600060608486031215612db057600080fd5b8335612dbb8161261c565b92506020840135612dcb8161261c565b915060408401356001600160401b03811115612de657600080fd5b612df2868287016129d6565b9150509250925092565b608081526000612e0f6080830187612778565b6001600160a01b03958616602084015261ffff949094166040830152509216606090920191909152919050565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090610ef090830184612778565b6000808335601e19843603018112612e8657600080fd5b8301803591506001600160401b03821115612ea057600080fd5b6020019150368190038213156124fe57600080fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201612ef357612ef3612ecb565b5060010190565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b604081526000612f6c604083018587612f2f565b9050826020830152949350505050565b600060408284031215612f8e57600080fd5b604051604081018181106001600160401b0382111715612fb057612fb0612849565b604052825181526020928301519281019290925250919050565b8082018082111561077357610773612ecb565b81835260006020808501808196508560051b810191508460005b878110156130615782840389528135601e1988360301811261301857600080fd5b870185810190356001600160401b0381111561303357600080fd5b80360382131561304257600080fd5b61304d868284612f2f565b9a87019a9550505090840190600101612ff7565b5091979650505050505050565b60006101008083526130828184018d612778565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a085015290506130bc818789612fdd565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b6000602082840312156130f057600080fd5b5051919050565b60006080823603121561310957600080fd5b604051608081016001600160401b03828210818311171561312c5761312c612849565b816040528435915061313d8261261c565b8183526020850135602084015260408501356040840152606085013591508082111561316857600080fd5b50830136601f82011261317a57600080fd5b6131893682356020840161297f565b60608301525092915050565b600082516131a7818460208701612754565b9190910192915050565b6000826131ce57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b6000602082840312156131fb57600080fd5b81516109908161261c565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60006101008083526132668184018d8f612f2f565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a085015290506132a0818789612fdd565b94151560c0840152505061ffff9190911660e09091015298975050505050505050565b600084516132d5818460208901612754565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081526000835161333a816017850160208801612754565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835161336b816028840160208801612754565b01602801949350505050565b634e487b7160e01b600052602160045260246000fd5b8281526040602082015260006110476040830184612778565b808202811582820484141761077357610773612ecb565b6000816133cc576133cc612ecb565b50600019019056fe412386de53449251cbf7ce1f4c6a038bf9c0746e62d331b08ef0c3fa7d0ab6729f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a660793a5062d506d35cc8f1beda67ee5028c16bfcd9c923d5bfc439c04bd929b1a164736f6c6343000811000a", + "deployedBytecode": "0x60806040526004361061021e5760003560e01c80638da5cb5b11610123578063acf1a841116100ab578063d547741f1161006f578063d547741f14610682578063f14fcbc8146106a2578063f23a6e61146106c2578063f2fde38b146106e2578063ffa1ad741461070257600080fd5b8063acf1a841146105e0578063bc197c8114610600578063c0c53b8b14610620578063cf01585314610640578063d53913931461066057600080fd5b8063a0e3aef1116100f2578063a0e3aef114610534578063a217fddf14610554578063a3f4df7e14610569578063a4247400146105a0578063aa271e1a146105c057600080fd5b80638da5cb5b146104c157806391d14854146104df578063983b2d56146104ff578063986502751461051f57600080fd5b80635fc1964f116101a65780636ccbae5f116101755780636ccbae5f14610439578063715018a61461045957806371e2a6571461046e57806381c81d351461048e57806383e7f6ff146104a157600080fd5b80635fc1964f146103ae578063634486da146103ce5780636352211e146103e15780636a8be89e1461041957600080fd5b80632f2ff15d116101ed5780632f2ff15d146103035780633092afd51461032557806336568abe14610345578063423f6cef14610365578063572b6c051461038557600080fd5b806301ffc9a71461022a578063150b7a021461025f5780631bf7e13e14610298578063248a9ca3146102c557600080fd5b3661022557005b600080fd5b34801561023657600080fd5b5061024a6102453660046125f2565b610733565b60405190151581526020015b60405180910390f35b34801561026b57600080fd5b5061027f61027a366004612672565b610779565b6040516001600160e01b03199091168152602001610256565b3480156102a457600080fd5b506102b86102b33660046126e4565b6108cb565b60405161025691906127a4565b3480156102d157600080fd5b506102f56102e03660046127b7565b600090815260fb602052604090206001015490565b604051908152602001610256565b34801561030f57600080fd5b5061032361031e3660046127d0565b610997565b005b34801561033157600080fd5b50610323610340366004612800565b6109c1565b34801561035157600080fd5b506103236103603660046127d0565b6109d5565b34801561037157600080fd5b5061032361038036600461281d565b610a68565b34801561039157600080fd5b5061024a6103a0366004612800565b6001600160a01b0316301490565b3480156103ba57600080fd5b506103236103c936600461288f565b610bd9565b6103236103dc366004612800565b610c21565b3480156103ed57600080fd5b506104016103fc3660046127b7565b610ce4565b6040516001600160a01b039091168152602001610256565b34801561042557600080fd5b50610323610434366004612800565b610cef565b34801561044557600080fd5b506102f56104543660046127b7565b610d38565b34801561046557600080fd5b50610323610d7e565b34801561047a57600080fd5b5061032361048936600461288f565b610d92565b61032361049c366004612800565b610dda565b3480156104ad57600080fd5b506102f56104bc366004612934565b610e57565b3480156104cd57600080fd5b506097546001600160a01b0316610401565b3480156104eb57600080fd5b5061024a6104fa3660046127d0565b610efa565b34801561050b57600080fd5b5061032361051a366004612800565b610f25565b34801561052b57600080fd5b50610323610f36565b34801561054057600080fd5b506102f561054f366004612a5c565b610f50565b34801561056057600080fd5b506102f5600081565b34801561057557600080fd5b506102b86040518060400160405280600b81526020016a454e5320437573746f647960a81b81525081565b3480156105ac57600080fd5b5061024a6105bb3660046126e4565b610ffc565b3480156105cc57600080fd5b5061024a6105db366004612800565b61104f565b3480156105ec57600080fd5b506103236105fb366004612934565b611069565b34801561060c57600080fd5b5061027f61061b366004612b35565b611222565b34801561062c57600080fd5b5061032361063b366004612bf3565b6112db565b34801561064c57600080fd5b5061032361065b366004612c3e565b611485565b34801561066c57600080fd5b506102f56000805160206133f583398151915281565b34801561068e57600080fd5b5061032361069d3660046127d0565b611592565b3480156106ae57600080fd5b506103236106bd3660046127b7565b6115b7565b3480156106ce57600080fd5b5061027f6106dd366004612d20565b61162b565b3480156106ee57600080fd5b506103236106fd366004612800565b6116bc565b34801561070e57600080fd5b506102b860405180604001604052806005815260200164302e312e3360d81b81525081565b60006001600160e01b03198216630a85bd0160e11b148061076457506001600160e01b03198216630271189760e51b145b806107735750610773826116d8565b92915050565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004546000906001600160a01b0316806107b061170d565b6001600160a01b0316036108a957600080806107ce86880188612d9b565b9250925092506107dd8361171c565b6001600160a01b03841663b88d4fde30600080516020613415833981519152546040516001600160a01b03909116908c9061082390879030906000908b90602001612dfc565b6040516020818303038152906040526040518563ffffffff1660e01b81526004016108519493929190612e3c565b600060405180830381600087803b15801561086b57600080fd5b505af115801561087f573d6000803e3d6000fd5b5050505061089561088f8261174e565b846117d3565b50630a85bd0160e11b93506108c292505050565b6040516344e7d94960e01b815260040160405180910390fd5b95945050505050565b606060005a90506108dd858585610ffc565b6108fa57604051638baa579f60e01b815260040160405180910390fd5b61098c61090a6020870187612800565b3060408801358461091e60608b018b612e6f565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061185e92505050565b9150505b9392505050565b600082815260fb60205260409020600101546109b28161193f565b6109bc8383611950565b505050565b6109c96119d7565b6109d281611a50565b50565b6109dd61170d565b6001600160a01b0316816001600160a01b031614610a5a5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b610a648282611a68565b5050565b80610a7161170d565b6001600160a01b0316610a8382611aed565b6001600160a01b031614610ac55780610a9a61170d565b604051637ea58b1160e01b815260048101929092526001600160a01b03166024820152604401610a51565b610ace82611c03565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052600090610b22906060015b6040516020818303038152906040528051906020012090565b80546001600160a01b0319166001600160a01b0392909216919091179055600060008051602061341583398151915254604051637921219560e11b81523060048201526001600160a01b038681166024830152604482018690526001606483015260a06084830152600060a48301529091169150819063f242432a9060c401600060405180830381600087803b158015610bbb57600080fd5b505af1158015610bcf573d6000803e3d6000fd5b5050505050505050565b610be16119d7565b60005b8151811015610a6457610c0f828281518110610c0257610c02612eb5565b6020026020010151611a50565b80610c1981612ee1565b915050610be4565b610c2c6105db61170d565b610c485760405162461bcd60e51b8152600401610a5190612efa565b6001600160a01b038116610c9e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a51565b610ca781611c1c565b610caf610f36565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610a64573d6000803e3d6000fd5b600061077382611aed565b610cf76119d7565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c500480546001600160a01b0319166001600160a01b0392909216919091179055565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a838156020820152908101829052600090610d7790606001610b09565b5492915050565b610d866119d7565b610d906000611c34565b565b610d9a6119d7565b60005b8151811015610a6457610dc8828281518110610dbb57610dbb612eb5565b6020026020010151611c1c565b80610dd281612ee1565b915050610d9d565b610de56105db61170d565b610e015760405162461bcd60e51b8152600401610a5190612efa565b6001600160a01b038116610ca75760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a51565b6000805160206133d5833981519152546040516383e7f6ff60e01b81526000916001600160a01b031690829082906383e7f6ff90610e9d90899089908990600401612f58565b6040805180830381865afa158015610eb9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610edd9190612f7c565b60208101518151919250610ef091612fca565b9695505050505050565b600091825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610f2d6119d7565b6109d281611c1c565b610d906000805160206133f583398151915261036061170d565b6000805160206133d5833981519152546000906001600160a01b0316806365a69dcf8d85610f7e5730610f80565b8d5b8d8d8d8d8d8d8d6040518a63ffffffff1660e01b8152600401610fab9998979695949392919061306e565b602060405180830381865afa158015610fc8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fec91906130de565b9c9b505050505050505050505050565b600061104761100a856130f7565b3085858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611c8692505050565b949350505050565b60006107736000805160206133f583398151915283610efa565b6110746105db61170d565b6110905760405162461bcd60e51b8152600401610a5190612efa565b6002603354036110e25760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a51565b60026033556000805160206133d5833981519152546040516383e7f6ff60e01b81526001600160a01b039091169060009082906383e7f6ff9061112d90889088908890600401612f58565b6040805180830381865afa158015611149573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061116d9190612f7c565b6020810151815191925061118091612fca565b4710156111a05760405163050205f960e01b815260040160405180910390fd5b816001600160a01b031663acf1a841826020015183600001516111c39190612fca565b8787876040518563ffffffff1660e01b81526004016111e493929190612f58565b6000604051808303818588803b1580156111fd57600080fd5b505af1158015611211573d6000803e3d6000fd5b505060016033555050505050505050565b6000600080516020613415833981519152546001600160a01b031661124561170d565b6001600160a01b03161461126c576040516344e7d94960e01b815260040160405180910390fd5b600061127a83850185612800565b90506112858161171c565b60005b878110156112c4576112b28989838181106112a5576112a5612eb5565b90506020020135836117d3565b806112bc81612ee1565b915050611288565b5063bc197c8160e01b9a9950505050505050505050565b600054610100900460ff16158080156112fb5750600054600160ff909116105b806113155750303b158015611315575060005460ff166001145b6113785760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610a51565b6000805460ff19166001179055801561139b576000805461ff0019166101001790555b6000805160206133d583398151915280546001600160a01b038087166001600160a01b03199283161790925560008051602061341583398151915280548684169083161790557ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004805492851692909116919091179055611419611dc5565b611421611df3565b611429611df3565b611431611e1a565b611439611e51565b801561147f576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6114906105db61170d565b6114ac5760405162461bcd60e51b8152600401610a5190612efa565b6002603354036114fe5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a51565b600260338190555060006115478c8c8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061174e92505050565b905061155281611c03565b6115708c8c846115625730611564565b8c5b8c8c8c8c8c8c8c611e8a565b8161157f5761157f818b6117d3565b5050600160335550505050505050505050565b600082815260fb60205260409020600101546115ad8161193f565b6109bc8383611a68565b60006000805160206133d583398151915254604051631e29f97960e31b8152600481018490526001600160a01b039091169150819063f14fcbc890602401600060405180830381600087803b15801561160f57600080fd5b505af1158015611623573d6000803e3d6000fd5b505050505050565b6000600080516020613415833981519152546001600160a01b031661164e61170d565b6001600160a01b031614611675576040516344e7d94960e01b815260040160405180910390fd5b6001600160a01b038616156116a957600061169283850185612800565b905061169d8161171c565b6116a786826117d3565b505b5063f23a6e6160e01b9695505050505050565b6116c46119d7565b6116cd81611fd5565b6109d260008261204b565b60006001600160e01b03198216637965db0b60e01b148061077357506301ffc9a760e01b6001600160e01b0319831614610773565b6000611717612055565b905090565b6001600160a01b0381166109d25760405163b20f76e360e01b81526001600160a01b0382166004820152602401610a51565b60007f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae60001b826040516020016117859190613195565b604051602081830303815290604052805190602001206040516020016117b5929190918252602082015260400190565b60408051601f19818403018152919052805160209091012092915050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052819061181190606001610b09565b80546001600160a01b0319166001600160a01b039283161790556040519082169083907f45aa97e368889fb3527c1db60c59c2ae91e82f21778613449e46d4208c1c4b1290600090a35050565b606061186985612073565b600080876001600160a01b0316866118838b8a89896120d9565b6040516118909190613195565b60006040518083038160008787f1925050503d80600081146118ce576040519150601f19603f3d011682016040523d82523d6000602084013e6118d3565b606091505b5090925090506118e4603f876131b1565b5a116118f2576118f26131d3565b61193282826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c4544000000000000815250612109565b9998505050505050505050565b6109d28161194b61170d565b612142565b61195a8282610efa565b610a6457600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff1916600117905561199361170d565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6119df61170d565b6001600160a01b03166119fa6097546001600160a01b031690565b6001600160a01b031614610d905760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a51565b6109d26000805160206133f583398151915282611592565b611a728282610efa565b15610a6457600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff19169055611aa961170d565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101829052600090611b2c90606001610b09565b546001600160a01b0316905080611b595760405163124bad6360e31b815260048101839052602401610a51565b30600080516020613415833981519152546040516331a9108f60e11b8152600481018590526001600160a01b0390911690636352211e90602401602060405180830381865afa158015611bb0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bd491906131e9565b6001600160a01b031614611bfe576040516303b673fd60e21b815260048101839052602401610a51565b919050565b303303611c13576109d2816121a6565b6109d281612073565b6109d26000805160206133f58339815191528261204b565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015611ccd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cf191906130de565b90506000611d9f866060015180519060200120868860200151604051602001611d3f9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b9050818660200151148015610ef057508551610ef0906001600160a01b031682866121d0565b600054610100900460ff16611dec5760405162461bcd60e51b8152600401610a5190613206565b6001603355565b600054610100900460ff16610d905760405162461bcd60e51b8152600401610a5190613206565b600054610100900460ff16611e415760405162461bcd60e51b8152600401610a5190613206565b610d90611e4c61170d565b611c34565b600054610100900460ff16611e785760405162461bcd60e51b8152600401610a5190613206565b610d906000611e8561170d565b61204b565b6000805160206133d5833981519152546040516383e7f6ff60e01b81526001600160a01b039091169060009082906383e7f6ff90611ed0908f908f908e90600401612f58565b6040805180830381865afa158015611eec573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f109190612f7c565b60208101518151919250611f2391612fca565b471015611f435760405163050205f960e01b815260040160405180910390fd5b816001600160a01b03166374694a2b82602001518360000151611f669190612fca565b8e8e8e8e8e8e8e8e8e8e6040518c63ffffffff1660e01b8152600401611f959a99989796959493929190613251565b6000604051808303818588803b158015611fae57600080fd5b505af1158015611fc2573d6000803e3d6000fd5b5050505050505050505050505050505050565b611fdd6119d7565b6001600160a01b0381166120425760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610a51565b6109d281611c34565b610a648282611950565b600030330361206b575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290526000906060016040516020818303038152906040528051906020012090506120c88190565b546120d4906001612fca565b905550565b60608285856040516020016120f0939291906132c3565b6040516020818303038152906040529050949350505050565b60608315612118575081610990565b8251156121285782518084602001fd5b8160405162461bcd60e51b8152600401610a5191906127a4565b61214c8282610efa565b610a6457612164816001600160a01b03166014612312565b61216f836020612312565b604051602001612180929190613302565b60408051601f198184030181529082905262461bcd60e51b8252610a51916004016127a4565b6121ae6124ad565b81146109d257604051635637b6af60e11b815260048101829052602401610a51565b60008060006121df85856124c0565b909250905060008160048111156121f8576121f8613377565b1480156122165750856001600160a01b0316826001600160a01b0316145b1561222657600192505050610990565b600080876001600160a01b0316631626ba7e60e01b888860405160240161224e92919061338d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161228c9190613195565b600060405180830381855afa9150503d80600081146122c7576040519150601f19603f3d011682016040523d82523d6000602084013e6122cc565b606091505b50915091508180156122df575080516020145b801561230657508051630b135d3f60e11b9061230490830160209081019084016130de565b145b98975050505050505050565b606060006123218360026133a6565b61232c906002612fca565b6001600160401b0381111561234357612343612849565b6040519080825280601f01601f19166020018201604052801561236d576020820181803683370190505b509050600360fc1b8160008151811061238857612388612eb5565b60200101906001600160f81b031916908160001a905350600f60fb1b816001815181106123b7576123b7612eb5565b60200101906001600160f81b031916908160001a90535060006123db8460026133a6565b6123e6906001612fca565b90505b600181111561245e576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061241a5761241a612eb5565b1a60f81b82828151811061243057612430612eb5565b60200101906001600160f81b031916908160001a90535060049490941c93612457816133bd565b90506123e9565b5083156109905760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610a51565b60003033036120705750601f1936013590565b60008082516041036124f65760208301516040840151606085015160001a6124ea87828585612505565b945094505050506124fe565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561253c57506000905060036125e9565b8460ff16601b1415801561255457508460ff16601c14155b1561256557506000905060046125e9565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156125b9573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166125e2576000600192509250506125e9565b9150600090505b94509492505050565b60006020828403121561260457600080fd5b81356001600160e01b03198116811461099057600080fd5b6001600160a01b03811681146109d257600080fd5b60008083601f84011261264357600080fd5b5081356001600160401b0381111561265a57600080fd5b6020830191508360208285010111156124fe57600080fd5b60008060008060006080868803121561268a57600080fd5b85356126958161261c565b945060208601356126a58161261c565b93506040860135925060608601356001600160401b038111156126c757600080fd5b6126d388828901612631565b969995985093965092949392505050565b6000806000604084860312156126f957600080fd5b83356001600160401b038082111561271057600080fd5b908501906080828803121561272457600080fd5b9093506020850135908082111561273a57600080fd5b5061274786828701612631565b9497909650939450505050565b60005b8381101561276f578181015183820152602001612757565b50506000910152565b60008151808452612790816020860160208601612754565b601f01601f19169290920160200192915050565b6020815260006109906020830184612778565b6000602082840312156127c957600080fd5b5035919050565b600080604083850312156127e357600080fd5b8235915060208301356127f58161261c565b809150509250929050565b60006020828403121561281257600080fd5b81356109908161261c565b6000806040838503121561283057600080fd5b823561283b8161261c565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561288757612887612849565b604052919050565b600060208083850312156128a257600080fd5b82356001600160401b03808211156128b957600080fd5b818501915085601f8301126128cd57600080fd5b8135818111156128df576128df612849565b8060051b91506128f084830161285f565b818152918301840191848101908884111561290a57600080fd5b938501935b8385101561230657843592506129248361261c565b828252938501939085019061290f565b60008060006040848603121561294957600080fd5b83356001600160401b0381111561295f57600080fd5b61296b86828701612631565b909790965060209590950135949350505050565b60006001600160401b0383111561299857612998612849565b6129ab601f8401601f191660200161285f565b90508281528383830111156129bf57600080fd5b828260208301376000602084830101529392505050565b600082601f8301126129e757600080fd5b6109908383356020850161297f565b60008083601f840112612a0857600080fd5b5081356001600160401b03811115612a1f57600080fd5b6020830191508360208260051b85010111156124fe57600080fd5b80358015158114611bfe57600080fd5b803561ffff81168114611bfe57600080fd5b6000806000806000806000806000806101208b8d031215612a7c57600080fd5b8a356001600160401b0380821115612a9357600080fd5b612a9f8e838f016129d6565b9b5060208d01359150612ab18261261c565b90995060408c0135985060608c0135975060808c013590612ad18261261c565b90965060a08c01359080821115612ae757600080fd5b50612af48d828e016129f6565b9096509450612b07905060c08c01612a3a565b9250612b1560e08c01612a4a565b9150612b246101008c01612a3a565b90509295989b9194979a5092959850565b60008060008060008060008060a0898b031215612b5157600080fd5b8835612b5c8161261c565b97506020890135612b6c8161261c565b965060408901356001600160401b0380821115612b8857600080fd5b612b948c838d016129f6565b909850965060608b0135915080821115612bad57600080fd5b612bb98c838d016129f6565b909650945060808b0135915080821115612bd257600080fd5b50612bdf8b828c01612631565b999c989b5096995094979396929594505050565b600080600060608486031215612c0857600080fd5b8335612c138161261c565b92506020840135612c238161261c565b91506040840135612c338161261c565b809150509250925092565b60008060008060008060008060008060006101208c8e031215612c6057600080fd5b6001600160401b03808d351115612c7657600080fd5b612c838e8e358f01612631565b909c509a50612c9560208e013561261c565b60208d0135995060408d0135985060608d01359750612cb760808e013561261c565b60808d013596508060a08e01351115612ccf57600080fd5b50612ce08d60a08e01358e016129f6565b9095509350612cf160c08d01612a3a565b9250612cff60e08d01612a4a565b9150612d0e6101008d01612a3a565b90509295989b509295989b9093969950565b60008060008060008060a08789031215612d3957600080fd5b8635612d448161261c565b95506020870135612d548161261c565b9450604087013593506060870135925060808701356001600160401b03811115612d7d57600080fd5b612d8989828a01612631565b979a9699509497509295939492505050565b600080600060608486031215612db057600080fd5b8335612dbb8161261c565b92506020840135612dcb8161261c565b915060408401356001600160401b03811115612de657600080fd5b612df2868287016129d6565b9150509250925092565b608081526000612e0f6080830187612778565b6001600160a01b03958616602084015261ffff949094166040830152509216606090920191909152919050565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090610ef090830184612778565b6000808335601e19843603018112612e8657600080fd5b8301803591506001600160401b03821115612ea057600080fd5b6020019150368190038213156124fe57600080fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201612ef357612ef3612ecb565b5060010190565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b604081526000612f6c604083018587612f2f565b9050826020830152949350505050565b600060408284031215612f8e57600080fd5b604051604081018181106001600160401b0382111715612fb057612fb0612849565b604052825181526020928301519281019290925250919050565b8082018082111561077357610773612ecb565b81835260006020808501808196508560051b810191508460005b878110156130615782840389528135601e1988360301811261301857600080fd5b870185810190356001600160401b0381111561303357600080fd5b80360382131561304257600080fd5b61304d868284612f2f565b9a87019a9550505090840190600101612ff7565b5091979650505050505050565b60006101008083526130828184018d612778565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a085015290506130bc818789612fdd565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b6000602082840312156130f057600080fd5b5051919050565b60006080823603121561310957600080fd5b604051608081016001600160401b03828210818311171561312c5761312c612849565b816040528435915061313d8261261c565b8183526020850135602084015260408501356040840152606085013591508082111561316857600080fd5b50830136601f82011261317a57600080fd5b6131893682356020840161297f565b60608301525092915050565b600082516131a7818460208701612754565b9190910192915050565b6000826131ce57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b6000602082840312156131fb57600080fd5b81516109908161261c565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60006101008083526132668184018d8f612f2f565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a085015290506132a0818789612fdd565b94151560c0840152505061ffff9190911660e09091015298975050505050505050565b600084516132d5818460208901612754565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081526000835161333a816017850160208801612754565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835161336b816028840160208801612754565b01602801949350505050565b634e487b7160e01b600052602160045260246000fd5b8281526040602082015260006110476040830184612778565b808202811582820484141761077357610773612ecb565b6000816133cc576133cc612ecb565b50600019019056fe412386de53449251cbf7ce1f4c6a038bf9c0746e62d331b08ef0c3fa7d0ab6729f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a660793a5062d506d35cc8f1beda67ee5028c16bfcd9c923d5bfc439c04bd929b1a164736f6c6343000811000a", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/artifacts/ISeaportProxyBuyer.json b/artifacts/ISeaportProxyBuyer.json index 4efed64c..2672c38f 100644 --- a/artifacts/ISeaportProxyBuyer.json +++ b/artifacts/ISeaportProxyBuyer.json @@ -3,6 +3,19 @@ "contractName": "ISeaportProxyBuyer", "sourceName": "contracts/marketplace/ISeaportProxyBuyer.sol", "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + } + ], + "name": "approve", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, { "inputs": [ { @@ -223,6 +236,11 @@ }, { "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, { "internalType": "address", "name": "recipient", diff --git a/artifacts/MintingManager.json b/artifacts/MintingManager.json index 222ab2b2..9a547a0b 100644 --- a/artifacts/MintingManager.json +++ b/artifacts/MintingManager.json @@ -1156,8 +1156,8 @@ "type": "function" } ], - "bytecode": "0x608060405234801561000f575f80fd5b50614d348061001d5f395ff3fe6080604052600436106102a5575f3560e01c8063906cecc11161016f578063b9998a24116100d8578063d547741f11610092578063f2fde38b1161006d578063f2fde38b1461085b578063f5243bc41461087a578063f940e38514610899578063ffa1ad74146108b8575f80fd5b8063d547741f1461080a578063d7db74c714610829578063ec5273891461083c575f80fd5b8063b9998a241461074f578063cc2a9a5b1461076e578063cc2c3fc41461078d578063ceeb4f50146107ac578063d1f5692c146107cb578063d5391393146107ea575f80fd5b8063a3a3f7f611610129578063a3a3f7f614610668578063a3f4df7e14610687578063a849d65c146106d3578063aa271e1a146106f2578063b0aa98c714610711578063b3ab15fb14610730575f80fd5b8063906cecc1146105c557806391d14854146105e4578063983b2d5614610603578063986502751461062257806399e0dd7c14610636578063a217fddf14610655575f80fd5b80635b6fa8db11610211578063715018a6116101cb578063715018a61461052f57806371e2a6571461054357806377a2a5891461056257806381c81d35146105815780638456cb59146105945780638da5cb5b146105a8575f80fd5b80635b6fa8db1461048c5780635c975abb146104ab5780635cd7e3b3146104bf5780635e22cd86146104de5780635fc1964f146104fd578063634486da1461051c575f80fd5b80633092afd5116102625780633092afd51461039757806336568abe146103b65780633f41b614146103d55780633f4ba83a1461040c57806351cff8d914610420578063572b6c051461043f575f80fd5b806301ffc9a7146102a95780631edb948e146102dd57806320c5429b146102fe578063248a9ca31461031d578063268b15ed146103595780632f2ff15d14610378575b5f80fd5b3480156102b4575f80fd5b506102c86102c3366004613c82565b6108e8565b60405190151581526020015b60405180910390f35b3480156102e8575f80fd5b506102fc6102f7366004613ccd565b61091e565b005b348015610309575f80fd5b506102fc610318366004613cf7565b610abe565b348015610328575f80fd5b5061034b610337366004613cf7565b5f9081526097602052604090206001015490565b6040519081526020016102d4565b348015610364575f80fd5b506102fc610373366004613d4b565b610bd9565b348015610383575f80fd5b506102fc610392366004613db1565b610c6a565b3480156103a2575f80fd5b506102fc6103b1366004613ddf565b610c93565b3480156103c1575f80fd5b506102fc6103d0366004613db1565b610ca7565b3480156103e0575f80fd5b5060c9546103f4906001600160a01b031681565b6040516001600160a01b0390911681526020016102d4565b348015610417575f80fd5b506102fc610d35565b34801561042b575f80fd5b506102fc61043a366004613ddf565b610d47565b34801561044a575f80fd5b506102c8610459366004613ddf565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546001600160a01b0390811691161490565b348015610497575f80fd5b5060cc546103f4906001600160a01b031681565b3480156104b6575f80fd5b506102c8610de2565b3480156104ca575f80fd5b506102fc6104d9366004613e47565b610df7565b3480156104e9575f80fd5b506102fc6104f8366004613efe565b611052565b348015610508575f80fd5b506102fc61051736600461402c565b611291565b6102fc61052a366004613ddf565b6112ce565b34801561053a575f80fd5b506102fc61138e565b34801561054e575f80fd5b506102fc61055d36600461402c565b61139f565b34801561056d575f80fd5b5060ce546103f4906001600160a01b031681565b6102fc61058f366004613ddf565b6113dc565b34801561059f575f80fd5b506102fc611459565b3480156105b3575f80fd5b506033546001600160a01b03166103f4565b3480156105d0575f80fd5b506102fc6105df3660046140c5565b611469565b3480156105ef575f80fd5b506102c86105fe366004613db1565b6114ee565b34801561060e575f80fd5b506102fc61061d366004613ddf565b611518565b34801561062d575f80fd5b506102fc611529565b348015610641575f80fd5b506102fc61065036600461411c565b611542565b348015610660575f80fd5b5061034b5f81565b348015610673575f80fd5b506102fc61068236600461415a565b61161f565b348015610692575f80fd5b506106c6604051806040016040528060148152602001732aa7299d1026b4b73a34b7339026b0b730b3b2b960611b81525081565b6040516102d491906141f9565b3480156106de575f80fd5b5060cb546103f4906001600160a01b031681565b3480156106fd575f80fd5b506102c861070c366004613ddf565b611667565b34801561071c575f80fd5b506102c861072b366004613cf7565b61167f565b34801561073b575f80fd5b506102fc61074a366004613ddf565b6116dc565b34801561075a575f80fd5b506102fc610769366004613ddf565b611706565b348015610779575f80fd5b506102fc61078836600461420b565b61174b565b348015610798575f80fd5b5060ca546103f4906001600160a01b031681565b3480156107b7575f80fd5b506102fc6107c6366004614289565b611c30565b3480156107d6575f80fd5b506102fc6107e5366004614336565b611cd2565b3480156107f5575f80fd5b5061034b5f80516020614d0883398151915281565b348015610815575f80fd5b506102fc610824366004613db1565b611d7c565b6102fc610837366004614368565b611da0565b348015610847575f80fd5b506102fc610856366004613cf7565b611f28565b348015610866575f80fd5b506102fc610875366004613ddf565b611f98565b348015610885575f80fd5b506102fc610894366004614452565b611fb3565b3480156108a4575f80fd5b506102fc6108b336600461455f565b61215f565b3480156108c3575f80fd5b506106c660405180604001604052806005815260200164302e352e3160d81b81525081565b5f6001600160e01b03198216637965db0b60e01b148061091857506301ffc9a760e01b6001600160e01b03198316145b92915050565b61092961070c6122d5565b61094e5760405162461bcd60e51b81526004016109459061458b565b60405180910390fd5b60c95460405163baef73e960e01b8152600481018390525f916001600160a01b03169063baef73e990602401602060405180830381865afa158015610995573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109b991906145c0565b9050806001600160401b03165f036109e35760405162461bcd60e51b8152600401610945906145db565b806001600160401b0316836001600160401b031611610a505760405162461bcd60e51b815260206004820152602360248201527f4d696e74696e674d616e616765723a204558504952595f4e4f545f455854454e60448201526211115160ea1b6064820152608401610945565b60c954604051631fb9763760e11b81526001600160401b0385166004820152602481018490526001600160a01b0390911690633f72ec6e906044015b5f604051808303815f87803b158015610aa3575f80fd5b505af1158015610ab5573d5f803e3d5ffd5b50505050505050565b610ac961070c6122d5565b610ae55760405162461bcd60e51b81526004016109459061458b565b60c95460405163baef73e960e01b8152600481018390526001600160a01b039091169063baef73e990602401602060405180830381865afa158015610b2c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b5091906145c0565b6001600160401b03165f03610b775760405162461bcd60e51b8152600401610945906145db565b60c954604051637eee288d60e01b8152306004820152602481018390526001600160a01b0390911690637eee288d906044015f604051808303815f87803b158015610bc0575f80fd5b505af1158015610bd2573d5f803e3d5ffd5b5050505050565b8282828080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920182905250610c1b93508592508491506122e3565b610c23610de2565b15610c405760405162461bcd60e51b81526004016109459061461e565b6060610ab5610c4d6122d5565b610c6088610c5b89896124b5565b6124e1565b83845f60016125ec565b5f82815260976020526040902060010154610c8481612b1b565b610c8e8383612b2c565b505050565b610c9b612bb2565b610ca481612c2b565b50565b610caf6122d5565b6001600160a01b0316816001600160a01b031614610d275760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610945565b610d318282612c42565b5050565b610d3d612bb2565b610d45612cc6565b565b610d4f612bb2565b6001600160a01b038116610d61575f80fd5b60405147906001600160a01b0383169082156108fc029083905f818181858888f19350505050158015610d96573d5f803e3d5ffd5b50604080516001600160a01b0384168152602081018390525f8183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a15050565b5f80516020614ce88339815191525460ff1690565b610e018688614648565b8051600203610e3657610e1561070c6122d5565b610e315760405162461bcd60e51b815260040161094590614707565b610f76565b5f610e4082612d6d565b60c9549092506001600160a01b0316905063430c2081610e5e6122d5565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015610ea7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ecb919061474b565b80610f58575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa158015610f22573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f46919061474b565b8015610f585750610f5861070c6122d5565b610f745760405162461bcd60e51b815260040161094590614766565b505b610f808789614648565b5f600282511015610fa35760405162461bcd60e51b8152600401610945906147b5565b610ff6610fd65f8460018651610fb9919061480e565b81518110610fc957610fc9614821565b6020026020010151612da7565b835f81518110610fe857610fe8614821565b6020026020010151836122e3565b610ffe610de2565b1561101b5760405162461bcd60e51b81526004016109459061461e565b6110448b6110298b8d614648565b6110338a8c614648565b61103d898b614648565b5f896125ec565b505050505050505050505050565b61105c8789614648565b80516002036110915761107061070c6122d5565b61108c5760405162461bcd60e51b815260040161094590614707565b6111d1565b5f61109b82612d6d565b60c9549092506001600160a01b0316905063430c20816110b96122d5565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015611102573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611126919061474b565b806111b3575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa15801561117d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111a1919061474b565b80156111b357506111b361070c6122d5565b6111cf5760405162461bcd60e51b815260040161094590614766565b505b6111db888a614648565b836002825110156111fe5760405162461bcd60e51b8152600401610945906147b5565b611214610fd65f8460018651610fb9919061480e565b61121c610de2565b156112395760405162461bcd60e51b81526004016109459061461e565b60028a146112595760405162461bcd60e51b815260040161094590614835565b6112828c6112678c8e614648565b6112718b8d614648565b61127b8a8c614648565b89896125ec565b50505050505050505050505050565b611299612bb2565b5f5b8151811015610d31576112c68282815181106112b9576112b9614821565b6020026020010151612c2b565b60010161129b565b6112d961070c6122d5565b6112f55760405162461bcd60e51b81526004016109459061458b565b6001600160a01b03811661134b5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610945565b61135481612e59565b61135c611529565b6040516001600160a01b038216903480156108fc02915f818181858888f19350505050158015610d31573d5f803e3d5ffd5b611396612bb2565b610d455f612e70565b6113a7612bb2565b5f5b8151811015610d31576113d48282815181106113c7576113c7614821565b6020026020010151612e59565b6001016113a9565b6113e761070c6122d5565b6114035760405162461bcd60e51b81526004016109459061458b565b6001600160a01b0381166113545760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610945565b611461612bb2565b610d45612ec1565b8282828080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201829052506114ab93508592508491506122e3565b6114b3610de2565b156114d05760405162461bcd60e51b81526004016109459061461e565b60606114e487610c6088610c5b89896124b5565b5050505050505050565b5f9182526097602090815260408084206001600160a01b0393909316845291905290205460ff1690565b611520612bb2565b610ca481612e59565b610d455f80516020614d088339815191526103d06122d5565b61154a612bb2565b60c954604051632678375f60e21b81526001600160a01b03909116906399e0dd7c9061157c908590859060040161487b565b5f604051808303815f87803b158015611593575f80fd5b505af11580156115a5573d5f803e3d5ffd5b505060cb546001600160a01b0316159150610d3190505760cb54604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906115ee908590859060040161487b565b5f604051808303815f87803b158015611605575f80fd5b505af1158015611617573d5f803e3d5ffd5b505050505050565b611627612bb2565b610c8e83838080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250859250612f28915050565b5f6109185f80516020614d08833981519152836114ee565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd6960208201529081018290525f906116d2906060015b6040516020818303038152906040528051906020012090565b5460ff1692915050565b6116e4612bb2565b60ce80546001600160a01b0319166001600160a01b0392909216919091179055565b61170e612bb2565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e80546001600160a01b0319166001600160a01b03831617905550565b5f54610100900460ff161580801561176957505f54600160ff909116105b806117825750303b15801561178257505f5460ff166001145b6117e55760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610945565b5f805460ff191660011790558015611806575f805461ff0019166101001790555b60c980546001600160a01b03199081166001600160a01b038a81169190911790925560ca8054821689841617905560cb8054821688841617905560cc8054821687841617905560ce8054909116918516919091179055611864613042565b61186c613078565b611875826130af565b61187d6130d5565b6040805161036081018252600661032082018181526563727970746f60d01b610340840152825282518084018452818152651dd85b1b195d60d21b602082810191909152808401919091528351808501855260018152600f60fb1b8183015283850152835180850185526003808252621b999d60ea1b82840152606085019190915284518086018652600a815269313637b1b5b1b430b4b760b11b818401526080850152845180860186526007808252663134ba31b7b4b760c91b8285015260a0860191909152855180870187528281526207070760eb1b8185015260c0860152855180870187528281526264616f60e81b8185015260e086015285518087018752828152621e9a5b60ea1b8185015261010086015285518087018752908152663837b63cb3b7b760c91b8184015261012085015284518086018652600b81526a756e73746f707061626c6560a81b81840152610140850152845180860186528381526535b632bb32b960d11b8184015261016085015284518086018652600280825261686960f01b8285015261018086019190915285518087018752848152656b726573757360d01b818501526101a086015285518087018752600580825264616e696d6560d81b828601526101c087019190915286518088018852818152646d616e676160d81b818601526101e087015286518088018852600981526862696e616e6365757360b81b8186015261020087015286518088018852818152647265616c6d60d81b818601526102208701528651808801885291825261676f60f01b82850152610240860191909152855180870187526008815267185b1d1a5b5a5cdd60c21b818501526102608601528551808701875290815264707564677960d81b81840152610280850152845180860186528381526530bab9ba34b760d11b818401526102a08501528451808601865292835265189a5d19d95d60d21b838301526102c08401929092528351808501855291825262706f6760e81b828201526102e083019190915282518084019093526004835263636c617960e01b908301526103008101919091525f5b6019811015611bbb57611bb3828260198110611ba857611ba8614821565b60200201515f612f28565b600101611b8a565b50611be260405180604001604052806003815260200162636f6d60e81b8152506001612f28565b508015610ab5575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050505050565b8686868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920182905250611c7293508592508491506122e3565b611c7a610de2565b15611c975760405162461bcd60e51b81526004016109459061461e565b611cc58a611ca98b610c5b8c8c6124b5565b611cb3888a614648565b611cbd8789614648565b5f60016125ec565b5050505050505050505050565b611cda612bb2565b5f5b81811015610c8e5760c9546001600160a01b03166350960239848484818110611d0757611d07614821565b9050602002016020810190611d1c9190613ddf565b6040516001600160e01b031960e084901b1681526001600160a01b0390911660048201526024015f604051808303815f87803b158015611d5a575f80fd5b505af1158015611d6c573d5f803e3d5ffd5b505060019092019150611cdc9050565b5f82815260976020526040902060010154611d9681612b1b565b610c8e8383612c42565b611daa898b614648565b5f600282511015611dcd5760405162461bcd60e51b8152600401610945906147b5565b611de3610fd65f8460018651610fb9919061480e565b611deb610de2565b15611e085760405162461bcd60e51b81526004016109459061461e565b60028b14611e285760405162461bcd60e51b815260040161094590614835565b611e6c8d8d8d89895f8a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061311392505050565b84341015611ebc5760405162461bcd60e51b815260206004820181905260248201527f4d696e74696e674d616e616765723a204e4f545f454e4f5547485f46554e44536044820152606401610945565b611ecd8d8d8d8d8d8d8d8c5f6132d0565b8434111561128257611edd6122d5565b6001600160a01b03166108fc611ef3873461480e565b6040518115909202915f818181858888f19350505050158015611f18573d5f803e3d5ffd5b5050505050505050505050505050565b611f30612bb2565b611f398161338a565b611f555760405162461bcd60e51b8152600401610945906148a9565b5f81815260cd60205260408120611f6b91613c38565b60405181907f0aa1aff0f830e739d86baf0e6624d6763da02f7733575e0e463886cd062dea6a905f90a250565b611fa0612bb2565b611fa9816133af565b610ca45f82613425565b611fbd8a8c614648565b5f600282511015611fe05760405162461bcd60e51b8152600401610945906147b5565b611ff6610fd65f8460018651610fb9919061480e565b611ffe610de2565b1561201b5760405162461bcd60e51b81526004016109459061461e565b60028c1461203b5760405162461bcd60e51b815260040161094590614835565b61207f8e8e8e8a898b8a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061311392505050565b856001600160a01b03166323b872dd6120966122d5565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152306024820152604481018890526064016020604051808303815f875af11580156120e6573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061210a919061474b565b61214e5760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610945565b611f188e8e8e8e8e8e8e8c8e6132d0565b612167612bb2565b6040516370a0823160e01b81523060048201525f906001600160a01b038416906370a0823190602401602060405180830381865afa1580156121ab573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906121cf91906148eb565b60405163a9059cbb60e01b81526001600160a01b038481166004830152602482018390529192509084169063a9059cbb906044016020604051808303815f875af115801561221f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612243919061474b565b6122875760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610945565b604080516001600160a01b0384811682526020820184905285168183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a1505050565b5f6122de61342f565b905090565b6122ec8361338a565b6123085760405162461bcd60e51b8152600401610945906148a9565b5f83815260cf602052604090205460ff1615156001600160401b0382161515146123835760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544c445f455850495241424c455f4d496044820152650a69a82a886960d31b6064820152608401610945565b5f6123b4836040805180820182525f8082526020918201528151808301909252825182529182019181019190915290565b9050600a815f0151111561245a576123dd6123d1825f600a613474565b80516020909101512090565b7fb551e0305c8163b812374b8e78b577c77f226f6f10c5ad03e52699578fbc34b80361245a5760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544f4b454e5f4c4142454c5f50524f4860448201526512509255115160d21b6064820152608401610945565b612463836134b2565b6124af5760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a204c4142454c5f494e56414c49440000006044820152606401610945565b50505050565b606082826040516020016124ca929190614902565b604051602081830303815290604052905092915050565b60408051600280825260608281019093525f9190816020015b60608152602001906001900390816124fa57905050905082815f8151811061252457612524614821565b602002602001018190525060cd5f8581526020019081526020015f20805461254b90614929565b80601f016020809104026020016040519081016040528092919081815260200182805461257790614929565b80156125c25780601f10612599576101008083540402835291602001916125c2565b820191905f5260205f20905b8154815290600101906020018083116125a557829003601f168201915b5050505050816001815181106125da576125da614821565b60209081029190910101529392505050565b5f805f6125f888612d6d565b9150915083801561260a575060028851115b801561268a575060c9546040516331a9108f60e11b8152600481018390526001600160a01b038b8116921690636352211e90602401602060405180830381865afa15801561265a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061267e9190614961565b6001600160a01b031614155b156126ea5760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e616765723a20524556455253455f5245434f52445f4e60448201526913d517d0531313d5d15160b21b6064820152608401610945565b60c954604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401602060405180830381865afa158015612731573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612755919061474b565b8015612842575060c9546040516331a9108f60e11b81526004810184905230916001600160a01b031690636352211e90602401602060405180830381865afa1580156127a3573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906127c79190614961565b6001600160a01b03161480612842575060c95460405163d9548e5360e01b8152600481018490526001600160a01b039091169063d9548e5390602401602060405180830381865afa15801561281e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612842919061474b565b15612929576001600160401b038516156128bf5760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e906044015f604051808303815f87803b1580156128a8575f80fd5b505af11580156128ba573d5f803e3d5ffd5b505050505b60c954604051630fb8df0360e11b81526001600160a01b0390911690631f71be06906128f7908c908c908c908c908b906004016149d4565b5f604051808303815f87803b15801561290e575f80fd5b505af1158015612920573d5f803e3d5ffd5b50505050612b0f565b61293282613606565b61293b88613665565b8015612948575087516002145b801561295b57506001600160401b038516155b15612a325760ca5488516001600160a01b039091169063c36c2125908b908b905f9061298957612989614821565b602090810291909101015160cc546040516001600160e01b031960e086901b1681526129c39392916001600160a01b031690600401614a32565b5f604051808303815f87803b1580156129da575f80fd5b505af11580156129ec573d5f803e3d5ffd5b505050505f87511115612a2d5760cc54604051633a0deb9d60e21b81526001600160a01b039091169063e837ae74906128f7908a908a908790600401614a66565b612b0f565b60c95460405163ba5d40b760e01b81526001600160a01b039091169063ba5d40b790612a6a908c908c908c908c908b906004016149d4565b5f604051808303815f87803b158015612a81575f80fd5b505af1158015612a93573d5f803e3d5ffd5b505050506001600160401b03851615612b0f5760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e906044015f604051808303815f87803b158015612af8575f80fd5b505af1158015612b0a573d5f803e3d5ffd5b505050505b50979650505050505050565b610ca481612b276122d5565b6136bd565b612b3682826114ee565b610d31575f8281526097602090815260408083206001600160a01b03851684529091529020805460ff19166001179055612b6e6122d5565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b612bba6122d5565b6001600160a01b0316612bd56033546001600160a01b031690565b6001600160a01b031614610d455760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610945565b610ca45f80516020614d0883398151915282611d7c565b612c4c82826114ee565b15610d31575f8281526097602090815260408083206001600160a01b03851684529091529020805460ff19169055612c826122d5565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612cce610de2565b612d115760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881393d517d4105554d15160621b6044820152606401610945565b5f80516020614ce8833981519152805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa612d506122d5565b6040516001600160a01b03909116815260200160405180910390a1565b80515f9081905b8015612da157829150612d8d8285610fb960018561480e565b925080612d9981614a9b565b915050612d74565b50915091565b5f81515f03612df85760405162461bcd60e51b815260206004820152601b60248201527f4d696e74696e674d616e616765723a204c4142454c5f454d50545900000000006044820152606401610945565b8282604051602001612e0a9190614ab0565b60405160208183030381529060405280519060200120604051602001612e3a929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b610ca45f80516020614d0883398151915282613425565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b612ec9610de2565b15612ee65760405162461bcd60e51b81526004016109459061461e565b5f80516020614ce8833981519152805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258612d506122d5565b5f612f335f84612da7565b5f81815260cd60205260409020909150612f4d8482614b0f565b505f81815260cf602052604090819020805460ff19168415151790555181907f4fce6f6e172b04eaa80325d8e3b0180a34945000f3e214605039e8420fdf898090612f999086906141f9565b60405180910390a260c954604051634f558e7960e01b8152600481018390526001600160a01b0390911690634f558e7990602401602060405180830381865afa158015612fe8573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061300c919061474b565b610c8e5760c9546040516307befae360e51b81526001600160a01b039091169063f7df5c6090610a8c9084908790600401614bca565b5f54610100900460ff166130685760405162461bcd60e51b815260040161094590614bea565b610d456130736122d5565b612e70565b5f54610100900460ff1661309e5760405162461bcd60e51b815260040161094590614bea565b610d455f6130aa6122d5565b613425565b5f54610100900460ff1661170e5760405162461bcd60e51b815260040161094590614bea565b5f54610100900460ff166130fb5760405162461bcd60e51b815260040161094590614bea565b5f80516020614ce8833981519152805460ff19169055565b5f6131266131218789614648565b612d6d565b506040516bffffffffffffffffffffffff1930606090811b821660208401524660348401528b811b82166054840152606883018490526001600160c01b031960c08a901b1660888401526090830188905286901b1660b08201529091505f906132009084906131fa9060c401604051602081830303815290604052805190602001206040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c81018290525f90605c01604051602081830303815290604052805190602001209050919050565b90613721565b905061320b81611667565b6132635760405162461bcd60e51b8152602060048201526024808201527f4d696e74696e674d616e616765723a205349474e45525f49535f4e4f545f4d49604482015263272a22a960e11b6064820152608401610945565b42866001600160401b0316116132c55760405162461bcd60e51b815260206004820152602160248201527f4d696e74696e674d616e616765723a20455850495245445f5349474e415455526044820152604560f81b6064820152608401610945565b505050505050505050565b5f6133158a6132df8a8c614648565b6132e9898b614648565b6132f3888a614648565b5f8f6001600160a01b03166133066122d5565b6001600160a01b0316146125ec565b9050896001600160a01b03166133296122d5565b6001600160a01b0316827fa545b6fd3355e8d57f8c8147bafe740545bd3ea1f94bef2576a6d532a7c3b60586866040516133769291909182526001600160a01b0316602082015260400190565b60405180910390a450505050505050505050565b5f81815260cd6020526040812080548291906133a590614929565b9050119050919050565b6133b7612bb2565b6001600160a01b03811661341c5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610945565b610ca481612e70565b610d318282612b2c565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e545f906001600160a01b0316330361346f575060331936013560601c90565b503390565b604080518082019091525f808252602082015260405180604001604052808381526020018486602001516134a89190614c35565b9052949350505050565b5f81515f036134c257505f919050565b60208201805160f81c603081108015906134e0575060398160ff1611155b158015613502575060618160ff16101580156135005750607a8160ff1611155b155b1561351057505f9392505050565b8351600181111561357d576135328361352a60018461480e565b015160f81c90565b915060308260ff161015801561354c575060398260ff1611155b15801561356e575060618260ff161015801561356c5750607a8260ff1611155b155b1561357d57505f949350505050565b60015b61358b60018361480e565b8110156135fa578381015160f81c9250602d83148015906135c1575060308360ff16101580156135bf575060398360ff1611155b155b80156135e2575060618360ff16101580156135e05750607a8360ff1611155b155b156135f257505f95945050505050565b600101613580565b50600195945050505050565b61360f8161167f565b1561365c5760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a20544f4b454e5f424c4f434b45440000006044820152606401610945565b610ca481613743565b5f8061367a5f8460018651610fb9919061480e565b60ca549091506001600160a01b0316158015906136b65750807f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f145b9392505050565b6136c782826114ee565b610d31576136df816001600160a01b031660146137c7565b6136ea8360206137c7565b6040516020016136fb929190614c48565b60408051601f198184030181529082905262461bcd60e51b8252610945916004016141f9565b5f805f61372e858561395c565b9150915061373b8161399e565b509392505050565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd696020820152908101829052600190613782906060016116b9565b805460ff19169115159190911790556040518181527f2ce5d9351b1d590d5a066db0d2dc7602d55f092506a83a7ee8c4d78ee357d75a9060200160405180910390a150565b60605f6137d5836002614cbc565b6137e0906002614c35565b6001600160401b038111156137f7576137f7613fc6565b6040519080825280601f01601f191660200182016040528015613821576020820181803683370190505b509050600360fc1b815f8151811061383b5761383b614821565b60200101906001600160f81b03191690815f1a905350600f60fb1b8160018151811061386957613869614821565b60200101906001600160f81b03191690815f1a9053505f61388b846002614cbc565b613896906001614c35565b90505b600181111561390d576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106138ca576138ca614821565b1a60f81b8282815181106138e0576138e0614821565b60200101906001600160f81b03191690815f1a90535060049490941c9361390681614a9b565b9050613899565b5083156136b65760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610945565b5f808251604103613990576020830151604084015160608501515f1a61398487828585613b53565b94509450505050613997565b505f905060025b9250929050565b5f8160048111156139b1576139b1614cd3565b036139b95750565b60018160048111156139cd576139cd614cd3565b03613a1a5760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152606401610945565b6002816004811115613a2e57613a2e614cd3565b03613a7b5760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610945565b6003816004811115613a8f57613a8f614cd3565b03613ae75760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b6064820152608401610945565b6004816004811115613afb57613afb614cd3565b03610ca45760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c604482015261756560f01b6064820152608401610945565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613b8857505f90506003613c2f565b8460ff16601b14158015613ba057508460ff16601c14155b15613bb057505f90506004613c2f565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613c01573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b038116613c29575f60019250925050613c2f565b91505f90505b94509492505050565b508054613c4490614929565b5f825580601f10613c53575050565b601f0160209004905f5260205f2090810190610ca491905b80821115613c7e575f8155600101613c6b565b5090565b5f60208284031215613c92575f80fd5b81356001600160e01b0319811681146136b6575f80fd5b6001600160401b0381168114610ca4575f80fd5b8035613cc881613ca9565b919050565b5f8060408385031215613cde575f80fd5b8235613ce981613ca9565b946020939093013593505050565b5f60208284031215613d07575f80fd5b5035919050565b5f8083601f840112613d1e575f80fd5b5081356001600160401b03811115613d34575f80fd5b602083019150836020828501011115613997575f80fd5b5f805f60408486031215613d5d575f80fd5b8335925060208401356001600160401b03811115613d79575f80fd5b613d8586828701613d0e565b9497909650939450505050565b6001600160a01b0381168114610ca4575f80fd5b8035613cc881613d92565b5f8060408385031215613dc2575f80fd5b823591506020830135613dd481613d92565b809150509250929050565b5f60208284031215613def575f80fd5b81356136b681613d92565b5f8083601f840112613e0a575f80fd5b5081356001600160401b03811115613e20575f80fd5b6020830191508360208260051b8501011115613997575f80fd5b8015158114610ca4575f80fd5b5f805f805f805f8060a0898b031215613e5e575f80fd5b8835613e6981613d92565b975060208901356001600160401b0380821115613e84575f80fd5b613e908c838d01613dfa565b909950975060408b0135915080821115613ea8575f80fd5b613eb48c838d01613dfa565b909750955060608b0135915080821115613ecc575f80fd5b50613ed98b828c01613dfa565b9094509250506080890135613eed81613e3a565b809150509295985092959890939650565b5f805f805f805f805f60c08a8c031215613f16575f80fd5b8935613f2181613d92565b985060208a01356001600160401b0380821115613f3c575f80fd5b613f488d838e01613dfa565b909a50985060408c0135915080821115613f60575f80fd5b613f6c8d838e01613dfa565b909850965060608c0135915080821115613f84575f80fd5b50613f918c828d01613dfa565b90955093505060808a0135613fa581613ca9565b915060a08a0135613fb581613e3a565b809150509295985092959850929598565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f191681016001600160401b038111828210171561400257614002613fc6565b604052919050565b5f6001600160401b0382111561402257614022613fc6565b5060051b60200190565b5f602080838503121561403d575f80fd5b82356001600160401b03811115614052575f80fd5b8301601f81018513614062575f80fd5b80356140756140708261400a565b613fda565b81815260059190911b82018301908381019087831115614093575f80fd5b928401925b828410156140ba5783356140ab81613d92565b82529284019290840190614098565b979650505050505050565b5f805f80606085870312156140d8575f80fd5b84356140e381613d92565b93506020850135925060408501356001600160401b03811115614104575f80fd5b61411087828801613d0e565b95989497509550505050565b5f806020838503121561412d575f80fd5b82356001600160401b03811115614142575f80fd5b61414e85828601613d0e565b90969095509350505050565b5f805f6040848603121561416c575f80fd5b83356001600160401b03811115614181575f80fd5b61418d86828701613d0e565b90945092505060208401356141a181613e3a565b809150509250925092565b5f5b838110156141c65781810151838201526020016141ae565b50505f910152565b5f81518084526141e58160208601602086016141ac565b601f01601f19169290920160200192915050565b602081525f6136b660208301846141ce565b5f805f805f8060c08789031215614220575f80fd5b863561422b81613d92565b9550602087013561423b81613d92565b9450604087013561424b81613d92565b9350606087013561425b81613d92565b9250608087013561426b81613d92565b915060a087013561427b81613d92565b809150509295509295509295565b5f805f805f805f8060a0898b0312156142a0575f80fd5b88356142ab81613d92565b97506020890135965060408901356001600160401b03808211156142cd575f80fd5b6142d98c838d01613d0e565b909850965060608b01359150808211156142f1575f80fd5b6142fd8c838d01613dfa565b909650945060808b0135915080821115614315575f80fd5b506143228b828c01613dfa565b999c989b5096995094979396929594505050565b5f8060208385031215614347575f80fd5b82356001600160401b0381111561435c575f80fd5b61414e85828601613dfa565b5f805f805f805f805f805f60e08c8e031215614382575f80fd5b61438b8c613da6565b9a506001600160401b038060208e013511156143a5575f80fd5b6143b58e60208f01358f01613dfa565b909b50995060408d01358110156143ca575f80fd5b6143da8e60408f01358f01613dfa565b909950975060608d01358110156143ef575f80fd5b6143ff8e60608f01358f01613dfa565b909750955061441060808e01613cbd565b945060a08d013593508060c08e01351115614429575f80fd5b5061443a8d60c08e01358e01613d0e565b81935080925050509295989b509295989b9093969950565b5f805f805f805f805f805f806101008d8f03121561446e575f80fd5b6144778d613da6565b9b506001600160401b0360208e01351115614490575f80fd5b6144a08e60208f01358f01613dfa565b909b5099506001600160401b0360408e013511156144bc575f80fd5b6144cc8e60408f01358f01613dfa565b90995097506001600160401b0360608e013511156144e8575f80fd5b6144f88e60608f01358f01613dfa565b909750955061450960808e01613cbd565b945061451760a08e01613da6565b935060c08d013592506001600160401b0360e08e01351115614537575f80fd5b6145478e60e08f01358f01613d0e565b81935080925050509295989b509295989b509295989b565b5f8060408385031215614570575f80fd5b823561457b81613d92565b91506020830135613dd481613d92565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b5f602082840312156145d0575f80fd5b81516136b681613ca9565b60208082526023908201527f4d696e74696e674d616e616765723a20544f4b454e5f4e4f545f455850495241604082015262424c4560e81b606082015260800190565b60208082526010908201526f14185d5cd8589b194e8814105554d15160821b604082015260600190565b5f6146556140708461400a565b80848252602080830192508560051b850136811115614672575f80fd5b855b818110156146fb5780356001600160401b0380821115614692575f80fd5b90880190601f36818401126146a5575f80fd5b8235828111156146b7576146b7613fc6565b6146c8818301601f19168801613fda565b925080835236878286010111156146dd575f80fd5b80878501888501375f90830187015250865250938201938201614674565b50919695505050505050565b60208082526024908201527f4d696e74696e674d616e616765723a2043414c4c45525f49535f4e4f545f4d49604082015263272a22a960e11b606082015260800190565b5f6020828403121561475b575f80fd5b81516136b681613e3a565b6020808252602f908201527f4d696e74696e674d616e616765723a2053454e4445525f49535f4e4f545f415060408201526e282927ab22a22fa7a92fa7aba722a960891b606082015260800190565b60208082526025908201527f4d696e74696e674d616e616765723a204c4142454c535f4c454e4754485f42456040820152642627abaf9960d91b606082015260800190565b634e487b7160e01b5f52601160045260245ffd5b81810381811115610918576109186147fa565b634e487b7160e01b5f52603260045260245ffd5b60208082526026908201527f4d696e74696e674d616e616765723a20535542444f4d41494e535f4e4f545f41604082015265131313d5d15160d21b606082015260800190565b60208152816020820152818360408301375f818301604090810191909152601f909201601f19160101919050565b60208082526022908201527f4d696e74696e674d616e616765723a20544c445f4e4f545f5245474953544552604082015261115160f21b606082015260800190565b5f602082840312156148fb575f80fd5b5051919050565b6b756e732d646576746573742d60a01b81528183600c8301375f9101600c01908152919050565b600181811c9082168061493d57607f821691505b60208210810361495b57634e487b7160e01b5f52602260045260245ffd5b50919050565b5f60208284031215614971575f80fd5b81516136b681613d92565b5f8282518085526020808601955060208260051b840101602086015f5b848110156149c757601f198684030189526149b58383516141ce565b98840198925090830190600101614999565b5090979650505050505050565b6001600160a01b038616815260a0602082018190525f906149f79083018761497c565b8281036040840152614a09818761497c565b90508281036060840152614a1d818661497c565b91505082151560808301529695505050505050565b5f60018060a01b03808616835260606020840152614a5360608401866141ce565b9150808416604084015250949350505050565b606081525f614a78606083018661497c565b8281036020840152614a8a818661497c565b915050826040830152949350505050565b5f81614aa957614aa96147fa565b505f190190565b5f8251614ac18184602087016141ac565b9190910192915050565b601f821115610c8e57805f5260205f20601f840160051c81016020851015614af05750805b601f840160051c820191505b81811015610bd2575f8155600101614afc565b81516001600160401b03811115614b2857614b28613fc6565b614b3c81614b368454614929565b84614acb565b602080601f831160018114614b6f575f8415614b585750858301515b5f19600386901b1c1916600185901b178555611617565b5f85815260208120601f198616915b82811015614b9d57888601518255948401946001909101908401614b7e565b5085821015614bba57878501515f19600388901b60f8161c191681555b5050505050600190811b01905550565b828152604060208201525f614be260408301846141ce565b949350505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b80820180821115610918576109186147fa565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081525f8351614c7f8160178501602088016141ac565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351614cb08160288401602088016141ac565b01602801949350505050565b8082028115828204841417610918576109186147fa565b634e487b7160e01b5f52602160045260245ffdfe5496787fc1ebdfeba375028c1865f13fbb1d63c0caa356ccc1b29a80f3ebd6229f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000818000a", - "deployedBytecode": "0x6080604052600436106102a5575f3560e01c8063906cecc11161016f578063b9998a24116100d8578063d547741f11610092578063f2fde38b1161006d578063f2fde38b1461085b578063f5243bc41461087a578063f940e38514610899578063ffa1ad74146108b8575f80fd5b8063d547741f1461080a578063d7db74c714610829578063ec5273891461083c575f80fd5b8063b9998a241461074f578063cc2a9a5b1461076e578063cc2c3fc41461078d578063ceeb4f50146107ac578063d1f5692c146107cb578063d5391393146107ea575f80fd5b8063a3a3f7f611610129578063a3a3f7f614610668578063a3f4df7e14610687578063a849d65c146106d3578063aa271e1a146106f2578063b0aa98c714610711578063b3ab15fb14610730575f80fd5b8063906cecc1146105c557806391d14854146105e4578063983b2d5614610603578063986502751461062257806399e0dd7c14610636578063a217fddf14610655575f80fd5b80635b6fa8db11610211578063715018a6116101cb578063715018a61461052f57806371e2a6571461054357806377a2a5891461056257806381c81d35146105815780638456cb59146105945780638da5cb5b146105a8575f80fd5b80635b6fa8db1461048c5780635c975abb146104ab5780635cd7e3b3146104bf5780635e22cd86146104de5780635fc1964f146104fd578063634486da1461051c575f80fd5b80633092afd5116102625780633092afd51461039757806336568abe146103b65780633f41b614146103d55780633f4ba83a1461040c57806351cff8d914610420578063572b6c051461043f575f80fd5b806301ffc9a7146102a95780631edb948e146102dd57806320c5429b146102fe578063248a9ca31461031d578063268b15ed146103595780632f2ff15d14610378575b5f80fd5b3480156102b4575f80fd5b506102c86102c3366004613c82565b6108e8565b60405190151581526020015b60405180910390f35b3480156102e8575f80fd5b506102fc6102f7366004613ccd565b61091e565b005b348015610309575f80fd5b506102fc610318366004613cf7565b610abe565b348015610328575f80fd5b5061034b610337366004613cf7565b5f9081526097602052604090206001015490565b6040519081526020016102d4565b348015610364575f80fd5b506102fc610373366004613d4b565b610bd9565b348015610383575f80fd5b506102fc610392366004613db1565b610c6a565b3480156103a2575f80fd5b506102fc6103b1366004613ddf565b610c93565b3480156103c1575f80fd5b506102fc6103d0366004613db1565b610ca7565b3480156103e0575f80fd5b5060c9546103f4906001600160a01b031681565b6040516001600160a01b0390911681526020016102d4565b348015610417575f80fd5b506102fc610d35565b34801561042b575f80fd5b506102fc61043a366004613ddf565b610d47565b34801561044a575f80fd5b506102c8610459366004613ddf565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546001600160a01b0390811691161490565b348015610497575f80fd5b5060cc546103f4906001600160a01b031681565b3480156104b6575f80fd5b506102c8610de2565b3480156104ca575f80fd5b506102fc6104d9366004613e47565b610df7565b3480156104e9575f80fd5b506102fc6104f8366004613efe565b611052565b348015610508575f80fd5b506102fc61051736600461402c565b611291565b6102fc61052a366004613ddf565b6112ce565b34801561053a575f80fd5b506102fc61138e565b34801561054e575f80fd5b506102fc61055d36600461402c565b61139f565b34801561056d575f80fd5b5060ce546103f4906001600160a01b031681565b6102fc61058f366004613ddf565b6113dc565b34801561059f575f80fd5b506102fc611459565b3480156105b3575f80fd5b506033546001600160a01b03166103f4565b3480156105d0575f80fd5b506102fc6105df3660046140c5565b611469565b3480156105ef575f80fd5b506102c86105fe366004613db1565b6114ee565b34801561060e575f80fd5b506102fc61061d366004613ddf565b611518565b34801561062d575f80fd5b506102fc611529565b348015610641575f80fd5b506102fc61065036600461411c565b611542565b348015610660575f80fd5b5061034b5f81565b348015610673575f80fd5b506102fc61068236600461415a565b61161f565b348015610692575f80fd5b506106c6604051806040016040528060148152602001732aa7299d1026b4b73a34b7339026b0b730b3b2b960611b81525081565b6040516102d491906141f9565b3480156106de575f80fd5b5060cb546103f4906001600160a01b031681565b3480156106fd575f80fd5b506102c861070c366004613ddf565b611667565b34801561071c575f80fd5b506102c861072b366004613cf7565b61167f565b34801561073b575f80fd5b506102fc61074a366004613ddf565b6116dc565b34801561075a575f80fd5b506102fc610769366004613ddf565b611706565b348015610779575f80fd5b506102fc61078836600461420b565b61174b565b348015610798575f80fd5b5060ca546103f4906001600160a01b031681565b3480156107b7575f80fd5b506102fc6107c6366004614289565b611c30565b3480156107d6575f80fd5b506102fc6107e5366004614336565b611cd2565b3480156107f5575f80fd5b5061034b5f80516020614d0883398151915281565b348015610815575f80fd5b506102fc610824366004613db1565b611d7c565b6102fc610837366004614368565b611da0565b348015610847575f80fd5b506102fc610856366004613cf7565b611f28565b348015610866575f80fd5b506102fc610875366004613ddf565b611f98565b348015610885575f80fd5b506102fc610894366004614452565b611fb3565b3480156108a4575f80fd5b506102fc6108b336600461455f565b61215f565b3480156108c3575f80fd5b506106c660405180604001604052806005815260200164302e352e3160d81b81525081565b5f6001600160e01b03198216637965db0b60e01b148061091857506301ffc9a760e01b6001600160e01b03198316145b92915050565b61092961070c6122d5565b61094e5760405162461bcd60e51b81526004016109459061458b565b60405180910390fd5b60c95460405163baef73e960e01b8152600481018390525f916001600160a01b03169063baef73e990602401602060405180830381865afa158015610995573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109b991906145c0565b9050806001600160401b03165f036109e35760405162461bcd60e51b8152600401610945906145db565b806001600160401b0316836001600160401b031611610a505760405162461bcd60e51b815260206004820152602360248201527f4d696e74696e674d616e616765723a204558504952595f4e4f545f455854454e60448201526211115160ea1b6064820152608401610945565b60c954604051631fb9763760e11b81526001600160401b0385166004820152602481018490526001600160a01b0390911690633f72ec6e906044015b5f604051808303815f87803b158015610aa3575f80fd5b505af1158015610ab5573d5f803e3d5ffd5b50505050505050565b610ac961070c6122d5565b610ae55760405162461bcd60e51b81526004016109459061458b565b60c95460405163baef73e960e01b8152600481018390526001600160a01b039091169063baef73e990602401602060405180830381865afa158015610b2c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b5091906145c0565b6001600160401b03165f03610b775760405162461bcd60e51b8152600401610945906145db565b60c954604051637eee288d60e01b8152306004820152602481018390526001600160a01b0390911690637eee288d906044015f604051808303815f87803b158015610bc0575f80fd5b505af1158015610bd2573d5f803e3d5ffd5b5050505050565b8282828080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920182905250610c1b93508592508491506122e3565b610c23610de2565b15610c405760405162461bcd60e51b81526004016109459061461e565b6060610ab5610c4d6122d5565b610c6088610c5b89896124b5565b6124e1565b83845f60016125ec565b5f82815260976020526040902060010154610c8481612b1b565b610c8e8383612b2c565b505050565b610c9b612bb2565b610ca481612c2b565b50565b610caf6122d5565b6001600160a01b0316816001600160a01b031614610d275760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610945565b610d318282612c42565b5050565b610d3d612bb2565b610d45612cc6565b565b610d4f612bb2565b6001600160a01b038116610d61575f80fd5b60405147906001600160a01b0383169082156108fc029083905f818181858888f19350505050158015610d96573d5f803e3d5ffd5b50604080516001600160a01b0384168152602081018390525f8183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a15050565b5f80516020614ce88339815191525460ff1690565b610e018688614648565b8051600203610e3657610e1561070c6122d5565b610e315760405162461bcd60e51b815260040161094590614707565b610f76565b5f610e4082612d6d565b60c9549092506001600160a01b0316905063430c2081610e5e6122d5565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015610ea7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ecb919061474b565b80610f58575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa158015610f22573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f46919061474b565b8015610f585750610f5861070c6122d5565b610f745760405162461bcd60e51b815260040161094590614766565b505b610f808789614648565b5f600282511015610fa35760405162461bcd60e51b8152600401610945906147b5565b610ff6610fd65f8460018651610fb9919061480e565b81518110610fc957610fc9614821565b6020026020010151612da7565b835f81518110610fe857610fe8614821565b6020026020010151836122e3565b610ffe610de2565b1561101b5760405162461bcd60e51b81526004016109459061461e565b6110448b6110298b8d614648565b6110338a8c614648565b61103d898b614648565b5f896125ec565b505050505050505050505050565b61105c8789614648565b80516002036110915761107061070c6122d5565b61108c5760405162461bcd60e51b815260040161094590614707565b6111d1565b5f61109b82612d6d565b60c9549092506001600160a01b0316905063430c20816110b96122d5565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015611102573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611126919061474b565b806111b3575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa15801561117d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111a1919061474b565b80156111b357506111b361070c6122d5565b6111cf5760405162461bcd60e51b815260040161094590614766565b505b6111db888a614648565b836002825110156111fe5760405162461bcd60e51b8152600401610945906147b5565b611214610fd65f8460018651610fb9919061480e565b61121c610de2565b156112395760405162461bcd60e51b81526004016109459061461e565b60028a146112595760405162461bcd60e51b815260040161094590614835565b6112828c6112678c8e614648565b6112718b8d614648565b61127b8a8c614648565b89896125ec565b50505050505050505050505050565b611299612bb2565b5f5b8151811015610d31576112c68282815181106112b9576112b9614821565b6020026020010151612c2b565b60010161129b565b6112d961070c6122d5565b6112f55760405162461bcd60e51b81526004016109459061458b565b6001600160a01b03811661134b5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610945565b61135481612e59565b61135c611529565b6040516001600160a01b038216903480156108fc02915f818181858888f19350505050158015610d31573d5f803e3d5ffd5b611396612bb2565b610d455f612e70565b6113a7612bb2565b5f5b8151811015610d31576113d48282815181106113c7576113c7614821565b6020026020010151612e59565b6001016113a9565b6113e761070c6122d5565b6114035760405162461bcd60e51b81526004016109459061458b565b6001600160a01b0381166113545760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610945565b611461612bb2565b610d45612ec1565b8282828080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201829052506114ab93508592508491506122e3565b6114b3610de2565b156114d05760405162461bcd60e51b81526004016109459061461e565b60606114e487610c6088610c5b89896124b5565b5050505050505050565b5f9182526097602090815260408084206001600160a01b0393909316845291905290205460ff1690565b611520612bb2565b610ca481612e59565b610d455f80516020614d088339815191526103d06122d5565b61154a612bb2565b60c954604051632678375f60e21b81526001600160a01b03909116906399e0dd7c9061157c908590859060040161487b565b5f604051808303815f87803b158015611593575f80fd5b505af11580156115a5573d5f803e3d5ffd5b505060cb546001600160a01b0316159150610d3190505760cb54604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906115ee908590859060040161487b565b5f604051808303815f87803b158015611605575f80fd5b505af1158015611617573d5f803e3d5ffd5b505050505050565b611627612bb2565b610c8e83838080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250859250612f28915050565b5f6109185f80516020614d08833981519152836114ee565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd6960208201529081018290525f906116d2906060015b6040516020818303038152906040528051906020012090565b5460ff1692915050565b6116e4612bb2565b60ce80546001600160a01b0319166001600160a01b0392909216919091179055565b61170e612bb2565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e80546001600160a01b0319166001600160a01b03831617905550565b5f54610100900460ff161580801561176957505f54600160ff909116105b806117825750303b15801561178257505f5460ff166001145b6117e55760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610945565b5f805460ff191660011790558015611806575f805461ff0019166101001790555b60c980546001600160a01b03199081166001600160a01b038a81169190911790925560ca8054821689841617905560cb8054821688841617905560cc8054821687841617905560ce8054909116918516919091179055611864613042565b61186c613078565b611875826130af565b61187d6130d5565b6040805161036081018252600661032082018181526563727970746f60d01b610340840152825282518084018452818152651dd85b1b195d60d21b602082810191909152808401919091528351808501855260018152600f60fb1b8183015283850152835180850185526003808252621b999d60ea1b82840152606085019190915284518086018652600a815269313637b1b5b1b430b4b760b11b818401526080850152845180860186526007808252663134ba31b7b4b760c91b8285015260a0860191909152855180870187528281526207070760eb1b8185015260c0860152855180870187528281526264616f60e81b8185015260e086015285518087018752828152621e9a5b60ea1b8185015261010086015285518087018752908152663837b63cb3b7b760c91b8184015261012085015284518086018652600b81526a756e73746f707061626c6560a81b81840152610140850152845180860186528381526535b632bb32b960d11b8184015261016085015284518086018652600280825261686960f01b8285015261018086019190915285518087018752848152656b726573757360d01b818501526101a086015285518087018752600580825264616e696d6560d81b828601526101c087019190915286518088018852818152646d616e676160d81b818601526101e087015286518088018852600981526862696e616e6365757360b81b8186015261020087015286518088018852818152647265616c6d60d81b818601526102208701528651808801885291825261676f60f01b82850152610240860191909152855180870187526008815267185b1d1a5b5a5cdd60c21b818501526102608601528551808701875290815264707564677960d81b81840152610280850152845180860186528381526530bab9ba34b760d11b818401526102a08501528451808601865292835265189a5d19d95d60d21b838301526102c08401929092528351808501855291825262706f6760e81b828201526102e083019190915282518084019093526004835263636c617960e01b908301526103008101919091525f5b6019811015611bbb57611bb3828260198110611ba857611ba8614821565b60200201515f612f28565b600101611b8a565b50611be260405180604001604052806003815260200162636f6d60e81b8152506001612f28565b508015610ab5575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050505050565b8686868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920182905250611c7293508592508491506122e3565b611c7a610de2565b15611c975760405162461bcd60e51b81526004016109459061461e565b611cc58a611ca98b610c5b8c8c6124b5565b611cb3888a614648565b611cbd8789614648565b5f60016125ec565b5050505050505050505050565b611cda612bb2565b5f5b81811015610c8e5760c9546001600160a01b03166350960239848484818110611d0757611d07614821565b9050602002016020810190611d1c9190613ddf565b6040516001600160e01b031960e084901b1681526001600160a01b0390911660048201526024015f604051808303815f87803b158015611d5a575f80fd5b505af1158015611d6c573d5f803e3d5ffd5b505060019092019150611cdc9050565b5f82815260976020526040902060010154611d9681612b1b565b610c8e8383612c42565b611daa898b614648565b5f600282511015611dcd5760405162461bcd60e51b8152600401610945906147b5565b611de3610fd65f8460018651610fb9919061480e565b611deb610de2565b15611e085760405162461bcd60e51b81526004016109459061461e565b60028b14611e285760405162461bcd60e51b815260040161094590614835565b611e6c8d8d8d89895f8a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061311392505050565b84341015611ebc5760405162461bcd60e51b815260206004820181905260248201527f4d696e74696e674d616e616765723a204e4f545f454e4f5547485f46554e44536044820152606401610945565b611ecd8d8d8d8d8d8d8d8c5f6132d0565b8434111561128257611edd6122d5565b6001600160a01b03166108fc611ef3873461480e565b6040518115909202915f818181858888f19350505050158015611f18573d5f803e3d5ffd5b5050505050505050505050505050565b611f30612bb2565b611f398161338a565b611f555760405162461bcd60e51b8152600401610945906148a9565b5f81815260cd60205260408120611f6b91613c38565b60405181907f0aa1aff0f830e739d86baf0e6624d6763da02f7733575e0e463886cd062dea6a905f90a250565b611fa0612bb2565b611fa9816133af565b610ca45f82613425565b611fbd8a8c614648565b5f600282511015611fe05760405162461bcd60e51b8152600401610945906147b5565b611ff6610fd65f8460018651610fb9919061480e565b611ffe610de2565b1561201b5760405162461bcd60e51b81526004016109459061461e565b60028c1461203b5760405162461bcd60e51b815260040161094590614835565b61207f8e8e8e8a898b8a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061311392505050565b856001600160a01b03166323b872dd6120966122d5565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152306024820152604481018890526064016020604051808303815f875af11580156120e6573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061210a919061474b565b61214e5760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610945565b611f188e8e8e8e8e8e8e8c8e6132d0565b612167612bb2565b6040516370a0823160e01b81523060048201525f906001600160a01b038416906370a0823190602401602060405180830381865afa1580156121ab573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906121cf91906148eb565b60405163a9059cbb60e01b81526001600160a01b038481166004830152602482018390529192509084169063a9059cbb906044016020604051808303815f875af115801561221f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612243919061474b565b6122875760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610945565b604080516001600160a01b0384811682526020820184905285168183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a1505050565b5f6122de61342f565b905090565b6122ec8361338a565b6123085760405162461bcd60e51b8152600401610945906148a9565b5f83815260cf602052604090205460ff1615156001600160401b0382161515146123835760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544c445f455850495241424c455f4d496044820152650a69a82a886960d31b6064820152608401610945565b5f6123b4836040805180820182525f8082526020918201528151808301909252825182529182019181019190915290565b9050600a815f0151111561245a576123dd6123d1825f600a613474565b80516020909101512090565b7fb551e0305c8163b812374b8e78b577c77f226f6f10c5ad03e52699578fbc34b80361245a5760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544f4b454e5f4c4142454c5f50524f4860448201526512509255115160d21b6064820152608401610945565b612463836134b2565b6124af5760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a204c4142454c5f494e56414c49440000006044820152606401610945565b50505050565b606082826040516020016124ca929190614902565b604051602081830303815290604052905092915050565b60408051600280825260608281019093525f9190816020015b60608152602001906001900390816124fa57905050905082815f8151811061252457612524614821565b602002602001018190525060cd5f8581526020019081526020015f20805461254b90614929565b80601f016020809104026020016040519081016040528092919081815260200182805461257790614929565b80156125c25780601f10612599576101008083540402835291602001916125c2565b820191905f5260205f20905b8154815290600101906020018083116125a557829003601f168201915b5050505050816001815181106125da576125da614821565b60209081029190910101529392505050565b5f805f6125f888612d6d565b9150915083801561260a575060028851115b801561268a575060c9546040516331a9108f60e11b8152600481018390526001600160a01b038b8116921690636352211e90602401602060405180830381865afa15801561265a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061267e9190614961565b6001600160a01b031614155b156126ea5760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e616765723a20524556455253455f5245434f52445f4e60448201526913d517d0531313d5d15160b21b6064820152608401610945565b60c954604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401602060405180830381865afa158015612731573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612755919061474b565b8015612842575060c9546040516331a9108f60e11b81526004810184905230916001600160a01b031690636352211e90602401602060405180830381865afa1580156127a3573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906127c79190614961565b6001600160a01b03161480612842575060c95460405163d9548e5360e01b8152600481018490526001600160a01b039091169063d9548e5390602401602060405180830381865afa15801561281e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612842919061474b565b15612929576001600160401b038516156128bf5760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e906044015f604051808303815f87803b1580156128a8575f80fd5b505af11580156128ba573d5f803e3d5ffd5b505050505b60c954604051630fb8df0360e11b81526001600160a01b0390911690631f71be06906128f7908c908c908c908c908b906004016149d4565b5f604051808303815f87803b15801561290e575f80fd5b505af1158015612920573d5f803e3d5ffd5b50505050612b0f565b61293282613606565b61293b88613665565b8015612948575087516002145b801561295b57506001600160401b038516155b15612a325760ca5488516001600160a01b039091169063c36c2125908b908b905f9061298957612989614821565b602090810291909101015160cc546040516001600160e01b031960e086901b1681526129c39392916001600160a01b031690600401614a32565b5f604051808303815f87803b1580156129da575f80fd5b505af11580156129ec573d5f803e3d5ffd5b505050505f87511115612a2d5760cc54604051633a0deb9d60e21b81526001600160a01b039091169063e837ae74906128f7908a908a908790600401614a66565b612b0f565b60c95460405163ba5d40b760e01b81526001600160a01b039091169063ba5d40b790612a6a908c908c908c908c908b906004016149d4565b5f604051808303815f87803b158015612a81575f80fd5b505af1158015612a93573d5f803e3d5ffd5b505050506001600160401b03851615612b0f5760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e906044015f604051808303815f87803b158015612af8575f80fd5b505af1158015612b0a573d5f803e3d5ffd5b505050505b50979650505050505050565b610ca481612b276122d5565b6136bd565b612b3682826114ee565b610d31575f8281526097602090815260408083206001600160a01b03851684529091529020805460ff19166001179055612b6e6122d5565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b612bba6122d5565b6001600160a01b0316612bd56033546001600160a01b031690565b6001600160a01b031614610d455760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610945565b610ca45f80516020614d0883398151915282611d7c565b612c4c82826114ee565b15610d31575f8281526097602090815260408083206001600160a01b03851684529091529020805460ff19169055612c826122d5565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612cce610de2565b612d115760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881393d517d4105554d15160621b6044820152606401610945565b5f80516020614ce8833981519152805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa612d506122d5565b6040516001600160a01b03909116815260200160405180910390a1565b80515f9081905b8015612da157829150612d8d8285610fb960018561480e565b925080612d9981614a9b565b915050612d74565b50915091565b5f81515f03612df85760405162461bcd60e51b815260206004820152601b60248201527f4d696e74696e674d616e616765723a204c4142454c5f454d50545900000000006044820152606401610945565b8282604051602001612e0a9190614ab0565b60405160208183030381529060405280519060200120604051602001612e3a929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b610ca45f80516020614d0883398151915282613425565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b612ec9610de2565b15612ee65760405162461bcd60e51b81526004016109459061461e565b5f80516020614ce8833981519152805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258612d506122d5565b5f612f335f84612da7565b5f81815260cd60205260409020909150612f4d8482614b0f565b505f81815260cf602052604090819020805460ff19168415151790555181907f4fce6f6e172b04eaa80325d8e3b0180a34945000f3e214605039e8420fdf898090612f999086906141f9565b60405180910390a260c954604051634f558e7960e01b8152600481018390526001600160a01b0390911690634f558e7990602401602060405180830381865afa158015612fe8573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061300c919061474b565b610c8e5760c9546040516307befae360e51b81526001600160a01b039091169063f7df5c6090610a8c9084908790600401614bca565b5f54610100900460ff166130685760405162461bcd60e51b815260040161094590614bea565b610d456130736122d5565b612e70565b5f54610100900460ff1661309e5760405162461bcd60e51b815260040161094590614bea565b610d455f6130aa6122d5565b613425565b5f54610100900460ff1661170e5760405162461bcd60e51b815260040161094590614bea565b5f54610100900460ff166130fb5760405162461bcd60e51b815260040161094590614bea565b5f80516020614ce8833981519152805460ff19169055565b5f6131266131218789614648565b612d6d565b506040516bffffffffffffffffffffffff1930606090811b821660208401524660348401528b811b82166054840152606883018490526001600160c01b031960c08a901b1660888401526090830188905286901b1660b08201529091505f906132009084906131fa9060c401604051602081830303815290604052805190602001206040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c81018290525f90605c01604051602081830303815290604052805190602001209050919050565b90613721565b905061320b81611667565b6132635760405162461bcd60e51b8152602060048201526024808201527f4d696e74696e674d616e616765723a205349474e45525f49535f4e4f545f4d49604482015263272a22a960e11b6064820152608401610945565b42866001600160401b0316116132c55760405162461bcd60e51b815260206004820152602160248201527f4d696e74696e674d616e616765723a20455850495245445f5349474e415455526044820152604560f81b6064820152608401610945565b505050505050505050565b5f6133158a6132df8a8c614648565b6132e9898b614648565b6132f3888a614648565b5f8f6001600160a01b03166133066122d5565b6001600160a01b0316146125ec565b9050896001600160a01b03166133296122d5565b6001600160a01b0316827fa545b6fd3355e8d57f8c8147bafe740545bd3ea1f94bef2576a6d532a7c3b60586866040516133769291909182526001600160a01b0316602082015260400190565b60405180910390a450505050505050505050565b5f81815260cd6020526040812080548291906133a590614929565b9050119050919050565b6133b7612bb2565b6001600160a01b03811661341c5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610945565b610ca481612e70565b610d318282612b2c565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e545f906001600160a01b0316330361346f575060331936013560601c90565b503390565b604080518082019091525f808252602082015260405180604001604052808381526020018486602001516134a89190614c35565b9052949350505050565b5f81515f036134c257505f919050565b60208201805160f81c603081108015906134e0575060398160ff1611155b158015613502575060618160ff16101580156135005750607a8160ff1611155b155b1561351057505f9392505050565b8351600181111561357d576135328361352a60018461480e565b015160f81c90565b915060308260ff161015801561354c575060398260ff1611155b15801561356e575060618260ff161015801561356c5750607a8260ff1611155b155b1561357d57505f949350505050565b60015b61358b60018361480e565b8110156135fa578381015160f81c9250602d83148015906135c1575060308360ff16101580156135bf575060398360ff1611155b155b80156135e2575060618360ff16101580156135e05750607a8360ff1611155b155b156135f257505f95945050505050565b600101613580565b50600195945050505050565b61360f8161167f565b1561365c5760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a20544f4b454e5f424c4f434b45440000006044820152606401610945565b610ca481613743565b5f8061367a5f8460018651610fb9919061480e565b60ca549091506001600160a01b0316158015906136b65750807f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f145b9392505050565b6136c782826114ee565b610d31576136df816001600160a01b031660146137c7565b6136ea8360206137c7565b6040516020016136fb929190614c48565b60408051601f198184030181529082905262461bcd60e51b8252610945916004016141f9565b5f805f61372e858561395c565b9150915061373b8161399e565b509392505050565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd696020820152908101829052600190613782906060016116b9565b805460ff19169115159190911790556040518181527f2ce5d9351b1d590d5a066db0d2dc7602d55f092506a83a7ee8c4d78ee357d75a9060200160405180910390a150565b60605f6137d5836002614cbc565b6137e0906002614c35565b6001600160401b038111156137f7576137f7613fc6565b6040519080825280601f01601f191660200182016040528015613821576020820181803683370190505b509050600360fc1b815f8151811061383b5761383b614821565b60200101906001600160f81b03191690815f1a905350600f60fb1b8160018151811061386957613869614821565b60200101906001600160f81b03191690815f1a9053505f61388b846002614cbc565b613896906001614c35565b90505b600181111561390d576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106138ca576138ca614821565b1a60f81b8282815181106138e0576138e0614821565b60200101906001600160f81b03191690815f1a90535060049490941c9361390681614a9b565b9050613899565b5083156136b65760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610945565b5f808251604103613990576020830151604084015160608501515f1a61398487828585613b53565b94509450505050613997565b505f905060025b9250929050565b5f8160048111156139b1576139b1614cd3565b036139b95750565b60018160048111156139cd576139cd614cd3565b03613a1a5760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152606401610945565b6002816004811115613a2e57613a2e614cd3565b03613a7b5760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610945565b6003816004811115613a8f57613a8f614cd3565b03613ae75760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b6064820152608401610945565b6004816004811115613afb57613afb614cd3565b03610ca45760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c604482015261756560f01b6064820152608401610945565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613b8857505f90506003613c2f565b8460ff16601b14158015613ba057508460ff16601c14155b15613bb057505f90506004613c2f565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613c01573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b038116613c29575f60019250925050613c2f565b91505f90505b94509492505050565b508054613c4490614929565b5f825580601f10613c53575050565b601f0160209004905f5260205f2090810190610ca491905b80821115613c7e575f8155600101613c6b565b5090565b5f60208284031215613c92575f80fd5b81356001600160e01b0319811681146136b6575f80fd5b6001600160401b0381168114610ca4575f80fd5b8035613cc881613ca9565b919050565b5f8060408385031215613cde575f80fd5b8235613ce981613ca9565b946020939093013593505050565b5f60208284031215613d07575f80fd5b5035919050565b5f8083601f840112613d1e575f80fd5b5081356001600160401b03811115613d34575f80fd5b602083019150836020828501011115613997575f80fd5b5f805f60408486031215613d5d575f80fd5b8335925060208401356001600160401b03811115613d79575f80fd5b613d8586828701613d0e565b9497909650939450505050565b6001600160a01b0381168114610ca4575f80fd5b8035613cc881613d92565b5f8060408385031215613dc2575f80fd5b823591506020830135613dd481613d92565b809150509250929050565b5f60208284031215613def575f80fd5b81356136b681613d92565b5f8083601f840112613e0a575f80fd5b5081356001600160401b03811115613e20575f80fd5b6020830191508360208260051b8501011115613997575f80fd5b8015158114610ca4575f80fd5b5f805f805f805f8060a0898b031215613e5e575f80fd5b8835613e6981613d92565b975060208901356001600160401b0380821115613e84575f80fd5b613e908c838d01613dfa565b909950975060408b0135915080821115613ea8575f80fd5b613eb48c838d01613dfa565b909750955060608b0135915080821115613ecc575f80fd5b50613ed98b828c01613dfa565b9094509250506080890135613eed81613e3a565b809150509295985092959890939650565b5f805f805f805f805f60c08a8c031215613f16575f80fd5b8935613f2181613d92565b985060208a01356001600160401b0380821115613f3c575f80fd5b613f488d838e01613dfa565b909a50985060408c0135915080821115613f60575f80fd5b613f6c8d838e01613dfa565b909850965060608c0135915080821115613f84575f80fd5b50613f918c828d01613dfa565b90955093505060808a0135613fa581613ca9565b915060a08a0135613fb581613e3a565b809150509295985092959850929598565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f191681016001600160401b038111828210171561400257614002613fc6565b604052919050565b5f6001600160401b0382111561402257614022613fc6565b5060051b60200190565b5f602080838503121561403d575f80fd5b82356001600160401b03811115614052575f80fd5b8301601f81018513614062575f80fd5b80356140756140708261400a565b613fda565b81815260059190911b82018301908381019087831115614093575f80fd5b928401925b828410156140ba5783356140ab81613d92565b82529284019290840190614098565b979650505050505050565b5f805f80606085870312156140d8575f80fd5b84356140e381613d92565b93506020850135925060408501356001600160401b03811115614104575f80fd5b61411087828801613d0e565b95989497509550505050565b5f806020838503121561412d575f80fd5b82356001600160401b03811115614142575f80fd5b61414e85828601613d0e565b90969095509350505050565b5f805f6040848603121561416c575f80fd5b83356001600160401b03811115614181575f80fd5b61418d86828701613d0e565b90945092505060208401356141a181613e3a565b809150509250925092565b5f5b838110156141c65781810151838201526020016141ae565b50505f910152565b5f81518084526141e58160208601602086016141ac565b601f01601f19169290920160200192915050565b602081525f6136b660208301846141ce565b5f805f805f8060c08789031215614220575f80fd5b863561422b81613d92565b9550602087013561423b81613d92565b9450604087013561424b81613d92565b9350606087013561425b81613d92565b9250608087013561426b81613d92565b915060a087013561427b81613d92565b809150509295509295509295565b5f805f805f805f8060a0898b0312156142a0575f80fd5b88356142ab81613d92565b97506020890135965060408901356001600160401b03808211156142cd575f80fd5b6142d98c838d01613d0e565b909850965060608b01359150808211156142f1575f80fd5b6142fd8c838d01613dfa565b909650945060808b0135915080821115614315575f80fd5b506143228b828c01613dfa565b999c989b5096995094979396929594505050565b5f8060208385031215614347575f80fd5b82356001600160401b0381111561435c575f80fd5b61414e85828601613dfa565b5f805f805f805f805f805f60e08c8e031215614382575f80fd5b61438b8c613da6565b9a506001600160401b038060208e013511156143a5575f80fd5b6143b58e60208f01358f01613dfa565b909b50995060408d01358110156143ca575f80fd5b6143da8e60408f01358f01613dfa565b909950975060608d01358110156143ef575f80fd5b6143ff8e60608f01358f01613dfa565b909750955061441060808e01613cbd565b945060a08d013593508060c08e01351115614429575f80fd5b5061443a8d60c08e01358e01613d0e565b81935080925050509295989b509295989b9093969950565b5f805f805f805f805f805f806101008d8f03121561446e575f80fd5b6144778d613da6565b9b506001600160401b0360208e01351115614490575f80fd5b6144a08e60208f01358f01613dfa565b909b5099506001600160401b0360408e013511156144bc575f80fd5b6144cc8e60408f01358f01613dfa565b90995097506001600160401b0360608e013511156144e8575f80fd5b6144f88e60608f01358f01613dfa565b909750955061450960808e01613cbd565b945061451760a08e01613da6565b935060c08d013592506001600160401b0360e08e01351115614537575f80fd5b6145478e60e08f01358f01613d0e565b81935080925050509295989b509295989b509295989b565b5f8060408385031215614570575f80fd5b823561457b81613d92565b91506020830135613dd481613d92565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b5f602082840312156145d0575f80fd5b81516136b681613ca9565b60208082526023908201527f4d696e74696e674d616e616765723a20544f4b454e5f4e4f545f455850495241604082015262424c4560e81b606082015260800190565b60208082526010908201526f14185d5cd8589b194e8814105554d15160821b604082015260600190565b5f6146556140708461400a565b80848252602080830192508560051b850136811115614672575f80fd5b855b818110156146fb5780356001600160401b0380821115614692575f80fd5b90880190601f36818401126146a5575f80fd5b8235828111156146b7576146b7613fc6565b6146c8818301601f19168801613fda565b925080835236878286010111156146dd575f80fd5b80878501888501375f90830187015250865250938201938201614674565b50919695505050505050565b60208082526024908201527f4d696e74696e674d616e616765723a2043414c4c45525f49535f4e4f545f4d49604082015263272a22a960e11b606082015260800190565b5f6020828403121561475b575f80fd5b81516136b681613e3a565b6020808252602f908201527f4d696e74696e674d616e616765723a2053454e4445525f49535f4e4f545f415060408201526e282927ab22a22fa7a92fa7aba722a960891b606082015260800190565b60208082526025908201527f4d696e74696e674d616e616765723a204c4142454c535f4c454e4754485f42456040820152642627abaf9960d91b606082015260800190565b634e487b7160e01b5f52601160045260245ffd5b81810381811115610918576109186147fa565b634e487b7160e01b5f52603260045260245ffd5b60208082526026908201527f4d696e74696e674d616e616765723a20535542444f4d41494e535f4e4f545f41604082015265131313d5d15160d21b606082015260800190565b60208152816020820152818360408301375f818301604090810191909152601f909201601f19160101919050565b60208082526022908201527f4d696e74696e674d616e616765723a20544c445f4e4f545f5245474953544552604082015261115160f21b606082015260800190565b5f602082840312156148fb575f80fd5b5051919050565b6b756e732d646576746573742d60a01b81528183600c8301375f9101600c01908152919050565b600181811c9082168061493d57607f821691505b60208210810361495b57634e487b7160e01b5f52602260045260245ffd5b50919050565b5f60208284031215614971575f80fd5b81516136b681613d92565b5f8282518085526020808601955060208260051b840101602086015f5b848110156149c757601f198684030189526149b58383516141ce565b98840198925090830190600101614999565b5090979650505050505050565b6001600160a01b038616815260a0602082018190525f906149f79083018761497c565b8281036040840152614a09818761497c565b90508281036060840152614a1d818661497c565b91505082151560808301529695505050505050565b5f60018060a01b03808616835260606020840152614a5360608401866141ce565b9150808416604084015250949350505050565b606081525f614a78606083018661497c565b8281036020840152614a8a818661497c565b915050826040830152949350505050565b5f81614aa957614aa96147fa565b505f190190565b5f8251614ac18184602087016141ac565b9190910192915050565b601f821115610c8e57805f5260205f20601f840160051c81016020851015614af05750805b601f840160051c820191505b81811015610bd2575f8155600101614afc565b81516001600160401b03811115614b2857614b28613fc6565b614b3c81614b368454614929565b84614acb565b602080601f831160018114614b6f575f8415614b585750858301515b5f19600386901b1c1916600185901b178555611617565b5f85815260208120601f198616915b82811015614b9d57888601518255948401946001909101908401614b7e565b5085821015614bba57878501515f19600388901b60f8161c191681555b5050505050600190811b01905550565b828152604060208201525f614be260408301846141ce565b949350505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b80820180821115610918576109186147fa565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081525f8351614c7f8160178501602088016141ac565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351614cb08160288401602088016141ac565b01602801949350505050565b8082028115828204841417610918576109186147fa565b634e487b7160e01b5f52602160045260245ffdfe5496787fc1ebdfeba375028c1865f13fbb1d63c0caa356ccc1b29a80f3ebd6229f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000818000a", + "bytecode": "0x608060405234801561001057600080fd5b50614f20806100206000396000f3fe6080604052600436106102ae5760003560e01c8063906cecc111610175578063b9998a24116100dc578063d547741f11610095578063f2fde38b1161006f578063f2fde38b14610892578063f5243bc4146108b2578063f940e385146108d2578063ffa1ad74146108f257600080fd5b8063d547741f1461083f578063d7db74c71461085f578063ec5273891461087257600080fd5b8063b9998a241461077d578063cc2a9a5b1461079d578063cc2c3fc4146107bd578063ceeb4f50146107dd578063d1f5692c146107fd578063d53913931461081d57600080fd5b8063a3a3f7f61161012e578063a3a3f7f614610690578063a3f4df7e146106b0578063a849d65c146106fd578063aa271e1a1461071d578063b0aa98c71461073d578063b3ab15fb1461075d57600080fd5b8063906cecc1146105e657806391d1485414610606578063983b2d5614610626578063986502751461064657806399e0dd7c1461065b578063a217fddf1461067b57600080fd5b80635b6fa8db11610219578063715018a6116101d2578063715018a61461054b57806371e2a6571461056057806377a2a5891461058057806381c81d35146105a05780638456cb59146105b35780638da5cb5b146105c857600080fd5b80635b6fa8db146104a35780635c975abb146104c35780635cd7e3b3146104d85780635e22cd86146104f85780635fc1964f14610518578063634486da1461053857600080fd5b80633092afd51161026b5780633092afd5146103a857806336568abe146103c85780633f41b614146103e85780633f4ba83a1461042057806351cff8d914610435578063572b6c051461045557600080fd5b806301ffc9a7146102b35780631edb948e146102e857806320c5429b1461030a578063248a9ca31461032a578063268b15ed146103685780632f2ff15d14610388575b600080fd5b3480156102bf57600080fd5b506102d36102ce366004613dc4565b610923565b60405190151581526020015b60405180910390f35b3480156102f457600080fd5b50610308610303366004613e13565b61095a565b005b34801561031657600080fd5b50610308610325366004613e3f565b610b03565b34801561033657600080fd5b5061035a610345366004613e3f565b60009081526097602052604090206001015490565b6040519081526020016102df565b34801561037457600080fd5b50610308610383366004613e99565b610c26565b34801561039457600080fd5b506103086103a3366004613f04565b610cb9565b3480156103b457600080fd5b506103086103c3366004613f34565b610ce3565b3480156103d457600080fd5b506103086103e3366004613f04565b610cf7565b3480156103f457600080fd5b5060c954610408906001600160a01b031681565b6040516001600160a01b0390911681526020016102df565b34801561042c57600080fd5b50610308610d85565b34801561044157600080fd5b50610308610450366004613f34565b610d97565b34801561046157600080fd5b506102d3610470366004613f34565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546001600160a01b0390811691161490565b3480156104af57600080fd5b5060cc54610408906001600160a01b031681565b3480156104cf57600080fd5b506102d3610e37565b3480156104e457600080fd5b506103086104f3366004613fa3565b610e4d565b34801561050457600080fd5b50610308610513366004614062565b6110b1565b34801561052457600080fd5b5061030861053336600461419c565b6112f6565b610308610546366004613f34565b61133e565b34801561055757600080fd5b50610308611401565b34801561056c57600080fd5b5061030861057b36600461419c565b611413565b34801561058c57600080fd5b5060ce54610408906001600160a01b031681565b6103086105ae366004613f34565b61145b565b3480156105bf57600080fd5b506103086114d8565b3480156105d457600080fd5b506033546001600160a01b0316610408565b3480156105f257600080fd5b5061030861060136600461423a565b6114e8565b34801561061257600080fd5b506102d3610621366004613f04565b61156e565b34801561063257600080fd5b50610308610641366004613f34565b611599565b34801561065257600080fd5b506103086115aa565b34801561066757600080fd5b50610308610676366004614295565b6115c4565b34801561068757600080fd5b5061035a600081565b34801561069c57600080fd5b506103086106ab3660046142d6565b6116ab565b3480156106bc57600080fd5b506106f0604051806040016040528060148152602001732aa7299d1026b4b73a34b7339026b0b730b3b2b960611b81525081565b6040516102df919061437c565b34801561070957600080fd5b5060cb54610408906001600160a01b031681565b34801561072957600080fd5b506102d3610738366004613f34565b6116f4565b34801561074957600080fd5b506102d3610758366004613e3f565b61170e565b34801561076957600080fd5b50610308610778366004613f34565b61176c565b34801561078957600080fd5b50610308610798366004613f34565b611796565b3480156107a957600080fd5b506103086107b836600461438f565b6117db565b3480156107c957600080fd5b5060ca54610408906001600160a01b031681565b3480156107e957600080fd5b506103086107f8366004614411565b611cd2565b34801561080957600080fd5b506103086108183660046144c6565b611d76565b34801561082957600080fd5b5061035a600080516020614ef483398151915281565b34801561084b57600080fd5b5061030861085a366004613f04565b611e2d565b61030861086d3660046144fb565b611e52565b34801561087e57600080fd5b5061030861088d366004613e3f565b611fe2565b34801561089e57600080fd5b506103086108ad366004613f34565b612054565b3480156108be57600080fd5b506103086108cd3660046145f0565b612070565b3480156108de57600080fd5b506103086108ed366004614708565b612222565b3480156108fe57600080fd5b506106f060405180604001604052806005815260200164302e352e3160d81b81525081565b60006001600160e01b03198216637965db0b60e01b148061095457506301ffc9a760e01b6001600160e01b03198316145b92915050565b61096561073861239e565b61098a5760405162461bcd60e51b815260040161098190614736565b60405180910390fd5b60c95460405163baef73e960e01b8152600481018390526000916001600160a01b03169063baef73e990602401602060405180830381865afa1580156109d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109f8919061476b565b9050806001600160401b0316600003610a235760405162461bcd60e51b815260040161098190614788565b806001600160401b0316836001600160401b031611610a905760405162461bcd60e51b815260206004820152602360248201527f4d696e74696e674d616e616765723a204558504952595f4e4f545f455854454e60448201526211115160ea1b6064820152608401610981565b60c954604051631fb9763760e11b81526001600160401b0385166004820152602481018490526001600160a01b0390911690633f72ec6e906044015b600060405180830381600087803b158015610ae657600080fd5b505af1158015610afa573d6000803e3d6000fd5b50505050505050565b610b0e61073861239e565b610b2a5760405162461bcd60e51b815260040161098190614736565b60c95460405163baef73e960e01b8152600481018390526001600160a01b039091169063baef73e990602401602060405180830381865afa158015610b73573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b97919061476b565b6001600160401b0316600003610bbf5760405162461bcd60e51b815260040161098190614788565b60c954604051637eee288d60e01b8152306004820152602481018390526001600160a01b0390911690637eee288d90604401600060405180830381600087803b158015610c0b57600080fd5b505af1158015610c1f573d6000803e3d6000fd5b5050505050565b8282828080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250610c6993508592508491506123ad565b610c71610e37565b15610c8e5760405162461bcd60e51b8152600401610981906147cb565b6060610afa610c9b61239e565b610cae88610ca98989612584565b6125b0565b8384600060016126c1565b600082815260976020526040902060010154610cd481612c15565b610cde8383612c26565b505050565b610ceb612cad565b610cf481612d26565b50565b610cff61239e565b6001600160a01b0316816001600160a01b031614610d775760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610981565b610d818282612d3e565b5050565b610d8d612cad565b610d95612dc3565b565b610d9f612cad565b6001600160a01b038116610db257600080fd5b60405147906001600160a01b0383169082156108fc029083906000818181858888f19350505050158015610dea573d6000803e3d6000fd5b50604080516001600160a01b03841681526020810183905260008183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a15050565b600080516020614ed48339815191525460ff1690565b610e5786886147f5565b8051600203610e8c57610e6b61073861239e565b610e875760405162461bcd60e51b8152600401610981906148bf565b610fd1565b6000610e9782612e6b565b60c9549092506001600160a01b0316905063430c2081610eb561239e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015610f00573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f249190614903565b80610fb3575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa158015610f7d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fa19190614903565b8015610fb35750610fb361073861239e565b610fcf5760405162461bcd60e51b815260040161098190614920565b505b610fdb87896147f5565b6000600282511015610fff5760405162461bcd60e51b81526004016109819061496f565b6110546110336000846001865161101691906149ca565b81518110611026576110266149dd565b6020026020010151612ea6565b83600081518110611046576110466149dd565b6020026020010151836123ad565b61105c610e37565b156110795760405162461bcd60e51b8152600401610981906147cb565b6110a38b6110878b8d6147f5565b6110918a8c6147f5565b61109b898b6147f5565b6000896126c1565b505050505050505050505050565b6110bb87896147f5565b80516002036110f0576110cf61073861239e565b6110eb5760405162461bcd60e51b8152600401610981906148bf565b611235565b60006110fb82612e6b565b60c9549092506001600160a01b0316905063430c208161111961239e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015611164573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111889190614903565b80611217575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa1580156111e1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112059190614903565b8015611217575061121761073861239e565b6112335760405162461bcd60e51b815260040161098190614920565b505b61123f888a6147f5565b836002825110156112625760405162461bcd60e51b81526004016109819061496f565b6112796110336000846001865161101691906149ca565b611281610e37565b1561129e5760405162461bcd60e51b8152600401610981906147cb565b60028a146112be5760405162461bcd60e51b8152600401610981906149f3565b6112e78c6112cc8c8e6147f5565b6112d68b8d6147f5565b6112e08a8c6147f5565b89896126c1565b50505050505050505050505050565b6112fe612cad565b60005b8151811015610d815761132c82828151811061131f5761131f6149dd565b6020026020010151612d26565b8061133681614a39565b915050611301565b61134961073861239e565b6113655760405162461bcd60e51b815260040161098190614736565b6001600160a01b0381166113bb5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610981565b6113c481612f5a565b6113cc6115aa565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610d81573d6000803e3d6000fd5b611409612cad565b610d956000612f72565b61141b612cad565b60005b8151811015610d815761144982828151811061143c5761143c6149dd565b6020026020010151612f5a565b8061145381614a39565b91505061141e565b61146661073861239e565b6114825760405162461bcd60e51b815260040161098190614736565b6001600160a01b0381166113c45760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610981565b6114e0612cad565b610d95612fc4565b8282828080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525061152b93508592508491506123ad565b611533610e37565b156115505760405162461bcd60e51b8152600401610981906147cb565b606061156487610cae88610ca98989612584565b5050505050505050565b60009182526097602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6115a1612cad565b610cf481612f5a565b610d95600080516020614ef48339815191526103e361239e565b6115cc612cad565b60c954604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906115fe9085908590600401614a52565b600060405180830381600087803b15801561161857600080fd5b505af115801561162c573d6000803e3d6000fd5b505060cb546001600160a01b0316159150610d8190505760cb54604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906116759085908590600401614a52565b600060405180830381600087803b15801561168f57600080fd5b505af11580156116a3573d6000803e3d6000fd5b505050505050565b6116b3612cad565b610cde83838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525085925061302c915050565b6000610954600080516020614ef48339815191528361156e565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd696020820152908101829052600090611762906060015b6040516020818303038152906040528051906020012090565b5460ff1692915050565b611774612cad565b60ce80546001600160a01b0319166001600160a01b0392909216919091179055565b61179e612cad565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e80546001600160a01b0319166001600160a01b03831617905550565b600054610100900460ff16158080156117fb5750600054600160ff909116105b806118155750303b158015611815575060005460ff166001145b6118785760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610981565b6000805460ff19166001179055801561189b576000805461ff0019166101001790555b60c980546001600160a01b03199081166001600160a01b038a81169190911790925560ca8054821689841617905560cb8054821688841617905560cc8054821687841617905560ce80549091169185169190911790556118f961314c565b611901613183565b61190a826131bc565b6119126131e3565b6040805161036081018252600661032082018181526563727970746f60d01b610340840152825282518084018452818152651dd85b1b195d60d21b602082810191909152808401919091528351808501855260018152600f60fb1b8183015283850152835180850185526003808252621b999d60ea1b82840152606085019190915284518086018652600a815269313637b1b5b1b430b4b760b11b818401526080850152845180860186526007808252663134ba31b7b4b760c91b8285015260a0860191909152855180870187528281526207070760eb1b8185015260c0860152855180870187528281526264616f60e81b8185015260e086015285518087018752828152621e9a5b60ea1b8185015261010086015285518087018752908152663837b63cb3b7b760c91b8184015261012085015284518086018652600b81526a756e73746f707061626c6560a81b81840152610140850152845180860186528381526535b632bb32b960d11b8184015261016085015284518086018652600280825261686960f01b8285015261018086019190915285518087018752848152656b726573757360d01b818501526101a086015285518087018752600580825264616e696d6560d81b828601526101c087019190915286518088018852818152646d616e676160d81b818601526101e087015286518088018852600981526862696e616e6365757360b81b8186015261020087015286518088018852818152647265616c6d60d81b818601526102208701528651808801885291825261676f60f01b82850152610240860191909152855180870187526008815267185b1d1a5b5a5cdd60c21b818501526102608601528551808701875290815264707564677960d81b81840152610280850152845180860186528381526530bab9ba34b760d11b818401526102a08501528451808601865292835265189a5d19d95d60d21b838301526102c08401929092528351808501855291825262706f6760e81b828201526102e083019190915282518084019093526004835263636c617960e01b9083015261030081019190915260005b6019811015611c5c57611c4a828260198110611c3e57611c3e6149dd565b6020020151600061302c565b80611c5481614a39565b915050611c20565b50611c8360405180604001604052806003815260200162636f6d60e81b815250600161302c565b508015610afa576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050505050565b8686868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250611d1593508592508491506123ad565b611d1d610e37565b15611d3a5760405162461bcd60e51b8152600401610981906147cb565b611d698a611d4c8b610ca98c8c612584565b611d56888a6147f5565b611d6087896147f5565b600060016126c1565b5050505050505050505050565b611d7e612cad565b60005b81811015610cde5760c9546001600160a01b03166350960239848484818110611dac57611dac6149dd565b9050602002016020810190611dc19190613f34565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401600060405180830381600087803b158015611e0257600080fd5b505af1158015611e16573d6000803e3d6000fd5b505050508080611e2590614a39565b915050611d81565b600082815260976020526040902060010154611e4881612c15565b610cde8383612d3e565b611e5c898b6147f5565b6000600282511015611e805760405162461bcd60e51b81526004016109819061496f565b611e976110336000846001865161101691906149ca565b611e9f610e37565b15611ebc5760405162461bcd60e51b8152600401610981906147cb565b60028b14611edc5760405162461bcd60e51b8152600401610981906149f3565b611f228d8d8d898960008a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061322392505050565b84341015611f725760405162461bcd60e51b815260206004820181905260248201527f4d696e74696e674d616e616765723a204e4f545f454e4f5547485f46554e44536044820152606401610981565b611f848d8d8d8d8d8d8d8c60006133e3565b843411156112e757611f9461239e565b6001600160a01b03166108fc611faa87346149ca565b6040518115909202916000818181858888f19350505050158015611fd2573d6000803e3d6000fd5b5050505050505050505050505050565b611fea612cad565b611ff38161349f565b61200f5760405162461bcd60e51b815260040161098190614a81565b600081815260cd6020526040812061202691613d76565b60405181907f0aa1aff0f830e739d86baf0e6624d6763da02f7733575e0e463886cd062dea6a90600090a250565b61205c612cad565b612065816134c5565b610cf460008261353b565b61207a8a8c6147f5565b600060028251101561209e5760405162461bcd60e51b81526004016109819061496f565b6120b56110336000846001865161101691906149ca565b6120bd610e37565b156120da5760405162461bcd60e51b8152600401610981906147cb565b60028c146120fa5760405162461bcd60e51b8152600401610981906149f3565b61213f8e8e8e8a898b8a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061322392505050565b856001600160a01b03166323b872dd61215661239e565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152306024820152604481018890526064016020604051808303816000875af11580156121a9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121cd9190614903565b6122115760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610981565b611fd28e8e8e8e8e8e8e8c8e6133e3565b61222a612cad565b6040516370a0823160e01b81523060048201526000906001600160a01b038416906370a0823190602401602060405180830381865afa158015612271573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122959190614ac3565b60405163a9059cbb60e01b81526001600160a01b038481166004830152602482018390529192509084169063a9059cbb906044016020604051808303816000875af11580156122e8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061230c9190614903565b6123505760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610981565b604080516001600160a01b0384811682526020820184905285168183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a1505050565b60006123a8613545565b905090565b6123b68361349f565b6123d25760405162461bcd60e51b815260040161098190614a81565b600083815260cf602052604090205460ff1615156001600160401b03821615151461244e5760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544c445f455850495241424c455f4d496044820152650a69a82a886960d31b6064820152608401610981565b60006124818360408051808201825260008082526020918201528151808301909252825182529182019181019190915290565b9050600a81600001511115612529576124ac6124a0826000600a61358b565b80516020909101512090565b7fb551e0305c8163b812374b8e78b577c77f226f6f10c5ad03e52699578fbc34b8036125295760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544f4b454e5f4c4142454c5f50524f4860448201526512509255115160d21b6064820152608401610981565b612532836135ca565b61257e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a204c4142454c5f494e56414c49440000006044820152606401610981565b50505050565b60608282604051602001612599929190614adc565b604051602081830303815290604052905092915050565b604080516002808252606082810190935260009190816020015b60608152602001906001900390816125ca57905050905082816000815181106125f5576125f56149dd565b602002602001018190525060cd6000858152602001908152602001600020805461261e90614b04565b80601f016020809104026020016040519081016040528092919081815260200182805461264a90614b04565b80156126975780601f1061266c57610100808354040283529160200191612697565b820191906000526020600020905b81548152906001019060200180831161267a57829003601f168201915b5050505050816001815181106126af576126af6149dd565b60209081029190910101529392505050565b60008060006126cf88612e6b565b915091508380156126e1575060028851115b8015612763575060c9546040516331a9108f60e11b8152600481018390526001600160a01b038b8116921690636352211e90602401602060405180830381865afa158015612733573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127579190614b3e565b6001600160a01b031614155b156127c35760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e616765723a20524556455253455f5245434f52445f4e60448201526913d517d0531313d5d15160b21b6064820152608401610981565b60c954604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401602060405180830381865afa15801561280c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128309190614903565b8015612921575060c9546040516331a9108f60e11b81526004810184905230916001600160a01b031690636352211e90602401602060405180830381865afa158015612880573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128a49190614b3e565b6001600160a01b03161480612921575060c95460405163d9548e5360e01b8152600481018490526001600160a01b039091169063d9548e5390602401602060405180830381865afa1580156128fd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129219190614903565b15612a12576001600160401b038516156129a35760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b15801561298a57600080fd5b505af115801561299e573d6000803e3d6000fd5b505050505b60c954604051630fb8df0360e11b81526001600160a01b0390911690631f71be06906129db908c908c908c908c908b90600401614bb0565b600060405180830381600087803b1580156129f557600080fd5b505af1158015612a09573d6000803e3d6000fd5b50505050612c09565b612a1b8261372e565b612a248861378d565b8015612a31575087516002145b8015612a4457506001600160401b038516155b15612b225760ca5488516001600160a01b039091169063c36c2125908b908b90600090612a7357612a736149dd565b602090810291909101015160cc546040516001600160e01b031960e086901b168152612aad9392916001600160a01b031690600401614c0f565b600060405180830381600087803b158015612ac757600080fd5b505af1158015612adb573d6000803e3d6000fd5b50505050600087511115612b1d5760cc54604051633a0deb9d60e21b81526001600160a01b039091169063e837ae74906129db908a908a908790600401614c44565b612c09565b60c95460405163ba5d40b760e01b81526001600160a01b039091169063ba5d40b790612b5a908c908c908c908c908b90600401614bb0565b600060405180830381600087803b158015612b7457600080fd5b505af1158015612b88573d6000803e3d6000fd5b505050506001600160401b03851615612c095760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b158015612bf057600080fd5b505af1158015612c04573d6000803e3d6000fd5b505050505b50979650505050505050565b610cf481612c2161239e565b6137e7565b612c30828261156e565b610d815760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19166001179055612c6961239e565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b612cb561239e565b6001600160a01b0316612cd06033546001600160a01b031690565b6001600160a01b031614610d955760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610981565b610cf4600080516020614ef483398151915282611e2d565b612d48828261156e565b15610d815760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19169055612d7f61239e565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612dcb610e37565b612e0e5760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881393d517d4105554d15160621b6044820152606401610981565b600080516020614ed4833981519152805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa612e4e61239e565b6040516001600160a01b03909116815260200160405180910390a1565b805160009081905b8015612ea057829150612e8c82856110166001856149ca565b925080612e9881614c7a565b915050612e73565b50915091565b60008151600003612ef95760405162461bcd60e51b815260206004820152601b60248201527f4d696e74696e674d616e616765723a204c4142454c5f454d50545900000000006044820152606401610981565b8282604051602001612f0b9190614c91565b60405160208183030381529060405280519060200120604051602001612f3b929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b610cf4600080516020614ef48339815191528261353b565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b612fcc610e37565b15612fe95760405162461bcd60e51b8152600401610981906147cb565b600080516020614ed4833981519152805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258612e4e61239e565b6000613039600084612ea6565b600081815260cd602052604090209091506130548482614cf3565b50600081815260cf602052604090819020805460ff19168415151790555181907f4fce6f6e172b04eaa80325d8e3b0180a34945000f3e214605039e8420fdf8980906130a190869061437c565b60405180910390a260c954604051634f558e7960e01b8152600481018390526001600160a01b0390911690634f558e7990602401602060405180830381865afa1580156130f2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131169190614903565b610cde5760c9546040516307befae360e51b81526001600160a01b039091169063f7df5c6090610acc9084908790600401614db2565b600054610100900460ff166131735760405162461bcd60e51b815260040161098190614dd3565b610d9561317e61239e565b612f72565b600054610100900460ff166131aa5760405162461bcd60e51b815260040161098190614dd3565b610d9560006131b761239e565b61353b565b600054610100900460ff1661179e5760405162461bcd60e51b815260040161098190614dd3565b600054610100900460ff1661320a5760405162461bcd60e51b815260040161098190614dd3565b600080516020614ed4833981519152805460ff19169055565b600061323761323287896147f5565b612e6b565b506040516bffffffffffffffffffffffff1930606090811b821660208401524660348401528b811b82166054840152606883018490526001600160c01b031960c08a901b1660888401526090830188905286901b1660b082015290915060009061331390849061330d9060c401604051602081830303815290604052805190602001206040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c8101829052600090605c01604051602081830303815290604052805190602001209050919050565b9061384b565b905061331e816116f4565b6133765760405162461bcd60e51b8152602060048201526024808201527f4d696e74696e674d616e616765723a205349474e45525f49535f4e4f545f4d49604482015263272a22a960e11b6064820152608401610981565b42866001600160401b0316116133d85760405162461bcd60e51b815260206004820152602160248201527f4d696e74696e674d616e616765723a20455850495245445f5349474e415455526044820152604560f81b6064820152608401610981565b505050505050505050565b600061342a8a6133f38a8c6147f5565b6133fd898b6147f5565b613407888a6147f5565b60008f6001600160a01b031661341b61239e565b6001600160a01b0316146126c1565b9050896001600160a01b031661343e61239e565b6001600160a01b0316827fa545b6fd3355e8d57f8c8147bafe740545bd3ea1f94bef2576a6d532a7c3b605868660405161348b9291909182526001600160a01b0316602082015260400190565b60405180910390a450505050505050505050565b600081815260cd6020526040812080548291906134bb90614b04565b9050119050919050565b6134cd612cad565b6001600160a01b0381166135325760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610981565b610cf481612f72565b610d818282612c26565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546000906001600160a01b03163303613586575060331936013560601c90565b503390565b604080518082019091526000808252602082015260405180604001604052808381526020018486602001516135c09190614e1e565b9052949350505050565b600081516000036135dd57506000919050565b60208201805160f81c603081108015906135fb575060398160ff1611155b15801561361d575060618160ff161015801561361b5750607a8160ff1611155b155b1561362c575060009392505050565b8351600181111561369a5761364e836136466001846149ca565b015160f81c90565b915060308260ff1610158015613668575060398260ff1611155b15801561368a575060618260ff16101580156136885750607a8260ff1611155b155b1561369a57506000949350505050565b60015b6136a86001836149ca565b811015613722578381015160f81c9250602d83148015906136de575060308360ff16101580156136dc575060398360ff1611155b155b80156136ff575060618360ff16101580156136fd5750607a8360ff1611155b155b156137105750600095945050505050565b8061371a81614a39565b91505061369d565b50600195945050505050565b6137378161170e565b156137845760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a20544f4b454e5f424c4f434b45440000006044820152606401610981565b610cf48161386f565b6000806137a46000846001865161101691906149ca565b60ca549091506001600160a01b0316158015906137e05750807f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f145b9392505050565b6137f1828261156e565b610d8157613809816001600160a01b031660146138f3565b6138148360206138f3565b604051602001613825929190614e31565b60408051601f198184030181529082905262461bcd60e51b82526109819160040161437c565b600080600061385a8585613a8e565b9150915061386781613ad3565b509392505050565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd6960208201529081018290526001906138ae90606001611749565b805460ff19169115159190911790556040518181527f2ce5d9351b1d590d5a066db0d2dc7602d55f092506a83a7ee8c4d78ee357d75a9060200160405180910390a150565b60606000613902836002614ea6565b61390d906002614e1e565b6001600160401b0381111561392457613924614133565b6040519080825280601f01601f19166020018201604052801561394e576020820181803683370190505b509050600360fc1b81600081518110613969576139696149dd565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110613998576139986149dd565b60200101906001600160f81b031916908160001a90535060006139bc846002614ea6565b6139c7906001614e1e565b90505b6001811115613a3f576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106139fb576139fb6149dd565b1a60f81b828281518110613a1157613a116149dd565b60200101906001600160f81b031916908160001a90535060049490941c93613a3881614c7a565b90506139ca565b5083156137e05760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610981565b6000808251604103613ac45760208301516040840151606085015160001a613ab887828585613c89565b94509450505050613acc565b506000905060025b9250929050565b6000816004811115613ae757613ae7614ebd565b03613aef5750565b6001816004811115613b0357613b03614ebd565b03613b505760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152606401610981565b6002816004811115613b6457613b64614ebd565b03613bb15760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610981565b6003816004811115613bc557613bc5614ebd565b03613c1d5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b6064820152608401610981565b6004816004811115613c3157613c31614ebd565b03610cf45760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c604482015261756560f01b6064820152608401610981565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613cc05750600090506003613d6d565b8460ff16601b14158015613cd857508460ff16601c14155b15613ce95750600090506004613d6d565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613d3d573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613d6657600060019250925050613d6d565b9150600090505b94509492505050565b508054613d8290614b04565b6000825580601f10613d92575050565b601f016020900490600052602060002090810190610cf491905b80821115613dc05760008155600101613dac565b5090565b600060208284031215613dd657600080fd5b81356001600160e01b0319811681146137e057600080fd5b6001600160401b0381168114610cf457600080fd5b8035613e0e81613dee565b919050565b60008060408385031215613e2657600080fd5b8235613e3181613dee565b946020939093013593505050565b600060208284031215613e5157600080fd5b5035919050565b60008083601f840112613e6a57600080fd5b5081356001600160401b03811115613e8157600080fd5b602083019150836020828501011115613acc57600080fd5b600080600060408486031215613eae57600080fd5b8335925060208401356001600160401b03811115613ecb57600080fd5b613ed786828701613e58565b9497909650939450505050565b6001600160a01b0381168114610cf457600080fd5b8035613e0e81613ee4565b60008060408385031215613f1757600080fd5b823591506020830135613f2981613ee4565b809150509250929050565b600060208284031215613f4657600080fd5b81356137e081613ee4565b60008083601f840112613f6357600080fd5b5081356001600160401b03811115613f7a57600080fd5b6020830191508360208260051b8501011115613acc57600080fd5b8015158114610cf457600080fd5b60008060008060008060008060a0898b031215613fbf57600080fd5b8835613fca81613ee4565b975060208901356001600160401b0380821115613fe657600080fd5b613ff28c838d01613f51565b909950975060408b013591508082111561400b57600080fd5b6140178c838d01613f51565b909750955060608b013591508082111561403057600080fd5b5061403d8b828c01613f51565b909450925050608089013561405181613f95565b809150509295985092959890939650565b600080600080600080600080600060c08a8c03121561408057600080fd5b893561408b81613ee4565b985060208a01356001600160401b03808211156140a757600080fd5b6140b38d838e01613f51565b909a50985060408c01359150808211156140cc57600080fd5b6140d88d838e01613f51565b909850965060608c01359150808211156140f157600080fd5b506140fe8c828d01613f51565b90955093505060808a013561411281613dee565b915060a08a013561412281613f95565b809150509295985092959850929598565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561417157614171614133565b604052919050565b60006001600160401b0382111561419257614192614133565b5060051b60200190565b600060208083850312156141af57600080fd5b82356001600160401b038111156141c557600080fd5b8301601f810185136141d657600080fd5b80356141e96141e482614179565b614149565b81815260059190911b8201830190838101908783111561420857600080fd5b928401925b8284101561422f57833561422081613ee4565b8252928401929084019061420d565b979650505050505050565b6000806000806060858703121561425057600080fd5b843561425b81613ee4565b93506020850135925060408501356001600160401b0381111561427d57600080fd5b61428987828801613e58565b95989497509550505050565b600080602083850312156142a857600080fd5b82356001600160401b038111156142be57600080fd5b6142ca85828601613e58565b90969095509350505050565b6000806000604084860312156142eb57600080fd5b83356001600160401b0381111561430157600080fd5b61430d86828701613e58565b909450925050602084013561432181613f95565b809150509250925092565b60005b8381101561434757818101518382015260200161432f565b50506000910152565b6000815180845261436881602086016020860161432c565b601f01601f19169290920160200192915050565b6020815260006137e06020830184614350565b60008060008060008060c087890312156143a857600080fd5b86356143b381613ee4565b955060208701356143c381613ee4565b945060408701356143d381613ee4565b935060608701356143e381613ee4565b925060808701356143f381613ee4565b915060a087013561440381613ee4565b809150509295509295509295565b60008060008060008060008060a0898b03121561442d57600080fd5b883561443881613ee4565b97506020890135965060408901356001600160401b038082111561445b57600080fd5b6144678c838d01613e58565b909850965060608b013591508082111561448057600080fd5b61448c8c838d01613f51565b909650945060808b01359150808211156144a557600080fd5b506144b28b828c01613f51565b999c989b5096995094979396929594505050565b600080602083850312156144d957600080fd5b82356001600160401b038111156144ef57600080fd5b6142ca85828601613f51565b600080600080600080600080600080600060e08c8e03121561451c57600080fd5b6145258c613ef9565b9a506001600160401b038060208e0135111561454057600080fd5b6145508e60208f01358f01613f51565b909b50995060408d013581101561456657600080fd5b6145768e60408f01358f01613f51565b909950975060608d013581101561458c57600080fd5b61459c8e60608f01358f01613f51565b90975095506145ad60808e01613e03565b945060a08d013593508060c08e013511156145c757600080fd5b506145d88d60c08e01358e01613e58565b81935080925050509295989b509295989b9093969950565b6000806000806000806000806000806000806101008d8f03121561461357600080fd5b61461c8d613ef9565b9b506001600160401b0360208e0135111561463657600080fd5b6146468e60208f01358f01613f51565b909b5099506001600160401b0360408e0135111561466357600080fd5b6146738e60408f01358f01613f51565b90995097506001600160401b0360608e0135111561469057600080fd5b6146a08e60608f01358f01613f51565b90975095506146b160808e01613e03565b94506146bf60a08e01613ef9565b935060c08d013592506001600160401b0360e08e013511156146e057600080fd5b6146f08e60e08f01358f01613e58565b81935080925050509295989b509295989b509295989b565b6000806040838503121561471b57600080fd5b823561472681613ee4565b91506020830135613f2981613ee4565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b60006020828403121561477d57600080fd5b81516137e081613dee565b60208082526023908201527f4d696e74696e674d616e616765723a20544f4b454e5f4e4f545f455850495241604082015262424c4560e81b606082015260800190565b60208082526010908201526f14185d5cd8589b194e8814105554d15160821b604082015260600190565b60006148036141e484614179565b80848252602080830192508560051b85013681111561482157600080fd5b855b818110156148b35780356001600160401b03808211156148435760008081fd5b90880190601f36818401126148585760008081fd5b82358281111561486a5761486a614133565b61487b818301601f19168801614149565b9250808352368782860101111561489457600091508182fd5b8087850188850137600090830187015250865250938201938201614823565b50919695505050505050565b60208082526024908201527f4d696e74696e674d616e616765723a2043414c4c45525f49535f4e4f545f4d49604082015263272a22a960e11b606082015260800190565b60006020828403121561491557600080fd5b81516137e081613f95565b6020808252602f908201527f4d696e74696e674d616e616765723a2053454e4445525f49535f4e4f545f415060408201526e282927ab22a22fa7a92fa7aba722a960891b606082015260800190565b60208082526025908201527f4d696e74696e674d616e616765723a204c4142454c535f4c454e4754485f42456040820152642627abaf9960d91b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b81810381811115610954576109546149b4565b634e487b7160e01b600052603260045260246000fd5b60208082526026908201527f4d696e74696e674d616e616765723a20535542444f4d41494e535f4e4f545f41604082015265131313d5d15160d21b606082015260800190565b600060018201614a4b57614a4b6149b4565b5060010190565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b60208082526022908201527f4d696e74696e674d616e616765723a20544c445f4e4f545f5245474953544552604082015261115160f21b606082015260800190565b600060208284031215614ad557600080fd5b5051919050565b6b756e732d646576746573742d60a01b81528183600c83013760009101600c01908152919050565b600181811c90821680614b1857607f821691505b602082108103614b3857634e487b7160e01b600052602260045260246000fd5b50919050565b600060208284031215614b5057600080fd5b81516137e081613ee4565b600081518084526020808501808196508360051b8101915082860160005b85811015614ba3578284038952614b91848351614350565b98850198935090840190600101614b79565b5091979650505050505050565b6001600160a01b038616815260a060208201819052600090614bd490830187614b5b565b8281036040840152614be68187614b5b565b90508281036060840152614bfa8186614b5b565b91505082151560808301529695505050505050565b600060018060a01b03808616835260606020840152614c316060840186614350565b9150808416604084015250949350505050565b606081526000614c576060830186614b5b565b8281036020840152614c698186614b5b565b915050826040830152949350505050565b600081614c8957614c896149b4565b506000190190565b60008251614ca381846020870161432c565b9190910192915050565b601f821115610cde57600081815260208120601f850160051c81016020861015614cd45750805b601f850160051c820191505b818110156116a357828155600101614ce0565b81516001600160401b03811115614d0c57614d0c614133565b614d2081614d1a8454614b04565b84614cad565b602080601f831160018114614d555760008415614d3d5750858301515b600019600386901b1c1916600185901b1785556116a3565b600085815260208120601f198616915b82811015614d8457888601518255948401946001909101908401614d65565b5085821015614da25787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b828152604060208201526000614dcb6040830184614350565b949350505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b80820180821115610954576109546149b4565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351614e6981601785016020880161432c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351614e9a81602884016020880161432c565b01602801949350505050565b8082028115828204841417610954576109546149b4565b634e487b7160e01b600052602160045260246000fdfe5496787fc1ebdfeba375028c1865f13fbb1d63c0caa356ccc1b29a80f3ebd6229f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000811000a", + "deployedBytecode": "0x6080604052600436106102ae5760003560e01c8063906cecc111610175578063b9998a24116100dc578063d547741f11610095578063f2fde38b1161006f578063f2fde38b14610892578063f5243bc4146108b2578063f940e385146108d2578063ffa1ad74146108f257600080fd5b8063d547741f1461083f578063d7db74c71461085f578063ec5273891461087257600080fd5b8063b9998a241461077d578063cc2a9a5b1461079d578063cc2c3fc4146107bd578063ceeb4f50146107dd578063d1f5692c146107fd578063d53913931461081d57600080fd5b8063a3a3f7f61161012e578063a3a3f7f614610690578063a3f4df7e146106b0578063a849d65c146106fd578063aa271e1a1461071d578063b0aa98c71461073d578063b3ab15fb1461075d57600080fd5b8063906cecc1146105e657806391d1485414610606578063983b2d5614610626578063986502751461064657806399e0dd7c1461065b578063a217fddf1461067b57600080fd5b80635b6fa8db11610219578063715018a6116101d2578063715018a61461054b57806371e2a6571461056057806377a2a5891461058057806381c81d35146105a05780638456cb59146105b35780638da5cb5b146105c857600080fd5b80635b6fa8db146104a35780635c975abb146104c35780635cd7e3b3146104d85780635e22cd86146104f85780635fc1964f14610518578063634486da1461053857600080fd5b80633092afd51161026b5780633092afd5146103a857806336568abe146103c85780633f41b614146103e85780633f4ba83a1461042057806351cff8d914610435578063572b6c051461045557600080fd5b806301ffc9a7146102b35780631edb948e146102e857806320c5429b1461030a578063248a9ca31461032a578063268b15ed146103685780632f2ff15d14610388575b600080fd5b3480156102bf57600080fd5b506102d36102ce366004613dc4565b610923565b60405190151581526020015b60405180910390f35b3480156102f457600080fd5b50610308610303366004613e13565b61095a565b005b34801561031657600080fd5b50610308610325366004613e3f565b610b03565b34801561033657600080fd5b5061035a610345366004613e3f565b60009081526097602052604090206001015490565b6040519081526020016102df565b34801561037457600080fd5b50610308610383366004613e99565b610c26565b34801561039457600080fd5b506103086103a3366004613f04565b610cb9565b3480156103b457600080fd5b506103086103c3366004613f34565b610ce3565b3480156103d457600080fd5b506103086103e3366004613f04565b610cf7565b3480156103f457600080fd5b5060c954610408906001600160a01b031681565b6040516001600160a01b0390911681526020016102df565b34801561042c57600080fd5b50610308610d85565b34801561044157600080fd5b50610308610450366004613f34565b610d97565b34801561046157600080fd5b506102d3610470366004613f34565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546001600160a01b0390811691161490565b3480156104af57600080fd5b5060cc54610408906001600160a01b031681565b3480156104cf57600080fd5b506102d3610e37565b3480156104e457600080fd5b506103086104f3366004613fa3565b610e4d565b34801561050457600080fd5b50610308610513366004614062565b6110b1565b34801561052457600080fd5b5061030861053336600461419c565b6112f6565b610308610546366004613f34565b61133e565b34801561055757600080fd5b50610308611401565b34801561056c57600080fd5b5061030861057b36600461419c565b611413565b34801561058c57600080fd5b5060ce54610408906001600160a01b031681565b6103086105ae366004613f34565b61145b565b3480156105bf57600080fd5b506103086114d8565b3480156105d457600080fd5b506033546001600160a01b0316610408565b3480156105f257600080fd5b5061030861060136600461423a565b6114e8565b34801561061257600080fd5b506102d3610621366004613f04565b61156e565b34801561063257600080fd5b50610308610641366004613f34565b611599565b34801561065257600080fd5b506103086115aa565b34801561066757600080fd5b50610308610676366004614295565b6115c4565b34801561068757600080fd5b5061035a600081565b34801561069c57600080fd5b506103086106ab3660046142d6565b6116ab565b3480156106bc57600080fd5b506106f0604051806040016040528060148152602001732aa7299d1026b4b73a34b7339026b0b730b3b2b960611b81525081565b6040516102df919061437c565b34801561070957600080fd5b5060cb54610408906001600160a01b031681565b34801561072957600080fd5b506102d3610738366004613f34565b6116f4565b34801561074957600080fd5b506102d3610758366004613e3f565b61170e565b34801561076957600080fd5b50610308610778366004613f34565b61176c565b34801561078957600080fd5b50610308610798366004613f34565b611796565b3480156107a957600080fd5b506103086107b836600461438f565b6117db565b3480156107c957600080fd5b5060ca54610408906001600160a01b031681565b3480156107e957600080fd5b506103086107f8366004614411565b611cd2565b34801561080957600080fd5b506103086108183660046144c6565b611d76565b34801561082957600080fd5b5061035a600080516020614ef483398151915281565b34801561084b57600080fd5b5061030861085a366004613f04565b611e2d565b61030861086d3660046144fb565b611e52565b34801561087e57600080fd5b5061030861088d366004613e3f565b611fe2565b34801561089e57600080fd5b506103086108ad366004613f34565b612054565b3480156108be57600080fd5b506103086108cd3660046145f0565b612070565b3480156108de57600080fd5b506103086108ed366004614708565b612222565b3480156108fe57600080fd5b506106f060405180604001604052806005815260200164302e352e3160d81b81525081565b60006001600160e01b03198216637965db0b60e01b148061095457506301ffc9a760e01b6001600160e01b03198316145b92915050565b61096561073861239e565b61098a5760405162461bcd60e51b815260040161098190614736565b60405180910390fd5b60c95460405163baef73e960e01b8152600481018390526000916001600160a01b03169063baef73e990602401602060405180830381865afa1580156109d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109f8919061476b565b9050806001600160401b0316600003610a235760405162461bcd60e51b815260040161098190614788565b806001600160401b0316836001600160401b031611610a905760405162461bcd60e51b815260206004820152602360248201527f4d696e74696e674d616e616765723a204558504952595f4e4f545f455854454e60448201526211115160ea1b6064820152608401610981565b60c954604051631fb9763760e11b81526001600160401b0385166004820152602481018490526001600160a01b0390911690633f72ec6e906044015b600060405180830381600087803b158015610ae657600080fd5b505af1158015610afa573d6000803e3d6000fd5b50505050505050565b610b0e61073861239e565b610b2a5760405162461bcd60e51b815260040161098190614736565b60c95460405163baef73e960e01b8152600481018390526001600160a01b039091169063baef73e990602401602060405180830381865afa158015610b73573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b97919061476b565b6001600160401b0316600003610bbf5760405162461bcd60e51b815260040161098190614788565b60c954604051637eee288d60e01b8152306004820152602481018390526001600160a01b0390911690637eee288d90604401600060405180830381600087803b158015610c0b57600080fd5b505af1158015610c1f573d6000803e3d6000fd5b5050505050565b8282828080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250610c6993508592508491506123ad565b610c71610e37565b15610c8e5760405162461bcd60e51b8152600401610981906147cb565b6060610afa610c9b61239e565b610cae88610ca98989612584565b6125b0565b8384600060016126c1565b600082815260976020526040902060010154610cd481612c15565b610cde8383612c26565b505050565b610ceb612cad565b610cf481612d26565b50565b610cff61239e565b6001600160a01b0316816001600160a01b031614610d775760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610981565b610d818282612d3e565b5050565b610d8d612cad565b610d95612dc3565b565b610d9f612cad565b6001600160a01b038116610db257600080fd5b60405147906001600160a01b0383169082156108fc029083906000818181858888f19350505050158015610dea573d6000803e3d6000fd5b50604080516001600160a01b03841681526020810183905260008183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a15050565b600080516020614ed48339815191525460ff1690565b610e5786886147f5565b8051600203610e8c57610e6b61073861239e565b610e875760405162461bcd60e51b8152600401610981906148bf565b610fd1565b6000610e9782612e6b565b60c9549092506001600160a01b0316905063430c2081610eb561239e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015610f00573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f249190614903565b80610fb3575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa158015610f7d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fa19190614903565b8015610fb35750610fb361073861239e565b610fcf5760405162461bcd60e51b815260040161098190614920565b505b610fdb87896147f5565b6000600282511015610fff5760405162461bcd60e51b81526004016109819061496f565b6110546110336000846001865161101691906149ca565b81518110611026576110266149dd565b6020026020010151612ea6565b83600081518110611046576110466149dd565b6020026020010151836123ad565b61105c610e37565b156110795760405162461bcd60e51b8152600401610981906147cb565b6110a38b6110878b8d6147f5565b6110918a8c6147f5565b61109b898b6147f5565b6000896126c1565b505050505050505050505050565b6110bb87896147f5565b80516002036110f0576110cf61073861239e565b6110eb5760405162461bcd60e51b8152600401610981906148bf565b611235565b60006110fb82612e6b565b60c9549092506001600160a01b0316905063430c208161111961239e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015611164573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111889190614903565b80611217575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa1580156111e1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112059190614903565b8015611217575061121761073861239e565b6112335760405162461bcd60e51b815260040161098190614920565b505b61123f888a6147f5565b836002825110156112625760405162461bcd60e51b81526004016109819061496f565b6112796110336000846001865161101691906149ca565b611281610e37565b1561129e5760405162461bcd60e51b8152600401610981906147cb565b60028a146112be5760405162461bcd60e51b8152600401610981906149f3565b6112e78c6112cc8c8e6147f5565b6112d68b8d6147f5565b6112e08a8c6147f5565b89896126c1565b50505050505050505050505050565b6112fe612cad565b60005b8151811015610d815761132c82828151811061131f5761131f6149dd565b6020026020010151612d26565b8061133681614a39565b915050611301565b61134961073861239e565b6113655760405162461bcd60e51b815260040161098190614736565b6001600160a01b0381166113bb5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610981565b6113c481612f5a565b6113cc6115aa565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610d81573d6000803e3d6000fd5b611409612cad565b610d956000612f72565b61141b612cad565b60005b8151811015610d815761144982828151811061143c5761143c6149dd565b6020026020010151612f5a565b8061145381614a39565b91505061141e565b61146661073861239e565b6114825760405162461bcd60e51b815260040161098190614736565b6001600160a01b0381166113c45760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610981565b6114e0612cad565b610d95612fc4565b8282828080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525061152b93508592508491506123ad565b611533610e37565b156115505760405162461bcd60e51b8152600401610981906147cb565b606061156487610cae88610ca98989612584565b5050505050505050565b60009182526097602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6115a1612cad565b610cf481612f5a565b610d95600080516020614ef48339815191526103e361239e565b6115cc612cad565b60c954604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906115fe9085908590600401614a52565b600060405180830381600087803b15801561161857600080fd5b505af115801561162c573d6000803e3d6000fd5b505060cb546001600160a01b0316159150610d8190505760cb54604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906116759085908590600401614a52565b600060405180830381600087803b15801561168f57600080fd5b505af11580156116a3573d6000803e3d6000fd5b505050505050565b6116b3612cad565b610cde83838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525085925061302c915050565b6000610954600080516020614ef48339815191528361156e565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd696020820152908101829052600090611762906060015b6040516020818303038152906040528051906020012090565b5460ff1692915050565b611774612cad565b60ce80546001600160a01b0319166001600160a01b0392909216919091179055565b61179e612cad565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e80546001600160a01b0319166001600160a01b03831617905550565b600054610100900460ff16158080156117fb5750600054600160ff909116105b806118155750303b158015611815575060005460ff166001145b6118785760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610981565b6000805460ff19166001179055801561189b576000805461ff0019166101001790555b60c980546001600160a01b03199081166001600160a01b038a81169190911790925560ca8054821689841617905560cb8054821688841617905560cc8054821687841617905560ce80549091169185169190911790556118f961314c565b611901613183565b61190a826131bc565b6119126131e3565b6040805161036081018252600661032082018181526563727970746f60d01b610340840152825282518084018452818152651dd85b1b195d60d21b602082810191909152808401919091528351808501855260018152600f60fb1b8183015283850152835180850185526003808252621b999d60ea1b82840152606085019190915284518086018652600a815269313637b1b5b1b430b4b760b11b818401526080850152845180860186526007808252663134ba31b7b4b760c91b8285015260a0860191909152855180870187528281526207070760eb1b8185015260c0860152855180870187528281526264616f60e81b8185015260e086015285518087018752828152621e9a5b60ea1b8185015261010086015285518087018752908152663837b63cb3b7b760c91b8184015261012085015284518086018652600b81526a756e73746f707061626c6560a81b81840152610140850152845180860186528381526535b632bb32b960d11b8184015261016085015284518086018652600280825261686960f01b8285015261018086019190915285518087018752848152656b726573757360d01b818501526101a086015285518087018752600580825264616e696d6560d81b828601526101c087019190915286518088018852818152646d616e676160d81b818601526101e087015286518088018852600981526862696e616e6365757360b81b8186015261020087015286518088018852818152647265616c6d60d81b818601526102208701528651808801885291825261676f60f01b82850152610240860191909152855180870187526008815267185b1d1a5b5a5cdd60c21b818501526102608601528551808701875290815264707564677960d81b81840152610280850152845180860186528381526530bab9ba34b760d11b818401526102a08501528451808601865292835265189a5d19d95d60d21b838301526102c08401929092528351808501855291825262706f6760e81b828201526102e083019190915282518084019093526004835263636c617960e01b9083015261030081019190915260005b6019811015611c5c57611c4a828260198110611c3e57611c3e6149dd565b6020020151600061302c565b80611c5481614a39565b915050611c20565b50611c8360405180604001604052806003815260200162636f6d60e81b815250600161302c565b508015610afa576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050505050565b8686868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250611d1593508592508491506123ad565b611d1d610e37565b15611d3a5760405162461bcd60e51b8152600401610981906147cb565b611d698a611d4c8b610ca98c8c612584565b611d56888a6147f5565b611d6087896147f5565b600060016126c1565b5050505050505050505050565b611d7e612cad565b60005b81811015610cde5760c9546001600160a01b03166350960239848484818110611dac57611dac6149dd565b9050602002016020810190611dc19190613f34565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401600060405180830381600087803b158015611e0257600080fd5b505af1158015611e16573d6000803e3d6000fd5b505050508080611e2590614a39565b915050611d81565b600082815260976020526040902060010154611e4881612c15565b610cde8383612d3e565b611e5c898b6147f5565b6000600282511015611e805760405162461bcd60e51b81526004016109819061496f565b611e976110336000846001865161101691906149ca565b611e9f610e37565b15611ebc5760405162461bcd60e51b8152600401610981906147cb565b60028b14611edc5760405162461bcd60e51b8152600401610981906149f3565b611f228d8d8d898960008a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061322392505050565b84341015611f725760405162461bcd60e51b815260206004820181905260248201527f4d696e74696e674d616e616765723a204e4f545f454e4f5547485f46554e44536044820152606401610981565b611f848d8d8d8d8d8d8d8c60006133e3565b843411156112e757611f9461239e565b6001600160a01b03166108fc611faa87346149ca565b6040518115909202916000818181858888f19350505050158015611fd2573d6000803e3d6000fd5b5050505050505050505050505050565b611fea612cad565b611ff38161349f565b61200f5760405162461bcd60e51b815260040161098190614a81565b600081815260cd6020526040812061202691613d76565b60405181907f0aa1aff0f830e739d86baf0e6624d6763da02f7733575e0e463886cd062dea6a90600090a250565b61205c612cad565b612065816134c5565b610cf460008261353b565b61207a8a8c6147f5565b600060028251101561209e5760405162461bcd60e51b81526004016109819061496f565b6120b56110336000846001865161101691906149ca565b6120bd610e37565b156120da5760405162461bcd60e51b8152600401610981906147cb565b60028c146120fa5760405162461bcd60e51b8152600401610981906149f3565b61213f8e8e8e8a898b8a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061322392505050565b856001600160a01b03166323b872dd61215661239e565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152306024820152604481018890526064016020604051808303816000875af11580156121a9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121cd9190614903565b6122115760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610981565b611fd28e8e8e8e8e8e8e8c8e6133e3565b61222a612cad565b6040516370a0823160e01b81523060048201526000906001600160a01b038416906370a0823190602401602060405180830381865afa158015612271573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122959190614ac3565b60405163a9059cbb60e01b81526001600160a01b038481166004830152602482018390529192509084169063a9059cbb906044016020604051808303816000875af11580156122e8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061230c9190614903565b6123505760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610981565b604080516001600160a01b0384811682526020820184905285168183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a1505050565b60006123a8613545565b905090565b6123b68361349f565b6123d25760405162461bcd60e51b815260040161098190614a81565b600083815260cf602052604090205460ff1615156001600160401b03821615151461244e5760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544c445f455850495241424c455f4d496044820152650a69a82a886960d31b6064820152608401610981565b60006124818360408051808201825260008082526020918201528151808301909252825182529182019181019190915290565b9050600a81600001511115612529576124ac6124a0826000600a61358b565b80516020909101512090565b7fb551e0305c8163b812374b8e78b577c77f226f6f10c5ad03e52699578fbc34b8036125295760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544f4b454e5f4c4142454c5f50524f4860448201526512509255115160d21b6064820152608401610981565b612532836135ca565b61257e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a204c4142454c5f494e56414c49440000006044820152606401610981565b50505050565b60608282604051602001612599929190614adc565b604051602081830303815290604052905092915050565b604080516002808252606082810190935260009190816020015b60608152602001906001900390816125ca57905050905082816000815181106125f5576125f56149dd565b602002602001018190525060cd6000858152602001908152602001600020805461261e90614b04565b80601f016020809104026020016040519081016040528092919081815260200182805461264a90614b04565b80156126975780601f1061266c57610100808354040283529160200191612697565b820191906000526020600020905b81548152906001019060200180831161267a57829003601f168201915b5050505050816001815181106126af576126af6149dd565b60209081029190910101529392505050565b60008060006126cf88612e6b565b915091508380156126e1575060028851115b8015612763575060c9546040516331a9108f60e11b8152600481018390526001600160a01b038b8116921690636352211e90602401602060405180830381865afa158015612733573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127579190614b3e565b6001600160a01b031614155b156127c35760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e616765723a20524556455253455f5245434f52445f4e60448201526913d517d0531313d5d15160b21b6064820152608401610981565b60c954604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401602060405180830381865afa15801561280c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128309190614903565b8015612921575060c9546040516331a9108f60e11b81526004810184905230916001600160a01b031690636352211e90602401602060405180830381865afa158015612880573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128a49190614b3e565b6001600160a01b03161480612921575060c95460405163d9548e5360e01b8152600481018490526001600160a01b039091169063d9548e5390602401602060405180830381865afa1580156128fd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129219190614903565b15612a12576001600160401b038516156129a35760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b15801561298a57600080fd5b505af115801561299e573d6000803e3d6000fd5b505050505b60c954604051630fb8df0360e11b81526001600160a01b0390911690631f71be06906129db908c908c908c908c908b90600401614bb0565b600060405180830381600087803b1580156129f557600080fd5b505af1158015612a09573d6000803e3d6000fd5b50505050612c09565b612a1b8261372e565b612a248861378d565b8015612a31575087516002145b8015612a4457506001600160401b038516155b15612b225760ca5488516001600160a01b039091169063c36c2125908b908b90600090612a7357612a736149dd565b602090810291909101015160cc546040516001600160e01b031960e086901b168152612aad9392916001600160a01b031690600401614c0f565b600060405180830381600087803b158015612ac757600080fd5b505af1158015612adb573d6000803e3d6000fd5b50505050600087511115612b1d5760cc54604051633a0deb9d60e21b81526001600160a01b039091169063e837ae74906129db908a908a908790600401614c44565b612c09565b60c95460405163ba5d40b760e01b81526001600160a01b039091169063ba5d40b790612b5a908c908c908c908c908b90600401614bb0565b600060405180830381600087803b158015612b7457600080fd5b505af1158015612b88573d6000803e3d6000fd5b505050506001600160401b03851615612c095760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b158015612bf057600080fd5b505af1158015612c04573d6000803e3d6000fd5b505050505b50979650505050505050565b610cf481612c2161239e565b6137e7565b612c30828261156e565b610d815760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19166001179055612c6961239e565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b612cb561239e565b6001600160a01b0316612cd06033546001600160a01b031690565b6001600160a01b031614610d955760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610981565b610cf4600080516020614ef483398151915282611e2d565b612d48828261156e565b15610d815760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19169055612d7f61239e565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612dcb610e37565b612e0e5760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881393d517d4105554d15160621b6044820152606401610981565b600080516020614ed4833981519152805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa612e4e61239e565b6040516001600160a01b03909116815260200160405180910390a1565b805160009081905b8015612ea057829150612e8c82856110166001856149ca565b925080612e9881614c7a565b915050612e73565b50915091565b60008151600003612ef95760405162461bcd60e51b815260206004820152601b60248201527f4d696e74696e674d616e616765723a204c4142454c5f454d50545900000000006044820152606401610981565b8282604051602001612f0b9190614c91565b60405160208183030381529060405280519060200120604051602001612f3b929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b610cf4600080516020614ef48339815191528261353b565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b612fcc610e37565b15612fe95760405162461bcd60e51b8152600401610981906147cb565b600080516020614ed4833981519152805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258612e4e61239e565b6000613039600084612ea6565b600081815260cd602052604090209091506130548482614cf3565b50600081815260cf602052604090819020805460ff19168415151790555181907f4fce6f6e172b04eaa80325d8e3b0180a34945000f3e214605039e8420fdf8980906130a190869061437c565b60405180910390a260c954604051634f558e7960e01b8152600481018390526001600160a01b0390911690634f558e7990602401602060405180830381865afa1580156130f2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131169190614903565b610cde5760c9546040516307befae360e51b81526001600160a01b039091169063f7df5c6090610acc9084908790600401614db2565b600054610100900460ff166131735760405162461bcd60e51b815260040161098190614dd3565b610d9561317e61239e565b612f72565b600054610100900460ff166131aa5760405162461bcd60e51b815260040161098190614dd3565b610d9560006131b761239e565b61353b565b600054610100900460ff1661179e5760405162461bcd60e51b815260040161098190614dd3565b600054610100900460ff1661320a5760405162461bcd60e51b815260040161098190614dd3565b600080516020614ed4833981519152805460ff19169055565b600061323761323287896147f5565b612e6b565b506040516bffffffffffffffffffffffff1930606090811b821660208401524660348401528b811b82166054840152606883018490526001600160c01b031960c08a901b1660888401526090830188905286901b1660b082015290915060009061331390849061330d9060c401604051602081830303815290604052805190602001206040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c8101829052600090605c01604051602081830303815290604052805190602001209050919050565b9061384b565b905061331e816116f4565b6133765760405162461bcd60e51b8152602060048201526024808201527f4d696e74696e674d616e616765723a205349474e45525f49535f4e4f545f4d49604482015263272a22a960e11b6064820152608401610981565b42866001600160401b0316116133d85760405162461bcd60e51b815260206004820152602160248201527f4d696e74696e674d616e616765723a20455850495245445f5349474e415455526044820152604560f81b6064820152608401610981565b505050505050505050565b600061342a8a6133f38a8c6147f5565b6133fd898b6147f5565b613407888a6147f5565b60008f6001600160a01b031661341b61239e565b6001600160a01b0316146126c1565b9050896001600160a01b031661343e61239e565b6001600160a01b0316827fa545b6fd3355e8d57f8c8147bafe740545bd3ea1f94bef2576a6d532a7c3b605868660405161348b9291909182526001600160a01b0316602082015260400190565b60405180910390a450505050505050505050565b600081815260cd6020526040812080548291906134bb90614b04565b9050119050919050565b6134cd612cad565b6001600160a01b0381166135325760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610981565b610cf481612f72565b610d818282612c26565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546000906001600160a01b03163303613586575060331936013560601c90565b503390565b604080518082019091526000808252602082015260405180604001604052808381526020018486602001516135c09190614e1e565b9052949350505050565b600081516000036135dd57506000919050565b60208201805160f81c603081108015906135fb575060398160ff1611155b15801561361d575060618160ff161015801561361b5750607a8160ff1611155b155b1561362c575060009392505050565b8351600181111561369a5761364e836136466001846149ca565b015160f81c90565b915060308260ff1610158015613668575060398260ff1611155b15801561368a575060618260ff16101580156136885750607a8260ff1611155b155b1561369a57506000949350505050565b60015b6136a86001836149ca565b811015613722578381015160f81c9250602d83148015906136de575060308360ff16101580156136dc575060398360ff1611155b155b80156136ff575060618360ff16101580156136fd5750607a8360ff1611155b155b156137105750600095945050505050565b8061371a81614a39565b91505061369d565b50600195945050505050565b6137378161170e565b156137845760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a20544f4b454e5f424c4f434b45440000006044820152606401610981565b610cf48161386f565b6000806137a46000846001865161101691906149ca565b60ca549091506001600160a01b0316158015906137e05750807f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f145b9392505050565b6137f1828261156e565b610d8157613809816001600160a01b031660146138f3565b6138148360206138f3565b604051602001613825929190614e31565b60408051601f198184030181529082905262461bcd60e51b82526109819160040161437c565b600080600061385a8585613a8e565b9150915061386781613ad3565b509392505050565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd6960208201529081018290526001906138ae90606001611749565b805460ff19169115159190911790556040518181527f2ce5d9351b1d590d5a066db0d2dc7602d55f092506a83a7ee8c4d78ee357d75a9060200160405180910390a150565b60606000613902836002614ea6565b61390d906002614e1e565b6001600160401b0381111561392457613924614133565b6040519080825280601f01601f19166020018201604052801561394e576020820181803683370190505b509050600360fc1b81600081518110613969576139696149dd565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110613998576139986149dd565b60200101906001600160f81b031916908160001a90535060006139bc846002614ea6565b6139c7906001614e1e565b90505b6001811115613a3f576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106139fb576139fb6149dd565b1a60f81b828281518110613a1157613a116149dd565b60200101906001600160f81b031916908160001a90535060049490941c93613a3881614c7a565b90506139ca565b5083156137e05760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610981565b6000808251604103613ac45760208301516040840151606085015160001a613ab887828585613c89565b94509450505050613acc565b506000905060025b9250929050565b6000816004811115613ae757613ae7614ebd565b03613aef5750565b6001816004811115613b0357613b03614ebd565b03613b505760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152606401610981565b6002816004811115613b6457613b64614ebd565b03613bb15760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610981565b6003816004811115613bc557613bc5614ebd565b03613c1d5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b6064820152608401610981565b6004816004811115613c3157613c31614ebd565b03610cf45760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c604482015261756560f01b6064820152608401610981565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613cc05750600090506003613d6d565b8460ff16601b14158015613cd857508460ff16601c14155b15613ce95750600090506004613d6d565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613d3d573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613d6657600060019250925050613d6d565b9150600090505b94509492505050565b508054613d8290614b04565b6000825580601f10613d92575050565b601f016020900490600052602060002090810190610cf491905b80821115613dc05760008155600101613dac565b5090565b600060208284031215613dd657600080fd5b81356001600160e01b0319811681146137e057600080fd5b6001600160401b0381168114610cf457600080fd5b8035613e0e81613dee565b919050565b60008060408385031215613e2657600080fd5b8235613e3181613dee565b946020939093013593505050565b600060208284031215613e5157600080fd5b5035919050565b60008083601f840112613e6a57600080fd5b5081356001600160401b03811115613e8157600080fd5b602083019150836020828501011115613acc57600080fd5b600080600060408486031215613eae57600080fd5b8335925060208401356001600160401b03811115613ecb57600080fd5b613ed786828701613e58565b9497909650939450505050565b6001600160a01b0381168114610cf457600080fd5b8035613e0e81613ee4565b60008060408385031215613f1757600080fd5b823591506020830135613f2981613ee4565b809150509250929050565b600060208284031215613f4657600080fd5b81356137e081613ee4565b60008083601f840112613f6357600080fd5b5081356001600160401b03811115613f7a57600080fd5b6020830191508360208260051b8501011115613acc57600080fd5b8015158114610cf457600080fd5b60008060008060008060008060a0898b031215613fbf57600080fd5b8835613fca81613ee4565b975060208901356001600160401b0380821115613fe657600080fd5b613ff28c838d01613f51565b909950975060408b013591508082111561400b57600080fd5b6140178c838d01613f51565b909750955060608b013591508082111561403057600080fd5b5061403d8b828c01613f51565b909450925050608089013561405181613f95565b809150509295985092959890939650565b600080600080600080600080600060c08a8c03121561408057600080fd5b893561408b81613ee4565b985060208a01356001600160401b03808211156140a757600080fd5b6140b38d838e01613f51565b909a50985060408c01359150808211156140cc57600080fd5b6140d88d838e01613f51565b909850965060608c01359150808211156140f157600080fd5b506140fe8c828d01613f51565b90955093505060808a013561411281613dee565b915060a08a013561412281613f95565b809150509295985092959850929598565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561417157614171614133565b604052919050565b60006001600160401b0382111561419257614192614133565b5060051b60200190565b600060208083850312156141af57600080fd5b82356001600160401b038111156141c557600080fd5b8301601f810185136141d657600080fd5b80356141e96141e482614179565b614149565b81815260059190911b8201830190838101908783111561420857600080fd5b928401925b8284101561422f57833561422081613ee4565b8252928401929084019061420d565b979650505050505050565b6000806000806060858703121561425057600080fd5b843561425b81613ee4565b93506020850135925060408501356001600160401b0381111561427d57600080fd5b61428987828801613e58565b95989497509550505050565b600080602083850312156142a857600080fd5b82356001600160401b038111156142be57600080fd5b6142ca85828601613e58565b90969095509350505050565b6000806000604084860312156142eb57600080fd5b83356001600160401b0381111561430157600080fd5b61430d86828701613e58565b909450925050602084013561432181613f95565b809150509250925092565b60005b8381101561434757818101518382015260200161432f565b50506000910152565b6000815180845261436881602086016020860161432c565b601f01601f19169290920160200192915050565b6020815260006137e06020830184614350565b60008060008060008060c087890312156143a857600080fd5b86356143b381613ee4565b955060208701356143c381613ee4565b945060408701356143d381613ee4565b935060608701356143e381613ee4565b925060808701356143f381613ee4565b915060a087013561440381613ee4565b809150509295509295509295565b60008060008060008060008060a0898b03121561442d57600080fd5b883561443881613ee4565b97506020890135965060408901356001600160401b038082111561445b57600080fd5b6144678c838d01613e58565b909850965060608b013591508082111561448057600080fd5b61448c8c838d01613f51565b909650945060808b01359150808211156144a557600080fd5b506144b28b828c01613f51565b999c989b5096995094979396929594505050565b600080602083850312156144d957600080fd5b82356001600160401b038111156144ef57600080fd5b6142ca85828601613f51565b600080600080600080600080600080600060e08c8e03121561451c57600080fd5b6145258c613ef9565b9a506001600160401b038060208e0135111561454057600080fd5b6145508e60208f01358f01613f51565b909b50995060408d013581101561456657600080fd5b6145768e60408f01358f01613f51565b909950975060608d013581101561458c57600080fd5b61459c8e60608f01358f01613f51565b90975095506145ad60808e01613e03565b945060a08d013593508060c08e013511156145c757600080fd5b506145d88d60c08e01358e01613e58565b81935080925050509295989b509295989b9093969950565b6000806000806000806000806000806000806101008d8f03121561461357600080fd5b61461c8d613ef9565b9b506001600160401b0360208e0135111561463657600080fd5b6146468e60208f01358f01613f51565b909b5099506001600160401b0360408e0135111561466357600080fd5b6146738e60408f01358f01613f51565b90995097506001600160401b0360608e0135111561469057600080fd5b6146a08e60608f01358f01613f51565b90975095506146b160808e01613e03565b94506146bf60a08e01613ef9565b935060c08d013592506001600160401b0360e08e013511156146e057600080fd5b6146f08e60e08f01358f01613e58565b81935080925050509295989b509295989b509295989b565b6000806040838503121561471b57600080fd5b823561472681613ee4565b91506020830135613f2981613ee4565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b60006020828403121561477d57600080fd5b81516137e081613dee565b60208082526023908201527f4d696e74696e674d616e616765723a20544f4b454e5f4e4f545f455850495241604082015262424c4560e81b606082015260800190565b60208082526010908201526f14185d5cd8589b194e8814105554d15160821b604082015260600190565b60006148036141e484614179565b80848252602080830192508560051b85013681111561482157600080fd5b855b818110156148b35780356001600160401b03808211156148435760008081fd5b90880190601f36818401126148585760008081fd5b82358281111561486a5761486a614133565b61487b818301601f19168801614149565b9250808352368782860101111561489457600091508182fd5b8087850188850137600090830187015250865250938201938201614823565b50919695505050505050565b60208082526024908201527f4d696e74696e674d616e616765723a2043414c4c45525f49535f4e4f545f4d49604082015263272a22a960e11b606082015260800190565b60006020828403121561491557600080fd5b81516137e081613f95565b6020808252602f908201527f4d696e74696e674d616e616765723a2053454e4445525f49535f4e4f545f415060408201526e282927ab22a22fa7a92fa7aba722a960891b606082015260800190565b60208082526025908201527f4d696e74696e674d616e616765723a204c4142454c535f4c454e4754485f42456040820152642627abaf9960d91b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b81810381811115610954576109546149b4565b634e487b7160e01b600052603260045260246000fd5b60208082526026908201527f4d696e74696e674d616e616765723a20535542444f4d41494e535f4e4f545f41604082015265131313d5d15160d21b606082015260800190565b600060018201614a4b57614a4b6149b4565b5060010190565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b60208082526022908201527f4d696e74696e674d616e616765723a20544c445f4e4f545f5245474953544552604082015261115160f21b606082015260800190565b600060208284031215614ad557600080fd5b5051919050565b6b756e732d646576746573742d60a01b81528183600c83013760009101600c01908152919050565b600181811c90821680614b1857607f821691505b602082108103614b3857634e487b7160e01b600052602260045260246000fd5b50919050565b600060208284031215614b5057600080fd5b81516137e081613ee4565b600081518084526020808501808196508360051b8101915082860160005b85811015614ba3578284038952614b91848351614350565b98850198935090840190600101614b79565b5091979650505050505050565b6001600160a01b038616815260a060208201819052600090614bd490830187614b5b565b8281036040840152614be68187614b5b565b90508281036060840152614bfa8186614b5b565b91505082151560808301529695505050505050565b600060018060a01b03808616835260606020840152614c316060840186614350565b9150808416604084015250949350505050565b606081526000614c576060830186614b5b565b8281036020840152614c698186614b5b565b915050826040830152949350505050565b600081614c8957614c896149b4565b506000190190565b60008251614ca381846020870161432c565b9190910192915050565b601f821115610cde57600081815260208120601f850160051c81016020861015614cd45750805b601f850160051c820191505b818110156116a357828155600101614ce0565b81516001600160401b03811115614d0c57614d0c614133565b614d2081614d1a8454614b04565b84614cad565b602080601f831160018114614d555760008415614d3d5750858301515b600019600386901b1c1916600185901b1785556116a3565b600085815260208120601f198616915b82811015614d8457888601518255948401946001909101908401614d65565b5085821015614da25787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b828152604060208201526000614dcb6040830184614350565b949350505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b80820180821115610954576109546149b4565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351614e6981601785016020880161432c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351614e9a81602884016020880161432c565b01602801949350505050565b8082028115828204841417610954576109546149b4565b634e487b7160e01b600052602160045260246000fdfe5496787fc1ebdfeba375028c1865f13fbb1d63c0caa356ccc1b29a80f3ebd6229f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000811000a", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/artifacts/ProxyReader.json b/artifacts/ProxyReader.json index ef2f48b5..43972081 100644 --- a/artifacts/ProxyReader.json +++ b/artifacts/ProxyReader.json @@ -835,8 +835,8 @@ "type": "function" } ], - "bytecode": "0x608060405234801561000f575f80fd5b50613ae38061001d5f395ff3fe608060405234801561000f575f80fd5b5060043610610213575f3560e01c80638da5cb5b1161011f578063bebec6b4116100a9578063e985e9c511610079578063e985e9c514610536578063f059235914610549578063f2fde38b1461055c578063ffa1ad741461056f578063ffad6f5514610593575f80fd5b8063bebec6b4146104dd578063bfc5429b146104f0578063c15ae7cf14610503578063c87b56dd14610523575f80fd5b8063a81ce6f9116100ef578063a81ce6f914610463578063ac9650d814610476578063b3f9e4cb14610496578063b85afd28146104a9578063b98b3526146104ca575f80fd5b80638da5cb5b146103e757806391015f6b146103ef578063933c051d14610411578063a3f4df7e14610433575f80fd5b80634bd79ed0116101a057806370a082311161017057806370a0823114610383578063715018a6146103965780637e37479e1461039e57806383caffbe146103b1578063869b8884146103c4575f80fd5b80634bd79ed0146103295780634f558e791461033c5780636352211e1461034f578063672b9f8114610362575f80fd5b80631bd8cc1a116101e65780631bd8cc1a146102a25780631be5e7ed146102c2578063276fabb1146102e2578063430c208114610303578063485cc95514610316575f80fd5b806301ffc9a714610217578063032807551461023f578063081812fc1461026257806313af40351461028d575b5f80fd5b61022a610225366004612b8e565b6105a6565b60405190151581526020015b60405180910390f35b61025261024d366004612bf5565b61062d565b6040516102369493929190612ce1565b610275610270366004612d1e565b61064f565b6040516001600160a01b039091168152602001610236565b6102a061029b366004612d49565b61074e565b005b6102b56102b0366004612bf5565b6107be565b6040516102369190612d64565b6102d56102d0366004612db3565b6107dd565b6040516102369190612de6565b6102f56102f0366004612df8565b610901565b604051908152602001610236565b61022a610311366004612e36565b610972565b6102a0610324366004612e60565b610a7f565b6102a0610337366004612e97565b610bcc565b61022a61034a366004612d1e565b610e0f565b61027561035d366004612d1e565b610e19565b610375610370366004612efd565b610e23565b604051610236929190612f1d565b6102f5610391366004612d49565b610f4c565b6102a0611045565b6102f56103ac366004612d49565b611058565b6102b56103bf366004612f41565b6110c4565b6103d76103d2366004612e97565b611481565b6040516102369493929190613076565b61027561166c565b6104026103fd366004612bf5565b61169a565b604051610236939291906130c2565b61042461041f366004612e97565b6116b9565b604051610236939291906130ed565b6102d5604051806040016040528060118152602001702aa7299d10283937bc3c902932b0b232b960791b81525081565b610275610471366004612d1e565b611837565b610489610484366004612df8565b611900565b604051610236919061312f565b6102756104a4366004612d1e565b6119e7565b6104bc6104b7366004612bf5565b611a6b565b604051610236929190613191565b6102d56104d83660046131b5565b611c40565b6102d56104eb366004612d49565b611c5a565b6102d56104fe3660046131b5565b611cca565b610516610511366004612df8565b611ce4565b6040516102369190613222565b6102d5610531366004612d1e565b611d87565b61022a610544366004612e60565b611e54565b6102a0610557366004612e97565b611e9e565b6102a061056a366004612d49565b611f57565b6102d5604051806040016040528060058152602001640302e352e360dc1b81525081565b6102a06105a1366004613234565b611fc4565b5f6001600160e01b031982166362526e6360e01b14806105d657506001600160e01b03198216636fa624af60e11b145b806105f157506001600160e01b031982166308da864d60e31b145b8061060c57506001600160e01b03198216638584880360e01b145b8061062757506301ffc9a760e01b6001600160e01b03198316145b92915050565b5f8060608061063d87878761200c565b93509350935093505b93509350935093565b5f61065982612264565b61066457505f919050565b61066d826122f8565b6106e25760665460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa1580156106b9573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106dd9190613269565b610627565b60655460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa15801561072a573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106279190613269565b5f61075761166c565b6001600160a01b0316146107b25760405162461bcd60e51b815260206004820152601e60248201527f50726f78795265616465723a204f574e45525f414c52454144595f534554000060448201526064015b60405180910390fd5b6107bb8161233e565b50565b60606107d36107cd8486613310565b836123b8565b90505b9392505050565b60606107e8826122f8565b1561086957606554604051631be5e7ed60e01b81526001600160a01b0390911690631be5e7ed90610821908790879087906004016133e3565b5f60405180830381865afa15801561083b573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526108629190810190613448565b90506107d6565b5f61087383612532565b90506001600160a01b0381163b156108f957604051631be5e7ed60e01b81526001600160a01b03821690631be5e7ed906108b5908890889088906004016133e3565b5f60405180830381865afa9250505080156108f157506040513d5f823e601f3d908101601f191682016040526108ee9190810190613448565b60015b156108f95791505b509392505050565b60655460405163276fabb160e01b81525f916001600160a01b03169063276fabb19061093390869086906004016134fd565b602060405180830381865afa15801561094e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107d69190613510565b5f61097c82612264565b61098757505f610627565b610990826122f8565b610a0c5760665460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa1580156109e3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a079190613527565b6107d6565b60655460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a5b573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107d69190613527565b5f54610100900460ff1615808015610a9d57505f54600160ff909116105b80610ab65750303b158015610ab657505f5460ff166001145b610b195760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107a9565b5f805460ff191660011790558015610b3a575f805461ff0019166101001790555b606580546001600160a01b038086166001600160a01b0319928316179092556066805492851692909116919091179055610b726125a3565b610b7a6125a3565b610b826125c9565b8015610bc7575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b610bd46125f8565b828114610c235760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107a9565b5f5b83811015610e08575f6068868684818110610c4257610c42613546565b9050602002810190610c54919061355a565b604051610c6292919061359c565b908152604051908190036020019020541115610cc5576068858583818110610c8c57610c8c613546565b9050602002810190610c9e919061355a565b604051610cac92919061359c565b90815260200160405180910390205f610cc59190612b11565b5f5b838383818110610cd957610cd9613546565b9050602002810190610ceb91906135ab565b9050811015610da4576068868684818110610d0857610d08613546565b9050602002810190610d1a919061355a565b604051610d2892919061359c565b9081526020016040518091039020848484818110610d4857610d48613546565b9050602002810190610d5a91906135ab565b83818110610d6a57610d6a613546565b9050602002810190610d7c919061355a565b82546001810184555f938452602090932090920191610d9b918361366c565b50600101610cc7565b507fb2b57b54285120d17f49f2490a39ef791441fd0ad1e6b6818c23262bf91f061c858583818110610dd857610dd8613546565b9050602002810190610dea919061355a565b604051610df8929190613725565b60405180910390a1600101610c25565b5050505050565b5f61062782612264565b5f61062782612657565b606080610e2f836122f8565b15610eb15760655460405163672b9f8160e01b815260048101869052602481018590526001600160a01b039091169063672b9f81906044015f60405180830381865afa158015610e81573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052610ea89190810190613738565b91509150610f45565b5f610ebb84612532565b90506001600160a01b0381163b15610f435760405163672b9f8160e01b815260048101869052602481018590526001600160a01b0382169063672b9f81906044015f60405180830381865afa925050508015610f3857506040513d5f823e601f3d908101601f19168201604052610f359190810190613738565b60015b15610f435790935091505b505b9250929050565b6065546040516370a0823160e01b81526001600160a01b0383811660048301525f9283929116906370a0823190602401602060405180830381865afa158015610f97573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610fbb9190613510565b6066549091506001600160a01b031615610627576066546040516370a0823160e01b81526001600160a01b038581166004830152909116906370a0823190602401602060405180830381865afa158015611017573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061103b9190613510565b6107d69082613797565b61104d6125f8565b6110565f61233e565b565b606554604051633f1ba3cf60e11b81526001600160a01b0383811660048301525f921690637e37479e90602401602060405180830381865afa1580156110a0573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106279190613510565b60605f606786866040516110d992919061359c565b908152602001604051809103902080546110f2906135f0565b80601f016020809104026020016040519081016040528092919081815260200182805461111e906135f0565b80156111695780601f1061114057610100808354040283529160200191611169565b820191905f5260205f20905b81548152906001019060200180831161114c57829003601f168201915b5050505050905080515f0361117e5750611479565b5f604051806040016040528060068152602001653a37b5b2b71760d11b81525090505f604051806040016040528060088152602001672e6164647265737360c01b81525090505f604051806040016040528060018152602001601760f91b81525090505f8385838c8c868d8d8a604051602001611203999897969594939291906137b6565b60405160208183030381529060405290505f6068826040516112259190613836565b9081526020016040518091039020805480602002602001604051908101604052809291908181526020015f905b828210156112fa578382905f5260205f2001805461126f906135f0565b80601f016020809104026020016040519081016040528092919081815260200182805461129b906135f0565b80156112e65780601f106112bd576101008083540402835291602001916112e6565b820191905f5260205f20905b8154815290600101906020018083116112c957829003601f168201915b505050505081526020019060010190611252565b5050505090508051600361130e9190613797565b6001600160401b0381111561132557611325613284565b60405190808252806020026020018201604052801561135857816020015b60608152602001906001900390816113435790505b50965081875f8151811061136e5761136e613546565b60200260200101819052505f5b81518110156113cf5781818151811061139657611396613546565b6020026020010151888260016113ac9190613797565b815181106113bc576113bc613546565b602090810291909101015260010161137b565b508486848d8d886040516020016113eb96959493929190613851565b60405160208183030381529060405287825160016114099190613797565b8151811061141957611419613546565b6020026020010181905250848685604051602001611439939291906138b2565b60405160208183030381529060405287825160026114579190613797565b8151811061146757611467613546565b60200260200101819052505050505050505b949350505050565b6060808080846001600160401b0381111561149e5761149e613284565b6040519080825280602002602001820160405280156114c7578160200160208202803683370190505b509350846001600160401b038111156114e2576114e2613284565b60405190808252806020026020018201604052801561150b578160200160208202803683370190505b509250846001600160401b0381111561152657611526613284565b60405190808252806020026020018201604052801561155957816020015b60608152602001906001900390816115445790505b509150846001600160401b0381111561157457611574613284565b6040519080825280602002602001820160405280156115a757816020015b60608152602001906001900390816115925790505b5090505f5b85811015611660576115d789898989858181106115cb576115cb613546565b9050602002013561200c565b8885815181106115e9576115e9613546565b6020026020010188868151811061160257611602613546565b6020026020010188878151811061161b5761161b613546565b6020026020010188888151811061163457611634613546565b6020908102919091010193909352929091526001600160a01b03928316909152911690526001016115ac565b50945094509450949050565b7fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c8121905546001600160a01b031690565b5f8060606116a9868686612677565b9250925092505b93509350939050565b60608080836001600160401b038111156116d5576116d5613284565b6040519080825280602002602001820160405280156116fe578160200160208202803683370190505b509250836001600160401b0381111561171957611719613284565b604051908082528060200260200182016040528015611742578160200160208202803683370190505b509150836001600160401b0381111561175d5761175d613284565b60405190808252806020026020018201604052801561179057816020015b606081526020019060019003908161177b5790505b5090505f5b8481101561182c576117c088888888858181106117b4576117b4613546565b90506020020135612677565b8684815181106117d2576117d2613546565b602002602001018685815181106117eb576117eb613546565b6020026020010186868151811061180457611804613546565b60209081029190910101929092526001600160a01b0392831690915291169052600101611795565b509450945094915050565b606554604051634f558e7960e01b8152600481018390525f916001600160a01b031690634f558e7990602401602060405180830381865afa15801561187e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118a29190613527565b156118b85750506065546001600160a01b031690565b6066546001600160a01b0316158015906118e357505f6118d783612879565b6001600160a01b031614155b156118f95750506066546001600160a01b031690565b505f919050565b6060816001600160401b0381111561191a5761191a613284565b60405190808252806020026020018201604052801561194d57816020015b60608152602001906001900390816119385790505b5090505f5b828110156119e0576119bb3085858481811061197057611970613546565b9050602002810190611982919061355a565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152506128aa92505050565b8282815181106119cd576119cd613546565b6020908102919091010152600101611952565b5092915050565b5f6119f182612264565b6119fc57505f919050565b611a05826122f8565b611a3a5760665460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb9060240161069e565b60655460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb9060240161070f565b606080836001600160401b03811115611a8657611a86613284565b604051908082528060200260200182016040528015611ab957816020015b6060815260200190600190039081611aa45790505b509150836001600160401b03811115611ad457611ad4613284565b604051908082528060200260200182016040528015611b0757816020015b6060815260200190600190039081611af25790505b509050611b13836122f8565b15611b965760655460405163170b5fa560e31b81526001600160a01b039091169063b85afd2890611b4c908890889088906004016138f4565b5f60405180830381865afa158015611b66573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052611b8d91908101906139aa565b91509150611c38565b5f611ba084612532565b90506001600160a01b0381163b15158015611bba57508415155b15611c365760405163170b5fa560e31b81526001600160a01b0382169063b85afd2890611bef908990899089906004016138f4565b5f60405180830381865afa925050508015611c2b57506040513d5f823e601f3d908101601f19168201604052611c2891908101906139aa565b60015b15611c365790935091505b505b935093915050565b6060611c4f868686868661299a565b979650505050505050565b606554604051632fafb1ad60e21b81526001600160a01b038381166004830152606092169063bebec6b4906024015b5f60405180830381865afa158015611ca3573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526106279190810190613448565b6060611cd9868686868661299a565b509695505050505050565b6060816001600160401b03811115611cfe57611cfe613284565b604051908082528060200260200182016040528015611d27578160200160208202803683370190505b5090505f5b828110156119e057611d55848483818110611d4957611d49613546565b90506020020135612657565b828281518110611d6757611d67613546565b6001600160a01b0390921660209283029190910190910152600101611d2c565b6060611d9282612264565b611da957505060408051602081019091525f815290565b611db2826122f8565b611e235760665460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd906024015f60405180830381865afa158015611dfc573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526106dd9190810190613448565b60655460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401611c89565b60405162461bcd60e51b815260206004820152601f60248201527f50726f78795265616465723a20554e535550504f525445445f4d4554484f440060448201525f906064016107a9565b611ea66125f8565b828114611ef55760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107a9565b5f5b83811015610e0857611f4f858583818110611f1457611f14613546565b9050602002810190611f26919061355a565b858585818110611f3857611f38613546565b9050602002810190611f4a919061355a565b612a38565b600101611ef7565b611f5f6125f8565b6001600160a01b0381166107b25760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107a9565b611fcc6125f8565b5f5b83811015610e0857612004858583818110611feb57611feb613546565b9050602002810190611ffd919061355a565b8585612a38565b600101611fce565b5f80606080856001600160401b0381111561202957612029613284565b60405190808252806020026020018201604052801561205c57816020015b60608152602001906001900390816120475790505b509150856001600160401b0381111561207757612077613284565b6040519080825280602002602001820160405280156120aa57816020015b60608152602001906001900390816120955790505b5090506120b6856122f8565b156121b15760655460405163b3f9e4cb60e01b8152600481018790526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa158015612102573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906121269190613269565b935061213185612aa7565b60655460405163170b5fa560e31b81529194506001600160a01b03169063b85afd2890612166908a908a908a906004016138f4565b5f60405180830381865afa158015612180573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526121a791908101906139aa565b9092509050610646565b6121ba85612532565b93506121c585612879565b92506001600160a01b0384163b151580156121e057505f8251115b156106465760405163170b5fa560e31b81526001600160a01b0385169063b85afd2890612215908a908a908a906004016138f4565b5f60405180830381865afa92505050801561225157506040513d5f823e601f3d908101601f1916820160405261224e91908101906139aa565b60015b1561064657909250905093509350935093565b5f61226e826122f8565b61228c575f61227c83612879565b6001600160a01b03161415610627565b606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e79906024015b602060405180830381865afa1580156122d4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106279190613527565b6066545f906001600160a01b031615806106275750606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e79906024016122b9565b5f61234761166c565b9050817fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c812190580546001600160a01b0319166001600160a01b03928316179055604051838216918316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b606082516001600160401b038111156123d3576123d3613284565b60405190808252806020026020018201604052801561240657816020015b60608152602001906001900390816123f15790505b509050612412826122f8565b1561249157606554604051630dec660d60e11b81526001600160a01b0390911690631bd8cc1a9061244990869086906004016139ff565b5f60405180830381865afa158015612463573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261248a9190810190613a20565b9050610627565b5f61249b83612532565b90506001600160a01b0381163b151580156124b657505f8451115b156119e057604051630dec660d60e11b81526001600160a01b03821690631bd8cc1a906124e990879087906004016139ff565b5f60405180830381865afa92505050801561252557506040513d5f823e601f3d908101601f191682016040526125229190810190613a20565b60015b156119e057949350505050565b60665460405163b3f9e4cb60e01b8152600481018390525f916001600160a01b03169063b3f9e4cb906024015b602060405180830381865afa925050508015612598575060408051601f3d908101601f1916820190925261259591810190613269565b60015b61062757505f919050565b5f54610100900460ff166110565760405162461bcd60e51b81526004016107a990613a51565b5f54610100900460ff166125ef5760405162461bcd60e51b81526004016107a990613a51565b6110563361233e565b3361260161166c565b6001600160a01b0316146110565760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107a9565b5f612661826122f8565b61266e576106dd82612879565b61062782612aa7565b5f806060846001600160401b0381111561269357612693613284565b6040519080825280602002602001820160405280156126c657816020015b60608152602001906001900390816126b15790505b5090506126d2846122f8565b156127ca5760655460405163b3f9e4cb60e01b8152600481018690526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561271e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906127429190613269565b925061274d84612aa7565b606554604051630dec660d60e11b81529193506001600160a01b031690631bd8cc1a9061278290899089908990600401613a9c565b5f60405180830381865afa15801561279c573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526127c39190810190613a20565b90506116b0565b6127d384612532565b92506127de84612879565b91506001600160a01b0383163b151580156127f857508415155b156116b057604051630dec660d60e11b81526001600160a01b03841690631bd8cc1a9061282d90899089908990600401613a9c565b5f60405180830381865afa92505050801561286957506040513d5f823e601f3d908101601f191682016040526128669190810190613a20565b60015b156116b057905093509350939050565b6066546040516331a9108f60e11b8152600481018390525f916001600160a01b031690636352211e9060240161255f565b60606001600160a01b0383163b6129125760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b60648201526084016107a9565b5f80846001600160a01b03168460405161292c9190613836565b5f60405180830381855af49150503d805f8114612964576040519150601f19603f3d011682016040523d82523d5f602084013e612969565b606091505b50915091506129918282604051806060016040528060278152602001613ab060279139612ad8565b95945050505050565b6060805f6129aa888888886110c4565b90505f6129b782866123b8565b90505f5b8151811015612a2b575f8282815181106129d7576129d7613546565b6020026020010151511115612a23578281815181106129f8576129f8613546565b60200260200101519350818181518110612a1457612a14613546565b60200260200101519450612a2b565b6001016129bb565b5050509550959350505050565b818160678686604051612a4c92919061359c565b90815260200160405180910390209182612a6792919061366c565b507f0bf4b04a0f6d7d0800284e1abb0f58f795c0a25b9088634b6ab847be51001dec8484604051612a99929190613725565b60405180910390a150505050565b6065546040516331a9108f60e11b8152600481018390525f916001600160a01b031690636352211e9060240161255f565b60608315612ae75750816107d6565b825115612af75782518084602001fd5b8160405162461bcd60e51b81526004016107a99190612de6565b5080545f8255905f5260205f20908101906107bb91905b80821115612b44575f612b3b8282612b48565b50600101612b28565b5090565b508054612b54906135f0565b5f825580601f10612b63575050565b601f0160209004905f5260205f20908101906107bb91905b80821115612b44575f8155600101612b7b565b5f60208284031215612b9e575f80fd5b81356001600160e01b0319811681146107d6575f80fd5b5f8083601f840112612bc5575f80fd5b5081356001600160401b03811115612bdb575f80fd5b6020830191508360208260051b8501011115610f45575f80fd5b5f805f60408486031215612c07575f80fd5b83356001600160401b03811115612c1c575f80fd5b612c2886828701612bb5565b909790965060209590950135949350505050565b5f5b83811015612c56578181015183820152602001612c3e565b50505f910152565b5f8151808452612c75816020860160208601612c3c565b601f01601f19169290920160200192915050565b5f8282518085526020808601955060208260051b840101602086015f5b84811015612cd457601f19868403018952612cc2838351612c5e565b98840198925090830190600101612ca6565b5090979650505050505050565b6001600160a01b038581168252841660208201526080604082018190525f90612d0c90830185612c89565b8281036060840152611c4f8185612c89565b5f60208284031215612d2e575f80fd5b5035919050565b6001600160a01b03811681146107bb575f80fd5b5f60208284031215612d59575f80fd5b81356107d681612d35565b602081525f6107d66020830184612c89565b5f8083601f840112612d86575f80fd5b5081356001600160401b03811115612d9c575f80fd5b602083019150836020828501011115610f45575f80fd5b5f805f60408486031215612dc5575f80fd5b83356001600160401b03811115612dda575f80fd5b612c2886828701612d76565b602081525f6107d66020830184612c5e565b5f8060208385031215612e09575f80fd5b82356001600160401b03811115612e1e575f80fd5b612e2a85828601612bb5565b90969095509350505050565b5f8060408385031215612e47575f80fd5b8235612e5281612d35565b946020939093013593505050565b5f8060408385031215612e71575f80fd5b8235612e7c81612d35565b91506020830135612e8c81612d35565b809150509250929050565b5f805f8060408587031215612eaa575f80fd5b84356001600160401b0380821115612ec0575f80fd5b612ecc88838901612bb5565b90965094506020870135915080821115612ee4575f80fd5b50612ef187828801612bb5565b95989497509550505050565b5f8060408385031215612f0e575f80fd5b50508035926020909101359150565b604081525f612f2f6040830185612c5e565b82810360208401526129918185612c5e565b5f805f8060408587031215612f54575f80fd5b84356001600160401b0380821115612f6a575f80fd5b612f7688838901612d76565b90965094506020870135915080821115612f8e575f80fd5b50612ef187828801612d76565b5f815180845260208085019450602084015f5b83811015612fd35781516001600160a01b031687529582019590820190600101612fae565b509495945050505050565b5f828251808552602080860195506005818360051b8501018287015f5b8581101561306857601f1987840381018b5282518051808652908701908786019080881b870189015f5b82811015613051578589830301845261303f828651612c5e565b948b0194938b01939150600101613025565b509d89019d96505050928601925050600101612ffb565b509098975050505050505050565b608081525f6130886080830187612f9b565b828103602084015261309a8187612f9b565b905082810360408401526130ae8186612fde565b90508281036060840152611c4f8185612fde565b6001600160a01b038481168252831660208201526060604082018190525f9061299190830184612c89565b606081525f6130ff6060830186612f9b565b82810360208401526131118186612f9b565b905082810360408401526131258185612fde565b9695505050505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b8281101561318457603f19888603018452613172858351612c5e565b94509285019290850190600101613156565b5092979650505050505050565b604081525f6131a36040830185612c89565b82810360208401526129918185612c89565b5f805f805f606086880312156131c9575f80fd5b85356001600160401b03808211156131df575f80fd5b6131eb89838a01612d76565b90975095506020880135915080821115613203575f80fd5b5061321088828901612d76565b96999598509660400135949350505050565b602081525f6107d66020830184612f9b565b5f805f8060408587031215613247575f80fd5b84356001600160401b038082111561325d575f80fd5b612f7688838901612bb5565b5f60208284031215613279575f80fd5b81516107d681612d35565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f191681016001600160401b03811182821017156132c0576132c0613284565b604052919050565b5f6001600160401b038211156132e0576132e0613284565b5060051b60200190565b5f6001600160401b0382111561330257613302613284565b50601f01601f191660200190565b5f61332261331d846132c8565b613298565b80848252602080830192508560051b85013681111561333f575f80fd5b855b818110156133af5780356001600160401b0381111561335e575f80fd5b870136601f82011261336e575f80fd5b803561337c61331d826132ea565b818152368683850101111561338f575f80fd5b81868401878301375f918101860191909152865250938201938201613341565b50919695505050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b604081525f6133f66040830185876133bb565b9050826020830152949350505050565b5f82601f830112613415575f80fd5b815161342361331d826132ea565b818152846020838601011115613437575f80fd5b611479826020830160208701612c3c565b5f60208284031215613458575f80fd5b81516001600160401b0381111561346d575f80fd5b61147984828501613406565b5f838385526020808601955060208560051b830101845f5b87811015612cd457848303601f19018952813536889003601e190181126134b6575f80fd5b870184810190356001600160401b038111156134d0575f80fd5b8036038213156134de575f80fd5b6134e98582846133bb565b9a86019a9450505090830190600101613491565b602081525f6107d3602083018486613479565b5f60208284031215613520575f80fd5b5051919050565b5f60208284031215613537575f80fd5b815180151581146107d6575f80fd5b634e487b7160e01b5f52603260045260245ffd5b5f808335601e1984360301811261356f575f80fd5b8301803591506001600160401b03821115613588575f80fd5b602001915036819003821315610f45575f80fd5b818382375f9101908152919050565b5f808335601e198436030181126135c0575f80fd5b8301803591506001600160401b038211156135d9575f80fd5b6020019150600581901b3603821315610f45575f80fd5b600181811c9082168061360457607f821691505b60208210810361362257634e487b7160e01b5f52602260045260245ffd5b50919050565b601f821115610bc757805f5260205f20601f840160051c8101602085101561364d5750805b601f840160051c820191505b81811015610e08575f8155600101613659565b6001600160401b0383111561368357613683613284565b6136978361369183546135f0565b83613628565b5f601f8411600181146136c8575f85156136b15750838201355b5f19600387901b1c1916600186901b178355610e08565b5f83815260208120601f198716915b828110156136f757868501358255602094850194600190920191016136d7565b5086821015613713575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b602081525f6107d36020830184866133bb565b5f8060408385031215613749575f80fd5b82516001600160401b038082111561375f575f80fd5b61376b86838701613406565b93506020850151915080821115613780575f80fd5b5061378d85828601613406565b9150509250929050565b8082018082111561062757634e487b7160e01b5f52601160045260245ffd5b5f8a516137c7818460208f01612c3c565b8a51908301906137db818360208f01612c3c565b8a519101906137ee818360208e01612c3c565b01878982375f908801908152865161380a818360208b01612c3c565b01848682375f9085019081528351613826818360208801612c3c565b019b9a5050505050505050505050565b5f8251613847818460208701612c3c565b9190910192915050565b5f8751613862818460208c01612c3c565b875190830190613876818360208c01612c3c565b8751910190613889818360208b01612c3c565b01848682375f90850190815283516138a5818360208801612c3c565b0198975050505050505050565b5f84516138c3818460208901612c3c565b8451908301906138d7818360208901612c3c565b84519101906138ea818360208801612c3c565b0195945050505050565b604080825281018390525f6001600160fb1b03841115613912575f80fd5b8360051b808660608501376020830193909352500160600192915050565b5f82601f83011261393f575f80fd5b8151602061394f61331d836132c8565b82815260059290921b8401810191818101908684111561396d575f80fd5b8286015b84811015611cd95780516001600160401b0381111561398e575f80fd5b61399c8986838b0101613406565b845250918301918301613971565b5f80604083850312156139bb575f80fd5b82516001600160401b03808211156139d1575f80fd5b6139dd86838701613930565b935060208501519150808211156139f2575f80fd5b5061378d85828601613930565b604081525f613a116040830185612c89565b90508260208301529392505050565b5f60208284031215613a30575f80fd5b81516001600160401b03811115613a45575f80fd5b61147984828501613930565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b604081525f6133f660408301858761347956fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000818000a", - "deployedBytecode": "0x608060405234801561000f575f80fd5b5060043610610213575f3560e01c80638da5cb5b1161011f578063bebec6b4116100a9578063e985e9c511610079578063e985e9c514610536578063f059235914610549578063f2fde38b1461055c578063ffa1ad741461056f578063ffad6f5514610593575f80fd5b8063bebec6b4146104dd578063bfc5429b146104f0578063c15ae7cf14610503578063c87b56dd14610523575f80fd5b8063a81ce6f9116100ef578063a81ce6f914610463578063ac9650d814610476578063b3f9e4cb14610496578063b85afd28146104a9578063b98b3526146104ca575f80fd5b80638da5cb5b146103e757806391015f6b146103ef578063933c051d14610411578063a3f4df7e14610433575f80fd5b80634bd79ed0116101a057806370a082311161017057806370a0823114610383578063715018a6146103965780637e37479e1461039e57806383caffbe146103b1578063869b8884146103c4575f80fd5b80634bd79ed0146103295780634f558e791461033c5780636352211e1461034f578063672b9f8114610362575f80fd5b80631bd8cc1a116101e65780631bd8cc1a146102a25780631be5e7ed146102c2578063276fabb1146102e2578063430c208114610303578063485cc95514610316575f80fd5b806301ffc9a714610217578063032807551461023f578063081812fc1461026257806313af40351461028d575b5f80fd5b61022a610225366004612b8e565b6105a6565b60405190151581526020015b60405180910390f35b61025261024d366004612bf5565b61062d565b6040516102369493929190612ce1565b610275610270366004612d1e565b61064f565b6040516001600160a01b039091168152602001610236565b6102a061029b366004612d49565b61074e565b005b6102b56102b0366004612bf5565b6107be565b6040516102369190612d64565b6102d56102d0366004612db3565b6107dd565b6040516102369190612de6565b6102f56102f0366004612df8565b610901565b604051908152602001610236565b61022a610311366004612e36565b610972565b6102a0610324366004612e60565b610a7f565b6102a0610337366004612e97565b610bcc565b61022a61034a366004612d1e565b610e0f565b61027561035d366004612d1e565b610e19565b610375610370366004612efd565b610e23565b604051610236929190612f1d565b6102f5610391366004612d49565b610f4c565b6102a0611045565b6102f56103ac366004612d49565b611058565b6102b56103bf366004612f41565b6110c4565b6103d76103d2366004612e97565b611481565b6040516102369493929190613076565b61027561166c565b6104026103fd366004612bf5565b61169a565b604051610236939291906130c2565b61042461041f366004612e97565b6116b9565b604051610236939291906130ed565b6102d5604051806040016040528060118152602001702aa7299d10283937bc3c902932b0b232b960791b81525081565b610275610471366004612d1e565b611837565b610489610484366004612df8565b611900565b604051610236919061312f565b6102756104a4366004612d1e565b6119e7565b6104bc6104b7366004612bf5565b611a6b565b604051610236929190613191565b6102d56104d83660046131b5565b611c40565b6102d56104eb366004612d49565b611c5a565b6102d56104fe3660046131b5565b611cca565b610516610511366004612df8565b611ce4565b6040516102369190613222565b6102d5610531366004612d1e565b611d87565b61022a610544366004612e60565b611e54565b6102a0610557366004612e97565b611e9e565b6102a061056a366004612d49565b611f57565b6102d5604051806040016040528060058152602001640302e352e360dc1b81525081565b6102a06105a1366004613234565b611fc4565b5f6001600160e01b031982166362526e6360e01b14806105d657506001600160e01b03198216636fa624af60e11b145b806105f157506001600160e01b031982166308da864d60e31b145b8061060c57506001600160e01b03198216638584880360e01b145b8061062757506301ffc9a760e01b6001600160e01b03198316145b92915050565b5f8060608061063d87878761200c565b93509350935093505b93509350935093565b5f61065982612264565b61066457505f919050565b61066d826122f8565b6106e25760665460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa1580156106b9573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106dd9190613269565b610627565b60655460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa15801561072a573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106279190613269565b5f61075761166c565b6001600160a01b0316146107b25760405162461bcd60e51b815260206004820152601e60248201527f50726f78795265616465723a204f574e45525f414c52454144595f534554000060448201526064015b60405180910390fd5b6107bb8161233e565b50565b60606107d36107cd8486613310565b836123b8565b90505b9392505050565b60606107e8826122f8565b1561086957606554604051631be5e7ed60e01b81526001600160a01b0390911690631be5e7ed90610821908790879087906004016133e3565b5f60405180830381865afa15801561083b573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526108629190810190613448565b90506107d6565b5f61087383612532565b90506001600160a01b0381163b156108f957604051631be5e7ed60e01b81526001600160a01b03821690631be5e7ed906108b5908890889088906004016133e3565b5f60405180830381865afa9250505080156108f157506040513d5f823e601f3d908101601f191682016040526108ee9190810190613448565b60015b156108f95791505b509392505050565b60655460405163276fabb160e01b81525f916001600160a01b03169063276fabb19061093390869086906004016134fd565b602060405180830381865afa15801561094e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107d69190613510565b5f61097c82612264565b61098757505f610627565b610990826122f8565b610a0c5760665460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa1580156109e3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a079190613527565b6107d6565b60655460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a5b573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107d69190613527565b5f54610100900460ff1615808015610a9d57505f54600160ff909116105b80610ab65750303b158015610ab657505f5460ff166001145b610b195760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107a9565b5f805460ff191660011790558015610b3a575f805461ff0019166101001790555b606580546001600160a01b038086166001600160a01b0319928316179092556066805492851692909116919091179055610b726125a3565b610b7a6125a3565b610b826125c9565b8015610bc7575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b610bd46125f8565b828114610c235760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107a9565b5f5b83811015610e08575f6068868684818110610c4257610c42613546565b9050602002810190610c54919061355a565b604051610c6292919061359c565b908152604051908190036020019020541115610cc5576068858583818110610c8c57610c8c613546565b9050602002810190610c9e919061355a565b604051610cac92919061359c565b90815260200160405180910390205f610cc59190612b11565b5f5b838383818110610cd957610cd9613546565b9050602002810190610ceb91906135ab565b9050811015610da4576068868684818110610d0857610d08613546565b9050602002810190610d1a919061355a565b604051610d2892919061359c565b9081526020016040518091039020848484818110610d4857610d48613546565b9050602002810190610d5a91906135ab565b83818110610d6a57610d6a613546565b9050602002810190610d7c919061355a565b82546001810184555f938452602090932090920191610d9b918361366c565b50600101610cc7565b507fb2b57b54285120d17f49f2490a39ef791441fd0ad1e6b6818c23262bf91f061c858583818110610dd857610dd8613546565b9050602002810190610dea919061355a565b604051610df8929190613725565b60405180910390a1600101610c25565b5050505050565b5f61062782612264565b5f61062782612657565b606080610e2f836122f8565b15610eb15760655460405163672b9f8160e01b815260048101869052602481018590526001600160a01b039091169063672b9f81906044015f60405180830381865afa158015610e81573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052610ea89190810190613738565b91509150610f45565b5f610ebb84612532565b90506001600160a01b0381163b15610f435760405163672b9f8160e01b815260048101869052602481018590526001600160a01b0382169063672b9f81906044015f60405180830381865afa925050508015610f3857506040513d5f823e601f3d908101601f19168201604052610f359190810190613738565b60015b15610f435790935091505b505b9250929050565b6065546040516370a0823160e01b81526001600160a01b0383811660048301525f9283929116906370a0823190602401602060405180830381865afa158015610f97573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610fbb9190613510565b6066549091506001600160a01b031615610627576066546040516370a0823160e01b81526001600160a01b038581166004830152909116906370a0823190602401602060405180830381865afa158015611017573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061103b9190613510565b6107d69082613797565b61104d6125f8565b6110565f61233e565b565b606554604051633f1ba3cf60e11b81526001600160a01b0383811660048301525f921690637e37479e90602401602060405180830381865afa1580156110a0573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106279190613510565b60605f606786866040516110d992919061359c565b908152602001604051809103902080546110f2906135f0565b80601f016020809104026020016040519081016040528092919081815260200182805461111e906135f0565b80156111695780601f1061114057610100808354040283529160200191611169565b820191905f5260205f20905b81548152906001019060200180831161114c57829003601f168201915b5050505050905080515f0361117e5750611479565b5f604051806040016040528060068152602001653a37b5b2b71760d11b81525090505f604051806040016040528060088152602001672e6164647265737360c01b81525090505f604051806040016040528060018152602001601760f91b81525090505f8385838c8c868d8d8a604051602001611203999897969594939291906137b6565b60405160208183030381529060405290505f6068826040516112259190613836565b9081526020016040518091039020805480602002602001604051908101604052809291908181526020015f905b828210156112fa578382905f5260205f2001805461126f906135f0565b80601f016020809104026020016040519081016040528092919081815260200182805461129b906135f0565b80156112e65780601f106112bd576101008083540402835291602001916112e6565b820191905f5260205f20905b8154815290600101906020018083116112c957829003601f168201915b505050505081526020019060010190611252565b5050505090508051600361130e9190613797565b6001600160401b0381111561132557611325613284565b60405190808252806020026020018201604052801561135857816020015b60608152602001906001900390816113435790505b50965081875f8151811061136e5761136e613546565b60200260200101819052505f5b81518110156113cf5781818151811061139657611396613546565b6020026020010151888260016113ac9190613797565b815181106113bc576113bc613546565b602090810291909101015260010161137b565b508486848d8d886040516020016113eb96959493929190613851565b60405160208183030381529060405287825160016114099190613797565b8151811061141957611419613546565b6020026020010181905250848685604051602001611439939291906138b2565b60405160208183030381529060405287825160026114579190613797565b8151811061146757611467613546565b60200260200101819052505050505050505b949350505050565b6060808080846001600160401b0381111561149e5761149e613284565b6040519080825280602002602001820160405280156114c7578160200160208202803683370190505b509350846001600160401b038111156114e2576114e2613284565b60405190808252806020026020018201604052801561150b578160200160208202803683370190505b509250846001600160401b0381111561152657611526613284565b60405190808252806020026020018201604052801561155957816020015b60608152602001906001900390816115445790505b509150846001600160401b0381111561157457611574613284565b6040519080825280602002602001820160405280156115a757816020015b60608152602001906001900390816115925790505b5090505f5b85811015611660576115d789898989858181106115cb576115cb613546565b9050602002013561200c565b8885815181106115e9576115e9613546565b6020026020010188868151811061160257611602613546565b6020026020010188878151811061161b5761161b613546565b6020026020010188888151811061163457611634613546565b6020908102919091010193909352929091526001600160a01b03928316909152911690526001016115ac565b50945094509450949050565b7fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c8121905546001600160a01b031690565b5f8060606116a9868686612677565b9250925092505b93509350939050565b60608080836001600160401b038111156116d5576116d5613284565b6040519080825280602002602001820160405280156116fe578160200160208202803683370190505b509250836001600160401b0381111561171957611719613284565b604051908082528060200260200182016040528015611742578160200160208202803683370190505b509150836001600160401b0381111561175d5761175d613284565b60405190808252806020026020018201604052801561179057816020015b606081526020019060019003908161177b5790505b5090505f5b8481101561182c576117c088888888858181106117b4576117b4613546565b90506020020135612677565b8684815181106117d2576117d2613546565b602002602001018685815181106117eb576117eb613546565b6020026020010186868151811061180457611804613546565b60209081029190910101929092526001600160a01b0392831690915291169052600101611795565b509450945094915050565b606554604051634f558e7960e01b8152600481018390525f916001600160a01b031690634f558e7990602401602060405180830381865afa15801561187e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118a29190613527565b156118b85750506065546001600160a01b031690565b6066546001600160a01b0316158015906118e357505f6118d783612879565b6001600160a01b031614155b156118f95750506066546001600160a01b031690565b505f919050565b6060816001600160401b0381111561191a5761191a613284565b60405190808252806020026020018201604052801561194d57816020015b60608152602001906001900390816119385790505b5090505f5b828110156119e0576119bb3085858481811061197057611970613546565b9050602002810190611982919061355a565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152506128aa92505050565b8282815181106119cd576119cd613546565b6020908102919091010152600101611952565b5092915050565b5f6119f182612264565b6119fc57505f919050565b611a05826122f8565b611a3a5760665460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb9060240161069e565b60655460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb9060240161070f565b606080836001600160401b03811115611a8657611a86613284565b604051908082528060200260200182016040528015611ab957816020015b6060815260200190600190039081611aa45790505b509150836001600160401b03811115611ad457611ad4613284565b604051908082528060200260200182016040528015611b0757816020015b6060815260200190600190039081611af25790505b509050611b13836122f8565b15611b965760655460405163170b5fa560e31b81526001600160a01b039091169063b85afd2890611b4c908890889088906004016138f4565b5f60405180830381865afa158015611b66573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052611b8d91908101906139aa565b91509150611c38565b5f611ba084612532565b90506001600160a01b0381163b15158015611bba57508415155b15611c365760405163170b5fa560e31b81526001600160a01b0382169063b85afd2890611bef908990899089906004016138f4565b5f60405180830381865afa925050508015611c2b57506040513d5f823e601f3d908101601f19168201604052611c2891908101906139aa565b60015b15611c365790935091505b505b935093915050565b6060611c4f868686868661299a565b979650505050505050565b606554604051632fafb1ad60e21b81526001600160a01b038381166004830152606092169063bebec6b4906024015b5f60405180830381865afa158015611ca3573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526106279190810190613448565b6060611cd9868686868661299a565b509695505050505050565b6060816001600160401b03811115611cfe57611cfe613284565b604051908082528060200260200182016040528015611d27578160200160208202803683370190505b5090505f5b828110156119e057611d55848483818110611d4957611d49613546565b90506020020135612657565b828281518110611d6757611d67613546565b6001600160a01b0390921660209283029190910190910152600101611d2c565b6060611d9282612264565b611da957505060408051602081019091525f815290565b611db2826122f8565b611e235760665460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd906024015f60405180830381865afa158015611dfc573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526106dd9190810190613448565b60655460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401611c89565b60405162461bcd60e51b815260206004820152601f60248201527f50726f78795265616465723a20554e535550504f525445445f4d4554484f440060448201525f906064016107a9565b611ea66125f8565b828114611ef55760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107a9565b5f5b83811015610e0857611f4f858583818110611f1457611f14613546565b9050602002810190611f26919061355a565b858585818110611f3857611f38613546565b9050602002810190611f4a919061355a565b612a38565b600101611ef7565b611f5f6125f8565b6001600160a01b0381166107b25760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107a9565b611fcc6125f8565b5f5b83811015610e0857612004858583818110611feb57611feb613546565b9050602002810190611ffd919061355a565b8585612a38565b600101611fce565b5f80606080856001600160401b0381111561202957612029613284565b60405190808252806020026020018201604052801561205c57816020015b60608152602001906001900390816120475790505b509150856001600160401b0381111561207757612077613284565b6040519080825280602002602001820160405280156120aa57816020015b60608152602001906001900390816120955790505b5090506120b6856122f8565b156121b15760655460405163b3f9e4cb60e01b8152600481018790526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa158015612102573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906121269190613269565b935061213185612aa7565b60655460405163170b5fa560e31b81529194506001600160a01b03169063b85afd2890612166908a908a908a906004016138f4565b5f60405180830381865afa158015612180573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526121a791908101906139aa565b9092509050610646565b6121ba85612532565b93506121c585612879565b92506001600160a01b0384163b151580156121e057505f8251115b156106465760405163170b5fa560e31b81526001600160a01b0385169063b85afd2890612215908a908a908a906004016138f4565b5f60405180830381865afa92505050801561225157506040513d5f823e601f3d908101601f1916820160405261224e91908101906139aa565b60015b1561064657909250905093509350935093565b5f61226e826122f8565b61228c575f61227c83612879565b6001600160a01b03161415610627565b606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e79906024015b602060405180830381865afa1580156122d4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106279190613527565b6066545f906001600160a01b031615806106275750606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e79906024016122b9565b5f61234761166c565b9050817fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c812190580546001600160a01b0319166001600160a01b03928316179055604051838216918316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b606082516001600160401b038111156123d3576123d3613284565b60405190808252806020026020018201604052801561240657816020015b60608152602001906001900390816123f15790505b509050612412826122f8565b1561249157606554604051630dec660d60e11b81526001600160a01b0390911690631bd8cc1a9061244990869086906004016139ff565b5f60405180830381865afa158015612463573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261248a9190810190613a20565b9050610627565b5f61249b83612532565b90506001600160a01b0381163b151580156124b657505f8451115b156119e057604051630dec660d60e11b81526001600160a01b03821690631bd8cc1a906124e990879087906004016139ff565b5f60405180830381865afa92505050801561252557506040513d5f823e601f3d908101601f191682016040526125229190810190613a20565b60015b156119e057949350505050565b60665460405163b3f9e4cb60e01b8152600481018390525f916001600160a01b03169063b3f9e4cb906024015b602060405180830381865afa925050508015612598575060408051601f3d908101601f1916820190925261259591810190613269565b60015b61062757505f919050565b5f54610100900460ff166110565760405162461bcd60e51b81526004016107a990613a51565b5f54610100900460ff166125ef5760405162461bcd60e51b81526004016107a990613a51565b6110563361233e565b3361260161166c565b6001600160a01b0316146110565760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107a9565b5f612661826122f8565b61266e576106dd82612879565b61062782612aa7565b5f806060846001600160401b0381111561269357612693613284565b6040519080825280602002602001820160405280156126c657816020015b60608152602001906001900390816126b15790505b5090506126d2846122f8565b156127ca5760655460405163b3f9e4cb60e01b8152600481018690526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561271e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906127429190613269565b925061274d84612aa7565b606554604051630dec660d60e11b81529193506001600160a01b031690631bd8cc1a9061278290899089908990600401613a9c565b5f60405180830381865afa15801561279c573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526127c39190810190613a20565b90506116b0565b6127d384612532565b92506127de84612879565b91506001600160a01b0383163b151580156127f857508415155b156116b057604051630dec660d60e11b81526001600160a01b03841690631bd8cc1a9061282d90899089908990600401613a9c565b5f60405180830381865afa92505050801561286957506040513d5f823e601f3d908101601f191682016040526128669190810190613a20565b60015b156116b057905093509350939050565b6066546040516331a9108f60e11b8152600481018390525f916001600160a01b031690636352211e9060240161255f565b60606001600160a01b0383163b6129125760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b60648201526084016107a9565b5f80846001600160a01b03168460405161292c9190613836565b5f60405180830381855af49150503d805f8114612964576040519150601f19603f3d011682016040523d82523d5f602084013e612969565b606091505b50915091506129918282604051806060016040528060278152602001613ab060279139612ad8565b95945050505050565b6060805f6129aa888888886110c4565b90505f6129b782866123b8565b90505f5b8151811015612a2b575f8282815181106129d7576129d7613546565b6020026020010151511115612a23578281815181106129f8576129f8613546565b60200260200101519350818181518110612a1457612a14613546565b60200260200101519450612a2b565b6001016129bb565b5050509550959350505050565b818160678686604051612a4c92919061359c565b90815260200160405180910390209182612a6792919061366c565b507f0bf4b04a0f6d7d0800284e1abb0f58f795c0a25b9088634b6ab847be51001dec8484604051612a99929190613725565b60405180910390a150505050565b6065546040516331a9108f60e11b8152600481018390525f916001600160a01b031690636352211e9060240161255f565b60608315612ae75750816107d6565b825115612af75782518084602001fd5b8160405162461bcd60e51b81526004016107a99190612de6565b5080545f8255905f5260205f20908101906107bb91905b80821115612b44575f612b3b8282612b48565b50600101612b28565b5090565b508054612b54906135f0565b5f825580601f10612b63575050565b601f0160209004905f5260205f20908101906107bb91905b80821115612b44575f8155600101612b7b565b5f60208284031215612b9e575f80fd5b81356001600160e01b0319811681146107d6575f80fd5b5f8083601f840112612bc5575f80fd5b5081356001600160401b03811115612bdb575f80fd5b6020830191508360208260051b8501011115610f45575f80fd5b5f805f60408486031215612c07575f80fd5b83356001600160401b03811115612c1c575f80fd5b612c2886828701612bb5565b909790965060209590950135949350505050565b5f5b83811015612c56578181015183820152602001612c3e565b50505f910152565b5f8151808452612c75816020860160208601612c3c565b601f01601f19169290920160200192915050565b5f8282518085526020808601955060208260051b840101602086015f5b84811015612cd457601f19868403018952612cc2838351612c5e565b98840198925090830190600101612ca6565b5090979650505050505050565b6001600160a01b038581168252841660208201526080604082018190525f90612d0c90830185612c89565b8281036060840152611c4f8185612c89565b5f60208284031215612d2e575f80fd5b5035919050565b6001600160a01b03811681146107bb575f80fd5b5f60208284031215612d59575f80fd5b81356107d681612d35565b602081525f6107d66020830184612c89565b5f8083601f840112612d86575f80fd5b5081356001600160401b03811115612d9c575f80fd5b602083019150836020828501011115610f45575f80fd5b5f805f60408486031215612dc5575f80fd5b83356001600160401b03811115612dda575f80fd5b612c2886828701612d76565b602081525f6107d66020830184612c5e565b5f8060208385031215612e09575f80fd5b82356001600160401b03811115612e1e575f80fd5b612e2a85828601612bb5565b90969095509350505050565b5f8060408385031215612e47575f80fd5b8235612e5281612d35565b946020939093013593505050565b5f8060408385031215612e71575f80fd5b8235612e7c81612d35565b91506020830135612e8c81612d35565b809150509250929050565b5f805f8060408587031215612eaa575f80fd5b84356001600160401b0380821115612ec0575f80fd5b612ecc88838901612bb5565b90965094506020870135915080821115612ee4575f80fd5b50612ef187828801612bb5565b95989497509550505050565b5f8060408385031215612f0e575f80fd5b50508035926020909101359150565b604081525f612f2f6040830185612c5e565b82810360208401526129918185612c5e565b5f805f8060408587031215612f54575f80fd5b84356001600160401b0380821115612f6a575f80fd5b612f7688838901612d76565b90965094506020870135915080821115612f8e575f80fd5b50612ef187828801612d76565b5f815180845260208085019450602084015f5b83811015612fd35781516001600160a01b031687529582019590820190600101612fae565b509495945050505050565b5f828251808552602080860195506005818360051b8501018287015f5b8581101561306857601f1987840381018b5282518051808652908701908786019080881b870189015f5b82811015613051578589830301845261303f828651612c5e565b948b0194938b01939150600101613025565b509d89019d96505050928601925050600101612ffb565b509098975050505050505050565b608081525f6130886080830187612f9b565b828103602084015261309a8187612f9b565b905082810360408401526130ae8186612fde565b90508281036060840152611c4f8185612fde565b6001600160a01b038481168252831660208201526060604082018190525f9061299190830184612c89565b606081525f6130ff6060830186612f9b565b82810360208401526131118186612f9b565b905082810360408401526131258185612fde565b9695505050505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b8281101561318457603f19888603018452613172858351612c5e565b94509285019290850190600101613156565b5092979650505050505050565b604081525f6131a36040830185612c89565b82810360208401526129918185612c89565b5f805f805f606086880312156131c9575f80fd5b85356001600160401b03808211156131df575f80fd5b6131eb89838a01612d76565b90975095506020880135915080821115613203575f80fd5b5061321088828901612d76565b96999598509660400135949350505050565b602081525f6107d66020830184612f9b565b5f805f8060408587031215613247575f80fd5b84356001600160401b038082111561325d575f80fd5b612f7688838901612bb5565b5f60208284031215613279575f80fd5b81516107d681612d35565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f191681016001600160401b03811182821017156132c0576132c0613284565b604052919050565b5f6001600160401b038211156132e0576132e0613284565b5060051b60200190565b5f6001600160401b0382111561330257613302613284565b50601f01601f191660200190565b5f61332261331d846132c8565b613298565b80848252602080830192508560051b85013681111561333f575f80fd5b855b818110156133af5780356001600160401b0381111561335e575f80fd5b870136601f82011261336e575f80fd5b803561337c61331d826132ea565b818152368683850101111561338f575f80fd5b81868401878301375f918101860191909152865250938201938201613341565b50919695505050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b604081525f6133f66040830185876133bb565b9050826020830152949350505050565b5f82601f830112613415575f80fd5b815161342361331d826132ea565b818152846020838601011115613437575f80fd5b611479826020830160208701612c3c565b5f60208284031215613458575f80fd5b81516001600160401b0381111561346d575f80fd5b61147984828501613406565b5f838385526020808601955060208560051b830101845f5b87811015612cd457848303601f19018952813536889003601e190181126134b6575f80fd5b870184810190356001600160401b038111156134d0575f80fd5b8036038213156134de575f80fd5b6134e98582846133bb565b9a86019a9450505090830190600101613491565b602081525f6107d3602083018486613479565b5f60208284031215613520575f80fd5b5051919050565b5f60208284031215613537575f80fd5b815180151581146107d6575f80fd5b634e487b7160e01b5f52603260045260245ffd5b5f808335601e1984360301811261356f575f80fd5b8301803591506001600160401b03821115613588575f80fd5b602001915036819003821315610f45575f80fd5b818382375f9101908152919050565b5f808335601e198436030181126135c0575f80fd5b8301803591506001600160401b038211156135d9575f80fd5b6020019150600581901b3603821315610f45575f80fd5b600181811c9082168061360457607f821691505b60208210810361362257634e487b7160e01b5f52602260045260245ffd5b50919050565b601f821115610bc757805f5260205f20601f840160051c8101602085101561364d5750805b601f840160051c820191505b81811015610e08575f8155600101613659565b6001600160401b0383111561368357613683613284565b6136978361369183546135f0565b83613628565b5f601f8411600181146136c8575f85156136b15750838201355b5f19600387901b1c1916600186901b178355610e08565b5f83815260208120601f198716915b828110156136f757868501358255602094850194600190920191016136d7565b5086821015613713575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b602081525f6107d36020830184866133bb565b5f8060408385031215613749575f80fd5b82516001600160401b038082111561375f575f80fd5b61376b86838701613406565b93506020850151915080821115613780575f80fd5b5061378d85828601613406565b9150509250929050565b8082018082111561062757634e487b7160e01b5f52601160045260245ffd5b5f8a516137c7818460208f01612c3c565b8a51908301906137db818360208f01612c3c565b8a519101906137ee818360208e01612c3c565b01878982375f908801908152865161380a818360208b01612c3c565b01848682375f9085019081528351613826818360208801612c3c565b019b9a5050505050505050505050565b5f8251613847818460208701612c3c565b9190910192915050565b5f8751613862818460208c01612c3c565b875190830190613876818360208c01612c3c565b8751910190613889818360208b01612c3c565b01848682375f90850190815283516138a5818360208801612c3c565b0198975050505050505050565b5f84516138c3818460208901612c3c565b8451908301906138d7818360208901612c3c565b84519101906138ea818360208801612c3c565b0195945050505050565b604080825281018390525f6001600160fb1b03841115613912575f80fd5b8360051b808660608501376020830193909352500160600192915050565b5f82601f83011261393f575f80fd5b8151602061394f61331d836132c8565b82815260059290921b8401810191818101908684111561396d575f80fd5b8286015b84811015611cd95780516001600160401b0381111561398e575f80fd5b61399c8986838b0101613406565b845250918301918301613971565b5f80604083850312156139bb575f80fd5b82516001600160401b03808211156139d1575f80fd5b6139dd86838701613930565b935060208501519150808211156139f2575f80fd5b5061378d85828601613930565b604081525f613a116040830185612c89565b90508260208301529392505050565b5f60208284031215613a30575f80fd5b81516001600160401b03811115613a45575f80fd5b61147984828501613930565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b604081525f6133f660408301858761347956fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000818000a", + "bytecode": "0x608060405234801561001057600080fd5b50613cb4806100206000396000f3fe608060405234801561001057600080fd5b506004361061021c5760003560e01c80638da5cb5b11610125578063bebec6b4116100ad578063e985e9c51161007c578063e985e9c514610540578063f059235914610553578063f2fde38b14610566578063ffa1ad7414610579578063ffad6f551461059d57600080fd5b8063bebec6b4146104e7578063bfc5429b146104fa578063c15ae7cf1461050d578063c87b56dd1461052d57600080fd5b8063a81ce6f9116100f4578063a81ce6f91461046d578063ac9650d814610480578063b3f9e4cb146104a0578063b85afd28146104b3578063b98b3526146104d457600080fd5b80638da5cb5b146103f157806391015f6b146103f9578063933c051d1461041b578063a3f4df7e1461043d57600080fd5b80634bd79ed0116101a857806370a082311161017757806370a082311461038d578063715018a6146103a05780637e37479e146103a857806383caffbe146103bb578063869b8884146103ce57600080fd5b80634bd79ed0146103335780634f558e79146103465780636352211e14610359578063672b9f811461036c57600080fd5b80631bd8cc1a116101ef5780631bd8cc1a146102ac5780631be5e7ed146102cc578063276fabb1146102ec578063430c20811461030d578063485cc9551461032057600080fd5b806301ffc9a7146102215780630328075514610249578063081812fc1461026c57806313af403514610297575b600080fd5b61023461022f366004612c9d565b6105b0565b60405190151581526020015b60405180910390f35b61025c610257366004612d0b565b610638565b6040516102409493929190612dfe565b61027f61027a366004612e3c565b61065b565b6040516001600160a01b039091168152602001610240565b6102aa6102a5366004612e6a565b610760565b005b6102bf6102ba366004612d0b565b6107d1565b6040516102409190612e87565b6102df6102da366004612edb565b6107f0565b6040516102409190612f12565b6102ff6102fa366004612f25565b61091b565b604051908152602001610240565b61023461031b366004612f66565b61098f565b6102aa61032e366004612f92565b610aa2565b6102aa610341366004612fcb565b610bf5565b610234610354366004612e3c565b610e51565b61027f610367366004612e3c565b610e5c565b61037f61037a366004613036565b610e67565b604051610240929190613058565b6102ff61039b366004612e6a565b610f97565b6102aa611095565b6102ff6103b6366004612e6a565b6110a9565b6102bf6103c936600461307d565b611118565b6103e16103dc366004612fcb565b6114f0565b60405161024094939291906131bb565b61027f6116e6565b61040c610407366004612d0b565b611714565b60405161024093929190613208565b61042e610429366004612fcb565b611734565b60405161024093929190613234565b6102df604051806040016040528060118152602001702aa7299d10283937bc3c902932b0b232b960791b81525081565b61027f61047b366004612e3c565b6118bd565b61049361048e366004612f25565b61198b565b6040516102409190613277565b61027f6104ae366004612e3c565b611a7f565b6104c66104c1366004612d0b565b611b05565b6040516102409291906132d9565b6102df6104e23660046132fe565b611ce1565b6102df6104f5366004612e6a565b611cfb565b6102df6105083660046132fe565b611d6f565b61052061051b366004612f25565b611d89565b6040516102409190613371565b6102df61053b366004612e3c565b611e37565b61023461054e366004612f92565b611f09565b6102aa610561366004612fcb565b611f54565b6102aa610574366004612e6a565b612018565b6102df604051806040016040528060058152602001640302e352e360dc1b81525081565b6102aa6105ab366004613384565b612085565b60006001600160e01b031982166362526e6360e01b14806105e157506001600160e01b03198216636fa624af60e11b145b806105fc57506001600160e01b031982166308da864d60e31b145b8061061757506001600160e01b03198216638584880360e01b145b8061063257506301ffc9a760e01b6001600160e01b03198316145b92915050565b6000806060806106498787876120d8565b93509350935093505b93509350935093565b60006106668261233a565b61067257506000919050565b61067b826123d2565b6106f25760665460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa1580156106c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106ed91906133bd565b610632565b60655460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa15801561073c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061063291906133bd565b600061076a6116e6565b6001600160a01b0316146107c55760405162461bcd60e51b815260206004820152601e60248201527f50726f78795265616465723a204f574e45525f414c52454144595f534554000060448201526064015b60405180910390fd5b6107ce81612419565b50565b60606107e66107e0848661346a565b83612495565b90505b9392505050565b60606107fb826123d2565b1561088057606554604051631be5e7ed60e01b81526001600160a01b0390911690631be5e7ed9061083490879087908790600401613547565b600060405180830381865afa158015610851573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261087991908101906135b0565b90506107e9565b600061088b83612617565b90506001600160a01b0381163b1561091357604051631be5e7ed60e01b81526001600160a01b03821690631be5e7ed906108cd90889088908890600401613547565b600060405180830381865afa92505050801561090b57506040513d6000823e601f3d908101601f1916820160405261090891908101906135b0565b60015b156109135791505b509392505050565b60655460405163276fabb160e01b81526000916001600160a01b03169063276fabb19061094e908690869060040161366c565b602060405180830381865afa15801561096b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613680565b600061099a8261233a565b6109a657506000610632565b6109af826123d2565b610a2d5760665460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a04573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a289190613699565b6107e9565b60655460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a7e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613699565b600054610100900460ff1615808015610ac25750600054600160ff909116105b80610adc5750303b158015610adc575060005460ff166001145b610b3f5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107bc565b6000805460ff191660011790558015610b62576000805461ff0019166101001790555b606580546001600160a01b038086166001600160a01b0319928316179092556066805492851692909116919091179055610b9a61268a565b610ba261268a565b610baa6126b1565b8015610bf0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b610bfd6126e1565b828114610c4c5760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107bc565b60005b83811015610e4a5760006068868684818110610c6d57610c6d6136bb565b9050602002810190610c7f91906136d1565b604051610c8d929190613717565b908152604051908190036020019020541115610cf1576068858583818110610cb757610cb76136bb565b9050602002810190610cc991906136d1565b604051610cd7929190613717565b90815260200160405180910390206000610cf19190612c18565b60005b838383818110610d0657610d066136bb565b9050602002810190610d189190613727565b9050811015610ddc576068868684818110610d3557610d356136bb565b9050602002810190610d4791906136d1565b604051610d55929190613717565b9081526020016040518091039020848484818110610d7557610d756136bb565b9050602002810190610d879190613727565b83818110610d9757610d976136bb565b9050602002810190610da991906136d1565b82546001810184556000938452602090932090920191610dc991836137f8565b5080610dd4816138cd565b915050610cf4565b507fb2b57b54285120d17f49f2490a39ef791441fd0ad1e6b6818c23262bf91f061c858583818110610e1057610e106136bb565b9050602002810190610e2291906136d1565b604051610e309291906138e6565b60405180910390a180610e42816138cd565b915050610c4f565b5050505050565b60006106328261233a565b600061063282612740565b606080610e73836123d2565b15610ef95760655460405163672b9f8160e01b815260048101869052602481018590526001600160a01b039091169063672b9f8190604401600060405180830381865afa158015610ec8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610ef091908101906138fa565b91509150610f90565b6000610f0484612617565b90506001600160a01b0381163b15610f8e5760405163672b9f8160e01b815260048101869052602481018590526001600160a01b0382169063672b9f8190604401600060405180830381865afa925050508015610f8357506040513d6000823e601f3d908101601f19168201604052610f8091908101906138fa565b60015b15610f8e5790935091505b505b9250929050565b6065546040516370a0823160e01b81526001600160a01b03838116600483015260009283929116906370a0823190602401602060405180830381865afa158015610fe5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110099190613680565b6066549091506001600160a01b031615610632576066546040516370a0823160e01b81526001600160a01b038581166004830152909116906370a0823190602401602060405180830381865afa158015611067573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061108b9190613680565b6107e9908261395d565b61109d6126e1565b6110a76000612419565b565b606554604051633f1ba3cf60e11b81526001600160a01b0383811660048301526000921690637e37479e90602401602060405180830381865afa1580156110f4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190613680565b606060006067868660405161112e929190613717565b9081526020016040518091039020805461114790613770565b80601f016020809104026020016040519081016040528092919081815260200182805461117390613770565b80156111c05780601f10611195576101008083540402835291602001916111c0565b820191906000526020600020905b8154815290600101906020018083116111a357829003601f168201915b5050505050905080516000036111d657506114e8565b6000604051806040016040528060068152602001653a37b5b2b71760d11b81525090506000604051806040016040528060088152602001672e6164647265737360c01b81525090506000604051806040016040528060018152602001601760f91b815250905060008385838c8c868d8d8a60405160200161125f99989796959493929190613970565b6040516020818303038152906040529050600060688260405161128291906139f3565b9081526020016040518091039020805480602002602001604051908101604052809291908181526020016000905b8282101561135c5783829060005260206000200180546112cf90613770565b80601f01602080910402602001604051908101604052809291908181526020018280546112fb90613770565b80156113485780601f1061131d57610100808354040283529160200191611348565b820191906000526020600020905b81548152906001019060200180831161132b57829003601f168201915b5050505050815260200190600101906112b0565b50505050905080516003611370919061395d565b6001600160401b03811115611387576113876133da565b6040519080825280602002602001820160405280156113ba57816020015b60608152602001906001900390816113a55790505b50965081876000815181106113d1576113d16136bb565b602002602001018190525060005b815181101561143e578181815181106113fa576113fa6136bb565b602002602001015188826001611410919061395d565b81518110611420576114206136bb565b60200260200101819052508080611436906138cd565b9150506113df565b508486848d8d8860405160200161145a96959493929190613a0f565b6040516020818303038152906040528782516001611478919061395d565b81518110611488576114886136bb565b60200260200101819052508486856040516020016114a893929190613a72565b60405160208183030381529060405287825160026114c6919061395d565b815181106114d6576114d66136bb565b60200260200101819052505050505050505b949350505050565b6060808080846001600160401b0381111561150d5761150d6133da565b604051908082528060200260200182016040528015611536578160200160208202803683370190505b509350846001600160401b03811115611551576115516133da565b60405190808252806020026020018201604052801561157a578160200160208202803683370190505b509250846001600160401b03811115611595576115956133da565b6040519080825280602002602001820160405280156115c857816020015b60608152602001906001900390816115b35790505b509150846001600160401b038111156115e3576115e36133da565b60405190808252806020026020018201604052801561161657816020015b60608152602001906001900390816116015790505b50905060005b858110156116da57611647898989898581811061163b5761163b6136bb565b905060200201356120d8565b888581518110611659576116596136bb565b60200260200101888681518110611672576116726136bb565b6020026020010188878151811061168b5761168b6136bb565b602002602001018888815181106116a4576116a46136bb565b6020908102919091010193909352929091526001600160a01b0392831690915291169052806116d2816138cd565b91505061161c565b50945094509450949050565b7fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c8121905546001600160a01b031690565b6000806060611724868686612761565b9250925092505b93509350939050565b60608080836001600160401b03811115611750576117506133da565b604051908082528060200260200182016040528015611779578160200160208202803683370190505b509250836001600160401b03811115611794576117946133da565b6040519080825280602002602001820160405280156117bd578160200160208202803683370190505b509150836001600160401b038111156117d8576117d86133da565b60405190808252806020026020018201604052801561180b57816020015b60608152602001906001900390816117f65790505b50905060005b848110156118b25761183c8888888885818110611830576118306136bb565b90506020020135612761565b86848151811061184e5761184e6136bb565b60200260200101868581518110611867576118676136bb565b60200260200101868681518110611880576118806136bb565b60209081029190910101929092526001600160a01b0392831690915291169052806118aa816138cd565b915050611811565b509450945094915050565b606554604051634f558e7960e01b8152600481018390526000916001600160a01b031690634f558e7990602401602060405180830381865afa158015611907573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061192b9190613699565b156119415750506065546001600160a01b031690565b6066546001600160a01b03161580159061196d575060006119618361296c565b6001600160a01b031614155b156119835750506066546001600160a01b031690565b506000919050565b6060816001600160401b038111156119a5576119a56133da565b6040519080825280602002602001820160405280156119d857816020015b60608152602001906001900390816119c35790505b50905060005b82811015611a7857611a48308585848181106119fc576119fc6136bb565b9050602002810190611a0e91906136d1565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061299e92505050565b828281518110611a5a57611a5a6136bb565b60200260200101819052508080611a70906138cd565b9150506119de565b5092915050565b6000611a8a8261233a565b611a9657506000919050565b611a9f826123d2565b611ad45760665460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb906024016106ac565b60655460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb9060240161071f565b606080836001600160401b03811115611b2057611b206133da565b604051908082528060200260200182016040528015611b5357816020015b6060815260200190600190039081611b3e5790505b509150836001600160401b03811115611b6e57611b6e6133da565b604051908082528060200260200182016040528015611ba157816020015b6060815260200190600190039081611b8c5790505b509050611bad836123d2565b15611c345760655460405163170b5fa560e31b81526001600160a01b039091169063b85afd2890611be690889088908890600401613ab5565b600060405180830381865afa158015611c03573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611c2b9190810190613b72565b91509150611cd9565b6000611c3f84612617565b90506001600160a01b0381163b15158015611c5957508415155b15611cd75760405163170b5fa560e31b81526001600160a01b0382169063b85afd2890611c8e90899089908990600401613ab5565b600060405180830381865afa925050508015611ccc57506040513d6000823e601f3d908101601f19168201604052611cc99190810190613b72565b60015b15611cd75790935091505b505b935093915050565b6060611cf08686868686612a92565b979650505050505050565b606554604051632fafb1ad60e21b81526001600160a01b038381166004830152606092169063bebec6b4906024015b600060405180830381865afa158015611d47573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261063291908101906135b0565b6060611d7e8686868686612a92565b509695505050505050565b6060816001600160401b03811115611da357611da36133da565b604051908082528060200260200182016040528015611dcc578160200160208202803683370190505b50905060005b82811015611a7857611dfb848483818110611def57611def6136bb565b90506020020135612740565b828281518110611e0d57611e0d6136bb565b6001600160a01b039092166020928302919091019091015280611e2f816138cd565b915050611dd2565b6060611e428261233a565b611e5a57505060408051602081019091526000815290565b611e63826123d2565b611ed85760665460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401600060405180830381865afa158015611eb0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106ed91908101906135b0565b60655460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401611d2a565b60405162461bcd60e51b815260206004820152601f60248201527f50726f78795265616465723a20554e535550504f525445445f4d4554484f440060448201526000906064016107bc565b611f5c6126e1565b828114611fab5760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107bc565b60005b83811015610e4a57612006858583818110611fcb57611fcb6136bb565b9050602002810190611fdd91906136d1565b858585818110611fef57611fef6136bb565b905060200281019061200191906136d1565b612b3e565b80612010816138cd565b915050611fae565b6120206126e1565b6001600160a01b0381166107c55760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107bc565b61208d6126e1565b60005b83811015610e4a576120c68585838181106120ad576120ad6136bb565b90506020028101906120bf91906136d1565b8585612b3e565b806120d0816138cd565b915050612090565b600080606080856001600160401b038111156120f6576120f66133da565b60405190808252806020026020018201604052801561212957816020015b60608152602001906001900390816121145790505b509150856001600160401b03811115612144576121446133da565b60405190808252806020026020018201604052801561217757816020015b60608152602001906001900390816121625790505b509050612183856123d2565b156122845760655460405163b3f9e4cb60e01b8152600481018790526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa1580156121d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121f591906133bd565b935061220085612bad565b60655460405163170b5fa560e31b81529194506001600160a01b03169063b85afd2890612235908a908a908a90600401613ab5565b600060405180830381865afa158015612252573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261227a9190810190613b72565b9092509050610652565b61228d85612617565b93506122988561296c565b92506001600160a01b0384163b151580156122b4575060008251115b156106525760405163170b5fa560e31b81526001600160a01b0385169063b85afd28906122e9908a908a908a90600401613ab5565b600060405180830381865afa92505050801561232757506040513d6000823e601f3d908101601f191682016040526123249190810190613b72565b60015b1561065257909250905093509350935093565b6000612345826123d2565b6123645760006123548361296c565b6001600160a01b03161415610632565b606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e79906024015b602060405180830381865afa1580156123ae573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190613699565b6066546000906001600160a01b031615806106325750606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401612391565b60006124236116e6565b9050817fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c812190580546001600160a01b0319166001600160a01b03928316179055604051838216918316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b606082516001600160401b038111156124b0576124b06133da565b6040519080825280602002602001820160405280156124e357816020015b60608152602001906001900390816124ce5790505b5090506124ef826123d2565b1561257257606554604051630dec660d60e11b81526001600160a01b0390911690631bd8cc1a906125269086908690600401613bcb565b600060405180830381865afa158015612543573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261256b9190810190613bed565b9050610632565b600061257d83612617565b90506001600160a01b0381163b15158015612599575060008451115b15611a7857604051630dec660d60e11b81526001600160a01b03821690631bd8cc1a906125cc9087908790600401613bcb565b600060405180830381865afa92505050801561260a57506040513d6000823e601f3d908101601f191682016040526126079190810190613bed565b60015b15611a7857949350505050565b60665460405163b3f9e4cb60e01b8152600481018390526000916001600160a01b03169063b3f9e4cb906024015b602060405180830381865afa92505050801561267e575060408051601f3d908101601f1916820190925261267b918101906133bd565b60015b61063257506000919050565b600054610100900460ff166110a75760405162461bcd60e51b81526004016107bc90613c21565b600054610100900460ff166126d85760405162461bcd60e51b81526004016107bc90613c21565b6110a733612419565b336126ea6116e6565b6001600160a01b0316146110a75760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107bc565b600061274b826123d2565b612758576106ed8261296c565b61063282612bad565b6000806060846001600160401b0381111561277e5761277e6133da565b6040519080825280602002602001820160405280156127b157816020015b606081526020019060019003908161279c5790505b5090506127bd846123d2565b156128bb5760655460405163b3f9e4cb60e01b8152600481018690526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561280b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061282f91906133bd565b925061283a84612bad565b606554604051630dec660d60e11b81529193506001600160a01b031690631bd8cc1a9061286f90899089908990600401613c6c565b600060405180830381865afa15801561288c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526128b49190810190613bed565b905061172b565b6128c484612617565b92506128cf8461296c565b91506001600160a01b0383163b151580156128e957508415155b1561172b57604051630dec660d60e11b81526001600160a01b03841690631bd8cc1a9061291e90899089908990600401613c6c565b600060405180830381865afa92505050801561295c57506040513d6000823e601f3d908101601f191682016040526129599190810190613bed565b60015b1561172b57905093509350939050565b6066546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401612645565b60606001600160a01b0383163b612a065760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b60648201526084016107bc565b600080846001600160a01b031684604051612a2191906139f3565b600060405180830381855af49150503d8060008114612a5c576040519150601f19603f3d011682016040523d82523d6000602084013e612a61565b606091505b5091509150612a898282604051806060016040528060278152602001613c8160279139612bdf565b95945050505050565b6060806000612aa388888888611118565b90506000612ab18286612495565b905060005b8151811015612b31576000828281518110612ad357612ad36136bb565b6020026020010151511115612b1f57828181518110612af457612af46136bb565b60200260200101519350818181518110612b1057612b106136bb565b60200260200101519450612b31565b80612b29816138cd565b915050612ab6565b5050509550959350505050565b818160678686604051612b52929190613717565b90815260200160405180910390209182612b6d9291906137f8565b507f0bf4b04a0f6d7d0800284e1abb0f58f795c0a25b9088634b6ab847be51001dec8484604051612b9f9291906138e6565b60405180910390a150505050565b6065546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401612645565b60608315612bee5750816107e9565b825115612bfe5782518084602001fd5b8160405162461bcd60e51b81526004016107bc9190612f12565b50805460008255906000526020600020908101906107ce91905b80821115612c4f576000612c468282612c53565b50600101612c32565b5090565b508054612c5f90613770565b6000825580601f10612c6f575050565b601f0160209004906000526020600020908101906107ce91905b80821115612c4f5760008155600101612c89565b600060208284031215612caf57600080fd5b81356001600160e01b0319811681146107e957600080fd5b60008083601f840112612cd957600080fd5b5081356001600160401b03811115612cf057600080fd5b6020830191508360208260051b8501011115610f9057600080fd5b600080600060408486031215612d2057600080fd5b83356001600160401b03811115612d3657600080fd5b612d4286828701612cc7565b909790965060209590950135949350505050565b60005b83811015612d71578181015183820152602001612d59565b50506000910152565b60008151808452612d92816020860160208601612d56565b601f01601f19169290920160200192915050565b600082825180855260208086019550808260051b84010181860160005b84811015612df157601f19868403018952612ddf838351612d7a565b98840198925090830190600101612dc3565b5090979650505050505050565b6001600160a01b03858116825284166020820152608060408201819052600090612e2a90830185612da6565b8281036060840152611cf08185612da6565b600060208284031215612e4e57600080fd5b5035919050565b6001600160a01b03811681146107ce57600080fd5b600060208284031215612e7c57600080fd5b81356107e981612e55565b6020815260006107e96020830184612da6565b60008083601f840112612eac57600080fd5b5081356001600160401b03811115612ec357600080fd5b602083019150836020828501011115610f9057600080fd5b600080600060408486031215612ef057600080fd5b83356001600160401b03811115612f0657600080fd5b612d4286828701612e9a565b6020815260006107e96020830184612d7a565b60008060208385031215612f3857600080fd5b82356001600160401b03811115612f4e57600080fd5b612f5a85828601612cc7565b90969095509350505050565b60008060408385031215612f7957600080fd5b8235612f8481612e55565b946020939093013593505050565b60008060408385031215612fa557600080fd5b8235612fb081612e55565b91506020830135612fc081612e55565b809150509250929050565b60008060008060408587031215612fe157600080fd5b84356001600160401b0380821115612ff857600080fd5b61300488838901612cc7565b9096509450602087013591508082111561301d57600080fd5b5061302a87828801612cc7565b95989497509550505050565b6000806040838503121561304957600080fd5b50508035926020909101359150565b60408152600061306b6040830185612d7a565b8281036020840152612a898185612d7a565b6000806000806040858703121561309357600080fd5b84356001600160401b03808211156130aa57600080fd5b6130b688838901612e9a565b909650945060208701359150808211156130cf57600080fd5b5061302a87828801612e9a565b600081518084526020808501945080840160005b838110156131155781516001600160a01b0316875295820195908201906001016130f0565b509495945050505050565b60008282518085526020808601955060058183821b8501018287016000805b868110156131ac57601f1988850381018c5283518051808752908801908887019080891b88018a01865b8281101561319557858a8303018452613183828651612d7a565b948c0194938c01939150600101613169565b509e8a019e9750505093870193505060010161313f565b50919998505050505050505050565b6080815260006131ce60808301876130dc565b82810360208401526131e081876130dc565b905082810360408401526131f48186613120565b90508281036060840152611cf08185613120565b6001600160a01b03848116825283166020820152606060408201819052600090612a8990830184612da6565b60608152600061324760608301866130dc565b828103602084015261325981866130dc565b9050828103604084015261326d8185613120565b9695505050505050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156132cc57603f198886030184526132ba858351612d7a565b9450928501929085019060010161329e565b5092979650505050505050565b6040815260006132ec6040830185612da6565b8281036020840152612a898185612da6565b60008060008060006060868803121561331657600080fd5b85356001600160401b038082111561332d57600080fd5b61333989838a01612e9a565b9097509550602088013591508082111561335257600080fd5b5061335f88828901612e9a565b96999598509660400135949350505050565b6020815260006107e960208301846130dc565b6000806000806040858703121561339a57600080fd5b84356001600160401b03808211156133b157600080fd5b6130b688838901612cc7565b6000602082840312156133cf57600080fd5b81516107e981612e55565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715613418576134186133da565b604052919050565b60006001600160401b03821115613439576134396133da565b5060051b60200190565b60006001600160401b0382111561345c5761345c6133da565b50601f01601f191660200190565b600061347d61347884613420565b6133f0565b80848252602080830192508560051b85013681111561349b57600080fd5b855b818110156135125780356001600160401b038111156134bc5760008081fd5b870136601f8201126134ce5760008081fd5b80356134dc61347882613443565b81815236868385010111156134f15760008081fd5b8186840187830137600091810186019190915286525093820193820161349d565b50919695505050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60408152600061355b60408301858761351e565b9050826020830152949350505050565b600082601f83011261357c57600080fd5b815161358a61347882613443565b81815284602083860101111561359f57600080fd5b6114e8826020830160208701612d56565b6000602082840312156135c257600080fd5b81516001600160401b038111156135d857600080fd5b6114e88482850161356b565b60008383855260208086019550808560051b8301018460005b87811015612df157848303601f19018952813536889003601e1901811261362357600080fd5b870184810190356001600160401b0381111561363e57600080fd5b80360382131561364d57600080fd5b61365885828461351e565b9a86019a94505050908301906001016135fd565b6020815260006107e66020830184866135e4565b60006020828403121561369257600080fd5b5051919050565b6000602082840312156136ab57600080fd5b815180151581146107e957600080fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e198436030181126136e857600080fd5b8301803591506001600160401b0382111561370257600080fd5b602001915036819003821315610f9057600080fd5b8183823760009101908152919050565b6000808335601e1984360301811261373e57600080fd5b8301803591506001600160401b0382111561375857600080fd5b6020019150600581901b3603821315610f9057600080fd5b600181811c9082168061378457607f821691505b6020821081036137a457634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115610bf057600081815260208120601f850160051c810160208610156137d15750805b601f850160051c820191505b818110156137f0578281556001016137dd565b505050505050565b6001600160401b0383111561380f5761380f6133da565b6138238361381d8354613770565b836137aa565b6000601f841160018114613857576000851561383f5750838201355b600019600387901b1c1916600186901b178355610e4a565b600083815260209020601f19861690835b828110156138885786850135825560209485019460019092019101613868565b50868210156138a55760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b634e487b7160e01b600052601160045260246000fd5b6000600182016138df576138df6138b7565b5060010190565b6020815260006107e660208301848661351e565b6000806040838503121561390d57600080fd5b82516001600160401b038082111561392457600080fd5b6139308683870161356b565b9350602085015191508082111561394657600080fd5b506139538582860161356b565b9150509250929050565b80820180821115610632576106326138b7565b60008a51613982818460208f01612d56565b8a5190830190613996818360208f01612d56565b8a519101906139a9818360208e01612d56565b0187898237600090880190815286516139c6818360208b01612d56565b0184868237600090850190815283516139e3818360208801612d56565b019b9a5050505050505050505050565b60008251613a05818460208701612d56565b9190910192915050565b60008751613a21818460208c01612d56565b875190830190613a35818360208c01612d56565b8751910190613a48818360208b01612d56565b018486823760009085019081528351613a65818360208801612d56565b0198975050505050505050565b60008451613a84818460208901612d56565b845190830190613a98818360208901612d56565b8451910190613aab818360208801612d56565b0195945050505050565b6040808252810183905260006001600160fb1b03841115613ad557600080fd5b8360051b808660608501376020830193909352500160600192915050565b600082601f830112613b0457600080fd5b81516020613b1461347883613420565b82815260059290921b84018101918181019086841115613b3357600080fd5b8286015b84811015611d7e5780516001600160401b03811115613b565760008081fd5b613b648986838b010161356b565b845250918301918301613b37565b60008060408385031215613b8557600080fd5b82516001600160401b0380821115613b9c57600080fd5b613ba886838701613af3565b93506020850151915080821115613bbe57600080fd5b5061395385828601613af3565b604081526000613bde6040830185612da6565b90508260208301529392505050565b600060208284031215613bff57600080fd5b81516001600160401b03811115613c1557600080fd5b6114e884828501613af3565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60408152600061355b6040830185876135e456fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061021c5760003560e01c80638da5cb5b11610125578063bebec6b4116100ad578063e985e9c51161007c578063e985e9c514610540578063f059235914610553578063f2fde38b14610566578063ffa1ad7414610579578063ffad6f551461059d57600080fd5b8063bebec6b4146104e7578063bfc5429b146104fa578063c15ae7cf1461050d578063c87b56dd1461052d57600080fd5b8063a81ce6f9116100f4578063a81ce6f91461046d578063ac9650d814610480578063b3f9e4cb146104a0578063b85afd28146104b3578063b98b3526146104d457600080fd5b80638da5cb5b146103f157806391015f6b146103f9578063933c051d1461041b578063a3f4df7e1461043d57600080fd5b80634bd79ed0116101a857806370a082311161017757806370a082311461038d578063715018a6146103a05780637e37479e146103a857806383caffbe146103bb578063869b8884146103ce57600080fd5b80634bd79ed0146103335780634f558e79146103465780636352211e14610359578063672b9f811461036c57600080fd5b80631bd8cc1a116101ef5780631bd8cc1a146102ac5780631be5e7ed146102cc578063276fabb1146102ec578063430c20811461030d578063485cc9551461032057600080fd5b806301ffc9a7146102215780630328075514610249578063081812fc1461026c57806313af403514610297575b600080fd5b61023461022f366004612c9d565b6105b0565b60405190151581526020015b60405180910390f35b61025c610257366004612d0b565b610638565b6040516102409493929190612dfe565b61027f61027a366004612e3c565b61065b565b6040516001600160a01b039091168152602001610240565b6102aa6102a5366004612e6a565b610760565b005b6102bf6102ba366004612d0b565b6107d1565b6040516102409190612e87565b6102df6102da366004612edb565b6107f0565b6040516102409190612f12565b6102ff6102fa366004612f25565b61091b565b604051908152602001610240565b61023461031b366004612f66565b61098f565b6102aa61032e366004612f92565b610aa2565b6102aa610341366004612fcb565b610bf5565b610234610354366004612e3c565b610e51565b61027f610367366004612e3c565b610e5c565b61037f61037a366004613036565b610e67565b604051610240929190613058565b6102ff61039b366004612e6a565b610f97565b6102aa611095565b6102ff6103b6366004612e6a565b6110a9565b6102bf6103c936600461307d565b611118565b6103e16103dc366004612fcb565b6114f0565b60405161024094939291906131bb565b61027f6116e6565b61040c610407366004612d0b565b611714565b60405161024093929190613208565b61042e610429366004612fcb565b611734565b60405161024093929190613234565b6102df604051806040016040528060118152602001702aa7299d10283937bc3c902932b0b232b960791b81525081565b61027f61047b366004612e3c565b6118bd565b61049361048e366004612f25565b61198b565b6040516102409190613277565b61027f6104ae366004612e3c565b611a7f565b6104c66104c1366004612d0b565b611b05565b6040516102409291906132d9565b6102df6104e23660046132fe565b611ce1565b6102df6104f5366004612e6a565b611cfb565b6102df6105083660046132fe565b611d6f565b61052061051b366004612f25565b611d89565b6040516102409190613371565b6102df61053b366004612e3c565b611e37565b61023461054e366004612f92565b611f09565b6102aa610561366004612fcb565b611f54565b6102aa610574366004612e6a565b612018565b6102df604051806040016040528060058152602001640302e352e360dc1b81525081565b6102aa6105ab366004613384565b612085565b60006001600160e01b031982166362526e6360e01b14806105e157506001600160e01b03198216636fa624af60e11b145b806105fc57506001600160e01b031982166308da864d60e31b145b8061061757506001600160e01b03198216638584880360e01b145b8061063257506301ffc9a760e01b6001600160e01b03198316145b92915050565b6000806060806106498787876120d8565b93509350935093505b93509350935093565b60006106668261233a565b61067257506000919050565b61067b826123d2565b6106f25760665460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa1580156106c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106ed91906133bd565b610632565b60655460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa15801561073c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061063291906133bd565b600061076a6116e6565b6001600160a01b0316146107c55760405162461bcd60e51b815260206004820152601e60248201527f50726f78795265616465723a204f574e45525f414c52454144595f534554000060448201526064015b60405180910390fd5b6107ce81612419565b50565b60606107e66107e0848661346a565b83612495565b90505b9392505050565b60606107fb826123d2565b1561088057606554604051631be5e7ed60e01b81526001600160a01b0390911690631be5e7ed9061083490879087908790600401613547565b600060405180830381865afa158015610851573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261087991908101906135b0565b90506107e9565b600061088b83612617565b90506001600160a01b0381163b1561091357604051631be5e7ed60e01b81526001600160a01b03821690631be5e7ed906108cd90889088908890600401613547565b600060405180830381865afa92505050801561090b57506040513d6000823e601f3d908101601f1916820160405261090891908101906135b0565b60015b156109135791505b509392505050565b60655460405163276fabb160e01b81526000916001600160a01b03169063276fabb19061094e908690869060040161366c565b602060405180830381865afa15801561096b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613680565b600061099a8261233a565b6109a657506000610632565b6109af826123d2565b610a2d5760665460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a04573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a289190613699565b6107e9565b60655460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a7e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613699565b600054610100900460ff1615808015610ac25750600054600160ff909116105b80610adc5750303b158015610adc575060005460ff166001145b610b3f5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107bc565b6000805460ff191660011790558015610b62576000805461ff0019166101001790555b606580546001600160a01b038086166001600160a01b0319928316179092556066805492851692909116919091179055610b9a61268a565b610ba261268a565b610baa6126b1565b8015610bf0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b610bfd6126e1565b828114610c4c5760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107bc565b60005b83811015610e4a5760006068868684818110610c6d57610c6d6136bb565b9050602002810190610c7f91906136d1565b604051610c8d929190613717565b908152604051908190036020019020541115610cf1576068858583818110610cb757610cb76136bb565b9050602002810190610cc991906136d1565b604051610cd7929190613717565b90815260200160405180910390206000610cf19190612c18565b60005b838383818110610d0657610d066136bb565b9050602002810190610d189190613727565b9050811015610ddc576068868684818110610d3557610d356136bb565b9050602002810190610d4791906136d1565b604051610d55929190613717565b9081526020016040518091039020848484818110610d7557610d756136bb565b9050602002810190610d879190613727565b83818110610d9757610d976136bb565b9050602002810190610da991906136d1565b82546001810184556000938452602090932090920191610dc991836137f8565b5080610dd4816138cd565b915050610cf4565b507fb2b57b54285120d17f49f2490a39ef791441fd0ad1e6b6818c23262bf91f061c858583818110610e1057610e106136bb565b9050602002810190610e2291906136d1565b604051610e309291906138e6565b60405180910390a180610e42816138cd565b915050610c4f565b5050505050565b60006106328261233a565b600061063282612740565b606080610e73836123d2565b15610ef95760655460405163672b9f8160e01b815260048101869052602481018590526001600160a01b039091169063672b9f8190604401600060405180830381865afa158015610ec8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610ef091908101906138fa565b91509150610f90565b6000610f0484612617565b90506001600160a01b0381163b15610f8e5760405163672b9f8160e01b815260048101869052602481018590526001600160a01b0382169063672b9f8190604401600060405180830381865afa925050508015610f8357506040513d6000823e601f3d908101601f19168201604052610f8091908101906138fa565b60015b15610f8e5790935091505b505b9250929050565b6065546040516370a0823160e01b81526001600160a01b03838116600483015260009283929116906370a0823190602401602060405180830381865afa158015610fe5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110099190613680565b6066549091506001600160a01b031615610632576066546040516370a0823160e01b81526001600160a01b038581166004830152909116906370a0823190602401602060405180830381865afa158015611067573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061108b9190613680565b6107e9908261395d565b61109d6126e1565b6110a76000612419565b565b606554604051633f1ba3cf60e11b81526001600160a01b0383811660048301526000921690637e37479e90602401602060405180830381865afa1580156110f4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190613680565b606060006067868660405161112e929190613717565b9081526020016040518091039020805461114790613770565b80601f016020809104026020016040519081016040528092919081815260200182805461117390613770565b80156111c05780601f10611195576101008083540402835291602001916111c0565b820191906000526020600020905b8154815290600101906020018083116111a357829003601f168201915b5050505050905080516000036111d657506114e8565b6000604051806040016040528060068152602001653a37b5b2b71760d11b81525090506000604051806040016040528060088152602001672e6164647265737360c01b81525090506000604051806040016040528060018152602001601760f91b815250905060008385838c8c868d8d8a60405160200161125f99989796959493929190613970565b6040516020818303038152906040529050600060688260405161128291906139f3565b9081526020016040518091039020805480602002602001604051908101604052809291908181526020016000905b8282101561135c5783829060005260206000200180546112cf90613770565b80601f01602080910402602001604051908101604052809291908181526020018280546112fb90613770565b80156113485780601f1061131d57610100808354040283529160200191611348565b820191906000526020600020905b81548152906001019060200180831161132b57829003601f168201915b5050505050815260200190600101906112b0565b50505050905080516003611370919061395d565b6001600160401b03811115611387576113876133da565b6040519080825280602002602001820160405280156113ba57816020015b60608152602001906001900390816113a55790505b50965081876000815181106113d1576113d16136bb565b602002602001018190525060005b815181101561143e578181815181106113fa576113fa6136bb565b602002602001015188826001611410919061395d565b81518110611420576114206136bb565b60200260200101819052508080611436906138cd565b9150506113df565b508486848d8d8860405160200161145a96959493929190613a0f565b6040516020818303038152906040528782516001611478919061395d565b81518110611488576114886136bb565b60200260200101819052508486856040516020016114a893929190613a72565b60405160208183030381529060405287825160026114c6919061395d565b815181106114d6576114d66136bb565b60200260200101819052505050505050505b949350505050565b6060808080846001600160401b0381111561150d5761150d6133da565b604051908082528060200260200182016040528015611536578160200160208202803683370190505b509350846001600160401b03811115611551576115516133da565b60405190808252806020026020018201604052801561157a578160200160208202803683370190505b509250846001600160401b03811115611595576115956133da565b6040519080825280602002602001820160405280156115c857816020015b60608152602001906001900390816115b35790505b509150846001600160401b038111156115e3576115e36133da565b60405190808252806020026020018201604052801561161657816020015b60608152602001906001900390816116015790505b50905060005b858110156116da57611647898989898581811061163b5761163b6136bb565b905060200201356120d8565b888581518110611659576116596136bb565b60200260200101888681518110611672576116726136bb565b6020026020010188878151811061168b5761168b6136bb565b602002602001018888815181106116a4576116a46136bb565b6020908102919091010193909352929091526001600160a01b0392831690915291169052806116d2816138cd565b91505061161c565b50945094509450949050565b7fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c8121905546001600160a01b031690565b6000806060611724868686612761565b9250925092505b93509350939050565b60608080836001600160401b03811115611750576117506133da565b604051908082528060200260200182016040528015611779578160200160208202803683370190505b509250836001600160401b03811115611794576117946133da565b6040519080825280602002602001820160405280156117bd578160200160208202803683370190505b509150836001600160401b038111156117d8576117d86133da565b60405190808252806020026020018201604052801561180b57816020015b60608152602001906001900390816117f65790505b50905060005b848110156118b25761183c8888888885818110611830576118306136bb565b90506020020135612761565b86848151811061184e5761184e6136bb565b60200260200101868581518110611867576118676136bb565b60200260200101868681518110611880576118806136bb565b60209081029190910101929092526001600160a01b0392831690915291169052806118aa816138cd565b915050611811565b509450945094915050565b606554604051634f558e7960e01b8152600481018390526000916001600160a01b031690634f558e7990602401602060405180830381865afa158015611907573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061192b9190613699565b156119415750506065546001600160a01b031690565b6066546001600160a01b03161580159061196d575060006119618361296c565b6001600160a01b031614155b156119835750506066546001600160a01b031690565b506000919050565b6060816001600160401b038111156119a5576119a56133da565b6040519080825280602002602001820160405280156119d857816020015b60608152602001906001900390816119c35790505b50905060005b82811015611a7857611a48308585848181106119fc576119fc6136bb565b9050602002810190611a0e91906136d1565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061299e92505050565b828281518110611a5a57611a5a6136bb565b60200260200101819052508080611a70906138cd565b9150506119de565b5092915050565b6000611a8a8261233a565b611a9657506000919050565b611a9f826123d2565b611ad45760665460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb906024016106ac565b60655460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb9060240161071f565b606080836001600160401b03811115611b2057611b206133da565b604051908082528060200260200182016040528015611b5357816020015b6060815260200190600190039081611b3e5790505b509150836001600160401b03811115611b6e57611b6e6133da565b604051908082528060200260200182016040528015611ba157816020015b6060815260200190600190039081611b8c5790505b509050611bad836123d2565b15611c345760655460405163170b5fa560e31b81526001600160a01b039091169063b85afd2890611be690889088908890600401613ab5565b600060405180830381865afa158015611c03573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611c2b9190810190613b72565b91509150611cd9565b6000611c3f84612617565b90506001600160a01b0381163b15158015611c5957508415155b15611cd75760405163170b5fa560e31b81526001600160a01b0382169063b85afd2890611c8e90899089908990600401613ab5565b600060405180830381865afa925050508015611ccc57506040513d6000823e601f3d908101601f19168201604052611cc99190810190613b72565b60015b15611cd75790935091505b505b935093915050565b6060611cf08686868686612a92565b979650505050505050565b606554604051632fafb1ad60e21b81526001600160a01b038381166004830152606092169063bebec6b4906024015b600060405180830381865afa158015611d47573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261063291908101906135b0565b6060611d7e8686868686612a92565b509695505050505050565b6060816001600160401b03811115611da357611da36133da565b604051908082528060200260200182016040528015611dcc578160200160208202803683370190505b50905060005b82811015611a7857611dfb848483818110611def57611def6136bb565b90506020020135612740565b828281518110611e0d57611e0d6136bb565b6001600160a01b039092166020928302919091019091015280611e2f816138cd565b915050611dd2565b6060611e428261233a565b611e5a57505060408051602081019091526000815290565b611e63826123d2565b611ed85760665460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401600060405180830381865afa158015611eb0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106ed91908101906135b0565b60655460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401611d2a565b60405162461bcd60e51b815260206004820152601f60248201527f50726f78795265616465723a20554e535550504f525445445f4d4554484f440060448201526000906064016107bc565b611f5c6126e1565b828114611fab5760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107bc565b60005b83811015610e4a57612006858583818110611fcb57611fcb6136bb565b9050602002810190611fdd91906136d1565b858585818110611fef57611fef6136bb565b905060200281019061200191906136d1565b612b3e565b80612010816138cd565b915050611fae565b6120206126e1565b6001600160a01b0381166107c55760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107bc565b61208d6126e1565b60005b83811015610e4a576120c68585838181106120ad576120ad6136bb565b90506020028101906120bf91906136d1565b8585612b3e565b806120d0816138cd565b915050612090565b600080606080856001600160401b038111156120f6576120f66133da565b60405190808252806020026020018201604052801561212957816020015b60608152602001906001900390816121145790505b509150856001600160401b03811115612144576121446133da565b60405190808252806020026020018201604052801561217757816020015b60608152602001906001900390816121625790505b509050612183856123d2565b156122845760655460405163b3f9e4cb60e01b8152600481018790526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa1580156121d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121f591906133bd565b935061220085612bad565b60655460405163170b5fa560e31b81529194506001600160a01b03169063b85afd2890612235908a908a908a90600401613ab5565b600060405180830381865afa158015612252573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261227a9190810190613b72565b9092509050610652565b61228d85612617565b93506122988561296c565b92506001600160a01b0384163b151580156122b4575060008251115b156106525760405163170b5fa560e31b81526001600160a01b0385169063b85afd28906122e9908a908a908a90600401613ab5565b600060405180830381865afa92505050801561232757506040513d6000823e601f3d908101601f191682016040526123249190810190613b72565b60015b1561065257909250905093509350935093565b6000612345826123d2565b6123645760006123548361296c565b6001600160a01b03161415610632565b606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e79906024015b602060405180830381865afa1580156123ae573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190613699565b6066546000906001600160a01b031615806106325750606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401612391565b60006124236116e6565b9050817fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c812190580546001600160a01b0319166001600160a01b03928316179055604051838216918316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b606082516001600160401b038111156124b0576124b06133da565b6040519080825280602002602001820160405280156124e357816020015b60608152602001906001900390816124ce5790505b5090506124ef826123d2565b1561257257606554604051630dec660d60e11b81526001600160a01b0390911690631bd8cc1a906125269086908690600401613bcb565b600060405180830381865afa158015612543573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261256b9190810190613bed565b9050610632565b600061257d83612617565b90506001600160a01b0381163b15158015612599575060008451115b15611a7857604051630dec660d60e11b81526001600160a01b03821690631bd8cc1a906125cc9087908790600401613bcb565b600060405180830381865afa92505050801561260a57506040513d6000823e601f3d908101601f191682016040526126079190810190613bed565b60015b15611a7857949350505050565b60665460405163b3f9e4cb60e01b8152600481018390526000916001600160a01b03169063b3f9e4cb906024015b602060405180830381865afa92505050801561267e575060408051601f3d908101601f1916820190925261267b918101906133bd565b60015b61063257506000919050565b600054610100900460ff166110a75760405162461bcd60e51b81526004016107bc90613c21565b600054610100900460ff166126d85760405162461bcd60e51b81526004016107bc90613c21565b6110a733612419565b336126ea6116e6565b6001600160a01b0316146110a75760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107bc565b600061274b826123d2565b612758576106ed8261296c565b61063282612bad565b6000806060846001600160401b0381111561277e5761277e6133da565b6040519080825280602002602001820160405280156127b157816020015b606081526020019060019003908161279c5790505b5090506127bd846123d2565b156128bb5760655460405163b3f9e4cb60e01b8152600481018690526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561280b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061282f91906133bd565b925061283a84612bad565b606554604051630dec660d60e11b81529193506001600160a01b031690631bd8cc1a9061286f90899089908990600401613c6c565b600060405180830381865afa15801561288c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526128b49190810190613bed565b905061172b565b6128c484612617565b92506128cf8461296c565b91506001600160a01b0383163b151580156128e957508415155b1561172b57604051630dec660d60e11b81526001600160a01b03841690631bd8cc1a9061291e90899089908990600401613c6c565b600060405180830381865afa92505050801561295c57506040513d6000823e601f3d908101601f191682016040526129599190810190613bed565b60015b1561172b57905093509350939050565b6066546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401612645565b60606001600160a01b0383163b612a065760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b60648201526084016107bc565b600080846001600160a01b031684604051612a2191906139f3565b600060405180830381855af49150503d8060008114612a5c576040519150601f19603f3d011682016040523d82523d6000602084013e612a61565b606091505b5091509150612a898282604051806060016040528060278152602001613c8160279139612bdf565b95945050505050565b6060806000612aa388888888611118565b90506000612ab18286612495565b905060005b8151811015612b31576000828281518110612ad357612ad36136bb565b6020026020010151511115612b1f57828181518110612af457612af46136bb565b60200260200101519350818181518110612b1057612b106136bb565b60200260200101519450612b31565b80612b29816138cd565b915050612ab6565b5050509550959350505050565b818160678686604051612b52929190613717565b90815260200160405180910390209182612b6d9291906137f8565b507f0bf4b04a0f6d7d0800284e1abb0f58f795c0a25b9088634b6ab847be51001dec8484604051612b9f9291906138e6565b60405180910390a150505050565b6065546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401612645565b60608315612bee5750816107e9565b825115612bfe5782518084602001fd5b8160405162461bcd60e51b81526004016107bc9190612f12565b50805460008255906000526020600020908101906107ce91905b80821115612c4f576000612c468282612c53565b50600101612c32565b5090565b508054612c5f90613770565b6000825580601f10612c6f575050565b601f0160209004906000526020600020908101906107ce91905b80821115612c4f5760008155600101612c89565b600060208284031215612caf57600080fd5b81356001600160e01b0319811681146107e957600080fd5b60008083601f840112612cd957600080fd5b5081356001600160401b03811115612cf057600080fd5b6020830191508360208260051b8501011115610f9057600080fd5b600080600060408486031215612d2057600080fd5b83356001600160401b03811115612d3657600080fd5b612d4286828701612cc7565b909790965060209590950135949350505050565b60005b83811015612d71578181015183820152602001612d59565b50506000910152565b60008151808452612d92816020860160208601612d56565b601f01601f19169290920160200192915050565b600082825180855260208086019550808260051b84010181860160005b84811015612df157601f19868403018952612ddf838351612d7a565b98840198925090830190600101612dc3565b5090979650505050505050565b6001600160a01b03858116825284166020820152608060408201819052600090612e2a90830185612da6565b8281036060840152611cf08185612da6565b600060208284031215612e4e57600080fd5b5035919050565b6001600160a01b03811681146107ce57600080fd5b600060208284031215612e7c57600080fd5b81356107e981612e55565b6020815260006107e96020830184612da6565b60008083601f840112612eac57600080fd5b5081356001600160401b03811115612ec357600080fd5b602083019150836020828501011115610f9057600080fd5b600080600060408486031215612ef057600080fd5b83356001600160401b03811115612f0657600080fd5b612d4286828701612e9a565b6020815260006107e96020830184612d7a565b60008060208385031215612f3857600080fd5b82356001600160401b03811115612f4e57600080fd5b612f5a85828601612cc7565b90969095509350505050565b60008060408385031215612f7957600080fd5b8235612f8481612e55565b946020939093013593505050565b60008060408385031215612fa557600080fd5b8235612fb081612e55565b91506020830135612fc081612e55565b809150509250929050565b60008060008060408587031215612fe157600080fd5b84356001600160401b0380821115612ff857600080fd5b61300488838901612cc7565b9096509450602087013591508082111561301d57600080fd5b5061302a87828801612cc7565b95989497509550505050565b6000806040838503121561304957600080fd5b50508035926020909101359150565b60408152600061306b6040830185612d7a565b8281036020840152612a898185612d7a565b6000806000806040858703121561309357600080fd5b84356001600160401b03808211156130aa57600080fd5b6130b688838901612e9a565b909650945060208701359150808211156130cf57600080fd5b5061302a87828801612e9a565b600081518084526020808501945080840160005b838110156131155781516001600160a01b0316875295820195908201906001016130f0565b509495945050505050565b60008282518085526020808601955060058183821b8501018287016000805b868110156131ac57601f1988850381018c5283518051808752908801908887019080891b88018a01865b8281101561319557858a8303018452613183828651612d7a565b948c0194938c01939150600101613169565b509e8a019e9750505093870193505060010161313f565b50919998505050505050505050565b6080815260006131ce60808301876130dc565b82810360208401526131e081876130dc565b905082810360408401526131f48186613120565b90508281036060840152611cf08185613120565b6001600160a01b03848116825283166020820152606060408201819052600090612a8990830184612da6565b60608152600061324760608301866130dc565b828103602084015261325981866130dc565b9050828103604084015261326d8185613120565b9695505050505050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156132cc57603f198886030184526132ba858351612d7a565b9450928501929085019060010161329e565b5092979650505050505050565b6040815260006132ec6040830185612da6565b8281036020840152612a898185612da6565b60008060008060006060868803121561331657600080fd5b85356001600160401b038082111561332d57600080fd5b61333989838a01612e9a565b9097509550602088013591508082111561335257600080fd5b5061335f88828901612e9a565b96999598509660400135949350505050565b6020815260006107e960208301846130dc565b6000806000806040858703121561339a57600080fd5b84356001600160401b03808211156133b157600080fd5b6130b688838901612cc7565b6000602082840312156133cf57600080fd5b81516107e981612e55565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715613418576134186133da565b604052919050565b60006001600160401b03821115613439576134396133da565b5060051b60200190565b60006001600160401b0382111561345c5761345c6133da565b50601f01601f191660200190565b600061347d61347884613420565b6133f0565b80848252602080830192508560051b85013681111561349b57600080fd5b855b818110156135125780356001600160401b038111156134bc5760008081fd5b870136601f8201126134ce5760008081fd5b80356134dc61347882613443565b81815236868385010111156134f15760008081fd5b8186840187830137600091810186019190915286525093820193820161349d565b50919695505050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60408152600061355b60408301858761351e565b9050826020830152949350505050565b600082601f83011261357c57600080fd5b815161358a61347882613443565b81815284602083860101111561359f57600080fd5b6114e8826020830160208701612d56565b6000602082840312156135c257600080fd5b81516001600160401b038111156135d857600080fd5b6114e88482850161356b565b60008383855260208086019550808560051b8301018460005b87811015612df157848303601f19018952813536889003601e1901811261362357600080fd5b870184810190356001600160401b0381111561363e57600080fd5b80360382131561364d57600080fd5b61365885828461351e565b9a86019a94505050908301906001016135fd565b6020815260006107e66020830184866135e4565b60006020828403121561369257600080fd5b5051919050565b6000602082840312156136ab57600080fd5b815180151581146107e957600080fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e198436030181126136e857600080fd5b8301803591506001600160401b0382111561370257600080fd5b602001915036819003821315610f9057600080fd5b8183823760009101908152919050565b6000808335601e1984360301811261373e57600080fd5b8301803591506001600160401b0382111561375857600080fd5b6020019150600581901b3603821315610f9057600080fd5b600181811c9082168061378457607f821691505b6020821081036137a457634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115610bf057600081815260208120601f850160051c810160208610156137d15750805b601f850160051c820191505b818110156137f0578281556001016137dd565b505050505050565b6001600160401b0383111561380f5761380f6133da565b6138238361381d8354613770565b836137aa565b6000601f841160018114613857576000851561383f5750838201355b600019600387901b1c1916600186901b178355610e4a565b600083815260209020601f19861690835b828110156138885786850135825560209485019460019092019101613868565b50868210156138a55760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b634e487b7160e01b600052601160045260246000fd5b6000600182016138df576138df6138b7565b5060010190565b6020815260006107e660208301848661351e565b6000806040838503121561390d57600080fd5b82516001600160401b038082111561392457600080fd5b6139308683870161356b565b9350602085015191508082111561394657600080fd5b506139538582860161356b565b9150509250929050565b80820180821115610632576106326138b7565b60008a51613982818460208f01612d56565b8a5190830190613996818360208f01612d56565b8a519101906139a9818360208e01612d56565b0187898237600090880190815286516139c6818360208b01612d56565b0184868237600090850190815283516139e3818360208801612d56565b019b9a5050505050505050505050565b60008251613a05818460208701612d56565b9190910192915050565b60008751613a21818460208c01612d56565b875190830190613a35818360208c01612d56565b8751910190613a48818360208b01612d56565b018486823760009085019081528351613a65818360208801612d56565b0198975050505050505050565b60008451613a84818460208901612d56565b845190830190613a98818360208901612d56565b8451910190613aab818360208801612d56565b0195945050505050565b6040808252810183905260006001600160fb1b03841115613ad557600080fd5b8360051b808660608501376020830193909352500160600192915050565b600082601f830112613b0457600080fd5b81516020613b1461347883613420565b82815260059290921b84018101918181019086841115613b3357600080fd5b8286015b84811015611d7e5780516001600160401b03811115613b565760008081fd5b613b648986838b010161356b565b845250918301918301613b37565b60008060408385031215613b8557600080fd5b82516001600160401b0380821115613b9c57600080fd5b613ba886838701613af3565b93506020850151915080821115613bbe57600080fd5b5061395385828601613af3565b604081526000613bde6040830185612da6565b90508260208301529392505050565b600060208284031215613bff57600080fd5b81516001600160401b03811115613c1557600080fd5b6114e884828501613af3565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60408152600061355b6040830185876135e456fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/artifacts/SeaportProxyBuyer.json b/artifacts/SeaportProxyBuyer.json index 0884f1cd..32c0b43e 100644 --- a/artifacts/SeaportProxyBuyer.json +++ b/artifacts/SeaportProxyBuyer.json @@ -8,11 +8,27 @@ "stateMutability": "nonpayable", "type": "constructor" }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "InvalidForwardedToken", + "type": "error" + }, { "inputs": [], "name": "InvalidSignature", "type": "error" }, + { + "inputs": [], + "name": "InvalidZone", + "type": "error" + }, { "inputs": [], "name": "OrderIsNotFulfiled", @@ -234,6 +250,19 @@ "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + } + ], + "name": "approve", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, { "inputs": [ { @@ -564,11 +593,6 @@ "internalType": "contract ConsiderationInterface", "name": "seaport", "type": "address" - }, - { - "internalType": "contract IERC20", - "name": "usdc", - "type": "address" } ], "name": "initialize", @@ -842,6 +866,11 @@ }, { "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, { "internalType": "address", "name": "recipient", @@ -859,8 +888,8 @@ "type": "function" } ], - "bytecode": "0x608060405234801562000010575f80fd5b506200001b62000021565b620000e0565b5f54610100900460ff16156200008d5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b5f5460ff9081161015620000de575f805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b61276880620000ee5f395ff3fe6080604052600436106101d0575f3560e01c806381c81d35116100fd578063a424740011610092578063e7acab2411610062578063e7acab2414610534578063f2fde38b14610553578063f3fef3a314610572578063ffa1ad7414610591575f80fd5b8063a4247400146104b7578063aa271e1a146104d6578063d5391393146104f5578063d547741f14610515575f80fd5b8063983b2d56116100cd578063983b2d56146104335780639865027514610452578063a217fddf14610466578063a3f4df7e14610479575f80fd5b806381c81d35146103c65780638456cb59146103d95780638da5cb5b146103ed57806391d1485414610414575f80fd5b8063485cc95511610173578063634486da11610143578063634486da146103615780636ccbae5f14610374578063715018a61461039357806371e2a657146103a7575f80fd5b8063485cc955146102e3578063572b6c05146103025780635c975abb1461032a5780635fc1964f14610342575f80fd5b80632f2ff15d116101ae5780632f2ff15d146102705780633092afd51461029157806336568abe146102b05780633f4ba83a146102cf575f80fd5b806301ffc9a7146101d45780631bf7e13e14610208578063248a9ca314610234575b5f80fd5b3480156101df575f80fd5b506101f36101ee366004611b01565b6105c1565b60405190151581526020015b60405180910390f35b348015610213575f80fd5b50610227610222366004611b28565b6105f7565b6040516101ff9190611c0b565b34801561023f575f80fd5b5061026261024e366004611c1d565b5f90815260fb602052604090206001015490565b6040519081526020016101ff565b34801561027b575f80fd5b5061028f61028a366004611c58565b6106c0565b005b34801561029c575f80fd5b5061028f6102ab366004611c86565b6106e9565b3480156102bb575f80fd5b5061028f6102ca366004611c58565b6106fd565b3480156102da575f80fd5b5061028f610790565b3480156102ee575f80fd5b5061028f6102fd366004611ca1565b6107aa565b34801561030d575f80fd5b506101f361031c366004611c86565b6001600160a01b0316301490565b348015610335575f80fd5b5061012d5460ff166101f3565b34801561034d575f80fd5b5061028f61035c366004611d3b565b610977565b61028f61036f366004611c86565b6109b4565b34801561037f575f80fd5b5061026261038e366004611c1d565b610a74565b34801561039e575f80fd5b5061028f610acd565b3480156103b2575f80fd5b5061028f6103c1366004611d3b565b610ade565b61028f6103d4366004611c86565b610b1b565b3480156103e4575f80fd5b5061028f610b98565b3480156103f8575f80fd5b506097546040516001600160a01b0390911681526020016101ff565b34801561041f575f80fd5b506101f361042e366004611c58565b610bb0565b34801561043e575f80fd5b5061028f61044d366004611c86565b610bda565b34801561045d575f80fd5b5061028f610beb565b348015610471575f80fd5b506102625f81565b348015610484575f80fd5b506102276040518060400160405280601381526020017229b2b0b837b93a10283937bc3c90213abcb2b960691b81525081565b3480156104c2575f80fd5b506101f36104d1366004611b28565b610c04565b3480156104e1575f80fd5b506101f36104f0366004611c86565b610c55565b348015610500575f80fd5b506102625f8051602061273c83398151915281565b348015610520575f80fd5b5061028f61052f366004611c58565b610c6d565b34801561053f575f80fd5b506101f361054e366004611ddc565b610c91565b34801561055e575f80fd5b5061028f61056d366004611c86565b610de6565b34801561057d575f80fd5b5061028f61058c366004611e8f565b610e01565b34801561059c575f80fd5b5061022760405180604001604052806005815260200164302e302e3160d81b81525081565b5f6001600160e01b03198216637965db0b60e01b14806105f157506301ffc9a760e01b6001600160e01b03198316145b92915050565b60605f5a9050610608858585610c04565b61062557604051638baa579f60e01b815260040160405180910390fd5b6106b56106356020870187611c86565b3060408801358461064960608b018b611eb9565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f92019190915250610ee792505050565b9150505b9392505050565b5f82815260fb60205260409020600101546106da81610fc5565b6106e48383610fd6565b505050565b6106f161105c565b6106fa816110d5565b50565b6107056110ec565b6001600160a01b0316816001600160a01b0316146107825760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b61078c82826110fa565b5050565b61079861105c565b6107a061117e565b6107a86111c8565b565b5f54610100900460ff16158080156107c857505f54600160ff909116105b806107e15750303b1580156107e157505f5460ff166001145b6108445760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610779565b5f805460ff191660011790558015610865575f805461ff0019166101001790555b61015f80546001600160a01b03199081166001600160a01b03868116918217909355610160805490921692851692831790915560405163095ea7b360e01b815260048101919091525f19602482015263095ea7b3906044016020604051808303815f875af11580156108d9573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108fd9190611efc565b50610906611221565b61090e61124e565b61091661124e565b61091e611274565b6109266112aa565b61092e6112e1565b80156106e4575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a1505050565b61097f61105c565b5f5b815181101561078c576109ac82828151811061099f5761099f611f1b565b60200260200101516110d5565b600101610981565b6109bf6104f06110ec565b6109db5760405162461bcd60e51b815260040161077990611f2f565b6001600160a01b038116610a315760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610779565b610a3a81611314565b610a42610beb565b6040516001600160a01b038216903480156108fc02915f818181858888f1935050505015801561078c573d5f803e3d5ffd5b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f90610ac6906060016040516020818303038152906040528051906020012090565b5492915050565b610ad561105c565b6107a85f61132b565b610ae661105c565b5f5b815181101561078c57610b13828281518110610b0657610b06611f1b565b6020026020010151611314565b600101610ae8565b610b266104f06110ec565b610b425760405162461bcd60e51b815260040161077990611f2f565b6001600160a01b038116610a3a5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610779565b610ba061105c565b610ba861137c565b6107a86113c3565b5f91825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610be261105c565b6106fa81611314565b6107a85f8051602061273c8339815191526102ca6110ec565b5f610c4d610c1185611f64565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061140292505050565b949350505050565b5f6105f15f8051602061273c83398151915283610bb0565b5f82815260fb6020526040902060010154610c8781610fc5565b6106e483836110fa565b5f610c9d6104f06110ec565b610cb95760405162461bcd60e51b815260040161077990611f2f565b600260335403610d0b5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610779565b6002603355610d1861137c565b6001600160a01b038216610d3f576040516311d000e160e31b815260040160405180910390fd5b61015f546040516339eb2ac960e21b81526001600160a01b039091169063e7acab2490610d789089908990899089908990600401612398565b6020604051808303815f875af1158015610d94573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610db89190611efc565b905080610dd857604051636725093760e01b815260040160405180910390fd5b600160335595945050505050565b610dee61105c565b610df78161153d565b6106fa5f826115b3565b610e0961105c565b600260335403610e5b5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610779565b6002603355610e6861137c565b6101605460405163a9059cbb60e01b81526001600160a01b038481166004830152602482018490529091169063a9059cbb906044016020604051808303815f875af1158015610eb9573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610edd9190611efc565b5050600160335550565b6060610ef2856115bd565b5f80876001600160a01b031686610f0b8b8a8989611622565b604051610f18919061256e565b5f604051808303815f8787f1925050503d805f8114610f52576040519150601f19603f3d011682016040523d82523d5f602084013e610f57565b606091505b509092509050610f68603f8761259d565b5a11610f7657610f766125bc565b610fb682826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c4544000000000000815250611652565b925050505b9695505050505050565b6106fa81610fd16110ec565b61168b565b610fe08282610bb0565b61078c575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191660011790556110186110ec565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6110646110ec565b6001600160a01b031661107f6097546001600160a01b031690565b6001600160a01b0316146107a85760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610779565b6106fa5f8051602061273c83398151915282610c6d565b5f6110f56116ef565b905090565b6111048282610bb0565b1561078c575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff1916905561113a6110ec565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b61012d5460ff166107a85760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b6044820152606401610779565b6111d061117e565b61012d805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6112046110ec565b6040516001600160a01b03909116815260200160405180910390a1565b5f54610100900460ff166112475760405162461bcd60e51b8152600401610779906125d0565b6001603355565b5f54610100900460ff166107a85760405162461bcd60e51b8152600401610779906125d0565b5f54610100900460ff1661129a5760405162461bcd60e51b8152600401610779906125d0565b6107a86112a56110ec565b61132b565b5f54610100900460ff166112d05760405162461bcd60e51b8152600401610779906125d0565b6107a85f6112dc6110ec565b6115b3565b5f54610100900460ff166113075760405162461bcd60e51b8152600401610779906125d0565b61012d805460ff19169055565b6106fa5f8051602061273c833981519152826115b3565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b61012d5460ff16156107a85760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b6044820152606401610779565b6113cb61137c565b61012d805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586112046110ec565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015611446573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061146a919061261b565b90505f6115178660600151805190602001208688602001516040516020016114b79392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b9050818660200151148015610fbb57508551610fbb906001600160a01b03168286611709565b61154561105c565b6001600160a01b0381166115aa5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610779565b6106fa8161132b565b61078c8282610fd6565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f906060016040516020818303038152906040528051906020012090506116118190565b5461161d906001612632565b905550565b606082858560405160200161163993929190612645565b6040516020818303038152906040529050949350505050565b606083156116615750816106b9565b8251156116715782518084602001fd5b8160405162461bcd60e51b81526004016107799190611c0b565b6116958282610bb0565b61078c576116ad816001600160a01b03166014611844565b6116b8836020611844565b6040516020016116c9929190612683565b60408051601f198184030181529082905262461bcd60e51b825261077991600401611c0b565b5f303303611704575060331936013560601c90565b503390565b5f805f61171685856119da565b90925090505f81600481111561172e5761172e612074565b14801561174c5750856001600160a01b0316826001600160a01b0316145b1561175c576001925050506106b9565b5f80876001600160a01b0316631626ba7e60e01b88886040516024016117839291906126f7565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516117c1919061256e565b5f60405180830381855afa9150503d805f81146117f9576040519150601f19603f3d011682016040523d82523d5f602084013e6117fe565b606091505b5091509150818015611811575080516020145b801561183857508051630b135d3f60e11b90611836908301602090810190840161261b565b145b98975050505050505050565b60605f61185283600261270f565b61185d906002612632565b67ffffffffffffffff81111561187557611875611ccd565b6040519080825280601f01601f19166020018201604052801561189f576020820181803683370190505b509050600360fc1b815f815181106118b9576118b9611f1b565b60200101906001600160f81b03191690815f1a905350600f60fb1b816001815181106118e7576118e7611f1b565b60200101906001600160f81b03191690815f1a9053505f61190984600261270f565b611914906001612632565b90505b600181111561198b576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061194857611948611f1b565b1a60f81b82828151811061195e5761195e611f1b565b60200101906001600160f81b03191690815f1a90535060049490941c9361198481612726565b9050611917565b5083156106b95760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610779565b5f808251604103611a0e576020830151604084015160608501515f1a611a0287828585611a1c565b94509450505050611a15565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115611a5157505f90506003611af8565b8460ff16601b14158015611a6957508460ff16601c14155b15611a7957505f90506004611af8565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015611aca573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b038116611af2575f60019250925050611af8565b91505f90505b94509492505050565b5f60208284031215611b11575f80fd5b81356001600160e01b0319811681146106b9575f80fd5b5f805f60408486031215611b3a575f80fd5b833567ffffffffffffffff80821115611b51575f80fd5b9085019060808288031215611b64575f80fd5b90935060208501359080821115611b79575f80fd5b818601915086601f830112611b8c575f80fd5b813581811115611b9a575f80fd5b876020828501011115611bab575f80fd5b6020830194508093505050509250925092565b5f5b83811015611bd8578181015183820152602001611bc0565b50505f910152565b5f8151808452611bf7816020860160208601611bbe565b601f01601f19169290920160200192915050565b602081525f6106b96020830184611be0565b5f60208284031215611c2d575f80fd5b5035919050565b6001600160a01b03811681146106fa575f80fd5b8035611c5381611c34565b919050565b5f8060408385031215611c69575f80fd5b823591506020830135611c7b81611c34565b809150509250929050565b5f60208284031215611c96575f80fd5b81356106b981611c34565b5f8060408385031215611cb2575f80fd5b8235611cbd81611c34565b91506020830135611c7b81611c34565b634e487b7160e01b5f52604160045260245ffd5b6040516080810167ffffffffffffffff81118282101715611d0457611d04611ccd565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715611d3357611d33611ccd565b604052919050565b5f6020808385031215611d4c575f80fd5b823567ffffffffffffffff80821115611d63575f80fd5b818501915085601f830112611d76575f80fd5b813581811115611d8857611d88611ccd565b8060051b9150611d99848301611d0a565b8181529183018401918481019088841115611db2575f80fd5b938501935b838510156118385784359250611dcc83611c34565b8282529385019390850190611db7565b5f805f805f60808688031215611df0575f80fd5b853567ffffffffffffffff80821115611e07575f80fd5b9087019060a0828a031215611e1a575f80fd5b90955060208701359080821115611e2f575f80fd5b818801915088601f830112611e42575f80fd5b813581811115611e50575f80fd5b8960208260051b8501011115611e64575f80fd5b60208301965080955050505060408601359150611e8360608701611c48565b90509295509295909350565b5f8060408385031215611ea0575f80fd5b8235611eab81611c34565b946020939093013593505050565b5f808335601e19843603018112611ece575f80fd5b83018035915067ffffffffffffffff821115611ee8575f80fd5b602001915036819003821315611a15575f80fd5b5f60208284031215611f0c575f80fd5b815180151581146106b9575f80fd5b634e487b7160e01b5f52603260045260245ffd5b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b5f60808236031215611f74575f80fd5b611f7c611ce1565b8235611f8781611c34565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff80821115611fb7575f80fd5b9085019036601f830112611fc9575f80fd5b813581811115611fdb57611fdb611ccd565b611fed601f8201601f19168501611d0a565b91508082523684828501011115612002575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b5f808335601e19843603018112612036575f80fd5b830160208101925035905067ffffffffffffffff811115612055575f80fd5b60a081023603821315611a15575f80fd5b803560068110611c53575f80fd5b634e487b7160e01b5f52602160045260245ffd5b6006811061209857612098612074565b9052565b8183525f60208085019450825f5b8581101561210e576120c4876120bf84612066565b612088565b828201356120d181611c34565b6001600160a01b03168388015260408281013590880152606080830135908801526080808301359088015260a096870196909101906001016120aa565b509495945050505050565b5f808335601e1984360301811261212e575f80fd5b830160208101925035905067ffffffffffffffff81111561214d575f80fd5b60c081023603821315611a15575f80fd5b8183525f60208085019450825f5b8581101561210e57612181876120bf84612066565b8282013561218e81611c34565b6001600160a01b039081168885015260408381013590890152606080840135908901526080808401359089015260a090838201356121cb81611c34565b169088015260c096870196919091019060010161216c565b803560058110611c53575f80fd5b6005811061209857612098612074565b80356001600160781b0381168114611c53575f80fd5b5f808335601e1984360301811261222c575f80fd5b830160208101925035905067ffffffffffffffff81111561224b575f80fd5b803603821315611a15575f80fd5b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b8183525f6001600160fb1b03831115612298575f80fd5b8260051b80836020870137939093016020019392505050565b8183526020808401935f91600585811b8301820185855b8881101561238a57858303601f19018a52813536899003609e190181126122ed575f80fd5b88018035845260a08682013560028110612305575f80fd5b85880152604082810135908601526060808301359086015260808083013536849003601e19018112612335575f80fd5b90920187810192903567ffffffffffffffff811115612352575f80fd5b80881b3603841315612362575f80fd5b82828801526123748388018286612281565b9d89019d965050509286019250506001016122c8565b509098975050505050505050565b608081525f610120873561015e198936030181126123b4575f80fd5b60a0608085015288016123d98285016123cc83611c48565b6001600160a01b03169052565b6123e560208201611c48565b6101406123fc818701836001600160a01b03169052565b6124096040840184612021565b6101608881015292506124216102808801848361209c565b9250506124316060840184612119565b87840361011f190161018089015261244a84828461215e565b9350505061245a608084016121e3565b6124686101a08801826121f1565b5060a08301356101c087015260c08301356101e087015260e08301356102008701526101008084013561022088015284840135610240880152818401356102608801526124b760208d01612201565b6001600160781b03811660a089015294506124d460408d01612201565b6001600160781b03811660c089015294506124f260608d018d612217565b95509350607f199150818784030160e0880152612510838686612259565b945061251f60808d018d612217565b945092508187860301818801525050612539838383612259565b9250505082810360208401526125508187896122b1565b915050836040830152610fbb60608301846001600160a01b03169052565b5f825161257f818460208701611bbe565b9190910192915050565b634e487b7160e01b5f52601160045260245ffd5b5f826125b757634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b5f6020828403121561262b575f80fd5b5051919050565b808201808211156105f1576105f1612589565b5f8451612656818460208901611bbe565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081525f83516126ba816017850160208801611bbe565b7001034b99036b4b9b9b4b733903937b6329607d1b60179184019182015283516126eb816028840160208801611bbe565b01602801949350505050565b828152604060208201525f610c4d6040830184611be0565b80820281158282048414176105f1576105f1612589565b5f8161273457612734612589565b505f19019056fe9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000818000a", - "deployedBytecode": "0x6080604052600436106101d0575f3560e01c806381c81d35116100fd578063a424740011610092578063e7acab2411610062578063e7acab2414610534578063f2fde38b14610553578063f3fef3a314610572578063ffa1ad7414610591575f80fd5b8063a4247400146104b7578063aa271e1a146104d6578063d5391393146104f5578063d547741f14610515575f80fd5b8063983b2d56116100cd578063983b2d56146104335780639865027514610452578063a217fddf14610466578063a3f4df7e14610479575f80fd5b806381c81d35146103c65780638456cb59146103d95780638da5cb5b146103ed57806391d1485414610414575f80fd5b8063485cc95511610173578063634486da11610143578063634486da146103615780636ccbae5f14610374578063715018a61461039357806371e2a657146103a7575f80fd5b8063485cc955146102e3578063572b6c05146103025780635c975abb1461032a5780635fc1964f14610342575f80fd5b80632f2ff15d116101ae5780632f2ff15d146102705780633092afd51461029157806336568abe146102b05780633f4ba83a146102cf575f80fd5b806301ffc9a7146101d45780631bf7e13e14610208578063248a9ca314610234575b5f80fd5b3480156101df575f80fd5b506101f36101ee366004611b01565b6105c1565b60405190151581526020015b60405180910390f35b348015610213575f80fd5b50610227610222366004611b28565b6105f7565b6040516101ff9190611c0b565b34801561023f575f80fd5b5061026261024e366004611c1d565b5f90815260fb602052604090206001015490565b6040519081526020016101ff565b34801561027b575f80fd5b5061028f61028a366004611c58565b6106c0565b005b34801561029c575f80fd5b5061028f6102ab366004611c86565b6106e9565b3480156102bb575f80fd5b5061028f6102ca366004611c58565b6106fd565b3480156102da575f80fd5b5061028f610790565b3480156102ee575f80fd5b5061028f6102fd366004611ca1565b6107aa565b34801561030d575f80fd5b506101f361031c366004611c86565b6001600160a01b0316301490565b348015610335575f80fd5b5061012d5460ff166101f3565b34801561034d575f80fd5b5061028f61035c366004611d3b565b610977565b61028f61036f366004611c86565b6109b4565b34801561037f575f80fd5b5061026261038e366004611c1d565b610a74565b34801561039e575f80fd5b5061028f610acd565b3480156103b2575f80fd5b5061028f6103c1366004611d3b565b610ade565b61028f6103d4366004611c86565b610b1b565b3480156103e4575f80fd5b5061028f610b98565b3480156103f8575f80fd5b506097546040516001600160a01b0390911681526020016101ff565b34801561041f575f80fd5b506101f361042e366004611c58565b610bb0565b34801561043e575f80fd5b5061028f61044d366004611c86565b610bda565b34801561045d575f80fd5b5061028f610beb565b348015610471575f80fd5b506102625f81565b348015610484575f80fd5b506102276040518060400160405280601381526020017229b2b0b837b93a10283937bc3c90213abcb2b960691b81525081565b3480156104c2575f80fd5b506101f36104d1366004611b28565b610c04565b3480156104e1575f80fd5b506101f36104f0366004611c86565b610c55565b348015610500575f80fd5b506102625f8051602061273c83398151915281565b348015610520575f80fd5b5061028f61052f366004611c58565b610c6d565b34801561053f575f80fd5b506101f361054e366004611ddc565b610c91565b34801561055e575f80fd5b5061028f61056d366004611c86565b610de6565b34801561057d575f80fd5b5061028f61058c366004611e8f565b610e01565b34801561059c575f80fd5b5061022760405180604001604052806005815260200164302e302e3160d81b81525081565b5f6001600160e01b03198216637965db0b60e01b14806105f157506301ffc9a760e01b6001600160e01b03198316145b92915050565b60605f5a9050610608858585610c04565b61062557604051638baa579f60e01b815260040160405180910390fd5b6106b56106356020870187611c86565b3060408801358461064960608b018b611eb9565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f92019190915250610ee792505050565b9150505b9392505050565b5f82815260fb60205260409020600101546106da81610fc5565b6106e48383610fd6565b505050565b6106f161105c565b6106fa816110d5565b50565b6107056110ec565b6001600160a01b0316816001600160a01b0316146107825760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b61078c82826110fa565b5050565b61079861105c565b6107a061117e565b6107a86111c8565b565b5f54610100900460ff16158080156107c857505f54600160ff909116105b806107e15750303b1580156107e157505f5460ff166001145b6108445760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610779565b5f805460ff191660011790558015610865575f805461ff0019166101001790555b61015f80546001600160a01b03199081166001600160a01b03868116918217909355610160805490921692851692831790915560405163095ea7b360e01b815260048101919091525f19602482015263095ea7b3906044016020604051808303815f875af11580156108d9573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108fd9190611efc565b50610906611221565b61090e61124e565b61091661124e565b61091e611274565b6109266112aa565b61092e6112e1565b80156106e4575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a1505050565b61097f61105c565b5f5b815181101561078c576109ac82828151811061099f5761099f611f1b565b60200260200101516110d5565b600101610981565b6109bf6104f06110ec565b6109db5760405162461bcd60e51b815260040161077990611f2f565b6001600160a01b038116610a315760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610779565b610a3a81611314565b610a42610beb565b6040516001600160a01b038216903480156108fc02915f818181858888f1935050505015801561078c573d5f803e3d5ffd5b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f90610ac6906060016040516020818303038152906040528051906020012090565b5492915050565b610ad561105c565b6107a85f61132b565b610ae661105c565b5f5b815181101561078c57610b13828281518110610b0657610b06611f1b565b6020026020010151611314565b600101610ae8565b610b266104f06110ec565b610b425760405162461bcd60e51b815260040161077990611f2f565b6001600160a01b038116610a3a5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610779565b610ba061105c565b610ba861137c565b6107a86113c3565b5f91825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610be261105c565b6106fa81611314565b6107a85f8051602061273c8339815191526102ca6110ec565b5f610c4d610c1185611f64565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061140292505050565b949350505050565b5f6105f15f8051602061273c83398151915283610bb0565b5f82815260fb6020526040902060010154610c8781610fc5565b6106e483836110fa565b5f610c9d6104f06110ec565b610cb95760405162461bcd60e51b815260040161077990611f2f565b600260335403610d0b5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610779565b6002603355610d1861137c565b6001600160a01b038216610d3f576040516311d000e160e31b815260040160405180910390fd5b61015f546040516339eb2ac960e21b81526001600160a01b039091169063e7acab2490610d789089908990899089908990600401612398565b6020604051808303815f875af1158015610d94573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610db89190611efc565b905080610dd857604051636725093760e01b815260040160405180910390fd5b600160335595945050505050565b610dee61105c565b610df78161153d565b6106fa5f826115b3565b610e0961105c565b600260335403610e5b5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610779565b6002603355610e6861137c565b6101605460405163a9059cbb60e01b81526001600160a01b038481166004830152602482018490529091169063a9059cbb906044016020604051808303815f875af1158015610eb9573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610edd9190611efc565b5050600160335550565b6060610ef2856115bd565b5f80876001600160a01b031686610f0b8b8a8989611622565b604051610f18919061256e565b5f604051808303815f8787f1925050503d805f8114610f52576040519150601f19603f3d011682016040523d82523d5f602084013e610f57565b606091505b509092509050610f68603f8761259d565b5a11610f7657610f766125bc565b610fb682826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c4544000000000000815250611652565b925050505b9695505050505050565b6106fa81610fd16110ec565b61168b565b610fe08282610bb0565b61078c575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191660011790556110186110ec565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6110646110ec565b6001600160a01b031661107f6097546001600160a01b031690565b6001600160a01b0316146107a85760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610779565b6106fa5f8051602061273c83398151915282610c6d565b5f6110f56116ef565b905090565b6111048282610bb0565b1561078c575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff1916905561113a6110ec565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b61012d5460ff166107a85760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b6044820152606401610779565b6111d061117e565b61012d805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6112046110ec565b6040516001600160a01b03909116815260200160405180910390a1565b5f54610100900460ff166112475760405162461bcd60e51b8152600401610779906125d0565b6001603355565b5f54610100900460ff166107a85760405162461bcd60e51b8152600401610779906125d0565b5f54610100900460ff1661129a5760405162461bcd60e51b8152600401610779906125d0565b6107a86112a56110ec565b61132b565b5f54610100900460ff166112d05760405162461bcd60e51b8152600401610779906125d0565b6107a85f6112dc6110ec565b6115b3565b5f54610100900460ff166113075760405162461bcd60e51b8152600401610779906125d0565b61012d805460ff19169055565b6106fa5f8051602061273c833981519152826115b3565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b61012d5460ff16156107a85760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b6044820152606401610779565b6113cb61137c565b61012d805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586112046110ec565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015611446573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061146a919061261b565b90505f6115178660600151805190602001208688602001516040516020016114b79392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b9050818660200151148015610fbb57508551610fbb906001600160a01b03168286611709565b61154561105c565b6001600160a01b0381166115aa5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610779565b6106fa8161132b565b61078c8282610fd6565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f906060016040516020818303038152906040528051906020012090506116118190565b5461161d906001612632565b905550565b606082858560405160200161163993929190612645565b6040516020818303038152906040529050949350505050565b606083156116615750816106b9565b8251156116715782518084602001fd5b8160405162461bcd60e51b81526004016107799190611c0b565b6116958282610bb0565b61078c576116ad816001600160a01b03166014611844565b6116b8836020611844565b6040516020016116c9929190612683565b60408051601f198184030181529082905262461bcd60e51b825261077991600401611c0b565b5f303303611704575060331936013560601c90565b503390565b5f805f61171685856119da565b90925090505f81600481111561172e5761172e612074565b14801561174c5750856001600160a01b0316826001600160a01b0316145b1561175c576001925050506106b9565b5f80876001600160a01b0316631626ba7e60e01b88886040516024016117839291906126f7565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516117c1919061256e565b5f60405180830381855afa9150503d805f81146117f9576040519150601f19603f3d011682016040523d82523d5f602084013e6117fe565b606091505b5091509150818015611811575080516020145b801561183857508051630b135d3f60e11b90611836908301602090810190840161261b565b145b98975050505050505050565b60605f61185283600261270f565b61185d906002612632565b67ffffffffffffffff81111561187557611875611ccd565b6040519080825280601f01601f19166020018201604052801561189f576020820181803683370190505b509050600360fc1b815f815181106118b9576118b9611f1b565b60200101906001600160f81b03191690815f1a905350600f60fb1b816001815181106118e7576118e7611f1b565b60200101906001600160f81b03191690815f1a9053505f61190984600261270f565b611914906001612632565b90505b600181111561198b576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061194857611948611f1b565b1a60f81b82828151811061195e5761195e611f1b565b60200101906001600160f81b03191690815f1a90535060049490941c9361198481612726565b9050611917565b5083156106b95760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610779565b5f808251604103611a0e576020830151604084015160608501515f1a611a0287828585611a1c565b94509450505050611a15565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115611a5157505f90506003611af8565b8460ff16601b14158015611a6957508460ff16601c14155b15611a7957505f90506004611af8565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015611aca573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b038116611af2575f60019250925050611af8565b91505f90505b94509492505050565b5f60208284031215611b11575f80fd5b81356001600160e01b0319811681146106b9575f80fd5b5f805f60408486031215611b3a575f80fd5b833567ffffffffffffffff80821115611b51575f80fd5b9085019060808288031215611b64575f80fd5b90935060208501359080821115611b79575f80fd5b818601915086601f830112611b8c575f80fd5b813581811115611b9a575f80fd5b876020828501011115611bab575f80fd5b6020830194508093505050509250925092565b5f5b83811015611bd8578181015183820152602001611bc0565b50505f910152565b5f8151808452611bf7816020860160208601611bbe565b601f01601f19169290920160200192915050565b602081525f6106b96020830184611be0565b5f60208284031215611c2d575f80fd5b5035919050565b6001600160a01b03811681146106fa575f80fd5b8035611c5381611c34565b919050565b5f8060408385031215611c69575f80fd5b823591506020830135611c7b81611c34565b809150509250929050565b5f60208284031215611c96575f80fd5b81356106b981611c34565b5f8060408385031215611cb2575f80fd5b8235611cbd81611c34565b91506020830135611c7b81611c34565b634e487b7160e01b5f52604160045260245ffd5b6040516080810167ffffffffffffffff81118282101715611d0457611d04611ccd565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715611d3357611d33611ccd565b604052919050565b5f6020808385031215611d4c575f80fd5b823567ffffffffffffffff80821115611d63575f80fd5b818501915085601f830112611d76575f80fd5b813581811115611d8857611d88611ccd565b8060051b9150611d99848301611d0a565b8181529183018401918481019088841115611db2575f80fd5b938501935b838510156118385784359250611dcc83611c34565b8282529385019390850190611db7565b5f805f805f60808688031215611df0575f80fd5b853567ffffffffffffffff80821115611e07575f80fd5b9087019060a0828a031215611e1a575f80fd5b90955060208701359080821115611e2f575f80fd5b818801915088601f830112611e42575f80fd5b813581811115611e50575f80fd5b8960208260051b8501011115611e64575f80fd5b60208301965080955050505060408601359150611e8360608701611c48565b90509295509295909350565b5f8060408385031215611ea0575f80fd5b8235611eab81611c34565b946020939093013593505050565b5f808335601e19843603018112611ece575f80fd5b83018035915067ffffffffffffffff821115611ee8575f80fd5b602001915036819003821315611a15575f80fd5b5f60208284031215611f0c575f80fd5b815180151581146106b9575f80fd5b634e487b7160e01b5f52603260045260245ffd5b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b5f60808236031215611f74575f80fd5b611f7c611ce1565b8235611f8781611c34565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff80821115611fb7575f80fd5b9085019036601f830112611fc9575f80fd5b813581811115611fdb57611fdb611ccd565b611fed601f8201601f19168501611d0a565b91508082523684828501011115612002575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b5f808335601e19843603018112612036575f80fd5b830160208101925035905067ffffffffffffffff811115612055575f80fd5b60a081023603821315611a15575f80fd5b803560068110611c53575f80fd5b634e487b7160e01b5f52602160045260245ffd5b6006811061209857612098612074565b9052565b8183525f60208085019450825f5b8581101561210e576120c4876120bf84612066565b612088565b828201356120d181611c34565b6001600160a01b03168388015260408281013590880152606080830135908801526080808301359088015260a096870196909101906001016120aa565b509495945050505050565b5f808335601e1984360301811261212e575f80fd5b830160208101925035905067ffffffffffffffff81111561214d575f80fd5b60c081023603821315611a15575f80fd5b8183525f60208085019450825f5b8581101561210e57612181876120bf84612066565b8282013561218e81611c34565b6001600160a01b039081168885015260408381013590890152606080840135908901526080808401359089015260a090838201356121cb81611c34565b169088015260c096870196919091019060010161216c565b803560058110611c53575f80fd5b6005811061209857612098612074565b80356001600160781b0381168114611c53575f80fd5b5f808335601e1984360301811261222c575f80fd5b830160208101925035905067ffffffffffffffff81111561224b575f80fd5b803603821315611a15575f80fd5b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b8183525f6001600160fb1b03831115612298575f80fd5b8260051b80836020870137939093016020019392505050565b8183526020808401935f91600585811b8301820185855b8881101561238a57858303601f19018a52813536899003609e190181126122ed575f80fd5b88018035845260a08682013560028110612305575f80fd5b85880152604082810135908601526060808301359086015260808083013536849003601e19018112612335575f80fd5b90920187810192903567ffffffffffffffff811115612352575f80fd5b80881b3603841315612362575f80fd5b82828801526123748388018286612281565b9d89019d965050509286019250506001016122c8565b509098975050505050505050565b608081525f610120873561015e198936030181126123b4575f80fd5b60a0608085015288016123d98285016123cc83611c48565b6001600160a01b03169052565b6123e560208201611c48565b6101406123fc818701836001600160a01b03169052565b6124096040840184612021565b6101608881015292506124216102808801848361209c565b9250506124316060840184612119565b87840361011f190161018089015261244a84828461215e565b9350505061245a608084016121e3565b6124686101a08801826121f1565b5060a08301356101c087015260c08301356101e087015260e08301356102008701526101008084013561022088015284840135610240880152818401356102608801526124b760208d01612201565b6001600160781b03811660a089015294506124d460408d01612201565b6001600160781b03811660c089015294506124f260608d018d612217565b95509350607f199150818784030160e0880152612510838686612259565b945061251f60808d018d612217565b945092508187860301818801525050612539838383612259565b9250505082810360208401526125508187896122b1565b915050836040830152610fbb60608301846001600160a01b03169052565b5f825161257f818460208701611bbe565b9190910192915050565b634e487b7160e01b5f52601160045260245ffd5b5f826125b757634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b5f6020828403121561262b575f80fd5b5051919050565b808201808211156105f1576105f1612589565b5f8451612656818460208901611bbe565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081525f83516126ba816017850160208801611bbe565b7001034b99036b4b9b9b4b733903937b6329607d1b60179184019182015283516126eb816028840160208801611bbe565b01602801949350505050565b828152604060208201525f610c4d6040830184611be0565b80820281158282048414176105f1576105f1612589565b5f8161273457612734612589565b505f19019056fe9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000818000a", + "bytecode": "0x608060405234801562000010575f80fd5b506200001b62000021565b620000e0565b5f54610100900460ff16156200008d5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b5f5460ff9081161015620000de575f805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b612ed380620000ee5f395ff3fe6080604052600436106101db575f3560e01c80638da5cb5b116100fd578063c4d66de811610092578063daea85c511610062578063daea85c51461055e578063e7acab241461057d578063f2fde38b1461059c578063ffa1ad74146105bb575f80fd5b8063c4d66de8146104e1578063d539139314610500578063d547741f14610520578063d9caed121461053f575f80fd5b8063a217fddf116100cd578063a217fddf14610452578063a3f4df7e14610465578063a4247400146104a3578063aa271e1a146104c2575f80fd5b80638da5cb5b146103d957806391d1485414610400578063983b2d561461041f578063986502751461043e575f80fd5b80635c975abb11610173578063715018a611610143578063715018a61461037f57806371e2a6571461039357806381c81d35146103b25780638456cb59146103c5575f80fd5b80635c975abb146103165780635fc1964f1461032e578063634486da1461034d5780636ccbae5f14610360575f80fd5b80633092afd5116101ae5780633092afd51461029c57806336568abe146102bb5780633f4ba83a146102da578063572b6c05146102ee575f80fd5b806301ffc9a7146101df5780631bf7e13e14610213578063248a9ca31461023f5780632f2ff15d1461027b575b5f80fd5b3480156101ea575f80fd5b506101fe6101f9366004611ee0565b6105eb565b60405190151581526020015b60405180910390f35b34801561021e575f80fd5b5061023261022d366004611f07565b610621565b60405161020a9190611fe9565b34801561024a575f80fd5b5061026d610259366004611ffb565b5f90815260fb602052604090206001015490565b60405190815260200161020a565b348015610286575f80fd5b5061029a610295366004612036565b6106ea565b005b3480156102a7575f80fd5b5061029a6102b6366004612064565b610713565b3480156102c6575f80fd5b5061029a6102d5366004612036565b610727565b3480156102e5575f80fd5b5061029a6107ba565b3480156102f9575f80fd5b506101fe610308366004612064565b6001600160a01b0316301490565b348015610321575f80fd5b5061012d5460ff166101fe565b348015610339575f80fd5b5061029a6103483660046120eb565b6107d4565b61029a61035b366004612064565b610811565b34801561036b575f80fd5b5061026d61037a366004611ffb565b6108d1565b34801561038a575f80fd5b5061029a61092a565b34801561039e575f80fd5b5061029a6103ad3660046120eb565b61093b565b61029a6103c0366004612064565b610978565b3480156103d0575f80fd5b5061029a6109f5565b3480156103e4575f80fd5b506097546040516001600160a01b03909116815260200161020a565b34801561040b575f80fd5b506101fe61041a366004612036565b610a0d565b34801561042a575f80fd5b5061029a610439366004612064565b610a37565b348015610449575f80fd5b5061029a610a48565b34801561045d575f80fd5b5061026d5f81565b348015610470575f80fd5b506102326040518060400160405280601381526020017229b2b0b837b93a10283937bc3c90213abcb2b960691b81525081565b3480156104ae575f80fd5b506101fe6104bd366004611f07565b610a61565b3480156104cd575f80fd5b506101fe6104dc366004612064565b610ab2565b3480156104ec575f80fd5b5061029a6104fb366004612064565b610aca565b34801561050b575f80fd5b5061026d5f80516020612ea783398151915281565b34801561052b575f80fd5b5061029a61053a366004612036565b610c21565b34801561054a575f80fd5b5061029a61055936600461218b565b610c45565b348015610569575f80fd5b5061029a610578366004612064565b610cf7565b348015610588575f80fd5b506101fe6105973660046121c9565b610dac565b3480156105a7575f80fd5b5061029a6105b6366004612064565b6111db565b3480156105c6575f80fd5b5061023260405180604001604052806005815260200164302e302e3160d81b81525081565b5f6001600160e01b03198216637965db0b60e01b148061061b57506301ffc9a760e01b6001600160e01b03198316145b92915050565b60605f5a9050610632858585610a61565b61064f57604051638baa579f60e01b815260040160405180910390fd5b6106df61065f6020870187612064565b3060408801358461067360608b018b61227b565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f920191909152506111f692505050565b9150505b9392505050565b5f82815260fb6020526040902060010154610704816112d4565b61070e83836112e5565b505050565b61071b61136b565b610724816113e4565b50565b61072f6113fb565b6001600160a01b0316816001600160a01b0316146107ac5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6107b68282611409565b5050565b6107c261136b565b6107ca61148d565b6107d26114d7565b565b6107dc61136b565b5f5b81518110156107b6576108098282815181106107fc576107fc6122bd565b60200260200101516113e4565b6001016107de565b61081c6104dc6113fb565b6108385760405162461bcd60e51b81526004016107a3906122d1565b6001600160a01b03811661088e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016107a3565b61089781611530565b61089f610a48565b6040516001600160a01b038216903480156108fc02915f818181858888f193505050501580156107b6573d5f803e3d5ffd5b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f90610923906060016040516020818303038152906040528051906020012090565b5492915050565b61093261136b565b6107d25f611547565b61094361136b565b5f5b81518110156107b657610970828281518110610963576109636122bd565b6020026020010151611530565b600101610945565b6109836104dc6113fb565b61099f5760405162461bcd60e51b81526004016107a3906122d1565b6001600160a01b0381166108975760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016107a3565b6109fd61136b565b610a05611598565b6107d26115df565b5f91825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610a3f61136b565b61072481611530565b6107d25f80516020612ea78339815191526102d56113fb565b5f610aaa610a6e85612306565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061161e92505050565b949350505050565b5f61061b5f80516020612ea783398151915283610a0d565b5f54610100900460ff1615808015610ae857505f54600160ff909116105b80610b015750303b158015610b0157505f5460ff166001145b610b645760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107a3565b5f805460ff191660011790558015610b85575f805461ff0019166101001790555b61015f80546001600160a01b0319166001600160a01b038416179055610ba9611759565b610bb1611786565b610bb9611786565b610bc1611786565b610bc96117ac565b610bd16117e2565b610bd9611819565b80156107b6575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b5f82815260fb6020526040902060010154610c3b816112d4565b61070e8383611409565b610c4d61136b565b600260335403610c6f5760405162461bcd60e51b81526004016107a3906123c2565b6002603355610c7c611598565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af1158015610cc8573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cec91906123f9565b505060016033555050565b610cff61136b565b600260335403610d215760405162461bcd60e51b81526004016107a3906123c2565b6002603355610d2e611598565b61015f5460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529082169063095ea7b3906044016020604051808303815f875af1158015610d7f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610da391906123f9565b50506001603355565b5f610db86104dc6113fb565b610dd45760405162461bcd60e51b81526004016107a3906122d1565b600260335403610df65760405162461bcd60e51b81526004016107a3906123c2565b6002603355610e03611598565b6001600160a01b038216610e2a576040516311d000e160e31b815260040160405180910390fd5b30610e358780612418565b610e46906040810190602001612064565b6001600160a01b031614610e6d57604051639d3c586b60e01b815260040160405180910390fd5b610e75611e67565b610e7f8780612418565b610e8d906020810190612064565b6001600160a01b03168152610ea28780612418565b610eb3906040810190602001612064565b6001600160a01b03166020820152610ecb8780612418565b610ed9906040810190612437565b808060200260200160405190810160405280939291908181526020015f905b82821015610f2457610f1560a08302860136819003810190612489565b81526020019060010190610ef8565b50505050506040820152610f388780612418565b610f46906060810190612506565b808060200260200160405190810160405280939291908181526020015f905b82821015610f9157610f8260c0830286013681900381019061254a565b81526020019060010190610f65565b50505050506060820152610fa58780612418565b610fb69060a08101906080016125e5565b81608001906004811115610fcc57610fcc6125fe565b90816004811115610fdf57610fdf6125fe565b905250610fec8780612418565b60a090810135908201526110008780612418565b60c090810135908201526110148780612418565b60e090810135908201526110288780612418565b610100908101359082015261103d8780612418565b610120908101359082015261015f54815160405163f07ec37360e01b81526001600160a01b03918216600482015291169063f07ec37390602401602060405180830381865afa158015611092573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110b69190612612565b61014082015261015f546040516379df72bd60e01b8152611133916001600160a01b0316906379df72bd906110ef908590600401612737565b602060405180830381865afa15801561110a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061112e9190612612565b61184c565b61015f546040516339eb2ac960e21b81526001600160a01b039091169063e7acab249061116c908a908a908a908a908a90600401612b24565b6020604051808303815f875af1158015611188573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111ac91906123f9565b9150816111cc57604051636725093760e01b815260040160405180910390fd5b50600160335595945050505050565b6111e361136b565b6111ec81611865565b6107245f826118db565b6060611201856118e5565b5f80876001600160a01b03168661121a8b8a898961194a565b6040516112279190612cfa565b5f604051808303815f8787f1925050503d805f8114611261576040519150601f19603f3d011682016040523d82523d5f602084013e611266565b606091505b509092509050611277603f87612d1f565b5a1161128557611285612d3e565b6112c582826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061197a565b925050505b9695505050505050565b610724816112e06113fb565b6119b3565b6112ef8282610a0d565b6107b6575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191660011790556113276113fb565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6113736113fb565b6001600160a01b031661138e6097546001600160a01b031690565b6001600160a01b0316146107d25760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107a3565b6107245f80516020612ea783398151915282610c21565b5f611404611a17565b905090565b6114138282610a0d565b156107b6575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191690556114496113fb565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b61012d5460ff166107d25760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b60448201526064016107a3565b6114df61148d565b61012d805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6115136113fb565b6040516001600160a01b03909116815260200160405180910390a1565b6107245f80516020612ea7833981519152826118db565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b61012d5460ff16156107d25760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b60448201526064016107a3565b6115e7611598565b61012d805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586115136113fb565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015611662573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116869190612612565b90505f6117338660600151805190602001208688602001516040516020016116d39392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156112ca575085516112ca906001600160a01b03168286611a34565b5f54610100900460ff1661177f5760405162461bcd60e51b81526004016107a390612d52565b6001603355565b5f54610100900460ff166107d25760405162461bcd60e51b81526004016107a390612d52565b5f54610100900460ff166117d25760405162461bcd60e51b81526004016107a390612d52565b6107d26117dd6113fb565b611547565b5f54610100900460ff166118085760405162461bcd60e51b81526004016107a390612d52565b6107d25f6118146113fb565b6118db565b5f54610100900460ff1661183f5760405162461bcd60e51b81526004016107a390612d52565b61012d805460ff19169055565b30330361185c5761072481611b6f565b610724816118e5565b61186d61136b565b6001600160a01b0381166118d25760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107a3565b61072481611547565b6107b682826112e5565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f906060016040516020818303038152906040528051906020012090506119398190565b54611945906001612d9d565b905550565b606082858560405160200161196193929190612db0565b6040516020818303038152906040529050949350505050565b606083156119895750816106e3565b8251156119995782518084602001fd5b8160405162461bcd60e51b81526004016107a39190611fe9565b6119bd8282610a0d565b6107b6576119d5816001600160a01b03166014611b99565b6119e0836020611b99565b6040516020016119f1929190612dee565b60408051601f198184030181529082905262461bcd60e51b82526107a391600401611fe9565b5f303303611a2c575060331936013560601c90565b503390565b90565b5f805f611a418585611d2e565b90925090505f816004811115611a5957611a596125fe565b148015611a775750856001600160a01b0316826001600160a01b0316145b15611a87576001925050506106e3565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401611aae929190612e62565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051611aec9190612cfa565b5f60405180830381855afa9150503d805f8114611b24576040519150601f19603f3d011682016040523d82523d5f602084013e611b29565b606091505b5091509150818015611b3c575080516020145b8015611b6357508051630b135d3f60e11b90611b619083016020908101908401612612565b145b98975050505050505050565b611b77611d70565b811461072457604051635637b6af60e11b8152600481018290526024016107a3565b60605f611ba7836002612e7a565b611bb2906002612d9d565b6001600160401b03811115611bc957611bc961207f565b6040519080825280601f01601f191660200182016040528015611bf3576020820181803683370190505b509050600360fc1b815f81518110611c0d57611c0d6122bd565b60200101906001600160f81b03191690815f1a905350600f60fb1b81600181518110611c3b57611c3b6122bd565b60200101906001600160f81b03191690815f1a9053505f611c5d846002612e7a565b611c68906001612d9d565b90505b6001811115611cdf576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611c9c57611c9c6122bd565b1a60f81b828281518110611cb257611cb26122bd565b60200101906001600160f81b03191690815f1a90535060049490941c93611cd881612e91565b9050611c6b565b5083156106e35760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016107a3565b5f808251604103611d62576020830151604084015160608501515f1a611d5687828585611d82565b94509450505050611d69565b505f905060025b9250929050565b5f303303611a315750601f1936013590565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115611db757505f90506003611e5e565b8460ff16601b14158015611dcf57508460ff16601c14155b15611ddf57505f90506004611e5e565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015611e30573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b038116611e58575f60019250925050611e5e565b91505f90505b94509492505050565b6040518061016001604052805f6001600160a01b031681526020015f6001600160a01b0316815260200160608152602001606081526020015f6004811115611eb157611eb16125fe565b81525f6020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b5f60208284031215611ef0575f80fd5b81356001600160e01b0319811681146106e3575f80fd5b5f805f60408486031215611f19575f80fd5b83356001600160401b0380821115611f2f575f80fd5b9085019060808288031215611f42575f80fd5b90935060208501359080821115611f57575f80fd5b818601915086601f830112611f6a575f80fd5b813581811115611f78575f80fd5b876020828501011115611f89575f80fd5b6020830194508093505050509250925092565b5f5b83811015611fb6578181015183820152602001611f9e565b50505f910152565b5f8151808452611fd5816020860160208601611f9c565b601f01601f19169290920160200192915050565b602081525f6106e36020830184611fbe565b5f6020828403121561200b575f80fd5b5035919050565b6001600160a01b0381168114610724575f80fd5b803561203181612012565b919050565b5f8060408385031215612047575f80fd5b82359150602083013561205981612012565b809150509250929050565b5f60208284031215612074575f80fd5b81356106e381612012565b634e487b7160e01b5f52604160045260245ffd5b604051608081016001600160401b03811182821017156120b5576120b561207f565b60405290565b604051601f8201601f191681016001600160401b03811182821017156120e3576120e361207f565b604052919050565b5f60208083850312156120fc575f80fd5b82356001600160401b0380821115612112575f80fd5b818501915085601f830112612125575f80fd5b8135818111156121375761213761207f565b8060051b91506121488483016120bb565b8181529183018401918481019088841115612161575f80fd5b938501935b83851015611b63578435925061217b83612012565b8282529385019390850190612166565b5f805f6060848603121561219d575f80fd5b83356121a881612012565b925060208401356121b881612012565b929592945050506040919091013590565b5f805f805f608086880312156121dd575f80fd5b85356001600160401b03808211156121f3575f80fd5b9087019060a0828a031215612206575f80fd5b9095506020870135908082111561221b575f80fd5b818801915088601f83011261222e575f80fd5b81358181111561223c575f80fd5b8960208260051b8501011115612250575f80fd5b6020830196508095505050506040860135915061226f60608701612026565b90509295509295909350565b5f808335601e19843603018112612290575f80fd5b8301803591506001600160401b038211156122a9575f80fd5b602001915036819003821315611d69575f80fd5b634e487b7160e01b5f52603260045260245ffd5b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b5f60808236031215612316575f80fd5b61231e612093565b823561232981612012565b8152602083810135818301526040808501359083015260608401356001600160401b0380821115612358575f80fd5b9085019036601f83011261236a575f80fd5b81358181111561237c5761237c61207f565b61238e601f8201601f191685016120bb565b915080825236848285010111156123a3575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b5f60208284031215612409575f80fd5b815180151581146106e3575f80fd5b5f823561015e1983360301811261242d575f80fd5b9190910192915050565b5f808335601e1984360301811261244c575f80fd5b8301803591506001600160401b03821115612465575f80fd5b602001915060a081023603821315611d69575f80fd5b803560068110612031575f80fd5b5f60a08284031215612499575f80fd5b60405160a081018181106001600160401b03821117156124bb576124bb61207f565b6040526124c78361247b565b815260208301356124d781612012565b806020830152506040830135604082015260608301356060820152608083013560808201528091505092915050565b5f808335601e1984360301811261251b575f80fd5b8301803591506001600160401b03821115612534575f80fd5b602001915060c081023603821315611d69575f80fd5b5f60c0828403121561255a575f80fd5b60405160c081018181106001600160401b038211171561257c5761257c61207f565b6040526125888361247b565b8152602083013561259881612012565b8060208301525060408301356040820152606083013560608201526080830135608082015260a08301356125cb81612012565b60a08201529392505050565b803560058110612031575f80fd5b5f602082840312156125f5575f80fd5b6106e3826125d7565b634e487b7160e01b5f52602160045260245ffd5b5f60208284031215612622575f80fd5b5051919050565b60068110612639576126396125fe565b9052565b5f815180845260208085019450602084015f5b838110156126a6578151612665888251612629565b838101516001600160a01b03168885015260408082015190890152606080820151908901526080908101519088015260a09096019590820190600101612650565b509495945050505050565b5f815180845260208085019450602084015f5b838110156126a65781516126d9888251612629565b808401516001600160a01b0390811689860152604080830151908a0152606080830151908a0152608080830151908a015260a091820151169088015260c090960195908201906001016126c4565b60058110612639576126396125fe565b602081526127516020820183516001600160a01b03169052565b5f602083015161276c60408401826001600160a01b03169052565b50604083015161016080606085015261278961018085018361263d565b91506060850151601f198584030160808601526127a683826126b1565b92505060808501516127bb60a0860182612727565b5060a085015160c085015260c085015160e085015260e0850151610100818187015280870151915050610120818187015280870151915050610140818187015280870151838701525050508091505092915050565b5f808335601e19843603018112612825575f80fd5b83016020810192503590506001600160401b03811115612843575f80fd5b60a081023603821315611d69575f80fd5b8183525f60208085019450825f5b858110156126a65761287c876128778461247b565b612629565b8282013561288981612012565b6001600160a01b03168388015260408281013590880152606080830135908801526080808301359088015260a09687019690910190600101612862565b5f808335601e198436030181126128db575f80fd5b83016020810192503590506001600160401b038111156128f9575f80fd5b60c081023603821315611d69575f80fd5b8183525f60208085019450825f5b858110156126a65761292d876128778461247b565b8282013561293a81612012565b6001600160a01b039081168885015260408381013590890152606080840135908901526080808401359089015260a0908382013561297781612012565b169088015260c0968701969190910190600101612918565b80356001600160781b0381168114612031575f80fd5b5f808335601e198436030181126129ba575f80fd5b83016020810192503590506001600160401b038111156129d8575f80fd5b803603821315611d69575f80fd5b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b8183525f6001600160fb1b03831115612a25575f80fd5b8260051b80836020870137939093016020019392505050565b8183526020808401935f91600585811b8301820185855b88811015612b1657858303601f19018a52813536899003609e19018112612a7a575f80fd5b88018035845260a08682013560028110612a92575f80fd5b85880152604082810135908601526060808301359086015260808083013536849003601e19018112612ac2575f80fd5b9092018781019290356001600160401b03811115612ade575f80fd5b80881b3603841315612aee575f80fd5b8282880152612b008388018286612a0e565b9d89019d96505050928601925050600101612a55565b509098975050505050505050565b608081525f610120873561015e19893603018112612b40575f80fd5b60a060808501528801612b65828501612b5883612026565b6001600160a01b03169052565b612b7160208201612026565b610140612b88818701836001600160a01b03169052565b612b956040840184612810565b610160888101529250612bad61028088018483612854565b925050612bbd60608401846128c6565b87840361011f1901610180890152612bd684828461290a565b93505050612be6608084016125d7565b612bf46101a0880182612727565b5060a08301356101c087015260c08301356101e087015260e0830135610200870152610100808401356102208801528484013561024088015281840135610260880152612c4360208d0161298f565b6001600160781b03811660a08901529450612c6060408d0161298f565b6001600160781b03811660c08901529450612c7e60608d018d6129a5565b95509350607f199150818784030160e0880152612c9c8386866129e6565b9450612cab60808d018d6129a5565b945092508187860301818801525050612cc58383836129e6565b925050508281036020840152612cdc818789612a3e565b9150508360408301526112ca60608301846001600160a01b03169052565b5f825161242d818460208701611f9c565b634e487b7160e01b5f52601160045260245ffd5b5f82612d3957634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b8082018082111561061b5761061b612d0b565b5f8451612dc1818460208901611f9c565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081525f8351612e25816017850160208801611f9c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351612e56816028840160208801611f9c565b01602801949350505050565b828152604060208201525f610aaa6040830184611fbe565b808202811582820484141761061b5761061b612d0b565b5f81612e9f57612e9f612d0b565b505f19019056fe9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000818000a", + "deployedBytecode": "0x6080604052600436106101db575f3560e01c80638da5cb5b116100fd578063c4d66de811610092578063daea85c511610062578063daea85c51461055e578063e7acab241461057d578063f2fde38b1461059c578063ffa1ad74146105bb575f80fd5b8063c4d66de8146104e1578063d539139314610500578063d547741f14610520578063d9caed121461053f575f80fd5b8063a217fddf116100cd578063a217fddf14610452578063a3f4df7e14610465578063a4247400146104a3578063aa271e1a146104c2575f80fd5b80638da5cb5b146103d957806391d1485414610400578063983b2d561461041f578063986502751461043e575f80fd5b80635c975abb11610173578063715018a611610143578063715018a61461037f57806371e2a6571461039357806381c81d35146103b25780638456cb59146103c5575f80fd5b80635c975abb146103165780635fc1964f1461032e578063634486da1461034d5780636ccbae5f14610360575f80fd5b80633092afd5116101ae5780633092afd51461029c57806336568abe146102bb5780633f4ba83a146102da578063572b6c05146102ee575f80fd5b806301ffc9a7146101df5780631bf7e13e14610213578063248a9ca31461023f5780632f2ff15d1461027b575b5f80fd5b3480156101ea575f80fd5b506101fe6101f9366004611ee0565b6105eb565b60405190151581526020015b60405180910390f35b34801561021e575f80fd5b5061023261022d366004611f07565b610621565b60405161020a9190611fe9565b34801561024a575f80fd5b5061026d610259366004611ffb565b5f90815260fb602052604090206001015490565b60405190815260200161020a565b348015610286575f80fd5b5061029a610295366004612036565b6106ea565b005b3480156102a7575f80fd5b5061029a6102b6366004612064565b610713565b3480156102c6575f80fd5b5061029a6102d5366004612036565b610727565b3480156102e5575f80fd5b5061029a6107ba565b3480156102f9575f80fd5b506101fe610308366004612064565b6001600160a01b0316301490565b348015610321575f80fd5b5061012d5460ff166101fe565b348015610339575f80fd5b5061029a6103483660046120eb565b6107d4565b61029a61035b366004612064565b610811565b34801561036b575f80fd5b5061026d61037a366004611ffb565b6108d1565b34801561038a575f80fd5b5061029a61092a565b34801561039e575f80fd5b5061029a6103ad3660046120eb565b61093b565b61029a6103c0366004612064565b610978565b3480156103d0575f80fd5b5061029a6109f5565b3480156103e4575f80fd5b506097546040516001600160a01b03909116815260200161020a565b34801561040b575f80fd5b506101fe61041a366004612036565b610a0d565b34801561042a575f80fd5b5061029a610439366004612064565b610a37565b348015610449575f80fd5b5061029a610a48565b34801561045d575f80fd5b5061026d5f81565b348015610470575f80fd5b506102326040518060400160405280601381526020017229b2b0b837b93a10283937bc3c90213abcb2b960691b81525081565b3480156104ae575f80fd5b506101fe6104bd366004611f07565b610a61565b3480156104cd575f80fd5b506101fe6104dc366004612064565b610ab2565b3480156104ec575f80fd5b5061029a6104fb366004612064565b610aca565b34801561050b575f80fd5b5061026d5f80516020612ea783398151915281565b34801561052b575f80fd5b5061029a61053a366004612036565b610c21565b34801561054a575f80fd5b5061029a61055936600461218b565b610c45565b348015610569575f80fd5b5061029a610578366004612064565b610cf7565b348015610588575f80fd5b506101fe6105973660046121c9565b610dac565b3480156105a7575f80fd5b5061029a6105b6366004612064565b6111db565b3480156105c6575f80fd5b5061023260405180604001604052806005815260200164302e302e3160d81b81525081565b5f6001600160e01b03198216637965db0b60e01b148061061b57506301ffc9a760e01b6001600160e01b03198316145b92915050565b60605f5a9050610632858585610a61565b61064f57604051638baa579f60e01b815260040160405180910390fd5b6106df61065f6020870187612064565b3060408801358461067360608b018b61227b565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f920191909152506111f692505050565b9150505b9392505050565b5f82815260fb6020526040902060010154610704816112d4565b61070e83836112e5565b505050565b61071b61136b565b610724816113e4565b50565b61072f6113fb565b6001600160a01b0316816001600160a01b0316146107ac5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6107b68282611409565b5050565b6107c261136b565b6107ca61148d565b6107d26114d7565b565b6107dc61136b565b5f5b81518110156107b6576108098282815181106107fc576107fc6122bd565b60200260200101516113e4565b6001016107de565b61081c6104dc6113fb565b6108385760405162461bcd60e51b81526004016107a3906122d1565b6001600160a01b03811661088e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016107a3565b61089781611530565b61089f610a48565b6040516001600160a01b038216903480156108fc02915f818181858888f193505050501580156107b6573d5f803e3d5ffd5b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f90610923906060016040516020818303038152906040528051906020012090565b5492915050565b61093261136b565b6107d25f611547565b61094361136b565b5f5b81518110156107b657610970828281518110610963576109636122bd565b6020026020010151611530565b600101610945565b6109836104dc6113fb565b61099f5760405162461bcd60e51b81526004016107a3906122d1565b6001600160a01b0381166108975760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016107a3565b6109fd61136b565b610a05611598565b6107d26115df565b5f91825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610a3f61136b565b61072481611530565b6107d25f80516020612ea78339815191526102d56113fb565b5f610aaa610a6e85612306565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061161e92505050565b949350505050565b5f61061b5f80516020612ea783398151915283610a0d565b5f54610100900460ff1615808015610ae857505f54600160ff909116105b80610b015750303b158015610b0157505f5460ff166001145b610b645760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107a3565b5f805460ff191660011790558015610b85575f805461ff0019166101001790555b61015f80546001600160a01b0319166001600160a01b038416179055610ba9611759565b610bb1611786565b610bb9611786565b610bc1611786565b610bc96117ac565b610bd16117e2565b610bd9611819565b80156107b6575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b5f82815260fb6020526040902060010154610c3b816112d4565b61070e8383611409565b610c4d61136b565b600260335403610c6f5760405162461bcd60e51b81526004016107a3906123c2565b6002603355610c7c611598565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af1158015610cc8573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cec91906123f9565b505060016033555050565b610cff61136b565b600260335403610d215760405162461bcd60e51b81526004016107a3906123c2565b6002603355610d2e611598565b61015f5460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529082169063095ea7b3906044016020604051808303815f875af1158015610d7f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610da391906123f9565b50506001603355565b5f610db86104dc6113fb565b610dd45760405162461bcd60e51b81526004016107a3906122d1565b600260335403610df65760405162461bcd60e51b81526004016107a3906123c2565b6002603355610e03611598565b6001600160a01b038216610e2a576040516311d000e160e31b815260040160405180910390fd5b30610e358780612418565b610e46906040810190602001612064565b6001600160a01b031614610e6d57604051639d3c586b60e01b815260040160405180910390fd5b610e75611e67565b610e7f8780612418565b610e8d906020810190612064565b6001600160a01b03168152610ea28780612418565b610eb3906040810190602001612064565b6001600160a01b03166020820152610ecb8780612418565b610ed9906040810190612437565b808060200260200160405190810160405280939291908181526020015f905b82821015610f2457610f1560a08302860136819003810190612489565b81526020019060010190610ef8565b50505050506040820152610f388780612418565b610f46906060810190612506565b808060200260200160405190810160405280939291908181526020015f905b82821015610f9157610f8260c0830286013681900381019061254a565b81526020019060010190610f65565b50505050506060820152610fa58780612418565b610fb69060a08101906080016125e5565b81608001906004811115610fcc57610fcc6125fe565b90816004811115610fdf57610fdf6125fe565b905250610fec8780612418565b60a090810135908201526110008780612418565b60c090810135908201526110148780612418565b60e090810135908201526110288780612418565b610100908101359082015261103d8780612418565b610120908101359082015261015f54815160405163f07ec37360e01b81526001600160a01b03918216600482015291169063f07ec37390602401602060405180830381865afa158015611092573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110b69190612612565b61014082015261015f546040516379df72bd60e01b8152611133916001600160a01b0316906379df72bd906110ef908590600401612737565b602060405180830381865afa15801561110a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061112e9190612612565b61184c565b61015f546040516339eb2ac960e21b81526001600160a01b039091169063e7acab249061116c908a908a908a908a908a90600401612b24565b6020604051808303815f875af1158015611188573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111ac91906123f9565b9150816111cc57604051636725093760e01b815260040160405180910390fd5b50600160335595945050505050565b6111e361136b565b6111ec81611865565b6107245f826118db565b6060611201856118e5565b5f80876001600160a01b03168661121a8b8a898961194a565b6040516112279190612cfa565b5f604051808303815f8787f1925050503d805f8114611261576040519150601f19603f3d011682016040523d82523d5f602084013e611266565b606091505b509092509050611277603f87612d1f565b5a1161128557611285612d3e565b6112c582826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061197a565b925050505b9695505050505050565b610724816112e06113fb565b6119b3565b6112ef8282610a0d565b6107b6575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191660011790556113276113fb565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6113736113fb565b6001600160a01b031661138e6097546001600160a01b031690565b6001600160a01b0316146107d25760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107a3565b6107245f80516020612ea783398151915282610c21565b5f611404611a17565b905090565b6114138282610a0d565b156107b6575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191690556114496113fb565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b61012d5460ff166107d25760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b60448201526064016107a3565b6114df61148d565b61012d805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6115136113fb565b6040516001600160a01b03909116815260200160405180910390a1565b6107245f80516020612ea7833981519152826118db565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b61012d5460ff16156107d25760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b60448201526064016107a3565b6115e7611598565b61012d805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586115136113fb565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015611662573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116869190612612565b90505f6117338660600151805190602001208688602001516040516020016116d39392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156112ca575085516112ca906001600160a01b03168286611a34565b5f54610100900460ff1661177f5760405162461bcd60e51b81526004016107a390612d52565b6001603355565b5f54610100900460ff166107d25760405162461bcd60e51b81526004016107a390612d52565b5f54610100900460ff166117d25760405162461bcd60e51b81526004016107a390612d52565b6107d26117dd6113fb565b611547565b5f54610100900460ff166118085760405162461bcd60e51b81526004016107a390612d52565b6107d25f6118146113fb565b6118db565b5f54610100900460ff1661183f5760405162461bcd60e51b81526004016107a390612d52565b61012d805460ff19169055565b30330361185c5761072481611b6f565b610724816118e5565b61186d61136b565b6001600160a01b0381166118d25760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107a3565b61072481611547565b6107b682826112e5565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f906060016040516020818303038152906040528051906020012090506119398190565b54611945906001612d9d565b905550565b606082858560405160200161196193929190612db0565b6040516020818303038152906040529050949350505050565b606083156119895750816106e3565b8251156119995782518084602001fd5b8160405162461bcd60e51b81526004016107a39190611fe9565b6119bd8282610a0d565b6107b6576119d5816001600160a01b03166014611b99565b6119e0836020611b99565b6040516020016119f1929190612dee565b60408051601f198184030181529082905262461bcd60e51b82526107a391600401611fe9565b5f303303611a2c575060331936013560601c90565b503390565b90565b5f805f611a418585611d2e565b90925090505f816004811115611a5957611a596125fe565b148015611a775750856001600160a01b0316826001600160a01b0316145b15611a87576001925050506106e3565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401611aae929190612e62565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051611aec9190612cfa565b5f60405180830381855afa9150503d805f8114611b24576040519150601f19603f3d011682016040523d82523d5f602084013e611b29565b606091505b5091509150818015611b3c575080516020145b8015611b6357508051630b135d3f60e11b90611b619083016020908101908401612612565b145b98975050505050505050565b611b77611d70565b811461072457604051635637b6af60e11b8152600481018290526024016107a3565b60605f611ba7836002612e7a565b611bb2906002612d9d565b6001600160401b03811115611bc957611bc961207f565b6040519080825280601f01601f191660200182016040528015611bf3576020820181803683370190505b509050600360fc1b815f81518110611c0d57611c0d6122bd565b60200101906001600160f81b03191690815f1a905350600f60fb1b81600181518110611c3b57611c3b6122bd565b60200101906001600160f81b03191690815f1a9053505f611c5d846002612e7a565b611c68906001612d9d565b90505b6001811115611cdf576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611c9c57611c9c6122bd565b1a60f81b828281518110611cb257611cb26122bd565b60200101906001600160f81b03191690815f1a90535060049490941c93611cd881612e91565b9050611c6b565b5083156106e35760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016107a3565b5f808251604103611d62576020830151604084015160608501515f1a611d5687828585611d82565b94509450505050611d69565b505f905060025b9250929050565b5f303303611a315750601f1936013590565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115611db757505f90506003611e5e565b8460ff16601b14158015611dcf57508460ff16601c14155b15611ddf57505f90506004611e5e565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015611e30573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b038116611e58575f60019250925050611e5e565b91505f90505b94509492505050565b6040518061016001604052805f6001600160a01b031681526020015f6001600160a01b0316815260200160608152602001606081526020015f6004811115611eb157611eb16125fe565b81525f6020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b5f60208284031215611ef0575f80fd5b81356001600160e01b0319811681146106e3575f80fd5b5f805f60408486031215611f19575f80fd5b83356001600160401b0380821115611f2f575f80fd5b9085019060808288031215611f42575f80fd5b90935060208501359080821115611f57575f80fd5b818601915086601f830112611f6a575f80fd5b813581811115611f78575f80fd5b876020828501011115611f89575f80fd5b6020830194508093505050509250925092565b5f5b83811015611fb6578181015183820152602001611f9e565b50505f910152565b5f8151808452611fd5816020860160208601611f9c565b601f01601f19169290920160200192915050565b602081525f6106e36020830184611fbe565b5f6020828403121561200b575f80fd5b5035919050565b6001600160a01b0381168114610724575f80fd5b803561203181612012565b919050565b5f8060408385031215612047575f80fd5b82359150602083013561205981612012565b809150509250929050565b5f60208284031215612074575f80fd5b81356106e381612012565b634e487b7160e01b5f52604160045260245ffd5b604051608081016001600160401b03811182821017156120b5576120b561207f565b60405290565b604051601f8201601f191681016001600160401b03811182821017156120e3576120e361207f565b604052919050565b5f60208083850312156120fc575f80fd5b82356001600160401b0380821115612112575f80fd5b818501915085601f830112612125575f80fd5b8135818111156121375761213761207f565b8060051b91506121488483016120bb565b8181529183018401918481019088841115612161575f80fd5b938501935b83851015611b63578435925061217b83612012565b8282529385019390850190612166565b5f805f6060848603121561219d575f80fd5b83356121a881612012565b925060208401356121b881612012565b929592945050506040919091013590565b5f805f805f608086880312156121dd575f80fd5b85356001600160401b03808211156121f3575f80fd5b9087019060a0828a031215612206575f80fd5b9095506020870135908082111561221b575f80fd5b818801915088601f83011261222e575f80fd5b81358181111561223c575f80fd5b8960208260051b8501011115612250575f80fd5b6020830196508095505050506040860135915061226f60608701612026565b90509295509295909350565b5f808335601e19843603018112612290575f80fd5b8301803591506001600160401b038211156122a9575f80fd5b602001915036819003821315611d69575f80fd5b634e487b7160e01b5f52603260045260245ffd5b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b5f60808236031215612316575f80fd5b61231e612093565b823561232981612012565b8152602083810135818301526040808501359083015260608401356001600160401b0380821115612358575f80fd5b9085019036601f83011261236a575f80fd5b81358181111561237c5761237c61207f565b61238e601f8201601f191685016120bb565b915080825236848285010111156123a3575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b5f60208284031215612409575f80fd5b815180151581146106e3575f80fd5b5f823561015e1983360301811261242d575f80fd5b9190910192915050565b5f808335601e1984360301811261244c575f80fd5b8301803591506001600160401b03821115612465575f80fd5b602001915060a081023603821315611d69575f80fd5b803560068110612031575f80fd5b5f60a08284031215612499575f80fd5b60405160a081018181106001600160401b03821117156124bb576124bb61207f565b6040526124c78361247b565b815260208301356124d781612012565b806020830152506040830135604082015260608301356060820152608083013560808201528091505092915050565b5f808335601e1984360301811261251b575f80fd5b8301803591506001600160401b03821115612534575f80fd5b602001915060c081023603821315611d69575f80fd5b5f60c0828403121561255a575f80fd5b60405160c081018181106001600160401b038211171561257c5761257c61207f565b6040526125888361247b565b8152602083013561259881612012565b8060208301525060408301356040820152606083013560608201526080830135608082015260a08301356125cb81612012565b60a08201529392505050565b803560058110612031575f80fd5b5f602082840312156125f5575f80fd5b6106e3826125d7565b634e487b7160e01b5f52602160045260245ffd5b5f60208284031215612622575f80fd5b5051919050565b60068110612639576126396125fe565b9052565b5f815180845260208085019450602084015f5b838110156126a6578151612665888251612629565b838101516001600160a01b03168885015260408082015190890152606080820151908901526080908101519088015260a09096019590820190600101612650565b509495945050505050565b5f815180845260208085019450602084015f5b838110156126a65781516126d9888251612629565b808401516001600160a01b0390811689860152604080830151908a0152606080830151908a0152608080830151908a015260a091820151169088015260c090960195908201906001016126c4565b60058110612639576126396125fe565b602081526127516020820183516001600160a01b03169052565b5f602083015161276c60408401826001600160a01b03169052565b50604083015161016080606085015261278961018085018361263d565b91506060850151601f198584030160808601526127a683826126b1565b92505060808501516127bb60a0860182612727565b5060a085015160c085015260c085015160e085015260e0850151610100818187015280870151915050610120818187015280870151915050610140818187015280870151838701525050508091505092915050565b5f808335601e19843603018112612825575f80fd5b83016020810192503590506001600160401b03811115612843575f80fd5b60a081023603821315611d69575f80fd5b8183525f60208085019450825f5b858110156126a65761287c876128778461247b565b612629565b8282013561288981612012565b6001600160a01b03168388015260408281013590880152606080830135908801526080808301359088015260a09687019690910190600101612862565b5f808335601e198436030181126128db575f80fd5b83016020810192503590506001600160401b038111156128f9575f80fd5b60c081023603821315611d69575f80fd5b8183525f60208085019450825f5b858110156126a65761292d876128778461247b565b8282013561293a81612012565b6001600160a01b039081168885015260408381013590890152606080840135908901526080808401359089015260a0908382013561297781612012565b169088015260c0968701969190910190600101612918565b80356001600160781b0381168114612031575f80fd5b5f808335601e198436030181126129ba575f80fd5b83016020810192503590506001600160401b038111156129d8575f80fd5b803603821315611d69575f80fd5b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b8183525f6001600160fb1b03831115612a25575f80fd5b8260051b80836020870137939093016020019392505050565b8183526020808401935f91600585811b8301820185855b88811015612b1657858303601f19018a52813536899003609e19018112612a7a575f80fd5b88018035845260a08682013560028110612a92575f80fd5b85880152604082810135908601526060808301359086015260808083013536849003601e19018112612ac2575f80fd5b9092018781019290356001600160401b03811115612ade575f80fd5b80881b3603841315612aee575f80fd5b8282880152612b008388018286612a0e565b9d89019d96505050928601925050600101612a55565b509098975050505050505050565b608081525f610120873561015e19893603018112612b40575f80fd5b60a060808501528801612b65828501612b5883612026565b6001600160a01b03169052565b612b7160208201612026565b610140612b88818701836001600160a01b03169052565b612b956040840184612810565b610160888101529250612bad61028088018483612854565b925050612bbd60608401846128c6565b87840361011f1901610180890152612bd684828461290a565b93505050612be6608084016125d7565b612bf46101a0880182612727565b5060a08301356101c087015260c08301356101e087015260e0830135610200870152610100808401356102208801528484013561024088015281840135610260880152612c4360208d0161298f565b6001600160781b03811660a08901529450612c6060408d0161298f565b6001600160781b03811660c08901529450612c7e60608d018d6129a5565b95509350607f199150818784030160e0880152612c9c8386866129e6565b9450612cab60808d018d6129a5565b945092508187860301818801525050612cc58383836129e6565b925050508281036020840152612cdc818789612a3e565b9150508360408301526112ca60608301846001600160a01b03169052565b5f825161242d818460208701611f9c565b634e487b7160e01b5f52601160045260245ffd5b5f82612d3957634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b8082018082111561061b5761061b612d0b565b5f8451612dc1818460208901611f9c565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081525f8351612e25816017850160208801611f9c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351612e56816028840160208801611f9c565b01602801949350505050565b828152604060208201525f610aaa6040830184611fbe565b808202811582820484141761061b5761061b612d0b565b5f81612e9f57612e9f612d0b565b505f19019056fe9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000818000a", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/artifacts/UNSRegistry.json b/artifacts/UNSRegistry.json index 7b08eb18..821c1fde 100644 --- a/artifacts/UNSRegistry.json +++ b/artifacts/UNSRegistry.json @@ -1539,8 +1539,8 @@ "type": "function" } ], - "bytecode": "0x608060405234801561000f575f80fd5b506150e28061001d5f395ff3fe608060405234801561000f575f80fd5b506004361061039e575f3560e01c80637e37479e116101ea578063ba5d40b711610114578063e985e9c5116100a9578063f5c1f76e11610079578063f5c1f76e146108c2578063f7df5c60146108d5578063f8c8765e146108e8578063ffa1ad74146108fb575f80fd5b8063e985e9c514610866578063ebf0c717146108a1578063ec129eea146108a7578063f25eb5c1146108ba575f80fd5b8063c87b56dd116100e4578063c87b56dd1461081a578063ce92b33e1461082d578063cf2c52cb14610840578063d9548e5314610853575f80fd5b8063ba5d40b7146107a0578063baef73e9146107b3578063bb5b27e1146107f4578063bebec6b414610807575f80fd5b8063a22cb4651161018a578063ac9650d81161015a578063ac9650d814610739578063b3f9e4cb14610759578063b85afd281461076c578063b88d4fde1461078d575f80fd5b8063a22cb465146106d4578063a3f4df7e146106e7578063a424740014610713578063ab3b87fe14610726575f80fd5b80639508b1c4116101c55780639508b1c41461069e5780639559c0bd146106b157806395d89b41146106b957806399e0dd7c146106c1575f80fd5b80637e37479e146106655780637eee288d1461067857806394d008ef1461068b575f80fd5b806342842e0e116102cb578063509602391161026b578063663f7b2a1161023b578063663f7b2a146105fe578063672b9f81146106115780636ccbae5f1461063257806370a0823114610652575f80fd5b806350960239146105a9578063572b6c05146105bc5780636352211e146105d8578063638e5c78146105eb575f80fd5b806347c81699116102a657806347c816991461055d5780634a72584d146105705780634f558e791461058357806350382c1a14610596575f80fd5b806342842e0e1461052457806342966c6814610537578063430c20811461054a575f80fd5b80631bf7e13e1161034157806327f189751161031157806327f18975146104d8578063310bd74b146104eb5780633f72ec6e146104fe57806340c10f1914610511575f80fd5b80631bf7e13e1461047e5780631f71be061461049157806323b872dd146104a4578063276fabb1146104b7575f80fd5b8063095ea7b31161037c578063095ea7b31461040a578063150b7a021461041f5780631bd8cc1a1461044b5780631be5e7ed1461046b575f80fd5b806301ffc9a7146103a257806306fdde03146103ca578063081812fc146103df575b5f80fd5b6103b56103b0366004613dca565b61091f565b60405190151581526020015b60405180910390f35b6103d261092f565b6040516103c19190613e32565b6103f26103ed366004613e44565b6109bf565b6040516001600160a01b0390911681526020016103c1565b61041d610418366004613e6f565b6109e4565b005b61043261042d366004613ed6565b6109fd565b6040516001600160e01b031990911681526020016103c1565b61045e610459366004613f83565b610b51565b6040516103c19190614022565b6103d2610479366004614034565b610c3a565b6103d261048c366004614067565b610c84565b61041d61049f3660046140e0565b610d8c565b61041d6104b2366004614194565b610e21565b6104ca6104c53660046141d2565b610e74565b6040519081526020016103c1565b61041d6104e6366004614210565b610e82565b61041d6104f9366004613e44565b610eca565b61041d61050c36600461427d565b610f05565b61041d61051f366004613e6f565b611006565b61041d610532366004614194565b611053565b61041d610545366004613e44565b61106d565b6103b5610558366004613e6f565b6110b1565b61041d61056b3660046142a4565b6110bc565b61041d61057e3660046142ff565b6110fb565b6103b5610591366004613e44565b611141565b61041d6105a43660046143fc565b61115f565b61041d6105b736600461442d565b611194565b6103b56105ca36600461442d565b6001600160a01b0316301490565b6103f26105e6366004613e44565b6111f3565b61041d6105f9366004613e44565b61120f565b61041d61060c3660046144de565b61125a565b61062461061f366004614522565b6112fa565b6040516103c1929190614542565b6104ca610640366004613e44565b5f908152610100602052604090205490565b6104ca61066036600461442d565b611312565b6104ca61067336600461442d565b611396565b61041d610686366004613e6f565b6113c6565b61041d610699366004614566565b61141d565b61041d6106ac3660046145bd565b61146c565b6104ca601481565b6103d26114f3565b61041d6106cf366004614658565b611502565b61041d6106e236600461468a565b611589565b6103d26040518060400160405280600d81526020016c554e533a20526567697374727960981b81525081565b6103b5610721366004614067565b61159b565b61041d610734366004613e6f565b6115e4565b61074c6107473660046141d2565b611629565b6040516103c191906146b4565b6103f2610767366004613e44565b6116f7565b61077f61077a366004613f83565b61171f565b6040516103c1929190614716565b61041d61079b36600461473a565b611835565b61041d6107ae3660046140e0565b61187c565b6107dc6107c1366004613e44565b5f90815261013960205260409020546001600160401b031690565b6040516001600160401b0390911681526020016103c1565b6103d2610802366004613e44565b611904565b6103d261081536600461442d565b6119a3565b6103d2610828366004613e44565b611a69565b61041d61083b366004614210565b611acc565b61041d61084e3660046147a1565b611b0b565b6103b5610861366004613e44565b611bcd565b6103b56108743660046147e4565b6001600160a01b039182165f908152606a6020908152604080832093909416825291909152205460ff1690565b5f6104ca565b61041d6108b5366004614210565b611c0e565b61041d611c4d565b61045e6108d03660046141d2565b611cd2565b61041d6108e336600461481b565b611d79565b61041d6108f6366004614849565b611e0a565b6103d260405180604001604052806005815260200164302e392e3160d81b81525081565b5f61092982611fda565b92915050565b60606065805461093e906148a2565b80601f016020809104026020016040519081016040528092919081815260200182805461096a906148a2565b80156109b55780601f1061098c576101008083540402835291602001916109b5565b820191905f5260205f20905b81548152906001019060200180831161099857829003601f168201915b5050505050905090565b5f6109c982612029565b505f908152606960205260409020546001600160a01b031690565b806109ee81612087565b6109f883836120ed565b505050565b5f7f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378546001600160a01b0316610a3161220e565b6001600160a01b031603610aed57610a4761220e565b6001600160a01b03166342966c68856040518263ffffffff1660e01b8152600401610a7491815260200190565b5f604051808303815f87803b158015610a8b575f80fd5b505af1158015610a9d573d5f803e3d5ffd5b505050821580159150610ab75750610ab7828401846148d4565b15610ad557610ac6308561221c565b610ad08585612366565b610adf565b610adf858561221c565b50630a85bd0160e11b610b48565b60405162461bcd60e51b815260206004820152602560248201527f52656769737472793a204552433732315f524543454956494e475f50524f4849604482015264109255115160da1b60648201526084015b60405180910390fd5b95945050505050565b6060826001600160401b03811115610b6b57610b6b61434d565b604051908082528060200260200182016040528015610b9e57816020015b6060815260200190600190039081610b895790505b5090505f5b83811015610c3257610c0d858583818110610bc057610bc06148ed565b9050602002810190610bd29190614901565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525087925061240a915050565b828281518110610c1f57610c1f6148ed565b6020908102919091010152600101610ba3565b509392505050565b6060610c7c84848080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525086925061240a915050565b949350505050565b60605f5a9050610c9585858561159b565b610cf15760405162461bcd60e51b815260206004820152602760248201527f554e535265676973747279466f727761726465723a205349474e41545552455f6044820152661253959053125160ca1b6064820152608401610b3f565b610d81610d01602087018761442d565b30604088013584610d1560608b018b614901565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f9201919091525061243e92505050565b9150505b9392505050565b610134546001600160a01b0316610da161220e565b6001600160a01b031614610dc75760405162461bcd60e51b8152600401610b3f90614943565b5f610dda610dd5888a61498a565b61251a565b509050610de789826113c6565b610df48686868685612571565b8115610e1657610e168982610e11610e0c8b8d61498a565b6125d4565b612648565b505050505050505050565b80610e33610e2d61220e565b82612689565b610e4f5760405162461bcd60e51b8152600401610b3f90614996565b81610e5981612087565b610e6283612718565b610e6d858585612784565b5050505050565b5f610c32610dd5838561498a565b80610e8e610e2d61220e565b610eaa5760405162461bcd60e51b8152600401610b3f90614996565b81610eb481612087565b610ec18787878787612927565b50505050505050565b80610ed6610e2d61220e565b610ef25760405162461bcd60e51b8152600401610b3f90614996565b81610efc81612087565b6109f883612718565b610134546001600160a01b0316610f1a61220e565b6001600160a01b031614610f405760405162461bcd60e51b8152600401610b3f90614943565b610f4981612029565b42826001600160401b031611610fa15760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a204558504952595f494e5f5041535400000000000000006044820152606401610b3f565b5f8181526101396020908152604091829020805467ffffffffffffffff19166001600160401b038616908117909155915191825282917f93feabb03ab84f47fc85bf0c298103fca21d8c8bc376eae0c1e1c56b9d4f7789910160405180910390a25050565b61100e61297f565b6001600160a01b031661101f61220e565b6001600160a01b0316146110455760405162461bcd60e51b8152600401610b3f906149df565b61104f828261221c565b5050565b6109f883838360405180602001604052805f815250611835565b80611079610e2d61220e565b6110955760405162461bcd60e51b8152600401610b3f90614996565b8161109f81612087565b6110a883612718565b6109f883612a79565b5f610d858383612689565b806110c8610e2d61220e565b6110e45760405162461bcd60e51b8152600401610b3f90614996565b816110ee81612087565b610ec18787878787612b1b565b80611107610e2d61220e565b6111235760405162461bcd60e51b8152600401610b3f90614996565b8161112d81612087565b61113986868686612bf6565b505050505050565b5f818152606760205260408120546001600160a01b03161515610929565b611191816040516020016111739190614a21565b604051602081830303815290604052805190602001205f1c82612c95565b50565b610134546001600160a01b03166111a961220e565b6001600160a01b0316146111cf5760405162461bcd60e51b8152600401610b3f90614943565b6001600160a01b03165f90815261013660205260409020805460ff19166001179055565b5f6111fd82611bcd565b61120a5761092982612cb9565b919050565b8061121b610e2d61220e565b6112375760405162461bcd60e51b8152600401610b3f90614996565b61124961124261220e565b3084612784565b61104f61125461220e565b83612366565b5f6112648261251a565b50905061126f61220e565b6001600160a01b0316611281826111f3565b6001600160a01b0316146112d75760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b3f565b6112e081612087565b61104f6112eb61220e565b826112f5856125d4565b612d18565b6060806113078484612d9b565b909590945092505050565b5f6001600160a01b03821661137b5760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b6064820152608401610b3f565b506001600160a01b03165f9081526068602052604090205490565b6001600160a01b0381165f90815261013560205260408120546113b881612dbc565b6113c0578091505b50919050565b610134546001600160a01b03166113db61220e565b6001600160a01b0316146114015760405162461bcd60e51b8152600401610b3f90614943565b61140a81612718565b61104f61141682612cb9565b8383612784565b61142561297f565b6001600160a01b031661143661220e565b6001600160a01b03161461145c5760405162461bcd60e51b8152600401610b3f906149df565b611466848461221c565b50505050565b6114768787612e03565b61147e61220e565b6001600160a01b0316611490866111f3565b6001600160a01b0316146114e65760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b3f565b610ec18484848489612571565b60606066805461093e906148a2565b610134546001600160a01b031661151761220e565b6001600160a01b03161461153d5760405162461bcd60e51b8152600401610b3f90614943565b61013361154b828483614a80565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b828260405161157d929190614b61565b60405180910390a15050565b61104f61159461220e565b8383612e6c565b5f610c7c6115a885614b74565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250612f3992505050565b806115f0610e2d61220e565b61160c5760405162461bcd60e51b8152600401610b3f90614996565b8161161681612087565b61146661162284612cb9565b8585612784565b60605f6116368385614bfb565b90503033036116ee575f5b838110156116ec576116c761165461220e565b61165c61307e565b87878581811061166e5761166e6148ed565b90506020028101906116809190614901565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92018290525060408051602081019091529081529250613091915050565b8282815181106116d9576116d96148ed565b6020908102919091010152600101611641565b505b610c7c816130c1565b5f818152606760205260408120546001600160a01b0316611718575f610929565b3092915050565b606080836001600160401b0381111561173a5761173a61434d565b60405190808252806020026020018201604052801561176d57816020015b60608152602001906001900390816117585790505b509150836001600160401b038111156117885761178861434d565b6040519080825280602002602001820160405280156117bb57816020015b60608152602001906001900390816117a65790505b5090505f5b8481101561182c576117ea8686838181106117dd576117dd6148ed565b9050602002013585612d9b565b8483815181106117fc576117fc6148ed565b60200260200101848481518110611815576118156148ed565b6020908102919091010191909152526001016117c0565b50935093915050565b81611841610e2d61220e565b61185d5760405162461bcd60e51b8152600401610b3f90614996565b8261186781612087565b61187084612718565b611139868686866131dc565b610134546001600160a01b031661189161220e565b6001600160a01b0316146118b75760405162461bcd60e51b8152600401610b3f90614943565b5f806118c6610dd5898b61498a565b915091506118d38161320f565b6118eb8a836118e5610e0c8c8e61498a565b8661326e565b6118f88787878786612571565b50505050505050505050565b5f81815260c960205260409020805460609190611920906148a2565b80601f016020809104026020016040519081016040528092919081815260200182805461194c906148a2565b80156119975780601f1061196e57610100808354040283529160200191611997565b820191905f5260205f20905b81548152906001019060200180831161197a57829003601f168201915b50505050509050919050565b6001600160a01b0381165f90815261013560205260409020546060906119c881612dbc565b6113c0575f8181526101386020526040902080546119e5906148a2565b80601f0160208091040260200160405190810160405280929190818152602001828054611a11906148a2565b8015611a5c5780601f10611a3357610100808354040283529160200191611a5c565b820191905f5260205f20905b815481529060010190602001808311611a3f57829003601f168201915b5050505050915050919050565b6060611a7482612029565b5f611a7d6132c1565b90505f815111611a9b5760405180602001604052805f815250610d85565b80611aa5846132d1565b604051602001611ab6929190614c6a565b6040516020818303038152906040529392505050565b80611ad8610e2d61220e565b611af45760405162461bcd60e51b8152600401610b3f90614996565b81611afe81612087565b610ec18787878787612571565b7f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87546001600160a01b0316611b3e61220e565b6001600160a01b031614611b645760405162461bcd60e51b8152600401610b3f906149df565b6020819003611b86575f611b7a82840184613e44565b9050611466848261221c565b5f611b9382840184614c98565b80519091505f5b8181101561113957611bc586848381518110611bb857611bb86148ed565b602002602001015161221c565b600101611b9a565b5f81815261013960205260408120546001600160401b0316158015906109295750505f9081526101396020526040902054426001600160401b039091161090565b80611c1a610e2d61220e565b611c365760405162461bcd60e51b8152600401610b3f90614996565b81611c4081612087565b610ec187878787876133cd565b5f611c5661220e565b6001600160a01b0381165f908152610135602052604081205491925003611cc95760405162461bcd60e51b815260206004820152602160248201527f52656769737472793a20524556455253455f5245434f52445f49535f454d50546044820152605960f81b6064820152608401610b3f565b611191816133e3565b6060816001600160401b03811115611cec57611cec61434d565b604051908082528060200260200182016040528015611d1f57816020015b6060815260200190600190039081611d0a5790505b5090505f5b82811015611d7257611d4d848483818110611d4157611d416148ed565b90506020020135611904565b828281518110611d5f57611d5f6148ed565b6020908102919091010152600101611d24565b5092915050565b610134546001600160a01b0316611d8e61220e565b6001600160a01b031614611db45760405162461bcd60e51b8152600401610b3f90614943565b61013454611dcb906001600160a01b03168461221c565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c39528383604051611dfd929190614b61565b60405180910390a2505050565b5f54610100900460ff1615808015611e2857505f54600160ff909116105b80611e415750303b158015611e4157505f5460ff166001145b611ea45760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610b3f565b5f805460ff191660011790558015611ec5575f805461ff0019166101001790555b61013480546001600160a01b0319166001600160a01b038716179055837f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec9237880546001600160a01b0319166001600160a01b03929092169190911790556040805180820182526013815272556e73746f707061626c6520446f6d61696e7360681b60208083019190915282518084019093526002835261155160f21b90830152611f6d91613427565b611f75613466565b611f7d613466565b611f868361348e565b611f8f826134bd565b8015610e6d575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b5f6001600160e01b031982166380ac58cd60e01b148061200a57506001600160e01b03198216635b5e139f60e01b145b8061092957506301ffc9a760e01b6001600160e01b0319831614610929565b5f818152606760205260409020546001600160a01b03166111915760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b3f565b3033036120e45761209661307e565b81146111915760405162461bcd60e51b815260206004820152601760248201527f52656769737472793a20544f4b454e5f494e56414c49440000000000000000006044820152606401610b3f565b611191816134ec565b5f6120f782612cb9565b9050806001600160a01b0316836001600160a01b0316036121645760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b6064820152608401610b3f565b806001600160a01b031661217661220e565b6001600160a01b0316148061219257506121928161087461220e565b6122045760405162461bcd60e51b815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c00006064820152608401610b3f565b6109f88383613518565b5f612217613585565b905090565b6001600160a01b0382166122725760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610b3f565b5f818152606760205260409020546001600160a01b0316156122d65760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610b3f565b6122e15f838361359f565b6001600160a01b0382165f908152606860205260408120805460019290612309908490614d37565b90915550505f8181526067602052604080822080546001600160a01b0319166001600160a01b03861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b5f61236f61297f565b905061237b8183613518565b5f8051602061508f83398151915254604080516020808201869052825180830390910181528183019283905263e3dec8fb60e01b9092526001600160a01b0390921691829163e3dec8fb916123d7918891309190604401614d4a565b5f604051808303815f87803b1580156123ee575f80fd5b505af1158015612400573d5f803e3d5ffd5b5050505050505050565b6060610d85836040516020016124209190614a21565b604051602081830303815290604052805190602001205f1c83613679565b6060612449856134ec565b5f80876001600160a01b0316866124628b8a8989613091565b60405161246f9190614a21565b5f604051808303815f8787f1925050503d805f81146124a9576040519150601f19603f3d011682016040523d82523d5f602084013e6124ae565b606091505b5090925090506124bf603f87614d89565b5a116124cd576124cd614d9c565b61250d82826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c4544000000000000815250613754565b9998505050505050505050565b80515f9081905b801561256b57829150612557828561253a600185614db0565b8151811061254a5761254a6148ed565b602002602001015161378d565b92508061256381614dc3565b915050612521565b50915091565b5f5b84811015611139576125cc868683818110612590576125906148ed565b90506020028101906125a29190614901565b8686858181106125b4576125b46148ed565b90506020028101906125c69190614901565b86612b1b565b600101612573565b60605f825f815181106125e9576125e96148ed565b602002602001015190505f600190505b8351811015611d725781848281518110612615576126156148ed565b602002602001015160405160200161262e929190614dd8565b60408051601f1981840301815291905291506001016125f9565b61dead6001600160a01b0384161480159061267957506001600160a01b0383165f9081526101356020526040902054155b156109f8576109f8838383612d18565b5f80612694836111f3565b90506001600160a01b03811615801590610c7c5750806001600160a01b0316846001600160a01b031614806126ed57506001600160a01b038082165f908152606a602090815260408083209388168352929052205460ff165b80610c7c5750836001600160a01b0316612706846109bf565b6001600160a01b031614949350505050565b61272181613837565b60405160200161273391815260200190565b60408051601f1981840301815282825280516020918201205f85815260cb9092529181209190915582917f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9190a250565b826001600160a01b031661279782612cb9565b6001600160a01b0316146127fb5760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b6064820152608401610b3f565b6001600160a01b03821661285d5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610b3f565b61286883838361359f565b6128725f82613518565b6001600160a01b0383165f90815260686020526040812080546001929061289a908490614db0565b90915550506001600160a01b0382165f9081526068602052604081208054600192906128c7908490614d37565b90915550505f8181526067602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b5f5b8481101561113957612977868683818110612946576129466148ed565b9050602002013585858481811061295f5761295f6148ed565b90506020028101906129719190614901565b85612bf6565b600101612929565b5f8051602061508f833981519152545f906001600160a01b03168015612a755760405163721804d360e11b81523060048201525f906001600160a01b0383169063e43009a690602401602060405180830381865afa1580156129e3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612a079190614e13565b60405163e66f960360e01b8152600481018290529091506001600160a01b0383169063e66f960390602401602060405180830381865afa158015612a4d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612a719190614e2a565b9250505b5090565b5f612a8382612cb9565b9050612a90815f8461359f565b612a9a5f83613518565b6001600160a01b0381165f908152606860205260408120805460019290612ac2908490614db0565b90915550505f8281526067602052604080822080546001600160a01b0319169055518391906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b5f8585604051602001612b2f929190614e45565b60408051601f198184030181528282528051602091820120601f8901829004820284018201909252878352909250612b8291839189908990819084018382808284375f92019190915250612c9592505050565b6111398187878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8b0181900481028201810190925289815292508991508890819084018382808284375f9201919091525088925061385d915050565b612bff84613989565b612c4b5760405162461bcd60e51b815260206004820152601c60248201527f5265636f726453746f726167653a204b45595f4e4f545f464f554e44000000006044820152606401610b3f565b61146684612c5886611904565b85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525087925061385d915050565b612c9e82613989565b61104f575f82815260c9602052604090206109f88282614e54565b5f818152606760205260408120546001600160a01b0316806109295760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b3f565b5f828152610138602052604090208054612d31906148a2565b90505f03612d53575f82815261013860205260409020612d518282614e54565b505b6001600160a01b0383165f8181526101356020526040808220859055518492917feb76a21470988c474a21f690cc28fee1ed511bd812dc3c21fd0f49c5e5d4708a91a3505050565b606080612da784611904565b9150612db38484613679565b90509250929050565b5f818152610137602052604081205460ff16801561092957506101365f612de161220e565b6001600160a01b0316815260208101919091526040015f205460ff1692915050565b5f8051602061508f83398151915254604051633805550f60e01b81526001600160a01b03909116908190633805550f90612e439086908690600401614b61565b5f604051808303815f87803b158015612e5a575f80fd5b505af1158015610ec1573d5f803e3d5ffd5b816001600160a01b0316836001600160a01b031603612ecd5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610b3f565b6001600160a01b038381165f818152606a6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015612f7d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612fa19190614e13565b90505f61304e866060015180519060200120868860200151604051602001612fee9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561307457508551613074906001600160a01b031682866139ae565b9695505050505050565b5f30330361308e5750601f193601355b90565b60608285856040516020016130a893929190614f0f565b6040516020818303038152906040529050949350505050565b606081516001600160401b038111156130dc576130dc61434d565b60405190808252806020026020018201604052801561310f57816020015b60608152602001906001900390816130fa5790505b5090505f5b82518110156113c0575f80306001600160a01b031685848151811061313b5761313b6148ed565b60200260200101516040516131509190614a21565b5f60405180830381855af49150503d805f8114613188576040519150601f19603f3d011682016040523d82523d5f602084013e61318d565b606091505b50915091506131b582826040518060600160405280602781526020016150af60279139613754565b8484815181106131c7576131c76148ed565b60209081029190910101525050600101613114565b6131e7848484612784565b6131f384848484613ae9565b6114665760405162461bcd60e51b8152600401610b3f90614f4d565b5f818152610137602052604090205460ff16156111915760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a20544f4b454e5f555047524144454400000000000000006044820152606401610b3f565b613278848461221c565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952836040516132a89190613e32565b60405180910390a2801561146657611466848484612648565b6060610133805461093e906148a2565b6060815f036132f75750506040805180820190915260018152600360fc1b602082015290565b815f5b8115613320578061330a81614f9f565b91506133199050600a83614d89565b91506132fa565b5f816001600160401b038111156133395761333961434d565b6040519080825280601f01601f191660200182016040528015613363576020820181803683370190505b5090505b8415610c7c57613378600183614db0565b9150613385600a86614fb7565b613390906030614d37565b60f81b8183815181106133a5576133a56148ed565b60200101906001600160f81b03191690815f1a9053506133c6600a86614d89565b9450613367565b6133d681612718565b610e6d8585858585612571565b6001600160a01b0381165f8181526101356020526040808220829055517ffcf5eec0cfa3e6332f5f0e63ec242d71f866a61d121d6cdf5c2eb3b668a26c4f9190a250565b5f54610100900460ff1661344d5760405162461bcd60e51b8152600401610b3f90614fca565b60656134598382614e54565b5060666109f88282614e54565b5f54610100900460ff1661348c5760405162461bcd60e51b8152600401610b3f90614fca565b565b5f54610100900460ff166134b45760405162461bcd60e51b8152600401610b3f90614fca565b61119181613bea565b5f54610100900460ff166134e35760405162461bcd60e51b8152600401610b3f90614fca565b61119181613c41565b5f8181526101006020526040902054613506906001614d37565b5f918252610100602052604090912055565b5f81815260696020526040902080546001600160a01b0319166001600160a01b038416908117909155819061354c82612cb9565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b5f30330361359a575060331936013560601c90565b503390565b6001600160a01b0382166135b6576135b68161320f565b5f81815261013960205260409020546001600160401b031615613650576001600160a01b0382161580159061360457506135ee61297f565b6001600160a01b0316826001600160a01b031614155b6136505760405162461bcd60e51b815260206004820152601960248201527f52656769737472793a20544f4b454e5f455850495241424c45000000000000006044820152606401610b3f565b6001600160a01b0383165f90815261013560205260409020548190036109f8576109f8836133e3565b606061368482612dbc565b1561369d575060408051602081019091525f8152610929565b60ca5f6136a984613837565b81526020019081526020015f205f8481526020019081526020015f2080546136d0906148a2565b80601f01602080910402602001604051908101604052809291908181526020018280546136fc906148a2565b80156137475780601f1061371e57610100808354040283529160200191613747565b820191905f5260205f20905b81548152906001019060200180831161372a57829003601f168201915b5050505050905092915050565b60608315613763575081610d85565b8251156137735782518084602001fd5b8160405162461bcd60e51b8152600401610b3f9190613e32565b5f81515f036137d65760405162461bcd60e51b815260206004820152601560248201527452656769737472793a204c4142454c5f454d50545960581b6044820152606401610b3f565b82826040516020016137e89190614a21565b60405160208183030381529060405280519060200120604051602001613818929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b5f81815260cb602052604081205415612a75575f82815260cb6020526040902054610929565b60ca5f61386983613837565b81526020019081526020015f205f8581526020019081526020015f208054613890906148a2565b90505f036138e757826040516138a69190614a21565b6040518091039020817f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f86856040516138de9190613e32565b60405180910390a35b8160ca5f6138f484613837565b81526020019081526020015f205f8681526020019081526020015f20908161391c9190614e54565b508160405161392b9190614a21565b6040518091039020836040516139419190614a21565b6040518091039020827f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d92868660405161397b929190614542565b60405180910390a450505050565b5f81815260c96020526040812080548291906139a4906148a2565b9050119050919050565b5f805f6139bb8585613c8e565b90925090505f8160048111156139d3576139d3615015565b1480156139f15750856001600160a01b0316826001600160a01b0316145b15613a0157600192505050610d85565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401613a28929190615029565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051613a669190614a21565b5f60405180830381855afa9150503d805f8114613a9e576040519150601f19603f3d011682016040523d82523d5f602084013e613aa3565b606091505b5091509150818015613ab6575080516020145b8015613add57508051630b135d3f60e11b90613adb9083016020908101908401614e13565b145b98975050505050505050565b5f6001600160a01b0384163b15613be257836001600160a01b031663150b7a02613b1161220e565b8786866040518563ffffffff1660e01b8152600401613b339493929190615041565b6020604051808303815f875af1925050508015613b6d575060408051601f3d908101601f19168201909252613b6a91810190615073565b60015b613bc8573d808015613b9a576040519150601f19603f3d011682016040523d82523d5f602084013e613b9f565b606091505b5080515f03613bc05760405162461bcd60e51b8152600401610b3f90614f4d565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610c7c565b506001610c7c565b5f54610100900460ff16613c105760405162461bcd60e51b8152600401610b3f90614fca565b805f8051602061508f8339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b5f54610100900460ff16613c675760405162461bcd60e51b8152600401610b3f90614fca565b807f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87613c20565b5f808251604103613cc2576020830151604084015160608501515f1a613cb687828585613cd0565b94509450505050613cc9565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613d0557505f90506003613dac565b8460ff16601b14158015613d1d57508460ff16601c14155b15613d2d57505f90506004613dac565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613d7e573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b038116613da6575f60019250925050613dac565b91505f90505b94509492505050565b6001600160e01b031981168114611191575f80fd5b5f60208284031215613dda575f80fd5b8135610d8581613db5565b5f5b83811015613dff578181015183820152602001613de7565b50505f910152565b5f8151808452613e1e816020860160208601613de5565b601f01601f19169290920160200192915050565b602081525f610d856020830184613e07565b5f60208284031215613e54575f80fd5b5035919050565b6001600160a01b0381168114611191575f80fd5b5f8060408385031215613e80575f80fd5b8235613e8b81613e5b565b946020939093013593505050565b5f8083601f840112613ea9575f80fd5b5081356001600160401b03811115613ebf575f80fd5b602083019150836020828501011115613cc9575f80fd5b5f805f805f60808688031215613eea575f80fd5b8535613ef581613e5b565b94506020860135613f0581613e5b565b93506040860135925060608601356001600160401b03811115613f26575f80fd5b613f3288828901613e99565b969995985093965092949392505050565b5f8083601f840112613f53575f80fd5b5081356001600160401b03811115613f69575f80fd5b6020830191508360208260051b8501011115613cc9575f80fd5b5f805f60408486031215613f95575f80fd5b83356001600160401b03811115613faa575f80fd5b613fb686828701613f43565b909790965060209590950135949350505050565b5f8282518085526020808601955060208260051b840101602086015f5b8481101561401557601f19868403018952614003838351613e07565b98840198925090830190600101613fe7565b5090979650505050505050565b602081525f610d856020830184613fca565b5f805f60408486031215614046575f80fd5b83356001600160401b0381111561405b575f80fd5b613fb686828701613e99565b5f805f60408486031215614079575f80fd5b83356001600160401b038082111561408f575f80fd5b90850190608082880312156140a2575f80fd5b909350602085013590808211156140b7575f80fd5b506140c486828701613e99565b9497909650939450505050565b8035801515811461120a575f80fd5b5f805f805f805f8060a0898b0312156140f7575f80fd5b883561410281613e5b565b975060208901356001600160401b038082111561411d575f80fd5b6141298c838d01613f43565b909950975060408b0135915080821115614141575f80fd5b61414d8c838d01613f43565b909750955060608b0135915080821115614165575f80fd5b506141728b828c01613f43565b9094509250614185905060808a016140d1565b90509295985092959890939650565b5f805f606084860312156141a6575f80fd5b83356141b181613e5b565b925060208401356141c181613e5b565b929592945050506040919091013590565b5f80602083850312156141e3575f80fd5b82356001600160401b038111156141f8575f80fd5b61420485828601613f43565b90969095509350505050565b5f805f805f60608688031215614224575f80fd5b85356001600160401b038082111561423a575f80fd5b61424689838a01613f43565b9097509550602088013591508082111561425e575f80fd5b5061426b88828901613f43565b96999598509660400135949350505050565b5f806040838503121561428e575f80fd5b82356001600160401b0381168114613e8b575f80fd5b5f805f805f606086880312156142b8575f80fd5b85356001600160401b03808211156142ce575f80fd5b6142da89838a01613e99565b909750955060208801359150808211156142f2575f80fd5b5061426b88828901613e99565b5f805f8060608587031215614312575f80fd5b8435935060208501356001600160401b0381111561432e575f80fd5b61433a87828801613e99565b9598909750949560400135949350505050565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f191681016001600160401b03811182821017156143895761438961434d565b604052919050565b5f82601f8301126143a0575f80fd5b81356001600160401b038111156143b9576143b961434d565b6143cc601f8201601f1916602001614361565b8181528460208386010111156143e0575f80fd5b816020850160208301375f918101602001919091529392505050565b5f6020828403121561440c575f80fd5b81356001600160401b03811115614421575f80fd5b610c7c84828501614391565b5f6020828403121561443d575f80fd5b8135610d8581613e5b565b5f6001600160401b038211156144605761446061434d565b5060051b60200190565b5f61447c61447784614448565b614361565b8381529050602080820190600585901b84018681111561449a575f80fd5b845b818110156144d35780356001600160401b038111156144b9575f80fd5b6144c589828901614391565b85525092820192820161449c565b505050509392505050565b5f602082840312156144ee575f80fd5b81356001600160401b03811115614503575f80fd5b8201601f81018413614513575f80fd5b610c7c8482356020840161446a565b5f8060408385031215614533575f80fd5b50508035926020909101359150565b604081525f6145546040830185613e07565b8281036020840152610d818185613e07565b5f805f8060608587031215614579575f80fd5b843561458481613e5b565b93506020850135925060408501356001600160401b038111156145a5575f80fd5b6145b187828801613e99565b95989497509550505050565b5f805f805f805f6080888a0312156145d3575f80fd5b87356001600160401b03808211156145e9575f80fd5b6145f58b838c01613e99565b909950975060208a0135965060408a0135915080821115614614575f80fd5b6146208b838c01613f43565b909650945060608a0135915080821115614638575f80fd5b506146458a828b01613f43565b989b979a50959850939692959293505050565b5f8060208385031215614669575f80fd5b82356001600160401b0381111561467e575f80fd5b61420485828601613e99565b5f806040838503121561469b575f80fd5b82356146a681613e5b565b9150612db3602084016140d1565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b8281101561470957603f198886030184526146f7858351613e07565b945092850192908501906001016146db565b5092979650505050505050565b604081525f6147286040830185613fca565b8281036020840152610d818185613fca565b5f805f806080858703121561474d575f80fd5b843561475881613e5b565b9350602085013561476881613e5b565b92506040850135915060608501356001600160401b03811115614789575f80fd5b61479587828801614391565b91505092959194509250565b5f805f604084860312156147b3575f80fd5b83356147be81613e5b565b925060208401356001600160401b038111156147d8575f80fd5b6140c486828701613e99565b5f80604083850312156147f5575f80fd5b823561480081613e5b565b9150602083013561481081613e5b565b809150509250929050565b5f805f6040848603121561482d575f80fd5b8335925060208401356001600160401b038111156147d8575f80fd5b5f805f806080858703121561485c575f80fd5b843561486781613e5b565b9350602085013561487781613e5b565b9250604085013561488781613e5b565b9150606085013561489781613e5b565b939692955090935050565b600181811c908216806148b657607f821691505b6020821081036113c057634e487b7160e01b5f52602260045260245ffd5b5f602082840312156148e4575f80fd5b610d85826140d1565b634e487b7160e01b5f52603260045260245ffd5b5f808335601e19843603018112614916575f80fd5b8301803591506001600160401b0382111561492f575f80fd5b602001915036819003821315613cc9575f80fd5b60208082526027908201527f52656769737472793a2053454e4445525f49535f4e4f545f4d494e54494e475f60408201526626a0a720a3a2a960c91b606082015260800190565b5f610d8536848461446a565b60208082526029908201527f52656769737472793a2053454e4445525f49535f4e4f545f415050524f5645446040820152682fa7a92fa7aba722a960b91b606082015260800190565b60208082526022908201527f52656769737472793a20494e53554646494349454e545f5045524d495353494f6040820152614e5360f01b606082015260800190565b5f8251614a32818460208701613de5565b9190910192915050565b601f8211156109f857805f5260205f20601f840160051c81016020851015614a615750805b601f840160051c820191505b81811015610e6d575f8155600101614a6d565b6001600160401b03831115614a9757614a9761434d565b614aab83614aa583546148a2565b83614a3c565b5f601f841160018114614adc575f8515614ac55750838201355b5f19600387901b1c1916600186901b178355610e6d565b5f83815260208120601f198716915b82811015614b0b5786850135825560209485019460019092019101614aeb565b5086821015614b27575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b602081525f610c7c602083018486614b39565b5f60808236031215614b84575f80fd5b604051608081016001600160401b038282108183111715614ba757614ba761434d565b8160405284359150614bb882613e5b565b81835260208501356020840152604085013560408401526060850135915080821115614be2575f80fd5b50614bef36828601614391565b60608301525092915050565b5f614c0861447784614448565b80848252602080830192508560051b850136811115614c25575f80fd5b855b81811015614c5e5780356001600160401b03811115614c44575f80fd5b614c5036828a01614391565b865250938201938201614c27565b50919695505050505050565b5f8351614c7b818460208801613de5565b835190830190614c8f818360208801613de5565b01949350505050565b5f6020808385031215614ca9575f80fd5b82356001600160401b03811115614cbe575f80fd5b8301601f81018513614cce575f80fd5b8035614cdc61447782614448565b81815260059190911b82018301908381019087831115614cfa575f80fd5b928401925b82841015614d1857833582529284019290840190614cff565b979650505050505050565b634e487b7160e01b5f52601160045260245ffd5b8082018082111561092957610929614d23565b6001600160a01b038481168252831660208201526060604082018190525f90610b4890830184613e07565b634e487b7160e01b5f52601260045260245ffd5b5f82614d9757614d97614d75565b500490565b634e487b7160e01b5f52600160045260245ffd5b8181038181111561092957610929614d23565b5f81614dd157614dd1614d23565b505f190190565b5f8351614de9818460208801613de5565b601760f91b9083019081528351614e07816001840160208801613de5565b01600101949350505050565b5f60208284031215614e23575f80fd5b5051919050565b5f60208284031215614e3a575f80fd5b8151610d8581613e5b565b818382375f9101908152919050565b81516001600160401b03811115614e6d57614e6d61434d565b614e8181614e7b84546148a2565b84614a3c565b602080601f831160018114614eb4575f8415614e9d5750858301515b5f19600386901b1c1916600185901b178555611139565b5f85815260208120601f198616915b82811015614ee257888601518255948401946001909101908401614ec3565b5085821015614eff57878501515f19600388901b60f8161c191681555b5050505050600190811b01905550565b5f8451614f20818460208901613de5565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b5f60018201614fb057614fb0614d23565b5060010190565b5f82614fc557614fc5614d75565b500690565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f610c7c6040830184613e07565b6001600160a01b03858116825284166020820152604081018390526080606082018190525f9061307490830184613e07565b5f60208284031215615083575f80fd5b8151610d8581613db556febe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000818000a", - "deployedBytecode": "0x608060405234801561000f575f80fd5b506004361061039e575f3560e01c80637e37479e116101ea578063ba5d40b711610114578063e985e9c5116100a9578063f5c1f76e11610079578063f5c1f76e146108c2578063f7df5c60146108d5578063f8c8765e146108e8578063ffa1ad74146108fb575f80fd5b8063e985e9c514610866578063ebf0c717146108a1578063ec129eea146108a7578063f25eb5c1146108ba575f80fd5b8063c87b56dd116100e4578063c87b56dd1461081a578063ce92b33e1461082d578063cf2c52cb14610840578063d9548e5314610853575f80fd5b8063ba5d40b7146107a0578063baef73e9146107b3578063bb5b27e1146107f4578063bebec6b414610807575f80fd5b8063a22cb4651161018a578063ac9650d81161015a578063ac9650d814610739578063b3f9e4cb14610759578063b85afd281461076c578063b88d4fde1461078d575f80fd5b8063a22cb465146106d4578063a3f4df7e146106e7578063a424740014610713578063ab3b87fe14610726575f80fd5b80639508b1c4116101c55780639508b1c41461069e5780639559c0bd146106b157806395d89b41146106b957806399e0dd7c146106c1575f80fd5b80637e37479e146106655780637eee288d1461067857806394d008ef1461068b575f80fd5b806342842e0e116102cb578063509602391161026b578063663f7b2a1161023b578063663f7b2a146105fe578063672b9f81146106115780636ccbae5f1461063257806370a0823114610652575f80fd5b806350960239146105a9578063572b6c05146105bc5780636352211e146105d8578063638e5c78146105eb575f80fd5b806347c81699116102a657806347c816991461055d5780634a72584d146105705780634f558e791461058357806350382c1a14610596575f80fd5b806342842e0e1461052457806342966c6814610537578063430c20811461054a575f80fd5b80631bf7e13e1161034157806327f189751161031157806327f18975146104d8578063310bd74b146104eb5780633f72ec6e146104fe57806340c10f1914610511575f80fd5b80631bf7e13e1461047e5780631f71be061461049157806323b872dd146104a4578063276fabb1146104b7575f80fd5b8063095ea7b31161037c578063095ea7b31461040a578063150b7a021461041f5780631bd8cc1a1461044b5780631be5e7ed1461046b575f80fd5b806301ffc9a7146103a257806306fdde03146103ca578063081812fc146103df575b5f80fd5b6103b56103b0366004613dca565b61091f565b60405190151581526020015b60405180910390f35b6103d261092f565b6040516103c19190613e32565b6103f26103ed366004613e44565b6109bf565b6040516001600160a01b0390911681526020016103c1565b61041d610418366004613e6f565b6109e4565b005b61043261042d366004613ed6565b6109fd565b6040516001600160e01b031990911681526020016103c1565b61045e610459366004613f83565b610b51565b6040516103c19190614022565b6103d2610479366004614034565b610c3a565b6103d261048c366004614067565b610c84565b61041d61049f3660046140e0565b610d8c565b61041d6104b2366004614194565b610e21565b6104ca6104c53660046141d2565b610e74565b6040519081526020016103c1565b61041d6104e6366004614210565b610e82565b61041d6104f9366004613e44565b610eca565b61041d61050c36600461427d565b610f05565b61041d61051f366004613e6f565b611006565b61041d610532366004614194565b611053565b61041d610545366004613e44565b61106d565b6103b5610558366004613e6f565b6110b1565b61041d61056b3660046142a4565b6110bc565b61041d61057e3660046142ff565b6110fb565b6103b5610591366004613e44565b611141565b61041d6105a43660046143fc565b61115f565b61041d6105b736600461442d565b611194565b6103b56105ca36600461442d565b6001600160a01b0316301490565b6103f26105e6366004613e44565b6111f3565b61041d6105f9366004613e44565b61120f565b61041d61060c3660046144de565b61125a565b61062461061f366004614522565b6112fa565b6040516103c1929190614542565b6104ca610640366004613e44565b5f908152610100602052604090205490565b6104ca61066036600461442d565b611312565b6104ca61067336600461442d565b611396565b61041d610686366004613e6f565b6113c6565b61041d610699366004614566565b61141d565b61041d6106ac3660046145bd565b61146c565b6104ca601481565b6103d26114f3565b61041d6106cf366004614658565b611502565b61041d6106e236600461468a565b611589565b6103d26040518060400160405280600d81526020016c554e533a20526567697374727960981b81525081565b6103b5610721366004614067565b61159b565b61041d610734366004613e6f565b6115e4565b61074c6107473660046141d2565b611629565b6040516103c191906146b4565b6103f2610767366004613e44565b6116f7565b61077f61077a366004613f83565b61171f565b6040516103c1929190614716565b61041d61079b36600461473a565b611835565b61041d6107ae3660046140e0565b61187c565b6107dc6107c1366004613e44565b5f90815261013960205260409020546001600160401b031690565b6040516001600160401b0390911681526020016103c1565b6103d2610802366004613e44565b611904565b6103d261081536600461442d565b6119a3565b6103d2610828366004613e44565b611a69565b61041d61083b366004614210565b611acc565b61041d61084e3660046147a1565b611b0b565b6103b5610861366004613e44565b611bcd565b6103b56108743660046147e4565b6001600160a01b039182165f908152606a6020908152604080832093909416825291909152205460ff1690565b5f6104ca565b61041d6108b5366004614210565b611c0e565b61041d611c4d565b61045e6108d03660046141d2565b611cd2565b61041d6108e336600461481b565b611d79565b61041d6108f6366004614849565b611e0a565b6103d260405180604001604052806005815260200164302e392e3160d81b81525081565b5f61092982611fda565b92915050565b60606065805461093e906148a2565b80601f016020809104026020016040519081016040528092919081815260200182805461096a906148a2565b80156109b55780601f1061098c576101008083540402835291602001916109b5565b820191905f5260205f20905b81548152906001019060200180831161099857829003601f168201915b5050505050905090565b5f6109c982612029565b505f908152606960205260409020546001600160a01b031690565b806109ee81612087565b6109f883836120ed565b505050565b5f7f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378546001600160a01b0316610a3161220e565b6001600160a01b031603610aed57610a4761220e565b6001600160a01b03166342966c68856040518263ffffffff1660e01b8152600401610a7491815260200190565b5f604051808303815f87803b158015610a8b575f80fd5b505af1158015610a9d573d5f803e3d5ffd5b505050821580159150610ab75750610ab7828401846148d4565b15610ad557610ac6308561221c565b610ad08585612366565b610adf565b610adf858561221c565b50630a85bd0160e11b610b48565b60405162461bcd60e51b815260206004820152602560248201527f52656769737472793a204552433732315f524543454956494e475f50524f4849604482015264109255115160da1b60648201526084015b60405180910390fd5b95945050505050565b6060826001600160401b03811115610b6b57610b6b61434d565b604051908082528060200260200182016040528015610b9e57816020015b6060815260200190600190039081610b895790505b5090505f5b83811015610c3257610c0d858583818110610bc057610bc06148ed565b9050602002810190610bd29190614901565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525087925061240a915050565b828281518110610c1f57610c1f6148ed565b6020908102919091010152600101610ba3565b509392505050565b6060610c7c84848080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525086925061240a915050565b949350505050565b60605f5a9050610c9585858561159b565b610cf15760405162461bcd60e51b815260206004820152602760248201527f554e535265676973747279466f727761726465723a205349474e41545552455f6044820152661253959053125160ca1b6064820152608401610b3f565b610d81610d01602087018761442d565b30604088013584610d1560608b018b614901565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f9201919091525061243e92505050565b9150505b9392505050565b610134546001600160a01b0316610da161220e565b6001600160a01b031614610dc75760405162461bcd60e51b8152600401610b3f90614943565b5f610dda610dd5888a61498a565b61251a565b509050610de789826113c6565b610df48686868685612571565b8115610e1657610e168982610e11610e0c8b8d61498a565b6125d4565b612648565b505050505050505050565b80610e33610e2d61220e565b82612689565b610e4f5760405162461bcd60e51b8152600401610b3f90614996565b81610e5981612087565b610e6283612718565b610e6d858585612784565b5050505050565b5f610c32610dd5838561498a565b80610e8e610e2d61220e565b610eaa5760405162461bcd60e51b8152600401610b3f90614996565b81610eb481612087565b610ec18787878787612927565b50505050505050565b80610ed6610e2d61220e565b610ef25760405162461bcd60e51b8152600401610b3f90614996565b81610efc81612087565b6109f883612718565b610134546001600160a01b0316610f1a61220e565b6001600160a01b031614610f405760405162461bcd60e51b8152600401610b3f90614943565b610f4981612029565b42826001600160401b031611610fa15760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a204558504952595f494e5f5041535400000000000000006044820152606401610b3f565b5f8181526101396020908152604091829020805467ffffffffffffffff19166001600160401b038616908117909155915191825282917f93feabb03ab84f47fc85bf0c298103fca21d8c8bc376eae0c1e1c56b9d4f7789910160405180910390a25050565b61100e61297f565b6001600160a01b031661101f61220e565b6001600160a01b0316146110455760405162461bcd60e51b8152600401610b3f906149df565b61104f828261221c565b5050565b6109f883838360405180602001604052805f815250611835565b80611079610e2d61220e565b6110955760405162461bcd60e51b8152600401610b3f90614996565b8161109f81612087565b6110a883612718565b6109f883612a79565b5f610d858383612689565b806110c8610e2d61220e565b6110e45760405162461bcd60e51b8152600401610b3f90614996565b816110ee81612087565b610ec18787878787612b1b565b80611107610e2d61220e565b6111235760405162461bcd60e51b8152600401610b3f90614996565b8161112d81612087565b61113986868686612bf6565b505050505050565b5f818152606760205260408120546001600160a01b03161515610929565b611191816040516020016111739190614a21565b604051602081830303815290604052805190602001205f1c82612c95565b50565b610134546001600160a01b03166111a961220e565b6001600160a01b0316146111cf5760405162461bcd60e51b8152600401610b3f90614943565b6001600160a01b03165f90815261013660205260409020805460ff19166001179055565b5f6111fd82611bcd565b61120a5761092982612cb9565b919050565b8061121b610e2d61220e565b6112375760405162461bcd60e51b8152600401610b3f90614996565b61124961124261220e565b3084612784565b61104f61125461220e565b83612366565b5f6112648261251a565b50905061126f61220e565b6001600160a01b0316611281826111f3565b6001600160a01b0316146112d75760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b3f565b6112e081612087565b61104f6112eb61220e565b826112f5856125d4565b612d18565b6060806113078484612d9b565b909590945092505050565b5f6001600160a01b03821661137b5760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b6064820152608401610b3f565b506001600160a01b03165f9081526068602052604090205490565b6001600160a01b0381165f90815261013560205260408120546113b881612dbc565b6113c0578091505b50919050565b610134546001600160a01b03166113db61220e565b6001600160a01b0316146114015760405162461bcd60e51b8152600401610b3f90614943565b61140a81612718565b61104f61141682612cb9565b8383612784565b61142561297f565b6001600160a01b031661143661220e565b6001600160a01b03161461145c5760405162461bcd60e51b8152600401610b3f906149df565b611466848461221c565b50505050565b6114768787612e03565b61147e61220e565b6001600160a01b0316611490866111f3565b6001600160a01b0316146114e65760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b3f565b610ec18484848489612571565b60606066805461093e906148a2565b610134546001600160a01b031661151761220e565b6001600160a01b03161461153d5760405162461bcd60e51b8152600401610b3f90614943565b61013361154b828483614a80565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b828260405161157d929190614b61565b60405180910390a15050565b61104f61159461220e565b8383612e6c565b5f610c7c6115a885614b74565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250612f3992505050565b806115f0610e2d61220e565b61160c5760405162461bcd60e51b8152600401610b3f90614996565b8161161681612087565b61146661162284612cb9565b8585612784565b60605f6116368385614bfb565b90503033036116ee575f5b838110156116ec576116c761165461220e565b61165c61307e565b87878581811061166e5761166e6148ed565b90506020028101906116809190614901565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92018290525060408051602081019091529081529250613091915050565b8282815181106116d9576116d96148ed565b6020908102919091010152600101611641565b505b610c7c816130c1565b5f818152606760205260408120546001600160a01b0316611718575f610929565b3092915050565b606080836001600160401b0381111561173a5761173a61434d565b60405190808252806020026020018201604052801561176d57816020015b60608152602001906001900390816117585790505b509150836001600160401b038111156117885761178861434d565b6040519080825280602002602001820160405280156117bb57816020015b60608152602001906001900390816117a65790505b5090505f5b8481101561182c576117ea8686838181106117dd576117dd6148ed565b9050602002013585612d9b565b8483815181106117fc576117fc6148ed565b60200260200101848481518110611815576118156148ed565b6020908102919091010191909152526001016117c0565b50935093915050565b81611841610e2d61220e565b61185d5760405162461bcd60e51b8152600401610b3f90614996565b8261186781612087565b61187084612718565b611139868686866131dc565b610134546001600160a01b031661189161220e565b6001600160a01b0316146118b75760405162461bcd60e51b8152600401610b3f90614943565b5f806118c6610dd5898b61498a565b915091506118d38161320f565b6118eb8a836118e5610e0c8c8e61498a565b8661326e565b6118f88787878786612571565b50505050505050505050565b5f81815260c960205260409020805460609190611920906148a2565b80601f016020809104026020016040519081016040528092919081815260200182805461194c906148a2565b80156119975780601f1061196e57610100808354040283529160200191611997565b820191905f5260205f20905b81548152906001019060200180831161197a57829003601f168201915b50505050509050919050565b6001600160a01b0381165f90815261013560205260409020546060906119c881612dbc565b6113c0575f8181526101386020526040902080546119e5906148a2565b80601f0160208091040260200160405190810160405280929190818152602001828054611a11906148a2565b8015611a5c5780601f10611a3357610100808354040283529160200191611a5c565b820191905f5260205f20905b815481529060010190602001808311611a3f57829003601f168201915b5050505050915050919050565b6060611a7482612029565b5f611a7d6132c1565b90505f815111611a9b5760405180602001604052805f815250610d85565b80611aa5846132d1565b604051602001611ab6929190614c6a565b6040516020818303038152906040529392505050565b80611ad8610e2d61220e565b611af45760405162461bcd60e51b8152600401610b3f90614996565b81611afe81612087565b610ec18787878787612571565b7f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87546001600160a01b0316611b3e61220e565b6001600160a01b031614611b645760405162461bcd60e51b8152600401610b3f906149df565b6020819003611b86575f611b7a82840184613e44565b9050611466848261221c565b5f611b9382840184614c98565b80519091505f5b8181101561113957611bc586848381518110611bb857611bb86148ed565b602002602001015161221c565b600101611b9a565b5f81815261013960205260408120546001600160401b0316158015906109295750505f9081526101396020526040902054426001600160401b039091161090565b80611c1a610e2d61220e565b611c365760405162461bcd60e51b8152600401610b3f90614996565b81611c4081612087565b610ec187878787876133cd565b5f611c5661220e565b6001600160a01b0381165f908152610135602052604081205491925003611cc95760405162461bcd60e51b815260206004820152602160248201527f52656769737472793a20524556455253455f5245434f52445f49535f454d50546044820152605960f81b6064820152608401610b3f565b611191816133e3565b6060816001600160401b03811115611cec57611cec61434d565b604051908082528060200260200182016040528015611d1f57816020015b6060815260200190600190039081611d0a5790505b5090505f5b82811015611d7257611d4d848483818110611d4157611d416148ed565b90506020020135611904565b828281518110611d5f57611d5f6148ed565b6020908102919091010152600101611d24565b5092915050565b610134546001600160a01b0316611d8e61220e565b6001600160a01b031614611db45760405162461bcd60e51b8152600401610b3f90614943565b61013454611dcb906001600160a01b03168461221c565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c39528383604051611dfd929190614b61565b60405180910390a2505050565b5f54610100900460ff1615808015611e2857505f54600160ff909116105b80611e415750303b158015611e4157505f5460ff166001145b611ea45760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610b3f565b5f805460ff191660011790558015611ec5575f805461ff0019166101001790555b61013480546001600160a01b0319166001600160a01b038716179055837f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec9237880546001600160a01b0319166001600160a01b03929092169190911790556040805180820182526013815272556e73746f707061626c6520446f6d61696e7360681b60208083019190915282518084019093526002835261155160f21b90830152611f6d91613427565b611f75613466565b611f7d613466565b611f868361348e565b611f8f826134bd565b8015610e6d575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b5f6001600160e01b031982166380ac58cd60e01b148061200a57506001600160e01b03198216635b5e139f60e01b145b8061092957506301ffc9a760e01b6001600160e01b0319831614610929565b5f818152606760205260409020546001600160a01b03166111915760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b3f565b3033036120e45761209661307e565b81146111915760405162461bcd60e51b815260206004820152601760248201527f52656769737472793a20544f4b454e5f494e56414c49440000000000000000006044820152606401610b3f565b611191816134ec565b5f6120f782612cb9565b9050806001600160a01b0316836001600160a01b0316036121645760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b6064820152608401610b3f565b806001600160a01b031661217661220e565b6001600160a01b0316148061219257506121928161087461220e565b6122045760405162461bcd60e51b815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c00006064820152608401610b3f565b6109f88383613518565b5f612217613585565b905090565b6001600160a01b0382166122725760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610b3f565b5f818152606760205260409020546001600160a01b0316156122d65760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610b3f565b6122e15f838361359f565b6001600160a01b0382165f908152606860205260408120805460019290612309908490614d37565b90915550505f8181526067602052604080822080546001600160a01b0319166001600160a01b03861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b5f61236f61297f565b905061237b8183613518565b5f8051602061508f83398151915254604080516020808201869052825180830390910181528183019283905263e3dec8fb60e01b9092526001600160a01b0390921691829163e3dec8fb916123d7918891309190604401614d4a565b5f604051808303815f87803b1580156123ee575f80fd5b505af1158015612400573d5f803e3d5ffd5b5050505050505050565b6060610d85836040516020016124209190614a21565b604051602081830303815290604052805190602001205f1c83613679565b6060612449856134ec565b5f80876001600160a01b0316866124628b8a8989613091565b60405161246f9190614a21565b5f604051808303815f8787f1925050503d805f81146124a9576040519150601f19603f3d011682016040523d82523d5f602084013e6124ae565b606091505b5090925090506124bf603f87614d89565b5a116124cd576124cd614d9c565b61250d82826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c4544000000000000815250613754565b9998505050505050505050565b80515f9081905b801561256b57829150612557828561253a600185614db0565b8151811061254a5761254a6148ed565b602002602001015161378d565b92508061256381614dc3565b915050612521565b50915091565b5f5b84811015611139576125cc868683818110612590576125906148ed565b90506020028101906125a29190614901565b8686858181106125b4576125b46148ed565b90506020028101906125c69190614901565b86612b1b565b600101612573565b60605f825f815181106125e9576125e96148ed565b602002602001015190505f600190505b8351811015611d725781848281518110612615576126156148ed565b602002602001015160405160200161262e929190614dd8565b60408051601f1981840301815291905291506001016125f9565b61dead6001600160a01b0384161480159061267957506001600160a01b0383165f9081526101356020526040902054155b156109f8576109f8838383612d18565b5f80612694836111f3565b90506001600160a01b03811615801590610c7c5750806001600160a01b0316846001600160a01b031614806126ed57506001600160a01b038082165f908152606a602090815260408083209388168352929052205460ff165b80610c7c5750836001600160a01b0316612706846109bf565b6001600160a01b031614949350505050565b61272181613837565b60405160200161273391815260200190565b60408051601f1981840301815282825280516020918201205f85815260cb9092529181209190915582917f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9190a250565b826001600160a01b031661279782612cb9565b6001600160a01b0316146127fb5760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b6064820152608401610b3f565b6001600160a01b03821661285d5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610b3f565b61286883838361359f565b6128725f82613518565b6001600160a01b0383165f90815260686020526040812080546001929061289a908490614db0565b90915550506001600160a01b0382165f9081526068602052604081208054600192906128c7908490614d37565b90915550505f8181526067602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b5f5b8481101561113957612977868683818110612946576129466148ed565b9050602002013585858481811061295f5761295f6148ed565b90506020028101906129719190614901565b85612bf6565b600101612929565b5f8051602061508f833981519152545f906001600160a01b03168015612a755760405163721804d360e11b81523060048201525f906001600160a01b0383169063e43009a690602401602060405180830381865afa1580156129e3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612a079190614e13565b60405163e66f960360e01b8152600481018290529091506001600160a01b0383169063e66f960390602401602060405180830381865afa158015612a4d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612a719190614e2a565b9250505b5090565b5f612a8382612cb9565b9050612a90815f8461359f565b612a9a5f83613518565b6001600160a01b0381165f908152606860205260408120805460019290612ac2908490614db0565b90915550505f8281526067602052604080822080546001600160a01b0319169055518391906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b5f8585604051602001612b2f929190614e45565b60408051601f198184030181528282528051602091820120601f8901829004820284018201909252878352909250612b8291839189908990819084018382808284375f92019190915250612c9592505050565b6111398187878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8b0181900481028201810190925289815292508991508890819084018382808284375f9201919091525088925061385d915050565b612bff84613989565b612c4b5760405162461bcd60e51b815260206004820152601c60248201527f5265636f726453746f726167653a204b45595f4e4f545f464f554e44000000006044820152606401610b3f565b61146684612c5886611904565b85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525087925061385d915050565b612c9e82613989565b61104f575f82815260c9602052604090206109f88282614e54565b5f818152606760205260408120546001600160a01b0316806109295760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b3f565b5f828152610138602052604090208054612d31906148a2565b90505f03612d53575f82815261013860205260409020612d518282614e54565b505b6001600160a01b0383165f8181526101356020526040808220859055518492917feb76a21470988c474a21f690cc28fee1ed511bd812dc3c21fd0f49c5e5d4708a91a3505050565b606080612da784611904565b9150612db38484613679565b90509250929050565b5f818152610137602052604081205460ff16801561092957506101365f612de161220e565b6001600160a01b0316815260208101919091526040015f205460ff1692915050565b5f8051602061508f83398151915254604051633805550f60e01b81526001600160a01b03909116908190633805550f90612e439086908690600401614b61565b5f604051808303815f87803b158015612e5a575f80fd5b505af1158015610ec1573d5f803e3d5ffd5b816001600160a01b0316836001600160a01b031603612ecd5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610b3f565b6001600160a01b038381165f818152606a6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015612f7d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612fa19190614e13565b90505f61304e866060015180519060200120868860200151604051602001612fee9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561307457508551613074906001600160a01b031682866139ae565b9695505050505050565b5f30330361308e5750601f193601355b90565b60608285856040516020016130a893929190614f0f565b6040516020818303038152906040529050949350505050565b606081516001600160401b038111156130dc576130dc61434d565b60405190808252806020026020018201604052801561310f57816020015b60608152602001906001900390816130fa5790505b5090505f5b82518110156113c0575f80306001600160a01b031685848151811061313b5761313b6148ed565b60200260200101516040516131509190614a21565b5f60405180830381855af49150503d805f8114613188576040519150601f19603f3d011682016040523d82523d5f602084013e61318d565b606091505b50915091506131b582826040518060600160405280602781526020016150af60279139613754565b8484815181106131c7576131c76148ed565b60209081029190910101525050600101613114565b6131e7848484612784565b6131f384848484613ae9565b6114665760405162461bcd60e51b8152600401610b3f90614f4d565b5f818152610137602052604090205460ff16156111915760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a20544f4b454e5f555047524144454400000000000000006044820152606401610b3f565b613278848461221c565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952836040516132a89190613e32565b60405180910390a2801561146657611466848484612648565b6060610133805461093e906148a2565b6060815f036132f75750506040805180820190915260018152600360fc1b602082015290565b815f5b8115613320578061330a81614f9f565b91506133199050600a83614d89565b91506132fa565b5f816001600160401b038111156133395761333961434d565b6040519080825280601f01601f191660200182016040528015613363576020820181803683370190505b5090505b8415610c7c57613378600183614db0565b9150613385600a86614fb7565b613390906030614d37565b60f81b8183815181106133a5576133a56148ed565b60200101906001600160f81b03191690815f1a9053506133c6600a86614d89565b9450613367565b6133d681612718565b610e6d8585858585612571565b6001600160a01b0381165f8181526101356020526040808220829055517ffcf5eec0cfa3e6332f5f0e63ec242d71f866a61d121d6cdf5c2eb3b668a26c4f9190a250565b5f54610100900460ff1661344d5760405162461bcd60e51b8152600401610b3f90614fca565b60656134598382614e54565b5060666109f88282614e54565b5f54610100900460ff1661348c5760405162461bcd60e51b8152600401610b3f90614fca565b565b5f54610100900460ff166134b45760405162461bcd60e51b8152600401610b3f90614fca565b61119181613bea565b5f54610100900460ff166134e35760405162461bcd60e51b8152600401610b3f90614fca565b61119181613c41565b5f8181526101006020526040902054613506906001614d37565b5f918252610100602052604090912055565b5f81815260696020526040902080546001600160a01b0319166001600160a01b038416908117909155819061354c82612cb9565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b5f30330361359a575060331936013560601c90565b503390565b6001600160a01b0382166135b6576135b68161320f565b5f81815261013960205260409020546001600160401b031615613650576001600160a01b0382161580159061360457506135ee61297f565b6001600160a01b0316826001600160a01b031614155b6136505760405162461bcd60e51b815260206004820152601960248201527f52656769737472793a20544f4b454e5f455850495241424c45000000000000006044820152606401610b3f565b6001600160a01b0383165f90815261013560205260409020548190036109f8576109f8836133e3565b606061368482612dbc565b1561369d575060408051602081019091525f8152610929565b60ca5f6136a984613837565b81526020019081526020015f205f8481526020019081526020015f2080546136d0906148a2565b80601f01602080910402602001604051908101604052809291908181526020018280546136fc906148a2565b80156137475780601f1061371e57610100808354040283529160200191613747565b820191905f5260205f20905b81548152906001019060200180831161372a57829003601f168201915b5050505050905092915050565b60608315613763575081610d85565b8251156137735782518084602001fd5b8160405162461bcd60e51b8152600401610b3f9190613e32565b5f81515f036137d65760405162461bcd60e51b815260206004820152601560248201527452656769737472793a204c4142454c5f454d50545960581b6044820152606401610b3f565b82826040516020016137e89190614a21565b60405160208183030381529060405280519060200120604051602001613818929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b5f81815260cb602052604081205415612a75575f82815260cb6020526040902054610929565b60ca5f61386983613837565b81526020019081526020015f205f8581526020019081526020015f208054613890906148a2565b90505f036138e757826040516138a69190614a21565b6040518091039020817f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f86856040516138de9190613e32565b60405180910390a35b8160ca5f6138f484613837565b81526020019081526020015f205f8681526020019081526020015f20908161391c9190614e54565b508160405161392b9190614a21565b6040518091039020836040516139419190614a21565b6040518091039020827f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d92868660405161397b929190614542565b60405180910390a450505050565b5f81815260c96020526040812080548291906139a4906148a2565b9050119050919050565b5f805f6139bb8585613c8e565b90925090505f8160048111156139d3576139d3615015565b1480156139f15750856001600160a01b0316826001600160a01b0316145b15613a0157600192505050610d85565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401613a28929190615029565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051613a669190614a21565b5f60405180830381855afa9150503d805f8114613a9e576040519150601f19603f3d011682016040523d82523d5f602084013e613aa3565b606091505b5091509150818015613ab6575080516020145b8015613add57508051630b135d3f60e11b90613adb9083016020908101908401614e13565b145b98975050505050505050565b5f6001600160a01b0384163b15613be257836001600160a01b031663150b7a02613b1161220e565b8786866040518563ffffffff1660e01b8152600401613b339493929190615041565b6020604051808303815f875af1925050508015613b6d575060408051601f3d908101601f19168201909252613b6a91810190615073565b60015b613bc8573d808015613b9a576040519150601f19603f3d011682016040523d82523d5f602084013e613b9f565b606091505b5080515f03613bc05760405162461bcd60e51b8152600401610b3f90614f4d565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610c7c565b506001610c7c565b5f54610100900460ff16613c105760405162461bcd60e51b8152600401610b3f90614fca565b805f8051602061508f8339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b5f54610100900460ff16613c675760405162461bcd60e51b8152600401610b3f90614fca565b807f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87613c20565b5f808251604103613cc2576020830151604084015160608501515f1a613cb687828585613cd0565b94509450505050613cc9565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613d0557505f90506003613dac565b8460ff16601b14158015613d1d57508460ff16601c14155b15613d2d57505f90506004613dac565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613d7e573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b038116613da6575f60019250925050613dac565b91505f90505b94509492505050565b6001600160e01b031981168114611191575f80fd5b5f60208284031215613dda575f80fd5b8135610d8581613db5565b5f5b83811015613dff578181015183820152602001613de7565b50505f910152565b5f8151808452613e1e816020860160208601613de5565b601f01601f19169290920160200192915050565b602081525f610d856020830184613e07565b5f60208284031215613e54575f80fd5b5035919050565b6001600160a01b0381168114611191575f80fd5b5f8060408385031215613e80575f80fd5b8235613e8b81613e5b565b946020939093013593505050565b5f8083601f840112613ea9575f80fd5b5081356001600160401b03811115613ebf575f80fd5b602083019150836020828501011115613cc9575f80fd5b5f805f805f60808688031215613eea575f80fd5b8535613ef581613e5b565b94506020860135613f0581613e5b565b93506040860135925060608601356001600160401b03811115613f26575f80fd5b613f3288828901613e99565b969995985093965092949392505050565b5f8083601f840112613f53575f80fd5b5081356001600160401b03811115613f69575f80fd5b6020830191508360208260051b8501011115613cc9575f80fd5b5f805f60408486031215613f95575f80fd5b83356001600160401b03811115613faa575f80fd5b613fb686828701613f43565b909790965060209590950135949350505050565b5f8282518085526020808601955060208260051b840101602086015f5b8481101561401557601f19868403018952614003838351613e07565b98840198925090830190600101613fe7565b5090979650505050505050565b602081525f610d856020830184613fca565b5f805f60408486031215614046575f80fd5b83356001600160401b0381111561405b575f80fd5b613fb686828701613e99565b5f805f60408486031215614079575f80fd5b83356001600160401b038082111561408f575f80fd5b90850190608082880312156140a2575f80fd5b909350602085013590808211156140b7575f80fd5b506140c486828701613e99565b9497909650939450505050565b8035801515811461120a575f80fd5b5f805f805f805f8060a0898b0312156140f7575f80fd5b883561410281613e5b565b975060208901356001600160401b038082111561411d575f80fd5b6141298c838d01613f43565b909950975060408b0135915080821115614141575f80fd5b61414d8c838d01613f43565b909750955060608b0135915080821115614165575f80fd5b506141728b828c01613f43565b9094509250614185905060808a016140d1565b90509295985092959890939650565b5f805f606084860312156141a6575f80fd5b83356141b181613e5b565b925060208401356141c181613e5b565b929592945050506040919091013590565b5f80602083850312156141e3575f80fd5b82356001600160401b038111156141f8575f80fd5b61420485828601613f43565b90969095509350505050565b5f805f805f60608688031215614224575f80fd5b85356001600160401b038082111561423a575f80fd5b61424689838a01613f43565b9097509550602088013591508082111561425e575f80fd5b5061426b88828901613f43565b96999598509660400135949350505050565b5f806040838503121561428e575f80fd5b82356001600160401b0381168114613e8b575f80fd5b5f805f805f606086880312156142b8575f80fd5b85356001600160401b03808211156142ce575f80fd5b6142da89838a01613e99565b909750955060208801359150808211156142f2575f80fd5b5061426b88828901613e99565b5f805f8060608587031215614312575f80fd5b8435935060208501356001600160401b0381111561432e575f80fd5b61433a87828801613e99565b9598909750949560400135949350505050565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f191681016001600160401b03811182821017156143895761438961434d565b604052919050565b5f82601f8301126143a0575f80fd5b81356001600160401b038111156143b9576143b961434d565b6143cc601f8201601f1916602001614361565b8181528460208386010111156143e0575f80fd5b816020850160208301375f918101602001919091529392505050565b5f6020828403121561440c575f80fd5b81356001600160401b03811115614421575f80fd5b610c7c84828501614391565b5f6020828403121561443d575f80fd5b8135610d8581613e5b565b5f6001600160401b038211156144605761446061434d565b5060051b60200190565b5f61447c61447784614448565b614361565b8381529050602080820190600585901b84018681111561449a575f80fd5b845b818110156144d35780356001600160401b038111156144b9575f80fd5b6144c589828901614391565b85525092820192820161449c565b505050509392505050565b5f602082840312156144ee575f80fd5b81356001600160401b03811115614503575f80fd5b8201601f81018413614513575f80fd5b610c7c8482356020840161446a565b5f8060408385031215614533575f80fd5b50508035926020909101359150565b604081525f6145546040830185613e07565b8281036020840152610d818185613e07565b5f805f8060608587031215614579575f80fd5b843561458481613e5b565b93506020850135925060408501356001600160401b038111156145a5575f80fd5b6145b187828801613e99565b95989497509550505050565b5f805f805f805f6080888a0312156145d3575f80fd5b87356001600160401b03808211156145e9575f80fd5b6145f58b838c01613e99565b909950975060208a0135965060408a0135915080821115614614575f80fd5b6146208b838c01613f43565b909650945060608a0135915080821115614638575f80fd5b506146458a828b01613f43565b989b979a50959850939692959293505050565b5f8060208385031215614669575f80fd5b82356001600160401b0381111561467e575f80fd5b61420485828601613e99565b5f806040838503121561469b575f80fd5b82356146a681613e5b565b9150612db3602084016140d1565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b8281101561470957603f198886030184526146f7858351613e07565b945092850192908501906001016146db565b5092979650505050505050565b604081525f6147286040830185613fca565b8281036020840152610d818185613fca565b5f805f806080858703121561474d575f80fd5b843561475881613e5b565b9350602085013561476881613e5b565b92506040850135915060608501356001600160401b03811115614789575f80fd5b61479587828801614391565b91505092959194509250565b5f805f604084860312156147b3575f80fd5b83356147be81613e5b565b925060208401356001600160401b038111156147d8575f80fd5b6140c486828701613e99565b5f80604083850312156147f5575f80fd5b823561480081613e5b565b9150602083013561481081613e5b565b809150509250929050565b5f805f6040848603121561482d575f80fd5b8335925060208401356001600160401b038111156147d8575f80fd5b5f805f806080858703121561485c575f80fd5b843561486781613e5b565b9350602085013561487781613e5b565b9250604085013561488781613e5b565b9150606085013561489781613e5b565b939692955090935050565b600181811c908216806148b657607f821691505b6020821081036113c057634e487b7160e01b5f52602260045260245ffd5b5f602082840312156148e4575f80fd5b610d85826140d1565b634e487b7160e01b5f52603260045260245ffd5b5f808335601e19843603018112614916575f80fd5b8301803591506001600160401b0382111561492f575f80fd5b602001915036819003821315613cc9575f80fd5b60208082526027908201527f52656769737472793a2053454e4445525f49535f4e4f545f4d494e54494e475f60408201526626a0a720a3a2a960c91b606082015260800190565b5f610d8536848461446a565b60208082526029908201527f52656769737472793a2053454e4445525f49535f4e4f545f415050524f5645446040820152682fa7a92fa7aba722a960b91b606082015260800190565b60208082526022908201527f52656769737472793a20494e53554646494349454e545f5045524d495353494f6040820152614e5360f01b606082015260800190565b5f8251614a32818460208701613de5565b9190910192915050565b601f8211156109f857805f5260205f20601f840160051c81016020851015614a615750805b601f840160051c820191505b81811015610e6d575f8155600101614a6d565b6001600160401b03831115614a9757614a9761434d565b614aab83614aa583546148a2565b83614a3c565b5f601f841160018114614adc575f8515614ac55750838201355b5f19600387901b1c1916600186901b178355610e6d565b5f83815260208120601f198716915b82811015614b0b5786850135825560209485019460019092019101614aeb565b5086821015614b27575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b602081525f610c7c602083018486614b39565b5f60808236031215614b84575f80fd5b604051608081016001600160401b038282108183111715614ba757614ba761434d565b8160405284359150614bb882613e5b565b81835260208501356020840152604085013560408401526060850135915080821115614be2575f80fd5b50614bef36828601614391565b60608301525092915050565b5f614c0861447784614448565b80848252602080830192508560051b850136811115614c25575f80fd5b855b81811015614c5e5780356001600160401b03811115614c44575f80fd5b614c5036828a01614391565b865250938201938201614c27565b50919695505050505050565b5f8351614c7b818460208801613de5565b835190830190614c8f818360208801613de5565b01949350505050565b5f6020808385031215614ca9575f80fd5b82356001600160401b03811115614cbe575f80fd5b8301601f81018513614cce575f80fd5b8035614cdc61447782614448565b81815260059190911b82018301908381019087831115614cfa575f80fd5b928401925b82841015614d1857833582529284019290840190614cff565b979650505050505050565b634e487b7160e01b5f52601160045260245ffd5b8082018082111561092957610929614d23565b6001600160a01b038481168252831660208201526060604082018190525f90610b4890830184613e07565b634e487b7160e01b5f52601260045260245ffd5b5f82614d9757614d97614d75565b500490565b634e487b7160e01b5f52600160045260245ffd5b8181038181111561092957610929614d23565b5f81614dd157614dd1614d23565b505f190190565b5f8351614de9818460208801613de5565b601760f91b9083019081528351614e07816001840160208801613de5565b01600101949350505050565b5f60208284031215614e23575f80fd5b5051919050565b5f60208284031215614e3a575f80fd5b8151610d8581613e5b565b818382375f9101908152919050565b81516001600160401b03811115614e6d57614e6d61434d565b614e8181614e7b84546148a2565b84614a3c565b602080601f831160018114614eb4575f8415614e9d5750858301515b5f19600386901b1c1916600185901b178555611139565b5f85815260208120601f198616915b82811015614ee257888601518255948401946001909101908401614ec3565b5085821015614eff57878501515f19600388901b60f8161c191681555b5050505050600190811b01905550565b5f8451614f20818460208901613de5565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b5f60018201614fb057614fb0614d23565b5060010190565b5f82614fc557614fc5614d75565b500690565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f610c7c6040830184613e07565b6001600160a01b03858116825284166020820152604081018390526080606082018190525f9061307490830184613e07565b5f60208284031215615083575f80fd5b8151610d8581613db556febe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000818000a", + "bytecode": "0x608060405234801561001057600080fd5b506152e6806100206000396000f3fe608060405234801561001057600080fd5b50600436106103af5760003560e01c80637e37479e116101f4578063ba5d40b71161011a578063e985e9c5116100ad578063f5c1f76e1161007c578063f5c1f76e146108d8578063f7df5c60146108eb578063f8c8765e146108fe578063ffa1ad741461091157600080fd5b8063e985e9c51461087a578063ebf0c717146108b6578063ec129eea146108bd578063f25eb5c1146108d057600080fd5b8063c87b56dd116100e9578063c87b56dd1461082e578063ce92b33e14610841578063cf2c52cb14610854578063d9548e531461086757600080fd5b8063ba5d40b7146107b3578063baef73e9146107c6578063bb5b27e114610808578063bebec6b41461081b57600080fd5b8063a22cb46511610192578063ac9650d811610161578063ac9650d81461074c578063b3f9e4cb1461076c578063b85afd281461077f578063b88d4fde146107a057600080fd5b8063a22cb465146106e7578063a3f4df7e146106fa578063a424740014610726578063ab3b87fe1461073957600080fd5b80639508b1c4116101ce5780639508b1c4146106b15780639559c0bd146106c457806395d89b41146106cc57806399e0dd7c146106d457600080fd5b80637e37479e146106785780637eee288d1461068b57806394d008ef1461069e57600080fd5b806342842e0e116102d95780635096023911610277578063663f7b2a11610246578063663f7b2a14610610578063672b9f81146106235780636ccbae5f1461064457806370a082311461066557600080fd5b806350960239146105bb578063572b6c05146105ce5780636352211e146105ea578063638e5c78146105fd57600080fd5b806347c81699116102b357806347c816991461056f5780634a72584d146105825780634f558e791461059557806350382c1a146105a857600080fd5b806342842e0e1461053657806342966c6814610549578063430c20811461055c57600080fd5b80631bf7e13e1161035157806327f189751161032057806327f18975146104ea578063310bd74b146104fd5780633f72ec6e1461051057806340c10f191461052357600080fd5b80631bf7e13e146104905780631f71be06146104a357806323b872dd146104b6578063276fabb1146104c957600080fd5b8063095ea7b31161038d578063095ea7b31461041c578063150b7a02146104315780631bd8cc1a1461045d5780631be5e7ed1461047d57600080fd5b806301ffc9a7146103b457806306fdde03146103dc578063081812fc146103f1575b600080fd5b6103c76103c2366004613f0b565b610935565b60405190151581526020015b60405180910390f35b6103e4610946565b6040516103d39190613f78565b6104046103ff366004613f8b565b6109d8565b6040516001600160a01b0390911681526020016103d3565b61042f61042a366004613fb9565b6109ff565b005b61044461043f366004614026565b610a18565b6040516001600160e01b031990911681526020016103d3565b61047061046b3660046140dc565b610b72565b6040516103d3919061417f565b6103e461048b366004614192565b610c68565b6103e461049e3660046141c9565b610cb3565b61042f6104b1366004614249565b610dbe565b61042f6104c4366004614305565b610e54565b6104dc6104d7366004614346565b610ea7565b6040519081526020016103d3565b61042f6104f8366004614387565b610eb6565b61042f61050b366004613f8b565b610efe565b61042f61051e3660046143fa565b610f39565b61042f610531366004613fb9565b61103b565b61042f610544366004614305565b611088565b61042f610557366004613f8b565b6110a3565b6103c761056a366004613fb9565b6110e7565b61042f61057d366004614424565b6110f3565b61042f610590366004614485565b611132565b6103c76105a3366004613f8b565b611178565b61042f6105b636600461458c565b611197565b61042f6105c93660046145c0565b6111cd565b6103c76105dc3660046145c0565b6001600160a01b0316301490565b6104046105f8366004613f8b565b61122d565b61042f61060b366004613f8b565b61124a565b61042f61061e366004614678565b611295565b6106366106313660046146c0565b611336565b6040516103d39291906146e2565b6104dc610652366004613f8b565b6000908152610100602052604090205490565b6104dc6106733660046145c0565b61134e565b6104dc6106863660046145c0565b6113d4565b61042f610699366004613fb9565b611405565b61042f6106ac366004614707565b61145c565b61042f6106bf366004614762565b6114ab565b6104dc601481565b6103e4611532565b61042f6106e2366004614805565b611541565b61042f6106f536600461483a565b6115c8565b6103e46040518060400160405280600d81526020016c554e533a20526567697374727960981b81525081565b6103c76107343660046141c9565b6115da565b61042f610747366004613fb9565b611625565b61075f61075a366004614346565b61166a565b6040516103d39190614866565b61040461077a366004613f8b565b611746565b61079261078d3660046140dc565b611770565b6040516103d39291906148c8565b61042f6107ae3660046148ed565b611892565b61042f6107c1366004614249565b6118d9565b6107f06107d4366004613f8b565b600090815261013960205260409020546001600160401b031690565b6040516001600160401b0390911681526020016103d3565b6103e4610816366004613f8b565b611962565b6103e46108293660046145c0565b611a04565b6103e461083c366004613f8b565b611ace565b61042f61084f366004614387565b611b34565b61042f610862366004614958565b611b73565b6103c7610875366004613f8b565b611c42565b6103c761088836600461499f565b6001600160a01b039182166000908152606a6020908152604080832093909416825291909152205460ff1690565b60006104dc565b61042f6108cb366004614387565b611c85565b61042f611cc4565b6104706108e6366004614346565b611d4b565b61042f6108f93660046149d8565b611dfe565b61042f61090c366004614a0a565b611e8f565b6103e460405180604001604052806005815260200164302e392e3160d81b81525081565b600061094082612065565b92915050565b60606065805461095590614a66565b80601f016020809104026020016040519081016040528092919081815260200182805461098190614a66565b80156109ce5780601f106109a3576101008083540402835291602001916109ce565b820191906000526020600020905b8154815290600101906020018083116109b157829003601f168201915b5050505050905090565b60006109e3826120b5565b506000908152606960205260409020546001600160a01b031690565b80610a0981612114565b610a13838361217a565b505050565b60007f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378546001600160a01b0316610a4d61229c565b6001600160a01b031603610b0e57610a6361229c565b6001600160a01b03166342966c68856040518263ffffffff1660e01b8152600401610a9091815260200190565b600060405180830381600087803b158015610aaa57600080fd5b505af1158015610abe573d6000803e3d6000fd5b505050821580159150610ad85750610ad882840184614a9a565b15610af657610ae730856122ab565b610af185856123f9565b610b00565b610b0085856122ab565b50630a85bd0160e11b610b69565b60405162461bcd60e51b815260206004820152602560248201527f52656769737472793a204552433732315f524543454956494e475f50524f4849604482015264109255115160da1b60648201526084015b60405180910390fd5b95945050505050565b6060826001600160401b03811115610b8c57610b8c6144d7565b604051908082528060200260200182016040528015610bbf57816020015b6060815260200190600190039081610baa5790505b50905060005b83811015610c6057610c30858583818110610be257610be2614ab5565b9050602002810190610bf49190614acb565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508792506124a4915050565b828281518110610c4257610c42614ab5565b60200260200101819052508080610c5890614b27565b915050610bc5565b509392505050565b6060610cab84848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508692506124a4915050565b949350505050565b606060005a9050610cc58585856115da565b610d215760405162461bcd60e51b815260206004820152602760248201527f554e535265676973747279466f727761726465723a205349474e41545552455f6044820152661253959053125160ca1b6064820152608401610b60565b610db3610d3160208701876145c0565b30604088013584610d4560608b018b614acb565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284376000920191909152506124d992505050565b9150505b9392505050565b610134546001600160a01b0316610dd361229c565b6001600160a01b031614610df95760405162461bcd60e51b8152600401610b6090614b40565b6000610e0d610e08888a614b87565b6125ba565b509050610e1a8982611405565b610e278686868685612612565b8115610e4957610e498982610e44610e3f8b8d614b87565b612680565b612701565b505050505050505050565b80610e66610e6061229c565b82612743565b610e825760405162461bcd60e51b8152600401610b6090614b94565b81610e8c81612114565b610e95836127d4565b610ea0858585612841565b5050505050565b6000610c60610e088385614b87565b80610ec2610e6061229c565b610ede5760405162461bcd60e51b8152600401610b6090614b94565b81610ee881612114565b610ef587878787876129e8565b50505050505050565b80610f0a610e6061229c565b610f265760405162461bcd60e51b8152600401610b6090614b94565b81610f3081612114565b610a13836127d4565b610134546001600160a01b0316610f4e61229c565b6001600160a01b031614610f745760405162461bcd60e51b8152600401610b6090614b40565b610f7d816120b5565b42826001600160401b031611610fd55760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a204558504952595f494e5f5041535400000000000000006044820152606401610b60565b60008181526101396020908152604091829020805467ffffffffffffffff19166001600160401b038616908117909155915191825282917f93feabb03ab84f47fc85bf0c298103fca21d8c8bc376eae0c1e1c56b9d4f7789910160405180910390a25050565b611043612a4b565b6001600160a01b031661105461229c565b6001600160a01b03161461107a5760405162461bcd60e51b8152600401610b6090614bdd565b61108482826122ab565b5050565b610a1383838360405180602001604052806000815250611892565b806110af610e6061229c565b6110cb5760405162461bcd60e51b8152600401610b6090614b94565b816110d581612114565b6110de836127d4565b610a1383612b4c565b6000610db78383612743565b806110ff610e6061229c565b61111b5760405162461bcd60e51b8152600401610b6090614b94565b8161112581612114565b610ef58787878787612bf3565b8061113e610e6061229c565b61115a5760405162461bcd60e51b8152600401610b6090614b94565b8161116481612114565b61117086868686612cd2565b505050505050565b6000818152606760205260408120546001600160a01b03161515610940565b6111ca816040516020016111ab9190614c1f565b6040516020818303038152906040528051906020012060001c82612d72565b50565b610134546001600160a01b03166111e261229c565b6001600160a01b0316146112085760405162461bcd60e51b8152600401610b6090614b40565b6001600160a01b0316600090815261013660205260409020805460ff19166001179055565b600061123882611c42565b6112455761094082612d97565b919050565b80611256610e6061229c565b6112725760405162461bcd60e51b8152600401610b6090614b94565b61128461127d61229c565b3084612841565b61108461128f61229c565b836123f9565b60006112a0826125ba565b5090506112ab61229c565b6001600160a01b03166112bd8261122d565b6001600160a01b0316146113135760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b60565b61131c81612114565b61108461132761229c565b8261133185612680565b612df7565b6060806113438484612e7e565b909590945092505050565b60006001600160a01b0382166113b85760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b6064820152608401610b60565b506001600160a01b031660009081526068602052604090205490565b6001600160a01b038116600090815261013560205260408120546113f781612e9f565b6113ff578091505b50919050565b610134546001600160a01b031661141a61229c565b6001600160a01b0316146114405760405162461bcd60e51b8152600401610b6090614b40565b611449816127d4565b61108461145582612d97565b8383612841565b611464612a4b565b6001600160a01b031661147561229c565b6001600160a01b03161461149b5760405162461bcd60e51b8152600401610b6090614bdd565b6114a584846122ab565b50505050565b6114b58787612ee9565b6114bd61229c565b6001600160a01b03166114cf8661122d565b6001600160a01b0316146115255760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b60565b610ef58484848489612612565b60606066805461095590614a66565b610134546001600160a01b031661155661229c565b6001600160a01b03161461157c5760405162461bcd60e51b8152600401610b6090614b40565b61013361158a828483614c81565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b82826040516115bc929190614d69565b60405180910390a15050565b6110846115d361229c565b8383612f58565b6000610cab6115e885614d7d565b3085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061302692505050565b80611631610e6061229c565b61164d5760405162461bcd60e51b8152600401610b6090614b94565b8161165781612114565b6114a561166384612d97565b8585612841565b606060006116788385614e07565b905030330361173d5760005b8381101561173b5761170b61169761229c565b61169f61316f565b8787858181106116b1576116b1614ab5565b90506020028101906116c39190614acb565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250613183915050565b82828151811061171d5761171d614ab5565b6020026020010181905250808061173390614b27565b915050611684565b505b610cab816131b3565b6000818152606760205260408120546001600160a01b0316611769576000610940565b3092915050565b606080836001600160401b0381111561178b5761178b6144d7565b6040519080825280602002602001820160405280156117be57816020015b60608152602001906001900390816117a95790505b509150836001600160401b038111156117d9576117d96144d7565b60405190808252806020026020018201604052801561180c57816020015b60608152602001906001900390816117f75790505b50905060005b848110156118895761183c86868381811061182f5761182f614ab5565b9050602002013585612e7e565b84838151811061184e5761184e614ab5565b6020026020010184848151811061186757611867614ab5565b602002602001018290528290525050808061188190614b27565b915050611812565b50935093915050565b8161189e610e6061229c565b6118ba5760405162461bcd60e51b8152600401610b6090614b94565b826118c481612114565b6118cd846127d4565b611170868686866132de565b610134546001600160a01b03166118ee61229c565b6001600160a01b0316146119145760405162461bcd60e51b8152600401610b6090614b40565b600080611924610e08898b614b87565b9150915061193181613311565b6119498a83611943610e3f8c8e614b87565b86613371565b6119568787878786612612565b50505050505050505050565b600081815260c96020526040902080546060919061197f90614a66565b80601f01602080910402602001604051908101604052809291908181526020018280546119ab90614a66565b80156119f85780601f106119cd576101008083540402835291602001916119f8565b820191906000526020600020905b8154815290600101906020018083116119db57829003601f168201915b50505050509050919050565b6001600160a01b03811660009081526101356020526040902054606090611a2a81612e9f565b6113ff576000818152610138602052604090208054611a4890614a66565b80601f0160208091040260200160405190810160405280929190818152602001828054611a7490614a66565b8015611ac15780601f10611a9657610100808354040283529160200191611ac1565b820191906000526020600020905b815481529060010190602001808311611aa457829003601f168201915b5050505050915050919050565b6060611ad9826120b5565b6000611ae36133c4565b90506000815111611b035760405180602001604052806000815250610db7565b80611b0d846133d4565b604051602001611b1e929190614e7a565b6040516020818303038152906040529392505050565b80611b40610e6061229c565b611b5c5760405162461bcd60e51b8152600401610b6090614b94565b81611b6681612114565b610ef58787878787612612565b7f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87546001600160a01b0316611ba661229c565b6001600160a01b031614611bcc5760405162461bcd60e51b8152600401610b6090614bdd565b6020819003611bef576000611be382840184613f8b565b90506114a584826122ab565b6000611bfd82840184614ea9565b805190915060005b8181101561117057611c3086848381518110611c2357611c23614ab5565b60200260200101516122ab565b80611c3a81614b27565b915050611c05565b600081815261013960205260408120546001600160401b03161580159061094057505060009081526101396020526040902054426001600160401b039091161090565b80611c91610e6061229c565b611cad5760405162461bcd60e51b8152600401610b6090614b94565b81611cb781612114565b610ef587878787876134d4565b6000611cce61229c565b6001600160a01b0381166000908152610135602052604081205491925003611d425760405162461bcd60e51b815260206004820152602160248201527f52656769737472793a20524556455253455f5245434f52445f49535f454d50546044820152605960f81b6064820152608401610b60565b6111ca816134ea565b6060816001600160401b03811115611d6557611d656144d7565b604051908082528060200260200182016040528015611d9857816020015b6060815260200190600190039081611d835790505b50905060005b82811015611df757611dc7848483818110611dbb57611dbb614ab5565b90506020020135611962565b828281518110611dd957611dd9614ab5565b60200260200101819052508080611def90614b27565b915050611d9e565b5092915050565b610134546001600160a01b0316611e1361229c565b6001600160a01b031614611e395760405162461bcd60e51b8152600401610b6090614b40565b61013454611e50906001600160a01b0316846122ab565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c39528383604051611e82929190614d69565b60405180910390a2505050565b600054610100900460ff1615808015611eaf5750600054600160ff909116105b80611ec95750303b158015611ec9575060005460ff166001145b611f2c5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610b60565b6000805460ff191660011790558015611f4f576000805461ff0019166101001790555b61013480546001600160a01b0319166001600160a01b038716179055837f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec9237880546001600160a01b0319166001600160a01b03929092169190911790556040805180820182526013815272556e73746f707061626c6520446f6d61696e7360681b60208083019190915282518084019093526002835261155160f21b90830152611ff79161352f565b611fff61356f565b61200761356f565b61201083613598565b612019826135c8565b8015610ea0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b60006001600160e01b031982166380ac58cd60e01b148061209657506001600160e01b03198216635b5e139f60e01b145b8061094057506301ffc9a760e01b6001600160e01b0319831614610940565b6000818152606760205260409020546001600160a01b03166111ca5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b60565b3033036121715761212361316f565b81146111ca5760405162461bcd60e51b815260206004820152601760248201527f52656769737472793a20544f4b454e5f494e56414c49440000000000000000006044820152606401610b60565b6111ca816135f8565b600061218582612d97565b9050806001600160a01b0316836001600160a01b0316036121f25760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b6064820152608401610b60565b806001600160a01b031661220461229c565b6001600160a01b0316148061222057506122208161088861229c565b6122925760405162461bcd60e51b815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c00006064820152608401610b60565b610a138383613626565b60006122a6613694565b905090565b6001600160a01b0382166123015760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610b60565b6000818152606760205260409020546001600160a01b0316156123665760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610b60565b612372600083836136af565b6001600160a01b038216600090815260686020526040812080546001929061239b908490614f39565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b03861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b6000612403612a4b565b905061240f8183613626565b60008051602061529383398151915254604080516020808201869052825180830390910181528183019283905263e3dec8fb60e01b9092526001600160a01b0390921691829163e3dec8fb9161246c918891309190604401614f4c565b600060405180830381600087803b15801561248657600080fd5b505af115801561249a573d6000803e3d6000fd5b5050505050505050565b6060610db7836040516020016124ba9190614c1f565b6040516020818303038152906040528051906020012060001c8361378b565b60606124e4856135f8565b600080876001600160a01b0316866124fe8b8a8989613183565b60405161250b9190614c1f565b60006040518083038160008787f1925050503d8060008114612549576040519150601f19603f3d011682016040523d82523d6000602084013e61254e565b606091505b50909250905061255f603f87614f8e565b5a1161256d5761256d614fa2565b6125ad82826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061386d565b9998505050505050505050565b805160009081905b801561260c578291506125f882856125db600185614fb8565b815181106125eb576125eb614ab5565b60200260200101516138a6565b92508061260481614fcb565b9150506125c2565b50915091565b60005b848110156111705761266e86868381811061263257612632614ab5565b90506020028101906126449190614acb565b86868581811061265657612656614ab5565b90506020028101906126689190614acb565b86612bf3565b8061267881614b27565b915050612615565b606060008260008151811061269757612697614ab5565b602002602001015190506000600190505b8351811015611df757818482815181106126c4576126c4614ab5565b60200260200101516040516020016126dd929190614fe2565b604051602081830303815290604052915080806126f990614b27565b9150506126a8565b61dead6001600160a01b0384161480159061273357506001600160a01b03831660009081526101356020526040902054155b15610a1357610a13838383612df7565b60008061274f8361122d565b90506001600160a01b03811615801590610cab5750806001600160a01b0316846001600160a01b031614806127a957506001600160a01b038082166000908152606a602090815260408083209388168352929052205460ff165b80610cab5750836001600160a01b03166127c2846109d8565b6001600160a01b031614949350505050565b6127dd81613952565b6040516020016127ef91815260200190565b60408051601f198184030181528282528051602091820120600085815260cb9092529181209190915582917f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9190a250565b826001600160a01b031661285482612d97565b6001600160a01b0316146128b85760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b6064820152608401610b60565b6001600160a01b03821661291a5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610b60565b6129258383836136af565b612930600082613626565b6001600160a01b0383166000908152606860205260408120805460019290612959908490614fb8565b90915550506001600160a01b0382166000908152606860205260408120805460019290612987908490614f39565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60005b8481101561117057612a39868683818110612a0857612a08614ab5565b90506020020135858584818110612a2157612a21614ab5565b9050602002810190612a339190614acb565b85612cd2565b80612a4381614b27565b9150506129eb565b600080516020615293833981519152546000906001600160a01b03168015612b485760405163721804d360e11b81523060048201526000906001600160a01b0383169063e43009a690602401602060405180830381865afa158015612ab4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ad8919061501e565b60405163e66f960360e01b8152600481018290529091506001600160a01b0383169063e66f960390602401602060405180830381865afa158015612b20573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b449190615037565b9250505b5090565b6000612b5782612d97565b9050612b65816000846136af565b612b70600083613626565b6001600160a01b0381166000908152606860205260408120805460019290612b99908490614fb8565b909155505060008281526067602052604080822080546001600160a01b0319169055518391906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b60008585604051602001612c08929190615054565b60408051601f198184030181528282528051602091820120601f8901829004820284018201909252878352909250612c5c9183918990899081908401838280828437600092019190915250612d7292505050565b6111708187878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061397a915050565b612cdb84613aaf565b612d275760405162461bcd60e51b815260206004820152601c60248201527f5265636f726453746f726167653a204b45595f4e4f545f464f554e44000000006044820152606401610b60565b6114a584612d3486611962565b85858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525087925061397a915050565b612d7b82613aaf565b61108457600082815260c960205260409020610a138282615064565b6000818152606760205260408120546001600160a01b0316806109405760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b60565b6000828152610138602052604090208054612e1190614a66565b9050600003612e3557600082815261013860205260409020612e338282615064565b505b6001600160a01b03831660008181526101356020526040808220859055518492917feb76a21470988c474a21f690cc28fee1ed511bd812dc3c21fd0f49c5e5d4708a91a3505050565b606080612e8a84611962565b9150612e96848461378b565b90509250929050565b6000818152610137602052604081205460ff16801561094057506101366000612ec661229c565b6001600160a01b0316815260208101919091526040016000205460ff1692915050565b60008051602061529383398151915254604051633805550f60e01b81526001600160a01b03909116908190633805550f90612f2a9086908690600401614d69565b600060405180830381600087803b158015612f4457600080fd5b505af1158015610ef5573d6000803e3d6000fd5b816001600160a01b0316836001600160a01b031603612fb95760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610b60565b6001600160a01b038381166000818152606a6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561306d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613091919061501e565b9050600061313f8660600151805190602001208688602001516040516020016130df9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561316557508551613165906001600160a01b03168286613ad5565b9695505050505050565b60003033036131805750601f193601355b90565b606082858560405160200161319a93929190615123565b6040516020818303038152906040529050949350505050565b606081516001600160401b038111156131ce576131ce6144d7565b60405190808252806020026020018201604052801561320157816020015b60608152602001906001900390816131ec5790505b50905060005b82518110156113ff57600080306001600160a01b031685848151811061322f5761322f614ab5565b60200260200101516040516132449190614c1f565b600060405180830381855af49150503d806000811461327f576040519150601f19603f3d011682016040523d82523d6000602084013e613284565b606091505b50915091506132ac82826040518060600160405280602781526020016152b36027913961386d565b8484815181106132be576132be614ab5565b6020026020010181905250505080806132d690614b27565b915050613207565b6132e9848484612841565b6132f584848484613c17565b6114a55760405162461bcd60e51b8152600401610b6090615162565b6000818152610137602052604090205460ff16156111ca5760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a20544f4b454e5f555047524144454400000000000000006044820152606401610b60565b61337b84846122ab565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952836040516133ab9190613f78565b60405180910390a280156114a5576114a5848484612701565b6060610133805461095590614a66565b6060816000036133fb5750506040805180820190915260018152600360fc1b602082015290565b8160005b8115613425578061340f81614b27565b915061341e9050600a83614f8e565b91506133ff565b6000816001600160401b0381111561343f5761343f6144d7565b6040519080825280601f01601f191660200182016040528015613469576020820181803683370190505b5090505b8415610cab5761347e600183614fb8565b915061348b600a866151b4565b613496906030614f39565b60f81b8183815181106134ab576134ab614ab5565b60200101906001600160f81b031916908160001a9053506134cd600a86614f8e565b945061346d565b6134dd816127d4565b610ea08585858585612612565b6001600160a01b03811660008181526101356020526040808220829055517ffcf5eec0cfa3e6332f5f0e63ec242d71f866a61d121d6cdf5c2eb3b668a26c4f9190a250565b600054610100900460ff166135565760405162461bcd60e51b8152600401610b60906151c8565b60656135628382615064565b506066610a138282615064565b600054610100900460ff166135965760405162461bcd60e51b8152600401610b60906151c8565b565b600054610100900460ff166135bf5760405162461bcd60e51b8152600401610b60906151c8565b6111ca81613d1c565b600054610100900460ff166135ef5760405162461bcd60e51b8152600401610b60906151c8565b6111ca81613d75565b60008181526101006020526040902054613613906001614f39565b6000918252610100602052604090912055565b600081815260696020526040902080546001600160a01b0319166001600160a01b038416908117909155819061365b82612d97565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60003033036136aa575060331936013560601c90565b503390565b6001600160a01b0382166136c6576136c681613311565b600081815261013960205260409020546001600160401b031615613761576001600160a01b0382161580159061371557506136ff612a4b565b6001600160a01b0316826001600160a01b031614155b6137615760405162461bcd60e51b815260206004820152601960248201527f52656769737472793a20544f4b454e5f455850495241424c45000000000000006044820152606401610b60565b6001600160a01b03831660009081526101356020526040902054819003610a1357610a13836134ea565b606061379682612e9f565b156137b05750604080516020810190915260008152610940565b60ca60006137bd84613952565b8152602001908152602001600020600084815260200190815260200160002080546137e790614a66565b80601f016020809104026020016040519081016040528092919081815260200182805461381390614a66565b80156138605780601f1061383557610100808354040283529160200191613860565b820191906000526020600020905b81548152906001019060200180831161384357829003601f168201915b5050505050905092915050565b6060831561387c575081610db7565b82511561388c5782518084602001fd5b8160405162461bcd60e51b8152600401610b609190613f78565b600081516000036138f15760405162461bcd60e51b815260206004820152601560248201527452656769737472793a204c4142454c5f454d50545960581b6044820152606401610b60565b82826040516020016139039190614c1f565b60405160208183030381529060405280519060200120604051602001613933929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b600081815260cb602052604081205415612b4857600082815260cb6020526040902054610940565b60ca600061398783613952565b8152602001908152602001600020600085815260200190815260200160002080546139b190614a66565b9050600003613a0957826040516139c89190614c1f565b6040518091039020817f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f8685604051613a009190613f78565b60405180910390a35b8160ca6000613a1784613952565b815260200190815260200160002060008681526020019081526020016000209081613a429190615064565b5081604051613a519190614c1f565b604051809103902083604051613a679190614c1f565b6040518091039020827f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d928686604051613aa19291906146e2565b60405180910390a450505050565b600081815260c9602052604081208054829190613acb90614a66565b9050119050919050565b6000806000613ae48585613dc3565b90925090506000816004811115613afd57613afd615213565b148015613b1b5750856001600160a01b0316826001600160a01b0316145b15613b2b57600192505050610db7565b600080876001600160a01b0316631626ba7e60e01b8888604051602401613b53929190615229565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051613b919190614c1f565b600060405180830381855afa9150503d8060008114613bcc576040519150601f19603f3d011682016040523d82523d6000602084013e613bd1565b606091505b5091509150818015613be4575080516020145b8015613c0b57508051630b135d3f60e11b90613c09908301602090810190840161501e565b145b98975050505050505050565b60006001600160a01b0384163b15613d1457836001600160a01b031663150b7a02613c4061229c565b8786866040518563ffffffff1660e01b8152600401613c629493929190615242565b6020604051808303816000875af1925050508015613c9d575060408051601f3d908101601f19168201909252613c9a91810190615275565b60015b613cfa573d808015613ccb576040519150601f19603f3d011682016040523d82523d6000602084013e613cd0565b606091505b508051600003613cf25760405162461bcd60e51b8152600401610b6090615162565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610cab565b506001610cab565b600054610100900460ff16613d435760405162461bcd60e51b8152600401610b60906151c8565b806000805160206152938339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b600054610100900460ff16613d9c5760405162461bcd60e51b8152600401610b60906151c8565b807f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87613d54565b6000808251604103613df95760208301516040840151606085015160001a613ded87828585613e08565b94509450505050613e01565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613e3f5750600090506003613eec565b8460ff16601b14158015613e5757508460ff16601c14155b15613e685750600090506004613eec565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613ebc573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613ee557600060019250925050613eec565b9150600090505b94509492505050565b6001600160e01b0319811681146111ca57600080fd5b600060208284031215613f1d57600080fd5b8135610db781613ef5565b60005b83811015613f43578181015183820152602001613f2b565b50506000910152565b60008151808452613f64816020860160208601613f28565b601f01601f19169290920160200192915050565b602081526000610db76020830184613f4c565b600060208284031215613f9d57600080fd5b5035919050565b6001600160a01b03811681146111ca57600080fd5b60008060408385031215613fcc57600080fd5b8235613fd781613fa4565b946020939093013593505050565b60008083601f840112613ff757600080fd5b5081356001600160401b0381111561400e57600080fd5b602083019150836020828501011115613e0157600080fd5b60008060008060006080868803121561403e57600080fd5b853561404981613fa4565b9450602086013561405981613fa4565b93506040860135925060608601356001600160401b0381111561407b57600080fd5b61408788828901613fe5565b969995985093965092949392505050565b60008083601f8401126140aa57600080fd5b5081356001600160401b038111156140c157600080fd5b6020830191508360208260051b8501011115613e0157600080fd5b6000806000604084860312156140f157600080fd5b83356001600160401b0381111561410757600080fd5b61411386828701614098565b909790965060209590950135949350505050565b600082825180855260208086019550808260051b84010181860160005b8481101561417257601f19868403018952614160838351613f4c565b98840198925090830190600101614144565b5090979650505050505050565b602081526000610db76020830184614127565b6000806000604084860312156141a757600080fd5b83356001600160401b038111156141bd57600080fd5b61411386828701613fe5565b6000806000604084860312156141de57600080fd5b83356001600160401b03808211156141f557600080fd5b908501906080828803121561420957600080fd5b9093506020850135908082111561421f57600080fd5b5061422c86828701613fe5565b9497909650939450505050565b8035801515811461124557600080fd5b60008060008060008060008060a0898b03121561426557600080fd5b883561427081613fa4565b975060208901356001600160401b038082111561428c57600080fd5b6142988c838d01614098565b909950975060408b01359150808211156142b157600080fd5b6142bd8c838d01614098565b909750955060608b01359150808211156142d657600080fd5b506142e38b828c01614098565b90945092506142f6905060808a01614239565b90509295985092959890939650565b60008060006060848603121561431a57600080fd5b833561432581613fa4565b9250602084013561433581613fa4565b929592945050506040919091013590565b6000806020838503121561435957600080fd5b82356001600160401b0381111561436f57600080fd5b61437b85828601614098565b90969095509350505050565b60008060008060006060868803121561439f57600080fd5b85356001600160401b03808211156143b657600080fd5b6143c289838a01614098565b909750955060208801359150808211156143db57600080fd5b506143e888828901614098565b96999598509660400135949350505050565b6000806040838503121561440d57600080fd5b82356001600160401b0381168114613fd757600080fd5b60008060008060006060868803121561443c57600080fd5b85356001600160401b038082111561445357600080fd5b61445f89838a01613fe5565b9097509550602088013591508082111561447857600080fd5b506143e888828901613fe5565b6000806000806060858703121561449b57600080fd5b8435935060208501356001600160401b038111156144b857600080fd5b6144c487828801613fe5565b9598909750949560400135949350505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715614515576145156144d7565b604052919050565b600082601f83011261452e57600080fd5b81356001600160401b03811115614547576145476144d7565b61455a601f8201601f19166020016144ed565b81815284602083860101111561456f57600080fd5b816020850160208301376000918101602001919091529392505050565b60006020828403121561459e57600080fd5b81356001600160401b038111156145b457600080fd5b610cab8482850161451d565b6000602082840312156145d257600080fd5b8135610db781613fa4565b60006001600160401b038211156145f6576145f66144d7565b5060051b60200190565b600061461361460e846145dd565b6144ed565b8381529050602080820190600585901b84018681111561463257600080fd5b845b8181101561466d5780356001600160401b038111156146535760008081fd5b61465f8982890161451d565b855250928201928201614634565b505050509392505050565b60006020828403121561468a57600080fd5b81356001600160401b038111156146a057600080fd5b8201601f810184136146b157600080fd5b610cab84823560208401614600565b600080604083850312156146d357600080fd5b50508035926020909101359150565b6040815260006146f56040830185613f4c565b8281036020840152610db38185613f4c565b6000806000806060858703121561471d57600080fd5b843561472881613fa4565b93506020850135925060408501356001600160401b0381111561474a57600080fd5b61475687828801613fe5565b95989497509550505050565b60008060008060008060006080888a03121561477d57600080fd5b87356001600160401b038082111561479457600080fd5b6147a08b838c01613fe5565b909950975060208a0135965060408a01359150808211156147c057600080fd5b6147cc8b838c01614098565b909650945060608a01359150808211156147e557600080fd5b506147f28a828b01614098565b989b979a50959850939692959293505050565b6000806020838503121561481857600080fd5b82356001600160401b0381111561482e57600080fd5b61437b85828601613fe5565b6000806040838503121561484d57600080fd5b823561485881613fa4565b9150612e9660208401614239565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156148bb57603f198886030184526148a9858351613f4c565b9450928501929085019060010161488d565b5092979650505050505050565b6040815260006148db6040830185614127565b8281036020840152610db38185614127565b6000806000806080858703121561490357600080fd5b843561490e81613fa4565b9350602085013561491e81613fa4565b92506040850135915060608501356001600160401b0381111561494057600080fd5b61494c8782880161451d565b91505092959194509250565b60008060006040848603121561496d57600080fd5b833561497881613fa4565b925060208401356001600160401b0381111561499357600080fd5b61422c86828701613fe5565b600080604083850312156149b257600080fd5b82356149bd81613fa4565b915060208301356149cd81613fa4565b809150509250929050565b6000806000604084860312156149ed57600080fd5b8335925060208401356001600160401b0381111561499357600080fd5b60008060008060808587031215614a2057600080fd5b8435614a2b81613fa4565b93506020850135614a3b81613fa4565b92506040850135614a4b81613fa4565b91506060850135614a5b81613fa4565b939692955090935050565b600181811c90821680614a7a57607f821691505b6020821081036113ff57634e487b7160e01b600052602260045260246000fd5b600060208284031215614aac57600080fd5b610db782614239565b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112614ae257600080fd5b8301803591506001600160401b03821115614afc57600080fd5b602001915036819003821315613e0157600080fd5b634e487b7160e01b600052601160045260246000fd5b600060018201614b3957614b39614b11565b5060010190565b60208082526027908201527f52656769737472793a2053454e4445525f49535f4e4f545f4d494e54494e475f60408201526626a0a720a3a2a960c91b606082015260800190565b6000610db7368484614600565b60208082526029908201527f52656769737472793a2053454e4445525f49535f4e4f545f415050524f5645446040820152682fa7a92fa7aba722a960b91b606082015260800190565b60208082526022908201527f52656769737472793a20494e53554646494349454e545f5045524d495353494f6040820152614e5360f01b606082015260800190565b60008251614c31818460208701613f28565b9190910192915050565b601f821115610a1357600081815260208120601f850160051c81016020861015614c625750805b601f850160051c820191505b8181101561117057828155600101614c6e565b6001600160401b03831115614c9857614c986144d7565b614cac83614ca68354614a66565b83614c3b565b6000601f841160018114614ce05760008515614cc85750838201355b600019600387901b1c1916600186901b178355610ea0565b600083815260209020601f19861690835b82811015614d115786850135825560209485019460019092019101614cf1565b5086821015614d2e5760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b602081526000610cab602083018486614d40565b600060808236031215614d8f57600080fd5b604051608081016001600160401b038282108183111715614db257614db26144d7565b8160405284359150614dc382613fa4565b81835260208501356020840152604085013560408401526060850135915080821115614dee57600080fd5b50614dfb3682860161451d565b60608301525092915050565b6000614e1561460e846145dd565b80848252602080830192508560051b850136811115614e3357600080fd5b855b81811015614e6e5780356001600160401b03811115614e545760008081fd5b614e6036828a0161451d565b865250938201938201614e35565b50919695505050505050565b60008351614e8c818460208801613f28565b835190830190614ea0818360208801613f28565b01949350505050565b60006020808385031215614ebc57600080fd5b82356001600160401b03811115614ed257600080fd5b8301601f81018513614ee357600080fd5b8035614ef161460e826145dd565b81815260059190911b82018301908381019087831115614f1057600080fd5b928401925b82841015614f2e57833582529284019290840190614f15565b979650505050505050565b8082018082111561094057610940614b11565b6001600160a01b03848116825283166020820152606060408201819052600090610b6990830184613f4c565b634e487b7160e01b600052601260045260246000fd5b600082614f9d57614f9d614f78565b500490565b634e487b7160e01b600052600160045260246000fd5b8181038181111561094057610940614b11565b600081614fda57614fda614b11565b506000190190565b60008351614ff4818460208801613f28565b601760f91b9083019081528351615012816001840160208801613f28565b01600101949350505050565b60006020828403121561503057600080fd5b5051919050565b60006020828403121561504957600080fd5b8151610db781613fa4565b8183823760009101908152919050565b81516001600160401b0381111561507d5761507d6144d7565b6150918161508b8454614a66565b84614c3b565b602080601f8311600181146150c657600084156150ae5750858301515b600019600386901b1c1916600185901b178555611170565b600085815260208120601f198616915b828110156150f5578886015182559484019460019091019084016150d6565b50858210156151135787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60008451615135818460208901613f28565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6000826151c3576151c3614f78565b500690565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b634e487b7160e01b600052602160045260246000fd5b828152604060208201526000610cab6040830184613f4c565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061316590830184613f4c565b60006020828403121561528757600080fd5b8151610db781613ef556febe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106103af5760003560e01c80637e37479e116101f4578063ba5d40b71161011a578063e985e9c5116100ad578063f5c1f76e1161007c578063f5c1f76e146108d8578063f7df5c60146108eb578063f8c8765e146108fe578063ffa1ad741461091157600080fd5b8063e985e9c51461087a578063ebf0c717146108b6578063ec129eea146108bd578063f25eb5c1146108d057600080fd5b8063c87b56dd116100e9578063c87b56dd1461082e578063ce92b33e14610841578063cf2c52cb14610854578063d9548e531461086757600080fd5b8063ba5d40b7146107b3578063baef73e9146107c6578063bb5b27e114610808578063bebec6b41461081b57600080fd5b8063a22cb46511610192578063ac9650d811610161578063ac9650d81461074c578063b3f9e4cb1461076c578063b85afd281461077f578063b88d4fde146107a057600080fd5b8063a22cb465146106e7578063a3f4df7e146106fa578063a424740014610726578063ab3b87fe1461073957600080fd5b80639508b1c4116101ce5780639508b1c4146106b15780639559c0bd146106c457806395d89b41146106cc57806399e0dd7c146106d457600080fd5b80637e37479e146106785780637eee288d1461068b57806394d008ef1461069e57600080fd5b806342842e0e116102d95780635096023911610277578063663f7b2a11610246578063663f7b2a14610610578063672b9f81146106235780636ccbae5f1461064457806370a082311461066557600080fd5b806350960239146105bb578063572b6c05146105ce5780636352211e146105ea578063638e5c78146105fd57600080fd5b806347c81699116102b357806347c816991461056f5780634a72584d146105825780634f558e791461059557806350382c1a146105a857600080fd5b806342842e0e1461053657806342966c6814610549578063430c20811461055c57600080fd5b80631bf7e13e1161035157806327f189751161032057806327f18975146104ea578063310bd74b146104fd5780633f72ec6e1461051057806340c10f191461052357600080fd5b80631bf7e13e146104905780631f71be06146104a357806323b872dd146104b6578063276fabb1146104c957600080fd5b8063095ea7b31161038d578063095ea7b31461041c578063150b7a02146104315780631bd8cc1a1461045d5780631be5e7ed1461047d57600080fd5b806301ffc9a7146103b457806306fdde03146103dc578063081812fc146103f1575b600080fd5b6103c76103c2366004613f0b565b610935565b60405190151581526020015b60405180910390f35b6103e4610946565b6040516103d39190613f78565b6104046103ff366004613f8b565b6109d8565b6040516001600160a01b0390911681526020016103d3565b61042f61042a366004613fb9565b6109ff565b005b61044461043f366004614026565b610a18565b6040516001600160e01b031990911681526020016103d3565b61047061046b3660046140dc565b610b72565b6040516103d3919061417f565b6103e461048b366004614192565b610c68565b6103e461049e3660046141c9565b610cb3565b61042f6104b1366004614249565b610dbe565b61042f6104c4366004614305565b610e54565b6104dc6104d7366004614346565b610ea7565b6040519081526020016103d3565b61042f6104f8366004614387565b610eb6565b61042f61050b366004613f8b565b610efe565b61042f61051e3660046143fa565b610f39565b61042f610531366004613fb9565b61103b565b61042f610544366004614305565b611088565b61042f610557366004613f8b565b6110a3565b6103c761056a366004613fb9565b6110e7565b61042f61057d366004614424565b6110f3565b61042f610590366004614485565b611132565b6103c76105a3366004613f8b565b611178565b61042f6105b636600461458c565b611197565b61042f6105c93660046145c0565b6111cd565b6103c76105dc3660046145c0565b6001600160a01b0316301490565b6104046105f8366004613f8b565b61122d565b61042f61060b366004613f8b565b61124a565b61042f61061e366004614678565b611295565b6106366106313660046146c0565b611336565b6040516103d39291906146e2565b6104dc610652366004613f8b565b6000908152610100602052604090205490565b6104dc6106733660046145c0565b61134e565b6104dc6106863660046145c0565b6113d4565b61042f610699366004613fb9565b611405565b61042f6106ac366004614707565b61145c565b61042f6106bf366004614762565b6114ab565b6104dc601481565b6103e4611532565b61042f6106e2366004614805565b611541565b61042f6106f536600461483a565b6115c8565b6103e46040518060400160405280600d81526020016c554e533a20526567697374727960981b81525081565b6103c76107343660046141c9565b6115da565b61042f610747366004613fb9565b611625565b61075f61075a366004614346565b61166a565b6040516103d39190614866565b61040461077a366004613f8b565b611746565b61079261078d3660046140dc565b611770565b6040516103d39291906148c8565b61042f6107ae3660046148ed565b611892565b61042f6107c1366004614249565b6118d9565b6107f06107d4366004613f8b565b600090815261013960205260409020546001600160401b031690565b6040516001600160401b0390911681526020016103d3565b6103e4610816366004613f8b565b611962565b6103e46108293660046145c0565b611a04565b6103e461083c366004613f8b565b611ace565b61042f61084f366004614387565b611b34565b61042f610862366004614958565b611b73565b6103c7610875366004613f8b565b611c42565b6103c761088836600461499f565b6001600160a01b039182166000908152606a6020908152604080832093909416825291909152205460ff1690565b60006104dc565b61042f6108cb366004614387565b611c85565b61042f611cc4565b6104706108e6366004614346565b611d4b565b61042f6108f93660046149d8565b611dfe565b61042f61090c366004614a0a565b611e8f565b6103e460405180604001604052806005815260200164302e392e3160d81b81525081565b600061094082612065565b92915050565b60606065805461095590614a66565b80601f016020809104026020016040519081016040528092919081815260200182805461098190614a66565b80156109ce5780601f106109a3576101008083540402835291602001916109ce565b820191906000526020600020905b8154815290600101906020018083116109b157829003601f168201915b5050505050905090565b60006109e3826120b5565b506000908152606960205260409020546001600160a01b031690565b80610a0981612114565b610a13838361217a565b505050565b60007f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378546001600160a01b0316610a4d61229c565b6001600160a01b031603610b0e57610a6361229c565b6001600160a01b03166342966c68856040518263ffffffff1660e01b8152600401610a9091815260200190565b600060405180830381600087803b158015610aaa57600080fd5b505af1158015610abe573d6000803e3d6000fd5b505050821580159150610ad85750610ad882840184614a9a565b15610af657610ae730856122ab565b610af185856123f9565b610b00565b610b0085856122ab565b50630a85bd0160e11b610b69565b60405162461bcd60e51b815260206004820152602560248201527f52656769737472793a204552433732315f524543454956494e475f50524f4849604482015264109255115160da1b60648201526084015b60405180910390fd5b95945050505050565b6060826001600160401b03811115610b8c57610b8c6144d7565b604051908082528060200260200182016040528015610bbf57816020015b6060815260200190600190039081610baa5790505b50905060005b83811015610c6057610c30858583818110610be257610be2614ab5565b9050602002810190610bf49190614acb565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508792506124a4915050565b828281518110610c4257610c42614ab5565b60200260200101819052508080610c5890614b27565b915050610bc5565b509392505050565b6060610cab84848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508692506124a4915050565b949350505050565b606060005a9050610cc58585856115da565b610d215760405162461bcd60e51b815260206004820152602760248201527f554e535265676973747279466f727761726465723a205349474e41545552455f6044820152661253959053125160ca1b6064820152608401610b60565b610db3610d3160208701876145c0565b30604088013584610d4560608b018b614acb565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284376000920191909152506124d992505050565b9150505b9392505050565b610134546001600160a01b0316610dd361229c565b6001600160a01b031614610df95760405162461bcd60e51b8152600401610b6090614b40565b6000610e0d610e08888a614b87565b6125ba565b509050610e1a8982611405565b610e278686868685612612565b8115610e4957610e498982610e44610e3f8b8d614b87565b612680565b612701565b505050505050505050565b80610e66610e6061229c565b82612743565b610e825760405162461bcd60e51b8152600401610b6090614b94565b81610e8c81612114565b610e95836127d4565b610ea0858585612841565b5050505050565b6000610c60610e088385614b87565b80610ec2610e6061229c565b610ede5760405162461bcd60e51b8152600401610b6090614b94565b81610ee881612114565b610ef587878787876129e8565b50505050505050565b80610f0a610e6061229c565b610f265760405162461bcd60e51b8152600401610b6090614b94565b81610f3081612114565b610a13836127d4565b610134546001600160a01b0316610f4e61229c565b6001600160a01b031614610f745760405162461bcd60e51b8152600401610b6090614b40565b610f7d816120b5565b42826001600160401b031611610fd55760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a204558504952595f494e5f5041535400000000000000006044820152606401610b60565b60008181526101396020908152604091829020805467ffffffffffffffff19166001600160401b038616908117909155915191825282917f93feabb03ab84f47fc85bf0c298103fca21d8c8bc376eae0c1e1c56b9d4f7789910160405180910390a25050565b611043612a4b565b6001600160a01b031661105461229c565b6001600160a01b03161461107a5760405162461bcd60e51b8152600401610b6090614bdd565b61108482826122ab565b5050565b610a1383838360405180602001604052806000815250611892565b806110af610e6061229c565b6110cb5760405162461bcd60e51b8152600401610b6090614b94565b816110d581612114565b6110de836127d4565b610a1383612b4c565b6000610db78383612743565b806110ff610e6061229c565b61111b5760405162461bcd60e51b8152600401610b6090614b94565b8161112581612114565b610ef58787878787612bf3565b8061113e610e6061229c565b61115a5760405162461bcd60e51b8152600401610b6090614b94565b8161116481612114565b61117086868686612cd2565b505050505050565b6000818152606760205260408120546001600160a01b03161515610940565b6111ca816040516020016111ab9190614c1f565b6040516020818303038152906040528051906020012060001c82612d72565b50565b610134546001600160a01b03166111e261229c565b6001600160a01b0316146112085760405162461bcd60e51b8152600401610b6090614b40565b6001600160a01b0316600090815261013660205260409020805460ff19166001179055565b600061123882611c42565b6112455761094082612d97565b919050565b80611256610e6061229c565b6112725760405162461bcd60e51b8152600401610b6090614b94565b61128461127d61229c565b3084612841565b61108461128f61229c565b836123f9565b60006112a0826125ba565b5090506112ab61229c565b6001600160a01b03166112bd8261122d565b6001600160a01b0316146113135760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b60565b61131c81612114565b61108461132761229c565b8261133185612680565b612df7565b6060806113438484612e7e565b909590945092505050565b60006001600160a01b0382166113b85760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b6064820152608401610b60565b506001600160a01b031660009081526068602052604090205490565b6001600160a01b038116600090815261013560205260408120546113f781612e9f565b6113ff578091505b50919050565b610134546001600160a01b031661141a61229c565b6001600160a01b0316146114405760405162461bcd60e51b8152600401610b6090614b40565b611449816127d4565b61108461145582612d97565b8383612841565b611464612a4b565b6001600160a01b031661147561229c565b6001600160a01b03161461149b5760405162461bcd60e51b8152600401610b6090614bdd565b6114a584846122ab565b50505050565b6114b58787612ee9565b6114bd61229c565b6001600160a01b03166114cf8661122d565b6001600160a01b0316146115255760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b60565b610ef58484848489612612565b60606066805461095590614a66565b610134546001600160a01b031661155661229c565b6001600160a01b03161461157c5760405162461bcd60e51b8152600401610b6090614b40565b61013361158a828483614c81565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b82826040516115bc929190614d69565b60405180910390a15050565b6110846115d361229c565b8383612f58565b6000610cab6115e885614d7d565b3085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061302692505050565b80611631610e6061229c565b61164d5760405162461bcd60e51b8152600401610b6090614b94565b8161165781612114565b6114a561166384612d97565b8585612841565b606060006116788385614e07565b905030330361173d5760005b8381101561173b5761170b61169761229c565b61169f61316f565b8787858181106116b1576116b1614ab5565b90506020028101906116c39190614acb565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250613183915050565b82828151811061171d5761171d614ab5565b6020026020010181905250808061173390614b27565b915050611684565b505b610cab816131b3565b6000818152606760205260408120546001600160a01b0316611769576000610940565b3092915050565b606080836001600160401b0381111561178b5761178b6144d7565b6040519080825280602002602001820160405280156117be57816020015b60608152602001906001900390816117a95790505b509150836001600160401b038111156117d9576117d96144d7565b60405190808252806020026020018201604052801561180c57816020015b60608152602001906001900390816117f75790505b50905060005b848110156118895761183c86868381811061182f5761182f614ab5565b9050602002013585612e7e565b84838151811061184e5761184e614ab5565b6020026020010184848151811061186757611867614ab5565b602002602001018290528290525050808061188190614b27565b915050611812565b50935093915050565b8161189e610e6061229c565b6118ba5760405162461bcd60e51b8152600401610b6090614b94565b826118c481612114565b6118cd846127d4565b611170868686866132de565b610134546001600160a01b03166118ee61229c565b6001600160a01b0316146119145760405162461bcd60e51b8152600401610b6090614b40565b600080611924610e08898b614b87565b9150915061193181613311565b6119498a83611943610e3f8c8e614b87565b86613371565b6119568787878786612612565b50505050505050505050565b600081815260c96020526040902080546060919061197f90614a66565b80601f01602080910402602001604051908101604052809291908181526020018280546119ab90614a66565b80156119f85780601f106119cd576101008083540402835291602001916119f8565b820191906000526020600020905b8154815290600101906020018083116119db57829003601f168201915b50505050509050919050565b6001600160a01b03811660009081526101356020526040902054606090611a2a81612e9f565b6113ff576000818152610138602052604090208054611a4890614a66565b80601f0160208091040260200160405190810160405280929190818152602001828054611a7490614a66565b8015611ac15780601f10611a9657610100808354040283529160200191611ac1565b820191906000526020600020905b815481529060010190602001808311611aa457829003601f168201915b5050505050915050919050565b6060611ad9826120b5565b6000611ae36133c4565b90506000815111611b035760405180602001604052806000815250610db7565b80611b0d846133d4565b604051602001611b1e929190614e7a565b6040516020818303038152906040529392505050565b80611b40610e6061229c565b611b5c5760405162461bcd60e51b8152600401610b6090614b94565b81611b6681612114565b610ef58787878787612612565b7f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87546001600160a01b0316611ba661229c565b6001600160a01b031614611bcc5760405162461bcd60e51b8152600401610b6090614bdd565b6020819003611bef576000611be382840184613f8b565b90506114a584826122ab565b6000611bfd82840184614ea9565b805190915060005b8181101561117057611c3086848381518110611c2357611c23614ab5565b60200260200101516122ab565b80611c3a81614b27565b915050611c05565b600081815261013960205260408120546001600160401b03161580159061094057505060009081526101396020526040902054426001600160401b039091161090565b80611c91610e6061229c565b611cad5760405162461bcd60e51b8152600401610b6090614b94565b81611cb781612114565b610ef587878787876134d4565b6000611cce61229c565b6001600160a01b0381166000908152610135602052604081205491925003611d425760405162461bcd60e51b815260206004820152602160248201527f52656769737472793a20524556455253455f5245434f52445f49535f454d50546044820152605960f81b6064820152608401610b60565b6111ca816134ea565b6060816001600160401b03811115611d6557611d656144d7565b604051908082528060200260200182016040528015611d9857816020015b6060815260200190600190039081611d835790505b50905060005b82811015611df757611dc7848483818110611dbb57611dbb614ab5565b90506020020135611962565b828281518110611dd957611dd9614ab5565b60200260200101819052508080611def90614b27565b915050611d9e565b5092915050565b610134546001600160a01b0316611e1361229c565b6001600160a01b031614611e395760405162461bcd60e51b8152600401610b6090614b40565b61013454611e50906001600160a01b0316846122ab565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c39528383604051611e82929190614d69565b60405180910390a2505050565b600054610100900460ff1615808015611eaf5750600054600160ff909116105b80611ec95750303b158015611ec9575060005460ff166001145b611f2c5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610b60565b6000805460ff191660011790558015611f4f576000805461ff0019166101001790555b61013480546001600160a01b0319166001600160a01b038716179055837f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec9237880546001600160a01b0319166001600160a01b03929092169190911790556040805180820182526013815272556e73746f707061626c6520446f6d61696e7360681b60208083019190915282518084019093526002835261155160f21b90830152611ff79161352f565b611fff61356f565b61200761356f565b61201083613598565b612019826135c8565b8015610ea0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b60006001600160e01b031982166380ac58cd60e01b148061209657506001600160e01b03198216635b5e139f60e01b145b8061094057506301ffc9a760e01b6001600160e01b0319831614610940565b6000818152606760205260409020546001600160a01b03166111ca5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b60565b3033036121715761212361316f565b81146111ca5760405162461bcd60e51b815260206004820152601760248201527f52656769737472793a20544f4b454e5f494e56414c49440000000000000000006044820152606401610b60565b6111ca816135f8565b600061218582612d97565b9050806001600160a01b0316836001600160a01b0316036121f25760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b6064820152608401610b60565b806001600160a01b031661220461229c565b6001600160a01b0316148061222057506122208161088861229c565b6122925760405162461bcd60e51b815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c00006064820152608401610b60565b610a138383613626565b60006122a6613694565b905090565b6001600160a01b0382166123015760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610b60565b6000818152606760205260409020546001600160a01b0316156123665760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610b60565b612372600083836136af565b6001600160a01b038216600090815260686020526040812080546001929061239b908490614f39565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b03861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b6000612403612a4b565b905061240f8183613626565b60008051602061529383398151915254604080516020808201869052825180830390910181528183019283905263e3dec8fb60e01b9092526001600160a01b0390921691829163e3dec8fb9161246c918891309190604401614f4c565b600060405180830381600087803b15801561248657600080fd5b505af115801561249a573d6000803e3d6000fd5b5050505050505050565b6060610db7836040516020016124ba9190614c1f565b6040516020818303038152906040528051906020012060001c8361378b565b60606124e4856135f8565b600080876001600160a01b0316866124fe8b8a8989613183565b60405161250b9190614c1f565b60006040518083038160008787f1925050503d8060008114612549576040519150601f19603f3d011682016040523d82523d6000602084013e61254e565b606091505b50909250905061255f603f87614f8e565b5a1161256d5761256d614fa2565b6125ad82826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061386d565b9998505050505050505050565b805160009081905b801561260c578291506125f882856125db600185614fb8565b815181106125eb576125eb614ab5565b60200260200101516138a6565b92508061260481614fcb565b9150506125c2565b50915091565b60005b848110156111705761266e86868381811061263257612632614ab5565b90506020028101906126449190614acb565b86868581811061265657612656614ab5565b90506020028101906126689190614acb565b86612bf3565b8061267881614b27565b915050612615565b606060008260008151811061269757612697614ab5565b602002602001015190506000600190505b8351811015611df757818482815181106126c4576126c4614ab5565b60200260200101516040516020016126dd929190614fe2565b604051602081830303815290604052915080806126f990614b27565b9150506126a8565b61dead6001600160a01b0384161480159061273357506001600160a01b03831660009081526101356020526040902054155b15610a1357610a13838383612df7565b60008061274f8361122d565b90506001600160a01b03811615801590610cab5750806001600160a01b0316846001600160a01b031614806127a957506001600160a01b038082166000908152606a602090815260408083209388168352929052205460ff165b80610cab5750836001600160a01b03166127c2846109d8565b6001600160a01b031614949350505050565b6127dd81613952565b6040516020016127ef91815260200190565b60408051601f198184030181528282528051602091820120600085815260cb9092529181209190915582917f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9190a250565b826001600160a01b031661285482612d97565b6001600160a01b0316146128b85760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b6064820152608401610b60565b6001600160a01b03821661291a5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610b60565b6129258383836136af565b612930600082613626565b6001600160a01b0383166000908152606860205260408120805460019290612959908490614fb8565b90915550506001600160a01b0382166000908152606860205260408120805460019290612987908490614f39565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60005b8481101561117057612a39868683818110612a0857612a08614ab5565b90506020020135858584818110612a2157612a21614ab5565b9050602002810190612a339190614acb565b85612cd2565b80612a4381614b27565b9150506129eb565b600080516020615293833981519152546000906001600160a01b03168015612b485760405163721804d360e11b81523060048201526000906001600160a01b0383169063e43009a690602401602060405180830381865afa158015612ab4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ad8919061501e565b60405163e66f960360e01b8152600481018290529091506001600160a01b0383169063e66f960390602401602060405180830381865afa158015612b20573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b449190615037565b9250505b5090565b6000612b5782612d97565b9050612b65816000846136af565b612b70600083613626565b6001600160a01b0381166000908152606860205260408120805460019290612b99908490614fb8565b909155505060008281526067602052604080822080546001600160a01b0319169055518391906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b60008585604051602001612c08929190615054565b60408051601f198184030181528282528051602091820120601f8901829004820284018201909252878352909250612c5c9183918990899081908401838280828437600092019190915250612d7292505050565b6111708187878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061397a915050565b612cdb84613aaf565b612d275760405162461bcd60e51b815260206004820152601c60248201527f5265636f726453746f726167653a204b45595f4e4f545f464f554e44000000006044820152606401610b60565b6114a584612d3486611962565b85858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525087925061397a915050565b612d7b82613aaf565b61108457600082815260c960205260409020610a138282615064565b6000818152606760205260408120546001600160a01b0316806109405760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b60565b6000828152610138602052604090208054612e1190614a66565b9050600003612e3557600082815261013860205260409020612e338282615064565b505b6001600160a01b03831660008181526101356020526040808220859055518492917feb76a21470988c474a21f690cc28fee1ed511bd812dc3c21fd0f49c5e5d4708a91a3505050565b606080612e8a84611962565b9150612e96848461378b565b90509250929050565b6000818152610137602052604081205460ff16801561094057506101366000612ec661229c565b6001600160a01b0316815260208101919091526040016000205460ff1692915050565b60008051602061529383398151915254604051633805550f60e01b81526001600160a01b03909116908190633805550f90612f2a9086908690600401614d69565b600060405180830381600087803b158015612f4457600080fd5b505af1158015610ef5573d6000803e3d6000fd5b816001600160a01b0316836001600160a01b031603612fb95760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610b60565b6001600160a01b038381166000818152606a6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561306d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613091919061501e565b9050600061313f8660600151805190602001208688602001516040516020016130df9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561316557508551613165906001600160a01b03168286613ad5565b9695505050505050565b60003033036131805750601f193601355b90565b606082858560405160200161319a93929190615123565b6040516020818303038152906040529050949350505050565b606081516001600160401b038111156131ce576131ce6144d7565b60405190808252806020026020018201604052801561320157816020015b60608152602001906001900390816131ec5790505b50905060005b82518110156113ff57600080306001600160a01b031685848151811061322f5761322f614ab5565b60200260200101516040516132449190614c1f565b600060405180830381855af49150503d806000811461327f576040519150601f19603f3d011682016040523d82523d6000602084013e613284565b606091505b50915091506132ac82826040518060600160405280602781526020016152b36027913961386d565b8484815181106132be576132be614ab5565b6020026020010181905250505080806132d690614b27565b915050613207565b6132e9848484612841565b6132f584848484613c17565b6114a55760405162461bcd60e51b8152600401610b6090615162565b6000818152610137602052604090205460ff16156111ca5760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a20544f4b454e5f555047524144454400000000000000006044820152606401610b60565b61337b84846122ab565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952836040516133ab9190613f78565b60405180910390a280156114a5576114a5848484612701565b6060610133805461095590614a66565b6060816000036133fb5750506040805180820190915260018152600360fc1b602082015290565b8160005b8115613425578061340f81614b27565b915061341e9050600a83614f8e565b91506133ff565b6000816001600160401b0381111561343f5761343f6144d7565b6040519080825280601f01601f191660200182016040528015613469576020820181803683370190505b5090505b8415610cab5761347e600183614fb8565b915061348b600a866151b4565b613496906030614f39565b60f81b8183815181106134ab576134ab614ab5565b60200101906001600160f81b031916908160001a9053506134cd600a86614f8e565b945061346d565b6134dd816127d4565b610ea08585858585612612565b6001600160a01b03811660008181526101356020526040808220829055517ffcf5eec0cfa3e6332f5f0e63ec242d71f866a61d121d6cdf5c2eb3b668a26c4f9190a250565b600054610100900460ff166135565760405162461bcd60e51b8152600401610b60906151c8565b60656135628382615064565b506066610a138282615064565b600054610100900460ff166135965760405162461bcd60e51b8152600401610b60906151c8565b565b600054610100900460ff166135bf5760405162461bcd60e51b8152600401610b60906151c8565b6111ca81613d1c565b600054610100900460ff166135ef5760405162461bcd60e51b8152600401610b60906151c8565b6111ca81613d75565b60008181526101006020526040902054613613906001614f39565b6000918252610100602052604090912055565b600081815260696020526040902080546001600160a01b0319166001600160a01b038416908117909155819061365b82612d97565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60003033036136aa575060331936013560601c90565b503390565b6001600160a01b0382166136c6576136c681613311565b600081815261013960205260409020546001600160401b031615613761576001600160a01b0382161580159061371557506136ff612a4b565b6001600160a01b0316826001600160a01b031614155b6137615760405162461bcd60e51b815260206004820152601960248201527f52656769737472793a20544f4b454e5f455850495241424c45000000000000006044820152606401610b60565b6001600160a01b03831660009081526101356020526040902054819003610a1357610a13836134ea565b606061379682612e9f565b156137b05750604080516020810190915260008152610940565b60ca60006137bd84613952565b8152602001908152602001600020600084815260200190815260200160002080546137e790614a66565b80601f016020809104026020016040519081016040528092919081815260200182805461381390614a66565b80156138605780601f1061383557610100808354040283529160200191613860565b820191906000526020600020905b81548152906001019060200180831161384357829003601f168201915b5050505050905092915050565b6060831561387c575081610db7565b82511561388c5782518084602001fd5b8160405162461bcd60e51b8152600401610b609190613f78565b600081516000036138f15760405162461bcd60e51b815260206004820152601560248201527452656769737472793a204c4142454c5f454d50545960581b6044820152606401610b60565b82826040516020016139039190614c1f565b60405160208183030381529060405280519060200120604051602001613933929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b600081815260cb602052604081205415612b4857600082815260cb6020526040902054610940565b60ca600061398783613952565b8152602001908152602001600020600085815260200190815260200160002080546139b190614a66565b9050600003613a0957826040516139c89190614c1f565b6040518091039020817f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f8685604051613a009190613f78565b60405180910390a35b8160ca6000613a1784613952565b815260200190815260200160002060008681526020019081526020016000209081613a429190615064565b5081604051613a519190614c1f565b604051809103902083604051613a679190614c1f565b6040518091039020827f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d928686604051613aa19291906146e2565b60405180910390a450505050565b600081815260c9602052604081208054829190613acb90614a66565b9050119050919050565b6000806000613ae48585613dc3565b90925090506000816004811115613afd57613afd615213565b148015613b1b5750856001600160a01b0316826001600160a01b0316145b15613b2b57600192505050610db7565b600080876001600160a01b0316631626ba7e60e01b8888604051602401613b53929190615229565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051613b919190614c1f565b600060405180830381855afa9150503d8060008114613bcc576040519150601f19603f3d011682016040523d82523d6000602084013e613bd1565b606091505b5091509150818015613be4575080516020145b8015613c0b57508051630b135d3f60e11b90613c09908301602090810190840161501e565b145b98975050505050505050565b60006001600160a01b0384163b15613d1457836001600160a01b031663150b7a02613c4061229c565b8786866040518563ffffffff1660e01b8152600401613c629493929190615242565b6020604051808303816000875af1925050508015613c9d575060408051601f3d908101601f19168201909252613c9a91810190615275565b60015b613cfa573d808015613ccb576040519150601f19603f3d011682016040523d82523d6000602084013e613cd0565b606091505b508051600003613cf25760405162461bcd60e51b8152600401610b6090615162565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610cab565b506001610cab565b600054610100900460ff16613d435760405162461bcd60e51b8152600401610b60906151c8565b806000805160206152938339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b600054610100900460ff16613d9c5760405162461bcd60e51b8152600401610b60906151c8565b807f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87613d54565b6000808251604103613df95760208301516040840151606085015160001a613ded87828585613e08565b94509450505050613e01565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613e3f5750600090506003613eec565b8460ff16601b14158015613e5757508460ff16601c14155b15613e685750600090506004613eec565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613ebc573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613ee557600060019250925050613eec565b9150600090505b94509492505050565b6001600160e01b0319811681146111ca57600080fd5b600060208284031215613f1d57600080fd5b8135610db781613ef5565b60005b83811015613f43578181015183820152602001613f2b565b50506000910152565b60008151808452613f64816020860160208601613f28565b601f01601f19169290920160200192915050565b602081526000610db76020830184613f4c565b600060208284031215613f9d57600080fd5b5035919050565b6001600160a01b03811681146111ca57600080fd5b60008060408385031215613fcc57600080fd5b8235613fd781613fa4565b946020939093013593505050565b60008083601f840112613ff757600080fd5b5081356001600160401b0381111561400e57600080fd5b602083019150836020828501011115613e0157600080fd5b60008060008060006080868803121561403e57600080fd5b853561404981613fa4565b9450602086013561405981613fa4565b93506040860135925060608601356001600160401b0381111561407b57600080fd5b61408788828901613fe5565b969995985093965092949392505050565b60008083601f8401126140aa57600080fd5b5081356001600160401b038111156140c157600080fd5b6020830191508360208260051b8501011115613e0157600080fd5b6000806000604084860312156140f157600080fd5b83356001600160401b0381111561410757600080fd5b61411386828701614098565b909790965060209590950135949350505050565b600082825180855260208086019550808260051b84010181860160005b8481101561417257601f19868403018952614160838351613f4c565b98840198925090830190600101614144565b5090979650505050505050565b602081526000610db76020830184614127565b6000806000604084860312156141a757600080fd5b83356001600160401b038111156141bd57600080fd5b61411386828701613fe5565b6000806000604084860312156141de57600080fd5b83356001600160401b03808211156141f557600080fd5b908501906080828803121561420957600080fd5b9093506020850135908082111561421f57600080fd5b5061422c86828701613fe5565b9497909650939450505050565b8035801515811461124557600080fd5b60008060008060008060008060a0898b03121561426557600080fd5b883561427081613fa4565b975060208901356001600160401b038082111561428c57600080fd5b6142988c838d01614098565b909950975060408b01359150808211156142b157600080fd5b6142bd8c838d01614098565b909750955060608b01359150808211156142d657600080fd5b506142e38b828c01614098565b90945092506142f6905060808a01614239565b90509295985092959890939650565b60008060006060848603121561431a57600080fd5b833561432581613fa4565b9250602084013561433581613fa4565b929592945050506040919091013590565b6000806020838503121561435957600080fd5b82356001600160401b0381111561436f57600080fd5b61437b85828601614098565b90969095509350505050565b60008060008060006060868803121561439f57600080fd5b85356001600160401b03808211156143b657600080fd5b6143c289838a01614098565b909750955060208801359150808211156143db57600080fd5b506143e888828901614098565b96999598509660400135949350505050565b6000806040838503121561440d57600080fd5b82356001600160401b0381168114613fd757600080fd5b60008060008060006060868803121561443c57600080fd5b85356001600160401b038082111561445357600080fd5b61445f89838a01613fe5565b9097509550602088013591508082111561447857600080fd5b506143e888828901613fe5565b6000806000806060858703121561449b57600080fd5b8435935060208501356001600160401b038111156144b857600080fd5b6144c487828801613fe5565b9598909750949560400135949350505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715614515576145156144d7565b604052919050565b600082601f83011261452e57600080fd5b81356001600160401b03811115614547576145476144d7565b61455a601f8201601f19166020016144ed565b81815284602083860101111561456f57600080fd5b816020850160208301376000918101602001919091529392505050565b60006020828403121561459e57600080fd5b81356001600160401b038111156145b457600080fd5b610cab8482850161451d565b6000602082840312156145d257600080fd5b8135610db781613fa4565b60006001600160401b038211156145f6576145f66144d7565b5060051b60200190565b600061461361460e846145dd565b6144ed565b8381529050602080820190600585901b84018681111561463257600080fd5b845b8181101561466d5780356001600160401b038111156146535760008081fd5b61465f8982890161451d565b855250928201928201614634565b505050509392505050565b60006020828403121561468a57600080fd5b81356001600160401b038111156146a057600080fd5b8201601f810184136146b157600080fd5b610cab84823560208401614600565b600080604083850312156146d357600080fd5b50508035926020909101359150565b6040815260006146f56040830185613f4c565b8281036020840152610db38185613f4c565b6000806000806060858703121561471d57600080fd5b843561472881613fa4565b93506020850135925060408501356001600160401b0381111561474a57600080fd5b61475687828801613fe5565b95989497509550505050565b60008060008060008060006080888a03121561477d57600080fd5b87356001600160401b038082111561479457600080fd5b6147a08b838c01613fe5565b909950975060208a0135965060408a01359150808211156147c057600080fd5b6147cc8b838c01614098565b909650945060608a01359150808211156147e557600080fd5b506147f28a828b01614098565b989b979a50959850939692959293505050565b6000806020838503121561481857600080fd5b82356001600160401b0381111561482e57600080fd5b61437b85828601613fe5565b6000806040838503121561484d57600080fd5b823561485881613fa4565b9150612e9660208401614239565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156148bb57603f198886030184526148a9858351613f4c565b9450928501929085019060010161488d565b5092979650505050505050565b6040815260006148db6040830185614127565b8281036020840152610db38185614127565b6000806000806080858703121561490357600080fd5b843561490e81613fa4565b9350602085013561491e81613fa4565b92506040850135915060608501356001600160401b0381111561494057600080fd5b61494c8782880161451d565b91505092959194509250565b60008060006040848603121561496d57600080fd5b833561497881613fa4565b925060208401356001600160401b0381111561499357600080fd5b61422c86828701613fe5565b600080604083850312156149b257600080fd5b82356149bd81613fa4565b915060208301356149cd81613fa4565b809150509250929050565b6000806000604084860312156149ed57600080fd5b8335925060208401356001600160401b0381111561499357600080fd5b60008060008060808587031215614a2057600080fd5b8435614a2b81613fa4565b93506020850135614a3b81613fa4565b92506040850135614a4b81613fa4565b91506060850135614a5b81613fa4565b939692955090935050565b600181811c90821680614a7a57607f821691505b6020821081036113ff57634e487b7160e01b600052602260045260246000fd5b600060208284031215614aac57600080fd5b610db782614239565b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112614ae257600080fd5b8301803591506001600160401b03821115614afc57600080fd5b602001915036819003821315613e0157600080fd5b634e487b7160e01b600052601160045260246000fd5b600060018201614b3957614b39614b11565b5060010190565b60208082526027908201527f52656769737472793a2053454e4445525f49535f4e4f545f4d494e54494e475f60408201526626a0a720a3a2a960c91b606082015260800190565b6000610db7368484614600565b60208082526029908201527f52656769737472793a2053454e4445525f49535f4e4f545f415050524f5645446040820152682fa7a92fa7aba722a960b91b606082015260800190565b60208082526022908201527f52656769737472793a20494e53554646494349454e545f5045524d495353494f6040820152614e5360f01b606082015260800190565b60008251614c31818460208701613f28565b9190910192915050565b601f821115610a1357600081815260208120601f850160051c81016020861015614c625750805b601f850160051c820191505b8181101561117057828155600101614c6e565b6001600160401b03831115614c9857614c986144d7565b614cac83614ca68354614a66565b83614c3b565b6000601f841160018114614ce05760008515614cc85750838201355b600019600387901b1c1916600186901b178355610ea0565b600083815260209020601f19861690835b82811015614d115786850135825560209485019460019092019101614cf1565b5086821015614d2e5760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b602081526000610cab602083018486614d40565b600060808236031215614d8f57600080fd5b604051608081016001600160401b038282108183111715614db257614db26144d7565b8160405284359150614dc382613fa4565b81835260208501356020840152604085013560408401526060850135915080821115614dee57600080fd5b50614dfb3682860161451d565b60608301525092915050565b6000614e1561460e846145dd565b80848252602080830192508560051b850136811115614e3357600080fd5b855b81811015614e6e5780356001600160401b03811115614e545760008081fd5b614e6036828a0161451d565b865250938201938201614e35565b50919695505050505050565b60008351614e8c818460208801613f28565b835190830190614ea0818360208801613f28565b01949350505050565b60006020808385031215614ebc57600080fd5b82356001600160401b03811115614ed257600080fd5b8301601f81018513614ee357600080fd5b8035614ef161460e826145dd565b81815260059190911b82018301908381019087831115614f1057600080fd5b928401925b82841015614f2e57833582529284019290840190614f15565b979650505050505050565b8082018082111561094057610940614b11565b6001600160a01b03848116825283166020820152606060408201819052600090610b6990830184613f4c565b634e487b7160e01b600052601260045260246000fd5b600082614f9d57614f9d614f78565b500490565b634e487b7160e01b600052600160045260246000fd5b8181038181111561094057610940614b11565b600081614fda57614fda614b11565b506000190190565b60008351614ff4818460208801613f28565b601760f91b9083019081528351615012816001840160208801613f28565b01600101949350505050565b60006020828403121561503057600080fd5b5051919050565b60006020828403121561504957600080fd5b8151610db781613fa4565b8183823760009101908152919050565b81516001600160401b0381111561507d5761507d6144d7565b6150918161508b8454614a66565b84614c3b565b602080601f8311600181146150c657600084156150ae5750858301515b600019600386901b1c1916600185901b178555611170565b600085815260208120601f198616915b828110156150f5578886015182559484019460019091019084016150d6565b50858210156151135787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60008451615135818460208901613f28565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6000826151c3576151c3614f78565b500690565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b634e487b7160e01b600052602160045260246000fd5b828152604060208201526000610cab6040830184613f4c565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061316590830184613f4c565b60006020828403121561528757600080fd5b8151610db781613ef556febe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/artifacts/abi/ISeaportProxyBuyer.json b/artifacts/abi/ISeaportProxyBuyer.json index 94f83ace..b366faaa 100644 --- a/artifacts/abi/ISeaportProxyBuyer.json +++ b/artifacts/abi/ISeaportProxyBuyer.json @@ -1 +1 @@ -[{"inputs":[{"components":[{"components":[{"internalType":"address","name":"offerer","type":"address"},{"internalType":"address","name":"zone","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"}],"internalType":"struct OfferItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ConsiderationItem[]","name":"consideration","type":"tuple[]"},{"internalType":"enum OrderType","name":"orderType","type":"uint8"},{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"},{"internalType":"bytes32","name":"zoneHash","type":"bytes32"},{"internalType":"uint256","name":"salt","type":"uint256"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"uint256","name":"totalOriginalConsiderationItems","type":"uint256"}],"internalType":"struct OrderParameters","name":"parameters","type":"tuple"},{"internalType":"uint120","name":"numerator","type":"uint120"},{"internalType":"uint120","name":"denominator","type":"uint120"},{"internalType":"bytes","name":"signature","type":"bytes"},{"internalType":"bytes","name":"extraData","type":"bytes"}],"internalType":"struct AdvancedOrder","name":"advancedOrder","type":"tuple"},{"components":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"enum Side","name":"side","type":"uint8"},{"internalType":"uint256","name":"index","type":"uint256"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"bytes32[]","name":"criteriaProof","type":"bytes32[]"}],"internalType":"struct CriteriaResolver[]","name":"criteriaResolvers","type":"tuple[]"},{"internalType":"bytes32","name":"fulfillerConduitKey","type":"bytes32"},{"internalType":"address","name":"recipient","type":"address"}],"name":"fulfillAdvancedOrder","outputs":[{"internalType":"bool","name":"fulfilled","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"pause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unpause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"withdraw","outputs":[],"stateMutability":"nonpayable","type":"function"}] +[{"inputs":[{"internalType":"address","name":"token","type":"address"}],"name":"approve","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"address","name":"offerer","type":"address"},{"internalType":"address","name":"zone","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"}],"internalType":"struct OfferItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ConsiderationItem[]","name":"consideration","type":"tuple[]"},{"internalType":"enum OrderType","name":"orderType","type":"uint8"},{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"},{"internalType":"bytes32","name":"zoneHash","type":"bytes32"},{"internalType":"uint256","name":"salt","type":"uint256"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"uint256","name":"totalOriginalConsiderationItems","type":"uint256"}],"internalType":"struct OrderParameters","name":"parameters","type":"tuple"},{"internalType":"uint120","name":"numerator","type":"uint120"},{"internalType":"uint120","name":"denominator","type":"uint120"},{"internalType":"bytes","name":"signature","type":"bytes"},{"internalType":"bytes","name":"extraData","type":"bytes"}],"internalType":"struct AdvancedOrder","name":"advancedOrder","type":"tuple"},{"components":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"enum Side","name":"side","type":"uint8"},{"internalType":"uint256","name":"index","type":"uint256"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"bytes32[]","name":"criteriaProof","type":"bytes32[]"}],"internalType":"struct CriteriaResolver[]","name":"criteriaResolvers","type":"tuple[]"},{"internalType":"bytes32","name":"fulfillerConduitKey","type":"bytes32"},{"internalType":"address","name":"recipient","type":"address"}],"name":"fulfillAdvancedOrder","outputs":[{"internalType":"bool","name":"fulfilled","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"pause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unpause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"withdraw","outputs":[],"stateMutability":"nonpayable","type":"function"}] diff --git a/artifacts/abi/SeaportProxyBuyer.json b/artifacts/abi/SeaportProxyBuyer.json index 5c487294..1ef3206d 100644 --- a/artifacts/abi/SeaportProxyBuyer.json +++ b/artifacts/abi/SeaportProxyBuyer.json @@ -1 +1 @@ -[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"InvalidSignature","type":"error"},{"inputs":[],"name":"OrderIsNotFulfiled","type":"error"},{"inputs":[],"name":"RecipientIsZeroAddress","type":"error"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint8","name":"version","type":"uint8"}],"name":"Initialized","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"role","type":"bytes32"},{"indexed":true,"internalType":"bytes32","name":"previousAdminRole","type":"bytes32"},{"indexed":true,"internalType":"bytes32","name":"newAdminRole","type":"bytes32"}],"name":"RoleAdminChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"role","type":"bytes32"},{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":true,"internalType":"address","name":"sender","type":"address"}],"name":"RoleGranted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"role","type":"bytes32"},{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":true,"internalType":"address","name":"sender","type":"address"}],"name":"RoleRevoked","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Unpaused","type":"event"},{"inputs":[],"name":"DEFAULT_ADMIN_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MINTER_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"NAME","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"VERSION","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"addMinter","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"accounts","type":"address[]"}],"name":"addMinters","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"receiver","type":"address"}],"name":"closeMinter","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"from","type":"address"},{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"uint256","name":"tokenId","type":"uint256"},{"internalType":"bytes","name":"data","type":"bytes"}],"internalType":"struct IForwarder.ForwardRequest","name":"req","type":"tuple"},{"internalType":"bytes","name":"signature","type":"bytes"}],"name":"execute","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"address","name":"offerer","type":"address"},{"internalType":"address","name":"zone","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"}],"internalType":"struct OfferItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ConsiderationItem[]","name":"consideration","type":"tuple[]"},{"internalType":"enum OrderType","name":"orderType","type":"uint8"},{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"},{"internalType":"bytes32","name":"zoneHash","type":"bytes32"},{"internalType":"uint256","name":"salt","type":"uint256"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"uint256","name":"totalOriginalConsiderationItems","type":"uint256"}],"internalType":"struct OrderParameters","name":"parameters","type":"tuple"},{"internalType":"uint120","name":"numerator","type":"uint120"},{"internalType":"uint120","name":"denominator","type":"uint120"},{"internalType":"bytes","name":"signature","type":"bytes"},{"internalType":"bytes","name":"extraData","type":"bytes"}],"internalType":"struct AdvancedOrder","name":"advancedOrder","type":"tuple"},{"components":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"enum Side","name":"side","type":"uint8"},{"internalType":"uint256","name":"index","type":"uint256"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"bytes32[]","name":"criteriaProof","type":"bytes32[]"}],"internalType":"struct CriteriaResolver[]","name":"criteriaResolvers","type":"tuple[]"},{"internalType":"bytes32","name":"fulfillerConduitKey","type":"bytes32"},{"internalType":"address","name":"recipient","type":"address"}],"name":"fulfillAdvancedOrder","outputs":[{"internalType":"bool","name":"fulfilled","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"}],"name":"getRoleAdmin","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"grantRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"hasRole","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"contract ConsiderationInterface","name":"seaport","type":"address"},{"internalType":"contract IERC20","name":"usdc","type":"address"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isMinter","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"forwarder","type":"address"}],"name":"isTrustedForwarder","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"nonceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"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":[{"internalType":"address","name":"account","type":"address"}],"name":"removeMinter","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"accounts","type":"address[]"}],"name":"removeMinters","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceMinter","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"renounceRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"revokeRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"receiver","type":"address"}],"name":"rotateMinter","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unpause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"from","type":"address"},{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"uint256","name":"tokenId","type":"uint256"},{"internalType":"bytes","name":"data","type":"bytes"}],"internalType":"struct IForwarder.ForwardRequest","name":"req","type":"tuple"},{"internalType":"bytes","name":"signature","type":"bytes"}],"name":"verify","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"withdraw","outputs":[],"stateMutability":"nonpayable","type":"function"}] +[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"InvalidForwardedToken","type":"error"},{"inputs":[],"name":"InvalidSignature","type":"error"},{"inputs":[],"name":"InvalidZone","type":"error"},{"inputs":[],"name":"OrderIsNotFulfiled","type":"error"},{"inputs":[],"name":"RecipientIsZeroAddress","type":"error"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint8","name":"version","type":"uint8"}],"name":"Initialized","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"role","type":"bytes32"},{"indexed":true,"internalType":"bytes32","name":"previousAdminRole","type":"bytes32"},{"indexed":true,"internalType":"bytes32","name":"newAdminRole","type":"bytes32"}],"name":"RoleAdminChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"role","type":"bytes32"},{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":true,"internalType":"address","name":"sender","type":"address"}],"name":"RoleGranted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"role","type":"bytes32"},{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":true,"internalType":"address","name":"sender","type":"address"}],"name":"RoleRevoked","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Unpaused","type":"event"},{"inputs":[],"name":"DEFAULT_ADMIN_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MINTER_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"NAME","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"VERSION","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"addMinter","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"accounts","type":"address[]"}],"name":"addMinters","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"token","type":"address"}],"name":"approve","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"receiver","type":"address"}],"name":"closeMinter","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"from","type":"address"},{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"uint256","name":"tokenId","type":"uint256"},{"internalType":"bytes","name":"data","type":"bytes"}],"internalType":"struct IForwarder.ForwardRequest","name":"req","type":"tuple"},{"internalType":"bytes","name":"signature","type":"bytes"}],"name":"execute","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"address","name":"offerer","type":"address"},{"internalType":"address","name":"zone","type":"address"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"}],"internalType":"struct OfferItem[]","name":"offer","type":"tuple[]"},{"components":[{"internalType":"enum ItemType","name":"itemType","type":"uint8"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"identifierOrCriteria","type":"uint256"},{"internalType":"uint256","name":"startAmount","type":"uint256"},{"internalType":"uint256","name":"endAmount","type":"uint256"},{"internalType":"address payable","name":"recipient","type":"address"}],"internalType":"struct ConsiderationItem[]","name":"consideration","type":"tuple[]"},{"internalType":"enum OrderType","name":"orderType","type":"uint8"},{"internalType":"uint256","name":"startTime","type":"uint256"},{"internalType":"uint256","name":"endTime","type":"uint256"},{"internalType":"bytes32","name":"zoneHash","type":"bytes32"},{"internalType":"uint256","name":"salt","type":"uint256"},{"internalType":"bytes32","name":"conduitKey","type":"bytes32"},{"internalType":"uint256","name":"totalOriginalConsiderationItems","type":"uint256"}],"internalType":"struct OrderParameters","name":"parameters","type":"tuple"},{"internalType":"uint120","name":"numerator","type":"uint120"},{"internalType":"uint120","name":"denominator","type":"uint120"},{"internalType":"bytes","name":"signature","type":"bytes"},{"internalType":"bytes","name":"extraData","type":"bytes"}],"internalType":"struct AdvancedOrder","name":"advancedOrder","type":"tuple"},{"components":[{"internalType":"uint256","name":"orderIndex","type":"uint256"},{"internalType":"enum Side","name":"side","type":"uint8"},{"internalType":"uint256","name":"index","type":"uint256"},{"internalType":"uint256","name":"identifier","type":"uint256"},{"internalType":"bytes32[]","name":"criteriaProof","type":"bytes32[]"}],"internalType":"struct CriteriaResolver[]","name":"criteriaResolvers","type":"tuple[]"},{"internalType":"bytes32","name":"fulfillerConduitKey","type":"bytes32"},{"internalType":"address","name":"recipient","type":"address"}],"name":"fulfillAdvancedOrder","outputs":[{"internalType":"bool","name":"fulfilled","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"}],"name":"getRoleAdmin","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"grantRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"hasRole","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"contract ConsiderationInterface","name":"seaport","type":"address"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isMinter","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"forwarder","type":"address"}],"name":"isTrustedForwarder","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"nonceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"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":[{"internalType":"address","name":"account","type":"address"}],"name":"removeMinter","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"accounts","type":"address[]"}],"name":"removeMinters","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceMinter","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"renounceRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"revokeRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"receiver","type":"address"}],"name":"rotateMinter","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unpause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"from","type":"address"},{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"uint256","name":"tokenId","type":"uint256"},{"internalType":"bytes","name":"data","type":"bytes"}],"internalType":"struct IForwarder.ForwardRequest","name":"req","type":"tuple"},{"internalType":"bytes","name":"signature","type":"bytes"}],"name":"verify","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"withdraw","outputs":[],"stateMutability":"nonpayable","type":"function"}] diff --git a/contracts/MintingManager.sol b/contracts/MintingManager.sol index d0408f79..3b8a2e71 100644 --- a/contracts/MintingManager.sol +++ b/contracts/MintingManager.sol @@ -1,7 +1,7 @@ // @author Unstoppable Domains, Inc. // @date June 16th, 2021 -pragma solidity ^0.8.0; +pragma solidity 0.8.17; import '@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.sol'; import '@openzeppelin/contracts-upgradeable/utils/cryptography/ECDSAUpgradeable.sol'; diff --git a/contracts/ProxyReader.sol b/contracts/ProxyReader.sol index b324d53f..c75bf247 100644 --- a/contracts/ProxyReader.sol +++ b/contracts/ProxyReader.sol @@ -1,7 +1,7 @@ // @author Unstoppable Domains, Inc. // @date June 16th, 2021 -pragma solidity ^0.8.0; +pragma solidity 0.8.17; import '@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol'; import '@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable.sol'; diff --git a/contracts/UNSRegistry.sol b/contracts/UNSRegistry.sol index 4d7ad2a1..cb46c0b4 100644 --- a/contracts/UNSRegistry.sol +++ b/contracts/UNSRegistry.sol @@ -1,7 +1,7 @@ // @author Unstoppable Domains, Inc. // @date June 16th, 2021 -pragma solidity ^0.8.0; +pragma solidity 0.8.17; import '@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol'; import '@openzeppelin/contracts-upgradeable/utils/StorageSlotUpgradeable.sol'; diff --git a/contracts/custody/ENSCustody.sol b/contracts/custody/ENSCustody.sol index fc0ea2ec..8fb63e08 100644 --- a/contracts/custody/ENSCustody.sol +++ b/contracts/custody/ENSCustody.sol @@ -1,7 +1,7 @@ // @author Unstoppable Domains, Inc. // @date May 30th, 2023 -pragma solidity ^0.8.0; +pragma solidity 0.8.17; import {IPriceOracle} from '@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle.sol'; import {IETHRegistrarController} from '@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController.sol'; diff --git a/contracts/marketplace/ISeaportProxyBuyer.sol b/contracts/marketplace/ISeaportProxyBuyer.sol index 144ab5a8..91daf31a 100644 --- a/contracts/marketplace/ISeaportProxyBuyer.sol +++ b/contracts/marketplace/ISeaportProxyBuyer.sol @@ -1,12 +1,13 @@ // @author Unstoppable Domains, Inc. // @date April 25th, 2024 -pragma solidity ^0.8.0; +pragma solidity 0.8.24; import {AdvancedOrder, CriteriaResolver} from 'seaport-types/src/lib/ConsiderationStructs.sol'; error OrderIsNotFulfiled(); error RecipientIsZeroAddress(); +error InvalidZone(); interface ISeaportProxyBuyer { /** @@ -59,10 +60,18 @@ interface ISeaportProxyBuyer { /** * @dev Withdraw USDC from the contract balance. * + * @param token Token to withdraw * @param recipient Recipient of the USDC on contract balance * @param amount Amount of USDC to withdraw */ - function withdraw(address recipient, uint256 amount) external; + function withdraw(address token, address recipient, uint256 amount) external; + + /** + * @dev Approve USDC for the contract. + * + * @param token Token to approve + */ + function approve(address token) external; /** * @dev Pause the contract. diff --git a/contracts/marketplace/SeaportProxyBuyer.sol b/contracts/marketplace/SeaportProxyBuyer.sol index 29f85670..6a7931b0 100644 --- a/contracts/marketplace/SeaportProxyBuyer.sol +++ b/contracts/marketplace/SeaportProxyBuyer.sol @@ -1,19 +1,19 @@ // @author Unstoppable Domains, Inc. // @date April 25th, 2024 -pragma solidity ^0.8.0; +pragma solidity 0.8.24; import {Initializable} from '@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol'; import {ContextUpgradeable} from '@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol'; import {ReentrancyGuardUpgradeable} from '@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.sol'; import {PausableUpgradeable} from '@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol'; import {IERC20} from '@openzeppelin/contracts/token/ERC20/IERC20.sol'; -import {InvalidForwardedToken, ERC2771RegistryContext} from '../metatx/ERC2771RegistryContext.sol'; +import {ERC2771RegistryContext} from '../metatx/ERC2771RegistryContext.sol'; import {Forwarder} from '../metatx/Forwarder.sol'; import {MinterRole} from '../roles/MinterRole.sol'; -import {ISeaportProxyBuyer, OrderIsNotFulfiled, RecipientIsZeroAddress} from './ISeaportProxyBuyer.sol'; +import {ISeaportProxyBuyer, OrderIsNotFulfiled, RecipientIsZeroAddress, InvalidZone} from './ISeaportProxyBuyer.sol'; import {ConsiderationInterface} from 'seaport-types/src/interfaces/ConsiderationInterface.sol'; -import {AdvancedOrder, CriteriaResolver} from 'seaport-types/src/lib/ConsiderationStructs.sol'; +import {AdvancedOrder, CriteriaResolver, OrderComponents, OrderParameters} from 'seaport-types/src/lib/ConsiderationStructs.sol'; contract SeaportProxyBuyer is Initializable, @@ -29,19 +29,17 @@ contract SeaportProxyBuyer is string public constant VERSION = '0.0.1'; ConsiderationInterface private _seaport; - IERC20 private _usdc; /// @custom:oz-upgrades-unsafe-allow constructor constructor() { _disableInitializers(); } - function initialize(ConsiderationInterface seaport, IERC20 usdc) public initializer { + function initialize(ConsiderationInterface seaport) public initializer { _seaport = seaport; - _usdc = usdc; - _usdc.approve(address(_seaport), type(uint256).max); __ReentrancyGuard_init_unchained(); + __Context_init_unchained(); __ERC2771RegistryContext_init_unchained(); __Forwarder_init_unchained(); __Ownable_init_unchained(); @@ -49,23 +47,34 @@ contract SeaportProxyBuyer is __Pausable_init_unchained(); } - function _msgSender() internal view override(ContextUpgradeable, ERC2771RegistryContext) returns (address) { - return super._msgSender(); - } - - function _msgData() internal view override(ContextUpgradeable, ERC2771RegistryContext) returns (bytes calldata) { - return super._msgData(); - } - function fulfillAdvancedOrder( AdvancedOrder calldata advancedOrder, CriteriaResolver[] calldata criteriaResolvers, bytes32 fulfillerConduitKey, address recipient - ) external override onlyMinter nonReentrant whenNotPaused returns (bool fulfilled) { + ) external onlyMinter nonReentrant whenNotPaused returns (bool fulfilled) { if (recipient == address(0)) { revert RecipientIsZeroAddress(); } + if (advancedOrder.parameters.zone != address(this)) { + revert InvalidZone(); + } + + OrderComponents memory orderComponents; + orderComponents.offerer = advancedOrder.parameters.offerer; + orderComponents.zone = advancedOrder.parameters.zone; + orderComponents.offer = advancedOrder.parameters.offer; + orderComponents.consideration = advancedOrder.parameters.consideration; + orderComponents.orderType = advancedOrder.parameters.orderType; + orderComponents.startTime = advancedOrder.parameters.startTime; + orderComponents.endTime = advancedOrder.parameters.endTime; + orderComponents.zoneHash = advancedOrder.parameters.zoneHash; + orderComponents.salt = advancedOrder.parameters.salt; + orderComponents.conduitKey = advancedOrder.parameters.conduitKey; + orderComponents.counter = _seaport.getCounter(orderComponents.offerer); + + _protectTokenOperation(uint256(_seaport.getOrderHash(orderComponents))); + fulfilled = _seaport.fulfillAdvancedOrder(advancedOrder, criteriaResolvers, fulfillerConduitKey, recipient); if (!fulfilled) { revert OrderIsNotFulfiled(); @@ -73,8 +82,12 @@ contract SeaportProxyBuyer is return fulfilled; } - function withdraw(address recipient, uint256 amount) external onlyOwner nonReentrant whenNotPaused { - _usdc.transfer(recipient, amount); + function approve(address token) external onlyOwner nonReentrant whenNotPaused { + IERC20(token).approve(address(_seaport), type(uint256).max); + } + + function withdraw(address token, address recipient, uint256 amount) external onlyOwner nonReentrant whenNotPaused { + IERC20(token).transfer(recipient, amount); } function pause() external onlyOwner whenNotPaused { @@ -85,5 +98,21 @@ contract SeaportProxyBuyer is _unpause(); } - uint256[48] __gap; + function _msgSender() internal view override(ContextUpgradeable, ERC2771RegistryContext) returns (address) { + return super._msgSender(); + } + + function _msgData() internal view override(ContextUpgradeable, ERC2771RegistryContext) returns (bytes calldata) { + return super._msgData(); + } + + function _protectTokenOperation(uint256 tokenId) internal { + if (isTrustedForwarder(msg.sender)) { + _validateForwardedToken(tokenId); + } else { + _invalidateNonce(tokenId); + } + } + + uint256[50] __gap; } diff --git a/contracts/marketplace/_refs.sol b/contracts/marketplace/_refs.sol index 998e8bca..2c6605e2 100644 --- a/contracts/marketplace/_refs.sol +++ b/contracts/marketplace/_refs.sol @@ -1,7 +1,7 @@ // @author Unstoppable Domains, Inc. // @date April 25th, 2024 -pragma solidity ^0.8.0; +pragma solidity 0.8.24; import {Seaport} from 'seaport-core/src/Seaport.sol'; import {ConduitController} from 'seaport-core/src/conduit/ConduitController.sol'; diff --git a/contracts/mocks/MintingManagerMock.sol b/contracts/mocks/MintingManagerMock.sol index 0142065e..37b6dc88 100644 --- a/contracts/mocks/MintingManagerMock.sol +++ b/contracts/mocks/MintingManagerMock.sol @@ -1,7 +1,7 @@ // @author Unstoppable Domains, Inc. // @date May 8th, 2023 -pragma solidity ^0.8.0; +pragma solidity 0.8.17; import '../MintingManager.sol'; import './UNSRegistryMock.sol'; diff --git a/contracts/mocks/UNSRegistryForwarderMock.sol b/contracts/mocks/UNSRegistryForwarderMock.sol index 7b3567a2..30b1e265 100644 --- a/contracts/mocks/UNSRegistryForwarderMock.sol +++ b/contracts/mocks/UNSRegistryForwarderMock.sol @@ -1,7 +1,7 @@ // @author Unstoppable Domains, Inc. // @date June 16th, 2021 -pragma solidity ^0.8.0; +pragma solidity 0.8.17; import '../metatx/UNSRegistryForwarder.sol'; diff --git a/contracts/mocks/UNSRegistryMock.sol b/contracts/mocks/UNSRegistryMock.sol index 53865540..c829456d 100644 --- a/contracts/mocks/UNSRegistryMock.sol +++ b/contracts/mocks/UNSRegistryMock.sol @@ -1,7 +1,7 @@ // @author Unstoppable Domains, Inc. // @date November 10th, 2022 -pragma solidity ^0.8.0; +pragma solidity 0.8.17; import '../UNSRegistry.sol'; diff --git a/dist/hardhat.config.d.ts b/dist/hardhat.config.d.ts deleted file mode 100644 index ca5c6fee..00000000 --- a/dist/hardhat.config.d.ts +++ /dev/null @@ -1,36 +0,0 @@ -import { HardhatUserConfig } from 'hardhat/types/config'; -declare type MintersMap = Record; -declare module 'hardhat/types/config' { - interface HardhatUserConfig { - uns?: { - minters: MintersMap; - multisig: Record; - }; - } - interface HardhatConfig { - uns: { - minters: MintersMap; - multisig: Record; - }; - } - interface ProjectPathsUserConfig { - flatArtifacts: string; - } - interface ProjectPathsConfig { - flatArtifacts: string; - } -} -import '@typechain/hardhat'; -import '@nomicfoundation/hardhat-ethers'; -import '@nomicfoundation/hardhat-verify'; -import '@nomicfoundation/hardhat-chai-matchers'; -import '@nomiclabs/hardhat-solhint'; -import 'hardhat-tracer'; -import '@openzeppelin/hardhat-upgrades'; -import 'solidity-coverage'; -import 'hardhat-gas-reporter'; -import 'hardhat-contract-sizer'; -import 'hardhat-abi-exporter'; -declare const config: HardhatUserConfig; -export default config; -//# sourceMappingURL=hardhat.config.d.ts.map \ No newline at end of file diff --git a/dist/hardhat.config.d.ts.map b/dist/hardhat.config.d.ts.map deleted file mode 100644 index bf15ae13..00000000 --- a/dist/hardhat.config.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"hardhat.config.d.ts","sourceRoot":"","sources":["../hardhat.config.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAMzD,aAAK,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;AAG3C,OAAO,QAAQ,sBAAsB,CAAC;IACpC,UAAU,iBAAiB;QACzB,GAAG,CAAC,EAAE;YACJ,OAAO,EAAE,UAAU,CAAC;YACpB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC;SACzC,CAAC;KACH;IAED,UAAU,aAAa;QACrB,GAAG,EAAE;YACH,OAAO,EAAE,UAAU,CAAC;YACpB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;SAClC,CAAC;KACH;IAED,UAAU,sBAAsB;QAC9B,aAAa,EAAE,MAAM,CAAC;KACvB;IAED,UAAU,kBAAkB;QAC1B,aAAa,EAAE,MAAM,CAAC;KACvB;CACF;AAED,OAAO,oBAAoB,CAAC;AAC5B,OAAO,iCAAiC,CAAC;AACzC,OAAO,iCAAiC,CAAC;AACzC,OAAO,wCAAwC,CAAC;AAEhD,OAAO,4BAA4B,CAAC;AACpC,OAAO,gBAAgB,CAAC;AAExB,OAAO,gCAAgC,CAAC;AAGxC,OAAO,mBAAmB,CAAC;AAE3B,OAAO,sBAAsB,CAAC;AAC9B,OAAO,wBAAwB,CAAC;AAqChC,OAAO,sBAAsB,CAAC;AAS9B,QAAA,MAAM,MAAM,EAAE,iBAmIb,CAAC;AAEF,eAAe,MAAM,CAAC"} \ No newline at end of file diff --git a/dist/hardhat.config.js b/dist/hardhat.config.js deleted file mode 100644 index 9014fa74..00000000 --- a/dist/hardhat.config.js +++ /dev/null @@ -1,183 +0,0 @@ -"use strict"; -var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { - function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } - return new (P || (P = Promise))(function (resolve, reject) { - function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } - function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } - function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); -}; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -const path_1 = __importDefault(require("path")); -const fs_1 = __importDefault(require("fs")); -const task_names_1 = require("hardhat/builtin-tasks/task-names"); -const config_1 = require("hardhat/config"); -const lodash_1 = require("lodash"); -require("@typechain/hardhat"); -require("@nomicfoundation/hardhat-ethers"); -require("@nomicfoundation/hardhat-verify"); -require("@nomicfoundation/hardhat-chai-matchers"); -require("@nomiclabs/hardhat-solhint"); -require("hardhat-tracer"); -require("@openzeppelin/hardhat-upgrades"); -require("solidity-coverage"); -require("hardhat-gas-reporter"); -require("hardhat-contract-sizer"); -const yargs_1 = __importDefault(require("yargs/yargs")); -const sandbox_1 = require("./sandbox"); -const argv = (0, yargs_1.default)().env('').boolean('enableGasReport').boolean('enableContractSizer').boolean('ci').parseSync(); -(0, config_1.task)(task_names_1.TASK_COMPILE, 'hook compile task to perform post-compile task', (_, hre, runSuper) => __awaiter(void 0, void 0, void 0, function* () { - const { root, flatArtifacts } = hre.config.paths; - const outputDir = path_1.default.resolve(root, flatArtifacts); - yield runSuper(); - if (fs_1.default.existsSync(outputDir)) { - fs_1.default.rmdirSync(outputDir, { recursive: true }); - } - fs_1.default.mkdirSync(outputDir, { recursive: true }); - for (const artifactPath of yield hre.artifacts.getArtifactPaths()) { - const artifact = fs_1.default.readFileSync(artifactPath); - const { abi, contractName } = JSON.parse(artifact.toString()); - if (!abi.length || contractName.includes('Mock')) - continue; - const target = path_1.default.join(outputDir, `${contractName}.json`); - fs_1.default.copyFileSync(artifactPath, target); - } -})); -require("hardhat-abi-exporter"); -const settings = { - optimizer: { - enabled: true, - runs: 200, - }, -}; -const config = { - solidity: { - compilers: [ - { - version: '0.5.12', - settings, - }, - { - version: '0.6.6', - settings: Object.assign(Object.assign({}, settings), { metadata: { - bytecodeHash: 'none', - } }), - }, - { - version: '0.8.17', - settings: Object.assign(Object.assign({}, settings), { metadata: { - bytecodeHash: 'none', - } }), - }, - ], - }, - paths: { - artifacts: './.artifacts', - flatArtifacts: './artifacts', - }, - networks: { - hardhat: { - blockGasLimit: 10000000, - initialBaseFeePerGas: 0, - hardfork: 'merge', - }, - localhost: { - url: 'http://localhost:8545', - chainId: 31337, - loggingEnabled: true, - }, - sandbox: sandbox_1.Sandbox.defaultNetworkOptions(), - sepolia: { - url: `https://sepolia.infura.io/v3/${process.env.SEPOLIA_INFURA_KEY}`, - chainId: 11155111, - accounts: process.env.SEPOLIA_UNS_PRIVATE_KEY ? [process.env.SEPOLIA_UNS_PRIVATE_KEY] : undefined, - }, - amoy: { - url: `https://polygon-amoy.infura.io/v3/${process.env.AMOY_INFURA_KEY}`, - chainId: 80002, - accounts: process.env.AMOY_UNS_PRIVATE_KEY ? [process.env.AMOY_UNS_PRIVATE_KEY] : undefined, - }, - mainnet: { - url: `https://mainnet.infura.io/v3/${process.env.MAINNET_INFURA_KEY}`, - chainId: 1, - accounts: process.env.MAINNET_UNS_PRIVATE_KEY ? [process.env.MAINNET_UNS_PRIVATE_KEY] : undefined, - loggingEnabled: true, - }, - polygon: { - url: `https://polygon-mainnet.infura.io/v3/${process.env.POLYGON_INFURA_KEY}`, - chainId: 137, - accounts: process.env.POLYGON_UNS_PRIVATE_KEY ? [process.env.POLYGON_UNS_PRIVATE_KEY] : undefined, - loggingEnabled: true, - }, - }, - typechain: { - outDir: 'types', - target: 'ethers-v6', - }, - gasReporter: { - enabled: argv.enableGasReport, - currency: 'USD', - outputFile: argv.ci ? 'gas-report.txt' : undefined, - excludeContracts: ['ERC721ReceiverMock', 'ERC2771RegistryContextMock', 'ERC20Upgradeable'], - }, - contractSizer: { - alphaSort: true, - runOnCompile: argv.enableContractSizer, - disambiguatePaths: false, - only: ['UNSRegistry.sol', 'ProxyReader.sol', 'MintingManager.sol', 'ENSCustody.sol'], - }, - mocha: { - timeout: 100000, - }, - etherscan: { - apiKey: (0, lodash_1.pickBy)({ - mainnet: process.env.ETHERSCAN_API_KEY, - sepolia: process.env.ETHERSCAN_API_KEY, - polygon: process.env.POLYGONSCAN_API_KEY, - polygonAmoy: process.env.POLYGONSCAN_API_KEY, - }), - customChains: [ - { - network: 'polygonAmoy', - chainId: 80002, - urls: { - apiURL: 'https://api-amoy.polygonscan.com/api', - browserURL: 'https://amoy.polygonscan.com/', - }, - }, - ], - }, - abiExporter: { - path: './artifacts/abi', - clear: true, - flat: true, - except: ['Mock'], - spacing: 0, - }, - uns: { - minters: { - hardhat: ['0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266'], - localhost: ['0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266'], - sandbox: ['0x9DC64b2558b458A15C7f01c192D874Ef460f0A29'], - sepolia: ['0x1daf08a27304a78434e22ab79bea508e341f910d'], - amoy: ['0x31df70766e92c0a69ada7ecb6dc1634d64748be2'], - mainnet: ['0x5465c72ce00196550d6f89c40830f6bc81599f4f'], - polygon: ['0x58cb2542a5b3b0999d41de59ad03331bbfb4dda3'], - }, - multisig: { - mainnet: '0x6bEca92600be24179ae70A430AEF4aE632fddDc8', - polygon: '0xC8E1B5c41c42ad1cE8336714cA2b2f2588F0a337', - sepolia: '0x1197C09C38d460584473e8837D79c14343f24890', - amoy: '0x458adB6cce7D9984b74bC83c6F71Fbd1fd16085e', - }, - }, - defender: { - apiKey: process.env.DEFENDER_API_KEY || '', - apiSecret: process.env.DEFENDER_API_SECRET || '', - }, -}; -exports.default = config; diff --git a/dist/index.d.ts b/dist/index.d.ts deleted file mode 100644 index 3fce74b8..00000000 --- a/dist/index.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -export * from './sandbox'; -export * from './src/config'; -export * from './src/types'; -export * as contracts from './src/types'; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/index.d.ts.map b/dist/index.d.ts.map deleted file mode 100644 index 7b753be6..00000000 --- a/dist/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC"} \ No newline at end of file diff --git a/dist/index.js b/dist/index.js deleted file mode 100644 index d45e9625..00000000 --- a/dist/index.js +++ /dev/null @@ -1,33 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.contracts = void 0; -__exportStar(require("./sandbox"), exports); -__exportStar(require("./src/config"), exports); -__exportStar(require("./src/types"), exports); -exports.contracts = __importStar(require("./src/types")); diff --git a/dist/sandbox/db.tgz b/dist/sandbox/db.tgz deleted file mode 100644 index 994cfa75d94c3c1914f6ab86653b640191f43f94..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 542776 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 z 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

)o@RC# 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


E!`m13tPDCg;nsSiy3@0R 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 z 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

Ol_Dul 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

gx(Kla``Ad2JtAHU^5K>;au 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
p+qWYIj-~WHdaV5g_yUK4o>y5F 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¥>uf|GG^XMW$m(JShF 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 literal 0 HcmV?d00001 diff --git a/dist/sandbox/ganache-service.d.ts b/dist/sandbox/ganache-service.d.ts new file mode 100644 index 00000000..8949fbc7 --- /dev/null +++ b/dist/sandbox/ganache-service.d.ts @@ -0,0 +1,17 @@ +import { Server, EthereumProvider, ServerOptions } from 'ganache'; +export declare type ServerConfigOptions = ServerOptions & { + url: string; + port?: number; + hostname?: string; +}; +export declare class GanacheService { + server: Server; + provider: EthereumProvider; + private options; + constructor(options: ServerConfigOptions); + startServer(): Promise; + stopServer(): Promise; + private validateAndTransformOptions; + private snakeCase; +} +//# sourceMappingURL=ganache-service.d.ts.map \ No newline at end of file diff --git a/dist/sandbox/ganache-service.d.ts.map b/dist/sandbox/ganache-service.d.ts.map new file mode 100644 index 00000000..eb0bdbb4 --- /dev/null +++ b/dist/sandbox/ganache-service.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ganache-service.d.ts","sourceRoot":"","sources":["../../sandbox/ganache-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,MAAM,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAI1E,oBAAY,mBAAmB,GAAG,aAAa,GAAG;IAChD,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,qBAAa,cAAc;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,gBAAgB,CAAC;IAElC,OAAO,CAAC,OAAO,CAAsB;gBAExB,OAAO,EAAE,mBAAmB;IAMzC,WAAW;IAUX,UAAU;IAIV,OAAO,CAAC,2BAA2B;IAuBnC,OAAO,CAAC,SAAS;CAGlB"} \ No newline at end of file diff --git a/dist/sandbox/ganache-service.js b/dist/sandbox/ganache-service.js new file mode 100644 index 00000000..ec290806 --- /dev/null +++ b/dist/sandbox/ganache-service.js @@ -0,0 +1,43 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.GanacheService = void 0; +const ganache_1 = require("ganache"); +const DEFAULT_PORT = 7545; +class GanacheService { + constructor(options) { + this.options = this.validateAndTransformOptions(options); + this.server = (0, ganache_1.server)(this.options); + this.provider = this.server.provider; + } + startServer() { + const { port } = this.options; + if (!port) { + throw new Error('Port sohuld be defined in the ServerConfigOptions URL'); + } + return this.server.listen(port); + } + stopServer() { + return this.server.close(); + } + validateAndTransformOptions(options) { + const validatedOptions = options; + const url = new URL(options.url); + if (url.hostname !== 'localhost' && url.hostname !== '127.0.0.1') { + throw new Error('Ganache network only works with localhost'); + } + validatedOptions.hostname = url.hostname; + validatedOptions.port = url.port !== undefined && url.port !== '' ? parseInt(url.port, 10) : DEFAULT_PORT; + const optionsToInclude = ['accountsKeyPath', 'dbPath', 'defaultBalanceEther', 'totalAccounts', 'unlockedAccounts']; + for (const [key, value] of Object.entries(options)) { + if (value !== undefined && optionsToInclude.includes(key)) { + validatedOptions[this.snakeCase(key)] = value; + delete validatedOptions[key]; + } + } + return validatedOptions; + } + snakeCase(value) { + return value.replace(/([A-Z]){1}/g, (match) => `_${match.toLowerCase()}`); + } +} +exports.GanacheService = GanacheService; diff --git a/dist/sandbox/index.d.ts b/dist/sandbox/index.d.ts new file mode 100644 index 00000000..5d4dc8f4 --- /dev/null +++ b/dist/sandbox/index.d.ts @@ -0,0 +1,57 @@ +import type { HttpNetworkUserConfig } from 'hardhat/types'; +import { GanacheService } from './ganache-service'; +export declare type SandboxNetworkOptions = { + url: string; + port?: number; + hostname?: string; + chainId: number; + hardfork: string; + gasPrice: number; + gasLimit: number; + allowUnlimitedContractSize: boolean; + locked: boolean; + mnemonic: string; + hdPath: string; + totalAccounts: number; + defaultBalanceEther: number; + dbPath: string; + snapshotPath: string; + keepAliveTimeout: number; + vmErrorsOnRpcResponse: boolean; + logger: { + log: (message: string) => void; + }; +}; +export declare type SandboxOptions = { + verbose?: boolean; + clean?: boolean; + extract?: boolean; + network?: Partial; +}; +export declare type SandboxStartOptions = { + noSnapshot?: boolean; +}; +export declare type SandboxAccount = { + address: string; + privateKey: string; +}; +export declare class Sandbox { + static defaultNetworkOptions(): HttpNetworkUserConfig; + static start(options?: SandboxOptions): Promise; + static create(options: SandboxOptions): Promise; + version: string; + accounts: Record; + options: SandboxOptions; + private ganacheService; + private provider; + private snapshotId?; + constructor(service: GanacheService, options?: SandboxOptions); + start(options?: SandboxStartOptions): Promise; + stop(): Promise; + reset(): Promise; + private snapshot; + private revert; + private getAccounts; + private uncompressedPublicKeyToAddress; +} +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/sandbox/index.d.ts.map b/dist/sandbox/index.d.ts.map new file mode 100644 index 00000000..e66ca737 --- /dev/null +++ b/dist/sandbox/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../sandbox/index.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAE3D,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAInD,oBAAY,qBAAqB,GAAG;IAClC,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,0BAA0B,EAAE,OAAO,CAAC;IACpC,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,qBAAqB,EAAE,OAAO,CAAC;IAC/B,MAAM,EAAE;QAAE,GAAG,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;KAAE,CAAC;CAC5C,CAAC;AAEF,oBAAY,cAAc,GAAG;IAC3B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC,qBAAqB,CAAC,CAAC;CAC1C,CAAC;AAEF,oBAAY,mBAAmB,GAAG;IAChC,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB,CAAC;AAEF,oBAAY,cAAc,GAAG;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAqBF,qBAAa,OAAO;IAClB,MAAM,CAAC,qBAAqB,IAAK,qBAAqB;WAYzC,KAAK,CAAE,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,OAAO,CAAC;WAMtD,MAAM,CAAE,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC;IAmC/D,OAAO,EAAE,MAAM,CAAC;IACT,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IACzC,OAAO,EAAE,cAAc,CAAC;IAE/B,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,QAAQ,CAAmB;IACnC,OAAO,CAAC,UAAU,CAAC,CAAS;gBAEf,OAAO,EAAE,cAAc,EAAE,OAAO,GAAE,cAAmB;IAyB5D,KAAK,CAAE,OAAO,GAAE,mBAA2C,GAAG,OAAO,CAAC,IAAI,CAAC;IAU3E,IAAI,IAAK,OAAO,CAAC,IAAI,CAAC;IAYtB,KAAK,IAAK,OAAO,CAAC,IAAI,CAAC;YAYf,QAAQ;YAIR,MAAM;IAIpB,OAAO,CAAC,WAAW;IAkBnB,OAAO,CAAC,8BAA8B;CAUvC"} \ No newline at end of file diff --git a/dist/sandbox/index.js b/dist/sandbox/index.js new file mode 100644 index 00000000..c1686974 --- /dev/null +++ b/dist/sandbox/index.js @@ -0,0 +1,173 @@ +"use strict"; +var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { + function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } + return new (P || (P = Promise))(function (resolve, reject) { + function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } + function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } + function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); +}; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.Sandbox = void 0; +const fs_1 = __importDefault(require("fs")); +const path_1 = __importDefault(require("path")); +const tar_1 = __importDefault(require("tar")); +const hdkey_1 = __importDefault(require("hdkey")); +const bip39_1 = require("bip39"); +const secp256k1_1 = __importDefault(require("secp256k1")); +const keccak_1 = __importDefault(require("keccak")); +const debug_1 = __importDefault(require("debug")); +const utils_1 = require("../src/utils"); +const ganache_service_1 = require("./ganache-service"); +const log = (0, debug_1.default)('UNS:sandbox'); +const DEFAULT_SERVER_CONFIG = { + url: 'http://localhost:7545', + gasPrice: 20000000000, + gasLimit: 6721975, + defaultBalanceEther: 1000, + totalAccounts: 10, + hardfork: 'london', + allowUnlimitedContractSize: false, + locked: false, + hdPath: 'm/44\'/60\'/0\'/0/', + keepAliveTimeout: 5000, + mnemonic: 'mimic dune forward party defy island absorb insane deputy obvious brother immense', + chainId: 1337, + dbPath: './.sandbox', + snapshotPath: path_1.default.join(__dirname, 'db.tgz'), + vmErrorsOnRpcResponse: true, + logger: { log: () => { } }, +}; +class Sandbox { + constructor(service, options = {}) { + this.ganacheService = service; + this.options = options; + this.provider = service.provider; + this.snapshotId = undefined; + this.version = '0.6'; + const accounts = this.getAccounts((0, utils_1.unwrap)(this.options, 'network')); + this.accounts || (this.accounts = { + owner: accounts[0], + minter: accounts[1], + faucet: accounts[9], + }); + accounts.forEach((account, index) => { + this.accounts[index] = account; + }); + log('Initialized sandbox', { + options: this.options, + accounts: this.accounts, + }); + } + static defaultNetworkOptions() { + return { + url: DEFAULT_SERVER_CONFIG.url, + chainId: DEFAULT_SERVER_CONFIG.chainId, + accounts: { + mnemonic: DEFAULT_SERVER_CONFIG.mnemonic, + path: DEFAULT_SERVER_CONFIG.hdPath, + count: DEFAULT_SERVER_CONFIG.totalAccounts, + }, + }; + } + static start(options = {}) { + return __awaiter(this, void 0, void 0, function* () { + const sandbox = yield Sandbox.create(options); + yield sandbox.start(); + return sandbox; + }); + } + static create(options) { + return __awaiter(this, void 0, void 0, function* () { + options = Object.assign({ clean: true, extract: true, verbose: false }, options); + const networkOptions = Object.assign(Object.assign({}, DEFAULT_SERVER_CONFIG), options.network); + if (options.verbose) { + debug_1.default.enable('UNS:sandbox*'); + } + const { dbPath, snapshotPath } = networkOptions; + if (options.clean) { + if (fs_1.default.existsSync(dbPath)) { + fs_1.default.rmdirSync(dbPath, { recursive: true }); + } + fs_1.default.mkdirSync(dbPath, { recursive: true }); + log(`Cleaned sandbox database. Path: ${dbPath}`); + } + if (options.extract) { + yield tar_1.default.extract({ cwd: dbPath, file: snapshotPath }); + log(`Prepared sandbox database. [Source: ${snapshotPath}, TargetDir: ${dbPath}]`); + } + const service = new ganache_service_1.GanacheService(Object.assign({}, networkOptions)); + return new Sandbox(service, Object.assign(Object.assign({}, options), { network: networkOptions })); + }); + } + start(options = { noSnapshot: false }) { + return __awaiter(this, void 0, void 0, function* () { + yield this.ganacheService.startServer(); + log('Started sandbox'); + if (options.noSnapshot) + return; + this.snapshotId = yield this.snapshot(); + log('Created snapshot', this.snapshotId); + }); + } + stop() { + return __awaiter(this, void 0, void 0, function* () { + try { + yield this.ganacheService.stopServer(); + log('Stopped sandbox'); + } + catch (e) { + if (e.message.includes('Server is not running')) { + return; + } + throw e; + } + }); + } + reset() { + return __awaiter(this, void 0, void 0, function* () { + if (!this.snapshotId) { + throw new Error('Snapshot not found. Most probably Sandbox has not been started.'); + } + yield this.revert(this.snapshotId); + log('Reverted snapshot', this.snapshotId); + this.snapshotId = yield this.snapshot(); + log('Created snapshot', this.snapshotId); + }); + } + snapshot() { + return __awaiter(this, void 0, void 0, function* () { + return yield this.provider.send('evm_snapshot'); + }); + } + revert(snapshotId) { + return __awaiter(this, void 0, void 0, function* () { + return yield this.provider.send('evm_revert', [snapshotId]); + }); + } + getAccounts(options) { + const { mnemonic, hdPath, totalAccounts } = options; + const hdKey = hdkey_1.default.fromMasterSeed((0, bip39_1.mnemonicToSeedSync)(mnemonic)); + const accounts = Array(totalAccounts); + for (let index = 0; index < totalAccounts; index++) { + const acc = hdKey.derive(hdPath + index); + accounts[index] = { + privateKey: '0x' + acc.privateKey.toString('hex'), + address: '0x' + this.uncompressedPublicKeyToAddress(acc.publicKey), + }; + } + return accounts; + } + uncompressedPublicKeyToAddress(uncompressedPublicKey) { + var _a; + const compresedPublicKey = secp256k1_1.default.publicKeyConvert(uncompressedPublicKey, false).slice(1); + const hasher = (0, keccak_1.default)('keccak256'); + (_a = hasher['_state']) === null || _a === void 0 ? void 0 : _a.absorb(compresedPublicKey); + return hasher.digest().subarray(-20).toString('hex'); + } +} +exports.Sandbox = Sandbox; diff --git a/dist/src/config.d.ts b/dist/src/config.d.ts new file mode 100644 index 00000000..4a17db44 --- /dev/null +++ b/dist/src/config.d.ts @@ -0,0 +1,9 @@ +import { NsConfig, NsNetworkConfig } from './types'; +export declare enum NameService { + UNS = "UNS", + ENS = "ENS" +} +export declare function getConfig(nameService?: NameService): NsConfig; +export declare function getNetworkConfig(chainId: number, nameService?: NameService): NsNetworkConfig; +export declare function mergeNetworkConfig(config: NsConfig, nameService?: NameService): void; +//# sourceMappingURL=config.d.ts.map \ No newline at end of file diff --git a/dist/src/config.d.ts.map b/dist/src/config.d.ts.map new file mode 100644 index 00000000..1d1b572b --- /dev/null +++ b/dist/src/config.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAEpD,oBAAY,WAAW;IACrB,GAAG,QAAQ;IACX,GAAG,QAAQ;CACZ;AAOD,wBAAgB,SAAS,CAAE,WAAW,cAAkB,GAAG,QAAQ,CAIlE;AAED,wBAAgB,gBAAgB,CAAE,OAAO,EAAE,MAAM,EAAE,WAAW,cAAkB,GAAG,eAAe,CAGjG;AAED,wBAAgB,kBAAkB,CAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,cAAkB,QAGlF"} \ No newline at end of file diff --git a/dist/src/config.js b/dist/src/config.js new file mode 100644 index 00000000..0b160307 --- /dev/null +++ b/dist/src/config.js @@ -0,0 +1,33 @@ +"use strict"; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.mergeNetworkConfig = exports.getNetworkConfig = exports.getConfig = exports.NameService = void 0; +const fs_1 = __importDefault(require("fs")); +const lodash_1 = require("lodash"); +var NameService; +(function (NameService) { + NameService["UNS"] = "UNS"; + NameService["ENS"] = "ENS"; +})(NameService = exports.NameService || (exports.NameService = {})); +const configPathMap = { + UNS: './uns-config.json', + ENS: './ens-config.json', +}; +function getConfig(nameService = NameService.UNS) { + const path = configPathMap[nameService]; + const file = fs_1.default.existsSync(path) ? fs_1.default.readFileSync(path).toString() : '{}'; + return JSON.parse(file.length ? file : '{}'); +} +exports.getConfig = getConfig; +function getNetworkConfig(chainId, nameService = NameService.UNS) { + const { networks } = getConfig(nameService); + return networks[chainId]; +} +exports.getNetworkConfig = getNetworkConfig; +function mergeNetworkConfig(config, nameService = NameService.UNS) { + const _config = (0, lodash_1.merge)(getConfig(nameService), config); + fs_1.default.writeFileSync(configPathMap[nameService], `${JSON.stringify(_config, null, 4)}\n`); +} +exports.mergeNetworkConfig = mergeNetworkConfig; diff --git a/dist/src/types.d.ts b/dist/src/types.d.ts new file mode 100644 index 00000000..ee4d59f0 --- /dev/null +++ b/dist/src/types.d.ts @@ -0,0 +1,101 @@ +export declare enum ArtifactName { + CNSRegistry = "CNSRegistry", + CNSRegistryForwarder = "CNSRegistryForwarder", + SignatureController = "SignatureController", + MintingController = "MintingController", + URIPrefixController = "URIPrefixController", + Resolver = "dot-crypto/contracts/Resolver.sol:Resolver", + ResolverForwarder = "ResolverForwarder", + UNSRegistry = "UNSRegistry", + MintingManager = "MintingManager", + UNSOperator = "UNSOperator", + MintingManagerForwarder = "MintingManagerForwarder", + ProxyReader = "contracts/ProxyReader.sol:ProxyReader", + DummyStateSender = "DummyStateSender", + CheckpointManager = "SimpleCheckpointManager", + MintableERC721Predicate = "MintableERC721Predicate", + RootChainManager = "RootChainManager", + DotCoinBurner = "DotCoinBurner", + ZilliqaRecover = "ZilliqaRecover", + ENSRegistry = "ENSRegistry", + BaseRegistrarImplementation = "BaseRegistrarImplementation", + ReverseRegistrar = "ReverseRegistrar", + NameWrapper = "NameWrapper", + DummyOracle = "DummyOracle", + StablePriceOracle = "StablePriceOracle", + ETHRegistrarController = "ETHRegistrarController", + PublicResolver = "PublicResolver", + ENSCustody = "ENSCustody", + LegacyENSRegistry = "LegacyENSRegistry", + LegacyETHRegistrarController = "LegacyETHRegistrarController", + DNSRegistrar = "DNSRegistrar", + DNSSECImpl = "DNSSECImpl", + TLDPublicSuffixList = "TLDPublicSuffixList", + RSASHA256Algorithm = "RSASHA256Algorithm", + DummyAlgorithm = "DummyAlgorithm", + SHA1Digest = "SHA1Digest", + SHA256Digest = "SHA256Digest", + SHA1NSEC3Digest = "SHA1NSEC3Digest", + Root = "Root" +} +export declare enum UnsContractName { + UNSRegistry = "UNSRegistry", + CNSRegistry = "CNSRegistry", + MintingManager = "MintingManager", + UNSOperator = "UNSOperator", + ProxyAdmin = "ProxyAdmin", + SignatureController = "SignatureController", + MintingController = "MintingController", + WhitelistedMinter = "WhitelistedMinter", + URIPrefixController = "URIPrefixController", + DomainZoneController = "DomainZoneController", + Resolver = "Resolver", + ProxyReader = "ProxyReader", + TwitterValidationOperator = "TwitterValidationOperator", + FreeMinter = "FreeMinter", + MintableERC721Predicate = "MintableERC721Predicate", + RootChainManager = "RootChainManager", + DotCoinBurner = "DotCoinBurner", + ZilliqaRecover = "ZilliqaRecover" +} +export declare enum EnsContractName { + ENSRegistry = "ENSRegistry", + BaseRegistrarImplementation = "BaseRegistrarImplementation", + ReverseRegistrar = "ReverseRegistrar", + NameWrapper = "NameWrapper", + DummyOracle = "DummyOracle", + StablePriceOracle = "StablePriceOracle", + ETHRegistrarController = "ETHRegistrarController", + PublicResolver = "PublicResolver", + ENSCustody = "ENSCustody", + LegacyENSRegistry = "LegacyENSRegistry", + LegacyETHRegistrarController = "LegacyETHRegistrarController", + DNSRegistrar = "DNSRegistrar", + DNSSECImpl = "DNSSECImpl", + Root = "Root" +} +export declare type ContractName = EnsContractName | UnsContractName; +export declare type ContractConfig = { + address: string; + legacyAddresses: string[]; + deploymentBlock: string; + implementation?: string; + forwarder?: string; + deprecated?: boolean; +}; +export declare type NsNetworkConfig = { + contracts: ContractConfigMap; +}; +export declare type ContractConfigMap = { + [k in ContractName]: ContractConfig; +}; +export declare type NsConfig = { + version?: string; + networks: { + [chainId: number]: NsNetworkConfig; + }; +}; +export declare type DependenciesMap = { + [k in ArtifactName]?: ContractConfig; +}; +//# sourceMappingURL=types.d.ts.map \ No newline at end of file diff --git a/dist/src/types.d.ts.map b/dist/src/types.d.ts.map new file mode 100644 index 00000000..b0d8f8ca --- /dev/null +++ b/dist/src/types.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAIA,oBAAY,YAAY;IACtB,WAAW,gBAAgB;IAC3B,oBAAoB,yBAAyB;IAC7C,mBAAmB,wBAAwB;IAC3C,iBAAiB,sBAAsB;IACvC,mBAAmB,wBAAwB;IAC3C,QAAQ,+CAA+C;IACvD,iBAAiB,sBAAsB;IACvC,WAAW,gBAAgB;IAC3B,cAAc,mBAAmB;IACjC,WAAW,gBAAgB;IAC3B,uBAAuB,4BAA4B;IACnD,WAAW,0CAA0C;IACrD,gBAAgB,qBAAqB;IACrC,iBAAiB,4BAA4B;IAC7C,uBAAuB,4BAA4B;IACnD,gBAAgB,qBAAqB;IACrC,aAAa,kBAAkB;IAC/B,cAAc,mBAAmB;IAGjC,WAAW,gBAAgB;IAC3B,2BAA2B,gCAAgC;IAC3D,gBAAgB,qBAAqB;IACrC,WAAW,gBAAgB;IAC3B,WAAW,gBAAgB;IAC3B,iBAAiB,sBAAsB;IACvC,sBAAsB,2BAA2B;IACjD,cAAc,mBAAmB;IACjC,UAAU,eAAe;IACzB,iBAAiB,sBAAsB;IACvC,4BAA4B,iCAAiC;IAC7D,YAAY,iBAAiB;IAC7B,UAAU,eAAe;IACzB,mBAAmB,wBAAwB;IAC3C,kBAAkB,uBAAuB;IACzC,cAAc,mBAAmB;IACjC,UAAU,eAAe;IACzB,YAAY,iBAAiB;IAC7B,eAAe,oBAAoB;IACnC,IAAI,SAAS;CACd;AAED,oBAAY,eAAe;IACzB,WAAW,gBAAgB;IAC3B,WAAW,gBAAgB;IAC3B,cAAc,mBAAmB;IACjC,WAAW,gBAAgB;IAC3B,UAAU,eAAe;IACzB,mBAAmB,wBAAwB;IAC3C,iBAAiB,sBAAsB;IACvC,iBAAiB,sBAAsB;IACvC,mBAAmB,wBAAwB;IAC3C,oBAAoB,yBAAyB;IAC7C,QAAQ,aAAa;IACrB,WAAW,gBAAgB;IAC3B,yBAAyB,8BAA8B;IACvD,UAAU,eAAe;IACzB,uBAAuB,4BAA4B;IACnD,gBAAgB,qBAAqB;IACrC,aAAa,kBAAkB;IAC/B,cAAc,mBAAmB;CAClC;AAED,oBAAY,eAAe;IACzB,WAAW,gBAAgB;IAC3B,2BAA2B,gCAAgC;IAC3D,gBAAgB,qBAAqB;IACrC,WAAW,gBAAgB;IAC3B,WAAW,gBAAgB;IAC3B,iBAAiB,sBAAsB;IACvC,sBAAsB,2BAA2B;IACjD,cAAc,mBAAmB;IACjC,UAAU,eAAe;IACzB,iBAAiB,sBAAsB;IACvC,4BAA4B,iCAAiC;IAC7D,YAAY,iBAAiB;IAC7B,UAAU,eAAe;IACzB,IAAI,SAAS;CACd;AAED,oBAAY,YAAY,GAAG,eAAe,GAAG,eAAe,CAAC;AAE7D,oBAAY,cAAc,GAAG;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,eAAe,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB,CAAA;AAED,oBAAY,eAAe,GAAG;IAC5B,SAAS,EAAE,iBAAiB,CAAA;CAC7B,CAAA;AAED,oBAAY,iBAAiB,GAAG;KAC7B,CAAC,IAAI,YAAY,GAAG,cAAc;CACpC,CAAA;AAED,oBAAY,QAAQ,GAAG;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE;QACR,CAAC,OAAO,EAAE,MAAM,GAAG,eAAe,CAAA;KACnC,CAAC;CACH,CAAA;AAED,oBAAY,eAAe,GAAG;KAC3B,CAAC,IAAI,YAAY,CAAC,CAAC,EAAE,cAAc;CACrC,CAAA"} \ No newline at end of file diff --git a/dist/src/types.js b/dist/src/types.js new file mode 100644 index 00000000..a9a38925 --- /dev/null +++ b/dist/src/types.js @@ -0,0 +1,82 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.EnsContractName = exports.UnsContractName = exports.ArtifactName = void 0; +var ArtifactName; +(function (ArtifactName) { + ArtifactName["CNSRegistry"] = "CNSRegistry"; + ArtifactName["CNSRegistryForwarder"] = "CNSRegistryForwarder"; + ArtifactName["SignatureController"] = "SignatureController"; + ArtifactName["MintingController"] = "MintingController"; + ArtifactName["URIPrefixController"] = "URIPrefixController"; + ArtifactName["Resolver"] = "dot-crypto/contracts/Resolver.sol:Resolver"; + ArtifactName["ResolverForwarder"] = "ResolverForwarder"; + ArtifactName["UNSRegistry"] = "UNSRegistry"; + ArtifactName["MintingManager"] = "MintingManager"; + ArtifactName["UNSOperator"] = "UNSOperator"; + ArtifactName["MintingManagerForwarder"] = "MintingManagerForwarder"; + ArtifactName["ProxyReader"] = "contracts/ProxyReader.sol:ProxyReader"; + ArtifactName["DummyStateSender"] = "DummyStateSender"; + ArtifactName["CheckpointManager"] = "SimpleCheckpointManager"; + ArtifactName["MintableERC721Predicate"] = "MintableERC721Predicate"; + ArtifactName["RootChainManager"] = "RootChainManager"; + ArtifactName["DotCoinBurner"] = "DotCoinBurner"; + ArtifactName["ZilliqaRecover"] = "ZilliqaRecover"; + ArtifactName["ENSRegistry"] = "ENSRegistry"; + ArtifactName["BaseRegistrarImplementation"] = "BaseRegistrarImplementation"; + ArtifactName["ReverseRegistrar"] = "ReverseRegistrar"; + ArtifactName["NameWrapper"] = "NameWrapper"; + ArtifactName["DummyOracle"] = "DummyOracle"; + ArtifactName["StablePriceOracle"] = "StablePriceOracle"; + ArtifactName["ETHRegistrarController"] = "ETHRegistrarController"; + ArtifactName["PublicResolver"] = "PublicResolver"; + ArtifactName["ENSCustody"] = "ENSCustody"; + ArtifactName["LegacyENSRegistry"] = "LegacyENSRegistry"; + ArtifactName["LegacyETHRegistrarController"] = "LegacyETHRegistrarController"; + ArtifactName["DNSRegistrar"] = "DNSRegistrar"; + ArtifactName["DNSSECImpl"] = "DNSSECImpl"; + ArtifactName["TLDPublicSuffixList"] = "TLDPublicSuffixList"; + ArtifactName["RSASHA256Algorithm"] = "RSASHA256Algorithm"; + ArtifactName["DummyAlgorithm"] = "DummyAlgorithm"; + ArtifactName["SHA1Digest"] = "SHA1Digest"; + ArtifactName["SHA256Digest"] = "SHA256Digest"; + ArtifactName["SHA1NSEC3Digest"] = "SHA1NSEC3Digest"; + ArtifactName["Root"] = "Root"; +})(ArtifactName = exports.ArtifactName || (exports.ArtifactName = {})); +var UnsContractName; +(function (UnsContractName) { + UnsContractName["UNSRegistry"] = "UNSRegistry"; + UnsContractName["CNSRegistry"] = "CNSRegistry"; + UnsContractName["MintingManager"] = "MintingManager"; + UnsContractName["UNSOperator"] = "UNSOperator"; + UnsContractName["ProxyAdmin"] = "ProxyAdmin"; + UnsContractName["SignatureController"] = "SignatureController"; + UnsContractName["MintingController"] = "MintingController"; + UnsContractName["WhitelistedMinter"] = "WhitelistedMinter"; + UnsContractName["URIPrefixController"] = "URIPrefixController"; + UnsContractName["DomainZoneController"] = "DomainZoneController"; + UnsContractName["Resolver"] = "Resolver"; + UnsContractName["ProxyReader"] = "ProxyReader"; + UnsContractName["TwitterValidationOperator"] = "TwitterValidationOperator"; + UnsContractName["FreeMinter"] = "FreeMinter"; + UnsContractName["MintableERC721Predicate"] = "MintableERC721Predicate"; + UnsContractName["RootChainManager"] = "RootChainManager"; + UnsContractName["DotCoinBurner"] = "DotCoinBurner"; + UnsContractName["ZilliqaRecover"] = "ZilliqaRecover"; +})(UnsContractName = exports.UnsContractName || (exports.UnsContractName = {})); +var EnsContractName; +(function (EnsContractName) { + EnsContractName["ENSRegistry"] = "ENSRegistry"; + EnsContractName["BaseRegistrarImplementation"] = "BaseRegistrarImplementation"; + EnsContractName["ReverseRegistrar"] = "ReverseRegistrar"; + EnsContractName["NameWrapper"] = "NameWrapper"; + EnsContractName["DummyOracle"] = "DummyOracle"; + EnsContractName["StablePriceOracle"] = "StablePriceOracle"; + EnsContractName["ETHRegistrarController"] = "ETHRegistrarController"; + EnsContractName["PublicResolver"] = "PublicResolver"; + EnsContractName["ENSCustody"] = "ENSCustody"; + EnsContractName["LegacyENSRegistry"] = "LegacyENSRegistry"; + EnsContractName["LegacyETHRegistrarController"] = "LegacyETHRegistrarController"; + EnsContractName["DNSRegistrar"] = "DNSRegistrar"; + EnsContractName["DNSSECImpl"] = "DNSSECImpl"; + EnsContractName["Root"] = "Root"; +})(EnsContractName = exports.EnsContractName || (exports.EnsContractName = {})); diff --git a/dist/src/utils.d.ts b/dist/src/utils.d.ts new file mode 100644 index 00000000..9326fc1b --- /dev/null +++ b/dist/src/utils.d.ts @@ -0,0 +1,5 @@ +import type { ContractConfig, ContractName, DependenciesMap } from './types'; +export declare function unwrap(object: object, key: string): any; +export declare function unwrapDependencies(dependencies: DependenciesMap, keys: ContractName[]): ContractConfig[]; +export declare function notNullSha(value: string): string; +//# sourceMappingURL=utils.d.ts.map \ No newline at end of file diff --git a/dist/src/utils.d.ts.map b/dist/src/utils.d.ts.map new file mode 100644 index 00000000..017ed157 --- /dev/null +++ b/dist/src/utils.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAG7E,wBAAgB,MAAM,CAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,GAAG,CAMxD;AAED,wBAAgB,kBAAkB,CAAE,YAAY,EAAE,eAAe,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,cAAc,EAAE,CAEzG;AAED,wBAAgB,UAAU,CAAE,KAAK,EAAE,MAAM,UAOxC"} \ No newline at end of file diff --git a/dist/src/utils.js b/dist/src/utils.js new file mode 100644 index 00000000..4c3dcf6b --- /dev/null +++ b/dist/src/utils.js @@ -0,0 +1,23 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.notNullSha = exports.unwrapDependencies = exports.unwrap = void 0; +const web3_utils_1 = require("web3-utils"); +function unwrap(object, key) { + if (!object[key]) { + throw new Error(`Unwrap: cannot find key ${key} on object ${object.toString()}`); + } + return object[key]; +} +exports.unwrap = unwrap; +function unwrapDependencies(dependencies, keys) { + return keys.map((key) => unwrap(dependencies, key)); +} +exports.unwrapDependencies = unwrapDependencies; +function notNullSha(value) { + const res = (0, web3_utils_1.sha3)(value); + if (!res) { + throw new Error('notNullSha: SHA returns null'); + } + return res; +} +exports.notNullSha = notNullSha; diff --git a/dist/types/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils.d.ts new file mode 100644 index 00000000..64d1db82 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils.d.ts @@ -0,0 +1,21 @@ +import type { BaseContract, FunctionFragment, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener } from "../../../../common"; +export interface BytesUtilsInterface extends Interface { +} +export interface BytesUtils extends BaseContract { + connect(runner?: ContractRunner | null): BytesUtils; + waitForDeployment(): Promise; + interface: BytesUtilsInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + getFunction(key: string | FunctionFragment): T; + filters: {}; +} +//# sourceMappingURL=BytesUtils.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils.d.ts.map new file mode 100644 index 00000000..cc772b7b --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"BytesUtils.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,gBAAgB,EAChB,SAAS,EACT,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,aAAa,EACd,MAAM,oBAAoB,CAAC;AAE5B,MAAM,WAAW,mBAAoB,SAAQ,SAAS;CAAG;AAEzD,MAAM,WAAW,UAAW,SAAQ,YAAY;IAC9C,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,UAAU,CAAC;IACpD,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,mBAAmB,CAAC;IAE/B,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,OAAO,EAAE,EAAE,CAAC;CACb"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils.js b/dist/types/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/dnssec-oracle/index.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/dnssec-oracle/index.d.ts new file mode 100644 index 00000000..899ea03a --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/dnssec-oracle/index.d.ts @@ -0,0 +1,2 @@ +export type { BytesUtils } from "./BytesUtils"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/dnssec-oracle/index.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/dnssec-oracle/index.d.ts.map new file mode 100644 index 00000000..3ddab7c9 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/dnssec-oracle/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/dnssec-oracle/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/dnssec-oracle/index.js b/dist/types/@ensdomains/ens-contracts/contracts/dnssec-oracle/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/dnssec-oracle/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation.d.ts new file mode 100644 index 00000000..acb74773 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation.d.ts @@ -0,0 +1,434 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; +export interface BaseRegistrarImplementationInterface extends Interface { + getFunction(nameOrSignature: "GRACE_PERIOD" | "addController" | "approve" | "available" | "balanceOf" | "baseNode" | "controllers" | "ens" | "getApproved" | "isApprovedForAll" | "name" | "nameExpires" | "owner" | "ownerOf" | "reclaim" | "register" | "registerOnly" | "removeController" | "renew" | "renounceOwnership" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "setApprovalForAll" | "setResolver" | "supportsInterface" | "symbol" | "tokenURI" | "transferFrom" | "transferOwnership"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "ControllerAdded" | "ControllerRemoved" | "NameMigrated" | "NameRegistered" | "NameRenewed" | "OwnershipTransferred" | "Transfer"): EventFragment; + encodeFunctionData(functionFragment: "GRACE_PERIOD", values?: undefined): string; + encodeFunctionData(functionFragment: "addController", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "available", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "baseNode", values?: undefined): string; + encodeFunctionData(functionFragment: "controllers", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "ens", values?: undefined): string; + encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "name", values?: undefined): string; + encodeFunctionData(functionFragment: "nameExpires", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "reclaim", values: [BigNumberish, AddressLike]): string; + encodeFunctionData(functionFragment: "register", values: [BigNumberish, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "registerOnly", values: [BigNumberish, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "removeController", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "renew", values: [BigNumberish, BigNumberish]): string; + encodeFunctionData(functionFragment: "renounceOwnership", values?: undefined): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; + encodeFunctionData(functionFragment: "setResolver", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "symbol", values?: undefined): string; + encodeFunctionData(functionFragment: "tokenURI", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "transferOwnership", values: [AddressLike]): string; + decodeFunctionResult(functionFragment: "GRACE_PERIOD", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "addController", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "available", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "baseNode", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "controllers", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ens", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "nameExpires", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "reclaim", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "register", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "registerOnly", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "removeController", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renew", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceOwnership", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setResolver", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "tokenURI", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result; +} +export declare namespace ApprovalEvent { + type InputTuple = [ + owner: AddressLike, + approved: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [owner: string, approved: string, tokenId: bigint]; + interface OutputObject { + owner: string; + approved: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ApprovalForAllEvent { + type InputTuple = [ + owner: AddressLike, + operator: AddressLike, + approved: boolean + ]; + type OutputTuple = [ + owner: string, + operator: string, + approved: boolean + ]; + interface OutputObject { + owner: string; + operator: string; + approved: boolean; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ControllerAddedEvent { + type InputTuple = [controller: AddressLike]; + type OutputTuple = [controller: string]; + interface OutputObject { + controller: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ControllerRemovedEvent { + type InputTuple = [controller: AddressLike]; + type OutputTuple = [controller: string]; + interface OutputObject { + controller: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NameMigratedEvent { + type InputTuple = [ + id: BigNumberish, + owner: AddressLike, + expires: BigNumberish + ]; + type OutputTuple = [id: bigint, owner: string, expires: bigint]; + interface OutputObject { + id: bigint; + owner: string; + expires: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NameRegisteredEvent { + type InputTuple = [ + id: BigNumberish, + owner: AddressLike, + expires: BigNumberish + ]; + type OutputTuple = [id: bigint, owner: string, expires: bigint]; + interface OutputObject { + id: bigint; + owner: string; + expires: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NameRenewedEvent { + type InputTuple = [id: BigNumberish, expires: BigNumberish]; + type OutputTuple = [id: bigint, expires: bigint]; + interface OutputObject { + id: bigint; + expires: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace OwnershipTransferredEvent { + type InputTuple = [previousOwner: AddressLike, newOwner: AddressLike]; + type OutputTuple = [previousOwner: string, newOwner: string]; + interface OutputObject { + previousOwner: string; + newOwner: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferEvent { + type InputTuple = [ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [from: string, to: string, tokenId: bigint]; + interface OutputObject { + from: string; + to: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface BaseRegistrarImplementation extends BaseContract { + connect(runner?: ContractRunner | null): BaseRegistrarImplementation; + waitForDeployment(): Promise; + interface: BaseRegistrarImplementationInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + GRACE_PERIOD: TypedContractMethod<[], [bigint], "view">; + addController: TypedContractMethod<[ + controller: AddressLike + ], [ + void + ], "nonpayable">; + approve: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + available: TypedContractMethod<[id: BigNumberish], [boolean], "view">; + balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; + baseNode: TypedContractMethod<[], [string], "view">; + controllers: TypedContractMethod<[arg0: AddressLike], [boolean], "view">; + ens: TypedContractMethod<[], [string], "view">; + getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + isApprovedForAll: TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + name: TypedContractMethod<[], [string], "view">; + nameExpires: TypedContractMethod<[id: BigNumberish], [bigint], "view">; + owner: TypedContractMethod<[], [string], "view">; + ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + reclaim: TypedContractMethod<[ + id: BigNumberish, + owner: AddressLike + ], [ + void + ], "nonpayable">; + register: TypedContractMethod<[ + id: BigNumberish, + owner: AddressLike, + duration: BigNumberish + ], [ + bigint + ], "nonpayable">; + registerOnly: TypedContractMethod<[ + id: BigNumberish, + owner: AddressLike, + duration: BigNumberish + ], [ + bigint + ], "nonpayable">; + removeController: TypedContractMethod<[ + controller: AddressLike + ], [ + void + ], "nonpayable">; + renew: TypedContractMethod<[ + id: BigNumberish, + duration: BigNumberish + ], [ + bigint + ], "nonpayable">; + renounceOwnership: TypedContractMethod<[], [void], "nonpayable">; + "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + setApprovalForAll: TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + setResolver: TypedContractMethod<[ + resolver: AddressLike + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceID: BytesLike + ], [ + boolean + ], "view">; + symbol: TypedContractMethod<[], [string], "view">; + tokenURI: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + transferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + transferOwnership: TypedContractMethod<[ + newOwner: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "GRACE_PERIOD"): TypedContractMethod<[], [bigint], "view">; + getFunction(nameOrSignature: "addController"): TypedContractMethod<[controller: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "approve"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "available"): TypedContractMethod<[id: BigNumberish], [boolean], "view">; + getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; + getFunction(nameOrSignature: "baseNode"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "controllers"): TypedContractMethod<[arg0: AddressLike], [boolean], "view">; + getFunction(nameOrSignature: "ens"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "nameExpires"): TypedContractMethod<[id: BigNumberish], [bigint], "view">; + getFunction(nameOrSignature: "owner"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "reclaim"): TypedContractMethod<[ + id: BigNumberish, + owner: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "register"): TypedContractMethod<[ + id: BigNumberish, + owner: AddressLike, + duration: BigNumberish + ], [ + bigint + ], "nonpayable">; + getFunction(nameOrSignature: "registerOnly"): TypedContractMethod<[ + id: BigNumberish, + owner: AddressLike, + duration: BigNumberish + ], [ + bigint + ], "nonpayable">; + getFunction(nameOrSignature: "removeController"): TypedContractMethod<[controller: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "renew"): TypedContractMethod<[ + id: BigNumberish, + duration: BigNumberish + ], [ + bigint + ], "nonpayable">; + getFunction(nameOrSignature: "renounceOwnership"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setResolver"): TypedContractMethod<[resolver: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceID: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "symbol"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "tokenURI"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "transferOwnership"): TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">; + getEvent(key: "Approval"): TypedContractEvent; + getEvent(key: "ApprovalForAll"): TypedContractEvent; + getEvent(key: "ControllerAdded"): TypedContractEvent; + getEvent(key: "ControllerRemoved"): TypedContractEvent; + getEvent(key: "NameMigrated"): TypedContractEvent; + getEvent(key: "NameRegistered"): TypedContractEvent; + getEvent(key: "NameRenewed"): TypedContractEvent; + getEvent(key: "OwnershipTransferred"): TypedContractEvent; + getEvent(key: "Transfer"): TypedContractEvent; + filters: { + "Approval(address,address,uint256)": TypedContractEvent; + Approval: TypedContractEvent; + "ApprovalForAll(address,address,bool)": TypedContractEvent; + ApprovalForAll: TypedContractEvent; + "ControllerAdded(address)": TypedContractEvent; + ControllerAdded: TypedContractEvent; + "ControllerRemoved(address)": TypedContractEvent; + ControllerRemoved: TypedContractEvent; + "NameMigrated(uint256,address,uint256)": TypedContractEvent; + NameMigrated: TypedContractEvent; + "NameRegistered(uint256,address,uint256)": TypedContractEvent; + NameRegistered: TypedContractEvent; + "NameRenewed(uint256,uint256)": TypedContractEvent; + NameRenewed: TypedContractEvent; + "OwnershipTransferred(address,address)": TypedContractEvent; + OwnershipTransferred: TypedContractEvent; + "Transfer(address,address,uint256)": TypedContractEvent; + Transfer: TypedContractEvent; + }; +} +//# sourceMappingURL=BaseRegistrarImplementation.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation.d.ts.map new file mode 100644 index 00000000..1e59e36d --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"BaseRegistrarImplementation.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation.js b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle.d.ts new file mode 100644 index 00000000..7ad4230c --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle.d.ts @@ -0,0 +1,30 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; +export interface DummyOracleInterface extends Interface { + getFunction(nameOrSignature: "latestAnswer" | "set"): FunctionFragment; + encodeFunctionData(functionFragment: "latestAnswer", values?: undefined): string; + encodeFunctionData(functionFragment: "set", values: [BigNumberish]): string; + decodeFunctionResult(functionFragment: "latestAnswer", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "set", data: BytesLike): Result; +} +export interface DummyOracle extends BaseContract { + connect(runner?: ContractRunner | null): DummyOracle; + waitForDeployment(): Promise; + interface: DummyOracleInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + latestAnswer: TypedContractMethod<[], [bigint], "view">; + set: TypedContractMethod<[_value: BigNumberish], [void], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "latestAnswer"): TypedContractMethod<[], [bigint], "view">; + getFunction(nameOrSignature: "set"): TypedContractMethod<[_value: BigNumberish], [void], "nonpayable">; + filters: {}; +} +//# sourceMappingURL=DummyOracle.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle.d.ts.map new file mode 100644 index 00000000..3f19a598 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"DummyOracle.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle.js b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController.d.ts new file mode 100644 index 00000000..bdeff9f6 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController.d.ts @@ -0,0 +1,291 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; +export declare namespace IPriceOracle { + type PriceStruct = { + base: BigNumberish; + premium: BigNumberish; + }; + type PriceStructOutput = [base: bigint, premium: bigint] & { + base: bigint; + premium: bigint; + }; +} +export interface ETHRegistrarControllerInterface extends Interface { + getFunction(nameOrSignature: "MIN_REGISTRATION_DURATION" | "available" | "commit" | "commitments" | "makeCommitment" | "maxCommitmentAge" | "minCommitmentAge" | "nameWrapper" | "owner" | "prices" | "recoverFunds" | "register" | "renew" | "renounceOwnership" | "rentPrice" | "reverseRegistrar" | "supportsInterface" | "transferOwnership" | "valid" | "withdraw"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "NameRegistered" | "NameRenewed" | "OwnershipTransferred"): EventFragment; + encodeFunctionData(functionFragment: "MIN_REGISTRATION_DURATION", values?: undefined): string; + encodeFunctionData(functionFragment: "available", values: [string]): string; + encodeFunctionData(functionFragment: "commit", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "commitments", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "makeCommitment", values: [ + string, + AddressLike, + BigNumberish, + BytesLike, + AddressLike, + BytesLike[], + boolean, + BigNumberish + ]): string; + encodeFunctionData(functionFragment: "maxCommitmentAge", values?: undefined): string; + encodeFunctionData(functionFragment: "minCommitmentAge", values?: undefined): string; + encodeFunctionData(functionFragment: "nameWrapper", values?: undefined): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData(functionFragment: "prices", values?: undefined): string; + encodeFunctionData(functionFragment: "recoverFunds", values: [AddressLike, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "register", values: [ + string, + AddressLike, + BigNumberish, + BytesLike, + AddressLike, + BytesLike[], + boolean, + BigNumberish + ]): string; + encodeFunctionData(functionFragment: "renew", values: [string, BigNumberish]): string; + encodeFunctionData(functionFragment: "renounceOwnership", values?: undefined): string; + encodeFunctionData(functionFragment: "rentPrice", values: [string, BigNumberish]): string; + encodeFunctionData(functionFragment: "reverseRegistrar", values?: undefined): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "transferOwnership", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "valid", values: [string]): string; + encodeFunctionData(functionFragment: "withdraw", values?: undefined): string; + decodeFunctionResult(functionFragment: "MIN_REGISTRATION_DURATION", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "available", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "commit", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "commitments", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "makeCommitment", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "maxCommitmentAge", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "minCommitmentAge", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "nameWrapper", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "prices", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "recoverFunds", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "register", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renew", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceOwnership", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "rentPrice", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "reverseRegistrar", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "valid", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "withdraw", data: BytesLike): Result; +} +export declare namespace NameRegisteredEvent { + type InputTuple = [ + name: string, + label: BytesLike, + owner: AddressLike, + baseCost: BigNumberish, + premium: BigNumberish, + expires: BigNumberish + ]; + type OutputTuple = [ + name: string, + label: string, + owner: string, + baseCost: bigint, + premium: bigint, + expires: bigint + ]; + interface OutputObject { + name: string; + label: string; + owner: string; + baseCost: bigint; + premium: bigint; + expires: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NameRenewedEvent { + type InputTuple = [ + name: string, + label: BytesLike, + cost: BigNumberish, + expires: BigNumberish + ]; + type OutputTuple = [ + name: string, + label: string, + cost: bigint, + expires: bigint + ]; + interface OutputObject { + name: string; + label: string; + cost: bigint; + expires: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace OwnershipTransferredEvent { + type InputTuple = [previousOwner: AddressLike, newOwner: AddressLike]; + type OutputTuple = [previousOwner: string, newOwner: string]; + interface OutputObject { + previousOwner: string; + newOwner: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface ETHRegistrarController extends BaseContract { + connect(runner?: ContractRunner | null): ETHRegistrarController; + waitForDeployment(): Promise; + interface: ETHRegistrarControllerInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + MIN_REGISTRATION_DURATION: TypedContractMethod<[], [bigint], "view">; + available: TypedContractMethod<[name: string], [boolean], "view">; + commit: TypedContractMethod<[commitment: BytesLike], [void], "nonpayable">; + commitments: TypedContractMethod<[arg0: BytesLike], [bigint], "view">; + makeCommitment: TypedContractMethod<[ + name: string, + owner: AddressLike, + duration: BigNumberish, + secret: BytesLike, + resolver: AddressLike, + data: BytesLike[], + reverseRecord: boolean, + ownerControlledFuses: BigNumberish + ], [ + string + ], "view">; + maxCommitmentAge: TypedContractMethod<[], [bigint], "view">; + minCommitmentAge: TypedContractMethod<[], [bigint], "view">; + nameWrapper: TypedContractMethod<[], [string], "view">; + owner: TypedContractMethod<[], [string], "view">; + prices: TypedContractMethod<[], [string], "view">; + recoverFunds: TypedContractMethod<[ + _token: AddressLike, + _to: AddressLike, + _amount: BigNumberish + ], [ + void + ], "nonpayable">; + register: TypedContractMethod<[ + name: string, + owner: AddressLike, + duration: BigNumberish, + secret: BytesLike, + resolver: AddressLike, + data: BytesLike[], + reverseRecord: boolean, + ownerControlledFuses: BigNumberish + ], [ + void + ], "payable">; + renew: TypedContractMethod<[ + name: string, + duration: BigNumberish + ], [ + void + ], "payable">; + renounceOwnership: TypedContractMethod<[], [void], "nonpayable">; + rentPrice: TypedContractMethod<[ + name: string, + duration: BigNumberish + ], [ + IPriceOracle.PriceStructOutput + ], "view">; + reverseRegistrar: TypedContractMethod<[], [string], "view">; + supportsInterface: TypedContractMethod<[ + interfaceID: BytesLike + ], [ + boolean + ], "view">; + transferOwnership: TypedContractMethod<[ + newOwner: AddressLike + ], [ + void + ], "nonpayable">; + valid: TypedContractMethod<[name: string], [boolean], "view">; + withdraw: TypedContractMethod<[], [void], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "MIN_REGISTRATION_DURATION"): TypedContractMethod<[], [bigint], "view">; + getFunction(nameOrSignature: "available"): TypedContractMethod<[name: string], [boolean], "view">; + getFunction(nameOrSignature: "commit"): TypedContractMethod<[commitment: BytesLike], [void], "nonpayable">; + getFunction(nameOrSignature: "commitments"): TypedContractMethod<[arg0: BytesLike], [bigint], "view">; + getFunction(nameOrSignature: "makeCommitment"): TypedContractMethod<[ + name: string, + owner: AddressLike, + duration: BigNumberish, + secret: BytesLike, + resolver: AddressLike, + data: BytesLike[], + reverseRecord: boolean, + ownerControlledFuses: BigNumberish + ], [ + string + ], "view">; + getFunction(nameOrSignature: "maxCommitmentAge"): TypedContractMethod<[], [bigint], "view">; + getFunction(nameOrSignature: "minCommitmentAge"): TypedContractMethod<[], [bigint], "view">; + getFunction(nameOrSignature: "nameWrapper"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "owner"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "prices"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "recoverFunds"): TypedContractMethod<[ + _token: AddressLike, + _to: AddressLike, + _amount: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "register"): TypedContractMethod<[ + name: string, + owner: AddressLike, + duration: BigNumberish, + secret: BytesLike, + resolver: AddressLike, + data: BytesLike[], + reverseRecord: boolean, + ownerControlledFuses: BigNumberish + ], [ + void + ], "payable">; + getFunction(nameOrSignature: "renew"): TypedContractMethod<[ + name: string, + duration: BigNumberish + ], [ + void + ], "payable">; + getFunction(nameOrSignature: "renounceOwnership"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "rentPrice"): TypedContractMethod<[ + name: string, + duration: BigNumberish + ], [ + IPriceOracle.PriceStructOutput + ], "view">; + getFunction(nameOrSignature: "reverseRegistrar"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceID: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "transferOwnership"): TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "valid"): TypedContractMethod<[name: string], [boolean], "view">; + getFunction(nameOrSignature: "withdraw"): TypedContractMethod<[], [void], "nonpayable">; + getEvent(key: "NameRegistered"): TypedContractEvent; + getEvent(key: "NameRenewed"): TypedContractEvent; + getEvent(key: "OwnershipTransferred"): TypedContractEvent; + filters: { + "NameRegistered(string,bytes32,address,uint256,uint256,uint256)": TypedContractEvent; + NameRegistered: TypedContractEvent; + "NameRenewed(string,bytes32,uint256,uint256)": TypedContractEvent; + NameRenewed: TypedContractEvent; + "OwnershipTransferred(address,address)": TypedContractEvent; + OwnershipTransferred: TypedContractEvent; + }; +} +//# sourceMappingURL=ETHRegistrarController.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController.d.ts.map new file mode 100644 index 00000000..6579127a --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ETHRegistrarController.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController.js b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar.d.ts new file mode 100644 index 00000000..9f7cc3b5 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar.d.ts @@ -0,0 +1,359 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; +export interface IBaseRegistrarInterface extends Interface { + getFunction(nameOrSignature: "addController" | "approve" | "available" | "balanceOf" | "getApproved" | "isApprovedForAll" | "nameExpires" | "ownerOf" | "reclaim" | "register" | "removeController" | "renew" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "setApprovalForAll" | "setResolver" | "supportsInterface" | "transferFrom"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "ControllerAdded" | "ControllerRemoved" | "NameMigrated" | "NameRegistered" | "NameRenewed" | "Transfer"): EventFragment; + encodeFunctionData(functionFragment: "addController", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "available", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "nameExpires", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "reclaim", values: [BigNumberish, AddressLike]): string; + encodeFunctionData(functionFragment: "register", values: [BigNumberish, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "removeController", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "renew", values: [BigNumberish, BigNumberish]): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; + encodeFunctionData(functionFragment: "setResolver", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; + decodeFunctionResult(functionFragment: "addController", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "available", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "nameExpires", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "reclaim", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "register", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "removeController", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renew", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setResolver", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; +} +export declare namespace ApprovalEvent { + type InputTuple = [ + owner: AddressLike, + approved: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [owner: string, approved: string, tokenId: bigint]; + interface OutputObject { + owner: string; + approved: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ApprovalForAllEvent { + type InputTuple = [ + owner: AddressLike, + operator: AddressLike, + approved: boolean + ]; + type OutputTuple = [ + owner: string, + operator: string, + approved: boolean + ]; + interface OutputObject { + owner: string; + operator: string; + approved: boolean; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ControllerAddedEvent { + type InputTuple = [controller: AddressLike]; + type OutputTuple = [controller: string]; + interface OutputObject { + controller: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ControllerRemovedEvent { + type InputTuple = [controller: AddressLike]; + type OutputTuple = [controller: string]; + interface OutputObject { + controller: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NameMigratedEvent { + type InputTuple = [ + id: BigNumberish, + owner: AddressLike, + expires: BigNumberish + ]; + type OutputTuple = [id: bigint, owner: string, expires: bigint]; + interface OutputObject { + id: bigint; + owner: string; + expires: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NameRegisteredEvent { + type InputTuple = [ + id: BigNumberish, + owner: AddressLike, + expires: BigNumberish + ]; + type OutputTuple = [id: bigint, owner: string, expires: bigint]; + interface OutputObject { + id: bigint; + owner: string; + expires: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NameRenewedEvent { + type InputTuple = [id: BigNumberish, expires: BigNumberish]; + type OutputTuple = [id: bigint, expires: bigint]; + interface OutputObject { + id: bigint; + expires: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferEvent { + type InputTuple = [ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [from: string, to: string, tokenId: bigint]; + interface OutputObject { + from: string; + to: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface IBaseRegistrar extends BaseContract { + connect(runner?: ContractRunner | null): IBaseRegistrar; + waitForDeployment(): Promise; + interface: IBaseRegistrarInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + addController: TypedContractMethod<[ + controller: AddressLike + ], [ + void + ], "nonpayable">; + approve: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + available: TypedContractMethod<[id: BigNumberish], [boolean], "view">; + balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; + getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + isApprovedForAll: TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + nameExpires: TypedContractMethod<[id: BigNumberish], [bigint], "view">; + ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + reclaim: TypedContractMethod<[ + id: BigNumberish, + owner: AddressLike + ], [ + void + ], "nonpayable">; + register: TypedContractMethod<[ + id: BigNumberish, + owner: AddressLike, + duration: BigNumberish + ], [ + bigint + ], "nonpayable">; + removeController: TypedContractMethod<[ + controller: AddressLike + ], [ + void + ], "nonpayable">; + renew: TypedContractMethod<[ + id: BigNumberish, + duration: BigNumberish + ], [ + bigint + ], "nonpayable">; + "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + setApprovalForAll: TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + setResolver: TypedContractMethod<[ + resolver: AddressLike + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + transferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "addController"): TypedContractMethod<[controller: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "approve"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "available"): TypedContractMethod<[id: BigNumberish], [boolean], "view">; + getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; + getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "nameExpires"): TypedContractMethod<[id: BigNumberish], [bigint], "view">; + getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "reclaim"): TypedContractMethod<[ + id: BigNumberish, + owner: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "register"): TypedContractMethod<[ + id: BigNumberish, + owner: AddressLike, + duration: BigNumberish + ], [ + bigint + ], "nonpayable">; + getFunction(nameOrSignature: "removeController"): TypedContractMethod<[controller: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "renew"): TypedContractMethod<[ + id: BigNumberish, + duration: BigNumberish + ], [ + bigint + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setResolver"): TypedContractMethod<[resolver: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getEvent(key: "Approval"): TypedContractEvent; + getEvent(key: "ApprovalForAll"): TypedContractEvent; + getEvent(key: "ControllerAdded"): TypedContractEvent; + getEvent(key: "ControllerRemoved"): TypedContractEvent; + getEvent(key: "NameMigrated"): TypedContractEvent; + getEvent(key: "NameRegistered"): TypedContractEvent; + getEvent(key: "NameRenewed"): TypedContractEvent; + getEvent(key: "Transfer"): TypedContractEvent; + filters: { + "Approval(address,address,uint256)": TypedContractEvent; + Approval: TypedContractEvent; + "ApprovalForAll(address,address,bool)": TypedContractEvent; + ApprovalForAll: TypedContractEvent; + "ControllerAdded(address)": TypedContractEvent; + ControllerAdded: TypedContractEvent; + "ControllerRemoved(address)": TypedContractEvent; + ControllerRemoved: TypedContractEvent; + "NameMigrated(uint256,address,uint256)": TypedContractEvent; + NameMigrated: TypedContractEvent; + "NameRegistered(uint256,address,uint256)": TypedContractEvent; + NameRegistered: TypedContractEvent; + "NameRenewed(uint256,uint256)": TypedContractEvent; + NameRenewed: TypedContractEvent; + "Transfer(address,address,uint256)": TypedContractEvent; + Transfer: TypedContractEvent; + }; +} +//# sourceMappingURL=IBaseRegistrar.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar.d.ts.map new file mode 100644 index 00000000..e3f5d2f2 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IBaseRegistrar.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar.js b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController.d.ts new file mode 100644 index 00000000..0f15d324 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController.d.ts @@ -0,0 +1,133 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; +export declare namespace IPriceOracle { + type PriceStruct = { + base: BigNumberish; + premium: BigNumberish; + }; + type PriceStructOutput = [base: bigint, premium: bigint] & { + base: bigint; + premium: bigint; + }; +} +export interface IETHRegistrarControllerInterface extends Interface { + getFunction(nameOrSignature: "available" | "commit" | "makeCommitment" | "register" | "renew" | "rentPrice"): FunctionFragment; + encodeFunctionData(functionFragment: "available", values: [string]): string; + encodeFunctionData(functionFragment: "commit", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "makeCommitment", values: [ + string, + AddressLike, + BigNumberish, + BytesLike, + AddressLike, + BytesLike[], + boolean, + BigNumberish + ]): string; + encodeFunctionData(functionFragment: "register", values: [ + string, + AddressLike, + BigNumberish, + BytesLike, + AddressLike, + BytesLike[], + boolean, + BigNumberish + ]): string; + encodeFunctionData(functionFragment: "renew", values: [string, BigNumberish]): string; + encodeFunctionData(functionFragment: "rentPrice", values: [string, BigNumberish]): string; + decodeFunctionResult(functionFragment: "available", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "commit", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "makeCommitment", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "register", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renew", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "rentPrice", data: BytesLike): Result; +} +export interface IETHRegistrarController extends BaseContract { + connect(runner?: ContractRunner | null): IETHRegistrarController; + waitForDeployment(): Promise; + interface: IETHRegistrarControllerInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + available: TypedContractMethod<[arg0: string], [boolean], "nonpayable">; + commit: TypedContractMethod<[arg0: BytesLike], [void], "nonpayable">; + makeCommitment: TypedContractMethod<[ + arg0: string, + arg1: AddressLike, + arg2: BigNumberish, + arg3: BytesLike, + arg4: AddressLike, + arg5: BytesLike[], + arg6: boolean, + arg7: BigNumberish + ], [ + string + ], "view">; + register: TypedContractMethod<[ + arg0: string, + arg1: AddressLike, + arg2: BigNumberish, + arg3: BytesLike, + arg4: AddressLike, + arg5: BytesLike[], + arg6: boolean, + arg7: BigNumberish + ], [ + void + ], "payable">; + renew: TypedContractMethod<[ + arg0: string, + arg1: BigNumberish + ], [ + void + ], "payable">; + rentPrice: TypedContractMethod<[ + arg0: string, + arg1: BigNumberish + ], [ + IPriceOracle.PriceStructOutput + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "available"): TypedContractMethod<[arg0: string], [boolean], "nonpayable">; + getFunction(nameOrSignature: "commit"): TypedContractMethod<[arg0: BytesLike], [void], "nonpayable">; + getFunction(nameOrSignature: "makeCommitment"): TypedContractMethod<[ + arg0: string, + arg1: AddressLike, + arg2: BigNumberish, + arg3: BytesLike, + arg4: AddressLike, + arg5: BytesLike[], + arg6: boolean, + arg7: BigNumberish + ], [ + string + ], "view">; + getFunction(nameOrSignature: "register"): TypedContractMethod<[ + arg0: string, + arg1: AddressLike, + arg2: BigNumberish, + arg3: BytesLike, + arg4: AddressLike, + arg5: BytesLike[], + arg6: boolean, + arg7: BigNumberish + ], [ + void + ], "payable">; + getFunction(nameOrSignature: "renew"): TypedContractMethod<[arg0: string, arg1: BigNumberish], [void], "payable">; + getFunction(nameOrSignature: "rentPrice"): TypedContractMethod<[ + arg0: string, + arg1: BigNumberish + ], [ + IPriceOracle.PriceStructOutput + ], "view">; + filters: {}; +} +//# sourceMappingURL=IETHRegistrarController.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController.d.ts.map new file mode 100644 index 00000000..2ec275b0 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IETHRegistrarController.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController.js b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle.d.ts new file mode 100644 index 00000000..cb5aab99 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle.d.ts @@ -0,0 +1,48 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; +export declare namespace IPriceOracle { + type PriceStruct = { + base: BigNumberish; + premium: BigNumberish; + }; + type PriceStructOutput = [base: bigint, premium: bigint] & { + base: bigint; + premium: bigint; + }; +} +export interface IPriceOracleInterface extends Interface { + getFunction(nameOrSignature: "price"): FunctionFragment; + encodeFunctionData(functionFragment: "price", values: [string, BigNumberish, BigNumberish]): string; + decodeFunctionResult(functionFragment: "price", data: BytesLike): Result; +} +export interface IPriceOracle extends BaseContract { + connect(runner?: ContractRunner | null): IPriceOracle; + waitForDeployment(): Promise; + interface: IPriceOracleInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + price: TypedContractMethod<[ + name: string, + expires: BigNumberish, + duration: BigNumberish + ], [ + IPriceOracle.PriceStructOutput + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "price"): TypedContractMethod<[ + name: string, + expires: BigNumberish, + duration: BigNumberish + ], [ + IPriceOracle.PriceStructOutput + ], "view">; + filters: {}; +} +//# sourceMappingURL=IPriceOracle.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle.d.ts.map new file mode 100644 index 00000000..a270a8b3 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IPriceOracle.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle.js b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface.d.ts new file mode 100644 index 00000000..19fc1231 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface.d.ts @@ -0,0 +1,26 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../../common"; +export interface AggregatorInterfaceInterface extends Interface { + getFunction(nameOrSignature: "latestAnswer"): FunctionFragment; + encodeFunctionData(functionFragment: "latestAnswer", values?: undefined): string; + decodeFunctionResult(functionFragment: "latestAnswer", data: BytesLike): Result; +} +export interface AggregatorInterface extends BaseContract { + connect(runner?: ContractRunner | null): AggregatorInterface; + waitForDeployment(): Promise; + interface: AggregatorInterfaceInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + latestAnswer: TypedContractMethod<[], [bigint], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "latestAnswer"): TypedContractMethod<[], [bigint], "view">; + filters: {}; +} +//# sourceMappingURL=AggregatorInterface.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface.d.ts.map new file mode 100644 index 00000000..bad41817 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"AggregatorInterface.d.ts","sourceRoot":"","sources":["../../../../../../../types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface.js b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle.d.ts new file mode 100644 index 00000000..52e355a4 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle.d.ts @@ -0,0 +1,112 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; +export declare namespace IPriceOracle { + type PriceStruct = { + base: BigNumberish; + premium: BigNumberish; + }; + type PriceStructOutput = [base: bigint, premium: bigint] & { + base: bigint; + premium: bigint; + }; +} +export interface StablePriceOracleInterface extends Interface { + getFunction(nameOrSignature: "premium" | "price" | "price1Letter" | "price2Letter" | "price3Letter" | "price4Letter" | "price5Letter" | "supportsInterface" | "usdOracle"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "RentPriceChanged"): EventFragment; + encodeFunctionData(functionFragment: "premium", values: [string, BigNumberish, BigNumberish]): string; + encodeFunctionData(functionFragment: "price", values: [string, BigNumberish, BigNumberish]): string; + encodeFunctionData(functionFragment: "price1Letter", values?: undefined): string; + encodeFunctionData(functionFragment: "price2Letter", values?: undefined): string; + encodeFunctionData(functionFragment: "price3Letter", values?: undefined): string; + encodeFunctionData(functionFragment: "price4Letter", values?: undefined): string; + encodeFunctionData(functionFragment: "price5Letter", values?: undefined): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "usdOracle", values?: undefined): string; + decodeFunctionResult(functionFragment: "premium", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "price", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "price1Letter", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "price2Letter", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "price3Letter", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "price4Letter", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "price5Letter", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "usdOracle", data: BytesLike): Result; +} +export declare namespace RentPriceChangedEvent { + type InputTuple = [prices: BigNumberish[]]; + type OutputTuple = [prices: bigint[]]; + interface OutputObject { + prices: bigint[]; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface StablePriceOracle extends BaseContract { + connect(runner?: ContractRunner | null): StablePriceOracle; + waitForDeployment(): Promise; + interface: StablePriceOracleInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + premium: TypedContractMethod<[ + name: string, + expires: BigNumberish, + duration: BigNumberish + ], [ + bigint + ], "view">; + price: TypedContractMethod<[ + name: string, + expires: BigNumberish, + duration: BigNumberish + ], [ + IPriceOracle.PriceStructOutput + ], "view">; + price1Letter: TypedContractMethod<[], [bigint], "view">; + price2Letter: TypedContractMethod<[], [bigint], "view">; + price3Letter: TypedContractMethod<[], [bigint], "view">; + price4Letter: TypedContractMethod<[], [bigint], "view">; + price5Letter: TypedContractMethod<[], [bigint], "view">; + supportsInterface: TypedContractMethod<[ + interfaceID: BytesLike + ], [ + boolean + ], "view">; + usdOracle: TypedContractMethod<[], [string], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "premium"): TypedContractMethod<[ + name: string, + expires: BigNumberish, + duration: BigNumberish + ], [ + bigint + ], "view">; + getFunction(nameOrSignature: "price"): TypedContractMethod<[ + name: string, + expires: BigNumberish, + duration: BigNumberish + ], [ + IPriceOracle.PriceStructOutput + ], "view">; + getFunction(nameOrSignature: "price1Letter"): TypedContractMethod<[], [bigint], "view">; + getFunction(nameOrSignature: "price2Letter"): TypedContractMethod<[], [bigint], "view">; + getFunction(nameOrSignature: "price3Letter"): TypedContractMethod<[], [bigint], "view">; + getFunction(nameOrSignature: "price4Letter"): TypedContractMethod<[], [bigint], "view">; + getFunction(nameOrSignature: "price5Letter"): TypedContractMethod<[], [bigint], "view">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceID: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "usdOracle"): TypedContractMethod<[], [string], "view">; + getEvent(key: "RentPriceChanged"): TypedContractEvent; + filters: { + "RentPriceChanged(uint256[])": TypedContractEvent; + RentPriceChanged: TypedContractEvent; + }; +} +//# sourceMappingURL=StablePriceOracle.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle.d.ts.map new file mode 100644 index 00000000..f413ab80 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"StablePriceOracle.d.ts","sourceRoot":"","sources":["../../../../../../../types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle.js b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/index.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/index.d.ts new file mode 100644 index 00000000..2c80cd45 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/index.d.ts @@ -0,0 +1,3 @@ +export type { AggregatorInterface } from "./AggregatorInterface"; +export type { StablePriceOracle } from "./StablePriceOracle"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/index.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/index.d.ts.map new file mode 100644 index 00000000..ab698899 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,YAAY,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/index.js b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/index.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/index.d.ts new file mode 100644 index 00000000..e786af37 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/index.d.ts @@ -0,0 +1,9 @@ +import type * as stablePriceOracleSol from "./StablePriceOracle.sol"; +export type { stablePriceOracleSol }; +export type { BaseRegistrarImplementation } from "./BaseRegistrarImplementation"; +export type { DummyOracle } from "./DummyOracle"; +export type { ETHRegistrarController } from "./ETHRegistrarController"; +export type { IBaseRegistrar } from "./IBaseRegistrar"; +export type { IETHRegistrarController } from "./IETHRegistrarController"; +export type { IPriceOracle } from "./IPriceOracle"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/index.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/index.d.ts.map new file mode 100644 index 00000000..49608248 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/ethregistrar/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,oBAAoB,MAAM,yBAAyB,CAAC;AACrE,YAAY,EAAE,oBAAoB,EAAE,CAAC;AACrC,YAAY,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AACjF,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,YAAY,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AACvE,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,YAAY,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACzE,YAAY,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/index.js b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/index.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/index.d.ts new file mode 100644 index 00000000..2bae2f8b --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/index.d.ts @@ -0,0 +1,17 @@ +import type * as dnssecOracle from "./dnssec-oracle"; +export type { dnssecOracle }; +import type * as ethregistrar from "./ethregistrar"; +export type { ethregistrar }; +import type * as registry from "./registry"; +export type { registry }; +import type * as resolvers from "./resolvers"; +export type { resolvers }; +import type * as reverseRegistrar from "./reverseRegistrar"; +export type { reverseRegistrar }; +import type * as root from "./root"; +export type { root }; +import type * as utils from "./utils"; +export type { utils }; +import type * as wrapper from "./wrapper"; +export type { wrapper }; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/index.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/index.d.ts.map new file mode 100644 index 00000000..d01910ea --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/@ensdomains/ens-contracts/contracts/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,YAAY,MAAM,iBAAiB,CAAC;AACrD,YAAY,EAAE,YAAY,EAAE,CAAC;AAC7B,OAAO,KAAK,KAAK,YAAY,MAAM,gBAAgB,CAAC;AACpD,YAAY,EAAE,YAAY,EAAE,CAAC;AAC7B,OAAO,KAAK,KAAK,QAAQ,MAAM,YAAY,CAAC;AAC5C,YAAY,EAAE,QAAQ,EAAE,CAAC;AACzB,OAAO,KAAK,KAAK,SAAS,MAAM,aAAa,CAAC;AAC9C,YAAY,EAAE,SAAS,EAAE,CAAC;AAC1B,OAAO,KAAK,KAAK,gBAAgB,MAAM,oBAAoB,CAAC;AAC5D,YAAY,EAAE,gBAAgB,EAAE,CAAC;AACjC,OAAO,KAAK,KAAK,IAAI,MAAM,QAAQ,CAAC;AACpC,YAAY,EAAE,IAAI,EAAE,CAAC;AACrB,OAAO,KAAK,KAAK,KAAK,MAAM,SAAS,CAAC;AACtC,YAAY,EAAE,KAAK,EAAE,CAAC;AACtB,OAAO,KAAK,KAAK,OAAO,MAAM,WAAW,CAAC;AAC1C,YAAY,EAAE,OAAO,EAAE,CAAC"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/index.js b/dist/types/@ensdomains/ens-contracts/contracts/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/registry/ENS.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/registry/ENS.d.ts new file mode 100644 index 00000000..efb8000d --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/registry/ENS.d.ts @@ -0,0 +1,253 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; +export interface ENSInterface extends Interface { + getFunction(nameOrSignature: "isApprovedForAll" | "owner" | "recordExists" | "resolver" | "setApprovalForAll" | "setOwner" | "setRecord" | "setResolver" | "setSubnodeOwner" | "setSubnodeRecord" | "setTTL" | "ttl"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "ApprovalForAll" | "NewOwner" | "NewResolver" | "NewTTL" | "Transfer"): EventFragment; + encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "owner", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "recordExists", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "resolver", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; + encodeFunctionData(functionFragment: "setOwner", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "setRecord", values: [BytesLike, AddressLike, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "setResolver", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "setSubnodeOwner", values: [BytesLike, BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "setSubnodeRecord", values: [BytesLike, BytesLike, AddressLike, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "setTTL", values: [BytesLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "ttl", values: [BytesLike]): string; + decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "recordExists", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "resolver", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setOwner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setRecord", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setResolver", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setSubnodeOwner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setSubnodeRecord", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setTTL", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ttl", data: BytesLike): Result; +} +export declare namespace ApprovalForAllEvent { + type InputTuple = [ + owner: AddressLike, + operator: AddressLike, + approved: boolean + ]; + type OutputTuple = [ + owner: string, + operator: string, + approved: boolean + ]; + interface OutputObject { + owner: string; + operator: string; + approved: boolean; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NewOwnerEvent { + type InputTuple = [ + node: BytesLike, + label: BytesLike, + owner: AddressLike + ]; + type OutputTuple = [node: string, label: string, owner: string]; + interface OutputObject { + node: string; + label: string; + owner: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NewResolverEvent { + type InputTuple = [node: BytesLike, resolver: AddressLike]; + type OutputTuple = [node: string, resolver: string]; + interface OutputObject { + node: string; + resolver: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NewTTLEvent { + type InputTuple = [node: BytesLike, ttl: BigNumberish]; + type OutputTuple = [node: string, ttl: bigint]; + interface OutputObject { + node: string; + ttl: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferEvent { + type InputTuple = [node: BytesLike, owner: AddressLike]; + type OutputTuple = [node: string, owner: string]; + interface OutputObject { + node: string; + owner: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface ENS extends BaseContract { + connect(runner?: ContractRunner | null): ENS; + waitForDeployment(): Promise; + interface: ENSInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + isApprovedForAll: TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + owner: TypedContractMethod<[node: BytesLike], [string], "view">; + recordExists: TypedContractMethod<[node: BytesLike], [boolean], "view">; + resolver: TypedContractMethod<[node: BytesLike], [string], "view">; + setApprovalForAll: TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + setOwner: TypedContractMethod<[ + node: BytesLike, + owner: AddressLike + ], [ + void + ], "nonpayable">; + setRecord: TypedContractMethod<[ + node: BytesLike, + owner: AddressLike, + resolver: AddressLike, + ttl: BigNumberish + ], [ + void + ], "nonpayable">; + setResolver: TypedContractMethod<[ + node: BytesLike, + resolver: AddressLike + ], [ + void + ], "nonpayable">; + setSubnodeOwner: TypedContractMethod<[ + node: BytesLike, + label: BytesLike, + owner: AddressLike + ], [ + string + ], "nonpayable">; + setSubnodeRecord: TypedContractMethod<[ + node: BytesLike, + label: BytesLike, + owner: AddressLike, + resolver: AddressLike, + ttl: BigNumberish + ], [ + void + ], "nonpayable">; + setTTL: TypedContractMethod<[ + node: BytesLike, + ttl: BigNumberish + ], [ + void + ], "nonpayable">; + ttl: TypedContractMethod<[node: BytesLike], [bigint], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "owner"): TypedContractMethod<[node: BytesLike], [string], "view">; + getFunction(nameOrSignature: "recordExists"): TypedContractMethod<[node: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "resolver"): TypedContractMethod<[node: BytesLike], [string], "view">; + getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setOwner"): TypedContractMethod<[ + node: BytesLike, + owner: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setRecord"): TypedContractMethod<[ + node: BytesLike, + owner: AddressLike, + resolver: AddressLike, + ttl: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setResolver"): TypedContractMethod<[ + node: BytesLike, + resolver: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setSubnodeOwner"): TypedContractMethod<[ + node: BytesLike, + label: BytesLike, + owner: AddressLike + ], [ + string + ], "nonpayable">; + getFunction(nameOrSignature: "setSubnodeRecord"): TypedContractMethod<[ + node: BytesLike, + label: BytesLike, + owner: AddressLike, + resolver: AddressLike, + ttl: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setTTL"): TypedContractMethod<[ + node: BytesLike, + ttl: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "ttl"): TypedContractMethod<[node: BytesLike], [bigint], "view">; + getEvent(key: "ApprovalForAll"): TypedContractEvent; + getEvent(key: "NewOwner"): TypedContractEvent; + getEvent(key: "NewResolver"): TypedContractEvent; + getEvent(key: "NewTTL"): TypedContractEvent; + getEvent(key: "Transfer"): TypedContractEvent; + filters: { + "ApprovalForAll(address,address,bool)": TypedContractEvent; + ApprovalForAll: TypedContractEvent; + "NewOwner(bytes32,bytes32,address)": TypedContractEvent; + NewOwner: TypedContractEvent; + "NewResolver(bytes32,address)": TypedContractEvent; + NewResolver: TypedContractEvent; + "NewTTL(bytes32,uint64)": TypedContractEvent; + NewTTL: TypedContractEvent; + "Transfer(bytes32,address)": TypedContractEvent; + Transfer: TypedContractEvent; + }; +} +//# sourceMappingURL=ENS.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/registry/ENS.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/registry/ENS.d.ts.map new file mode 100644 index 00000000..df4287c6 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/registry/ENS.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ENS.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/registry/ENS.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/registry/ENS.js b/dist/types/@ensdomains/ens-contracts/contracts/registry/ENS.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/registry/ENS.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/registry/ENSRegistry.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/registry/ENSRegistry.d.ts new file mode 100644 index 00000000..29b69ca9 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/registry/ENSRegistry.d.ts @@ -0,0 +1,253 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; +export interface ENSRegistryInterface extends Interface { + getFunction(nameOrSignature: "isApprovedForAll" | "owner" | "recordExists" | "resolver" | "setApprovalForAll" | "setOwner" | "setRecord" | "setResolver" | "setSubnodeOwner" | "setSubnodeRecord" | "setTTL" | "ttl"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "ApprovalForAll" | "NewOwner" | "NewResolver" | "NewTTL" | "Transfer"): EventFragment; + encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "owner", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "recordExists", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "resolver", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; + encodeFunctionData(functionFragment: "setOwner", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "setRecord", values: [BytesLike, AddressLike, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "setResolver", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "setSubnodeOwner", values: [BytesLike, BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "setSubnodeRecord", values: [BytesLike, BytesLike, AddressLike, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "setTTL", values: [BytesLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "ttl", values: [BytesLike]): string; + decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "recordExists", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "resolver", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setOwner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setRecord", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setResolver", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setSubnodeOwner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setSubnodeRecord", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setTTL", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ttl", data: BytesLike): Result; +} +export declare namespace ApprovalForAllEvent { + type InputTuple = [ + owner: AddressLike, + operator: AddressLike, + approved: boolean + ]; + type OutputTuple = [ + owner: string, + operator: string, + approved: boolean + ]; + interface OutputObject { + owner: string; + operator: string; + approved: boolean; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NewOwnerEvent { + type InputTuple = [ + node: BytesLike, + label: BytesLike, + owner: AddressLike + ]; + type OutputTuple = [node: string, label: string, owner: string]; + interface OutputObject { + node: string; + label: string; + owner: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NewResolverEvent { + type InputTuple = [node: BytesLike, resolver: AddressLike]; + type OutputTuple = [node: string, resolver: string]; + interface OutputObject { + node: string; + resolver: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NewTTLEvent { + type InputTuple = [node: BytesLike, ttl: BigNumberish]; + type OutputTuple = [node: string, ttl: bigint]; + interface OutputObject { + node: string; + ttl: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferEvent { + type InputTuple = [node: BytesLike, owner: AddressLike]; + type OutputTuple = [node: string, owner: string]; + interface OutputObject { + node: string; + owner: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface ENSRegistry extends BaseContract { + connect(runner?: ContractRunner | null): ENSRegistry; + waitForDeployment(): Promise; + interface: ENSRegistryInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + isApprovedForAll: TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + owner: TypedContractMethod<[node: BytesLike], [string], "view">; + recordExists: TypedContractMethod<[node: BytesLike], [boolean], "view">; + resolver: TypedContractMethod<[node: BytesLike], [string], "view">; + setApprovalForAll: TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + setOwner: TypedContractMethod<[ + node: BytesLike, + owner: AddressLike + ], [ + void + ], "nonpayable">; + setRecord: TypedContractMethod<[ + node: BytesLike, + owner: AddressLike, + resolver: AddressLike, + ttl: BigNumberish + ], [ + void + ], "nonpayable">; + setResolver: TypedContractMethod<[ + node: BytesLike, + resolver: AddressLike + ], [ + void + ], "nonpayable">; + setSubnodeOwner: TypedContractMethod<[ + node: BytesLike, + label: BytesLike, + owner: AddressLike + ], [ + string + ], "nonpayable">; + setSubnodeRecord: TypedContractMethod<[ + node: BytesLike, + label: BytesLike, + owner: AddressLike, + resolver: AddressLike, + ttl: BigNumberish + ], [ + void + ], "nonpayable">; + setTTL: TypedContractMethod<[ + node: BytesLike, + ttl: BigNumberish + ], [ + void + ], "nonpayable">; + ttl: TypedContractMethod<[node: BytesLike], [bigint], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "owner"): TypedContractMethod<[node: BytesLike], [string], "view">; + getFunction(nameOrSignature: "recordExists"): TypedContractMethod<[node: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "resolver"): TypedContractMethod<[node: BytesLike], [string], "view">; + getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setOwner"): TypedContractMethod<[ + node: BytesLike, + owner: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setRecord"): TypedContractMethod<[ + node: BytesLike, + owner: AddressLike, + resolver: AddressLike, + ttl: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setResolver"): TypedContractMethod<[ + node: BytesLike, + resolver: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setSubnodeOwner"): TypedContractMethod<[ + node: BytesLike, + label: BytesLike, + owner: AddressLike + ], [ + string + ], "nonpayable">; + getFunction(nameOrSignature: "setSubnodeRecord"): TypedContractMethod<[ + node: BytesLike, + label: BytesLike, + owner: AddressLike, + resolver: AddressLike, + ttl: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setTTL"): TypedContractMethod<[ + node: BytesLike, + ttl: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "ttl"): TypedContractMethod<[node: BytesLike], [bigint], "view">; + getEvent(key: "ApprovalForAll"): TypedContractEvent; + getEvent(key: "NewOwner"): TypedContractEvent; + getEvent(key: "NewResolver"): TypedContractEvent; + getEvent(key: "NewTTL"): TypedContractEvent; + getEvent(key: "Transfer"): TypedContractEvent; + filters: { + "ApprovalForAll(address,address,bool)": TypedContractEvent; + ApprovalForAll: TypedContractEvent; + "NewOwner(bytes32,bytes32,address)": TypedContractEvent; + NewOwner: TypedContractEvent; + "NewResolver(bytes32,address)": TypedContractEvent; + NewResolver: TypedContractEvent; + "NewTTL(bytes32,uint64)": TypedContractEvent; + NewTTL: TypedContractEvent; + "Transfer(bytes32,address)": TypedContractEvent; + Transfer: TypedContractEvent; + }; +} +//# sourceMappingURL=ENSRegistry.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/registry/ENSRegistry.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/registry/ENSRegistry.d.ts.map new file mode 100644 index 00000000..0bed8fde --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/registry/ENSRegistry.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ENSRegistry.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/registry/ENSRegistry.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/registry/ENSRegistry.js b/dist/types/@ensdomains/ens-contracts/contracts/registry/ENSRegistry.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/registry/ENSRegistry.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/registry/index.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/registry/index.d.ts new file mode 100644 index 00000000..cc4e2979 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/registry/index.d.ts @@ -0,0 +1,3 @@ +export type { ENS } from "./ENS"; +export type { ENSRegistry } from "./ENSRegistry"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/registry/index.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/registry/index.d.ts.map new file mode 100644 index 00000000..5c3855ef --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/registry/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/registry/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AACjC,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/registry/index.js b/dist/types/@ensdomains/ens-contracts/contracts/registry/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/registry/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable.d.ts new file mode 100644 index 00000000..f096b10f --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable.d.ts @@ -0,0 +1,40 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; +export interface IMulticallableInterface extends Interface { + getFunction(nameOrSignature: "multicall" | "multicallWithNodeCheck"): FunctionFragment; + encodeFunctionData(functionFragment: "multicall", values: [BytesLike[]]): string; + encodeFunctionData(functionFragment: "multicallWithNodeCheck", values: [BytesLike, BytesLike[]]): string; + decodeFunctionResult(functionFragment: "multicall", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "multicallWithNodeCheck", data: BytesLike): Result; +} +export interface IMulticallable extends BaseContract { + connect(runner?: ContractRunner | null): IMulticallable; + waitForDeployment(): Promise; + interface: IMulticallableInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + multicall: TypedContractMethod<[data: BytesLike[]], [string[]], "nonpayable">; + multicallWithNodeCheck: TypedContractMethod<[ + arg0: BytesLike, + data: BytesLike[] + ], [ + string[] + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "multicall"): TypedContractMethod<[data: BytesLike[]], [string[]], "nonpayable">; + getFunction(nameOrSignature: "multicallWithNodeCheck"): TypedContractMethod<[ + arg0: BytesLike, + data: BytesLike[] + ], [ + string[] + ], "nonpayable">; + filters: {}; +} +//# sourceMappingURL=IMulticallable.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable.d.ts.map new file mode 100644 index 00000000..16cd4886 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IMulticallable.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable.js b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/Multicallable.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/Multicallable.d.ts new file mode 100644 index 00000000..41eb2b91 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/Multicallable.d.ts @@ -0,0 +1,48 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; +export interface MulticallableInterface extends Interface { + getFunction(nameOrSignature: "multicall" | "multicallWithNodeCheck" | "supportsInterface"): FunctionFragment; + encodeFunctionData(functionFragment: "multicall", values: [BytesLike[]]): string; + encodeFunctionData(functionFragment: "multicallWithNodeCheck", values: [BytesLike, BytesLike[]]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + decodeFunctionResult(functionFragment: "multicall", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "multicallWithNodeCheck", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; +} +export interface Multicallable extends BaseContract { + connect(runner?: ContractRunner | null): Multicallable; + waitForDeployment(): Promise; + interface: MulticallableInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + multicall: TypedContractMethod<[data: BytesLike[]], [string[]], "nonpayable">; + multicallWithNodeCheck: TypedContractMethod<[ + nodehash: BytesLike, + data: BytesLike[] + ], [ + string[] + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceID: BytesLike + ], [ + boolean + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "multicall"): TypedContractMethod<[data: BytesLike[]], [string[]], "nonpayable">; + getFunction(nameOrSignature: "multicallWithNodeCheck"): TypedContractMethod<[ + nodehash: BytesLike, + data: BytesLike[] + ], [ + string[] + ], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceID: BytesLike], [boolean], "view">; + filters: {}; +} +//# sourceMappingURL=Multicallable.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/Multicallable.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/Multicallable.d.ts.map new file mode 100644 index 00000000..f7747dce --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/Multicallable.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"Multicallable.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/resolvers/Multicallable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/Multicallable.js b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/Multicallable.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/Multicallable.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver.d.ts new file mode 100644 index 00000000..52b92c2d --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver.d.ts @@ -0,0 +1,661 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; +export interface PublicResolverInterface extends Interface { + getFunction(nameOrSignature: "ABI" | "addr(bytes32)" | "addr(bytes32,uint256)" | "approve" | "clearRecords" | "contenthash" | "dnsRecord" | "hasDNSRecords" | "interfaceImplementer" | "isApprovedFor" | "isApprovedForAll" | "multicall" | "multicallWithNodeCheck" | "name" | "pubkey" | "recordVersions" | "setABI" | "setAddr(bytes32,uint256,bytes)" | "setAddr(bytes32,address)" | "setApprovalForAll" | "setContenthash" | "setDNSRecords" | "setInterface" | "setName" | "setPubkey" | "setText" | "setZonehash" | "supportsInterface" | "text" | "zonehash"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "ABIChanged" | "AddrChanged" | "AddressChanged" | "ApprovalForAll" | "Approved" | "ContenthashChanged" | "DNSRecordChanged" | "DNSRecordDeleted" | "DNSZonehashChanged" | "InterfaceChanged" | "NameChanged" | "PubkeyChanged" | "TextChanged" | "VersionChanged"): EventFragment; + encodeFunctionData(functionFragment: "ABI", values: [BytesLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "addr(bytes32)", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "addr(bytes32,uint256)", values: [BytesLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "approve", values: [BytesLike, AddressLike, boolean]): string; + encodeFunctionData(functionFragment: "clearRecords", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "contenthash", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "dnsRecord", values: [BytesLike, BytesLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "hasDNSRecords", values: [BytesLike, BytesLike]): string; + encodeFunctionData(functionFragment: "interfaceImplementer", values: [BytesLike, BytesLike]): string; + encodeFunctionData(functionFragment: "isApprovedFor", values: [AddressLike, BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "multicall", values: [BytesLike[]]): string; + encodeFunctionData(functionFragment: "multicallWithNodeCheck", values: [BytesLike, BytesLike[]]): string; + encodeFunctionData(functionFragment: "name", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "pubkey", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "recordVersions", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "setABI", values: [BytesLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "setAddr(bytes32,uint256,bytes)", values: [BytesLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "setAddr(bytes32,address)", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; + encodeFunctionData(functionFragment: "setContenthash", values: [BytesLike, BytesLike]): string; + encodeFunctionData(functionFragment: "setDNSRecords", values: [BytesLike, BytesLike]): string; + encodeFunctionData(functionFragment: "setInterface", values: [BytesLike, BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "setName", values: [BytesLike, string]): string; + encodeFunctionData(functionFragment: "setPubkey", values: [BytesLike, BytesLike, BytesLike]): string; + encodeFunctionData(functionFragment: "setText", values: [BytesLike, string, string]): string; + encodeFunctionData(functionFragment: "setZonehash", values: [BytesLike, BytesLike]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "text", values: [BytesLike, string]): string; + encodeFunctionData(functionFragment: "zonehash", values: [BytesLike]): string; + decodeFunctionResult(functionFragment: "ABI", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "addr(bytes32)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "addr(bytes32,uint256)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "clearRecords", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "contenthash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "dnsRecord", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "hasDNSRecords", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "interfaceImplementer", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedFor", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "multicall", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "multicallWithNodeCheck", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "pubkey", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "recordVersions", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setABI", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setAddr(bytes32,uint256,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setAddr(bytes32,address)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setContenthash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setDNSRecords", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setName", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setPubkey", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setText", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setZonehash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "text", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "zonehash", data: BytesLike): Result; +} +export declare namespace ABIChangedEvent { + type InputTuple = [node: BytesLike, contentType: BigNumberish]; + type OutputTuple = [node: string, contentType: bigint]; + interface OutputObject { + node: string; + contentType: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace AddrChangedEvent { + type InputTuple = [node: BytesLike, a: AddressLike]; + type OutputTuple = [node: string, a: string]; + interface OutputObject { + node: string; + a: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace AddressChangedEvent { + type InputTuple = [ + node: BytesLike, + coinType: BigNumberish, + newAddress: BytesLike + ]; + type OutputTuple = [ + node: string, + coinType: bigint, + newAddress: string + ]; + interface OutputObject { + node: string; + coinType: bigint; + newAddress: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ApprovalForAllEvent { + type InputTuple = [ + owner: AddressLike, + operator: AddressLike, + approved: boolean + ]; + type OutputTuple = [ + owner: string, + operator: string, + approved: boolean + ]; + interface OutputObject { + owner: string; + operator: string; + approved: boolean; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ApprovedEvent { + type InputTuple = [ + owner: AddressLike, + node: BytesLike, + delegate: AddressLike, + approved: boolean + ]; + type OutputTuple = [ + owner: string, + node: string, + delegate: string, + approved: boolean + ]; + interface OutputObject { + owner: string; + node: string; + delegate: string; + approved: boolean; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ContenthashChangedEvent { + type InputTuple = [node: BytesLike, hash: BytesLike]; + type OutputTuple = [node: string, hash: string]; + interface OutputObject { + node: string; + hash: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace DNSRecordChangedEvent { + type InputTuple = [ + node: BytesLike, + name: BytesLike, + resource: BigNumberish, + record: BytesLike + ]; + type OutputTuple = [ + node: string, + name: string, + resource: bigint, + record: string + ]; + interface OutputObject { + node: string; + name: string; + resource: bigint; + record: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace DNSRecordDeletedEvent { + type InputTuple = [ + node: BytesLike, + name: BytesLike, + resource: BigNumberish + ]; + type OutputTuple = [node: string, name: string, resource: bigint]; + interface OutputObject { + node: string; + name: string; + resource: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace DNSZonehashChangedEvent { + type InputTuple = [ + node: BytesLike, + lastzonehash: BytesLike, + zonehash: BytesLike + ]; + type OutputTuple = [ + node: string, + lastzonehash: string, + zonehash: string + ]; + interface OutputObject { + node: string; + lastzonehash: string; + zonehash: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace InterfaceChangedEvent { + type InputTuple = [ + node: BytesLike, + interfaceID: BytesLike, + implementer: AddressLike + ]; + type OutputTuple = [ + node: string, + interfaceID: string, + implementer: string + ]; + interface OutputObject { + node: string; + interfaceID: string; + implementer: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NameChangedEvent { + type InputTuple = [node: BytesLike, name: string]; + type OutputTuple = [node: string, name: string]; + interface OutputObject { + node: string; + name: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace PubkeyChangedEvent { + type InputTuple = [node: BytesLike, x: BytesLike, y: BytesLike]; + type OutputTuple = [node: string, x: string, y: string]; + interface OutputObject { + node: string; + x: string; + y: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TextChangedEvent { + type InputTuple = [ + node: BytesLike, + indexedKey: string, + key: string, + value: string + ]; + type OutputTuple = [ + node: string, + indexedKey: string, + key: string, + value: string + ]; + interface OutputObject { + node: string; + indexedKey: string; + key: string; + value: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace VersionChangedEvent { + type InputTuple = [node: BytesLike, newVersion: BigNumberish]; + type OutputTuple = [node: string, newVersion: bigint]; + interface OutputObject { + node: string; + newVersion: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface PublicResolver extends BaseContract { + connect(runner?: ContractRunner | null): PublicResolver; + waitForDeployment(): Promise; + interface: PublicResolverInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + ABI: TypedContractMethod<[ + node: BytesLike, + contentTypes: BigNumberish + ], [ + [bigint, string] + ], "view">; + "addr(bytes32)": TypedContractMethod<[node: BytesLike], [string], "view">; + "addr(bytes32,uint256)": TypedContractMethod<[ + node: BytesLike, + coinType: BigNumberish + ], [ + string + ], "view">; + approve: TypedContractMethod<[ + node: BytesLike, + delegate: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + clearRecords: TypedContractMethod<[node: BytesLike], [void], "nonpayable">; + contenthash: TypedContractMethod<[node: BytesLike], [string], "view">; + dnsRecord: TypedContractMethod<[ + node: BytesLike, + name: BytesLike, + resource: BigNumberish + ], [ + string + ], "view">; + hasDNSRecords: TypedContractMethod<[ + node: BytesLike, + name: BytesLike + ], [ + boolean + ], "view">; + interfaceImplementer: TypedContractMethod<[ + node: BytesLike, + interfaceID: BytesLike + ], [ + string + ], "view">; + isApprovedFor: TypedContractMethod<[ + owner: AddressLike, + node: BytesLike, + delegate: AddressLike + ], [ + boolean + ], "view">; + isApprovedForAll: TypedContractMethod<[ + account: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + multicall: TypedContractMethod<[data: BytesLike[]], [string[]], "nonpayable">; + multicallWithNodeCheck: TypedContractMethod<[ + nodehash: BytesLike, + data: BytesLike[] + ], [ + string[] + ], "nonpayable">; + name: TypedContractMethod<[node: BytesLike], [string], "view">; + pubkey: TypedContractMethod<[ + node: BytesLike + ], [ + [string, string] & { + x: string; + y: string; + } + ], "view">; + recordVersions: TypedContractMethod<[arg0: BytesLike], [bigint], "view">; + setABI: TypedContractMethod<[ + node: BytesLike, + contentType: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + "setAddr(bytes32,uint256,bytes)": TypedContractMethod<[ + node: BytesLike, + coinType: BigNumberish, + a: BytesLike + ], [ + void + ], "nonpayable">; + "setAddr(bytes32,address)": TypedContractMethod<[ + node: BytesLike, + a: AddressLike + ], [ + void + ], "nonpayable">; + setApprovalForAll: TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + setContenthash: TypedContractMethod<[ + node: BytesLike, + hash: BytesLike + ], [ + void + ], "nonpayable">; + setDNSRecords: TypedContractMethod<[ + node: BytesLike, + data: BytesLike + ], [ + void + ], "nonpayable">; + setInterface: TypedContractMethod<[ + node: BytesLike, + interfaceID: BytesLike, + implementer: AddressLike + ], [ + void + ], "nonpayable">; + setName: TypedContractMethod<[ + node: BytesLike, + newName: string + ], [ + void + ], "nonpayable">; + setPubkey: TypedContractMethod<[ + node: BytesLike, + x: BytesLike, + y: BytesLike + ], [ + void + ], "nonpayable">; + setText: TypedContractMethod<[ + node: BytesLike, + key: string, + value: string + ], [ + void + ], "nonpayable">; + setZonehash: TypedContractMethod<[ + node: BytesLike, + hash: BytesLike + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceID: BytesLike + ], [ + boolean + ], "view">; + text: TypedContractMethod<[node: BytesLike, key: string], [string], "view">; + zonehash: TypedContractMethod<[node: BytesLike], [string], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "ABI"): TypedContractMethod<[ + node: BytesLike, + contentTypes: BigNumberish + ], [ + [bigint, string] + ], "view">; + getFunction(nameOrSignature: "addr(bytes32)"): TypedContractMethod<[node: BytesLike], [string], "view">; + getFunction(nameOrSignature: "addr(bytes32,uint256)"): TypedContractMethod<[ + node: BytesLike, + coinType: BigNumberish + ], [ + string + ], "view">; + getFunction(nameOrSignature: "approve"): TypedContractMethod<[ + node: BytesLike, + delegate: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "clearRecords"): TypedContractMethod<[node: BytesLike], [void], "nonpayable">; + getFunction(nameOrSignature: "contenthash"): TypedContractMethod<[node: BytesLike], [string], "view">; + getFunction(nameOrSignature: "dnsRecord"): TypedContractMethod<[ + node: BytesLike, + name: BytesLike, + resource: BigNumberish + ], [ + string + ], "view">; + getFunction(nameOrSignature: "hasDNSRecords"): TypedContractMethod<[node: BytesLike, name: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "interfaceImplementer"): TypedContractMethod<[ + node: BytesLike, + interfaceID: BytesLike + ], [ + string + ], "view">; + getFunction(nameOrSignature: "isApprovedFor"): TypedContractMethod<[ + owner: AddressLike, + node: BytesLike, + delegate: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ + account: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "multicall"): TypedContractMethod<[data: BytesLike[]], [string[]], "nonpayable">; + getFunction(nameOrSignature: "multicallWithNodeCheck"): TypedContractMethod<[ + nodehash: BytesLike, + data: BytesLike[] + ], [ + string[] + ], "nonpayable">; + getFunction(nameOrSignature: "name"): TypedContractMethod<[node: BytesLike], [string], "view">; + getFunction(nameOrSignature: "pubkey"): TypedContractMethod<[ + node: BytesLike + ], [ + [string, string] & { + x: string; + y: string; + } + ], "view">; + getFunction(nameOrSignature: "recordVersions"): TypedContractMethod<[arg0: BytesLike], [bigint], "view">; + getFunction(nameOrSignature: "setABI"): TypedContractMethod<[ + node: BytesLike, + contentType: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setAddr(bytes32,uint256,bytes)"): TypedContractMethod<[ + node: BytesLike, + coinType: BigNumberish, + a: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setAddr(bytes32,address)"): TypedContractMethod<[ + node: BytesLike, + a: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setContenthash"): TypedContractMethod<[ + node: BytesLike, + hash: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setDNSRecords"): TypedContractMethod<[ + node: BytesLike, + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setInterface"): TypedContractMethod<[ + node: BytesLike, + interfaceID: BytesLike, + implementer: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setName"): TypedContractMethod<[ + node: BytesLike, + newName: string + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setPubkey"): TypedContractMethod<[ + node: BytesLike, + x: BytesLike, + y: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setText"): TypedContractMethod<[ + node: BytesLike, + key: string, + value: string + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setZonehash"): TypedContractMethod<[ + node: BytesLike, + hash: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceID: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "text"): TypedContractMethod<[node: BytesLike, key: string], [string], "view">; + getFunction(nameOrSignature: "zonehash"): TypedContractMethod<[node: BytesLike], [string], "view">; + getEvent(key: "ABIChanged"): TypedContractEvent; + getEvent(key: "AddrChanged"): TypedContractEvent; + getEvent(key: "AddressChanged"): TypedContractEvent; + getEvent(key: "ApprovalForAll"): TypedContractEvent; + getEvent(key: "Approved"): TypedContractEvent; + getEvent(key: "ContenthashChanged"): TypedContractEvent; + getEvent(key: "DNSRecordChanged"): TypedContractEvent; + getEvent(key: "DNSRecordDeleted"): TypedContractEvent; + getEvent(key: "DNSZonehashChanged"): TypedContractEvent; + getEvent(key: "InterfaceChanged"): TypedContractEvent; + getEvent(key: "NameChanged"): TypedContractEvent; + getEvent(key: "PubkeyChanged"): TypedContractEvent; + getEvent(key: "TextChanged"): TypedContractEvent; + getEvent(key: "VersionChanged"): TypedContractEvent; + filters: { + "ABIChanged(bytes32,uint256)": TypedContractEvent; + ABIChanged: TypedContractEvent; + "AddrChanged(bytes32,address)": TypedContractEvent; + AddrChanged: TypedContractEvent; + "AddressChanged(bytes32,uint256,bytes)": TypedContractEvent; + AddressChanged: TypedContractEvent; + "ApprovalForAll(address,address,bool)": TypedContractEvent; + ApprovalForAll: TypedContractEvent; + "Approved(address,bytes32,address,bool)": TypedContractEvent; + Approved: TypedContractEvent; + "ContenthashChanged(bytes32,bytes)": TypedContractEvent; + ContenthashChanged: TypedContractEvent; + "DNSRecordChanged(bytes32,bytes,uint16,bytes)": TypedContractEvent; + DNSRecordChanged: TypedContractEvent; + "DNSRecordDeleted(bytes32,bytes,uint16)": TypedContractEvent; + DNSRecordDeleted: TypedContractEvent; + "DNSZonehashChanged(bytes32,bytes,bytes)": TypedContractEvent; + DNSZonehashChanged: TypedContractEvent; + "InterfaceChanged(bytes32,bytes4,address)": TypedContractEvent; + InterfaceChanged: TypedContractEvent; + "NameChanged(bytes32,string)": TypedContractEvent; + NameChanged: TypedContractEvent; + "PubkeyChanged(bytes32,bytes32,bytes32)": TypedContractEvent; + PubkeyChanged: TypedContractEvent; + "TextChanged(bytes32,string,string,string)": TypedContractEvent; + TextChanged: TypedContractEvent; + "VersionChanged(bytes32,uint64)": TypedContractEvent; + VersionChanged: TypedContractEvent; + }; +} +//# sourceMappingURL=PublicResolver.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver.d.ts.map new file mode 100644 index 00000000..a0ed3d70 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"PublicResolver.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,aAAa,EACb,WAAW,EACX,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,mBAAmB,EACnB,aAAa,EACb,mBAAmB,EACpB,MAAM,oBAAoB,CAAC;AAE5B,MAAM,WAAW,uBAAwB,SAAQ,SAAS;IACxD,WAAW,CACT,eAAe,EACX,KAAK,GACL,eAAe,GACf,uBAAuB,GACvB,SAAS,GACT,cAAc,GACd,aAAa,GACb,WAAW,GACX,eAAe,GACf,sBAAsB,GACtB,eAAe,GACf,kBAAkB,GAClB,WAAW,GACX,wBAAwB,GACxB,MAAM,GACN,QAAQ,GACR,gBAAgB,GAChB,QAAQ,GACR,gCAAgC,GAChC,0BAA0B,GAC1B,mBAAmB,GACnB,gBAAgB,GAChB,eAAe,GACf,cAAc,GACd,SAAS,GACT,WAAW,GACX,SAAS,GACT,aAAa,GACb,mBAAmB,GACnB,MAAM,GACN,UAAU,GACb,gBAAgB,CAAC;IAEpB,QAAQ,CACN,sBAAsB,EAClB,YAAY,GACZ,aAAa,GACb,gBAAgB,GAChB,gBAAgB,GAChB,UAAU,GACV,oBAAoB,GACpB,kBAAkB,GAClB,kBAAkB,GAClB,oBAAoB,GACpB,kBAAkB,GAClB,aAAa,GACb,eAAe,GACf,aAAa,GACb,gBAAgB,GACnB,aAAa,CAAC;IAEjB,kBAAkB,CAChB,gBAAgB,EAAE,KAAK,EACvB,MAAM,EAAE,CAAC,SAAS,EAAE,YAAY,CAAC,GAChC,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,eAAe,EACjC,MAAM,EAAE,CAAC,SAAS,CAAC,GAClB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,uBAAuB,EACzC,MAAM,EAAE,CAAC,SAAS,EAAE,YAAY,CAAC,GAChC,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,SAAS,EAC3B,MAAM,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,OAAO,CAAC,GACxC,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,cAAc,EAChC,MAAM,EAAE,CAAC,SAAS,CAAC,GAClB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,aAAa,EAC/B,MAAM,EAAE,CAAC,SAAS,CAAC,GAClB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,WAAW,EAC7B,MAAM,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,YAAY,CAAC,GAC3C,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,eAAe,EACjC,MAAM,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC,GAC7B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,sBAAsB,EACxC,MAAM,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC,GAC7B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,eAAe,EACjC,MAAM,EAAE,CAAC,WAAW,EAAE,SAAS,EAAE,WAAW,CAAC,GAC5C,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,kBAAkB,EACpC,MAAM,EAAE,CAAC,WAAW,EAAE,WAAW,CAAC,GACjC,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,WAAW,EAC7B,MAAM,EAAE,CAAC,SAAS,EAAE,CAAC,GACpB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,wBAAwB,EAC1C,MAAM,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,CAAC,GAC/B,MAAM,CAAC;IACV,kBAAkB,CAAC,gBAAgB,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC;IAC1E,kBAAkB,CAAC,gBAAgB,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC;IAC5E,kBAAkB,CAChB,gBAAgB,EAAE,gBAAgB,EAClC,MAAM,EAAE,CAAC,SAAS,CAAC,GAClB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,QAAQ,EAC1B,MAAM,EAAE,CAAC,SAAS,EAAE,YAAY,EAAE,SAAS,CAAC,GAC3C,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,gCAAgC,EAClD,MAAM,EAAE,CAAC,SAAS,EAAE,YAAY,EAAE,SAAS,CAAC,GAC3C,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,0BAA0B,EAC5C,MAAM,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC,GAC/B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,mBAAmB,EACrC,MAAM,EAAE,CAAC,WAAW,EAAE,OAAO,CAAC,GAC7B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,gBAAgB,EAClC,MAAM,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC,GAC7B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,eAAe,EACjC,MAAM,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC,GAC7B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,cAAc,EAChC,MAAM,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,WAAW,CAAC,GAC1C,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,SAAS,EAC3B,MAAM,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC,GAC1B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,WAAW,EAC7B,MAAM,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC,GACxC,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,SAAS,EAC3B,MAAM,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,GAClC,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,aAAa,EAC/B,MAAM,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC,GAC7B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,mBAAmB,EACrC,MAAM,EAAE,CAAC,SAAS,CAAC,GAClB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,MAAM,EACxB,MAAM,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC,GAC1B,MAAM,CAAC;IACV,kBAAkB,CAAC,gBAAgB,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC;IAE9E,oBAAoB,CAAC,gBAAgB,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IACvE,oBAAoB,CAClB,gBAAgB,EAAE,eAAe,EACjC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,uBAAuB,EACzC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,oBAAoB,CAClB,gBAAgB,EAAE,cAAc,EAChC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,aAAa,EAC/B,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC7E,oBAAoB,CAClB,gBAAgB,EAAE,eAAe,EACjC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,sBAAsB,EACxC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,eAAe,EACjC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,kBAAkB,EACpC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC7E,oBAAoB,CAClB,gBAAgB,EAAE,wBAAwB,EAC1C,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IACxE,oBAAoB,CAAC,gBAAgB,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC1E,oBAAoB,CAClB,gBAAgB,EAAE,gBAAgB,EAClC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC1E,oBAAoB,CAClB,gBAAgB,EAAE,gCAAgC,EAClD,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,0BAA0B,EAC5C,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,mBAAmB,EACrC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,gBAAgB,EAClC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,eAAe,EACjC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,cAAc,EAChC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,oBAAoB,CAAC,gBAAgB,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC7E,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,oBAAoB,CAClB,gBAAgB,EAAE,aAAa,EAC/B,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,mBAAmB,EACrC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IACxE,oBAAoB,CAAC,gBAAgB,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;CAC7E;AAED,yBAAiB,eAAe,CAAC;IAC/B,KAAY,UAAU,GAAG,CAAC,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IACtE,KAAY,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC;IAC9D,UAAiB,YAAY;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,EAAE,MAAM,CAAC;KACrB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,gBAAgB,CAAC;IAChC,KAAY,UAAU,GAAG,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,WAAW,CAAC,CAAC;IAC3D,KAAY,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;IACpD,UAAiB,YAAY;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,CAAC,EAAE,MAAM,CAAC;KACX;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,mBAAmB,CAAC;IACnC,KAAY,UAAU,GAAG;QACvB,IAAI,EAAE,SAAS;QACf,QAAQ,EAAE,YAAY;QACtB,UAAU,EAAE,SAAS;KACtB,CAAC;IACF,KAAY,WAAW,GAAG;QACxB,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,MAAM;QAChB,UAAU,EAAE,MAAM;KACnB,CAAC;IACF,UAAiB,YAAY;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;QACjB,UAAU,EAAE,MAAM,CAAC;KACpB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,mBAAmB,CAAC;IACnC,KAAY,UAAU,GAAG;QACvB,KAAK,EAAE,WAAW;QAClB,QAAQ,EAAE,WAAW;QACrB,QAAQ,EAAE,OAAO;KAClB,CAAC;IACF,KAAY,WAAW,GAAG;QACxB,KAAK,EAAE,MAAM;QACb,QAAQ,EAAE,MAAM;QAChB,QAAQ,EAAE,OAAO;KAClB,CAAC;IACF,UAAiB,YAAY;QAC3B,KAAK,EAAE,MAAM,CAAC;QACd,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,OAAO,CAAC;KACnB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,aAAa,CAAC;IAC7B,KAAY,UAAU,GAAG;QACvB,KAAK,EAAE,WAAW;QAClB,IAAI,EAAE,SAAS;QACf,QAAQ,EAAE,WAAW;QACrB,QAAQ,EAAE,OAAO;KAClB,CAAC;IACF,KAAY,WAAW,GAAG;QACxB,KAAK,EAAE,MAAM;QACb,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,MAAM;QAChB,QAAQ,EAAE,OAAO;KAClB,CAAC;IACF,UAAiB,YAAY;QAC3B,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,OAAO,CAAC;KACnB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,uBAAuB,CAAC;IACvC,KAAY,UAAU,GAAG,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;IAC5D,KAAY,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IACvD,UAAiB,YAAY;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;KACd;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,qBAAqB,CAAC;IACrC,KAAY,UAAU,GAAG;QACvB,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,SAAS;QACf,QAAQ,EAAE,YAAY;QACtB,MAAM,EAAE,SAAS;KAClB,CAAC;IACF,KAAY,WAAW,GAAG;QACxB,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,MAAM;QAChB,MAAM,EAAE,MAAM;KACf,CAAC;IACF,UAAiB,YAAY;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,MAAM,CAAC;KAChB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,qBAAqB,CAAC;IACrC,KAAY,UAAU,GAAG;QACvB,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,SAAS;QACf,QAAQ,EAAE,YAAY;KACvB,CAAC;IACF,KAAY,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;IACzE,UAAiB,YAAY;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;KAClB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,uBAAuB,CAAC;IACvC,KAAY,UAAU,GAAG;QACvB,IAAI,EAAE,SAAS;QACf,YAAY,EAAE,SAAS;QACvB,QAAQ,EAAE,SAAS;KACpB,CAAC;IACF,KAAY,WAAW,GAAG;QACxB,IAAI,EAAE,MAAM;QACZ,YAAY,EAAE,MAAM;QACpB,QAAQ,EAAE,MAAM;KACjB,CAAC;IACF,UAAiB,YAAY;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,YAAY,EAAE,MAAM,CAAC;QACrB,QAAQ,EAAE,MAAM,CAAC;KAClB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,qBAAqB,CAAC;IACrC,KAAY,UAAU,GAAG;QACvB,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,SAAS;QACtB,WAAW,EAAE,WAAW;KACzB,CAAC;IACF,KAAY,WAAW,GAAG;QACxB,IAAI,EAAE,MAAM;QACZ,WAAW,EAAE,MAAM;QACnB,WAAW,EAAE,MAAM;KACpB,CAAC;IACF,UAAiB,YAAY;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,EAAE,MAAM,CAAC;QACpB,WAAW,EAAE,MAAM,CAAC;KACrB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,gBAAgB,CAAC;IAChC,KAAY,UAAU,GAAG,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IACzD,KAAY,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IACvD,UAAiB,YAAY;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;KACd;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,kBAAkB,CAAC;IAClC,KAAY,UAAU,GAAG,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,CAAC,CAAC;IACvE,KAAY,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;IAC/D,UAAiB,YAAY;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;KACX;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,gBAAgB,CAAC;IAChC,KAAY,UAAU,GAAG;QACvB,IAAI,EAAE,SAAS;QACf,UAAU,EAAE,MAAM;QAClB,GAAG,EAAE,MAAM;QACX,KAAK,EAAE,MAAM;KACd,CAAC;IACF,KAAY,WAAW,GAAG;QACxB,IAAI,EAAE,MAAM;QACZ,UAAU,EAAE,MAAM;QAClB,GAAG,EAAE,MAAM;QACX,KAAK,EAAE,MAAM;KACd,CAAC;IACF,UAAiB,YAAY;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,UAAU,EAAE,MAAM,CAAC;QACnB,GAAG,EAAE,MAAM,CAAC;QACZ,KAAK,EAAE,MAAM,CAAC;KACf;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,mBAAmB,CAAC;IACnC,KAAY,UAAU,GAAG,CAAC,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,CAAC,CAAC;IACrE,KAAY,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;IAC7D,UAAiB,YAAY;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,UAAU,EAAE,MAAM,CAAC;KACpB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,MAAM,WAAW,cAAe,SAAQ,YAAY;IAClD,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,cAAc,CAAC;IACxD,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,uBAAuB,CAAC;IAEnC,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,GAAG,EAAE,mBAAmB,CACtB;QAAC,IAAI,EAAE,SAAS;QAAE,YAAY,EAAE,YAAY;KAAC,EAC7C;QAAC,CAAC,MAAM,EAAE,MAAM,CAAC;KAAC,EAClB,MAAM,CACP,CAAC;IAEF,eAAe,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAE1E,uBAAuB,EAAE,mBAAmB,CAC1C;QAAC,IAAI,EAAE,SAAS;QAAE,QAAQ,EAAE,YAAY;KAAC,EACzC;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IAEF,OAAO,EAAE,mBAAmB,CAC1B;QAAC,IAAI,EAAE,SAAS;QAAE,QAAQ,EAAE,WAAW;QAAE,QAAQ,EAAE,OAAO;KAAC,EAC3D;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,YAAY,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IAE3E,WAAW,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEtE,SAAS,EAAE,mBAAmB,CAC5B;QAAC,IAAI,EAAE,SAAS;QAAE,IAAI,EAAE,SAAS;QAAE,QAAQ,EAAE,YAAY;KAAC,EAC1D;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IAEF,aAAa,EAAE,mBAAmB,CAChC;QAAC,IAAI,EAAE,SAAS;QAAE,IAAI,EAAE,SAAS;KAAC,EAClC;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,oBAAoB,EAAE,mBAAmB,CACvC;QAAC,IAAI,EAAE,SAAS;QAAE,WAAW,EAAE,SAAS;KAAC,EACzC;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IAEF,aAAa,EAAE,mBAAmB,CAChC;QAAC,KAAK,EAAE,WAAW;QAAE,IAAI,EAAE,SAAS;QAAE,QAAQ,EAAE,WAAW;KAAC,EAC5D;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,gBAAgB,EAAE,mBAAmB,CACnC;QAAC,OAAO,EAAE,WAAW;QAAE,QAAQ,EAAE,WAAW;KAAC,EAC7C;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,SAAS,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,EAAE,YAAY,CAAC,CAAC;IAE9E,sBAAsB,EAAE,mBAAmB,CACzC;QAAC,QAAQ,EAAE,SAAS;QAAE,IAAI,EAAE,SAAS,EAAE;KAAC,EACxC;QAAC,MAAM,EAAE;KAAC,EACV,YAAY,CACb,CAAC;IAEF,IAAI,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAE/D,MAAM,EAAE,mBAAmB,CACzB;QAAC,IAAI,EAAE,SAAS;KAAC,EACjB;QAAC,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG;YAAE,CAAC,EAAE,MAAM,CAAC;YAAC,CAAC,EAAE,MAAM,CAAA;SAAE;KAAC,EAC7C,MAAM,CACP,CAAC;IAEF,cAAc,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEzE,MAAM,EAAE,mBAAmB,CACzB;QAAC,IAAI,EAAE,SAAS;QAAE,WAAW,EAAE,YAAY;QAAE,IAAI,EAAE,SAAS;KAAC,EAC7D;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,gCAAgC,EAAE,mBAAmB,CACnD;QAAC,IAAI,EAAE,SAAS;QAAE,QAAQ,EAAE,YAAY;QAAE,CAAC,EAAE,SAAS;KAAC,EACvD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,0BAA0B,EAAE,mBAAmB,CAC7C;QAAC,IAAI,EAAE,SAAS;QAAE,CAAC,EAAE,WAAW;KAAC,EACjC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,iBAAiB,EAAE,mBAAmB,CACpC;QAAC,QAAQ,EAAE,WAAW;QAAE,QAAQ,EAAE,OAAO;KAAC,EAC1C;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,cAAc,EAAE,mBAAmB,CACjC;QAAC,IAAI,EAAE,SAAS;QAAE,IAAI,EAAE,SAAS;KAAC,EAClC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,aAAa,EAAE,mBAAmB,CAChC;QAAC,IAAI,EAAE,SAAS;QAAE,IAAI,EAAE,SAAS;KAAC,EAClC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,YAAY,EAAE,mBAAmB,CAC/B;QAAC,IAAI,EAAE,SAAS;QAAE,WAAW,EAAE,SAAS;QAAE,WAAW,EAAE,WAAW;KAAC,EACnE;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,OAAO,EAAE,mBAAmB,CAC1B;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,MAAM;KAAC,EAClC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,SAAS,EAAE,mBAAmB,CAC5B;QAAC,IAAI,EAAE,SAAS;QAAE,CAAC,EAAE,SAAS;QAAE,CAAC,EAAE,SAAS;KAAC,EAC7C;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,OAAO,EAAE,mBAAmB,CAC1B;QAAC,IAAI,EAAE,SAAS;QAAE,GAAG,EAAE,MAAM;QAAE,KAAK,EAAE,MAAM;KAAC,EAC7C;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,WAAW,EAAE,mBAAmB,CAC9B;QAAC,IAAI,EAAE,SAAS;QAAE,IAAI,EAAE,SAAS;KAAC,EAClC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,iBAAiB,EAAE,mBAAmB,CACpC;QAAC,WAAW,EAAE,SAAS;KAAC,EACxB;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,IAAI,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAE5E,QAAQ,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEnE,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,WAAW,CACT,eAAe,EAAE,KAAK,GACrB,mBAAmB,CACpB;QAAC,IAAI,EAAE,SAAS;QAAE,YAAY,EAAE,YAAY;KAAC,EAC7C;QAAC,CAAC,MAAM,EAAE,MAAM,CAAC;KAAC,EAClB,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,eAAe,GAC/B,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC5D,WAAW,CACT,eAAe,EAAE,uBAAuB,GACvC,mBAAmB,CACpB;QAAC,IAAI,EAAE,SAAS;QAAE,QAAQ,EAAE,YAAY;KAAC,EACzC;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,SAAS,GACzB,mBAAmB,CACpB;QAAC,IAAI,EAAE,SAAS;QAAE,QAAQ,EAAE,WAAW;QAAE,QAAQ,EAAE,OAAO;KAAC,EAC3D;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,cAAc,GAC9B,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IAChE,WAAW,CACT,eAAe,EAAE,aAAa,GAC7B,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC5D,WAAW,CACT,eAAe,EAAE,WAAW,GAC3B,mBAAmB,CACpB;QAAC,IAAI,EAAE,SAAS;QAAE,IAAI,EAAE,SAAS;QAAE,QAAQ,EAAE,YAAY;KAAC,EAC1D;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,eAAe,GAC/B,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IAC9E,WAAW,CACT,eAAe,EAAE,sBAAsB,GACtC,mBAAmB,CACpB;QAAC,IAAI,EAAE,SAAS;QAAE,WAAW,EAAE,SAAS;KAAC,EACzC;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,eAAe,GAC/B,mBAAmB,CACpB;QAAC,KAAK,EAAE,WAAW;QAAE,IAAI,EAAE,SAAS;QAAE,QAAQ,EAAE,WAAW;KAAC,EAC5D;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,kBAAkB,GAClC,mBAAmB,CACpB;QAAC,OAAO,EAAE,WAAW;QAAE,QAAQ,EAAE,WAAW;KAAC,EAC7C;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,WAAW,GAC3B,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,EAAE,YAAY,CAAC,CAAC;IACtE,WAAW,CACT,eAAe,EAAE,wBAAwB,GACxC,mBAAmB,CACpB;QAAC,QAAQ,EAAE,SAAS;QAAE,IAAI,EAAE,SAAS,EAAE;KAAC,EACxC;QAAC,MAAM,EAAE;KAAC,EACV,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,MAAM,GACtB,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC5D,WAAW,CACT,eAAe,EAAE,QAAQ,GACxB,mBAAmB,CACpB;QAAC,IAAI,EAAE,SAAS;KAAC,EACjB;QAAC,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG;YAAE,CAAC,EAAE,MAAM,CAAC;YAAC,CAAC,EAAE,MAAM,CAAA;SAAE;KAAC,EAC7C,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,gBAAgB,GAChC,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC5D,WAAW,CACT,eAAe,EAAE,QAAQ,GACxB,mBAAmB,CACpB;QAAC,IAAI,EAAE,SAAS;QAAE,WAAW,EAAE,YAAY;QAAE,IAAI,EAAE,SAAS;KAAC,EAC7D;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,gCAAgC,GAChD,mBAAmB,CACpB;QAAC,IAAI,EAAE,SAAS;QAAE,QAAQ,EAAE,YAAY;QAAE,CAAC,EAAE,SAAS;KAAC,EACvD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,0BAA0B,GAC1C,mBAAmB,CACpB;QAAC,IAAI,EAAE,SAAS;QAAE,CAAC,EAAE,WAAW;KAAC,EACjC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,mBAAmB,GACnC,mBAAmB,CACpB;QAAC,QAAQ,EAAE,WAAW;QAAE,QAAQ,EAAE,OAAO;KAAC,EAC1C;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,gBAAgB,GAChC,mBAAmB,CACpB;QAAC,IAAI,EAAE,SAAS;QAAE,IAAI,EAAE,SAAS;KAAC,EAClC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,eAAe,GAC/B,mBAAmB,CACpB;QAAC,IAAI,EAAE,SAAS;QAAE,IAAI,EAAE,SAAS;KAAC,EAClC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,cAAc,GAC9B,mBAAmB,CACpB;QAAC,IAAI,EAAE,SAAS;QAAE,WAAW,EAAE,SAAS;QAAE,WAAW,EAAE,WAAW;KAAC,EACnE;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,SAAS,GACzB,mBAAmB,CACpB;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,MAAM;KAAC,EAClC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,WAAW,GAC3B,mBAAmB,CACpB;QAAC,IAAI,EAAE,SAAS;QAAE,CAAC,EAAE,SAAS;QAAE,CAAC,EAAE,SAAS;KAAC,EAC7C;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,SAAS,GACzB,mBAAmB,CACpB;QAAC,IAAI,EAAE,SAAS;QAAE,GAAG,EAAE,MAAM;QAAE,KAAK,EAAE,MAAM;KAAC,EAC7C;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,aAAa,GAC7B,mBAAmB,CACpB;QAAC,IAAI,EAAE,SAAS;QAAE,IAAI,EAAE,SAAS;KAAC,EAClC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,mBAAmB,GACnC,mBAAmB,CAAC,CAAC,WAAW,EAAE,SAAS,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IACpE,WAAW,CACT,eAAe,EAAE,MAAM,GACtB,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IACzE,WAAW,CACT,eAAe,EAAE,UAAU,GAC1B,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAE5D,QAAQ,CACN,GAAG,EAAE,YAAY,GAChB,kBAAkB,CACnB,eAAe,CAAC,UAAU,EAC1B,eAAe,CAAC,WAAW,EAC3B,eAAe,CAAC,YAAY,CAC7B,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,aAAa,GACjB,kBAAkB,CACnB,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,gBAAgB,GACpB,kBAAkB,CACnB,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,gBAAgB,GACpB,kBAAkB,CACnB,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,UAAU,GACd,kBAAkB,CACnB,aAAa,CAAC,UAAU,EACxB,aAAa,CAAC,WAAW,EACzB,aAAa,CAAC,YAAY,CAC3B,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,oBAAoB,GACxB,kBAAkB,CACnB,uBAAuB,CAAC,UAAU,EAClC,uBAAuB,CAAC,WAAW,EACnC,uBAAuB,CAAC,YAAY,CACrC,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,kBAAkB,GACtB,kBAAkB,CACnB,qBAAqB,CAAC,UAAU,EAChC,qBAAqB,CAAC,WAAW,EACjC,qBAAqB,CAAC,YAAY,CACnC,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,kBAAkB,GACtB,kBAAkB,CACnB,qBAAqB,CAAC,UAAU,EAChC,qBAAqB,CAAC,WAAW,EACjC,qBAAqB,CAAC,YAAY,CACnC,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,oBAAoB,GACxB,kBAAkB,CACnB,uBAAuB,CAAC,UAAU,EAClC,uBAAuB,CAAC,WAAW,EACnC,uBAAuB,CAAC,YAAY,CACrC,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,kBAAkB,GACtB,kBAAkB,CACnB,qBAAqB,CAAC,UAAU,EAChC,qBAAqB,CAAC,WAAW,EACjC,qBAAqB,CAAC,YAAY,CACnC,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,aAAa,GACjB,kBAAkB,CACnB,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,eAAe,GACnB,kBAAkB,CACnB,kBAAkB,CAAC,UAAU,EAC7B,kBAAkB,CAAC,WAAW,EAC9B,kBAAkB,CAAC,YAAY,CAChC,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,aAAa,GACjB,kBAAkB,CACnB,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,gBAAgB,GACpB,kBAAkB,CACnB,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;IAEF,OAAO,EAAE;QACP,6BAA6B,EAAE,kBAAkB,CAC/C,eAAe,CAAC,UAAU,EAC1B,eAAe,CAAC,WAAW,EAC3B,eAAe,CAAC,YAAY,CAC7B,CAAC;QACF,UAAU,EAAE,kBAAkB,CAC5B,eAAe,CAAC,UAAU,EAC1B,eAAe,CAAC,WAAW,EAC3B,eAAe,CAAC,YAAY,CAC7B,CAAC;QAEF,8BAA8B,EAAE,kBAAkB,CAChD,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QACF,WAAW,EAAE,kBAAkB,CAC7B,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QAEF,uCAAuC,EAAE,kBAAkB,CACzD,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;QACF,cAAc,EAAE,kBAAkB,CAChC,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;QAEF,sCAAsC,EAAE,kBAAkB,CACxD,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;QACF,cAAc,EAAE,kBAAkB,CAChC,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;QAEF,wCAAwC,EAAE,kBAAkB,CAC1D,aAAa,CAAC,UAAU,EACxB,aAAa,CAAC,WAAW,EACzB,aAAa,CAAC,YAAY,CAC3B,CAAC;QACF,QAAQ,EAAE,kBAAkB,CAC1B,aAAa,CAAC,UAAU,EACxB,aAAa,CAAC,WAAW,EACzB,aAAa,CAAC,YAAY,CAC3B,CAAC;QAEF,mCAAmC,EAAE,kBAAkB,CACrD,uBAAuB,CAAC,UAAU,EAClC,uBAAuB,CAAC,WAAW,EACnC,uBAAuB,CAAC,YAAY,CACrC,CAAC;QACF,kBAAkB,EAAE,kBAAkB,CACpC,uBAAuB,CAAC,UAAU,EAClC,uBAAuB,CAAC,WAAW,EACnC,uBAAuB,CAAC,YAAY,CACrC,CAAC;QAEF,8CAA8C,EAAE,kBAAkB,CAChE,qBAAqB,CAAC,UAAU,EAChC,qBAAqB,CAAC,WAAW,EACjC,qBAAqB,CAAC,YAAY,CACnC,CAAC;QACF,gBAAgB,EAAE,kBAAkB,CAClC,qBAAqB,CAAC,UAAU,EAChC,qBAAqB,CAAC,WAAW,EACjC,qBAAqB,CAAC,YAAY,CACnC,CAAC;QAEF,wCAAwC,EAAE,kBAAkB,CAC1D,qBAAqB,CAAC,UAAU,EAChC,qBAAqB,CAAC,WAAW,EACjC,qBAAqB,CAAC,YAAY,CACnC,CAAC;QACF,gBAAgB,EAAE,kBAAkB,CAClC,qBAAqB,CAAC,UAAU,EAChC,qBAAqB,CAAC,WAAW,EACjC,qBAAqB,CAAC,YAAY,CACnC,CAAC;QAEF,yCAAyC,EAAE,kBAAkB,CAC3D,uBAAuB,CAAC,UAAU,EAClC,uBAAuB,CAAC,WAAW,EACnC,uBAAuB,CAAC,YAAY,CACrC,CAAC;QACF,kBAAkB,EAAE,kBAAkB,CACpC,uBAAuB,CAAC,UAAU,EAClC,uBAAuB,CAAC,WAAW,EACnC,uBAAuB,CAAC,YAAY,CACrC,CAAC;QAEF,0CAA0C,EAAE,kBAAkB,CAC5D,qBAAqB,CAAC,UAAU,EAChC,qBAAqB,CAAC,WAAW,EACjC,qBAAqB,CAAC,YAAY,CACnC,CAAC;QACF,gBAAgB,EAAE,kBAAkB,CAClC,qBAAqB,CAAC,UAAU,EAChC,qBAAqB,CAAC,WAAW,EACjC,qBAAqB,CAAC,YAAY,CACnC,CAAC;QAEF,6BAA6B,EAAE,kBAAkB,CAC/C,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QACF,WAAW,EAAE,kBAAkB,CAC7B,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QAEF,wCAAwC,EAAE,kBAAkB,CAC1D,kBAAkB,CAAC,UAAU,EAC7B,kBAAkB,CAAC,WAAW,EAC9B,kBAAkB,CAAC,YAAY,CAChC,CAAC;QACF,aAAa,EAAE,kBAAkB,CAC/B,kBAAkB,CAAC,UAAU,EAC7B,kBAAkB,CAAC,WAAW,EAC9B,kBAAkB,CAAC,YAAY,CAChC,CAAC;QAEF,2CAA2C,EAAE,kBAAkB,CAC7D,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QACF,WAAW,EAAE,kBAAkB,CAC7B,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QAEF,gCAAgC,EAAE,kBAAkB,CAClD,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;QACF,cAAc,EAAE,kBAAkB,CAChC,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;KACH,CAAC;CACH"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver.js b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/Resolver.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/Resolver.d.ts new file mode 100644 index 00000000..983f0b97 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/Resolver.d.ts @@ -0,0 +1,624 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; +export interface ResolverInterface extends Interface { + getFunction(nameOrSignature: "ABI" | "addr(bytes32)" | "addr(bytes32,uint256)" | "approve" | "content" | "contenthash" | "dnsRecord" | "interfaceImplementer" | "isApprovedFor" | "isApprovedForAll" | "multicall" | "multicallWithNodeCheck" | "multihash" | "name" | "pubkey" | "resolve" | "setABI" | "setAddr(bytes32,uint256,bytes)" | "setAddr(bytes32,address)" | "setApprovalForAll" | "setContent" | "setContenthash" | "setDnsrr" | "setInterface" | "setMultihash" | "setName" | "setPubkey" | "setText" | "supportsInterface" | "text" | "zonehash"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "ABIChanged" | "AddrChanged" | "AddressChanged" | "ContentChanged" | "ContenthashChanged" | "DNSRecordChanged" | "DNSRecordDeleted" | "DNSZonehashChanged" | "InterfaceChanged" | "NameChanged" | "PubkeyChanged" | "TextChanged"): EventFragment; + encodeFunctionData(functionFragment: "ABI", values: [BytesLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "addr(bytes32)", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "addr(bytes32,uint256)", values: [BytesLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "approve", values: [BytesLike, AddressLike, boolean]): string; + encodeFunctionData(functionFragment: "content", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "contenthash", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "dnsRecord", values: [BytesLike, BytesLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "interfaceImplementer", values: [BytesLike, BytesLike]): string; + encodeFunctionData(functionFragment: "isApprovedFor", values: [AddressLike, BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "multicall", values: [BytesLike[]]): string; + encodeFunctionData(functionFragment: "multicallWithNodeCheck", values: [BytesLike, BytesLike[]]): string; + encodeFunctionData(functionFragment: "multihash", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "name", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "pubkey", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "resolve", values: [BytesLike, BytesLike]): string; + encodeFunctionData(functionFragment: "setABI", values: [BytesLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "setAddr(bytes32,uint256,bytes)", values: [BytesLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "setAddr(bytes32,address)", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; + encodeFunctionData(functionFragment: "setContent", values: [BytesLike, BytesLike]): string; + encodeFunctionData(functionFragment: "setContenthash", values: [BytesLike, BytesLike]): string; + encodeFunctionData(functionFragment: "setDnsrr", values: [BytesLike, BytesLike]): string; + encodeFunctionData(functionFragment: "setInterface", values: [BytesLike, BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "setMultihash", values: [BytesLike, BytesLike]): string; + encodeFunctionData(functionFragment: "setName", values: [BytesLike, string]): string; + encodeFunctionData(functionFragment: "setPubkey", values: [BytesLike, BytesLike, BytesLike]): string; + encodeFunctionData(functionFragment: "setText", values: [BytesLike, string, string]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "text", values: [BytesLike, string]): string; + encodeFunctionData(functionFragment: "zonehash", values: [BytesLike]): string; + decodeFunctionResult(functionFragment: "ABI", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "addr(bytes32)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "addr(bytes32,uint256)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "content", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "contenthash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "dnsRecord", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "interfaceImplementer", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedFor", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "multicall", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "multicallWithNodeCheck", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "multihash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "pubkey", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "resolve", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setABI", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setAddr(bytes32,uint256,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setAddr(bytes32,address)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setContent", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setContenthash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setDnsrr", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setMultihash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setName", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setPubkey", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setText", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "text", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "zonehash", data: BytesLike): Result; +} +export declare namespace ABIChangedEvent { + type InputTuple = [node: BytesLike, contentType: BigNumberish]; + type OutputTuple = [node: string, contentType: bigint]; + interface OutputObject { + node: string; + contentType: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace AddrChangedEvent { + type InputTuple = [node: BytesLike, a: AddressLike]; + type OutputTuple = [node: string, a: string]; + interface OutputObject { + node: string; + a: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace AddressChangedEvent { + type InputTuple = [ + node: BytesLike, + coinType: BigNumberish, + newAddress: BytesLike + ]; + type OutputTuple = [ + node: string, + coinType: bigint, + newAddress: string + ]; + interface OutputObject { + node: string; + coinType: bigint; + newAddress: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ContentChangedEvent { + type InputTuple = [node: BytesLike, hash: BytesLike]; + type OutputTuple = [node: string, hash: string]; + interface OutputObject { + node: string; + hash: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ContenthashChangedEvent { + type InputTuple = [node: BytesLike, hash: BytesLike]; + type OutputTuple = [node: string, hash: string]; + interface OutputObject { + node: string; + hash: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace DNSRecordChangedEvent { + type InputTuple = [ + node: BytesLike, + name: BytesLike, + resource: BigNumberish, + record: BytesLike + ]; + type OutputTuple = [ + node: string, + name: string, + resource: bigint, + record: string + ]; + interface OutputObject { + node: string; + name: string; + resource: bigint; + record: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace DNSRecordDeletedEvent { + type InputTuple = [ + node: BytesLike, + name: BytesLike, + resource: BigNumberish + ]; + type OutputTuple = [node: string, name: string, resource: bigint]; + interface OutputObject { + node: string; + name: string; + resource: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace DNSZonehashChangedEvent { + type InputTuple = [ + node: BytesLike, + lastzonehash: BytesLike, + zonehash: BytesLike + ]; + type OutputTuple = [ + node: string, + lastzonehash: string, + zonehash: string + ]; + interface OutputObject { + node: string; + lastzonehash: string; + zonehash: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace InterfaceChangedEvent { + type InputTuple = [ + node: BytesLike, + interfaceID: BytesLike, + implementer: AddressLike + ]; + type OutputTuple = [ + node: string, + interfaceID: string, + implementer: string + ]; + interface OutputObject { + node: string; + interfaceID: string; + implementer: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NameChangedEvent { + type InputTuple = [node: BytesLike, name: string]; + type OutputTuple = [node: string, name: string]; + interface OutputObject { + node: string; + name: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace PubkeyChangedEvent { + type InputTuple = [node: BytesLike, x: BytesLike, y: BytesLike]; + type OutputTuple = [node: string, x: string, y: string]; + interface OutputObject { + node: string; + x: string; + y: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TextChangedEvent { + type InputTuple = [ + node: BytesLike, + indexedKey: string, + key: string, + value: string + ]; + type OutputTuple = [ + node: string, + indexedKey: string, + key: string, + value: string + ]; + interface OutputObject { + node: string; + indexedKey: string; + key: string; + value: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface Resolver extends BaseContract { + connect(runner?: ContractRunner | null): Resolver; + waitForDeployment(): Promise; + interface: ResolverInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + ABI: TypedContractMethod<[ + node: BytesLike, + contentTypes: BigNumberish + ], [ + [bigint, string] + ], "view">; + "addr(bytes32)": TypedContractMethod<[node: BytesLike], [string], "view">; + "addr(bytes32,uint256)": TypedContractMethod<[ + node: BytesLike, + coinType: BigNumberish + ], [ + string + ], "view">; + approve: TypedContractMethod<[ + node: BytesLike, + delegate: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + content: TypedContractMethod<[node: BytesLike], [string], "view">; + contenthash: TypedContractMethod<[node: BytesLike], [string], "view">; + dnsRecord: TypedContractMethod<[ + node: BytesLike, + name: BytesLike, + resource: BigNumberish + ], [ + string + ], "view">; + interfaceImplementer: TypedContractMethod<[ + node: BytesLike, + interfaceID: BytesLike + ], [ + string + ], "view">; + isApprovedFor: TypedContractMethod<[ + owner: AddressLike, + node: BytesLike, + delegate: AddressLike + ], [ + void + ], "nonpayable">; + isApprovedForAll: TypedContractMethod<[ + account: AddressLike, + operator: AddressLike + ], [ + void + ], "nonpayable">; + multicall: TypedContractMethod<[data: BytesLike[]], [string[]], "nonpayable">; + multicallWithNodeCheck: TypedContractMethod<[ + nodehash: BytesLike, + data: BytesLike[] + ], [ + string[] + ], "nonpayable">; + multihash: TypedContractMethod<[node: BytesLike], [string], "view">; + name: TypedContractMethod<[node: BytesLike], [string], "view">; + pubkey: TypedContractMethod<[ + node: BytesLike + ], [ + [string, string] & { + x: string; + y: string; + } + ], "view">; + resolve: TypedContractMethod<[ + name: BytesLike, + data: BytesLike + ], [ + string + ], "view">; + setABI: TypedContractMethod<[ + node: BytesLike, + contentType: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + "setAddr(bytes32,uint256,bytes)": TypedContractMethod<[ + node: BytesLike, + coinType: BigNumberish, + a: BytesLike + ], [ + void + ], "nonpayable">; + "setAddr(bytes32,address)": TypedContractMethod<[ + node: BytesLike, + addr: AddressLike + ], [ + void + ], "nonpayable">; + setApprovalForAll: TypedContractMethod<[ + arg0: AddressLike, + arg1: boolean + ], [ + void + ], "nonpayable">; + setContent: TypedContractMethod<[ + node: BytesLike, + hash: BytesLike + ], [ + void + ], "nonpayable">; + setContenthash: TypedContractMethod<[ + node: BytesLike, + hash: BytesLike + ], [ + void + ], "nonpayable">; + setDnsrr: TypedContractMethod<[ + node: BytesLike, + data: BytesLike + ], [ + void + ], "nonpayable">; + setInterface: TypedContractMethod<[ + node: BytesLike, + interfaceID: BytesLike, + implementer: AddressLike + ], [ + void + ], "nonpayable">; + setMultihash: TypedContractMethod<[ + node: BytesLike, + hash: BytesLike + ], [ + void + ], "nonpayable">; + setName: TypedContractMethod<[ + node: BytesLike, + _name: string + ], [ + void + ], "nonpayable">; + setPubkey: TypedContractMethod<[ + node: BytesLike, + x: BytesLike, + y: BytesLike + ], [ + void + ], "nonpayable">; + setText: TypedContractMethod<[ + node: BytesLike, + key: string, + value: string + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + text: TypedContractMethod<[node: BytesLike, key: string], [string], "view">; + zonehash: TypedContractMethod<[node: BytesLike], [string], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "ABI"): TypedContractMethod<[ + node: BytesLike, + contentTypes: BigNumberish + ], [ + [bigint, string] + ], "view">; + getFunction(nameOrSignature: "addr(bytes32)"): TypedContractMethod<[node: BytesLike], [string], "view">; + getFunction(nameOrSignature: "addr(bytes32,uint256)"): TypedContractMethod<[ + node: BytesLike, + coinType: BigNumberish + ], [ + string + ], "view">; + getFunction(nameOrSignature: "approve"): TypedContractMethod<[ + node: BytesLike, + delegate: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "content"): TypedContractMethod<[node: BytesLike], [string], "view">; + getFunction(nameOrSignature: "contenthash"): TypedContractMethod<[node: BytesLike], [string], "view">; + getFunction(nameOrSignature: "dnsRecord"): TypedContractMethod<[ + node: BytesLike, + name: BytesLike, + resource: BigNumberish + ], [ + string + ], "view">; + getFunction(nameOrSignature: "interfaceImplementer"): TypedContractMethod<[ + node: BytesLike, + interfaceID: BytesLike + ], [ + string + ], "view">; + getFunction(nameOrSignature: "isApprovedFor"): TypedContractMethod<[ + owner: AddressLike, + node: BytesLike, + delegate: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ + account: AddressLike, + operator: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "multicall"): TypedContractMethod<[data: BytesLike[]], [string[]], "nonpayable">; + getFunction(nameOrSignature: "multicallWithNodeCheck"): TypedContractMethod<[ + nodehash: BytesLike, + data: BytesLike[] + ], [ + string[] + ], "nonpayable">; + getFunction(nameOrSignature: "multihash"): TypedContractMethod<[node: BytesLike], [string], "view">; + getFunction(nameOrSignature: "name"): TypedContractMethod<[node: BytesLike], [string], "view">; + getFunction(nameOrSignature: "pubkey"): TypedContractMethod<[ + node: BytesLike + ], [ + [string, string] & { + x: string; + y: string; + } + ], "view">; + getFunction(nameOrSignature: "resolve"): TypedContractMethod<[name: BytesLike, data: BytesLike], [string], "view">; + getFunction(nameOrSignature: "setABI"): TypedContractMethod<[ + node: BytesLike, + contentType: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setAddr(bytes32,uint256,bytes)"): TypedContractMethod<[ + node: BytesLike, + coinType: BigNumberish, + a: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setAddr(bytes32,address)"): TypedContractMethod<[ + node: BytesLike, + addr: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ + arg0: AddressLike, + arg1: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setContent"): TypedContractMethod<[ + node: BytesLike, + hash: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setContenthash"): TypedContractMethod<[ + node: BytesLike, + hash: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setDnsrr"): TypedContractMethod<[ + node: BytesLike, + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setInterface"): TypedContractMethod<[ + node: BytesLike, + interfaceID: BytesLike, + implementer: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setMultihash"): TypedContractMethod<[ + node: BytesLike, + hash: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setName"): TypedContractMethod<[ + node: BytesLike, + _name: string + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setPubkey"): TypedContractMethod<[ + node: BytesLike, + x: BytesLike, + y: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setText"): TypedContractMethod<[ + node: BytesLike, + key: string, + value: string + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "text"): TypedContractMethod<[node: BytesLike, key: string], [string], "view">; + getFunction(nameOrSignature: "zonehash"): TypedContractMethod<[node: BytesLike], [string], "view">; + getEvent(key: "ABIChanged"): TypedContractEvent; + getEvent(key: "AddrChanged"): TypedContractEvent; + getEvent(key: "AddressChanged"): TypedContractEvent; + getEvent(key: "ContentChanged"): TypedContractEvent; + getEvent(key: "ContenthashChanged"): TypedContractEvent; + getEvent(key: "DNSRecordChanged"): TypedContractEvent; + getEvent(key: "DNSRecordDeleted"): TypedContractEvent; + getEvent(key: "DNSZonehashChanged"): TypedContractEvent; + getEvent(key: "InterfaceChanged"): TypedContractEvent; + getEvent(key: "NameChanged"): TypedContractEvent; + getEvent(key: "PubkeyChanged"): TypedContractEvent; + getEvent(key: "TextChanged"): TypedContractEvent; + filters: { + "ABIChanged(bytes32,uint256)": TypedContractEvent; + ABIChanged: TypedContractEvent; + "AddrChanged(bytes32,address)": TypedContractEvent; + AddrChanged: TypedContractEvent; + "AddressChanged(bytes32,uint256,bytes)": TypedContractEvent; + AddressChanged: TypedContractEvent; + "ContentChanged(bytes32,bytes32)": TypedContractEvent; + ContentChanged: TypedContractEvent; + "ContenthashChanged(bytes32,bytes)": TypedContractEvent; + ContenthashChanged: TypedContractEvent; + "DNSRecordChanged(bytes32,bytes,uint16,bytes)": TypedContractEvent; + DNSRecordChanged: TypedContractEvent; + "DNSRecordDeleted(bytes32,bytes,uint16)": TypedContractEvent; + DNSRecordDeleted: TypedContractEvent; + "DNSZonehashChanged(bytes32,bytes,bytes)": TypedContractEvent; + DNSZonehashChanged: TypedContractEvent; + "InterfaceChanged(bytes32,bytes4,address)": TypedContractEvent; + InterfaceChanged: TypedContractEvent; + "NameChanged(bytes32,string)": TypedContractEvent; + NameChanged: TypedContractEvent; + "PubkeyChanged(bytes32,bytes32,bytes32)": TypedContractEvent; + PubkeyChanged: TypedContractEvent; + "TextChanged(bytes32,string,string,string)": TypedContractEvent; + TextChanged: TypedContractEvent; + }; +} +//# sourceMappingURL=Resolver.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/Resolver.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/Resolver.d.ts.map new file mode 100644 index 00000000..02c3ff44 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/Resolver.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"Resolver.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/resolvers/Resolver.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/Resolver.js b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/Resolver.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/Resolver.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase.d.ts new file mode 100644 index 00000000..466949da --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase.d.ts @@ -0,0 +1,55 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; +export interface ResolverBaseInterface extends Interface { + getFunction(nameOrSignature: "clearRecords" | "recordVersions" | "supportsInterface"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "VersionChanged"): EventFragment; + encodeFunctionData(functionFragment: "clearRecords", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "recordVersions", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + decodeFunctionResult(functionFragment: "clearRecords", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "recordVersions", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; +} +export declare namespace VersionChangedEvent { + type InputTuple = [node: BytesLike, newVersion: BigNumberish]; + type OutputTuple = [node: string, newVersion: bigint]; + interface OutputObject { + node: string; + newVersion: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface ResolverBase extends BaseContract { + connect(runner?: ContractRunner | null): ResolverBase; + waitForDeployment(): Promise; + interface: ResolverBaseInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + clearRecords: TypedContractMethod<[node: BytesLike], [void], "nonpayable">; + recordVersions: TypedContractMethod<[arg0: BytesLike], [bigint], "view">; + supportsInterface: TypedContractMethod<[ + interfaceID: BytesLike + ], [ + boolean + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "clearRecords"): TypedContractMethod<[node: BytesLike], [void], "nonpayable">; + getFunction(nameOrSignature: "recordVersions"): TypedContractMethod<[arg0: BytesLike], [bigint], "view">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceID: BytesLike], [boolean], "view">; + getEvent(key: "VersionChanged"): TypedContractEvent; + filters: { + "VersionChanged(bytes32,uint64)": TypedContractEvent; + VersionChanged: TypedContractEvent; + }; +} +//# sourceMappingURL=ResolverBase.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase.d.ts.map new file mode 100644 index 00000000..f14caf26 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ResolverBase.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase.js b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/index.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/index.d.ts new file mode 100644 index 00000000..9d645af6 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/index.d.ts @@ -0,0 +1,8 @@ +import type * as profiles from "./profiles"; +export type { profiles }; +export type { IMulticallable } from "./IMulticallable"; +export type { Multicallable } from "./Multicallable"; +export type { PublicResolver } from "./PublicResolver"; +export type { Resolver } from "./Resolver"; +export type { ResolverBase } from "./ResolverBase"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/index.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/index.d.ts.map new file mode 100644 index 00000000..6157abba --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/resolvers/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,QAAQ,MAAM,YAAY,CAAC;AAC5C,YAAY,EAAE,QAAQ,EAAE,CAAC;AACzB,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,YAAY,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,YAAY,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/index.js b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver.d.ts new file mode 100644 index 00000000..dedaad51 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver.d.ts @@ -0,0 +1,100 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; +export interface ABIResolverInterface extends Interface { + getFunction(nameOrSignature: "ABI" | "clearRecords" | "recordVersions" | "setABI" | "supportsInterface"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "ABIChanged" | "VersionChanged"): EventFragment; + encodeFunctionData(functionFragment: "ABI", values: [BytesLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "clearRecords", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "recordVersions", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "setABI", values: [BytesLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + decodeFunctionResult(functionFragment: "ABI", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "clearRecords", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "recordVersions", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setABI", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; +} +export declare namespace ABIChangedEvent { + type InputTuple = [node: BytesLike, contentType: BigNumberish]; + type OutputTuple = [node: string, contentType: bigint]; + interface OutputObject { + node: string; + contentType: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace VersionChangedEvent { + type InputTuple = [node: BytesLike, newVersion: BigNumberish]; + type OutputTuple = [node: string, newVersion: bigint]; + interface OutputObject { + node: string; + newVersion: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface ABIResolver extends BaseContract { + connect(runner?: ContractRunner | null): ABIResolver; + waitForDeployment(): Promise; + interface: ABIResolverInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + ABI: TypedContractMethod<[ + node: BytesLike, + contentTypes: BigNumberish + ], [ + [bigint, string] + ], "view">; + clearRecords: TypedContractMethod<[node: BytesLike], [void], "nonpayable">; + recordVersions: TypedContractMethod<[arg0: BytesLike], [bigint], "view">; + setABI: TypedContractMethod<[ + node: BytesLike, + contentType: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceID: BytesLike + ], [ + boolean + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "ABI"): TypedContractMethod<[ + node: BytesLike, + contentTypes: BigNumberish + ], [ + [bigint, string] + ], "view">; + getFunction(nameOrSignature: "clearRecords"): TypedContractMethod<[node: BytesLike], [void], "nonpayable">; + getFunction(nameOrSignature: "recordVersions"): TypedContractMethod<[arg0: BytesLike], [bigint], "view">; + getFunction(nameOrSignature: "setABI"): TypedContractMethod<[ + node: BytesLike, + contentType: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceID: BytesLike], [boolean], "view">; + getEvent(key: "ABIChanged"): TypedContractEvent; + getEvent(key: "VersionChanged"): TypedContractEvent; + filters: { + "ABIChanged(bytes32,uint256)": TypedContractEvent; + ABIChanged: TypedContractEvent; + "VersionChanged(bytes32,uint64)": TypedContractEvent; + VersionChanged: TypedContractEvent; + }; +} +//# sourceMappingURL=ABIResolver.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver.d.ts.map new file mode 100644 index 00000000..3ebb75b7 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ABIResolver.d.ts","sourceRoot":"","sources":["../../../../../../../types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver.js b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver.d.ts new file mode 100644 index 00000000..4b905473 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver.d.ts @@ -0,0 +1,142 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; +export interface AddrResolverInterface extends Interface { + getFunction(nameOrSignature: "addr(bytes32)" | "addr(bytes32,uint256)" | "clearRecords" | "recordVersions" | "setAddr(bytes32,uint256,bytes)" | "setAddr(bytes32,address)" | "supportsInterface"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "AddrChanged" | "AddressChanged" | "VersionChanged"): EventFragment; + encodeFunctionData(functionFragment: "addr(bytes32)", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "addr(bytes32,uint256)", values: [BytesLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "clearRecords", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "recordVersions", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "setAddr(bytes32,uint256,bytes)", values: [BytesLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "setAddr(bytes32,address)", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + decodeFunctionResult(functionFragment: "addr(bytes32)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "addr(bytes32,uint256)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "clearRecords", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "recordVersions", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setAddr(bytes32,uint256,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setAddr(bytes32,address)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; +} +export declare namespace AddrChangedEvent { + type InputTuple = [node: BytesLike, a: AddressLike]; + type OutputTuple = [node: string, a: string]; + interface OutputObject { + node: string; + a: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace AddressChangedEvent { + type InputTuple = [ + node: BytesLike, + coinType: BigNumberish, + newAddress: BytesLike + ]; + type OutputTuple = [ + node: string, + coinType: bigint, + newAddress: string + ]; + interface OutputObject { + node: string; + coinType: bigint; + newAddress: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace VersionChangedEvent { + type InputTuple = [node: BytesLike, newVersion: BigNumberish]; + type OutputTuple = [node: string, newVersion: bigint]; + interface OutputObject { + node: string; + newVersion: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface AddrResolver extends BaseContract { + connect(runner?: ContractRunner | null): AddrResolver; + waitForDeployment(): Promise; + interface: AddrResolverInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + "addr(bytes32)": TypedContractMethod<[node: BytesLike], [string], "view">; + "addr(bytes32,uint256)": TypedContractMethod<[ + node: BytesLike, + coinType: BigNumberish + ], [ + string + ], "view">; + clearRecords: TypedContractMethod<[node: BytesLike], [void], "nonpayable">; + recordVersions: TypedContractMethod<[arg0: BytesLike], [bigint], "view">; + "setAddr(bytes32,uint256,bytes)": TypedContractMethod<[ + node: BytesLike, + coinType: BigNumberish, + a: BytesLike + ], [ + void + ], "nonpayable">; + "setAddr(bytes32,address)": TypedContractMethod<[ + node: BytesLike, + a: AddressLike + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceID: BytesLike + ], [ + boolean + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "addr(bytes32)"): TypedContractMethod<[node: BytesLike], [string], "view">; + getFunction(nameOrSignature: "addr(bytes32,uint256)"): TypedContractMethod<[ + node: BytesLike, + coinType: BigNumberish + ], [ + string + ], "view">; + getFunction(nameOrSignature: "clearRecords"): TypedContractMethod<[node: BytesLike], [void], "nonpayable">; + getFunction(nameOrSignature: "recordVersions"): TypedContractMethod<[arg0: BytesLike], [bigint], "view">; + getFunction(nameOrSignature: "setAddr(bytes32,uint256,bytes)"): TypedContractMethod<[ + node: BytesLike, + coinType: BigNumberish, + a: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setAddr(bytes32,address)"): TypedContractMethod<[ + node: BytesLike, + a: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceID: BytesLike], [boolean], "view">; + getEvent(key: "AddrChanged"): TypedContractEvent; + getEvent(key: "AddressChanged"): TypedContractEvent; + getEvent(key: "VersionChanged"): TypedContractEvent; + filters: { + "AddrChanged(bytes32,address)": TypedContractEvent; + AddrChanged: TypedContractEvent; + "AddressChanged(bytes32,uint256,bytes)": TypedContractEvent; + AddressChanged: TypedContractEvent; + "VersionChanged(bytes32,uint64)": TypedContractEvent; + VersionChanged: TypedContractEvent; + }; +} +//# sourceMappingURL=AddrResolver.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver.d.ts.map new file mode 100644 index 00000000..741d87c7 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"AddrResolver.d.ts","sourceRoot":"","sources":["../../../../../../../types/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver.js b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver.d.ts new file mode 100644 index 00000000..e584681d --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver.d.ts @@ -0,0 +1,88 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; +export interface ContentHashResolverInterface extends Interface { + getFunction(nameOrSignature: "clearRecords" | "contenthash" | "recordVersions" | "setContenthash" | "supportsInterface"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "ContenthashChanged" | "VersionChanged"): EventFragment; + encodeFunctionData(functionFragment: "clearRecords", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "contenthash", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "recordVersions", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "setContenthash", values: [BytesLike, BytesLike]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + decodeFunctionResult(functionFragment: "clearRecords", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "contenthash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "recordVersions", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setContenthash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; +} +export declare namespace ContenthashChangedEvent { + type InputTuple = [node: BytesLike, hash: BytesLike]; + type OutputTuple = [node: string, hash: string]; + interface OutputObject { + node: string; + hash: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace VersionChangedEvent { + type InputTuple = [node: BytesLike, newVersion: BigNumberish]; + type OutputTuple = [node: string, newVersion: bigint]; + interface OutputObject { + node: string; + newVersion: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface ContentHashResolver extends BaseContract { + connect(runner?: ContractRunner | null): ContentHashResolver; + waitForDeployment(): Promise; + interface: ContentHashResolverInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + clearRecords: TypedContractMethod<[node: BytesLike], [void], "nonpayable">; + contenthash: TypedContractMethod<[node: BytesLike], [string], "view">; + recordVersions: TypedContractMethod<[arg0: BytesLike], [bigint], "view">; + setContenthash: TypedContractMethod<[ + node: BytesLike, + hash: BytesLike + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceID: BytesLike + ], [ + boolean + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "clearRecords"): TypedContractMethod<[node: BytesLike], [void], "nonpayable">; + getFunction(nameOrSignature: "contenthash"): TypedContractMethod<[node: BytesLike], [string], "view">; + getFunction(nameOrSignature: "recordVersions"): TypedContractMethod<[arg0: BytesLike], [bigint], "view">; + getFunction(nameOrSignature: "setContenthash"): TypedContractMethod<[ + node: BytesLike, + hash: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceID: BytesLike], [boolean], "view">; + getEvent(key: "ContenthashChanged"): TypedContractEvent; + getEvent(key: "VersionChanged"): TypedContractEvent; + filters: { + "ContenthashChanged(bytes32,bytes)": TypedContractEvent; + ContenthashChanged: TypedContractEvent; + "VersionChanged(bytes32,uint64)": TypedContractEvent; + VersionChanged: TypedContractEvent; + }; +} +//# sourceMappingURL=ContentHashResolver.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver.d.ts.map new file mode 100644 index 00000000..7356edb0 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ContentHashResolver.d.ts","sourceRoot":"","sources":["../../../../../../../types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver.js b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver.d.ts new file mode 100644 index 00000000..657f5f6f --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver.d.ts @@ -0,0 +1,183 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; +export interface DNSResolverInterface extends Interface { + getFunction(nameOrSignature: "clearRecords" | "dnsRecord" | "hasDNSRecords" | "recordVersions" | "setDNSRecords" | "setZonehash" | "supportsInterface" | "zonehash"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "DNSRecordChanged" | "DNSRecordDeleted" | "DNSZonehashChanged" | "VersionChanged"): EventFragment; + encodeFunctionData(functionFragment: "clearRecords", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "dnsRecord", values: [BytesLike, BytesLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "hasDNSRecords", values: [BytesLike, BytesLike]): string; + encodeFunctionData(functionFragment: "recordVersions", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "setDNSRecords", values: [BytesLike, BytesLike]): string; + encodeFunctionData(functionFragment: "setZonehash", values: [BytesLike, BytesLike]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "zonehash", values: [BytesLike]): string; + decodeFunctionResult(functionFragment: "clearRecords", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "dnsRecord", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "hasDNSRecords", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "recordVersions", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setDNSRecords", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setZonehash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "zonehash", data: BytesLike): Result; +} +export declare namespace DNSRecordChangedEvent { + type InputTuple = [ + node: BytesLike, + name: BytesLike, + resource: BigNumberish, + record: BytesLike + ]; + type OutputTuple = [ + node: string, + name: string, + resource: bigint, + record: string + ]; + interface OutputObject { + node: string; + name: string; + resource: bigint; + record: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace DNSRecordDeletedEvent { + type InputTuple = [ + node: BytesLike, + name: BytesLike, + resource: BigNumberish + ]; + type OutputTuple = [node: string, name: string, resource: bigint]; + interface OutputObject { + node: string; + name: string; + resource: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace DNSZonehashChangedEvent { + type InputTuple = [ + node: BytesLike, + lastzonehash: BytesLike, + zonehash: BytesLike + ]; + type OutputTuple = [ + node: string, + lastzonehash: string, + zonehash: string + ]; + interface OutputObject { + node: string; + lastzonehash: string; + zonehash: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace VersionChangedEvent { + type InputTuple = [node: BytesLike, newVersion: BigNumberish]; + type OutputTuple = [node: string, newVersion: bigint]; + interface OutputObject { + node: string; + newVersion: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface DNSResolver extends BaseContract { + connect(runner?: ContractRunner | null): DNSResolver; + waitForDeployment(): Promise; + interface: DNSResolverInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + clearRecords: TypedContractMethod<[node: BytesLike], [void], "nonpayable">; + dnsRecord: TypedContractMethod<[ + node: BytesLike, + name: BytesLike, + resource: BigNumberish + ], [ + string + ], "view">; + hasDNSRecords: TypedContractMethod<[ + node: BytesLike, + name: BytesLike + ], [ + boolean + ], "view">; + recordVersions: TypedContractMethod<[arg0: BytesLike], [bigint], "view">; + setDNSRecords: TypedContractMethod<[ + node: BytesLike, + data: BytesLike + ], [ + void + ], "nonpayable">; + setZonehash: TypedContractMethod<[ + node: BytesLike, + hash: BytesLike + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceID: BytesLike + ], [ + boolean + ], "view">; + zonehash: TypedContractMethod<[node: BytesLike], [string], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "clearRecords"): TypedContractMethod<[node: BytesLike], [void], "nonpayable">; + getFunction(nameOrSignature: "dnsRecord"): TypedContractMethod<[ + node: BytesLike, + name: BytesLike, + resource: BigNumberish + ], [ + string + ], "view">; + getFunction(nameOrSignature: "hasDNSRecords"): TypedContractMethod<[node: BytesLike, name: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "recordVersions"): TypedContractMethod<[arg0: BytesLike], [bigint], "view">; + getFunction(nameOrSignature: "setDNSRecords"): TypedContractMethod<[ + node: BytesLike, + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setZonehash"): TypedContractMethod<[ + node: BytesLike, + hash: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceID: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "zonehash"): TypedContractMethod<[node: BytesLike], [string], "view">; + getEvent(key: "DNSRecordChanged"): TypedContractEvent; + getEvent(key: "DNSRecordDeleted"): TypedContractEvent; + getEvent(key: "DNSZonehashChanged"): TypedContractEvent; + getEvent(key: "VersionChanged"): TypedContractEvent; + filters: { + "DNSRecordChanged(bytes32,bytes,uint16,bytes)": TypedContractEvent; + DNSRecordChanged: TypedContractEvent; + "DNSRecordDeleted(bytes32,bytes,uint16)": TypedContractEvent; + DNSRecordDeleted: TypedContractEvent; + "DNSZonehashChanged(bytes32,bytes,bytes)": TypedContractEvent; + DNSZonehashChanged: TypedContractEvent; + "VersionChanged(bytes32,uint64)": TypedContractEvent; + VersionChanged: TypedContractEvent; + }; +} +//# sourceMappingURL=DNSResolver.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver.d.ts.map new file mode 100644 index 00000000..18694263 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"DNSResolver.d.ts","sourceRoot":"","sources":["../../../../../../../types/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver.js b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver.d.ts new file mode 100644 index 00000000..57394f76 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver.d.ts @@ -0,0 +1,53 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; +export interface IABIResolverInterface extends Interface { + getFunction(nameOrSignature: "ABI"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "ABIChanged"): EventFragment; + encodeFunctionData(functionFragment: "ABI", values: [BytesLike, BigNumberish]): string; + decodeFunctionResult(functionFragment: "ABI", data: BytesLike): Result; +} +export declare namespace ABIChangedEvent { + type InputTuple = [node: BytesLike, contentType: BigNumberish]; + type OutputTuple = [node: string, contentType: bigint]; + interface OutputObject { + node: string; + contentType: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface IABIResolver extends BaseContract { + connect(runner?: ContractRunner | null): IABIResolver; + waitForDeployment(): Promise; + interface: IABIResolverInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + ABI: TypedContractMethod<[ + node: BytesLike, + contentTypes: BigNumberish + ], [ + [bigint, string] + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "ABI"): TypedContractMethod<[ + node: BytesLike, + contentTypes: BigNumberish + ], [ + [bigint, string] + ], "view">; + getEvent(key: "ABIChanged"): TypedContractEvent; + filters: { + "ABIChanged(bytes32,uint256)": TypedContractEvent; + ABIChanged: TypedContractEvent; + }; +} +//# sourceMappingURL=IABIResolver.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver.d.ts.map new file mode 100644 index 00000000..6d865056 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IABIResolver.d.ts","sourceRoot":"","sources":["../../../../../../../types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,aAAa,EACb,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,mBAAmB,EACnB,aAAa,EACb,mBAAmB,EACpB,MAAM,uBAAuB,CAAC;AAE/B,MAAM,WAAW,qBAAsB,SAAQ,SAAS;IACtD,WAAW,CAAC,eAAe,EAAE,KAAK,GAAG,gBAAgB,CAAC;IAEtD,QAAQ,CAAC,sBAAsB,EAAE,YAAY,GAAG,aAAa,CAAC;IAE9D,kBAAkB,CAChB,gBAAgB,EAAE,KAAK,EACvB,MAAM,EAAE,CAAC,SAAS,EAAE,YAAY,CAAC,GAChC,MAAM,CAAC;IAEV,oBAAoB,CAAC,gBAAgB,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;CACxE;AAED,yBAAiB,eAAe,CAAC;IAC/B,KAAY,UAAU,GAAG,CAAC,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IACtE,KAAY,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC;IAC9D,UAAiB,YAAY;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,EAAE,MAAM,CAAC;KACrB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,MAAM,WAAW,YAAa,SAAQ,YAAY;IAChD,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,YAAY,CAAC;IACtD,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,qBAAqB,CAAC;IAEjC,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,GAAG,EAAE,mBAAmB,CACtB;QAAC,IAAI,EAAE,SAAS;QAAE,YAAY,EAAE,YAAY;KAAC,EAC7C;QAAC,CAAC,MAAM,EAAE,MAAM,CAAC;KAAC,EAClB,MAAM,CACP,CAAC;IAEF,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,WAAW,CACT,eAAe,EAAE,KAAK,GACrB,mBAAmB,CACpB;QAAC,IAAI,EAAE,SAAS;QAAE,YAAY,EAAE,YAAY;KAAC,EAC7C;QAAC,CAAC,MAAM,EAAE,MAAM,CAAC;KAAC,EAClB,MAAM,CACP,CAAC;IAEF,QAAQ,CACN,GAAG,EAAE,YAAY,GAChB,kBAAkB,CACnB,eAAe,CAAC,UAAU,EAC1B,eAAe,CAAC,WAAW,EAC3B,eAAe,CAAC,YAAY,CAC7B,CAAC;IAEF,OAAO,EAAE;QACP,6BAA6B,EAAE,kBAAkB,CAC/C,eAAe,CAAC,UAAU,EAC1B,eAAe,CAAC,WAAW,EAC3B,eAAe,CAAC,YAAY,CAC7B,CAAC;QACF,UAAU,EAAE,kBAAkB,CAC5B,eAAe,CAAC,UAAU,EAC1B,eAAe,CAAC,WAAW,EAC3B,eAAe,CAAC,YAAY,CAC7B,CAAC;KACH,CAAC;CACH"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver.js b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver.d.ts new file mode 100644 index 00000000..30b112d0 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver.d.ts @@ -0,0 +1,43 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; +export interface IAddrResolverInterface extends Interface { + getFunction(nameOrSignature: "addr"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "AddrChanged"): EventFragment; + encodeFunctionData(functionFragment: "addr", values: [BytesLike]): string; + decodeFunctionResult(functionFragment: "addr", data: BytesLike): Result; +} +export declare namespace AddrChangedEvent { + type InputTuple = [node: BytesLike, a: AddressLike]; + type OutputTuple = [node: string, a: string]; + interface OutputObject { + node: string; + a: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface IAddrResolver extends BaseContract { + connect(runner?: ContractRunner | null): IAddrResolver; + waitForDeployment(): Promise; + interface: IAddrResolverInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + addr: TypedContractMethod<[node: BytesLike], [string], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "addr"): TypedContractMethod<[node: BytesLike], [string], "view">; + getEvent(key: "AddrChanged"): TypedContractEvent; + filters: { + "AddrChanged(bytes32,address)": TypedContractEvent; + AddrChanged: TypedContractEvent; + }; +} +//# sourceMappingURL=IAddrResolver.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver.d.ts.map new file mode 100644 index 00000000..a7b9084d --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IAddrResolver.d.ts","sourceRoot":"","sources":["../../../../../../../types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver.js b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver.d.ts new file mode 100644 index 00000000..218555af --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver.d.ts @@ -0,0 +1,62 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; +export interface IAddressResolverInterface extends Interface { + getFunction(nameOrSignature: "addr"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "AddressChanged"): EventFragment; + encodeFunctionData(functionFragment: "addr", values: [BytesLike, BigNumberish]): string; + decodeFunctionResult(functionFragment: "addr", data: BytesLike): Result; +} +export declare namespace AddressChangedEvent { + type InputTuple = [ + node: BytesLike, + coinType: BigNumberish, + newAddress: BytesLike + ]; + type OutputTuple = [ + node: string, + coinType: bigint, + newAddress: string + ]; + interface OutputObject { + node: string; + coinType: bigint; + newAddress: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface IAddressResolver extends BaseContract { + connect(runner?: ContractRunner | null): IAddressResolver; + waitForDeployment(): Promise; + interface: IAddressResolverInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + addr: TypedContractMethod<[ + node: BytesLike, + coinType: BigNumberish + ], [ + string + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "addr"): TypedContractMethod<[ + node: BytesLike, + coinType: BigNumberish + ], [ + string + ], "view">; + getEvent(key: "AddressChanged"): TypedContractEvent; + filters: { + "AddressChanged(bytes32,uint256,bytes)": TypedContractEvent; + AddressChanged: TypedContractEvent; + }; +} +//# sourceMappingURL=IAddressResolver.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver.d.ts.map new file mode 100644 index 00000000..4a0a288f --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IAddressResolver.d.ts","sourceRoot":"","sources":["../../../../../../../types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver.js b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver.d.ts new file mode 100644 index 00000000..78a7af9e --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver.d.ts @@ -0,0 +1,43 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, EventFragment, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; +export interface IContentHashResolverInterface extends Interface { + getFunction(nameOrSignature: "contenthash"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "ContenthashChanged"): EventFragment; + encodeFunctionData(functionFragment: "contenthash", values: [BytesLike]): string; + decodeFunctionResult(functionFragment: "contenthash", data: BytesLike): Result; +} +export declare namespace ContenthashChangedEvent { + type InputTuple = [node: BytesLike, hash: BytesLike]; + type OutputTuple = [node: string, hash: string]; + interface OutputObject { + node: string; + hash: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface IContentHashResolver extends BaseContract { + connect(runner?: ContractRunner | null): IContentHashResolver; + waitForDeployment(): Promise; + interface: IContentHashResolverInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + contenthash: TypedContractMethod<[node: BytesLike], [string], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "contenthash"): TypedContractMethod<[node: BytesLike], [string], "view">; + getEvent(key: "ContenthashChanged"): TypedContractEvent; + filters: { + "ContenthashChanged(bytes32,bytes)": TypedContractEvent; + ContenthashChanged: TypedContractEvent; + }; +} +//# sourceMappingURL=IContentHashResolver.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver.d.ts.map new file mode 100644 index 00000000..571129f7 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IContentHashResolver.d.ts","sourceRoot":"","sources":["../../../../../../../types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver.js b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver.d.ts new file mode 100644 index 00000000..06d2cbe9 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver.d.ts @@ -0,0 +1,87 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; +export interface IDNSRecordResolverInterface extends Interface { + getFunction(nameOrSignature: "dnsRecord"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "DNSRecordChanged" | "DNSRecordDeleted"): EventFragment; + encodeFunctionData(functionFragment: "dnsRecord", values: [BytesLike, BytesLike, BigNumberish]): string; + decodeFunctionResult(functionFragment: "dnsRecord", data: BytesLike): Result; +} +export declare namespace DNSRecordChangedEvent { + type InputTuple = [ + node: BytesLike, + name: BytesLike, + resource: BigNumberish, + record: BytesLike + ]; + type OutputTuple = [ + node: string, + name: string, + resource: bigint, + record: string + ]; + interface OutputObject { + node: string; + name: string; + resource: bigint; + record: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace DNSRecordDeletedEvent { + type InputTuple = [ + node: BytesLike, + name: BytesLike, + resource: BigNumberish + ]; + type OutputTuple = [node: string, name: string, resource: bigint]; + interface OutputObject { + node: string; + name: string; + resource: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface IDNSRecordResolver extends BaseContract { + connect(runner?: ContractRunner | null): IDNSRecordResolver; + waitForDeployment(): Promise; + interface: IDNSRecordResolverInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + dnsRecord: TypedContractMethod<[ + node: BytesLike, + name: BytesLike, + resource: BigNumberish + ], [ + string + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "dnsRecord"): TypedContractMethod<[ + node: BytesLike, + name: BytesLike, + resource: BigNumberish + ], [ + string + ], "view">; + getEvent(key: "DNSRecordChanged"): TypedContractEvent; + getEvent(key: "DNSRecordDeleted"): TypedContractEvent; + filters: { + "DNSRecordChanged(bytes32,bytes,uint16,bytes)": TypedContractEvent; + DNSRecordChanged: TypedContractEvent; + "DNSRecordDeleted(bytes32,bytes,uint16)": TypedContractEvent; + DNSRecordDeleted: TypedContractEvent; + }; +} +//# sourceMappingURL=IDNSRecordResolver.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver.d.ts.map new file mode 100644 index 00000000..c154a8e2 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IDNSRecordResolver.d.ts","sourceRoot":"","sources":["../../../../../../../types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,aAAa,EACb,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,mBAAmB,EACnB,aAAa,EACb,mBAAmB,EACpB,MAAM,uBAAuB,CAAC;AAE/B,MAAM,WAAW,2BAA4B,SAAQ,SAAS;IAC5D,WAAW,CAAC,eAAe,EAAE,WAAW,GAAG,gBAAgB,CAAC;IAE5D,QAAQ,CACN,sBAAsB,EAAE,kBAAkB,GAAG,kBAAkB,GAC9D,aAAa,CAAC;IAEjB,kBAAkB,CAChB,gBAAgB,EAAE,WAAW,EAC7B,MAAM,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,YAAY,CAAC,GAC3C,MAAM,CAAC;IAEV,oBAAoB,CAAC,gBAAgB,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;CAC9E;AAED,yBAAiB,qBAAqB,CAAC;IACrC,KAAY,UAAU,GAAG;QACvB,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,SAAS;QACf,QAAQ,EAAE,YAAY;QACtB,MAAM,EAAE,SAAS;KAClB,CAAC;IACF,KAAY,WAAW,GAAG;QACxB,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,MAAM;QAChB,MAAM,EAAE,MAAM;KACf,CAAC;IACF,UAAiB,YAAY;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,MAAM,CAAC;KAChB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,qBAAqB,CAAC;IACrC,KAAY,UAAU,GAAG;QACvB,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,SAAS;QACf,QAAQ,EAAE,YAAY;KACvB,CAAC;IACF,KAAY,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;IACzE,UAAiB,YAAY;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;KAClB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,MAAM,WAAW,kBAAmB,SAAQ,YAAY;IACtD,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,kBAAkB,CAAC;IAC5D,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,2BAA2B,CAAC;IAEvC,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,EAAE,mBAAmB,CAC5B;QAAC,IAAI,EAAE,SAAS;QAAE,IAAI,EAAE,SAAS;QAAE,QAAQ,EAAE,YAAY;KAAC,EAC1D;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IAEF,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,WAAW,CACT,eAAe,EAAE,WAAW,GAC3B,mBAAmB,CACpB;QAAC,IAAI,EAAE,SAAS;QAAE,IAAI,EAAE,SAAS;QAAE,QAAQ,EAAE,YAAY;KAAC,EAC1D;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IAEF,QAAQ,CACN,GAAG,EAAE,kBAAkB,GACtB,kBAAkB,CACnB,qBAAqB,CAAC,UAAU,EAChC,qBAAqB,CAAC,WAAW,EACjC,qBAAqB,CAAC,YAAY,CACnC,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,kBAAkB,GACtB,kBAAkB,CACnB,qBAAqB,CAAC,UAAU,EAChC,qBAAqB,CAAC,WAAW,EACjC,qBAAqB,CAAC,YAAY,CACnC,CAAC;IAEF,OAAO,EAAE;QACP,8CAA8C,EAAE,kBAAkB,CAChE,qBAAqB,CAAC,UAAU,EAChC,qBAAqB,CAAC,WAAW,EACjC,qBAAqB,CAAC,YAAY,CACnC,CAAC;QACF,gBAAgB,EAAE,kBAAkB,CAClC,qBAAqB,CAAC,UAAU,EAChC,qBAAqB,CAAC,WAAW,EACjC,qBAAqB,CAAC,YAAY,CACnC,CAAC;QAEF,wCAAwC,EAAE,kBAAkB,CAC1D,qBAAqB,CAAC,UAAU,EAChC,qBAAqB,CAAC,WAAW,EACjC,qBAAqB,CAAC,YAAY,CACnC,CAAC;QACF,gBAAgB,EAAE,kBAAkB,CAClC,qBAAqB,CAAC,UAAU,EAChC,qBAAqB,CAAC,WAAW,EACjC,qBAAqB,CAAC,YAAY,CACnC,CAAC;KACH,CAAC;CACH"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver.js b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver.d.ts new file mode 100644 index 00000000..a7befdbd --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver.d.ts @@ -0,0 +1,52 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, EventFragment, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; +export interface IDNSZoneResolverInterface extends Interface { + getFunction(nameOrSignature: "zonehash"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "DNSZonehashChanged"): EventFragment; + encodeFunctionData(functionFragment: "zonehash", values: [BytesLike]): string; + decodeFunctionResult(functionFragment: "zonehash", data: BytesLike): Result; +} +export declare namespace DNSZonehashChangedEvent { + type InputTuple = [ + node: BytesLike, + lastzonehash: BytesLike, + zonehash: BytesLike + ]; + type OutputTuple = [ + node: string, + lastzonehash: string, + zonehash: string + ]; + interface OutputObject { + node: string; + lastzonehash: string; + zonehash: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface IDNSZoneResolver extends BaseContract { + connect(runner?: ContractRunner | null): IDNSZoneResolver; + waitForDeployment(): Promise; + interface: IDNSZoneResolverInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + zonehash: TypedContractMethod<[node: BytesLike], [string], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "zonehash"): TypedContractMethod<[node: BytesLike], [string], "view">; + getEvent(key: "DNSZonehashChanged"): TypedContractEvent; + filters: { + "DNSZonehashChanged(bytes32,bytes,bytes)": TypedContractEvent; + DNSZonehashChanged: TypedContractEvent; + }; +} +//# sourceMappingURL=IDNSZoneResolver.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver.d.ts.map new file mode 100644 index 00000000..12f6d822 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IDNSZoneResolver.d.ts","sourceRoot":"","sources":["../../../../../../../types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver.js b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver.d.ts new file mode 100644 index 00000000..675ea730 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver.d.ts @@ -0,0 +1,31 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../../common"; +export interface IExtendedResolverInterface extends Interface { + getFunction(nameOrSignature: "resolve"): FunctionFragment; + encodeFunctionData(functionFragment: "resolve", values: [BytesLike, BytesLike]): string; + decodeFunctionResult(functionFragment: "resolve", data: BytesLike): Result; +} +export interface IExtendedResolver extends BaseContract { + connect(runner?: ContractRunner | null): IExtendedResolver; + waitForDeployment(): Promise; + interface: IExtendedResolverInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + resolve: TypedContractMethod<[ + name: BytesLike, + data: BytesLike + ], [ + string + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "resolve"): TypedContractMethod<[name: BytesLike, data: BytesLike], [string], "view">; + filters: {}; +} +//# sourceMappingURL=IExtendedResolver.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver.d.ts.map new file mode 100644 index 00000000..9ea0cf27 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IExtendedResolver.d.ts","sourceRoot":"","sources":["../../../../../../../types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver.js b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver.d.ts new file mode 100644 index 00000000..2275b81d --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver.d.ts @@ -0,0 +1,62 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; +export interface IInterfaceResolverInterface extends Interface { + getFunction(nameOrSignature: "interfaceImplementer"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "InterfaceChanged"): EventFragment; + encodeFunctionData(functionFragment: "interfaceImplementer", values: [BytesLike, BytesLike]): string; + decodeFunctionResult(functionFragment: "interfaceImplementer", data: BytesLike): Result; +} +export declare namespace InterfaceChangedEvent { + type InputTuple = [ + node: BytesLike, + interfaceID: BytesLike, + implementer: AddressLike + ]; + type OutputTuple = [ + node: string, + interfaceID: string, + implementer: string + ]; + interface OutputObject { + node: string; + interfaceID: string; + implementer: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface IInterfaceResolver extends BaseContract { + connect(runner?: ContractRunner | null): IInterfaceResolver; + waitForDeployment(): Promise; + interface: IInterfaceResolverInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + interfaceImplementer: TypedContractMethod<[ + node: BytesLike, + interfaceID: BytesLike + ], [ + string + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "interfaceImplementer"): TypedContractMethod<[ + node: BytesLike, + interfaceID: BytesLike + ], [ + string + ], "view">; + getEvent(key: "InterfaceChanged"): TypedContractEvent; + filters: { + "InterfaceChanged(bytes32,bytes4,address)": TypedContractEvent; + InterfaceChanged: TypedContractEvent; + }; +} +//# sourceMappingURL=IInterfaceResolver.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver.d.ts.map new file mode 100644 index 00000000..9515bf2e --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IInterfaceResolver.d.ts","sourceRoot":"","sources":["../../../../../../../types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver.js b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver.d.ts new file mode 100644 index 00000000..98345c22 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver.d.ts @@ -0,0 +1,43 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, EventFragment, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; +export interface INameResolverInterface extends Interface { + getFunction(nameOrSignature: "name"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "NameChanged"): EventFragment; + encodeFunctionData(functionFragment: "name", values: [BytesLike]): string; + decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; +} +export declare namespace NameChangedEvent { + type InputTuple = [node: BytesLike, name: string]; + type OutputTuple = [node: string, name: string]; + interface OutputObject { + node: string; + name: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface INameResolver extends BaseContract { + connect(runner?: ContractRunner | null): INameResolver; + waitForDeployment(): Promise; + interface: INameResolverInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + name: TypedContractMethod<[node: BytesLike], [string], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "name"): TypedContractMethod<[node: BytesLike], [string], "view">; + getEvent(key: "NameChanged"): TypedContractEvent; + filters: { + "NameChanged(bytes32,string)": TypedContractEvent; + NameChanged: TypedContractEvent; + }; +} +//# sourceMappingURL=INameResolver.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver.d.ts.map new file mode 100644 index 00000000..148390ec --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"INameResolver.d.ts","sourceRoot":"","sources":["../../../../../../../types/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver.js b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver.d.ts new file mode 100644 index 00000000..036c3973 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver.d.ts @@ -0,0 +1,58 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, EventFragment, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; +export interface IPubkeyResolverInterface extends Interface { + getFunction(nameOrSignature: "pubkey"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "PubkeyChanged"): EventFragment; + encodeFunctionData(functionFragment: "pubkey", values: [BytesLike]): string; + decodeFunctionResult(functionFragment: "pubkey", data: BytesLike): Result; +} +export declare namespace PubkeyChangedEvent { + type InputTuple = [node: BytesLike, x: BytesLike, y: BytesLike]; + type OutputTuple = [node: string, x: string, y: string]; + interface OutputObject { + node: string; + x: string; + y: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface IPubkeyResolver extends BaseContract { + connect(runner?: ContractRunner | null): IPubkeyResolver; + waitForDeployment(): Promise; + interface: IPubkeyResolverInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + pubkey: TypedContractMethod<[ + node: BytesLike + ], [ + [string, string] & { + x: string; + y: string; + } + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "pubkey"): TypedContractMethod<[ + node: BytesLike + ], [ + [string, string] & { + x: string; + y: string; + } + ], "view">; + getEvent(key: "PubkeyChanged"): TypedContractEvent; + filters: { + "PubkeyChanged(bytes32,bytes32,bytes32)": TypedContractEvent; + PubkeyChanged: TypedContractEvent; + }; +} +//# sourceMappingURL=IPubkeyResolver.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver.d.ts.map new file mode 100644 index 00000000..3086f5b8 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IPubkeyResolver.d.ts","sourceRoot":"","sources":["../../../../../../../types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,aAAa,EACb,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,mBAAmB,EACnB,aAAa,EACb,mBAAmB,EACpB,MAAM,uBAAuB,CAAC;AAE/B,MAAM,WAAW,wBAAyB,SAAQ,SAAS;IACzD,WAAW,CAAC,eAAe,EAAE,QAAQ,GAAG,gBAAgB,CAAC;IAEzD,QAAQ,CAAC,sBAAsB,EAAE,eAAe,GAAG,aAAa,CAAC;IAEjE,kBAAkB,CAAC,gBAAgB,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC;IAE5E,oBAAoB,CAAC,gBAAgB,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;CAC3E;AAED,yBAAiB,kBAAkB,CAAC;IAClC,KAAY,UAAU,GAAG,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,CAAC,CAAC;IACvE,KAAY,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;IAC/D,UAAiB,YAAY;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;KACX;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,MAAM,WAAW,eAAgB,SAAQ,YAAY;IACnD,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,eAAe,CAAC;IACzD,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,wBAAwB,CAAC;IAEpC,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,MAAM,EAAE,mBAAmB,CACzB;QAAC,IAAI,EAAE,SAAS;KAAC,EACjB;QAAC,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG;YAAE,CAAC,EAAE,MAAM,CAAC;YAAC,CAAC,EAAE,MAAM,CAAA;SAAE;KAAC,EAC7C,MAAM,CACP,CAAC;IAEF,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,WAAW,CACT,eAAe,EAAE,QAAQ,GACxB,mBAAmB,CACpB;QAAC,IAAI,EAAE,SAAS;KAAC,EACjB;QAAC,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG;YAAE,CAAC,EAAE,MAAM,CAAC;YAAC,CAAC,EAAE,MAAM,CAAA;SAAE;KAAC,EAC7C,MAAM,CACP,CAAC;IAEF,QAAQ,CACN,GAAG,EAAE,eAAe,GACnB,kBAAkB,CACnB,kBAAkB,CAAC,UAAU,EAC7B,kBAAkB,CAAC,WAAW,EAC9B,kBAAkB,CAAC,YAAY,CAChC,CAAC;IAEF,OAAO,EAAE;QACP,wCAAwC,EAAE,kBAAkB,CAC1D,kBAAkB,CAAC,UAAU,EAC7B,kBAAkB,CAAC,WAAW,EAC9B,kBAAkB,CAAC,YAAY,CAChC,CAAC;QACF,aAAa,EAAE,kBAAkB,CAC/B,kBAAkB,CAAC,UAAU,EAC7B,kBAAkB,CAAC,WAAW,EAC9B,kBAAkB,CAAC,YAAY,CAChC,CAAC;KACH,CAAC;CACH"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver.js b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver.d.ts new file mode 100644 index 00000000..4c921a79 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver.d.ts @@ -0,0 +1,55 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, EventFragment, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; +export interface ITextResolverInterface extends Interface { + getFunction(nameOrSignature: "text"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "TextChanged"): EventFragment; + encodeFunctionData(functionFragment: "text", values: [BytesLike, string]): string; + decodeFunctionResult(functionFragment: "text", data: BytesLike): Result; +} +export declare namespace TextChangedEvent { + type InputTuple = [ + node: BytesLike, + indexedKey: string, + key: string, + value: string + ]; + type OutputTuple = [ + node: string, + indexedKey: string, + key: string, + value: string + ]; + interface OutputObject { + node: string; + indexedKey: string; + key: string; + value: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface ITextResolver extends BaseContract { + connect(runner?: ContractRunner | null): ITextResolver; + waitForDeployment(): Promise; + interface: ITextResolverInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + text: TypedContractMethod<[node: BytesLike, key: string], [string], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "text"): TypedContractMethod<[node: BytesLike, key: string], [string], "view">; + getEvent(key: "TextChanged"): TypedContractEvent; + filters: { + "TextChanged(bytes32,string,string,string)": TypedContractEvent; + TextChanged: TypedContractEvent; + }; +} +//# sourceMappingURL=ITextResolver.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver.d.ts.map new file mode 100644 index 00000000..e5675ad4 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ITextResolver.d.ts","sourceRoot":"","sources":["../../../../../../../types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,aAAa,EACb,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,mBAAmB,EACnB,aAAa,EACb,mBAAmB,EACpB,MAAM,uBAAuB,CAAC;AAE/B,MAAM,WAAW,sBAAuB,SAAQ,SAAS;IACvD,WAAW,CAAC,eAAe,EAAE,MAAM,GAAG,gBAAgB,CAAC;IAEvD,QAAQ,CAAC,sBAAsB,EAAE,aAAa,GAAG,aAAa,CAAC;IAE/D,kBAAkB,CAChB,gBAAgB,EAAE,MAAM,EACxB,MAAM,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC,GAC1B,MAAM,CAAC;IAEV,oBAAoB,CAAC,gBAAgB,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;CACzE;AAED,yBAAiB,gBAAgB,CAAC;IAChC,KAAY,UAAU,GAAG;QACvB,IAAI,EAAE,SAAS;QACf,UAAU,EAAE,MAAM;QAClB,GAAG,EAAE,MAAM;QACX,KAAK,EAAE,MAAM;KACd,CAAC;IACF,KAAY,WAAW,GAAG;QACxB,IAAI,EAAE,MAAM;QACZ,UAAU,EAAE,MAAM;QAClB,GAAG,EAAE,MAAM;QACX,KAAK,EAAE,MAAM;KACd,CAAC;IACF,UAAiB,YAAY;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,UAAU,EAAE,MAAM,CAAC;QACnB,GAAG,EAAE,MAAM,CAAC;QACZ,KAAK,EAAE,MAAM,CAAC;KACf;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,MAAM,WAAW,aAAc,SAAQ,YAAY;IACjD,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,aAAa,CAAC;IACvD,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,sBAAsB,CAAC;IAElC,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAE5E,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,WAAW,CACT,eAAe,EAAE,MAAM,GACtB,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEzE,QAAQ,CACN,GAAG,EAAE,aAAa,GACjB,kBAAkB,CACnB,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;IAEF,OAAO,EAAE;QACP,2CAA2C,EAAE,kBAAkB,CAC7D,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QACF,WAAW,EAAE,kBAAkB,CAC7B,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;KACH,CAAC;CACH"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver.js b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver.d.ts new file mode 100644 index 00000000..af5d59a5 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver.d.ts @@ -0,0 +1,43 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; +export interface IVersionableResolverInterface extends Interface { + getFunction(nameOrSignature: "recordVersions"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "VersionChanged"): EventFragment; + encodeFunctionData(functionFragment: "recordVersions", values: [BytesLike]): string; + decodeFunctionResult(functionFragment: "recordVersions", data: BytesLike): Result; +} +export declare namespace VersionChangedEvent { + type InputTuple = [node: BytesLike, newVersion: BigNumberish]; + type OutputTuple = [node: string, newVersion: bigint]; + interface OutputObject { + node: string; + newVersion: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface IVersionableResolver extends BaseContract { + connect(runner?: ContractRunner | null): IVersionableResolver; + waitForDeployment(): Promise; + interface: IVersionableResolverInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + recordVersions: TypedContractMethod<[node: BytesLike], [bigint], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "recordVersions"): TypedContractMethod<[node: BytesLike], [bigint], "view">; + getEvent(key: "VersionChanged"): TypedContractEvent; + filters: { + "VersionChanged(bytes32,uint64)": TypedContractEvent; + VersionChanged: TypedContractEvent; + }; +} +//# sourceMappingURL=IVersionableResolver.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver.d.ts.map new file mode 100644 index 00000000..36519309 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IVersionableResolver.d.ts","sourceRoot":"","sources":["../../../../../../../types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,aAAa,EACb,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,mBAAmB,EACnB,aAAa,EACb,mBAAmB,EACpB,MAAM,uBAAuB,CAAC;AAE/B,MAAM,WAAW,6BAA8B,SAAQ,SAAS;IAC9D,WAAW,CAAC,eAAe,EAAE,gBAAgB,GAAG,gBAAgB,CAAC;IAEjE,QAAQ,CAAC,sBAAsB,EAAE,gBAAgB,GAAG,aAAa,CAAC;IAElE,kBAAkB,CAChB,gBAAgB,EAAE,gBAAgB,EAClC,MAAM,EAAE,CAAC,SAAS,CAAC,GAClB,MAAM,CAAC;IAEV,oBAAoB,CAClB,gBAAgB,EAAE,gBAAgB,EAClC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;CACX;AAED,yBAAiB,mBAAmB,CAAC;IACnC,KAAY,UAAU,GAAG,CAAC,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,CAAC,CAAC;IACrE,KAAY,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;IAC7D,UAAiB,YAAY;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,UAAU,EAAE,MAAM,CAAC;KACpB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,MAAM,WAAW,oBAAqB,SAAQ,YAAY;IACxD,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,oBAAoB,CAAC;IAC9D,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,6BAA6B,CAAC;IAEzC,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,cAAc,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEzE,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,WAAW,CACT,eAAe,EAAE,gBAAgB,GAChC,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAE5D,QAAQ,CACN,GAAG,EAAE,gBAAgB,GACpB,kBAAkB,CACnB,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;IAEF,OAAO,EAAE;QACP,gCAAgC,EAAE,kBAAkB,CAClD,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;QACF,cAAc,EAAE,kBAAkB,CAChC,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;KACH,CAAC;CACH"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver.js b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver.d.ts new file mode 100644 index 00000000..a3ff5059 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver.d.ts @@ -0,0 +1,196 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; +export interface InterfaceResolverInterface extends Interface { + getFunction(nameOrSignature: "addr(bytes32)" | "addr(bytes32,uint256)" | "clearRecords" | "interfaceImplementer" | "recordVersions" | "setAddr(bytes32,uint256,bytes)" | "setAddr(bytes32,address)" | "setInterface" | "supportsInterface"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "AddrChanged" | "AddressChanged" | "InterfaceChanged" | "VersionChanged"): EventFragment; + encodeFunctionData(functionFragment: "addr(bytes32)", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "addr(bytes32,uint256)", values: [BytesLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "clearRecords", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "interfaceImplementer", values: [BytesLike, BytesLike]): string; + encodeFunctionData(functionFragment: "recordVersions", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "setAddr(bytes32,uint256,bytes)", values: [BytesLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "setAddr(bytes32,address)", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "setInterface", values: [BytesLike, BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + decodeFunctionResult(functionFragment: "addr(bytes32)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "addr(bytes32,uint256)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "clearRecords", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "interfaceImplementer", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "recordVersions", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setAddr(bytes32,uint256,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setAddr(bytes32,address)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; +} +export declare namespace AddrChangedEvent { + type InputTuple = [node: BytesLike, a: AddressLike]; + type OutputTuple = [node: string, a: string]; + interface OutputObject { + node: string; + a: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace AddressChangedEvent { + type InputTuple = [ + node: BytesLike, + coinType: BigNumberish, + newAddress: BytesLike + ]; + type OutputTuple = [ + node: string, + coinType: bigint, + newAddress: string + ]; + interface OutputObject { + node: string; + coinType: bigint; + newAddress: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace InterfaceChangedEvent { + type InputTuple = [ + node: BytesLike, + interfaceID: BytesLike, + implementer: AddressLike + ]; + type OutputTuple = [ + node: string, + interfaceID: string, + implementer: string + ]; + interface OutputObject { + node: string; + interfaceID: string; + implementer: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace VersionChangedEvent { + type InputTuple = [node: BytesLike, newVersion: BigNumberish]; + type OutputTuple = [node: string, newVersion: bigint]; + interface OutputObject { + node: string; + newVersion: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface InterfaceResolver extends BaseContract { + connect(runner?: ContractRunner | null): InterfaceResolver; + waitForDeployment(): Promise; + interface: InterfaceResolverInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + "addr(bytes32)": TypedContractMethod<[node: BytesLike], [string], "view">; + "addr(bytes32,uint256)": TypedContractMethod<[ + node: BytesLike, + coinType: BigNumberish + ], [ + string + ], "view">; + clearRecords: TypedContractMethod<[node: BytesLike], [void], "nonpayable">; + interfaceImplementer: TypedContractMethod<[ + node: BytesLike, + interfaceID: BytesLike + ], [ + string + ], "view">; + recordVersions: TypedContractMethod<[arg0: BytesLike], [bigint], "view">; + "setAddr(bytes32,uint256,bytes)": TypedContractMethod<[ + node: BytesLike, + coinType: BigNumberish, + a: BytesLike + ], [ + void + ], "nonpayable">; + "setAddr(bytes32,address)": TypedContractMethod<[ + node: BytesLike, + a: AddressLike + ], [ + void + ], "nonpayable">; + setInterface: TypedContractMethod<[ + node: BytesLike, + interfaceID: BytesLike, + implementer: AddressLike + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceID: BytesLike + ], [ + boolean + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "addr(bytes32)"): TypedContractMethod<[node: BytesLike], [string], "view">; + getFunction(nameOrSignature: "addr(bytes32,uint256)"): TypedContractMethod<[ + node: BytesLike, + coinType: BigNumberish + ], [ + string + ], "view">; + getFunction(nameOrSignature: "clearRecords"): TypedContractMethod<[node: BytesLike], [void], "nonpayable">; + getFunction(nameOrSignature: "interfaceImplementer"): TypedContractMethod<[ + node: BytesLike, + interfaceID: BytesLike + ], [ + string + ], "view">; + getFunction(nameOrSignature: "recordVersions"): TypedContractMethod<[arg0: BytesLike], [bigint], "view">; + getFunction(nameOrSignature: "setAddr(bytes32,uint256,bytes)"): TypedContractMethod<[ + node: BytesLike, + coinType: BigNumberish, + a: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setAddr(bytes32,address)"): TypedContractMethod<[ + node: BytesLike, + a: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setInterface"): TypedContractMethod<[ + node: BytesLike, + interfaceID: BytesLike, + implementer: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceID: BytesLike], [boolean], "view">; + getEvent(key: "AddrChanged"): TypedContractEvent; + getEvent(key: "AddressChanged"): TypedContractEvent; + getEvent(key: "InterfaceChanged"): TypedContractEvent; + getEvent(key: "VersionChanged"): TypedContractEvent; + filters: { + "AddrChanged(bytes32,address)": TypedContractEvent; + AddrChanged: TypedContractEvent; + "AddressChanged(bytes32,uint256,bytes)": TypedContractEvent; + AddressChanged: TypedContractEvent; + "InterfaceChanged(bytes32,bytes4,address)": TypedContractEvent; + InterfaceChanged: TypedContractEvent; + "VersionChanged(bytes32,uint64)": TypedContractEvent; + VersionChanged: TypedContractEvent; + }; +} +//# sourceMappingURL=InterfaceResolver.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver.d.ts.map new file mode 100644 index 00000000..54a7c0fa --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"InterfaceResolver.d.ts","sourceRoot":"","sources":["../../../../../../../types/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver.js b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver.d.ts new file mode 100644 index 00000000..e9bd1330 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver.d.ts @@ -0,0 +1,88 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; +export interface NameResolverInterface extends Interface { + getFunction(nameOrSignature: "clearRecords" | "name" | "recordVersions" | "setName" | "supportsInterface"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "NameChanged" | "VersionChanged"): EventFragment; + encodeFunctionData(functionFragment: "clearRecords", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "name", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "recordVersions", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "setName", values: [BytesLike, string]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + decodeFunctionResult(functionFragment: "clearRecords", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "recordVersions", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setName", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; +} +export declare namespace NameChangedEvent { + type InputTuple = [node: BytesLike, name: string]; + type OutputTuple = [node: string, name: string]; + interface OutputObject { + node: string; + name: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace VersionChangedEvent { + type InputTuple = [node: BytesLike, newVersion: BigNumberish]; + type OutputTuple = [node: string, newVersion: bigint]; + interface OutputObject { + node: string; + newVersion: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface NameResolver extends BaseContract { + connect(runner?: ContractRunner | null): NameResolver; + waitForDeployment(): Promise; + interface: NameResolverInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + clearRecords: TypedContractMethod<[node: BytesLike], [void], "nonpayable">; + name: TypedContractMethod<[node: BytesLike], [string], "view">; + recordVersions: TypedContractMethod<[arg0: BytesLike], [bigint], "view">; + setName: TypedContractMethod<[ + node: BytesLike, + newName: string + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceID: BytesLike + ], [ + boolean + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "clearRecords"): TypedContractMethod<[node: BytesLike], [void], "nonpayable">; + getFunction(nameOrSignature: "name"): TypedContractMethod<[node: BytesLike], [string], "view">; + getFunction(nameOrSignature: "recordVersions"): TypedContractMethod<[arg0: BytesLike], [bigint], "view">; + getFunction(nameOrSignature: "setName"): TypedContractMethod<[ + node: BytesLike, + newName: string + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceID: BytesLike], [boolean], "view">; + getEvent(key: "NameChanged"): TypedContractEvent; + getEvent(key: "VersionChanged"): TypedContractEvent; + filters: { + "NameChanged(bytes32,string)": TypedContractEvent; + NameChanged: TypedContractEvent; + "VersionChanged(bytes32,uint64)": TypedContractEvent; + VersionChanged: TypedContractEvent; + }; +} +//# sourceMappingURL=NameResolver.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver.d.ts.map new file mode 100644 index 00000000..395bdc0d --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"NameResolver.d.ts","sourceRoot":"","sources":["../../../../../../../types/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,aAAa,EACb,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,mBAAmB,EACnB,aAAa,EACb,mBAAmB,EACpB,MAAM,uBAAuB,CAAC;AAE/B,MAAM,WAAW,qBAAsB,SAAQ,SAAS;IACtD,WAAW,CACT,eAAe,EACX,cAAc,GACd,MAAM,GACN,gBAAgB,GAChB,SAAS,GACT,mBAAmB,GACtB,gBAAgB,CAAC;IAEpB,QAAQ,CACN,sBAAsB,EAAE,aAAa,GAAG,gBAAgB,GACvD,aAAa,CAAC;IAEjB,kBAAkB,CAChB,gBAAgB,EAAE,cAAc,EAChC,MAAM,EAAE,CAAC,SAAS,CAAC,GAClB,MAAM,CAAC;IACV,kBAAkB,CAAC,gBAAgB,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC;IAC1E,kBAAkB,CAChB,gBAAgB,EAAE,gBAAgB,EAClC,MAAM,EAAE,CAAC,SAAS,CAAC,GAClB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,SAAS,EAC3B,MAAM,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC,GAC1B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,mBAAmB,EACrC,MAAM,EAAE,CAAC,SAAS,CAAC,GAClB,MAAM,CAAC;IAEV,oBAAoB,CAClB,gBAAgB,EAAE,cAAc,EAChC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IACxE,oBAAoB,CAClB,gBAAgB,EAAE,gBAAgB,EAClC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,oBAAoB,CAClB,gBAAgB,EAAE,mBAAmB,EACrC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;CACX;AAED,yBAAiB,gBAAgB,CAAC;IAChC,KAAY,UAAU,GAAG,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IACzD,KAAY,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IACvD,UAAiB,YAAY;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;KACd;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,mBAAmB,CAAC;IACnC,KAAY,UAAU,GAAG,CAAC,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,CAAC,CAAC;IACrE,KAAY,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;IAC7D,UAAiB,YAAY;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,UAAU,EAAE,MAAM,CAAC;KACpB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,MAAM,WAAW,YAAa,SAAQ,YAAY;IAChD,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,YAAY,CAAC;IACtD,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,qBAAqB,CAAC;IAEjC,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,YAAY,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IAE3E,IAAI,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAE/D,cAAc,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEzE,OAAO,EAAE,mBAAmB,CAC1B;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,MAAM;KAAC,EAClC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,iBAAiB,EAAE,mBAAmB,CACpC;QAAC,WAAW,EAAE,SAAS;KAAC,EACxB;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,WAAW,CACT,eAAe,EAAE,cAAc,GAC9B,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IAChE,WAAW,CACT,eAAe,EAAE,MAAM,GACtB,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC5D,WAAW,CACT,eAAe,EAAE,gBAAgB,GAChC,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC5D,WAAW,CACT,eAAe,EAAE,SAAS,GACzB,mBAAmB,CACpB;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,MAAM;KAAC,EAClC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,mBAAmB,GACnC,mBAAmB,CAAC,CAAC,WAAW,EAAE,SAAS,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IAEpE,QAAQ,CACN,GAAG,EAAE,aAAa,GACjB,kBAAkB,CACnB,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,gBAAgB,GACpB,kBAAkB,CACnB,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;IAEF,OAAO,EAAE;QACP,6BAA6B,EAAE,kBAAkB,CAC/C,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QACF,WAAW,EAAE,kBAAkB,CAC7B,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QAEF,gCAAgC,EAAE,kBAAkB,CAClD,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;QACF,cAAc,EAAE,kBAAkB,CAChC,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;KACH,CAAC;CACH"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver.js b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver.d.ts new file mode 100644 index 00000000..bae32e7e --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver.d.ts @@ -0,0 +1,105 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; +export interface PubkeyResolverInterface extends Interface { + getFunction(nameOrSignature: "clearRecords" | "pubkey" | "recordVersions" | "setPubkey" | "supportsInterface"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "PubkeyChanged" | "VersionChanged"): EventFragment; + encodeFunctionData(functionFragment: "clearRecords", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "pubkey", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "recordVersions", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "setPubkey", values: [BytesLike, BytesLike, BytesLike]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + decodeFunctionResult(functionFragment: "clearRecords", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "pubkey", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "recordVersions", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setPubkey", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; +} +export declare namespace PubkeyChangedEvent { + type InputTuple = [node: BytesLike, x: BytesLike, y: BytesLike]; + type OutputTuple = [node: string, x: string, y: string]; + interface OutputObject { + node: string; + x: string; + y: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace VersionChangedEvent { + type InputTuple = [node: BytesLike, newVersion: BigNumberish]; + type OutputTuple = [node: string, newVersion: bigint]; + interface OutputObject { + node: string; + newVersion: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface PubkeyResolver extends BaseContract { + connect(runner?: ContractRunner | null): PubkeyResolver; + waitForDeployment(): Promise; + interface: PubkeyResolverInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + clearRecords: TypedContractMethod<[node: BytesLike], [void], "nonpayable">; + pubkey: TypedContractMethod<[ + node: BytesLike + ], [ + [string, string] & { + x: string; + y: string; + } + ], "view">; + recordVersions: TypedContractMethod<[arg0: BytesLike], [bigint], "view">; + setPubkey: TypedContractMethod<[ + node: BytesLike, + x: BytesLike, + y: BytesLike + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceID: BytesLike + ], [ + boolean + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "clearRecords"): TypedContractMethod<[node: BytesLike], [void], "nonpayable">; + getFunction(nameOrSignature: "pubkey"): TypedContractMethod<[ + node: BytesLike + ], [ + [string, string] & { + x: string; + y: string; + } + ], "view">; + getFunction(nameOrSignature: "recordVersions"): TypedContractMethod<[arg0: BytesLike], [bigint], "view">; + getFunction(nameOrSignature: "setPubkey"): TypedContractMethod<[ + node: BytesLike, + x: BytesLike, + y: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceID: BytesLike], [boolean], "view">; + getEvent(key: "PubkeyChanged"): TypedContractEvent; + getEvent(key: "VersionChanged"): TypedContractEvent; + filters: { + "PubkeyChanged(bytes32,bytes32,bytes32)": TypedContractEvent; + PubkeyChanged: TypedContractEvent; + "VersionChanged(bytes32,uint64)": TypedContractEvent; + VersionChanged: TypedContractEvent; + }; +} +//# sourceMappingURL=PubkeyResolver.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver.d.ts.map new file mode 100644 index 00000000..c275db21 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"PubkeyResolver.d.ts","sourceRoot":"","sources":["../../../../../../../types/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver.js b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver.d.ts new file mode 100644 index 00000000..a1819073 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver.d.ts @@ -0,0 +1,102 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; +export interface TextResolverInterface extends Interface { + getFunction(nameOrSignature: "clearRecords" | "recordVersions" | "setText" | "supportsInterface" | "text"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "TextChanged" | "VersionChanged"): EventFragment; + encodeFunctionData(functionFragment: "clearRecords", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "recordVersions", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "setText", values: [BytesLike, string, string]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "text", values: [BytesLike, string]): string; + decodeFunctionResult(functionFragment: "clearRecords", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "recordVersions", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setText", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "text", data: BytesLike): Result; +} +export declare namespace TextChangedEvent { + type InputTuple = [ + node: BytesLike, + indexedKey: string, + key: string, + value: string + ]; + type OutputTuple = [ + node: string, + indexedKey: string, + key: string, + value: string + ]; + interface OutputObject { + node: string; + indexedKey: string; + key: string; + value: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace VersionChangedEvent { + type InputTuple = [node: BytesLike, newVersion: BigNumberish]; + type OutputTuple = [node: string, newVersion: bigint]; + interface OutputObject { + node: string; + newVersion: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface TextResolver extends BaseContract { + connect(runner?: ContractRunner | null): TextResolver; + waitForDeployment(): Promise; + interface: TextResolverInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + clearRecords: TypedContractMethod<[node: BytesLike], [void], "nonpayable">; + recordVersions: TypedContractMethod<[arg0: BytesLike], [bigint], "view">; + setText: TypedContractMethod<[ + node: BytesLike, + key: string, + value: string + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceID: BytesLike + ], [ + boolean + ], "view">; + text: TypedContractMethod<[node: BytesLike, key: string], [string], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "clearRecords"): TypedContractMethod<[node: BytesLike], [void], "nonpayable">; + getFunction(nameOrSignature: "recordVersions"): TypedContractMethod<[arg0: BytesLike], [bigint], "view">; + getFunction(nameOrSignature: "setText"): TypedContractMethod<[ + node: BytesLike, + key: string, + value: string + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceID: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "text"): TypedContractMethod<[node: BytesLike, key: string], [string], "view">; + getEvent(key: "TextChanged"): TypedContractEvent; + getEvent(key: "VersionChanged"): TypedContractEvent; + filters: { + "TextChanged(bytes32,string,string,string)": TypedContractEvent; + TextChanged: TypedContractEvent; + "VersionChanged(bytes32,uint64)": TypedContractEvent; + VersionChanged: TypedContractEvent; + }; +} +//# sourceMappingURL=TextResolver.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver.d.ts.map new file mode 100644 index 00000000..bda6a2e6 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"TextResolver.d.ts","sourceRoot":"","sources":["../../../../../../../types/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver.js b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/index.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/index.d.ts new file mode 100644 index 00000000..bebb21e7 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/index.d.ts @@ -0,0 +1,21 @@ +export type { ABIResolver } from "./ABIResolver"; +export type { AddrResolver } from "./AddrResolver"; +export type { ContentHashResolver } from "./ContentHashResolver"; +export type { DNSResolver } from "./DNSResolver"; +export type { IABIResolver } from "./IABIResolver"; +export type { IAddrResolver } from "./IAddrResolver"; +export type { IAddressResolver } from "./IAddressResolver"; +export type { IContentHashResolver } from "./IContentHashResolver"; +export type { IDNSRecordResolver } from "./IDNSRecordResolver"; +export type { IDNSZoneResolver } from "./IDNSZoneResolver"; +export type { IExtendedResolver } from "./IExtendedResolver"; +export type { IInterfaceResolver } from "./IInterfaceResolver"; +export type { INameResolver } from "./INameResolver"; +export type { IPubkeyResolver } from "./IPubkeyResolver"; +export type { ITextResolver } from "./ITextResolver"; +export type { IVersionableResolver } from "./IVersionableResolver"; +export type { InterfaceResolver } from "./InterfaceResolver"; +export type { NameResolver } from "./NameResolver"; +export type { PubkeyResolver } from "./PubkeyResolver"; +export type { TextResolver } from "./TextResolver"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/index.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/index.d.ts.map new file mode 100644 index 00000000..b4d1c205 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/@ensdomains/ens-contracts/contracts/resolvers/profiles/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,YAAY,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACnD,YAAY,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,YAAY,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACnD,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,YAAY,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACnE,YAAY,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,YAAY,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,YAAY,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,YAAY,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,YAAY,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACnE,YAAY,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,YAAY,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACnD,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,YAAY,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/index.js b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar.d.ts new file mode 100644 index 00000000..e027bb68 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar.d.ts @@ -0,0 +1,90 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; +export interface IReverseRegistrarInterface extends Interface { + getFunction(nameOrSignature: "claim" | "claimForAddr" | "claimWithResolver" | "node" | "setDefaultResolver" | "setName" | "setNameForAddr"): FunctionFragment; + encodeFunctionData(functionFragment: "claim", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "claimForAddr", values: [AddressLike, AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "claimWithResolver", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "node", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "setDefaultResolver", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "setName", values: [string]): string; + encodeFunctionData(functionFragment: "setNameForAddr", values: [AddressLike, AddressLike, AddressLike, string]): string; + decodeFunctionResult(functionFragment: "claim", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "claimForAddr", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "claimWithResolver", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "node", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setDefaultResolver", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setName", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setNameForAddr", data: BytesLike): Result; +} +export interface IReverseRegistrar extends BaseContract { + connect(runner?: ContractRunner | null): IReverseRegistrar; + waitForDeployment(): Promise; + interface: IReverseRegistrarInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + claim: TypedContractMethod<[owner: AddressLike], [string], "nonpayable">; + claimForAddr: TypedContractMethod<[ + addr: AddressLike, + owner: AddressLike, + resolver: AddressLike + ], [ + string + ], "nonpayable">; + claimWithResolver: TypedContractMethod<[ + owner: AddressLike, + resolver: AddressLike + ], [ + string + ], "nonpayable">; + node: TypedContractMethod<[addr: AddressLike], [string], "view">; + setDefaultResolver: TypedContractMethod<[ + resolver: AddressLike + ], [ + void + ], "nonpayable">; + setName: TypedContractMethod<[name: string], [string], "nonpayable">; + setNameForAddr: TypedContractMethod<[ + addr: AddressLike, + owner: AddressLike, + resolver: AddressLike, + name: string + ], [ + string + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "claim"): TypedContractMethod<[owner: AddressLike], [string], "nonpayable">; + getFunction(nameOrSignature: "claimForAddr"): TypedContractMethod<[ + addr: AddressLike, + owner: AddressLike, + resolver: AddressLike + ], [ + string + ], "nonpayable">; + getFunction(nameOrSignature: "claimWithResolver"): TypedContractMethod<[ + owner: AddressLike, + resolver: AddressLike + ], [ + string + ], "nonpayable">; + getFunction(nameOrSignature: "node"): TypedContractMethod<[addr: AddressLike], [string], "view">; + getFunction(nameOrSignature: "setDefaultResolver"): TypedContractMethod<[resolver: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "setName"): TypedContractMethod<[name: string], [string], "nonpayable">; + getFunction(nameOrSignature: "setNameForAddr"): TypedContractMethod<[ + addr: AddressLike, + owner: AddressLike, + resolver: AddressLike, + name: string + ], [ + string + ], "nonpayable">; + filters: {}; +} +//# sourceMappingURL=IReverseRegistrar.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar.d.ts.map new file mode 100644 index 00000000..a72ee15f --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IReverseRegistrar.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar.js b/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer.d.ts new file mode 100644 index 00000000..a4edf054 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer.d.ts @@ -0,0 +1,21 @@ +import type { BaseContract, FunctionFragment, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener } from "../../../../common"; +export interface ReverseClaimerInterface extends Interface { +} +export interface ReverseClaimer extends BaseContract { + connect(runner?: ContractRunner | null): ReverseClaimer; + waitForDeployment(): Promise; + interface: ReverseClaimerInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + getFunction(key: string | FunctionFragment): T; + filters: {}; +} +//# sourceMappingURL=ReverseClaimer.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer.d.ts.map new file mode 100644 index 00000000..c9e932b9 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ReverseClaimer.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,gBAAgB,EAChB,SAAS,EACT,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,aAAa,EACd,MAAM,oBAAoB,CAAC;AAE5B,MAAM,WAAW,uBAAwB,SAAQ,SAAS;CAAG;AAE7D,MAAM,WAAW,cAAe,SAAQ,YAAY;IAClD,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,cAAc,CAAC;IACxD,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,uBAAuB,CAAC;IAEnC,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,OAAO,EAAE,EAAE,CAAC;CACb"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer.js b/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/NameResolver.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/NameResolver.d.ts new file mode 100644 index 00000000..5d7904d9 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/NameResolver.d.ts @@ -0,0 +1,31 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../../common"; +export interface NameResolverInterface extends Interface { + getFunction(nameOrSignature: "setName"): FunctionFragment; + encodeFunctionData(functionFragment: "setName", values: [BytesLike, string]): string; + decodeFunctionResult(functionFragment: "setName", data: BytesLike): Result; +} +export interface NameResolver extends BaseContract { + connect(runner?: ContractRunner | null): NameResolver; + waitForDeployment(): Promise; + interface: NameResolverInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + setName: TypedContractMethod<[ + node: BytesLike, + name: string + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "setName"): TypedContractMethod<[node: BytesLike, name: string], [void], "nonpayable">; + filters: {}; +} +//# sourceMappingURL=NameResolver.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/NameResolver.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/NameResolver.d.ts.map new file mode 100644 index 00000000..13b50565 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/NameResolver.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"NameResolver.d.ts","sourceRoot":"","sources":["../../../../../../../types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/NameResolver.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,aAAa,EACb,mBAAmB,EACpB,MAAM,uBAAuB,CAAC;AAE/B,MAAM,WAAW,qBAAsB,SAAQ,SAAS;IACtD,WAAW,CAAC,eAAe,EAAE,SAAS,GAAG,gBAAgB,CAAC;IAE1D,kBAAkB,CAChB,gBAAgB,EAAE,SAAS,EAC3B,MAAM,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC,GAC1B,MAAM,CAAC;IAEV,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;CAC5E;AAED,MAAM,WAAW,YAAa,SAAQ,YAAY;IAChD,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,YAAY,CAAC;IACtD,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,qBAAqB,CAAC;IAEjC,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,OAAO,EAAE,mBAAmB,CAC1B;QAAC,IAAI,EAAE,SAAS;QAAE,IAAI,EAAE,MAAM;KAAC,EAC/B;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,WAAW,CACT,eAAe,EAAE,SAAS,GACzB,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IAE9E,OAAO,EAAE,EAAE,CAAC;CACb"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/NameResolver.js b/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/NameResolver.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/NameResolver.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar.d.ts new file mode 100644 index 00000000..12084438 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar.d.ts @@ -0,0 +1,193 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; +export interface ReverseRegistrarInterface extends Interface { + getFunction(nameOrSignature: "claim" | "claimForAddr" | "claimWithResolver" | "controllers" | "defaultResolver" | "ens" | "node" | "owner" | "renounceOwnership" | "setController" | "setDefaultResolver" | "setName" | "setNameForAddr" | "transferOwnership"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "ControllerChanged" | "DefaultResolverChanged" | "OwnershipTransferred" | "ReverseClaimed"): EventFragment; + encodeFunctionData(functionFragment: "claim", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "claimForAddr", values: [AddressLike, AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "claimWithResolver", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "controllers", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "defaultResolver", values?: undefined): string; + encodeFunctionData(functionFragment: "ens", values?: undefined): string; + encodeFunctionData(functionFragment: "node", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData(functionFragment: "renounceOwnership", values?: undefined): string; + encodeFunctionData(functionFragment: "setController", values: [AddressLike, boolean]): string; + encodeFunctionData(functionFragment: "setDefaultResolver", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "setName", values: [string]): string; + encodeFunctionData(functionFragment: "setNameForAddr", values: [AddressLike, AddressLike, AddressLike, string]): string; + encodeFunctionData(functionFragment: "transferOwnership", values: [AddressLike]): string; + decodeFunctionResult(functionFragment: "claim", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "claimForAddr", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "claimWithResolver", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "controllers", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "defaultResolver", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ens", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "node", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceOwnership", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setController", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setDefaultResolver", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setName", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setNameForAddr", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result; +} +export declare namespace ControllerChangedEvent { + type InputTuple = [controller: AddressLike, enabled: boolean]; + type OutputTuple = [controller: string, enabled: boolean]; + interface OutputObject { + controller: string; + enabled: boolean; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace DefaultResolverChangedEvent { + type InputTuple = [resolver: AddressLike]; + type OutputTuple = [resolver: string]; + interface OutputObject { + resolver: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace OwnershipTransferredEvent { + type InputTuple = [previousOwner: AddressLike, newOwner: AddressLike]; + type OutputTuple = [previousOwner: string, newOwner: string]; + interface OutputObject { + previousOwner: string; + newOwner: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ReverseClaimedEvent { + type InputTuple = [addr: AddressLike, node: BytesLike]; + type OutputTuple = [addr: string, node: string]; + interface OutputObject { + addr: string; + node: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface ReverseRegistrar extends BaseContract { + connect(runner?: ContractRunner | null): ReverseRegistrar; + waitForDeployment(): Promise; + interface: ReverseRegistrarInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + claim: TypedContractMethod<[owner: AddressLike], [string], "nonpayable">; + claimForAddr: TypedContractMethod<[ + addr: AddressLike, + owner: AddressLike, + resolver: AddressLike + ], [ + string + ], "nonpayable">; + claimWithResolver: TypedContractMethod<[ + owner: AddressLike, + resolver: AddressLike + ], [ + string + ], "nonpayable">; + controllers: TypedContractMethod<[arg0: AddressLike], [boolean], "view">; + defaultResolver: TypedContractMethod<[], [string], "view">; + ens: TypedContractMethod<[], [string], "view">; + node: TypedContractMethod<[addr: AddressLike], [string], "view">; + owner: TypedContractMethod<[], [string], "view">; + renounceOwnership: TypedContractMethod<[], [void], "nonpayable">; + setController: TypedContractMethod<[ + controller: AddressLike, + enabled: boolean + ], [ + void + ], "nonpayable">; + setDefaultResolver: TypedContractMethod<[ + resolver: AddressLike + ], [ + void + ], "nonpayable">; + setName: TypedContractMethod<[name: string], [string], "nonpayable">; + setNameForAddr: TypedContractMethod<[ + addr: AddressLike, + owner: AddressLike, + resolver: AddressLike, + name: string + ], [ + string + ], "nonpayable">; + transferOwnership: TypedContractMethod<[ + newOwner: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "claim"): TypedContractMethod<[owner: AddressLike], [string], "nonpayable">; + getFunction(nameOrSignature: "claimForAddr"): TypedContractMethod<[ + addr: AddressLike, + owner: AddressLike, + resolver: AddressLike + ], [ + string + ], "nonpayable">; + getFunction(nameOrSignature: "claimWithResolver"): TypedContractMethod<[ + owner: AddressLike, + resolver: AddressLike + ], [ + string + ], "nonpayable">; + getFunction(nameOrSignature: "controllers"): TypedContractMethod<[arg0: AddressLike], [boolean], "view">; + getFunction(nameOrSignature: "defaultResolver"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "ens"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "node"): TypedContractMethod<[addr: AddressLike], [string], "view">; + getFunction(nameOrSignature: "owner"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "renounceOwnership"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "setController"): TypedContractMethod<[ + controller: AddressLike, + enabled: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setDefaultResolver"): TypedContractMethod<[resolver: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "setName"): TypedContractMethod<[name: string], [string], "nonpayable">; + getFunction(nameOrSignature: "setNameForAddr"): TypedContractMethod<[ + addr: AddressLike, + owner: AddressLike, + resolver: AddressLike, + name: string + ], [ + string + ], "nonpayable">; + getFunction(nameOrSignature: "transferOwnership"): TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">; + getEvent(key: "ControllerChanged"): TypedContractEvent; + getEvent(key: "DefaultResolverChanged"): TypedContractEvent; + getEvent(key: "OwnershipTransferred"): TypedContractEvent; + getEvent(key: "ReverseClaimed"): TypedContractEvent; + filters: { + "ControllerChanged(address,bool)": TypedContractEvent; + ControllerChanged: TypedContractEvent; + "DefaultResolverChanged(address)": TypedContractEvent; + DefaultResolverChanged: TypedContractEvent; + "OwnershipTransferred(address,address)": TypedContractEvent; + OwnershipTransferred: TypedContractEvent; + "ReverseClaimed(address,bytes32)": TypedContractEvent; + ReverseClaimed: TypedContractEvent; + }; +} +//# sourceMappingURL=ReverseRegistrar.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar.d.ts.map new file mode 100644 index 00000000..941e775a --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ReverseRegistrar.d.ts","sourceRoot":"","sources":["../../../../../../../types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar.js b/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/index.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/index.d.ts new file mode 100644 index 00000000..0a9c9db3 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/index.d.ts @@ -0,0 +1,3 @@ +export type { NameResolver } from "./NameResolver"; +export type { ReverseRegistrar } from "./ReverseRegistrar"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/index.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/index.d.ts.map new file mode 100644 index 00000000..7ee6a9cd --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACnD,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/index.js b/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/index.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/index.d.ts new file mode 100644 index 00000000..57babdd2 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/index.d.ts @@ -0,0 +1,5 @@ +import type * as reverseRegistrarSol from "./ReverseRegistrar.sol"; +export type { reverseRegistrarSol }; +export type { IReverseRegistrar } from "./IReverseRegistrar"; +export type { ReverseClaimer } from "./ReverseClaimer"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/index.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/index.d.ts.map new file mode 100644 index 00000000..1cbe23b3 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/reverseRegistrar/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,mBAAmB,MAAM,wBAAwB,CAAC;AACnE,YAAY,EAAE,mBAAmB,EAAE,CAAC;AACpC,YAAY,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/index.js b/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/root/Controllable.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/root/Controllable.d.ts new file mode 100644 index 00000000..acc7836f --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/root/Controllable.d.ts @@ -0,0 +1,88 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; +export interface ControllableInterface extends Interface { + getFunction(nameOrSignature: "controllers" | "owner" | "renounceOwnership" | "setController" | "transferOwnership"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "ControllerChanged" | "OwnershipTransferred"): EventFragment; + encodeFunctionData(functionFragment: "controllers", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData(functionFragment: "renounceOwnership", values?: undefined): string; + encodeFunctionData(functionFragment: "setController", values: [AddressLike, boolean]): string; + encodeFunctionData(functionFragment: "transferOwnership", values: [AddressLike]): string; + decodeFunctionResult(functionFragment: "controllers", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceOwnership", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setController", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result; +} +export declare namespace ControllerChangedEvent { + type InputTuple = [controller: AddressLike, enabled: boolean]; + type OutputTuple = [controller: string, enabled: boolean]; + interface OutputObject { + controller: string; + enabled: boolean; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace OwnershipTransferredEvent { + type InputTuple = [previousOwner: AddressLike, newOwner: AddressLike]; + type OutputTuple = [previousOwner: string, newOwner: string]; + interface OutputObject { + previousOwner: string; + newOwner: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface Controllable extends BaseContract { + connect(runner?: ContractRunner | null): Controllable; + waitForDeployment(): Promise; + interface: ControllableInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + controllers: TypedContractMethod<[arg0: AddressLike], [boolean], "view">; + owner: TypedContractMethod<[], [string], "view">; + renounceOwnership: TypedContractMethod<[], [void], "nonpayable">; + setController: TypedContractMethod<[ + controller: AddressLike, + enabled: boolean + ], [ + void + ], "nonpayable">; + transferOwnership: TypedContractMethod<[ + newOwner: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "controllers"): TypedContractMethod<[arg0: AddressLike], [boolean], "view">; + getFunction(nameOrSignature: "owner"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "renounceOwnership"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "setController"): TypedContractMethod<[ + controller: AddressLike, + enabled: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "transferOwnership"): TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">; + getEvent(key: "ControllerChanged"): TypedContractEvent; + getEvent(key: "OwnershipTransferred"): TypedContractEvent; + filters: { + "ControllerChanged(address,bool)": TypedContractEvent; + ControllerChanged: TypedContractEvent; + "OwnershipTransferred(address,address)": TypedContractEvent; + OwnershipTransferred: TypedContractEvent; + }; +} +//# sourceMappingURL=Controllable.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/root/Controllable.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/root/Controllable.d.ts.map new file mode 100644 index 00000000..e9231acf --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/root/Controllable.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"Controllable.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/root/Controllable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/root/Controllable.js b/dist/types/@ensdomains/ens-contracts/contracts/root/Controllable.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/root/Controllable.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/root/Root.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/root/Root.d.ts new file mode 100644 index 00000000..281ec033 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/root/Root.d.ts @@ -0,0 +1,144 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; +export interface RootInterface extends Interface { + getFunction(nameOrSignature: "controllers" | "ens" | "lock" | "locked" | "owner" | "renounceOwnership" | "setController" | "setResolver" | "setSubnodeOwner" | "supportsInterface" | "transferOwnership"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "ControllerChanged" | "OwnershipTransferred" | "TLDLocked"): EventFragment; + encodeFunctionData(functionFragment: "controllers", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "ens", values?: undefined): string; + encodeFunctionData(functionFragment: "lock", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "locked", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData(functionFragment: "renounceOwnership", values?: undefined): string; + encodeFunctionData(functionFragment: "setController", values: [AddressLike, boolean]): string; + encodeFunctionData(functionFragment: "setResolver", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "setSubnodeOwner", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "transferOwnership", values: [AddressLike]): string; + decodeFunctionResult(functionFragment: "controllers", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ens", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "lock", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "locked", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceOwnership", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setController", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setResolver", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setSubnodeOwner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result; +} +export declare namespace ControllerChangedEvent { + type InputTuple = [controller: AddressLike, enabled: boolean]; + type OutputTuple = [controller: string, enabled: boolean]; + interface OutputObject { + controller: string; + enabled: boolean; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace OwnershipTransferredEvent { + type InputTuple = [previousOwner: AddressLike, newOwner: AddressLike]; + type OutputTuple = [previousOwner: string, newOwner: string]; + interface OutputObject { + previousOwner: string; + newOwner: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TLDLockedEvent { + type InputTuple = [label: BytesLike]; + type OutputTuple = [label: string]; + interface OutputObject { + label: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface Root extends BaseContract { + connect(runner?: ContractRunner | null): Root; + waitForDeployment(): Promise; + interface: RootInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + controllers: TypedContractMethod<[arg0: AddressLike], [boolean], "view">; + ens: TypedContractMethod<[], [string], "view">; + lock: TypedContractMethod<[label: BytesLike], [void], "nonpayable">; + locked: TypedContractMethod<[arg0: BytesLike], [boolean], "view">; + owner: TypedContractMethod<[], [string], "view">; + renounceOwnership: TypedContractMethod<[], [void], "nonpayable">; + setController: TypedContractMethod<[ + controller: AddressLike, + enabled: boolean + ], [ + void + ], "nonpayable">; + setResolver: TypedContractMethod<[ + resolver: AddressLike + ], [ + void + ], "nonpayable">; + setSubnodeOwner: TypedContractMethod<[ + label: BytesLike, + owner: AddressLike + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceID: BytesLike + ], [ + boolean + ], "view">; + transferOwnership: TypedContractMethod<[ + newOwner: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "controllers"): TypedContractMethod<[arg0: AddressLike], [boolean], "view">; + getFunction(nameOrSignature: "ens"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "lock"): TypedContractMethod<[label: BytesLike], [void], "nonpayable">; + getFunction(nameOrSignature: "locked"): TypedContractMethod<[arg0: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "owner"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "renounceOwnership"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "setController"): TypedContractMethod<[ + controller: AddressLike, + enabled: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setResolver"): TypedContractMethod<[resolver: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "setSubnodeOwner"): TypedContractMethod<[ + label: BytesLike, + owner: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceID: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "transferOwnership"): TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">; + getEvent(key: "ControllerChanged"): TypedContractEvent; + getEvent(key: "OwnershipTransferred"): TypedContractEvent; + getEvent(key: "TLDLocked"): TypedContractEvent; + filters: { + "ControllerChanged(address,bool)": TypedContractEvent; + ControllerChanged: TypedContractEvent; + "OwnershipTransferred(address,address)": TypedContractEvent; + OwnershipTransferred: TypedContractEvent; + "TLDLocked(bytes32)": TypedContractEvent; + TLDLocked: TypedContractEvent; + }; +} +//# sourceMappingURL=Root.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/root/Root.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/root/Root.d.ts.map new file mode 100644 index 00000000..e371e055 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/root/Root.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"Root.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/root/Root.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/root/Root.js b/dist/types/@ensdomains/ens-contracts/contracts/root/Root.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/root/Root.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/root/index.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/root/index.d.ts new file mode 100644 index 00000000..404de8ea --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/root/index.d.ts @@ -0,0 +1,3 @@ +export type { Controllable } from "./Controllable"; +export type { Root } from "./Root"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/root/index.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/root/index.d.ts.map new file mode 100644 index 00000000..0310b5ee --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/root/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/root/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACnD,YAAY,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/root/index.js b/dist/types/@ensdomains/ens-contracts/contracts/root/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/root/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable.d.ts new file mode 100644 index 00000000..ea047f25 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable.d.ts @@ -0,0 +1,71 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; +export interface ERC20RecoverableInterface extends Interface { + getFunction(nameOrSignature: "owner" | "recoverFunds" | "renounceOwnership" | "transferOwnership"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "OwnershipTransferred"): EventFragment; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData(functionFragment: "recoverFunds", values: [AddressLike, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "renounceOwnership", values?: undefined): string; + encodeFunctionData(functionFragment: "transferOwnership", values: [AddressLike]): string; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "recoverFunds", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceOwnership", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result; +} +export declare namespace OwnershipTransferredEvent { + type InputTuple = [previousOwner: AddressLike, newOwner: AddressLike]; + type OutputTuple = [previousOwner: string, newOwner: string]; + interface OutputObject { + previousOwner: string; + newOwner: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface ERC20Recoverable extends BaseContract { + connect(runner?: ContractRunner | null): ERC20Recoverable; + waitForDeployment(): Promise; + interface: ERC20RecoverableInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + owner: TypedContractMethod<[], [string], "view">; + recoverFunds: TypedContractMethod<[ + _token: AddressLike, + _to: AddressLike, + _amount: BigNumberish + ], [ + void + ], "nonpayable">; + renounceOwnership: TypedContractMethod<[], [void], "nonpayable">; + transferOwnership: TypedContractMethod<[ + newOwner: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "owner"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "recoverFunds"): TypedContractMethod<[ + _token: AddressLike, + _to: AddressLike, + _amount: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "renounceOwnership"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "transferOwnership"): TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">; + getEvent(key: "OwnershipTransferred"): TypedContractEvent; + filters: { + "OwnershipTransferred(address,address)": TypedContractEvent; + OwnershipTransferred: TypedContractEvent; + }; +} +//# sourceMappingURL=ERC20Recoverable.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable.d.ts.map new file mode 100644 index 00000000..39622aec --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ERC20Recoverable.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,aAAa,EACb,WAAW,EACX,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,mBAAmB,EACnB,aAAa,EACb,mBAAmB,EACpB,MAAM,oBAAoB,CAAC;AAE5B,MAAM,WAAW,yBAA0B,SAAQ,SAAS;IAC1D,WAAW,CACT,eAAe,EACX,OAAO,GACP,cAAc,GACd,mBAAmB,GACnB,mBAAmB,GACtB,gBAAgB,CAAC;IAEpB,QAAQ,CAAC,sBAAsB,EAAE,sBAAsB,GAAG,aAAa,CAAC;IAExE,kBAAkB,CAAC,gBAAgB,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IAC1E,kBAAkB,CAChB,gBAAgB,EAAE,cAAc,EAChC,MAAM,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,YAAY,CAAC,GAC/C,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,mBAAmB,EACrC,MAAM,CAAC,EAAE,SAAS,GACjB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,mBAAmB,EACrC,MAAM,EAAE,CAAC,WAAW,CAAC,GACpB,MAAM,CAAC;IAEV,oBAAoB,CAAC,gBAAgB,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IACzE,oBAAoB,CAClB,gBAAgB,EAAE,cAAc,EAChC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,mBAAmB,EACrC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,mBAAmB,EACrC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;CACX;AAED,yBAAiB,yBAAyB,CAAC;IACzC,KAAY,UAAU,GAAG,CAAC,aAAa,EAAE,WAAW,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;IAC7E,KAAY,WAAW,GAAG,CAAC,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;IACpE,UAAiB,YAAY;QAC3B,aAAa,EAAE,MAAM,CAAC;QACtB,QAAQ,EAAE,MAAM,CAAC;KAClB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,MAAM,WAAW,gBAAiB,SAAQ,YAAY;IACpD,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,gBAAgB,CAAC;IAC1D,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,yBAAyB,CAAC;IAErC,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,KAAK,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEjD,YAAY,EAAE,mBAAmB,CAC/B;QAAC,MAAM,EAAE,WAAW;QAAE,GAAG,EAAE,WAAW;QAAE,OAAO,EAAE,YAAY;KAAC,EAC9D;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,iBAAiB,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IAEjE,iBAAiB,EAAE,mBAAmB,CACpC;QAAC,QAAQ,EAAE,WAAW;KAAC,EACvB;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,WAAW,CACT,eAAe,EAAE,OAAO,GACvB,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC7C,WAAW,CACT,eAAe,EAAE,cAAc,GAC9B,mBAAmB,CACpB;QAAC,MAAM,EAAE,WAAW;QAAE,GAAG,EAAE,WAAW;QAAE,OAAO,EAAE,YAAY;KAAC,EAC9D;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,mBAAmB,GACnC,mBAAmB,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IACjD,WAAW,CACT,eAAe,EAAE,mBAAmB,GACnC,mBAAmB,CAAC,CAAC,QAAQ,EAAE,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IAEtE,QAAQ,CACN,GAAG,EAAE,sBAAsB,GAC1B,kBAAkB,CACnB,yBAAyB,CAAC,UAAU,EACpC,yBAAyB,CAAC,WAAW,EACrC,yBAAyB,CAAC,YAAY,CACvC,CAAC;IAEF,OAAO,EAAE;QACP,uCAAuC,EAAE,kBAAkB,CACzD,yBAAyB,CAAC,UAAU,EACpC,yBAAyB,CAAC,WAAW,EACrC,yBAAyB,CAAC,YAAY,CACvC,CAAC;QACF,oBAAoB,EAAE,kBAAkB,CACtC,yBAAyB,CAAC,UAAU,EACpC,yBAAyB,CAAC,WAAW,EACrC,yBAAyB,CAAC,YAAY,CACvC,CAAC;KACH,CAAC;CACH"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable.js b/dist/types/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/utils/index.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/utils/index.d.ts new file mode 100644 index 00000000..d31f55db --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/utils/index.d.ts @@ -0,0 +1,2 @@ +export type { ERC20Recoverable } from "./ERC20Recoverable"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/utils/index.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/utils/index.d.ts.map new file mode 100644 index 00000000..20712123 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/utils/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/utils/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/utils/index.js b/dist/types/@ensdomains/ens-contracts/contracts/utils/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/utils/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/Controllable.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/Controllable.d.ts new file mode 100644 index 00000000..d31fd9d5 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/Controllable.d.ts @@ -0,0 +1,88 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; +export interface ControllableInterface extends Interface { + getFunction(nameOrSignature: "controllers" | "owner" | "renounceOwnership" | "setController" | "transferOwnership"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "ControllerChanged" | "OwnershipTransferred"): EventFragment; + encodeFunctionData(functionFragment: "controllers", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData(functionFragment: "renounceOwnership", values?: undefined): string; + encodeFunctionData(functionFragment: "setController", values: [AddressLike, boolean]): string; + encodeFunctionData(functionFragment: "transferOwnership", values: [AddressLike]): string; + decodeFunctionResult(functionFragment: "controllers", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceOwnership", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setController", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result; +} +export declare namespace ControllerChangedEvent { + type InputTuple = [controller: AddressLike, active: boolean]; + type OutputTuple = [controller: string, active: boolean]; + interface OutputObject { + controller: string; + active: boolean; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace OwnershipTransferredEvent { + type InputTuple = [previousOwner: AddressLike, newOwner: AddressLike]; + type OutputTuple = [previousOwner: string, newOwner: string]; + interface OutputObject { + previousOwner: string; + newOwner: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface Controllable extends BaseContract { + connect(runner?: ContractRunner | null): Controllable; + waitForDeployment(): Promise; + interface: ControllableInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + controllers: TypedContractMethod<[arg0: AddressLike], [boolean], "view">; + owner: TypedContractMethod<[], [string], "view">; + renounceOwnership: TypedContractMethod<[], [void], "nonpayable">; + setController: TypedContractMethod<[ + controller: AddressLike, + active: boolean + ], [ + void + ], "nonpayable">; + transferOwnership: TypedContractMethod<[ + newOwner: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "controllers"): TypedContractMethod<[arg0: AddressLike], [boolean], "view">; + getFunction(nameOrSignature: "owner"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "renounceOwnership"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "setController"): TypedContractMethod<[ + controller: AddressLike, + active: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "transferOwnership"): TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">; + getEvent(key: "ControllerChanged"): TypedContractEvent; + getEvent(key: "OwnershipTransferred"): TypedContractEvent; + filters: { + "ControllerChanged(address,bool)": TypedContractEvent; + ControllerChanged: TypedContractEvent; + "OwnershipTransferred(address,address)": TypedContractEvent; + OwnershipTransferred: TypedContractEvent; + }; +} +//# sourceMappingURL=Controllable.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/Controllable.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/Controllable.d.ts.map new file mode 100644 index 00000000..c38fb0a7 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/Controllable.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"Controllable.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/wrapper/Controllable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/Controllable.js b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/Controllable.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/Controllable.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse.d.ts new file mode 100644 index 00000000..bc42174e --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse.d.ts @@ -0,0 +1,311 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; +export interface ERC1155FuseInterface extends Interface { + getFunction(nameOrSignature: "_tokens" | "approve" | "balanceOf" | "balanceOfBatch" | "getApproved" | "getData" | "isApprovedForAll" | "ownerOf" | "safeBatchTransferFrom" | "safeTransferFrom" | "setApprovalForAll" | "supportsInterface" | "uri"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "TransferBatch" | "TransferSingle" | "URI"): EventFragment; + encodeFunctionData(functionFragment: "_tokens", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "balanceOfBatch", values: [AddressLike[], BigNumberish[]]): string; + encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "getData", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "safeBatchTransferFrom", values: [ + AddressLike, + AddressLike, + BigNumberish[], + BigNumberish[], + BytesLike + ]): string; + encodeFunctionData(functionFragment: "safeTransferFrom", values: [AddressLike, AddressLike, BigNumberish, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "uri", values: [BigNumberish]): string; + decodeFunctionResult(functionFragment: "_tokens", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOfBatch", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getData", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeBatchTransferFrom", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "uri", data: BytesLike): Result; +} +export declare namespace ApprovalEvent { + type InputTuple = [ + owner: AddressLike, + approved: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [owner: string, approved: string, tokenId: bigint]; + interface OutputObject { + owner: string; + approved: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ApprovalForAllEvent { + type InputTuple = [ + account: AddressLike, + operator: AddressLike, + approved: boolean + ]; + type OutputTuple = [ + account: string, + operator: string, + approved: boolean + ]; + interface OutputObject { + account: string; + operator: string; + approved: boolean; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferBatchEvent { + type InputTuple = [ + operator: AddressLike, + from: AddressLike, + to: AddressLike, + ids: BigNumberish[], + values: BigNumberish[] + ]; + type OutputTuple = [ + operator: string, + from: string, + to: string, + ids: bigint[], + values: bigint[] + ]; + interface OutputObject { + operator: string; + from: string; + to: string; + ids: bigint[]; + values: bigint[]; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferSingleEvent { + type InputTuple = [ + operator: AddressLike, + from: AddressLike, + to: AddressLike, + id: BigNumberish, + value: BigNumberish + ]; + type OutputTuple = [ + operator: string, + from: string, + to: string, + id: bigint, + value: bigint + ]; + interface OutputObject { + operator: string; + from: string; + to: string; + id: bigint; + value: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace URIEvent { + type InputTuple = [value: string, id: BigNumberish]; + type OutputTuple = [value: string, id: bigint]; + interface OutputObject { + value: string; + id: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface ERC1155Fuse extends BaseContract { + connect(runner?: ContractRunner | null): ERC1155Fuse; + waitForDeployment(): Promise; + interface: ERC1155FuseInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + _tokens: TypedContractMethod<[arg0: BigNumberish], [bigint], "view">; + approve: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + balanceOf: TypedContractMethod<[ + account: AddressLike, + id: BigNumberish + ], [ + bigint + ], "view">; + balanceOfBatch: TypedContractMethod<[ + accounts: AddressLike[], + ids: BigNumberish[] + ], [ + bigint[] + ], "view">; + getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getData: TypedContractMethod<[ + tokenId: BigNumberish + ], [ + [ + string, + bigint, + bigint + ] & { + owner: string; + fuses: bigint; + expiry: bigint; + } + ], "view">; + isApprovedForAll: TypedContractMethod<[ + account: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + ownerOf: TypedContractMethod<[id: BigNumberish], [string], "view">; + safeBatchTransferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + ids: BigNumberish[], + amounts: BigNumberish[], + data: BytesLike + ], [ + void + ], "nonpayable">; + safeTransferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + id: BigNumberish, + amount: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + setApprovalForAll: TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + uri: TypedContractMethod<[id: BigNumberish], [string], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "_tokens"): TypedContractMethod<[arg0: BigNumberish], [bigint], "view">; + getFunction(nameOrSignature: "approve"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[ + account: AddressLike, + id: BigNumberish + ], [ + bigint + ], "view">; + getFunction(nameOrSignature: "balanceOfBatch"): TypedContractMethod<[ + accounts: AddressLike[], + ids: BigNumberish[] + ], [ + bigint[] + ], "view">; + getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "getData"): TypedContractMethod<[ + tokenId: BigNumberish + ], [ + [ + string, + bigint, + bigint + ] & { + owner: string; + fuses: bigint; + expiry: bigint; + } + ], "view">; + getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ + account: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[id: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "safeBatchTransferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + ids: BigNumberish[], + amounts: BigNumberish[], + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + id: BigNumberish, + amount: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "uri"): TypedContractMethod<[id: BigNumberish], [string], "view">; + getEvent(key: "Approval"): TypedContractEvent; + getEvent(key: "ApprovalForAll"): TypedContractEvent; + getEvent(key: "TransferBatch"): TypedContractEvent; + getEvent(key: "TransferSingle"): TypedContractEvent; + getEvent(key: "URI"): TypedContractEvent; + filters: { + "Approval(address,address,uint256)": TypedContractEvent; + Approval: TypedContractEvent; + "ApprovalForAll(address,address,bool)": TypedContractEvent; + ApprovalForAll: TypedContractEvent; + "TransferBatch(address,address,address,uint256[],uint256[])": TypedContractEvent; + TransferBatch: TypedContractEvent; + "TransferSingle(address,address,address,uint256,uint256)": TypedContractEvent; + TransferSingle: TypedContractEvent; + "URI(string,uint256)": TypedContractEvent; + URI: TypedContractEvent; + }; +} +//# sourceMappingURL=ERC1155Fuse.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse.d.ts.map new file mode 100644 index 00000000..101376af --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ERC1155Fuse.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse.js b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService.d.ts new file mode 100644 index 00000000..5a0ac532 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService.d.ts @@ -0,0 +1,26 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; +export interface IMetadataServiceInterface extends Interface { + getFunction(nameOrSignature: "uri"): FunctionFragment; + encodeFunctionData(functionFragment: "uri", values: [BigNumberish]): string; + decodeFunctionResult(functionFragment: "uri", data: BytesLike): Result; +} +export interface IMetadataService extends BaseContract { + connect(runner?: ContractRunner | null): IMetadataService; + waitForDeployment(): Promise; + interface: IMetadataServiceInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + uri: TypedContractMethod<[arg0: BigNumberish], [string], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "uri"): TypedContractMethod<[arg0: BigNumberish], [string], "view">; + filters: {}; +} +//# sourceMappingURL=IMetadataService.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService.d.ts.map new file mode 100644 index 00000000..1c3b8876 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IMetadataService.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService.js b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper.d.ts new file mode 100644 index 00000000..76ceed14 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper.d.ts @@ -0,0 +1,691 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; +export interface INameWrapperInterface extends Interface { + getFunction(nameOrSignature: "allFusesBurned" | "approve" | "balanceOf" | "balanceOfBatch" | "canModifyName" | "ens" | "extendExpiry" | "getApproved" | "getData" | "isApprovedForAll" | "isWrapped(bytes32,bytes32)" | "isWrapped(bytes32)" | "metadataService" | "name" | "names" | "ownerOf" | "registerAndWrapETH2LD" | "registrar" | "renew" | "safeBatchTransferFrom" | "safeTransferFrom" | "setApprovalForAll" | "setChildFuses" | "setFuses" | "setMetadataService" | "setRecord" | "setResolver" | "setSubnodeOwner" | "setSubnodeRecord" | "setTTL" | "setUpgradeContract" | "supportsInterface" | "unwrap" | "unwrapETH2LD" | "upgrade" | "upgradeContract" | "uri" | "wrap" | "wrapETH2LD"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "ApprovalForAll" | "ExpiryExtended" | "FusesSet" | "NameUnwrapped" | "NameWrapped" | "TransferBatch" | "TransferSingle" | "URI"): EventFragment; + encodeFunctionData(functionFragment: "allFusesBurned", values: [BytesLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "balanceOfBatch", values: [AddressLike[], BigNumberish[]]): string; + encodeFunctionData(functionFragment: "canModifyName", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "ens", values?: undefined): string; + encodeFunctionData(functionFragment: "extendExpiry", values: [BytesLike, BytesLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "getData", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "isWrapped(bytes32,bytes32)", values: [BytesLike, BytesLike]): string; + encodeFunctionData(functionFragment: "isWrapped(bytes32)", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "metadataService", values?: undefined): string; + encodeFunctionData(functionFragment: "name", values?: undefined): string; + encodeFunctionData(functionFragment: "names", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "registerAndWrapETH2LD", values: [string, AddressLike, BigNumberish, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "registrar", values?: undefined): string; + encodeFunctionData(functionFragment: "renew", values: [BigNumberish, BigNumberish]): string; + encodeFunctionData(functionFragment: "safeBatchTransferFrom", values: [ + AddressLike, + AddressLike, + BigNumberish[], + BigNumberish[], + BytesLike + ]): string; + encodeFunctionData(functionFragment: "safeTransferFrom", values: [AddressLike, AddressLike, BigNumberish, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; + encodeFunctionData(functionFragment: "setChildFuses", values: [BytesLike, BytesLike, BigNumberish, BigNumberish]): string; + encodeFunctionData(functionFragment: "setFuses", values: [BytesLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "setMetadataService", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "setRecord", values: [BytesLike, AddressLike, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "setResolver", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "setSubnodeOwner", values: [BytesLike, string, AddressLike, BigNumberish, BigNumberish]): string; + encodeFunctionData(functionFragment: "setSubnodeRecord", values: [ + BytesLike, + string, + AddressLike, + AddressLike, + BigNumberish, + BigNumberish, + BigNumberish + ]): string; + encodeFunctionData(functionFragment: "setTTL", values: [BytesLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "setUpgradeContract", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "unwrap", values: [BytesLike, BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "unwrapETH2LD", values: [BytesLike, AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "upgrade", values: [BytesLike, BytesLike]): string; + encodeFunctionData(functionFragment: "upgradeContract", values?: undefined): string; + encodeFunctionData(functionFragment: "uri", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "wrap", values: [BytesLike, AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "wrapETH2LD", values: [string, AddressLike, BigNumberish, AddressLike]): string; + decodeFunctionResult(functionFragment: "allFusesBurned", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOfBatch", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "canModifyName", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ens", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "extendExpiry", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getData", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isWrapped(bytes32,bytes32)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isWrapped(bytes32)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "metadataService", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "names", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "registerAndWrapETH2LD", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "registrar", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renew", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeBatchTransferFrom", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setChildFuses", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setFuses", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setMetadataService", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setRecord", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setResolver", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setSubnodeOwner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setSubnodeRecord", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setTTL", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setUpgradeContract", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "unwrap", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "unwrapETH2LD", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "upgrade", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "upgradeContract", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "uri", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "wrap", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "wrapETH2LD", data: BytesLike): Result; +} +export declare namespace ApprovalForAllEvent { + type InputTuple = [ + account: AddressLike, + operator: AddressLike, + approved: boolean + ]; + type OutputTuple = [ + account: string, + operator: string, + approved: boolean + ]; + interface OutputObject { + account: string; + operator: string; + approved: boolean; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ExpiryExtendedEvent { + type InputTuple = [node: BytesLike, expiry: BigNumberish]; + type OutputTuple = [node: string, expiry: bigint]; + interface OutputObject { + node: string; + expiry: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace FusesSetEvent { + type InputTuple = [node: BytesLike, fuses: BigNumberish]; + type OutputTuple = [node: string, fuses: bigint]; + interface OutputObject { + node: string; + fuses: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NameUnwrappedEvent { + type InputTuple = [node: BytesLike, owner: AddressLike]; + type OutputTuple = [node: string, owner: string]; + interface OutputObject { + node: string; + owner: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NameWrappedEvent { + type InputTuple = [ + node: BytesLike, + name: BytesLike, + owner: AddressLike, + fuses: BigNumberish, + expiry: BigNumberish + ]; + type OutputTuple = [ + node: string, + name: string, + owner: string, + fuses: bigint, + expiry: bigint + ]; + interface OutputObject { + node: string; + name: string; + owner: string; + fuses: bigint; + expiry: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferBatchEvent { + type InputTuple = [ + operator: AddressLike, + from: AddressLike, + to: AddressLike, + ids: BigNumberish[], + values: BigNumberish[] + ]; + type OutputTuple = [ + operator: string, + from: string, + to: string, + ids: bigint[], + values: bigint[] + ]; + interface OutputObject { + operator: string; + from: string; + to: string; + ids: bigint[]; + values: bigint[]; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferSingleEvent { + type InputTuple = [ + operator: AddressLike, + from: AddressLike, + to: AddressLike, + id: BigNumberish, + value: BigNumberish + ]; + type OutputTuple = [ + operator: string, + from: string, + to: string, + id: bigint, + value: bigint + ]; + interface OutputObject { + operator: string; + from: string; + to: string; + id: bigint; + value: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace URIEvent { + type InputTuple = [value: string, id: BigNumberish]; + type OutputTuple = [value: string, id: bigint]; + interface OutputObject { + value: string; + id: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface INameWrapper extends BaseContract { + connect(runner?: ContractRunner | null): INameWrapper; + waitForDeployment(): Promise; + interface: INameWrapperInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + allFusesBurned: TypedContractMethod<[ + node: BytesLike, + fuseMask: BigNumberish + ], [ + boolean + ], "view">; + approve: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + balanceOf: TypedContractMethod<[ + account: AddressLike, + id: BigNumberish + ], [ + bigint + ], "view">; + balanceOfBatch: TypedContractMethod<[ + accounts: AddressLike[], + ids: BigNumberish[] + ], [ + bigint[] + ], "view">; + canModifyName: TypedContractMethod<[ + node: BytesLike, + addr: AddressLike + ], [ + boolean + ], "view">; + ens: TypedContractMethod<[], [string], "view">; + extendExpiry: TypedContractMethod<[ + node: BytesLike, + labelhash: BytesLike, + expiry: BigNumberish + ], [ + bigint + ], "nonpayable">; + getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getData: TypedContractMethod<[ + id: BigNumberish + ], [ + [string, bigint, bigint] + ], "view">; + isApprovedForAll: TypedContractMethod<[ + account: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + "isWrapped(bytes32,bytes32)": TypedContractMethod<[ + arg0: BytesLike, + arg1: BytesLike + ], [ + boolean + ], "view">; + "isWrapped(bytes32)": TypedContractMethod<[ + arg0: BytesLike + ], [ + boolean + ], "view">; + metadataService: TypedContractMethod<[], [string], "view">; + name: TypedContractMethod<[], [string], "view">; + names: TypedContractMethod<[arg0: BytesLike], [string], "view">; + ownerOf: TypedContractMethod<[id: BigNumberish], [string], "view">; + registerAndWrapETH2LD: TypedContractMethod<[ + label: string, + wrappedOwner: AddressLike, + duration: BigNumberish, + resolver: AddressLike, + ownerControlledFuses: BigNumberish + ], [ + bigint + ], "nonpayable">; + registrar: TypedContractMethod<[], [string], "view">; + renew: TypedContractMethod<[ + labelHash: BigNumberish, + duration: BigNumberish + ], [ + bigint + ], "nonpayable">; + safeBatchTransferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + ids: BigNumberish[], + amounts: BigNumberish[], + data: BytesLike + ], [ + void + ], "nonpayable">; + safeTransferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + id: BigNumberish, + amount: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + setApprovalForAll: TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + setChildFuses: TypedContractMethod<[ + parentNode: BytesLike, + labelhash: BytesLike, + fuses: BigNumberish, + expiry: BigNumberish + ], [ + void + ], "nonpayable">; + setFuses: TypedContractMethod<[ + node: BytesLike, + ownerControlledFuses: BigNumberish + ], [ + bigint + ], "nonpayable">; + setMetadataService: TypedContractMethod<[ + _metadataService: AddressLike + ], [ + void + ], "nonpayable">; + setRecord: TypedContractMethod<[ + node: BytesLike, + owner: AddressLike, + resolver: AddressLike, + ttl: BigNumberish + ], [ + void + ], "nonpayable">; + setResolver: TypedContractMethod<[ + node: BytesLike, + resolver: AddressLike + ], [ + void + ], "nonpayable">; + setSubnodeOwner: TypedContractMethod<[ + node: BytesLike, + label: string, + newOwner: AddressLike, + fuses: BigNumberish, + expiry: BigNumberish + ], [ + string + ], "nonpayable">; + setSubnodeRecord: TypedContractMethod<[ + node: BytesLike, + label: string, + owner: AddressLike, + resolver: AddressLike, + ttl: BigNumberish, + fuses: BigNumberish, + expiry: BigNumberish + ], [ + string + ], "nonpayable">; + setTTL: TypedContractMethod<[ + node: BytesLike, + ttl: BigNumberish + ], [ + void + ], "nonpayable">; + setUpgradeContract: TypedContractMethod<[ + _upgradeAddress: AddressLike + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceID: BytesLike + ], [ + boolean + ], "view">; + unwrap: TypedContractMethod<[ + node: BytesLike, + label: BytesLike, + owner: AddressLike + ], [ + void + ], "nonpayable">; + unwrapETH2LD: TypedContractMethod<[ + label: BytesLike, + newRegistrant: AddressLike, + newController: AddressLike + ], [ + void + ], "nonpayable">; + upgrade: TypedContractMethod<[ + name: BytesLike, + extraData: BytesLike + ], [ + void + ], "nonpayable">; + upgradeContract: TypedContractMethod<[], [string], "view">; + uri: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + wrap: TypedContractMethod<[ + name: BytesLike, + wrappedOwner: AddressLike, + resolver: AddressLike + ], [ + void + ], "nonpayable">; + wrapETH2LD: TypedContractMethod<[ + label: string, + wrappedOwner: AddressLike, + ownerControlledFuses: BigNumberish, + resolver: AddressLike + ], [ + bigint + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "allFusesBurned"): TypedContractMethod<[ + node: BytesLike, + fuseMask: BigNumberish + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "approve"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[ + account: AddressLike, + id: BigNumberish + ], [ + bigint + ], "view">; + getFunction(nameOrSignature: "balanceOfBatch"): TypedContractMethod<[ + accounts: AddressLike[], + ids: BigNumberish[] + ], [ + bigint[] + ], "view">; + getFunction(nameOrSignature: "canModifyName"): TypedContractMethod<[ + node: BytesLike, + addr: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "ens"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "extendExpiry"): TypedContractMethod<[ + node: BytesLike, + labelhash: BytesLike, + expiry: BigNumberish + ], [ + bigint + ], "nonpayable">; + getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "getData"): TypedContractMethod<[ + id: BigNumberish + ], [ + [string, bigint, bigint] + ], "view">; + getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ + account: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "isWrapped(bytes32,bytes32)"): TypedContractMethod<[arg0: BytesLike, arg1: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "isWrapped(bytes32)"): TypedContractMethod<[arg0: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "metadataService"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "names"): TypedContractMethod<[arg0: BytesLike], [string], "view">; + getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[id: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "registerAndWrapETH2LD"): TypedContractMethod<[ + label: string, + wrappedOwner: AddressLike, + duration: BigNumberish, + resolver: AddressLike, + ownerControlledFuses: BigNumberish + ], [ + bigint + ], "nonpayable">; + getFunction(nameOrSignature: "registrar"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "renew"): TypedContractMethod<[ + labelHash: BigNumberish, + duration: BigNumberish + ], [ + bigint + ], "nonpayable">; + getFunction(nameOrSignature: "safeBatchTransferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + ids: BigNumberish[], + amounts: BigNumberish[], + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + id: BigNumberish, + amount: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setChildFuses"): TypedContractMethod<[ + parentNode: BytesLike, + labelhash: BytesLike, + fuses: BigNumberish, + expiry: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setFuses"): TypedContractMethod<[ + node: BytesLike, + ownerControlledFuses: BigNumberish + ], [ + bigint + ], "nonpayable">; + getFunction(nameOrSignature: "setMetadataService"): TypedContractMethod<[_metadataService: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "setRecord"): TypedContractMethod<[ + node: BytesLike, + owner: AddressLike, + resolver: AddressLike, + ttl: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setResolver"): TypedContractMethod<[ + node: BytesLike, + resolver: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setSubnodeOwner"): TypedContractMethod<[ + node: BytesLike, + label: string, + newOwner: AddressLike, + fuses: BigNumberish, + expiry: BigNumberish + ], [ + string + ], "nonpayable">; + getFunction(nameOrSignature: "setSubnodeRecord"): TypedContractMethod<[ + node: BytesLike, + label: string, + owner: AddressLike, + resolver: AddressLike, + ttl: BigNumberish, + fuses: BigNumberish, + expiry: BigNumberish + ], [ + string + ], "nonpayable">; + getFunction(nameOrSignature: "setTTL"): TypedContractMethod<[ + node: BytesLike, + ttl: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setUpgradeContract"): TypedContractMethod<[_upgradeAddress: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceID: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "unwrap"): TypedContractMethod<[ + node: BytesLike, + label: BytesLike, + owner: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "unwrapETH2LD"): TypedContractMethod<[ + label: BytesLike, + newRegistrant: AddressLike, + newController: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "upgrade"): TypedContractMethod<[ + name: BytesLike, + extraData: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "upgradeContract"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "uri"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "wrap"): TypedContractMethod<[ + name: BytesLike, + wrappedOwner: AddressLike, + resolver: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "wrapETH2LD"): TypedContractMethod<[ + label: string, + wrappedOwner: AddressLike, + ownerControlledFuses: BigNumberish, + resolver: AddressLike + ], [ + bigint + ], "nonpayable">; + getEvent(key: "ApprovalForAll"): TypedContractEvent; + getEvent(key: "ExpiryExtended"): TypedContractEvent; + getEvent(key: "FusesSet"): TypedContractEvent; + getEvent(key: "NameUnwrapped"): TypedContractEvent; + getEvent(key: "NameWrapped"): TypedContractEvent; + getEvent(key: "TransferBatch"): TypedContractEvent; + getEvent(key: "TransferSingle"): TypedContractEvent; + getEvent(key: "URI"): TypedContractEvent; + filters: { + "ApprovalForAll(address,address,bool)": TypedContractEvent; + ApprovalForAll: TypedContractEvent; + "ExpiryExtended(bytes32,uint64)": TypedContractEvent; + ExpiryExtended: TypedContractEvent; + "FusesSet(bytes32,uint32)": TypedContractEvent; + FusesSet: TypedContractEvent; + "NameUnwrapped(bytes32,address)": TypedContractEvent; + NameUnwrapped: TypedContractEvent; + "NameWrapped(bytes32,bytes,address,uint32,uint64)": TypedContractEvent; + NameWrapped: TypedContractEvent; + "TransferBatch(address,address,address,uint256[],uint256[])": TypedContractEvent; + TransferBatch: TypedContractEvent; + "TransferSingle(address,address,address,uint256,uint256)": TypedContractEvent; + TransferSingle: TypedContractEvent; + "URI(string,uint256)": TypedContractEvent; + URI: TypedContractEvent; + }; +} +//# sourceMappingURL=INameWrapper.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper.d.ts.map new file mode 100644 index 00000000..514d61d1 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"INameWrapper.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper.js b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade.d.ts new file mode 100644 index 00000000..b6a069db --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade.d.ts @@ -0,0 +1,51 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; +export interface INameWrapperUpgradeInterface extends Interface { + getFunction(nameOrSignature: "wrapFromUpgrade"): FunctionFragment; + encodeFunctionData(functionFragment: "wrapFromUpgrade", values: [ + BytesLike, + AddressLike, + BigNumberish, + BigNumberish, + AddressLike, + BytesLike + ]): string; + decodeFunctionResult(functionFragment: "wrapFromUpgrade", data: BytesLike): Result; +} +export interface INameWrapperUpgrade extends BaseContract { + connect(runner?: ContractRunner | null): INameWrapperUpgrade; + waitForDeployment(): Promise; + interface: INameWrapperUpgradeInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + wrapFromUpgrade: TypedContractMethod<[ + name: BytesLike, + wrappedOwner: AddressLike, + fuses: BigNumberish, + expiry: BigNumberish, + approved: AddressLike, + extraData: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "wrapFromUpgrade"): TypedContractMethod<[ + name: BytesLike, + wrappedOwner: AddressLike, + fuses: BigNumberish, + expiry: BigNumberish, + approved: AddressLike, + extraData: BytesLike + ], [ + void + ], "nonpayable">; + filters: {}; +} +//# sourceMappingURL=INameWrapperUpgrade.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade.d.ts.map new file mode 100644 index 00000000..6750838e --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"INameWrapperUpgrade.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade.js b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.d.ts new file mode 100644 index 00000000..3898ba2e --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.d.ts @@ -0,0 +1,848 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; +export interface NameWrapperInterface extends Interface { + getFunction(nameOrSignature: "_tokens" | "allFusesBurned" | "approve" | "balanceOf" | "balanceOfBatch" | "canExtendSubnames" | "canModifyName" | "controllers" | "ens" | "extendExpiry" | "getApproved" | "getData" | "isApprovedForAll" | "isWrapped(bytes32,bytes32)" | "isWrapped(bytes32)" | "metadataService" | "name" | "names" | "onERC721Received" | "owner" | "ownerOf" | "recoverFunds" | "registerAndWrapETH2LD" | "registrar" | "renew" | "renounceOwnership" | "safeBatchTransferFrom" | "safeTransferFrom" | "setApprovalForAll" | "setChildFuses" | "setController" | "setFuses" | "setMetadataService" | "setRecord" | "setResolver" | "setSubnodeOwner" | "setSubnodeRecord" | "setTTL" | "setUpgradeContract" | "supportsInterface" | "transferOwnership" | "unwrap" | "unwrapETH2LD" | "upgrade" | "upgradeContract" | "uri" | "wrap" | "wrapETH2LD"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "ControllerChanged" | "ExpiryExtended" | "FusesSet" | "NameUnwrapped" | "NameWrapped" | "OwnershipTransferred" | "TransferBatch" | "TransferSingle" | "URI"): EventFragment; + encodeFunctionData(functionFragment: "_tokens", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "allFusesBurned", values: [BytesLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "balanceOfBatch", values: [AddressLike[], BigNumberish[]]): string; + encodeFunctionData(functionFragment: "canExtendSubnames", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "canModifyName", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "controllers", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "ens", values?: undefined): string; + encodeFunctionData(functionFragment: "extendExpiry", values: [BytesLike, BytesLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "getData", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "isWrapped(bytes32,bytes32)", values: [BytesLike, BytesLike]): string; + encodeFunctionData(functionFragment: "isWrapped(bytes32)", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "metadataService", values?: undefined): string; + encodeFunctionData(functionFragment: "name", values?: undefined): string; + encodeFunctionData(functionFragment: "names", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "onERC721Received", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "recoverFunds", values: [AddressLike, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "registerAndWrapETH2LD", values: [string, AddressLike, BigNumberish, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "registrar", values?: undefined): string; + encodeFunctionData(functionFragment: "renew", values: [BigNumberish, BigNumberish]): string; + encodeFunctionData(functionFragment: "renounceOwnership", values?: undefined): string; + encodeFunctionData(functionFragment: "safeBatchTransferFrom", values: [ + AddressLike, + AddressLike, + BigNumberish[], + BigNumberish[], + BytesLike + ]): string; + encodeFunctionData(functionFragment: "safeTransferFrom", values: [AddressLike, AddressLike, BigNumberish, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; + encodeFunctionData(functionFragment: "setChildFuses", values: [BytesLike, BytesLike, BigNumberish, BigNumberish]): string; + encodeFunctionData(functionFragment: "setController", values: [AddressLike, boolean]): string; + encodeFunctionData(functionFragment: "setFuses", values: [BytesLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "setMetadataService", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "setRecord", values: [BytesLike, AddressLike, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "setResolver", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "setSubnodeOwner", values: [BytesLike, string, AddressLike, BigNumberish, BigNumberish]): string; + encodeFunctionData(functionFragment: "setSubnodeRecord", values: [ + BytesLike, + string, + AddressLike, + AddressLike, + BigNumberish, + BigNumberish, + BigNumberish + ]): string; + encodeFunctionData(functionFragment: "setTTL", values: [BytesLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "setUpgradeContract", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "transferOwnership", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "unwrap", values: [BytesLike, BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "unwrapETH2LD", values: [BytesLike, AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "upgrade", values: [BytesLike, BytesLike]): string; + encodeFunctionData(functionFragment: "upgradeContract", values?: undefined): string; + encodeFunctionData(functionFragment: "uri", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "wrap", values: [BytesLike, AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "wrapETH2LD", values: [string, AddressLike, BigNumberish, AddressLike]): string; + decodeFunctionResult(functionFragment: "_tokens", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "allFusesBurned", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOfBatch", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "canExtendSubnames", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "canModifyName", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "controllers", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ens", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "extendExpiry", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getData", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isWrapped(bytes32,bytes32)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isWrapped(bytes32)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "metadataService", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "names", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "onERC721Received", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "recoverFunds", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "registerAndWrapETH2LD", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "registrar", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renew", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceOwnership", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeBatchTransferFrom", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setChildFuses", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setController", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setFuses", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setMetadataService", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setRecord", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setResolver", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setSubnodeOwner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setSubnodeRecord", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setTTL", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setUpgradeContract", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "unwrap", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "unwrapETH2LD", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "upgrade", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "upgradeContract", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "uri", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "wrap", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "wrapETH2LD", data: BytesLike): Result; +} +export declare namespace ApprovalEvent { + type InputTuple = [ + owner: AddressLike, + approved: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [owner: string, approved: string, tokenId: bigint]; + interface OutputObject { + owner: string; + approved: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ApprovalForAllEvent { + type InputTuple = [ + account: AddressLike, + operator: AddressLike, + approved: boolean + ]; + type OutputTuple = [ + account: string, + operator: string, + approved: boolean + ]; + interface OutputObject { + account: string; + operator: string; + approved: boolean; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ControllerChangedEvent { + type InputTuple = [controller: AddressLike, active: boolean]; + type OutputTuple = [controller: string, active: boolean]; + interface OutputObject { + controller: string; + active: boolean; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ExpiryExtendedEvent { + type InputTuple = [node: BytesLike, expiry: BigNumberish]; + type OutputTuple = [node: string, expiry: bigint]; + interface OutputObject { + node: string; + expiry: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace FusesSetEvent { + type InputTuple = [node: BytesLike, fuses: BigNumberish]; + type OutputTuple = [node: string, fuses: bigint]; + interface OutputObject { + node: string; + fuses: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NameUnwrappedEvent { + type InputTuple = [node: BytesLike, owner: AddressLike]; + type OutputTuple = [node: string, owner: string]; + interface OutputObject { + node: string; + owner: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NameWrappedEvent { + type InputTuple = [ + node: BytesLike, + name: BytesLike, + owner: AddressLike, + fuses: BigNumberish, + expiry: BigNumberish + ]; + type OutputTuple = [ + node: string, + name: string, + owner: string, + fuses: bigint, + expiry: bigint + ]; + interface OutputObject { + node: string; + name: string; + owner: string; + fuses: bigint; + expiry: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace OwnershipTransferredEvent { + type InputTuple = [previousOwner: AddressLike, newOwner: AddressLike]; + type OutputTuple = [previousOwner: string, newOwner: string]; + interface OutputObject { + previousOwner: string; + newOwner: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferBatchEvent { + type InputTuple = [ + operator: AddressLike, + from: AddressLike, + to: AddressLike, + ids: BigNumberish[], + values: BigNumberish[] + ]; + type OutputTuple = [ + operator: string, + from: string, + to: string, + ids: bigint[], + values: bigint[] + ]; + interface OutputObject { + operator: string; + from: string; + to: string; + ids: bigint[]; + values: bigint[]; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferSingleEvent { + type InputTuple = [ + operator: AddressLike, + from: AddressLike, + to: AddressLike, + id: BigNumberish, + value: BigNumberish + ]; + type OutputTuple = [ + operator: string, + from: string, + to: string, + id: bigint, + value: bigint + ]; + interface OutputObject { + operator: string; + from: string; + to: string; + id: bigint; + value: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace URIEvent { + type InputTuple = [value: string, id: BigNumberish]; + type OutputTuple = [value: string, id: bigint]; + interface OutputObject { + value: string; + id: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface NameWrapper extends BaseContract { + connect(runner?: ContractRunner | null): NameWrapper; + waitForDeployment(): Promise; + interface: NameWrapperInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + _tokens: TypedContractMethod<[arg0: BigNumberish], [bigint], "view">; + allFusesBurned: TypedContractMethod<[ + node: BytesLike, + fuseMask: BigNumberish + ], [ + boolean + ], "view">; + approve: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + balanceOf: TypedContractMethod<[ + account: AddressLike, + id: BigNumberish + ], [ + bigint + ], "view">; + balanceOfBatch: TypedContractMethod<[ + accounts: AddressLike[], + ids: BigNumberish[] + ], [ + bigint[] + ], "view">; + canExtendSubnames: TypedContractMethod<[ + node: BytesLike, + addr: AddressLike + ], [ + boolean + ], "view">; + canModifyName: TypedContractMethod<[ + node: BytesLike, + addr: AddressLike + ], [ + boolean + ], "view">; + controllers: TypedContractMethod<[arg0: AddressLike], [boolean], "view">; + ens: TypedContractMethod<[], [string], "view">; + extendExpiry: TypedContractMethod<[ + parentNode: BytesLike, + labelhash: BytesLike, + expiry: BigNumberish + ], [ + bigint + ], "nonpayable">; + getApproved: TypedContractMethod<[id: BigNumberish], [string], "view">; + getData: TypedContractMethod<[ + id: BigNumberish + ], [ + [ + string, + bigint, + bigint + ] & { + owner: string; + fuses: bigint; + expiry: bigint; + } + ], "view">; + isApprovedForAll: TypedContractMethod<[ + account: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + "isWrapped(bytes32,bytes32)": TypedContractMethod<[ + parentNode: BytesLike, + labelhash: BytesLike + ], [ + boolean + ], "view">; + "isWrapped(bytes32)": TypedContractMethod<[ + node: BytesLike + ], [ + boolean + ], "view">; + metadataService: TypedContractMethod<[], [string], "view">; + name: TypedContractMethod<[], [string], "view">; + names: TypedContractMethod<[arg0: BytesLike], [string], "view">; + onERC721Received: TypedContractMethod<[ + to: AddressLike, + arg1: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + string + ], "nonpayable">; + owner: TypedContractMethod<[], [string], "view">; + ownerOf: TypedContractMethod<[id: BigNumberish], [string], "view">; + recoverFunds: TypedContractMethod<[ + _token: AddressLike, + _to: AddressLike, + _amount: BigNumberish + ], [ + void + ], "nonpayable">; + registerAndWrapETH2LD: TypedContractMethod<[ + label: string, + wrappedOwner: AddressLike, + duration: BigNumberish, + resolver: AddressLike, + ownerControlledFuses: BigNumberish + ], [ + bigint + ], "nonpayable">; + registrar: TypedContractMethod<[], [string], "view">; + renew: TypedContractMethod<[ + tokenId: BigNumberish, + duration: BigNumberish + ], [ + bigint + ], "nonpayable">; + renounceOwnership: TypedContractMethod<[], [void], "nonpayable">; + safeBatchTransferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + ids: BigNumberish[], + amounts: BigNumberish[], + data: BytesLike + ], [ + void + ], "nonpayable">; + safeTransferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + id: BigNumberish, + amount: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + setApprovalForAll: TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + setChildFuses: TypedContractMethod<[ + parentNode: BytesLike, + labelhash: BytesLike, + fuses: BigNumberish, + expiry: BigNumberish + ], [ + void + ], "nonpayable">; + setController: TypedContractMethod<[ + controller: AddressLike, + active: boolean + ], [ + void + ], "nonpayable">; + setFuses: TypedContractMethod<[ + node: BytesLike, + ownerControlledFuses: BigNumberish + ], [ + bigint + ], "nonpayable">; + setMetadataService: TypedContractMethod<[ + _metadataService: AddressLike + ], [ + void + ], "nonpayable">; + setRecord: TypedContractMethod<[ + node: BytesLike, + owner: AddressLike, + resolver: AddressLike, + ttl: BigNumberish + ], [ + void + ], "nonpayable">; + setResolver: TypedContractMethod<[ + node: BytesLike, + resolver: AddressLike + ], [ + void + ], "nonpayable">; + setSubnodeOwner: TypedContractMethod<[ + parentNode: BytesLike, + label: string, + owner: AddressLike, + fuses: BigNumberish, + expiry: BigNumberish + ], [ + string + ], "nonpayable">; + setSubnodeRecord: TypedContractMethod<[ + parentNode: BytesLike, + label: string, + owner: AddressLike, + resolver: AddressLike, + ttl: BigNumberish, + fuses: BigNumberish, + expiry: BigNumberish + ], [ + string + ], "nonpayable">; + setTTL: TypedContractMethod<[ + node: BytesLike, + ttl: BigNumberish + ], [ + void + ], "nonpayable">; + setUpgradeContract: TypedContractMethod<[ + _upgradeAddress: AddressLike + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + transferOwnership: TypedContractMethod<[ + newOwner: AddressLike + ], [ + void + ], "nonpayable">; + unwrap: TypedContractMethod<[ + parentNode: BytesLike, + labelhash: BytesLike, + controller: AddressLike + ], [ + void + ], "nonpayable">; + unwrapETH2LD: TypedContractMethod<[ + labelhash: BytesLike, + registrant: AddressLike, + controller: AddressLike + ], [ + void + ], "nonpayable">; + upgrade: TypedContractMethod<[ + name: BytesLike, + extraData: BytesLike + ], [ + void + ], "nonpayable">; + upgradeContract: TypedContractMethod<[], [string], "view">; + uri: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + wrap: TypedContractMethod<[ + name: BytesLike, + wrappedOwner: AddressLike, + resolver: AddressLike + ], [ + void + ], "nonpayable">; + wrapETH2LD: TypedContractMethod<[ + label: string, + wrappedOwner: AddressLike, + ownerControlledFuses: BigNumberish, + resolver: AddressLike + ], [ + bigint + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "_tokens"): TypedContractMethod<[arg0: BigNumberish], [bigint], "view">; + getFunction(nameOrSignature: "allFusesBurned"): TypedContractMethod<[ + node: BytesLike, + fuseMask: BigNumberish + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "approve"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[ + account: AddressLike, + id: BigNumberish + ], [ + bigint + ], "view">; + getFunction(nameOrSignature: "balanceOfBatch"): TypedContractMethod<[ + accounts: AddressLike[], + ids: BigNumberish[] + ], [ + bigint[] + ], "view">; + getFunction(nameOrSignature: "canExtendSubnames"): TypedContractMethod<[ + node: BytesLike, + addr: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "canModifyName"): TypedContractMethod<[ + node: BytesLike, + addr: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "controllers"): TypedContractMethod<[arg0: AddressLike], [boolean], "view">; + getFunction(nameOrSignature: "ens"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "extendExpiry"): TypedContractMethod<[ + parentNode: BytesLike, + labelhash: BytesLike, + expiry: BigNumberish + ], [ + bigint + ], "nonpayable">; + getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[id: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "getData"): TypedContractMethod<[ + id: BigNumberish + ], [ + [ + string, + bigint, + bigint + ] & { + owner: string; + fuses: bigint; + expiry: bigint; + } + ], "view">; + getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ + account: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "isWrapped(bytes32,bytes32)"): TypedContractMethod<[ + parentNode: BytesLike, + labelhash: BytesLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "isWrapped(bytes32)"): TypedContractMethod<[node: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "metadataService"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "names"): TypedContractMethod<[arg0: BytesLike], [string], "view">; + getFunction(nameOrSignature: "onERC721Received"): TypedContractMethod<[ + to: AddressLike, + arg1: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + string + ], "nonpayable">; + getFunction(nameOrSignature: "owner"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[id: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "recoverFunds"): TypedContractMethod<[ + _token: AddressLike, + _to: AddressLike, + _amount: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "registerAndWrapETH2LD"): TypedContractMethod<[ + label: string, + wrappedOwner: AddressLike, + duration: BigNumberish, + resolver: AddressLike, + ownerControlledFuses: BigNumberish + ], [ + bigint + ], "nonpayable">; + getFunction(nameOrSignature: "registrar"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "renew"): TypedContractMethod<[ + tokenId: BigNumberish, + duration: BigNumberish + ], [ + bigint + ], "nonpayable">; + getFunction(nameOrSignature: "renounceOwnership"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "safeBatchTransferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + ids: BigNumberish[], + amounts: BigNumberish[], + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + id: BigNumberish, + amount: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setChildFuses"): TypedContractMethod<[ + parentNode: BytesLike, + labelhash: BytesLike, + fuses: BigNumberish, + expiry: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setController"): TypedContractMethod<[ + controller: AddressLike, + active: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setFuses"): TypedContractMethod<[ + node: BytesLike, + ownerControlledFuses: BigNumberish + ], [ + bigint + ], "nonpayable">; + getFunction(nameOrSignature: "setMetadataService"): TypedContractMethod<[_metadataService: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "setRecord"): TypedContractMethod<[ + node: BytesLike, + owner: AddressLike, + resolver: AddressLike, + ttl: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setResolver"): TypedContractMethod<[ + node: BytesLike, + resolver: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setSubnodeOwner"): TypedContractMethod<[ + parentNode: BytesLike, + label: string, + owner: AddressLike, + fuses: BigNumberish, + expiry: BigNumberish + ], [ + string + ], "nonpayable">; + getFunction(nameOrSignature: "setSubnodeRecord"): TypedContractMethod<[ + parentNode: BytesLike, + label: string, + owner: AddressLike, + resolver: AddressLike, + ttl: BigNumberish, + fuses: BigNumberish, + expiry: BigNumberish + ], [ + string + ], "nonpayable">; + getFunction(nameOrSignature: "setTTL"): TypedContractMethod<[ + node: BytesLike, + ttl: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setUpgradeContract"): TypedContractMethod<[_upgradeAddress: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "transferOwnership"): TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "unwrap"): TypedContractMethod<[ + parentNode: BytesLike, + labelhash: BytesLike, + controller: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "unwrapETH2LD"): TypedContractMethod<[ + labelhash: BytesLike, + registrant: AddressLike, + controller: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "upgrade"): TypedContractMethod<[ + name: BytesLike, + extraData: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "upgradeContract"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "uri"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "wrap"): TypedContractMethod<[ + name: BytesLike, + wrappedOwner: AddressLike, + resolver: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "wrapETH2LD"): TypedContractMethod<[ + label: string, + wrappedOwner: AddressLike, + ownerControlledFuses: BigNumberish, + resolver: AddressLike + ], [ + bigint + ], "nonpayable">; + getEvent(key: "Approval"): TypedContractEvent; + getEvent(key: "ApprovalForAll"): TypedContractEvent; + getEvent(key: "ControllerChanged"): TypedContractEvent; + getEvent(key: "ExpiryExtended"): TypedContractEvent; + getEvent(key: "FusesSet"): TypedContractEvent; + getEvent(key: "NameUnwrapped"): TypedContractEvent; + getEvent(key: "NameWrapped"): TypedContractEvent; + getEvent(key: "OwnershipTransferred"): TypedContractEvent; + getEvent(key: "TransferBatch"): TypedContractEvent; + getEvent(key: "TransferSingle"): TypedContractEvent; + getEvent(key: "URI"): TypedContractEvent; + filters: { + "Approval(address,address,uint256)": TypedContractEvent; + Approval: TypedContractEvent; + "ApprovalForAll(address,address,bool)": TypedContractEvent; + ApprovalForAll: TypedContractEvent; + "ControllerChanged(address,bool)": TypedContractEvent; + ControllerChanged: TypedContractEvent; + "ExpiryExtended(bytes32,uint64)": TypedContractEvent; + ExpiryExtended: TypedContractEvent; + "FusesSet(bytes32,uint32)": TypedContractEvent; + FusesSet: TypedContractEvent; + "NameUnwrapped(bytes32,address)": TypedContractEvent; + NameUnwrapped: TypedContractEvent; + "NameWrapped(bytes32,bytes,address,uint32,uint64)": TypedContractEvent; + NameWrapped: TypedContractEvent; + "OwnershipTransferred(address,address)": TypedContractEvent; + OwnershipTransferred: TypedContractEvent; + "TransferBatch(address,address,address,uint256[],uint256[])": TypedContractEvent; + TransferBatch: TypedContractEvent; + "TransferSingle(address,address,address,uint256,uint256)": TypedContractEvent; + TransferSingle: TypedContractEvent; + "URI(string,uint256)": TypedContractEvent; + URI: TypedContractEvent; + }; +} +//# sourceMappingURL=NameWrapper.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.d.ts.map new file mode 100644 index 00000000..28f582e9 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"NameWrapper.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.js b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/index.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/index.d.ts new file mode 100644 index 00000000..ee947305 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/index.d.ts @@ -0,0 +1,7 @@ +export type { Controllable } from "./Controllable"; +export type { ERC1155Fuse } from "./ERC1155Fuse"; +export type { IMetadataService } from "./IMetadataService"; +export type { INameWrapper } from "./INameWrapper"; +export type { INameWrapperUpgrade } from "./INameWrapperUpgrade"; +export type { NameWrapper } from "./NameWrapper"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/index.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/index.d.ts.map new file mode 100644 index 00000000..d33c67b1 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/wrapper/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACnD,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,YAAY,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACnD,YAAY,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/index.js b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/index.d.ts b/dist/types/@ensdomains/ens-contracts/index.d.ts new file mode 100644 index 00000000..d16eef53 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/index.d.ts @@ -0,0 +1,3 @@ +import type * as contracts from "./contracts"; +export type { contracts }; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/index.d.ts.map b/dist/types/@ensdomains/ens-contracts/index.d.ts.map new file mode 100644 index 00000000..066b5ec4 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../types/@ensdomains/ens-contracts/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,SAAS,MAAM,aAAa,CAAC;AAC9C,YAAY,EAAE,SAAS,EAAE,CAAC"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/index.js b/dist/types/@ensdomains/ens-contracts/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/ens-contracts/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/index.d.ts b/dist/types/@ensdomains/index.d.ts new file mode 100644 index 00000000..7a42dc56 --- /dev/null +++ b/dist/types/@ensdomains/index.d.ts @@ -0,0 +1,3 @@ +import type * as ensContracts from "./ens-contracts"; +export type { ensContracts }; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/index.d.ts.map b/dist/types/@ensdomains/index.d.ts.map new file mode 100644 index 00000000..988cff7b --- /dev/null +++ b/dist/types/@ensdomains/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../types/@ensdomains/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,YAAY,MAAM,iBAAiB,CAAC;AACrD,YAAY,EAAE,YAAY,EAAE,CAAC"} \ No newline at end of file diff --git a/dist/types/@ensdomains/index.js b/dist/types/@ensdomains/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@ensdomains/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-2.3/access/index.d.ts b/dist/types/@openzeppelin/contracts-2.3/access/index.d.ts new file mode 100644 index 00000000..7720710c --- /dev/null +++ b/dist/types/@openzeppelin/contracts-2.3/access/index.d.ts @@ -0,0 +1,3 @@ +import type * as roles from "./roles"; +export type { roles }; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/access/index.d.ts.map b/dist/types/@openzeppelin/contracts-2.3/access/index.d.ts.map new file mode 100644 index 00000000..7fe39bde --- /dev/null +++ b/dist/types/@openzeppelin/contracts-2.3/access/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/@openzeppelin/contracts-2.3/access/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,KAAK,MAAM,SAAS,CAAC;AACtC,YAAY,EAAE,KAAK,EAAE,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/access/index.js b/dist/types/@openzeppelin/contracts-2.3/access/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-2.3/access/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-2.3/access/roles/MinterRole.d.ts b/dist/types/@openzeppelin/contracts-2.3/access/roles/MinterRole.d.ts new file mode 100644 index 00000000..af57d923 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-2.3/access/roles/MinterRole.d.ts @@ -0,0 +1,64 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; +export interface MinterRoleInterface extends Interface { + getFunction(nameOrSignature: "addMinter" | "isMinter" | "renounceMinter"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "MinterAdded" | "MinterRemoved"): EventFragment; + encodeFunctionData(functionFragment: "addMinter", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "isMinter", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "renounceMinter", values?: undefined): string; + decodeFunctionResult(functionFragment: "addMinter", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isMinter", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceMinter", data: BytesLike): Result; +} +export declare namespace MinterAddedEvent { + type InputTuple = [account: AddressLike]; + type OutputTuple = [account: string]; + interface OutputObject { + account: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace MinterRemovedEvent { + type InputTuple = [account: AddressLike]; + type OutputTuple = [account: string]; + interface OutputObject { + account: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface MinterRole extends BaseContract { + connect(runner?: ContractRunner | null): MinterRole; + waitForDeployment(): Promise; + interface: MinterRoleInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + addMinter: TypedContractMethod<[account: AddressLike], [void], "nonpayable">; + isMinter: TypedContractMethod<[account: AddressLike], [boolean], "view">; + renounceMinter: TypedContractMethod<[], [void], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "addMinter"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "isMinter"): TypedContractMethod<[account: AddressLike], [boolean], "view">; + getFunction(nameOrSignature: "renounceMinter"): TypedContractMethod<[], [void], "nonpayable">; + getEvent(key: "MinterAdded"): TypedContractEvent; + getEvent(key: "MinterRemoved"): TypedContractEvent; + filters: { + "MinterAdded(address)": TypedContractEvent; + MinterAdded: TypedContractEvent; + "MinterRemoved(address)": TypedContractEvent; + MinterRemoved: TypedContractEvent; + }; +} +//# sourceMappingURL=MinterRole.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/access/roles/MinterRole.d.ts.map b/dist/types/@openzeppelin/contracts-2.3/access/roles/MinterRole.d.ts.map new file mode 100644 index 00000000..2fa7c7ce --- /dev/null +++ b/dist/types/@openzeppelin/contracts-2.3/access/roles/MinterRole.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"MinterRole.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts-2.3/access/roles/MinterRole.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/access/roles/MinterRole.js b/dist/types/@openzeppelin/contracts-2.3/access/roles/MinterRole.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-2.3/access/roles/MinterRole.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole.d.ts b/dist/types/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole.d.ts new file mode 100644 index 00000000..cf5e81d0 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole.d.ts @@ -0,0 +1,72 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; +export interface WhitelistAdminRoleInterface extends Interface { + getFunction(nameOrSignature: "addWhitelistAdmin" | "isWhitelistAdmin" | "renounceWhitelistAdmin"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "WhitelistAdminAdded" | "WhitelistAdminRemoved"): EventFragment; + encodeFunctionData(functionFragment: "addWhitelistAdmin", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "isWhitelistAdmin", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "renounceWhitelistAdmin", values?: undefined): string; + decodeFunctionResult(functionFragment: "addWhitelistAdmin", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isWhitelistAdmin", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceWhitelistAdmin", data: BytesLike): Result; +} +export declare namespace WhitelistAdminAddedEvent { + type InputTuple = [account: AddressLike]; + type OutputTuple = [account: string]; + interface OutputObject { + account: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace WhitelistAdminRemovedEvent { + type InputTuple = [account: AddressLike]; + type OutputTuple = [account: string]; + interface OutputObject { + account: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface WhitelistAdminRole extends BaseContract { + connect(runner?: ContractRunner | null): WhitelistAdminRole; + waitForDeployment(): Promise; + interface: WhitelistAdminRoleInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + addWhitelistAdmin: TypedContractMethod<[ + account: AddressLike + ], [ + void + ], "nonpayable">; + isWhitelistAdmin: TypedContractMethod<[ + account: AddressLike + ], [ + boolean + ], "view">; + renounceWhitelistAdmin: TypedContractMethod<[], [void], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "addWhitelistAdmin"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "isWhitelistAdmin"): TypedContractMethod<[account: AddressLike], [boolean], "view">; + getFunction(nameOrSignature: "renounceWhitelistAdmin"): TypedContractMethod<[], [void], "nonpayable">; + getEvent(key: "WhitelistAdminAdded"): TypedContractEvent; + getEvent(key: "WhitelistAdminRemoved"): TypedContractEvent; + filters: { + "WhitelistAdminAdded(address)": TypedContractEvent; + WhitelistAdminAdded: TypedContractEvent; + "WhitelistAdminRemoved(address)": TypedContractEvent; + WhitelistAdminRemoved: TypedContractEvent; + }; +} +//# sourceMappingURL=WhitelistAdminRole.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole.d.ts.map b/dist/types/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole.d.ts.map new file mode 100644 index 00000000..87480d2f --- /dev/null +++ b/dist/types/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"WhitelistAdminRole.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole.js b/dist/types/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole.d.ts b/dist/types/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole.d.ts new file mode 100644 index 00000000..1cd23ed9 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole.d.ts @@ -0,0 +1,124 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; +export interface WhitelistedRoleInterface extends Interface { + getFunction(nameOrSignature: "addWhitelistAdmin" | "addWhitelisted" | "isWhitelistAdmin" | "isWhitelisted" | "removeWhitelisted" | "renounceWhitelistAdmin" | "renounceWhitelisted"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "WhitelistAdminAdded" | "WhitelistAdminRemoved" | "WhitelistedAdded" | "WhitelistedRemoved"): EventFragment; + encodeFunctionData(functionFragment: "addWhitelistAdmin", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "addWhitelisted", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "isWhitelistAdmin", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "isWhitelisted", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "removeWhitelisted", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "renounceWhitelistAdmin", values?: undefined): string; + encodeFunctionData(functionFragment: "renounceWhitelisted", values?: undefined): string; + decodeFunctionResult(functionFragment: "addWhitelistAdmin", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "addWhitelisted", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isWhitelistAdmin", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isWhitelisted", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "removeWhitelisted", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceWhitelistAdmin", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceWhitelisted", data: BytesLike): Result; +} +export declare namespace WhitelistAdminAddedEvent { + type InputTuple = [account: AddressLike]; + type OutputTuple = [account: string]; + interface OutputObject { + account: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace WhitelistAdminRemovedEvent { + type InputTuple = [account: AddressLike]; + type OutputTuple = [account: string]; + interface OutputObject { + account: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace WhitelistedAddedEvent { + type InputTuple = [account: AddressLike]; + type OutputTuple = [account: string]; + interface OutputObject { + account: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace WhitelistedRemovedEvent { + type InputTuple = [account: AddressLike]; + type OutputTuple = [account: string]; + interface OutputObject { + account: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface WhitelistedRole extends BaseContract { + connect(runner?: ContractRunner | null): WhitelistedRole; + waitForDeployment(): Promise; + interface: WhitelistedRoleInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + addWhitelistAdmin: TypedContractMethod<[ + account: AddressLike + ], [ + void + ], "nonpayable">; + addWhitelisted: TypedContractMethod<[ + account: AddressLike + ], [ + void + ], "nonpayable">; + isWhitelistAdmin: TypedContractMethod<[ + account: AddressLike + ], [ + boolean + ], "view">; + isWhitelisted: TypedContractMethod<[account: AddressLike], [boolean], "view">; + removeWhitelisted: TypedContractMethod<[ + account: AddressLike + ], [ + void + ], "nonpayable">; + renounceWhitelistAdmin: TypedContractMethod<[], [void], "nonpayable">; + renounceWhitelisted: TypedContractMethod<[], [void], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "addWhitelistAdmin"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "addWhitelisted"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "isWhitelistAdmin"): TypedContractMethod<[account: AddressLike], [boolean], "view">; + getFunction(nameOrSignature: "isWhitelisted"): TypedContractMethod<[account: AddressLike], [boolean], "view">; + getFunction(nameOrSignature: "removeWhitelisted"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "renounceWhitelistAdmin"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "renounceWhitelisted"): TypedContractMethod<[], [void], "nonpayable">; + getEvent(key: "WhitelistAdminAdded"): TypedContractEvent; + getEvent(key: "WhitelistAdminRemoved"): TypedContractEvent; + getEvent(key: "WhitelistedAdded"): TypedContractEvent; + getEvent(key: "WhitelistedRemoved"): TypedContractEvent; + filters: { + "WhitelistAdminAdded(address)": TypedContractEvent; + WhitelistAdminAdded: TypedContractEvent; + "WhitelistAdminRemoved(address)": TypedContractEvent; + WhitelistAdminRemoved: TypedContractEvent; + "WhitelistedAdded(address)": TypedContractEvent; + WhitelistedAdded: TypedContractEvent; + "WhitelistedRemoved(address)": TypedContractEvent; + WhitelistedRemoved: TypedContractEvent; + }; +} +//# sourceMappingURL=WhitelistedRole.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole.d.ts.map b/dist/types/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole.d.ts.map new file mode 100644 index 00000000..5745d31a --- /dev/null +++ b/dist/types/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"WhitelistedRole.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole.js b/dist/types/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-2.3/access/roles/index.d.ts b/dist/types/@openzeppelin/contracts-2.3/access/roles/index.d.ts new file mode 100644 index 00000000..690527b5 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-2.3/access/roles/index.d.ts @@ -0,0 +1,4 @@ +export type { MinterRole } from "./MinterRole"; +export type { WhitelistAdminRole } from "./WhitelistAdminRole"; +export type { WhitelistedRole } from "./WhitelistedRole"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/access/roles/index.d.ts.map b/dist/types/@openzeppelin/contracts-2.3/access/roles/index.d.ts.map new file mode 100644 index 00000000..0918c12e --- /dev/null +++ b/dist/types/@openzeppelin/contracts-2.3/access/roles/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts-2.3/access/roles/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,YAAY,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,YAAY,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/access/roles/index.js b/dist/types/@openzeppelin/contracts-2.3/access/roles/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-2.3/access/roles/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-2.3/index.d.ts b/dist/types/@openzeppelin/contracts-2.3/index.d.ts new file mode 100644 index 00000000..3eebab4d --- /dev/null +++ b/dist/types/@openzeppelin/contracts-2.3/index.d.ts @@ -0,0 +1,7 @@ +import type * as access from "./access"; +export type { access }; +import type * as introspection from "./introspection"; +export type { introspection }; +import type * as token from "./token"; +export type { token }; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/index.d.ts.map b/dist/types/@openzeppelin/contracts-2.3/index.d.ts.map new file mode 100644 index 00000000..a343ebaa --- /dev/null +++ b/dist/types/@openzeppelin/contracts-2.3/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../types/@openzeppelin/contracts-2.3/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,MAAM,MAAM,UAAU,CAAC;AACxC,YAAY,EAAE,MAAM,EAAE,CAAC;AACvB,OAAO,KAAK,KAAK,aAAa,MAAM,iBAAiB,CAAC;AACtD,YAAY,EAAE,aAAa,EAAE,CAAC;AAC9B,OAAO,KAAK,KAAK,KAAK,MAAM,SAAS,CAAC;AACtC,YAAY,EAAE,KAAK,EAAE,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/index.js b/dist/types/@openzeppelin/contracts-2.3/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-2.3/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-2.3/introspection/ERC165.d.ts b/dist/types/@openzeppelin/contracts-2.3/introspection/ERC165.d.ts new file mode 100644 index 00000000..0baebca2 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-2.3/introspection/ERC165.d.ts @@ -0,0 +1,30 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../common"; +export interface ERC165Interface extends Interface { + getFunction(nameOrSignature: "supportsInterface"): FunctionFragment; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; +} +export interface ERC165 extends BaseContract { + connect(runner?: ContractRunner | null): ERC165; + waitForDeployment(): Promise; + interface: ERC165Interface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + filters: {}; +} +//# sourceMappingURL=ERC165.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/introspection/ERC165.d.ts.map b/dist/types/@openzeppelin/contracts-2.3/introspection/ERC165.d.ts.map new file mode 100644 index 00000000..1294b55b --- /dev/null +++ b/dist/types/@openzeppelin/contracts-2.3/introspection/ERC165.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ERC165.d.ts","sourceRoot":"","sources":["../../../../../types/@openzeppelin/contracts-2.3/introspection/ERC165.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/introspection/ERC165.js b/dist/types/@openzeppelin/contracts-2.3/introspection/ERC165.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-2.3/introspection/ERC165.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-2.3/introspection/IERC165.d.ts b/dist/types/@openzeppelin/contracts-2.3/introspection/IERC165.d.ts new file mode 100644 index 00000000..f83ccf87 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-2.3/introspection/IERC165.d.ts @@ -0,0 +1,30 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../common"; +export interface IERC165Interface extends Interface { + getFunction(nameOrSignature: "supportsInterface"): FunctionFragment; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; +} +export interface IERC165 extends BaseContract { + connect(runner?: ContractRunner | null): IERC165; + waitForDeployment(): Promise; + interface: IERC165Interface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + filters: {}; +} +//# sourceMappingURL=IERC165.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/introspection/IERC165.d.ts.map b/dist/types/@openzeppelin/contracts-2.3/introspection/IERC165.d.ts.map new file mode 100644 index 00000000..200f54d4 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-2.3/introspection/IERC165.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC165.d.ts","sourceRoot":"","sources":["../../../../../types/@openzeppelin/contracts-2.3/introspection/IERC165.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,aAAa,EACb,mBAAmB,EACpB,MAAM,iBAAiB,CAAC;AAEzB,MAAM,WAAW,gBAAiB,SAAQ,SAAS;IACjD,WAAW,CAAC,eAAe,EAAE,mBAAmB,GAAG,gBAAgB,CAAC;IAEpE,kBAAkB,CAChB,gBAAgB,EAAE,mBAAmB,EACrC,MAAM,EAAE,CAAC,SAAS,CAAC,GAClB,MAAM,CAAC;IAEV,oBAAoB,CAClB,gBAAgB,EAAE,mBAAmB,EACrC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;CACX;AAED,MAAM,WAAW,OAAQ,SAAQ,YAAY;IAC3C,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,OAAO,CAAC;IACjD,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,gBAAgB,CAAC;IAE5B,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,iBAAiB,EAAE,mBAAmB,CACpC;QAAC,WAAW,EAAE,SAAS;KAAC,EACxB;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,WAAW,CACT,eAAe,EAAE,mBAAmB,GACnC,mBAAmB,CAAC,CAAC,WAAW,EAAE,SAAS,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IAEpE,OAAO,EAAE,EAAE,CAAC;CACb"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/introspection/IERC165.js b/dist/types/@openzeppelin/contracts-2.3/introspection/IERC165.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-2.3/introspection/IERC165.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-2.3/introspection/index.d.ts b/dist/types/@openzeppelin/contracts-2.3/introspection/index.d.ts new file mode 100644 index 00000000..1d48adcb --- /dev/null +++ b/dist/types/@openzeppelin/contracts-2.3/introspection/index.d.ts @@ -0,0 +1,3 @@ +export type { ERC165 } from "./ERC165"; +export type { IERC165 } from "./IERC165"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/introspection/index.d.ts.map b/dist/types/@openzeppelin/contracts-2.3/introspection/index.d.ts.map new file mode 100644 index 00000000..280a540a --- /dev/null +++ b/dist/types/@openzeppelin/contracts-2.3/introspection/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/@openzeppelin/contracts-2.3/introspection/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AACvC,YAAY,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/introspection/index.js b/dist/types/@openzeppelin/contracts-2.3/introspection/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-2.3/introspection/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-2.3/token/ERC721/ERC721.d.ts b/dist/types/@openzeppelin/contracts-2.3/token/ERC721/ERC721.d.ts new file mode 100644 index 00000000..3e471a47 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-2.3/token/ERC721/ERC721.d.ts @@ -0,0 +1,200 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; +export interface ERC721Interface extends Interface { + getFunction(nameOrSignature: "approve" | "balanceOf" | "getApproved" | "isApprovedForAll" | "ownerOf" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "setApprovalForAll" | "supportsInterface" | "transferFrom"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "Transfer"): EventFragment; + encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; + decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; +} +export declare namespace ApprovalEvent { + type InputTuple = [ + owner: AddressLike, + approved: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [owner: string, approved: string, tokenId: bigint]; + interface OutputObject { + owner: string; + approved: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ApprovalForAllEvent { + type InputTuple = [ + owner: AddressLike, + operator: AddressLike, + approved: boolean + ]; + type OutputTuple = [ + owner: string, + operator: string, + approved: boolean + ]; + interface OutputObject { + owner: string; + operator: string; + approved: boolean; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferEvent { + type InputTuple = [ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [from: string, to: string, tokenId: bigint]; + interface OutputObject { + from: string; + to: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface ERC721 extends BaseContract { + connect(runner?: ContractRunner | null): ERC721; + waitForDeployment(): Promise; + interface: ERC721Interface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + approve: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; + getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + isApprovedForAll: TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + _data: BytesLike + ], [ + void + ], "nonpayable">; + setApprovalForAll: TypedContractMethod<[ + to: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + transferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "approve"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; + getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + _data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ + to: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getEvent(key: "Approval"): TypedContractEvent; + getEvent(key: "ApprovalForAll"): TypedContractEvent; + getEvent(key: "Transfer"): TypedContractEvent; + filters: { + "Approval(address,address,uint256)": TypedContractEvent; + Approval: TypedContractEvent; + "ApprovalForAll(address,address,bool)": TypedContractEvent; + ApprovalForAll: TypedContractEvent; + "Transfer(address,address,uint256)": TypedContractEvent; + Transfer: TypedContractEvent; + }; +} +//# sourceMappingURL=ERC721.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/token/ERC721/ERC721.d.ts.map b/dist/types/@openzeppelin/contracts-2.3/token/ERC721/ERC721.d.ts.map new file mode 100644 index 00000000..36ba91d7 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-2.3/token/ERC721/ERC721.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ERC721.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts-2.3/token/ERC721/ERC721.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/token/ERC721/ERC721.js b/dist/types/@openzeppelin/contracts-2.3/token/ERC721/ERC721.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-2.3/token/ERC721/ERC721.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable.d.ts b/dist/types/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable.d.ts new file mode 100644 index 00000000..8655cca8 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable.d.ts @@ -0,0 +1,204 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; +export interface ERC721BurnableInterface extends Interface { + getFunction(nameOrSignature: "approve" | "balanceOf" | "burn" | "getApproved" | "isApprovedForAll" | "ownerOf" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "setApprovalForAll" | "supportsInterface" | "transferFrom"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "Transfer"): EventFragment; + encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "burn", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; + decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "burn", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; +} +export declare namespace ApprovalEvent { + type InputTuple = [ + owner: AddressLike, + approved: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [owner: string, approved: string, tokenId: bigint]; + interface OutputObject { + owner: string; + approved: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ApprovalForAllEvent { + type InputTuple = [ + owner: AddressLike, + operator: AddressLike, + approved: boolean + ]; + type OutputTuple = [ + owner: string, + operator: string, + approved: boolean + ]; + interface OutputObject { + owner: string; + operator: string; + approved: boolean; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferEvent { + type InputTuple = [ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [from: string, to: string, tokenId: bigint]; + interface OutputObject { + from: string; + to: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface ERC721Burnable extends BaseContract { + connect(runner?: ContractRunner | null): ERC721Burnable; + waitForDeployment(): Promise; + interface: ERC721BurnableInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + approve: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; + burn: TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; + getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + isApprovedForAll: TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + _data: BytesLike + ], [ + void + ], "nonpayable">; + setApprovalForAll: TypedContractMethod<[ + to: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + transferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "approve"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; + getFunction(nameOrSignature: "burn"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; + getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + _data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ + to: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getEvent(key: "Approval"): TypedContractEvent; + getEvent(key: "ApprovalForAll"): TypedContractEvent; + getEvent(key: "Transfer"): TypedContractEvent; + filters: { + "Approval(address,address,uint256)": TypedContractEvent; + Approval: TypedContractEvent; + "ApprovalForAll(address,address,bool)": TypedContractEvent; + ApprovalForAll: TypedContractEvent; + "Transfer(address,address,uint256)": TypedContractEvent; + Transfer: TypedContractEvent; + }; +} +//# sourceMappingURL=ERC721Burnable.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable.d.ts.map b/dist/types/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable.d.ts.map new file mode 100644 index 00000000..7c74d460 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ERC721Burnable.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable.js b/dist/types/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721.d.ts b/dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721.d.ts new file mode 100644 index 00000000..b2f0a5c7 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721.d.ts @@ -0,0 +1,200 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; +export interface IERC721Interface extends Interface { + getFunction(nameOrSignature: "approve" | "balanceOf" | "getApproved" | "isApprovedForAll" | "ownerOf" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "setApprovalForAll" | "supportsInterface" | "transferFrom"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "Transfer"): EventFragment; + encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; + decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; +} +export declare namespace ApprovalEvent { + type InputTuple = [ + owner: AddressLike, + approved: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [owner: string, approved: string, tokenId: bigint]; + interface OutputObject { + owner: string; + approved: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ApprovalForAllEvent { + type InputTuple = [ + owner: AddressLike, + operator: AddressLike, + approved: boolean + ]; + type OutputTuple = [ + owner: string, + operator: string, + approved: boolean + ]; + interface OutputObject { + owner: string; + operator: string; + approved: boolean; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferEvent { + type InputTuple = [ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [from: string, to: string, tokenId: bigint]; + interface OutputObject { + from: string; + to: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface IERC721 extends BaseContract { + connect(runner?: ContractRunner | null): IERC721; + waitForDeployment(): Promise; + interface: IERC721Interface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + approve: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; + getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + isApprovedForAll: TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + setApprovalForAll: TypedContractMethod<[ + operator: AddressLike, + _approved: boolean + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + transferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "approve"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; + getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ + operator: AddressLike, + _approved: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getEvent(key: "Approval"): TypedContractEvent; + getEvent(key: "ApprovalForAll"): TypedContractEvent; + getEvent(key: "Transfer"): TypedContractEvent; + filters: { + "Approval(address,address,uint256)": TypedContractEvent; + Approval: TypedContractEvent; + "ApprovalForAll(address,address,bool)": TypedContractEvent; + ApprovalForAll: TypedContractEvent; + "Transfer(address,address,uint256)": TypedContractEvent; + Transfer: TypedContractEvent; + }; +} +//# sourceMappingURL=IERC721.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721.d.ts.map b/dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721.d.ts.map new file mode 100644 index 00000000..04580a19 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC721.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts-2.3/token/ERC721/IERC721.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721.js b/dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata.d.ts b/dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata.d.ts new file mode 100644 index 00000000..e0f22fc8 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata.d.ts @@ -0,0 +1,212 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; +export interface IERC721MetadataInterface extends Interface { + getFunction(nameOrSignature: "approve" | "balanceOf" | "getApproved" | "isApprovedForAll" | "name" | "ownerOf" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "setApprovalForAll" | "supportsInterface" | "symbol" | "tokenURI" | "transferFrom"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "Transfer"): EventFragment; + encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "name", values?: undefined): string; + encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "symbol", values?: undefined): string; + encodeFunctionData(functionFragment: "tokenURI", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; + decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "tokenURI", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; +} +export declare namespace ApprovalEvent { + type InputTuple = [ + owner: AddressLike, + approved: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [owner: string, approved: string, tokenId: bigint]; + interface OutputObject { + owner: string; + approved: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ApprovalForAllEvent { + type InputTuple = [ + owner: AddressLike, + operator: AddressLike, + approved: boolean + ]; + type OutputTuple = [ + owner: string, + operator: string, + approved: boolean + ]; + interface OutputObject { + owner: string; + operator: string; + approved: boolean; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferEvent { + type InputTuple = [ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [from: string, to: string, tokenId: bigint]; + interface OutputObject { + from: string; + to: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface IERC721Metadata extends BaseContract { + connect(runner?: ContractRunner | null): IERC721Metadata; + waitForDeployment(): Promise; + interface: IERC721MetadataInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + approve: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; + getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + isApprovedForAll: TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + name: TypedContractMethod<[], [string], "view">; + ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + setApprovalForAll: TypedContractMethod<[ + operator: AddressLike, + _approved: boolean + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + symbol: TypedContractMethod<[], [string], "view">; + tokenURI: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + transferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "approve"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; + getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ + operator: AddressLike, + _approved: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "symbol"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "tokenURI"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getEvent(key: "Approval"): TypedContractEvent; + getEvent(key: "ApprovalForAll"): TypedContractEvent; + getEvent(key: "Transfer"): TypedContractEvent; + filters: { + "Approval(address,address,uint256)": TypedContractEvent; + Approval: TypedContractEvent; + "ApprovalForAll(address,address,bool)": TypedContractEvent; + ApprovalForAll: TypedContractEvent; + "Transfer(address,address,uint256)": TypedContractEvent; + Transfer: TypedContractEvent; + }; +} +//# sourceMappingURL=IERC721Metadata.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata.d.ts.map b/dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata.d.ts.map new file mode 100644 index 00000000..37f8f468 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC721Metadata.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata.js b/dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver.d.ts b/dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver.d.ts new file mode 100644 index 00000000..12d740ba --- /dev/null +++ b/dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver.d.ts @@ -0,0 +1,40 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; +export interface IERC721ReceiverInterface extends Interface { + getFunction(nameOrSignature: "onERC721Received"): FunctionFragment; + encodeFunctionData(functionFragment: "onERC721Received", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; + decodeFunctionResult(functionFragment: "onERC721Received", data: BytesLike): Result; +} +export interface IERC721Receiver extends BaseContract { + connect(runner?: ContractRunner | null): IERC721Receiver; + waitForDeployment(): Promise; + interface: IERC721ReceiverInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + onERC721Received: TypedContractMethod<[ + operator: AddressLike, + from: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + string + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "onERC721Received"): TypedContractMethod<[ + operator: AddressLike, + from: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + string + ], "nonpayable">; + filters: {}; +} +//# sourceMappingURL=IERC721Receiver.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver.d.ts.map b/dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver.d.ts.map new file mode 100644 index 00000000..26710866 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC721Receiver.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver.js b/dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-2.3/token/ERC721/index.d.ts b/dist/types/@openzeppelin/contracts-2.3/token/ERC721/index.d.ts new file mode 100644 index 00000000..cf9c5772 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-2.3/token/ERC721/index.d.ts @@ -0,0 +1,6 @@ +export type { ERC721 } from "./ERC721"; +export type { ERC721Burnable } from "./ERC721Burnable"; +export type { IERC721 } from "./IERC721"; +export type { IERC721Metadata } from "./IERC721Metadata"; +export type { IERC721Receiver } from "./IERC721Receiver"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/token/ERC721/index.d.ts.map b/dist/types/@openzeppelin/contracts-2.3/token/ERC721/index.d.ts.map new file mode 100644 index 00000000..9329b02c --- /dev/null +++ b/dist/types/@openzeppelin/contracts-2.3/token/ERC721/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts-2.3/token/ERC721/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AACvC,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,YAAY,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,YAAY,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,YAAY,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/token/ERC721/index.js b/dist/types/@openzeppelin/contracts-2.3/token/ERC721/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-2.3/token/ERC721/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-2.3/token/index.d.ts b/dist/types/@openzeppelin/contracts-2.3/token/index.d.ts new file mode 100644 index 00000000..f91f652f --- /dev/null +++ b/dist/types/@openzeppelin/contracts-2.3/token/index.d.ts @@ -0,0 +1,3 @@ +import type * as erc721 from "./ERC721"; +export type { erc721 }; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/token/index.d.ts.map b/dist/types/@openzeppelin/contracts-2.3/token/index.d.ts.map new file mode 100644 index 00000000..7e6dc720 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-2.3/token/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/@openzeppelin/contracts-2.3/token/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,MAAM,MAAM,UAAU,CAAC;AACxC,YAAY,EAAE,MAAM,EAAE,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/token/index.js b/dist/types/@openzeppelin/contracts-2.3/token/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-2.3/token/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable.d.ts new file mode 100644 index 00000000..802a8afb --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable.d.ts @@ -0,0 +1,192 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../common"; +export interface AccessControlEnumerableUpgradeableInterface extends Interface { + getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE" | "getRoleAdmin" | "getRoleMember" | "getRoleMemberCount" | "grantRole" | "hasRole" | "renounceRole" | "revokeRole" | "supportsInterface"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Initialized" | "RoleAdminChanged" | "RoleGranted" | "RoleRevoked"): EventFragment; + encodeFunctionData(functionFragment: "DEFAULT_ADMIN_ROLE", values?: undefined): string; + encodeFunctionData(functionFragment: "getRoleAdmin", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "getRoleMember", values: [BytesLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "getRoleMemberCount", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "grantRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "hasRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "renounceRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "revokeRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + decodeFunctionResult(functionFragment: "DEFAULT_ADMIN_ROLE", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getRoleAdmin", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getRoleMember", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getRoleMemberCount", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "grantRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "hasRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "revokeRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; +} +export declare namespace InitializedEvent { + type InputTuple = [version: BigNumberish]; + type OutputTuple = [version: bigint]; + interface OutputObject { + version: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RoleAdminChangedEvent { + type InputTuple = [ + role: BytesLike, + previousAdminRole: BytesLike, + newAdminRole: BytesLike + ]; + type OutputTuple = [ + role: string, + previousAdminRole: string, + newAdminRole: string + ]; + interface OutputObject { + role: string; + previousAdminRole: string; + newAdminRole: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RoleGrantedEvent { + type InputTuple = [ + role: BytesLike, + account: AddressLike, + sender: AddressLike + ]; + type OutputTuple = [role: string, account: string, sender: string]; + interface OutputObject { + role: string; + account: string; + sender: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RoleRevokedEvent { + type InputTuple = [ + role: BytesLike, + account: AddressLike, + sender: AddressLike + ]; + type OutputTuple = [role: string, account: string, sender: string]; + interface OutputObject { + role: string; + account: string; + sender: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface AccessControlEnumerableUpgradeable extends BaseContract { + connect(runner?: ContractRunner | null): AccessControlEnumerableUpgradeable; + waitForDeployment(): Promise; + interface: AccessControlEnumerableUpgradeableInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + DEFAULT_ADMIN_ROLE: TypedContractMethod<[], [string], "view">; + getRoleAdmin: TypedContractMethod<[role: BytesLike], [string], "view">; + getRoleMember: TypedContractMethod<[ + role: BytesLike, + index: BigNumberish + ], [ + string + ], "view">; + getRoleMemberCount: TypedContractMethod<[role: BytesLike], [bigint], "view">; + grantRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + hasRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + boolean + ], "view">; + renounceRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + revokeRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "getRoleAdmin"): TypedContractMethod<[role: BytesLike], [string], "view">; + getFunction(nameOrSignature: "getRoleMember"): TypedContractMethod<[ + role: BytesLike, + index: BigNumberish + ], [ + string + ], "view">; + getFunction(nameOrSignature: "getRoleMemberCount"): TypedContractMethod<[role: BytesLike], [bigint], "view">; + getFunction(nameOrSignature: "grantRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "hasRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "renounceRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "revokeRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + getEvent(key: "Initialized"): TypedContractEvent; + getEvent(key: "RoleAdminChanged"): TypedContractEvent; + getEvent(key: "RoleGranted"): TypedContractEvent; + getEvent(key: "RoleRevoked"): TypedContractEvent; + filters: { + "Initialized(uint8)": TypedContractEvent; + Initialized: TypedContractEvent; + "RoleAdminChanged(bytes32,bytes32,bytes32)": TypedContractEvent; + RoleAdminChanged: TypedContractEvent; + "RoleGranted(bytes32,address,address)": TypedContractEvent; + RoleGranted: TypedContractEvent; + "RoleRevoked(bytes32,address,address)": TypedContractEvent; + RoleRevoked: TypedContractEvent; + }; +} +//# sourceMappingURL=AccessControlEnumerableUpgradeable.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable.d.ts.map new file mode 100644 index 00000000..7bf30e3f --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"AccessControlEnumerableUpgradeable.d.ts","sourceRoot":"","sources":["../../../../../types/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable.js b/dist/types/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.d.ts new file mode 100644 index 00000000..d219a4cf --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.d.ts @@ -0,0 +1,174 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../common"; +export interface AccessControlUpgradeableInterface extends Interface { + getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE" | "getRoleAdmin" | "grantRole" | "hasRole" | "renounceRole" | "revokeRole" | "supportsInterface"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Initialized" | "RoleAdminChanged" | "RoleGranted" | "RoleRevoked"): EventFragment; + encodeFunctionData(functionFragment: "DEFAULT_ADMIN_ROLE", values?: undefined): string; + encodeFunctionData(functionFragment: "getRoleAdmin", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "grantRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "hasRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "renounceRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "revokeRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + decodeFunctionResult(functionFragment: "DEFAULT_ADMIN_ROLE", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getRoleAdmin", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "grantRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "hasRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "revokeRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; +} +export declare namespace InitializedEvent { + type InputTuple = [version: BigNumberish]; + type OutputTuple = [version: bigint]; + interface OutputObject { + version: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RoleAdminChangedEvent { + type InputTuple = [ + role: BytesLike, + previousAdminRole: BytesLike, + newAdminRole: BytesLike + ]; + type OutputTuple = [ + role: string, + previousAdminRole: string, + newAdminRole: string + ]; + interface OutputObject { + role: string; + previousAdminRole: string; + newAdminRole: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RoleGrantedEvent { + type InputTuple = [ + role: BytesLike, + account: AddressLike, + sender: AddressLike + ]; + type OutputTuple = [role: string, account: string, sender: string]; + interface OutputObject { + role: string; + account: string; + sender: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RoleRevokedEvent { + type InputTuple = [ + role: BytesLike, + account: AddressLike, + sender: AddressLike + ]; + type OutputTuple = [role: string, account: string, sender: string]; + interface OutputObject { + role: string; + account: string; + sender: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface AccessControlUpgradeable extends BaseContract { + connect(runner?: ContractRunner | null): AccessControlUpgradeable; + waitForDeployment(): Promise; + interface: AccessControlUpgradeableInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + DEFAULT_ADMIN_ROLE: TypedContractMethod<[], [string], "view">; + getRoleAdmin: TypedContractMethod<[role: BytesLike], [string], "view">; + grantRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + hasRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + boolean + ], "view">; + renounceRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + revokeRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "getRoleAdmin"): TypedContractMethod<[role: BytesLike], [string], "view">; + getFunction(nameOrSignature: "grantRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "hasRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "renounceRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "revokeRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + getEvent(key: "Initialized"): TypedContractEvent; + getEvent(key: "RoleAdminChanged"): TypedContractEvent; + getEvent(key: "RoleGranted"): TypedContractEvent; + getEvent(key: "RoleRevoked"): TypedContractEvent; + filters: { + "Initialized(uint8)": TypedContractEvent; + Initialized: TypedContractEvent; + "RoleAdminChanged(bytes32,bytes32,bytes32)": TypedContractEvent; + RoleAdminChanged: TypedContractEvent; + "RoleGranted(bytes32,address,address)": TypedContractEvent; + RoleGranted: TypedContractEvent; + "RoleRevoked(bytes32,address,address)": TypedContractEvent; + RoleRevoked: TypedContractEvent; + }; +} +//# sourceMappingURL=AccessControlUpgradeable.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.d.ts.map new file mode 100644 index 00000000..4a5a3ad8 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"AccessControlUpgradeable.d.ts","sourceRoot":"","sources":["../../../../../types/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.js b/dist/types/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable.d.ts new file mode 100644 index 00000000..f0490e0a --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable.d.ts @@ -0,0 +1,166 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../common"; +export interface IAccessControlEnumerableUpgradeableInterface extends Interface { + getFunction(nameOrSignature: "getRoleAdmin" | "getRoleMember" | "getRoleMemberCount" | "grantRole" | "hasRole" | "renounceRole" | "revokeRole"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "RoleAdminChanged" | "RoleGranted" | "RoleRevoked"): EventFragment; + encodeFunctionData(functionFragment: "getRoleAdmin", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "getRoleMember", values: [BytesLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "getRoleMemberCount", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "grantRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "hasRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "renounceRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "revokeRole", values: [BytesLike, AddressLike]): string; + decodeFunctionResult(functionFragment: "getRoleAdmin", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getRoleMember", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getRoleMemberCount", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "grantRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "hasRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "revokeRole", data: BytesLike): Result; +} +export declare namespace RoleAdminChangedEvent { + type InputTuple = [ + role: BytesLike, + previousAdminRole: BytesLike, + newAdminRole: BytesLike + ]; + type OutputTuple = [ + role: string, + previousAdminRole: string, + newAdminRole: string + ]; + interface OutputObject { + role: string; + previousAdminRole: string; + newAdminRole: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RoleGrantedEvent { + type InputTuple = [ + role: BytesLike, + account: AddressLike, + sender: AddressLike + ]; + type OutputTuple = [role: string, account: string, sender: string]; + interface OutputObject { + role: string; + account: string; + sender: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RoleRevokedEvent { + type InputTuple = [ + role: BytesLike, + account: AddressLike, + sender: AddressLike + ]; + type OutputTuple = [role: string, account: string, sender: string]; + interface OutputObject { + role: string; + account: string; + sender: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface IAccessControlEnumerableUpgradeable extends BaseContract { + connect(runner?: ContractRunner | null): IAccessControlEnumerableUpgradeable; + waitForDeployment(): Promise; + interface: IAccessControlEnumerableUpgradeableInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + getRoleAdmin: TypedContractMethod<[role: BytesLike], [string], "view">; + getRoleMember: TypedContractMethod<[ + role: BytesLike, + index: BigNumberish + ], [ + string + ], "view">; + getRoleMemberCount: TypedContractMethod<[role: BytesLike], [bigint], "view">; + grantRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + hasRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + boolean + ], "view">; + renounceRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + revokeRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "getRoleAdmin"): TypedContractMethod<[role: BytesLike], [string], "view">; + getFunction(nameOrSignature: "getRoleMember"): TypedContractMethod<[ + role: BytesLike, + index: BigNumberish + ], [ + string + ], "view">; + getFunction(nameOrSignature: "getRoleMemberCount"): TypedContractMethod<[role: BytesLike], [bigint], "view">; + getFunction(nameOrSignature: "grantRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "hasRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "renounceRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "revokeRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getEvent(key: "RoleAdminChanged"): TypedContractEvent; + getEvent(key: "RoleGranted"): TypedContractEvent; + getEvent(key: "RoleRevoked"): TypedContractEvent; + filters: { + "RoleAdminChanged(bytes32,bytes32,bytes32)": TypedContractEvent; + RoleAdminChanged: TypedContractEvent; + "RoleGranted(bytes32,address,address)": TypedContractEvent; + RoleGranted: TypedContractEvent; + "RoleRevoked(bytes32,address,address)": TypedContractEvent; + RoleRevoked: TypedContractEvent; + }; +} +//# sourceMappingURL=IAccessControlEnumerableUpgradeable.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable.d.ts.map new file mode 100644 index 00000000..4f15affa --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IAccessControlEnumerableUpgradeable.d.ts","sourceRoot":"","sources":["../../../../../types/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,aAAa,EACb,WAAW,EACX,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,mBAAmB,EACnB,aAAa,EACb,mBAAmB,EACpB,MAAM,iBAAiB,CAAC;AAEzB,MAAM,WAAW,4CACf,SAAQ,SAAS;IACjB,WAAW,CACT,eAAe,EACX,cAAc,GACd,eAAe,GACf,oBAAoB,GACpB,WAAW,GACX,SAAS,GACT,cAAc,GACd,YAAY,GACf,gBAAgB,CAAC;IAEpB,QAAQ,CACN,sBAAsB,EAAE,kBAAkB,GAAG,aAAa,GAAG,aAAa,GACzE,aAAa,CAAC;IAEjB,kBAAkB,CAChB,gBAAgB,EAAE,cAAc,EAChC,MAAM,EAAE,CAAC,SAAS,CAAC,GAClB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,eAAe,EACjC,MAAM,EAAE,CAAC,SAAS,EAAE,YAAY,CAAC,GAChC,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,oBAAoB,EACtC,MAAM,EAAE,CAAC,SAAS,CAAC,GAClB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,WAAW,EAC7B,MAAM,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC,GAC/B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,SAAS,EAC3B,MAAM,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC,GAC/B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,cAAc,EAChC,MAAM,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC,GAC/B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,YAAY,EAC9B,MAAM,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC,GAC/B,MAAM,CAAC;IAEV,oBAAoB,CAClB,gBAAgB,EAAE,cAAc,EAChC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,eAAe,EACjC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,oBAAoB,EACtC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC7E,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,oBAAoB,CAClB,gBAAgB,EAAE,cAAc,EAChC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;CAC/E;AAED,yBAAiB,qBAAqB,CAAC;IACrC,KAAY,UAAU,GAAG;QACvB,IAAI,EAAE,SAAS;QACf,iBAAiB,EAAE,SAAS;QAC5B,YAAY,EAAE,SAAS;KACxB,CAAC;IACF,KAAY,WAAW,GAAG;QACxB,IAAI,EAAE,MAAM;QACZ,iBAAiB,EAAE,MAAM;QACzB,YAAY,EAAE,MAAM;KACrB,CAAC;IACF,UAAiB,YAAY;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,iBAAiB,EAAE,MAAM,CAAC;QAC1B,YAAY,EAAE,MAAM,CAAC;KACtB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,gBAAgB,CAAC;IAChC,KAAY,UAAU,GAAG;QACvB,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,WAAW;QACpB,MAAM,EAAE,WAAW;KACpB,CAAC;IACF,KAAY,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1E,UAAiB,YAAY;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;KAChB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,gBAAgB,CAAC;IAChC,KAAY,UAAU,GAAG;QACvB,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,WAAW;QACpB,MAAM,EAAE,WAAW;KACpB,CAAC;IACF,KAAY,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1E,UAAiB,YAAY;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;KAChB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,MAAM,WAAW,mCAAoC,SAAQ,YAAY;IACvE,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,mCAAmC,CAAC;IAC7E,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,4CAA4C,CAAC;IAExD,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,YAAY,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEvE,aAAa,EAAE,mBAAmB,CAChC;QAAC,IAAI,EAAE,SAAS;QAAE,KAAK,EAAE,YAAY;KAAC,EACtC;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IAEF,kBAAkB,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAE7E,SAAS,EAAE,mBAAmB,CAC5B;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,WAAW;KAAC,EACvC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,OAAO,EAAE,mBAAmB,CAC1B;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,WAAW;KAAC,EACvC;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,YAAY,EAAE,mBAAmB,CAC/B;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,WAAW;KAAC,EACvC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,UAAU,EAAE,mBAAmB,CAC7B;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,WAAW;KAAC,EACvC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,WAAW,CACT,eAAe,EAAE,cAAc,GAC9B,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC5D,WAAW,CACT,eAAe,EAAE,eAAe,GAC/B,mBAAmB,CACpB;QAAC,IAAI,EAAE,SAAS;QAAE,KAAK,EAAE,YAAY;KAAC,EACtC;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,oBAAoB,GACpC,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC5D,WAAW,CACT,eAAe,EAAE,WAAW,GAC3B,mBAAmB,CACpB;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,WAAW;KAAC,EACvC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,SAAS,GACzB,mBAAmB,CACpB;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,WAAW;KAAC,EACvC;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,cAAc,GAC9B,mBAAmB,CACpB;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,WAAW;KAAC,EACvC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,YAAY,GAC5B,mBAAmB,CACpB;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,WAAW;KAAC,EACvC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,QAAQ,CACN,GAAG,EAAE,kBAAkB,GACtB,kBAAkB,CACnB,qBAAqB,CAAC,UAAU,EAChC,qBAAqB,CAAC,WAAW,EACjC,qBAAqB,CAAC,YAAY,CACnC,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,aAAa,GACjB,kBAAkB,CACnB,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,aAAa,GACjB,kBAAkB,CACnB,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;IAEF,OAAO,EAAE;QACP,2CAA2C,EAAE,kBAAkB,CAC7D,qBAAqB,CAAC,UAAU,EAChC,qBAAqB,CAAC,WAAW,EACjC,qBAAqB,CAAC,YAAY,CACnC,CAAC;QACF,gBAAgB,EAAE,kBAAkB,CAClC,qBAAqB,CAAC,UAAU,EAChC,qBAAqB,CAAC,WAAW,EACjC,qBAAqB,CAAC,YAAY,CACnC,CAAC;QAEF,sCAAsC,EAAE,kBAAkB,CACxD,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QACF,WAAW,EAAE,kBAAkB,CAC7B,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QAEF,sCAAsC,EAAE,kBAAkB,CACxD,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QACF,WAAW,EAAE,kBAAkB,CAC7B,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;KACH,CAAC;CACH"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable.js b/dist/types/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable.d.ts new file mode 100644 index 00000000..95812525 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable.d.ts @@ -0,0 +1,148 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../common"; +export interface IAccessControlUpgradeableInterface extends Interface { + getFunction(nameOrSignature: "getRoleAdmin" | "grantRole" | "hasRole" | "renounceRole" | "revokeRole"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "RoleAdminChanged" | "RoleGranted" | "RoleRevoked"): EventFragment; + encodeFunctionData(functionFragment: "getRoleAdmin", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "grantRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "hasRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "renounceRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "revokeRole", values: [BytesLike, AddressLike]): string; + decodeFunctionResult(functionFragment: "getRoleAdmin", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "grantRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "hasRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "revokeRole", data: BytesLike): Result; +} +export declare namespace RoleAdminChangedEvent { + type InputTuple = [ + role: BytesLike, + previousAdminRole: BytesLike, + newAdminRole: BytesLike + ]; + type OutputTuple = [ + role: string, + previousAdminRole: string, + newAdminRole: string + ]; + interface OutputObject { + role: string; + previousAdminRole: string; + newAdminRole: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RoleGrantedEvent { + type InputTuple = [ + role: BytesLike, + account: AddressLike, + sender: AddressLike + ]; + type OutputTuple = [role: string, account: string, sender: string]; + interface OutputObject { + role: string; + account: string; + sender: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RoleRevokedEvent { + type InputTuple = [ + role: BytesLike, + account: AddressLike, + sender: AddressLike + ]; + type OutputTuple = [role: string, account: string, sender: string]; + interface OutputObject { + role: string; + account: string; + sender: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface IAccessControlUpgradeable extends BaseContract { + connect(runner?: ContractRunner | null): IAccessControlUpgradeable; + waitForDeployment(): Promise; + interface: IAccessControlUpgradeableInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + getRoleAdmin: TypedContractMethod<[role: BytesLike], [string], "view">; + grantRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + hasRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + boolean + ], "view">; + renounceRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + revokeRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "getRoleAdmin"): TypedContractMethod<[role: BytesLike], [string], "view">; + getFunction(nameOrSignature: "grantRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "hasRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "renounceRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "revokeRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getEvent(key: "RoleAdminChanged"): TypedContractEvent; + getEvent(key: "RoleGranted"): TypedContractEvent; + getEvent(key: "RoleRevoked"): TypedContractEvent; + filters: { + "RoleAdminChanged(bytes32,bytes32,bytes32)": TypedContractEvent; + RoleAdminChanged: TypedContractEvent; + "RoleGranted(bytes32,address,address)": TypedContractEvent; + RoleGranted: TypedContractEvent; + "RoleRevoked(bytes32,address,address)": TypedContractEvent; + RoleRevoked: TypedContractEvent; + }; +} +//# sourceMappingURL=IAccessControlUpgradeable.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable.d.ts.map new file mode 100644 index 00000000..81689019 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IAccessControlUpgradeable.d.ts","sourceRoot":"","sources":["../../../../../types/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,aAAa,EACb,WAAW,EACX,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,mBAAmB,EACnB,aAAa,EACb,mBAAmB,EACpB,MAAM,iBAAiB,CAAC;AAEzB,MAAM,WAAW,kCAAmC,SAAQ,SAAS;IACnE,WAAW,CACT,eAAe,EACX,cAAc,GACd,WAAW,GACX,SAAS,GACT,cAAc,GACd,YAAY,GACf,gBAAgB,CAAC;IAEpB,QAAQ,CACN,sBAAsB,EAAE,kBAAkB,GAAG,aAAa,GAAG,aAAa,GACzE,aAAa,CAAC;IAEjB,kBAAkB,CAChB,gBAAgB,EAAE,cAAc,EAChC,MAAM,EAAE,CAAC,SAAS,CAAC,GAClB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,WAAW,EAC7B,MAAM,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC,GAC/B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,SAAS,EAC3B,MAAM,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC,GAC/B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,cAAc,EAChC,MAAM,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC,GAC/B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,YAAY,EAC9B,MAAM,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC,GAC/B,MAAM,CAAC;IAEV,oBAAoB,CAClB,gBAAgB,EAAE,cAAc,EAChC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC7E,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,oBAAoB,CAClB,gBAAgB,EAAE,cAAc,EAChC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;CAC/E;AAED,yBAAiB,qBAAqB,CAAC;IACrC,KAAY,UAAU,GAAG;QACvB,IAAI,EAAE,SAAS;QACf,iBAAiB,EAAE,SAAS;QAC5B,YAAY,EAAE,SAAS;KACxB,CAAC;IACF,KAAY,WAAW,GAAG;QACxB,IAAI,EAAE,MAAM;QACZ,iBAAiB,EAAE,MAAM;QACzB,YAAY,EAAE,MAAM;KACrB,CAAC;IACF,UAAiB,YAAY;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,iBAAiB,EAAE,MAAM,CAAC;QAC1B,YAAY,EAAE,MAAM,CAAC;KACtB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,gBAAgB,CAAC;IAChC,KAAY,UAAU,GAAG;QACvB,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,WAAW;QACpB,MAAM,EAAE,WAAW;KACpB,CAAC;IACF,KAAY,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1E,UAAiB,YAAY;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;KAChB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,gBAAgB,CAAC;IAChC,KAAY,UAAU,GAAG;QACvB,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,WAAW;QACpB,MAAM,EAAE,WAAW;KACpB,CAAC;IACF,KAAY,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1E,UAAiB,YAAY;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;KAChB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,MAAM,WAAW,yBAA0B,SAAQ,YAAY;IAC7D,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,yBAAyB,CAAC;IACnE,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,kCAAkC,CAAC;IAE9C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,YAAY,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEvE,SAAS,EAAE,mBAAmB,CAC5B;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,WAAW;KAAC,EACvC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,OAAO,EAAE,mBAAmB,CAC1B;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,WAAW;KAAC,EACvC;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,YAAY,EAAE,mBAAmB,CAC/B;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,WAAW;KAAC,EACvC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,UAAU,EAAE,mBAAmB,CAC7B;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,WAAW;KAAC,EACvC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,WAAW,CACT,eAAe,EAAE,cAAc,GAC9B,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC5D,WAAW,CACT,eAAe,EAAE,WAAW,GAC3B,mBAAmB,CACpB;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,WAAW;KAAC,EACvC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,SAAS,GACzB,mBAAmB,CACpB;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,WAAW;KAAC,EACvC;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,cAAc,GAC9B,mBAAmB,CACpB;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,WAAW;KAAC,EACvC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,YAAY,GAC5B,mBAAmB,CACpB;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,WAAW;KAAC,EACvC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,QAAQ,CACN,GAAG,EAAE,kBAAkB,GACtB,kBAAkB,CACnB,qBAAqB,CAAC,UAAU,EAChC,qBAAqB,CAAC,WAAW,EACjC,qBAAqB,CAAC,YAAY,CACnC,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,aAAa,GACjB,kBAAkB,CACnB,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,aAAa,GACjB,kBAAkB,CACnB,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;IAEF,OAAO,EAAE;QACP,2CAA2C,EAAE,kBAAkB,CAC7D,qBAAqB,CAAC,UAAU,EAChC,qBAAqB,CAAC,WAAW,EACjC,qBAAqB,CAAC,YAAY,CACnC,CAAC;QACF,gBAAgB,EAAE,kBAAkB,CAClC,qBAAqB,CAAC,UAAU,EAChC,qBAAqB,CAAC,WAAW,EACjC,qBAAqB,CAAC,YAAY,CACnC,CAAC;QAEF,sCAAsC,EAAE,kBAAkB,CACxD,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QACF,WAAW,EAAE,kBAAkB,CAC7B,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QAEF,sCAAsC,EAAE,kBAAkB,CACxD,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QACF,WAAW,EAAE,kBAAkB,CAC7B,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;KACH,CAAC;CACH"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable.js b/dist/types/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.d.ts new file mode 100644 index 00000000..0faa56f1 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.d.ts @@ -0,0 +1,69 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../common"; +export interface OwnableUpgradeableInterface extends Interface { + getFunction(nameOrSignature: "owner" | "renounceOwnership" | "transferOwnership"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Initialized" | "OwnershipTransferred"): EventFragment; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData(functionFragment: "renounceOwnership", values?: undefined): string; + encodeFunctionData(functionFragment: "transferOwnership", values: [AddressLike]): string; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceOwnership", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result; +} +export declare namespace InitializedEvent { + type InputTuple = [version: BigNumberish]; + type OutputTuple = [version: bigint]; + interface OutputObject { + version: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace OwnershipTransferredEvent { + type InputTuple = [previousOwner: AddressLike, newOwner: AddressLike]; + type OutputTuple = [previousOwner: string, newOwner: string]; + interface OutputObject { + previousOwner: string; + newOwner: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface OwnableUpgradeable extends BaseContract { + connect(runner?: ContractRunner | null): OwnableUpgradeable; + waitForDeployment(): Promise; + interface: OwnableUpgradeableInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + owner: TypedContractMethod<[], [string], "view">; + renounceOwnership: TypedContractMethod<[], [void], "nonpayable">; + transferOwnership: TypedContractMethod<[ + newOwner: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "owner"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "renounceOwnership"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "transferOwnership"): TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">; + getEvent(key: "Initialized"): TypedContractEvent; + getEvent(key: "OwnershipTransferred"): TypedContractEvent; + filters: { + "Initialized(uint8)": TypedContractEvent; + Initialized: TypedContractEvent; + "OwnershipTransferred(address,address)": TypedContractEvent; + OwnershipTransferred: TypedContractEvent; + }; +} +//# sourceMappingURL=OwnableUpgradeable.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.d.ts.map new file mode 100644 index 00000000..39cab59c --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"OwnableUpgradeable.d.ts","sourceRoot":"","sources":["../../../../../types/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.js b/dist/types/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/access/index.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/access/index.d.ts new file mode 100644 index 00000000..14a1097f --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/access/index.d.ts @@ -0,0 +1,6 @@ +export type { AccessControlEnumerableUpgradeable } from "./AccessControlEnumerableUpgradeable"; +export type { AccessControlUpgradeable } from "./AccessControlUpgradeable"; +export type { IAccessControlEnumerableUpgradeable } from "./IAccessControlEnumerableUpgradeable"; +export type { IAccessControlUpgradeable } from "./IAccessControlUpgradeable"; +export type { OwnableUpgradeable } from "./OwnableUpgradeable"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/access/index.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/access/index.d.ts.map new file mode 100644 index 00000000..99800071 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/access/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/@openzeppelin/contracts-upgradeable/access/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,kCAAkC,EAAE,MAAM,sCAAsC,CAAC;AAC/F,YAAY,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAC3E,YAAY,EAAE,mCAAmC,EAAE,MAAM,uCAAuC,CAAC;AACjG,YAAY,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AAC7E,YAAY,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/access/index.js b/dist/types/@openzeppelin/contracts-upgradeable/access/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/access/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/index.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/index.d.ts new file mode 100644 index 00000000..82d10a96 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/index.d.ts @@ -0,0 +1,13 @@ +import type * as access from "./access"; +export type { access }; +import type * as interfaces from "./interfaces"; +export type { interfaces }; +import type * as proxy from "./proxy"; +export type { proxy }; +import type * as security from "./security"; +export type { security }; +import type * as token from "./token"; +export type { token }; +import type * as utils from "./utils"; +export type { utils }; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/index.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/index.d.ts.map new file mode 100644 index 00000000..acd10d48 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../types/@openzeppelin/contracts-upgradeable/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,MAAM,MAAM,UAAU,CAAC;AACxC,YAAY,EAAE,MAAM,EAAE,CAAC;AACvB,OAAO,KAAK,KAAK,UAAU,MAAM,cAAc,CAAC;AAChD,YAAY,EAAE,UAAU,EAAE,CAAC;AAC3B,OAAO,KAAK,KAAK,KAAK,MAAM,SAAS,CAAC;AACtC,YAAY,EAAE,KAAK,EAAE,CAAC;AACtB,OAAO,KAAK,KAAK,QAAQ,MAAM,YAAY,CAAC;AAC5C,YAAY,EAAE,QAAQ,EAAE,CAAC;AACzB,OAAO,KAAK,KAAK,KAAK,MAAM,SAAS,CAAC;AACtC,YAAY,EAAE,KAAK,EAAE,CAAC;AACtB,OAAO,KAAK,KAAK,KAAK,MAAM,SAAS,CAAC;AACtC,YAAY,EAAE,KAAK,EAAE,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/index.js b/dist/types/@openzeppelin/contracts-upgradeable/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable.d.ts new file mode 100644 index 00000000..42c26182 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable.d.ts @@ -0,0 +1,36 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../common"; +export interface IERC1271UpgradeableInterface extends Interface { + getFunction(nameOrSignature: "isValidSignature"): FunctionFragment; + encodeFunctionData(functionFragment: "isValidSignature", values: [BytesLike, BytesLike]): string; + decodeFunctionResult(functionFragment: "isValidSignature", data: BytesLike): Result; +} +export interface IERC1271Upgradeable extends BaseContract { + connect(runner?: ContractRunner | null): IERC1271Upgradeable; + waitForDeployment(): Promise; + interface: IERC1271UpgradeableInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + isValidSignature: TypedContractMethod<[ + hash: BytesLike, + signature: BytesLike + ], [ + string + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "isValidSignature"): TypedContractMethod<[ + hash: BytesLike, + signature: BytesLike + ], [ + string + ], "view">; + filters: {}; +} +//# sourceMappingURL=IERC1271Upgradeable.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable.d.ts.map new file mode 100644 index 00000000..ece5e3a8 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC1271Upgradeable.d.ts","sourceRoot":"","sources":["../../../../../types/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable.js b/dist/types/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/interfaces/index.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/interfaces/index.d.ts new file mode 100644 index 00000000..9560bb16 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/interfaces/index.d.ts @@ -0,0 +1,2 @@ +export type { IERC1271Upgradeable } from "./IERC1271Upgradeable"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/interfaces/index.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/interfaces/index.d.ts.map new file mode 100644 index 00000000..de0e0034 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/interfaces/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/@openzeppelin/contracts-upgradeable/interfaces/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/interfaces/index.js b/dist/types/@openzeppelin/contracts-upgradeable/interfaces/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/interfaces/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/proxy/index.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/proxy/index.d.ts new file mode 100644 index 00000000..3d394972 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/proxy/index.d.ts @@ -0,0 +1,3 @@ +import type * as utils from "./utils"; +export type { utils }; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/proxy/index.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/proxy/index.d.ts.map new file mode 100644 index 00000000..df13142c --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/proxy/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/@openzeppelin/contracts-upgradeable/proxy/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,KAAK,MAAM,SAAS,CAAC;AACtC,YAAY,EAAE,KAAK,EAAE,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/proxy/index.js b/dist/types/@openzeppelin/contracts-upgradeable/proxy/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/proxy/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.d.ts new file mode 100644 index 00000000..4576aba7 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.d.ts @@ -0,0 +1,37 @@ +import type { BaseContract, BigNumberish, FunctionFragment, Interface, EventFragment, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener } from "../../../../common"; +export interface InitializableInterface extends Interface { + getEvent(nameOrSignatureOrTopic: "Initialized"): EventFragment; +} +export declare namespace InitializedEvent { + type InputTuple = [version: BigNumberish]; + type OutputTuple = [version: bigint]; + interface OutputObject { + version: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface Initializable extends BaseContract { + connect(runner?: ContractRunner | null): Initializable; + waitForDeployment(): Promise; + interface: InitializableInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + getFunction(key: string | FunctionFragment): T; + getEvent(key: "Initialized"): TypedContractEvent; + filters: { + "Initialized(uint8)": TypedContractEvent; + Initialized: TypedContractEvent; + }; +} +//# sourceMappingURL=Initializable.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.d.ts.map new file mode 100644 index 00000000..07501084 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"Initializable.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,gBAAgB,EAChB,SAAS,EACT,aAAa,EACb,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,mBAAmB,EACnB,aAAa,EACd,MAAM,oBAAoB,CAAC;AAE5B,MAAM,WAAW,sBAAuB,SAAQ,SAAS;IACvD,QAAQ,CAAC,sBAAsB,EAAE,aAAa,GAAG,aAAa,CAAC;CAChE;AAED,yBAAiB,gBAAgB,CAAC;IAChC,KAAY,UAAU,GAAG,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IACjD,KAAY,WAAW,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC5C,UAAiB,YAAY;QAC3B,OAAO,EAAE,MAAM,CAAC;KACjB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,MAAM,WAAW,aAAc,SAAQ,YAAY;IACjD,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,aAAa,CAAC;IACvD,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,sBAAsB,CAAC;IAElC,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,QAAQ,CACN,GAAG,EAAE,aAAa,GACjB,kBAAkB,CACnB,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;IAEF,OAAO,EAAE;QACP,oBAAoB,EAAE,kBAAkB,CACtC,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QACF,WAAW,EAAE,kBAAkB,CAC7B,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;KACH,CAAC;CACH"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.js b/dist/types/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/proxy/utils/index.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/proxy/utils/index.d.ts new file mode 100644 index 00000000..f6ddb674 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/proxy/utils/index.d.ts @@ -0,0 +1,2 @@ +export type { Initializable } from "./Initializable"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/proxy/utils/index.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/proxy/utils/index.d.ts.map new file mode 100644 index 00000000..21d87aa7 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/proxy/utils/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts-upgradeable/proxy/utils/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/proxy/utils/index.js b/dist/types/@openzeppelin/contracts-upgradeable/proxy/utils/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/proxy/utils/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.d.ts new file mode 100644 index 00000000..10edf5c7 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.d.ts @@ -0,0 +1,70 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../common"; +export interface PausableUpgradeableInterface extends Interface { + getFunction(nameOrSignature: "paused"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Initialized" | "Paused" | "Unpaused"): EventFragment; + encodeFunctionData(functionFragment: "paused", values?: undefined): string; + decodeFunctionResult(functionFragment: "paused", data: BytesLike): Result; +} +export declare namespace InitializedEvent { + type InputTuple = [version: BigNumberish]; + type OutputTuple = [version: bigint]; + interface OutputObject { + version: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace PausedEvent { + type InputTuple = [account: AddressLike]; + type OutputTuple = [account: string]; + interface OutputObject { + account: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace UnpausedEvent { + type InputTuple = [account: AddressLike]; + type OutputTuple = [account: string]; + interface OutputObject { + account: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface PausableUpgradeable extends BaseContract { + connect(runner?: ContractRunner | null): PausableUpgradeable; + waitForDeployment(): Promise; + interface: PausableUpgradeableInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + paused: TypedContractMethod<[], [boolean], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "paused"): TypedContractMethod<[], [boolean], "view">; + getEvent(key: "Initialized"): TypedContractEvent; + getEvent(key: "Paused"): TypedContractEvent; + getEvent(key: "Unpaused"): TypedContractEvent; + filters: { + "Initialized(uint8)": TypedContractEvent; + Initialized: TypedContractEvent; + "Paused(address)": TypedContractEvent; + Paused: TypedContractEvent; + "Unpaused(address)": TypedContractEvent; + Unpaused: TypedContractEvent; + }; +} +//# sourceMappingURL=PausableUpgradeable.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.d.ts.map new file mode 100644 index 00000000..17bab093 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"PausableUpgradeable.d.ts","sourceRoot":"","sources":["../../../../../types/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,aAAa,EACb,WAAW,EACX,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,mBAAmB,EACnB,aAAa,EACb,mBAAmB,EACpB,MAAM,iBAAiB,CAAC;AAEzB,MAAM,WAAW,4BAA6B,SAAQ,SAAS;IAC7D,WAAW,CAAC,eAAe,EAAE,QAAQ,GAAG,gBAAgB,CAAC;IAEzD,QAAQ,CACN,sBAAsB,EAAE,aAAa,GAAG,QAAQ,GAAG,UAAU,GAC5D,aAAa,CAAC;IAEjB,kBAAkB,CAAC,gBAAgB,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IAE3E,oBAAoB,CAAC,gBAAgB,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;CAC3E;AAED,yBAAiB,gBAAgB,CAAC;IAChC,KAAY,UAAU,GAAG,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IACjD,KAAY,WAAW,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC5C,UAAiB,YAAY;QAC3B,OAAO,EAAE,MAAM,CAAC;KACjB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,WAAW,CAAC;IAC3B,KAAY,UAAU,GAAG,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IAChD,KAAY,WAAW,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC5C,UAAiB,YAAY;QAC3B,OAAO,EAAE,MAAM,CAAC;KACjB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,aAAa,CAAC;IAC7B,KAAY,UAAU,GAAG,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IAChD,KAAY,WAAW,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC5C,UAAiB,YAAY;QAC3B,OAAO,EAAE,MAAM,CAAC;KACjB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,MAAM,WAAW,mBAAoB,SAAQ,YAAY;IACvD,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,mBAAmB,CAAC;IAC7D,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,4BAA4B,CAAC;IAExC,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,MAAM,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IAEnD,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,WAAW,CACT,eAAe,EAAE,QAAQ,GACxB,mBAAmB,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IAE9C,QAAQ,CACN,GAAG,EAAE,aAAa,GACjB,kBAAkB,CACnB,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,QAAQ,GACZ,kBAAkB,CACnB,WAAW,CAAC,UAAU,EACtB,WAAW,CAAC,WAAW,EACvB,WAAW,CAAC,YAAY,CACzB,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,UAAU,GACd,kBAAkB,CACnB,aAAa,CAAC,UAAU,EACxB,aAAa,CAAC,WAAW,EACzB,aAAa,CAAC,YAAY,CAC3B,CAAC;IAEF,OAAO,EAAE;QACP,oBAAoB,EAAE,kBAAkB,CACtC,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QACF,WAAW,EAAE,kBAAkB,CAC7B,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QAEF,iBAAiB,EAAE,kBAAkB,CACnC,WAAW,CAAC,UAAU,EACtB,WAAW,CAAC,WAAW,EACvB,WAAW,CAAC,YAAY,CACzB,CAAC;QACF,MAAM,EAAE,kBAAkB,CACxB,WAAW,CAAC,UAAU,EACtB,WAAW,CAAC,WAAW,EACvB,WAAW,CAAC,YAAY,CACzB,CAAC;QAEF,mBAAmB,EAAE,kBAAkB,CACrC,aAAa,CAAC,UAAU,EACxB,aAAa,CAAC,WAAW,EACzB,aAAa,CAAC,YAAY,CAC3B,CAAC;QACF,QAAQ,EAAE,kBAAkB,CAC1B,aAAa,CAAC,UAAU,EACxB,aAAa,CAAC,WAAW,EACzB,aAAa,CAAC,YAAY,CAC3B,CAAC;KACH,CAAC;CACH"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.js b/dist/types/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.d.ts new file mode 100644 index 00000000..100a8901 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.d.ts @@ -0,0 +1,37 @@ +import type { BaseContract, BigNumberish, FunctionFragment, Interface, EventFragment, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener } from "../../../common"; +export interface ReentrancyGuardUpgradeableInterface extends Interface { + getEvent(nameOrSignatureOrTopic: "Initialized"): EventFragment; +} +export declare namespace InitializedEvent { + type InputTuple = [version: BigNumberish]; + type OutputTuple = [version: bigint]; + interface OutputObject { + version: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface ReentrancyGuardUpgradeable extends BaseContract { + connect(runner?: ContractRunner | null): ReentrancyGuardUpgradeable; + waitForDeployment(): Promise; + interface: ReentrancyGuardUpgradeableInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + getFunction(key: string | FunctionFragment): T; + getEvent(key: "Initialized"): TypedContractEvent; + filters: { + "Initialized(uint8)": TypedContractEvent; + Initialized: TypedContractEvent; + }; +} +//# sourceMappingURL=ReentrancyGuardUpgradeable.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.d.ts.map new file mode 100644 index 00000000..781165ae --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ReentrancyGuardUpgradeable.d.ts","sourceRoot":"","sources":["../../../../../types/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.js b/dist/types/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/security/index.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/security/index.d.ts new file mode 100644 index 00000000..0b8dc56e --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/security/index.d.ts @@ -0,0 +1,3 @@ +export type { PausableUpgradeable } from "./PausableUpgradeable"; +export type { ReentrancyGuardUpgradeable } from "./ReentrancyGuardUpgradeable"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/security/index.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/security/index.d.ts.map new file mode 100644 index 00000000..b2d2f9b2 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/security/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/@openzeppelin/contracts-upgradeable/security/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,YAAY,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/security/index.js b/dist/types/@openzeppelin/contracts-upgradeable/security/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/security/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable.d.ts new file mode 100644 index 00000000..716ef8d7 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable.d.ts @@ -0,0 +1,251 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; +export interface ERC1155UpgradeableInterface extends Interface { + getFunction(nameOrSignature: "balanceOf" | "balanceOfBatch" | "isApprovedForAll" | "safeBatchTransferFrom" | "safeTransferFrom" | "setApprovalForAll" | "supportsInterface" | "uri"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "ApprovalForAll" | "Initialized" | "TransferBatch" | "TransferSingle" | "URI"): EventFragment; + encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "balanceOfBatch", values: [AddressLike[], BigNumberish[]]): string; + encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "safeBatchTransferFrom", values: [ + AddressLike, + AddressLike, + BigNumberish[], + BigNumberish[], + BytesLike + ]): string; + encodeFunctionData(functionFragment: "safeTransferFrom", values: [AddressLike, AddressLike, BigNumberish, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "uri", values: [BigNumberish]): string; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOfBatch", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeBatchTransferFrom", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "uri", data: BytesLike): Result; +} +export declare namespace ApprovalForAllEvent { + type InputTuple = [ + account: AddressLike, + operator: AddressLike, + approved: boolean + ]; + type OutputTuple = [ + account: string, + operator: string, + approved: boolean + ]; + interface OutputObject { + account: string; + operator: string; + approved: boolean; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace InitializedEvent { + type InputTuple = [version: BigNumberish]; + type OutputTuple = [version: bigint]; + interface OutputObject { + version: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferBatchEvent { + type InputTuple = [ + operator: AddressLike, + from: AddressLike, + to: AddressLike, + ids: BigNumberish[], + values: BigNumberish[] + ]; + type OutputTuple = [ + operator: string, + from: string, + to: string, + ids: bigint[], + values: bigint[] + ]; + interface OutputObject { + operator: string; + from: string; + to: string; + ids: bigint[]; + values: bigint[]; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferSingleEvent { + type InputTuple = [ + operator: AddressLike, + from: AddressLike, + to: AddressLike, + id: BigNumberish, + value: BigNumberish + ]; + type OutputTuple = [ + operator: string, + from: string, + to: string, + id: bigint, + value: bigint + ]; + interface OutputObject { + operator: string; + from: string; + to: string; + id: bigint; + value: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace URIEvent { + type InputTuple = [value: string, id: BigNumberish]; + type OutputTuple = [value: string, id: bigint]; + interface OutputObject { + value: string; + id: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface ERC1155Upgradeable extends BaseContract { + connect(runner?: ContractRunner | null): ERC1155Upgradeable; + waitForDeployment(): Promise; + interface: ERC1155UpgradeableInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + balanceOf: TypedContractMethod<[ + account: AddressLike, + id: BigNumberish + ], [ + bigint + ], "view">; + balanceOfBatch: TypedContractMethod<[ + accounts: AddressLike[], + ids: BigNumberish[] + ], [ + bigint[] + ], "view">; + isApprovedForAll: TypedContractMethod<[ + account: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + safeBatchTransferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + ids: BigNumberish[], + amounts: BigNumberish[], + data: BytesLike + ], [ + void + ], "nonpayable">; + safeTransferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + id: BigNumberish, + amount: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + setApprovalForAll: TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + uri: TypedContractMethod<[arg0: BigNumberish], [string], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[ + account: AddressLike, + id: BigNumberish + ], [ + bigint + ], "view">; + getFunction(nameOrSignature: "balanceOfBatch"): TypedContractMethod<[ + accounts: AddressLike[], + ids: BigNumberish[] + ], [ + bigint[] + ], "view">; + getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ + account: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "safeBatchTransferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + ids: BigNumberish[], + amounts: BigNumberish[], + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + id: BigNumberish, + amount: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "uri"): TypedContractMethod<[arg0: BigNumberish], [string], "view">; + getEvent(key: "ApprovalForAll"): TypedContractEvent; + getEvent(key: "Initialized"): TypedContractEvent; + getEvent(key: "TransferBatch"): TypedContractEvent; + getEvent(key: "TransferSingle"): TypedContractEvent; + getEvent(key: "URI"): TypedContractEvent; + filters: { + "ApprovalForAll(address,address,bool)": TypedContractEvent; + ApprovalForAll: TypedContractEvent; + "Initialized(uint8)": TypedContractEvent; + Initialized: TypedContractEvent; + "TransferBatch(address,address,address,uint256[],uint256[])": TypedContractEvent; + TransferBatch: TypedContractEvent; + "TransferSingle(address,address,address,uint256,uint256)": TypedContractEvent; + TransferSingle: TypedContractEvent; + "URI(string,uint256)": TypedContractEvent; + URI: TypedContractEvent; + }; +} +//# sourceMappingURL=ERC1155Upgradeable.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable.d.ts.map new file mode 100644 index 00000000..3dd8c95a --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ERC1155Upgradeable.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,aAAa,EACb,WAAW,EACX,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,mBAAmB,EACnB,aAAa,EACb,mBAAmB,EACpB,MAAM,oBAAoB,CAAC;AAE5B,MAAM,WAAW,2BAA4B,SAAQ,SAAS;IAC5D,WAAW,CACT,eAAe,EACX,WAAW,GACX,gBAAgB,GAChB,kBAAkB,GAClB,uBAAuB,GACvB,kBAAkB,GAClB,mBAAmB,GACnB,mBAAmB,GACnB,KAAK,GACR,gBAAgB,CAAC;IAEpB,QAAQ,CACN,sBAAsB,EAClB,gBAAgB,GAChB,aAAa,GACb,eAAe,GACf,gBAAgB,GAChB,KAAK,GACR,aAAa,CAAC;IAEjB,kBAAkB,CAChB,gBAAgB,EAAE,WAAW,EAC7B,MAAM,EAAE,CAAC,WAAW,EAAE,YAAY,CAAC,GAClC,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,gBAAgB,EAClC,MAAM,EAAE,CAAC,WAAW,EAAE,EAAE,YAAY,EAAE,CAAC,GACtC,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,kBAAkB,EACpC,MAAM,EAAE,CAAC,WAAW,EAAE,WAAW,CAAC,GACjC,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,uBAAuB,EACzC,MAAM,EAAE;QACN,WAAW;QACX,WAAW;QACX,YAAY,EAAE;QACd,YAAY,EAAE;QACd,SAAS;KACV,GACA,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,kBAAkB,EACpC,MAAM,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,YAAY,EAAE,SAAS,CAAC,GACxE,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,mBAAmB,EACrC,MAAM,EAAE,CAAC,WAAW,EAAE,OAAO,CAAC,GAC7B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,mBAAmB,EACrC,MAAM,EAAE,CAAC,SAAS,CAAC,GAClB,MAAM,CAAC;IACV,kBAAkB,CAAC,gBAAgB,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,YAAY,CAAC,GAAG,MAAM,CAAC;IAE5E,oBAAoB,CAAC,gBAAgB,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC7E,oBAAoB,CAClB,gBAAgB,EAAE,gBAAgB,EAClC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,kBAAkB,EACpC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,uBAAuB,EACzC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,kBAAkB,EACpC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,mBAAmB,EACrC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,mBAAmB,EACrC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;CACxE;AAED,yBAAiB,mBAAmB,CAAC;IACnC,KAAY,UAAU,GAAG;QACvB,OAAO,EAAE,WAAW;QACpB,QAAQ,EAAE,WAAW;QACrB,QAAQ,EAAE,OAAO;KAClB,CAAC;IACF,KAAY,WAAW,GAAG;QACxB,OAAO,EAAE,MAAM;QACf,QAAQ,EAAE,MAAM;QAChB,QAAQ,EAAE,OAAO;KAClB,CAAC;IACF,UAAiB,YAAY;QAC3B,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,OAAO,CAAC;KACnB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,gBAAgB,CAAC;IAChC,KAAY,UAAU,GAAG,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IACjD,KAAY,WAAW,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC5C,UAAiB,YAAY;QAC3B,OAAO,EAAE,MAAM,CAAC;KACjB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,kBAAkB,CAAC;IAClC,KAAY,UAAU,GAAG;QACvB,QAAQ,EAAE,WAAW;QACrB,IAAI,EAAE,WAAW;QACjB,EAAE,EAAE,WAAW;QACf,GAAG,EAAE,YAAY,EAAE;QACnB,MAAM,EAAE,YAAY,EAAE;KACvB,CAAC;IACF,KAAY,WAAW,GAAG;QACxB,QAAQ,EAAE,MAAM;QAChB,IAAI,EAAE,MAAM;QACZ,EAAE,EAAE,MAAM;QACV,GAAG,EAAE,MAAM,EAAE;QACb,MAAM,EAAE,MAAM,EAAE;KACjB,CAAC;IACF,UAAiB,YAAY;QAC3B,QAAQ,EAAE,MAAM,CAAC;QACjB,IAAI,EAAE,MAAM,CAAC;QACb,EAAE,EAAE,MAAM,CAAC;QACX,GAAG,EAAE,MAAM,EAAE,CAAC;QACd,MAAM,EAAE,MAAM,EAAE,CAAC;KAClB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,mBAAmB,CAAC;IACnC,KAAY,UAAU,GAAG;QACvB,QAAQ,EAAE,WAAW;QACrB,IAAI,EAAE,WAAW;QACjB,EAAE,EAAE,WAAW;QACf,EAAE,EAAE,YAAY;QAChB,KAAK,EAAE,YAAY;KACpB,CAAC;IACF,KAAY,WAAW,GAAG;QACxB,QAAQ,EAAE,MAAM;QAChB,IAAI,EAAE,MAAM;QACZ,EAAE,EAAE,MAAM;QACV,EAAE,EAAE,MAAM;QACV,KAAK,EAAE,MAAM;KACd,CAAC;IACF,UAAiB,YAAY;QAC3B,QAAQ,EAAE,MAAM,CAAC;QACjB,IAAI,EAAE,MAAM,CAAC;QACb,EAAE,EAAE,MAAM,CAAC;QACX,EAAE,EAAE,MAAM,CAAC;QACX,KAAK,EAAE,MAAM,CAAC;KACf;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,QAAQ,CAAC;IACxB,KAAY,UAAU,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,YAAY,CAAC,CAAC;IAC3D,KAAY,WAAW,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC;IACtD,UAAiB,YAAY;QAC3B,KAAK,EAAE,MAAM,CAAC;QACd,EAAE,EAAE,MAAM,CAAC;KACZ;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,MAAM,WAAW,kBAAmB,SAAQ,YAAY;IACtD,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,kBAAkB,CAAC;IAC5D,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,2BAA2B,CAAC;IAEvC,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,EAAE,mBAAmB,CAC5B;QAAC,OAAO,EAAE,WAAW;QAAE,EAAE,EAAE,YAAY;KAAC,EACxC;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IAEF,cAAc,EAAE,mBAAmB,CACjC;QAAC,QAAQ,EAAE,WAAW,EAAE;QAAE,GAAG,EAAE,YAAY,EAAE;KAAC,EAC9C;QAAC,MAAM,EAAE;KAAC,EACV,MAAM,CACP,CAAC;IAEF,gBAAgB,EAAE,mBAAmB,CACnC;QAAC,OAAO,EAAE,WAAW;QAAE,QAAQ,EAAE,WAAW;KAAC,EAC7C;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,qBAAqB,EAAE,mBAAmB,CACxC;QACE,IAAI,EAAE,WAAW;QACjB,EAAE,EAAE,WAAW;QACf,GAAG,EAAE,YAAY,EAAE;QACnB,OAAO,EAAE,YAAY,EAAE;QACvB,IAAI,EAAE,SAAS;KAChB,EACD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,gBAAgB,EAAE,mBAAmB,CACnC;QACE,IAAI,EAAE,WAAW;QACjB,EAAE,EAAE,WAAW;QACf,EAAE,EAAE,YAAY;QAChB,MAAM,EAAE,YAAY;QACpB,IAAI,EAAE,SAAS;KAChB,EACD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,iBAAiB,EAAE,mBAAmB,CACpC;QAAC,QAAQ,EAAE,WAAW;QAAE,QAAQ,EAAE,OAAO;KAAC,EAC1C;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,iBAAiB,EAAE,mBAAmB,CACpC;QAAC,WAAW,EAAE,SAAS;KAAC,EACxB;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,GAAG,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEjE,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,WAAW,CACT,eAAe,EAAE,WAAW,GAC3B,mBAAmB,CACpB;QAAC,OAAO,EAAE,WAAW;QAAE,EAAE,EAAE,YAAY;KAAC,EACxC;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,gBAAgB,GAChC,mBAAmB,CACpB;QAAC,QAAQ,EAAE,WAAW,EAAE;QAAE,GAAG,EAAE,YAAY,EAAE;KAAC,EAC9C;QAAC,MAAM,EAAE;KAAC,EACV,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,kBAAkB,GAClC,mBAAmB,CACpB;QAAC,OAAO,EAAE,WAAW;QAAE,QAAQ,EAAE,WAAW;KAAC,EAC7C;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,uBAAuB,GACvC,mBAAmB,CACpB;QACE,IAAI,EAAE,WAAW;QACjB,EAAE,EAAE,WAAW;QACf,GAAG,EAAE,YAAY,EAAE;QACnB,OAAO,EAAE,YAAY,EAAE;QACvB,IAAI,EAAE,SAAS;KAChB,EACD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,kBAAkB,GAClC,mBAAmB,CACpB;QACE,IAAI,EAAE,WAAW;QACjB,EAAE,EAAE,WAAW;QACf,EAAE,EAAE,YAAY;QAChB,MAAM,EAAE,YAAY;QACpB,IAAI,EAAE,SAAS;KAChB,EACD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,mBAAmB,GACnC,mBAAmB,CACpB;QAAC,QAAQ,EAAE,WAAW;QAAE,QAAQ,EAAE,OAAO;KAAC,EAC1C;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,mBAAmB,GACnC,mBAAmB,CAAC,CAAC,WAAW,EAAE,SAAS,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IACpE,WAAW,CACT,eAAe,EAAE,KAAK,GACrB,mBAAmB,CAAC,CAAC,IAAI,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAE/D,QAAQ,CACN,GAAG,EAAE,gBAAgB,GACpB,kBAAkB,CACnB,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,aAAa,GACjB,kBAAkB,CACnB,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,eAAe,GACnB,kBAAkB,CACnB,kBAAkB,CAAC,UAAU,EAC7B,kBAAkB,CAAC,WAAW,EAC9B,kBAAkB,CAAC,YAAY,CAChC,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,gBAAgB,GACpB,kBAAkB,CACnB,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,KAAK,GACT,kBAAkB,CACnB,QAAQ,CAAC,UAAU,EACnB,QAAQ,CAAC,WAAW,EACpB,QAAQ,CAAC,YAAY,CACtB,CAAC;IAEF,OAAO,EAAE;QACP,sCAAsC,EAAE,kBAAkB,CACxD,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;QACF,cAAc,EAAE,kBAAkB,CAChC,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;QAEF,oBAAoB,EAAE,kBAAkB,CACtC,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QACF,WAAW,EAAE,kBAAkB,CAC7B,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QAEF,4DAA4D,EAAE,kBAAkB,CAC9E,kBAAkB,CAAC,UAAU,EAC7B,kBAAkB,CAAC,WAAW,EAC9B,kBAAkB,CAAC,YAAY,CAChC,CAAC;QACF,aAAa,EAAE,kBAAkB,CAC/B,kBAAkB,CAAC,UAAU,EAC7B,kBAAkB,CAAC,WAAW,EAC9B,kBAAkB,CAAC,YAAY,CAChC,CAAC;QAEF,yDAAyD,EAAE,kBAAkB,CAC3E,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;QACF,cAAc,EAAE,kBAAkB,CAChC,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;QAEF,qBAAqB,EAAE,kBAAkB,CACvC,QAAQ,CAAC,UAAU,EACnB,QAAQ,CAAC,WAAW,EACpB,QAAQ,CAAC,YAAY,CACtB,CAAC;QACF,GAAG,EAAE,kBAAkB,CACrB,QAAQ,CAAC,UAAU,EACnB,QAAQ,CAAC,WAAW,EACpB,QAAQ,CAAC,YAAY,CACtB,CAAC;KACH,CAAC;CACH"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable.js b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable.d.ts new file mode 100644 index 00000000..a859fec1 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable.d.ts @@ -0,0 +1,76 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; +export interface IERC1155ReceiverUpgradeableInterface extends Interface { + getFunction(nameOrSignature: "onERC1155BatchReceived" | "onERC1155Received" | "supportsInterface"): FunctionFragment; + encodeFunctionData(functionFragment: "onERC1155BatchReceived", values: [ + AddressLike, + AddressLike, + BigNumberish[], + BigNumberish[], + BytesLike + ]): string; + encodeFunctionData(functionFragment: "onERC1155Received", values: [AddressLike, AddressLike, BigNumberish, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + decodeFunctionResult(functionFragment: "onERC1155BatchReceived", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "onERC1155Received", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; +} +export interface IERC1155ReceiverUpgradeable extends BaseContract { + connect(runner?: ContractRunner | null): IERC1155ReceiverUpgradeable; + waitForDeployment(): Promise; + interface: IERC1155ReceiverUpgradeableInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + onERC1155BatchReceived: TypedContractMethod<[ + operator: AddressLike, + from: AddressLike, + ids: BigNumberish[], + values: BigNumberish[], + data: BytesLike + ], [ + string + ], "nonpayable">; + onERC1155Received: TypedContractMethod<[ + operator: AddressLike, + from: AddressLike, + id: BigNumberish, + value: BigNumberish, + data: BytesLike + ], [ + string + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "onERC1155BatchReceived"): TypedContractMethod<[ + operator: AddressLike, + from: AddressLike, + ids: BigNumberish[], + values: BigNumberish[], + data: BytesLike + ], [ + string + ], "nonpayable">; + getFunction(nameOrSignature: "onERC1155Received"): TypedContractMethod<[ + operator: AddressLike, + from: AddressLike, + id: BigNumberish, + value: BigNumberish, + data: BytesLike + ], [ + string + ], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + filters: {}; +} +//# sourceMappingURL=IERC1155ReceiverUpgradeable.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable.d.ts.map new file mode 100644 index 00000000..19c2a2f0 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC1155ReceiverUpgradeable.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,WAAW,EACX,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,aAAa,EACb,mBAAmB,EACpB,MAAM,oBAAoB,CAAC;AAE5B,MAAM,WAAW,oCAAqC,SAAQ,SAAS;IACrE,WAAW,CACT,eAAe,EACX,wBAAwB,GACxB,mBAAmB,GACnB,mBAAmB,GACtB,gBAAgB,CAAC;IAEpB,kBAAkB,CAChB,gBAAgB,EAAE,wBAAwB,EAC1C,MAAM,EAAE;QACN,WAAW;QACX,WAAW;QACX,YAAY,EAAE;QACd,YAAY,EAAE;QACd,SAAS;KACV,GACA,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,mBAAmB,EACrC,MAAM,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,YAAY,EAAE,SAAS,CAAC,GACxE,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,mBAAmB,EACrC,MAAM,EAAE,CAAC,SAAS,CAAC,GAClB,MAAM,CAAC;IAEV,oBAAoB,CAClB,gBAAgB,EAAE,wBAAwB,EAC1C,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,mBAAmB,EACrC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,mBAAmB,EACrC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;CACX;AAED,MAAM,WAAW,2BAA4B,SAAQ,YAAY;IAC/D,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,2BAA2B,CAAC;IACrE,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,oCAAoC,CAAC;IAEhD,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,sBAAsB,EAAE,mBAAmB,CACzC;QACE,QAAQ,EAAE,WAAW;QACrB,IAAI,EAAE,WAAW;QACjB,GAAG,EAAE,YAAY,EAAE;QACnB,MAAM,EAAE,YAAY,EAAE;QACtB,IAAI,EAAE,SAAS;KAChB,EACD;QAAC,MAAM;KAAC,EACR,YAAY,CACb,CAAC;IAEF,iBAAiB,EAAE,mBAAmB,CACpC;QACE,QAAQ,EAAE,WAAW;QACrB,IAAI,EAAE,WAAW;QACjB,EAAE,EAAE,YAAY;QAChB,KAAK,EAAE,YAAY;QACnB,IAAI,EAAE,SAAS;KAChB,EACD;QAAC,MAAM;KAAC,EACR,YAAY,CACb,CAAC;IAEF,iBAAiB,EAAE,mBAAmB,CACpC;QAAC,WAAW,EAAE,SAAS;KAAC,EACxB;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,WAAW,CACT,eAAe,EAAE,wBAAwB,GACxC,mBAAmB,CACpB;QACE,QAAQ,EAAE,WAAW;QACrB,IAAI,EAAE,WAAW;QACjB,GAAG,EAAE,YAAY,EAAE;QACnB,MAAM,EAAE,YAAY,EAAE;QACtB,IAAI,EAAE,SAAS;KAChB,EACD;QAAC,MAAM;KAAC,EACR,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,mBAAmB,GACnC,mBAAmB,CACpB;QACE,QAAQ,EAAE,WAAW;QACrB,IAAI,EAAE,WAAW;QACjB,EAAE,EAAE,YAAY;QAChB,KAAK,EAAE,YAAY;QACnB,IAAI,EAAE,SAAS;KAChB,EACD;QAAC,MAAM;KAAC,EACR,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,mBAAmB,GACnC,mBAAmB,CAAC,CAAC,WAAW,EAAE,SAAS,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IAEpE,OAAO,EAAE,EAAE,CAAC;CACb"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable.js b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable.d.ts new file mode 100644 index 00000000..d09b7474 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable.d.ts @@ -0,0 +1,233 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; +export interface IERC1155UpgradeableInterface extends Interface { + getFunction(nameOrSignature: "balanceOf" | "balanceOfBatch" | "isApprovedForAll" | "safeBatchTransferFrom" | "safeTransferFrom" | "setApprovalForAll" | "supportsInterface"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "ApprovalForAll" | "TransferBatch" | "TransferSingle" | "URI"): EventFragment; + encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "balanceOfBatch", values: [AddressLike[], BigNumberish[]]): string; + encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "safeBatchTransferFrom", values: [ + AddressLike, + AddressLike, + BigNumberish[], + BigNumberish[], + BytesLike + ]): string; + encodeFunctionData(functionFragment: "safeTransferFrom", values: [AddressLike, AddressLike, BigNumberish, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOfBatch", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeBatchTransferFrom", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; +} +export declare namespace ApprovalForAllEvent { + type InputTuple = [ + account: AddressLike, + operator: AddressLike, + approved: boolean + ]; + type OutputTuple = [ + account: string, + operator: string, + approved: boolean + ]; + interface OutputObject { + account: string; + operator: string; + approved: boolean; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferBatchEvent { + type InputTuple = [ + operator: AddressLike, + from: AddressLike, + to: AddressLike, + ids: BigNumberish[], + values: BigNumberish[] + ]; + type OutputTuple = [ + operator: string, + from: string, + to: string, + ids: bigint[], + values: bigint[] + ]; + interface OutputObject { + operator: string; + from: string; + to: string; + ids: bigint[]; + values: bigint[]; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferSingleEvent { + type InputTuple = [ + operator: AddressLike, + from: AddressLike, + to: AddressLike, + id: BigNumberish, + value: BigNumberish + ]; + type OutputTuple = [ + operator: string, + from: string, + to: string, + id: bigint, + value: bigint + ]; + interface OutputObject { + operator: string; + from: string; + to: string; + id: bigint; + value: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace URIEvent { + type InputTuple = [value: string, id: BigNumberish]; + type OutputTuple = [value: string, id: bigint]; + interface OutputObject { + value: string; + id: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface IERC1155Upgradeable extends BaseContract { + connect(runner?: ContractRunner | null): IERC1155Upgradeable; + waitForDeployment(): Promise; + interface: IERC1155UpgradeableInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + balanceOf: TypedContractMethod<[ + account: AddressLike, + id: BigNumberish + ], [ + bigint + ], "view">; + balanceOfBatch: TypedContractMethod<[ + accounts: AddressLike[], + ids: BigNumberish[] + ], [ + bigint[] + ], "view">; + isApprovedForAll: TypedContractMethod<[ + account: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + safeBatchTransferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + ids: BigNumberish[], + amounts: BigNumberish[], + data: BytesLike + ], [ + void + ], "nonpayable">; + safeTransferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + id: BigNumberish, + amount: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + setApprovalForAll: TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[ + account: AddressLike, + id: BigNumberish + ], [ + bigint + ], "view">; + getFunction(nameOrSignature: "balanceOfBatch"): TypedContractMethod<[ + accounts: AddressLike[], + ids: BigNumberish[] + ], [ + bigint[] + ], "view">; + getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ + account: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "safeBatchTransferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + ids: BigNumberish[], + amounts: BigNumberish[], + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + id: BigNumberish, + amount: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + getEvent(key: "ApprovalForAll"): TypedContractEvent; + getEvent(key: "TransferBatch"): TypedContractEvent; + getEvent(key: "TransferSingle"): TypedContractEvent; + getEvent(key: "URI"): TypedContractEvent; + filters: { + "ApprovalForAll(address,address,bool)": TypedContractEvent; + ApprovalForAll: TypedContractEvent; + "TransferBatch(address,address,address,uint256[],uint256[])": TypedContractEvent; + TransferBatch: TypedContractEvent; + "TransferSingle(address,address,address,uint256,uint256)": TypedContractEvent; + TransferSingle: TypedContractEvent; + "URI(string,uint256)": TypedContractEvent; + URI: TypedContractEvent; + }; +} +//# sourceMappingURL=IERC1155Upgradeable.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable.d.ts.map new file mode 100644 index 00000000..2e4240f5 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC1155Upgradeable.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable.js b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable.d.ts new file mode 100644 index 00000000..74d122a0 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable.d.ts @@ -0,0 +1,283 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; +export interface ERC1155BurnableUpgradeableInterface extends Interface { + getFunction(nameOrSignature: "balanceOf" | "balanceOfBatch" | "burn" | "burnBatch" | "isApprovedForAll" | "safeBatchTransferFrom" | "safeTransferFrom" | "setApprovalForAll" | "supportsInterface" | "uri"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "ApprovalForAll" | "Initialized" | "TransferBatch" | "TransferSingle" | "URI"): EventFragment; + encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "balanceOfBatch", values: [AddressLike[], BigNumberish[]]): string; + encodeFunctionData(functionFragment: "burn", values: [AddressLike, BigNumberish, BigNumberish]): string; + encodeFunctionData(functionFragment: "burnBatch", values: [AddressLike, BigNumberish[], BigNumberish[]]): string; + encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "safeBatchTransferFrom", values: [ + AddressLike, + AddressLike, + BigNumberish[], + BigNumberish[], + BytesLike + ]): string; + encodeFunctionData(functionFragment: "safeTransferFrom", values: [AddressLike, AddressLike, BigNumberish, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "uri", values: [BigNumberish]): string; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOfBatch", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "burn", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "burnBatch", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeBatchTransferFrom", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "uri", data: BytesLike): Result; +} +export declare namespace ApprovalForAllEvent { + type InputTuple = [ + account: AddressLike, + operator: AddressLike, + approved: boolean + ]; + type OutputTuple = [ + account: string, + operator: string, + approved: boolean + ]; + interface OutputObject { + account: string; + operator: string; + approved: boolean; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace InitializedEvent { + type InputTuple = [version: BigNumberish]; + type OutputTuple = [version: bigint]; + interface OutputObject { + version: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferBatchEvent { + type InputTuple = [ + operator: AddressLike, + from: AddressLike, + to: AddressLike, + ids: BigNumberish[], + values: BigNumberish[] + ]; + type OutputTuple = [ + operator: string, + from: string, + to: string, + ids: bigint[], + values: bigint[] + ]; + interface OutputObject { + operator: string; + from: string; + to: string; + ids: bigint[]; + values: bigint[]; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferSingleEvent { + type InputTuple = [ + operator: AddressLike, + from: AddressLike, + to: AddressLike, + id: BigNumberish, + value: BigNumberish + ]; + type OutputTuple = [ + operator: string, + from: string, + to: string, + id: bigint, + value: bigint + ]; + interface OutputObject { + operator: string; + from: string; + to: string; + id: bigint; + value: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace URIEvent { + type InputTuple = [value: string, id: BigNumberish]; + type OutputTuple = [value: string, id: bigint]; + interface OutputObject { + value: string; + id: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface ERC1155BurnableUpgradeable extends BaseContract { + connect(runner?: ContractRunner | null): ERC1155BurnableUpgradeable; + waitForDeployment(): Promise; + interface: ERC1155BurnableUpgradeableInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + balanceOf: TypedContractMethod<[ + account: AddressLike, + id: BigNumberish + ], [ + bigint + ], "view">; + balanceOfBatch: TypedContractMethod<[ + accounts: AddressLike[], + ids: BigNumberish[] + ], [ + bigint[] + ], "view">; + burn: TypedContractMethod<[ + account: AddressLike, + id: BigNumberish, + value: BigNumberish + ], [ + void + ], "nonpayable">; + burnBatch: TypedContractMethod<[ + account: AddressLike, + ids: BigNumberish[], + values: BigNumberish[] + ], [ + void + ], "nonpayable">; + isApprovedForAll: TypedContractMethod<[ + account: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + safeBatchTransferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + ids: BigNumberish[], + amounts: BigNumberish[], + data: BytesLike + ], [ + void + ], "nonpayable">; + safeTransferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + id: BigNumberish, + amount: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + setApprovalForAll: TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + uri: TypedContractMethod<[arg0: BigNumberish], [string], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[ + account: AddressLike, + id: BigNumberish + ], [ + bigint + ], "view">; + getFunction(nameOrSignature: "balanceOfBatch"): TypedContractMethod<[ + accounts: AddressLike[], + ids: BigNumberish[] + ], [ + bigint[] + ], "view">; + getFunction(nameOrSignature: "burn"): TypedContractMethod<[ + account: AddressLike, + id: BigNumberish, + value: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "burnBatch"): TypedContractMethod<[ + account: AddressLike, + ids: BigNumberish[], + values: BigNumberish[] + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ + account: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "safeBatchTransferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + ids: BigNumberish[], + amounts: BigNumberish[], + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + id: BigNumberish, + amount: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "uri"): TypedContractMethod<[arg0: BigNumberish], [string], "view">; + getEvent(key: "ApprovalForAll"): TypedContractEvent; + getEvent(key: "Initialized"): TypedContractEvent; + getEvent(key: "TransferBatch"): TypedContractEvent; + getEvent(key: "TransferSingle"): TypedContractEvent; + getEvent(key: "URI"): TypedContractEvent; + filters: { + "ApprovalForAll(address,address,bool)": TypedContractEvent; + ApprovalForAll: TypedContractEvent; + "Initialized(uint8)": TypedContractEvent; + Initialized: TypedContractEvent; + "TransferBatch(address,address,address,uint256[],uint256[])": TypedContractEvent; + TransferBatch: TypedContractEvent; + "TransferSingle(address,address,address,uint256,uint256)": TypedContractEvent; + TransferSingle: TypedContractEvent; + "URI(string,uint256)": TypedContractEvent; + URI: TypedContractEvent; + }; +} +//# sourceMappingURL=ERC1155BurnableUpgradeable.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable.d.ts.map new file mode 100644 index 00000000..22830101 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ERC1155BurnableUpgradeable.d.ts","sourceRoot":"","sources":["../../../../../../../types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,aAAa,EACb,WAAW,EACX,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,mBAAmB,EACnB,aAAa,EACb,mBAAmB,EACpB,MAAM,uBAAuB,CAAC;AAE/B,MAAM,WAAW,mCAAoC,SAAQ,SAAS;IACpE,WAAW,CACT,eAAe,EACX,WAAW,GACX,gBAAgB,GAChB,MAAM,GACN,WAAW,GACX,kBAAkB,GAClB,uBAAuB,GACvB,kBAAkB,GAClB,mBAAmB,GACnB,mBAAmB,GACnB,KAAK,GACR,gBAAgB,CAAC;IAEpB,QAAQ,CACN,sBAAsB,EAClB,gBAAgB,GAChB,aAAa,GACb,eAAe,GACf,gBAAgB,GAChB,KAAK,GACR,aAAa,CAAC;IAEjB,kBAAkB,CAChB,gBAAgB,EAAE,WAAW,EAC7B,MAAM,EAAE,CAAC,WAAW,EAAE,YAAY,CAAC,GAClC,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,gBAAgB,EAClC,MAAM,EAAE,CAAC,WAAW,EAAE,EAAE,YAAY,EAAE,CAAC,GACtC,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,MAAM,EACxB,MAAM,EAAE,CAAC,WAAW,EAAE,YAAY,EAAE,YAAY,CAAC,GAChD,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,WAAW,EAC7B,MAAM,EAAE,CAAC,WAAW,EAAE,YAAY,EAAE,EAAE,YAAY,EAAE,CAAC,GACpD,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,kBAAkB,EACpC,MAAM,EAAE,CAAC,WAAW,EAAE,WAAW,CAAC,GACjC,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,uBAAuB,EACzC,MAAM,EAAE;QACN,WAAW;QACX,WAAW;QACX,YAAY,EAAE;QACd,YAAY,EAAE;QACd,SAAS;KACV,GACA,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,kBAAkB,EACpC,MAAM,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,YAAY,EAAE,SAAS,CAAC,GACxE,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,mBAAmB,EACrC,MAAM,EAAE,CAAC,WAAW,EAAE,OAAO,CAAC,GAC7B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,mBAAmB,EACrC,MAAM,EAAE,CAAC,SAAS,CAAC,GAClB,MAAM,CAAC;IACV,kBAAkB,CAAC,gBAAgB,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,YAAY,CAAC,GAAG,MAAM,CAAC;IAE5E,oBAAoB,CAAC,gBAAgB,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC7E,oBAAoB,CAClB,gBAAgB,EAAE,gBAAgB,EAClC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IACxE,oBAAoB,CAAC,gBAAgB,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC7E,oBAAoB,CAClB,gBAAgB,EAAE,kBAAkB,EACpC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,uBAAuB,EACzC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,kBAAkB,EACpC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,mBAAmB,EACrC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,mBAAmB,EACrC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;CACxE;AAED,yBAAiB,mBAAmB,CAAC;IACnC,KAAY,UAAU,GAAG;QACvB,OAAO,EAAE,WAAW;QACpB,QAAQ,EAAE,WAAW;QACrB,QAAQ,EAAE,OAAO;KAClB,CAAC;IACF,KAAY,WAAW,GAAG;QACxB,OAAO,EAAE,MAAM;QACf,QAAQ,EAAE,MAAM;QAChB,QAAQ,EAAE,OAAO;KAClB,CAAC;IACF,UAAiB,YAAY;QAC3B,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,OAAO,CAAC;KACnB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,gBAAgB,CAAC;IAChC,KAAY,UAAU,GAAG,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IACjD,KAAY,WAAW,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC5C,UAAiB,YAAY;QAC3B,OAAO,EAAE,MAAM,CAAC;KACjB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,kBAAkB,CAAC;IAClC,KAAY,UAAU,GAAG;QACvB,QAAQ,EAAE,WAAW;QACrB,IAAI,EAAE,WAAW;QACjB,EAAE,EAAE,WAAW;QACf,GAAG,EAAE,YAAY,EAAE;QACnB,MAAM,EAAE,YAAY,EAAE;KACvB,CAAC;IACF,KAAY,WAAW,GAAG;QACxB,QAAQ,EAAE,MAAM;QAChB,IAAI,EAAE,MAAM;QACZ,EAAE,EAAE,MAAM;QACV,GAAG,EAAE,MAAM,EAAE;QACb,MAAM,EAAE,MAAM,EAAE;KACjB,CAAC;IACF,UAAiB,YAAY;QAC3B,QAAQ,EAAE,MAAM,CAAC;QACjB,IAAI,EAAE,MAAM,CAAC;QACb,EAAE,EAAE,MAAM,CAAC;QACX,GAAG,EAAE,MAAM,EAAE,CAAC;QACd,MAAM,EAAE,MAAM,EAAE,CAAC;KAClB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,mBAAmB,CAAC;IACnC,KAAY,UAAU,GAAG;QACvB,QAAQ,EAAE,WAAW;QACrB,IAAI,EAAE,WAAW;QACjB,EAAE,EAAE,WAAW;QACf,EAAE,EAAE,YAAY;QAChB,KAAK,EAAE,YAAY;KACpB,CAAC;IACF,KAAY,WAAW,GAAG;QACxB,QAAQ,EAAE,MAAM;QAChB,IAAI,EAAE,MAAM;QACZ,EAAE,EAAE,MAAM;QACV,EAAE,EAAE,MAAM;QACV,KAAK,EAAE,MAAM;KACd,CAAC;IACF,UAAiB,YAAY;QAC3B,QAAQ,EAAE,MAAM,CAAC;QACjB,IAAI,EAAE,MAAM,CAAC;QACb,EAAE,EAAE,MAAM,CAAC;QACX,EAAE,EAAE,MAAM,CAAC;QACX,KAAK,EAAE,MAAM,CAAC;KACf;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,QAAQ,CAAC;IACxB,KAAY,UAAU,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,YAAY,CAAC,CAAC;IAC3D,KAAY,WAAW,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC;IACtD,UAAiB,YAAY;QAC3B,KAAK,EAAE,MAAM,CAAC;QACd,EAAE,EAAE,MAAM,CAAC;KACZ;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,MAAM,WAAW,0BAA2B,SAAQ,YAAY;IAC9D,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,0BAA0B,CAAC;IACpE,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,mCAAmC,CAAC;IAE/C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,EAAE,mBAAmB,CAC5B;QAAC,OAAO,EAAE,WAAW;QAAE,EAAE,EAAE,YAAY;KAAC,EACxC;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IAEF,cAAc,EAAE,mBAAmB,CACjC;QAAC,QAAQ,EAAE,WAAW,EAAE;QAAE,GAAG,EAAE,YAAY,EAAE;KAAC,EAC9C;QAAC,MAAM,EAAE;KAAC,EACV,MAAM,CACP,CAAC;IAEF,IAAI,EAAE,mBAAmB,CACvB;QAAC,OAAO,EAAE,WAAW;QAAE,EAAE,EAAE,YAAY;QAAE,KAAK,EAAE,YAAY;KAAC,EAC7D;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,SAAS,EAAE,mBAAmB,CAC5B;QAAC,OAAO,EAAE,WAAW;QAAE,GAAG,EAAE,YAAY,EAAE;QAAE,MAAM,EAAE,YAAY,EAAE;KAAC,EACnE;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,gBAAgB,EAAE,mBAAmB,CACnC;QAAC,OAAO,EAAE,WAAW;QAAE,QAAQ,EAAE,WAAW;KAAC,EAC7C;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,qBAAqB,EAAE,mBAAmB,CACxC;QACE,IAAI,EAAE,WAAW;QACjB,EAAE,EAAE,WAAW;QACf,GAAG,EAAE,YAAY,EAAE;QACnB,OAAO,EAAE,YAAY,EAAE;QACvB,IAAI,EAAE,SAAS;KAChB,EACD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,gBAAgB,EAAE,mBAAmB,CACnC;QACE,IAAI,EAAE,WAAW;QACjB,EAAE,EAAE,WAAW;QACf,EAAE,EAAE,YAAY;QAChB,MAAM,EAAE,YAAY;QACpB,IAAI,EAAE,SAAS;KAChB,EACD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,iBAAiB,EAAE,mBAAmB,CACpC;QAAC,QAAQ,EAAE,WAAW;QAAE,QAAQ,EAAE,OAAO;KAAC,EAC1C;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,iBAAiB,EAAE,mBAAmB,CACpC;QAAC,WAAW,EAAE,SAAS;KAAC,EACxB;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,GAAG,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEjE,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,WAAW,CACT,eAAe,EAAE,WAAW,GAC3B,mBAAmB,CACpB;QAAC,OAAO,EAAE,WAAW;QAAE,EAAE,EAAE,YAAY;KAAC,EACxC;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,gBAAgB,GAChC,mBAAmB,CACpB;QAAC,QAAQ,EAAE,WAAW,EAAE;QAAE,GAAG,EAAE,YAAY,EAAE;KAAC,EAC9C;QAAC,MAAM,EAAE;KAAC,EACV,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,MAAM,GACtB,mBAAmB,CACpB;QAAC,OAAO,EAAE,WAAW;QAAE,EAAE,EAAE,YAAY;QAAE,KAAK,EAAE,YAAY;KAAC,EAC7D;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,WAAW,GAC3B,mBAAmB,CACpB;QAAC,OAAO,EAAE,WAAW;QAAE,GAAG,EAAE,YAAY,EAAE;QAAE,MAAM,EAAE,YAAY,EAAE;KAAC,EACnE;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,kBAAkB,GAClC,mBAAmB,CACpB;QAAC,OAAO,EAAE,WAAW;QAAE,QAAQ,EAAE,WAAW;KAAC,EAC7C;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,uBAAuB,GACvC,mBAAmB,CACpB;QACE,IAAI,EAAE,WAAW;QACjB,EAAE,EAAE,WAAW;QACf,GAAG,EAAE,YAAY,EAAE;QACnB,OAAO,EAAE,YAAY,EAAE;QACvB,IAAI,EAAE,SAAS;KAChB,EACD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,kBAAkB,GAClC,mBAAmB,CACpB;QACE,IAAI,EAAE,WAAW;QACjB,EAAE,EAAE,WAAW;QACf,EAAE,EAAE,YAAY;QAChB,MAAM,EAAE,YAAY;QACpB,IAAI,EAAE,SAAS;KAChB,EACD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,mBAAmB,GACnC,mBAAmB,CACpB;QAAC,QAAQ,EAAE,WAAW;QAAE,QAAQ,EAAE,OAAO;KAAC,EAC1C;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,mBAAmB,GACnC,mBAAmB,CAAC,CAAC,WAAW,EAAE,SAAS,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IACpE,WAAW,CACT,eAAe,EAAE,KAAK,GACrB,mBAAmB,CAAC,CAAC,IAAI,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAE/D,QAAQ,CACN,GAAG,EAAE,gBAAgB,GACpB,kBAAkB,CACnB,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,aAAa,GACjB,kBAAkB,CACnB,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,eAAe,GACnB,kBAAkB,CACnB,kBAAkB,CAAC,UAAU,EAC7B,kBAAkB,CAAC,WAAW,EAC9B,kBAAkB,CAAC,YAAY,CAChC,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,gBAAgB,GACpB,kBAAkB,CACnB,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,KAAK,GACT,kBAAkB,CACnB,QAAQ,CAAC,UAAU,EACnB,QAAQ,CAAC,WAAW,EACpB,QAAQ,CAAC,YAAY,CACtB,CAAC;IAEF,OAAO,EAAE;QACP,sCAAsC,EAAE,kBAAkB,CACxD,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;QACF,cAAc,EAAE,kBAAkB,CAChC,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;QAEF,oBAAoB,EAAE,kBAAkB,CACtC,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QACF,WAAW,EAAE,kBAAkB,CAC7B,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QAEF,4DAA4D,EAAE,kBAAkB,CAC9E,kBAAkB,CAAC,UAAU,EAC7B,kBAAkB,CAAC,WAAW,EAC9B,kBAAkB,CAAC,YAAY,CAChC,CAAC;QACF,aAAa,EAAE,kBAAkB,CAC/B,kBAAkB,CAAC,UAAU,EAC7B,kBAAkB,CAAC,WAAW,EAC9B,kBAAkB,CAAC,YAAY,CAChC,CAAC;QAEF,yDAAyD,EAAE,kBAAkB,CAC3E,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;QACF,cAAc,EAAE,kBAAkB,CAChC,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;QAEF,qBAAqB,EAAE,kBAAkB,CACvC,QAAQ,CAAC,UAAU,EACnB,QAAQ,CAAC,WAAW,EACpB,QAAQ,CAAC,YAAY,CACtB,CAAC;QACF,GAAG,EAAE,kBAAkB,CACrB,QAAQ,CAAC,UAAU,EACnB,QAAQ,CAAC,WAAW,EACpB,QAAQ,CAAC,YAAY,CACtB,CAAC;KACH,CAAC;CACH"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable.js b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable.d.ts new file mode 100644 index 00000000..04ca15a3 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable.d.ts @@ -0,0 +1,283 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; +export interface ERC1155PausableUpgradeableInterface extends Interface { + getFunction(nameOrSignature: "balanceOf" | "balanceOfBatch" | "isApprovedForAll" | "paused" | "safeBatchTransferFrom" | "safeTransferFrom" | "setApprovalForAll" | "supportsInterface" | "uri"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "ApprovalForAll" | "Initialized" | "Paused" | "TransferBatch" | "TransferSingle" | "URI" | "Unpaused"): EventFragment; + encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "balanceOfBatch", values: [AddressLike[], BigNumberish[]]): string; + encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "paused", values?: undefined): string; + encodeFunctionData(functionFragment: "safeBatchTransferFrom", values: [ + AddressLike, + AddressLike, + BigNumberish[], + BigNumberish[], + BytesLike + ]): string; + encodeFunctionData(functionFragment: "safeTransferFrom", values: [AddressLike, AddressLike, BigNumberish, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "uri", values: [BigNumberish]): string; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOfBatch", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "paused", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeBatchTransferFrom", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "uri", data: BytesLike): Result; +} +export declare namespace ApprovalForAllEvent { + type InputTuple = [ + account: AddressLike, + operator: AddressLike, + approved: boolean + ]; + type OutputTuple = [ + account: string, + operator: string, + approved: boolean + ]; + interface OutputObject { + account: string; + operator: string; + approved: boolean; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace InitializedEvent { + type InputTuple = [version: BigNumberish]; + type OutputTuple = [version: bigint]; + interface OutputObject { + version: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace PausedEvent { + type InputTuple = [account: AddressLike]; + type OutputTuple = [account: string]; + interface OutputObject { + account: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferBatchEvent { + type InputTuple = [ + operator: AddressLike, + from: AddressLike, + to: AddressLike, + ids: BigNumberish[], + values: BigNumberish[] + ]; + type OutputTuple = [ + operator: string, + from: string, + to: string, + ids: bigint[], + values: bigint[] + ]; + interface OutputObject { + operator: string; + from: string; + to: string; + ids: bigint[]; + values: bigint[]; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferSingleEvent { + type InputTuple = [ + operator: AddressLike, + from: AddressLike, + to: AddressLike, + id: BigNumberish, + value: BigNumberish + ]; + type OutputTuple = [ + operator: string, + from: string, + to: string, + id: bigint, + value: bigint + ]; + interface OutputObject { + operator: string; + from: string; + to: string; + id: bigint; + value: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace URIEvent { + type InputTuple = [value: string, id: BigNumberish]; + type OutputTuple = [value: string, id: bigint]; + interface OutputObject { + value: string; + id: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace UnpausedEvent { + type InputTuple = [account: AddressLike]; + type OutputTuple = [account: string]; + interface OutputObject { + account: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface ERC1155PausableUpgradeable extends BaseContract { + connect(runner?: ContractRunner | null): ERC1155PausableUpgradeable; + waitForDeployment(): Promise; + interface: ERC1155PausableUpgradeableInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + balanceOf: TypedContractMethod<[ + account: AddressLike, + id: BigNumberish + ], [ + bigint + ], "view">; + balanceOfBatch: TypedContractMethod<[ + accounts: AddressLike[], + ids: BigNumberish[] + ], [ + bigint[] + ], "view">; + isApprovedForAll: TypedContractMethod<[ + account: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + paused: TypedContractMethod<[], [boolean], "view">; + safeBatchTransferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + ids: BigNumberish[], + amounts: BigNumberish[], + data: BytesLike + ], [ + void + ], "nonpayable">; + safeTransferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + id: BigNumberish, + amount: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + setApprovalForAll: TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + uri: TypedContractMethod<[arg0: BigNumberish], [string], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[ + account: AddressLike, + id: BigNumberish + ], [ + bigint + ], "view">; + getFunction(nameOrSignature: "balanceOfBatch"): TypedContractMethod<[ + accounts: AddressLike[], + ids: BigNumberish[] + ], [ + bigint[] + ], "view">; + getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ + account: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "paused"): TypedContractMethod<[], [boolean], "view">; + getFunction(nameOrSignature: "safeBatchTransferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + ids: BigNumberish[], + amounts: BigNumberish[], + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + id: BigNumberish, + amount: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "uri"): TypedContractMethod<[arg0: BigNumberish], [string], "view">; + getEvent(key: "ApprovalForAll"): TypedContractEvent; + getEvent(key: "Initialized"): TypedContractEvent; + getEvent(key: "Paused"): TypedContractEvent; + getEvent(key: "TransferBatch"): TypedContractEvent; + getEvent(key: "TransferSingle"): TypedContractEvent; + getEvent(key: "URI"): TypedContractEvent; + getEvent(key: "Unpaused"): TypedContractEvent; + filters: { + "ApprovalForAll(address,address,bool)": TypedContractEvent; + ApprovalForAll: TypedContractEvent; + "Initialized(uint8)": TypedContractEvent; + Initialized: TypedContractEvent; + "Paused(address)": TypedContractEvent; + Paused: TypedContractEvent; + "TransferBatch(address,address,address,uint256[],uint256[])": TypedContractEvent; + TransferBatch: TypedContractEvent; + "TransferSingle(address,address,address,uint256,uint256)": TypedContractEvent; + TransferSingle: TypedContractEvent; + "URI(string,uint256)": TypedContractEvent; + URI: TypedContractEvent; + "Unpaused(address)": TypedContractEvent; + Unpaused: TypedContractEvent; + }; +} +//# sourceMappingURL=ERC1155PausableUpgradeable.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable.d.ts.map new file mode 100644 index 00000000..d28017e0 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ERC1155PausableUpgradeable.d.ts","sourceRoot":"","sources":["../../../../../../../types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable.js b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.d.ts new file mode 100644 index 00000000..1546ae1b --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.d.ts @@ -0,0 +1,237 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; +export interface IERC1155MetadataURIUpgradeableInterface extends Interface { + getFunction(nameOrSignature: "balanceOf" | "balanceOfBatch" | "isApprovedForAll" | "safeBatchTransferFrom" | "safeTransferFrom" | "setApprovalForAll" | "supportsInterface" | "uri"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "ApprovalForAll" | "TransferBatch" | "TransferSingle" | "URI"): EventFragment; + encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "balanceOfBatch", values: [AddressLike[], BigNumberish[]]): string; + encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "safeBatchTransferFrom", values: [ + AddressLike, + AddressLike, + BigNumberish[], + BigNumberish[], + BytesLike + ]): string; + encodeFunctionData(functionFragment: "safeTransferFrom", values: [AddressLike, AddressLike, BigNumberish, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "uri", values: [BigNumberish]): string; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOfBatch", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeBatchTransferFrom", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "uri", data: BytesLike): Result; +} +export declare namespace ApprovalForAllEvent { + type InputTuple = [ + account: AddressLike, + operator: AddressLike, + approved: boolean + ]; + type OutputTuple = [ + account: string, + operator: string, + approved: boolean + ]; + interface OutputObject { + account: string; + operator: string; + approved: boolean; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferBatchEvent { + type InputTuple = [ + operator: AddressLike, + from: AddressLike, + to: AddressLike, + ids: BigNumberish[], + values: BigNumberish[] + ]; + type OutputTuple = [ + operator: string, + from: string, + to: string, + ids: bigint[], + values: bigint[] + ]; + interface OutputObject { + operator: string; + from: string; + to: string; + ids: bigint[]; + values: bigint[]; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferSingleEvent { + type InputTuple = [ + operator: AddressLike, + from: AddressLike, + to: AddressLike, + id: BigNumberish, + value: BigNumberish + ]; + type OutputTuple = [ + operator: string, + from: string, + to: string, + id: bigint, + value: bigint + ]; + interface OutputObject { + operator: string; + from: string; + to: string; + id: bigint; + value: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace URIEvent { + type InputTuple = [value: string, id: BigNumberish]; + type OutputTuple = [value: string, id: bigint]; + interface OutputObject { + value: string; + id: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface IERC1155MetadataURIUpgradeable extends BaseContract { + connect(runner?: ContractRunner | null): IERC1155MetadataURIUpgradeable; + waitForDeployment(): Promise; + interface: IERC1155MetadataURIUpgradeableInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + balanceOf: TypedContractMethod<[ + account: AddressLike, + id: BigNumberish + ], [ + bigint + ], "view">; + balanceOfBatch: TypedContractMethod<[ + accounts: AddressLike[], + ids: BigNumberish[] + ], [ + bigint[] + ], "view">; + isApprovedForAll: TypedContractMethod<[ + account: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + safeBatchTransferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + ids: BigNumberish[], + amounts: BigNumberish[], + data: BytesLike + ], [ + void + ], "nonpayable">; + safeTransferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + id: BigNumberish, + amount: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + setApprovalForAll: TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + uri: TypedContractMethod<[id: BigNumberish], [string], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[ + account: AddressLike, + id: BigNumberish + ], [ + bigint + ], "view">; + getFunction(nameOrSignature: "balanceOfBatch"): TypedContractMethod<[ + accounts: AddressLike[], + ids: BigNumberish[] + ], [ + bigint[] + ], "view">; + getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ + account: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "safeBatchTransferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + ids: BigNumberish[], + amounts: BigNumberish[], + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + id: BigNumberish, + amount: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "uri"): TypedContractMethod<[id: BigNumberish], [string], "view">; + getEvent(key: "ApprovalForAll"): TypedContractEvent; + getEvent(key: "TransferBatch"): TypedContractEvent; + getEvent(key: "TransferSingle"): TypedContractEvent; + getEvent(key: "URI"): TypedContractEvent; + filters: { + "ApprovalForAll(address,address,bool)": TypedContractEvent; + ApprovalForAll: TypedContractEvent; + "TransferBatch(address,address,address,uint256[],uint256[])": TypedContractEvent; + TransferBatch: TypedContractEvent; + "TransferSingle(address,address,address,uint256,uint256)": TypedContractEvent; + TransferSingle: TypedContractEvent; + "URI(string,uint256)": TypedContractEvent; + URI: TypedContractEvent; + }; +} +//# sourceMappingURL=IERC1155MetadataURIUpgradeable.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.d.ts.map new file mode 100644 index 00000000..58d1e773 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC1155MetadataURIUpgradeable.d.ts","sourceRoot":"","sources":["../../../../../../../types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.js b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/index.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/index.d.ts new file mode 100644 index 00000000..cc5e934c --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/index.d.ts @@ -0,0 +1,4 @@ +export type { ERC1155BurnableUpgradeable } from "./ERC1155BurnableUpgradeable"; +export type { ERC1155PausableUpgradeable } from "./ERC1155PausableUpgradeable"; +export type { IERC1155MetadataURIUpgradeable } from "./IERC1155MetadataURIUpgradeable"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/index.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/index.d.ts.map new file mode 100644 index 00000000..32184a93 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC/E,YAAY,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC/E,YAAY,EAAE,8BAA8B,EAAE,MAAM,kCAAkC,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/index.js b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/index.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/index.d.ts new file mode 100644 index 00000000..b6349eb6 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/index.d.ts @@ -0,0 +1,8 @@ +import type * as extensions from "./extensions"; +export type { extensions }; +import type * as presets from "./presets"; +export type { presets }; +export type { ERC1155Upgradeable } from "./ERC1155Upgradeable"; +export type { IERC1155ReceiverUpgradeable } from "./IERC1155ReceiverUpgradeable"; +export type { IERC1155Upgradeable } from "./IERC1155Upgradeable"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/index.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/index.d.ts.map new file mode 100644 index 00000000..6b52b0cc --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts-upgradeable/token/ERC1155/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,UAAU,MAAM,cAAc,CAAC;AAChD,YAAY,EAAE,UAAU,EAAE,CAAC;AAC3B,OAAO,KAAK,KAAK,OAAO,MAAM,WAAW,CAAC;AAC1C,YAAY,EAAE,OAAO,EAAE,CAAC;AACxB,YAAY,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,YAAY,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AACjF,YAAY,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/index.js b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable.d.ts new file mode 100644 index 00000000..0d83fe7e --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable.d.ts @@ -0,0 +1,517 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; +export interface ERC1155PresetMinterPauserUpgradeableInterface extends Interface { + getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE" | "MINTER_ROLE" | "PAUSER_ROLE" | "balanceOf" | "balanceOfBatch" | "burn" | "burnBatch" | "getRoleAdmin" | "getRoleMember" | "getRoleMemberCount" | "grantRole" | "hasRole" | "initialize" | "isApprovedForAll" | "mint" | "mintBatch" | "pause" | "paused" | "renounceRole" | "revokeRole" | "safeBatchTransferFrom" | "safeTransferFrom" | "setApprovalForAll" | "supportsInterface" | "unpause" | "uri"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "ApprovalForAll" | "Initialized" | "Paused" | "RoleAdminChanged" | "RoleGranted" | "RoleRevoked" | "TransferBatch" | "TransferSingle" | "URI" | "Unpaused"): EventFragment; + encodeFunctionData(functionFragment: "DEFAULT_ADMIN_ROLE", values?: undefined): string; + encodeFunctionData(functionFragment: "MINTER_ROLE", values?: undefined): string; + encodeFunctionData(functionFragment: "PAUSER_ROLE", values?: undefined): string; + encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "balanceOfBatch", values: [AddressLike[], BigNumberish[]]): string; + encodeFunctionData(functionFragment: "burn", values: [AddressLike, BigNumberish, BigNumberish]): string; + encodeFunctionData(functionFragment: "burnBatch", values: [AddressLike, BigNumberish[], BigNumberish[]]): string; + encodeFunctionData(functionFragment: "getRoleAdmin", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "getRoleMember", values: [BytesLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "getRoleMemberCount", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "grantRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "hasRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "initialize", values: [string]): string; + encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "mint", values: [AddressLike, BigNumberish, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "mintBatch", values: [AddressLike, BigNumberish[], BigNumberish[], BytesLike]): string; + encodeFunctionData(functionFragment: "pause", values?: undefined): string; + encodeFunctionData(functionFragment: "paused", values?: undefined): string; + encodeFunctionData(functionFragment: "renounceRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "revokeRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "safeBatchTransferFrom", values: [ + AddressLike, + AddressLike, + BigNumberish[], + BigNumberish[], + BytesLike + ]): string; + encodeFunctionData(functionFragment: "safeTransferFrom", values: [AddressLike, AddressLike, BigNumberish, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "unpause", values?: undefined): string; + encodeFunctionData(functionFragment: "uri", values: [BigNumberish]): string; + decodeFunctionResult(functionFragment: "DEFAULT_ADMIN_ROLE", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "MINTER_ROLE", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "PAUSER_ROLE", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOfBatch", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "burn", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "burnBatch", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getRoleAdmin", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getRoleMember", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getRoleMemberCount", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "grantRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "hasRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "mint", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "mintBatch", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "pause", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "paused", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "revokeRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeBatchTransferFrom", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "unpause", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "uri", data: BytesLike): Result; +} +export declare namespace ApprovalForAllEvent { + type InputTuple = [ + account: AddressLike, + operator: AddressLike, + approved: boolean + ]; + type OutputTuple = [ + account: string, + operator: string, + approved: boolean + ]; + interface OutputObject { + account: string; + operator: string; + approved: boolean; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace InitializedEvent { + type InputTuple = [version: BigNumberish]; + type OutputTuple = [version: bigint]; + interface OutputObject { + version: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace PausedEvent { + type InputTuple = [account: AddressLike]; + type OutputTuple = [account: string]; + interface OutputObject { + account: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RoleAdminChangedEvent { + type InputTuple = [ + role: BytesLike, + previousAdminRole: BytesLike, + newAdminRole: BytesLike + ]; + type OutputTuple = [ + role: string, + previousAdminRole: string, + newAdminRole: string + ]; + interface OutputObject { + role: string; + previousAdminRole: string; + newAdminRole: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RoleGrantedEvent { + type InputTuple = [ + role: BytesLike, + account: AddressLike, + sender: AddressLike + ]; + type OutputTuple = [role: string, account: string, sender: string]; + interface OutputObject { + role: string; + account: string; + sender: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RoleRevokedEvent { + type InputTuple = [ + role: BytesLike, + account: AddressLike, + sender: AddressLike + ]; + type OutputTuple = [role: string, account: string, sender: string]; + interface OutputObject { + role: string; + account: string; + sender: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferBatchEvent { + type InputTuple = [ + operator: AddressLike, + from: AddressLike, + to: AddressLike, + ids: BigNumberish[], + values: BigNumberish[] + ]; + type OutputTuple = [ + operator: string, + from: string, + to: string, + ids: bigint[], + values: bigint[] + ]; + interface OutputObject { + operator: string; + from: string; + to: string; + ids: bigint[]; + values: bigint[]; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferSingleEvent { + type InputTuple = [ + operator: AddressLike, + from: AddressLike, + to: AddressLike, + id: BigNumberish, + value: BigNumberish + ]; + type OutputTuple = [ + operator: string, + from: string, + to: string, + id: bigint, + value: bigint + ]; + interface OutputObject { + operator: string; + from: string; + to: string; + id: bigint; + value: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace URIEvent { + type InputTuple = [value: string, id: BigNumberish]; + type OutputTuple = [value: string, id: bigint]; + interface OutputObject { + value: string; + id: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace UnpausedEvent { + type InputTuple = [account: AddressLike]; + type OutputTuple = [account: string]; + interface OutputObject { + account: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface ERC1155PresetMinterPauserUpgradeable extends BaseContract { + connect(runner?: ContractRunner | null): ERC1155PresetMinterPauserUpgradeable; + waitForDeployment(): Promise; + interface: ERC1155PresetMinterPauserUpgradeableInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + DEFAULT_ADMIN_ROLE: TypedContractMethod<[], [string], "view">; + MINTER_ROLE: TypedContractMethod<[], [string], "view">; + PAUSER_ROLE: TypedContractMethod<[], [string], "view">; + balanceOf: TypedContractMethod<[ + account: AddressLike, + id: BigNumberish + ], [ + bigint + ], "view">; + balanceOfBatch: TypedContractMethod<[ + accounts: AddressLike[], + ids: BigNumberish[] + ], [ + bigint[] + ], "view">; + burn: TypedContractMethod<[ + account: AddressLike, + id: BigNumberish, + value: BigNumberish + ], [ + void + ], "nonpayable">; + burnBatch: TypedContractMethod<[ + account: AddressLike, + ids: BigNumberish[], + values: BigNumberish[] + ], [ + void + ], "nonpayable">; + getRoleAdmin: TypedContractMethod<[role: BytesLike], [string], "view">; + getRoleMember: TypedContractMethod<[ + role: BytesLike, + index: BigNumberish + ], [ + string + ], "view">; + getRoleMemberCount: TypedContractMethod<[role: BytesLike], [bigint], "view">; + grantRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + hasRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + boolean + ], "view">; + initialize: TypedContractMethod<[uri: string], [void], "nonpayable">; + isApprovedForAll: TypedContractMethod<[ + account: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + mint: TypedContractMethod<[ + to: AddressLike, + id: BigNumberish, + amount: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + mintBatch: TypedContractMethod<[ + to: AddressLike, + ids: BigNumberish[], + amounts: BigNumberish[], + data: BytesLike + ], [ + void + ], "nonpayable">; + pause: TypedContractMethod<[], [void], "nonpayable">; + paused: TypedContractMethod<[], [boolean], "view">; + renounceRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + revokeRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + safeBatchTransferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + ids: BigNumberish[], + amounts: BigNumberish[], + data: BytesLike + ], [ + void + ], "nonpayable">; + safeTransferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + id: BigNumberish, + amount: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + setApprovalForAll: TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + unpause: TypedContractMethod<[], [void], "nonpayable">; + uri: TypedContractMethod<[arg0: BigNumberish], [string], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "MINTER_ROLE"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "PAUSER_ROLE"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[ + account: AddressLike, + id: BigNumberish + ], [ + bigint + ], "view">; + getFunction(nameOrSignature: "balanceOfBatch"): TypedContractMethod<[ + accounts: AddressLike[], + ids: BigNumberish[] + ], [ + bigint[] + ], "view">; + getFunction(nameOrSignature: "burn"): TypedContractMethod<[ + account: AddressLike, + id: BigNumberish, + value: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "burnBatch"): TypedContractMethod<[ + account: AddressLike, + ids: BigNumberish[], + values: BigNumberish[] + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "getRoleAdmin"): TypedContractMethod<[role: BytesLike], [string], "view">; + getFunction(nameOrSignature: "getRoleMember"): TypedContractMethod<[ + role: BytesLike, + index: BigNumberish + ], [ + string + ], "view">; + getFunction(nameOrSignature: "getRoleMemberCount"): TypedContractMethod<[role: BytesLike], [bigint], "view">; + getFunction(nameOrSignature: "grantRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "hasRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "initialize"): TypedContractMethod<[uri: string], [void], "nonpayable">; + getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ + account: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "mint"): TypedContractMethod<[ + to: AddressLike, + id: BigNumberish, + amount: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "mintBatch"): TypedContractMethod<[ + to: AddressLike, + ids: BigNumberish[], + amounts: BigNumberish[], + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "pause"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "paused"): TypedContractMethod<[], [boolean], "view">; + getFunction(nameOrSignature: "renounceRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "revokeRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeBatchTransferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + ids: BigNumberish[], + amounts: BigNumberish[], + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + id: BigNumberish, + amount: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "unpause"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "uri"): TypedContractMethod<[arg0: BigNumberish], [string], "view">; + getEvent(key: "ApprovalForAll"): TypedContractEvent; + getEvent(key: "Initialized"): TypedContractEvent; + getEvent(key: "Paused"): TypedContractEvent; + getEvent(key: "RoleAdminChanged"): TypedContractEvent; + getEvent(key: "RoleGranted"): TypedContractEvent; + getEvent(key: "RoleRevoked"): TypedContractEvent; + getEvent(key: "TransferBatch"): TypedContractEvent; + getEvent(key: "TransferSingle"): TypedContractEvent; + getEvent(key: "URI"): TypedContractEvent; + getEvent(key: "Unpaused"): TypedContractEvent; + filters: { + "ApprovalForAll(address,address,bool)": TypedContractEvent; + ApprovalForAll: TypedContractEvent; + "Initialized(uint8)": TypedContractEvent; + Initialized: TypedContractEvent; + "Paused(address)": TypedContractEvent; + Paused: TypedContractEvent; + "RoleAdminChanged(bytes32,bytes32,bytes32)": TypedContractEvent; + RoleAdminChanged: TypedContractEvent; + "RoleGranted(bytes32,address,address)": TypedContractEvent; + RoleGranted: TypedContractEvent; + "RoleRevoked(bytes32,address,address)": TypedContractEvent; + RoleRevoked: TypedContractEvent; + "TransferBatch(address,address,address,uint256[],uint256[])": TypedContractEvent; + TransferBatch: TypedContractEvent; + "TransferSingle(address,address,address,uint256,uint256)": TypedContractEvent; + TransferSingle: TypedContractEvent; + "URI(string,uint256)": TypedContractEvent; + URI: TypedContractEvent; + "Unpaused(address)": TypedContractEvent; + Unpaused: TypedContractEvent; + }; +} +//# sourceMappingURL=ERC1155PresetMinterPauserUpgradeable.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable.d.ts.map new file mode 100644 index 00000000..18a44d74 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ERC1155PresetMinterPauserUpgradeable.d.ts","sourceRoot":"","sources":["../../../../../../../types/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable.js b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/index.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/index.d.ts new file mode 100644 index 00000000..be1a2894 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/index.d.ts @@ -0,0 +1,2 @@ +export type { ERC1155PresetMinterPauserUpgradeable } from "./ERC1155PresetMinterPauserUpgradeable"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/index.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/index.d.ts.map new file mode 100644 index 00000000..ac6d95cd --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,oCAAoC,EAAE,MAAM,wCAAwC,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/index.js b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.d.ts new file mode 100644 index 00000000..db60ef2b --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.d.ts @@ -0,0 +1,130 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; +export interface IERC20UpgradeableInterface extends Interface { + getFunction(nameOrSignature: "allowance" | "approve" | "balanceOf" | "totalSupply" | "transfer" | "transferFrom"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Approval" | "Transfer"): EventFragment; + encodeFunctionData(functionFragment: "allowance", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "totalSupply", values?: undefined): string; + encodeFunctionData(functionFragment: "transfer", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; + decodeFunctionResult(functionFragment: "allowance", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "totalSupply", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transfer", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; +} +export declare namespace ApprovalEvent { + type InputTuple = [ + owner: AddressLike, + spender: AddressLike, + value: BigNumberish + ]; + type OutputTuple = [owner: string, spender: string, value: bigint]; + interface OutputObject { + owner: string; + spender: string; + value: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferEvent { + type InputTuple = [ + from: AddressLike, + to: AddressLike, + value: BigNumberish + ]; + type OutputTuple = [from: string, to: string, value: bigint]; + interface OutputObject { + from: string; + to: string; + value: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface IERC20Upgradeable extends BaseContract { + connect(runner?: ContractRunner | null): IERC20Upgradeable; + waitForDeployment(): Promise; + interface: IERC20UpgradeableInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + allowance: TypedContractMethod<[ + owner: AddressLike, + spender: AddressLike + ], [ + bigint + ], "view">; + approve: TypedContractMethod<[ + spender: AddressLike, + amount: BigNumberish + ], [ + boolean + ], "nonpayable">; + balanceOf: TypedContractMethod<[account: AddressLike], [bigint], "view">; + totalSupply: TypedContractMethod<[], [bigint], "view">; + transfer: TypedContractMethod<[ + to: AddressLike, + amount: BigNumberish + ], [ + boolean + ], "nonpayable">; + transferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + amount: BigNumberish + ], [ + boolean + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "allowance"): TypedContractMethod<[ + owner: AddressLike, + spender: AddressLike + ], [ + bigint + ], "view">; + getFunction(nameOrSignature: "approve"): TypedContractMethod<[ + spender: AddressLike, + amount: BigNumberish + ], [ + boolean + ], "nonpayable">; + getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[account: AddressLike], [bigint], "view">; + getFunction(nameOrSignature: "totalSupply"): TypedContractMethod<[], [bigint], "view">; + getFunction(nameOrSignature: "transfer"): TypedContractMethod<[ + to: AddressLike, + amount: BigNumberish + ], [ + boolean + ], "nonpayable">; + getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + amount: BigNumberish + ], [ + boolean + ], "nonpayable">; + getEvent(key: "Approval"): TypedContractEvent; + getEvent(key: "Transfer"): TypedContractEvent; + filters: { + "Approval(address,address,uint256)": TypedContractEvent; + Approval: TypedContractEvent; + "Transfer(address,address,uint256)": TypedContractEvent; + Transfer: TypedContractEvent; + }; +} +//# sourceMappingURL=IERC20Upgradeable.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.d.ts.map new file mode 100644 index 00000000..f5009fcd --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC20Upgradeable.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.js b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC20/index.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC20/index.d.ts new file mode 100644 index 00000000..24d7b497 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC20/index.d.ts @@ -0,0 +1,2 @@ +export type { IERC20Upgradeable } from "./IERC20Upgradeable"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC20/index.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC20/index.d.ts.map new file mode 100644 index 00000000..7859ea1f --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC20/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts-upgradeable/token/ERC20/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC20/index.js b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC20/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC20/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.d.ts new file mode 100644 index 00000000..51ec84ca --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.d.ts @@ -0,0 +1,226 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; +export interface ERC721UpgradeableInterface extends Interface { + getFunction(nameOrSignature: "approve" | "balanceOf" | "getApproved" | "isApprovedForAll" | "name" | "ownerOf" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "setApprovalForAll" | "supportsInterface" | "symbol" | "tokenURI" | "transferFrom"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "Initialized" | "Transfer"): EventFragment; + encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "name", values?: undefined): string; + encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "symbol", values?: undefined): string; + encodeFunctionData(functionFragment: "tokenURI", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; + decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "tokenURI", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; +} +export declare namespace ApprovalEvent { + type InputTuple = [ + owner: AddressLike, + approved: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [owner: string, approved: string, tokenId: bigint]; + interface OutputObject { + owner: string; + approved: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ApprovalForAllEvent { + type InputTuple = [ + owner: AddressLike, + operator: AddressLike, + approved: boolean + ]; + type OutputTuple = [ + owner: string, + operator: string, + approved: boolean + ]; + interface OutputObject { + owner: string; + operator: string; + approved: boolean; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace InitializedEvent { + type InputTuple = [version: BigNumberish]; + type OutputTuple = [version: bigint]; + interface OutputObject { + version: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferEvent { + type InputTuple = [ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [from: string, to: string, tokenId: bigint]; + interface OutputObject { + from: string; + to: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface ERC721Upgradeable extends BaseContract { + connect(runner?: ContractRunner | null): ERC721Upgradeable; + waitForDeployment(): Promise; + interface: ERC721UpgradeableInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + approve: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; + getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + isApprovedForAll: TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + name: TypedContractMethod<[], [string], "view">; + ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + setApprovalForAll: TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + symbol: TypedContractMethod<[], [string], "view">; + tokenURI: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + transferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "approve"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; + getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "symbol"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "tokenURI"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getEvent(key: "Approval"): TypedContractEvent; + getEvent(key: "ApprovalForAll"): TypedContractEvent; + getEvent(key: "Initialized"): TypedContractEvent; + getEvent(key: "Transfer"): TypedContractEvent; + filters: { + "Approval(address,address,uint256)": TypedContractEvent; + Approval: TypedContractEvent; + "ApprovalForAll(address,address,bool)": TypedContractEvent; + ApprovalForAll: TypedContractEvent; + "Initialized(uint8)": TypedContractEvent; + Initialized: TypedContractEvent; + "Transfer(address,address,uint256)": TypedContractEvent; + Transfer: TypedContractEvent; + }; +} +//# sourceMappingURL=ERC721Upgradeable.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.d.ts.map new file mode 100644 index 00000000..f6c8bde0 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ERC721Upgradeable.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,aAAa,EACb,WAAW,EACX,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,mBAAmB,EACnB,aAAa,EACb,mBAAmB,EACpB,MAAM,oBAAoB,CAAC;AAE5B,MAAM,WAAW,0BAA2B,SAAQ,SAAS;IAC3D,WAAW,CACT,eAAe,EACX,SAAS,GACT,WAAW,GACX,aAAa,GACb,kBAAkB,GAClB,MAAM,GACN,SAAS,GACT,2CAA2C,GAC3C,iDAAiD,GACjD,mBAAmB,GACnB,mBAAmB,GACnB,QAAQ,GACR,UAAU,GACV,cAAc,GACjB,gBAAgB,CAAC;IAEpB,QAAQ,CACN,sBAAsB,EAClB,UAAU,GACV,gBAAgB,GAChB,aAAa,GACb,UAAU,GACb,aAAa,CAAC;IAEjB,kBAAkB,CAChB,gBAAgB,EAAE,SAAS,EAC3B,MAAM,EAAE,CAAC,WAAW,EAAE,YAAY,CAAC,GAClC,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,WAAW,EAC7B,MAAM,EAAE,CAAC,WAAW,CAAC,GACpB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,aAAa,EAC/B,MAAM,EAAE,CAAC,YAAY,CAAC,GACrB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,kBAAkB,EACpC,MAAM,EAAE,CAAC,WAAW,EAAE,WAAW,CAAC,GACjC,MAAM,CAAC;IACV,kBAAkB,CAAC,gBAAgB,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IACzE,kBAAkB,CAChB,gBAAgB,EAAE,SAAS,EAC3B,MAAM,EAAE,CAAC,YAAY,CAAC,GACrB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,2CAA2C,EAC7D,MAAM,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,YAAY,CAAC,GAC/C,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,iDAAiD,EACnE,MAAM,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,SAAS,CAAC,GAC1D,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,mBAAmB,EACrC,MAAM,EAAE,CAAC,WAAW,EAAE,OAAO,CAAC,GAC7B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,mBAAmB,EACrC,MAAM,EAAE,CAAC,SAAS,CAAC,GAClB,MAAM,CAAC;IACV,kBAAkB,CAAC,gBAAgB,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,kBAAkB,CAChB,gBAAgB,EAAE,UAAU,EAC5B,MAAM,EAAE,CAAC,YAAY,CAAC,GACrB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,cAAc,EAChC,MAAM,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,YAAY,CAAC,GAC/C,MAAM,CAAC;IAEV,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,oBAAoB,CAAC,gBAAgB,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC7E,oBAAoB,CAClB,gBAAgB,EAAE,aAAa,EAC/B,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,kBAAkB,EACpC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IACxE,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,oBAAoB,CAClB,gBAAgB,EAAE,2CAA2C,EAC7D,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,iDAAiD,EACnE,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,mBAAmB,EACrC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,mBAAmB,EACrC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC1E,oBAAoB,CAAC,gBAAgB,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC5E,oBAAoB,CAClB,gBAAgB,EAAE,cAAc,EAChC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;CACX;AAED,yBAAiB,aAAa,CAAC;IAC7B,KAAY,UAAU,GAAG;QACvB,KAAK,EAAE,WAAW;QAClB,QAAQ,EAAE,WAAW;QACrB,OAAO,EAAE,YAAY;KACtB,CAAC;IACF,KAAY,WAAW,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IAC7E,UAAiB,YAAY;QAC3B,KAAK,EAAE,MAAM,CAAC;QACd,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,MAAM,CAAC;KACjB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,mBAAmB,CAAC;IACnC,KAAY,UAAU,GAAG;QACvB,KAAK,EAAE,WAAW;QAClB,QAAQ,EAAE,WAAW;QACrB,QAAQ,EAAE,OAAO;KAClB,CAAC;IACF,KAAY,WAAW,GAAG;QACxB,KAAK,EAAE,MAAM;QACb,QAAQ,EAAE,MAAM;QAChB,QAAQ,EAAE,OAAO;KAClB,CAAC;IACF,UAAiB,YAAY;QAC3B,KAAK,EAAE,MAAM,CAAC;QACd,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,OAAO,CAAC;KACnB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,gBAAgB,CAAC;IAChC,KAAY,UAAU,GAAG,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IACjD,KAAY,WAAW,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC5C,UAAiB,YAAY;QAC3B,OAAO,EAAE,MAAM,CAAC;KACjB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,aAAa,CAAC;IAC7B,KAAY,UAAU,GAAG;QACvB,IAAI,EAAE,WAAW;QACjB,EAAE,EAAE,WAAW;QACf,OAAO,EAAE,YAAY;KACtB,CAAC;IACF,KAAY,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IACtE,UAAiB,YAAY;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,EAAE,EAAE,MAAM,CAAC;QACX,OAAO,EAAE,MAAM,CAAC;KACjB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,MAAM,WAAW,iBAAkB,SAAQ,YAAY;IACrD,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,iBAAiB,CAAC;IAC3D,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,0BAA0B,CAAC;IAEtC,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,OAAO,EAAE,mBAAmB,CAC1B;QAAC,EAAE,EAAE,WAAW;QAAE,OAAO,EAAE,YAAY;KAAC,EACxC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,SAAS,EAAE,mBAAmB,CAAC,CAAC,KAAK,EAAE,WAAW,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEvE,WAAW,EAAE,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAE5E,gBAAgB,EAAE,mBAAmB,CACnC;QAAC,KAAK,EAAE,WAAW;QAAE,QAAQ,EAAE,WAAW;KAAC,EAC3C;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,IAAI,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEhD,OAAO,EAAE,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAExE,2CAA2C,EAAE,mBAAmB,CAC9D;QAAC,IAAI,EAAE,WAAW;QAAE,EAAE,EAAE,WAAW;QAAE,OAAO,EAAE,YAAY;KAAC,EAC3D;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,iDAAiD,EAAE,mBAAmB,CACpE;QACE,IAAI,EAAE,WAAW;QACjB,EAAE,EAAE,WAAW;QACf,OAAO,EAAE,YAAY;QACrB,IAAI,EAAE,SAAS;KAChB,EACD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,iBAAiB,EAAE,mBAAmB,CACpC;QAAC,QAAQ,EAAE,WAAW;QAAE,QAAQ,EAAE,OAAO;KAAC,EAC1C;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,iBAAiB,EAAE,mBAAmB,CACpC;QAAC,WAAW,EAAE,SAAS;KAAC,EACxB;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,MAAM,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAElD,QAAQ,EAAE,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEzE,YAAY,EAAE,mBAAmB,CAC/B;QAAC,IAAI,EAAE,WAAW;QAAE,EAAE,EAAE,WAAW;QAAE,OAAO,EAAE,YAAY;KAAC,EAC3D;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,WAAW,CACT,eAAe,EAAE,SAAS,GACzB,mBAAmB,CACpB;QAAC,EAAE,EAAE,WAAW;QAAE,OAAO,EAAE,YAAY;KAAC,EACxC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,WAAW,GAC3B,mBAAmB,CAAC,CAAC,KAAK,EAAE,WAAW,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC/D,WAAW,CACT,eAAe,EAAE,aAAa,GAC7B,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAClE,WAAW,CACT,eAAe,EAAE,kBAAkB,GAClC,mBAAmB,CACpB;QAAC,KAAK,EAAE,WAAW;QAAE,QAAQ,EAAE,WAAW;KAAC,EAC3C;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,MAAM,GACtB,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC7C,WAAW,CACT,eAAe,EAAE,SAAS,GACzB,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAClE,WAAW,CACT,eAAe,EAAE,2CAA2C,GAC3D,mBAAmB,CACpB;QAAC,IAAI,EAAE,WAAW;QAAE,EAAE,EAAE,WAAW;QAAE,OAAO,EAAE,YAAY;KAAC,EAC3D;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,iDAAiD,GACjE,mBAAmB,CACpB;QACE,IAAI,EAAE,WAAW;QACjB,EAAE,EAAE,WAAW;QACf,OAAO,EAAE,YAAY;QACrB,IAAI,EAAE,SAAS;KAChB,EACD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,mBAAmB,GACnC,mBAAmB,CACpB;QAAC,QAAQ,EAAE,WAAW;QAAE,QAAQ,EAAE,OAAO;KAAC,EAC1C;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,mBAAmB,GACnC,mBAAmB,CAAC,CAAC,WAAW,EAAE,SAAS,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IACpE,WAAW,CACT,eAAe,EAAE,QAAQ,GACxB,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC7C,WAAW,CACT,eAAe,EAAE,UAAU,GAC1B,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAClE,WAAW,CACT,eAAe,EAAE,cAAc,GAC9B,mBAAmB,CACpB;QAAC,IAAI,EAAE,WAAW;QAAE,EAAE,EAAE,WAAW;QAAE,OAAO,EAAE,YAAY;KAAC,EAC3D;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,QAAQ,CACN,GAAG,EAAE,UAAU,GACd,kBAAkB,CACnB,aAAa,CAAC,UAAU,EACxB,aAAa,CAAC,WAAW,EACzB,aAAa,CAAC,YAAY,CAC3B,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,gBAAgB,GACpB,kBAAkB,CACnB,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,aAAa,GACjB,kBAAkB,CACnB,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,UAAU,GACd,kBAAkB,CACnB,aAAa,CAAC,UAAU,EACxB,aAAa,CAAC,WAAW,EACzB,aAAa,CAAC,YAAY,CAC3B,CAAC;IAEF,OAAO,EAAE;QACP,mCAAmC,EAAE,kBAAkB,CACrD,aAAa,CAAC,UAAU,EACxB,aAAa,CAAC,WAAW,EACzB,aAAa,CAAC,YAAY,CAC3B,CAAC;QACF,QAAQ,EAAE,kBAAkB,CAC1B,aAAa,CAAC,UAAU,EACxB,aAAa,CAAC,WAAW,EACzB,aAAa,CAAC,YAAY,CAC3B,CAAC;QAEF,sCAAsC,EAAE,kBAAkB,CACxD,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;QACF,cAAc,EAAE,kBAAkB,CAChC,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;QAEF,oBAAoB,EAAE,kBAAkB,CACtC,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QACF,WAAW,EAAE,kBAAkB,CAC7B,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QAEF,mCAAmC,EAAE,kBAAkB,CACrD,aAAa,CAAC,UAAU,EACxB,aAAa,CAAC,WAAW,EACzB,aAAa,CAAC,YAAY,CAC3B,CAAC;QACF,QAAQ,EAAE,kBAAkB,CAC1B,aAAa,CAAC,UAAU,EACxB,aAAa,CAAC,WAAW,EACzB,aAAa,CAAC,YAAY,CAC3B,CAAC;KACH,CAAC;CACH"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.js b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable.d.ts new file mode 100644 index 00000000..884f1fae --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable.d.ts @@ -0,0 +1,40 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; +export interface IERC721ReceiverUpgradeableInterface extends Interface { + getFunction(nameOrSignature: "onERC721Received"): FunctionFragment; + encodeFunctionData(functionFragment: "onERC721Received", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; + decodeFunctionResult(functionFragment: "onERC721Received", data: BytesLike): Result; +} +export interface IERC721ReceiverUpgradeable extends BaseContract { + connect(runner?: ContractRunner | null): IERC721ReceiverUpgradeable; + waitForDeployment(): Promise; + interface: IERC721ReceiverUpgradeableInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + onERC721Received: TypedContractMethod<[ + operator: AddressLike, + from: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + string + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "onERC721Received"): TypedContractMethod<[ + operator: AddressLike, + from: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + string + ], "nonpayable">; + filters: {}; +} +//# sourceMappingURL=IERC721ReceiverUpgradeable.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable.d.ts.map new file mode 100644 index 00000000..9ccd2ab9 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC721ReceiverUpgradeable.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable.js b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable.d.ts new file mode 100644 index 00000000..aedca8fa --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable.d.ts @@ -0,0 +1,200 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; +export interface IERC721UpgradeableInterface extends Interface { + getFunction(nameOrSignature: "approve" | "balanceOf" | "getApproved" | "isApprovedForAll" | "ownerOf" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "setApprovalForAll" | "supportsInterface" | "transferFrom"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "Transfer"): EventFragment; + encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; + decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; +} +export declare namespace ApprovalEvent { + type InputTuple = [ + owner: AddressLike, + approved: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [owner: string, approved: string, tokenId: bigint]; + interface OutputObject { + owner: string; + approved: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ApprovalForAllEvent { + type InputTuple = [ + owner: AddressLike, + operator: AddressLike, + approved: boolean + ]; + type OutputTuple = [ + owner: string, + operator: string, + approved: boolean + ]; + interface OutputObject { + owner: string; + operator: string; + approved: boolean; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferEvent { + type InputTuple = [ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [from: string, to: string, tokenId: bigint]; + interface OutputObject { + from: string; + to: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface IERC721Upgradeable extends BaseContract { + connect(runner?: ContractRunner | null): IERC721Upgradeable; + waitForDeployment(): Promise; + interface: IERC721UpgradeableInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + approve: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; + getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + isApprovedForAll: TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + setApprovalForAll: TypedContractMethod<[ + operator: AddressLike, + _approved: boolean + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + transferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "approve"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; + getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ + operator: AddressLike, + _approved: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getEvent(key: "Approval"): TypedContractEvent; + getEvent(key: "ApprovalForAll"): TypedContractEvent; + getEvent(key: "Transfer"): TypedContractEvent; + filters: { + "Approval(address,address,uint256)": TypedContractEvent; + Approval: TypedContractEvent; + "ApprovalForAll(address,address,bool)": TypedContractEvent; + ApprovalForAll: TypedContractEvent; + "Transfer(address,address,uint256)": TypedContractEvent; + Transfer: TypedContractEvent; + }; +} +//# sourceMappingURL=IERC721Upgradeable.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable.d.ts.map new file mode 100644 index 00000000..bdacef5a --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC721Upgradeable.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable.js b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable.d.ts new file mode 100644 index 00000000..238d4413 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable.d.ts @@ -0,0 +1,212 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; +export interface IERC721MetadataUpgradeableInterface extends Interface { + getFunction(nameOrSignature: "approve" | "balanceOf" | "getApproved" | "isApprovedForAll" | "name" | "ownerOf" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "setApprovalForAll" | "supportsInterface" | "symbol" | "tokenURI" | "transferFrom"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "Transfer"): EventFragment; + encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "name", values?: undefined): string; + encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "symbol", values?: undefined): string; + encodeFunctionData(functionFragment: "tokenURI", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; + decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "tokenURI", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; +} +export declare namespace ApprovalEvent { + type InputTuple = [ + owner: AddressLike, + approved: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [owner: string, approved: string, tokenId: bigint]; + interface OutputObject { + owner: string; + approved: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ApprovalForAllEvent { + type InputTuple = [ + owner: AddressLike, + operator: AddressLike, + approved: boolean + ]; + type OutputTuple = [ + owner: string, + operator: string, + approved: boolean + ]; + interface OutputObject { + owner: string; + operator: string; + approved: boolean; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferEvent { + type InputTuple = [ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [from: string, to: string, tokenId: bigint]; + interface OutputObject { + from: string; + to: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface IERC721MetadataUpgradeable extends BaseContract { + connect(runner?: ContractRunner | null): IERC721MetadataUpgradeable; + waitForDeployment(): Promise; + interface: IERC721MetadataUpgradeableInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + approve: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; + getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + isApprovedForAll: TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + name: TypedContractMethod<[], [string], "view">; + ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + setApprovalForAll: TypedContractMethod<[ + operator: AddressLike, + _approved: boolean + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + symbol: TypedContractMethod<[], [string], "view">; + tokenURI: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + transferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "approve"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; + getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ + operator: AddressLike, + _approved: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "symbol"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "tokenURI"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getEvent(key: "Approval"): TypedContractEvent; + getEvent(key: "ApprovalForAll"): TypedContractEvent; + getEvent(key: "Transfer"): TypedContractEvent; + filters: { + "Approval(address,address,uint256)": TypedContractEvent; + Approval: TypedContractEvent; + "ApprovalForAll(address,address,bool)": TypedContractEvent; + ApprovalForAll: TypedContractEvent; + "Transfer(address,address,uint256)": TypedContractEvent; + Transfer: TypedContractEvent; + }; +} +//# sourceMappingURL=IERC721MetadataUpgradeable.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable.d.ts.map new file mode 100644 index 00000000..b2324904 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC721MetadataUpgradeable.d.ts","sourceRoot":"","sources":["../../../../../../../types/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,aAAa,EACb,WAAW,EACX,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,mBAAmB,EACnB,aAAa,EACb,mBAAmB,EACpB,MAAM,uBAAuB,CAAC;AAE/B,MAAM,WAAW,mCAAoC,SAAQ,SAAS;IACpE,WAAW,CACT,eAAe,EACX,SAAS,GACT,WAAW,GACX,aAAa,GACb,kBAAkB,GAClB,MAAM,GACN,SAAS,GACT,2CAA2C,GAC3C,iDAAiD,GACjD,mBAAmB,GACnB,mBAAmB,GACnB,QAAQ,GACR,UAAU,GACV,cAAc,GACjB,gBAAgB,CAAC;IAEpB,QAAQ,CACN,sBAAsB,EAAE,UAAU,GAAG,gBAAgB,GAAG,UAAU,GACjE,aAAa,CAAC;IAEjB,kBAAkB,CAChB,gBAAgB,EAAE,SAAS,EAC3B,MAAM,EAAE,CAAC,WAAW,EAAE,YAAY,CAAC,GAClC,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,WAAW,EAC7B,MAAM,EAAE,CAAC,WAAW,CAAC,GACpB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,aAAa,EAC/B,MAAM,EAAE,CAAC,YAAY,CAAC,GACrB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,kBAAkB,EACpC,MAAM,EAAE,CAAC,WAAW,EAAE,WAAW,CAAC,GACjC,MAAM,CAAC;IACV,kBAAkB,CAAC,gBAAgB,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IACzE,kBAAkB,CAChB,gBAAgB,EAAE,SAAS,EAC3B,MAAM,EAAE,CAAC,YAAY,CAAC,GACrB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,2CAA2C,EAC7D,MAAM,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,YAAY,CAAC,GAC/C,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,iDAAiD,EACnE,MAAM,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,SAAS,CAAC,GAC1D,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,mBAAmB,EACrC,MAAM,EAAE,CAAC,WAAW,EAAE,OAAO,CAAC,GAC7B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,mBAAmB,EACrC,MAAM,EAAE,CAAC,SAAS,CAAC,GAClB,MAAM,CAAC;IACV,kBAAkB,CAAC,gBAAgB,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,kBAAkB,CAChB,gBAAgB,EAAE,UAAU,EAC5B,MAAM,EAAE,CAAC,YAAY,CAAC,GACrB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,cAAc,EAChC,MAAM,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,YAAY,CAAC,GAC/C,MAAM,CAAC;IAEV,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,oBAAoB,CAAC,gBAAgB,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC7E,oBAAoB,CAClB,gBAAgB,EAAE,aAAa,EAC/B,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,kBAAkB,EACpC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IACxE,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,oBAAoB,CAClB,gBAAgB,EAAE,2CAA2C,EAC7D,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,iDAAiD,EACnE,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,mBAAmB,EACrC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,mBAAmB,EACrC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC1E,oBAAoB,CAAC,gBAAgB,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC5E,oBAAoB,CAClB,gBAAgB,EAAE,cAAc,EAChC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;CACX;AAED,yBAAiB,aAAa,CAAC;IAC7B,KAAY,UAAU,GAAG;QACvB,KAAK,EAAE,WAAW;QAClB,QAAQ,EAAE,WAAW;QACrB,OAAO,EAAE,YAAY;KACtB,CAAC;IACF,KAAY,WAAW,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IAC7E,UAAiB,YAAY;QAC3B,KAAK,EAAE,MAAM,CAAC;QACd,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,MAAM,CAAC;KACjB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,mBAAmB,CAAC;IACnC,KAAY,UAAU,GAAG;QACvB,KAAK,EAAE,WAAW;QAClB,QAAQ,EAAE,WAAW;QACrB,QAAQ,EAAE,OAAO;KAClB,CAAC;IACF,KAAY,WAAW,GAAG;QACxB,KAAK,EAAE,MAAM;QACb,QAAQ,EAAE,MAAM;QAChB,QAAQ,EAAE,OAAO;KAClB,CAAC;IACF,UAAiB,YAAY;QAC3B,KAAK,EAAE,MAAM,CAAC;QACd,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,OAAO,CAAC;KACnB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,aAAa,CAAC;IAC7B,KAAY,UAAU,GAAG;QACvB,IAAI,EAAE,WAAW;QACjB,EAAE,EAAE,WAAW;QACf,OAAO,EAAE,YAAY;KACtB,CAAC;IACF,KAAY,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IACtE,UAAiB,YAAY;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,EAAE,EAAE,MAAM,CAAC;QACX,OAAO,EAAE,MAAM,CAAC;KACjB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,MAAM,WAAW,0BAA2B,SAAQ,YAAY;IAC9D,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,0BAA0B,CAAC;IACpE,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,mCAAmC,CAAC;IAE/C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,OAAO,EAAE,mBAAmB,CAC1B;QAAC,EAAE,EAAE,WAAW;QAAE,OAAO,EAAE,YAAY;KAAC,EACxC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,SAAS,EAAE,mBAAmB,CAAC,CAAC,KAAK,EAAE,WAAW,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEvE,WAAW,EAAE,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAE5E,gBAAgB,EAAE,mBAAmB,CACnC;QAAC,KAAK,EAAE,WAAW;QAAE,QAAQ,EAAE,WAAW;KAAC,EAC3C;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,IAAI,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEhD,OAAO,EAAE,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAExE,2CAA2C,EAAE,mBAAmB,CAC9D;QAAC,IAAI,EAAE,WAAW;QAAE,EAAE,EAAE,WAAW;QAAE,OAAO,EAAE,YAAY;KAAC,EAC3D;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,iDAAiD,EAAE,mBAAmB,CACpE;QACE,IAAI,EAAE,WAAW;QACjB,EAAE,EAAE,WAAW;QACf,OAAO,EAAE,YAAY;QACrB,IAAI,EAAE,SAAS;KAChB,EACD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,iBAAiB,EAAE,mBAAmB,CACpC;QAAC,QAAQ,EAAE,WAAW;QAAE,SAAS,EAAE,OAAO;KAAC,EAC3C;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,iBAAiB,EAAE,mBAAmB,CACpC;QAAC,WAAW,EAAE,SAAS;KAAC,EACxB;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,MAAM,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAElD,QAAQ,EAAE,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEzE,YAAY,EAAE,mBAAmB,CAC/B;QAAC,IAAI,EAAE,WAAW;QAAE,EAAE,EAAE,WAAW;QAAE,OAAO,EAAE,YAAY;KAAC,EAC3D;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,WAAW,CACT,eAAe,EAAE,SAAS,GACzB,mBAAmB,CACpB;QAAC,EAAE,EAAE,WAAW;QAAE,OAAO,EAAE,YAAY;KAAC,EACxC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,WAAW,GAC3B,mBAAmB,CAAC,CAAC,KAAK,EAAE,WAAW,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC/D,WAAW,CACT,eAAe,EAAE,aAAa,GAC7B,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAClE,WAAW,CACT,eAAe,EAAE,kBAAkB,GAClC,mBAAmB,CACpB;QAAC,KAAK,EAAE,WAAW;QAAE,QAAQ,EAAE,WAAW;KAAC,EAC3C;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,MAAM,GACtB,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC7C,WAAW,CACT,eAAe,EAAE,SAAS,GACzB,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAClE,WAAW,CACT,eAAe,EAAE,2CAA2C,GAC3D,mBAAmB,CACpB;QAAC,IAAI,EAAE,WAAW;QAAE,EAAE,EAAE,WAAW;QAAE,OAAO,EAAE,YAAY;KAAC,EAC3D;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,iDAAiD,GACjE,mBAAmB,CACpB;QACE,IAAI,EAAE,WAAW;QACjB,EAAE,EAAE,WAAW;QACf,OAAO,EAAE,YAAY;QACrB,IAAI,EAAE,SAAS;KAChB,EACD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,mBAAmB,GACnC,mBAAmB,CACpB;QAAC,QAAQ,EAAE,WAAW;QAAE,SAAS,EAAE,OAAO;KAAC,EAC3C;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,mBAAmB,GACnC,mBAAmB,CAAC,CAAC,WAAW,EAAE,SAAS,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IACpE,WAAW,CACT,eAAe,EAAE,QAAQ,GACxB,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC7C,WAAW,CACT,eAAe,EAAE,UAAU,GAC1B,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAClE,WAAW,CACT,eAAe,EAAE,cAAc,GAC9B,mBAAmB,CACpB;QAAC,IAAI,EAAE,WAAW;QAAE,EAAE,EAAE,WAAW;QAAE,OAAO,EAAE,YAAY;KAAC,EAC3D;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,QAAQ,CACN,GAAG,EAAE,UAAU,GACd,kBAAkB,CACnB,aAAa,CAAC,UAAU,EACxB,aAAa,CAAC,WAAW,EACzB,aAAa,CAAC,YAAY,CAC3B,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,gBAAgB,GACpB,kBAAkB,CACnB,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,UAAU,GACd,kBAAkB,CACnB,aAAa,CAAC,UAAU,EACxB,aAAa,CAAC,WAAW,EACzB,aAAa,CAAC,YAAY,CAC3B,CAAC;IAEF,OAAO,EAAE;QACP,mCAAmC,EAAE,kBAAkB,CACrD,aAAa,CAAC,UAAU,EACxB,aAAa,CAAC,WAAW,EACzB,aAAa,CAAC,YAAY,CAC3B,CAAC;QACF,QAAQ,EAAE,kBAAkB,CAC1B,aAAa,CAAC,UAAU,EACxB,aAAa,CAAC,WAAW,EACzB,aAAa,CAAC,YAAY,CAC3B,CAAC;QAEF,sCAAsC,EAAE,kBAAkB,CACxD,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;QACF,cAAc,EAAE,kBAAkB,CAChC,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;QAEF,mCAAmC,EAAE,kBAAkB,CACrD,aAAa,CAAC,UAAU,EACxB,aAAa,CAAC,WAAW,EACzB,aAAa,CAAC,YAAY,CAC3B,CAAC;QACF,QAAQ,EAAE,kBAAkB,CAC1B,aAAa,CAAC,UAAU,EACxB,aAAa,CAAC,WAAW,EACzB,aAAa,CAAC,YAAY,CAC3B,CAAC;KACH,CAAC;CACH"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable.js b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/index.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/index.d.ts new file mode 100644 index 00000000..ed831077 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/index.d.ts @@ -0,0 +1,2 @@ +export type { IERC721MetadataUpgradeable } from "./IERC721MetadataUpgradeable"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/index.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/index.d.ts.map new file mode 100644 index 00000000..2f979bec --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/index.js b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/index.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/index.d.ts new file mode 100644 index 00000000..d7eaaeb3 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/index.d.ts @@ -0,0 +1,6 @@ +import type * as extensions from "./extensions"; +export type { extensions }; +export type { ERC721Upgradeable } from "./ERC721Upgradeable"; +export type { IERC721ReceiverUpgradeable } from "./IERC721ReceiverUpgradeable"; +export type { IERC721Upgradeable } from "./IERC721Upgradeable"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/index.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/index.d.ts.map new file mode 100644 index 00000000..6d14789a --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts-upgradeable/token/ERC721/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,UAAU,MAAM,cAAc,CAAC;AAChD,YAAY,EAAE,UAAU,EAAE,CAAC;AAC3B,YAAY,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,YAAY,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC/E,YAAY,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/index.js b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/index.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/token/index.d.ts new file mode 100644 index 00000000..e0f93091 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/index.d.ts @@ -0,0 +1,7 @@ +import type * as erc1155 from "./ERC1155"; +export type { erc1155 }; +import type * as erc20 from "./ERC20"; +export type { erc20 }; +import type * as erc721 from "./ERC721"; +export type { erc721 }; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/index.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/token/index.d.ts.map new file mode 100644 index 00000000..ffbe1f7c --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/@openzeppelin/contracts-upgradeable/token/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,OAAO,MAAM,WAAW,CAAC;AAC1C,YAAY,EAAE,OAAO,EAAE,CAAC;AACxB,OAAO,KAAK,KAAK,KAAK,MAAM,SAAS,CAAC;AACtC,YAAY,EAAE,KAAK,EAAE,CAAC;AACtB,OAAO,KAAK,KAAK,MAAM,MAAM,UAAU,CAAC;AACxC,YAAY,EAAE,MAAM,EAAE,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/index.js b/dist/types/@openzeppelin/contracts-upgradeable/token/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/token/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.d.ts new file mode 100644 index 00000000..b7a60eee --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.d.ts @@ -0,0 +1,37 @@ +import type { BaseContract, BigNumberish, FunctionFragment, Interface, EventFragment, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener } from "../../../common"; +export interface ContextUpgradeableInterface extends Interface { + getEvent(nameOrSignatureOrTopic: "Initialized"): EventFragment; +} +export declare namespace InitializedEvent { + type InputTuple = [version: BigNumberish]; + type OutputTuple = [version: bigint]; + interface OutputObject { + version: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface ContextUpgradeable extends BaseContract { + connect(runner?: ContractRunner | null): ContextUpgradeable; + waitForDeployment(): Promise; + interface: ContextUpgradeableInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + getFunction(key: string | FunctionFragment): T; + getEvent(key: "Initialized"): TypedContractEvent; + filters: { + "Initialized(uint8)": TypedContractEvent; + Initialized: TypedContractEvent; + }; +} +//# sourceMappingURL=ContextUpgradeable.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.d.ts.map new file mode 100644 index 00000000..823e75e3 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ContextUpgradeable.d.ts","sourceRoot":"","sources":["../../../../../types/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.js b/dist/types/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable.d.ts new file mode 100644 index 00000000..53c59ca7 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable.d.ts @@ -0,0 +1,42 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../common"; +export interface MulticallUpgradeableInterface extends Interface { + getFunction(nameOrSignature: "multicall"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Initialized"): EventFragment; + encodeFunctionData(functionFragment: "multicall", values: [BytesLike[]]): string; + decodeFunctionResult(functionFragment: "multicall", data: BytesLike): Result; +} +export declare namespace InitializedEvent { + type InputTuple = [version: BigNumberish]; + type OutputTuple = [version: bigint]; + interface OutputObject { + version: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface MulticallUpgradeable extends BaseContract { + connect(runner?: ContractRunner | null): MulticallUpgradeable; + waitForDeployment(): Promise; + interface: MulticallUpgradeableInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + multicall: TypedContractMethod<[data: BytesLike[]], [string[]], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "multicall"): TypedContractMethod<[data: BytesLike[]], [string[]], "nonpayable">; + getEvent(key: "Initialized"): TypedContractEvent; + filters: { + "Initialized(uint8)": TypedContractEvent; + Initialized: TypedContractEvent; + }; +} +//# sourceMappingURL=MulticallUpgradeable.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable.d.ts.map new file mode 100644 index 00000000..4035351b --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"MulticallUpgradeable.d.ts","sourceRoot":"","sources":["../../../../../types/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable.js b/dist/types/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/utils/index.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/utils/index.d.ts new file mode 100644 index 00000000..82e4fb18 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/utils/index.d.ts @@ -0,0 +1,5 @@ +import type * as introspection from "./introspection"; +export type { introspection }; +export type { ContextUpgradeable } from "./ContextUpgradeable"; +export type { MulticallUpgradeable } from "./MulticallUpgradeable"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/utils/index.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/utils/index.d.ts.map new file mode 100644 index 00000000..0a4edb22 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/utils/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/@openzeppelin/contracts-upgradeable/utils/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,aAAa,MAAM,iBAAiB,CAAC;AACtD,YAAY,EAAE,aAAa,EAAE,CAAC;AAC9B,YAAY,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,YAAY,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/utils/index.js b/dist/types/@openzeppelin/contracts-upgradeable/utils/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/utils/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.d.ts new file mode 100644 index 00000000..c4a953e0 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.d.ts @@ -0,0 +1,46 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; +export interface ERC165UpgradeableInterface extends Interface { + getFunction(nameOrSignature: "supportsInterface"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Initialized"): EventFragment; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; +} +export declare namespace InitializedEvent { + type InputTuple = [version: BigNumberish]; + type OutputTuple = [version: bigint]; + interface OutputObject { + version: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface ERC165Upgradeable extends BaseContract { + connect(runner?: ContractRunner | null): ERC165Upgradeable; + waitForDeployment(): Promise; + interface: ERC165UpgradeableInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + getEvent(key: "Initialized"): TypedContractEvent; + filters: { + "Initialized(uint8)": TypedContractEvent; + Initialized: TypedContractEvent; + }; +} +//# sourceMappingURL=ERC165Upgradeable.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.d.ts.map new file mode 100644 index 00000000..0e2cb6f8 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ERC165Upgradeable.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.js b/dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable.d.ts new file mode 100644 index 00000000..04339a18 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable.d.ts @@ -0,0 +1,30 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; +export interface IERC165UpgradeableInterface extends Interface { + getFunction(nameOrSignature: "supportsInterface"): FunctionFragment; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; +} +export interface IERC165Upgradeable extends BaseContract { + connect(runner?: ContractRunner | null): IERC165Upgradeable; + waitForDeployment(): Promise; + interface: IERC165UpgradeableInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + filters: {}; +} +//# sourceMappingURL=IERC165Upgradeable.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable.d.ts.map new file mode 100644 index 00000000..e1af2d53 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC165Upgradeable.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable.js b/dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/index.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/index.d.ts new file mode 100644 index 00000000..7fc600ff --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/index.d.ts @@ -0,0 +1,3 @@ +export type { ERC165Upgradeable } from "./ERC165Upgradeable"; +export type { IERC165Upgradeable } from "./IERC165Upgradeable"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/index.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/index.d.ts.map new file mode 100644 index 00000000..451f0f2a --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts-upgradeable/utils/introspection/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,YAAY,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/index.js b/dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts/access/Ownable.d.ts b/dist/types/@openzeppelin/contracts/access/Ownable.d.ts new file mode 100644 index 00000000..0ae303be --- /dev/null +++ b/dist/types/@openzeppelin/contracts/access/Ownable.d.ts @@ -0,0 +1,55 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../common"; +export interface OwnableInterface extends Interface { + getFunction(nameOrSignature: "owner" | "renounceOwnership" | "transferOwnership"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "OwnershipTransferred"): EventFragment; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData(functionFragment: "renounceOwnership", values?: undefined): string; + encodeFunctionData(functionFragment: "transferOwnership", values: [AddressLike]): string; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceOwnership", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result; +} +export declare namespace OwnershipTransferredEvent { + type InputTuple = [previousOwner: AddressLike, newOwner: AddressLike]; + type OutputTuple = [previousOwner: string, newOwner: string]; + interface OutputObject { + previousOwner: string; + newOwner: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface Ownable extends BaseContract { + connect(runner?: ContractRunner | null): Ownable; + waitForDeployment(): Promise; + interface: OwnableInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + owner: TypedContractMethod<[], [string], "view">; + renounceOwnership: TypedContractMethod<[], [void], "nonpayable">; + transferOwnership: TypedContractMethod<[ + newOwner: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "owner"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "renounceOwnership"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "transferOwnership"): TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">; + getEvent(key: "OwnershipTransferred"): TypedContractEvent; + filters: { + "OwnershipTransferred(address,address)": TypedContractEvent; + OwnershipTransferred: TypedContractEvent; + }; +} +//# sourceMappingURL=Ownable.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/access/Ownable.d.ts.map b/dist/types/@openzeppelin/contracts/access/Ownable.d.ts.map new file mode 100644 index 00000000..d1154952 --- /dev/null +++ b/dist/types/@openzeppelin/contracts/access/Ownable.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"Ownable.d.ts","sourceRoot":"","sources":["../../../../../types/@openzeppelin/contracts/access/Ownable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/access/Ownable.js b/dist/types/@openzeppelin/contracts/access/Ownable.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts/access/Ownable.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts/access/index.d.ts b/dist/types/@openzeppelin/contracts/access/index.d.ts new file mode 100644 index 00000000..a577bedd --- /dev/null +++ b/dist/types/@openzeppelin/contracts/access/index.d.ts @@ -0,0 +1,2 @@ +export type { Ownable } from "./Ownable"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/access/index.d.ts.map b/dist/types/@openzeppelin/contracts/access/index.d.ts.map new file mode 100644 index 00000000..3fa3e022 --- /dev/null +++ b/dist/types/@openzeppelin/contracts/access/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/@openzeppelin/contracts/access/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/access/index.js b/dist/types/@openzeppelin/contracts/access/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts/access/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts/index.d.ts b/dist/types/@openzeppelin/contracts/index.d.ts new file mode 100644 index 00000000..c8b6ee79 --- /dev/null +++ b/dist/types/@openzeppelin/contracts/index.d.ts @@ -0,0 +1,7 @@ +import type * as access from "./access"; +export type { access }; +import type * as token from "./token"; +export type { token }; +import type * as utils from "./utils"; +export type { utils }; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/index.d.ts.map b/dist/types/@openzeppelin/contracts/index.d.ts.map new file mode 100644 index 00000000..f185372d --- /dev/null +++ b/dist/types/@openzeppelin/contracts/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../types/@openzeppelin/contracts/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,MAAM,MAAM,UAAU,CAAC;AACxC,YAAY,EAAE,MAAM,EAAE,CAAC;AACvB,OAAO,KAAK,KAAK,KAAK,MAAM,SAAS,CAAC;AACtC,YAAY,EAAE,KAAK,EAAE,CAAC;AACtB,OAAO,KAAK,KAAK,KAAK,MAAM,SAAS,CAAC;AACtC,YAAY,EAAE,KAAK,EAAE,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/index.js b/dist/types/@openzeppelin/contracts/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts/token/ERC1155/IERC1155.d.ts b/dist/types/@openzeppelin/contracts/token/ERC1155/IERC1155.d.ts new file mode 100644 index 00000000..45a1bf5a --- /dev/null +++ b/dist/types/@openzeppelin/contracts/token/ERC1155/IERC1155.d.ts @@ -0,0 +1,233 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; +export interface IERC1155Interface extends Interface { + getFunction(nameOrSignature: "balanceOf" | "balanceOfBatch" | "isApprovedForAll" | "safeBatchTransferFrom" | "safeTransferFrom" | "setApprovalForAll" | "supportsInterface"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "ApprovalForAll" | "TransferBatch" | "TransferSingle" | "URI"): EventFragment; + encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "balanceOfBatch", values: [AddressLike[], BigNumberish[]]): string; + encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "safeBatchTransferFrom", values: [ + AddressLike, + AddressLike, + BigNumberish[], + BigNumberish[], + BytesLike + ]): string; + encodeFunctionData(functionFragment: "safeTransferFrom", values: [AddressLike, AddressLike, BigNumberish, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOfBatch", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeBatchTransferFrom", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; +} +export declare namespace ApprovalForAllEvent { + type InputTuple = [ + account: AddressLike, + operator: AddressLike, + approved: boolean + ]; + type OutputTuple = [ + account: string, + operator: string, + approved: boolean + ]; + interface OutputObject { + account: string; + operator: string; + approved: boolean; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferBatchEvent { + type InputTuple = [ + operator: AddressLike, + from: AddressLike, + to: AddressLike, + ids: BigNumberish[], + values: BigNumberish[] + ]; + type OutputTuple = [ + operator: string, + from: string, + to: string, + ids: bigint[], + values: bigint[] + ]; + interface OutputObject { + operator: string; + from: string; + to: string; + ids: bigint[]; + values: bigint[]; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferSingleEvent { + type InputTuple = [ + operator: AddressLike, + from: AddressLike, + to: AddressLike, + id: BigNumberish, + value: BigNumberish + ]; + type OutputTuple = [ + operator: string, + from: string, + to: string, + id: bigint, + value: bigint + ]; + interface OutputObject { + operator: string; + from: string; + to: string; + id: bigint; + value: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace URIEvent { + type InputTuple = [value: string, id: BigNumberish]; + type OutputTuple = [value: string, id: bigint]; + interface OutputObject { + value: string; + id: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface IERC1155 extends BaseContract { + connect(runner?: ContractRunner | null): IERC1155; + waitForDeployment(): Promise; + interface: IERC1155Interface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + balanceOf: TypedContractMethod<[ + account: AddressLike, + id: BigNumberish + ], [ + bigint + ], "view">; + balanceOfBatch: TypedContractMethod<[ + accounts: AddressLike[], + ids: BigNumberish[] + ], [ + bigint[] + ], "view">; + isApprovedForAll: TypedContractMethod<[ + account: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + safeBatchTransferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + ids: BigNumberish[], + amounts: BigNumberish[], + data: BytesLike + ], [ + void + ], "nonpayable">; + safeTransferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + id: BigNumberish, + amount: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + setApprovalForAll: TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[ + account: AddressLike, + id: BigNumberish + ], [ + bigint + ], "view">; + getFunction(nameOrSignature: "balanceOfBatch"): TypedContractMethod<[ + accounts: AddressLike[], + ids: BigNumberish[] + ], [ + bigint[] + ], "view">; + getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ + account: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "safeBatchTransferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + ids: BigNumberish[], + amounts: BigNumberish[], + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + id: BigNumberish, + amount: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + getEvent(key: "ApprovalForAll"): TypedContractEvent; + getEvent(key: "TransferBatch"): TypedContractEvent; + getEvent(key: "TransferSingle"): TypedContractEvent; + getEvent(key: "URI"): TypedContractEvent; + filters: { + "ApprovalForAll(address,address,bool)": TypedContractEvent; + ApprovalForAll: TypedContractEvent; + "TransferBatch(address,address,address,uint256[],uint256[])": TypedContractEvent; + TransferBatch: TypedContractEvent; + "TransferSingle(address,address,address,uint256,uint256)": TypedContractEvent; + TransferSingle: TypedContractEvent; + "URI(string,uint256)": TypedContractEvent; + URI: TypedContractEvent; + }; +} +//# sourceMappingURL=IERC1155.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC1155/IERC1155.d.ts.map b/dist/types/@openzeppelin/contracts/token/ERC1155/IERC1155.d.ts.map new file mode 100644 index 00000000..b5a97146 --- /dev/null +++ b/dist/types/@openzeppelin/contracts/token/ERC1155/IERC1155.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC1155.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts/token/ERC1155/IERC1155.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC1155/IERC1155.js b/dist/types/@openzeppelin/contracts/token/ERC1155/IERC1155.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts/token/ERC1155/IERC1155.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.d.ts b/dist/types/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.d.ts new file mode 100644 index 00000000..78093735 --- /dev/null +++ b/dist/types/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.d.ts @@ -0,0 +1,76 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; +export interface IERC1155ReceiverInterface extends Interface { + getFunction(nameOrSignature: "onERC1155BatchReceived" | "onERC1155Received" | "supportsInterface"): FunctionFragment; + encodeFunctionData(functionFragment: "onERC1155BatchReceived", values: [ + AddressLike, + AddressLike, + BigNumberish[], + BigNumberish[], + BytesLike + ]): string; + encodeFunctionData(functionFragment: "onERC1155Received", values: [AddressLike, AddressLike, BigNumberish, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + decodeFunctionResult(functionFragment: "onERC1155BatchReceived", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "onERC1155Received", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; +} +export interface IERC1155Receiver extends BaseContract { + connect(runner?: ContractRunner | null): IERC1155Receiver; + waitForDeployment(): Promise; + interface: IERC1155ReceiverInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + onERC1155BatchReceived: TypedContractMethod<[ + operator: AddressLike, + from: AddressLike, + ids: BigNumberish[], + values: BigNumberish[], + data: BytesLike + ], [ + string + ], "nonpayable">; + onERC1155Received: TypedContractMethod<[ + operator: AddressLike, + from: AddressLike, + id: BigNumberish, + value: BigNumberish, + data: BytesLike + ], [ + string + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "onERC1155BatchReceived"): TypedContractMethod<[ + operator: AddressLike, + from: AddressLike, + ids: BigNumberish[], + values: BigNumberish[], + data: BytesLike + ], [ + string + ], "nonpayable">; + getFunction(nameOrSignature: "onERC1155Received"): TypedContractMethod<[ + operator: AddressLike, + from: AddressLike, + id: BigNumberish, + value: BigNumberish, + data: BytesLike + ], [ + string + ], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + filters: {}; +} +//# sourceMappingURL=IERC1155Receiver.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.d.ts.map b/dist/types/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.d.ts.map new file mode 100644 index 00000000..384ba56d --- /dev/null +++ b/dist/types/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC1155Receiver.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,WAAW,EACX,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,aAAa,EACb,mBAAmB,EACpB,MAAM,oBAAoB,CAAC;AAE5B,MAAM,WAAW,yBAA0B,SAAQ,SAAS;IAC1D,WAAW,CACT,eAAe,EACX,wBAAwB,GACxB,mBAAmB,GACnB,mBAAmB,GACtB,gBAAgB,CAAC;IAEpB,kBAAkB,CAChB,gBAAgB,EAAE,wBAAwB,EAC1C,MAAM,EAAE;QACN,WAAW;QACX,WAAW;QACX,YAAY,EAAE;QACd,YAAY,EAAE;QACd,SAAS;KACV,GACA,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,mBAAmB,EACrC,MAAM,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,YAAY,EAAE,SAAS,CAAC,GACxE,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,mBAAmB,EACrC,MAAM,EAAE,CAAC,SAAS,CAAC,GAClB,MAAM,CAAC;IAEV,oBAAoB,CAClB,gBAAgB,EAAE,wBAAwB,EAC1C,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,mBAAmB,EACrC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,mBAAmB,EACrC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;CACX;AAED,MAAM,WAAW,gBAAiB,SAAQ,YAAY;IACpD,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,gBAAgB,CAAC;IAC1D,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,yBAAyB,CAAC;IAErC,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,sBAAsB,EAAE,mBAAmB,CACzC;QACE,QAAQ,EAAE,WAAW;QACrB,IAAI,EAAE,WAAW;QACjB,GAAG,EAAE,YAAY,EAAE;QACnB,MAAM,EAAE,YAAY,EAAE;QACtB,IAAI,EAAE,SAAS;KAChB,EACD;QAAC,MAAM;KAAC,EACR,YAAY,CACb,CAAC;IAEF,iBAAiB,EAAE,mBAAmB,CACpC;QACE,QAAQ,EAAE,WAAW;QACrB,IAAI,EAAE,WAAW;QACjB,EAAE,EAAE,YAAY;QAChB,KAAK,EAAE,YAAY;QACnB,IAAI,EAAE,SAAS;KAChB,EACD;QAAC,MAAM;KAAC,EACR,YAAY,CACb,CAAC;IAEF,iBAAiB,EAAE,mBAAmB,CACpC;QAAC,WAAW,EAAE,SAAS;KAAC,EACxB;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,WAAW,CACT,eAAe,EAAE,wBAAwB,GACxC,mBAAmB,CACpB;QACE,QAAQ,EAAE,WAAW;QACrB,IAAI,EAAE,WAAW;QACjB,GAAG,EAAE,YAAY,EAAE;QACnB,MAAM,EAAE,YAAY,EAAE;QACtB,IAAI,EAAE,SAAS;KAChB,EACD;QAAC,MAAM;KAAC,EACR,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,mBAAmB,GACnC,mBAAmB,CACpB;QACE,QAAQ,EAAE,WAAW;QACrB,IAAI,EAAE,WAAW;QACjB,EAAE,EAAE,YAAY;QAChB,KAAK,EAAE,YAAY;QACnB,IAAI,EAAE,SAAS;KAChB,EACD;QAAC,MAAM;KAAC,EACR,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,mBAAmB,GACnC,mBAAmB,CAAC,CAAC,WAAW,EAAE,SAAS,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IAEpE,OAAO,EAAE,EAAE,CAAC;CACb"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.js b/dist/types/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI.d.ts b/dist/types/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI.d.ts new file mode 100644 index 00000000..09fc11f8 --- /dev/null +++ b/dist/types/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI.d.ts @@ -0,0 +1,237 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; +export interface IERC1155MetadataURIInterface extends Interface { + getFunction(nameOrSignature: "balanceOf" | "balanceOfBatch" | "isApprovedForAll" | "safeBatchTransferFrom" | "safeTransferFrom" | "setApprovalForAll" | "supportsInterface" | "uri"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "ApprovalForAll" | "TransferBatch" | "TransferSingle" | "URI"): EventFragment; + encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "balanceOfBatch", values: [AddressLike[], BigNumberish[]]): string; + encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "safeBatchTransferFrom", values: [ + AddressLike, + AddressLike, + BigNumberish[], + BigNumberish[], + BytesLike + ]): string; + encodeFunctionData(functionFragment: "safeTransferFrom", values: [AddressLike, AddressLike, BigNumberish, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "uri", values: [BigNumberish]): string; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOfBatch", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeBatchTransferFrom", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "uri", data: BytesLike): Result; +} +export declare namespace ApprovalForAllEvent { + type InputTuple = [ + account: AddressLike, + operator: AddressLike, + approved: boolean + ]; + type OutputTuple = [ + account: string, + operator: string, + approved: boolean + ]; + interface OutputObject { + account: string; + operator: string; + approved: boolean; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferBatchEvent { + type InputTuple = [ + operator: AddressLike, + from: AddressLike, + to: AddressLike, + ids: BigNumberish[], + values: BigNumberish[] + ]; + type OutputTuple = [ + operator: string, + from: string, + to: string, + ids: bigint[], + values: bigint[] + ]; + interface OutputObject { + operator: string; + from: string; + to: string; + ids: bigint[]; + values: bigint[]; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferSingleEvent { + type InputTuple = [ + operator: AddressLike, + from: AddressLike, + to: AddressLike, + id: BigNumberish, + value: BigNumberish + ]; + type OutputTuple = [ + operator: string, + from: string, + to: string, + id: bigint, + value: bigint + ]; + interface OutputObject { + operator: string; + from: string; + to: string; + id: bigint; + value: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace URIEvent { + type InputTuple = [value: string, id: BigNumberish]; + type OutputTuple = [value: string, id: bigint]; + interface OutputObject { + value: string; + id: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface IERC1155MetadataURI extends BaseContract { + connect(runner?: ContractRunner | null): IERC1155MetadataURI; + waitForDeployment(): Promise; + interface: IERC1155MetadataURIInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + balanceOf: TypedContractMethod<[ + account: AddressLike, + id: BigNumberish + ], [ + bigint + ], "view">; + balanceOfBatch: TypedContractMethod<[ + accounts: AddressLike[], + ids: BigNumberish[] + ], [ + bigint[] + ], "view">; + isApprovedForAll: TypedContractMethod<[ + account: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + safeBatchTransferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + ids: BigNumberish[], + amounts: BigNumberish[], + data: BytesLike + ], [ + void + ], "nonpayable">; + safeTransferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + id: BigNumberish, + amount: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + setApprovalForAll: TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + uri: TypedContractMethod<[id: BigNumberish], [string], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[ + account: AddressLike, + id: BigNumberish + ], [ + bigint + ], "view">; + getFunction(nameOrSignature: "balanceOfBatch"): TypedContractMethod<[ + accounts: AddressLike[], + ids: BigNumberish[] + ], [ + bigint[] + ], "view">; + getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ + account: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "safeBatchTransferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + ids: BigNumberish[], + amounts: BigNumberish[], + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + id: BigNumberish, + amount: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "uri"): TypedContractMethod<[id: BigNumberish], [string], "view">; + getEvent(key: "ApprovalForAll"): TypedContractEvent; + getEvent(key: "TransferBatch"): TypedContractEvent; + getEvent(key: "TransferSingle"): TypedContractEvent; + getEvent(key: "URI"): TypedContractEvent; + filters: { + "ApprovalForAll(address,address,bool)": TypedContractEvent; + ApprovalForAll: TypedContractEvent; + "TransferBatch(address,address,address,uint256[],uint256[])": TypedContractEvent; + TransferBatch: TypedContractEvent; + "TransferSingle(address,address,address,uint256,uint256)": TypedContractEvent; + TransferSingle: TypedContractEvent; + "URI(string,uint256)": TypedContractEvent; + URI: TypedContractEvent; + }; +} +//# sourceMappingURL=IERC1155MetadataURI.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI.d.ts.map b/dist/types/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI.d.ts.map new file mode 100644 index 00000000..e0f52004 --- /dev/null +++ b/dist/types/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC1155MetadataURI.d.ts","sourceRoot":"","sources":["../../../../../../../types/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI.js b/dist/types/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts/token/ERC1155/extensions/index.d.ts b/dist/types/@openzeppelin/contracts/token/ERC1155/extensions/index.d.ts new file mode 100644 index 00000000..10e8fafd --- /dev/null +++ b/dist/types/@openzeppelin/contracts/token/ERC1155/extensions/index.d.ts @@ -0,0 +1,2 @@ +export type { IERC1155MetadataURI } from "./IERC1155MetadataURI"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC1155/extensions/index.d.ts.map b/dist/types/@openzeppelin/contracts/token/ERC1155/extensions/index.d.ts.map new file mode 100644 index 00000000..6d5284c7 --- /dev/null +++ b/dist/types/@openzeppelin/contracts/token/ERC1155/extensions/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/@openzeppelin/contracts/token/ERC1155/extensions/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC1155/extensions/index.js b/dist/types/@openzeppelin/contracts/token/ERC1155/extensions/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts/token/ERC1155/extensions/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts/token/ERC1155/index.d.ts b/dist/types/@openzeppelin/contracts/token/ERC1155/index.d.ts new file mode 100644 index 00000000..d0865f8a --- /dev/null +++ b/dist/types/@openzeppelin/contracts/token/ERC1155/index.d.ts @@ -0,0 +1,5 @@ +import type * as extensions from "./extensions"; +export type { extensions }; +export type { IERC1155 } from "./IERC1155"; +export type { IERC1155Receiver } from "./IERC1155Receiver"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC1155/index.d.ts.map b/dist/types/@openzeppelin/contracts/token/ERC1155/index.d.ts.map new file mode 100644 index 00000000..6fe18b5c --- /dev/null +++ b/dist/types/@openzeppelin/contracts/token/ERC1155/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts/token/ERC1155/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,UAAU,MAAM,cAAc,CAAC;AAChD,YAAY,EAAE,UAAU,EAAE,CAAC;AAC3B,YAAY,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC1155/index.js b/dist/types/@openzeppelin/contracts/token/ERC1155/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts/token/ERC1155/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts/token/ERC20/ERC20.d.ts b/dist/types/@openzeppelin/contracts/token/ERC20/ERC20.d.ts new file mode 100644 index 00000000..610a0ad4 --- /dev/null +++ b/dist/types/@openzeppelin/contracts/token/ERC20/ERC20.d.ts @@ -0,0 +1,170 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; +export interface ERC20Interface extends Interface { + getFunction(nameOrSignature: "allowance" | "approve" | "balanceOf" | "decimals" | "decreaseAllowance" | "increaseAllowance" | "name" | "symbol" | "totalSupply" | "transfer" | "transferFrom"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Approval" | "Transfer"): EventFragment; + encodeFunctionData(functionFragment: "allowance", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "decimals", values?: undefined): string; + encodeFunctionData(functionFragment: "decreaseAllowance", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "increaseAllowance", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "name", values?: undefined): string; + encodeFunctionData(functionFragment: "symbol", values?: undefined): string; + encodeFunctionData(functionFragment: "totalSupply", values?: undefined): string; + encodeFunctionData(functionFragment: "transfer", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; + decodeFunctionResult(functionFragment: "allowance", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "decimals", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "decreaseAllowance", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "increaseAllowance", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "totalSupply", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transfer", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; +} +export declare namespace ApprovalEvent { + type InputTuple = [ + owner: AddressLike, + spender: AddressLike, + value: BigNumberish + ]; + type OutputTuple = [owner: string, spender: string, value: bigint]; + interface OutputObject { + owner: string; + spender: string; + value: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferEvent { + type InputTuple = [ + from: AddressLike, + to: AddressLike, + value: BigNumberish + ]; + type OutputTuple = [from: string, to: string, value: bigint]; + interface OutputObject { + from: string; + to: string; + value: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface ERC20 extends BaseContract { + connect(runner?: ContractRunner | null): ERC20; + waitForDeployment(): Promise; + interface: ERC20Interface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + allowance: TypedContractMethod<[ + owner: AddressLike, + spender: AddressLike + ], [ + bigint + ], "view">; + approve: TypedContractMethod<[ + spender: AddressLike, + amount: BigNumberish + ], [ + boolean + ], "nonpayable">; + balanceOf: TypedContractMethod<[account: AddressLike], [bigint], "view">; + decimals: TypedContractMethod<[], [bigint], "view">; + decreaseAllowance: TypedContractMethod<[ + spender: AddressLike, + subtractedValue: BigNumberish + ], [ + boolean + ], "nonpayable">; + increaseAllowance: TypedContractMethod<[ + spender: AddressLike, + addedValue: BigNumberish + ], [ + boolean + ], "nonpayable">; + name: TypedContractMethod<[], [string], "view">; + symbol: TypedContractMethod<[], [string], "view">; + totalSupply: TypedContractMethod<[], [bigint], "view">; + transfer: TypedContractMethod<[ + to: AddressLike, + amount: BigNumberish + ], [ + boolean + ], "nonpayable">; + transferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + amount: BigNumberish + ], [ + boolean + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "allowance"): TypedContractMethod<[ + owner: AddressLike, + spender: AddressLike + ], [ + bigint + ], "view">; + getFunction(nameOrSignature: "approve"): TypedContractMethod<[ + spender: AddressLike, + amount: BigNumberish + ], [ + boolean + ], "nonpayable">; + getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[account: AddressLike], [bigint], "view">; + getFunction(nameOrSignature: "decimals"): TypedContractMethod<[], [bigint], "view">; + getFunction(nameOrSignature: "decreaseAllowance"): TypedContractMethod<[ + spender: AddressLike, + subtractedValue: BigNumberish + ], [ + boolean + ], "nonpayable">; + getFunction(nameOrSignature: "increaseAllowance"): TypedContractMethod<[ + spender: AddressLike, + addedValue: BigNumberish + ], [ + boolean + ], "nonpayable">; + getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "symbol"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "totalSupply"): TypedContractMethod<[], [bigint], "view">; + getFunction(nameOrSignature: "transfer"): TypedContractMethod<[ + to: AddressLike, + amount: BigNumberish + ], [ + boolean + ], "nonpayable">; + getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + amount: BigNumberish + ], [ + boolean + ], "nonpayable">; + getEvent(key: "Approval"): TypedContractEvent; + getEvent(key: "Transfer"): TypedContractEvent; + filters: { + "Approval(address,address,uint256)": TypedContractEvent; + Approval: TypedContractEvent; + "Transfer(address,address,uint256)": TypedContractEvent; + Transfer: TypedContractEvent; + }; +} +//# sourceMappingURL=ERC20.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC20/ERC20.d.ts.map b/dist/types/@openzeppelin/contracts/token/ERC20/ERC20.d.ts.map new file mode 100644 index 00000000..655ef547 --- /dev/null +++ b/dist/types/@openzeppelin/contracts/token/ERC20/ERC20.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ERC20.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts/token/ERC20/ERC20.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC20/ERC20.js b/dist/types/@openzeppelin/contracts/token/ERC20/ERC20.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts/token/ERC20/ERC20.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts/token/ERC20/IERC20.d.ts b/dist/types/@openzeppelin/contracts/token/ERC20/IERC20.d.ts new file mode 100644 index 00000000..53ad3dd5 --- /dev/null +++ b/dist/types/@openzeppelin/contracts/token/ERC20/IERC20.d.ts @@ -0,0 +1,130 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; +export interface IERC20Interface extends Interface { + getFunction(nameOrSignature: "allowance" | "approve" | "balanceOf" | "totalSupply" | "transfer" | "transferFrom"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Approval" | "Transfer"): EventFragment; + encodeFunctionData(functionFragment: "allowance", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "totalSupply", values?: undefined): string; + encodeFunctionData(functionFragment: "transfer", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; + decodeFunctionResult(functionFragment: "allowance", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "totalSupply", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transfer", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; +} +export declare namespace ApprovalEvent { + type InputTuple = [ + owner: AddressLike, + spender: AddressLike, + value: BigNumberish + ]; + type OutputTuple = [owner: string, spender: string, value: bigint]; + interface OutputObject { + owner: string; + spender: string; + value: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferEvent { + type InputTuple = [ + from: AddressLike, + to: AddressLike, + value: BigNumberish + ]; + type OutputTuple = [from: string, to: string, value: bigint]; + interface OutputObject { + from: string; + to: string; + value: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface IERC20 extends BaseContract { + connect(runner?: ContractRunner | null): IERC20; + waitForDeployment(): Promise; + interface: IERC20Interface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + allowance: TypedContractMethod<[ + owner: AddressLike, + spender: AddressLike + ], [ + bigint + ], "view">; + approve: TypedContractMethod<[ + spender: AddressLike, + amount: BigNumberish + ], [ + boolean + ], "nonpayable">; + balanceOf: TypedContractMethod<[account: AddressLike], [bigint], "view">; + totalSupply: TypedContractMethod<[], [bigint], "view">; + transfer: TypedContractMethod<[ + to: AddressLike, + amount: BigNumberish + ], [ + boolean + ], "nonpayable">; + transferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + amount: BigNumberish + ], [ + boolean + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "allowance"): TypedContractMethod<[ + owner: AddressLike, + spender: AddressLike + ], [ + bigint + ], "view">; + getFunction(nameOrSignature: "approve"): TypedContractMethod<[ + spender: AddressLike, + amount: BigNumberish + ], [ + boolean + ], "nonpayable">; + getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[account: AddressLike], [bigint], "view">; + getFunction(nameOrSignature: "totalSupply"): TypedContractMethod<[], [bigint], "view">; + getFunction(nameOrSignature: "transfer"): TypedContractMethod<[ + to: AddressLike, + amount: BigNumberish + ], [ + boolean + ], "nonpayable">; + getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + amount: BigNumberish + ], [ + boolean + ], "nonpayable">; + getEvent(key: "Approval"): TypedContractEvent; + getEvent(key: "Transfer"): TypedContractEvent; + filters: { + "Approval(address,address,uint256)": TypedContractEvent; + Approval: TypedContractEvent; + "Transfer(address,address,uint256)": TypedContractEvent; + Transfer: TypedContractEvent; + }; +} +//# sourceMappingURL=IERC20.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC20/IERC20.d.ts.map b/dist/types/@openzeppelin/contracts/token/ERC20/IERC20.d.ts.map new file mode 100644 index 00000000..dc0aa91b --- /dev/null +++ b/dist/types/@openzeppelin/contracts/token/ERC20/IERC20.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC20.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts/token/ERC20/IERC20.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC20/IERC20.js b/dist/types/@openzeppelin/contracts/token/ERC20/IERC20.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts/token/ERC20/IERC20.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.d.ts b/dist/types/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.d.ts new file mode 100644 index 00000000..af029cad --- /dev/null +++ b/dist/types/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.d.ts @@ -0,0 +1,142 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; +export interface IERC20MetadataInterface extends Interface { + getFunction(nameOrSignature: "allowance" | "approve" | "balanceOf" | "decimals" | "name" | "symbol" | "totalSupply" | "transfer" | "transferFrom"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Approval" | "Transfer"): EventFragment; + encodeFunctionData(functionFragment: "allowance", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "decimals", values?: undefined): string; + encodeFunctionData(functionFragment: "name", values?: undefined): string; + encodeFunctionData(functionFragment: "symbol", values?: undefined): string; + encodeFunctionData(functionFragment: "totalSupply", values?: undefined): string; + encodeFunctionData(functionFragment: "transfer", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; + decodeFunctionResult(functionFragment: "allowance", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "decimals", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "totalSupply", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transfer", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; +} +export declare namespace ApprovalEvent { + type InputTuple = [ + owner: AddressLike, + spender: AddressLike, + value: BigNumberish + ]; + type OutputTuple = [owner: string, spender: string, value: bigint]; + interface OutputObject { + owner: string; + spender: string; + value: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferEvent { + type InputTuple = [ + from: AddressLike, + to: AddressLike, + value: BigNumberish + ]; + type OutputTuple = [from: string, to: string, value: bigint]; + interface OutputObject { + from: string; + to: string; + value: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface IERC20Metadata extends BaseContract { + connect(runner?: ContractRunner | null): IERC20Metadata; + waitForDeployment(): Promise; + interface: IERC20MetadataInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + allowance: TypedContractMethod<[ + owner: AddressLike, + spender: AddressLike + ], [ + bigint + ], "view">; + approve: TypedContractMethod<[ + spender: AddressLike, + amount: BigNumberish + ], [ + boolean + ], "nonpayable">; + balanceOf: TypedContractMethod<[account: AddressLike], [bigint], "view">; + decimals: TypedContractMethod<[], [bigint], "view">; + name: TypedContractMethod<[], [string], "view">; + symbol: TypedContractMethod<[], [string], "view">; + totalSupply: TypedContractMethod<[], [bigint], "view">; + transfer: TypedContractMethod<[ + to: AddressLike, + amount: BigNumberish + ], [ + boolean + ], "nonpayable">; + transferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + amount: BigNumberish + ], [ + boolean + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "allowance"): TypedContractMethod<[ + owner: AddressLike, + spender: AddressLike + ], [ + bigint + ], "view">; + getFunction(nameOrSignature: "approve"): TypedContractMethod<[ + spender: AddressLike, + amount: BigNumberish + ], [ + boolean + ], "nonpayable">; + getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[account: AddressLike], [bigint], "view">; + getFunction(nameOrSignature: "decimals"): TypedContractMethod<[], [bigint], "view">; + getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "symbol"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "totalSupply"): TypedContractMethod<[], [bigint], "view">; + getFunction(nameOrSignature: "transfer"): TypedContractMethod<[ + to: AddressLike, + amount: BigNumberish + ], [ + boolean + ], "nonpayable">; + getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + amount: BigNumberish + ], [ + boolean + ], "nonpayable">; + getEvent(key: "Approval"): TypedContractEvent; + getEvent(key: "Transfer"): TypedContractEvent; + filters: { + "Approval(address,address,uint256)": TypedContractEvent; + Approval: TypedContractEvent; + "Transfer(address,address,uint256)": TypedContractEvent; + Transfer: TypedContractEvent; + }; +} +//# sourceMappingURL=IERC20Metadata.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.d.ts.map b/dist/types/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.d.ts.map new file mode 100644 index 00000000..8c9f352c --- /dev/null +++ b/dist/types/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC20Metadata.d.ts","sourceRoot":"","sources":["../../../../../../../types/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,aAAa,EACb,WAAW,EACX,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,mBAAmB,EACnB,aAAa,EACb,mBAAmB,EACpB,MAAM,uBAAuB,CAAC;AAE/B,MAAM,WAAW,uBAAwB,SAAQ,SAAS;IACxD,WAAW,CACT,eAAe,EACX,WAAW,GACX,SAAS,GACT,WAAW,GACX,UAAU,GACV,MAAM,GACN,QAAQ,GACR,aAAa,GACb,UAAU,GACV,cAAc,GACjB,gBAAgB,CAAC;IAEpB,QAAQ,CAAC,sBAAsB,EAAE,UAAU,GAAG,UAAU,GAAG,aAAa,CAAC;IAEzE,kBAAkB,CAChB,gBAAgB,EAAE,WAAW,EAC7B,MAAM,EAAE,CAAC,WAAW,EAAE,WAAW,CAAC,GACjC,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,SAAS,EAC3B,MAAM,EAAE,CAAC,WAAW,EAAE,YAAY,CAAC,GAClC,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,WAAW,EAC7B,MAAM,EAAE,CAAC,WAAW,CAAC,GACpB,MAAM,CAAC;IACV,kBAAkB,CAAC,gBAAgB,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IAC7E,kBAAkB,CAAC,gBAAgB,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IACzE,kBAAkB,CAAC,gBAAgB,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,kBAAkB,CAChB,gBAAgB,EAAE,aAAa,EAC/B,MAAM,CAAC,EAAE,SAAS,GACjB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,UAAU,EAC5B,MAAM,EAAE,CAAC,WAAW,EAAE,YAAY,CAAC,GAClC,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,cAAc,EAChC,MAAM,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,YAAY,CAAC,GAC/C,MAAM,CAAC;IAEV,oBAAoB,CAAC,gBAAgB,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC7E,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,oBAAoB,CAAC,gBAAgB,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC7E,oBAAoB,CAAC,gBAAgB,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC5E,oBAAoB,CAAC,gBAAgB,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IACxE,oBAAoB,CAAC,gBAAgB,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC1E,oBAAoB,CAClB,gBAAgB,EAAE,aAAa,EAC/B,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC5E,oBAAoB,CAClB,gBAAgB,EAAE,cAAc,EAChC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;CACX;AAED,yBAAiB,aAAa,CAAC;IAC7B,KAAY,UAAU,GAAG;QACvB,KAAK,EAAE,WAAW;QAClB,OAAO,EAAE,WAAW;QACpB,KAAK,EAAE,YAAY;KACpB,CAAC;IACF,KAAY,WAAW,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IAC1E,UAAiB,YAAY;QAC3B,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,CAAC;QAChB,KAAK,EAAE,MAAM,CAAC;KACf;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,aAAa,CAAC;IAC7B,KAAY,UAAU,GAAG;QACvB,IAAI,EAAE,WAAW;QACjB,EAAE,EAAE,WAAW;QACf,KAAK,EAAE,YAAY;KACpB,CAAC;IACF,KAAY,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IACpE,UAAiB,YAAY;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,EAAE,EAAE,MAAM,CAAC;QACX,KAAK,EAAE,MAAM,CAAC;KACf;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,MAAM,WAAW,cAAe,SAAQ,YAAY;IAClD,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,cAAc,CAAC;IACxD,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,uBAAuB,CAAC;IAEnC,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,EAAE,mBAAmB,CAC5B;QAAC,KAAK,EAAE,WAAW;QAAE,OAAO,EAAE,WAAW;KAAC,EAC1C;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IAEF,OAAO,EAAE,mBAAmB,CAC1B;QAAC,OAAO,EAAE,WAAW;QAAE,MAAM,EAAE,YAAY;KAAC,EAC5C;QAAC,OAAO;KAAC,EACT,YAAY,CACb,CAAC;IAEF,SAAS,EAAE,mBAAmB,CAAC,CAAC,OAAO,EAAE,WAAW,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEzE,QAAQ,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEpD,IAAI,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEhD,MAAM,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAElD,WAAW,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEvD,QAAQ,EAAE,mBAAmB,CAC3B;QAAC,EAAE,EAAE,WAAW;QAAE,MAAM,EAAE,YAAY;KAAC,EACvC;QAAC,OAAO;KAAC,EACT,YAAY,CACb,CAAC;IAEF,YAAY,EAAE,mBAAmB,CAC/B;QAAC,IAAI,EAAE,WAAW;QAAE,EAAE,EAAE,WAAW;QAAE,MAAM,EAAE,YAAY;KAAC,EAC1D;QAAC,OAAO;KAAC,EACT,YAAY,CACb,CAAC;IAEF,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,WAAW,CACT,eAAe,EAAE,WAAW,GAC3B,mBAAmB,CACpB;QAAC,KAAK,EAAE,WAAW;QAAE,OAAO,EAAE,WAAW;KAAC,EAC1C;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,SAAS,GACzB,mBAAmB,CACpB;QAAC,OAAO,EAAE,WAAW;QAAE,MAAM,EAAE,YAAY;KAAC,EAC5C;QAAC,OAAO;KAAC,EACT,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,WAAW,GAC3B,mBAAmB,CAAC,CAAC,OAAO,EAAE,WAAW,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IACjE,WAAW,CACT,eAAe,EAAE,UAAU,GAC1B,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC7C,WAAW,CACT,eAAe,EAAE,MAAM,GACtB,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC7C,WAAW,CACT,eAAe,EAAE,QAAQ,GACxB,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC7C,WAAW,CACT,eAAe,EAAE,aAAa,GAC7B,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC7C,WAAW,CACT,eAAe,EAAE,UAAU,GAC1B,mBAAmB,CACpB;QAAC,EAAE,EAAE,WAAW;QAAE,MAAM,EAAE,YAAY;KAAC,EACvC;QAAC,OAAO;KAAC,EACT,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,cAAc,GAC9B,mBAAmB,CACpB;QAAC,IAAI,EAAE,WAAW;QAAE,EAAE,EAAE,WAAW;QAAE,MAAM,EAAE,YAAY;KAAC,EAC1D;QAAC,OAAO;KAAC,EACT,YAAY,CACb,CAAC;IAEF,QAAQ,CACN,GAAG,EAAE,UAAU,GACd,kBAAkB,CACnB,aAAa,CAAC,UAAU,EACxB,aAAa,CAAC,WAAW,EACzB,aAAa,CAAC,YAAY,CAC3B,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,UAAU,GACd,kBAAkB,CACnB,aAAa,CAAC,UAAU,EACxB,aAAa,CAAC,WAAW,EACzB,aAAa,CAAC,YAAY,CAC3B,CAAC;IAEF,OAAO,EAAE;QACP,mCAAmC,EAAE,kBAAkB,CACrD,aAAa,CAAC,UAAU,EACxB,aAAa,CAAC,WAAW,EACzB,aAAa,CAAC,YAAY,CAC3B,CAAC;QACF,QAAQ,EAAE,kBAAkB,CAC1B,aAAa,CAAC,UAAU,EACxB,aAAa,CAAC,WAAW,EACzB,aAAa,CAAC,YAAY,CAC3B,CAAC;QAEF,mCAAmC,EAAE,kBAAkB,CACrD,aAAa,CAAC,UAAU,EACxB,aAAa,CAAC,WAAW,EACzB,aAAa,CAAC,YAAY,CAC3B,CAAC;QACF,QAAQ,EAAE,kBAAkB,CAC1B,aAAa,CAAC,UAAU,EACxB,aAAa,CAAC,WAAW,EACzB,aAAa,CAAC,YAAY,CAC3B,CAAC;KACH,CAAC;CACH"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.js b/dist/types/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts/token/ERC20/extensions/index.d.ts b/dist/types/@openzeppelin/contracts/token/ERC20/extensions/index.d.ts new file mode 100644 index 00000000..163c80c1 --- /dev/null +++ b/dist/types/@openzeppelin/contracts/token/ERC20/extensions/index.d.ts @@ -0,0 +1,2 @@ +export type { IERC20Metadata } from "./IERC20Metadata"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC20/extensions/index.d.ts.map b/dist/types/@openzeppelin/contracts/token/ERC20/extensions/index.d.ts.map new file mode 100644 index 00000000..cbda2962 --- /dev/null +++ b/dist/types/@openzeppelin/contracts/token/ERC20/extensions/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/@openzeppelin/contracts/token/ERC20/extensions/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC20/extensions/index.js b/dist/types/@openzeppelin/contracts/token/ERC20/extensions/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts/token/ERC20/extensions/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts/token/ERC20/index.d.ts b/dist/types/@openzeppelin/contracts/token/ERC20/index.d.ts new file mode 100644 index 00000000..acb7134d --- /dev/null +++ b/dist/types/@openzeppelin/contracts/token/ERC20/index.d.ts @@ -0,0 +1,5 @@ +import type * as extensions from "./extensions"; +export type { extensions }; +export type { ERC20 } from "./ERC20"; +export type { IERC20 } from "./IERC20"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC20/index.d.ts.map b/dist/types/@openzeppelin/contracts/token/ERC20/index.d.ts.map new file mode 100644 index 00000000..40bd25eb --- /dev/null +++ b/dist/types/@openzeppelin/contracts/token/ERC20/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts/token/ERC20/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,UAAU,MAAM,cAAc,CAAC;AAChD,YAAY,EAAE,UAAU,EAAE,CAAC;AAC3B,YAAY,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AACrC,YAAY,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC20/index.js b/dist/types/@openzeppelin/contracts/token/ERC20/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts/token/ERC20/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts/token/ERC721/ERC721.d.ts b/dist/types/@openzeppelin/contracts/token/ERC721/ERC721.d.ts new file mode 100644 index 00000000..37c49b38 --- /dev/null +++ b/dist/types/@openzeppelin/contracts/token/ERC721/ERC721.d.ts @@ -0,0 +1,212 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; +export interface ERC721Interface extends Interface { + getFunction(nameOrSignature: "approve" | "balanceOf" | "getApproved" | "isApprovedForAll" | "name" | "ownerOf" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "setApprovalForAll" | "supportsInterface" | "symbol" | "tokenURI" | "transferFrom"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "Transfer"): EventFragment; + encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "name", values?: undefined): string; + encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "symbol", values?: undefined): string; + encodeFunctionData(functionFragment: "tokenURI", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; + decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "tokenURI", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; +} +export declare namespace ApprovalEvent { + type InputTuple = [ + owner: AddressLike, + approved: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [owner: string, approved: string, tokenId: bigint]; + interface OutputObject { + owner: string; + approved: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ApprovalForAllEvent { + type InputTuple = [ + owner: AddressLike, + operator: AddressLike, + approved: boolean + ]; + type OutputTuple = [ + owner: string, + operator: string, + approved: boolean + ]; + interface OutputObject { + owner: string; + operator: string; + approved: boolean; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferEvent { + type InputTuple = [ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [from: string, to: string, tokenId: bigint]; + interface OutputObject { + from: string; + to: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface ERC721 extends BaseContract { + connect(runner?: ContractRunner | null): ERC721; + waitForDeployment(): Promise; + interface: ERC721Interface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + approve: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; + getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + isApprovedForAll: TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + name: TypedContractMethod<[], [string], "view">; + ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + setApprovalForAll: TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + symbol: TypedContractMethod<[], [string], "view">; + tokenURI: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + transferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "approve"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; + getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "symbol"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "tokenURI"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getEvent(key: "Approval"): TypedContractEvent; + getEvent(key: "ApprovalForAll"): TypedContractEvent; + getEvent(key: "Transfer"): TypedContractEvent; + filters: { + "Approval(address,address,uint256)": TypedContractEvent; + Approval: TypedContractEvent; + "ApprovalForAll(address,address,bool)": TypedContractEvent; + ApprovalForAll: TypedContractEvent; + "Transfer(address,address,uint256)": TypedContractEvent; + Transfer: TypedContractEvent; + }; +} +//# sourceMappingURL=ERC721.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC721/ERC721.d.ts.map b/dist/types/@openzeppelin/contracts/token/ERC721/ERC721.d.ts.map new file mode 100644 index 00000000..a36bfc4b --- /dev/null +++ b/dist/types/@openzeppelin/contracts/token/ERC721/ERC721.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ERC721.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts/token/ERC721/ERC721.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC721/ERC721.js b/dist/types/@openzeppelin/contracts/token/ERC721/ERC721.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts/token/ERC721/ERC721.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts/token/ERC721/IERC721.d.ts b/dist/types/@openzeppelin/contracts/token/ERC721/IERC721.d.ts new file mode 100644 index 00000000..31fd91b4 --- /dev/null +++ b/dist/types/@openzeppelin/contracts/token/ERC721/IERC721.d.ts @@ -0,0 +1,200 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; +export interface IERC721Interface extends Interface { + getFunction(nameOrSignature: "approve" | "balanceOf" | "getApproved" | "isApprovedForAll" | "ownerOf" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "setApprovalForAll" | "supportsInterface" | "transferFrom"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "Transfer"): EventFragment; + encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; + decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; +} +export declare namespace ApprovalEvent { + type InputTuple = [ + owner: AddressLike, + approved: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [owner: string, approved: string, tokenId: bigint]; + interface OutputObject { + owner: string; + approved: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ApprovalForAllEvent { + type InputTuple = [ + owner: AddressLike, + operator: AddressLike, + approved: boolean + ]; + type OutputTuple = [ + owner: string, + operator: string, + approved: boolean + ]; + interface OutputObject { + owner: string; + operator: string; + approved: boolean; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferEvent { + type InputTuple = [ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [from: string, to: string, tokenId: bigint]; + interface OutputObject { + from: string; + to: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface IERC721 extends BaseContract { + connect(runner?: ContractRunner | null): IERC721; + waitForDeployment(): Promise; + interface: IERC721Interface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + approve: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; + getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + isApprovedForAll: TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + setApprovalForAll: TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + transferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "approve"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; + getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getEvent(key: "Approval"): TypedContractEvent; + getEvent(key: "ApprovalForAll"): TypedContractEvent; + getEvent(key: "Transfer"): TypedContractEvent; + filters: { + "Approval(address,address,uint256)": TypedContractEvent; + Approval: TypedContractEvent; + "ApprovalForAll(address,address,bool)": TypedContractEvent; + ApprovalForAll: TypedContractEvent; + "Transfer(address,address,uint256)": TypedContractEvent; + Transfer: TypedContractEvent; + }; +} +//# sourceMappingURL=IERC721.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC721/IERC721.d.ts.map b/dist/types/@openzeppelin/contracts/token/ERC721/IERC721.d.ts.map new file mode 100644 index 00000000..f47ae873 --- /dev/null +++ b/dist/types/@openzeppelin/contracts/token/ERC721/IERC721.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC721.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts/token/ERC721/IERC721.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC721/IERC721.js b/dist/types/@openzeppelin/contracts/token/ERC721/IERC721.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts/token/ERC721/IERC721.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts/token/ERC721/IERC721Receiver.d.ts b/dist/types/@openzeppelin/contracts/token/ERC721/IERC721Receiver.d.ts new file mode 100644 index 00000000..12d740ba --- /dev/null +++ b/dist/types/@openzeppelin/contracts/token/ERC721/IERC721Receiver.d.ts @@ -0,0 +1,40 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; +export interface IERC721ReceiverInterface extends Interface { + getFunction(nameOrSignature: "onERC721Received"): FunctionFragment; + encodeFunctionData(functionFragment: "onERC721Received", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; + decodeFunctionResult(functionFragment: "onERC721Received", data: BytesLike): Result; +} +export interface IERC721Receiver extends BaseContract { + connect(runner?: ContractRunner | null): IERC721Receiver; + waitForDeployment(): Promise; + interface: IERC721ReceiverInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + onERC721Received: TypedContractMethod<[ + operator: AddressLike, + from: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + string + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "onERC721Received"): TypedContractMethod<[ + operator: AddressLike, + from: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + string + ], "nonpayable">; + filters: {}; +} +//# sourceMappingURL=IERC721Receiver.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC721/IERC721Receiver.d.ts.map b/dist/types/@openzeppelin/contracts/token/ERC721/IERC721Receiver.d.ts.map new file mode 100644 index 00000000..79b15a83 --- /dev/null +++ b/dist/types/@openzeppelin/contracts/token/ERC721/IERC721Receiver.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC721Receiver.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts/token/ERC721/IERC721Receiver.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC721/IERC721Receiver.js b/dist/types/@openzeppelin/contracts/token/ERC721/IERC721Receiver.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts/token/ERC721/IERC721Receiver.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.d.ts b/dist/types/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.d.ts new file mode 100644 index 00000000..4a8923d6 --- /dev/null +++ b/dist/types/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.d.ts @@ -0,0 +1,212 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; +export interface IERC721MetadataInterface extends Interface { + getFunction(nameOrSignature: "approve" | "balanceOf" | "getApproved" | "isApprovedForAll" | "name" | "ownerOf" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "setApprovalForAll" | "supportsInterface" | "symbol" | "tokenURI" | "transferFrom"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "Transfer"): EventFragment; + encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "name", values?: undefined): string; + encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "symbol", values?: undefined): string; + encodeFunctionData(functionFragment: "tokenURI", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; + decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "tokenURI", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; +} +export declare namespace ApprovalEvent { + type InputTuple = [ + owner: AddressLike, + approved: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [owner: string, approved: string, tokenId: bigint]; + interface OutputObject { + owner: string; + approved: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ApprovalForAllEvent { + type InputTuple = [ + owner: AddressLike, + operator: AddressLike, + approved: boolean + ]; + type OutputTuple = [ + owner: string, + operator: string, + approved: boolean + ]; + interface OutputObject { + owner: string; + operator: string; + approved: boolean; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferEvent { + type InputTuple = [ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [from: string, to: string, tokenId: bigint]; + interface OutputObject { + from: string; + to: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface IERC721Metadata extends BaseContract { + connect(runner?: ContractRunner | null): IERC721Metadata; + waitForDeployment(): Promise; + interface: IERC721MetadataInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + approve: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; + getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + isApprovedForAll: TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + name: TypedContractMethod<[], [string], "view">; + ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + setApprovalForAll: TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + symbol: TypedContractMethod<[], [string], "view">; + tokenURI: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + transferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "approve"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; + getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "symbol"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "tokenURI"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getEvent(key: "Approval"): TypedContractEvent; + getEvent(key: "ApprovalForAll"): TypedContractEvent; + getEvent(key: "Transfer"): TypedContractEvent; + filters: { + "Approval(address,address,uint256)": TypedContractEvent; + Approval: TypedContractEvent; + "ApprovalForAll(address,address,bool)": TypedContractEvent; + ApprovalForAll: TypedContractEvent; + "Transfer(address,address,uint256)": TypedContractEvent; + Transfer: TypedContractEvent; + }; +} +//# sourceMappingURL=IERC721Metadata.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.d.ts.map b/dist/types/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.d.ts.map new file mode 100644 index 00000000..fa5ac922 --- /dev/null +++ b/dist/types/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC721Metadata.d.ts","sourceRoot":"","sources":["../../../../../../../types/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,aAAa,EACb,WAAW,EACX,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,mBAAmB,EACnB,aAAa,EACb,mBAAmB,EACpB,MAAM,uBAAuB,CAAC;AAE/B,MAAM,WAAW,wBAAyB,SAAQ,SAAS;IACzD,WAAW,CACT,eAAe,EACX,SAAS,GACT,WAAW,GACX,aAAa,GACb,kBAAkB,GAClB,MAAM,GACN,SAAS,GACT,2CAA2C,GAC3C,iDAAiD,GACjD,mBAAmB,GACnB,mBAAmB,GACnB,QAAQ,GACR,UAAU,GACV,cAAc,GACjB,gBAAgB,CAAC;IAEpB,QAAQ,CACN,sBAAsB,EAAE,UAAU,GAAG,gBAAgB,GAAG,UAAU,GACjE,aAAa,CAAC;IAEjB,kBAAkB,CAChB,gBAAgB,EAAE,SAAS,EAC3B,MAAM,EAAE,CAAC,WAAW,EAAE,YAAY,CAAC,GAClC,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,WAAW,EAC7B,MAAM,EAAE,CAAC,WAAW,CAAC,GACpB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,aAAa,EAC/B,MAAM,EAAE,CAAC,YAAY,CAAC,GACrB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,kBAAkB,EACpC,MAAM,EAAE,CAAC,WAAW,EAAE,WAAW,CAAC,GACjC,MAAM,CAAC;IACV,kBAAkB,CAAC,gBAAgB,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IACzE,kBAAkB,CAChB,gBAAgB,EAAE,SAAS,EAC3B,MAAM,EAAE,CAAC,YAAY,CAAC,GACrB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,2CAA2C,EAC7D,MAAM,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,YAAY,CAAC,GAC/C,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,iDAAiD,EACnE,MAAM,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,SAAS,CAAC,GAC1D,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,mBAAmB,EACrC,MAAM,EAAE,CAAC,WAAW,EAAE,OAAO,CAAC,GAC7B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,mBAAmB,EACrC,MAAM,EAAE,CAAC,SAAS,CAAC,GAClB,MAAM,CAAC;IACV,kBAAkB,CAAC,gBAAgB,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,kBAAkB,CAChB,gBAAgB,EAAE,UAAU,EAC5B,MAAM,EAAE,CAAC,YAAY,CAAC,GACrB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,cAAc,EAChC,MAAM,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,YAAY,CAAC,GAC/C,MAAM,CAAC;IAEV,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,oBAAoB,CAAC,gBAAgB,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC7E,oBAAoB,CAClB,gBAAgB,EAAE,aAAa,EAC/B,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,kBAAkB,EACpC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IACxE,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,oBAAoB,CAClB,gBAAgB,EAAE,2CAA2C,EAC7D,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,iDAAiD,EACnE,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,mBAAmB,EACrC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,mBAAmB,EACrC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC1E,oBAAoB,CAAC,gBAAgB,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC5E,oBAAoB,CAClB,gBAAgB,EAAE,cAAc,EAChC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;CACX;AAED,yBAAiB,aAAa,CAAC;IAC7B,KAAY,UAAU,GAAG;QACvB,KAAK,EAAE,WAAW;QAClB,QAAQ,EAAE,WAAW;QACrB,OAAO,EAAE,YAAY;KACtB,CAAC;IACF,KAAY,WAAW,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IAC7E,UAAiB,YAAY;QAC3B,KAAK,EAAE,MAAM,CAAC;QACd,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,MAAM,CAAC;KACjB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,mBAAmB,CAAC;IACnC,KAAY,UAAU,GAAG;QACvB,KAAK,EAAE,WAAW;QAClB,QAAQ,EAAE,WAAW;QACrB,QAAQ,EAAE,OAAO;KAClB,CAAC;IACF,KAAY,WAAW,GAAG;QACxB,KAAK,EAAE,MAAM;QACb,QAAQ,EAAE,MAAM;QAChB,QAAQ,EAAE,OAAO;KAClB,CAAC;IACF,UAAiB,YAAY;QAC3B,KAAK,EAAE,MAAM,CAAC;QACd,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,OAAO,CAAC;KACnB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,aAAa,CAAC;IAC7B,KAAY,UAAU,GAAG;QACvB,IAAI,EAAE,WAAW;QACjB,EAAE,EAAE,WAAW;QACf,OAAO,EAAE,YAAY;KACtB,CAAC;IACF,KAAY,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IACtE,UAAiB,YAAY;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,EAAE,EAAE,MAAM,CAAC;QACX,OAAO,EAAE,MAAM,CAAC;KACjB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,MAAM,WAAW,eAAgB,SAAQ,YAAY;IACnD,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,eAAe,CAAC;IACzD,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,wBAAwB,CAAC;IAEpC,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,OAAO,EAAE,mBAAmB,CAC1B;QAAC,EAAE,EAAE,WAAW;QAAE,OAAO,EAAE,YAAY;KAAC,EACxC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,SAAS,EAAE,mBAAmB,CAAC,CAAC,KAAK,EAAE,WAAW,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEvE,WAAW,EAAE,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAE5E,gBAAgB,EAAE,mBAAmB,CACnC;QAAC,KAAK,EAAE,WAAW;QAAE,QAAQ,EAAE,WAAW;KAAC,EAC3C;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,IAAI,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEhD,OAAO,EAAE,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAExE,2CAA2C,EAAE,mBAAmB,CAC9D;QAAC,IAAI,EAAE,WAAW;QAAE,EAAE,EAAE,WAAW;QAAE,OAAO,EAAE,YAAY;KAAC,EAC3D;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,iDAAiD,EAAE,mBAAmB,CACpE;QACE,IAAI,EAAE,WAAW;QACjB,EAAE,EAAE,WAAW;QACf,OAAO,EAAE,YAAY;QACrB,IAAI,EAAE,SAAS;KAChB,EACD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,iBAAiB,EAAE,mBAAmB,CACpC;QAAC,QAAQ,EAAE,WAAW;QAAE,QAAQ,EAAE,OAAO;KAAC,EAC1C;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,iBAAiB,EAAE,mBAAmB,CACpC;QAAC,WAAW,EAAE,SAAS;KAAC,EACxB;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,MAAM,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAElD,QAAQ,EAAE,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEzE,YAAY,EAAE,mBAAmB,CAC/B;QAAC,IAAI,EAAE,WAAW;QAAE,EAAE,EAAE,WAAW;QAAE,OAAO,EAAE,YAAY;KAAC,EAC3D;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,WAAW,CACT,eAAe,EAAE,SAAS,GACzB,mBAAmB,CACpB;QAAC,EAAE,EAAE,WAAW;QAAE,OAAO,EAAE,YAAY;KAAC,EACxC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,WAAW,GAC3B,mBAAmB,CAAC,CAAC,KAAK,EAAE,WAAW,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC/D,WAAW,CACT,eAAe,EAAE,aAAa,GAC7B,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAClE,WAAW,CACT,eAAe,EAAE,kBAAkB,GAClC,mBAAmB,CACpB;QAAC,KAAK,EAAE,WAAW;QAAE,QAAQ,EAAE,WAAW;KAAC,EAC3C;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,MAAM,GACtB,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC7C,WAAW,CACT,eAAe,EAAE,SAAS,GACzB,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAClE,WAAW,CACT,eAAe,EAAE,2CAA2C,GAC3D,mBAAmB,CACpB;QAAC,IAAI,EAAE,WAAW;QAAE,EAAE,EAAE,WAAW;QAAE,OAAO,EAAE,YAAY;KAAC,EAC3D;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,iDAAiD,GACjE,mBAAmB,CACpB;QACE,IAAI,EAAE,WAAW;QACjB,EAAE,EAAE,WAAW;QACf,OAAO,EAAE,YAAY;QACrB,IAAI,EAAE,SAAS;KAChB,EACD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,mBAAmB,GACnC,mBAAmB,CACpB;QAAC,QAAQ,EAAE,WAAW;QAAE,QAAQ,EAAE,OAAO;KAAC,EAC1C;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,mBAAmB,GACnC,mBAAmB,CAAC,CAAC,WAAW,EAAE,SAAS,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IACpE,WAAW,CACT,eAAe,EAAE,QAAQ,GACxB,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC7C,WAAW,CACT,eAAe,EAAE,UAAU,GAC1B,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAClE,WAAW,CACT,eAAe,EAAE,cAAc,GAC9B,mBAAmB,CACpB;QAAC,IAAI,EAAE,WAAW;QAAE,EAAE,EAAE,WAAW;QAAE,OAAO,EAAE,YAAY;KAAC,EAC3D;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,QAAQ,CACN,GAAG,EAAE,UAAU,GACd,kBAAkB,CACnB,aAAa,CAAC,UAAU,EACxB,aAAa,CAAC,WAAW,EACzB,aAAa,CAAC,YAAY,CAC3B,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,gBAAgB,GACpB,kBAAkB,CACnB,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,UAAU,GACd,kBAAkB,CACnB,aAAa,CAAC,UAAU,EACxB,aAAa,CAAC,WAAW,EACzB,aAAa,CAAC,YAAY,CAC3B,CAAC;IAEF,OAAO,EAAE;QACP,mCAAmC,EAAE,kBAAkB,CACrD,aAAa,CAAC,UAAU,EACxB,aAAa,CAAC,WAAW,EACzB,aAAa,CAAC,YAAY,CAC3B,CAAC;QACF,QAAQ,EAAE,kBAAkB,CAC1B,aAAa,CAAC,UAAU,EACxB,aAAa,CAAC,WAAW,EACzB,aAAa,CAAC,YAAY,CAC3B,CAAC;QAEF,sCAAsC,EAAE,kBAAkB,CACxD,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;QACF,cAAc,EAAE,kBAAkB,CAChC,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;QAEF,mCAAmC,EAAE,kBAAkB,CACrD,aAAa,CAAC,UAAU,EACxB,aAAa,CAAC,WAAW,EACzB,aAAa,CAAC,YAAY,CAC3B,CAAC;QACF,QAAQ,EAAE,kBAAkB,CAC1B,aAAa,CAAC,UAAU,EACxB,aAAa,CAAC,WAAW,EACzB,aAAa,CAAC,YAAY,CAC3B,CAAC;KACH,CAAC;CACH"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.js b/dist/types/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts/token/ERC721/extensions/index.d.ts b/dist/types/@openzeppelin/contracts/token/ERC721/extensions/index.d.ts new file mode 100644 index 00000000..883c1d26 --- /dev/null +++ b/dist/types/@openzeppelin/contracts/token/ERC721/extensions/index.d.ts @@ -0,0 +1,2 @@ +export type { IERC721Metadata } from "./IERC721Metadata"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC721/extensions/index.d.ts.map b/dist/types/@openzeppelin/contracts/token/ERC721/extensions/index.d.ts.map new file mode 100644 index 00000000..794da61b --- /dev/null +++ b/dist/types/@openzeppelin/contracts/token/ERC721/extensions/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/@openzeppelin/contracts/token/ERC721/extensions/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC721/extensions/index.js b/dist/types/@openzeppelin/contracts/token/ERC721/extensions/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts/token/ERC721/extensions/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts/token/ERC721/index.d.ts b/dist/types/@openzeppelin/contracts/token/ERC721/index.d.ts new file mode 100644 index 00000000..c0e9348a --- /dev/null +++ b/dist/types/@openzeppelin/contracts/token/ERC721/index.d.ts @@ -0,0 +1,6 @@ +import type * as extensions from "./extensions"; +export type { extensions }; +export type { ERC721 } from "./ERC721"; +export type { IERC721 } from "./IERC721"; +export type { IERC721Receiver } from "./IERC721Receiver"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC721/index.d.ts.map b/dist/types/@openzeppelin/contracts/token/ERC721/index.d.ts.map new file mode 100644 index 00000000..f63cdad9 --- /dev/null +++ b/dist/types/@openzeppelin/contracts/token/ERC721/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts/token/ERC721/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,UAAU,MAAM,cAAc,CAAC;AAChD,YAAY,EAAE,UAAU,EAAE,CAAC;AAC3B,YAAY,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AACvC,YAAY,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,YAAY,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC721/index.js b/dist/types/@openzeppelin/contracts/token/ERC721/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts/token/ERC721/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts/token/index.d.ts b/dist/types/@openzeppelin/contracts/token/index.d.ts new file mode 100644 index 00000000..e0f93091 --- /dev/null +++ b/dist/types/@openzeppelin/contracts/token/index.d.ts @@ -0,0 +1,7 @@ +import type * as erc1155 from "./ERC1155"; +export type { erc1155 }; +import type * as erc20 from "./ERC20"; +export type { erc20 }; +import type * as erc721 from "./ERC721"; +export type { erc721 }; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/index.d.ts.map b/dist/types/@openzeppelin/contracts/token/index.d.ts.map new file mode 100644 index 00000000..43daf9a8 --- /dev/null +++ b/dist/types/@openzeppelin/contracts/token/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/@openzeppelin/contracts/token/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,OAAO,MAAM,WAAW,CAAC;AAC1C,YAAY,EAAE,OAAO,EAAE,CAAC;AACxB,OAAO,KAAK,KAAK,KAAK,MAAM,SAAS,CAAC;AACtC,YAAY,EAAE,KAAK,EAAE,CAAC;AACtB,OAAO,KAAK,KAAK,MAAM,MAAM,UAAU,CAAC;AACxC,YAAY,EAAE,MAAM,EAAE,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/index.js b/dist/types/@openzeppelin/contracts/token/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts/token/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts/utils/index.d.ts b/dist/types/@openzeppelin/contracts/utils/index.d.ts new file mode 100644 index 00000000..2d3d7319 --- /dev/null +++ b/dist/types/@openzeppelin/contracts/utils/index.d.ts @@ -0,0 +1,3 @@ +import type * as introspection from "./introspection"; +export type { introspection }; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/utils/index.d.ts.map b/dist/types/@openzeppelin/contracts/utils/index.d.ts.map new file mode 100644 index 00000000..f49143cc --- /dev/null +++ b/dist/types/@openzeppelin/contracts/utils/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/@openzeppelin/contracts/utils/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,aAAa,MAAM,iBAAiB,CAAC;AACtD,YAAY,EAAE,aAAa,EAAE,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/utils/index.js b/dist/types/@openzeppelin/contracts/utils/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts/utils/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts/utils/introspection/ERC165.d.ts b/dist/types/@openzeppelin/contracts/utils/introspection/ERC165.d.ts new file mode 100644 index 00000000..6c963736 --- /dev/null +++ b/dist/types/@openzeppelin/contracts/utils/introspection/ERC165.d.ts @@ -0,0 +1,30 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; +export interface ERC165Interface extends Interface { + getFunction(nameOrSignature: "supportsInterface"): FunctionFragment; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; +} +export interface ERC165 extends BaseContract { + connect(runner?: ContractRunner | null): ERC165; + waitForDeployment(): Promise; + interface: ERC165Interface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + filters: {}; +} +//# sourceMappingURL=ERC165.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/utils/introspection/ERC165.d.ts.map b/dist/types/@openzeppelin/contracts/utils/introspection/ERC165.d.ts.map new file mode 100644 index 00000000..2d7fb457 --- /dev/null +++ b/dist/types/@openzeppelin/contracts/utils/introspection/ERC165.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ERC165.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts/utils/introspection/ERC165.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,aAAa,EACb,mBAAmB,EACpB,MAAM,oBAAoB,CAAC;AAE5B,MAAM,WAAW,eAAgB,SAAQ,SAAS;IAChD,WAAW,CAAC,eAAe,EAAE,mBAAmB,GAAG,gBAAgB,CAAC;IAEpE,kBAAkB,CAChB,gBAAgB,EAAE,mBAAmB,EACrC,MAAM,EAAE,CAAC,SAAS,CAAC,GAClB,MAAM,CAAC;IAEV,oBAAoB,CAClB,gBAAgB,EAAE,mBAAmB,EACrC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;CACX;AAED,MAAM,WAAW,MAAO,SAAQ,YAAY;IAC1C,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,MAAM,CAAC;IAChD,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,eAAe,CAAC;IAE3B,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,iBAAiB,EAAE,mBAAmB,CACpC;QAAC,WAAW,EAAE,SAAS;KAAC,EACxB;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,WAAW,CACT,eAAe,EAAE,mBAAmB,GACnC,mBAAmB,CAAC,CAAC,WAAW,EAAE,SAAS,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IAEpE,OAAO,EAAE,EAAE,CAAC;CACb"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/utils/introspection/ERC165.js b/dist/types/@openzeppelin/contracts/utils/introspection/ERC165.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts/utils/introspection/ERC165.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts/utils/introspection/IERC165.d.ts b/dist/types/@openzeppelin/contracts/utils/introspection/IERC165.d.ts new file mode 100644 index 00000000..f8dd5082 --- /dev/null +++ b/dist/types/@openzeppelin/contracts/utils/introspection/IERC165.d.ts @@ -0,0 +1,30 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; +export interface IERC165Interface extends Interface { + getFunction(nameOrSignature: "supportsInterface"): FunctionFragment; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; +} +export interface IERC165 extends BaseContract { + connect(runner?: ContractRunner | null): IERC165; + waitForDeployment(): Promise; + interface: IERC165Interface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + filters: {}; +} +//# sourceMappingURL=IERC165.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/utils/introspection/IERC165.d.ts.map b/dist/types/@openzeppelin/contracts/utils/introspection/IERC165.d.ts.map new file mode 100644 index 00000000..caf15c31 --- /dev/null +++ b/dist/types/@openzeppelin/contracts/utils/introspection/IERC165.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC165.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts/utils/introspection/IERC165.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/utils/introspection/IERC165.js b/dist/types/@openzeppelin/contracts/utils/introspection/IERC165.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts/utils/introspection/IERC165.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts/utils/introspection/index.d.ts b/dist/types/@openzeppelin/contracts/utils/introspection/index.d.ts new file mode 100644 index 00000000..1d48adcb --- /dev/null +++ b/dist/types/@openzeppelin/contracts/utils/introspection/index.d.ts @@ -0,0 +1,3 @@ +export type { ERC165 } from "./ERC165"; +export type { IERC165 } from "./IERC165"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/utils/introspection/index.d.ts.map b/dist/types/@openzeppelin/contracts/utils/introspection/index.d.ts.map new file mode 100644 index 00000000..dbc2836f --- /dev/null +++ b/dist/types/@openzeppelin/contracts/utils/introspection/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts/utils/introspection/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AACvC,YAAY,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/utils/introspection/index.js b/dist/types/@openzeppelin/contracts/utils/introspection/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/contracts/utils/introspection/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/index.d.ts b/dist/types/@openzeppelin/index.d.ts new file mode 100644 index 00000000..029aed4e --- /dev/null +++ b/dist/types/@openzeppelin/index.d.ts @@ -0,0 +1,7 @@ +import type * as contracts from "./contracts"; +export type { contracts }; +import type * as contracts23 from "./contracts-2.3"; +export type { contracts23 }; +import type * as contractsUpgradeable from "./contracts-upgradeable"; +export type { contractsUpgradeable }; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/index.d.ts.map b/dist/types/@openzeppelin/index.d.ts.map new file mode 100644 index 00000000..c4140179 --- /dev/null +++ b/dist/types/@openzeppelin/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../types/@openzeppelin/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,SAAS,MAAM,aAAa,CAAC;AAC9C,YAAY,EAAE,SAAS,EAAE,CAAC;AAC1B,OAAO,KAAK,KAAK,WAAW,MAAM,iBAAiB,CAAC;AACpD,YAAY,EAAE,WAAW,EAAE,CAAC;AAC5B,OAAO,KAAK,KAAK,oBAAoB,MAAM,yBAAyB,CAAC;AACrE,YAAY,EAAE,oBAAoB,EAAE,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/index.js b/dist/types/@openzeppelin/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/@openzeppelin/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/common.d.ts b/dist/types/common.d.ts new file mode 100644 index 00000000..e20b4474 --- /dev/null +++ b/dist/types/common.d.ts @@ -0,0 +1,51 @@ +import type { FunctionFragment, Typed, EventFragment, ContractTransaction, ContractTransactionResponse, DeferredTopicFilter, EventLog, TransactionRequest, LogDescription } from "ethers"; +export interface TypedDeferredTopicFilter<_TCEvent extends TypedContractEvent> extends DeferredTopicFilter { +} +export interface TypedContractEvent = any, OutputTuple extends Array = any, OutputObject = any> { + (...args: Partial): TypedDeferredTopicFilter>; + name: string; + fragment: EventFragment; + getFragment(...args: Partial): EventFragment; +} +declare type __TypechainAOutputTuple = T extends TypedContractEvent ? W : never; +declare type __TypechainOutputObject = T extends TypedContractEvent ? V : never; +export interface TypedEventLog extends Omit { + args: __TypechainAOutputTuple & __TypechainOutputObject; +} +export interface TypedLogDescription extends Omit { + args: __TypechainAOutputTuple & __TypechainOutputObject; +} +export declare type TypedListener = (...listenerArg: [ + ...__TypechainAOutputTuple, + TypedEventLog, + ...undefined[] +]) => void; +export declare type MinEthersFactory = { + deploy(...a: ARGS[]): Promise; +}; +export declare type GetContractTypeFromFactory = F extends MinEthersFactory ? C : never; +export declare type GetARGsTypeFromFactory = F extends MinEthersFactory ? Parameters : never; +export declare type StateMutability = "nonpayable" | "payable" | "view"; +export declare type BaseOverrides = Omit; +export declare type NonPayableOverrides = Omit; +export declare type PayableOverrides = Omit; +export declare type ViewOverrides = Omit; +export declare type Overrides = S extends "nonpayable" ? NonPayableOverrides : S extends "payable" ? PayableOverrides : ViewOverrides; +export declare type PostfixOverrides, S extends StateMutability> = A | [...A, Overrides]; +export declare type ContractMethodArgs, S extends StateMutability> = PostfixOverrides<{ + [I in keyof A]-?: A[I] | Typed; +}, S>; +export declare type DefaultReturnType = R extends Array ? R[0] : R; +export interface TypedContractMethod = Array, R = any, S extends StateMutability = "payable"> { + (...args: ContractMethodArgs): S extends "view" ? Promise> : Promise; + name: string; + fragment: FunctionFragment; + getFragment(...args: ContractMethodArgs): FunctionFragment; + populateTransaction(...args: ContractMethodArgs): Promise; + staticCall(...args: ContractMethodArgs): Promise>; + send(...args: ContractMethodArgs): Promise; + estimateGas(...args: ContractMethodArgs): Promise; + staticCallResult(...args: ContractMethodArgs): Promise; +} +export {}; +//# sourceMappingURL=common.d.ts.map \ No newline at end of file diff --git a/dist/types/common.d.ts.map b/dist/types/common.d.ts.map new file mode 100644 index 00000000..de5acbcd --- /dev/null +++ b/dist/types/common.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../types/common.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/common.js b/dist/types/common.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/common.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/LegacyENSRegistry.sol/LegacyENS.d.ts b/dist/types/contracts/@ens/LegacyENSRegistry.sol/LegacyENS.d.ts new file mode 100644 index 00000000..02a1e866 --- /dev/null +++ b/dist/types/contracts/@ens/LegacyENSRegistry.sol/LegacyENS.d.ts @@ -0,0 +1,159 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../common"; +export interface LegacyENSInterface extends Interface { + getFunction(nameOrSignature: "owner" | "resolver" | "setOwner" | "setResolver" | "setSubnodeOwner" | "setTTL" | "ttl"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "NewOwner" | "NewResolver" | "NewTTL" | "Transfer"): EventFragment; + encodeFunctionData(functionFragment: "owner", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "resolver", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "setOwner", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "setResolver", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "setSubnodeOwner", values: [BytesLike, BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "setTTL", values: [BytesLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "ttl", values: [BytesLike]): string; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "resolver", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setOwner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setResolver", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setSubnodeOwner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setTTL", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ttl", data: BytesLike): Result; +} +export declare namespace NewOwnerEvent { + type InputTuple = [ + node: BytesLike, + label: BytesLike, + owner: AddressLike + ]; + type OutputTuple = [node: string, label: string, owner: string]; + interface OutputObject { + node: string; + label: string; + owner: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NewResolverEvent { + type InputTuple = [node: BytesLike, resolver: AddressLike]; + type OutputTuple = [node: string, resolver: string]; + interface OutputObject { + node: string; + resolver: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NewTTLEvent { + type InputTuple = [node: BytesLike, ttl: BigNumberish]; + type OutputTuple = [node: string, ttl: bigint]; + interface OutputObject { + node: string; + ttl: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferEvent { + type InputTuple = [node: BytesLike, owner: AddressLike]; + type OutputTuple = [node: string, owner: string]; + interface OutputObject { + node: string; + owner: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface LegacyENS extends BaseContract { + connect(runner?: ContractRunner | null): LegacyENS; + waitForDeployment(): Promise; + interface: LegacyENSInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + owner: TypedContractMethod<[node: BytesLike], [string], "view">; + resolver: TypedContractMethod<[node: BytesLike], [string], "view">; + setOwner: TypedContractMethod<[ + node: BytesLike, + owner: AddressLike + ], [ + void + ], "nonpayable">; + setResolver: TypedContractMethod<[ + node: BytesLike, + resolver: AddressLike + ], [ + void + ], "nonpayable">; + setSubnodeOwner: TypedContractMethod<[ + node: BytesLike, + label: BytesLike, + owner: AddressLike + ], [ + void + ], "nonpayable">; + setTTL: TypedContractMethod<[ + node: BytesLike, + ttl: BigNumberish + ], [ + void + ], "nonpayable">; + ttl: TypedContractMethod<[node: BytesLike], [bigint], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "owner"): TypedContractMethod<[node: BytesLike], [string], "view">; + getFunction(nameOrSignature: "resolver"): TypedContractMethod<[node: BytesLike], [string], "view">; + getFunction(nameOrSignature: "setOwner"): TypedContractMethod<[ + node: BytesLike, + owner: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setResolver"): TypedContractMethod<[ + node: BytesLike, + resolver: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setSubnodeOwner"): TypedContractMethod<[ + node: BytesLike, + label: BytesLike, + owner: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setTTL"): TypedContractMethod<[ + node: BytesLike, + ttl: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "ttl"): TypedContractMethod<[node: BytesLike], [bigint], "view">; + getEvent(key: "NewOwner"): TypedContractEvent; + getEvent(key: "NewResolver"): TypedContractEvent; + getEvent(key: "NewTTL"): TypedContractEvent; + getEvent(key: "Transfer"): TypedContractEvent; + filters: { + "NewOwner(bytes32,bytes32,address)": TypedContractEvent; + NewOwner: TypedContractEvent; + "NewResolver(bytes32,address)": TypedContractEvent; + NewResolver: TypedContractEvent; + "NewTTL(bytes32,uint64)": TypedContractEvent; + NewTTL: TypedContractEvent; + "Transfer(bytes32,address)": TypedContractEvent; + Transfer: TypedContractEvent; + }; +} +//# sourceMappingURL=LegacyENS.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/LegacyENSRegistry.sol/LegacyENS.d.ts.map b/dist/types/contracts/@ens/LegacyENSRegistry.sol/LegacyENS.d.ts.map new file mode 100644 index 00000000..4c780175 --- /dev/null +++ b/dist/types/contracts/@ens/LegacyENSRegistry.sol/LegacyENS.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"LegacyENS.d.ts","sourceRoot":"","sources":["../../../../../types/contracts/@ens/LegacyENSRegistry.sol/LegacyENS.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/LegacyENSRegistry.sol/LegacyENS.js b/dist/types/contracts/@ens/LegacyENSRegistry.sol/LegacyENS.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@ens/LegacyENSRegistry.sol/LegacyENS.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry.d.ts b/dist/types/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry.d.ts new file mode 100644 index 00000000..46cb589d --- /dev/null +++ b/dist/types/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry.d.ts @@ -0,0 +1,159 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../common"; +export interface LegacyENSRegistryInterface extends Interface { + getFunction(nameOrSignature: "owner" | "resolver" | "setOwner" | "setResolver" | "setSubnodeOwner" | "setTTL" | "ttl"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "NewOwner" | "NewResolver" | "NewTTL" | "Transfer"): EventFragment; + encodeFunctionData(functionFragment: "owner", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "resolver", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "setOwner", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "setResolver", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "setSubnodeOwner", values: [BytesLike, BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "setTTL", values: [BytesLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "ttl", values: [BytesLike]): string; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "resolver", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setOwner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setResolver", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setSubnodeOwner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setTTL", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ttl", data: BytesLike): Result; +} +export declare namespace NewOwnerEvent { + type InputTuple = [ + node: BytesLike, + label: BytesLike, + owner: AddressLike + ]; + type OutputTuple = [node: string, label: string, owner: string]; + interface OutputObject { + node: string; + label: string; + owner: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NewResolverEvent { + type InputTuple = [node: BytesLike, resolver: AddressLike]; + type OutputTuple = [node: string, resolver: string]; + interface OutputObject { + node: string; + resolver: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NewTTLEvent { + type InputTuple = [node: BytesLike, ttl: BigNumberish]; + type OutputTuple = [node: string, ttl: bigint]; + interface OutputObject { + node: string; + ttl: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferEvent { + type InputTuple = [node: BytesLike, owner: AddressLike]; + type OutputTuple = [node: string, owner: string]; + interface OutputObject { + node: string; + owner: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface LegacyENSRegistry extends BaseContract { + connect(runner?: ContractRunner | null): LegacyENSRegistry; + waitForDeployment(): Promise; + interface: LegacyENSRegistryInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + owner: TypedContractMethod<[node: BytesLike], [string], "view">; + resolver: TypedContractMethod<[node: BytesLike], [string], "view">; + setOwner: TypedContractMethod<[ + node: BytesLike, + owner: AddressLike + ], [ + void + ], "nonpayable">; + setResolver: TypedContractMethod<[ + node: BytesLike, + resolver: AddressLike + ], [ + void + ], "nonpayable">; + setSubnodeOwner: TypedContractMethod<[ + node: BytesLike, + label: BytesLike, + owner: AddressLike + ], [ + void + ], "nonpayable">; + setTTL: TypedContractMethod<[ + node: BytesLike, + ttl: BigNumberish + ], [ + void + ], "nonpayable">; + ttl: TypedContractMethod<[node: BytesLike], [bigint], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "owner"): TypedContractMethod<[node: BytesLike], [string], "view">; + getFunction(nameOrSignature: "resolver"): TypedContractMethod<[node: BytesLike], [string], "view">; + getFunction(nameOrSignature: "setOwner"): TypedContractMethod<[ + node: BytesLike, + owner: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setResolver"): TypedContractMethod<[ + node: BytesLike, + resolver: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setSubnodeOwner"): TypedContractMethod<[ + node: BytesLike, + label: BytesLike, + owner: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setTTL"): TypedContractMethod<[ + node: BytesLike, + ttl: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "ttl"): TypedContractMethod<[node: BytesLike], [bigint], "view">; + getEvent(key: "NewOwner"): TypedContractEvent; + getEvent(key: "NewResolver"): TypedContractEvent; + getEvent(key: "NewTTL"): TypedContractEvent; + getEvent(key: "Transfer"): TypedContractEvent; + filters: { + "NewOwner(bytes32,bytes32,address)": TypedContractEvent; + NewOwner: TypedContractEvent; + "NewResolver(bytes32,address)": TypedContractEvent; + NewResolver: TypedContractEvent; + "NewTTL(bytes32,uint64)": TypedContractEvent; + NewTTL: TypedContractEvent; + "Transfer(bytes32,address)": TypedContractEvent; + Transfer: TypedContractEvent; + }; +} +//# sourceMappingURL=LegacyENSRegistry.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry.d.ts.map b/dist/types/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry.d.ts.map new file mode 100644 index 00000000..cf6ebb8b --- /dev/null +++ b/dist/types/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"LegacyENSRegistry.d.ts","sourceRoot":"","sources":["../../../../../types/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry.js b/dist/types/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/LegacyENSRegistry.sol/index.d.ts b/dist/types/contracts/@ens/LegacyENSRegistry.sol/index.d.ts new file mode 100644 index 00000000..ec8ead9a --- /dev/null +++ b/dist/types/contracts/@ens/LegacyENSRegistry.sol/index.d.ts @@ -0,0 +1,3 @@ +export type { LegacyENS } from "./LegacyENS"; +export type { LegacyENSRegistry } from "./LegacyENSRegistry"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/LegacyENSRegistry.sol/index.d.ts.map b/dist/types/contracts/@ens/LegacyENSRegistry.sol/index.d.ts.map new file mode 100644 index 00000000..a505f464 --- /dev/null +++ b/dist/types/contracts/@ens/LegacyENSRegistry.sol/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/contracts/@ens/LegacyENSRegistry.sol/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,YAAY,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/LegacyENSRegistry.sol/index.js b/dist/types/contracts/@ens/LegacyENSRegistry.sol/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@ens/LegacyENSRegistry.sol/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar.d.ts b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar.d.ts new file mode 100644 index 00000000..b2702a1c --- /dev/null +++ b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar.d.ts @@ -0,0 +1,410 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../common"; +export interface BaseRegistrarInterface extends Interface { + getFunction(nameOrSignature: "GRACE_PERIOD" | "addController" | "approve" | "available" | "balanceOf" | "baseNode" | "controllers" | "ens" | "getApproved" | "isApprovedForAll" | "isOwner" | "nameExpires" | "owner" | "ownerOf" | "reclaim" | "register" | "removeController" | "renew" | "renounceOwnership" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "setApprovalForAll" | "setResolver" | "supportsInterface" | "transferFrom" | "transferOwnership"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "ControllerAdded" | "ControllerRemoved" | "NameMigrated" | "NameRegistered" | "NameRenewed" | "OwnershipTransferred" | "Transfer"): EventFragment; + encodeFunctionData(functionFragment: "GRACE_PERIOD", values?: undefined): string; + encodeFunctionData(functionFragment: "addController", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "available", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "baseNode", values?: undefined): string; + encodeFunctionData(functionFragment: "controllers", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "ens", values?: undefined): string; + encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "isOwner", values?: undefined): string; + encodeFunctionData(functionFragment: "nameExpires", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "reclaim", values: [BigNumberish, AddressLike]): string; + encodeFunctionData(functionFragment: "register", values: [BigNumberish, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "removeController", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "renew", values: [BigNumberish, BigNumberish]): string; + encodeFunctionData(functionFragment: "renounceOwnership", values?: undefined): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; + encodeFunctionData(functionFragment: "setResolver", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "transferOwnership", values: [AddressLike]): string; + decodeFunctionResult(functionFragment: "GRACE_PERIOD", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "addController", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "available", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "baseNode", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "controllers", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ens", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isOwner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "nameExpires", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "reclaim", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "register", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "removeController", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renew", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceOwnership", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setResolver", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result; +} +export declare namespace ApprovalEvent { + type InputTuple = [ + owner: AddressLike, + approved: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [owner: string, approved: string, tokenId: bigint]; + interface OutputObject { + owner: string; + approved: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ApprovalForAllEvent { + type InputTuple = [ + owner: AddressLike, + operator: AddressLike, + approved: boolean + ]; + type OutputTuple = [ + owner: string, + operator: string, + approved: boolean + ]; + interface OutputObject { + owner: string; + operator: string; + approved: boolean; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ControllerAddedEvent { + type InputTuple = [controller: AddressLike]; + type OutputTuple = [controller: string]; + interface OutputObject { + controller: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ControllerRemovedEvent { + type InputTuple = [controller: AddressLike]; + type OutputTuple = [controller: string]; + interface OutputObject { + controller: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NameMigratedEvent { + type InputTuple = [ + id: BigNumberish, + owner: AddressLike, + expires: BigNumberish + ]; + type OutputTuple = [id: bigint, owner: string, expires: bigint]; + interface OutputObject { + id: bigint; + owner: string; + expires: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NameRegisteredEvent { + type InputTuple = [ + id: BigNumberish, + owner: AddressLike, + expires: BigNumberish + ]; + type OutputTuple = [id: bigint, owner: string, expires: bigint]; + interface OutputObject { + id: bigint; + owner: string; + expires: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NameRenewedEvent { + type InputTuple = [id: BigNumberish, expires: BigNumberish]; + type OutputTuple = [id: bigint, expires: bigint]; + interface OutputObject { + id: bigint; + expires: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace OwnershipTransferredEvent { + type InputTuple = [previousOwner: AddressLike, newOwner: AddressLike]; + type OutputTuple = [previousOwner: string, newOwner: string]; + interface OutputObject { + previousOwner: string; + newOwner: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferEvent { + type InputTuple = [ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [from: string, to: string, tokenId: bigint]; + interface OutputObject { + from: string; + to: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface BaseRegistrar extends BaseContract { + connect(runner?: ContractRunner | null): BaseRegistrar; + waitForDeployment(): Promise; + interface: BaseRegistrarInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + GRACE_PERIOD: TypedContractMethod<[], [bigint], "view">; + addController: TypedContractMethod<[ + controller: AddressLike + ], [ + void + ], "nonpayable">; + approve: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + available: TypedContractMethod<[id: BigNumberish], [boolean], "view">; + balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; + baseNode: TypedContractMethod<[], [string], "view">; + controllers: TypedContractMethod<[arg0: AddressLike], [boolean], "view">; + ens: TypedContractMethod<[], [string], "view">; + getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + isApprovedForAll: TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + isOwner: TypedContractMethod<[], [boolean], "view">; + nameExpires: TypedContractMethod<[id: BigNumberish], [bigint], "view">; + owner: TypedContractMethod<[], [string], "view">; + ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + reclaim: TypedContractMethod<[ + id: BigNumberish, + owner: AddressLike + ], [ + void + ], "nonpayable">; + register: TypedContractMethod<[ + id: BigNumberish, + owner: AddressLike, + duration: BigNumberish + ], [ + bigint + ], "nonpayable">; + removeController: TypedContractMethod<[ + controller: AddressLike + ], [ + void + ], "nonpayable">; + renew: TypedContractMethod<[ + id: BigNumberish, + duration: BigNumberish + ], [ + bigint + ], "nonpayable">; + renounceOwnership: TypedContractMethod<[], [void], "nonpayable">; + "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + setApprovalForAll: TypedContractMethod<[ + operator: AddressLike, + _approved: boolean + ], [ + void + ], "nonpayable">; + setResolver: TypedContractMethod<[ + resolver: AddressLike + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + transferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + transferOwnership: TypedContractMethod<[ + newOwner: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "GRACE_PERIOD"): TypedContractMethod<[], [bigint], "view">; + getFunction(nameOrSignature: "addController"): TypedContractMethod<[controller: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "approve"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "available"): TypedContractMethod<[id: BigNumberish], [boolean], "view">; + getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; + getFunction(nameOrSignature: "baseNode"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "controllers"): TypedContractMethod<[arg0: AddressLike], [boolean], "view">; + getFunction(nameOrSignature: "ens"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "isOwner"): TypedContractMethod<[], [boolean], "view">; + getFunction(nameOrSignature: "nameExpires"): TypedContractMethod<[id: BigNumberish], [bigint], "view">; + getFunction(nameOrSignature: "owner"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "reclaim"): TypedContractMethod<[ + id: BigNumberish, + owner: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "register"): TypedContractMethod<[ + id: BigNumberish, + owner: AddressLike, + duration: BigNumberish + ], [ + bigint + ], "nonpayable">; + getFunction(nameOrSignature: "removeController"): TypedContractMethod<[controller: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "renew"): TypedContractMethod<[ + id: BigNumberish, + duration: BigNumberish + ], [ + bigint + ], "nonpayable">; + getFunction(nameOrSignature: "renounceOwnership"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ + operator: AddressLike, + _approved: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setResolver"): TypedContractMethod<[resolver: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "transferOwnership"): TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">; + getEvent(key: "Approval"): TypedContractEvent; + getEvent(key: "ApprovalForAll"): TypedContractEvent; + getEvent(key: "ControllerAdded"): TypedContractEvent; + getEvent(key: "ControllerRemoved"): TypedContractEvent; + getEvent(key: "NameMigrated"): TypedContractEvent; + getEvent(key: "NameRegistered"): TypedContractEvent; + getEvent(key: "NameRenewed"): TypedContractEvent; + getEvent(key: "OwnershipTransferred"): TypedContractEvent; + getEvent(key: "Transfer"): TypedContractEvent; + filters: { + "Approval(address,address,uint256)": TypedContractEvent; + Approval: TypedContractEvent; + "ApprovalForAll(address,address,bool)": TypedContractEvent; + ApprovalForAll: TypedContractEvent; + "ControllerAdded(address)": TypedContractEvent; + ControllerAdded: TypedContractEvent; + "ControllerRemoved(address)": TypedContractEvent; + ControllerRemoved: TypedContractEvent; + "NameMigrated(uint256,address,uint256)": TypedContractEvent; + NameMigrated: TypedContractEvent; + "NameRegistered(uint256,address,uint256)": TypedContractEvent; + NameRegistered: TypedContractEvent; + "NameRenewed(uint256,uint256)": TypedContractEvent; + NameRenewed: TypedContractEvent; + "OwnershipTransferred(address,address)": TypedContractEvent; + OwnershipTransferred: TypedContractEvent; + "Transfer(address,address,uint256)": TypedContractEvent; + Transfer: TypedContractEvent; + }; +} +//# sourceMappingURL=BaseRegistrar.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar.d.ts.map b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar.d.ts.map new file mode 100644 index 00000000..2b8a02c6 --- /dev/null +++ b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"BaseRegistrar.d.ts","sourceRoot":"","sources":["../../../../../types/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar.js b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/ENS.d.ts b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/ENS.d.ts new file mode 100644 index 00000000..f218135f --- /dev/null +++ b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/ENS.d.ts @@ -0,0 +1,253 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../common"; +export interface ENSInterface extends Interface { + getFunction(nameOrSignature: "isApprovedForAll" | "owner" | "recordExists" | "resolver" | "setApprovalForAll" | "setOwner" | "setRecord" | "setResolver" | "setSubnodeOwner" | "setSubnodeRecord" | "setTTL" | "ttl"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "ApprovalForAll" | "NewOwner" | "NewResolver" | "NewTTL" | "Transfer"): EventFragment; + encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "owner", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "recordExists", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "resolver", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; + encodeFunctionData(functionFragment: "setOwner", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "setRecord", values: [BytesLike, AddressLike, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "setResolver", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "setSubnodeOwner", values: [BytesLike, BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "setSubnodeRecord", values: [BytesLike, BytesLike, AddressLike, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "setTTL", values: [BytesLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "ttl", values: [BytesLike]): string; + decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "recordExists", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "resolver", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setOwner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setRecord", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setResolver", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setSubnodeOwner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setSubnodeRecord", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setTTL", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ttl", data: BytesLike): Result; +} +export declare namespace ApprovalForAllEvent { + type InputTuple = [ + owner: AddressLike, + operator: AddressLike, + approved: boolean + ]; + type OutputTuple = [ + owner: string, + operator: string, + approved: boolean + ]; + interface OutputObject { + owner: string; + operator: string; + approved: boolean; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NewOwnerEvent { + type InputTuple = [ + node: BytesLike, + label: BytesLike, + owner: AddressLike + ]; + type OutputTuple = [node: string, label: string, owner: string]; + interface OutputObject { + node: string; + label: string; + owner: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NewResolverEvent { + type InputTuple = [node: BytesLike, resolver: AddressLike]; + type OutputTuple = [node: string, resolver: string]; + interface OutputObject { + node: string; + resolver: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NewTTLEvent { + type InputTuple = [node: BytesLike, ttl: BigNumberish]; + type OutputTuple = [node: string, ttl: bigint]; + interface OutputObject { + node: string; + ttl: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferEvent { + type InputTuple = [node: BytesLike, owner: AddressLike]; + type OutputTuple = [node: string, owner: string]; + interface OutputObject { + node: string; + owner: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface ENS extends BaseContract { + connect(runner?: ContractRunner | null): ENS; + waitForDeployment(): Promise; + interface: ENSInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + isApprovedForAll: TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + owner: TypedContractMethod<[node: BytesLike], [string], "view">; + recordExists: TypedContractMethod<[node: BytesLike], [boolean], "view">; + resolver: TypedContractMethod<[node: BytesLike], [string], "view">; + setApprovalForAll: TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + setOwner: TypedContractMethod<[ + node: BytesLike, + owner: AddressLike + ], [ + void + ], "nonpayable">; + setRecord: TypedContractMethod<[ + node: BytesLike, + owner: AddressLike, + resolver: AddressLike, + ttl: BigNumberish + ], [ + void + ], "nonpayable">; + setResolver: TypedContractMethod<[ + node: BytesLike, + resolver: AddressLike + ], [ + void + ], "nonpayable">; + setSubnodeOwner: TypedContractMethod<[ + node: BytesLike, + label: BytesLike, + owner: AddressLike + ], [ + string + ], "nonpayable">; + setSubnodeRecord: TypedContractMethod<[ + node: BytesLike, + label: BytesLike, + owner: AddressLike, + resolver: AddressLike, + ttl: BigNumberish + ], [ + void + ], "nonpayable">; + setTTL: TypedContractMethod<[ + node: BytesLike, + ttl: BigNumberish + ], [ + void + ], "nonpayable">; + ttl: TypedContractMethod<[node: BytesLike], [bigint], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "owner"): TypedContractMethod<[node: BytesLike], [string], "view">; + getFunction(nameOrSignature: "recordExists"): TypedContractMethod<[node: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "resolver"): TypedContractMethod<[node: BytesLike], [string], "view">; + getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setOwner"): TypedContractMethod<[ + node: BytesLike, + owner: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setRecord"): TypedContractMethod<[ + node: BytesLike, + owner: AddressLike, + resolver: AddressLike, + ttl: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setResolver"): TypedContractMethod<[ + node: BytesLike, + resolver: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setSubnodeOwner"): TypedContractMethod<[ + node: BytesLike, + label: BytesLike, + owner: AddressLike + ], [ + string + ], "nonpayable">; + getFunction(nameOrSignature: "setSubnodeRecord"): TypedContractMethod<[ + node: BytesLike, + label: BytesLike, + owner: AddressLike, + resolver: AddressLike, + ttl: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setTTL"): TypedContractMethod<[ + node: BytesLike, + ttl: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "ttl"): TypedContractMethod<[node: BytesLike], [bigint], "view">; + getEvent(key: "ApprovalForAll"): TypedContractEvent; + getEvent(key: "NewOwner"): TypedContractEvent; + getEvent(key: "NewResolver"): TypedContractEvent; + getEvent(key: "NewTTL"): TypedContractEvent; + getEvent(key: "Transfer"): TypedContractEvent; + filters: { + "ApprovalForAll(address,address,bool)": TypedContractEvent; + ApprovalForAll: TypedContractEvent; + "NewOwner(bytes32,bytes32,address)": TypedContractEvent; + NewOwner: TypedContractEvent; + "NewResolver(bytes32,address)": TypedContractEvent; + NewResolver: TypedContractEvent; + "NewTTL(bytes32,uint64)": TypedContractEvent; + NewTTL: TypedContractEvent; + "Transfer(bytes32,address)": TypedContractEvent; + Transfer: TypedContractEvent; + }; +} +//# sourceMappingURL=ENS.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/ENS.d.ts.map b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/ENS.d.ts.map new file mode 100644 index 00000000..87289e2c --- /dev/null +++ b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/ENS.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ENS.d.ts","sourceRoot":"","sources":["../../../../../types/contracts/@ens/LegacyETHRegistrarController.sol/ENS.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/ENS.js b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/ENS.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/ENS.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/IERC165.d.ts b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/IERC165.d.ts new file mode 100644 index 00000000..f83ccf87 --- /dev/null +++ b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/IERC165.d.ts @@ -0,0 +1,30 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../common"; +export interface IERC165Interface extends Interface { + getFunction(nameOrSignature: "supportsInterface"): FunctionFragment; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; +} +export interface IERC165 extends BaseContract { + connect(runner?: ContractRunner | null): IERC165; + waitForDeployment(): Promise; + interface: IERC165Interface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + filters: {}; +} +//# sourceMappingURL=IERC165.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/IERC165.d.ts.map b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/IERC165.d.ts.map new file mode 100644 index 00000000..c4e4d394 --- /dev/null +++ b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/IERC165.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC165.d.ts","sourceRoot":"","sources":["../../../../../types/contracts/@ens/LegacyETHRegistrarController.sol/IERC165.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,aAAa,EACb,mBAAmB,EACpB,MAAM,iBAAiB,CAAC;AAEzB,MAAM,WAAW,gBAAiB,SAAQ,SAAS;IACjD,WAAW,CAAC,eAAe,EAAE,mBAAmB,GAAG,gBAAgB,CAAC;IAEpE,kBAAkB,CAChB,gBAAgB,EAAE,mBAAmB,EACrC,MAAM,EAAE,CAAC,SAAS,CAAC,GAClB,MAAM,CAAC;IAEV,oBAAoB,CAClB,gBAAgB,EAAE,mBAAmB,EACrC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;CACX;AAED,MAAM,WAAW,OAAQ,SAAQ,YAAY;IAC3C,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,OAAO,CAAC;IACjD,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,gBAAgB,CAAC;IAE5B,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,iBAAiB,EAAE,mBAAmB,CACpC;QAAC,WAAW,EAAE,SAAS;KAAC,EACxB;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,WAAW,CACT,eAAe,EAAE,mBAAmB,GACnC,mBAAmB,CAAC,CAAC,WAAW,EAAE,SAAS,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IAEpE,OAAO,EAAE,EAAE,CAAC;CACb"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/IERC165.js b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/IERC165.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/IERC165.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/IERC721.d.ts b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/IERC721.d.ts new file mode 100644 index 00000000..e15939c3 --- /dev/null +++ b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/IERC721.d.ts @@ -0,0 +1,200 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../common"; +export interface IERC721Interface extends Interface { + getFunction(nameOrSignature: "approve" | "balanceOf" | "getApproved" | "isApprovedForAll" | "ownerOf" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "setApprovalForAll" | "supportsInterface" | "transferFrom"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "Transfer"): EventFragment; + encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; + decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; +} +export declare namespace ApprovalEvent { + type InputTuple = [ + owner: AddressLike, + approved: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [owner: string, approved: string, tokenId: bigint]; + interface OutputObject { + owner: string; + approved: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ApprovalForAllEvent { + type InputTuple = [ + owner: AddressLike, + operator: AddressLike, + approved: boolean + ]; + type OutputTuple = [ + owner: string, + operator: string, + approved: boolean + ]; + interface OutputObject { + owner: string; + operator: string; + approved: boolean; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferEvent { + type InputTuple = [ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [from: string, to: string, tokenId: bigint]; + interface OutputObject { + from: string; + to: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface IERC721 extends BaseContract { + connect(runner?: ContractRunner | null): IERC721; + waitForDeployment(): Promise; + interface: IERC721Interface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + approve: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; + getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + isApprovedForAll: TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + setApprovalForAll: TypedContractMethod<[ + operator: AddressLike, + _approved: boolean + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + transferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "approve"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; + getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ + operator: AddressLike, + _approved: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getEvent(key: "Approval"): TypedContractEvent; + getEvent(key: "ApprovalForAll"): TypedContractEvent; + getEvent(key: "Transfer"): TypedContractEvent; + filters: { + "Approval(address,address,uint256)": TypedContractEvent; + Approval: TypedContractEvent; + "ApprovalForAll(address,address,bool)": TypedContractEvent; + ApprovalForAll: TypedContractEvent; + "Transfer(address,address,uint256)": TypedContractEvent; + Transfer: TypedContractEvent; + }; +} +//# sourceMappingURL=IERC721.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/IERC721.d.ts.map b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/IERC721.d.ts.map new file mode 100644 index 00000000..9b6075cf --- /dev/null +++ b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/IERC721.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC721.d.ts","sourceRoot":"","sources":["../../../../../types/contracts/@ens/LegacyETHRegistrarController.sol/IERC721.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/IERC721.js b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/IERC721.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/IERC721.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController.d.ts b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController.d.ts new file mode 100644 index 00000000..917f59e3 --- /dev/null +++ b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController.d.ts @@ -0,0 +1,303 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../common"; +export interface LegacyETHRegistrarControllerInterface extends Interface { + getFunction(nameOrSignature: "MIN_REGISTRATION_DURATION" | "available" | "commit" | "commitments" | "isOwner" | "makeCommitment" | "makeCommitmentWithConfig" | "maxCommitmentAge" | "minCommitmentAge" | "owner" | "register" | "registerWithConfig" | "renew" | "renounceOwnership" | "rentPrice" | "setCommitmentAges" | "setPriceOracle" | "supportsInterface" | "transferOwnership" | "valid" | "withdraw"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "NameRegistered" | "NameRenewed" | "NewPriceOracle" | "OwnershipTransferred"): EventFragment; + encodeFunctionData(functionFragment: "MIN_REGISTRATION_DURATION", values?: undefined): string; + encodeFunctionData(functionFragment: "available", values: [string]): string; + encodeFunctionData(functionFragment: "commit", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "commitments", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "isOwner", values?: undefined): string; + encodeFunctionData(functionFragment: "makeCommitment", values: [string, AddressLike, BytesLike]): string; + encodeFunctionData(functionFragment: "makeCommitmentWithConfig", values: [string, AddressLike, BytesLike, AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "maxCommitmentAge", values?: undefined): string; + encodeFunctionData(functionFragment: "minCommitmentAge", values?: undefined): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData(functionFragment: "register", values: [string, AddressLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "registerWithConfig", values: [ + string, + AddressLike, + BigNumberish, + BytesLike, + AddressLike, + AddressLike + ]): string; + encodeFunctionData(functionFragment: "renew", values: [string, BigNumberish]): string; + encodeFunctionData(functionFragment: "renounceOwnership", values?: undefined): string; + encodeFunctionData(functionFragment: "rentPrice", values: [string, BigNumberish]): string; + encodeFunctionData(functionFragment: "setCommitmentAges", values: [BigNumberish, BigNumberish]): string; + encodeFunctionData(functionFragment: "setPriceOracle", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "transferOwnership", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "valid", values: [string]): string; + encodeFunctionData(functionFragment: "withdraw", values?: undefined): string; + decodeFunctionResult(functionFragment: "MIN_REGISTRATION_DURATION", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "available", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "commit", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "commitments", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isOwner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "makeCommitment", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "makeCommitmentWithConfig", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "maxCommitmentAge", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "minCommitmentAge", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "register", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "registerWithConfig", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renew", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceOwnership", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "rentPrice", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setCommitmentAges", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setPriceOracle", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "valid", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "withdraw", data: BytesLike): Result; +} +export declare namespace NameRegisteredEvent { + type InputTuple = [ + name: string, + label: BytesLike, + owner: AddressLike, + cost: BigNumberish, + expires: BigNumberish + ]; + type OutputTuple = [ + name: string, + label: string, + owner: string, + cost: bigint, + expires: bigint + ]; + interface OutputObject { + name: string; + label: string; + owner: string; + cost: bigint; + expires: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NameRenewedEvent { + type InputTuple = [ + name: string, + label: BytesLike, + cost: BigNumberish, + expires: BigNumberish + ]; + type OutputTuple = [ + name: string, + label: string, + cost: bigint, + expires: bigint + ]; + interface OutputObject { + name: string; + label: string; + cost: bigint; + expires: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NewPriceOracleEvent { + type InputTuple = [oracle: AddressLike]; + type OutputTuple = [oracle: string]; + interface OutputObject { + oracle: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace OwnershipTransferredEvent { + type InputTuple = [previousOwner: AddressLike, newOwner: AddressLike]; + type OutputTuple = [previousOwner: string, newOwner: string]; + interface OutputObject { + previousOwner: string; + newOwner: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface LegacyETHRegistrarController extends BaseContract { + connect(runner?: ContractRunner | null): LegacyETHRegistrarController; + waitForDeployment(): Promise; + interface: LegacyETHRegistrarControllerInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + MIN_REGISTRATION_DURATION: TypedContractMethod<[], [bigint], "view">; + available: TypedContractMethod<[name: string], [boolean], "view">; + commit: TypedContractMethod<[commitment: BytesLike], [void], "nonpayable">; + commitments: TypedContractMethod<[arg0: BytesLike], [bigint], "view">; + isOwner: TypedContractMethod<[], [boolean], "view">; + makeCommitment: TypedContractMethod<[ + name: string, + owner: AddressLike, + secret: BytesLike + ], [ + string + ], "view">; + makeCommitmentWithConfig: TypedContractMethod<[ + name: string, + owner: AddressLike, + secret: BytesLike, + resolver: AddressLike, + addr: AddressLike + ], [ + string + ], "view">; + maxCommitmentAge: TypedContractMethod<[], [bigint], "view">; + minCommitmentAge: TypedContractMethod<[], [bigint], "view">; + owner: TypedContractMethod<[], [string], "view">; + register: TypedContractMethod<[ + name: string, + owner: AddressLike, + duration: BigNumberish, + secret: BytesLike + ], [ + void + ], "payable">; + registerWithConfig: TypedContractMethod<[ + name: string, + owner: AddressLike, + duration: BigNumberish, + secret: BytesLike, + resolver: AddressLike, + addr: AddressLike + ], [ + void + ], "payable">; + renew: TypedContractMethod<[ + name: string, + duration: BigNumberish + ], [ + void + ], "payable">; + renounceOwnership: TypedContractMethod<[], [void], "nonpayable">; + rentPrice: TypedContractMethod<[ + name: string, + duration: BigNumberish + ], [ + bigint + ], "view">; + setCommitmentAges: TypedContractMethod<[ + _minCommitmentAge: BigNumberish, + _maxCommitmentAge: BigNumberish + ], [ + void + ], "nonpayable">; + setPriceOracle: TypedContractMethod<[ + _prices: AddressLike + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceID: BytesLike + ], [ + boolean + ], "view">; + transferOwnership: TypedContractMethod<[ + newOwner: AddressLike + ], [ + void + ], "nonpayable">; + valid: TypedContractMethod<[name: string], [boolean], "view">; + withdraw: TypedContractMethod<[], [void], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "MIN_REGISTRATION_DURATION"): TypedContractMethod<[], [bigint], "view">; + getFunction(nameOrSignature: "available"): TypedContractMethod<[name: string], [boolean], "view">; + getFunction(nameOrSignature: "commit"): TypedContractMethod<[commitment: BytesLike], [void], "nonpayable">; + getFunction(nameOrSignature: "commitments"): TypedContractMethod<[arg0: BytesLike], [bigint], "view">; + getFunction(nameOrSignature: "isOwner"): TypedContractMethod<[], [boolean], "view">; + getFunction(nameOrSignature: "makeCommitment"): TypedContractMethod<[ + name: string, + owner: AddressLike, + secret: BytesLike + ], [ + string + ], "view">; + getFunction(nameOrSignature: "makeCommitmentWithConfig"): TypedContractMethod<[ + name: string, + owner: AddressLike, + secret: BytesLike, + resolver: AddressLike, + addr: AddressLike + ], [ + string + ], "view">; + getFunction(nameOrSignature: "maxCommitmentAge"): TypedContractMethod<[], [bigint], "view">; + getFunction(nameOrSignature: "minCommitmentAge"): TypedContractMethod<[], [bigint], "view">; + getFunction(nameOrSignature: "owner"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "register"): TypedContractMethod<[ + name: string, + owner: AddressLike, + duration: BigNumberish, + secret: BytesLike + ], [ + void + ], "payable">; + getFunction(nameOrSignature: "registerWithConfig"): TypedContractMethod<[ + name: string, + owner: AddressLike, + duration: BigNumberish, + secret: BytesLike, + resolver: AddressLike, + addr: AddressLike + ], [ + void + ], "payable">; + getFunction(nameOrSignature: "renew"): TypedContractMethod<[ + name: string, + duration: BigNumberish + ], [ + void + ], "payable">; + getFunction(nameOrSignature: "renounceOwnership"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "rentPrice"): TypedContractMethod<[ + name: string, + duration: BigNumberish + ], [ + bigint + ], "view">; + getFunction(nameOrSignature: "setCommitmentAges"): TypedContractMethod<[ + _minCommitmentAge: BigNumberish, + _maxCommitmentAge: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setPriceOracle"): TypedContractMethod<[_prices: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceID: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "transferOwnership"): TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "valid"): TypedContractMethod<[name: string], [boolean], "view">; + getFunction(nameOrSignature: "withdraw"): TypedContractMethod<[], [void], "nonpayable">; + getEvent(key: "NameRegistered"): TypedContractEvent; + getEvent(key: "NameRenewed"): TypedContractEvent; + getEvent(key: "NewPriceOracle"): TypedContractEvent; + getEvent(key: "OwnershipTransferred"): TypedContractEvent; + filters: { + "NameRegistered(string,bytes32,address,uint256,uint256)": TypedContractEvent; + NameRegistered: TypedContractEvent; + "NameRenewed(string,bytes32,uint256,uint256)": TypedContractEvent; + NameRenewed: TypedContractEvent; + "NewPriceOracle(address)": TypedContractEvent; + NewPriceOracle: TypedContractEvent; + "OwnershipTransferred(address,address)": TypedContractEvent; + OwnershipTransferred: TypedContractEvent; + }; +} +//# sourceMappingURL=LegacyETHRegistrarController.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController.d.ts.map b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController.d.ts.map new file mode 100644 index 00000000..065e1239 --- /dev/null +++ b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"LegacyETHRegistrarController.d.ts","sourceRoot":"","sources":["../../../../../types/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,aAAa,EACb,WAAW,EACX,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,mBAAmB,EACnB,aAAa,EACb,mBAAmB,EACpB,MAAM,iBAAiB,CAAC;AAEzB,MAAM,WAAW,qCAAsC,SAAQ,SAAS;IACtE,WAAW,CACT,eAAe,EACX,2BAA2B,GAC3B,WAAW,GACX,QAAQ,GACR,aAAa,GACb,SAAS,GACT,gBAAgB,GAChB,0BAA0B,GAC1B,kBAAkB,GAClB,kBAAkB,GAClB,OAAO,GACP,UAAU,GACV,oBAAoB,GACpB,OAAO,GACP,mBAAmB,GACnB,WAAW,GACX,mBAAmB,GACnB,gBAAgB,GAChB,mBAAmB,GACnB,mBAAmB,GACnB,OAAO,GACP,UAAU,GACb,gBAAgB,CAAC;IAEpB,QAAQ,CACN,sBAAsB,EAClB,gBAAgB,GAChB,aAAa,GACb,gBAAgB,GAChB,sBAAsB,GACzB,aAAa,CAAC;IAEjB,kBAAkB,CAChB,gBAAgB,EAAE,2BAA2B,EAC7C,MAAM,CAAC,EAAE,SAAS,GACjB,MAAM,CAAC;IACV,kBAAkB,CAAC,gBAAgB,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;IAC5E,kBAAkB,CAAC,gBAAgB,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC;IAC5E,kBAAkB,CAChB,gBAAgB,EAAE,aAAa,EAC/B,MAAM,EAAE,CAAC,SAAS,CAAC,GAClB,MAAM,CAAC;IACV,kBAAkB,CAAC,gBAAgB,EAAE,SAAS,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IAC5E,kBAAkB,CAChB,gBAAgB,EAAE,gBAAgB,EAClC,MAAM,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,SAAS,CAAC,GACvC,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,0BAA0B,EAC5C,MAAM,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW,CAAC,GACjE,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,kBAAkB,EACpC,MAAM,CAAC,EAAE,SAAS,GACjB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,kBAAkB,EACpC,MAAM,CAAC,EAAE,SAAS,GACjB,MAAM,CAAC;IACV,kBAAkB,CAAC,gBAAgB,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IAC1E,kBAAkB,CAChB,gBAAgB,EAAE,UAAU,EAC5B,MAAM,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,SAAS,CAAC,GACrD,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,oBAAoB,EACtC,MAAM,EAAE;QACN,MAAM;QACN,WAAW;QACX,YAAY;QACZ,SAAS;QACT,WAAW;QACX,WAAW;KACZ,GACA,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,OAAO,EACzB,MAAM,EAAE,CAAC,MAAM,EAAE,YAAY,CAAC,GAC7B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,mBAAmB,EACrC,MAAM,CAAC,EAAE,SAAS,GACjB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,WAAW,EAC7B,MAAM,EAAE,CAAC,MAAM,EAAE,YAAY,CAAC,GAC7B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,mBAAmB,EACrC,MAAM,EAAE,CAAC,YAAY,EAAE,YAAY,CAAC,GACnC,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,gBAAgB,EAClC,MAAM,EAAE,CAAC,WAAW,CAAC,GACpB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,mBAAmB,EACrC,MAAM,EAAE,CAAC,SAAS,CAAC,GAClB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,mBAAmB,EACrC,MAAM,EAAE,CAAC,WAAW,CAAC,GACpB,MAAM,CAAC;IACV,kBAAkB,CAAC,gBAAgB,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;IACxE,kBAAkB,CAAC,gBAAgB,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IAE7E,oBAAoB,CAClB,gBAAgB,EAAE,2BAA2B,EAC7C,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC7E,oBAAoB,CAAC,gBAAgB,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC1E,oBAAoB,CAClB,gBAAgB,EAAE,aAAa,EAC/B,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,oBAAoB,CAClB,gBAAgB,EAAE,gBAAgB,EAClC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,0BAA0B,EAC5C,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,kBAAkB,EACpC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,kBAAkB,EACpC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IACzE,oBAAoB,CAAC,gBAAgB,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC5E,oBAAoB,CAClB,gBAAgB,EAAE,oBAAoB,EACtC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IACzE,oBAAoB,CAClB,gBAAgB,EAAE,mBAAmB,EACrC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC7E,oBAAoB,CAClB,gBAAgB,EAAE,mBAAmB,EACrC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,gBAAgB,EAClC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,mBAAmB,EACrC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,mBAAmB,EACrC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IACzE,oBAAoB,CAAC,gBAAgB,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;CAC7E;AAED,yBAAiB,mBAAmB,CAAC;IACnC,KAAY,UAAU,GAAG;QACvB,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,SAAS;QAChB,KAAK,EAAE,WAAW;QAClB,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,YAAY;KACtB,CAAC;IACF,KAAY,WAAW,GAAG;QACxB,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,MAAM;QACb,KAAK,EAAE,MAAM;QACb,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,MAAM;KAChB,CAAC;IACF,UAAiB,YAAY;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;KACjB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,gBAAgB,CAAC;IAChC,KAAY,UAAU,GAAG;QACvB,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,SAAS;QAChB,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,YAAY;KACtB,CAAC;IACF,KAAY,WAAW,GAAG;QACxB,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,MAAM;QACb,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,MAAM;KAChB,CAAC;IACF,UAAiB,YAAY;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;KACjB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,mBAAmB,CAAC;IACnC,KAAY,UAAU,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAC/C,KAAY,WAAW,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC3C,UAAiB,YAAY;QAC3B,MAAM,EAAE,MAAM,CAAC;KAChB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,yBAAyB,CAAC;IACzC,KAAY,UAAU,GAAG,CAAC,aAAa,EAAE,WAAW,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;IAC7E,KAAY,WAAW,GAAG,CAAC,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;IACpE,UAAiB,YAAY;QAC3B,aAAa,EAAE,MAAM,CAAC;QACtB,QAAQ,EAAE,MAAM,CAAC;KAClB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,MAAM,WAAW,4BAA6B,SAAQ,YAAY;IAChE,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,4BAA4B,CAAC;IACtE,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,qCAAqC,CAAC;IAEjD,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,yBAAyB,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAErE,SAAS,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IAElE,MAAM,EAAE,mBAAmB,CAAC,CAAC,UAAU,EAAE,SAAS,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IAE3E,WAAW,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEtE,OAAO,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IAEpD,cAAc,EAAE,mBAAmB,CACjC;QAAC,IAAI,EAAE,MAAM;QAAE,KAAK,EAAE,WAAW;QAAE,MAAM,EAAE,SAAS;KAAC,EACrD;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IAEF,wBAAwB,EAAE,mBAAmB,CAC3C;QACE,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,WAAW;QAClB,MAAM,EAAE,SAAS;QACjB,QAAQ,EAAE,WAAW;QACrB,IAAI,EAAE,WAAW;KAClB,EACD;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IAEF,gBAAgB,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAE5D,gBAAgB,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAE5D,KAAK,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEjD,QAAQ,EAAE,mBAAmB,CAC3B;QACE,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,WAAW;QAClB,QAAQ,EAAE,YAAY;QACtB,MAAM,EAAE,SAAS;KAClB,EACD;QAAC,IAAI;KAAC,EACN,SAAS,CACV,CAAC;IAEF,kBAAkB,EAAE,mBAAmB,CACrC;QACE,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,WAAW;QAClB,QAAQ,EAAE,YAAY;QACtB,MAAM,EAAE,SAAS;QACjB,QAAQ,EAAE,WAAW;QACrB,IAAI,EAAE,WAAW;KAClB,EACD;QAAC,IAAI;KAAC,EACN,SAAS,CACV,CAAC;IAEF,KAAK,EAAE,mBAAmB,CACxB;QAAC,IAAI,EAAE,MAAM;QAAE,QAAQ,EAAE,YAAY;KAAC,EACtC;QAAC,IAAI;KAAC,EACN,SAAS,CACV,CAAC;IAEF,iBAAiB,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IAEjE,SAAS,EAAE,mBAAmB,CAC5B;QAAC,IAAI,EAAE,MAAM;QAAE,QAAQ,EAAE,YAAY;KAAC,EACtC;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IAEF,iBAAiB,EAAE,mBAAmB,CACpC;QAAC,iBAAiB,EAAE,YAAY;QAAE,iBAAiB,EAAE,YAAY;KAAC,EAClE;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,cAAc,EAAE,mBAAmB,CACjC;QAAC,OAAO,EAAE,WAAW;KAAC,EACtB;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,iBAAiB,EAAE,mBAAmB,CACpC;QAAC,WAAW,EAAE,SAAS;KAAC,EACxB;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,iBAAiB,EAAE,mBAAmB,CACpC;QAAC,QAAQ,EAAE,WAAW;KAAC,EACvB;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,KAAK,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IAE9D,QAAQ,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IAExD,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,WAAW,CACT,eAAe,EAAE,2BAA2B,GAC3C,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC7C,WAAW,CACT,eAAe,EAAE,WAAW,GAC3B,mBAAmB,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IAC1D,WAAW,CACT,eAAe,EAAE,QAAQ,GACxB,mBAAmB,CAAC,CAAC,UAAU,EAAE,SAAS,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IACtE,WAAW,CACT,eAAe,EAAE,aAAa,GAC7B,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC5D,WAAW,CACT,eAAe,EAAE,SAAS,GACzB,mBAAmB,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IAC9C,WAAW,CACT,eAAe,EAAE,gBAAgB,GAChC,mBAAmB,CACpB;QAAC,IAAI,EAAE,MAAM;QAAE,KAAK,EAAE,WAAW;QAAE,MAAM,EAAE,SAAS;KAAC,EACrD;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,0BAA0B,GAC1C,mBAAmB,CACpB;QACE,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,WAAW;QAClB,MAAM,EAAE,SAAS;QACjB,QAAQ,EAAE,WAAW;QACrB,IAAI,EAAE,WAAW;KAClB,EACD;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,kBAAkB,GAClC,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC7C,WAAW,CACT,eAAe,EAAE,kBAAkB,GAClC,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC7C,WAAW,CACT,eAAe,EAAE,OAAO,GACvB,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC7C,WAAW,CACT,eAAe,EAAE,UAAU,GAC1B,mBAAmB,CACpB;QACE,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,WAAW;QAClB,QAAQ,EAAE,YAAY;QACtB,MAAM,EAAE,SAAS;KAClB,EACD;QAAC,IAAI;KAAC,EACN,SAAS,CACV,CAAC;IACF,WAAW,CACT,eAAe,EAAE,oBAAoB,GACpC,mBAAmB,CACpB;QACE,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,WAAW;QAClB,QAAQ,EAAE,YAAY;QACtB,MAAM,EAAE,SAAS;QACjB,QAAQ,EAAE,WAAW;QACrB,IAAI,EAAE,WAAW;KAClB,EACD;QAAC,IAAI;KAAC,EACN,SAAS,CACV,CAAC;IACF,WAAW,CACT,eAAe,EAAE,OAAO,GACvB,mBAAmB,CACpB;QAAC,IAAI,EAAE,MAAM;QAAE,QAAQ,EAAE,YAAY;KAAC,EACtC;QAAC,IAAI;KAAC,EACN,SAAS,CACV,CAAC;IACF,WAAW,CACT,eAAe,EAAE,mBAAmB,GACnC,mBAAmB,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IACjD,WAAW,CACT,eAAe,EAAE,WAAW,GAC3B,mBAAmB,CACpB;QAAC,IAAI,EAAE,MAAM;QAAE,QAAQ,EAAE,YAAY;KAAC,EACtC;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,mBAAmB,GACnC,mBAAmB,CACpB;QAAC,iBAAiB,EAAE,YAAY;QAAE,iBAAiB,EAAE,YAAY;KAAC,EAClE;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,gBAAgB,GAChC,mBAAmB,CAAC,CAAC,OAAO,EAAE,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IACrE,WAAW,CACT,eAAe,EAAE,mBAAmB,GACnC,mBAAmB,CAAC,CAAC,WAAW,EAAE,SAAS,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IACpE,WAAW,CACT,eAAe,EAAE,mBAAmB,GACnC,mBAAmB,CAAC,CAAC,QAAQ,EAAE,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IACtE,WAAW,CACT,eAAe,EAAE,OAAO,GACvB,mBAAmB,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IAC1D,WAAW,CACT,eAAe,EAAE,UAAU,GAC1B,mBAAmB,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IAEjD,QAAQ,CACN,GAAG,EAAE,gBAAgB,GACpB,kBAAkB,CACnB,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,aAAa,GACjB,kBAAkB,CACnB,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,gBAAgB,GACpB,kBAAkB,CACnB,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,sBAAsB,GAC1B,kBAAkB,CACnB,yBAAyB,CAAC,UAAU,EACpC,yBAAyB,CAAC,WAAW,EACrC,yBAAyB,CAAC,YAAY,CACvC,CAAC;IAEF,OAAO,EAAE;QACP,wDAAwD,EAAE,kBAAkB,CAC1E,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;QACF,cAAc,EAAE,kBAAkB,CAChC,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;QAEF,6CAA6C,EAAE,kBAAkB,CAC/D,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QACF,WAAW,EAAE,kBAAkB,CAC7B,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QAEF,yBAAyB,EAAE,kBAAkB,CAC3C,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;QACF,cAAc,EAAE,kBAAkB,CAChC,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;QAEF,uCAAuC,EAAE,kBAAkB,CACzD,yBAAyB,CAAC,UAAU,EACpC,yBAAyB,CAAC,WAAW,EACrC,yBAAyB,CAAC,YAAY,CACvC,CAAC;QACF,oBAAoB,EAAE,kBAAkB,CACtC,yBAAyB,CAAC,UAAU,EACpC,yBAAyB,CAAC,WAAW,EACrC,yBAAyB,CAAC,YAAY,CACvC,CAAC;KACH,CAAC;CACH"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController.js b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/Ownable.d.ts b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/Ownable.d.ts new file mode 100644 index 00000000..dd19eb44 --- /dev/null +++ b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/Ownable.d.ts @@ -0,0 +1,59 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../common"; +export interface OwnableInterface extends Interface { + getFunction(nameOrSignature: "isOwner" | "owner" | "renounceOwnership" | "transferOwnership"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "OwnershipTransferred"): EventFragment; + encodeFunctionData(functionFragment: "isOwner", values?: undefined): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData(functionFragment: "renounceOwnership", values?: undefined): string; + encodeFunctionData(functionFragment: "transferOwnership", values: [AddressLike]): string; + decodeFunctionResult(functionFragment: "isOwner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceOwnership", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result; +} +export declare namespace OwnershipTransferredEvent { + type InputTuple = [previousOwner: AddressLike, newOwner: AddressLike]; + type OutputTuple = [previousOwner: string, newOwner: string]; + interface OutputObject { + previousOwner: string; + newOwner: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface Ownable extends BaseContract { + connect(runner?: ContractRunner | null): Ownable; + waitForDeployment(): Promise; + interface: OwnableInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + isOwner: TypedContractMethod<[], [boolean], "view">; + owner: TypedContractMethod<[], [string], "view">; + renounceOwnership: TypedContractMethod<[], [void], "nonpayable">; + transferOwnership: TypedContractMethod<[ + newOwner: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "isOwner"): TypedContractMethod<[], [boolean], "view">; + getFunction(nameOrSignature: "owner"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "renounceOwnership"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "transferOwnership"): TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">; + getEvent(key: "OwnershipTransferred"): TypedContractEvent; + filters: { + "OwnershipTransferred(address,address)": TypedContractEvent; + OwnershipTransferred: TypedContractEvent; + }; +} +//# sourceMappingURL=Ownable.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/Ownable.d.ts.map b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/Ownable.d.ts.map new file mode 100644 index 00000000..57bca93c --- /dev/null +++ b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/Ownable.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"Ownable.d.ts","sourceRoot":"","sources":["../../../../../types/contracts/@ens/LegacyETHRegistrarController.sol/Ownable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/Ownable.js b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/Ownable.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/Ownable.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle.d.ts b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle.d.ts new file mode 100644 index 00000000..c50b6966 --- /dev/null +++ b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle.d.ts @@ -0,0 +1,38 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../common"; +export interface PriceOracleInterface extends Interface { + getFunction(nameOrSignature: "price"): FunctionFragment; + encodeFunctionData(functionFragment: "price", values: [string, BigNumberish, BigNumberish]): string; + decodeFunctionResult(functionFragment: "price", data: BytesLike): Result; +} +export interface PriceOracle extends BaseContract { + connect(runner?: ContractRunner | null): PriceOracle; + waitForDeployment(): Promise; + interface: PriceOracleInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + price: TypedContractMethod<[ + name: string, + expires: BigNumberish, + duration: BigNumberish + ], [ + bigint + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "price"): TypedContractMethod<[ + name: string, + expires: BigNumberish, + duration: BigNumberish + ], [ + bigint + ], "view">; + filters: {}; +} +//# sourceMappingURL=PriceOracle.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle.d.ts.map b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle.d.ts.map new file mode 100644 index 00000000..cbd55ed9 --- /dev/null +++ b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"PriceOracle.d.ts","sourceRoot":"","sources":["../../../../../types/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle.js b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/Resolver.d.ts b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/Resolver.d.ts new file mode 100644 index 00000000..531f6fe3 --- /dev/null +++ b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/Resolver.d.ts @@ -0,0 +1,415 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../common"; +export interface ResolverInterface extends Interface { + getFunction(nameOrSignature: "ABI" | "addr(bytes32)" | "addr(bytes32,uint256)" | "content" | "contenthash" | "dnsrr" | "interfaceImplementer" | "multihash" | "name" | "pubkey" | "setABI" | "setAddr(bytes32,uint256,bytes)" | "setAddr(bytes32,address)" | "setContent" | "setContenthash" | "setDnsrr" | "setInterface" | "setMultihash" | "setName" | "setPubkey" | "setText" | "supportsInterface" | "text"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "ABIChanged" | "AddrChanged" | "AddressChanged" | "ContentChanged" | "ContenthashChanged" | "NameChanged" | "PubkeyChanged" | "TextChanged"): EventFragment; + encodeFunctionData(functionFragment: "ABI", values: [BytesLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "addr(bytes32)", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "addr(bytes32,uint256)", values: [BytesLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "content", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "contenthash", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "dnsrr", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "interfaceImplementer", values: [BytesLike, BytesLike]): string; + encodeFunctionData(functionFragment: "multihash", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "name", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "pubkey", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "setABI", values: [BytesLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "setAddr(bytes32,uint256,bytes)", values: [BytesLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "setAddr(bytes32,address)", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "setContent", values: [BytesLike, BytesLike]): string; + encodeFunctionData(functionFragment: "setContenthash", values: [BytesLike, BytesLike]): string; + encodeFunctionData(functionFragment: "setDnsrr", values: [BytesLike, BytesLike]): string; + encodeFunctionData(functionFragment: "setInterface", values: [BytesLike, BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "setMultihash", values: [BytesLike, BytesLike]): string; + encodeFunctionData(functionFragment: "setName", values: [BytesLike, string]): string; + encodeFunctionData(functionFragment: "setPubkey", values: [BytesLike, BytesLike, BytesLike]): string; + encodeFunctionData(functionFragment: "setText", values: [BytesLike, string, string]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "text", values: [BytesLike, string]): string; + decodeFunctionResult(functionFragment: "ABI", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "addr(bytes32)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "addr(bytes32,uint256)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "content", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "contenthash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "dnsrr", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "interfaceImplementer", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "multihash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "pubkey", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setABI", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setAddr(bytes32,uint256,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setAddr(bytes32,address)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setContent", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setContenthash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setDnsrr", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setMultihash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setName", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setPubkey", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setText", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "text", data: BytesLike): Result; +} +export declare namespace ABIChangedEvent { + type InputTuple = [node: BytesLike, contentType: BigNumberish]; + type OutputTuple = [node: string, contentType: bigint]; + interface OutputObject { + node: string; + contentType: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace AddrChangedEvent { + type InputTuple = [node: BytesLike, a: AddressLike]; + type OutputTuple = [node: string, a: string]; + interface OutputObject { + node: string; + a: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace AddressChangedEvent { + type InputTuple = [ + node: BytesLike, + coinType: BigNumberish, + newAddress: BytesLike + ]; + type OutputTuple = [ + node: string, + coinType: bigint, + newAddress: string + ]; + interface OutputObject { + node: string; + coinType: bigint; + newAddress: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ContentChangedEvent { + type InputTuple = [node: BytesLike, hash: BytesLike]; + type OutputTuple = [node: string, hash: string]; + interface OutputObject { + node: string; + hash: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ContenthashChangedEvent { + type InputTuple = [node: BytesLike, hash: BytesLike]; + type OutputTuple = [node: string, hash: string]; + interface OutputObject { + node: string; + hash: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NameChangedEvent { + type InputTuple = [node: BytesLike, name: string]; + type OutputTuple = [node: string, name: string]; + interface OutputObject { + node: string; + name: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace PubkeyChangedEvent { + type InputTuple = [node: BytesLike, x: BytesLike, y: BytesLike]; + type OutputTuple = [node: string, x: string, y: string]; + interface OutputObject { + node: string; + x: string; + y: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TextChangedEvent { + type InputTuple = [node: BytesLike, indexedKey: string, key: string]; + type OutputTuple = [node: string, indexedKey: string, key: string]; + interface OutputObject { + node: string; + indexedKey: string; + key: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface Resolver extends BaseContract { + connect(runner?: ContractRunner | null): Resolver; + waitForDeployment(): Promise; + interface: ResolverInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + ABI: TypedContractMethod<[ + node: BytesLike, + contentTypes: BigNumberish + ], [ + [bigint, string] + ], "view">; + "addr(bytes32)": TypedContractMethod<[node: BytesLike], [string], "view">; + "addr(bytes32,uint256)": TypedContractMethod<[ + node: BytesLike, + coinType: BigNumberish + ], [ + string + ], "view">; + content: TypedContractMethod<[node: BytesLike], [string], "view">; + contenthash: TypedContractMethod<[node: BytesLike], [string], "view">; + dnsrr: TypedContractMethod<[node: BytesLike], [string], "view">; + interfaceImplementer: TypedContractMethod<[ + node: BytesLike, + interfaceID: BytesLike + ], [ + string + ], "view">; + multihash: TypedContractMethod<[node: BytesLike], [string], "view">; + name: TypedContractMethod<[node: BytesLike], [string], "view">; + pubkey: TypedContractMethod<[ + node: BytesLike + ], [ + [string, string] & { + x: string; + y: string; + } + ], "view">; + setABI: TypedContractMethod<[ + node: BytesLike, + contentType: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + "setAddr(bytes32,uint256,bytes)": TypedContractMethod<[ + node: BytesLike, + coinType: BigNumberish, + a: BytesLike + ], [ + void + ], "nonpayable">; + "setAddr(bytes32,address)": TypedContractMethod<[ + node: BytesLike, + addr: AddressLike + ], [ + void + ], "nonpayable">; + setContent: TypedContractMethod<[ + node: BytesLike, + hash: BytesLike + ], [ + void + ], "nonpayable">; + setContenthash: TypedContractMethod<[ + node: BytesLike, + hash: BytesLike + ], [ + void + ], "nonpayable">; + setDnsrr: TypedContractMethod<[ + node: BytesLike, + data: BytesLike + ], [ + void + ], "nonpayable">; + setInterface: TypedContractMethod<[ + node: BytesLike, + interfaceID: BytesLike, + implementer: AddressLike + ], [ + void + ], "nonpayable">; + setMultihash: TypedContractMethod<[ + node: BytesLike, + hash: BytesLike + ], [ + void + ], "nonpayable">; + setName: TypedContractMethod<[ + node: BytesLike, + _name: string + ], [ + void + ], "nonpayable">; + setPubkey: TypedContractMethod<[ + node: BytesLike, + x: BytesLike, + y: BytesLike + ], [ + void + ], "nonpayable">; + setText: TypedContractMethod<[ + node: BytesLike, + key: string, + value: string + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceID: BytesLike + ], [ + boolean + ], "view">; + text: TypedContractMethod<[node: BytesLike, key: string], [string], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "ABI"): TypedContractMethod<[ + node: BytesLike, + contentTypes: BigNumberish + ], [ + [bigint, string] + ], "view">; + getFunction(nameOrSignature: "addr(bytes32)"): TypedContractMethod<[node: BytesLike], [string], "view">; + getFunction(nameOrSignature: "addr(bytes32,uint256)"): TypedContractMethod<[ + node: BytesLike, + coinType: BigNumberish + ], [ + string + ], "view">; + getFunction(nameOrSignature: "content"): TypedContractMethod<[node: BytesLike], [string], "view">; + getFunction(nameOrSignature: "contenthash"): TypedContractMethod<[node: BytesLike], [string], "view">; + getFunction(nameOrSignature: "dnsrr"): TypedContractMethod<[node: BytesLike], [string], "view">; + getFunction(nameOrSignature: "interfaceImplementer"): TypedContractMethod<[ + node: BytesLike, + interfaceID: BytesLike + ], [ + string + ], "view">; + getFunction(nameOrSignature: "multihash"): TypedContractMethod<[node: BytesLike], [string], "view">; + getFunction(nameOrSignature: "name"): TypedContractMethod<[node: BytesLike], [string], "view">; + getFunction(nameOrSignature: "pubkey"): TypedContractMethod<[ + node: BytesLike + ], [ + [string, string] & { + x: string; + y: string; + } + ], "view">; + getFunction(nameOrSignature: "setABI"): TypedContractMethod<[ + node: BytesLike, + contentType: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setAddr(bytes32,uint256,bytes)"): TypedContractMethod<[ + node: BytesLike, + coinType: BigNumberish, + a: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setAddr(bytes32,address)"): TypedContractMethod<[ + node: BytesLike, + addr: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setContent"): TypedContractMethod<[ + node: BytesLike, + hash: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setContenthash"): TypedContractMethod<[ + node: BytesLike, + hash: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setDnsrr"): TypedContractMethod<[ + node: BytesLike, + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setInterface"): TypedContractMethod<[ + node: BytesLike, + interfaceID: BytesLike, + implementer: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setMultihash"): TypedContractMethod<[ + node: BytesLike, + hash: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setName"): TypedContractMethod<[ + node: BytesLike, + _name: string + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setPubkey"): TypedContractMethod<[ + node: BytesLike, + x: BytesLike, + y: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setText"): TypedContractMethod<[ + node: BytesLike, + key: string, + value: string + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceID: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "text"): TypedContractMethod<[node: BytesLike, key: string], [string], "view">; + getEvent(key: "ABIChanged"): TypedContractEvent; + getEvent(key: "AddrChanged"): TypedContractEvent; + getEvent(key: "AddressChanged"): TypedContractEvent; + getEvent(key: "ContentChanged"): TypedContractEvent; + getEvent(key: "ContenthashChanged"): TypedContractEvent; + getEvent(key: "NameChanged"): TypedContractEvent; + getEvent(key: "PubkeyChanged"): TypedContractEvent; + getEvent(key: "TextChanged"): TypedContractEvent; + filters: { + "ABIChanged(bytes32,uint256)": TypedContractEvent; + ABIChanged: TypedContractEvent; + "AddrChanged(bytes32,address)": TypedContractEvent; + AddrChanged: TypedContractEvent; + "AddressChanged(bytes32,uint256,bytes)": TypedContractEvent; + AddressChanged: TypedContractEvent; + "ContentChanged(bytes32,bytes32)": TypedContractEvent; + ContentChanged: TypedContractEvent; + "ContenthashChanged(bytes32,bytes)": TypedContractEvent; + ContenthashChanged: TypedContractEvent; + "NameChanged(bytes32,string)": TypedContractEvent; + NameChanged: TypedContractEvent; + "PubkeyChanged(bytes32,bytes32,bytes32)": TypedContractEvent; + PubkeyChanged: TypedContractEvent; + "TextChanged(bytes32,string,string)": TypedContractEvent; + TextChanged: TypedContractEvent; + }; +} +//# sourceMappingURL=Resolver.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/Resolver.d.ts.map b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/Resolver.d.ts.map new file mode 100644 index 00000000..3e39b499 --- /dev/null +++ b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/Resolver.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"Resolver.d.ts","sourceRoot":"","sources":["../../../../../types/contracts/@ens/LegacyETHRegistrarController.sol/Resolver.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/Resolver.js b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/Resolver.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/Resolver.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/index.d.ts b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/index.d.ts new file mode 100644 index 00000000..4d05cbcd --- /dev/null +++ b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/index.d.ts @@ -0,0 +1,9 @@ +export type { BaseRegistrar } from "./BaseRegistrar"; +export type { ENS } from "./ENS"; +export type { IERC165 } from "./IERC165"; +export type { IERC721 } from "./IERC721"; +export type { LegacyETHRegistrarController } from "./LegacyETHRegistrarController"; +export type { Ownable } from "./Ownable"; +export type { PriceOracle } from "./PriceOracle"; +export type { Resolver } from "./Resolver"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/index.d.ts.map b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/index.d.ts.map new file mode 100644 index 00000000..85afe635 --- /dev/null +++ b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/contracts/@ens/LegacyETHRegistrarController.sol/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,YAAY,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AACjC,YAAY,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,YAAY,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,YAAY,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AACnF,YAAY,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,YAAY,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/index.js b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/dnssec/DNSRegistrar.d.ts b/dist/types/contracts/@ens/dnssec/DNSRegistrar.d.ts new file mode 100644 index 00000000..ca4d5cca --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/DNSRegistrar.d.ts @@ -0,0 +1,170 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../common"; +export declare namespace DNSSEC { + type RRSetWithSignatureStruct = { + rrset: BytesLike; + sig: BytesLike; + }; + type RRSetWithSignatureStructOutput = [rrset: string, sig: string] & { + rrset: string; + sig: string; + }; +} +export interface DNSRegistrarInterface extends Interface { + getFunction(nameOrSignature: "claim" | "ens" | "oracle" | "proveAndClaim" | "proveAndClaimWithResolver" | "setOracle" | "setPublicSuffixList" | "suffixes" | "supportsInterface"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Claim" | "NewOracle" | "NewPublicSuffixList"): EventFragment; + encodeFunctionData(functionFragment: "claim", values: [BytesLike, BytesLike]): string; + encodeFunctionData(functionFragment: "ens", values?: undefined): string; + encodeFunctionData(functionFragment: "oracle", values?: undefined): string; + encodeFunctionData(functionFragment: "proveAndClaim", values: [BytesLike, DNSSEC.RRSetWithSignatureStruct[], BytesLike]): string; + encodeFunctionData(functionFragment: "proveAndClaimWithResolver", values: [ + BytesLike, + DNSSEC.RRSetWithSignatureStruct[], + BytesLike, + AddressLike, + AddressLike + ]): string; + encodeFunctionData(functionFragment: "setOracle", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "setPublicSuffixList", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "suffixes", values?: undefined): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + decodeFunctionResult(functionFragment: "claim", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ens", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "oracle", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "proveAndClaim", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "proveAndClaimWithResolver", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setOracle", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setPublicSuffixList", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "suffixes", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; +} +export declare namespace ClaimEvent { + type InputTuple = [ + node: BytesLike, + owner: AddressLike, + dnsname: BytesLike + ]; + type OutputTuple = [node: string, owner: string, dnsname: string]; + interface OutputObject { + node: string; + owner: string; + dnsname: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NewOracleEvent { + type InputTuple = [oracle: AddressLike]; + type OutputTuple = [oracle: string]; + interface OutputObject { + oracle: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NewPublicSuffixListEvent { + type InputTuple = [suffixes: AddressLike]; + type OutputTuple = [suffixes: string]; + interface OutputObject { + suffixes: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface DNSRegistrar extends BaseContract { + connect(runner?: ContractRunner | null): DNSRegistrar; + waitForDeployment(): Promise; + interface: DNSRegistrarInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + claim: TypedContractMethod<[ + name: BytesLike, + proof: BytesLike + ], [ + void + ], "nonpayable">; + ens: TypedContractMethod<[], [string], "view">; + oracle: TypedContractMethod<[], [string], "view">; + proveAndClaim: TypedContractMethod<[ + name: BytesLike, + input: DNSSEC.RRSetWithSignatureStruct[], + proof: BytesLike + ], [ + void + ], "nonpayable">; + proveAndClaimWithResolver: TypedContractMethod<[ + name: BytesLike, + input: DNSSEC.RRSetWithSignatureStruct[], + proof: BytesLike, + resolver: AddressLike, + addr: AddressLike + ], [ + void + ], "nonpayable">; + setOracle: TypedContractMethod<[_dnssec: AddressLike], [void], "nonpayable">; + setPublicSuffixList: TypedContractMethod<[ + _suffixes: AddressLike + ], [ + void + ], "nonpayable">; + suffixes: TypedContractMethod<[], [string], "view">; + supportsInterface: TypedContractMethod<[ + interfaceID: BytesLike + ], [ + boolean + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "claim"): TypedContractMethod<[ + name: BytesLike, + proof: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "ens"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "oracle"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "proveAndClaim"): TypedContractMethod<[ + name: BytesLike, + input: DNSSEC.RRSetWithSignatureStruct[], + proof: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "proveAndClaimWithResolver"): TypedContractMethod<[ + name: BytesLike, + input: DNSSEC.RRSetWithSignatureStruct[], + proof: BytesLike, + resolver: AddressLike, + addr: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setOracle"): TypedContractMethod<[_dnssec: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "setPublicSuffixList"): TypedContractMethod<[_suffixes: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "suffixes"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceID: BytesLike], [boolean], "view">; + getEvent(key: "Claim"): TypedContractEvent; + getEvent(key: "NewOracle"): TypedContractEvent; + getEvent(key: "NewPublicSuffixList"): TypedContractEvent; + filters: { + "Claim(bytes32,address,bytes)": TypedContractEvent; + Claim: TypedContractEvent; + "NewOracle(address)": TypedContractEvent; + NewOracle: TypedContractEvent; + "NewPublicSuffixList(address)": TypedContractEvent; + NewPublicSuffixList: TypedContractEvent; + }; +} +//# sourceMappingURL=DNSRegistrar.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/DNSRegistrar.d.ts.map b/dist/types/contracts/@ens/dnssec/DNSRegistrar.d.ts.map new file mode 100644 index 00000000..e3f26c7a --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/DNSRegistrar.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"DNSRegistrar.d.ts","sourceRoot":"","sources":["../../../../../types/contracts/@ens/dnssec/DNSRegistrar.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/DNSRegistrar.js b/dist/types/contracts/@ens/dnssec/DNSRegistrar.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/DNSRegistrar.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/dnssec/DNSSEC.d.ts b/dist/types/contracts/@ens/dnssec/DNSSEC.d.ts new file mode 100644 index 00000000..c3006480 --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/DNSSEC.d.ts @@ -0,0 +1,189 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../common"; +export declare namespace DNSSEC { + type RRSetWithSignatureStruct = { + rrset: BytesLike; + sig: BytesLike; + }; + type RRSetWithSignatureStructOutput = [rrset: string, sig: string] & { + rrset: string; + sig: string; + }; +} +export interface DNSSECInterface extends Interface { + getFunction(nameOrSignature: "anchors" | "deleteRRSet" | "deleteRRSetNSEC3" | "rrdata" | "submitRRSet" | "submitRRSets"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "AlgorithmUpdated" | "DigestUpdated" | "NSEC3DigestUpdated" | "RRSetUpdated"): EventFragment; + encodeFunctionData(functionFragment: "anchors", values?: undefined): string; + encodeFunctionData(functionFragment: "deleteRRSet", values: [ + BigNumberish, + BytesLike, + DNSSEC.RRSetWithSignatureStruct, + BytesLike + ]): string; + encodeFunctionData(functionFragment: "deleteRRSetNSEC3", values: [ + BigNumberish, + BytesLike, + DNSSEC.RRSetWithSignatureStruct, + DNSSEC.RRSetWithSignatureStruct, + BytesLike + ]): string; + encodeFunctionData(functionFragment: "rrdata", values: [BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "submitRRSet", values: [DNSSEC.RRSetWithSignatureStruct, BytesLike]): string; + encodeFunctionData(functionFragment: "submitRRSets", values: [DNSSEC.RRSetWithSignatureStruct[], BytesLike]): string; + decodeFunctionResult(functionFragment: "anchors", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "deleteRRSet", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "deleteRRSetNSEC3", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "rrdata", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "submitRRSet", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "submitRRSets", data: BytesLike): Result; +} +export declare namespace AlgorithmUpdatedEvent { + type InputTuple = [id: BigNumberish, addr: AddressLike]; + type OutputTuple = [id: bigint, addr: string]; + interface OutputObject { + id: bigint; + addr: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace DigestUpdatedEvent { + type InputTuple = [id: BigNumberish, addr: AddressLike]; + type OutputTuple = [id: bigint, addr: string]; + interface OutputObject { + id: bigint; + addr: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NSEC3DigestUpdatedEvent { + type InputTuple = [id: BigNumberish, addr: AddressLike]; + type OutputTuple = [id: bigint, addr: string]; + interface OutputObject { + id: bigint; + addr: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RRSetUpdatedEvent { + type InputTuple = [name: BytesLike, rrset: BytesLike]; + type OutputTuple = [name: string, rrset: string]; + interface OutputObject { + name: string; + rrset: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface DNSSEC extends BaseContract { + connect(runner?: ContractRunner | null): DNSSEC; + waitForDeployment(): Promise; + interface: DNSSECInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + anchors: TypedContractMethod<[], [string], "view">; + deleteRRSet: TypedContractMethod<[ + deleteType: BigNumberish, + deleteName: BytesLike, + nsec: DNSSEC.RRSetWithSignatureStruct, + proof: BytesLike + ], [ + void + ], "nonpayable">; + deleteRRSetNSEC3: TypedContractMethod<[ + deleteType: BigNumberish, + deleteName: BytesLike, + closestEncloser: DNSSEC.RRSetWithSignatureStruct, + nextClosest: DNSSEC.RRSetWithSignatureStruct, + dnskey: BytesLike + ], [ + void + ], "nonpayable">; + rrdata: TypedContractMethod<[ + dnstype: BigNumberish, + name: BytesLike + ], [ + [bigint, bigint, string] + ], "view">; + submitRRSet: TypedContractMethod<[ + input: DNSSEC.RRSetWithSignatureStruct, + proof: BytesLike + ], [ + string + ], "nonpayable">; + submitRRSets: TypedContractMethod<[ + input: DNSSEC.RRSetWithSignatureStruct[], + proof: BytesLike + ], [ + string + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "anchors"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "deleteRRSet"): TypedContractMethod<[ + deleteType: BigNumberish, + deleteName: BytesLike, + nsec: DNSSEC.RRSetWithSignatureStruct, + proof: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "deleteRRSetNSEC3"): TypedContractMethod<[ + deleteType: BigNumberish, + deleteName: BytesLike, + closestEncloser: DNSSEC.RRSetWithSignatureStruct, + nextClosest: DNSSEC.RRSetWithSignatureStruct, + dnskey: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "rrdata"): TypedContractMethod<[ + dnstype: BigNumberish, + name: BytesLike + ], [ + [bigint, bigint, string] + ], "view">; + getFunction(nameOrSignature: "submitRRSet"): TypedContractMethod<[ + input: DNSSEC.RRSetWithSignatureStruct, + proof: BytesLike + ], [ + string + ], "nonpayable">; + getFunction(nameOrSignature: "submitRRSets"): TypedContractMethod<[ + input: DNSSEC.RRSetWithSignatureStruct[], + proof: BytesLike + ], [ + string + ], "nonpayable">; + getEvent(key: "AlgorithmUpdated"): TypedContractEvent; + getEvent(key: "DigestUpdated"): TypedContractEvent; + getEvent(key: "NSEC3DigestUpdated"): TypedContractEvent; + getEvent(key: "RRSetUpdated"): TypedContractEvent; + filters: { + "AlgorithmUpdated(uint8,address)": TypedContractEvent; + AlgorithmUpdated: TypedContractEvent; + "DigestUpdated(uint8,address)": TypedContractEvent; + DigestUpdated: TypedContractEvent; + "NSEC3DigestUpdated(uint8,address)": TypedContractEvent; + NSEC3DigestUpdated: TypedContractEvent; + "RRSetUpdated(bytes,bytes)": TypedContractEvent; + RRSetUpdated: TypedContractEvent; + }; +} +//# sourceMappingURL=DNSSEC.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/DNSSEC.d.ts.map b/dist/types/contracts/@ens/dnssec/DNSSEC.d.ts.map new file mode 100644 index 00000000..c6a78574 --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/DNSSEC.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"DNSSEC.d.ts","sourceRoot":"","sources":["../../../../../types/contracts/@ens/dnssec/DNSSEC.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/DNSSEC.js b/dist/types/contracts/@ens/dnssec/DNSSEC.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/DNSSEC.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl.d.ts b/dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl.d.ts new file mode 100644 index 00000000..cf2dc928 --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl.d.ts @@ -0,0 +1,278 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; +export declare namespace DNSSEC { + type RRSetWithSignatureStruct = { + rrset: BytesLike; + sig: BytesLike; + }; + type RRSetWithSignatureStructOutput = [rrset: string, sig: string] & { + rrset: string; + sig: string; + }; +} +export interface DNSSECImplInterface extends Interface { + getFunction(nameOrSignature: "algorithms" | "anchors" | "deleteRRSet" | "deleteRRSetNSEC3" | "digests" | "nsec3Digests" | "owner" | "rrdata" | "setAlgorithm" | "setDigest" | "setNSEC3Digest" | "setOwner" | "submitRRSet" | "submitRRSets"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "AlgorithmUpdated" | "DigestUpdated" | "Marker" | "NSEC3DigestUpdated" | "RRSetUpdated" | "Test"): EventFragment; + encodeFunctionData(functionFragment: "algorithms", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "anchors", values?: undefined): string; + encodeFunctionData(functionFragment: "deleteRRSet", values: [ + BigNumberish, + BytesLike, + DNSSEC.RRSetWithSignatureStruct, + BytesLike + ]): string; + encodeFunctionData(functionFragment: "deleteRRSetNSEC3", values: [ + BigNumberish, + BytesLike, + DNSSEC.RRSetWithSignatureStruct, + DNSSEC.RRSetWithSignatureStruct, + BytesLike + ]): string; + encodeFunctionData(functionFragment: "digests", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "nsec3Digests", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData(functionFragment: "rrdata", values: [BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "setAlgorithm", values: [BigNumberish, AddressLike]): string; + encodeFunctionData(functionFragment: "setDigest", values: [BigNumberish, AddressLike]): string; + encodeFunctionData(functionFragment: "setNSEC3Digest", values: [BigNumberish, AddressLike]): string; + encodeFunctionData(functionFragment: "setOwner", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "submitRRSet", values: [DNSSEC.RRSetWithSignatureStruct, BytesLike]): string; + encodeFunctionData(functionFragment: "submitRRSets", values: [DNSSEC.RRSetWithSignatureStruct[], BytesLike]): string; + decodeFunctionResult(functionFragment: "algorithms", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "anchors", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "deleteRRSet", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "deleteRRSetNSEC3", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "digests", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "nsec3Digests", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "rrdata", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setAlgorithm", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setDigest", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setNSEC3Digest", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setOwner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "submitRRSet", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "submitRRSets", data: BytesLike): Result; +} +export declare namespace AlgorithmUpdatedEvent { + type InputTuple = [id: BigNumberish, addr: AddressLike]; + type OutputTuple = [id: bigint, addr: string]; + interface OutputObject { + id: bigint; + addr: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace DigestUpdatedEvent { + type InputTuple = [id: BigNumberish, addr: AddressLike]; + type OutputTuple = [id: bigint, addr: string]; + interface OutputObject { + id: bigint; + addr: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace MarkerEvent { + type InputTuple = []; + type OutputTuple = []; + interface OutputObject { + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NSEC3DigestUpdatedEvent { + type InputTuple = [id: BigNumberish, addr: AddressLike]; + type OutputTuple = [id: bigint, addr: string]; + interface OutputObject { + id: bigint; + addr: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RRSetUpdatedEvent { + type InputTuple = [name: BytesLike, rrset: BytesLike]; + type OutputTuple = [name: string, rrset: string]; + interface OutputObject { + name: string; + rrset: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TestEvent { + type InputTuple = [t: BigNumberish]; + type OutputTuple = [t: bigint]; + interface OutputObject { + t: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface DNSSECImpl extends BaseContract { + connect(runner?: ContractRunner | null): DNSSECImpl; + waitForDeployment(): Promise; + interface: DNSSECImplInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + algorithms: TypedContractMethod<[arg0: BigNumberish], [string], "view">; + anchors: TypedContractMethod<[], [string], "view">; + deleteRRSet: TypedContractMethod<[ + deleteType: BigNumberish, + deleteName: BytesLike, + nsec: DNSSEC.RRSetWithSignatureStruct, + proof: BytesLike + ], [ + void + ], "nonpayable">; + deleteRRSetNSEC3: TypedContractMethod<[ + deleteType: BigNumberish, + deleteName: BytesLike, + closestEncloser: DNSSEC.RRSetWithSignatureStruct, + nextClosest: DNSSEC.RRSetWithSignatureStruct, + dnskey: BytesLike + ], [ + void + ], "nonpayable">; + digests: TypedContractMethod<[arg0: BigNumberish], [string], "view">; + nsec3Digests: TypedContractMethod<[arg0: BigNumberish], [string], "view">; + owner: TypedContractMethod<[], [string], "view">; + rrdata: TypedContractMethod<[ + dnstype: BigNumberish, + name: BytesLike + ], [ + [bigint, bigint, string] + ], "view">; + setAlgorithm: TypedContractMethod<[ + id: BigNumberish, + algo: AddressLike + ], [ + void + ], "nonpayable">; + setDigest: TypedContractMethod<[ + id: BigNumberish, + digest: AddressLike + ], [ + void + ], "nonpayable">; + setNSEC3Digest: TypedContractMethod<[ + id: BigNumberish, + digest: AddressLike + ], [ + void + ], "nonpayable">; + setOwner: TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">; + submitRRSet: TypedContractMethod<[ + input: DNSSEC.RRSetWithSignatureStruct, + proof: BytesLike + ], [ + string + ], "nonpayable">; + submitRRSets: TypedContractMethod<[ + input: DNSSEC.RRSetWithSignatureStruct[], + _proof: BytesLike + ], [ + string + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "algorithms"): TypedContractMethod<[arg0: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "anchors"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "deleteRRSet"): TypedContractMethod<[ + deleteType: BigNumberish, + deleteName: BytesLike, + nsec: DNSSEC.RRSetWithSignatureStruct, + proof: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "deleteRRSetNSEC3"): TypedContractMethod<[ + deleteType: BigNumberish, + deleteName: BytesLike, + closestEncloser: DNSSEC.RRSetWithSignatureStruct, + nextClosest: DNSSEC.RRSetWithSignatureStruct, + dnskey: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "digests"): TypedContractMethod<[arg0: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "nsec3Digests"): TypedContractMethod<[arg0: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "owner"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "rrdata"): TypedContractMethod<[ + dnstype: BigNumberish, + name: BytesLike + ], [ + [bigint, bigint, string] + ], "view">; + getFunction(nameOrSignature: "setAlgorithm"): TypedContractMethod<[ + id: BigNumberish, + algo: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setDigest"): TypedContractMethod<[ + id: BigNumberish, + digest: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setNSEC3Digest"): TypedContractMethod<[ + id: BigNumberish, + digest: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setOwner"): TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "submitRRSet"): TypedContractMethod<[ + input: DNSSEC.RRSetWithSignatureStruct, + proof: BytesLike + ], [ + string + ], "nonpayable">; + getFunction(nameOrSignature: "submitRRSets"): TypedContractMethod<[ + input: DNSSEC.RRSetWithSignatureStruct[], + _proof: BytesLike + ], [ + string + ], "nonpayable">; + getEvent(key: "AlgorithmUpdated"): TypedContractEvent; + getEvent(key: "DigestUpdated"): TypedContractEvent; + getEvent(key: "Marker"): TypedContractEvent; + getEvent(key: "NSEC3DigestUpdated"): TypedContractEvent; + getEvent(key: "RRSetUpdated"): TypedContractEvent; + getEvent(key: "Test"): TypedContractEvent; + filters: { + "AlgorithmUpdated(uint8,address)": TypedContractEvent; + AlgorithmUpdated: TypedContractEvent; + "DigestUpdated(uint8,address)": TypedContractEvent; + DigestUpdated: TypedContractEvent; + "Marker()": TypedContractEvent; + Marker: TypedContractEvent; + "NSEC3DigestUpdated(uint8,address)": TypedContractEvent; + NSEC3DigestUpdated: TypedContractEvent; + "RRSetUpdated(bytes,bytes)": TypedContractEvent; + RRSetUpdated: TypedContractEvent; + "Test(uint256)": TypedContractEvent; + Test: TypedContractEvent; + }; +} +//# sourceMappingURL=DNSSECImpl.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl.d.ts.map b/dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl.d.ts.map new file mode 100644 index 00000000..f46c209a --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"DNSSECImpl.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl.js b/dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/Owned.d.ts b/dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/Owned.d.ts new file mode 100644 index 00000000..7a5dfd55 --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/Owned.d.ts @@ -0,0 +1,30 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; +export interface OwnedInterface extends Interface { + getFunction(nameOrSignature: "owner" | "setOwner"): FunctionFragment; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData(functionFragment: "setOwner", values: [AddressLike]): string; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setOwner", data: BytesLike): Result; +} +export interface Owned extends BaseContract { + connect(runner?: ContractRunner | null): Owned; + waitForDeployment(): Promise; + interface: OwnedInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + owner: TypedContractMethod<[], [string], "view">; + setOwner: TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "owner"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "setOwner"): TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">; + filters: {}; +} +//# sourceMappingURL=Owned.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/Owned.d.ts.map b/dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/Owned.d.ts.map new file mode 100644 index 00000000..7efcfa59 --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/Owned.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"Owned.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@ens/dnssec/DNSSECImpl.sol/Owned.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/Owned.js b/dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/Owned.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/Owned.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/index.d.ts b/dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/index.d.ts new file mode 100644 index 00000000..eb4b855d --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/index.d.ts @@ -0,0 +1,3 @@ +export type { DNSSECImpl } from "./DNSSECImpl"; +export type { Owned } from "./Owned"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/index.d.ts.map b/dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/index.d.ts.map new file mode 100644 index 00000000..f6718fd6 --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@ens/dnssec/DNSSECImpl.sol/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,YAAY,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/index.js b/dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/dnssec/TLDPublicSuffixList.d.ts b/dist/types/contracts/@ens/dnssec/TLDPublicSuffixList.d.ts new file mode 100644 index 00000000..80185192 --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/TLDPublicSuffixList.d.ts @@ -0,0 +1,26 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../common"; +export interface TLDPublicSuffixListInterface extends Interface { + getFunction(nameOrSignature: "isPublicSuffix"): FunctionFragment; + encodeFunctionData(functionFragment: "isPublicSuffix", values: [BytesLike]): string; + decodeFunctionResult(functionFragment: "isPublicSuffix", data: BytesLike): Result; +} +export interface TLDPublicSuffixList extends BaseContract { + connect(runner?: ContractRunner | null): TLDPublicSuffixList; + waitForDeployment(): Promise; + interface: TLDPublicSuffixListInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + isPublicSuffix: TypedContractMethod<[name: BytesLike], [boolean], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "isPublicSuffix"): TypedContractMethod<[name: BytesLike], [boolean], "view">; + filters: {}; +} +//# sourceMappingURL=TLDPublicSuffixList.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/TLDPublicSuffixList.d.ts.map b/dist/types/contracts/@ens/dnssec/TLDPublicSuffixList.d.ts.map new file mode 100644 index 00000000..c6479dc9 --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/TLDPublicSuffixList.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"TLDPublicSuffixList.d.ts","sourceRoot":"","sources":["../../../../../types/contracts/@ens/dnssec/TLDPublicSuffixList.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/TLDPublicSuffixList.js b/dist/types/contracts/@ens/dnssec/TLDPublicSuffixList.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/TLDPublicSuffixList.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/dnssec/algorithms/DummyAlgorithm.d.ts b/dist/types/contracts/@ens/dnssec/algorithms/DummyAlgorithm.d.ts new file mode 100644 index 00000000..a2175a31 --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/algorithms/DummyAlgorithm.d.ts @@ -0,0 +1,38 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; +export interface DummyAlgorithmInterface extends Interface { + getFunction(nameOrSignature: "verify"): FunctionFragment; + encodeFunctionData(functionFragment: "verify", values: [BytesLike, BytesLike, BytesLike]): string; + decodeFunctionResult(functionFragment: "verify", data: BytesLike): Result; +} +export interface DummyAlgorithm extends BaseContract { + connect(runner?: ContractRunner | null): DummyAlgorithm; + waitForDeployment(): Promise; + interface: DummyAlgorithmInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + verify: TypedContractMethod<[ + arg0: BytesLike, + arg1: BytesLike, + arg2: BytesLike + ], [ + boolean + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "verify"): TypedContractMethod<[ + arg0: BytesLike, + arg1: BytesLike, + arg2: BytesLike + ], [ + boolean + ], "view">; + filters: {}; +} +//# sourceMappingURL=DummyAlgorithm.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/algorithms/DummyAlgorithm.d.ts.map b/dist/types/contracts/@ens/dnssec/algorithms/DummyAlgorithm.d.ts.map new file mode 100644 index 00000000..7f09135e --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/algorithms/DummyAlgorithm.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"DummyAlgorithm.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@ens/dnssec/algorithms/DummyAlgorithm.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/algorithms/DummyAlgorithm.js b/dist/types/contracts/@ens/dnssec/algorithms/DummyAlgorithm.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/algorithms/DummyAlgorithm.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm.d.ts b/dist/types/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm.d.ts new file mode 100644 index 00000000..55e51b80 --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm.d.ts @@ -0,0 +1,38 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; +export interface RSASHA256AlgorithmInterface extends Interface { + getFunction(nameOrSignature: "verify"): FunctionFragment; + encodeFunctionData(functionFragment: "verify", values: [BytesLike, BytesLike, BytesLike]): string; + decodeFunctionResult(functionFragment: "verify", data: BytesLike): Result; +} +export interface RSASHA256Algorithm extends BaseContract { + connect(runner?: ContractRunner | null): RSASHA256Algorithm; + waitForDeployment(): Promise; + interface: RSASHA256AlgorithmInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + verify: TypedContractMethod<[ + key: BytesLike, + data: BytesLike, + sig: BytesLike + ], [ + boolean + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "verify"): TypedContractMethod<[ + key: BytesLike, + data: BytesLike, + sig: BytesLike + ], [ + boolean + ], "view">; + filters: {}; +} +//# sourceMappingURL=RSASHA256Algorithm.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm.d.ts.map b/dist/types/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm.d.ts.map new file mode 100644 index 00000000..66cf6722 --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"RSASHA256Algorithm.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm.js b/dist/types/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/dnssec/algorithms/index.d.ts b/dist/types/contracts/@ens/dnssec/algorithms/index.d.ts new file mode 100644 index 00000000..e0d621e7 --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/algorithms/index.d.ts @@ -0,0 +1,3 @@ +export type { DummyAlgorithm } from "./DummyAlgorithm"; +export type { RSASHA256Algorithm } from "./RSASHA256Algorithm"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/algorithms/index.d.ts.map b/dist/types/contracts/@ens/dnssec/algorithms/index.d.ts.map new file mode 100644 index 00000000..e81d038f --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/algorithms/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@ens/dnssec/algorithms/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,YAAY,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/algorithms/index.js b/dist/types/contracts/@ens/dnssec/algorithms/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/algorithms/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/dnssec/digests/SHA1Digest.d.ts b/dist/types/contracts/@ens/dnssec/digests/SHA1Digest.d.ts new file mode 100644 index 00000000..684a8ac4 --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/digests/SHA1Digest.d.ts @@ -0,0 +1,31 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; +export interface SHA1DigestInterface extends Interface { + getFunction(nameOrSignature: "verify"): FunctionFragment; + encodeFunctionData(functionFragment: "verify", values: [BytesLike, BytesLike]): string; + decodeFunctionResult(functionFragment: "verify", data: BytesLike): Result; +} +export interface SHA1Digest extends BaseContract { + connect(runner?: ContractRunner | null): SHA1Digest; + waitForDeployment(): Promise; + interface: SHA1DigestInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + verify: TypedContractMethod<[ + data: BytesLike, + hash: BytesLike + ], [ + boolean + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "verify"): TypedContractMethod<[data: BytesLike, hash: BytesLike], [boolean], "view">; + filters: {}; +} +//# sourceMappingURL=SHA1Digest.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/digests/SHA1Digest.d.ts.map b/dist/types/contracts/@ens/dnssec/digests/SHA1Digest.d.ts.map new file mode 100644 index 00000000..a4552f7b --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/digests/SHA1Digest.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"SHA1Digest.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@ens/dnssec/digests/SHA1Digest.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/digests/SHA1Digest.js b/dist/types/contracts/@ens/dnssec/digests/SHA1Digest.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/digests/SHA1Digest.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/dnssec/digests/SHA1NSEC3Digest.d.ts b/dist/types/contracts/@ens/dnssec/digests/SHA1NSEC3Digest.d.ts new file mode 100644 index 00000000..c1b08bb3 --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/digests/SHA1NSEC3Digest.d.ts @@ -0,0 +1,38 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; +export interface SHA1NSEC3DigestInterface extends Interface { + getFunction(nameOrSignature: "hash"): FunctionFragment; + encodeFunctionData(functionFragment: "hash", values: [BytesLike, BytesLike, BigNumberish]): string; + decodeFunctionResult(functionFragment: "hash", data: BytesLike): Result; +} +export interface SHA1NSEC3Digest extends BaseContract { + connect(runner?: ContractRunner | null): SHA1NSEC3Digest; + waitForDeployment(): Promise; + interface: SHA1NSEC3DigestInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + hash: TypedContractMethod<[ + salt: BytesLike, + data: BytesLike, + iterations: BigNumberish + ], [ + string + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "hash"): TypedContractMethod<[ + salt: BytesLike, + data: BytesLike, + iterations: BigNumberish + ], [ + string + ], "view">; + filters: {}; +} +//# sourceMappingURL=SHA1NSEC3Digest.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/digests/SHA1NSEC3Digest.d.ts.map b/dist/types/contracts/@ens/dnssec/digests/SHA1NSEC3Digest.d.ts.map new file mode 100644 index 00000000..c0ec4953 --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/digests/SHA1NSEC3Digest.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"SHA1NSEC3Digest.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@ens/dnssec/digests/SHA1NSEC3Digest.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/digests/SHA1NSEC3Digest.js b/dist/types/contracts/@ens/dnssec/digests/SHA1NSEC3Digest.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/digests/SHA1NSEC3Digest.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/dnssec/digests/SHA256Digest.d.ts b/dist/types/contracts/@ens/dnssec/digests/SHA256Digest.d.ts new file mode 100644 index 00000000..a068a25c --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/digests/SHA256Digest.d.ts @@ -0,0 +1,31 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; +export interface SHA256DigestInterface extends Interface { + getFunction(nameOrSignature: "verify"): FunctionFragment; + encodeFunctionData(functionFragment: "verify", values: [BytesLike, BytesLike]): string; + decodeFunctionResult(functionFragment: "verify", data: BytesLike): Result; +} +export interface SHA256Digest extends BaseContract { + connect(runner?: ContractRunner | null): SHA256Digest; + waitForDeployment(): Promise; + interface: SHA256DigestInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + verify: TypedContractMethod<[ + data: BytesLike, + hash: BytesLike + ], [ + boolean + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "verify"): TypedContractMethod<[data: BytesLike, hash: BytesLike], [boolean], "view">; + filters: {}; +} +//# sourceMappingURL=SHA256Digest.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/digests/SHA256Digest.d.ts.map b/dist/types/contracts/@ens/dnssec/digests/SHA256Digest.d.ts.map new file mode 100644 index 00000000..a1a5de37 --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/digests/SHA256Digest.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"SHA256Digest.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@ens/dnssec/digests/SHA256Digest.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/digests/SHA256Digest.js b/dist/types/contracts/@ens/dnssec/digests/SHA256Digest.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/digests/SHA256Digest.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/dnssec/digests/index.d.ts b/dist/types/contracts/@ens/dnssec/digests/index.d.ts new file mode 100644 index 00000000..ce31f0ce --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/digests/index.d.ts @@ -0,0 +1,4 @@ +export type { SHA1Digest } from "./SHA1Digest"; +export type { SHA1NSEC3Digest } from "./SHA1NSEC3Digest"; +export type { SHA256Digest } from "./SHA256Digest"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/digests/index.d.ts.map b/dist/types/contracts/@ens/dnssec/digests/index.d.ts.map new file mode 100644 index 00000000..465b42d5 --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/digests/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@ens/dnssec/digests/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,YAAY,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,YAAY,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/digests/index.js b/dist/types/contracts/@ens/dnssec/digests/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/digests/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/dnssec/index.d.ts b/dist/types/contracts/@ens/dnssec/index.d.ts new file mode 100644 index 00000000..0ea713dd --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/index.d.ts @@ -0,0 +1,14 @@ +import type * as dnssecImplSol from "./DNSSECImpl.sol"; +export type { dnssecImplSol }; +import type * as algorithms from "./algorithms"; +export type { algorithms }; +import type * as digests from "./digests"; +export type { digests }; +import type * as interfaces from "./interfaces"; +export type { interfaces }; +import type * as libraries from "./libraries"; +export type { libraries }; +export type { DNSRegistrar } from "./DNSRegistrar"; +export type { DNSSEC } from "./DNSSEC"; +export type { TLDPublicSuffixList } from "./TLDPublicSuffixList"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/index.d.ts.map b/dist/types/contracts/@ens/dnssec/index.d.ts.map new file mode 100644 index 00000000..99fca6c4 --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/contracts/@ens/dnssec/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,aAAa,MAAM,kBAAkB,CAAC;AACvD,YAAY,EAAE,aAAa,EAAE,CAAC;AAC9B,OAAO,KAAK,KAAK,UAAU,MAAM,cAAc,CAAC;AAChD,YAAY,EAAE,UAAU,EAAE,CAAC;AAC3B,OAAO,KAAK,KAAK,OAAO,MAAM,WAAW,CAAC;AAC1C,YAAY,EAAE,OAAO,EAAE,CAAC;AACxB,OAAO,KAAK,KAAK,UAAU,MAAM,cAAc,CAAC;AAChD,YAAY,EAAE,UAAU,EAAE,CAAC;AAC3B,OAAO,KAAK,KAAK,SAAS,MAAM,aAAa,CAAC;AAC9C,YAAY,EAAE,SAAS,EAAE,CAAC;AAC1B,YAAY,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACnD,YAAY,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AACvC,YAAY,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/index.js b/dist/types/contracts/@ens/dnssec/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/dnssec/interfaces/Algorithm.d.ts b/dist/types/contracts/@ens/dnssec/interfaces/Algorithm.d.ts new file mode 100644 index 00000000..47f3f75f --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/interfaces/Algorithm.d.ts @@ -0,0 +1,38 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; +export interface AlgorithmInterface extends Interface { + getFunction(nameOrSignature: "verify"): FunctionFragment; + encodeFunctionData(functionFragment: "verify", values: [BytesLike, BytesLike, BytesLike]): string; + decodeFunctionResult(functionFragment: "verify", data: BytesLike): Result; +} +export interface Algorithm extends BaseContract { + connect(runner?: ContractRunner | null): Algorithm; + waitForDeployment(): Promise; + interface: AlgorithmInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + verify: TypedContractMethod<[ + key: BytesLike, + data: BytesLike, + signature: BytesLike + ], [ + boolean + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "verify"): TypedContractMethod<[ + key: BytesLike, + data: BytesLike, + signature: BytesLike + ], [ + boolean + ], "view">; + filters: {}; +} +//# sourceMappingURL=Algorithm.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/interfaces/Algorithm.d.ts.map b/dist/types/contracts/@ens/dnssec/interfaces/Algorithm.d.ts.map new file mode 100644 index 00000000..d572fa81 --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/interfaces/Algorithm.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"Algorithm.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@ens/dnssec/interfaces/Algorithm.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/interfaces/Algorithm.js b/dist/types/contracts/@ens/dnssec/interfaces/Algorithm.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/interfaces/Algorithm.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/dnssec/interfaces/Digest.d.ts b/dist/types/contracts/@ens/dnssec/interfaces/Digest.d.ts new file mode 100644 index 00000000..9e1bf753 --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/interfaces/Digest.d.ts @@ -0,0 +1,31 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; +export interface DigestInterface extends Interface { + getFunction(nameOrSignature: "verify"): FunctionFragment; + encodeFunctionData(functionFragment: "verify", values: [BytesLike, BytesLike]): string; + decodeFunctionResult(functionFragment: "verify", data: BytesLike): Result; +} +export interface Digest extends BaseContract { + connect(runner?: ContractRunner | null): Digest; + waitForDeployment(): Promise; + interface: DigestInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + verify: TypedContractMethod<[ + data: BytesLike, + hash: BytesLike + ], [ + boolean + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "verify"): TypedContractMethod<[data: BytesLike, hash: BytesLike], [boolean], "view">; + filters: {}; +} +//# sourceMappingURL=Digest.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/interfaces/Digest.d.ts.map b/dist/types/contracts/@ens/dnssec/interfaces/Digest.d.ts.map new file mode 100644 index 00000000..e7335bb4 --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/interfaces/Digest.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"Digest.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@ens/dnssec/interfaces/Digest.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/interfaces/Digest.js b/dist/types/contracts/@ens/dnssec/interfaces/Digest.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/interfaces/Digest.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/dnssec/interfaces/IDNSRegistrar.d.ts b/dist/types/contracts/@ens/dnssec/interfaces/IDNSRegistrar.d.ts new file mode 100644 index 00000000..5004c4d8 --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/interfaces/IDNSRegistrar.d.ts @@ -0,0 +1,88 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; +export declare namespace DNSSEC { + type RRSetWithSignatureStruct = { + rrset: BytesLike; + sig: BytesLike; + }; + type RRSetWithSignatureStructOutput = [rrset: string, sig: string] & { + rrset: string; + sig: string; + }; +} +export interface IDNSRegistrarInterface extends Interface { + getFunction(nameOrSignature: "claim" | "proveAndClaim" | "proveAndClaimWithResolver"): FunctionFragment; + encodeFunctionData(functionFragment: "claim", values: [BytesLike, BytesLike]): string; + encodeFunctionData(functionFragment: "proveAndClaim", values: [BytesLike, DNSSEC.RRSetWithSignatureStruct[], BytesLike]): string; + encodeFunctionData(functionFragment: "proveAndClaimWithResolver", values: [ + BytesLike, + DNSSEC.RRSetWithSignatureStruct[], + BytesLike, + AddressLike, + AddressLike + ]): string; + decodeFunctionResult(functionFragment: "claim", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "proveAndClaim", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "proveAndClaimWithResolver", data: BytesLike): Result; +} +export interface IDNSRegistrar extends BaseContract { + connect(runner?: ContractRunner | null): IDNSRegistrar; + waitForDeployment(): Promise; + interface: IDNSRegistrarInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + claim: TypedContractMethod<[ + name: BytesLike, + proof: BytesLike + ], [ + void + ], "nonpayable">; + proveAndClaim: TypedContractMethod<[ + name: BytesLike, + input: DNSSEC.RRSetWithSignatureStruct[], + proof: BytesLike + ], [ + void + ], "nonpayable">; + proveAndClaimWithResolver: TypedContractMethod<[ + name: BytesLike, + input: DNSSEC.RRSetWithSignatureStruct[], + proof: BytesLike, + resolver: AddressLike, + addr: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "claim"): TypedContractMethod<[ + name: BytesLike, + proof: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "proveAndClaim"): TypedContractMethod<[ + name: BytesLike, + input: DNSSEC.RRSetWithSignatureStruct[], + proof: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "proveAndClaimWithResolver"): TypedContractMethod<[ + name: BytesLike, + input: DNSSEC.RRSetWithSignatureStruct[], + proof: BytesLike, + resolver: AddressLike, + addr: AddressLike + ], [ + void + ], "nonpayable">; + filters: {}; +} +//# sourceMappingURL=IDNSRegistrar.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/interfaces/IDNSRegistrar.d.ts.map b/dist/types/contracts/@ens/dnssec/interfaces/IDNSRegistrar.d.ts.map new file mode 100644 index 00000000..265e5b07 --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/interfaces/IDNSRegistrar.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IDNSRegistrar.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@ens/dnssec/interfaces/IDNSRegistrar.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/interfaces/IDNSRegistrar.js b/dist/types/contracts/@ens/dnssec/interfaces/IDNSRegistrar.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/interfaces/IDNSRegistrar.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/dnssec/interfaces/NSEC3Digest.d.ts b/dist/types/contracts/@ens/dnssec/interfaces/NSEC3Digest.d.ts new file mode 100644 index 00000000..f5ae37c3 --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/interfaces/NSEC3Digest.d.ts @@ -0,0 +1,38 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; +export interface NSEC3DigestInterface extends Interface { + getFunction(nameOrSignature: "hash"): FunctionFragment; + encodeFunctionData(functionFragment: "hash", values: [BytesLike, BytesLike, BigNumberish]): string; + decodeFunctionResult(functionFragment: "hash", data: BytesLike): Result; +} +export interface NSEC3Digest extends BaseContract { + connect(runner?: ContractRunner | null): NSEC3Digest; + waitForDeployment(): Promise; + interface: NSEC3DigestInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + hash: TypedContractMethod<[ + salt: BytesLike, + data: BytesLike, + iterations: BigNumberish + ], [ + string + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "hash"): TypedContractMethod<[ + salt: BytesLike, + data: BytesLike, + iterations: BigNumberish + ], [ + string + ], "view">; + filters: {}; +} +//# sourceMappingURL=NSEC3Digest.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/interfaces/NSEC3Digest.d.ts.map b/dist/types/contracts/@ens/dnssec/interfaces/NSEC3Digest.d.ts.map new file mode 100644 index 00000000..409ae27c --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/interfaces/NSEC3Digest.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"NSEC3Digest.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@ens/dnssec/interfaces/NSEC3Digest.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/interfaces/NSEC3Digest.js b/dist/types/contracts/@ens/dnssec/interfaces/NSEC3Digest.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/interfaces/NSEC3Digest.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/dnssec/interfaces/PublicSuffixList.d.ts b/dist/types/contracts/@ens/dnssec/interfaces/PublicSuffixList.d.ts new file mode 100644 index 00000000..cf21b932 --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/interfaces/PublicSuffixList.d.ts @@ -0,0 +1,26 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; +export interface PublicSuffixListInterface extends Interface { + getFunction(nameOrSignature: "isPublicSuffix"): FunctionFragment; + encodeFunctionData(functionFragment: "isPublicSuffix", values: [BytesLike]): string; + decodeFunctionResult(functionFragment: "isPublicSuffix", data: BytesLike): Result; +} +export interface PublicSuffixList extends BaseContract { + connect(runner?: ContractRunner | null): PublicSuffixList; + waitForDeployment(): Promise; + interface: PublicSuffixListInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + isPublicSuffix: TypedContractMethod<[name: BytesLike], [boolean], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "isPublicSuffix"): TypedContractMethod<[name: BytesLike], [boolean], "view">; + filters: {}; +} +//# sourceMappingURL=PublicSuffixList.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/interfaces/PublicSuffixList.d.ts.map b/dist/types/contracts/@ens/dnssec/interfaces/PublicSuffixList.d.ts.map new file mode 100644 index 00000000..3eae65bb --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/interfaces/PublicSuffixList.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"PublicSuffixList.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@ens/dnssec/interfaces/PublicSuffixList.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,aAAa,EACb,mBAAmB,EACpB,MAAM,oBAAoB,CAAC;AAE5B,MAAM,WAAW,yBAA0B,SAAQ,SAAS;IAC1D,WAAW,CAAC,eAAe,EAAE,gBAAgB,GAAG,gBAAgB,CAAC;IAEjE,kBAAkB,CAChB,gBAAgB,EAAE,gBAAgB,EAClC,MAAM,EAAE,CAAC,SAAS,CAAC,GAClB,MAAM,CAAC;IAEV,oBAAoB,CAClB,gBAAgB,EAAE,gBAAgB,EAClC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;CACX;AAED,MAAM,WAAW,gBAAiB,SAAQ,YAAY;IACpD,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,gBAAgB,CAAC;IAC1D,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,yBAAyB,CAAC;IAErC,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,cAAc,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IAE1E,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,WAAW,CACT,eAAe,EAAE,gBAAgB,GAChC,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IAE7D,OAAO,EAAE,EAAE,CAAC;CACb"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/interfaces/PublicSuffixList.js b/dist/types/contracts/@ens/dnssec/interfaces/PublicSuffixList.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/interfaces/PublicSuffixList.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/dnssec/interfaces/index.d.ts b/dist/types/contracts/@ens/dnssec/interfaces/index.d.ts new file mode 100644 index 00000000..5fde2758 --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/interfaces/index.d.ts @@ -0,0 +1,6 @@ +export type { Algorithm } from "./Algorithm"; +export type { Digest } from "./Digest"; +export type { IDNSRegistrar } from "./IDNSRegistrar"; +export type { NSEC3Digest } from "./NSEC3Digest"; +export type { PublicSuffixList } from "./PublicSuffixList"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/interfaces/index.d.ts.map b/dist/types/contracts/@ens/dnssec/interfaces/index.d.ts.map new file mode 100644 index 00000000..6612d2f3 --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/interfaces/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@ens/dnssec/interfaces/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,YAAY,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AACvC,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/interfaces/index.js b/dist/types/contracts/@ens/dnssec/interfaces/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/interfaces/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/dnssec/libraries/SHA1.d.ts b/dist/types/contracts/@ens/dnssec/libraries/SHA1.d.ts new file mode 100644 index 00000000..bf27e82b --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/libraries/SHA1.d.ts @@ -0,0 +1,37 @@ +import type { BaseContract, BytesLike, FunctionFragment, Interface, EventFragment, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener } from "../../../../common"; +export interface SHA1Interface extends Interface { + getEvent(nameOrSignatureOrTopic: "Debug"): EventFragment; +} +export declare namespace DebugEvent { + type InputTuple = [x: BytesLike]; + type OutputTuple = [x: string]; + interface OutputObject { + x: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface SHA1 extends BaseContract { + connect(runner?: ContractRunner | null): SHA1; + waitForDeployment(): Promise; + interface: SHA1Interface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + getFunction(key: string | FunctionFragment): T; + getEvent(key: "Debug"): TypedContractEvent; + filters: { + "Debug(bytes32)": TypedContractEvent; + Debug: TypedContractEvent; + }; +} +//# sourceMappingURL=SHA1.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/libraries/SHA1.d.ts.map b/dist/types/contracts/@ens/dnssec/libraries/SHA1.d.ts.map new file mode 100644 index 00000000..e1e7bb4f --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/libraries/SHA1.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"SHA1.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@ens/dnssec/libraries/SHA1.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/libraries/SHA1.js b/dist/types/contracts/@ens/dnssec/libraries/SHA1.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/libraries/SHA1.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/dnssec/libraries/index.d.ts b/dist/types/contracts/@ens/dnssec/libraries/index.d.ts new file mode 100644 index 00000000..2c91406d --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/libraries/index.d.ts @@ -0,0 +1,2 @@ +export type { SHA1 } from "./SHA1"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/libraries/index.d.ts.map b/dist/types/contracts/@ens/dnssec/libraries/index.d.ts.map new file mode 100644 index 00000000..bce3eb87 --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/libraries/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@ens/dnssec/libraries/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/libraries/index.js b/dist/types/contracts/@ens/dnssec/libraries/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@ens/dnssec/libraries/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/index.d.ts b/dist/types/contracts/@ens/index.d.ts new file mode 100644 index 00000000..568961de --- /dev/null +++ b/dist/types/contracts/@ens/index.d.ts @@ -0,0 +1,7 @@ +import type * as legacyEnsRegistrySol from "./LegacyENSRegistry.sol"; +export type { legacyEnsRegistrySol }; +import type * as legacyEthRegistrarControllerSol from "./LegacyETHRegistrarController.sol"; +export type { legacyEthRegistrarControllerSol }; +import type * as dnssec from "./dnssec"; +export type { dnssec }; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/index.d.ts.map b/dist/types/contracts/@ens/index.d.ts.map new file mode 100644 index 00000000..899db7ec --- /dev/null +++ b/dist/types/contracts/@ens/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../types/contracts/@ens/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,oBAAoB,MAAM,yBAAyB,CAAC;AACrE,YAAY,EAAE,oBAAoB,EAAE,CAAC;AACrC,OAAO,KAAK,KAAK,+BAA+B,MAAM,oCAAoC,CAAC;AAC3F,YAAY,EAAE,+BAA+B,EAAE,CAAC;AAChD,OAAO,KAAK,KAAK,MAAM,MAAM,UAAU,CAAC;AACxC,YAAY,EAAE,MAAM,EAAE,CAAC"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/index.js b/dist/types/contracts/@ens/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@ens/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/IChildToken.d.ts b/dist/types/contracts/@maticnetwork/IChildToken.d.ts new file mode 100644 index 00000000..6afc4705 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/IChildToken.d.ts @@ -0,0 +1,36 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../common"; +export interface IChildTokenInterface extends Interface { + getFunction(nameOrSignature: "deposit"): FunctionFragment; + encodeFunctionData(functionFragment: "deposit", values: [AddressLike, BytesLike]): string; + decodeFunctionResult(functionFragment: "deposit", data: BytesLike): Result; +} +export interface IChildToken extends BaseContract { + connect(runner?: ContractRunner | null): IChildToken; + waitForDeployment(): Promise; + interface: IChildTokenInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + deposit: TypedContractMethod<[ + user: AddressLike, + depositData: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "deposit"): TypedContractMethod<[ + user: AddressLike, + depositData: BytesLike + ], [ + void + ], "nonpayable">; + filters: {}; +} +//# sourceMappingURL=IChildToken.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/IChildToken.d.ts.map b/dist/types/contracts/@maticnetwork/IChildToken.d.ts.map new file mode 100644 index 00000000..2cf57281 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/IChildToken.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IChildToken.d.ts","sourceRoot":"","sources":["../../../../types/contracts/@maticnetwork/IChildToken.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/IChildToken.js b/dist/types/contracts/@maticnetwork/IChildToken.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/IChildToken.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/IMintableERC721.d.ts b/dist/types/contracts/@maticnetwork/IMintableERC721.d.ts new file mode 100644 index 00000000..4e224fc8 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/IMintableERC721.d.ts @@ -0,0 +1,234 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; +export interface IMintableERC721Interface extends Interface { + getFunction(nameOrSignature: "approve" | "balanceOf" | "exists" | "getApproved" | "isApprovedForAll" | "mint(address,uint256)" | "mint(address,uint256,bytes)" | "ownerOf" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "setApprovalForAll" | "supportsInterface" | "transferFrom"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "Transfer"): EventFragment; + encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "exists", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "mint(address,uint256)", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "mint(address,uint256,bytes)", values: [AddressLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; + decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "exists", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "mint(address,uint256)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "mint(address,uint256,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; +} +export declare namespace ApprovalEvent { + type InputTuple = [ + owner: AddressLike, + approved: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [owner: string, approved: string, tokenId: bigint]; + interface OutputObject { + owner: string; + approved: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ApprovalForAllEvent { + type InputTuple = [ + owner: AddressLike, + operator: AddressLike, + approved: boolean + ]; + type OutputTuple = [ + owner: string, + operator: string, + approved: boolean + ]; + interface OutputObject { + owner: string; + operator: string; + approved: boolean; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferEvent { + type InputTuple = [ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [from: string, to: string, tokenId: bigint]; + interface OutputObject { + from: string; + to: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface IMintableERC721 extends BaseContract { + connect(runner?: ContractRunner | null): IMintableERC721; + waitForDeployment(): Promise; + interface: IMintableERC721Interface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + approve: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; + exists: TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; + getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + isApprovedForAll: TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + "mint(address,uint256)": TypedContractMethod<[ + user: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + "mint(address,uint256,bytes)": TypedContractMethod<[ + user: AddressLike, + tokenId: BigNumberish, + metaData: BytesLike + ], [ + void + ], "nonpayable">; + ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + setApprovalForAll: TypedContractMethod<[ + operator: AddressLike, + _approved: boolean + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + transferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "approve"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; + getFunction(nameOrSignature: "exists"): TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; + getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "mint(address,uint256)"): TypedContractMethod<[ + user: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "mint(address,uint256,bytes)"): TypedContractMethod<[ + user: AddressLike, + tokenId: BigNumberish, + metaData: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ + operator: AddressLike, + _approved: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getEvent(key: "Approval"): TypedContractEvent; + getEvent(key: "ApprovalForAll"): TypedContractEvent; + getEvent(key: "Transfer"): TypedContractEvent; + filters: { + "Approval(address,address,uint256)": TypedContractEvent; + Approval: TypedContractEvent; + "ApprovalForAll(address,address,bool)": TypedContractEvent; + ApprovalForAll: TypedContractEvent; + "Transfer(address,address,uint256)": TypedContractEvent; + Transfer: TypedContractEvent; + }; +} +//# sourceMappingURL=IMintableERC721.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/IMintableERC721.d.ts.map b/dist/types/contracts/@maticnetwork/IMintableERC721.d.ts.map new file mode 100644 index 00000000..9230bbab --- /dev/null +++ b/dist/types/contracts/@maticnetwork/IMintableERC721.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IMintableERC721.d.ts","sourceRoot":"","sources":["../../../../types/contracts/@maticnetwork/IMintableERC721.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/IMintableERC721.js b/dist/types/contracts/@maticnetwork/IMintableERC721.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/IMintableERC721.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/IRootChainManager.d.ts b/dist/types/contracts/@maticnetwork/IRootChainManager.d.ts new file mode 100644 index 00000000..b29ae0a0 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/IRootChainManager.d.ts @@ -0,0 +1,150 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; +export interface IRootChainManagerInterface extends Interface { + getFunction(nameOrSignature: "cleanMapToken" | "depositEtherFor" | "depositFor" | "exit" | "mapToken" | "registerPredicate" | "remapToken"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "PredicateRegistered" | "TokenMapped"): EventFragment; + encodeFunctionData(functionFragment: "cleanMapToken", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "depositEtherFor", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "depositFor", values: [AddressLike, AddressLike, BytesLike]): string; + encodeFunctionData(functionFragment: "exit", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "mapToken", values: [AddressLike, AddressLike, BytesLike]): string; + encodeFunctionData(functionFragment: "registerPredicate", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "remapToken", values: [AddressLike, AddressLike, BytesLike]): string; + decodeFunctionResult(functionFragment: "cleanMapToken", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "depositEtherFor", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "depositFor", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "exit", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "mapToken", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "registerPredicate", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "remapToken", data: BytesLike): Result; +} +export declare namespace PredicateRegisteredEvent { + type InputTuple = [ + tokenType: BytesLike, + predicateAddress: AddressLike + ]; + type OutputTuple = [tokenType: string, predicateAddress: string]; + interface OutputObject { + tokenType: string; + predicateAddress: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TokenMappedEvent { + type InputTuple = [ + rootToken: AddressLike, + childToken: AddressLike, + tokenType: BytesLike + ]; + type OutputTuple = [ + rootToken: string, + childToken: string, + tokenType: string + ]; + interface OutputObject { + rootToken: string; + childToken: string; + tokenType: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface IRootChainManager extends BaseContract { + connect(runner?: ContractRunner | null): IRootChainManager; + waitForDeployment(): Promise; + interface: IRootChainManagerInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + cleanMapToken: TypedContractMethod<[ + rootToken: AddressLike, + childToken: AddressLike + ], [ + void + ], "nonpayable">; + depositEtherFor: TypedContractMethod<[user: AddressLike], [void], "payable">; + depositFor: TypedContractMethod<[ + user: AddressLike, + rootToken: AddressLike, + depositData: BytesLike + ], [ + void + ], "nonpayable">; + exit: TypedContractMethod<[inputData: BytesLike], [void], "nonpayable">; + mapToken: TypedContractMethod<[ + rootToken: AddressLike, + childToken: AddressLike, + tokenType: BytesLike + ], [ + void + ], "nonpayable">; + registerPredicate: TypedContractMethod<[ + tokenType: BytesLike, + predicateAddress: AddressLike + ], [ + void + ], "nonpayable">; + remapToken: TypedContractMethod<[ + rootToken: AddressLike, + childToken: AddressLike, + tokenType: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "cleanMapToken"): TypedContractMethod<[ + rootToken: AddressLike, + childToken: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "depositEtherFor"): TypedContractMethod<[user: AddressLike], [void], "payable">; + getFunction(nameOrSignature: "depositFor"): TypedContractMethod<[ + user: AddressLike, + rootToken: AddressLike, + depositData: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "exit"): TypedContractMethod<[inputData: BytesLike], [void], "nonpayable">; + getFunction(nameOrSignature: "mapToken"): TypedContractMethod<[ + rootToken: AddressLike, + childToken: AddressLike, + tokenType: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "registerPredicate"): TypedContractMethod<[ + tokenType: BytesLike, + predicateAddress: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "remapToken"): TypedContractMethod<[ + rootToken: AddressLike, + childToken: AddressLike, + tokenType: BytesLike + ], [ + void + ], "nonpayable">; + getEvent(key: "PredicateRegistered"): TypedContractEvent; + getEvent(key: "TokenMapped"): TypedContractEvent; + filters: { + "PredicateRegistered(bytes32,address)": TypedContractEvent; + PredicateRegistered: TypedContractEvent; + "TokenMapped(address,address,bytes32)": TypedContractEvent; + TokenMapped: TypedContractEvent; + }; +} +//# sourceMappingURL=IRootChainManager.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/IRootChainManager.d.ts.map b/dist/types/contracts/@maticnetwork/IRootChainManager.d.ts.map new file mode 100644 index 00000000..ad07c70e --- /dev/null +++ b/dist/types/contracts/@maticnetwork/IRootChainManager.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IRootChainManager.d.ts","sourceRoot":"","sources":["../../../../types/contracts/@maticnetwork/IRootChainManager.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/IRootChainManager.js b/dist/types/contracts/@maticnetwork/IRootChainManager.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/IRootChainManager.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/RootChainManagerStorage.d.ts b/dist/types/contracts/@maticnetwork/RootChainManagerStorage.d.ts new file mode 100644 index 00000000..095489fa --- /dev/null +++ b/dist/types/contracts/@maticnetwork/RootChainManagerStorage.d.ts @@ -0,0 +1,30 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../common"; +export interface RootChainManagerStorageInterface extends Interface { + getFunction(nameOrSignature: "tokenToType" | "typeToPredicate"): FunctionFragment; + encodeFunctionData(functionFragment: "tokenToType", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "typeToPredicate", values: [BytesLike]): string; + decodeFunctionResult(functionFragment: "tokenToType", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "typeToPredicate", data: BytesLike): Result; +} +export interface RootChainManagerStorage extends BaseContract { + connect(runner?: ContractRunner | null): RootChainManagerStorage; + waitForDeployment(): Promise; + interface: RootChainManagerStorageInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + tokenToType: TypedContractMethod<[arg0: AddressLike], [string], "view">; + typeToPredicate: TypedContractMethod<[arg0: BytesLike], [string], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "tokenToType"): TypedContractMethod<[arg0: AddressLike], [string], "view">; + getFunction(nameOrSignature: "typeToPredicate"): TypedContractMethod<[arg0: BytesLike], [string], "view">; + filters: {}; +} +//# sourceMappingURL=RootChainManagerStorage.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/RootChainManagerStorage.d.ts.map b/dist/types/contracts/@maticnetwork/RootChainManagerStorage.d.ts.map new file mode 100644 index 00000000..5fd4b687 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/RootChainManagerStorage.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"RootChainManagerStorage.d.ts","sourceRoot":"","sources":["../../../../types/contracts/@maticnetwork/RootChainManagerStorage.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/RootChainManagerStorage.js b/dist/types/contracts/@maticnetwork/RootChainManagerStorage.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/RootChainManagerStorage.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/index.d.ts b/dist/types/contracts/@maticnetwork/index.d.ts new file mode 100644 index 00000000..a05b51cf --- /dev/null +++ b/dist/types/contracts/@maticnetwork/index.d.ts @@ -0,0 +1,7 @@ +import type * as posPortal from "./pos-portal"; +export type { posPortal }; +export type { IChildToken } from "./IChildToken"; +export type { IMintableERC721 } from "./IMintableERC721"; +export type { IRootChainManager } from "./IRootChainManager"; +export type { RootChainManagerStorage } from "./RootChainManagerStorage"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/index.d.ts.map b/dist/types/contracts/@maticnetwork/index.d.ts.map new file mode 100644 index 00000000..398f9578 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../types/contracts/@maticnetwork/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,SAAS,MAAM,cAAc,CAAC;AAC/C,YAAY,EAAE,SAAS,EAAE,CAAC;AAC1B,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,YAAY,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,YAAY,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,YAAY,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/index.js b/dist/types/contracts/@maticnetwork/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender.d.ts new file mode 100644 index 00000000..65ad8a7e --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender.d.ts @@ -0,0 +1,58 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; +export interface DummyStateSenderInterface extends Interface { + getFunction(nameOrSignature: "syncState"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "StateSynced"): EventFragment; + encodeFunctionData(functionFragment: "syncState", values: [AddressLike, BytesLike]): string; + decodeFunctionResult(functionFragment: "syncState", data: BytesLike): Result; +} +export declare namespace StateSyncedEvent { + type InputTuple = [ + id: BigNumberish, + contractAddress: AddressLike, + data: BytesLike + ]; + type OutputTuple = [id: bigint, contractAddress: string, data: string]; + interface OutputObject { + id: bigint; + contractAddress: string; + data: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface DummyStateSender extends BaseContract { + connect(runner?: ContractRunner | null): DummyStateSender; + waitForDeployment(): Promise; + interface: DummyStateSenderInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + syncState: TypedContractMethod<[ + receiver: AddressLike, + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "syncState"): TypedContractMethod<[ + receiver: AddressLike, + data: BytesLike + ], [ + void + ], "nonpayable">; + getEvent(key: "StateSynced"): TypedContractEvent; + filters: { + "StateSynced(uint256,address,bytes)": TypedContractEvent; + StateSynced: TypedContractEvent; + }; +} +//# sourceMappingURL=DummyStateSender.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender.d.ts.map new file mode 100644 index 00000000..8283d132 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"DummyStateSender.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender.js b/dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender.d.ts new file mode 100644 index 00000000..6b90b009 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender.d.ts @@ -0,0 +1,36 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; +export interface IStateSenderInterface extends Interface { + getFunction(nameOrSignature: "syncState"): FunctionFragment; + encodeFunctionData(functionFragment: "syncState", values: [AddressLike, BytesLike]): string; + decodeFunctionResult(functionFragment: "syncState", data: BytesLike): Result; +} +export interface IStateSender extends BaseContract { + connect(runner?: ContractRunner | null): IStateSender; + waitForDeployment(): Promise; + interface: IStateSenderInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + syncState: TypedContractMethod<[ + receiver: AddressLike, + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "syncState"): TypedContractMethod<[ + receiver: AddressLike, + data: BytesLike + ], [ + void + ], "nonpayable">; + filters: {}; +} +//# sourceMappingURL=IStateSender.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender.d.ts.map new file mode 100644 index 00000000..d861a5e5 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IStateSender.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender.js b/dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/index.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/index.d.ts new file mode 100644 index 00000000..ddeff45d --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/index.d.ts @@ -0,0 +1,3 @@ +export type { DummyStateSender } from "./DummyStateSender"; +export type { IStateSender } from "./IStateSender"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/index.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/index.d.ts.map new file mode 100644 index 00000000..6ad73602 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,YAAY,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/index.js b/dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl.d.ts new file mode 100644 index 00000000..9441ba76 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl.d.ts @@ -0,0 +1,170 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; +export interface AccessControlInterface extends Interface { + getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE" | "getRoleAdmin" | "getRoleMember" | "getRoleMemberCount" | "grantRole" | "hasRole" | "renounceRole" | "revokeRole"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "RoleAdminChanged" | "RoleGranted" | "RoleRevoked"): EventFragment; + encodeFunctionData(functionFragment: "DEFAULT_ADMIN_ROLE", values?: undefined): string; + encodeFunctionData(functionFragment: "getRoleAdmin", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "getRoleMember", values: [BytesLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "getRoleMemberCount", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "grantRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "hasRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "renounceRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "revokeRole", values: [BytesLike, AddressLike]): string; + decodeFunctionResult(functionFragment: "DEFAULT_ADMIN_ROLE", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getRoleAdmin", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getRoleMember", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getRoleMemberCount", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "grantRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "hasRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "revokeRole", data: BytesLike): Result; +} +export declare namespace RoleAdminChangedEvent { + type InputTuple = [ + role: BytesLike, + previousAdminRole: BytesLike, + newAdminRole: BytesLike + ]; + type OutputTuple = [ + role: string, + previousAdminRole: string, + newAdminRole: string + ]; + interface OutputObject { + role: string; + previousAdminRole: string; + newAdminRole: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RoleGrantedEvent { + type InputTuple = [ + role: BytesLike, + account: AddressLike, + sender: AddressLike + ]; + type OutputTuple = [role: string, account: string, sender: string]; + interface OutputObject { + role: string; + account: string; + sender: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RoleRevokedEvent { + type InputTuple = [ + role: BytesLike, + account: AddressLike, + sender: AddressLike + ]; + type OutputTuple = [role: string, account: string, sender: string]; + interface OutputObject { + role: string; + account: string; + sender: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface AccessControl extends BaseContract { + connect(runner?: ContractRunner | null): AccessControl; + waitForDeployment(): Promise; + interface: AccessControlInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + DEFAULT_ADMIN_ROLE: TypedContractMethod<[], [string], "view">; + getRoleAdmin: TypedContractMethod<[role: BytesLike], [string], "view">; + getRoleMember: TypedContractMethod<[ + role: BytesLike, + index: BigNumberish + ], [ + string + ], "view">; + getRoleMemberCount: TypedContractMethod<[role: BytesLike], [bigint], "view">; + grantRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + hasRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + boolean + ], "view">; + renounceRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + revokeRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "getRoleAdmin"): TypedContractMethod<[role: BytesLike], [string], "view">; + getFunction(nameOrSignature: "getRoleMember"): TypedContractMethod<[ + role: BytesLike, + index: BigNumberish + ], [ + string + ], "view">; + getFunction(nameOrSignature: "getRoleMemberCount"): TypedContractMethod<[role: BytesLike], [bigint], "view">; + getFunction(nameOrSignature: "grantRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "hasRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "renounceRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "revokeRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getEvent(key: "RoleAdminChanged"): TypedContractEvent; + getEvent(key: "RoleGranted"): TypedContractEvent; + getEvent(key: "RoleRevoked"): TypedContractEvent; + filters: { + "RoleAdminChanged(bytes32,bytes32,bytes32)": TypedContractEvent; + RoleAdminChanged: TypedContractEvent; + "RoleGranted(bytes32,address,address)": TypedContractEvent; + RoleGranted: TypedContractEvent; + "RoleRevoked(bytes32,address,address)": TypedContractEvent; + RoleRevoked: TypedContractEvent; + }; +} +//# sourceMappingURL=AccessControl.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl.d.ts.map new file mode 100644 index 00000000..950a455f --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"AccessControl.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl.js b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin.d.ts new file mode 100644 index 00000000..09e1c5e0 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin.d.ts @@ -0,0 +1,170 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; +export interface AccessControlMixinInterface extends Interface { + getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE" | "getRoleAdmin" | "getRoleMember" | "getRoleMemberCount" | "grantRole" | "hasRole" | "renounceRole" | "revokeRole"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "RoleAdminChanged" | "RoleGranted" | "RoleRevoked"): EventFragment; + encodeFunctionData(functionFragment: "DEFAULT_ADMIN_ROLE", values?: undefined): string; + encodeFunctionData(functionFragment: "getRoleAdmin", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "getRoleMember", values: [BytesLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "getRoleMemberCount", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "grantRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "hasRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "renounceRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "revokeRole", values: [BytesLike, AddressLike]): string; + decodeFunctionResult(functionFragment: "DEFAULT_ADMIN_ROLE", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getRoleAdmin", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getRoleMember", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getRoleMemberCount", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "grantRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "hasRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "revokeRole", data: BytesLike): Result; +} +export declare namespace RoleAdminChangedEvent { + type InputTuple = [ + role: BytesLike, + previousAdminRole: BytesLike, + newAdminRole: BytesLike + ]; + type OutputTuple = [ + role: string, + previousAdminRole: string, + newAdminRole: string + ]; + interface OutputObject { + role: string; + previousAdminRole: string; + newAdminRole: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RoleGrantedEvent { + type InputTuple = [ + role: BytesLike, + account: AddressLike, + sender: AddressLike + ]; + type OutputTuple = [role: string, account: string, sender: string]; + interface OutputObject { + role: string; + account: string; + sender: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RoleRevokedEvent { + type InputTuple = [ + role: BytesLike, + account: AddressLike, + sender: AddressLike + ]; + type OutputTuple = [role: string, account: string, sender: string]; + interface OutputObject { + role: string; + account: string; + sender: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface AccessControlMixin extends BaseContract { + connect(runner?: ContractRunner | null): AccessControlMixin; + waitForDeployment(): Promise; + interface: AccessControlMixinInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + DEFAULT_ADMIN_ROLE: TypedContractMethod<[], [string], "view">; + getRoleAdmin: TypedContractMethod<[role: BytesLike], [string], "view">; + getRoleMember: TypedContractMethod<[ + role: BytesLike, + index: BigNumberish + ], [ + string + ], "view">; + getRoleMemberCount: TypedContractMethod<[role: BytesLike], [bigint], "view">; + grantRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + hasRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + boolean + ], "view">; + renounceRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + revokeRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "getRoleAdmin"): TypedContractMethod<[role: BytesLike], [string], "view">; + getFunction(nameOrSignature: "getRoleMember"): TypedContractMethod<[ + role: BytesLike, + index: BigNumberish + ], [ + string + ], "view">; + getFunction(nameOrSignature: "getRoleMemberCount"): TypedContractMethod<[role: BytesLike], [bigint], "view">; + getFunction(nameOrSignature: "grantRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "hasRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "renounceRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "revokeRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getEvent(key: "RoleAdminChanged"): TypedContractEvent; + getEvent(key: "RoleGranted"): TypedContractEvent; + getEvent(key: "RoleRevoked"): TypedContractEvent; + filters: { + "RoleAdminChanged(bytes32,bytes32,bytes32)": TypedContractEvent; + RoleAdminChanged: TypedContractEvent; + "RoleGranted(bytes32,address,address)": TypedContractEvent; + RoleGranted: TypedContractEvent; + "RoleRevoked(bytes32,address,address)": TypedContractEvent; + RoleRevoked: TypedContractEvent; + }; +} +//# sourceMappingURL=AccessControlMixin.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin.d.ts.map new file mode 100644 index 00000000..2f81d87b --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"AccessControlMixin.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin.js b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC165.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC165.d.ts new file mode 100644 index 00000000..f8dd5082 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC165.d.ts @@ -0,0 +1,30 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; +export interface IERC165Interface extends Interface { + getFunction(nameOrSignature: "supportsInterface"): FunctionFragment; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; +} +export interface IERC165 extends BaseContract { + connect(runner?: ContractRunner | null): IERC165; + waitForDeployment(): Promise; + interface: IERC165Interface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + filters: {}; +} +//# sourceMappingURL=IERC165.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC165.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC165.d.ts.map new file mode 100644 index 00000000..6e6f9aa5 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC165.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC165.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC165.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC165.js b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC165.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC165.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721.d.ts new file mode 100644 index 00000000..b2f0a5c7 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721.d.ts @@ -0,0 +1,200 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; +export interface IERC721Interface extends Interface { + getFunction(nameOrSignature: "approve" | "balanceOf" | "getApproved" | "isApprovedForAll" | "ownerOf" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "setApprovalForAll" | "supportsInterface" | "transferFrom"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "Transfer"): EventFragment; + encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; + decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; +} +export declare namespace ApprovalEvent { + type InputTuple = [ + owner: AddressLike, + approved: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [owner: string, approved: string, tokenId: bigint]; + interface OutputObject { + owner: string; + approved: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ApprovalForAllEvent { + type InputTuple = [ + owner: AddressLike, + operator: AddressLike, + approved: boolean + ]; + type OutputTuple = [ + owner: string, + operator: string, + approved: boolean + ]; + interface OutputObject { + owner: string; + operator: string; + approved: boolean; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferEvent { + type InputTuple = [ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [from: string, to: string, tokenId: bigint]; + interface OutputObject { + from: string; + to: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface IERC721 extends BaseContract { + connect(runner?: ContractRunner | null): IERC721; + waitForDeployment(): Promise; + interface: IERC721Interface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + approve: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; + getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + isApprovedForAll: TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + setApprovalForAll: TypedContractMethod<[ + operator: AddressLike, + _approved: boolean + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + transferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "approve"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; + getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ + operator: AddressLike, + _approved: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getEvent(key: "Approval"): TypedContractEvent; + getEvent(key: "ApprovalForAll"): TypedContractEvent; + getEvent(key: "Transfer"): TypedContractEvent; + filters: { + "Approval(address,address,uint256)": TypedContractEvent; + Approval: TypedContractEvent; + "ApprovalForAll(address,address,bool)": TypedContractEvent; + ApprovalForAll: TypedContractEvent; + "Transfer(address,address,uint256)": TypedContractEvent; + Transfer: TypedContractEvent; + }; +} +//# sourceMappingURL=IERC721.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721.d.ts.map new file mode 100644 index 00000000..d5e03d36 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC721.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721.js b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721Receiver.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721Receiver.d.ts new file mode 100644 index 00000000..12d740ba --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721Receiver.d.ts @@ -0,0 +1,40 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; +export interface IERC721ReceiverInterface extends Interface { + getFunction(nameOrSignature: "onERC721Received"): FunctionFragment; + encodeFunctionData(functionFragment: "onERC721Received", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; + decodeFunctionResult(functionFragment: "onERC721Received", data: BytesLike): Result; +} +export interface IERC721Receiver extends BaseContract { + connect(runner?: ContractRunner | null): IERC721Receiver; + waitForDeployment(): Promise; + interface: IERC721ReceiverInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + onERC721Received: TypedContractMethod<[ + operator: AddressLike, + from: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + string + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "onERC721Received"): TypedContractMethod<[ + operator: AddressLike, + from: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + string + ], "nonpayable">; + filters: {}; +} +//# sourceMappingURL=IERC721Receiver.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721Receiver.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721Receiver.d.ts.map new file mode 100644 index 00000000..733678db --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721Receiver.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC721Receiver.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721Receiver.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721Receiver.js b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721Receiver.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721Receiver.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IMintableERC721.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IMintableERC721.d.ts new file mode 100644 index 00000000..fdfbc7c6 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IMintableERC721.d.ts @@ -0,0 +1,234 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; +export interface IMintableERC721Interface extends Interface { + getFunction(nameOrSignature: "approve" | "balanceOf" | "exists" | "getApproved" | "isApprovedForAll" | "mint(address,uint256)" | "mint(address,uint256,bytes)" | "ownerOf" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "setApprovalForAll" | "supportsInterface" | "transferFrom"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "Transfer"): EventFragment; + encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "exists", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "mint(address,uint256)", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "mint(address,uint256,bytes)", values: [AddressLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; + decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "exists", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "mint(address,uint256)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "mint(address,uint256,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; +} +export declare namespace ApprovalEvent { + type InputTuple = [ + owner: AddressLike, + approved: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [owner: string, approved: string, tokenId: bigint]; + interface OutputObject { + owner: string; + approved: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ApprovalForAllEvent { + type InputTuple = [ + owner: AddressLike, + operator: AddressLike, + approved: boolean + ]; + type OutputTuple = [ + owner: string, + operator: string, + approved: boolean + ]; + interface OutputObject { + owner: string; + operator: string; + approved: boolean; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferEvent { + type InputTuple = [ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [from: string, to: string, tokenId: bigint]; + interface OutputObject { + from: string; + to: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface IMintableERC721 extends BaseContract { + connect(runner?: ContractRunner | null): IMintableERC721; + waitForDeployment(): Promise; + interface: IMintableERC721Interface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + approve: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; + exists: TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; + getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + isApprovedForAll: TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + "mint(address,uint256)": TypedContractMethod<[ + user: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + "mint(address,uint256,bytes)": TypedContractMethod<[ + user: AddressLike, + tokenId: BigNumberish, + metaData: BytesLike + ], [ + void + ], "nonpayable">; + ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + setApprovalForAll: TypedContractMethod<[ + operator: AddressLike, + _approved: boolean + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + transferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "approve"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; + getFunction(nameOrSignature: "exists"): TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; + getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "mint(address,uint256)"): TypedContractMethod<[ + user: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "mint(address,uint256,bytes)"): TypedContractMethod<[ + user: AddressLike, + tokenId: BigNumberish, + metaData: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ + operator: AddressLike, + _approved: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getEvent(key: "Approval"): TypedContractEvent; + getEvent(key: "ApprovalForAll"): TypedContractEvent; + getEvent(key: "Transfer"): TypedContractEvent; + filters: { + "Approval(address,address,uint256)": TypedContractEvent; + Approval: TypedContractEvent; + "ApprovalForAll(address,address,bool)": TypedContractEvent; + ApprovalForAll: TypedContractEvent; + "Transfer(address,address,uint256)": TypedContractEvent; + Transfer: TypedContractEvent; + }; +} +//# sourceMappingURL=IMintableERC721.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IMintableERC721.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IMintableERC721.d.ts.map new file mode 100644 index 00000000..286b0bd9 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IMintableERC721.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IMintableERC721.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IMintableERC721.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IMintableERC721.js b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IMintableERC721.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IMintableERC721.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate.d.ts new file mode 100644 index 00000000..215a3764 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate.d.ts @@ -0,0 +1,56 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; +export interface ITokenPredicateInterface extends Interface { + getFunction(nameOrSignature: "exitTokens" | "lockTokens"): FunctionFragment; + encodeFunctionData(functionFragment: "exitTokens", values: [AddressLike, AddressLike, BytesLike]): string; + encodeFunctionData(functionFragment: "lockTokens", values: [AddressLike, AddressLike, AddressLike, BytesLike]): string; + decodeFunctionResult(functionFragment: "exitTokens", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "lockTokens", data: BytesLike): Result; +} +export interface ITokenPredicate extends BaseContract { + connect(runner?: ContractRunner | null): ITokenPredicate; + waitForDeployment(): Promise; + interface: ITokenPredicateInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + exitTokens: TypedContractMethod<[ + sender: AddressLike, + rootToken: AddressLike, + logRLPList: BytesLike + ], [ + void + ], "nonpayable">; + lockTokens: TypedContractMethod<[ + depositor: AddressLike, + depositReceiver: AddressLike, + rootToken: AddressLike, + depositData: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "exitTokens"): TypedContractMethod<[ + sender: AddressLike, + rootToken: AddressLike, + logRLPList: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "lockTokens"): TypedContractMethod<[ + depositor: AddressLike, + depositReceiver: AddressLike, + rootToken: AddressLike, + depositData: BytesLike + ], [ + void + ], "nonpayable">; + filters: {}; +} +//# sourceMappingURL=ITokenPredicate.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate.d.ts.map new file mode 100644 index 00000000..d2abb346 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ITokenPredicate.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate.js b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate.d.ts new file mode 100644 index 00000000..9cb9ea59 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate.d.ts @@ -0,0 +1,304 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; +export interface MintableERC721PredicateInterface extends Interface { + getFunction(nameOrSignature: "BATCH_LIMIT" | "DEFAULT_ADMIN_ROLE" | "MANAGER_ROLE" | "TOKEN_TYPE" | "TRANSFER_EVENT_SIG" | "TRANSFER_WITH_METADATA_EVENT_SIG" | "WITHDRAW_BATCH_EVENT_SIG" | "exitTokens" | "getRoleAdmin" | "getRoleMember" | "getRoleMemberCount" | "grantRole" | "hasRole" | "initialize" | "lockTokens" | "onERC721Received" | "renounceRole" | "revokeRole"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "LockedMintableERC721" | "LockedMintableERC721Batch" | "RoleAdminChanged" | "RoleGranted" | "RoleRevoked"): EventFragment; + encodeFunctionData(functionFragment: "BATCH_LIMIT", values?: undefined): string; + encodeFunctionData(functionFragment: "DEFAULT_ADMIN_ROLE", values?: undefined): string; + encodeFunctionData(functionFragment: "MANAGER_ROLE", values?: undefined): string; + encodeFunctionData(functionFragment: "TOKEN_TYPE", values?: undefined): string; + encodeFunctionData(functionFragment: "TRANSFER_EVENT_SIG", values?: undefined): string; + encodeFunctionData(functionFragment: "TRANSFER_WITH_METADATA_EVENT_SIG", values?: undefined): string; + encodeFunctionData(functionFragment: "WITHDRAW_BATCH_EVENT_SIG", values?: undefined): string; + encodeFunctionData(functionFragment: "exitTokens", values: [AddressLike, AddressLike, BytesLike]): string; + encodeFunctionData(functionFragment: "getRoleAdmin", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "getRoleMember", values: [BytesLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "getRoleMemberCount", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "grantRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "hasRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "initialize", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "lockTokens", values: [AddressLike, AddressLike, AddressLike, BytesLike]): string; + encodeFunctionData(functionFragment: "onERC721Received", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "renounceRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "revokeRole", values: [BytesLike, AddressLike]): string; + decodeFunctionResult(functionFragment: "BATCH_LIMIT", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "DEFAULT_ADMIN_ROLE", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "MANAGER_ROLE", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "TOKEN_TYPE", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "TRANSFER_EVENT_SIG", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "TRANSFER_WITH_METADATA_EVENT_SIG", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "WITHDRAW_BATCH_EVENT_SIG", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "exitTokens", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getRoleAdmin", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getRoleMember", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getRoleMemberCount", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "grantRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "hasRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "lockTokens", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "onERC721Received", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "revokeRole", data: BytesLike): Result; +} +export declare namespace LockedMintableERC721Event { + type InputTuple = [ + depositor: AddressLike, + depositReceiver: AddressLike, + rootToken: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [ + depositor: string, + depositReceiver: string, + rootToken: string, + tokenId: bigint + ]; + interface OutputObject { + depositor: string; + depositReceiver: string; + rootToken: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace LockedMintableERC721BatchEvent { + type InputTuple = [ + depositor: AddressLike, + depositReceiver: AddressLike, + rootToken: AddressLike, + tokenIds: BigNumberish[] + ]; + type OutputTuple = [ + depositor: string, + depositReceiver: string, + rootToken: string, + tokenIds: bigint[] + ]; + interface OutputObject { + depositor: string; + depositReceiver: string; + rootToken: string; + tokenIds: bigint[]; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RoleAdminChangedEvent { + type InputTuple = [ + role: BytesLike, + previousAdminRole: BytesLike, + newAdminRole: BytesLike + ]; + type OutputTuple = [ + role: string, + previousAdminRole: string, + newAdminRole: string + ]; + interface OutputObject { + role: string; + previousAdminRole: string; + newAdminRole: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RoleGrantedEvent { + type InputTuple = [ + role: BytesLike, + account: AddressLike, + sender: AddressLike + ]; + type OutputTuple = [role: string, account: string, sender: string]; + interface OutputObject { + role: string; + account: string; + sender: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RoleRevokedEvent { + type InputTuple = [ + role: BytesLike, + account: AddressLike, + sender: AddressLike + ]; + type OutputTuple = [role: string, account: string, sender: string]; + interface OutputObject { + role: string; + account: string; + sender: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface MintableERC721Predicate extends BaseContract { + connect(runner?: ContractRunner | null): MintableERC721Predicate; + waitForDeployment(): Promise; + interface: MintableERC721PredicateInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + BATCH_LIMIT: TypedContractMethod<[], [bigint], "view">; + DEFAULT_ADMIN_ROLE: TypedContractMethod<[], [string], "view">; + MANAGER_ROLE: TypedContractMethod<[], [string], "view">; + TOKEN_TYPE: TypedContractMethod<[], [string], "view">; + TRANSFER_EVENT_SIG: TypedContractMethod<[], [string], "view">; + TRANSFER_WITH_METADATA_EVENT_SIG: TypedContractMethod<[], [string], "view">; + WITHDRAW_BATCH_EVENT_SIG: TypedContractMethod<[], [string], "view">; + exitTokens: TypedContractMethod<[ + arg0: AddressLike, + rootToken: AddressLike, + log: BytesLike + ], [ + void + ], "nonpayable">; + getRoleAdmin: TypedContractMethod<[role: BytesLike], [string], "view">; + getRoleMember: TypedContractMethod<[ + role: BytesLike, + index: BigNumberish + ], [ + string + ], "view">; + getRoleMemberCount: TypedContractMethod<[role: BytesLike], [bigint], "view">; + grantRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + hasRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + boolean + ], "view">; + initialize: TypedContractMethod<[_owner: AddressLike], [void], "nonpayable">; + lockTokens: TypedContractMethod<[ + depositor: AddressLike, + depositReceiver: AddressLike, + rootToken: AddressLike, + depositData: BytesLike + ], [ + void + ], "nonpayable">; + onERC721Received: TypedContractMethod<[ + arg0: AddressLike, + arg1: AddressLike, + arg2: BigNumberish, + arg3: BytesLike + ], [ + string + ], "nonpayable">; + renounceRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + revokeRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "BATCH_LIMIT"): TypedContractMethod<[], [bigint], "view">; + getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "MANAGER_ROLE"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "TOKEN_TYPE"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "TRANSFER_EVENT_SIG"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "TRANSFER_WITH_METADATA_EVENT_SIG"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "WITHDRAW_BATCH_EVENT_SIG"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "exitTokens"): TypedContractMethod<[ + arg0: AddressLike, + rootToken: AddressLike, + log: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "getRoleAdmin"): TypedContractMethod<[role: BytesLike], [string], "view">; + getFunction(nameOrSignature: "getRoleMember"): TypedContractMethod<[ + role: BytesLike, + index: BigNumberish + ], [ + string + ], "view">; + getFunction(nameOrSignature: "getRoleMemberCount"): TypedContractMethod<[role: BytesLike], [bigint], "view">; + getFunction(nameOrSignature: "grantRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "hasRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "initialize"): TypedContractMethod<[_owner: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "lockTokens"): TypedContractMethod<[ + depositor: AddressLike, + depositReceiver: AddressLike, + rootToken: AddressLike, + depositData: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "onERC721Received"): TypedContractMethod<[ + arg0: AddressLike, + arg1: AddressLike, + arg2: BigNumberish, + arg3: BytesLike + ], [ + string + ], "nonpayable">; + getFunction(nameOrSignature: "renounceRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "revokeRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getEvent(key: "LockedMintableERC721"): TypedContractEvent; + getEvent(key: "LockedMintableERC721Batch"): TypedContractEvent; + getEvent(key: "RoleAdminChanged"): TypedContractEvent; + getEvent(key: "RoleGranted"): TypedContractEvent; + getEvent(key: "RoleRevoked"): TypedContractEvent; + filters: { + "LockedMintableERC721(address,address,address,uint256)": TypedContractEvent; + LockedMintableERC721: TypedContractEvent; + "LockedMintableERC721Batch(address,address,address,uint256[])": TypedContractEvent; + LockedMintableERC721Batch: TypedContractEvent; + "RoleAdminChanged(bytes32,bytes32,bytes32)": TypedContractEvent; + RoleAdminChanged: TypedContractEvent; + "RoleGranted(bytes32,address,address)": TypedContractEvent; + RoleGranted: TypedContractEvent; + "RoleRevoked(bytes32,address,address)": TypedContractEvent; + RoleRevoked: TypedContractEvent; + }; +} +//# sourceMappingURL=MintableERC721Predicate.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate.d.ts.map new file mode 100644 index 00000000..c267f2df --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"MintableERC721Predicate.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate.js b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/index.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/index.d.ts new file mode 100644 index 00000000..a4557504 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/index.d.ts @@ -0,0 +1,9 @@ +export type { AccessControl } from "./AccessControl"; +export type { AccessControlMixin } from "./AccessControlMixin"; +export type { IERC165 } from "./IERC165"; +export type { IERC721 } from "./IERC721"; +export type { IERC721Receiver } from "./IERC721Receiver"; +export type { IMintableERC721 } from "./IMintableERC721"; +export type { ITokenPredicate } from "./ITokenPredicate"; +export type { MintableERC721Predicate } from "./MintableERC721Predicate"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/index.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/index.d.ts.map new file mode 100644 index 00000000..e0dbf6fb --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,YAAY,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,YAAY,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,YAAY,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,YAAY,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,YAAY,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,YAAY,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,YAAY,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/index.js b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControl.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControl.d.ts new file mode 100644 index 00000000..9441ba76 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControl.d.ts @@ -0,0 +1,170 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; +export interface AccessControlInterface extends Interface { + getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE" | "getRoleAdmin" | "getRoleMember" | "getRoleMemberCount" | "grantRole" | "hasRole" | "renounceRole" | "revokeRole"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "RoleAdminChanged" | "RoleGranted" | "RoleRevoked"): EventFragment; + encodeFunctionData(functionFragment: "DEFAULT_ADMIN_ROLE", values?: undefined): string; + encodeFunctionData(functionFragment: "getRoleAdmin", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "getRoleMember", values: [BytesLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "getRoleMemberCount", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "grantRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "hasRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "renounceRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "revokeRole", values: [BytesLike, AddressLike]): string; + decodeFunctionResult(functionFragment: "DEFAULT_ADMIN_ROLE", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getRoleAdmin", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getRoleMember", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getRoleMemberCount", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "grantRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "hasRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "revokeRole", data: BytesLike): Result; +} +export declare namespace RoleAdminChangedEvent { + type InputTuple = [ + role: BytesLike, + previousAdminRole: BytesLike, + newAdminRole: BytesLike + ]; + type OutputTuple = [ + role: string, + previousAdminRole: string, + newAdminRole: string + ]; + interface OutputObject { + role: string; + previousAdminRole: string; + newAdminRole: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RoleGrantedEvent { + type InputTuple = [ + role: BytesLike, + account: AddressLike, + sender: AddressLike + ]; + type OutputTuple = [role: string, account: string, sender: string]; + interface OutputObject { + role: string; + account: string; + sender: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RoleRevokedEvent { + type InputTuple = [ + role: BytesLike, + account: AddressLike, + sender: AddressLike + ]; + type OutputTuple = [role: string, account: string, sender: string]; + interface OutputObject { + role: string; + account: string; + sender: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface AccessControl extends BaseContract { + connect(runner?: ContractRunner | null): AccessControl; + waitForDeployment(): Promise; + interface: AccessControlInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + DEFAULT_ADMIN_ROLE: TypedContractMethod<[], [string], "view">; + getRoleAdmin: TypedContractMethod<[role: BytesLike], [string], "view">; + getRoleMember: TypedContractMethod<[ + role: BytesLike, + index: BigNumberish + ], [ + string + ], "view">; + getRoleMemberCount: TypedContractMethod<[role: BytesLike], [bigint], "view">; + grantRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + hasRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + boolean + ], "view">; + renounceRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + revokeRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "getRoleAdmin"): TypedContractMethod<[role: BytesLike], [string], "view">; + getFunction(nameOrSignature: "getRoleMember"): TypedContractMethod<[ + role: BytesLike, + index: BigNumberish + ], [ + string + ], "view">; + getFunction(nameOrSignature: "getRoleMemberCount"): TypedContractMethod<[role: BytesLike], [bigint], "view">; + getFunction(nameOrSignature: "grantRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "hasRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "renounceRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "revokeRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getEvent(key: "RoleAdminChanged"): TypedContractEvent; + getEvent(key: "RoleGranted"): TypedContractEvent; + getEvent(key: "RoleRevoked"): TypedContractEvent; + filters: { + "RoleAdminChanged(bytes32,bytes32,bytes32)": TypedContractEvent; + RoleAdminChanged: TypedContractEvent; + "RoleGranted(bytes32,address,address)": TypedContractEvent; + RoleGranted: TypedContractEvent; + "RoleRevoked(bytes32,address,address)": TypedContractEvent; + RoleRevoked: TypedContractEvent; + }; +} +//# sourceMappingURL=AccessControl.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControl.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControl.d.ts.map new file mode 100644 index 00000000..baf6ef83 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControl.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"AccessControl.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControl.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControl.js b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControl.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControl.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControlMixin.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControlMixin.d.ts new file mode 100644 index 00000000..09e1c5e0 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControlMixin.d.ts @@ -0,0 +1,170 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; +export interface AccessControlMixinInterface extends Interface { + getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE" | "getRoleAdmin" | "getRoleMember" | "getRoleMemberCount" | "grantRole" | "hasRole" | "renounceRole" | "revokeRole"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "RoleAdminChanged" | "RoleGranted" | "RoleRevoked"): EventFragment; + encodeFunctionData(functionFragment: "DEFAULT_ADMIN_ROLE", values?: undefined): string; + encodeFunctionData(functionFragment: "getRoleAdmin", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "getRoleMember", values: [BytesLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "getRoleMemberCount", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "grantRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "hasRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "renounceRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "revokeRole", values: [BytesLike, AddressLike]): string; + decodeFunctionResult(functionFragment: "DEFAULT_ADMIN_ROLE", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getRoleAdmin", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getRoleMember", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getRoleMemberCount", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "grantRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "hasRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "revokeRole", data: BytesLike): Result; +} +export declare namespace RoleAdminChangedEvent { + type InputTuple = [ + role: BytesLike, + previousAdminRole: BytesLike, + newAdminRole: BytesLike + ]; + type OutputTuple = [ + role: string, + previousAdminRole: string, + newAdminRole: string + ]; + interface OutputObject { + role: string; + previousAdminRole: string; + newAdminRole: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RoleGrantedEvent { + type InputTuple = [ + role: BytesLike, + account: AddressLike, + sender: AddressLike + ]; + type OutputTuple = [role: string, account: string, sender: string]; + interface OutputObject { + role: string; + account: string; + sender: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RoleRevokedEvent { + type InputTuple = [ + role: BytesLike, + account: AddressLike, + sender: AddressLike + ]; + type OutputTuple = [role: string, account: string, sender: string]; + interface OutputObject { + role: string; + account: string; + sender: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface AccessControlMixin extends BaseContract { + connect(runner?: ContractRunner | null): AccessControlMixin; + waitForDeployment(): Promise; + interface: AccessControlMixinInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + DEFAULT_ADMIN_ROLE: TypedContractMethod<[], [string], "view">; + getRoleAdmin: TypedContractMethod<[role: BytesLike], [string], "view">; + getRoleMember: TypedContractMethod<[ + role: BytesLike, + index: BigNumberish + ], [ + string + ], "view">; + getRoleMemberCount: TypedContractMethod<[role: BytesLike], [bigint], "view">; + grantRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + hasRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + boolean + ], "view">; + renounceRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + revokeRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "getRoleAdmin"): TypedContractMethod<[role: BytesLike], [string], "view">; + getFunction(nameOrSignature: "getRoleMember"): TypedContractMethod<[ + role: BytesLike, + index: BigNumberish + ], [ + string + ], "view">; + getFunction(nameOrSignature: "getRoleMemberCount"): TypedContractMethod<[role: BytesLike], [bigint], "view">; + getFunction(nameOrSignature: "grantRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "hasRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "renounceRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "revokeRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getEvent(key: "RoleAdminChanged"): TypedContractEvent; + getEvent(key: "RoleGranted"): TypedContractEvent; + getEvent(key: "RoleRevoked"): TypedContractEvent; + filters: { + "RoleAdminChanged(bytes32,bytes32,bytes32)": TypedContractEvent; + RoleAdminChanged: TypedContractEvent; + "RoleGranted(bytes32,address,address)": TypedContractEvent; + RoleGranted: TypedContractEvent; + "RoleRevoked(bytes32,address,address)": TypedContractEvent; + RoleRevoked: TypedContractEvent; + }; +} +//# sourceMappingURL=AccessControlMixin.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControlMixin.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControlMixin.d.ts.map new file mode 100644 index 00000000..ebb9c605 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControlMixin.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"AccessControlMixin.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControlMixin.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControlMixin.js b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControlMixin.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControlMixin.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base.d.ts new file mode 100644 index 00000000..b3f24632 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base.d.ts @@ -0,0 +1,34 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; +export interface EIP712BaseInterface extends Interface { + getFunction(nameOrSignature: "ERC712_VERSION" | "getChainId" | "getDomainSeperator"): FunctionFragment; + encodeFunctionData(functionFragment: "ERC712_VERSION", values?: undefined): string; + encodeFunctionData(functionFragment: "getChainId", values?: undefined): string; + encodeFunctionData(functionFragment: "getDomainSeperator", values?: undefined): string; + decodeFunctionResult(functionFragment: "ERC712_VERSION", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getChainId", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getDomainSeperator", data: BytesLike): Result; +} +export interface EIP712Base extends BaseContract { + connect(runner?: ContractRunner | null): EIP712Base; + waitForDeployment(): Promise; + interface: EIP712BaseInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + ERC712_VERSION: TypedContractMethod<[], [string], "view">; + getChainId: TypedContractMethod<[], [bigint], "view">; + getDomainSeperator: TypedContractMethod<[], [string], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "ERC712_VERSION"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "getChainId"): TypedContractMethod<[], [bigint], "view">; + getFunction(nameOrSignature: "getDomainSeperator"): TypedContractMethod<[], [string], "view">; + filters: {}; +} +//# sourceMappingURL=EIP712Base.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base.d.ts.map new file mode 100644 index 00000000..68563cde --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"EIP712Base.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base.js b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager.d.ts new file mode 100644 index 00000000..8670ed7c --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager.d.ts @@ -0,0 +1,58 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; +export interface ICheckpointManagerInterface extends Interface { + getFunction(nameOrSignature: "headerBlocks"): FunctionFragment; + encodeFunctionData(functionFragment: "headerBlocks", values: [BigNumberish]): string; + decodeFunctionResult(functionFragment: "headerBlocks", data: BytesLike): Result; +} +export interface ICheckpointManager extends BaseContract { + connect(runner?: ContractRunner | null): ICheckpointManager; + waitForDeployment(): Promise; + interface: ICheckpointManagerInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + headerBlocks: TypedContractMethod<[ + arg0: BigNumberish + ], [ + [ + string, + bigint, + bigint, + bigint, + string + ] & { + root: string; + start: bigint; + end: bigint; + createdAt: bigint; + proposer: string; + } + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "headerBlocks"): TypedContractMethod<[ + arg0: BigNumberish + ], [ + [ + string, + bigint, + bigint, + bigint, + string + ] & { + root: string; + start: bigint; + end: bigint; + createdAt: bigint; + proposer: string; + } + ], "view">; + filters: {}; +} +//# sourceMappingURL=ICheckpointManager.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager.d.ts.map new file mode 100644 index 00000000..f3daf9f0 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ICheckpointManager.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager.js b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IRootChainManager.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IRootChainManager.d.ts new file mode 100644 index 00000000..4231a9cc --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IRootChainManager.d.ts @@ -0,0 +1,150 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; +export interface IRootChainManagerInterface extends Interface { + getFunction(nameOrSignature: "cleanMapToken" | "depositEtherFor" | "depositFor" | "exit" | "mapToken" | "registerPredicate" | "remapToken"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "PredicateRegistered" | "TokenMapped"): EventFragment; + encodeFunctionData(functionFragment: "cleanMapToken", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "depositEtherFor", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "depositFor", values: [AddressLike, AddressLike, BytesLike]): string; + encodeFunctionData(functionFragment: "exit", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "mapToken", values: [AddressLike, AddressLike, BytesLike]): string; + encodeFunctionData(functionFragment: "registerPredicate", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "remapToken", values: [AddressLike, AddressLike, BytesLike]): string; + decodeFunctionResult(functionFragment: "cleanMapToken", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "depositEtherFor", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "depositFor", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "exit", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "mapToken", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "registerPredicate", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "remapToken", data: BytesLike): Result; +} +export declare namespace PredicateRegisteredEvent { + type InputTuple = [ + tokenType: BytesLike, + predicateAddress: AddressLike + ]; + type OutputTuple = [tokenType: string, predicateAddress: string]; + interface OutputObject { + tokenType: string; + predicateAddress: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TokenMappedEvent { + type InputTuple = [ + rootToken: AddressLike, + childToken: AddressLike, + tokenType: BytesLike + ]; + type OutputTuple = [ + rootToken: string, + childToken: string, + tokenType: string + ]; + interface OutputObject { + rootToken: string; + childToken: string; + tokenType: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface IRootChainManager extends BaseContract { + connect(runner?: ContractRunner | null): IRootChainManager; + waitForDeployment(): Promise; + interface: IRootChainManagerInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + cleanMapToken: TypedContractMethod<[ + rootToken: AddressLike, + childToken: AddressLike + ], [ + void + ], "nonpayable">; + depositEtherFor: TypedContractMethod<[user: AddressLike], [void], "payable">; + depositFor: TypedContractMethod<[ + user: AddressLike, + rootToken: AddressLike, + depositData: BytesLike + ], [ + void + ], "nonpayable">; + exit: TypedContractMethod<[inputData: BytesLike], [void], "nonpayable">; + mapToken: TypedContractMethod<[ + rootToken: AddressLike, + childToken: AddressLike, + tokenType: BytesLike + ], [ + void + ], "nonpayable">; + registerPredicate: TypedContractMethod<[ + tokenType: BytesLike, + predicateAddress: AddressLike + ], [ + void + ], "nonpayable">; + remapToken: TypedContractMethod<[ + rootToken: AddressLike, + childToken: AddressLike, + tokenType: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "cleanMapToken"): TypedContractMethod<[ + rootToken: AddressLike, + childToken: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "depositEtherFor"): TypedContractMethod<[user: AddressLike], [void], "payable">; + getFunction(nameOrSignature: "depositFor"): TypedContractMethod<[ + user: AddressLike, + rootToken: AddressLike, + depositData: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "exit"): TypedContractMethod<[inputData: BytesLike], [void], "nonpayable">; + getFunction(nameOrSignature: "mapToken"): TypedContractMethod<[ + rootToken: AddressLike, + childToken: AddressLike, + tokenType: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "registerPredicate"): TypedContractMethod<[ + tokenType: BytesLike, + predicateAddress: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "remapToken"): TypedContractMethod<[ + rootToken: AddressLike, + childToken: AddressLike, + tokenType: BytesLike + ], [ + void + ], "nonpayable">; + getEvent(key: "PredicateRegistered"): TypedContractEvent; + getEvent(key: "TokenMapped"): TypedContractEvent; + filters: { + "PredicateRegistered(bytes32,address)": TypedContractEvent; + PredicateRegistered: TypedContractEvent; + "TokenMapped(address,address,bytes32)": TypedContractEvent; + TokenMapped: TypedContractEvent; + }; +} +//# sourceMappingURL=IRootChainManager.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IRootChainManager.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IRootChainManager.d.ts.map new file mode 100644 index 00000000..3c55c619 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IRootChainManager.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IRootChainManager.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IRootChainManager.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IRootChainManager.js b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IRootChainManager.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IRootChainManager.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IStateSender.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IStateSender.d.ts new file mode 100644 index 00000000..6b90b009 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IStateSender.d.ts @@ -0,0 +1,36 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; +export interface IStateSenderInterface extends Interface { + getFunction(nameOrSignature: "syncState"): FunctionFragment; + encodeFunctionData(functionFragment: "syncState", values: [AddressLike, BytesLike]): string; + decodeFunctionResult(functionFragment: "syncState", data: BytesLike): Result; +} +export interface IStateSender extends BaseContract { + connect(runner?: ContractRunner | null): IStateSender; + waitForDeployment(): Promise; + interface: IStateSenderInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + syncState: TypedContractMethod<[ + receiver: AddressLike, + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "syncState"): TypedContractMethod<[ + receiver: AddressLike, + data: BytesLike + ], [ + void + ], "nonpayable">; + filters: {}; +} +//# sourceMappingURL=IStateSender.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IStateSender.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IStateSender.d.ts.map new file mode 100644 index 00000000..5e1df180 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IStateSender.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IStateSender.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IStateSender.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IStateSender.js b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IStateSender.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IStateSender.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ITokenPredicate.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ITokenPredicate.d.ts new file mode 100644 index 00000000..215a3764 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ITokenPredicate.d.ts @@ -0,0 +1,56 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; +export interface ITokenPredicateInterface extends Interface { + getFunction(nameOrSignature: "exitTokens" | "lockTokens"): FunctionFragment; + encodeFunctionData(functionFragment: "exitTokens", values: [AddressLike, AddressLike, BytesLike]): string; + encodeFunctionData(functionFragment: "lockTokens", values: [AddressLike, AddressLike, AddressLike, BytesLike]): string; + decodeFunctionResult(functionFragment: "exitTokens", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "lockTokens", data: BytesLike): Result; +} +export interface ITokenPredicate extends BaseContract { + connect(runner?: ContractRunner | null): ITokenPredicate; + waitForDeployment(): Promise; + interface: ITokenPredicateInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + exitTokens: TypedContractMethod<[ + sender: AddressLike, + rootToken: AddressLike, + logRLPList: BytesLike + ], [ + void + ], "nonpayable">; + lockTokens: TypedContractMethod<[ + depositor: AddressLike, + depositReceiver: AddressLike, + rootToken: AddressLike, + depositData: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "exitTokens"): TypedContractMethod<[ + sender: AddressLike, + rootToken: AddressLike, + logRLPList: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "lockTokens"): TypedContractMethod<[ + depositor: AddressLike, + depositReceiver: AddressLike, + rootToken: AddressLike, + depositData: BytesLike + ], [ + void + ], "nonpayable">; + filters: {}; +} +//# sourceMappingURL=ITokenPredicate.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ITokenPredicate.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ITokenPredicate.d.ts.map new file mode 100644 index 00000000..b08387b3 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ITokenPredicate.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ITokenPredicate.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ITokenPredicate.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ITokenPredicate.js b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ITokenPredicate.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ITokenPredicate.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction.d.ts new file mode 100644 index 00000000..a9f584a8 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction.d.ts @@ -0,0 +1,84 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; +export interface NativeMetaTransactionInterface extends Interface { + getFunction(nameOrSignature: "ERC712_VERSION" | "executeMetaTransaction" | "getChainId" | "getDomainSeperator" | "getNonce"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "MetaTransactionExecuted"): EventFragment; + encodeFunctionData(functionFragment: "ERC712_VERSION", values?: undefined): string; + encodeFunctionData(functionFragment: "executeMetaTransaction", values: [AddressLike, BytesLike, BytesLike, BytesLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "getChainId", values?: undefined): string; + encodeFunctionData(functionFragment: "getDomainSeperator", values?: undefined): string; + encodeFunctionData(functionFragment: "getNonce", values: [AddressLike]): string; + decodeFunctionResult(functionFragment: "ERC712_VERSION", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "executeMetaTransaction", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getChainId", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getDomainSeperator", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getNonce", data: BytesLike): Result; +} +export declare namespace MetaTransactionExecutedEvent { + type InputTuple = [ + userAddress: AddressLike, + relayerAddress: AddressLike, + functionSignature: BytesLike + ]; + type OutputTuple = [ + userAddress: string, + relayerAddress: string, + functionSignature: string + ]; + interface OutputObject { + userAddress: string; + relayerAddress: string; + functionSignature: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface NativeMetaTransaction extends BaseContract { + connect(runner?: ContractRunner | null): NativeMetaTransaction; + waitForDeployment(): Promise; + interface: NativeMetaTransactionInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + ERC712_VERSION: TypedContractMethod<[], [string], "view">; + executeMetaTransaction: TypedContractMethod<[ + userAddress: AddressLike, + functionSignature: BytesLike, + sigR: BytesLike, + sigS: BytesLike, + sigV: BigNumberish + ], [ + string + ], "payable">; + getChainId: TypedContractMethod<[], [bigint], "view">; + getDomainSeperator: TypedContractMethod<[], [string], "view">; + getNonce: TypedContractMethod<[user: AddressLike], [bigint], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "ERC712_VERSION"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "executeMetaTransaction"): TypedContractMethod<[ + userAddress: AddressLike, + functionSignature: BytesLike, + sigR: BytesLike, + sigS: BytesLike, + sigV: BigNumberish + ], [ + string + ], "payable">; + getFunction(nameOrSignature: "getChainId"): TypedContractMethod<[], [bigint], "view">; + getFunction(nameOrSignature: "getDomainSeperator"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "getNonce"): TypedContractMethod<[user: AddressLike], [bigint], "view">; + getEvent(key: "MetaTransactionExecuted"): TypedContractEvent; + filters: { + "MetaTransactionExecuted(address,address,bytes)": TypedContractEvent; + MetaTransactionExecuted: TypedContractEvent; + }; +} +//# sourceMappingURL=NativeMetaTransaction.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction.d.ts.map new file mode 100644 index 00000000..2b398e52 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"NativeMetaTransaction.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction.js b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager.d.ts new file mode 100644 index 00000000..f69bd817 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager.d.ts @@ -0,0 +1,448 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; +export interface RootChainManagerInterface extends Interface { + getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE" | "DEPOSIT" | "ERC712_VERSION" | "ETHER_ADDRESS" | "MAPPER_ROLE" | "MAP_TOKEN" | "checkpointManagerAddress" | "childChainManagerAddress" | "childToRootToken" | "cleanMapToken" | "depositEtherFor" | "depositFor" | "executeMetaTransaction" | "exit" | "getChainId" | "getDomainSeperator" | "getNonce" | "getRoleAdmin" | "getRoleMember" | "getRoleMemberCount" | "grantRole" | "hasRole" | "initialize" | "initializeEIP712" | "mapToken" | "processedExits" | "registerPredicate" | "remapToken" | "renounceRole" | "revokeRole" | "rootToChildToken" | "setCheckpointManager" | "setChildChainManagerAddress" | "setStateSender" | "setupContractId" | "stateSenderAddress" | "tokenToType" | "typeToPredicate"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "MetaTransactionExecuted" | "PredicateRegistered" | "RoleAdminChanged" | "RoleGranted" | "RoleRevoked" | "TokenMapped"): EventFragment; + encodeFunctionData(functionFragment: "DEFAULT_ADMIN_ROLE", values?: undefined): string; + encodeFunctionData(functionFragment: "DEPOSIT", values?: undefined): string; + encodeFunctionData(functionFragment: "ERC712_VERSION", values?: undefined): string; + encodeFunctionData(functionFragment: "ETHER_ADDRESS", values?: undefined): string; + encodeFunctionData(functionFragment: "MAPPER_ROLE", values?: undefined): string; + encodeFunctionData(functionFragment: "MAP_TOKEN", values?: undefined): string; + encodeFunctionData(functionFragment: "checkpointManagerAddress", values?: undefined): string; + encodeFunctionData(functionFragment: "childChainManagerAddress", values?: undefined): string; + encodeFunctionData(functionFragment: "childToRootToken", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "cleanMapToken", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "depositEtherFor", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "depositFor", values: [AddressLike, AddressLike, BytesLike]): string; + encodeFunctionData(functionFragment: "executeMetaTransaction", values: [AddressLike, BytesLike, BytesLike, BytesLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "exit", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "getChainId", values?: undefined): string; + encodeFunctionData(functionFragment: "getDomainSeperator", values?: undefined): string; + encodeFunctionData(functionFragment: "getNonce", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "getRoleAdmin", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "getRoleMember", values: [BytesLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "getRoleMemberCount", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "grantRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "hasRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "initialize", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "initializeEIP712", values?: undefined): string; + encodeFunctionData(functionFragment: "mapToken", values: [AddressLike, AddressLike, BytesLike]): string; + encodeFunctionData(functionFragment: "processedExits", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "registerPredicate", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "remapToken", values: [AddressLike, AddressLike, BytesLike]): string; + encodeFunctionData(functionFragment: "renounceRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "revokeRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "rootToChildToken", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "setCheckpointManager", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "setChildChainManagerAddress", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "setStateSender", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "setupContractId", values?: undefined): string; + encodeFunctionData(functionFragment: "stateSenderAddress", values?: undefined): string; + encodeFunctionData(functionFragment: "tokenToType", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "typeToPredicate", values: [BytesLike]): string; + decodeFunctionResult(functionFragment: "DEFAULT_ADMIN_ROLE", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "DEPOSIT", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ERC712_VERSION", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ETHER_ADDRESS", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "MAPPER_ROLE", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "MAP_TOKEN", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "checkpointManagerAddress", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "childChainManagerAddress", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "childToRootToken", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "cleanMapToken", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "depositEtherFor", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "depositFor", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "executeMetaTransaction", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "exit", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getChainId", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getDomainSeperator", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getNonce", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getRoleAdmin", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getRoleMember", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getRoleMemberCount", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "grantRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "hasRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "initializeEIP712", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "mapToken", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "processedExits", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "registerPredicate", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "remapToken", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "revokeRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "rootToChildToken", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setCheckpointManager", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setChildChainManagerAddress", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setStateSender", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setupContractId", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "stateSenderAddress", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "tokenToType", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "typeToPredicate", data: BytesLike): Result; +} +export declare namespace MetaTransactionExecutedEvent { + type InputTuple = [ + userAddress: AddressLike, + relayerAddress: AddressLike, + functionSignature: BytesLike + ]; + type OutputTuple = [ + userAddress: string, + relayerAddress: string, + functionSignature: string + ]; + interface OutputObject { + userAddress: string; + relayerAddress: string; + functionSignature: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace PredicateRegisteredEvent { + type InputTuple = [ + tokenType: BytesLike, + predicateAddress: AddressLike + ]; + type OutputTuple = [tokenType: string, predicateAddress: string]; + interface OutputObject { + tokenType: string; + predicateAddress: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RoleAdminChangedEvent { + type InputTuple = [ + role: BytesLike, + previousAdminRole: BytesLike, + newAdminRole: BytesLike + ]; + type OutputTuple = [ + role: string, + previousAdminRole: string, + newAdminRole: string + ]; + interface OutputObject { + role: string; + previousAdminRole: string; + newAdminRole: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RoleGrantedEvent { + type InputTuple = [ + role: BytesLike, + account: AddressLike, + sender: AddressLike + ]; + type OutputTuple = [role: string, account: string, sender: string]; + interface OutputObject { + role: string; + account: string; + sender: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RoleRevokedEvent { + type InputTuple = [ + role: BytesLike, + account: AddressLike, + sender: AddressLike + ]; + type OutputTuple = [role: string, account: string, sender: string]; + interface OutputObject { + role: string; + account: string; + sender: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TokenMappedEvent { + type InputTuple = [ + rootToken: AddressLike, + childToken: AddressLike, + tokenType: BytesLike + ]; + type OutputTuple = [ + rootToken: string, + childToken: string, + tokenType: string + ]; + interface OutputObject { + rootToken: string; + childToken: string; + tokenType: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface RootChainManager extends BaseContract { + connect(runner?: ContractRunner | null): RootChainManager; + waitForDeployment(): Promise; + interface: RootChainManagerInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + DEFAULT_ADMIN_ROLE: TypedContractMethod<[], [string], "view">; + DEPOSIT: TypedContractMethod<[], [string], "view">; + ERC712_VERSION: TypedContractMethod<[], [string], "view">; + ETHER_ADDRESS: TypedContractMethod<[], [string], "view">; + MAPPER_ROLE: TypedContractMethod<[], [string], "view">; + MAP_TOKEN: TypedContractMethod<[], [string], "view">; + checkpointManagerAddress: TypedContractMethod<[], [string], "view">; + childChainManagerAddress: TypedContractMethod<[], [string], "view">; + childToRootToken: TypedContractMethod<[arg0: AddressLike], [string], "view">; + cleanMapToken: TypedContractMethod<[ + rootToken: AddressLike, + childToken: AddressLike + ], [ + void + ], "nonpayable">; + depositEtherFor: TypedContractMethod<[user: AddressLike], [void], "payable">; + depositFor: TypedContractMethod<[ + user: AddressLike, + rootToken: AddressLike, + depositData: BytesLike + ], [ + void + ], "nonpayable">; + executeMetaTransaction: TypedContractMethod<[ + userAddress: AddressLike, + functionSignature: BytesLike, + sigR: BytesLike, + sigS: BytesLike, + sigV: BigNumberish + ], [ + string + ], "payable">; + exit: TypedContractMethod<[inputData: BytesLike], [void], "nonpayable">; + getChainId: TypedContractMethod<[], [bigint], "view">; + getDomainSeperator: TypedContractMethod<[], [string], "view">; + getNonce: TypedContractMethod<[user: AddressLike], [bigint], "view">; + getRoleAdmin: TypedContractMethod<[role: BytesLike], [string], "view">; + getRoleMember: TypedContractMethod<[ + role: BytesLike, + index: BigNumberish + ], [ + string + ], "view">; + getRoleMemberCount: TypedContractMethod<[role: BytesLike], [bigint], "view">; + grantRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + hasRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + boolean + ], "view">; + initialize: TypedContractMethod<[_owner: AddressLike], [void], "nonpayable">; + initializeEIP712: TypedContractMethod<[], [void], "nonpayable">; + mapToken: TypedContractMethod<[ + rootToken: AddressLike, + childToken: AddressLike, + tokenType: BytesLike + ], [ + void + ], "nonpayable">; + processedExits: TypedContractMethod<[arg0: BytesLike], [boolean], "view">; + registerPredicate: TypedContractMethod<[ + tokenType: BytesLike, + predicateAddress: AddressLike + ], [ + void + ], "nonpayable">; + remapToken: TypedContractMethod<[ + rootToken: AddressLike, + childToken: AddressLike, + tokenType: BytesLike + ], [ + void + ], "nonpayable">; + renounceRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + revokeRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + rootToChildToken: TypedContractMethod<[arg0: AddressLike], [string], "view">; + setCheckpointManager: TypedContractMethod<[ + newCheckpointManager: AddressLike + ], [ + void + ], "nonpayable">; + setChildChainManagerAddress: TypedContractMethod<[ + newChildChainManager: AddressLike + ], [ + void + ], "nonpayable">; + setStateSender: TypedContractMethod<[ + newStateSender: AddressLike + ], [ + void + ], "nonpayable">; + setupContractId: TypedContractMethod<[], [void], "nonpayable">; + stateSenderAddress: TypedContractMethod<[], [string], "view">; + tokenToType: TypedContractMethod<[arg0: AddressLike], [string], "view">; + typeToPredicate: TypedContractMethod<[arg0: BytesLike], [string], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "DEPOSIT"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "ERC712_VERSION"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "ETHER_ADDRESS"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "MAPPER_ROLE"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "MAP_TOKEN"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "checkpointManagerAddress"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "childChainManagerAddress"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "childToRootToken"): TypedContractMethod<[arg0: AddressLike], [string], "view">; + getFunction(nameOrSignature: "cleanMapToken"): TypedContractMethod<[ + rootToken: AddressLike, + childToken: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "depositEtherFor"): TypedContractMethod<[user: AddressLike], [void], "payable">; + getFunction(nameOrSignature: "depositFor"): TypedContractMethod<[ + user: AddressLike, + rootToken: AddressLike, + depositData: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "executeMetaTransaction"): TypedContractMethod<[ + userAddress: AddressLike, + functionSignature: BytesLike, + sigR: BytesLike, + sigS: BytesLike, + sigV: BigNumberish + ], [ + string + ], "payable">; + getFunction(nameOrSignature: "exit"): TypedContractMethod<[inputData: BytesLike], [void], "nonpayable">; + getFunction(nameOrSignature: "getChainId"): TypedContractMethod<[], [bigint], "view">; + getFunction(nameOrSignature: "getDomainSeperator"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "getNonce"): TypedContractMethod<[user: AddressLike], [bigint], "view">; + getFunction(nameOrSignature: "getRoleAdmin"): TypedContractMethod<[role: BytesLike], [string], "view">; + getFunction(nameOrSignature: "getRoleMember"): TypedContractMethod<[ + role: BytesLike, + index: BigNumberish + ], [ + string + ], "view">; + getFunction(nameOrSignature: "getRoleMemberCount"): TypedContractMethod<[role: BytesLike], [bigint], "view">; + getFunction(nameOrSignature: "grantRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "hasRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "initialize"): TypedContractMethod<[_owner: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "initializeEIP712"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "mapToken"): TypedContractMethod<[ + rootToken: AddressLike, + childToken: AddressLike, + tokenType: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "processedExits"): TypedContractMethod<[arg0: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "registerPredicate"): TypedContractMethod<[ + tokenType: BytesLike, + predicateAddress: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "remapToken"): TypedContractMethod<[ + rootToken: AddressLike, + childToken: AddressLike, + tokenType: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "renounceRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "revokeRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "rootToChildToken"): TypedContractMethod<[arg0: AddressLike], [string], "view">; + getFunction(nameOrSignature: "setCheckpointManager"): TypedContractMethod<[ + newCheckpointManager: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setChildChainManagerAddress"): TypedContractMethod<[ + newChildChainManager: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setStateSender"): TypedContractMethod<[newStateSender: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "setupContractId"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "stateSenderAddress"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "tokenToType"): TypedContractMethod<[arg0: AddressLike], [string], "view">; + getFunction(nameOrSignature: "typeToPredicate"): TypedContractMethod<[arg0: BytesLike], [string], "view">; + getEvent(key: "MetaTransactionExecuted"): TypedContractEvent; + getEvent(key: "PredicateRegistered"): TypedContractEvent; + getEvent(key: "RoleAdminChanged"): TypedContractEvent; + getEvent(key: "RoleGranted"): TypedContractEvent; + getEvent(key: "RoleRevoked"): TypedContractEvent; + getEvent(key: "TokenMapped"): TypedContractEvent; + filters: { + "MetaTransactionExecuted(address,address,bytes)": TypedContractEvent; + MetaTransactionExecuted: TypedContractEvent; + "PredicateRegistered(bytes32,address)": TypedContractEvent; + PredicateRegistered: TypedContractEvent; + "RoleAdminChanged(bytes32,bytes32,bytes32)": TypedContractEvent; + RoleAdminChanged: TypedContractEvent; + "RoleGranted(bytes32,address,address)": TypedContractEvent; + RoleGranted: TypedContractEvent; + "RoleRevoked(bytes32,address,address)": TypedContractEvent; + RoleRevoked: TypedContractEvent; + "TokenMapped(address,address,bytes32)": TypedContractEvent; + TokenMapped: TypedContractEvent; + }; +} +//# sourceMappingURL=RootChainManager.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager.d.ts.map new file mode 100644 index 00000000..783f1719 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"RootChainManager.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,aAAa,EACb,WAAW,EACX,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,mBAAmB,EACnB,aAAa,EACb,mBAAmB,EACpB,MAAM,oBAAoB,CAAC;AAE5B,MAAM,WAAW,yBAA0B,SAAQ,SAAS;IAC1D,WAAW,CACT,eAAe,EACX,oBAAoB,GACpB,SAAS,GACT,gBAAgB,GAChB,eAAe,GACf,aAAa,GACb,WAAW,GACX,0BAA0B,GAC1B,0BAA0B,GAC1B,kBAAkB,GAClB,eAAe,GACf,iBAAiB,GACjB,YAAY,GACZ,wBAAwB,GACxB,MAAM,GACN,YAAY,GACZ,oBAAoB,GACpB,UAAU,GACV,cAAc,GACd,eAAe,GACf,oBAAoB,GACpB,WAAW,GACX,SAAS,GACT,YAAY,GACZ,kBAAkB,GAClB,UAAU,GACV,gBAAgB,GAChB,mBAAmB,GACnB,YAAY,GACZ,cAAc,GACd,YAAY,GACZ,kBAAkB,GAClB,sBAAsB,GACtB,6BAA6B,GAC7B,gBAAgB,GAChB,iBAAiB,GACjB,oBAAoB,GACpB,aAAa,GACb,iBAAiB,GACpB,gBAAgB,CAAC;IAEpB,QAAQ,CACN,sBAAsB,EAClB,yBAAyB,GACzB,qBAAqB,GACrB,kBAAkB,GAClB,aAAa,GACb,aAAa,GACb,aAAa,GAChB,aAAa,CAAC;IAEjB,kBAAkB,CAChB,gBAAgB,EAAE,oBAAoB,EACtC,MAAM,CAAC,EAAE,SAAS,GACjB,MAAM,CAAC;IACV,kBAAkB,CAAC,gBAAgB,EAAE,SAAS,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IAC5E,kBAAkB,CAChB,gBAAgB,EAAE,gBAAgB,EAClC,MAAM,CAAC,EAAE,SAAS,GACjB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,eAAe,EACjC,MAAM,CAAC,EAAE,SAAS,GACjB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,aAAa,EAC/B,MAAM,CAAC,EAAE,SAAS,GACjB,MAAM,CAAC;IACV,kBAAkB,CAAC,gBAAgB,EAAE,WAAW,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IAC9E,kBAAkB,CAChB,gBAAgB,EAAE,0BAA0B,EAC5C,MAAM,CAAC,EAAE,SAAS,GACjB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,0BAA0B,EAC5C,MAAM,CAAC,EAAE,SAAS,GACjB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,kBAAkB,EACpC,MAAM,EAAE,CAAC,WAAW,CAAC,GACpB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,eAAe,EACjC,MAAM,EAAE,CAAC,WAAW,EAAE,WAAW,CAAC,GACjC,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,iBAAiB,EACnC,MAAM,EAAE,CAAC,WAAW,CAAC,GACpB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,YAAY,EAC9B,MAAM,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,SAAS,CAAC,GAC5C,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,wBAAwB,EAC1C,MAAM,EAAE,CAAC,WAAW,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,YAAY,CAAC,GACnE,MAAM,CAAC;IACV,kBAAkB,CAAC,gBAAgB,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC;IAC1E,kBAAkB,CAChB,gBAAgB,EAAE,YAAY,EAC9B,MAAM,CAAC,EAAE,SAAS,GACjB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,oBAAoB,EACtC,MAAM,CAAC,EAAE,SAAS,GACjB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,UAAU,EAC5B,MAAM,EAAE,CAAC,WAAW,CAAC,GACpB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,cAAc,EAChC,MAAM,EAAE,CAAC,SAAS,CAAC,GAClB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,eAAe,EACjC,MAAM,EAAE,CAAC,SAAS,EAAE,YAAY,CAAC,GAChC,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,oBAAoB,EACtC,MAAM,EAAE,CAAC,SAAS,CAAC,GAClB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,WAAW,EAC7B,MAAM,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC,GAC/B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,SAAS,EAC3B,MAAM,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC,GAC/B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,YAAY,EAC9B,MAAM,EAAE,CAAC,WAAW,CAAC,GACpB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,kBAAkB,EACpC,MAAM,CAAC,EAAE,SAAS,GACjB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,UAAU,EAC5B,MAAM,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,SAAS,CAAC,GAC5C,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,gBAAgB,EAClC,MAAM,EAAE,CAAC,SAAS,CAAC,GAClB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,mBAAmB,EACrC,MAAM,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC,GAC/B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,YAAY,EAC9B,MAAM,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,SAAS,CAAC,GAC5C,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,cAAc,EAChC,MAAM,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC,GAC/B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,YAAY,EAC9B,MAAM,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC,GAC/B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,kBAAkB,EACpC,MAAM,EAAE,CAAC,WAAW,CAAC,GACpB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,sBAAsB,EACxC,MAAM,EAAE,CAAC,WAAW,CAAC,GACpB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,6BAA6B,EAC/C,MAAM,EAAE,CAAC,WAAW,CAAC,GACpB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,gBAAgB,EAClC,MAAM,EAAE,CAAC,WAAW,CAAC,GACpB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,iBAAiB,EACnC,MAAM,CAAC,EAAE,SAAS,GACjB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,oBAAoB,EACtC,MAAM,CAAC,EAAE,SAAS,GACjB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,aAAa,EAC/B,MAAM,EAAE,CAAC,WAAW,CAAC,GACpB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,iBAAiB,EACnC,MAAM,EAAE,CAAC,SAAS,CAAC,GAClB,MAAM,CAAC;IAEV,oBAAoB,CAClB,gBAAgB,EAAE,oBAAoB,EACtC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,oBAAoB,CAClB,gBAAgB,EAAE,gBAAgB,EAClC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,eAAe,EACjC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,aAAa,EAC/B,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC7E,oBAAoB,CAClB,gBAAgB,EAAE,0BAA0B,EAC5C,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,0BAA0B,EAC5C,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,kBAAkB,EACpC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,eAAe,EACjC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,iBAAiB,EACnC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC9E,oBAAoB,CAClB,gBAAgB,EAAE,wBAAwB,EAC1C,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IACxE,oBAAoB,CAAC,gBAAgB,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC9E,oBAAoB,CAClB,gBAAgB,EAAE,oBAAoB,EACtC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC5E,oBAAoB,CAClB,gBAAgB,EAAE,cAAc,EAChC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,eAAe,EACjC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,oBAAoB,EACtC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC7E,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,oBAAoB,CAAC,gBAAgB,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC9E,oBAAoB,CAClB,gBAAgB,EAAE,kBAAkB,EACpC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC5E,oBAAoB,CAClB,gBAAgB,EAAE,gBAAgB,EAClC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,mBAAmB,EACrC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC9E,oBAAoB,CAClB,gBAAgB,EAAE,cAAc,EAChC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC9E,oBAAoB,CAClB,gBAAgB,EAAE,kBAAkB,EACpC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,sBAAsB,EACxC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,6BAA6B,EAC/C,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,gBAAgB,EAClC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,iBAAiB,EACnC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,oBAAoB,EACtC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,aAAa,EAC/B,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,iBAAiB,EACnC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;CACX;AAED,yBAAiB,4BAA4B,CAAC;IAC5C,KAAY,UAAU,GAAG;QACvB,WAAW,EAAE,WAAW;QACxB,cAAc,EAAE,WAAW;QAC3B,iBAAiB,EAAE,SAAS;KAC7B,CAAC;IACF,KAAY,WAAW,GAAG;QACxB,WAAW,EAAE,MAAM;QACnB,cAAc,EAAE,MAAM;QACtB,iBAAiB,EAAE,MAAM;KAC1B,CAAC;IACF,UAAiB,YAAY;QAC3B,WAAW,EAAE,MAAM,CAAC;QACpB,cAAc,EAAE,MAAM,CAAC;QACvB,iBAAiB,EAAE,MAAM,CAAC;KAC3B;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,wBAAwB,CAAC;IACxC,KAAY,UAAU,GAAG;QACvB,SAAS,EAAE,SAAS;QACpB,gBAAgB,EAAE,WAAW;KAC9B,CAAC;IACF,KAAY,WAAW,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,CAAC,CAAC;IACxE,UAAiB,YAAY;QAC3B,SAAS,EAAE,MAAM,CAAC;QAClB,gBAAgB,EAAE,MAAM,CAAC;KAC1B;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,qBAAqB,CAAC;IACrC,KAAY,UAAU,GAAG;QACvB,IAAI,EAAE,SAAS;QACf,iBAAiB,EAAE,SAAS;QAC5B,YAAY,EAAE,SAAS;KACxB,CAAC;IACF,KAAY,WAAW,GAAG;QACxB,IAAI,EAAE,MAAM;QACZ,iBAAiB,EAAE,MAAM;QACzB,YAAY,EAAE,MAAM;KACrB,CAAC;IACF,UAAiB,YAAY;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,iBAAiB,EAAE,MAAM,CAAC;QAC1B,YAAY,EAAE,MAAM,CAAC;KACtB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,gBAAgB,CAAC;IAChC,KAAY,UAAU,GAAG;QACvB,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,WAAW;QACpB,MAAM,EAAE,WAAW;KACpB,CAAC;IACF,KAAY,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1E,UAAiB,YAAY;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;KAChB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,gBAAgB,CAAC;IAChC,KAAY,UAAU,GAAG;QACvB,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,WAAW;QACpB,MAAM,EAAE,WAAW;KACpB,CAAC;IACF,KAAY,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1E,UAAiB,YAAY;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;KAChB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,gBAAgB,CAAC;IAChC,KAAY,UAAU,GAAG;QACvB,SAAS,EAAE,WAAW;QACtB,UAAU,EAAE,WAAW;QACvB,SAAS,EAAE,SAAS;KACrB,CAAC;IACF,KAAY,WAAW,GAAG;QACxB,SAAS,EAAE,MAAM;QACjB,UAAU,EAAE,MAAM;QAClB,SAAS,EAAE,MAAM;KAClB,CAAC;IACF,UAAiB,YAAY;QAC3B,SAAS,EAAE,MAAM,CAAC;QAClB,UAAU,EAAE,MAAM,CAAC;QACnB,SAAS,EAAE,MAAM,CAAC;KACnB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,MAAM,WAAW,gBAAiB,SAAQ,YAAY;IACpD,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,gBAAgB,CAAC;IAC1D,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,yBAAyB,CAAC;IAErC,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,kBAAkB,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAE9D,OAAO,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEnD,cAAc,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAE1D,aAAa,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEzD,WAAW,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEvD,SAAS,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAErD,wBAAwB,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEpE,wBAAwB,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEpE,gBAAgB,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAE7E,aAAa,EAAE,mBAAmB,CAChC;QAAC,SAAS,EAAE,WAAW;QAAE,UAAU,EAAE,WAAW;KAAC,EACjD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,eAAe,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,SAAS,CAAC,CAAC;IAE7E,UAAU,EAAE,mBAAmB,CAC7B;QAAC,IAAI,EAAE,WAAW;QAAE,SAAS,EAAE,WAAW;QAAE,WAAW,EAAE,SAAS;KAAC,EACnE;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,sBAAsB,EAAE,mBAAmB,CACzC;QACE,WAAW,EAAE,WAAW;QACxB,iBAAiB,EAAE,SAAS;QAC5B,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,YAAY;KACnB,EACD;QAAC,MAAM;KAAC,EACR,SAAS,CACV,CAAC;IAEF,IAAI,EAAE,mBAAmB,CAAC,CAAC,SAAS,EAAE,SAAS,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IAExE,UAAU,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEtD,kBAAkB,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAE9D,QAAQ,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAErE,YAAY,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEvE,aAAa,EAAE,mBAAmB,CAChC;QAAC,IAAI,EAAE,SAAS;QAAE,KAAK,EAAE,YAAY;KAAC,EACtC;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IAEF,kBAAkB,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAE7E,SAAS,EAAE,mBAAmB,CAC5B;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,WAAW;KAAC,EACvC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,OAAO,EAAE,mBAAmB,CAC1B;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,WAAW;KAAC,EACvC;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,UAAU,EAAE,mBAAmB,CAAC,CAAC,MAAM,EAAE,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IAE7E,gBAAgB,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IAEhE,QAAQ,EAAE,mBAAmB,CAC3B;QAAC,SAAS,EAAE,WAAW;QAAE,UAAU,EAAE,WAAW;QAAE,SAAS,EAAE,SAAS;KAAC,EACvE;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,cAAc,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IAE1E,iBAAiB,EAAE,mBAAmB,CACpC;QAAC,SAAS,EAAE,SAAS;QAAE,gBAAgB,EAAE,WAAW;KAAC,EACrD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,UAAU,EAAE,mBAAmB,CAC7B;QAAC,SAAS,EAAE,WAAW;QAAE,UAAU,EAAE,WAAW;QAAE,SAAS,EAAE,SAAS;KAAC,EACvE;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,YAAY,EAAE,mBAAmB,CAC/B;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,WAAW;KAAC,EACvC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,UAAU,EAAE,mBAAmB,CAC7B;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,WAAW;KAAC,EACvC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,gBAAgB,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAE7E,oBAAoB,EAAE,mBAAmB,CACvC;QAAC,oBAAoB,EAAE,WAAW;KAAC,EACnC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,2BAA2B,EAAE,mBAAmB,CAC9C;QAAC,oBAAoB,EAAE,WAAW;KAAC,EACnC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,cAAc,EAAE,mBAAmB,CACjC;QAAC,cAAc,EAAE,WAAW;KAAC,EAC7B;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,eAAe,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IAE/D,kBAAkB,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAE9D,WAAW,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAExE,eAAe,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAE1E,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,WAAW,CACT,eAAe,EAAE,oBAAoB,GACpC,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC7C,WAAW,CACT,eAAe,EAAE,SAAS,GACzB,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC7C,WAAW,CACT,eAAe,EAAE,gBAAgB,GAChC,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC7C,WAAW,CACT,eAAe,EAAE,eAAe,GAC/B,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC7C,WAAW,CACT,eAAe,EAAE,aAAa,GAC7B,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC7C,WAAW,CACT,eAAe,EAAE,WAAW,GAC3B,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC7C,WAAW,CACT,eAAe,EAAE,0BAA0B,GAC1C,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC7C,WAAW,CACT,eAAe,EAAE,0BAA0B,GAC1C,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC7C,WAAW,CACT,eAAe,EAAE,kBAAkB,GAClC,mBAAmB,CAAC,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC9D,WAAW,CACT,eAAe,EAAE,eAAe,GAC/B,mBAAmB,CACpB;QAAC,SAAS,EAAE,WAAW;QAAE,UAAU,EAAE,WAAW;KAAC,EACjD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,iBAAiB,GACjC,mBAAmB,CAAC,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,SAAS,CAAC,CAAC;IAC/D,WAAW,CACT,eAAe,EAAE,YAAY,GAC5B,mBAAmB,CACpB;QAAC,IAAI,EAAE,WAAW;QAAE,SAAS,EAAE,WAAW;QAAE,WAAW,EAAE,SAAS;KAAC,EACnE;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,wBAAwB,GACxC,mBAAmB,CACpB;QACE,WAAW,EAAE,WAAW;QACxB,iBAAiB,EAAE,SAAS;QAC5B,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,YAAY;KACnB,EACD;QAAC,MAAM;KAAC,EACR,SAAS,CACV,CAAC;IACF,WAAW,CACT,eAAe,EAAE,MAAM,GACtB,mBAAmB,CAAC,CAAC,SAAS,EAAE,SAAS,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IACrE,WAAW,CACT,eAAe,EAAE,YAAY,GAC5B,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC7C,WAAW,CACT,eAAe,EAAE,oBAAoB,GACpC,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC7C,WAAW,CACT,eAAe,EAAE,UAAU,GAC1B,mBAAmB,CAAC,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC9D,WAAW,CACT,eAAe,EAAE,cAAc,GAC9B,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC5D,WAAW,CACT,eAAe,EAAE,eAAe,GAC/B,mBAAmB,CACpB;QAAC,IAAI,EAAE,SAAS;QAAE,KAAK,EAAE,YAAY;KAAC,EACtC;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,oBAAoB,GACpC,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC5D,WAAW,CACT,eAAe,EAAE,WAAW,GAC3B,mBAAmB,CACpB;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,WAAW;KAAC,EACvC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,SAAS,GACzB,mBAAmB,CACpB;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,WAAW;KAAC,EACvC;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,YAAY,GAC5B,mBAAmB,CAAC,CAAC,MAAM,EAAE,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IACpE,WAAW,CACT,eAAe,EAAE,kBAAkB,GAClC,mBAAmB,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IACjD,WAAW,CACT,eAAe,EAAE,UAAU,GAC1B,mBAAmB,CACpB;QAAC,SAAS,EAAE,WAAW;QAAE,UAAU,EAAE,WAAW;QAAE,SAAS,EAAE,SAAS;KAAC,EACvE;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,gBAAgB,GAChC,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IAC7D,WAAW,CACT,eAAe,EAAE,mBAAmB,GACnC,mBAAmB,CACpB;QAAC,SAAS,EAAE,SAAS;QAAE,gBAAgB,EAAE,WAAW;KAAC,EACrD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,YAAY,GAC5B,mBAAmB,CACpB;QAAC,SAAS,EAAE,WAAW;QAAE,UAAU,EAAE,WAAW;QAAE,SAAS,EAAE,SAAS;KAAC,EACvE;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,cAAc,GAC9B,mBAAmB,CACpB;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,WAAW;KAAC,EACvC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,YAAY,GAC5B,mBAAmB,CACpB;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,WAAW;KAAC,EACvC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,kBAAkB,GAClC,mBAAmB,CAAC,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC9D,WAAW,CACT,eAAe,EAAE,sBAAsB,GACtC,mBAAmB,CACpB;QAAC,oBAAoB,EAAE,WAAW;KAAC,EACnC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,6BAA6B,GAC7C,mBAAmB,CACpB;QAAC,oBAAoB,EAAE,WAAW;KAAC,EACnC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,gBAAgB,GAChC,mBAAmB,CAAC,CAAC,cAAc,EAAE,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IAC5E,WAAW,CACT,eAAe,EAAE,iBAAiB,GACjC,mBAAmB,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IACjD,WAAW,CACT,eAAe,EAAE,oBAAoB,GACpC,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC7C,WAAW,CACT,eAAe,EAAE,aAAa,GAC7B,mBAAmB,CAAC,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC9D,WAAW,CACT,eAAe,EAAE,iBAAiB,GACjC,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAE5D,QAAQ,CACN,GAAG,EAAE,yBAAyB,GAC7B,kBAAkB,CACnB,4BAA4B,CAAC,UAAU,EACvC,4BAA4B,CAAC,WAAW,EACxC,4BAA4B,CAAC,YAAY,CAC1C,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,qBAAqB,GACzB,kBAAkB,CACnB,wBAAwB,CAAC,UAAU,EACnC,wBAAwB,CAAC,WAAW,EACpC,wBAAwB,CAAC,YAAY,CACtC,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,kBAAkB,GACtB,kBAAkB,CACnB,qBAAqB,CAAC,UAAU,EAChC,qBAAqB,CAAC,WAAW,EACjC,qBAAqB,CAAC,YAAY,CACnC,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,aAAa,GACjB,kBAAkB,CACnB,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,aAAa,GACjB,kBAAkB,CACnB,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,aAAa,GACjB,kBAAkB,CACnB,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;IAEF,OAAO,EAAE;QACP,gDAAgD,EAAE,kBAAkB,CAClE,4BAA4B,CAAC,UAAU,EACvC,4BAA4B,CAAC,WAAW,EACxC,4BAA4B,CAAC,YAAY,CAC1C,CAAC;QACF,uBAAuB,EAAE,kBAAkB,CACzC,4BAA4B,CAAC,UAAU,EACvC,4BAA4B,CAAC,WAAW,EACxC,4BAA4B,CAAC,YAAY,CAC1C,CAAC;QAEF,sCAAsC,EAAE,kBAAkB,CACxD,wBAAwB,CAAC,UAAU,EACnC,wBAAwB,CAAC,WAAW,EACpC,wBAAwB,CAAC,YAAY,CACtC,CAAC;QACF,mBAAmB,EAAE,kBAAkB,CACrC,wBAAwB,CAAC,UAAU,EACnC,wBAAwB,CAAC,WAAW,EACpC,wBAAwB,CAAC,YAAY,CACtC,CAAC;QAEF,2CAA2C,EAAE,kBAAkB,CAC7D,qBAAqB,CAAC,UAAU,EAChC,qBAAqB,CAAC,WAAW,EACjC,qBAAqB,CAAC,YAAY,CACnC,CAAC;QACF,gBAAgB,EAAE,kBAAkB,CAClC,qBAAqB,CAAC,UAAU,EAChC,qBAAqB,CAAC,WAAW,EACjC,qBAAqB,CAAC,YAAY,CACnC,CAAC;QAEF,sCAAsC,EAAE,kBAAkB,CACxD,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QACF,WAAW,EAAE,kBAAkB,CAC7B,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QAEF,sCAAsC,EAAE,kBAAkB,CACxD,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QACF,WAAW,EAAE,kBAAkB,CAC7B,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QAEF,sCAAsC,EAAE,kBAAkB,CACxD,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QACF,WAAW,EAAE,kBAAkB,CAC7B,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;KACH,CAAC;CACH"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager.js b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage.d.ts new file mode 100644 index 00000000..91554185 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage.d.ts @@ -0,0 +1,46 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; +export interface RootChainManagerStorageInterface extends Interface { + getFunction(nameOrSignature: "childChainManagerAddress" | "childToRootToken" | "processedExits" | "rootToChildToken" | "tokenToType" | "typeToPredicate"): FunctionFragment; + encodeFunctionData(functionFragment: "childChainManagerAddress", values?: undefined): string; + encodeFunctionData(functionFragment: "childToRootToken", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "processedExits", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "rootToChildToken", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "tokenToType", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "typeToPredicate", values: [BytesLike]): string; + decodeFunctionResult(functionFragment: "childChainManagerAddress", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "childToRootToken", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "processedExits", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "rootToChildToken", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "tokenToType", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "typeToPredicate", data: BytesLike): Result; +} +export interface RootChainManagerStorage extends BaseContract { + connect(runner?: ContractRunner | null): RootChainManagerStorage; + waitForDeployment(): Promise; + interface: RootChainManagerStorageInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + childChainManagerAddress: TypedContractMethod<[], [string], "view">; + childToRootToken: TypedContractMethod<[arg0: AddressLike], [string], "view">; + processedExits: TypedContractMethod<[arg0: BytesLike], [boolean], "view">; + rootToChildToken: TypedContractMethod<[arg0: AddressLike], [string], "view">; + tokenToType: TypedContractMethod<[arg0: AddressLike], [string], "view">; + typeToPredicate: TypedContractMethod<[arg0: BytesLike], [string], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "childChainManagerAddress"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "childToRootToken"): TypedContractMethod<[arg0: AddressLike], [string], "view">; + getFunction(nameOrSignature: "processedExits"): TypedContractMethod<[arg0: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "rootToChildToken"): TypedContractMethod<[arg0: AddressLike], [string], "view">; + getFunction(nameOrSignature: "tokenToType"): TypedContractMethod<[arg0: AddressLike], [string], "view">; + getFunction(nameOrSignature: "typeToPredicate"): TypedContractMethod<[arg0: BytesLike], [string], "view">; + filters: {}; +} +//# sourceMappingURL=RootChainManagerStorage.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage.d.ts.map new file mode 100644 index 00000000..5d2569dc --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"RootChainManagerStorage.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage.js b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/index.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/index.d.ts new file mode 100644 index 00000000..36dcb36c --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/index.d.ts @@ -0,0 +1,11 @@ +export type { AccessControl } from "./AccessControl"; +export type { AccessControlMixin } from "./AccessControlMixin"; +export type { EIP712Base } from "./EIP712Base"; +export type { ICheckpointManager } from "./ICheckpointManager"; +export type { IRootChainManager } from "./IRootChainManager"; +export type { IStateSender } from "./IStateSender"; +export type { ITokenPredicate } from "./ITokenPredicate"; +export type { NativeMetaTransaction } from "./NativeMetaTransaction"; +export type { RootChainManager } from "./RootChainManager"; +export type { RootChainManagerStorage } from "./RootChainManagerStorage"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/index.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/index.d.ts.map new file mode 100644 index 00000000..e4cb17f9 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,YAAY,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,YAAY,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,YAAY,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,YAAY,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,YAAY,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACnD,YAAY,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,YAAY,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AACrE,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,YAAY,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/index.js b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/ICheckpointManager.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/ICheckpointManager.d.ts new file mode 100644 index 00000000..8670ed7c --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/ICheckpointManager.d.ts @@ -0,0 +1,58 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; +export interface ICheckpointManagerInterface extends Interface { + getFunction(nameOrSignature: "headerBlocks"): FunctionFragment; + encodeFunctionData(functionFragment: "headerBlocks", values: [BigNumberish]): string; + decodeFunctionResult(functionFragment: "headerBlocks", data: BytesLike): Result; +} +export interface ICheckpointManager extends BaseContract { + connect(runner?: ContractRunner | null): ICheckpointManager; + waitForDeployment(): Promise; + interface: ICheckpointManagerInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + headerBlocks: TypedContractMethod<[ + arg0: BigNumberish + ], [ + [ + string, + bigint, + bigint, + bigint, + string + ] & { + root: string; + start: bigint; + end: bigint; + createdAt: bigint; + proposer: string; + } + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "headerBlocks"): TypedContractMethod<[ + arg0: BigNumberish + ], [ + [ + string, + bigint, + bigint, + bigint, + string + ] & { + root: string; + start: bigint; + end: bigint; + createdAt: bigint; + proposer: string; + } + ], "view">; + filters: {}; +} +//# sourceMappingURL=ICheckpointManager.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/ICheckpointManager.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/ICheckpointManager.d.ts.map new file mode 100644 index 00000000..2bc9d1ea --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/ICheckpointManager.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ICheckpointManager.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/ICheckpointManager.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/ICheckpointManager.js b/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/ICheckpointManager.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/ICheckpointManager.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain.d.ts new file mode 100644 index 00000000..382e9d93 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain.d.ts @@ -0,0 +1,56 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener } from "../../../../common"; +export interface IRootChainInterface extends Interface { + getEvent(nameOrSignatureOrTopic: "NewHeaderBlock"): EventFragment; +} +export declare namespace NewHeaderBlockEvent { + type InputTuple = [ + proposer: AddressLike, + headerBlockId: BigNumberish, + reward: BigNumberish, + start: BigNumberish, + end: BigNumberish, + root: BytesLike + ]; + type OutputTuple = [ + proposer: string, + headerBlockId: bigint, + reward: bigint, + start: bigint, + end: bigint, + root: string + ]; + interface OutputObject { + proposer: string; + headerBlockId: bigint; + reward: bigint; + start: bigint; + end: bigint; + root: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface IRootChain extends BaseContract { + connect(runner?: ContractRunner | null): IRootChain; + waitForDeployment(): Promise; + interface: IRootChainInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + getFunction(key: string | FunctionFragment): T; + getEvent(key: "NewHeaderBlock"): TypedContractEvent; + filters: { + "NewHeaderBlock(address,uint256,uint256,uint256,uint256,bytes32)": TypedContractEvent; + NewHeaderBlock: TypedContractEvent; + }; +} +//# sourceMappingURL=IRootChain.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain.d.ts.map new file mode 100644 index 00000000..9361e0a6 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IRootChain.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain.js b/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager.d.ts new file mode 100644 index 00000000..e25c6859 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager.d.ts @@ -0,0 +1,113 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; +export interface SimpleCheckpointManagerInterface extends Interface { + getFunction(nameOrSignature: "currentCheckpointNumber" | "headerBlocks" | "setCheckpoint"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "NewHeaderBlock"): EventFragment; + encodeFunctionData(functionFragment: "currentCheckpointNumber", values?: undefined): string; + encodeFunctionData(functionFragment: "headerBlocks", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "setCheckpoint", values: [BytesLike, BigNumberish, BigNumberish]): string; + decodeFunctionResult(functionFragment: "currentCheckpointNumber", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "headerBlocks", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setCheckpoint", data: BytesLike): Result; +} +export declare namespace NewHeaderBlockEvent { + type InputTuple = [ + proposer: AddressLike, + headerBlockId: BigNumberish, + reward: BigNumberish, + start: BigNumberish, + end: BigNumberish, + root: BytesLike + ]; + type OutputTuple = [ + proposer: string, + headerBlockId: bigint, + reward: bigint, + start: bigint, + end: bigint, + root: string + ]; + interface OutputObject { + proposer: string; + headerBlockId: bigint; + reward: bigint; + start: bigint; + end: bigint; + root: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface SimpleCheckpointManager extends BaseContract { + connect(runner?: ContractRunner | null): SimpleCheckpointManager; + waitForDeployment(): Promise; + interface: SimpleCheckpointManagerInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + currentCheckpointNumber: TypedContractMethod<[], [bigint], "view">; + headerBlocks: TypedContractMethod<[ + arg0: BigNumberish + ], [ + [ + string, + bigint, + bigint, + bigint, + string + ] & { + root: string; + start: bigint; + end: bigint; + createdAt: bigint; + proposer: string; + } + ], "view">; + setCheckpoint: TypedContractMethod<[ + rootHash: BytesLike, + start: BigNumberish, + end: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "currentCheckpointNumber"): TypedContractMethod<[], [bigint], "view">; + getFunction(nameOrSignature: "headerBlocks"): TypedContractMethod<[ + arg0: BigNumberish + ], [ + [ + string, + bigint, + bigint, + bigint, + string + ] & { + root: string; + start: bigint; + end: bigint; + createdAt: bigint; + proposer: string; + } + ], "view">; + getFunction(nameOrSignature: "setCheckpoint"): TypedContractMethod<[ + rootHash: BytesLike, + start: BigNumberish, + end: BigNumberish + ], [ + void + ], "nonpayable">; + getEvent(key: "NewHeaderBlock"): TypedContractEvent; + filters: { + "NewHeaderBlock(address,uint256,uint256,uint256,uint256,bytes32)": TypedContractEvent; + NewHeaderBlock: TypedContractEvent; + }; +} +//# sourceMappingURL=SimpleCheckpointManager.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager.d.ts.map new file mode 100644 index 00000000..14d346da --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"SimpleCheckpointManager.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager.js b/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/index.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/index.d.ts new file mode 100644 index 00000000..8546f8bd --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/index.d.ts @@ -0,0 +1,4 @@ +export type { ICheckpointManager } from "./ICheckpointManager"; +export type { IRootChain } from "./IRootChain"; +export type { SimpleCheckpointManager } from "./SimpleCheckpointManager"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/index.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/index.d.ts.map new file mode 100644 index 00000000..63abca98 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,YAAY,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,YAAY,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/index.js b/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/index.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/index.d.ts new file mode 100644 index 00000000..fbf88508 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/index.d.ts @@ -0,0 +1,9 @@ +import type * as dummyStateSenderSol from "./DummyStateSender.sol"; +export type { dummyStateSenderSol }; +import type * as mintableErc721PredicateSol from "./MintableERC721Predicate.sol"; +export type { mintableErc721PredicateSol }; +import type * as rootChainManagerSol from "./RootChainManager.sol"; +export type { rootChainManagerSol }; +import type * as simpleCheckpointManagerSol from "./SimpleCheckpointManager.sol"; +export type { simpleCheckpointManagerSol }; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/index.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/index.d.ts.map new file mode 100644 index 00000000..17305d82 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/contracts/@maticnetwork/pos-portal/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,mBAAmB,MAAM,wBAAwB,CAAC;AACnE,YAAY,EAAE,mBAAmB,EAAE,CAAC;AACpC,OAAO,KAAK,KAAK,0BAA0B,MAAM,+BAA+B,CAAC;AACjF,YAAY,EAAE,0BAA0B,EAAE,CAAC;AAC3C,OAAO,KAAK,KAAK,mBAAmB,MAAM,wBAAwB,CAAC;AACnE,YAAY,EAAE,mBAAmB,EAAE,CAAC;AACpC,OAAO,KAAK,KAAK,0BAA0B,MAAM,+BAA+B,CAAC;AACjF,YAAY,EAAE,0BAA0B,EAAE,CAAC"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/index.js b/dist/types/contracts/@maticnetwork/pos-portal/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/@maticnetwork/pos-portal/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/ChildRegistry.d.ts b/dist/types/contracts/ChildRegistry.d.ts new file mode 100644 index 00000000..63072f50 --- /dev/null +++ b/dist/types/contracts/ChildRegistry.d.ts @@ -0,0 +1,244 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../common"; +export interface ChildRegistryInterface extends Interface { + getFunction(nameOrSignature: "BATCH_LIMIT" | "approve" | "balanceOf" | "deposit" | "getApproved" | "isApprovedForAll" | "name" | "ownerOf" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "setApprovalForAll" | "supportsInterface" | "symbol" | "tokenURI" | "transferFrom"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "Initialized" | "Transfer"): EventFragment; + encodeFunctionData(functionFragment: "BATCH_LIMIT", values?: undefined): string; + encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "deposit", values: [AddressLike, BytesLike]): string; + encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "name", values?: undefined): string; + encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "symbol", values?: undefined): string; + encodeFunctionData(functionFragment: "tokenURI", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; + decodeFunctionResult(functionFragment: "BATCH_LIMIT", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "deposit", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "tokenURI", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; +} +export declare namespace ApprovalEvent { + type InputTuple = [ + owner: AddressLike, + approved: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [owner: string, approved: string, tokenId: bigint]; + interface OutputObject { + owner: string; + approved: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ApprovalForAllEvent { + type InputTuple = [ + owner: AddressLike, + operator: AddressLike, + approved: boolean + ]; + type OutputTuple = [ + owner: string, + operator: string, + approved: boolean + ]; + interface OutputObject { + owner: string; + operator: string; + approved: boolean; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace InitializedEvent { + type InputTuple = [version: BigNumberish]; + type OutputTuple = [version: bigint]; + interface OutputObject { + version: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferEvent { + type InputTuple = [ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [from: string, to: string, tokenId: bigint]; + interface OutputObject { + from: string; + to: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface ChildRegistry extends BaseContract { + connect(runner?: ContractRunner | null): ChildRegistry; + waitForDeployment(): Promise; + interface: ChildRegistryInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + BATCH_LIMIT: TypedContractMethod<[], [bigint], "view">; + approve: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; + deposit: TypedContractMethod<[ + user: AddressLike, + depositData: BytesLike + ], [ + void + ], "nonpayable">; + getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + isApprovedForAll: TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + name: TypedContractMethod<[], [string], "view">; + ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + setApprovalForAll: TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + symbol: TypedContractMethod<[], [string], "view">; + tokenURI: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + transferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "BATCH_LIMIT"): TypedContractMethod<[], [bigint], "view">; + getFunction(nameOrSignature: "approve"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; + getFunction(nameOrSignature: "deposit"): TypedContractMethod<[ + user: AddressLike, + depositData: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "symbol"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "tokenURI"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getEvent(key: "Approval"): TypedContractEvent; + getEvent(key: "ApprovalForAll"): TypedContractEvent; + getEvent(key: "Initialized"): TypedContractEvent; + getEvent(key: "Transfer"): TypedContractEvent; + filters: { + "Approval(address,address,uint256)": TypedContractEvent; + Approval: TypedContractEvent; + "ApprovalForAll(address,address,bool)": TypedContractEvent; + ApprovalForAll: TypedContractEvent; + "Initialized(uint8)": TypedContractEvent; + Initialized: TypedContractEvent; + "Transfer(address,address,uint256)": TypedContractEvent; + Transfer: TypedContractEvent; + }; +} +//# sourceMappingURL=ChildRegistry.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/ChildRegistry.d.ts.map b/dist/types/contracts/ChildRegistry.d.ts.map new file mode 100644 index 00000000..f3346b22 --- /dev/null +++ b/dist/types/contracts/ChildRegistry.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ChildRegistry.d.ts","sourceRoot":"","sources":["../../../types/contracts/ChildRegistry.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/ChildRegistry.js b/dist/types/contracts/ChildRegistry.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/ChildRegistry.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/DotCoinBurner.d.ts b/dist/types/contracts/DotCoinBurner.d.ts new file mode 100644 index 00000000..814174c5 --- /dev/null +++ b/dist/types/contracts/DotCoinBurner.d.ts @@ -0,0 +1,47 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../common"; +export interface DotCoinBurnerInterface extends Interface { + getFunction(nameOrSignature: "burnAll"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "BatchCompleted"): EventFragment; + encodeFunctionData(functionFragment: "burnAll", values: [BigNumberish[]]): string; + decodeFunctionResult(functionFragment: "burnAll", data: BytesLike): Result; +} +export declare namespace BatchCompletedEvent { + type InputTuple = [first: BigNumberish, last: BigNumberish]; + type OutputTuple = [first: bigint, last: bigint]; + interface OutputObject { + first: bigint; + last: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface DotCoinBurner extends BaseContract { + connect(runner?: ContractRunner | null): DotCoinBurner; + waitForDeployment(): Promise; + interface: DotCoinBurnerInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + burnAll: TypedContractMethod<[ + labelHashes: BigNumberish[] + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "burnAll"): TypedContractMethod<[labelHashes: BigNumberish[]], [void], "nonpayable">; + getEvent(key: "BatchCompleted"): TypedContractEvent; + filters: { + "BatchCompleted(uint256,uint256)": TypedContractEvent; + BatchCompleted: TypedContractEvent; + }; +} +//# sourceMappingURL=DotCoinBurner.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/DotCoinBurner.d.ts.map b/dist/types/contracts/DotCoinBurner.d.ts.map new file mode 100644 index 00000000..dee27eda --- /dev/null +++ b/dist/types/contracts/DotCoinBurner.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"DotCoinBurner.d.ts","sourceRoot":"","sources":["../../../types/contracts/DotCoinBurner.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/DotCoinBurner.js b/dist/types/contracts/DotCoinBurner.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/DotCoinBurner.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/IAddressReader.d.ts b/dist/types/contracts/IAddressReader.d.ts new file mode 100644 index 00000000..dd8e472a --- /dev/null +++ b/dist/types/contracts/IAddressReader.d.ts @@ -0,0 +1,63 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../common"; +export interface IAddressReaderInterface extends Interface { + getFunction(nameOrSignature: "getAddress" | "getAddressKey" | "getAddressKeys"): FunctionFragment; + encodeFunctionData(functionFragment: "getAddress", values: [string, string, BigNumberish]): string; + encodeFunctionData(functionFragment: "getAddressKey", values: [string, string, BigNumberish]): string; + encodeFunctionData(functionFragment: "getAddressKeys", values: [string, string]): string; + decodeFunctionResult(functionFragment: "getAddress", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getAddressKey", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getAddressKeys", data: BytesLike): Result; +} +export interface IAddressReader extends BaseContract { + connect(runner?: ContractRunner | null): IAddressReader; + waitForDeployment(): Promise; + interface: IAddressReaderInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + getAddress: TypedContractMethod<[ + network: string, + token: string, + tokenId: BigNumberish + ], [ + string + ], "view">; + getAddressKey: TypedContractMethod<[ + network: string, + token: string, + tokenId: BigNumberish + ], [ + string + ], "view">; + getAddressKeys: TypedContractMethod<[ + network: string, + token: string + ], [ + string[] + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "getAddress"): TypedContractMethod<[ + network: string, + token: string, + tokenId: BigNumberish + ], [ + string + ], "view">; + getFunction(nameOrSignature: "getAddressKey"): TypedContractMethod<[ + network: string, + token: string, + tokenId: BigNumberish + ], [ + string + ], "view">; + getFunction(nameOrSignature: "getAddressKeys"): TypedContractMethod<[network: string, token: string], [string[]], "view">; + filters: {}; +} +//# sourceMappingURL=IAddressReader.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/IAddressReader.d.ts.map b/dist/types/contracts/IAddressReader.d.ts.map new file mode 100644 index 00000000..270fd5f6 --- /dev/null +++ b/dist/types/contracts/IAddressReader.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IAddressReader.d.ts","sourceRoot":"","sources":["../../../types/contracts/IAddressReader.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/IAddressReader.js b/dist/types/contracts/IAddressReader.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/IAddressReader.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/IDataReader.d.ts b/dist/types/contracts/IDataReader.d.ts new file mode 100644 index 00000000..985aa679 --- /dev/null +++ b/dist/types/contracts/IDataReader.d.ts @@ -0,0 +1,158 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../common"; +export interface IDataReaderInterface extends Interface { + getFunction(nameOrSignature: "getData" | "getDataByHash" | "getDataByHashForMany" | "getDataForMany" | "ownerOfForMany"): FunctionFragment; + encodeFunctionData(functionFragment: "getData", values: [string[], BigNumberish]): string; + encodeFunctionData(functionFragment: "getDataByHash", values: [BigNumberish[], BigNumberish]): string; + encodeFunctionData(functionFragment: "getDataByHashForMany", values: [BigNumberish[], BigNumberish[]]): string; + encodeFunctionData(functionFragment: "getDataForMany", values: [string[], BigNumberish[]]): string; + encodeFunctionData(functionFragment: "ownerOfForMany", values: [BigNumberish[]]): string; + decodeFunctionResult(functionFragment: "getData", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getDataByHash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getDataByHashForMany", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getDataForMany", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ownerOfForMany", data: BytesLike): Result; +} +export interface IDataReader extends BaseContract { + connect(runner?: ContractRunner | null): IDataReader; + waitForDeployment(): Promise; + interface: IDataReaderInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + getData: TypedContractMethod<[ + keys: string[], + tokenId: BigNumberish + ], [ + [ + string, + string, + string[] + ] & { + resolver: string; + owner: string; + values: string[]; + } + ], "view">; + getDataByHash: TypedContractMethod<[ + keyHashes: BigNumberish[], + tokenId: BigNumberish + ], [ + [ + string, + string, + string[], + string[] + ] & { + resolver: string; + owner: string; + keys: string[]; + values: string[]; + } + ], "view">; + getDataByHashForMany: TypedContractMethod<[ + keyHashes: BigNumberish[], + tokenIds: BigNumberish[] + ], [ + [ + string[], + string[], + string[][], + string[][] + ] & { + resolvers: string[]; + owners: string[]; + keys: string[][]; + values: string[][]; + } + ], "view">; + getDataForMany: TypedContractMethod<[ + keys: string[], + tokenIds: BigNumberish[] + ], [ + [ + string[], + string[], + string[][] + ] & { + resolvers: string[]; + owners: string[]; + values: string[][]; + } + ], "view">; + ownerOfForMany: TypedContractMethod<[ + tokenIds: BigNumberish[] + ], [ + string[] + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "getData"): TypedContractMethod<[ + keys: string[], + tokenId: BigNumberish + ], [ + [ + string, + string, + string[] + ] & { + resolver: string; + owner: string; + values: string[]; + } + ], "view">; + getFunction(nameOrSignature: "getDataByHash"): TypedContractMethod<[ + keyHashes: BigNumberish[], + tokenId: BigNumberish + ], [ + [ + string, + string, + string[], + string[] + ] & { + resolver: string; + owner: string; + keys: string[]; + values: string[]; + } + ], "view">; + getFunction(nameOrSignature: "getDataByHashForMany"): TypedContractMethod<[ + keyHashes: BigNumberish[], + tokenIds: BigNumberish[] + ], [ + [ + string[], + string[], + string[][], + string[][] + ] & { + resolvers: string[]; + owners: string[]; + keys: string[][]; + values: string[][]; + } + ], "view">; + getFunction(nameOrSignature: "getDataForMany"): TypedContractMethod<[ + keys: string[], + tokenIds: BigNumberish[] + ], [ + [ + string[], + string[], + string[][] + ] & { + resolvers: string[]; + owners: string[]; + values: string[][]; + } + ], "view">; + getFunction(nameOrSignature: "ownerOfForMany"): TypedContractMethod<[tokenIds: BigNumberish[]], [string[]], "view">; + filters: {}; +} +//# sourceMappingURL=IDataReader.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/IDataReader.d.ts.map b/dist/types/contracts/IDataReader.d.ts.map new file mode 100644 index 00000000..a23c4863 --- /dev/null +++ b/dist/types/contracts/IDataReader.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IDataReader.d.ts","sourceRoot":"","sources":["../../../types/contracts/IDataReader.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/IDataReader.js b/dist/types/contracts/IDataReader.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/IDataReader.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/IERC1967.d.ts b/dist/types/contracts/IERC1967.d.ts new file mode 100644 index 00000000..0bf35cb9 --- /dev/null +++ b/dist/types/contracts/IERC1967.d.ts @@ -0,0 +1,52 @@ +import type { BaseContract, FunctionFragment, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener } from "../common"; +export interface IERC1967Interface extends Interface { + getEvent(nameOrSignatureOrTopic: "AdminChanged" | "Upgraded"): EventFragment; +} +export declare namespace AdminChangedEvent { + type InputTuple = [previousAdmin: AddressLike, newAdmin: AddressLike]; + type OutputTuple = [previousAdmin: string, newAdmin: string]; + interface OutputObject { + previousAdmin: string; + newAdmin: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace UpgradedEvent { + type InputTuple = [implementation: AddressLike]; + type OutputTuple = [implementation: string]; + interface OutputObject { + implementation: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface IERC1967 extends BaseContract { + connect(runner?: ContractRunner | null): IERC1967; + waitForDeployment(): Promise; + interface: IERC1967Interface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + getFunction(key: string | FunctionFragment): T; + getEvent(key: "AdminChanged"): TypedContractEvent; + getEvent(key: "Upgraded"): TypedContractEvent; + filters: { + "AdminChanged(address,address)": TypedContractEvent; + AdminChanged: TypedContractEvent; + "Upgraded(address)": TypedContractEvent; + Upgraded: TypedContractEvent; + }; +} +//# sourceMappingURL=IERC1967.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/IERC1967.d.ts.map b/dist/types/contracts/IERC1967.d.ts.map new file mode 100644 index 00000000..b485ba79 --- /dev/null +++ b/dist/types/contracts/IERC1967.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC1967.d.ts","sourceRoot":"","sources":["../../../types/contracts/IERC1967.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/IERC1967.js b/dist/types/contracts/IERC1967.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/IERC1967.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/IMintingManager.d.ts b/dist/types/contracts/IMintingManager.d.ts new file mode 100644 index 00000000..c871a967 --- /dev/null +++ b/dist/types/contracts/IMintingManager.d.ts @@ -0,0 +1,357 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../common"; +export interface IMintingManagerInterface extends Interface { + getFunction(nameOrSignature: "addTld" | "buy" | "buyForErc20" | "claim" | "claimTo" | "claimToWithRecords" | "issueExpirableWithRecords" | "issueWithRecords" | "removeTld" | "renew" | "revoke" | "setTokenURIPrefix" | "withdraw(address)" | "withdraw(address,address)"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "AdminChanged" | "DomainPurchase" | "NewTld" | "RemoveTld" | "Upgraded" | "Withdrawal"): EventFragment; + encodeFunctionData(functionFragment: "addTld", values: [string, boolean]): string; + encodeFunctionData(functionFragment: "buy", values: [ + AddressLike, + string[], + string[], + string[], + BigNumberish, + BigNumberish, + BytesLike + ]): string; + encodeFunctionData(functionFragment: "buyForErc20", values: [ + AddressLike, + string[], + string[], + string[], + BigNumberish, + AddressLike, + BigNumberish, + BytesLike + ]): string; + encodeFunctionData(functionFragment: "claim", values: [BigNumberish, string]): string; + encodeFunctionData(functionFragment: "claimTo", values: [AddressLike, BigNumberish, string]): string; + encodeFunctionData(functionFragment: "claimToWithRecords", values: [AddressLike, BigNumberish, string, string[], string[]]): string; + encodeFunctionData(functionFragment: "issueExpirableWithRecords", values: [AddressLike, string[], string[], string[], BigNumberish, boolean]): string; + encodeFunctionData(functionFragment: "issueWithRecords", values: [AddressLike, string[], string[], string[], boolean]): string; + encodeFunctionData(functionFragment: "removeTld", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "renew", values: [BigNumberish, BigNumberish]): string; + encodeFunctionData(functionFragment: "revoke", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "setTokenURIPrefix", values: [string]): string; + encodeFunctionData(functionFragment: "withdraw(address)", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "withdraw(address,address)", values: [AddressLike, AddressLike]): string; + decodeFunctionResult(functionFragment: "addTld", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "buy", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "buyForErc20", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "claim", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "claimTo", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "claimToWithRecords", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "issueExpirableWithRecords", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "issueWithRecords", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "removeTld", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renew", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "revoke", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setTokenURIPrefix", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "withdraw(address)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "withdraw(address,address)", data: BytesLike): Result; +} +export declare namespace AdminChangedEvent { + type InputTuple = [previousAdmin: AddressLike, newAdmin: AddressLike]; + type OutputTuple = [previousAdmin: string, newAdmin: string]; + interface OutputObject { + previousAdmin: string; + newAdmin: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace DomainPurchaseEvent { + type InputTuple = [ + tokenId: BigNumberish, + sender: AddressLike, + owner: AddressLike, + price: BigNumberish, + token: AddressLike + ]; + type OutputTuple = [ + tokenId: bigint, + sender: string, + owner: string, + price: bigint, + token: string + ]; + interface OutputObject { + tokenId: bigint; + sender: string; + owner: string; + price: bigint; + token: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NewTldEvent { + type InputTuple = [tokenId: BigNumberish, tld: string]; + type OutputTuple = [tokenId: bigint, tld: string]; + interface OutputObject { + tokenId: bigint; + tld: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RemoveTldEvent { + type InputTuple = [tokenId: BigNumberish]; + type OutputTuple = [tokenId: bigint]; + interface OutputObject { + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace UpgradedEvent { + type InputTuple = [implementation: AddressLike]; + type OutputTuple = [implementation: string]; + interface OutputObject { + implementation: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace WithdrawalEvent { + type InputTuple = [ + recepient: AddressLike, + value: BigNumberish, + token: AddressLike + ]; + type OutputTuple = [recepient: string, value: bigint, token: string]; + interface OutputObject { + recepient: string; + value: bigint; + token: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface IMintingManager extends BaseContract { + connect(runner?: ContractRunner | null): IMintingManager; + waitForDeployment(): Promise; + interface: IMintingManagerInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + addTld: TypedContractMethod<[ + tld: string, + isExpirable: boolean + ], [ + void + ], "nonpayable">; + buy: TypedContractMethod<[ + owner: AddressLike, + labels: string[], + keys: string[], + values: string[], + expiry: BigNumberish, + price: BigNumberish, + signature: BytesLike + ], [ + void + ], "payable">; + buyForErc20: TypedContractMethod<[ + owner: AddressLike, + labels: string[], + keys: string[], + values: string[], + expiry: BigNumberish, + token: AddressLike, + price: BigNumberish, + signature: BytesLike + ], [ + void + ], "nonpayable">; + claim: TypedContractMethod<[ + tld: BigNumberish, + label: string + ], [ + void + ], "nonpayable">; + claimTo: TypedContractMethod<[ + to: AddressLike, + tld: BigNumberish, + label: string + ], [ + void + ], "nonpayable">; + claimToWithRecords: TypedContractMethod<[ + to: AddressLike, + tld: BigNumberish, + label: string, + keys: string[], + values: string[] + ], [ + void + ], "nonpayable">; + issueExpirableWithRecords: TypedContractMethod<[ + to: AddressLike, + labels: string[], + keys: string[], + values: string[], + expiry: BigNumberish, + withReverse: boolean + ], [ + void + ], "nonpayable">; + issueWithRecords: TypedContractMethod<[ + to: AddressLike, + labels: string[], + keys: string[], + values: string[], + withReverse: boolean + ], [ + void + ], "nonpayable">; + removeTld: TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; + renew: TypedContractMethod<[ + expiry: BigNumberish, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + revoke: TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; + setTokenURIPrefix: TypedContractMethod<[ + prefix: string + ], [ + void + ], "nonpayable">; + "withdraw(address)": TypedContractMethod<[ + recepient: AddressLike + ], [ + void + ], "nonpayable">; + "withdraw(address,address)": TypedContractMethod<[ + token: AddressLike, + recepient: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "addTld"): TypedContractMethod<[ + tld: string, + isExpirable: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "buy"): TypedContractMethod<[ + owner: AddressLike, + labels: string[], + keys: string[], + values: string[], + expiry: BigNumberish, + price: BigNumberish, + signature: BytesLike + ], [ + void + ], "payable">; + getFunction(nameOrSignature: "buyForErc20"): TypedContractMethod<[ + owner: AddressLike, + labels: string[], + keys: string[], + values: string[], + expiry: BigNumberish, + token: AddressLike, + price: BigNumberish, + signature: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "claim"): TypedContractMethod<[ + tld: BigNumberish, + label: string + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "claimTo"): TypedContractMethod<[ + to: AddressLike, + tld: BigNumberish, + label: string + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "claimToWithRecords"): TypedContractMethod<[ + to: AddressLike, + tld: BigNumberish, + label: string, + keys: string[], + values: string[] + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "issueExpirableWithRecords"): TypedContractMethod<[ + to: AddressLike, + labels: string[], + keys: string[], + values: string[], + expiry: BigNumberish, + withReverse: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "issueWithRecords"): TypedContractMethod<[ + to: AddressLike, + labels: string[], + keys: string[], + values: string[], + withReverse: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "removeTld"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; + getFunction(nameOrSignature: "renew"): TypedContractMethod<[ + expiry: BigNumberish, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "revoke"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; + getFunction(nameOrSignature: "setTokenURIPrefix"): TypedContractMethod<[prefix: string], [void], "nonpayable">; + getFunction(nameOrSignature: "withdraw(address)"): TypedContractMethod<[recepient: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "withdraw(address,address)"): TypedContractMethod<[ + token: AddressLike, + recepient: AddressLike + ], [ + void + ], "nonpayable">; + getEvent(key: "AdminChanged"): TypedContractEvent; + getEvent(key: "DomainPurchase"): TypedContractEvent; + getEvent(key: "NewTld"): TypedContractEvent; + getEvent(key: "RemoveTld"): TypedContractEvent; + getEvent(key: "Upgraded"): TypedContractEvent; + getEvent(key: "Withdrawal"): TypedContractEvent; + filters: { + "AdminChanged(address,address)": TypedContractEvent; + AdminChanged: TypedContractEvent; + "DomainPurchase(uint256,address,address,uint256,address)": TypedContractEvent; + DomainPurchase: TypedContractEvent; + "NewTld(uint256,string)": TypedContractEvent; + NewTld: TypedContractEvent; + "RemoveTld(uint256)": TypedContractEvent; + RemoveTld: TypedContractEvent; + "Upgraded(address)": TypedContractEvent; + Upgraded: TypedContractEvent; + "Withdrawal(address,uint256,address)": TypedContractEvent; + Withdrawal: TypedContractEvent; + }; +} +//# sourceMappingURL=IMintingManager.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/IMintingManager.d.ts.map b/dist/types/contracts/IMintingManager.d.ts.map new file mode 100644 index 00000000..b7a4a3af --- /dev/null +++ b/dist/types/contracts/IMintingManager.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IMintingManager.d.ts","sourceRoot":"","sources":["../../../types/contracts/IMintingManager.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/IMintingManager.js b/dist/types/contracts/IMintingManager.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/IMintingManager.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/IRecordReader.d.ts b/dist/types/contracts/IRecordReader.d.ts new file mode 100644 index 00000000..4d4f6402 --- /dev/null +++ b/dist/types/contracts/IRecordReader.d.ts @@ -0,0 +1,90 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../common"; +export interface IRecordReaderInterface extends Interface { + getFunction(nameOrSignature: "get" | "getByHash" | "getMany" | "getManyByHash"): FunctionFragment; + encodeFunctionData(functionFragment: "get", values: [string, BigNumberish]): string; + encodeFunctionData(functionFragment: "getByHash", values: [BigNumberish, BigNumberish]): string; + encodeFunctionData(functionFragment: "getMany", values: [string[], BigNumberish]): string; + encodeFunctionData(functionFragment: "getManyByHash", values: [BigNumberish[], BigNumberish]): string; + decodeFunctionResult(functionFragment: "get", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getByHash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getMany", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getManyByHash", data: BytesLike): Result; +} +export interface IRecordReader extends BaseContract { + connect(runner?: ContractRunner | null): IRecordReader; + waitForDeployment(): Promise; + interface: IRecordReaderInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + get: TypedContractMethod<[ + key: string, + tokenId: BigNumberish + ], [ + string + ], "view">; + getByHash: TypedContractMethod<[ + keyHash: BigNumberish, + tokenId: BigNumberish + ], [ + [string, string] & { + key: string; + value: string; + } + ], "view">; + getMany: TypedContractMethod<[ + keys: string[], + tokenId: BigNumberish + ], [ + string[] + ], "view">; + getManyByHash: TypedContractMethod<[ + keyHashes: BigNumberish[], + tokenId: BigNumberish + ], [ + [string[], string[]] & { + keys: string[]; + values: string[]; + } + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "get"): TypedContractMethod<[ + key: string, + tokenId: BigNumberish + ], [ + string + ], "view">; + getFunction(nameOrSignature: "getByHash"): TypedContractMethod<[ + keyHash: BigNumberish, + tokenId: BigNumberish + ], [ + [string, string] & { + key: string; + value: string; + } + ], "view">; + getFunction(nameOrSignature: "getMany"): TypedContractMethod<[ + keys: string[], + tokenId: BigNumberish + ], [ + string[] + ], "view">; + getFunction(nameOrSignature: "getManyByHash"): TypedContractMethod<[ + keyHashes: BigNumberish[], + tokenId: BigNumberish + ], [ + [string[], string[]] & { + keys: string[]; + values: string[]; + } + ], "view">; + filters: {}; +} +//# sourceMappingURL=IRecordReader.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/IRecordReader.d.ts.map b/dist/types/contracts/IRecordReader.d.ts.map new file mode 100644 index 00000000..6419e1d7 --- /dev/null +++ b/dist/types/contracts/IRecordReader.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IRecordReader.d.ts","sourceRoot":"","sources":["../../../types/contracts/IRecordReader.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,aAAa,EACb,mBAAmB,EACpB,MAAM,WAAW,CAAC;AAEnB,MAAM,WAAW,sBAAuB,SAAQ,SAAS;IACvD,WAAW,CACT,eAAe,EAAE,KAAK,GAAG,WAAW,GAAG,SAAS,GAAG,eAAe,GACjE,gBAAgB,CAAC;IAEpB,kBAAkB,CAChB,gBAAgB,EAAE,KAAK,EACvB,MAAM,EAAE,CAAC,MAAM,EAAE,YAAY,CAAC,GAC7B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,WAAW,EAC7B,MAAM,EAAE,CAAC,YAAY,EAAE,YAAY,CAAC,GACnC,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,SAAS,EAC3B,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE,YAAY,CAAC,GAC/B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,eAAe,EACjC,MAAM,EAAE,CAAC,YAAY,EAAE,EAAE,YAAY,CAAC,GACrC,MAAM,CAAC;IAEV,oBAAoB,CAAC,gBAAgB,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IACvE,oBAAoB,CAAC,gBAAgB,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC7E,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,oBAAoB,CAClB,gBAAgB,EAAE,eAAe,EACjC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;CACX;AAED,MAAM,WAAW,aAAc,SAAQ,YAAY;IACjD,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,aAAa,CAAC;IACvD,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,sBAAsB,CAAC;IAElC,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,GAAG,EAAE,mBAAmB,CACtB;QAAC,GAAG,EAAE,MAAM;QAAE,OAAO,EAAE,YAAY;KAAC,EACpC;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IAEF,SAAS,EAAE,mBAAmB,CAC5B;QAAC,OAAO,EAAE,YAAY;QAAE,OAAO,EAAE,YAAY;KAAC,EAC9C;QAAC,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG;YAAE,GAAG,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAA;SAAE;KAAC,EACnD,MAAM,CACP,CAAC;IAEF,OAAO,EAAE,mBAAmB,CAC1B;QAAC,IAAI,EAAE,MAAM,EAAE;QAAE,OAAO,EAAE,YAAY;KAAC,EACvC;QAAC,MAAM,EAAE;KAAC,EACV,MAAM,CACP,CAAC;IAEF,aAAa,EAAE,mBAAmB,CAChC;QAAC,SAAS,EAAE,YAAY,EAAE;QAAE,OAAO,EAAE,YAAY;KAAC,EAClD;QAAC,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,GAAG;YAAE,IAAI,EAAE,MAAM,EAAE,CAAC;YAAC,MAAM,EAAE,MAAM,EAAE,CAAA;SAAE;KAAC,EAC7D,MAAM,CACP,CAAC;IAEF,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,WAAW,CACT,eAAe,EAAE,KAAK,GACrB,mBAAmB,CACpB;QAAC,GAAG,EAAE,MAAM;QAAE,OAAO,EAAE,YAAY;KAAC,EACpC;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,WAAW,GAC3B,mBAAmB,CACpB;QAAC,OAAO,EAAE,YAAY;QAAE,OAAO,EAAE,YAAY;KAAC,EAC9C;QAAC,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG;YAAE,GAAG,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAA;SAAE;KAAC,EACnD,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,SAAS,GACzB,mBAAmB,CACpB;QAAC,IAAI,EAAE,MAAM,EAAE;QAAE,OAAO,EAAE,YAAY;KAAC,EACvC;QAAC,MAAM,EAAE;KAAC,EACV,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,eAAe,GAC/B,mBAAmB,CACpB;QAAC,SAAS,EAAE,YAAY,EAAE;QAAE,OAAO,EAAE,YAAY;KAAC,EAClD;QAAC,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,GAAG;YAAE,IAAI,EAAE,MAAM,EAAE,CAAC;YAAC,MAAM,EAAE,MAAM,EAAE,CAAA;SAAE;KAAC,EAC7D,MAAM,CACP,CAAC;IAEF,OAAO,EAAE,EAAE,CAAC;CACb"} \ No newline at end of file diff --git a/dist/types/contracts/IRecordReader.js b/dist/types/contracts/IRecordReader.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/IRecordReader.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/IRecordStorage.d.ts b/dist/types/contracts/IRecordStorage.d.ts new file mode 100644 index 00000000..5c3ef370 --- /dev/null +++ b/dist/types/contracts/IRecordStorage.d.ts @@ -0,0 +1,240 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../common"; +export interface IRecordStorageInterface extends Interface { + getFunction(nameOrSignature: "get" | "getByHash" | "getMany" | "getManyByHash" | "reconfigure" | "reset" | "set" | "setByHash" | "setMany" | "setManyByHash"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "NewKey" | "ResetRecords" | "Set"): EventFragment; + encodeFunctionData(functionFragment: "get", values: [string, BigNumberish]): string; + encodeFunctionData(functionFragment: "getByHash", values: [BigNumberish, BigNumberish]): string; + encodeFunctionData(functionFragment: "getMany", values: [string[], BigNumberish]): string; + encodeFunctionData(functionFragment: "getManyByHash", values: [BigNumberish[], BigNumberish]): string; + encodeFunctionData(functionFragment: "reconfigure", values: [string[], string[], BigNumberish]): string; + encodeFunctionData(functionFragment: "reset", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "set", values: [string, string, BigNumberish]): string; + encodeFunctionData(functionFragment: "setByHash", values: [BigNumberish, string, BigNumberish]): string; + encodeFunctionData(functionFragment: "setMany", values: [string[], string[], BigNumberish]): string; + encodeFunctionData(functionFragment: "setManyByHash", values: [BigNumberish[], string[], BigNumberish]): string; + decodeFunctionResult(functionFragment: "get", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getByHash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getMany", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getManyByHash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "reconfigure", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "reset", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "set", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setByHash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setMany", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setManyByHash", data: BytesLike): Result; +} +export declare namespace NewKeyEvent { + type InputTuple = [ + tokenId: BigNumberish, + keyIndex: string, + key: string + ]; + type OutputTuple = [tokenId: bigint, keyIndex: string, key: string]; + interface OutputObject { + tokenId: bigint; + keyIndex: string; + key: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ResetRecordsEvent { + type InputTuple = [tokenId: BigNumberish]; + type OutputTuple = [tokenId: bigint]; + interface OutputObject { + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace SetEvent { + type InputTuple = [ + tokenId: BigNumberish, + keyIndex: string, + valueIndex: string, + key: string, + value: string + ]; + type OutputTuple = [ + tokenId: bigint, + keyIndex: string, + valueIndex: string, + key: string, + value: string + ]; + interface OutputObject { + tokenId: bigint; + keyIndex: string; + valueIndex: string; + key: string; + value: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface IRecordStorage extends BaseContract { + connect(runner?: ContractRunner | null): IRecordStorage; + waitForDeployment(): Promise; + interface: IRecordStorageInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + get: TypedContractMethod<[ + key: string, + tokenId: BigNumberish + ], [ + string + ], "view">; + getByHash: TypedContractMethod<[ + keyHash: BigNumberish, + tokenId: BigNumberish + ], [ + [string, string] & { + key: string; + value: string; + } + ], "view">; + getMany: TypedContractMethod<[ + keys: string[], + tokenId: BigNumberish + ], [ + string[] + ], "view">; + getManyByHash: TypedContractMethod<[ + keyHashes: BigNumberish[], + tokenId: BigNumberish + ], [ + [string[], string[]] & { + keys: string[]; + values: string[]; + } + ], "view">; + reconfigure: TypedContractMethod<[ + keys: string[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + reset: TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; + set: TypedContractMethod<[ + key: string, + value: string, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + setByHash: TypedContractMethod<[ + keyHash: BigNumberish, + value: string, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + setMany: TypedContractMethod<[ + keys: string[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + setManyByHash: TypedContractMethod<[ + keyHashes: BigNumberish[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "get"): TypedContractMethod<[ + key: string, + tokenId: BigNumberish + ], [ + string + ], "view">; + getFunction(nameOrSignature: "getByHash"): TypedContractMethod<[ + keyHash: BigNumberish, + tokenId: BigNumberish + ], [ + [string, string] & { + key: string; + value: string; + } + ], "view">; + getFunction(nameOrSignature: "getMany"): TypedContractMethod<[ + keys: string[], + tokenId: BigNumberish + ], [ + string[] + ], "view">; + getFunction(nameOrSignature: "getManyByHash"): TypedContractMethod<[ + keyHashes: BigNumberish[], + tokenId: BigNumberish + ], [ + [string[], string[]] & { + keys: string[]; + values: string[]; + } + ], "view">; + getFunction(nameOrSignature: "reconfigure"): TypedContractMethod<[ + keys: string[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "reset"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; + getFunction(nameOrSignature: "set"): TypedContractMethod<[ + key: string, + value: string, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setByHash"): TypedContractMethod<[ + keyHash: BigNumberish, + value: string, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setMany"): TypedContractMethod<[ + keys: string[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setManyByHash"): TypedContractMethod<[ + keyHashes: BigNumberish[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getEvent(key: "NewKey"): TypedContractEvent; + getEvent(key: "ResetRecords"): TypedContractEvent; + getEvent(key: "Set"): TypedContractEvent; + filters: { + "NewKey(uint256,string,string)": TypedContractEvent; + NewKey: TypedContractEvent; + "ResetRecords(uint256)": TypedContractEvent; + ResetRecords: TypedContractEvent; + "Set(uint256,string,string,string,string)": TypedContractEvent; + Set: TypedContractEvent; + }; +} +//# sourceMappingURL=IRecordStorage.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/IRecordStorage.d.ts.map b/dist/types/contracts/IRecordStorage.d.ts.map new file mode 100644 index 00000000..2d9956a6 --- /dev/null +++ b/dist/types/contracts/IRecordStorage.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IRecordStorage.d.ts","sourceRoot":"","sources":["../../../types/contracts/IRecordStorage.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/IRecordStorage.js b/dist/types/contracts/IRecordStorage.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/IRecordStorage.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/IRegistryReader.d.ts b/dist/types/contracts/IRegistryReader.d.ts new file mode 100644 index 00000000..7a4bdc12 --- /dev/null +++ b/dist/types/contracts/IRegistryReader.d.ts @@ -0,0 +1,86 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../common"; +export interface IRegistryReaderInterface extends Interface { + getFunction(nameOrSignature: "balanceOf" | "exists" | "getApproved" | "isApprovedForAll" | "isApprovedOrOwner" | "namehash" | "ownerOf" | "resolverOf" | "reverseNameOf" | "reverseOf" | "tokenURI"): FunctionFragment; + encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "exists", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "isApprovedOrOwner", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "namehash", values: [string[]]): string; + encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "resolverOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "reverseNameOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "reverseOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "tokenURI", values: [BigNumberish]): string; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "exists", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedOrOwner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "namehash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "resolverOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "reverseNameOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "reverseOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "tokenURI", data: BytesLike): Result; +} +export interface IRegistryReader extends BaseContract { + connect(runner?: ContractRunner | null): IRegistryReader; + waitForDeployment(): Promise; + interface: IRegistryReaderInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; + exists: TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; + getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + isApprovedForAll: TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + isApprovedOrOwner: TypedContractMethod<[ + spender: AddressLike, + tokenId: BigNumberish + ], [ + boolean + ], "view">; + namehash: TypedContractMethod<[labels: string[]], [bigint], "view">; + ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + resolverOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + reverseNameOf: TypedContractMethod<[addr: AddressLike], [string], "view">; + reverseOf: TypedContractMethod<[addr: AddressLike], [bigint], "view">; + tokenURI: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; + getFunction(nameOrSignature: "exists"): TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; + getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "isApprovedOrOwner"): TypedContractMethod<[ + spender: AddressLike, + tokenId: BigNumberish + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "namehash"): TypedContractMethod<[labels: string[]], [bigint], "view">; + getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "resolverOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "reverseNameOf"): TypedContractMethod<[addr: AddressLike], [string], "view">; + getFunction(nameOrSignature: "reverseOf"): TypedContractMethod<[addr: AddressLike], [bigint], "view">; + getFunction(nameOrSignature: "tokenURI"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + filters: {}; +} +//# sourceMappingURL=IRegistryReader.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/IRegistryReader.d.ts.map b/dist/types/contracts/IRegistryReader.d.ts.map new file mode 100644 index 00000000..d72d6eb3 --- /dev/null +++ b/dist/types/contracts/IRegistryReader.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IRegistryReader.d.ts","sourceRoot":"","sources":["../../../types/contracts/IRegistryReader.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,WAAW,EACX,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,aAAa,EACb,mBAAmB,EACpB,MAAM,WAAW,CAAC;AAEnB,MAAM,WAAW,wBAAyB,SAAQ,SAAS;IACzD,WAAW,CACT,eAAe,EACX,WAAW,GACX,QAAQ,GACR,aAAa,GACb,kBAAkB,GAClB,mBAAmB,GACnB,UAAU,GACV,SAAS,GACT,YAAY,GACZ,eAAe,GACf,WAAW,GACX,UAAU,GACb,gBAAgB,CAAC;IAEpB,kBAAkB,CAChB,gBAAgB,EAAE,WAAW,EAC7B,MAAM,EAAE,CAAC,WAAW,CAAC,GACpB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,QAAQ,EAC1B,MAAM,EAAE,CAAC,YAAY,CAAC,GACrB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,aAAa,EAC/B,MAAM,EAAE,CAAC,YAAY,CAAC,GACrB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,kBAAkB,EACpC,MAAM,EAAE,CAAC,WAAW,EAAE,WAAW,CAAC,GACjC,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,mBAAmB,EACrC,MAAM,EAAE,CAAC,WAAW,EAAE,YAAY,CAAC,GAClC,MAAM,CAAC;IACV,kBAAkB,CAAC,gBAAgB,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,MAAM,EAAE,CAAC,GAAG,MAAM,CAAC;IAC7E,kBAAkB,CAChB,gBAAgB,EAAE,SAAS,EAC3B,MAAM,EAAE,CAAC,YAAY,CAAC,GACrB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,YAAY,EAC9B,MAAM,EAAE,CAAC,YAAY,CAAC,GACrB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,eAAe,EACjC,MAAM,EAAE,CAAC,WAAW,CAAC,GACpB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,WAAW,EAC7B,MAAM,EAAE,CAAC,WAAW,CAAC,GACpB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,UAAU,EAC5B,MAAM,EAAE,CAAC,YAAY,CAAC,GACrB,MAAM,CAAC;IAEV,oBAAoB,CAAC,gBAAgB,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC7E,oBAAoB,CAAC,gBAAgB,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC1E,oBAAoB,CAClB,gBAAgB,EAAE,aAAa,EAC/B,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,kBAAkB,EACpC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,mBAAmB,EACrC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC5E,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,oBAAoB,CAAC,gBAAgB,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC9E,oBAAoB,CAClB,gBAAgB,EAAE,eAAe,EACjC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC7E,oBAAoB,CAAC,gBAAgB,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;CAC7E;AAED,MAAM,WAAW,eAAgB,SAAQ,YAAY;IACnD,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,eAAe,CAAC;IACzD,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,wBAAwB,CAAC;IAEpC,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,EAAE,mBAAmB,CAAC,CAAC,KAAK,EAAE,WAAW,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEvE,MAAM,EAAE,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IAExE,WAAW,EAAE,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAE5E,gBAAgB,EAAE,mBAAmB,CACnC;QAAC,KAAK,EAAE,WAAW;QAAE,QAAQ,EAAE,WAAW;KAAC,EAC3C;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,iBAAiB,EAAE,mBAAmB,CACpC;QAAC,OAAO,EAAE,WAAW;QAAE,OAAO,EAAE,YAAY;KAAC,EAC7C;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,QAAQ,EAAE,mBAAmB,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEpE,OAAO,EAAE,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAExE,UAAU,EAAE,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAE3E,aAAa,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAE1E,SAAS,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEtE,QAAQ,EAAE,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEzE,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,WAAW,CACT,eAAe,EAAE,WAAW,GAC3B,mBAAmB,CAAC,CAAC,KAAK,EAAE,WAAW,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC/D,WAAW,CACT,eAAe,EAAE,QAAQ,GACxB,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IACnE,WAAW,CACT,eAAe,EAAE,aAAa,GAC7B,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAClE,WAAW,CACT,eAAe,EAAE,kBAAkB,GAClC,mBAAmB,CACpB;QAAC,KAAK,EAAE,WAAW;QAAE,QAAQ,EAAE,WAAW;KAAC,EAC3C;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,mBAAmB,GACnC,mBAAmB,CACpB;QAAC,OAAO,EAAE,WAAW;QAAE,OAAO,EAAE,YAAY;KAAC,EAC7C;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,UAAU,GAC1B,mBAAmB,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC7D,WAAW,CACT,eAAe,EAAE,SAAS,GACzB,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAClE,WAAW,CACT,eAAe,EAAE,YAAY,GAC5B,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAClE,WAAW,CACT,eAAe,EAAE,eAAe,GAC/B,mBAAmB,CAAC,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC9D,WAAW,CACT,eAAe,EAAE,WAAW,GAC3B,mBAAmB,CAAC,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC9D,WAAW,CACT,eAAe,EAAE,UAAU,GAC1B,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAElE,OAAO,EAAE,EAAE,CAAC;CACb"} \ No newline at end of file diff --git a/dist/types/contracts/IRegistryReader.js b/dist/types/contracts/IRegistryReader.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/IRegistryReader.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/IReverseRegistry.d.ts b/dist/types/contracts/IReverseRegistry.d.ts new file mode 100644 index 00000000..8c3525de --- /dev/null +++ b/dist/types/contracts/IReverseRegistry.d.ts @@ -0,0 +1,69 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../common"; +export interface IReverseRegistryInterface extends Interface { + getFunction(nameOrSignature: "removeReverse" | "reverseNameOf" | "reverseOf" | "setReverse"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "RemoveReverse" | "SetReverse"): EventFragment; + encodeFunctionData(functionFragment: "removeReverse", values?: undefined): string; + encodeFunctionData(functionFragment: "reverseNameOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "reverseOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "setReverse", values: [string[]]): string; + decodeFunctionResult(functionFragment: "removeReverse", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "reverseNameOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "reverseOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setReverse", data: BytesLike): Result; +} +export declare namespace RemoveReverseEvent { + type InputTuple = [addr: AddressLike]; + type OutputTuple = [addr: string]; + interface OutputObject { + addr: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace SetReverseEvent { + type InputTuple = [addr: AddressLike, tokenId: BigNumberish]; + type OutputTuple = [addr: string, tokenId: bigint]; + interface OutputObject { + addr: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface IReverseRegistry extends BaseContract { + connect(runner?: ContractRunner | null): IReverseRegistry; + waitForDeployment(): Promise; + interface: IReverseRegistryInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + removeReverse: TypedContractMethod<[], [void], "nonpayable">; + reverseNameOf: TypedContractMethod<[addr: AddressLike], [string], "view">; + reverseOf: TypedContractMethod<[addr: AddressLike], [bigint], "view">; + setReverse: TypedContractMethod<[labels: string[]], [void], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "removeReverse"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "reverseNameOf"): TypedContractMethod<[addr: AddressLike], [string], "view">; + getFunction(nameOrSignature: "reverseOf"): TypedContractMethod<[addr: AddressLike], [bigint], "view">; + getFunction(nameOrSignature: "setReverse"): TypedContractMethod<[labels: string[]], [void], "nonpayable">; + getEvent(key: "RemoveReverse"): TypedContractEvent; + getEvent(key: "SetReverse"): TypedContractEvent; + filters: { + "RemoveReverse(address)": TypedContractEvent; + RemoveReverse: TypedContractEvent; + "SetReverse(address,uint256)": TypedContractEvent; + SetReverse: TypedContractEvent; + }; +} +//# sourceMappingURL=IReverseRegistry.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/IReverseRegistry.d.ts.map b/dist/types/contracts/IReverseRegistry.d.ts.map new file mode 100644 index 00000000..c49c8e43 --- /dev/null +++ b/dist/types/contracts/IReverseRegistry.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IReverseRegistry.d.ts","sourceRoot":"","sources":["../../../types/contracts/IReverseRegistry.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,aAAa,EACb,WAAW,EACX,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,mBAAmB,EACnB,aAAa,EACb,mBAAmB,EACpB,MAAM,WAAW,CAAC;AAEnB,MAAM,WAAW,yBAA0B,SAAQ,SAAS;IAC1D,WAAW,CACT,eAAe,EACX,eAAe,GACf,eAAe,GACf,WAAW,GACX,YAAY,GACf,gBAAgB,CAAC;IAEpB,QAAQ,CACN,sBAAsB,EAAE,eAAe,GAAG,YAAY,GACrD,aAAa,CAAC;IAEjB,kBAAkB,CAChB,gBAAgB,EAAE,eAAe,EACjC,MAAM,CAAC,EAAE,SAAS,GACjB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,eAAe,EACjC,MAAM,EAAE,CAAC,WAAW,CAAC,GACpB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,WAAW,EAC7B,MAAM,EAAE,CAAC,WAAW,CAAC,GACpB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,YAAY,EAC9B,MAAM,EAAE,CAAC,MAAM,EAAE,CAAC,GACjB,MAAM,CAAC;IAEV,oBAAoB,CAClB,gBAAgB,EAAE,eAAe,EACjC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,eAAe,EACjC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC7E,oBAAoB,CAAC,gBAAgB,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;CAC/E;AAED,yBAAiB,kBAAkB,CAAC;IAClC,KAAY,UAAU,GAAG,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IAC7C,KAAY,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACzC,UAAiB,YAAY;QAC3B,IAAI,EAAE,MAAM,CAAC;KACd;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,eAAe,CAAC;IAC/B,KAAY,UAAU,GAAG,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC;IACpE,KAAY,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IAC1D,UAAiB,YAAY;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;KACjB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,MAAM,WAAW,gBAAiB,SAAQ,YAAY;IACpD,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,gBAAgB,CAAC;IAC1D,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,yBAAyB,CAAC;IAErC,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,aAAa,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IAE7D,aAAa,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAE1E,SAAS,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEtE,UAAU,EAAE,mBAAmB,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IAE1E,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,WAAW,CACT,eAAe,EAAE,eAAe,GAC/B,mBAAmB,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IACjD,WAAW,CACT,eAAe,EAAE,eAAe,GAC/B,mBAAmB,CAAC,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC9D,WAAW,CACT,eAAe,EAAE,WAAW,GAC3B,mBAAmB,CAAC,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC9D,WAAW,CACT,eAAe,EAAE,YAAY,GAC5B,mBAAmB,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IAEjE,QAAQ,CACN,GAAG,EAAE,eAAe,GACnB,kBAAkB,CACnB,kBAAkB,CAAC,UAAU,EAC7B,kBAAkB,CAAC,WAAW,EAC9B,kBAAkB,CAAC,YAAY,CAChC,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,YAAY,GAChB,kBAAkB,CACnB,eAAe,CAAC,UAAU,EAC1B,eAAe,CAAC,WAAW,EAC3B,eAAe,CAAC,YAAY,CAC7B,CAAC;IAEF,OAAO,EAAE;QACP,wBAAwB,EAAE,kBAAkB,CAC1C,kBAAkB,CAAC,UAAU,EAC7B,kBAAkB,CAAC,WAAW,EAC9B,kBAAkB,CAAC,YAAY,CAChC,CAAC;QACF,aAAa,EAAE,kBAAkB,CAC/B,kBAAkB,CAAC,UAAU,EAC7B,kBAAkB,CAAC,WAAW,EAC9B,kBAAkB,CAAC,YAAY,CAChC,CAAC;QAEF,6BAA6B,EAAE,kBAAkB,CAC/C,eAAe,CAAC,UAAU,EAC1B,eAAe,CAAC,WAAW,EAC3B,eAAe,CAAC,YAAY,CAC7B,CAAC;QACF,UAAU,EAAE,kBAAkB,CAC5B,eAAe,CAAC,UAAU,EAC1B,eAAe,CAAC,WAAW,EAC3B,eAAe,CAAC,YAAY,CAC7B,CAAC;KACH,CAAC;CACH"} \ No newline at end of file diff --git a/dist/types/contracts/IReverseRegistry.js b/dist/types/contracts/IReverseRegistry.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/IReverseRegistry.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/IRootRegistry.d.ts b/dist/types/contracts/IRootRegistry.d.ts new file mode 100644 index 00000000..1aea2b3a --- /dev/null +++ b/dist/types/contracts/IRootRegistry.d.ts @@ -0,0 +1,260 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../common"; +export interface IRootRegistryInterface extends Interface { + getFunction(nameOrSignature: "approve" | "balanceOf" | "depositToPolygon" | "exists" | "getApproved" | "isApprovedForAll" | "mint(address,uint256)" | "mint(address,uint256,bytes)" | "ownerOf" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "setApprovalForAll" | "supportsInterface" | "transferFrom" | "withdrawFromPolygon"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "Transfer"): EventFragment; + encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "depositToPolygon", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "exists", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "mint(address,uint256)", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "mint(address,uint256,bytes)", values: [AddressLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "withdrawFromPolygon", values: [BytesLike, BigNumberish, string[], string[]]): string; + decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "depositToPolygon", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "exists", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "mint(address,uint256)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "mint(address,uint256,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "withdrawFromPolygon", data: BytesLike): Result; +} +export declare namespace ApprovalEvent { + type InputTuple = [ + owner: AddressLike, + approved: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [owner: string, approved: string, tokenId: bigint]; + interface OutputObject { + owner: string; + approved: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ApprovalForAllEvent { + type InputTuple = [ + owner: AddressLike, + operator: AddressLike, + approved: boolean + ]; + type OutputTuple = [ + owner: string, + operator: string, + approved: boolean + ]; + interface OutputObject { + owner: string; + operator: string; + approved: boolean; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferEvent { + type InputTuple = [ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [from: string, to: string, tokenId: bigint]; + interface OutputObject { + from: string; + to: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface IRootRegistry extends BaseContract { + connect(runner?: ContractRunner | null): IRootRegistry; + waitForDeployment(): Promise; + interface: IRootRegistryInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + approve: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; + depositToPolygon: TypedContractMethod<[ + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + exists: TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; + getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + isApprovedForAll: TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + "mint(address,uint256)": TypedContractMethod<[ + user: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + "mint(address,uint256,bytes)": TypedContractMethod<[ + user: AddressLike, + tokenId: BigNumberish, + metaData: BytesLike + ], [ + void + ], "nonpayable">; + ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + setApprovalForAll: TypedContractMethod<[ + operator: AddressLike, + _approved: boolean + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + transferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + withdrawFromPolygon: TypedContractMethod<[ + inputData: BytesLike, + tokenId: BigNumberish, + keys: string[], + values: string[] + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "approve"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; + getFunction(nameOrSignature: "depositToPolygon"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; + getFunction(nameOrSignature: "exists"): TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; + getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "mint(address,uint256)"): TypedContractMethod<[ + user: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "mint(address,uint256,bytes)"): TypedContractMethod<[ + user: AddressLike, + tokenId: BigNumberish, + metaData: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ + operator: AddressLike, + _approved: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "withdrawFromPolygon"): TypedContractMethod<[ + inputData: BytesLike, + tokenId: BigNumberish, + keys: string[], + values: string[] + ], [ + void + ], "nonpayable">; + getEvent(key: "Approval"): TypedContractEvent; + getEvent(key: "ApprovalForAll"): TypedContractEvent; + getEvent(key: "Transfer"): TypedContractEvent; + filters: { + "Approval(address,address,uint256)": TypedContractEvent; + Approval: TypedContractEvent; + "ApprovalForAll(address,address,bool)": TypedContractEvent; + ApprovalForAll: TypedContractEvent; + "Transfer(address,address,uint256)": TypedContractEvent; + Transfer: TypedContractEvent; + }; +} +//# sourceMappingURL=IRootRegistry.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/IRootRegistry.d.ts.map b/dist/types/contracts/IRootRegistry.d.ts.map new file mode 100644 index 00000000..f7f15135 --- /dev/null +++ b/dist/types/contracts/IRootRegistry.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IRootRegistry.d.ts","sourceRoot":"","sources":["../../../types/contracts/IRootRegistry.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/IRootRegistry.js b/dist/types/contracts/IRootRegistry.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/IRootRegistry.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/IUNSRegistry.d.ts b/dist/types/contracts/IUNSRegistry.d.ts new file mode 100644 index 00000000..30660748 --- /dev/null +++ b/dist/types/contracts/IUNSRegistry.d.ts @@ -0,0 +1,784 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../common"; +export interface IUNSRegistryInterface extends Interface { + getFunction(nameOrSignature: "addProxyReader" | "approve" | "balanceOf" | "burn" | "deposit" | "depositToPolygon" | "exists" | "expiryOf" | "get" | "getApproved" | "getByHash" | "getMany" | "getManyByHash" | "isApprovedForAll" | "isApprovedOrOwner" | "isExpired" | "mint(address,uint256)" | "mint(address,uint256,bytes)" | "mintTLD" | "mintWithRecords" | "name" | "namehash" | "onERC721Received" | "ownerOf" | "reconfigure" | "removeReverse" | "reset" | "resolverOf" | "reverseNameOf" | "reverseOf" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "set" | "setApprovalForAll" | "setByHash" | "setExpiry" | "setMany" | "setManyByHash" | "setOwner" | "setReverse" | "setTokenURIPrefix" | "supportsInterface" | "symbol" | "tokenURI" | "transferFrom" | "unlock" | "unlockWithRecords" | "withdrawFromPolygon"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "AdminChanged" | "Approval" | "ApprovalForAll" | "NewKey" | "NewURI" | "NewURIPrefix" | "RemoveReverse" | "ResetRecords" | "Set" | "SetExpiry" | "SetReverse" | "Transfer" | "Upgraded"): EventFragment; + encodeFunctionData(functionFragment: "addProxyReader", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "burn", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "deposit", values: [AddressLike, BytesLike]): string; + encodeFunctionData(functionFragment: "depositToPolygon", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "exists", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "expiryOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "get", values: [string, BigNumberish]): string; + encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "getByHash", values: [BigNumberish, BigNumberish]): string; + encodeFunctionData(functionFragment: "getMany", values: [string[], BigNumberish]): string; + encodeFunctionData(functionFragment: "getManyByHash", values: [BigNumberish[], BigNumberish]): string; + encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "isApprovedOrOwner", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "isExpired", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "mint(address,uint256)", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "mint(address,uint256,bytes)", values: [AddressLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "mintTLD", values: [BigNumberish, string]): string; + encodeFunctionData(functionFragment: "mintWithRecords", values: [AddressLike, string[], string[], string[], boolean]): string; + encodeFunctionData(functionFragment: "name", values?: undefined): string; + encodeFunctionData(functionFragment: "namehash", values: [string[]]): string; + encodeFunctionData(functionFragment: "onERC721Received", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "reconfigure", values: [string[], string[], BigNumberish]): string; + encodeFunctionData(functionFragment: "removeReverse", values?: undefined): string; + encodeFunctionData(functionFragment: "reset", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "resolverOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "reverseNameOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "reverseOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "set", values: [string, string, BigNumberish]): string; + encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; + encodeFunctionData(functionFragment: "setByHash", values: [BigNumberish, string, BigNumberish]): string; + encodeFunctionData(functionFragment: "setExpiry", values: [BigNumberish, BigNumberish]): string; + encodeFunctionData(functionFragment: "setMany", values: [string[], string[], BigNumberish]): string; + encodeFunctionData(functionFragment: "setManyByHash", values: [BigNumberish[], string[], BigNumberish]): string; + encodeFunctionData(functionFragment: "setOwner", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "setReverse", values: [string[]]): string; + encodeFunctionData(functionFragment: "setTokenURIPrefix", values: [string]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "symbol", values?: undefined): string; + encodeFunctionData(functionFragment: "tokenURI", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "unlock", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "unlockWithRecords", values: [AddressLike, string[], string[], string[], boolean]): string; + encodeFunctionData(functionFragment: "withdrawFromPolygon", values: [BytesLike, BigNumberish, string[], string[]]): string; + decodeFunctionResult(functionFragment: "addProxyReader", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "burn", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "deposit", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "depositToPolygon", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "exists", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "expiryOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "get", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getByHash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getMany", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getManyByHash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedOrOwner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isExpired", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "mint(address,uint256)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "mint(address,uint256,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "mintTLD", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "mintWithRecords", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "namehash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "onERC721Received", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "reconfigure", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "removeReverse", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "reset", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "resolverOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "reverseNameOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "reverseOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "set", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setByHash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setExpiry", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setMany", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setManyByHash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setOwner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setReverse", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setTokenURIPrefix", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "tokenURI", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "unlock", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "unlockWithRecords", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "withdrawFromPolygon", data: BytesLike): Result; +} +export declare namespace AdminChangedEvent { + type InputTuple = [previousAdmin: AddressLike, newAdmin: AddressLike]; + type OutputTuple = [previousAdmin: string, newAdmin: string]; + interface OutputObject { + previousAdmin: string; + newAdmin: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ApprovalEvent { + type InputTuple = [ + owner: AddressLike, + approved: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [owner: string, approved: string, tokenId: bigint]; + interface OutputObject { + owner: string; + approved: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ApprovalForAllEvent { + type InputTuple = [ + owner: AddressLike, + operator: AddressLike, + approved: boolean + ]; + type OutputTuple = [ + owner: string, + operator: string, + approved: boolean + ]; + interface OutputObject { + owner: string; + operator: string; + approved: boolean; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NewKeyEvent { + type InputTuple = [ + tokenId: BigNumberish, + keyIndex: string, + key: string + ]; + type OutputTuple = [tokenId: bigint, keyIndex: string, key: string]; + interface OutputObject { + tokenId: bigint; + keyIndex: string; + key: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NewURIEvent { + type InputTuple = [tokenId: BigNumberish, uri: string]; + type OutputTuple = [tokenId: bigint, uri: string]; + interface OutputObject { + tokenId: bigint; + uri: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NewURIPrefixEvent { + type InputTuple = [prefix: string]; + type OutputTuple = [prefix: string]; + interface OutputObject { + prefix: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RemoveReverseEvent { + type InputTuple = [addr: AddressLike]; + type OutputTuple = [addr: string]; + interface OutputObject { + addr: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ResetRecordsEvent { + type InputTuple = [tokenId: BigNumberish]; + type OutputTuple = [tokenId: bigint]; + interface OutputObject { + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace SetEvent { + type InputTuple = [ + tokenId: BigNumberish, + keyIndex: string, + valueIndex: string, + key: string, + value: string + ]; + type OutputTuple = [ + tokenId: bigint, + keyIndex: string, + valueIndex: string, + key: string, + value: string + ]; + interface OutputObject { + tokenId: bigint; + keyIndex: string; + valueIndex: string; + key: string; + value: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace SetExpiryEvent { + type InputTuple = [tokenId: BigNumberish, expiry: BigNumberish]; + type OutputTuple = [tokenId: bigint, expiry: bigint]; + interface OutputObject { + tokenId: bigint; + expiry: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace SetReverseEvent { + type InputTuple = [addr: AddressLike, tokenId: BigNumberish]; + type OutputTuple = [addr: string, tokenId: bigint]; + interface OutputObject { + addr: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferEvent { + type InputTuple = [ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [from: string, to: string, tokenId: bigint]; + interface OutputObject { + from: string; + to: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace UpgradedEvent { + type InputTuple = [implementation: AddressLike]; + type OutputTuple = [implementation: string]; + interface OutputObject { + implementation: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface IUNSRegistry extends BaseContract { + connect(runner?: ContractRunner | null): IUNSRegistry; + waitForDeployment(): Promise; + interface: IUNSRegistryInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + addProxyReader: TypedContractMethod<[ + addr: AddressLike + ], [ + void + ], "nonpayable">; + approve: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; + burn: TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; + deposit: TypedContractMethod<[ + user: AddressLike, + depositData: BytesLike + ], [ + void + ], "nonpayable">; + depositToPolygon: TypedContractMethod<[ + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + exists: TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; + expiryOf: TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; + get: TypedContractMethod<[ + key: string, + tokenId: BigNumberish + ], [ + string + ], "view">; + getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getByHash: TypedContractMethod<[ + keyHash: BigNumberish, + tokenId: BigNumberish + ], [ + [string, string] & { + key: string; + value: string; + } + ], "view">; + getMany: TypedContractMethod<[ + keys: string[], + tokenId: BigNumberish + ], [ + string[] + ], "view">; + getManyByHash: TypedContractMethod<[ + keyHashes: BigNumberish[], + tokenId: BigNumberish + ], [ + [string[], string[]] & { + keys: string[]; + values: string[]; + } + ], "view">; + isApprovedForAll: TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + isApprovedOrOwner: TypedContractMethod<[ + spender: AddressLike, + tokenId: BigNumberish + ], [ + boolean + ], "view">; + isExpired: TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; + "mint(address,uint256)": TypedContractMethod<[ + user: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + "mint(address,uint256,bytes)": TypedContractMethod<[ + user: AddressLike, + tokenId: BigNumberish, + metaData: BytesLike + ], [ + void + ], "nonpayable">; + mintTLD: TypedContractMethod<[ + tokenId: BigNumberish, + uri: string + ], [ + void + ], "nonpayable">; + mintWithRecords: TypedContractMethod<[ + to: AddressLike, + labels: string[], + keys: string[], + values: string[], + withReverse: boolean + ], [ + void + ], "nonpayable">; + name: TypedContractMethod<[], [string], "view">; + namehash: TypedContractMethod<[labels: string[]], [bigint], "view">; + onERC721Received: TypedContractMethod<[ + operator: AddressLike, + from: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + string + ], "nonpayable">; + ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + reconfigure: TypedContractMethod<[ + keys: string[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + removeReverse: TypedContractMethod<[], [void], "nonpayable">; + reset: TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; + resolverOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + reverseNameOf: TypedContractMethod<[addr: AddressLike], [string], "view">; + reverseOf: TypedContractMethod<[addr: AddressLike], [bigint], "view">; + "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + set: TypedContractMethod<[ + key: string, + value: string, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + setApprovalForAll: TypedContractMethod<[ + operator: AddressLike, + _approved: boolean + ], [ + void + ], "nonpayable">; + setByHash: TypedContractMethod<[ + keyHash: BigNumberish, + value: string, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + setExpiry: TypedContractMethod<[ + expiry: BigNumberish, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + setMany: TypedContractMethod<[ + keys: string[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + setManyByHash: TypedContractMethod<[ + keyHashes: BigNumberish[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + setOwner: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + setReverse: TypedContractMethod<[labels: string[]], [void], "nonpayable">; + setTokenURIPrefix: TypedContractMethod<[ + prefix: string + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + symbol: TypedContractMethod<[], [string], "view">; + tokenURI: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + transferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + unlock: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + unlockWithRecords: TypedContractMethod<[ + to: AddressLike, + labels: string[], + keys: string[], + values: string[], + withReverse: boolean + ], [ + void + ], "nonpayable">; + withdrawFromPolygon: TypedContractMethod<[ + inputData: BytesLike, + tokenId: BigNumberish, + keys: string[], + values: string[] + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "addProxyReader"): TypedContractMethod<[addr: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "approve"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; + getFunction(nameOrSignature: "burn"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; + getFunction(nameOrSignature: "deposit"): TypedContractMethod<[ + user: AddressLike, + depositData: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "depositToPolygon"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; + getFunction(nameOrSignature: "exists"): TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; + getFunction(nameOrSignature: "expiryOf"): TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; + getFunction(nameOrSignature: "get"): TypedContractMethod<[ + key: string, + tokenId: BigNumberish + ], [ + string + ], "view">; + getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "getByHash"): TypedContractMethod<[ + keyHash: BigNumberish, + tokenId: BigNumberish + ], [ + [string, string] & { + key: string; + value: string; + } + ], "view">; + getFunction(nameOrSignature: "getMany"): TypedContractMethod<[ + keys: string[], + tokenId: BigNumberish + ], [ + string[] + ], "view">; + getFunction(nameOrSignature: "getManyByHash"): TypedContractMethod<[ + keyHashes: BigNumberish[], + tokenId: BigNumberish + ], [ + [string[], string[]] & { + keys: string[]; + values: string[]; + } + ], "view">; + getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "isApprovedOrOwner"): TypedContractMethod<[ + spender: AddressLike, + tokenId: BigNumberish + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "isExpired"): TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; + getFunction(nameOrSignature: "mint(address,uint256)"): TypedContractMethod<[ + user: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "mint(address,uint256,bytes)"): TypedContractMethod<[ + user: AddressLike, + tokenId: BigNumberish, + metaData: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "mintTLD"): TypedContractMethod<[ + tokenId: BigNumberish, + uri: string + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "mintWithRecords"): TypedContractMethod<[ + to: AddressLike, + labels: string[], + keys: string[], + values: string[], + withReverse: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "namehash"): TypedContractMethod<[labels: string[]], [bigint], "view">; + getFunction(nameOrSignature: "onERC721Received"): TypedContractMethod<[ + operator: AddressLike, + from: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + string + ], "nonpayable">; + getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "reconfigure"): TypedContractMethod<[ + keys: string[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "removeReverse"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "reset"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; + getFunction(nameOrSignature: "resolverOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "reverseNameOf"): TypedContractMethod<[addr: AddressLike], [string], "view">; + getFunction(nameOrSignature: "reverseOf"): TypedContractMethod<[addr: AddressLike], [bigint], "view">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "set"): TypedContractMethod<[ + key: string, + value: string, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ + operator: AddressLike, + _approved: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setByHash"): TypedContractMethod<[ + keyHash: BigNumberish, + value: string, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setExpiry"): TypedContractMethod<[ + expiry: BigNumberish, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setMany"): TypedContractMethod<[ + keys: string[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setManyByHash"): TypedContractMethod<[ + keyHashes: BigNumberish[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setOwner"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setReverse"): TypedContractMethod<[labels: string[]], [void], "nonpayable">; + getFunction(nameOrSignature: "setTokenURIPrefix"): TypedContractMethod<[prefix: string], [void], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "symbol"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "tokenURI"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "unlock"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "unlockWithRecords"): TypedContractMethod<[ + to: AddressLike, + labels: string[], + keys: string[], + values: string[], + withReverse: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "withdrawFromPolygon"): TypedContractMethod<[ + inputData: BytesLike, + tokenId: BigNumberish, + keys: string[], + values: string[] + ], [ + void + ], "nonpayable">; + getEvent(key: "AdminChanged"): TypedContractEvent; + getEvent(key: "Approval"): TypedContractEvent; + getEvent(key: "ApprovalForAll"): TypedContractEvent; + getEvent(key: "NewKey"): TypedContractEvent; + getEvent(key: "NewURI"): TypedContractEvent; + getEvent(key: "NewURIPrefix"): TypedContractEvent; + getEvent(key: "RemoveReverse"): TypedContractEvent; + getEvent(key: "ResetRecords"): TypedContractEvent; + getEvent(key: "Set"): TypedContractEvent; + getEvent(key: "SetExpiry"): TypedContractEvent; + getEvent(key: "SetReverse"): TypedContractEvent; + getEvent(key: "Transfer"): TypedContractEvent; + getEvent(key: "Upgraded"): TypedContractEvent; + filters: { + "AdminChanged(address,address)": TypedContractEvent; + AdminChanged: TypedContractEvent; + "Approval(address,address,uint256)": TypedContractEvent; + Approval: TypedContractEvent; + "ApprovalForAll(address,address,bool)": TypedContractEvent; + ApprovalForAll: TypedContractEvent; + "NewKey(uint256,string,string)": TypedContractEvent; + NewKey: TypedContractEvent; + "NewURI(uint256,string)": TypedContractEvent; + NewURI: TypedContractEvent; + "NewURIPrefix(string)": TypedContractEvent; + NewURIPrefix: TypedContractEvent; + "RemoveReverse(address)": TypedContractEvent; + RemoveReverse: TypedContractEvent; + "ResetRecords(uint256)": TypedContractEvent; + ResetRecords: TypedContractEvent; + "Set(uint256,string,string,string,string)": TypedContractEvent; + Set: TypedContractEvent; + "SetExpiry(uint256,uint64)": TypedContractEvent; + SetExpiry: TypedContractEvent; + "SetReverse(address,uint256)": TypedContractEvent; + SetReverse: TypedContractEvent; + "Transfer(address,address,uint256)": TypedContractEvent; + Transfer: TypedContractEvent; + "Upgraded(address)": TypedContractEvent; + Upgraded: TypedContractEvent; + }; +} +//# sourceMappingURL=IUNSRegistry.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/IUNSRegistry.d.ts.map b/dist/types/contracts/IUNSRegistry.d.ts.map new file mode 100644 index 00000000..90b107d3 --- /dev/null +++ b/dist/types/contracts/IUNSRegistry.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IUNSRegistry.d.ts","sourceRoot":"","sources":["../../../types/contracts/IUNSRegistry.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/IUNSRegistry.js b/dist/types/contracts/IUNSRegistry.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/IUNSRegistry.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/KeyStorage.d.ts b/dist/types/contracts/KeyStorage.d.ts new file mode 100644 index 00000000..ff5fb753 --- /dev/null +++ b/dist/types/contracts/KeyStorage.d.ts @@ -0,0 +1,34 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../common"; +export interface KeyStorageInterface extends Interface { + getFunction(nameOrSignature: "addKey" | "getKey" | "getKeys"): FunctionFragment; + encodeFunctionData(functionFragment: "addKey", values: [string]): string; + encodeFunctionData(functionFragment: "getKey", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "getKeys", values: [BigNumberish[]]): string; + decodeFunctionResult(functionFragment: "addKey", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getKey", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getKeys", data: BytesLike): Result; +} +export interface KeyStorage extends BaseContract { + connect(runner?: ContractRunner | null): KeyStorage; + waitForDeployment(): Promise; + interface: KeyStorageInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + addKey: TypedContractMethod<[key: string], [void], "nonpayable">; + getKey: TypedContractMethod<[keyHash: BigNumberish], [string], "view">; + getKeys: TypedContractMethod<[hashes: BigNumberish[]], [string[]], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "addKey"): TypedContractMethod<[key: string], [void], "nonpayable">; + getFunction(nameOrSignature: "getKey"): TypedContractMethod<[keyHash: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "getKeys"): TypedContractMethod<[hashes: BigNumberish[]], [string[]], "view">; + filters: {}; +} +//# sourceMappingURL=KeyStorage.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/KeyStorage.d.ts.map b/dist/types/contracts/KeyStorage.d.ts.map new file mode 100644 index 00000000..2edf0d17 --- /dev/null +++ b/dist/types/contracts/KeyStorage.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"KeyStorage.d.ts","sourceRoot":"","sources":["../../../types/contracts/KeyStorage.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,aAAa,EACb,mBAAmB,EACpB,MAAM,WAAW,CAAC;AAEnB,MAAM,WAAW,mBAAoB,SAAQ,SAAS;IACpD,WAAW,CACT,eAAe,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAC/C,gBAAgB,CAAC;IAEpB,kBAAkB,CAAC,gBAAgB,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;IACzE,kBAAkB,CAChB,gBAAgB,EAAE,QAAQ,EAC1B,MAAM,EAAE,CAAC,YAAY,CAAC,GACrB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,SAAS,EAC3B,MAAM,EAAE,CAAC,YAAY,EAAE,CAAC,GACvB,MAAM,CAAC;IAEV,oBAAoB,CAAC,gBAAgB,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC1E,oBAAoB,CAAC,gBAAgB,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC1E,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;CAC5E;AAED,MAAM,WAAW,UAAW,SAAQ,YAAY;IAC9C,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,UAAU,CAAC;IACpD,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,mBAAmB,CAAC;IAE/B,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,MAAM,EAAE,mBAAmB,CAAC,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IAEjE,MAAM,EAAE,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEvE,OAAO,EAAE,mBAAmB,CAAC,CAAC,MAAM,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;IAE3E,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,WAAW,CACT,eAAe,EAAE,QAAQ,GACxB,mBAAmB,CAAC,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IAC5D,WAAW,CACT,eAAe,EAAE,QAAQ,GACxB,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAClE,WAAW,CACT,eAAe,EAAE,SAAS,GACzB,mBAAmB,CAAC,CAAC,MAAM,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;IAErE,OAAO,EAAE,EAAE,CAAC;CACb"} \ No newline at end of file diff --git a/dist/types/contracts/KeyStorage.js b/dist/types/contracts/KeyStorage.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/KeyStorage.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/MintingManager.d.ts b/dist/types/contracts/MintingManager.d.ts new file mode 100644 index 00000000..c080c707 --- /dev/null +++ b/dist/types/contracts/MintingManager.d.ts @@ -0,0 +1,761 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../common"; +export interface MintingManagerInterface extends Interface { + getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE" | "MINTER_ROLE" | "NAME" | "VERSION" | "addMinter" | "addMinters" | "addProxyReaders" | "addTld" | "buy" | "buyForErc20" | "claim" | "claimTo" | "claimToWithRecords" | "closeMinter" | "cnsMintingController" | "cnsResolver" | "cnsURIPrefixController" | "getRoleAdmin" | "grantRole" | "hasRole" | "initialize" | "isBlocked" | "isMinter" | "isTrustedForwarder" | "issueExpirableWithRecords" | "issueWithRecords" | "owner" | "pause" | "paused" | "removeMinter" | "removeMinters" | "removeTld" | "renew" | "renounceMinter" | "renounceOwnership" | "renounceRole" | "revoke" | "revokeRole" | "rotateMinter" | "setForwarder" | "setOperator" | "setTokenURIPrefix" | "supportsInterface" | "transferOwnership" | "unpause" | "unsOperator" | "unsRegistry" | "withdraw(address)" | "withdraw(address,address)"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "AdminChanged" | "Blocked" | "BlocklistDisabled" | "BlocklistEnabled" | "DomainPurchase" | "Initialized" | "NewTld" | "OwnershipTransferred" | "Paused" | "RemoveTld" | "RoleAdminChanged" | "RoleGranted" | "RoleRevoked" | "Unpaused" | "Upgraded" | "Withdrawal"): EventFragment; + encodeFunctionData(functionFragment: "DEFAULT_ADMIN_ROLE", values?: undefined): string; + encodeFunctionData(functionFragment: "MINTER_ROLE", values?: undefined): string; + encodeFunctionData(functionFragment: "NAME", values?: undefined): string; + encodeFunctionData(functionFragment: "VERSION", values?: undefined): string; + encodeFunctionData(functionFragment: "addMinter", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "addMinters", values: [AddressLike[]]): string; + encodeFunctionData(functionFragment: "addProxyReaders", values: [AddressLike[]]): string; + encodeFunctionData(functionFragment: "addTld", values: [string, boolean]): string; + encodeFunctionData(functionFragment: "buy", values: [ + AddressLike, + string[], + string[], + string[], + BigNumberish, + BigNumberish, + BytesLike + ]): string; + encodeFunctionData(functionFragment: "buyForErc20", values: [ + AddressLike, + string[], + string[], + string[], + BigNumberish, + AddressLike, + BigNumberish, + BytesLike + ]): string; + encodeFunctionData(functionFragment: "claim", values: [BigNumberish, string]): string; + encodeFunctionData(functionFragment: "claimTo", values: [AddressLike, BigNumberish, string]): string; + encodeFunctionData(functionFragment: "claimToWithRecords", values: [AddressLike, BigNumberish, string, string[], string[]]): string; + encodeFunctionData(functionFragment: "closeMinter", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "cnsMintingController", values?: undefined): string; + encodeFunctionData(functionFragment: "cnsResolver", values?: undefined): string; + encodeFunctionData(functionFragment: "cnsURIPrefixController", values?: undefined): string; + encodeFunctionData(functionFragment: "getRoleAdmin", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "grantRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "hasRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "initialize", values: [ + AddressLike, + AddressLike, + AddressLike, + AddressLike, + AddressLike, + AddressLike + ]): string; + encodeFunctionData(functionFragment: "isBlocked", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "isMinter", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "isTrustedForwarder", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "issueExpirableWithRecords", values: [AddressLike, string[], string[], string[], BigNumberish, boolean]): string; + encodeFunctionData(functionFragment: "issueWithRecords", values: [AddressLike, string[], string[], string[], boolean]): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData(functionFragment: "pause", values?: undefined): string; + encodeFunctionData(functionFragment: "paused", values?: undefined): string; + encodeFunctionData(functionFragment: "removeMinter", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "removeMinters", values: [AddressLike[]]): string; + encodeFunctionData(functionFragment: "removeTld", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "renew", values: [BigNumberish, BigNumberish]): string; + encodeFunctionData(functionFragment: "renounceMinter", values?: undefined): string; + encodeFunctionData(functionFragment: "renounceOwnership", values?: undefined): string; + encodeFunctionData(functionFragment: "renounceRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "revoke", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "revokeRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "rotateMinter", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "setForwarder", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "setOperator", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "setTokenURIPrefix", values: [string]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "transferOwnership", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "unpause", values?: undefined): string; + encodeFunctionData(functionFragment: "unsOperator", values?: undefined): string; + encodeFunctionData(functionFragment: "unsRegistry", values?: undefined): string; + encodeFunctionData(functionFragment: "withdraw(address)", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "withdraw(address,address)", values: [AddressLike, AddressLike]): string; + decodeFunctionResult(functionFragment: "DEFAULT_ADMIN_ROLE", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "MINTER_ROLE", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "NAME", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "VERSION", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "addMinter", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "addMinters", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "addProxyReaders", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "addTld", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "buy", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "buyForErc20", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "claim", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "claimTo", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "claimToWithRecords", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "closeMinter", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "cnsMintingController", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "cnsResolver", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "cnsURIPrefixController", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getRoleAdmin", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "grantRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "hasRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isBlocked", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isMinter", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isTrustedForwarder", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "issueExpirableWithRecords", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "issueWithRecords", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "pause", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "paused", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "removeMinter", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "removeMinters", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "removeTld", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renew", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceMinter", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceOwnership", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "revoke", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "revokeRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "rotateMinter", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setForwarder", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setOperator", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setTokenURIPrefix", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "unpause", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "unsOperator", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "unsRegistry", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "withdraw(address)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "withdraw(address,address)", data: BytesLike): Result; +} +export declare namespace AdminChangedEvent { + type InputTuple = [previousAdmin: AddressLike, newAdmin: AddressLike]; + type OutputTuple = [previousAdmin: string, newAdmin: string]; + interface OutputObject { + previousAdmin: string; + newAdmin: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace BlockedEvent { + type InputTuple = [tokenId: BigNumberish]; + type OutputTuple = [tokenId: bigint]; + interface OutputObject { + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace BlocklistDisabledEvent { + type InputTuple = [account: AddressLike]; + type OutputTuple = [account: string]; + interface OutputObject { + account: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace BlocklistEnabledEvent { + type InputTuple = [account: AddressLike]; + type OutputTuple = [account: string]; + interface OutputObject { + account: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace DomainPurchaseEvent { + type InputTuple = [ + tokenId: BigNumberish, + sender: AddressLike, + owner: AddressLike, + price: BigNumberish, + token: AddressLike + ]; + type OutputTuple = [ + tokenId: bigint, + sender: string, + owner: string, + price: bigint, + token: string + ]; + interface OutputObject { + tokenId: bigint; + sender: string; + owner: string; + price: bigint; + token: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace InitializedEvent { + type InputTuple = [version: BigNumberish]; + type OutputTuple = [version: bigint]; + interface OutputObject { + version: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NewTldEvent { + type InputTuple = [tokenId: BigNumberish, tld: string]; + type OutputTuple = [tokenId: bigint, tld: string]; + interface OutputObject { + tokenId: bigint; + tld: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace OwnershipTransferredEvent { + type InputTuple = [previousOwner: AddressLike, newOwner: AddressLike]; + type OutputTuple = [previousOwner: string, newOwner: string]; + interface OutputObject { + previousOwner: string; + newOwner: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace PausedEvent { + type InputTuple = [account: AddressLike]; + type OutputTuple = [account: string]; + interface OutputObject { + account: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RemoveTldEvent { + type InputTuple = [tokenId: BigNumberish]; + type OutputTuple = [tokenId: bigint]; + interface OutputObject { + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RoleAdminChangedEvent { + type InputTuple = [ + role: BytesLike, + previousAdminRole: BytesLike, + newAdminRole: BytesLike + ]; + type OutputTuple = [ + role: string, + previousAdminRole: string, + newAdminRole: string + ]; + interface OutputObject { + role: string; + previousAdminRole: string; + newAdminRole: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RoleGrantedEvent { + type InputTuple = [ + role: BytesLike, + account: AddressLike, + sender: AddressLike + ]; + type OutputTuple = [role: string, account: string, sender: string]; + interface OutputObject { + role: string; + account: string; + sender: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RoleRevokedEvent { + type InputTuple = [ + role: BytesLike, + account: AddressLike, + sender: AddressLike + ]; + type OutputTuple = [role: string, account: string, sender: string]; + interface OutputObject { + role: string; + account: string; + sender: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace UnpausedEvent { + type InputTuple = [account: AddressLike]; + type OutputTuple = [account: string]; + interface OutputObject { + account: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace UpgradedEvent { + type InputTuple = [implementation: AddressLike]; + type OutputTuple = [implementation: string]; + interface OutputObject { + implementation: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace WithdrawalEvent { + type InputTuple = [ + recepient: AddressLike, + value: BigNumberish, + token: AddressLike + ]; + type OutputTuple = [recepient: string, value: bigint, token: string]; + interface OutputObject { + recepient: string; + value: bigint; + token: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface MintingManager extends BaseContract { + connect(runner?: ContractRunner | null): MintingManager; + waitForDeployment(): Promise; + interface: MintingManagerInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + DEFAULT_ADMIN_ROLE: TypedContractMethod<[], [string], "view">; + MINTER_ROLE: TypedContractMethod<[], [string], "view">; + NAME: TypedContractMethod<[], [string], "view">; + VERSION: TypedContractMethod<[], [string], "view">; + addMinter: TypedContractMethod<[account: AddressLike], [void], "nonpayable">; + addMinters: TypedContractMethod<[ + accounts: AddressLike[] + ], [ + void + ], "nonpayable">; + addProxyReaders: TypedContractMethod<[ + addrs: AddressLike[] + ], [ + void + ], "nonpayable">; + addTld: TypedContractMethod<[ + tld: string, + isExpirable: boolean + ], [ + void + ], "nonpayable">; + buy: TypedContractMethod<[ + owner: AddressLike, + labels: string[], + keys: string[], + values: string[], + expiry: BigNumberish, + price: BigNumberish, + signature: BytesLike + ], [ + void + ], "payable">; + buyForErc20: TypedContractMethod<[ + owner: AddressLike, + labels: string[], + keys: string[], + values: string[], + expiry: BigNumberish, + token: AddressLike, + price: BigNumberish, + signature: BytesLike + ], [ + void + ], "nonpayable">; + claim: TypedContractMethod<[ + tld: BigNumberish, + label: string + ], [ + void + ], "nonpayable">; + claimTo: TypedContractMethod<[ + to: AddressLike, + tld: BigNumberish, + label: string + ], [ + void + ], "nonpayable">; + claimToWithRecords: TypedContractMethod<[ + to: AddressLike, + tld: BigNumberish, + label: string, + keys: string[], + values: string[] + ], [ + void + ], "nonpayable">; + closeMinter: TypedContractMethod<[receiver: AddressLike], [void], "payable">; + cnsMintingController: TypedContractMethod<[], [string], "view">; + cnsResolver: TypedContractMethod<[], [string], "view">; + cnsURIPrefixController: TypedContractMethod<[], [string], "view">; + getRoleAdmin: TypedContractMethod<[role: BytesLike], [string], "view">; + grantRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + hasRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + boolean + ], "view">; + initialize: TypedContractMethod<[ + unsRegistry_: AddressLike, + cnsMintingController_: AddressLike, + cnsURIPrefixController_: AddressLike, + cnsResolver_: AddressLike, + unsOperator_: AddressLike, + forwarder: AddressLike + ], [ + void + ], "nonpayable">; + isBlocked: TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; + isMinter: TypedContractMethod<[account: AddressLike], [boolean], "view">; + isTrustedForwarder: TypedContractMethod<[ + forwarder: AddressLike + ], [ + boolean + ], "view">; + issueExpirableWithRecords: TypedContractMethod<[ + to: AddressLike, + labels: string[], + keys: string[], + values: string[], + expiry: BigNumberish, + withReverse: boolean + ], [ + void + ], "nonpayable">; + issueWithRecords: TypedContractMethod<[ + to: AddressLike, + labels: string[], + keys: string[], + values: string[], + withReverse: boolean + ], [ + void + ], "nonpayable">; + owner: TypedContractMethod<[], [string], "view">; + pause: TypedContractMethod<[], [void], "nonpayable">; + paused: TypedContractMethod<[], [boolean], "view">; + removeMinter: TypedContractMethod<[ + account: AddressLike + ], [ + void + ], "nonpayable">; + removeMinters: TypedContractMethod<[ + accounts: AddressLike[] + ], [ + void + ], "nonpayable">; + removeTld: TypedContractMethod<[tld: BigNumberish], [void], "nonpayable">; + renew: TypedContractMethod<[ + expiry: BigNumberish, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + renounceMinter: TypedContractMethod<[], [void], "nonpayable">; + renounceOwnership: TypedContractMethod<[], [void], "nonpayable">; + renounceRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + revoke: TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; + revokeRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + rotateMinter: TypedContractMethod<[receiver: AddressLike], [void], "payable">; + setForwarder: TypedContractMethod<[ + forwarder: AddressLike + ], [ + void + ], "nonpayable">; + setOperator: TypedContractMethod<[ + operator: AddressLike + ], [ + void + ], "nonpayable">; + setTokenURIPrefix: TypedContractMethod<[ + prefix: string + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + transferOwnership: TypedContractMethod<[ + newOwner: AddressLike + ], [ + void + ], "nonpayable">; + unpause: TypedContractMethod<[], [void], "nonpayable">; + unsOperator: TypedContractMethod<[], [string], "view">; + unsRegistry: TypedContractMethod<[], [string], "view">; + "withdraw(address)": TypedContractMethod<[ + recepient: AddressLike + ], [ + void + ], "nonpayable">; + "withdraw(address,address)": TypedContractMethod<[ + token: AddressLike, + recepient: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "MINTER_ROLE"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "NAME"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "VERSION"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "addMinter"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "addMinters"): TypedContractMethod<[accounts: AddressLike[]], [void], "nonpayable">; + getFunction(nameOrSignature: "addProxyReaders"): TypedContractMethod<[addrs: AddressLike[]], [void], "nonpayable">; + getFunction(nameOrSignature: "addTld"): TypedContractMethod<[ + tld: string, + isExpirable: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "buy"): TypedContractMethod<[ + owner: AddressLike, + labels: string[], + keys: string[], + values: string[], + expiry: BigNumberish, + price: BigNumberish, + signature: BytesLike + ], [ + void + ], "payable">; + getFunction(nameOrSignature: "buyForErc20"): TypedContractMethod<[ + owner: AddressLike, + labels: string[], + keys: string[], + values: string[], + expiry: BigNumberish, + token: AddressLike, + price: BigNumberish, + signature: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "claim"): TypedContractMethod<[ + tld: BigNumberish, + label: string + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "claimTo"): TypedContractMethod<[ + to: AddressLike, + tld: BigNumberish, + label: string + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "claimToWithRecords"): TypedContractMethod<[ + to: AddressLike, + tld: BigNumberish, + label: string, + keys: string[], + values: string[] + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "closeMinter"): TypedContractMethod<[receiver: AddressLike], [void], "payable">; + getFunction(nameOrSignature: "cnsMintingController"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "cnsResolver"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "cnsURIPrefixController"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "getRoleAdmin"): TypedContractMethod<[role: BytesLike], [string], "view">; + getFunction(nameOrSignature: "grantRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "hasRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "initialize"): TypedContractMethod<[ + unsRegistry_: AddressLike, + cnsMintingController_: AddressLike, + cnsURIPrefixController_: AddressLike, + cnsResolver_: AddressLike, + unsOperator_: AddressLike, + forwarder: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "isBlocked"): TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; + getFunction(nameOrSignature: "isMinter"): TypedContractMethod<[account: AddressLike], [boolean], "view">; + getFunction(nameOrSignature: "isTrustedForwarder"): TypedContractMethod<[forwarder: AddressLike], [boolean], "view">; + getFunction(nameOrSignature: "issueExpirableWithRecords"): TypedContractMethod<[ + to: AddressLike, + labels: string[], + keys: string[], + values: string[], + expiry: BigNumberish, + withReverse: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "issueWithRecords"): TypedContractMethod<[ + to: AddressLike, + labels: string[], + keys: string[], + values: string[], + withReverse: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "owner"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "pause"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "paused"): TypedContractMethod<[], [boolean], "view">; + getFunction(nameOrSignature: "removeMinter"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "removeMinters"): TypedContractMethod<[accounts: AddressLike[]], [void], "nonpayable">; + getFunction(nameOrSignature: "removeTld"): TypedContractMethod<[tld: BigNumberish], [void], "nonpayable">; + getFunction(nameOrSignature: "renew"): TypedContractMethod<[ + expiry: BigNumberish, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "renounceMinter"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "renounceOwnership"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "renounceRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "revoke"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; + getFunction(nameOrSignature: "revokeRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "rotateMinter"): TypedContractMethod<[receiver: AddressLike], [void], "payable">; + getFunction(nameOrSignature: "setForwarder"): TypedContractMethod<[forwarder: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "setOperator"): TypedContractMethod<[operator: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "setTokenURIPrefix"): TypedContractMethod<[prefix: string], [void], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "transferOwnership"): TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "unpause"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "unsOperator"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "unsRegistry"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "withdraw(address)"): TypedContractMethod<[recepient: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "withdraw(address,address)"): TypedContractMethod<[ + token: AddressLike, + recepient: AddressLike + ], [ + void + ], "nonpayable">; + getEvent(key: "AdminChanged"): TypedContractEvent; + getEvent(key: "Blocked"): TypedContractEvent; + getEvent(key: "BlocklistDisabled"): TypedContractEvent; + getEvent(key: "BlocklistEnabled"): TypedContractEvent; + getEvent(key: "DomainPurchase"): TypedContractEvent; + getEvent(key: "Initialized"): TypedContractEvent; + getEvent(key: "NewTld"): TypedContractEvent; + getEvent(key: "OwnershipTransferred"): TypedContractEvent; + getEvent(key: "Paused"): TypedContractEvent; + getEvent(key: "RemoveTld"): TypedContractEvent; + getEvent(key: "RoleAdminChanged"): TypedContractEvent; + getEvent(key: "RoleGranted"): TypedContractEvent; + getEvent(key: "RoleRevoked"): TypedContractEvent; + getEvent(key: "Unpaused"): TypedContractEvent; + getEvent(key: "Upgraded"): TypedContractEvent; + getEvent(key: "Withdrawal"): TypedContractEvent; + filters: { + "AdminChanged(address,address)": TypedContractEvent; + AdminChanged: TypedContractEvent; + "Blocked(uint256)": TypedContractEvent; + Blocked: TypedContractEvent; + "BlocklistDisabled(address)": TypedContractEvent; + BlocklistDisabled: TypedContractEvent; + "BlocklistEnabled(address)": TypedContractEvent; + BlocklistEnabled: TypedContractEvent; + "DomainPurchase(uint256,address,address,uint256,address)": TypedContractEvent; + DomainPurchase: TypedContractEvent; + "Initialized(uint8)": TypedContractEvent; + Initialized: TypedContractEvent; + "NewTld(uint256,string)": TypedContractEvent; + NewTld: TypedContractEvent; + "OwnershipTransferred(address,address)": TypedContractEvent; + OwnershipTransferred: TypedContractEvent; + "Paused(address)": TypedContractEvent; + Paused: TypedContractEvent; + "RemoveTld(uint256)": TypedContractEvent; + RemoveTld: TypedContractEvent; + "RoleAdminChanged(bytes32,bytes32,bytes32)": TypedContractEvent; + RoleAdminChanged: TypedContractEvent; + "RoleGranted(bytes32,address,address)": TypedContractEvent; + RoleGranted: TypedContractEvent; + "RoleRevoked(bytes32,address,address)": TypedContractEvent; + RoleRevoked: TypedContractEvent; + "Unpaused(address)": TypedContractEvent; + Unpaused: TypedContractEvent; + "Upgraded(address)": TypedContractEvent; + Upgraded: TypedContractEvent; + "Withdrawal(address,uint256,address)": TypedContractEvent; + Withdrawal: TypedContractEvent; + }; +} +//# sourceMappingURL=MintingManager.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/MintingManager.d.ts.map b/dist/types/contracts/MintingManager.d.ts.map new file mode 100644 index 00000000..d2eb78ee --- /dev/null +++ b/dist/types/contracts/MintingManager.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"MintingManager.d.ts","sourceRoot":"","sources":["../../../types/contracts/MintingManager.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/MintingManager.js b/dist/types/contracts/MintingManager.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/MintingManager.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/ProxyReader.d.ts b/dist/types/contracts/ProxyReader.d.ts new file mode 100644 index 00000000..1c06b82e --- /dev/null +++ b/dist/types/contracts/ProxyReader.d.ts @@ -0,0 +1,490 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../common"; +export interface ProxyReaderInterface extends Interface { + getFunction(nameOrSignature: "NAME" | "VERSION" | "addBlockchainNetworks(string[],string[])" | "addBlockchainNetworks(string[],string)" | "addLegacyRecords" | "balanceOf" | "exists" | "get" | "getAddress" | "getAddressKey" | "getAddressKeys" | "getApproved" | "getByHash" | "getData" | "getDataByHash" | "getDataByHashForMany" | "getDataForMany" | "getMany" | "getManyByHash" | "initialize" | "isApprovedForAll" | "isApprovedOrOwner" | "multicall" | "namehash" | "owner" | "ownerOf" | "ownerOfForMany" | "registryOf" | "renounceOwnership" | "resolverOf" | "reverseNameOf" | "reverseOf" | "setOwner" | "supportsInterface" | "tokenURI" | "transferOwnership"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Initialized" | "OwnershipTransferred" | "SetLegacyRecords" | "SetNetworkFamily"): EventFragment; + encodeFunctionData(functionFragment: "NAME", values?: undefined): string; + encodeFunctionData(functionFragment: "VERSION", values?: undefined): string; + encodeFunctionData(functionFragment: "addBlockchainNetworks(string[],string[])", values: [string[], string[]]): string; + encodeFunctionData(functionFragment: "addBlockchainNetworks(string[],string)", values: [string[], string]): string; + encodeFunctionData(functionFragment: "addLegacyRecords", values: [string[], string[][]]): string; + encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "exists", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "get", values: [string, BigNumberish]): string; + encodeFunctionData(functionFragment: "getAddress", values: [string, string, BigNumberish]): string; + encodeFunctionData(functionFragment: "getAddressKey", values: [string, string, BigNumberish]): string; + encodeFunctionData(functionFragment: "getAddressKeys", values: [string, string]): string; + encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "getByHash", values: [BigNumberish, BigNumberish]): string; + encodeFunctionData(functionFragment: "getData", values: [string[], BigNumberish]): string; + encodeFunctionData(functionFragment: "getDataByHash", values: [BigNumberish[], BigNumberish]): string; + encodeFunctionData(functionFragment: "getDataByHashForMany", values: [BigNumberish[], BigNumberish[]]): string; + encodeFunctionData(functionFragment: "getDataForMany", values: [string[], BigNumberish[]]): string; + encodeFunctionData(functionFragment: "getMany", values: [string[], BigNumberish]): string; + encodeFunctionData(functionFragment: "getManyByHash", values: [BigNumberish[], BigNumberish]): string; + encodeFunctionData(functionFragment: "initialize", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "isApprovedOrOwner", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "multicall", values: [BytesLike[]]): string; + encodeFunctionData(functionFragment: "namehash", values: [string[]]): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "ownerOfForMany", values: [BigNumberish[]]): string; + encodeFunctionData(functionFragment: "registryOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "renounceOwnership", values?: undefined): string; + encodeFunctionData(functionFragment: "resolverOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "reverseNameOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "reverseOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "setOwner", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "tokenURI", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "transferOwnership", values: [AddressLike]): string; + decodeFunctionResult(functionFragment: "NAME", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "VERSION", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "addBlockchainNetworks(string[],string[])", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "addBlockchainNetworks(string[],string)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "addLegacyRecords", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "exists", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "get", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getAddress", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getAddressKey", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getAddressKeys", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getByHash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getData", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getDataByHash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getDataByHashForMany", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getDataForMany", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getMany", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getManyByHash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedOrOwner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "multicall", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "namehash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ownerOfForMany", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "registryOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceOwnership", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "resolverOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "reverseNameOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "reverseOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setOwner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "tokenURI", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result; +} +export declare namespace InitializedEvent { + type InputTuple = [version: BigNumberish]; + type OutputTuple = [version: bigint]; + interface OutputObject { + version: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace OwnershipTransferredEvent { + type InputTuple = [previousOwner: AddressLike, newOwner: AddressLike]; + type OutputTuple = [previousOwner: string, newOwner: string]; + interface OutputObject { + previousOwner: string; + newOwner: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace SetLegacyRecordsEvent { + type InputTuple = [tokenKey: string]; + type OutputTuple = [tokenKey: string]; + interface OutputObject { + tokenKey: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace SetNetworkFamilyEvent { + type InputTuple = [network: string]; + type OutputTuple = [network: string]; + interface OutputObject { + network: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface ProxyReader extends BaseContract { + connect(runner?: ContractRunner | null): ProxyReader; + waitForDeployment(): Promise; + interface: ProxyReaderInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + NAME: TypedContractMethod<[], [string], "view">; + VERSION: TypedContractMethod<[], [string], "view">; + "addBlockchainNetworks(string[],string[])": TypedContractMethod<[ + networks: string[], + families: string[] + ], [ + void + ], "nonpayable">; + "addBlockchainNetworks(string[],string)": TypedContractMethod<[ + networks: string[], + family: string + ], [ + void + ], "nonpayable">; + addLegacyRecords: TypedContractMethod<[ + keys: string[], + legacyKeys: string[][] + ], [ + void + ], "nonpayable">; + balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; + exists: TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; + get: TypedContractMethod<[ + key: string, + tokenId: BigNumberish + ], [ + string + ], "view">; + getAddress: TypedContractMethod<[ + network: string, + token: string, + tokenId: BigNumberish + ], [ + string + ], "view">; + getAddressKey: TypedContractMethod<[ + network: string, + token: string, + tokenId: BigNumberish + ], [ + string + ], "view">; + getAddressKeys: TypedContractMethod<[ + network: string, + token: string + ], [ + string[] + ], "view">; + getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getByHash: TypedContractMethod<[ + keyHash: BigNumberish, + tokenId: BigNumberish + ], [ + [string, string] & { + key: string; + value: string; + } + ], "view">; + getData: TypedContractMethod<[ + keys: string[], + tokenId: BigNumberish + ], [ + [ + string, + string, + string[] + ] & { + resolver: string; + owner: string; + values: string[]; + } + ], "view">; + getDataByHash: TypedContractMethod<[ + keyHashes: BigNumberish[], + tokenId: BigNumberish + ], [ + [ + string, + string, + string[], + string[] + ] & { + resolver: string; + owner: string; + keys: string[]; + values: string[]; + } + ], "view">; + getDataByHashForMany: TypedContractMethod<[ + keyHashes: BigNumberish[], + tokenIds: BigNumberish[] + ], [ + [ + string[], + string[], + string[][], + string[][] + ] & { + resolvers: string[]; + owners: string[]; + keys: string[][]; + values: string[][]; + } + ], "view">; + getDataForMany: TypedContractMethod<[ + keys: string[], + tokenIds: BigNumberish[] + ], [ + [ + string[], + string[], + string[][] + ] & { + resolvers: string[]; + owners: string[]; + values: string[][]; + } + ], "view">; + getMany: TypedContractMethod<[ + keys: string[], + tokenId: BigNumberish + ], [ + string[] + ], "view">; + getManyByHash: TypedContractMethod<[ + keyHashes: BigNumberish[], + tokenId: BigNumberish + ], [ + [string[], string[]] & { + keys: string[]; + values: string[]; + } + ], "view">; + initialize: TypedContractMethod<[ + unsRegistry: AddressLike, + cnsRegistry: AddressLike + ], [ + void + ], "nonpayable">; + isApprovedForAll: TypedContractMethod<[ + arg0: AddressLike, + arg1: AddressLike + ], [ + boolean + ], "view">; + isApprovedOrOwner: TypedContractMethod<[ + spender: AddressLike, + tokenId: BigNumberish + ], [ + boolean + ], "view">; + multicall: TypedContractMethod<[data: BytesLike[]], [string[]], "nonpayable">; + namehash: TypedContractMethod<[labels: string[]], [bigint], "view">; + owner: TypedContractMethod<[], [string], "view">; + ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + ownerOfForMany: TypedContractMethod<[ + tokenIds: BigNumberish[] + ], [ + string[] + ], "view">; + registryOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + renounceOwnership: TypedContractMethod<[], [void], "nonpayable">; + resolverOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + reverseNameOf: TypedContractMethod<[addr: AddressLike], [string], "view">; + reverseOf: TypedContractMethod<[addr: AddressLike], [bigint], "view">; + setOwner: TypedContractMethod<[addr: AddressLike], [void], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + tokenURI: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + transferOwnership: TypedContractMethod<[ + newOwner: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "NAME"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "VERSION"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "addBlockchainNetworks(string[],string[])"): TypedContractMethod<[ + networks: string[], + families: string[] + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "addBlockchainNetworks(string[],string)"): TypedContractMethod<[ + networks: string[], + family: string + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "addLegacyRecords"): TypedContractMethod<[ + keys: string[], + legacyKeys: string[][] + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; + getFunction(nameOrSignature: "exists"): TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; + getFunction(nameOrSignature: "get"): TypedContractMethod<[ + key: string, + tokenId: BigNumberish + ], [ + string + ], "view">; + getFunction(nameOrSignature: "getAddress"): TypedContractMethod<[ + network: string, + token: string, + tokenId: BigNumberish + ], [ + string + ], "view">; + getFunction(nameOrSignature: "getAddressKey"): TypedContractMethod<[ + network: string, + token: string, + tokenId: BigNumberish + ], [ + string + ], "view">; + getFunction(nameOrSignature: "getAddressKeys"): TypedContractMethod<[network: string, token: string], [string[]], "view">; + getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "getByHash"): TypedContractMethod<[ + keyHash: BigNumberish, + tokenId: BigNumberish + ], [ + [string, string] & { + key: string; + value: string; + } + ], "view">; + getFunction(nameOrSignature: "getData"): TypedContractMethod<[ + keys: string[], + tokenId: BigNumberish + ], [ + [ + string, + string, + string[] + ] & { + resolver: string; + owner: string; + values: string[]; + } + ], "view">; + getFunction(nameOrSignature: "getDataByHash"): TypedContractMethod<[ + keyHashes: BigNumberish[], + tokenId: BigNumberish + ], [ + [ + string, + string, + string[], + string[] + ] & { + resolver: string; + owner: string; + keys: string[]; + values: string[]; + } + ], "view">; + getFunction(nameOrSignature: "getDataByHashForMany"): TypedContractMethod<[ + keyHashes: BigNumberish[], + tokenIds: BigNumberish[] + ], [ + [ + string[], + string[], + string[][], + string[][] + ] & { + resolvers: string[]; + owners: string[]; + keys: string[][]; + values: string[][]; + } + ], "view">; + getFunction(nameOrSignature: "getDataForMany"): TypedContractMethod<[ + keys: string[], + tokenIds: BigNumberish[] + ], [ + [ + string[], + string[], + string[][] + ] & { + resolvers: string[]; + owners: string[]; + values: string[][]; + } + ], "view">; + getFunction(nameOrSignature: "getMany"): TypedContractMethod<[ + keys: string[], + tokenId: BigNumberish + ], [ + string[] + ], "view">; + getFunction(nameOrSignature: "getManyByHash"): TypedContractMethod<[ + keyHashes: BigNumberish[], + tokenId: BigNumberish + ], [ + [string[], string[]] & { + keys: string[]; + values: string[]; + } + ], "view">; + getFunction(nameOrSignature: "initialize"): TypedContractMethod<[ + unsRegistry: AddressLike, + cnsRegistry: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ + arg0: AddressLike, + arg1: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "isApprovedOrOwner"): TypedContractMethod<[ + spender: AddressLike, + tokenId: BigNumberish + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "multicall"): TypedContractMethod<[data: BytesLike[]], [string[]], "nonpayable">; + getFunction(nameOrSignature: "namehash"): TypedContractMethod<[labels: string[]], [bigint], "view">; + getFunction(nameOrSignature: "owner"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "ownerOfForMany"): TypedContractMethod<[tokenIds: BigNumberish[]], [string[]], "view">; + getFunction(nameOrSignature: "registryOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "renounceOwnership"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "resolverOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "reverseNameOf"): TypedContractMethod<[addr: AddressLike], [string], "view">; + getFunction(nameOrSignature: "reverseOf"): TypedContractMethod<[addr: AddressLike], [bigint], "view">; + getFunction(nameOrSignature: "setOwner"): TypedContractMethod<[addr: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "tokenURI"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "transferOwnership"): TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">; + getEvent(key: "Initialized"): TypedContractEvent; + getEvent(key: "OwnershipTransferred"): TypedContractEvent; + getEvent(key: "SetLegacyRecords"): TypedContractEvent; + getEvent(key: "SetNetworkFamily"): TypedContractEvent; + filters: { + "Initialized(uint8)": TypedContractEvent; + Initialized: TypedContractEvent; + "OwnershipTransferred(address,address)": TypedContractEvent; + OwnershipTransferred: TypedContractEvent; + "SetLegacyRecords(string)": TypedContractEvent; + SetLegacyRecords: TypedContractEvent; + "SetNetworkFamily(string)": TypedContractEvent; + SetNetworkFamily: TypedContractEvent; + }; +} +//# sourceMappingURL=ProxyReader.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/ProxyReader.d.ts.map b/dist/types/contracts/ProxyReader.d.ts.map new file mode 100644 index 00000000..075025f6 --- /dev/null +++ b/dist/types/contracts/ProxyReader.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ProxyReader.d.ts","sourceRoot":"","sources":["../../../types/contracts/ProxyReader.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/ProxyReader.js b/dist/types/contracts/ProxyReader.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/ProxyReader.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/RecordStorage.d.ts b/dist/types/contracts/RecordStorage.d.ts new file mode 100644 index 00000000..7ecb70d6 --- /dev/null +++ b/dist/types/contracts/RecordStorage.d.ts @@ -0,0 +1,252 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../common"; +export interface RecordStorageInterface extends Interface { + getFunction(nameOrSignature: "addKey" | "get" | "getByHash" | "getKey" | "getKeys" | "getMany" | "getManyByHash" | "reconfigure" | "reset" | "set" | "setByHash" | "setMany" | "setManyByHash"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "NewKey" | "ResetRecords" | "Set"): EventFragment; + encodeFunctionData(functionFragment: "addKey", values: [string]): string; + encodeFunctionData(functionFragment: "get", values: [string, BigNumberish]): string; + encodeFunctionData(functionFragment: "getByHash", values: [BigNumberish, BigNumberish]): string; + encodeFunctionData(functionFragment: "getKey", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "getKeys", values: [BigNumberish[]]): string; + encodeFunctionData(functionFragment: "getMany", values: [string[], BigNumberish]): string; + encodeFunctionData(functionFragment: "getManyByHash", values: [BigNumberish[], BigNumberish]): string; + encodeFunctionData(functionFragment: "reconfigure", values: [string[], string[], BigNumberish]): string; + encodeFunctionData(functionFragment: "reset", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "set", values: [string, string, BigNumberish]): string; + encodeFunctionData(functionFragment: "setByHash", values: [BigNumberish, string, BigNumberish]): string; + encodeFunctionData(functionFragment: "setMany", values: [string[], string[], BigNumberish]): string; + encodeFunctionData(functionFragment: "setManyByHash", values: [BigNumberish[], string[], BigNumberish]): string; + decodeFunctionResult(functionFragment: "addKey", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "get", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getByHash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getKey", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getKeys", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getMany", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getManyByHash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "reconfigure", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "reset", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "set", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setByHash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setMany", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setManyByHash", data: BytesLike): Result; +} +export declare namespace NewKeyEvent { + type InputTuple = [ + tokenId: BigNumberish, + keyIndex: string, + key: string + ]; + type OutputTuple = [tokenId: bigint, keyIndex: string, key: string]; + interface OutputObject { + tokenId: bigint; + keyIndex: string; + key: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ResetRecordsEvent { + type InputTuple = [tokenId: BigNumberish]; + type OutputTuple = [tokenId: bigint]; + interface OutputObject { + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace SetEvent { + type InputTuple = [ + tokenId: BigNumberish, + keyIndex: string, + valueIndex: string, + key: string, + value: string + ]; + type OutputTuple = [ + tokenId: bigint, + keyIndex: string, + valueIndex: string, + key: string, + value: string + ]; + interface OutputObject { + tokenId: bigint; + keyIndex: string; + valueIndex: string; + key: string; + value: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface RecordStorage extends BaseContract { + connect(runner?: ContractRunner | null): RecordStorage; + waitForDeployment(): Promise; + interface: RecordStorageInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + addKey: TypedContractMethod<[key: string], [void], "nonpayable">; + get: TypedContractMethod<[ + key: string, + tokenId: BigNumberish + ], [ + string + ], "view">; + getByHash: TypedContractMethod<[ + keyHash: BigNumberish, + tokenId: BigNumberish + ], [ + [string, string] & { + key: string; + value: string; + } + ], "view">; + getKey: TypedContractMethod<[keyHash: BigNumberish], [string], "view">; + getKeys: TypedContractMethod<[hashes: BigNumberish[]], [string[]], "view">; + getMany: TypedContractMethod<[ + keys: string[], + tokenId: BigNumberish + ], [ + string[] + ], "view">; + getManyByHash: TypedContractMethod<[ + keyHashes: BigNumberish[], + tokenId: BigNumberish + ], [ + [string[], string[]] & { + keys: string[]; + values: string[]; + } + ], "view">; + reconfigure: TypedContractMethod<[ + keys: string[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + reset: TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; + set: TypedContractMethod<[ + key: string, + value: string, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + setByHash: TypedContractMethod<[ + keyHash: BigNumberish, + value: string, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + setMany: TypedContractMethod<[ + keys: string[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + setManyByHash: TypedContractMethod<[ + keyHashes: BigNumberish[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "addKey"): TypedContractMethod<[key: string], [void], "nonpayable">; + getFunction(nameOrSignature: "get"): TypedContractMethod<[ + key: string, + tokenId: BigNumberish + ], [ + string + ], "view">; + getFunction(nameOrSignature: "getByHash"): TypedContractMethod<[ + keyHash: BigNumberish, + tokenId: BigNumberish + ], [ + [string, string] & { + key: string; + value: string; + } + ], "view">; + getFunction(nameOrSignature: "getKey"): TypedContractMethod<[keyHash: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "getKeys"): TypedContractMethod<[hashes: BigNumberish[]], [string[]], "view">; + getFunction(nameOrSignature: "getMany"): TypedContractMethod<[ + keys: string[], + tokenId: BigNumberish + ], [ + string[] + ], "view">; + getFunction(nameOrSignature: "getManyByHash"): TypedContractMethod<[ + keyHashes: BigNumberish[], + tokenId: BigNumberish + ], [ + [string[], string[]] & { + keys: string[]; + values: string[]; + } + ], "view">; + getFunction(nameOrSignature: "reconfigure"): TypedContractMethod<[ + keys: string[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "reset"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; + getFunction(nameOrSignature: "set"): TypedContractMethod<[ + key: string, + value: string, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setByHash"): TypedContractMethod<[ + keyHash: BigNumberish, + value: string, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setMany"): TypedContractMethod<[ + keys: string[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setManyByHash"): TypedContractMethod<[ + keyHashes: BigNumberish[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getEvent(key: "NewKey"): TypedContractEvent; + getEvent(key: "ResetRecords"): TypedContractEvent; + getEvent(key: "Set"): TypedContractEvent; + filters: { + "NewKey(uint256,string,string)": TypedContractEvent; + NewKey: TypedContractEvent; + "ResetRecords(uint256)": TypedContractEvent; + ResetRecords: TypedContractEvent; + "Set(uint256,string,string,string,string)": TypedContractEvent; + Set: TypedContractEvent; + }; +} +//# sourceMappingURL=RecordStorage.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/RecordStorage.d.ts.map b/dist/types/contracts/RecordStorage.d.ts.map new file mode 100644 index 00000000..12a89241 --- /dev/null +++ b/dist/types/contracts/RecordStorage.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"RecordStorage.d.ts","sourceRoot":"","sources":["../../../types/contracts/RecordStorage.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,aAAa,EACb,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,mBAAmB,EACnB,aAAa,EACb,mBAAmB,EACpB,MAAM,WAAW,CAAC;AAEnB,MAAM,WAAW,sBAAuB,SAAQ,SAAS;IACvD,WAAW,CACT,eAAe,EACX,QAAQ,GACR,KAAK,GACL,WAAW,GACX,QAAQ,GACR,SAAS,GACT,SAAS,GACT,eAAe,GACf,aAAa,GACb,OAAO,GACP,KAAK,GACL,WAAW,GACX,SAAS,GACT,eAAe,GAClB,gBAAgB,CAAC;IAEpB,QAAQ,CACN,sBAAsB,EAAE,QAAQ,GAAG,cAAc,GAAG,KAAK,GACxD,aAAa,CAAC;IAEjB,kBAAkB,CAAC,gBAAgB,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;IACzE,kBAAkB,CAChB,gBAAgB,EAAE,KAAK,EACvB,MAAM,EAAE,CAAC,MAAM,EAAE,YAAY,CAAC,GAC7B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,WAAW,EAC7B,MAAM,EAAE,CAAC,YAAY,EAAE,YAAY,CAAC,GACnC,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,QAAQ,EAC1B,MAAM,EAAE,CAAC,YAAY,CAAC,GACrB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,SAAS,EAC3B,MAAM,EAAE,CAAC,YAAY,EAAE,CAAC,GACvB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,SAAS,EAC3B,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE,YAAY,CAAC,GAC/B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,eAAe,EACjC,MAAM,EAAE,CAAC,YAAY,EAAE,EAAE,YAAY,CAAC,GACrC,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,aAAa,EAC/B,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,YAAY,CAAC,GACzC,MAAM,CAAC;IACV,kBAAkB,CAAC,gBAAgB,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,YAAY,CAAC,GAAG,MAAM,CAAC;IAC9E,kBAAkB,CAChB,gBAAgB,EAAE,KAAK,EACvB,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,CAAC,GACrC,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,WAAW,EAC7B,MAAM,EAAE,CAAC,YAAY,EAAE,MAAM,EAAE,YAAY,CAAC,GAC3C,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,SAAS,EAC3B,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,YAAY,CAAC,GACzC,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,eAAe,EACjC,MAAM,EAAE,CAAC,YAAY,EAAE,EAAE,MAAM,EAAE,EAAE,YAAY,CAAC,GAC/C,MAAM,CAAC;IAEV,oBAAoB,CAAC,gBAAgB,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC1E,oBAAoB,CAAC,gBAAgB,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IACvE,oBAAoB,CAAC,gBAAgB,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC7E,oBAAoB,CAAC,gBAAgB,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC1E,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,oBAAoB,CAClB,gBAAgB,EAAE,eAAe,EACjC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,aAAa,EAC/B,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IACzE,oBAAoB,CAAC,gBAAgB,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IACvE,oBAAoB,CAAC,gBAAgB,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC7E,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,oBAAoB,CAClB,gBAAgB,EAAE,eAAe,EACjC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;CACX;AAED,yBAAiB,WAAW,CAAC;IAC3B,KAAY,UAAU,GAAG;QACvB,OAAO,EAAE,YAAY;QACrB,QAAQ,EAAE,MAAM;QAChB,GAAG,EAAE,MAAM;KACZ,CAAC;IACF,KAAY,WAAW,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;IAC3E,UAAiB,YAAY;QAC3B,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,EAAE,MAAM,CAAC;QACjB,GAAG,EAAE,MAAM,CAAC;KACb;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,iBAAiB,CAAC;IACjC,KAAY,UAAU,GAAG,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IACjD,KAAY,WAAW,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC5C,UAAiB,YAAY;QAC3B,OAAO,EAAE,MAAM,CAAC;KACjB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,QAAQ,CAAC;IACxB,KAAY,UAAU,GAAG;QACvB,OAAO,EAAE,YAAY;QACrB,QAAQ,EAAE,MAAM;QAChB,UAAU,EAAE,MAAM;QAClB,GAAG,EAAE,MAAM;QACX,KAAK,EAAE,MAAM;KACd,CAAC;IACF,KAAY,WAAW,GAAG;QACxB,OAAO,EAAE,MAAM;QACf,QAAQ,EAAE,MAAM;QAChB,UAAU,EAAE,MAAM;QAClB,GAAG,EAAE,MAAM;QACX,KAAK,EAAE,MAAM;KACd,CAAC;IACF,UAAiB,YAAY;QAC3B,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,EAAE,MAAM,CAAC;QACjB,UAAU,EAAE,MAAM,CAAC;QACnB,GAAG,EAAE,MAAM,CAAC;QACZ,KAAK,EAAE,MAAM,CAAC;KACf;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,MAAM,WAAW,aAAc,SAAQ,YAAY;IACjD,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,aAAa,CAAC;IACvD,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,sBAAsB,CAAC;IAElC,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,MAAM,EAAE,mBAAmB,CAAC,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IAEjE,GAAG,EAAE,mBAAmB,CACtB;QAAC,GAAG,EAAE,MAAM;QAAE,OAAO,EAAE,YAAY;KAAC,EACpC;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IAEF,SAAS,EAAE,mBAAmB,CAC5B;QAAC,OAAO,EAAE,YAAY;QAAE,OAAO,EAAE,YAAY;KAAC,EAC9C;QAAC,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG;YAAE,GAAG,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAA;SAAE;KAAC,EACnD,MAAM,CACP,CAAC;IAEF,MAAM,EAAE,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEvE,OAAO,EAAE,mBAAmB,CAAC,CAAC,MAAM,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;IAE3E,OAAO,EAAE,mBAAmB,CAC1B;QAAC,IAAI,EAAE,MAAM,EAAE;QAAE,OAAO,EAAE,YAAY;KAAC,EACvC;QAAC,MAAM,EAAE;KAAC,EACV,MAAM,CACP,CAAC;IAEF,aAAa,EAAE,mBAAmB,CAChC;QAAC,SAAS,EAAE,YAAY,EAAE;QAAE,OAAO,EAAE,YAAY;KAAC,EAClD;QAAC,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,GAAG;YAAE,IAAI,EAAE,MAAM,EAAE,CAAC;YAAC,MAAM,EAAE,MAAM,EAAE,CAAA;SAAE;KAAC,EAC7D,MAAM,CACP,CAAC;IAEF,WAAW,EAAE,mBAAmB,CAC9B;QAAC,IAAI,EAAE,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,EAAE;QAAE,OAAO,EAAE,YAAY;KAAC,EACzD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,KAAK,EAAE,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IAE1E,GAAG,EAAE,mBAAmB,CACtB;QAAC,GAAG,EAAE,MAAM;QAAE,KAAK,EAAE,MAAM;QAAE,OAAO,EAAE,YAAY;KAAC,EACnD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,SAAS,EAAE,mBAAmB,CAC5B;QAAC,OAAO,EAAE,YAAY;QAAE,KAAK,EAAE,MAAM;QAAE,OAAO,EAAE,YAAY;KAAC,EAC7D;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,OAAO,EAAE,mBAAmB,CAC1B;QAAC,IAAI,EAAE,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,EAAE;QAAE,OAAO,EAAE,YAAY;KAAC,EACzD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,aAAa,EAAE,mBAAmB,CAChC;QAAC,SAAS,EAAE,YAAY,EAAE;QAAE,MAAM,EAAE,MAAM,EAAE;QAAE,OAAO,EAAE,YAAY;KAAC,EACpE;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,WAAW,CACT,eAAe,EAAE,QAAQ,GACxB,mBAAmB,CAAC,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IAC5D,WAAW,CACT,eAAe,EAAE,KAAK,GACrB,mBAAmB,CACpB;QAAC,GAAG,EAAE,MAAM;QAAE,OAAO,EAAE,YAAY;KAAC,EACpC;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,WAAW,GAC3B,mBAAmB,CACpB;QAAC,OAAO,EAAE,YAAY;QAAE,OAAO,EAAE,YAAY;KAAC,EAC9C;QAAC,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG;YAAE,GAAG,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAA;SAAE;KAAC,EACnD,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,QAAQ,GACxB,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAClE,WAAW,CACT,eAAe,EAAE,SAAS,GACzB,mBAAmB,CAAC,CAAC,MAAM,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;IACrE,WAAW,CACT,eAAe,EAAE,SAAS,GACzB,mBAAmB,CACpB;QAAC,IAAI,EAAE,MAAM,EAAE;QAAE,OAAO,EAAE,YAAY;KAAC,EACvC;QAAC,MAAM,EAAE;KAAC,EACV,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,eAAe,GAC/B,mBAAmB,CACpB;QAAC,SAAS,EAAE,YAAY,EAAE;QAAE,OAAO,EAAE,YAAY;KAAC,EAClD;QAAC,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,GAAG;YAAE,IAAI,EAAE,MAAM,EAAE,CAAC;YAAC,MAAM,EAAE,MAAM,EAAE,CAAA;SAAE;KAAC,EAC7D,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,aAAa,GAC7B,mBAAmB,CACpB;QAAC,IAAI,EAAE,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,EAAE;QAAE,OAAO,EAAE,YAAY;KAAC,EACzD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,OAAO,GACvB,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IACtE,WAAW,CACT,eAAe,EAAE,KAAK,GACrB,mBAAmB,CACpB;QAAC,GAAG,EAAE,MAAM;QAAE,KAAK,EAAE,MAAM;QAAE,OAAO,EAAE,YAAY;KAAC,EACnD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,WAAW,GAC3B,mBAAmB,CACpB;QAAC,OAAO,EAAE,YAAY;QAAE,KAAK,EAAE,MAAM;QAAE,OAAO,EAAE,YAAY;KAAC,EAC7D;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,SAAS,GACzB,mBAAmB,CACpB;QAAC,IAAI,EAAE,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,EAAE;QAAE,OAAO,EAAE,YAAY;KAAC,EACzD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,eAAe,GAC/B,mBAAmB,CACpB;QAAC,SAAS,EAAE,YAAY,EAAE;QAAE,MAAM,EAAE,MAAM,EAAE;QAAE,OAAO,EAAE,YAAY;KAAC,EACpE;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,QAAQ,CACN,GAAG,EAAE,QAAQ,GACZ,kBAAkB,CACnB,WAAW,CAAC,UAAU,EACtB,WAAW,CAAC,WAAW,EACvB,WAAW,CAAC,YAAY,CACzB,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,cAAc,GAClB,kBAAkB,CACnB,iBAAiB,CAAC,UAAU,EAC5B,iBAAiB,CAAC,WAAW,EAC7B,iBAAiB,CAAC,YAAY,CAC/B,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,KAAK,GACT,kBAAkB,CACnB,QAAQ,CAAC,UAAU,EACnB,QAAQ,CAAC,WAAW,EACpB,QAAQ,CAAC,YAAY,CACtB,CAAC;IAEF,OAAO,EAAE;QACP,+BAA+B,EAAE,kBAAkB,CACjD,WAAW,CAAC,UAAU,EACtB,WAAW,CAAC,WAAW,EACvB,WAAW,CAAC,YAAY,CACzB,CAAC;QACF,MAAM,EAAE,kBAAkB,CACxB,WAAW,CAAC,UAAU,EACtB,WAAW,CAAC,WAAW,EACvB,WAAW,CAAC,YAAY,CACzB,CAAC;QAEF,uBAAuB,EAAE,kBAAkB,CACzC,iBAAiB,CAAC,UAAU,EAC5B,iBAAiB,CAAC,WAAW,EAC7B,iBAAiB,CAAC,YAAY,CAC/B,CAAC;QACF,YAAY,EAAE,kBAAkB,CAC9B,iBAAiB,CAAC,UAAU,EAC5B,iBAAiB,CAAC,WAAW,EAC7B,iBAAiB,CAAC,YAAY,CAC/B,CAAC;QAEF,0CAA0C,EAAE,kBAAkB,CAC5D,QAAQ,CAAC,UAAU,EACnB,QAAQ,CAAC,WAAW,EACpB,QAAQ,CAAC,YAAY,CACtB,CAAC;QACF,GAAG,EAAE,kBAAkB,CACrB,QAAQ,CAAC,UAAU,EACnB,QAAQ,CAAC,WAAW,EACpB,QAAQ,CAAC,YAAY,CACtB,CAAC;KACH,CAAC;CACH"} \ No newline at end of file diff --git a/dist/types/contracts/RecordStorage.js b/dist/types/contracts/RecordStorage.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/RecordStorage.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/RootRegistry.d.ts b/dist/types/contracts/RootRegistry.d.ts new file mode 100644 index 00000000..b3859f28 --- /dev/null +++ b/dist/types/contracts/RootRegistry.d.ts @@ -0,0 +1,286 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../common"; +export interface RootRegistryInterface extends Interface { + getFunction(nameOrSignature: "approve" | "balanceOf" | "depositToPolygon" | "exists" | "getApproved" | "isApprovedForAll" | "mint(address,uint256)" | "mint(address,uint256,bytes)" | "name" | "ownerOf" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "setApprovalForAll" | "supportsInterface" | "symbol" | "tokenURI" | "transferFrom" | "withdrawFromPolygon"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "Initialized" | "Transfer"): EventFragment; + encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "depositToPolygon", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "exists", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "mint(address,uint256)", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "mint(address,uint256,bytes)", values: [AddressLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "name", values?: undefined): string; + encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "symbol", values?: undefined): string; + encodeFunctionData(functionFragment: "tokenURI", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "withdrawFromPolygon", values: [BytesLike, BigNumberish, string[], string[]]): string; + decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "depositToPolygon", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "exists", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "mint(address,uint256)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "mint(address,uint256,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "tokenURI", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "withdrawFromPolygon", data: BytesLike): Result; +} +export declare namespace ApprovalEvent { + type InputTuple = [ + owner: AddressLike, + approved: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [owner: string, approved: string, tokenId: bigint]; + interface OutputObject { + owner: string; + approved: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ApprovalForAllEvent { + type InputTuple = [ + owner: AddressLike, + operator: AddressLike, + approved: boolean + ]; + type OutputTuple = [ + owner: string, + operator: string, + approved: boolean + ]; + interface OutputObject { + owner: string; + operator: string; + approved: boolean; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace InitializedEvent { + type InputTuple = [version: BigNumberish]; + type OutputTuple = [version: bigint]; + interface OutputObject { + version: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferEvent { + type InputTuple = [ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [from: string, to: string, tokenId: bigint]; + interface OutputObject { + from: string; + to: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface RootRegistry extends BaseContract { + connect(runner?: ContractRunner | null): RootRegistry; + waitForDeployment(): Promise; + interface: RootRegistryInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + approve: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; + depositToPolygon: TypedContractMethod<[ + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + exists: TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; + getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + isApprovedForAll: TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + "mint(address,uint256)": TypedContractMethod<[ + user: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + "mint(address,uint256,bytes)": TypedContractMethod<[ + user: AddressLike, + tokenId: BigNumberish, + metaData: BytesLike + ], [ + void + ], "nonpayable">; + name: TypedContractMethod<[], [string], "view">; + ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + setApprovalForAll: TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + symbol: TypedContractMethod<[], [string], "view">; + tokenURI: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + transferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + withdrawFromPolygon: TypedContractMethod<[ + inputData: BytesLike, + tokenId: BigNumberish, + keys: string[], + values: string[] + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "approve"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; + getFunction(nameOrSignature: "depositToPolygon"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; + getFunction(nameOrSignature: "exists"): TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; + getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "mint(address,uint256)"): TypedContractMethod<[ + user: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "mint(address,uint256,bytes)"): TypedContractMethod<[ + user: AddressLike, + tokenId: BigNumberish, + metaData: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "symbol"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "tokenURI"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "withdrawFromPolygon"): TypedContractMethod<[ + inputData: BytesLike, + tokenId: BigNumberish, + keys: string[], + values: string[] + ], [ + void + ], "nonpayable">; + getEvent(key: "Approval"): TypedContractEvent; + getEvent(key: "ApprovalForAll"): TypedContractEvent; + getEvent(key: "Initialized"): TypedContractEvent; + getEvent(key: "Transfer"): TypedContractEvent; + filters: { + "Approval(address,address,uint256)": TypedContractEvent; + Approval: TypedContractEvent; + "ApprovalForAll(address,address,bool)": TypedContractEvent; + ApprovalForAll: TypedContractEvent; + "Initialized(uint8)": TypedContractEvent; + Initialized: TypedContractEvent; + "Transfer(address,address,uint256)": TypedContractEvent; + Transfer: TypedContractEvent; + }; +} +//# sourceMappingURL=RootRegistry.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/RootRegistry.d.ts.map b/dist/types/contracts/RootRegistry.d.ts.map new file mode 100644 index 00000000..ffa57506 --- /dev/null +++ b/dist/types/contracts/RootRegistry.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"RootRegistry.d.ts","sourceRoot":"","sources":["../../../types/contracts/RootRegistry.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/RootRegistry.js b/dist/types/contracts/RootRegistry.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/RootRegistry.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/UNSOperator.d.ts b/dist/types/contracts/UNSOperator.d.ts new file mode 100644 index 00000000..f4800c8c --- /dev/null +++ b/dist/types/contracts/UNSOperator.d.ts @@ -0,0 +1,81 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../common"; +export interface UNSOperatorInterface extends Interface { + getFunction(nameOrSignature: "NAME" | "VERSION" | "initialize" | "owner" | "renounceOwnership" | "transferOwnership"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Initialized" | "OwnershipTransferred"): EventFragment; + encodeFunctionData(functionFragment: "NAME", values?: undefined): string; + encodeFunctionData(functionFragment: "VERSION", values?: undefined): string; + encodeFunctionData(functionFragment: "initialize", values?: undefined): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData(functionFragment: "renounceOwnership", values?: undefined): string; + encodeFunctionData(functionFragment: "transferOwnership", values: [AddressLike]): string; + decodeFunctionResult(functionFragment: "NAME", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "VERSION", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceOwnership", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result; +} +export declare namespace InitializedEvent { + type InputTuple = [version: BigNumberish]; + type OutputTuple = [version: bigint]; + interface OutputObject { + version: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace OwnershipTransferredEvent { + type InputTuple = [previousOwner: AddressLike, newOwner: AddressLike]; + type OutputTuple = [previousOwner: string, newOwner: string]; + interface OutputObject { + previousOwner: string; + newOwner: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface UNSOperator extends BaseContract { + connect(runner?: ContractRunner | null): UNSOperator; + waitForDeployment(): Promise; + interface: UNSOperatorInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + NAME: TypedContractMethod<[], [string], "view">; + VERSION: TypedContractMethod<[], [string], "view">; + initialize: TypedContractMethod<[], [void], "nonpayable">; + owner: TypedContractMethod<[], [string], "view">; + renounceOwnership: TypedContractMethod<[], [void], "nonpayable">; + transferOwnership: TypedContractMethod<[ + newOwner: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "NAME"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "VERSION"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "initialize"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "owner"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "renounceOwnership"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "transferOwnership"): TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">; + getEvent(key: "Initialized"): TypedContractEvent; + getEvent(key: "OwnershipTransferred"): TypedContractEvent; + filters: { + "Initialized(uint8)": TypedContractEvent; + Initialized: TypedContractEvent; + "OwnershipTransferred(address,address)": TypedContractEvent; + OwnershipTransferred: TypedContractEvent; + }; +} +//# sourceMappingURL=UNSOperator.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/UNSOperator.d.ts.map b/dist/types/contracts/UNSOperator.d.ts.map new file mode 100644 index 00000000..bc8f6c33 --- /dev/null +++ b/dist/types/contracts/UNSOperator.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"UNSOperator.d.ts","sourceRoot":"","sources":["../../../types/contracts/UNSOperator.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/UNSOperator.js b/dist/types/contracts/UNSOperator.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/UNSOperator.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/UNSRegistry.d.ts b/dist/types/contracts/UNSRegistry.d.ts new file mode 100644 index 00000000..b58957b2 --- /dev/null +++ b/dist/types/contracts/UNSRegistry.d.ts @@ -0,0 +1,907 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../common"; +export declare namespace IForwarder { + type ForwardRequestStruct = { + from: AddressLike; + nonce: BigNumberish; + tokenId: BigNumberish; + data: BytesLike; + }; + type ForwardRequestStructOutput = [ + from: string, + nonce: bigint, + tokenId: bigint, + data: string + ] & { + from: string; + nonce: bigint; + tokenId: bigint; + data: string; + }; +} +export interface UNSRegistryInterface extends Interface { + getFunction(nameOrSignature: "BATCH_LIMIT" | "NAME" | "VERSION" | "addKey" | "addProxyReader" | "approve" | "balanceOf" | "burn" | "deposit" | "depositToPolygon" | "execute" | "exists" | "expiryOf" | "get" | "getApproved" | "getByHash" | "getKey" | "getKeys" | "getMany" | "getManyByHash" | "initialize" | "isApprovedForAll" | "isApprovedOrOwner" | "isExpired" | "isTrustedForwarder" | "mint(address,uint256)" | "mint(address,uint256,bytes)" | "mintTLD" | "mintWithRecords" | "multicall" | "name" | "namehash" | "nonceOf" | "onERC721Received" | "ownerOf" | "reconfigure" | "removeReverse" | "reset" | "resolverOf" | "reverseNameOf" | "reverseOf" | "root" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "set" | "setApprovalForAll" | "setByHash" | "setExpiry" | "setMany" | "setManyByHash" | "setOwner" | "setReverse" | "setTokenURIPrefix" | "supportsInterface" | "symbol" | "tokenURI" | "transferFrom" | "unlock" | "unlockWithRecords" | "verify" | "withdrawFromPolygon"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "AdminChanged" | "Approval" | "ApprovalForAll" | "Initialized" | "NewKey" | "NewURI" | "NewURIPrefix" | "RemoveReverse" | "ResetRecords" | "Set" | "SetExpiry" | "SetReverse" | "Transfer" | "Upgraded"): EventFragment; + encodeFunctionData(functionFragment: "BATCH_LIMIT", values?: undefined): string; + encodeFunctionData(functionFragment: "NAME", values?: undefined): string; + encodeFunctionData(functionFragment: "VERSION", values?: undefined): string; + encodeFunctionData(functionFragment: "addKey", values: [string]): string; + encodeFunctionData(functionFragment: "addProxyReader", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "burn", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "deposit", values: [AddressLike, BytesLike]): string; + encodeFunctionData(functionFragment: "depositToPolygon", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "execute", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; + encodeFunctionData(functionFragment: "exists", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "expiryOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "get", values: [string, BigNumberish]): string; + encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "getByHash", values: [BigNumberish, BigNumberish]): string; + encodeFunctionData(functionFragment: "getKey", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "getKeys", values: [BigNumberish[]]): string; + encodeFunctionData(functionFragment: "getMany", values: [string[], BigNumberish]): string; + encodeFunctionData(functionFragment: "getManyByHash", values: [BigNumberish[], BigNumberish]): string; + encodeFunctionData(functionFragment: "initialize", values: [AddressLike, AddressLike, AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "isApprovedOrOwner", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "isExpired", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "isTrustedForwarder", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "mint(address,uint256)", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "mint(address,uint256,bytes)", values: [AddressLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "mintTLD", values: [BigNumberish, string]): string; + encodeFunctionData(functionFragment: "mintWithRecords", values: [AddressLike, string[], string[], string[], boolean]): string; + encodeFunctionData(functionFragment: "multicall", values: [BytesLike[]]): string; + encodeFunctionData(functionFragment: "name", values?: undefined): string; + encodeFunctionData(functionFragment: "namehash", values: [string[]]): string; + encodeFunctionData(functionFragment: "nonceOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "onERC721Received", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "reconfigure", values: [string[], string[], BigNumberish]): string; + encodeFunctionData(functionFragment: "removeReverse", values?: undefined): string; + encodeFunctionData(functionFragment: "reset", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "resolverOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "reverseNameOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "reverseOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "root", values?: undefined): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "set", values: [string, string, BigNumberish]): string; + encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; + encodeFunctionData(functionFragment: "setByHash", values: [BigNumberish, string, BigNumberish]): string; + encodeFunctionData(functionFragment: "setExpiry", values: [BigNumberish, BigNumberish]): string; + encodeFunctionData(functionFragment: "setMany", values: [string[], string[], BigNumberish]): string; + encodeFunctionData(functionFragment: "setManyByHash", values: [BigNumberish[], string[], BigNumberish]): string; + encodeFunctionData(functionFragment: "setOwner", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "setReverse", values: [string[]]): string; + encodeFunctionData(functionFragment: "setTokenURIPrefix", values: [string]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "symbol", values?: undefined): string; + encodeFunctionData(functionFragment: "tokenURI", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "unlock", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "unlockWithRecords", values: [AddressLike, string[], string[], string[], boolean]): string; + encodeFunctionData(functionFragment: "verify", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; + encodeFunctionData(functionFragment: "withdrawFromPolygon", values: [BytesLike, BigNumberish, string[], string[]]): string; + decodeFunctionResult(functionFragment: "BATCH_LIMIT", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "NAME", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "VERSION", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "addKey", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "addProxyReader", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "burn", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "deposit", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "depositToPolygon", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "exists", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "expiryOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "get", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getByHash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getKey", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getKeys", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getMany", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getManyByHash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedOrOwner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isExpired", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isTrustedForwarder", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "mint(address,uint256)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "mint(address,uint256,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "mintTLD", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "mintWithRecords", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "multicall", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "namehash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "nonceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "onERC721Received", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "reconfigure", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "removeReverse", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "reset", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "resolverOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "reverseNameOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "reverseOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "root", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "set", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setByHash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setExpiry", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setMany", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setManyByHash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setOwner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setReverse", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setTokenURIPrefix", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "tokenURI", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "unlock", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "unlockWithRecords", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "verify", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "withdrawFromPolygon", data: BytesLike): Result; +} +export declare namespace AdminChangedEvent { + type InputTuple = [previousAdmin: AddressLike, newAdmin: AddressLike]; + type OutputTuple = [previousAdmin: string, newAdmin: string]; + interface OutputObject { + previousAdmin: string; + newAdmin: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ApprovalEvent { + type InputTuple = [ + owner: AddressLike, + approved: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [owner: string, approved: string, tokenId: bigint]; + interface OutputObject { + owner: string; + approved: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ApprovalForAllEvent { + type InputTuple = [ + owner: AddressLike, + operator: AddressLike, + approved: boolean + ]; + type OutputTuple = [ + owner: string, + operator: string, + approved: boolean + ]; + interface OutputObject { + owner: string; + operator: string; + approved: boolean; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace InitializedEvent { + type InputTuple = [version: BigNumberish]; + type OutputTuple = [version: bigint]; + interface OutputObject { + version: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NewKeyEvent { + type InputTuple = [ + tokenId: BigNumberish, + keyIndex: string, + key: string + ]; + type OutputTuple = [tokenId: bigint, keyIndex: string, key: string]; + interface OutputObject { + tokenId: bigint; + keyIndex: string; + key: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NewURIEvent { + type InputTuple = [tokenId: BigNumberish, uri: string]; + type OutputTuple = [tokenId: bigint, uri: string]; + interface OutputObject { + tokenId: bigint; + uri: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NewURIPrefixEvent { + type InputTuple = [prefix: string]; + type OutputTuple = [prefix: string]; + interface OutputObject { + prefix: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RemoveReverseEvent { + type InputTuple = [addr: AddressLike]; + type OutputTuple = [addr: string]; + interface OutputObject { + addr: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ResetRecordsEvent { + type InputTuple = [tokenId: BigNumberish]; + type OutputTuple = [tokenId: bigint]; + interface OutputObject { + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace SetEvent { + type InputTuple = [ + tokenId: BigNumberish, + keyIndex: string, + valueIndex: string, + key: string, + value: string + ]; + type OutputTuple = [ + tokenId: bigint, + keyIndex: string, + valueIndex: string, + key: string, + value: string + ]; + interface OutputObject { + tokenId: bigint; + keyIndex: string; + valueIndex: string; + key: string; + value: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace SetExpiryEvent { + type InputTuple = [tokenId: BigNumberish, expiry: BigNumberish]; + type OutputTuple = [tokenId: bigint, expiry: bigint]; + interface OutputObject { + tokenId: bigint; + expiry: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace SetReverseEvent { + type InputTuple = [addr: AddressLike, tokenId: BigNumberish]; + type OutputTuple = [addr: string, tokenId: bigint]; + interface OutputObject { + addr: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferEvent { + type InputTuple = [ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [from: string, to: string, tokenId: bigint]; + interface OutputObject { + from: string; + to: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace UpgradedEvent { + type InputTuple = [implementation: AddressLike]; + type OutputTuple = [implementation: string]; + interface OutputObject { + implementation: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface UNSRegistry extends BaseContract { + connect(runner?: ContractRunner | null): UNSRegistry; + waitForDeployment(): Promise; + interface: UNSRegistryInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + BATCH_LIMIT: TypedContractMethod<[], [bigint], "view">; + NAME: TypedContractMethod<[], [string], "view">; + VERSION: TypedContractMethod<[], [string], "view">; + addKey: TypedContractMethod<[key: string], [void], "nonpayable">; + addProxyReader: TypedContractMethod<[ + addr: AddressLike + ], [ + void + ], "nonpayable">; + approve: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; + burn: TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; + deposit: TypedContractMethod<[ + user: AddressLike, + depositData: BytesLike + ], [ + void + ], "nonpayable">; + depositToPolygon: TypedContractMethod<[ + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + execute: TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + string + ], "nonpayable">; + exists: TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; + expiryOf: TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; + get: TypedContractMethod<[ + key: string, + tokenId: BigNumberish + ], [ + string + ], "view">; + getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getByHash: TypedContractMethod<[ + keyHash: BigNumberish, + tokenId: BigNumberish + ], [ + [string, string] & { + key: string; + value: string; + } + ], "view">; + getKey: TypedContractMethod<[keyHash: BigNumberish], [string], "view">; + getKeys: TypedContractMethod<[hashes: BigNumberish[]], [string[]], "view">; + getMany: TypedContractMethod<[ + keys: string[], + tokenId: BigNumberish + ], [ + string[] + ], "view">; + getManyByHash: TypedContractMethod<[ + keyHashes: BigNumberish[], + tokenId: BigNumberish + ], [ + [string[], string[]] & { + keys: string[]; + values: string[]; + } + ], "view">; + initialize: TypedContractMethod<[ + mintingManager: AddressLike, + cnsRegistry: AddressLike, + rootChainManager: AddressLike, + childChainManager: AddressLike + ], [ + void + ], "nonpayable">; + isApprovedForAll: TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + isApprovedOrOwner: TypedContractMethod<[ + spender: AddressLike, + tokenId: BigNumberish + ], [ + boolean + ], "view">; + isExpired: TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; + isTrustedForwarder: TypedContractMethod<[ + forwarder: AddressLike + ], [ + boolean + ], "view">; + "mint(address,uint256)": TypedContractMethod<[ + user: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + "mint(address,uint256,bytes)": TypedContractMethod<[ + user: AddressLike, + tokenId: BigNumberish, + arg2: BytesLike + ], [ + void + ], "nonpayable">; + mintTLD: TypedContractMethod<[ + tokenId: BigNumberish, + uri: string + ], [ + void + ], "nonpayable">; + mintWithRecords: TypedContractMethod<[ + to: AddressLike, + labels: string[], + keys: string[], + values: string[], + withReverse: boolean + ], [ + void + ], "nonpayable">; + multicall: TypedContractMethod<[data: BytesLike[]], [string[]], "nonpayable">; + name: TypedContractMethod<[], [string], "view">; + namehash: TypedContractMethod<[labels: string[]], [bigint], "view">; + nonceOf: TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; + onERC721Received: TypedContractMethod<[ + arg0: AddressLike, + from: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + string + ], "nonpayable">; + ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + reconfigure: TypedContractMethod<[ + keys: string[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + removeReverse: TypedContractMethod<[], [void], "nonpayable">; + reset: TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; + resolverOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + reverseNameOf: TypedContractMethod<[addr: AddressLike], [string], "view">; + reverseOf: TypedContractMethod<[addr: AddressLike], [bigint], "view">; + root: TypedContractMethod<[], [bigint], "view">; + "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + set: TypedContractMethod<[ + key: string, + value: string, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + setApprovalForAll: TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + setByHash: TypedContractMethod<[ + keyHash: BigNumberish, + value: string, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + setExpiry: TypedContractMethod<[ + expiry: BigNumberish, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + setMany: TypedContractMethod<[ + keys: string[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + setManyByHash: TypedContractMethod<[ + keyHashes: BigNumberish[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + setOwner: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + setReverse: TypedContractMethod<[labels: string[]], [void], "nonpayable">; + setTokenURIPrefix: TypedContractMethod<[ + prefix: string + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + symbol: TypedContractMethod<[], [string], "view">; + tokenURI: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + transferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + unlock: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + unlockWithRecords: TypedContractMethod<[ + to: AddressLike, + labels: string[], + keys: string[], + values: string[], + withReverse: boolean + ], [ + void + ], "nonpayable">; + verify: TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + boolean + ], "view">; + withdrawFromPolygon: TypedContractMethod<[ + inputData: BytesLike, + tokenId: BigNumberish, + keys: string[], + values: string[] + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "BATCH_LIMIT"): TypedContractMethod<[], [bigint], "view">; + getFunction(nameOrSignature: "NAME"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "VERSION"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "addKey"): TypedContractMethod<[key: string], [void], "nonpayable">; + getFunction(nameOrSignature: "addProxyReader"): TypedContractMethod<[addr: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "approve"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; + getFunction(nameOrSignature: "burn"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; + getFunction(nameOrSignature: "deposit"): TypedContractMethod<[ + user: AddressLike, + depositData: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "depositToPolygon"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; + getFunction(nameOrSignature: "execute"): TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + string + ], "nonpayable">; + getFunction(nameOrSignature: "exists"): TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; + getFunction(nameOrSignature: "expiryOf"): TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; + getFunction(nameOrSignature: "get"): TypedContractMethod<[ + key: string, + tokenId: BigNumberish + ], [ + string + ], "view">; + getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "getByHash"): TypedContractMethod<[ + keyHash: BigNumberish, + tokenId: BigNumberish + ], [ + [string, string] & { + key: string; + value: string; + } + ], "view">; + getFunction(nameOrSignature: "getKey"): TypedContractMethod<[keyHash: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "getKeys"): TypedContractMethod<[hashes: BigNumberish[]], [string[]], "view">; + getFunction(nameOrSignature: "getMany"): TypedContractMethod<[ + keys: string[], + tokenId: BigNumberish + ], [ + string[] + ], "view">; + getFunction(nameOrSignature: "getManyByHash"): TypedContractMethod<[ + keyHashes: BigNumberish[], + tokenId: BigNumberish + ], [ + [string[], string[]] & { + keys: string[]; + values: string[]; + } + ], "view">; + getFunction(nameOrSignature: "initialize"): TypedContractMethod<[ + mintingManager: AddressLike, + cnsRegistry: AddressLike, + rootChainManager: AddressLike, + childChainManager: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "isApprovedOrOwner"): TypedContractMethod<[ + spender: AddressLike, + tokenId: BigNumberish + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "isExpired"): TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; + getFunction(nameOrSignature: "isTrustedForwarder"): TypedContractMethod<[forwarder: AddressLike], [boolean], "view">; + getFunction(nameOrSignature: "mint(address,uint256)"): TypedContractMethod<[ + user: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "mint(address,uint256,bytes)"): TypedContractMethod<[ + user: AddressLike, + tokenId: BigNumberish, + arg2: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "mintTLD"): TypedContractMethod<[ + tokenId: BigNumberish, + uri: string + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "mintWithRecords"): TypedContractMethod<[ + to: AddressLike, + labels: string[], + keys: string[], + values: string[], + withReverse: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "multicall"): TypedContractMethod<[data: BytesLike[]], [string[]], "nonpayable">; + getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "namehash"): TypedContractMethod<[labels: string[]], [bigint], "view">; + getFunction(nameOrSignature: "nonceOf"): TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; + getFunction(nameOrSignature: "onERC721Received"): TypedContractMethod<[ + arg0: AddressLike, + from: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + string + ], "nonpayable">; + getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "reconfigure"): TypedContractMethod<[ + keys: string[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "removeReverse"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "reset"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; + getFunction(nameOrSignature: "resolverOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "reverseNameOf"): TypedContractMethod<[addr: AddressLike], [string], "view">; + getFunction(nameOrSignature: "reverseOf"): TypedContractMethod<[addr: AddressLike], [bigint], "view">; + getFunction(nameOrSignature: "root"): TypedContractMethod<[], [bigint], "view">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "set"): TypedContractMethod<[ + key: string, + value: string, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setByHash"): TypedContractMethod<[ + keyHash: BigNumberish, + value: string, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setExpiry"): TypedContractMethod<[ + expiry: BigNumberish, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setMany"): TypedContractMethod<[ + keys: string[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setManyByHash"): TypedContractMethod<[ + keyHashes: BigNumberish[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setOwner"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setReverse"): TypedContractMethod<[labels: string[]], [void], "nonpayable">; + getFunction(nameOrSignature: "setTokenURIPrefix"): TypedContractMethod<[prefix: string], [void], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "symbol"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "tokenURI"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "unlock"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "unlockWithRecords"): TypedContractMethod<[ + to: AddressLike, + labels: string[], + keys: string[], + values: string[], + withReverse: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "verify"): TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "withdrawFromPolygon"): TypedContractMethod<[ + inputData: BytesLike, + tokenId: BigNumberish, + keys: string[], + values: string[] + ], [ + void + ], "nonpayable">; + getEvent(key: "AdminChanged"): TypedContractEvent; + getEvent(key: "Approval"): TypedContractEvent; + getEvent(key: "ApprovalForAll"): TypedContractEvent; + getEvent(key: "Initialized"): TypedContractEvent; + getEvent(key: "NewKey"): TypedContractEvent; + getEvent(key: "NewURI"): TypedContractEvent; + getEvent(key: "NewURIPrefix"): TypedContractEvent; + getEvent(key: "RemoveReverse"): TypedContractEvent; + getEvent(key: "ResetRecords"): TypedContractEvent; + getEvent(key: "Set"): TypedContractEvent; + getEvent(key: "SetExpiry"): TypedContractEvent; + getEvent(key: "SetReverse"): TypedContractEvent; + getEvent(key: "Transfer"): TypedContractEvent; + getEvent(key: "Upgraded"): TypedContractEvent; + filters: { + "AdminChanged(address,address)": TypedContractEvent; + AdminChanged: TypedContractEvent; + "Approval(address,address,uint256)": TypedContractEvent; + Approval: TypedContractEvent; + "ApprovalForAll(address,address,bool)": TypedContractEvent; + ApprovalForAll: TypedContractEvent; + "Initialized(uint8)": TypedContractEvent; + Initialized: TypedContractEvent; + "NewKey(uint256,string,string)": TypedContractEvent; + NewKey: TypedContractEvent; + "NewURI(uint256,string)": TypedContractEvent; + NewURI: TypedContractEvent; + "NewURIPrefix(string)": TypedContractEvent; + NewURIPrefix: TypedContractEvent; + "RemoveReverse(address)": TypedContractEvent; + RemoveReverse: TypedContractEvent; + "ResetRecords(uint256)": TypedContractEvent; + ResetRecords: TypedContractEvent; + "Set(uint256,string,string,string,string)": TypedContractEvent; + Set: TypedContractEvent; + "SetExpiry(uint256,uint64)": TypedContractEvent; + SetExpiry: TypedContractEvent; + "SetReverse(address,uint256)": TypedContractEvent; + SetReverse: TypedContractEvent; + "Transfer(address,address,uint256)": TypedContractEvent; + Transfer: TypedContractEvent; + "Upgraded(address)": TypedContractEvent; + Upgraded: TypedContractEvent; + }; +} +//# sourceMappingURL=UNSRegistry.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/UNSRegistry.d.ts.map b/dist/types/contracts/UNSRegistry.d.ts.map new file mode 100644 index 00000000..0f46f1e7 --- /dev/null +++ b/dist/types/contracts/UNSRegistry.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"UNSRegistry.d.ts","sourceRoot":"","sources":["../../../types/contracts/UNSRegistry.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/UNSRegistry.js b/dist/types/contracts/UNSRegistry.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/UNSRegistry.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/cns/ICNSRegistry.d.ts b/dist/types/contracts/cns/ICNSRegistry.d.ts new file mode 100644 index 00000000..e43d7527 --- /dev/null +++ b/dist/types/contracts/cns/ICNSRegistry.d.ts @@ -0,0 +1,248 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; +export interface ICNSRegistryInterface extends Interface { + getFunction(nameOrSignature: "approve" | "balanceOf" | "burn" | "childIdOf" | "getApproved" | "isApprovedForAll" | "isApprovedOrOwner" | "name" | "ownerOf" | "resolverOf" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "setApprovalForAll" | "supportsInterface" | "symbol" | "tokenURI" | "transferFrom"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "Transfer"): EventFragment; + encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "burn", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "childIdOf", values: [BigNumberish, string]): string; + encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "isApprovedOrOwner", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "name", values?: undefined): string; + encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "resolverOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "symbol", values?: undefined): string; + encodeFunctionData(functionFragment: "tokenURI", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; + decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "burn", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "childIdOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedOrOwner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "resolverOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "tokenURI", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; +} +export declare namespace ApprovalEvent { + type InputTuple = [ + owner: AddressLike, + approved: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [owner: string, approved: string, tokenId: bigint]; + interface OutputObject { + owner: string; + approved: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ApprovalForAllEvent { + type InputTuple = [ + owner: AddressLike, + operator: AddressLike, + approved: boolean + ]; + type OutputTuple = [ + owner: string, + operator: string, + approved: boolean + ]; + interface OutputObject { + owner: string; + operator: string; + approved: boolean; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferEvent { + type InputTuple = [ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [from: string, to: string, tokenId: bigint]; + interface OutputObject { + from: string; + to: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface ICNSRegistry extends BaseContract { + connect(runner?: ContractRunner | null): ICNSRegistry; + waitForDeployment(): Promise; + interface: ICNSRegistryInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + approve: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; + burn: TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; + childIdOf: TypedContractMethod<[ + tokenId: BigNumberish, + label: string + ], [ + bigint + ], "view">; + getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + isApprovedForAll: TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + isApprovedOrOwner: TypedContractMethod<[ + spender: AddressLike, + tokenId: BigNumberish + ], [ + boolean + ], "view">; + name: TypedContractMethod<[], [string], "view">; + ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + resolverOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + setApprovalForAll: TypedContractMethod<[ + operator: AddressLike, + _approved: boolean + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + symbol: TypedContractMethod<[], [string], "view">; + tokenURI: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + transferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "approve"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; + getFunction(nameOrSignature: "burn"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; + getFunction(nameOrSignature: "childIdOf"): TypedContractMethod<[ + tokenId: BigNumberish, + label: string + ], [ + bigint + ], "view">; + getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "isApprovedOrOwner"): TypedContractMethod<[ + spender: AddressLike, + tokenId: BigNumberish + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "resolverOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ + operator: AddressLike, + _approved: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "symbol"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "tokenURI"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getEvent(key: "Approval"): TypedContractEvent; + getEvent(key: "ApprovalForAll"): TypedContractEvent; + getEvent(key: "Transfer"): TypedContractEvent; + filters: { + "Approval(address,address,uint256)": TypedContractEvent; + Approval: TypedContractEvent; + "ApprovalForAll(address,address,bool)": TypedContractEvent; + ApprovalForAll: TypedContractEvent; + "Transfer(address,address,uint256)": TypedContractEvent; + Transfer: TypedContractEvent; + }; +} +//# sourceMappingURL=ICNSRegistry.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/cns/ICNSRegistry.d.ts.map b/dist/types/contracts/cns/ICNSRegistry.d.ts.map new file mode 100644 index 00000000..918a9016 --- /dev/null +++ b/dist/types/contracts/cns/ICNSRegistry.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ICNSRegistry.d.ts","sourceRoot":"","sources":["../../../../types/contracts/cns/ICNSRegistry.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/cns/ICNSRegistry.js b/dist/types/contracts/cns/ICNSRegistry.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/cns/ICNSRegistry.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/cns/IMintingController.d.ts b/dist/types/contracts/cns/IMintingController.d.ts new file mode 100644 index 00000000..abbd4fde --- /dev/null +++ b/dist/types/contracts/cns/IMintingController.d.ts @@ -0,0 +1,116 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../common"; +export interface IMintingControllerInterface extends Interface { + getFunction(nameOrSignature: "mintSLD" | "mintSLDWithResolver" | "safeMintSLD(address,string)" | "safeMintSLD(address,string,bytes)" | "safeMintSLDWithResolver(address,string,address,bytes)" | "safeMintSLDWithResolver(address,string,address)"): FunctionFragment; + encodeFunctionData(functionFragment: "mintSLD", values: [AddressLike, string]): string; + encodeFunctionData(functionFragment: "mintSLDWithResolver", values: [AddressLike, string, AddressLike]): string; + encodeFunctionData(functionFragment: "safeMintSLD(address,string)", values: [AddressLike, string]): string; + encodeFunctionData(functionFragment: "safeMintSLD(address,string,bytes)", values: [AddressLike, string, BytesLike]): string; + encodeFunctionData(functionFragment: "safeMintSLDWithResolver(address,string,address,bytes)", values: [AddressLike, string, AddressLike, BytesLike]): string; + encodeFunctionData(functionFragment: "safeMintSLDWithResolver(address,string,address)", values: [AddressLike, string, AddressLike]): string; + decodeFunctionResult(functionFragment: "mintSLD", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "mintSLDWithResolver", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeMintSLD(address,string)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeMintSLD(address,string,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeMintSLDWithResolver(address,string,address,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeMintSLDWithResolver(address,string,address)", data: BytesLike): Result; +} +export interface IMintingController extends BaseContract { + connect(runner?: ContractRunner | null): IMintingController; + waitForDeployment(): Promise; + interface: IMintingControllerInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + mintSLD: TypedContractMethod<[ + to: AddressLike, + label: string + ], [ + void + ], "nonpayable">; + mintSLDWithResolver: TypedContractMethod<[ + to: AddressLike, + label: string, + resolver: AddressLike + ], [ + void + ], "nonpayable">; + "safeMintSLD(address,string)": TypedContractMethod<[ + to: AddressLike, + label: string + ], [ + void + ], "nonpayable">; + "safeMintSLD(address,string,bytes)": TypedContractMethod<[ + to: AddressLike, + label: string, + data: BytesLike + ], [ + void + ], "nonpayable">; + "safeMintSLDWithResolver(address,string,address,bytes)": TypedContractMethod<[ + to: AddressLike, + label: string, + resolver: AddressLike, + data: BytesLike + ], [ + void + ], "nonpayable">; + "safeMintSLDWithResolver(address,string,address)": TypedContractMethod<[ + to: AddressLike, + label: string, + resolver: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "mintSLD"): TypedContractMethod<[ + to: AddressLike, + label: string + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "mintSLDWithResolver"): TypedContractMethod<[ + to: AddressLike, + label: string, + resolver: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeMintSLD(address,string)"): TypedContractMethod<[ + to: AddressLike, + label: string + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeMintSLD(address,string,bytes)"): TypedContractMethod<[ + to: AddressLike, + label: string, + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeMintSLDWithResolver(address,string,address,bytes)"): TypedContractMethod<[ + to: AddressLike, + label: string, + resolver: AddressLike, + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeMintSLDWithResolver(address,string,address)"): TypedContractMethod<[ + to: AddressLike, + label: string, + resolver: AddressLike + ], [ + void + ], "nonpayable">; + filters: {}; +} +//# sourceMappingURL=IMintingController.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/cns/IMintingController.d.ts.map b/dist/types/contracts/cns/IMintingController.d.ts.map new file mode 100644 index 00000000..f081ba28 --- /dev/null +++ b/dist/types/contracts/cns/IMintingController.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IMintingController.d.ts","sourceRoot":"","sources":["../../../../types/contracts/cns/IMintingController.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/cns/IMintingController.js b/dist/types/contracts/cns/IMintingController.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/cns/IMintingController.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/cns/IResolver.d.ts b/dist/types/contracts/cns/IResolver.d.ts new file mode 100644 index 00000000..c00c64cf --- /dev/null +++ b/dist/types/contracts/cns/IResolver.d.ts @@ -0,0 +1,122 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../common"; +export interface IResolverInterface extends Interface { + getFunction(nameOrSignature: "get" | "getByHash" | "getMany" | "getManyByHash" | "preconfigure" | "set"): FunctionFragment; + encodeFunctionData(functionFragment: "get", values: [string, BigNumberish]): string; + encodeFunctionData(functionFragment: "getByHash", values: [BigNumberish, BigNumberish]): string; + encodeFunctionData(functionFragment: "getMany", values: [string[], BigNumberish]): string; + encodeFunctionData(functionFragment: "getManyByHash", values: [BigNumberish[], BigNumberish]): string; + encodeFunctionData(functionFragment: "preconfigure", values: [string[], string[], BigNumberish]): string; + encodeFunctionData(functionFragment: "set", values: [string, string, BigNumberish]): string; + decodeFunctionResult(functionFragment: "get", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getByHash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getMany", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getManyByHash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "preconfigure", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "set", data: BytesLike): Result; +} +export interface IResolver extends BaseContract { + connect(runner?: ContractRunner | null): IResolver; + waitForDeployment(): Promise; + interface: IResolverInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + get: TypedContractMethod<[ + key: string, + tokenId: BigNumberish + ], [ + string + ], "view">; + getByHash: TypedContractMethod<[ + keyHash: BigNumberish, + tokenId: BigNumberish + ], [ + [string, string] & { + key: string; + value: string; + } + ], "view">; + getMany: TypedContractMethod<[ + keys: string[], + tokenId: BigNumberish + ], [ + string[] + ], "view">; + getManyByHash: TypedContractMethod<[ + keyHashes: BigNumberish[], + tokenId: BigNumberish + ], [ + [string[], string[]] & { + keys: string[]; + values: string[]; + } + ], "view">; + preconfigure: TypedContractMethod<[ + keys: string[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + set: TypedContractMethod<[ + key: string, + value: string, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "get"): TypedContractMethod<[ + key: string, + tokenId: BigNumberish + ], [ + string + ], "view">; + getFunction(nameOrSignature: "getByHash"): TypedContractMethod<[ + keyHash: BigNumberish, + tokenId: BigNumberish + ], [ + [string, string] & { + key: string; + value: string; + } + ], "view">; + getFunction(nameOrSignature: "getMany"): TypedContractMethod<[ + keys: string[], + tokenId: BigNumberish + ], [ + string[] + ], "view">; + getFunction(nameOrSignature: "getManyByHash"): TypedContractMethod<[ + keyHashes: BigNumberish[], + tokenId: BigNumberish + ], [ + [string[], string[]] & { + keys: string[]; + values: string[]; + } + ], "view">; + getFunction(nameOrSignature: "preconfigure"): TypedContractMethod<[ + keys: string[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "set"): TypedContractMethod<[ + key: string, + value: string, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + filters: {}; +} +//# sourceMappingURL=IResolver.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/cns/IResolver.d.ts.map b/dist/types/contracts/cns/IResolver.d.ts.map new file mode 100644 index 00000000..c40c8f9c --- /dev/null +++ b/dist/types/contracts/cns/IResolver.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IResolver.d.ts","sourceRoot":"","sources":["../../../../types/contracts/cns/IResolver.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/cns/IResolver.js b/dist/types/contracts/cns/IResolver.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/cns/IResolver.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/cns/IURIPrefixController.d.ts b/dist/types/contracts/cns/IURIPrefixController.d.ts new file mode 100644 index 00000000..fd346ff6 --- /dev/null +++ b/dist/types/contracts/cns/IURIPrefixController.d.ts @@ -0,0 +1,30 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../common"; +export interface IURIPrefixControllerInterface extends Interface { + getFunction(nameOrSignature: "setTokenURIPrefix"): FunctionFragment; + encodeFunctionData(functionFragment: "setTokenURIPrefix", values: [string]): string; + decodeFunctionResult(functionFragment: "setTokenURIPrefix", data: BytesLike): Result; +} +export interface IURIPrefixController extends BaseContract { + connect(runner?: ContractRunner | null): IURIPrefixController; + waitForDeployment(): Promise; + interface: IURIPrefixControllerInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + setTokenURIPrefix: TypedContractMethod<[ + prefix: string + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "setTokenURIPrefix"): TypedContractMethod<[prefix: string], [void], "nonpayable">; + filters: {}; +} +//# sourceMappingURL=IURIPrefixController.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/cns/IURIPrefixController.d.ts.map b/dist/types/contracts/cns/IURIPrefixController.d.ts.map new file mode 100644 index 00000000..b3552fa8 --- /dev/null +++ b/dist/types/contracts/cns/IURIPrefixController.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IURIPrefixController.d.ts","sourceRoot":"","sources":["../../../../types/contracts/cns/IURIPrefixController.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/cns/IURIPrefixController.js b/dist/types/contracts/cns/IURIPrefixController.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/cns/IURIPrefixController.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/cns/index.d.ts b/dist/types/contracts/cns/index.d.ts new file mode 100644 index 00000000..97ace956 --- /dev/null +++ b/dist/types/contracts/cns/index.d.ts @@ -0,0 +1,5 @@ +export type { ICNSRegistry } from "./ICNSRegistry"; +export type { IMintingController } from "./IMintingController"; +export type { IResolver } from "./IResolver"; +export type { IURIPrefixController } from "./IURIPrefixController"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/cns/index.d.ts.map b/dist/types/contracts/cns/index.d.ts.map new file mode 100644 index 00000000..20c5902c --- /dev/null +++ b/dist/types/contracts/cns/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../types/contracts/cns/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACnD,YAAY,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,YAAY,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,YAAY,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC"} \ No newline at end of file diff --git a/dist/types/contracts/cns/index.js b/dist/types/contracts/cns/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/cns/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/custody/ENSCustody.d.ts b/dist/types/contracts/custody/ENSCustody.d.ts new file mode 100644 index 00000000..911276bf --- /dev/null +++ b/dist/types/contracts/custody/ENSCustody.d.ts @@ -0,0 +1,549 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; +export declare namespace IForwarder { + type ForwardRequestStruct = { + from: AddressLike; + nonce: BigNumberish; + tokenId: BigNumberish; + data: BytesLike; + }; + type ForwardRequestStructOutput = [ + from: string, + nonce: bigint, + tokenId: bigint, + data: string + ] & { + from: string; + nonce: bigint; + tokenId: bigint; + data: string; + }; +} +export interface ENSCustodyInterface extends Interface { + getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE" | "MINTER_ROLE" | "NAME" | "VERSION" | "addMinter" | "addMinters" | "closeMinter" | "commit" | "execute" | "getRoleAdmin" | "grantRole" | "hasRole" | "initialize" | "isMinter" | "isTrustedForwarder" | "makeCommitment" | "nonceOf" | "onERC1155BatchReceived" | "onERC1155Received" | "onERC721Received" | "owner" | "ownerOf" | "register" | "removeMinter" | "removeMinters" | "renew" | "renounceMinter" | "renounceOwnership" | "renounceRole" | "rentPrice" | "revokeRole" | "rotateMinter" | "safeTransfer" | "setBaseRegistrar" | "supportsInterface" | "transferOwnership" | "verify"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Initialized" | "OwnershipTransferred" | "Parked" | "RoleAdminChanged" | "RoleGranted" | "RoleRevoked"): EventFragment; + encodeFunctionData(functionFragment: "DEFAULT_ADMIN_ROLE", values?: undefined): string; + encodeFunctionData(functionFragment: "MINTER_ROLE", values?: undefined): string; + encodeFunctionData(functionFragment: "NAME", values?: undefined): string; + encodeFunctionData(functionFragment: "VERSION", values?: undefined): string; + encodeFunctionData(functionFragment: "addMinter", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "addMinters", values: [AddressLike[]]): string; + encodeFunctionData(functionFragment: "closeMinter", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "commit", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "execute", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; + encodeFunctionData(functionFragment: "getRoleAdmin", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "grantRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "hasRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "initialize", values: [AddressLike, AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "isMinter", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "isTrustedForwarder", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "makeCommitment", values: [ + string, + AddressLike, + BigNumberish, + BytesLike, + AddressLike, + BytesLike[], + boolean, + BigNumberish, + boolean + ]): string; + encodeFunctionData(functionFragment: "nonceOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "onERC1155BatchReceived", values: [ + AddressLike, + AddressLike, + BigNumberish[], + BigNumberish[], + BytesLike + ]): string; + encodeFunctionData(functionFragment: "onERC1155Received", values: [AddressLike, AddressLike, BigNumberish, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "onERC721Received", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "register", values: [ + string, + AddressLike, + BigNumberish, + BytesLike, + AddressLike, + BytesLike[], + boolean, + BigNumberish, + boolean + ]): string; + encodeFunctionData(functionFragment: "removeMinter", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "removeMinters", values: [AddressLike[]]): string; + encodeFunctionData(functionFragment: "renew", values: [string, BigNumberish]): string; + encodeFunctionData(functionFragment: "renounceMinter", values?: undefined): string; + encodeFunctionData(functionFragment: "renounceOwnership", values?: undefined): string; + encodeFunctionData(functionFragment: "renounceRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "rentPrice", values: [string, BigNumberish]): string; + encodeFunctionData(functionFragment: "revokeRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "rotateMinter", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "safeTransfer", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "setBaseRegistrar", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "transferOwnership", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "verify", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; + decodeFunctionResult(functionFragment: "DEFAULT_ADMIN_ROLE", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "MINTER_ROLE", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "NAME", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "VERSION", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "addMinter", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "addMinters", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "closeMinter", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "commit", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getRoleAdmin", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "grantRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "hasRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isMinter", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isTrustedForwarder", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "makeCommitment", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "nonceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "onERC1155BatchReceived", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "onERC1155Received", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "onERC721Received", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "register", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "removeMinter", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "removeMinters", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renew", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceMinter", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceOwnership", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "rentPrice", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "revokeRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "rotateMinter", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransfer", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setBaseRegistrar", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "verify", data: BytesLike): Result; +} +export declare namespace InitializedEvent { + type InputTuple = [version: BigNumberish]; + type OutputTuple = [version: bigint]; + interface OutputObject { + version: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace OwnershipTransferredEvent { + type InputTuple = [previousOwner: AddressLike, newOwner: AddressLike]; + type OutputTuple = [previousOwner: string, newOwner: string]; + interface OutputObject { + previousOwner: string; + newOwner: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ParkedEvent { + type InputTuple = [tokenId: BigNumberish, owner: AddressLike]; + type OutputTuple = [tokenId: bigint, owner: string]; + interface OutputObject { + tokenId: bigint; + owner: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RoleAdminChangedEvent { + type InputTuple = [ + role: BytesLike, + previousAdminRole: BytesLike, + newAdminRole: BytesLike + ]; + type OutputTuple = [ + role: string, + previousAdminRole: string, + newAdminRole: string + ]; + interface OutputObject { + role: string; + previousAdminRole: string; + newAdminRole: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RoleGrantedEvent { + type InputTuple = [ + role: BytesLike, + account: AddressLike, + sender: AddressLike + ]; + type OutputTuple = [role: string, account: string, sender: string]; + interface OutputObject { + role: string; + account: string; + sender: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RoleRevokedEvent { + type InputTuple = [ + role: BytesLike, + account: AddressLike, + sender: AddressLike + ]; + type OutputTuple = [role: string, account: string, sender: string]; + interface OutputObject { + role: string; + account: string; + sender: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface ENSCustody extends BaseContract { + connect(runner?: ContractRunner | null): ENSCustody; + waitForDeployment(): Promise; + interface: ENSCustodyInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + DEFAULT_ADMIN_ROLE: TypedContractMethod<[], [string], "view">; + MINTER_ROLE: TypedContractMethod<[], [string], "view">; + NAME: TypedContractMethod<[], [string], "view">; + VERSION: TypedContractMethod<[], [string], "view">; + addMinter: TypedContractMethod<[account: AddressLike], [void], "nonpayable">; + addMinters: TypedContractMethod<[ + accounts: AddressLike[] + ], [ + void + ], "nonpayable">; + closeMinter: TypedContractMethod<[receiver: AddressLike], [void], "payable">; + commit: TypedContractMethod<[commitment: BytesLike], [void], "nonpayable">; + execute: TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + string + ], "nonpayable">; + getRoleAdmin: TypedContractMethod<[role: BytesLike], [string], "view">; + grantRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + hasRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + boolean + ], "view">; + initialize: TypedContractMethod<[ + controller: AddressLike, + wrapper: AddressLike, + registrar: AddressLike + ], [ + void + ], "nonpayable">; + isMinter: TypedContractMethod<[account: AddressLike], [boolean], "view">; + isTrustedForwarder: TypedContractMethod<[ + forwarder: AddressLike + ], [ + boolean + ], "view">; + makeCommitment: TypedContractMethod<[ + name: string, + owner: AddressLike, + duration: BigNumberish, + secret: BytesLike, + resolver: AddressLike, + data: BytesLike[], + reverseRecord: boolean, + ownerControlledFuses: BigNumberish, + selfCustody: boolean + ], [ + string + ], "view">; + nonceOf: TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; + onERC1155BatchReceived: TypedContractMethod<[ + arg0: AddressLike, + arg1: AddressLike, + tokenIds: BigNumberish[], + arg3: BigNumberish[], + data: BytesLike + ], [ + string + ], "nonpayable">; + onERC1155Received: TypedContractMethod<[ + arg0: AddressLike, + from: AddressLike, + tokenId: BigNumberish, + arg3: BigNumberish, + data: BytesLike + ], [ + string + ], "nonpayable">; + onERC721Received: TypedContractMethod<[ + arg0: AddressLike, + arg1: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + string + ], "nonpayable">; + owner: TypedContractMethod<[], [string], "view">; + ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + register: TypedContractMethod<[ + name: string, + owner: AddressLike, + duration: BigNumberish, + secret: BytesLike, + resolver: AddressLike, + data: BytesLike[], + reverseRecord: boolean, + ownerControlledFuses: BigNumberish, + selfCustody: boolean + ], [ + void + ], "nonpayable">; + removeMinter: TypedContractMethod<[ + account: AddressLike + ], [ + void + ], "nonpayable">; + removeMinters: TypedContractMethod<[ + accounts: AddressLike[] + ], [ + void + ], "nonpayable">; + renew: TypedContractMethod<[ + name: string, + duration: BigNumberish + ], [ + void + ], "nonpayable">; + renounceMinter: TypedContractMethod<[], [void], "nonpayable">; + renounceOwnership: TypedContractMethod<[], [void], "nonpayable">; + renounceRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + rentPrice: TypedContractMethod<[ + name: string, + duration: BigNumberish + ], [ + bigint + ], "view">; + revokeRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + rotateMinter: TypedContractMethod<[receiver: AddressLike], [void], "payable">; + safeTransfer: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + setBaseRegistrar: TypedContractMethod<[ + baseRegistrar: AddressLike + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + transferOwnership: TypedContractMethod<[ + newOwner: AddressLike + ], [ + void + ], "nonpayable">; + verify: TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + boolean + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "MINTER_ROLE"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "NAME"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "VERSION"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "addMinter"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "addMinters"): TypedContractMethod<[accounts: AddressLike[]], [void], "nonpayable">; + getFunction(nameOrSignature: "closeMinter"): TypedContractMethod<[receiver: AddressLike], [void], "payable">; + getFunction(nameOrSignature: "commit"): TypedContractMethod<[commitment: BytesLike], [void], "nonpayable">; + getFunction(nameOrSignature: "execute"): TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + string + ], "nonpayable">; + getFunction(nameOrSignature: "getRoleAdmin"): TypedContractMethod<[role: BytesLike], [string], "view">; + getFunction(nameOrSignature: "grantRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "hasRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "initialize"): TypedContractMethod<[ + controller: AddressLike, + wrapper: AddressLike, + registrar: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "isMinter"): TypedContractMethod<[account: AddressLike], [boolean], "view">; + getFunction(nameOrSignature: "isTrustedForwarder"): TypedContractMethod<[forwarder: AddressLike], [boolean], "view">; + getFunction(nameOrSignature: "makeCommitment"): TypedContractMethod<[ + name: string, + owner: AddressLike, + duration: BigNumberish, + secret: BytesLike, + resolver: AddressLike, + data: BytesLike[], + reverseRecord: boolean, + ownerControlledFuses: BigNumberish, + selfCustody: boolean + ], [ + string + ], "view">; + getFunction(nameOrSignature: "nonceOf"): TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; + getFunction(nameOrSignature: "onERC1155BatchReceived"): TypedContractMethod<[ + arg0: AddressLike, + arg1: AddressLike, + tokenIds: BigNumberish[], + arg3: BigNumberish[], + data: BytesLike + ], [ + string + ], "nonpayable">; + getFunction(nameOrSignature: "onERC1155Received"): TypedContractMethod<[ + arg0: AddressLike, + from: AddressLike, + tokenId: BigNumberish, + arg3: BigNumberish, + data: BytesLike + ], [ + string + ], "nonpayable">; + getFunction(nameOrSignature: "onERC721Received"): TypedContractMethod<[ + arg0: AddressLike, + arg1: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + string + ], "nonpayable">; + getFunction(nameOrSignature: "owner"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "register"): TypedContractMethod<[ + name: string, + owner: AddressLike, + duration: BigNumberish, + secret: BytesLike, + resolver: AddressLike, + data: BytesLike[], + reverseRecord: boolean, + ownerControlledFuses: BigNumberish, + selfCustody: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "removeMinter"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "removeMinters"): TypedContractMethod<[accounts: AddressLike[]], [void], "nonpayable">; + getFunction(nameOrSignature: "renew"): TypedContractMethod<[ + name: string, + duration: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "renounceMinter"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "renounceOwnership"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "renounceRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "rentPrice"): TypedContractMethod<[ + name: string, + duration: BigNumberish + ], [ + bigint + ], "view">; + getFunction(nameOrSignature: "revokeRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "rotateMinter"): TypedContractMethod<[receiver: AddressLike], [void], "payable">; + getFunction(nameOrSignature: "safeTransfer"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setBaseRegistrar"): TypedContractMethod<[baseRegistrar: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "transferOwnership"): TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "verify"): TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + boolean + ], "view">; + getEvent(key: "Initialized"): TypedContractEvent; + getEvent(key: "OwnershipTransferred"): TypedContractEvent; + getEvent(key: "Parked"): TypedContractEvent; + getEvent(key: "RoleAdminChanged"): TypedContractEvent; + getEvent(key: "RoleGranted"): TypedContractEvent; + getEvent(key: "RoleRevoked"): TypedContractEvent; + filters: { + "Initialized(uint8)": TypedContractEvent; + Initialized: TypedContractEvent; + "OwnershipTransferred(address,address)": TypedContractEvent; + OwnershipTransferred: TypedContractEvent; + "Parked(uint256,address)": TypedContractEvent; + Parked: TypedContractEvent; + "RoleAdminChanged(bytes32,bytes32,bytes32)": TypedContractEvent; + RoleAdminChanged: TypedContractEvent; + "RoleGranted(bytes32,address,address)": TypedContractEvent; + RoleGranted: TypedContractEvent; + "RoleRevoked(bytes32,address,address)": TypedContractEvent; + RoleRevoked: TypedContractEvent; + }; +} +//# sourceMappingURL=ENSCustody.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/custody/ENSCustody.d.ts.map b/dist/types/contracts/custody/ENSCustody.d.ts.map new file mode 100644 index 00000000..eec85139 --- /dev/null +++ b/dist/types/contracts/custody/ENSCustody.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ENSCustody.d.ts","sourceRoot":"","sources":["../../../../types/contracts/custody/ENSCustody.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,aAAa,EACb,WAAW,EACX,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,mBAAmB,EACnB,aAAa,EACb,mBAAmB,EACpB,MAAM,cAAc,CAAC;AAEtB,MAAM,CAAC,OAAO,WAAW,UAAU,CAAC;IAClC,KAAY,oBAAoB,GAAG;QACjC,IAAI,EAAE,WAAW,CAAC;QAClB,KAAK,EAAE,YAAY,CAAC;QACpB,OAAO,EAAE,YAAY,CAAC;QACtB,IAAI,EAAE,SAAS,CAAC;KACjB,CAAC;IAEF,KAAY,0BAA0B,GAAG;QACvC,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,MAAM;QACb,OAAO,EAAE,MAAM;QACf,IAAI,EAAE,MAAM;KACb,GAAG;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;CACpE;AAED,MAAM,WAAW,mBAAoB,SAAQ,SAAS;IACpD,WAAW,CACT,eAAe,EACX,oBAAoB,GACpB,aAAa,GACb,MAAM,GACN,SAAS,GACT,WAAW,GACX,YAAY,GACZ,aAAa,GACb,QAAQ,GACR,SAAS,GACT,cAAc,GACd,WAAW,GACX,SAAS,GACT,YAAY,GACZ,UAAU,GACV,oBAAoB,GACpB,gBAAgB,GAChB,SAAS,GACT,wBAAwB,GACxB,mBAAmB,GACnB,kBAAkB,GAClB,OAAO,GACP,SAAS,GACT,UAAU,GACV,cAAc,GACd,eAAe,GACf,OAAO,GACP,gBAAgB,GAChB,mBAAmB,GACnB,cAAc,GACd,WAAW,GACX,YAAY,GACZ,cAAc,GACd,cAAc,GACd,kBAAkB,GAClB,mBAAmB,GACnB,mBAAmB,GACnB,QAAQ,GACX,gBAAgB,CAAC;IAEpB,QAAQ,CACN,sBAAsB,EAClB,aAAa,GACb,sBAAsB,GACtB,QAAQ,GACR,kBAAkB,GAClB,aAAa,GACb,aAAa,GAChB,aAAa,CAAC;IAEjB,kBAAkB,CAChB,gBAAgB,EAAE,oBAAoB,EACtC,MAAM,CAAC,EAAE,SAAS,GACjB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,aAAa,EAC/B,MAAM,CAAC,EAAE,SAAS,GACjB,MAAM,CAAC;IACV,kBAAkB,CAAC,gBAAgB,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IACzE,kBAAkB,CAAC,gBAAgB,EAAE,SAAS,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IAC5E,kBAAkB,CAChB,gBAAgB,EAAE,WAAW,EAC7B,MAAM,EAAE,CAAC,WAAW,CAAC,GACpB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,YAAY,EAC9B,MAAM,EAAE,CAAC,WAAW,EAAE,CAAC,GACtB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,aAAa,EAC/B,MAAM,EAAE,CAAC,WAAW,CAAC,GACpB,MAAM,CAAC;IACV,kBAAkB,CAAC,gBAAgB,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC;IAC5E,kBAAkB,CAChB,gBAAgB,EAAE,SAAS,EAC3B,MAAM,EAAE,CAAC,UAAU,CAAC,oBAAoB,EAAE,SAAS,CAAC,GACnD,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,cAAc,EAChC,MAAM,EAAE,CAAC,SAAS,CAAC,GAClB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,WAAW,EAC7B,MAAM,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC,GAC/B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,SAAS,EAC3B,MAAM,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC,GAC/B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,YAAY,EAC9B,MAAM,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,WAAW,CAAC,GAC9C,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,UAAU,EAC5B,MAAM,EAAE,CAAC,WAAW,CAAC,GACpB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,oBAAoB,EACtC,MAAM,EAAE,CAAC,WAAW,CAAC,GACpB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,gBAAgB,EAClC,MAAM,EAAE;QACN,MAAM;QACN,WAAW;QACX,YAAY;QACZ,SAAS;QACT,WAAW;QACX,SAAS,EAAE;QACX,OAAO;QACP,YAAY;QACZ,OAAO;KACR,GACA,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,SAAS,EAC3B,MAAM,EAAE,CAAC,YAAY,CAAC,GACrB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,wBAAwB,EAC1C,MAAM,EAAE;QACN,WAAW;QACX,WAAW;QACX,YAAY,EAAE;QACd,YAAY,EAAE;QACd,SAAS;KACV,GACA,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,mBAAmB,EACrC,MAAM,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,YAAY,EAAE,SAAS,CAAC,GACxE,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,kBAAkB,EACpC,MAAM,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,SAAS,CAAC,GAC1D,MAAM,CAAC;IACV,kBAAkB,CAAC,gBAAgB,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IAC1E,kBAAkB,CAChB,gBAAgB,EAAE,SAAS,EAC3B,MAAM,EAAE,CAAC,YAAY,CAAC,GACrB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,UAAU,EAC5B,MAAM,EAAE;QACN,MAAM;QACN,WAAW;QACX,YAAY;QACZ,SAAS;QACT,WAAW;QACX,SAAS,EAAE;QACX,OAAO;QACP,YAAY;QACZ,OAAO;KACR,GACA,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,cAAc,EAChC,MAAM,EAAE,CAAC,WAAW,CAAC,GACpB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,eAAe,EACjC,MAAM,EAAE,CAAC,WAAW,EAAE,CAAC,GACtB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,OAAO,EACzB,MAAM,EAAE,CAAC,MAAM,EAAE,YAAY,CAAC,GAC7B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,gBAAgB,EAClC,MAAM,CAAC,EAAE,SAAS,GACjB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,mBAAmB,EACrC,MAAM,CAAC,EAAE,SAAS,GACjB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,cAAc,EAChC,MAAM,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC,GAC/B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,WAAW,EAC7B,MAAM,EAAE,CAAC,MAAM,EAAE,YAAY,CAAC,GAC7B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,YAAY,EAC9B,MAAM,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC,GAC/B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,cAAc,EAChC,MAAM,EAAE,CAAC,WAAW,CAAC,GACpB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,cAAc,EAChC,MAAM,EAAE,CAAC,WAAW,EAAE,YAAY,CAAC,GAClC,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,kBAAkB,EACpC,MAAM,EAAE,CAAC,WAAW,CAAC,GACpB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,mBAAmB,EACrC,MAAM,EAAE,CAAC,SAAS,CAAC,GAClB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,mBAAmB,EACrC,MAAM,EAAE,CAAC,WAAW,CAAC,GACpB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,QAAQ,EAC1B,MAAM,EAAE,CAAC,UAAU,CAAC,oBAAoB,EAAE,SAAS,CAAC,GACnD,MAAM,CAAC;IAEV,oBAAoB,CAClB,gBAAgB,EAAE,oBAAoB,EACtC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,aAAa,EAC/B,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IACxE,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,oBAAoB,CAAC,gBAAgB,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC7E,oBAAoB,CAAC,gBAAgB,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC9E,oBAAoB,CAClB,gBAAgB,EAAE,aAAa,EAC/B,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC1E,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,oBAAoB,CAClB,gBAAgB,EAAE,cAAc,EAChC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC7E,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,oBAAoB,CAAC,gBAAgB,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC9E,oBAAoB,CAAC,gBAAgB,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC5E,oBAAoB,CAClB,gBAAgB,EAAE,oBAAoB,EACtC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,gBAAgB,EAClC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,oBAAoB,CAClB,gBAAgB,EAAE,wBAAwB,EAC1C,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,mBAAmB,EACrC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,kBAAkB,EACpC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IACzE,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,oBAAoB,CAAC,gBAAgB,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC5E,oBAAoB,CAClB,gBAAgB,EAAE,cAAc,EAChC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,eAAe,EACjC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IACzE,oBAAoB,CAClB,gBAAgB,EAAE,gBAAgB,EAClC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,mBAAmB,EACrC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,cAAc,EAChC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC7E,oBAAoB,CAAC,gBAAgB,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC9E,oBAAoB,CAClB,gBAAgB,EAAE,cAAc,EAChC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,cAAc,EAChC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,kBAAkB,EACpC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,mBAAmB,EACrC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,mBAAmB,EACrC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;CAC3E;AAED,yBAAiB,gBAAgB,CAAC;IAChC,KAAY,UAAU,GAAG,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IACjD,KAAY,WAAW,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC5C,UAAiB,YAAY;QAC3B,OAAO,EAAE,MAAM,CAAC;KACjB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,yBAAyB,CAAC;IACzC,KAAY,UAAU,GAAG,CAAC,aAAa,EAAE,WAAW,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;IAC7E,KAAY,WAAW,GAAG,CAAC,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;IACpE,UAAiB,YAAY;QAC3B,aAAa,EAAE,MAAM,CAAC;QACtB,QAAQ,EAAE,MAAM,CAAC;KAClB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,WAAW,CAAC;IAC3B,KAAY,UAAU,GAAG,CAAC,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC;IACrE,KAAY,WAAW,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IAC3D,UAAiB,YAAY;QAC3B,OAAO,EAAE,MAAM,CAAC;QAChB,KAAK,EAAE,MAAM,CAAC;KACf;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,qBAAqB,CAAC;IACrC,KAAY,UAAU,GAAG;QACvB,IAAI,EAAE,SAAS;QACf,iBAAiB,EAAE,SAAS;QAC5B,YAAY,EAAE,SAAS;KACxB,CAAC;IACF,KAAY,WAAW,GAAG;QACxB,IAAI,EAAE,MAAM;QACZ,iBAAiB,EAAE,MAAM;QACzB,YAAY,EAAE,MAAM;KACrB,CAAC;IACF,UAAiB,YAAY;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,iBAAiB,EAAE,MAAM,CAAC;QAC1B,YAAY,EAAE,MAAM,CAAC;KACtB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,gBAAgB,CAAC;IAChC,KAAY,UAAU,GAAG;QACvB,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,WAAW;QACpB,MAAM,EAAE,WAAW;KACpB,CAAC;IACF,KAAY,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1E,UAAiB,YAAY;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;KAChB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,gBAAgB,CAAC;IAChC,KAAY,UAAU,GAAG;QACvB,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,WAAW;QACpB,MAAM,EAAE,WAAW;KACpB,CAAC;IACF,KAAY,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1E,UAAiB,YAAY;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;KAChB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,MAAM,WAAW,UAAW,SAAQ,YAAY;IAC9C,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,UAAU,CAAC;IACpD,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,mBAAmB,CAAC;IAE/B,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,kBAAkB,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAE9D,WAAW,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEvD,IAAI,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEhD,OAAO,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEnD,SAAS,EAAE,mBAAmB,CAAC,CAAC,OAAO,EAAE,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IAE7E,UAAU,EAAE,mBAAmB,CAC7B;QAAC,QAAQ,EAAE,WAAW,EAAE;KAAC,EACzB;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,WAAW,EAAE,mBAAmB,CAAC,CAAC,QAAQ,EAAE,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,SAAS,CAAC,CAAC;IAE7E,MAAM,EAAE,mBAAmB,CAAC,CAAC,UAAU,EAAE,SAAS,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IAE3E,OAAO,EAAE,mBAAmB,CAC1B;QAAC,GAAG,EAAE,UAAU,CAAC,oBAAoB;QAAE,SAAS,EAAE,SAAS;KAAC,EAC5D;QAAC,MAAM;KAAC,EACR,YAAY,CACb,CAAC;IAEF,YAAY,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEvE,SAAS,EAAE,mBAAmB,CAC5B;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,WAAW;KAAC,EACvC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,OAAO,EAAE,mBAAmB,CAC1B;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,WAAW;KAAC,EACvC;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,UAAU,EAAE,mBAAmB,CAC7B;QAAC,UAAU,EAAE,WAAW;QAAE,OAAO,EAAE,WAAW;QAAE,SAAS,EAAE,WAAW;KAAC,EACvE;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,QAAQ,EAAE,mBAAmB,CAAC,CAAC,OAAO,EAAE,WAAW,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IAEzE,kBAAkB,EAAE,mBAAmB,CACrC;QAAC,SAAS,EAAE,WAAW;KAAC,EACxB;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,cAAc,EAAE,mBAAmB,CACjC;QACE,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,WAAW;QAClB,QAAQ,EAAE,YAAY;QACtB,MAAM,EAAE,SAAS;QACjB,QAAQ,EAAE,WAAW;QACrB,IAAI,EAAE,SAAS,EAAE;QACjB,aAAa,EAAE,OAAO;QACtB,oBAAoB,EAAE,YAAY;QAClC,WAAW,EAAE,OAAO;KACrB,EACD;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IAEF,OAAO,EAAE,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAExE,sBAAsB,EAAE,mBAAmB,CACzC;QACE,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,WAAW;QACjB,QAAQ,EAAE,YAAY,EAAE;QACxB,IAAI,EAAE,YAAY,EAAE;QACpB,IAAI,EAAE,SAAS;KAChB,EACD;QAAC,MAAM;KAAC,EACR,YAAY,CACb,CAAC;IAEF,iBAAiB,EAAE,mBAAmB,CACpC;QACE,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,YAAY;QACrB,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE,SAAS;KAChB,EACD;QAAC,MAAM;KAAC,EACR,YAAY,CACb,CAAC;IAEF,gBAAgB,EAAE,mBAAmB,CACnC;QACE,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,YAAY;QACrB,IAAI,EAAE,SAAS;KAChB,EACD;QAAC,MAAM;KAAC,EACR,YAAY,CACb,CAAC;IAEF,KAAK,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEjD,OAAO,EAAE,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAExE,QAAQ,EAAE,mBAAmB,CAC3B;QACE,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,WAAW;QAClB,QAAQ,EAAE,YAAY;QACtB,MAAM,EAAE,SAAS;QACjB,QAAQ,EAAE,WAAW;QACrB,IAAI,EAAE,SAAS,EAAE;QACjB,aAAa,EAAE,OAAO;QACtB,oBAAoB,EAAE,YAAY;QAClC,WAAW,EAAE,OAAO;KACrB,EACD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,YAAY,EAAE,mBAAmB,CAC/B;QAAC,OAAO,EAAE,WAAW;KAAC,EACtB;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,aAAa,EAAE,mBAAmB,CAChC;QAAC,QAAQ,EAAE,WAAW,EAAE;KAAC,EACzB;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,KAAK,EAAE,mBAAmB,CACxB;QAAC,IAAI,EAAE,MAAM;QAAE,QAAQ,EAAE,YAAY;KAAC,EACtC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,cAAc,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IAE9D,iBAAiB,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IAEjE,YAAY,EAAE,mBAAmB,CAC/B;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,WAAW;KAAC,EACvC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,SAAS,EAAE,mBAAmB,CAC5B;QAAC,IAAI,EAAE,MAAM;QAAE,QAAQ,EAAE,YAAY;KAAC,EACtC;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IAEF,UAAU,EAAE,mBAAmB,CAC7B;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,WAAW;KAAC,EACvC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,YAAY,EAAE,mBAAmB,CAAC,CAAC,QAAQ,EAAE,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,SAAS,CAAC,CAAC;IAE9E,YAAY,EAAE,mBAAmB,CAC/B;QAAC,EAAE,EAAE,WAAW;QAAE,OAAO,EAAE,YAAY;KAAC,EACxC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,gBAAgB,EAAE,mBAAmB,CACnC;QAAC,aAAa,EAAE,WAAW;KAAC,EAC5B;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,iBAAiB,EAAE,mBAAmB,CACpC;QAAC,WAAW,EAAE,SAAS;KAAC,EACxB;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,iBAAiB,EAAE,mBAAmB,CACpC;QAAC,QAAQ,EAAE,WAAW;KAAC,EACvB;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,MAAM,EAAE,mBAAmB,CACzB;QAAC,GAAG,EAAE,UAAU,CAAC,oBAAoB;QAAE,SAAS,EAAE,SAAS;KAAC,EAC5D;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,WAAW,CACT,eAAe,EAAE,oBAAoB,GACpC,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC7C,WAAW,CACT,eAAe,EAAE,aAAa,GAC7B,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC7C,WAAW,CACT,eAAe,EAAE,MAAM,GACtB,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC7C,WAAW,CACT,eAAe,EAAE,SAAS,GACzB,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC7C,WAAW,CACT,eAAe,EAAE,WAAW,GAC3B,mBAAmB,CAAC,CAAC,OAAO,EAAE,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IACrE,WAAW,CACT,eAAe,EAAE,YAAY,GAC5B,mBAAmB,CAAC,CAAC,QAAQ,EAAE,WAAW,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IACxE,WAAW,CACT,eAAe,EAAE,aAAa,GAC7B,mBAAmB,CAAC,CAAC,QAAQ,EAAE,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,SAAS,CAAC,CAAC;IACnE,WAAW,CACT,eAAe,EAAE,QAAQ,GACxB,mBAAmB,CAAC,CAAC,UAAU,EAAE,SAAS,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IACtE,WAAW,CACT,eAAe,EAAE,SAAS,GACzB,mBAAmB,CACpB;QAAC,GAAG,EAAE,UAAU,CAAC,oBAAoB;QAAE,SAAS,EAAE,SAAS;KAAC,EAC5D;QAAC,MAAM;KAAC,EACR,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,cAAc,GAC9B,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC5D,WAAW,CACT,eAAe,EAAE,WAAW,GAC3B,mBAAmB,CACpB;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,WAAW;KAAC,EACvC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,SAAS,GACzB,mBAAmB,CACpB;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,WAAW;KAAC,EACvC;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,YAAY,GAC5B,mBAAmB,CACpB;QAAC,UAAU,EAAE,WAAW;QAAE,OAAO,EAAE,WAAW;QAAE,SAAS,EAAE,WAAW;KAAC,EACvE;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,UAAU,GAC1B,mBAAmB,CAAC,CAAC,OAAO,EAAE,WAAW,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IAClE,WAAW,CACT,eAAe,EAAE,oBAAoB,GACpC,mBAAmB,CAAC,CAAC,SAAS,EAAE,WAAW,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IACpE,WAAW,CACT,eAAe,EAAE,gBAAgB,GAChC,mBAAmB,CACpB;QACE,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,WAAW;QAClB,QAAQ,EAAE,YAAY;QACtB,MAAM,EAAE,SAAS;QACjB,QAAQ,EAAE,WAAW;QACrB,IAAI,EAAE,SAAS,EAAE;QACjB,aAAa,EAAE,OAAO;QACtB,oBAAoB,EAAE,YAAY;QAClC,WAAW,EAAE,OAAO;KACrB,EACD;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,SAAS,GACzB,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAClE,WAAW,CACT,eAAe,EAAE,wBAAwB,GACxC,mBAAmB,CACpB;QACE,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,WAAW;QACjB,QAAQ,EAAE,YAAY,EAAE;QACxB,IAAI,EAAE,YAAY,EAAE;QACpB,IAAI,EAAE,SAAS;KAChB,EACD;QAAC,MAAM;KAAC,EACR,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,mBAAmB,GACnC,mBAAmB,CACpB;QACE,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,YAAY;QACrB,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE,SAAS;KAChB,EACD;QAAC,MAAM;KAAC,EACR,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,kBAAkB,GAClC,mBAAmB,CACpB;QACE,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,YAAY;QACrB,IAAI,EAAE,SAAS;KAChB,EACD;QAAC,MAAM;KAAC,EACR,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,OAAO,GACvB,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC7C,WAAW,CACT,eAAe,EAAE,SAAS,GACzB,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAClE,WAAW,CACT,eAAe,EAAE,UAAU,GAC1B,mBAAmB,CACpB;QACE,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,WAAW;QAClB,QAAQ,EAAE,YAAY;QACtB,MAAM,EAAE,SAAS;QACjB,QAAQ,EAAE,WAAW;QACrB,IAAI,EAAE,SAAS,EAAE;QACjB,aAAa,EAAE,OAAO;QACtB,oBAAoB,EAAE,YAAY;QAClC,WAAW,EAAE,OAAO;KACrB,EACD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,cAAc,GAC9B,mBAAmB,CAAC,CAAC,OAAO,EAAE,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IACrE,WAAW,CACT,eAAe,EAAE,eAAe,GAC/B,mBAAmB,CAAC,CAAC,QAAQ,EAAE,WAAW,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IACxE,WAAW,CACT,eAAe,EAAE,OAAO,GACvB,mBAAmB,CACpB;QAAC,IAAI,EAAE,MAAM;QAAE,QAAQ,EAAE,YAAY;KAAC,EACtC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,gBAAgB,GAChC,mBAAmB,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IACjD,WAAW,CACT,eAAe,EAAE,mBAAmB,GACnC,mBAAmB,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IACjD,WAAW,CACT,eAAe,EAAE,cAAc,GAC9B,mBAAmB,CACpB;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,WAAW;KAAC,EACvC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,WAAW,GAC3B,mBAAmB,CACpB;QAAC,IAAI,EAAE,MAAM;QAAE,QAAQ,EAAE,YAAY;KAAC,EACtC;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,YAAY,GAC5B,mBAAmB,CACpB;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,WAAW;KAAC,EACvC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,cAAc,GAC9B,mBAAmB,CAAC,CAAC,QAAQ,EAAE,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,SAAS,CAAC,CAAC;IACnE,WAAW,CACT,eAAe,EAAE,cAAc,GAC9B,mBAAmB,CACpB;QAAC,EAAE,EAAE,WAAW;QAAE,OAAO,EAAE,YAAY;KAAC,EACxC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,kBAAkB,GAClC,mBAAmB,CAAC,CAAC,aAAa,EAAE,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IAC3E,WAAW,CACT,eAAe,EAAE,mBAAmB,GACnC,mBAAmB,CAAC,CAAC,WAAW,EAAE,SAAS,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IACpE,WAAW,CACT,eAAe,EAAE,mBAAmB,GACnC,mBAAmB,CAAC,CAAC,QAAQ,EAAE,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IACtE,WAAW,CACT,eAAe,EAAE,QAAQ,GACxB,mBAAmB,CACpB;QAAC,GAAG,EAAE,UAAU,CAAC,oBAAoB;QAAE,SAAS,EAAE,SAAS;KAAC,EAC5D;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,QAAQ,CACN,GAAG,EAAE,aAAa,GACjB,kBAAkB,CACnB,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,sBAAsB,GAC1B,kBAAkB,CACnB,yBAAyB,CAAC,UAAU,EACpC,yBAAyB,CAAC,WAAW,EACrC,yBAAyB,CAAC,YAAY,CACvC,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,QAAQ,GACZ,kBAAkB,CACnB,WAAW,CAAC,UAAU,EACtB,WAAW,CAAC,WAAW,EACvB,WAAW,CAAC,YAAY,CACzB,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,kBAAkB,GACtB,kBAAkB,CACnB,qBAAqB,CAAC,UAAU,EAChC,qBAAqB,CAAC,WAAW,EACjC,qBAAqB,CAAC,YAAY,CACnC,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,aAAa,GACjB,kBAAkB,CACnB,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,aAAa,GACjB,kBAAkB,CACnB,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;IAEF,OAAO,EAAE;QACP,oBAAoB,EAAE,kBAAkB,CACtC,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QACF,WAAW,EAAE,kBAAkB,CAC7B,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QAEF,uCAAuC,EAAE,kBAAkB,CACzD,yBAAyB,CAAC,UAAU,EACpC,yBAAyB,CAAC,WAAW,EACrC,yBAAyB,CAAC,YAAY,CACvC,CAAC;QACF,oBAAoB,EAAE,kBAAkB,CACtC,yBAAyB,CAAC,UAAU,EACpC,yBAAyB,CAAC,WAAW,EACrC,yBAAyB,CAAC,YAAY,CACvC,CAAC;QAEF,yBAAyB,EAAE,kBAAkB,CAC3C,WAAW,CAAC,UAAU,EACtB,WAAW,CAAC,WAAW,EACvB,WAAW,CAAC,YAAY,CACzB,CAAC;QACF,MAAM,EAAE,kBAAkB,CACxB,WAAW,CAAC,UAAU,EACtB,WAAW,CAAC,WAAW,EACvB,WAAW,CAAC,YAAY,CACzB,CAAC;QAEF,2CAA2C,EAAE,kBAAkB,CAC7D,qBAAqB,CAAC,UAAU,EAChC,qBAAqB,CAAC,WAAW,EACjC,qBAAqB,CAAC,YAAY,CACnC,CAAC;QACF,gBAAgB,EAAE,kBAAkB,CAClC,qBAAqB,CAAC,UAAU,EAChC,qBAAqB,CAAC,WAAW,EACjC,qBAAqB,CAAC,YAAY,CACnC,CAAC;QAEF,sCAAsC,EAAE,kBAAkB,CACxD,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QACF,WAAW,EAAE,kBAAkB,CAC7B,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QAEF,sCAAsC,EAAE,kBAAkB,CACxD,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QACF,WAAW,EAAE,kBAAkB,CAC7B,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;KACH,CAAC;CACH"} \ No newline at end of file diff --git a/dist/types/contracts/custody/ENSCustody.js b/dist/types/contracts/custody/ENSCustody.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/custody/ENSCustody.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/custody/IENSCustody.d.ts b/dist/types/contracts/custody/IENSCustody.d.ts new file mode 100644 index 00000000..790654b9 --- /dev/null +++ b/dist/types/contracts/custody/IENSCustody.d.ts @@ -0,0 +1,219 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; +export interface IENSCustodyInterface extends Interface { + getFunction(nameOrSignature: "commit" | "makeCommitment" | "onERC1155BatchReceived" | "onERC1155Received" | "ownerOf" | "register" | "renew" | "rentPrice" | "safeTransfer" | "supportsInterface"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Parked"): EventFragment; + encodeFunctionData(functionFragment: "commit", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "makeCommitment", values: [ + string, + AddressLike, + BigNumberish, + BytesLike, + AddressLike, + BytesLike[], + boolean, + BigNumberish, + boolean + ]): string; + encodeFunctionData(functionFragment: "onERC1155BatchReceived", values: [ + AddressLike, + AddressLike, + BigNumberish[], + BigNumberish[], + BytesLike + ]): string; + encodeFunctionData(functionFragment: "onERC1155Received", values: [AddressLike, AddressLike, BigNumberish, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "register", values: [ + string, + AddressLike, + BigNumberish, + BytesLike, + AddressLike, + BytesLike[], + boolean, + BigNumberish, + boolean + ]): string; + encodeFunctionData(functionFragment: "renew", values: [string, BigNumberish]): string; + encodeFunctionData(functionFragment: "rentPrice", values: [string, BigNumberish]): string; + encodeFunctionData(functionFragment: "safeTransfer", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + decodeFunctionResult(functionFragment: "commit", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "makeCommitment", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "onERC1155BatchReceived", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "onERC1155Received", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "register", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renew", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "rentPrice", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransfer", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; +} +export declare namespace ParkedEvent { + type InputTuple = [tokenId: BigNumberish, owner: AddressLike]; + type OutputTuple = [tokenId: bigint, owner: string]; + interface OutputObject { + tokenId: bigint; + owner: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface IENSCustody extends BaseContract { + connect(runner?: ContractRunner | null): IENSCustody; + waitForDeployment(): Promise; + interface: IENSCustodyInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + commit: TypedContractMethod<[commitment: BytesLike], [void], "nonpayable">; + makeCommitment: TypedContractMethod<[ + name: string, + owner: AddressLike, + duration: BigNumberish, + secret: BytesLike, + resolver: AddressLike, + data: BytesLike[], + reverseRecord: boolean, + ownerControlledFuses: BigNumberish, + selfCustody: boolean + ], [ + string + ], "nonpayable">; + onERC1155BatchReceived: TypedContractMethod<[ + operator: AddressLike, + from: AddressLike, + ids: BigNumberish[], + values: BigNumberish[], + data: BytesLike + ], [ + string + ], "nonpayable">; + onERC1155Received: TypedContractMethod<[ + operator: AddressLike, + from: AddressLike, + id: BigNumberish, + value: BigNumberish, + data: BytesLike + ], [ + string + ], "nonpayable">; + ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "nonpayable">; + register: TypedContractMethod<[ + name: string, + owner: AddressLike, + duration: BigNumberish, + secret: BytesLike, + resolver: AddressLike, + data: BytesLike[], + reverseRecord: boolean, + ownerControlledFuses: BigNumberish, + selfCustody: boolean + ], [ + void + ], "nonpayable">; + renew: TypedContractMethod<[ + name: string, + duration: BigNumberish + ], [ + void + ], "nonpayable">; + rentPrice: TypedContractMethod<[ + name: string, + duration: BigNumberish + ], [ + bigint + ], "view">; + safeTransfer: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "commit"): TypedContractMethod<[commitment: BytesLike], [void], "nonpayable">; + getFunction(nameOrSignature: "makeCommitment"): TypedContractMethod<[ + name: string, + owner: AddressLike, + duration: BigNumberish, + secret: BytesLike, + resolver: AddressLike, + data: BytesLike[], + reverseRecord: boolean, + ownerControlledFuses: BigNumberish, + selfCustody: boolean + ], [ + string + ], "nonpayable">; + getFunction(nameOrSignature: "onERC1155BatchReceived"): TypedContractMethod<[ + operator: AddressLike, + from: AddressLike, + ids: BigNumberish[], + values: BigNumberish[], + data: BytesLike + ], [ + string + ], "nonpayable">; + getFunction(nameOrSignature: "onERC1155Received"): TypedContractMethod<[ + operator: AddressLike, + from: AddressLike, + id: BigNumberish, + value: BigNumberish, + data: BytesLike + ], [ + string + ], "nonpayable">; + getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "nonpayable">; + getFunction(nameOrSignature: "register"): TypedContractMethod<[ + name: string, + owner: AddressLike, + duration: BigNumberish, + secret: BytesLike, + resolver: AddressLike, + data: BytesLike[], + reverseRecord: boolean, + ownerControlledFuses: BigNumberish, + selfCustody: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "renew"): TypedContractMethod<[ + name: string, + duration: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "rentPrice"): TypedContractMethod<[ + name: string, + duration: BigNumberish + ], [ + bigint + ], "view">; + getFunction(nameOrSignature: "safeTransfer"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + getEvent(key: "Parked"): TypedContractEvent; + filters: { + "Parked(uint256,address)": TypedContractEvent; + Parked: TypedContractEvent; + }; +} +//# sourceMappingURL=IENSCustody.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/custody/IENSCustody.d.ts.map b/dist/types/contracts/custody/IENSCustody.d.ts.map new file mode 100644 index 00000000..bdae7b82 --- /dev/null +++ b/dist/types/contracts/custody/IENSCustody.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IENSCustody.d.ts","sourceRoot":"","sources":["../../../../types/contracts/custody/IENSCustody.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/custody/IENSCustody.js b/dist/types/contracts/custody/IENSCustody.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/custody/IENSCustody.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/custody/ZilliqaRecover.d.ts b/dist/types/contracts/custody/ZilliqaRecover.d.ts new file mode 100644 index 00000000..79df0bc2 --- /dev/null +++ b/dist/types/contracts/custody/ZilliqaRecover.d.ts @@ -0,0 +1,307 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; +export declare namespace IForwarder { + type ForwardRequestStruct = { + from: AddressLike; + nonce: BigNumberish; + tokenId: BigNumberish; + data: BytesLike; + }; + type ForwardRequestStructOutput = [ + from: string, + nonce: bigint, + tokenId: bigint, + data: string + ] & { + from: string; + nonce: bigint; + tokenId: bigint; + data: string; + }; +} +export declare namespace ZilliqaRecover { + type MintingTokenStruct = { + zilOwner: AddressLike; + label: string; + }; + type MintingTokenStructOutput = [zilOwner: string, label: string] & { + zilOwner: string; + label: string; + }; +} +export interface ZilliqaRecoverInterface extends Interface { + getFunction(nameOrSignature: "ZIL_NODE" | "claim" | "claimAll" | "ethAddress" | "execute" | "initialize" | "isOwnedBy" | "isTrustedForwarder" | "mint" | "mintAll" | "mintingManager" | "nonceOf" | "onERC721Received" | "registry" | "verify" | "zilAddress" | "znsOwnerOf"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Initialized" | "ZnsTokenClaimed" | "ZnsTokenMinted"): EventFragment; + encodeFunctionData(functionFragment: "ZIL_NODE", values?: undefined): string; + encodeFunctionData(functionFragment: "claim", values: [BigNumberish, BytesLike, BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "claimAll", values: [BigNumberish[], BytesLike, BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "ethAddress", values: [BytesLike, BytesLike]): string; + encodeFunctionData(functionFragment: "execute", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; + encodeFunctionData(functionFragment: "initialize", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "isOwnedBy", values: [AddressLike, BigNumberish[]]): string; + encodeFunctionData(functionFragment: "isTrustedForwarder", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "mint", values: [string, AddressLike]): string; + encodeFunctionData(functionFragment: "mintAll", values: [ZilliqaRecover.MintingTokenStruct[]]): string; + encodeFunctionData(functionFragment: "mintingManager", values?: undefined): string; + encodeFunctionData(functionFragment: "nonceOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "onERC721Received", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "registry", values?: undefined): string; + encodeFunctionData(functionFragment: "verify", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; + encodeFunctionData(functionFragment: "zilAddress", values: [BytesLike, BytesLike]): string; + encodeFunctionData(functionFragment: "znsOwnerOf", values: [BigNumberish]): string; + decodeFunctionResult(functionFragment: "ZIL_NODE", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "claim", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "claimAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ethAddress", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isOwnedBy", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isTrustedForwarder", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "mint", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "mintAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "mintingManager", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "nonceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "onERC721Received", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "registry", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "verify", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "zilAddress", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "znsOwnerOf", data: BytesLike): Result; +} +export declare namespace InitializedEvent { + type InputTuple = [version: BigNumberish]; + type OutputTuple = [version: bigint]; + interface OutputObject { + version: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ZnsTokenClaimedEvent { + type InputTuple = [ + tokenId: BigNumberish, + oldAddress: AddressLike, + newAddress: AddressLike + ]; + type OutputTuple = [ + tokenId: bigint, + oldAddress: string, + newAddress: string + ]; + interface OutputObject { + tokenId: bigint; + oldAddress: string; + newAddress: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ZnsTokenMintedEvent { + type InputTuple = [ + tokenId: BigNumberish, + zilAddress: AddressLike, + label: string + ]; + type OutputTuple = [ + tokenId: bigint, + zilAddress: string, + label: string + ]; + interface OutputObject { + tokenId: bigint; + zilAddress: string; + label: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface ZilliqaRecover extends BaseContract { + connect(runner?: ContractRunner | null): ZilliqaRecover; + waitForDeployment(): Promise; + interface: ZilliqaRecoverInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + ZIL_NODE: TypedContractMethod<[], [bigint], "view">; + claim: TypedContractMethod<[ + tokenId: BigNumberish, + publicKeyX: BytesLike, + publicKeyY: BytesLike, + newOwnerAddress: AddressLike + ], [ + void + ], "nonpayable">; + claimAll: TypedContractMethod<[ + tokenIds: BigNumberish[], + publicKeyX: BytesLike, + publicKeyY: BytesLike, + newOwnerAddress: AddressLike + ], [ + void + ], "nonpayable">; + ethAddress: TypedContractMethod<[ + publicKeyX: BytesLike, + publicKeyY: BytesLike + ], [ + string + ], "view">; + execute: TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + string + ], "nonpayable">; + initialize: TypedContractMethod<[ + registry_: AddressLike, + mintingManager_: AddressLike + ], [ + void + ], "nonpayable">; + isOwnedBy: TypedContractMethod<[ + _zilAddress: AddressLike, + tokenIds: BigNumberish[] + ], [ + boolean + ], "view">; + isTrustedForwarder: TypedContractMethod<[ + forwarder: AddressLike + ], [ + boolean + ], "view">; + mint: TypedContractMethod<[ + label: string, + zilOwner: AddressLike + ], [ + bigint + ], "nonpayable">; + mintAll: TypedContractMethod<[ + tokens: ZilliqaRecover.MintingTokenStruct[] + ], [ + void + ], "nonpayable">; + mintingManager: TypedContractMethod<[], [string], "view">; + nonceOf: TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; + onERC721Received: TypedContractMethod<[ + arg0: AddressLike, + arg1: AddressLike, + tokenId: BigNumberish, + arg3: BytesLike + ], [ + string + ], "view">; + registry: TypedContractMethod<[], [string], "view">; + verify: TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + boolean + ], "view">; + zilAddress: TypedContractMethod<[ + publicKeyX: BytesLike, + publicKeyY: BytesLike + ], [ + string + ], "view">; + znsOwnerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "ZIL_NODE"): TypedContractMethod<[], [bigint], "view">; + getFunction(nameOrSignature: "claim"): TypedContractMethod<[ + tokenId: BigNumberish, + publicKeyX: BytesLike, + publicKeyY: BytesLike, + newOwnerAddress: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "claimAll"): TypedContractMethod<[ + tokenIds: BigNumberish[], + publicKeyX: BytesLike, + publicKeyY: BytesLike, + newOwnerAddress: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "ethAddress"): TypedContractMethod<[ + publicKeyX: BytesLike, + publicKeyY: BytesLike + ], [ + string + ], "view">; + getFunction(nameOrSignature: "execute"): TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + string + ], "nonpayable">; + getFunction(nameOrSignature: "initialize"): TypedContractMethod<[ + registry_: AddressLike, + mintingManager_: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "isOwnedBy"): TypedContractMethod<[ + _zilAddress: AddressLike, + tokenIds: BigNumberish[] + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "isTrustedForwarder"): TypedContractMethod<[forwarder: AddressLike], [boolean], "view">; + getFunction(nameOrSignature: "mint"): TypedContractMethod<[ + label: string, + zilOwner: AddressLike + ], [ + bigint + ], "nonpayable">; + getFunction(nameOrSignature: "mintAll"): TypedContractMethod<[ + tokens: ZilliqaRecover.MintingTokenStruct[] + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "mintingManager"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "nonceOf"): TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; + getFunction(nameOrSignature: "onERC721Received"): TypedContractMethod<[ + arg0: AddressLike, + arg1: AddressLike, + tokenId: BigNumberish, + arg3: BytesLike + ], [ + string + ], "view">; + getFunction(nameOrSignature: "registry"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "verify"): TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "zilAddress"): TypedContractMethod<[ + publicKeyX: BytesLike, + publicKeyY: BytesLike + ], [ + string + ], "view">; + getFunction(nameOrSignature: "znsOwnerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getEvent(key: "Initialized"): TypedContractEvent; + getEvent(key: "ZnsTokenClaimed"): TypedContractEvent; + getEvent(key: "ZnsTokenMinted"): TypedContractEvent; + filters: { + "Initialized(uint8)": TypedContractEvent; + Initialized: TypedContractEvent; + "ZnsTokenClaimed(uint256,address,address)": TypedContractEvent; + ZnsTokenClaimed: TypedContractEvent; + "ZnsTokenMinted(uint256,address,string)": TypedContractEvent; + ZnsTokenMinted: TypedContractEvent; + }; +} +//# sourceMappingURL=ZilliqaRecover.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/custody/ZilliqaRecover.d.ts.map b/dist/types/contracts/custody/ZilliqaRecover.d.ts.map new file mode 100644 index 00000000..35ac5dd8 --- /dev/null +++ b/dist/types/contracts/custody/ZilliqaRecover.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ZilliqaRecover.d.ts","sourceRoot":"","sources":["../../../../types/contracts/custody/ZilliqaRecover.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/custody/ZilliqaRecover.js b/dist/types/contracts/custody/ZilliqaRecover.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/custody/ZilliqaRecover.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/custody/index.d.ts b/dist/types/contracts/custody/index.d.ts new file mode 100644 index 00000000..551ba93e --- /dev/null +++ b/dist/types/contracts/custody/index.d.ts @@ -0,0 +1,4 @@ +export type { ENSCustody } from "./ENSCustody"; +export type { IENSCustody } from "./IENSCustody"; +export type { ZilliqaRecover } from "./ZilliqaRecover"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/custody/index.d.ts.map b/dist/types/contracts/custody/index.d.ts.map new file mode 100644 index 00000000..5fd93641 --- /dev/null +++ b/dist/types/contracts/custody/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../types/contracts/custody/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC"} \ No newline at end of file diff --git a/dist/types/contracts/custody/index.js b/dist/types/contracts/custody/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/custody/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/history/IUNSRegistryV07.d.ts b/dist/types/contracts/history/IUNSRegistryV07.d.ts new file mode 100644 index 00000000..abbe43c0 --- /dev/null +++ b/dist/types/contracts/history/IUNSRegistryV07.d.ts @@ -0,0 +1,733 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; +export interface IUNSRegistryV07Interface extends Interface { + getFunction(nameOrSignature: "addProxyReader" | "approve" | "balanceOf" | "burn" | "deposit" | "depositToPolygon" | "exists" | "get" | "getApproved" | "getByHash" | "getMany" | "getManyByHash" | "isApprovedForAll" | "isApprovedOrOwner" | "mint(address,uint256)" | "mint(address,uint256,bytes)" | "mintTLD" | "mintWithRecords" | "name" | "namehash" | "onERC721Received" | "ownerOf" | "reconfigure" | "removeReverse" | "reset" | "resolverOf" | "reverseNameOf" | "reverseOf" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "set" | "setApprovalForAll" | "setByHash" | "setMany" | "setManyByHash" | "setOwner" | "setReverse" | "setTokenURIPrefix" | "supportsInterface" | "symbol" | "tokenURI" | "transferFrom" | "unlockWithRecords" | "withdrawFromPolygon"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "AdminChanged" | "Approval" | "ApprovalForAll" | "NewKey" | "NewURI" | "NewURIPrefix" | "RemoveReverse" | "ResetRecords" | "Set" | "SetReverse" | "Transfer" | "Upgraded"): EventFragment; + encodeFunctionData(functionFragment: "addProxyReader", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "burn", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "deposit", values: [AddressLike, BytesLike]): string; + encodeFunctionData(functionFragment: "depositToPolygon", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "exists", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "get", values: [string, BigNumberish]): string; + encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "getByHash", values: [BigNumberish, BigNumberish]): string; + encodeFunctionData(functionFragment: "getMany", values: [string[], BigNumberish]): string; + encodeFunctionData(functionFragment: "getManyByHash", values: [BigNumberish[], BigNumberish]): string; + encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "isApprovedOrOwner", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "mint(address,uint256)", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "mint(address,uint256,bytes)", values: [AddressLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "mintTLD", values: [BigNumberish, string]): string; + encodeFunctionData(functionFragment: "mintWithRecords", values: [AddressLike, string[], string[], string[], boolean]): string; + encodeFunctionData(functionFragment: "name", values?: undefined): string; + encodeFunctionData(functionFragment: "namehash", values: [string[]]): string; + encodeFunctionData(functionFragment: "onERC721Received", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "reconfigure", values: [string[], string[], BigNumberish]): string; + encodeFunctionData(functionFragment: "removeReverse", values?: undefined): string; + encodeFunctionData(functionFragment: "reset", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "resolverOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "reverseNameOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "reverseOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "set", values: [string, string, BigNumberish]): string; + encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; + encodeFunctionData(functionFragment: "setByHash", values: [BigNumberish, string, BigNumberish]): string; + encodeFunctionData(functionFragment: "setMany", values: [string[], string[], BigNumberish]): string; + encodeFunctionData(functionFragment: "setManyByHash", values: [BigNumberish[], string[], BigNumberish]): string; + encodeFunctionData(functionFragment: "setOwner", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "setReverse", values: [string[]]): string; + encodeFunctionData(functionFragment: "setTokenURIPrefix", values: [string]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "symbol", values?: undefined): string; + encodeFunctionData(functionFragment: "tokenURI", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "unlockWithRecords", values: [AddressLike, string[], string[], string[], boolean]): string; + encodeFunctionData(functionFragment: "withdrawFromPolygon", values: [BytesLike, BigNumberish, string[], string[]]): string; + decodeFunctionResult(functionFragment: "addProxyReader", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "burn", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "deposit", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "depositToPolygon", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "exists", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "get", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getByHash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getMany", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getManyByHash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedOrOwner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "mint(address,uint256)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "mint(address,uint256,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "mintTLD", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "mintWithRecords", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "namehash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "onERC721Received", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "reconfigure", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "removeReverse", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "reset", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "resolverOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "reverseNameOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "reverseOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "set", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setByHash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setMany", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setManyByHash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setOwner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setReverse", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setTokenURIPrefix", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "tokenURI", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "unlockWithRecords", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "withdrawFromPolygon", data: BytesLike): Result; +} +export declare namespace AdminChangedEvent { + type InputTuple = [previousAdmin: AddressLike, newAdmin: AddressLike]; + type OutputTuple = [previousAdmin: string, newAdmin: string]; + interface OutputObject { + previousAdmin: string; + newAdmin: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ApprovalEvent { + type InputTuple = [ + owner: AddressLike, + approved: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [owner: string, approved: string, tokenId: bigint]; + interface OutputObject { + owner: string; + approved: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ApprovalForAllEvent { + type InputTuple = [ + owner: AddressLike, + operator: AddressLike, + approved: boolean + ]; + type OutputTuple = [ + owner: string, + operator: string, + approved: boolean + ]; + interface OutputObject { + owner: string; + operator: string; + approved: boolean; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NewKeyEvent { + type InputTuple = [ + tokenId: BigNumberish, + keyIndex: string, + key: string + ]; + type OutputTuple = [tokenId: bigint, keyIndex: string, key: string]; + interface OutputObject { + tokenId: bigint; + keyIndex: string; + key: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NewURIEvent { + type InputTuple = [tokenId: BigNumberish, uri: string]; + type OutputTuple = [tokenId: bigint, uri: string]; + interface OutputObject { + tokenId: bigint; + uri: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NewURIPrefixEvent { + type InputTuple = [prefix: string]; + type OutputTuple = [prefix: string]; + interface OutputObject { + prefix: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RemoveReverseEvent { + type InputTuple = [addr: AddressLike]; + type OutputTuple = [addr: string]; + interface OutputObject { + addr: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ResetRecordsEvent { + type InputTuple = [tokenId: BigNumberish]; + type OutputTuple = [tokenId: bigint]; + interface OutputObject { + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace SetEvent { + type InputTuple = [ + tokenId: BigNumberish, + keyIndex: string, + valueIndex: string, + key: string, + value: string + ]; + type OutputTuple = [ + tokenId: bigint, + keyIndex: string, + valueIndex: string, + key: string, + value: string + ]; + interface OutputObject { + tokenId: bigint; + keyIndex: string; + valueIndex: string; + key: string; + value: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace SetReverseEvent { + type InputTuple = [addr: AddressLike, tokenId: BigNumberish]; + type OutputTuple = [addr: string, tokenId: bigint]; + interface OutputObject { + addr: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferEvent { + type InputTuple = [ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [from: string, to: string, tokenId: bigint]; + interface OutputObject { + from: string; + to: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace UpgradedEvent { + type InputTuple = [implementation: AddressLike]; + type OutputTuple = [implementation: string]; + interface OutputObject { + implementation: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface IUNSRegistryV07 extends BaseContract { + connect(runner?: ContractRunner | null): IUNSRegistryV07; + waitForDeployment(): Promise; + interface: IUNSRegistryV07Interface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + addProxyReader: TypedContractMethod<[ + addr: AddressLike + ], [ + void + ], "nonpayable">; + approve: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; + burn: TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; + deposit: TypedContractMethod<[ + user: AddressLike, + depositData: BytesLike + ], [ + void + ], "nonpayable">; + depositToPolygon: TypedContractMethod<[ + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + exists: TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; + get: TypedContractMethod<[ + key: string, + tokenId: BigNumberish + ], [ + string + ], "view">; + getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getByHash: TypedContractMethod<[ + keyHash: BigNumberish, + tokenId: BigNumberish + ], [ + [string, string] & { + key: string; + value: string; + } + ], "view">; + getMany: TypedContractMethod<[ + keys: string[], + tokenId: BigNumberish + ], [ + string[] + ], "view">; + getManyByHash: TypedContractMethod<[ + keyHashes: BigNumberish[], + tokenId: BigNumberish + ], [ + [string[], string[]] & { + keys: string[]; + values: string[]; + } + ], "view">; + isApprovedForAll: TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + isApprovedOrOwner: TypedContractMethod<[ + spender: AddressLike, + tokenId: BigNumberish + ], [ + boolean + ], "view">; + "mint(address,uint256)": TypedContractMethod<[ + user: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + "mint(address,uint256,bytes)": TypedContractMethod<[ + user: AddressLike, + tokenId: BigNumberish, + metaData: BytesLike + ], [ + void + ], "nonpayable">; + mintTLD: TypedContractMethod<[ + tokenId: BigNumberish, + uri: string + ], [ + void + ], "nonpayable">; + mintWithRecords: TypedContractMethod<[ + to: AddressLike, + labels: string[], + keys: string[], + values: string[], + withReverse: boolean + ], [ + void + ], "nonpayable">; + name: TypedContractMethod<[], [string], "view">; + namehash: TypedContractMethod<[labels: string[]], [bigint], "view">; + onERC721Received: TypedContractMethod<[ + operator: AddressLike, + from: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + string + ], "nonpayable">; + ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + reconfigure: TypedContractMethod<[ + keys: string[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + removeReverse: TypedContractMethod<[], [void], "nonpayable">; + reset: TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; + resolverOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + reverseNameOf: TypedContractMethod<[addr: AddressLike], [string], "view">; + reverseOf: TypedContractMethod<[addr: AddressLike], [bigint], "view">; + "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + set: TypedContractMethod<[ + key: string, + value: string, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + setApprovalForAll: TypedContractMethod<[ + operator: AddressLike, + _approved: boolean + ], [ + void + ], "nonpayable">; + setByHash: TypedContractMethod<[ + keyHash: BigNumberish, + value: string, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + setMany: TypedContractMethod<[ + keys: string[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + setManyByHash: TypedContractMethod<[ + keyHashes: BigNumberish[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + setOwner: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + setReverse: TypedContractMethod<[labels: string[]], [void], "nonpayable">; + setTokenURIPrefix: TypedContractMethod<[ + prefix: string + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + symbol: TypedContractMethod<[], [string], "view">; + tokenURI: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + transferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + unlockWithRecords: TypedContractMethod<[ + to: AddressLike, + labels: string[], + keys: string[], + values: string[], + withReverse: boolean + ], [ + void + ], "nonpayable">; + withdrawFromPolygon: TypedContractMethod<[ + inputData: BytesLike, + tokenId: BigNumberish, + keys: string[], + values: string[] + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "addProxyReader"): TypedContractMethod<[addr: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "approve"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; + getFunction(nameOrSignature: "burn"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; + getFunction(nameOrSignature: "deposit"): TypedContractMethod<[ + user: AddressLike, + depositData: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "depositToPolygon"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; + getFunction(nameOrSignature: "exists"): TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; + getFunction(nameOrSignature: "get"): TypedContractMethod<[ + key: string, + tokenId: BigNumberish + ], [ + string + ], "view">; + getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "getByHash"): TypedContractMethod<[ + keyHash: BigNumberish, + tokenId: BigNumberish + ], [ + [string, string] & { + key: string; + value: string; + } + ], "view">; + getFunction(nameOrSignature: "getMany"): TypedContractMethod<[ + keys: string[], + tokenId: BigNumberish + ], [ + string[] + ], "view">; + getFunction(nameOrSignature: "getManyByHash"): TypedContractMethod<[ + keyHashes: BigNumberish[], + tokenId: BigNumberish + ], [ + [string[], string[]] & { + keys: string[]; + values: string[]; + } + ], "view">; + getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "isApprovedOrOwner"): TypedContractMethod<[ + spender: AddressLike, + tokenId: BigNumberish + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "mint(address,uint256)"): TypedContractMethod<[ + user: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "mint(address,uint256,bytes)"): TypedContractMethod<[ + user: AddressLike, + tokenId: BigNumberish, + metaData: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "mintTLD"): TypedContractMethod<[ + tokenId: BigNumberish, + uri: string + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "mintWithRecords"): TypedContractMethod<[ + to: AddressLike, + labels: string[], + keys: string[], + values: string[], + withReverse: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "namehash"): TypedContractMethod<[labels: string[]], [bigint], "view">; + getFunction(nameOrSignature: "onERC721Received"): TypedContractMethod<[ + operator: AddressLike, + from: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + string + ], "nonpayable">; + getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "reconfigure"): TypedContractMethod<[ + keys: string[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "removeReverse"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "reset"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; + getFunction(nameOrSignature: "resolverOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "reverseNameOf"): TypedContractMethod<[addr: AddressLike], [string], "view">; + getFunction(nameOrSignature: "reverseOf"): TypedContractMethod<[addr: AddressLike], [bigint], "view">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "set"): TypedContractMethod<[ + key: string, + value: string, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ + operator: AddressLike, + _approved: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setByHash"): TypedContractMethod<[ + keyHash: BigNumberish, + value: string, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setMany"): TypedContractMethod<[ + keys: string[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setManyByHash"): TypedContractMethod<[ + keyHashes: BigNumberish[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setOwner"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setReverse"): TypedContractMethod<[labels: string[]], [void], "nonpayable">; + getFunction(nameOrSignature: "setTokenURIPrefix"): TypedContractMethod<[prefix: string], [void], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "symbol"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "tokenURI"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "unlockWithRecords"): TypedContractMethod<[ + to: AddressLike, + labels: string[], + keys: string[], + values: string[], + withReverse: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "withdrawFromPolygon"): TypedContractMethod<[ + inputData: BytesLike, + tokenId: BigNumberish, + keys: string[], + values: string[] + ], [ + void + ], "nonpayable">; + getEvent(key: "AdminChanged"): TypedContractEvent; + getEvent(key: "Approval"): TypedContractEvent; + getEvent(key: "ApprovalForAll"): TypedContractEvent; + getEvent(key: "NewKey"): TypedContractEvent; + getEvent(key: "NewURI"): TypedContractEvent; + getEvent(key: "NewURIPrefix"): TypedContractEvent; + getEvent(key: "RemoveReverse"): TypedContractEvent; + getEvent(key: "ResetRecords"): TypedContractEvent; + getEvent(key: "Set"): TypedContractEvent; + getEvent(key: "SetReverse"): TypedContractEvent; + getEvent(key: "Transfer"): TypedContractEvent; + getEvent(key: "Upgraded"): TypedContractEvent; + filters: { + "AdminChanged(address,address)": TypedContractEvent; + AdminChanged: TypedContractEvent; + "Approval(address,address,uint256)": TypedContractEvent; + Approval: TypedContractEvent; + "ApprovalForAll(address,address,bool)": TypedContractEvent; + ApprovalForAll: TypedContractEvent; + "NewKey(uint256,string,string)": TypedContractEvent; + NewKey: TypedContractEvent; + "NewURI(uint256,string)": TypedContractEvent; + NewURI: TypedContractEvent; + "NewURIPrefix(string)": TypedContractEvent; + NewURIPrefix: TypedContractEvent; + "RemoveReverse(address)": TypedContractEvent; + RemoveReverse: TypedContractEvent; + "ResetRecords(uint256)": TypedContractEvent; + ResetRecords: TypedContractEvent; + "Set(uint256,string,string,string,string)": TypedContractEvent; + Set: TypedContractEvent; + "SetReverse(address,uint256)": TypedContractEvent; + SetReverse: TypedContractEvent; + "Transfer(address,address,uint256)": TypedContractEvent; + Transfer: TypedContractEvent; + "Upgraded(address)": TypedContractEvent; + Upgraded: TypedContractEvent; + }; +} +//# sourceMappingURL=IUNSRegistryV07.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/history/IUNSRegistryV07.d.ts.map b/dist/types/contracts/history/IUNSRegistryV07.d.ts.map new file mode 100644 index 00000000..7a4fbff6 --- /dev/null +++ b/dist/types/contracts/history/IUNSRegistryV07.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IUNSRegistryV07.d.ts","sourceRoot":"","sources":["../../../../types/contracts/history/IUNSRegistryV07.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/history/IUNSRegistryV07.js b/dist/types/contracts/history/IUNSRegistryV07.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/history/IUNSRegistryV07.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/history/ProxyReaderV04.d.ts b/dist/types/contracts/history/ProxyReaderV04.d.ts new file mode 100644 index 00000000..8c2399bf --- /dev/null +++ b/dist/types/contracts/history/ProxyReaderV04.d.ts @@ -0,0 +1,344 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; +export interface ProxyReaderV04Interface extends Interface { + getFunction(nameOrSignature: "NAME" | "VERSION" | "balanceOf" | "exists" | "get" | "getApproved" | "getByHash" | "getData" | "getDataByHash" | "getDataByHashForMany" | "getDataForMany" | "getMany" | "getManyByHash" | "initialize" | "isApprovedForAll" | "isApprovedOrOwner" | "multicall" | "namehash" | "ownerOf" | "ownerOfForMany" | "registryOf" | "resolverOf" | "reverseNameOf" | "reverseOf" | "supportsInterface" | "tokenURI"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Initialized"): EventFragment; + encodeFunctionData(functionFragment: "NAME", values?: undefined): string; + encodeFunctionData(functionFragment: "VERSION", values?: undefined): string; + encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "exists", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "get", values: [string, BigNumberish]): string; + encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "getByHash", values: [BigNumberish, BigNumberish]): string; + encodeFunctionData(functionFragment: "getData", values: [string[], BigNumberish]): string; + encodeFunctionData(functionFragment: "getDataByHash", values: [BigNumberish[], BigNumberish]): string; + encodeFunctionData(functionFragment: "getDataByHashForMany", values: [BigNumberish[], BigNumberish[]]): string; + encodeFunctionData(functionFragment: "getDataForMany", values: [string[], BigNumberish[]]): string; + encodeFunctionData(functionFragment: "getMany", values: [string[], BigNumberish]): string; + encodeFunctionData(functionFragment: "getManyByHash", values: [BigNumberish[], BigNumberish]): string; + encodeFunctionData(functionFragment: "initialize", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "isApprovedOrOwner", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "multicall", values: [BytesLike[]]): string; + encodeFunctionData(functionFragment: "namehash", values: [string[]]): string; + encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "ownerOfForMany", values: [BigNumberish[]]): string; + encodeFunctionData(functionFragment: "registryOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "resolverOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "reverseNameOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "reverseOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "tokenURI", values: [BigNumberish]): string; + decodeFunctionResult(functionFragment: "NAME", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "VERSION", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "exists", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "get", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getByHash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getData", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getDataByHash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getDataByHashForMany", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getDataForMany", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getMany", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getManyByHash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedOrOwner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "multicall", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "namehash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ownerOfForMany", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "registryOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "resolverOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "reverseNameOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "reverseOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "tokenURI", data: BytesLike): Result; +} +export declare namespace InitializedEvent { + type InputTuple = [version: BigNumberish]; + type OutputTuple = [version: bigint]; + interface OutputObject { + version: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface ProxyReaderV04 extends BaseContract { + connect(runner?: ContractRunner | null): ProxyReaderV04; + waitForDeployment(): Promise; + interface: ProxyReaderV04Interface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + NAME: TypedContractMethod<[], [string], "view">; + VERSION: TypedContractMethod<[], [string], "view">; + balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; + exists: TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; + get: TypedContractMethod<[ + key: string, + tokenId: BigNumberish + ], [ + string + ], "view">; + getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getByHash: TypedContractMethod<[ + keyHash: BigNumberish, + tokenId: BigNumberish + ], [ + [string, string] & { + key: string; + value: string; + } + ], "view">; + getData: TypedContractMethod<[ + keys: string[], + tokenId: BigNumberish + ], [ + [ + string, + string, + string[] + ] & { + resolver: string; + owner: string; + values: string[]; + } + ], "view">; + getDataByHash: TypedContractMethod<[ + keyHashes: BigNumberish[], + tokenId: BigNumberish + ], [ + [ + string, + string, + string[], + string[] + ] & { + resolver: string; + owner: string; + keys: string[]; + values: string[]; + } + ], "view">; + getDataByHashForMany: TypedContractMethod<[ + keyHashes: BigNumberish[], + tokenIds: BigNumberish[] + ], [ + [ + string[], + string[], + string[][], + string[][] + ] & { + resolvers: string[]; + owners: string[]; + keys: string[][]; + values: string[][]; + } + ], "view">; + getDataForMany: TypedContractMethod<[ + keys: string[], + tokenIds: BigNumberish[] + ], [ + [ + string[], + string[], + string[][] + ] & { + resolvers: string[]; + owners: string[]; + values: string[][]; + } + ], "view">; + getMany: TypedContractMethod<[ + keys: string[], + tokenId: BigNumberish + ], [ + string[] + ], "view">; + getManyByHash: TypedContractMethod<[ + keyHashes: BigNumberish[], + tokenId: BigNumberish + ], [ + [string[], string[]] & { + keys: string[]; + values: string[]; + } + ], "view">; + initialize: TypedContractMethod<[ + unsRegistry: AddressLike, + cnsRegistry: AddressLike + ], [ + void + ], "nonpayable">; + isApprovedForAll: TypedContractMethod<[ + arg0: AddressLike, + arg1: AddressLike + ], [ + boolean + ], "view">; + isApprovedOrOwner: TypedContractMethod<[ + spender: AddressLike, + tokenId: BigNumberish + ], [ + boolean + ], "view">; + multicall: TypedContractMethod<[data: BytesLike[]], [string[]], "nonpayable">; + namehash: TypedContractMethod<[labels: string[]], [bigint], "view">; + ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + ownerOfForMany: TypedContractMethod<[ + tokenIds: BigNumberish[] + ], [ + string[] + ], "view">; + registryOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + resolverOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + reverseNameOf: TypedContractMethod<[addr: AddressLike], [string], "view">; + reverseOf: TypedContractMethod<[addr: AddressLike], [bigint], "view">; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + tokenURI: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "NAME"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "VERSION"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; + getFunction(nameOrSignature: "exists"): TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; + getFunction(nameOrSignature: "get"): TypedContractMethod<[ + key: string, + tokenId: BigNumberish + ], [ + string + ], "view">; + getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "getByHash"): TypedContractMethod<[ + keyHash: BigNumberish, + tokenId: BigNumberish + ], [ + [string, string] & { + key: string; + value: string; + } + ], "view">; + getFunction(nameOrSignature: "getData"): TypedContractMethod<[ + keys: string[], + tokenId: BigNumberish + ], [ + [ + string, + string, + string[] + ] & { + resolver: string; + owner: string; + values: string[]; + } + ], "view">; + getFunction(nameOrSignature: "getDataByHash"): TypedContractMethod<[ + keyHashes: BigNumberish[], + tokenId: BigNumberish + ], [ + [ + string, + string, + string[], + string[] + ] & { + resolver: string; + owner: string; + keys: string[]; + values: string[]; + } + ], "view">; + getFunction(nameOrSignature: "getDataByHashForMany"): TypedContractMethod<[ + keyHashes: BigNumberish[], + tokenIds: BigNumberish[] + ], [ + [ + string[], + string[], + string[][], + string[][] + ] & { + resolvers: string[]; + owners: string[]; + keys: string[][]; + values: string[][]; + } + ], "view">; + getFunction(nameOrSignature: "getDataForMany"): TypedContractMethod<[ + keys: string[], + tokenIds: BigNumberish[] + ], [ + [ + string[], + string[], + string[][] + ] & { + resolvers: string[]; + owners: string[]; + values: string[][]; + } + ], "view">; + getFunction(nameOrSignature: "getMany"): TypedContractMethod<[ + keys: string[], + tokenId: BigNumberish + ], [ + string[] + ], "view">; + getFunction(nameOrSignature: "getManyByHash"): TypedContractMethod<[ + keyHashes: BigNumberish[], + tokenId: BigNumberish + ], [ + [string[], string[]] & { + keys: string[]; + values: string[]; + } + ], "view">; + getFunction(nameOrSignature: "initialize"): TypedContractMethod<[ + unsRegistry: AddressLike, + cnsRegistry: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ + arg0: AddressLike, + arg1: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "isApprovedOrOwner"): TypedContractMethod<[ + spender: AddressLike, + tokenId: BigNumberish + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "multicall"): TypedContractMethod<[data: BytesLike[]], [string[]], "nonpayable">; + getFunction(nameOrSignature: "namehash"): TypedContractMethod<[labels: string[]], [bigint], "view">; + getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "ownerOfForMany"): TypedContractMethod<[tokenIds: BigNumberish[]], [string[]], "view">; + getFunction(nameOrSignature: "registryOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "resolverOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "reverseNameOf"): TypedContractMethod<[addr: AddressLike], [string], "view">; + getFunction(nameOrSignature: "reverseOf"): TypedContractMethod<[addr: AddressLike], [bigint], "view">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "tokenURI"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getEvent(key: "Initialized"): TypedContractEvent; + filters: { + "Initialized(uint8)": TypedContractEvent; + Initialized: TypedContractEvent; + }; +} +//# sourceMappingURL=ProxyReaderV04.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/history/ProxyReaderV04.d.ts.map b/dist/types/contracts/history/ProxyReaderV04.d.ts.map new file mode 100644 index 00000000..2e5ac75a --- /dev/null +++ b/dist/types/contracts/history/ProxyReaderV04.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ProxyReaderV04.d.ts","sourceRoot":"","sources":["../../../../types/contracts/history/ProxyReaderV04.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/history/ProxyReaderV04.js b/dist/types/contracts/history/ProxyReaderV04.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/history/ProxyReaderV04.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/history/UNSRegistryV07.d.ts b/dist/types/contracts/history/UNSRegistryV07.d.ts new file mode 100644 index 00000000..4f0731b8 --- /dev/null +++ b/dist/types/contracts/history/UNSRegistryV07.d.ts @@ -0,0 +1,852 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; +export declare namespace IForwarder { + type ForwardRequestStruct = { + from: AddressLike; + nonce: BigNumberish; + tokenId: BigNumberish; + data: BytesLike; + }; + type ForwardRequestStructOutput = [ + from: string, + nonce: bigint, + tokenId: bigint, + data: string + ] & { + from: string; + nonce: bigint; + tokenId: bigint; + data: string; + }; +} +export interface UNSRegistryV07Interface extends Interface { + getFunction(nameOrSignature: "BATCH_LIMIT" | "NAME" | "VERSION" | "addKey" | "addProxyReader" | "approve" | "balanceOf" | "burn" | "deposit" | "depositToPolygon" | "execute" | "exists" | "get" | "getApproved" | "getByHash" | "getKey" | "getKeys" | "getMany" | "getManyByHash" | "initialize" | "isApprovedForAll" | "isApprovedOrOwner" | "isTrustedForwarder" | "mint(address,uint256)" | "mint(address,uint256,bytes)" | "mintTLD" | "mintWithRecords" | "name" | "namehash" | "nonceOf" | "onERC721Received" | "ownerOf" | "reconfigure" | "removeReverse" | "reset" | "resolverOf" | "reverseNameOf" | "reverseOf" | "root" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "set" | "setApprovalForAll" | "setByHash" | "setMany" | "setManyByHash" | "setOwner" | "setReverse" | "setTokenURIPrefix" | "supportsInterface" | "symbol" | "tokenURI" | "transferFrom" | "unlockWithRecords" | "verify" | "withdrawFromPolygon"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "AdminChanged" | "Approval" | "ApprovalForAll" | "Initialized" | "NewKey" | "NewURI" | "NewURIPrefix" | "RemoveReverse" | "ResetRecords" | "Set" | "SetReverse" | "Transfer" | "Upgraded"): EventFragment; + encodeFunctionData(functionFragment: "BATCH_LIMIT", values?: undefined): string; + encodeFunctionData(functionFragment: "NAME", values?: undefined): string; + encodeFunctionData(functionFragment: "VERSION", values?: undefined): string; + encodeFunctionData(functionFragment: "addKey", values: [string]): string; + encodeFunctionData(functionFragment: "addProxyReader", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "burn", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "deposit", values: [AddressLike, BytesLike]): string; + encodeFunctionData(functionFragment: "depositToPolygon", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "execute", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; + encodeFunctionData(functionFragment: "exists", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "get", values: [string, BigNumberish]): string; + encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "getByHash", values: [BigNumberish, BigNumberish]): string; + encodeFunctionData(functionFragment: "getKey", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "getKeys", values: [BigNumberish[]]): string; + encodeFunctionData(functionFragment: "getMany", values: [string[], BigNumberish]): string; + encodeFunctionData(functionFragment: "getManyByHash", values: [BigNumberish[], BigNumberish]): string; + encodeFunctionData(functionFragment: "initialize", values: [AddressLike, AddressLike, AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "isApprovedOrOwner", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "isTrustedForwarder", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "mint(address,uint256)", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "mint(address,uint256,bytes)", values: [AddressLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "mintTLD", values: [BigNumberish, string]): string; + encodeFunctionData(functionFragment: "mintWithRecords", values: [AddressLike, string[], string[], string[], boolean]): string; + encodeFunctionData(functionFragment: "name", values?: undefined): string; + encodeFunctionData(functionFragment: "namehash", values: [string[]]): string; + encodeFunctionData(functionFragment: "nonceOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "onERC721Received", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "reconfigure", values: [string[], string[], BigNumberish]): string; + encodeFunctionData(functionFragment: "removeReverse", values?: undefined): string; + encodeFunctionData(functionFragment: "reset", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "resolverOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "reverseNameOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "reverseOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "root", values?: undefined): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "set", values: [string, string, BigNumberish]): string; + encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; + encodeFunctionData(functionFragment: "setByHash", values: [BigNumberish, string, BigNumberish]): string; + encodeFunctionData(functionFragment: "setMany", values: [string[], string[], BigNumberish]): string; + encodeFunctionData(functionFragment: "setManyByHash", values: [BigNumberish[], string[], BigNumberish]): string; + encodeFunctionData(functionFragment: "setOwner", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "setReverse", values: [string[]]): string; + encodeFunctionData(functionFragment: "setTokenURIPrefix", values: [string]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "symbol", values?: undefined): string; + encodeFunctionData(functionFragment: "tokenURI", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "unlockWithRecords", values: [AddressLike, string[], string[], string[], boolean]): string; + encodeFunctionData(functionFragment: "verify", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; + encodeFunctionData(functionFragment: "withdrawFromPolygon", values: [BytesLike, BigNumberish, string[], string[]]): string; + decodeFunctionResult(functionFragment: "BATCH_LIMIT", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "NAME", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "VERSION", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "addKey", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "addProxyReader", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "burn", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "deposit", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "depositToPolygon", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "exists", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "get", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getByHash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getKey", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getKeys", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getMany", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getManyByHash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedOrOwner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isTrustedForwarder", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "mint(address,uint256)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "mint(address,uint256,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "mintTLD", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "mintWithRecords", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "namehash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "nonceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "onERC721Received", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "reconfigure", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "removeReverse", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "reset", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "resolverOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "reverseNameOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "reverseOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "root", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "set", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setByHash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setMany", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setManyByHash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setOwner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setReverse", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setTokenURIPrefix", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "tokenURI", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "unlockWithRecords", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "verify", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "withdrawFromPolygon", data: BytesLike): Result; +} +export declare namespace AdminChangedEvent { + type InputTuple = [previousAdmin: AddressLike, newAdmin: AddressLike]; + type OutputTuple = [previousAdmin: string, newAdmin: string]; + interface OutputObject { + previousAdmin: string; + newAdmin: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ApprovalEvent { + type InputTuple = [ + owner: AddressLike, + approved: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [owner: string, approved: string, tokenId: bigint]; + interface OutputObject { + owner: string; + approved: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ApprovalForAllEvent { + type InputTuple = [ + owner: AddressLike, + operator: AddressLike, + approved: boolean + ]; + type OutputTuple = [ + owner: string, + operator: string, + approved: boolean + ]; + interface OutputObject { + owner: string; + operator: string; + approved: boolean; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace InitializedEvent { + type InputTuple = [version: BigNumberish]; + type OutputTuple = [version: bigint]; + interface OutputObject { + version: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NewKeyEvent { + type InputTuple = [ + tokenId: BigNumberish, + keyIndex: string, + key: string + ]; + type OutputTuple = [tokenId: bigint, keyIndex: string, key: string]; + interface OutputObject { + tokenId: bigint; + keyIndex: string; + key: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NewURIEvent { + type InputTuple = [tokenId: BigNumberish, uri: string]; + type OutputTuple = [tokenId: bigint, uri: string]; + interface OutputObject { + tokenId: bigint; + uri: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NewURIPrefixEvent { + type InputTuple = [prefix: string]; + type OutputTuple = [prefix: string]; + interface OutputObject { + prefix: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RemoveReverseEvent { + type InputTuple = [addr: AddressLike]; + type OutputTuple = [addr: string]; + interface OutputObject { + addr: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ResetRecordsEvent { + type InputTuple = [tokenId: BigNumberish]; + type OutputTuple = [tokenId: bigint]; + interface OutputObject { + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace SetEvent { + type InputTuple = [ + tokenId: BigNumberish, + keyIndex: string, + valueIndex: string, + key: string, + value: string + ]; + type OutputTuple = [ + tokenId: bigint, + keyIndex: string, + valueIndex: string, + key: string, + value: string + ]; + interface OutputObject { + tokenId: bigint; + keyIndex: string; + valueIndex: string; + key: string; + value: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace SetReverseEvent { + type InputTuple = [addr: AddressLike, tokenId: BigNumberish]; + type OutputTuple = [addr: string, tokenId: bigint]; + interface OutputObject { + addr: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferEvent { + type InputTuple = [ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [from: string, to: string, tokenId: bigint]; + interface OutputObject { + from: string; + to: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace UpgradedEvent { + type InputTuple = [implementation: AddressLike]; + type OutputTuple = [implementation: string]; + interface OutputObject { + implementation: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface UNSRegistryV07 extends BaseContract { + connect(runner?: ContractRunner | null): UNSRegistryV07; + waitForDeployment(): Promise; + interface: UNSRegistryV07Interface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + BATCH_LIMIT: TypedContractMethod<[], [bigint], "view">; + NAME: TypedContractMethod<[], [string], "view">; + VERSION: TypedContractMethod<[], [string], "view">; + addKey: TypedContractMethod<[key: string], [void], "nonpayable">; + addProxyReader: TypedContractMethod<[ + addr: AddressLike + ], [ + void + ], "nonpayable">; + approve: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; + burn: TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; + deposit: TypedContractMethod<[ + user: AddressLike, + depositData: BytesLike + ], [ + void + ], "nonpayable">; + depositToPolygon: TypedContractMethod<[ + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + execute: TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + string + ], "nonpayable">; + exists: TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; + get: TypedContractMethod<[ + key: string, + tokenId: BigNumberish + ], [ + string + ], "view">; + getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getByHash: TypedContractMethod<[ + keyHash: BigNumberish, + tokenId: BigNumberish + ], [ + [string, string] & { + key: string; + value: string; + } + ], "view">; + getKey: TypedContractMethod<[keyHash: BigNumberish], [string], "view">; + getKeys: TypedContractMethod<[hashes: BigNumberish[]], [string[]], "view">; + getMany: TypedContractMethod<[ + keys: string[], + tokenId: BigNumberish + ], [ + string[] + ], "view">; + getManyByHash: TypedContractMethod<[ + keyHashes: BigNumberish[], + tokenId: BigNumberish + ], [ + [string[], string[]] & { + keys: string[]; + values: string[]; + } + ], "view">; + initialize: TypedContractMethod<[ + mintingManager: AddressLike, + cnsRegistry: AddressLike, + rootChainManager: AddressLike, + childChainManager: AddressLike + ], [ + void + ], "nonpayable">; + isApprovedForAll: TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + isApprovedOrOwner: TypedContractMethod<[ + spender: AddressLike, + tokenId: BigNumberish + ], [ + boolean + ], "view">; + isTrustedForwarder: TypedContractMethod<[ + forwarder: AddressLike + ], [ + boolean + ], "view">; + "mint(address,uint256)": TypedContractMethod<[ + user: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + "mint(address,uint256,bytes)": TypedContractMethod<[ + user: AddressLike, + tokenId: BigNumberish, + arg2: BytesLike + ], [ + void + ], "nonpayable">; + mintTLD: TypedContractMethod<[ + tokenId: BigNumberish, + uri: string + ], [ + void + ], "nonpayable">; + mintWithRecords: TypedContractMethod<[ + to: AddressLike, + labels: string[], + keys: string[], + values: string[], + withReverse: boolean + ], [ + void + ], "nonpayable">; + name: TypedContractMethod<[], [string], "view">; + namehash: TypedContractMethod<[labels: string[]], [bigint], "view">; + nonceOf: TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; + onERC721Received: TypedContractMethod<[ + arg0: AddressLike, + from: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + string + ], "nonpayable">; + ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + reconfigure: TypedContractMethod<[ + keys: string[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + removeReverse: TypedContractMethod<[], [void], "nonpayable">; + reset: TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; + resolverOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + reverseNameOf: TypedContractMethod<[addr: AddressLike], [string], "view">; + reverseOf: TypedContractMethod<[addr: AddressLike], [bigint], "view">; + root: TypedContractMethod<[], [bigint], "view">; + "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + set: TypedContractMethod<[ + key: string, + value: string, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + setApprovalForAll: TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + setByHash: TypedContractMethod<[ + keyHash: BigNumberish, + value: string, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + setMany: TypedContractMethod<[ + keys: string[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + setManyByHash: TypedContractMethod<[ + keyHashes: BigNumberish[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + setOwner: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + setReverse: TypedContractMethod<[labels: string[]], [void], "nonpayable">; + setTokenURIPrefix: TypedContractMethod<[ + prefix: string + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + symbol: TypedContractMethod<[], [string], "view">; + tokenURI: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + transferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + unlockWithRecords: TypedContractMethod<[ + to: AddressLike, + labels: string[], + keys: string[], + values: string[], + withReverse: boolean + ], [ + void + ], "nonpayable">; + verify: TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + boolean + ], "view">; + withdrawFromPolygon: TypedContractMethod<[ + inputData: BytesLike, + tokenId: BigNumberish, + keys: string[], + values: string[] + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "BATCH_LIMIT"): TypedContractMethod<[], [bigint], "view">; + getFunction(nameOrSignature: "NAME"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "VERSION"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "addKey"): TypedContractMethod<[key: string], [void], "nonpayable">; + getFunction(nameOrSignature: "addProxyReader"): TypedContractMethod<[addr: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "approve"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; + getFunction(nameOrSignature: "burn"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; + getFunction(nameOrSignature: "deposit"): TypedContractMethod<[ + user: AddressLike, + depositData: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "depositToPolygon"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; + getFunction(nameOrSignature: "execute"): TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + string + ], "nonpayable">; + getFunction(nameOrSignature: "exists"): TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; + getFunction(nameOrSignature: "get"): TypedContractMethod<[ + key: string, + tokenId: BigNumberish + ], [ + string + ], "view">; + getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "getByHash"): TypedContractMethod<[ + keyHash: BigNumberish, + tokenId: BigNumberish + ], [ + [string, string] & { + key: string; + value: string; + } + ], "view">; + getFunction(nameOrSignature: "getKey"): TypedContractMethod<[keyHash: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "getKeys"): TypedContractMethod<[hashes: BigNumberish[]], [string[]], "view">; + getFunction(nameOrSignature: "getMany"): TypedContractMethod<[ + keys: string[], + tokenId: BigNumberish + ], [ + string[] + ], "view">; + getFunction(nameOrSignature: "getManyByHash"): TypedContractMethod<[ + keyHashes: BigNumberish[], + tokenId: BigNumberish + ], [ + [string[], string[]] & { + keys: string[]; + values: string[]; + } + ], "view">; + getFunction(nameOrSignature: "initialize"): TypedContractMethod<[ + mintingManager: AddressLike, + cnsRegistry: AddressLike, + rootChainManager: AddressLike, + childChainManager: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "isApprovedOrOwner"): TypedContractMethod<[ + spender: AddressLike, + tokenId: BigNumberish + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "isTrustedForwarder"): TypedContractMethod<[forwarder: AddressLike], [boolean], "view">; + getFunction(nameOrSignature: "mint(address,uint256)"): TypedContractMethod<[ + user: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "mint(address,uint256,bytes)"): TypedContractMethod<[ + user: AddressLike, + tokenId: BigNumberish, + arg2: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "mintTLD"): TypedContractMethod<[ + tokenId: BigNumberish, + uri: string + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "mintWithRecords"): TypedContractMethod<[ + to: AddressLike, + labels: string[], + keys: string[], + values: string[], + withReverse: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "namehash"): TypedContractMethod<[labels: string[]], [bigint], "view">; + getFunction(nameOrSignature: "nonceOf"): TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; + getFunction(nameOrSignature: "onERC721Received"): TypedContractMethod<[ + arg0: AddressLike, + from: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + string + ], "nonpayable">; + getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "reconfigure"): TypedContractMethod<[ + keys: string[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "removeReverse"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "reset"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; + getFunction(nameOrSignature: "resolverOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "reverseNameOf"): TypedContractMethod<[addr: AddressLike], [string], "view">; + getFunction(nameOrSignature: "reverseOf"): TypedContractMethod<[addr: AddressLike], [bigint], "view">; + getFunction(nameOrSignature: "root"): TypedContractMethod<[], [bigint], "view">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "set"): TypedContractMethod<[ + key: string, + value: string, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setByHash"): TypedContractMethod<[ + keyHash: BigNumberish, + value: string, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setMany"): TypedContractMethod<[ + keys: string[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setManyByHash"): TypedContractMethod<[ + keyHashes: BigNumberish[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setOwner"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setReverse"): TypedContractMethod<[labels: string[]], [void], "nonpayable">; + getFunction(nameOrSignature: "setTokenURIPrefix"): TypedContractMethod<[prefix: string], [void], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "symbol"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "tokenURI"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "unlockWithRecords"): TypedContractMethod<[ + to: AddressLike, + labels: string[], + keys: string[], + values: string[], + withReverse: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "verify"): TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "withdrawFromPolygon"): TypedContractMethod<[ + inputData: BytesLike, + tokenId: BigNumberish, + keys: string[], + values: string[] + ], [ + void + ], "nonpayable">; + getEvent(key: "AdminChanged"): TypedContractEvent; + getEvent(key: "Approval"): TypedContractEvent; + getEvent(key: "ApprovalForAll"): TypedContractEvent; + getEvent(key: "Initialized"): TypedContractEvent; + getEvent(key: "NewKey"): TypedContractEvent; + getEvent(key: "NewURI"): TypedContractEvent; + getEvent(key: "NewURIPrefix"): TypedContractEvent; + getEvent(key: "RemoveReverse"): TypedContractEvent; + getEvent(key: "ResetRecords"): TypedContractEvent; + getEvent(key: "Set"): TypedContractEvent; + getEvent(key: "SetReverse"): TypedContractEvent; + getEvent(key: "Transfer"): TypedContractEvent; + getEvent(key: "Upgraded"): TypedContractEvent; + filters: { + "AdminChanged(address,address)": TypedContractEvent; + AdminChanged: TypedContractEvent; + "Approval(address,address,uint256)": TypedContractEvent; + Approval: TypedContractEvent; + "ApprovalForAll(address,address,bool)": TypedContractEvent; + ApprovalForAll: TypedContractEvent; + "Initialized(uint8)": TypedContractEvent; + Initialized: TypedContractEvent; + "NewKey(uint256,string,string)": TypedContractEvent; + NewKey: TypedContractEvent; + "NewURI(uint256,string)": TypedContractEvent; + NewURI: TypedContractEvent; + "NewURIPrefix(string)": TypedContractEvent; + NewURIPrefix: TypedContractEvent; + "RemoveReverse(address)": TypedContractEvent; + RemoveReverse: TypedContractEvent; + "ResetRecords(uint256)": TypedContractEvent; + ResetRecords: TypedContractEvent; + "Set(uint256,string,string,string,string)": TypedContractEvent; + Set: TypedContractEvent; + "SetReverse(address,uint256)": TypedContractEvent; + SetReverse: TypedContractEvent; + "Transfer(address,address,uint256)": TypedContractEvent; + Transfer: TypedContractEvent; + "Upgraded(address)": TypedContractEvent; + Upgraded: TypedContractEvent; + }; +} +//# sourceMappingURL=UNSRegistryV07.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/history/UNSRegistryV07.d.ts.map b/dist/types/contracts/history/UNSRegistryV07.d.ts.map new file mode 100644 index 00000000..3505bd8e --- /dev/null +++ b/dist/types/contracts/history/UNSRegistryV07.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"UNSRegistryV07.d.ts","sourceRoot":"","sources":["../../../../types/contracts/history/UNSRegistryV07.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/history/UNSRegistryV07.js b/dist/types/contracts/history/UNSRegistryV07.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/history/UNSRegistryV07.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/history/index.d.ts b/dist/types/contracts/history/index.d.ts new file mode 100644 index 00000000..8446ee85 --- /dev/null +++ b/dist/types/contracts/history/index.d.ts @@ -0,0 +1,4 @@ +export type { IUNSRegistryV07 } from "./IUNSRegistryV07"; +export type { ProxyReaderV04 } from "./ProxyReaderV04"; +export type { UNSRegistryV07 } from "./UNSRegistryV07"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/history/index.d.ts.map b/dist/types/contracts/history/index.d.ts.map new file mode 100644 index 00000000..d856b8aa --- /dev/null +++ b/dist/types/contracts/history/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../types/contracts/history/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC"} \ No newline at end of file diff --git a/dist/types/contracts/history/index.js b/dist/types/contracts/history/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/history/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/index.d.ts b/dist/types/contracts/index.d.ts new file mode 100644 index 00000000..02511b9a --- /dev/null +++ b/dist/types/contracts/index.d.ts @@ -0,0 +1,38 @@ +import type * as ens from "./@ens"; +export type { ens }; +import type * as maticnetwork from "./@maticnetwork"; +export type { maticnetwork }; +import type * as cns from "./cns"; +export type { cns }; +import type * as custody from "./custody"; +export type { custody }; +import type * as history from "./history"; +export type { history }; +import type * as metatx from "./metatx"; +export type { metatx }; +import type * as mocks from "./mocks"; +export type { mocks }; +import type * as roles from "./roles"; +export type { roles }; +import type * as utils from "./utils"; +export type { utils }; +export type { ChildRegistry } from "./ChildRegistry"; +export type { DotCoinBurner } from "./DotCoinBurner"; +export type { IAddressReader } from "./IAddressReader"; +export type { IDataReader } from "./IDataReader"; +export type { IERC1967 } from "./IERC1967"; +export type { IMintingManager } from "./IMintingManager"; +export type { IRecordReader } from "./IRecordReader"; +export type { IRecordStorage } from "./IRecordStorage"; +export type { IRegistryReader } from "./IRegistryReader"; +export type { IReverseRegistry } from "./IReverseRegistry"; +export type { IRootRegistry } from "./IRootRegistry"; +export type { IUNSRegistry } from "./IUNSRegistry"; +export type { KeyStorage } from "./KeyStorage"; +export type { MintingManager } from "./MintingManager"; +export type { ProxyReader } from "./ProxyReader"; +export type { RecordStorage } from "./RecordStorage"; +export type { RootRegistry } from "./RootRegistry"; +export type { UNSOperator } from "./UNSOperator"; +export type { UNSRegistry } from "./UNSRegistry"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/index.d.ts.map b/dist/types/contracts/index.d.ts.map new file mode 100644 index 00000000..27a31a52 --- /dev/null +++ b/dist/types/contracts/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../types/contracts/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,GAAG,MAAM,QAAQ,CAAC;AACnC,YAAY,EAAE,GAAG,EAAE,CAAC;AACpB,OAAO,KAAK,KAAK,YAAY,MAAM,iBAAiB,CAAC;AACrD,YAAY,EAAE,YAAY,EAAE,CAAC;AAC7B,OAAO,KAAK,KAAK,GAAG,MAAM,OAAO,CAAC;AAClC,YAAY,EAAE,GAAG,EAAE,CAAC;AACpB,OAAO,KAAK,KAAK,OAAO,MAAM,WAAW,CAAC;AAC1C,YAAY,EAAE,OAAO,EAAE,CAAC;AACxB,OAAO,KAAK,KAAK,OAAO,MAAM,WAAW,CAAC;AAC1C,YAAY,EAAE,OAAO,EAAE,CAAC;AACxB,OAAO,KAAK,KAAK,MAAM,MAAM,UAAU,CAAC;AACxC,YAAY,EAAE,MAAM,EAAE,CAAC;AACvB,OAAO,KAAK,KAAK,KAAK,MAAM,SAAS,CAAC;AACtC,YAAY,EAAE,KAAK,EAAE,CAAC;AACtB,OAAO,KAAK,KAAK,KAAK,MAAM,SAAS,CAAC;AACtC,YAAY,EAAE,KAAK,EAAE,CAAC;AACtB,OAAO,KAAK,KAAK,KAAK,MAAM,SAAS,CAAC;AACtC,YAAY,EAAE,KAAK,EAAE,CAAC;AACtB,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,YAAY,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,YAAY,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,YAAY,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,YAAY,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACnD,YAAY,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,YAAY,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACnD,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC"} \ No newline at end of file diff --git a/dist/types/contracts/index.js b/dist/types/contracts/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/metatx/BaseForwarder.d.ts b/dist/types/contracts/metatx/BaseForwarder.d.ts new file mode 100644 index 00000000..78d8f04c --- /dev/null +++ b/dist/types/contracts/metatx/BaseForwarder.d.ts @@ -0,0 +1,73 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../common"; +export declare namespace IForwarder { + type ForwardRequestStruct = { + from: AddressLike; + nonce: BigNumberish; + tokenId: BigNumberish; + data: BytesLike; + }; + type ForwardRequestStructOutput = [ + from: string, + nonce: bigint, + tokenId: bigint, + data: string + ] & { + from: string; + nonce: bigint; + tokenId: bigint; + data: string; + }; +} +export interface BaseForwarderInterface extends Interface { + getFunction(nameOrSignature: "execute" | "nonceOf" | "verify"): FunctionFragment; + encodeFunctionData(functionFragment: "execute", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; + encodeFunctionData(functionFragment: "nonceOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "verify", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; + decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "nonceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "verify", data: BytesLike): Result; +} +export interface BaseForwarder extends BaseContract { + connect(runner?: ContractRunner | null): BaseForwarder; + waitForDeployment(): Promise; + interface: BaseForwarderInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + execute: TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + string + ], "nonpayable">; + nonceOf: TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; + verify: TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + boolean + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "execute"): TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + string + ], "nonpayable">; + getFunction(nameOrSignature: "nonceOf"): TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; + getFunction(nameOrSignature: "verify"): TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + boolean + ], "view">; + filters: {}; +} +//# sourceMappingURL=BaseForwarder.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/metatx/BaseForwarder.d.ts.map b/dist/types/contracts/metatx/BaseForwarder.d.ts.map new file mode 100644 index 00000000..000ed49d --- /dev/null +++ b/dist/types/contracts/metatx/BaseForwarder.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"BaseForwarder.d.ts","sourceRoot":"","sources":["../../../../types/contracts/metatx/BaseForwarder.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/metatx/BaseForwarder.js b/dist/types/contracts/metatx/BaseForwarder.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/metatx/BaseForwarder.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/metatx/BaseRoutingForwarder.d.ts b/dist/types/contracts/metatx/BaseRoutingForwarder.d.ts new file mode 100644 index 00000000..236ff7b1 --- /dev/null +++ b/dist/types/contracts/metatx/BaseRoutingForwarder.d.ts @@ -0,0 +1,73 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../common"; +export declare namespace IForwarder { + type ForwardRequestStruct = { + from: AddressLike; + nonce: BigNumberish; + tokenId: BigNumberish; + data: BytesLike; + }; + type ForwardRequestStructOutput = [ + from: string, + nonce: bigint, + tokenId: bigint, + data: string + ] & { + from: string; + nonce: bigint; + tokenId: bigint; + data: string; + }; +} +export interface BaseRoutingForwarderInterface extends Interface { + getFunction(nameOrSignature: "execute" | "nonceOf" | "verify"): FunctionFragment; + encodeFunctionData(functionFragment: "execute", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; + encodeFunctionData(functionFragment: "nonceOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "verify", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; + decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "nonceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "verify", data: BytesLike): Result; +} +export interface BaseRoutingForwarder extends BaseContract { + connect(runner?: ContractRunner | null): BaseRoutingForwarder; + waitForDeployment(): Promise; + interface: BaseRoutingForwarderInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + execute: TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + string + ], "nonpayable">; + nonceOf: TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; + verify: TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + boolean + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "execute"): TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + string + ], "nonpayable">; + getFunction(nameOrSignature: "nonceOf"): TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; + getFunction(nameOrSignature: "verify"): TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + boolean + ], "view">; + filters: {}; +} +//# sourceMappingURL=BaseRoutingForwarder.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/metatx/BaseRoutingForwarder.d.ts.map b/dist/types/contracts/metatx/BaseRoutingForwarder.d.ts.map new file mode 100644 index 00000000..b90457e6 --- /dev/null +++ b/dist/types/contracts/metatx/BaseRoutingForwarder.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"BaseRoutingForwarder.d.ts","sourceRoot":"","sources":["../../../../types/contracts/metatx/BaseRoutingForwarder.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/metatx/BaseRoutingForwarder.js b/dist/types/contracts/metatx/BaseRoutingForwarder.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/metatx/BaseRoutingForwarder.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/metatx/CNSRegistryForwarder.d.ts b/dist/types/contracts/metatx/CNSRegistryForwarder.d.ts new file mode 100644 index 00000000..20908eec --- /dev/null +++ b/dist/types/contracts/metatx/CNSRegistryForwarder.d.ts @@ -0,0 +1,73 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../common"; +export declare namespace IForwarder { + type ForwardRequestStruct = { + from: AddressLike; + nonce: BigNumberish; + tokenId: BigNumberish; + data: BytesLike; + }; + type ForwardRequestStructOutput = [ + from: string, + nonce: bigint, + tokenId: bigint, + data: string + ] & { + from: string; + nonce: bigint; + tokenId: bigint; + data: string; + }; +} +export interface CNSRegistryForwarderInterface extends Interface { + getFunction(nameOrSignature: "execute" | "nonceOf" | "verify"): FunctionFragment; + encodeFunctionData(functionFragment: "execute", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; + encodeFunctionData(functionFragment: "nonceOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "verify", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; + decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "nonceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "verify", data: BytesLike): Result; +} +export interface CNSRegistryForwarder extends BaseContract { + connect(runner?: ContractRunner | null): CNSRegistryForwarder; + waitForDeployment(): Promise; + interface: CNSRegistryForwarderInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + execute: TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + string + ], "nonpayable">; + nonceOf: TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; + verify: TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + boolean + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "execute"): TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + string + ], "nonpayable">; + getFunction(nameOrSignature: "nonceOf"): TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; + getFunction(nameOrSignature: "verify"): TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + boolean + ], "view">; + filters: {}; +} +//# sourceMappingURL=CNSRegistryForwarder.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/metatx/CNSRegistryForwarder.d.ts.map b/dist/types/contracts/metatx/CNSRegistryForwarder.d.ts.map new file mode 100644 index 00000000..a55b7a06 --- /dev/null +++ b/dist/types/contracts/metatx/CNSRegistryForwarder.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"CNSRegistryForwarder.d.ts","sourceRoot":"","sources":["../../../../types/contracts/metatx/CNSRegistryForwarder.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/metatx/CNSRegistryForwarder.js b/dist/types/contracts/metatx/CNSRegistryForwarder.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/metatx/CNSRegistryForwarder.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/metatx/ERC2771Context.d.ts b/dist/types/contracts/metatx/ERC2771Context.d.ts new file mode 100644 index 00000000..ad0d6f3e --- /dev/null +++ b/dist/types/contracts/metatx/ERC2771Context.d.ts @@ -0,0 +1,46 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; +export interface ERC2771ContextInterface extends Interface { + getFunction(nameOrSignature: "isTrustedForwarder"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Initialized"): EventFragment; + encodeFunctionData(functionFragment: "isTrustedForwarder", values: [AddressLike]): string; + decodeFunctionResult(functionFragment: "isTrustedForwarder", data: BytesLike): Result; +} +export declare namespace InitializedEvent { + type InputTuple = [version: BigNumberish]; + type OutputTuple = [version: bigint]; + interface OutputObject { + version: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface ERC2771Context extends BaseContract { + connect(runner?: ContractRunner | null): ERC2771Context; + waitForDeployment(): Promise; + interface: ERC2771ContextInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + isTrustedForwarder: TypedContractMethod<[ + forwarder: AddressLike + ], [ + boolean + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "isTrustedForwarder"): TypedContractMethod<[forwarder: AddressLike], [boolean], "view">; + getEvent(key: "Initialized"): TypedContractEvent; + filters: { + "Initialized(uint8)": TypedContractEvent; + Initialized: TypedContractEvent; + }; +} +//# sourceMappingURL=ERC2771Context.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/metatx/ERC2771Context.d.ts.map b/dist/types/contracts/metatx/ERC2771Context.d.ts.map new file mode 100644 index 00000000..6ff383b2 --- /dev/null +++ b/dist/types/contracts/metatx/ERC2771Context.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ERC2771Context.d.ts","sourceRoot":"","sources":["../../../../types/contracts/metatx/ERC2771Context.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/metatx/ERC2771Context.js b/dist/types/contracts/metatx/ERC2771Context.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/metatx/ERC2771Context.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/metatx/ERC2771RegistryContext.d.ts b/dist/types/contracts/metatx/ERC2771RegistryContext.d.ts new file mode 100644 index 00000000..55a8683b --- /dev/null +++ b/dist/types/contracts/metatx/ERC2771RegistryContext.d.ts @@ -0,0 +1,46 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; +export interface ERC2771RegistryContextInterface extends Interface { + getFunction(nameOrSignature: "isTrustedForwarder"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Initialized"): EventFragment; + encodeFunctionData(functionFragment: "isTrustedForwarder", values: [AddressLike]): string; + decodeFunctionResult(functionFragment: "isTrustedForwarder", data: BytesLike): Result; +} +export declare namespace InitializedEvent { + type InputTuple = [version: BigNumberish]; + type OutputTuple = [version: bigint]; + interface OutputObject { + version: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface ERC2771RegistryContext extends BaseContract { + connect(runner?: ContractRunner | null): ERC2771RegistryContext; + waitForDeployment(): Promise; + interface: ERC2771RegistryContextInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + isTrustedForwarder: TypedContractMethod<[ + forwarder: AddressLike + ], [ + boolean + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "isTrustedForwarder"): TypedContractMethod<[forwarder: AddressLike], [boolean], "view">; + getEvent(key: "Initialized"): TypedContractEvent; + filters: { + "Initialized(uint8)": TypedContractEvent; + Initialized: TypedContractEvent; + }; +} +//# sourceMappingURL=ERC2771RegistryContext.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/metatx/ERC2771RegistryContext.d.ts.map b/dist/types/contracts/metatx/ERC2771RegistryContext.d.ts.map new file mode 100644 index 00000000..03da4c1d --- /dev/null +++ b/dist/types/contracts/metatx/ERC2771RegistryContext.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ERC2771RegistryContext.d.ts","sourceRoot":"","sources":["../../../../types/contracts/metatx/ERC2771RegistryContext.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/metatx/ERC2771RegistryContext.js b/dist/types/contracts/metatx/ERC2771RegistryContext.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/metatx/ERC2771RegistryContext.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/metatx/Forwarder.d.ts b/dist/types/contracts/metatx/Forwarder.d.ts new file mode 100644 index 00000000..728cc6c0 --- /dev/null +++ b/dist/types/contracts/metatx/Forwarder.d.ts @@ -0,0 +1,89 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; +export declare namespace IForwarder { + type ForwardRequestStruct = { + from: AddressLike; + nonce: BigNumberish; + tokenId: BigNumberish; + data: BytesLike; + }; + type ForwardRequestStructOutput = [ + from: string, + nonce: bigint, + tokenId: bigint, + data: string + ] & { + from: string; + nonce: bigint; + tokenId: bigint; + data: string; + }; +} +export interface ForwarderInterface extends Interface { + getFunction(nameOrSignature: "execute" | "nonceOf" | "verify"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Initialized"): EventFragment; + encodeFunctionData(functionFragment: "execute", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; + encodeFunctionData(functionFragment: "nonceOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "verify", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; + decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "nonceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "verify", data: BytesLike): Result; +} +export declare namespace InitializedEvent { + type InputTuple = [version: BigNumberish]; + type OutputTuple = [version: bigint]; + interface OutputObject { + version: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface Forwarder extends BaseContract { + connect(runner?: ContractRunner | null): Forwarder; + waitForDeployment(): Promise; + interface: ForwarderInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + execute: TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + string + ], "nonpayable">; + nonceOf: TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; + verify: TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + boolean + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "execute"): TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + string + ], "nonpayable">; + getFunction(nameOrSignature: "nonceOf"): TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; + getFunction(nameOrSignature: "verify"): TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + boolean + ], "view">; + getEvent(key: "Initialized"): TypedContractEvent; + filters: { + "Initialized(uint8)": TypedContractEvent; + Initialized: TypedContractEvent; + }; +} +//# sourceMappingURL=Forwarder.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/metatx/Forwarder.d.ts.map b/dist/types/contracts/metatx/Forwarder.d.ts.map new file mode 100644 index 00000000..e639f4c3 --- /dev/null +++ b/dist/types/contracts/metatx/Forwarder.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"Forwarder.d.ts","sourceRoot":"","sources":["../../../../types/contracts/metatx/Forwarder.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/metatx/Forwarder.js b/dist/types/contracts/metatx/Forwarder.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/metatx/Forwarder.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/metatx/IForwarder.d.ts b/dist/types/contracts/metatx/IForwarder.d.ts new file mode 100644 index 00000000..ae0d468c --- /dev/null +++ b/dist/types/contracts/metatx/IForwarder.d.ts @@ -0,0 +1,73 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../common"; +export declare namespace IForwarder { + type ForwardRequestStruct = { + from: AddressLike; + nonce: BigNumberish; + tokenId: BigNumberish; + data: BytesLike; + }; + type ForwardRequestStructOutput = [ + from: string, + nonce: bigint, + tokenId: bigint, + data: string + ] & { + from: string; + nonce: bigint; + tokenId: bigint; + data: string; + }; +} +export interface IForwarderInterface extends Interface { + getFunction(nameOrSignature: "execute" | "nonceOf" | "verify"): FunctionFragment; + encodeFunctionData(functionFragment: "execute", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; + encodeFunctionData(functionFragment: "nonceOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "verify", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; + decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "nonceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "verify", data: BytesLike): Result; +} +export interface IForwarder extends BaseContract { + connect(runner?: ContractRunner | null): IForwarder; + waitForDeployment(): Promise; + interface: IForwarderInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + execute: TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + string + ], "nonpayable">; + nonceOf: TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; + verify: TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + boolean + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "execute"): TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + string + ], "nonpayable">; + getFunction(nameOrSignature: "nonceOf"): TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; + getFunction(nameOrSignature: "verify"): TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + boolean + ], "view">; + filters: {}; +} +//# sourceMappingURL=IForwarder.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/metatx/IForwarder.d.ts.map b/dist/types/contracts/metatx/IForwarder.d.ts.map new file mode 100644 index 00000000..ae76e5f2 --- /dev/null +++ b/dist/types/contracts/metatx/IForwarder.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IForwarder.d.ts","sourceRoot":"","sources":["../../../../types/contracts/metatx/IForwarder.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/metatx/IForwarder.js b/dist/types/contracts/metatx/IForwarder.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/metatx/IForwarder.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/metatx/MintingManagerForwarder.d.ts b/dist/types/contracts/metatx/MintingManagerForwarder.d.ts new file mode 100644 index 00000000..8d406e5a --- /dev/null +++ b/dist/types/contracts/metatx/MintingManagerForwarder.d.ts @@ -0,0 +1,73 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../common"; +export declare namespace IForwarder { + type ForwardRequestStruct = { + from: AddressLike; + nonce: BigNumberish; + tokenId: BigNumberish; + data: BytesLike; + }; + type ForwardRequestStructOutput = [ + from: string, + nonce: bigint, + tokenId: bigint, + data: string + ] & { + from: string; + nonce: bigint; + tokenId: bigint; + data: string; + }; +} +export interface MintingManagerForwarderInterface extends Interface { + getFunction(nameOrSignature: "execute" | "nonceOf" | "verify"): FunctionFragment; + encodeFunctionData(functionFragment: "execute", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; + encodeFunctionData(functionFragment: "nonceOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "verify", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; + decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "nonceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "verify", data: BytesLike): Result; +} +export interface MintingManagerForwarder extends BaseContract { + connect(runner?: ContractRunner | null): MintingManagerForwarder; + waitForDeployment(): Promise; + interface: MintingManagerForwarderInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + execute: TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + string + ], "nonpayable">; + nonceOf: TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; + verify: TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + boolean + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "execute"): TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + string + ], "nonpayable">; + getFunction(nameOrSignature: "nonceOf"): TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; + getFunction(nameOrSignature: "verify"): TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + boolean + ], "view">; + filters: {}; +} +//# sourceMappingURL=MintingManagerForwarder.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/metatx/MintingManagerForwarder.d.ts.map b/dist/types/contracts/metatx/MintingManagerForwarder.d.ts.map new file mode 100644 index 00000000..0f441a56 --- /dev/null +++ b/dist/types/contracts/metatx/MintingManagerForwarder.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"MintingManagerForwarder.d.ts","sourceRoot":"","sources":["../../../../types/contracts/metatx/MintingManagerForwarder.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/metatx/MintingManagerForwarder.js b/dist/types/contracts/metatx/MintingManagerForwarder.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/metatx/MintingManagerForwarder.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/metatx/ResolverForwarder.d.ts b/dist/types/contracts/metatx/ResolverForwarder.d.ts new file mode 100644 index 00000000..8e77b62d --- /dev/null +++ b/dist/types/contracts/metatx/ResolverForwarder.d.ts @@ -0,0 +1,73 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../common"; +export declare namespace IForwarder { + type ForwardRequestStruct = { + from: AddressLike; + nonce: BigNumberish; + tokenId: BigNumberish; + data: BytesLike; + }; + type ForwardRequestStructOutput = [ + from: string, + nonce: bigint, + tokenId: bigint, + data: string + ] & { + from: string; + nonce: bigint; + tokenId: bigint; + data: string; + }; +} +export interface ResolverForwarderInterface extends Interface { + getFunction(nameOrSignature: "execute" | "nonceOf" | "verify"): FunctionFragment; + encodeFunctionData(functionFragment: "execute", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; + encodeFunctionData(functionFragment: "nonceOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "verify", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; + decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "nonceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "verify", data: BytesLike): Result; +} +export interface ResolverForwarder extends BaseContract { + connect(runner?: ContractRunner | null): ResolverForwarder; + waitForDeployment(): Promise; + interface: ResolverForwarderInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + execute: TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + string + ], "nonpayable">; + nonceOf: TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; + verify: TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + boolean + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "execute"): TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + string + ], "nonpayable">; + getFunction(nameOrSignature: "nonceOf"): TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; + getFunction(nameOrSignature: "verify"): TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + boolean + ], "view">; + filters: {}; +} +//# sourceMappingURL=ResolverForwarder.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/metatx/ResolverForwarder.d.ts.map b/dist/types/contracts/metatx/ResolverForwarder.d.ts.map new file mode 100644 index 00000000..8e820fa7 --- /dev/null +++ b/dist/types/contracts/metatx/ResolverForwarder.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ResolverForwarder.d.ts","sourceRoot":"","sources":["../../../../types/contracts/metatx/ResolverForwarder.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/metatx/ResolverForwarder.js b/dist/types/contracts/metatx/ResolverForwarder.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/metatx/ResolverForwarder.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/metatx/UNSRegistryForwarder.d.ts b/dist/types/contracts/metatx/UNSRegistryForwarder.d.ts new file mode 100644 index 00000000..0f6ba8f2 --- /dev/null +++ b/dist/types/contracts/metatx/UNSRegistryForwarder.d.ts @@ -0,0 +1,89 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; +export declare namespace IForwarder { + type ForwardRequestStruct = { + from: AddressLike; + nonce: BigNumberish; + tokenId: BigNumberish; + data: BytesLike; + }; + type ForwardRequestStructOutput = [ + from: string, + nonce: bigint, + tokenId: bigint, + data: string + ] & { + from: string; + nonce: bigint; + tokenId: bigint; + data: string; + }; +} +export interface UNSRegistryForwarderInterface extends Interface { + getFunction(nameOrSignature: "execute" | "nonceOf" | "verify"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Initialized"): EventFragment; + encodeFunctionData(functionFragment: "execute", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; + encodeFunctionData(functionFragment: "nonceOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "verify", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; + decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "nonceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "verify", data: BytesLike): Result; +} +export declare namespace InitializedEvent { + type InputTuple = [version: BigNumberish]; + type OutputTuple = [version: bigint]; + interface OutputObject { + version: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface UNSRegistryForwarder extends BaseContract { + connect(runner?: ContractRunner | null): UNSRegistryForwarder; + waitForDeployment(): Promise; + interface: UNSRegistryForwarderInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + execute: TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + string + ], "nonpayable">; + nonceOf: TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; + verify: TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + boolean + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "execute"): TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + string + ], "nonpayable">; + getFunction(nameOrSignature: "nonceOf"): TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; + getFunction(nameOrSignature: "verify"): TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + boolean + ], "view">; + getEvent(key: "Initialized"): TypedContractEvent; + filters: { + "Initialized(uint8)": TypedContractEvent; + Initialized: TypedContractEvent; + }; +} +//# sourceMappingURL=UNSRegistryForwarder.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/metatx/UNSRegistryForwarder.d.ts.map b/dist/types/contracts/metatx/UNSRegistryForwarder.d.ts.map new file mode 100644 index 00000000..6a7411a0 --- /dev/null +++ b/dist/types/contracts/metatx/UNSRegistryForwarder.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"UNSRegistryForwarder.d.ts","sourceRoot":"","sources":["../../../../types/contracts/metatx/UNSRegistryForwarder.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/metatx/UNSRegistryForwarder.js b/dist/types/contracts/metatx/UNSRegistryForwarder.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/metatx/UNSRegistryForwarder.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/metatx/index.d.ts b/dist/types/contracts/metatx/index.d.ts new file mode 100644 index 00000000..fabe1494 --- /dev/null +++ b/dist/types/contracts/metatx/index.d.ts @@ -0,0 +1,11 @@ +export type { BaseForwarder } from "./BaseForwarder"; +export type { BaseRoutingForwarder } from "./BaseRoutingForwarder"; +export type { CNSRegistryForwarder } from "./CNSRegistryForwarder"; +export type { ERC2771Context } from "./ERC2771Context"; +export type { ERC2771RegistryContext } from "./ERC2771RegistryContext"; +export type { Forwarder } from "./Forwarder"; +export type { IForwarder } from "./IForwarder"; +export type { MintingManagerForwarder } from "./MintingManagerForwarder"; +export type { ResolverForwarder } from "./ResolverForwarder"; +export type { UNSRegistryForwarder } from "./UNSRegistryForwarder"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/metatx/index.d.ts.map b/dist/types/contracts/metatx/index.d.ts.map new file mode 100644 index 00000000..12c3b8f0 --- /dev/null +++ b/dist/types/contracts/metatx/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../types/contracts/metatx/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,YAAY,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACnE,YAAY,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACnE,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,YAAY,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AACvE,YAAY,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,YAAY,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,YAAY,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACzE,YAAY,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,YAAY,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC"} \ No newline at end of file diff --git a/dist/types/contracts/metatx/index.js b/dist/types/contracts/metatx/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/metatx/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/mocks/BaseForwarderMock.d.ts b/dist/types/contracts/mocks/BaseForwarderMock.d.ts new file mode 100644 index 00000000..3a3efd37 --- /dev/null +++ b/dist/types/contracts/mocks/BaseForwarderMock.d.ts @@ -0,0 +1,89 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../common"; +export declare namespace IForwarder { + type ForwardRequestStruct = { + from: AddressLike; + nonce: BigNumberish; + tokenId: BigNumberish; + data: BytesLike; + }; + type ForwardRequestStructOutput = [ + from: string, + nonce: bigint, + tokenId: bigint, + data: string + ] & { + from: string; + nonce: bigint; + tokenId: bigint; + data: string; + }; +} +export interface BaseForwarderMockInterface extends Interface { + getFunction(nameOrSignature: "execute" | "hasAsset" | "mintAsset" | "nonceOf" | "revertWithReason" | "revertWithoutReason" | "verify"): FunctionFragment; + encodeFunctionData(functionFragment: "execute", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; + encodeFunctionData(functionFragment: "hasAsset", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "mintAsset", values?: undefined): string; + encodeFunctionData(functionFragment: "nonceOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "revertWithReason", values?: undefined): string; + encodeFunctionData(functionFragment: "revertWithoutReason", values?: undefined): string; + encodeFunctionData(functionFragment: "verify", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; + decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "hasAsset", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "mintAsset", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "nonceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "revertWithReason", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "revertWithoutReason", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "verify", data: BytesLike): Result; +} +export interface BaseForwarderMock extends BaseContract { + connect(runner?: ContractRunner | null): BaseForwarderMock; + waitForDeployment(): Promise; + interface: BaseForwarderMockInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + execute: TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + string + ], "nonpayable">; + hasAsset: TypedContractMethod<[addr: AddressLike], [boolean], "view">; + mintAsset: TypedContractMethod<[], [void], "nonpayable">; + nonceOf: TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; + revertWithReason: TypedContractMethod<[], [void], "view">; + revertWithoutReason: TypedContractMethod<[], [void], "view">; + verify: TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + boolean + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "execute"): TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + string + ], "nonpayable">; + getFunction(nameOrSignature: "hasAsset"): TypedContractMethod<[addr: AddressLike], [boolean], "view">; + getFunction(nameOrSignature: "mintAsset"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "nonceOf"): TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; + getFunction(nameOrSignature: "revertWithReason"): TypedContractMethod<[], [void], "view">; + getFunction(nameOrSignature: "revertWithoutReason"): TypedContractMethod<[], [void], "view">; + getFunction(nameOrSignature: "verify"): TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + boolean + ], "view">; + filters: {}; +} +//# sourceMappingURL=BaseForwarderMock.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/mocks/BaseForwarderMock.d.ts.map b/dist/types/contracts/mocks/BaseForwarderMock.d.ts.map new file mode 100644 index 00000000..d21ab742 --- /dev/null +++ b/dist/types/contracts/mocks/BaseForwarderMock.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"BaseForwarderMock.d.ts","sourceRoot":"","sources":["../../../../types/contracts/mocks/BaseForwarderMock.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,WAAW,EACX,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,aAAa,EACb,mBAAmB,EACpB,MAAM,cAAc,CAAC;AAEtB,MAAM,CAAC,OAAO,WAAW,UAAU,CAAC;IAClC,KAAY,oBAAoB,GAAG;QACjC,IAAI,EAAE,WAAW,CAAC;QAClB,KAAK,EAAE,YAAY,CAAC;QACpB,OAAO,EAAE,YAAY,CAAC;QACtB,IAAI,EAAE,SAAS,CAAC;KACjB,CAAC;IAEF,KAAY,0BAA0B,GAAG;QACvC,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,MAAM;QACb,OAAO,EAAE,MAAM;QACf,IAAI,EAAE,MAAM;KACb,GAAG;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;CACpE;AAED,MAAM,WAAW,0BAA2B,SAAQ,SAAS;IAC3D,WAAW,CACT,eAAe,EACX,SAAS,GACT,UAAU,GACV,WAAW,GACX,SAAS,GACT,kBAAkB,GAClB,qBAAqB,GACrB,QAAQ,GACX,gBAAgB,CAAC;IAEpB,kBAAkB,CAChB,gBAAgB,EAAE,SAAS,EAC3B,MAAM,EAAE,CAAC,UAAU,CAAC,oBAAoB,EAAE,SAAS,CAAC,GACnD,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,UAAU,EAC5B,MAAM,EAAE,CAAC,WAAW,CAAC,GACpB,MAAM,CAAC;IACV,kBAAkB,CAAC,gBAAgB,EAAE,WAAW,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IAC9E,kBAAkB,CAChB,gBAAgB,EAAE,SAAS,EAC3B,MAAM,EAAE,CAAC,YAAY,CAAC,GACrB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,kBAAkB,EACpC,MAAM,CAAC,EAAE,SAAS,GACjB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,qBAAqB,EACvC,MAAM,CAAC,EAAE,SAAS,GACjB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,QAAQ,EAC1B,MAAM,EAAE,CAAC,UAAU,CAAC,oBAAoB,EAAE,SAAS,CAAC,GACnD,MAAM,CAAC;IAEV,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,oBAAoB,CAAC,gBAAgB,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC5E,oBAAoB,CAAC,gBAAgB,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC7E,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,oBAAoB,CAClB,gBAAgB,EAAE,kBAAkB,EACpC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,qBAAqB,EACvC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;CAC3E;AAED,MAAM,WAAW,iBAAkB,SAAQ,YAAY;IACrD,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,iBAAiB,CAAC;IAC3D,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,0BAA0B,CAAC;IAEtC,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,OAAO,EAAE,mBAAmB,CAC1B;QAAC,GAAG,EAAE,UAAU,CAAC,oBAAoB;QAAE,SAAS,EAAE,SAAS;KAAC,EAC5D;QAAC,MAAM;KAAC,EACR,YAAY,CACb,CAAC;IAEF,QAAQ,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IAEtE,SAAS,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IAEzD,OAAO,EAAE,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAExE,gBAAgB,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC;IAE1D,mBAAmB,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC;IAE7D,MAAM,EAAE,mBAAmB,CACzB;QAAC,GAAG,EAAE,UAAU,CAAC,oBAAoB;QAAE,SAAS,EAAE,SAAS;KAAC,EAC5D;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,WAAW,CACT,eAAe,EAAE,SAAS,GACzB,mBAAmB,CACpB;QAAC,GAAG,EAAE,UAAU,CAAC,oBAAoB;QAAE,SAAS,EAAE,SAAS;KAAC,EAC5D;QAAC,MAAM;KAAC,EACR,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,UAAU,GAC1B,mBAAmB,CAAC,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IAC/D,WAAW,CACT,eAAe,EAAE,WAAW,GAC3B,mBAAmB,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IACjD,WAAW,CACT,eAAe,EAAE,SAAS,GACzB,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAClE,WAAW,CACT,eAAe,EAAE,kBAAkB,GAClC,mBAAmB,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC;IAC3C,WAAW,CACT,eAAe,EAAE,qBAAqB,GACrC,mBAAmB,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC;IAC3C,WAAW,CACT,eAAe,EAAE,QAAQ,GACxB,mBAAmB,CACpB;QAAC,GAAG,EAAE,UAAU,CAAC,oBAAoB;QAAE,SAAS,EAAE,SAAS;KAAC,EAC5D;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,OAAO,EAAE,EAAE,CAAC;CACb"} \ No newline at end of file diff --git a/dist/types/contracts/mocks/BaseForwarderMock.js b/dist/types/contracts/mocks/BaseForwarderMock.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/mocks/BaseForwarderMock.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/mocks/BaseRoutingForwarderMock.d.ts b/dist/types/contracts/mocks/BaseRoutingForwarderMock.d.ts new file mode 100644 index 00000000..5fb36ece --- /dev/null +++ b/dist/types/contracts/mocks/BaseRoutingForwarderMock.d.ts @@ -0,0 +1,131 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../common"; +export declare namespace IForwarder { + type ForwardRequestStruct = { + from: AddressLike; + nonce: BigNumberish; + tokenId: BigNumberish; + data: BytesLike; + }; + type ForwardRequestStructOutput = [ + from: string, + nonce: bigint, + tokenId: bigint, + data: string + ] & { + from: string; + nonce: bigint; + tokenId: bigint; + data: string; + }; +} +export interface BaseRoutingForwarderMockInterface extends Interface { + getFunction(nameOrSignature: "buildRouteData" | "execute" | "nonceOf" | "putString" | "putStringFor" | "putUint" | "putUintArr" | "putUintArrFor" | "putUintFor" | "verify"): FunctionFragment; + encodeFunctionData(functionFragment: "buildRouteData", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; + encodeFunctionData(functionFragment: "execute", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; + encodeFunctionData(functionFragment: "nonceOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "putString", values: [string]): string; + encodeFunctionData(functionFragment: "putStringFor", values: [string, BytesLike]): string; + encodeFunctionData(functionFragment: "putUint", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "putUintArr", values: [BigNumberish[]]): string; + encodeFunctionData(functionFragment: "putUintArrFor", values: [BigNumberish[], BytesLike]): string; + encodeFunctionData(functionFragment: "putUintFor", values: [BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "verify", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; + decodeFunctionResult(functionFragment: "buildRouteData", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "nonceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "putString", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "putStringFor", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "putUint", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "putUintArr", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "putUintArrFor", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "putUintFor", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "verify", data: BytesLike): Result; +} +export interface BaseRoutingForwarderMock extends BaseContract { + connect(runner?: ContractRunner | null): BaseRoutingForwarderMock; + waitForDeployment(): Promise; + interface: BaseRoutingForwarderMockInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + buildRouteData: TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + string + ], "view">; + execute: TypedContractMethod<[ + arg0: IForwarder.ForwardRequestStruct, + arg1: BytesLike + ], [ + string + ], "view">; + nonceOf: TypedContractMethod<[arg0: BigNumberish], [bigint], "view">; + putString: TypedContractMethod<[arg0: string], [void], "view">; + putStringFor: TypedContractMethod<[ + arg0: string, + arg1: BytesLike + ], [ + void + ], "view">; + putUint: TypedContractMethod<[arg0: BigNumberish], [void], "view">; + putUintArr: TypedContractMethod<[arg0: BigNumberish[]], [void], "view">; + putUintArrFor: TypedContractMethod<[ + arg0: BigNumberish[], + arg1: BytesLike + ], [ + void + ], "view">; + putUintFor: TypedContractMethod<[ + arg0: BigNumberish, + arg1: BytesLike + ], [ + void + ], "view">; + verify: TypedContractMethod<[ + arg0: IForwarder.ForwardRequestStruct, + arg1: BytesLike + ], [ + boolean + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "buildRouteData"): TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + string + ], "view">; + getFunction(nameOrSignature: "execute"): TypedContractMethod<[ + arg0: IForwarder.ForwardRequestStruct, + arg1: BytesLike + ], [ + string + ], "view">; + getFunction(nameOrSignature: "nonceOf"): TypedContractMethod<[arg0: BigNumberish], [bigint], "view">; + getFunction(nameOrSignature: "putString"): TypedContractMethod<[arg0: string], [void], "view">; + getFunction(nameOrSignature: "putStringFor"): TypedContractMethod<[arg0: string, arg1: BytesLike], [void], "view">; + getFunction(nameOrSignature: "putUint"): TypedContractMethod<[arg0: BigNumberish], [void], "view">; + getFunction(nameOrSignature: "putUintArr"): TypedContractMethod<[arg0: BigNumberish[]], [void], "view">; + getFunction(nameOrSignature: "putUintArrFor"): TypedContractMethod<[ + arg0: BigNumberish[], + arg1: BytesLike + ], [ + void + ], "view">; + getFunction(nameOrSignature: "putUintFor"): TypedContractMethod<[arg0: BigNumberish, arg1: BytesLike], [void], "view">; + getFunction(nameOrSignature: "verify"): TypedContractMethod<[ + arg0: IForwarder.ForwardRequestStruct, + arg1: BytesLike + ], [ + boolean + ], "view">; + filters: {}; +} +//# sourceMappingURL=BaseRoutingForwarderMock.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/mocks/BaseRoutingForwarderMock.d.ts.map b/dist/types/contracts/mocks/BaseRoutingForwarderMock.d.ts.map new file mode 100644 index 00000000..3fd01e2e --- /dev/null +++ b/dist/types/contracts/mocks/BaseRoutingForwarderMock.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"BaseRoutingForwarderMock.d.ts","sourceRoot":"","sources":["../../../../types/contracts/mocks/BaseRoutingForwarderMock.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/mocks/BaseRoutingForwarderMock.js b/dist/types/contracts/mocks/BaseRoutingForwarderMock.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/mocks/BaseRoutingForwarderMock.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/mocks/ERC1155Mock.d.ts b/dist/types/contracts/mocks/ERC1155Mock.d.ts new file mode 100644 index 00000000..5a21b72b --- /dev/null +++ b/dist/types/contracts/mocks/ERC1155Mock.d.ts @@ -0,0 +1,517 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; +export interface ERC1155MockInterface extends Interface { + getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE" | "MINTER_ROLE" | "PAUSER_ROLE" | "balanceOf" | "balanceOfBatch" | "burn" | "burnBatch" | "getRoleAdmin" | "getRoleMember" | "getRoleMemberCount" | "grantRole" | "hasRole" | "initialize" | "isApprovedForAll" | "mint" | "mintBatch" | "pause" | "paused" | "renounceRole" | "revokeRole" | "safeBatchTransferFrom" | "safeTransferFrom" | "setApprovalForAll" | "supportsInterface" | "unpause" | "uri"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "ApprovalForAll" | "Initialized" | "Paused" | "RoleAdminChanged" | "RoleGranted" | "RoleRevoked" | "TransferBatch" | "TransferSingle" | "URI" | "Unpaused"): EventFragment; + encodeFunctionData(functionFragment: "DEFAULT_ADMIN_ROLE", values?: undefined): string; + encodeFunctionData(functionFragment: "MINTER_ROLE", values?: undefined): string; + encodeFunctionData(functionFragment: "PAUSER_ROLE", values?: undefined): string; + encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "balanceOfBatch", values: [AddressLike[], BigNumberish[]]): string; + encodeFunctionData(functionFragment: "burn", values: [AddressLike, BigNumberish, BigNumberish]): string; + encodeFunctionData(functionFragment: "burnBatch", values: [AddressLike, BigNumberish[], BigNumberish[]]): string; + encodeFunctionData(functionFragment: "getRoleAdmin", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "getRoleMember", values: [BytesLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "getRoleMemberCount", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "grantRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "hasRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "initialize", values: [string]): string; + encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "mint", values: [AddressLike, BigNumberish, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "mintBatch", values: [AddressLike, BigNumberish[], BigNumberish[], BytesLike]): string; + encodeFunctionData(functionFragment: "pause", values?: undefined): string; + encodeFunctionData(functionFragment: "paused", values?: undefined): string; + encodeFunctionData(functionFragment: "renounceRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "revokeRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "safeBatchTransferFrom", values: [ + AddressLike, + AddressLike, + BigNumberish[], + BigNumberish[], + BytesLike + ]): string; + encodeFunctionData(functionFragment: "safeTransferFrom", values: [AddressLike, AddressLike, BigNumberish, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "unpause", values?: undefined): string; + encodeFunctionData(functionFragment: "uri", values: [BigNumberish]): string; + decodeFunctionResult(functionFragment: "DEFAULT_ADMIN_ROLE", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "MINTER_ROLE", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "PAUSER_ROLE", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOfBatch", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "burn", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "burnBatch", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getRoleAdmin", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getRoleMember", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getRoleMemberCount", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "grantRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "hasRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "mint", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "mintBatch", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "pause", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "paused", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "revokeRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeBatchTransferFrom", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "unpause", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "uri", data: BytesLike): Result; +} +export declare namespace ApprovalForAllEvent { + type InputTuple = [ + account: AddressLike, + operator: AddressLike, + approved: boolean + ]; + type OutputTuple = [ + account: string, + operator: string, + approved: boolean + ]; + interface OutputObject { + account: string; + operator: string; + approved: boolean; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace InitializedEvent { + type InputTuple = [version: BigNumberish]; + type OutputTuple = [version: bigint]; + interface OutputObject { + version: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace PausedEvent { + type InputTuple = [account: AddressLike]; + type OutputTuple = [account: string]; + interface OutputObject { + account: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RoleAdminChangedEvent { + type InputTuple = [ + role: BytesLike, + previousAdminRole: BytesLike, + newAdminRole: BytesLike + ]; + type OutputTuple = [ + role: string, + previousAdminRole: string, + newAdminRole: string + ]; + interface OutputObject { + role: string; + previousAdminRole: string; + newAdminRole: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RoleGrantedEvent { + type InputTuple = [ + role: BytesLike, + account: AddressLike, + sender: AddressLike + ]; + type OutputTuple = [role: string, account: string, sender: string]; + interface OutputObject { + role: string; + account: string; + sender: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RoleRevokedEvent { + type InputTuple = [ + role: BytesLike, + account: AddressLike, + sender: AddressLike + ]; + type OutputTuple = [role: string, account: string, sender: string]; + interface OutputObject { + role: string; + account: string; + sender: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferBatchEvent { + type InputTuple = [ + operator: AddressLike, + from: AddressLike, + to: AddressLike, + ids: BigNumberish[], + values: BigNumberish[] + ]; + type OutputTuple = [ + operator: string, + from: string, + to: string, + ids: bigint[], + values: bigint[] + ]; + interface OutputObject { + operator: string; + from: string; + to: string; + ids: bigint[]; + values: bigint[]; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferSingleEvent { + type InputTuple = [ + operator: AddressLike, + from: AddressLike, + to: AddressLike, + id: BigNumberish, + value: BigNumberish + ]; + type OutputTuple = [ + operator: string, + from: string, + to: string, + id: bigint, + value: bigint + ]; + interface OutputObject { + operator: string; + from: string; + to: string; + id: bigint; + value: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace URIEvent { + type InputTuple = [value: string, id: BigNumberish]; + type OutputTuple = [value: string, id: bigint]; + interface OutputObject { + value: string; + id: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace UnpausedEvent { + type InputTuple = [account: AddressLike]; + type OutputTuple = [account: string]; + interface OutputObject { + account: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface ERC1155Mock extends BaseContract { + connect(runner?: ContractRunner | null): ERC1155Mock; + waitForDeployment(): Promise; + interface: ERC1155MockInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + DEFAULT_ADMIN_ROLE: TypedContractMethod<[], [string], "view">; + MINTER_ROLE: TypedContractMethod<[], [string], "view">; + PAUSER_ROLE: TypedContractMethod<[], [string], "view">; + balanceOf: TypedContractMethod<[ + account: AddressLike, + id: BigNumberish + ], [ + bigint + ], "view">; + balanceOfBatch: TypedContractMethod<[ + accounts: AddressLike[], + ids: BigNumberish[] + ], [ + bigint[] + ], "view">; + burn: TypedContractMethod<[ + account: AddressLike, + id: BigNumberish, + value: BigNumberish + ], [ + void + ], "nonpayable">; + burnBatch: TypedContractMethod<[ + account: AddressLike, + ids: BigNumberish[], + values: BigNumberish[] + ], [ + void + ], "nonpayable">; + getRoleAdmin: TypedContractMethod<[role: BytesLike], [string], "view">; + getRoleMember: TypedContractMethod<[ + role: BytesLike, + index: BigNumberish + ], [ + string + ], "view">; + getRoleMemberCount: TypedContractMethod<[role: BytesLike], [bigint], "view">; + grantRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + hasRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + boolean + ], "view">; + initialize: TypedContractMethod<[uri: string], [void], "nonpayable">; + isApprovedForAll: TypedContractMethod<[ + account: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + mint: TypedContractMethod<[ + to: AddressLike, + id: BigNumberish, + amount: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + mintBatch: TypedContractMethod<[ + to: AddressLike, + ids: BigNumberish[], + amounts: BigNumberish[], + data: BytesLike + ], [ + void + ], "nonpayable">; + pause: TypedContractMethod<[], [void], "nonpayable">; + paused: TypedContractMethod<[], [boolean], "view">; + renounceRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + revokeRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + safeBatchTransferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + ids: BigNumberish[], + amounts: BigNumberish[], + data: BytesLike + ], [ + void + ], "nonpayable">; + safeTransferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + id: BigNumberish, + amount: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + setApprovalForAll: TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + unpause: TypedContractMethod<[], [void], "nonpayable">; + uri: TypedContractMethod<[arg0: BigNumberish], [string], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "MINTER_ROLE"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "PAUSER_ROLE"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[ + account: AddressLike, + id: BigNumberish + ], [ + bigint + ], "view">; + getFunction(nameOrSignature: "balanceOfBatch"): TypedContractMethod<[ + accounts: AddressLike[], + ids: BigNumberish[] + ], [ + bigint[] + ], "view">; + getFunction(nameOrSignature: "burn"): TypedContractMethod<[ + account: AddressLike, + id: BigNumberish, + value: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "burnBatch"): TypedContractMethod<[ + account: AddressLike, + ids: BigNumberish[], + values: BigNumberish[] + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "getRoleAdmin"): TypedContractMethod<[role: BytesLike], [string], "view">; + getFunction(nameOrSignature: "getRoleMember"): TypedContractMethod<[ + role: BytesLike, + index: BigNumberish + ], [ + string + ], "view">; + getFunction(nameOrSignature: "getRoleMemberCount"): TypedContractMethod<[role: BytesLike], [bigint], "view">; + getFunction(nameOrSignature: "grantRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "hasRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "initialize"): TypedContractMethod<[uri: string], [void], "nonpayable">; + getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ + account: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "mint"): TypedContractMethod<[ + to: AddressLike, + id: BigNumberish, + amount: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "mintBatch"): TypedContractMethod<[ + to: AddressLike, + ids: BigNumberish[], + amounts: BigNumberish[], + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "pause"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "paused"): TypedContractMethod<[], [boolean], "view">; + getFunction(nameOrSignature: "renounceRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "revokeRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeBatchTransferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + ids: BigNumberish[], + amounts: BigNumberish[], + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + id: BigNumberish, + amount: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "unpause"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "uri"): TypedContractMethod<[arg0: BigNumberish], [string], "view">; + getEvent(key: "ApprovalForAll"): TypedContractEvent; + getEvent(key: "Initialized"): TypedContractEvent; + getEvent(key: "Paused"): TypedContractEvent; + getEvent(key: "RoleAdminChanged"): TypedContractEvent; + getEvent(key: "RoleGranted"): TypedContractEvent; + getEvent(key: "RoleRevoked"): TypedContractEvent; + getEvent(key: "TransferBatch"): TypedContractEvent; + getEvent(key: "TransferSingle"): TypedContractEvent; + getEvent(key: "URI"): TypedContractEvent; + getEvent(key: "Unpaused"): TypedContractEvent; + filters: { + "ApprovalForAll(address,address,bool)": TypedContractEvent; + ApprovalForAll: TypedContractEvent; + "Initialized(uint8)": TypedContractEvent; + Initialized: TypedContractEvent; + "Paused(address)": TypedContractEvent; + Paused: TypedContractEvent; + "RoleAdminChanged(bytes32,bytes32,bytes32)": TypedContractEvent; + RoleAdminChanged: TypedContractEvent; + "RoleGranted(bytes32,address,address)": TypedContractEvent; + RoleGranted: TypedContractEvent; + "RoleRevoked(bytes32,address,address)": TypedContractEvent; + RoleRevoked: TypedContractEvent; + "TransferBatch(address,address,address,uint256[],uint256[])": TypedContractEvent; + TransferBatch: TypedContractEvent; + "TransferSingle(address,address,address,uint256,uint256)": TypedContractEvent; + TransferSingle: TypedContractEvent; + "URI(string,uint256)": TypedContractEvent; + URI: TypedContractEvent; + "Unpaused(address)": TypedContractEvent; + Unpaused: TypedContractEvent; + }; +} +//# sourceMappingURL=ERC1155Mock.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/mocks/ERC1155Mock.d.ts.map b/dist/types/contracts/mocks/ERC1155Mock.d.ts.map new file mode 100644 index 00000000..71ee456c --- /dev/null +++ b/dist/types/contracts/mocks/ERC1155Mock.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ERC1155Mock.d.ts","sourceRoot":"","sources":["../../../../types/contracts/mocks/ERC1155Mock.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/mocks/ERC1155Mock.js b/dist/types/contracts/mocks/ERC1155Mock.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/mocks/ERC1155Mock.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/mocks/ERC20Mock.d.ts b/dist/types/contracts/mocks/ERC20Mock.d.ts new file mode 100644 index 00000000..222e2553 --- /dev/null +++ b/dist/types/contracts/mocks/ERC20Mock.d.ts @@ -0,0 +1,184 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; +export interface ERC20MockInterface extends Interface { + getFunction(nameOrSignature: "allowance" | "approve" | "balanceOf" | "decimals" | "decreaseAllowance" | "increaseAllowance" | "mint" | "name" | "symbol" | "totalSupply" | "transfer" | "transferFrom"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Approval" | "Transfer"): EventFragment; + encodeFunctionData(functionFragment: "allowance", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "decimals", values?: undefined): string; + encodeFunctionData(functionFragment: "decreaseAllowance", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "increaseAllowance", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "mint", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "name", values?: undefined): string; + encodeFunctionData(functionFragment: "symbol", values?: undefined): string; + encodeFunctionData(functionFragment: "totalSupply", values?: undefined): string; + encodeFunctionData(functionFragment: "transfer", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; + decodeFunctionResult(functionFragment: "allowance", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "decimals", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "decreaseAllowance", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "increaseAllowance", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "mint", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "totalSupply", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transfer", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; +} +export declare namespace ApprovalEvent { + type InputTuple = [ + owner: AddressLike, + spender: AddressLike, + value: BigNumberish + ]; + type OutputTuple = [owner: string, spender: string, value: bigint]; + interface OutputObject { + owner: string; + spender: string; + value: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferEvent { + type InputTuple = [ + from: AddressLike, + to: AddressLike, + value: BigNumberish + ]; + type OutputTuple = [from: string, to: string, value: bigint]; + interface OutputObject { + from: string; + to: string; + value: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface ERC20Mock extends BaseContract { + connect(runner?: ContractRunner | null): ERC20Mock; + waitForDeployment(): Promise; + interface: ERC20MockInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + allowance: TypedContractMethod<[ + owner: AddressLike, + spender: AddressLike + ], [ + bigint + ], "view">; + approve: TypedContractMethod<[ + spender: AddressLike, + amount: BigNumberish + ], [ + boolean + ], "nonpayable">; + balanceOf: TypedContractMethod<[account: AddressLike], [bigint], "view">; + decimals: TypedContractMethod<[], [bigint], "view">; + decreaseAllowance: TypedContractMethod<[ + spender: AddressLike, + subtractedValue: BigNumberish + ], [ + boolean + ], "nonpayable">; + increaseAllowance: TypedContractMethod<[ + spender: AddressLike, + addedValue: BigNumberish + ], [ + boolean + ], "nonpayable">; + mint: TypedContractMethod<[ + account: AddressLike, + amount: BigNumberish + ], [ + void + ], "nonpayable">; + name: TypedContractMethod<[], [string], "view">; + symbol: TypedContractMethod<[], [string], "view">; + totalSupply: TypedContractMethod<[], [bigint], "view">; + transfer: TypedContractMethod<[ + to: AddressLike, + amount: BigNumberish + ], [ + boolean + ], "nonpayable">; + transferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + amount: BigNumberish + ], [ + boolean + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "allowance"): TypedContractMethod<[ + owner: AddressLike, + spender: AddressLike + ], [ + bigint + ], "view">; + getFunction(nameOrSignature: "approve"): TypedContractMethod<[ + spender: AddressLike, + amount: BigNumberish + ], [ + boolean + ], "nonpayable">; + getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[account: AddressLike], [bigint], "view">; + getFunction(nameOrSignature: "decimals"): TypedContractMethod<[], [bigint], "view">; + getFunction(nameOrSignature: "decreaseAllowance"): TypedContractMethod<[ + spender: AddressLike, + subtractedValue: BigNumberish + ], [ + boolean + ], "nonpayable">; + getFunction(nameOrSignature: "increaseAllowance"): TypedContractMethod<[ + spender: AddressLike, + addedValue: BigNumberish + ], [ + boolean + ], "nonpayable">; + getFunction(nameOrSignature: "mint"): TypedContractMethod<[ + account: AddressLike, + amount: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "symbol"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "totalSupply"): TypedContractMethod<[], [bigint], "view">; + getFunction(nameOrSignature: "transfer"): TypedContractMethod<[ + to: AddressLike, + amount: BigNumberish + ], [ + boolean + ], "nonpayable">; + getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + amount: BigNumberish + ], [ + boolean + ], "nonpayable">; + getEvent(key: "Approval"): TypedContractEvent; + getEvent(key: "Transfer"): TypedContractEvent; + filters: { + "Approval(address,address,uint256)": TypedContractEvent; + Approval: TypedContractEvent; + "Transfer(address,address,uint256)": TypedContractEvent; + Transfer: TypedContractEvent; + }; +} +//# sourceMappingURL=ERC20Mock.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/mocks/ERC20Mock.d.ts.map b/dist/types/contracts/mocks/ERC20Mock.d.ts.map new file mode 100644 index 00000000..5aacd41a --- /dev/null +++ b/dist/types/contracts/mocks/ERC20Mock.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ERC20Mock.d.ts","sourceRoot":"","sources":["../../../../types/contracts/mocks/ERC20Mock.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/mocks/ERC20Mock.js b/dist/types/contracts/mocks/ERC20Mock.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/mocks/ERC20Mock.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/mocks/ERC20UnsafeMock.d.ts b/dist/types/contracts/mocks/ERC20UnsafeMock.d.ts new file mode 100644 index 00000000..9d2d0f0e --- /dev/null +++ b/dist/types/contracts/mocks/ERC20UnsafeMock.d.ts @@ -0,0 +1,184 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; +export interface ERC20UnsafeMockInterface extends Interface { + getFunction(nameOrSignature: "allowance" | "approve" | "balanceOf" | "decimals" | "decreaseAllowance" | "increaseAllowance" | "mint" | "name" | "symbol" | "totalSupply" | "transfer" | "transferFrom"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Approval" | "Transfer"): EventFragment; + encodeFunctionData(functionFragment: "allowance", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "decimals", values?: undefined): string; + encodeFunctionData(functionFragment: "decreaseAllowance", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "increaseAllowance", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "mint", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "name", values?: undefined): string; + encodeFunctionData(functionFragment: "symbol", values?: undefined): string; + encodeFunctionData(functionFragment: "totalSupply", values?: undefined): string; + encodeFunctionData(functionFragment: "transfer", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; + decodeFunctionResult(functionFragment: "allowance", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "decimals", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "decreaseAllowance", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "increaseAllowance", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "mint", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "totalSupply", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transfer", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; +} +export declare namespace ApprovalEvent { + type InputTuple = [ + owner: AddressLike, + spender: AddressLike, + value: BigNumberish + ]; + type OutputTuple = [owner: string, spender: string, value: bigint]; + interface OutputObject { + owner: string; + spender: string; + value: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferEvent { + type InputTuple = [ + from: AddressLike, + to: AddressLike, + value: BigNumberish + ]; + type OutputTuple = [from: string, to: string, value: bigint]; + interface OutputObject { + from: string; + to: string; + value: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface ERC20UnsafeMock extends BaseContract { + connect(runner?: ContractRunner | null): ERC20UnsafeMock; + waitForDeployment(): Promise; + interface: ERC20UnsafeMockInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + allowance: TypedContractMethod<[ + owner: AddressLike, + spender: AddressLike + ], [ + bigint + ], "view">; + approve: TypedContractMethod<[ + spender: AddressLike, + amount: BigNumberish + ], [ + boolean + ], "nonpayable">; + balanceOf: TypedContractMethod<[account: AddressLike], [bigint], "view">; + decimals: TypedContractMethod<[], [bigint], "view">; + decreaseAllowance: TypedContractMethod<[ + spender: AddressLike, + subtractedValue: BigNumberish + ], [ + boolean + ], "nonpayable">; + increaseAllowance: TypedContractMethod<[ + spender: AddressLike, + addedValue: BigNumberish + ], [ + boolean + ], "nonpayable">; + mint: TypedContractMethod<[ + account: AddressLike, + amount: BigNumberish + ], [ + void + ], "nonpayable">; + name: TypedContractMethod<[], [string], "view">; + symbol: TypedContractMethod<[], [string], "view">; + totalSupply: TypedContractMethod<[], [bigint], "view">; + transfer: TypedContractMethod<[ + to: AddressLike, + value: BigNumberish + ], [ + boolean + ], "nonpayable">; + transferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + value: BigNumberish + ], [ + boolean + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "allowance"): TypedContractMethod<[ + owner: AddressLike, + spender: AddressLike + ], [ + bigint + ], "view">; + getFunction(nameOrSignature: "approve"): TypedContractMethod<[ + spender: AddressLike, + amount: BigNumberish + ], [ + boolean + ], "nonpayable">; + getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[account: AddressLike], [bigint], "view">; + getFunction(nameOrSignature: "decimals"): TypedContractMethod<[], [bigint], "view">; + getFunction(nameOrSignature: "decreaseAllowance"): TypedContractMethod<[ + spender: AddressLike, + subtractedValue: BigNumberish + ], [ + boolean + ], "nonpayable">; + getFunction(nameOrSignature: "increaseAllowance"): TypedContractMethod<[ + spender: AddressLike, + addedValue: BigNumberish + ], [ + boolean + ], "nonpayable">; + getFunction(nameOrSignature: "mint"): TypedContractMethod<[ + account: AddressLike, + amount: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "symbol"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "totalSupply"): TypedContractMethod<[], [bigint], "view">; + getFunction(nameOrSignature: "transfer"): TypedContractMethod<[ + to: AddressLike, + value: BigNumberish + ], [ + boolean + ], "nonpayable">; + getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + value: BigNumberish + ], [ + boolean + ], "nonpayable">; + getEvent(key: "Approval"): TypedContractEvent; + getEvent(key: "Transfer"): TypedContractEvent; + filters: { + "Approval(address,address,uint256)": TypedContractEvent; + Approval: TypedContractEvent; + "Transfer(address,address,uint256)": TypedContractEvent; + Transfer: TypedContractEvent; + }; +} +//# sourceMappingURL=ERC20UnsafeMock.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/mocks/ERC20UnsafeMock.d.ts.map b/dist/types/contracts/mocks/ERC20UnsafeMock.d.ts.map new file mode 100644 index 00000000..35ad05c4 --- /dev/null +++ b/dist/types/contracts/mocks/ERC20UnsafeMock.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ERC20UnsafeMock.d.ts","sourceRoot":"","sources":["../../../../types/contracts/mocks/ERC20UnsafeMock.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/mocks/ERC20UnsafeMock.js b/dist/types/contracts/mocks/ERC20UnsafeMock.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/mocks/ERC20UnsafeMock.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/mocks/ERC2771ContextMock.d.ts b/dist/types/contracts/mocks/ERC2771ContextMock.d.ts new file mode 100644 index 00000000..99e64f01 --- /dev/null +++ b/dist/types/contracts/mocks/ERC2771ContextMock.d.ts @@ -0,0 +1,70 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; +export interface ERC2771ContextMockInterface extends Interface { + getFunction(nameOrSignature: "initialize" | "isTrustedForwarder" | "msgData" | "msgSender" | "msgToken" | "run"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Initialized"): EventFragment; + encodeFunctionData(functionFragment: "initialize", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "isTrustedForwarder", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "msgData", values?: undefined): string; + encodeFunctionData(functionFragment: "msgSender", values?: undefined): string; + encodeFunctionData(functionFragment: "msgToken", values?: undefined): string; + encodeFunctionData(functionFragment: "run", values?: undefined): string; + decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isTrustedForwarder", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "msgData", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "msgSender", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "msgToken", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "run", data: BytesLike): Result; +} +export declare namespace InitializedEvent { + type InputTuple = [version: BigNumberish]; + type OutputTuple = [version: bigint]; + interface OutputObject { + version: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface ERC2771ContextMock extends BaseContract { + connect(runner?: ContractRunner | null): ERC2771ContextMock; + waitForDeployment(): Promise; + interface: ERC2771ContextMockInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + initialize: TypedContractMethod<[ + forwarder: AddressLike + ], [ + void + ], "nonpayable">; + isTrustedForwarder: TypedContractMethod<[ + forwarder: AddressLike + ], [ + boolean + ], "view">; + msgData: TypedContractMethod<[], [string], "view">; + msgSender: TypedContractMethod<[], [string], "view">; + msgToken: TypedContractMethod<[], [bigint], "view">; + run: TypedContractMethod<[], [string], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "initialize"): TypedContractMethod<[forwarder: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "isTrustedForwarder"): TypedContractMethod<[forwarder: AddressLike], [boolean], "view">; + getFunction(nameOrSignature: "msgData"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "msgSender"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "msgToken"): TypedContractMethod<[], [bigint], "view">; + getFunction(nameOrSignature: "run"): TypedContractMethod<[], [string], "view">; + getEvent(key: "Initialized"): TypedContractEvent; + filters: { + "Initialized(uint8)": TypedContractEvent; + Initialized: TypedContractEvent; + }; +} +//# sourceMappingURL=ERC2771ContextMock.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/mocks/ERC2771ContextMock.d.ts.map b/dist/types/contracts/mocks/ERC2771ContextMock.d.ts.map new file mode 100644 index 00000000..415c9200 --- /dev/null +++ b/dist/types/contracts/mocks/ERC2771ContextMock.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ERC2771ContextMock.d.ts","sourceRoot":"","sources":["../../../../types/contracts/mocks/ERC2771ContextMock.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/mocks/ERC2771ContextMock.js b/dist/types/contracts/mocks/ERC2771ContextMock.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/mocks/ERC2771ContextMock.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/mocks/ERC2771RegistryContextMock.d.ts b/dist/types/contracts/mocks/ERC2771RegistryContextMock.d.ts new file mode 100644 index 00000000..3fe8a18b --- /dev/null +++ b/dist/types/contracts/mocks/ERC2771RegistryContextMock.d.ts @@ -0,0 +1,70 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; +export interface ERC2771RegistryContextMockInterface extends Interface { + getFunction(nameOrSignature: "execute" | "initialize" | "isTrustedForwarder" | "msgData" | "msgSender" | "msgToken"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Initialized"): EventFragment; + encodeFunctionData(functionFragment: "execute", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "initialize", values?: undefined): string; + encodeFunctionData(functionFragment: "isTrustedForwarder", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "msgData", values?: undefined): string; + encodeFunctionData(functionFragment: "msgSender", values?: undefined): string; + encodeFunctionData(functionFragment: "msgToken", values?: undefined): string; + decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isTrustedForwarder", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "msgData", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "msgSender", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "msgToken", data: BytesLike): Result; +} +export declare namespace InitializedEvent { + type InputTuple = [version: BigNumberish]; + type OutputTuple = [version: bigint]; + interface OutputObject { + version: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface ERC2771RegistryContextMock extends BaseContract { + connect(runner?: ContractRunner | null): ERC2771RegistryContextMock; + waitForDeployment(): Promise; + interface: ERC2771RegistryContextMockInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + execute: TypedContractMethod<[ + data: BytesLike + ], [ + [boolean, string] + ], "nonpayable">; + initialize: TypedContractMethod<[], [void], "nonpayable">; + isTrustedForwarder: TypedContractMethod<[ + forwarder: AddressLike + ], [ + boolean + ], "view">; + msgData: TypedContractMethod<[], [string], "view">; + msgSender: TypedContractMethod<[], [string], "view">; + msgToken: TypedContractMethod<[], [bigint], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "execute"): TypedContractMethod<[data: BytesLike], [[boolean, string]], "nonpayable">; + getFunction(nameOrSignature: "initialize"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "isTrustedForwarder"): TypedContractMethod<[forwarder: AddressLike], [boolean], "view">; + getFunction(nameOrSignature: "msgData"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "msgSender"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "msgToken"): TypedContractMethod<[], [bigint], "view">; + getEvent(key: "Initialized"): TypedContractEvent; + filters: { + "Initialized(uint8)": TypedContractEvent; + Initialized: TypedContractEvent; + }; +} +//# sourceMappingURL=ERC2771RegistryContextMock.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/mocks/ERC2771RegistryContextMock.d.ts.map b/dist/types/contracts/mocks/ERC2771RegistryContextMock.d.ts.map new file mode 100644 index 00000000..3268ba39 --- /dev/null +++ b/dist/types/contracts/mocks/ERC2771RegistryContextMock.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ERC2771RegistryContextMock.d.ts","sourceRoot":"","sources":["../../../../types/contracts/mocks/ERC2771RegistryContextMock.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/mocks/ERC2771RegistryContextMock.js b/dist/types/contracts/mocks/ERC2771RegistryContextMock.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/mocks/ERC2771RegistryContextMock.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/mocks/ERC721Mock.d.ts b/dist/types/contracts/mocks/ERC721Mock.d.ts new file mode 100644 index 00000000..c7dd3235 --- /dev/null +++ b/dist/types/contracts/mocks/ERC721Mock.d.ts @@ -0,0 +1,226 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; +export interface ERC721MockInterface extends Interface { + getFunction(nameOrSignature: "approve" | "balanceOf" | "getApproved" | "isApprovedForAll" | "mint" | "name" | "ownerOf" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "setApprovalForAll" | "supportsInterface" | "symbol" | "tokenURI" | "transferFrom"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "Transfer"): EventFragment; + encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "mint", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "name", values?: undefined): string; + encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "symbol", values?: undefined): string; + encodeFunctionData(functionFragment: "tokenURI", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; + decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "mint", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "tokenURI", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; +} +export declare namespace ApprovalEvent { + type InputTuple = [ + owner: AddressLike, + approved: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [owner: string, approved: string, tokenId: bigint]; + interface OutputObject { + owner: string; + approved: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ApprovalForAllEvent { + type InputTuple = [ + owner: AddressLike, + operator: AddressLike, + approved: boolean + ]; + type OutputTuple = [ + owner: string, + operator: string, + approved: boolean + ]; + interface OutputObject { + owner: string; + operator: string; + approved: boolean; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferEvent { + type InputTuple = [ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [from: string, to: string, tokenId: bigint]; + interface OutputObject { + from: string; + to: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface ERC721Mock extends BaseContract { + connect(runner?: ContractRunner | null): ERC721Mock; + waitForDeployment(): Promise; + interface: ERC721MockInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + approve: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; + getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + isApprovedForAll: TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + mint: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + name: TypedContractMethod<[], [string], "view">; + ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + setApprovalForAll: TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + symbol: TypedContractMethod<[], [string], "view">; + tokenURI: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + transferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "approve"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; + getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "mint"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "symbol"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "tokenURI"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getEvent(key: "Approval"): TypedContractEvent; + getEvent(key: "ApprovalForAll"): TypedContractEvent; + getEvent(key: "Transfer"): TypedContractEvent; + filters: { + "Approval(address,address,uint256)": TypedContractEvent; + Approval: TypedContractEvent; + "ApprovalForAll(address,address,bool)": TypedContractEvent; + ApprovalForAll: TypedContractEvent; + "Transfer(address,address,uint256)": TypedContractEvent; + Transfer: TypedContractEvent; + }; +} +//# sourceMappingURL=ERC721Mock.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/mocks/ERC721Mock.d.ts.map b/dist/types/contracts/mocks/ERC721Mock.d.ts.map new file mode 100644 index 00000000..6eafcebf --- /dev/null +++ b/dist/types/contracts/mocks/ERC721Mock.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ERC721Mock.d.ts","sourceRoot":"","sources":["../../../../types/contracts/mocks/ERC721Mock.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/mocks/ERC721Mock.js b/dist/types/contracts/mocks/ERC721Mock.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/mocks/ERC721Mock.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/mocks/ERC721ReceiverMock.d.ts b/dist/types/contracts/mocks/ERC721ReceiverMock.d.ts new file mode 100644 index 00000000..ba3b78c7 --- /dev/null +++ b/dist/types/contracts/mocks/ERC721ReceiverMock.d.ts @@ -0,0 +1,40 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../common"; +export interface ERC721ReceiverMockInterface extends Interface { + getFunction(nameOrSignature: "onERC721Received"): FunctionFragment; + encodeFunctionData(functionFragment: "onERC721Received", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; + decodeFunctionResult(functionFragment: "onERC721Received", data: BytesLike): Result; +} +export interface ERC721ReceiverMock extends BaseContract { + connect(runner?: ContractRunner | null): ERC721ReceiverMock; + waitForDeployment(): Promise; + interface: ERC721ReceiverMockInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + onERC721Received: TypedContractMethod<[ + arg0: AddressLike, + arg1: AddressLike, + arg2: BigNumberish, + arg3: BytesLike + ], [ + string + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "onERC721Received"): TypedContractMethod<[ + arg0: AddressLike, + arg1: AddressLike, + arg2: BigNumberish, + arg3: BytesLike + ], [ + string + ], "view">; + filters: {}; +} +//# sourceMappingURL=ERC721ReceiverMock.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/mocks/ERC721ReceiverMock.d.ts.map b/dist/types/contracts/mocks/ERC721ReceiverMock.d.ts.map new file mode 100644 index 00000000..df8188ed --- /dev/null +++ b/dist/types/contracts/mocks/ERC721ReceiverMock.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ERC721ReceiverMock.d.ts","sourceRoot":"","sources":["../../../../types/contracts/mocks/ERC721ReceiverMock.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/mocks/ERC721ReceiverMock.js b/dist/types/contracts/mocks/ERC721ReceiverMock.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/mocks/ERC721ReceiverMock.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/mocks/MinterRoleMock.d.ts b/dist/types/contracts/mocks/MinterRoleMock.d.ts new file mode 100644 index 00000000..5de73743 --- /dev/null +++ b/dist/types/contracts/mocks/MinterRoleMock.d.ts @@ -0,0 +1,261 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; +export interface MinterRoleMockInterface extends Interface { + getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE" | "MINTER_ROLE" | "addMinter" | "addMinters" | "closeMinter" | "getRoleAdmin" | "grantRole" | "hasRole" | "initialize" | "isMinter" | "olnyMinterFunc" | "owner" | "removeMinter" | "removeMinters" | "renounceMinter" | "renounceOwnership" | "renounceRole" | "revokeRole" | "rotateMinter" | "supportsInterface" | "transferOwnership"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Initialized" | "OwnershipTransferred" | "RoleAdminChanged" | "RoleGranted" | "RoleRevoked"): EventFragment; + encodeFunctionData(functionFragment: "DEFAULT_ADMIN_ROLE", values?: undefined): string; + encodeFunctionData(functionFragment: "MINTER_ROLE", values?: undefined): string; + encodeFunctionData(functionFragment: "addMinter", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "addMinters", values: [AddressLike[]]): string; + encodeFunctionData(functionFragment: "closeMinter", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "getRoleAdmin", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "grantRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "hasRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "initialize", values?: undefined): string; + encodeFunctionData(functionFragment: "isMinter", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "olnyMinterFunc", values?: undefined): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData(functionFragment: "removeMinter", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "removeMinters", values: [AddressLike[]]): string; + encodeFunctionData(functionFragment: "renounceMinter", values?: undefined): string; + encodeFunctionData(functionFragment: "renounceOwnership", values?: undefined): string; + encodeFunctionData(functionFragment: "renounceRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "revokeRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "rotateMinter", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "transferOwnership", values: [AddressLike]): string; + decodeFunctionResult(functionFragment: "DEFAULT_ADMIN_ROLE", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "MINTER_ROLE", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "addMinter", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "addMinters", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "closeMinter", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getRoleAdmin", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "grantRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "hasRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isMinter", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "olnyMinterFunc", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "removeMinter", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "removeMinters", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceMinter", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceOwnership", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "revokeRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "rotateMinter", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result; +} +export declare namespace InitializedEvent { + type InputTuple = [version: BigNumberish]; + type OutputTuple = [version: bigint]; + interface OutputObject { + version: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace OwnershipTransferredEvent { + type InputTuple = [previousOwner: AddressLike, newOwner: AddressLike]; + type OutputTuple = [previousOwner: string, newOwner: string]; + interface OutputObject { + previousOwner: string; + newOwner: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RoleAdminChangedEvent { + type InputTuple = [ + role: BytesLike, + previousAdminRole: BytesLike, + newAdminRole: BytesLike + ]; + type OutputTuple = [ + role: string, + previousAdminRole: string, + newAdminRole: string + ]; + interface OutputObject { + role: string; + previousAdminRole: string; + newAdminRole: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RoleGrantedEvent { + type InputTuple = [ + role: BytesLike, + account: AddressLike, + sender: AddressLike + ]; + type OutputTuple = [role: string, account: string, sender: string]; + interface OutputObject { + role: string; + account: string; + sender: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RoleRevokedEvent { + type InputTuple = [ + role: BytesLike, + account: AddressLike, + sender: AddressLike + ]; + type OutputTuple = [role: string, account: string, sender: string]; + interface OutputObject { + role: string; + account: string; + sender: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface MinterRoleMock extends BaseContract { + connect(runner?: ContractRunner | null): MinterRoleMock; + waitForDeployment(): Promise; + interface: MinterRoleMockInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + DEFAULT_ADMIN_ROLE: TypedContractMethod<[], [string], "view">; + MINTER_ROLE: TypedContractMethod<[], [string], "view">; + addMinter: TypedContractMethod<[account: AddressLike], [void], "nonpayable">; + addMinters: TypedContractMethod<[ + accounts: AddressLike[] + ], [ + void + ], "nonpayable">; + closeMinter: TypedContractMethod<[receiver: AddressLike], [void], "payable">; + getRoleAdmin: TypedContractMethod<[role: BytesLike], [string], "view">; + grantRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + hasRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + boolean + ], "view">; + initialize: TypedContractMethod<[], [void], "nonpayable">; + isMinter: TypedContractMethod<[account: AddressLike], [boolean], "view">; + olnyMinterFunc: TypedContractMethod<[], [void], "nonpayable">; + owner: TypedContractMethod<[], [string], "view">; + removeMinter: TypedContractMethod<[ + account: AddressLike + ], [ + void + ], "nonpayable">; + removeMinters: TypedContractMethod<[ + accounts: AddressLike[] + ], [ + void + ], "nonpayable">; + renounceMinter: TypedContractMethod<[], [void], "nonpayable">; + renounceOwnership: TypedContractMethod<[], [void], "nonpayable">; + renounceRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + revokeRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + rotateMinter: TypedContractMethod<[receiver: AddressLike], [void], "payable">; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + transferOwnership: TypedContractMethod<[ + newOwner: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "MINTER_ROLE"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "addMinter"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "addMinters"): TypedContractMethod<[accounts: AddressLike[]], [void], "nonpayable">; + getFunction(nameOrSignature: "closeMinter"): TypedContractMethod<[receiver: AddressLike], [void], "payable">; + getFunction(nameOrSignature: "getRoleAdmin"): TypedContractMethod<[role: BytesLike], [string], "view">; + getFunction(nameOrSignature: "grantRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "hasRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "initialize"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "isMinter"): TypedContractMethod<[account: AddressLike], [boolean], "view">; + getFunction(nameOrSignature: "olnyMinterFunc"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "owner"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "removeMinter"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "removeMinters"): TypedContractMethod<[accounts: AddressLike[]], [void], "nonpayable">; + getFunction(nameOrSignature: "renounceMinter"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "renounceOwnership"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "renounceRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "revokeRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "rotateMinter"): TypedContractMethod<[receiver: AddressLike], [void], "payable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "transferOwnership"): TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">; + getEvent(key: "Initialized"): TypedContractEvent; + getEvent(key: "OwnershipTransferred"): TypedContractEvent; + getEvent(key: "RoleAdminChanged"): TypedContractEvent; + getEvent(key: "RoleGranted"): TypedContractEvent; + getEvent(key: "RoleRevoked"): TypedContractEvent; + filters: { + "Initialized(uint8)": TypedContractEvent; + Initialized: TypedContractEvent; + "OwnershipTransferred(address,address)": TypedContractEvent; + OwnershipTransferred: TypedContractEvent; + "RoleAdminChanged(bytes32,bytes32,bytes32)": TypedContractEvent; + RoleAdminChanged: TypedContractEvent; + "RoleGranted(bytes32,address,address)": TypedContractEvent; + RoleGranted: TypedContractEvent; + "RoleRevoked(bytes32,address,address)": TypedContractEvent; + RoleRevoked: TypedContractEvent; + }; +} +//# sourceMappingURL=MinterRoleMock.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/mocks/MinterRoleMock.d.ts.map b/dist/types/contracts/mocks/MinterRoleMock.d.ts.map new file mode 100644 index 00000000..3d45b226 --- /dev/null +++ b/dist/types/contracts/mocks/MinterRoleMock.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"MinterRoleMock.d.ts","sourceRoot":"","sources":["../../../../types/contracts/mocks/MinterRoleMock.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/mocks/MinterRoleMock.js b/dist/types/contracts/mocks/MinterRoleMock.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/mocks/MinterRoleMock.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/mocks/MintingManagerMock.d.ts b/dist/types/contracts/mocks/MintingManagerMock.d.ts new file mode 100644 index 00000000..a95274bf --- /dev/null +++ b/dist/types/contracts/mocks/MintingManagerMock.d.ts @@ -0,0 +1,769 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; +export interface MintingManagerMockInterface extends Interface { + getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE" | "MINTER_ROLE" | "NAME" | "VERSION" | "addMinter" | "addMinters" | "addProxyReaders" | "addTld" | "buy" | "buyForErc20" | "claim" | "claimTo" | "claimToWithRecords" | "closeMinter" | "cnsMintingController" | "cnsResolver" | "cnsURIPrefixController" | "getRoleAdmin" | "grantRole" | "hasRole" | "initialize" | "isBlocked" | "isMinter" | "isTrustedForwarder" | "issueExpirableWithRecords" | "issueWithRecords" | "owner" | "pause" | "paused" | "removeMinter" | "removeMinters" | "removeTld" | "renew" | "renounceMinter" | "renounceOwnership" | "renounceRole" | "revoke" | "revokeRole" | "rotateMinter" | "setForwarder" | "setOperator" | "setTokenURIPrefix" | "supportsInterface" | "transferOwnership" | "unpause" | "unsOperator" | "unsRegistry" | "upgradeAll" | "withdraw(address)" | "withdraw(address,address)"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "AdminChanged" | "Blocked" | "BlocklistDisabled" | "BlocklistEnabled" | "DomainPurchase" | "Initialized" | "NewTld" | "OwnershipTransferred" | "Paused" | "RemoveTld" | "RoleAdminChanged" | "RoleGranted" | "RoleRevoked" | "Unpaused" | "Upgraded" | "Withdrawal"): EventFragment; + encodeFunctionData(functionFragment: "DEFAULT_ADMIN_ROLE", values?: undefined): string; + encodeFunctionData(functionFragment: "MINTER_ROLE", values?: undefined): string; + encodeFunctionData(functionFragment: "NAME", values?: undefined): string; + encodeFunctionData(functionFragment: "VERSION", values?: undefined): string; + encodeFunctionData(functionFragment: "addMinter", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "addMinters", values: [AddressLike[]]): string; + encodeFunctionData(functionFragment: "addProxyReaders", values: [AddressLike[]]): string; + encodeFunctionData(functionFragment: "addTld", values: [string, boolean]): string; + encodeFunctionData(functionFragment: "buy", values: [ + AddressLike, + string[], + string[], + string[], + BigNumberish, + BigNumberish, + BytesLike + ]): string; + encodeFunctionData(functionFragment: "buyForErc20", values: [ + AddressLike, + string[], + string[], + string[], + BigNumberish, + AddressLike, + BigNumberish, + BytesLike + ]): string; + encodeFunctionData(functionFragment: "claim", values: [BigNumberish, string]): string; + encodeFunctionData(functionFragment: "claimTo", values: [AddressLike, BigNumberish, string]): string; + encodeFunctionData(functionFragment: "claimToWithRecords", values: [AddressLike, BigNumberish, string, string[], string[]]): string; + encodeFunctionData(functionFragment: "closeMinter", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "cnsMintingController", values?: undefined): string; + encodeFunctionData(functionFragment: "cnsResolver", values?: undefined): string; + encodeFunctionData(functionFragment: "cnsURIPrefixController", values?: undefined): string; + encodeFunctionData(functionFragment: "getRoleAdmin", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "grantRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "hasRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "initialize", values: [ + AddressLike, + AddressLike, + AddressLike, + AddressLike, + AddressLike, + AddressLike + ]): string; + encodeFunctionData(functionFragment: "isBlocked", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "isMinter", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "isTrustedForwarder", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "issueExpirableWithRecords", values: [AddressLike, string[], string[], string[], BigNumberish, boolean]): string; + encodeFunctionData(functionFragment: "issueWithRecords", values: [AddressLike, string[], string[], string[], boolean]): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData(functionFragment: "pause", values?: undefined): string; + encodeFunctionData(functionFragment: "paused", values?: undefined): string; + encodeFunctionData(functionFragment: "removeMinter", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "removeMinters", values: [AddressLike[]]): string; + encodeFunctionData(functionFragment: "removeTld", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "renew", values: [BigNumberish, BigNumberish]): string; + encodeFunctionData(functionFragment: "renounceMinter", values?: undefined): string; + encodeFunctionData(functionFragment: "renounceOwnership", values?: undefined): string; + encodeFunctionData(functionFragment: "renounceRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "revoke", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "revokeRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "rotateMinter", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "setForwarder", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "setOperator", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "setTokenURIPrefix", values: [string]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "transferOwnership", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "unpause", values?: undefined): string; + encodeFunctionData(functionFragment: "unsOperator", values?: undefined): string; + encodeFunctionData(functionFragment: "unsRegistry", values?: undefined): string; + encodeFunctionData(functionFragment: "upgradeAll", values: [BigNumberish[]]): string; + encodeFunctionData(functionFragment: "withdraw(address)", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "withdraw(address,address)", values: [AddressLike, AddressLike]): string; + decodeFunctionResult(functionFragment: "DEFAULT_ADMIN_ROLE", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "MINTER_ROLE", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "NAME", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "VERSION", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "addMinter", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "addMinters", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "addProxyReaders", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "addTld", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "buy", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "buyForErc20", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "claim", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "claimTo", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "claimToWithRecords", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "closeMinter", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "cnsMintingController", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "cnsResolver", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "cnsURIPrefixController", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getRoleAdmin", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "grantRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "hasRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isBlocked", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isMinter", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isTrustedForwarder", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "issueExpirableWithRecords", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "issueWithRecords", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "pause", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "paused", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "removeMinter", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "removeMinters", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "removeTld", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renew", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceMinter", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceOwnership", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "revoke", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "revokeRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "rotateMinter", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setForwarder", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setOperator", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setTokenURIPrefix", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "unpause", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "unsOperator", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "unsRegistry", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "upgradeAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "withdraw(address)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "withdraw(address,address)", data: BytesLike): Result; +} +export declare namespace AdminChangedEvent { + type InputTuple = [previousAdmin: AddressLike, newAdmin: AddressLike]; + type OutputTuple = [previousAdmin: string, newAdmin: string]; + interface OutputObject { + previousAdmin: string; + newAdmin: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace BlockedEvent { + type InputTuple = [tokenId: BigNumberish]; + type OutputTuple = [tokenId: bigint]; + interface OutputObject { + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace BlocklistDisabledEvent { + type InputTuple = [account: AddressLike]; + type OutputTuple = [account: string]; + interface OutputObject { + account: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace BlocklistEnabledEvent { + type InputTuple = [account: AddressLike]; + type OutputTuple = [account: string]; + interface OutputObject { + account: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace DomainPurchaseEvent { + type InputTuple = [ + tokenId: BigNumberish, + sender: AddressLike, + owner: AddressLike, + price: BigNumberish, + token: AddressLike + ]; + type OutputTuple = [ + tokenId: bigint, + sender: string, + owner: string, + price: bigint, + token: string + ]; + interface OutputObject { + tokenId: bigint; + sender: string; + owner: string; + price: bigint; + token: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace InitializedEvent { + type InputTuple = [version: BigNumberish]; + type OutputTuple = [version: bigint]; + interface OutputObject { + version: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NewTldEvent { + type InputTuple = [tokenId: BigNumberish, tld: string]; + type OutputTuple = [tokenId: bigint, tld: string]; + interface OutputObject { + tokenId: bigint; + tld: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace OwnershipTransferredEvent { + type InputTuple = [previousOwner: AddressLike, newOwner: AddressLike]; + type OutputTuple = [previousOwner: string, newOwner: string]; + interface OutputObject { + previousOwner: string; + newOwner: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace PausedEvent { + type InputTuple = [account: AddressLike]; + type OutputTuple = [account: string]; + interface OutputObject { + account: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RemoveTldEvent { + type InputTuple = [tokenId: BigNumberish]; + type OutputTuple = [tokenId: bigint]; + interface OutputObject { + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RoleAdminChangedEvent { + type InputTuple = [ + role: BytesLike, + previousAdminRole: BytesLike, + newAdminRole: BytesLike + ]; + type OutputTuple = [ + role: string, + previousAdminRole: string, + newAdminRole: string + ]; + interface OutputObject { + role: string; + previousAdminRole: string; + newAdminRole: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RoleGrantedEvent { + type InputTuple = [ + role: BytesLike, + account: AddressLike, + sender: AddressLike + ]; + type OutputTuple = [role: string, account: string, sender: string]; + interface OutputObject { + role: string; + account: string; + sender: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RoleRevokedEvent { + type InputTuple = [ + role: BytesLike, + account: AddressLike, + sender: AddressLike + ]; + type OutputTuple = [role: string, account: string, sender: string]; + interface OutputObject { + role: string; + account: string; + sender: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace UnpausedEvent { + type InputTuple = [account: AddressLike]; + type OutputTuple = [account: string]; + interface OutputObject { + account: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace UpgradedEvent { + type InputTuple = [implementation: AddressLike]; + type OutputTuple = [implementation: string]; + interface OutputObject { + implementation: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace WithdrawalEvent { + type InputTuple = [ + recepient: AddressLike, + value: BigNumberish, + token: AddressLike + ]; + type OutputTuple = [recepient: string, value: bigint, token: string]; + interface OutputObject { + recepient: string; + value: bigint; + token: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface MintingManagerMock extends BaseContract { + connect(runner?: ContractRunner | null): MintingManagerMock; + waitForDeployment(): Promise; + interface: MintingManagerMockInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + DEFAULT_ADMIN_ROLE: TypedContractMethod<[], [string], "view">; + MINTER_ROLE: TypedContractMethod<[], [string], "view">; + NAME: TypedContractMethod<[], [string], "view">; + VERSION: TypedContractMethod<[], [string], "view">; + addMinter: TypedContractMethod<[account: AddressLike], [void], "nonpayable">; + addMinters: TypedContractMethod<[ + accounts: AddressLike[] + ], [ + void + ], "nonpayable">; + addProxyReaders: TypedContractMethod<[ + addrs: AddressLike[] + ], [ + void + ], "nonpayable">; + addTld: TypedContractMethod<[ + tld: string, + isExpirable: boolean + ], [ + void + ], "nonpayable">; + buy: TypedContractMethod<[ + owner: AddressLike, + labels: string[], + keys: string[], + values: string[], + expiry: BigNumberish, + price: BigNumberish, + signature: BytesLike + ], [ + void + ], "payable">; + buyForErc20: TypedContractMethod<[ + owner: AddressLike, + labels: string[], + keys: string[], + values: string[], + expiry: BigNumberish, + token: AddressLike, + price: BigNumberish, + signature: BytesLike + ], [ + void + ], "nonpayable">; + claim: TypedContractMethod<[ + tld: BigNumberish, + label: string + ], [ + void + ], "nonpayable">; + claimTo: TypedContractMethod<[ + to: AddressLike, + tld: BigNumberish, + label: string + ], [ + void + ], "nonpayable">; + claimToWithRecords: TypedContractMethod<[ + to: AddressLike, + tld: BigNumberish, + label: string, + keys: string[], + values: string[] + ], [ + void + ], "nonpayable">; + closeMinter: TypedContractMethod<[receiver: AddressLike], [void], "payable">; + cnsMintingController: TypedContractMethod<[], [string], "view">; + cnsResolver: TypedContractMethod<[], [string], "view">; + cnsURIPrefixController: TypedContractMethod<[], [string], "view">; + getRoleAdmin: TypedContractMethod<[role: BytesLike], [string], "view">; + grantRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + hasRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + boolean + ], "view">; + initialize: TypedContractMethod<[ + unsRegistry_: AddressLike, + cnsMintingController_: AddressLike, + cnsURIPrefixController_: AddressLike, + cnsResolver_: AddressLike, + unsOperator_: AddressLike, + forwarder: AddressLike + ], [ + void + ], "nonpayable">; + isBlocked: TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; + isMinter: TypedContractMethod<[account: AddressLike], [boolean], "view">; + isTrustedForwarder: TypedContractMethod<[ + forwarder: AddressLike + ], [ + boolean + ], "view">; + issueExpirableWithRecords: TypedContractMethod<[ + to: AddressLike, + labels: string[], + keys: string[], + values: string[], + expiry: BigNumberish, + withReverse: boolean + ], [ + void + ], "nonpayable">; + issueWithRecords: TypedContractMethod<[ + to: AddressLike, + labels: string[], + keys: string[], + values: string[], + withReverse: boolean + ], [ + void + ], "nonpayable">; + owner: TypedContractMethod<[], [string], "view">; + pause: TypedContractMethod<[], [void], "nonpayable">; + paused: TypedContractMethod<[], [boolean], "view">; + removeMinter: TypedContractMethod<[ + account: AddressLike + ], [ + void + ], "nonpayable">; + removeMinters: TypedContractMethod<[ + accounts: AddressLike[] + ], [ + void + ], "nonpayable">; + removeTld: TypedContractMethod<[tld: BigNumberish], [void], "nonpayable">; + renew: TypedContractMethod<[ + expiry: BigNumberish, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + renounceMinter: TypedContractMethod<[], [void], "nonpayable">; + renounceOwnership: TypedContractMethod<[], [void], "nonpayable">; + renounceRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + revoke: TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; + revokeRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + rotateMinter: TypedContractMethod<[receiver: AddressLike], [void], "payable">; + setForwarder: TypedContractMethod<[ + forwarder: AddressLike + ], [ + void + ], "nonpayable">; + setOperator: TypedContractMethod<[ + operator: AddressLike + ], [ + void + ], "nonpayable">; + setTokenURIPrefix: TypedContractMethod<[ + prefix: string + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + transferOwnership: TypedContractMethod<[ + newOwner: AddressLike + ], [ + void + ], "nonpayable">; + unpause: TypedContractMethod<[], [void], "nonpayable">; + unsOperator: TypedContractMethod<[], [string], "view">; + unsRegistry: TypedContractMethod<[], [string], "view">; + upgradeAll: TypedContractMethod<[ + tokenIds: BigNumberish[] + ], [ + void + ], "nonpayable">; + "withdraw(address)": TypedContractMethod<[ + recepient: AddressLike + ], [ + void + ], "nonpayable">; + "withdraw(address,address)": TypedContractMethod<[ + token: AddressLike, + recepient: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "MINTER_ROLE"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "NAME"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "VERSION"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "addMinter"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "addMinters"): TypedContractMethod<[accounts: AddressLike[]], [void], "nonpayable">; + getFunction(nameOrSignature: "addProxyReaders"): TypedContractMethod<[addrs: AddressLike[]], [void], "nonpayable">; + getFunction(nameOrSignature: "addTld"): TypedContractMethod<[ + tld: string, + isExpirable: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "buy"): TypedContractMethod<[ + owner: AddressLike, + labels: string[], + keys: string[], + values: string[], + expiry: BigNumberish, + price: BigNumberish, + signature: BytesLike + ], [ + void + ], "payable">; + getFunction(nameOrSignature: "buyForErc20"): TypedContractMethod<[ + owner: AddressLike, + labels: string[], + keys: string[], + values: string[], + expiry: BigNumberish, + token: AddressLike, + price: BigNumberish, + signature: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "claim"): TypedContractMethod<[ + tld: BigNumberish, + label: string + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "claimTo"): TypedContractMethod<[ + to: AddressLike, + tld: BigNumberish, + label: string + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "claimToWithRecords"): TypedContractMethod<[ + to: AddressLike, + tld: BigNumberish, + label: string, + keys: string[], + values: string[] + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "closeMinter"): TypedContractMethod<[receiver: AddressLike], [void], "payable">; + getFunction(nameOrSignature: "cnsMintingController"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "cnsResolver"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "cnsURIPrefixController"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "getRoleAdmin"): TypedContractMethod<[role: BytesLike], [string], "view">; + getFunction(nameOrSignature: "grantRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "hasRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "initialize"): TypedContractMethod<[ + unsRegistry_: AddressLike, + cnsMintingController_: AddressLike, + cnsURIPrefixController_: AddressLike, + cnsResolver_: AddressLike, + unsOperator_: AddressLike, + forwarder: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "isBlocked"): TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; + getFunction(nameOrSignature: "isMinter"): TypedContractMethod<[account: AddressLike], [boolean], "view">; + getFunction(nameOrSignature: "isTrustedForwarder"): TypedContractMethod<[forwarder: AddressLike], [boolean], "view">; + getFunction(nameOrSignature: "issueExpirableWithRecords"): TypedContractMethod<[ + to: AddressLike, + labels: string[], + keys: string[], + values: string[], + expiry: BigNumberish, + withReverse: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "issueWithRecords"): TypedContractMethod<[ + to: AddressLike, + labels: string[], + keys: string[], + values: string[], + withReverse: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "owner"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "pause"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "paused"): TypedContractMethod<[], [boolean], "view">; + getFunction(nameOrSignature: "removeMinter"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "removeMinters"): TypedContractMethod<[accounts: AddressLike[]], [void], "nonpayable">; + getFunction(nameOrSignature: "removeTld"): TypedContractMethod<[tld: BigNumberish], [void], "nonpayable">; + getFunction(nameOrSignature: "renew"): TypedContractMethod<[ + expiry: BigNumberish, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "renounceMinter"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "renounceOwnership"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "renounceRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "revoke"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; + getFunction(nameOrSignature: "revokeRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "rotateMinter"): TypedContractMethod<[receiver: AddressLike], [void], "payable">; + getFunction(nameOrSignature: "setForwarder"): TypedContractMethod<[forwarder: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "setOperator"): TypedContractMethod<[operator: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "setTokenURIPrefix"): TypedContractMethod<[prefix: string], [void], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "transferOwnership"): TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "unpause"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "unsOperator"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "unsRegistry"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "upgradeAll"): TypedContractMethod<[tokenIds: BigNumberish[]], [void], "nonpayable">; + getFunction(nameOrSignature: "withdraw(address)"): TypedContractMethod<[recepient: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "withdraw(address,address)"): TypedContractMethod<[ + token: AddressLike, + recepient: AddressLike + ], [ + void + ], "nonpayable">; + getEvent(key: "AdminChanged"): TypedContractEvent; + getEvent(key: "Blocked"): TypedContractEvent; + getEvent(key: "BlocklistDisabled"): TypedContractEvent; + getEvent(key: "BlocklistEnabled"): TypedContractEvent; + getEvent(key: "DomainPurchase"): TypedContractEvent; + getEvent(key: "Initialized"): TypedContractEvent; + getEvent(key: "NewTld"): TypedContractEvent; + getEvent(key: "OwnershipTransferred"): TypedContractEvent; + getEvent(key: "Paused"): TypedContractEvent; + getEvent(key: "RemoveTld"): TypedContractEvent; + getEvent(key: "RoleAdminChanged"): TypedContractEvent; + getEvent(key: "RoleGranted"): TypedContractEvent; + getEvent(key: "RoleRevoked"): TypedContractEvent; + getEvent(key: "Unpaused"): TypedContractEvent; + getEvent(key: "Upgraded"): TypedContractEvent; + getEvent(key: "Withdrawal"): TypedContractEvent; + filters: { + "AdminChanged(address,address)": TypedContractEvent; + AdminChanged: TypedContractEvent; + "Blocked(uint256)": TypedContractEvent; + Blocked: TypedContractEvent; + "BlocklistDisabled(address)": TypedContractEvent; + BlocklistDisabled: TypedContractEvent; + "BlocklistEnabled(address)": TypedContractEvent; + BlocklistEnabled: TypedContractEvent; + "DomainPurchase(uint256,address,address,uint256,address)": TypedContractEvent; + DomainPurchase: TypedContractEvent; + "Initialized(uint8)": TypedContractEvent; + Initialized: TypedContractEvent; + "NewTld(uint256,string)": TypedContractEvent; + NewTld: TypedContractEvent; + "OwnershipTransferred(address,address)": TypedContractEvent; + OwnershipTransferred: TypedContractEvent; + "Paused(address)": TypedContractEvent; + Paused: TypedContractEvent; + "RemoveTld(uint256)": TypedContractEvent; + RemoveTld: TypedContractEvent; + "RoleAdminChanged(bytes32,bytes32,bytes32)": TypedContractEvent; + RoleAdminChanged: TypedContractEvent; + "RoleGranted(bytes32,address,address)": TypedContractEvent; + RoleGranted: TypedContractEvent; + "RoleRevoked(bytes32,address,address)": TypedContractEvent; + RoleRevoked: TypedContractEvent; + "Unpaused(address)": TypedContractEvent; + Unpaused: TypedContractEvent; + "Upgraded(address)": TypedContractEvent; + Upgraded: TypedContractEvent; + "Withdrawal(address,uint256,address)": TypedContractEvent; + Withdrawal: TypedContractEvent; + }; +} +//# sourceMappingURL=MintingManagerMock.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/mocks/MintingManagerMock.d.ts.map b/dist/types/contracts/mocks/MintingManagerMock.d.ts.map new file mode 100644 index 00000000..595171b1 --- /dev/null +++ b/dist/types/contracts/mocks/MintingManagerMock.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"MintingManagerMock.d.ts","sourceRoot":"","sources":["../../../../types/contracts/mocks/MintingManagerMock.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/mocks/MintingManagerMock.js b/dist/types/contracts/mocks/MintingManagerMock.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/mocks/MintingManagerMock.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/mocks/UNSRegistryForwarderMock.d.ts b/dist/types/contracts/mocks/UNSRegistryForwarderMock.d.ts new file mode 100644 index 00000000..3a229a93 --- /dev/null +++ b/dist/types/contracts/mocks/UNSRegistryForwarderMock.d.ts @@ -0,0 +1,93 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; +export declare namespace IForwarder { + type ForwardRequestStruct = { + from: AddressLike; + nonce: BigNumberish; + tokenId: BigNumberish; + data: BytesLike; + }; + type ForwardRequestStructOutput = [ + from: string, + nonce: bigint, + tokenId: bigint, + data: string + ] & { + from: string; + nonce: bigint; + tokenId: bigint; + data: string; + }; +} +export interface UNSRegistryForwarderMockInterface extends Interface { + getFunction(nameOrSignature: "execute" | "initialize" | "nonceOf" | "verify"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Initialized"): EventFragment; + encodeFunctionData(functionFragment: "execute", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; + encodeFunctionData(functionFragment: "initialize", values?: undefined): string; + encodeFunctionData(functionFragment: "nonceOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "verify", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; + decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "nonceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "verify", data: BytesLike): Result; +} +export declare namespace InitializedEvent { + type InputTuple = [version: BigNumberish]; + type OutputTuple = [version: bigint]; + interface OutputObject { + version: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface UNSRegistryForwarderMock extends BaseContract { + connect(runner?: ContractRunner | null): UNSRegistryForwarderMock; + waitForDeployment(): Promise; + interface: UNSRegistryForwarderMockInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + execute: TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + string + ], "nonpayable">; + initialize: TypedContractMethod<[], [void], "nonpayable">; + nonceOf: TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; + verify: TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + boolean + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "execute"): TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + string + ], "nonpayable">; + getFunction(nameOrSignature: "initialize"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "nonceOf"): TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; + getFunction(nameOrSignature: "verify"): TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + boolean + ], "view">; + getEvent(key: "Initialized"): TypedContractEvent; + filters: { + "Initialized(uint8)": TypedContractEvent; + Initialized: TypedContractEvent; + }; +} +//# sourceMappingURL=UNSRegistryForwarderMock.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/mocks/UNSRegistryForwarderMock.d.ts.map b/dist/types/contracts/mocks/UNSRegistryForwarderMock.d.ts.map new file mode 100644 index 00000000..9e131a4a --- /dev/null +++ b/dist/types/contracts/mocks/UNSRegistryForwarderMock.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"UNSRegistryForwarderMock.d.ts","sourceRoot":"","sources":["../../../../types/contracts/mocks/UNSRegistryForwarderMock.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/mocks/UNSRegistryForwarderMock.js b/dist/types/contracts/mocks/UNSRegistryForwarderMock.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/mocks/UNSRegistryForwarderMock.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/mocks/UNSRegistryMock.d.ts b/dist/types/contracts/mocks/UNSRegistryMock.d.ts new file mode 100644 index 00000000..57338070 --- /dev/null +++ b/dist/types/contracts/mocks/UNSRegistryMock.d.ts @@ -0,0 +1,919 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; +export declare namespace IForwarder { + type ForwardRequestStruct = { + from: AddressLike; + nonce: BigNumberish; + tokenId: BigNumberish; + data: BytesLike; + }; + type ForwardRequestStructOutput = [ + from: string, + nonce: bigint, + tokenId: bigint, + data: string + ] & { + from: string; + nonce: bigint; + tokenId: bigint; + data: string; + }; +} +export interface UNSRegistryMockInterface extends Interface { + getFunction(nameOrSignature: "BATCH_LIMIT" | "NAME" | "VERSION" | "addKey" | "addProxyReader" | "approve" | "balanceOf" | "burn" | "deposit" | "depositToPolygon" | "execute" | "exists" | "expiryOf" | "get" | "getApproved" | "getByHash" | "getKey" | "getKeys" | "getMany" | "getManyByHash" | "getTokenName" | "initialize" | "isApprovedForAll" | "isApprovedOrOwner" | "isExpired" | "isTrustedForwarder" | "mint(address,uint256)" | "mint(address,uint256,bytes)" | "mintTLD" | "mintWithRecords" | "multicall" | "name" | "namehash" | "nonceOf" | "onERC721Received" | "ownerOf" | "reconfigure" | "removeReverse" | "reset" | "resolverOf" | "reverseNameOf" | "reverseOf" | "root" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "set" | "setApprovalForAll" | "setByHash" | "setExpiry" | "setMany" | "setManyByHash" | "setOwner" | "setReverse" | "setTokenURIPrefix" | "supportsInterface" | "symbol" | "tokenURI" | "transferFrom" | "unlock" | "unlockWithRecords" | "upgradeAll" | "verify" | "withdrawFromPolygon"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "AdminChanged" | "Approval" | "ApprovalForAll" | "Initialized" | "NewKey" | "NewURI" | "NewURIPrefix" | "RemoveReverse" | "ResetRecords" | "Set" | "SetExpiry" | "SetReverse" | "Transfer" | "Upgraded"): EventFragment; + encodeFunctionData(functionFragment: "BATCH_LIMIT", values?: undefined): string; + encodeFunctionData(functionFragment: "NAME", values?: undefined): string; + encodeFunctionData(functionFragment: "VERSION", values?: undefined): string; + encodeFunctionData(functionFragment: "addKey", values: [string]): string; + encodeFunctionData(functionFragment: "addProxyReader", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "burn", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "deposit", values: [AddressLike, BytesLike]): string; + encodeFunctionData(functionFragment: "depositToPolygon", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "execute", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; + encodeFunctionData(functionFragment: "exists", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "expiryOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "get", values: [string, BigNumberish]): string; + encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "getByHash", values: [BigNumberish, BigNumberish]): string; + encodeFunctionData(functionFragment: "getKey", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "getKeys", values: [BigNumberish[]]): string; + encodeFunctionData(functionFragment: "getMany", values: [string[], BigNumberish]): string; + encodeFunctionData(functionFragment: "getManyByHash", values: [BigNumberish[], BigNumberish]): string; + encodeFunctionData(functionFragment: "getTokenName", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "initialize", values: [AddressLike, AddressLike, AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "isApprovedOrOwner", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "isExpired", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "isTrustedForwarder", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "mint(address,uint256)", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "mint(address,uint256,bytes)", values: [AddressLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "mintTLD", values: [BigNumberish, string]): string; + encodeFunctionData(functionFragment: "mintWithRecords", values: [AddressLike, string[], string[], string[], boolean]): string; + encodeFunctionData(functionFragment: "multicall", values: [BytesLike[]]): string; + encodeFunctionData(functionFragment: "name", values?: undefined): string; + encodeFunctionData(functionFragment: "namehash", values: [string[]]): string; + encodeFunctionData(functionFragment: "nonceOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "onERC721Received", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "reconfigure", values: [string[], string[], BigNumberish]): string; + encodeFunctionData(functionFragment: "removeReverse", values?: undefined): string; + encodeFunctionData(functionFragment: "reset", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "resolverOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "reverseNameOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "reverseOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "root", values?: undefined): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "set", values: [string, string, BigNumberish]): string; + encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; + encodeFunctionData(functionFragment: "setByHash", values: [BigNumberish, string, BigNumberish]): string; + encodeFunctionData(functionFragment: "setExpiry", values: [BigNumberish, BigNumberish]): string; + encodeFunctionData(functionFragment: "setMany", values: [string[], string[], BigNumberish]): string; + encodeFunctionData(functionFragment: "setManyByHash", values: [BigNumberish[], string[], BigNumberish]): string; + encodeFunctionData(functionFragment: "setOwner", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "setReverse", values: [string[]]): string; + encodeFunctionData(functionFragment: "setTokenURIPrefix", values: [string]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "symbol", values?: undefined): string; + encodeFunctionData(functionFragment: "tokenURI", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "unlock", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "unlockWithRecords", values: [AddressLike, string[], string[], string[], boolean]): string; + encodeFunctionData(functionFragment: "upgradeAll", values: [BigNumberish[]]): string; + encodeFunctionData(functionFragment: "verify", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; + encodeFunctionData(functionFragment: "withdrawFromPolygon", values: [BytesLike, BigNumberish, string[], string[]]): string; + decodeFunctionResult(functionFragment: "BATCH_LIMIT", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "NAME", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "VERSION", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "addKey", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "addProxyReader", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "burn", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "deposit", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "depositToPolygon", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "exists", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "expiryOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "get", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getByHash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getKey", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getKeys", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getMany", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getManyByHash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getTokenName", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedOrOwner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isExpired", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isTrustedForwarder", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "mint(address,uint256)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "mint(address,uint256,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "mintTLD", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "mintWithRecords", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "multicall", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "namehash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "nonceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "onERC721Received", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "reconfigure", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "removeReverse", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "reset", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "resolverOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "reverseNameOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "reverseOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "root", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "set", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setByHash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setExpiry", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setMany", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setManyByHash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setOwner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setReverse", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setTokenURIPrefix", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "tokenURI", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "unlock", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "unlockWithRecords", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "upgradeAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "verify", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "withdrawFromPolygon", data: BytesLike): Result; +} +export declare namespace AdminChangedEvent { + type InputTuple = [previousAdmin: AddressLike, newAdmin: AddressLike]; + type OutputTuple = [previousAdmin: string, newAdmin: string]; + interface OutputObject { + previousAdmin: string; + newAdmin: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ApprovalEvent { + type InputTuple = [ + owner: AddressLike, + approved: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [owner: string, approved: string, tokenId: bigint]; + interface OutputObject { + owner: string; + approved: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ApprovalForAllEvent { + type InputTuple = [ + owner: AddressLike, + operator: AddressLike, + approved: boolean + ]; + type OutputTuple = [ + owner: string, + operator: string, + approved: boolean + ]; + interface OutputObject { + owner: string; + operator: string; + approved: boolean; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace InitializedEvent { + type InputTuple = [version: BigNumberish]; + type OutputTuple = [version: bigint]; + interface OutputObject { + version: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NewKeyEvent { + type InputTuple = [ + tokenId: BigNumberish, + keyIndex: string, + key: string + ]; + type OutputTuple = [tokenId: bigint, keyIndex: string, key: string]; + interface OutputObject { + tokenId: bigint; + keyIndex: string; + key: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NewURIEvent { + type InputTuple = [tokenId: BigNumberish, uri: string]; + type OutputTuple = [tokenId: bigint, uri: string]; + interface OutputObject { + tokenId: bigint; + uri: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NewURIPrefixEvent { + type InputTuple = [prefix: string]; + type OutputTuple = [prefix: string]; + interface OutputObject { + prefix: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RemoveReverseEvent { + type InputTuple = [addr: AddressLike]; + type OutputTuple = [addr: string]; + interface OutputObject { + addr: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ResetRecordsEvent { + type InputTuple = [tokenId: BigNumberish]; + type OutputTuple = [tokenId: bigint]; + interface OutputObject { + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace SetEvent { + type InputTuple = [ + tokenId: BigNumberish, + keyIndex: string, + valueIndex: string, + key: string, + value: string + ]; + type OutputTuple = [ + tokenId: bigint, + keyIndex: string, + valueIndex: string, + key: string, + value: string + ]; + interface OutputObject { + tokenId: bigint; + keyIndex: string; + valueIndex: string; + key: string; + value: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace SetExpiryEvent { + type InputTuple = [tokenId: BigNumberish, expiry: BigNumberish]; + type OutputTuple = [tokenId: bigint, expiry: bigint]; + interface OutputObject { + tokenId: bigint; + expiry: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace SetReverseEvent { + type InputTuple = [addr: AddressLike, tokenId: BigNumberish]; + type OutputTuple = [addr: string, tokenId: bigint]; + interface OutputObject { + addr: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferEvent { + type InputTuple = [ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [from: string, to: string, tokenId: bigint]; + interface OutputObject { + from: string; + to: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace UpgradedEvent { + type InputTuple = [implementation: AddressLike]; + type OutputTuple = [implementation: string]; + interface OutputObject { + implementation: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface UNSRegistryMock extends BaseContract { + connect(runner?: ContractRunner | null): UNSRegistryMock; + waitForDeployment(): Promise; + interface: UNSRegistryMockInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + BATCH_LIMIT: TypedContractMethod<[], [bigint], "view">; + NAME: TypedContractMethod<[], [string], "view">; + VERSION: TypedContractMethod<[], [string], "view">; + addKey: TypedContractMethod<[key: string], [void], "nonpayable">; + addProxyReader: TypedContractMethod<[ + addr: AddressLike + ], [ + void + ], "nonpayable">; + approve: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; + burn: TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; + deposit: TypedContractMethod<[ + user: AddressLike, + depositData: BytesLike + ], [ + void + ], "nonpayable">; + depositToPolygon: TypedContractMethod<[ + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + execute: TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + string + ], "nonpayable">; + exists: TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; + expiryOf: TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; + get: TypedContractMethod<[ + key: string, + tokenId: BigNumberish + ], [ + string + ], "view">; + getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getByHash: TypedContractMethod<[ + keyHash: BigNumberish, + tokenId: BigNumberish + ], [ + [string, string] & { + key: string; + value: string; + } + ], "view">; + getKey: TypedContractMethod<[keyHash: BigNumberish], [string], "view">; + getKeys: TypedContractMethod<[hashes: BigNumberish[]], [string[]], "view">; + getMany: TypedContractMethod<[ + keys: string[], + tokenId: BigNumberish + ], [ + string[] + ], "view">; + getManyByHash: TypedContractMethod<[ + keyHashes: BigNumberish[], + tokenId: BigNumberish + ], [ + [string[], string[]] & { + keys: string[]; + values: string[]; + } + ], "view">; + getTokenName: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + initialize: TypedContractMethod<[ + mintingManager: AddressLike, + cnsRegistry: AddressLike, + rootChainManager: AddressLike, + childChainManager: AddressLike + ], [ + void + ], "nonpayable">; + isApprovedForAll: TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + isApprovedOrOwner: TypedContractMethod<[ + spender: AddressLike, + tokenId: BigNumberish + ], [ + boolean + ], "view">; + isExpired: TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; + isTrustedForwarder: TypedContractMethod<[ + forwarder: AddressLike + ], [ + boolean + ], "view">; + "mint(address,uint256)": TypedContractMethod<[ + user: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + "mint(address,uint256,bytes)": TypedContractMethod<[ + user: AddressLike, + tokenId: BigNumberish, + arg2: BytesLike + ], [ + void + ], "nonpayable">; + mintTLD: TypedContractMethod<[ + tokenId: BigNumberish, + uri: string + ], [ + void + ], "nonpayable">; + mintWithRecords: TypedContractMethod<[ + to: AddressLike, + labels: string[], + keys: string[], + values: string[], + withReverse: boolean + ], [ + void + ], "nonpayable">; + multicall: TypedContractMethod<[data: BytesLike[]], [string[]], "nonpayable">; + name: TypedContractMethod<[], [string], "view">; + namehash: TypedContractMethod<[labels: string[]], [bigint], "view">; + nonceOf: TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; + onERC721Received: TypedContractMethod<[ + arg0: AddressLike, + from: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + string + ], "nonpayable">; + ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + reconfigure: TypedContractMethod<[ + keys: string[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + removeReverse: TypedContractMethod<[], [void], "nonpayable">; + reset: TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; + resolverOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + reverseNameOf: TypedContractMethod<[addr: AddressLike], [string], "view">; + reverseOf: TypedContractMethod<[addr: AddressLike], [bigint], "view">; + root: TypedContractMethod<[], [bigint], "view">; + "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + set: TypedContractMethod<[ + key: string, + value: string, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + setApprovalForAll: TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + setByHash: TypedContractMethod<[ + keyHash: BigNumberish, + value: string, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + setExpiry: TypedContractMethod<[ + expiry: BigNumberish, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + setMany: TypedContractMethod<[ + keys: string[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + setManyByHash: TypedContractMethod<[ + keyHashes: BigNumberish[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + setOwner: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + setReverse: TypedContractMethod<[labels: string[]], [void], "nonpayable">; + setTokenURIPrefix: TypedContractMethod<[ + prefix: string + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + symbol: TypedContractMethod<[], [string], "view">; + tokenURI: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + transferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + unlock: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + unlockWithRecords: TypedContractMethod<[ + to: AddressLike, + labels: string[], + keys: string[], + values: string[], + withReverse: boolean + ], [ + void + ], "nonpayable">; + upgradeAll: TypedContractMethod<[ + tokenIds: BigNumberish[] + ], [ + void + ], "nonpayable">; + verify: TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + boolean + ], "view">; + withdrawFromPolygon: TypedContractMethod<[ + inputData: BytesLike, + tokenId: BigNumberish, + keys: string[], + values: string[] + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "BATCH_LIMIT"): TypedContractMethod<[], [bigint], "view">; + getFunction(nameOrSignature: "NAME"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "VERSION"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "addKey"): TypedContractMethod<[key: string], [void], "nonpayable">; + getFunction(nameOrSignature: "addProxyReader"): TypedContractMethod<[addr: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "approve"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; + getFunction(nameOrSignature: "burn"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; + getFunction(nameOrSignature: "deposit"): TypedContractMethod<[ + user: AddressLike, + depositData: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "depositToPolygon"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; + getFunction(nameOrSignature: "execute"): TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + string + ], "nonpayable">; + getFunction(nameOrSignature: "exists"): TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; + getFunction(nameOrSignature: "expiryOf"): TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; + getFunction(nameOrSignature: "get"): TypedContractMethod<[ + key: string, + tokenId: BigNumberish + ], [ + string + ], "view">; + getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "getByHash"): TypedContractMethod<[ + keyHash: BigNumberish, + tokenId: BigNumberish + ], [ + [string, string] & { + key: string; + value: string; + } + ], "view">; + getFunction(nameOrSignature: "getKey"): TypedContractMethod<[keyHash: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "getKeys"): TypedContractMethod<[hashes: BigNumberish[]], [string[]], "view">; + getFunction(nameOrSignature: "getMany"): TypedContractMethod<[ + keys: string[], + tokenId: BigNumberish + ], [ + string[] + ], "view">; + getFunction(nameOrSignature: "getManyByHash"): TypedContractMethod<[ + keyHashes: BigNumberish[], + tokenId: BigNumberish + ], [ + [string[], string[]] & { + keys: string[]; + values: string[]; + } + ], "view">; + getFunction(nameOrSignature: "getTokenName"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "initialize"): TypedContractMethod<[ + mintingManager: AddressLike, + cnsRegistry: AddressLike, + rootChainManager: AddressLike, + childChainManager: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "isApprovedOrOwner"): TypedContractMethod<[ + spender: AddressLike, + tokenId: BigNumberish + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "isExpired"): TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; + getFunction(nameOrSignature: "isTrustedForwarder"): TypedContractMethod<[forwarder: AddressLike], [boolean], "view">; + getFunction(nameOrSignature: "mint(address,uint256)"): TypedContractMethod<[ + user: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "mint(address,uint256,bytes)"): TypedContractMethod<[ + user: AddressLike, + tokenId: BigNumberish, + arg2: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "mintTLD"): TypedContractMethod<[ + tokenId: BigNumberish, + uri: string + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "mintWithRecords"): TypedContractMethod<[ + to: AddressLike, + labels: string[], + keys: string[], + values: string[], + withReverse: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "multicall"): TypedContractMethod<[data: BytesLike[]], [string[]], "nonpayable">; + getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "namehash"): TypedContractMethod<[labels: string[]], [bigint], "view">; + getFunction(nameOrSignature: "nonceOf"): TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; + getFunction(nameOrSignature: "onERC721Received"): TypedContractMethod<[ + arg0: AddressLike, + from: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + string + ], "nonpayable">; + getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "reconfigure"): TypedContractMethod<[ + keys: string[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "removeReverse"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "reset"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; + getFunction(nameOrSignature: "resolverOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "reverseNameOf"): TypedContractMethod<[addr: AddressLike], [string], "view">; + getFunction(nameOrSignature: "reverseOf"): TypedContractMethod<[addr: AddressLike], [bigint], "view">; + getFunction(nameOrSignature: "root"): TypedContractMethod<[], [bigint], "view">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "set"): TypedContractMethod<[ + key: string, + value: string, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ + operator: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setByHash"): TypedContractMethod<[ + keyHash: BigNumberish, + value: string, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setExpiry"): TypedContractMethod<[ + expiry: BigNumberish, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setMany"): TypedContractMethod<[ + keys: string[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setManyByHash"): TypedContractMethod<[ + keyHashes: BigNumberish[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setOwner"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setReverse"): TypedContractMethod<[labels: string[]], [void], "nonpayable">; + getFunction(nameOrSignature: "setTokenURIPrefix"): TypedContractMethod<[prefix: string], [void], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "symbol"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "tokenURI"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "unlock"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "unlockWithRecords"): TypedContractMethod<[ + to: AddressLike, + labels: string[], + keys: string[], + values: string[], + withReverse: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "upgradeAll"): TypedContractMethod<[tokenIds: BigNumberish[]], [void], "nonpayable">; + getFunction(nameOrSignature: "verify"): TypedContractMethod<[ + req: IForwarder.ForwardRequestStruct, + signature: BytesLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "withdrawFromPolygon"): TypedContractMethod<[ + inputData: BytesLike, + tokenId: BigNumberish, + keys: string[], + values: string[] + ], [ + void + ], "nonpayable">; + getEvent(key: "AdminChanged"): TypedContractEvent; + getEvent(key: "Approval"): TypedContractEvent; + getEvent(key: "ApprovalForAll"): TypedContractEvent; + getEvent(key: "Initialized"): TypedContractEvent; + getEvent(key: "NewKey"): TypedContractEvent; + getEvent(key: "NewURI"): TypedContractEvent; + getEvent(key: "NewURIPrefix"): TypedContractEvent; + getEvent(key: "RemoveReverse"): TypedContractEvent; + getEvent(key: "ResetRecords"): TypedContractEvent; + getEvent(key: "Set"): TypedContractEvent; + getEvent(key: "SetExpiry"): TypedContractEvent; + getEvent(key: "SetReverse"): TypedContractEvent; + getEvent(key: "Transfer"): TypedContractEvent; + getEvent(key: "Upgraded"): TypedContractEvent; + filters: { + "AdminChanged(address,address)": TypedContractEvent; + AdminChanged: TypedContractEvent; + "Approval(address,address,uint256)": TypedContractEvent; + Approval: TypedContractEvent; + "ApprovalForAll(address,address,bool)": TypedContractEvent; + ApprovalForAll: TypedContractEvent; + "Initialized(uint8)": TypedContractEvent; + Initialized: TypedContractEvent; + "NewKey(uint256,string,string)": TypedContractEvent; + NewKey: TypedContractEvent; + "NewURI(uint256,string)": TypedContractEvent; + NewURI: TypedContractEvent; + "NewURIPrefix(string)": TypedContractEvent; + NewURIPrefix: TypedContractEvent; + "RemoveReverse(address)": TypedContractEvent; + RemoveReverse: TypedContractEvent; + "ResetRecords(uint256)": TypedContractEvent; + ResetRecords: TypedContractEvent; + "Set(uint256,string,string,string,string)": TypedContractEvent; + Set: TypedContractEvent; + "SetExpiry(uint256,uint64)": TypedContractEvent; + SetExpiry: TypedContractEvent; + "SetReverse(address,uint256)": TypedContractEvent; + SetReverse: TypedContractEvent; + "Transfer(address,address,uint256)": TypedContractEvent; + Transfer: TypedContractEvent; + "Upgraded(address)": TypedContractEvent; + Upgraded: TypedContractEvent; + }; +} +//# sourceMappingURL=UNSRegistryMock.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/mocks/UNSRegistryMock.d.ts.map b/dist/types/contracts/mocks/UNSRegistryMock.d.ts.map new file mode 100644 index 00000000..4567c6d2 --- /dev/null +++ b/dist/types/contracts/mocks/UNSRegistryMock.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"UNSRegistryMock.d.ts","sourceRoot":"","sources":["../../../../types/contracts/mocks/UNSRegistryMock.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/mocks/UNSRegistryMock.js b/dist/types/contracts/mocks/UNSRegistryMock.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/mocks/UNSRegistryMock.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/mocks/index.d.ts b/dist/types/contracts/mocks/index.d.ts new file mode 100644 index 00000000..c5908db0 --- /dev/null +++ b/dist/types/contracts/mocks/index.d.ts @@ -0,0 +1,14 @@ +export type { BaseForwarderMock } from "./BaseForwarderMock"; +export type { BaseRoutingForwarderMock } from "./BaseRoutingForwarderMock"; +export type { ERC1155Mock } from "./ERC1155Mock"; +export type { ERC20Mock } from "./ERC20Mock"; +export type { ERC20UnsafeMock } from "./ERC20UnsafeMock"; +export type { ERC2771ContextMock } from "./ERC2771ContextMock"; +export type { ERC2771RegistryContextMock } from "./ERC2771RegistryContextMock"; +export type { ERC721Mock } from "./ERC721Mock"; +export type { ERC721ReceiverMock } from "./ERC721ReceiverMock"; +export type { MinterRoleMock } from "./MinterRoleMock"; +export type { MintingManagerMock } from "./MintingManagerMock"; +export type { UNSRegistryForwarderMock } from "./UNSRegistryForwarderMock"; +export type { UNSRegistryMock } from "./UNSRegistryMock"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/mocks/index.d.ts.map b/dist/types/contracts/mocks/index.d.ts.map new file mode 100644 index 00000000..c1a06b73 --- /dev/null +++ b/dist/types/contracts/mocks/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../types/contracts/mocks/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,YAAY,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAC3E,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,YAAY,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,YAAY,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,YAAY,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,YAAY,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC/E,YAAY,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,YAAY,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,YAAY,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,YAAY,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAC3E,YAAY,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC"} \ No newline at end of file diff --git a/dist/types/contracts/mocks/index.js b/dist/types/contracts/mocks/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/mocks/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/roles/MinterRole.d.ts b/dist/types/contracts/roles/MinterRole.d.ts new file mode 100644 index 00000000..affd7dc1 --- /dev/null +++ b/dist/types/contracts/roles/MinterRole.d.ts @@ -0,0 +1,253 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; +export interface MinterRoleInterface extends Interface { + getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE" | "MINTER_ROLE" | "addMinter" | "addMinters" | "closeMinter" | "getRoleAdmin" | "grantRole" | "hasRole" | "isMinter" | "owner" | "removeMinter" | "removeMinters" | "renounceMinter" | "renounceOwnership" | "renounceRole" | "revokeRole" | "rotateMinter" | "supportsInterface" | "transferOwnership"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Initialized" | "OwnershipTransferred" | "RoleAdminChanged" | "RoleGranted" | "RoleRevoked"): EventFragment; + encodeFunctionData(functionFragment: "DEFAULT_ADMIN_ROLE", values?: undefined): string; + encodeFunctionData(functionFragment: "MINTER_ROLE", values?: undefined): string; + encodeFunctionData(functionFragment: "addMinter", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "addMinters", values: [AddressLike[]]): string; + encodeFunctionData(functionFragment: "closeMinter", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "getRoleAdmin", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "grantRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "hasRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "isMinter", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData(functionFragment: "removeMinter", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "removeMinters", values: [AddressLike[]]): string; + encodeFunctionData(functionFragment: "renounceMinter", values?: undefined): string; + encodeFunctionData(functionFragment: "renounceOwnership", values?: undefined): string; + encodeFunctionData(functionFragment: "renounceRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "revokeRole", values: [BytesLike, AddressLike]): string; + encodeFunctionData(functionFragment: "rotateMinter", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "transferOwnership", values: [AddressLike]): string; + decodeFunctionResult(functionFragment: "DEFAULT_ADMIN_ROLE", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "MINTER_ROLE", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "addMinter", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "addMinters", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "closeMinter", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getRoleAdmin", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "grantRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "hasRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isMinter", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "removeMinter", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "removeMinters", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceMinter", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceOwnership", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "revokeRole", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "rotateMinter", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result; +} +export declare namespace InitializedEvent { + type InputTuple = [version: BigNumberish]; + type OutputTuple = [version: bigint]; + interface OutputObject { + version: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace OwnershipTransferredEvent { + type InputTuple = [previousOwner: AddressLike, newOwner: AddressLike]; + type OutputTuple = [previousOwner: string, newOwner: string]; + interface OutputObject { + previousOwner: string; + newOwner: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RoleAdminChangedEvent { + type InputTuple = [ + role: BytesLike, + previousAdminRole: BytesLike, + newAdminRole: BytesLike + ]; + type OutputTuple = [ + role: string, + previousAdminRole: string, + newAdminRole: string + ]; + interface OutputObject { + role: string; + previousAdminRole: string; + newAdminRole: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RoleGrantedEvent { + type InputTuple = [ + role: BytesLike, + account: AddressLike, + sender: AddressLike + ]; + type OutputTuple = [role: string, account: string, sender: string]; + interface OutputObject { + role: string; + account: string; + sender: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace RoleRevokedEvent { + type InputTuple = [ + role: BytesLike, + account: AddressLike, + sender: AddressLike + ]; + type OutputTuple = [role: string, account: string, sender: string]; + interface OutputObject { + role: string; + account: string; + sender: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface MinterRole extends BaseContract { + connect(runner?: ContractRunner | null): MinterRole; + waitForDeployment(): Promise; + interface: MinterRoleInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + DEFAULT_ADMIN_ROLE: TypedContractMethod<[], [string], "view">; + MINTER_ROLE: TypedContractMethod<[], [string], "view">; + addMinter: TypedContractMethod<[account: AddressLike], [void], "nonpayable">; + addMinters: TypedContractMethod<[ + accounts: AddressLike[] + ], [ + void + ], "nonpayable">; + closeMinter: TypedContractMethod<[receiver: AddressLike], [void], "payable">; + getRoleAdmin: TypedContractMethod<[role: BytesLike], [string], "view">; + grantRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + hasRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + boolean + ], "view">; + isMinter: TypedContractMethod<[account: AddressLike], [boolean], "view">; + owner: TypedContractMethod<[], [string], "view">; + removeMinter: TypedContractMethod<[ + account: AddressLike + ], [ + void + ], "nonpayable">; + removeMinters: TypedContractMethod<[ + accounts: AddressLike[] + ], [ + void + ], "nonpayable">; + renounceMinter: TypedContractMethod<[], [void], "nonpayable">; + renounceOwnership: TypedContractMethod<[], [void], "nonpayable">; + renounceRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + revokeRole: TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + rotateMinter: TypedContractMethod<[receiver: AddressLike], [void], "payable">; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + transferOwnership: TypedContractMethod<[ + newOwner: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "MINTER_ROLE"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "addMinter"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "addMinters"): TypedContractMethod<[accounts: AddressLike[]], [void], "nonpayable">; + getFunction(nameOrSignature: "closeMinter"): TypedContractMethod<[receiver: AddressLike], [void], "payable">; + getFunction(nameOrSignature: "getRoleAdmin"): TypedContractMethod<[role: BytesLike], [string], "view">; + getFunction(nameOrSignature: "grantRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "hasRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "isMinter"): TypedContractMethod<[account: AddressLike], [boolean], "view">; + getFunction(nameOrSignature: "owner"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "removeMinter"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "removeMinters"): TypedContractMethod<[accounts: AddressLike[]], [void], "nonpayable">; + getFunction(nameOrSignature: "renounceMinter"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "renounceOwnership"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "renounceRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "revokeRole"): TypedContractMethod<[ + role: BytesLike, + account: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "rotateMinter"): TypedContractMethod<[receiver: AddressLike], [void], "payable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "transferOwnership"): TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">; + getEvent(key: "Initialized"): TypedContractEvent; + getEvent(key: "OwnershipTransferred"): TypedContractEvent; + getEvent(key: "RoleAdminChanged"): TypedContractEvent; + getEvent(key: "RoleGranted"): TypedContractEvent; + getEvent(key: "RoleRevoked"): TypedContractEvent; + filters: { + "Initialized(uint8)": TypedContractEvent; + Initialized: TypedContractEvent; + "OwnershipTransferred(address,address)": TypedContractEvent; + OwnershipTransferred: TypedContractEvent; + "RoleAdminChanged(bytes32,bytes32,bytes32)": TypedContractEvent; + RoleAdminChanged: TypedContractEvent; + "RoleGranted(bytes32,address,address)": TypedContractEvent; + RoleGranted: TypedContractEvent; + "RoleRevoked(bytes32,address,address)": TypedContractEvent; + RoleRevoked: TypedContractEvent; + }; +} +//# sourceMappingURL=MinterRole.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/roles/MinterRole.d.ts.map b/dist/types/contracts/roles/MinterRole.d.ts.map new file mode 100644 index 00000000..6382cc8b --- /dev/null +++ b/dist/types/contracts/roles/MinterRole.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"MinterRole.d.ts","sourceRoot":"","sources":["../../../../types/contracts/roles/MinterRole.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/roles/MinterRole.js b/dist/types/contracts/roles/MinterRole.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/roles/MinterRole.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/roles/index.d.ts b/dist/types/contracts/roles/index.d.ts new file mode 100644 index 00000000..23439f55 --- /dev/null +++ b/dist/types/contracts/roles/index.d.ts @@ -0,0 +1,2 @@ +export type { MinterRole } from "./MinterRole"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/roles/index.d.ts.map b/dist/types/contracts/roles/index.d.ts.map new file mode 100644 index 00000000..6850b15b --- /dev/null +++ b/dist/types/contracts/roles/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../types/contracts/roles/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC"} \ No newline at end of file diff --git a/dist/types/contracts/roles/index.js b/dist/types/contracts/roles/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/roles/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/utils/Blocklist.d.ts b/dist/types/contracts/utils/Blocklist.d.ts new file mode 100644 index 00000000..96492a9d --- /dev/null +++ b/dist/types/contracts/utils/Blocklist.d.ts @@ -0,0 +1,84 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; +export interface BlocklistInterface extends Interface { + getFunction(nameOrSignature: "isBlocked"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Blocked" | "BlocklistDisabled" | "BlocklistEnabled" | "Initialized"): EventFragment; + encodeFunctionData(functionFragment: "isBlocked", values: [BigNumberish]): string; + decodeFunctionResult(functionFragment: "isBlocked", data: BytesLike): Result; +} +export declare namespace BlockedEvent { + type InputTuple = [tokenId: BigNumberish]; + type OutputTuple = [tokenId: bigint]; + interface OutputObject { + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace BlocklistDisabledEvent { + type InputTuple = [account: AddressLike]; + type OutputTuple = [account: string]; + interface OutputObject { + account: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace BlocklistEnabledEvent { + type InputTuple = [account: AddressLike]; + type OutputTuple = [account: string]; + interface OutputObject { + account: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace InitializedEvent { + type InputTuple = [version: BigNumberish]; + type OutputTuple = [version: bigint]; + interface OutputObject { + version: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface Blocklist extends BaseContract { + connect(runner?: ContractRunner | null): Blocklist; + waitForDeployment(): Promise; + interface: BlocklistInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + isBlocked: TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "isBlocked"): TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; + getEvent(key: "Blocked"): TypedContractEvent; + getEvent(key: "BlocklistDisabled"): TypedContractEvent; + getEvent(key: "BlocklistEnabled"): TypedContractEvent; + getEvent(key: "Initialized"): TypedContractEvent; + filters: { + "Blocked(uint256)": TypedContractEvent; + Blocked: TypedContractEvent; + "BlocklistDisabled(address)": TypedContractEvent; + BlocklistDisabled: TypedContractEvent; + "BlocklistEnabled(address)": TypedContractEvent; + BlocklistEnabled: TypedContractEvent; + "Initialized(uint8)": TypedContractEvent; + Initialized: TypedContractEvent; + }; +} +//# sourceMappingURL=Blocklist.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/utils/Blocklist.d.ts.map b/dist/types/contracts/utils/Blocklist.d.ts.map new file mode 100644 index 00000000..ed737f8c --- /dev/null +++ b/dist/types/contracts/utils/Blocklist.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"Blocklist.d.ts","sourceRoot":"","sources":["../../../../types/contracts/utils/Blocklist.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/utils/Blocklist.js b/dist/types/contracts/utils/Blocklist.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/utils/Blocklist.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/utils/ERC1271SimpleWallet.d.ts b/dist/types/contracts/utils/ERC1271SimpleWallet.d.ts new file mode 100644 index 00000000..7f1493d7 --- /dev/null +++ b/dist/types/contracts/utils/ERC1271SimpleWallet.d.ts @@ -0,0 +1,36 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../common"; +export interface ERC1271SimpleWalletInterface extends Interface { + getFunction(nameOrSignature: "isValidSignature"): FunctionFragment; + encodeFunctionData(functionFragment: "isValidSignature", values: [BytesLike, BytesLike]): string; + decodeFunctionResult(functionFragment: "isValidSignature", data: BytesLike): Result; +} +export interface ERC1271SimpleWallet extends BaseContract { + connect(runner?: ContractRunner | null): ERC1271SimpleWallet; + waitForDeployment(): Promise; + interface: ERC1271SimpleWalletInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + isValidSignature: TypedContractMethod<[ + _hash: BytesLike, + _signature: BytesLike + ], [ + string + ], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "isValidSignature"): TypedContractMethod<[ + _hash: BytesLike, + _signature: BytesLike + ], [ + string + ], "view">; + filters: {}; +} +//# sourceMappingURL=ERC1271SimpleWallet.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/utils/ERC1271SimpleWallet.d.ts.map b/dist/types/contracts/utils/ERC1271SimpleWallet.d.ts.map new file mode 100644 index 00000000..1d5da40d --- /dev/null +++ b/dist/types/contracts/utils/ERC1271SimpleWallet.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ERC1271SimpleWallet.d.ts","sourceRoot":"","sources":["../../../../types/contracts/utils/ERC1271SimpleWallet.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/utils/ERC1271SimpleWallet.js b/dist/types/contracts/utils/ERC1271SimpleWallet.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/utils/ERC1271SimpleWallet.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/utils/MultiSend.d.ts b/dist/types/contracts/utils/MultiSend.d.ts new file mode 100644 index 00000000..560b06ea --- /dev/null +++ b/dist/types/contracts/utils/MultiSend.d.ts @@ -0,0 +1,21 @@ +import type { BaseContract, FunctionFragment, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener } from "../../common"; +export interface MultiSendInterface extends Interface { +} +export interface MultiSend extends BaseContract { + connect(runner?: ContractRunner | null): MultiSend; + waitForDeployment(): Promise; + interface: MultiSendInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + getFunction(key: string | FunctionFragment): T; + filters: {}; +} +//# sourceMappingURL=MultiSend.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/utils/MultiSend.d.ts.map b/dist/types/contracts/utils/MultiSend.d.ts.map new file mode 100644 index 00000000..1c46b3ff --- /dev/null +++ b/dist/types/contracts/utils/MultiSend.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"MultiSend.d.ts","sourceRoot":"","sources":["../../../../types/contracts/utils/MultiSend.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,gBAAgB,EAChB,SAAS,EACT,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,aAAa,EACd,MAAM,cAAc,CAAC;AAEtB,MAAM,WAAW,kBAAmB,SAAQ,SAAS;CAAG;AAExD,MAAM,WAAW,SAAU,SAAQ,YAAY;IAC7C,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,SAAS,CAAC;IACnD,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,kBAAkB,CAAC;IAE9B,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,OAAO,EAAE,EAAE,CAAC;CACb"} \ No newline at end of file diff --git a/dist/types/contracts/utils/MultiSend.js b/dist/types/contracts/utils/MultiSend.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/utils/MultiSend.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/utils/Ownable.d.ts b/dist/types/contracts/utils/Ownable.d.ts new file mode 100644 index 00000000..95ea21a7 --- /dev/null +++ b/dist/types/contracts/utils/Ownable.d.ts @@ -0,0 +1,69 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; +export interface OwnableInterface extends Interface { + getFunction(nameOrSignature: "owner" | "renounceOwnership" | "transferOwnership"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Initialized" | "OwnershipTransferred"): EventFragment; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData(functionFragment: "renounceOwnership", values?: undefined): string; + encodeFunctionData(functionFragment: "transferOwnership", values: [AddressLike]): string; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceOwnership", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result; +} +export declare namespace InitializedEvent { + type InputTuple = [version: BigNumberish]; + type OutputTuple = [version: bigint]; + interface OutputObject { + version: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace OwnershipTransferredEvent { + type InputTuple = [previousOwner: AddressLike, newOwner: AddressLike]; + type OutputTuple = [previousOwner: string, newOwner: string]; + interface OutputObject { + previousOwner: string; + newOwner: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface Ownable extends BaseContract { + connect(runner?: ContractRunner | null): Ownable; + waitForDeployment(): Promise; + interface: OwnableInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + owner: TypedContractMethod<[], [string], "view">; + renounceOwnership: TypedContractMethod<[], [void], "nonpayable">; + transferOwnership: TypedContractMethod<[ + newOwner: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "owner"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "renounceOwnership"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "transferOwnership"): TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">; + getEvent(key: "Initialized"): TypedContractEvent; + getEvent(key: "OwnershipTransferred"): TypedContractEvent; + filters: { + "Initialized(uint8)": TypedContractEvent; + Initialized: TypedContractEvent; + "OwnershipTransferred(address,address)": TypedContractEvent; + OwnershipTransferred: TypedContractEvent; + }; +} +//# sourceMappingURL=Ownable.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/utils/Ownable.d.ts.map b/dist/types/contracts/utils/Ownable.d.ts.map new file mode 100644 index 00000000..ccca31d4 --- /dev/null +++ b/dist/types/contracts/utils/Ownable.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"Ownable.d.ts","sourceRoot":"","sources":["../../../../types/contracts/utils/Ownable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/utils/Ownable.js b/dist/types/contracts/utils/Ownable.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/utils/Ownable.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/utils/Pausable.d.ts b/dist/types/contracts/utils/Pausable.d.ts new file mode 100644 index 00000000..e8e331d3 --- /dev/null +++ b/dist/types/contracts/utils/Pausable.d.ts @@ -0,0 +1,70 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; +export interface PausableInterface extends Interface { + getFunction(nameOrSignature: "paused"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Initialized" | "Paused" | "Unpaused"): EventFragment; + encodeFunctionData(functionFragment: "paused", values?: undefined): string; + decodeFunctionResult(functionFragment: "paused", data: BytesLike): Result; +} +export declare namespace InitializedEvent { + type InputTuple = [version: BigNumberish]; + type OutputTuple = [version: bigint]; + interface OutputObject { + version: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace PausedEvent { + type InputTuple = [account: AddressLike]; + type OutputTuple = [account: string]; + interface OutputObject { + account: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace UnpausedEvent { + type InputTuple = [account: AddressLike]; + type OutputTuple = [account: string]; + interface OutputObject { + account: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface Pausable extends BaseContract { + connect(runner?: ContractRunner | null): Pausable; + waitForDeployment(): Promise; + interface: PausableInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + paused: TypedContractMethod<[], [boolean], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "paused"): TypedContractMethod<[], [boolean], "view">; + getEvent(key: "Initialized"): TypedContractEvent; + getEvent(key: "Paused"): TypedContractEvent; + getEvent(key: "Unpaused"): TypedContractEvent; + filters: { + "Initialized(uint8)": TypedContractEvent; + Initialized: TypedContractEvent; + "Paused(address)": TypedContractEvent; + Paused: TypedContractEvent; + "Unpaused(address)": TypedContractEvent; + Unpaused: TypedContractEvent; + }; +} +//# sourceMappingURL=Pausable.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/utils/Pausable.d.ts.map b/dist/types/contracts/utils/Pausable.d.ts.map new file mode 100644 index 00000000..17363190 --- /dev/null +++ b/dist/types/contracts/utils/Pausable.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"Pausable.d.ts","sourceRoot":"","sources":["../../../../types/contracts/utils/Pausable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/utils/Pausable.js b/dist/types/contracts/utils/Pausable.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/utils/Pausable.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/utils/index.d.ts b/dist/types/contracts/utils/index.d.ts new file mode 100644 index 00000000..de4400c6 --- /dev/null +++ b/dist/types/contracts/utils/index.d.ts @@ -0,0 +1,6 @@ +export type { Blocklist } from "./Blocklist"; +export type { ERC1271SimpleWallet } from "./ERC1271SimpleWallet"; +export type { MultiSend } from "./MultiSend"; +export type { Ownable } from "./Ownable"; +export type { Pausable } from "./Pausable"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/utils/index.d.ts.map b/dist/types/contracts/utils/index.d.ts.map new file mode 100644 index 00000000..8e9a0278 --- /dev/null +++ b/dist/types/contracts/utils/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../types/contracts/utils/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,YAAY,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,YAAY,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,YAAY,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,YAAY,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC"} \ No newline at end of file diff --git a/dist/types/contracts/utils/index.js b/dist/types/contracts/utils/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/contracts/utils/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/dot-crypto/contracts/CNSRegistry.d.ts b/dist/types/dot-crypto/contracts/CNSRegistry.d.ts new file mode 100644 index 00000000..67ff5b90 --- /dev/null +++ b/dist/types/dot-crypto/contracts/CNSRegistry.d.ts @@ -0,0 +1,596 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; +export interface CNSRegistryInterface extends Interface { + getFunction(nameOrSignature: "addController" | "approve" | "balanceOf" | "burn" | "burnChild" | "childIdOf" | "controlledBurn" | "controlledMintChild" | "controlledResolveTo" | "controlledSafeMintChild" | "controlledSafeTransferFrom" | "controlledSetTokenURIPrefix" | "controlledTransferFrom" | "getApproved" | "isApprovedForAll" | "isApprovedOrOwner" | "isController" | "mintChild" | "name" | "ownerOf" | "renounceController" | "resolveTo" | "resolverOf" | "root" | "safeMintChild(address,uint256,string)" | "safeMintChild(address,uint256,string,bytes)" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "safeTransferFromChild(address,address,uint256,string)" | "safeTransferFromChild(address,address,uint256,string,bytes)" | "setApprovalForAll" | "setOwner" | "supportsInterface" | "symbol" | "sync" | "tokenURI" | "transferFrom" | "transferFromChild"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "NewURI" | "NewURIPrefix" | "Resolve" | "Sync" | "Transfer"): EventFragment; + encodeFunctionData(functionFragment: "addController", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "burn", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "burnChild", values: [BigNumberish, string]): string; + encodeFunctionData(functionFragment: "childIdOf", values: [BigNumberish, string]): string; + encodeFunctionData(functionFragment: "controlledBurn", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "controlledMintChild", values: [AddressLike, BigNumberish, string]): string; + encodeFunctionData(functionFragment: "controlledResolveTo", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "controlledSafeMintChild", values: [AddressLike, BigNumberish, string, BytesLike]): string; + encodeFunctionData(functionFragment: "controlledSafeTransferFrom", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "controlledSetTokenURIPrefix", values: [string]): string; + encodeFunctionData(functionFragment: "controlledTransferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "isApprovedOrOwner", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "isController", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "mintChild", values: [AddressLike, BigNumberish, string]): string; + encodeFunctionData(functionFragment: "name", values?: undefined): string; + encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "renounceController", values?: undefined): string; + encodeFunctionData(functionFragment: "resolveTo", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "resolverOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "root", values?: undefined): string; + encodeFunctionData(functionFragment: "safeMintChild(address,uint256,string)", values: [AddressLike, BigNumberish, string]): string; + encodeFunctionData(functionFragment: "safeMintChild(address,uint256,string,bytes)", values: [AddressLike, BigNumberish, string, BytesLike]): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "safeTransferFromChild(address,address,uint256,string)", values: [AddressLike, AddressLike, BigNumberish, string]): string; + encodeFunctionData(functionFragment: "safeTransferFromChild(address,address,uint256,string,bytes)", values: [AddressLike, AddressLike, BigNumberish, string, BytesLike]): string; + encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; + encodeFunctionData(functionFragment: "setOwner", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "symbol", values?: undefined): string; + encodeFunctionData(functionFragment: "sync", values: [BigNumberish, BigNumberish]): string; + encodeFunctionData(functionFragment: "tokenURI", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "transferFromChild", values: [AddressLike, AddressLike, BigNumberish, string]): string; + decodeFunctionResult(functionFragment: "addController", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "burn", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "burnChild", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "childIdOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "controlledBurn", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "controlledMintChild", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "controlledResolveTo", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "controlledSafeMintChild", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "controlledSafeTransferFrom", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "controlledSetTokenURIPrefix", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "controlledTransferFrom", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedOrOwner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isController", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "mintChild", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceController", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "resolveTo", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "resolverOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "root", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeMintChild(address,uint256,string)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeMintChild(address,uint256,string,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFromChild(address,address,uint256,string)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFromChild(address,address,uint256,string,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setOwner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "sync", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "tokenURI", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferFromChild", data: BytesLike): Result; +} +export declare namespace ApprovalEvent { + type InputTuple = [ + owner: AddressLike, + approved: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [owner: string, approved: string, tokenId: bigint]; + interface OutputObject { + owner: string; + approved: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ApprovalForAllEvent { + type InputTuple = [ + owner: AddressLike, + operator: AddressLike, + approved: boolean + ]; + type OutputTuple = [ + owner: string, + operator: string, + approved: boolean + ]; + interface OutputObject { + owner: string; + operator: string; + approved: boolean; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NewURIEvent { + type InputTuple = [tokenId: BigNumberish, uri: string]; + type OutputTuple = [tokenId: bigint, uri: string]; + interface OutputObject { + tokenId: bigint; + uri: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NewURIPrefixEvent { + type InputTuple = [prefix: string]; + type OutputTuple = [prefix: string]; + interface OutputObject { + prefix: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ResolveEvent { + type InputTuple = [tokenId: BigNumberish, to: AddressLike]; + type OutputTuple = [tokenId: bigint, to: string]; + interface OutputObject { + tokenId: bigint; + to: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace SyncEvent { + type InputTuple = [ + resolver: AddressLike, + updateId: BigNumberish, + tokenId: BigNumberish + ]; + type OutputTuple = [ + resolver: string, + updateId: bigint, + tokenId: bigint + ]; + interface OutputObject { + resolver: string; + updateId: bigint; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferEvent { + type InputTuple = [ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [from: string, to: string, tokenId: bigint]; + interface OutputObject { + from: string; + to: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface CNSRegistry extends BaseContract { + connect(runner?: ContractRunner | null): CNSRegistry; + waitForDeployment(): Promise; + interface: CNSRegistryInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + addController: TypedContractMethod<[ + account: AddressLike + ], [ + void + ], "nonpayable">; + approve: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; + burn: TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; + burnChild: TypedContractMethod<[ + tokenId: BigNumberish, + label: string + ], [ + void + ], "nonpayable">; + childIdOf: TypedContractMethod<[ + tokenId: BigNumberish, + label: string + ], [ + bigint + ], "view">; + controlledBurn: TypedContractMethod<[ + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + controlledMintChild: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish, + label: string + ], [ + void + ], "nonpayable">; + controlledResolveTo: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + controlledSafeMintChild: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish, + label: string, + _data: BytesLike + ], [ + void + ], "nonpayable">; + controlledSafeTransferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + _data: BytesLike + ], [ + void + ], "nonpayable">; + controlledSetTokenURIPrefix: TypedContractMethod<[ + prefix: string + ], [ + void + ], "nonpayable">; + controlledTransferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + isApprovedForAll: TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + isApprovedOrOwner: TypedContractMethod<[ + spender: AddressLike, + tokenId: BigNumberish + ], [ + boolean + ], "view">; + isController: TypedContractMethod<[account: AddressLike], [boolean], "view">; + mintChild: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish, + label: string + ], [ + void + ], "nonpayable">; + name: TypedContractMethod<[], [string], "view">; + ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + renounceController: TypedContractMethod<[], [void], "nonpayable">; + resolveTo: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + resolverOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + root: TypedContractMethod<[], [bigint], "view">; + "safeMintChild(address,uint256,string)": TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish, + label: string + ], [ + void + ], "nonpayable">; + "safeMintChild(address,uint256,string,bytes)": TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish, + label: string, + _data: BytesLike + ], [ + void + ], "nonpayable">; + "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + _data: BytesLike + ], [ + void + ], "nonpayable">; + "safeTransferFromChild(address,address,uint256,string)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + label: string + ], [ + void + ], "nonpayable">; + "safeTransferFromChild(address,address,uint256,string,bytes)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + label: string, + _data: BytesLike + ], [ + void + ], "nonpayable">; + setApprovalForAll: TypedContractMethod<[ + to: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + setOwner: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + symbol: TypedContractMethod<[], [string], "view">; + sync: TypedContractMethod<[ + tokenId: BigNumberish, + updateId: BigNumberish + ], [ + void + ], "nonpayable">; + tokenURI: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + transferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + transferFromChild: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + label: string + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "addController"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "approve"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; + getFunction(nameOrSignature: "burn"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; + getFunction(nameOrSignature: "burnChild"): TypedContractMethod<[ + tokenId: BigNumberish, + label: string + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "childIdOf"): TypedContractMethod<[ + tokenId: BigNumberish, + label: string + ], [ + bigint + ], "view">; + getFunction(nameOrSignature: "controlledBurn"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; + getFunction(nameOrSignature: "controlledMintChild"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish, + label: string + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "controlledResolveTo"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "controlledSafeMintChild"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish, + label: string, + _data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "controlledSafeTransferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + _data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "controlledSetTokenURIPrefix"): TypedContractMethod<[prefix: string], [void], "nonpayable">; + getFunction(nameOrSignature: "controlledTransferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "isApprovedOrOwner"): TypedContractMethod<[ + spender: AddressLike, + tokenId: BigNumberish + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "isController"): TypedContractMethod<[account: AddressLike], [boolean], "view">; + getFunction(nameOrSignature: "mintChild"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish, + label: string + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "renounceController"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "resolveTo"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "resolverOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "root"): TypedContractMethod<[], [bigint], "view">; + getFunction(nameOrSignature: "safeMintChild(address,uint256,string)"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish, + label: string + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeMintChild(address,uint256,string,bytes)"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish, + label: string, + _data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + _data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFromChild(address,address,uint256,string)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + label: string + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFromChild(address,address,uint256,string,bytes)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + label: string, + _data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ + to: AddressLike, + approved: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setOwner"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "symbol"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "sync"): TypedContractMethod<[ + tokenId: BigNumberish, + updateId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "tokenURI"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "transferFromChild"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + label: string + ], [ + void + ], "nonpayable">; + getEvent(key: "Approval"): TypedContractEvent; + getEvent(key: "ApprovalForAll"): TypedContractEvent; + getEvent(key: "NewURI"): TypedContractEvent; + getEvent(key: "NewURIPrefix"): TypedContractEvent; + getEvent(key: "Resolve"): TypedContractEvent; + getEvent(key: "Sync"): TypedContractEvent; + getEvent(key: "Transfer"): TypedContractEvent; + filters: { + "Approval(address,address,uint256)": TypedContractEvent; + Approval: TypedContractEvent; + "ApprovalForAll(address,address,bool)": TypedContractEvent; + ApprovalForAll: TypedContractEvent; + "NewURI(uint256,string)": TypedContractEvent; + NewURI: TypedContractEvent; + "NewURIPrefix(string)": TypedContractEvent; + NewURIPrefix: TypedContractEvent; + "Resolve(uint256,address)": TypedContractEvent; + Resolve: TypedContractEvent; + "Sync(address,uint256,uint256)": TypedContractEvent; + Sync: TypedContractEvent; + "Transfer(address,address,uint256)": TypedContractEvent; + Transfer: TypedContractEvent; + }; +} +//# sourceMappingURL=CNSRegistry.d.ts.map \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/CNSRegistry.d.ts.map b/dist/types/dot-crypto/contracts/CNSRegistry.d.ts.map new file mode 100644 index 00000000..642bf27a --- /dev/null +++ b/dist/types/dot-crypto/contracts/CNSRegistry.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"CNSRegistry.d.ts","sourceRoot":"","sources":["../../../../types/dot-crypto/contracts/CNSRegistry.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/CNSRegistry.js b/dist/types/dot-crypto/contracts/CNSRegistry.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/dot-crypto/contracts/CNSRegistry.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/dot-crypto/contracts/ICNSRegistry.d.ts b/dist/types/dot-crypto/contracts/ICNSRegistry.d.ts new file mode 100644 index 00000000..a36cdb9e --- /dev/null +++ b/dist/types/dot-crypto/contracts/ICNSRegistry.d.ts @@ -0,0 +1,506 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; +export interface ICNSRegistryInterface extends Interface { + getFunction(nameOrSignature: "approve" | "balanceOf" | "burnChild" | "childIdOf" | "controlledBurn" | "controlledMintChild" | "controlledResolveTo" | "controlledSafeTransferFrom" | "controlledSetTokenURIPrefix" | "controlledTransferFrom" | "getApproved" | "isApprovedForAll" | "isApprovedOrOwner" | "mintChild" | "name" | "ownerOf" | "resolveTo" | "resolverOf" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "safeTransferFromChild(address,address,uint256,string)" | "safeTransferFromChild(address,address,uint256,string,bytes)" | "setApprovalForAll" | "setOwner" | "supportsInterface" | "symbol" | "tokenURI" | "transferFrom" | "transferFromChild"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "NewURI" | "NewURIPrefix" | "Resolve" | "Sync" | "Transfer"): EventFragment; + encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "burnChild", values: [BigNumberish, string]): string; + encodeFunctionData(functionFragment: "childIdOf", values: [BigNumberish, string]): string; + encodeFunctionData(functionFragment: "controlledBurn", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "controlledMintChild", values: [AddressLike, BigNumberish, string]): string; + encodeFunctionData(functionFragment: "controlledResolveTo", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "controlledSafeTransferFrom", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "controlledSetTokenURIPrefix", values: [string]): string; + encodeFunctionData(functionFragment: "controlledTransferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "isApprovedOrOwner", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "mintChild", values: [AddressLike, BigNumberish, string]): string; + encodeFunctionData(functionFragment: "name", values?: undefined): string; + encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "resolveTo", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "resolverOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "safeTransferFromChild(address,address,uint256,string)", values: [AddressLike, AddressLike, BigNumberish, string]): string; + encodeFunctionData(functionFragment: "safeTransferFromChild(address,address,uint256,string,bytes)", values: [AddressLike, AddressLike, BigNumberish, string, BytesLike]): string; + encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; + encodeFunctionData(functionFragment: "setOwner", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "symbol", values?: undefined): string; + encodeFunctionData(functionFragment: "tokenURI", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "transferFromChild", values: [AddressLike, AddressLike, BigNumberish, string]): string; + decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "burnChild", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "childIdOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "controlledBurn", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "controlledMintChild", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "controlledResolveTo", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "controlledSafeTransferFrom", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "controlledSetTokenURIPrefix", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "controlledTransferFrom", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedOrOwner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "mintChild", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "resolveTo", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "resolverOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFromChild(address,address,uint256,string)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFromChild(address,address,uint256,string,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setOwner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "tokenURI", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferFromChild", data: BytesLike): Result; +} +export declare namespace ApprovalEvent { + type InputTuple = [ + owner: AddressLike, + approved: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [owner: string, approved: string, tokenId: bigint]; + interface OutputObject { + owner: string; + approved: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ApprovalForAllEvent { + type InputTuple = [ + owner: AddressLike, + operator: AddressLike, + approved: boolean + ]; + type OutputTuple = [ + owner: string, + operator: string, + approved: boolean + ]; + interface OutputObject { + owner: string; + operator: string; + approved: boolean; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NewURIEvent { + type InputTuple = [tokenId: BigNumberish, uri: string]; + type OutputTuple = [tokenId: bigint, uri: string]; + interface OutputObject { + tokenId: bigint; + uri: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace NewURIPrefixEvent { + type InputTuple = [prefix: string]; + type OutputTuple = [prefix: string]; + interface OutputObject { + prefix: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ResolveEvent { + type InputTuple = [tokenId: BigNumberish, to: AddressLike]; + type OutputTuple = [tokenId: bigint, to: string]; + interface OutputObject { + tokenId: bigint; + to: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace SyncEvent { + type InputTuple = [ + resolver: AddressLike, + updateId: BigNumberish, + tokenId: BigNumberish + ]; + type OutputTuple = [ + resolver: string, + updateId: bigint, + tokenId: bigint + ]; + interface OutputObject { + resolver: string; + updateId: bigint; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace TransferEvent { + type InputTuple = [ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ]; + type OutputTuple = [from: string, to: string, tokenId: bigint]; + interface OutputObject { + from: string; + to: string; + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface ICNSRegistry extends BaseContract { + connect(runner?: ContractRunner | null): ICNSRegistry; + waitForDeployment(): Promise; + interface: ICNSRegistryInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + approve: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; + burnChild: TypedContractMethod<[ + tokenId: BigNumberish, + label: string + ], [ + void + ], "nonpayable">; + childIdOf: TypedContractMethod<[ + tokenId: BigNumberish, + label: string + ], [ + bigint + ], "view">; + controlledBurn: TypedContractMethod<[ + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + controlledMintChild: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish, + label: string + ], [ + void + ], "nonpayable">; + controlledResolveTo: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + controlledSafeTransferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + _data: BytesLike + ], [ + void + ], "nonpayable">; + controlledSetTokenURIPrefix: TypedContractMethod<[ + prefix: string + ], [ + void + ], "nonpayable">; + controlledTransferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + isApprovedForAll: TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + isApprovedOrOwner: TypedContractMethod<[ + spender: AddressLike, + tokenId: BigNumberish + ], [ + boolean + ], "view">; + mintChild: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish, + label: string + ], [ + void + ], "nonpayable">; + name: TypedContractMethod<[], [string], "view">; + ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + resolveTo: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + resolverOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + "safeTransferFromChild(address,address,uint256,string)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + label: string + ], [ + void + ], "nonpayable">; + "safeTransferFromChild(address,address,uint256,string,bytes)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + label: string, + _data: BytesLike + ], [ + void + ], "nonpayable">; + setApprovalForAll: TypedContractMethod<[ + operator: AddressLike, + _approved: boolean + ], [ + void + ], "nonpayable">; + setOwner: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + supportsInterface: TypedContractMethod<[ + interfaceId: BytesLike + ], [ + boolean + ], "view">; + symbol: TypedContractMethod<[], [string], "view">; + tokenURI: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + transferFrom: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + transferFromChild: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + label: string + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "approve"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; + getFunction(nameOrSignature: "burnChild"): TypedContractMethod<[ + tokenId: BigNumberish, + label: string + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "childIdOf"): TypedContractMethod<[ + tokenId: BigNumberish, + label: string + ], [ + bigint + ], "view">; + getFunction(nameOrSignature: "controlledBurn"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; + getFunction(nameOrSignature: "controlledMintChild"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish, + label: string + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "controlledResolveTo"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "controlledSafeTransferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + _data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "controlledSetTokenURIPrefix"): TypedContractMethod<[prefix: string], [void], "nonpayable">; + getFunction(nameOrSignature: "controlledTransferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "isApprovedOrOwner"): TypedContractMethod<[ + spender: AddressLike, + tokenId: BigNumberish + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "mintChild"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish, + label: string + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "resolveTo"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "resolverOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFromChild(address,address,uint256,string)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + label: string + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFromChild(address,address,uint256,string,bytes)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + label: string, + _data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ + operator: AddressLike, + _approved: boolean + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setOwner"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; + getFunction(nameOrSignature: "symbol"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "tokenURI"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "transferFromChild"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + label: string + ], [ + void + ], "nonpayable">; + getEvent(key: "Approval"): TypedContractEvent; + getEvent(key: "ApprovalForAll"): TypedContractEvent; + getEvent(key: "NewURI"): TypedContractEvent; + getEvent(key: "NewURIPrefix"): TypedContractEvent; + getEvent(key: "Resolve"): TypedContractEvent; + getEvent(key: "Sync"): TypedContractEvent; + getEvent(key: "Transfer"): TypedContractEvent; + filters: { + "Approval(address,address,uint256)": TypedContractEvent; + Approval: TypedContractEvent; + "ApprovalForAll(address,address,bool)": TypedContractEvent; + ApprovalForAll: TypedContractEvent; + "NewURI(uint256,string)": TypedContractEvent; + NewURI: TypedContractEvent; + "NewURIPrefix(string)": TypedContractEvent; + NewURIPrefix: TypedContractEvent; + "Resolve(uint256,address)": TypedContractEvent; + Resolve: TypedContractEvent; + "Sync(address,uint256,uint256)": TypedContractEvent; + Sync: TypedContractEvent; + "Transfer(address,address,uint256)": TypedContractEvent; + Transfer: TypedContractEvent; + }; +} +//# sourceMappingURL=ICNSRegistry.d.ts.map \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/ICNSRegistry.d.ts.map b/dist/types/dot-crypto/contracts/ICNSRegistry.d.ts.map new file mode 100644 index 00000000..142d8a3f --- /dev/null +++ b/dist/types/dot-crypto/contracts/ICNSRegistry.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ICNSRegistry.d.ts","sourceRoot":"","sources":["../../../../types/dot-crypto/contracts/ICNSRegistry.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/ICNSRegistry.js b/dist/types/dot-crypto/contracts/ICNSRegistry.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/dot-crypto/contracts/ICNSRegistry.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/dot-crypto/contracts/IRegistryReader.d.ts b/dist/types/dot-crypto/contracts/IRegistryReader.d.ts new file mode 100644 index 00000000..9068a0e9 --- /dev/null +++ b/dist/types/dot-crypto/contracts/IRegistryReader.d.ts @@ -0,0 +1,100 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../common"; +export interface IRegistryReaderInterface extends Interface { + getFunction(nameOrSignature: "balanceOf" | "childIdOf" | "getApproved" | "isApprovedForAll" | "isApprovedOrOwner" | "isController" | "name" | "ownerOf" | "resolverOf" | "root" | "symbol" | "tokenURI"): FunctionFragment; + encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "childIdOf", values: [BigNumberish, string]): string; + encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; + encodeFunctionData(functionFragment: "isApprovedOrOwner", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "isController", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "name", values?: undefined): string; + encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "resolverOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "root", values?: undefined): string; + encodeFunctionData(functionFragment: "symbol", values?: undefined): string; + encodeFunctionData(functionFragment: "tokenURI", values: [BigNumberish]): string; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "childIdOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isApprovedOrOwner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isController", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "resolverOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "root", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "tokenURI", data: BytesLike): Result; +} +export interface IRegistryReader extends BaseContract { + connect(runner?: ContractRunner | null): IRegistryReader; + waitForDeployment(): Promise; + interface: IRegistryReaderInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; + childIdOf: TypedContractMethod<[ + tokenId: BigNumberish, + label: string + ], [ + bigint + ], "view">; + getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + isApprovedForAll: TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + isApprovedOrOwner: TypedContractMethod<[ + spender: AddressLike, + tokenId: BigNumberish + ], [ + boolean + ], "view">; + isController: TypedContractMethod<[account: AddressLike], [boolean], "view">; + name: TypedContractMethod<[], [string], "view">; + ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + resolverOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + root: TypedContractMethod<[], [bigint], "view">; + symbol: TypedContractMethod<[], [string], "view">; + tokenURI: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; + getFunction(nameOrSignature: "childIdOf"): TypedContractMethod<[ + tokenId: BigNumberish, + label: string + ], [ + bigint + ], "view">; + getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ + owner: AddressLike, + operator: AddressLike + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "isApprovedOrOwner"): TypedContractMethod<[ + spender: AddressLike, + tokenId: BigNumberish + ], [ + boolean + ], "view">; + getFunction(nameOrSignature: "isController"): TypedContractMethod<[account: AddressLike], [boolean], "view">; + getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "resolverOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "root"): TypedContractMethod<[], [bigint], "view">; + getFunction(nameOrSignature: "symbol"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "tokenURI"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; + filters: {}; +} +//# sourceMappingURL=IRegistryReader.d.ts.map \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/IRegistryReader.d.ts.map b/dist/types/dot-crypto/contracts/IRegistryReader.d.ts.map new file mode 100644 index 00000000..da31a778 --- /dev/null +++ b/dist/types/dot-crypto/contracts/IRegistryReader.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IRegistryReader.d.ts","sourceRoot":"","sources":["../../../../types/dot-crypto/contracts/IRegistryReader.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/IRegistryReader.js b/dist/types/dot-crypto/contracts/IRegistryReader.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/dot-crypto/contracts/IRegistryReader.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/dot-crypto/contracts/IResolver.d.ts b/dist/types/dot-crypto/contracts/IResolver.d.ts new file mode 100644 index 00000000..a30c53e8 --- /dev/null +++ b/dist/types/dot-crypto/contracts/IResolver.d.ts @@ -0,0 +1,90 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../common"; +export interface IResolverInterface extends Interface { + getFunction(nameOrSignature: "preconfigure" | "reconfigure" | "reset" | "set" | "setMany"): FunctionFragment; + encodeFunctionData(functionFragment: "preconfigure", values: [string[], string[], BigNumberish]): string; + encodeFunctionData(functionFragment: "reconfigure", values: [string[], string[], BigNumberish]): string; + encodeFunctionData(functionFragment: "reset", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "set", values: [string, string, BigNumberish]): string; + encodeFunctionData(functionFragment: "setMany", values: [string[], string[], BigNumberish]): string; + decodeFunctionResult(functionFragment: "preconfigure", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "reconfigure", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "reset", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "set", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setMany", data: BytesLike): Result; +} +export interface IResolver extends BaseContract { + connect(runner?: ContractRunner | null): IResolver; + waitForDeployment(): Promise; + interface: IResolverInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + preconfigure: TypedContractMethod<[ + keys: string[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + reconfigure: TypedContractMethod<[ + keys: string[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + reset: TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; + set: TypedContractMethod<[ + key: string, + value: string, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + setMany: TypedContractMethod<[ + keys: string[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "preconfigure"): TypedContractMethod<[ + keys: string[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "reconfigure"): TypedContractMethod<[ + keys: string[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "reset"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; + getFunction(nameOrSignature: "set"): TypedContractMethod<[ + key: string, + value: string, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setMany"): TypedContractMethod<[ + keys: string[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + filters: {}; +} +//# sourceMappingURL=IResolver.d.ts.map \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/IResolver.d.ts.map b/dist/types/dot-crypto/contracts/IResolver.d.ts.map new file mode 100644 index 00000000..71610822 --- /dev/null +++ b/dist/types/dot-crypto/contracts/IResolver.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IResolver.d.ts","sourceRoot":"","sources":["../../../../types/dot-crypto/contracts/IResolver.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,aAAa,EACb,mBAAmB,EACpB,MAAM,cAAc,CAAC;AAEtB,MAAM,WAAW,kBAAmB,SAAQ,SAAS;IACnD,WAAW,CACT,eAAe,EACX,cAAc,GACd,aAAa,GACb,OAAO,GACP,KAAK,GACL,SAAS,GACZ,gBAAgB,CAAC;IAEpB,kBAAkB,CAChB,gBAAgB,EAAE,cAAc,EAChC,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,YAAY,CAAC,GACzC,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,aAAa,EAC/B,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,YAAY,CAAC,GACzC,MAAM,CAAC;IACV,kBAAkB,CAAC,gBAAgB,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,YAAY,CAAC,GAAG,MAAM,CAAC;IAC9E,kBAAkB,CAChB,gBAAgB,EAAE,KAAK,EACvB,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,CAAC,GACrC,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,SAAS,EAC3B,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,YAAY,CAAC,GACzC,MAAM,CAAC;IAEV,oBAAoB,CAClB,gBAAgB,EAAE,cAAc,EAChC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,aAAa,EAC/B,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IACzE,oBAAoB,CAAC,gBAAgB,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IACvE,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;CAC5E;AAED,MAAM,WAAW,SAAU,SAAQ,YAAY;IAC7C,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,SAAS,CAAC;IACnD,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,kBAAkB,CAAC;IAE9B,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,YAAY,EAAE,mBAAmB,CAC/B;QAAC,IAAI,EAAE,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,EAAE;QAAE,OAAO,EAAE,YAAY;KAAC,EACzD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,WAAW,EAAE,mBAAmB,CAC9B;QAAC,IAAI,EAAE,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,EAAE;QAAE,OAAO,EAAE,YAAY;KAAC,EACzD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,KAAK,EAAE,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IAE1E,GAAG,EAAE,mBAAmB,CACtB;QAAC,GAAG,EAAE,MAAM;QAAE,KAAK,EAAE,MAAM;QAAE,OAAO,EAAE,YAAY;KAAC,EACnD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,OAAO,EAAE,mBAAmB,CAC1B;QAAC,IAAI,EAAE,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,EAAE;QAAE,OAAO,EAAE,YAAY;KAAC,EACzD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,WAAW,CACT,eAAe,EAAE,cAAc,GAC9B,mBAAmB,CACpB;QAAC,IAAI,EAAE,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,EAAE;QAAE,OAAO,EAAE,YAAY;KAAC,EACzD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,aAAa,GAC7B,mBAAmB,CACpB;QAAC,IAAI,EAAE,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,EAAE;QAAE,OAAO,EAAE,YAAY;KAAC,EACzD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,OAAO,GACvB,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IACtE,WAAW,CACT,eAAe,EAAE,KAAK,GACrB,mBAAmB,CACpB;QAAC,GAAG,EAAE,MAAM;QAAE,KAAK,EAAE,MAAM;QAAE,OAAO,EAAE,YAAY;KAAC,EACnD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,SAAS,GACzB,mBAAmB,CACpB;QAAC,IAAI,EAAE,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,EAAE;QAAE,OAAO,EAAE,YAAY;KAAC,EACzD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,OAAO,EAAE,EAAE,CAAC;CACb"} \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/IResolver.js b/dist/types/dot-crypto/contracts/IResolver.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/dot-crypto/contracts/IResolver.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/dot-crypto/contracts/IResolverReader.d.ts b/dist/types/dot-crypto/contracts/IResolverReader.d.ts new file mode 100644 index 00000000..ea2a656e --- /dev/null +++ b/dist/types/dot-crypto/contracts/IResolverReader.d.ts @@ -0,0 +1,98 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../common"; +export interface IResolverReaderInterface extends Interface { + getFunction(nameOrSignature: "get" | "getByHash" | "getMany" | "getManyByHash" | "nonceOf" | "registry"): FunctionFragment; + encodeFunctionData(functionFragment: "get", values: [string, BigNumberish]): string; + encodeFunctionData(functionFragment: "getByHash", values: [BigNumberish, BigNumberish]): string; + encodeFunctionData(functionFragment: "getMany", values: [string[], BigNumberish]): string; + encodeFunctionData(functionFragment: "getManyByHash", values: [BigNumberish[], BigNumberish]): string; + encodeFunctionData(functionFragment: "nonceOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "registry", values?: undefined): string; + decodeFunctionResult(functionFragment: "get", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getByHash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getMany", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getManyByHash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "nonceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "registry", data: BytesLike): Result; +} +export interface IResolverReader extends BaseContract { + connect(runner?: ContractRunner | null): IResolverReader; + waitForDeployment(): Promise; + interface: IResolverReaderInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + get: TypedContractMethod<[ + key: string, + tokenId: BigNumberish + ], [ + string + ], "view">; + getByHash: TypedContractMethod<[ + keyHash: BigNumberish, + tokenId: BigNumberish + ], [ + [string, string] & { + key: string; + value: string; + } + ], "view">; + getMany: TypedContractMethod<[ + keys: string[], + tokenId: BigNumberish + ], [ + string[] + ], "view">; + getManyByHash: TypedContractMethod<[ + keyHashes: BigNumberish[], + tokenId: BigNumberish + ], [ + [string[], string[]] & { + keys: string[]; + values: string[]; + } + ], "view">; + nonceOf: TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; + registry: TypedContractMethod<[], [string], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "get"): TypedContractMethod<[ + key: string, + tokenId: BigNumberish + ], [ + string + ], "view">; + getFunction(nameOrSignature: "getByHash"): TypedContractMethod<[ + keyHash: BigNumberish, + tokenId: BigNumberish + ], [ + [string, string] & { + key: string; + value: string; + } + ], "view">; + getFunction(nameOrSignature: "getMany"): TypedContractMethod<[ + keys: string[], + tokenId: BigNumberish + ], [ + string[] + ], "view">; + getFunction(nameOrSignature: "getManyByHash"): TypedContractMethod<[ + keyHashes: BigNumberish[], + tokenId: BigNumberish + ], [ + [string[], string[]] & { + keys: string[]; + values: string[]; + } + ], "view">; + getFunction(nameOrSignature: "nonceOf"): TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; + getFunction(nameOrSignature: "registry"): TypedContractMethod<[], [string], "view">; + filters: {}; +} +//# sourceMappingURL=IResolverReader.d.ts.map \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/IResolverReader.d.ts.map b/dist/types/dot-crypto/contracts/IResolverReader.d.ts.map new file mode 100644 index 00000000..5ff657b5 --- /dev/null +++ b/dist/types/dot-crypto/contracts/IResolverReader.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IResolverReader.d.ts","sourceRoot":"","sources":["../../../../types/dot-crypto/contracts/IResolverReader.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/IResolverReader.js b/dist/types/dot-crypto/contracts/IResolverReader.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/dot-crypto/contracts/IResolverReader.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/dot-crypto/contracts/Resolver.d.ts b/dist/types/dot-crypto/contracts/Resolver.d.ts new file mode 100644 index 00000000..cc28b905 --- /dev/null +++ b/dist/types/dot-crypto/contracts/Resolver.d.ts @@ -0,0 +1,312 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; +export interface ResolverInterface extends Interface { + getFunction(nameOrSignature: "get" | "getByHash" | "getMany" | "getManyByHash" | "hashToKey" | "hashesToKeys" | "nonceOf" | "preconfigure" | "reconfigure" | "reconfigureFor" | "registry" | "reset" | "resetFor" | "set" | "setFor" | "setMany" | "setManyFor"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "NewKey" | "ResetRecords" | "Set"): EventFragment; + encodeFunctionData(functionFragment: "get", values: [string, BigNumberish]): string; + encodeFunctionData(functionFragment: "getByHash", values: [BigNumberish, BigNumberish]): string; + encodeFunctionData(functionFragment: "getMany", values: [string[], BigNumberish]): string; + encodeFunctionData(functionFragment: "getManyByHash", values: [BigNumberish[], BigNumberish]): string; + encodeFunctionData(functionFragment: "hashToKey", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "hashesToKeys", values: [BigNumberish[]]): string; + encodeFunctionData(functionFragment: "nonceOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "preconfigure", values: [string[], string[], BigNumberish]): string; + encodeFunctionData(functionFragment: "reconfigure", values: [string[], string[], BigNumberish]): string; + encodeFunctionData(functionFragment: "reconfigureFor", values: [string[], string[], BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "registry", values?: undefined): string; + encodeFunctionData(functionFragment: "reset", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "resetFor", values: [BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "set", values: [string, string, BigNumberish]): string; + encodeFunctionData(functionFragment: "setFor", values: [string, string, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "setMany", values: [string[], string[], BigNumberish]): string; + encodeFunctionData(functionFragment: "setManyFor", values: [string[], string[], BigNumberish, BytesLike]): string; + decodeFunctionResult(functionFragment: "get", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getByHash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getMany", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getManyByHash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "hashToKey", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "hashesToKeys", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "nonceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "preconfigure", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "reconfigure", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "reconfigureFor", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "registry", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "reset", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "resetFor", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "set", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setFor", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setMany", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setManyFor", data: BytesLike): Result; +} +export declare namespace NewKeyEvent { + type InputTuple = [ + tokenId: BigNumberish, + keyIndex: string, + key: string + ]; + type OutputTuple = [tokenId: bigint, keyIndex: string, key: string]; + interface OutputObject { + tokenId: bigint; + keyIndex: string; + key: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace ResetRecordsEvent { + type InputTuple = [tokenId: BigNumberish]; + type OutputTuple = [tokenId: bigint]; + interface OutputObject { + tokenId: bigint; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace SetEvent { + type InputTuple = [ + tokenId: BigNumberish, + keyIndex: string, + valueIndex: string, + key: string, + value: string + ]; + type OutputTuple = [ + tokenId: bigint, + keyIndex: string, + valueIndex: string, + key: string, + value: string + ]; + interface OutputObject { + tokenId: bigint; + keyIndex: string; + valueIndex: string; + key: string; + value: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface Resolver extends BaseContract { + connect(runner?: ContractRunner | null): Resolver; + waitForDeployment(): Promise; + interface: ResolverInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + get: TypedContractMethod<[ + key: string, + tokenId: BigNumberish + ], [ + string + ], "view">; + getByHash: TypedContractMethod<[ + keyHash: BigNumberish, + tokenId: BigNumberish + ], [ + [string, string] & { + key: string; + value: string; + } + ], "view">; + getMany: TypedContractMethod<[ + keys: string[], + tokenId: BigNumberish + ], [ + string[] + ], "view">; + getManyByHash: TypedContractMethod<[ + keyHashes: BigNumberish[], + tokenId: BigNumberish + ], [ + [string[], string[]] & { + keys: string[]; + values: string[]; + } + ], "view">; + hashToKey: TypedContractMethod<[keyHash: BigNumberish], [string], "view">; + hashesToKeys: TypedContractMethod<[ + hashes: BigNumberish[] + ], [ + string[] + ], "view">; + nonceOf: TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; + preconfigure: TypedContractMethod<[ + keys: string[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + reconfigure: TypedContractMethod<[ + keys: string[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + reconfigureFor: TypedContractMethod<[ + keys: string[], + values: string[], + tokenId: BigNumberish, + signature: BytesLike + ], [ + void + ], "nonpayable">; + registry: TypedContractMethod<[], [string], "view">; + reset: TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; + resetFor: TypedContractMethod<[ + tokenId: BigNumberish, + signature: BytesLike + ], [ + void + ], "nonpayable">; + set: TypedContractMethod<[ + key: string, + value: string, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + setFor: TypedContractMethod<[ + key: string, + value: string, + tokenId: BigNumberish, + signature: BytesLike + ], [ + void + ], "nonpayable">; + setMany: TypedContractMethod<[ + keys: string[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + setManyFor: TypedContractMethod<[ + keys: string[], + values: string[], + tokenId: BigNumberish, + signature: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "get"): TypedContractMethod<[ + key: string, + tokenId: BigNumberish + ], [ + string + ], "view">; + getFunction(nameOrSignature: "getByHash"): TypedContractMethod<[ + keyHash: BigNumberish, + tokenId: BigNumberish + ], [ + [string, string] & { + key: string; + value: string; + } + ], "view">; + getFunction(nameOrSignature: "getMany"): TypedContractMethod<[ + keys: string[], + tokenId: BigNumberish + ], [ + string[] + ], "view">; + getFunction(nameOrSignature: "getManyByHash"): TypedContractMethod<[ + keyHashes: BigNumberish[], + tokenId: BigNumberish + ], [ + [string[], string[]] & { + keys: string[]; + values: string[]; + } + ], "view">; + getFunction(nameOrSignature: "hashToKey"): TypedContractMethod<[keyHash: BigNumberish], [string], "view">; + getFunction(nameOrSignature: "hashesToKeys"): TypedContractMethod<[hashes: BigNumberish[]], [string[]], "view">; + getFunction(nameOrSignature: "nonceOf"): TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; + getFunction(nameOrSignature: "preconfigure"): TypedContractMethod<[ + keys: string[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "reconfigure"): TypedContractMethod<[ + keys: string[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "reconfigureFor"): TypedContractMethod<[ + keys: string[], + values: string[], + tokenId: BigNumberish, + signature: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "registry"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "reset"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; + getFunction(nameOrSignature: "resetFor"): TypedContractMethod<[ + tokenId: BigNumberish, + signature: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "set"): TypedContractMethod<[ + key: string, + value: string, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setFor"): TypedContractMethod<[ + key: string, + value: string, + tokenId: BigNumberish, + signature: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setMany"): TypedContractMethod<[ + keys: string[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setManyFor"): TypedContractMethod<[ + keys: string[], + values: string[], + tokenId: BigNumberish, + signature: BytesLike + ], [ + void + ], "nonpayable">; + getEvent(key: "NewKey"): TypedContractEvent; + getEvent(key: "ResetRecords"): TypedContractEvent; + getEvent(key: "Set"): TypedContractEvent; + filters: { + "NewKey(uint256,string,string)": TypedContractEvent; + NewKey: TypedContractEvent; + "ResetRecords(uint256)": TypedContractEvent; + ResetRecords: TypedContractEvent; + "Set(uint256,string,string,string,string)": TypedContractEvent; + Set: TypedContractEvent; + }; +} +//# sourceMappingURL=Resolver.d.ts.map \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/Resolver.d.ts.map b/dist/types/dot-crypto/contracts/Resolver.d.ts.map new file mode 100644 index 00000000..e1af4155 --- /dev/null +++ b/dist/types/dot-crypto/contracts/Resolver.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"Resolver.d.ts","sourceRoot":"","sources":["../../../../types/dot-crypto/contracts/Resolver.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/Resolver.js b/dist/types/dot-crypto/contracts/Resolver.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/dot-crypto/contracts/Resolver.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/dot-crypto/contracts/controllers/DomainZoneController.d.ts b/dist/types/dot-crypto/contracts/controllers/DomainZoneController.d.ts new file mode 100644 index 00000000..11d8d518 --- /dev/null +++ b/dist/types/dot-crypto/contracts/controllers/DomainZoneController.d.ts @@ -0,0 +1,214 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../common"; +export interface DomainZoneControllerInterface extends Interface { + getFunction(nameOrSignature: "addWhitelistAdmin" | "addWhitelisted" | "bulkAddWhitelisted" | "bulkRemoveWhitelisted" | "isWhitelistAdmin" | "isWhitelisted" | "mintChild" | "removeWhitelisted" | "renounceWhitelistAdmin" | "renounceWhitelisted" | "resolveTo" | "setMany"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "MintChild" | "WhitelistAdminAdded" | "WhitelistAdminRemoved" | "WhitelistedAdded" | "WhitelistedRemoved"): EventFragment; + encodeFunctionData(functionFragment: "addWhitelistAdmin", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "addWhitelisted", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "bulkAddWhitelisted", values: [AddressLike[]]): string; + encodeFunctionData(functionFragment: "bulkRemoveWhitelisted", values: [AddressLike[]]): string; + encodeFunctionData(functionFragment: "isWhitelistAdmin", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "isWhitelisted", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "mintChild", values: [AddressLike, BigNumberish, string, string[], string[]]): string; + encodeFunctionData(functionFragment: "removeWhitelisted", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "renounceWhitelistAdmin", values?: undefined): string; + encodeFunctionData(functionFragment: "renounceWhitelisted", values?: undefined): string; + encodeFunctionData(functionFragment: "resolveTo", values: [AddressLike, BigNumberish]): string; + encodeFunctionData(functionFragment: "setMany", values: [string[], string[], BigNumberish]): string; + decodeFunctionResult(functionFragment: "addWhitelistAdmin", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "addWhitelisted", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "bulkAddWhitelisted", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "bulkRemoveWhitelisted", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isWhitelistAdmin", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isWhitelisted", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "mintChild", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "removeWhitelisted", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceWhitelistAdmin", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceWhitelisted", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "resolveTo", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setMany", data: BytesLike): Result; +} +export declare namespace MintChildEvent { + type InputTuple = [ + tokenId: BigNumberish, + parentTokenId: BigNumberish, + label: string + ]; + type OutputTuple = [ + tokenId: bigint, + parentTokenId: bigint, + label: string + ]; + interface OutputObject { + tokenId: bigint; + parentTokenId: bigint; + label: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace WhitelistAdminAddedEvent { + type InputTuple = [account: AddressLike]; + type OutputTuple = [account: string]; + interface OutputObject { + account: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace WhitelistAdminRemovedEvent { + type InputTuple = [account: AddressLike]; + type OutputTuple = [account: string]; + interface OutputObject { + account: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace WhitelistedAddedEvent { + type InputTuple = [account: AddressLike]; + type OutputTuple = [account: string]; + interface OutputObject { + account: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace WhitelistedRemovedEvent { + type InputTuple = [account: AddressLike]; + type OutputTuple = [account: string]; + interface OutputObject { + account: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface DomainZoneController extends BaseContract { + connect(runner?: ContractRunner | null): DomainZoneController; + waitForDeployment(): Promise; + interface: DomainZoneControllerInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + addWhitelistAdmin: TypedContractMethod<[ + account: AddressLike + ], [ + void + ], "nonpayable">; + addWhitelisted: TypedContractMethod<[ + account: AddressLike + ], [ + void + ], "nonpayable">; + bulkAddWhitelisted: TypedContractMethod<[ + accounts: AddressLike[] + ], [ + void + ], "nonpayable">; + bulkRemoveWhitelisted: TypedContractMethod<[ + accounts: AddressLike[] + ], [ + void + ], "nonpayable">; + isWhitelistAdmin: TypedContractMethod<[ + account: AddressLike + ], [ + boolean + ], "view">; + isWhitelisted: TypedContractMethod<[account: AddressLike], [boolean], "view">; + mintChild: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish, + label: string, + keys: string[], + values: string[] + ], [ + void + ], "nonpayable">; + removeWhitelisted: TypedContractMethod<[ + account: AddressLike + ], [ + void + ], "nonpayable">; + renounceWhitelistAdmin: TypedContractMethod<[], [void], "nonpayable">; + renounceWhitelisted: TypedContractMethod<[], [void], "nonpayable">; + resolveTo: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + setMany: TypedContractMethod<[ + keys: string[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "addWhitelistAdmin"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "addWhitelisted"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "bulkAddWhitelisted"): TypedContractMethod<[accounts: AddressLike[]], [void], "nonpayable">; + getFunction(nameOrSignature: "bulkRemoveWhitelisted"): TypedContractMethod<[accounts: AddressLike[]], [void], "nonpayable">; + getFunction(nameOrSignature: "isWhitelistAdmin"): TypedContractMethod<[account: AddressLike], [boolean], "view">; + getFunction(nameOrSignature: "isWhitelisted"): TypedContractMethod<[account: AddressLike], [boolean], "view">; + getFunction(nameOrSignature: "mintChild"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish, + label: string, + keys: string[], + values: string[] + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "removeWhitelisted"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "renounceWhitelistAdmin"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "renounceWhitelisted"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "resolveTo"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "setMany"): TypedContractMethod<[ + keys: string[], + values: string[], + tokenId: BigNumberish + ], [ + void + ], "nonpayable">; + getEvent(key: "MintChild"): TypedContractEvent; + getEvent(key: "WhitelistAdminAdded"): TypedContractEvent; + getEvent(key: "WhitelistAdminRemoved"): TypedContractEvent; + getEvent(key: "WhitelistedAdded"): TypedContractEvent; + getEvent(key: "WhitelistedRemoved"): TypedContractEvent; + filters: { + "MintChild(uint256,uint256,string)": TypedContractEvent; + MintChild: TypedContractEvent; + "WhitelistAdminAdded(address)": TypedContractEvent; + WhitelistAdminAdded: TypedContractEvent; + "WhitelistAdminRemoved(address)": TypedContractEvent; + WhitelistAdminRemoved: TypedContractEvent; + "WhitelistedAdded(address)": TypedContractEvent; + WhitelistedAdded: TypedContractEvent; + "WhitelistedRemoved(address)": TypedContractEvent; + WhitelistedRemoved: TypedContractEvent; + }; +} +//# sourceMappingURL=DomainZoneController.d.ts.map \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/controllers/DomainZoneController.d.ts.map b/dist/types/dot-crypto/contracts/controllers/DomainZoneController.d.ts.map new file mode 100644 index 00000000..4e8d117a --- /dev/null +++ b/dist/types/dot-crypto/contracts/controllers/DomainZoneController.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"DomainZoneController.d.ts","sourceRoot":"","sources":["../../../../../types/dot-crypto/contracts/controllers/DomainZoneController.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/controllers/DomainZoneController.js b/dist/types/dot-crypto/contracts/controllers/DomainZoneController.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/dot-crypto/contracts/controllers/DomainZoneController.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/dot-crypto/contracts/controllers/IMintingController.d.ts b/dist/types/dot-crypto/contracts/controllers/IMintingController.d.ts new file mode 100644 index 00000000..3c222b86 --- /dev/null +++ b/dist/types/dot-crypto/contracts/controllers/IMintingController.d.ts @@ -0,0 +1,66 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../common"; +export interface IMintingControllerInterface extends Interface { + getFunction(nameOrSignature: "mintSLD" | "safeMintSLD(address,string)" | "safeMintSLD(address,string,bytes)"): FunctionFragment; + encodeFunctionData(functionFragment: "mintSLD", values: [AddressLike, string]): string; + encodeFunctionData(functionFragment: "safeMintSLD(address,string)", values: [AddressLike, string]): string; + encodeFunctionData(functionFragment: "safeMintSLD(address,string,bytes)", values: [AddressLike, string, BytesLike]): string; + decodeFunctionResult(functionFragment: "mintSLD", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeMintSLD(address,string)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeMintSLD(address,string,bytes)", data: BytesLike): Result; +} +export interface IMintingController extends BaseContract { + connect(runner?: ContractRunner | null): IMintingController; + waitForDeployment(): Promise; + interface: IMintingControllerInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + mintSLD: TypedContractMethod<[ + to: AddressLike, + label: string + ], [ + void + ], "nonpayable">; + "safeMintSLD(address,string)": TypedContractMethod<[ + to: AddressLike, + label: string + ], [ + void + ], "nonpayable">; + "safeMintSLD(address,string,bytes)": TypedContractMethod<[ + to: AddressLike, + label: string, + _data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "mintSLD"): TypedContractMethod<[ + to: AddressLike, + label: string + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeMintSLD(address,string)"): TypedContractMethod<[ + to: AddressLike, + label: string + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeMintSLD(address,string,bytes)"): TypedContractMethod<[ + to: AddressLike, + label: string, + _data: BytesLike + ], [ + void + ], "nonpayable">; + filters: {}; +} +//# sourceMappingURL=IMintingController.d.ts.map \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/controllers/IMintingController.d.ts.map b/dist/types/dot-crypto/contracts/controllers/IMintingController.d.ts.map new file mode 100644 index 00000000..8a586a49 --- /dev/null +++ b/dist/types/dot-crypto/contracts/controllers/IMintingController.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IMintingController.d.ts","sourceRoot":"","sources":["../../../../../types/dot-crypto/contracts/controllers/IMintingController.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/controllers/IMintingController.js b/dist/types/dot-crypto/contracts/controllers/IMintingController.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/dot-crypto/contracts/controllers/IMintingController.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/dot-crypto/contracts/controllers/ISignatureController.d.ts b/dist/types/dot-crypto/contracts/controllers/ISignatureController.d.ts new file mode 100644 index 00000000..228cd7b4 --- /dev/null +++ b/dist/types/dot-crypto/contracts/controllers/ISignatureController.d.ts @@ -0,0 +1,215 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../common"; +export interface ISignatureControllerInterface extends Interface { + getFunction(nameOrSignature: "burnChildFor" | "burnFor" | "mintChildFor" | "nonceOf" | "resolveToFor" | "safeTransferFromChildFor(address,address,uint256,string,bytes)" | "safeTransferFromChildFor(address,address,uint256,string,bytes,bytes)" | "safeTransferFromFor(address,address,uint256,bytes,bytes)" | "safeTransferFromFor(address,address,uint256,bytes)" | "transferFromChildFor" | "transferFromFor"): FunctionFragment; + encodeFunctionData(functionFragment: "burnChildFor", values: [BigNumberish, string, BytesLike]): string; + encodeFunctionData(functionFragment: "burnFor", values: [BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "mintChildFor", values: [AddressLike, BigNumberish, string, BytesLike]): string; + encodeFunctionData(functionFragment: "nonceOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "resolveToFor", values: [AddressLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "safeTransferFromChildFor(address,address,uint256,string,bytes)", values: [AddressLike, AddressLike, BigNumberish, string, BytesLike]): string; + encodeFunctionData(functionFragment: "safeTransferFromChildFor(address,address,uint256,string,bytes,bytes)", values: [ + AddressLike, + AddressLike, + BigNumberish, + string, + BytesLike, + BytesLike + ]): string; + encodeFunctionData(functionFragment: "safeTransferFromFor(address,address,uint256,bytes,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike, BytesLike]): string; + encodeFunctionData(functionFragment: "safeTransferFromFor(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "transferFromChildFor", values: [AddressLike, AddressLike, BigNumberish, string, BytesLike]): string; + encodeFunctionData(functionFragment: "transferFromFor", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; + decodeFunctionResult(functionFragment: "burnChildFor", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "burnFor", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "mintChildFor", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "nonceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "resolveToFor", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFromChildFor(address,address,uint256,string,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFromChildFor(address,address,uint256,string,bytes,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFromFor(address,address,uint256,bytes,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFromFor(address,address,uint256,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferFromChildFor", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferFromFor", data: BytesLike): Result; +} +export interface ISignatureController extends BaseContract { + connect(runner?: ContractRunner | null): ISignatureController; + waitForDeployment(): Promise; + interface: ISignatureControllerInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + burnChildFor: TypedContractMethod<[ + tokenId: BigNumberish, + label: string, + signature: BytesLike + ], [ + void + ], "nonpayable">; + burnFor: TypedContractMethod<[ + tokenId: BigNumberish, + signature: BytesLike + ], [ + void + ], "nonpayable">; + mintChildFor: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish, + label: string, + signature: BytesLike + ], [ + void + ], "nonpayable">; + nonceOf: TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; + resolveToFor: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish, + signature: BytesLike + ], [ + void + ], "nonpayable">; + "safeTransferFromChildFor(address,address,uint256,string,bytes)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + label: string, + signature: BytesLike + ], [ + void + ], "nonpayable">; + "safeTransferFromChildFor(address,address,uint256,string,bytes,bytes)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + label: string, + _data: BytesLike, + signature: BytesLike + ], [ + void + ], "nonpayable">; + "safeTransferFromFor(address,address,uint256,bytes,bytes)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + _data: BytesLike, + signature: BytesLike + ], [ + void + ], "nonpayable">; + "safeTransferFromFor(address,address,uint256,bytes)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + signature: BytesLike + ], [ + void + ], "nonpayable">; + transferFromChildFor: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + label: string, + signature: BytesLike + ], [ + void + ], "nonpayable">; + transferFromFor: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + signature: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "burnChildFor"): TypedContractMethod<[ + tokenId: BigNumberish, + label: string, + signature: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "burnFor"): TypedContractMethod<[ + tokenId: BigNumberish, + signature: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "mintChildFor"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish, + label: string, + signature: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "nonceOf"): TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; + getFunction(nameOrSignature: "resolveToFor"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish, + signature: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFromChildFor(address,address,uint256,string,bytes)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + label: string, + signature: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFromChildFor(address,address,uint256,string,bytes,bytes)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + label: string, + _data: BytesLike, + signature: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFromFor(address,address,uint256,bytes,bytes)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + _data: BytesLike, + signature: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFromFor(address,address,uint256,bytes)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + signature: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "transferFromChildFor"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + label: string, + signature: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "transferFromFor"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + signature: BytesLike + ], [ + void + ], "nonpayable">; + filters: {}; +} +//# sourceMappingURL=ISignatureController.d.ts.map \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/controllers/ISignatureController.d.ts.map b/dist/types/dot-crypto/contracts/controllers/ISignatureController.d.ts.map new file mode 100644 index 00000000..06dcd4e6 --- /dev/null +++ b/dist/types/dot-crypto/contracts/controllers/ISignatureController.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ISignatureController.d.ts","sourceRoot":"","sources":["../../../../../types/dot-crypto/contracts/controllers/ISignatureController.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/controllers/ISignatureController.js b/dist/types/dot-crypto/contracts/controllers/ISignatureController.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/dot-crypto/contracts/controllers/ISignatureController.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/dot-crypto/contracts/controllers/IURIPrefixController.d.ts b/dist/types/dot-crypto/contracts/controllers/IURIPrefixController.d.ts new file mode 100644 index 00000000..288a76a9 --- /dev/null +++ b/dist/types/dot-crypto/contracts/controllers/IURIPrefixController.d.ts @@ -0,0 +1,30 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../common"; +export interface IURIPrefixControllerInterface extends Interface { + getFunction(nameOrSignature: "setTokenURIPrefix"): FunctionFragment; + encodeFunctionData(functionFragment: "setTokenURIPrefix", values: [string]): string; + decodeFunctionResult(functionFragment: "setTokenURIPrefix", data: BytesLike): Result; +} +export interface IURIPrefixController extends BaseContract { + connect(runner?: ContractRunner | null): IURIPrefixController; + waitForDeployment(): Promise; + interface: IURIPrefixControllerInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + setTokenURIPrefix: TypedContractMethod<[ + prefix: string + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "setTokenURIPrefix"): TypedContractMethod<[prefix: string], [void], "nonpayable">; + filters: {}; +} +//# sourceMappingURL=IURIPrefixController.d.ts.map \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/controllers/IURIPrefixController.d.ts.map b/dist/types/dot-crypto/contracts/controllers/IURIPrefixController.d.ts.map new file mode 100644 index 00000000..b3b0ae22 --- /dev/null +++ b/dist/types/dot-crypto/contracts/controllers/IURIPrefixController.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IURIPrefixController.d.ts","sourceRoot":"","sources":["../../../../../types/dot-crypto/contracts/controllers/IURIPrefixController.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/controllers/IURIPrefixController.js b/dist/types/dot-crypto/contracts/controllers/IURIPrefixController.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/dot-crypto/contracts/controllers/IURIPrefixController.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/dot-crypto/contracts/controllers/MintingController.d.ts b/dist/types/dot-crypto/contracts/controllers/MintingController.d.ts new file mode 100644 index 00000000..39f2dc1a --- /dev/null +++ b/dist/types/dot-crypto/contracts/controllers/MintingController.d.ts @@ -0,0 +1,162 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../common"; +export interface MintingControllerInterface extends Interface { + getFunction(nameOrSignature: "addMinter" | "isMinter" | "mintSLD" | "mintSLDWithResolver" | "registry" | "renounceMinter" | "safeMintSLD(address,string)" | "safeMintSLD(address,string,bytes)" | "safeMintSLDWithResolver(address,string,address,bytes)" | "safeMintSLDWithResolver(address,string,address)"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "MinterAdded" | "MinterRemoved"): EventFragment; + encodeFunctionData(functionFragment: "addMinter", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "isMinter", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "mintSLD", values: [AddressLike, string]): string; + encodeFunctionData(functionFragment: "mintSLDWithResolver", values: [AddressLike, string, AddressLike]): string; + encodeFunctionData(functionFragment: "registry", values?: undefined): string; + encodeFunctionData(functionFragment: "renounceMinter", values?: undefined): string; + encodeFunctionData(functionFragment: "safeMintSLD(address,string)", values: [AddressLike, string]): string; + encodeFunctionData(functionFragment: "safeMintSLD(address,string,bytes)", values: [AddressLike, string, BytesLike]): string; + encodeFunctionData(functionFragment: "safeMintSLDWithResolver(address,string,address,bytes)", values: [AddressLike, string, AddressLike, BytesLike]): string; + encodeFunctionData(functionFragment: "safeMintSLDWithResolver(address,string,address)", values: [AddressLike, string, AddressLike]): string; + decodeFunctionResult(functionFragment: "addMinter", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isMinter", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "mintSLD", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "mintSLDWithResolver", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "registry", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceMinter", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeMintSLD(address,string)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeMintSLD(address,string,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeMintSLDWithResolver(address,string,address,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeMintSLDWithResolver(address,string,address)", data: BytesLike): Result; +} +export declare namespace MinterAddedEvent { + type InputTuple = [account: AddressLike]; + type OutputTuple = [account: string]; + interface OutputObject { + account: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace MinterRemovedEvent { + type InputTuple = [account: AddressLike]; + type OutputTuple = [account: string]; + interface OutputObject { + account: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface MintingController extends BaseContract { + connect(runner?: ContractRunner | null): MintingController; + waitForDeployment(): Promise; + interface: MintingControllerInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + addMinter: TypedContractMethod<[account: AddressLike], [void], "nonpayable">; + isMinter: TypedContractMethod<[account: AddressLike], [boolean], "view">; + mintSLD: TypedContractMethod<[ + to: AddressLike, + label: string + ], [ + void + ], "nonpayable">; + mintSLDWithResolver: TypedContractMethod<[ + to: AddressLike, + label: string, + resolver: AddressLike + ], [ + void + ], "nonpayable">; + registry: TypedContractMethod<[], [string], "view">; + renounceMinter: TypedContractMethod<[], [void], "nonpayable">; + "safeMintSLD(address,string)": TypedContractMethod<[ + to: AddressLike, + label: string + ], [ + void + ], "nonpayable">; + "safeMintSLD(address,string,bytes)": TypedContractMethod<[ + to: AddressLike, + label: string, + _data: BytesLike + ], [ + void + ], "nonpayable">; + "safeMintSLDWithResolver(address,string,address,bytes)": TypedContractMethod<[ + to: AddressLike, + label: string, + resolver: AddressLike, + _data: BytesLike + ], [ + void + ], "nonpayable">; + "safeMintSLDWithResolver(address,string,address)": TypedContractMethod<[ + to: AddressLike, + label: string, + resolver: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "addMinter"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "isMinter"): TypedContractMethod<[account: AddressLike], [boolean], "view">; + getFunction(nameOrSignature: "mintSLD"): TypedContractMethod<[ + to: AddressLike, + label: string + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "mintSLDWithResolver"): TypedContractMethod<[ + to: AddressLike, + label: string, + resolver: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "registry"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "renounceMinter"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "safeMintSLD(address,string)"): TypedContractMethod<[ + to: AddressLike, + label: string + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeMintSLD(address,string,bytes)"): TypedContractMethod<[ + to: AddressLike, + label: string, + _data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeMintSLDWithResolver(address,string,address,bytes)"): TypedContractMethod<[ + to: AddressLike, + label: string, + resolver: AddressLike, + _data: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeMintSLDWithResolver(address,string,address)"): TypedContractMethod<[ + to: AddressLike, + label: string, + resolver: AddressLike + ], [ + void + ], "nonpayable">; + getEvent(key: "MinterAdded"): TypedContractEvent; + getEvent(key: "MinterRemoved"): TypedContractEvent; + filters: { + "MinterAdded(address)": TypedContractEvent; + MinterAdded: TypedContractEvent; + "MinterRemoved(address)": TypedContractEvent; + MinterRemoved: TypedContractEvent; + }; +} +//# sourceMappingURL=MintingController.d.ts.map \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/controllers/MintingController.d.ts.map b/dist/types/dot-crypto/contracts/controllers/MintingController.d.ts.map new file mode 100644 index 00000000..12f1fd19 --- /dev/null +++ b/dist/types/dot-crypto/contracts/controllers/MintingController.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"MintingController.d.ts","sourceRoot":"","sources":["../../../../../types/dot-crypto/contracts/controllers/MintingController.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/controllers/MintingController.js b/dist/types/dot-crypto/contracts/controllers/MintingController.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/dot-crypto/contracts/controllers/MintingController.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/dot-crypto/contracts/controllers/SignatureController.d.ts b/dist/types/dot-crypto/contracts/controllers/SignatureController.d.ts new file mode 100644 index 00000000..06c986c2 --- /dev/null +++ b/dist/types/dot-crypto/contracts/controllers/SignatureController.d.ts @@ -0,0 +1,257 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../common"; +export interface SignatureControllerInterface extends Interface { + getFunction(nameOrSignature: "burnChildFor" | "burnFor" | "mintChildFor" | "nonceOf" | "registry" | "resolveToFor" | "safeMintChildFor(address,uint256,string,bytes,bytes)" | "safeMintChildFor(address,uint256,string,bytes)" | "safeTransferFromChildFor(address,address,uint256,string,bytes)" | "safeTransferFromChildFor(address,address,uint256,string,bytes,bytes)" | "safeTransferFromFor(address,address,uint256,bytes,bytes)" | "safeTransferFromFor(address,address,uint256,bytes)" | "transferFromChildFor" | "transferFromFor"): FunctionFragment; + encodeFunctionData(functionFragment: "burnChildFor", values: [BigNumberish, string, BytesLike]): string; + encodeFunctionData(functionFragment: "burnFor", values: [BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "mintChildFor", values: [AddressLike, BigNumberish, string, BytesLike]): string; + encodeFunctionData(functionFragment: "nonceOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "registry", values?: undefined): string; + encodeFunctionData(functionFragment: "resolveToFor", values: [AddressLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "safeMintChildFor(address,uint256,string,bytes,bytes)", values: [AddressLike, BigNumberish, string, BytesLike, BytesLike]): string; + encodeFunctionData(functionFragment: "safeMintChildFor(address,uint256,string,bytes)", values: [AddressLike, BigNumberish, string, BytesLike]): string; + encodeFunctionData(functionFragment: "safeTransferFromChildFor(address,address,uint256,string,bytes)", values: [AddressLike, AddressLike, BigNumberish, string, BytesLike]): string; + encodeFunctionData(functionFragment: "safeTransferFromChildFor(address,address,uint256,string,bytes,bytes)", values: [ + AddressLike, + AddressLike, + BigNumberish, + string, + BytesLike, + BytesLike + ]): string; + encodeFunctionData(functionFragment: "safeTransferFromFor(address,address,uint256,bytes,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike, BytesLike]): string; + encodeFunctionData(functionFragment: "safeTransferFromFor(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; + encodeFunctionData(functionFragment: "transferFromChildFor", values: [AddressLike, AddressLike, BigNumberish, string, BytesLike]): string; + encodeFunctionData(functionFragment: "transferFromFor", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; + decodeFunctionResult(functionFragment: "burnChildFor", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "burnFor", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "mintChildFor", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "nonceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "registry", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "resolveToFor", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeMintChildFor(address,uint256,string,bytes,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeMintChildFor(address,uint256,string,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFromChildFor(address,address,uint256,string,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFromChildFor(address,address,uint256,string,bytes,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFromFor(address,address,uint256,bytes,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeTransferFromFor(address,address,uint256,bytes)", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferFromChildFor", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "transferFromFor", data: BytesLike): Result; +} +export interface SignatureController extends BaseContract { + connect(runner?: ContractRunner | null): SignatureController; + waitForDeployment(): Promise; + interface: SignatureControllerInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + burnChildFor: TypedContractMethod<[ + tokenId: BigNumberish, + label: string, + signature: BytesLike + ], [ + void + ], "nonpayable">; + burnFor: TypedContractMethod<[ + tokenId: BigNumberish, + signature: BytesLike + ], [ + void + ], "nonpayable">; + mintChildFor: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish, + label: string, + signature: BytesLike + ], [ + void + ], "nonpayable">; + nonceOf: TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; + registry: TypedContractMethod<[], [string], "view">; + resolveToFor: TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish, + signature: BytesLike + ], [ + void + ], "nonpayable">; + "safeMintChildFor(address,uint256,string,bytes,bytes)": TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish, + label: string, + _data: BytesLike, + signature: BytesLike + ], [ + void + ], "nonpayable">; + "safeMintChildFor(address,uint256,string,bytes)": TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish, + label: string, + signature: BytesLike + ], [ + void + ], "nonpayable">; + "safeTransferFromChildFor(address,address,uint256,string,bytes)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + label: string, + signature: BytesLike + ], [ + void + ], "nonpayable">; + "safeTransferFromChildFor(address,address,uint256,string,bytes,bytes)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + label: string, + _data: BytesLike, + signature: BytesLike + ], [ + void + ], "nonpayable">; + "safeTransferFromFor(address,address,uint256,bytes,bytes)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + _data: BytesLike, + signature: BytesLike + ], [ + void + ], "nonpayable">; + "safeTransferFromFor(address,address,uint256,bytes)": TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + signature: BytesLike + ], [ + void + ], "nonpayable">; + transferFromChildFor: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + label: string, + signature: BytesLike + ], [ + void + ], "nonpayable">; + transferFromFor: TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + signature: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "burnChildFor"): TypedContractMethod<[ + tokenId: BigNumberish, + label: string, + signature: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "burnFor"): TypedContractMethod<[ + tokenId: BigNumberish, + signature: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "mintChildFor"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish, + label: string, + signature: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "nonceOf"): TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; + getFunction(nameOrSignature: "registry"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "resolveToFor"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish, + signature: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeMintChildFor(address,uint256,string,bytes,bytes)"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish, + label: string, + _data: BytesLike, + signature: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeMintChildFor(address,uint256,string,bytes)"): TypedContractMethod<[ + to: AddressLike, + tokenId: BigNumberish, + label: string, + signature: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFromChildFor(address,address,uint256,string,bytes)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + label: string, + signature: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFromChildFor(address,address,uint256,string,bytes,bytes)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + label: string, + _data: BytesLike, + signature: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFromFor(address,address,uint256,bytes,bytes)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + _data: BytesLike, + signature: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "safeTransferFromFor(address,address,uint256,bytes)"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + signature: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "transferFromChildFor"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + label: string, + signature: BytesLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "transferFromFor"): TypedContractMethod<[ + from: AddressLike, + to: AddressLike, + tokenId: BigNumberish, + signature: BytesLike + ], [ + void + ], "nonpayable">; + filters: {}; +} +//# sourceMappingURL=SignatureController.d.ts.map \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/controllers/SignatureController.d.ts.map b/dist/types/dot-crypto/contracts/controllers/SignatureController.d.ts.map new file mode 100644 index 00000000..693e548b --- /dev/null +++ b/dist/types/dot-crypto/contracts/controllers/SignatureController.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"SignatureController.d.ts","sourceRoot":"","sources":["../../../../../types/dot-crypto/contracts/controllers/SignatureController.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/controllers/SignatureController.js b/dist/types/dot-crypto/contracts/controllers/SignatureController.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/dot-crypto/contracts/controllers/SignatureController.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/dot-crypto/contracts/controllers/URIPrefixController.d.ts b/dist/types/dot-crypto/contracts/controllers/URIPrefixController.d.ts new file mode 100644 index 00000000..fb6503f8 --- /dev/null +++ b/dist/types/dot-crypto/contracts/controllers/URIPrefixController.d.ts @@ -0,0 +1,136 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../common"; +export interface URIPrefixControllerInterface extends Interface { + getFunction(nameOrSignature: "addWhitelistAdmin" | "addWhitelisted" | "isWhitelistAdmin" | "isWhitelisted" | "registry" | "removeWhitelisted" | "renounceWhitelistAdmin" | "renounceWhitelisted" | "setTokenURIPrefix"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "WhitelistAdminAdded" | "WhitelistAdminRemoved" | "WhitelistedAdded" | "WhitelistedRemoved"): EventFragment; + encodeFunctionData(functionFragment: "addWhitelistAdmin", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "addWhitelisted", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "isWhitelistAdmin", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "isWhitelisted", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "registry", values?: undefined): string; + encodeFunctionData(functionFragment: "removeWhitelisted", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "renounceWhitelistAdmin", values?: undefined): string; + encodeFunctionData(functionFragment: "renounceWhitelisted", values?: undefined): string; + encodeFunctionData(functionFragment: "setTokenURIPrefix", values: [string]): string; + decodeFunctionResult(functionFragment: "addWhitelistAdmin", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "addWhitelisted", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isWhitelistAdmin", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isWhitelisted", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "registry", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "removeWhitelisted", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceWhitelistAdmin", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceWhitelisted", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setTokenURIPrefix", data: BytesLike): Result; +} +export declare namespace WhitelistAdminAddedEvent { + type InputTuple = [account: AddressLike]; + type OutputTuple = [account: string]; + interface OutputObject { + account: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace WhitelistAdminRemovedEvent { + type InputTuple = [account: AddressLike]; + type OutputTuple = [account: string]; + interface OutputObject { + account: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace WhitelistedAddedEvent { + type InputTuple = [account: AddressLike]; + type OutputTuple = [account: string]; + interface OutputObject { + account: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace WhitelistedRemovedEvent { + type InputTuple = [account: AddressLike]; + type OutputTuple = [account: string]; + interface OutputObject { + account: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface URIPrefixController extends BaseContract { + connect(runner?: ContractRunner | null): URIPrefixController; + waitForDeployment(): Promise; + interface: URIPrefixControllerInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + addWhitelistAdmin: TypedContractMethod<[ + account: AddressLike + ], [ + void + ], "nonpayable">; + addWhitelisted: TypedContractMethod<[ + account: AddressLike + ], [ + void + ], "nonpayable">; + isWhitelistAdmin: TypedContractMethod<[ + account: AddressLike + ], [ + boolean + ], "view">; + isWhitelisted: TypedContractMethod<[account: AddressLike], [boolean], "view">; + registry: TypedContractMethod<[], [string], "view">; + removeWhitelisted: TypedContractMethod<[ + account: AddressLike + ], [ + void + ], "nonpayable">; + renounceWhitelistAdmin: TypedContractMethod<[], [void], "nonpayable">; + renounceWhitelisted: TypedContractMethod<[], [void], "nonpayable">; + setTokenURIPrefix: TypedContractMethod<[ + prefix: string + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "addWhitelistAdmin"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "addWhitelisted"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "isWhitelistAdmin"): TypedContractMethod<[account: AddressLike], [boolean], "view">; + getFunction(nameOrSignature: "isWhitelisted"): TypedContractMethod<[account: AddressLike], [boolean], "view">; + getFunction(nameOrSignature: "registry"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "removeWhitelisted"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "renounceWhitelistAdmin"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "renounceWhitelisted"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "setTokenURIPrefix"): TypedContractMethod<[prefix: string], [void], "nonpayable">; + getEvent(key: "WhitelistAdminAdded"): TypedContractEvent; + getEvent(key: "WhitelistAdminRemoved"): TypedContractEvent; + getEvent(key: "WhitelistedAdded"): TypedContractEvent; + getEvent(key: "WhitelistedRemoved"): TypedContractEvent; + filters: { + "WhitelistAdminAdded(address)": TypedContractEvent; + WhitelistAdminAdded: TypedContractEvent; + "WhitelistAdminRemoved(address)": TypedContractEvent; + WhitelistAdminRemoved: TypedContractEvent; + "WhitelistedAdded(address)": TypedContractEvent; + WhitelistedAdded: TypedContractEvent; + "WhitelistedRemoved(address)": TypedContractEvent; + WhitelistedRemoved: TypedContractEvent; + }; +} +//# sourceMappingURL=URIPrefixController.d.ts.map \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/controllers/URIPrefixController.d.ts.map b/dist/types/dot-crypto/contracts/controllers/URIPrefixController.d.ts.map new file mode 100644 index 00000000..eccf9ab2 --- /dev/null +++ b/dist/types/dot-crypto/contracts/controllers/URIPrefixController.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"URIPrefixController.d.ts","sourceRoot":"","sources":["../../../../../types/dot-crypto/contracts/controllers/URIPrefixController.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/controllers/URIPrefixController.js b/dist/types/dot-crypto/contracts/controllers/URIPrefixController.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/dot-crypto/contracts/controllers/URIPrefixController.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/dot-crypto/contracts/controllers/index.d.ts b/dist/types/dot-crypto/contracts/controllers/index.d.ts new file mode 100644 index 00000000..2dbd5f8f --- /dev/null +++ b/dist/types/dot-crypto/contracts/controllers/index.d.ts @@ -0,0 +1,8 @@ +export type { DomainZoneController } from "./DomainZoneController"; +export type { IMintingController } from "./IMintingController"; +export type { ISignatureController } from "./ISignatureController"; +export type { IURIPrefixController } from "./IURIPrefixController"; +export type { MintingController } from "./MintingController"; +export type { SignatureController } from "./SignatureController"; +export type { URIPrefixController } from "./URIPrefixController"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/controllers/index.d.ts.map b/dist/types/dot-crypto/contracts/controllers/index.d.ts.map new file mode 100644 index 00000000..a16c5665 --- /dev/null +++ b/dist/types/dot-crypto/contracts/controllers/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/dot-crypto/contracts/controllers/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACnE,YAAY,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,YAAY,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACnE,YAAY,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACnE,YAAY,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,YAAY,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,YAAY,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC"} \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/controllers/index.js b/dist/types/dot-crypto/contracts/controllers/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/dot-crypto/contracts/controllers/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/dot-crypto/contracts/index.d.ts b/dist/types/dot-crypto/contracts/index.d.ts new file mode 100644 index 00000000..4c70a78f --- /dev/null +++ b/dist/types/dot-crypto/contracts/index.d.ts @@ -0,0 +1,11 @@ +import type * as controllers from "./controllers"; +export type { controllers }; +import type * as util from "./util"; +export type { util }; +export type { CNSRegistry } from "./CNSRegistry"; +export type { ICNSRegistry } from "./ICNSRegistry"; +export type { IRegistryReader } from "./IRegistryReader"; +export type { IResolver } from "./IResolver"; +export type { IResolverReader } from "./IResolverReader"; +export type { Resolver } from "./Resolver"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/index.d.ts.map b/dist/types/dot-crypto/contracts/index.d.ts.map new file mode 100644 index 00000000..7b3202a6 --- /dev/null +++ b/dist/types/dot-crypto/contracts/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../types/dot-crypto/contracts/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,WAAW,MAAM,eAAe,CAAC;AAClD,YAAY,EAAE,WAAW,EAAE,CAAC;AAC5B,OAAO,KAAK,KAAK,IAAI,MAAM,QAAQ,CAAC;AACpC,YAAY,EAAE,IAAI,EAAE,CAAC;AACrB,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,YAAY,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACnD,YAAY,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,YAAY,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,YAAY,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,YAAY,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC"} \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/index.js b/dist/types/dot-crypto/contracts/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/dot-crypto/contracts/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/dot-crypto/contracts/util/BulkWhitelistedRole.d.ts b/dist/types/dot-crypto/contracts/util/BulkWhitelistedRole.d.ts new file mode 100644 index 00000000..e7bb5379 --- /dev/null +++ b/dist/types/dot-crypto/contracts/util/BulkWhitelistedRole.d.ts @@ -0,0 +1,140 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../common"; +export interface BulkWhitelistedRoleInterface extends Interface { + getFunction(nameOrSignature: "addWhitelistAdmin" | "addWhitelisted" | "bulkAddWhitelisted" | "bulkRemoveWhitelisted" | "isWhitelistAdmin" | "isWhitelisted" | "removeWhitelisted" | "renounceWhitelistAdmin" | "renounceWhitelisted"): FunctionFragment; + getEvent(nameOrSignatureOrTopic: "WhitelistAdminAdded" | "WhitelistAdminRemoved" | "WhitelistedAdded" | "WhitelistedRemoved"): EventFragment; + encodeFunctionData(functionFragment: "addWhitelistAdmin", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "addWhitelisted", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "bulkAddWhitelisted", values: [AddressLike[]]): string; + encodeFunctionData(functionFragment: "bulkRemoveWhitelisted", values: [AddressLike[]]): string; + encodeFunctionData(functionFragment: "isWhitelistAdmin", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "isWhitelisted", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "removeWhitelisted", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "renounceWhitelistAdmin", values?: undefined): string; + encodeFunctionData(functionFragment: "renounceWhitelisted", values?: undefined): string; + decodeFunctionResult(functionFragment: "addWhitelistAdmin", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "addWhitelisted", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "bulkAddWhitelisted", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "bulkRemoveWhitelisted", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isWhitelistAdmin", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isWhitelisted", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "removeWhitelisted", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceWhitelistAdmin", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceWhitelisted", data: BytesLike): Result; +} +export declare namespace WhitelistAdminAddedEvent { + type InputTuple = [account: AddressLike]; + type OutputTuple = [account: string]; + interface OutputObject { + account: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace WhitelistAdminRemovedEvent { + type InputTuple = [account: AddressLike]; + type OutputTuple = [account: string]; + interface OutputObject { + account: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace WhitelistedAddedEvent { + type InputTuple = [account: AddressLike]; + type OutputTuple = [account: string]; + interface OutputObject { + account: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export declare namespace WhitelistedRemovedEvent { + type InputTuple = [account: AddressLike]; + type OutputTuple = [account: string]; + interface OutputObject { + account: string; + } + type Event = TypedContractEvent; + type Filter = TypedDeferredTopicFilter; + type Log = TypedEventLog; + type LogDescription = TypedLogDescription; +} +export interface BulkWhitelistedRole extends BaseContract { + connect(runner?: ContractRunner | null): BulkWhitelistedRole; + waitForDeployment(): Promise; + interface: BulkWhitelistedRoleInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + addWhitelistAdmin: TypedContractMethod<[ + account: AddressLike + ], [ + void + ], "nonpayable">; + addWhitelisted: TypedContractMethod<[ + account: AddressLike + ], [ + void + ], "nonpayable">; + bulkAddWhitelisted: TypedContractMethod<[ + accounts: AddressLike[] + ], [ + void + ], "nonpayable">; + bulkRemoveWhitelisted: TypedContractMethod<[ + accounts: AddressLike[] + ], [ + void + ], "nonpayable">; + isWhitelistAdmin: TypedContractMethod<[ + account: AddressLike + ], [ + boolean + ], "view">; + isWhitelisted: TypedContractMethod<[account: AddressLike], [boolean], "view">; + removeWhitelisted: TypedContractMethod<[ + account: AddressLike + ], [ + void + ], "nonpayable">; + renounceWhitelistAdmin: TypedContractMethod<[], [void], "nonpayable">; + renounceWhitelisted: TypedContractMethod<[], [void], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "addWhitelistAdmin"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "addWhitelisted"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "bulkAddWhitelisted"): TypedContractMethod<[accounts: AddressLike[]], [void], "nonpayable">; + getFunction(nameOrSignature: "bulkRemoveWhitelisted"): TypedContractMethod<[accounts: AddressLike[]], [void], "nonpayable">; + getFunction(nameOrSignature: "isWhitelistAdmin"): TypedContractMethod<[account: AddressLike], [boolean], "view">; + getFunction(nameOrSignature: "isWhitelisted"): TypedContractMethod<[account: AddressLike], [boolean], "view">; + getFunction(nameOrSignature: "removeWhitelisted"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "renounceWhitelistAdmin"): TypedContractMethod<[], [void], "nonpayable">; + getFunction(nameOrSignature: "renounceWhitelisted"): TypedContractMethod<[], [void], "nonpayable">; + getEvent(key: "WhitelistAdminAdded"): TypedContractEvent; + getEvent(key: "WhitelistAdminRemoved"): TypedContractEvent; + getEvent(key: "WhitelistedAdded"): TypedContractEvent; + getEvent(key: "WhitelistedRemoved"): TypedContractEvent; + filters: { + "WhitelistAdminAdded(address)": TypedContractEvent; + WhitelistAdminAdded: TypedContractEvent; + "WhitelistAdminRemoved(address)": TypedContractEvent; + WhitelistAdminRemoved: TypedContractEvent; + "WhitelistedAdded(address)": TypedContractEvent; + WhitelistedAdded: TypedContractEvent; + "WhitelistedRemoved(address)": TypedContractEvent; + WhitelistedRemoved: TypedContractEvent; + }; +} +//# sourceMappingURL=BulkWhitelistedRole.d.ts.map \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/util/BulkWhitelistedRole.d.ts.map b/dist/types/dot-crypto/contracts/util/BulkWhitelistedRole.d.ts.map new file mode 100644 index 00000000..c61508e0 --- /dev/null +++ b/dist/types/dot-crypto/contracts/util/BulkWhitelistedRole.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"BulkWhitelistedRole.d.ts","sourceRoot":"","sources":["../../../../../types/dot-crypto/contracts/util/BulkWhitelistedRole.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/util/BulkWhitelistedRole.js b/dist/types/dot-crypto/contracts/util/BulkWhitelistedRole.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/dot-crypto/contracts/util/BulkWhitelistedRole.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/dot-crypto/contracts/util/ControllerRole.d.ts b/dist/types/dot-crypto/contracts/util/ControllerRole.d.ts new file mode 100644 index 00000000..ff671a3e --- /dev/null +++ b/dist/types/dot-crypto/contracts/util/ControllerRole.d.ts @@ -0,0 +1,38 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../common"; +export interface ControllerRoleInterface extends Interface { + getFunction(nameOrSignature: "addController" | "isController" | "renounceController"): FunctionFragment; + encodeFunctionData(functionFragment: "addController", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "isController", values: [AddressLike]): string; + encodeFunctionData(functionFragment: "renounceController", values?: undefined): string; + decodeFunctionResult(functionFragment: "addController", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isController", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "renounceController", data: BytesLike): Result; +} +export interface ControllerRole extends BaseContract { + connect(runner?: ContractRunner | null): ControllerRole; + waitForDeployment(): Promise; + interface: ControllerRoleInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + addController: TypedContractMethod<[ + account: AddressLike + ], [ + void + ], "nonpayable">; + isController: TypedContractMethod<[account: AddressLike], [boolean], "view">; + renounceController: TypedContractMethod<[], [void], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "addController"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; + getFunction(nameOrSignature: "isController"): TypedContractMethod<[account: AddressLike], [boolean], "view">; + getFunction(nameOrSignature: "renounceController"): TypedContractMethod<[], [void], "nonpayable">; + filters: {}; +} +//# sourceMappingURL=ControllerRole.d.ts.map \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/util/ControllerRole.d.ts.map b/dist/types/dot-crypto/contracts/util/ControllerRole.d.ts.map new file mode 100644 index 00000000..f122a425 --- /dev/null +++ b/dist/types/dot-crypto/contracts/util/ControllerRole.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ControllerRole.d.ts","sourceRoot":"","sources":["../../../../../types/dot-crypto/contracts/util/ControllerRole.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,WAAW,EACX,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,aAAa,EACb,mBAAmB,EACpB,MAAM,iBAAiB,CAAC;AAEzB,MAAM,WAAW,uBAAwB,SAAQ,SAAS;IACxD,WAAW,CACT,eAAe,EAAE,eAAe,GAAG,cAAc,GAAG,oBAAoB,GACvE,gBAAgB,CAAC;IAEpB,kBAAkB,CAChB,gBAAgB,EAAE,eAAe,EACjC,MAAM,EAAE,CAAC,WAAW,CAAC,GACpB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,cAAc,EAChC,MAAM,EAAE,CAAC,WAAW,CAAC,GACpB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,oBAAoB,EACtC,MAAM,CAAC,EAAE,SAAS,GACjB,MAAM,CAAC;IAEV,oBAAoB,CAClB,gBAAgB,EAAE,eAAe,EACjC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,cAAc,EAChC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,oBAAoB,EACtC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;CACX;AAED,MAAM,WAAW,cAAe,SAAQ,YAAY;IAClD,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,cAAc,CAAC;IACxD,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,uBAAuB,CAAC;IAEnC,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,aAAa,EAAE,mBAAmB,CAChC;QAAC,OAAO,EAAE,WAAW;KAAC,EACtB;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,YAAY,EAAE,mBAAmB,CAAC,CAAC,OAAO,EAAE,WAAW,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IAE7E,kBAAkB,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IAElE,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,WAAW,CACT,eAAe,EAAE,eAAe,GAC/B,mBAAmB,CAAC,CAAC,OAAO,EAAE,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IACrE,WAAW,CACT,eAAe,EAAE,cAAc,GAC9B,mBAAmB,CAAC,CAAC,OAAO,EAAE,WAAW,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IAClE,WAAW,CACT,eAAe,EAAE,oBAAoB,GACpC,mBAAmB,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IAEjD,OAAO,EAAE,EAAE,CAAC;CACb"} \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/util/ControllerRole.js b/dist/types/dot-crypto/contracts/util/ControllerRole.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/dot-crypto/contracts/util/ControllerRole.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/dot-crypto/contracts/util/FreeMinter.d.ts b/dist/types/dot-crypto/contracts/util/FreeMinter.d.ts new file mode 100644 index 00000000..3352dba2 --- /dev/null +++ b/dist/types/dot-crypto/contracts/util/FreeMinter.d.ts @@ -0,0 +1,66 @@ +import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../common"; +export interface FreeMinterInterface extends Interface { + getFunction(nameOrSignature: "NAME" | "VERSION" | "claim" | "claimTo" | "claimToWithRecords"): FunctionFragment; + encodeFunctionData(functionFragment: "NAME", values?: undefined): string; + encodeFunctionData(functionFragment: "VERSION", values?: undefined): string; + encodeFunctionData(functionFragment: "claim", values: [string]): string; + encodeFunctionData(functionFragment: "claimTo", values: [string, AddressLike]): string; + encodeFunctionData(functionFragment: "claimToWithRecords", values: [string, AddressLike, string[], string[]]): string; + decodeFunctionResult(functionFragment: "NAME", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "VERSION", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "claim", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "claimTo", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "claimToWithRecords", data: BytesLike): Result; +} +export interface FreeMinter extends BaseContract { + connect(runner?: ContractRunner | null): FreeMinter; + waitForDeployment(): Promise; + interface: FreeMinterInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + NAME: TypedContractMethod<[], [string], "view">; + VERSION: TypedContractMethod<[], [string], "view">; + claim: TypedContractMethod<[label: string], [void], "nonpayable">; + claimTo: TypedContractMethod<[ + label: string, + receiver: AddressLike + ], [ + void + ], "nonpayable">; + claimToWithRecords: TypedContractMethod<[ + label: string, + receiver: AddressLike, + keys: string[], + values: string[] + ], [ + void + ], "nonpayable">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "NAME"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "VERSION"): TypedContractMethod<[], [string], "view">; + getFunction(nameOrSignature: "claim"): TypedContractMethod<[label: string], [void], "nonpayable">; + getFunction(nameOrSignature: "claimTo"): TypedContractMethod<[ + label: string, + receiver: AddressLike + ], [ + void + ], "nonpayable">; + getFunction(nameOrSignature: "claimToWithRecords"): TypedContractMethod<[ + label: string, + receiver: AddressLike, + keys: string[], + values: string[] + ], [ + void + ], "nonpayable">; + filters: {}; +} +//# sourceMappingURL=FreeMinter.d.ts.map \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/util/FreeMinter.d.ts.map b/dist/types/dot-crypto/contracts/util/FreeMinter.d.ts.map new file mode 100644 index 00000000..0d072084 --- /dev/null +++ b/dist/types/dot-crypto/contracts/util/FreeMinter.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"FreeMinter.d.ts","sourceRoot":"","sources":["../../../../../types/dot-crypto/contracts/util/FreeMinter.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/util/FreeMinter.js b/dist/types/dot-crypto/contracts/util/FreeMinter.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/dot-crypto/contracts/util/FreeMinter.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/dot-crypto/contracts/util/SignatureUtil.d.ts b/dist/types/dot-crypto/contracts/util/SignatureUtil.d.ts new file mode 100644 index 00000000..321706fb --- /dev/null +++ b/dist/types/dot-crypto/contracts/util/SignatureUtil.d.ts @@ -0,0 +1,30 @@ +import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; +import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../common"; +export interface SignatureUtilInterface extends Interface { + getFunction(nameOrSignature: "nonceOf" | "registry"): FunctionFragment; + encodeFunctionData(functionFragment: "nonceOf", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "registry", values?: undefined): string; + decodeFunctionResult(functionFragment: "nonceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "registry", data: BytesLike): Result; +} +export interface SignatureUtil extends BaseContract { + connect(runner?: ContractRunner | null): SignatureUtil; + waitForDeployment(): Promise; + interface: SignatureUtilInterface; + queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; + on(event: TCEvent, listener: TypedListener): Promise; + on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + once(event: TCEvent, listener: TypedListener): Promise; + once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; + listeners(event: TCEvent): Promise>>; + listeners(eventName?: string): Promise>; + removeAllListeners(event?: TCEvent): Promise; + nonceOf: TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; + registry: TypedContractMethod<[], [string], "view">; + getFunction(key: string | FunctionFragment): T; + getFunction(nameOrSignature: "nonceOf"): TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; + getFunction(nameOrSignature: "registry"): TypedContractMethod<[], [string], "view">; + filters: {}; +} +//# sourceMappingURL=SignatureUtil.d.ts.map \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/util/SignatureUtil.d.ts.map b/dist/types/dot-crypto/contracts/util/SignatureUtil.d.ts.map new file mode 100644 index 00000000..15681168 --- /dev/null +++ b/dist/types/dot-crypto/contracts/util/SignatureUtil.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"SignatureUtil.d.ts","sourceRoot":"","sources":["../../../../../types/dot-crypto/contracts/util/SignatureUtil.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/util/SignatureUtil.js b/dist/types/dot-crypto/contracts/util/SignatureUtil.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/dot-crypto/contracts/util/SignatureUtil.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/dot-crypto/contracts/util/index.d.ts b/dist/types/dot-crypto/contracts/util/index.d.ts new file mode 100644 index 00000000..05e33c57 --- /dev/null +++ b/dist/types/dot-crypto/contracts/util/index.d.ts @@ -0,0 +1,5 @@ +export type { BulkWhitelistedRole } from "./BulkWhitelistedRole"; +export type { ControllerRole } from "./ControllerRole"; +export type { FreeMinter } from "./FreeMinter"; +export type { SignatureUtil } from "./SignatureUtil"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/util/index.d.ts.map b/dist/types/dot-crypto/contracts/util/index.d.ts.map new file mode 100644 index 00000000..51fcb455 --- /dev/null +++ b/dist/types/dot-crypto/contracts/util/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/dot-crypto/contracts/util/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,YAAY,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC"} \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/util/index.js b/dist/types/dot-crypto/contracts/util/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/dot-crypto/contracts/util/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/dot-crypto/index.d.ts b/dist/types/dot-crypto/index.d.ts new file mode 100644 index 00000000..d16eef53 --- /dev/null +++ b/dist/types/dot-crypto/index.d.ts @@ -0,0 +1,3 @@ +import type * as contracts from "./contracts"; +export type { contracts }; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/dot-crypto/index.d.ts.map b/dist/types/dot-crypto/index.d.ts.map new file mode 100644 index 00000000..e1ff3f08 --- /dev/null +++ b/dist/types/dot-crypto/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../types/dot-crypto/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,SAAS,MAAM,aAAa,CAAC;AAC9C,YAAY,EAAE,SAAS,EAAE,CAAC"} \ No newline at end of file diff --git a/dist/types/dot-crypto/index.js b/dist/types/dot-crypto/index.js new file mode 100644 index 00000000..c8ad2e54 --- /dev/null +++ b/dist/types/dot-crypto/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils__factory.d.ts new file mode 100644 index 00000000..cafbd99a --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils__factory.d.ts @@ -0,0 +1,35 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../../../common"; +import type { BytesUtils, BytesUtilsInterface } from "../../../../../@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils"; +declare type BytesUtilsConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class BytesUtils__factory extends ContractFactory { + constructor(...args: BytesUtilsConstructorParams); + getDeployTransaction(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): BytesUtils__factory; + static readonly bytecode = "0x602d6037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea164736f6c6343000811000a"; + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "offset"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "length"; + readonly type: "uint256"; + }]; + readonly name: "OffsetOutOfBoundsError"; + readonly type: "error"; + }]; + static createInterface(): BytesUtilsInterface; + static connect(address: string, runner?: ContractRunner | null): BytesUtils; +} +export {}; +//# sourceMappingURL=BytesUtils__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils__factory.d.ts.map new file mode 100644 index 00000000..8820930c --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"BytesUtils__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,UAAU,EACV,mBAAmB,EACpB,MAAM,6EAA6E,CAAC;AAwBrF,aAAK,2BAA2B,GAC5B,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,mBAAoB,SAAQ,eAAe;gBAC1C,GAAG,IAAI,EAAE,2BAA2B;IAQvC,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,mBAAmB;IAIpE,MAAM,CAAC,QAAQ,CAAC,QAAQ,gNAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,mBAAmB;IAG7C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,UAAU;CAG5E"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils__factory.js new file mode 100644 index 00000000..56355fc1 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils__factory.js @@ -0,0 +1,52 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.BytesUtils__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "uint256", + name: "offset", + type: "uint256", + }, + { + internalType: "uint256", + name: "length", + type: "uint256", + }, + ], + name: "OffsetOutOfBoundsError", + type: "error", + }, +]; +const _bytecode = "0x602d6037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea164736f6c6343000811000a"; +const isSuperArgs = (xs) => xs.length > 1; +class BytesUtils__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(overrides) { + return super.getDeployTransaction(overrides || {}); + } + deploy(overrides) { + return super.deploy(overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.BytesUtils__factory = BytesUtils__factory; +BytesUtils__factory.bytecode = _bytecode; +BytesUtils__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/index.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/index.d.ts new file mode 100644 index 00000000..76ec632a --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/index.d.ts @@ -0,0 +1,2 @@ +export { BytesUtils__factory } from "./BytesUtils__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/index.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/index.d.ts.map new file mode 100644 index 00000000..c8f633f3 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/index.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/index.js new file mode 100644 index 00000000..16bd064a --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/index.js @@ -0,0 +1,5 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.BytesUtils__factory = void 0; +var BytesUtils__factory_1 = require("./BytesUtils__factory"); +Object.defineProperty(exports, "BytesUtils__factory", { enumerable: true, get: function () { return BytesUtils__factory_1.BytesUtils__factory; } }); diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation__factory.d.ts new file mode 100644 index 00000000..bdfbe1f1 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation__factory.d.ts @@ -0,0 +1,583 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, BytesLike, AddressLike, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../../../common"; +import type { BaseRegistrarImplementation, BaseRegistrarImplementationInterface } from "../../../../../@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation"; +declare type BaseRegistrarImplementationConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class BaseRegistrarImplementation__factory extends ContractFactory { + constructor(...args: BaseRegistrarImplementationConstructorParams); + getDeployTransaction(_ens: AddressLike, _baseNode: BytesLike, overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(_ens: AddressLike, _baseNode: BytesLike, overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): BaseRegistrarImplementation__factory; + static readonly bytecode = "0x60806040523480156200001157600080fd5b506040516200201738038062002017833981016040819052620000349162000109565b60408051602080820183526000808352835191820190935282815290916200005d8382620001ea565b5060016200006c8282620001ea565b5050506200008962000083620000b360201b60201c565b620000b7565b600880546001600160a01b0319166001600160a01b039390931692909217909155600955620002b6565b3390565b600680546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600080604083850312156200011d57600080fd5b82516001600160a01b03811681146200013557600080fd5b6020939093015192949293505050565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200017057607f821691505b6020821081036200019157634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620001e557600081815260208120601f850160051c81016020861015620001c05750805b601f850160051c820191505b81811015620001e157828155600101620001cc565b5050505b505050565b81516001600160401b0381111562000206576200020662000145565b6200021e816200021784546200015b565b8462000197565b602080601f8311600181146200025657600084156200023d5750858301515b600019600386901b1c1916600185901b178555620001e1565b600085815260208120601f198616915b82811015620002875788860151825594840194600190910190840162000266565b5085821015620002a65787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b611d5180620002c66000396000f3fe608060405234801561001057600080fd5b50600436106101cf5760003560e01c806395d89b4111610104578063c87b56dd116100a2578063e985e9c511610071578063e985e9c5146103e0578063f2fde38b1461041c578063f6a74ed71461042f578063fca247ac1461044257600080fd5b8063c87b56dd14610381578063d6e4fa8614610394578063da8c229e146103b4578063ddf7fcb0146103d757600080fd5b8063a7fc7a07116100de578063a7fc7a071461033e578063b88d4fde14610351578063c1a287e214610364578063c475abff1461036e57600080fd5b806395d89b411461031057806396e494e814610318578063a22cb4651461032b57600080fd5b80633f15457f116101715780636352211e1161014b5780636352211e146102d157806370a08231146102e4578063715018a6146102f75780638da5cb5b146102ff57600080fd5b80633f15457f1461029857806342842e0e146102ab5780634e543b26146102be57600080fd5b8063095ea7b3116101ad578063095ea7b31461023c5780630e297b451461025157806323b872dd1461027257806328ed4f6c1461028557600080fd5b806301ffc9a7146101d457806306fdde03146101fc578063081812fc14610211575b600080fd5b6101e76101e236600461183e565b610455565b60405190151581526020015b60405180910390f35b6102046104a7565b6040516101f391906118ab565b61022461021f3660046118be565b610539565b6040516001600160a01b0390911681526020016101f3565b61024f61024a3660046118ec565b610560565b005b61026461025f366004611918565b61067a565b6040519081526020016101f3565b61024f610280366004611950565b610691565b61024f610293366004611980565b6106c2565b600854610224906001600160a01b031681565b61024f6102b9366004611950565b6107db565b61024f6102cc3660046119b0565b6107f6565b6102246102df3660046118be565b61086b565b6102646102f23660046119b0565b61088e565b61024f610914565b6006546001600160a01b0316610224565b610204610928565b6101e76103263660046118be565b610937565b61024f6103393660046119cd565b61095d565b61024f61034c3660046119b0565b61096c565b61024f61035f366004611a16565b6109c0565b6102646276a70081565b61026461037c366004611af6565b6109f8565b61020461038f3660046118be565b610b89565b6102646103a23660046118be565b60009081526007602052604090205490565b6101e76103c23660046119b0565b600a6020526000908152604090205460ff1681565b61026460095481565b6101e76103ee366004611b18565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b61024f61042a3660046119b0565b610bfd565b61024f61043d3660046119b0565b610c76565b610264610450366004611918565b610cc7565b60006001600160e01b031982166301ffc9a760e01b148061048657506001600160e01b031982166380ac58cd60e01b145b806104a157506001600160e01b03198216630a3b53db60e21b145b92915050565b6060600080546104b690611b46565b80601f01602080910402602001604051908101604052809291908181526020018280546104e290611b46565b801561052f5780601f106105045761010080835404028352916020019161052f565b820191906000526020600020905b81548152906001019060200180831161051257829003601f168201915b5050505050905090565b600061054482610cd6565b506000908152600460205260409020546001600160a01b031690565b600061056b82610d35565b9050806001600160a01b0316836001600160a01b0316036105dd5760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084015b60405180910390fd5b336001600160a01b03821614806105f957506105f981336103ee565b61066b5760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016105d4565b6106758383610d95565b505050565b60006106898484846000610e03565b949350505050565b61069b3382611013565b6106b75760405162461bcd60e51b81526004016105d490611b80565b61067583838361108e565b6008546009546040516302571be360e01b8152600481019190915230916001600160a01b0316906302571be390602401602060405180830381865afa15801561070f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107339190611bcd565b6001600160a01b03161461074657600080fd5b6107503383611013565b61075957600080fd5b6008546009546040516306ab592360e01b81526004810191909152602481018490526001600160a01b038381166044830152909116906306ab5923906064016020604051808303816000875af11580156107b7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106759190611bea565b610675838383604051806020016040528060008152506109c0565b6107fe6111f2565b600854600954604051630c4b7b8560e11b815260048101919091526001600160a01b03838116602483015290911690631896f70a90604401600060405180830381600087803b15801561085057600080fd5b505af1158015610864573d6000803e3d6000fd5b5050505050565b600081815260076020526040812054421061088557600080fd5b6104a182610d35565b60006001600160a01b0382166108f85760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b60648201526084016105d4565b506001600160a01b031660009081526003602052604090205490565b61091c6111f2565b610926600061124c565b565b6060600180546104b690611b46565b6000818152600760205260408120544290610956906276a70090611c03565b1092915050565b61096833838361129e565b5050565b6109746111f2565b6001600160a01b0381166000818152600a6020526040808220805460ff19166001179055517f0a8bb31534c0ed46f380cb867bd5c803a189ced9a764e30b3a4991a9901d74749190a250565b6109ca3383611013565b6109e65760405162461bcd60e51b81526004016105d490611b80565b6109f28484848461136c565b50505050565b6008546009546040516302571be360e01b8152600481019190915260009130916001600160a01b03909116906302571be390602401602060405180830381865afa158015610a4a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a6e9190611bcd565b6001600160a01b031614610a8157600080fd5b336000908152600a602052604090205460ff16610a9d57600080fd5b6000838152600760205260409020544290610abc906276a70090611c03565b1015610ac757600080fd5b610ad46276a70083611c03565b6000848152600760205260409020546276a70090610af3908590611c03565b610afd9190611c03565b11610b0757600080fd5b60008381526007602052604081208054849290610b25908490611c03565b90915550506000838152600760205260409081902054905184917f9b87a00e30f1ac65d898f070f8a3488fe60517182d0a2098e1b4b93a54aa9bd691610b6d91815260200190565b60405180910390a2505060009081526007602052604090205490565b6060610b9482610cd6565b6000610bab60408051602081019091526000815290565b90506000815111610bcb5760405180602001604052806000815250610bf6565b80610bd58461139f565b604051602001610be6929190611c24565b6040516020818303038152906040525b9392505050565b610c056111f2565b6001600160a01b038116610c6a5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016105d4565b610c738161124c565b50565b610c7e6111f2565b6001600160a01b0381166000818152600a6020526040808220805460ff19169055517f33d83959be2573f5453b12eb9d43b3499bc57d96bd2f067ba44803c859e811139190a250565b60006106898484846001610e03565b6000818152600260205260409020546001600160a01b0316610c735760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105d4565b6000818152600260205260408120546001600160a01b0316806104a15760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105d4565b600081815260046020526040902080546001600160a01b0319166001600160a01b0384169081179091558190610dca82610d35565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6008546009546040516302571be360e01b8152600481019190915260009130916001600160a01b03909116906302571be390602401602060405180830381865afa158015610e55573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e799190611bcd565b6001600160a01b031614610e8c57600080fd5b336000908152600a602052604090205460ff16610ea857600080fd5b610eb185610937565b610eba57600080fd5b610ec76276a70042611c03565b6276a700610ed58542611c03565b610edf9190611c03565b11610ee957600080fd5b610ef38342611c03565b6000868152600760209081526040808320939093556002905220546001600160a01b031615610f2557610f2585611432565b610f2f84866114c7565b8115610fb9576008546009546040516306ab592360e01b81526004810191909152602481018790526001600160a01b038681166044830152909116906306ab5923906064016020604051808303816000875af1158015610f93573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fb79190611bea565b505b6001600160a01b038416857fb3d987963d01b2f68493b4bdb130988f157ea43070d4ad840fee0466ed9370d9610fef8642611c03565b60405190815260200160405180910390a361100a8342611c03565b95945050505050565b60008061101f8361086b565b9050806001600160a01b0316846001600160a01b0316148061105a5750836001600160a01b031661104f84610539565b6001600160a01b0316145b8061068957506001600160a01b0380821660009081526005602090815260408083209388168352929052205460ff16610689565b826001600160a01b03166110a182610d35565b6001600160a01b0316146110c75760405162461bcd60e51b81526004016105d490611c53565b6001600160a01b0382166111295760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b60648201526084016105d4565b826001600160a01b031661113c82610d35565b6001600160a01b0316146111625760405162461bcd60e51b81526004016105d490611c53565b600081815260046020908152604080832080546001600160a01b03199081169091556001600160a01b0387811680865260038552838620805460001901905590871680865283862080546001019055868652600290945282852080549092168417909155905184937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6006546001600160a01b031633146109265760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016105d4565b600680546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b816001600160a01b0316836001600160a01b0316036112ff5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c65720000000000000060448201526064016105d4565b6001600160a01b03838116600081815260056020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b61137784848461108e565b61138384848484611652565b6109f25760405162461bcd60e51b81526004016105d490611c98565b606060006113ac83611750565b600101905060008167ffffffffffffffff8111156113cc576113cc611a00565b6040519080825280601f01601f1916602001820160405280156113f6576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a850494508461140057509392505050565b600061143d82610d35565b905061144882610d35565b600083815260046020908152604080832080546001600160a01b03199081169091556001600160a01b0385168085526003845282852080546000190190558785526002909352818420805490911690555192935084927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6001600160a01b03821661151d5760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f206164647265737360448201526064016105d4565b6000818152600260205260409020546001600160a01b0316156115825760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105d4565b6000818152600260205260409020546001600160a01b0316156115e75760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105d4565b6001600160a01b038216600081815260036020908152604080832080546001019055848352600290915280822080546001600160a01b0319168417905551839291907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b60006001600160a01b0384163b1561174857604051630a85bd0160e11b81526001600160a01b0385169063150b7a0290611696903390899088908890600401611cea565b6020604051808303816000875af19250505080156116d1575060408051601f3d908101601f191682019092526116ce91810190611d27565b60015b61172e573d8080156116ff576040519150601f19603f3d011682016040523d82523d6000602084013e611704565b606091505b5080516000036117265760405162461bcd60e51b81526004016105d490611c98565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610689565b506001610689565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b831061178f5772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef810000000083106117bb576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc1000083106117d957662386f26fc10000830492506010015b6305f5e10083106117f1576305f5e100830492506008015b612710831061180557612710830492506004015b60648310611817576064830492506002015b600a83106104a15760010192915050565b6001600160e01b031981168114610c7357600080fd5b60006020828403121561185057600080fd5b8135610bf681611828565b60005b8381101561187657818101518382015260200161185e565b50506000910152565b6000815180845261189781602086016020860161185b565b601f01601f19169290920160200192915050565b602081526000610bf6602083018461187f565b6000602082840312156118d057600080fd5b5035919050565b6001600160a01b0381168114610c7357600080fd5b600080604083850312156118ff57600080fd5b823561190a816118d7565b946020939093013593505050565b60008060006060848603121561192d57600080fd5b83359250602084013561193f816118d7565b929592945050506040919091013590565b60008060006060848603121561196557600080fd5b8335611970816118d7565b9250602084013561193f816118d7565b6000806040838503121561199357600080fd5b8235915060208301356119a5816118d7565b809150509250929050565b6000602082840312156119c257600080fd5b8135610bf6816118d7565b600080604083850312156119e057600080fd5b82356119eb816118d7565b9150602083013580151581146119a557600080fd5b634e487b7160e01b600052604160045260246000fd5b60008060008060808587031215611a2c57600080fd5b8435611a37816118d7565b93506020850135611a47816118d7565b925060408501359150606085013567ffffffffffffffff80821115611a6b57600080fd5b818701915087601f830112611a7f57600080fd5b813581811115611a9157611a91611a00565b604051601f8201601f19908116603f01168101908382118183101715611ab957611ab9611a00565b816040528281528a6020848701011115611ad257600080fd5b82602086016020830137600060208483010152809550505050505092959194509250565b60008060408385031215611b0957600080fd5b50508035926020909101359150565b60008060408385031215611b2b57600080fd5b8235611b36816118d7565b915060208301356119a5816118d7565b600181811c90821680611b5a57607f821691505b602082108103611b7a57634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252602d908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526c1c881bdc88185c1c1c9bdd9959609a1b606082015260800190565b600060208284031215611bdf57600080fd5b8151610bf6816118d7565b600060208284031215611bfc57600080fd5b5051919050565b808201808211156104a157634e487b7160e01b600052601160045260246000fd5b60008351611c3681846020880161185b565b835190830190611c4a81836020880161185b565b01949350505050565b60208082526025908201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060408201526437bbb732b960d91b606082015260800190565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090611d1d9083018461187f565b9695505050505050565b600060208284031215611d3957600080fd5b8151610bf68161182856fea164736f6c6343000811000a"; + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "contract ENS"; + readonly name: "_ens"; + readonly type: "address"; + }, { + readonly internalType: "bytes32"; + readonly name: "_baseNode"; + readonly type: "bytes32"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "constructor"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "approved"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Approval"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "ApprovalForAll"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "controller"; + readonly type: "address"; + }]; + readonly name: "ControllerAdded"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "controller"; + readonly type: "address"; + }]; + readonly name: "ControllerRemoved"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "expires"; + readonly type: "uint256"; + }]; + readonly name: "NameMigrated"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "expires"; + readonly type: "uint256"; + }]; + readonly name: "NameRegistered"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "expires"; + readonly type: "uint256"; + }]; + readonly name: "NameRenewed"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "previousOwner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "newOwner"; + readonly type: "address"; + }]; + readonly name: "OwnershipTransferred"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Transfer"; + readonly type: "event"; + }, { + readonly inputs: readonly []; + readonly name: "GRACE_PERIOD"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "controller"; + readonly type: "address"; + }]; + readonly name: "addController"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "approve"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }]; + readonly name: "available"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "balanceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "baseNode"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly name: "controllers"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "ens"; + readonly outputs: readonly [{ + readonly internalType: "contract ENS"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getApproved"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly name: "isApprovedForAll"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "name"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }]; + readonly name: "nameExpires"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "owner"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "ownerOf"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }, { + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "reclaim"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }, { + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "duration"; + readonly type: "uint256"; + }]; + readonly name: "register"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }, { + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "duration"; + readonly type: "uint256"; + }]; + readonly name: "registerOnly"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "controller"; + readonly type: "address"; + }]; + readonly name: "removeController"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "duration"; + readonly type: "uint256"; + }]; + readonly name: "renew"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "renounceOwnership"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "setApprovalForAll"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }]; + readonly name: "setResolver"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceID"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "symbol"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "tokenURI"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "transferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "newOwner"; + readonly type: "address"; + }]; + readonly name: "transferOwnership"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): BaseRegistrarImplementationInterface; + static connect(address: string, runner?: ContractRunner | null): BaseRegistrarImplementation; +} +export {}; +//# sourceMappingURL=BaseRegistrarImplementation__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation__factory.d.ts.map new file mode 100644 index 00000000..aeb3c0a1 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"BaseRegistrarImplementation__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,MAAM,EACN,SAAS,EACT,WAAW,EACX,yBAAyB,EACzB,cAAc,EACf,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,2BAA2B,EAC3B,oCAAoC,EACrC,MAAM,6FAA6F,CAAC;AAguBrG,aAAK,4CAA4C,GAC7C,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,oCAAqC,SAAQ,eAAe;gBAC3D,GAAG,IAAI,EAAE,4CAA4C;IAQxD,oBAAoB,CAC3B,IAAI,EAAE,WAAW,EACjB,SAAS,EAAE,SAAS,EACpB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CACb,IAAI,EAAE,WAAW,EACjB,SAAS,EAAE,SAAS,EACpB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAItB,2BAA2B;;IAIjD,OAAO,CACd,MAAM,EAAE,cAAc,GAAG,IAAI,GAC5B,oCAAoC;IAIvC,MAAM,CAAC,QAAQ,CAAC,QAAQ,sjgBAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,oCAAoC;IAG9D,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,2BAA2B;CAO/B"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation__factory.js new file mode 100644 index 00000000..c0d23e30 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation__factory.js @@ -0,0 +1,764 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.BaseRegistrarImplementation__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "contract ENS", + name: "_ens", + type: "address", + }, + { + internalType: "bytes32", + name: "_baseNode", + type: "bytes32", + }, + ], + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "approved", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Approval", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "ApprovalForAll", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "controller", + type: "address", + }, + ], + name: "ControllerAdded", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "controller", + type: "address", + }, + ], + name: "ControllerRemoved", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "expires", + type: "uint256", + }, + ], + name: "NameMigrated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "expires", + type: "uint256", + }, + ], + name: "NameRegistered", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "expires", + type: "uint256", + }, + ], + name: "NameRenewed", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "previousOwner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnershipTransferred", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Transfer", + type: "event", + }, + { + inputs: [], + name: "GRACE_PERIOD", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "controller", + type: "address", + }, + ], + name: "addController", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "approve", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + ], + name: "available", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "baseNode", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + name: "controllers", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "ens", + outputs: [ + { + internalType: "contract ENS", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getApproved", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + name: "isApprovedForAll", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "name", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + ], + name: "nameExpires", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "ownerOf", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "reclaim", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "uint256", + name: "duration", + type: "uint256", + }, + ], + name: "register", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "uint256", + name: "duration", + type: "uint256", + }, + ], + name: "registerOnly", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "controller", + type: "address", + }, + ], + name: "removeController", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + internalType: "uint256", + name: "duration", + type: "uint256", + }, + ], + name: "renew", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "renounceOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "setApprovalForAll", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "resolver", + type: "address", + }, + ], + name: "setResolver", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceID", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "symbol", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "tokenURI", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "transferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "transferOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +const _bytecode = "0x60806040523480156200001157600080fd5b506040516200201738038062002017833981016040819052620000349162000109565b60408051602080820183526000808352835191820190935282815290916200005d8382620001ea565b5060016200006c8282620001ea565b5050506200008962000083620000b360201b60201c565b620000b7565b600880546001600160a01b0319166001600160a01b039390931692909217909155600955620002b6565b3390565b600680546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600080604083850312156200011d57600080fd5b82516001600160a01b03811681146200013557600080fd5b6020939093015192949293505050565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200017057607f821691505b6020821081036200019157634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620001e557600081815260208120601f850160051c81016020861015620001c05750805b601f850160051c820191505b81811015620001e157828155600101620001cc565b5050505b505050565b81516001600160401b0381111562000206576200020662000145565b6200021e816200021784546200015b565b8462000197565b602080601f8311600181146200025657600084156200023d5750858301515b600019600386901b1c1916600185901b178555620001e1565b600085815260208120601f198616915b82811015620002875788860151825594840194600190910190840162000266565b5085821015620002a65787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b611d5180620002c66000396000f3fe608060405234801561001057600080fd5b50600436106101cf5760003560e01c806395d89b4111610104578063c87b56dd116100a2578063e985e9c511610071578063e985e9c5146103e0578063f2fde38b1461041c578063f6a74ed71461042f578063fca247ac1461044257600080fd5b8063c87b56dd14610381578063d6e4fa8614610394578063da8c229e146103b4578063ddf7fcb0146103d757600080fd5b8063a7fc7a07116100de578063a7fc7a071461033e578063b88d4fde14610351578063c1a287e214610364578063c475abff1461036e57600080fd5b806395d89b411461031057806396e494e814610318578063a22cb4651461032b57600080fd5b80633f15457f116101715780636352211e1161014b5780636352211e146102d157806370a08231146102e4578063715018a6146102f75780638da5cb5b146102ff57600080fd5b80633f15457f1461029857806342842e0e146102ab5780634e543b26146102be57600080fd5b8063095ea7b3116101ad578063095ea7b31461023c5780630e297b451461025157806323b872dd1461027257806328ed4f6c1461028557600080fd5b806301ffc9a7146101d457806306fdde03146101fc578063081812fc14610211575b600080fd5b6101e76101e236600461183e565b610455565b60405190151581526020015b60405180910390f35b6102046104a7565b6040516101f391906118ab565b61022461021f3660046118be565b610539565b6040516001600160a01b0390911681526020016101f3565b61024f61024a3660046118ec565b610560565b005b61026461025f366004611918565b61067a565b6040519081526020016101f3565b61024f610280366004611950565b610691565b61024f610293366004611980565b6106c2565b600854610224906001600160a01b031681565b61024f6102b9366004611950565b6107db565b61024f6102cc3660046119b0565b6107f6565b6102246102df3660046118be565b61086b565b6102646102f23660046119b0565b61088e565b61024f610914565b6006546001600160a01b0316610224565b610204610928565b6101e76103263660046118be565b610937565b61024f6103393660046119cd565b61095d565b61024f61034c3660046119b0565b61096c565b61024f61035f366004611a16565b6109c0565b6102646276a70081565b61026461037c366004611af6565b6109f8565b61020461038f3660046118be565b610b89565b6102646103a23660046118be565b60009081526007602052604090205490565b6101e76103c23660046119b0565b600a6020526000908152604090205460ff1681565b61026460095481565b6101e76103ee366004611b18565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b61024f61042a3660046119b0565b610bfd565b61024f61043d3660046119b0565b610c76565b610264610450366004611918565b610cc7565b60006001600160e01b031982166301ffc9a760e01b148061048657506001600160e01b031982166380ac58cd60e01b145b806104a157506001600160e01b03198216630a3b53db60e21b145b92915050565b6060600080546104b690611b46565b80601f01602080910402602001604051908101604052809291908181526020018280546104e290611b46565b801561052f5780601f106105045761010080835404028352916020019161052f565b820191906000526020600020905b81548152906001019060200180831161051257829003601f168201915b5050505050905090565b600061054482610cd6565b506000908152600460205260409020546001600160a01b031690565b600061056b82610d35565b9050806001600160a01b0316836001600160a01b0316036105dd5760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084015b60405180910390fd5b336001600160a01b03821614806105f957506105f981336103ee565b61066b5760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016105d4565b6106758383610d95565b505050565b60006106898484846000610e03565b949350505050565b61069b3382611013565b6106b75760405162461bcd60e51b81526004016105d490611b80565b61067583838361108e565b6008546009546040516302571be360e01b8152600481019190915230916001600160a01b0316906302571be390602401602060405180830381865afa15801561070f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107339190611bcd565b6001600160a01b03161461074657600080fd5b6107503383611013565b61075957600080fd5b6008546009546040516306ab592360e01b81526004810191909152602481018490526001600160a01b038381166044830152909116906306ab5923906064016020604051808303816000875af11580156107b7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106759190611bea565b610675838383604051806020016040528060008152506109c0565b6107fe6111f2565b600854600954604051630c4b7b8560e11b815260048101919091526001600160a01b03838116602483015290911690631896f70a90604401600060405180830381600087803b15801561085057600080fd5b505af1158015610864573d6000803e3d6000fd5b5050505050565b600081815260076020526040812054421061088557600080fd5b6104a182610d35565b60006001600160a01b0382166108f85760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b60648201526084016105d4565b506001600160a01b031660009081526003602052604090205490565b61091c6111f2565b610926600061124c565b565b6060600180546104b690611b46565b6000818152600760205260408120544290610956906276a70090611c03565b1092915050565b61096833838361129e565b5050565b6109746111f2565b6001600160a01b0381166000818152600a6020526040808220805460ff19166001179055517f0a8bb31534c0ed46f380cb867bd5c803a189ced9a764e30b3a4991a9901d74749190a250565b6109ca3383611013565b6109e65760405162461bcd60e51b81526004016105d490611b80565b6109f28484848461136c565b50505050565b6008546009546040516302571be360e01b8152600481019190915260009130916001600160a01b03909116906302571be390602401602060405180830381865afa158015610a4a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a6e9190611bcd565b6001600160a01b031614610a8157600080fd5b336000908152600a602052604090205460ff16610a9d57600080fd5b6000838152600760205260409020544290610abc906276a70090611c03565b1015610ac757600080fd5b610ad46276a70083611c03565b6000848152600760205260409020546276a70090610af3908590611c03565b610afd9190611c03565b11610b0757600080fd5b60008381526007602052604081208054849290610b25908490611c03565b90915550506000838152600760205260409081902054905184917f9b87a00e30f1ac65d898f070f8a3488fe60517182d0a2098e1b4b93a54aa9bd691610b6d91815260200190565b60405180910390a2505060009081526007602052604090205490565b6060610b9482610cd6565b6000610bab60408051602081019091526000815290565b90506000815111610bcb5760405180602001604052806000815250610bf6565b80610bd58461139f565b604051602001610be6929190611c24565b6040516020818303038152906040525b9392505050565b610c056111f2565b6001600160a01b038116610c6a5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016105d4565b610c738161124c565b50565b610c7e6111f2565b6001600160a01b0381166000818152600a6020526040808220805460ff19169055517f33d83959be2573f5453b12eb9d43b3499bc57d96bd2f067ba44803c859e811139190a250565b60006106898484846001610e03565b6000818152600260205260409020546001600160a01b0316610c735760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105d4565b6000818152600260205260408120546001600160a01b0316806104a15760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105d4565b600081815260046020526040902080546001600160a01b0319166001600160a01b0384169081179091558190610dca82610d35565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6008546009546040516302571be360e01b8152600481019190915260009130916001600160a01b03909116906302571be390602401602060405180830381865afa158015610e55573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e799190611bcd565b6001600160a01b031614610e8c57600080fd5b336000908152600a602052604090205460ff16610ea857600080fd5b610eb185610937565b610eba57600080fd5b610ec76276a70042611c03565b6276a700610ed58542611c03565b610edf9190611c03565b11610ee957600080fd5b610ef38342611c03565b6000868152600760209081526040808320939093556002905220546001600160a01b031615610f2557610f2585611432565b610f2f84866114c7565b8115610fb9576008546009546040516306ab592360e01b81526004810191909152602481018790526001600160a01b038681166044830152909116906306ab5923906064016020604051808303816000875af1158015610f93573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fb79190611bea565b505b6001600160a01b038416857fb3d987963d01b2f68493b4bdb130988f157ea43070d4ad840fee0466ed9370d9610fef8642611c03565b60405190815260200160405180910390a361100a8342611c03565b95945050505050565b60008061101f8361086b565b9050806001600160a01b0316846001600160a01b0316148061105a5750836001600160a01b031661104f84610539565b6001600160a01b0316145b8061068957506001600160a01b0380821660009081526005602090815260408083209388168352929052205460ff16610689565b826001600160a01b03166110a182610d35565b6001600160a01b0316146110c75760405162461bcd60e51b81526004016105d490611c53565b6001600160a01b0382166111295760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b60648201526084016105d4565b826001600160a01b031661113c82610d35565b6001600160a01b0316146111625760405162461bcd60e51b81526004016105d490611c53565b600081815260046020908152604080832080546001600160a01b03199081169091556001600160a01b0387811680865260038552838620805460001901905590871680865283862080546001019055868652600290945282852080549092168417909155905184937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6006546001600160a01b031633146109265760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016105d4565b600680546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b816001600160a01b0316836001600160a01b0316036112ff5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c65720000000000000060448201526064016105d4565b6001600160a01b03838116600081815260056020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b61137784848461108e565b61138384848484611652565b6109f25760405162461bcd60e51b81526004016105d490611c98565b606060006113ac83611750565b600101905060008167ffffffffffffffff8111156113cc576113cc611a00565b6040519080825280601f01601f1916602001820160405280156113f6576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a850494508461140057509392505050565b600061143d82610d35565b905061144882610d35565b600083815260046020908152604080832080546001600160a01b03199081169091556001600160a01b0385168085526003845282852080546000190190558785526002909352818420805490911690555192935084927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6001600160a01b03821661151d5760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f206164647265737360448201526064016105d4565b6000818152600260205260409020546001600160a01b0316156115825760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105d4565b6000818152600260205260409020546001600160a01b0316156115e75760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105d4565b6001600160a01b038216600081815260036020908152604080832080546001019055848352600290915280822080546001600160a01b0319168417905551839291907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b60006001600160a01b0384163b1561174857604051630a85bd0160e11b81526001600160a01b0385169063150b7a0290611696903390899088908890600401611cea565b6020604051808303816000875af19250505080156116d1575060408051601f3d908101601f191682019092526116ce91810190611d27565b60015b61172e573d8080156116ff576040519150601f19603f3d011682016040523d82523d6000602084013e611704565b606091505b5080516000036117265760405162461bcd60e51b81526004016105d490611c98565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610689565b506001610689565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b831061178f5772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef810000000083106117bb576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc1000083106117d957662386f26fc10000830492506010015b6305f5e10083106117f1576305f5e100830492506008015b612710831061180557612710830492506004015b60648310611817576064830492506002015b600a83106104a15760010192915050565b6001600160e01b031981168114610c7357600080fd5b60006020828403121561185057600080fd5b8135610bf681611828565b60005b8381101561187657818101518382015260200161185e565b50506000910152565b6000815180845261189781602086016020860161185b565b601f01601f19169290920160200192915050565b602081526000610bf6602083018461187f565b6000602082840312156118d057600080fd5b5035919050565b6001600160a01b0381168114610c7357600080fd5b600080604083850312156118ff57600080fd5b823561190a816118d7565b946020939093013593505050565b60008060006060848603121561192d57600080fd5b83359250602084013561193f816118d7565b929592945050506040919091013590565b60008060006060848603121561196557600080fd5b8335611970816118d7565b9250602084013561193f816118d7565b6000806040838503121561199357600080fd5b8235915060208301356119a5816118d7565b809150509250929050565b6000602082840312156119c257600080fd5b8135610bf6816118d7565b600080604083850312156119e057600080fd5b82356119eb816118d7565b9150602083013580151581146119a557600080fd5b634e487b7160e01b600052604160045260246000fd5b60008060008060808587031215611a2c57600080fd5b8435611a37816118d7565b93506020850135611a47816118d7565b925060408501359150606085013567ffffffffffffffff80821115611a6b57600080fd5b818701915087601f830112611a7f57600080fd5b813581811115611a9157611a91611a00565b604051601f8201601f19908116603f01168101908382118183101715611ab957611ab9611a00565b816040528281528a6020848701011115611ad257600080fd5b82602086016020830137600060208483010152809550505050505092959194509250565b60008060408385031215611b0957600080fd5b50508035926020909101359150565b60008060408385031215611b2b57600080fd5b8235611b36816118d7565b915060208301356119a5816118d7565b600181811c90821680611b5a57607f821691505b602082108103611b7a57634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252602d908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526c1c881bdc88185c1c1c9bdd9959609a1b606082015260800190565b600060208284031215611bdf57600080fd5b8151610bf6816118d7565b600060208284031215611bfc57600080fd5b5051919050565b808201808211156104a157634e487b7160e01b600052601160045260246000fd5b60008351611c3681846020880161185b565b835190830190611c4a81836020880161185b565b01949350505050565b60208082526025908201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060408201526437bbb732b960d91b606082015260800190565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090611d1d9083018461187f565b9695505050505050565b600060208284031215611d3957600080fd5b8151610bf68161182856fea164736f6c6343000811000a"; +const isSuperArgs = (xs) => xs.length > 1; +class BaseRegistrarImplementation__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(_ens, _baseNode, overrides) { + return super.getDeployTransaction(_ens, _baseNode, overrides || {}); + } + deploy(_ens, _baseNode, overrides) { + return super.deploy(_ens, _baseNode, overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.BaseRegistrarImplementation__factory = BaseRegistrarImplementation__factory; +BaseRegistrarImplementation__factory.bytecode = _bytecode; +BaseRegistrarImplementation__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle__factory.d.ts new file mode 100644 index 00000000..d667ba5e --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle__factory.d.ts @@ -0,0 +1,51 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, BigNumberish, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../../../common"; +import type { DummyOracle, DummyOracleInterface } from "../../../../../@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle"; +declare type DummyOracleConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class DummyOracle__factory extends ContractFactory { + constructor(...args: DummyOracleConstructorParams); + getDeployTransaction(_value: BigNumberish, overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(_value: BigNumberish, overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): DummyOracle__factory; + static readonly bytecode = "0x608060405234801561001057600080fd5b506040516100e83803806100e883398101604081905261002f9161003e565b61003881600055565b50610057565b60006020828403121561005057600080fd5b5051919050565b6083806100656000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c806350d25bcd146037578063e5c19b2d14604c575b600080fd5b60005460405190815260200160405180910390f35b605c6057366004605e565b600055565b005b600060208284031215606f57600080fd5b503591905056fea164736f6c6343000811000a"; + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "int256"; + readonly name: "_value"; + readonly type: "int256"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "constructor"; + }, { + readonly inputs: readonly []; + readonly name: "latestAnswer"; + readonly outputs: readonly [{ + readonly internalType: "int256"; + readonly name: ""; + readonly type: "int256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "int256"; + readonly name: "_value"; + readonly type: "int256"; + }]; + readonly name: "set"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): DummyOracleInterface; + static connect(address: string, runner?: ContractRunner | null): DummyOracle; +} +export {}; +//# sourceMappingURL=DummyOracle__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle__factory.d.ts.map new file mode 100644 index 00000000..8cf8beee --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"DummyOracle__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,MAAM,EACN,YAAY,EACZ,yBAAyB,EACzB,cAAc,EACf,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,WAAW,EACX,oBAAoB,EACrB,MAAM,6EAA6E,CAAC;AA6CrF,aAAK,4BAA4B,GAC7B,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,oBAAqB,SAAQ,eAAe;gBAC3C,GAAG,IAAI,EAAE,4BAA4B;IAQxC,oBAAoB,CAC3B,MAAM,EAAE,YAAY,EACpB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CACb,MAAM,EAAE,YAAY,EACpB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAItB,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,oBAAoB;IAIrE,MAAM,CAAC,QAAQ,CAAC,QAAQ,wdAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,oBAAoB;IAG9C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,WAAW;CAG7E"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle__factory.js new file mode 100644 index 00000000..4845e9ea --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle__factory.js @@ -0,0 +1,73 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.DummyOracle__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "int256", + name: "_value", + type: "int256", + }, + ], + stateMutability: "nonpayable", + type: "constructor", + }, + { + inputs: [], + name: "latestAnswer", + outputs: [ + { + internalType: "int256", + name: "", + type: "int256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "int256", + name: "_value", + type: "int256", + }, + ], + name: "set", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +const _bytecode = "0x608060405234801561001057600080fd5b506040516100e83803806100e883398101604081905261002f9161003e565b61003881600055565b50610057565b60006020828403121561005057600080fd5b5051919050565b6083806100656000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c806350d25bcd146037578063e5c19b2d14604c575b600080fd5b60005460405190815260200160405180910390f35b605c6057366004605e565b600055565b005b600060208284031215606f57600080fd5b503591905056fea164736f6c6343000811000a"; +const isSuperArgs = (xs) => xs.length > 1; +class DummyOracle__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(_value, overrides) { + return super.getDeployTransaction(_value, overrides || {}); + } + deploy(_value, overrides) { + return super.deploy(_value, overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.DummyOracle__factory = DummyOracle__factory; +DummyOracle__factory.bytecode = _bytecode; +DummyOracle__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController__factory.d.ts new file mode 100644 index 00000000..95d53b4f --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController__factory.d.ts @@ -0,0 +1,483 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, BigNumberish, AddressLike, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../../../common"; +import type { ETHRegistrarController, ETHRegistrarControllerInterface } from "../../../../../@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController"; +declare type ETHRegistrarControllerConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class ETHRegistrarController__factory extends ContractFactory { + constructor(...args: ETHRegistrarControllerConstructorParams); + getDeployTransaction(_base: AddressLike, _prices: AddressLike, _minCommitmentAge: BigNumberish, _maxCommitmentAge: BigNumberish, _reverseRegistrar: AddressLike, _nameWrapper: AddressLike, _ens: AddressLike, overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(_base: AddressLike, _prices: AddressLike, _minCommitmentAge: BigNumberish, _maxCommitmentAge: BigNumberish, _reverseRegistrar: AddressLike, _nameWrapper: AddressLike, _ens: AddressLike, overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): ETHRegistrarController__factory; + static readonly bytecode = "0x6101406040523480156200001257600080fd5b5060405162001e7038038062001e70833981016040819052620000359162000222565b80336200004281620001b9565b6040516302571be360e01b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e260048201526000906001600160a01b038416906302571be390602401602060405180830381865afa158015620000aa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620000d09190620002b6565b604051630f41a04d60e11b81526001600160a01b03848116600483015291925090821690631e83409a906024016020604051808303816000875af11580156200011d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001439190620002dd565b5050505084841162000168576040516307cb550760e31b815260040160405180910390fd5b428411156200018a57604051630b4319e560e21b815260040160405180910390fd5b506001600160a01b0395861660805293851660a05260c09290925260e0528216610100521661012052620002f7565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146200021f57600080fd5b50565b600080600080600080600060e0888a0312156200023e57600080fd5b87516200024b8162000209565b60208901519097506200025e8162000209565b8096505060408801519450606088015193506080880151620002808162000209565b60a0890151909350620002938162000209565b60c0890151909250620002a68162000209565b8091505092959891949750929550565b600060208284031215620002c957600080fd5b8151620002d68162000209565b9392505050565b600060208284031215620002f057600080fd5b5051919050565b60805160a05160c05160e0516101005161012051611af16200037f60003960008181610335015281816106f30152610ab60152600081816101f80152610fe301526000818161039c01528181610c7b0152610e6e0152600081816102c30152610e100152600081816103d001526108f40152600081816109290152610bea0152611af16000f3fe60806040526004361061011f5760003560e01c80638d839ffe116100a0578063aeb8ce9b11610064578063aeb8ce9b1461036a578063ce1e09c01461038a578063d3419bf3146103be578063f14fcbc8146103f2578063f2fde38b1461041257600080fd5b80638d839ffe146102b15780638da5cb5b146102e55780639791c09714610303578063a8e5fbc014610323578063acf1a8411461035757600080fd5b806374694a2b116100e757806374694a2b146101d357806380869853146101e6578063839df9451461023257806383e7f6ff1461025f5780638a95b09f1461029a57600080fd5b806301ffc9a7146101245780633ccfd60b146101595780635d3590d51461017057806365a69dcf14610190578063715018a6146101be575b600080fd5b34801561013057600080fd5b5061014461013f366004611198565b610432565b60405190151581526020015b60405180910390f35b34801561016557600080fd5b5061016e610469565b005b34801561017c57600080fd5b5061016e61018b3660046111de565b6104a6565b34801561019c57600080fd5b506101b06101ab36600461134b565b610527565b604051908152602001610150565b3480156101ca57600080fd5b5061016e6105ac565b61016e6101e136600461144e565b6105c0565b3480156101f257600080fd5b5061021a7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610150565b34801561023e57600080fd5b506101b061024d366004611518565b60016020526000908152604090205481565b34801561026b57600080fd5b5061027f61027a366004611531565b6108c3565b60408051825181526020928301519281019290925201610150565b3480156102a657600080fd5b506101b06224ea0081565b3480156102bd57600080fd5b506101b07f000000000000000000000000000000000000000000000000000000000000000081565b3480156102f157600080fd5b506000546001600160a01b031661021a565b34801561030f57600080fd5b5061014461031e366004611576565b6109fd565b34801561032f57600080fd5b5061021a7f000000000000000000000000000000000000000000000000000000000000000081565b61016e6103653660046115ab565b610a12565b34801561037657600080fd5b50610144610385366004611576565b610bba565b34801561039657600080fd5b506101b07f000000000000000000000000000000000000000000000000000000000000000081565b3480156103ca57600080fd5b5061021a7f000000000000000000000000000000000000000000000000000000000000000081565b3480156103fe57600080fd5b5061016e61040d366004611518565b610c64565b34801561041e57600080fd5b5061016e61042d3660046115f7565b610cd9565b60006001600160e01b031982166301ffc9a760e01b148061046357506001600160e01b0319821663612e8c0960e01b145b92915050565b600080546040516001600160a01b03909116914780156108fc02929091818181858888f193505050501580156104a3573d6000803e3d6000fd5b50565b6104ae610d4f565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303816000875af11580156104fd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105219190611612565b50505050565b885160208a0120600090841580159061054757506001600160a01b038716155b15610565576040516334fd817160e21b815260040160405180910390fd5b808a8a8a8a8a8a8a8a604051602001610586999897969594939291906116ea565b604051602081830303815290604052805190602001209150509998505050505050505050565b6105b4610d4f565b6105be6000610da9565b565b60006106038b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508c92506108c3915050565b6020810151815191925061061691611764565b3410156106365760405163044044a560e21b815260040160405180910390fd5b6106d98b8b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050896106d48e8e8080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050508d8d8d8d8d8d8d8d610527565b610df9565b604051635200a4c160e11b81526000906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063a401498290610732908f908f908f908f908e908b90600401611777565b6020604051808303816000875af1158015610751573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061077591906117c2565b905084156107a0576107a0878d8d6040516107919291906117db565b60405180910390208888610f17565b83156107e9576107e98c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508b9250339150610fe19050565b896001600160a01b03168c8c6040516108039291906117db565b60405180910390207f69e37f151eb98a09618ddaa80c8cfaf1ce5996867c489f45b555b412271ebf278e8e866000015187602001518760405161084a9594939291906117eb565b60405180910390a3602082015182516108639190611764565b3411156108b5576020820151825133916108fc916108819190611764565b61088b903461181c565b6040518115909202916000818181858888f193505050501580156108b3573d6000803e3d6000fd5b505b505050505050505050505050565b604080518082019091526000808252602082015282516020840120604051636b727d4360e11b8152600481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116916350e9a7159187917f00000000000000000000000000000000000000000000000000000000000000009091169063d6e4fa8690602401602060405180830381865afa158015610972573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061099691906117c2565b866040518463ffffffff1660e01b81526004016109b59392919061187f565b6040805180830381865afa1580156109d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109f591906118a4565b949350505050565b60006003610a0a83611095565b101592915050565b60008383604051610a249291906117db565b604080519182900382206020601f870181900481028401810190925285835292508291600091610a71919088908890819084018382808284376000920191909152508892506108c3915050565b8051909150341015610a965760405163044044a560e21b815260040160405180910390fd5b60405163c475abff60e01b815260048101839052602481018590526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063c475abff906044016020604051808303816000875af1158015610b07573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b2b91906117c2565b8251909150341115610b7357815133906108fc90610b49903461181c565b6040518115909202916000818181858888f19350505050158015610b71573d6000803e3d6000fd5b505b837f3da24c024582931cfaf8267d8ed24d13a82a8068d5bd337d30ec45cea4e506ae88883485604051610ba994939291906118f3565b60405180910390a250505050505050565b80516020820120600090610bcd836109fd565b8015610c5d57506040516312dc929d60e31b8152600481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906396e494e890602401602060405180830381865afa158015610c39573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c5d9190611612565b9392505050565b6000818152600160205260409020544290610ca0907f000000000000000000000000000000000000000000000000000000000000000090611764565b10610cc657604051630a059d7160e01b8152600481018290526024015b60405180910390fd5b6000908152600160205260409020429055565b610ce1610d4f565b6001600160a01b038116610d465760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610cbd565b6104a381610da9565b6000546001600160a01b031633146105be5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610cbd565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000818152600160205260409020544290610e35907f000000000000000000000000000000000000000000000000000000000000000090611764565b1115610e5757604051635320bcf960e01b815260048101829052602401610cbd565b6000818152600160205260409020544290610e93907f000000000000000000000000000000000000000000000000000000000000000090611764565b11610eb45760405163cb7690d760e01b815260048101829052602401610cbd565b610ebd83610bba565b610edc57826040516308eee0fd60e31b8152600401610cbd919061191a565b6000818152600160205260408120556224ea00821015610f1257604051639a71997b60e01b815260048101839052602401610cbd565b505050565b604080517f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae6020808301919091528183018690528251808303840181526060830193849052805191012063e32954eb60e01b90925285906001600160a01b0382169063e32954eb90610f919085908890889060640161192d565b6000604051808303816000875af1158015610fb0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610fd89190810190611950565b50505050505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316637a806d6b338385876040516020016110249190611a4f565b6040516020818303038152906040526040518563ffffffff1660e01b81526004016110529493929190611a77565b6020604051808303816000875af1158015611071573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061052191906117c2565b8051600090819081905b8082101561118f5760008583815181106110bb576110bb611ab5565b01602001516001600160f81b0319169050600160ff1b8110156110ea576110e3600184611764565b925061117c565b600760fd1b6001600160f81b03198216101561110b576110e3600284611764565b600f60fc1b6001600160f81b03198216101561112c576110e3600384611764565b601f60fb1b6001600160f81b03198216101561114d576110e3600484611764565b603f60fa1b6001600160f81b03198216101561116e576110e3600584611764565b611179600684611764565b92505b508261118781611acb565b93505061109f565b50909392505050565b6000602082840312156111aa57600080fd5b81356001600160e01b031981168114610c5d57600080fd5b80356001600160a01b03811681146111d957600080fd5b919050565b6000806000606084860312156111f357600080fd5b6111fc846111c2565b925061120a602085016111c2565b9150604084013590509250925092565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff811182821017156112595761125961121a565b604052919050565b600067ffffffffffffffff82111561127b5761127b61121a565b50601f01601f191660200190565b600082601f83011261129a57600080fd5b81356112ad6112a882611261565b611230565b8181528460208386010111156112c257600080fd5b816020850160208301376000918101602001919091529392505050565b60008083601f8401126112f157600080fd5b50813567ffffffffffffffff81111561130957600080fd5b6020830191508360208260051b850101111561132457600080fd5b9250929050565b80151581146104a357600080fd5b803561ffff811681146111d957600080fd5b60008060008060008060008060006101008a8c03121561136a57600080fd5b893567ffffffffffffffff8082111561138257600080fd5b61138e8d838e01611289565b9a5061139c60208d016111c2565b995060408c0135985060608c013597506113b860808d016111c2565b965060a08c01359150808211156113ce57600080fd5b506113db8c828d016112df565b90955093505060c08a01356113ef8161132b565b91506113fd60e08b01611339565b90509295985092959850929598565b60008083601f84011261141e57600080fd5b50813567ffffffffffffffff81111561143657600080fd5b60208301915083602082850101111561132457600080fd5b6000806000806000806000806000806101008b8d03121561146e57600080fd5b8a3567ffffffffffffffff8082111561148657600080fd5b6114928e838f0161140c565b909c509a508a91506114a660208e016111c2565b995060408d0135985060608d013597506114c260808e016111c2565b965060a08d01359150808211156114d857600080fd5b506114e58d828e016112df565b90955093505060c08b01356114f98161132b565b915061150760e08c01611339565b90509295989b9194979a5092959850565b60006020828403121561152a57600080fd5b5035919050565b6000806040838503121561154457600080fd5b823567ffffffffffffffff81111561155b57600080fd5b61156785828601611289565b95602094909401359450505050565b60006020828403121561158857600080fd5b813567ffffffffffffffff81111561159f57600080fd5b6109f584828501611289565b6000806000604084860312156115c057600080fd5b833567ffffffffffffffff8111156115d757600080fd5b6115e38682870161140c565b909790965060209590950135949350505050565b60006020828403121561160957600080fd5b610c5d826111c2565b60006020828403121561162457600080fd5b8151610c5d8161132b565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b81835260006020808501808196508560051b810191508460005b878110156116dd5782840389528135601e1988360301811261169357600080fd5b8701858101903567ffffffffffffffff8111156116af57600080fd5b8036038213156116be57600080fd5b6116c986828461162f565b9a87019a9550505090840190600101611672565b5091979650505050505050565b8981526001600160a01b03898116602083015260408201899052606082018890528616608082015261010060a0820181905260009061172c8382018789611658565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b634e487b7160e01b600052601160045260246000fd5b808201808211156104635761046361174e565b60a08152600061178b60a08301888a61162f565b6001600160a01b03968716602084015260408301959095525091909316606082015261ffff90921660809092019190915292915050565b6000602082840312156117d457600080fd5b5051919050565b8183823760009101908152919050565b6080815260006117ff60808301878961162f565b602083019590955250604081019290925260609091015292915050565b818103818111156104635761046361174e565b60005b8381101561184a578181015183820152602001611832565b50506000910152565b6000815180845261186b81602086016020860161182f565b601f01601f19169290920160200192915050565b6060815260006118926060830186611853565b60208301949094525060400152919050565b6000604082840312156118b657600080fd5b6040516040810181811067ffffffffffffffff821117156118d9576118d961121a565b604052825181526020928301519281019290925250919050565b60608152600061190760608301868861162f565b6020830194909452506040015292915050565b602081526000610c5d6020830184611853565b838152604060208201526000611947604083018486611658565b95945050505050565b6000602080838503121561196357600080fd5b825167ffffffffffffffff8082111561197b57600080fd5b818501915085601f83011261198f57600080fd5b8151818111156119a1576119a161121a565b8060051b6119b0858201611230565b91825283810185019185810190898411156119ca57600080fd5b86860192505b83831015611a42578251858111156119e85760008081fd5b8601603f81018b136119fa5760008081fd5b878101516040611a0c6112a883611261565b8281528d82848601011115611a215760008081fd5b611a30838c830184870161182f565b855250505091860191908601906119d0565b9998505050505050505050565b60008251611a6181846020870161182f565b6305ccae8d60e31b920191825250600401919050565b6001600160a01b038581168252848116602083015283166040820152608060608201819052600090611aab90830184611853565b9695505050505050565b634e487b7160e01b600052603260045260246000fd5b600060018201611add57611add61174e565b506001019056fea164736f6c6343000811000a"; + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "contract BaseRegistrarImplementation"; + readonly name: "_base"; + readonly type: "address"; + }, { + readonly internalType: "contract IPriceOracle"; + readonly name: "_prices"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "_minCommitmentAge"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "_maxCommitmentAge"; + readonly type: "uint256"; + }, { + readonly internalType: "contract ReverseRegistrar"; + readonly name: "_reverseRegistrar"; + readonly type: "address"; + }, { + readonly internalType: "contract INameWrapper"; + readonly name: "_nameWrapper"; + readonly type: "address"; + }, { + readonly internalType: "contract ENS"; + readonly name: "_ens"; + readonly type: "address"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "constructor"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "commitment"; + readonly type: "bytes32"; + }]; + readonly name: "CommitmentTooNew"; + readonly type: "error"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "commitment"; + readonly type: "bytes32"; + }]; + readonly name: "CommitmentTooOld"; + readonly type: "error"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "duration"; + readonly type: "uint256"; + }]; + readonly name: "DurationTooShort"; + readonly type: "error"; + }, { + readonly inputs: readonly []; + readonly name: "InsufficientValue"; + readonly type: "error"; + }, { + readonly inputs: readonly []; + readonly name: "MaxCommitmentAgeTooHigh"; + readonly type: "error"; + }, { + readonly inputs: readonly []; + readonly name: "MaxCommitmentAgeTooLow"; + readonly type: "error"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "name"; + readonly type: "string"; + }]; + readonly name: "NameNotAvailable"; + readonly type: "error"; + }, { + readonly inputs: readonly []; + readonly name: "ResolverRequiredWhenDataSupplied"; + readonly type: "error"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "commitment"; + readonly type: "bytes32"; + }]; + readonly name: "UnexpiredCommitmentExists"; + readonly type: "error"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "string"; + readonly name: "name"; + readonly type: "string"; + }, { + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "label"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "baseCost"; + readonly type: "uint256"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "premium"; + readonly type: "uint256"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "expires"; + readonly type: "uint256"; + }]; + readonly name: "NameRegistered"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "string"; + readonly name: "name"; + readonly type: "string"; + }, { + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "label"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "cost"; + readonly type: "uint256"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "expires"; + readonly type: "uint256"; + }]; + readonly name: "NameRenewed"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "previousOwner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "newOwner"; + readonly type: "address"; + }]; + readonly name: "OwnershipTransferred"; + readonly type: "event"; + }, { + readonly inputs: readonly []; + readonly name: "MIN_REGISTRATION_DURATION"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "name"; + readonly type: "string"; + }]; + readonly name: "available"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "commitment"; + readonly type: "bytes32"; + }]; + readonly name: "commit"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly name: "commitments"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "name"; + readonly type: "string"; + }, { + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "duration"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes32"; + readonly name: "secret"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }, { + readonly internalType: "bytes[]"; + readonly name: "data"; + readonly type: "bytes[]"; + }, { + readonly internalType: "bool"; + readonly name: "reverseRecord"; + readonly type: "bool"; + }, { + readonly internalType: "uint16"; + readonly name: "ownerControlledFuses"; + readonly type: "uint16"; + }]; + readonly name: "makeCommitment"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "pure"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "maxCommitmentAge"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "minCommitmentAge"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "nameWrapper"; + readonly outputs: readonly [{ + readonly internalType: "contract INameWrapper"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "owner"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "prices"; + readonly outputs: readonly [{ + readonly internalType: "contract IPriceOracle"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "_token"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "_to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "_amount"; + readonly type: "uint256"; + }]; + readonly name: "recoverFunds"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "name"; + readonly type: "string"; + }, { + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "duration"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes32"; + readonly name: "secret"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }, { + readonly internalType: "bytes[]"; + readonly name: "data"; + readonly type: "bytes[]"; + }, { + readonly internalType: "bool"; + readonly name: "reverseRecord"; + readonly type: "bool"; + }, { + readonly internalType: "uint16"; + readonly name: "ownerControlledFuses"; + readonly type: "uint16"; + }]; + readonly name: "register"; + readonly outputs: readonly []; + readonly stateMutability: "payable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "name"; + readonly type: "string"; + }, { + readonly internalType: "uint256"; + readonly name: "duration"; + readonly type: "uint256"; + }]; + readonly name: "renew"; + readonly outputs: readonly []; + readonly stateMutability: "payable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "renounceOwnership"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "name"; + readonly type: "string"; + }, { + readonly internalType: "uint256"; + readonly name: "duration"; + readonly type: "uint256"; + }]; + readonly name: "rentPrice"; + readonly outputs: readonly [{ + readonly components: readonly [{ + readonly internalType: "uint256"; + readonly name: "base"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "premium"; + readonly type: "uint256"; + }]; + readonly internalType: "struct IPriceOracle.Price"; + readonly name: "price"; + readonly type: "tuple"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "reverseRegistrar"; + readonly outputs: readonly [{ + readonly internalType: "contract ReverseRegistrar"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceID"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "pure"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "newOwner"; + readonly type: "address"; + }]; + readonly name: "transferOwnership"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "name"; + readonly type: "string"; + }]; + readonly name: "valid"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "pure"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "withdraw"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): ETHRegistrarControllerInterface; + static connect(address: string, runner?: ContractRunner | null): ETHRegistrarController; +} +export {}; +//# sourceMappingURL=ETHRegistrarController__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController__factory.d.ts.map new file mode 100644 index 00000000..d7e27bea --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ETHRegistrarController__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,MAAM,EACN,YAAY,EACZ,WAAW,EACX,yBAAyB,EACzB,cAAc,EACf,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,sBAAsB,EACtB,+BAA+B,EAChC,MAAM,wFAAwF,CAAC;AA2lBhG,aAAK,uCAAuC,GACxC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,+BAAgC,SAAQ,eAAe;gBACtD,GAAG,IAAI,EAAE,uCAAuC;IAQnD,oBAAoB,CAC3B,KAAK,EAAE,WAAW,EAClB,OAAO,EAAE,WAAW,EACpB,iBAAiB,EAAE,YAAY,EAC/B,iBAAiB,EAAE,YAAY,EAC/B,iBAAiB,EAAE,WAAW,EAC9B,YAAY,EAAE,WAAW,EACzB,IAAI,EAAE,WAAW,EACjB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAY5B,MAAM,CACb,KAAK,EAAE,WAAW,EAClB,OAAO,EAAE,WAAW,EACpB,iBAAiB,EAAE,YAAY,EAC/B,iBAAiB,EAAE,YAAY,EAC/B,iBAAiB,EAAE,WAAW,EAC9B,YAAY,EAAE,WAAW,EACzB,IAAI,EAAE,WAAW,EACjB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAatB,2BAA2B;;IAIjD,OAAO,CACd,MAAM,EAAE,cAAc,GAAG,IAAI,GAC5B,+BAA+B;IAIlC,MAAM,CAAC,QAAQ,CAAC,QAAQ,wueAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,+BAA+B;IAGzD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,sBAAsB;CAO1B"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController__factory.js new file mode 100644 index 00000000..1834203e --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController__factory.js @@ -0,0 +1,631 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ETHRegistrarController__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "contract BaseRegistrarImplementation", + name: "_base", + type: "address", + }, + { + internalType: "contract IPriceOracle", + name: "_prices", + type: "address", + }, + { + internalType: "uint256", + name: "_minCommitmentAge", + type: "uint256", + }, + { + internalType: "uint256", + name: "_maxCommitmentAge", + type: "uint256", + }, + { + internalType: "contract ReverseRegistrar", + name: "_reverseRegistrar", + type: "address", + }, + { + internalType: "contract INameWrapper", + name: "_nameWrapper", + type: "address", + }, + { + internalType: "contract ENS", + name: "_ens", + type: "address", + }, + ], + stateMutability: "nonpayable", + type: "constructor", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "commitment", + type: "bytes32", + }, + ], + name: "CommitmentTooNew", + type: "error", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "commitment", + type: "bytes32", + }, + ], + name: "CommitmentTooOld", + type: "error", + }, + { + inputs: [ + { + internalType: "uint256", + name: "duration", + type: "uint256", + }, + ], + name: "DurationTooShort", + type: "error", + }, + { + inputs: [], + name: "InsufficientValue", + type: "error", + }, + { + inputs: [], + name: "MaxCommitmentAgeTooHigh", + type: "error", + }, + { + inputs: [], + name: "MaxCommitmentAgeTooLow", + type: "error", + }, + { + inputs: [ + { + internalType: "string", + name: "name", + type: "string", + }, + ], + name: "NameNotAvailable", + type: "error", + }, + { + inputs: [], + name: "ResolverRequiredWhenDataSupplied", + type: "error", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "commitment", + type: "bytes32", + }, + ], + name: "UnexpiredCommitmentExists", + type: "error", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "string", + name: "name", + type: "string", + }, + { + indexed: true, + internalType: "bytes32", + name: "label", + type: "bytes32", + }, + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "baseCost", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "premium", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "expires", + type: "uint256", + }, + ], + name: "NameRegistered", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "string", + name: "name", + type: "string", + }, + { + indexed: true, + internalType: "bytes32", + name: "label", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "cost", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "expires", + type: "uint256", + }, + ], + name: "NameRenewed", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "previousOwner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnershipTransferred", + type: "event", + }, + { + inputs: [], + name: "MIN_REGISTRATION_DURATION", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "name", + type: "string", + }, + ], + name: "available", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "commitment", + type: "bytes32", + }, + ], + name: "commit", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + name: "commitments", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "name", + type: "string", + }, + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "uint256", + name: "duration", + type: "uint256", + }, + { + internalType: "bytes32", + name: "secret", + type: "bytes32", + }, + { + internalType: "address", + name: "resolver", + type: "address", + }, + { + internalType: "bytes[]", + name: "data", + type: "bytes[]", + }, + { + internalType: "bool", + name: "reverseRecord", + type: "bool", + }, + { + internalType: "uint16", + name: "ownerControlledFuses", + type: "uint16", + }, + ], + name: "makeCommitment", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "pure", + type: "function", + }, + { + inputs: [], + name: "maxCommitmentAge", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "minCommitmentAge", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "nameWrapper", + outputs: [ + { + internalType: "contract INameWrapper", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "prices", + outputs: [ + { + internalType: "contract IPriceOracle", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "_token", + type: "address", + }, + { + internalType: "address", + name: "_to", + type: "address", + }, + { + internalType: "uint256", + name: "_amount", + type: "uint256", + }, + ], + name: "recoverFunds", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "name", + type: "string", + }, + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "uint256", + name: "duration", + type: "uint256", + }, + { + internalType: "bytes32", + name: "secret", + type: "bytes32", + }, + { + internalType: "address", + name: "resolver", + type: "address", + }, + { + internalType: "bytes[]", + name: "data", + type: "bytes[]", + }, + { + internalType: "bool", + name: "reverseRecord", + type: "bool", + }, + { + internalType: "uint16", + name: "ownerControlledFuses", + type: "uint16", + }, + ], + name: "register", + outputs: [], + stateMutability: "payable", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "name", + type: "string", + }, + { + internalType: "uint256", + name: "duration", + type: "uint256", + }, + ], + name: "renew", + outputs: [], + stateMutability: "payable", + type: "function", + }, + { + inputs: [], + name: "renounceOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "name", + type: "string", + }, + { + internalType: "uint256", + name: "duration", + type: "uint256", + }, + ], + name: "rentPrice", + outputs: [ + { + components: [ + { + internalType: "uint256", + name: "base", + type: "uint256", + }, + { + internalType: "uint256", + name: "premium", + type: "uint256", + }, + ], + internalType: "struct IPriceOracle.Price", + name: "price", + type: "tuple", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "reverseRegistrar", + outputs: [ + { + internalType: "contract ReverseRegistrar", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceID", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "pure", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "transferOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "name", + type: "string", + }, + ], + name: "valid", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "pure", + type: "function", + }, + { + inputs: [], + name: "withdraw", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +const _bytecode = "0x6101406040523480156200001257600080fd5b5060405162001e7038038062001e70833981016040819052620000359162000222565b80336200004281620001b9565b6040516302571be360e01b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e260048201526000906001600160a01b038416906302571be390602401602060405180830381865afa158015620000aa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620000d09190620002b6565b604051630f41a04d60e11b81526001600160a01b03848116600483015291925090821690631e83409a906024016020604051808303816000875af11580156200011d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001439190620002dd565b5050505084841162000168576040516307cb550760e31b815260040160405180910390fd5b428411156200018a57604051630b4319e560e21b815260040160405180910390fd5b506001600160a01b0395861660805293851660a05260c09290925260e0528216610100521661012052620002f7565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146200021f57600080fd5b50565b600080600080600080600060e0888a0312156200023e57600080fd5b87516200024b8162000209565b60208901519097506200025e8162000209565b8096505060408801519450606088015193506080880151620002808162000209565b60a0890151909350620002938162000209565b60c0890151909250620002a68162000209565b8091505092959891949750929550565b600060208284031215620002c957600080fd5b8151620002d68162000209565b9392505050565b600060208284031215620002f057600080fd5b5051919050565b60805160a05160c05160e0516101005161012051611af16200037f60003960008181610335015281816106f30152610ab60152600081816101f80152610fe301526000818161039c01528181610c7b0152610e6e0152600081816102c30152610e100152600081816103d001526108f40152600081816109290152610bea0152611af16000f3fe60806040526004361061011f5760003560e01c80638d839ffe116100a0578063aeb8ce9b11610064578063aeb8ce9b1461036a578063ce1e09c01461038a578063d3419bf3146103be578063f14fcbc8146103f2578063f2fde38b1461041257600080fd5b80638d839ffe146102b15780638da5cb5b146102e55780639791c09714610303578063a8e5fbc014610323578063acf1a8411461035757600080fd5b806374694a2b116100e757806374694a2b146101d357806380869853146101e6578063839df9451461023257806383e7f6ff1461025f5780638a95b09f1461029a57600080fd5b806301ffc9a7146101245780633ccfd60b146101595780635d3590d51461017057806365a69dcf14610190578063715018a6146101be575b600080fd5b34801561013057600080fd5b5061014461013f366004611198565b610432565b60405190151581526020015b60405180910390f35b34801561016557600080fd5b5061016e610469565b005b34801561017c57600080fd5b5061016e61018b3660046111de565b6104a6565b34801561019c57600080fd5b506101b06101ab36600461134b565b610527565b604051908152602001610150565b3480156101ca57600080fd5b5061016e6105ac565b61016e6101e136600461144e565b6105c0565b3480156101f257600080fd5b5061021a7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610150565b34801561023e57600080fd5b506101b061024d366004611518565b60016020526000908152604090205481565b34801561026b57600080fd5b5061027f61027a366004611531565b6108c3565b60408051825181526020928301519281019290925201610150565b3480156102a657600080fd5b506101b06224ea0081565b3480156102bd57600080fd5b506101b07f000000000000000000000000000000000000000000000000000000000000000081565b3480156102f157600080fd5b506000546001600160a01b031661021a565b34801561030f57600080fd5b5061014461031e366004611576565b6109fd565b34801561032f57600080fd5b5061021a7f000000000000000000000000000000000000000000000000000000000000000081565b61016e6103653660046115ab565b610a12565b34801561037657600080fd5b50610144610385366004611576565b610bba565b34801561039657600080fd5b506101b07f000000000000000000000000000000000000000000000000000000000000000081565b3480156103ca57600080fd5b5061021a7f000000000000000000000000000000000000000000000000000000000000000081565b3480156103fe57600080fd5b5061016e61040d366004611518565b610c64565b34801561041e57600080fd5b5061016e61042d3660046115f7565b610cd9565b60006001600160e01b031982166301ffc9a760e01b148061046357506001600160e01b0319821663612e8c0960e01b145b92915050565b600080546040516001600160a01b03909116914780156108fc02929091818181858888f193505050501580156104a3573d6000803e3d6000fd5b50565b6104ae610d4f565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303816000875af11580156104fd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105219190611612565b50505050565b885160208a0120600090841580159061054757506001600160a01b038716155b15610565576040516334fd817160e21b815260040160405180910390fd5b808a8a8a8a8a8a8a8a604051602001610586999897969594939291906116ea565b604051602081830303815290604052805190602001209150509998505050505050505050565b6105b4610d4f565b6105be6000610da9565b565b60006106038b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508c92506108c3915050565b6020810151815191925061061691611764565b3410156106365760405163044044a560e21b815260040160405180910390fd5b6106d98b8b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050896106d48e8e8080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050508d8d8d8d8d8d8d8d610527565b610df9565b604051635200a4c160e11b81526000906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063a401498290610732908f908f908f908f908e908b90600401611777565b6020604051808303816000875af1158015610751573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061077591906117c2565b905084156107a0576107a0878d8d6040516107919291906117db565b60405180910390208888610f17565b83156107e9576107e98c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508b9250339150610fe19050565b896001600160a01b03168c8c6040516108039291906117db565b60405180910390207f69e37f151eb98a09618ddaa80c8cfaf1ce5996867c489f45b555b412271ebf278e8e866000015187602001518760405161084a9594939291906117eb565b60405180910390a3602082015182516108639190611764565b3411156108b5576020820151825133916108fc916108819190611764565b61088b903461181c565b6040518115909202916000818181858888f193505050501580156108b3573d6000803e3d6000fd5b505b505050505050505050505050565b604080518082019091526000808252602082015282516020840120604051636b727d4360e11b8152600481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116916350e9a7159187917f00000000000000000000000000000000000000000000000000000000000000009091169063d6e4fa8690602401602060405180830381865afa158015610972573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061099691906117c2565b866040518463ffffffff1660e01b81526004016109b59392919061187f565b6040805180830381865afa1580156109d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109f591906118a4565b949350505050565b60006003610a0a83611095565b101592915050565b60008383604051610a249291906117db565b604080519182900382206020601f870181900481028401810190925285835292508291600091610a71919088908890819084018382808284376000920191909152508892506108c3915050565b8051909150341015610a965760405163044044a560e21b815260040160405180910390fd5b60405163c475abff60e01b815260048101839052602481018590526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063c475abff906044016020604051808303816000875af1158015610b07573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b2b91906117c2565b8251909150341115610b7357815133906108fc90610b49903461181c565b6040518115909202916000818181858888f19350505050158015610b71573d6000803e3d6000fd5b505b837f3da24c024582931cfaf8267d8ed24d13a82a8068d5bd337d30ec45cea4e506ae88883485604051610ba994939291906118f3565b60405180910390a250505050505050565b80516020820120600090610bcd836109fd565b8015610c5d57506040516312dc929d60e31b8152600481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906396e494e890602401602060405180830381865afa158015610c39573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c5d9190611612565b9392505050565b6000818152600160205260409020544290610ca0907f000000000000000000000000000000000000000000000000000000000000000090611764565b10610cc657604051630a059d7160e01b8152600481018290526024015b60405180910390fd5b6000908152600160205260409020429055565b610ce1610d4f565b6001600160a01b038116610d465760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610cbd565b6104a381610da9565b6000546001600160a01b031633146105be5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610cbd565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000818152600160205260409020544290610e35907f000000000000000000000000000000000000000000000000000000000000000090611764565b1115610e5757604051635320bcf960e01b815260048101829052602401610cbd565b6000818152600160205260409020544290610e93907f000000000000000000000000000000000000000000000000000000000000000090611764565b11610eb45760405163cb7690d760e01b815260048101829052602401610cbd565b610ebd83610bba565b610edc57826040516308eee0fd60e31b8152600401610cbd919061191a565b6000818152600160205260408120556224ea00821015610f1257604051639a71997b60e01b815260048101839052602401610cbd565b505050565b604080517f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae6020808301919091528183018690528251808303840181526060830193849052805191012063e32954eb60e01b90925285906001600160a01b0382169063e32954eb90610f919085908890889060640161192d565b6000604051808303816000875af1158015610fb0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610fd89190810190611950565b50505050505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316637a806d6b338385876040516020016110249190611a4f565b6040516020818303038152906040526040518563ffffffff1660e01b81526004016110529493929190611a77565b6020604051808303816000875af1158015611071573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061052191906117c2565b8051600090819081905b8082101561118f5760008583815181106110bb576110bb611ab5565b01602001516001600160f81b0319169050600160ff1b8110156110ea576110e3600184611764565b925061117c565b600760fd1b6001600160f81b03198216101561110b576110e3600284611764565b600f60fc1b6001600160f81b03198216101561112c576110e3600384611764565b601f60fb1b6001600160f81b03198216101561114d576110e3600484611764565b603f60fa1b6001600160f81b03198216101561116e576110e3600584611764565b611179600684611764565b92505b508261118781611acb565b93505061109f565b50909392505050565b6000602082840312156111aa57600080fd5b81356001600160e01b031981168114610c5d57600080fd5b80356001600160a01b03811681146111d957600080fd5b919050565b6000806000606084860312156111f357600080fd5b6111fc846111c2565b925061120a602085016111c2565b9150604084013590509250925092565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff811182821017156112595761125961121a565b604052919050565b600067ffffffffffffffff82111561127b5761127b61121a565b50601f01601f191660200190565b600082601f83011261129a57600080fd5b81356112ad6112a882611261565b611230565b8181528460208386010111156112c257600080fd5b816020850160208301376000918101602001919091529392505050565b60008083601f8401126112f157600080fd5b50813567ffffffffffffffff81111561130957600080fd5b6020830191508360208260051b850101111561132457600080fd5b9250929050565b80151581146104a357600080fd5b803561ffff811681146111d957600080fd5b60008060008060008060008060006101008a8c03121561136a57600080fd5b893567ffffffffffffffff8082111561138257600080fd5b61138e8d838e01611289565b9a5061139c60208d016111c2565b995060408c0135985060608c013597506113b860808d016111c2565b965060a08c01359150808211156113ce57600080fd5b506113db8c828d016112df565b90955093505060c08a01356113ef8161132b565b91506113fd60e08b01611339565b90509295985092959850929598565b60008083601f84011261141e57600080fd5b50813567ffffffffffffffff81111561143657600080fd5b60208301915083602082850101111561132457600080fd5b6000806000806000806000806000806101008b8d03121561146e57600080fd5b8a3567ffffffffffffffff8082111561148657600080fd5b6114928e838f0161140c565b909c509a508a91506114a660208e016111c2565b995060408d0135985060608d013597506114c260808e016111c2565b965060a08d01359150808211156114d857600080fd5b506114e58d828e016112df565b90955093505060c08b01356114f98161132b565b915061150760e08c01611339565b90509295989b9194979a5092959850565b60006020828403121561152a57600080fd5b5035919050565b6000806040838503121561154457600080fd5b823567ffffffffffffffff81111561155b57600080fd5b61156785828601611289565b95602094909401359450505050565b60006020828403121561158857600080fd5b813567ffffffffffffffff81111561159f57600080fd5b6109f584828501611289565b6000806000604084860312156115c057600080fd5b833567ffffffffffffffff8111156115d757600080fd5b6115e38682870161140c565b909790965060209590950135949350505050565b60006020828403121561160957600080fd5b610c5d826111c2565b60006020828403121561162457600080fd5b8151610c5d8161132b565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b81835260006020808501808196508560051b810191508460005b878110156116dd5782840389528135601e1988360301811261169357600080fd5b8701858101903567ffffffffffffffff8111156116af57600080fd5b8036038213156116be57600080fd5b6116c986828461162f565b9a87019a9550505090840190600101611672565b5091979650505050505050565b8981526001600160a01b03898116602083015260408201899052606082018890528616608082015261010060a0820181905260009061172c8382018789611658565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b634e487b7160e01b600052601160045260246000fd5b808201808211156104635761046361174e565b60a08152600061178b60a08301888a61162f565b6001600160a01b03968716602084015260408301959095525091909316606082015261ffff90921660809092019190915292915050565b6000602082840312156117d457600080fd5b5051919050565b8183823760009101908152919050565b6080815260006117ff60808301878961162f565b602083019590955250604081019290925260609091015292915050565b818103818111156104635761046361174e565b60005b8381101561184a578181015183820152602001611832565b50506000910152565b6000815180845261186b81602086016020860161182f565b601f01601f19169290920160200192915050565b6060815260006118926060830186611853565b60208301949094525060400152919050565b6000604082840312156118b657600080fd5b6040516040810181811067ffffffffffffffff821117156118d9576118d961121a565b604052825181526020928301519281019290925250919050565b60608152600061190760608301868861162f565b6020830194909452506040015292915050565b602081526000610c5d6020830184611853565b838152604060208201526000611947604083018486611658565b95945050505050565b6000602080838503121561196357600080fd5b825167ffffffffffffffff8082111561197b57600080fd5b818501915085601f83011261198f57600080fd5b8151818111156119a1576119a161121a565b8060051b6119b0858201611230565b91825283810185019185810190898411156119ca57600080fd5b86860192505b83831015611a42578251858111156119e85760008081fd5b8601603f81018b136119fa5760008081fd5b878101516040611a0c6112a883611261565b8281528d82848601011115611a215760008081fd5b611a30838c830184870161182f565b855250505091860191908601906119d0565b9998505050505050505050565b60008251611a6181846020870161182f565b6305ccae8d60e31b920191825250600401919050565b6001600160a01b038581168252848116602083015283166040820152608060608201819052600090611aab90830184611853565b9695505050505050565b634e487b7160e01b600052603260045260246000fd5b600060018201611add57611add61174e565b506001019056fea164736f6c6343000811000a"; +const isSuperArgs = (xs) => xs.length > 1; +class ETHRegistrarController__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(_base, _prices, _minCommitmentAge, _maxCommitmentAge, _reverseRegistrar, _nameWrapper, _ens, overrides) { + return super.getDeployTransaction(_base, _prices, _minCommitmentAge, _maxCommitmentAge, _reverseRegistrar, _nameWrapper, _ens, overrides || {}); + } + deploy(_base, _prices, _minCommitmentAge, _maxCommitmentAge, _reverseRegistrar, _nameWrapper, _ens, overrides) { + return super.deploy(_base, _prices, _minCommitmentAge, _maxCommitmentAge, _reverseRegistrar, _nameWrapper, _ens, overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.ETHRegistrarController__factory = ETHRegistrarController__factory; +ETHRegistrarController__factory.bytecode = _bytecode; +ETHRegistrarController__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar__factory.d.ts new file mode 100644 index 00000000..6de840f0 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar__factory.d.ts @@ -0,0 +1,415 @@ +import { type ContractRunner } from "ethers"; +import type { IBaseRegistrar, IBaseRegistrarInterface } from "../../../../../@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar"; +export declare class IBaseRegistrar__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "approved"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Approval"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "ApprovalForAll"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "controller"; + readonly type: "address"; + }]; + readonly name: "ControllerAdded"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "controller"; + readonly type: "address"; + }]; + readonly name: "ControllerRemoved"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "expires"; + readonly type: "uint256"; + }]; + readonly name: "NameMigrated"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "expires"; + readonly type: "uint256"; + }]; + readonly name: "NameRegistered"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "expires"; + readonly type: "uint256"; + }]; + readonly name: "NameRenewed"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Transfer"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "controller"; + readonly type: "address"; + }]; + readonly name: "addController"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "approve"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }]; + readonly name: "available"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "balanceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "balance"; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getApproved"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly name: "isApprovedForAll"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }]; + readonly name: "nameExpires"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "ownerOf"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }, { + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "reclaim"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }, { + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "duration"; + readonly type: "uint256"; + }]; + readonly name: "register"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "controller"; + readonly type: "address"; + }]; + readonly name: "removeController"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "duration"; + readonly type: "uint256"; + }]; + readonly name: "renew"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "setApprovalForAll"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }]; + readonly name: "setResolver"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "transferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): IBaseRegistrarInterface; + static connect(address: string, runner?: ContractRunner | null): IBaseRegistrar; +} +//# sourceMappingURL=IBaseRegistrar__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar__factory.d.ts.map new file mode 100644 index 00000000..daa034aa --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IBaseRegistrar__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,cAAc,EACd,uBAAuB,EACxB,MAAM,gFAAgF,CAAC;AAqhBxF,qBAAa,uBAAuB;IAClC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,uBAAuB;IAGjD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,cAAc;CAGlB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar__factory.js new file mode 100644 index 00000000..0d429d81 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar__factory.js @@ -0,0 +1,544 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IBaseRegistrar__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "approved", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Approval", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "ApprovalForAll", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "controller", + type: "address", + }, + ], + name: "ControllerAdded", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "controller", + type: "address", + }, + ], + name: "ControllerRemoved", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "expires", + type: "uint256", + }, + ], + name: "NameMigrated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "expires", + type: "uint256", + }, + ], + name: "NameRegistered", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "expires", + type: "uint256", + }, + ], + name: "NameRenewed", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Transfer", + type: "event", + }, + { + inputs: [ + { + internalType: "address", + name: "controller", + type: "address", + }, + ], + name: "addController", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "approve", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + ], + name: "available", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "balance", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getApproved", + outputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + name: "isApprovedForAll", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + ], + name: "nameExpires", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "ownerOf", + outputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "reclaim", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "uint256", + name: "duration", + type: "uint256", + }, + ], + name: "register", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "controller", + type: "address", + }, + ], + name: "removeController", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + internalType: "uint256", + name: "duration", + type: "uint256", + }, + ], + name: "renew", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "setApprovalForAll", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "resolver", + type: "address", + }, + ], + name: "setResolver", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "transferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +class IBaseRegistrar__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IBaseRegistrar__factory = IBaseRegistrar__factory; +IBaseRegistrar__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController__factory.d.ts new file mode 100644 index 00000000..76471e09 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController__factory.d.ts @@ -0,0 +1,153 @@ +import { type ContractRunner } from "ethers"; +import type { IETHRegistrarController, IETHRegistrarControllerInterface } from "../../../../../@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController"; +export declare class IETHRegistrarController__factory { + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly name: "available"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly name: "commit"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }, { + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }, { + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }, { + readonly internalType: "bytes[]"; + readonly name: ""; + readonly type: "bytes[]"; + }, { + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }, { + readonly internalType: "uint16"; + readonly name: ""; + readonly type: "uint16"; + }]; + readonly name: "makeCommitment"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "pure"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }, { + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }, { + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }, { + readonly internalType: "bytes[]"; + readonly name: ""; + readonly type: "bytes[]"; + }, { + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }, { + readonly internalType: "uint16"; + readonly name: ""; + readonly type: "uint16"; + }]; + readonly name: "register"; + readonly outputs: readonly []; + readonly stateMutability: "payable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }, { + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly name: "renew"; + readonly outputs: readonly []; + readonly stateMutability: "payable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }, { + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly name: "rentPrice"; + readonly outputs: readonly [{ + readonly components: readonly [{ + readonly internalType: "uint256"; + readonly name: "base"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "premium"; + readonly type: "uint256"; + }]; + readonly internalType: "struct IPriceOracle.Price"; + readonly name: ""; + readonly type: "tuple"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): IETHRegistrarControllerInterface; + static connect(address: string, runner?: ContractRunner | null): IETHRegistrarController; +} +//# sourceMappingURL=IETHRegistrarController__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController__factory.d.ts.map new file mode 100644 index 00000000..e6a71a1a --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IETHRegistrarController__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,uBAAuB,EACvB,gCAAgC,EACjC,MAAM,yFAAyF,CAAC;AAiMjG,qBAAa,gCAAgC;IAC3C,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,gCAAgC;IAG1D,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,uBAAuB;CAO3B"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController__factory.js new file mode 100644 index 00000000..39b7785b --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController__factory.js @@ -0,0 +1,204 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IETHRegistrarController__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + name: "available", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + name: "commit", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + { + internalType: "address", + name: "", + type: "address", + }, + { + internalType: "uint256", + name: "", + type: "uint256", + }, + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + { + internalType: "address", + name: "", + type: "address", + }, + { + internalType: "bytes[]", + name: "", + type: "bytes[]", + }, + { + internalType: "bool", + name: "", + type: "bool", + }, + { + internalType: "uint16", + name: "", + type: "uint16", + }, + ], + name: "makeCommitment", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "pure", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + { + internalType: "address", + name: "", + type: "address", + }, + { + internalType: "uint256", + name: "", + type: "uint256", + }, + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + { + internalType: "address", + name: "", + type: "address", + }, + { + internalType: "bytes[]", + name: "", + type: "bytes[]", + }, + { + internalType: "bool", + name: "", + type: "bool", + }, + { + internalType: "uint16", + name: "", + type: "uint16", + }, + ], + name: "register", + outputs: [], + stateMutability: "payable", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + name: "renew", + outputs: [], + stateMutability: "payable", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + name: "rentPrice", + outputs: [ + { + components: [ + { + internalType: "uint256", + name: "base", + type: "uint256", + }, + { + internalType: "uint256", + name: "premium", + type: "uint256", + }, + ], + internalType: "struct IPriceOracle.Price", + name: "", + type: "tuple", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class IETHRegistrarController__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IETHRegistrarController__factory = IETHRegistrarController__factory; +IETHRegistrarController__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle__factory.d.ts new file mode 100644 index 00000000..f4252676 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle__factory.d.ts @@ -0,0 +1,39 @@ +import { type ContractRunner } from "ethers"; +import type { IPriceOracle, IPriceOracleInterface } from "../../../../../@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle"; +export declare class IPriceOracle__factory { + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "name"; + readonly type: "string"; + }, { + readonly internalType: "uint256"; + readonly name: "expires"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "duration"; + readonly type: "uint256"; + }]; + readonly name: "price"; + readonly outputs: readonly [{ + readonly components: readonly [{ + readonly internalType: "uint256"; + readonly name: "base"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "premium"; + readonly type: "uint256"; + }]; + readonly internalType: "struct IPriceOracle.Price"; + readonly name: ""; + readonly type: "tuple"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): IPriceOracleInterface; + static connect(address: string, runner?: ContractRunner | null): IPriceOracle; +} +//# sourceMappingURL=IPriceOracle__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle__factory.d.ts.map new file mode 100644 index 00000000..e0ed2eac --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IPriceOracle__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,YAAY,EACZ,qBAAqB,EACtB,MAAM,8EAA8E,CAAC;AA8CtF,qBAAa,qBAAqB;IAChC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,qBAAqB;IAG/C,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,YAAY;CAGhB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle__factory.js new file mode 100644 index 00000000..031d19b0 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle__factory.js @@ -0,0 +1,57 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IPriceOracle__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "string", + name: "name", + type: "string", + }, + { + internalType: "uint256", + name: "expires", + type: "uint256", + }, + { + internalType: "uint256", + name: "duration", + type: "uint256", + }, + ], + name: "price", + outputs: [ + { + components: [ + { + internalType: "uint256", + name: "base", + type: "uint256", + }, + { + internalType: "uint256", + name: "premium", + type: "uint256", + }, + ], + internalType: "struct IPriceOracle.Price", + name: "", + type: "tuple", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class IPriceOracle__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IPriceOracle__factory = IPriceOracle__factory; +IPriceOracle__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface__factory.d.ts new file mode 100644 index 00000000..322fd6d0 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface__factory.d.ts @@ -0,0 +1,18 @@ +import { type ContractRunner } from "ethers"; +import type { AggregatorInterface, AggregatorInterfaceInterface } from "../../../../../../@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface"; +export declare class AggregatorInterface__factory { + static readonly abi: readonly [{ + readonly inputs: readonly []; + readonly name: "latestAnswer"; + readonly outputs: readonly [{ + readonly internalType: "int256"; + readonly name: ""; + readonly type: "int256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): AggregatorInterfaceInterface; + static connect(address: string, runner?: ContractRunner | null): AggregatorInterface; +} +//# sourceMappingURL=AggregatorInterface__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface__factory.d.ts.map new file mode 100644 index 00000000..47199487 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"AggregatorInterface__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,mBAAmB,EACnB,4BAA4B,EAC7B,MAAM,8GAA8G,CAAC;AAkBtH,qBAAa,4BAA4B;IACvC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,4BAA4B;IAGtD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,mBAAmB;CAOvB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface__factory.js new file mode 100644 index 00000000..b63af1af --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface__factory.js @@ -0,0 +1,29 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.AggregatorInterface__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [], + name: "latestAnswer", + outputs: [ + { + internalType: "int256", + name: "", + type: "int256", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class AggregatorInterface__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.AggregatorInterface__factory = AggregatorInterface__factory; +AggregatorInterface__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle__factory.d.ts new file mode 100644 index 00000000..8a639310 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle__factory.d.ts @@ -0,0 +1,172 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, BigNumberish, AddressLike, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../../../../common"; +import type { StablePriceOracle, StablePriceOracleInterface } from "../../../../../../@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle"; +declare type StablePriceOracleConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class StablePriceOracle__factory extends ContractFactory { + constructor(...args: StablePriceOracleConstructorParams); + getDeployTransaction(_usdOracle: AddressLike, _rentPrices: BigNumberish[], overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(_usdOracle: AddressLike, _rentPrices: BigNumberish[], overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): StablePriceOracle__factory; + static readonly bytecode = "0x61014060405234801561001157600080fd5b506040516109e63803806109e683398101604081905261003091610106565b6001600160a01b0382166101205280518190600090610051576100516101e6565b60200260200101516080818152505080600181518110610073576100736101e6565b602002602001015160a0818152505080600281518110610095576100956101e6565b602002602001015160c08181525050806003815181106100b7576100b76101e6565b602002602001015160e08181525050806004815181106100d9576100d96101e6565b6020026020010151610100818152505050506101fc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561011957600080fd5b82516001600160a01b038116811461013057600080fd5b602084810151919350906001600160401b038082111561014f57600080fd5b818601915086601f83011261016357600080fd5b815181811115610175576101756100f0565b8060051b604051601f19603f8301168101818110858211171561019a5761019a6100f0565b6040529182528482019250838101850191898311156101b857600080fd5b938501935b828510156101d6578451845293850193928501926101bd565b8096505050505050509250929050565b634e487b7160e01b600052603260045260246000fd5b60805160a05160c05160e051610100516101205161077261027460003960008181610189015261056701526000818161012801526102af0152600081816101ef01526102e801526000818161014f015261031a0152600081816101c8015261034c01526000818160c5015261037601526107726000f3fe608060405234801561001057600080fd5b50600436106100935760003560e01c8063a200e15311610066578063a200e1531461014a578063a34e359614610171578063c8a4271f14610184578063cd5d2c74146101c3578063d820ed42146101ea57600080fd5b806301ffc9a7146100985780632c0fd74c146100c057806350e9a715146100f557806359b6b86c14610123575b600080fd5b6100ab6100a6366004610612565b610211565b60405190151581526020015b60405180910390f35b6100e77f000000000000000000000000000000000000000000000000000000000000000081565b6040519081526020016100b7565b61010861010336600461063c565b610248565b604080518251815260209283015192810192909252016100b7565b6100e77f000000000000000000000000000000000000000000000000000000000000000081565b6100e77f000000000000000000000000000000000000000000000000000000000000000081565b6100e761017f36600461063c565b61040e565b6101ab7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020016100b7565b6100e77f000000000000000000000000000000000000000000000000000000000000000081565b6100e77f000000000000000000000000000000000000000000000000000000000000000081565b60006001600160e01b031982166301ffc9a760e01b148061024257506001600160e01b031982166350e9a71560e01b145b92915050565b6040805180820190915260008082526020820152600061029d86868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061045f92505050565b90506000600582106102da576102d3847f00000000000000000000000000000000000000000000000000000000000000006106d1565b905061039d565b8160040361030c576102d3847f00000000000000000000000000000000000000000000000000000000000000006106d1565b8160030361033e576102d3847f00000000000000000000000000000000000000000000000000000000000000006106d1565b81600203610370576102d3847f00000000000000000000000000000000000000000000000000000000000000006106d1565b61039a847f00000000000000000000000000000000000000000000000000000000000000006106d1565b90505b60405180604001604052806103b183610562565b81526020016104016103fc8a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508c92508b91506106099050565b610562565b9052979650505050505050565b60006104566103fc86868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508892508791506106099050565b95945050505050565b8051600090819081905b80821015610559576000858381518110610485576104856106e8565b01602001516001600160f81b0319169050600160ff1b8110156104b4576104ad6001846106fe565b9250610546565b600760fd1b6001600160f81b0319821610156104d5576104ad6002846106fe565b600f60fc1b6001600160f81b0319821610156104f6576104ad6003846106fe565b601f60fb1b6001600160f81b031982161015610517576104ad6004846106fe565b603f60fa1b6001600160f81b031982161015610538576104ad6005846106fe565b6105436006846106fe565b92505b508261055181610711565b935050610469565b50909392505050565b6000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166350d25bcd6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105e7919061072a565b9050806105f8846305f5e1006106d1565b6106029190610743565b9392505050565b60009392505050565b60006020828403121561062457600080fd5b81356001600160e01b03198116811461060257600080fd5b6000806000806060858703121561065257600080fd5b843567ffffffffffffffff8082111561066a57600080fd5b818701915087601f83011261067e57600080fd5b81358181111561068d57600080fd5b88602082850101111561069f57600080fd5b6020928301999098509187013596604001359550909350505050565b634e487b7160e01b600052601160045260246000fd5b8082028115828204841417610242576102426106bb565b634e487b7160e01b600052603260045260246000fd5b80820180821115610242576102426106bb565b600060018201610723576107236106bb565b5060010190565b60006020828403121561073c57600080fd5b5051919050565b60008261076057634e487b7160e01b600052601260045260246000fd5b50049056fea164736f6c6343000811000a"; + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "contract AggregatorInterface"; + readonly name: "_usdOracle"; + readonly type: "address"; + }, { + readonly internalType: "uint256[]"; + readonly name: "_rentPrices"; + readonly type: "uint256[]"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "constructor"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "uint256[]"; + readonly name: "prices"; + readonly type: "uint256[]"; + }]; + readonly name: "RentPriceChanged"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "name"; + readonly type: "string"; + }, { + readonly internalType: "uint256"; + readonly name: "expires"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "duration"; + readonly type: "uint256"; + }]; + readonly name: "premium"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "name"; + readonly type: "string"; + }, { + readonly internalType: "uint256"; + readonly name: "expires"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "duration"; + readonly type: "uint256"; + }]; + readonly name: "price"; + readonly outputs: readonly [{ + readonly components: readonly [{ + readonly internalType: "uint256"; + readonly name: "base"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "premium"; + readonly type: "uint256"; + }]; + readonly internalType: "struct IPriceOracle.Price"; + readonly name: ""; + readonly type: "tuple"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "price1Letter"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "price2Letter"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "price3Letter"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "price4Letter"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "price5Letter"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceID"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "usdOracle"; + readonly outputs: readonly [{ + readonly internalType: "contract AggregatorInterface"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): StablePriceOracleInterface; + static connect(address: string, runner?: ContractRunner | null): StablePriceOracle; +} +export {}; +//# sourceMappingURL=StablePriceOracle__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle__factory.d.ts.map new file mode 100644 index 00000000..3ab3ae4c --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"StablePriceOracle__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,MAAM,EACN,YAAY,EACZ,WAAW,EACX,yBAAyB,EACzB,cAAc,EACf,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,KAAK,EACV,iBAAiB,EACjB,0BAA0B,EAC3B,MAAM,4GAA4G,CAAC;AA4MpH,aAAK,kCAAkC,GACnC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,0BAA2B,SAAQ,eAAe;gBACjD,GAAG,IAAI,EAAE,kCAAkC;IAQ9C,oBAAoB,CAC3B,UAAU,EAAE,WAAW,EACvB,WAAW,EAAE,YAAY,EAAE,EAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CACb,UAAU,EAAE,WAAW,EACvB,WAAW,EAAE,YAAY,EAAE,EAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAItB,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,0BAA0B;IAI3E,MAAM,CAAC,QAAQ,CAAC,QAAQ,o9JAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,0BAA0B;IAGpD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,iBAAiB;CAGrB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle__factory.js new file mode 100644 index 00000000..7d4b9644 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle__factory.js @@ -0,0 +1,232 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.StablePriceOracle__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "contract AggregatorInterface", + name: "_usdOracle", + type: "address", + }, + { + internalType: "uint256[]", + name: "_rentPrices", + type: "uint256[]", + }, + ], + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256[]", + name: "prices", + type: "uint256[]", + }, + ], + name: "RentPriceChanged", + type: "event", + }, + { + inputs: [ + { + internalType: "string", + name: "name", + type: "string", + }, + { + internalType: "uint256", + name: "expires", + type: "uint256", + }, + { + internalType: "uint256", + name: "duration", + type: "uint256", + }, + ], + name: "premium", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "name", + type: "string", + }, + { + internalType: "uint256", + name: "expires", + type: "uint256", + }, + { + internalType: "uint256", + name: "duration", + type: "uint256", + }, + ], + name: "price", + outputs: [ + { + components: [ + { + internalType: "uint256", + name: "base", + type: "uint256", + }, + { + internalType: "uint256", + name: "premium", + type: "uint256", + }, + ], + internalType: "struct IPriceOracle.Price", + name: "", + type: "tuple", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "price1Letter", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "price2Letter", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "price3Letter", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "price4Letter", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "price5Letter", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceID", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "usdOracle", + outputs: [ + { + internalType: "contract AggregatorInterface", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +const _bytecode = "0x61014060405234801561001157600080fd5b506040516109e63803806109e683398101604081905261003091610106565b6001600160a01b0382166101205280518190600090610051576100516101e6565b60200260200101516080818152505080600181518110610073576100736101e6565b602002602001015160a0818152505080600281518110610095576100956101e6565b602002602001015160c08181525050806003815181106100b7576100b76101e6565b602002602001015160e08181525050806004815181106100d9576100d96101e6565b6020026020010151610100818152505050506101fc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561011957600080fd5b82516001600160a01b038116811461013057600080fd5b602084810151919350906001600160401b038082111561014f57600080fd5b818601915086601f83011261016357600080fd5b815181811115610175576101756100f0565b8060051b604051601f19603f8301168101818110858211171561019a5761019a6100f0565b6040529182528482019250838101850191898311156101b857600080fd5b938501935b828510156101d6578451845293850193928501926101bd565b8096505050505050509250929050565b634e487b7160e01b600052603260045260246000fd5b60805160a05160c05160e051610100516101205161077261027460003960008181610189015261056701526000818161012801526102af0152600081816101ef01526102e801526000818161014f015261031a0152600081816101c8015261034c01526000818160c5015261037601526107726000f3fe608060405234801561001057600080fd5b50600436106100935760003560e01c8063a200e15311610066578063a200e1531461014a578063a34e359614610171578063c8a4271f14610184578063cd5d2c74146101c3578063d820ed42146101ea57600080fd5b806301ffc9a7146100985780632c0fd74c146100c057806350e9a715146100f557806359b6b86c14610123575b600080fd5b6100ab6100a6366004610612565b610211565b60405190151581526020015b60405180910390f35b6100e77f000000000000000000000000000000000000000000000000000000000000000081565b6040519081526020016100b7565b61010861010336600461063c565b610248565b604080518251815260209283015192810192909252016100b7565b6100e77f000000000000000000000000000000000000000000000000000000000000000081565b6100e77f000000000000000000000000000000000000000000000000000000000000000081565b6100e761017f36600461063c565b61040e565b6101ab7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020016100b7565b6100e77f000000000000000000000000000000000000000000000000000000000000000081565b6100e77f000000000000000000000000000000000000000000000000000000000000000081565b60006001600160e01b031982166301ffc9a760e01b148061024257506001600160e01b031982166350e9a71560e01b145b92915050565b6040805180820190915260008082526020820152600061029d86868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061045f92505050565b90506000600582106102da576102d3847f00000000000000000000000000000000000000000000000000000000000000006106d1565b905061039d565b8160040361030c576102d3847f00000000000000000000000000000000000000000000000000000000000000006106d1565b8160030361033e576102d3847f00000000000000000000000000000000000000000000000000000000000000006106d1565b81600203610370576102d3847f00000000000000000000000000000000000000000000000000000000000000006106d1565b61039a847f00000000000000000000000000000000000000000000000000000000000000006106d1565b90505b60405180604001604052806103b183610562565b81526020016104016103fc8a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508c92508b91506106099050565b610562565b9052979650505050505050565b60006104566103fc86868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508892508791506106099050565b95945050505050565b8051600090819081905b80821015610559576000858381518110610485576104856106e8565b01602001516001600160f81b0319169050600160ff1b8110156104b4576104ad6001846106fe565b9250610546565b600760fd1b6001600160f81b0319821610156104d5576104ad6002846106fe565b600f60fc1b6001600160f81b0319821610156104f6576104ad6003846106fe565b601f60fb1b6001600160f81b031982161015610517576104ad6004846106fe565b603f60fa1b6001600160f81b031982161015610538576104ad6005846106fe565b6105436006846106fe565b92505b508261055181610711565b935050610469565b50909392505050565b6000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166350d25bcd6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105e7919061072a565b9050806105f8846305f5e1006106d1565b6106029190610743565b9392505050565b60009392505050565b60006020828403121561062457600080fd5b81356001600160e01b03198116811461060257600080fd5b6000806000806060858703121561065257600080fd5b843567ffffffffffffffff8082111561066a57600080fd5b818701915087601f83011261067e57600080fd5b81358181111561068d57600080fd5b88602082850101111561069f57600080fd5b6020928301999098509187013596604001359550909350505050565b634e487b7160e01b600052601160045260246000fd5b8082028115828204841417610242576102426106bb565b634e487b7160e01b600052603260045260246000fd5b80820180821115610242576102426106bb565b600060018201610723576107236106bb565b5060010190565b60006020828403121561073c57600080fd5b5051919050565b60008261076057634e487b7160e01b600052601260045260246000fd5b50049056fea164736f6c6343000811000a"; +const isSuperArgs = (xs) => xs.length > 1; +class StablePriceOracle__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(_usdOracle, _rentPrices, overrides) { + return super.getDeployTransaction(_usdOracle, _rentPrices, overrides || {}); + } + deploy(_usdOracle, _rentPrices, overrides) { + return super.deploy(_usdOracle, _rentPrices, overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.StablePriceOracle__factory = StablePriceOracle__factory; +StablePriceOracle__factory.bytecode = _bytecode; +StablePriceOracle__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/index.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/index.d.ts new file mode 100644 index 00000000..28140677 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/index.d.ts @@ -0,0 +1,3 @@ +export { AggregatorInterface__factory } from "./AggregatorInterface__factory"; +export { StablePriceOracle__factory } from "./StablePriceOracle__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/index.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/index.d.ts.map new file mode 100644 index 00000000..0cb39d3d --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/index.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/index.js new file mode 100644 index 00000000..a1ad57dc --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/index.js @@ -0,0 +1,7 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.StablePriceOracle__factory = exports.AggregatorInterface__factory = void 0; +var AggregatorInterface__factory_1 = require("./AggregatorInterface__factory"); +Object.defineProperty(exports, "AggregatorInterface__factory", { enumerable: true, get: function () { return AggregatorInterface__factory_1.AggregatorInterface__factory; } }); +var StablePriceOracle__factory_1 = require("./StablePriceOracle__factory"); +Object.defineProperty(exports, "StablePriceOracle__factory", { enumerable: true, get: function () { return StablePriceOracle__factory_1.StablePriceOracle__factory; } }); diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/index.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/index.d.ts new file mode 100644 index 00000000..751b6397 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/index.d.ts @@ -0,0 +1,8 @@ +export * as stablePriceOracleSol from "./StablePriceOracle.sol"; +export { BaseRegistrarImplementation__factory } from "./BaseRegistrarImplementation__factory"; +export { DummyOracle__factory } from "./DummyOracle__factory"; +export { ETHRegistrarController__factory } from "./ETHRegistrarController__factory"; +export { IBaseRegistrar__factory } from "./IBaseRegistrar__factory"; +export { IETHRegistrarController__factory } from "./IETHRegistrarController__factory"; +export { IPriceOracle__factory } from "./IPriceOracle__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/index.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/index.d.ts.map new file mode 100644 index 00000000..9bfb49c0 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,oBAAoB,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,oCAAoC,EAAE,MAAM,wCAAwC,CAAC;AAC9F,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,+BAA+B,EAAE,MAAM,mCAAmC,CAAC;AACpF,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,gCAAgC,EAAE,MAAM,oCAAoC,CAAC;AACtF,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/index.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/index.js new file mode 100644 index 00000000..c1350284 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/index.js @@ -0,0 +1,39 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IPriceOracle__factory = exports.IETHRegistrarController__factory = exports.IBaseRegistrar__factory = exports.ETHRegistrarController__factory = exports.DummyOracle__factory = exports.BaseRegistrarImplementation__factory = exports.stablePriceOracleSol = void 0; +exports.stablePriceOracleSol = __importStar(require("./StablePriceOracle.sol")); +var BaseRegistrarImplementation__factory_1 = require("./BaseRegistrarImplementation__factory"); +Object.defineProperty(exports, "BaseRegistrarImplementation__factory", { enumerable: true, get: function () { return BaseRegistrarImplementation__factory_1.BaseRegistrarImplementation__factory; } }); +var DummyOracle__factory_1 = require("./DummyOracle__factory"); +Object.defineProperty(exports, "DummyOracle__factory", { enumerable: true, get: function () { return DummyOracle__factory_1.DummyOracle__factory; } }); +var ETHRegistrarController__factory_1 = require("./ETHRegistrarController__factory"); +Object.defineProperty(exports, "ETHRegistrarController__factory", { enumerable: true, get: function () { return ETHRegistrarController__factory_1.ETHRegistrarController__factory; } }); +var IBaseRegistrar__factory_1 = require("./IBaseRegistrar__factory"); +Object.defineProperty(exports, "IBaseRegistrar__factory", { enumerable: true, get: function () { return IBaseRegistrar__factory_1.IBaseRegistrar__factory; } }); +var IETHRegistrarController__factory_1 = require("./IETHRegistrarController__factory"); +Object.defineProperty(exports, "IETHRegistrarController__factory", { enumerable: true, get: function () { return IETHRegistrarController__factory_1.IETHRegistrarController__factory; } }); +var IPriceOracle__factory_1 = require("./IPriceOracle__factory"); +Object.defineProperty(exports, "IPriceOracle__factory", { enumerable: true, get: function () { return IPriceOracle__factory_1.IPriceOracle__factory; } }); diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/index.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/index.d.ts new file mode 100644 index 00000000..8f64dfdc --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/index.d.ts @@ -0,0 +1,9 @@ +export * as dnssecOracle from "./dnssec-oracle"; +export * as ethregistrar from "./ethregistrar"; +export * as registry from "./registry"; +export * as resolvers from "./resolvers"; +export * as reverseRegistrar from "./reverseRegistrar"; +export * as root from "./root"; +export * as utils from "./utils"; +export * as wrapper from "./wrapper"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/index.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/index.d.ts.map new file mode 100644 index 00000000..c802682f --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/@ensdomains/ens-contracts/contracts/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,YAAY,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,YAAY,MAAM,gBAAgB,CAAC;AAC/C,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC;AACvC,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,gBAAgB,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAC/B,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/index.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/index.js new file mode 100644 index 00000000..004079b0 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/index.js @@ -0,0 +1,34 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.wrapper = exports.utils = exports.root = exports.reverseRegistrar = exports.resolvers = exports.registry = exports.ethregistrar = exports.dnssecOracle = void 0; +exports.dnssecOracle = __importStar(require("./dnssec-oracle")); +exports.ethregistrar = __importStar(require("./ethregistrar")); +exports.registry = __importStar(require("./registry")); +exports.resolvers = __importStar(require("./resolvers")); +exports.reverseRegistrar = __importStar(require("./reverseRegistrar")); +exports.root = __importStar(require("./root")); +exports.utils = __importStar(require("./utils")); +exports.wrapper = __importStar(require("./wrapper")); diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/registry/ENSRegistry__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/registry/ENSRegistry__factory.d.ts new file mode 100644 index 00000000..fb2bd15b --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/registry/ENSRegistry__factory.d.ts @@ -0,0 +1,312 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../../../common"; +import type { ENSRegistry, ENSRegistryInterface } from "../../../../../@ensdomains/ens-contracts/contracts/registry/ENSRegistry"; +declare type ENSRegistryConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class ENSRegistry__factory extends ContractFactory { + constructor(...args: ENSRegistryConstructorParams); + getDeployTransaction(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): ENSRegistry__factory; + static readonly bytecode = "0x608060405234801561001057600080fd5b5060008080526020527fad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb580546001600160a01b0319163317905561098c806100596000396000f3fe608060405234801561001057600080fd5b50600436106100b45760003560e01c80635b0fc9c3116100715780635b0fc9c3146101ab5780635ef2c7f0146101be578063a22cb465146101d1578063cf408823146101e4578063e985e9c5146101f7578063f79fe5381461024357600080fd5b80630178b8bf146100b957806302571be31461010257806306ab59231461011557806314ab90381461013657806316a25cbd1461014b5780631896f70a14610198575b600080fd5b6100e56100c73660046107a4565b6000908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100e56101103660046107a4565b61026e565b6101286101233660046107d9565b61029c565b6040519081526020016100f9565b610149610144366004610826565b61036c565b005b61017f6101593660046107a4565b600090815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100f9565b6101496101a6366004610852565b61043f565b6101496101b9366004610852565b610504565b6101496101cc366004610875565b6105a6565b6101496101df3660046108cc565b6105c8565b6101496101f2366004610908565b610634565b610233610205366004610955565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205460ff1690565b60405190151581526020016100f9565b6102336102513660046107a4565b6000908152602081905260409020546001600160a01b0316151590565b6000818152602081905260408120546001600160a01b03163081036102965750600092915050565b92915050565b60008381526020819052604081205484906001600160a01b0316338114806102e757506001600160a01b038116600090815260016020908152604080832033845290915290205460ff165b6102f057600080fd5b60408051602080820189905281830188905282518083038401815260609092019092528051910120610322818661064f565b6040516001600160a01b0386168152869088907fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829060200160405180910390a39695505050505050565b60008281526020819052604090205482906001600160a01b0316338114806103b757506001600160a01b038116600090815260016020908152604080832033845290915290205460ff165b6103c057600080fd5b60405167ffffffffffffffff8416815284907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a25050600091825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b60008281526020819052604090205482906001600160a01b03163381148061048a57506001600160a01b038116600090815260016020908152604080832033845290915290205460ff165b61049357600080fd5b6040516001600160a01b038416815284907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a2505060009182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b60008281526020819052604090205482906001600160a01b03163381148061054f57506001600160a01b038116600090815260016020908152604080832033845290915290205460ff165b61055857600080fd5b610562848461064f565b6040516001600160a01b038416815284907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a250505050565b60006105b386868661029c565b90506105c081848461067d565b505050505050565b3360008181526001602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b61063e8484610504565b61064984838361067d565b50505050565b60009182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b6000838152602081905260409020600101546001600160a01b03838116911614610703576000838152602081815260409182902060010180546001600160a01b0319166001600160a01b038616908117909155915191825284917f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a0910160405180910390a25b60008381526020819052604090206001015467ffffffffffffffff828116600160a01b909204161461079f5760008381526020818152604091829020600101805467ffffffffffffffff60a01b1916600160a01b67ffffffffffffffff861690810291909117909155915191825284917f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa68910160405180910390a25b505050565b6000602082840312156107b657600080fd5b5035919050565b80356001600160a01b03811681146107d457600080fd5b919050565b6000806000606084860312156107ee57600080fd5b8335925060208401359150610805604085016107bd565b90509250925092565b803567ffffffffffffffff811681146107d457600080fd5b6000806040838503121561083957600080fd5b823591506108496020840161080e565b90509250929050565b6000806040838503121561086557600080fd5b82359150610849602084016107bd565b600080600080600060a0868803121561088d57600080fd5b85359450602086013593506108a4604087016107bd565b92506108b2606087016107bd565b91506108c06080870161080e565b90509295509295909350565b600080604083850312156108df57600080fd5b6108e8836107bd565b9150602083013580151581146108fd57600080fd5b809150509250929050565b6000806000806080858703121561091e57600080fd5b8435935061092e602086016107bd565b925061093c604086016107bd565b915061094a6060860161080e565b905092959194509250565b6000806040838503121561096857600080fd5b610971836107bd565b9150610849602084016107bd56fea164736f6c6343000811000a"; + static readonly abi: readonly [{ + readonly inputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "constructor"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "ApprovalForAll"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "label"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "NewOwner"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }]; + readonly name: "NewResolver"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "uint64"; + readonly name: "ttl"; + readonly type: "uint64"; + }]; + readonly name: "NewTTL"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "Transfer"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly name: "isApprovedForAll"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "owner"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "recordExists"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "resolver"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "setApprovalForAll"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "setOwner"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }, { + readonly internalType: "uint64"; + readonly name: "ttl"; + readonly type: "uint64"; + }]; + readonly name: "setRecord"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }]; + readonly name: "setResolver"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes32"; + readonly name: "label"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "setSubnodeOwner"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes32"; + readonly name: "label"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }, { + readonly internalType: "uint64"; + readonly name: "ttl"; + readonly type: "uint64"; + }]; + readonly name: "setSubnodeRecord"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint64"; + readonly name: "ttl"; + readonly type: "uint64"; + }]; + readonly name: "setTTL"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "ttl"; + readonly outputs: readonly [{ + readonly internalType: "uint64"; + readonly name: ""; + readonly type: "uint64"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): ENSRegistryInterface; + static connect(address: string, runner?: ContractRunner | null): ENSRegistry; +} +export {}; +//# sourceMappingURL=ENSRegistry__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/registry/ENSRegistry__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/registry/ENSRegistry__factory.d.ts.map new file mode 100644 index 00000000..126c3f8e --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/registry/ENSRegistry__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ENSRegistry__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/registry/ENSRegistry__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,WAAW,EACX,oBAAoB,EACrB,MAAM,yEAAyE,CAAC;AA8XjF,aAAK,4BAA4B,GAC7B,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,oBAAqB,SAAQ,eAAe;gBAC3C,GAAG,IAAI,EAAE,4BAA4B;IAQxC,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,oBAAoB;IAIrE,MAAM,CAAC,QAAQ,CAAC,QAAQ,k9JAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,oBAAoB;IAG9C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,WAAW;CAG7E"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/registry/ENSRegistry__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/registry/ENSRegistry__factory.js new file mode 100644 index 00000000..5fd70172 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/registry/ENSRegistry__factory.js @@ -0,0 +1,410 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ENSRegistry__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [], + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "ApprovalForAll", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: true, + internalType: "bytes32", + name: "label", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "NewOwner", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "resolver", + type: "address", + }, + ], + name: "NewResolver", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint64", + name: "ttl", + type: "uint64", + }, + ], + name: "NewTTL", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "Transfer", + type: "event", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + name: "isApprovedForAll", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "recordExists", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "resolver", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "setApprovalForAll", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "setOwner", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "resolver", + type: "address", + }, + { + internalType: "uint64", + name: "ttl", + type: "uint64", + }, + ], + name: "setRecord", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "address", + name: "resolver", + type: "address", + }, + ], + name: "setResolver", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "label", + type: "bytes32", + }, + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "setSubnodeOwner", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "label", + type: "bytes32", + }, + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "resolver", + type: "address", + }, + { + internalType: "uint64", + name: "ttl", + type: "uint64", + }, + ], + name: "setSubnodeRecord", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "uint64", + name: "ttl", + type: "uint64", + }, + ], + name: "setTTL", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "ttl", + outputs: [ + { + internalType: "uint64", + name: "", + type: "uint64", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +const _bytecode = "0x608060405234801561001057600080fd5b5060008080526020527fad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb580546001600160a01b0319163317905561098c806100596000396000f3fe608060405234801561001057600080fd5b50600436106100b45760003560e01c80635b0fc9c3116100715780635b0fc9c3146101ab5780635ef2c7f0146101be578063a22cb465146101d1578063cf408823146101e4578063e985e9c5146101f7578063f79fe5381461024357600080fd5b80630178b8bf146100b957806302571be31461010257806306ab59231461011557806314ab90381461013657806316a25cbd1461014b5780631896f70a14610198575b600080fd5b6100e56100c73660046107a4565b6000908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100e56101103660046107a4565b61026e565b6101286101233660046107d9565b61029c565b6040519081526020016100f9565b610149610144366004610826565b61036c565b005b61017f6101593660046107a4565b600090815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100f9565b6101496101a6366004610852565b61043f565b6101496101b9366004610852565b610504565b6101496101cc366004610875565b6105a6565b6101496101df3660046108cc565b6105c8565b6101496101f2366004610908565b610634565b610233610205366004610955565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205460ff1690565b60405190151581526020016100f9565b6102336102513660046107a4565b6000908152602081905260409020546001600160a01b0316151590565b6000818152602081905260408120546001600160a01b03163081036102965750600092915050565b92915050565b60008381526020819052604081205484906001600160a01b0316338114806102e757506001600160a01b038116600090815260016020908152604080832033845290915290205460ff165b6102f057600080fd5b60408051602080820189905281830188905282518083038401815260609092019092528051910120610322818661064f565b6040516001600160a01b0386168152869088907fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829060200160405180910390a39695505050505050565b60008281526020819052604090205482906001600160a01b0316338114806103b757506001600160a01b038116600090815260016020908152604080832033845290915290205460ff165b6103c057600080fd5b60405167ffffffffffffffff8416815284907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a25050600091825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b60008281526020819052604090205482906001600160a01b03163381148061048a57506001600160a01b038116600090815260016020908152604080832033845290915290205460ff165b61049357600080fd5b6040516001600160a01b038416815284907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a2505060009182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b60008281526020819052604090205482906001600160a01b03163381148061054f57506001600160a01b038116600090815260016020908152604080832033845290915290205460ff165b61055857600080fd5b610562848461064f565b6040516001600160a01b038416815284907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a250505050565b60006105b386868661029c565b90506105c081848461067d565b505050505050565b3360008181526001602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b61063e8484610504565b61064984838361067d565b50505050565b60009182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b6000838152602081905260409020600101546001600160a01b03838116911614610703576000838152602081815260409182902060010180546001600160a01b0319166001600160a01b038616908117909155915191825284917f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a0910160405180910390a25b60008381526020819052604090206001015467ffffffffffffffff828116600160a01b909204161461079f5760008381526020818152604091829020600101805467ffffffffffffffff60a01b1916600160a01b67ffffffffffffffff861690810291909117909155915191825284917f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa68910160405180910390a25b505050565b6000602082840312156107b657600080fd5b5035919050565b80356001600160a01b03811681146107d457600080fd5b919050565b6000806000606084860312156107ee57600080fd5b8335925060208401359150610805604085016107bd565b90509250925092565b803567ffffffffffffffff811681146107d457600080fd5b6000806040838503121561083957600080fd5b823591506108496020840161080e565b90509250929050565b6000806040838503121561086557600080fd5b82359150610849602084016107bd565b600080600080600060a0868803121561088d57600080fd5b85359450602086013593506108a4604087016107bd565b92506108b2606087016107bd565b91506108c06080870161080e565b90509295509295909350565b600080604083850312156108df57600080fd5b6108e8836107bd565b9150602083013580151581146108fd57600080fd5b809150509250929050565b6000806000806080858703121561091e57600080fd5b8435935061092e602086016107bd565b925061093c604086016107bd565b915061094a6060860161080e565b905092959194509250565b6000806040838503121561096857600080fd5b610971836107bd565b9150610849602084016107bd56fea164736f6c6343000811000a"; +const isSuperArgs = (xs) => xs.length > 1; +class ENSRegistry__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(overrides) { + return super.getDeployTransaction(overrides || {}); + } + deploy(overrides) { + return super.deploy(overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.ENSRegistry__factory = ENSRegistry__factory; +ENSRegistry__factory.bytecode = _bytecode; +ENSRegistry__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/registry/ENS__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/registry/ENS__factory.d.ts new file mode 100644 index 00000000..15d31a26 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/registry/ENS__factory.d.ts @@ -0,0 +1,293 @@ +import { type ContractRunner } from "ethers"; +import type { ENS, ENSInterface } from "../../../../../@ensdomains/ens-contracts/contracts/registry/ENS"; +export declare class ENS__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "ApprovalForAll"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "label"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "NewOwner"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }]; + readonly name: "NewResolver"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "uint64"; + readonly name: "ttl"; + readonly type: "uint64"; + }]; + readonly name: "NewTTL"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "Transfer"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly name: "isApprovedForAll"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "owner"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "recordExists"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "resolver"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "setApprovalForAll"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "setOwner"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }, { + readonly internalType: "uint64"; + readonly name: "ttl"; + readonly type: "uint64"; + }]; + readonly name: "setRecord"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }]; + readonly name: "setResolver"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes32"; + readonly name: "label"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "setSubnodeOwner"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes32"; + readonly name: "label"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }, { + readonly internalType: "uint64"; + readonly name: "ttl"; + readonly type: "uint64"; + }]; + readonly name: "setSubnodeRecord"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint64"; + readonly name: "ttl"; + readonly type: "uint64"; + }]; + readonly name: "setTTL"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "ttl"; + readonly outputs: readonly [{ + readonly internalType: "uint64"; + readonly name: ""; + readonly type: "uint64"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): ENSInterface; + static connect(address: string, runner?: ContractRunner | null): ENS; +} +//# sourceMappingURL=ENS__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/registry/ENS__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/registry/ENS__factory.d.ts.map new file mode 100644 index 00000000..cb3321cb --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/registry/ENS__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ENS__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/registry/ENS__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,GAAG,EACH,YAAY,EACb,MAAM,iEAAiE,CAAC;AAsXzE,qBAAa,YAAY;IACvB,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,YAAY;IAGtC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,GAAG;CAGrE"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/registry/ENS__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/registry/ENS__factory.js new file mode 100644 index 00000000..06461e9b --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/registry/ENS__factory.js @@ -0,0 +1,385 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ENS__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "ApprovalForAll", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: true, + internalType: "bytes32", + name: "label", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "NewOwner", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "resolver", + type: "address", + }, + ], + name: "NewResolver", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint64", + name: "ttl", + type: "uint64", + }, + ], + name: "NewTTL", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "Transfer", + type: "event", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + name: "isApprovedForAll", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "recordExists", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "resolver", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "setApprovalForAll", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "setOwner", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "resolver", + type: "address", + }, + { + internalType: "uint64", + name: "ttl", + type: "uint64", + }, + ], + name: "setRecord", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "address", + name: "resolver", + type: "address", + }, + ], + name: "setResolver", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "label", + type: "bytes32", + }, + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "setSubnodeOwner", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "label", + type: "bytes32", + }, + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "resolver", + type: "address", + }, + { + internalType: "uint64", + name: "ttl", + type: "uint64", + }, + ], + name: "setSubnodeRecord", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "uint64", + name: "ttl", + type: "uint64", + }, + ], + name: "setTTL", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "ttl", + outputs: [ + { + internalType: "uint64", + name: "", + type: "uint64", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class ENS__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.ENS__factory = ENS__factory; +ENS__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/registry/index.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/registry/index.d.ts new file mode 100644 index 00000000..2c6057f3 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/registry/index.d.ts @@ -0,0 +1,3 @@ +export { ENS__factory } from "./ENS__factory"; +export { ENSRegistry__factory } from "./ENSRegistry__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/registry/index.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/registry/index.d.ts.map new file mode 100644 index 00000000..a56c4c48 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/registry/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/registry/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/registry/index.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/registry/index.js new file mode 100644 index 00000000..cc9bbd1f --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/registry/index.js @@ -0,0 +1,7 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ENSRegistry__factory = exports.ENS__factory = void 0; +var ENS__factory_1 = require("./ENS__factory"); +Object.defineProperty(exports, "ENS__factory", { enumerable: true, get: function () { return ENS__factory_1.ENS__factory; } }); +var ENSRegistry__factory_1 = require("./ENSRegistry__factory"); +Object.defineProperty(exports, "ENSRegistry__factory", { enumerable: true, get: function () { return ENSRegistry__factory_1.ENSRegistry__factory; } }); diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable__factory.d.ts new file mode 100644 index 00000000..333576d1 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable__factory.d.ts @@ -0,0 +1,40 @@ +import { type ContractRunner } from "ethers"; +import type { IMulticallable, IMulticallableInterface } from "../../../../../@ensdomains/ens-contracts/contracts/resolvers/IMulticallable"; +export declare class IMulticallable__factory { + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "bytes[]"; + readonly name: "data"; + readonly type: "bytes[]"; + }]; + readonly name: "multicall"; + readonly outputs: readonly [{ + readonly internalType: "bytes[]"; + readonly name: "results"; + readonly type: "bytes[]"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes[]"; + readonly name: "data"; + readonly type: "bytes[]"; + }]; + readonly name: "multicallWithNodeCheck"; + readonly outputs: readonly [{ + readonly internalType: "bytes[]"; + readonly name: "results"; + readonly type: "bytes[]"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): IMulticallableInterface; + static connect(address: string, runner?: ContractRunner | null): IMulticallable; +} +//# sourceMappingURL=IMulticallable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable__factory.d.ts.map new file mode 100644 index 00000000..bfe6498b --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IMulticallable__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,cAAc,EACd,uBAAuB,EACxB,MAAM,6EAA6E,CAAC;AAgDrF,qBAAa,uBAAuB;IAClC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,uBAAuB;IAGjD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,cAAc;CAGlB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable__factory.js new file mode 100644 index 00000000..fa3ec51c --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable__factory.js @@ -0,0 +1,59 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IMulticallable__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "bytes[]", + name: "data", + type: "bytes[]", + }, + ], + name: "multicall", + outputs: [ + { + internalType: "bytes[]", + name: "results", + type: "bytes[]", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + { + internalType: "bytes[]", + name: "data", + type: "bytes[]", + }, + ], + name: "multicallWithNodeCheck", + outputs: [ + { + internalType: "bytes[]", + name: "results", + type: "bytes[]", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, +]; +class IMulticallable__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IMulticallable__factory = IMulticallable__factory; +IMulticallable__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/Multicallable__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/Multicallable__factory.d.ts new file mode 100644 index 00000000..bf6abf7d --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/Multicallable__factory.d.ts @@ -0,0 +1,54 @@ +import { type ContractRunner } from "ethers"; +import type { Multicallable, MulticallableInterface } from "../../../../../@ensdomains/ens-contracts/contracts/resolvers/Multicallable"; +export declare class Multicallable__factory { + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "bytes[]"; + readonly name: "data"; + readonly type: "bytes[]"; + }]; + readonly name: "multicall"; + readonly outputs: readonly [{ + readonly internalType: "bytes[]"; + readonly name: "results"; + readonly type: "bytes[]"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "nodehash"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes[]"; + readonly name: "data"; + readonly type: "bytes[]"; + }]; + readonly name: "multicallWithNodeCheck"; + readonly outputs: readonly [{ + readonly internalType: "bytes[]"; + readonly name: "results"; + readonly type: "bytes[]"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceID"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): MulticallableInterface; + static connect(address: string, runner?: ContractRunner | null): Multicallable; +} +//# sourceMappingURL=Multicallable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/Multicallable__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/Multicallable__factory.d.ts.map new file mode 100644 index 00000000..25cc2050 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/Multicallable__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"Multicallable__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/resolvers/Multicallable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,aAAa,EACb,sBAAsB,EACvB,MAAM,4EAA4E,CAAC;AAmEpF,qBAAa,sBAAsB;IACjC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,sBAAsB;IAGhD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,aAAa;CAGjB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/Multicallable__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/Multicallable__factory.js new file mode 100644 index 00000000..f9b2601d --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/Multicallable__factory.js @@ -0,0 +1,78 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.Multicallable__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "bytes[]", + name: "data", + type: "bytes[]", + }, + ], + name: "multicall", + outputs: [ + { + internalType: "bytes[]", + name: "results", + type: "bytes[]", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "nodehash", + type: "bytes32", + }, + { + internalType: "bytes[]", + name: "data", + type: "bytes[]", + }, + ], + name: "multicallWithNodeCheck", + outputs: [ + { + internalType: "bytes[]", + name: "results", + type: "bytes[]", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceID", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class Multicallable__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.Multicallable__factory = Multicallable__factory; +Multicallable__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver__factory.d.ts new file mode 100644 index 00000000..c2fb10ac --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver__factory.d.ts @@ -0,0 +1,805 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, AddressLike, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../../../common"; +import type { PublicResolver, PublicResolverInterface } from "../../../../../@ensdomains/ens-contracts/contracts/resolvers/PublicResolver"; +declare type PublicResolverConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class PublicResolver__factory extends ContractFactory { + constructor(...args: PublicResolverConstructorParams); + getDeployTransaction(_ens: AddressLike, wrapperAddress: AddressLike, _trustedETHController: AddressLike, _trustedReverseRegistrar: AddressLike, overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(_ens: AddressLike, wrapperAddress: AddressLike, _trustedETHController: AddressLike, _trustedReverseRegistrar: AddressLike, overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): PublicResolver__factory; + static readonly bytecode = "0x6101006040523480156200001257600080fd5b50604051620030403803806200304083398101604081905262000035916200017a565b6040516302571be360e01b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26004820152849033906000906001600160a01b038416906302571be390602401602060405180830381865afa158015620000a1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620000c79190620001e2565b604051630f41a04d60e11b81526001600160a01b03848116600483015291925090821690631e83409a906024016020604051808303816000875af115801562000114573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200013a919062000209565b5050506001600160a01b039485166080525091831660a052821660c0521660e05262000223565b6001600160a01b03811681146200017757600080fd5b50565b600080600080608085870312156200019157600080fd5b84516200019e8162000161565b6020860151909450620001b18162000161565b6040860151909350620001c48162000161565b6060860151909250620001d78162000161565b939692955090935050565b600060208284031215620001f557600080fd5b8151620002028162000161565b9392505050565b6000602082840312156200021c57600080fd5b5051919050565b60805160a05160c05160e051612ddc620002646000396000611720015260006116ee0152600081816117df015261182c015260006117680152612ddc6000f3fe608060405234801561001057600080fd5b50600436106101da5760003560e01c80638b95dd7111610104578063c8690233116100a2578063e32954eb11610071578063e32954eb14610500578063e59d895d14610513578063e985e9c514610526578063f1cb7e061461056257600080fd5b8063c869023314610441578063ce3decdc14610499578063d5fa2b00146104ac578063d700ff33146104bf57600080fd5b8063a8fa5682116100de578063a8fa5682146103b7578063a9784b3e146103ca578063ac9650d81461040e578063bc1c58d11461042e57600080fd5b80638b95dd711461037e578063a22cb46514610391578063a4b91a01146103a457600080fd5b80633603d7581161017c5780635c98042b1161014b5780635c98042b14610332578063623195b014610345578063691f343114610358578063773722131461036b57600080fd5b80633603d758146102a15780633b3b57de146102b45780634cbf6ba4146102c757806359d1d43c1461031257600080fd5b8063124a319c116101b8578063124a319c1461022f5780632203ab561461025a57806329cd62ea1461027b578063304e6ade1461028e57600080fd5b806301ffc9a7146101df5780630af179d71461020757806310f13a8c1461021c575b600080fd5b6101f26101ed36600461230a565b610575565b60405190151581526020015b60405180910390f35b61021a610215366004612366565b610586565b005b61021a61022a3660046123b1565b61078f565b61024261023d36600461242a565b61085b565b6040516001600160a01b0390911681526020016101fe565b61026d610268366004612456565b610aac565b6040516101fe9291906124c8565b61021a6102893660046124e1565b610be2565b61021a61029c366004612366565b610c7c565b61021a6102af36600461250d565b610cf7565b6102426102c236600461250d565b610d98565b6101f26102d5366004612456565b600082815260208181526040808320546001600160401b031683526006825280832094835293815283822092825291909152205461ffff16151590565b610325610320366004612366565b610dca565b6040516101fe9190612526565b61032561034036600461250d565b610ea9565b61021a610353366004612539565b610f67565b61032561036636600461250d565b611003565b61021a610379366004612366565b61103c565b61021a61038c3660046125a1565b6110b7565b61021a61039f366004612689565b611196565b61021a6103b23660046126b5565b611271565b6103256103c53660046126f3565b61133e565b6101f26103d8366004612733565b6001600160a01b039283166000908152600c60209081526040808320948352938152838220929094168152925290205460ff1690565b61042161041c3660046127ae565b61138b565b6040516101fe91906127ef565b61032561043c36600461250d565b611399565b61048461044f36600461250d565b600081815260208181526040808320546001600160401b03168352600982528083209383529290522080546001909101549091565b604080519283526020830191909152016101fe565b61021a6104a7366004612366565b6113d2565b61021a6104ba366004612851565b611513565b6104e86104cd36600461250d565b6000602081905290815260409020546001600160401b031681565b6040516001600160401b0390911681526020016101fe565b61042161050e366004612881565b61153a565b61021a6105213660046128bf565b61154f565b6101f26105343660046128f4565b6001600160a01b039182166000908152600b6020908152604080832093909416825291909152205460ff1690565b610325610570366004612456565b6115f5565b6000610580826116bc565b92915050565b82610590816116e1565b61059957600080fd5b600084815260208181526040808320548151601f87018490048402810184019092528582528392606092839285926001600160401b039091169183916105fe9183918d908d908190840183828082843760009201919091525092939250506119169050565b90505b80515160208201511015610728578661ffff16600003610666578060400151965061062b81611977565b94508460405160200161063e9190612922565b60405160208183030381529060405280519060200120925061065f81611998565b935061071a565b600061067182611977565b9050816040015161ffff168861ffff16141580610695575061069386826119b4565b155b15610718576106f18c878a8e8e8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250505060208801518d91506106e8908290612954565b8b51158a6119d2565b81604001519750816020015196508095508580519060200120935061071582611998565b94505b505b61072381611c39565b610601565b50835115610783576107838a85888c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508c925061077a91508290508f612954565b895115886119d2565b50505050505050505050565b84610799816116e1565b6107a257600080fd5b600086815260208181526040808320546001600160401b03168352600a8252808320898452909152908190209051849184916107e19089908990612967565b908152602001604051809103902091826107fc9291906129ff565b50848460405161080d929190612967565b6040518091039020867f448bc014f1536726cf8d54ff3d6481ed3cbc683c2591ca204274009afa09b1a18787878760405161084b9493929190612ae7565b60405180910390a3505050505050565b600082815260208181526040808320546001600160401b031683526007825280832085845282528083206001600160e01b0319851684529091528120546001600160a01b031680156108ae579050610580565b60006108b985610d98565b90506001600160a01b0381166108d457600092505050610580565b6040516301ffc9a760e01b602482015260009081906001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b1790525161092c9190612922565b600060405180830381855afa9150503d8060008114610967576040519150601f19603f3d011682016040523d82523d6000602084013e61096c565b606091505b509150915081158061097f575060208151105b806109a9575080601f8151811061099857610998612b19565b01602001516001600160f81b031916155b156109bb576000945050505050610580565b6040516001600160e01b0319871660248201526001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b17905251610a119190612922565b600060405180830381855afa9150503d8060008114610a4c576040519150601f19603f3d011682016040523d82523d6000602084013e610a51565b606091505b509092509050811580610a65575060208151105b80610a8f575080601f81518110610a7e57610a7e612b19565b01602001516001600160f81b031916155b15610aa1576000945050505050610580565b509095945050505050565b600082815260208181526040808320546001600160401b03168352600180835281842086855290925282206060915b848111610bc25780851615801590610b0b575060008181526020839052604081208054610b0790612977565b9050115b15610bba5780826000838152602001908152602001600020808054610b2f90612977565b80601f0160208091040260200160405190810160405280929190818152602001828054610b5b90612977565b8015610ba85780601f10610b7d57610100808354040283529160200191610ba8565b820191906000526020600020905b815481529060010190602001808311610b8b57829003601f168201915b50505050509050935093505050610bdb565b60011b610adb565b5060006040518060200160405280600081525092509250505b9250929050565b82610bec816116e1565b610bf557600080fd5b60408051808201825284815260208082018581526000888152808352848120546001600160401b031681526009835284812089825283528490209251835551600190920191909155815185815290810184905285917f1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e4691015b60405180910390a250505050565b82610c86816116e1565b610c8f57600080fd5b600084815260208181526040808320546001600160401b03168352600382528083208784529091529020610cc48385836129ff565b50837fe379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d75788484604051610c6e929190612b2f565b80610d01816116e1565b610d0a57600080fd5b600082815260208190526040812080546001600160401b031691610d2d83612b43565b82546101009290920a6001600160401b03818102199093169183160217909155600084815260208181526040918290205491519190921681528492507fc6621ccb8f3f5a04bb6502154b2caf6adf5983fe76dfef1cfc9c42e3579db444910160405180910390a25050565b600080610da683603c6115f5565b90508051600003610dba5750600092915050565b610dc381611d21565b9392505050565b600083815260208181526040808320546001600160401b03168352600a825280832086845290915290819020905160609190610e099085908590612967565b90815260200160405180910390208054610e2290612977565b80601f0160208091040260200160405190810160405280929190818152602001828054610e4e90612977565b8015610e9b5780601f10610e7057610100808354040283529160200191610e9b565b820191906000526020600020905b815481529060010190602001808311610e7e57829003601f168201915b505050505090509392505050565b600081815260208181526040808320546001600160401b03168352600482528083208484529091529020805460609190610ee290612977565b80601f0160208091040260200160405190810160405280929190818152602001828054610f0e90612977565b8015610f5b5780601f10610f3057610100808354040283529160200191610f5b565b820191906000526020600020905b815481529060010190602001808311610f3e57829003601f168201915b50505050509050919050565b83610f71816116e1565b610f7a57600080fd5b83610f86600182612954565b1615610f9157600080fd5b600085815260208181526040808320546001600160401b031683526001825280832088845282528083208784529091529020610fce8385836129ff565b50604051849086907faa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe390600090a35050505050565b600081815260208181526040808320546001600160401b03168352600882528083208484529091529020805460609190610ee290612977565b82611046816116e1565b61104f57600080fd5b600084815260208181526040808320546001600160401b031683526008825280832087845290915290206110848385836129ff565b50837fb7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f78484604051610c6e929190612b2f565b826110c1816116e1565b6110ca57600080fd5b837f65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af75284846040516110fc9291906124c8565b60405180910390a2603c830361115357837f52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd261113784611d21565b6040516001600160a01b03909116815260200160405180910390a25b600084815260208181526040808320546001600160401b03168352600282528083208784528252808320868452909152902061118f8382612b69565b5050505050565b6001600160a01b03821633036112055760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084015b60405180910390fd5b336000818152600b602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6001600160a01b03821633036112c95760405162461bcd60e51b815260206004820181905260248201527f53657474696e672064656c65676174652073746174757320666f722073656c6660448201526064016111fc565b336000818152600c6020908152604080832087845282528083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519384529286917ff0ddb3b04746704017f9aa8bd728fcc2c1d11675041205350018915f5e4750a0910160405180910390a4505050565b600083815260208181526040808320546001600160401b03168352600582528083208684528252808320858452825280832061ffff851684529091529020805460609190610e2290612977565b6060610dc360008484611d40565b600081815260208181526040808320546001600160401b03168352600382528083208484529091529020805460609190610ee290612977565b826113dc816116e1565b6113e557600080fd5b600084815260208181526040808320546001600160401b0316808452600483528184208885529092528220805491929161141e90612977565b80601f016020809104026020016040519081016040528092919081815260200182805461144a90612977565b80156114975780601f1061146c57610100808354040283529160200191611497565b820191906000526020600020905b81548152906001019060200180831161147a57829003601f168201915b505050506001600160401b03841660009081526004602090815260408083208b845290915290209192506114ce90508587836129ff565b50857f8f15ed4b723ef428f250961da8315675b507046737e19319fc1a4d81bfe87f8582878760405161150393929190612c28565b60405180910390a2505050505050565b8161151d816116e1565b61152657600080fd5b61153583603c61038c85611f0f565b505050565b6060611547848484611d40565b949350505050565b82611559816116e1565b61156257600080fd5b600084815260208181526040808320546001600160401b031683526007825280832087845282528083206001600160e01b031987168085529083529281902080546001600160a01b0319166001600160a01b038716908117909155905190815286917f7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa910160405180910390a350505050565b600082815260208181526040808320546001600160401b03168352600282528083208584528252808320848452909152902080546060919061163690612977565b80601f016020809104026020016040519081016040528092919081815260200182805461166290612977565b80156116af5780601f10611684576101008083540402835291602001916116af565b820191906000526020600020905b81548152906001019060200180831161169257829003601f168201915b5050505050905092915050565b60006001600160e01b03198216631674750f60e21b1480610580575061058082611f3f565b6000336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614806117425750336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016145b1561174f57506001919050565b6040516302571be360e01b8152600481018390526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906302571be390602401602060405180830381865afa1580156117b7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117db9190612c58565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b0316036118a2576040516331a9108f60e11b8152600481018490527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690636352211e90602401602060405180830381865afa15801561187b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061189f9190612c58565b90505b6001600160a01b0381163314806118dc57506001600160a01b0381166000908152600b6020908152604080832033845290915290205460ff165b80610dc357506001600160a01b0381166000908152600c60209081526040808320868452825280832033845290915290205460ff16610dc3565b6119646040518060e001604052806060815260200160008152602001600061ffff168152602001600061ffff168152602001600063ffffffff16815260200160008152602001600081525090565b82815260c0810182905261058081611c39565b602081015181516060916105809161198f9082611f64565b84519190611fbe565b60a081015160c08201516060916105809161198f908290612954565b600081518351148015610dc35750610dc38360008460008751612034565b8651602088012060006119e6878787611fbe565b90508315611b0d576001600160401b03831660009081526005602090815260408083208d84528252808320858452825280832061ffff8c16845290915290208054611a3090612977565b159050611a8e576001600160401b03831660009081526006602090815260408083208d845282528083208584529091528120805461ffff1691611a7283612c75565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b03831660009081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091528120611ace91612297565b897f03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a12078a8a604051611b00929190612c93565b60405180910390a2610783565b6001600160401b03831660009081526005602090815260408083208d84528252808320858452825280832061ffff8c16845290915290208054611b4f90612977565b9050600003611baf576001600160401b03831660009081526006602090815260408083208d845282528083208584529091528120805461ffff1691611b9383612cb9565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b03831660009081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091529020611bf08282612b69565b50897f52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b8a8a84604051611c2593929190612cd0565b60405180910390a250505050505050505050565b60c08101516020820181905281515111611c505750565b6000611c6482600001518360200151611f64565b8260200151611c739190612cff565b8251909150611c829082612057565b61ffff166040830152611c96600282612cff565b8251909150611ca59082612057565b61ffff166060830152611cb9600282612cff565b8251909150611cc8908261207f565b63ffffffff166080830152611cde600482612cff565b8251909150600090611cf09083612057565b61ffff169050611d01600283612cff565b60a084018190529150611d148183612cff565b60c0909301929092525050565b60008151601414611d3157600080fd5b5060200151600160601b900490565b6060816001600160401b03811115611d5a57611d5a61258b565b604051908082528060200260200182016040528015611d8d57816020015b6060815260200190600190039081611d785790505b50905060005b82811015611f07578415611e4f576000848483818110611db557611db5612b19565b9050602002810190611dc79190612d12565b611dd691602491600491612d58565b611ddf91612d82565b9050858114611e4d5760405162461bcd60e51b815260206004820152603460248201527f6d756c746963616c6c3a20416c6c207265636f726473206d7573742068617665604482015273040c240dac2e8c6d0d2dcce40dcc2dacad0c2e6d60631b60648201526084016111fc565b505b60008030868685818110611e6557611e65612b19565b9050602002810190611e779190612d12565b604051611e85929190612967565b600060405180830381855af49150503d8060008114611ec0576040519150601f19603f3d011682016040523d82523d6000602084013e611ec5565b606091505b509150915081611ed457600080fd5b80848481518110611ee757611ee7612b19565b602002602001018190525050508080611eff90612da0565b915050611d93565b509392505050565b604080516014808252818301909252606091602082018180368337505050600160601b9290920260208301525090565b60006001600160e01b0319821663c869023360e01b14806105805750610580826120a9565b6000815b83518110611f7857611f78612db9565b6000611f8485836120ce565b60ff169050611f94816001612cff565b611f9e9083612cff565b915080600003611fae5750611fb4565b50611f68565b6115478382612954565b8251606090611fcd8385612cff565b1115611fd857600080fd5b6000826001600160401b03811115611ff257611ff261258b565b6040519080825280601f01601f19166020018201604052801561201c576020820181803683370190505b50905060208082019086860101610aa18282876120f2565b6000612041848484612148565b61204c878785612148565b149695505050505050565b8151600090612067836002612cff565b111561207257600080fd5b50016002015161ffff1690565b815160009061208f836004612cff565b111561209a57600080fd5b50016004015163ffffffff1690565b60006001600160e01b0319821663691f343160e01b148061058057506105808261216c565b60008282815181106120e2576120e2612b19565b016020015160f81c905092915050565b6020811061212a5781518352612109602084612cff565b9250612116602083612cff565b9150612123602082612954565b90506120f2565b905182516020929092036101000a6000190180199091169116179052565b82516000906121578385612cff565b111561216257600080fd5b5091016020012090565b60006001600160e01b031982166304928c6760e21b148061058057506105808260006001600160e01b0319821663547d2b4160e11b14806121bd57506001600160e01b03198216635c98042b60e01b145b8061058057506105808260006001600160e01b0319821663bc1c58d160e01b148061058057506105808260006001600160e01b03198216631d9dabef60e11b148061221857506001600160e01b031982166378e5bf0360e11b145b8061058057506105808260006001600160e01b03198216631101d5ab60e11b148061058057506105808260006001600160e01b0319821663d700ff3360e01b148061058057506105808260006001600160e01b03198216634fbf043360e01b148061058057506301ffc9a760e01b6001600160e01b0319831614610580565b5080546122a390612977565b6000825580601f106122b3575050565b601f0160209004906000526020600020908101906122d191906122d4565b50565b5b808211156122e957600081556001016122d5565b5090565b80356001600160e01b03198116811461230557600080fd5b919050565b60006020828403121561231c57600080fd5b610dc3826122ed565b60008083601f84011261233757600080fd5b5081356001600160401b0381111561234e57600080fd5b602083019150836020828501011115610bdb57600080fd5b60008060006040848603121561237b57600080fd5b8335925060208401356001600160401b0381111561239857600080fd5b6123a486828701612325565b9497909650939450505050565b6000806000806000606086880312156123c957600080fd5b8535945060208601356001600160401b03808211156123e757600080fd5b6123f389838a01612325565b9096509450604088013591508082111561240c57600080fd5b5061241988828901612325565b969995985093965092949392505050565b6000806040838503121561243d57600080fd5b8235915061244d602084016122ed565b90509250929050565b6000806040838503121561246957600080fd5b50508035926020909101359150565b60005b8381101561249357818101518382015260200161247b565b50506000910152565b600081518084526124b4816020860160208601612478565b601f01601f19169290920160200192915050565b828152604060208201526000611547604083018461249c565b6000806000606084860312156124f657600080fd5b505081359360208301359350604090920135919050565b60006020828403121561251f57600080fd5b5035919050565b602081526000610dc3602083018461249c565b6000806000806060858703121561254f57600080fd5b843593506020850135925060408501356001600160401b0381111561257357600080fd5b61257f87828801612325565b95989497509550505050565b634e487b7160e01b600052604160045260246000fd5b6000806000606084860312156125b657600080fd5b833592506020840135915060408401356001600160401b03808211156125db57600080fd5b818601915086601f8301126125ef57600080fd5b8135818111156126015761260161258b565b604051601f8201601f19908116603f011681019083821181831017156126295761262961258b565b8160405282815289602084870101111561264257600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6001600160a01b03811681146122d157600080fd5b8035801515811461230557600080fd5b6000806040838503121561269c57600080fd5b82356126a781612664565b915061244d60208401612679565b6000806000606084860312156126ca57600080fd5b8335925060208401356126dc81612664565b91506126ea60408501612679565b90509250925092565b60008060006060848603121561270857600080fd5b8335925060208401359150604084013561ffff8116811461272857600080fd5b809150509250925092565b60008060006060848603121561274857600080fd5b833561275381612664565b925060208401359150604084013561272881612664565b60008083601f84011261277c57600080fd5b5081356001600160401b0381111561279357600080fd5b6020830191508360208260051b8501011115610bdb57600080fd5b600080602083850312156127c157600080fd5b82356001600160401b038111156127d757600080fd5b6127e38582860161276a565b90969095509350505050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b8281101561284457603f1988860301845261283285835161249c565b94509285019290850190600101612816565b5092979650505050505050565b6000806040838503121561286457600080fd5b82359150602083013561287681612664565b809150509250929050565b60008060006040848603121561289657600080fd5b8335925060208401356001600160401b038111156128b357600080fd5b6123a48682870161276a565b6000806000606084860312156128d457600080fd5b833592506128e4602085016122ed565b9150604084013561272881612664565b6000806040838503121561290757600080fd5b823561291281612664565b9150602083013561287681612664565b60008251612934818460208701612478565b9190910192915050565b634e487b7160e01b600052601160045260246000fd5b818103818111156105805761058061293e565b8183823760009101908152919050565b600181811c9082168061298b57607f821691505b6020821081036129ab57634e487b7160e01b600052602260045260246000fd5b50919050565b601f82111561153557600081815260208120601f850160051c810160208610156129d85750805b601f850160051c820191505b818110156129f7578281556001016129e4565b505050505050565b6001600160401b03831115612a1657612a1661258b565b612a2a83612a248354612977565b836129b1565b6000601f841160018114612a5e5760008515612a465750838201355b600019600387901b1c1916600186901b17835561118f565b600083815260209020601f19861690835b82811015612a8f5786850135825560209485019460019092019101612a6f565b5086821015612aac5760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b604081526000612afb604083018688612abe565b8281036020840152612b0e818587612abe565b979650505050505050565b634e487b7160e01b600052603260045260246000fd5b602081526000611547602083018486612abe565b60006001600160401b03808316818103612b5f57612b5f61293e565b6001019392505050565b81516001600160401b03811115612b8257612b8261258b565b612b9681612b908454612977565b846129b1565b602080601f831160018114612bcb5760008415612bb35750858301515b600019600386901b1c1916600185901b1785556129f7565b600085815260208120601f198616915b82811015612bfa57888601518255948401946001909101908401612bdb565b5085821015612c185787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b604081526000612c3b604083018661249c565b8281036020840152612c4e818587612abe565b9695505050505050565b600060208284031215612c6a57600080fd5b8151610dc381612664565b600061ffff821680612c8957612c8961293e565b6000190192915050565b604081526000612ca6604083018561249c565b905061ffff831660208301529392505050565b600061ffff808316818103612b5f57612b5f61293e565b606081526000612ce3606083018661249c565b61ffff851660208401528281036040840152612c4e818561249c565b808201808211156105805761058061293e565b6000808335601e19843603018112612d2957600080fd5b8301803591506001600160401b03821115612d4357600080fd5b602001915036819003821315610bdb57600080fd5b60008085851115612d6857600080fd5b83861115612d7557600080fd5b5050820193919092039150565b8035602083101561058057600019602084900360031b1b1692915050565b600060018201612db257612db261293e565b5060010190565b634e487b7160e01b600052600160045260246000fdfea164736f6c6343000811000a"; + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "contract ENS"; + readonly name: "_ens"; + readonly type: "address"; + }, { + readonly internalType: "contract INameWrapper"; + readonly name: "wrapperAddress"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "_trustedETHController"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "_trustedReverseRegistrar"; + readonly type: "address"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "constructor"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "contentType"; + readonly type: "uint256"; + }]; + readonly name: "ABIChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "address"; + readonly name: "a"; + readonly type: "address"; + }]; + readonly name: "AddrChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "coinType"; + readonly type: "uint256"; + }, { + readonly indexed: false; + readonly internalType: "bytes"; + readonly name: "newAddress"; + readonly type: "bytes"; + }]; + readonly name: "AddressChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "ApprovalForAll"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "delegate"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "Approved"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "bytes"; + readonly name: "hash"; + readonly type: "bytes"; + }]; + readonly name: "ContenthashChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "bytes"; + readonly name: "name"; + readonly type: "bytes"; + }, { + readonly indexed: false; + readonly internalType: "uint16"; + readonly name: "resource"; + readonly type: "uint16"; + }, { + readonly indexed: false; + readonly internalType: "bytes"; + readonly name: "record"; + readonly type: "bytes"; + }]; + readonly name: "DNSRecordChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "bytes"; + readonly name: "name"; + readonly type: "bytes"; + }, { + readonly indexed: false; + readonly internalType: "uint16"; + readonly name: "resource"; + readonly type: "uint16"; + }]; + readonly name: "DNSRecordDeleted"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "bytes"; + readonly name: "lastzonehash"; + readonly type: "bytes"; + }, { + readonly indexed: false; + readonly internalType: "bytes"; + readonly name: "zonehash"; + readonly type: "bytes"; + }]; + readonly name: "DNSZonehashChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "bytes4"; + readonly name: "interfaceID"; + readonly type: "bytes4"; + }, { + readonly indexed: false; + readonly internalType: "address"; + readonly name: "implementer"; + readonly type: "address"; + }]; + readonly name: "InterfaceChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "string"; + readonly name: "name"; + readonly type: "string"; + }]; + readonly name: "NameChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "bytes32"; + readonly name: "x"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "bytes32"; + readonly name: "y"; + readonly type: "bytes32"; + }]; + readonly name: "PubkeyChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "string"; + readonly name: "indexedKey"; + readonly type: "string"; + }, { + readonly indexed: false; + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }, { + readonly indexed: false; + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }]; + readonly name: "TextChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "uint64"; + readonly name: "newVersion"; + readonly type: "uint64"; + }]; + readonly name: "VersionChanged"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "contentTypes"; + readonly type: "uint256"; + }]; + readonly name: "ABI"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "addr"; + readonly outputs: readonly [{ + readonly internalType: "address payable"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "coinType"; + readonly type: "uint256"; + }]; + readonly name: "addr"; + readonly outputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "delegate"; + readonly type: "address"; + }, { + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "approve"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "clearRecords"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "contenthash"; + readonly outputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes32"; + readonly name: "name"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint16"; + readonly name: "resource"; + readonly type: "uint16"; + }]; + readonly name: "dnsRecord"; + readonly outputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes32"; + readonly name: "name"; + readonly type: "bytes32"; + }]; + readonly name: "hasDNSRecords"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes4"; + readonly name: "interfaceID"; + readonly type: "bytes4"; + }]; + readonly name: "interfaceImplementer"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "delegate"; + readonly type: "address"; + }]; + readonly name: "isApprovedFor"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly name: "isApprovedForAll"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes[]"; + readonly name: "data"; + readonly type: "bytes[]"; + }]; + readonly name: "multicall"; + readonly outputs: readonly [{ + readonly internalType: "bytes[]"; + readonly name: "results"; + readonly type: "bytes[]"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "nodehash"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes[]"; + readonly name: "data"; + readonly type: "bytes[]"; + }]; + readonly name: "multicallWithNodeCheck"; + readonly outputs: readonly [{ + readonly internalType: "bytes[]"; + readonly name: "results"; + readonly type: "bytes[]"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "name"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "pubkey"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "x"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes32"; + readonly name: "y"; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly name: "recordVersions"; + readonly outputs: readonly [{ + readonly internalType: "uint64"; + readonly name: ""; + readonly type: "uint64"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "contentType"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "setABI"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "coinType"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "a"; + readonly type: "bytes"; + }]; + readonly name: "setAddr"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "a"; + readonly type: "address"; + }]; + readonly name: "setAddr"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "setApprovalForAll"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes"; + readonly name: "hash"; + readonly type: "bytes"; + }]; + readonly name: "setContenthash"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "setDNSRecords"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes4"; + readonly name: "interfaceID"; + readonly type: "bytes4"; + }, { + readonly internalType: "address"; + readonly name: "implementer"; + readonly type: "address"; + }]; + readonly name: "setInterface"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "string"; + readonly name: "newName"; + readonly type: "string"; + }]; + readonly name: "setName"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes32"; + readonly name: "x"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes32"; + readonly name: "y"; + readonly type: "bytes32"; + }]; + readonly name: "setPubkey"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }, { + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }]; + readonly name: "setText"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes"; + readonly name: "hash"; + readonly type: "bytes"; + }]; + readonly name: "setZonehash"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceID"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }]; + readonly name: "text"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "zonehash"; + readonly outputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): PublicResolverInterface; + static connect(address: string, runner?: ContractRunner | null): PublicResolver; +} +export {}; +//# sourceMappingURL=PublicResolver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver__factory.d.ts.map new file mode 100644 index 00000000..5223d26c --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"PublicResolver__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,MAAM,EACN,WAAW,EACX,yBAAyB,EACzB,cAAc,EACf,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,cAAc,EACd,uBAAuB,EACxB,MAAM,6EAA6E,CAAC;AA2/BrF,aAAK,+BAA+B,GAChC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,uBAAwB,SAAQ,eAAe;gBAC9C,GAAG,IAAI,EAAE,+BAA+B;IAQ3C,oBAAoB,CAC3B,IAAI,EAAE,WAAW,EACjB,cAAc,EAAE,WAAW,EAC3B,qBAAqB,EAAE,WAAW,EAClC,wBAAwB,EAAE,WAAW,EACrC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAS5B,MAAM,CACb,IAAI,EAAE,WAAW,EACjB,cAAc,EAAE,WAAW,EAC3B,qBAAqB,EAAE,WAAW,EAClC,wBAAwB,EAAE,WAAW,EACrC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAUtB,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,uBAAuB;IAIxE,MAAM,CAAC,QAAQ,CAAC,QAAQ,wowBAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,uBAAuB;IAGjD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,cAAc;CAGlB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver__factory.js new file mode 100644 index 00000000..5f621181 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver__factory.js @@ -0,0 +1,1047 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.PublicResolver__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "contract ENS", + name: "_ens", + type: "address", + }, + { + internalType: "contract INameWrapper", + name: "wrapperAddress", + type: "address", + }, + { + internalType: "address", + name: "_trustedETHController", + type: "address", + }, + { + internalType: "address", + name: "_trustedReverseRegistrar", + type: "address", + }, + ], + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: true, + internalType: "uint256", + name: "contentType", + type: "uint256", + }, + ], + name: "ABIChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "a", + type: "address", + }, + ], + name: "AddrChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "coinType", + type: "uint256", + }, + { + indexed: false, + internalType: "bytes", + name: "newAddress", + type: "bytes", + }, + ], + name: "AddressChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "ApprovalForAll", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: true, + internalType: "address", + name: "delegate", + type: "address", + }, + { + indexed: true, + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "Approved", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "bytes", + name: "hash", + type: "bytes", + }, + ], + name: "ContenthashChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "bytes", + name: "name", + type: "bytes", + }, + { + indexed: false, + internalType: "uint16", + name: "resource", + type: "uint16", + }, + { + indexed: false, + internalType: "bytes", + name: "record", + type: "bytes", + }, + ], + name: "DNSRecordChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "bytes", + name: "name", + type: "bytes", + }, + { + indexed: false, + internalType: "uint16", + name: "resource", + type: "uint16", + }, + ], + name: "DNSRecordDeleted", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "bytes", + name: "lastzonehash", + type: "bytes", + }, + { + indexed: false, + internalType: "bytes", + name: "zonehash", + type: "bytes", + }, + ], + name: "DNSZonehashChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: true, + internalType: "bytes4", + name: "interfaceID", + type: "bytes4", + }, + { + indexed: false, + internalType: "address", + name: "implementer", + type: "address", + }, + ], + name: "InterfaceChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "string", + name: "name", + type: "string", + }, + ], + name: "NameChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "bytes32", + name: "x", + type: "bytes32", + }, + { + indexed: false, + internalType: "bytes32", + name: "y", + type: "bytes32", + }, + ], + name: "PubkeyChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: true, + internalType: "string", + name: "indexedKey", + type: "string", + }, + { + indexed: false, + internalType: "string", + name: "key", + type: "string", + }, + { + indexed: false, + internalType: "string", + name: "value", + type: "string", + }, + ], + name: "TextChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint64", + name: "newVersion", + type: "uint64", + }, + ], + name: "VersionChanged", + type: "event", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "uint256", + name: "contentTypes", + type: "uint256", + }, + ], + name: "ABI", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "addr", + outputs: [ + { + internalType: "address payable", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "uint256", + name: "coinType", + type: "uint256", + }, + ], + name: "addr", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "address", + name: "delegate", + type: "address", + }, + { + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "approve", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "clearRecords", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "contenthash", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "name", + type: "bytes32", + }, + { + internalType: "uint16", + name: "resource", + type: "uint16", + }, + ], + name: "dnsRecord", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "name", + type: "bytes32", + }, + ], + name: "hasDNSRecords", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "bytes4", + name: "interfaceID", + type: "bytes4", + }, + ], + name: "interfaceImplementer", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "address", + name: "delegate", + type: "address", + }, + ], + name: "isApprovedFor", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + name: "isApprovedForAll", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes[]", + name: "data", + type: "bytes[]", + }, + ], + name: "multicall", + outputs: [ + { + internalType: "bytes[]", + name: "results", + type: "bytes[]", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "nodehash", + type: "bytes32", + }, + { + internalType: "bytes[]", + name: "data", + type: "bytes[]", + }, + ], + name: "multicallWithNodeCheck", + outputs: [ + { + internalType: "bytes[]", + name: "results", + type: "bytes[]", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "name", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "pubkey", + outputs: [ + { + internalType: "bytes32", + name: "x", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "y", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + name: "recordVersions", + outputs: [ + { + internalType: "uint64", + name: "", + type: "uint64", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "uint256", + name: "contentType", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "setABI", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "uint256", + name: "coinType", + type: "uint256", + }, + { + internalType: "bytes", + name: "a", + type: "bytes", + }, + ], + name: "setAddr", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "address", + name: "a", + type: "address", + }, + ], + name: "setAddr", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "setApprovalForAll", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "bytes", + name: "hash", + type: "bytes", + }, + ], + name: "setContenthash", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "setDNSRecords", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "bytes4", + name: "interfaceID", + type: "bytes4", + }, + { + internalType: "address", + name: "implementer", + type: "address", + }, + ], + name: "setInterface", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "string", + name: "newName", + type: "string", + }, + ], + name: "setName", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "x", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "y", + type: "bytes32", + }, + ], + name: "setPubkey", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "string", + name: "key", + type: "string", + }, + { + internalType: "string", + name: "value", + type: "string", + }, + ], + name: "setText", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "bytes", + name: "hash", + type: "bytes", + }, + ], + name: "setZonehash", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceID", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "string", + name: "key", + type: "string", + }, + ], + name: "text", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "zonehash", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +const _bytecode = "0x6101006040523480156200001257600080fd5b50604051620030403803806200304083398101604081905262000035916200017a565b6040516302571be360e01b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26004820152849033906000906001600160a01b038416906302571be390602401602060405180830381865afa158015620000a1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620000c79190620001e2565b604051630f41a04d60e11b81526001600160a01b03848116600483015291925090821690631e83409a906024016020604051808303816000875af115801562000114573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200013a919062000209565b5050506001600160a01b039485166080525091831660a052821660c0521660e05262000223565b6001600160a01b03811681146200017757600080fd5b50565b600080600080608085870312156200019157600080fd5b84516200019e8162000161565b6020860151909450620001b18162000161565b6040860151909350620001c48162000161565b6060860151909250620001d78162000161565b939692955090935050565b600060208284031215620001f557600080fd5b8151620002028162000161565b9392505050565b6000602082840312156200021c57600080fd5b5051919050565b60805160a05160c05160e051612ddc620002646000396000611720015260006116ee0152600081816117df015261182c015260006117680152612ddc6000f3fe608060405234801561001057600080fd5b50600436106101da5760003560e01c80638b95dd7111610104578063c8690233116100a2578063e32954eb11610071578063e32954eb14610500578063e59d895d14610513578063e985e9c514610526578063f1cb7e061461056257600080fd5b8063c869023314610441578063ce3decdc14610499578063d5fa2b00146104ac578063d700ff33146104bf57600080fd5b8063a8fa5682116100de578063a8fa5682146103b7578063a9784b3e146103ca578063ac9650d81461040e578063bc1c58d11461042e57600080fd5b80638b95dd711461037e578063a22cb46514610391578063a4b91a01146103a457600080fd5b80633603d7581161017c5780635c98042b1161014b5780635c98042b14610332578063623195b014610345578063691f343114610358578063773722131461036b57600080fd5b80633603d758146102a15780633b3b57de146102b45780634cbf6ba4146102c757806359d1d43c1461031257600080fd5b8063124a319c116101b8578063124a319c1461022f5780632203ab561461025a57806329cd62ea1461027b578063304e6ade1461028e57600080fd5b806301ffc9a7146101df5780630af179d71461020757806310f13a8c1461021c575b600080fd5b6101f26101ed36600461230a565b610575565b60405190151581526020015b60405180910390f35b61021a610215366004612366565b610586565b005b61021a61022a3660046123b1565b61078f565b61024261023d36600461242a565b61085b565b6040516001600160a01b0390911681526020016101fe565b61026d610268366004612456565b610aac565b6040516101fe9291906124c8565b61021a6102893660046124e1565b610be2565b61021a61029c366004612366565b610c7c565b61021a6102af36600461250d565b610cf7565b6102426102c236600461250d565b610d98565b6101f26102d5366004612456565b600082815260208181526040808320546001600160401b031683526006825280832094835293815283822092825291909152205461ffff16151590565b610325610320366004612366565b610dca565b6040516101fe9190612526565b61032561034036600461250d565b610ea9565b61021a610353366004612539565b610f67565b61032561036636600461250d565b611003565b61021a610379366004612366565b61103c565b61021a61038c3660046125a1565b6110b7565b61021a61039f366004612689565b611196565b61021a6103b23660046126b5565b611271565b6103256103c53660046126f3565b61133e565b6101f26103d8366004612733565b6001600160a01b039283166000908152600c60209081526040808320948352938152838220929094168152925290205460ff1690565b61042161041c3660046127ae565b61138b565b6040516101fe91906127ef565b61032561043c36600461250d565b611399565b61048461044f36600461250d565b600081815260208181526040808320546001600160401b03168352600982528083209383529290522080546001909101549091565b604080519283526020830191909152016101fe565b61021a6104a7366004612366565b6113d2565b61021a6104ba366004612851565b611513565b6104e86104cd36600461250d565b6000602081905290815260409020546001600160401b031681565b6040516001600160401b0390911681526020016101fe565b61042161050e366004612881565b61153a565b61021a6105213660046128bf565b61154f565b6101f26105343660046128f4565b6001600160a01b039182166000908152600b6020908152604080832093909416825291909152205460ff1690565b610325610570366004612456565b6115f5565b6000610580826116bc565b92915050565b82610590816116e1565b61059957600080fd5b600084815260208181526040808320548151601f87018490048402810184019092528582528392606092839285926001600160401b039091169183916105fe9183918d908d908190840183828082843760009201919091525092939250506119169050565b90505b80515160208201511015610728578661ffff16600003610666578060400151965061062b81611977565b94508460405160200161063e9190612922565b60405160208183030381529060405280519060200120925061065f81611998565b935061071a565b600061067182611977565b9050816040015161ffff168861ffff16141580610695575061069386826119b4565b155b15610718576106f18c878a8e8e8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250505060208801518d91506106e8908290612954565b8b51158a6119d2565b81604001519750816020015196508095508580519060200120935061071582611998565b94505b505b61072381611c39565b610601565b50835115610783576107838a85888c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508c925061077a91508290508f612954565b895115886119d2565b50505050505050505050565b84610799816116e1565b6107a257600080fd5b600086815260208181526040808320546001600160401b03168352600a8252808320898452909152908190209051849184916107e19089908990612967565b908152602001604051809103902091826107fc9291906129ff565b50848460405161080d929190612967565b6040518091039020867f448bc014f1536726cf8d54ff3d6481ed3cbc683c2591ca204274009afa09b1a18787878760405161084b9493929190612ae7565b60405180910390a3505050505050565b600082815260208181526040808320546001600160401b031683526007825280832085845282528083206001600160e01b0319851684529091528120546001600160a01b031680156108ae579050610580565b60006108b985610d98565b90506001600160a01b0381166108d457600092505050610580565b6040516301ffc9a760e01b602482015260009081906001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b1790525161092c9190612922565b600060405180830381855afa9150503d8060008114610967576040519150601f19603f3d011682016040523d82523d6000602084013e61096c565b606091505b509150915081158061097f575060208151105b806109a9575080601f8151811061099857610998612b19565b01602001516001600160f81b031916155b156109bb576000945050505050610580565b6040516001600160e01b0319871660248201526001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b17905251610a119190612922565b600060405180830381855afa9150503d8060008114610a4c576040519150601f19603f3d011682016040523d82523d6000602084013e610a51565b606091505b509092509050811580610a65575060208151105b80610a8f575080601f81518110610a7e57610a7e612b19565b01602001516001600160f81b031916155b15610aa1576000945050505050610580565b509095945050505050565b600082815260208181526040808320546001600160401b03168352600180835281842086855290925282206060915b848111610bc25780851615801590610b0b575060008181526020839052604081208054610b0790612977565b9050115b15610bba5780826000838152602001908152602001600020808054610b2f90612977565b80601f0160208091040260200160405190810160405280929190818152602001828054610b5b90612977565b8015610ba85780601f10610b7d57610100808354040283529160200191610ba8565b820191906000526020600020905b815481529060010190602001808311610b8b57829003601f168201915b50505050509050935093505050610bdb565b60011b610adb565b5060006040518060200160405280600081525092509250505b9250929050565b82610bec816116e1565b610bf557600080fd5b60408051808201825284815260208082018581526000888152808352848120546001600160401b031681526009835284812089825283528490209251835551600190920191909155815185815290810184905285917f1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e4691015b60405180910390a250505050565b82610c86816116e1565b610c8f57600080fd5b600084815260208181526040808320546001600160401b03168352600382528083208784529091529020610cc48385836129ff565b50837fe379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d75788484604051610c6e929190612b2f565b80610d01816116e1565b610d0a57600080fd5b600082815260208190526040812080546001600160401b031691610d2d83612b43565b82546101009290920a6001600160401b03818102199093169183160217909155600084815260208181526040918290205491519190921681528492507fc6621ccb8f3f5a04bb6502154b2caf6adf5983fe76dfef1cfc9c42e3579db444910160405180910390a25050565b600080610da683603c6115f5565b90508051600003610dba5750600092915050565b610dc381611d21565b9392505050565b600083815260208181526040808320546001600160401b03168352600a825280832086845290915290819020905160609190610e099085908590612967565b90815260200160405180910390208054610e2290612977565b80601f0160208091040260200160405190810160405280929190818152602001828054610e4e90612977565b8015610e9b5780601f10610e7057610100808354040283529160200191610e9b565b820191906000526020600020905b815481529060010190602001808311610e7e57829003601f168201915b505050505090509392505050565b600081815260208181526040808320546001600160401b03168352600482528083208484529091529020805460609190610ee290612977565b80601f0160208091040260200160405190810160405280929190818152602001828054610f0e90612977565b8015610f5b5780601f10610f3057610100808354040283529160200191610f5b565b820191906000526020600020905b815481529060010190602001808311610f3e57829003601f168201915b50505050509050919050565b83610f71816116e1565b610f7a57600080fd5b83610f86600182612954565b1615610f9157600080fd5b600085815260208181526040808320546001600160401b031683526001825280832088845282528083208784529091529020610fce8385836129ff565b50604051849086907faa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe390600090a35050505050565b600081815260208181526040808320546001600160401b03168352600882528083208484529091529020805460609190610ee290612977565b82611046816116e1565b61104f57600080fd5b600084815260208181526040808320546001600160401b031683526008825280832087845290915290206110848385836129ff565b50837fb7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f78484604051610c6e929190612b2f565b826110c1816116e1565b6110ca57600080fd5b837f65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af75284846040516110fc9291906124c8565b60405180910390a2603c830361115357837f52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd261113784611d21565b6040516001600160a01b03909116815260200160405180910390a25b600084815260208181526040808320546001600160401b03168352600282528083208784528252808320868452909152902061118f8382612b69565b5050505050565b6001600160a01b03821633036112055760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084015b60405180910390fd5b336000818152600b602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6001600160a01b03821633036112c95760405162461bcd60e51b815260206004820181905260248201527f53657474696e672064656c65676174652073746174757320666f722073656c6660448201526064016111fc565b336000818152600c6020908152604080832087845282528083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519384529286917ff0ddb3b04746704017f9aa8bd728fcc2c1d11675041205350018915f5e4750a0910160405180910390a4505050565b600083815260208181526040808320546001600160401b03168352600582528083208684528252808320858452825280832061ffff851684529091529020805460609190610e2290612977565b6060610dc360008484611d40565b600081815260208181526040808320546001600160401b03168352600382528083208484529091529020805460609190610ee290612977565b826113dc816116e1565b6113e557600080fd5b600084815260208181526040808320546001600160401b0316808452600483528184208885529092528220805491929161141e90612977565b80601f016020809104026020016040519081016040528092919081815260200182805461144a90612977565b80156114975780601f1061146c57610100808354040283529160200191611497565b820191906000526020600020905b81548152906001019060200180831161147a57829003601f168201915b505050506001600160401b03841660009081526004602090815260408083208b845290915290209192506114ce90508587836129ff565b50857f8f15ed4b723ef428f250961da8315675b507046737e19319fc1a4d81bfe87f8582878760405161150393929190612c28565b60405180910390a2505050505050565b8161151d816116e1565b61152657600080fd5b61153583603c61038c85611f0f565b505050565b6060611547848484611d40565b949350505050565b82611559816116e1565b61156257600080fd5b600084815260208181526040808320546001600160401b031683526007825280832087845282528083206001600160e01b031987168085529083529281902080546001600160a01b0319166001600160a01b038716908117909155905190815286917f7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa910160405180910390a350505050565b600082815260208181526040808320546001600160401b03168352600282528083208584528252808320848452909152902080546060919061163690612977565b80601f016020809104026020016040519081016040528092919081815260200182805461166290612977565b80156116af5780601f10611684576101008083540402835291602001916116af565b820191906000526020600020905b81548152906001019060200180831161169257829003601f168201915b5050505050905092915050565b60006001600160e01b03198216631674750f60e21b1480610580575061058082611f3f565b6000336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614806117425750336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016145b1561174f57506001919050565b6040516302571be360e01b8152600481018390526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906302571be390602401602060405180830381865afa1580156117b7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117db9190612c58565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b0316036118a2576040516331a9108f60e11b8152600481018490527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690636352211e90602401602060405180830381865afa15801561187b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061189f9190612c58565b90505b6001600160a01b0381163314806118dc57506001600160a01b0381166000908152600b6020908152604080832033845290915290205460ff165b80610dc357506001600160a01b0381166000908152600c60209081526040808320868452825280832033845290915290205460ff16610dc3565b6119646040518060e001604052806060815260200160008152602001600061ffff168152602001600061ffff168152602001600063ffffffff16815260200160008152602001600081525090565b82815260c0810182905261058081611c39565b602081015181516060916105809161198f9082611f64565b84519190611fbe565b60a081015160c08201516060916105809161198f908290612954565b600081518351148015610dc35750610dc38360008460008751612034565b8651602088012060006119e6878787611fbe565b90508315611b0d576001600160401b03831660009081526005602090815260408083208d84528252808320858452825280832061ffff8c16845290915290208054611a3090612977565b159050611a8e576001600160401b03831660009081526006602090815260408083208d845282528083208584529091528120805461ffff1691611a7283612c75565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b03831660009081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091528120611ace91612297565b897f03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a12078a8a604051611b00929190612c93565b60405180910390a2610783565b6001600160401b03831660009081526005602090815260408083208d84528252808320858452825280832061ffff8c16845290915290208054611b4f90612977565b9050600003611baf576001600160401b03831660009081526006602090815260408083208d845282528083208584529091528120805461ffff1691611b9383612cb9565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b03831660009081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091529020611bf08282612b69565b50897f52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b8a8a84604051611c2593929190612cd0565b60405180910390a250505050505050505050565b60c08101516020820181905281515111611c505750565b6000611c6482600001518360200151611f64565b8260200151611c739190612cff565b8251909150611c829082612057565b61ffff166040830152611c96600282612cff565b8251909150611ca59082612057565b61ffff166060830152611cb9600282612cff565b8251909150611cc8908261207f565b63ffffffff166080830152611cde600482612cff565b8251909150600090611cf09083612057565b61ffff169050611d01600283612cff565b60a084018190529150611d148183612cff565b60c0909301929092525050565b60008151601414611d3157600080fd5b5060200151600160601b900490565b6060816001600160401b03811115611d5a57611d5a61258b565b604051908082528060200260200182016040528015611d8d57816020015b6060815260200190600190039081611d785790505b50905060005b82811015611f07578415611e4f576000848483818110611db557611db5612b19565b9050602002810190611dc79190612d12565b611dd691602491600491612d58565b611ddf91612d82565b9050858114611e4d5760405162461bcd60e51b815260206004820152603460248201527f6d756c746963616c6c3a20416c6c207265636f726473206d7573742068617665604482015273040c240dac2e8c6d0d2dcce40dcc2dacad0c2e6d60631b60648201526084016111fc565b505b60008030868685818110611e6557611e65612b19565b9050602002810190611e779190612d12565b604051611e85929190612967565b600060405180830381855af49150503d8060008114611ec0576040519150601f19603f3d011682016040523d82523d6000602084013e611ec5565b606091505b509150915081611ed457600080fd5b80848481518110611ee757611ee7612b19565b602002602001018190525050508080611eff90612da0565b915050611d93565b509392505050565b604080516014808252818301909252606091602082018180368337505050600160601b9290920260208301525090565b60006001600160e01b0319821663c869023360e01b14806105805750610580826120a9565b6000815b83518110611f7857611f78612db9565b6000611f8485836120ce565b60ff169050611f94816001612cff565b611f9e9083612cff565b915080600003611fae5750611fb4565b50611f68565b6115478382612954565b8251606090611fcd8385612cff565b1115611fd857600080fd5b6000826001600160401b03811115611ff257611ff261258b565b6040519080825280601f01601f19166020018201604052801561201c576020820181803683370190505b50905060208082019086860101610aa18282876120f2565b6000612041848484612148565b61204c878785612148565b149695505050505050565b8151600090612067836002612cff565b111561207257600080fd5b50016002015161ffff1690565b815160009061208f836004612cff565b111561209a57600080fd5b50016004015163ffffffff1690565b60006001600160e01b0319821663691f343160e01b148061058057506105808261216c565b60008282815181106120e2576120e2612b19565b016020015160f81c905092915050565b6020811061212a5781518352612109602084612cff565b9250612116602083612cff565b9150612123602082612954565b90506120f2565b905182516020929092036101000a6000190180199091169116179052565b82516000906121578385612cff565b111561216257600080fd5b5091016020012090565b60006001600160e01b031982166304928c6760e21b148061058057506105808260006001600160e01b0319821663547d2b4160e11b14806121bd57506001600160e01b03198216635c98042b60e01b145b8061058057506105808260006001600160e01b0319821663bc1c58d160e01b148061058057506105808260006001600160e01b03198216631d9dabef60e11b148061221857506001600160e01b031982166378e5bf0360e11b145b8061058057506105808260006001600160e01b03198216631101d5ab60e11b148061058057506105808260006001600160e01b0319821663d700ff3360e01b148061058057506105808260006001600160e01b03198216634fbf043360e01b148061058057506301ffc9a760e01b6001600160e01b0319831614610580565b5080546122a390612977565b6000825580601f106122b3575050565b601f0160209004906000526020600020908101906122d191906122d4565b50565b5b808211156122e957600081556001016122d5565b5090565b80356001600160e01b03198116811461230557600080fd5b919050565b60006020828403121561231c57600080fd5b610dc3826122ed565b60008083601f84011261233757600080fd5b5081356001600160401b0381111561234e57600080fd5b602083019150836020828501011115610bdb57600080fd5b60008060006040848603121561237b57600080fd5b8335925060208401356001600160401b0381111561239857600080fd5b6123a486828701612325565b9497909650939450505050565b6000806000806000606086880312156123c957600080fd5b8535945060208601356001600160401b03808211156123e757600080fd5b6123f389838a01612325565b9096509450604088013591508082111561240c57600080fd5b5061241988828901612325565b969995985093965092949392505050565b6000806040838503121561243d57600080fd5b8235915061244d602084016122ed565b90509250929050565b6000806040838503121561246957600080fd5b50508035926020909101359150565b60005b8381101561249357818101518382015260200161247b565b50506000910152565b600081518084526124b4816020860160208601612478565b601f01601f19169290920160200192915050565b828152604060208201526000611547604083018461249c565b6000806000606084860312156124f657600080fd5b505081359360208301359350604090920135919050565b60006020828403121561251f57600080fd5b5035919050565b602081526000610dc3602083018461249c565b6000806000806060858703121561254f57600080fd5b843593506020850135925060408501356001600160401b0381111561257357600080fd5b61257f87828801612325565b95989497509550505050565b634e487b7160e01b600052604160045260246000fd5b6000806000606084860312156125b657600080fd5b833592506020840135915060408401356001600160401b03808211156125db57600080fd5b818601915086601f8301126125ef57600080fd5b8135818111156126015761260161258b565b604051601f8201601f19908116603f011681019083821181831017156126295761262961258b565b8160405282815289602084870101111561264257600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6001600160a01b03811681146122d157600080fd5b8035801515811461230557600080fd5b6000806040838503121561269c57600080fd5b82356126a781612664565b915061244d60208401612679565b6000806000606084860312156126ca57600080fd5b8335925060208401356126dc81612664565b91506126ea60408501612679565b90509250925092565b60008060006060848603121561270857600080fd5b8335925060208401359150604084013561ffff8116811461272857600080fd5b809150509250925092565b60008060006060848603121561274857600080fd5b833561275381612664565b925060208401359150604084013561272881612664565b60008083601f84011261277c57600080fd5b5081356001600160401b0381111561279357600080fd5b6020830191508360208260051b8501011115610bdb57600080fd5b600080602083850312156127c157600080fd5b82356001600160401b038111156127d757600080fd5b6127e38582860161276a565b90969095509350505050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b8281101561284457603f1988860301845261283285835161249c565b94509285019290850190600101612816565b5092979650505050505050565b6000806040838503121561286457600080fd5b82359150602083013561287681612664565b809150509250929050565b60008060006040848603121561289657600080fd5b8335925060208401356001600160401b038111156128b357600080fd5b6123a48682870161276a565b6000806000606084860312156128d457600080fd5b833592506128e4602085016122ed565b9150604084013561272881612664565b6000806040838503121561290757600080fd5b823561291281612664565b9150602083013561287681612664565b60008251612934818460208701612478565b9190910192915050565b634e487b7160e01b600052601160045260246000fd5b818103818111156105805761058061293e565b8183823760009101908152919050565b600181811c9082168061298b57607f821691505b6020821081036129ab57634e487b7160e01b600052602260045260246000fd5b50919050565b601f82111561153557600081815260208120601f850160051c810160208610156129d85750805b601f850160051c820191505b818110156129f7578281556001016129e4565b505050505050565b6001600160401b03831115612a1657612a1661258b565b612a2a83612a248354612977565b836129b1565b6000601f841160018114612a5e5760008515612a465750838201355b600019600387901b1c1916600186901b17835561118f565b600083815260209020601f19861690835b82811015612a8f5786850135825560209485019460019092019101612a6f565b5086821015612aac5760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b604081526000612afb604083018688612abe565b8281036020840152612b0e818587612abe565b979650505050505050565b634e487b7160e01b600052603260045260246000fd5b602081526000611547602083018486612abe565b60006001600160401b03808316818103612b5f57612b5f61293e565b6001019392505050565b81516001600160401b03811115612b8257612b8261258b565b612b9681612b908454612977565b846129b1565b602080601f831160018114612bcb5760008415612bb35750858301515b600019600386901b1c1916600185901b1785556129f7565b600085815260208120601f198616915b82811015612bfa57888601518255948401946001909101908401612bdb565b5085821015612c185787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b604081526000612c3b604083018661249c565b8281036020840152612c4e818587612abe565b9695505050505050565b600060208284031215612c6a57600080fd5b8151610dc381612664565b600061ffff821680612c8957612c8961293e565b6000190192915050565b604081526000612ca6604083018561249c565b905061ffff831660208301529392505050565b600061ffff808316818103612b5f57612b5f61293e565b606081526000612ce3606083018661249c565b61ffff851660208401528281036040840152612c4e818561249c565b808201808211156105805761058061293e565b6000808335601e19843603018112612d2957600080fd5b8301803591506001600160401b03821115612d4357600080fd5b602001915036819003821315610bdb57600080fd5b60008085851115612d6857600080fd5b83861115612d7557600080fd5b5050820193919092039150565b8035602083101561058057600019602084900360031b1b1692915050565b600060018201612db257612db261293e565b5060010190565b634e487b7160e01b600052600160045260246000fdfea164736f6c6343000811000a"; +const isSuperArgs = (xs) => xs.length > 1; +class PublicResolver__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(_ens, wrapperAddress, _trustedETHController, _trustedReverseRegistrar, overrides) { + return super.getDeployTransaction(_ens, wrapperAddress, _trustedETHController, _trustedReverseRegistrar, overrides || {}); + } + deploy(_ens, wrapperAddress, _trustedETHController, _trustedReverseRegistrar, overrides) { + return super.deploy(_ens, wrapperAddress, _trustedETHController, _trustedReverseRegistrar, overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.PublicResolver__factory = PublicResolver__factory; +PublicResolver__factory.bytecode = _bytecode; +PublicResolver__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase__factory.d.ts new file mode 100644 index 00000000..c189f052 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase__factory.d.ts @@ -0,0 +1,61 @@ +import { type ContractRunner } from "ethers"; +import type { ResolverBase, ResolverBaseInterface } from "../../../../../@ensdomains/ens-contracts/contracts/resolvers/ResolverBase"; +export declare class ResolverBase__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "uint64"; + readonly name: "newVersion"; + readonly type: "uint64"; + }]; + readonly name: "VersionChanged"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "clearRecords"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly name: "recordVersions"; + readonly outputs: readonly [{ + readonly internalType: "uint64"; + readonly name: ""; + readonly type: "uint64"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceID"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): ResolverBaseInterface; + static connect(address: string, runner?: ContractRunner | null): ResolverBase; +} +//# sourceMappingURL=ResolverBase__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase__factory.d.ts.map new file mode 100644 index 00000000..5926aa5e --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ResolverBase__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,YAAY,EACZ,qBAAqB,EACtB,MAAM,2EAA2E,CAAC;AA2EnF,qBAAa,qBAAqB;IAChC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,qBAAqB;IAG/C,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,YAAY;CAGhB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase__factory.js new file mode 100644 index 00000000..e11da9b0 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase__factory.js @@ -0,0 +1,86 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ResolverBase__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint64", + name: "newVersion", + type: "uint64", + }, + ], + name: "VersionChanged", + type: "event", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "clearRecords", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + name: "recordVersions", + outputs: [ + { + internalType: "uint64", + name: "", + type: "uint64", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceID", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class ResolverBase__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.ResolverBase__factory = ResolverBase__factory; +ResolverBase__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/Resolver__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/Resolver__factory.d.ts new file mode 100644 index 00000000..62425415 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/Resolver__factory.d.ts @@ -0,0 +1,735 @@ +import { type ContractRunner } from "ethers"; +import type { Resolver, ResolverInterface } from "../../../../../@ensdomains/ens-contracts/contracts/resolvers/Resolver"; +export declare class Resolver__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "contentType"; + readonly type: "uint256"; + }]; + readonly name: "ABIChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "address"; + readonly name: "a"; + readonly type: "address"; + }]; + readonly name: "AddrChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "coinType"; + readonly type: "uint256"; + }, { + readonly indexed: false; + readonly internalType: "bytes"; + readonly name: "newAddress"; + readonly type: "bytes"; + }]; + readonly name: "AddressChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "bytes32"; + readonly name: "hash"; + readonly type: "bytes32"; + }]; + readonly name: "ContentChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "bytes"; + readonly name: "hash"; + readonly type: "bytes"; + }]; + readonly name: "ContenthashChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "bytes"; + readonly name: "name"; + readonly type: "bytes"; + }, { + readonly indexed: false; + readonly internalType: "uint16"; + readonly name: "resource"; + readonly type: "uint16"; + }, { + readonly indexed: false; + readonly internalType: "bytes"; + readonly name: "record"; + readonly type: "bytes"; + }]; + readonly name: "DNSRecordChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "bytes"; + readonly name: "name"; + readonly type: "bytes"; + }, { + readonly indexed: false; + readonly internalType: "uint16"; + readonly name: "resource"; + readonly type: "uint16"; + }]; + readonly name: "DNSRecordDeleted"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "bytes"; + readonly name: "lastzonehash"; + readonly type: "bytes"; + }, { + readonly indexed: false; + readonly internalType: "bytes"; + readonly name: "zonehash"; + readonly type: "bytes"; + }]; + readonly name: "DNSZonehashChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "bytes4"; + readonly name: "interfaceID"; + readonly type: "bytes4"; + }, { + readonly indexed: false; + readonly internalType: "address"; + readonly name: "implementer"; + readonly type: "address"; + }]; + readonly name: "InterfaceChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "string"; + readonly name: "name"; + readonly type: "string"; + }]; + readonly name: "NameChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "bytes32"; + readonly name: "x"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "bytes32"; + readonly name: "y"; + readonly type: "bytes32"; + }]; + readonly name: "PubkeyChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "string"; + readonly name: "indexedKey"; + readonly type: "string"; + }, { + readonly indexed: false; + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }, { + readonly indexed: false; + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }]; + readonly name: "TextChanged"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "contentTypes"; + readonly type: "uint256"; + }]; + readonly name: "ABI"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "addr"; + readonly outputs: readonly [{ + readonly internalType: "address payable"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "coinType"; + readonly type: "uint256"; + }]; + readonly name: "addr"; + readonly outputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "delegate"; + readonly type: "address"; + }, { + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "approve"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "content"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "contenthash"; + readonly outputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes32"; + readonly name: "name"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint16"; + readonly name: "resource"; + readonly type: "uint16"; + }]; + readonly name: "dnsRecord"; + readonly outputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes4"; + readonly name: "interfaceID"; + readonly type: "bytes4"; + }]; + readonly name: "interfaceImplementer"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "delegate"; + readonly type: "address"; + }]; + readonly name: "isApprovedFor"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly name: "isApprovedForAll"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes[]"; + readonly name: "data"; + readonly type: "bytes[]"; + }]; + readonly name: "multicall"; + readonly outputs: readonly [{ + readonly internalType: "bytes[]"; + readonly name: "results"; + readonly type: "bytes[]"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "nodehash"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes[]"; + readonly name: "data"; + readonly type: "bytes[]"; + }]; + readonly name: "multicallWithNodeCheck"; + readonly outputs: readonly [{ + readonly internalType: "bytes[]"; + readonly name: "results"; + readonly type: "bytes[]"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "multihash"; + readonly outputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "name"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "pubkey"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "x"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes32"; + readonly name: "y"; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes"; + readonly name: "name"; + readonly type: "bytes"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "resolve"; + readonly outputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "contentType"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "setABI"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "coinType"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "a"; + readonly type: "bytes"; + }]; + readonly name: "setAddr"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }]; + readonly name: "setAddr"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }, { + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly name: "setApprovalForAll"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes32"; + readonly name: "hash"; + readonly type: "bytes32"; + }]; + readonly name: "setContent"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes"; + readonly name: "hash"; + readonly type: "bytes"; + }]; + readonly name: "setContenthash"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "setDnsrr"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes4"; + readonly name: "interfaceID"; + readonly type: "bytes4"; + }, { + readonly internalType: "address"; + readonly name: "implementer"; + readonly type: "address"; + }]; + readonly name: "setInterface"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes"; + readonly name: "hash"; + readonly type: "bytes"; + }]; + readonly name: "setMultihash"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "string"; + readonly name: "_name"; + readonly type: "string"; + }]; + readonly name: "setName"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes32"; + readonly name: "x"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes32"; + readonly name: "y"; + readonly type: "bytes32"; + }]; + readonly name: "setPubkey"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }, { + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }]; + readonly name: "setText"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }]; + readonly name: "text"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "zonehash"; + readonly outputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): ResolverInterface; + static connect(address: string, runner?: ContractRunner | null): Resolver; +} +//# sourceMappingURL=Resolver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/Resolver__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/Resolver__factory.d.ts.map new file mode 100644 index 00000000..b9a81929 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/Resolver__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"Resolver__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/resolvers/Resolver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,QAAQ,EACR,iBAAiB,EAClB,MAAM,uEAAuE,CAAC;AAk7B/E,qBAAa,iBAAiB;IAC5B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,iBAAiB;IAG3C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,QAAQ;CAG1E"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/Resolver__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/Resolver__factory.js new file mode 100644 index 00000000..47f2f876 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/Resolver__factory.js @@ -0,0 +1,957 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.Resolver__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: true, + internalType: "uint256", + name: "contentType", + type: "uint256", + }, + ], + name: "ABIChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "a", + type: "address", + }, + ], + name: "AddrChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "coinType", + type: "uint256", + }, + { + indexed: false, + internalType: "bytes", + name: "newAddress", + type: "bytes", + }, + ], + name: "AddressChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "bytes32", + name: "hash", + type: "bytes32", + }, + ], + name: "ContentChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "bytes", + name: "hash", + type: "bytes", + }, + ], + name: "ContenthashChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "bytes", + name: "name", + type: "bytes", + }, + { + indexed: false, + internalType: "uint16", + name: "resource", + type: "uint16", + }, + { + indexed: false, + internalType: "bytes", + name: "record", + type: "bytes", + }, + ], + name: "DNSRecordChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "bytes", + name: "name", + type: "bytes", + }, + { + indexed: false, + internalType: "uint16", + name: "resource", + type: "uint16", + }, + ], + name: "DNSRecordDeleted", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "bytes", + name: "lastzonehash", + type: "bytes", + }, + { + indexed: false, + internalType: "bytes", + name: "zonehash", + type: "bytes", + }, + ], + name: "DNSZonehashChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: true, + internalType: "bytes4", + name: "interfaceID", + type: "bytes4", + }, + { + indexed: false, + internalType: "address", + name: "implementer", + type: "address", + }, + ], + name: "InterfaceChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "string", + name: "name", + type: "string", + }, + ], + name: "NameChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "bytes32", + name: "x", + type: "bytes32", + }, + { + indexed: false, + internalType: "bytes32", + name: "y", + type: "bytes32", + }, + ], + name: "PubkeyChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: true, + internalType: "string", + name: "indexedKey", + type: "string", + }, + { + indexed: false, + internalType: "string", + name: "key", + type: "string", + }, + { + indexed: false, + internalType: "string", + name: "value", + type: "string", + }, + ], + name: "TextChanged", + type: "event", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "uint256", + name: "contentTypes", + type: "uint256", + }, + ], + name: "ABI", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "addr", + outputs: [ + { + internalType: "address payable", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "uint256", + name: "coinType", + type: "uint256", + }, + ], + name: "addr", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "address", + name: "delegate", + type: "address", + }, + { + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "approve", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "content", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "contenthash", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "name", + type: "bytes32", + }, + { + internalType: "uint16", + name: "resource", + type: "uint16", + }, + ], + name: "dnsRecord", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "bytes4", + name: "interfaceID", + type: "bytes4", + }, + ], + name: "interfaceImplementer", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "address", + name: "delegate", + type: "address", + }, + ], + name: "isApprovedFor", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + name: "isApprovedForAll", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes[]", + name: "data", + type: "bytes[]", + }, + ], + name: "multicall", + outputs: [ + { + internalType: "bytes[]", + name: "results", + type: "bytes[]", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "nodehash", + type: "bytes32", + }, + { + internalType: "bytes[]", + name: "data", + type: "bytes[]", + }, + ], + name: "multicallWithNodeCheck", + outputs: [ + { + internalType: "bytes[]", + name: "results", + type: "bytes[]", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "multihash", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "name", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "pubkey", + outputs: [ + { + internalType: "bytes32", + name: "x", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "y", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes", + name: "name", + type: "bytes", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "resolve", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "uint256", + name: "contentType", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "setABI", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "uint256", + name: "coinType", + type: "uint256", + }, + { + internalType: "bytes", + name: "a", + type: "bytes", + }, + ], + name: "setAddr", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "setAddr", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + name: "setApprovalForAll", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "hash", + type: "bytes32", + }, + ], + name: "setContent", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "bytes", + name: "hash", + type: "bytes", + }, + ], + name: "setContenthash", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "setDnsrr", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "bytes4", + name: "interfaceID", + type: "bytes4", + }, + { + internalType: "address", + name: "implementer", + type: "address", + }, + ], + name: "setInterface", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "bytes", + name: "hash", + type: "bytes", + }, + ], + name: "setMultihash", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "string", + name: "_name", + type: "string", + }, + ], + name: "setName", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "x", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "y", + type: "bytes32", + }, + ], + name: "setPubkey", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "string", + name: "key", + type: "string", + }, + { + internalType: "string", + name: "value", + type: "string", + }, + ], + name: "setText", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "string", + name: "key", + type: "string", + }, + ], + name: "text", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "zonehash", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class Resolver__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.Resolver__factory = Resolver__factory; +Resolver__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/index.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/index.d.ts new file mode 100644 index 00000000..ae7a72db --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/index.d.ts @@ -0,0 +1,7 @@ +export * as profiles from "./profiles"; +export { IMulticallable__factory } from "./IMulticallable__factory"; +export { Multicallable__factory } from "./Multicallable__factory"; +export { PublicResolver__factory } from "./PublicResolver__factory"; +export { Resolver__factory } from "./Resolver__factory"; +export { ResolverBase__factory } from "./ResolverBase__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/index.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/index.d.ts.map new file mode 100644 index 00000000..6333599c --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/resolvers/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC;AACvC,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/index.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/index.js new file mode 100644 index 00000000..3f857cca --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/index.js @@ -0,0 +1,37 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ResolverBase__factory = exports.Resolver__factory = exports.PublicResolver__factory = exports.Multicallable__factory = exports.IMulticallable__factory = exports.profiles = void 0; +exports.profiles = __importStar(require("./profiles")); +var IMulticallable__factory_1 = require("./IMulticallable__factory"); +Object.defineProperty(exports, "IMulticallable__factory", { enumerable: true, get: function () { return IMulticallable__factory_1.IMulticallable__factory; } }); +var Multicallable__factory_1 = require("./Multicallable__factory"); +Object.defineProperty(exports, "Multicallable__factory", { enumerable: true, get: function () { return Multicallable__factory_1.Multicallable__factory; } }); +var PublicResolver__factory_1 = require("./PublicResolver__factory"); +Object.defineProperty(exports, "PublicResolver__factory", { enumerable: true, get: function () { return PublicResolver__factory_1.PublicResolver__factory; } }); +var Resolver__factory_1 = require("./Resolver__factory"); +Object.defineProperty(exports, "Resolver__factory", { enumerable: true, get: function () { return Resolver__factory_1.Resolver__factory; } }); +var ResolverBase__factory_1 = require("./ResolverBase__factory"); +Object.defineProperty(exports, "ResolverBase__factory", { enumerable: true, get: function () { return ResolverBase__factory_1.ResolverBase__factory; } }); diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver__factory.d.ts new file mode 100644 index 00000000..0bab9735 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver__factory.d.ts @@ -0,0 +1,116 @@ +import { type ContractRunner } from "ethers"; +import type { ABIResolver, ABIResolverInterface } from "../../../../../../@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver"; +export declare class ABIResolver__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "contentType"; + readonly type: "uint256"; + }]; + readonly name: "ABIChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "uint64"; + readonly name: "newVersion"; + readonly type: "uint64"; + }]; + readonly name: "VersionChanged"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "contentTypes"; + readonly type: "uint256"; + }]; + readonly name: "ABI"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "clearRecords"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly name: "recordVersions"; + readonly outputs: readonly [{ + readonly internalType: "uint64"; + readonly name: ""; + readonly type: "uint64"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "contentType"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "setABI"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceID"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): ABIResolverInterface; + static connect(address: string, runner?: ContractRunner | null): ABIResolver; +} +//# sourceMappingURL=ABIResolver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver__factory.d.ts.map new file mode 100644 index 00000000..9f5ef108 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ABIResolver__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,WAAW,EACX,oBAAoB,EACrB,MAAM,sFAAsF,CAAC;AAkJ9F,qBAAa,oBAAoB;IAC/B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,oBAAoB;IAG9C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,WAAW;CAG7E"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver__factory.js new file mode 100644 index 00000000..3d8e9059 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver__factory.js @@ -0,0 +1,157 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ABIResolver__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: true, + internalType: "uint256", + name: "contentType", + type: "uint256", + }, + ], + name: "ABIChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint64", + name: "newVersion", + type: "uint64", + }, + ], + name: "VersionChanged", + type: "event", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "uint256", + name: "contentTypes", + type: "uint256", + }, + ], + name: "ABI", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "clearRecords", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + name: "recordVersions", + outputs: [ + { + internalType: "uint64", + name: "", + type: "uint64", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "uint256", + name: "contentType", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "setABI", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceID", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class ABIResolver__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.ABIResolver__factory = ABIResolver__factory; +ABIResolver__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver__factory.d.ts new file mode 100644 index 00000000..5f6f8039 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver__factory.d.ts @@ -0,0 +1,160 @@ +import { type ContractRunner } from "ethers"; +import type { AddrResolver, AddrResolverInterface } from "../../../../../../@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver"; +export declare class AddrResolver__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "address"; + readonly name: "a"; + readonly type: "address"; + }]; + readonly name: "AddrChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "coinType"; + readonly type: "uint256"; + }, { + readonly indexed: false; + readonly internalType: "bytes"; + readonly name: "newAddress"; + readonly type: "bytes"; + }]; + readonly name: "AddressChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "uint64"; + readonly name: "newVersion"; + readonly type: "uint64"; + }]; + readonly name: "VersionChanged"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "addr"; + readonly outputs: readonly [{ + readonly internalType: "address payable"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "coinType"; + readonly type: "uint256"; + }]; + readonly name: "addr"; + readonly outputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "clearRecords"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly name: "recordVersions"; + readonly outputs: readonly [{ + readonly internalType: "uint64"; + readonly name: ""; + readonly type: "uint64"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "coinType"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "a"; + readonly type: "bytes"; + }]; + readonly name: "setAddr"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "a"; + readonly type: "address"; + }]; + readonly name: "setAddr"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceID"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): AddrResolverInterface; + static connect(address: string, runner?: ContractRunner | null): AddrResolver; +} +//# sourceMappingURL=AddrResolver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver__factory.d.ts.map new file mode 100644 index 00000000..736e9400 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"AddrResolver__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,YAAY,EACZ,qBAAqB,EACtB,MAAM,uFAAuF,CAAC;AA2M/F,qBAAa,qBAAqB;IAChC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,qBAAqB;IAG/C,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,YAAY;CAGhB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver__factory.js new file mode 100644 index 00000000..d23a5c69 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver__factory.js @@ -0,0 +1,214 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.AddrResolver__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "a", + type: "address", + }, + ], + name: "AddrChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "coinType", + type: "uint256", + }, + { + indexed: false, + internalType: "bytes", + name: "newAddress", + type: "bytes", + }, + ], + name: "AddressChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint64", + name: "newVersion", + type: "uint64", + }, + ], + name: "VersionChanged", + type: "event", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "addr", + outputs: [ + { + internalType: "address payable", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "uint256", + name: "coinType", + type: "uint256", + }, + ], + name: "addr", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "clearRecords", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + name: "recordVersions", + outputs: [ + { + internalType: "uint64", + name: "", + type: "uint64", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "uint256", + name: "coinType", + type: "uint256", + }, + { + internalType: "bytes", + name: "a", + type: "bytes", + }, + ], + name: "setAddr", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "address", + name: "a", + type: "address", + }, + ], + name: "setAddr", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceID", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class AddrResolver__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.AddrResolver__factory = AddrResolver__factory; +AddrResolver__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver__factory.d.ts new file mode 100644 index 00000000..70cd78af --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver__factory.d.ts @@ -0,0 +1,104 @@ +import { type ContractRunner } from "ethers"; +import type { ContentHashResolver, ContentHashResolverInterface } from "../../../../../../@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver"; +export declare class ContentHashResolver__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "bytes"; + readonly name: "hash"; + readonly type: "bytes"; + }]; + readonly name: "ContenthashChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "uint64"; + readonly name: "newVersion"; + readonly type: "uint64"; + }]; + readonly name: "VersionChanged"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "clearRecords"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "contenthash"; + readonly outputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly name: "recordVersions"; + readonly outputs: readonly [{ + readonly internalType: "uint64"; + readonly name: ""; + readonly type: "uint64"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes"; + readonly name: "hash"; + readonly type: "bytes"; + }]; + readonly name: "setContenthash"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceID"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): ContentHashResolverInterface; + static connect(address: string, runner?: ContractRunner | null): ContentHashResolver; +} +//# sourceMappingURL=ContentHashResolver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver__factory.d.ts.map new file mode 100644 index 00000000..aefc5428 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ContentHashResolver__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,mBAAmB,EACnB,4BAA4B,EAC7B,MAAM,8FAA8F,CAAC;AAmItG,qBAAa,4BAA4B;IACvC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,4BAA4B;IAGtD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,mBAAmB;CAOvB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver__factory.js new file mode 100644 index 00000000..7712c9ba --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver__factory.js @@ -0,0 +1,142 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ContentHashResolver__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "bytes", + name: "hash", + type: "bytes", + }, + ], + name: "ContenthashChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint64", + name: "newVersion", + type: "uint64", + }, + ], + name: "VersionChanged", + type: "event", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "clearRecords", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "contenthash", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + name: "recordVersions", + outputs: [ + { + internalType: "uint64", + name: "", + type: "uint64", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "bytes", + name: "hash", + type: "bytes", + }, + ], + name: "setContenthash", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceID", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class ContentHashResolver__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.ContentHashResolver__factory = ContentHashResolver__factory; +ContentHashResolver__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver__factory.d.ts new file mode 100644 index 00000000..e938abeb --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver__factory.d.ts @@ -0,0 +1,208 @@ +import { type ContractRunner } from "ethers"; +import type { DNSResolver, DNSResolverInterface } from "../../../../../../@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver"; +export declare class DNSResolver__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "bytes"; + readonly name: "name"; + readonly type: "bytes"; + }, { + readonly indexed: false; + readonly internalType: "uint16"; + readonly name: "resource"; + readonly type: "uint16"; + }, { + readonly indexed: false; + readonly internalType: "bytes"; + readonly name: "record"; + readonly type: "bytes"; + }]; + readonly name: "DNSRecordChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "bytes"; + readonly name: "name"; + readonly type: "bytes"; + }, { + readonly indexed: false; + readonly internalType: "uint16"; + readonly name: "resource"; + readonly type: "uint16"; + }]; + readonly name: "DNSRecordDeleted"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "bytes"; + readonly name: "lastzonehash"; + readonly type: "bytes"; + }, { + readonly indexed: false; + readonly internalType: "bytes"; + readonly name: "zonehash"; + readonly type: "bytes"; + }]; + readonly name: "DNSZonehashChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "uint64"; + readonly name: "newVersion"; + readonly type: "uint64"; + }]; + readonly name: "VersionChanged"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "clearRecords"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes32"; + readonly name: "name"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint16"; + readonly name: "resource"; + readonly type: "uint16"; + }]; + readonly name: "dnsRecord"; + readonly outputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes32"; + readonly name: "name"; + readonly type: "bytes32"; + }]; + readonly name: "hasDNSRecords"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly name: "recordVersions"; + readonly outputs: readonly [{ + readonly internalType: "uint64"; + readonly name: ""; + readonly type: "uint64"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "setDNSRecords"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes"; + readonly name: "hash"; + readonly type: "bytes"; + }]; + readonly name: "setZonehash"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceID"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "zonehash"; + readonly outputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): DNSResolverInterface; + static connect(address: string, runner?: ContractRunner | null): DNSResolver; +} +//# sourceMappingURL=DNSResolver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver__factory.d.ts.map new file mode 100644 index 00000000..4019bb59 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"DNSResolver__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,WAAW,EACX,oBAAoB,EACrB,MAAM,sFAAsF,CAAC;AAwQ9F,qBAAa,oBAAoB;IAC/B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,oBAAoB;IAG9C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,WAAW;CAG7E"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver__factory.js new file mode 100644 index 00000000..99a5b6ac --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver__factory.js @@ -0,0 +1,275 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.DNSResolver__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "bytes", + name: "name", + type: "bytes", + }, + { + indexed: false, + internalType: "uint16", + name: "resource", + type: "uint16", + }, + { + indexed: false, + internalType: "bytes", + name: "record", + type: "bytes", + }, + ], + name: "DNSRecordChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "bytes", + name: "name", + type: "bytes", + }, + { + indexed: false, + internalType: "uint16", + name: "resource", + type: "uint16", + }, + ], + name: "DNSRecordDeleted", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "bytes", + name: "lastzonehash", + type: "bytes", + }, + { + indexed: false, + internalType: "bytes", + name: "zonehash", + type: "bytes", + }, + ], + name: "DNSZonehashChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint64", + name: "newVersion", + type: "uint64", + }, + ], + name: "VersionChanged", + type: "event", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "clearRecords", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "name", + type: "bytes32", + }, + { + internalType: "uint16", + name: "resource", + type: "uint16", + }, + ], + name: "dnsRecord", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "name", + type: "bytes32", + }, + ], + name: "hasDNSRecords", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + name: "recordVersions", + outputs: [ + { + internalType: "uint64", + name: "", + type: "uint64", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "setDNSRecords", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "bytes", + name: "hash", + type: "bytes", + }, + ], + name: "setZonehash", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceID", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "zonehash", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class DNSResolver__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.DNSResolver__factory = DNSResolver__factory; +DNSResolver__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver__factory.d.ts new file mode 100644 index 00000000..c85798a7 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver__factory.d.ts @@ -0,0 +1,45 @@ +import { type ContractRunner } from "ethers"; +import type { IABIResolver, IABIResolverInterface } from "../../../../../../@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver"; +export declare class IABIResolver__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "contentType"; + readonly type: "uint256"; + }]; + readonly name: "ABIChanged"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "contentTypes"; + readonly type: "uint256"; + }]; + readonly name: "ABI"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): IABIResolverInterface; + static connect(address: string, runner?: ContractRunner | null): IABIResolver; +} +//# sourceMappingURL=IABIResolver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver__factory.d.ts.map new file mode 100644 index 00000000..9a5f1ce2 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IABIResolver__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,YAAY,EACZ,qBAAqB,EACtB,MAAM,uFAAuF,CAAC;AAqD/F,qBAAa,qBAAqB;IAChC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,qBAAqB;IAG/C,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,YAAY;CAGhB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver__factory.js new file mode 100644 index 00000000..e56c7d97 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver__factory.js @@ -0,0 +1,64 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IABIResolver__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: true, + internalType: "uint256", + name: "contentType", + type: "uint256", + }, + ], + name: "ABIChanged", + type: "event", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "uint256", + name: "contentTypes", + type: "uint256", + }, + ], + name: "ABI", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class IABIResolver__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IABIResolver__factory = IABIResolver__factory; +IABIResolver__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver__factory.d.ts new file mode 100644 index 00000000..c902bc33 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver__factory.d.ts @@ -0,0 +1,37 @@ +import { type ContractRunner } from "ethers"; +import type { IAddrResolver, IAddrResolverInterface } from "../../../../../../@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver"; +export declare class IAddrResolver__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "address"; + readonly name: "a"; + readonly type: "address"; + }]; + readonly name: "AddrChanged"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "addr"; + readonly outputs: readonly [{ + readonly internalType: "address payable"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): IAddrResolverInterface; + static connect(address: string, runner?: ContractRunner | null): IAddrResolver; +} +//# sourceMappingURL=IAddrResolver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver__factory.d.ts.map new file mode 100644 index 00000000..4b96ac20 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IAddrResolver__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,aAAa,EACb,sBAAsB,EACvB,MAAM,wFAAwF,CAAC;AA2ChG,qBAAa,sBAAsB;IACjC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,sBAAsB;IAGhD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,aAAa;CAGjB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver__factory.js new file mode 100644 index 00000000..69e407c9 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver__factory.js @@ -0,0 +1,54 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IAddrResolver__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "a", + type: "address", + }, + ], + name: "AddrChanged", + type: "event", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "addr", + outputs: [ + { + internalType: "address payable", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class IAddrResolver__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IAddrResolver__factory = IAddrResolver__factory; +IAddrResolver__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver__factory.d.ts new file mode 100644 index 00000000..9bdb3327 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver__factory.d.ts @@ -0,0 +1,46 @@ +import { type ContractRunner } from "ethers"; +import type { IAddressResolver, IAddressResolverInterface } from "../../../../../../@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver"; +export declare class IAddressResolver__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "coinType"; + readonly type: "uint256"; + }, { + readonly indexed: false; + readonly internalType: "bytes"; + readonly name: "newAddress"; + readonly type: "bytes"; + }]; + readonly name: "AddressChanged"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "coinType"; + readonly type: "uint256"; + }]; + readonly name: "addr"; + readonly outputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): IAddressResolverInterface; + static connect(address: string, runner?: ContractRunner | null): IAddressResolver; +} +//# sourceMappingURL=IAddressResolver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver__factory.d.ts.map new file mode 100644 index 00000000..bb2a9529 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IAddressResolver__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,gBAAgB,EAChB,yBAAyB,EAC1B,MAAM,2FAA2F,CAAC;AAsDnG,qBAAa,yBAAyB;IACpC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,yBAAyB;IAGnD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,gBAAgB;CAGpB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver__factory.js new file mode 100644 index 00000000..cacf6eff --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver__factory.js @@ -0,0 +1,65 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IAddressResolver__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "coinType", + type: "uint256", + }, + { + indexed: false, + internalType: "bytes", + name: "newAddress", + type: "bytes", + }, + ], + name: "AddressChanged", + type: "event", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "uint256", + name: "coinType", + type: "uint256", + }, + ], + name: "addr", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class IAddressResolver__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IAddressResolver__factory = IAddressResolver__factory; +IAddressResolver__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver__factory.d.ts new file mode 100644 index 00000000..7769d144 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver__factory.d.ts @@ -0,0 +1,37 @@ +import { type ContractRunner } from "ethers"; +import type { IContentHashResolver, IContentHashResolverInterface } from "../../../../../../@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver"; +export declare class IContentHashResolver__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "bytes"; + readonly name: "hash"; + readonly type: "bytes"; + }]; + readonly name: "ContenthashChanged"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "contenthash"; + readonly outputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): IContentHashResolverInterface; + static connect(address: string, runner?: ContractRunner | null): IContentHashResolver; +} +//# sourceMappingURL=IContentHashResolver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver__factory.d.ts.map new file mode 100644 index 00000000..ec698e76 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IContentHashResolver__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,oBAAoB,EACpB,6BAA6B,EAC9B,MAAM,+FAA+F,CAAC;AA2CvG,qBAAa,6BAA6B;IACxC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,6BAA6B;IAGvD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,oBAAoB;CAOxB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver__factory.js new file mode 100644 index 00000000..69db9ce5 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver__factory.js @@ -0,0 +1,54 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IContentHashResolver__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "bytes", + name: "hash", + type: "bytes", + }, + ], + name: "ContenthashChanged", + type: "event", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "contenthash", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class IContentHashResolver__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IContentHashResolver__factory = IContentHashResolver__factory; +IContentHashResolver__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver__factory.d.ts new file mode 100644 index 00000000..52f44558 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver__factory.d.ts @@ -0,0 +1,75 @@ +import { type ContractRunner } from "ethers"; +import type { IDNSRecordResolver, IDNSRecordResolverInterface } from "../../../../../../@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver"; +export declare class IDNSRecordResolver__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "bytes"; + readonly name: "name"; + readonly type: "bytes"; + }, { + readonly indexed: false; + readonly internalType: "uint16"; + readonly name: "resource"; + readonly type: "uint16"; + }, { + readonly indexed: false; + readonly internalType: "bytes"; + readonly name: "record"; + readonly type: "bytes"; + }]; + readonly name: "DNSRecordChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "bytes"; + readonly name: "name"; + readonly type: "bytes"; + }, { + readonly indexed: false; + readonly internalType: "uint16"; + readonly name: "resource"; + readonly type: "uint16"; + }]; + readonly name: "DNSRecordDeleted"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes32"; + readonly name: "name"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint16"; + readonly name: "resource"; + readonly type: "uint16"; + }]; + readonly name: "dnsRecord"; + readonly outputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): IDNSRecordResolverInterface; + static connect(address: string, runner?: ContractRunner | null): IDNSRecordResolver; +} +//# sourceMappingURL=IDNSRecordResolver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver__factory.d.ts.map new file mode 100644 index 00000000..d7999fd4 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IDNSRecordResolver__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,kBAAkB,EAClB,2BAA2B,EAC5B,MAAM,6FAA6F,CAAC;AA0FrG,qBAAa,2BAA2B;IACtC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,2BAA2B;IAGrD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,kBAAkB;CAGtB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver__factory.js new file mode 100644 index 00000000..c1ab1378 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver__factory.js @@ -0,0 +1,101 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IDNSRecordResolver__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "bytes", + name: "name", + type: "bytes", + }, + { + indexed: false, + internalType: "uint16", + name: "resource", + type: "uint16", + }, + { + indexed: false, + internalType: "bytes", + name: "record", + type: "bytes", + }, + ], + name: "DNSRecordChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "bytes", + name: "name", + type: "bytes", + }, + { + indexed: false, + internalType: "uint16", + name: "resource", + type: "uint16", + }, + ], + name: "DNSRecordDeleted", + type: "event", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "name", + type: "bytes32", + }, + { + internalType: "uint16", + name: "resource", + type: "uint16", + }, + ], + name: "dnsRecord", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class IDNSRecordResolver__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IDNSRecordResolver__factory = IDNSRecordResolver__factory; +IDNSRecordResolver__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver__factory.d.ts new file mode 100644 index 00000000..043d6a87 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver__factory.d.ts @@ -0,0 +1,42 @@ +import { type ContractRunner } from "ethers"; +import type { IDNSZoneResolver, IDNSZoneResolverInterface } from "../../../../../../@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver"; +export declare class IDNSZoneResolver__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "bytes"; + readonly name: "lastzonehash"; + readonly type: "bytes"; + }, { + readonly indexed: false; + readonly internalType: "bytes"; + readonly name: "zonehash"; + readonly type: "bytes"; + }]; + readonly name: "DNSZonehashChanged"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "zonehash"; + readonly outputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): IDNSZoneResolverInterface; + static connect(address: string, runner?: ContractRunner | null): IDNSZoneResolver; +} +//# sourceMappingURL=IDNSZoneResolver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver__factory.d.ts.map new file mode 100644 index 00000000..d6ee7488 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IDNSZoneResolver__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,gBAAgB,EAChB,yBAAyB,EAC1B,MAAM,2FAA2F,CAAC;AAiDnG,qBAAa,yBAAyB;IACpC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,yBAAyB;IAGnD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,gBAAgB;CAGpB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver__factory.js new file mode 100644 index 00000000..cb5c49d9 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver__factory.js @@ -0,0 +1,60 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IDNSZoneResolver__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "bytes", + name: "lastzonehash", + type: "bytes", + }, + { + indexed: false, + internalType: "bytes", + name: "zonehash", + type: "bytes", + }, + ], + name: "DNSZonehashChanged", + type: "event", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "zonehash", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class IDNSZoneResolver__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IDNSZoneResolver__factory = IDNSZoneResolver__factory; +IDNSZoneResolver__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver__factory.d.ts new file mode 100644 index 00000000..47e584ed --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver__factory.d.ts @@ -0,0 +1,26 @@ +import { type ContractRunner } from "ethers"; +import type { IExtendedResolver, IExtendedResolverInterface } from "../../../../../../@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver"; +export declare class IExtendedResolver__factory { + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "bytes"; + readonly name: "name"; + readonly type: "bytes"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "resolve"; + readonly outputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): IExtendedResolverInterface; + static connect(address: string, runner?: ContractRunner | null): IExtendedResolver; +} +//# sourceMappingURL=IExtendedResolver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver__factory.d.ts.map new file mode 100644 index 00000000..a659b44f --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IExtendedResolver__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,iBAAiB,EACjB,0BAA0B,EAC3B,MAAM,4FAA4F,CAAC;AA6BpG,qBAAa,0BAA0B;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,0BAA0B;IAGpD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,iBAAiB;CAGrB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver__factory.js new file mode 100644 index 00000000..015adfd3 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver__factory.js @@ -0,0 +1,40 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IExtendedResolver__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "bytes", + name: "name", + type: "bytes", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "resolve", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class IExtendedResolver__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IExtendedResolver__factory = IExtendedResolver__factory; +IExtendedResolver__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver__factory.d.ts new file mode 100644 index 00000000..dfe36e2c --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver__factory.d.ts @@ -0,0 +1,46 @@ +import { type ContractRunner } from "ethers"; +import type { IInterfaceResolver, IInterfaceResolverInterface } from "../../../../../../@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver"; +export declare class IInterfaceResolver__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "bytes4"; + readonly name: "interfaceID"; + readonly type: "bytes4"; + }, { + readonly indexed: false; + readonly internalType: "address"; + readonly name: "implementer"; + readonly type: "address"; + }]; + readonly name: "InterfaceChanged"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes4"; + readonly name: "interfaceID"; + readonly type: "bytes4"; + }]; + readonly name: "interfaceImplementer"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): IInterfaceResolverInterface; + static connect(address: string, runner?: ContractRunner | null): IInterfaceResolver; +} +//# sourceMappingURL=IInterfaceResolver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver__factory.d.ts.map new file mode 100644 index 00000000..9254d063 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IInterfaceResolver__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,kBAAkB,EAClB,2BAA2B,EAC5B,MAAM,6FAA6F,CAAC;AAsDrG,qBAAa,2BAA2B;IACtC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,2BAA2B;IAGrD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,kBAAkB;CAGtB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver__factory.js new file mode 100644 index 00000000..22325100 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver__factory.js @@ -0,0 +1,65 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IInterfaceResolver__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: true, + internalType: "bytes4", + name: "interfaceID", + type: "bytes4", + }, + { + indexed: false, + internalType: "address", + name: "implementer", + type: "address", + }, + ], + name: "InterfaceChanged", + type: "event", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "bytes4", + name: "interfaceID", + type: "bytes4", + }, + ], + name: "interfaceImplementer", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class IInterfaceResolver__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IInterfaceResolver__factory = IInterfaceResolver__factory; +IInterfaceResolver__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver__factory.d.ts new file mode 100644 index 00000000..0b44fc98 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver__factory.d.ts @@ -0,0 +1,37 @@ +import { type ContractRunner } from "ethers"; +import type { INameResolver, INameResolverInterface } from "../../../../../../@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver"; +export declare class INameResolver__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "string"; + readonly name: "name"; + readonly type: "string"; + }]; + readonly name: "NameChanged"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "name"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): INameResolverInterface; + static connect(address: string, runner?: ContractRunner | null): INameResolver; +} +//# sourceMappingURL=INameResolver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver__factory.d.ts.map new file mode 100644 index 00000000..84a3f035 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"INameResolver__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,aAAa,EACb,sBAAsB,EACvB,MAAM,wFAAwF,CAAC;AA2ChG,qBAAa,sBAAsB;IACjC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,sBAAsB;IAGhD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,aAAa;CAGjB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver__factory.js new file mode 100644 index 00000000..8bf957b9 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver__factory.js @@ -0,0 +1,54 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.INameResolver__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "string", + name: "name", + type: "string", + }, + ], + name: "NameChanged", + type: "event", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "name", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class INameResolver__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.INameResolver__factory = INameResolver__factory; +INameResolver__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver__factory.d.ts new file mode 100644 index 00000000..69a55f8a --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver__factory.d.ts @@ -0,0 +1,46 @@ +import { type ContractRunner } from "ethers"; +import type { IPubkeyResolver, IPubkeyResolverInterface } from "../../../../../../@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver"; +export declare class IPubkeyResolver__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "bytes32"; + readonly name: "x"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "bytes32"; + readonly name: "y"; + readonly type: "bytes32"; + }]; + readonly name: "PubkeyChanged"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "pubkey"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "x"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes32"; + readonly name: "y"; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): IPubkeyResolverInterface; + static connect(address: string, runner?: ContractRunner | null): IPubkeyResolver; +} +//# sourceMappingURL=IPubkeyResolver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver__factory.d.ts.map new file mode 100644 index 00000000..3de06933 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IPubkeyResolver__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,eAAe,EACf,wBAAwB,EACzB,MAAM,0FAA0F,CAAC;AAsDlG,qBAAa,wBAAwB;IACnC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,wBAAwB;IAGlD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,eAAe;CAGnB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver__factory.js new file mode 100644 index 00000000..243f463f --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver__factory.js @@ -0,0 +1,65 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IPubkeyResolver__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "bytes32", + name: "x", + type: "bytes32", + }, + { + indexed: false, + internalType: "bytes32", + name: "y", + type: "bytes32", + }, + ], + name: "PubkeyChanged", + type: "event", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "pubkey", + outputs: [ + { + internalType: "bytes32", + name: "x", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "y", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class IPubkeyResolver__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IPubkeyResolver__factory = IPubkeyResolver__factory; +IPubkeyResolver__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver__factory.d.ts new file mode 100644 index 00000000..7fa79d52 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver__factory.d.ts @@ -0,0 +1,51 @@ +import { type ContractRunner } from "ethers"; +import type { ITextResolver, ITextResolverInterface } from "../../../../../../@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver"; +export declare class ITextResolver__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "string"; + readonly name: "indexedKey"; + readonly type: "string"; + }, { + readonly indexed: false; + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }, { + readonly indexed: false; + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }]; + readonly name: "TextChanged"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }]; + readonly name: "text"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): ITextResolverInterface; + static connect(address: string, runner?: ContractRunner | null): ITextResolver; +} +//# sourceMappingURL=ITextResolver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver__factory.d.ts.map new file mode 100644 index 00000000..7cc2cc09 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ITextResolver__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,aAAa,EACb,sBAAsB,EACvB,MAAM,wFAAwF,CAAC;AA4DhG,qBAAa,sBAAsB;IACjC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,sBAAsB;IAGhD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,aAAa;CAGjB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver__factory.js new file mode 100644 index 00000000..5e1a065e --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver__factory.js @@ -0,0 +1,71 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ITextResolver__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: true, + internalType: "string", + name: "indexedKey", + type: "string", + }, + { + indexed: false, + internalType: "string", + name: "key", + type: "string", + }, + { + indexed: false, + internalType: "string", + name: "value", + type: "string", + }, + ], + name: "TextChanged", + type: "event", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "string", + name: "key", + type: "string", + }, + ], + name: "text", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class ITextResolver__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.ITextResolver__factory = ITextResolver__factory; +ITextResolver__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver__factory.d.ts new file mode 100644 index 00000000..9951acda --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver__factory.d.ts @@ -0,0 +1,37 @@ +import { type ContractRunner } from "ethers"; +import type { IVersionableResolver, IVersionableResolverInterface } from "../../../../../../@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver"; +export declare class IVersionableResolver__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "uint64"; + readonly name: "newVersion"; + readonly type: "uint64"; + }]; + readonly name: "VersionChanged"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "recordVersions"; + readonly outputs: readonly [{ + readonly internalType: "uint64"; + readonly name: ""; + readonly type: "uint64"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): IVersionableResolverInterface; + static connect(address: string, runner?: ContractRunner | null): IVersionableResolver; +} +//# sourceMappingURL=IVersionableResolver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver__factory.d.ts.map new file mode 100644 index 00000000..2e830899 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IVersionableResolver__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,oBAAoB,EACpB,6BAA6B,EAC9B,MAAM,+FAA+F,CAAC;AA2CvG,qBAAa,6BAA6B;IACxC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,6BAA6B;IAGvD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,oBAAoB;CAOxB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver__factory.js new file mode 100644 index 00000000..aca3d06d --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver__factory.js @@ -0,0 +1,54 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IVersionableResolver__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint64", + name: "newVersion", + type: "uint64", + }, + ], + name: "VersionChanged", + type: "event", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "recordVersions", + outputs: [ + { + internalType: "uint64", + name: "", + type: "uint64", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class IVersionableResolver__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IVersionableResolver__factory = IVersionableResolver__factory; +IVersionableResolver__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver__factory.d.ts new file mode 100644 index 00000000..d944e79b --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver__factory.d.ts @@ -0,0 +1,216 @@ +import { type ContractRunner } from "ethers"; +import type { InterfaceResolver, InterfaceResolverInterface } from "../../../../../../@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver"; +export declare class InterfaceResolver__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "address"; + readonly name: "a"; + readonly type: "address"; + }]; + readonly name: "AddrChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "coinType"; + readonly type: "uint256"; + }, { + readonly indexed: false; + readonly internalType: "bytes"; + readonly name: "newAddress"; + readonly type: "bytes"; + }]; + readonly name: "AddressChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "bytes4"; + readonly name: "interfaceID"; + readonly type: "bytes4"; + }, { + readonly indexed: false; + readonly internalType: "address"; + readonly name: "implementer"; + readonly type: "address"; + }]; + readonly name: "InterfaceChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "uint64"; + readonly name: "newVersion"; + readonly type: "uint64"; + }]; + readonly name: "VersionChanged"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "addr"; + readonly outputs: readonly [{ + readonly internalType: "address payable"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "coinType"; + readonly type: "uint256"; + }]; + readonly name: "addr"; + readonly outputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "clearRecords"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes4"; + readonly name: "interfaceID"; + readonly type: "bytes4"; + }]; + readonly name: "interfaceImplementer"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly name: "recordVersions"; + readonly outputs: readonly [{ + readonly internalType: "uint64"; + readonly name: ""; + readonly type: "uint64"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "coinType"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "a"; + readonly type: "bytes"; + }]; + readonly name: "setAddr"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "a"; + readonly type: "address"; + }]; + readonly name: "setAddr"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes4"; + readonly name: "interfaceID"; + readonly type: "bytes4"; + }, { + readonly internalType: "address"; + readonly name: "implementer"; + readonly type: "address"; + }]; + readonly name: "setInterface"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceID"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): InterfaceResolverInterface; + static connect(address: string, runner?: ContractRunner | null): InterfaceResolver; +} +//# sourceMappingURL=InterfaceResolver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver__factory.d.ts.map new file mode 100644 index 00000000..7896a512 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"InterfaceResolver__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,iBAAiB,EACjB,0BAA0B,EAC3B,MAAM,4FAA4F,CAAC;AAmRpG,qBAAa,0BAA0B;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,0BAA0B;IAGpD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,iBAAiB;CAGrB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver__factory.js new file mode 100644 index 00000000..86662fa3 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver__factory.js @@ -0,0 +1,286 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.InterfaceResolver__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "a", + type: "address", + }, + ], + name: "AddrChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "coinType", + type: "uint256", + }, + { + indexed: false, + internalType: "bytes", + name: "newAddress", + type: "bytes", + }, + ], + name: "AddressChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: true, + internalType: "bytes4", + name: "interfaceID", + type: "bytes4", + }, + { + indexed: false, + internalType: "address", + name: "implementer", + type: "address", + }, + ], + name: "InterfaceChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint64", + name: "newVersion", + type: "uint64", + }, + ], + name: "VersionChanged", + type: "event", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "addr", + outputs: [ + { + internalType: "address payable", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "uint256", + name: "coinType", + type: "uint256", + }, + ], + name: "addr", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "clearRecords", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "bytes4", + name: "interfaceID", + type: "bytes4", + }, + ], + name: "interfaceImplementer", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + name: "recordVersions", + outputs: [ + { + internalType: "uint64", + name: "", + type: "uint64", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "uint256", + name: "coinType", + type: "uint256", + }, + { + internalType: "bytes", + name: "a", + type: "bytes", + }, + ], + name: "setAddr", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "address", + name: "a", + type: "address", + }, + ], + name: "setAddr", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "bytes4", + name: "interfaceID", + type: "bytes4", + }, + { + internalType: "address", + name: "implementer", + type: "address", + }, + ], + name: "setInterface", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceID", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class InterfaceResolver__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.InterfaceResolver__factory = InterfaceResolver__factory; +InterfaceResolver__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver__factory.d.ts new file mode 100644 index 00000000..cffd5e34 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver__factory.d.ts @@ -0,0 +1,104 @@ +import { type ContractRunner } from "ethers"; +import type { NameResolver, NameResolverInterface } from "../../../../../../@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver"; +export declare class NameResolver__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "string"; + readonly name: "name"; + readonly type: "string"; + }]; + readonly name: "NameChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "uint64"; + readonly name: "newVersion"; + readonly type: "uint64"; + }]; + readonly name: "VersionChanged"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "clearRecords"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "name"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly name: "recordVersions"; + readonly outputs: readonly [{ + readonly internalType: "uint64"; + readonly name: ""; + readonly type: "uint64"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "string"; + readonly name: "newName"; + readonly type: "string"; + }]; + readonly name: "setName"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceID"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): NameResolverInterface; + static connect(address: string, runner?: ContractRunner | null): NameResolver; +} +//# sourceMappingURL=NameResolver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver__factory.d.ts.map new file mode 100644 index 00000000..bdcf6cda --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"NameResolver__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,YAAY,EACZ,qBAAqB,EACtB,MAAM,uFAAuF,CAAC;AAmI/F,qBAAa,qBAAqB;IAChC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,qBAAqB;IAG/C,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,YAAY;CAGhB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver__factory.js new file mode 100644 index 00000000..a5632e62 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver__factory.js @@ -0,0 +1,142 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.NameResolver__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "string", + name: "name", + type: "string", + }, + ], + name: "NameChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint64", + name: "newVersion", + type: "uint64", + }, + ], + name: "VersionChanged", + type: "event", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "clearRecords", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "name", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + name: "recordVersions", + outputs: [ + { + internalType: "uint64", + name: "", + type: "uint64", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "string", + name: "newName", + type: "string", + }, + ], + name: "setName", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceID", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class NameResolver__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.NameResolver__factory = NameResolver__factory; +NameResolver__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver__factory.d.ts new file mode 100644 index 00000000..0441f76a --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver__factory.d.ts @@ -0,0 +1,117 @@ +import { type ContractRunner } from "ethers"; +import type { PubkeyResolver, PubkeyResolverInterface } from "../../../../../../@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver"; +export declare class PubkeyResolver__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "bytes32"; + readonly name: "x"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "bytes32"; + readonly name: "y"; + readonly type: "bytes32"; + }]; + readonly name: "PubkeyChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "uint64"; + readonly name: "newVersion"; + readonly type: "uint64"; + }]; + readonly name: "VersionChanged"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "clearRecords"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "pubkey"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "x"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes32"; + readonly name: "y"; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly name: "recordVersions"; + readonly outputs: readonly [{ + readonly internalType: "uint64"; + readonly name: ""; + readonly type: "uint64"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes32"; + readonly name: "x"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes32"; + readonly name: "y"; + readonly type: "bytes32"; + }]; + readonly name: "setPubkey"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceID"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): PubkeyResolverInterface; + static connect(address: string, runner?: ContractRunner | null): PubkeyResolver; +} +//# sourceMappingURL=PubkeyResolver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver__factory.d.ts.map new file mode 100644 index 00000000..3af4d3b9 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"PubkeyResolver__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,cAAc,EACd,uBAAuB,EACxB,MAAM,yFAAyF,CAAC;AAmJjG,qBAAa,uBAAuB;IAClC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,uBAAuB;IAGjD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,cAAc;CAGlB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver__factory.js new file mode 100644 index 00000000..270716a5 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver__factory.js @@ -0,0 +1,158 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.PubkeyResolver__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "bytes32", + name: "x", + type: "bytes32", + }, + { + indexed: false, + internalType: "bytes32", + name: "y", + type: "bytes32", + }, + ], + name: "PubkeyChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint64", + name: "newVersion", + type: "uint64", + }, + ], + name: "VersionChanged", + type: "event", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "clearRecords", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "pubkey", + outputs: [ + { + internalType: "bytes32", + name: "x", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "y", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + name: "recordVersions", + outputs: [ + { + internalType: "uint64", + name: "", + type: "uint64", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "x", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "y", + type: "bytes32", + }, + ], + name: "setPubkey", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceID", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class PubkeyResolver__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.PubkeyResolver__factory = PubkeyResolver__factory; +PubkeyResolver__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver__factory.d.ts new file mode 100644 index 00000000..879605fe --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver__factory.d.ts @@ -0,0 +1,122 @@ +import { type ContractRunner } from "ethers"; +import type { TextResolver, TextResolverInterface } from "../../../../../../@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver"; +export declare class TextResolver__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "string"; + readonly name: "indexedKey"; + readonly type: "string"; + }, { + readonly indexed: false; + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }, { + readonly indexed: false; + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }]; + readonly name: "TextChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "uint64"; + readonly name: "newVersion"; + readonly type: "uint64"; + }]; + readonly name: "VersionChanged"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "clearRecords"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly name: "recordVersions"; + readonly outputs: readonly [{ + readonly internalType: "uint64"; + readonly name: ""; + readonly type: "uint64"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }, { + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }]; + readonly name: "setText"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceID"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }]; + readonly name: "text"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): TextResolverInterface; + static connect(address: string, runner?: ContractRunner | null): TextResolver; +} +//# sourceMappingURL=TextResolver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver__factory.d.ts.map new file mode 100644 index 00000000..50a9ea56 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"TextResolver__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,YAAY,EACZ,qBAAqB,EACtB,MAAM,uFAAuF,CAAC;AAyJ/F,qBAAa,qBAAqB;IAChC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,qBAAqB;IAG/C,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,YAAY;CAGhB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver__factory.js new file mode 100644 index 00000000..ef275b5d --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver__factory.js @@ -0,0 +1,164 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.TextResolver__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: true, + internalType: "string", + name: "indexedKey", + type: "string", + }, + { + indexed: false, + internalType: "string", + name: "key", + type: "string", + }, + { + indexed: false, + internalType: "string", + name: "value", + type: "string", + }, + ], + name: "TextChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint64", + name: "newVersion", + type: "uint64", + }, + ], + name: "VersionChanged", + type: "event", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "clearRecords", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + name: "recordVersions", + outputs: [ + { + internalType: "uint64", + name: "", + type: "uint64", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "string", + name: "key", + type: "string", + }, + { + internalType: "string", + name: "value", + type: "string", + }, + ], + name: "setText", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceID", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "string", + name: "key", + type: "string", + }, + ], + name: "text", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class TextResolver__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.TextResolver__factory = TextResolver__factory; +TextResolver__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/index.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/index.d.ts new file mode 100644 index 00000000..27cc5b27 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/index.d.ts @@ -0,0 +1,21 @@ +export { ABIResolver__factory } from "./ABIResolver__factory"; +export { AddrResolver__factory } from "./AddrResolver__factory"; +export { ContentHashResolver__factory } from "./ContentHashResolver__factory"; +export { DNSResolver__factory } from "./DNSResolver__factory"; +export { IABIResolver__factory } from "./IABIResolver__factory"; +export { IAddrResolver__factory } from "./IAddrResolver__factory"; +export { IAddressResolver__factory } from "./IAddressResolver__factory"; +export { IContentHashResolver__factory } from "./IContentHashResolver__factory"; +export { IDNSRecordResolver__factory } from "./IDNSRecordResolver__factory"; +export { IDNSZoneResolver__factory } from "./IDNSZoneResolver__factory"; +export { IExtendedResolver__factory } from "./IExtendedResolver__factory"; +export { IInterfaceResolver__factory } from "./IInterfaceResolver__factory"; +export { INameResolver__factory } from "./INameResolver__factory"; +export { IPubkeyResolver__factory } from "./IPubkeyResolver__factory"; +export { ITextResolver__factory } from "./ITextResolver__factory"; +export { IVersionableResolver__factory } from "./IVersionableResolver__factory"; +export { InterfaceResolver__factory } from "./InterfaceResolver__factory"; +export { NameResolver__factory } from "./NameResolver__factory"; +export { PubkeyResolver__factory } from "./PubkeyResolver__factory"; +export { TextResolver__factory } from "./TextResolver__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/index.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/index.d.ts.map new file mode 100644 index 00000000..82f7c118 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AAChF,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AAChF,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/index.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/index.js new file mode 100644 index 00000000..0edbc44f --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/index.js @@ -0,0 +1,43 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.TextResolver__factory = exports.PubkeyResolver__factory = exports.NameResolver__factory = exports.InterfaceResolver__factory = exports.IVersionableResolver__factory = exports.ITextResolver__factory = exports.IPubkeyResolver__factory = exports.INameResolver__factory = exports.IInterfaceResolver__factory = exports.IExtendedResolver__factory = exports.IDNSZoneResolver__factory = exports.IDNSRecordResolver__factory = exports.IContentHashResolver__factory = exports.IAddressResolver__factory = exports.IAddrResolver__factory = exports.IABIResolver__factory = exports.DNSResolver__factory = exports.ContentHashResolver__factory = exports.AddrResolver__factory = exports.ABIResolver__factory = void 0; +var ABIResolver__factory_1 = require("./ABIResolver__factory"); +Object.defineProperty(exports, "ABIResolver__factory", { enumerable: true, get: function () { return ABIResolver__factory_1.ABIResolver__factory; } }); +var AddrResolver__factory_1 = require("./AddrResolver__factory"); +Object.defineProperty(exports, "AddrResolver__factory", { enumerable: true, get: function () { return AddrResolver__factory_1.AddrResolver__factory; } }); +var ContentHashResolver__factory_1 = require("./ContentHashResolver__factory"); +Object.defineProperty(exports, "ContentHashResolver__factory", { enumerable: true, get: function () { return ContentHashResolver__factory_1.ContentHashResolver__factory; } }); +var DNSResolver__factory_1 = require("./DNSResolver__factory"); +Object.defineProperty(exports, "DNSResolver__factory", { enumerable: true, get: function () { return DNSResolver__factory_1.DNSResolver__factory; } }); +var IABIResolver__factory_1 = require("./IABIResolver__factory"); +Object.defineProperty(exports, "IABIResolver__factory", { enumerable: true, get: function () { return IABIResolver__factory_1.IABIResolver__factory; } }); +var IAddrResolver__factory_1 = require("./IAddrResolver__factory"); +Object.defineProperty(exports, "IAddrResolver__factory", { enumerable: true, get: function () { return IAddrResolver__factory_1.IAddrResolver__factory; } }); +var IAddressResolver__factory_1 = require("./IAddressResolver__factory"); +Object.defineProperty(exports, "IAddressResolver__factory", { enumerable: true, get: function () { return IAddressResolver__factory_1.IAddressResolver__factory; } }); +var IContentHashResolver__factory_1 = require("./IContentHashResolver__factory"); +Object.defineProperty(exports, "IContentHashResolver__factory", { enumerable: true, get: function () { return IContentHashResolver__factory_1.IContentHashResolver__factory; } }); +var IDNSRecordResolver__factory_1 = require("./IDNSRecordResolver__factory"); +Object.defineProperty(exports, "IDNSRecordResolver__factory", { enumerable: true, get: function () { return IDNSRecordResolver__factory_1.IDNSRecordResolver__factory; } }); +var IDNSZoneResolver__factory_1 = require("./IDNSZoneResolver__factory"); +Object.defineProperty(exports, "IDNSZoneResolver__factory", { enumerable: true, get: function () { return IDNSZoneResolver__factory_1.IDNSZoneResolver__factory; } }); +var IExtendedResolver__factory_1 = require("./IExtendedResolver__factory"); +Object.defineProperty(exports, "IExtendedResolver__factory", { enumerable: true, get: function () { return IExtendedResolver__factory_1.IExtendedResolver__factory; } }); +var IInterfaceResolver__factory_1 = require("./IInterfaceResolver__factory"); +Object.defineProperty(exports, "IInterfaceResolver__factory", { enumerable: true, get: function () { return IInterfaceResolver__factory_1.IInterfaceResolver__factory; } }); +var INameResolver__factory_1 = require("./INameResolver__factory"); +Object.defineProperty(exports, "INameResolver__factory", { enumerable: true, get: function () { return INameResolver__factory_1.INameResolver__factory; } }); +var IPubkeyResolver__factory_1 = require("./IPubkeyResolver__factory"); +Object.defineProperty(exports, "IPubkeyResolver__factory", { enumerable: true, get: function () { return IPubkeyResolver__factory_1.IPubkeyResolver__factory; } }); +var ITextResolver__factory_1 = require("./ITextResolver__factory"); +Object.defineProperty(exports, "ITextResolver__factory", { enumerable: true, get: function () { return ITextResolver__factory_1.ITextResolver__factory; } }); +var IVersionableResolver__factory_1 = require("./IVersionableResolver__factory"); +Object.defineProperty(exports, "IVersionableResolver__factory", { enumerable: true, get: function () { return IVersionableResolver__factory_1.IVersionableResolver__factory; } }); +var InterfaceResolver__factory_1 = require("./InterfaceResolver__factory"); +Object.defineProperty(exports, "InterfaceResolver__factory", { enumerable: true, get: function () { return InterfaceResolver__factory_1.InterfaceResolver__factory; } }); +var NameResolver__factory_1 = require("./NameResolver__factory"); +Object.defineProperty(exports, "NameResolver__factory", { enumerable: true, get: function () { return NameResolver__factory_1.NameResolver__factory; } }); +var PubkeyResolver__factory_1 = require("./PubkeyResolver__factory"); +Object.defineProperty(exports, "PubkeyResolver__factory", { enumerable: true, get: function () { return PubkeyResolver__factory_1.PubkeyResolver__factory; } }); +var TextResolver__factory_1 = require("./TextResolver__factory"); +Object.defineProperty(exports, "TextResolver__factory", { enumerable: true, get: function () { return TextResolver__factory_1.TextResolver__factory; } }); diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar__factory.d.ts new file mode 100644 index 00000000..973ecb0b --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar__factory.d.ts @@ -0,0 +1,126 @@ +import { type ContractRunner } from "ethers"; +import type { IReverseRegistrar, IReverseRegistrarInterface } from "../../../../../@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar"; +export declare class IReverseRegistrar__factory { + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "claim"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }]; + readonly name: "claimForAddr"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }]; + readonly name: "claimWithResolver"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }]; + readonly name: "node"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "pure"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }]; + readonly name: "setDefaultResolver"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "name"; + readonly type: "string"; + }]; + readonly name: "setName"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }, { + readonly internalType: "string"; + readonly name: "name"; + readonly type: "string"; + }]; + readonly name: "setNameForAddr"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): IReverseRegistrarInterface; + static connect(address: string, runner?: ContractRunner | null): IReverseRegistrar; +} +//# sourceMappingURL=IReverseRegistrar__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar__factory.d.ts.map new file mode 100644 index 00000000..c0186ca0 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IReverseRegistrar__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,iBAAiB,EACjB,0BAA0B,EAC3B,MAAM,uFAAuF,CAAC;AAkK/F,qBAAa,0BAA0B;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,0BAA0B;IAGpD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,iBAAiB;CAGrB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar__factory.js new file mode 100644 index 00000000..17902b55 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar__factory.js @@ -0,0 +1,173 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IReverseRegistrar__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "claim", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "addr", + type: "address", + }, + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "resolver", + type: "address", + }, + ], + name: "claimForAddr", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "resolver", + type: "address", + }, + ], + name: "claimWithResolver", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "node", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "pure", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "resolver", + type: "address", + }, + ], + name: "setDefaultResolver", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "name", + type: "string", + }, + ], + name: "setName", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "addr", + type: "address", + }, + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "resolver", + type: "address", + }, + { + internalType: "string", + name: "name", + type: "string", + }, + ], + name: "setNameForAddr", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, +]; +class IReverseRegistrar__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IReverseRegistrar__factory = IReverseRegistrar__factory; +IReverseRegistrar__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer__factory.d.ts new file mode 100644 index 00000000..692e34ce --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer__factory.d.ts @@ -0,0 +1,35 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, AddressLike, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../../../common"; +import type { ReverseClaimer, ReverseClaimerInterface } from "../../../../../@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer"; +declare type ReverseClaimerConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class ReverseClaimer__factory extends ContractFactory { + constructor(...args: ReverseClaimerConstructorParams); + getDeployTransaction(ens: AddressLike, claimant: AddressLike, overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(ens: AddressLike, claimant: AddressLike, overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): ReverseClaimer__factory; + static readonly bytecode = "0x608060405234801561001057600080fd5b506040516101e63803806101e683398101604081905261002f9161014b565b6040516302571be360e01b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e260048201526000906001600160a01b038416906302571be390602401602060405180830381865afa158015610096573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906100ba9190610185565b604051630f41a04d60e11b81526001600160a01b03848116600483015291925090821690631e83409a906024016020604051808303816000875af1158015610106573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061012a91906101a9565b505050506101c2565b6001600160a01b038116811461014857600080fd5b50565b6000806040838503121561015e57600080fd5b825161016981610133565b602084015190925061017a81610133565b809150509250929050565b60006020828403121561019757600080fd5b81516101a281610133565b9392505050565b6000602082840312156101bb57600080fd5b5051919050565b6016806101d06000396000f3fe6080604052600080fdfea164736f6c6343000811000a"; + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "contract ENS"; + readonly name: "ens"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "claimant"; + readonly type: "address"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "constructor"; + }]; + static createInterface(): ReverseClaimerInterface; + static connect(address: string, runner?: ContractRunner | null): ReverseClaimer; +} +export {}; +//# sourceMappingURL=ReverseClaimer__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer__factory.d.ts.map new file mode 100644 index 00000000..05432c3f --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ReverseClaimer__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,MAAM,EACN,WAAW,EACX,yBAAyB,EACzB,cAAc,EACf,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,cAAc,EACd,uBAAuB,EACxB,MAAM,oFAAoF,CAAC;AAwB5F,aAAK,+BAA+B,GAChC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,uBAAwB,SAAQ,eAAe;gBAC9C,GAAG,IAAI,EAAE,+BAA+B;IAQ3C,oBAAoB,CAC3B,GAAG,EAAE,WAAW,EAChB,QAAQ,EAAE,WAAW,EACrB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CACb,GAAG,EAAE,WAAW,EAChB,QAAQ,EAAE,WAAW,EACrB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAItB,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,uBAAuB;IAIxE,MAAM,CAAC,QAAQ,CAAC,QAAQ,o9BAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,uBAAuB;IAGjD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,cAAc;CAGlB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer__factory.js new file mode 100644 index 00000000..d478fd98 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer__factory.js @@ -0,0 +1,52 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ReverseClaimer__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "contract ENS", + name: "ens", + type: "address", + }, + { + internalType: "address", + name: "claimant", + type: "address", + }, + ], + stateMutability: "nonpayable", + type: "constructor", + }, +]; +const _bytecode = "0x608060405234801561001057600080fd5b506040516101e63803806101e683398101604081905261002f9161014b565b6040516302571be360e01b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e260048201526000906001600160a01b038416906302571be390602401602060405180830381865afa158015610096573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906100ba9190610185565b604051630f41a04d60e11b81526001600160a01b03848116600483015291925090821690631e83409a906024016020604051808303816000875af1158015610106573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061012a91906101a9565b505050506101c2565b6001600160a01b038116811461014857600080fd5b50565b6000806040838503121561015e57600080fd5b825161016981610133565b602084015190925061017a81610133565b809150509250929050565b60006020828403121561019757600080fd5b81516101a281610133565b9392505050565b6000602082840312156101bb57600080fd5b5051919050565b6016806101d06000396000f3fe6080604052600080fdfea164736f6c6343000811000a"; +const isSuperArgs = (xs) => xs.length > 1; +class ReverseClaimer__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(ens, claimant, overrides) { + return super.getDeployTransaction(ens, claimant, overrides || {}); + } + deploy(ens, claimant, overrides) { + return super.deploy(ens, claimant, overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.ReverseClaimer__factory = ReverseClaimer__factory; +ReverseClaimer__factory.bytecode = _bytecode; +ReverseClaimer__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/NameResolver__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/NameResolver__factory.d.ts new file mode 100644 index 00000000..1090972d --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/NameResolver__factory.d.ts @@ -0,0 +1,22 @@ +import { type ContractRunner } from "ethers"; +import type { NameResolver, NameResolverInterface } from "../../../../../../@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/NameResolver"; +export declare class NameResolver__factory { + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "string"; + readonly name: "name"; + readonly type: "string"; + }]; + readonly name: "setName"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): NameResolverInterface; + static connect(address: string, runner?: ContractRunner | null): NameResolver; +} +//# sourceMappingURL=NameResolver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/NameResolver__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/NameResolver__factory.d.ts.map new file mode 100644 index 00000000..db0014dd --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/NameResolver__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"NameResolver__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/NameResolver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,YAAY,EACZ,qBAAqB,EACtB,MAAM,0GAA0G,CAAC;AAuBlH,qBAAa,qBAAqB;IAChC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,qBAAqB;IAG/C,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,YAAY;CAGhB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/NameResolver__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/NameResolver__factory.js new file mode 100644 index 00000000..95ef0317 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/NameResolver__factory.js @@ -0,0 +1,34 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.NameResolver__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "string", + name: "name", + type: "string", + }, + ], + name: "setName", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +class NameResolver__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.NameResolver__factory = NameResolver__factory; +NameResolver__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar__factory.d.ts new file mode 100644 index 00000000..916baa43 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar__factory.d.ts @@ -0,0 +1,278 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, AddressLike, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../../../../common"; +import type { ReverseRegistrar, ReverseRegistrarInterface } from "../../../../../../@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar"; +declare type ReverseRegistrarConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class ReverseRegistrar__factory extends ContractFactory { + constructor(...args: ReverseRegistrarConstructorParams); + getDeployTransaction(ensAddr: AddressLike, overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(ensAddr: AddressLike, overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): ReverseRegistrar__factory; + static readonly bytecode = "0x60a060405234801561001057600080fd5b50604051610e6b380380610e6b83398101604081905261002f916101b4565b6100383361014c565b6001600160a01b03811660808190526040516302571be360e01b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26004820152600091906302571be390602401602060405180830381865afa1580156100a4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906100c891906101b4565b90506001600160a01b0381161561014557604051630f41a04d60e11b81523360048201526001600160a01b03821690631e83409a906024016020604051808303816000875af115801561011f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061014391906101d8565b505b50506101f1565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146101b157600080fd5b50565b6000602082840312156101c657600080fd5b81516101d18161019c565b9392505050565b6000602082840312156101ea57600080fd5b5051919050565b608051610c5161021a6000396000818161012d015281816102d701526104d50152610c516000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c80638da5cb5b1161008c578063c66485b211610066578063c66485b2146101e1578063da8c229e146101f4578063e0dba60f14610227578063f2fde38b1461023a57600080fd5b80638da5cb5b146101aa578063bffbe61c146101bb578063c47f0027146101ce57600080fd5b806365669631116100c85780636566963114610167578063715018a61461017a5780637a806d6b14610184578063828eab0e1461019757600080fd5b80630f5a5466146100ef5780631e83409a146101155780633f15457f14610128575b600080fd5b6101026100fd366004610982565b61024d565b6040519081526020015b60405180910390f35b6101026101233660046109bb565b610261565b61014f7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b03909116815260200161010c565b6101026101753660046109d8565b610283565b61018261053c565b005b610102610192366004610ac6565b610550565b60025461014f906001600160a01b031681565b6000546001600160a01b031661014f565b6101026101c93660046109bb565b6105cb565b6101026101dc366004610b3b565b610626565b6101826101ef3660046109bb565b610643565b6102176102023660046109bb565b60016020526000908152604090205460ff1681565b604051901515815260200161010c565b610182610235366004610b86565b610704565b6101826102483660046109bb565b61076b565b600061025a338484610283565b9392505050565b60025460009061027d90339084906001600160a01b0316610283565b92915050565b6000836001600160a01b0381163314806102ac57503360009081526001602052604090205460ff165b80610342575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000000000000000000000000000000000000000000000169063e985e9c590604401602060405180830381865afa15801561031e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103429190610bb4565b806103515750610351816107e4565b6103ee5760405162461bcd60e51b815260206004820152605b60248201527f526576657273655265676973747261723a2043616c6c6572206973206e6f742060448201527f6120636f6e74726f6c6c6572206f7220617574686f726973656420627920616460648201527f6472657373206f7220746865206164647265737320697473656c660000000000608482015260a4015b60405180910390fd5b60006103f98661085d565b604080517f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e2602080830191909152818301849052825180830384018152606090920192839052815191012091925081906001600160a01b038916907f6ada868dd3058cf77a48a74489fd7963688e5464b2b0fa957ace976243270e9290600090a36040516305ef2c7f60e41b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26004820152602481018390526001600160a01b0387811660448301528681166064830152600060848301527f00000000000000000000000000000000000000000000000000000000000000001690635ef2c7f09060a401600060405180830381600087803b15801561051957600080fd5b505af115801561052d573d6000803e3d6000fd5b50929998505050505050505050565b6105446108c3565b61054e600061091d565b565b60008061055e868686610283565b604051637737221360e01b81529091506001600160a01b0385169063773722139061058f9084908790600401610bd1565b600060405180830381600087803b1580156105a957600080fd5b505af11580156105bd573d6000803e3d6000fd5b509298975050505050505050565b60007f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26105f78361085d565b604080516020810193909352820152606001604051602081830303815290604052805190602001209050919050565b60025460009061027d90339081906001600160a01b031685610550565b61064b6108c3565b6001600160a01b0381166106ba5760405162461bcd60e51b815260206004820152603060248201527f526576657273655265676973747261723a205265736f6c76657220616464726560448201526f07373206d757374206e6f7420626520360841b60648201526084016103e5565b600280546001600160a01b0319166001600160a01b0383169081179091556040517feae17a84d9eb83d8c8eb317f9e7d64857bc363fa51674d996c023f4340c577cf90600090a250565b61070c6108c3565b6001600160a01b038216600081815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b6107736108c3565b6001600160a01b0381166107d85760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016103e5565b6107e18161091d565b50565b6000816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015610840575060408051601f3d908101601f1916820190925261083d91810190610c27565b60015b61084c57506000919050565b6001600160a01b0316331492915050565b600060285b80156108b757600019016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a8153601090920491600019016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a8153601083049250610862565b50506028600020919050565b6000546001600160a01b0316331461054e5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016103e5565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146107e157600080fd5b6000806040838503121561099557600080fd5b82356109a08161096d565b915060208301356109b08161096d565b809150509250929050565b6000602082840312156109cd57600080fd5b813561025a8161096d565b6000806000606084860312156109ed57600080fd5b83356109f88161096d565b92506020840135610a088161096d565b91506040840135610a188161096d565b809150509250925092565b634e487b7160e01b600052604160045260246000fd5b600082601f830112610a4a57600080fd5b813567ffffffffffffffff80821115610a6557610a65610a23565b604051601f8301601f19908116603f01168101908282118183101715610a8d57610a8d610a23565b81604052838152866020858801011115610aa657600080fd5b836020870160208301376000602085830101528094505050505092915050565b60008060008060808587031215610adc57600080fd5b8435610ae78161096d565b93506020850135610af78161096d565b92506040850135610b078161096d565b9150606085013567ffffffffffffffff811115610b2357600080fd5b610b2f87828801610a39565b91505092959194509250565b600060208284031215610b4d57600080fd5b813567ffffffffffffffff811115610b6457600080fd5b610b7084828501610a39565b949350505050565b80151581146107e157600080fd5b60008060408385031215610b9957600080fd5b8235610ba48161096d565b915060208301356109b081610b78565b600060208284031215610bc657600080fd5b815161025a81610b78565b82815260006020604081840152835180604085015260005b81811015610c0557858101830151858201606001528201610be9565b506000606082860101526060601f19601f830116850101925050509392505050565b600060208284031215610c3957600080fd5b815161025a8161096d56fea164736f6c6343000811000a"; + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "contract ENS"; + readonly name: "ensAddr"; + readonly type: "address"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "constructor"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "controller"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "bool"; + readonly name: "enabled"; + readonly type: "bool"; + }]; + readonly name: "ControllerChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "contract NameResolver"; + readonly name: "resolver"; + readonly type: "address"; + }]; + readonly name: "DefaultResolverChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "previousOwner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "newOwner"; + readonly type: "address"; + }]; + readonly name: "OwnershipTransferred"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "ReverseClaimed"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "claim"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }]; + readonly name: "claimForAddr"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }]; + readonly name: "claimWithResolver"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly name: "controllers"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "defaultResolver"; + readonly outputs: readonly [{ + readonly internalType: "contract NameResolver"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "ens"; + readonly outputs: readonly [{ + readonly internalType: "contract ENS"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }]; + readonly name: "node"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "pure"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "owner"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "renounceOwnership"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "controller"; + readonly type: "address"; + }, { + readonly internalType: "bool"; + readonly name: "enabled"; + readonly type: "bool"; + }]; + readonly name: "setController"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }]; + readonly name: "setDefaultResolver"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "name"; + readonly type: "string"; + }]; + readonly name: "setName"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }, { + readonly internalType: "string"; + readonly name: "name"; + readonly type: "string"; + }]; + readonly name: "setNameForAddr"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "newOwner"; + readonly type: "address"; + }]; + readonly name: "transferOwnership"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): ReverseRegistrarInterface; + static connect(address: string, runner?: ContractRunner | null): ReverseRegistrar; +} +export {}; +//# sourceMappingURL=ReverseRegistrar__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar__factory.d.ts.map new file mode 100644 index 00000000..c64cc4c2 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ReverseRegistrar__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,MAAM,EACN,WAAW,EACX,yBAAyB,EACzB,cAAc,EACf,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,KAAK,EACV,gBAAgB,EAChB,yBAAyB,EAC1B,MAAM,8GAA8G,CAAC;AAsVtH,aAAK,iCAAiC,GAClC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,yBAA0B,SAAQ,eAAe;gBAChD,GAAG,IAAI,EAAE,iCAAiC;IAQ7C,oBAAoB,CAC3B,OAAO,EAAE,WAAW,EACpB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CACb,OAAO,EAAE,WAAW,EACpB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAItB,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,yBAAyB;IAI1E,MAAM,CAAC,QAAQ,CAAC,QAAQ,8tOAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,yBAAyB;IAGnD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,gBAAgB;CAGpB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar__factory.js new file mode 100644 index 00000000..417fce6e --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar__factory.js @@ -0,0 +1,370 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ReverseRegistrar__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "contract ENS", + name: "ensAddr", + type: "address", + }, + ], + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "controller", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "enabled", + type: "bool", + }, + ], + name: "ControllerChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "contract NameResolver", + name: "resolver", + type: "address", + }, + ], + name: "DefaultResolverChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "previousOwner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnershipTransferred", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "addr", + type: "address", + }, + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "ReverseClaimed", + type: "event", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "claim", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "addr", + type: "address", + }, + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "resolver", + type: "address", + }, + ], + name: "claimForAddr", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "resolver", + type: "address", + }, + ], + name: "claimWithResolver", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + name: "controllers", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "defaultResolver", + outputs: [ + { + internalType: "contract NameResolver", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "ens", + outputs: [ + { + internalType: "contract ENS", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "node", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "pure", + type: "function", + }, + { + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "renounceOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "controller", + type: "address", + }, + { + internalType: "bool", + name: "enabled", + type: "bool", + }, + ], + name: "setController", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "resolver", + type: "address", + }, + ], + name: "setDefaultResolver", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "name", + type: "string", + }, + ], + name: "setName", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "addr", + type: "address", + }, + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "resolver", + type: "address", + }, + { + internalType: "string", + name: "name", + type: "string", + }, + ], + name: "setNameForAddr", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "transferOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +const _bytecode = "0x60a060405234801561001057600080fd5b50604051610e6b380380610e6b83398101604081905261002f916101b4565b6100383361014c565b6001600160a01b03811660808190526040516302571be360e01b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26004820152600091906302571be390602401602060405180830381865afa1580156100a4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906100c891906101b4565b90506001600160a01b0381161561014557604051630f41a04d60e11b81523360048201526001600160a01b03821690631e83409a906024016020604051808303816000875af115801561011f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061014391906101d8565b505b50506101f1565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146101b157600080fd5b50565b6000602082840312156101c657600080fd5b81516101d18161019c565b9392505050565b6000602082840312156101ea57600080fd5b5051919050565b608051610c5161021a6000396000818161012d015281816102d701526104d50152610c516000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c80638da5cb5b1161008c578063c66485b211610066578063c66485b2146101e1578063da8c229e146101f4578063e0dba60f14610227578063f2fde38b1461023a57600080fd5b80638da5cb5b146101aa578063bffbe61c146101bb578063c47f0027146101ce57600080fd5b806365669631116100c85780636566963114610167578063715018a61461017a5780637a806d6b14610184578063828eab0e1461019757600080fd5b80630f5a5466146100ef5780631e83409a146101155780633f15457f14610128575b600080fd5b6101026100fd366004610982565b61024d565b6040519081526020015b60405180910390f35b6101026101233660046109bb565b610261565b61014f7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b03909116815260200161010c565b6101026101753660046109d8565b610283565b61018261053c565b005b610102610192366004610ac6565b610550565b60025461014f906001600160a01b031681565b6000546001600160a01b031661014f565b6101026101c93660046109bb565b6105cb565b6101026101dc366004610b3b565b610626565b6101826101ef3660046109bb565b610643565b6102176102023660046109bb565b60016020526000908152604090205460ff1681565b604051901515815260200161010c565b610182610235366004610b86565b610704565b6101826102483660046109bb565b61076b565b600061025a338484610283565b9392505050565b60025460009061027d90339084906001600160a01b0316610283565b92915050565b6000836001600160a01b0381163314806102ac57503360009081526001602052604090205460ff165b80610342575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000000000000000000000000000000000000000000000169063e985e9c590604401602060405180830381865afa15801561031e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103429190610bb4565b806103515750610351816107e4565b6103ee5760405162461bcd60e51b815260206004820152605b60248201527f526576657273655265676973747261723a2043616c6c6572206973206e6f742060448201527f6120636f6e74726f6c6c6572206f7220617574686f726973656420627920616460648201527f6472657373206f7220746865206164647265737320697473656c660000000000608482015260a4015b60405180910390fd5b60006103f98661085d565b604080517f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e2602080830191909152818301849052825180830384018152606090920192839052815191012091925081906001600160a01b038916907f6ada868dd3058cf77a48a74489fd7963688e5464b2b0fa957ace976243270e9290600090a36040516305ef2c7f60e41b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26004820152602481018390526001600160a01b0387811660448301528681166064830152600060848301527f00000000000000000000000000000000000000000000000000000000000000001690635ef2c7f09060a401600060405180830381600087803b15801561051957600080fd5b505af115801561052d573d6000803e3d6000fd5b50929998505050505050505050565b6105446108c3565b61054e600061091d565b565b60008061055e868686610283565b604051637737221360e01b81529091506001600160a01b0385169063773722139061058f9084908790600401610bd1565b600060405180830381600087803b1580156105a957600080fd5b505af11580156105bd573d6000803e3d6000fd5b509298975050505050505050565b60007f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26105f78361085d565b604080516020810193909352820152606001604051602081830303815290604052805190602001209050919050565b60025460009061027d90339081906001600160a01b031685610550565b61064b6108c3565b6001600160a01b0381166106ba5760405162461bcd60e51b815260206004820152603060248201527f526576657273655265676973747261723a205265736f6c76657220616464726560448201526f07373206d757374206e6f7420626520360841b60648201526084016103e5565b600280546001600160a01b0319166001600160a01b0383169081179091556040517feae17a84d9eb83d8c8eb317f9e7d64857bc363fa51674d996c023f4340c577cf90600090a250565b61070c6108c3565b6001600160a01b038216600081815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b6107736108c3565b6001600160a01b0381166107d85760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016103e5565b6107e18161091d565b50565b6000816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015610840575060408051601f3d908101601f1916820190925261083d91810190610c27565b60015b61084c57506000919050565b6001600160a01b0316331492915050565b600060285b80156108b757600019016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a8153601090920491600019016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a8153601083049250610862565b50506028600020919050565b6000546001600160a01b0316331461054e5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016103e5565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146107e157600080fd5b6000806040838503121561099557600080fd5b82356109a08161096d565b915060208301356109b08161096d565b809150509250929050565b6000602082840312156109cd57600080fd5b813561025a8161096d565b6000806000606084860312156109ed57600080fd5b83356109f88161096d565b92506020840135610a088161096d565b91506040840135610a188161096d565b809150509250925092565b634e487b7160e01b600052604160045260246000fd5b600082601f830112610a4a57600080fd5b813567ffffffffffffffff80821115610a6557610a65610a23565b604051601f8301601f19908116603f01168101908282118183101715610a8d57610a8d610a23565b81604052838152866020858801011115610aa657600080fd5b836020870160208301376000602085830101528094505050505092915050565b60008060008060808587031215610adc57600080fd5b8435610ae78161096d565b93506020850135610af78161096d565b92506040850135610b078161096d565b9150606085013567ffffffffffffffff811115610b2357600080fd5b610b2f87828801610a39565b91505092959194509250565b600060208284031215610b4d57600080fd5b813567ffffffffffffffff811115610b6457600080fd5b610b7084828501610a39565b949350505050565b80151581146107e157600080fd5b60008060408385031215610b9957600080fd5b8235610ba48161096d565b915060208301356109b081610b78565b600060208284031215610bc657600080fd5b815161025a81610b78565b82815260006020604081840152835180604085015260005b81811015610c0557858101830151858201606001528201610be9565b506000606082860101526060601f19601f830116850101925050509392505050565b600060208284031215610c3957600080fd5b815161025a8161096d56fea164736f6c6343000811000a"; +const isSuperArgs = (xs) => xs.length > 1; +class ReverseRegistrar__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(ensAddr, overrides) { + return super.getDeployTransaction(ensAddr, overrides || {}); + } + deploy(ensAddr, overrides) { + return super.deploy(ensAddr, overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.ReverseRegistrar__factory = ReverseRegistrar__factory; +ReverseRegistrar__factory.bytecode = _bytecode; +ReverseRegistrar__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/index.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/index.d.ts new file mode 100644 index 00000000..3eb2f598 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/index.d.ts @@ -0,0 +1,3 @@ +export { NameResolver__factory } from "./NameResolver__factory"; +export { ReverseRegistrar__factory } from "./ReverseRegistrar__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/index.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/index.d.ts.map new file mode 100644 index 00000000..bc67bd3b --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/index.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/index.js new file mode 100644 index 00000000..45c2e4b5 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/index.js @@ -0,0 +1,7 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ReverseRegistrar__factory = exports.NameResolver__factory = void 0; +var NameResolver__factory_1 = require("./NameResolver__factory"); +Object.defineProperty(exports, "NameResolver__factory", { enumerable: true, get: function () { return NameResolver__factory_1.NameResolver__factory; } }); +var ReverseRegistrar__factory_1 = require("./ReverseRegistrar__factory"); +Object.defineProperty(exports, "ReverseRegistrar__factory", { enumerable: true, get: function () { return ReverseRegistrar__factory_1.ReverseRegistrar__factory; } }); diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/index.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/index.d.ts new file mode 100644 index 00000000..b8afde0b --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/index.d.ts @@ -0,0 +1,4 @@ +export * as reverseRegistrarSol from "./ReverseRegistrar.sol"; +export { IReverseRegistrar__factory } from "./IReverseRegistrar__factory"; +export { ReverseClaimer__factory } from "./ReverseClaimer__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/index.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/index.d.ts.map new file mode 100644 index 00000000..4efd3a7b --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,mBAAmB,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/index.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/index.js new file mode 100644 index 00000000..55302057 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/index.js @@ -0,0 +1,31 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ReverseClaimer__factory = exports.IReverseRegistrar__factory = exports.reverseRegistrarSol = void 0; +exports.reverseRegistrarSol = __importStar(require("./ReverseRegistrar.sol")); +var IReverseRegistrar__factory_1 = require("./IReverseRegistrar__factory"); +Object.defineProperty(exports, "IReverseRegistrar__factory", { enumerable: true, get: function () { return IReverseRegistrar__factory_1.IReverseRegistrar__factory; } }); +var ReverseClaimer__factory_1 = require("./ReverseClaimer__factory"); +Object.defineProperty(exports, "ReverseClaimer__factory", { enumerable: true, get: function () { return ReverseClaimer__factory_1.ReverseClaimer__factory; } }); diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/root/Controllable__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/root/Controllable__factory.d.ts new file mode 100644 index 00000000..60ccf995 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/root/Controllable__factory.d.ts @@ -0,0 +1,107 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../../../common"; +import type { Controllable, ControllableInterface } from "../../../../../@ensdomains/ens-contracts/contracts/root/Controllable"; +declare type ControllableConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class Controllable__factory extends ContractFactory { + constructor(...args: ControllableConstructorParams); + getDeployTransaction(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): Controllable__factory; + static readonly bytecode = "0x608060405234801561001057600080fd5b5061001a3361001f565b61006f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6103098061007e6000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c8063715018a61461005c5780638da5cb5b14610066578063da8c229e14610086578063e0dba60f146100b9578063f2fde38b146100cc575b600080fd5b6100646100df565b005b6000546040516001600160a01b0390911681526020015b60405180910390f35b6100a961009436600461029e565b60016020526000908152604090205460ff1681565b604051901515815260200161007d565b6100646100c73660046102c0565b6100f3565b6100646100da36600461029e565b61015a565b6100e76101d8565b6100f16000610232565b565b6100fb6101d8565b6001600160a01b038216600081815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b6101626101d8565b6001600160a01b0381166101cc5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b6101d581610232565b50565b6000546001600160a01b031633146100f15760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016101c3565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80356001600160a01b038116811461029957600080fd5b919050565b6000602082840312156102b057600080fd5b6102b982610282565b9392505050565b600080604083850312156102d357600080fd5b6102dc83610282565b9150602083013580151581146102f157600080fd5b80915050925092905056fea164736f6c6343000811000a"; + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "controller"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "bool"; + readonly name: "enabled"; + readonly type: "bool"; + }]; + readonly name: "ControllerChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "previousOwner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "newOwner"; + readonly type: "address"; + }]; + readonly name: "OwnershipTransferred"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly name: "controllers"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "owner"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "renounceOwnership"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "controller"; + readonly type: "address"; + }, { + readonly internalType: "bool"; + readonly name: "enabled"; + readonly type: "bool"; + }]; + readonly name: "setController"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "newOwner"; + readonly type: "address"; + }]; + readonly name: "transferOwnership"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): ControllableInterface; + static connect(address: string, runner?: ContractRunner | null): Controllable; +} +export {}; +//# sourceMappingURL=Controllable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/root/Controllable__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/root/Controllable__factory.d.ts.map new file mode 100644 index 00000000..16c20f7d --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/root/Controllable__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"Controllable__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/root/Controllable__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,YAAY,EACZ,qBAAqB,EACtB,MAAM,sEAAsE,CAAC;AAoH9E,aAAK,6BAA6B,GAC9B,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,qBAAsB,SAAQ,eAAe;gBAC5C,GAAG,IAAI,EAAE,6BAA6B;IAQzC,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,qBAAqB;IAItE,MAAM,CAAC,QAAQ,CAAC,QAAQ,sxDAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,qBAAqB;IAG/C,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,YAAY;CAGhB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/root/Controllable__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/root/Controllable__factory.js new file mode 100644 index 00000000..de59fb90 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/root/Controllable__factory.js @@ -0,0 +1,144 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.Controllable__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "controller", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "enabled", + type: "bool", + }, + ], + name: "ControllerChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "previousOwner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnershipTransferred", + type: "event", + }, + { + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + name: "controllers", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "renounceOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "controller", + type: "address", + }, + { + internalType: "bool", + name: "enabled", + type: "bool", + }, + ], + name: "setController", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "transferOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +const _bytecode = "0x608060405234801561001057600080fd5b5061001a3361001f565b61006f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6103098061007e6000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c8063715018a61461005c5780638da5cb5b14610066578063da8c229e14610086578063e0dba60f146100b9578063f2fde38b146100cc575b600080fd5b6100646100df565b005b6000546040516001600160a01b0390911681526020015b60405180910390f35b6100a961009436600461029e565b60016020526000908152604090205460ff1681565b604051901515815260200161007d565b6100646100c73660046102c0565b6100f3565b6100646100da36600461029e565b61015a565b6100e76101d8565b6100f16000610232565b565b6100fb6101d8565b6001600160a01b038216600081815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b6101626101d8565b6001600160a01b0381166101cc5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b6101d581610232565b50565b6000546001600160a01b031633146100f15760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016101c3565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80356001600160a01b038116811461029957600080fd5b919050565b6000602082840312156102b057600080fd5b6102b982610282565b9392505050565b600080604083850312156102d357600080fd5b6102dc83610282565b9150602083013580151581146102f157600080fd5b80915050925092905056fea164736f6c6343000811000a"; +const isSuperArgs = (xs) => xs.length > 1; +class Controllable__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(overrides) { + return super.getDeployTransaction(overrides || {}); + } + deploy(overrides) { + return super.deploy(overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.Controllable__factory = Controllable__factory; +Controllable__factory.bytecode = _bytecode; +Controllable__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/root/Root__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/root/Root__factory.d.ts new file mode 100644 index 00000000..26f00fdb --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/root/Root__factory.d.ts @@ -0,0 +1,197 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, AddressLike, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../../../common"; +import type { Root, RootInterface } from "../../../../../@ensdomains/ens-contracts/contracts/root/Root"; +declare type RootConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class Root__factory extends ContractFactory { + constructor(...args: RootConstructorParams); + getDeployTransaction(_ens: AddressLike, overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(_ens: AddressLike, overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): Root__factory; + static readonly bytecode = "0x608060405234801561001057600080fd5b5060405161073e38038061073e83398101604081905261002f916100ad565b6100383361005d565b600280546001600160a01b0319166001600160a01b03929092169190911790556100dd565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000602082840312156100bf57600080fd5b81516001600160a01b03811681146100d657600080fd5b9392505050565b610652806100ec6000396000f3fe608060405234801561001057600080fd5b50600436106100a95760003560e01c80638cb8ecec116100715780638cb8ecec146101425780638da5cb5b14610155578063cbe9e76414610166578063da8c229e14610189578063e0dba60f146101ac578063f2fde38b146101bf57600080fd5b806301670ba9146100ae57806301ffc9a7146100c35780633f15457f146100fc5780634e543b2614610127578063715018a61461013a575b600080fd5b6100c16100bc366004610543565b6101d2565b005b6100e76100d136600461055c565b6001600160e01b0319166301ffc9a760e01b1490565b60405190151581526020015b60405180910390f35b60025461010f906001600160a01b031681565b6040516001600160a01b0390911681526020016100f3565b6100c16101353660046105a9565b610220565b6100c1610291565b6100c16101503660046105c4565b6102a5565b6000546001600160a01b031661010f565b6100e7610174366004610543565b60036020526000908152604090205460ff1681565b6100e76101973660046105a9565b60016020526000908152604090205460ff1681565b6100c16101ba3660046105f0565b6103b9565b6100c16101cd3660046105a9565b610420565b6101da610499565b60405181907f1764176cfa565853ba1ded547a830a9f9bff95231ef6fd228b3ddd617577756990600090a26000908152600360205260409020805460ff19166001179055565b610228610499565b600254604051630c4b7b8560e11b8152600060048201526001600160a01b03838116602483015290911690631896f70a90604401600060405180830381600087803b15801561027657600080fd5b505af115801561028a573d6000803e3d6000fd5b5050505050565b610299610499565b6102a360006104f3565b565b3360009081526001602052604090205460ff1661031a5760405162461bcd60e51b815260206004820152602860248201527f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f604482015267373a3937b63632b960c11b60648201526084015b60405180910390fd5b60008281526003602052604090205460ff161561033657600080fd5b6002546040516306ab592360e01b815260006004820152602481018490526001600160a01b038381166044830152909116906306ab5923906064016020604051808303816000875af1158015610390573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103b4919061062c565b505050565b6103c1610499565b6001600160a01b038216600081815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b610428610499565b6001600160a01b03811661048d5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610311565b610496816104f3565b50565b6000546001600160a01b031633146102a35760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610311565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60006020828403121561055557600080fd5b5035919050565b60006020828403121561056e57600080fd5b81356001600160e01b03198116811461058657600080fd5b9392505050565b80356001600160a01b03811681146105a457600080fd5b919050565b6000602082840312156105bb57600080fd5b6105868261058d565b600080604083850312156105d757600080fd5b823591506105e76020840161058d565b90509250929050565b6000806040838503121561060357600080fd5b61060c8361058d565b91506020830135801515811461062157600080fd5b809150509250929050565b60006020828403121561063e57600080fd5b505191905056fea164736f6c6343000811000a"; + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "contract ENS"; + readonly name: "_ens"; + readonly type: "address"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "constructor"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "controller"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "bool"; + readonly name: "enabled"; + readonly type: "bool"; + }]; + readonly name: "ControllerChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "previousOwner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "newOwner"; + readonly type: "address"; + }]; + readonly name: "OwnershipTransferred"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "label"; + readonly type: "bytes32"; + }]; + readonly name: "TLDLocked"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly name: "controllers"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "ens"; + readonly outputs: readonly [{ + readonly internalType: "contract ENS"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "label"; + readonly type: "bytes32"; + }]; + readonly name: "lock"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly name: "locked"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "owner"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "renounceOwnership"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "controller"; + readonly type: "address"; + }, { + readonly internalType: "bool"; + readonly name: "enabled"; + readonly type: "bool"; + }]; + readonly name: "setController"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }]; + readonly name: "setResolver"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "label"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "setSubnodeOwner"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceID"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "pure"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "newOwner"; + readonly type: "address"; + }]; + readonly name: "transferOwnership"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): RootInterface; + static connect(address: string, runner?: ContractRunner | null): Root; +} +export {}; +//# sourceMappingURL=Root__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/root/Root__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/root/Root__factory.d.ts.map new file mode 100644 index 00000000..ec5e934b --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/root/Root__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"Root__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/root/Root__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,MAAM,EACN,WAAW,EACX,yBAAyB,EACzB,cAAc,EACf,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,IAAI,EACJ,aAAa,EACd,MAAM,8DAA8D,CAAC;AA2OtE,aAAK,qBAAqB,GACtB,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,aAAc,SAAQ,eAAe;gBACpC,GAAG,IAAI,EAAE,qBAAqB;IAQjC,oBAAoB,CAC3B,IAAI,EAAE,WAAW,EACjB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CACb,IAAI,EAAE,WAAW,EACjB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAItB,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,aAAa;IAI9D,MAAM,CAAC,QAAQ,CAAC,QAAQ,ooHAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,aAAa;IAGvC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,IAAI;CAGtE"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/root/Root__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/root/Root__factory.js new file mode 100644 index 00000000..bcf81c12 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/root/Root__factory.js @@ -0,0 +1,263 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.Root__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "contract ENS", + name: "_ens", + type: "address", + }, + ], + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "controller", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "enabled", + type: "bool", + }, + ], + name: "ControllerChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "previousOwner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnershipTransferred", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "label", + type: "bytes32", + }, + ], + name: "TLDLocked", + type: "event", + }, + { + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + name: "controllers", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "ens", + outputs: [ + { + internalType: "contract ENS", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "label", + type: "bytes32", + }, + ], + name: "lock", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + name: "locked", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "renounceOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "controller", + type: "address", + }, + { + internalType: "bool", + name: "enabled", + type: "bool", + }, + ], + name: "setController", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "resolver", + type: "address", + }, + ], + name: "setResolver", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "label", + type: "bytes32", + }, + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "setSubnodeOwner", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceID", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "pure", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "transferOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +const _bytecode = "0x608060405234801561001057600080fd5b5060405161073e38038061073e83398101604081905261002f916100ad565b6100383361005d565b600280546001600160a01b0319166001600160a01b03929092169190911790556100dd565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000602082840312156100bf57600080fd5b81516001600160a01b03811681146100d657600080fd5b9392505050565b610652806100ec6000396000f3fe608060405234801561001057600080fd5b50600436106100a95760003560e01c80638cb8ecec116100715780638cb8ecec146101425780638da5cb5b14610155578063cbe9e76414610166578063da8c229e14610189578063e0dba60f146101ac578063f2fde38b146101bf57600080fd5b806301670ba9146100ae57806301ffc9a7146100c35780633f15457f146100fc5780634e543b2614610127578063715018a61461013a575b600080fd5b6100c16100bc366004610543565b6101d2565b005b6100e76100d136600461055c565b6001600160e01b0319166301ffc9a760e01b1490565b60405190151581526020015b60405180910390f35b60025461010f906001600160a01b031681565b6040516001600160a01b0390911681526020016100f3565b6100c16101353660046105a9565b610220565b6100c1610291565b6100c16101503660046105c4565b6102a5565b6000546001600160a01b031661010f565b6100e7610174366004610543565b60036020526000908152604090205460ff1681565b6100e76101973660046105a9565b60016020526000908152604090205460ff1681565b6100c16101ba3660046105f0565b6103b9565b6100c16101cd3660046105a9565b610420565b6101da610499565b60405181907f1764176cfa565853ba1ded547a830a9f9bff95231ef6fd228b3ddd617577756990600090a26000908152600360205260409020805460ff19166001179055565b610228610499565b600254604051630c4b7b8560e11b8152600060048201526001600160a01b03838116602483015290911690631896f70a90604401600060405180830381600087803b15801561027657600080fd5b505af115801561028a573d6000803e3d6000fd5b5050505050565b610299610499565b6102a360006104f3565b565b3360009081526001602052604090205460ff1661031a5760405162461bcd60e51b815260206004820152602860248201527f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f604482015267373a3937b63632b960c11b60648201526084015b60405180910390fd5b60008281526003602052604090205460ff161561033657600080fd5b6002546040516306ab592360e01b815260006004820152602481018490526001600160a01b038381166044830152909116906306ab5923906064016020604051808303816000875af1158015610390573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103b4919061062c565b505050565b6103c1610499565b6001600160a01b038216600081815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b610428610499565b6001600160a01b03811661048d5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610311565b610496816104f3565b50565b6000546001600160a01b031633146102a35760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610311565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60006020828403121561055557600080fd5b5035919050565b60006020828403121561056e57600080fd5b81356001600160e01b03198116811461058657600080fd5b9392505050565b80356001600160a01b03811681146105a457600080fd5b919050565b6000602082840312156105bb57600080fd5b6105868261058d565b600080604083850312156105d757600080fd5b823591506105e76020840161058d565b90509250929050565b6000806040838503121561060357600080fd5b61060c8361058d565b91506020830135801515811461062157600080fd5b809150509250929050565b60006020828403121561063e57600080fd5b505191905056fea164736f6c6343000811000a"; +const isSuperArgs = (xs) => xs.length > 1; +class Root__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(_ens, overrides) { + return super.getDeployTransaction(_ens, overrides || {}); + } + deploy(_ens, overrides) { + return super.deploy(_ens, overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.Root__factory = Root__factory; +Root__factory.bytecode = _bytecode; +Root__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/root/index.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/root/index.d.ts new file mode 100644 index 00000000..faf056d4 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/root/index.d.ts @@ -0,0 +1,3 @@ +export { Controllable__factory } from "./Controllable__factory"; +export { Root__factory } from "./Root__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/root/index.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/root/index.d.ts.map new file mode 100644 index 00000000..4efe5ee0 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/root/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/root/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/root/index.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/root/index.js new file mode 100644 index 00000000..22d7d77b --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/root/index.js @@ -0,0 +1,7 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.Root__factory = exports.Controllable__factory = void 0; +var Controllable__factory_1 = require("./Controllable__factory"); +Object.defineProperty(exports, "Controllable__factory", { enumerable: true, get: function () { return Controllable__factory_1.Controllable__factory; } }); +var Root__factory_1 = require("./Root__factory"); +Object.defineProperty(exports, "Root__factory", { enumerable: true, get: function () { return Root__factory_1.Root__factory; } }); diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable__factory.d.ts new file mode 100644 index 00000000..cbd89661 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable__factory.d.ts @@ -0,0 +1,82 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../../../common"; +import type { ERC20Recoverable, ERC20RecoverableInterface } from "../../../../../@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable"; +declare type ERC20RecoverableConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class ERC20Recoverable__factory extends ContractFactory { + constructor(...args: ERC20RecoverableConstructorParams); + getDeployTransaction(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): ERC20Recoverable__factory; + static readonly bytecode = "0x608060405234801561001057600080fd5b5061001a3361001f565b61006f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6103068061007e6000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c80635d3590d514610051578063715018a6146100665780638da5cb5b1461006e578063f2fde38b1461008d575b600080fd5b61006461005f366004610279565b6100a0565b005b610064610121565b600054604080516001600160a01b039092168252519081900360200190f35b61006461009b3660046102b5565b610135565b6100a86101b3565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303816000875af11580156100f7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061011b91906102d7565b50505050565b6101296101b3565b610133600061020d565b565b61013d6101b3565b6001600160a01b0381166101a75760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b6101b08161020d565b50565b6000546001600160a01b031633146101335760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161019e565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80356001600160a01b038116811461027457600080fd5b919050565b60008060006060848603121561028e57600080fd5b6102978461025d565b92506102a56020850161025d565b9150604084013590509250925092565b6000602082840312156102c757600080fd5b6102d08261025d565b9392505050565b6000602082840312156102e957600080fd5b815180151581146102d057600080fdfea164736f6c6343000811000a"; + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "previousOwner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "newOwner"; + readonly type: "address"; + }]; + readonly name: "OwnershipTransferred"; + readonly type: "event"; + }, { + readonly inputs: readonly []; + readonly name: "owner"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "_token"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "_to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "_amount"; + readonly type: "uint256"; + }]; + readonly name: "recoverFunds"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "renounceOwnership"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "newOwner"; + readonly type: "address"; + }]; + readonly name: "transferOwnership"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): ERC20RecoverableInterface; + static connect(address: string, runner?: ContractRunner | null): ERC20Recoverable; +} +export {}; +//# sourceMappingURL=ERC20Recoverable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable__factory.d.ts.map new file mode 100644 index 00000000..96ddacef --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ERC20Recoverable__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,gBAAgB,EAChB,yBAAyB,EAC1B,MAAM,2EAA2E,CAAC;AAmFnF,aAAK,iCAAiC,GAClC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,yBAA0B,SAAQ,eAAe;gBAChD,GAAG,IAAI,EAAE,iCAAiC;IAQ7C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,yBAAyB;IAI1E,MAAM,CAAC,QAAQ,CAAC,QAAQ,gxDAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,yBAAyB;IAGnD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,gBAAgB;CAGpB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable__factory.js new file mode 100644 index 00000000..1943b780 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable__factory.js @@ -0,0 +1,111 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ERC20Recoverable__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "previousOwner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnershipTransferred", + type: "event", + }, + { + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "_token", + type: "address", + }, + { + internalType: "address", + name: "_to", + type: "address", + }, + { + internalType: "uint256", + name: "_amount", + type: "uint256", + }, + ], + name: "recoverFunds", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "renounceOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "transferOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +const _bytecode = "0x608060405234801561001057600080fd5b5061001a3361001f565b61006f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6103068061007e6000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c80635d3590d514610051578063715018a6146100665780638da5cb5b1461006e578063f2fde38b1461008d575b600080fd5b61006461005f366004610279565b6100a0565b005b610064610121565b600054604080516001600160a01b039092168252519081900360200190f35b61006461009b3660046102b5565b610135565b6100a86101b3565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303816000875af11580156100f7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061011b91906102d7565b50505050565b6101296101b3565b610133600061020d565b565b61013d6101b3565b6001600160a01b0381166101a75760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b6101b08161020d565b50565b6000546001600160a01b031633146101335760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161019e565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80356001600160a01b038116811461027457600080fd5b919050565b60008060006060848603121561028e57600080fd5b6102978461025d565b92506102a56020850161025d565b9150604084013590509250925092565b6000602082840312156102c757600080fd5b6102d08261025d565b9392505050565b6000602082840312156102e957600080fd5b815180151581146102d057600080fdfea164736f6c6343000811000a"; +const isSuperArgs = (xs) => xs.length > 1; +class ERC20Recoverable__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(overrides) { + return super.getDeployTransaction(overrides || {}); + } + deploy(overrides) { + return super.deploy(overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.ERC20Recoverable__factory = ERC20Recoverable__factory; +ERC20Recoverable__factory.bytecode = _bytecode; +ERC20Recoverable__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/utils/index.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/utils/index.d.ts new file mode 100644 index 00000000..803f070f --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/utils/index.d.ts @@ -0,0 +1,2 @@ +export { ERC20Recoverable__factory } from "./ERC20Recoverable__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/utils/index.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/utils/index.d.ts.map new file mode 100644 index 00000000..ca35c472 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/utils/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/utils/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/utils/index.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/utils/index.js new file mode 100644 index 00000000..ba855552 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/utils/index.js @@ -0,0 +1,5 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ERC20Recoverable__factory = void 0; +var ERC20Recoverable__factory_1 = require("./ERC20Recoverable__factory"); +Object.defineProperty(exports, "ERC20Recoverable__factory", { enumerable: true, get: function () { return ERC20Recoverable__factory_1.ERC20Recoverable__factory; } }); diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/Controllable__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/Controllable__factory.d.ts new file mode 100644 index 00000000..315473ef --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/Controllable__factory.d.ts @@ -0,0 +1,107 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../../../common"; +import type { Controllable, ControllableInterface } from "../../../../../@ensdomains/ens-contracts/contracts/wrapper/Controllable"; +declare type ControllableConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class Controllable__factory extends ContractFactory { + constructor(...args: ControllableConstructorParams); + getDeployTransaction(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): Controllable__factory; + static readonly bytecode = "0x608060405234801561001057600080fd5b5061001a3361001f565b61006f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6103098061007e6000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c8063715018a61461005c5780638da5cb5b14610066578063da8c229e14610086578063e0dba60f146100b9578063f2fde38b146100cc575b600080fd5b6100646100df565b005b6000546040516001600160a01b0390911681526020015b60405180910390f35b6100a961009436600461029e565b60016020526000908152604090205460ff1681565b604051901515815260200161007d565b6100646100c73660046102c0565b6100f3565b6100646100da36600461029e565b61015a565b6100e76101d8565b6100f16000610232565b565b6100fb6101d8565b6001600160a01b038216600081815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b6101626101d8565b6001600160a01b0381166101cc5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b6101d581610232565b50565b6000546001600160a01b031633146100f15760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016101c3565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80356001600160a01b038116811461029957600080fd5b919050565b6000602082840312156102b057600080fd5b6102b982610282565b9392505050565b600080604083850312156102d357600080fd5b6102dc83610282565b9150602083013580151581146102f157600080fd5b80915050925092905056fea164736f6c6343000811000a"; + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "controller"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "bool"; + readonly name: "active"; + readonly type: "bool"; + }]; + readonly name: "ControllerChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "previousOwner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "newOwner"; + readonly type: "address"; + }]; + readonly name: "OwnershipTransferred"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly name: "controllers"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "owner"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "renounceOwnership"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "controller"; + readonly type: "address"; + }, { + readonly internalType: "bool"; + readonly name: "active"; + readonly type: "bool"; + }]; + readonly name: "setController"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "newOwner"; + readonly type: "address"; + }]; + readonly name: "transferOwnership"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): ControllableInterface; + static connect(address: string, runner?: ContractRunner | null): Controllable; +} +export {}; +//# sourceMappingURL=Controllable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/Controllable__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/Controllable__factory.d.ts.map new file mode 100644 index 00000000..1d733df5 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/Controllable__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"Controllable__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/wrapper/Controllable__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,YAAY,EACZ,qBAAqB,EACtB,MAAM,yEAAyE,CAAC;AAoHjF,aAAK,6BAA6B,GAC9B,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,qBAAsB,SAAQ,eAAe;gBAC5C,GAAG,IAAI,EAAE,6BAA6B;IAQzC,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,qBAAqB;IAItE,MAAM,CAAC,QAAQ,CAAC,QAAQ,sxDAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,qBAAqB;IAG/C,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,YAAY;CAGhB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/Controllable__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/Controllable__factory.js new file mode 100644 index 00000000..922055b5 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/Controllable__factory.js @@ -0,0 +1,144 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.Controllable__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "controller", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "active", + type: "bool", + }, + ], + name: "ControllerChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "previousOwner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnershipTransferred", + type: "event", + }, + { + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + name: "controllers", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "renounceOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "controller", + type: "address", + }, + { + internalType: "bool", + name: "active", + type: "bool", + }, + ], + name: "setController", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "transferOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +const _bytecode = "0x608060405234801561001057600080fd5b5061001a3361001f565b61006f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6103098061007e6000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c8063715018a61461005c5780638da5cb5b14610066578063da8c229e14610086578063e0dba60f146100b9578063f2fde38b146100cc575b600080fd5b6100646100df565b005b6000546040516001600160a01b0390911681526020015b60405180910390f35b6100a961009436600461029e565b60016020526000908152604090205460ff1681565b604051901515815260200161007d565b6100646100c73660046102c0565b6100f3565b6100646100da36600461029e565b61015a565b6100e76101d8565b6100f16000610232565b565b6100fb6101d8565b6001600160a01b038216600081815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b6101626101d8565b6001600160a01b0381166101cc5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b6101d581610232565b50565b6000546001600160a01b031633146100f15760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016101c3565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80356001600160a01b038116811461029957600080fd5b919050565b6000602082840312156102b057600080fd5b6102b982610282565b9392505050565b600080604083850312156102d357600080fd5b6102dc83610282565b9150602083013580151581146102f157600080fd5b80915050925092905056fea164736f6c6343000811000a"; +const isSuperArgs = (xs) => xs.length > 1; +class Controllable__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(overrides) { + return super.getDeployTransaction(overrides || {}); + } + deploy(overrides) { + return super.deploy(overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.Controllable__factory = Controllable__factory; +Controllable__factory.bytecode = _bytecode; +Controllable__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse__factory.d.ts new file mode 100644 index 00000000..c8d85cb6 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse__factory.d.ts @@ -0,0 +1,349 @@ +import { type ContractRunner } from "ethers"; +import type { ERC1155Fuse, ERC1155FuseInterface } from "../../../../../@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse"; +export declare class ERC1155Fuse__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "approved"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Approval"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "ApprovalForAll"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "uint256[]"; + readonly name: "ids"; + readonly type: "uint256[]"; + }, { + readonly indexed: false; + readonly internalType: "uint256[]"; + readonly name: "values"; + readonly type: "uint256[]"; + }]; + readonly name: "TransferBatch"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "value"; + readonly type: "uint256"; + }]; + readonly name: "TransferSingle"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }]; + readonly name: "URI"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly name: "_tokens"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "approve"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }]; + readonly name: "balanceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address[]"; + readonly name: "accounts"; + readonly type: "address[]"; + }, { + readonly internalType: "uint256[]"; + readonly name: "ids"; + readonly type: "uint256[]"; + }]; + readonly name: "balanceOfBatch"; + readonly outputs: readonly [{ + readonly internalType: "uint256[]"; + readonly name: ""; + readonly type: "uint256[]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getApproved"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getData"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "uint32"; + readonly name: "fuses"; + readonly type: "uint32"; + }, { + readonly internalType: "uint64"; + readonly name: "expiry"; + readonly type: "uint64"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly name: "isApprovedForAll"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }]; + readonly name: "ownerOf"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256[]"; + readonly name: "ids"; + readonly type: "uint256[]"; + }, { + readonly internalType: "uint256[]"; + readonly name: "amounts"; + readonly type: "uint256[]"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "safeBatchTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "amount"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "setApprovalForAll"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }]; + readonly name: "uri"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): ERC1155FuseInterface; + static connect(address: string, runner?: ContractRunner | null): ERC1155Fuse; +} +//# sourceMappingURL=ERC1155Fuse__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse__factory.d.ts.map new file mode 100644 index 00000000..0e9fd0ba --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ERC1155Fuse__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,WAAW,EACX,oBAAoB,EACrB,MAAM,wEAAwE,CAAC;AA8bhF,qBAAa,oBAAoB;IAC/B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,oBAAoB;IAG9C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,WAAW;CAG7E"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse__factory.js new file mode 100644 index 00000000..2fa39798 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse__factory.js @@ -0,0 +1,457 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ERC1155Fuse__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "approved", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Approval", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "ApprovalForAll", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: false, + internalType: "uint256[]", + name: "ids", + type: "uint256[]", + }, + { + indexed: false, + internalType: "uint256[]", + name: "values", + type: "uint256[]", + }, + ], + name: "TransferBatch", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "TransferSingle", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "string", + name: "value", + type: "string", + }, + { + indexed: true, + internalType: "uint256", + name: "id", + type: "uint256", + }, + ], + name: "URI", + type: "event", + }, + { + inputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + name: "_tokens", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "approve", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address[]", + name: "accounts", + type: "address[]", + }, + { + internalType: "uint256[]", + name: "ids", + type: "uint256[]", + }, + ], + name: "balanceOfBatch", + outputs: [ + { + internalType: "uint256[]", + name: "", + type: "uint256[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getApproved", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getData", + outputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "uint32", + name: "fuses", + type: "uint32", + }, + { + internalType: "uint64", + name: "expiry", + type: "uint64", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + name: "isApprovedForAll", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + ], + name: "ownerOf", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256[]", + name: "ids", + type: "uint256[]", + }, + { + internalType: "uint256[]", + name: "amounts", + type: "uint256[]", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "safeBatchTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "setApprovalForAll", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + ], + name: "uri", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class ERC1155Fuse__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.ERC1155Fuse__factory = ERC1155Fuse__factory; +ERC1155Fuse__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService__factory.d.ts new file mode 100644 index 00000000..787d02a7 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService__factory.d.ts @@ -0,0 +1,22 @@ +import { type ContractRunner } from "ethers"; +import type { IMetadataService, IMetadataServiceInterface } from "../../../../../@ensdomains/ens-contracts/contracts/wrapper/IMetadataService"; +export declare class IMetadataService__factory { + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly name: "uri"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): IMetadataServiceInterface; + static connect(address: string, runner?: ContractRunner | null): IMetadataService; +} +//# sourceMappingURL=IMetadataService__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService__factory.d.ts.map new file mode 100644 index 00000000..b993e8ee --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IMetadataService__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,gBAAgB,EAChB,yBAAyB,EAC1B,MAAM,6EAA6E,CAAC;AAwBrF,qBAAa,yBAAyB;IACpC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,yBAAyB;IAGnD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,gBAAgB;CAGpB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService__factory.js new file mode 100644 index 00000000..02044446 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService__factory.js @@ -0,0 +1,35 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IMetadataService__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + name: "uri", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class IMetadataService__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IMetadataService__factory = IMetadataService__factory; +IMetadataService__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade__factory.d.ts new file mode 100644 index 00000000..629a1a73 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade__factory.d.ts @@ -0,0 +1,38 @@ +import { type ContractRunner } from "ethers"; +import type { INameWrapperUpgrade, INameWrapperUpgradeInterface } from "../../../../../@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade"; +export declare class INameWrapperUpgrade__factory { + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "bytes"; + readonly name: "name"; + readonly type: "bytes"; + }, { + readonly internalType: "address"; + readonly name: "wrappedOwner"; + readonly type: "address"; + }, { + readonly internalType: "uint32"; + readonly name: "fuses"; + readonly type: "uint32"; + }, { + readonly internalType: "uint64"; + readonly name: "expiry"; + readonly type: "uint64"; + }, { + readonly internalType: "address"; + readonly name: "approved"; + readonly type: "address"; + }, { + readonly internalType: "bytes"; + readonly name: "extraData"; + readonly type: "bytes"; + }]; + readonly name: "wrapFromUpgrade"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): INameWrapperUpgradeInterface; + static connect(address: string, runner?: ContractRunner | null): INameWrapperUpgrade; +} +//# sourceMappingURL=INameWrapperUpgrade__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade__factory.d.ts.map new file mode 100644 index 00000000..bc3ea13e --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"INameWrapperUpgrade__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,mBAAmB,EACnB,4BAA4B,EAC7B,MAAM,gFAAgF,CAAC;AA2CxF,qBAAa,4BAA4B;IACvC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,4BAA4B;IAGtD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,mBAAmB;CAOvB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade__factory.js new file mode 100644 index 00000000..27fadbaa --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade__factory.js @@ -0,0 +1,54 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.INameWrapperUpgrade__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "bytes", + name: "name", + type: "bytes", + }, + { + internalType: "address", + name: "wrappedOwner", + type: "address", + }, + { + internalType: "uint32", + name: "fuses", + type: "uint32", + }, + { + internalType: "uint64", + name: "expiry", + type: "uint64", + }, + { + internalType: "address", + name: "approved", + type: "address", + }, + { + internalType: "bytes", + name: "extraData", + type: "bytes", + }, + ], + name: "wrapFromUpgrade", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +class INameWrapperUpgrade__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.INameWrapperUpgrade__factory = INameWrapperUpgrade__factory; +INameWrapperUpgrade__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper__factory.d.ts new file mode 100644 index 00000000..7f35ad7c --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper__factory.d.ts @@ -0,0 +1,864 @@ +import { type ContractRunner } from "ethers"; +import type { INameWrapper, INameWrapperInterface } from "../../../../../@ensdomains/ens-contracts/contracts/wrapper/INameWrapper"; +export declare class INameWrapper__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "ApprovalForAll"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "uint64"; + readonly name: "expiry"; + readonly type: "uint64"; + }]; + readonly name: "ExpiryExtended"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "uint32"; + readonly name: "fuses"; + readonly type: "uint32"; + }]; + readonly name: "FusesSet"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "NameUnwrapped"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "bytes"; + readonly name: "name"; + readonly type: "bytes"; + }, { + readonly indexed: false; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "uint32"; + readonly name: "fuses"; + readonly type: "uint32"; + }, { + readonly indexed: false; + readonly internalType: "uint64"; + readonly name: "expiry"; + readonly type: "uint64"; + }]; + readonly name: "NameWrapped"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "uint256[]"; + readonly name: "ids"; + readonly type: "uint256[]"; + }, { + readonly indexed: false; + readonly internalType: "uint256[]"; + readonly name: "values"; + readonly type: "uint256[]"; + }]; + readonly name: "TransferBatch"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "value"; + readonly type: "uint256"; + }]; + readonly name: "TransferSingle"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }]; + readonly name: "URI"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint32"; + readonly name: "fuseMask"; + readonly type: "uint32"; + }]; + readonly name: "allFusesBurned"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "approve"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }]; + readonly name: "balanceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address[]"; + readonly name: "accounts"; + readonly type: "address[]"; + }, { + readonly internalType: "uint256[]"; + readonly name: "ids"; + readonly type: "uint256[]"; + }]; + readonly name: "balanceOfBatch"; + readonly outputs: readonly [{ + readonly internalType: "uint256[]"; + readonly name: ""; + readonly type: "uint256[]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }]; + readonly name: "canModifyName"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "ens"; + readonly outputs: readonly [{ + readonly internalType: "contract ENS"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes32"; + readonly name: "labelhash"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint64"; + readonly name: "expiry"; + readonly type: "uint64"; + }]; + readonly name: "extendExpiry"; + readonly outputs: readonly [{ + readonly internalType: "uint64"; + readonly name: ""; + readonly type: "uint64"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getApproved"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }]; + readonly name: "getData"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }, { + readonly internalType: "uint32"; + readonly name: ""; + readonly type: "uint32"; + }, { + readonly internalType: "uint64"; + readonly name: ""; + readonly type: "uint64"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly name: "isApprovedForAll"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly name: "isWrapped"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly name: "isWrapped"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "metadataService"; + readonly outputs: readonly [{ + readonly internalType: "contract IMetadataService"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "name"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly name: "names"; + readonly outputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }]; + readonly name: "ownerOf"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }, { + readonly internalType: "address"; + readonly name: "wrappedOwner"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "duration"; + readonly type: "uint256"; + }, { + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }, { + readonly internalType: "uint16"; + readonly name: "ownerControlledFuses"; + readonly type: "uint16"; + }]; + readonly name: "registerAndWrapETH2LD"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "registrarExpiry"; + readonly type: "uint256"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "registrar"; + readonly outputs: readonly [{ + readonly internalType: "contract IBaseRegistrar"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "labelHash"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "duration"; + readonly type: "uint256"; + }]; + readonly name: "renew"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "expires"; + readonly type: "uint256"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256[]"; + readonly name: "ids"; + readonly type: "uint256[]"; + }, { + readonly internalType: "uint256[]"; + readonly name: "amounts"; + readonly type: "uint256[]"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "safeBatchTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "amount"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "setApprovalForAll"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "parentNode"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes32"; + readonly name: "labelhash"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint32"; + readonly name: "fuses"; + readonly type: "uint32"; + }, { + readonly internalType: "uint64"; + readonly name: "expiry"; + readonly type: "uint64"; + }]; + readonly name: "setChildFuses"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint16"; + readonly name: "ownerControlledFuses"; + readonly type: "uint16"; + }]; + readonly name: "setFuses"; + readonly outputs: readonly [{ + readonly internalType: "uint32"; + readonly name: "newFuses"; + readonly type: "uint32"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "contract IMetadataService"; + readonly name: "_metadataService"; + readonly type: "address"; + }]; + readonly name: "setMetadataService"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }, { + readonly internalType: "uint64"; + readonly name: "ttl"; + readonly type: "uint64"; + }]; + readonly name: "setRecord"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }]; + readonly name: "setResolver"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }, { + readonly internalType: "address"; + readonly name: "newOwner"; + readonly type: "address"; + }, { + readonly internalType: "uint32"; + readonly name: "fuses"; + readonly type: "uint32"; + }, { + readonly internalType: "uint64"; + readonly name: "expiry"; + readonly type: "uint64"; + }]; + readonly name: "setSubnodeOwner"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }, { + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }, { + readonly internalType: "uint64"; + readonly name: "ttl"; + readonly type: "uint64"; + }, { + readonly internalType: "uint32"; + readonly name: "fuses"; + readonly type: "uint32"; + }, { + readonly internalType: "uint64"; + readonly name: "expiry"; + readonly type: "uint64"; + }]; + readonly name: "setSubnodeRecord"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint64"; + readonly name: "ttl"; + readonly type: "uint64"; + }]; + readonly name: "setTTL"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "contract INameWrapperUpgrade"; + readonly name: "_upgradeAddress"; + readonly type: "address"; + }]; + readonly name: "setUpgradeContract"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceID"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes32"; + readonly name: "label"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "unwrap"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "label"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "newRegistrant"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "newController"; + readonly type: "address"; + }]; + readonly name: "unwrapETH2LD"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes"; + readonly name: "name"; + readonly type: "bytes"; + }, { + readonly internalType: "bytes"; + readonly name: "extraData"; + readonly type: "bytes"; + }]; + readonly name: "upgrade"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "upgradeContract"; + readonly outputs: readonly [{ + readonly internalType: "contract INameWrapperUpgrade"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "uri"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes"; + readonly name: "name"; + readonly type: "bytes"; + }, { + readonly internalType: "address"; + readonly name: "wrappedOwner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }]; + readonly name: "wrap"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }, { + readonly internalType: "address"; + readonly name: "wrappedOwner"; + readonly type: "address"; + }, { + readonly internalType: "uint16"; + readonly name: "ownerControlledFuses"; + readonly type: "uint16"; + }, { + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }]; + readonly name: "wrapETH2LD"; + readonly outputs: readonly [{ + readonly internalType: "uint64"; + readonly name: "expires"; + readonly type: "uint64"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): INameWrapperInterface; + static connect(address: string, runner?: ContractRunner | null): INameWrapper; +} +//# sourceMappingURL=INameWrapper__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper__factory.d.ts.map new file mode 100644 index 00000000..3c31ffc9 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"INameWrapper__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,YAAY,EACZ,qBAAqB,EACtB,MAAM,yEAAyE,CAAC;AA0lCjF,qBAAa,qBAAqB;IAChC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,qBAAqB;IAG/C,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,YAAY;CAGhB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper__factory.js new file mode 100644 index 00000000..9ab7db4e --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper__factory.js @@ -0,0 +1,1125 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.INameWrapper__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "ApprovalForAll", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint64", + name: "expiry", + type: "uint64", + }, + ], + name: "ExpiryExtended", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint32", + name: "fuses", + type: "uint32", + }, + ], + name: "FusesSet", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "NameUnwrapped", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "bytes", + name: "name", + type: "bytes", + }, + { + indexed: false, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: false, + internalType: "uint32", + name: "fuses", + type: "uint32", + }, + { + indexed: false, + internalType: "uint64", + name: "expiry", + type: "uint64", + }, + ], + name: "NameWrapped", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: false, + internalType: "uint256[]", + name: "ids", + type: "uint256[]", + }, + { + indexed: false, + internalType: "uint256[]", + name: "values", + type: "uint256[]", + }, + ], + name: "TransferBatch", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "TransferSingle", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "string", + name: "value", + type: "string", + }, + { + indexed: true, + internalType: "uint256", + name: "id", + type: "uint256", + }, + ], + name: "URI", + type: "event", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "uint32", + name: "fuseMask", + type: "uint32", + }, + ], + name: "allFusesBurned", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "approve", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address[]", + name: "accounts", + type: "address[]", + }, + { + internalType: "uint256[]", + name: "ids", + type: "uint256[]", + }, + ], + name: "balanceOfBatch", + outputs: [ + { + internalType: "uint256[]", + name: "", + type: "uint256[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "canModifyName", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "ens", + outputs: [ + { + internalType: "contract ENS", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "labelhash", + type: "bytes32", + }, + { + internalType: "uint64", + name: "expiry", + type: "uint64", + }, + ], + name: "extendExpiry", + outputs: [ + { + internalType: "uint64", + name: "", + type: "uint64", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getApproved", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + ], + name: "getData", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + { + internalType: "uint32", + name: "", + type: "uint32", + }, + { + internalType: "uint64", + name: "", + type: "uint64", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + name: "isApprovedForAll", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + name: "isWrapped", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + name: "isWrapped", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "metadataService", + outputs: [ + { + internalType: "contract IMetadataService", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "name", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + name: "names", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + ], + name: "ownerOf", + outputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "label", + type: "string", + }, + { + internalType: "address", + name: "wrappedOwner", + type: "address", + }, + { + internalType: "uint256", + name: "duration", + type: "uint256", + }, + { + internalType: "address", + name: "resolver", + type: "address", + }, + { + internalType: "uint16", + name: "ownerControlledFuses", + type: "uint16", + }, + ], + name: "registerAndWrapETH2LD", + outputs: [ + { + internalType: "uint256", + name: "registrarExpiry", + type: "uint256", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "registrar", + outputs: [ + { + internalType: "contract IBaseRegistrar", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "labelHash", + type: "uint256", + }, + { + internalType: "uint256", + name: "duration", + type: "uint256", + }, + ], + name: "renew", + outputs: [ + { + internalType: "uint256", + name: "expires", + type: "uint256", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256[]", + name: "ids", + type: "uint256[]", + }, + { + internalType: "uint256[]", + name: "amounts", + type: "uint256[]", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "safeBatchTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "setApprovalForAll", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "parentNode", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "labelhash", + type: "bytes32", + }, + { + internalType: "uint32", + name: "fuses", + type: "uint32", + }, + { + internalType: "uint64", + name: "expiry", + type: "uint64", + }, + ], + name: "setChildFuses", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "uint16", + name: "ownerControlledFuses", + type: "uint16", + }, + ], + name: "setFuses", + outputs: [ + { + internalType: "uint32", + name: "newFuses", + type: "uint32", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "contract IMetadataService", + name: "_metadataService", + type: "address", + }, + ], + name: "setMetadataService", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "resolver", + type: "address", + }, + { + internalType: "uint64", + name: "ttl", + type: "uint64", + }, + ], + name: "setRecord", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "address", + name: "resolver", + type: "address", + }, + ], + name: "setResolver", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + { + internalType: "address", + name: "newOwner", + type: "address", + }, + { + internalType: "uint32", + name: "fuses", + type: "uint32", + }, + { + internalType: "uint64", + name: "expiry", + type: "uint64", + }, + ], + name: "setSubnodeOwner", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "resolver", + type: "address", + }, + { + internalType: "uint64", + name: "ttl", + type: "uint64", + }, + { + internalType: "uint32", + name: "fuses", + type: "uint32", + }, + { + internalType: "uint64", + name: "expiry", + type: "uint64", + }, + ], + name: "setSubnodeRecord", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "uint64", + name: "ttl", + type: "uint64", + }, + ], + name: "setTTL", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "contract INameWrapperUpgrade", + name: "_upgradeAddress", + type: "address", + }, + ], + name: "setUpgradeContract", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceID", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "label", + type: "bytes32", + }, + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "unwrap", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "label", + type: "bytes32", + }, + { + internalType: "address", + name: "newRegistrant", + type: "address", + }, + { + internalType: "address", + name: "newController", + type: "address", + }, + ], + name: "unwrapETH2LD", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes", + name: "name", + type: "bytes", + }, + { + internalType: "bytes", + name: "extraData", + type: "bytes", + }, + ], + name: "upgrade", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "upgradeContract", + outputs: [ + { + internalType: "contract INameWrapperUpgrade", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "uri", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes", + name: "name", + type: "bytes", + }, + { + internalType: "address", + name: "wrappedOwner", + type: "address", + }, + { + internalType: "address", + name: "resolver", + type: "address", + }, + ], + name: "wrap", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "label", + type: "string", + }, + { + internalType: "address", + name: "wrappedOwner", + type: "address", + }, + { + internalType: "uint16", + name: "ownerControlledFuses", + type: "uint16", + }, + { + internalType: "address", + name: "resolver", + type: "address", + }, + ], + name: "wrapETH2LD", + outputs: [ + { + internalType: "uint64", + name: "expires", + type: "uint64", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, +]; +class INameWrapper__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.INameWrapper__factory = INameWrapper__factory; +INameWrapper__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper__factory.d.ts new file mode 100644 index 00000000..e9bb0beb --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper__factory.d.ts @@ -0,0 +1,1143 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, AddressLike, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../../../common"; +import type { NameWrapper, NameWrapperInterface } from "../../../../../@ensdomains/ens-contracts/contracts/wrapper/NameWrapper"; +declare type NameWrapperConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class NameWrapper__factory extends ContractFactory { + constructor(...args: NameWrapperConstructorParams); + getDeployTransaction(_ens: AddressLike, _registrar: AddressLike, _metadataService: AddressLike, overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(_ens: AddressLike, _registrar: AddressLike, _metadataService: AddressLike, overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): NameWrapper__factory; + static readonly bytecode = "0x60c06040523480156200001157600080fd5b5060405162005d2338038062005d238339810160408190526200003491620002f8565b823362000041816200028f565b6040516302571be360e01b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e260048201526000906001600160a01b038416906302571be390602401602060405180830381865afa158015620000a9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620000cf91906200034c565b604051630f41a04d60e11b81526001600160a01b03848116600483015291925090821690631e83409a906024016020604051808303816000875af11580156200011c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000142919062000373565b505050506001600160a01b0383811660805282811660a052600580546001600160a01b031916918316919091179055600163fffeffff60a01b03197fafa26c20e8b3d9a2853d642cfe1021dae26242ffedfac91c97aab212c1a4b93b8190557fa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb4955604080518082019091526001815260006020808301829052908052600690527f54cdd369e4e8a8515e52ca72ec816c2101831ad1f18bf44102ed171459c9b4f89062000210908262000432565b506040805180820190915260058152626cae8d60e31b6020808301919091527f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae600052600690527ffb9e8e321b8a5ec48f12a7b41f22c6e595d761285c9eb19d8dda7c99edf1b54f9062000285908262000432565b50505050620004fe565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b0381168114620002f557600080fd5b50565b6000806000606084860312156200030e57600080fd5b83516200031b81620002df565b60208501519093506200032e81620002df565b60408501519092506200034181620002df565b809150509250925092565b6000602082840312156200035f57600080fd5b81516200036c81620002df565b9392505050565b6000602082840312156200038657600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b600181811c90821680620003b857607f821691505b602082108103620003d957634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200042d57600081815260208120601f850160051c81016020861015620004085750805b601f850160051c820191505b81811015620004295782815560010162000414565b5050505b505050565b81516001600160401b038111156200044e576200044e6200038d565b62000466816200045f8454620003a3565b84620003df565b602080601f8311600181146200049e5760008415620004855750858301515b600019600386901b1c1916600185901b17855562000429565b600085815260208120601f198616915b82811015620004cf57888601518255948401946001909101908401620004ae565b5085821015620004ee5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60805160a0516157186200060b6000396000818161047301528181610aee01528181610b9101528181610c20015281816118c60152818161195c01528181611a0a01528181611adc01528181611b4d01528181611bd201528181611de601528181611f2201528181612054015281816121ac0152818161223201526129700152600081816104c001528181610a7401528181610d6a01528181610ef901528181610faa015281816112bc01528181611fa7015281816120d9015281816122dd0152818161248f0152818161276001528181612ba901528181612c5701528181612d0c01528181612d8d01528181613298015281816133eb015281816136530152613bff01526157186000f3fe608060405234801561001057600080fd5b506004361061029f5760003560e01c80636352211e11610167578063c93ab3fd116100ce578063e985e9c511610087578063e985e9c5146106d4578063eb8ae530146106e7578063ed70554d146106fa578063f242432a1461071a578063f2fde38b1461072d578063fd0cd0d91461074057600080fd5b8063c93ab3fd14610652578063cf40882314610665578063d8c9921a14610678578063d9a50c121461068b578063da8c229e1461069e578063e0dba60f146106c157600080fd5b8063a22cb46511610120578063a22cb465146105e0578063a4014982146105f3578063adf4960a14610606578063b6bcad2614610619578063c475abff1461062c578063c658e0861461063f57600080fd5b80636352211e146105635780636e5d6ad214610576578063715018a6146105a15780638b4dfa75146105a95780638cf8b41e146105bc5780638da5cb5b146105cf57600080fd5b80631f4e15041161020b5780633f15457f116101c45780633f15457f146104bb578063402906fc146104e257806341415eab1461050a5780634e1273f41461051d578063530954671461053d5780635d3590d51461055057600080fd5b80631f4e15041461043557806320c38e2b1461044857806324c1af441461045b5780632b20e3971461046e5780632eb2c2d61461049557806333c69ea9146104a857600080fd5b80630e4cd7251161025d5780630e4cd725146103aa5780630e89341c146103bd57806314ab9038146103d0578063150b7a02146103e35780631534e1771461040f5780631896f70a1461042257600080fd5b8062fdd58e146102a45780630178fe3f146102ca57806301ffc9a71461031057806306fdde0314610333578063081812fc1461036a578063095ea7b314610395575b600080fd5b6102b76102b236600461444c565b610753565b6040519081526020015b60405180910390f35b6102dd6102d8366004614478565b610800565b604080516001600160a01b03909416845263ffffffff90921660208401526001600160401b0316908201526060016102c1565b61032361031e3660046144a7565b610830565b60405190151581526020016102c1565b61035d6040518060400160405280600b81526020016a2730b6b2abb930b83832b960a91b81525081565b6040516102c19190614514565b61037d610378366004614478565b610870565b6040516001600160a01b0390911681526020016102c1565b6103a86103a336600461444c565b6108b5565b005b6103236103b8366004614527565b6108fb565b61035d6103cb366004614478565b610975565b6103a86103de366004614573565b6109e7565b6103f66103f13660046145e7565b610ae1565b6040516001600160e01b031990911681526020016102c1565b6103a861041d366004614659565b610cc1565b6103a8610430366004614527565b610ceb565b60075461037d906001600160a01b031681565b61035d610456366004614478565b610da1565b6102b761046936600461474f565b610e3b565b61037d7f000000000000000000000000000000000000000000000000000000000000000081565b6103a86104a3366004614875565b611021565b6103a86104b6366004614922565b61125f565b61037d7f000000000000000000000000000000000000000000000000000000000000000081565b6104f56104f036600461497a565b611430565b60405163ffffffff90911681526020016102c1565b610323610518366004614527565b6114cd565b61053061052b36600461499d565b611506565b6040516102c19190614a9a565b60055461037d906001600160a01b031681565b6103a861055e366004614aad565b61162f565b61037d610571366004614478565b6116b0565b610589610584366004614aee565b6116bb565b6040516001600160401b0390911681526020016102c1565b6103a86117ee565b6103a86105b7366004614b23565b611802565b6105896105ca366004614b65565b611928565b6000546001600160a01b031661037d565b6103a86105ee366004614bed565b611ca4565b6102b7610601366004614c1b565b611d7a565b610323610614366004614c9b565b611ebb565b6103a8610627366004614659565b611ee0565b6102b761063a366004614cbe565b612138565b6102b761064d366004614ce0565b6123a2565b6103a8610660366004614d52565b61256a565b6103a8610673366004614dbd565b6126bd565b6103a8610686366004614df5565b612857565b610323610699366004614cbe565b612920565b6103236106ac366004614659565b60046020526000908152604090205460ff1681565b6103a86106cf366004614bed565b6129ff565b6103236106e2366004614e23565b612a67565b6103a86106f5366004614e51565b612a95565b6102b7610708366004614478565b60016020526000908152604090205481565b6103a8610728366004614eb8565b612e39565b6103a861073b366004614659565b612ee6565b61032361074e366004614478565b612f5c565b60006001600160a01b0383166107c45760405162461bcd60e51b815260206004820152602b60248201527f455243313135353a2062616c616e636520717565727920666f7220746865207a60448201526a65726f206164647265737360a81b60648201526084015b60405180910390fd5b60006107cf836116b0565b9050836001600160a01b0316816001600160a01b0316036107f45760019150506107fa565b60009150505b92915050565b60008181526001602052604090205460a081901c60c082901c610824838383613034565b90959094509092509050565b60006001600160e01b03198216631b05885b60e31b148061086157506001600160e01b03198216630a85bd0160e11b145b806107fa57506107fa8261306a565b60008061087c836116b0565b90506001600160a01b0381166108955750600092915050565b6000838152600360205260409020546001600160a01b03165b9392505050565b60006108c082610800565b50915050603f1960408216016108ec5760405163a2a7201360e01b8152600481018390526024016107bb565b6108f683836130ba565b505050565b600080808061090986610800565b925092509250846001600160a01b0316836001600160a01b0316148061093457506109348386612a67565b8061095857506001600160a01b03851661094d87610870565b6001600160a01b0316145b801561096b575061096982826131ca565b155b9695505050505050565b6005546040516303a24d0760e21b8152600481018390526060916001600160a01b031690630e89341c90602401600060405180830381865afa1580156109bf573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526107fa9190810190614f20565b816109f281336114cd565b610a1357803360405163168ab55d60e31b81526004016107bb929190614f97565b8260106000610a2183610800565b5091505063ffffffff8282161615610a4f5760405163a2a7201360e01b8152600481018490526024016107bb565b604051630295720760e31b8152600481018790526001600160401b03861660248201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906314ab9038906044015b600060405180830381600087803b158015610ac157600080fd5b505af1158015610ad5573d6000803e3d6000fd5b50505050505050505050565b6000336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610b2c5760405163032634a760e31b815260040160405180910390fd5b6000808080610b3d86880188614fae565b83516020850120939750919550935091508890808214610b7a576040516331970f3360e21b815260048101829052602481018390526044016107bb565b604051630a3b53db60e21b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906328ed4f6c90610bc89085903090600401614f97565b600060405180830381600087803b158015610be257600080fd5b505af1158015610bf6573d6000803e3d6000fd5b5050604051636b727d4360e11b8152600481018d9052600092506276a70091506001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063d6e4fa8690602401602060405180830381865afa158015610c67573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c8b9190615015565b610c959190615044565b9050610ca887878761ffff1684886131fa565b50630a85bd0160e11b9c9b505050505050505050505050565b610cc961330b565b600580546001600160a01b0319166001600160a01b0392909216919091179055565b81610cf681336114cd565b610d1757803360405163168ab55d60e31b81526004016107bb929190614f97565b8260086000610d2583610800565b5091505063ffffffff8282161615610d535760405163a2a7201360e01b8152600481018490526024016107bb565b604051630c4b7b8560e11b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690631896f70a90610aa79089908990600401614f97565b60066020526000908152604090208054610dba9061506b565b80601f0160208091040260200160405190810160405280929190818152602001828054610de69061506b565b8015610e335780601f10610e0857610100808354040283529160200191610e33565b820191906000526020600020905b815481529060010190602001808311610e1657829003601f168201915b505050505081565b600087610e4881336114cd565b610e6957803360405163168ab55d60e31b81526004016107bb929190614f97565b87516020890120610e7a8a82613365565b9250610e868a84613391565b610e9083866134cf565b610e9b8a848b613502565b50610ea88a8487876135cf565b9350610eb383613615565b610f68576040516305ef2c7f60e41b8152600481018b9052602481018290523060448201526001600160a01b0388811660648301526001600160401b03881660848301527f00000000000000000000000000000000000000000000000000000000000000001690635ef2c7f09060a401600060405180830381600087803b158015610f3d57600080fd5b505af1158015610f51573d6000803e3d6000fd5b50505050610f638a848b8b89896136ce565b611014565b6040516305ef2c7f60e41b8152600481018b9052602481018290523060448201526001600160a01b0388811660648301526001600160401b03881660848301527f00000000000000000000000000000000000000000000000000000000000000001690635ef2c7f09060a401600060405180830381600087803b158015610fee57600080fd5b505af1158015611002573d6000803e3d6000fd5b505050506110148a848b8b8989613705565b5050979650505050505050565b81518351146110835760405162461bcd60e51b815260206004820152602860248201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206044820152670dad2e6dac2e8c6d60c31b60648201526084016107bb565b6001600160a01b0384166110a95760405162461bcd60e51b81526004016107bb906150a5565b6001600160a01b0385163314806110c557506110c58533612a67565b61112c5760405162461bcd60e51b815260206004820152603260248201527f455243313135353a207472616e736665722063616c6c6572206973206e6f74206044820152711bdddb995c881b9bdc88185c1c1c9bdd995960721b60648201526084016107bb565b60005b83518110156111f257600084828151811061114c5761114c6150ea565b60200260200101519050600084838151811061116a5761116a6150ea565b60200260200101519050600080600061118285610800565b9250925092506111938583836137c9565b8360011480156111b457508a6001600160a01b0316836001600160a01b0316145b6111d05760405162461bcd60e51b81526004016107bb90615100565b6111dc858b8484613872565b5050505050806111eb9061514a565b905061112f565b50836001600160a01b0316856001600160a01b0316336001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051611242929190615163565b60405180910390a46112583386868686866138b4565b5050505050565b600061126b8585613365565b905061127781846134cf565b6000808061128484610800565b919450925090506001600160a01b038316158061133357506040516302571be360e01b81526004810185905230906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906302571be390602401602060405180830381865afa158015611303573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113279190615191565b6001600160a01b031614155b1561135157604051635374b59960e01b815260040160405180910390fd5b60008061135d8a610800565b90935091508a90506113995761137386336114cd565b61139457853360405163168ab55d60e31b81526004016107bb929190614f97565b6113c4565b6113a38a336114cd565b6113c457893360405163168ab55d60e31b81526004016107bb929190614f97565b6113cf868984613a0f565b6113da878483613a4a565b9650620100008416158015906113fe57508363ffffffff1688851763ffffffff1614155b1561141f5760405163a2a7201360e01b8152600481018790526024016107bb565b96831796610ad586868a868b613a90565b60008261143d81336114cd565b61145e57803360405163168ab55d60e31b81526004016107bb929190614f97565b836002600061146c83610800565b5091505063ffffffff828216161561149a5760405163a2a7201360e01b8152600481018490526024016107bb565b600080806114a78a610800565b9250925092506114c08a84848c61ffff16178485613a90565b5098975050505050505050565b60008080806114db86610800565b925092509250846001600160a01b0316836001600160a01b0316148061095857506109588386612a67565b6060815183511461156b5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b60648201526084016107bb565b600083516001600160401b0381111561158657611586614676565b6040519080825280602002602001820160405280156115af578160200160208202803683370190505b50905060005b8451811015611627576115fa8582815181106115d3576115d36150ea565b60200260200101518583815181106115ed576115ed6150ea565b6020026020010151610753565b82828151811061160c5761160c6150ea565b60209081029190910101526116208161514a565b90506115b5565b509392505050565b61163761330b565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303816000875af1158015611686573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116aa91906151ae565b50505050565b60006107fa82613b37565b6000806116c88585613365565b90506116d381613615565b6116f057604051635374b59960e01b815260040160405180910390fd5b60006116fc86336108fb565b905080158015611713575061171182336114cd565b155b1561173557813360405163168ab55d60e31b81526004016107bb929190614f97565b6000808061174285610800565b925092509250831580156117595750620400008216155b1561177a5760405163a2a7201360e01b8152600481018690526024016107bb565b60006117858a610800565b92505050611794888383613a4a565b97506117a28685858b613b4d565b6040516001600160401b038916815286907ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b1329060200160405180910390a2509598975050505050505050565b6117f661330b565b6118006000613b63565b565b61181a6000805160206156ec83398151915284613365565b61182481336114cd565b61184557803360405163168ab55d60e31b81526004016107bb929190614f97565b306001600160a01b0384160361187957604051632ca49b0d60e11b81526001600160a01b03841660048201526024016107bb565b61189a6118946000805160206156ec83398151915286613365565b83613bb3565b604051632142170760e11b81523060048201526001600160a01b038481166024830152604482018690527f000000000000000000000000000000000000000000000000000000000000000016906342842e0e90606401600060405180830381600087803b15801561190a57600080fd5b505af115801561191e573d6000803e3d6000fd5b5050505050505050565b600080868660405161193b9291906151cb565b6040519081900381206331a9108f60e11b82526004820181905291506000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690636352211e90602401602060405180830381865afa1580156119ab573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119cf9190615191565b90506001600160a01b0381163314801590611a77575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000000000000000000000000000000000000000000000169063e985e9c590604401602060405180830381865afa158015611a51573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a7591906151ae565b155b15611ab057611a946000805160206156ec83398151915283613365565b3360405163168ab55d60e31b81526004016107bb929190614f97565b6040516323b872dd60e01b81526001600160a01b038281166004830152306024830152604482018490527f000000000000000000000000000000000000000000000000000000000000000016906323b872dd90606401600060405180830381600087803b158015611b2057600080fd5b505af1158015611b34573d6000803e3d6000fd5b5050604051630a3b53db60e21b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001692506328ed4f6c9150611b869085903090600401614f97565b600060405180830381600087803b158015611ba057600080fd5b505af1158015611bb4573d6000803e3d6000fd5b5050604051636b727d4360e11b8152600481018590526276a70092507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316915063d6e4fa8690602401602060405180830381865afa158015611c22573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c469190615015565b611c509190615044565b9250611c9988888080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508a9250505061ffff881686886131fa565b505095945050505050565b6001600160a01b0382163303611d0e5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084016107bb565b3360008181526002602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b3360009081526004602052604081205460ff16611da95760405162461bcd60e51b81526004016107bb906151db565b60008787604051611dbb9291906151cb565b604051908190038120633f2891eb60e21b8252600482018190523060248301526044820187905291507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063fca247ac906064016020604051808303816000875af1158015611e37573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e5b9190615015565b9150611eb088888080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508a9250505061ffff8616611eaa6276a70087615044565b886131fa565b509695505050505050565b600080611ec784610800565b50841663ffffffff908116908516149250505092915050565b611ee861330b565b6007546001600160a01b0316156120085760075460405163a22cb46560e01b81526001600160a01b039182166004820152600060248201527f00000000000000000000000000000000000000000000000000000000000000009091169063a22cb46590604401600060405180830381600087803b158015611f6857600080fd5b505af1158015611f7c573d6000803e3d6000fd5b505060075460405163a22cb46560e01b81526001600160a01b039182166004820152600060248201527f0000000000000000000000000000000000000000000000000000000000000000909116925063a22cb4659150604401600060405180830381600087803b158015611fef57600080fd5b505af1158015612003573d6000803e3d6000fd5b505050505b600780546001600160a01b0319166001600160a01b038316908117909155156121355760075460405163a22cb46560e01b81526001600160a01b039182166004820152600160248201527f00000000000000000000000000000000000000000000000000000000000000009091169063a22cb46590604401600060405180830381600087803b15801561209a57600080fd5b505af11580156120ae573d6000803e3d6000fd5b505060075460405163a22cb46560e01b81526001600160a01b039182166004820152600160248201527f0000000000000000000000000000000000000000000000000000000000000000909116925063a22cb4659150604401600060405180830381600087803b15801561212157600080fd5b505af1158015611258573d6000803e3d6000fd5b50565b3360009081526004602052604081205460ff166121675760405162461bcd60e51b81526004016107bb906151db565b60006121816000805160206156ec83398151915285613365565b60405163c475abff60e01b815260048101869052602481018590529091506000906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063c475abff906044016020604051808303816000875af11580156121f5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122199190615015565b6040516331a9108f60e11b8152600481018790529091507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690636352211e90602401602060405180830381865afa92505050801561229d575060408051601f3d908101601f1916820190925261229a91810190615191565b60015b6122aa5791506107fa9050565b6001600160a01b0381163014158061235457506040516302571be360e01b81526004810184905230906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906302571be390602401602060405180830381865afa158015612324573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123489190615191565b6001600160a01b031614155b15612363575091506107fa9050565b5060006123736276a70083615044565b60008481526001602052604090205490915060a081901c61239685838386613b4d565b50919695505050505050565b6000866123af81336114cd565b6123d057803360405163168ab55d60e31b81526004016107bb929190614f97565b600087876040516123e29291906151cb565b604051809103902090506123f68982613365565b92506124028984613391565b61240c83866134cf565b600061244f8a858b8b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061350292505050565b905061245d8a8588886135cf565b945061246884613615565b612517576040516306ab592360e01b8152600481018b9052602481018390523060448201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906306ab5923906064016020604051808303816000875af11580156124e0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125049190615015565b506125128482898989613ca3565b61255d565b61255d8a858b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508d92508c91508b9050613705565b5050509695505050505050565b60006125b0600086868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509293925050613ce59050565b6007549091506001600160a01b03166125dc5760405163093075b560e21b815260040160405180910390fd5b6125e681336114cd565b61260757803360405163168ab55d60e31b81526004016107bb929190614f97565b6000808061261484610800565b91945092509050600061262685610870565b905061263185613da4565b600760009054906101000a90046001600160a01b03166001600160a01b0316639198c2768a8a878787878e8e6040518963ffffffff1660e01b815260040161268098979695949392919061524c565b600060405180830381600087803b15801561269a57600080fd5b505af11580156126ae573d6000803e3d6000fd5b50505050505050505050505050565b836126c881336114cd565b6126e957803360405163168ab55d60e31b81526004016107bb929190614f97565b84601c60006126f783610800565b5091505063ffffffff82821616156127255760405163a2a7201360e01b8152600481018490526024016107bb565b60405163cf40882360e01b8152600481018990523060248201526001600160a01b0387811660448301526001600160401b03871660648301527f0000000000000000000000000000000000000000000000000000000000000000169063cf40882390608401600060405180830381600087803b1580156127a457600080fd5b505af11580156127b8573d6000803e3d6000fd5b5050506001600160a01b038816905061281f5760006127d689610800565b509150506201ffff196202000082160161280e57604051632ca49b0d60e11b81526001600160a01b03891660048201526024016107bb565b612819896000613bb3565b5061191e565b600061282a896116b0565b905061284c81898b60001c600160405180602001604052806000815250613e44565b505050505050505050565b6128618383613365565b61286b81336114cd565b61288c57803360405163168ab55d60e31b81526004016107bb929190614f97565b7f6c32148f748aba23997146d7fe89e962e3cc30271290fb96f5f4337756c03b5284016128cc5760405163615a470360e01b815260040160405180910390fd5b6001600160a01b03821615806128ea57506001600160a01b03821630145b1561291357604051632ca49b0d60e11b81526001600160a01b03831660048201526024016107bb565b6116aa6118948585613365565b60008061292d8484613365565b9050600061293a82613615565b90506000805160206156ec833981519152851461295a5791506107fa9050565b6040516331a9108f60e11b8152600481018590527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690636352211e90602401602060405180830381865afa9250505080156129db575060408051601f3d908101601f191682019092526129d891810190615191565b60015b6129ea576000925050506107fa565b6001600160a01b0316301492506107fa915050565b612a0761330b565b6001600160a01b038216600081815260046020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf8791015b60405180910390a25050565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205460ff1690565b600080612adc600087878080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509293925050613f269050565b915091506000612b258288888080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509293925050613ce59050565b90506000612b338285613365565b6000818152600660205260409020909150612b4f888a836152fa565b507f6c32148f748aba23997146d7fe89e962e3cc30271290fb96f5f4337756c03b528201612b905760405163615a470360e01b815260040160405180910390fd5b6040516302571be360e01b8152600481018290526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906302571be390602401602060405180830381865afa158015612bf8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612c1c9190615191565b90506001600160a01b0381163314801590612cc4575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000000000000000000000000000000000000000000000169063e985e9c590604401602060405180830381865afa158015612c9e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612cc291906151ae565b155b15612ce657813360405163168ab55d60e31b81526004016107bb929190614f97565b6001600160a01b03861615612d7657604051630c4b7b8560e11b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690631896f70a90612d439085908a90600401614f97565b600060405180830381600087803b158015612d5d57600080fd5b505af1158015612d71573d6000803e3d6000fd5b505050505b604051635b0fc9c360e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690635b0fc9c390612dc49085903090600401614f97565b600060405180830381600087803b158015612dde57600080fd5b505af1158015612df2573d6000803e3d6000fd5b5050505061284c828a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201829052508d93509150819050613ca3565b6001600160a01b038416612e5f5760405162461bcd60e51b81526004016107bb906150a5565b6001600160a01b038516331480612e7b5750612e7b8533612a67565b612ed95760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2063616c6c6572206973206e6f74206f776e6572206e6f7260448201526808185c1c1c9bdd995960ba1b60648201526084016107bb565b6112588585858585613e44565b612eee61330b565b6001600160a01b038116612f535760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107bb565b61213581613b63565b60008181526006602052604081208054829190612f789061506b565b80601f0160208091040260200160405190810160405280929190818152602001828054612fa49061506b565b8015612ff15780601f10612fc657610100808354040283529160200191612ff1565b820191906000526020600020905b815481529060010190602001808311612fd457829003601f168201915b50505050509050805160000361300a5750600092915050565b6000806130178382613f26565b909250905060006130288483613ce5565b905061096b8184612920565b60008042836001600160401b031610156130615761ffff196201000085160161305c57600094505b600093505b50929391925050565b60006001600160e01b03198216636cdb3d1360e11b148061309b57506001600160e01b031982166303a24d0760e21b145b806107fa57506301ffc9a760e01b6001600160e01b03198316146107fa565b60006130c5826116b0565b9050806001600160a01b0316836001600160a01b0316036131325760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084016107bb565b336001600160a01b038216148061314e575061314e8133612a67565b6131c05760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016107bb565b6108f68383613fdd565b6000620200008381161480156108ae5750426131e96276a700846153b9565b6001600160401b0316109392505050565b84516020860120600061321b6000805160206156ec83398151915283613365565b9050600061324488604051806040016040528060058152602001626cae8d60e31b81525061404b565b600083815260066020526040902090915061325f82826153d9565b50613272828289620300008a1789613ca3565b6001600160a01b0384161561191e57604051630c4b7b8560e11b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690631896f70a906132cf9085908890600401614f97565b600060405180830381600087803b1580156132e957600080fd5b505af11580156132fd573d6000803e3d6000fd5b505050505050505050505050565b6000546001600160a01b031633146118005760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107bb565b604080516020808201949094528082019290925280518083038201815260609092019052805191012090565b6000808061339e84610800565b91945092509050426001600160401b0382161080801561346157506001600160a01b038416158061346157506040516302571be360e01b8152600481018690526000906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906302571be390602401602060405180830381865afa158015613432573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906134569190615191565b6001600160a01b0316145b156134a057600061347187610800565b50915050602081161561349a5760405163a2a7201360e01b8152600481018790526024016107bb565b506134c7565b620100008316156134c75760405163a2a7201360e01b8152600481018690526024016107bb565b505050505050565b63fffdffff81811763ffffffff16146134fe5760405163a2a7201360e01b8152600481018390526024016107bb565b5050565b606060006135ab836006600088815260200190815260200160002080546135289061506b565b80601f01602080910402602001604051908101604052809291908181526020018280546135549061506b565b80156135a15780601f10613576576101008083540402835291602001916135a1565b820191906000526020600020905b81548152906001019060200180831161358457829003601f168201915b505050505061404b565b60008581526006602052604090209091506135c682826153d9565b50949350505050565b6000806135db85610800565b925050506000806135ee8860001c610800565b92509250506135fe878784613a0f565b613609858483613a4a565b98975050505050505050565b600080613621836116b0565b6001600160a01b0316141580156107fa57506040516302571be360e01b81526004810183905230906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906302571be390602401602060405180830381865afa15801561369a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906136be9190615191565b6001600160a01b03161492915050565b600086815260066020526040812080546136ed9187916135289061506b565b90506136fc8682868686613ca3565b50505050505050565b6000808061371288610800565b925092509250600061373c88600660008d815260200190815260200160002080546135289061506b565b60008a81526006602052604090208054919250906137599061506b565b905060000361377c57600089815260066020526040902061377a82826153d9565b505b61378b89858886178589613a90565b6001600160a01b0387166137a9576137a4896000613bb3565b610ad5565b610ad584888b60001c600160405180602001604052806000815250613e44565b6201ffff19620200008316016137e9576137e66276a700826153b9565b90505b42816001600160401b03161015613822576201000082161561381d5760405162461bcd60e51b81526004016107bb90615100565b613847565b60048216156138475760405163a2a7201360e01b8152600481018490526024016107bb565b604082166000036108f6575050600090815260036020526040902080546001600160a01b0319169055565b60c0816001600160401b0316901b60a08363ffffffff16901b846001600160a01b03161717600160008681526020019081526020016000208190555050505050565b6001600160a01b0384163b156134c75760405163bc197c8160e01b81526001600160a01b0385169063bc197c81906138f89089908990889088908890600401615498565b6020604051808303816000875af1925050508015613933575060408051601f3d908101601f19168201909252613930918101906154ea565b60015b6139df5761393f615507565b806308c379a0036139785750613953615523565b8061395e575061397a565b8060405162461bcd60e51b81526004016107bb9190614514565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e20455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b60648201526084016107bb565b6001600160e01b0319811663bc197c8160e01b146136fc5760405162461bcd60e51b81526004016107bb906155ac565b63ffff00008216158015906001831615908290613a295750805b156112585760405163a2a7201360e01b8152600481018690526024016107bb565b6000816001600160401b0316846001600160401b03161115613a6a578193505b826001600160401b0316846001600160401b03161015613a88578293505b509192915050565b613a9c85858584613b4d565b60405163ffffffff8416815285907f39873f00c80f4f94b7bd1594aebcf650f003545b74824d57ddf4939e3ff3a34b9060200160405180910390a2816001600160401b0316816001600160401b03161115611258576040516001600160401b038216815285907ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b132906020015b60405180910390a25050505050565b600080613b4383610800565b5090949350505050565b613b5784836140c2565b6116aa84848484613872565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b613bbe826001611ebb565b15613bdf5760405163a2a7201360e01b8152600481018390526024016107bb565b613be882613da4565b604051635b0fc9c360e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690635b0fc9c390613c369085908590600401614f97565b600060405180830381600087803b158015613c5057600080fd5b505af1158015613c64573d6000803e3d6000fd5b50506040516001600160a01b03841681528492507fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c49150602001612a5b565b613caf858484846140fb565b847f8ce7013e8abebc55c3890a68f5a27c67c3f7efa64e584de5fb22363c606fd34085858585604051613b2894939291906155f4565b6000806000613cf48585613f26565b909250905081613d665760018551613d0c919061563b565b8414613d5a5760405162461bcd60e51b815260206004820152601d60248201527f6e616d65686173683a204a756e6b20617420656e64206f66206e616d6500000060448201526064016107bb565b50600091506107fa9050565b613d708582613ce5565b6040805160208101929092528101839052606001604051602081830303815290604052805190602001209250505092915050565b60008181526001602052604090205460a081901c60c082901c613dc8838383613034565b600086815260036020526040812080546001600160a01b0319169055909350613df5915085908484613872565b60408051858152600160208201526000916001600160a01b0386169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b6000806000613e5286610800565b925092509250613e638683836137c9565b846001148015613e845750876001600160a01b0316836001600160a01b0316145b613ea05760405162461bcd60e51b81526004016107bb90615100565b866001600160a01b0316836001600160a01b031603613ec157505050611258565b613ecd86888484613872565b60408051878152602081018790526001600160a01b03808a1692908b169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a461191e33898989898961416f565b60008083518310613f795760405162461bcd60e51b815260206004820152601e60248201527f726561644c6162656c3a20496e646578206f7574206f6620626f756e6473000060448201526064016107bb565b6000848481518110613f8d57613f8d6150ea565b016020015160f81c90508015613fb957613fb285613fac86600161564e565b8361422a565b9250613fbe565b600092505b613fc8818561564e565b613fd390600161564e565b9150509250929050565b600081815260036020526040902080546001600160a01b0319166001600160a01b0384169081179091558190614012826116b0565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b606060018351101561407057604051631406d65b60e11b815260040160405180910390fd5b60ff83511115614095578260405163e3ba295f60e01b81526004016107bb9190614514565b825183836040516020016140ab93929190615661565b604051602081830303815290604052905092915050565b61ffff8116158015906140da57506201000181811614155b156134fe5760405163a2a7201360e01b8152600481018390526024016107bb565b61410584836140c2565b6000848152600160205260409020546001600160a01b038116156141635761412c85613da4565b6040516000815285907fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c49060200160405180910390a25b6112588585858561424e565b6001600160a01b0384163b156134c75760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e61906141b390899089908890889088906004016156a6565b6020604051808303816000875af19250505080156141ee575060408051601f3d908101601f191682019092526141eb918101906154ea565b60015b6141fa5761393f615507565b6001600160e01b0319811663f23a6e6160e01b146136fc5760405162461bcd60e51b81526004016107bb906155ac565b8251600090614239838561564e565b111561424457600080fd5b5091016020012090565b836000808061425c84610800565b9194509250905063ffff000082166001600160401b038087169083161115614282578195505b42826001600160401b03161061429757958617955b6001600160a01b038416156142ee5760405162461bcd60e51b815260206004820152601f60248201527f455243313135353a206d696e74206f66206578697374696e6720746f6b656e0060448201526064016107bb565b6001600160a01b03881661434e5760405162461bcd60e51b815260206004820152602160248201527f455243313135353a206d696e7420746f20746865207a65726f206164647265736044820152607360f81b60648201526084016107bb565b306001600160a01b038916036143c35760405162461bcd60e51b815260206004820152603460248201527f455243313135353a206e65774f776e65722063616e6e6f74206265207468652060448201527313985b5955dc985c1c195c8818dbdb9d1c9858dd60621b60648201526084016107bb565b6143cf85898989613872565b60408051868152600160208201526001600160a01b038a169160009133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a461284c3360008a8860016040518060200160405280600081525061416f565b6001600160a01b038116811461213557600080fd5b6000806040838503121561445f57600080fd5b823561446a81614437565b946020939093013593505050565b60006020828403121561448a57600080fd5b5035919050565b6001600160e01b03198116811461213557600080fd5b6000602082840312156144b957600080fd5b81356108ae81614491565b60005b838110156144df5781810151838201526020016144c7565b50506000910152565b600081518084526145008160208601602086016144c4565b601f01601f19169290920160200192915050565b6020815260006108ae60208301846144e8565b6000806040838503121561453a57600080fd5b82359150602083013561454c81614437565b809150509250929050565b80356001600160401b038116811461456e57600080fd5b919050565b6000806040838503121561458657600080fd5b8235915061459660208401614557565b90509250929050565b60008083601f8401126145b157600080fd5b5081356001600160401b038111156145c857600080fd5b6020830191508360208285010111156145e057600080fd5b9250929050565b6000806000806000608086880312156145ff57600080fd5b853561460a81614437565b9450602086013561461a81614437565b93506040860135925060608601356001600160401b0381111561463c57600080fd5b6146488882890161459f565b969995985093965092949392505050565b60006020828403121561466b57600080fd5b81356108ae81614437565b634e487b7160e01b600052604160045260246000fd5b601f8201601f191681016001600160401b03811182821017156146b1576146b1614676565b6040525050565b60006001600160401b038211156146d1576146d1614676565b50601f01601f191660200190565b600082601f8301126146f057600080fd5b81356146fb816146b8565b604051614708828261468c565b82815285602084870101111561471d57600080fd5b82602086016020830137600092810160200192909252509392505050565b803563ffffffff8116811461456e57600080fd5b600080600080600080600060e0888a03121561476a57600080fd5b8735965060208801356001600160401b0381111561478757600080fd5b6147938a828b016146df565b96505060408801356147a481614437565b945060608801356147b481614437565b93506147c260808901614557565b92506147d060a0890161473b565b91506147de60c08901614557565b905092959891949750929550565b60006001600160401b0382111561480557614805614676565b5060051b60200190565b600082601f83011261482057600080fd5b8135602061482d826147ec565b60405161483a828261468c565b83815260059390931b850182019282810191508684111561485a57600080fd5b8286015b84811015611eb0578035835291830191830161485e565b600080600080600060a0868803121561488d57600080fd5b853561489881614437565b945060208601356148a881614437565b935060408601356001600160401b03808211156148c457600080fd5b6148d089838a0161480f565b945060608801359150808211156148e657600080fd5b6148f289838a0161480f565b9350608088013591508082111561490857600080fd5b50614915888289016146df565b9150509295509295909350565b6000806000806080858703121561493857600080fd5b843593506020850135925061494f6040860161473b565b915061495d60608601614557565b905092959194509250565b803561ffff8116811461456e57600080fd5b6000806040838503121561498d57600080fd5b8235915061459660208401614968565b600080604083850312156149b057600080fd5b82356001600160401b03808211156149c757600080fd5b818501915085601f8301126149db57600080fd5b813560206149e8826147ec565b6040516149f5828261468c565b83815260059390931b8501820192828101915089841115614a1557600080fd5b948201945b83861015614a3c578535614a2d81614437565b82529482019490820190614a1a565b96505086013592505080821115614a5257600080fd5b50613fd38582860161480f565b600081518084526020808501945080840160005b83811015614a8f57815187529582019590820190600101614a73565b509495945050505050565b6020815260006108ae6020830184614a5f565b600080600060608486031215614ac257600080fd5b8335614acd81614437565b92506020840135614add81614437565b929592945050506040919091013590565b600080600060608486031215614b0357600080fd5b8335925060208401359150614b1a60408501614557565b90509250925092565b600080600060608486031215614b3857600080fd5b833592506020840135614b4a81614437565b91506040840135614b5a81614437565b809150509250925092565b600080600080600060808688031215614b7d57600080fd5b85356001600160401b03811115614b9357600080fd5b614b9f8882890161459f565b9096509450506020860135614bb381614437565b9250614bc160408701614968565b91506060860135614bd181614437565b809150509295509295909350565b801515811461213557600080fd5b60008060408385031215614c0057600080fd5b8235614c0b81614437565b9150602083013561454c81614bdf565b60008060008060008060a08789031215614c3457600080fd5b86356001600160401b03811115614c4a57600080fd5b614c5689828a0161459f565b9097509550506020870135614c6a81614437565b9350604087013592506060870135614c8181614437565b9150614c8f60808801614968565b90509295509295509295565b60008060408385031215614cae57600080fd5b823591506145966020840161473b565b60008060408385031215614cd157600080fd5b50508035926020909101359150565b60008060008060008060a08789031215614cf957600080fd5b8635955060208701356001600160401b03811115614d1657600080fd5b614d2289828a0161459f565b9096509450506040870135614d3681614437565b9250614d446060880161473b565b9150614c8f60808801614557565b60008060008060408587031215614d6857600080fd5b84356001600160401b0380821115614d7f57600080fd5b614d8b8883890161459f565b90965094506020870135915080821115614da457600080fd5b50614db18782880161459f565b95989497509550505050565b60008060008060808587031215614dd357600080fd5b843593506020850135614de581614437565b9250604085013561494f81614437565b600080600060608486031215614e0a57600080fd5b83359250602084013591506040840135614b5a81614437565b60008060408385031215614e3657600080fd5b8235614e4181614437565b9150602083013561454c81614437565b60008060008060608587031215614e6757600080fd5b84356001600160401b03811115614e7d57600080fd5b614e898782880161459f565b9095509350506020850135614e9d81614437565b91506040850135614ead81614437565b939692955090935050565b600080600080600060a08688031215614ed057600080fd5b8535614edb81614437565b94506020860135614eeb81614437565b9350604086013592506060860135915060808601356001600160401b03811115614f1457600080fd5b614915888289016146df565b600060208284031215614f3257600080fd5b81516001600160401b03811115614f4857600080fd5b8201601f81018413614f5957600080fd5b8051614f64816146b8565b604051614f71828261468c565b828152866020848601011115614f8657600080fd5b61096b8360208301602087016144c4565b9182526001600160a01b0316602082015260400190565b60008060008060808587031215614fc457600080fd5b84356001600160401b03811115614fda57600080fd5b614fe6878288016146df565b9450506020850135614ff781614437565b925061500560408601614968565b91506060850135614ead81614437565b60006020828403121561502757600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b6001600160401b038181168382160190808211156150645761506461502e565b5092915050565b600181811c9082168061507f57607f821691505b60208210810361509f57634e487b7160e01b600052602260045260246000fd5b50919050565b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b60006001820161515c5761515c61502e565b5060010190565b6040815260006151766040830185614a5f565b82810360208401526151888185614a5f565b95945050505050565b6000602082840312156151a357600080fd5b81516108ae81614437565b6000602082840312156151c057600080fd5b81516108ae81614bdf565b8183823760009101908152919050565b60208082526028908201527f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f604082015267373a3937b63632b960c11b606082015260800190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60c08152600061526060c083018a8c615223565b6001600160a01b03898116602085015263ffffffff891660408501526001600160401b03881660608501528616608084015282810360a08401526152a5818587615223565b9b9a5050505050505050505050565b601f8211156108f657600081815260208120601f850160051c810160208610156152db5750805b601f850160051c820191505b818110156134c7578281556001016152e7565b6001600160401b0383111561531157615311614676565b6153258361531f835461506b565b836152b4565b6000601f84116001811461535957600085156153415750838201355b600019600387901b1c1916600186901b178355611258565b600083815260209020601f19861690835b8281101561538a578685013582556020948501946001909201910161536a565b50868210156153a75760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b6001600160401b038281168282160390808211156150645761506461502e565b81516001600160401b038111156153f2576153f2614676565b61540681615400845461506b565b846152b4565b602080601f83116001811461543b57600084156154235750858301515b600019600386901b1c1916600185901b1785556134c7565b600085815260208120601f198616915b8281101561546a5788860151825594840194600190910190840161544b565b50858210156154885787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6001600160a01b0386811682528516602082015260a0604082018190526000906154c490830186614a5f565b82810360608401526154d68186614a5f565b9050828103608084015261360981856144e8565b6000602082840312156154fc57600080fd5b81516108ae81614491565b600060033d11156155205760046000803e5060005160e01c5b90565b600060443d10156155315790565b6040516003193d81016004833e81513d6001600160401b03816024840111818411171561556057505050505090565b82850191508151818111156155785750505050505090565b843d87010160208285010111156155925750505050505090565b6155a16020828601018761468c565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b60808152600061560760808301876144e8565b6001600160a01b039590951660208301525063ffffffff9290921660408301526001600160401b0316606090910152919050565b818103818111156107fa576107fa61502e565b808201808211156107fa576107fa61502e565b60ff60f81b8460f81b168152600083516156828160018501602088016144c4565b8351908301906156998160018401602088016144c4565b0160010195945050505050565b6001600160a01b03868116825285166020820152604081018490526060810183905260a0608082018190526000906156e0908301846144e8565b97965050505050505056fe93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4aea164736f6c6343000811000a"; + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "contract ENS"; + readonly name: "_ens"; + readonly type: "address"; + }, { + readonly internalType: "contract IBaseRegistrar"; + readonly name: "_registrar"; + readonly type: "address"; + }, { + readonly internalType: "contract IMetadataService"; + readonly name: "_metadataService"; + readonly type: "address"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "constructor"; + }, { + readonly inputs: readonly []; + readonly name: "CannotUpgrade"; + readonly type: "error"; + }, { + readonly inputs: readonly []; + readonly name: "IncompatibleParent"; + readonly type: "error"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "IncorrectTargetOwner"; + readonly type: "error"; + }, { + readonly inputs: readonly []; + readonly name: "IncorrectTokenType"; + readonly type: "error"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "labelHash"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes32"; + readonly name: "expectedLabelhash"; + readonly type: "bytes32"; + }]; + readonly name: "LabelMismatch"; + readonly type: "error"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }]; + readonly name: "LabelTooLong"; + readonly type: "error"; + }, { + readonly inputs: readonly []; + readonly name: "LabelTooShort"; + readonly type: "error"; + }, { + readonly inputs: readonly []; + readonly name: "NameIsNotWrapped"; + readonly type: "error"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "OperationProhibited"; + readonly type: "error"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }]; + readonly name: "Unauthorised"; + readonly type: "error"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "approved"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Approval"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "ApprovalForAll"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "controller"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "bool"; + readonly name: "active"; + readonly type: "bool"; + }]; + readonly name: "ControllerChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "uint64"; + readonly name: "expiry"; + readonly type: "uint64"; + }]; + readonly name: "ExpiryExtended"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "uint32"; + readonly name: "fuses"; + readonly type: "uint32"; + }]; + readonly name: "FusesSet"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "NameUnwrapped"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "bytes"; + readonly name: "name"; + readonly type: "bytes"; + }, { + readonly indexed: false; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "uint32"; + readonly name: "fuses"; + readonly type: "uint32"; + }, { + readonly indexed: false; + readonly internalType: "uint64"; + readonly name: "expiry"; + readonly type: "uint64"; + }]; + readonly name: "NameWrapped"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "previousOwner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "newOwner"; + readonly type: "address"; + }]; + readonly name: "OwnershipTransferred"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "uint256[]"; + readonly name: "ids"; + readonly type: "uint256[]"; + }, { + readonly indexed: false; + readonly internalType: "uint256[]"; + readonly name: "values"; + readonly type: "uint256[]"; + }]; + readonly name: "TransferBatch"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "value"; + readonly type: "uint256"; + }]; + readonly name: "TransferSingle"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }]; + readonly name: "URI"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly name: "_tokens"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint32"; + readonly name: "fuseMask"; + readonly type: "uint32"; + }]; + readonly name: "allFusesBurned"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "approve"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }]; + readonly name: "balanceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address[]"; + readonly name: "accounts"; + readonly type: "address[]"; + }, { + readonly internalType: "uint256[]"; + readonly name: "ids"; + readonly type: "uint256[]"; + }]; + readonly name: "balanceOfBatch"; + readonly outputs: readonly [{ + readonly internalType: "uint256[]"; + readonly name: ""; + readonly type: "uint256[]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }]; + readonly name: "canExtendSubnames"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }]; + readonly name: "canModifyName"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly name: "controllers"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "ens"; + readonly outputs: readonly [{ + readonly internalType: "contract ENS"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "parentNode"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes32"; + readonly name: "labelhash"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint64"; + readonly name: "expiry"; + readonly type: "uint64"; + }]; + readonly name: "extendExpiry"; + readonly outputs: readonly [{ + readonly internalType: "uint64"; + readonly name: ""; + readonly type: "uint64"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }]; + readonly name: "getApproved"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }]; + readonly name: "getData"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "uint32"; + readonly name: "fuses"; + readonly type: "uint32"; + }, { + readonly internalType: "uint64"; + readonly name: "expiry"; + readonly type: "uint64"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly name: "isApprovedForAll"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "parentNode"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes32"; + readonly name: "labelhash"; + readonly type: "bytes32"; + }]; + readonly name: "isWrapped"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "isWrapped"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "metadataService"; + readonly outputs: readonly [{ + readonly internalType: "contract IMetadataService"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "name"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly name: "names"; + readonly outputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "onERC721Received"; + readonly outputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: ""; + readonly type: "bytes4"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "owner"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }]; + readonly name: "ownerOf"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "_token"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "_to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "_amount"; + readonly type: "uint256"; + }]; + readonly name: "recoverFunds"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }, { + readonly internalType: "address"; + readonly name: "wrappedOwner"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "duration"; + readonly type: "uint256"; + }, { + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }, { + readonly internalType: "uint16"; + readonly name: "ownerControlledFuses"; + readonly type: "uint16"; + }]; + readonly name: "registerAndWrapETH2LD"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "registrarExpiry"; + readonly type: "uint256"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "registrar"; + readonly outputs: readonly [{ + readonly internalType: "contract IBaseRegistrar"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "duration"; + readonly type: "uint256"; + }]; + readonly name: "renew"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "expires"; + readonly type: "uint256"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "renounceOwnership"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256[]"; + readonly name: "ids"; + readonly type: "uint256[]"; + }, { + readonly internalType: "uint256[]"; + readonly name: "amounts"; + readonly type: "uint256[]"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "safeBatchTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "amount"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "setApprovalForAll"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "parentNode"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes32"; + readonly name: "labelhash"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint32"; + readonly name: "fuses"; + readonly type: "uint32"; + }, { + readonly internalType: "uint64"; + readonly name: "expiry"; + readonly type: "uint64"; + }]; + readonly name: "setChildFuses"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "controller"; + readonly type: "address"; + }, { + readonly internalType: "bool"; + readonly name: "active"; + readonly type: "bool"; + }]; + readonly name: "setController"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint16"; + readonly name: "ownerControlledFuses"; + readonly type: "uint16"; + }]; + readonly name: "setFuses"; + readonly outputs: readonly [{ + readonly internalType: "uint32"; + readonly name: ""; + readonly type: "uint32"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "contract IMetadataService"; + readonly name: "_metadataService"; + readonly type: "address"; + }]; + readonly name: "setMetadataService"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }, { + readonly internalType: "uint64"; + readonly name: "ttl"; + readonly type: "uint64"; + }]; + readonly name: "setRecord"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }]; + readonly name: "setResolver"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "parentNode"; + readonly type: "bytes32"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }, { + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "uint32"; + readonly name: "fuses"; + readonly type: "uint32"; + }, { + readonly internalType: "uint64"; + readonly name: "expiry"; + readonly type: "uint64"; + }]; + readonly name: "setSubnodeOwner"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "parentNode"; + readonly type: "bytes32"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }, { + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }, { + readonly internalType: "uint64"; + readonly name: "ttl"; + readonly type: "uint64"; + }, { + readonly internalType: "uint32"; + readonly name: "fuses"; + readonly type: "uint32"; + }, { + readonly internalType: "uint64"; + readonly name: "expiry"; + readonly type: "uint64"; + }]; + readonly name: "setSubnodeRecord"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint64"; + readonly name: "ttl"; + readonly type: "uint64"; + }]; + readonly name: "setTTL"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "contract INameWrapperUpgrade"; + readonly name: "_upgradeAddress"; + readonly type: "address"; + }]; + readonly name: "setUpgradeContract"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "newOwner"; + readonly type: "address"; + }]; + readonly name: "transferOwnership"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "parentNode"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes32"; + readonly name: "labelhash"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "controller"; + readonly type: "address"; + }]; + readonly name: "unwrap"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "labelhash"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "registrant"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "controller"; + readonly type: "address"; + }]; + readonly name: "unwrapETH2LD"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes"; + readonly name: "name"; + readonly type: "bytes"; + }, { + readonly internalType: "bytes"; + readonly name: "extraData"; + readonly type: "bytes"; + }]; + readonly name: "upgrade"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "upgradeContract"; + readonly outputs: readonly [{ + readonly internalType: "contract INameWrapperUpgrade"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "uri"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes"; + readonly name: "name"; + readonly type: "bytes"; + }, { + readonly internalType: "address"; + readonly name: "wrappedOwner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }]; + readonly name: "wrap"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }, { + readonly internalType: "address"; + readonly name: "wrappedOwner"; + readonly type: "address"; + }, { + readonly internalType: "uint16"; + readonly name: "ownerControlledFuses"; + readonly type: "uint16"; + }, { + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }]; + readonly name: "wrapETH2LD"; + readonly outputs: readonly [{ + readonly internalType: "uint64"; + readonly name: "expiry"; + readonly type: "uint64"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): NameWrapperInterface; + static connect(address: string, runner?: ContractRunner | null): NameWrapper; +} +export {}; +//# sourceMappingURL=NameWrapper__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper__factory.d.ts.map new file mode 100644 index 00000000..648f1423 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"NameWrapper__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper__factory.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper__factory.js new file mode 100644 index 00000000..fd49ab81 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper__factory.js @@ -0,0 +1,1489 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.NameWrapper__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "contract ENS", + name: "_ens", + type: "address", + }, + { + internalType: "contract IBaseRegistrar", + name: "_registrar", + type: "address", + }, + { + internalType: "contract IMetadataService", + name: "_metadataService", + type: "address", + }, + ], + stateMutability: "nonpayable", + type: "constructor", + }, + { + inputs: [], + name: "CannotUpgrade", + type: "error", + }, + { + inputs: [], + name: "IncompatibleParent", + type: "error", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "IncorrectTargetOwner", + type: "error", + }, + { + inputs: [], + name: "IncorrectTokenType", + type: "error", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "labelHash", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "expectedLabelhash", + type: "bytes32", + }, + ], + name: "LabelMismatch", + type: "error", + }, + { + inputs: [ + { + internalType: "string", + name: "label", + type: "string", + }, + ], + name: "LabelTooLong", + type: "error", + }, + { + inputs: [], + name: "LabelTooShort", + type: "error", + }, + { + inputs: [], + name: "NameIsNotWrapped", + type: "error", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "OperationProhibited", + type: "error", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "Unauthorised", + type: "error", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "approved", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Approval", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "ApprovalForAll", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "controller", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "active", + type: "bool", + }, + ], + name: "ControllerChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint64", + name: "expiry", + type: "uint64", + }, + ], + name: "ExpiryExtended", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint32", + name: "fuses", + type: "uint32", + }, + ], + name: "FusesSet", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "NameUnwrapped", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "bytes", + name: "name", + type: "bytes", + }, + { + indexed: false, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: false, + internalType: "uint32", + name: "fuses", + type: "uint32", + }, + { + indexed: false, + internalType: "uint64", + name: "expiry", + type: "uint64", + }, + ], + name: "NameWrapped", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "previousOwner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnershipTransferred", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: false, + internalType: "uint256[]", + name: "ids", + type: "uint256[]", + }, + { + indexed: false, + internalType: "uint256[]", + name: "values", + type: "uint256[]", + }, + ], + name: "TransferBatch", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "TransferSingle", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "string", + name: "value", + type: "string", + }, + { + indexed: true, + internalType: "uint256", + name: "id", + type: "uint256", + }, + ], + name: "URI", + type: "event", + }, + { + inputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + name: "_tokens", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "uint32", + name: "fuseMask", + type: "uint32", + }, + ], + name: "allFusesBurned", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "approve", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address[]", + name: "accounts", + type: "address[]", + }, + { + internalType: "uint256[]", + name: "ids", + type: "uint256[]", + }, + ], + name: "balanceOfBatch", + outputs: [ + { + internalType: "uint256[]", + name: "", + type: "uint256[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "canExtendSubnames", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "canModifyName", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + name: "controllers", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "ens", + outputs: [ + { + internalType: "contract ENS", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "parentNode", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "labelhash", + type: "bytes32", + }, + { + internalType: "uint64", + name: "expiry", + type: "uint64", + }, + ], + name: "extendExpiry", + outputs: [ + { + internalType: "uint64", + name: "", + type: "uint64", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + ], + name: "getApproved", + outputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + ], + name: "getData", + outputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "uint32", + name: "fuses", + type: "uint32", + }, + { + internalType: "uint64", + name: "expiry", + type: "uint64", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + name: "isApprovedForAll", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "parentNode", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "labelhash", + type: "bytes32", + }, + ], + name: "isWrapped", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "isWrapped", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "metadataService", + outputs: [ + { + internalType: "contract IMetadataService", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "name", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + name: "names", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "address", + name: "", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "onERC721Received", + outputs: [ + { + internalType: "bytes4", + name: "", + type: "bytes4", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + ], + name: "ownerOf", + outputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "_token", + type: "address", + }, + { + internalType: "address", + name: "_to", + type: "address", + }, + { + internalType: "uint256", + name: "_amount", + type: "uint256", + }, + ], + name: "recoverFunds", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "label", + type: "string", + }, + { + internalType: "address", + name: "wrappedOwner", + type: "address", + }, + { + internalType: "uint256", + name: "duration", + type: "uint256", + }, + { + internalType: "address", + name: "resolver", + type: "address", + }, + { + internalType: "uint16", + name: "ownerControlledFuses", + type: "uint16", + }, + ], + name: "registerAndWrapETH2LD", + outputs: [ + { + internalType: "uint256", + name: "registrarExpiry", + type: "uint256", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "registrar", + outputs: [ + { + internalType: "contract IBaseRegistrar", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "uint256", + name: "duration", + type: "uint256", + }, + ], + name: "renew", + outputs: [ + { + internalType: "uint256", + name: "expires", + type: "uint256", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "renounceOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256[]", + name: "ids", + type: "uint256[]", + }, + { + internalType: "uint256[]", + name: "amounts", + type: "uint256[]", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "safeBatchTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "setApprovalForAll", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "parentNode", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "labelhash", + type: "bytes32", + }, + { + internalType: "uint32", + name: "fuses", + type: "uint32", + }, + { + internalType: "uint64", + name: "expiry", + type: "uint64", + }, + ], + name: "setChildFuses", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "controller", + type: "address", + }, + { + internalType: "bool", + name: "active", + type: "bool", + }, + ], + name: "setController", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "uint16", + name: "ownerControlledFuses", + type: "uint16", + }, + ], + name: "setFuses", + outputs: [ + { + internalType: "uint32", + name: "", + type: "uint32", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "contract IMetadataService", + name: "_metadataService", + type: "address", + }, + ], + name: "setMetadataService", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "resolver", + type: "address", + }, + { + internalType: "uint64", + name: "ttl", + type: "uint64", + }, + ], + name: "setRecord", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "address", + name: "resolver", + type: "address", + }, + ], + name: "setResolver", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "parentNode", + type: "bytes32", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "uint32", + name: "fuses", + type: "uint32", + }, + { + internalType: "uint64", + name: "expiry", + type: "uint64", + }, + ], + name: "setSubnodeOwner", + outputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "parentNode", + type: "bytes32", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "resolver", + type: "address", + }, + { + internalType: "uint64", + name: "ttl", + type: "uint64", + }, + { + internalType: "uint32", + name: "fuses", + type: "uint32", + }, + { + internalType: "uint64", + name: "expiry", + type: "uint64", + }, + ], + name: "setSubnodeRecord", + outputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "uint64", + name: "ttl", + type: "uint64", + }, + ], + name: "setTTL", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "contract INameWrapperUpgrade", + name: "_upgradeAddress", + type: "address", + }, + ], + name: "setUpgradeContract", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "transferOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "parentNode", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "labelhash", + type: "bytes32", + }, + { + internalType: "address", + name: "controller", + type: "address", + }, + ], + name: "unwrap", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "labelhash", + type: "bytes32", + }, + { + internalType: "address", + name: "registrant", + type: "address", + }, + { + internalType: "address", + name: "controller", + type: "address", + }, + ], + name: "unwrapETH2LD", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes", + name: "name", + type: "bytes", + }, + { + internalType: "bytes", + name: "extraData", + type: "bytes", + }, + ], + name: "upgrade", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "upgradeContract", + outputs: [ + { + internalType: "contract INameWrapperUpgrade", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "uri", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes", + name: "name", + type: "bytes", + }, + { + internalType: "address", + name: "wrappedOwner", + type: "address", + }, + { + internalType: "address", + name: "resolver", + type: "address", + }, + ], + name: "wrap", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "label", + type: "string", + }, + { + internalType: "address", + name: "wrappedOwner", + type: "address", + }, + { + internalType: "uint16", + name: "ownerControlledFuses", + type: "uint16", + }, + { + internalType: "address", + name: "resolver", + type: "address", + }, + ], + name: "wrapETH2LD", + outputs: [ + { + internalType: "uint64", + name: "expiry", + type: "uint64", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, +]; +const _bytecode = "0x60c06040523480156200001157600080fd5b5060405162005d2338038062005d238339810160408190526200003491620002f8565b823362000041816200028f565b6040516302571be360e01b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e260048201526000906001600160a01b038416906302571be390602401602060405180830381865afa158015620000a9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620000cf91906200034c565b604051630f41a04d60e11b81526001600160a01b03848116600483015291925090821690631e83409a906024016020604051808303816000875af11580156200011c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000142919062000373565b505050506001600160a01b0383811660805282811660a052600580546001600160a01b031916918316919091179055600163fffeffff60a01b03197fafa26c20e8b3d9a2853d642cfe1021dae26242ffedfac91c97aab212c1a4b93b8190557fa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb4955604080518082019091526001815260006020808301829052908052600690527f54cdd369e4e8a8515e52ca72ec816c2101831ad1f18bf44102ed171459c9b4f89062000210908262000432565b506040805180820190915260058152626cae8d60e31b6020808301919091527f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae600052600690527ffb9e8e321b8a5ec48f12a7b41f22c6e595d761285c9eb19d8dda7c99edf1b54f9062000285908262000432565b50505050620004fe565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b0381168114620002f557600080fd5b50565b6000806000606084860312156200030e57600080fd5b83516200031b81620002df565b60208501519093506200032e81620002df565b60408501519092506200034181620002df565b809150509250925092565b6000602082840312156200035f57600080fd5b81516200036c81620002df565b9392505050565b6000602082840312156200038657600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b600181811c90821680620003b857607f821691505b602082108103620003d957634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200042d57600081815260208120601f850160051c81016020861015620004085750805b601f850160051c820191505b81811015620004295782815560010162000414565b5050505b505050565b81516001600160401b038111156200044e576200044e6200038d565b62000466816200045f8454620003a3565b84620003df565b602080601f8311600181146200049e5760008415620004855750858301515b600019600386901b1c1916600185901b17855562000429565b600085815260208120601f198616915b82811015620004cf57888601518255948401946001909101908401620004ae565b5085821015620004ee5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60805160a0516157186200060b6000396000818161047301528181610aee01528181610b9101528181610c20015281816118c60152818161195c01528181611a0a01528181611adc01528181611b4d01528181611bd201528181611de601528181611f2201528181612054015281816121ac0152818161223201526129700152600081816104c001528181610a7401528181610d6a01528181610ef901528181610faa015281816112bc01528181611fa7015281816120d9015281816122dd0152818161248f0152818161276001528181612ba901528181612c5701528181612d0c01528181612d8d01528181613298015281816133eb015281816136530152613bff01526157186000f3fe608060405234801561001057600080fd5b506004361061029f5760003560e01c80636352211e11610167578063c93ab3fd116100ce578063e985e9c511610087578063e985e9c5146106d4578063eb8ae530146106e7578063ed70554d146106fa578063f242432a1461071a578063f2fde38b1461072d578063fd0cd0d91461074057600080fd5b8063c93ab3fd14610652578063cf40882314610665578063d8c9921a14610678578063d9a50c121461068b578063da8c229e1461069e578063e0dba60f146106c157600080fd5b8063a22cb46511610120578063a22cb465146105e0578063a4014982146105f3578063adf4960a14610606578063b6bcad2614610619578063c475abff1461062c578063c658e0861461063f57600080fd5b80636352211e146105635780636e5d6ad214610576578063715018a6146105a15780638b4dfa75146105a95780638cf8b41e146105bc5780638da5cb5b146105cf57600080fd5b80631f4e15041161020b5780633f15457f116101c45780633f15457f146104bb578063402906fc146104e257806341415eab1461050a5780634e1273f41461051d578063530954671461053d5780635d3590d51461055057600080fd5b80631f4e15041461043557806320c38e2b1461044857806324c1af441461045b5780632b20e3971461046e5780632eb2c2d61461049557806333c69ea9146104a857600080fd5b80630e4cd7251161025d5780630e4cd725146103aa5780630e89341c146103bd57806314ab9038146103d0578063150b7a02146103e35780631534e1771461040f5780631896f70a1461042257600080fd5b8062fdd58e146102a45780630178fe3f146102ca57806301ffc9a71461031057806306fdde0314610333578063081812fc1461036a578063095ea7b314610395575b600080fd5b6102b76102b236600461444c565b610753565b6040519081526020015b60405180910390f35b6102dd6102d8366004614478565b610800565b604080516001600160a01b03909416845263ffffffff90921660208401526001600160401b0316908201526060016102c1565b61032361031e3660046144a7565b610830565b60405190151581526020016102c1565b61035d6040518060400160405280600b81526020016a2730b6b2abb930b83832b960a91b81525081565b6040516102c19190614514565b61037d610378366004614478565b610870565b6040516001600160a01b0390911681526020016102c1565b6103a86103a336600461444c565b6108b5565b005b6103236103b8366004614527565b6108fb565b61035d6103cb366004614478565b610975565b6103a86103de366004614573565b6109e7565b6103f66103f13660046145e7565b610ae1565b6040516001600160e01b031990911681526020016102c1565b6103a861041d366004614659565b610cc1565b6103a8610430366004614527565b610ceb565b60075461037d906001600160a01b031681565b61035d610456366004614478565b610da1565b6102b761046936600461474f565b610e3b565b61037d7f000000000000000000000000000000000000000000000000000000000000000081565b6103a86104a3366004614875565b611021565b6103a86104b6366004614922565b61125f565b61037d7f000000000000000000000000000000000000000000000000000000000000000081565b6104f56104f036600461497a565b611430565b60405163ffffffff90911681526020016102c1565b610323610518366004614527565b6114cd565b61053061052b36600461499d565b611506565b6040516102c19190614a9a565b60055461037d906001600160a01b031681565b6103a861055e366004614aad565b61162f565b61037d610571366004614478565b6116b0565b610589610584366004614aee565b6116bb565b6040516001600160401b0390911681526020016102c1565b6103a86117ee565b6103a86105b7366004614b23565b611802565b6105896105ca366004614b65565b611928565b6000546001600160a01b031661037d565b6103a86105ee366004614bed565b611ca4565b6102b7610601366004614c1b565b611d7a565b610323610614366004614c9b565b611ebb565b6103a8610627366004614659565b611ee0565b6102b761063a366004614cbe565b612138565b6102b761064d366004614ce0565b6123a2565b6103a8610660366004614d52565b61256a565b6103a8610673366004614dbd565b6126bd565b6103a8610686366004614df5565b612857565b610323610699366004614cbe565b612920565b6103236106ac366004614659565b60046020526000908152604090205460ff1681565b6103a86106cf366004614bed565b6129ff565b6103236106e2366004614e23565b612a67565b6103a86106f5366004614e51565b612a95565b6102b7610708366004614478565b60016020526000908152604090205481565b6103a8610728366004614eb8565b612e39565b6103a861073b366004614659565b612ee6565b61032361074e366004614478565b612f5c565b60006001600160a01b0383166107c45760405162461bcd60e51b815260206004820152602b60248201527f455243313135353a2062616c616e636520717565727920666f7220746865207a60448201526a65726f206164647265737360a81b60648201526084015b60405180910390fd5b60006107cf836116b0565b9050836001600160a01b0316816001600160a01b0316036107f45760019150506107fa565b60009150505b92915050565b60008181526001602052604090205460a081901c60c082901c610824838383613034565b90959094509092509050565b60006001600160e01b03198216631b05885b60e31b148061086157506001600160e01b03198216630a85bd0160e11b145b806107fa57506107fa8261306a565b60008061087c836116b0565b90506001600160a01b0381166108955750600092915050565b6000838152600360205260409020546001600160a01b03165b9392505050565b60006108c082610800565b50915050603f1960408216016108ec5760405163a2a7201360e01b8152600481018390526024016107bb565b6108f683836130ba565b505050565b600080808061090986610800565b925092509250846001600160a01b0316836001600160a01b0316148061093457506109348386612a67565b8061095857506001600160a01b03851661094d87610870565b6001600160a01b0316145b801561096b575061096982826131ca565b155b9695505050505050565b6005546040516303a24d0760e21b8152600481018390526060916001600160a01b031690630e89341c90602401600060405180830381865afa1580156109bf573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526107fa9190810190614f20565b816109f281336114cd565b610a1357803360405163168ab55d60e31b81526004016107bb929190614f97565b8260106000610a2183610800565b5091505063ffffffff8282161615610a4f5760405163a2a7201360e01b8152600481018490526024016107bb565b604051630295720760e31b8152600481018790526001600160401b03861660248201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906314ab9038906044015b600060405180830381600087803b158015610ac157600080fd5b505af1158015610ad5573d6000803e3d6000fd5b50505050505050505050565b6000336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610b2c5760405163032634a760e31b815260040160405180910390fd5b6000808080610b3d86880188614fae565b83516020850120939750919550935091508890808214610b7a576040516331970f3360e21b815260048101829052602481018390526044016107bb565b604051630a3b53db60e21b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906328ed4f6c90610bc89085903090600401614f97565b600060405180830381600087803b158015610be257600080fd5b505af1158015610bf6573d6000803e3d6000fd5b5050604051636b727d4360e11b8152600481018d9052600092506276a70091506001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063d6e4fa8690602401602060405180830381865afa158015610c67573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c8b9190615015565b610c959190615044565b9050610ca887878761ffff1684886131fa565b50630a85bd0160e11b9c9b505050505050505050505050565b610cc961330b565b600580546001600160a01b0319166001600160a01b0392909216919091179055565b81610cf681336114cd565b610d1757803360405163168ab55d60e31b81526004016107bb929190614f97565b8260086000610d2583610800565b5091505063ffffffff8282161615610d535760405163a2a7201360e01b8152600481018490526024016107bb565b604051630c4b7b8560e11b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690631896f70a90610aa79089908990600401614f97565b60066020526000908152604090208054610dba9061506b565b80601f0160208091040260200160405190810160405280929190818152602001828054610de69061506b565b8015610e335780601f10610e0857610100808354040283529160200191610e33565b820191906000526020600020905b815481529060010190602001808311610e1657829003601f168201915b505050505081565b600087610e4881336114cd565b610e6957803360405163168ab55d60e31b81526004016107bb929190614f97565b87516020890120610e7a8a82613365565b9250610e868a84613391565b610e9083866134cf565b610e9b8a848b613502565b50610ea88a8487876135cf565b9350610eb383613615565b610f68576040516305ef2c7f60e41b8152600481018b9052602481018290523060448201526001600160a01b0388811660648301526001600160401b03881660848301527f00000000000000000000000000000000000000000000000000000000000000001690635ef2c7f09060a401600060405180830381600087803b158015610f3d57600080fd5b505af1158015610f51573d6000803e3d6000fd5b50505050610f638a848b8b89896136ce565b611014565b6040516305ef2c7f60e41b8152600481018b9052602481018290523060448201526001600160a01b0388811660648301526001600160401b03881660848301527f00000000000000000000000000000000000000000000000000000000000000001690635ef2c7f09060a401600060405180830381600087803b158015610fee57600080fd5b505af1158015611002573d6000803e3d6000fd5b505050506110148a848b8b8989613705565b5050979650505050505050565b81518351146110835760405162461bcd60e51b815260206004820152602860248201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206044820152670dad2e6dac2e8c6d60c31b60648201526084016107bb565b6001600160a01b0384166110a95760405162461bcd60e51b81526004016107bb906150a5565b6001600160a01b0385163314806110c557506110c58533612a67565b61112c5760405162461bcd60e51b815260206004820152603260248201527f455243313135353a207472616e736665722063616c6c6572206973206e6f74206044820152711bdddb995c881b9bdc88185c1c1c9bdd995960721b60648201526084016107bb565b60005b83518110156111f257600084828151811061114c5761114c6150ea565b60200260200101519050600084838151811061116a5761116a6150ea565b60200260200101519050600080600061118285610800565b9250925092506111938583836137c9565b8360011480156111b457508a6001600160a01b0316836001600160a01b0316145b6111d05760405162461bcd60e51b81526004016107bb90615100565b6111dc858b8484613872565b5050505050806111eb9061514a565b905061112f565b50836001600160a01b0316856001600160a01b0316336001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051611242929190615163565b60405180910390a46112583386868686866138b4565b5050505050565b600061126b8585613365565b905061127781846134cf565b6000808061128484610800565b919450925090506001600160a01b038316158061133357506040516302571be360e01b81526004810185905230906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906302571be390602401602060405180830381865afa158015611303573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113279190615191565b6001600160a01b031614155b1561135157604051635374b59960e01b815260040160405180910390fd5b60008061135d8a610800565b90935091508a90506113995761137386336114cd565b61139457853360405163168ab55d60e31b81526004016107bb929190614f97565b6113c4565b6113a38a336114cd565b6113c457893360405163168ab55d60e31b81526004016107bb929190614f97565b6113cf868984613a0f565b6113da878483613a4a565b9650620100008416158015906113fe57508363ffffffff1688851763ffffffff1614155b1561141f5760405163a2a7201360e01b8152600481018790526024016107bb565b96831796610ad586868a868b613a90565b60008261143d81336114cd565b61145e57803360405163168ab55d60e31b81526004016107bb929190614f97565b836002600061146c83610800565b5091505063ffffffff828216161561149a5760405163a2a7201360e01b8152600481018490526024016107bb565b600080806114a78a610800565b9250925092506114c08a84848c61ffff16178485613a90565b5098975050505050505050565b60008080806114db86610800565b925092509250846001600160a01b0316836001600160a01b0316148061095857506109588386612a67565b6060815183511461156b5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b60648201526084016107bb565b600083516001600160401b0381111561158657611586614676565b6040519080825280602002602001820160405280156115af578160200160208202803683370190505b50905060005b8451811015611627576115fa8582815181106115d3576115d36150ea565b60200260200101518583815181106115ed576115ed6150ea565b6020026020010151610753565b82828151811061160c5761160c6150ea565b60209081029190910101526116208161514a565b90506115b5565b509392505050565b61163761330b565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303816000875af1158015611686573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116aa91906151ae565b50505050565b60006107fa82613b37565b6000806116c88585613365565b90506116d381613615565b6116f057604051635374b59960e01b815260040160405180910390fd5b60006116fc86336108fb565b905080158015611713575061171182336114cd565b155b1561173557813360405163168ab55d60e31b81526004016107bb929190614f97565b6000808061174285610800565b925092509250831580156117595750620400008216155b1561177a5760405163a2a7201360e01b8152600481018690526024016107bb565b60006117858a610800565b92505050611794888383613a4a565b97506117a28685858b613b4d565b6040516001600160401b038916815286907ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b1329060200160405180910390a2509598975050505050505050565b6117f661330b565b6118006000613b63565b565b61181a6000805160206156ec83398151915284613365565b61182481336114cd565b61184557803360405163168ab55d60e31b81526004016107bb929190614f97565b306001600160a01b0384160361187957604051632ca49b0d60e11b81526001600160a01b03841660048201526024016107bb565b61189a6118946000805160206156ec83398151915286613365565b83613bb3565b604051632142170760e11b81523060048201526001600160a01b038481166024830152604482018690527f000000000000000000000000000000000000000000000000000000000000000016906342842e0e90606401600060405180830381600087803b15801561190a57600080fd5b505af115801561191e573d6000803e3d6000fd5b5050505050505050565b600080868660405161193b9291906151cb565b6040519081900381206331a9108f60e11b82526004820181905291506000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690636352211e90602401602060405180830381865afa1580156119ab573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119cf9190615191565b90506001600160a01b0381163314801590611a77575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000000000000000000000000000000000000000000000169063e985e9c590604401602060405180830381865afa158015611a51573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a7591906151ae565b155b15611ab057611a946000805160206156ec83398151915283613365565b3360405163168ab55d60e31b81526004016107bb929190614f97565b6040516323b872dd60e01b81526001600160a01b038281166004830152306024830152604482018490527f000000000000000000000000000000000000000000000000000000000000000016906323b872dd90606401600060405180830381600087803b158015611b2057600080fd5b505af1158015611b34573d6000803e3d6000fd5b5050604051630a3b53db60e21b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001692506328ed4f6c9150611b869085903090600401614f97565b600060405180830381600087803b158015611ba057600080fd5b505af1158015611bb4573d6000803e3d6000fd5b5050604051636b727d4360e11b8152600481018590526276a70092507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316915063d6e4fa8690602401602060405180830381865afa158015611c22573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c469190615015565b611c509190615044565b9250611c9988888080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508a9250505061ffff881686886131fa565b505095945050505050565b6001600160a01b0382163303611d0e5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084016107bb565b3360008181526002602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b3360009081526004602052604081205460ff16611da95760405162461bcd60e51b81526004016107bb906151db565b60008787604051611dbb9291906151cb565b604051908190038120633f2891eb60e21b8252600482018190523060248301526044820187905291507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063fca247ac906064016020604051808303816000875af1158015611e37573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e5b9190615015565b9150611eb088888080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508a9250505061ffff8616611eaa6276a70087615044565b886131fa565b509695505050505050565b600080611ec784610800565b50841663ffffffff908116908516149250505092915050565b611ee861330b565b6007546001600160a01b0316156120085760075460405163a22cb46560e01b81526001600160a01b039182166004820152600060248201527f00000000000000000000000000000000000000000000000000000000000000009091169063a22cb46590604401600060405180830381600087803b158015611f6857600080fd5b505af1158015611f7c573d6000803e3d6000fd5b505060075460405163a22cb46560e01b81526001600160a01b039182166004820152600060248201527f0000000000000000000000000000000000000000000000000000000000000000909116925063a22cb4659150604401600060405180830381600087803b158015611fef57600080fd5b505af1158015612003573d6000803e3d6000fd5b505050505b600780546001600160a01b0319166001600160a01b038316908117909155156121355760075460405163a22cb46560e01b81526001600160a01b039182166004820152600160248201527f00000000000000000000000000000000000000000000000000000000000000009091169063a22cb46590604401600060405180830381600087803b15801561209a57600080fd5b505af11580156120ae573d6000803e3d6000fd5b505060075460405163a22cb46560e01b81526001600160a01b039182166004820152600160248201527f0000000000000000000000000000000000000000000000000000000000000000909116925063a22cb4659150604401600060405180830381600087803b15801561212157600080fd5b505af1158015611258573d6000803e3d6000fd5b50565b3360009081526004602052604081205460ff166121675760405162461bcd60e51b81526004016107bb906151db565b60006121816000805160206156ec83398151915285613365565b60405163c475abff60e01b815260048101869052602481018590529091506000906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063c475abff906044016020604051808303816000875af11580156121f5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122199190615015565b6040516331a9108f60e11b8152600481018790529091507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690636352211e90602401602060405180830381865afa92505050801561229d575060408051601f3d908101601f1916820190925261229a91810190615191565b60015b6122aa5791506107fa9050565b6001600160a01b0381163014158061235457506040516302571be360e01b81526004810184905230906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906302571be390602401602060405180830381865afa158015612324573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123489190615191565b6001600160a01b031614155b15612363575091506107fa9050565b5060006123736276a70083615044565b60008481526001602052604090205490915060a081901c61239685838386613b4d565b50919695505050505050565b6000866123af81336114cd565b6123d057803360405163168ab55d60e31b81526004016107bb929190614f97565b600087876040516123e29291906151cb565b604051809103902090506123f68982613365565b92506124028984613391565b61240c83866134cf565b600061244f8a858b8b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061350292505050565b905061245d8a8588886135cf565b945061246884613615565b612517576040516306ab592360e01b8152600481018b9052602481018390523060448201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906306ab5923906064016020604051808303816000875af11580156124e0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125049190615015565b506125128482898989613ca3565b61255d565b61255d8a858b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508d92508c91508b9050613705565b5050509695505050505050565b60006125b0600086868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509293925050613ce59050565b6007549091506001600160a01b03166125dc5760405163093075b560e21b815260040160405180910390fd5b6125e681336114cd565b61260757803360405163168ab55d60e31b81526004016107bb929190614f97565b6000808061261484610800565b91945092509050600061262685610870565b905061263185613da4565b600760009054906101000a90046001600160a01b03166001600160a01b0316639198c2768a8a878787878e8e6040518963ffffffff1660e01b815260040161268098979695949392919061524c565b600060405180830381600087803b15801561269a57600080fd5b505af11580156126ae573d6000803e3d6000fd5b50505050505050505050505050565b836126c881336114cd565b6126e957803360405163168ab55d60e31b81526004016107bb929190614f97565b84601c60006126f783610800565b5091505063ffffffff82821616156127255760405163a2a7201360e01b8152600481018490526024016107bb565b60405163cf40882360e01b8152600481018990523060248201526001600160a01b0387811660448301526001600160401b03871660648301527f0000000000000000000000000000000000000000000000000000000000000000169063cf40882390608401600060405180830381600087803b1580156127a457600080fd5b505af11580156127b8573d6000803e3d6000fd5b5050506001600160a01b038816905061281f5760006127d689610800565b509150506201ffff196202000082160161280e57604051632ca49b0d60e11b81526001600160a01b03891660048201526024016107bb565b612819896000613bb3565b5061191e565b600061282a896116b0565b905061284c81898b60001c600160405180602001604052806000815250613e44565b505050505050505050565b6128618383613365565b61286b81336114cd565b61288c57803360405163168ab55d60e31b81526004016107bb929190614f97565b7f6c32148f748aba23997146d7fe89e962e3cc30271290fb96f5f4337756c03b5284016128cc5760405163615a470360e01b815260040160405180910390fd5b6001600160a01b03821615806128ea57506001600160a01b03821630145b1561291357604051632ca49b0d60e11b81526001600160a01b03831660048201526024016107bb565b6116aa6118948585613365565b60008061292d8484613365565b9050600061293a82613615565b90506000805160206156ec833981519152851461295a5791506107fa9050565b6040516331a9108f60e11b8152600481018590527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690636352211e90602401602060405180830381865afa9250505080156129db575060408051601f3d908101601f191682019092526129d891810190615191565b60015b6129ea576000925050506107fa565b6001600160a01b0316301492506107fa915050565b612a0761330b565b6001600160a01b038216600081815260046020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf8791015b60405180910390a25050565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205460ff1690565b600080612adc600087878080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509293925050613f269050565b915091506000612b258288888080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509293925050613ce59050565b90506000612b338285613365565b6000818152600660205260409020909150612b4f888a836152fa565b507f6c32148f748aba23997146d7fe89e962e3cc30271290fb96f5f4337756c03b528201612b905760405163615a470360e01b815260040160405180910390fd5b6040516302571be360e01b8152600481018290526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906302571be390602401602060405180830381865afa158015612bf8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612c1c9190615191565b90506001600160a01b0381163314801590612cc4575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000000000000000000000000000000000000000000000169063e985e9c590604401602060405180830381865afa158015612c9e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612cc291906151ae565b155b15612ce657813360405163168ab55d60e31b81526004016107bb929190614f97565b6001600160a01b03861615612d7657604051630c4b7b8560e11b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690631896f70a90612d439085908a90600401614f97565b600060405180830381600087803b158015612d5d57600080fd5b505af1158015612d71573d6000803e3d6000fd5b505050505b604051635b0fc9c360e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690635b0fc9c390612dc49085903090600401614f97565b600060405180830381600087803b158015612dde57600080fd5b505af1158015612df2573d6000803e3d6000fd5b5050505061284c828a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201829052508d93509150819050613ca3565b6001600160a01b038416612e5f5760405162461bcd60e51b81526004016107bb906150a5565b6001600160a01b038516331480612e7b5750612e7b8533612a67565b612ed95760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2063616c6c6572206973206e6f74206f776e6572206e6f7260448201526808185c1c1c9bdd995960ba1b60648201526084016107bb565b6112588585858585613e44565b612eee61330b565b6001600160a01b038116612f535760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107bb565b61213581613b63565b60008181526006602052604081208054829190612f789061506b565b80601f0160208091040260200160405190810160405280929190818152602001828054612fa49061506b565b8015612ff15780601f10612fc657610100808354040283529160200191612ff1565b820191906000526020600020905b815481529060010190602001808311612fd457829003601f168201915b50505050509050805160000361300a5750600092915050565b6000806130178382613f26565b909250905060006130288483613ce5565b905061096b8184612920565b60008042836001600160401b031610156130615761ffff196201000085160161305c57600094505b600093505b50929391925050565b60006001600160e01b03198216636cdb3d1360e11b148061309b57506001600160e01b031982166303a24d0760e21b145b806107fa57506301ffc9a760e01b6001600160e01b03198316146107fa565b60006130c5826116b0565b9050806001600160a01b0316836001600160a01b0316036131325760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084016107bb565b336001600160a01b038216148061314e575061314e8133612a67565b6131c05760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016107bb565b6108f68383613fdd565b6000620200008381161480156108ae5750426131e96276a700846153b9565b6001600160401b0316109392505050565b84516020860120600061321b6000805160206156ec83398151915283613365565b9050600061324488604051806040016040528060058152602001626cae8d60e31b81525061404b565b600083815260066020526040902090915061325f82826153d9565b50613272828289620300008a1789613ca3565b6001600160a01b0384161561191e57604051630c4b7b8560e11b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690631896f70a906132cf9085908890600401614f97565b600060405180830381600087803b1580156132e957600080fd5b505af11580156132fd573d6000803e3d6000fd5b505050505050505050505050565b6000546001600160a01b031633146118005760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107bb565b604080516020808201949094528082019290925280518083038201815260609092019052805191012090565b6000808061339e84610800565b91945092509050426001600160401b0382161080801561346157506001600160a01b038416158061346157506040516302571be360e01b8152600481018690526000906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906302571be390602401602060405180830381865afa158015613432573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906134569190615191565b6001600160a01b0316145b156134a057600061347187610800565b50915050602081161561349a5760405163a2a7201360e01b8152600481018790526024016107bb565b506134c7565b620100008316156134c75760405163a2a7201360e01b8152600481018690526024016107bb565b505050505050565b63fffdffff81811763ffffffff16146134fe5760405163a2a7201360e01b8152600481018390526024016107bb565b5050565b606060006135ab836006600088815260200190815260200160002080546135289061506b565b80601f01602080910402602001604051908101604052809291908181526020018280546135549061506b565b80156135a15780601f10613576576101008083540402835291602001916135a1565b820191906000526020600020905b81548152906001019060200180831161358457829003601f168201915b505050505061404b565b60008581526006602052604090209091506135c682826153d9565b50949350505050565b6000806135db85610800565b925050506000806135ee8860001c610800565b92509250506135fe878784613a0f565b613609858483613a4a565b98975050505050505050565b600080613621836116b0565b6001600160a01b0316141580156107fa57506040516302571be360e01b81526004810183905230906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906302571be390602401602060405180830381865afa15801561369a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906136be9190615191565b6001600160a01b03161492915050565b600086815260066020526040812080546136ed9187916135289061506b565b90506136fc8682868686613ca3565b50505050505050565b6000808061371288610800565b925092509250600061373c88600660008d815260200190815260200160002080546135289061506b565b60008a81526006602052604090208054919250906137599061506b565b905060000361377c57600089815260066020526040902061377a82826153d9565b505b61378b89858886178589613a90565b6001600160a01b0387166137a9576137a4896000613bb3565b610ad5565b610ad584888b60001c600160405180602001604052806000815250613e44565b6201ffff19620200008316016137e9576137e66276a700826153b9565b90505b42816001600160401b03161015613822576201000082161561381d5760405162461bcd60e51b81526004016107bb90615100565b613847565b60048216156138475760405163a2a7201360e01b8152600481018490526024016107bb565b604082166000036108f6575050600090815260036020526040902080546001600160a01b0319169055565b60c0816001600160401b0316901b60a08363ffffffff16901b846001600160a01b03161717600160008681526020019081526020016000208190555050505050565b6001600160a01b0384163b156134c75760405163bc197c8160e01b81526001600160a01b0385169063bc197c81906138f89089908990889088908890600401615498565b6020604051808303816000875af1925050508015613933575060408051601f3d908101601f19168201909252613930918101906154ea565b60015b6139df5761393f615507565b806308c379a0036139785750613953615523565b8061395e575061397a565b8060405162461bcd60e51b81526004016107bb9190614514565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e20455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b60648201526084016107bb565b6001600160e01b0319811663bc197c8160e01b146136fc5760405162461bcd60e51b81526004016107bb906155ac565b63ffff00008216158015906001831615908290613a295750805b156112585760405163a2a7201360e01b8152600481018690526024016107bb565b6000816001600160401b0316846001600160401b03161115613a6a578193505b826001600160401b0316846001600160401b03161015613a88578293505b509192915050565b613a9c85858584613b4d565b60405163ffffffff8416815285907f39873f00c80f4f94b7bd1594aebcf650f003545b74824d57ddf4939e3ff3a34b9060200160405180910390a2816001600160401b0316816001600160401b03161115611258576040516001600160401b038216815285907ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b132906020015b60405180910390a25050505050565b600080613b4383610800565b5090949350505050565b613b5784836140c2565b6116aa84848484613872565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b613bbe826001611ebb565b15613bdf5760405163a2a7201360e01b8152600481018390526024016107bb565b613be882613da4565b604051635b0fc9c360e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690635b0fc9c390613c369085908590600401614f97565b600060405180830381600087803b158015613c5057600080fd5b505af1158015613c64573d6000803e3d6000fd5b50506040516001600160a01b03841681528492507fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c49150602001612a5b565b613caf858484846140fb565b847f8ce7013e8abebc55c3890a68f5a27c67c3f7efa64e584de5fb22363c606fd34085858585604051613b2894939291906155f4565b6000806000613cf48585613f26565b909250905081613d665760018551613d0c919061563b565b8414613d5a5760405162461bcd60e51b815260206004820152601d60248201527f6e616d65686173683a204a756e6b20617420656e64206f66206e616d6500000060448201526064016107bb565b50600091506107fa9050565b613d708582613ce5565b6040805160208101929092528101839052606001604051602081830303815290604052805190602001209250505092915050565b60008181526001602052604090205460a081901c60c082901c613dc8838383613034565b600086815260036020526040812080546001600160a01b0319169055909350613df5915085908484613872565b60408051858152600160208201526000916001600160a01b0386169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b6000806000613e5286610800565b925092509250613e638683836137c9565b846001148015613e845750876001600160a01b0316836001600160a01b0316145b613ea05760405162461bcd60e51b81526004016107bb90615100565b866001600160a01b0316836001600160a01b031603613ec157505050611258565b613ecd86888484613872565b60408051878152602081018790526001600160a01b03808a1692908b169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a461191e33898989898961416f565b60008083518310613f795760405162461bcd60e51b815260206004820152601e60248201527f726561644c6162656c3a20496e646578206f7574206f6620626f756e6473000060448201526064016107bb565b6000848481518110613f8d57613f8d6150ea565b016020015160f81c90508015613fb957613fb285613fac86600161564e565b8361422a565b9250613fbe565b600092505b613fc8818561564e565b613fd390600161564e565b9150509250929050565b600081815260036020526040902080546001600160a01b0319166001600160a01b0384169081179091558190614012826116b0565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b606060018351101561407057604051631406d65b60e11b815260040160405180910390fd5b60ff83511115614095578260405163e3ba295f60e01b81526004016107bb9190614514565b825183836040516020016140ab93929190615661565b604051602081830303815290604052905092915050565b61ffff8116158015906140da57506201000181811614155b156134fe5760405163a2a7201360e01b8152600481018390526024016107bb565b61410584836140c2565b6000848152600160205260409020546001600160a01b038116156141635761412c85613da4565b6040516000815285907fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c49060200160405180910390a25b6112588585858561424e565b6001600160a01b0384163b156134c75760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e61906141b390899089908890889088906004016156a6565b6020604051808303816000875af19250505080156141ee575060408051601f3d908101601f191682019092526141eb918101906154ea565b60015b6141fa5761393f615507565b6001600160e01b0319811663f23a6e6160e01b146136fc5760405162461bcd60e51b81526004016107bb906155ac565b8251600090614239838561564e565b111561424457600080fd5b5091016020012090565b836000808061425c84610800565b9194509250905063ffff000082166001600160401b038087169083161115614282578195505b42826001600160401b03161061429757958617955b6001600160a01b038416156142ee5760405162461bcd60e51b815260206004820152601f60248201527f455243313135353a206d696e74206f66206578697374696e6720746f6b656e0060448201526064016107bb565b6001600160a01b03881661434e5760405162461bcd60e51b815260206004820152602160248201527f455243313135353a206d696e7420746f20746865207a65726f206164647265736044820152607360f81b60648201526084016107bb565b306001600160a01b038916036143c35760405162461bcd60e51b815260206004820152603460248201527f455243313135353a206e65774f776e65722063616e6e6f74206265207468652060448201527313985b5955dc985c1c195c8818dbdb9d1c9858dd60621b60648201526084016107bb565b6143cf85898989613872565b60408051868152600160208201526001600160a01b038a169160009133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a461284c3360008a8860016040518060200160405280600081525061416f565b6001600160a01b038116811461213557600080fd5b6000806040838503121561445f57600080fd5b823561446a81614437565b946020939093013593505050565b60006020828403121561448a57600080fd5b5035919050565b6001600160e01b03198116811461213557600080fd5b6000602082840312156144b957600080fd5b81356108ae81614491565b60005b838110156144df5781810151838201526020016144c7565b50506000910152565b600081518084526145008160208601602086016144c4565b601f01601f19169290920160200192915050565b6020815260006108ae60208301846144e8565b6000806040838503121561453a57600080fd5b82359150602083013561454c81614437565b809150509250929050565b80356001600160401b038116811461456e57600080fd5b919050565b6000806040838503121561458657600080fd5b8235915061459660208401614557565b90509250929050565b60008083601f8401126145b157600080fd5b5081356001600160401b038111156145c857600080fd5b6020830191508360208285010111156145e057600080fd5b9250929050565b6000806000806000608086880312156145ff57600080fd5b853561460a81614437565b9450602086013561461a81614437565b93506040860135925060608601356001600160401b0381111561463c57600080fd5b6146488882890161459f565b969995985093965092949392505050565b60006020828403121561466b57600080fd5b81356108ae81614437565b634e487b7160e01b600052604160045260246000fd5b601f8201601f191681016001600160401b03811182821017156146b1576146b1614676565b6040525050565b60006001600160401b038211156146d1576146d1614676565b50601f01601f191660200190565b600082601f8301126146f057600080fd5b81356146fb816146b8565b604051614708828261468c565b82815285602084870101111561471d57600080fd5b82602086016020830137600092810160200192909252509392505050565b803563ffffffff8116811461456e57600080fd5b600080600080600080600060e0888a03121561476a57600080fd5b8735965060208801356001600160401b0381111561478757600080fd5b6147938a828b016146df565b96505060408801356147a481614437565b945060608801356147b481614437565b93506147c260808901614557565b92506147d060a0890161473b565b91506147de60c08901614557565b905092959891949750929550565b60006001600160401b0382111561480557614805614676565b5060051b60200190565b600082601f83011261482057600080fd5b8135602061482d826147ec565b60405161483a828261468c565b83815260059390931b850182019282810191508684111561485a57600080fd5b8286015b84811015611eb0578035835291830191830161485e565b600080600080600060a0868803121561488d57600080fd5b853561489881614437565b945060208601356148a881614437565b935060408601356001600160401b03808211156148c457600080fd5b6148d089838a0161480f565b945060608801359150808211156148e657600080fd5b6148f289838a0161480f565b9350608088013591508082111561490857600080fd5b50614915888289016146df565b9150509295509295909350565b6000806000806080858703121561493857600080fd5b843593506020850135925061494f6040860161473b565b915061495d60608601614557565b905092959194509250565b803561ffff8116811461456e57600080fd5b6000806040838503121561498d57600080fd5b8235915061459660208401614968565b600080604083850312156149b057600080fd5b82356001600160401b03808211156149c757600080fd5b818501915085601f8301126149db57600080fd5b813560206149e8826147ec565b6040516149f5828261468c565b83815260059390931b8501820192828101915089841115614a1557600080fd5b948201945b83861015614a3c578535614a2d81614437565b82529482019490820190614a1a565b96505086013592505080821115614a5257600080fd5b50613fd38582860161480f565b600081518084526020808501945080840160005b83811015614a8f57815187529582019590820190600101614a73565b509495945050505050565b6020815260006108ae6020830184614a5f565b600080600060608486031215614ac257600080fd5b8335614acd81614437565b92506020840135614add81614437565b929592945050506040919091013590565b600080600060608486031215614b0357600080fd5b8335925060208401359150614b1a60408501614557565b90509250925092565b600080600060608486031215614b3857600080fd5b833592506020840135614b4a81614437565b91506040840135614b5a81614437565b809150509250925092565b600080600080600060808688031215614b7d57600080fd5b85356001600160401b03811115614b9357600080fd5b614b9f8882890161459f565b9096509450506020860135614bb381614437565b9250614bc160408701614968565b91506060860135614bd181614437565b809150509295509295909350565b801515811461213557600080fd5b60008060408385031215614c0057600080fd5b8235614c0b81614437565b9150602083013561454c81614bdf565b60008060008060008060a08789031215614c3457600080fd5b86356001600160401b03811115614c4a57600080fd5b614c5689828a0161459f565b9097509550506020870135614c6a81614437565b9350604087013592506060870135614c8181614437565b9150614c8f60808801614968565b90509295509295509295565b60008060408385031215614cae57600080fd5b823591506145966020840161473b565b60008060408385031215614cd157600080fd5b50508035926020909101359150565b60008060008060008060a08789031215614cf957600080fd5b8635955060208701356001600160401b03811115614d1657600080fd5b614d2289828a0161459f565b9096509450506040870135614d3681614437565b9250614d446060880161473b565b9150614c8f60808801614557565b60008060008060408587031215614d6857600080fd5b84356001600160401b0380821115614d7f57600080fd5b614d8b8883890161459f565b90965094506020870135915080821115614da457600080fd5b50614db18782880161459f565b95989497509550505050565b60008060008060808587031215614dd357600080fd5b843593506020850135614de581614437565b9250604085013561494f81614437565b600080600060608486031215614e0a57600080fd5b83359250602084013591506040840135614b5a81614437565b60008060408385031215614e3657600080fd5b8235614e4181614437565b9150602083013561454c81614437565b60008060008060608587031215614e6757600080fd5b84356001600160401b03811115614e7d57600080fd5b614e898782880161459f565b9095509350506020850135614e9d81614437565b91506040850135614ead81614437565b939692955090935050565b600080600080600060a08688031215614ed057600080fd5b8535614edb81614437565b94506020860135614eeb81614437565b9350604086013592506060860135915060808601356001600160401b03811115614f1457600080fd5b614915888289016146df565b600060208284031215614f3257600080fd5b81516001600160401b03811115614f4857600080fd5b8201601f81018413614f5957600080fd5b8051614f64816146b8565b604051614f71828261468c565b828152866020848601011115614f8657600080fd5b61096b8360208301602087016144c4565b9182526001600160a01b0316602082015260400190565b60008060008060808587031215614fc457600080fd5b84356001600160401b03811115614fda57600080fd5b614fe6878288016146df565b9450506020850135614ff781614437565b925061500560408601614968565b91506060850135614ead81614437565b60006020828403121561502757600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b6001600160401b038181168382160190808211156150645761506461502e565b5092915050565b600181811c9082168061507f57607f821691505b60208210810361509f57634e487b7160e01b600052602260045260246000fd5b50919050565b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b60006001820161515c5761515c61502e565b5060010190565b6040815260006151766040830185614a5f565b82810360208401526151888185614a5f565b95945050505050565b6000602082840312156151a357600080fd5b81516108ae81614437565b6000602082840312156151c057600080fd5b81516108ae81614bdf565b8183823760009101908152919050565b60208082526028908201527f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f604082015267373a3937b63632b960c11b606082015260800190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60c08152600061526060c083018a8c615223565b6001600160a01b03898116602085015263ffffffff891660408501526001600160401b03881660608501528616608084015282810360a08401526152a5818587615223565b9b9a5050505050505050505050565b601f8211156108f657600081815260208120601f850160051c810160208610156152db5750805b601f850160051c820191505b818110156134c7578281556001016152e7565b6001600160401b0383111561531157615311614676565b6153258361531f835461506b565b836152b4565b6000601f84116001811461535957600085156153415750838201355b600019600387901b1c1916600186901b178355611258565b600083815260209020601f19861690835b8281101561538a578685013582556020948501946001909201910161536a565b50868210156153a75760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b6001600160401b038281168282160390808211156150645761506461502e565b81516001600160401b038111156153f2576153f2614676565b61540681615400845461506b565b846152b4565b602080601f83116001811461543b57600084156154235750858301515b600019600386901b1c1916600185901b1785556134c7565b600085815260208120601f198616915b8281101561546a5788860151825594840194600190910190840161544b565b50858210156154885787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6001600160a01b0386811682528516602082015260a0604082018190526000906154c490830186614a5f565b82810360608401526154d68186614a5f565b9050828103608084015261360981856144e8565b6000602082840312156154fc57600080fd5b81516108ae81614491565b600060033d11156155205760046000803e5060005160e01c5b90565b600060443d10156155315790565b6040516003193d81016004833e81513d6001600160401b03816024840111818411171561556057505050505090565b82850191508151818111156155785750505050505090565b843d87010160208285010111156155925750505050505090565b6155a16020828601018761468c565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b60808152600061560760808301876144e8565b6001600160a01b039590951660208301525063ffffffff9290921660408301526001600160401b0316606090910152919050565b818103818111156107fa576107fa61502e565b808201808211156107fa576107fa61502e565b60ff60f81b8460f81b168152600083516156828160018501602088016144c4565b8351908301906156998160018401602088016144c4565b0160010195945050505050565b6001600160a01b03868116825285166020820152604081018490526060810183905260a0608082018190526000906156e0908301846144e8565b97965050505050505056fe93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4aea164736f6c6343000811000a"; +const isSuperArgs = (xs) => xs.length > 1; +class NameWrapper__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(_ens, _registrar, _metadataService, overrides) { + return super.getDeployTransaction(_ens, _registrar, _metadataService, overrides || {}); + } + deploy(_ens, _registrar, _metadataService, overrides) { + return super.deploy(_ens, _registrar, _metadataService, overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.NameWrapper__factory = NameWrapper__factory; +NameWrapper__factory.bytecode = _bytecode; +NameWrapper__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/index.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/index.d.ts new file mode 100644 index 00000000..27aec35e --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/index.d.ts @@ -0,0 +1,7 @@ +export { Controllable__factory } from "./Controllable__factory"; +export { ERC1155Fuse__factory } from "./ERC1155Fuse__factory"; +export { IMetadataService__factory } from "./IMetadataService__factory"; +export { INameWrapper__factory } from "./INameWrapper__factory"; +export { INameWrapperUpgrade__factory } from "./INameWrapperUpgrade__factory"; +export { NameWrapper__factory } from "./NameWrapper__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/index.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/index.d.ts.map new file mode 100644 index 00000000..5637a974 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/wrapper/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/index.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/index.js new file mode 100644 index 00000000..5c890e71 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/index.js @@ -0,0 +1,15 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.NameWrapper__factory = exports.INameWrapperUpgrade__factory = exports.INameWrapper__factory = exports.IMetadataService__factory = exports.ERC1155Fuse__factory = exports.Controllable__factory = void 0; +var Controllable__factory_1 = require("./Controllable__factory"); +Object.defineProperty(exports, "Controllable__factory", { enumerable: true, get: function () { return Controllable__factory_1.Controllable__factory; } }); +var ERC1155Fuse__factory_1 = require("./ERC1155Fuse__factory"); +Object.defineProperty(exports, "ERC1155Fuse__factory", { enumerable: true, get: function () { return ERC1155Fuse__factory_1.ERC1155Fuse__factory; } }); +var IMetadataService__factory_1 = require("./IMetadataService__factory"); +Object.defineProperty(exports, "IMetadataService__factory", { enumerable: true, get: function () { return IMetadataService__factory_1.IMetadataService__factory; } }); +var INameWrapper__factory_1 = require("./INameWrapper__factory"); +Object.defineProperty(exports, "INameWrapper__factory", { enumerable: true, get: function () { return INameWrapper__factory_1.INameWrapper__factory; } }); +var INameWrapperUpgrade__factory_1 = require("./INameWrapperUpgrade__factory"); +Object.defineProperty(exports, "INameWrapperUpgrade__factory", { enumerable: true, get: function () { return INameWrapperUpgrade__factory_1.INameWrapperUpgrade__factory; } }); +var NameWrapper__factory_1 = require("./NameWrapper__factory"); +Object.defineProperty(exports, "NameWrapper__factory", { enumerable: true, get: function () { return NameWrapper__factory_1.NameWrapper__factory; } }); diff --git a/dist/types/factories/@ensdomains/ens-contracts/index.d.ts b/dist/types/factories/@ensdomains/ens-contracts/index.d.ts new file mode 100644 index 00000000..0687b2ab --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/index.d.ts @@ -0,0 +1,2 @@ +export * as contracts from "./contracts"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/index.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/index.d.ts.map new file mode 100644 index 00000000..8a054516 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/factories/@ensdomains/ens-contracts/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/index.js b/dist/types/factories/@ensdomains/ens-contracts/index.js new file mode 100644 index 00000000..7ed2f1f8 --- /dev/null +++ b/dist/types/factories/@ensdomains/ens-contracts/index.js @@ -0,0 +1,27 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.contracts = void 0; +exports.contracts = __importStar(require("./contracts")); diff --git a/dist/types/factories/@ensdomains/index.d.ts b/dist/types/factories/@ensdomains/index.d.ts new file mode 100644 index 00000000..b6dcaaa0 --- /dev/null +++ b/dist/types/factories/@ensdomains/index.d.ts @@ -0,0 +1,2 @@ +export * as ensContracts from "./ens-contracts"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/index.d.ts.map b/dist/types/factories/@ensdomains/index.d.ts.map new file mode 100644 index 00000000..ca3aeff7 --- /dev/null +++ b/dist/types/factories/@ensdomains/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../types/factories/@ensdomains/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,YAAY,MAAM,iBAAiB,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/index.js b/dist/types/factories/@ensdomains/index.js new file mode 100644 index 00000000..f6898cc4 --- /dev/null +++ b/dist/types/factories/@ensdomains/index.js @@ -0,0 +1,27 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ensContracts = void 0; +exports.ensContracts = __importStar(require("./ens-contracts")); diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/access/index.d.ts b/dist/types/factories/@openzeppelin/contracts-2.3/access/index.d.ts new file mode 100644 index 00000000..8a4c8c90 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-2.3/access/index.d.ts @@ -0,0 +1,2 @@ +export * as roles from "./roles"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/access/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts-2.3/access/index.d.ts.map new file mode 100644 index 00000000..50a355f7 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-2.3/access/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/@openzeppelin/contracts-2.3/access/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/access/index.js b/dist/types/factories/@openzeppelin/contracts-2.3/access/index.js new file mode 100644 index 00000000..328b1867 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-2.3/access/index.js @@ -0,0 +1,27 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.roles = void 0; +exports.roles = __importStar(require("./roles")); diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/MinterRole__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/MinterRole__factory.d.ts new file mode 100644 index 00000000..1c858d09 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/MinterRole__factory.d.ts @@ -0,0 +1,69 @@ +import { type ContractRunner } from "ethers"; +import type { MinterRole, MinterRoleInterface } from "../../../../../@openzeppelin/contracts-2.3/access/roles/MinterRole"; +export declare class MinterRole__factory { + static readonly abi: readonly [{ + readonly inputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "constructor"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "MinterAdded"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "MinterRemoved"; + readonly type: "event"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "addMinter"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "isMinter"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly []; + readonly name: "renounceMinter"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): MinterRoleInterface; + static connect(address: string, runner?: ContractRunner | null): MinterRole; +} +//# sourceMappingURL=MinterRole__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/MinterRole__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/MinterRole__factory.d.ts.map new file mode 100644 index 00000000..525a00de --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/MinterRole__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"MinterRole__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts-2.3/access/roles/MinterRole__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,UAAU,EACV,mBAAmB,EACpB,MAAM,oEAAoE,CAAC;AAkF5E,qBAAa,mBAAmB;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,mBAAmB;IAG7C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,UAAU;CAG5E"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/MinterRole__factory.js b/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/MinterRole__factory.js new file mode 100644 index 00000000..77ccae2f --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/MinterRole__factory.js @@ -0,0 +1,93 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.MinterRole__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [], + payable: false, + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "MinterAdded", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "MinterRemoved", + type: "event", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "addMinter", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "isMinter", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [], + name: "renounceMinter", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, +]; +class MinterRole__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.MinterRole__factory = MinterRole__factory; +MinterRole__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole__factory.d.ts new file mode 100644 index 00000000..14f7e632 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole__factory.d.ts @@ -0,0 +1,69 @@ +import { type ContractRunner } from "ethers"; +import type { WhitelistAdminRole, WhitelistAdminRoleInterface } from "../../../../../@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole"; +export declare class WhitelistAdminRole__factory { + static readonly abi: readonly [{ + readonly inputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "constructor"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "WhitelistAdminAdded"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "WhitelistAdminRemoved"; + readonly type: "event"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "addWhitelistAdmin"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "isWhitelistAdmin"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly []; + readonly name: "renounceWhitelistAdmin"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): WhitelistAdminRoleInterface; + static connect(address: string, runner?: ContractRunner | null): WhitelistAdminRole; +} +//# sourceMappingURL=WhitelistAdminRole__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole__factory.d.ts.map new file mode 100644 index 00000000..22faa1be --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"WhitelistAdminRole__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,kBAAkB,EAClB,2BAA2B,EAC5B,MAAM,4EAA4E,CAAC;AAkFpF,qBAAa,2BAA2B;IACtC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,2BAA2B;IAGrD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,kBAAkB;CAGtB"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole__factory.js b/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole__factory.js new file mode 100644 index 00000000..dfe5535d --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole__factory.js @@ -0,0 +1,93 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.WhitelistAdminRole__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [], + payable: false, + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "WhitelistAdminAdded", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "WhitelistAdminRemoved", + type: "event", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "addWhitelistAdmin", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "isWhitelistAdmin", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [], + name: "renounceWhitelistAdmin", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, +]; +class WhitelistAdminRole__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.WhitelistAdminRole__factory = WhitelistAdminRole__factory; +WhitelistAdminRole__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole__factory.d.ts new file mode 100644 index 00000000..3e209f54 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole__factory.d.ts @@ -0,0 +1,147 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../../../common"; +import type { WhitelistedRole, WhitelistedRoleInterface } from "../../../../../@openzeppelin/contracts-2.3/access/roles/WhitelistedRole"; +declare type WhitelistedRoleConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class WhitelistedRole__factory extends ContractFactory { + constructor(...args: WhitelistedRoleConstructorParams); + getDeployTransaction(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): WhitelistedRole__factory; + static readonly bytecode = "0x6080604052610016336001600160e01b0361001b16565b61018f565b61003381600061006a60201b6104161790919060201c565b6040516001600160a01b038216907f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129990600090a250565b61007d82826001600160e01b0361010e16565b156100e957604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b60006001600160a01b03821661016f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260228152602001806107546022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b6105b68061019e6000396000f3fe608060405234801561001057600080fd5b506004361061007d5760003560e01c80634c5a628c1161005b5780634c5a628c1461010a5780637362d9c814610112578063bb5f747b14610138578063d6cd94731461015e5761007d565b806310154bad14610082578063291d9549146100aa5780633af32abf146100d0575b600080fd5b6100a86004803603602081101561009857600080fd5b50356001600160a01b0316610166565b005b6100a8600480360360208110156100c057600080fd5b50356001600160a01b03166101b6565b6100f6600480360360208110156100e657600080fd5b50356001600160a01b0316610203565b604080519115158252519081900360200190f35b6100a861021c565b6100a86004803603602081101561012857600080fd5b50356001600160a01b0316610227565b6100f66004803603602081101561014e57600080fd5b50356001600160a01b0316610274565b6100a8610286565b61016f33610274565b6101aa5760405162461bcd60e51b81526004018080602001828103825260408152602001806105426040913960400191505060405180910390fd5b6101b38161028f565b50565b6101bf33610274565b6101fa5760405162461bcd60e51b81526004018080602001828103825260408152602001806105426040913960400191505060405180910390fd5b6101b3816102d7565b600061021660018363ffffffff61031f16565b92915050565b61022533610386565b565b61023033610274565b61026b5760405162461bcd60e51b81526004018080602001828103825260408152602001806105426040913960400191505060405180910390fd5b6101b3816103ce565b6000610216818363ffffffff61031f16565b610225336102d7565b6102a060018263ffffffff61041616565b6040516001600160a01b038216907fee1504a83b6d4a361f4c1dc78ab59bfa30d6a3b6612c403e86bb01ef2984295f90600090a250565b6102e860018263ffffffff61049716565b6040516001600160a01b038216907f270d9b30cf5b0793bbfd54c9d5b94aeb49462b8148399000265144a8722da6b690600090a250565b60006001600160a01b0382166103665760405162461bcd60e51b81526004018080602001828103825260228152602001806105206022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b61039760008263ffffffff61049716565b6040516001600160a01b038216907f0a8eb35e5ca14b3d6f28e4abf2f128dbab231a58b56e89beb5d636115001e16590600090a250565b6103df60008263ffffffff61041616565b6040516001600160a01b038216907f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129990600090a250565b610420828261031f565b15610472576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b6104a1828261031f565b6104dc5760405162461bcd60e51b81526004018080602001828103825260218152602001806104ff6021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f206164647265737357686974656c69737441646d696e526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c69737441646d696e20726f6c65a265627a7a7231582030aebabaa6c3dadca8830d368f2bb7701d9562b25c9ab8d6c8a39d4323267ad464736f6c634300050c0032526f6c65733a206163636f756e7420697320746865207a65726f2061646472657373"; + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "WhitelistAdminAdded"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "WhitelistAdminRemoved"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "WhitelistedAdded"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "WhitelistedRemoved"; + readonly type: "event"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "addWhitelistAdmin"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "addWhitelisted"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "isWhitelistAdmin"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "isWhitelisted"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "removeWhitelisted"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly []; + readonly name: "renounceWhitelistAdmin"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly []; + readonly name: "renounceWhitelisted"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): WhitelistedRoleInterface; + static connect(address: string, runner?: ContractRunner | null): WhitelistedRole; +} +export {}; +//# sourceMappingURL=WhitelistedRole__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole__factory.d.ts.map new file mode 100644 index 00000000..706ddd08 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"WhitelistedRole__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,eAAe,EACf,wBAAwB,EACzB,MAAM,yEAAyE,CAAC;AAqKjF,aAAK,gCAAgC,GACjC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,wBAAyB,SAAQ,eAAe;gBAC/C,GAAG,IAAI,EAAE,gCAAgC;IAQ5C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,wBAAwB;IAIzE,MAAM,CAAC,QAAQ,CAAC,QAAQ,ovHAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,wBAAwB;IAGlD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,eAAe;CAGnB"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole__factory.js b/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole__factory.js new file mode 100644 index 00000000..04aa3658 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole__factory.js @@ -0,0 +1,193 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.WhitelistedRole__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "WhitelistAdminAdded", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "WhitelistAdminRemoved", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "WhitelistedAdded", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "WhitelistedRemoved", + type: "event", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "addWhitelistAdmin", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "addWhitelisted", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "isWhitelistAdmin", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "isWhitelisted", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "removeWhitelisted", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [], + name: "renounceWhitelistAdmin", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [], + name: "renounceWhitelisted", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, +]; +const _bytecode = "0x6080604052610016336001600160e01b0361001b16565b61018f565b61003381600061006a60201b6104161790919060201c565b6040516001600160a01b038216907f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129990600090a250565b61007d82826001600160e01b0361010e16565b156100e957604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b60006001600160a01b03821661016f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260228152602001806107546022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b6105b68061019e6000396000f3fe608060405234801561001057600080fd5b506004361061007d5760003560e01c80634c5a628c1161005b5780634c5a628c1461010a5780637362d9c814610112578063bb5f747b14610138578063d6cd94731461015e5761007d565b806310154bad14610082578063291d9549146100aa5780633af32abf146100d0575b600080fd5b6100a86004803603602081101561009857600080fd5b50356001600160a01b0316610166565b005b6100a8600480360360208110156100c057600080fd5b50356001600160a01b03166101b6565b6100f6600480360360208110156100e657600080fd5b50356001600160a01b0316610203565b604080519115158252519081900360200190f35b6100a861021c565b6100a86004803603602081101561012857600080fd5b50356001600160a01b0316610227565b6100f66004803603602081101561014e57600080fd5b50356001600160a01b0316610274565b6100a8610286565b61016f33610274565b6101aa5760405162461bcd60e51b81526004018080602001828103825260408152602001806105426040913960400191505060405180910390fd5b6101b38161028f565b50565b6101bf33610274565b6101fa5760405162461bcd60e51b81526004018080602001828103825260408152602001806105426040913960400191505060405180910390fd5b6101b3816102d7565b600061021660018363ffffffff61031f16565b92915050565b61022533610386565b565b61023033610274565b61026b5760405162461bcd60e51b81526004018080602001828103825260408152602001806105426040913960400191505060405180910390fd5b6101b3816103ce565b6000610216818363ffffffff61031f16565b610225336102d7565b6102a060018263ffffffff61041616565b6040516001600160a01b038216907fee1504a83b6d4a361f4c1dc78ab59bfa30d6a3b6612c403e86bb01ef2984295f90600090a250565b6102e860018263ffffffff61049716565b6040516001600160a01b038216907f270d9b30cf5b0793bbfd54c9d5b94aeb49462b8148399000265144a8722da6b690600090a250565b60006001600160a01b0382166103665760405162461bcd60e51b81526004018080602001828103825260228152602001806105206022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b61039760008263ffffffff61049716565b6040516001600160a01b038216907f0a8eb35e5ca14b3d6f28e4abf2f128dbab231a58b56e89beb5d636115001e16590600090a250565b6103df60008263ffffffff61041616565b6040516001600160a01b038216907f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129990600090a250565b610420828261031f565b15610472576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b6104a1828261031f565b6104dc5760405162461bcd60e51b81526004018080602001828103825260218152602001806104ff6021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f206164647265737357686974656c69737441646d696e526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c69737441646d696e20726f6c65a265627a7a7231582030aebabaa6c3dadca8830d368f2bb7701d9562b25c9ab8d6c8a39d4323267ad464736f6c634300050c0032526f6c65733a206163636f756e7420697320746865207a65726f2061646472657373"; +const isSuperArgs = (xs) => xs.length > 1; +class WhitelistedRole__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(overrides) { + return super.getDeployTransaction(overrides || {}); + } + deploy(overrides) { + return super.deploy(overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.WhitelistedRole__factory = WhitelistedRole__factory; +WhitelistedRole__factory.bytecode = _bytecode; +WhitelistedRole__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/index.d.ts b/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/index.d.ts new file mode 100644 index 00000000..f4024e12 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/index.d.ts @@ -0,0 +1,4 @@ +export { MinterRole__factory } from "./MinterRole__factory"; +export { WhitelistAdminRole__factory } from "./WhitelistAdminRole__factory"; +export { WhitelistedRole__factory } from "./WhitelistedRole__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/index.d.ts.map new file mode 100644 index 00000000..1ad6f7d5 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts-2.3/access/roles/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/index.js b/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/index.js new file mode 100644 index 00000000..fef34f20 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/index.js @@ -0,0 +1,9 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.WhitelistedRole__factory = exports.WhitelistAdminRole__factory = exports.MinterRole__factory = void 0; +var MinterRole__factory_1 = require("./MinterRole__factory"); +Object.defineProperty(exports, "MinterRole__factory", { enumerable: true, get: function () { return MinterRole__factory_1.MinterRole__factory; } }); +var WhitelistAdminRole__factory_1 = require("./WhitelistAdminRole__factory"); +Object.defineProperty(exports, "WhitelistAdminRole__factory", { enumerable: true, get: function () { return WhitelistAdminRole__factory_1.WhitelistAdminRole__factory; } }); +var WhitelistedRole__factory_1 = require("./WhitelistedRole__factory"); +Object.defineProperty(exports, "WhitelistedRole__factory", { enumerable: true, get: function () { return WhitelistedRole__factory_1.WhitelistedRole__factory; } }); diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/index.d.ts b/dist/types/factories/@openzeppelin/contracts-2.3/index.d.ts new file mode 100644 index 00000000..d5c9a38b --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-2.3/index.d.ts @@ -0,0 +1,4 @@ +export * as access from "./access"; +export * as introspection from "./introspection"; +export * as token from "./token"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts-2.3/index.d.ts.map new file mode 100644 index 00000000..20d4012f --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-2.3/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/factories/@openzeppelin/contracts-2.3/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,aAAa,MAAM,iBAAiB,CAAC;AACjD,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/index.js b/dist/types/factories/@openzeppelin/contracts-2.3/index.js new file mode 100644 index 00000000..8fa7a49b --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-2.3/index.js @@ -0,0 +1,29 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.token = exports.introspection = exports.access = void 0; +exports.access = __importStar(require("./access")); +exports.introspection = __importStar(require("./introspection")); +exports.token = __importStar(require("./token")); diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/introspection/ERC165__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-2.3/introspection/ERC165__factory.d.ts new file mode 100644 index 00000000..ea272c07 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-2.3/introspection/ERC165__factory.d.ts @@ -0,0 +1,29 @@ +import { type ContractRunner } from "ethers"; +import type { ERC165, ERC165Interface } from "../../../../@openzeppelin/contracts-2.3/introspection/ERC165"; +export declare class ERC165__factory { + static readonly abi: readonly [{ + readonly inputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "constructor"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): ERC165Interface; + static connect(address: string, runner?: ContractRunner | null): ERC165; +} +//# sourceMappingURL=ERC165__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/introspection/ERC165__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-2.3/introspection/ERC165__factory.d.ts.map new file mode 100644 index 00000000..323da87e --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-2.3/introspection/ERC165__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ERC165__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/@openzeppelin/contracts-2.3/introspection/ERC165__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,MAAM,EACN,eAAe,EAChB,MAAM,8DAA8D,CAAC;AAgCtE,qBAAa,eAAe;IAC1B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,eAAe;IAGzC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,MAAM;CAGxE"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/introspection/ERC165__factory.js b/dist/types/factories/@openzeppelin/contracts-2.3/introspection/ERC165__factory.js new file mode 100644 index 00000000..1e1be474 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-2.3/introspection/ERC165__factory.js @@ -0,0 +1,43 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ERC165__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [], + payable: false, + stateMutability: "nonpayable", + type: "constructor", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, +]; +class ERC165__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.ERC165__factory = ERC165__factory; +ERC165__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/introspection/IERC165__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-2.3/introspection/IERC165__factory.d.ts new file mode 100644 index 00000000..84d2eedc --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-2.3/introspection/IERC165__factory.d.ts @@ -0,0 +1,24 @@ +import { type ContractRunner } from "ethers"; +import type { IERC165, IERC165Interface } from "../../../../@openzeppelin/contracts-2.3/introspection/IERC165"; +export declare class IERC165__factory { + static readonly abi: readonly [{ + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): IERC165Interface; + static connect(address: string, runner?: ContractRunner | null): IERC165; +} +//# sourceMappingURL=IERC165__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/introspection/IERC165__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-2.3/introspection/IERC165__factory.d.ts.map new file mode 100644 index 00000000..271ff716 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-2.3/introspection/IERC165__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC165__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/@openzeppelin/contracts-2.3/introspection/IERC165__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,OAAO,EACP,gBAAgB,EACjB,MAAM,+DAA+D,CAAC;AA0BvE,qBAAa,gBAAgB;IAC3B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,gBAAgB;IAG1C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,OAAO;CAGzE"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/introspection/IERC165__factory.js b/dist/types/factories/@openzeppelin/contracts-2.3/introspection/IERC165__factory.js new file mode 100644 index 00000000..edac668d --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-2.3/introspection/IERC165__factory.js @@ -0,0 +1,37 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IERC165__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + constant: true, + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, +]; +class IERC165__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IERC165__factory = IERC165__factory; +IERC165__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/introspection/index.d.ts b/dist/types/factories/@openzeppelin/contracts-2.3/introspection/index.d.ts new file mode 100644 index 00000000..085812d5 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-2.3/introspection/index.d.ts @@ -0,0 +1,3 @@ +export { ERC165__factory } from "./ERC165__factory"; +export { IERC165__factory } from "./IERC165__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/introspection/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts-2.3/introspection/index.d.ts.map new file mode 100644 index 00000000..64594101 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-2.3/introspection/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/@openzeppelin/contracts-2.3/introspection/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/introspection/index.js b/dist/types/factories/@openzeppelin/contracts-2.3/introspection/index.js new file mode 100644 index 00000000..0b84bab7 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-2.3/introspection/index.js @@ -0,0 +1,7 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IERC165__factory = exports.ERC165__factory = void 0; +var ERC165__factory_1 = require("./ERC165__factory"); +Object.defineProperty(exports, "ERC165__factory", { enumerable: true, get: function () { return ERC165__factory_1.ERC165__factory; } }); +var IERC165__factory_1 = require("./IERC165__factory"); +Object.defineProperty(exports, "IERC165__factory", { enumerable: true, get: function () { return IERC165__factory_1.IERC165__factory; } }); diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable__factory.d.ts new file mode 100644 index 00000000..be98b79d --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable__factory.d.ts @@ -0,0 +1,275 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../../../common"; +import type { ERC721Burnable, ERC721BurnableInterface } from "../../../../../@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable"; +declare type ERC721BurnableConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class ERC721Burnable__factory extends ContractFactory { + constructor(...args: ERC721BurnableConstructorParams); + getDeployTransaction(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): ERC721Burnable__factory; + static readonly bytecode = "0x60806040526100367f01ffc9a7000000000000000000000000000000000000000000000000000000006001600160e01b0361006d16565b6100687f80ac58cd000000000000000000000000000000000000000000000000000000006001600160e01b0361006d16565b61013b565b7fffffffff0000000000000000000000000000000000000000000000000000000080821614156100fe57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f4552433136353a20696e76616c696420696e7465726661636520696400000000604482015290519081900360640190fd5b7fffffffff00000000000000000000000000000000000000000000000000000000166000908152602081905260409020805460ff19166001179055565b610ed88061014a6000396000f3fe608060405234801561001057600080fd5b50600436106100a95760003560e01c806342966c681161007157806342966c68146101bc5780636352211e146101d957806370a08231146101f6578063a22cb4651461022e578063b88d4fde1461025c578063e985e9c514610322576100a9565b806301ffc9a7146100ae578063081812fc146100e9578063095ea7b31461012257806323b872dd1461015057806342842e0e14610186575b600080fd5b6100d5600480360360208110156100c457600080fd5b50356001600160e01b031916610350565b604080519115158252519081900360200190f35b610106600480360360208110156100ff57600080fd5b503561036f565b604080516001600160a01b039092168252519081900360200190f35b61014e6004803603604081101561013857600080fd5b506001600160a01b0381351690602001356103d1565b005b61014e6004803603606081101561016657600080fd5b506001600160a01b038135811691602081013590911690604001356104e2565b61014e6004803603606081101561019c57600080fd5b506001600160a01b03813581169160208101359091169060400135610537565b61014e600480360360208110156101d257600080fd5b5035610552565b610106600480360360208110156101ef57600080fd5b50356105a3565b61021c6004803603602081101561020c57600080fd5b50356001600160a01b03166105fd565b60408051918252519081900360200190f35b61014e6004803603604081101561024457600080fd5b506001600160a01b0381351690602001351515610665565b61014e6004803603608081101561027257600080fd5b6001600160a01b038235811692602081013590911691604082013591908101906080810160608201356401000000008111156102ad57600080fd5b8201836020820111156102bf57600080fd5b803590602001918460018302840111640100000000831117156102e157600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610731945050505050565b6100d56004803603604081101561033857600080fd5b506001600160a01b0381358116916020013516610789565b6001600160e01b03191660009081526020819052604090205460ff1690565b600061037a826107b7565b6103b55760405162461bcd60e51b815260040180806020018281038252602c815260200180610da8602c913960400191505060405180910390fd5b506000908152600260205260409020546001600160a01b031690565b60006103dc826105a3565b9050806001600160a01b0316836001600160a01b0316141561042f5760405162461bcd60e51b8152600401808060200182810382526021815260200180610dfd6021913960400191505060405180910390fd5b336001600160a01b038216148061044b575061044b8133610789565b6104865760405162461bcd60e51b8152600401808060200182810382526038815260200180610d1d6038913960400191505060405180910390fd5b60008281526002602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b6104ec33826107d4565b6105275760405162461bcd60e51b8152600401808060200182810382526031815260200180610e1e6031913960400191505060405180910390fd5b610532838383610878565b505050565b61053283838360405180602001604052806000815250610731565b61055c33826107d4565b6105975760405162461bcd60e51b8152600401808060200182810382526030815260200180610e746030913960400191505060405180910390fd5b6105a0816109bc565b50565b6000818152600160205260408120546001600160a01b0316806105f75760405162461bcd60e51b8152600401808060200182810382526029815260200180610d7f6029913960400191505060405180910390fd5b92915050565b60006001600160a01b0382166106445760405162461bcd60e51b815260040180806020018281038252602a815260200180610d55602a913960400191505060405180910390fd5b6001600160a01b03821660009081526003602052604090206105f7906109ce565b6001600160a01b0382163314156106c3576040805162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604482015290519081900360640190fd5b3360008181526004602090815260408083206001600160a01b03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b61073c8484846104e2565b610748848484846109d2565b6107835760405162461bcd60e51b8152600401808060200182810382526032815260200180610c9b6032913960400191505060405180910390fd5b50505050565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205460ff1690565b6000908152600160205260409020546001600160a01b0316151590565b60006107df826107b7565b61081a5760405162461bcd60e51b815260040180806020018281038252602c815260200180610cf1602c913960400191505060405180910390fd5b6000610825836105a3565b9050806001600160a01b0316846001600160a01b031614806108605750836001600160a01b03166108558461036f565b6001600160a01b0316145b8061087057506108708185610789565b949350505050565b826001600160a01b031661088b826105a3565b6001600160a01b0316146108d05760405162461bcd60e51b8152600401808060200182810382526029815260200180610dd46029913960400191505060405180910390fd5b6001600160a01b0382166109155760405162461bcd60e51b8152600401808060200182810382526024815260200180610ccd6024913960400191505060405180910390fd5b61091e81610b05565b6001600160a01b038316600090815260036020526040902061093f90610b40565b6001600160a01b038216600090815260036020526040902061096090610b57565b60008181526001602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6105a06109c8826105a3565b82610b60565b5490565b60006109e6846001600160a01b0316610c37565b6109f257506001610870565b604051630a85bd0160e11b815233600482018181526001600160a01b03888116602485015260448401879052608060648501908152865160848601528651600095928a169463150b7a029490938c938b938b939260a4019060208501908083838e5b83811015610a6c578181015183820152602001610a54565b50505050905090810190601f168015610a995780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015610abb57600080fd5b505af1158015610acf573d6000803e3d6000fd5b505050506040513d6020811015610ae557600080fd5b50516001600160e01b031916630a85bd0160e11b14915050949350505050565b6000818152600260205260409020546001600160a01b0316156105a057600090815260026020526040902080546001600160a01b0319169055565b8054610b5390600163ffffffff610c3d16565b9055565b80546001019055565b816001600160a01b0316610b73826105a3565b6001600160a01b031614610bb85760405162461bcd60e51b8152600401808060200182810382526025815260200180610e4f6025913960400191505060405180910390fd5b610bc181610b05565b6001600160a01b0382166000908152600360205260409020610be290610b40565b60008181526001602052604080822080546001600160a01b0319169055518291906001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b3b151590565b600082821115610c94576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b5090039056fe4552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f7665644552433732313a206275726e206f6620746f6b656e2074686174206973206e6f74206f776e4552433732314275726e61626c653a2063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564a265627a7a723158200ba32e9c9462da34a9d3c6a111c2700852594b03759eff1f5a75e38e351e8adb64736f6c634300050c0032"; + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "approved"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Approval"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "ApprovalForAll"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Transfer"; + readonly type: "event"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "approve"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "balanceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "burn"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getApproved"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly name: "isApprovedForAll"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "ownerOf"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "_data"; + readonly type: "bytes"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "setApprovalForAll"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "transferFrom"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): ERC721BurnableInterface; + static connect(address: string, runner?: ContractRunner | null): ERC721Burnable; +} +export {}; +//# sourceMappingURL=ERC721Burnable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable__factory.d.ts.map new file mode 100644 index 00000000..d01c1725 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ERC721Burnable__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,cAAc,EACd,uBAAuB,EACxB,MAAM,wEAAwE,CAAC;AAwUhF,aAAK,+BAA+B,GAChC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,uBAAwB,SAAQ,eAAe;gBAC9C,GAAG,IAAI,EAAE,+BAA+B;IAQ3C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,uBAAuB;IAIxE,MAAM,CAAC,QAAQ,CAAC,QAAQ,4kQAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,uBAAuB;IAGjD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,cAAc;CAGlB"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable__factory.js b/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable__factory.js new file mode 100644 index 00000000..fa19a3b9 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable__factory.js @@ -0,0 +1,356 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ERC721Burnable__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "approved", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Approval", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "ApprovalForAll", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Transfer", + type: "event", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "approve", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "burn", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getApproved", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + name: "isApprovedForAll", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "ownerOf", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "safeTransferFrom", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "_data", + type: "bytes", + }, + ], + name: "safeTransferFrom", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "setApprovalForAll", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "transferFrom", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, +]; +const _bytecode = "0x60806040526100367f01ffc9a7000000000000000000000000000000000000000000000000000000006001600160e01b0361006d16565b6100687f80ac58cd000000000000000000000000000000000000000000000000000000006001600160e01b0361006d16565b61013b565b7fffffffff0000000000000000000000000000000000000000000000000000000080821614156100fe57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f4552433136353a20696e76616c696420696e7465726661636520696400000000604482015290519081900360640190fd5b7fffffffff00000000000000000000000000000000000000000000000000000000166000908152602081905260409020805460ff19166001179055565b610ed88061014a6000396000f3fe608060405234801561001057600080fd5b50600436106100a95760003560e01c806342966c681161007157806342966c68146101bc5780636352211e146101d957806370a08231146101f6578063a22cb4651461022e578063b88d4fde1461025c578063e985e9c514610322576100a9565b806301ffc9a7146100ae578063081812fc146100e9578063095ea7b31461012257806323b872dd1461015057806342842e0e14610186575b600080fd5b6100d5600480360360208110156100c457600080fd5b50356001600160e01b031916610350565b604080519115158252519081900360200190f35b610106600480360360208110156100ff57600080fd5b503561036f565b604080516001600160a01b039092168252519081900360200190f35b61014e6004803603604081101561013857600080fd5b506001600160a01b0381351690602001356103d1565b005b61014e6004803603606081101561016657600080fd5b506001600160a01b038135811691602081013590911690604001356104e2565b61014e6004803603606081101561019c57600080fd5b506001600160a01b03813581169160208101359091169060400135610537565b61014e600480360360208110156101d257600080fd5b5035610552565b610106600480360360208110156101ef57600080fd5b50356105a3565b61021c6004803603602081101561020c57600080fd5b50356001600160a01b03166105fd565b60408051918252519081900360200190f35b61014e6004803603604081101561024457600080fd5b506001600160a01b0381351690602001351515610665565b61014e6004803603608081101561027257600080fd5b6001600160a01b038235811692602081013590911691604082013591908101906080810160608201356401000000008111156102ad57600080fd5b8201836020820111156102bf57600080fd5b803590602001918460018302840111640100000000831117156102e157600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610731945050505050565b6100d56004803603604081101561033857600080fd5b506001600160a01b0381358116916020013516610789565b6001600160e01b03191660009081526020819052604090205460ff1690565b600061037a826107b7565b6103b55760405162461bcd60e51b815260040180806020018281038252602c815260200180610da8602c913960400191505060405180910390fd5b506000908152600260205260409020546001600160a01b031690565b60006103dc826105a3565b9050806001600160a01b0316836001600160a01b0316141561042f5760405162461bcd60e51b8152600401808060200182810382526021815260200180610dfd6021913960400191505060405180910390fd5b336001600160a01b038216148061044b575061044b8133610789565b6104865760405162461bcd60e51b8152600401808060200182810382526038815260200180610d1d6038913960400191505060405180910390fd5b60008281526002602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b6104ec33826107d4565b6105275760405162461bcd60e51b8152600401808060200182810382526031815260200180610e1e6031913960400191505060405180910390fd5b610532838383610878565b505050565b61053283838360405180602001604052806000815250610731565b61055c33826107d4565b6105975760405162461bcd60e51b8152600401808060200182810382526030815260200180610e746030913960400191505060405180910390fd5b6105a0816109bc565b50565b6000818152600160205260408120546001600160a01b0316806105f75760405162461bcd60e51b8152600401808060200182810382526029815260200180610d7f6029913960400191505060405180910390fd5b92915050565b60006001600160a01b0382166106445760405162461bcd60e51b815260040180806020018281038252602a815260200180610d55602a913960400191505060405180910390fd5b6001600160a01b03821660009081526003602052604090206105f7906109ce565b6001600160a01b0382163314156106c3576040805162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604482015290519081900360640190fd5b3360008181526004602090815260408083206001600160a01b03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b61073c8484846104e2565b610748848484846109d2565b6107835760405162461bcd60e51b8152600401808060200182810382526032815260200180610c9b6032913960400191505060405180910390fd5b50505050565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205460ff1690565b6000908152600160205260409020546001600160a01b0316151590565b60006107df826107b7565b61081a5760405162461bcd60e51b815260040180806020018281038252602c815260200180610cf1602c913960400191505060405180910390fd5b6000610825836105a3565b9050806001600160a01b0316846001600160a01b031614806108605750836001600160a01b03166108558461036f565b6001600160a01b0316145b8061087057506108708185610789565b949350505050565b826001600160a01b031661088b826105a3565b6001600160a01b0316146108d05760405162461bcd60e51b8152600401808060200182810382526029815260200180610dd46029913960400191505060405180910390fd5b6001600160a01b0382166109155760405162461bcd60e51b8152600401808060200182810382526024815260200180610ccd6024913960400191505060405180910390fd5b61091e81610b05565b6001600160a01b038316600090815260036020526040902061093f90610b40565b6001600160a01b038216600090815260036020526040902061096090610b57565b60008181526001602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6105a06109c8826105a3565b82610b60565b5490565b60006109e6846001600160a01b0316610c37565b6109f257506001610870565b604051630a85bd0160e11b815233600482018181526001600160a01b03888116602485015260448401879052608060648501908152865160848601528651600095928a169463150b7a029490938c938b938b939260a4019060208501908083838e5b83811015610a6c578181015183820152602001610a54565b50505050905090810190601f168015610a995780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015610abb57600080fd5b505af1158015610acf573d6000803e3d6000fd5b505050506040513d6020811015610ae557600080fd5b50516001600160e01b031916630a85bd0160e11b14915050949350505050565b6000818152600260205260409020546001600160a01b0316156105a057600090815260026020526040902080546001600160a01b0319169055565b8054610b5390600163ffffffff610c3d16565b9055565b80546001019055565b816001600160a01b0316610b73826105a3565b6001600160a01b031614610bb85760405162461bcd60e51b8152600401808060200182810382526025815260200180610e4f6025913960400191505060405180910390fd5b610bc181610b05565b6001600160a01b0382166000908152600360205260409020610be290610b40565b60008181526001602052604080822080546001600160a01b0319169055518291906001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b3b151590565b600082821115610c94576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b5090039056fe4552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f7665644552433732313a206275726e206f6620746f6b656e2074686174206973206e6f74206f776e4552433732314275726e61626c653a2063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564a265627a7a723158200ba32e9c9462da34a9d3c6a111c2700852594b03759eff1f5a75e38e351e8adb64736f6c634300050c0032"; +const isSuperArgs = (xs) => xs.length > 1; +class ERC721Burnable__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(overrides) { + return super.getDeployTransaction(overrides || {}); + } + deploy(overrides) { + return super.deploy(overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.ERC721Burnable__factory = ERC721Burnable__factory; +ERC721Burnable__factory.bytecode = _bytecode; +ERC721Burnable__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721__factory.d.ts new file mode 100644 index 00000000..64ba6c37 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721__factory.d.ts @@ -0,0 +1,268 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../../../common"; +import type { ERC721, ERC721Interface } from "../../../../../@openzeppelin/contracts-2.3/token/ERC721/ERC721"; +declare type ERC721ConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class ERC721__factory extends ContractFactory { + constructor(...args: ERC721ConstructorParams); + getDeployTransaction(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): ERC721__factory; + static readonly bytecode = "0x608060405234801561001057600080fd5b506100437f01ffc9a7000000000000000000000000000000000000000000000000000000006001600160e01b0361007a16565b6100757f80ac58cd000000000000000000000000000000000000000000000000000000006001600160e01b0361007a16565b610148565b7fffffffff00000000000000000000000000000000000000000000000000000000808216141561010b57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f4552433136353a20696e76616c696420696e7465726661636520696400000000604482015290519081900360640190fd5b7fffffffff00000000000000000000000000000000000000000000000000000000166000908152602081905260409020805460ff19166001179055565b610d23806101576000396000f3fe608060405234801561001057600080fd5b506004361061009e5760003560e01c80636352211e116100665780636352211e146101b157806370a08231146101ce578063a22cb46514610206578063b88d4fde14610234578063e985e9c5146102fa5761009e565b806301ffc9a7146100a3578063081812fc146100de578063095ea7b31461011757806323b872dd1461014557806342842e0e1461017b575b600080fd5b6100ca600480360360208110156100b957600080fd5b50356001600160e01b031916610328565b604080519115158252519081900360200190f35b6100fb600480360360208110156100f457600080fd5b5035610347565b604080516001600160a01b039092168252519081900360200190f35b6101436004803603604081101561012d57600080fd5b506001600160a01b0381351690602001356103a9565b005b6101436004803603606081101561015b57600080fd5b506001600160a01b038135811691602081013590911690604001356104ba565b6101436004803603606081101561019157600080fd5b506001600160a01b0381358116916020810135909116906040013561050f565b6100fb600480360360208110156101c757600080fd5b503561052a565b6101f4600480360360208110156101e457600080fd5b50356001600160a01b0316610584565b60408051918252519081900360200190f35b6101436004803603604081101561021c57600080fd5b506001600160a01b03813516906020013515156105ec565b6101436004803603608081101561024a57600080fd5b6001600160a01b0382358116926020810135909116916040820135919081019060808101606082013564010000000081111561028557600080fd5b82018360208201111561029757600080fd5b803590602001918460018302840111640100000000831117156102b957600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506106b8945050505050565b6100ca6004803603604081101561031057600080fd5b506001600160a01b0381358116916020013516610710565b6001600160e01b03191660009081526020819052604090205460ff1690565b60006103528261073e565b61038d5760405162461bcd60e51b815260040180806020018281038252602c815260200180610c48602c913960400191505060405180910390fd5b506000908152600260205260409020546001600160a01b031690565b60006103b48261052a565b9050806001600160a01b0316836001600160a01b031614156104075760405162461bcd60e51b8152600401808060200182810382526021815260200180610c9d6021913960400191505060405180910390fd5b336001600160a01b038216148061042357506104238133610710565b61045e5760405162461bcd60e51b8152600401808060200182810382526038815260200180610bbd6038913960400191505060405180910390fd5b60008281526002602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b6104c4338261075b565b6104ff5760405162461bcd60e51b8152600401808060200182810382526031815260200180610cbe6031913960400191505060405180910390fd5b61050a8383836107ff565b505050565b61050a838383604051806020016040528060008152506106b8565b6000818152600160205260408120546001600160a01b03168061057e5760405162461bcd60e51b8152600401808060200182810382526029815260200180610c1f6029913960400191505060405180910390fd5b92915050565b60006001600160a01b0382166105cb5760405162461bcd60e51b815260040180806020018281038252602a815260200180610bf5602a913960400191505060405180910390fd5b6001600160a01b038216600090815260036020526040902061057e90610943565b6001600160a01b03821633141561064a576040805162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604482015290519081900360640190fd5b3360008181526004602090815260408083206001600160a01b03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b6106c38484846104ba565b6106cf84848484610947565b61070a5760405162461bcd60e51b8152600401808060200182810382526032815260200180610b3b6032913960400191505060405180910390fd5b50505050565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205460ff1690565b6000908152600160205260409020546001600160a01b0316151590565b60006107668261073e565b6107a15760405162461bcd60e51b815260040180806020018281038252602c815260200180610b91602c913960400191505060405180910390fd5b60006107ac8361052a565b9050806001600160a01b0316846001600160a01b031614806107e75750836001600160a01b03166107dc84610347565b6001600160a01b0316145b806107f757506107f78185610710565b949350505050565b826001600160a01b03166108128261052a565b6001600160a01b0316146108575760405162461bcd60e51b8152600401808060200182810382526029815260200180610c746029913960400191505060405180910390fd5b6001600160a01b03821661089c5760405162461bcd60e51b8152600401808060200182810382526024815260200180610b6d6024913960400191505060405180910390fd5b6108a581610a7a565b6001600160a01b03831660009081526003602052604090206108c690610ab7565b6001600160a01b03821660009081526003602052604090206108e790610ace565b60008181526001602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b5490565b600061095b846001600160a01b0316610ad7565b610967575060016107f7565b604051630a85bd0160e11b815233600482018181526001600160a01b03888116602485015260448401879052608060648501908152865160848601528651600095928a169463150b7a029490938c938b938b939260a4019060208501908083838e5b838110156109e15781810151838201526020016109c9565b50505050905090810190601f168015610a0e5780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015610a3057600080fd5b505af1158015610a44573d6000803e3d6000fd5b505050506040513d6020811015610a5a57600080fd5b50516001600160e01b031916630a85bd0160e11b14915050949350505050565b6000818152600260205260409020546001600160a01b031615610ab457600081815260026020526040902080546001600160a01b03191690555b50565b8054610aca90600163ffffffff610add16565b9055565b80546001019055565b3b151590565b600082821115610b34576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b5090039056fe4552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564a265627a7a7231582044c1e1e4a0b84a5153bc596f2634beb28c71b7b75516742a8c786594e561986b64736f6c634300050c0032"; + static readonly abi: readonly [{ + readonly inputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "constructor"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "approved"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Approval"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "ApprovalForAll"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Transfer"; + readonly type: "event"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "approve"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "balanceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getApproved"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly name: "isApprovedForAll"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "ownerOf"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "_data"; + readonly type: "bytes"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "setApprovalForAll"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "transferFrom"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): ERC721Interface; + static connect(address: string, runner?: ContractRunner | null): ERC721; +} +export {}; +//# sourceMappingURL=ERC721__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721__factory.d.ts.map new file mode 100644 index 00000000..5090c29a --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ERC721__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,MAAM,EACN,eAAe,EAChB,MAAM,gEAAgE,CAAC;AA+TxE,aAAK,uBAAuB,GACxB,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,eAAgB,SAAQ,eAAe;gBACtC,GAAG,IAAI,EAAE,uBAAuB;IAQnC,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,eAAe;IAIhE,MAAM,CAAC,QAAQ,CAAC,QAAQ,4vOAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,eAAe;IAGzC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,MAAM;CAGxE"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721__factory.js b/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721__factory.js new file mode 100644 index 00000000..facbf1c9 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721__factory.js @@ -0,0 +1,347 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ERC721__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [], + payable: false, + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "approved", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Approval", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "ApprovalForAll", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Transfer", + type: "event", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "approve", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getApproved", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + name: "isApprovedForAll", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "ownerOf", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "safeTransferFrom", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "_data", + type: "bytes", + }, + ], + name: "safeTransferFrom", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "setApprovalForAll", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "transferFrom", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, +]; +const _bytecode = "0x608060405234801561001057600080fd5b506100437f01ffc9a7000000000000000000000000000000000000000000000000000000006001600160e01b0361007a16565b6100757f80ac58cd000000000000000000000000000000000000000000000000000000006001600160e01b0361007a16565b610148565b7fffffffff00000000000000000000000000000000000000000000000000000000808216141561010b57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f4552433136353a20696e76616c696420696e7465726661636520696400000000604482015290519081900360640190fd5b7fffffffff00000000000000000000000000000000000000000000000000000000166000908152602081905260409020805460ff19166001179055565b610d23806101576000396000f3fe608060405234801561001057600080fd5b506004361061009e5760003560e01c80636352211e116100665780636352211e146101b157806370a08231146101ce578063a22cb46514610206578063b88d4fde14610234578063e985e9c5146102fa5761009e565b806301ffc9a7146100a3578063081812fc146100de578063095ea7b31461011757806323b872dd1461014557806342842e0e1461017b575b600080fd5b6100ca600480360360208110156100b957600080fd5b50356001600160e01b031916610328565b604080519115158252519081900360200190f35b6100fb600480360360208110156100f457600080fd5b5035610347565b604080516001600160a01b039092168252519081900360200190f35b6101436004803603604081101561012d57600080fd5b506001600160a01b0381351690602001356103a9565b005b6101436004803603606081101561015b57600080fd5b506001600160a01b038135811691602081013590911690604001356104ba565b6101436004803603606081101561019157600080fd5b506001600160a01b0381358116916020810135909116906040013561050f565b6100fb600480360360208110156101c757600080fd5b503561052a565b6101f4600480360360208110156101e457600080fd5b50356001600160a01b0316610584565b60408051918252519081900360200190f35b6101436004803603604081101561021c57600080fd5b506001600160a01b03813516906020013515156105ec565b6101436004803603608081101561024a57600080fd5b6001600160a01b0382358116926020810135909116916040820135919081019060808101606082013564010000000081111561028557600080fd5b82018360208201111561029757600080fd5b803590602001918460018302840111640100000000831117156102b957600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506106b8945050505050565b6100ca6004803603604081101561031057600080fd5b506001600160a01b0381358116916020013516610710565b6001600160e01b03191660009081526020819052604090205460ff1690565b60006103528261073e565b61038d5760405162461bcd60e51b815260040180806020018281038252602c815260200180610c48602c913960400191505060405180910390fd5b506000908152600260205260409020546001600160a01b031690565b60006103b48261052a565b9050806001600160a01b0316836001600160a01b031614156104075760405162461bcd60e51b8152600401808060200182810382526021815260200180610c9d6021913960400191505060405180910390fd5b336001600160a01b038216148061042357506104238133610710565b61045e5760405162461bcd60e51b8152600401808060200182810382526038815260200180610bbd6038913960400191505060405180910390fd5b60008281526002602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b6104c4338261075b565b6104ff5760405162461bcd60e51b8152600401808060200182810382526031815260200180610cbe6031913960400191505060405180910390fd5b61050a8383836107ff565b505050565b61050a838383604051806020016040528060008152506106b8565b6000818152600160205260408120546001600160a01b03168061057e5760405162461bcd60e51b8152600401808060200182810382526029815260200180610c1f6029913960400191505060405180910390fd5b92915050565b60006001600160a01b0382166105cb5760405162461bcd60e51b815260040180806020018281038252602a815260200180610bf5602a913960400191505060405180910390fd5b6001600160a01b038216600090815260036020526040902061057e90610943565b6001600160a01b03821633141561064a576040805162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604482015290519081900360640190fd5b3360008181526004602090815260408083206001600160a01b03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b6106c38484846104ba565b6106cf84848484610947565b61070a5760405162461bcd60e51b8152600401808060200182810382526032815260200180610b3b6032913960400191505060405180910390fd5b50505050565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205460ff1690565b6000908152600160205260409020546001600160a01b0316151590565b60006107668261073e565b6107a15760405162461bcd60e51b815260040180806020018281038252602c815260200180610b91602c913960400191505060405180910390fd5b60006107ac8361052a565b9050806001600160a01b0316846001600160a01b031614806107e75750836001600160a01b03166107dc84610347565b6001600160a01b0316145b806107f757506107f78185610710565b949350505050565b826001600160a01b03166108128261052a565b6001600160a01b0316146108575760405162461bcd60e51b8152600401808060200182810382526029815260200180610c746029913960400191505060405180910390fd5b6001600160a01b03821661089c5760405162461bcd60e51b8152600401808060200182810382526024815260200180610b6d6024913960400191505060405180910390fd5b6108a581610a7a565b6001600160a01b03831660009081526003602052604090206108c690610ab7565b6001600160a01b03821660009081526003602052604090206108e790610ace565b60008181526001602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b5490565b600061095b846001600160a01b0316610ad7565b610967575060016107f7565b604051630a85bd0160e11b815233600482018181526001600160a01b03888116602485015260448401879052608060648501908152865160848601528651600095928a169463150b7a029490938c938b938b939260a4019060208501908083838e5b838110156109e15781810151838201526020016109c9565b50505050905090810190601f168015610a0e5780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015610a3057600080fd5b505af1158015610a44573d6000803e3d6000fd5b505050506040513d6020811015610a5a57600080fd5b50516001600160e01b031916630a85bd0160e11b14915050949350505050565b6000818152600260205260409020546001600160a01b031615610ab457600081815260026020526040902080546001600160a01b03191690555b50565b8054610aca90600163ffffffff610add16565b9055565b80546001019055565b3b151590565b600082821115610b34576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b5090039056fe4552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564a265627a7a7231582044c1e1e4a0b84a5153bc596f2634beb28c71b7b75516742a8c786594e561986b64736f6c634300050c0032"; +const isSuperArgs = (xs) => xs.length > 1; +class ERC721__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(overrides) { + return super.getDeployTransaction(overrides || {}); + } + deploy(overrides) { + return super.deploy(overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.ERC721__factory = ERC721__factory; +ERC721__factory.bytecode = _bytecode; +ERC721__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata__factory.d.ts new file mode 100644 index 00000000..dcbcd80e --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata__factory.d.ts @@ -0,0 +1,288 @@ +import { type ContractRunner } from "ethers"; +import type { IERC721Metadata, IERC721MetadataInterface } from "../../../../../@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata"; +export declare class IERC721Metadata__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "approved"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Approval"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "ApprovalForAll"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Transfer"; + readonly type: "event"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "approve"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "balanceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "balance"; + readonly type: "uint256"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getApproved"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly name: "isApprovedForAll"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly []; + readonly name: "name"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "ownerOf"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly internalType: "bool"; + readonly name: "_approved"; + readonly type: "bool"; + }]; + readonly name: "setApprovalForAll"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly []; + readonly name: "symbol"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "tokenURI"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "transferFrom"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): IERC721MetadataInterface; + static connect(address: string, runner?: ContractRunner | null): IERC721Metadata; +} +//# sourceMappingURL=IERC721Metadata__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata__factory.d.ts.map new file mode 100644 index 00000000..bb524706 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC721Metadata__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,eAAe,EACf,wBAAwB,EACzB,MAAM,yEAAyE,CAAC;AAyWjF,qBAAa,wBAAwB;IACnC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,wBAAwB;IAGlD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,eAAe;CAGnB"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata__factory.js b/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata__factory.js new file mode 100644 index 00000000..2d7ff981 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata__factory.js @@ -0,0 +1,372 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IERC721Metadata__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "approved", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Approval", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "ApprovalForAll", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Transfer", + type: "event", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "approve", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "balance", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getApproved", + outputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + name: "isApprovedForAll", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "name", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "ownerOf", + outputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "safeTransferFrom", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "safeTransferFrom", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "bool", + name: "_approved", + type: "bool", + }, + ], + name: "setApprovalForAll", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "symbol", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "tokenURI", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "transferFrom", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, +]; +class IERC721Metadata__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IERC721Metadata__factory = IERC721Metadata__factory; +IERC721Metadata__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver__factory.d.ts new file mode 100644 index 00000000..983cd4d0 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver__factory.d.ts @@ -0,0 +1,36 @@ +import { type ContractRunner } from "ethers"; +import type { IERC721Receiver, IERC721ReceiverInterface } from "../../../../../@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver"; +export declare class IERC721Receiver__factory { + static readonly abi: readonly [{ + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "onERC721Received"; + readonly outputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: ""; + readonly type: "bytes4"; + }]; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): IERC721ReceiverInterface; + static connect(address: string, runner?: ContractRunner | null): IERC721Receiver; +} +//# sourceMappingURL=IERC721Receiver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver__factory.d.ts.map new file mode 100644 index 00000000..f5dd3d49 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC721Receiver__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,eAAe,EACf,wBAAwB,EACzB,MAAM,yEAAyE,CAAC;AAyCjF,qBAAa,wBAAwB;IACnC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,wBAAwB;IAGlD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,eAAe;CAGnB"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver__factory.js b/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver__factory.js new file mode 100644 index 00000000..632607c3 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver__factory.js @@ -0,0 +1,52 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IERC721Receiver__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + constant: false, + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "onERC721Received", + outputs: [ + { + internalType: "bytes4", + name: "", + type: "bytes4", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, +]; +class IERC721Receiver__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IERC721Receiver__factory = IERC721Receiver__factory; +IERC721Receiver__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721__factory.d.ts new file mode 100644 index 00000000..053c3357 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721__factory.d.ts @@ -0,0 +1,248 @@ +import { type ContractRunner } from "ethers"; +import type { IERC721, IERC721Interface } from "../../../../../@openzeppelin/contracts-2.3/token/ERC721/IERC721"; +export declare class IERC721__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "approved"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Approval"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "ApprovalForAll"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Transfer"; + readonly type: "event"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "approve"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "balanceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "balance"; + readonly type: "uint256"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getApproved"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly name: "isApprovedForAll"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "ownerOf"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly internalType: "bool"; + readonly name: "_approved"; + readonly type: "bool"; + }]; + readonly name: "setApprovalForAll"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "transferFrom"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): IERC721Interface; + static connect(address: string, runner?: ContractRunner | null): IERC721; +} +//# sourceMappingURL=IERC721__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721__factory.d.ts.map new file mode 100644 index 00000000..3f195b23 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC721__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,OAAO,EACP,gBAAgB,EACjB,MAAM,iEAAiE,CAAC;AAsTzE,qBAAa,gBAAgB;IAC3B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,gBAAgB;IAG1C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,OAAO;CAGzE"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721__factory.js b/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721__factory.js new file mode 100644 index 00000000..7a0e87d9 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721__factory.js @@ -0,0 +1,321 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IERC721__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "approved", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Approval", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "ApprovalForAll", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Transfer", + type: "event", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "approve", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "balance", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getApproved", + outputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + name: "isApprovedForAll", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "ownerOf", + outputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "safeTransferFrom", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "safeTransferFrom", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "bool", + name: "_approved", + type: "bool", + }, + ], + name: "setApprovalForAll", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "transferFrom", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, +]; +class IERC721__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IERC721__factory = IERC721__factory; +IERC721__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/index.d.ts b/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/index.d.ts new file mode 100644 index 00000000..d5453ba4 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/index.d.ts @@ -0,0 +1,6 @@ +export { ERC721__factory } from "./ERC721__factory"; +export { ERC721Burnable__factory } from "./ERC721Burnable__factory"; +export { IERC721__factory } from "./IERC721__factory"; +export { IERC721Metadata__factory } from "./IERC721Metadata__factory"; +export { IERC721Receiver__factory } from "./IERC721Receiver__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/index.d.ts.map new file mode 100644 index 00000000..e7046d5d --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts-2.3/token/ERC721/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/index.js b/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/index.js new file mode 100644 index 00000000..bcc2fcbf --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/index.js @@ -0,0 +1,13 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IERC721Receiver__factory = exports.IERC721Metadata__factory = exports.IERC721__factory = exports.ERC721Burnable__factory = exports.ERC721__factory = void 0; +var ERC721__factory_1 = require("./ERC721__factory"); +Object.defineProperty(exports, "ERC721__factory", { enumerable: true, get: function () { return ERC721__factory_1.ERC721__factory; } }); +var ERC721Burnable__factory_1 = require("./ERC721Burnable__factory"); +Object.defineProperty(exports, "ERC721Burnable__factory", { enumerable: true, get: function () { return ERC721Burnable__factory_1.ERC721Burnable__factory; } }); +var IERC721__factory_1 = require("./IERC721__factory"); +Object.defineProperty(exports, "IERC721__factory", { enumerable: true, get: function () { return IERC721__factory_1.IERC721__factory; } }); +var IERC721Metadata__factory_1 = require("./IERC721Metadata__factory"); +Object.defineProperty(exports, "IERC721Metadata__factory", { enumerable: true, get: function () { return IERC721Metadata__factory_1.IERC721Metadata__factory; } }); +var IERC721Receiver__factory_1 = require("./IERC721Receiver__factory"); +Object.defineProperty(exports, "IERC721Receiver__factory", { enumerable: true, get: function () { return IERC721Receiver__factory_1.IERC721Receiver__factory; } }); diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/token/index.d.ts b/dist/types/factories/@openzeppelin/contracts-2.3/token/index.d.ts new file mode 100644 index 00000000..ef29783a --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-2.3/token/index.d.ts @@ -0,0 +1,2 @@ +export * as erc721 from "./ERC721"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/token/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts-2.3/token/index.d.ts.map new file mode 100644 index 00000000..9aa5df19 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-2.3/token/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/@openzeppelin/contracts-2.3/token/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/token/index.js b/dist/types/factories/@openzeppelin/contracts-2.3/token/index.js new file mode 100644 index 00000000..0fbd83cd --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-2.3/token/index.js @@ -0,0 +1,27 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.erc721 = void 0; +exports.erc721 = __importStar(require("./ERC721")); diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable__factory.d.ts new file mode 100644 index 00000000..478ee190 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable__factory.d.ts @@ -0,0 +1,208 @@ +import { type ContractRunner } from "ethers"; +import type { AccessControlEnumerableUpgradeable, AccessControlEnumerableUpgradeableInterface } from "../../../../@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable"; +export declare class AccessControlEnumerableUpgradeable__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "uint8"; + readonly name: "version"; + readonly type: "uint8"; + }]; + readonly name: "Initialized"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "previousAdminRole"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "newAdminRole"; + readonly type: "bytes32"; + }]; + readonly name: "RoleAdminChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "sender"; + readonly type: "address"; + }]; + readonly name: "RoleGranted"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "sender"; + readonly type: "address"; + }]; + readonly name: "RoleRevoked"; + readonly type: "event"; + }, { + readonly inputs: readonly []; + readonly name: "DEFAULT_ADMIN_ROLE"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }]; + readonly name: "getRoleAdmin"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "index"; + readonly type: "uint256"; + }]; + readonly name: "getRoleMember"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }]; + readonly name: "getRoleMemberCount"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "grantRole"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "hasRole"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "renounceRole"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "revokeRole"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): AccessControlEnumerableUpgradeableInterface; + static connect(address: string, runner?: ContractRunner | null): AccessControlEnumerableUpgradeable; +} +//# sourceMappingURL=AccessControlEnumerableUpgradeable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable__factory.d.ts.map new file mode 100644 index 00000000..288f4d4a --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"AccessControlEnumerableUpgradeable__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,kCAAkC,EAClC,2CAA2C,EAC5C,MAAM,2FAA2F,CAAC;AAyQnG,qBAAa,2CAA2C;IACtD,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,2CAA2C;IAGrE,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,kCAAkC;CAOtC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable__factory.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable__factory.js new file mode 100644 index 00000000..11f1aae5 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable__factory.js @@ -0,0 +1,276 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.AccessControlEnumerableUpgradeable__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint8", + name: "version", + type: "uint8", + }, + ], + name: "Initialized", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + indexed: true, + internalType: "bytes32", + name: "previousAdminRole", + type: "bytes32", + }, + { + indexed: true, + internalType: "bytes32", + name: "newAdminRole", + type: "bytes32", + }, + ], + name: "RoleAdminChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "RoleGranted", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "RoleRevoked", + type: "event", + }, + { + inputs: [], + name: "DEFAULT_ADMIN_ROLE", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + ], + name: "getRoleAdmin", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + 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: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "grantRole", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "hasRole", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "renounceRole", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "revokeRole", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class AccessControlEnumerableUpgradeable__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.AccessControlEnumerableUpgradeable__factory = AccessControlEnumerableUpgradeable__factory; +AccessControlEnumerableUpgradeable__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable__factory.d.ts new file mode 100644 index 00000000..592f560b --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable__factory.d.ts @@ -0,0 +1,176 @@ +import { type ContractRunner } from "ethers"; +import type { AccessControlUpgradeable, AccessControlUpgradeableInterface } from "../../../../@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable"; +export declare class AccessControlUpgradeable__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "uint8"; + readonly name: "version"; + readonly type: "uint8"; + }]; + readonly name: "Initialized"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "previousAdminRole"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "newAdminRole"; + readonly type: "bytes32"; + }]; + readonly name: "RoleAdminChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "sender"; + readonly type: "address"; + }]; + readonly name: "RoleGranted"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "sender"; + readonly type: "address"; + }]; + readonly name: "RoleRevoked"; + readonly type: "event"; + }, { + readonly inputs: readonly []; + readonly name: "DEFAULT_ADMIN_ROLE"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }]; + readonly name: "getRoleAdmin"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "grantRole"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "hasRole"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "renounceRole"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "revokeRole"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): AccessControlUpgradeableInterface; + static connect(address: string, runner?: ContractRunner | null): AccessControlUpgradeable; +} +//# sourceMappingURL=AccessControlUpgradeable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable__factory.d.ts.map new file mode 100644 index 00000000..825e7e0a --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"AccessControlUpgradeable__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,wBAAwB,EACxB,iCAAiC,EAClC,MAAM,iFAAiF,CAAC;AA8NzF,qBAAa,iCAAiC;IAC5C,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,iCAAiC;IAG3D,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,wBAAwB;CAO5B"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable__factory.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable__factory.js new file mode 100644 index 00000000..7eabeec8 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable__factory.js @@ -0,0 +1,233 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.AccessControlUpgradeable__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint8", + name: "version", + type: "uint8", + }, + ], + name: "Initialized", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + indexed: true, + internalType: "bytes32", + name: "previousAdminRole", + type: "bytes32", + }, + { + indexed: true, + internalType: "bytes32", + name: "newAdminRole", + type: "bytes32", + }, + ], + name: "RoleAdminChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "RoleGranted", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "RoleRevoked", + type: "event", + }, + { + inputs: [], + name: "DEFAULT_ADMIN_ROLE", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + ], + name: "getRoleAdmin", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "grantRole", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "hasRole", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "renounceRole", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "revokeRole", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class AccessControlUpgradeable__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.AccessControlUpgradeable__factory = AccessControlUpgradeable__factory; +AccessControlUpgradeable__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable__factory.d.ts new file mode 100644 index 00000000..3b36f2f6 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable__factory.d.ts @@ -0,0 +1,174 @@ +import { type ContractRunner } from "ethers"; +import type { IAccessControlEnumerableUpgradeable, IAccessControlEnumerableUpgradeableInterface } from "../../../../@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable"; +export declare class IAccessControlEnumerableUpgradeable__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "previousAdminRole"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "newAdminRole"; + readonly type: "bytes32"; + }]; + readonly name: "RoleAdminChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "sender"; + readonly type: "address"; + }]; + readonly name: "RoleGranted"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "sender"; + readonly type: "address"; + }]; + readonly name: "RoleRevoked"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }]; + readonly name: "getRoleAdmin"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "index"; + readonly type: "uint256"; + }]; + readonly name: "getRoleMember"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }]; + readonly name: "getRoleMemberCount"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "grantRole"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "hasRole"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "renounceRole"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "revokeRole"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): IAccessControlEnumerableUpgradeableInterface; + static connect(address: string, runner?: ContractRunner | null): IAccessControlEnumerableUpgradeable; +} +//# sourceMappingURL=IAccessControlEnumerableUpgradeable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable__factory.d.ts.map new file mode 100644 index 00000000..6d2688cf --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IAccessControlEnumerableUpgradeable__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,mCAAmC,EACnC,4CAA4C,EAC7C,MAAM,4FAA4F,CAAC;AA4NpG,qBAAa,4CAA4C;IACvD,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,4CAA4C;IAGtE,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,mCAAmC;CAOvC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable__factory.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable__factory.js new file mode 100644 index 00000000..d1d576d6 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable__factory.js @@ -0,0 +1,231 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IAccessControlEnumerableUpgradeable__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + indexed: true, + internalType: "bytes32", + name: "previousAdminRole", + type: "bytes32", + }, + { + indexed: true, + internalType: "bytes32", + name: "newAdminRole", + type: "bytes32", + }, + ], + name: "RoleAdminChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "RoleGranted", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "RoleRevoked", + type: "event", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + ], + name: "getRoleAdmin", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + 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: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "grantRole", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "hasRole", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "renounceRole", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "revokeRole", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +class IAccessControlEnumerableUpgradeable__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IAccessControlEnumerableUpgradeable__factory = IAccessControlEnumerableUpgradeable__factory; +IAccessControlEnumerableUpgradeable__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable__factory.d.ts new file mode 100644 index 00000000..89128667 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable__factory.d.ts @@ -0,0 +1,142 @@ +import { type ContractRunner } from "ethers"; +import type { IAccessControlUpgradeable, IAccessControlUpgradeableInterface } from "../../../../@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable"; +export declare class IAccessControlUpgradeable__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "previousAdminRole"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "newAdminRole"; + readonly type: "bytes32"; + }]; + readonly name: "RoleAdminChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "sender"; + readonly type: "address"; + }]; + readonly name: "RoleGranted"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "sender"; + readonly type: "address"; + }]; + readonly name: "RoleRevoked"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }]; + readonly name: "getRoleAdmin"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "grantRole"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "hasRole"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "renounceRole"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "revokeRole"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): IAccessControlUpgradeableInterface; + static connect(address: string, runner?: ContractRunner | null): IAccessControlUpgradeable; +} +//# sourceMappingURL=IAccessControlUpgradeable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable__factory.d.ts.map new file mode 100644 index 00000000..3dd3a1a8 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IAccessControlUpgradeable__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,yBAAyB,EACzB,kCAAkC,EACnC,MAAM,kFAAkF,CAAC;AAiL1F,qBAAa,kCAAkC;IAC7C,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,kCAAkC;IAG5D,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,yBAAyB;CAO7B"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable__factory.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable__factory.js new file mode 100644 index 00000000..cd0ad7be --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable__factory.js @@ -0,0 +1,188 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IAccessControlUpgradeable__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + indexed: true, + internalType: "bytes32", + name: "previousAdminRole", + type: "bytes32", + }, + { + indexed: true, + internalType: "bytes32", + name: "newAdminRole", + type: "bytes32", + }, + ], + name: "RoleAdminChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "RoleGranted", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "RoleRevoked", + type: "event", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + ], + name: "getRoleAdmin", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "grantRole", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "hasRole", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "renounceRole", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "revokeRole", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +class IAccessControlUpgradeable__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IAccessControlUpgradeable__factory = IAccessControlUpgradeable__factory; +IAccessControlUpgradeable__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable__factory.d.ts new file mode 100644 index 00000000..11bf519a --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable__factory.d.ts @@ -0,0 +1,59 @@ +import { type ContractRunner } from "ethers"; +import type { OwnableUpgradeable, OwnableUpgradeableInterface } from "../../../../@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable"; +export declare class OwnableUpgradeable__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "uint8"; + readonly name: "version"; + readonly type: "uint8"; + }]; + readonly name: "Initialized"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "previousOwner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "newOwner"; + readonly type: "address"; + }]; + readonly name: "OwnershipTransferred"; + readonly type: "event"; + }, { + readonly inputs: readonly []; + readonly name: "owner"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "renounceOwnership"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "newOwner"; + readonly type: "address"; + }]; + readonly name: "transferOwnership"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): OwnableUpgradeableInterface; + static connect(address: string, runner?: ContractRunner | null): OwnableUpgradeable; +} +//# sourceMappingURL=OwnableUpgradeable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable__factory.d.ts.map new file mode 100644 index 00000000..46c49d61 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"OwnableUpgradeable__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,kBAAkB,EAClB,2BAA2B,EAC5B,MAAM,2EAA2E,CAAC;AAsEnF,qBAAa,2BAA2B;IACtC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,2BAA2B;IAGrD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,kBAAkB;CAGtB"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable__factory.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable__factory.js new file mode 100644 index 00000000..3ffad78a --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable__factory.js @@ -0,0 +1,81 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.OwnableUpgradeable__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint8", + name: "version", + type: "uint8", + }, + ], + name: "Initialized", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "previousOwner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnershipTransferred", + type: "event", + }, + { + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "renounceOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "transferOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +class OwnableUpgradeable__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.OwnableUpgradeable__factory = OwnableUpgradeable__factory; +OwnableUpgradeable__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/access/index.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/access/index.d.ts new file mode 100644 index 00000000..c2503057 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/access/index.d.ts @@ -0,0 +1,6 @@ +export { AccessControlEnumerableUpgradeable__factory } from "./AccessControlEnumerableUpgradeable__factory"; +export { AccessControlUpgradeable__factory } from "./AccessControlUpgradeable__factory"; +export { IAccessControlEnumerableUpgradeable__factory } from "./IAccessControlEnumerableUpgradeable__factory"; +export { IAccessControlUpgradeable__factory } from "./IAccessControlUpgradeable__factory"; +export { OwnableUpgradeable__factory } from "./OwnableUpgradeable__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/access/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/access/index.d.ts.map new file mode 100644 index 00000000..154f1b58 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/access/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/@openzeppelin/contracts-upgradeable/access/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,2CAA2C,EAAE,MAAM,+CAA+C,CAAC;AAC5G,OAAO,EAAE,iCAAiC,EAAE,MAAM,qCAAqC,CAAC;AACxF,OAAO,EAAE,4CAA4C,EAAE,MAAM,gDAAgD,CAAC;AAC9G,OAAO,EAAE,kCAAkC,EAAE,MAAM,sCAAsC,CAAC;AAC1F,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/access/index.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/access/index.js new file mode 100644 index 00000000..a680b980 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/access/index.js @@ -0,0 +1,13 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.OwnableUpgradeable__factory = exports.IAccessControlUpgradeable__factory = exports.IAccessControlEnumerableUpgradeable__factory = exports.AccessControlUpgradeable__factory = exports.AccessControlEnumerableUpgradeable__factory = void 0; +var AccessControlEnumerableUpgradeable__factory_1 = require("./AccessControlEnumerableUpgradeable__factory"); +Object.defineProperty(exports, "AccessControlEnumerableUpgradeable__factory", { enumerable: true, get: function () { return AccessControlEnumerableUpgradeable__factory_1.AccessControlEnumerableUpgradeable__factory; } }); +var AccessControlUpgradeable__factory_1 = require("./AccessControlUpgradeable__factory"); +Object.defineProperty(exports, "AccessControlUpgradeable__factory", { enumerable: true, get: function () { return AccessControlUpgradeable__factory_1.AccessControlUpgradeable__factory; } }); +var IAccessControlEnumerableUpgradeable__factory_1 = require("./IAccessControlEnumerableUpgradeable__factory"); +Object.defineProperty(exports, "IAccessControlEnumerableUpgradeable__factory", { enumerable: true, get: function () { return IAccessControlEnumerableUpgradeable__factory_1.IAccessControlEnumerableUpgradeable__factory; } }); +var IAccessControlUpgradeable__factory_1 = require("./IAccessControlUpgradeable__factory"); +Object.defineProperty(exports, "IAccessControlUpgradeable__factory", { enumerable: true, get: function () { return IAccessControlUpgradeable__factory_1.IAccessControlUpgradeable__factory; } }); +var OwnableUpgradeable__factory_1 = require("./OwnableUpgradeable__factory"); +Object.defineProperty(exports, "OwnableUpgradeable__factory", { enumerable: true, get: function () { return OwnableUpgradeable__factory_1.OwnableUpgradeable__factory; } }); diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/index.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/index.d.ts new file mode 100644 index 00000000..9b0f1982 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/index.d.ts @@ -0,0 +1,7 @@ +export * as access from "./access"; +export * as interfaces from "./interfaces"; +export * as proxy from "./proxy"; +export * as security from "./security"; +export * as token from "./token"; +export * as utils from "./utils"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/index.d.ts.map new file mode 100644 index 00000000..1247fdaf --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/factories/@openzeppelin/contracts-upgradeable/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC;AACvC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/index.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/index.js new file mode 100644 index 00000000..6ab308d6 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/index.js @@ -0,0 +1,32 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.utils = exports.token = exports.security = exports.proxy = exports.interfaces = exports.access = void 0; +exports.access = __importStar(require("./access")); +exports.interfaces = __importStar(require("./interfaces")); +exports.proxy = __importStar(require("./proxy")); +exports.security = __importStar(require("./security")); +exports.token = __importStar(require("./token")); +exports.utils = __importStar(require("./utils")); diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable__factory.d.ts new file mode 100644 index 00000000..40a25197 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable__factory.d.ts @@ -0,0 +1,26 @@ +import { type ContractRunner } from "ethers"; +import type { IERC1271Upgradeable, IERC1271UpgradeableInterface } from "../../../../@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable"; +export declare class IERC1271Upgradeable__factory { + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "hash"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "isValidSignature"; + readonly outputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "magicValue"; + readonly type: "bytes4"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): IERC1271UpgradeableInterface; + static connect(address: string, runner?: ContractRunner | null): IERC1271Upgradeable; +} +//# sourceMappingURL=IERC1271Upgradeable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable__factory.d.ts.map new file mode 100644 index 00000000..70ac6253 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC1271Upgradeable__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,mBAAmB,EACnB,4BAA4B,EAC7B,MAAM,gFAAgF,CAAC;AA6BxF,qBAAa,4BAA4B;IACvC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,4BAA4B;IAGtD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,mBAAmB;CAOvB"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable__factory.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable__factory.js new file mode 100644 index 00000000..485dfd9f --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable__factory.js @@ -0,0 +1,40 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IERC1271Upgradeable__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "bytes32", + name: "hash", + type: "bytes32", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "isValidSignature", + outputs: [ + { + internalType: "bytes4", + name: "magicValue", + type: "bytes4", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class IERC1271Upgradeable__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IERC1271Upgradeable__factory = IERC1271Upgradeable__factory; +IERC1271Upgradeable__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/interfaces/index.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/interfaces/index.d.ts new file mode 100644 index 00000000..7d8fa4e5 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/interfaces/index.d.ts @@ -0,0 +1,2 @@ +export { IERC1271Upgradeable__factory } from "./IERC1271Upgradeable__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/interfaces/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/interfaces/index.d.ts.map new file mode 100644 index 00000000..172fa838 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/interfaces/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/@openzeppelin/contracts-upgradeable/interfaces/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/interfaces/index.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/interfaces/index.js new file mode 100644 index 00000000..7b790792 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/interfaces/index.js @@ -0,0 +1,5 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IERC1271Upgradeable__factory = void 0; +var IERC1271Upgradeable__factory_1 = require("./IERC1271Upgradeable__factory"); +Object.defineProperty(exports, "IERC1271Upgradeable__factory", { enumerable: true, get: function () { return IERC1271Upgradeable__factory_1.IERC1271Upgradeable__factory; } }); diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/index.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/index.d.ts new file mode 100644 index 00000000..5e733766 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/index.d.ts @@ -0,0 +1,2 @@ +export * as utils from "./utils"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/index.d.ts.map new file mode 100644 index 00000000..df959a91 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/@openzeppelin/contracts-upgradeable/proxy/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/index.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/index.js new file mode 100644 index 00000000..0d8d8225 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/index.js @@ -0,0 +1,27 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.utils = void 0; +exports.utils = __importStar(require("./utils")); diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable__factory.d.ts new file mode 100644 index 00000000..47be7f5d --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable__factory.d.ts @@ -0,0 +1,18 @@ +import { type ContractRunner } from "ethers"; +import type { Initializable, InitializableInterface } from "../../../../../@openzeppelin/contracts-upgradeable/proxy/utils/Initializable"; +export declare class Initializable__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "uint8"; + readonly name: "version"; + readonly type: "uint8"; + }]; + readonly name: "Initialized"; + readonly type: "event"; + }]; + static createInterface(): InitializableInterface; + static connect(address: string, runner?: ContractRunner | null): Initializable; +} +//# sourceMappingURL=Initializable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable__factory.d.ts.map new file mode 100644 index 00000000..b888d15f --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"Initializable__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,aAAa,EACb,sBAAsB,EACvB,MAAM,8EAA8E,CAAC;AAkBtF,qBAAa,sBAAsB;IACjC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,sBAAsB;IAGhD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,aAAa;CAGjB"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable__factory.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable__factory.js new file mode 100644 index 00000000..caaeed9b --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable__factory.js @@ -0,0 +1,29 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.Initializable__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint8", + name: "version", + type: "uint8", + }, + ], + name: "Initialized", + type: "event", + }, +]; +class Initializable__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.Initializable__factory = Initializable__factory; +Initializable__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/index.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/index.d.ts new file mode 100644 index 00000000..e654b2cb --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/index.d.ts @@ -0,0 +1,2 @@ +export { Initializable__factory } from "./Initializable__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/index.d.ts.map new file mode 100644 index 00000000..6976cdb0 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/index.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/index.js new file mode 100644 index 00000000..8dd6c838 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/index.js @@ -0,0 +1,5 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.Initializable__factory = void 0; +var Initializable__factory_1 = require("./Initializable__factory"); +Object.defineProperty(exports, "Initializable__factory", { enumerable: true, get: function () { return Initializable__factory_1.Initializable__factory; } }); diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable__factory.d.ts new file mode 100644 index 00000000..84e28c99 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable__factory.d.ts @@ -0,0 +1,48 @@ +import { type ContractRunner } from "ethers"; +import type { PausableUpgradeable, PausableUpgradeableInterface } from "../../../../@openzeppelin/contracts-upgradeable/security/PausableUpgradeable"; +export declare class PausableUpgradeable__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "uint8"; + readonly name: "version"; + readonly type: "uint8"; + }]; + readonly name: "Initialized"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "Paused"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "Unpaused"; + readonly type: "event"; + }, { + readonly inputs: readonly []; + readonly name: "paused"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): PausableUpgradeableInterface; + static connect(address: string, runner?: ContractRunner | null): PausableUpgradeable; +} +//# sourceMappingURL=PausableUpgradeable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable__factory.d.ts.map new file mode 100644 index 00000000..486dbe99 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"PausableUpgradeable__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,mBAAmB,EACnB,4BAA4B,EAC7B,MAAM,8EAA8E,CAAC;AAyDtF,qBAAa,4BAA4B;IACvC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,4BAA4B;IAGtD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,mBAAmB;CAOvB"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable__factory.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable__factory.js new file mode 100644 index 00000000..ec162e3f --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable__factory.js @@ -0,0 +1,68 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.PausableUpgradeable__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint8", + name: "version", + type: "uint8", + }, + ], + name: "Initialized", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "Paused", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "Unpaused", + type: "event", + }, + { + inputs: [], + name: "paused", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class PausableUpgradeable__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.PausableUpgradeable__factory = PausableUpgradeable__factory; +PausableUpgradeable__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable__factory.d.ts new file mode 100644 index 00000000..d7af9465 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable__factory.d.ts @@ -0,0 +1,18 @@ +import { type ContractRunner } from "ethers"; +import type { ReentrancyGuardUpgradeable, ReentrancyGuardUpgradeableInterface } from "../../../../@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable"; +export declare class ReentrancyGuardUpgradeable__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "uint8"; + readonly name: "version"; + readonly type: "uint8"; + }]; + readonly name: "Initialized"; + readonly type: "event"; + }]; + static createInterface(): ReentrancyGuardUpgradeableInterface; + static connect(address: string, runner?: ContractRunner | null): ReentrancyGuardUpgradeable; +} +//# sourceMappingURL=ReentrancyGuardUpgradeable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable__factory.d.ts.map new file mode 100644 index 00000000..9d3c2007 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ReentrancyGuardUpgradeable__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,0BAA0B,EAC1B,mCAAmC,EACpC,MAAM,qFAAqF,CAAC;AAkB7F,qBAAa,mCAAmC;IAC9C,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,mCAAmC;IAG7D,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,0BAA0B;CAO9B"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable__factory.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable__factory.js new file mode 100644 index 00000000..4468c2db --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable__factory.js @@ -0,0 +1,29 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ReentrancyGuardUpgradeable__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint8", + name: "version", + type: "uint8", + }, + ], + name: "Initialized", + type: "event", + }, +]; +class ReentrancyGuardUpgradeable__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.ReentrancyGuardUpgradeable__factory = ReentrancyGuardUpgradeable__factory; +ReentrancyGuardUpgradeable__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/security/index.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/security/index.d.ts new file mode 100644 index 00000000..00bbae8a --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/security/index.d.ts @@ -0,0 +1,3 @@ +export { PausableUpgradeable__factory } from "./PausableUpgradeable__factory"; +export { ReentrancyGuardUpgradeable__factory } from "./ReentrancyGuardUpgradeable__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/security/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/security/index.d.ts.map new file mode 100644 index 00000000..5f710499 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/security/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/@openzeppelin/contracts-upgradeable/security/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,EAAE,mCAAmC,EAAE,MAAM,uCAAuC,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/security/index.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/security/index.js new file mode 100644 index 00000000..17a77de3 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/security/index.js @@ -0,0 +1,7 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ReentrancyGuardUpgradeable__factory = exports.PausableUpgradeable__factory = void 0; +var PausableUpgradeable__factory_1 = require("./PausableUpgradeable__factory"); +Object.defineProperty(exports, "PausableUpgradeable__factory", { enumerable: true, get: function () { return PausableUpgradeable__factory_1.PausableUpgradeable__factory; } }); +var ReentrancyGuardUpgradeable__factory_1 = require("./ReentrancyGuardUpgradeable__factory"); +Object.defineProperty(exports, "ReentrancyGuardUpgradeable__factory", { enumerable: true, get: function () { return ReentrancyGuardUpgradeable__factory_1.ReentrancyGuardUpgradeable__factory; } }); diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable__factory.d.ts new file mode 100644 index 00000000..c5306ba3 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable__factory.d.ts @@ -0,0 +1,276 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../../../common"; +import type { ERC1155Upgradeable, ERC1155UpgradeableInterface } from "../../../../../@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable"; +declare type ERC1155UpgradeableConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class ERC1155Upgradeable__factory extends ContractFactory { + constructor(...args: ERC1155UpgradeableConstructorParams); + getDeployTransaction(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): ERC1155Upgradeable__factory; + static readonly bytecode = "0x608060405234801561001057600080fd5b5061135e806100206000396000f3fe608060405234801561001057600080fd5b50600436106100875760003560e01c80634e1273f41161005b5780634e1273f41461010a578063a22cb4651461012a578063e985e9c51461013d578063f242432a1461017957600080fd5b8062fdd58e1461008c57806301ffc9a7146100b25780630e89341c146100d55780632eb2c2d6146100f5575b600080fd5b61009f61009a366004610b49565b61018c565b6040519081526020015b60405180910390f35b6100c56100c0366004610b8c565b610227565b60405190151581526020016100a9565b6100e86100e3366004610bb0565b610277565b6040516100a99190610c0f565b610108610103366004610d6e565b61030b565b005b61011d610118366004610e18565b610357565b6040516100a99190610f1e565b610108610138366004610f31565b610481565b6100c561014b366004610f6d565b6001600160a01b03918216600090815260666020908152604080832093909416825291909152205460ff1690565b610108610187366004610fa0565b610490565b60006001600160a01b0383166101fc5760405162461bcd60e51b815260206004820152602a60248201527f455243313135353a2061646472657373207a65726f206973206e6f742061207660448201526930b634b21037bbb732b960b11b60648201526084015b60405180910390fd5b5060008181526065602090815260408083206001600160a01b03861684529091529020545b92915050565b60006001600160e01b03198216636cdb3d1360e11b148061025857506001600160e01b031982166303a24d0760e21b145b8061022157506301ffc9a760e01b6001600160e01b0319831614610221565b60606067805461028690611005565b80601f01602080910402602001604051908101604052809291908181526020018280546102b290611005565b80156102ff5780601f106102d4576101008083540402835291602001916102ff565b820191906000526020600020905b8154815290600101906020018083116102e257829003601f168201915b50505050509050919050565b6001600160a01b0385163314806103275750610327853361014b565b6103435760405162461bcd60e51b81526004016101f39061103f565b61035085858585856104d5565b5050505050565b606081518351146103bc5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b60648201526084016101f3565b6000835167ffffffffffffffff8111156103d8576103d8610c22565b604051908082528060200260200182016040528015610401578160200160208202803683370190505b50905060005b84518110156104795761044c8582815181106104255761042561108e565b602002602001015185838151811061043f5761043f61108e565b602002602001015161018c565b82828151811061045e5761045e61108e565b6020908102919091010152610472816110ba565b9050610407565b509392505050565b61048c3383836106b5565b5050565b6001600160a01b0385163314806104ac57506104ac853361014b565b6104c85760405162461bcd60e51b81526004016101f39061103f565b6103508585858585610795565b81518351146105375760405162461bcd60e51b815260206004820152602860248201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206044820152670dad2e6dac2e8c6d60c31b60648201526084016101f3565b6001600160a01b03841661055d5760405162461bcd60e51b81526004016101f3906110d3565b3360005b845181101561064757600085828151811061057e5761057e61108e565b60200260200101519050600085838151811061059c5761059c61108e565b60209081029190910181015160008481526065835260408082206001600160a01b038e1683529093529190912054909150818110156105ed5760405162461bcd60e51b81526004016101f390611118565b60008381526065602090815260408083206001600160a01b038e8116855292528083208585039055908b1682528120805484929061062c908490611162565b9250508190555050505080610640906110ba565b9050610561565b50846001600160a01b0316866001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051610697929190611175565b60405180910390a46106ad8187878787876108c3565b505050505050565b816001600160a01b0316836001600160a01b0316036107285760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084016101f3565b6001600160a01b03838116600081815260666020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6001600160a01b0384166107bb5760405162461bcd60e51b81526004016101f3906110d3565b3360006107c785610a27565b905060006107d485610a27565b905060008681526065602090815260408083206001600160a01b038c168452909152902054858110156108195760405162461bcd60e51b81526004016101f390611118565b60008781526065602090815260408083206001600160a01b038d8116855292528083208985039055908a16825281208054889290610858908490611162565b909155505060408051888152602081018890526001600160a01b03808b16928c821692918816917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46108b8848a8a8a8a8a610a72565b505050505050505050565b6001600160a01b0384163b156106ad5760405163bc197c8160e01b81526001600160a01b0385169063bc197c819061090790899089908890889088906004016111a3565b6020604051808303816000875af1925050508015610942575060408051601f3d908101601f1916820190925261093f91810190611201565b60015b6109ee5761094e61121e565b806308c379a003610987575061096261123a565b8061096d5750610989565b8060405162461bcd60e51b81526004016101f39190610c0f565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e20455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b60648201526084016101f3565b6001600160e01b0319811663bc197c8160e01b14610a1e5760405162461bcd60e51b81526004016101f3906112c4565b50505050505050565b60408051600180825281830190925260609160009190602080830190803683370190505090508281600081518110610a6157610a6161108e565b602090810291909101015292915050565b6001600160a01b0384163b156106ad5760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e6190610ab6908990899088908890889060040161130c565b6020604051808303816000875af1925050508015610af1575060408051601f3d908101601f19168201909252610aee91810190611201565b60015b610afd5761094e61121e565b6001600160e01b0319811663f23a6e6160e01b14610a1e5760405162461bcd60e51b81526004016101f3906112c4565b80356001600160a01b0381168114610b4457600080fd5b919050565b60008060408385031215610b5c57600080fd5b610b6583610b2d565b946020939093013593505050565b6001600160e01b031981168114610b8957600080fd5b50565b600060208284031215610b9e57600080fd5b8135610ba981610b73565b9392505050565b600060208284031215610bc257600080fd5b5035919050565b6000815180845260005b81811015610bef57602081850181015186830182015201610bd3565b506000602082860101526020601f19601f83011685010191505092915050565b602081526000610ba96020830184610bc9565b634e487b7160e01b600052604160045260246000fd5b601f8201601f1916810167ffffffffffffffff81118282101715610c5e57610c5e610c22565b6040525050565b600067ffffffffffffffff821115610c7f57610c7f610c22565b5060051b60200190565b600082601f830112610c9a57600080fd5b81356020610ca782610c65565b604051610cb48282610c38565b83815260059390931b8501820192828101915086841115610cd457600080fd5b8286015b84811015610cef5780358352918301918301610cd8565b509695505050505050565b600082601f830112610d0b57600080fd5b813567ffffffffffffffff811115610d2557610d25610c22565b604051610d3c601f8301601f191660200182610c38565b818152846020838601011115610d5157600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a08688031215610d8657600080fd5b610d8f86610b2d565b9450610d9d60208701610b2d565b9350604086013567ffffffffffffffff80821115610dba57600080fd5b610dc689838a01610c89565b94506060880135915080821115610ddc57600080fd5b610de889838a01610c89565b93506080880135915080821115610dfe57600080fd5b50610e0b88828901610cfa565b9150509295509295909350565b60008060408385031215610e2b57600080fd5b823567ffffffffffffffff80821115610e4357600080fd5b818501915085601f830112610e5757600080fd5b81356020610e6482610c65565b604051610e718282610c38565b83815260059390931b8501820192828101915089841115610e9157600080fd5b948201945b83861015610eb657610ea786610b2d565b82529482019490820190610e96565b96505086013592505080821115610ecc57600080fd5b50610ed985828601610c89565b9150509250929050565b600081518084526020808501945080840160005b83811015610f1357815187529582019590820190600101610ef7565b509495945050505050565b602081526000610ba96020830184610ee3565b60008060408385031215610f4457600080fd5b610f4d83610b2d565b915060208301358015158114610f6257600080fd5b809150509250929050565b60008060408385031215610f8057600080fd5b610f8983610b2d565b9150610f9760208401610b2d565b90509250929050565b600080600080600060a08688031215610fb857600080fd5b610fc186610b2d565b9450610fcf60208701610b2d565b93506040860135925060608601359150608086013567ffffffffffffffff811115610ff957600080fd5b610e0b88828901610cfa565b600181811c9082168061101957607f821691505b60208210810361103957634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252602f908201527f455243313135353a2063616c6c6572206973206e6f7420746f6b656e206f776e60408201526e195c881b9bdc88185c1c1c9bdd9959608a1b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000600182016110cc576110cc6110a4565b5060010190565b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b80820180821115610221576102216110a4565b6040815260006111886040830185610ee3565b828103602084015261119a8185610ee3565b95945050505050565b6001600160a01b0386811682528516602082015260a0604082018190526000906111cf90830186610ee3565b82810360608401526111e18186610ee3565b905082810360808401526111f58185610bc9565b98975050505050505050565b60006020828403121561121357600080fd5b8151610ba981610b73565b600060033d11156112375760046000803e5060005160e01c5b90565b600060443d10156112485790565b6040516003193d81016004833e81513d67ffffffffffffffff816024840111818411171561127857505050505090565b82850191508151818111156112905750505050505090565b843d87010160208285010111156112aa5750505050505090565b6112b960208286010187610c38565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b6001600160a01b03868116825285166020820152604081018490526060810183905260a06080820181905260009061134690830184610bc9565b97965050505050505056fea164736f6c6343000811000a"; + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "ApprovalForAll"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "uint8"; + readonly name: "version"; + readonly type: "uint8"; + }]; + readonly name: "Initialized"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "uint256[]"; + readonly name: "ids"; + readonly type: "uint256[]"; + }, { + readonly indexed: false; + readonly internalType: "uint256[]"; + readonly name: "values"; + readonly type: "uint256[]"; + }]; + readonly name: "TransferBatch"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "value"; + readonly type: "uint256"; + }]; + readonly name: "TransferSingle"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }]; + readonly name: "URI"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }]; + readonly name: "balanceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address[]"; + readonly name: "accounts"; + readonly type: "address[]"; + }, { + readonly internalType: "uint256[]"; + readonly name: "ids"; + readonly type: "uint256[]"; + }]; + readonly name: "balanceOfBatch"; + readonly outputs: readonly [{ + readonly internalType: "uint256[]"; + readonly name: ""; + readonly type: "uint256[]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly name: "isApprovedForAll"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256[]"; + readonly name: "ids"; + readonly type: "uint256[]"; + }, { + readonly internalType: "uint256[]"; + readonly name: "amounts"; + readonly type: "uint256[]"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "safeBatchTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "amount"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "setApprovalForAll"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly name: "uri"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): ERC1155UpgradeableInterface; + static connect(address: string, runner?: ContractRunner | null): ERC1155Upgradeable; +} +export {}; +//# sourceMappingURL=ERC1155Upgradeable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable__factory.d.ts.map new file mode 100644 index 00000000..764418ed --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ERC1155Upgradeable__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,kBAAkB,EAClB,2BAA2B,EAC5B,MAAM,qFAAqF,CAAC;AA6U7F,aAAK,mCAAmC,GACpC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,2BAA4B,SAAQ,eAAe;gBAClD,GAAG,IAAI,EAAE,mCAAmC;IAQ/C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,2BAA2B;IAI5E,MAAM,CAAC,QAAQ,CAAC,QAAQ,owTAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,2BAA2B;IAGrD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,kBAAkB;CAGtB"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable__factory.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable__factory.js new file mode 100644 index 00000000..60bd94cf --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable__factory.js @@ -0,0 +1,361 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ERC1155Upgradeable__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "ApprovalForAll", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint8", + name: "version", + type: "uint8", + }, + ], + name: "Initialized", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: false, + internalType: "uint256[]", + name: "ids", + type: "uint256[]", + }, + { + indexed: false, + internalType: "uint256[]", + name: "values", + type: "uint256[]", + }, + ], + name: "TransferBatch", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "TransferSingle", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "string", + name: "value", + type: "string", + }, + { + indexed: true, + internalType: "uint256", + name: "id", + type: "uint256", + }, + ], + name: "URI", + type: "event", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address[]", + name: "accounts", + type: "address[]", + }, + { + internalType: "uint256[]", + name: "ids", + type: "uint256[]", + }, + ], + name: "balanceOfBatch", + outputs: [ + { + internalType: "uint256[]", + name: "", + type: "uint256[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + name: "isApprovedForAll", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256[]", + name: "ids", + type: "uint256[]", + }, + { + internalType: "uint256[]", + name: "amounts", + type: "uint256[]", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "safeBatchTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "setApprovalForAll", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + name: "uri", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +const _bytecode = "0x608060405234801561001057600080fd5b5061135e806100206000396000f3fe608060405234801561001057600080fd5b50600436106100875760003560e01c80634e1273f41161005b5780634e1273f41461010a578063a22cb4651461012a578063e985e9c51461013d578063f242432a1461017957600080fd5b8062fdd58e1461008c57806301ffc9a7146100b25780630e89341c146100d55780632eb2c2d6146100f5575b600080fd5b61009f61009a366004610b49565b61018c565b6040519081526020015b60405180910390f35b6100c56100c0366004610b8c565b610227565b60405190151581526020016100a9565b6100e86100e3366004610bb0565b610277565b6040516100a99190610c0f565b610108610103366004610d6e565b61030b565b005b61011d610118366004610e18565b610357565b6040516100a99190610f1e565b610108610138366004610f31565b610481565b6100c561014b366004610f6d565b6001600160a01b03918216600090815260666020908152604080832093909416825291909152205460ff1690565b610108610187366004610fa0565b610490565b60006001600160a01b0383166101fc5760405162461bcd60e51b815260206004820152602a60248201527f455243313135353a2061646472657373207a65726f206973206e6f742061207660448201526930b634b21037bbb732b960b11b60648201526084015b60405180910390fd5b5060008181526065602090815260408083206001600160a01b03861684529091529020545b92915050565b60006001600160e01b03198216636cdb3d1360e11b148061025857506001600160e01b031982166303a24d0760e21b145b8061022157506301ffc9a760e01b6001600160e01b0319831614610221565b60606067805461028690611005565b80601f01602080910402602001604051908101604052809291908181526020018280546102b290611005565b80156102ff5780601f106102d4576101008083540402835291602001916102ff565b820191906000526020600020905b8154815290600101906020018083116102e257829003601f168201915b50505050509050919050565b6001600160a01b0385163314806103275750610327853361014b565b6103435760405162461bcd60e51b81526004016101f39061103f565b61035085858585856104d5565b5050505050565b606081518351146103bc5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b60648201526084016101f3565b6000835167ffffffffffffffff8111156103d8576103d8610c22565b604051908082528060200260200182016040528015610401578160200160208202803683370190505b50905060005b84518110156104795761044c8582815181106104255761042561108e565b602002602001015185838151811061043f5761043f61108e565b602002602001015161018c565b82828151811061045e5761045e61108e565b6020908102919091010152610472816110ba565b9050610407565b509392505050565b61048c3383836106b5565b5050565b6001600160a01b0385163314806104ac57506104ac853361014b565b6104c85760405162461bcd60e51b81526004016101f39061103f565b6103508585858585610795565b81518351146105375760405162461bcd60e51b815260206004820152602860248201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206044820152670dad2e6dac2e8c6d60c31b60648201526084016101f3565b6001600160a01b03841661055d5760405162461bcd60e51b81526004016101f3906110d3565b3360005b845181101561064757600085828151811061057e5761057e61108e565b60200260200101519050600085838151811061059c5761059c61108e565b60209081029190910181015160008481526065835260408082206001600160a01b038e1683529093529190912054909150818110156105ed5760405162461bcd60e51b81526004016101f390611118565b60008381526065602090815260408083206001600160a01b038e8116855292528083208585039055908b1682528120805484929061062c908490611162565b9250508190555050505080610640906110ba565b9050610561565b50846001600160a01b0316866001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051610697929190611175565b60405180910390a46106ad8187878787876108c3565b505050505050565b816001600160a01b0316836001600160a01b0316036107285760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084016101f3565b6001600160a01b03838116600081815260666020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6001600160a01b0384166107bb5760405162461bcd60e51b81526004016101f3906110d3565b3360006107c785610a27565b905060006107d485610a27565b905060008681526065602090815260408083206001600160a01b038c168452909152902054858110156108195760405162461bcd60e51b81526004016101f390611118565b60008781526065602090815260408083206001600160a01b038d8116855292528083208985039055908a16825281208054889290610858908490611162565b909155505060408051888152602081018890526001600160a01b03808b16928c821692918816917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46108b8848a8a8a8a8a610a72565b505050505050505050565b6001600160a01b0384163b156106ad5760405163bc197c8160e01b81526001600160a01b0385169063bc197c819061090790899089908890889088906004016111a3565b6020604051808303816000875af1925050508015610942575060408051601f3d908101601f1916820190925261093f91810190611201565b60015b6109ee5761094e61121e565b806308c379a003610987575061096261123a565b8061096d5750610989565b8060405162461bcd60e51b81526004016101f39190610c0f565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e20455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b60648201526084016101f3565b6001600160e01b0319811663bc197c8160e01b14610a1e5760405162461bcd60e51b81526004016101f3906112c4565b50505050505050565b60408051600180825281830190925260609160009190602080830190803683370190505090508281600081518110610a6157610a6161108e565b602090810291909101015292915050565b6001600160a01b0384163b156106ad5760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e6190610ab6908990899088908890889060040161130c565b6020604051808303816000875af1925050508015610af1575060408051601f3d908101601f19168201909252610aee91810190611201565b60015b610afd5761094e61121e565b6001600160e01b0319811663f23a6e6160e01b14610a1e5760405162461bcd60e51b81526004016101f3906112c4565b80356001600160a01b0381168114610b4457600080fd5b919050565b60008060408385031215610b5c57600080fd5b610b6583610b2d565b946020939093013593505050565b6001600160e01b031981168114610b8957600080fd5b50565b600060208284031215610b9e57600080fd5b8135610ba981610b73565b9392505050565b600060208284031215610bc257600080fd5b5035919050565b6000815180845260005b81811015610bef57602081850181015186830182015201610bd3565b506000602082860101526020601f19601f83011685010191505092915050565b602081526000610ba96020830184610bc9565b634e487b7160e01b600052604160045260246000fd5b601f8201601f1916810167ffffffffffffffff81118282101715610c5e57610c5e610c22565b6040525050565b600067ffffffffffffffff821115610c7f57610c7f610c22565b5060051b60200190565b600082601f830112610c9a57600080fd5b81356020610ca782610c65565b604051610cb48282610c38565b83815260059390931b8501820192828101915086841115610cd457600080fd5b8286015b84811015610cef5780358352918301918301610cd8565b509695505050505050565b600082601f830112610d0b57600080fd5b813567ffffffffffffffff811115610d2557610d25610c22565b604051610d3c601f8301601f191660200182610c38565b818152846020838601011115610d5157600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a08688031215610d8657600080fd5b610d8f86610b2d565b9450610d9d60208701610b2d565b9350604086013567ffffffffffffffff80821115610dba57600080fd5b610dc689838a01610c89565b94506060880135915080821115610ddc57600080fd5b610de889838a01610c89565b93506080880135915080821115610dfe57600080fd5b50610e0b88828901610cfa565b9150509295509295909350565b60008060408385031215610e2b57600080fd5b823567ffffffffffffffff80821115610e4357600080fd5b818501915085601f830112610e5757600080fd5b81356020610e6482610c65565b604051610e718282610c38565b83815260059390931b8501820192828101915089841115610e9157600080fd5b948201945b83861015610eb657610ea786610b2d565b82529482019490820190610e96565b96505086013592505080821115610ecc57600080fd5b50610ed985828601610c89565b9150509250929050565b600081518084526020808501945080840160005b83811015610f1357815187529582019590820190600101610ef7565b509495945050505050565b602081526000610ba96020830184610ee3565b60008060408385031215610f4457600080fd5b610f4d83610b2d565b915060208301358015158114610f6257600080fd5b809150509250929050565b60008060408385031215610f8057600080fd5b610f8983610b2d565b9150610f9760208401610b2d565b90509250929050565b600080600080600060a08688031215610fb857600080fd5b610fc186610b2d565b9450610fcf60208701610b2d565b93506040860135925060608601359150608086013567ffffffffffffffff811115610ff957600080fd5b610e0b88828901610cfa565b600181811c9082168061101957607f821691505b60208210810361103957634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252602f908201527f455243313135353a2063616c6c6572206973206e6f7420746f6b656e206f776e60408201526e195c881b9bdc88185c1c1c9bdd9959608a1b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000600182016110cc576110cc6110a4565b5060010190565b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b80820180821115610221576102216110a4565b6040815260006111886040830185610ee3565b828103602084015261119a8185610ee3565b95945050505050565b6001600160a01b0386811682528516602082015260a0604082018190526000906111cf90830186610ee3565b82810360608401526111e18186610ee3565b905082810360808401526111f58185610bc9565b98975050505050505050565b60006020828403121561121357600080fd5b8151610ba981610b73565b600060033d11156112375760046000803e5060005160e01c5b90565b600060443d10156112485790565b6040516003193d81016004833e81513d67ffffffffffffffff816024840111818411171561127857505050505090565b82850191508151818111156112905750505050505090565b843d87010160208285010111156112aa5750505050505090565b6112b960208286010187610c38565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b6001600160a01b03868116825285166020820152604081018490526060810183905260a06080820181905260009061134690830184610bc9565b97965050505050505056fea164736f6c6343000811000a"; +const isSuperArgs = (xs) => xs.length > 1; +class ERC1155Upgradeable__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(overrides) { + return super.getDeployTransaction(overrides || {}); + } + deploy(overrides) { + return super.deploy(overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.ERC1155Upgradeable__factory = ERC1155Upgradeable__factory; +ERC1155Upgradeable__factory.bytecode = _bytecode; +ERC1155Upgradeable__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable__factory.d.ts new file mode 100644 index 00000000..48888471 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable__factory.d.ts @@ -0,0 +1,82 @@ +import { type ContractRunner } from "ethers"; +import type { IERC1155ReceiverUpgradeable, IERC1155ReceiverUpgradeableInterface } from "../../../../../@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable"; +export declare class IERC1155ReceiverUpgradeable__factory { + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "uint256[]"; + readonly name: "ids"; + readonly type: "uint256[]"; + }, { + readonly internalType: "uint256[]"; + readonly name: "values"; + readonly type: "uint256[]"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "onERC1155BatchReceived"; + readonly outputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: ""; + readonly type: "bytes4"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "value"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "onERC1155Received"; + readonly outputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: ""; + readonly type: "bytes4"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): IERC1155ReceiverUpgradeableInterface; + static connect(address: string, runner?: ContractRunner | null): IERC1155ReceiverUpgradeable; +} +//# sourceMappingURL=IERC1155ReceiverUpgradeable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable__factory.d.ts.map new file mode 100644 index 00000000..49624628 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC1155ReceiverUpgradeable__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,2BAA2B,EAC3B,oCAAoC,EACrC,MAAM,8FAA8F,CAAC;AAsGtG,qBAAa,oCAAoC;IAC/C,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,oCAAoC;IAG9D,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,2BAA2B;CAO/B"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable__factory.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable__factory.js new file mode 100644 index 00000000..198dffd2 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable__factory.js @@ -0,0 +1,113 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IERC1155ReceiverUpgradeable__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "uint256[]", + name: "ids", + type: "uint256[]", + }, + { + internalType: "uint256[]", + name: "values", + type: "uint256[]", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "onERC1155BatchReceived", + outputs: [ + { + internalType: "bytes4", + name: "", + type: "bytes4", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + internalType: "uint256", + name: "value", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "onERC1155Received", + outputs: [ + { + internalType: "bytes4", + name: "", + type: "bytes4", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class IERC1155ReceiverUpgradeable__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IERC1155ReceiverUpgradeable__factory = IERC1155ReceiverUpgradeable__factory; +IERC1155ReceiverUpgradeable__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable__factory.d.ts new file mode 100644 index 00000000..210e529f --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable__factory.d.ts @@ -0,0 +1,237 @@ +import { type ContractRunner } from "ethers"; +import type { IERC1155Upgradeable, IERC1155UpgradeableInterface } from "../../../../../@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable"; +export declare class IERC1155Upgradeable__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "ApprovalForAll"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "uint256[]"; + readonly name: "ids"; + readonly type: "uint256[]"; + }, { + readonly indexed: false; + readonly internalType: "uint256[]"; + readonly name: "values"; + readonly type: "uint256[]"; + }]; + readonly name: "TransferBatch"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "value"; + readonly type: "uint256"; + }]; + readonly name: "TransferSingle"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }]; + readonly name: "URI"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }]; + readonly name: "balanceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address[]"; + readonly name: "accounts"; + readonly type: "address[]"; + }, { + readonly internalType: "uint256[]"; + readonly name: "ids"; + readonly type: "uint256[]"; + }]; + readonly name: "balanceOfBatch"; + readonly outputs: readonly [{ + readonly internalType: "uint256[]"; + readonly name: ""; + readonly type: "uint256[]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly name: "isApprovedForAll"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256[]"; + readonly name: "ids"; + readonly type: "uint256[]"; + }, { + readonly internalType: "uint256[]"; + readonly name: "amounts"; + readonly type: "uint256[]"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "safeBatchTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "amount"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "setApprovalForAll"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): IERC1155UpgradeableInterface; + static connect(address: string, runner?: ContractRunner | null): IERC1155Upgradeable; +} +//# sourceMappingURL=IERC1155Upgradeable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable__factory.d.ts.map new file mode 100644 index 00000000..c04b7a9d --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC1155Upgradeable__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,mBAAmB,EACnB,4BAA4B,EAC7B,MAAM,sFAAsF,CAAC;AA0S9F,qBAAa,4BAA4B;IACvC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,4BAA4B;IAGtD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,mBAAmB;CAOvB"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable__factory.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable__factory.js new file mode 100644 index 00000000..a12f0617 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable__factory.js @@ -0,0 +1,309 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IERC1155Upgradeable__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "ApprovalForAll", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: false, + internalType: "uint256[]", + name: "ids", + type: "uint256[]", + }, + { + indexed: false, + internalType: "uint256[]", + name: "values", + type: "uint256[]", + }, + ], + name: "TransferBatch", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "TransferSingle", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "string", + name: "value", + type: "string", + }, + { + indexed: true, + internalType: "uint256", + name: "id", + type: "uint256", + }, + ], + name: "URI", + type: "event", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address[]", + name: "accounts", + type: "address[]", + }, + { + internalType: "uint256[]", + name: "ids", + type: "uint256[]", + }, + ], + name: "balanceOfBatch", + outputs: [ + { + internalType: "uint256[]", + name: "", + type: "uint256[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + name: "isApprovedForAll", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256[]", + name: "ids", + type: "uint256[]", + }, + { + internalType: "uint256[]", + name: "amounts", + type: "uint256[]", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "safeBatchTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "setApprovalForAll", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class IERC1155Upgradeable__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IERC1155Upgradeable__factory = IERC1155Upgradeable__factory; +IERC1155Upgradeable__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable__factory.d.ts new file mode 100644 index 00000000..6fa3c219 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable__factory.d.ts @@ -0,0 +1,297 @@ +import { type ContractRunner } from "ethers"; +import type { ERC1155BurnableUpgradeable, ERC1155BurnableUpgradeableInterface } from "../../../../../../@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable"; +export declare class ERC1155BurnableUpgradeable__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "ApprovalForAll"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "uint8"; + readonly name: "version"; + readonly type: "uint8"; + }]; + readonly name: "Initialized"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "uint256[]"; + readonly name: "ids"; + readonly type: "uint256[]"; + }, { + readonly indexed: false; + readonly internalType: "uint256[]"; + readonly name: "values"; + readonly type: "uint256[]"; + }]; + readonly name: "TransferBatch"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "value"; + readonly type: "uint256"; + }]; + readonly name: "TransferSingle"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }]; + readonly name: "URI"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }]; + readonly name: "balanceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address[]"; + readonly name: "accounts"; + readonly type: "address[]"; + }, { + readonly internalType: "uint256[]"; + readonly name: "ids"; + readonly type: "uint256[]"; + }]; + readonly name: "balanceOfBatch"; + readonly outputs: readonly [{ + readonly internalType: "uint256[]"; + readonly name: ""; + readonly type: "uint256[]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "value"; + readonly type: "uint256"; + }]; + readonly name: "burn"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly internalType: "uint256[]"; + readonly name: "ids"; + readonly type: "uint256[]"; + }, { + readonly internalType: "uint256[]"; + readonly name: "values"; + readonly type: "uint256[]"; + }]; + readonly name: "burnBatch"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly name: "isApprovedForAll"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256[]"; + readonly name: "ids"; + readonly type: "uint256[]"; + }, { + readonly internalType: "uint256[]"; + readonly name: "amounts"; + readonly type: "uint256[]"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "safeBatchTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "amount"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "setApprovalForAll"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly name: "uri"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): ERC1155BurnableUpgradeableInterface; + static connect(address: string, runner?: ContractRunner | null): ERC1155BurnableUpgradeable; +} +//# sourceMappingURL=ERC1155BurnableUpgradeable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable__factory.d.ts.map new file mode 100644 index 00000000..71f4f293 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ERC1155BurnableUpgradeable__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,0BAA0B,EAC1B,mCAAmC,EACpC,MAAM,2GAA2G,CAAC;AAwXnH,qBAAa,mCAAmC;IAC9C,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,mCAAmC;IAG7D,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,0BAA0B;CAO9B"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable__factory.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable__factory.js new file mode 100644 index 00000000..9b2010e2 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable__factory.js @@ -0,0 +1,387 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ERC1155BurnableUpgradeable__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "ApprovalForAll", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint8", + name: "version", + type: "uint8", + }, + ], + name: "Initialized", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: false, + internalType: "uint256[]", + name: "ids", + type: "uint256[]", + }, + { + indexed: false, + internalType: "uint256[]", + name: "values", + type: "uint256[]", + }, + ], + name: "TransferBatch", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "TransferSingle", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "string", + name: "value", + type: "string", + }, + { + indexed: true, + internalType: "uint256", + name: "id", + type: "uint256", + }, + ], + name: "URI", + type: "event", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address[]", + name: "accounts", + type: "address[]", + }, + { + internalType: "uint256[]", + name: "ids", + type: "uint256[]", + }, + ], + name: "balanceOfBatch", + outputs: [ + { + internalType: "uint256[]", + name: "", + type: "uint256[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "burn", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "uint256[]", + name: "ids", + type: "uint256[]", + }, + { + internalType: "uint256[]", + name: "values", + type: "uint256[]", + }, + ], + name: "burnBatch", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + name: "isApprovedForAll", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256[]", + name: "ids", + type: "uint256[]", + }, + { + internalType: "uint256[]", + name: "amounts", + type: "uint256[]", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "safeBatchTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "setApprovalForAll", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + name: "uri", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class ERC1155BurnableUpgradeable__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.ERC1155BurnableUpgradeable__factory = ERC1155BurnableUpgradeable__factory; +ERC1155BurnableUpgradeable__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable__factory.d.ts new file mode 100644 index 00000000..970e66ec --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable__factory.d.ts @@ -0,0 +1,291 @@ +import { type ContractRunner } from "ethers"; +import type { ERC1155PausableUpgradeable, ERC1155PausableUpgradeableInterface } from "../../../../../../@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable"; +export declare class ERC1155PausableUpgradeable__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "ApprovalForAll"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "uint8"; + readonly name: "version"; + readonly type: "uint8"; + }]; + readonly name: "Initialized"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "Paused"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "uint256[]"; + readonly name: "ids"; + readonly type: "uint256[]"; + }, { + readonly indexed: false; + readonly internalType: "uint256[]"; + readonly name: "values"; + readonly type: "uint256[]"; + }]; + readonly name: "TransferBatch"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "value"; + readonly type: "uint256"; + }]; + readonly name: "TransferSingle"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }]; + readonly name: "URI"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "Unpaused"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }]; + readonly name: "balanceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address[]"; + readonly name: "accounts"; + readonly type: "address[]"; + }, { + readonly internalType: "uint256[]"; + readonly name: "ids"; + readonly type: "uint256[]"; + }]; + readonly name: "balanceOfBatch"; + readonly outputs: readonly [{ + readonly internalType: "uint256[]"; + readonly name: ""; + readonly type: "uint256[]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly name: "isApprovedForAll"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "paused"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256[]"; + readonly name: "ids"; + readonly type: "uint256[]"; + }, { + readonly internalType: "uint256[]"; + readonly name: "amounts"; + readonly type: "uint256[]"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "safeBatchTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "amount"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "setApprovalForAll"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly name: "uri"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): ERC1155PausableUpgradeableInterface; + static connect(address: string, runner?: ContractRunner | null): ERC1155PausableUpgradeable; +} +//# sourceMappingURL=ERC1155PausableUpgradeable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable__factory.d.ts.map new file mode 100644 index 00000000..782702c5 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ERC1155PausableUpgradeable__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,0BAA0B,EAC1B,mCAAmC,EACpC,MAAM,2GAA2G,CAAC;AAiXnH,qBAAa,mCAAmC;IAC9C,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,mCAAmC;IAG7D,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,0BAA0B;CAO9B"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable__factory.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable__factory.js new file mode 100644 index 00000000..5d73c62d --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable__factory.js @@ -0,0 +1,380 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ERC1155PausableUpgradeable__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "ApprovalForAll", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint8", + name: "version", + type: "uint8", + }, + ], + name: "Initialized", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "Paused", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: false, + internalType: "uint256[]", + name: "ids", + type: "uint256[]", + }, + { + indexed: false, + internalType: "uint256[]", + name: "values", + type: "uint256[]", + }, + ], + name: "TransferBatch", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "TransferSingle", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "string", + name: "value", + type: "string", + }, + { + indexed: true, + internalType: "uint256", + name: "id", + type: "uint256", + }, + ], + name: "URI", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "Unpaused", + type: "event", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address[]", + name: "accounts", + type: "address[]", + }, + { + internalType: "uint256[]", + name: "ids", + type: "uint256[]", + }, + ], + name: "balanceOfBatch", + outputs: [ + { + internalType: "uint256[]", + name: "", + type: "uint256[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + name: "isApprovedForAll", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "paused", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256[]", + name: "ids", + type: "uint256[]", + }, + { + internalType: "uint256[]", + name: "amounts", + type: "uint256[]", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "safeBatchTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "setApprovalForAll", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + name: "uri", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class ERC1155PausableUpgradeable__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.ERC1155PausableUpgradeable__factory = ERC1155PausableUpgradeable__factory; +ERC1155PausableUpgradeable__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable__factory.d.ts new file mode 100644 index 00000000..a612d852 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable__factory.d.ts @@ -0,0 +1,251 @@ +import { type ContractRunner } from "ethers"; +import type { IERC1155MetadataURIUpgradeable, IERC1155MetadataURIUpgradeableInterface } from "../../../../../../@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable"; +export declare class IERC1155MetadataURIUpgradeable__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "ApprovalForAll"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "uint256[]"; + readonly name: "ids"; + readonly type: "uint256[]"; + }, { + readonly indexed: false; + readonly internalType: "uint256[]"; + readonly name: "values"; + readonly type: "uint256[]"; + }]; + readonly name: "TransferBatch"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "value"; + readonly type: "uint256"; + }]; + readonly name: "TransferSingle"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }]; + readonly name: "URI"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }]; + readonly name: "balanceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address[]"; + readonly name: "accounts"; + readonly type: "address[]"; + }, { + readonly internalType: "uint256[]"; + readonly name: "ids"; + readonly type: "uint256[]"; + }]; + readonly name: "balanceOfBatch"; + readonly outputs: readonly [{ + readonly internalType: "uint256[]"; + readonly name: ""; + readonly type: "uint256[]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly name: "isApprovedForAll"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256[]"; + readonly name: "ids"; + readonly type: "uint256[]"; + }, { + readonly internalType: "uint256[]"; + readonly name: "amounts"; + readonly type: "uint256[]"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "safeBatchTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "amount"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "setApprovalForAll"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }]; + readonly name: "uri"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): IERC1155MetadataURIUpgradeableInterface; + static connect(address: string, runner?: ContractRunner | null): IERC1155MetadataURIUpgradeable; +} +//# sourceMappingURL=IERC1155MetadataURIUpgradeable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable__factory.d.ts.map new file mode 100644 index 00000000..c5560f40 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC1155MetadataURIUpgradeable__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,8BAA8B,EAC9B,uCAAuC,EACxC,MAAM,+GAA+G,CAAC;AA6TvH,qBAAa,uCAAuC;IAClD,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,uCAAuC;IAGjE,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,8BAA8B;CAOlC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable__factory.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable__factory.js new file mode 100644 index 00000000..9788b8bf --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable__factory.js @@ -0,0 +1,328 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IERC1155MetadataURIUpgradeable__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "ApprovalForAll", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: false, + internalType: "uint256[]", + name: "ids", + type: "uint256[]", + }, + { + indexed: false, + internalType: "uint256[]", + name: "values", + type: "uint256[]", + }, + ], + name: "TransferBatch", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "TransferSingle", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "string", + name: "value", + type: "string", + }, + { + indexed: true, + internalType: "uint256", + name: "id", + type: "uint256", + }, + ], + name: "URI", + type: "event", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address[]", + name: "accounts", + type: "address[]", + }, + { + internalType: "uint256[]", + name: "ids", + type: "uint256[]", + }, + ], + name: "balanceOfBatch", + outputs: [ + { + internalType: "uint256[]", + name: "", + type: "uint256[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + name: "isApprovedForAll", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256[]", + name: "ids", + type: "uint256[]", + }, + { + internalType: "uint256[]", + name: "amounts", + type: "uint256[]", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "safeBatchTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "setApprovalForAll", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + ], + name: "uri", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class IERC1155MetadataURIUpgradeable__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IERC1155MetadataURIUpgradeable__factory = IERC1155MetadataURIUpgradeable__factory; +IERC1155MetadataURIUpgradeable__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/index.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/index.d.ts new file mode 100644 index 00000000..db14d524 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/index.d.ts @@ -0,0 +1,4 @@ +export { ERC1155BurnableUpgradeable__factory } from "./ERC1155BurnableUpgradeable__factory"; +export { ERC1155PausableUpgradeable__factory } from "./ERC1155PausableUpgradeable__factory"; +export { IERC1155MetadataURIUpgradeable__factory } from "./IERC1155MetadataURIUpgradeable__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/index.d.ts.map new file mode 100644 index 00000000..cd6f7063 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mCAAmC,EAAE,MAAM,uCAAuC,CAAC;AAC5F,OAAO,EAAE,mCAAmC,EAAE,MAAM,uCAAuC,CAAC;AAC5F,OAAO,EAAE,uCAAuC,EAAE,MAAM,2CAA2C,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/index.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/index.js new file mode 100644 index 00000000..56fb20dd --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/index.js @@ -0,0 +1,9 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IERC1155MetadataURIUpgradeable__factory = exports.ERC1155PausableUpgradeable__factory = exports.ERC1155BurnableUpgradeable__factory = void 0; +var ERC1155BurnableUpgradeable__factory_1 = require("./ERC1155BurnableUpgradeable__factory"); +Object.defineProperty(exports, "ERC1155BurnableUpgradeable__factory", { enumerable: true, get: function () { return ERC1155BurnableUpgradeable__factory_1.ERC1155BurnableUpgradeable__factory; } }); +var ERC1155PausableUpgradeable__factory_1 = require("./ERC1155PausableUpgradeable__factory"); +Object.defineProperty(exports, "ERC1155PausableUpgradeable__factory", { enumerable: true, get: function () { return ERC1155PausableUpgradeable__factory_1.ERC1155PausableUpgradeable__factory; } }); +var IERC1155MetadataURIUpgradeable__factory_1 = require("./IERC1155MetadataURIUpgradeable__factory"); +Object.defineProperty(exports, "IERC1155MetadataURIUpgradeable__factory", { enumerable: true, get: function () { return IERC1155MetadataURIUpgradeable__factory_1.IERC1155MetadataURIUpgradeable__factory; } }); diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/index.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/index.d.ts new file mode 100644 index 00000000..c9b27b73 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/index.d.ts @@ -0,0 +1,6 @@ +export * as extensions from "./extensions"; +export * as presets from "./presets"; +export { ERC1155Upgradeable__factory } from "./ERC1155Upgradeable__factory"; +export { IERC1155ReceiverUpgradeable__factory } from "./IERC1155ReceiverUpgradeable__factory"; +export { IERC1155Upgradeable__factory } from "./IERC1155Upgradeable__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/index.d.ts.map new file mode 100644 index 00000000..2c5bbec1 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AACrC,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,oCAAoC,EAAE,MAAM,wCAAwC,CAAC;AAC9F,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/index.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/index.js new file mode 100644 index 00000000..f1472501 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/index.js @@ -0,0 +1,34 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IERC1155Upgradeable__factory = exports.IERC1155ReceiverUpgradeable__factory = exports.ERC1155Upgradeable__factory = exports.presets = exports.extensions = void 0; +exports.extensions = __importStar(require("./extensions")); +exports.presets = __importStar(require("./presets")); +var ERC1155Upgradeable__factory_1 = require("./ERC1155Upgradeable__factory"); +Object.defineProperty(exports, "ERC1155Upgradeable__factory", { enumerable: true, get: function () { return ERC1155Upgradeable__factory_1.ERC1155Upgradeable__factory; } }); +var IERC1155ReceiverUpgradeable__factory_1 = require("./IERC1155ReceiverUpgradeable__factory"); +Object.defineProperty(exports, "IERC1155ReceiverUpgradeable__factory", { enumerable: true, get: function () { return IERC1155ReceiverUpgradeable__factory_1.IERC1155ReceiverUpgradeable__factory; } }); +var IERC1155Upgradeable__factory_1 = require("./IERC1155Upgradeable__factory"); +Object.defineProperty(exports, "IERC1155Upgradeable__factory", { enumerable: true, get: function () { return IERC1155Upgradeable__factory_1.IERC1155Upgradeable__factory; } }); diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable__factory.d.ts new file mode 100644 index 00000000..6130cdfa --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable__factory.d.ts @@ -0,0 +1,604 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../../../../common"; +import type { ERC1155PresetMinterPauserUpgradeable, ERC1155PresetMinterPauserUpgradeableInterface } from "../../../../../../@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable"; +declare type ERC1155PresetMinterPauserUpgradeableConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class ERC1155PresetMinterPauserUpgradeable__factory extends ContractFactory { + constructor(...args: ERC1155PresetMinterPauserUpgradeableConstructorParams); + getDeployTransaction(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): ERC1155PresetMinterPauserUpgradeable__factory; + static readonly bytecode = "0x608060405234801561001057600080fd5b50612ce5806100206000396000f3fe608060405234801561001057600080fd5b506004361061018d5760003560e01c80638456cb59116100de578063d539139311610097578063e985e9c511610071578063e985e9c514610377578063f242432a146103b3578063f5298aca146103c6578063f62d1888146103d957600080fd5b8063d53913931461033a578063d547741f1461034f578063e63ab1e91461036257600080fd5b80638456cb59146102c65780639010d07c146102ce57806391d14854146102f9578063a217fddf1461030c578063a22cb46514610314578063ca15c8731461032757600080fd5b80632f2ff15d1161014b5780634e1273f4116101255780634e1273f4146102745780635c975abb146102945780636b20c454146102a0578063731133e9146102b357600080fd5b80632f2ff15d1461024657806336568abe146102595780633f4ba83a1461026c57600080fd5b8062fdd58e1461019257806301ffc9a7146101b85780630e89341c146101db5780631f7fdffa146101fb578063248a9ca3146102105780632eb2c2d614610233575b600080fd5b6101a56101a0366004611edd565b6103ec565b6040519081526020015b60405180910390f35b6101cb6101c6366004611f1d565b610487565b60405190151581526020016101af565b6101ee6101e9366004611f3a565b610492565b6040516101af9190611fa3565b61020e610209366004612109565b610526565b005b6101a561021e366004611f3a565b60009081526065602052604090206001015490565b61020e6102413660046121a1565b61056c565b61020e61025436600461224a565b6105b8565b61020e61026736600461224a565b6105e2565b61020e610660565b610287610282366004612276565b6106f4565b6040516101af919061237b565b61012d5460ff166101cb565b61020e6102ae36600461238e565b61081d565b61020e6102c1366004612401565b610860565b61020e6108a0565b6102e16102dc366004612455565b610932565b6040516001600160a01b0390911681526020016101af565b6101cb61030736600461224a565b610951565b6101a5600081565b61020e610322366004612477565b61097c565b6101a5610335366004611f3a565b610987565b6101a5600080516020612cb983398151915281565b61020e61035d36600461224a565b61099e565b6101a5600080516020612c9983398151915281565b6101cb6103853660046124b3565b6001600160a01b03918216600090815260ca6020908152604080832093909416825291909152205460ff1690565b61020e6103c13660046124dd565b6109c3565b61020e6103d4366004612541565b610a08565b61020e6103e7366004612574565b610a4b565b60006001600160a01b03831661045c5760405162461bcd60e51b815260206004820152602a60248201527f455243313135353a2061646472657373207a65726f206973206e6f742061207660448201526930b634b21037bbb732b960b11b60648201526084015b60405180910390fd5b50600081815260c9602090815260408083206001600160a01b03861684529091529020545b92915050565b600061048182610b5d565b606060cb80546104a1906125c4565b80601f01602080910402602001604051908101604052809291908181526020018280546104cd906125c4565b801561051a5780601f106104ef5761010080835404028352916020019161051a565b820191906000526020600020905b8154815290600101906020018083116104fd57829003601f168201915b50505050509050919050565b61053e600080516020612cb983398151915233610951565b61055a5760405162461bcd60e51b8152600401610453906125fe565b61056684848484610b9d565b50505050565b6001600160a01b03851633148061058857506105888533610385565b6105a45760405162461bcd60e51b81526004016104539061265b565b6105b18585858585610cf8565b5050505050565b6000828152606560205260409020600101546105d381610ea5565b6105dd8383610eb2565b505050565b6001600160a01b03811633146106525760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610453565b61065c8282610ed4565b5050565b610678600080516020612c9983398151915233610951565b6106ea5760405162461bcd60e51b815260206004820152603b60248201527f455243313135355072657365744d696e7465725061757365723a206d7573742060448201527f686176652070617573657220726f6c6520746f20756e706175736500000000006064820152608401610453565b6106f2610ef6565b565b606081518351146107595760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b6064820152608401610453565b600083516001600160401b0381111561077457610774611fb6565b60405190808252806020026020018201604052801561079d578160200160208202803683370190505b50905060005b8451811015610815576107e88582815181106107c1576107c16126aa565b60200260200101518583815181106107db576107db6126aa565b60200260200101516103ec565b8282815181106107fa576107fa6126aa565b602090810291909101015261080e816126d6565b90506107a3565b509392505050565b6001600160a01b03831633148061083957506108398333610385565b6108555760405162461bcd60e51b81526004016104539061265b565b6105dd838383610f49565b610878600080516020612cb983398151915233610951565b6108945760405162461bcd60e51b8152600401610453906125fe565b610566848484846110e8565b6108b8600080516020612c9983398151915233610951565b61092a5760405162461bcd60e51b815260206004820152603960248201527f455243313135355072657365744d696e7465725061757365723a206d7573742060448201527f686176652070617573657220726f6c6520746f207061757365000000000000006064820152608401610453565b6106f26111d3565b600082815260976020526040812061094a9083611211565b9392505050565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b61065c33838361121d565b6000818152609760205260408120610481906112fd565b6000828152606560205260409020600101546109b981610ea5565b6105dd8383610ed4565b6001600160a01b0385163314806109df57506109df8533610385565b6109fb5760405162461bcd60e51b81526004016104539061265b565b6105b18585858585611307565b6001600160a01b038316331480610a245750610a248333610385565b610a405760405162461bcd60e51b81526004016104539061265b565b6105dd838383611443565b600054610100900460ff1615808015610a6b5750600054600160ff909116105b80610a855750303b158015610a85575060005460ff166001145b610ae85760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610453565b6000805460ff191660011790558015610b0b576000805461ff0019166101001790555b610b148261155f565b801561065c576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b60006001600160e01b03198216636cdb3d1360e11b1480610b8e57506001600160e01b031982166303a24d0760e21b145b806104815750610481826115a0565b6001600160a01b038416610bc35760405162461bcd60e51b8152600401610453906126ef565b8151835114610be45760405162461bcd60e51b815260040161045390612730565b33610bf4816000878787876115c5565b60005b8451811015610c9057838181518110610c1257610c126126aa565b602002602001015160c96000878481518110610c3057610c306126aa565b602002602001015181526020019081526020016000206000886001600160a01b03166001600160a01b031681526020019081526020016000206000828254610c789190612778565b90915550819050610c88816126d6565b915050610bf7565b50846001600160a01b031660006001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051610ce192919061278b565b60405180910390a46105b1816000878787876115d3565b8151835114610d195760405162461bcd60e51b815260040161045390612730565b6001600160a01b038416610d3f5760405162461bcd60e51b8152600401610453906127b9565b33610d4e8187878787876115c5565b60005b8451811015610e37576000858281518110610d6e57610d6e6126aa565b602002602001015190506000858381518110610d8c57610d8c6126aa565b602090810291909101810151600084815260c9835260408082206001600160a01b038e168352909352919091205490915081811015610ddd5760405162461bcd60e51b8152600401610453906127fe565b600083815260c9602090815260408083206001600160a01b038e8116855292528083208585039055908b16825281208054849290610e1c908490612778565b9250508190555050505080610e30906126d6565b9050610d51565b50846001600160a01b0316866001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051610e8792919061278b565b60405180910390a4610e9d8187878787876115d3565b505050505050565b610eaf813361172e565b50565b610ebc8282611792565b60008281526097602052604090206105dd9082611818565b610ede828261182d565b60008281526097602052604090206105dd9082611894565b610efe6118a9565b61012d805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516001600160a01b03909116815260200160405180910390a1565b6001600160a01b038316610f6f5760405162461bcd60e51b815260040161045390612848565b8051825114610f905760405162461bcd60e51b815260040161045390612730565b6000339050610fb3818560008686604051806020016040528060008152506115c5565b60005b835181101561107b576000848281518110610fd357610fd36126aa565b602002602001015190506000848381518110610ff157610ff16126aa565b602090810291909101810151600084815260c9835260408082206001600160a01b038c1683529093529190912054909150818110156110425760405162461bcd60e51b81526004016104539061288b565b600092835260c9602090815260408085206001600160a01b038b1686529091529092209103905580611073816126d6565b915050610fb6565b5060006001600160a01b0316846001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516110cc92919061278b565b60405180910390a4604080516020810190915260009052610566565b6001600160a01b03841661110e5760405162461bcd60e51b8152600401610453906126ef565b33600061111a856118f3565b90506000611127856118f3565b9050611138836000898585896115c5565b600086815260c9602090815260408083206001600160a01b038b1684529091528120805487929061116a908490612778565b909155505060408051878152602081018790526001600160a01b03808a1692600092918716917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46111ca8360008989898961193e565b50505050505050565b6111db6119f9565b61012d805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258610f2c3390565b600061094a8383611a40565b816001600160a01b0316836001600160a01b0316036112905760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b6064820152608401610453565b6001600160a01b03838116600081815260ca6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6000610481825490565b6001600160a01b03841661132d5760405162461bcd60e51b8152600401610453906127b9565b336000611339856118f3565b90506000611346856118f3565b90506113568389898585896115c5565b600086815260c9602090815260408083206001600160a01b038c168452909152902054858110156113995760405162461bcd60e51b8152600401610453906127fe565b600087815260c9602090815260408083206001600160a01b038d8116855292528083208985039055908a168252812080548892906113d8908490612778565b909155505060408051888152602081018890526001600160a01b03808b16928c821692918816917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4611438848a8a8a8a8a61193e565b505050505050505050565b6001600160a01b0383166114695760405162461bcd60e51b815260040161045390612848565b336000611475846118f3565b90506000611482846118f3565b90506114a2838760008585604051806020016040528060008152506115c5565b600085815260c9602090815260408083206001600160a01b038a168452909152902054848110156114e55760405162461bcd60e51b81526004016104539061288b565b600086815260c9602090815260408083206001600160a01b038b81168086529184528285208a8703905582518b81529384018a90529092908816917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46040805160208101909152600090526111ca565b600054610100900460ff166115865760405162461bcd60e51b8152600401610453906128cf565b61158f81611a6a565b611597611a9a565b610eaf81611ace565b60006001600160e01b03198216635a05180f60e01b1480610481575061048182611b30565b610e9d868686868686611b65565b6001600160a01b0384163b15610e9d5760405163bc197c8160e01b81526001600160a01b0385169063bc197c8190611617908990899088908890889060040161291a565b6020604051808303816000875af1925050508015611652575060408051601f3d908101601f1916820190925261164f91810190612978565b60015b6116fe5761165e612995565b806308c379a00361169757506116726129b1565b8061167d5750611699565b8060405162461bcd60e51b81526004016104539190611fa3565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e20455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b6064820152608401610453565b6001600160e01b0319811663bc197c8160e01b146111ca5760405162461bcd60e51b815260040161045390612a3a565b6117388282610951565b61065c57611750816001600160a01b03166014611bce565b61175b836020611bce565b60405160200161176c929190612a82565b60408051601f198184030181529082905262461bcd60e51b825261045391600401611fa3565b61179c8282610951565b61065c5760008281526065602090815260408083206001600160a01b03851684529091529020805460ff191660011790556117d43390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b600061094a836001600160a01b038416611d69565b6118378282610951565b1561065c5760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b600061094a836001600160a01b038416611db8565b61012d5460ff166106f25760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b6044820152606401610453565b6040805160018082528183019092526060916000919060208083019080368337019050509050828160008151811061192d5761192d6126aa565b602090810291909101015292915050565b6001600160a01b0384163b15610e9d5760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e61906119829089908990889088908890600401612af7565b6020604051808303816000875af19250505080156119bd575060408051601f3d908101601f191682019092526119ba91810190612978565b60015b6119c95761165e612995565b6001600160e01b0319811663f23a6e6160e01b146111ca5760405162461bcd60e51b815260040161045390612a3a565b61012d5460ff16156106f25760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b6044820152606401610453565b6000826000018281548110611a5757611a576126aa565b9060005260206000200154905092915050565b600054610100900460ff16611a915760405162461bcd60e51b8152600401610453906128cf565b610eaf81611eab565b600054610100900460ff16611ac15760405162461bcd60e51b8152600401610453906128cf565b61012d805460ff19169055565b600054610100900460ff16611af55760405162461bcd60e51b8152600401610453906128cf565b611b00600033611eb7565b611b18600080516020612cb983398151915233611eb7565b610eaf600080516020612c9983398151915233611eb7565b60006001600160e01b03198216637965db0b60e01b148061048157506301ffc9a760e01b6001600160e01b0319831614610481565b61012d5460ff1615610e9d5760405162461bcd60e51b815260206004820152602c60248201527f455243313135355061757361626c653a20746f6b656e207472616e736665722060448201526b1dda1a5b19481c185d5cd95960a21b6064820152608401610453565b60606000611bdd836002612b3c565b611be8906002612778565b6001600160401b03811115611bff57611bff611fb6565b6040519080825280601f01601f191660200182016040528015611c29576020820181803683370190505b509050600360fc1b81600081518110611c4457611c446126aa565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110611c7357611c736126aa565b60200101906001600160f81b031916908160001a9053506000611c97846002612b3c565b611ca2906001612778565b90505b6001811115611d1a576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611cd657611cd66126aa565b1a60f81b828281518110611cec57611cec6126aa565b60200101906001600160f81b031916908160001a90535060049490941c93611d1381612b53565b9050611ca5565b50831561094a5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610453565b6000818152600183016020526040812054611db057508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610481565b506000610481565b60008181526001830160205260408120548015611ea1576000611ddc600183612b6a565b8554909150600090611df090600190612b6a565b9050818114611e55576000866000018281548110611e1057611e106126aa565b9060005260206000200154905080876000018481548110611e3357611e336126aa565b6000918252602080832090910192909255918252600188019052604090208390555b8554869080611e6657611e66612b7d565b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050610481565b6000915050610481565b60cb61065c8282612bd9565b61065c8282610eb2565b80356001600160a01b0381168114611ed857600080fd5b919050565b60008060408385031215611ef057600080fd5b611ef983611ec1565b946020939093013593505050565b6001600160e01b031981168114610eaf57600080fd5b600060208284031215611f2f57600080fd5b813561094a81611f07565b600060208284031215611f4c57600080fd5b5035919050565b60005b83811015611f6e578181015183820152602001611f56565b50506000910152565b60008151808452611f8f816020860160208601611f53565b601f01601f19169290920160200192915050565b60208152600061094a6020830184611f77565b634e487b7160e01b600052604160045260246000fd5b601f8201601f191681016001600160401b0381118282101715611ff157611ff1611fb6565b6040525050565b60006001600160401b0382111561201157612011611fb6565b5060051b60200190565b600082601f83011261202c57600080fd5b8135602061203982611ff8565b6040516120468282611fcc565b83815260059390931b850182019282810191508684111561206657600080fd5b8286015b84811015612081578035835291830191830161206a565b509695505050505050565b60006001600160401b038311156120a5576120a5611fb6565b6040516120bc601f8501601f191660200182611fcc565b8091508381528484840111156120d157600080fd5b83836020830137600060208583010152509392505050565b600082601f8301126120fa57600080fd5b61094a8383356020850161208c565b6000806000806080858703121561211f57600080fd5b61212885611ec1565b935060208501356001600160401b038082111561214457600080fd5b6121508883890161201b565b9450604087013591508082111561216657600080fd5b6121728883890161201b565b9350606087013591508082111561218857600080fd5b50612195878288016120e9565b91505092959194509250565b600080600080600060a086880312156121b957600080fd5b6121c286611ec1565b94506121d060208701611ec1565b935060408601356001600160401b03808211156121ec57600080fd5b6121f889838a0161201b565b9450606088013591508082111561220e57600080fd5b61221a89838a0161201b565b9350608088013591508082111561223057600080fd5b5061223d888289016120e9565b9150509295509295909350565b6000806040838503121561225d57600080fd5b8235915061226d60208401611ec1565b90509250929050565b6000806040838503121561228957600080fd5b82356001600160401b03808211156122a057600080fd5b818501915085601f8301126122b457600080fd5b813560206122c182611ff8565b6040516122ce8282611fcc565b83815260059390931b85018201928281019150898411156122ee57600080fd5b948201945b838610156123135761230486611ec1565b825294820194908201906122f3565b9650508601359250508082111561232957600080fd5b506123368582860161201b565b9150509250929050565b600081518084526020808501945080840160005b8381101561237057815187529582019590820190600101612354565b509495945050505050565b60208152600061094a6020830184612340565b6000806000606084860312156123a357600080fd5b6123ac84611ec1565b925060208401356001600160401b03808211156123c857600080fd5b6123d48783880161201b565b935060408601359150808211156123ea57600080fd5b506123f78682870161201b565b9150509250925092565b6000806000806080858703121561241757600080fd5b61242085611ec1565b9350602085013592506040850135915060608501356001600160401b0381111561244957600080fd5b612195878288016120e9565b6000806040838503121561246857600080fd5b50508035926020909101359150565b6000806040838503121561248a57600080fd5b61249383611ec1565b9150602083013580151581146124a857600080fd5b809150509250929050565b600080604083850312156124c657600080fd5b6124cf83611ec1565b915061226d60208401611ec1565b600080600080600060a086880312156124f557600080fd5b6124fe86611ec1565b945061250c60208701611ec1565b9350604086013592506060860135915060808601356001600160401b0381111561253557600080fd5b61223d888289016120e9565b60008060006060848603121561255657600080fd5b61255f84611ec1565b95602085013595506040909401359392505050565b60006020828403121561258657600080fd5b81356001600160401b0381111561259c57600080fd5b8201601f810184136125ad57600080fd5b6125bc8482356020840161208c565b949350505050565b600181811c908216806125d857607f821691505b6020821081036125f857634e487b7160e01b600052602260045260246000fd5b50919050565b60208082526038908201527f455243313135355072657365744d696e7465725061757365723a206d7573742060408201527f68617665206d696e74657220726f6c6520746f206d696e740000000000000000606082015260800190565b6020808252602f908201527f455243313135353a2063616c6c6572206973206e6f7420746f6b656e206f776e60408201526e195c881b9bdc88185c1c1c9bdd9959608a1b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000600182016126e8576126e86126c0565b5060010190565b60208082526021908201527f455243313135353a206d696e7420746f20746865207a65726f206164647265736040820152607360f81b606082015260800190565b60208082526028908201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206040820152670dad2e6dac2e8c6d60c31b606082015260800190565b80820180821115610481576104816126c0565b60408152600061279e6040830185612340565b82810360208401526127b08185612340565b95945050505050565b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b60208082526023908201527f455243313135353a206275726e2066726f6d20746865207a65726f206164647260408201526265737360e81b606082015260800190565b60208082526024908201527f455243313135353a206275726e20616d6f756e7420657863656564732062616c604082015263616e636560e01b606082015260800190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6001600160a01b0386811682528516602082015260a06040820181905260009061294690830186612340565b82810360608401526129588186612340565b9050828103608084015261296c8185611f77565b98975050505050505050565b60006020828403121561298a57600080fd5b815161094a81611f07565b600060033d11156129ae5760046000803e5060005160e01c5b90565b600060443d10156129bf5790565b6040516003193d81016004833e81513d6001600160401b0381602484011181841117156129ee57505050505090565b8285019150815181811115612a065750505050505090565b843d8701016020828501011115612a205750505050505090565b612a2f60208286010187611fcc565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351612aba816017850160208801611f53565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351612aeb816028840160208801611f53565b01602801949350505050565b6001600160a01b03868116825285166020820152604081018490526060810183905260a060808201819052600090612b3190830184611f77565b979650505050505050565b8082028115828204841417610481576104816126c0565b600081612b6257612b626126c0565b506000190190565b81810381811115610481576104816126c0565b634e487b7160e01b600052603160045260246000fd5b601f8211156105dd57600081815260208120601f850160051c81016020861015612bba5750805b601f850160051c820191505b81811015610e9d57828155600101612bc6565b81516001600160401b03811115612bf257612bf2611fb6565b612c0681612c0084546125c4565b84612b93565b602080601f831160018114612c3b5760008415612c235750858301515b600019600386901b1c1916600185901b178555610e9d565b600085815260208120601f198616915b82811015612c6a57888601518255948401946001909101908401612c4b565b5085821015612c885787850151600019600388901b60f8161c191681555b5050505050600190811b0190555056fe65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000811000a"; + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "ApprovalForAll"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "uint8"; + readonly name: "version"; + readonly type: "uint8"; + }]; + readonly name: "Initialized"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "Paused"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "previousAdminRole"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "newAdminRole"; + readonly type: "bytes32"; + }]; + readonly name: "RoleAdminChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "sender"; + readonly type: "address"; + }]; + readonly name: "RoleGranted"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "sender"; + readonly type: "address"; + }]; + readonly name: "RoleRevoked"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "uint256[]"; + readonly name: "ids"; + readonly type: "uint256[]"; + }, { + readonly indexed: false; + readonly internalType: "uint256[]"; + readonly name: "values"; + readonly type: "uint256[]"; + }]; + readonly name: "TransferBatch"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "value"; + readonly type: "uint256"; + }]; + readonly name: "TransferSingle"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }]; + readonly name: "URI"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "Unpaused"; + readonly type: "event"; + }, { + readonly inputs: readonly []; + readonly name: "DEFAULT_ADMIN_ROLE"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "MINTER_ROLE"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "PAUSER_ROLE"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }]; + readonly name: "balanceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address[]"; + readonly name: "accounts"; + readonly type: "address[]"; + }, { + readonly internalType: "uint256[]"; + readonly name: "ids"; + readonly type: "uint256[]"; + }]; + readonly name: "balanceOfBatch"; + readonly outputs: readonly [{ + readonly internalType: "uint256[]"; + readonly name: ""; + readonly type: "uint256[]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "value"; + readonly type: "uint256"; + }]; + readonly name: "burn"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly internalType: "uint256[]"; + readonly name: "ids"; + readonly type: "uint256[]"; + }, { + readonly internalType: "uint256[]"; + readonly name: "values"; + readonly type: "uint256[]"; + }]; + readonly name: "burnBatch"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }]; + readonly name: "getRoleAdmin"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "index"; + readonly type: "uint256"; + }]; + readonly name: "getRoleMember"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }]; + readonly name: "getRoleMemberCount"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "grantRole"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "hasRole"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "uri"; + readonly type: "string"; + }]; + readonly name: "initialize"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly name: "isApprovedForAll"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "amount"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "mint"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256[]"; + readonly name: "ids"; + readonly type: "uint256[]"; + }, { + readonly internalType: "uint256[]"; + readonly name: "amounts"; + readonly type: "uint256[]"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "mintBatch"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "pause"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "paused"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "renounceRole"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "revokeRole"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256[]"; + readonly name: "ids"; + readonly type: "uint256[]"; + }, { + readonly internalType: "uint256[]"; + readonly name: "amounts"; + readonly type: "uint256[]"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "safeBatchTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "amount"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "setApprovalForAll"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "unpause"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly name: "uri"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): ERC1155PresetMinterPauserUpgradeableInterface; + static connect(address: string, runner?: ContractRunner | null): ERC1155PresetMinterPauserUpgradeable; +} +export {}; +//# sourceMappingURL=ERC1155PresetMinterPauserUpgradeable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable__factory.d.ts.map new file mode 100644 index 00000000..3e22090d --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ERC1155PresetMinterPauserUpgradeable__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,KAAK,EACV,oCAAoC,EACpC,6CAA6C,EAC9C,MAAM,kHAAkH,CAAC;AAmvB1H,aAAK,qDAAqD,GACtD,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,6CAA8C,SAAQ,eAAe;gBACpE,GAAG,IAAI,EAAE,qDAAqD;IAQjE,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CACd,MAAM,EAAE,cAAc,GAAG,IAAI,GAC5B,6CAA6C;IAMhD,MAAM,CAAC,QAAQ,CAAC,QAAQ,khtBAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,6CAA6C;IAGvE,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,oCAAoC;CAOxC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable__factory.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable__factory.js new file mode 100644 index 00000000..9b2bfbfb --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable__factory.js @@ -0,0 +1,783 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ERC1155PresetMinterPauserUpgradeable__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "ApprovalForAll", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint8", + name: "version", + type: "uint8", + }, + ], + name: "Initialized", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "Paused", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + indexed: true, + internalType: "bytes32", + name: "previousAdminRole", + type: "bytes32", + }, + { + indexed: true, + internalType: "bytes32", + name: "newAdminRole", + type: "bytes32", + }, + ], + name: "RoleAdminChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "RoleGranted", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "RoleRevoked", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: false, + internalType: "uint256[]", + name: "ids", + type: "uint256[]", + }, + { + indexed: false, + internalType: "uint256[]", + name: "values", + type: "uint256[]", + }, + ], + name: "TransferBatch", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "TransferSingle", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "string", + name: "value", + type: "string", + }, + { + indexed: true, + internalType: "uint256", + name: "id", + type: "uint256", + }, + ], + name: "URI", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "Unpaused", + type: "event", + }, + { + inputs: [], + name: "DEFAULT_ADMIN_ROLE", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + 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: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address[]", + name: "accounts", + type: "address[]", + }, + { + internalType: "uint256[]", + name: "ids", + type: "uint256[]", + }, + ], + name: "balanceOfBatch", + outputs: [ + { + internalType: "uint256[]", + name: "", + type: "uint256[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "burn", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "uint256[]", + name: "ids", + type: "uint256[]", + }, + { + internalType: "uint256[]", + name: "values", + type: "uint256[]", + }, + ], + name: "burnBatch", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + ], + name: "getRoleAdmin", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + 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: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "grantRole", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "hasRole", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "uri", + type: "string", + }, + ], + name: "initialize", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + name: "isApprovedForAll", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "mint", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256[]", + name: "ids", + type: "uint256[]", + }, + { + internalType: "uint256[]", + name: "amounts", + type: "uint256[]", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "mintBatch", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "pause", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "paused", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "renounceRole", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "revokeRole", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256[]", + name: "ids", + type: "uint256[]", + }, + { + internalType: "uint256[]", + name: "amounts", + type: "uint256[]", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "safeBatchTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "setApprovalForAll", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "unpause", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + name: "uri", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +const _bytecode = "0x608060405234801561001057600080fd5b50612ce5806100206000396000f3fe608060405234801561001057600080fd5b506004361061018d5760003560e01c80638456cb59116100de578063d539139311610097578063e985e9c511610071578063e985e9c514610377578063f242432a146103b3578063f5298aca146103c6578063f62d1888146103d957600080fd5b8063d53913931461033a578063d547741f1461034f578063e63ab1e91461036257600080fd5b80638456cb59146102c65780639010d07c146102ce57806391d14854146102f9578063a217fddf1461030c578063a22cb46514610314578063ca15c8731461032757600080fd5b80632f2ff15d1161014b5780634e1273f4116101255780634e1273f4146102745780635c975abb146102945780636b20c454146102a0578063731133e9146102b357600080fd5b80632f2ff15d1461024657806336568abe146102595780633f4ba83a1461026c57600080fd5b8062fdd58e1461019257806301ffc9a7146101b85780630e89341c146101db5780631f7fdffa146101fb578063248a9ca3146102105780632eb2c2d614610233575b600080fd5b6101a56101a0366004611edd565b6103ec565b6040519081526020015b60405180910390f35b6101cb6101c6366004611f1d565b610487565b60405190151581526020016101af565b6101ee6101e9366004611f3a565b610492565b6040516101af9190611fa3565b61020e610209366004612109565b610526565b005b6101a561021e366004611f3a565b60009081526065602052604090206001015490565b61020e6102413660046121a1565b61056c565b61020e61025436600461224a565b6105b8565b61020e61026736600461224a565b6105e2565b61020e610660565b610287610282366004612276565b6106f4565b6040516101af919061237b565b61012d5460ff166101cb565b61020e6102ae36600461238e565b61081d565b61020e6102c1366004612401565b610860565b61020e6108a0565b6102e16102dc366004612455565b610932565b6040516001600160a01b0390911681526020016101af565b6101cb61030736600461224a565b610951565b6101a5600081565b61020e610322366004612477565b61097c565b6101a5610335366004611f3a565b610987565b6101a5600080516020612cb983398151915281565b61020e61035d36600461224a565b61099e565b6101a5600080516020612c9983398151915281565b6101cb6103853660046124b3565b6001600160a01b03918216600090815260ca6020908152604080832093909416825291909152205460ff1690565b61020e6103c13660046124dd565b6109c3565b61020e6103d4366004612541565b610a08565b61020e6103e7366004612574565b610a4b565b60006001600160a01b03831661045c5760405162461bcd60e51b815260206004820152602a60248201527f455243313135353a2061646472657373207a65726f206973206e6f742061207660448201526930b634b21037bbb732b960b11b60648201526084015b60405180910390fd5b50600081815260c9602090815260408083206001600160a01b03861684529091529020545b92915050565b600061048182610b5d565b606060cb80546104a1906125c4565b80601f01602080910402602001604051908101604052809291908181526020018280546104cd906125c4565b801561051a5780601f106104ef5761010080835404028352916020019161051a565b820191906000526020600020905b8154815290600101906020018083116104fd57829003601f168201915b50505050509050919050565b61053e600080516020612cb983398151915233610951565b61055a5760405162461bcd60e51b8152600401610453906125fe565b61056684848484610b9d565b50505050565b6001600160a01b03851633148061058857506105888533610385565b6105a45760405162461bcd60e51b81526004016104539061265b565b6105b18585858585610cf8565b5050505050565b6000828152606560205260409020600101546105d381610ea5565b6105dd8383610eb2565b505050565b6001600160a01b03811633146106525760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610453565b61065c8282610ed4565b5050565b610678600080516020612c9983398151915233610951565b6106ea5760405162461bcd60e51b815260206004820152603b60248201527f455243313135355072657365744d696e7465725061757365723a206d7573742060448201527f686176652070617573657220726f6c6520746f20756e706175736500000000006064820152608401610453565b6106f2610ef6565b565b606081518351146107595760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b6064820152608401610453565b600083516001600160401b0381111561077457610774611fb6565b60405190808252806020026020018201604052801561079d578160200160208202803683370190505b50905060005b8451811015610815576107e88582815181106107c1576107c16126aa565b60200260200101518583815181106107db576107db6126aa565b60200260200101516103ec565b8282815181106107fa576107fa6126aa565b602090810291909101015261080e816126d6565b90506107a3565b509392505050565b6001600160a01b03831633148061083957506108398333610385565b6108555760405162461bcd60e51b81526004016104539061265b565b6105dd838383610f49565b610878600080516020612cb983398151915233610951565b6108945760405162461bcd60e51b8152600401610453906125fe565b610566848484846110e8565b6108b8600080516020612c9983398151915233610951565b61092a5760405162461bcd60e51b815260206004820152603960248201527f455243313135355072657365744d696e7465725061757365723a206d7573742060448201527f686176652070617573657220726f6c6520746f207061757365000000000000006064820152608401610453565b6106f26111d3565b600082815260976020526040812061094a9083611211565b9392505050565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b61065c33838361121d565b6000818152609760205260408120610481906112fd565b6000828152606560205260409020600101546109b981610ea5565b6105dd8383610ed4565b6001600160a01b0385163314806109df57506109df8533610385565b6109fb5760405162461bcd60e51b81526004016104539061265b565b6105b18585858585611307565b6001600160a01b038316331480610a245750610a248333610385565b610a405760405162461bcd60e51b81526004016104539061265b565b6105dd838383611443565b600054610100900460ff1615808015610a6b5750600054600160ff909116105b80610a855750303b158015610a85575060005460ff166001145b610ae85760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610453565b6000805460ff191660011790558015610b0b576000805461ff0019166101001790555b610b148261155f565b801561065c576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b60006001600160e01b03198216636cdb3d1360e11b1480610b8e57506001600160e01b031982166303a24d0760e21b145b806104815750610481826115a0565b6001600160a01b038416610bc35760405162461bcd60e51b8152600401610453906126ef565b8151835114610be45760405162461bcd60e51b815260040161045390612730565b33610bf4816000878787876115c5565b60005b8451811015610c9057838181518110610c1257610c126126aa565b602002602001015160c96000878481518110610c3057610c306126aa565b602002602001015181526020019081526020016000206000886001600160a01b03166001600160a01b031681526020019081526020016000206000828254610c789190612778565b90915550819050610c88816126d6565b915050610bf7565b50846001600160a01b031660006001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051610ce192919061278b565b60405180910390a46105b1816000878787876115d3565b8151835114610d195760405162461bcd60e51b815260040161045390612730565b6001600160a01b038416610d3f5760405162461bcd60e51b8152600401610453906127b9565b33610d4e8187878787876115c5565b60005b8451811015610e37576000858281518110610d6e57610d6e6126aa565b602002602001015190506000858381518110610d8c57610d8c6126aa565b602090810291909101810151600084815260c9835260408082206001600160a01b038e168352909352919091205490915081811015610ddd5760405162461bcd60e51b8152600401610453906127fe565b600083815260c9602090815260408083206001600160a01b038e8116855292528083208585039055908b16825281208054849290610e1c908490612778565b9250508190555050505080610e30906126d6565b9050610d51565b50846001600160a01b0316866001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051610e8792919061278b565b60405180910390a4610e9d8187878787876115d3565b505050505050565b610eaf813361172e565b50565b610ebc8282611792565b60008281526097602052604090206105dd9082611818565b610ede828261182d565b60008281526097602052604090206105dd9082611894565b610efe6118a9565b61012d805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516001600160a01b03909116815260200160405180910390a1565b6001600160a01b038316610f6f5760405162461bcd60e51b815260040161045390612848565b8051825114610f905760405162461bcd60e51b815260040161045390612730565b6000339050610fb3818560008686604051806020016040528060008152506115c5565b60005b835181101561107b576000848281518110610fd357610fd36126aa565b602002602001015190506000848381518110610ff157610ff16126aa565b602090810291909101810151600084815260c9835260408082206001600160a01b038c1683529093529190912054909150818110156110425760405162461bcd60e51b81526004016104539061288b565b600092835260c9602090815260408085206001600160a01b038b1686529091529092209103905580611073816126d6565b915050610fb6565b5060006001600160a01b0316846001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516110cc92919061278b565b60405180910390a4604080516020810190915260009052610566565b6001600160a01b03841661110e5760405162461bcd60e51b8152600401610453906126ef565b33600061111a856118f3565b90506000611127856118f3565b9050611138836000898585896115c5565b600086815260c9602090815260408083206001600160a01b038b1684529091528120805487929061116a908490612778565b909155505060408051878152602081018790526001600160a01b03808a1692600092918716917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46111ca8360008989898961193e565b50505050505050565b6111db6119f9565b61012d805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258610f2c3390565b600061094a8383611a40565b816001600160a01b0316836001600160a01b0316036112905760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b6064820152608401610453565b6001600160a01b03838116600081815260ca6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6000610481825490565b6001600160a01b03841661132d5760405162461bcd60e51b8152600401610453906127b9565b336000611339856118f3565b90506000611346856118f3565b90506113568389898585896115c5565b600086815260c9602090815260408083206001600160a01b038c168452909152902054858110156113995760405162461bcd60e51b8152600401610453906127fe565b600087815260c9602090815260408083206001600160a01b038d8116855292528083208985039055908a168252812080548892906113d8908490612778565b909155505060408051888152602081018890526001600160a01b03808b16928c821692918816917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4611438848a8a8a8a8a61193e565b505050505050505050565b6001600160a01b0383166114695760405162461bcd60e51b815260040161045390612848565b336000611475846118f3565b90506000611482846118f3565b90506114a2838760008585604051806020016040528060008152506115c5565b600085815260c9602090815260408083206001600160a01b038a168452909152902054848110156114e55760405162461bcd60e51b81526004016104539061288b565b600086815260c9602090815260408083206001600160a01b038b81168086529184528285208a8703905582518b81529384018a90529092908816917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46040805160208101909152600090526111ca565b600054610100900460ff166115865760405162461bcd60e51b8152600401610453906128cf565b61158f81611a6a565b611597611a9a565b610eaf81611ace565b60006001600160e01b03198216635a05180f60e01b1480610481575061048182611b30565b610e9d868686868686611b65565b6001600160a01b0384163b15610e9d5760405163bc197c8160e01b81526001600160a01b0385169063bc197c8190611617908990899088908890889060040161291a565b6020604051808303816000875af1925050508015611652575060408051601f3d908101601f1916820190925261164f91810190612978565b60015b6116fe5761165e612995565b806308c379a00361169757506116726129b1565b8061167d5750611699565b8060405162461bcd60e51b81526004016104539190611fa3565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e20455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b6064820152608401610453565b6001600160e01b0319811663bc197c8160e01b146111ca5760405162461bcd60e51b815260040161045390612a3a565b6117388282610951565b61065c57611750816001600160a01b03166014611bce565b61175b836020611bce565b60405160200161176c929190612a82565b60408051601f198184030181529082905262461bcd60e51b825261045391600401611fa3565b61179c8282610951565b61065c5760008281526065602090815260408083206001600160a01b03851684529091529020805460ff191660011790556117d43390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b600061094a836001600160a01b038416611d69565b6118378282610951565b1561065c5760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b600061094a836001600160a01b038416611db8565b61012d5460ff166106f25760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b6044820152606401610453565b6040805160018082528183019092526060916000919060208083019080368337019050509050828160008151811061192d5761192d6126aa565b602090810291909101015292915050565b6001600160a01b0384163b15610e9d5760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e61906119829089908990889088908890600401612af7565b6020604051808303816000875af19250505080156119bd575060408051601f3d908101601f191682019092526119ba91810190612978565b60015b6119c95761165e612995565b6001600160e01b0319811663f23a6e6160e01b146111ca5760405162461bcd60e51b815260040161045390612a3a565b61012d5460ff16156106f25760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b6044820152606401610453565b6000826000018281548110611a5757611a576126aa565b9060005260206000200154905092915050565b600054610100900460ff16611a915760405162461bcd60e51b8152600401610453906128cf565b610eaf81611eab565b600054610100900460ff16611ac15760405162461bcd60e51b8152600401610453906128cf565b61012d805460ff19169055565b600054610100900460ff16611af55760405162461bcd60e51b8152600401610453906128cf565b611b00600033611eb7565b611b18600080516020612cb983398151915233611eb7565b610eaf600080516020612c9983398151915233611eb7565b60006001600160e01b03198216637965db0b60e01b148061048157506301ffc9a760e01b6001600160e01b0319831614610481565b61012d5460ff1615610e9d5760405162461bcd60e51b815260206004820152602c60248201527f455243313135355061757361626c653a20746f6b656e207472616e736665722060448201526b1dda1a5b19481c185d5cd95960a21b6064820152608401610453565b60606000611bdd836002612b3c565b611be8906002612778565b6001600160401b03811115611bff57611bff611fb6565b6040519080825280601f01601f191660200182016040528015611c29576020820181803683370190505b509050600360fc1b81600081518110611c4457611c446126aa565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110611c7357611c736126aa565b60200101906001600160f81b031916908160001a9053506000611c97846002612b3c565b611ca2906001612778565b90505b6001811115611d1a576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611cd657611cd66126aa565b1a60f81b828281518110611cec57611cec6126aa565b60200101906001600160f81b031916908160001a90535060049490941c93611d1381612b53565b9050611ca5565b50831561094a5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610453565b6000818152600183016020526040812054611db057508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610481565b506000610481565b60008181526001830160205260408120548015611ea1576000611ddc600183612b6a565b8554909150600090611df090600190612b6a565b9050818114611e55576000866000018281548110611e1057611e106126aa565b9060005260206000200154905080876000018481548110611e3357611e336126aa565b6000918252602080832090910192909255918252600188019052604090208390555b8554869080611e6657611e66612b7d565b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050610481565b6000915050610481565b60cb61065c8282612bd9565b61065c8282610eb2565b80356001600160a01b0381168114611ed857600080fd5b919050565b60008060408385031215611ef057600080fd5b611ef983611ec1565b946020939093013593505050565b6001600160e01b031981168114610eaf57600080fd5b600060208284031215611f2f57600080fd5b813561094a81611f07565b600060208284031215611f4c57600080fd5b5035919050565b60005b83811015611f6e578181015183820152602001611f56565b50506000910152565b60008151808452611f8f816020860160208601611f53565b601f01601f19169290920160200192915050565b60208152600061094a6020830184611f77565b634e487b7160e01b600052604160045260246000fd5b601f8201601f191681016001600160401b0381118282101715611ff157611ff1611fb6565b6040525050565b60006001600160401b0382111561201157612011611fb6565b5060051b60200190565b600082601f83011261202c57600080fd5b8135602061203982611ff8565b6040516120468282611fcc565b83815260059390931b850182019282810191508684111561206657600080fd5b8286015b84811015612081578035835291830191830161206a565b509695505050505050565b60006001600160401b038311156120a5576120a5611fb6565b6040516120bc601f8501601f191660200182611fcc565b8091508381528484840111156120d157600080fd5b83836020830137600060208583010152509392505050565b600082601f8301126120fa57600080fd5b61094a8383356020850161208c565b6000806000806080858703121561211f57600080fd5b61212885611ec1565b935060208501356001600160401b038082111561214457600080fd5b6121508883890161201b565b9450604087013591508082111561216657600080fd5b6121728883890161201b565b9350606087013591508082111561218857600080fd5b50612195878288016120e9565b91505092959194509250565b600080600080600060a086880312156121b957600080fd5b6121c286611ec1565b94506121d060208701611ec1565b935060408601356001600160401b03808211156121ec57600080fd5b6121f889838a0161201b565b9450606088013591508082111561220e57600080fd5b61221a89838a0161201b565b9350608088013591508082111561223057600080fd5b5061223d888289016120e9565b9150509295509295909350565b6000806040838503121561225d57600080fd5b8235915061226d60208401611ec1565b90509250929050565b6000806040838503121561228957600080fd5b82356001600160401b03808211156122a057600080fd5b818501915085601f8301126122b457600080fd5b813560206122c182611ff8565b6040516122ce8282611fcc565b83815260059390931b85018201928281019150898411156122ee57600080fd5b948201945b838610156123135761230486611ec1565b825294820194908201906122f3565b9650508601359250508082111561232957600080fd5b506123368582860161201b565b9150509250929050565b600081518084526020808501945080840160005b8381101561237057815187529582019590820190600101612354565b509495945050505050565b60208152600061094a6020830184612340565b6000806000606084860312156123a357600080fd5b6123ac84611ec1565b925060208401356001600160401b03808211156123c857600080fd5b6123d48783880161201b565b935060408601359150808211156123ea57600080fd5b506123f78682870161201b565b9150509250925092565b6000806000806080858703121561241757600080fd5b61242085611ec1565b9350602085013592506040850135915060608501356001600160401b0381111561244957600080fd5b612195878288016120e9565b6000806040838503121561246857600080fd5b50508035926020909101359150565b6000806040838503121561248a57600080fd5b61249383611ec1565b9150602083013580151581146124a857600080fd5b809150509250929050565b600080604083850312156124c657600080fd5b6124cf83611ec1565b915061226d60208401611ec1565b600080600080600060a086880312156124f557600080fd5b6124fe86611ec1565b945061250c60208701611ec1565b9350604086013592506060860135915060808601356001600160401b0381111561253557600080fd5b61223d888289016120e9565b60008060006060848603121561255657600080fd5b61255f84611ec1565b95602085013595506040909401359392505050565b60006020828403121561258657600080fd5b81356001600160401b0381111561259c57600080fd5b8201601f810184136125ad57600080fd5b6125bc8482356020840161208c565b949350505050565b600181811c908216806125d857607f821691505b6020821081036125f857634e487b7160e01b600052602260045260246000fd5b50919050565b60208082526038908201527f455243313135355072657365744d696e7465725061757365723a206d7573742060408201527f68617665206d696e74657220726f6c6520746f206d696e740000000000000000606082015260800190565b6020808252602f908201527f455243313135353a2063616c6c6572206973206e6f7420746f6b656e206f776e60408201526e195c881b9bdc88185c1c1c9bdd9959608a1b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000600182016126e8576126e86126c0565b5060010190565b60208082526021908201527f455243313135353a206d696e7420746f20746865207a65726f206164647265736040820152607360f81b606082015260800190565b60208082526028908201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206040820152670dad2e6dac2e8c6d60c31b606082015260800190565b80820180821115610481576104816126c0565b60408152600061279e6040830185612340565b82810360208401526127b08185612340565b95945050505050565b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b60208082526023908201527f455243313135353a206275726e2066726f6d20746865207a65726f206164647260408201526265737360e81b606082015260800190565b60208082526024908201527f455243313135353a206275726e20616d6f756e7420657863656564732062616c604082015263616e636560e01b606082015260800190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6001600160a01b0386811682528516602082015260a06040820181905260009061294690830186612340565b82810360608401526129588186612340565b9050828103608084015261296c8185611f77565b98975050505050505050565b60006020828403121561298a57600080fd5b815161094a81611f07565b600060033d11156129ae5760046000803e5060005160e01c5b90565b600060443d10156129bf5790565b6040516003193d81016004833e81513d6001600160401b0381602484011181841117156129ee57505050505090565b8285019150815181811115612a065750505050505090565b843d8701016020828501011115612a205750505050505090565b612a2f60208286010187611fcc565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351612aba816017850160208801611f53565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351612aeb816028840160208801611f53565b01602801949350505050565b6001600160a01b03868116825285166020820152604081018490526060810183905260a060808201819052600090612b3190830184611f77565b979650505050505050565b8082028115828204841417610481576104816126c0565b600081612b6257612b626126c0565b506000190190565b81810381811115610481576104816126c0565b634e487b7160e01b600052603160045260246000fd5b601f8211156105dd57600081815260208120601f850160051c81016020861015612bba5750805b601f850160051c820191505b81811015610e9d57828155600101612bc6565b81516001600160401b03811115612bf257612bf2611fb6565b612c0681612c0084546125c4565b84612b93565b602080601f831160018114612c3b5760008415612c235750858301515b600019600386901b1c1916600185901b178555610e9d565b600085815260208120601f198616915b82811015612c6a57888601518255948401946001909101908401612c4b565b5085821015612c885787850151600019600388901b60f8161c191681555b5050505050600190811b0190555056fe65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000811000a"; +const isSuperArgs = (xs) => xs.length > 1; +class ERC1155PresetMinterPauserUpgradeable__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(overrides) { + return super.getDeployTransaction(overrides || {}); + } + deploy(overrides) { + return super.deploy(overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.ERC1155PresetMinterPauserUpgradeable__factory = ERC1155PresetMinterPauserUpgradeable__factory; +ERC1155PresetMinterPauserUpgradeable__factory.bytecode = _bytecode; +ERC1155PresetMinterPauserUpgradeable__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/index.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/index.d.ts new file mode 100644 index 00000000..b0747a63 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/index.d.ts @@ -0,0 +1,2 @@ +export { ERC1155PresetMinterPauserUpgradeable__factory } from "./ERC1155PresetMinterPauserUpgradeable__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/index.d.ts.map new file mode 100644 index 00000000..43f1e013 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,6CAA6C,EAAE,MAAM,iDAAiD,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/index.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/index.js new file mode 100644 index 00000000..e3dffca4 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/index.js @@ -0,0 +1,5 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ERC1155PresetMinterPauserUpgradeable__factory = void 0; +var ERC1155PresetMinterPauserUpgradeable__factory_1 = require("./ERC1155PresetMinterPauserUpgradeable__factory"); +Object.defineProperty(exports, "ERC1155PresetMinterPauserUpgradeable__factory", { enumerable: true, get: function () { return ERC1155PresetMinterPauserUpgradeable__factory_1.ERC1155PresetMinterPauserUpgradeable__factory; } }); diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable__factory.d.ts new file mode 100644 index 00000000..1806d307 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable__factory.d.ts @@ -0,0 +1,148 @@ +import { type ContractRunner } from "ethers"; +import type { IERC20Upgradeable, IERC20UpgradeableInterface } from "../../../../../@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable"; +export declare class IERC20Upgradeable__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "spender"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "value"; + readonly type: "uint256"; + }]; + readonly name: "Approval"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "value"; + readonly type: "uint256"; + }]; + readonly name: "Transfer"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "spender"; + readonly type: "address"; + }]; + readonly name: "allowance"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "spender"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "amount"; + readonly type: "uint256"; + }]; + readonly name: "approve"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "balanceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "totalSupply"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "amount"; + readonly type: "uint256"; + }]; + readonly name: "transfer"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "amount"; + readonly type: "uint256"; + }]; + readonly name: "transferFrom"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): IERC20UpgradeableInterface; + static connect(address: string, runner?: ContractRunner | null): IERC20Upgradeable; +} +//# sourceMappingURL=IERC20Upgradeable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable__factory.d.ts.map new file mode 100644 index 00000000..ec5cd53b --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC20Upgradeable__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,iBAAiB,EACjB,0BAA0B,EAC3B,MAAM,kFAAkF,CAAC;AA4L1F,qBAAa,0BAA0B;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,0BAA0B;IAGpD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,iBAAiB;CAGrB"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable__factory.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable__factory.js new file mode 100644 index 00000000..039cdc5c --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable__factory.js @@ -0,0 +1,199 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IERC20Upgradeable__factory = void 0; +const ethers_1 = require("ethers"); +const _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: "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", + }, +]; +class IERC20Upgradeable__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IERC20Upgradeable__factory = IERC20Upgradeable__factory; +IERC20Upgradeable__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/index.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/index.d.ts new file mode 100644 index 00000000..7c959ebb --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/index.d.ts @@ -0,0 +1,2 @@ +export { IERC20Upgradeable__factory } from "./IERC20Upgradeable__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/index.d.ts.map new file mode 100644 index 00000000..1525d87b --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/index.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/index.js new file mode 100644 index 00000000..244015f4 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/index.js @@ -0,0 +1,5 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IERC20Upgradeable__factory = void 0; +var IERC20Upgradeable__factory_1 = require("./IERC20Upgradeable__factory"); +Object.defineProperty(exports, "IERC20Upgradeable__factory", { enumerable: true, get: function () { return IERC20Upgradeable__factory_1.IERC20Upgradeable__factory; } }); diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable__factory.d.ts new file mode 100644 index 00000000..89b61de5 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable__factory.d.ts @@ -0,0 +1,287 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../../../common"; +import type { ERC721Upgradeable, ERC721UpgradeableInterface } from "../../../../../@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable"; +declare type ERC721UpgradeableConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class ERC721Upgradeable__factory extends ContractFactory { + constructor(...args: ERC721UpgradeableConstructorParams); + getDeployTransaction(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): ERC721Upgradeable__factory; + static readonly bytecode = "0x608060405234801561001057600080fd5b506110e2806100206000396000f3fe608060405234801561001057600080fd5b50600436106100cf5760003560e01c80636352211e1161008c578063a22cb46511610066578063a22cb465146101b3578063b88d4fde146101c6578063c87b56dd146101d9578063e985e9c5146101ec57600080fd5b80636352211e1461017757806370a082311461018a57806395d89b41146101ab57600080fd5b806301ffc9a7146100d457806306fdde03146100fc578063081812fc14610111578063095ea7b31461013c57806323b872dd1461015157806342842e0e14610164575b600080fd5b6100e76100e2366004610c32565b6101ff565b60405190151581526020015b60405180910390f35b610104610251565b6040516100f39190610c9f565b61012461011f366004610cb2565b6102e3565b6040516001600160a01b0390911681526020016100f3565b61014f61014a366004610ce7565b61030a565b005b61014f61015f366004610d11565b610424565b61014f610172366004610d11565b610455565b610124610185366004610cb2565b610470565b61019d610198366004610d4d565b6104d0565b6040519081526020016100f3565b610104610556565b61014f6101c1366004610d68565b610565565b61014f6101d4366004610dba565b610574565b6101046101e7366004610cb2565b6105ac565b6100e76101fa366004610e96565b610620565b60006001600160e01b031982166380ac58cd60e01b148061023057506001600160e01b03198216635b5e139f60e01b145b8061024b57506301ffc9a760e01b6001600160e01b03198316145b92915050565b60606065805461026090610ec9565b80601f016020809104026020016040519081016040528092919081815260200182805461028c90610ec9565b80156102d95780601f106102ae576101008083540402835291602001916102d9565b820191906000526020600020905b8154815290600101906020018083116102bc57829003601f168201915b5050505050905090565b60006102ee8261064e565b506000908152606960205260409020546001600160a01b031690565b600061031582610470565b9050806001600160a01b0316836001600160a01b0316036103875760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084015b60405180910390fd5b336001600160a01b03821614806103a357506103a38133610620565b6104155760405162461bcd60e51b815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c0000606482015260840161037e565b61041f83836106b0565b505050565b61042e338261071e565b61044a5760405162461bcd60e51b815260040161037e90610f03565b61041f83838361077d565b61041f83838360405180602001604052806000815250610574565b6000818152606760205260408120546001600160a01b03168061024b5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b604482015260640161037e565b60006001600160a01b03821661053a5760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b606482015260840161037e565b506001600160a01b031660009081526068602052604090205490565b60606066805461026090610ec9565b610570338383610919565b5050565b61057e338361071e565b61059a5760405162461bcd60e51b815260040161037e90610f03565b6105a6848484846109e7565b50505050565b60606105b78261064e565b60006105ce60408051602081019091526000815290565b905060008151116105ee5760405180602001604052806000815250610619565b806105f884610a1a565b604051602001610609929190610f51565b6040516020818303038152906040525b9392505050565b6001600160a01b039182166000908152606a6020908152604080832093909416825291909152205460ff1690565b6000818152606760205260409020546001600160a01b03166106ad5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b604482015260640161037e565b50565b600081815260696020526040902080546001600160a01b0319166001600160a01b03841690811790915581906106e582610470565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60008061072a83610470565b9050806001600160a01b0316846001600160a01b0316148061075157506107518185610620565b806107755750836001600160a01b031661076a846102e3565b6001600160a01b0316145b949350505050565b826001600160a01b031661079082610470565b6001600160a01b0316146107f45760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b606482015260840161037e565b6001600160a01b0382166108565760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b606482015260840161037e565b6108616000826106b0565b6001600160a01b038316600090815260686020526040812080546001929061088a908490610f96565b90915550506001600160a01b03821660009081526068602052604081208054600192906108b8908490610fa9565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b816001600160a01b0316836001600160a01b03160361097a5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604482015260640161037e565b6001600160a01b038381166000818152606a6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6109f284848461077d565b6109fe84848484610b1b565b6105a65760405162461bcd60e51b815260040161037e90610fbc565b606081600003610a415750506040805180820190915260018152600360fc1b602082015290565b8160005b8115610a6b5780610a558161100e565b9150610a649050600a8361103d565b9150610a45565b60008167ffffffffffffffff811115610a8657610a86610da4565b6040519080825280601f01601f191660200182016040528015610ab0576020820181803683370190505b5090505b841561077557610ac5600183610f96565b9150610ad2600a86611051565b610add906030610fa9565b60f81b818381518110610af257610af2611065565b60200101906001600160f81b031916908160001a905350610b14600a8661103d565b9450610ab4565b60006001600160a01b0384163b15610c1157604051630a85bd0160e11b81526001600160a01b0385169063150b7a0290610b5f90339089908890889060040161107b565b6020604051808303816000875af1925050508015610b9a575060408051601f3d908101601f19168201909252610b97918101906110b8565b60015b610bf7573d808015610bc8576040519150601f19603f3d011682016040523d82523d6000602084013e610bcd565b606091505b508051600003610bef5760405162461bcd60e51b815260040161037e90610fbc565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610775565b506001949350505050565b6001600160e01b0319811681146106ad57600080fd5b600060208284031215610c4457600080fd5b813561061981610c1c565b60005b83811015610c6a578181015183820152602001610c52565b50506000910152565b60008151808452610c8b816020860160208601610c4f565b601f01601f19169290920160200192915050565b6020815260006106196020830184610c73565b600060208284031215610cc457600080fd5b5035919050565b80356001600160a01b0381168114610ce257600080fd5b919050565b60008060408385031215610cfa57600080fd5b610d0383610ccb565b946020939093013593505050565b600080600060608486031215610d2657600080fd5b610d2f84610ccb565b9250610d3d60208501610ccb565b9150604084013590509250925092565b600060208284031215610d5f57600080fd5b61061982610ccb565b60008060408385031215610d7b57600080fd5b610d8483610ccb565b915060208301358015158114610d9957600080fd5b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b60008060008060808587031215610dd057600080fd5b610dd985610ccb565b9350610de760208601610ccb565b925060408501359150606085013567ffffffffffffffff80821115610e0b57600080fd5b818701915087601f830112610e1f57600080fd5b813581811115610e3157610e31610da4565b604051601f8201601f19908116603f01168101908382118183101715610e5957610e59610da4565b816040528281528a6020848701011115610e7257600080fd5b82602086016020830137600060208483010152809550505050505092959194509250565b60008060408385031215610ea957600080fd5b610eb283610ccb565b9150610ec060208401610ccb565b90509250929050565b600181811c90821680610edd57607f821691505b602082108103610efd57634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252602e908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526d1c881b9bdc88185c1c1c9bdd995960921b606082015260800190565b60008351610f63818460208801610c4f565b835190830190610f77818360208801610c4f565b01949350505050565b634e487b7160e01b600052601160045260246000fd5b8181038181111561024b5761024b610f80565b8082018082111561024b5761024b610f80565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b60006001820161102057611020610f80565b5060010190565b634e487b7160e01b600052601260045260246000fd5b60008261104c5761104c611027565b500490565b60008261106057611060611027565b500690565b634e487b7160e01b600052603260045260246000fd5b6001600160a01b03858116825284166020820152604081018390526080606082018190526000906110ae90830184610c73565b9695505050505050565b6000602082840312156110ca57600080fd5b815161061981610c1c56fea164736f6c6343000811000a"; + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "approved"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Approval"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "ApprovalForAll"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "uint8"; + readonly name: "version"; + readonly type: "uint8"; + }]; + readonly name: "Initialized"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Transfer"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "approve"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "balanceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getApproved"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly name: "isApprovedForAll"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "name"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "ownerOf"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "setApprovalForAll"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "symbol"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "tokenURI"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "transferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): ERC721UpgradeableInterface; + static connect(address: string, runner?: ContractRunner | null): ERC721Upgradeable; +} +export {}; +//# sourceMappingURL=ERC721Upgradeable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable__factory.d.ts.map new file mode 100644 index 00000000..51e36a54 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ERC721Upgradeable__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,iBAAiB,EACjB,0BAA0B,EAC3B,MAAM,mFAAmF,CAAC;AA+V3F,aAAK,kCAAkC,GACnC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,0BAA2B,SAAQ,eAAe;gBACjD,GAAG,IAAI,EAAE,kCAAkC;IAQ9C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,0BAA0B;IAI3E,MAAM,CAAC,QAAQ,CAAC,QAAQ,4gRAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,0BAA0B;IAGpD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,iBAAiB;CAGrB"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable__factory.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable__factory.js new file mode 100644 index 00000000..f0d070d4 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable__factory.js @@ -0,0 +1,379 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ERC721Upgradeable__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "approved", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Approval", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "ApprovalForAll", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint8", + name: "version", + type: "uint8", + }, + ], + name: "Initialized", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Transfer", + type: "event", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "approve", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getApproved", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + name: "isApprovedForAll", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "name", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "ownerOf", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "setApprovalForAll", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "symbol", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "tokenURI", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "transferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +const _bytecode = "0x608060405234801561001057600080fd5b506110e2806100206000396000f3fe608060405234801561001057600080fd5b50600436106100cf5760003560e01c80636352211e1161008c578063a22cb46511610066578063a22cb465146101b3578063b88d4fde146101c6578063c87b56dd146101d9578063e985e9c5146101ec57600080fd5b80636352211e1461017757806370a082311461018a57806395d89b41146101ab57600080fd5b806301ffc9a7146100d457806306fdde03146100fc578063081812fc14610111578063095ea7b31461013c57806323b872dd1461015157806342842e0e14610164575b600080fd5b6100e76100e2366004610c32565b6101ff565b60405190151581526020015b60405180910390f35b610104610251565b6040516100f39190610c9f565b61012461011f366004610cb2565b6102e3565b6040516001600160a01b0390911681526020016100f3565b61014f61014a366004610ce7565b61030a565b005b61014f61015f366004610d11565b610424565b61014f610172366004610d11565b610455565b610124610185366004610cb2565b610470565b61019d610198366004610d4d565b6104d0565b6040519081526020016100f3565b610104610556565b61014f6101c1366004610d68565b610565565b61014f6101d4366004610dba565b610574565b6101046101e7366004610cb2565b6105ac565b6100e76101fa366004610e96565b610620565b60006001600160e01b031982166380ac58cd60e01b148061023057506001600160e01b03198216635b5e139f60e01b145b8061024b57506301ffc9a760e01b6001600160e01b03198316145b92915050565b60606065805461026090610ec9565b80601f016020809104026020016040519081016040528092919081815260200182805461028c90610ec9565b80156102d95780601f106102ae576101008083540402835291602001916102d9565b820191906000526020600020905b8154815290600101906020018083116102bc57829003601f168201915b5050505050905090565b60006102ee8261064e565b506000908152606960205260409020546001600160a01b031690565b600061031582610470565b9050806001600160a01b0316836001600160a01b0316036103875760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084015b60405180910390fd5b336001600160a01b03821614806103a357506103a38133610620565b6104155760405162461bcd60e51b815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c0000606482015260840161037e565b61041f83836106b0565b505050565b61042e338261071e565b61044a5760405162461bcd60e51b815260040161037e90610f03565b61041f83838361077d565b61041f83838360405180602001604052806000815250610574565b6000818152606760205260408120546001600160a01b03168061024b5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b604482015260640161037e565b60006001600160a01b03821661053a5760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b606482015260840161037e565b506001600160a01b031660009081526068602052604090205490565b60606066805461026090610ec9565b610570338383610919565b5050565b61057e338361071e565b61059a5760405162461bcd60e51b815260040161037e90610f03565b6105a6848484846109e7565b50505050565b60606105b78261064e565b60006105ce60408051602081019091526000815290565b905060008151116105ee5760405180602001604052806000815250610619565b806105f884610a1a565b604051602001610609929190610f51565b6040516020818303038152906040525b9392505050565b6001600160a01b039182166000908152606a6020908152604080832093909416825291909152205460ff1690565b6000818152606760205260409020546001600160a01b03166106ad5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b604482015260640161037e565b50565b600081815260696020526040902080546001600160a01b0319166001600160a01b03841690811790915581906106e582610470565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60008061072a83610470565b9050806001600160a01b0316846001600160a01b0316148061075157506107518185610620565b806107755750836001600160a01b031661076a846102e3565b6001600160a01b0316145b949350505050565b826001600160a01b031661079082610470565b6001600160a01b0316146107f45760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b606482015260840161037e565b6001600160a01b0382166108565760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b606482015260840161037e565b6108616000826106b0565b6001600160a01b038316600090815260686020526040812080546001929061088a908490610f96565b90915550506001600160a01b03821660009081526068602052604081208054600192906108b8908490610fa9565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b816001600160a01b0316836001600160a01b03160361097a5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604482015260640161037e565b6001600160a01b038381166000818152606a6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6109f284848461077d565b6109fe84848484610b1b565b6105a65760405162461bcd60e51b815260040161037e90610fbc565b606081600003610a415750506040805180820190915260018152600360fc1b602082015290565b8160005b8115610a6b5780610a558161100e565b9150610a649050600a8361103d565b9150610a45565b60008167ffffffffffffffff811115610a8657610a86610da4565b6040519080825280601f01601f191660200182016040528015610ab0576020820181803683370190505b5090505b841561077557610ac5600183610f96565b9150610ad2600a86611051565b610add906030610fa9565b60f81b818381518110610af257610af2611065565b60200101906001600160f81b031916908160001a905350610b14600a8661103d565b9450610ab4565b60006001600160a01b0384163b15610c1157604051630a85bd0160e11b81526001600160a01b0385169063150b7a0290610b5f90339089908890889060040161107b565b6020604051808303816000875af1925050508015610b9a575060408051601f3d908101601f19168201909252610b97918101906110b8565b60015b610bf7573d808015610bc8576040519150601f19603f3d011682016040523d82523d6000602084013e610bcd565b606091505b508051600003610bef5760405162461bcd60e51b815260040161037e90610fbc565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610775565b506001949350505050565b6001600160e01b0319811681146106ad57600080fd5b600060208284031215610c4457600080fd5b813561061981610c1c565b60005b83811015610c6a578181015183820152602001610c52565b50506000910152565b60008151808452610c8b816020860160208601610c4f565b601f01601f19169290920160200192915050565b6020815260006106196020830184610c73565b600060208284031215610cc457600080fd5b5035919050565b80356001600160a01b0381168114610ce257600080fd5b919050565b60008060408385031215610cfa57600080fd5b610d0383610ccb565b946020939093013593505050565b600080600060608486031215610d2657600080fd5b610d2f84610ccb565b9250610d3d60208501610ccb565b9150604084013590509250925092565b600060208284031215610d5f57600080fd5b61061982610ccb565b60008060408385031215610d7b57600080fd5b610d8483610ccb565b915060208301358015158114610d9957600080fd5b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b60008060008060808587031215610dd057600080fd5b610dd985610ccb565b9350610de760208601610ccb565b925060408501359150606085013567ffffffffffffffff80821115610e0b57600080fd5b818701915087601f830112610e1f57600080fd5b813581811115610e3157610e31610da4565b604051601f8201601f19908116603f01168101908382118183101715610e5957610e59610da4565b816040528281528a6020848701011115610e7257600080fd5b82602086016020830137600060208483010152809550505050505092959194509250565b60008060408385031215610ea957600080fd5b610eb283610ccb565b9150610ec060208401610ccb565b90509250929050565b600181811c90821680610edd57607f821691505b602082108103610efd57634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252602e908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526d1c881b9bdc88185c1c1c9bdd995960921b606082015260800190565b60008351610f63818460208801610c4f565b835190830190610f77818360208801610c4f565b01949350505050565b634e487b7160e01b600052601160045260246000fd5b8181038181111561024b5761024b610f80565b8082018082111561024b5761024b610f80565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b60006001820161102057611020610f80565b5060010190565b634e487b7160e01b600052601260045260246000fd5b60008261104c5761104c611027565b500490565b60008261106057611060611027565b500690565b634e487b7160e01b600052603260045260246000fd5b6001600160a01b03858116825284166020820152604081018390526080606082018190526000906110ae90830184610c73565b9695505050505050565b6000602082840312156110ca57600080fd5b815161061981610c1c56fea164736f6c6343000811000a"; +const isSuperArgs = (xs) => xs.length > 1; +class ERC721Upgradeable__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(overrides) { + return super.getDeployTransaction(overrides || {}); + } + deploy(overrides) { + return super.deploy(overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.ERC721Upgradeable__factory = ERC721Upgradeable__factory; +ERC721Upgradeable__factory.bytecode = _bytecode; +ERC721Upgradeable__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable__factory.d.ts new file mode 100644 index 00000000..620d90be --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable__factory.d.ts @@ -0,0 +1,34 @@ +import { type ContractRunner } from "ethers"; +import type { IERC721ReceiverUpgradeable, IERC721ReceiverUpgradeableInterface } from "../../../../../@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable"; +export declare class IERC721ReceiverUpgradeable__factory { + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "onERC721Received"; + readonly outputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: ""; + readonly type: "bytes4"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): IERC721ReceiverUpgradeableInterface; + static connect(address: string, runner?: ContractRunner | null): IERC721ReceiverUpgradeable; +} +//# sourceMappingURL=IERC721ReceiverUpgradeable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable__factory.d.ts.map new file mode 100644 index 00000000..fea2825a --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC721ReceiverUpgradeable__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,0BAA0B,EAC1B,mCAAmC,EACpC,MAAM,4FAA4F,CAAC;AAuCpG,qBAAa,mCAAmC;IAC9C,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,mCAAmC;IAG7D,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,0BAA0B;CAO9B"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable__factory.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable__factory.js new file mode 100644 index 00000000..fc1e8172 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable__factory.js @@ -0,0 +1,50 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IERC721ReceiverUpgradeable__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "onERC721Received", + outputs: [ + { + internalType: "bytes4", + name: "", + type: "bytes4", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, +]; +class IERC721ReceiverUpgradeable__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IERC721ReceiverUpgradeable__factory = IERC721ReceiverUpgradeable__factory; +IERC721ReceiverUpgradeable__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable__factory.d.ts new file mode 100644 index 00000000..bf89e32c --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable__factory.d.ts @@ -0,0 +1,228 @@ +import { type ContractRunner } from "ethers"; +import type { IERC721Upgradeable, IERC721UpgradeableInterface } from "../../../../../@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable"; +export declare class IERC721Upgradeable__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "approved"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Approval"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "ApprovalForAll"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Transfer"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "approve"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "balanceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "balance"; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getApproved"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly name: "isApprovedForAll"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "ownerOf"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly internalType: "bool"; + readonly name: "_approved"; + readonly type: "bool"; + }]; + readonly name: "setApprovalForAll"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "transferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): IERC721UpgradeableInterface; + static connect(address: string, runner?: ContractRunner | null): IERC721Upgradeable; +} +//# sourceMappingURL=IERC721Upgradeable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable__factory.d.ts.map new file mode 100644 index 00000000..677fe1eb --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC721Upgradeable__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,kBAAkB,EAClB,2BAA2B,EAC5B,MAAM,oFAAoF,CAAC;AAkS5F,qBAAa,2BAA2B;IACtC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,2BAA2B;IAGrD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,kBAAkB;CAGtB"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable__factory.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable__factory.js new file mode 100644 index 00000000..c1750c42 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable__factory.js @@ -0,0 +1,301 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IERC721Upgradeable__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "approved", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Approval", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "ApprovalForAll", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Transfer", + type: "event", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "approve", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "balance", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getApproved", + outputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + name: "isApprovedForAll", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "ownerOf", + outputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "bool", + name: "_approved", + type: "bool", + }, + ], + name: "setApprovalForAll", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "transferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +class IERC721Upgradeable__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IERC721Upgradeable__factory = IERC721Upgradeable__factory; +IERC721Upgradeable__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable__factory.d.ts new file mode 100644 index 00000000..5534e936 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable__factory.d.ts @@ -0,0 +1,262 @@ +import { type ContractRunner } from "ethers"; +import type { IERC721MetadataUpgradeable, IERC721MetadataUpgradeableInterface } from "../../../../../../@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable"; +export declare class IERC721MetadataUpgradeable__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "approved"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Approval"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "ApprovalForAll"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Transfer"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "approve"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "balanceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "balance"; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getApproved"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly name: "isApprovedForAll"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "name"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "ownerOf"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly internalType: "bool"; + readonly name: "_approved"; + readonly type: "bool"; + }]; + readonly name: "setApprovalForAll"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "symbol"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "tokenURI"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "transferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): IERC721MetadataUpgradeableInterface; + static connect(address: string, runner?: ContractRunner | null): IERC721MetadataUpgradeable; +} +//# sourceMappingURL=IERC721MetadataUpgradeable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable__factory.d.ts.map new file mode 100644 index 00000000..99a656d5 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC721MetadataUpgradeable__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,0BAA0B,EAC1B,mCAAmC,EACpC,MAAM,0GAA0G,CAAC;AA+UlH,qBAAa,mCAAmC;IAC9C,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,mCAAmC;IAG7D,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,0BAA0B;CAO9B"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable__factory.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable__factory.js new file mode 100644 index 00000000..c6cea624 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable__factory.js @@ -0,0 +1,346 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IERC721MetadataUpgradeable__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "approved", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Approval", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "ApprovalForAll", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Transfer", + type: "event", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "approve", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "balance", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getApproved", + outputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + name: "isApprovedForAll", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "name", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "ownerOf", + outputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "bool", + name: "_approved", + type: "bool", + }, + ], + name: "setApprovalForAll", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "symbol", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "tokenURI", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "transferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +class IERC721MetadataUpgradeable__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IERC721MetadataUpgradeable__factory = IERC721MetadataUpgradeable__factory; +IERC721MetadataUpgradeable__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/index.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/index.d.ts new file mode 100644 index 00000000..abf9c94f --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/index.d.ts @@ -0,0 +1,2 @@ +export { IERC721MetadataUpgradeable__factory } from "./IERC721MetadataUpgradeable__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/index.d.ts.map new file mode 100644 index 00000000..98a5f8d1 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mCAAmC,EAAE,MAAM,uCAAuC,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/index.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/index.js new file mode 100644 index 00000000..81bc33d3 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/index.js @@ -0,0 +1,5 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IERC721MetadataUpgradeable__factory = void 0; +var IERC721MetadataUpgradeable__factory_1 = require("./IERC721MetadataUpgradeable__factory"); +Object.defineProperty(exports, "IERC721MetadataUpgradeable__factory", { enumerable: true, get: function () { return IERC721MetadataUpgradeable__factory_1.IERC721MetadataUpgradeable__factory; } }); diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/index.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/index.d.ts new file mode 100644 index 00000000..3563f7a7 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/index.d.ts @@ -0,0 +1,5 @@ +export * as extensions from "./extensions"; +export { ERC721Upgradeable__factory } from "./ERC721Upgradeable__factory"; +export { IERC721ReceiverUpgradeable__factory } from "./IERC721ReceiverUpgradeable__factory"; +export { IERC721Upgradeable__factory } from "./IERC721Upgradeable__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/index.d.ts.map new file mode 100644 index 00000000..d8267f6c --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,mCAAmC,EAAE,MAAM,uCAAuC,CAAC;AAC5F,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/index.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/index.js new file mode 100644 index 00000000..e81e66c4 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/index.js @@ -0,0 +1,33 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IERC721Upgradeable__factory = exports.IERC721ReceiverUpgradeable__factory = exports.ERC721Upgradeable__factory = exports.extensions = void 0; +exports.extensions = __importStar(require("./extensions")); +var ERC721Upgradeable__factory_1 = require("./ERC721Upgradeable__factory"); +Object.defineProperty(exports, "ERC721Upgradeable__factory", { enumerable: true, get: function () { return ERC721Upgradeable__factory_1.ERC721Upgradeable__factory; } }); +var IERC721ReceiverUpgradeable__factory_1 = require("./IERC721ReceiverUpgradeable__factory"); +Object.defineProperty(exports, "IERC721ReceiverUpgradeable__factory", { enumerable: true, get: function () { return IERC721ReceiverUpgradeable__factory_1.IERC721ReceiverUpgradeable__factory; } }); +var IERC721Upgradeable__factory_1 = require("./IERC721Upgradeable__factory"); +Object.defineProperty(exports, "IERC721Upgradeable__factory", { enumerable: true, get: function () { return IERC721Upgradeable__factory_1.IERC721Upgradeable__factory; } }); diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/index.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/index.d.ts new file mode 100644 index 00000000..1fb67373 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/index.d.ts @@ -0,0 +1,4 @@ +export * as erc1155 from "./ERC1155"; +export * as erc20 from "./ERC20"; +export * as erc721 from "./ERC721"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/index.d.ts.map new file mode 100644 index 00000000..a9ae52c4 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/@openzeppelin/contracts-upgradeable/token/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AACrC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/index.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/index.js new file mode 100644 index 00000000..b40ffbef --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/index.js @@ -0,0 +1,29 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.erc721 = exports.erc20 = exports.erc1155 = void 0; +exports.erc1155 = __importStar(require("./ERC1155")); +exports.erc20 = __importStar(require("./ERC20")); +exports.erc721 = __importStar(require("./ERC721")); diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable__factory.d.ts new file mode 100644 index 00000000..ab935ed1 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable__factory.d.ts @@ -0,0 +1,18 @@ +import { type ContractRunner } from "ethers"; +import type { ContextUpgradeable, ContextUpgradeableInterface } from "../../../../@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable"; +export declare class ContextUpgradeable__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "uint8"; + readonly name: "version"; + readonly type: "uint8"; + }]; + readonly name: "Initialized"; + readonly type: "event"; + }]; + static createInterface(): ContextUpgradeableInterface; + static connect(address: string, runner?: ContractRunner | null): ContextUpgradeable; +} +//# sourceMappingURL=ContextUpgradeable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable__factory.d.ts.map new file mode 100644 index 00000000..f550760c --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ContextUpgradeable__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,kBAAkB,EAClB,2BAA2B,EAC5B,MAAM,0EAA0E,CAAC;AAkBlF,qBAAa,2BAA2B;IACtC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,2BAA2B;IAGrD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,kBAAkB;CAGtB"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable__factory.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable__factory.js new file mode 100644 index 00000000..55c740bd --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable__factory.js @@ -0,0 +1,29 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ContextUpgradeable__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint8", + name: "version", + type: "uint8", + }, + ], + name: "Initialized", + type: "event", + }, +]; +class ContextUpgradeable__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.ContextUpgradeable__factory = ContextUpgradeable__factory; +ContextUpgradeable__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable__factory.d.ts new file mode 100644 index 00000000..3cd4b2fd --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable__factory.d.ts @@ -0,0 +1,32 @@ +import { type ContractRunner } from "ethers"; +import type { MulticallUpgradeable, MulticallUpgradeableInterface } from "../../../../@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable"; +export declare class MulticallUpgradeable__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "uint8"; + readonly name: "version"; + readonly type: "uint8"; + }]; + readonly name: "Initialized"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes[]"; + readonly name: "data"; + readonly type: "bytes[]"; + }]; + readonly name: "multicall"; + readonly outputs: readonly [{ + readonly internalType: "bytes[]"; + readonly name: "results"; + readonly type: "bytes[]"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): MulticallUpgradeableInterface; + static connect(address: string, runner?: ContractRunner | null): MulticallUpgradeable; +} +//# sourceMappingURL=MulticallUpgradeable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable__factory.d.ts.map new file mode 100644 index 00000000..1a7a3121 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"MulticallUpgradeable__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,oBAAoB,EACpB,6BAA6B,EAC9B,MAAM,4EAA4E,CAAC;AAqCpF,qBAAa,6BAA6B;IACxC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,6BAA6B;IAGvD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,oBAAoB;CAOxB"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable__factory.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable__factory.js new file mode 100644 index 00000000..fb3d8856 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable__factory.js @@ -0,0 +1,48 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.MulticallUpgradeable__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint8", + name: "version", + type: "uint8", + }, + ], + name: "Initialized", + type: "event", + }, + { + inputs: [ + { + internalType: "bytes[]", + name: "data", + type: "bytes[]", + }, + ], + name: "multicall", + outputs: [ + { + internalType: "bytes[]", + name: "results", + type: "bytes[]", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, +]; +class MulticallUpgradeable__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.MulticallUpgradeable__factory = MulticallUpgradeable__factory; +MulticallUpgradeable__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/index.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/index.d.ts new file mode 100644 index 00000000..50aaa3a6 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/index.d.ts @@ -0,0 +1,4 @@ +export * as introspection from "./introspection"; +export { ContextUpgradeable__factory } from "./ContextUpgradeable__factory"; +export { MulticallUpgradeable__factory } from "./MulticallUpgradeable__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/index.d.ts.map new file mode 100644 index 00000000..3ff9d231 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/@openzeppelin/contracts-upgradeable/utils/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,aAAa,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/index.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/index.js new file mode 100644 index 00000000..2ee738ad --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/index.js @@ -0,0 +1,31 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.MulticallUpgradeable__factory = exports.ContextUpgradeable__factory = exports.introspection = void 0; +exports.introspection = __importStar(require("./introspection")); +var ContextUpgradeable__factory_1 = require("./ContextUpgradeable__factory"); +Object.defineProperty(exports, "ContextUpgradeable__factory", { enumerable: true, get: function () { return ContextUpgradeable__factory_1.ContextUpgradeable__factory; } }); +var MulticallUpgradeable__factory_1 = require("./MulticallUpgradeable__factory"); +Object.defineProperty(exports, "MulticallUpgradeable__factory", { enumerable: true, get: function () { return MulticallUpgradeable__factory_1.MulticallUpgradeable__factory; } }); diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable__factory.d.ts new file mode 100644 index 00000000..22bc5e3e --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable__factory.d.ts @@ -0,0 +1,32 @@ +import { type ContractRunner } from "ethers"; +import type { ERC165Upgradeable, ERC165UpgradeableInterface } from "../../../../../@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable"; +export declare class ERC165Upgradeable__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "uint8"; + readonly name: "version"; + readonly type: "uint8"; + }]; + readonly name: "Initialized"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): ERC165UpgradeableInterface; + static connect(address: string, runner?: ContractRunner | null): ERC165Upgradeable; +} +//# sourceMappingURL=ERC165Upgradeable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable__factory.d.ts.map new file mode 100644 index 00000000..7c7a76dc --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ERC165Upgradeable__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,iBAAiB,EACjB,0BAA0B,EAC3B,MAAM,0FAA0F,CAAC;AAqClG,qBAAa,0BAA0B;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,0BAA0B;IAGpD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,iBAAiB;CAGrB"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable__factory.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable__factory.js new file mode 100644 index 00000000..0708e82a --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable__factory.js @@ -0,0 +1,48 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ERC165Upgradeable__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint8", + name: "version", + type: "uint8", + }, + ], + name: "Initialized", + type: "event", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class ERC165Upgradeable__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.ERC165Upgradeable__factory = ERC165Upgradeable__factory; +ERC165Upgradeable__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable__factory.d.ts new file mode 100644 index 00000000..c9413cdf --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable__factory.d.ts @@ -0,0 +1,22 @@ +import { type ContractRunner } from "ethers"; +import type { IERC165Upgradeable, IERC165UpgradeableInterface } from "../../../../../@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable"; +export declare class IERC165Upgradeable__factory { + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): IERC165UpgradeableInterface; + static connect(address: string, runner?: ContractRunner | null): IERC165Upgradeable; +} +//# sourceMappingURL=IERC165Upgradeable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable__factory.d.ts.map new file mode 100644 index 00000000..2b82b509 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC165Upgradeable__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,kBAAkB,EAClB,2BAA2B,EAC5B,MAAM,2FAA2F,CAAC;AAwBnG,qBAAa,2BAA2B;IACtC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,2BAA2B;IAGrD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,kBAAkB;CAGtB"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable__factory.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable__factory.js new file mode 100644 index 00000000..29c2a3e6 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable__factory.js @@ -0,0 +1,35 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IERC165Upgradeable__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class IERC165Upgradeable__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IERC165Upgradeable__factory = IERC165Upgradeable__factory; +IERC165Upgradeable__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/index.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/index.d.ts new file mode 100644 index 00000000..93094df6 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/index.d.ts @@ -0,0 +1,3 @@ +export { ERC165Upgradeable__factory } from "./ERC165Upgradeable__factory"; +export { IERC165Upgradeable__factory } from "./IERC165Upgradeable__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/index.d.ts.map new file mode 100644 index 00000000..004b064c --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/index.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/index.js new file mode 100644 index 00000000..cff0570b --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/index.js @@ -0,0 +1,7 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IERC165Upgradeable__factory = exports.ERC165Upgradeable__factory = void 0; +var ERC165Upgradeable__factory_1 = require("./ERC165Upgradeable__factory"); +Object.defineProperty(exports, "ERC165Upgradeable__factory", { enumerable: true, get: function () { return ERC165Upgradeable__factory_1.ERC165Upgradeable__factory; } }); +var IERC165Upgradeable__factory_1 = require("./IERC165Upgradeable__factory"); +Object.defineProperty(exports, "IERC165Upgradeable__factory", { enumerable: true, get: function () { return IERC165Upgradeable__factory_1.IERC165Upgradeable__factory; } }); diff --git a/dist/types/factories/@openzeppelin/contracts/access/Ownable__factory.d.ts b/dist/types/factories/@openzeppelin/contracts/access/Ownable__factory.d.ts new file mode 100644 index 00000000..da3d23f0 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/access/Ownable__factory.d.ts @@ -0,0 +1,49 @@ +import { type ContractRunner } from "ethers"; +import type { Ownable, OwnableInterface } from "../../../../@openzeppelin/contracts/access/Ownable"; +export declare class Ownable__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "previousOwner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "newOwner"; + readonly type: "address"; + }]; + readonly name: "OwnershipTransferred"; + readonly type: "event"; + }, { + readonly inputs: readonly []; + readonly name: "owner"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "renounceOwnership"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "newOwner"; + readonly type: "address"; + }]; + readonly name: "transferOwnership"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): OwnableInterface; + static connect(address: string, runner?: ContractRunner | null): Ownable; +} +//# sourceMappingURL=Ownable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/access/Ownable__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts/access/Ownable__factory.d.ts.map new file mode 100644 index 00000000..e78488d6 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/access/Ownable__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"Ownable__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/@openzeppelin/contracts/access/Ownable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,OAAO,EACP,gBAAgB,EACjB,MAAM,oDAAoD,CAAC;AAyD5D,qBAAa,gBAAgB;IAC3B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,gBAAgB;IAG1C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,OAAO;CAGzE"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/access/Ownable__factory.js b/dist/types/factories/@openzeppelin/contracts/access/Ownable__factory.js new file mode 100644 index 00000000..dbdb0bec --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/access/Ownable__factory.js @@ -0,0 +1,68 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.Ownable__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "previousOwner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnershipTransferred", + type: "event", + }, + { + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "renounceOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "transferOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +class Ownable__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.Ownable__factory = Ownable__factory; +Ownable__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts/access/index.d.ts b/dist/types/factories/@openzeppelin/contracts/access/index.d.ts new file mode 100644 index 00000000..05bb19ed --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/access/index.d.ts @@ -0,0 +1,2 @@ +export { Ownable__factory } from "./Ownable__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/access/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts/access/index.d.ts.map new file mode 100644 index 00000000..5b4a8d07 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/access/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/@openzeppelin/contracts/access/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/access/index.js b/dist/types/factories/@openzeppelin/contracts/access/index.js new file mode 100644 index 00000000..7b3dc6cc --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/access/index.js @@ -0,0 +1,5 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.Ownable__factory = void 0; +var Ownable__factory_1 = require("./Ownable__factory"); +Object.defineProperty(exports, "Ownable__factory", { enumerable: true, get: function () { return Ownable__factory_1.Ownable__factory; } }); diff --git a/dist/types/factories/@openzeppelin/contracts/index.d.ts b/dist/types/factories/@openzeppelin/contracts/index.d.ts new file mode 100644 index 00000000..6d9a5a70 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/index.d.ts @@ -0,0 +1,4 @@ +export * as access from "./access"; +export * as token from "./token"; +export * as utils from "./utils"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts/index.d.ts.map new file mode 100644 index 00000000..533968be --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/factories/@openzeppelin/contracts/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/index.js b/dist/types/factories/@openzeppelin/contracts/index.js new file mode 100644 index 00000000..687e3bbe --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/index.js @@ -0,0 +1,29 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.utils = exports.token = exports.access = void 0; +exports.access = __importStar(require("./access")); +exports.token = __importStar(require("./token")); +exports.utils = __importStar(require("./utils")); diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver__factory.d.ts b/dist/types/factories/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver__factory.d.ts new file mode 100644 index 00000000..b74a59da --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver__factory.d.ts @@ -0,0 +1,82 @@ +import { type ContractRunner } from "ethers"; +import type { IERC1155Receiver, IERC1155ReceiverInterface } from "../../../../../@openzeppelin/contracts/token/ERC1155/IERC1155Receiver"; +export declare class IERC1155Receiver__factory { + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "uint256[]"; + readonly name: "ids"; + readonly type: "uint256[]"; + }, { + readonly internalType: "uint256[]"; + readonly name: "values"; + readonly type: "uint256[]"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "onERC1155BatchReceived"; + readonly outputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: ""; + readonly type: "bytes4"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "value"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "onERC1155Received"; + readonly outputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: ""; + readonly type: "bytes4"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): IERC1155ReceiverInterface; + static connect(address: string, runner?: ContractRunner | null): IERC1155Receiver; +} +//# sourceMappingURL=IERC1155Receiver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver__factory.d.ts.map new file mode 100644 index 00000000..31b3afa1 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC1155Receiver__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,gBAAgB,EAChB,yBAAyB,EAC1B,MAAM,uEAAuE,CAAC;AAsG/E,qBAAa,yBAAyB;IACpC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,yBAAyB;IAGnD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,gBAAgB;CAGpB"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver__factory.js b/dist/types/factories/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver__factory.js new file mode 100644 index 00000000..6f71cc65 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver__factory.js @@ -0,0 +1,113 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IERC1155Receiver__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "uint256[]", + name: "ids", + type: "uint256[]", + }, + { + internalType: "uint256[]", + name: "values", + type: "uint256[]", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "onERC1155BatchReceived", + outputs: [ + { + internalType: "bytes4", + name: "", + type: "bytes4", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + internalType: "uint256", + name: "value", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "onERC1155Received", + outputs: [ + { + internalType: "bytes4", + name: "", + type: "bytes4", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class IERC1155Receiver__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IERC1155Receiver__factory = IERC1155Receiver__factory; +IERC1155Receiver__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC1155/IERC1155__factory.d.ts b/dist/types/factories/@openzeppelin/contracts/token/ERC1155/IERC1155__factory.d.ts new file mode 100644 index 00000000..08d281d4 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/token/ERC1155/IERC1155__factory.d.ts @@ -0,0 +1,237 @@ +import { type ContractRunner } from "ethers"; +import type { IERC1155, IERC1155Interface } from "../../../../../@openzeppelin/contracts/token/ERC1155/IERC1155"; +export declare class IERC1155__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "ApprovalForAll"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "uint256[]"; + readonly name: "ids"; + readonly type: "uint256[]"; + }, { + readonly indexed: false; + readonly internalType: "uint256[]"; + readonly name: "values"; + readonly type: "uint256[]"; + }]; + readonly name: "TransferBatch"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "value"; + readonly type: "uint256"; + }]; + readonly name: "TransferSingle"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }]; + readonly name: "URI"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }]; + readonly name: "balanceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address[]"; + readonly name: "accounts"; + readonly type: "address[]"; + }, { + readonly internalType: "uint256[]"; + readonly name: "ids"; + readonly type: "uint256[]"; + }]; + readonly name: "balanceOfBatch"; + readonly outputs: readonly [{ + readonly internalType: "uint256[]"; + readonly name: ""; + readonly type: "uint256[]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly name: "isApprovedForAll"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256[]"; + readonly name: "ids"; + readonly type: "uint256[]"; + }, { + readonly internalType: "uint256[]"; + readonly name: "amounts"; + readonly type: "uint256[]"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "safeBatchTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "amount"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "setApprovalForAll"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): IERC1155Interface; + static connect(address: string, runner?: ContractRunner | null): IERC1155; +} +//# sourceMappingURL=IERC1155__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC1155/IERC1155__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts/token/ERC1155/IERC1155__factory.d.ts.map new file mode 100644 index 00000000..ba86b42a --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/token/ERC1155/IERC1155__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC1155__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts/token/ERC1155/IERC1155__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,QAAQ,EACR,iBAAiB,EAClB,MAAM,+DAA+D,CAAC;AA0SvE,qBAAa,iBAAiB;IAC5B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,iBAAiB;IAG3C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,QAAQ;CAG1E"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC1155/IERC1155__factory.js b/dist/types/factories/@openzeppelin/contracts/token/ERC1155/IERC1155__factory.js new file mode 100644 index 00000000..4155f40e --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/token/ERC1155/IERC1155__factory.js @@ -0,0 +1,309 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IERC1155__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "ApprovalForAll", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: false, + internalType: "uint256[]", + name: "ids", + type: "uint256[]", + }, + { + indexed: false, + internalType: "uint256[]", + name: "values", + type: "uint256[]", + }, + ], + name: "TransferBatch", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "TransferSingle", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "string", + name: "value", + type: "string", + }, + { + indexed: true, + internalType: "uint256", + name: "id", + type: "uint256", + }, + ], + name: "URI", + type: "event", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address[]", + name: "accounts", + type: "address[]", + }, + { + internalType: "uint256[]", + name: "ids", + type: "uint256[]", + }, + ], + name: "balanceOfBatch", + outputs: [ + { + internalType: "uint256[]", + name: "", + type: "uint256[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + name: "isApprovedForAll", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256[]", + name: "ids", + type: "uint256[]", + }, + { + internalType: "uint256[]", + name: "amounts", + type: "uint256[]", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "safeBatchTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "setApprovalForAll", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class IERC1155__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IERC1155__factory = IERC1155__factory; +IERC1155__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI__factory.d.ts b/dist/types/factories/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI__factory.d.ts new file mode 100644 index 00000000..ee604215 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI__factory.d.ts @@ -0,0 +1,251 @@ +import { type ContractRunner } from "ethers"; +import type { IERC1155MetadataURI, IERC1155MetadataURIInterface } from "../../../../../../@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI"; +export declare class IERC1155MetadataURI__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "ApprovalForAll"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "uint256[]"; + readonly name: "ids"; + readonly type: "uint256[]"; + }, { + readonly indexed: false; + readonly internalType: "uint256[]"; + readonly name: "values"; + readonly type: "uint256[]"; + }]; + readonly name: "TransferBatch"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "value"; + readonly type: "uint256"; + }]; + readonly name: "TransferSingle"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }]; + readonly name: "URI"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }]; + readonly name: "balanceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address[]"; + readonly name: "accounts"; + readonly type: "address[]"; + }, { + readonly internalType: "uint256[]"; + readonly name: "ids"; + readonly type: "uint256[]"; + }]; + readonly name: "balanceOfBatch"; + readonly outputs: readonly [{ + readonly internalType: "uint256[]"; + readonly name: ""; + readonly type: "uint256[]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly name: "isApprovedForAll"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256[]"; + readonly name: "ids"; + readonly type: "uint256[]"; + }, { + readonly internalType: "uint256[]"; + readonly name: "amounts"; + readonly type: "uint256[]"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "safeBatchTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "amount"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "setApprovalForAll"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }]; + readonly name: "uri"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): IERC1155MetadataURIInterface; + static connect(address: string, runner?: ContractRunner | null): IERC1155MetadataURI; +} +//# sourceMappingURL=IERC1155MetadataURI__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI__factory.d.ts.map new file mode 100644 index 00000000..40b68ae7 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC1155MetadataURI__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,mBAAmB,EACnB,4BAA4B,EAC7B,MAAM,wFAAwF,CAAC;AA6ThG,qBAAa,4BAA4B;IACvC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,4BAA4B;IAGtD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,mBAAmB;CAOvB"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI__factory.js b/dist/types/factories/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI__factory.js new file mode 100644 index 00000000..4f6af1ea --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI__factory.js @@ -0,0 +1,328 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IERC1155MetadataURI__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "ApprovalForAll", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: false, + internalType: "uint256[]", + name: "ids", + type: "uint256[]", + }, + { + indexed: false, + internalType: "uint256[]", + name: "values", + type: "uint256[]", + }, + ], + name: "TransferBatch", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "TransferSingle", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "string", + name: "value", + type: "string", + }, + { + indexed: true, + internalType: "uint256", + name: "id", + type: "uint256", + }, + ], + name: "URI", + type: "event", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address[]", + name: "accounts", + type: "address[]", + }, + { + internalType: "uint256[]", + name: "ids", + type: "uint256[]", + }, + ], + name: "balanceOfBatch", + outputs: [ + { + internalType: "uint256[]", + name: "", + type: "uint256[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + name: "isApprovedForAll", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256[]", + name: "ids", + type: "uint256[]", + }, + { + internalType: "uint256[]", + name: "amounts", + type: "uint256[]", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "safeBatchTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "setApprovalForAll", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + ], + name: "uri", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class IERC1155MetadataURI__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IERC1155MetadataURI__factory = IERC1155MetadataURI__factory; +IERC1155MetadataURI__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC1155/extensions/index.d.ts b/dist/types/factories/@openzeppelin/contracts/token/ERC1155/extensions/index.d.ts new file mode 100644 index 00000000..c9b02dd9 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/token/ERC1155/extensions/index.d.ts @@ -0,0 +1,2 @@ +export { IERC1155MetadataURI__factory } from "./IERC1155MetadataURI__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC1155/extensions/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts/token/ERC1155/extensions/index.d.ts.map new file mode 100644 index 00000000..44de74e1 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/token/ERC1155/extensions/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@openzeppelin/contracts/token/ERC1155/extensions/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC1155/extensions/index.js b/dist/types/factories/@openzeppelin/contracts/token/ERC1155/extensions/index.js new file mode 100644 index 00000000..75433b91 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/token/ERC1155/extensions/index.js @@ -0,0 +1,5 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IERC1155MetadataURI__factory = void 0; +var IERC1155MetadataURI__factory_1 = require("./IERC1155MetadataURI__factory"); +Object.defineProperty(exports, "IERC1155MetadataURI__factory", { enumerable: true, get: function () { return IERC1155MetadataURI__factory_1.IERC1155MetadataURI__factory; } }); diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC1155/index.d.ts b/dist/types/factories/@openzeppelin/contracts/token/ERC1155/index.d.ts new file mode 100644 index 00000000..5da35d7c --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/token/ERC1155/index.d.ts @@ -0,0 +1,4 @@ +export * as extensions from "./extensions"; +export { IERC1155__factory } from "./IERC1155__factory"; +export { IERC1155Receiver__factory } from "./IERC1155Receiver__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC1155/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts/token/ERC1155/index.d.ts.map new file mode 100644 index 00000000..7dacee9d --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/token/ERC1155/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts/token/ERC1155/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC1155/index.js b/dist/types/factories/@openzeppelin/contracts/token/ERC1155/index.js new file mode 100644 index 00000000..045e8a2e --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/token/ERC1155/index.js @@ -0,0 +1,31 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IERC1155Receiver__factory = exports.IERC1155__factory = exports.extensions = void 0; +exports.extensions = __importStar(require("./extensions")); +var IERC1155__factory_1 = require("./IERC1155__factory"); +Object.defineProperty(exports, "IERC1155__factory", { enumerable: true, get: function () { return IERC1155__factory_1.IERC1155__factory; } }); +var IERC1155Receiver__factory_1 = require("./IERC1155Receiver__factory"); +Object.defineProperty(exports, "IERC1155Receiver__factory", { enumerable: true, get: function () { return IERC1155Receiver__factory_1.IERC1155Receiver__factory; } }); diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC20/ERC20__factory.d.ts b/dist/types/factories/@openzeppelin/contracts/token/ERC20/ERC20__factory.d.ts new file mode 100644 index 00000000..beecb257 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/token/ERC20/ERC20__factory.d.ts @@ -0,0 +1,241 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../../../common"; +import type { ERC20, ERC20Interface } from "../../../../../@openzeppelin/contracts/token/ERC20/ERC20"; +declare type ERC20ConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class ERC20__factory extends ContractFactory { + constructor(...args: ERC20ConstructorParams); + getDeployTransaction(name_: string, symbol_: string, overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(name_: string, symbol_: string, overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): ERC20__factory; + static readonly bytecode = "0x60806040523480156200001157600080fd5b5060405162000b1d38038062000b1d83398101604081905262000034916200011f565b600362000042838262000218565b50600462000051828262000218565b505050620002e4565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008257600080fd5b81516001600160401b03808211156200009f576200009f6200005a565b604051601f8301601f19908116603f01168101908282118183101715620000ca57620000ca6200005a565b81604052838152602092508683858801011115620000e757600080fd5b600091505b838210156200010b5785820183015181830184015290820190620000ec565b600093810190920192909252949350505050565b600080604083850312156200013357600080fd5b82516001600160401b03808211156200014b57600080fd5b620001598683870162000070565b935060208501519150808211156200017057600080fd5b506200017f8582860162000070565b9150509250929050565b600181811c908216806200019e57607f821691505b602082108103620001bf57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200021357600081815260208120601f850160051c81016020861015620001ee5750805b601f850160051c820191505b818110156200020f57828155600101620001fa565b5050505b505050565b81516001600160401b038111156200023457620002346200005a565b6200024c8162000245845462000189565b84620001c5565b602080601f8311600181146200028457600084156200026b5750858301515b600019600386901b1c1916600185901b1785556200020f565b600085815260208120601f198616915b82811015620002b55788860151825594840194600190910190840162000294565b5085821015620002d45787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b61082980620002f46000396000f3fe608060405234801561001057600080fd5b50600436106100a95760003560e01c80633950935111610071578063395093511461012357806370a082311461013657806395d89b411461015f578063a457c2d714610167578063a9059cbb1461017a578063dd62ed3e1461018d57600080fd5b806306fdde03146100ae578063095ea7b3146100cc57806318160ddd146100ef57806323b872dd14610101578063313ce56714610114575b600080fd5b6100b66101a0565b6040516100c3919061069c565b60405180910390f35b6100df6100da366004610706565b610232565b60405190151581526020016100c3565b6002545b6040519081526020016100c3565b6100df61010f366004610730565b61024c565b604051601281526020016100c3565b6100df610131366004610706565b610270565b6100f361014436600461076c565b6001600160a01b031660009081526020819052604090205490565b6100b6610292565b6100df610175366004610706565b6102a1565b6100df610188366004610706565b610321565b6100f361019b36600461078e565b61032f565b6060600380546101af906107c1565b80601f01602080910402602001604051908101604052809291908181526020018280546101db906107c1565b80156102285780601f106101fd57610100808354040283529160200191610228565b820191906000526020600020905b81548152906001019060200180831161020b57829003601f168201915b5050505050905090565b60003361024081858561035a565b60019150505b92915050565b60003361025a85828561047e565b6102658585856104f8565b506001949350505050565b600033610240818585610283838361032f565b61028d91906107fb565b61035a565b6060600480546101af906107c1565b600033816102af828661032f565b9050838110156103145760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b610265828686840361035a565b6000336102408185856104f8565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6001600160a01b0383166103bc5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161030b565b6001600160a01b03821661041d5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161030b565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b600061048a848461032f565b905060001981146104f257818110156104e55760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161030b565b6104f2848484840361035a565b50505050565b6001600160a01b03831661055c5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161030b565b6001600160a01b0382166105be5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161030b565b6001600160a01b038316600090815260208190526040902054818110156106365760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161030b565b6001600160a01b03848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a36104f2565b600060208083528351808285015260005b818110156106c9578581018301518582016040015282016106ad565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b038116811461070157600080fd5b919050565b6000806040838503121561071957600080fd5b610722836106ea565b946020939093013593505050565b60008060006060848603121561074557600080fd5b61074e846106ea565b925061075c602085016106ea565b9150604084013590509250925092565b60006020828403121561077e57600080fd5b610787826106ea565b9392505050565b600080604083850312156107a157600080fd5b6107aa836106ea565b91506107b8602084016106ea565b90509250929050565b600181811c908216806107d557607f821691505b6020821081036107f557634e487b7160e01b600052602260045260246000fd5b50919050565b8082018082111561024657634e487b7160e01b600052601160045260246000fdfea164736f6c6343000811000a"; + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "name_"; + readonly type: "string"; + }, { + readonly internalType: "string"; + readonly name: "symbol_"; + readonly type: "string"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "constructor"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "spender"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "value"; + readonly type: "uint256"; + }]; + readonly name: "Approval"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "value"; + readonly type: "uint256"; + }]; + readonly name: "Transfer"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "spender"; + readonly type: "address"; + }]; + readonly name: "allowance"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "spender"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "amount"; + readonly type: "uint256"; + }]; + readonly name: "approve"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "balanceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "decimals"; + readonly outputs: readonly [{ + readonly internalType: "uint8"; + readonly name: ""; + readonly type: "uint8"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "spender"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "subtractedValue"; + readonly type: "uint256"; + }]; + readonly name: "decreaseAllowance"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "spender"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "addedValue"; + readonly type: "uint256"; + }]; + readonly name: "increaseAllowance"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "name"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "symbol"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "totalSupply"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "amount"; + readonly type: "uint256"; + }]; + readonly name: "transfer"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "amount"; + readonly type: "uint256"; + }]; + readonly name: "transferFrom"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): ERC20Interface; + static connect(address: string, runner?: ContractRunner | null): ERC20; +} +export {}; +//# sourceMappingURL=ERC20__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC20/ERC20__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts/token/ERC20/ERC20__factory.d.ts.map new file mode 100644 index 00000000..2c996304 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/token/ERC20/ERC20__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ERC20__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts/token/ERC20/ERC20__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,KAAK,EACL,cAAc,EACf,MAAM,0DAA0D,CAAC;AAsSlE,aAAK,sBAAsB,GACvB,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,cAAe,SAAQ,eAAe;gBACrC,GAAG,IAAI,EAAE,sBAAsB;IAQlC,oBAAoB,CAC3B,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,EACf,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CACb,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,EACf,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAItB,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,cAAc;IAI/D,MAAM,CAAC,QAAQ,CAAC,QAAQ,kkLAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,cAAc;IAGxC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,KAAK;CAGvE"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC20/ERC20__factory.js b/dist/types/factories/@openzeppelin/contracts/token/ERC20/ERC20__factory.js new file mode 100644 index 00000000..7fb0ec7a --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/token/ERC20/ERC20__factory.js @@ -0,0 +1,322 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ERC20__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "string", + name: "name_", + type: "string", + }, + { + internalType: "string", + name: "symbol_", + type: "string", + }, + ], + stateMutability: "nonpayable", + type: "constructor", + }, + { + 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: [ + { + 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: [ + { + 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: [], + 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", + }, +]; +const _bytecode = "0x60806040523480156200001157600080fd5b5060405162000b1d38038062000b1d83398101604081905262000034916200011f565b600362000042838262000218565b50600462000051828262000218565b505050620002e4565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008257600080fd5b81516001600160401b03808211156200009f576200009f6200005a565b604051601f8301601f19908116603f01168101908282118183101715620000ca57620000ca6200005a565b81604052838152602092508683858801011115620000e757600080fd5b600091505b838210156200010b5785820183015181830184015290820190620000ec565b600093810190920192909252949350505050565b600080604083850312156200013357600080fd5b82516001600160401b03808211156200014b57600080fd5b620001598683870162000070565b935060208501519150808211156200017057600080fd5b506200017f8582860162000070565b9150509250929050565b600181811c908216806200019e57607f821691505b602082108103620001bf57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200021357600081815260208120601f850160051c81016020861015620001ee5750805b601f850160051c820191505b818110156200020f57828155600101620001fa565b5050505b505050565b81516001600160401b038111156200023457620002346200005a565b6200024c8162000245845462000189565b84620001c5565b602080601f8311600181146200028457600084156200026b5750858301515b600019600386901b1c1916600185901b1785556200020f565b600085815260208120601f198616915b82811015620002b55788860151825594840194600190910190840162000294565b5085821015620002d45787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b61082980620002f46000396000f3fe608060405234801561001057600080fd5b50600436106100a95760003560e01c80633950935111610071578063395093511461012357806370a082311461013657806395d89b411461015f578063a457c2d714610167578063a9059cbb1461017a578063dd62ed3e1461018d57600080fd5b806306fdde03146100ae578063095ea7b3146100cc57806318160ddd146100ef57806323b872dd14610101578063313ce56714610114575b600080fd5b6100b66101a0565b6040516100c3919061069c565b60405180910390f35b6100df6100da366004610706565b610232565b60405190151581526020016100c3565b6002545b6040519081526020016100c3565b6100df61010f366004610730565b61024c565b604051601281526020016100c3565b6100df610131366004610706565b610270565b6100f361014436600461076c565b6001600160a01b031660009081526020819052604090205490565b6100b6610292565b6100df610175366004610706565b6102a1565b6100df610188366004610706565b610321565b6100f361019b36600461078e565b61032f565b6060600380546101af906107c1565b80601f01602080910402602001604051908101604052809291908181526020018280546101db906107c1565b80156102285780601f106101fd57610100808354040283529160200191610228565b820191906000526020600020905b81548152906001019060200180831161020b57829003601f168201915b5050505050905090565b60003361024081858561035a565b60019150505b92915050565b60003361025a85828561047e565b6102658585856104f8565b506001949350505050565b600033610240818585610283838361032f565b61028d91906107fb565b61035a565b6060600480546101af906107c1565b600033816102af828661032f565b9050838110156103145760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b610265828686840361035a565b6000336102408185856104f8565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6001600160a01b0383166103bc5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161030b565b6001600160a01b03821661041d5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161030b565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b600061048a848461032f565b905060001981146104f257818110156104e55760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161030b565b6104f2848484840361035a565b50505050565b6001600160a01b03831661055c5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161030b565b6001600160a01b0382166105be5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161030b565b6001600160a01b038316600090815260208190526040902054818110156106365760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161030b565b6001600160a01b03848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a36104f2565b600060208083528351808285015260005b818110156106c9578581018301518582016040015282016106ad565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b038116811461070157600080fd5b919050565b6000806040838503121561071957600080fd5b610722836106ea565b946020939093013593505050565b60008060006060848603121561074557600080fd5b61074e846106ea565b925061075c602085016106ea565b9150604084013590509250925092565b60006020828403121561077e57600080fd5b610787826106ea565b9392505050565b600080604083850312156107a157600080fd5b6107aa836106ea565b91506107b8602084016106ea565b90509250929050565b600181811c908216806107d557607f821691505b6020821081036107f557634e487b7160e01b600052602260045260246000fd5b50919050565b8082018082111561024657634e487b7160e01b600052601160045260246000fdfea164736f6c6343000811000a"; +const isSuperArgs = (xs) => xs.length > 1; +class ERC20__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(name_, symbol_, overrides) { + return super.getDeployTransaction(name_, symbol_, overrides || {}); + } + deploy(name_, symbol_, overrides) { + return super.deploy(name_, symbol_, overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.ERC20__factory = ERC20__factory; +ERC20__factory.bytecode = _bytecode; +ERC20__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC20/IERC20__factory.d.ts b/dist/types/factories/@openzeppelin/contracts/token/ERC20/IERC20__factory.d.ts new file mode 100644 index 00000000..26e5380f --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/token/ERC20/IERC20__factory.d.ts @@ -0,0 +1,148 @@ +import { type ContractRunner } from "ethers"; +import type { IERC20, IERC20Interface } from "../../../../../@openzeppelin/contracts/token/ERC20/IERC20"; +export declare class IERC20__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "spender"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "value"; + readonly type: "uint256"; + }]; + readonly name: "Approval"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "value"; + readonly type: "uint256"; + }]; + readonly name: "Transfer"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "spender"; + readonly type: "address"; + }]; + readonly name: "allowance"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "spender"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "amount"; + readonly type: "uint256"; + }]; + readonly name: "approve"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "balanceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "totalSupply"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "amount"; + readonly type: "uint256"; + }]; + readonly name: "transfer"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "amount"; + readonly type: "uint256"; + }]; + readonly name: "transferFrom"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): IERC20Interface; + static connect(address: string, runner?: ContractRunner | null): IERC20; +} +//# sourceMappingURL=IERC20__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC20/IERC20__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts/token/ERC20/IERC20__factory.d.ts.map new file mode 100644 index 00000000..7ec6343d --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/token/ERC20/IERC20__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC20__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts/token/ERC20/IERC20__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,MAAM,EACN,eAAe,EAChB,MAAM,2DAA2D,CAAC;AA4LnE,qBAAa,eAAe;IAC1B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,eAAe;IAGzC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,MAAM;CAGxE"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC20/IERC20__factory.js b/dist/types/factories/@openzeppelin/contracts/token/ERC20/IERC20__factory.js new file mode 100644 index 00000000..b89569c5 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/token/ERC20/IERC20__factory.js @@ -0,0 +1,199 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IERC20__factory = void 0; +const ethers_1 = require("ethers"); +const _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: "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", + }, +]; +class IERC20__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IERC20__factory = IERC20__factory; +IERC20__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata__factory.d.ts b/dist/types/factories/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata__factory.d.ts new file mode 100644 index 00000000..f29474bc --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata__factory.d.ts @@ -0,0 +1,178 @@ +import { type ContractRunner } from "ethers"; +import type { IERC20Metadata, IERC20MetadataInterface } from "../../../../../../@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata"; +export declare class IERC20Metadata__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "spender"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "value"; + readonly type: "uint256"; + }]; + readonly name: "Approval"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "value"; + readonly type: "uint256"; + }]; + readonly name: "Transfer"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "spender"; + readonly type: "address"; + }]; + readonly name: "allowance"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "spender"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "amount"; + readonly type: "uint256"; + }]; + readonly name: "approve"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "balanceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "decimals"; + readonly outputs: readonly [{ + readonly internalType: "uint8"; + readonly name: ""; + readonly type: "uint8"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "name"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "symbol"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "totalSupply"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "amount"; + readonly type: "uint256"; + }]; + readonly name: "transfer"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "amount"; + readonly type: "uint256"; + }]; + readonly name: "transferFrom"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): IERC20MetadataInterface; + static connect(address: string, runner?: ContractRunner | null): IERC20Metadata; +} +//# sourceMappingURL=IERC20Metadata__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata__factory.d.ts.map new file mode 100644 index 00000000..89a243f9 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC20Metadata__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,cAAc,EACd,uBAAuB,EACxB,MAAM,iFAAiF,CAAC;AAmOzF,qBAAa,uBAAuB;IAClC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,uBAAuB;IAGjD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,cAAc;CAGlB"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata__factory.js b/dist/types/factories/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata__factory.js new file mode 100644 index 00000000..8ecad306 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata__factory.js @@ -0,0 +1,238 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IERC20Metadata__factory = void 0; +const ethers_1 = require("ethers"); +const _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", + }, +]; +class IERC20Metadata__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IERC20Metadata__factory = IERC20Metadata__factory; +IERC20Metadata__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC20/extensions/index.d.ts b/dist/types/factories/@openzeppelin/contracts/token/ERC20/extensions/index.d.ts new file mode 100644 index 00000000..5d24f12a --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/token/ERC20/extensions/index.d.ts @@ -0,0 +1,2 @@ +export { IERC20Metadata__factory } from "./IERC20Metadata__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC20/extensions/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts/token/ERC20/extensions/index.d.ts.map new file mode 100644 index 00000000..fe59318b --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/token/ERC20/extensions/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@openzeppelin/contracts/token/ERC20/extensions/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC20/extensions/index.js b/dist/types/factories/@openzeppelin/contracts/token/ERC20/extensions/index.js new file mode 100644 index 00000000..25ab7754 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/token/ERC20/extensions/index.js @@ -0,0 +1,5 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IERC20Metadata__factory = void 0; +var IERC20Metadata__factory_1 = require("./IERC20Metadata__factory"); +Object.defineProperty(exports, "IERC20Metadata__factory", { enumerable: true, get: function () { return IERC20Metadata__factory_1.IERC20Metadata__factory; } }); diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC20/index.d.ts b/dist/types/factories/@openzeppelin/contracts/token/ERC20/index.d.ts new file mode 100644 index 00000000..7164a56e --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/token/ERC20/index.d.ts @@ -0,0 +1,4 @@ +export * as extensions from "./extensions"; +export { ERC20__factory } from "./ERC20__factory"; +export { IERC20__factory } from "./IERC20__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC20/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts/token/ERC20/index.d.ts.map new file mode 100644 index 00000000..230be5af --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/token/ERC20/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts/token/ERC20/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC20/index.js b/dist/types/factories/@openzeppelin/contracts/token/ERC20/index.js new file mode 100644 index 00000000..7c997e10 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/token/ERC20/index.js @@ -0,0 +1,31 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IERC20__factory = exports.ERC20__factory = exports.extensions = void 0; +exports.extensions = __importStar(require("./extensions")); +var ERC20__factory_1 = require("./ERC20__factory"); +Object.defineProperty(exports, "ERC20__factory", { enumerable: true, get: function () { return ERC20__factory_1.ERC20__factory; } }); +var IERC20__factory_1 = require("./IERC20__factory"); +Object.defineProperty(exports, "IERC20__factory", { enumerable: true, get: function () { return IERC20__factory_1.IERC20__factory; } }); diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC721/ERC721__factory.d.ts b/dist/types/factories/@openzeppelin/contracts/token/ERC721/ERC721__factory.d.ts new file mode 100644 index 00000000..df56b7c2 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/token/ERC721/ERC721__factory.d.ts @@ -0,0 +1,289 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../../../common"; +import type { ERC721, ERC721Interface } from "../../../../../@openzeppelin/contracts/token/ERC721/ERC721"; +declare type ERC721ConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class ERC721__factory extends ContractFactory { + constructor(...args: ERC721ConstructorParams); + getDeployTransaction(name_: string, symbol_: string, overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(name_: string, symbol_: string, overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): ERC721__factory; + static readonly bytecode = "0x60806040523480156200001157600080fd5b50604051620013be380380620013be83398101604081905262000034916200011f565b600062000042838262000218565b50600162000051828262000218565b505050620002e4565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008257600080fd5b81516001600160401b03808211156200009f576200009f6200005a565b604051601f8301601f19908116603f01168101908282118183101715620000ca57620000ca6200005a565b81604052838152602092508683858801011115620000e757600080fd5b600091505b838210156200010b5785820183015181830184015290820190620000ec565b600093810190920192909252949350505050565b600080604083850312156200013357600080fd5b82516001600160401b03808211156200014b57600080fd5b620001598683870162000070565b935060208501519150808211156200017057600080fd5b506200017f8582860162000070565b9150509250929050565b600181811c908216806200019e57607f821691505b602082108103620001bf57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200021357600081815260208120601f850160051c81016020861015620001ee5750805b601f850160051c820191505b818110156200020f57828155600101620001fa565b5050505b505050565b81516001600160401b038111156200023457620002346200005a565b6200024c8162000245845462000189565b84620001c5565b602080601f8311600181146200028457600084156200026b5750858301515b600019600386901b1c1916600185901b1785556200020f565b600085815260208120601f198616915b82811015620002b55788860151825594840194600190910190840162000294565b5085821015620002d45787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6110ca80620002f46000396000f3fe608060405234801561001057600080fd5b50600436106100cf5760003560e01c80636352211e1161008c578063a22cb46511610066578063a22cb465146101b3578063b88d4fde146101c6578063c87b56dd146101d9578063e985e9c5146101ec57600080fd5b80636352211e1461017757806370a082311461018a57806395d89b41146101ab57600080fd5b806301ffc9a7146100d457806306fdde03146100fc578063081812fc14610111578063095ea7b31461013c57806323b872dd1461015157806342842e0e14610164575b600080fd5b6100e76100e2366004610c7f565b610228565b60405190151581526020015b60405180910390f35b61010461027a565b6040516100f39190610cec565b61012461011f366004610cff565b61030c565b6040516001600160a01b0390911681526020016100f3565b61014f61014a366004610d34565b610333565b005b61014f61015f366004610d5e565b61044d565b61014f610172366004610d5e565b61047e565b610124610185366004610cff565b610499565b61019d610198366004610d9a565b6104f9565b6040519081526020016100f3565b61010461057f565b61014f6101c1366004610db5565b61058e565b61014f6101d4366004610e07565b61059d565b6101046101e7366004610cff565b6105d5565b6100e76101fa366004610ee3565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b60006001600160e01b031982166380ac58cd60e01b148061025957506001600160e01b03198216635b5e139f60e01b145b8061027457506301ffc9a760e01b6001600160e01b03198316145b92915050565b60606000805461028990610f16565b80601f01602080910402602001604051908101604052809291908181526020018280546102b590610f16565b80156103025780601f106102d757610100808354040283529160200191610302565b820191906000526020600020905b8154815290600101906020018083116102e557829003601f168201915b5050505050905090565b600061031782610649565b506000908152600460205260409020546001600160a01b031690565b600061033e82610499565b9050806001600160a01b0316836001600160a01b0316036103b05760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084015b60405180910390fd5b336001600160a01b03821614806103cc57506103cc81336101fa565b61043e5760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016103a7565b61044883836106ab565b505050565b6104573382610719565b6104735760405162461bcd60e51b81526004016103a790610f50565b610448838383610798565b6104488383836040518060200160405280600081525061059d565b6000818152600260205260408120546001600160a01b0316806102745760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016103a7565b60006001600160a01b0382166105635760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b60648201526084016103a7565b506001600160a01b031660009081526003602052604090205490565b60606001805461028990610f16565b6105993383836108fc565b5050565b6105a73383610719565b6105c35760405162461bcd60e51b81526004016103a790610f50565b6105cf848484846109ca565b50505050565b60606105e082610649565b60006105f760408051602081019091526000815290565b905060008151116106175760405180602001604052806000815250610642565b80610621846109fd565b604051602001610632929190610f9d565b6040516020818303038152906040525b9392505050565b6000818152600260205260409020546001600160a01b03166106a85760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016103a7565b50565b600081815260046020526040902080546001600160a01b0319166001600160a01b03841690811790915581906106e082610499565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60008061072583610499565b9050806001600160a01b0316846001600160a01b0316148061076c57506001600160a01b0380821660009081526005602090815260408083209388168352929052205460ff165b806107905750836001600160a01b03166107858461030c565b6001600160a01b0316145b949350505050565b826001600160a01b03166107ab82610499565b6001600160a01b0316146107d15760405162461bcd60e51b81526004016103a790610fcc565b6001600160a01b0382166108335760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b60648201526084016103a7565b826001600160a01b031661084682610499565b6001600160a01b03161461086c5760405162461bcd60e51b81526004016103a790610fcc565b600081815260046020908152604080832080546001600160a01b03199081169091556001600160a01b0387811680865260038552838620805460001901905590871680865283862080546001019055868652600290945282852080549092168417909155905184937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b816001600160a01b0316836001600160a01b03160361095d5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c65720000000000000060448201526064016103a7565b6001600160a01b03838116600081815260056020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6109d5848484610798565b6109e184848484610a90565b6105cf5760405162461bcd60e51b81526004016103a790611011565b60606000610a0a83610b91565b600101905060008167ffffffffffffffff811115610a2a57610a2a610df1565b6040519080825280601f01601f191660200182016040528015610a54576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a8504945084610a5e57509392505050565b60006001600160a01b0384163b15610b8657604051630a85bd0160e11b81526001600160a01b0385169063150b7a0290610ad4903390899088908890600401611063565b6020604051808303816000875af1925050508015610b0f575060408051601f3d908101601f19168201909252610b0c918101906110a0565b60015b610b6c573d808015610b3d576040519150601f19603f3d011682016040523d82523d6000602084013e610b42565b606091505b508051600003610b645760405162461bcd60e51b81526004016103a790611011565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610790565b506001949350505050565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b8310610bd05772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef81000000008310610bfc576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc100008310610c1a57662386f26fc10000830492506010015b6305f5e1008310610c32576305f5e100830492506008015b6127108310610c4657612710830492506004015b60648310610c58576064830492506002015b600a83106102745760010192915050565b6001600160e01b0319811681146106a857600080fd5b600060208284031215610c9157600080fd5b813561064281610c69565b60005b83811015610cb7578181015183820152602001610c9f565b50506000910152565b60008151808452610cd8816020860160208601610c9c565b601f01601f19169290920160200192915050565b6020815260006106426020830184610cc0565b600060208284031215610d1157600080fd5b5035919050565b80356001600160a01b0381168114610d2f57600080fd5b919050565b60008060408385031215610d4757600080fd5b610d5083610d18565b946020939093013593505050565b600080600060608486031215610d7357600080fd5b610d7c84610d18565b9250610d8a60208501610d18565b9150604084013590509250925092565b600060208284031215610dac57600080fd5b61064282610d18565b60008060408385031215610dc857600080fd5b610dd183610d18565b915060208301358015158114610de657600080fd5b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b60008060008060808587031215610e1d57600080fd5b610e2685610d18565b9350610e3460208601610d18565b925060408501359150606085013567ffffffffffffffff80821115610e5857600080fd5b818701915087601f830112610e6c57600080fd5b813581811115610e7e57610e7e610df1565b604051601f8201601f19908116603f01168101908382118183101715610ea657610ea6610df1565b816040528281528a6020848701011115610ebf57600080fd5b82602086016020830137600060208483010152809550505050505092959194509250565b60008060408385031215610ef657600080fd5b610eff83610d18565b9150610f0d60208401610d18565b90509250929050565b600181811c90821680610f2a57607f821691505b602082108103610f4a57634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252602d908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526c1c881bdc88185c1c1c9bdd9959609a1b606082015260800190565b60008351610faf818460208801610c9c565b835190830190610fc3818360208801610c9c565b01949350505050565b60208082526025908201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060408201526437bbb732b960d91b606082015260800190565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061109690830184610cc0565b9695505050505050565b6000602082840312156110b257600080fd5b815161064281610c6956fea164736f6c6343000811000a"; + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "name_"; + readonly type: "string"; + }, { + readonly internalType: "string"; + readonly name: "symbol_"; + readonly type: "string"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "constructor"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "approved"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Approval"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "ApprovalForAll"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Transfer"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "approve"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "balanceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getApproved"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly name: "isApprovedForAll"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "name"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "ownerOf"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "setApprovalForAll"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "symbol"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "tokenURI"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "transferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): ERC721Interface; + static connect(address: string, runner?: ContractRunner | null): ERC721; +} +export {}; +//# sourceMappingURL=ERC721__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC721/ERC721__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts/token/ERC721/ERC721__factory.d.ts.map new file mode 100644 index 00000000..a215adb9 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/token/ERC721/ERC721__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ERC721__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts/token/ERC721/ERC721__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,MAAM,EACN,eAAe,EAChB,MAAM,4DAA4D,CAAC;AAkWpE,aAAK,uBAAuB,GACxB,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,eAAgB,SAAQ,eAAe;gBACtC,GAAG,IAAI,EAAE,uBAAuB;IAQnC,oBAAoB,CAC3B,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,EACf,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CACb,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,EACf,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAItB,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,eAAe;IAIhE,MAAM,CAAC,QAAQ,CAAC,QAAQ,o4TAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,eAAe;IAGzC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,MAAM;CAGxE"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC721/ERC721__factory.js b/dist/types/factories/@openzeppelin/contracts/token/ERC721/ERC721__factory.js new file mode 100644 index 00000000..5252e46f --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/token/ERC721/ERC721__factory.js @@ -0,0 +1,382 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ERC721__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "string", + name: "name_", + type: "string", + }, + { + internalType: "string", + name: "symbol_", + type: "string", + }, + ], + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "approved", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Approval", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "ApprovalForAll", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Transfer", + type: "event", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "approve", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getApproved", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + name: "isApprovedForAll", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "name", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "ownerOf", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "setApprovalForAll", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "symbol", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "tokenURI", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "transferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +const _bytecode = "0x60806040523480156200001157600080fd5b50604051620013be380380620013be83398101604081905262000034916200011f565b600062000042838262000218565b50600162000051828262000218565b505050620002e4565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008257600080fd5b81516001600160401b03808211156200009f576200009f6200005a565b604051601f8301601f19908116603f01168101908282118183101715620000ca57620000ca6200005a565b81604052838152602092508683858801011115620000e757600080fd5b600091505b838210156200010b5785820183015181830184015290820190620000ec565b600093810190920192909252949350505050565b600080604083850312156200013357600080fd5b82516001600160401b03808211156200014b57600080fd5b620001598683870162000070565b935060208501519150808211156200017057600080fd5b506200017f8582860162000070565b9150509250929050565b600181811c908216806200019e57607f821691505b602082108103620001bf57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200021357600081815260208120601f850160051c81016020861015620001ee5750805b601f850160051c820191505b818110156200020f57828155600101620001fa565b5050505b505050565b81516001600160401b038111156200023457620002346200005a565b6200024c8162000245845462000189565b84620001c5565b602080601f8311600181146200028457600084156200026b5750858301515b600019600386901b1c1916600185901b1785556200020f565b600085815260208120601f198616915b82811015620002b55788860151825594840194600190910190840162000294565b5085821015620002d45787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6110ca80620002f46000396000f3fe608060405234801561001057600080fd5b50600436106100cf5760003560e01c80636352211e1161008c578063a22cb46511610066578063a22cb465146101b3578063b88d4fde146101c6578063c87b56dd146101d9578063e985e9c5146101ec57600080fd5b80636352211e1461017757806370a082311461018a57806395d89b41146101ab57600080fd5b806301ffc9a7146100d457806306fdde03146100fc578063081812fc14610111578063095ea7b31461013c57806323b872dd1461015157806342842e0e14610164575b600080fd5b6100e76100e2366004610c7f565b610228565b60405190151581526020015b60405180910390f35b61010461027a565b6040516100f39190610cec565b61012461011f366004610cff565b61030c565b6040516001600160a01b0390911681526020016100f3565b61014f61014a366004610d34565b610333565b005b61014f61015f366004610d5e565b61044d565b61014f610172366004610d5e565b61047e565b610124610185366004610cff565b610499565b61019d610198366004610d9a565b6104f9565b6040519081526020016100f3565b61010461057f565b61014f6101c1366004610db5565b61058e565b61014f6101d4366004610e07565b61059d565b6101046101e7366004610cff565b6105d5565b6100e76101fa366004610ee3565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b60006001600160e01b031982166380ac58cd60e01b148061025957506001600160e01b03198216635b5e139f60e01b145b8061027457506301ffc9a760e01b6001600160e01b03198316145b92915050565b60606000805461028990610f16565b80601f01602080910402602001604051908101604052809291908181526020018280546102b590610f16565b80156103025780601f106102d757610100808354040283529160200191610302565b820191906000526020600020905b8154815290600101906020018083116102e557829003601f168201915b5050505050905090565b600061031782610649565b506000908152600460205260409020546001600160a01b031690565b600061033e82610499565b9050806001600160a01b0316836001600160a01b0316036103b05760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084015b60405180910390fd5b336001600160a01b03821614806103cc57506103cc81336101fa565b61043e5760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016103a7565b61044883836106ab565b505050565b6104573382610719565b6104735760405162461bcd60e51b81526004016103a790610f50565b610448838383610798565b6104488383836040518060200160405280600081525061059d565b6000818152600260205260408120546001600160a01b0316806102745760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016103a7565b60006001600160a01b0382166105635760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b60648201526084016103a7565b506001600160a01b031660009081526003602052604090205490565b60606001805461028990610f16565b6105993383836108fc565b5050565b6105a73383610719565b6105c35760405162461bcd60e51b81526004016103a790610f50565b6105cf848484846109ca565b50505050565b60606105e082610649565b60006105f760408051602081019091526000815290565b905060008151116106175760405180602001604052806000815250610642565b80610621846109fd565b604051602001610632929190610f9d565b6040516020818303038152906040525b9392505050565b6000818152600260205260409020546001600160a01b03166106a85760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016103a7565b50565b600081815260046020526040902080546001600160a01b0319166001600160a01b03841690811790915581906106e082610499565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60008061072583610499565b9050806001600160a01b0316846001600160a01b0316148061076c57506001600160a01b0380821660009081526005602090815260408083209388168352929052205460ff165b806107905750836001600160a01b03166107858461030c565b6001600160a01b0316145b949350505050565b826001600160a01b03166107ab82610499565b6001600160a01b0316146107d15760405162461bcd60e51b81526004016103a790610fcc565b6001600160a01b0382166108335760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b60648201526084016103a7565b826001600160a01b031661084682610499565b6001600160a01b03161461086c5760405162461bcd60e51b81526004016103a790610fcc565b600081815260046020908152604080832080546001600160a01b03199081169091556001600160a01b0387811680865260038552838620805460001901905590871680865283862080546001019055868652600290945282852080549092168417909155905184937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b816001600160a01b0316836001600160a01b03160361095d5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c65720000000000000060448201526064016103a7565b6001600160a01b03838116600081815260056020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6109d5848484610798565b6109e184848484610a90565b6105cf5760405162461bcd60e51b81526004016103a790611011565b60606000610a0a83610b91565b600101905060008167ffffffffffffffff811115610a2a57610a2a610df1565b6040519080825280601f01601f191660200182016040528015610a54576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a8504945084610a5e57509392505050565b60006001600160a01b0384163b15610b8657604051630a85bd0160e11b81526001600160a01b0385169063150b7a0290610ad4903390899088908890600401611063565b6020604051808303816000875af1925050508015610b0f575060408051601f3d908101601f19168201909252610b0c918101906110a0565b60015b610b6c573d808015610b3d576040519150601f19603f3d011682016040523d82523d6000602084013e610b42565b606091505b508051600003610b645760405162461bcd60e51b81526004016103a790611011565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610790565b506001949350505050565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b8310610bd05772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef81000000008310610bfc576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc100008310610c1a57662386f26fc10000830492506010015b6305f5e1008310610c32576305f5e100830492506008015b6127108310610c4657612710830492506004015b60648310610c58576064830492506002015b600a83106102745760010192915050565b6001600160e01b0319811681146106a857600080fd5b600060208284031215610c9157600080fd5b813561064281610c69565b60005b83811015610cb7578181015183820152602001610c9f565b50506000910152565b60008151808452610cd8816020860160208601610c9c565b601f01601f19169290920160200192915050565b6020815260006106426020830184610cc0565b600060208284031215610d1157600080fd5b5035919050565b80356001600160a01b0381168114610d2f57600080fd5b919050565b60008060408385031215610d4757600080fd5b610d5083610d18565b946020939093013593505050565b600080600060608486031215610d7357600080fd5b610d7c84610d18565b9250610d8a60208501610d18565b9150604084013590509250925092565b600060208284031215610dac57600080fd5b61064282610d18565b60008060408385031215610dc857600080fd5b610dd183610d18565b915060208301358015158114610de657600080fd5b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b60008060008060808587031215610e1d57600080fd5b610e2685610d18565b9350610e3460208601610d18565b925060408501359150606085013567ffffffffffffffff80821115610e5857600080fd5b818701915087601f830112610e6c57600080fd5b813581811115610e7e57610e7e610df1565b604051601f8201601f19908116603f01168101908382118183101715610ea657610ea6610df1565b816040528281528a6020848701011115610ebf57600080fd5b82602086016020830137600060208483010152809550505050505092959194509250565b60008060408385031215610ef657600080fd5b610eff83610d18565b9150610f0d60208401610d18565b90509250929050565b600181811c90821680610f2a57607f821691505b602082108103610f4a57634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252602d908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526c1c881bdc88185c1c1c9bdd9959609a1b606082015260800190565b60008351610faf818460208801610c9c565b835190830190610fc3818360208801610c9c565b01949350505050565b60208082526025908201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060408201526437bbb732b960d91b606082015260800190565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061109690830184610cc0565b9695505050505050565b6000602082840312156110b257600080fd5b815161064281610c6956fea164736f6c6343000811000a"; +const isSuperArgs = (xs) => xs.length > 1; +class ERC721__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(name_, symbol_, overrides) { + return super.getDeployTransaction(name_, symbol_, overrides || {}); + } + deploy(name_, symbol_, overrides) { + return super.deploy(name_, symbol_, overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.ERC721__factory = ERC721__factory; +ERC721__factory.bytecode = _bytecode; +ERC721__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC721/IERC721Receiver__factory.d.ts b/dist/types/factories/@openzeppelin/contracts/token/ERC721/IERC721Receiver__factory.d.ts new file mode 100644 index 00000000..b64749c6 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/token/ERC721/IERC721Receiver__factory.d.ts @@ -0,0 +1,34 @@ +import { type ContractRunner } from "ethers"; +import type { IERC721Receiver, IERC721ReceiverInterface } from "../../../../../@openzeppelin/contracts/token/ERC721/IERC721Receiver"; +export declare class IERC721Receiver__factory { + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "onERC721Received"; + readonly outputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: ""; + readonly type: "bytes4"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): IERC721ReceiverInterface; + static connect(address: string, runner?: ContractRunner | null): IERC721Receiver; +} +//# sourceMappingURL=IERC721Receiver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC721/IERC721Receiver__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts/token/ERC721/IERC721Receiver__factory.d.ts.map new file mode 100644 index 00000000..4103f53b --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/token/ERC721/IERC721Receiver__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC721Receiver__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts/token/ERC721/IERC721Receiver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,eAAe,EACf,wBAAwB,EACzB,MAAM,qEAAqE,CAAC;AAuC7E,qBAAa,wBAAwB;IACnC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,wBAAwB;IAGlD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,eAAe;CAGnB"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC721/IERC721Receiver__factory.js b/dist/types/factories/@openzeppelin/contracts/token/ERC721/IERC721Receiver__factory.js new file mode 100644 index 00000000..2bfbed3d --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/token/ERC721/IERC721Receiver__factory.js @@ -0,0 +1,50 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IERC721Receiver__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "onERC721Received", + outputs: [ + { + internalType: "bytes4", + name: "", + type: "bytes4", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, +]; +class IERC721Receiver__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IERC721Receiver__factory = IERC721Receiver__factory; +IERC721Receiver__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC721/IERC721__factory.d.ts b/dist/types/factories/@openzeppelin/contracts/token/ERC721/IERC721__factory.d.ts new file mode 100644 index 00000000..fe78d7fb --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/token/ERC721/IERC721__factory.d.ts @@ -0,0 +1,228 @@ +import { type ContractRunner } from "ethers"; +import type { IERC721, IERC721Interface } from "../../../../../@openzeppelin/contracts/token/ERC721/IERC721"; +export declare class IERC721__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "approved"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Approval"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "ApprovalForAll"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Transfer"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "approve"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "balanceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "balance"; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getApproved"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly name: "isApprovedForAll"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "ownerOf"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "setApprovalForAll"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "transferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): IERC721Interface; + static connect(address: string, runner?: ContractRunner | null): IERC721; +} +//# sourceMappingURL=IERC721__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC721/IERC721__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts/token/ERC721/IERC721__factory.d.ts.map new file mode 100644 index 00000000..16f252f4 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/token/ERC721/IERC721__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC721__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts/token/ERC721/IERC721__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,OAAO,EACP,gBAAgB,EACjB,MAAM,6DAA6D,CAAC;AAkSrE,qBAAa,gBAAgB;IAC3B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,gBAAgB;IAG1C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,OAAO;CAGzE"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC721/IERC721__factory.js b/dist/types/factories/@openzeppelin/contracts/token/ERC721/IERC721__factory.js new file mode 100644 index 00000000..5a131cb5 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/token/ERC721/IERC721__factory.js @@ -0,0 +1,301 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IERC721__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "approved", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Approval", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "ApprovalForAll", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Transfer", + type: "event", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "approve", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "balance", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getApproved", + outputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + name: "isApprovedForAll", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "ownerOf", + outputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "setApprovalForAll", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "transferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +class IERC721__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IERC721__factory = IERC721__factory; +IERC721__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata__factory.d.ts b/dist/types/factories/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata__factory.d.ts new file mode 100644 index 00000000..3f197c34 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata__factory.d.ts @@ -0,0 +1,262 @@ +import { type ContractRunner } from "ethers"; +import type { IERC721Metadata, IERC721MetadataInterface } from "../../../../../../@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata"; +export declare class IERC721Metadata__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "approved"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Approval"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "ApprovalForAll"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Transfer"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "approve"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "balanceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "balance"; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getApproved"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly name: "isApprovedForAll"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "name"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "ownerOf"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "setApprovalForAll"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "symbol"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "tokenURI"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "transferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): IERC721MetadataInterface; + static connect(address: string, runner?: ContractRunner | null): IERC721Metadata; +} +//# sourceMappingURL=IERC721Metadata__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata__factory.d.ts.map new file mode 100644 index 00000000..db140a2a --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC721Metadata__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,eAAe,EACf,wBAAwB,EACzB,MAAM,mFAAmF,CAAC;AA+U3F,qBAAa,wBAAwB;IACnC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,wBAAwB;IAGlD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,eAAe;CAGnB"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata__factory.js b/dist/types/factories/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata__factory.js new file mode 100644 index 00000000..b507f19d --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata__factory.js @@ -0,0 +1,346 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IERC721Metadata__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "approved", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Approval", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "ApprovalForAll", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Transfer", + type: "event", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "approve", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "balance", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getApproved", + outputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + name: "isApprovedForAll", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "name", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "ownerOf", + outputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "setApprovalForAll", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "symbol", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "tokenURI", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "transferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +class IERC721Metadata__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IERC721Metadata__factory = IERC721Metadata__factory; +IERC721Metadata__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC721/extensions/index.d.ts b/dist/types/factories/@openzeppelin/contracts/token/ERC721/extensions/index.d.ts new file mode 100644 index 00000000..36b509f1 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/token/ERC721/extensions/index.d.ts @@ -0,0 +1,2 @@ +export { IERC721Metadata__factory } from "./IERC721Metadata__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC721/extensions/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts/token/ERC721/extensions/index.d.ts.map new file mode 100644 index 00000000..6431142e --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/token/ERC721/extensions/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@openzeppelin/contracts/token/ERC721/extensions/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC721/extensions/index.js b/dist/types/factories/@openzeppelin/contracts/token/ERC721/extensions/index.js new file mode 100644 index 00000000..8566aade --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/token/ERC721/extensions/index.js @@ -0,0 +1,5 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IERC721Metadata__factory = void 0; +var IERC721Metadata__factory_1 = require("./IERC721Metadata__factory"); +Object.defineProperty(exports, "IERC721Metadata__factory", { enumerable: true, get: function () { return IERC721Metadata__factory_1.IERC721Metadata__factory; } }); diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC721/index.d.ts b/dist/types/factories/@openzeppelin/contracts/token/ERC721/index.d.ts new file mode 100644 index 00000000..2f25df8e --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/token/ERC721/index.d.ts @@ -0,0 +1,5 @@ +export * as extensions from "./extensions"; +export { ERC721__factory } from "./ERC721__factory"; +export { IERC721__factory } from "./IERC721__factory"; +export { IERC721Receiver__factory } from "./IERC721Receiver__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC721/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts/token/ERC721/index.d.ts.map new file mode 100644 index 00000000..d8392c08 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/token/ERC721/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts/token/ERC721/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC721/index.js b/dist/types/factories/@openzeppelin/contracts/token/ERC721/index.js new file mode 100644 index 00000000..fd64f043 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/token/ERC721/index.js @@ -0,0 +1,33 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IERC721Receiver__factory = exports.IERC721__factory = exports.ERC721__factory = exports.extensions = void 0; +exports.extensions = __importStar(require("./extensions")); +var ERC721__factory_1 = require("./ERC721__factory"); +Object.defineProperty(exports, "ERC721__factory", { enumerable: true, get: function () { return ERC721__factory_1.ERC721__factory; } }); +var IERC721__factory_1 = require("./IERC721__factory"); +Object.defineProperty(exports, "IERC721__factory", { enumerable: true, get: function () { return IERC721__factory_1.IERC721__factory; } }); +var IERC721Receiver__factory_1 = require("./IERC721Receiver__factory"); +Object.defineProperty(exports, "IERC721Receiver__factory", { enumerable: true, get: function () { return IERC721Receiver__factory_1.IERC721Receiver__factory; } }); diff --git a/dist/types/factories/@openzeppelin/contracts/token/index.d.ts b/dist/types/factories/@openzeppelin/contracts/token/index.d.ts new file mode 100644 index 00000000..1fb67373 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/token/index.d.ts @@ -0,0 +1,4 @@ +export * as erc1155 from "./ERC1155"; +export * as erc20 from "./ERC20"; +export * as erc721 from "./ERC721"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts/token/index.d.ts.map new file mode 100644 index 00000000..f74901e7 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/token/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/@openzeppelin/contracts/token/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AACrC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/index.js b/dist/types/factories/@openzeppelin/contracts/token/index.js new file mode 100644 index 00000000..b40ffbef --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/token/index.js @@ -0,0 +1,29 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.erc721 = exports.erc20 = exports.erc1155 = void 0; +exports.erc1155 = __importStar(require("./ERC1155")); +exports.erc20 = __importStar(require("./ERC20")); +exports.erc721 = __importStar(require("./ERC721")); diff --git a/dist/types/factories/@openzeppelin/contracts/utils/index.d.ts b/dist/types/factories/@openzeppelin/contracts/utils/index.d.ts new file mode 100644 index 00000000..f58107dd --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/utils/index.d.ts @@ -0,0 +1,2 @@ +export * as introspection from "./introspection"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/utils/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts/utils/index.d.ts.map new file mode 100644 index 00000000..207d9eca --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/utils/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/@openzeppelin/contracts/utils/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,aAAa,MAAM,iBAAiB,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/utils/index.js b/dist/types/factories/@openzeppelin/contracts/utils/index.js new file mode 100644 index 00000000..76c77cb9 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/utils/index.js @@ -0,0 +1,27 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.introspection = void 0; +exports.introspection = __importStar(require("./introspection")); diff --git a/dist/types/factories/@openzeppelin/contracts/utils/introspection/ERC165__factory.d.ts b/dist/types/factories/@openzeppelin/contracts/utils/introspection/ERC165__factory.d.ts new file mode 100644 index 00000000..9075f31e --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/utils/introspection/ERC165__factory.d.ts @@ -0,0 +1,22 @@ +import { type ContractRunner } from "ethers"; +import type { ERC165, ERC165Interface } from "../../../../../@openzeppelin/contracts/utils/introspection/ERC165"; +export declare class ERC165__factory { + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): ERC165Interface; + static connect(address: string, runner?: ContractRunner | null): ERC165; +} +//# sourceMappingURL=ERC165__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/utils/introspection/ERC165__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts/utils/introspection/ERC165__factory.d.ts.map new file mode 100644 index 00000000..0be32c8a --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/utils/introspection/ERC165__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ERC165__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts/utils/introspection/ERC165__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,MAAM,EACN,eAAe,EAChB,MAAM,mEAAmE,CAAC;AAwB3E,qBAAa,eAAe;IAC1B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,eAAe;IAGzC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,MAAM;CAGxE"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/utils/introspection/ERC165__factory.js b/dist/types/factories/@openzeppelin/contracts/utils/introspection/ERC165__factory.js new file mode 100644 index 00000000..4a819342 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/utils/introspection/ERC165__factory.js @@ -0,0 +1,35 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ERC165__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class ERC165__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.ERC165__factory = ERC165__factory; +ERC165__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts/utils/introspection/IERC165__factory.d.ts b/dist/types/factories/@openzeppelin/contracts/utils/introspection/IERC165__factory.d.ts new file mode 100644 index 00000000..3726c768 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/utils/introspection/IERC165__factory.d.ts @@ -0,0 +1,22 @@ +import { type ContractRunner } from "ethers"; +import type { IERC165, IERC165Interface } from "../../../../../@openzeppelin/contracts/utils/introspection/IERC165"; +export declare class IERC165__factory { + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): IERC165Interface; + static connect(address: string, runner?: ContractRunner | null): IERC165; +} +//# sourceMappingURL=IERC165__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/utils/introspection/IERC165__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts/utils/introspection/IERC165__factory.d.ts.map new file mode 100644 index 00000000..1acfd8db --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/utils/introspection/IERC165__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC165__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts/utils/introspection/IERC165__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,OAAO,EACP,gBAAgB,EACjB,MAAM,oEAAoE,CAAC;AAwB5E,qBAAa,gBAAgB;IAC3B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,gBAAgB;IAG1C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,OAAO;CAGzE"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/utils/introspection/IERC165__factory.js b/dist/types/factories/@openzeppelin/contracts/utils/introspection/IERC165__factory.js new file mode 100644 index 00000000..65af5cfc --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/utils/introspection/IERC165__factory.js @@ -0,0 +1,35 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IERC165__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class IERC165__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IERC165__factory = IERC165__factory; +IERC165__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts/utils/introspection/index.d.ts b/dist/types/factories/@openzeppelin/contracts/utils/introspection/index.d.ts new file mode 100644 index 00000000..085812d5 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/utils/introspection/index.d.ts @@ -0,0 +1,3 @@ +export { ERC165__factory } from "./ERC165__factory"; +export { IERC165__factory } from "./IERC165__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/utils/introspection/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts/utils/introspection/index.d.ts.map new file mode 100644 index 00000000..d3582437 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/utils/introspection/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts/utils/introspection/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/utils/introspection/index.js b/dist/types/factories/@openzeppelin/contracts/utils/introspection/index.js new file mode 100644 index 00000000..0b84bab7 --- /dev/null +++ b/dist/types/factories/@openzeppelin/contracts/utils/introspection/index.js @@ -0,0 +1,7 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IERC165__factory = exports.ERC165__factory = void 0; +var ERC165__factory_1 = require("./ERC165__factory"); +Object.defineProperty(exports, "ERC165__factory", { enumerable: true, get: function () { return ERC165__factory_1.ERC165__factory; } }); +var IERC165__factory_1 = require("./IERC165__factory"); +Object.defineProperty(exports, "IERC165__factory", { enumerable: true, get: function () { return IERC165__factory_1.IERC165__factory; } }); diff --git a/dist/types/factories/@openzeppelin/index.d.ts b/dist/types/factories/@openzeppelin/index.d.ts new file mode 100644 index 00000000..44c28a89 --- /dev/null +++ b/dist/types/factories/@openzeppelin/index.d.ts @@ -0,0 +1,4 @@ +export * as contracts from "./contracts"; +export * as contracts23 from "./contracts-2.3"; +export * as contractsUpgradeable from "./contracts-upgradeable"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/index.d.ts.map b/dist/types/factories/@openzeppelin/index.d.ts.map new file mode 100644 index 00000000..70625453 --- /dev/null +++ b/dist/types/factories/@openzeppelin/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../types/factories/@openzeppelin/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,WAAW,MAAM,iBAAiB,CAAC;AAC/C,OAAO,KAAK,oBAAoB,MAAM,yBAAyB,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/index.js b/dist/types/factories/@openzeppelin/index.js new file mode 100644 index 00000000..0066833f --- /dev/null +++ b/dist/types/factories/@openzeppelin/index.js @@ -0,0 +1,29 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.contractsUpgradeable = exports.contracts23 = exports.contracts = void 0; +exports.contracts = __importStar(require("./contracts")); +exports.contracts23 = __importStar(require("./contracts-2.3")); +exports.contractsUpgradeable = __importStar(require("./contracts-upgradeable")); diff --git a/dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry__factory.d.ts b/dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry__factory.d.ts new file mode 100644 index 00000000..b16e2a75 --- /dev/null +++ b/dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry__factory.d.ts @@ -0,0 +1,194 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../../common"; +import type { LegacyENSRegistry, LegacyENSRegistryInterface } from "../../../../contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry"; +declare type LegacyENSRegistryConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class LegacyENSRegistry__factory extends ContractFactory { + constructor(...args: LegacyENSRegistryConstructorParams); + getDeployTransaction(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): LegacyENSRegistry__factory; + static readonly bytecode = "0x608060405234801561001057600080fd5b5060008080526020527fad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb580546001600160a01b031916331790556104f6806100596000396000f3fe608060405234801561001057600080fd5b506004361061007d5760003560e01c806314ab90381161005b57806314ab90381461010957806316a25cbd1461011c5780631896f70a146101695780635b0fc9c31461017c57600080fd5b80630178b8bf1461008257806302571be3146100cb57806306ab5923146100f4575b600080fd5b6100ae610090366004610416565b6000908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100ae6100d9366004610416565b6000908152602081905260409020546001600160a01b031690565b61010761010236600461044b565b61018f565b005b610107610117366004610480565b61024c565b61015061012a366004610416565b600090815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100c2565b6101076101773660046104bd565b6102ef565b61010761018a3660046104bd565b610384565b60008381526020819052604090205483906001600160a01b031633146101b457600080fd5b60408051602080820187905281830186905282518083038401815260608301808552815191909201206001600160a01b0386169091529151859187917fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829181900360800190a3600090815260208190526040902080546001600160a01b0319166001600160a01b039390931692909217909155505050565b60008281526020819052604090205482906001600160a01b0316331461027157600080fd5b60405167ffffffffffffffff8316815283907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a250600091825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b60008281526020819052604090205482906001600160a01b0316331461031457600080fd5b6040516001600160a01b038316815283907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a25060009182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b60008281526020819052604090205482906001600160a01b031633146103a957600080fd5b6040516001600160a01b038316815283907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a25060009182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b60006020828403121561042857600080fd5b5035919050565b80356001600160a01b038116811461044657600080fd5b919050565b60008060006060848603121561046057600080fd5b83359250602084013591506104776040850161042f565b90509250925092565b6000806040838503121561049357600080fd5b82359150602083013567ffffffffffffffff811681146104b257600080fd5b809150509250929050565b600080604083850312156104d057600080fd5b823591506104e06020840161042f565b9050925092905056fea164736f6c6343000811000a"; + static readonly abi: readonly [{ + readonly inputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "constructor"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "label"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "NewOwner"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }]; + readonly name: "NewResolver"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "uint64"; + readonly name: "ttl"; + readonly type: "uint64"; + }]; + readonly name: "NewTTL"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "Transfer"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "owner"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "resolver"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "setOwner"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }]; + readonly name: "setResolver"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes32"; + readonly name: "label"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "setSubnodeOwner"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint64"; + readonly name: "ttl"; + readonly type: "uint64"; + }]; + readonly name: "setTTL"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "ttl"; + readonly outputs: readonly [{ + readonly internalType: "uint64"; + readonly name: ""; + readonly type: "uint64"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): LegacyENSRegistryInterface; + static connect(address: string, runner?: ContractRunner | null): LegacyENSRegistry; +} +export {}; +//# sourceMappingURL=LegacyENSRegistry__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry__factory.d.ts.map b/dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry__factory.d.ts.map new file mode 100644 index 00000000..93f921a6 --- /dev/null +++ b/dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"LegacyENSRegistry__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,KAAK,EACV,iBAAiB,EACjB,0BAA0B,EAC3B,MAAM,oEAAoE,CAAC;AAqO5E,aAAK,kCAAkC,GACnC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,0BAA2B,SAAQ,eAAe;gBACjD,GAAG,IAAI,EAAE,kCAAkC;IAQ9C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,0BAA0B;IAI3E,MAAM,CAAC,QAAQ,CAAC,QAAQ,sqFAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,0BAA0B;IAGpD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,iBAAiB;CAGrB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry__factory.js b/dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry__factory.js new file mode 100644 index 00000000..31dbef9a --- /dev/null +++ b/dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry__factory.js @@ -0,0 +1,257 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.LegacyENSRegistry__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [], + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: true, + internalType: "bytes32", + name: "label", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "NewOwner", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "resolver", + type: "address", + }, + ], + name: "NewResolver", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint64", + name: "ttl", + type: "uint64", + }, + ], + name: "NewTTL", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "Transfer", + type: "event", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "resolver", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "setOwner", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "address", + name: "resolver", + type: "address", + }, + ], + name: "setResolver", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "label", + type: "bytes32", + }, + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "setSubnodeOwner", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "uint64", + name: "ttl", + type: "uint64", + }, + ], + name: "setTTL", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "ttl", + outputs: [ + { + internalType: "uint64", + name: "", + type: "uint64", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +const _bytecode = "0x608060405234801561001057600080fd5b5060008080526020527fad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb580546001600160a01b031916331790556104f6806100596000396000f3fe608060405234801561001057600080fd5b506004361061007d5760003560e01c806314ab90381161005b57806314ab90381461010957806316a25cbd1461011c5780631896f70a146101695780635b0fc9c31461017c57600080fd5b80630178b8bf1461008257806302571be3146100cb57806306ab5923146100f4575b600080fd5b6100ae610090366004610416565b6000908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100ae6100d9366004610416565b6000908152602081905260409020546001600160a01b031690565b61010761010236600461044b565b61018f565b005b610107610117366004610480565b61024c565b61015061012a366004610416565b600090815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100c2565b6101076101773660046104bd565b6102ef565b61010761018a3660046104bd565b610384565b60008381526020819052604090205483906001600160a01b031633146101b457600080fd5b60408051602080820187905281830186905282518083038401815260608301808552815191909201206001600160a01b0386169091529151859187917fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829181900360800190a3600090815260208190526040902080546001600160a01b0319166001600160a01b039390931692909217909155505050565b60008281526020819052604090205482906001600160a01b0316331461027157600080fd5b60405167ffffffffffffffff8316815283907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a250600091825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b60008281526020819052604090205482906001600160a01b0316331461031457600080fd5b6040516001600160a01b038316815283907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a25060009182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b60008281526020819052604090205482906001600160a01b031633146103a957600080fd5b6040516001600160a01b038316815283907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a25060009182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b60006020828403121561042857600080fd5b5035919050565b80356001600160a01b038116811461044657600080fd5b919050565b60008060006060848603121561046057600080fd5b83359250602084013591506104776040850161042f565b90509250925092565b6000806040838503121561049357600080fd5b82359150602083013567ffffffffffffffff811681146104b257600080fd5b809150509250929050565b600080604083850312156104d057600080fd5b823591506104e06020840161042f565b9050925092905056fea164736f6c6343000811000a"; +const isSuperArgs = (xs) => xs.length > 1; +class LegacyENSRegistry__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(overrides) { + return super.getDeployTransaction(overrides || {}); + } + deploy(overrides) { + return super.deploy(overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.LegacyENSRegistry__factory = LegacyENSRegistry__factory; +LegacyENSRegistry__factory.bytecode = _bytecode; +LegacyENSRegistry__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENS__factory.d.ts b/dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENS__factory.d.ts new file mode 100644 index 00000000..144a6b95 --- /dev/null +++ b/dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENS__factory.d.ts @@ -0,0 +1,175 @@ +import { type ContractRunner } from "ethers"; +import type { LegacyENS, LegacyENSInterface } from "../../../../contracts/@ens/LegacyENSRegistry.sol/LegacyENS"; +export declare class LegacyENS__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "label"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "NewOwner"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }]; + readonly name: "NewResolver"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "uint64"; + readonly name: "ttl"; + readonly type: "uint64"; + }]; + readonly name: "NewTTL"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "Transfer"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "owner"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "resolver"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "setOwner"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }]; + readonly name: "setResolver"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes32"; + readonly name: "label"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "setSubnodeOwner"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint64"; + readonly name: "ttl"; + readonly type: "uint64"; + }]; + readonly name: "setTTL"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "ttl"; + readonly outputs: readonly [{ + readonly internalType: "uint64"; + readonly name: ""; + readonly type: "uint64"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): LegacyENSInterface; + static connect(address: string, runner?: ContractRunner | null): LegacyENS; +} +//# sourceMappingURL=LegacyENS__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENS__factory.d.ts.map b/dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENS__factory.d.ts.map new file mode 100644 index 00000000..0499f704 --- /dev/null +++ b/dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENS__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"LegacyENS__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENS__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,SAAS,EACT,kBAAkB,EACnB,MAAM,4DAA4D,CAAC;AA6NpE,qBAAa,kBAAkB;IAC7B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,kBAAkB;IAG5C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,SAAS;CAG3E"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENS__factory.js b/dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENS__factory.js new file mode 100644 index 00000000..b1fbe304 --- /dev/null +++ b/dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENS__factory.js @@ -0,0 +1,232 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.LegacyENS__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: true, + internalType: "bytes32", + name: "label", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "NewOwner", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "resolver", + type: "address", + }, + ], + name: "NewResolver", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint64", + name: "ttl", + type: "uint64", + }, + ], + name: "NewTTL", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "Transfer", + type: "event", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "resolver", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "setOwner", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "address", + name: "resolver", + type: "address", + }, + ], + name: "setResolver", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "label", + type: "bytes32", + }, + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "setSubnodeOwner", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "uint64", + name: "ttl", + type: "uint64", + }, + ], + name: "setTTL", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "ttl", + outputs: [ + { + internalType: "uint64", + name: "", + type: "uint64", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class LegacyENS__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.LegacyENS__factory = LegacyENS__factory; +LegacyENS__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/index.d.ts b/dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/index.d.ts new file mode 100644 index 00000000..0562cff2 --- /dev/null +++ b/dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/index.d.ts @@ -0,0 +1,3 @@ +export { LegacyENS__factory } from "./LegacyENS__factory"; +export { LegacyENSRegistry__factory } from "./LegacyENSRegistry__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/index.d.ts.map b/dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/index.d.ts.map new file mode 100644 index 00000000..2dda94e7 --- /dev/null +++ b/dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/contracts/@ens/LegacyENSRegistry.sol/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/index.js b/dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/index.js new file mode 100644 index 00000000..3cee17f0 --- /dev/null +++ b/dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/index.js @@ -0,0 +1,7 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.LegacyENSRegistry__factory = exports.LegacyENS__factory = void 0; +var LegacyENS__factory_1 = require("./LegacyENS__factory"); +Object.defineProperty(exports, "LegacyENS__factory", { enumerable: true, get: function () { return LegacyENS__factory_1.LegacyENS__factory; } }); +var LegacyENSRegistry__factory_1 = require("./LegacyENSRegistry__factory"); +Object.defineProperty(exports, "LegacyENSRegistry__factory", { enumerable: true, get: function () { return LegacyENSRegistry__factory_1.LegacyENSRegistry__factory; } }); diff --git a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar__factory.d.ts b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar__factory.d.ts new file mode 100644 index 00000000..40d61670 --- /dev/null +++ b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar__factory.d.ts @@ -0,0 +1,562 @@ +import { type ContractRunner } from "ethers"; +import type { BaseRegistrar, BaseRegistrarInterface } from "../../../../contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar"; +export declare class BaseRegistrar__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "approved"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Approval"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "ApprovalForAll"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "controller"; + readonly type: "address"; + }]; + readonly name: "ControllerAdded"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "controller"; + readonly type: "address"; + }]; + readonly name: "ControllerRemoved"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "expires"; + readonly type: "uint256"; + }]; + readonly name: "NameMigrated"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "expires"; + readonly type: "uint256"; + }]; + readonly name: "NameRegistered"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "expires"; + readonly type: "uint256"; + }]; + readonly name: "NameRenewed"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "previousOwner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "newOwner"; + readonly type: "address"; + }]; + readonly name: "OwnershipTransferred"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Transfer"; + readonly type: "event"; + }, { + readonly constant: true; + readonly inputs: readonly []; + readonly name: "GRACE_PERIOD"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "controller"; + readonly type: "address"; + }]; + readonly name: "addController"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "approve"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }]; + readonly name: "available"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "balanceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "balance"; + readonly type: "uint256"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly []; + readonly name: "baseNode"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly name: "controllers"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly []; + readonly name: "ens"; + readonly outputs: readonly [{ + readonly internalType: "contract ENS"; + readonly name: ""; + readonly type: "address"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getApproved"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly name: "isApprovedForAll"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly []; + readonly name: "isOwner"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }]; + readonly name: "nameExpires"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly []; + readonly name: "owner"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "ownerOf"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }, { + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "reclaim"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }, { + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "duration"; + readonly type: "uint256"; + }]; + readonly name: "register"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "controller"; + readonly type: "address"; + }]; + readonly name: "removeController"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "duration"; + readonly type: "uint256"; + }]; + readonly name: "renew"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly []; + readonly name: "renounceOwnership"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly internalType: "bool"; + readonly name: "_approved"; + readonly type: "bool"; + }]; + readonly name: "setApprovalForAll"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }]; + readonly name: "setResolver"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "transferFrom"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "newOwner"; + readonly type: "address"; + }]; + readonly name: "transferOwnership"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): BaseRegistrarInterface; + static connect(address: string, runner?: ContractRunner | null): BaseRegistrar; +} +//# sourceMappingURL=BaseRegistrar__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar__factory.d.ts.map b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar__factory.d.ts.map new file mode 100644 index 00000000..79d7fa41 --- /dev/null +++ b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"BaseRegistrar__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,aAAa,EACb,sBAAsB,EACvB,MAAM,2EAA2E,CAAC;AAosBnF,qBAAa,sBAAsB;IACjC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,sBAAsB;IAGhD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,aAAa;CAGjB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar__factory.js b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar__factory.js new file mode 100644 index 00000000..39baeeec --- /dev/null +++ b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar__factory.js @@ -0,0 +1,719 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.BaseRegistrar__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "approved", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Approval", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "ApprovalForAll", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "controller", + type: "address", + }, + ], + name: "ControllerAdded", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "controller", + type: "address", + }, + ], + name: "ControllerRemoved", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "expires", + type: "uint256", + }, + ], + name: "NameMigrated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "expires", + type: "uint256", + }, + ], + name: "NameRegistered", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "expires", + type: "uint256", + }, + ], + name: "NameRenewed", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "previousOwner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnershipTransferred", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Transfer", + type: "event", + }, + { + constant: true, + inputs: [], + name: "GRACE_PERIOD", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "controller", + type: "address", + }, + ], + name: "addController", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "approve", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + ], + name: "available", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "balance", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "baseNode", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + name: "controllers", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "ens", + outputs: [ + { + internalType: "contract ENS", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getApproved", + outputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + name: "isApprovedForAll", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "isOwner", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + ], + name: "nameExpires", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "ownerOf", + outputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "reclaim", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "uint256", + name: "duration", + type: "uint256", + }, + ], + name: "register", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "controller", + type: "address", + }, + ], + name: "removeController", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + internalType: "uint256", + name: "duration", + type: "uint256", + }, + ], + name: "renew", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [], + name: "renounceOwnership", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "safeTransferFrom", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "safeTransferFrom", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "bool", + name: "_approved", + type: "bool", + }, + ], + name: "setApprovalForAll", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "resolver", + type: "address", + }, + ], + name: "setResolver", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "transferFrom", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "transferOwnership", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, +]; +class BaseRegistrar__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.BaseRegistrar__factory = BaseRegistrar__factory; +BaseRegistrar__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/ENS__factory.d.ts b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/ENS__factory.d.ts new file mode 100644 index 00000000..f39aff0f --- /dev/null +++ b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/ENS__factory.d.ts @@ -0,0 +1,317 @@ +import { type ContractRunner } from "ethers"; +import type { ENS, ENSInterface } from "../../../../contracts/@ens/LegacyETHRegistrarController.sol/ENS"; +export declare class ENS__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "ApprovalForAll"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "label"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "NewOwner"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }]; + readonly name: "NewResolver"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "uint64"; + readonly name: "ttl"; + readonly type: "uint64"; + }]; + readonly name: "NewTTL"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "Transfer"; + readonly type: "event"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly name: "isApprovedForAll"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "owner"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "recordExists"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "resolver"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "setApprovalForAll"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "setOwner"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }, { + readonly internalType: "uint64"; + readonly name: "ttl"; + readonly type: "uint64"; + }]; + readonly name: "setRecord"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }]; + readonly name: "setResolver"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes32"; + readonly name: "label"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "setSubnodeOwner"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes32"; + readonly name: "label"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }, { + readonly internalType: "uint64"; + readonly name: "ttl"; + readonly type: "uint64"; + }]; + readonly name: "setSubnodeRecord"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint64"; + readonly name: "ttl"; + readonly type: "uint64"; + }]; + readonly name: "setTTL"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "ttl"; + readonly outputs: readonly [{ + readonly internalType: "uint64"; + readonly name: ""; + readonly type: "uint64"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): ENSInterface; + static connect(address: string, runner?: ContractRunner | null): ENS; +} +//# sourceMappingURL=ENS__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/ENS__factory.d.ts.map b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/ENS__factory.d.ts.map new file mode 100644 index 00000000..bd874d92 --- /dev/null +++ b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/ENS__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ENS__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/contracts/@ens/LegacyETHRegistrarController.sol/ENS__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,GAAG,EACH,YAAY,EACb,MAAM,iEAAiE,CAAC;AA8YzE,qBAAa,YAAY;IACvB,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,YAAY;IAGtC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,GAAG;CAGrE"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/ENS__factory.js b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/ENS__factory.js new file mode 100644 index 00000000..a637dece --- /dev/null +++ b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/ENS__factory.js @@ -0,0 +1,409 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ENS__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "ApprovalForAll", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: true, + internalType: "bytes32", + name: "label", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "NewOwner", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "resolver", + type: "address", + }, + ], + name: "NewResolver", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint64", + name: "ttl", + type: "uint64", + }, + ], + name: "NewTTL", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "Transfer", + type: "event", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + name: "isApprovedForAll", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "recordExists", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "resolver", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "setApprovalForAll", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "setOwner", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "resolver", + type: "address", + }, + { + internalType: "uint64", + name: "ttl", + type: "uint64", + }, + ], + name: "setRecord", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "address", + name: "resolver", + type: "address", + }, + ], + name: "setResolver", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "label", + type: "bytes32", + }, + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "setSubnodeOwner", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "label", + type: "bytes32", + }, + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "resolver", + type: "address", + }, + { + internalType: "uint64", + name: "ttl", + type: "uint64", + }, + ], + name: "setSubnodeRecord", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "uint64", + name: "ttl", + type: "uint64", + }, + ], + name: "setTTL", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "ttl", + outputs: [ + { + internalType: "uint64", + name: "", + type: "uint64", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, +]; +class ENS__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.ENS__factory = ENS__factory; +ENS__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/IERC165__factory.d.ts b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/IERC165__factory.d.ts new file mode 100644 index 00000000..ba557020 --- /dev/null +++ b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/IERC165__factory.d.ts @@ -0,0 +1,24 @@ +import { type ContractRunner } from "ethers"; +import type { IERC165, IERC165Interface } from "../../../../contracts/@ens/LegacyETHRegistrarController.sol/IERC165"; +export declare class IERC165__factory { + static readonly abi: readonly [{ + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): IERC165Interface; + static connect(address: string, runner?: ContractRunner | null): IERC165; +} +//# sourceMappingURL=IERC165__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/IERC165__factory.d.ts.map b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/IERC165__factory.d.ts.map new file mode 100644 index 00000000..04c825c4 --- /dev/null +++ b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/IERC165__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC165__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/contracts/@ens/LegacyETHRegistrarController.sol/IERC165__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,OAAO,EACP,gBAAgB,EACjB,MAAM,qEAAqE,CAAC;AA0B7E,qBAAa,gBAAgB;IAC3B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,gBAAgB;IAG1C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,OAAO;CAGzE"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/IERC165__factory.js b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/IERC165__factory.js new file mode 100644 index 00000000..edac668d --- /dev/null +++ b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/IERC165__factory.js @@ -0,0 +1,37 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IERC165__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + constant: true, + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, +]; +class IERC165__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IERC165__factory = IERC165__factory; +IERC165__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/IERC721__factory.d.ts b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/IERC721__factory.d.ts new file mode 100644 index 00000000..f828def0 --- /dev/null +++ b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/IERC721__factory.d.ts @@ -0,0 +1,248 @@ +import { type ContractRunner } from "ethers"; +import type { IERC721, IERC721Interface } from "../../../../contracts/@ens/LegacyETHRegistrarController.sol/IERC721"; +export declare class IERC721__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "approved"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Approval"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "ApprovalForAll"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Transfer"; + readonly type: "event"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "approve"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "balanceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "balance"; + readonly type: "uint256"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getApproved"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly name: "isApprovedForAll"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "ownerOf"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly internalType: "bool"; + readonly name: "_approved"; + readonly type: "bool"; + }]; + readonly name: "setApprovalForAll"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "transferFrom"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): IERC721Interface; + static connect(address: string, runner?: ContractRunner | null): IERC721; +} +//# sourceMappingURL=IERC721__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/IERC721__factory.d.ts.map b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/IERC721__factory.d.ts.map new file mode 100644 index 00000000..1bb4576a --- /dev/null +++ b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/IERC721__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC721__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/contracts/@ens/LegacyETHRegistrarController.sol/IERC721__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,OAAO,EACP,gBAAgB,EACjB,MAAM,qEAAqE,CAAC;AAsT7E,qBAAa,gBAAgB;IAC3B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,gBAAgB;IAG1C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,OAAO;CAGzE"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/IERC721__factory.js b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/IERC721__factory.js new file mode 100644 index 00000000..7a0e87d9 --- /dev/null +++ b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/IERC721__factory.js @@ -0,0 +1,321 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IERC721__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "approved", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Approval", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "ApprovalForAll", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Transfer", + type: "event", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "approve", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "balance", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getApproved", + outputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + name: "isApprovedForAll", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "ownerOf", + outputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "safeTransferFrom", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "safeTransferFrom", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "bool", + name: "_approved", + type: "bool", + }, + ], + name: "setApprovalForAll", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "transferFrom", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, +]; +class IERC721__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IERC721__factory = IERC721__factory; +IERC721__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController__factory.d.ts b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController__factory.d.ts new file mode 100644 index 00000000..ecddcbe5 --- /dev/null +++ b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController__factory.d.ts @@ -0,0 +1,464 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, BigNumberish, AddressLike, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../../common"; +import type { LegacyETHRegistrarController, LegacyETHRegistrarControllerInterface } from "../../../../contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController"; +declare type LegacyETHRegistrarControllerConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class LegacyETHRegistrarController__factory extends ContractFactory { + constructor(...args: LegacyETHRegistrarControllerConstructorParams); + getDeployTransaction(_base: AddressLike, _prices: AddressLike, _minCommitmentAge: BigNumberish, _maxCommitmentAge: BigNumberish, overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(_base: AddressLike, _prices: AddressLike, _minCommitmentAge: BigNumberish, _maxCommitmentAge: BigNumberish, overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): LegacyETHRegistrarController__factory; + static readonly bytecode = "0x608060405234801561001057600080fd5b50604051611a13380380611a138339818101604052608081101561003357600080fd5b5080516020820151604080840151606090940151600080546001600160a01b031916331780825592519495939491926001600160a01b0316917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a381811161009d57600080fd5b600180546001600160a01b039586166001600160a01b031991821617909155600280549490951693169290921790925560039190915560045561192e806100e56000396000f3fe60806040526004361061012a5760003560e01c80638d839ffe116100ab578063aeb8ce9b1161006f578063aeb8ce9b146105d7578063ce1e09c014610688578063f14fcbc81461069d578063f2fde38b146106c7578063f49826be146106fa578063f7a16963146107b95761012a565b80638d839ffe1461045d5780638da5cb5b146104725780638f32d59b146104a35780639791c097146104b8578063acf1a841146105695761012a565b80637e324479116100f25780637e324479146102b8578063839df945146102e857806383e7f6ff1461031257806385f6d155146103c55780638a95b09f146104485761012a565b806301ffc9a71461012f5780633ccfd60b146101775780633d86c52f1461018e578063530e784f14610270578063715018a6146102a3575b600080fd5b34801561013b57600080fd5b506101636004803603602081101561015257600080fd5b50356001600160e01b031916610881565b604080519115158252519081900360200190f35b34801561018357600080fd5b5061018c610a12565b005b34801561019a57600080fd5b5061025e600480360360a08110156101b157600080fd5b810190602081018135600160201b8111156101cb57600080fd5b8201836020820111156101dd57600080fd5b803590602001918460018302840111600160201b831117156101fe57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b0383358116945060208401359360408101358216935060600135169050610a53565b60408051918252519081900360200190f35b34801561027c57600080fd5b5061018c6004803603602081101561029357600080fd5b50356001600160a01b0316610b42565b3480156102af57600080fd5b5061018c610ba3565b3480156102c457600080fd5b5061018c600480360360408110156102db57600080fd5b5080359060200135610bfe565b3480156102f457600080fd5b5061025e6004803603602081101561030b57600080fd5b5035610c1a565b34801561031e57600080fd5b5061025e6004803603604081101561033557600080fd5b810190602081018135600160201b81111561034f57600080fd5b82018360208201111561036157600080fd5b803590602001918460018302840111600160201b8311171561038257600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505091359250610c2c915050565b61018c600480360360808110156103db57600080fd5b810190602081018135600160201b8111156103f557600080fd5b82018360208201111561040757600080fd5b803590602001918460018302840111600160201b8311171561042857600080fd5b91935091506001600160a01b038135169060208101359060400135610d9e565b34801561045457600080fd5b5061025e610de9565b34801561046957600080fd5b5061025e610df0565b34801561047e57600080fd5b50610487610df6565b604080516001600160a01b039092168252519081900360200190f35b3480156104af57600080fd5b50610163610e05565b3480156104c457600080fd5b50610163600480360360208110156104db57600080fd5b810190602081018135600160201b8111156104f557600080fd5b82018360208201111561050757600080fd5b803590602001918460018302840111600160201b8311171561052857600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610e16945050505050565b61018c6004803603604081101561057f57600080fd5b810190602081018135600160201b81111561059957600080fd5b8201836020820111156105ab57600080fd5b803590602001918460018302840111600160201b831117156105cc57600080fd5b919350915035610e2b565b3480156105e357600080fd5b50610163600480360360208110156105fa57600080fd5b810190602081018135600160201b81111561061457600080fd5b82018360208201111561062657600080fd5b803590602001918460018302840111600160201b8311171561064757600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610fcf945050505050565b34801561069457600080fd5b5061025e611069565b3480156106a957600080fd5b5061018c600480360360208110156106c057600080fd5b503561106f565b3480156106d357600080fd5b5061018c600480360360208110156106ea57600080fd5b50356001600160a01b03166110a1565b34801561070657600080fd5b5061025e6004803603606081101561071d57600080fd5b810190602081018135600160201b81111561073757600080fd5b82018360208201111561074957600080fd5b803590602001918460018302840111600160201b8311171561076a57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b0383351693505050602001356110bb565b61018c600480360360c08110156107cf57600080fd5b810190602081018135600160201b8111156107e957600080fd5b8201836020820111156107fb57600080fd5b803590602001918460018302840111600160201b8311171561081c57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b038335811694506020840135936040810135935060608101358216925060800135166110d3565b604080517f737570706f727473496e74657266616365286279746573342900000000000000815290519081900360190190206000906001600160e01b0319838116911614806109c05750604080517472656e657728737472696e672c75696e743235362960581b815290519081900360150181209080602861186a8239604080519182900360280182206e636f6d6d697428627974657333322960881b8352905191829003600f01822090925090806026611892823960260190506040518091039020604051808070617661696c61626c6528737472696e672960781b8152506011019050604051809103902060405180807f72656e74507269636528737472696e672c75696e7432353629000000000000008152506019019050604051809103902018181818186001600160e01b031916826001600160e01b031916145b80610a0c5750604051808061182a60409139604080519182900301812091508060426118b8823960420190506040518091039020186001600160e01b031916826001600160e01b031916145b92915050565b610a1a610e05565b610a2357600080fd5b6040513390303180156108fc02916000818181858888f19350505050158015610a50573d6000803e3d6000fd5b50565b845160208601206000906001600160a01b038416158015610a7b57506001600160a01b038316155b15610acb57604080516020808201939093526bffffffffffffffffffffffff19606089901b1681830152605480820188905282518083039091018152607490910190915280519101209050610b39565b6001600160a01b038416610ade57600080fd5b604080516020808201939093526bffffffffffffffffffffffff19606089811b82168385015287811b8216605484015286901b166068820152607c80820188905282518083039091018152609c909101909152805191012090505b95945050505050565b610b4a610e05565b610b5357600080fd5b600280546001600160a01b0319166001600160a01b0383811691909117918290556040519116907ff261845a790fe29bbd6631e2ca4a5bdc83e6eed7c3271d9590d97287e00e912390600090a250565b610bab610e05565b610bb457600080fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b610c06610e05565b610c0f57600080fd5b600391909155600455565b60056020526000908152604090205481565b815160208084019190912060025460015460408051636b727d4360e11b81526004810185905290516000956001600160a01b03948516946350e9a715948a9491169263d6e4fa8692602480840193919291829003018186803b158015610c9157600080fd5b505afa158015610ca5573d6000803e3d6000fd5b505050506040513d6020811015610cbb57600080fd5b50516040516001600160e01b031960e085901b168152602481018290526044810188905260606004820190815283516064830152835189928291608490910190602087019080838360005b83811015610d1e578181015183820152602001610d06565b50505050905090810190601f168015610d4b5780820380516001836020036101000a031916815260200191505b5094505050505060206040518083038186803b158015610d6a57600080fd5b505afa158015610d7e573d6000803e3d6000fd5b505050506040513d6020811015610d9457600080fd5b5051949350505050565b610de285858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250889350879250869150806110d3565b5050505050565b6224ea0081565b60035481565b6000546001600160a01b031690565b6000546001600160a01b0316331490565b60006003610e2383611646565b101592915050565b6000610e6e84848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250869250610c2c915050565b905080341015610e7d57600080fd5b60008484604051808383808284376040805193909101839003832060015463c475abff60e01b855260048501829052602485018b90529151909750600096506001600160a01b03909116945063c475abff93506044808401936020935082900301818787803b158015610eef57600080fd5b505af1158015610f03573d6000803e3d6000fd5b505050506040513d6020811015610f1957600080fd5b5051905034831015610f565760405133903485900380156108fc02916000818181858888f19350505050158015610f54573d6000803e3d6000fd5b505b817f3da24c024582931cfaf8267d8ed24d13a82a8068d5bd337d30ec45cea4e506ae8787868560405180806020018481526020018381526020018281038252868682818152602001925080828437600083820152604051601f909101601f191690920182900397509095505050505050a2505050505050565b80516020820120600090610fe283610e16565b80156110625750600154604080516312dc929d60e31b81526004810184905290516001600160a01b03909216916396e494e891602480820192602092909190829003018186803b15801561103557600080fd5b505afa158015611049573d6000803e3d6000fd5b505050506040513d602081101561105f57600080fd5b50515b9392505050565b60045481565b6004546000828152600560205260409020544291011061108e57600080fd5b6000908152600560205260409020429055565b6110a9610e05565b6110b257600080fd5b610a508161172e565b60006110cb848484600080610a53565b949350505050565b60006110e28787868686610a53565b905060006110f188878461179c565b885160208a01209091508060006001600160a01b038716156114ac5760015460408051633f2891eb60e21b815260048101859052306024820152604481018c905290516001600160a01b039092169163fca247ac916064808201926020929091908290030181600087803b15801561116857600080fd5b505af115801561117c573d6000803e3d6000fd5b505050506040513d602081101561119257600080fd5b505160015460408051630ddf7fcb60e41b815290519293506000926001600160a01b039092169163ddf7fcb091600480820192602092909190829003018186803b1580156111df57600080fd5b505afa1580156111f3573d6000803e3d6000fd5b505050506040513d602081101561120957600080fd5b50516040805160208181019390935280820187905281518082038301815260608201808452815191850191909120600154633f15457f60e01b90925292519294506001600160a01b031692633f15457f92606480840193829003018186803b15801561127457600080fd5b505afa158015611288573d6000803e3d6000fd5b505050506040513d602081101561129e57600080fd5b505160408051630c4b7b8560e11b8152600481018490526001600160a01b038b8116602483015291519190921691631896f70a91604480830192600092919082900301818387803b1580156112f257600080fd5b505af1158015611306573d6000803e3d6000fd5b505050506001600160a01b0387161561139257876001600160a01b031663d5fa2b0082896040518363ffffffff1660e01b815260040180838152602001826001600160a01b03166001600160a01b0316815260200192505050600060405180830381600087803b15801561137957600080fd5b505af115801561138d573d6000803e3d6000fd5b505050505b60015460408051630a3b53db60e21b8152600481018690526001600160a01b038e81166024830152915191909216916328ed4f6c91604480830192600092919082900301818387803b1580156113e757600080fd5b505af11580156113fb573d6000803e3d6000fd5b50505050600160009054906101000a90046001600160a01b03166001600160a01b03166323b872dd308d866040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050600060405180830381600087803b15801561148e57600080fd5b505af11580156114a2573d6000803e3d6000fd5b505050505061154c565b6001600160a01b038616156114c057600080fd5b60015460408051633f2891eb60e21b8152600481018590526001600160a01b038d81166024830152604482018d90529151919092169163fca247ac9160648083019260209291908290030181600087803b15801561151d57600080fd5b505af1158015611531573d6000803e3d6000fd5b505050506040513d602081101561154757600080fd5b505190505b896001600160a01b0316837fca6abbe9d7f11422cb6ca7629fbf6fe9efb1c621f71ce8f02b9f2a230097404f8d87856040518080602001848152602001838152602001828103825285818151815260200191508051906020019080838360005b838110156115c45781810151838201526020016115ac565b50505050905090810190601f1680156115f15780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a3833411156116395760405133903486900380156108fc02916000818181858888f19350505050158015611637573d6000803e3d6000fd5b505b5050505050505050505050565b8051600090819081905b8082101561172557600085838151811061166657fe5b01602001516001600160f81b0319169050600160ff1b81101561168e57600183019250611719565b600760fd1b6001600160f81b0319821610156116af57600283019250611719565b600f60fc1b6001600160f81b0319821610156116d057600383019250611719565b601f60fb1b6001600160f81b0319821610156116f157600483019250611719565b603f60fa1b6001600160f81b03198216101561171257600583019250611719565b6006830192505b50600190920191611650565b50909392505050565b6001600160a01b03811661174157600080fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b600354600082815260056020526040812054909142910111156117be57600080fd5b600454600083815260056020526040902054429101116117dd57600080fd5b6117e684610fcf565b6117ef57600080fd5b600082815260056020526040812081905561180a8585610c2c565b90506224ea0084101561181c57600080fd5b803410156110cb57600080fdfe6d616b65436f6d6d69746d656e7457697468436f6e66696728737472696e672c616464726573732c627974657333322c616464726573732c6164647265737329726567697374657228737472696e672c616464726573732c75696e743235362c62797465733332296d616b65436f6d6d69746d656e7428737472696e672c616464726573732c6279746573333229726567697374657257697468436f6e66696728737472696e672c616464726573732c75696e743235362c627974657333322c616464726573732c6164647265737329a265627a7a72315820ba74b4e49afb22de09a9ebda5d073d93e2a2a7b2530ce50def390c32cac92ea064736f6c634300050c0032"; + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "contract BaseRegistrar"; + readonly name: "_base"; + readonly type: "address"; + }, { + readonly internalType: "contract PriceOracle"; + readonly name: "_prices"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "_minCommitmentAge"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "_maxCommitmentAge"; + readonly type: "uint256"; + }]; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "constructor"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "string"; + readonly name: "name"; + readonly type: "string"; + }, { + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "label"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "cost"; + readonly type: "uint256"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "expires"; + readonly type: "uint256"; + }]; + readonly name: "NameRegistered"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "string"; + readonly name: "name"; + readonly type: "string"; + }, { + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "label"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "cost"; + readonly type: "uint256"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "expires"; + readonly type: "uint256"; + }]; + readonly name: "NameRenewed"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "oracle"; + readonly type: "address"; + }]; + readonly name: "NewPriceOracle"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "previousOwner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "newOwner"; + readonly type: "address"; + }]; + readonly name: "OwnershipTransferred"; + readonly type: "event"; + }, { + readonly constant: true; + readonly inputs: readonly []; + readonly name: "MIN_REGISTRATION_DURATION"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "name"; + readonly type: "string"; + }]; + readonly name: "available"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "commitment"; + readonly type: "bytes32"; + }]; + readonly name: "commit"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly name: "commitments"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly []; + readonly name: "isOwner"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "name"; + readonly type: "string"; + }, { + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "bytes32"; + readonly name: "secret"; + readonly type: "bytes32"; + }]; + readonly name: "makeCommitment"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly payable: false; + readonly stateMutability: "pure"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "name"; + readonly type: "string"; + }, { + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "bytes32"; + readonly name: "secret"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }]; + readonly name: "makeCommitmentWithConfig"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly payable: false; + readonly stateMutability: "pure"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly []; + readonly name: "maxCommitmentAge"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly []; + readonly name: "minCommitmentAge"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly []; + readonly name: "owner"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "name"; + readonly type: "string"; + }, { + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "duration"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes32"; + readonly name: "secret"; + readonly type: "bytes32"; + }]; + readonly name: "register"; + readonly outputs: readonly []; + readonly payable: true; + readonly stateMutability: "payable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "name"; + readonly type: "string"; + }, { + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "duration"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes32"; + readonly name: "secret"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }]; + readonly name: "registerWithConfig"; + readonly outputs: readonly []; + readonly payable: true; + readonly stateMutability: "payable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "name"; + readonly type: "string"; + }, { + readonly internalType: "uint256"; + readonly name: "duration"; + readonly type: "uint256"; + }]; + readonly name: "renew"; + readonly outputs: readonly []; + readonly payable: true; + readonly stateMutability: "payable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly []; + readonly name: "renounceOwnership"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "name"; + readonly type: "string"; + }, { + readonly internalType: "uint256"; + readonly name: "duration"; + readonly type: "uint256"; + }]; + readonly name: "rentPrice"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "_minCommitmentAge"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "_maxCommitmentAge"; + readonly type: "uint256"; + }]; + readonly name: "setCommitmentAges"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "contract PriceOracle"; + readonly name: "_prices"; + readonly type: "address"; + }]; + readonly name: "setPriceOracle"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceID"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly payable: false; + readonly stateMutability: "pure"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "newOwner"; + readonly type: "address"; + }]; + readonly name: "transferOwnership"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "name"; + readonly type: "string"; + }]; + readonly name: "valid"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly payable: false; + readonly stateMutability: "pure"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly []; + readonly name: "withdraw"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): LegacyETHRegistrarControllerInterface; + static connect(address: string, runner?: ContractRunner | null): LegacyETHRegistrarController; +} +export {}; +//# sourceMappingURL=LegacyETHRegistrarController__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController__factory.d.ts.map b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController__factory.d.ts.map new file mode 100644 index 00000000..924c2fd9 --- /dev/null +++ b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"LegacyETHRegistrarController__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,MAAM,EACN,YAAY,EACZ,WAAW,EACX,yBAAyB,EACzB,cAAc,EACf,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,KAAK,EACV,4BAA4B,EAC5B,qCAAqC,EACtC,MAAM,0FAA0F,CAAC;AAqjBlG,aAAK,6CAA6C,GAC9C,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,qCAAsC,SAAQ,eAAe;gBAC5D,GAAG,IAAI,EAAE,6CAA6C;IAQzD,oBAAoB,CAC3B,KAAK,EAAE,WAAW,EAClB,OAAO,EAAE,WAAW,EACpB,iBAAiB,EAAE,YAAY,EAC/B,iBAAiB,EAAE,YAAY,EAC/B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAS5B,MAAM,CACb,KAAK,EAAE,WAAW,EAClB,OAAO,EAAE,WAAW,EACpB,iBAAiB,EAAE,YAAY,EAC/B,iBAAiB,EAAE,YAAY,EAC/B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAUtB,2BAA2B;;IAIjD,OAAO,CACd,MAAM,EAAE,cAAc,GAAG,IAAI,GAC5B,qCAAqC;IAIxC,MAAM,CAAC,QAAQ,CAAC,QAAQ,8iaAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,qCAAqC;IAG/D,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,4BAA4B;CAOhC"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController__factory.js b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController__factory.js new file mode 100644 index 00000000..1d1ab79e --- /dev/null +++ b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController__factory.js @@ -0,0 +1,593 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.LegacyETHRegistrarController__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "contract BaseRegistrar", + name: "_base", + type: "address", + }, + { + internalType: "contract PriceOracle", + name: "_prices", + type: "address", + }, + { + internalType: "uint256", + name: "_minCommitmentAge", + type: "uint256", + }, + { + internalType: "uint256", + name: "_maxCommitmentAge", + type: "uint256", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "string", + name: "name", + type: "string", + }, + { + indexed: true, + internalType: "bytes32", + name: "label", + type: "bytes32", + }, + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "cost", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "expires", + type: "uint256", + }, + ], + name: "NameRegistered", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "string", + name: "name", + type: "string", + }, + { + indexed: true, + internalType: "bytes32", + name: "label", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "cost", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "expires", + type: "uint256", + }, + ], + name: "NameRenewed", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "oracle", + type: "address", + }, + ], + name: "NewPriceOracle", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "previousOwner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnershipTransferred", + type: "event", + }, + { + constant: true, + inputs: [], + name: "MIN_REGISTRATION_DURATION", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "string", + name: "name", + type: "string", + }, + ], + name: "available", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "commitment", + type: "bytes32", + }, + ], + name: "commit", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + name: "commitments", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "isOwner", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "string", + name: "name", + type: "string", + }, + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "bytes32", + name: "secret", + type: "bytes32", + }, + ], + name: "makeCommitment", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "pure", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "string", + name: "name", + type: "string", + }, + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "bytes32", + name: "secret", + type: "bytes32", + }, + { + internalType: "address", + name: "resolver", + type: "address", + }, + { + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "makeCommitmentWithConfig", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "pure", + type: "function", + }, + { + constant: true, + inputs: [], + name: "maxCommitmentAge", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "minCommitmentAge", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "string", + name: "name", + type: "string", + }, + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "uint256", + name: "duration", + type: "uint256", + }, + { + internalType: "bytes32", + name: "secret", + type: "bytes32", + }, + ], + name: "register", + outputs: [], + payable: true, + stateMutability: "payable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "string", + name: "name", + type: "string", + }, + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "uint256", + name: "duration", + type: "uint256", + }, + { + internalType: "bytes32", + name: "secret", + type: "bytes32", + }, + { + internalType: "address", + name: "resolver", + type: "address", + }, + { + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "registerWithConfig", + outputs: [], + payable: true, + stateMutability: "payable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "string", + name: "name", + type: "string", + }, + { + internalType: "uint256", + name: "duration", + type: "uint256", + }, + ], + name: "renew", + outputs: [], + payable: true, + stateMutability: "payable", + type: "function", + }, + { + constant: false, + inputs: [], + name: "renounceOwnership", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "string", + name: "name", + type: "string", + }, + { + internalType: "uint256", + name: "duration", + type: "uint256", + }, + ], + name: "rentPrice", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "_minCommitmentAge", + type: "uint256", + }, + { + internalType: "uint256", + name: "_maxCommitmentAge", + type: "uint256", + }, + ], + name: "setCommitmentAges", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "contract PriceOracle", + name: "_prices", + type: "address", + }, + ], + name: "setPriceOracle", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes4", + name: "interfaceID", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "pure", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "transferOwnership", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "string", + name: "name", + type: "string", + }, + ], + name: "valid", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "pure", + type: "function", + }, + { + constant: false, + inputs: [], + name: "withdraw", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, +]; +const _bytecode = "0x608060405234801561001057600080fd5b50604051611a13380380611a138339818101604052608081101561003357600080fd5b5080516020820151604080840151606090940151600080546001600160a01b031916331780825592519495939491926001600160a01b0316917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a381811161009d57600080fd5b600180546001600160a01b039586166001600160a01b031991821617909155600280549490951693169290921790925560039190915560045561192e806100e56000396000f3fe60806040526004361061012a5760003560e01c80638d839ffe116100ab578063aeb8ce9b1161006f578063aeb8ce9b146105d7578063ce1e09c014610688578063f14fcbc81461069d578063f2fde38b146106c7578063f49826be146106fa578063f7a16963146107b95761012a565b80638d839ffe1461045d5780638da5cb5b146104725780638f32d59b146104a35780639791c097146104b8578063acf1a841146105695761012a565b80637e324479116100f25780637e324479146102b8578063839df945146102e857806383e7f6ff1461031257806385f6d155146103c55780638a95b09f146104485761012a565b806301ffc9a71461012f5780633ccfd60b146101775780633d86c52f1461018e578063530e784f14610270578063715018a6146102a3575b600080fd5b34801561013b57600080fd5b506101636004803603602081101561015257600080fd5b50356001600160e01b031916610881565b604080519115158252519081900360200190f35b34801561018357600080fd5b5061018c610a12565b005b34801561019a57600080fd5b5061025e600480360360a08110156101b157600080fd5b810190602081018135600160201b8111156101cb57600080fd5b8201836020820111156101dd57600080fd5b803590602001918460018302840111600160201b831117156101fe57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b0383358116945060208401359360408101358216935060600135169050610a53565b60408051918252519081900360200190f35b34801561027c57600080fd5b5061018c6004803603602081101561029357600080fd5b50356001600160a01b0316610b42565b3480156102af57600080fd5b5061018c610ba3565b3480156102c457600080fd5b5061018c600480360360408110156102db57600080fd5b5080359060200135610bfe565b3480156102f457600080fd5b5061025e6004803603602081101561030b57600080fd5b5035610c1a565b34801561031e57600080fd5b5061025e6004803603604081101561033557600080fd5b810190602081018135600160201b81111561034f57600080fd5b82018360208201111561036157600080fd5b803590602001918460018302840111600160201b8311171561038257600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505091359250610c2c915050565b61018c600480360360808110156103db57600080fd5b810190602081018135600160201b8111156103f557600080fd5b82018360208201111561040757600080fd5b803590602001918460018302840111600160201b8311171561042857600080fd5b91935091506001600160a01b038135169060208101359060400135610d9e565b34801561045457600080fd5b5061025e610de9565b34801561046957600080fd5b5061025e610df0565b34801561047e57600080fd5b50610487610df6565b604080516001600160a01b039092168252519081900360200190f35b3480156104af57600080fd5b50610163610e05565b3480156104c457600080fd5b50610163600480360360208110156104db57600080fd5b810190602081018135600160201b8111156104f557600080fd5b82018360208201111561050757600080fd5b803590602001918460018302840111600160201b8311171561052857600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610e16945050505050565b61018c6004803603604081101561057f57600080fd5b810190602081018135600160201b81111561059957600080fd5b8201836020820111156105ab57600080fd5b803590602001918460018302840111600160201b831117156105cc57600080fd5b919350915035610e2b565b3480156105e357600080fd5b50610163600480360360208110156105fa57600080fd5b810190602081018135600160201b81111561061457600080fd5b82018360208201111561062657600080fd5b803590602001918460018302840111600160201b8311171561064757600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610fcf945050505050565b34801561069457600080fd5b5061025e611069565b3480156106a957600080fd5b5061018c600480360360208110156106c057600080fd5b503561106f565b3480156106d357600080fd5b5061018c600480360360208110156106ea57600080fd5b50356001600160a01b03166110a1565b34801561070657600080fd5b5061025e6004803603606081101561071d57600080fd5b810190602081018135600160201b81111561073757600080fd5b82018360208201111561074957600080fd5b803590602001918460018302840111600160201b8311171561076a57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b0383351693505050602001356110bb565b61018c600480360360c08110156107cf57600080fd5b810190602081018135600160201b8111156107e957600080fd5b8201836020820111156107fb57600080fd5b803590602001918460018302840111600160201b8311171561081c57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b038335811694506020840135936040810135935060608101358216925060800135166110d3565b604080517f737570706f727473496e74657266616365286279746573342900000000000000815290519081900360190190206000906001600160e01b0319838116911614806109c05750604080517472656e657728737472696e672c75696e743235362960581b815290519081900360150181209080602861186a8239604080519182900360280182206e636f6d6d697428627974657333322960881b8352905191829003600f01822090925090806026611892823960260190506040518091039020604051808070617661696c61626c6528737472696e672960781b8152506011019050604051809103902060405180807f72656e74507269636528737472696e672c75696e7432353629000000000000008152506019019050604051809103902018181818186001600160e01b031916826001600160e01b031916145b80610a0c5750604051808061182a60409139604080519182900301812091508060426118b8823960420190506040518091039020186001600160e01b031916826001600160e01b031916145b92915050565b610a1a610e05565b610a2357600080fd5b6040513390303180156108fc02916000818181858888f19350505050158015610a50573d6000803e3d6000fd5b50565b845160208601206000906001600160a01b038416158015610a7b57506001600160a01b038316155b15610acb57604080516020808201939093526bffffffffffffffffffffffff19606089901b1681830152605480820188905282518083039091018152607490910190915280519101209050610b39565b6001600160a01b038416610ade57600080fd5b604080516020808201939093526bffffffffffffffffffffffff19606089811b82168385015287811b8216605484015286901b166068820152607c80820188905282518083039091018152609c909101909152805191012090505b95945050505050565b610b4a610e05565b610b5357600080fd5b600280546001600160a01b0319166001600160a01b0383811691909117918290556040519116907ff261845a790fe29bbd6631e2ca4a5bdc83e6eed7c3271d9590d97287e00e912390600090a250565b610bab610e05565b610bb457600080fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b610c06610e05565b610c0f57600080fd5b600391909155600455565b60056020526000908152604090205481565b815160208084019190912060025460015460408051636b727d4360e11b81526004810185905290516000956001600160a01b03948516946350e9a715948a9491169263d6e4fa8692602480840193919291829003018186803b158015610c9157600080fd5b505afa158015610ca5573d6000803e3d6000fd5b505050506040513d6020811015610cbb57600080fd5b50516040516001600160e01b031960e085901b168152602481018290526044810188905260606004820190815283516064830152835189928291608490910190602087019080838360005b83811015610d1e578181015183820152602001610d06565b50505050905090810190601f168015610d4b5780820380516001836020036101000a031916815260200191505b5094505050505060206040518083038186803b158015610d6a57600080fd5b505afa158015610d7e573d6000803e3d6000fd5b505050506040513d6020811015610d9457600080fd5b5051949350505050565b610de285858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250889350879250869150806110d3565b5050505050565b6224ea0081565b60035481565b6000546001600160a01b031690565b6000546001600160a01b0316331490565b60006003610e2383611646565b101592915050565b6000610e6e84848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250869250610c2c915050565b905080341015610e7d57600080fd5b60008484604051808383808284376040805193909101839003832060015463c475abff60e01b855260048501829052602485018b90529151909750600096506001600160a01b03909116945063c475abff93506044808401936020935082900301818787803b158015610eef57600080fd5b505af1158015610f03573d6000803e3d6000fd5b505050506040513d6020811015610f1957600080fd5b5051905034831015610f565760405133903485900380156108fc02916000818181858888f19350505050158015610f54573d6000803e3d6000fd5b505b817f3da24c024582931cfaf8267d8ed24d13a82a8068d5bd337d30ec45cea4e506ae8787868560405180806020018481526020018381526020018281038252868682818152602001925080828437600083820152604051601f909101601f191690920182900397509095505050505050a2505050505050565b80516020820120600090610fe283610e16565b80156110625750600154604080516312dc929d60e31b81526004810184905290516001600160a01b03909216916396e494e891602480820192602092909190829003018186803b15801561103557600080fd5b505afa158015611049573d6000803e3d6000fd5b505050506040513d602081101561105f57600080fd5b50515b9392505050565b60045481565b6004546000828152600560205260409020544291011061108e57600080fd5b6000908152600560205260409020429055565b6110a9610e05565b6110b257600080fd5b610a508161172e565b60006110cb848484600080610a53565b949350505050565b60006110e28787868686610a53565b905060006110f188878461179c565b885160208a01209091508060006001600160a01b038716156114ac5760015460408051633f2891eb60e21b815260048101859052306024820152604481018c905290516001600160a01b039092169163fca247ac916064808201926020929091908290030181600087803b15801561116857600080fd5b505af115801561117c573d6000803e3d6000fd5b505050506040513d602081101561119257600080fd5b505160015460408051630ddf7fcb60e41b815290519293506000926001600160a01b039092169163ddf7fcb091600480820192602092909190829003018186803b1580156111df57600080fd5b505afa1580156111f3573d6000803e3d6000fd5b505050506040513d602081101561120957600080fd5b50516040805160208181019390935280820187905281518082038301815260608201808452815191850191909120600154633f15457f60e01b90925292519294506001600160a01b031692633f15457f92606480840193829003018186803b15801561127457600080fd5b505afa158015611288573d6000803e3d6000fd5b505050506040513d602081101561129e57600080fd5b505160408051630c4b7b8560e11b8152600481018490526001600160a01b038b8116602483015291519190921691631896f70a91604480830192600092919082900301818387803b1580156112f257600080fd5b505af1158015611306573d6000803e3d6000fd5b505050506001600160a01b0387161561139257876001600160a01b031663d5fa2b0082896040518363ffffffff1660e01b815260040180838152602001826001600160a01b03166001600160a01b0316815260200192505050600060405180830381600087803b15801561137957600080fd5b505af115801561138d573d6000803e3d6000fd5b505050505b60015460408051630a3b53db60e21b8152600481018690526001600160a01b038e81166024830152915191909216916328ed4f6c91604480830192600092919082900301818387803b1580156113e757600080fd5b505af11580156113fb573d6000803e3d6000fd5b50505050600160009054906101000a90046001600160a01b03166001600160a01b03166323b872dd308d866040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050600060405180830381600087803b15801561148e57600080fd5b505af11580156114a2573d6000803e3d6000fd5b505050505061154c565b6001600160a01b038616156114c057600080fd5b60015460408051633f2891eb60e21b8152600481018590526001600160a01b038d81166024830152604482018d90529151919092169163fca247ac9160648083019260209291908290030181600087803b15801561151d57600080fd5b505af1158015611531573d6000803e3d6000fd5b505050506040513d602081101561154757600080fd5b505190505b896001600160a01b0316837fca6abbe9d7f11422cb6ca7629fbf6fe9efb1c621f71ce8f02b9f2a230097404f8d87856040518080602001848152602001838152602001828103825285818151815260200191508051906020019080838360005b838110156115c45781810151838201526020016115ac565b50505050905090810190601f1680156115f15780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a3833411156116395760405133903486900380156108fc02916000818181858888f19350505050158015611637573d6000803e3d6000fd5b505b5050505050505050505050565b8051600090819081905b8082101561172557600085838151811061166657fe5b01602001516001600160f81b0319169050600160ff1b81101561168e57600183019250611719565b600760fd1b6001600160f81b0319821610156116af57600283019250611719565b600f60fc1b6001600160f81b0319821610156116d057600383019250611719565b601f60fb1b6001600160f81b0319821610156116f157600483019250611719565b603f60fa1b6001600160f81b03198216101561171257600583019250611719565b6006830192505b50600190920191611650565b50909392505050565b6001600160a01b03811661174157600080fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b600354600082815260056020526040812054909142910111156117be57600080fd5b600454600083815260056020526040902054429101116117dd57600080fd5b6117e684610fcf565b6117ef57600080fd5b600082815260056020526040812081905561180a8585610c2c565b90506224ea0084101561181c57600080fd5b803410156110cb57600080fdfe6d616b65436f6d6d69746d656e7457697468436f6e66696728737472696e672c616464726573732c627974657333322c616464726573732c6164647265737329726567697374657228737472696e672c616464726573732c75696e743235362c62797465733332296d616b65436f6d6d69746d656e7428737472696e672c616464726573732c6279746573333229726567697374657257697468436f6e66696728737472696e672c616464726573732c75696e743235362c627974657333322c616464726573732c6164647265737329a265627a7a72315820ba74b4e49afb22de09a9ebda5d073d93e2a2a7b2530ce50def390c32cac92ea064736f6c634300050c0032"; +const isSuperArgs = (xs) => xs.length > 1; +class LegacyETHRegistrarController__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(_base, _prices, _minCommitmentAge, _maxCommitmentAge, overrides) { + return super.getDeployTransaction(_base, _prices, _minCommitmentAge, _maxCommitmentAge, overrides || {}); + } + deploy(_base, _prices, _minCommitmentAge, _maxCommitmentAge, overrides) { + return super.deploy(_base, _prices, _minCommitmentAge, _maxCommitmentAge, overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.LegacyETHRegistrarController__factory = LegacyETHRegistrarController__factory; +LegacyETHRegistrarController__factory.bytecode = _bytecode; +LegacyETHRegistrarController__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/Ownable__factory.d.ts b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/Ownable__factory.d.ts new file mode 100644 index 00000000..ae7e919e --- /dev/null +++ b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/Ownable__factory.d.ts @@ -0,0 +1,72 @@ +import { type ContractRunner } from "ethers"; +import type { Ownable, OwnableInterface } from "../../../../contracts/@ens/LegacyETHRegistrarController.sol/Ownable"; +export declare class Ownable__factory { + static readonly abi: readonly [{ + readonly inputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "constructor"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "previousOwner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "newOwner"; + readonly type: "address"; + }]; + readonly name: "OwnershipTransferred"; + readonly type: "event"; + }, { + readonly constant: true; + readonly inputs: readonly []; + readonly name: "isOwner"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly []; + readonly name: "owner"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly []; + readonly name: "renounceOwnership"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "newOwner"; + readonly type: "address"; + }]; + readonly name: "transferOwnership"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): OwnableInterface; + static connect(address: string, runner?: ContractRunner | null): Ownable; +} +//# sourceMappingURL=Ownable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/Ownable__factory.d.ts.map b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/Ownable__factory.d.ts.map new file mode 100644 index 00000000..d2b1290e --- /dev/null +++ b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/Ownable__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"Ownable__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/contracts/@ens/LegacyETHRegistrarController.sol/Ownable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,OAAO,EACP,gBAAgB,EACjB,MAAM,qEAAqE,CAAC;AAoF7E,qBAAa,gBAAgB;IAC3B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,gBAAgB;IAG1C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,OAAO;CAGzE"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/Ownable__factory.js b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/Ownable__factory.js new file mode 100644 index 00000000..22c7fd01 --- /dev/null +++ b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/Ownable__factory.js @@ -0,0 +1,95 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.Ownable__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [], + payable: false, + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "previousOwner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnershipTransferred", + type: "event", + }, + { + constant: true, + inputs: [], + name: "isOwner", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [], + name: "renounceOwnership", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "transferOwnership", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, +]; +class Ownable__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.Ownable__factory = Ownable__factory; +Ownable__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle__factory.d.ts b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle__factory.d.ts new file mode 100644 index 00000000..9fe6d184 --- /dev/null +++ b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle__factory.d.ts @@ -0,0 +1,32 @@ +import { type ContractRunner } from "ethers"; +import type { PriceOracle, PriceOracleInterface } from "../../../../contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle"; +export declare class PriceOracle__factory { + static readonly abi: readonly [{ + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "name"; + readonly type: "string"; + }, { + readonly internalType: "uint256"; + readonly name: "expires"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "duration"; + readonly type: "uint256"; + }]; + readonly name: "price"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): PriceOracleInterface; + static connect(address: string, runner?: ContractRunner | null): PriceOracle; +} +//# sourceMappingURL=PriceOracle__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle__factory.d.ts.map b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle__factory.d.ts.map new file mode 100644 index 00000000..991bd473 --- /dev/null +++ b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"PriceOracle__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,WAAW,EACX,oBAAoB,EACrB,MAAM,yEAAyE,CAAC;AAoCjF,qBAAa,oBAAoB;IAC/B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,oBAAoB;IAG9C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,WAAW;CAG7E"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle__factory.js b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle__factory.js new file mode 100644 index 00000000..24d6a807 --- /dev/null +++ b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle__factory.js @@ -0,0 +1,47 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.PriceOracle__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + constant: true, + inputs: [ + { + internalType: "string", + name: "name", + type: "string", + }, + { + internalType: "uint256", + name: "expires", + type: "uint256", + }, + { + internalType: "uint256", + name: "duration", + type: "uint256", + }, + ], + name: "price", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, +]; +class PriceOracle__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.PriceOracle__factory = PriceOracle__factory; +PriceOracle__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/Resolver__factory.d.ts b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/Resolver__factory.d.ts new file mode 100644 index 00000000..84aac7e8 --- /dev/null +++ b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/Resolver__factory.d.ts @@ -0,0 +1,555 @@ +import { type ContractRunner } from "ethers"; +import type { Resolver, ResolverInterface } from "../../../../contracts/@ens/LegacyETHRegistrarController.sol/Resolver"; +export declare class Resolver__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "contentType"; + readonly type: "uint256"; + }]; + readonly name: "ABIChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "address"; + readonly name: "a"; + readonly type: "address"; + }]; + readonly name: "AddrChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "coinType"; + readonly type: "uint256"; + }, { + readonly indexed: false; + readonly internalType: "bytes"; + readonly name: "newAddress"; + readonly type: "bytes"; + }]; + readonly name: "AddressChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "bytes32"; + readonly name: "hash"; + readonly type: "bytes32"; + }]; + readonly name: "ContentChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "bytes"; + readonly name: "hash"; + readonly type: "bytes"; + }]; + readonly name: "ContenthashChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "string"; + readonly name: "name"; + readonly type: "string"; + }]; + readonly name: "NameChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "bytes32"; + readonly name: "x"; + readonly type: "bytes32"; + }, { + readonly indexed: false; + readonly internalType: "bytes32"; + readonly name: "y"; + readonly type: "bytes32"; + }]; + readonly name: "PubkeyChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "string"; + readonly name: "indexedKey"; + readonly type: "string"; + }, { + readonly indexed: false; + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }]; + readonly name: "TextChanged"; + readonly type: "event"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "contentTypes"; + readonly type: "uint256"; + }]; + readonly name: "ABI"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "addr"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "coinType"; + readonly type: "uint256"; + }]; + readonly name: "addr"; + readonly outputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "content"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "contenthash"; + readonly outputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "dnsrr"; + readonly outputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes4"; + readonly name: "interfaceID"; + readonly type: "bytes4"; + }]; + readonly name: "interfaceImplementer"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "multihash"; + readonly outputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "name"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }]; + readonly name: "pubkey"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "x"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes32"; + readonly name: "y"; + readonly type: "bytes32"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "contentType"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "setABI"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "coinType"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "a"; + readonly type: "bytes"; + }]; + readonly name: "setAddr"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }]; + readonly name: "setAddr"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes32"; + readonly name: "hash"; + readonly type: "bytes32"; + }]; + readonly name: "setContent"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes"; + readonly name: "hash"; + readonly type: "bytes"; + }]; + readonly name: "setContenthash"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "setDnsrr"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes4"; + readonly name: "interfaceID"; + readonly type: "bytes4"; + }, { + readonly internalType: "address"; + readonly name: "implementer"; + readonly type: "address"; + }]; + readonly name: "setInterface"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes"; + readonly name: "hash"; + readonly type: "bytes"; + }]; + readonly name: "setMultihash"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "string"; + readonly name: "_name"; + readonly type: "string"; + }]; + readonly name: "setName"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes32"; + readonly name: "x"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes32"; + readonly name: "y"; + readonly type: "bytes32"; + }]; + readonly name: "setPubkey"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }, { + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }]; + readonly name: "setText"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceID"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly payable: false; + readonly stateMutability: "pure"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }]; + readonly name: "text"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): ResolverInterface; + static connect(address: string, runner?: ContractRunner | null): Resolver; +} +//# sourceMappingURL=Resolver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/Resolver__factory.d.ts.map b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/Resolver__factory.d.ts.map new file mode 100644 index 00000000..aaae1fdd --- /dev/null +++ b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/Resolver__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"Resolver__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/contracts/@ens/LegacyETHRegistrarController.sol/Resolver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,QAAQ,EACR,iBAAiB,EAClB,MAAM,sEAAsE,CAAC;AA8rB9E,qBAAa,iBAAiB;IAC5B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,iBAAiB;IAG3C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,QAAQ;CAG1E"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/Resolver__factory.js b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/Resolver__factory.js new file mode 100644 index 00000000..a0ac2ad3 --- /dev/null +++ b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/Resolver__factory.js @@ -0,0 +1,713 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.Resolver__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: true, + internalType: "uint256", + name: "contentType", + type: "uint256", + }, + ], + name: "ABIChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "a", + type: "address", + }, + ], + name: "AddrChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "coinType", + type: "uint256", + }, + { + indexed: false, + internalType: "bytes", + name: "newAddress", + type: "bytes", + }, + ], + name: "AddressChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "bytes32", + name: "hash", + type: "bytes32", + }, + ], + name: "ContentChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "bytes", + name: "hash", + type: "bytes", + }, + ], + name: "ContenthashChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "string", + name: "name", + type: "string", + }, + ], + name: "NameChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: false, + internalType: "bytes32", + name: "x", + type: "bytes32", + }, + { + indexed: false, + internalType: "bytes32", + name: "y", + type: "bytes32", + }, + ], + name: "PubkeyChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: true, + internalType: "string", + name: "indexedKey", + type: "string", + }, + { + indexed: false, + internalType: "string", + name: "key", + type: "string", + }, + ], + name: "TextChanged", + type: "event", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "uint256", + name: "contentTypes", + type: "uint256", + }, + ], + name: "ABI", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "addr", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "uint256", + name: "coinType", + type: "uint256", + }, + ], + name: "addr", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "content", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "contenthash", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "dnsrr", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "bytes4", + name: "interfaceID", + type: "bytes4", + }, + ], + name: "interfaceImplementer", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "multihash", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "name", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + ], + name: "pubkey", + outputs: [ + { + internalType: "bytes32", + name: "x", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "y", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "uint256", + name: "contentType", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "setABI", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "uint256", + name: "coinType", + type: "uint256", + }, + { + internalType: "bytes", + name: "a", + type: "bytes", + }, + ], + name: "setAddr", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "setAddr", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "hash", + type: "bytes32", + }, + ], + name: "setContent", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "bytes", + name: "hash", + type: "bytes", + }, + ], + name: "setContenthash", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "setDnsrr", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "bytes4", + name: "interfaceID", + type: "bytes4", + }, + { + internalType: "address", + name: "implementer", + type: "address", + }, + ], + name: "setInterface", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "bytes", + name: "hash", + type: "bytes", + }, + ], + name: "setMultihash", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "string", + name: "_name", + type: "string", + }, + ], + name: "setName", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "x", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "y", + type: "bytes32", + }, + ], + name: "setPubkey", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "string", + name: "key", + type: "string", + }, + { + internalType: "string", + name: "value", + type: "string", + }, + ], + name: "setText", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes4", + name: "interfaceID", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "pure", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + internalType: "string", + name: "key", + type: "string", + }, + ], + name: "text", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, +]; +class Resolver__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.Resolver__factory = Resolver__factory; +Resolver__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/index.d.ts b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/index.d.ts new file mode 100644 index 00000000..c6f13807 --- /dev/null +++ b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/index.d.ts @@ -0,0 +1,9 @@ +export { BaseRegistrar__factory } from "./BaseRegistrar__factory"; +export { ENS__factory } from "./ENS__factory"; +export { IERC165__factory } from "./IERC165__factory"; +export { IERC721__factory } from "./IERC721__factory"; +export { LegacyETHRegistrarController__factory } from "./LegacyETHRegistrarController__factory"; +export { Ownable__factory } from "./Ownable__factory"; +export { PriceOracle__factory } from "./PriceOracle__factory"; +export { Resolver__factory } from "./Resolver__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/index.d.ts.map b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/index.d.ts.map new file mode 100644 index 00000000..8dba62c3 --- /dev/null +++ b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/contracts/@ens/LegacyETHRegistrarController.sol/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,qCAAqC,EAAE,MAAM,yCAAyC,CAAC;AAChG,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/index.js b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/index.js new file mode 100644 index 00000000..e2a609a0 --- /dev/null +++ b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/index.js @@ -0,0 +1,19 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.Resolver__factory = exports.PriceOracle__factory = exports.Ownable__factory = exports.LegacyETHRegistrarController__factory = exports.IERC721__factory = exports.IERC165__factory = exports.ENS__factory = exports.BaseRegistrar__factory = void 0; +var BaseRegistrar__factory_1 = require("./BaseRegistrar__factory"); +Object.defineProperty(exports, "BaseRegistrar__factory", { enumerable: true, get: function () { return BaseRegistrar__factory_1.BaseRegistrar__factory; } }); +var ENS__factory_1 = require("./ENS__factory"); +Object.defineProperty(exports, "ENS__factory", { enumerable: true, get: function () { return ENS__factory_1.ENS__factory; } }); +var IERC165__factory_1 = require("./IERC165__factory"); +Object.defineProperty(exports, "IERC165__factory", { enumerable: true, get: function () { return IERC165__factory_1.IERC165__factory; } }); +var IERC721__factory_1 = require("./IERC721__factory"); +Object.defineProperty(exports, "IERC721__factory", { enumerable: true, get: function () { return IERC721__factory_1.IERC721__factory; } }); +var LegacyETHRegistrarController__factory_1 = require("./LegacyETHRegistrarController__factory"); +Object.defineProperty(exports, "LegacyETHRegistrarController__factory", { enumerable: true, get: function () { return LegacyETHRegistrarController__factory_1.LegacyETHRegistrarController__factory; } }); +var Ownable__factory_1 = require("./Ownable__factory"); +Object.defineProperty(exports, "Ownable__factory", { enumerable: true, get: function () { return Ownable__factory_1.Ownable__factory; } }); +var PriceOracle__factory_1 = require("./PriceOracle__factory"); +Object.defineProperty(exports, "PriceOracle__factory", { enumerable: true, get: function () { return PriceOracle__factory_1.PriceOracle__factory; } }); +var Resolver__factory_1 = require("./Resolver__factory"); +Object.defineProperty(exports, "Resolver__factory", { enumerable: true, get: function () { return Resolver__factory_1.Resolver__factory; } }); diff --git a/dist/types/factories/contracts/@ens/dnssec/DNSRegistrar__factory.d.ts b/dist/types/factories/contracts/@ens/dnssec/DNSRegistrar__factory.d.ts new file mode 100644 index 00000000..0a258226 --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/DNSRegistrar__factory.d.ts @@ -0,0 +1,219 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, AddressLike, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../../common"; +import type { DNSRegistrar, DNSRegistrarInterface } from "../../../../contracts/@ens/dnssec/DNSRegistrar"; +declare type DNSRegistrarConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class DNSRegistrar__factory extends ContractFactory { + constructor(...args: DNSRegistrarConstructorParams); + getDeployTransaction(_dnssec: AddressLike, _suffixes: AddressLike, _ens: AddressLike, overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(_dnssec: AddressLike, _suffixes: AddressLike, _ens: AddressLike, overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): DNSRegistrar__factory; + static readonly bytecode = "0x60806040523480156200001157600080fd5b5060405162001f1438038062001f14833981016040819052620000349162000118565b600080546001600160a01b0319166001600160a01b0385169081179091556040519081527fb3eacd0e351fafdfefdec84e1cd19679b38dbcd63ea7c2c24da17fd2bc3b3c0e9060200160405180910390a1600280546001600160a01b0319166001600160a01b0384169081179091556040519081527f9176b7f47e4504df5e5516c99d90d82ac7cbd49cc77e7f22ba2ac2f2e3a3eba89060200160405180910390a1600180546001600160a01b0319166001600160a01b0392909216919091179055506200016c9050565b6001600160a01b03811681146200011557600080fd5b50565b6000806000606084860312156200012e57600080fd5b83516200013b81620000ff565b60208501519093506200014e81620000ff565b60408501519092506200016181620000ff565b809150509250925092565b611d98806200017c6000396000f3fe608060405234801561001057600080fd5b50600436106100935760003560e01c80633f15457f116100665780633f15457f146101135780637adbf973146101265780637dc0d1d0146101395780638bbedf751461014c578063be27b22c1461015f57600080fd5b806301ffc9a7146100985780631ecfc411146100c0578063224199c2146100d557806330349ebe146100e8575b600080fd5b6100ab6100a6366004611649565b610172565b60405190151581526020015b60405180910390f35b6100d36100ce36600461168b565b6101a9565b005b6100d36100e3366004611890565b6102eb565b6002546100fb906001600160a01b031681565b6040516001600160a01b0390911681526020016100b7565b6001546100fb906001600160a01b031681565b6100d361013436600461168b565b610668565b6000546100fb906001600160a01b031681565b6100d361015a366004611940565b6107a1565b6100d361016d3660046119c8565b61082b565b60006001600160e01b031982166301ffc9a760e01b14806101a357506001600160e01b031982166317d8f49b60e01b145b92915050565b6001546040516302571be360e01b8152600060048201819052916001600160a01b0316906302571be390602401602060405180830381865afa1580156101f3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102179190611a2c565b90506000816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610259573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061027d9190611a2c565b9050336001600160a01b0382161461029457600080fd5b600280546001600160a01b0319166001600160a01b0385169081179091556040519081527f9176b7f47e4504df5e5516c99d90d82ac7cbd49cc77e7f22ba2ac2f2e3a3eba8906020015b60405180910390a1505050565b6000546040516321ae60b160e11b81526001600160a01b039091169063435cc1629061031d9087908790600401611a99565b6000604051808303816000875af115801561033c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526103649190810190611b32565b9250600080600061037588876108ca565b91945092509050336001600160a01b038216146103ef5760405162461bcd60e51b815260206004820152602d60248201527f4f6e6c79206f776e65722063616e2063616c6c2070726f7665416e64436c616960448201526c36abb4ba342932b9b7b63b32b960991b60648201526084015b60405180910390fd5b6001600160a01b038416156105e1576001600160a01b0385166104635760405162461bcd60e51b815260206004820152602660248201527f43616e6e6f74207365742061646472206966207265736f6c766572206973206e6044820152651bdd081cd95d60d21b60648201526084016103e6565b6001546040516305ef2c7f60e41b815260048101859052602481018490523060448201526001600160a01b0387811660648301526000608483015290911690635ef2c7f09060a401600060405180830381600087803b1580156104c557600080fd5b505af11580156104d9573d6000803e3d6000fd5b50505050600083836040516020016104fb929190918252602082015260400190565b60408051808303601f1901815290829052805160209091012062d5fa2b60e81b8252600482018190526001600160a01b03878116602484015290925087169063d5fa2b0090604401600060405180830381600087803b15801561055d57600080fd5b505af1158015610571573d6000803e3d6000fd5b5050600154604051635b0fc9c360e01b8152600481018590526001600160a01b0386811660248301529091169250635b0fc9c39150604401600060405180830381600087803b1580156105c357600080fd5b505af11580156105d7573d6000803e3d6000fd5b505050505061065e565b6001546040516305ef2c7f60e41b815260048101859052602481018490526001600160a01b03838116604483015287811660648301526000608483015290911690635ef2c7f09060a401600060405180830381600087803b15801561064557600080fd5b505af1158015610659573d6000803e3d6000fd5b505050505b5050505050505050565b6001546040516302571be360e01b8152600060048201819052916001600160a01b0316906302571be390602401602060405180830381865afa1580156106b2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106d69190611a2c565b90506000816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610718573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061073c9190611a2c565b9050336001600160a01b0382161461075357600080fd5b600080546001600160a01b0319166001600160a01b0385169081179091556040519081527fb3eacd0e351fafdfefdec84e1cd19679b38dbcd63ea7c2c24da17fd2bc3b3c0e906020016102de565b6000546040516321ae60b160e11b81526001600160a01b039091169063435cc162906107d39085908590600401611a99565b6000604051808303816000875af11580156107f2573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261081a9190810190611b32565b9050610826838261082b565b505050565b600080600061083a85856108ca565b6001546040516306ab592360e01b815260048101859052602481018490526001600160a01b03808416604483015294975092955090935091909116906306ab5923906064016020604051808303816000875af115801561089e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108c29190611ba9565b505050505050565b60008080806108d98682610a85565b60ff1690506108ea86600183610aa9565b9250600061091d6108fc836001611bd8565b6001848a5161090b9190611beb565b6109159190611beb565b899190610acd565b6002546040516327c482cf60e11b81529192506001600160a01b031690634f89059e9061094e908490600401611bfe565b602060405180830381865afa15801561096b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061098f9190611c11565b6109e75760405162461bcd60e51b815260206004820152602360248201527f506172656e74206e616d65206d7573742062652061207075626c6963207375666044820152620ccd2f60eb1b60648201526084016103e6565b6109f2816000610b4f565b600054909550610a0c906001600160a01b03168888610e40565b5060408051602081018890529081018690529093506001600160a01b03841690606001604051602081830303815290604052805190602001207fa2e66ce20e6fb2c4f61339c364ad79f15160cf5307230c8bc4d628adbca2ba3989604051610a749190611bfe565b60405180910390a350509250925092565b6000828281518110610a9957610a99611c33565b016020015160f81c905092915050565b8251600090610ab88385611bd8565b1115610ac357600080fd5b5091016020012090565b8251606090610adc8385611bd8565b1115610ae757600080fd5b60008267ffffffffffffffff811115610b0257610b026116a8565b6040519080825280601f01601f191660200182016040528015610b2c576020820181803683370190505b50905060208082019086860101610b44828287611072565b509095945050505050565b600080610b5c8484610a85565b60ff16905080600003610b735750600090506101a3565b6000610b9385610b838487611bd8565b610b8e906001611bd8565b610b4f565b90506000610bad610ba5866001611bd8565b879085610aa9565b604080516020810185905290810182905290915060600160408051808303601f190181529082905280516020909101206001546302571be360e01b8352600483018290529095506000916001600160a01b03909116906302571be390602401602060405180830381865afa158015610c29573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c4d9190611a2c565b90506001600160a01b0381161580610c6d57506001600160a01b03811630145b610ccc5760405162461bcd60e51b815260206004820152602a60248201527f43616e6e6f7420656e61626c652061206e616d65206f776e656420627920736f6044820152696d656f6e6520656c736560b01b60648201526084016103e6565b6001600160a01b0381163014610e365782610db8576001546040516302571be360e01b8152600060048201819052916001600160a01b0316906302571be390602401602060405180830381865afa158015610d2b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d4f9190611a2c565b60405163232e3b3b60e21b8152600481018590523060248201529091506001600160a01b03821690638cb8ecec90604401600060405180830381600087803b158015610d9a57600080fd5b505af1158015610dae573d6000803e3d6000fd5b5050505050610e36565b6001546040516306ab592360e01b815260048101859052602481018490523060448201526001600160a01b03909116906306ab5923906064016020604051808303816000875af1158015610e10573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e349190611ba9565b505b5050505092915050565b600080610e60604051806040016040528060608152602001600081525090565b610e7885516005610e719190611bd8565b82906110c8565b50604080518082019091526005815264045f656e7360d81b6020820152610ea090829061112d565b50610eab818661112d565b50805160405163021e646f60e21b815260009182916001600160a01b038a169163087991bc91610ee091601091600401611c49565b606060405180830381865afa158015610efd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f219190611c7f565b93509150506bffffffffffffffffffffffff198216158015610f4257508551155b15610f56576000809450945050505061106a565b855160208701206bffffffffffffffffffffffff19838116911614610f7a57600080fd5b6000610f86878261115b565b90505b8051516020820151101561105e57610fb0816080015183610faa9190611cd8565b426111bc565b6110225760405162461bcd60e51b815260206004820152603c60248201527f444e53207265636f7264206973207374616c653b2072656672657368206f722060448201527f64656c657465206974206265666f72652070726f63656564696e672e0000000060648201526084016103e6565b600080611033898460a001516111d5565b92509050811561104e5796506001955061106a945050505050565b505061105981611248565b610f89565b50600080945094505050505b935093915050565b602081106110aa5781518352611089602084611bd8565b9250611096602083611bd8565b91506110a3602082611beb565b9050611072565b905182516020929092036101000a6000190180199091169116179052565b6040805180820190915260608152600060208201526110e8602083611cfc565b15611110576110f8602083611cfc565b611103906020611beb565b61110d9083611bd8565b91505b506020828101829052604080518085526000815290920101905290565b60408051808201909152606081526000602082015261115483846000015151848551611330565b9392505050565b6111a96040518060e001604052806060815260200160008152602001600061ffff168152602001600061ffff168152602001600063ffffffff16815260200160008152602001600081525090565b82815260c081018290526101a381611248565b6000806111c98385611d1e565b60030b12159392505050565b6000805b835183101561123a5760006111ee8585610a85565b60ff1690506111fe600185611bd8565b935060008061120e87878561141a565b92509050811561122657935060019250611241915050565b6112308387611bd8565b95505050506111d9565b5060009050805b9250929050565b60c0810151602082018190528151511161125f5750565b600061127382600001518360200151611476565b82602001516112829190611bd8565b825190915061129190826114d8565b61ffff1660408301526112a5600282611bd8565b82519091506112b490826114d8565b61ffff1660608301526112c8600282611bd8565b82519091506112d79082611500565b63ffffffff1660808301526112ed600482611bd8565b82519091506000906112ff90836114d8565b61ffff169050611310600283611bd8565b60a0840181905291506113238183611bd8565b60c0909301929092525050565b604080518082019091526060815260006020820152825182111561135357600080fd5b60208501516113628386611bd8565b11156113955761139585611385876020015187866113809190611bd8565b61152a565b611390906002611d45565b611541565b6000808651805187602083010193508088870111156113b45787860182525b505050602084015b602084106113f457805182526113d3602083611bd8565b91506113e0602082611bd8565b90506113ed602085611beb565b93506113bc565b51815160001960208690036101000a019081169019919091161790525083949350505050565b6000806114278585611500565b63ffffffff1663613d3078146114425750600090508061106a565b602c8310156114565750600090508061106a565b61146a85611465866004611bd8565b61155e565b91509150935093915050565b6000815b8351811061148a5761148a611d5c565b60006114968583610a85565b60ff1690506114a6816001611bd8565b6114b09083611bd8565b9150806000036114c057506114c6565b5061147a565b6114d08382611beb565b949350505050565b81516000906114e8836002611bd8565b11156114f357600080fd5b50016002015161ffff1690565b8151600090611510836004611bd8565b111561151b57600080fd5b50016004015163ffffffff1690565b60008183111561153b5750816101a3565b50919050565b815161154d83836110c8565b50611558838261112d565b50505050565b60008060288385516115709190611beb565b101561158157506000905080611241565b6000835b611590856028611bd8565b81101561163d5760049190911b9060006115aa8783610a85565b60ff169050603081101580156115c05750603a81105b156115d9576115d0603082611beb565b8317925061162a565b604181101580156115ea5750604781105b156115fa576115d0603782611beb565b6061811015801561160b5750606781105b1561161b576115d0605782611beb565b60008094509450505050611241565b508061163581611d72565b915050611585565b50946001945092505050565b60006020828403121561165b57600080fd5b81356001600160e01b03198116811461115457600080fd5b6001600160a01b038116811461168857600080fd5b50565b60006020828403121561169d57600080fd5b813561115481611673565b634e487b7160e01b600052604160045260246000fd5b6040805190810167ffffffffffffffff811182821017156116e1576116e16116a8565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715611710576117106116a8565b604052919050565b600067ffffffffffffffff821115611732576117326116a8565b50601f01601f191660200190565b600082601f83011261175157600080fd5b813561176461175f82611718565b6116e7565b81815284602083860101111561177957600080fd5b816020850160208301376000918101602001919091529392505050565b600082601f8301126117a757600080fd5b8135602067ffffffffffffffff808311156117c4576117c46116a8565b8260051b6117d38382016116e7565b93845285810183019383810190888611156117ed57600080fd5b84880192505b858310156118845782358481111561180b5760008081fd5b88016040818b03601f19018113156118235760008081fd5b61182b6116be565b878301358781111561183d5760008081fd5b61184b8d8a83870101611740565b8252509082013590868211156118615760008081fd5b61186f8c8984860101611740565b818901528452505091840191908401906117f3565b98975050505050505050565b600080600080600060a086880312156118a857600080fd5b853567ffffffffffffffff808211156118c057600080fd5b6118cc89838a01611740565b965060208801359150808211156118e257600080fd5b6118ee89838a01611796565b9550604088013591508082111561190457600080fd5b5061191188828901611740565b935050606086013561192281611673565b9150608086013561193281611673565b809150509295509295909350565b60008060006060848603121561195557600080fd5b833567ffffffffffffffff8082111561196d57600080fd5b61197987838801611740565b9450602086013591508082111561198f57600080fd5b61199b87838801611796565b935060408601359150808211156119b157600080fd5b506119be86828701611740565b9150509250925092565b600080604083850312156119db57600080fd5b823567ffffffffffffffff808211156119f357600080fd5b6119ff86838701611740565b93506020850135915080821115611a1557600080fd5b50611a2285828601611740565b9150509250929050565b600060208284031215611a3e57600080fd5b815161115481611673565b60005b83811015611a64578181015183820152602001611a4c565b50506000910152565b60008151808452611a85816020860160208601611a49565b601f01601f19169290920160200192915050565b6000604080830181845280865180835260608601915060608160051b8701019250602080890160005b83811015611b1257888603605f1901855281518051888852611ae689890182611a6d565b9185015188830389870152919050611afe8183611a6d565b975050509382019390820190600101611ac2565b505086840381880152505050611b288186611a6d565b9695505050505050565b600060208284031215611b4457600080fd5b815167ffffffffffffffff811115611b5b57600080fd5b8201601f81018413611b6c57600080fd5b8051611b7a61175f82611718565b818152856020838501011115611b8f57600080fd5b611ba0826020830160208601611a49565b95945050505050565b600060208284031215611bbb57600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b808201808211156101a3576101a3611bc2565b818103818111156101a3576101a3611bc2565b6020815260006111546020830184611a6d565b600060208284031215611c2357600080fd5b8151801515811461115457600080fd5b634e487b7160e01b600052603260045260246000fd5b61ffff831681526040602082015260006114d06040830184611a6d565b805163ffffffff81168114611c7a57600080fd5b919050565b600080600060608486031215611c9457600080fd5b611c9d84611c66565b9250611cab60208501611c66565b915060408401516bffffffffffffffffffffffff1981168114611ccd57600080fd5b809150509250925092565b63ffffffff818116838216019080821115611cf557611cf5611bc2565b5092915050565b600082611d1957634e487b7160e01b600052601260045260246000fd5b500690565b600382810b9082900b03637fffffff198112637fffffff821317156101a3576101a3611bc2565b80820281158282048414176101a3576101a3611bc2565b634e487b7160e01b600052600160045260246000fd5b600060018201611d8457611d84611bc2565b506001019056fea164736f6c6343000811000a"; + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "contract DNSSEC"; + readonly name: "_dnssec"; + readonly type: "address"; + }, { + readonly internalType: "contract PublicSuffixList"; + readonly name: "_suffixes"; + readonly type: "address"; + }, { + readonly internalType: "contract ENS"; + readonly name: "_ens"; + readonly type: "address"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "constructor"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "node"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "bytes"; + readonly name: "dnsname"; + readonly type: "bytes"; + }]; + readonly name: "Claim"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "address"; + readonly name: "oracle"; + readonly type: "address"; + }]; + readonly name: "NewOracle"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "address"; + readonly name: "suffixes"; + readonly type: "address"; + }]; + readonly name: "NewPublicSuffixList"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes"; + readonly name: "name"; + readonly type: "bytes"; + }, { + readonly internalType: "bytes"; + readonly name: "proof"; + readonly type: "bytes"; + }]; + readonly name: "claim"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "ens"; + readonly outputs: readonly [{ + readonly internalType: "contract ENS"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "oracle"; + readonly outputs: readonly [{ + readonly internalType: "contract DNSSEC"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes"; + readonly name: "name"; + readonly type: "bytes"; + }, { + readonly components: readonly [{ + readonly internalType: "bytes"; + readonly name: "rrset"; + readonly type: "bytes"; + }, { + readonly internalType: "bytes"; + readonly name: "sig"; + readonly type: "bytes"; + }]; + readonly internalType: "struct DNSSEC.RRSetWithSignature[]"; + readonly name: "input"; + readonly type: "tuple[]"; + }, { + readonly internalType: "bytes"; + readonly name: "proof"; + readonly type: "bytes"; + }]; + readonly name: "proveAndClaim"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes"; + readonly name: "name"; + readonly type: "bytes"; + }, { + readonly components: readonly [{ + readonly internalType: "bytes"; + readonly name: "rrset"; + readonly type: "bytes"; + }, { + readonly internalType: "bytes"; + readonly name: "sig"; + readonly type: "bytes"; + }]; + readonly internalType: "struct DNSSEC.RRSetWithSignature[]"; + readonly name: "input"; + readonly type: "tuple[]"; + }, { + readonly internalType: "bytes"; + readonly name: "proof"; + readonly type: "bytes"; + }, { + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }]; + readonly name: "proveAndClaimWithResolver"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "contract DNSSEC"; + readonly name: "_dnssec"; + readonly type: "address"; + }]; + readonly name: "setOracle"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "contract PublicSuffixList"; + readonly name: "_suffixes"; + readonly type: "address"; + }]; + readonly name: "setPublicSuffixList"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "suffixes"; + readonly outputs: readonly [{ + readonly internalType: "contract PublicSuffixList"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceID"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "pure"; + readonly type: "function"; + }]; + static createInterface(): DNSRegistrarInterface; + static connect(address: string, runner?: ContractRunner | null): DNSRegistrar; +} +export {}; +//# sourceMappingURL=DNSRegistrar__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/DNSRegistrar__factory.d.ts.map b/dist/types/factories/contracts/@ens/dnssec/DNSRegistrar__factory.d.ts.map new file mode 100644 index 00000000..a2010e8d --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/DNSRegistrar__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"DNSRegistrar__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/contracts/@ens/dnssec/DNSRegistrar__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,MAAM,EACN,WAAW,EACX,yBAAyB,EACzB,cAAc,EACf,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,KAAK,EACV,YAAY,EACZ,qBAAqB,EACtB,MAAM,gDAAgD,CAAC;AAsQxD,aAAK,6BAA6B,GAC9B,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,qBAAsB,SAAQ,eAAe;gBAC5C,GAAG,IAAI,EAAE,6BAA6B;IAQzC,oBAAoB,CAC3B,OAAO,EAAE,WAAW,EACpB,SAAS,EAAE,WAAW,EACtB,IAAI,EAAE,WAAW,EACjB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAQ5B,MAAM,CACb,OAAO,EAAE,WAAW,EACpB,SAAS,EAAE,WAAW,EACtB,IAAI,EAAE,WAAW,EACjB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAItB,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,qBAAqB;IAItE,MAAM,CAAC,QAAQ,CAAC,QAAQ,gjfAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,qBAAqB;IAG/C,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,YAAY;CAGhB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/DNSRegistrar__factory.js b/dist/types/factories/contracts/@ens/dnssec/DNSRegistrar__factory.js new file mode 100644 index 00000000..d81619ff --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/DNSRegistrar__factory.js @@ -0,0 +1,290 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.DNSRegistrar__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "contract DNSSEC", + name: "_dnssec", + type: "address", + }, + { + internalType: "contract PublicSuffixList", + name: "_suffixes", + type: "address", + }, + { + internalType: "contract ENS", + name: "_ens", + type: "address", + }, + ], + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "node", + type: "bytes32", + }, + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: false, + internalType: "bytes", + name: "dnsname", + type: "bytes", + }, + ], + name: "Claim", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "oracle", + type: "address", + }, + ], + name: "NewOracle", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "suffixes", + type: "address", + }, + ], + name: "NewPublicSuffixList", + type: "event", + }, + { + inputs: [ + { + internalType: "bytes", + name: "name", + type: "bytes", + }, + { + internalType: "bytes", + name: "proof", + type: "bytes", + }, + ], + name: "claim", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "ens", + outputs: [ + { + internalType: "contract ENS", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "oracle", + outputs: [ + { + internalType: "contract DNSSEC", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes", + name: "name", + type: "bytes", + }, + { + components: [ + { + internalType: "bytes", + name: "rrset", + type: "bytes", + }, + { + internalType: "bytes", + name: "sig", + type: "bytes", + }, + ], + internalType: "struct DNSSEC.RRSetWithSignature[]", + name: "input", + type: "tuple[]", + }, + { + internalType: "bytes", + name: "proof", + type: "bytes", + }, + ], + name: "proveAndClaim", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes", + name: "name", + type: "bytes", + }, + { + components: [ + { + internalType: "bytes", + name: "rrset", + type: "bytes", + }, + { + internalType: "bytes", + name: "sig", + type: "bytes", + }, + ], + internalType: "struct DNSSEC.RRSetWithSignature[]", + name: "input", + type: "tuple[]", + }, + { + internalType: "bytes", + name: "proof", + type: "bytes", + }, + { + internalType: "address", + name: "resolver", + type: "address", + }, + { + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "proveAndClaimWithResolver", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "contract DNSSEC", + name: "_dnssec", + type: "address", + }, + ], + name: "setOracle", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "contract PublicSuffixList", + name: "_suffixes", + type: "address", + }, + ], + name: "setPublicSuffixList", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "suffixes", + outputs: [ + { + internalType: "contract PublicSuffixList", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceID", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "pure", + type: "function", + }, +]; +const _bytecode = "0x60806040523480156200001157600080fd5b5060405162001f1438038062001f14833981016040819052620000349162000118565b600080546001600160a01b0319166001600160a01b0385169081179091556040519081527fb3eacd0e351fafdfefdec84e1cd19679b38dbcd63ea7c2c24da17fd2bc3b3c0e9060200160405180910390a1600280546001600160a01b0319166001600160a01b0384169081179091556040519081527f9176b7f47e4504df5e5516c99d90d82ac7cbd49cc77e7f22ba2ac2f2e3a3eba89060200160405180910390a1600180546001600160a01b0319166001600160a01b0392909216919091179055506200016c9050565b6001600160a01b03811681146200011557600080fd5b50565b6000806000606084860312156200012e57600080fd5b83516200013b81620000ff565b60208501519093506200014e81620000ff565b60408501519092506200016181620000ff565b809150509250925092565b611d98806200017c6000396000f3fe608060405234801561001057600080fd5b50600436106100935760003560e01c80633f15457f116100665780633f15457f146101135780637adbf973146101265780637dc0d1d0146101395780638bbedf751461014c578063be27b22c1461015f57600080fd5b806301ffc9a7146100985780631ecfc411146100c0578063224199c2146100d557806330349ebe146100e8575b600080fd5b6100ab6100a6366004611649565b610172565b60405190151581526020015b60405180910390f35b6100d36100ce36600461168b565b6101a9565b005b6100d36100e3366004611890565b6102eb565b6002546100fb906001600160a01b031681565b6040516001600160a01b0390911681526020016100b7565b6001546100fb906001600160a01b031681565b6100d361013436600461168b565b610668565b6000546100fb906001600160a01b031681565b6100d361015a366004611940565b6107a1565b6100d361016d3660046119c8565b61082b565b60006001600160e01b031982166301ffc9a760e01b14806101a357506001600160e01b031982166317d8f49b60e01b145b92915050565b6001546040516302571be360e01b8152600060048201819052916001600160a01b0316906302571be390602401602060405180830381865afa1580156101f3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102179190611a2c565b90506000816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610259573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061027d9190611a2c565b9050336001600160a01b0382161461029457600080fd5b600280546001600160a01b0319166001600160a01b0385169081179091556040519081527f9176b7f47e4504df5e5516c99d90d82ac7cbd49cc77e7f22ba2ac2f2e3a3eba8906020015b60405180910390a1505050565b6000546040516321ae60b160e11b81526001600160a01b039091169063435cc1629061031d9087908790600401611a99565b6000604051808303816000875af115801561033c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526103649190810190611b32565b9250600080600061037588876108ca565b91945092509050336001600160a01b038216146103ef5760405162461bcd60e51b815260206004820152602d60248201527f4f6e6c79206f776e65722063616e2063616c6c2070726f7665416e64436c616960448201526c36abb4ba342932b9b7b63b32b960991b60648201526084015b60405180910390fd5b6001600160a01b038416156105e1576001600160a01b0385166104635760405162461bcd60e51b815260206004820152602660248201527f43616e6e6f74207365742061646472206966207265736f6c766572206973206e6044820152651bdd081cd95d60d21b60648201526084016103e6565b6001546040516305ef2c7f60e41b815260048101859052602481018490523060448201526001600160a01b0387811660648301526000608483015290911690635ef2c7f09060a401600060405180830381600087803b1580156104c557600080fd5b505af11580156104d9573d6000803e3d6000fd5b50505050600083836040516020016104fb929190918252602082015260400190565b60408051808303601f1901815290829052805160209091012062d5fa2b60e81b8252600482018190526001600160a01b03878116602484015290925087169063d5fa2b0090604401600060405180830381600087803b15801561055d57600080fd5b505af1158015610571573d6000803e3d6000fd5b5050600154604051635b0fc9c360e01b8152600481018590526001600160a01b0386811660248301529091169250635b0fc9c39150604401600060405180830381600087803b1580156105c357600080fd5b505af11580156105d7573d6000803e3d6000fd5b505050505061065e565b6001546040516305ef2c7f60e41b815260048101859052602481018490526001600160a01b03838116604483015287811660648301526000608483015290911690635ef2c7f09060a401600060405180830381600087803b15801561064557600080fd5b505af1158015610659573d6000803e3d6000fd5b505050505b5050505050505050565b6001546040516302571be360e01b8152600060048201819052916001600160a01b0316906302571be390602401602060405180830381865afa1580156106b2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106d69190611a2c565b90506000816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610718573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061073c9190611a2c565b9050336001600160a01b0382161461075357600080fd5b600080546001600160a01b0319166001600160a01b0385169081179091556040519081527fb3eacd0e351fafdfefdec84e1cd19679b38dbcd63ea7c2c24da17fd2bc3b3c0e906020016102de565b6000546040516321ae60b160e11b81526001600160a01b039091169063435cc162906107d39085908590600401611a99565b6000604051808303816000875af11580156107f2573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261081a9190810190611b32565b9050610826838261082b565b505050565b600080600061083a85856108ca565b6001546040516306ab592360e01b815260048101859052602481018490526001600160a01b03808416604483015294975092955090935091909116906306ab5923906064016020604051808303816000875af115801561089e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108c29190611ba9565b505050505050565b60008080806108d98682610a85565b60ff1690506108ea86600183610aa9565b9250600061091d6108fc836001611bd8565b6001848a5161090b9190611beb565b6109159190611beb565b899190610acd565b6002546040516327c482cf60e11b81529192506001600160a01b031690634f89059e9061094e908490600401611bfe565b602060405180830381865afa15801561096b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061098f9190611c11565b6109e75760405162461bcd60e51b815260206004820152602360248201527f506172656e74206e616d65206d7573742062652061207075626c6963207375666044820152620ccd2f60eb1b60648201526084016103e6565b6109f2816000610b4f565b600054909550610a0c906001600160a01b03168888610e40565b5060408051602081018890529081018690529093506001600160a01b03841690606001604051602081830303815290604052805190602001207fa2e66ce20e6fb2c4f61339c364ad79f15160cf5307230c8bc4d628adbca2ba3989604051610a749190611bfe565b60405180910390a350509250925092565b6000828281518110610a9957610a99611c33565b016020015160f81c905092915050565b8251600090610ab88385611bd8565b1115610ac357600080fd5b5091016020012090565b8251606090610adc8385611bd8565b1115610ae757600080fd5b60008267ffffffffffffffff811115610b0257610b026116a8565b6040519080825280601f01601f191660200182016040528015610b2c576020820181803683370190505b50905060208082019086860101610b44828287611072565b509095945050505050565b600080610b5c8484610a85565b60ff16905080600003610b735750600090506101a3565b6000610b9385610b838487611bd8565b610b8e906001611bd8565b610b4f565b90506000610bad610ba5866001611bd8565b879085610aa9565b604080516020810185905290810182905290915060600160408051808303601f190181529082905280516020909101206001546302571be360e01b8352600483018290529095506000916001600160a01b03909116906302571be390602401602060405180830381865afa158015610c29573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c4d9190611a2c565b90506001600160a01b0381161580610c6d57506001600160a01b03811630145b610ccc5760405162461bcd60e51b815260206004820152602a60248201527f43616e6e6f7420656e61626c652061206e616d65206f776e656420627920736f6044820152696d656f6e6520656c736560b01b60648201526084016103e6565b6001600160a01b0381163014610e365782610db8576001546040516302571be360e01b8152600060048201819052916001600160a01b0316906302571be390602401602060405180830381865afa158015610d2b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d4f9190611a2c565b60405163232e3b3b60e21b8152600481018590523060248201529091506001600160a01b03821690638cb8ecec90604401600060405180830381600087803b158015610d9a57600080fd5b505af1158015610dae573d6000803e3d6000fd5b5050505050610e36565b6001546040516306ab592360e01b815260048101859052602481018490523060448201526001600160a01b03909116906306ab5923906064016020604051808303816000875af1158015610e10573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e349190611ba9565b505b5050505092915050565b600080610e60604051806040016040528060608152602001600081525090565b610e7885516005610e719190611bd8565b82906110c8565b50604080518082019091526005815264045f656e7360d81b6020820152610ea090829061112d565b50610eab818661112d565b50805160405163021e646f60e21b815260009182916001600160a01b038a169163087991bc91610ee091601091600401611c49565b606060405180830381865afa158015610efd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f219190611c7f565b93509150506bffffffffffffffffffffffff198216158015610f4257508551155b15610f56576000809450945050505061106a565b855160208701206bffffffffffffffffffffffff19838116911614610f7a57600080fd5b6000610f86878261115b565b90505b8051516020820151101561105e57610fb0816080015183610faa9190611cd8565b426111bc565b6110225760405162461bcd60e51b815260206004820152603c60248201527f444e53207265636f7264206973207374616c653b2072656672657368206f722060448201527f64656c657465206974206265666f72652070726f63656564696e672e0000000060648201526084016103e6565b600080611033898460a001516111d5565b92509050811561104e5796506001955061106a945050505050565b505061105981611248565b610f89565b50600080945094505050505b935093915050565b602081106110aa5781518352611089602084611bd8565b9250611096602083611bd8565b91506110a3602082611beb565b9050611072565b905182516020929092036101000a6000190180199091169116179052565b6040805180820190915260608152600060208201526110e8602083611cfc565b15611110576110f8602083611cfc565b611103906020611beb565b61110d9083611bd8565b91505b506020828101829052604080518085526000815290920101905290565b60408051808201909152606081526000602082015261115483846000015151848551611330565b9392505050565b6111a96040518060e001604052806060815260200160008152602001600061ffff168152602001600061ffff168152602001600063ffffffff16815260200160008152602001600081525090565b82815260c081018290526101a381611248565b6000806111c98385611d1e565b60030b12159392505050565b6000805b835183101561123a5760006111ee8585610a85565b60ff1690506111fe600185611bd8565b935060008061120e87878561141a565b92509050811561122657935060019250611241915050565b6112308387611bd8565b95505050506111d9565b5060009050805b9250929050565b60c0810151602082018190528151511161125f5750565b600061127382600001518360200151611476565b82602001516112829190611bd8565b825190915061129190826114d8565b61ffff1660408301526112a5600282611bd8565b82519091506112b490826114d8565b61ffff1660608301526112c8600282611bd8565b82519091506112d79082611500565b63ffffffff1660808301526112ed600482611bd8565b82519091506000906112ff90836114d8565b61ffff169050611310600283611bd8565b60a0840181905291506113238183611bd8565b60c0909301929092525050565b604080518082019091526060815260006020820152825182111561135357600080fd5b60208501516113628386611bd8565b11156113955761139585611385876020015187866113809190611bd8565b61152a565b611390906002611d45565b611541565b6000808651805187602083010193508088870111156113b45787860182525b505050602084015b602084106113f457805182526113d3602083611bd8565b91506113e0602082611bd8565b90506113ed602085611beb565b93506113bc565b51815160001960208690036101000a019081169019919091161790525083949350505050565b6000806114278585611500565b63ffffffff1663613d3078146114425750600090508061106a565b602c8310156114565750600090508061106a565b61146a85611465866004611bd8565b61155e565b91509150935093915050565b6000815b8351811061148a5761148a611d5c565b60006114968583610a85565b60ff1690506114a6816001611bd8565b6114b09083611bd8565b9150806000036114c057506114c6565b5061147a565b6114d08382611beb565b949350505050565b81516000906114e8836002611bd8565b11156114f357600080fd5b50016002015161ffff1690565b8151600090611510836004611bd8565b111561151b57600080fd5b50016004015163ffffffff1690565b60008183111561153b5750816101a3565b50919050565b815161154d83836110c8565b50611558838261112d565b50505050565b60008060288385516115709190611beb565b101561158157506000905080611241565b6000835b611590856028611bd8565b81101561163d5760049190911b9060006115aa8783610a85565b60ff169050603081101580156115c05750603a81105b156115d9576115d0603082611beb565b8317925061162a565b604181101580156115ea5750604781105b156115fa576115d0603782611beb565b6061811015801561160b5750606781105b1561161b576115d0605782611beb565b60008094509450505050611241565b508061163581611d72565b915050611585565b50946001945092505050565b60006020828403121561165b57600080fd5b81356001600160e01b03198116811461115457600080fd5b6001600160a01b038116811461168857600080fd5b50565b60006020828403121561169d57600080fd5b813561115481611673565b634e487b7160e01b600052604160045260246000fd5b6040805190810167ffffffffffffffff811182821017156116e1576116e16116a8565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715611710576117106116a8565b604052919050565b600067ffffffffffffffff821115611732576117326116a8565b50601f01601f191660200190565b600082601f83011261175157600080fd5b813561176461175f82611718565b6116e7565b81815284602083860101111561177957600080fd5b816020850160208301376000918101602001919091529392505050565b600082601f8301126117a757600080fd5b8135602067ffffffffffffffff808311156117c4576117c46116a8565b8260051b6117d38382016116e7565b93845285810183019383810190888611156117ed57600080fd5b84880192505b858310156118845782358481111561180b5760008081fd5b88016040818b03601f19018113156118235760008081fd5b61182b6116be565b878301358781111561183d5760008081fd5b61184b8d8a83870101611740565b8252509082013590868211156118615760008081fd5b61186f8c8984860101611740565b818901528452505091840191908401906117f3565b98975050505050505050565b600080600080600060a086880312156118a857600080fd5b853567ffffffffffffffff808211156118c057600080fd5b6118cc89838a01611740565b965060208801359150808211156118e257600080fd5b6118ee89838a01611796565b9550604088013591508082111561190457600080fd5b5061191188828901611740565b935050606086013561192281611673565b9150608086013561193281611673565b809150509295509295909350565b60008060006060848603121561195557600080fd5b833567ffffffffffffffff8082111561196d57600080fd5b61197987838801611740565b9450602086013591508082111561198f57600080fd5b61199b87838801611796565b935060408601359150808211156119b157600080fd5b506119be86828701611740565b9150509250925092565b600080604083850312156119db57600080fd5b823567ffffffffffffffff808211156119f357600080fd5b6119ff86838701611740565b93506020850135915080821115611a1557600080fd5b50611a2285828601611740565b9150509250929050565b600060208284031215611a3e57600080fd5b815161115481611673565b60005b83811015611a64578181015183820152602001611a4c565b50506000910152565b60008151808452611a85816020860160208601611a49565b601f01601f19169290920160200192915050565b6000604080830181845280865180835260608601915060608160051b8701019250602080890160005b83811015611b1257888603605f1901855281518051888852611ae689890182611a6d565b9185015188830389870152919050611afe8183611a6d565b975050509382019390820190600101611ac2565b505086840381880152505050611b288186611a6d565b9695505050505050565b600060208284031215611b4457600080fd5b815167ffffffffffffffff811115611b5b57600080fd5b8201601f81018413611b6c57600080fd5b8051611b7a61175f82611718565b818152856020838501011115611b8f57600080fd5b611ba0826020830160208601611a49565b95945050505050565b600060208284031215611bbb57600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b808201808211156101a3576101a3611bc2565b818103818111156101a3576101a3611bc2565b6020815260006111546020830184611a6d565b600060208284031215611c2357600080fd5b8151801515811461115457600080fd5b634e487b7160e01b600052603260045260246000fd5b61ffff831681526040602082015260006114d06040830184611a6d565b805163ffffffff81168114611c7a57600080fd5b919050565b600080600060608486031215611c9457600080fd5b611c9d84611c66565b9250611cab60208501611c66565b915060408401516bffffffffffffffffffffffff1981168114611ccd57600080fd5b809150509250925092565b63ffffffff818116838216019080821115611cf557611cf5611bc2565b5092915050565b600082611d1957634e487b7160e01b600052601260045260246000fd5b500690565b600382810b9082900b03637fffffff198112637fffffff821317156101a3576101a3611bc2565b80820281158282048414176101a3576101a3611bc2565b634e487b7160e01b600052600160045260246000fd5b600060018201611d8457611d84611bc2565b506001019056fea164736f6c6343000811000a"; +const isSuperArgs = (xs) => xs.length > 1; +class DNSRegistrar__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(_dnssec, _suffixes, _ens, overrides) { + return super.getDeployTransaction(_dnssec, _suffixes, _ens, overrides || {}); + } + deploy(_dnssec, _suffixes, _ens, overrides) { + return super.deploy(_dnssec, _suffixes, _ens, overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.DNSRegistrar__factory = DNSRegistrar__factory; +DNSRegistrar__factory.bytecode = _bytecode; +DNSRegistrar__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl__factory.d.ts b/dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl__factory.d.ts new file mode 100644 index 00000000..1ba8b418 --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl__factory.d.ts @@ -0,0 +1,375 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, BytesLike, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../../../common"; +import type { DNSSECImpl, DNSSECImplInterface } from "../../../../../contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl"; +declare type DNSSECImplConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class DNSSECImpl__factory extends ContractFactory { + constructor(...args: DNSSECImplConstructorParams); + getDeployTransaction(_anchors: BytesLike, overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(_anchors: BytesLike, overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): DNSSECImpl__factory; + static readonly bytecode = "0x60806040523480156200001157600080fd5b506040516200320d3803806200320d83398101604081905262000034916200018f565b600180546001600160a01b031916331790556000620000548282620002f3565b5060408051606081018252600080825263e090bba0602083015282519192830191620000819190620003bf565b60408051918290039091206001600160601b031916909152602b60009081527fc92a43746f20f69898978a3075767b860ba247ac0639d1831bf8c942c5db2389602090815283517f95c6356c1b7a542b884d2484ef785c9c7224e77e1016c20007bddc15c23b452f8054928601519585015160601c6801000000000000000002600160401b600160e01b031963ffffffff978816640100000000026001600160401b03199095169790931696909617929092171693909317909255517f55ced933cdd5a34dd03eb5d4bef19ec6ebb251dcd7a988eee0c1b9a13baaa88b916200016a916200043d565b60405180910390a150620004e5565b634e487b7160e01b600052604160045260246000fd5b60006020808385031215620001a357600080fd5b82516001600160401b0380821115620001bb57600080fd5b818501915085601f830112620001d057600080fd5b815181811115620001e557620001e562000179565b604051601f8201601f19908116603f0116810190838211818310171562000210576200021062000179565b8160405282815288868487010111156200022957600080fd5b600093505b828410156200024d57848401860151818501870152928501926200022e565b600086848301015280965050505050505092915050565b600181811c908216806200027957607f821691505b6020821081036200029a57634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620002ee57600081815260208120601f850160051c81016020861015620002c95750805b601f850160051c820191505b81811015620002ea57828155600101620002d5565b5050505b505050565b81516001600160401b038111156200030f576200030f62000179565b620003278162000320845462000264565b84620002a0565b602080601f8311600181146200035f5760008415620003465750858301515b600019600386901b1c1916600185901b178555620002ea565b600085815260208120601f198616915b8281101562000390578886015182559484019460019091019084016200036f565b5085821015620003af5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6000808354620003cf8162000264565b60018281168015620003ea5760018114620004005762000431565b60ff198416875282151583028701945062000431565b8760005260208060002060005b85811015620004285781548a8201529084019082016200040d565b50505082870194505b50929695505050505050565b604081526000600180604084015260006060840152602060808185015260008554620004698162000264565b80608088015260a0858316600081146200048c5760018114620004a757620004d7565b60ff1984168983015282151560051b890182019450620004d7565b896000528560002060005b84811015620004cf5781548b8201850152908801908701620004b2565b8a0183019550505b509298975050505050505050565b612d1880620004f56000396000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c806373cc48a61161008c57806398d35f201161006657806398d35f201461021c578063bd7ed31a14610224578063c327deef1461024d578063d7b82ebe1461027657600080fd5b806373cc48a6146101b55780638438dc04146101f65780638da5cb5b1461020957600080fd5b806313af4035116100c857806313af40351461015c57806328e7677d1461016f5780632c095cbb14610182578063435cc1621461019557600080fd5b8063020ed8d3146100ef578063087991bc146101045780630b1a249514610149575b600080fd5b6101026100fd3660046123fa565b610289565b005b61011761011236600461248c565b61030b565b6040805163ffffffff94851681529390921660208401526001600160601b031916908201526060015b60405180910390f35b610102610157366004612620565b61037b565b61010261016a3660046126de565b6104ef565b61010261017d3660046123fa565b610528565b6101026101903660046126fb565b6105a2565b6101a86101a3366004612794565b610673565b60405161014091906128b8565b6101de6101c33660046128cb565b6004602052600090815260409020546001600160a01b031681565b6040516001600160a01b039091168152602001610140565b6101026102043660046123fa565b6106fb565b6001546101de906001600160a01b031681565b6101a8610775565b6101de6102323660046128cb565b6005602052600090815260409020546001600160a01b031681565b6101de61025b3660046128cb565b6003602052600090815260409020546001600160a01b031681565b6101a86102843660046128e6565b610803565b6001546001600160a01b031633146102a057600080fd5b60ff821660008181526003602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527ff73c3c226af96b7f1ba666a21b3ceaf2be3ee6a365e3178fd9cd1eaae0075aa891015b60405180910390a15050565b60008060008060026000878760405161032592919061294a565b60408051918290039091208252602080830193909352908101600090812061ffff8b16825290925290205463ffffffff80821695506401000000008204169350600160401b900460601b91505093509350939050565b8351602080860191909120600090815260028252604080822061ffff891683529092529081205463ffffffff16906103b38584610818565b90506103c08187846108be565b6103c861232b565b845151156103e7576103da8585610818565b90506103e78188856108be565b60006103f283610904565b602081015190915060fe161561040757600080fd5b610412816027610963565b1580156104375750610425816002610963565b15806104375750610437816006610963565b61044057600080fd5b610451898985610120015184610975565b1561048d5787516020808a0191909120600090815260028252604080822061ffff8d1683529092522080546001600160e01b03191690556104e4565b6104ac88846101200151838561012001516104a787610904565b6109a5565b156100ea5787516020808a0191909120600090815260028252604080822061ffff8d1683529092522080546001600160e01b03191690555b505050505050505050565b6001546001600160a01b0316331461050657600080fd5b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6001546001600160a01b0316331461053f57600080fd5b60ff821660008181526004602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527f2fcc274c3b72dd483ab201bfa87295e3817e8b9b10693219873b722ca1af00c791016102ff565b6105aa61232b565b6105b48383610818565b805190915061ffff16602f146105c957600080fd5b60a08101518451602080870191909120600090815260028252604080822061ffff8a1683529092522054610603919063ffffffff16610ac0565b61060c57600080fd5b600061061782610ad9565b9050805151602082015110156100ea57610638818361012001518789610af1565b50508251602080850191909120600090815260028252604080822061ffff881683529092522080546001600160e01b03191690555b50505050565b6060600083838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201829052509394505050505b85518110156106f0576106dc8682815181106106ce576106ce61295a565b602002602001015183610c9f565b9150806106e881612986565b9150506106b0565b5090505b9392505050565b6001546001600160a01b0316331461071257600080fd5b60ff821660008181526005602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527fc7eec866a7a1386188cc3ca20ffea75b71bd3e90a60b6791b1d3f0971145118d91016102ff565b600080546107829061299f565b80601f01602080910402602001604051908101604052809291908181526020018280546107ae9061299f565b80156107fb5780601f106107d0576101008083540402835291602001916107fb565b820191906000526020600020905b8154815290600101906020018083116107de57829003601f168201915b505050505081565b606061080f8383610c9f565b90505b92915050565b61082061232b565b825161082b90610e1e565b905061083b8160e0015183610f18565b61084457600080fd5b6000610854828360000151610f80565b604083015190915060ff1661086a82600061102e565b1461087457600080fd5b6101208201819052608082015161088b9042610ac0565b61089457600080fd5b6108a2428360a00151610ac0565b6108ab57600080fd5b6108b78183868661108b565b5092915050565b6108cc8360a0015182610ac0565b6108d557600080fd5b825161ffff166032146108e757600080fd5b6108f683610120015183611170565b6108ff57600080fd5b505050565b6040805160c08101825260008082526020820181905291810182905260608082018190526080820183905260a08201529061093e83610ad9565b60a081015160c08201519192506106f49161095a9082906129d3565b835191906111de565b600061080f8360a00151600084611325565b600061098282848661143a565b15610999576109918286610963565b15905061099d565b5060005b949350505050565b602081015160009060fe16156109ba57600080fd5b60006109c586611461565b905060006109d285611461565b90506000806109e18a8261147d565b6109ec9060016129e6565b60ff1690505b8951811015610aae5783610a1e89610a1984858f51610a1191906129d3565b8f91906114a1565b611523565b03610a82576000610a3a87610a1985868f51610a1191906129d3565b90508660800151841015610a66578381118015610a5a5750866080015181105b95505050505050610ab7565b83811180610a5a57508660800151811095505050505050610ab7565b905080610a8f8a8261147d565b610a9a9060016129e6565b610aa79060ff16826129ff565b90506109f2565b50600093505050505b95945050505050565b600080610acd8385612a12565b60030b12159392505050565b610ae1612381565b61081282610100015160006115af565b60a08401518451600090610b0590836115ca565b905060008660a001518760c00151610b1d91906129d3565b9050818111610b2b57600080fd5b6000610b378688611624565b905080600003610b6657610b57610b4e84866129ff565b89519087611325565b15610b6157600080fd5b610bad565b8751600090610b769086866114a1565b905060008213610b8557600080fd5b6000610b918983611624565b12156104e4576000610ba38883611624565b126104e457600080fd5b5050505050505050565b60c08101516020820181905281515111610bce5750565b6000610be2826000015183602001516115ca565b8260200151610bf191906129ff565b8251909150610c00908261177d565b61ffff166040830152610c146002826129ff565b8251909150610c23908261177d565b61ffff166060830152610c376002826129ff565b8251909150610c4690826117a5565b63ffffffff166080830152610c5c6004826129ff565b8251909150600090610c6e908361177d565b61ffff169050610c7f6002836129ff565b60a084018190529150610c9281836129ff565b60c0909301929092525050565b6060610ca961232b565b610cb38484610818565b61012081015180516020918201206000908152600282526040808220845161ffff16835290925220805491925090600160401b900460601b6001600160601b03191615610d1a5760a08201518154610d11919063ffffffff16610ac0565b610d1a57600080fd5b604080516060808201835260a085015163ffffffff9081168352608086015181166020808501918252610100880180518051908301206001600160601b0319168688019081526101208a0180518051908501206000908152600285528981208c5161ffff16825290945292889020965187549451915190961c600160401b0268010000000000000000600160e01b03199186166401000000000267ffffffffffffffff19909516969095169590951792909217939093169190911790925551905191517f55ced933cdd5a34dd03eb5d4bef19ec6ebb251dcd7a988eee0c1b9a13baaa88b92610e099291612a39565b60405180910390a15061010001519392505050565b610e2661232b565b610e3182600061177d565b61ffff168152610e4282600261147d565b60ff166020820152610e5582600361147d565b60ff166040820152610e688260046117a5565b63ffffffff9081166060830152610e849083906008906117a516565b63ffffffff9081166080830152610ea0908390600c906117a516565b63ffffffff90811660a0830152610ebc90839060109061177d16565b61ffff1660c0820152610ed08260126117cf565b60e0820181905251610f0d90610ee79060126129ff565b8260e001515160128551610efb91906129d3565b610f0591906129d3565b8491906114a1565b610100820152919050565b600080610f2f610f2884836115ca565b849061177d565b8351602080860191909120865187830120600090815260028352604080822061ffff90951682529390925291902054600160401b900460601b6001600160601b031990811691161491505092915050565b60606000610f8d84610ad9565b90505b805151602082015110156108b757606081015161ffff16600114610fb357600080fd5b8151600003610fcc57610fc5816117ea565b9150611008565b60208101518151610fdc916115ca565b825114610fe857600080fd5b805160208201518351610fff92859260009261180b565b61100857600080fd5b8261ffff16816040015161ffff161461102057600080fd5b61102981610bb7565b610f90565b6000805b8351831061104257611042612a5e565b600061104e858561147d565b60ff16905061105e8160016129ff565b61106890856129ff565b935080600003611078575061080f565b6110836001836129ff565b915050611032565b83518360e0015151111561109e57600080fd5b6110c36000858560e001515187516110b691906129d3565b60e087015192919061182e565b6110cc57600080fd5b60006110d882826115af565b9050602b61ffff16816040015161ffff1603611107576110f9848483611863565b61110257600080fd5b611169565b603061ffff16816040015161ffff1603611126576110f98484836118fc565b60405162461bcd60e51b8152602060048201526014602482015273139bc81d985b1a59081c1c9bdbd988199bdd5b9960621b604482015260640160405180910390fd5b5050505050565b60008061117d848261147d565b6111889060016129e6565b60ff16905060005b8351811015610999576111a58482878561182e565b156111b557600192505050610812565b6111bf848261147d565b6111ca9060016129e6565b6111d79060ff16826129ff565b9050611190565b6040805160c08101825260008082526020820181905291810182905260608082018190526080820183905260a08201529061121983856129ff565b90506112306112296000866129ff565b869061147d565b60ff1682526112436112296001866129ff565b60ff1660208301526112606112596002866129ff565b869061177d565b61ffff16604083015260006112806112796004876129ff565b879061147d565b905061128d6005866129ff565b945061129d868660ff84166114a1565b60608401526112af60ff8216866129ff565b945060006112bd878761147d565b905060208160ff1611156112d057600080fd5b6112db6001876129ff565b95506112eb878760ff84166119a4565b60808501526112fd60ff8216876129ff565b95506113158661130d81866129d3565b8991906114a1565b60a0850152509195945050505050565b600060ff600883811c821691839161133e918616612a8a565b90506000611350600780871690612aab565b600160ff919091161b9050855b875181101561142c576000611372898361147d565b9050600061138b6113848460016129ff565b8b9061147d565b90508160ff168660ff1610156113aa57600096505050505050506106f4565b8160ff168660ff160361140b578460ff168160ff16116113d357600096505050505050506106f4565b836113f66113e460ff8816866129ff565b6113ef9060026129ff565b8c9061147d565b1660ff166000141596505050505050506106f4565b6114168160026129e6565b6114239060ff16846129ff565b9250505061135d565b506000979650505050505050565b6000806114478584611523565b9050600061145485611461565b9190911495945050505050565b60006108126001611472848461147d565b84919060ff166119e5565b60008282815181106114915761149161295a565b016020015160f81c905092915050565b82516060906114b083856129ff565b11156114bb57600080fd5b60008267ffffffffffffffff8111156114d6576114d66124df565b6040519080825280601f01601f191660200182016040528015611500576020820181803683370190505b50905060208082019086860101611518828287611bfd565b509095945050505050565b815160ff1660009081526005602052604080822054606085015182860151925163347ced5960e11b81526001600160a01b03909216926368f9dab29261156e92918791600401612ac4565b602060405180830381865afa15801561158b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061080f9190612afe565b6115b7612381565b82815260c0810182905261081281610bb7565b6000815b835181106115de576115de612a5e565b60006115ea858361147d565b60ff1690506115fa8160016129ff565b61160490836129ff565b915080600003611614575061161a565b506115ce565b61099d83826129d3565b60006116308383611c53565b1561163d57506000610812565b600080600080600061165088600061102e565b9050600061165f88600061102e565b90505b8082111561168b578593506116778987611c71565b95508161168381612b17565b925050611662565b818111156116b4578492506116a08886611c71565b9450806116ac81612b17565b91505061168b565b6000821180156116cd57506116cb89878a8861182e565b155b15611702578593506116df8987611c71565b95508492506116ee8886611c71565b94506116fb6001836129d3565b91506116b4565b8560000361171a576000199650505050505050610812565b846000036117315760019650505050505050610812565b61177061173f8560016129ff565b6117498b8761147d565b60ff168a6117588760016129ff565b6117628d8961147d565b8e949392919060ff16611c95565b9998505050505050505050565b815160009061178d8360026129ff565b111561179857600080fd5b50016002015161ffff1690565b81516000906117b58360046129ff565b11156117c057600080fd5b50016004015163ffffffff1690565b606060006117dd84846115ca565b905061099d8484836114a1565b602081015181516060916108129161180290826115ca565b845191906114a1565b6000611818848484611d8a565b611823878785611d8a565b149695505050505050565b6000611847838384865161184291906129d3565b611d8a565b611859868687895161184291906129d3565b1495945050505050565b60008061186f85610ad9565b90505b8051516020820151101561099957604081015161ffff1660301461189557600080fd5b60006118a082611dae565b905060006118bb6000835184611dca9092919063ffffffff16565b90506118c981838989611e68565b156118ec576118e26118da846117ea565b868385611f6d565b93505050506106f4565b50506118f781610bb7565b611872565b60006119158460e0015161190f846117ea565b90611c53565b61191e57600080fd5b8151516020830151101561199a5761193d8460e0015161190f846117ea565b61194657600080fd5b600061195183611dae565b9050600061196c6000835184611dca9092919063ffffffff16565b905061197a81838888611e68565b1561198a576001925050506106f4565b505061199582610bb7565b61191e565b5060009392505050565b600060208211156119b457600080fd5b83516119c083856129ff565b11156119cb57600080fd5b506020919092018101519190036101000a60001901191690565b600060348211156119f557600080fd5b600080805b84811015611ae157600087611a0f83896129ff565b81518110611a1f57611a1f61295a565b01602001516001600160f81b0319169050600360fc1b8110801590611a525750603d60f91b6001600160f81b0319821611155b611a5b57600080fd5b604051806080016040528060478152602001612cc560479139611a83603060f884901c6129d3565b81518110611a9357611a9361295a565b0160209081015160f81c9350831115611aab57600080fd5b611ab66001876129d3565b8203611ac25750611ae1565b5060059290921b60ff8216179180611ad981612986565b9150506119fa565b506000611aef856005612b2e565b9050611afc600886612b45565b600003611b14578160ff16600584901b179250611be3565b611b1f600886612b45565b600203611b4d5760028260ff16901c60ff16600384901b179250600281611b4691906129d3565b9050611be3565b611b58600886612b45565b600403611b7f5760048260ff16901c60ff16600184901b179250600481611b4691906129d3565b611b8a600886612b45565b600503611bb15760018260ff16901c60ff16600484901b179250600181611b4691906129d3565b611bbc600886612b45565b6007036100ea5760038260ff16901c60ff16600284901b179250600381611b4691906129d3565b611bef816101006129d3565b9290921b9695505050505050565b60208110611c355781518352611c146020846129ff565b9250611c216020836129ff565b9150611c2e6020826129d3565b9050611bfd565b905182516020929092036101000a6000190180199091169116179052565b60008151835114801561080f575061080f836000846000875161180b565b6000611c7d838361147d565b60ff16611c8b8360016129ff565b61080f91906129ff565b60008480831015611ca35750815b60208789018101908587010160005b83811015611d6f5782518251808214611d3f5760006020871115611cd95750600019611d15565b600184611ce78960206129d3565b611cf191906129ff565b611cfc906008612b2e565b611d07906002612c3d565b611d1191906129d3565b1990505b6000611d25838316858416612c49565b90508015611d3c579750611d809650505050505050565b50505b611d4a6020866129ff565b9450611d576020856129ff565b93505050602081611d6891906129ff565b9050611cb2565b50611d7a8589612c49565b93505050505b9695505050505050565b8251600090611d9983856129ff565b1115611da457600080fd5b5091016020012090565b60a081015160c0820151606091610812916118029082906129d3565b6040805160808101825260008082526020820181905291810191909152606080820152611e02611dfb6000856129ff565b859061177d565b61ffff168152611e1d611e166002856129ff565b859061147d565b60ff166020820152611e33611e166003856129ff565b60ff166040820152611e5c611e496004856129ff565b611e546004856129d3565b8691906114a1565b60608201529392505050565b6000846020015160ff16600314611e815750600061099d565b826020015160ff16856040015160ff1614611e9e5750600061099d565b6000611ea98561206e565b90508360c0015161ffff168161ffff1614611ec857600091505061099d565b855161010016600003611edf57600091505061099d565b60408087015160ff166000908152600360209081529082902054855191860151925163de8f50a160e01b81526001600160a01b039091169263de8f50a192611f2c928a9290600401612c69565b602060405180830381865afa158015611f49573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d809190612ca2565b600080611f798361206e565b90505b845151602086015110156120625760a085015160c0860151600091611faf91611fa69082906129d3565b88519190611dca565b90508161ffff16816000015161ffff1614611fca5750612054565b846040015160ff16816020015160ff1614611fe55750612054565b6040805180820190915260608152600060208201526120128551895161200b91906129ff565b82906120db565b5061201d8189612140565b506120288186612140565b50612040826040015182600001518460600151612167565b15612051576001935050505061099d565b50505b61205d85610bb7565b611f7c565b50600095945050505050565b60008060005b83518110156120cc57600181161561209857612090848261147d565b60ff166120aa565b60086120a4858361147d565b60ff16901b5b6120b89061ffff16836129ff565b9150806120c481612986565b915050612074565b506106f4601082901c826129ff565b6040805180820190915260608152600060208201526120fb602083612b45565b156121235761210b602083612b45565b6121169060206129d3565b61212090836129ff565b91505b506020828101829052604080518085526000815290920101905290565b60408051808201909152606081526000602082015261080f83846000015151848551612213565b60ff83166000908152600460205260408120546001600160a01b031661218f575060006106f4565b60ff8416600090815260046020819052604091829020549151637bf41d7760e11b81526001600160a01b039092169163f7e83aee916121d2918791879101612a39565b602060405180830381865afa1580156121ef573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061099d9190612ca2565b604080518082019091526060815260006020820152825182111561223657600080fd5b602085015161224583866129ff565b111561227857612278856122688760200151878661226391906129ff565b6122fd565b612273906002612b2e565b612314565b6000808651805187602083010193508088870111156122975787860182525b505050602084015b602084106122d757805182526122b66020836129ff565b91506122c36020826129ff565b90506122d06020856129d3565b935061229f565b51815160001960208690036101000a019081169019919091161790525083949350505050565b60008183111561230e575081610812565b50919050565b815161232083836120db565b5061066d8382612140565b604080516101408101825260008082526020820181905291810182905260608082018390526080820183905260a0820183905260c082019290925260e08101829052610100810182905261012081019190915290565b6040518060e001604052806060815260200160008152602001600061ffff168152602001600061ffff168152602001600063ffffffff16815260200160008152602001600081525090565b803560ff811681146123dd57600080fd5b919050565b6001600160a01b03811681146123f757600080fd5b50565b6000806040838503121561240d57600080fd5b612416836123cc565b91506020830135612426816123e2565b809150509250929050565b803561ffff811681146123dd57600080fd5b60008083601f84011261245557600080fd5b50813567ffffffffffffffff81111561246d57600080fd5b60208301915083602082850101111561248557600080fd5b9250929050565b6000806000604084860312156124a157600080fd5b6124aa84612431565b9250602084013567ffffffffffffffff8111156124c657600080fd5b6124d286828701612443565b9497909650939450505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff8111828210171561251e5761251e6124df565b604052919050565b600082601f83011261253757600080fd5b813567ffffffffffffffff811115612551576125516124df565b612564601f8201601f19166020016124f5565b81815284602083860101111561257957600080fd5b816020850160208301376000918101602001919091529392505050565b6000604082840312156125a857600080fd5b6040516040810167ffffffffffffffff82821081831117156125cc576125cc6124df565b8160405282935084359150808211156125e457600080fd5b6125f086838701612526565b8352602085013591508082111561260657600080fd5b5061261385828601612526565b6020830152505092915050565b600080600080600060a0868803121561263857600080fd5b61264186612431565b9450602086013567ffffffffffffffff8082111561265e57600080fd5b61266a89838a01612526565b9550604088013591508082111561268057600080fd5b61268c89838a01612596565b945060608801359150808211156126a257600080fd5b6126ae89838a01612596565b935060808801359150808211156126c457600080fd5b506126d188828901612526565b9150509295509295909350565b6000602082840312156126f057600080fd5b813561080f816123e2565b6000806000806080858703121561271157600080fd5b61271a85612431565b9350602085013567ffffffffffffffff8082111561273757600080fd5b61274388838901612526565b9450604087013591508082111561275957600080fd5b61276588838901612596565b9350606087013591508082111561277b57600080fd5b5061278887828801612526565b91505092959194509250565b6000806000604084860312156127a957600080fd5b833567ffffffffffffffff808211156127c157600080fd5b818601915086601f8301126127d557600080fd5b81356020828211156127e9576127e96124df565b8160051b6127f88282016124f5565b928352848101820192828101908b85111561281257600080fd5b83870192505b8483101561284e578235868111156128305760008081fd5b61283e8d86838b0101612596565b8352509183019190830190612818565b985050508701359250508082111561286557600080fd5b506124d286828701612443565b6000815180845260005b818110156128985760208185018101518683018201520161287c565b506000602082860101526020601f19601f83011685010191505092915050565b60208152600061080f6020830184612872565b6000602082840312156128dd57600080fd5b61080f826123cc565b600080604083850312156128f957600080fd5b823567ffffffffffffffff8082111561291157600080fd5b61291d86838701612596565b9350602085013591508082111561293357600080fd5b5061294085828601612526565b9150509250929050565b8183823760009101908152919050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b60006001820161299857612998612970565b5060010190565b600181811c908216806129b357607f821691505b60208210810361230e57634e487b7160e01b600052602260045260246000fd5b8181038181111561081257610812612970565b60ff818116838216019081111561081257610812612970565b8082018082111561081257610812612970565b600382810b9082900b03637fffffff198112637fffffff8213171561081257610812612970565b604081526000612a4c6040830185612872565b8281036020840152610ab78185612872565b634e487b7160e01b600052600160045260246000fd5b634e487b7160e01b600052601260045260246000fd5b600061ffff80841680612a9f57612a9f612a74565b92169190910492915050565b60ff828116828216039081111561081257610812612970565b606081526000612ad76060830186612872565b8281036020840152612ae98186612872565b91505061ffff83166040830152949350505050565b600060208284031215612b1057600080fd5b5051919050565b600081612b2657612b26612970565b506000190190565b808202811582820484141761081257610812612970565b600082612b5457612b54612a74565b500690565b600181815b80851115612b94578160001904821115612b7a57612b7a612970565b80851615612b8757918102915b93841c9390800290612b5e565b509250929050565b600082612bab57506001610812565b81612bb857506000610812565b8160018114612bce5760028114612bd857612bf4565b6001915050610812565b60ff841115612be957612be9612970565b50506001821b610812565b5060208310610133831016604e8410600b8410161715612c17575081810a610812565b612c218383612b59565b8060001904821115612c3557612c35612970565b029392505050565b600061080f8383612b9c565b81810360008312801583831316838312821617156108b7576108b7612970565b606081526000612c7c6060830186612872565b8281036020840152612c8e8186612872565b90508281036040840152611d808185612872565b600060208284031215612cb457600080fd5b8151801515811461080f57600080fdfe00010203040506070809ffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fffffffffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fa164736f6c6343000811000a"; + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "bytes"; + readonly name: "_anchors"; + readonly type: "bytes"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "constructor"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "uint8"; + readonly name: "id"; + readonly type: "uint8"; + }, { + readonly indexed: false; + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }]; + readonly name: "AlgorithmUpdated"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "uint8"; + readonly name: "id"; + readonly type: "uint8"; + }, { + readonly indexed: false; + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }]; + readonly name: "DigestUpdated"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly []; + readonly name: "Marker"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "uint8"; + readonly name: "id"; + readonly type: "uint8"; + }, { + readonly indexed: false; + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }]; + readonly name: "NSEC3DigestUpdated"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "bytes"; + readonly name: "name"; + readonly type: "bytes"; + }, { + readonly indexed: false; + readonly internalType: "bytes"; + readonly name: "rrset"; + readonly type: "bytes"; + }]; + readonly name: "RRSetUpdated"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "t"; + readonly type: "uint256"; + }]; + readonly name: "Test"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint8"; + readonly name: ""; + readonly type: "uint8"; + }]; + readonly name: "algorithms"; + readonly outputs: readonly [{ + readonly internalType: "contract Algorithm"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "anchors"; + readonly outputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint16"; + readonly name: "deleteType"; + readonly type: "uint16"; + }, { + readonly internalType: "bytes"; + readonly name: "deleteName"; + readonly type: "bytes"; + }, { + readonly components: readonly [{ + readonly internalType: "bytes"; + readonly name: "rrset"; + readonly type: "bytes"; + }, { + readonly internalType: "bytes"; + readonly name: "sig"; + readonly type: "bytes"; + }]; + readonly internalType: "struct DNSSEC.RRSetWithSignature"; + readonly name: "nsec"; + readonly type: "tuple"; + }, { + readonly internalType: "bytes"; + readonly name: "proof"; + readonly type: "bytes"; + }]; + readonly name: "deleteRRSet"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint16"; + readonly name: "deleteType"; + readonly type: "uint16"; + }, { + readonly internalType: "bytes"; + readonly name: "deleteName"; + readonly type: "bytes"; + }, { + readonly components: readonly [{ + readonly internalType: "bytes"; + readonly name: "rrset"; + readonly type: "bytes"; + }, { + readonly internalType: "bytes"; + readonly name: "sig"; + readonly type: "bytes"; + }]; + readonly internalType: "struct DNSSEC.RRSetWithSignature"; + readonly name: "closestEncloser"; + readonly type: "tuple"; + }, { + readonly components: readonly [{ + readonly internalType: "bytes"; + readonly name: "rrset"; + readonly type: "bytes"; + }, { + readonly internalType: "bytes"; + readonly name: "sig"; + readonly type: "bytes"; + }]; + readonly internalType: "struct DNSSEC.RRSetWithSignature"; + readonly name: "nextClosest"; + readonly type: "tuple"; + }, { + readonly internalType: "bytes"; + readonly name: "dnskey"; + readonly type: "bytes"; + }]; + readonly name: "deleteRRSetNSEC3"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint8"; + readonly name: ""; + readonly type: "uint8"; + }]; + readonly name: "digests"; + readonly outputs: readonly [{ + readonly internalType: "contract Digest"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint8"; + readonly name: ""; + readonly type: "uint8"; + }]; + readonly name: "nsec3Digests"; + readonly outputs: readonly [{ + readonly internalType: "contract NSEC3Digest"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "owner"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint16"; + readonly name: "dnstype"; + readonly type: "uint16"; + }, { + readonly internalType: "bytes"; + readonly name: "name"; + readonly type: "bytes"; + }]; + readonly name: "rrdata"; + readonly outputs: readonly [{ + readonly internalType: "uint32"; + readonly name: ""; + readonly type: "uint32"; + }, { + readonly internalType: "uint32"; + readonly name: ""; + readonly type: "uint32"; + }, { + readonly internalType: "bytes20"; + readonly name: ""; + readonly type: "bytes20"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint8"; + readonly name: "id"; + readonly type: "uint8"; + }, { + readonly internalType: "contract Algorithm"; + readonly name: "algo"; + readonly type: "address"; + }]; + readonly name: "setAlgorithm"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint8"; + readonly name: "id"; + readonly type: "uint8"; + }, { + readonly internalType: "contract Digest"; + readonly name: "digest"; + readonly type: "address"; + }]; + readonly name: "setDigest"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint8"; + readonly name: "id"; + readonly type: "uint8"; + }, { + readonly internalType: "contract NSEC3Digest"; + readonly name: "digest"; + readonly type: "address"; + }]; + readonly name: "setNSEC3Digest"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "newOwner"; + readonly type: "address"; + }]; + readonly name: "setOwner"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly components: readonly [{ + readonly internalType: "bytes"; + readonly name: "rrset"; + readonly type: "bytes"; + }, { + readonly internalType: "bytes"; + readonly name: "sig"; + readonly type: "bytes"; + }]; + readonly internalType: "struct DNSSEC.RRSetWithSignature"; + readonly name: "input"; + readonly type: "tuple"; + }, { + readonly internalType: "bytes"; + readonly name: "proof"; + readonly type: "bytes"; + }]; + readonly name: "submitRRSet"; + readonly outputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly components: readonly [{ + readonly internalType: "bytes"; + readonly name: "rrset"; + readonly type: "bytes"; + }, { + readonly internalType: "bytes"; + readonly name: "sig"; + readonly type: "bytes"; + }]; + readonly internalType: "struct DNSSEC.RRSetWithSignature[]"; + readonly name: "input"; + readonly type: "tuple[]"; + }, { + readonly internalType: "bytes"; + readonly name: "_proof"; + readonly type: "bytes"; + }]; + readonly name: "submitRRSets"; + readonly outputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): DNSSECImplInterface; + static connect(address: string, runner?: ContractRunner | null): DNSSECImpl; +} +export {}; +//# sourceMappingURL=DNSSECImpl__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl__factory.d.ts.map b/dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl__factory.d.ts.map new file mode 100644 index 00000000..b00198d1 --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"DNSSECImpl__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,MAAM,EACN,SAAS,EACT,yBAAyB,EACzB,cAAc,EACf,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,UAAU,EACV,mBAAmB,EACpB,MAAM,gEAAgE,CAAC;AAmdxE,aAAK,2BAA2B,GAC5B,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,mBAAoB,SAAQ,eAAe;gBAC1C,GAAG,IAAI,EAAE,2BAA2B;IAQvC,oBAAoB,CAC3B,QAAQ,EAAE,SAAS,EACnB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CACb,QAAQ,EAAE,SAAS,EACnB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAItB,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,mBAAmB;IAIpE,MAAM,CAAC,QAAQ,CAAC,QAAQ,kiyBAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,mBAAmB;IAG7C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,UAAU;CAG5E"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl__factory.js b/dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl__factory.js new file mode 100644 index 00000000..e2e66a45 --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl__factory.js @@ -0,0 +1,495 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.DNSSECImpl__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "bytes", + name: "_anchors", + type: "bytes", + }, + ], + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint8", + name: "id", + type: "uint8", + }, + { + indexed: false, + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "AlgorithmUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint8", + name: "id", + type: "uint8", + }, + { + indexed: false, + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "DigestUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [], + name: "Marker", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint8", + name: "id", + type: "uint8", + }, + { + indexed: false, + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "NSEC3DigestUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bytes", + name: "name", + type: "bytes", + }, + { + indexed: false, + internalType: "bytes", + name: "rrset", + type: "bytes", + }, + ], + name: "RRSetUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "t", + type: "uint256", + }, + ], + name: "Test", + type: "event", + }, + { + inputs: [ + { + internalType: "uint8", + name: "", + type: "uint8", + }, + ], + name: "algorithms", + outputs: [ + { + internalType: "contract Algorithm", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "anchors", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint16", + name: "deleteType", + type: "uint16", + }, + { + internalType: "bytes", + name: "deleteName", + type: "bytes", + }, + { + components: [ + { + internalType: "bytes", + name: "rrset", + type: "bytes", + }, + { + internalType: "bytes", + name: "sig", + type: "bytes", + }, + ], + internalType: "struct DNSSEC.RRSetWithSignature", + name: "nsec", + type: "tuple", + }, + { + internalType: "bytes", + name: "proof", + type: "bytes", + }, + ], + name: "deleteRRSet", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint16", + name: "deleteType", + type: "uint16", + }, + { + internalType: "bytes", + name: "deleteName", + type: "bytes", + }, + { + components: [ + { + internalType: "bytes", + name: "rrset", + type: "bytes", + }, + { + internalType: "bytes", + name: "sig", + type: "bytes", + }, + ], + internalType: "struct DNSSEC.RRSetWithSignature", + name: "closestEncloser", + type: "tuple", + }, + { + components: [ + { + internalType: "bytes", + name: "rrset", + type: "bytes", + }, + { + internalType: "bytes", + name: "sig", + type: "bytes", + }, + ], + internalType: "struct DNSSEC.RRSetWithSignature", + name: "nextClosest", + type: "tuple", + }, + { + internalType: "bytes", + name: "dnskey", + type: "bytes", + }, + ], + name: "deleteRRSetNSEC3", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint8", + name: "", + type: "uint8", + }, + ], + name: "digests", + outputs: [ + { + internalType: "contract Digest", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint8", + name: "", + type: "uint8", + }, + ], + name: "nsec3Digests", + outputs: [ + { + internalType: "contract NSEC3Digest", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint16", + name: "dnstype", + type: "uint16", + }, + { + internalType: "bytes", + name: "name", + type: "bytes", + }, + ], + name: "rrdata", + outputs: [ + { + internalType: "uint32", + name: "", + type: "uint32", + }, + { + internalType: "uint32", + name: "", + type: "uint32", + }, + { + internalType: "bytes20", + name: "", + type: "bytes20", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint8", + name: "id", + type: "uint8", + }, + { + internalType: "contract Algorithm", + name: "algo", + type: "address", + }, + ], + name: "setAlgorithm", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint8", + name: "id", + type: "uint8", + }, + { + internalType: "contract Digest", + name: "digest", + type: "address", + }, + ], + name: "setDigest", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint8", + name: "id", + type: "uint8", + }, + { + internalType: "contract NSEC3Digest", + name: "digest", + type: "address", + }, + ], + name: "setNSEC3Digest", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "setOwner", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + components: [ + { + internalType: "bytes", + name: "rrset", + type: "bytes", + }, + { + internalType: "bytes", + name: "sig", + type: "bytes", + }, + ], + internalType: "struct DNSSEC.RRSetWithSignature", + name: "input", + type: "tuple", + }, + { + internalType: "bytes", + name: "proof", + type: "bytes", + }, + ], + name: "submitRRSet", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + components: [ + { + internalType: "bytes", + name: "rrset", + type: "bytes", + }, + { + internalType: "bytes", + name: "sig", + type: "bytes", + }, + ], + internalType: "struct DNSSEC.RRSetWithSignature[]", + name: "input", + type: "tuple[]", + }, + { + internalType: "bytes", + name: "_proof", + type: "bytes", + }, + ], + name: "submitRRSets", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, +]; +const _bytecode = "0x60806040523480156200001157600080fd5b506040516200320d3803806200320d83398101604081905262000034916200018f565b600180546001600160a01b031916331790556000620000548282620002f3565b5060408051606081018252600080825263e090bba0602083015282519192830191620000819190620003bf565b60408051918290039091206001600160601b031916909152602b60009081527fc92a43746f20f69898978a3075767b860ba247ac0639d1831bf8c942c5db2389602090815283517f95c6356c1b7a542b884d2484ef785c9c7224e77e1016c20007bddc15c23b452f8054928601519585015160601c6801000000000000000002600160401b600160e01b031963ffffffff978816640100000000026001600160401b03199095169790931696909617929092171693909317909255517f55ced933cdd5a34dd03eb5d4bef19ec6ebb251dcd7a988eee0c1b9a13baaa88b916200016a916200043d565b60405180910390a150620004e5565b634e487b7160e01b600052604160045260246000fd5b60006020808385031215620001a357600080fd5b82516001600160401b0380821115620001bb57600080fd5b818501915085601f830112620001d057600080fd5b815181811115620001e557620001e562000179565b604051601f8201601f19908116603f0116810190838211818310171562000210576200021062000179565b8160405282815288868487010111156200022957600080fd5b600093505b828410156200024d57848401860151818501870152928501926200022e565b600086848301015280965050505050505092915050565b600181811c908216806200027957607f821691505b6020821081036200029a57634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620002ee57600081815260208120601f850160051c81016020861015620002c95750805b601f850160051c820191505b81811015620002ea57828155600101620002d5565b5050505b505050565b81516001600160401b038111156200030f576200030f62000179565b620003278162000320845462000264565b84620002a0565b602080601f8311600181146200035f5760008415620003465750858301515b600019600386901b1c1916600185901b178555620002ea565b600085815260208120601f198616915b8281101562000390578886015182559484019460019091019084016200036f565b5085821015620003af5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6000808354620003cf8162000264565b60018281168015620003ea5760018114620004005762000431565b60ff198416875282151583028701945062000431565b8760005260208060002060005b85811015620004285781548a8201529084019082016200040d565b50505082870194505b50929695505050505050565b604081526000600180604084015260006060840152602060808185015260008554620004698162000264565b80608088015260a0858316600081146200048c5760018114620004a757620004d7565b60ff1984168983015282151560051b890182019450620004d7565b896000528560002060005b84811015620004cf5781548b8201850152908801908701620004b2565b8a0183019550505b509298975050505050505050565b612d1880620004f56000396000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c806373cc48a61161008c57806398d35f201161006657806398d35f201461021c578063bd7ed31a14610224578063c327deef1461024d578063d7b82ebe1461027657600080fd5b806373cc48a6146101b55780638438dc04146101f65780638da5cb5b1461020957600080fd5b806313af4035116100c857806313af40351461015c57806328e7677d1461016f5780632c095cbb14610182578063435cc1621461019557600080fd5b8063020ed8d3146100ef578063087991bc146101045780630b1a249514610149575b600080fd5b6101026100fd3660046123fa565b610289565b005b61011761011236600461248c565b61030b565b6040805163ffffffff94851681529390921660208401526001600160601b031916908201526060015b60405180910390f35b610102610157366004612620565b61037b565b61010261016a3660046126de565b6104ef565b61010261017d3660046123fa565b610528565b6101026101903660046126fb565b6105a2565b6101a86101a3366004612794565b610673565b60405161014091906128b8565b6101de6101c33660046128cb565b6004602052600090815260409020546001600160a01b031681565b6040516001600160a01b039091168152602001610140565b6101026102043660046123fa565b6106fb565b6001546101de906001600160a01b031681565b6101a8610775565b6101de6102323660046128cb565b6005602052600090815260409020546001600160a01b031681565b6101de61025b3660046128cb565b6003602052600090815260409020546001600160a01b031681565b6101a86102843660046128e6565b610803565b6001546001600160a01b031633146102a057600080fd5b60ff821660008181526003602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527ff73c3c226af96b7f1ba666a21b3ceaf2be3ee6a365e3178fd9cd1eaae0075aa891015b60405180910390a15050565b60008060008060026000878760405161032592919061294a565b60408051918290039091208252602080830193909352908101600090812061ffff8b16825290925290205463ffffffff80821695506401000000008204169350600160401b900460601b91505093509350939050565b8351602080860191909120600090815260028252604080822061ffff891683529092529081205463ffffffff16906103b38584610818565b90506103c08187846108be565b6103c861232b565b845151156103e7576103da8585610818565b90506103e78188856108be565b60006103f283610904565b602081015190915060fe161561040757600080fd5b610412816027610963565b1580156104375750610425816002610963565b15806104375750610437816006610963565b61044057600080fd5b610451898985610120015184610975565b1561048d5787516020808a0191909120600090815260028252604080822061ffff8d1683529092522080546001600160e01b03191690556104e4565b6104ac88846101200151838561012001516104a787610904565b6109a5565b156100ea5787516020808a0191909120600090815260028252604080822061ffff8d1683529092522080546001600160e01b03191690555b505050505050505050565b6001546001600160a01b0316331461050657600080fd5b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6001546001600160a01b0316331461053f57600080fd5b60ff821660008181526004602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527f2fcc274c3b72dd483ab201bfa87295e3817e8b9b10693219873b722ca1af00c791016102ff565b6105aa61232b565b6105b48383610818565b805190915061ffff16602f146105c957600080fd5b60a08101518451602080870191909120600090815260028252604080822061ffff8a1683529092522054610603919063ffffffff16610ac0565b61060c57600080fd5b600061061782610ad9565b9050805151602082015110156100ea57610638818361012001518789610af1565b50508251602080850191909120600090815260028252604080822061ffff881683529092522080546001600160e01b03191690555b50505050565b6060600083838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201829052509394505050505b85518110156106f0576106dc8682815181106106ce576106ce61295a565b602002602001015183610c9f565b9150806106e881612986565b9150506106b0565b5090505b9392505050565b6001546001600160a01b0316331461071257600080fd5b60ff821660008181526005602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527fc7eec866a7a1386188cc3ca20ffea75b71bd3e90a60b6791b1d3f0971145118d91016102ff565b600080546107829061299f565b80601f01602080910402602001604051908101604052809291908181526020018280546107ae9061299f565b80156107fb5780601f106107d0576101008083540402835291602001916107fb565b820191906000526020600020905b8154815290600101906020018083116107de57829003601f168201915b505050505081565b606061080f8383610c9f565b90505b92915050565b61082061232b565b825161082b90610e1e565b905061083b8160e0015183610f18565b61084457600080fd5b6000610854828360000151610f80565b604083015190915060ff1661086a82600061102e565b1461087457600080fd5b6101208201819052608082015161088b9042610ac0565b61089457600080fd5b6108a2428360a00151610ac0565b6108ab57600080fd5b6108b78183868661108b565b5092915050565b6108cc8360a0015182610ac0565b6108d557600080fd5b825161ffff166032146108e757600080fd5b6108f683610120015183611170565b6108ff57600080fd5b505050565b6040805160c08101825260008082526020820181905291810182905260608082018190526080820183905260a08201529061093e83610ad9565b60a081015160c08201519192506106f49161095a9082906129d3565b835191906111de565b600061080f8360a00151600084611325565b600061098282848661143a565b15610999576109918286610963565b15905061099d565b5060005b949350505050565b602081015160009060fe16156109ba57600080fd5b60006109c586611461565b905060006109d285611461565b90506000806109e18a8261147d565b6109ec9060016129e6565b60ff1690505b8951811015610aae5783610a1e89610a1984858f51610a1191906129d3565b8f91906114a1565b611523565b03610a82576000610a3a87610a1985868f51610a1191906129d3565b90508660800151841015610a66578381118015610a5a5750866080015181105b95505050505050610ab7565b83811180610a5a57508660800151811095505050505050610ab7565b905080610a8f8a8261147d565b610a9a9060016129e6565b610aa79060ff16826129ff565b90506109f2565b50600093505050505b95945050505050565b600080610acd8385612a12565b60030b12159392505050565b610ae1612381565b61081282610100015160006115af565b60a08401518451600090610b0590836115ca565b905060008660a001518760c00151610b1d91906129d3565b9050818111610b2b57600080fd5b6000610b378688611624565b905080600003610b6657610b57610b4e84866129ff565b89519087611325565b15610b6157600080fd5b610bad565b8751600090610b769086866114a1565b905060008213610b8557600080fd5b6000610b918983611624565b12156104e4576000610ba38883611624565b126104e457600080fd5b5050505050505050565b60c08101516020820181905281515111610bce5750565b6000610be2826000015183602001516115ca565b8260200151610bf191906129ff565b8251909150610c00908261177d565b61ffff166040830152610c146002826129ff565b8251909150610c23908261177d565b61ffff166060830152610c376002826129ff565b8251909150610c4690826117a5565b63ffffffff166080830152610c5c6004826129ff565b8251909150600090610c6e908361177d565b61ffff169050610c7f6002836129ff565b60a084018190529150610c9281836129ff565b60c0909301929092525050565b6060610ca961232b565b610cb38484610818565b61012081015180516020918201206000908152600282526040808220845161ffff16835290925220805491925090600160401b900460601b6001600160601b03191615610d1a5760a08201518154610d11919063ffffffff16610ac0565b610d1a57600080fd5b604080516060808201835260a085015163ffffffff9081168352608086015181166020808501918252610100880180518051908301206001600160601b0319168688019081526101208a0180518051908501206000908152600285528981208c5161ffff16825290945292889020965187549451915190961c600160401b0268010000000000000000600160e01b03199186166401000000000267ffffffffffffffff19909516969095169590951792909217939093169190911790925551905191517f55ced933cdd5a34dd03eb5d4bef19ec6ebb251dcd7a988eee0c1b9a13baaa88b92610e099291612a39565b60405180910390a15061010001519392505050565b610e2661232b565b610e3182600061177d565b61ffff168152610e4282600261147d565b60ff166020820152610e5582600361147d565b60ff166040820152610e688260046117a5565b63ffffffff9081166060830152610e849083906008906117a516565b63ffffffff9081166080830152610ea0908390600c906117a516565b63ffffffff90811660a0830152610ebc90839060109061177d16565b61ffff1660c0820152610ed08260126117cf565b60e0820181905251610f0d90610ee79060126129ff565b8260e001515160128551610efb91906129d3565b610f0591906129d3565b8491906114a1565b610100820152919050565b600080610f2f610f2884836115ca565b849061177d565b8351602080860191909120865187830120600090815260028352604080822061ffff90951682529390925291902054600160401b900460601b6001600160601b031990811691161491505092915050565b60606000610f8d84610ad9565b90505b805151602082015110156108b757606081015161ffff16600114610fb357600080fd5b8151600003610fcc57610fc5816117ea565b9150611008565b60208101518151610fdc916115ca565b825114610fe857600080fd5b805160208201518351610fff92859260009261180b565b61100857600080fd5b8261ffff16816040015161ffff161461102057600080fd5b61102981610bb7565b610f90565b6000805b8351831061104257611042612a5e565b600061104e858561147d565b60ff16905061105e8160016129ff565b61106890856129ff565b935080600003611078575061080f565b6110836001836129ff565b915050611032565b83518360e0015151111561109e57600080fd5b6110c36000858560e001515187516110b691906129d3565b60e087015192919061182e565b6110cc57600080fd5b60006110d882826115af565b9050602b61ffff16816040015161ffff1603611107576110f9848483611863565b61110257600080fd5b611169565b603061ffff16816040015161ffff1603611126576110f98484836118fc565b60405162461bcd60e51b8152602060048201526014602482015273139bc81d985b1a59081c1c9bdbd988199bdd5b9960621b604482015260640160405180910390fd5b5050505050565b60008061117d848261147d565b6111889060016129e6565b60ff16905060005b8351811015610999576111a58482878561182e565b156111b557600192505050610812565b6111bf848261147d565b6111ca9060016129e6565b6111d79060ff16826129ff565b9050611190565b6040805160c08101825260008082526020820181905291810182905260608082018190526080820183905260a08201529061121983856129ff565b90506112306112296000866129ff565b869061147d565b60ff1682526112436112296001866129ff565b60ff1660208301526112606112596002866129ff565b869061177d565b61ffff16604083015260006112806112796004876129ff565b879061147d565b905061128d6005866129ff565b945061129d868660ff84166114a1565b60608401526112af60ff8216866129ff565b945060006112bd878761147d565b905060208160ff1611156112d057600080fd5b6112db6001876129ff565b95506112eb878760ff84166119a4565b60808501526112fd60ff8216876129ff565b95506113158661130d81866129d3565b8991906114a1565b60a0850152509195945050505050565b600060ff600883811c821691839161133e918616612a8a565b90506000611350600780871690612aab565b600160ff919091161b9050855b875181101561142c576000611372898361147d565b9050600061138b6113848460016129ff565b8b9061147d565b90508160ff168660ff1610156113aa57600096505050505050506106f4565b8160ff168660ff160361140b578460ff168160ff16116113d357600096505050505050506106f4565b836113f66113e460ff8816866129ff565b6113ef9060026129ff565b8c9061147d565b1660ff166000141596505050505050506106f4565b6114168160026129e6565b6114239060ff16846129ff565b9250505061135d565b506000979650505050505050565b6000806114478584611523565b9050600061145485611461565b9190911495945050505050565b60006108126001611472848461147d565b84919060ff166119e5565b60008282815181106114915761149161295a565b016020015160f81c905092915050565b82516060906114b083856129ff565b11156114bb57600080fd5b60008267ffffffffffffffff8111156114d6576114d66124df565b6040519080825280601f01601f191660200182016040528015611500576020820181803683370190505b50905060208082019086860101611518828287611bfd565b509095945050505050565b815160ff1660009081526005602052604080822054606085015182860151925163347ced5960e11b81526001600160a01b03909216926368f9dab29261156e92918791600401612ac4565b602060405180830381865afa15801561158b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061080f9190612afe565b6115b7612381565b82815260c0810182905261081281610bb7565b6000815b835181106115de576115de612a5e565b60006115ea858361147d565b60ff1690506115fa8160016129ff565b61160490836129ff565b915080600003611614575061161a565b506115ce565b61099d83826129d3565b60006116308383611c53565b1561163d57506000610812565b600080600080600061165088600061102e565b9050600061165f88600061102e565b90505b8082111561168b578593506116778987611c71565b95508161168381612b17565b925050611662565b818111156116b4578492506116a08886611c71565b9450806116ac81612b17565b91505061168b565b6000821180156116cd57506116cb89878a8861182e565b155b15611702578593506116df8987611c71565b95508492506116ee8886611c71565b94506116fb6001836129d3565b91506116b4565b8560000361171a576000199650505050505050610812565b846000036117315760019650505050505050610812565b61177061173f8560016129ff565b6117498b8761147d565b60ff168a6117588760016129ff565b6117628d8961147d565b8e949392919060ff16611c95565b9998505050505050505050565b815160009061178d8360026129ff565b111561179857600080fd5b50016002015161ffff1690565b81516000906117b58360046129ff565b11156117c057600080fd5b50016004015163ffffffff1690565b606060006117dd84846115ca565b905061099d8484836114a1565b602081015181516060916108129161180290826115ca565b845191906114a1565b6000611818848484611d8a565b611823878785611d8a565b149695505050505050565b6000611847838384865161184291906129d3565b611d8a565b611859868687895161184291906129d3565b1495945050505050565b60008061186f85610ad9565b90505b8051516020820151101561099957604081015161ffff1660301461189557600080fd5b60006118a082611dae565b905060006118bb6000835184611dca9092919063ffffffff16565b90506118c981838989611e68565b156118ec576118e26118da846117ea565b868385611f6d565b93505050506106f4565b50506118f781610bb7565b611872565b60006119158460e0015161190f846117ea565b90611c53565b61191e57600080fd5b8151516020830151101561199a5761193d8460e0015161190f846117ea565b61194657600080fd5b600061195183611dae565b9050600061196c6000835184611dca9092919063ffffffff16565b905061197a81838888611e68565b1561198a576001925050506106f4565b505061199582610bb7565b61191e565b5060009392505050565b600060208211156119b457600080fd5b83516119c083856129ff565b11156119cb57600080fd5b506020919092018101519190036101000a60001901191690565b600060348211156119f557600080fd5b600080805b84811015611ae157600087611a0f83896129ff565b81518110611a1f57611a1f61295a565b01602001516001600160f81b0319169050600360fc1b8110801590611a525750603d60f91b6001600160f81b0319821611155b611a5b57600080fd5b604051806080016040528060478152602001612cc560479139611a83603060f884901c6129d3565b81518110611a9357611a9361295a565b0160209081015160f81c9350831115611aab57600080fd5b611ab66001876129d3565b8203611ac25750611ae1565b5060059290921b60ff8216179180611ad981612986565b9150506119fa565b506000611aef856005612b2e565b9050611afc600886612b45565b600003611b14578160ff16600584901b179250611be3565b611b1f600886612b45565b600203611b4d5760028260ff16901c60ff16600384901b179250600281611b4691906129d3565b9050611be3565b611b58600886612b45565b600403611b7f5760048260ff16901c60ff16600184901b179250600481611b4691906129d3565b611b8a600886612b45565b600503611bb15760018260ff16901c60ff16600484901b179250600181611b4691906129d3565b611bbc600886612b45565b6007036100ea5760038260ff16901c60ff16600284901b179250600381611b4691906129d3565b611bef816101006129d3565b9290921b9695505050505050565b60208110611c355781518352611c146020846129ff565b9250611c216020836129ff565b9150611c2e6020826129d3565b9050611bfd565b905182516020929092036101000a6000190180199091169116179052565b60008151835114801561080f575061080f836000846000875161180b565b6000611c7d838361147d565b60ff16611c8b8360016129ff565b61080f91906129ff565b60008480831015611ca35750815b60208789018101908587010160005b83811015611d6f5782518251808214611d3f5760006020871115611cd95750600019611d15565b600184611ce78960206129d3565b611cf191906129ff565b611cfc906008612b2e565b611d07906002612c3d565b611d1191906129d3565b1990505b6000611d25838316858416612c49565b90508015611d3c579750611d809650505050505050565b50505b611d4a6020866129ff565b9450611d576020856129ff565b93505050602081611d6891906129ff565b9050611cb2565b50611d7a8589612c49565b93505050505b9695505050505050565b8251600090611d9983856129ff565b1115611da457600080fd5b5091016020012090565b60a081015160c0820151606091610812916118029082906129d3565b6040805160808101825260008082526020820181905291810191909152606080820152611e02611dfb6000856129ff565b859061177d565b61ffff168152611e1d611e166002856129ff565b859061147d565b60ff166020820152611e33611e166003856129ff565b60ff166040820152611e5c611e496004856129ff565b611e546004856129d3565b8691906114a1565b60608201529392505050565b6000846020015160ff16600314611e815750600061099d565b826020015160ff16856040015160ff1614611e9e5750600061099d565b6000611ea98561206e565b90508360c0015161ffff168161ffff1614611ec857600091505061099d565b855161010016600003611edf57600091505061099d565b60408087015160ff166000908152600360209081529082902054855191860151925163de8f50a160e01b81526001600160a01b039091169263de8f50a192611f2c928a9290600401612c69565b602060405180830381865afa158015611f49573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d809190612ca2565b600080611f798361206e565b90505b845151602086015110156120625760a085015160c0860151600091611faf91611fa69082906129d3565b88519190611dca565b90508161ffff16816000015161ffff1614611fca5750612054565b846040015160ff16816020015160ff1614611fe55750612054565b6040805180820190915260608152600060208201526120128551895161200b91906129ff565b82906120db565b5061201d8189612140565b506120288186612140565b50612040826040015182600001518460600151612167565b15612051576001935050505061099d565b50505b61205d85610bb7565b611f7c565b50600095945050505050565b60008060005b83518110156120cc57600181161561209857612090848261147d565b60ff166120aa565b60086120a4858361147d565b60ff16901b5b6120b89061ffff16836129ff565b9150806120c481612986565b915050612074565b506106f4601082901c826129ff565b6040805180820190915260608152600060208201526120fb602083612b45565b156121235761210b602083612b45565b6121169060206129d3565b61212090836129ff565b91505b506020828101829052604080518085526000815290920101905290565b60408051808201909152606081526000602082015261080f83846000015151848551612213565b60ff83166000908152600460205260408120546001600160a01b031661218f575060006106f4565b60ff8416600090815260046020819052604091829020549151637bf41d7760e11b81526001600160a01b039092169163f7e83aee916121d2918791879101612a39565b602060405180830381865afa1580156121ef573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061099d9190612ca2565b604080518082019091526060815260006020820152825182111561223657600080fd5b602085015161224583866129ff565b111561227857612278856122688760200151878661226391906129ff565b6122fd565b612273906002612b2e565b612314565b6000808651805187602083010193508088870111156122975787860182525b505050602084015b602084106122d757805182526122b66020836129ff565b91506122c36020826129ff565b90506122d06020856129d3565b935061229f565b51815160001960208690036101000a019081169019919091161790525083949350505050565b60008183111561230e575081610812565b50919050565b815161232083836120db565b5061066d8382612140565b604080516101408101825260008082526020820181905291810182905260608082018390526080820183905260a0820183905260c082019290925260e08101829052610100810182905261012081019190915290565b6040518060e001604052806060815260200160008152602001600061ffff168152602001600061ffff168152602001600063ffffffff16815260200160008152602001600081525090565b803560ff811681146123dd57600080fd5b919050565b6001600160a01b03811681146123f757600080fd5b50565b6000806040838503121561240d57600080fd5b612416836123cc565b91506020830135612426816123e2565b809150509250929050565b803561ffff811681146123dd57600080fd5b60008083601f84011261245557600080fd5b50813567ffffffffffffffff81111561246d57600080fd5b60208301915083602082850101111561248557600080fd5b9250929050565b6000806000604084860312156124a157600080fd5b6124aa84612431565b9250602084013567ffffffffffffffff8111156124c657600080fd5b6124d286828701612443565b9497909650939450505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff8111828210171561251e5761251e6124df565b604052919050565b600082601f83011261253757600080fd5b813567ffffffffffffffff811115612551576125516124df565b612564601f8201601f19166020016124f5565b81815284602083860101111561257957600080fd5b816020850160208301376000918101602001919091529392505050565b6000604082840312156125a857600080fd5b6040516040810167ffffffffffffffff82821081831117156125cc576125cc6124df565b8160405282935084359150808211156125e457600080fd5b6125f086838701612526565b8352602085013591508082111561260657600080fd5b5061261385828601612526565b6020830152505092915050565b600080600080600060a0868803121561263857600080fd5b61264186612431565b9450602086013567ffffffffffffffff8082111561265e57600080fd5b61266a89838a01612526565b9550604088013591508082111561268057600080fd5b61268c89838a01612596565b945060608801359150808211156126a257600080fd5b6126ae89838a01612596565b935060808801359150808211156126c457600080fd5b506126d188828901612526565b9150509295509295909350565b6000602082840312156126f057600080fd5b813561080f816123e2565b6000806000806080858703121561271157600080fd5b61271a85612431565b9350602085013567ffffffffffffffff8082111561273757600080fd5b61274388838901612526565b9450604087013591508082111561275957600080fd5b61276588838901612596565b9350606087013591508082111561277b57600080fd5b5061278887828801612526565b91505092959194509250565b6000806000604084860312156127a957600080fd5b833567ffffffffffffffff808211156127c157600080fd5b818601915086601f8301126127d557600080fd5b81356020828211156127e9576127e96124df565b8160051b6127f88282016124f5565b928352848101820192828101908b85111561281257600080fd5b83870192505b8483101561284e578235868111156128305760008081fd5b61283e8d86838b0101612596565b8352509183019190830190612818565b985050508701359250508082111561286557600080fd5b506124d286828701612443565b6000815180845260005b818110156128985760208185018101518683018201520161287c565b506000602082860101526020601f19601f83011685010191505092915050565b60208152600061080f6020830184612872565b6000602082840312156128dd57600080fd5b61080f826123cc565b600080604083850312156128f957600080fd5b823567ffffffffffffffff8082111561291157600080fd5b61291d86838701612596565b9350602085013591508082111561293357600080fd5b5061294085828601612526565b9150509250929050565b8183823760009101908152919050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b60006001820161299857612998612970565b5060010190565b600181811c908216806129b357607f821691505b60208210810361230e57634e487b7160e01b600052602260045260246000fd5b8181038181111561081257610812612970565b60ff818116838216019081111561081257610812612970565b8082018082111561081257610812612970565b600382810b9082900b03637fffffff198112637fffffff8213171561081257610812612970565b604081526000612a4c6040830185612872565b8281036020840152610ab78185612872565b634e487b7160e01b600052600160045260246000fd5b634e487b7160e01b600052601260045260246000fd5b600061ffff80841680612a9f57612a9f612a74565b92169190910492915050565b60ff828116828216039081111561081257610812612970565b606081526000612ad76060830186612872565b8281036020840152612ae98186612872565b91505061ffff83166040830152949350505050565b600060208284031215612b1057600080fd5b5051919050565b600081612b2657612b26612970565b506000190190565b808202811582820484141761081257610812612970565b600082612b5457612b54612a74565b500690565b600181815b80851115612b94578160001904821115612b7a57612b7a612970565b80851615612b8757918102915b93841c9390800290612b5e565b509250929050565b600082612bab57506001610812565b81612bb857506000610812565b8160018114612bce5760028114612bd857612bf4565b6001915050610812565b60ff841115612be957612be9612970565b50506001821b610812565b5060208310610133831016604e8410600b8410161715612c17575081810a610812565b612c218383612b59565b8060001904821115612c3557612c35612970565b029392505050565b600061080f8383612b9c565b81810360008312801583831316838312821617156108b7576108b7612970565b606081526000612c7c6060830186612872565b8281036020840152612c8e8186612872565b90508281036040840152611d808185612872565b600060208284031215612cb457600080fd5b8151801515811461080f57600080fdfe00010203040506070809ffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fffffffffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fa164736f6c6343000811000a"; +const isSuperArgs = (xs) => xs.length > 1; +class DNSSECImpl__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(_anchors, overrides) { + return super.getDeployTransaction(_anchors, overrides || {}); + } + deploy(_anchors, overrides) { + return super.deploy(_anchors, overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.DNSSECImpl__factory = DNSSECImpl__factory; +DNSSECImpl__factory.bytecode = _bytecode; +DNSSECImpl__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/Owned__factory.d.ts b/dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/Owned__factory.d.ts new file mode 100644 index 00000000..e0c7c7bb --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/Owned__factory.d.ts @@ -0,0 +1,47 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../../../common"; +import type { Owned, OwnedInterface } from "../../../../../contracts/@ens/dnssec/DNSSECImpl.sol/Owned"; +declare type OwnedConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class Owned__factory extends ContractFactory { + constructor(...args: OwnedConstructorParams); + getDeployTransaction(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): Owned__factory; + static readonly bytecode = "0x608060405234801561001057600080fd5b50600080546001600160a01b0319163317905560e9806100316000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c806313af40351460375780638da5cb5b146048575b600080fd5b6046604236600460ae565b6076565b005b600054605a906001600160a01b031681565b6040516001600160a01b03909116815260200160405180910390f35b6000546001600160a01b03163314608c57600080fd5b600080546001600160a01b0319166001600160a01b0392909216919091179055565b60006020828403121560bf57600080fd5b81356001600160a01b038116811460d557600080fd5b939250505056fea164736f6c6343000811000a"; + static readonly abi: readonly [{ + readonly inputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "constructor"; + }, { + readonly inputs: readonly []; + readonly name: "owner"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "newOwner"; + readonly type: "address"; + }]; + readonly name: "setOwner"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): OwnedInterface; + static connect(address: string, runner?: ContractRunner | null): Owned; +} +export {}; +//# sourceMappingURL=Owned__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/Owned__factory.d.ts.map b/dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/Owned__factory.d.ts.map new file mode 100644 index 00000000..47e4a4d1 --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/Owned__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"Owned__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/Owned__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,KAAK,EACL,cAAc,EACf,MAAM,2DAA2D,CAAC;AAuCnE,aAAK,sBAAsB,GACvB,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,cAAe,SAAQ,eAAe;gBACrC,GAAG,IAAI,EAAE,sBAAsB;IAQlC,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,cAAc;IAI/D,MAAM,CAAC,QAAQ,CAAC,QAAQ,4jBAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,cAAc;IAGxC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,KAAK;CAGvE"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/Owned__factory.js b/dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/Owned__factory.js new file mode 100644 index 00000000..11c48abf --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/Owned__factory.js @@ -0,0 +1,67 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.Owned__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [], + stateMutability: "nonpayable", + type: "constructor", + }, + { + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "setOwner", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +const _bytecode = "0x608060405234801561001057600080fd5b50600080546001600160a01b0319163317905560e9806100316000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c806313af40351460375780638da5cb5b146048575b600080fd5b6046604236600460ae565b6076565b005b600054605a906001600160a01b031681565b6040516001600160a01b03909116815260200160405180910390f35b6000546001600160a01b03163314608c57600080fd5b600080546001600160a01b0319166001600160a01b0392909216919091179055565b60006020828403121560bf57600080fd5b81356001600160a01b038116811460d557600080fd5b939250505056fea164736f6c6343000811000a"; +const isSuperArgs = (xs) => xs.length > 1; +class Owned__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(overrides) { + return super.getDeployTransaction(overrides || {}); + } + deploy(overrides) { + return super.deploy(overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.Owned__factory = Owned__factory; +Owned__factory.bytecode = _bytecode; +Owned__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/index.d.ts b/dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/index.d.ts new file mode 100644 index 00000000..fcdfcaef --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/index.d.ts @@ -0,0 +1,3 @@ +export { DNSSECImpl__factory } from "./DNSSECImpl__factory"; +export { Owned__factory } from "./Owned__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/index.d.ts.map b/dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/index.d.ts.map new file mode 100644 index 00000000..2e91f8d3 --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/index.js b/dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/index.js new file mode 100644 index 00000000..1d7a67d3 --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/index.js @@ -0,0 +1,7 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.Owned__factory = exports.DNSSECImpl__factory = void 0; +var DNSSECImpl__factory_1 = require("./DNSSECImpl__factory"); +Object.defineProperty(exports, "DNSSECImpl__factory", { enumerable: true, get: function () { return DNSSECImpl__factory_1.DNSSECImpl__factory; } }); +var Owned__factory_1 = require("./Owned__factory"); +Object.defineProperty(exports, "Owned__factory", { enumerable: true, get: function () { return Owned__factory_1.Owned__factory; } }); diff --git a/dist/types/factories/contracts/@ens/dnssec/DNSSEC__factory.d.ts b/dist/types/factories/contracts/@ens/dnssec/DNSSEC__factory.d.ts new file mode 100644 index 00000000..5d507062 --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/DNSSEC__factory.d.ts @@ -0,0 +1,233 @@ +import { type ContractRunner } from "ethers"; +import type { DNSSEC, DNSSECInterface } from "../../../../contracts/@ens/dnssec/DNSSEC"; +export declare class DNSSEC__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "uint8"; + readonly name: "id"; + readonly type: "uint8"; + }, { + readonly indexed: false; + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }]; + readonly name: "AlgorithmUpdated"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "uint8"; + readonly name: "id"; + readonly type: "uint8"; + }, { + readonly indexed: false; + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }]; + readonly name: "DigestUpdated"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "uint8"; + readonly name: "id"; + readonly type: "uint8"; + }, { + readonly indexed: false; + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }]; + readonly name: "NSEC3DigestUpdated"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "bytes"; + readonly name: "name"; + readonly type: "bytes"; + }, { + readonly indexed: false; + readonly internalType: "bytes"; + readonly name: "rrset"; + readonly type: "bytes"; + }]; + readonly name: "RRSetUpdated"; + readonly type: "event"; + }, { + readonly inputs: readonly []; + readonly name: "anchors"; + readonly outputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint16"; + readonly name: "deleteType"; + readonly type: "uint16"; + }, { + readonly internalType: "bytes"; + readonly name: "deleteName"; + readonly type: "bytes"; + }, { + readonly components: readonly [{ + readonly internalType: "bytes"; + readonly name: "rrset"; + readonly type: "bytes"; + }, { + readonly internalType: "bytes"; + readonly name: "sig"; + readonly type: "bytes"; + }]; + readonly internalType: "struct DNSSEC.RRSetWithSignature"; + readonly name: "nsec"; + readonly type: "tuple"; + }, { + readonly internalType: "bytes"; + readonly name: "proof"; + readonly type: "bytes"; + }]; + readonly name: "deleteRRSet"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint16"; + readonly name: "deleteType"; + readonly type: "uint16"; + }, { + readonly internalType: "bytes"; + readonly name: "deleteName"; + readonly type: "bytes"; + }, { + readonly components: readonly [{ + readonly internalType: "bytes"; + readonly name: "rrset"; + readonly type: "bytes"; + }, { + readonly internalType: "bytes"; + readonly name: "sig"; + readonly type: "bytes"; + }]; + readonly internalType: "struct DNSSEC.RRSetWithSignature"; + readonly name: "closestEncloser"; + readonly type: "tuple"; + }, { + readonly components: readonly [{ + readonly internalType: "bytes"; + readonly name: "rrset"; + readonly type: "bytes"; + }, { + readonly internalType: "bytes"; + readonly name: "sig"; + readonly type: "bytes"; + }]; + readonly internalType: "struct DNSSEC.RRSetWithSignature"; + readonly name: "nextClosest"; + readonly type: "tuple"; + }, { + readonly internalType: "bytes"; + readonly name: "dnskey"; + readonly type: "bytes"; + }]; + readonly name: "deleteRRSetNSEC3"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint16"; + readonly name: "dnstype"; + readonly type: "uint16"; + }, { + readonly internalType: "bytes"; + readonly name: "name"; + readonly type: "bytes"; + }]; + readonly name: "rrdata"; + readonly outputs: readonly [{ + readonly internalType: "uint32"; + readonly name: ""; + readonly type: "uint32"; + }, { + readonly internalType: "uint32"; + readonly name: ""; + readonly type: "uint32"; + }, { + readonly internalType: "bytes20"; + readonly name: ""; + readonly type: "bytes20"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly components: readonly [{ + readonly internalType: "bytes"; + readonly name: "rrset"; + readonly type: "bytes"; + }, { + readonly internalType: "bytes"; + readonly name: "sig"; + readonly type: "bytes"; + }]; + readonly internalType: "struct DNSSEC.RRSetWithSignature"; + readonly name: "input"; + readonly type: "tuple"; + }, { + readonly internalType: "bytes"; + readonly name: "proof"; + readonly type: "bytes"; + }]; + readonly name: "submitRRSet"; + readonly outputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly components: readonly [{ + readonly internalType: "bytes"; + readonly name: "rrset"; + readonly type: "bytes"; + }, { + readonly internalType: "bytes"; + readonly name: "sig"; + readonly type: "bytes"; + }]; + readonly internalType: "struct DNSSEC.RRSetWithSignature[]"; + readonly name: "input"; + readonly type: "tuple[]"; + }, { + readonly internalType: "bytes"; + readonly name: "proof"; + readonly type: "bytes"; + }]; + readonly name: "submitRRSets"; + readonly outputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): DNSSECInterface; + static connect(address: string, runner?: ContractRunner | null): DNSSEC; +} +//# sourceMappingURL=DNSSEC__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/DNSSEC__factory.d.ts.map b/dist/types/factories/contracts/@ens/dnssec/DNSSEC__factory.d.ts.map new file mode 100644 index 00000000..a14d92cc --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/DNSSEC__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"DNSSEC__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/contracts/@ens/dnssec/DNSSEC__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,MAAM,EACN,eAAe,EAChB,MAAM,0CAA0C,CAAC;AAySlD,qBAAa,eAAe;IAC1B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,eAAe;IAGzC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,MAAM;CAGxE"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/DNSSEC__factory.js b/dist/types/factories/contracts/@ens/dnssec/DNSSEC__factory.js new file mode 100644 index 00000000..d323e968 --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/DNSSEC__factory.js @@ -0,0 +1,308 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.DNSSEC__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint8", + name: "id", + type: "uint8", + }, + { + indexed: false, + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "AlgorithmUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint8", + name: "id", + type: "uint8", + }, + { + indexed: false, + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "DigestUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint8", + name: "id", + type: "uint8", + }, + { + indexed: false, + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "NSEC3DigestUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bytes", + name: "name", + type: "bytes", + }, + { + indexed: false, + internalType: "bytes", + name: "rrset", + type: "bytes", + }, + ], + name: "RRSetUpdated", + type: "event", + }, + { + inputs: [], + name: "anchors", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint16", + name: "deleteType", + type: "uint16", + }, + { + internalType: "bytes", + name: "deleteName", + type: "bytes", + }, + { + components: [ + { + internalType: "bytes", + name: "rrset", + type: "bytes", + }, + { + internalType: "bytes", + name: "sig", + type: "bytes", + }, + ], + internalType: "struct DNSSEC.RRSetWithSignature", + name: "nsec", + type: "tuple", + }, + { + internalType: "bytes", + name: "proof", + type: "bytes", + }, + ], + name: "deleteRRSet", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint16", + name: "deleteType", + type: "uint16", + }, + { + internalType: "bytes", + name: "deleteName", + type: "bytes", + }, + { + components: [ + { + internalType: "bytes", + name: "rrset", + type: "bytes", + }, + { + internalType: "bytes", + name: "sig", + type: "bytes", + }, + ], + internalType: "struct DNSSEC.RRSetWithSignature", + name: "closestEncloser", + type: "tuple", + }, + { + components: [ + { + internalType: "bytes", + name: "rrset", + type: "bytes", + }, + { + internalType: "bytes", + name: "sig", + type: "bytes", + }, + ], + internalType: "struct DNSSEC.RRSetWithSignature", + name: "nextClosest", + type: "tuple", + }, + { + internalType: "bytes", + name: "dnskey", + type: "bytes", + }, + ], + name: "deleteRRSetNSEC3", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint16", + name: "dnstype", + type: "uint16", + }, + { + internalType: "bytes", + name: "name", + type: "bytes", + }, + ], + name: "rrdata", + outputs: [ + { + internalType: "uint32", + name: "", + type: "uint32", + }, + { + internalType: "uint32", + name: "", + type: "uint32", + }, + { + internalType: "bytes20", + name: "", + type: "bytes20", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + components: [ + { + internalType: "bytes", + name: "rrset", + type: "bytes", + }, + { + internalType: "bytes", + name: "sig", + type: "bytes", + }, + ], + internalType: "struct DNSSEC.RRSetWithSignature", + name: "input", + type: "tuple", + }, + { + internalType: "bytes", + name: "proof", + type: "bytes", + }, + ], + name: "submitRRSet", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + components: [ + { + internalType: "bytes", + name: "rrset", + type: "bytes", + }, + { + internalType: "bytes", + name: "sig", + type: "bytes", + }, + ], + internalType: "struct DNSSEC.RRSetWithSignature[]", + name: "input", + type: "tuple[]", + }, + { + internalType: "bytes", + name: "proof", + type: "bytes", + }, + ], + name: "submitRRSets", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, +]; +class DNSSEC__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.DNSSEC__factory = DNSSEC__factory; +DNSSEC__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@ens/dnssec/TLDPublicSuffixList__factory.d.ts b/dist/types/factories/contracts/@ens/dnssec/TLDPublicSuffixList__factory.d.ts new file mode 100644 index 00000000..76ebd011 --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/TLDPublicSuffixList__factory.d.ts @@ -0,0 +1,37 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../../common"; +import type { TLDPublicSuffixList, TLDPublicSuffixListInterface } from "../../../../contracts/@ens/dnssec/TLDPublicSuffixList"; +declare type TLDPublicSuffixListConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class TLDPublicSuffixList__factory extends ContractFactory { + constructor(...args: TLDPublicSuffixListConstructorParams); + getDeployTransaction(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): TLDPublicSuffixList__factory; + static readonly bytecode = "0x608060405234801561001057600080fd5b506101e4806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c80634f89059e14610030575b600080fd5b61004361003e36600461012e565b610057565b604051901515815260200160405180910390f35b60008061009e600085858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929392505061010a9050565b60ff16905060008111801561010057506100fb6100bc8260016101a0565b85858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929392505061010a9050565b60ff16155b9150505b92915050565b600082828151811061011e5761011e6101c1565b016020015160f81c905092915050565b6000806020838503121561014157600080fd5b823567ffffffffffffffff8082111561015957600080fd5b818501915085601f83011261016d57600080fd5b81358181111561017c57600080fd5b86602082850101111561018e57600080fd5b60209290920196919550909350505050565b8082018082111561010457634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fdfea164736f6c6343000811000a"; + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "bytes"; + readonly name: "name"; + readonly type: "bytes"; + }]; + readonly name: "isPublicSuffix"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): TLDPublicSuffixListInterface; + static connect(address: string, runner?: ContractRunner | null): TLDPublicSuffixList; +} +export {}; +//# sourceMappingURL=TLDPublicSuffixList__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/TLDPublicSuffixList__factory.d.ts.map b/dist/types/factories/contracts/@ens/dnssec/TLDPublicSuffixList__factory.d.ts.map new file mode 100644 index 00000000..3f5b55de --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/TLDPublicSuffixList__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"TLDPublicSuffixList__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/contracts/@ens/dnssec/TLDPublicSuffixList__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,KAAK,EACV,mBAAmB,EACnB,4BAA4B,EAC7B,MAAM,uDAAuD,CAAC;AA2B/D,aAAK,oCAAoC,GACrC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,4BAA6B,SAAQ,eAAe;gBACnD,GAAG,IAAI,EAAE,oCAAoC;IAQhD,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CACd,MAAM,EAAE,cAAc,GAAG,IAAI,GAC5B,4BAA4B;IAI/B,MAAM,CAAC,QAAQ,CAAC,QAAQ,ghCAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,4BAA4B;IAGtD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,mBAAmB;CAOvB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/TLDPublicSuffixList__factory.js b/dist/types/factories/contracts/@ens/dnssec/TLDPublicSuffixList__factory.js new file mode 100644 index 00000000..9f0be8c0 --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/TLDPublicSuffixList__factory.js @@ -0,0 +1,55 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.TLDPublicSuffixList__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "bytes", + name: "name", + type: "bytes", + }, + ], + name: "isPublicSuffix", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +const _bytecode = "0x608060405234801561001057600080fd5b506101e4806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c80634f89059e14610030575b600080fd5b61004361003e36600461012e565b610057565b604051901515815260200160405180910390f35b60008061009e600085858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929392505061010a9050565b60ff16905060008111801561010057506100fb6100bc8260016101a0565b85858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929392505061010a9050565b60ff16155b9150505b92915050565b600082828151811061011e5761011e6101c1565b016020015160f81c905092915050565b6000806020838503121561014157600080fd5b823567ffffffffffffffff8082111561015957600080fd5b818501915085601f83011261016d57600080fd5b81358181111561017c57600080fd5b86602082850101111561018e57600080fd5b60209290920196919550909350505050565b8082018082111561010457634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fdfea164736f6c6343000811000a"; +const isSuperArgs = (xs) => xs.length > 1; +class TLDPublicSuffixList__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(overrides) { + return super.getDeployTransaction(overrides || {}); + } + deploy(overrides) { + return super.deploy(overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.TLDPublicSuffixList__factory = TLDPublicSuffixList__factory; +TLDPublicSuffixList__factory.bytecode = _bytecode; +TLDPublicSuffixList__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@ens/dnssec/algorithms/DummyAlgorithm__factory.d.ts b/dist/types/factories/contracts/@ens/dnssec/algorithms/DummyAlgorithm__factory.d.ts new file mode 100644 index 00000000..48a34096 --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/algorithms/DummyAlgorithm__factory.d.ts @@ -0,0 +1,45 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../../../common"; +import type { DummyAlgorithm, DummyAlgorithmInterface } from "../../../../../contracts/@ens/dnssec/algorithms/DummyAlgorithm"; +declare type DummyAlgorithmConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class DummyAlgorithm__factory extends ContractFactory { + constructor(...args: DummyAlgorithmConstructorParams); + getDeployTransaction(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): DummyAlgorithm__factory; + static readonly bytecode = "0x608060405234801561001057600080fd5b5061014e806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063de8f50a114610030575b600080fd5b61004a61003e3660046100a7565b60019695505050505050565b604051901515815260200160405180910390f35b60008083601f84011261007057600080fd5b50813567ffffffffffffffff81111561008857600080fd5b6020830191508360208285010111156100a057600080fd5b9250929050565b600080600080600080606087890312156100c057600080fd5b863567ffffffffffffffff808211156100d857600080fd5b6100e48a838b0161005e565b909850965060208901359150808211156100fd57600080fd5b6101098a838b0161005e565b9096509450604089013591508082111561012257600080fd5b5061012f89828a0161005e565b979a969950949750929593949250505056fea164736f6c6343000811000a"; + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }, { + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }, { + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly name: "verify"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): DummyAlgorithmInterface; + static connect(address: string, runner?: ContractRunner | null): DummyAlgorithm; +} +export {}; +//# sourceMappingURL=DummyAlgorithm__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/algorithms/DummyAlgorithm__factory.d.ts.map b/dist/types/factories/contracts/@ens/dnssec/algorithms/DummyAlgorithm__factory.d.ts.map new file mode 100644 index 00000000..c01286f8 --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/algorithms/DummyAlgorithm__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"DummyAlgorithm__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@ens/dnssec/algorithms/DummyAlgorithm__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,cAAc,EACd,uBAAuB,EACxB,MAAM,gEAAgE,CAAC;AAqCxE,aAAK,+BAA+B,GAChC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,uBAAwB,SAAQ,eAAe;gBAC9C,GAAG,IAAI,EAAE,+BAA+B;IAQ3C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,uBAAuB;IAIxE,MAAM,CAAC,QAAQ,CAAC,QAAQ,ouBAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,uBAAuB;IAGjD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,cAAc;CAGlB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/algorithms/DummyAlgorithm__factory.js b/dist/types/factories/contracts/@ens/dnssec/algorithms/DummyAlgorithm__factory.js new file mode 100644 index 00000000..41ee7789 --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/algorithms/DummyAlgorithm__factory.js @@ -0,0 +1,65 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.DummyAlgorithm__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + { + internalType: "bytes", + name: "", + type: "bytes", + }, + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + name: "verify", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +const _bytecode = "0x608060405234801561001057600080fd5b5061014e806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063de8f50a114610030575b600080fd5b61004a61003e3660046100a7565b60019695505050505050565b604051901515815260200160405180910390f35b60008083601f84011261007057600080fd5b50813567ffffffffffffffff81111561008857600080fd5b6020830191508360208285010111156100a057600080fd5b9250929050565b600080600080600080606087890312156100c057600080fd5b863567ffffffffffffffff808211156100d857600080fd5b6100e48a838b0161005e565b909850965060208901359150808211156100fd57600080fd5b6101098a838b0161005e565b9096509450604089013591508082111561012257600080fd5b5061012f89828a0161005e565b979a969950949750929593949250505056fea164736f6c6343000811000a"; +const isSuperArgs = (xs) => xs.length > 1; +class DummyAlgorithm__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(overrides) { + return super.getDeployTransaction(overrides || {}); + } + deploy(overrides) { + return super.deploy(overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.DummyAlgorithm__factory = DummyAlgorithm__factory; +DummyAlgorithm__factory.bytecode = _bytecode; +DummyAlgorithm__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm__factory.d.ts b/dist/types/factories/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm__factory.d.ts new file mode 100644 index 00000000..216ec4c7 --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm__factory.d.ts @@ -0,0 +1,45 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../../../common"; +import type { RSASHA256Algorithm, RSASHA256AlgorithmInterface } from "../../../../../contracts/@ens/dnssec/algorithms/RSASHA256Algorithm"; +declare type RSASHA256AlgorithmConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class RSASHA256Algorithm__factory extends ContractFactory { + constructor(...args: RSASHA256AlgorithmConstructorParams); + getDeployTransaction(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): RSASHA256Algorithm__factory; + static readonly bytecode = "0x608060405234801561001057600080fd5b506106ff806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063de8f50a114610030575b600080fd5b61004361003e366004610539565b610057565b604051901515815260200160405180910390f35b600060608060006100a260048b8b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092939250506102f59050565b60ff169050801561016e576100f760058261ffff168c8c8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092949392505061031a9050565b92506101676101078260056105e9565b61ffff9081169060059061011d9085168d61060b565b610127919061060b565b8c8c8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092949392505061031a9050565b9150610227565b6101b260058b8b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929392505061039c9050565b90506101fe60078261ffff168c8c8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092949392505061031a9050565b925061022461020e8260076105e9565b61ffff9081169060079061011d9085168d61060b565b91505b6000606061026c84868a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506103c492505050565b90925090508180156102e557506102916020825161028a919061060b565b82906103df565b60028b8b6040516102a392919061061e565b602060405180830381855afa1580156102c0573d6000803e3d6000fd5b5050506040513d601f19601f820116820180604052508101906102e3919061062e565b145b9c9b505050505050505050505050565b600082828151811061030957610309610647565b016020015160f81c90505b92915050565b8251606090610329838561065d565b111561033457600080fd5b60008267ffffffffffffffff81111561034f5761034f610670565b6040519080825280601f01601f191660200182016040528015610379576020820181803683370190505b50905060208082019086860101610391828287610403565b509095945050505050565b81516000906103ac83600261065d565b11156103b757600080fd5b50016002015161ffff1690565b600060606103d3838587610459565b91509150935093915050565b81516000906103ef83602061065d565b11156103fa57600080fd5b50016020015190565b6020811061043b578151835261041a60208461065d565b925061042760208361065d565b915061043460208261060b565b9050610403565b905182516020929092036101000a6000190180199091169116179052565b60006060600085518551855188888860405160200161047d969594939291906106b6565b6040516020818303038152906040529050835167ffffffffffffffff8111156104a8576104a8610670565b6040519080825280601f01601f1916602001820160405280156104d2576020820181803683370190505b50915083516020830182516020840160055afa925050935093915050565b60008083601f84011261050257600080fd5b50813567ffffffffffffffff81111561051a57600080fd5b60208301915083602082850101111561053257600080fd5b9250929050565b6000806000806000806060878903121561055257600080fd5b863567ffffffffffffffff8082111561056a57600080fd5b6105768a838b016104f0565b9098509650602089013591508082111561058f57600080fd5b61059b8a838b016104f0565b909650945060408901359150808211156105b457600080fd5b506105c189828a016104f0565b979a9699509497509295939492505050565b634e487b7160e01b600052601160045260246000fd5b61ffff818116838216019080821115610604576106046105d3565b5092915050565b81810381811115610314576103146105d3565b8183823760009101908152919050565b60006020828403121561064057600080fd5b5051919050565b634e487b7160e01b600052603260045260246000fd5b80820180821115610314576103146105d3565b634e487b7160e01b600052604160045260246000fd5b6000815160005b818110156106a7576020818501810151868301520161068d565b50600093019283525090919050565b86815285602082015284604082015260006106e66106e06106da6060850188610686565b86610686565b84610686565b9897505050505050505056fea164736f6c6343000811000a"; + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "bytes"; + readonly name: "key"; + readonly type: "bytes"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }, { + readonly internalType: "bytes"; + readonly name: "sig"; + readonly type: "bytes"; + }]; + readonly name: "verify"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): RSASHA256AlgorithmInterface; + static connect(address: string, runner?: ContractRunner | null): RSASHA256Algorithm; +} +export {}; +//# sourceMappingURL=RSASHA256Algorithm__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm__factory.d.ts.map b/dist/types/factories/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm__factory.d.ts.map new file mode 100644 index 00000000..212a7d5a --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"RSASHA256Algorithm__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,kBAAkB,EAClB,2BAA2B,EAC5B,MAAM,oEAAoE,CAAC;AAqC5E,aAAK,mCAAmC,GACpC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,2BAA4B,SAAQ,eAAe;gBAClD,GAAG,IAAI,EAAE,mCAAmC;IAQ/C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,2BAA2B;IAI5E,MAAM,CAAC,QAAQ,CAAC,QAAQ,skHAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,2BAA2B;IAGrD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,kBAAkB;CAGtB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm__factory.js b/dist/types/factories/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm__factory.js new file mode 100644 index 00000000..54aa3a13 --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm__factory.js @@ -0,0 +1,65 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.RSASHA256Algorithm__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "bytes", + name: "key", + type: "bytes", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + { + internalType: "bytes", + name: "sig", + type: "bytes", + }, + ], + name: "verify", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +const _bytecode = "0x608060405234801561001057600080fd5b506106ff806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063de8f50a114610030575b600080fd5b61004361003e366004610539565b610057565b604051901515815260200160405180910390f35b600060608060006100a260048b8b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092939250506102f59050565b60ff169050801561016e576100f760058261ffff168c8c8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092949392505061031a9050565b92506101676101078260056105e9565b61ffff9081169060059061011d9085168d61060b565b610127919061060b565b8c8c8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092949392505061031a9050565b9150610227565b6101b260058b8b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929392505061039c9050565b90506101fe60078261ffff168c8c8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092949392505061031a9050565b925061022461020e8260076105e9565b61ffff9081169060079061011d9085168d61060b565b91505b6000606061026c84868a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506103c492505050565b90925090508180156102e557506102916020825161028a919061060b565b82906103df565b60028b8b6040516102a392919061061e565b602060405180830381855afa1580156102c0573d6000803e3d6000fd5b5050506040513d601f19601f820116820180604052508101906102e3919061062e565b145b9c9b505050505050505050505050565b600082828151811061030957610309610647565b016020015160f81c90505b92915050565b8251606090610329838561065d565b111561033457600080fd5b60008267ffffffffffffffff81111561034f5761034f610670565b6040519080825280601f01601f191660200182016040528015610379576020820181803683370190505b50905060208082019086860101610391828287610403565b509095945050505050565b81516000906103ac83600261065d565b11156103b757600080fd5b50016002015161ffff1690565b600060606103d3838587610459565b91509150935093915050565b81516000906103ef83602061065d565b11156103fa57600080fd5b50016020015190565b6020811061043b578151835261041a60208461065d565b925061042760208361065d565b915061043460208261060b565b9050610403565b905182516020929092036101000a6000190180199091169116179052565b60006060600085518551855188888860405160200161047d969594939291906106b6565b6040516020818303038152906040529050835167ffffffffffffffff8111156104a8576104a8610670565b6040519080825280601f01601f1916602001820160405280156104d2576020820181803683370190505b50915083516020830182516020840160055afa925050935093915050565b60008083601f84011261050257600080fd5b50813567ffffffffffffffff81111561051a57600080fd5b60208301915083602082850101111561053257600080fd5b9250929050565b6000806000806000806060878903121561055257600080fd5b863567ffffffffffffffff8082111561056a57600080fd5b6105768a838b016104f0565b9098509650602089013591508082111561058f57600080fd5b61059b8a838b016104f0565b909650945060408901359150808211156105b457600080fd5b506105c189828a016104f0565b979a9699509497509295939492505050565b634e487b7160e01b600052601160045260246000fd5b61ffff818116838216019080821115610604576106046105d3565b5092915050565b81810381811115610314576103146105d3565b8183823760009101908152919050565b60006020828403121561064057600080fd5b5051919050565b634e487b7160e01b600052603260045260246000fd5b80820180821115610314576103146105d3565b634e487b7160e01b600052604160045260246000fd5b6000815160005b818110156106a7576020818501810151868301520161068d565b50600093019283525090919050565b86815285602082015284604082015260006106e66106e06106da6060850188610686565b86610686565b84610686565b9897505050505050505056fea164736f6c6343000811000a"; +const isSuperArgs = (xs) => xs.length > 1; +class RSASHA256Algorithm__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(overrides) { + return super.getDeployTransaction(overrides || {}); + } + deploy(overrides) { + return super.deploy(overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.RSASHA256Algorithm__factory = RSASHA256Algorithm__factory; +RSASHA256Algorithm__factory.bytecode = _bytecode; +RSASHA256Algorithm__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@ens/dnssec/algorithms/index.d.ts b/dist/types/factories/contracts/@ens/dnssec/algorithms/index.d.ts new file mode 100644 index 00000000..c088ce4e --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/algorithms/index.d.ts @@ -0,0 +1,3 @@ +export { DummyAlgorithm__factory } from "./DummyAlgorithm__factory"; +export { RSASHA256Algorithm__factory } from "./RSASHA256Algorithm__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/algorithms/index.d.ts.map b/dist/types/factories/contracts/@ens/dnssec/algorithms/index.d.ts.map new file mode 100644 index 00000000..34890d11 --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/algorithms/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@ens/dnssec/algorithms/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/algorithms/index.js b/dist/types/factories/contracts/@ens/dnssec/algorithms/index.js new file mode 100644 index 00000000..0598d8df --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/algorithms/index.js @@ -0,0 +1,7 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.RSASHA256Algorithm__factory = exports.DummyAlgorithm__factory = void 0; +var DummyAlgorithm__factory_1 = require("./DummyAlgorithm__factory"); +Object.defineProperty(exports, "DummyAlgorithm__factory", { enumerable: true, get: function () { return DummyAlgorithm__factory_1.DummyAlgorithm__factory; } }); +var RSASHA256Algorithm__factory_1 = require("./RSASHA256Algorithm__factory"); +Object.defineProperty(exports, "RSASHA256Algorithm__factory", { enumerable: true, get: function () { return RSASHA256Algorithm__factory_1.RSASHA256Algorithm__factory; } }); diff --git a/dist/types/factories/contracts/@ens/dnssec/digests/SHA1Digest__factory.d.ts b/dist/types/factories/contracts/@ens/dnssec/digests/SHA1Digest__factory.d.ts new file mode 100644 index 00000000..25908e29 --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/digests/SHA1Digest__factory.d.ts @@ -0,0 +1,41 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../../../common"; +import type { SHA1Digest, SHA1DigestInterface } from "../../../../../contracts/@ens/dnssec/digests/SHA1Digest"; +declare type SHA1DigestConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class SHA1Digest__factory extends ContractFactory { + constructor(...args: SHA1DigestConstructorParams); + getDeployTransaction(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): SHA1Digest__factory; + static readonly bytecode = "0x608060405234801561001057600080fd5b5061066f806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063f7e83aee14610030575b600080fd5b61004361003e3660046105cf565b610057565b604051901515815260200160405180910390f35b6000601482146100ad5760405162461bcd60e51b815260206004820152601860248201527f496e76616c696420736861312068617368206c656e6774680000000000000000604482015260640160405180910390fd5b60006100f3600085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092939250506101629050565b6bffffffffffffffffffffffff19169050600061014587878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061019592505050565b6bffffffffffffffffffffffff1916919091149695505050505050565b815160009061017283601461063b565b111561017d57600080fd5b5001602001516bffffffffffffffffffffffff191690565b60006040518251602084019350604067ffffffffffffffc0600183011601600982820310600181036101c8576040820191505b50776745230100efcdab890098badcfe001032547600c3d2e1f061021b565b600083831015610214575080820151928290039260208410156102145760001960208590036101000a0119165b9392505050565b60005b82811015610525576102318482896101e7565b85526102418460208301896101e7565b60208601526040818503106001810361025d5760808286038701535b506040830381146001810361027a57602086018051600887021790525b5060405b608081101561030257858101603f19810151603719820151601f19830151600b198401516002911891909218189081027ffffffffefffffffefffffffefffffffefffffffefffffffefffffffefffffffe1663800000009091047c010000000100000001000000010000000100000001000000010000000116179052600c0161027e565b5060805b61014081101561038b57858101607f19810151606f19820151603f198301516017198401516004911891909218189081027ffffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffc1663400000009091047c030000000300000003000000030000000300000003000000030000000316179052601801610306565b508160008060005b60508110156104fb576014810480156103c357600181146103ea576002811461040f57600381146104395761045a565b600160281b8504600160501b86048118600160781b870416189350635a827999925061045a565b600160281b8504600160781b8604600160501b870418189350636ed9eba1925061045a565b600160501b8504600160781b8604818117600160281b8804169116179350638f1bbcdc925061045a565b600160281b8504600160781b8604600160501b87041818935063ca62c1d692505b50601f600160bb1b8504168063ffffffe06001609b1b87041617905080840190508063ffffffff8616019050808301905080600160e01b600484028c015104019050600160a01b8102600160281b860417945050600160501b633fffffff600160521b86041663c00000006604000000000000870416170277ffffffff00ffffffff000000000000ffffffff00ffffffff8516179350600181019050610393565b5050509190910177ffffffff00ffffffff00ffffffff00ffffffff00ffffffff169060400161021e565b50600160601b63ffffffff821667ffffffff000000006101008404166bffffffff00000000000000006201000085041663ffffffff60601b630100000086041663ffffffff60801b6401000000008704161717171702945050505050919050565b60008083601f84011261059857600080fd5b50813567ffffffffffffffff8111156105b057600080fd5b6020830191508360208285010111156105c857600080fd5b9250929050565b600080600080604085870312156105e557600080fd5b843567ffffffffffffffff808211156105fd57600080fd5b61060988838901610586565b9096509450602087013591508082111561062257600080fd5b5061062f87828801610586565b95989497509550505050565b8082018082111561065c57634e487b7160e01b600052601160045260246000fd5b9291505056fea164736f6c6343000811000a"; + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }, { + readonly internalType: "bytes"; + readonly name: "hash"; + readonly type: "bytes"; + }]; + readonly name: "verify"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "pure"; + readonly type: "function"; + }]; + static createInterface(): SHA1DigestInterface; + static connect(address: string, runner?: ContractRunner | null): SHA1Digest; +} +export {}; +//# sourceMappingURL=SHA1Digest__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/digests/SHA1Digest__factory.d.ts.map b/dist/types/factories/contracts/@ens/dnssec/digests/SHA1Digest__factory.d.ts.map new file mode 100644 index 00000000..cb9f8e09 --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/digests/SHA1Digest__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"SHA1Digest__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@ens/dnssec/digests/SHA1Digest__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,UAAU,EACV,mBAAmB,EACpB,MAAM,yDAAyD,CAAC;AAgCjE,aAAK,2BAA2B,GAC5B,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,mBAAoB,SAAQ,eAAe;gBAC1C,GAAG,IAAI,EAAE,2BAA2B;IAQvC,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,mBAAmB;IAIpE,MAAM,CAAC,QAAQ,CAAC,QAAQ,syGAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,mBAAmB;IAG7C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,UAAU;CAG5E"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/digests/SHA1Digest__factory.js b/dist/types/factories/contracts/@ens/dnssec/digests/SHA1Digest__factory.js new file mode 100644 index 00000000..30e1fccc --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/digests/SHA1Digest__factory.js @@ -0,0 +1,60 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.SHA1Digest__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + { + internalType: "bytes", + name: "hash", + type: "bytes", + }, + ], + name: "verify", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "pure", + type: "function", + }, +]; +const _bytecode = "0x608060405234801561001057600080fd5b5061066f806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063f7e83aee14610030575b600080fd5b61004361003e3660046105cf565b610057565b604051901515815260200160405180910390f35b6000601482146100ad5760405162461bcd60e51b815260206004820152601860248201527f496e76616c696420736861312068617368206c656e6774680000000000000000604482015260640160405180910390fd5b60006100f3600085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092939250506101629050565b6bffffffffffffffffffffffff19169050600061014587878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061019592505050565b6bffffffffffffffffffffffff1916919091149695505050505050565b815160009061017283601461063b565b111561017d57600080fd5b5001602001516bffffffffffffffffffffffff191690565b60006040518251602084019350604067ffffffffffffffc0600183011601600982820310600181036101c8576040820191505b50776745230100efcdab890098badcfe001032547600c3d2e1f061021b565b600083831015610214575080820151928290039260208410156102145760001960208590036101000a0119165b9392505050565b60005b82811015610525576102318482896101e7565b85526102418460208301896101e7565b60208601526040818503106001810361025d5760808286038701535b506040830381146001810361027a57602086018051600887021790525b5060405b608081101561030257858101603f19810151603719820151601f19830151600b198401516002911891909218189081027ffffffffefffffffefffffffefffffffefffffffefffffffefffffffefffffffe1663800000009091047c010000000100000001000000010000000100000001000000010000000116179052600c0161027e565b5060805b61014081101561038b57858101607f19810151606f19820151603f198301516017198401516004911891909218189081027ffffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffc1663400000009091047c030000000300000003000000030000000300000003000000030000000316179052601801610306565b508160008060005b60508110156104fb576014810480156103c357600181146103ea576002811461040f57600381146104395761045a565b600160281b8504600160501b86048118600160781b870416189350635a827999925061045a565b600160281b8504600160781b8604600160501b870418189350636ed9eba1925061045a565b600160501b8504600160781b8604818117600160281b8804169116179350638f1bbcdc925061045a565b600160281b8504600160781b8604600160501b87041818935063ca62c1d692505b50601f600160bb1b8504168063ffffffe06001609b1b87041617905080840190508063ffffffff8616019050808301905080600160e01b600484028c015104019050600160a01b8102600160281b860417945050600160501b633fffffff600160521b86041663c00000006604000000000000870416170277ffffffff00ffffffff000000000000ffffffff00ffffffff8516179350600181019050610393565b5050509190910177ffffffff00ffffffff00ffffffff00ffffffff00ffffffff169060400161021e565b50600160601b63ffffffff821667ffffffff000000006101008404166bffffffff00000000000000006201000085041663ffffffff60601b630100000086041663ffffffff60801b6401000000008704161717171702945050505050919050565b60008083601f84011261059857600080fd5b50813567ffffffffffffffff8111156105b057600080fd5b6020830191508360208285010111156105c857600080fd5b9250929050565b600080600080604085870312156105e557600080fd5b843567ffffffffffffffff808211156105fd57600080fd5b61060988838901610586565b9096509450602087013591508082111561062257600080fd5b5061062f87828801610586565b95989497509550505050565b8082018082111561065c57634e487b7160e01b600052601160045260246000fd5b9291505056fea164736f6c6343000811000a"; +const isSuperArgs = (xs) => xs.length > 1; +class SHA1Digest__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(overrides) { + return super.getDeployTransaction(overrides || {}); + } + deploy(overrides) { + return super.deploy(overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.SHA1Digest__factory = SHA1Digest__factory; +SHA1Digest__factory.bytecode = _bytecode; +SHA1Digest__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@ens/dnssec/digests/SHA1NSEC3Digest__factory.d.ts b/dist/types/factories/contracts/@ens/dnssec/digests/SHA1NSEC3Digest__factory.d.ts new file mode 100644 index 00000000..c224d042 --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/digests/SHA1NSEC3Digest__factory.d.ts @@ -0,0 +1,45 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../../../common"; +import type { SHA1NSEC3Digest, SHA1NSEC3DigestInterface } from "../../../../../contracts/@ens/dnssec/digests/SHA1NSEC3Digest"; +declare type SHA1NSEC3DigestConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class SHA1NSEC3Digest__factory extends ContractFactory { + constructor(...args: SHA1NSEC3DigestConstructorParams); + getDeployTransaction(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): SHA1NSEC3Digest__factory; + static readonly bytecode = "0x608060405234801561001057600080fd5b506109c9806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c806368f9dab214610030575b600080fd5b61004361003e3660046108ba565b610055565b60405190815260200160405180910390f35b6000610074604051806040016040528060608152602001600081525090565b6100936100818588610944565b61008c906010610944565b82906101e9565b506100d685858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525085939250506102549050565b5061011987878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525085939250506102549050565b5060006101298260000151610282565b905083156101d457604080518082019091526060815260006020909101819052825152610157826000610672565b5061019a88888080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525086939250506102549050565b5060005b848110156101d2576101b2836000846106a2565b5082516101be90610282565b9150806101ca81610957565b91505061019e565b505b6001600160601b031916979650505050505050565b604080518082019091526060815260006020820152610209602083610970565b1561023157610219602083610970565b610224906020610992565b61022e9083610944565b91505b506020808301829052604080518085526000815283019091019052815b92915050565b60408051808201909152606081526000602082015261027b838460000151518485516106d6565b9392505050565b60006040518251602084019350604067ffffffffffffffc0600183011601600982820310600181036102b5576040820191505b50776745230100efcdab890098badcfe001032547600c3d2e1f0610307565b60008383101561027b5750808201519282900392602084101561027b5760001960208590036101000a0119169392505050565b60005b828110156106115761031d8482896102d4565b855261032d8460208301896102d4565b6020860152604081850310600181036103495760808286038701535b506040830381146001810361036657602086018051600887021790525b5060405b60808110156103ee57858101603f19810151603719820151601f19830151600b198401516002911891909218189081027ffffffffefffffffefffffffefffffffefffffffefffffffefffffffefffffffe1663800000009091047c010000000100000001000000010000000100000001000000010000000116179052600c0161036a565b5060805b61014081101561047757858101607f19810151606f19820151603f198301516017198401516004911891909218189081027ffffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffc1663400000009091047c0300000003000000030000000300000003000000030000000300000003161790526018016103f2565b508160008060005b60508110156105e7576014810480156104af57600181146104d657600281146104fb576003811461052557610546565b600160281b8504600160501b86048118600160781b870416189350635a8279999250610546565b600160281b8504600160781b8604600160501b870418189350636ed9eba19250610546565b600160501b8504600160781b8604818117600160281b8804169116179350638f1bbcdc9250610546565b600160281b8504600160781b8604600160501b87041818935063ca62c1d692505b50601f600160bb1b8504168063ffffffe06001609b1b87041617905080840190508063ffffffff8616019050808301905080600160e01b600484028c015104019050600160a01b8102600160281b860417945050600160501b633fffffff600160521b86041663c00000006604000000000000870416170277ffffffff00ffffffff000000000000ffffffff00ffffffff851617935060018101905061047f565b5050509190910177ffffffff00ffffffff00ffffffff00ffffffff00ffffffff169060400161030a565b50600160601b63ffffffff821667ffffffff000000006101008404166bffffffff00000000000000006201000085041663ffffffff60601b630100000086041663ffffffff60801b6401000000008704161717171702945050505050919050565b60408051808201909152606081526000602082015282515161027b9084906001600160601b0319851660146107c0565b6040805180820190915260608152600060208201526106ce84846001600160601b0319851660146107c0565b949350505050565b60408051808201909152606081526000602082015282518211156106f957600080fd5b60208501516107088386610944565b111561073b5761073b8561072b876020015187866107269190610944565b61083d565b6107369060026109a5565b610854565b60008086518051876020830101935080888701111561075a5787860182525b505050602084015b6020841061079a5780518252610779602083610944565b9150610786602082610944565b9050610793602085610992565b9350610762565b51815160001960208690036101000a019081169019919091161790525083949350505050565b60408051808201909152606081526000602082015260208501516107e48584610944565b11156107f8576107f88561072b8685610944565b60006001836101000a0390508260200360080284901c93508551838682010185831982511617815250805184870111156108325783860181525b509495945050505050565b60008183111561084e57508161024e565b50919050565b815161086083836101e9565b5061086b8382610254565b50505050565b60008083601f84011261088357600080fd5b50813567ffffffffffffffff81111561089b57600080fd5b6020830191508360208285010111156108b357600080fd5b9250929050565b6000806000806000606086880312156108d257600080fd5b853567ffffffffffffffff808211156108ea57600080fd5b6108f689838a01610871565b9097509550602088013591508082111561090f57600080fd5b5061091c88828901610871565b96999598509660400135949350505050565b634e487b7160e01b600052601160045260246000fd5b8082018082111561024e5761024e61092e565b6000600182016109695761096961092e565b5060010190565b60008261098d57634e487b7160e01b600052601260045260246000fd5b500690565b8181038181111561024e5761024e61092e565b808202811582820484141761024e5761024e61092e56fea164736f6c6343000811000a"; + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "bytes"; + readonly name: "salt"; + readonly type: "bytes"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }, { + readonly internalType: "uint256"; + readonly name: "iterations"; + readonly type: "uint256"; + }]; + readonly name: "hash"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "pure"; + readonly type: "function"; + }]; + static createInterface(): SHA1NSEC3DigestInterface; + static connect(address: string, runner?: ContractRunner | null): SHA1NSEC3Digest; +} +export {}; +//# sourceMappingURL=SHA1NSEC3Digest__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/digests/SHA1NSEC3Digest__factory.d.ts.map b/dist/types/factories/contracts/@ens/dnssec/digests/SHA1NSEC3Digest__factory.d.ts.map new file mode 100644 index 00000000..08063d9f --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/digests/SHA1NSEC3Digest__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"SHA1NSEC3Digest__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@ens/dnssec/digests/SHA1NSEC3Digest__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,eAAe,EACf,wBAAwB,EACzB,MAAM,8DAA8D,CAAC;AAqCtE,aAAK,gCAAgC,GACjC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,wBAAyB,SAAQ,eAAe;gBAC/C,GAAG,IAAI,EAAE,gCAAgC;IAQ5C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,wBAAwB;IAIzE,MAAM,CAAC,QAAQ,CAAC,QAAQ,09JAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,wBAAwB;IAGlD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,eAAe;CAGnB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/digests/SHA1NSEC3Digest__factory.js b/dist/types/factories/contracts/@ens/dnssec/digests/SHA1NSEC3Digest__factory.js new file mode 100644 index 00000000..518ee7c9 --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/digests/SHA1NSEC3Digest__factory.js @@ -0,0 +1,65 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.SHA1NSEC3Digest__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "bytes", + name: "salt", + type: "bytes", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + { + internalType: "uint256", + name: "iterations", + type: "uint256", + }, + ], + name: "hash", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "pure", + type: "function", + }, +]; +const _bytecode = "0x608060405234801561001057600080fd5b506109c9806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c806368f9dab214610030575b600080fd5b61004361003e3660046108ba565b610055565b60405190815260200160405180910390f35b6000610074604051806040016040528060608152602001600081525090565b6100936100818588610944565b61008c906010610944565b82906101e9565b506100d685858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525085939250506102549050565b5061011987878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525085939250506102549050565b5060006101298260000151610282565b905083156101d457604080518082019091526060815260006020909101819052825152610157826000610672565b5061019a88888080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525086939250506102549050565b5060005b848110156101d2576101b2836000846106a2565b5082516101be90610282565b9150806101ca81610957565b91505061019e565b505b6001600160601b031916979650505050505050565b604080518082019091526060815260006020820152610209602083610970565b1561023157610219602083610970565b610224906020610992565b61022e9083610944565b91505b506020808301829052604080518085526000815283019091019052815b92915050565b60408051808201909152606081526000602082015261027b838460000151518485516106d6565b9392505050565b60006040518251602084019350604067ffffffffffffffc0600183011601600982820310600181036102b5576040820191505b50776745230100efcdab890098badcfe001032547600c3d2e1f0610307565b60008383101561027b5750808201519282900392602084101561027b5760001960208590036101000a0119169392505050565b60005b828110156106115761031d8482896102d4565b855261032d8460208301896102d4565b6020860152604081850310600181036103495760808286038701535b506040830381146001810361036657602086018051600887021790525b5060405b60808110156103ee57858101603f19810151603719820151601f19830151600b198401516002911891909218189081027ffffffffefffffffefffffffefffffffefffffffefffffffefffffffefffffffe1663800000009091047c010000000100000001000000010000000100000001000000010000000116179052600c0161036a565b5060805b61014081101561047757858101607f19810151606f19820151603f198301516017198401516004911891909218189081027ffffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffc1663400000009091047c0300000003000000030000000300000003000000030000000300000003161790526018016103f2565b508160008060005b60508110156105e7576014810480156104af57600181146104d657600281146104fb576003811461052557610546565b600160281b8504600160501b86048118600160781b870416189350635a8279999250610546565b600160281b8504600160781b8604600160501b870418189350636ed9eba19250610546565b600160501b8504600160781b8604818117600160281b8804169116179350638f1bbcdc9250610546565b600160281b8504600160781b8604600160501b87041818935063ca62c1d692505b50601f600160bb1b8504168063ffffffe06001609b1b87041617905080840190508063ffffffff8616019050808301905080600160e01b600484028c015104019050600160a01b8102600160281b860417945050600160501b633fffffff600160521b86041663c00000006604000000000000870416170277ffffffff00ffffffff000000000000ffffffff00ffffffff851617935060018101905061047f565b5050509190910177ffffffff00ffffffff00ffffffff00ffffffff00ffffffff169060400161030a565b50600160601b63ffffffff821667ffffffff000000006101008404166bffffffff00000000000000006201000085041663ffffffff60601b630100000086041663ffffffff60801b6401000000008704161717171702945050505050919050565b60408051808201909152606081526000602082015282515161027b9084906001600160601b0319851660146107c0565b6040805180820190915260608152600060208201526106ce84846001600160601b0319851660146107c0565b949350505050565b60408051808201909152606081526000602082015282518211156106f957600080fd5b60208501516107088386610944565b111561073b5761073b8561072b876020015187866107269190610944565b61083d565b6107369060026109a5565b610854565b60008086518051876020830101935080888701111561075a5787860182525b505050602084015b6020841061079a5780518252610779602083610944565b9150610786602082610944565b9050610793602085610992565b9350610762565b51815160001960208690036101000a019081169019919091161790525083949350505050565b60408051808201909152606081526000602082015260208501516107e48584610944565b11156107f8576107f88561072b8685610944565b60006001836101000a0390508260200360080284901c93508551838682010185831982511617815250805184870111156108325783860181525b509495945050505050565b60008183111561084e57508161024e565b50919050565b815161086083836101e9565b5061086b8382610254565b50505050565b60008083601f84011261088357600080fd5b50813567ffffffffffffffff81111561089b57600080fd5b6020830191508360208285010111156108b357600080fd5b9250929050565b6000806000806000606086880312156108d257600080fd5b853567ffffffffffffffff808211156108ea57600080fd5b6108f689838a01610871565b9097509550602088013591508082111561090f57600080fd5b5061091c88828901610871565b96999598509660400135949350505050565b634e487b7160e01b600052601160045260246000fd5b8082018082111561024e5761024e61092e565b6000600182016109695761096961092e565b5060010190565b60008261098d57634e487b7160e01b600052601260045260246000fd5b500690565b8181038181111561024e5761024e61092e565b808202811582820484141761024e5761024e61092e56fea164736f6c6343000811000a"; +const isSuperArgs = (xs) => xs.length > 1; +class SHA1NSEC3Digest__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(overrides) { + return super.getDeployTransaction(overrides || {}); + } + deploy(overrides) { + return super.deploy(overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.SHA1NSEC3Digest__factory = SHA1NSEC3Digest__factory; +SHA1NSEC3Digest__factory.bytecode = _bytecode; +SHA1NSEC3Digest__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@ens/dnssec/digests/SHA256Digest__factory.d.ts b/dist/types/factories/contracts/@ens/dnssec/digests/SHA256Digest__factory.d.ts new file mode 100644 index 00000000..5467224e --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/digests/SHA256Digest__factory.d.ts @@ -0,0 +1,41 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../../../common"; +import type { SHA256Digest, SHA256DigestInterface } from "../../../../../contracts/@ens/dnssec/digests/SHA256Digest"; +declare type SHA256DigestConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class SHA256Digest__factory extends ContractFactory { + constructor(...args: SHA256DigestConstructorParams); + getDeployTransaction(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): SHA256Digest__factory; + static readonly bytecode = "0x608060405234801561001057600080fd5b50610283806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063f7e83aee14610030575b600080fd5b61004361003e3660046101ba565b610057565b604051901515815260200160405180910390f35b6000602082146100ad5760405162461bcd60e51b815260206004820152601a60248201527f496e76616c6964207368613235362068617368206c656e677468000000000000604482015260640160405180910390fd5b6100f1600084848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929392505061014d9050565b60028686604051610103929190610226565b602060405180830381855afa158015610120573d6000803e3d6000fd5b5050506040513d601f19601f820116820180604052508101906101439190610236565b1495945050505050565b815160009061015d83602061024f565b111561016857600080fd5b50016020015190565b60008083601f84011261018357600080fd5b50813567ffffffffffffffff81111561019b57600080fd5b6020830191508360208285010111156101b357600080fd5b9250929050565b600080600080604085870312156101d057600080fd5b843567ffffffffffffffff808211156101e857600080fd5b6101f488838901610171565b9096509450602087013591508082111561020d57600080fd5b5061021a87828801610171565b95989497509550505050565b8183823760009101908152919050565b60006020828403121561024857600080fd5b5051919050565b8082018082111561027057634e487b7160e01b600052601160045260246000fd5b9291505056fea164736f6c6343000811000a"; + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }, { + readonly internalType: "bytes"; + readonly name: "hash"; + readonly type: "bytes"; + }]; + readonly name: "verify"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "pure"; + readonly type: "function"; + }]; + static createInterface(): SHA256DigestInterface; + static connect(address: string, runner?: ContractRunner | null): SHA256Digest; +} +export {}; +//# sourceMappingURL=SHA256Digest__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/digests/SHA256Digest__factory.d.ts.map b/dist/types/factories/contracts/@ens/dnssec/digests/SHA256Digest__factory.d.ts.map new file mode 100644 index 00000000..5b236fd4 --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/digests/SHA256Digest__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"SHA256Digest__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@ens/dnssec/digests/SHA256Digest__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,YAAY,EACZ,qBAAqB,EACtB,MAAM,2DAA2D,CAAC;AAgCnE,aAAK,6BAA6B,GAC9B,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,qBAAsB,SAAQ,eAAe;gBAC5C,GAAG,IAAI,EAAE,6BAA6B;IAQzC,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,qBAAqB;IAItE,MAAM,CAAC,QAAQ,CAAC,QAAQ,80CAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,qBAAqB;IAG/C,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,YAAY;CAGhB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/digests/SHA256Digest__factory.js b/dist/types/factories/contracts/@ens/dnssec/digests/SHA256Digest__factory.js new file mode 100644 index 00000000..cef52861 --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/digests/SHA256Digest__factory.js @@ -0,0 +1,60 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.SHA256Digest__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + { + internalType: "bytes", + name: "hash", + type: "bytes", + }, + ], + name: "verify", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "pure", + type: "function", + }, +]; +const _bytecode = "0x608060405234801561001057600080fd5b50610283806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063f7e83aee14610030575b600080fd5b61004361003e3660046101ba565b610057565b604051901515815260200160405180910390f35b6000602082146100ad5760405162461bcd60e51b815260206004820152601a60248201527f496e76616c6964207368613235362068617368206c656e677468000000000000604482015260640160405180910390fd5b6100f1600084848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929392505061014d9050565b60028686604051610103929190610226565b602060405180830381855afa158015610120573d6000803e3d6000fd5b5050506040513d601f19601f820116820180604052508101906101439190610236565b1495945050505050565b815160009061015d83602061024f565b111561016857600080fd5b50016020015190565b60008083601f84011261018357600080fd5b50813567ffffffffffffffff81111561019b57600080fd5b6020830191508360208285010111156101b357600080fd5b9250929050565b600080600080604085870312156101d057600080fd5b843567ffffffffffffffff808211156101e857600080fd5b6101f488838901610171565b9096509450602087013591508082111561020d57600080fd5b5061021a87828801610171565b95989497509550505050565b8183823760009101908152919050565b60006020828403121561024857600080fd5b5051919050565b8082018082111561027057634e487b7160e01b600052601160045260246000fd5b9291505056fea164736f6c6343000811000a"; +const isSuperArgs = (xs) => xs.length > 1; +class SHA256Digest__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(overrides) { + return super.getDeployTransaction(overrides || {}); + } + deploy(overrides) { + return super.deploy(overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.SHA256Digest__factory = SHA256Digest__factory; +SHA256Digest__factory.bytecode = _bytecode; +SHA256Digest__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@ens/dnssec/digests/index.d.ts b/dist/types/factories/contracts/@ens/dnssec/digests/index.d.ts new file mode 100644 index 00000000..ac413b7e --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/digests/index.d.ts @@ -0,0 +1,4 @@ +export { SHA1Digest__factory } from "./SHA1Digest__factory"; +export { SHA1NSEC3Digest__factory } from "./SHA1NSEC3Digest__factory"; +export { SHA256Digest__factory } from "./SHA256Digest__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/digests/index.d.ts.map b/dist/types/factories/contracts/@ens/dnssec/digests/index.d.ts.map new file mode 100644 index 00000000..6408780d --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/digests/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@ens/dnssec/digests/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/digests/index.js b/dist/types/factories/contracts/@ens/dnssec/digests/index.js new file mode 100644 index 00000000..0c3b6f89 --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/digests/index.js @@ -0,0 +1,9 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.SHA256Digest__factory = exports.SHA1NSEC3Digest__factory = exports.SHA1Digest__factory = void 0; +var SHA1Digest__factory_1 = require("./SHA1Digest__factory"); +Object.defineProperty(exports, "SHA1Digest__factory", { enumerable: true, get: function () { return SHA1Digest__factory_1.SHA1Digest__factory; } }); +var SHA1NSEC3Digest__factory_1 = require("./SHA1NSEC3Digest__factory"); +Object.defineProperty(exports, "SHA1NSEC3Digest__factory", { enumerable: true, get: function () { return SHA1NSEC3Digest__factory_1.SHA1NSEC3Digest__factory; } }); +var SHA256Digest__factory_1 = require("./SHA256Digest__factory"); +Object.defineProperty(exports, "SHA256Digest__factory", { enumerable: true, get: function () { return SHA256Digest__factory_1.SHA256Digest__factory; } }); diff --git a/dist/types/factories/contracts/@ens/dnssec/index.d.ts b/dist/types/factories/contracts/@ens/dnssec/index.d.ts new file mode 100644 index 00000000..be5f5a73 --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/index.d.ts @@ -0,0 +1,9 @@ +export * as dnssecImplSol from "./DNSSECImpl.sol"; +export * as algorithms from "./algorithms"; +export * as digests from "./digests"; +export * as interfaces from "./interfaces"; +export * as libraries from "./libraries"; +export { DNSRegistrar__factory } from "./DNSRegistrar__factory"; +export { DNSSEC__factory } from "./DNSSEC__factory"; +export { TLDPublicSuffixList__factory } from "./TLDPublicSuffixList__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/index.d.ts.map b/dist/types/factories/contracts/@ens/dnssec/index.d.ts.map new file mode 100644 index 00000000..97409a0c --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/contracts/@ens/dnssec/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,aAAa,MAAM,kBAAkB,CAAC;AAClD,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AACrC,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/index.js b/dist/types/factories/contracts/@ens/dnssec/index.js new file mode 100644 index 00000000..9e950d6e --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/index.js @@ -0,0 +1,37 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.TLDPublicSuffixList__factory = exports.DNSSEC__factory = exports.DNSRegistrar__factory = exports.libraries = exports.interfaces = exports.digests = exports.algorithms = exports.dnssecImplSol = void 0; +exports.dnssecImplSol = __importStar(require("./DNSSECImpl.sol")); +exports.algorithms = __importStar(require("./algorithms")); +exports.digests = __importStar(require("./digests")); +exports.interfaces = __importStar(require("./interfaces")); +exports.libraries = __importStar(require("./libraries")); +var DNSRegistrar__factory_1 = require("./DNSRegistrar__factory"); +Object.defineProperty(exports, "DNSRegistrar__factory", { enumerable: true, get: function () { return DNSRegistrar__factory_1.DNSRegistrar__factory; } }); +var DNSSEC__factory_1 = require("./DNSSEC__factory"); +Object.defineProperty(exports, "DNSSEC__factory", { enumerable: true, get: function () { return DNSSEC__factory_1.DNSSEC__factory; } }); +var TLDPublicSuffixList__factory_1 = require("./TLDPublicSuffixList__factory"); +Object.defineProperty(exports, "TLDPublicSuffixList__factory", { enumerable: true, get: function () { return TLDPublicSuffixList__factory_1.TLDPublicSuffixList__factory; } }); diff --git a/dist/types/factories/contracts/@ens/dnssec/interfaces/Algorithm__factory.d.ts b/dist/types/factories/contracts/@ens/dnssec/interfaces/Algorithm__factory.d.ts new file mode 100644 index 00000000..0a1d4671 --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/interfaces/Algorithm__factory.d.ts @@ -0,0 +1,30 @@ +import { type ContractRunner } from "ethers"; +import type { Algorithm, AlgorithmInterface } from "../../../../../contracts/@ens/dnssec/interfaces/Algorithm"; +export declare class Algorithm__factory { + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "bytes"; + readonly name: "key"; + readonly type: "bytes"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "verify"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): AlgorithmInterface; + static connect(address: string, runner?: ContractRunner | null): Algorithm; +} +//# sourceMappingURL=Algorithm__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/interfaces/Algorithm__factory.d.ts.map b/dist/types/factories/contracts/@ens/dnssec/interfaces/Algorithm__factory.d.ts.map new file mode 100644 index 00000000..8ddf60bd --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/interfaces/Algorithm__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"Algorithm__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@ens/dnssec/interfaces/Algorithm__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,SAAS,EACT,kBAAkB,EACnB,MAAM,2DAA2D,CAAC;AAkCnE,qBAAa,kBAAkB;IAC7B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,kBAAkB;IAG5C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,SAAS;CAG3E"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/interfaces/Algorithm__factory.js b/dist/types/factories/contracts/@ens/dnssec/interfaces/Algorithm__factory.js new file mode 100644 index 00000000..379d2b60 --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/interfaces/Algorithm__factory.js @@ -0,0 +1,45 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.Algorithm__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "bytes", + name: "key", + type: "bytes", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "verify", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class Algorithm__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.Algorithm__factory = Algorithm__factory; +Algorithm__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@ens/dnssec/interfaces/Digest__factory.d.ts b/dist/types/factories/contracts/@ens/dnssec/interfaces/Digest__factory.d.ts new file mode 100644 index 00000000..80532a6d --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/interfaces/Digest__factory.d.ts @@ -0,0 +1,26 @@ +import { type ContractRunner } from "ethers"; +import type { Digest, DigestInterface } from "../../../../../contracts/@ens/dnssec/interfaces/Digest"; +export declare class Digest__factory { + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }, { + readonly internalType: "bytes"; + readonly name: "hash"; + readonly type: "bytes"; + }]; + readonly name: "verify"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "pure"; + readonly type: "function"; + }]; + static createInterface(): DigestInterface; + static connect(address: string, runner?: ContractRunner | null): Digest; +} +//# sourceMappingURL=Digest__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/interfaces/Digest__factory.d.ts.map b/dist/types/factories/contracts/@ens/dnssec/interfaces/Digest__factory.d.ts.map new file mode 100644 index 00000000..65379b02 --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/interfaces/Digest__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"Digest__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@ens/dnssec/interfaces/Digest__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,MAAM,EACN,eAAe,EAChB,MAAM,wDAAwD,CAAC;AA6BhE,qBAAa,eAAe;IAC1B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,eAAe;IAGzC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,MAAM;CAGxE"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/interfaces/Digest__factory.js b/dist/types/factories/contracts/@ens/dnssec/interfaces/Digest__factory.js new file mode 100644 index 00000000..ed5f0ce0 --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/interfaces/Digest__factory.js @@ -0,0 +1,40 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.Digest__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + { + internalType: "bytes", + name: "hash", + type: "bytes", + }, + ], + name: "verify", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "pure", + type: "function", + }, +]; +class Digest__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.Digest__factory = Digest__factory; +Digest__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@ens/dnssec/interfaces/IDNSRegistrar__factory.d.ts b/dist/types/factories/contracts/@ens/dnssec/interfaces/IDNSRegistrar__factory.d.ts new file mode 100644 index 00000000..9cd90838 --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/interfaces/IDNSRegistrar__factory.d.ts @@ -0,0 +1,84 @@ +import { type ContractRunner } from "ethers"; +import type { IDNSRegistrar, IDNSRegistrarInterface } from "../../../../../contracts/@ens/dnssec/interfaces/IDNSRegistrar"; +export declare class IDNSRegistrar__factory { + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "bytes"; + readonly name: "name"; + readonly type: "bytes"; + }, { + readonly internalType: "bytes"; + readonly name: "proof"; + readonly type: "bytes"; + }]; + readonly name: "claim"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes"; + readonly name: "name"; + readonly type: "bytes"; + }, { + readonly components: readonly [{ + readonly internalType: "bytes"; + readonly name: "rrset"; + readonly type: "bytes"; + }, { + readonly internalType: "bytes"; + readonly name: "sig"; + readonly type: "bytes"; + }]; + readonly internalType: "struct DNSSEC.RRSetWithSignature[]"; + readonly name: "input"; + readonly type: "tuple[]"; + }, { + readonly internalType: "bytes"; + readonly name: "proof"; + readonly type: "bytes"; + }]; + readonly name: "proveAndClaim"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes"; + readonly name: "name"; + readonly type: "bytes"; + }, { + readonly components: readonly [{ + readonly internalType: "bytes"; + readonly name: "rrset"; + readonly type: "bytes"; + }, { + readonly internalType: "bytes"; + readonly name: "sig"; + readonly type: "bytes"; + }]; + readonly internalType: "struct DNSSEC.RRSetWithSignature[]"; + readonly name: "input"; + readonly type: "tuple[]"; + }, { + readonly internalType: "bytes"; + readonly name: "proof"; + readonly type: "bytes"; + }, { + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }]; + readonly name: "proveAndClaimWithResolver"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): IDNSRegistrarInterface; + static connect(address: string, runner?: ContractRunner | null): IDNSRegistrar; +} +//# sourceMappingURL=IDNSRegistrar__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/interfaces/IDNSRegistrar__factory.d.ts.map b/dist/types/factories/contracts/@ens/dnssec/interfaces/IDNSRegistrar__factory.d.ts.map new file mode 100644 index 00000000..72bdfa53 --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/interfaces/IDNSRegistrar__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IDNSRegistrar__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@ens/dnssec/interfaces/IDNSRegistrar__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,aAAa,EACb,sBAAsB,EACvB,MAAM,+DAA+D,CAAC;AAuGvE,qBAAa,sBAAsB;IACjC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,sBAAsB;IAGhD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,aAAa;CAGjB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/interfaces/IDNSRegistrar__factory.js b/dist/types/factories/contracts/@ens/dnssec/interfaces/IDNSRegistrar__factory.js new file mode 100644 index 00000000..3f416b7f --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/interfaces/IDNSRegistrar__factory.js @@ -0,0 +1,114 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IDNSRegistrar__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "bytes", + name: "name", + type: "bytes", + }, + { + internalType: "bytes", + name: "proof", + type: "bytes", + }, + ], + name: "claim", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes", + name: "name", + type: "bytes", + }, + { + components: [ + { + internalType: "bytes", + name: "rrset", + type: "bytes", + }, + { + internalType: "bytes", + name: "sig", + type: "bytes", + }, + ], + internalType: "struct DNSSEC.RRSetWithSignature[]", + name: "input", + type: "tuple[]", + }, + { + internalType: "bytes", + name: "proof", + type: "bytes", + }, + ], + name: "proveAndClaim", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes", + name: "name", + type: "bytes", + }, + { + components: [ + { + internalType: "bytes", + name: "rrset", + type: "bytes", + }, + { + internalType: "bytes", + name: "sig", + type: "bytes", + }, + ], + internalType: "struct DNSSEC.RRSetWithSignature[]", + name: "input", + type: "tuple[]", + }, + { + internalType: "bytes", + name: "proof", + type: "bytes", + }, + { + internalType: "address", + name: "resolver", + type: "address", + }, + { + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "proveAndClaimWithResolver", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +class IDNSRegistrar__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IDNSRegistrar__factory = IDNSRegistrar__factory; +IDNSRegistrar__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@ens/dnssec/interfaces/NSEC3Digest__factory.d.ts b/dist/types/factories/contracts/@ens/dnssec/interfaces/NSEC3Digest__factory.d.ts new file mode 100644 index 00000000..fc5d9aa5 --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/interfaces/NSEC3Digest__factory.d.ts @@ -0,0 +1,30 @@ +import { type ContractRunner } from "ethers"; +import type { NSEC3Digest, NSEC3DigestInterface } from "../../../../../contracts/@ens/dnssec/interfaces/NSEC3Digest"; +export declare class NSEC3Digest__factory { + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "bytes"; + readonly name: "salt"; + readonly type: "bytes"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }, { + readonly internalType: "uint256"; + readonly name: "iterations"; + readonly type: "uint256"; + }]; + readonly name: "hash"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "pure"; + readonly type: "function"; + }]; + static createInterface(): NSEC3DigestInterface; + static connect(address: string, runner?: ContractRunner | null): NSEC3Digest; +} +//# sourceMappingURL=NSEC3Digest__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/interfaces/NSEC3Digest__factory.d.ts.map b/dist/types/factories/contracts/@ens/dnssec/interfaces/NSEC3Digest__factory.d.ts.map new file mode 100644 index 00000000..aa904321 --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/interfaces/NSEC3Digest__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"NSEC3Digest__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@ens/dnssec/interfaces/NSEC3Digest__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,WAAW,EACX,oBAAoB,EACrB,MAAM,6DAA6D,CAAC;AAkCrE,qBAAa,oBAAoB;IAC/B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,oBAAoB;IAG9C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,WAAW;CAG7E"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/interfaces/NSEC3Digest__factory.js b/dist/types/factories/contracts/@ens/dnssec/interfaces/NSEC3Digest__factory.js new file mode 100644 index 00000000..e2ccc2dc --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/interfaces/NSEC3Digest__factory.js @@ -0,0 +1,45 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.NSEC3Digest__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "bytes", + name: "salt", + type: "bytes", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + { + internalType: "uint256", + name: "iterations", + type: "uint256", + }, + ], + name: "hash", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "pure", + type: "function", + }, +]; +class NSEC3Digest__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.NSEC3Digest__factory = NSEC3Digest__factory; +NSEC3Digest__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@ens/dnssec/interfaces/PublicSuffixList__factory.d.ts b/dist/types/factories/contracts/@ens/dnssec/interfaces/PublicSuffixList__factory.d.ts new file mode 100644 index 00000000..ef5502bd --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/interfaces/PublicSuffixList__factory.d.ts @@ -0,0 +1,22 @@ +import { type ContractRunner } from "ethers"; +import type { PublicSuffixList, PublicSuffixListInterface } from "../../../../../contracts/@ens/dnssec/interfaces/PublicSuffixList"; +export declare class PublicSuffixList__factory { + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "bytes"; + readonly name: "name"; + readonly type: "bytes"; + }]; + readonly name: "isPublicSuffix"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): PublicSuffixListInterface; + static connect(address: string, runner?: ContractRunner | null): PublicSuffixList; +} +//# sourceMappingURL=PublicSuffixList__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/interfaces/PublicSuffixList__factory.d.ts.map b/dist/types/factories/contracts/@ens/dnssec/interfaces/PublicSuffixList__factory.d.ts.map new file mode 100644 index 00000000..cb840693 --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/interfaces/PublicSuffixList__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"PublicSuffixList__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@ens/dnssec/interfaces/PublicSuffixList__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,gBAAgB,EAChB,yBAAyB,EAC1B,MAAM,kEAAkE,CAAC;AAwB1E,qBAAa,yBAAyB;IACpC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,yBAAyB;IAGnD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,gBAAgB;CAGpB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/interfaces/PublicSuffixList__factory.js b/dist/types/factories/contracts/@ens/dnssec/interfaces/PublicSuffixList__factory.js new file mode 100644 index 00000000..a0c87f75 --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/interfaces/PublicSuffixList__factory.js @@ -0,0 +1,35 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.PublicSuffixList__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "bytes", + name: "name", + type: "bytes", + }, + ], + name: "isPublicSuffix", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class PublicSuffixList__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.PublicSuffixList__factory = PublicSuffixList__factory; +PublicSuffixList__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@ens/dnssec/interfaces/index.d.ts b/dist/types/factories/contracts/@ens/dnssec/interfaces/index.d.ts new file mode 100644 index 00000000..48650bc7 --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/interfaces/index.d.ts @@ -0,0 +1,6 @@ +export { Algorithm__factory } from "./Algorithm__factory"; +export { Digest__factory } from "./Digest__factory"; +export { IDNSRegistrar__factory } from "./IDNSRegistrar__factory"; +export { NSEC3Digest__factory } from "./NSEC3Digest__factory"; +export { PublicSuffixList__factory } from "./PublicSuffixList__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/interfaces/index.d.ts.map b/dist/types/factories/contracts/@ens/dnssec/interfaces/index.d.ts.map new file mode 100644 index 00000000..fdd65173 --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/interfaces/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@ens/dnssec/interfaces/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/interfaces/index.js b/dist/types/factories/contracts/@ens/dnssec/interfaces/index.js new file mode 100644 index 00000000..4a759792 --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/interfaces/index.js @@ -0,0 +1,13 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.PublicSuffixList__factory = exports.NSEC3Digest__factory = exports.IDNSRegistrar__factory = exports.Digest__factory = exports.Algorithm__factory = void 0; +var Algorithm__factory_1 = require("./Algorithm__factory"); +Object.defineProperty(exports, "Algorithm__factory", { enumerable: true, get: function () { return Algorithm__factory_1.Algorithm__factory; } }); +var Digest__factory_1 = require("./Digest__factory"); +Object.defineProperty(exports, "Digest__factory", { enumerable: true, get: function () { return Digest__factory_1.Digest__factory; } }); +var IDNSRegistrar__factory_1 = require("./IDNSRegistrar__factory"); +Object.defineProperty(exports, "IDNSRegistrar__factory", { enumerable: true, get: function () { return IDNSRegistrar__factory_1.IDNSRegistrar__factory; } }); +var NSEC3Digest__factory_1 = require("./NSEC3Digest__factory"); +Object.defineProperty(exports, "NSEC3Digest__factory", { enumerable: true, get: function () { return NSEC3Digest__factory_1.NSEC3Digest__factory; } }); +var PublicSuffixList__factory_1 = require("./PublicSuffixList__factory"); +Object.defineProperty(exports, "PublicSuffixList__factory", { enumerable: true, get: function () { return PublicSuffixList__factory_1.PublicSuffixList__factory; } }); diff --git a/dist/types/factories/contracts/@ens/dnssec/libraries/SHA1__factory.d.ts b/dist/types/factories/contracts/@ens/dnssec/libraries/SHA1__factory.d.ts new file mode 100644 index 00000000..966dfac0 --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/libraries/SHA1__factory.d.ts @@ -0,0 +1,33 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../../../common"; +import type { SHA1, SHA1Interface } from "../../../../../contracts/@ens/dnssec/libraries/SHA1"; +declare type SHA1ConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class SHA1__factory extends ContractFactory { + constructor(...args: SHA1ConstructorParams); + getDeployTransaction(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): SHA1__factory; + static readonly bytecode = "0x602d6037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea164736f6c6343000811000a"; + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "bytes32"; + readonly name: "x"; + readonly type: "bytes32"; + }]; + readonly name: "Debug"; + readonly type: "event"; + }]; + static createInterface(): SHA1Interface; + static connect(address: string, runner?: ContractRunner | null): SHA1; +} +export {}; +//# sourceMappingURL=SHA1__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/libraries/SHA1__factory.d.ts.map b/dist/types/factories/contracts/@ens/dnssec/libraries/SHA1__factory.d.ts.map new file mode 100644 index 00000000..eff6ff37 --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/libraries/SHA1__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"SHA1__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@ens/dnssec/libraries/SHA1__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,IAAI,EACJ,aAAa,EACd,MAAM,qDAAqD,CAAC;AAqB7D,aAAK,qBAAqB,GACtB,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,aAAc,SAAQ,eAAe;gBACpC,GAAG,IAAI,EAAE,qBAAqB;IAQjC,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,aAAa;IAI9D,MAAM,CAAC,QAAQ,CAAC,QAAQ,gNAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,aAAa;IAGvC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,IAAI;CAGtE"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/libraries/SHA1__factory.js b/dist/types/factories/contracts/@ens/dnssec/libraries/SHA1__factory.js new file mode 100644 index 00000000..0dc2360e --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/libraries/SHA1__factory.js @@ -0,0 +1,49 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.SHA1__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bytes32", + name: "x", + type: "bytes32", + }, + ], + name: "Debug", + type: "event", + }, +]; +const _bytecode = "0x602d6037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea164736f6c6343000811000a"; +const isSuperArgs = (xs) => xs.length > 1; +class SHA1__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(overrides) { + return super.getDeployTransaction(overrides || {}); + } + deploy(overrides) { + return super.deploy(overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.SHA1__factory = SHA1__factory; +SHA1__factory.bytecode = _bytecode; +SHA1__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@ens/dnssec/libraries/index.d.ts b/dist/types/factories/contracts/@ens/dnssec/libraries/index.d.ts new file mode 100644 index 00000000..715ce756 --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/libraries/index.d.ts @@ -0,0 +1,2 @@ +export { SHA1__factory } from "./SHA1__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/libraries/index.d.ts.map b/dist/types/factories/contracts/@ens/dnssec/libraries/index.d.ts.map new file mode 100644 index 00000000..d13f8ba4 --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/libraries/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@ens/dnssec/libraries/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/libraries/index.js b/dist/types/factories/contracts/@ens/dnssec/libraries/index.js new file mode 100644 index 00000000..fc3ed895 --- /dev/null +++ b/dist/types/factories/contracts/@ens/dnssec/libraries/index.js @@ -0,0 +1,5 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.SHA1__factory = void 0; +var SHA1__factory_1 = require("./SHA1__factory"); +Object.defineProperty(exports, "SHA1__factory", { enumerable: true, get: function () { return SHA1__factory_1.SHA1__factory; } }); diff --git a/dist/types/factories/contracts/@ens/index.d.ts b/dist/types/factories/contracts/@ens/index.d.ts new file mode 100644 index 00000000..293d2c07 --- /dev/null +++ b/dist/types/factories/contracts/@ens/index.d.ts @@ -0,0 +1,4 @@ +export * as legacyEnsRegistrySol from "./LegacyENSRegistry.sol"; +export * as legacyEthRegistrarControllerSol from "./LegacyETHRegistrarController.sol"; +export * as dnssec from "./dnssec"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/index.d.ts.map b/dist/types/factories/contracts/@ens/index.d.ts.map new file mode 100644 index 00000000..015d355c --- /dev/null +++ b/dist/types/factories/contracts/@ens/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/@ens/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,oBAAoB,MAAM,yBAAyB,CAAC;AAChE,OAAO,KAAK,+BAA+B,MAAM,oCAAoC,CAAC;AACtF,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/index.js b/dist/types/factories/contracts/@ens/index.js new file mode 100644 index 00000000..ba322e60 --- /dev/null +++ b/dist/types/factories/contracts/@ens/index.js @@ -0,0 +1,29 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.dnssec = exports.legacyEthRegistrarControllerSol = exports.legacyEnsRegistrySol = void 0; +exports.legacyEnsRegistrySol = __importStar(require("./LegacyENSRegistry.sol")); +exports.legacyEthRegistrarControllerSol = __importStar(require("./LegacyETHRegistrarController.sol")); +exports.dnssec = __importStar(require("./dnssec")); diff --git a/dist/types/factories/contracts/@maticnetwork/IChildToken__factory.d.ts b/dist/types/factories/contracts/@maticnetwork/IChildToken__factory.d.ts new file mode 100644 index 00000000..1ed25f12 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/IChildToken__factory.d.ts @@ -0,0 +1,22 @@ +import { type ContractRunner } from "ethers"; +import type { IChildToken, IChildTokenInterface } from "../../../contracts/@maticnetwork/IChildToken"; +export declare class IChildToken__factory { + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "user"; + readonly type: "address"; + }, { + readonly internalType: "bytes"; + readonly name: "depositData"; + readonly type: "bytes"; + }]; + readonly name: "deposit"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): IChildTokenInterface; + static connect(address: string, runner?: ContractRunner | null): IChildToken; +} +//# sourceMappingURL=IChildToken__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/IChildToken__factory.d.ts.map b/dist/types/factories/contracts/@maticnetwork/IChildToken__factory.d.ts.map new file mode 100644 index 00000000..507ad49d --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/IChildToken__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IChildToken__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/@maticnetwork/IChildToken__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,WAAW,EACX,oBAAoB,EACrB,MAAM,8CAA8C,CAAC;AAuBtD,qBAAa,oBAAoB;IAC/B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,oBAAoB;IAG9C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,WAAW;CAG7E"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/IChildToken__factory.js b/dist/types/factories/contracts/@maticnetwork/IChildToken__factory.js new file mode 100644 index 00000000..1c9d7918 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/IChildToken__factory.js @@ -0,0 +1,34 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IChildToken__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "address", + name: "user", + type: "address", + }, + { + internalType: "bytes", + name: "depositData", + type: "bytes", + }, + ], + name: "deposit", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +class IChildToken__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IChildToken__factory = IChildToken__factory; +IChildToken__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@maticnetwork/IMintableERC721__factory.d.ts b/dist/types/factories/contracts/@maticnetwork/IMintableERC721__factory.d.ts new file mode 100644 index 00000000..a280c1bc --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/IMintableERC721__factory.d.ts @@ -0,0 +1,274 @@ +import { type ContractRunner } from "ethers"; +import type { IMintableERC721, IMintableERC721Interface } from "../../../contracts/@maticnetwork/IMintableERC721"; +export declare class IMintableERC721__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "approved"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Approval"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "ApprovalForAll"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Transfer"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "approve"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "balanceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "balance"; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "exists"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getApproved"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly name: "isApprovedForAll"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "user"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "mint"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "user"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "metaData"; + readonly type: "bytes"; + }]; + readonly name: "mint"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "ownerOf"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly internalType: "bool"; + readonly name: "_approved"; + readonly type: "bool"; + }]; + readonly name: "setApprovalForAll"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "transferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): IMintableERC721Interface; + static connect(address: string, runner?: ContractRunner | null): IMintableERC721; +} +//# sourceMappingURL=IMintableERC721__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/IMintableERC721__factory.d.ts.map b/dist/types/factories/contracts/@maticnetwork/IMintableERC721__factory.d.ts.map new file mode 100644 index 00000000..d124e99c --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/IMintableERC721__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IMintableERC721__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/@maticnetwork/IMintableERC721__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,eAAe,EACf,wBAAwB,EACzB,MAAM,kDAAkD,CAAC;AA8V1D,qBAAa,wBAAwB;IACnC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,wBAAwB;IAGlD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,eAAe;CAGnB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/IMintableERC721__factory.js b/dist/types/factories/contracts/@maticnetwork/IMintableERC721__factory.js new file mode 100644 index 00000000..6fbddce4 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/IMintableERC721__factory.js @@ -0,0 +1,361 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IMintableERC721__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "approved", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Approval", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "ApprovalForAll", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Transfer", + type: "event", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "approve", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "balance", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "exists", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getApproved", + outputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + name: "isApprovedForAll", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "user", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "mint", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "user", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "metaData", + type: "bytes", + }, + ], + name: "mint", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "ownerOf", + outputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "bool", + name: "_approved", + type: "bool", + }, + ], + name: "setApprovalForAll", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "transferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +class IMintableERC721__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IMintableERC721__factory = IMintableERC721__factory; +IMintableERC721__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@maticnetwork/IRootChainManager__factory.d.ts b/dist/types/factories/contracts/@maticnetwork/IRootChainManager__factory.d.ts new file mode 100644 index 00000000..041be413 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/IRootChainManager__factory.d.ts @@ -0,0 +1,145 @@ +import { type ContractRunner } from "ethers"; +import type { IRootChainManager, IRootChainManagerInterface } from "../../../contracts/@maticnetwork/IRootChainManager"; +export declare class IRootChainManager__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "tokenType"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "predicateAddress"; + readonly type: "address"; + }]; + readonly name: "PredicateRegistered"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "rootToken"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "childToken"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "tokenType"; + readonly type: "bytes32"; + }]; + readonly name: "TokenMapped"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "rootToken"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "childToken"; + readonly type: "address"; + }]; + readonly name: "cleanMapToken"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "user"; + readonly type: "address"; + }]; + readonly name: "depositEtherFor"; + readonly outputs: readonly []; + readonly stateMutability: "payable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "user"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "rootToken"; + readonly type: "address"; + }, { + readonly internalType: "bytes"; + readonly name: "depositData"; + readonly type: "bytes"; + }]; + readonly name: "depositFor"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes"; + readonly name: "inputData"; + readonly type: "bytes"; + }]; + readonly name: "exit"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "rootToken"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "childToken"; + readonly type: "address"; + }, { + readonly internalType: "bytes32"; + readonly name: "tokenType"; + readonly type: "bytes32"; + }]; + readonly name: "mapToken"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "tokenType"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "predicateAddress"; + readonly type: "address"; + }]; + readonly name: "registerPredicate"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "rootToken"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "childToken"; + readonly type: "address"; + }, { + readonly internalType: "bytes32"; + readonly name: "tokenType"; + readonly type: "bytes32"; + }]; + readonly name: "remapToken"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): IRootChainManagerInterface; + static connect(address: string, runner?: ContractRunner | null): IRootChainManager; +} +//# sourceMappingURL=IRootChainManager__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/IRootChainManager__factory.d.ts.map b/dist/types/factories/contracts/@maticnetwork/IRootChainManager__factory.d.ts.map new file mode 100644 index 00000000..30e50fd1 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/IRootChainManager__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IRootChainManager__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/@maticnetwork/IRootChainManager__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,iBAAiB,EACjB,0BAA0B,EAC3B,MAAM,oDAAoD,CAAC;AAoL5D,qBAAa,0BAA0B;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,0BAA0B;IAGpD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,iBAAiB;CAGrB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/IRootChainManager__factory.js b/dist/types/factories/contracts/@maticnetwork/IRootChainManager__factory.js new file mode 100644 index 00000000..f5d067a6 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/IRootChainManager__factory.js @@ -0,0 +1,191 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IRootChainManager__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "tokenType", + type: "bytes32", + }, + { + indexed: true, + internalType: "address", + name: "predicateAddress", + type: "address", + }, + ], + name: "PredicateRegistered", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "rootToken", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "childToken", + type: "address", + }, + { + indexed: true, + internalType: "bytes32", + name: "tokenType", + type: "bytes32", + }, + ], + name: "TokenMapped", + type: "event", + }, + { + inputs: [ + { + internalType: "address", + name: "rootToken", + type: "address", + }, + { + internalType: "address", + name: "childToken", + type: "address", + }, + ], + name: "cleanMapToken", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "user", + type: "address", + }, + ], + name: "depositEtherFor", + outputs: [], + stateMutability: "payable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "user", + type: "address", + }, + { + internalType: "address", + name: "rootToken", + type: "address", + }, + { + internalType: "bytes", + name: "depositData", + type: "bytes", + }, + ], + name: "depositFor", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes", + name: "inputData", + type: "bytes", + }, + ], + name: "exit", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "rootToken", + type: "address", + }, + { + internalType: "address", + name: "childToken", + type: "address", + }, + { + internalType: "bytes32", + name: "tokenType", + type: "bytes32", + }, + ], + name: "mapToken", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "tokenType", + type: "bytes32", + }, + { + internalType: "address", + name: "predicateAddress", + type: "address", + }, + ], + name: "registerPredicate", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "rootToken", + type: "address", + }, + { + internalType: "address", + name: "childToken", + type: "address", + }, + { + internalType: "bytes32", + name: "tokenType", + type: "bytes32", + }, + ], + name: "remapToken", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +class IRootChainManager__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IRootChainManager__factory = IRootChainManager__factory; +IRootChainManager__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@maticnetwork/RootChainManagerStorage__factory.d.ts b/dist/types/factories/contracts/@maticnetwork/RootChainManagerStorage__factory.d.ts new file mode 100644 index 00000000..e8b7c3d5 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/RootChainManagerStorage__factory.d.ts @@ -0,0 +1,36 @@ +import { type ContractRunner } from "ethers"; +import type { RootChainManagerStorage, RootChainManagerStorageInterface } from "../../../contracts/@maticnetwork/RootChainManagerStorage"; +export declare class RootChainManagerStorage__factory { + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly name: "tokenToType"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly name: "typeToPredicate"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): RootChainManagerStorageInterface; + static connect(address: string, runner?: ContractRunner | null): RootChainManagerStorage; +} +//# sourceMappingURL=RootChainManagerStorage__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/RootChainManagerStorage__factory.d.ts.map b/dist/types/factories/contracts/@maticnetwork/RootChainManagerStorage__factory.d.ts.map new file mode 100644 index 00000000..9fcc2708 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/RootChainManagerStorage__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"RootChainManagerStorage__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/@maticnetwork/RootChainManagerStorage__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,uBAAuB,EACvB,gCAAgC,EACjC,MAAM,0DAA0D,CAAC;AA2ClE,qBAAa,gCAAgC;IAC3C,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,gCAAgC;IAG1D,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,uBAAuB;CAO3B"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/RootChainManagerStorage__factory.js b/dist/types/factories/contracts/@maticnetwork/RootChainManagerStorage__factory.js new file mode 100644 index 00000000..d9ba12f4 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/RootChainManagerStorage__factory.js @@ -0,0 +1,54 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.RootChainManagerStorage__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + name: "tokenToType", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + name: "typeToPredicate", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class RootChainManagerStorage__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.RootChainManagerStorage__factory = RootChainManagerStorage__factory; +RootChainManagerStorage__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@maticnetwork/index.d.ts b/dist/types/factories/contracts/@maticnetwork/index.d.ts new file mode 100644 index 00000000..ea491da6 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/index.d.ts @@ -0,0 +1,6 @@ +export * as posPortal from "./pos-portal"; +export { IChildToken__factory } from "./IChildToken__factory"; +export { IMintableERC721__factory } from "./IMintableERC721__factory"; +export { IRootChainManager__factory } from "./IRootChainManager__factory"; +export { RootChainManagerStorage__factory } from "./RootChainManagerStorage__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/index.d.ts.map b/dist/types/factories/contracts/@maticnetwork/index.d.ts.map new file mode 100644 index 00000000..a04c66df --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/@maticnetwork/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,SAAS,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,gCAAgC,EAAE,MAAM,oCAAoC,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/index.js b/dist/types/factories/contracts/@maticnetwork/index.js new file mode 100644 index 00000000..4371f63b --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/index.js @@ -0,0 +1,35 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.RootChainManagerStorage__factory = exports.IRootChainManager__factory = exports.IMintableERC721__factory = exports.IChildToken__factory = exports.posPortal = void 0; +exports.posPortal = __importStar(require("./pos-portal")); +var IChildToken__factory_1 = require("./IChildToken__factory"); +Object.defineProperty(exports, "IChildToken__factory", { enumerable: true, get: function () { return IChildToken__factory_1.IChildToken__factory; } }); +var IMintableERC721__factory_1 = require("./IMintableERC721__factory"); +Object.defineProperty(exports, "IMintableERC721__factory", { enumerable: true, get: function () { return IMintableERC721__factory_1.IMintableERC721__factory; } }); +var IRootChainManager__factory_1 = require("./IRootChainManager__factory"); +Object.defineProperty(exports, "IRootChainManager__factory", { enumerable: true, get: function () { return IRootChainManager__factory_1.IRootChainManager__factory; } }); +var RootChainManagerStorage__factory_1 = require("./RootChainManagerStorage__factory"); +Object.defineProperty(exports, "RootChainManagerStorage__factory", { enumerable: true, get: function () { return RootChainManagerStorage__factory_1.RootChainManagerStorage__factory; } }); diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender__factory.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender__factory.d.ts new file mode 100644 index 00000000..c32ee294 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender__factory.d.ts @@ -0,0 +1,57 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../../../common"; +import type { DummyStateSender, DummyStateSenderInterface } from "../../../../../contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender"; +declare type DummyStateSenderConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class DummyStateSender__factory extends ContractFactory { + constructor(...args: DummyStateSenderConstructorParams); + getDeployTransaction(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): DummyStateSender__factory; + static readonly bytecode = "0x608060405234801561001057600080fd5b50610130806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c806316f1983114610030575b600080fd5b6100b06004803603604081101561004657600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561007157600080fd5b82018360208201111561008357600080fd5b803590602001918460018302840111640100000000831117156100a557600080fd5b5090925090506100b2565b005b826001600160a01b031660017f103fed9db65eac19c4d870f49ab7520fe03b99f1838e5996caf47e9e43308392848460405180806020018281038252848482818152602001925080828437600083820152604051601f909101601f19169092018290039550909350505050a350505056fea164736f6c6343000606000a"; + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "contractAddress"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "StateSynced"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "receiver"; + readonly type: "address"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "syncState"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): DummyStateSenderInterface; + static connect(address: string, runner?: ContractRunner | null): DummyStateSender; +} +export {}; +//# sourceMappingURL=DummyStateSender__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender__factory.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender__factory.d.ts.map new file mode 100644 index 00000000..c32879cd --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"DummyStateSender__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,gBAAgB,EAChB,yBAAyB,EAC1B,MAAM,yFAAyF,CAAC;AAmDjG,aAAK,iCAAiC,GAClC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,yBAA0B,SAAQ,eAAe;gBAChD,GAAG,IAAI,EAAE,iCAAiC;IAQ7C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,yBAAyB;IAI1E,MAAM,CAAC,QAAQ,CAAC,QAAQ,wqBAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,yBAAyB;IAGnD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,gBAAgB;CAGpB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender__factory.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender__factory.js new file mode 100644 index 00000000..4ad9145f --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender__factory.js @@ -0,0 +1,79 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.DummyStateSender__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + indexed: true, + internalType: "address", + name: "contractAddress", + type: "address", + }, + { + indexed: false, + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "StateSynced", + type: "event", + }, + { + inputs: [ + { + internalType: "address", + name: "receiver", + type: "address", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "syncState", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +const _bytecode = "0x608060405234801561001057600080fd5b50610130806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c806316f1983114610030575b600080fd5b6100b06004803603604081101561004657600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561007157600080fd5b82018360208201111561008357600080fd5b803590602001918460018302840111640100000000831117156100a557600080fd5b5090925090506100b2565b005b826001600160a01b031660017f103fed9db65eac19c4d870f49ab7520fe03b99f1838e5996caf47e9e43308392848460405180806020018281038252848482818152602001925080828437600083820152604051601f909101601f19169092018290039550909350505050a350505056fea164736f6c6343000606000a"; +const isSuperArgs = (xs) => xs.length > 1; +class DummyStateSender__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(overrides) { + return super.getDeployTransaction(overrides || {}); + } + deploy(overrides) { + return super.deploy(overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.DummyStateSender__factory = DummyStateSender__factory; +DummyStateSender__factory.bytecode = _bytecode; +DummyStateSender__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender__factory.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender__factory.d.ts new file mode 100644 index 00000000..8745b69d --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender__factory.d.ts @@ -0,0 +1,22 @@ +import { type ContractRunner } from "ethers"; +import type { IStateSender, IStateSenderInterface } from "../../../../../contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender"; +export declare class IStateSender__factory { + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "receiver"; + readonly type: "address"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "syncState"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): IStateSenderInterface; + static connect(address: string, runner?: ContractRunner | null): IStateSender; +} +//# sourceMappingURL=IStateSender__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender__factory.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender__factory.d.ts.map new file mode 100644 index 00000000..266b591c --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IStateSender__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,YAAY,EACZ,qBAAqB,EACtB,MAAM,qFAAqF,CAAC;AAuB7F,qBAAa,qBAAqB;IAChC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,qBAAqB;IAG/C,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,YAAY;CAGhB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender__factory.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender__factory.js new file mode 100644 index 00000000..a101a569 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender__factory.js @@ -0,0 +1,34 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IStateSender__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "address", + name: "receiver", + type: "address", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "syncState", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +class IStateSender__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IStateSender__factory = IStateSender__factory; +IStateSender__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/index.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/index.d.ts new file mode 100644 index 00000000..fee81cfd --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/index.d.ts @@ -0,0 +1,3 @@ +export { DummyStateSender__factory } from "./DummyStateSender__factory"; +export { IStateSender__factory } from "./IStateSender__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/index.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/index.d.ts.map new file mode 100644 index 00000000..22c63e8f --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/index.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/index.js new file mode 100644 index 00000000..6f1c4acc --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/index.js @@ -0,0 +1,7 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IStateSender__factory = exports.DummyStateSender__factory = void 0; +var DummyStateSender__factory_1 = require("./DummyStateSender__factory"); +Object.defineProperty(exports, "DummyStateSender__factory", { enumerable: true, get: function () { return DummyStateSender__factory_1.DummyStateSender__factory; } }); +var IStateSender__factory_1 = require("./IStateSender__factory"); +Object.defineProperty(exports, "IStateSender__factory", { enumerable: true, get: function () { return IStateSender__factory_1.IStateSender__factory; } }); diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin__factory.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin__factory.d.ts new file mode 100644 index 00000000..8e358217 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin__factory.d.ts @@ -0,0 +1,199 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../../../common"; +import type { AccessControlMixin, AccessControlMixinInterface } from "../../../../../contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin"; +declare type AccessControlMixinConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class AccessControlMixin__factory extends ContractFactory { + constructor(...args: AccessControlMixinConstructorParams); + getDeployTransaction(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): AccessControlMixin__factory; + static readonly bytecode = "0x608060405234801561001057600080fd5b50610707806100206000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c806391d148541161005b57806391d1485414610155578063a217fddf14610195578063ca15c8731461019d578063d547741f146101ba57610088565b8063248a9ca31461008d5780632f2ff15d146100bc57806336568abe146100ea5780639010d07c14610116575b600080fd5b6100aa600480360360208110156100a357600080fd5b50356101e6565b60408051918252519081900360200190f35b6100e8600480360360408110156100d257600080fd5b50803590602001356001600160a01b03166101fb565b005b6100e86004803603604081101561010057600080fd5b50803590602001356001600160a01b0316610267565b6101396004803603604081101561012c57600080fd5b50803590602001356102c8565b604080516001600160a01b039092168252519081900360200190f35b6101816004803603604081101561016b57600080fd5b50803590602001356001600160a01b03166102ef565b604080519115158252519081900360200190f35b6100aa61030d565b6100aa600480360360208110156101b357600080fd5b5035610312565b6100e8600480360360408110156101d057600080fd5b50803590602001356001600160a01b0316610329565b60009081526020819052604090206002015490565b60008281526020819052604090206002015461021e90610219610382565b6102ef565b6102595760405162461bcd60e51b815260040180806020018281038252602f81526020018061066d602f913960400191505060405180910390fd5b6102638282610386565b5050565b61026f610382565b6001600160a01b0316816001600160a01b0316146102be5760405162461bcd60e51b815260040180806020018281038252602f8152602001806106cc602f913960400191505060405180910390fd5b61026382826103f5565b60008281526020819052604081206102e6908363ffffffff61046416565b90505b92915050565b60008281526020819052604081206102e6908363ffffffff61047016565b600081565b60008181526020819052604081206102e990610485565b60008281526020819052604090206002015461034790610219610382565b6102be5760405162461bcd60e51b815260040180806020018281038252603081526020018061069c6030913960400191505060405180910390fd5b3390565b60008281526020819052604090206103a4908263ffffffff61049016565b15610263576103b1610382565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6000828152602081905260409020610413908263ffffffff6104a516565b1561026357610420610382565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b60006102e683836104ba565b60006102e6836001600160a01b03841661051e565b60006102e982610536565b60006102e6836001600160a01b03841661053a565b60006102e6836001600160a01b038416610584565b815460009082106104fc5760405162461bcd60e51b815260040180806020018281038252602281526020018061064b6022913960400191505060405180910390fd5b82600001828154811061050b57fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000610546838361051e565b61057c575081546001818101845560008481526020808220909301849055845484825282860190935260409020919091556102e9565b5060006102e9565b6000818152600183016020526040812054801561064057835460001980830191908101906000908790839081106105b757fe5b90600052602060002001549050808760000184815481106105d457fe5b60009182526020808320909101929092558281526001898101909252604090209084019055865487908061060457fe5b600190038181906000526020600020016000905590558660010160008781526020019081526020016000206000905560019450505050506102e9565b60009150506102e956fe456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e74416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b65416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66a164736f6c6343000606000a"; + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "previousAdminRole"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "newAdminRole"; + readonly type: "bytes32"; + }]; + readonly name: "RoleAdminChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "sender"; + readonly type: "address"; + }]; + readonly name: "RoleGranted"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "sender"; + readonly type: "address"; + }]; + readonly name: "RoleRevoked"; + readonly type: "event"; + }, { + readonly inputs: readonly []; + readonly name: "DEFAULT_ADMIN_ROLE"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }]; + readonly name: "getRoleAdmin"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "index"; + readonly type: "uint256"; + }]; + readonly name: "getRoleMember"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }]; + readonly name: "getRoleMemberCount"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "grantRole"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "hasRole"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "renounceRole"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "revokeRole"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): AccessControlMixinInterface; + static connect(address: string, runner?: ContractRunner | null): AccessControlMixin; +} +export {}; +//# sourceMappingURL=AccessControlMixin__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin__factory.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin__factory.d.ts.map new file mode 100644 index 00000000..fea181df --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"AccessControlMixin__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,kBAAkB,EAClB,2BAA2B,EAC5B,MAAM,kGAAkG,CAAC;AA4O1G,aAAK,mCAAmC,GACpC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,2BAA4B,SAAQ,eAAe;gBAClD,GAAG,IAAI,EAAE,mCAAmC;IAQ/C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,2BAA2B;IAI5E,MAAM,CAAC,QAAQ,CAAC,QAAQ,slHAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,2BAA2B;IAGrD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,kBAAkB;CAGtB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin__factory.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin__factory.js new file mode 100644 index 00000000..a9dfe89f --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin__factory.js @@ -0,0 +1,264 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.AccessControlMixin__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + indexed: true, + internalType: "bytes32", + name: "previousAdminRole", + type: "bytes32", + }, + { + indexed: true, + internalType: "bytes32", + name: "newAdminRole", + type: "bytes32", + }, + ], + name: "RoleAdminChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "RoleGranted", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "RoleRevoked", + type: "event", + }, + { + inputs: [], + name: "DEFAULT_ADMIN_ROLE", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + ], + name: "getRoleAdmin", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + 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: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "grantRole", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "hasRole", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "renounceRole", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "revokeRole", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +const _bytecode = "0x608060405234801561001057600080fd5b50610707806100206000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c806391d148541161005b57806391d1485414610155578063a217fddf14610195578063ca15c8731461019d578063d547741f146101ba57610088565b8063248a9ca31461008d5780632f2ff15d146100bc57806336568abe146100ea5780639010d07c14610116575b600080fd5b6100aa600480360360208110156100a357600080fd5b50356101e6565b60408051918252519081900360200190f35b6100e8600480360360408110156100d257600080fd5b50803590602001356001600160a01b03166101fb565b005b6100e86004803603604081101561010057600080fd5b50803590602001356001600160a01b0316610267565b6101396004803603604081101561012c57600080fd5b50803590602001356102c8565b604080516001600160a01b039092168252519081900360200190f35b6101816004803603604081101561016b57600080fd5b50803590602001356001600160a01b03166102ef565b604080519115158252519081900360200190f35b6100aa61030d565b6100aa600480360360208110156101b357600080fd5b5035610312565b6100e8600480360360408110156101d057600080fd5b50803590602001356001600160a01b0316610329565b60009081526020819052604090206002015490565b60008281526020819052604090206002015461021e90610219610382565b6102ef565b6102595760405162461bcd60e51b815260040180806020018281038252602f81526020018061066d602f913960400191505060405180910390fd5b6102638282610386565b5050565b61026f610382565b6001600160a01b0316816001600160a01b0316146102be5760405162461bcd60e51b815260040180806020018281038252602f8152602001806106cc602f913960400191505060405180910390fd5b61026382826103f5565b60008281526020819052604081206102e6908363ffffffff61046416565b90505b92915050565b60008281526020819052604081206102e6908363ffffffff61047016565b600081565b60008181526020819052604081206102e990610485565b60008281526020819052604090206002015461034790610219610382565b6102be5760405162461bcd60e51b815260040180806020018281038252603081526020018061069c6030913960400191505060405180910390fd5b3390565b60008281526020819052604090206103a4908263ffffffff61049016565b15610263576103b1610382565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6000828152602081905260409020610413908263ffffffff6104a516565b1561026357610420610382565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b60006102e683836104ba565b60006102e6836001600160a01b03841661051e565b60006102e982610536565b60006102e6836001600160a01b03841661053a565b60006102e6836001600160a01b038416610584565b815460009082106104fc5760405162461bcd60e51b815260040180806020018281038252602281526020018061064b6022913960400191505060405180910390fd5b82600001828154811061050b57fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000610546838361051e565b61057c575081546001818101845560008481526020808220909301849055845484825282860190935260409020919091556102e9565b5060006102e9565b6000818152600183016020526040812054801561064057835460001980830191908101906000908790839081106105b757fe5b90600052602060002001549050808760000184815481106105d457fe5b60009182526020808320909101929092558281526001898101909252604090209084019055865487908061060457fe5b600190038181906000526020600020016000905590558660010160008781526020019081526020016000206000905560019450505050506102e9565b60009150506102e956fe456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e74416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b65416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66a164736f6c6343000606000a"; +const isSuperArgs = (xs) => xs.length > 1; +class AccessControlMixin__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(overrides) { + return super.getDeployTransaction(overrides || {}); + } + deploy(overrides) { + return super.deploy(overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.AccessControlMixin__factory = AccessControlMixin__factory; +AccessControlMixin__factory.bytecode = _bytecode; +AccessControlMixin__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl__factory.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl__factory.d.ts new file mode 100644 index 00000000..9508e696 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl__factory.d.ts @@ -0,0 +1,184 @@ +import { type ContractRunner } from "ethers"; +import type { AccessControl, AccessControlInterface } from "../../../../../contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl"; +export declare class AccessControl__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "previousAdminRole"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "newAdminRole"; + readonly type: "bytes32"; + }]; + readonly name: "RoleAdminChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "sender"; + readonly type: "address"; + }]; + readonly name: "RoleGranted"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "sender"; + readonly type: "address"; + }]; + readonly name: "RoleRevoked"; + readonly type: "event"; + }, { + readonly inputs: readonly []; + readonly name: "DEFAULT_ADMIN_ROLE"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }]; + readonly name: "getRoleAdmin"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "index"; + readonly type: "uint256"; + }]; + readonly name: "getRoleMember"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }]; + readonly name: "getRoleMemberCount"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "grantRole"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "hasRole"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "renounceRole"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "revokeRole"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): AccessControlInterface; + static connect(address: string, runner?: ContractRunner | null): AccessControl; +} +//# sourceMappingURL=AccessControl__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl__factory.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl__factory.d.ts.map new file mode 100644 index 00000000..9f5730df --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"AccessControl__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,aAAa,EACb,sBAAsB,EACvB,MAAM,6FAA6F,CAAC;AAyOrG,qBAAa,sBAAsB;IACjC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,sBAAsB;IAGhD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,aAAa;CAGjB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl__factory.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl__factory.js new file mode 100644 index 00000000..d7c08911 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl__factory.js @@ -0,0 +1,244 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.AccessControl__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + indexed: true, + internalType: "bytes32", + name: "previousAdminRole", + type: "bytes32", + }, + { + indexed: true, + internalType: "bytes32", + name: "newAdminRole", + type: "bytes32", + }, + ], + name: "RoleAdminChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "RoleGranted", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "RoleRevoked", + type: "event", + }, + { + inputs: [], + name: "DEFAULT_ADMIN_ROLE", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + ], + name: "getRoleAdmin", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + 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: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "grantRole", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "hasRole", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "renounceRole", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "revokeRole", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +class AccessControl__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.AccessControl__factory = AccessControl__factory; +AccessControl__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC165__factory.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC165__factory.d.ts new file mode 100644 index 00000000..6184c4dd --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC165__factory.d.ts @@ -0,0 +1,22 @@ +import { type ContractRunner } from "ethers"; +import type { IERC165, IERC165Interface } from "../../../../../contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC165"; +export declare class IERC165__factory { + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): IERC165Interface; + static connect(address: string, runner?: ContractRunner | null): IERC165; +} +//# sourceMappingURL=IERC165__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC165__factory.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC165__factory.d.ts.map new file mode 100644 index 00000000..ce587f1c --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC165__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC165__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC165__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,OAAO,EACP,gBAAgB,EACjB,MAAM,uFAAuF,CAAC;AAwB/F,qBAAa,gBAAgB;IAC3B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,gBAAgB;IAG1C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,OAAO;CAGzE"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC165__factory.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC165__factory.js new file mode 100644 index 00000000..65af5cfc --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC165__factory.js @@ -0,0 +1,35 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IERC165__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class IERC165__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IERC165__factory = IERC165__factory; +IERC165__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721Receiver__factory.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721Receiver__factory.d.ts new file mode 100644 index 00000000..3a7d9cbf --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721Receiver__factory.d.ts @@ -0,0 +1,34 @@ +import { type ContractRunner } from "ethers"; +import type { IERC721Receiver, IERC721ReceiverInterface } from "../../../../../contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721Receiver"; +export declare class IERC721Receiver__factory { + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "onERC721Received"; + readonly outputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: ""; + readonly type: "bytes4"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): IERC721ReceiverInterface; + static connect(address: string, runner?: ContractRunner | null): IERC721Receiver; +} +//# sourceMappingURL=IERC721Receiver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721Receiver__factory.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721Receiver__factory.d.ts.map new file mode 100644 index 00000000..ebb33d4a --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721Receiver__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC721Receiver__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721Receiver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,eAAe,EACf,wBAAwB,EACzB,MAAM,+FAA+F,CAAC;AAuCvG,qBAAa,wBAAwB;IACnC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,wBAAwB;IAGlD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,eAAe;CAGnB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721Receiver__factory.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721Receiver__factory.js new file mode 100644 index 00000000..2bfbed3d --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721Receiver__factory.js @@ -0,0 +1,50 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IERC721Receiver__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "onERC721Received", + outputs: [ + { + internalType: "bytes4", + name: "", + type: "bytes4", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, +]; +class IERC721Receiver__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IERC721Receiver__factory = IERC721Receiver__factory; +IERC721Receiver__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721__factory.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721__factory.d.ts new file mode 100644 index 00000000..ff1b5229 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721__factory.d.ts @@ -0,0 +1,228 @@ +import { type ContractRunner } from "ethers"; +import type { IERC721, IERC721Interface } from "../../../../../contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721"; +export declare class IERC721__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "approved"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Approval"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "ApprovalForAll"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Transfer"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "approve"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "balanceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "balance"; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getApproved"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly name: "isApprovedForAll"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "ownerOf"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly internalType: "bool"; + readonly name: "_approved"; + readonly type: "bool"; + }]; + readonly name: "setApprovalForAll"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "transferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): IERC721Interface; + static connect(address: string, runner?: ContractRunner | null): IERC721; +} +//# sourceMappingURL=IERC721__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721__factory.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721__factory.d.ts.map new file mode 100644 index 00000000..bf86a775 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC721__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,OAAO,EACP,gBAAgB,EACjB,MAAM,uFAAuF,CAAC;AAkS/F,qBAAa,gBAAgB;IAC3B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,gBAAgB;IAG1C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,OAAO;CAGzE"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721__factory.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721__factory.js new file mode 100644 index 00000000..c0ecef77 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721__factory.js @@ -0,0 +1,301 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IERC721__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "approved", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Approval", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "ApprovalForAll", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Transfer", + type: "event", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "approve", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "balance", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getApproved", + outputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + name: "isApprovedForAll", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "ownerOf", + outputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "bool", + name: "_approved", + type: "bool", + }, + ], + name: "setApprovalForAll", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "transferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +class IERC721__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IERC721__factory = IERC721__factory; +IERC721__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IMintableERC721__factory.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IMintableERC721__factory.d.ts new file mode 100644 index 00000000..c55c23a8 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IMintableERC721__factory.d.ts @@ -0,0 +1,274 @@ +import { type ContractRunner } from "ethers"; +import type { IMintableERC721, IMintableERC721Interface } from "../../../../../contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IMintableERC721"; +export declare class IMintableERC721__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "approved"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Approval"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "ApprovalForAll"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Transfer"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "approve"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "balanceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "balance"; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "exists"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getApproved"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly name: "isApprovedForAll"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "user"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "mint"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "user"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "metaData"; + readonly type: "bytes"; + }]; + readonly name: "mint"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "ownerOf"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly internalType: "bool"; + readonly name: "_approved"; + readonly type: "bool"; + }]; + readonly name: "setApprovalForAll"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "transferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): IMintableERC721Interface; + static connect(address: string, runner?: ContractRunner | null): IMintableERC721; +} +//# sourceMappingURL=IMintableERC721__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IMintableERC721__factory.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IMintableERC721__factory.d.ts.map new file mode 100644 index 00000000..090cf398 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IMintableERC721__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IMintableERC721__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IMintableERC721__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,eAAe,EACf,wBAAwB,EACzB,MAAM,+FAA+F,CAAC;AA8VvG,qBAAa,wBAAwB;IACnC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,wBAAwB;IAGlD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,eAAe;CAGnB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IMintableERC721__factory.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IMintableERC721__factory.js new file mode 100644 index 00000000..6fbddce4 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IMintableERC721__factory.js @@ -0,0 +1,361 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IMintableERC721__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "approved", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Approval", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "ApprovalForAll", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Transfer", + type: "event", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "approve", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "balance", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "exists", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getApproved", + outputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + name: "isApprovedForAll", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "user", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "mint", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "user", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "metaData", + type: "bytes", + }, + ], + name: "mint", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "ownerOf", + outputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "bool", + name: "_approved", + type: "bool", + }, + ], + name: "setApprovalForAll", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "transferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +class IMintableERC721__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IMintableERC721__factory = IMintableERC721__factory; +IMintableERC721__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate__factory.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate__factory.d.ts new file mode 100644 index 00000000..c091c1ad --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate__factory.d.ts @@ -0,0 +1,48 @@ +import { type ContractRunner } from "ethers"; +import type { ITokenPredicate, ITokenPredicateInterface } from "../../../../../contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate"; +export declare class ITokenPredicate__factory { + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "sender"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "rootToken"; + readonly type: "address"; + }, { + readonly internalType: "bytes"; + readonly name: "logRLPList"; + readonly type: "bytes"; + }]; + readonly name: "exitTokens"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "depositor"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "depositReceiver"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "rootToken"; + readonly type: "address"; + }, { + readonly internalType: "bytes"; + readonly name: "depositData"; + readonly type: "bytes"; + }]; + readonly name: "lockTokens"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): ITokenPredicateInterface; + static connect(address: string, runner?: ContractRunner | null): ITokenPredicate; +} +//# sourceMappingURL=ITokenPredicate__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate__factory.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate__factory.d.ts.map new file mode 100644 index 00000000..4b30561c --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ITokenPredicate__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,eAAe,EACf,wBAAwB,EACzB,MAAM,+FAA+F,CAAC;AAwDvG,qBAAa,wBAAwB;IACnC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,wBAAwB;IAGlD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,eAAe;CAGnB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate__factory.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate__factory.js new file mode 100644 index 00000000..94196918 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate__factory.js @@ -0,0 +1,67 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ITokenPredicate__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "address", + name: "sender", + type: "address", + }, + { + internalType: "address", + name: "rootToken", + type: "address", + }, + { + internalType: "bytes", + name: "logRLPList", + type: "bytes", + }, + ], + name: "exitTokens", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "depositor", + type: "address", + }, + { + internalType: "address", + name: "depositReceiver", + type: "address", + }, + { + internalType: "address", + name: "rootToken", + type: "address", + }, + { + internalType: "bytes", + name: "depositData", + type: "bytes", + }, + ], + name: "lockTokens", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +class ITokenPredicate__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.ITokenPredicate__factory = ITokenPredicate__factory; +ITokenPredicate__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate__factory.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate__factory.d.ts new file mode 100644 index 00000000..33ccbb49 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate__factory.d.ts @@ -0,0 +1,389 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../../../common"; +import type { MintableERC721Predicate, MintableERC721PredicateInterface } from "../../../../../contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate"; +declare type MintableERC721PredicateConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class MintableERC721Predicate__factory extends ContractFactory { + constructor(...args: MintableERC721PredicateConstructorParams); + getDeployTransaction(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): MintableERC721Predicate__factory; + static readonly bytecode = "0x60806040526002805460ff1916905534801561001a57600080fd5b5061211d8061002a6000396000f3fe608060405234801561001057600080fd5b50600436106101165760003560e01c806391d14854116100a2578063c4d66de811610071578063c4d66de8146103bb578063ca15c873146103e1578063d547741f146103fe578063e375b64e1461042a578063ec87621c146104b957610116565b806391d14854146103635780639559c0bd146103a3578063a217fddf146103ab578063b017a30f146103b357610116565b80634794b430116100e95780634794b4301461024f57806349f5124b14610257578063609c92b81461025f5780638274664f146102675780639010d07c1461032457610116565b8063150b7a021461011b578063248a9ca3146101c65780632f2ff15d146101f557806336568abe14610223575b600080fd5b6101a96004803603608081101561013157600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561016b57600080fd5b82018360208201111561017d57600080fd5b803590602001918460018302840111600160201b8311171561019e57600080fd5b5090925090506104c1565b604080516001600160e01b03199092168252519081900360200190f35b6101e3600480360360208110156101dc57600080fd5b50356104d2565b60408051918252519081900360200190f35b6102216004803603604081101561020b57600080fd5b50803590602001356001600160a01b03166104ea565b005b6102216004803603604081101561023957600080fd5b50803590602001356001600160a01b0316610556565b6101e36105b7565b6101e36105db565b6101e36105ff565b6102216004803603606081101561027d57600080fd5b6001600160a01b038235811692602081013590911691810190606081016040820135600160201b8111156102b057600080fd5b8201836020820111156102c257600080fd5b803590602001918460018302840111600160201b831117156102e357600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610623945050505050565b6103476004803603604081101561033a57600080fd5b5080359060200135610fa2565b604080516001600160a01b039092168252519081900360200190f35b61038f6004803603604081101561037957600080fd5b50803590602001356001600160a01b0316610fc9565b604080519115158252519081900360200190f35b6101e3610fe7565b6101e3610fec565b6101e3610ff1565b610221600480360360208110156103d157600080fd5b50356001600160a01b0316611015565b6101e3600480360360208110156103f757600080fd5b50356110cf565b6102216004803603604081101561041457600080fd5b50803590602001356001600160a01b03166110e6565b6102216004803603608081101561044057600080fd5b6001600160a01b0382358116926020810135821692604082013590921691810190608081016060820135600160201b81111561047b57600080fd5b82018360208201111561048d57600080fd5b803590602001918460018302840111600160201b831117156104ae57600080fd5b50909250905061113f565b6101e36114e6565b630a85bd0160e11b95945050505050565b6000818152602081905260409020600201545b919050565b60008281526020819052604090206002015461050d906105086114f8565b610fc9565b6105485760405162461bcd60e51b815260040180806020018281038252602f815260200180611f42602f913960400191505060405180910390fd5b61055282826114fd565b5050565b61055e6114f8565b6001600160a01b0316816001600160a01b0316146105ad5760405162461bcd60e51b815260040180806020018281038252602f8152602001806120bb602f913960400191505060405180910390fd5b610552828261156c565b7ff871896b17e9cb7a64941c62c188a4f5c621b86800e3d15452ece01ce56073df81565b7ff94915c6d1fd521cee85359239227480c7e8776d7caf1fc3bacad5c269b66a1481565b7fd4392723c111fcb98b073fe55873efb447bcd23cd3e49ec9ea2581930cd01ddc81565b60008051602061204b83398151915261063e816105086114f8565b6001906106de5760405162461bcd60e51b81526020600482019081528254600260001961010060018416150201909116046024830181905290918291604490910190849080156106cf5780601f106106a4576101008083540402835291602001916106cf565b820191906000526020600020905b8154815290600101906020018083116106b257829003601f168201915b50509250505060405180910390fd5b5060606106f26106ed846115db565b611656565b905060606107138260018151811061070657fe5b6020026020010151611656565b90507fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60001b6107568260008151811061074957fe5b60200260200101516117d8565b141561095457600061076e8260018151811061074957fe5b905060006001600160a01b031661078b8360028151811061074957fe5b6001600160a01b0316146107d05760405162461bcd60e51b815260040180806020018281038252602981526020018061206b6029913960400191505060405180910390fd5b600086905060006107e78460038151811061074957fe5b9050816001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b15801561082d57600080fd5b505afa158015610841573d6000803e3d6000fd5b505050506040513d602081101561085757600080fd5b5051156108d35760408051632142170760e11b81523060048201526001600160a01b038581166024830152604482018490529151918416916342842e0e9160648082019260009290919082900301818387803b1580156108b657600080fd5b505af11580156108ca573d6000803e3d6000fd5b5050505061094c565b816001600160a01b03166340c10f1984836040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b15801561093357600080fd5b505af1158015610947573d6000803e3d6000fd5b505050505b505050610f9a565b7ff871896b17e9cb7a64941c62c188a4f5c621b86800e3d15452ece01ce56073df60001b6109888260008151811061074957fe5b1415610c085760006109a08260018151811061074957fe5b905060606109c1846002815181106109b457fe5b6020026020010151611920565b905060608180602001905160208110156109da57600080fd5b8101908080516040519392919084600160201b8211156109f957600080fd5b908301906020820185811115610a0e57600080fd5b82518660208202830111600160201b82111715610a2a57600080fd5b82525081516020918201928201910280838360005b83811015610a57578181015183820152602001610a3f565b5050505091909101604052505082519293508a9150600090505b82811015610bfd576000848281518110610a8757fe5b60200260200101519050826001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610ad557600080fd5b505afa158015610ae9573d6000803e3d6000fd5b505050506040513d6020811015610aff57600080fd5b505115610b7b5760408051632142170760e11b81523060048201526001600160a01b038981166024830152604482018490529151918516916342842e0e9160648082019260009290919082900301818387803b158015610b5e57600080fd5b505af1158015610b72573d6000803e3d6000fd5b50505050610bf4565b826001600160a01b03166340c10f1988836040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b158015610bdb57600080fd5b505af1158015610bef573d6000803e3d6000fd5b505050505b50600101610a71565b505050505050610f9a565b7ff94915c6d1fd521cee85359239227480c7e8776d7caf1fc3bacad5c269b66a1460001b610c3c8260008151811061074957fe5b1415610f63576000610c548260018151811061074957fe5b905060006001600160a01b0316610c718360028151811061074957fe5b6001600160a01b031614610cb65760405162461bcd60e51b815260040180806020018281038252602981526020018061206b6029913960400191505060405180910390fd5b60008690506000610ccd8460038151811061074957fe5b9050816001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610d1357600080fd5b505afa158015610d27573d6000803e3d6000fd5b505050506040513d6020811015610d3d57600080fd5b505115610d9c5760408051632142170760e11b81523060048201526001600160a01b038581166024830152604482018490529151918416916342842e0e9160648082019260009290919082900301818387803b1580156108b657600080fd5b6060610dae866002815181106109b457fe5b90506060818060200190516020811015610dc757600080fd5b8101908080516040519392919084600160201b821115610de657600080fd5b908301906020820185811115610dfb57600080fd5b8251600160201b811182820188101715610e1457600080fd5b82525081516020918201929091019080838360005b83811015610e41578181015183820152602001610e29565b50505050905090810190601f168015610e6e5780820380516001836020036101000a031916815260200191505b506040525050509050836001600160a01b03166394d008ef8685846040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b0316815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610ef3578181015183820152602001610edb565b50505050905090810190601f168015610f205780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015610f4157600080fd5b505af1158015610f55573d6000803e3d6000fd5b505050505050505050610f9a565b60405162461bcd60e51b815260040180806020018281038252602a815260200180611f71602a913960400191505060405180910390fd5b505050505050565b6000828152602081905260408120610fc0908363ffffffff6119ea16565b90505b92915050565b6000828152602081905260408120610fc0908363ffffffff6119f616565b601481565b600081565b7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef81565b60025460ff161561105e576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b61109c6040518060400160405280601781526020017f4d696e7461626c65455243373231507265646963617465000000000000000000815250611a0b565b6110a7600082610548565b6110bf60008051602061204b83398151915282610548565b506002805460ff19166001179055565b6000818152602081905260408120610fc390611aa9565b600082815260208190526040902060020154611104906105086114f8565b6105ad5760405162461bcd60e51b8152600401808060200182810382526030815260200180611fc36030913960400191505060405180910390fd5b60008051602061204b83398151915261115a816105086114f8565b6001906111c05760405162461bcd60e51b81526020600482019081528254600260001961010060018416150201909116046024830181905290918291604490910190849080156106cf5780601f106106a4576101008083540402835291602001916106cf565b50602082141561129f576000838360208110156111dc57600080fd5b5060408051913580835290519092506001600160a01b038088169289821692918b16917fe13244aa06bdc79480ed5fdc6ebe2bb37202fcdf33ecf45dc449f4201f3dc0879181900360200190a460408051632142170760e11b81526001600160a01b038981166004830152306024830152604482018490529151918716916342842e0e9160648082019260009290919082900301818387803b15801561128157600080fd5b505af1158015611295573d6000803e3d6000fd5b5050505050610f9a565b6060838360208110156112b157600080fd5b810190602081018135600160201b8111156112cb57600080fd5b8201836020820111156112dd57600080fd5b803590602001918460208302840111600160201b831117156112fe57600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f8201169050808301925050505050505091929192905050509050846001600160a01b0316866001600160a01b0316886001600160a01b03167fdb55e3a0ae817693fd7b07170d81eab0eb2c239f36fcecbc98b6b58ac5667e7a846040518080602001828103825283818151815260200191508051906020019060200280838360005b838110156113ca5781810151838201526020016113b2565b505050509050019250505060405180910390a48051601481111561141f5760405162461bcd60e51b815260040180806020018281038252602c81526020018061201f602c913960400191505060405180910390fd5b60005b818110156114db57866001600160a01b03166342842e0e8a3086858151811061144757fe5b60200260200101516040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050600060405180830381600087803b1580156114b757600080fd5b505af11580156114cb573d6000803e3d6000fd5b5050600190920191506114229050565b505050505050505050565b60008051602061204b83398151915281565b335b90565b600082815260208190526040902061151b908263ffffffff611ab416565b15610552576115286114f8565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b600082815260208190526040902061158a908263ffffffff611ac916565b15610552576115976114f8565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b6115e3611e6d565b6000825111611639576040805162461bcd60e51b815260206004820152601f60248201527f524c505265616465723a20494e56414c49445f42595445535f4c454e47544800604482015290519081900360640190fd5b506040805180820190915281518152602082810190820152919050565b606061166182611ade565b6116b2576040805162461bcd60e51b815260206004820152601860248201527f524c505265616465723a204954454d5f4e4f545f4c4953540000000000000000604482015290519081900360640190fd5b60006116bd83611b0a565b905060608167ffffffffffffffff811180156116d857600080fd5b5060405190808252806020026020018201604052801561171257816020015b6116ff611e6d565b8152602001906001900390816116f75790505b50905060006117248560200151611b96565b855190915081146117665760405162461bcd60e51b81526004018080602001828103825260278152602001806120946027913960400191505060405180910390fd5b60006117758660200151611c2f565b60208701510190506000805b858110156117cc5761179283611b96565b91506040518060400160405280838152602001848152508582815181106117b557fe5b602090810291909101015291810191600101611781565b50929695505050505050565b60006117e382611ade565b15611835576040805162461bcd60e51b815260206004820181905260248201527f524c505265616465723a204445434f44494e475f4c4953545f41535f55494e54604482015290519081900360640190fd5b81516021101561188c576040805162461bcd60e51b815260206004820152601e60248201527f524c505265616465723a20494e56414c49445f55494e545f4c454e4754480000604482015290519081900360640190fd5b600061189b8360200151611b96565b835190915081146118dd5760405162461bcd60e51b81526004018080602001828103825260278152602001806120ea6027913960400191505060405180910390fd5b60006118ec8460200151611c2f565b8451602080870151830180519394509184900392919083101561191657826020036101000a820491505b5095945050505050565b606060006119318360200151611b96565b835190915081146119735760405162461bcd60e51b8152600401808060200182810382526028815260200180611f9b6028913960400191505060405180910390fd5b60006119828460200151611c2f565b845190915081900360608167ffffffffffffffff811180156119a357600080fd5b506040519080825280601f01601f1916602001820160405280156119ce576020820181803683370190505b5090506000816020019050611916848860200151018285611c92565b6000610fc08383611cdd565b6000610fc0836001600160a01b038416611d41565b806040516020018082805190602001908083835b60208310611a3e5780518252601f199092019160209182019101611a1f565b51815160209384036101000a60001901801990921691161790527f3a20494e53554646494349454e545f5045524d495353494f4e530000000000009190930190815260408051808303600519018152601a909201905280516105529550600194509201919050611e87565b6000610fc382611d59565b6000610fc0836001600160a01b038416611d5d565b6000610fc0836001600160a01b038416611da7565b6020810151805160009190821a9060c0821015611b00576000925050506104e5565b5060019392505050565b600080600090506000611b208460200151611c2f565b602085015185519181019250015b80821015611b8d57611b3f82611b96565b8201915080821115611b825760405162461bcd60e51b815260040180806020018281038252602c815260200180611ff3602c913960400191505060405180910390fd5b600190920191611b2e565b50909392505050565b80516000908190811a6080811015611bb15760019150611c28565b60b8811015611bc657607e1981019150611c28565b60c0811015611bf35760b78103600185019450806020036101000a85510460018201810193505050611c28565b60f8811015611c085760be1981019150611c28565b60f78103600185019450806020036101000a855104600182018101935050505b5092915050565b8051600090811a6080811015611c495760009150506104e5565b60b8811080611c64575060c08110801590611c64575060f881105b15611c735760019150506104e5565b60c0811015611c875760b5190190506104e5565b60f5190190506104e5565b80611c9c57611cd8565b5b60208110611cbc578251825260209283019290910190601f1901611c9d565b8251825160208390036101000a60001901801990921691161782525b505050565b81546000908210611d1f5760405162461bcd60e51b8152600401808060200182810382526022815260200180611f206022913960400191505060405180910390fd5b826000018281548110611d2e57fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000611d698383611d41565b611d9f57508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610fc3565b506000610fc3565b60008181526001830160205260408120548015611e635783546000198083019190810190600090879083908110611dda57fe5b9060005260206000200154905080876000018481548110611df757fe5b600091825260208083209091019290925582815260018981019092526040902090840190558654879080611e2757fe5b60019003818190600052602060002001600090559055866001016000878152602001908152602001600020600090556001945050505050610fc3565b6000915050610fc3565b604051806040016040528060008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611ec857805160ff1916838001178555611ef5565b82800160010185558215611ef5579182015b82811115611ef5578251825591602001919060010190611eda565b50611f01929150611f05565b5090565b6114fa91905b80821115611f015760008155600101611f0b56fe456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e744d696e7461626c654552433732315072656469636174653a20494e56414c49445f5349474e4154555245524c505265616465723a2042595445535f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b65524c505265616465723a204e554d5f4954454d535f4445434f4445445f4c454e4754485f4d49534d415443484d696e7461626c654552433732315072656469636174653a20455843454544535f42415443485f4c494d4954241ecf16d79d0f8dbfb92cbc07fe17840425976cf0667f022fe9877caa831b084d696e7461626c654552433732315072656469636174653a20494e56414c49445f5245434549564552524c505265616465723a204c4953545f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66524c505265616465723a2055494e545f4445434f4445445f4c454e4754485f4d49534d41544348a164736f6c6343000606000a"; + static readonly abi: readonly [{ + readonly inputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "constructor"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "depositor"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "depositReceiver"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "rootToken"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "LockedMintableERC721"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "depositor"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "depositReceiver"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "rootToken"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "uint256[]"; + readonly name: "tokenIds"; + readonly type: "uint256[]"; + }]; + readonly name: "LockedMintableERC721Batch"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "previousAdminRole"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "newAdminRole"; + readonly type: "bytes32"; + }]; + readonly name: "RoleAdminChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "sender"; + readonly type: "address"; + }]; + readonly name: "RoleGranted"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "sender"; + readonly type: "address"; + }]; + readonly name: "RoleRevoked"; + readonly type: "event"; + }, { + readonly inputs: readonly []; + readonly name: "BATCH_LIMIT"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "DEFAULT_ADMIN_ROLE"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "MANAGER_ROLE"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "TOKEN_TYPE"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "TRANSFER_EVENT_SIG"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "TRANSFER_WITH_METADATA_EVENT_SIG"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "WITHDRAW_BATCH_EVENT_SIG"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "rootToken"; + readonly type: "address"; + }, { + readonly internalType: "bytes"; + readonly name: "log"; + readonly type: "bytes"; + }]; + readonly name: "exitTokens"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }]; + readonly name: "getRoleAdmin"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "index"; + readonly type: "uint256"; + }]; + readonly name: "getRoleMember"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }]; + readonly name: "getRoleMemberCount"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "grantRole"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "hasRole"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "_owner"; + readonly type: "address"; + }]; + readonly name: "initialize"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "depositor"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "depositReceiver"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "rootToken"; + readonly type: "address"; + }, { + readonly internalType: "bytes"; + readonly name: "depositData"; + readonly type: "bytes"; + }]; + readonly name: "lockTokens"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly name: "onERC721Received"; + readonly outputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: ""; + readonly type: "bytes4"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "renounceRole"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "revokeRole"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): MintableERC721PredicateInterface; + static connect(address: string, runner?: ContractRunner | null): MintableERC721Predicate; +} +export {}; +//# sourceMappingURL=MintableERC721Predicate__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate__factory.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate__factory.d.ts.map new file mode 100644 index 00000000..9e957982 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"MintableERC721Predicate__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,uBAAuB,EACvB,gCAAgC,EACjC,MAAM,uGAAuG,CAAC;AA+d/G,aAAK,wCAAwC,GACzC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,gCAAiC,SAAQ,eAAe;gBACvD,GAAG,IAAI,EAAE,wCAAwC;IAQpD,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CACd,MAAM,EAAE,cAAc,GAAG,IAAI,GAC5B,gCAAgC;IAInC,MAAM,CAAC,QAAQ,CAAC,QAAQ,sphBAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,gCAAgC;IAG1D,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,uBAAuB;CAO3B"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate__factory.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate__factory.js new file mode 100644 index 00000000..feb4bdf2 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate__factory.js @@ -0,0 +1,507 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.MintableERC721Predicate__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [], + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "depositor", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "depositReceiver", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "rootToken", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "LockedMintableERC721", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "depositor", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "depositReceiver", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "rootToken", + type: "address", + }, + { + indexed: false, + internalType: "uint256[]", + name: "tokenIds", + type: "uint256[]", + }, + ], + name: "LockedMintableERC721Batch", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + indexed: true, + internalType: "bytes32", + name: "previousAdminRole", + type: "bytes32", + }, + { + indexed: true, + internalType: "bytes32", + name: "newAdminRole", + type: "bytes32", + }, + ], + name: "RoleAdminChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "RoleGranted", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "RoleRevoked", + type: "event", + }, + { + inputs: [], + name: "BATCH_LIMIT", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "DEFAULT_ADMIN_ROLE", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "MANAGER_ROLE", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "TOKEN_TYPE", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "TRANSFER_EVENT_SIG", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "TRANSFER_WITH_METADATA_EVENT_SIG", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "WITHDRAW_BATCH_EVENT_SIG", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + { + internalType: "address", + name: "rootToken", + type: "address", + }, + { + internalType: "bytes", + name: "log", + type: "bytes", + }, + ], + name: "exitTokens", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + ], + name: "getRoleAdmin", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + 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: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "grantRole", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "hasRole", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + ], + name: "initialize", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "depositor", + type: "address", + }, + { + internalType: "address", + name: "depositReceiver", + type: "address", + }, + { + internalType: "address", + name: "rootToken", + type: "address", + }, + { + internalType: "bytes", + name: "depositData", + type: "bytes", + }, + ], + name: "lockTokens", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + { + internalType: "address", + name: "", + type: "address", + }, + { + internalType: "uint256", + name: "", + type: "uint256", + }, + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + name: "onERC721Received", + outputs: [ + { + internalType: "bytes4", + name: "", + type: "bytes4", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "renounceRole", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "revokeRole", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +const _bytecode = "0x60806040526002805460ff1916905534801561001a57600080fd5b5061211d8061002a6000396000f3fe608060405234801561001057600080fd5b50600436106101165760003560e01c806391d14854116100a2578063c4d66de811610071578063c4d66de8146103bb578063ca15c873146103e1578063d547741f146103fe578063e375b64e1461042a578063ec87621c146104b957610116565b806391d14854146103635780639559c0bd146103a3578063a217fddf146103ab578063b017a30f146103b357610116565b80634794b430116100e95780634794b4301461024f57806349f5124b14610257578063609c92b81461025f5780638274664f146102675780639010d07c1461032457610116565b8063150b7a021461011b578063248a9ca3146101c65780632f2ff15d146101f557806336568abe14610223575b600080fd5b6101a96004803603608081101561013157600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561016b57600080fd5b82018360208201111561017d57600080fd5b803590602001918460018302840111600160201b8311171561019e57600080fd5b5090925090506104c1565b604080516001600160e01b03199092168252519081900360200190f35b6101e3600480360360208110156101dc57600080fd5b50356104d2565b60408051918252519081900360200190f35b6102216004803603604081101561020b57600080fd5b50803590602001356001600160a01b03166104ea565b005b6102216004803603604081101561023957600080fd5b50803590602001356001600160a01b0316610556565b6101e36105b7565b6101e36105db565b6101e36105ff565b6102216004803603606081101561027d57600080fd5b6001600160a01b038235811692602081013590911691810190606081016040820135600160201b8111156102b057600080fd5b8201836020820111156102c257600080fd5b803590602001918460018302840111600160201b831117156102e357600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610623945050505050565b6103476004803603604081101561033a57600080fd5b5080359060200135610fa2565b604080516001600160a01b039092168252519081900360200190f35b61038f6004803603604081101561037957600080fd5b50803590602001356001600160a01b0316610fc9565b604080519115158252519081900360200190f35b6101e3610fe7565b6101e3610fec565b6101e3610ff1565b610221600480360360208110156103d157600080fd5b50356001600160a01b0316611015565b6101e3600480360360208110156103f757600080fd5b50356110cf565b6102216004803603604081101561041457600080fd5b50803590602001356001600160a01b03166110e6565b6102216004803603608081101561044057600080fd5b6001600160a01b0382358116926020810135821692604082013590921691810190608081016060820135600160201b81111561047b57600080fd5b82018360208201111561048d57600080fd5b803590602001918460018302840111600160201b831117156104ae57600080fd5b50909250905061113f565b6101e36114e6565b630a85bd0160e11b95945050505050565b6000818152602081905260409020600201545b919050565b60008281526020819052604090206002015461050d906105086114f8565b610fc9565b6105485760405162461bcd60e51b815260040180806020018281038252602f815260200180611f42602f913960400191505060405180910390fd5b61055282826114fd565b5050565b61055e6114f8565b6001600160a01b0316816001600160a01b0316146105ad5760405162461bcd60e51b815260040180806020018281038252602f8152602001806120bb602f913960400191505060405180910390fd5b610552828261156c565b7ff871896b17e9cb7a64941c62c188a4f5c621b86800e3d15452ece01ce56073df81565b7ff94915c6d1fd521cee85359239227480c7e8776d7caf1fc3bacad5c269b66a1481565b7fd4392723c111fcb98b073fe55873efb447bcd23cd3e49ec9ea2581930cd01ddc81565b60008051602061204b83398151915261063e816105086114f8565b6001906106de5760405162461bcd60e51b81526020600482019081528254600260001961010060018416150201909116046024830181905290918291604490910190849080156106cf5780601f106106a4576101008083540402835291602001916106cf565b820191906000526020600020905b8154815290600101906020018083116106b257829003601f168201915b50509250505060405180910390fd5b5060606106f26106ed846115db565b611656565b905060606107138260018151811061070657fe5b6020026020010151611656565b90507fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60001b6107568260008151811061074957fe5b60200260200101516117d8565b141561095457600061076e8260018151811061074957fe5b905060006001600160a01b031661078b8360028151811061074957fe5b6001600160a01b0316146107d05760405162461bcd60e51b815260040180806020018281038252602981526020018061206b6029913960400191505060405180910390fd5b600086905060006107e78460038151811061074957fe5b9050816001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b15801561082d57600080fd5b505afa158015610841573d6000803e3d6000fd5b505050506040513d602081101561085757600080fd5b5051156108d35760408051632142170760e11b81523060048201526001600160a01b038581166024830152604482018490529151918416916342842e0e9160648082019260009290919082900301818387803b1580156108b657600080fd5b505af11580156108ca573d6000803e3d6000fd5b5050505061094c565b816001600160a01b03166340c10f1984836040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b15801561093357600080fd5b505af1158015610947573d6000803e3d6000fd5b505050505b505050610f9a565b7ff871896b17e9cb7a64941c62c188a4f5c621b86800e3d15452ece01ce56073df60001b6109888260008151811061074957fe5b1415610c085760006109a08260018151811061074957fe5b905060606109c1846002815181106109b457fe5b6020026020010151611920565b905060608180602001905160208110156109da57600080fd5b8101908080516040519392919084600160201b8211156109f957600080fd5b908301906020820185811115610a0e57600080fd5b82518660208202830111600160201b82111715610a2a57600080fd5b82525081516020918201928201910280838360005b83811015610a57578181015183820152602001610a3f565b5050505091909101604052505082519293508a9150600090505b82811015610bfd576000848281518110610a8757fe5b60200260200101519050826001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610ad557600080fd5b505afa158015610ae9573d6000803e3d6000fd5b505050506040513d6020811015610aff57600080fd5b505115610b7b5760408051632142170760e11b81523060048201526001600160a01b038981166024830152604482018490529151918516916342842e0e9160648082019260009290919082900301818387803b158015610b5e57600080fd5b505af1158015610b72573d6000803e3d6000fd5b50505050610bf4565b826001600160a01b03166340c10f1988836040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b158015610bdb57600080fd5b505af1158015610bef573d6000803e3d6000fd5b505050505b50600101610a71565b505050505050610f9a565b7ff94915c6d1fd521cee85359239227480c7e8776d7caf1fc3bacad5c269b66a1460001b610c3c8260008151811061074957fe5b1415610f63576000610c548260018151811061074957fe5b905060006001600160a01b0316610c718360028151811061074957fe5b6001600160a01b031614610cb65760405162461bcd60e51b815260040180806020018281038252602981526020018061206b6029913960400191505060405180910390fd5b60008690506000610ccd8460038151811061074957fe5b9050816001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610d1357600080fd5b505afa158015610d27573d6000803e3d6000fd5b505050506040513d6020811015610d3d57600080fd5b505115610d9c5760408051632142170760e11b81523060048201526001600160a01b038581166024830152604482018490529151918416916342842e0e9160648082019260009290919082900301818387803b1580156108b657600080fd5b6060610dae866002815181106109b457fe5b90506060818060200190516020811015610dc757600080fd5b8101908080516040519392919084600160201b821115610de657600080fd5b908301906020820185811115610dfb57600080fd5b8251600160201b811182820188101715610e1457600080fd5b82525081516020918201929091019080838360005b83811015610e41578181015183820152602001610e29565b50505050905090810190601f168015610e6e5780820380516001836020036101000a031916815260200191505b506040525050509050836001600160a01b03166394d008ef8685846040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b0316815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610ef3578181015183820152602001610edb565b50505050905090810190601f168015610f205780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015610f4157600080fd5b505af1158015610f55573d6000803e3d6000fd5b505050505050505050610f9a565b60405162461bcd60e51b815260040180806020018281038252602a815260200180611f71602a913960400191505060405180910390fd5b505050505050565b6000828152602081905260408120610fc0908363ffffffff6119ea16565b90505b92915050565b6000828152602081905260408120610fc0908363ffffffff6119f616565b601481565b600081565b7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef81565b60025460ff161561105e576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b61109c6040518060400160405280601781526020017f4d696e7461626c65455243373231507265646963617465000000000000000000815250611a0b565b6110a7600082610548565b6110bf60008051602061204b83398151915282610548565b506002805460ff19166001179055565b6000818152602081905260408120610fc390611aa9565b600082815260208190526040902060020154611104906105086114f8565b6105ad5760405162461bcd60e51b8152600401808060200182810382526030815260200180611fc36030913960400191505060405180910390fd5b60008051602061204b83398151915261115a816105086114f8565b6001906111c05760405162461bcd60e51b81526020600482019081528254600260001961010060018416150201909116046024830181905290918291604490910190849080156106cf5780601f106106a4576101008083540402835291602001916106cf565b50602082141561129f576000838360208110156111dc57600080fd5b5060408051913580835290519092506001600160a01b038088169289821692918b16917fe13244aa06bdc79480ed5fdc6ebe2bb37202fcdf33ecf45dc449f4201f3dc0879181900360200190a460408051632142170760e11b81526001600160a01b038981166004830152306024830152604482018490529151918716916342842e0e9160648082019260009290919082900301818387803b15801561128157600080fd5b505af1158015611295573d6000803e3d6000fd5b5050505050610f9a565b6060838360208110156112b157600080fd5b810190602081018135600160201b8111156112cb57600080fd5b8201836020820111156112dd57600080fd5b803590602001918460208302840111600160201b831117156112fe57600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f8201169050808301925050505050505091929192905050509050846001600160a01b0316866001600160a01b0316886001600160a01b03167fdb55e3a0ae817693fd7b07170d81eab0eb2c239f36fcecbc98b6b58ac5667e7a846040518080602001828103825283818151815260200191508051906020019060200280838360005b838110156113ca5781810151838201526020016113b2565b505050509050019250505060405180910390a48051601481111561141f5760405162461bcd60e51b815260040180806020018281038252602c81526020018061201f602c913960400191505060405180910390fd5b60005b818110156114db57866001600160a01b03166342842e0e8a3086858151811061144757fe5b60200260200101516040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050600060405180830381600087803b1580156114b757600080fd5b505af11580156114cb573d6000803e3d6000fd5b5050600190920191506114229050565b505050505050505050565b60008051602061204b83398151915281565b335b90565b600082815260208190526040902061151b908263ffffffff611ab416565b15610552576115286114f8565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b600082815260208190526040902061158a908263ffffffff611ac916565b15610552576115976114f8565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b6115e3611e6d565b6000825111611639576040805162461bcd60e51b815260206004820152601f60248201527f524c505265616465723a20494e56414c49445f42595445535f4c454e47544800604482015290519081900360640190fd5b506040805180820190915281518152602082810190820152919050565b606061166182611ade565b6116b2576040805162461bcd60e51b815260206004820152601860248201527f524c505265616465723a204954454d5f4e4f545f4c4953540000000000000000604482015290519081900360640190fd5b60006116bd83611b0a565b905060608167ffffffffffffffff811180156116d857600080fd5b5060405190808252806020026020018201604052801561171257816020015b6116ff611e6d565b8152602001906001900390816116f75790505b50905060006117248560200151611b96565b855190915081146117665760405162461bcd60e51b81526004018080602001828103825260278152602001806120946027913960400191505060405180910390fd5b60006117758660200151611c2f565b60208701510190506000805b858110156117cc5761179283611b96565b91506040518060400160405280838152602001848152508582815181106117b557fe5b602090810291909101015291810191600101611781565b50929695505050505050565b60006117e382611ade565b15611835576040805162461bcd60e51b815260206004820181905260248201527f524c505265616465723a204445434f44494e475f4c4953545f41535f55494e54604482015290519081900360640190fd5b81516021101561188c576040805162461bcd60e51b815260206004820152601e60248201527f524c505265616465723a20494e56414c49445f55494e545f4c454e4754480000604482015290519081900360640190fd5b600061189b8360200151611b96565b835190915081146118dd5760405162461bcd60e51b81526004018080602001828103825260278152602001806120ea6027913960400191505060405180910390fd5b60006118ec8460200151611c2f565b8451602080870151830180519394509184900392919083101561191657826020036101000a820491505b5095945050505050565b606060006119318360200151611b96565b835190915081146119735760405162461bcd60e51b8152600401808060200182810382526028815260200180611f9b6028913960400191505060405180910390fd5b60006119828460200151611c2f565b845190915081900360608167ffffffffffffffff811180156119a357600080fd5b506040519080825280601f01601f1916602001820160405280156119ce576020820181803683370190505b5090506000816020019050611916848860200151018285611c92565b6000610fc08383611cdd565b6000610fc0836001600160a01b038416611d41565b806040516020018082805190602001908083835b60208310611a3e5780518252601f199092019160209182019101611a1f565b51815160209384036101000a60001901801990921691161790527f3a20494e53554646494349454e545f5045524d495353494f4e530000000000009190930190815260408051808303600519018152601a909201905280516105529550600194509201919050611e87565b6000610fc382611d59565b6000610fc0836001600160a01b038416611d5d565b6000610fc0836001600160a01b038416611da7565b6020810151805160009190821a9060c0821015611b00576000925050506104e5565b5060019392505050565b600080600090506000611b208460200151611c2f565b602085015185519181019250015b80821015611b8d57611b3f82611b96565b8201915080821115611b825760405162461bcd60e51b815260040180806020018281038252602c815260200180611ff3602c913960400191505060405180910390fd5b600190920191611b2e565b50909392505050565b80516000908190811a6080811015611bb15760019150611c28565b60b8811015611bc657607e1981019150611c28565b60c0811015611bf35760b78103600185019450806020036101000a85510460018201810193505050611c28565b60f8811015611c085760be1981019150611c28565b60f78103600185019450806020036101000a855104600182018101935050505b5092915050565b8051600090811a6080811015611c495760009150506104e5565b60b8811080611c64575060c08110801590611c64575060f881105b15611c735760019150506104e5565b60c0811015611c875760b5190190506104e5565b60f5190190506104e5565b80611c9c57611cd8565b5b60208110611cbc578251825260209283019290910190601f1901611c9d565b8251825160208390036101000a60001901801990921691161782525b505050565b81546000908210611d1f5760405162461bcd60e51b8152600401808060200182810382526022815260200180611f206022913960400191505060405180910390fd5b826000018281548110611d2e57fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000611d698383611d41565b611d9f57508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610fc3565b506000610fc3565b60008181526001830160205260408120548015611e635783546000198083019190810190600090879083908110611dda57fe5b9060005260206000200154905080876000018481548110611df757fe5b600091825260208083209091019290925582815260018981019092526040902090840190558654879080611e2757fe5b60019003818190600052602060002001600090559055866001016000878152602001908152602001600020600090556001945050505050610fc3565b6000915050610fc3565b604051806040016040528060008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611ec857805160ff1916838001178555611ef5565b82800160010185558215611ef5579182015b82811115611ef5578251825591602001919060010190611eda565b50611f01929150611f05565b5090565b6114fa91905b80821115611f015760008155600101611f0b56fe456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e744d696e7461626c654552433732315072656469636174653a20494e56414c49445f5349474e4154555245524c505265616465723a2042595445535f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b65524c505265616465723a204e554d5f4954454d535f4445434f4445445f4c454e4754485f4d49534d415443484d696e7461626c654552433732315072656469636174653a20455843454544535f42415443485f4c494d4954241ecf16d79d0f8dbfb92cbc07fe17840425976cf0667f022fe9877caa831b084d696e7461626c654552433732315072656469636174653a20494e56414c49445f5245434549564552524c505265616465723a204c4953545f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66524c505265616465723a2055494e545f4445434f4445445f4c454e4754485f4d49534d41544348a164736f6c6343000606000a"; +const isSuperArgs = (xs) => xs.length > 1; +class MintableERC721Predicate__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(overrides) { + return super.getDeployTransaction(overrides || {}); + } + deploy(overrides) { + return super.deploy(overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.MintableERC721Predicate__factory = MintableERC721Predicate__factory; +MintableERC721Predicate__factory.bytecode = _bytecode; +MintableERC721Predicate__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/index.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/index.d.ts new file mode 100644 index 00000000..d35e99ad --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/index.d.ts @@ -0,0 +1,9 @@ +export { AccessControl__factory } from "./AccessControl__factory"; +export { AccessControlMixin__factory } from "./AccessControlMixin__factory"; +export { IERC165__factory } from "./IERC165__factory"; +export { IERC721__factory } from "./IERC721__factory"; +export { IERC721Receiver__factory } from "./IERC721Receiver__factory"; +export { IMintableERC721__factory } from "./IMintableERC721__factory"; +export { ITokenPredicate__factory } from "./ITokenPredicate__factory"; +export { MintableERC721Predicate__factory } from "./MintableERC721Predicate__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/index.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/index.d.ts.map new file mode 100644 index 00000000..cbb4cbf3 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,gCAAgC,EAAE,MAAM,oCAAoC,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/index.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/index.js new file mode 100644 index 00000000..298e331c --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/index.js @@ -0,0 +1,19 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.MintableERC721Predicate__factory = exports.ITokenPredicate__factory = exports.IMintableERC721__factory = exports.IERC721Receiver__factory = exports.IERC721__factory = exports.IERC165__factory = exports.AccessControlMixin__factory = exports.AccessControl__factory = void 0; +var AccessControl__factory_1 = require("./AccessControl__factory"); +Object.defineProperty(exports, "AccessControl__factory", { enumerable: true, get: function () { return AccessControl__factory_1.AccessControl__factory; } }); +var AccessControlMixin__factory_1 = require("./AccessControlMixin__factory"); +Object.defineProperty(exports, "AccessControlMixin__factory", { enumerable: true, get: function () { return AccessControlMixin__factory_1.AccessControlMixin__factory; } }); +var IERC165__factory_1 = require("./IERC165__factory"); +Object.defineProperty(exports, "IERC165__factory", { enumerable: true, get: function () { return IERC165__factory_1.IERC165__factory; } }); +var IERC721__factory_1 = require("./IERC721__factory"); +Object.defineProperty(exports, "IERC721__factory", { enumerable: true, get: function () { return IERC721__factory_1.IERC721__factory; } }); +var IERC721Receiver__factory_1 = require("./IERC721Receiver__factory"); +Object.defineProperty(exports, "IERC721Receiver__factory", { enumerable: true, get: function () { return IERC721Receiver__factory_1.IERC721Receiver__factory; } }); +var IMintableERC721__factory_1 = require("./IMintableERC721__factory"); +Object.defineProperty(exports, "IMintableERC721__factory", { enumerable: true, get: function () { return IMintableERC721__factory_1.IMintableERC721__factory; } }); +var ITokenPredicate__factory_1 = require("./ITokenPredicate__factory"); +Object.defineProperty(exports, "ITokenPredicate__factory", { enumerable: true, get: function () { return ITokenPredicate__factory_1.ITokenPredicate__factory; } }); +var MintableERC721Predicate__factory_1 = require("./MintableERC721Predicate__factory"); +Object.defineProperty(exports, "MintableERC721Predicate__factory", { enumerable: true, get: function () { return MintableERC721Predicate__factory_1.MintableERC721Predicate__factory; } }); diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControlMixin__factory.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControlMixin__factory.d.ts new file mode 100644 index 00000000..754c537b --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControlMixin__factory.d.ts @@ -0,0 +1,199 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../../../common"; +import type { AccessControlMixin, AccessControlMixinInterface } from "../../../../../contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControlMixin"; +declare type AccessControlMixinConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class AccessControlMixin__factory extends ContractFactory { + constructor(...args: AccessControlMixinConstructorParams); + getDeployTransaction(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): AccessControlMixin__factory; + static readonly bytecode = "0x608060405234801561001057600080fd5b50610707806100206000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c806391d148541161005b57806391d1485414610155578063a217fddf14610195578063ca15c8731461019d578063d547741f146101ba57610088565b8063248a9ca31461008d5780632f2ff15d146100bc57806336568abe146100ea5780639010d07c14610116575b600080fd5b6100aa600480360360208110156100a357600080fd5b50356101e6565b60408051918252519081900360200190f35b6100e8600480360360408110156100d257600080fd5b50803590602001356001600160a01b03166101fb565b005b6100e86004803603604081101561010057600080fd5b50803590602001356001600160a01b0316610267565b6101396004803603604081101561012c57600080fd5b50803590602001356102c8565b604080516001600160a01b039092168252519081900360200190f35b6101816004803603604081101561016b57600080fd5b50803590602001356001600160a01b03166102ef565b604080519115158252519081900360200190f35b6100aa61030d565b6100aa600480360360208110156101b357600080fd5b5035610312565b6100e8600480360360408110156101d057600080fd5b50803590602001356001600160a01b0316610329565b60009081526020819052604090206002015490565b60008281526020819052604090206002015461021e90610219610382565b6102ef565b6102595760405162461bcd60e51b815260040180806020018281038252602f81526020018061066d602f913960400191505060405180910390fd5b6102638282610386565b5050565b61026f610382565b6001600160a01b0316816001600160a01b0316146102be5760405162461bcd60e51b815260040180806020018281038252602f8152602001806106cc602f913960400191505060405180910390fd5b61026382826103f5565b60008281526020819052604081206102e6908363ffffffff61046416565b90505b92915050565b60008281526020819052604081206102e6908363ffffffff61047016565b600081565b60008181526020819052604081206102e990610485565b60008281526020819052604090206002015461034790610219610382565b6102be5760405162461bcd60e51b815260040180806020018281038252603081526020018061069c6030913960400191505060405180910390fd5b3390565b60008281526020819052604090206103a4908263ffffffff61049016565b15610263576103b1610382565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6000828152602081905260409020610413908263ffffffff6104a516565b1561026357610420610382565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b60006102e683836104ba565b60006102e6836001600160a01b03841661051e565b60006102e982610536565b60006102e6836001600160a01b03841661053a565b60006102e6836001600160a01b038416610584565b815460009082106104fc5760405162461bcd60e51b815260040180806020018281038252602281526020018061064b6022913960400191505060405180910390fd5b82600001828154811061050b57fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000610546838361051e565b61057c575081546001818101845560008481526020808220909301849055845484825282860190935260409020919091556102e9565b5060006102e9565b6000818152600183016020526040812054801561064057835460001980830191908101906000908790839081106105b757fe5b90600052602060002001549050808760000184815481106105d457fe5b60009182526020808320909101929092558281526001898101909252604090209084019055865487908061060457fe5b600190038181906000526020600020016000905590558660010160008781526020019081526020016000206000905560019450505050506102e9565b60009150506102e956fe456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e74416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b65416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66a164736f6c6343000606000a"; + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "previousAdminRole"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "newAdminRole"; + readonly type: "bytes32"; + }]; + readonly name: "RoleAdminChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "sender"; + readonly type: "address"; + }]; + readonly name: "RoleGranted"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "sender"; + readonly type: "address"; + }]; + readonly name: "RoleRevoked"; + readonly type: "event"; + }, { + readonly inputs: readonly []; + readonly name: "DEFAULT_ADMIN_ROLE"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }]; + readonly name: "getRoleAdmin"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "index"; + readonly type: "uint256"; + }]; + readonly name: "getRoleMember"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }]; + readonly name: "getRoleMemberCount"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "grantRole"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "hasRole"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "renounceRole"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "revokeRole"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): AccessControlMixinInterface; + static connect(address: string, runner?: ContractRunner | null): AccessControlMixin; +} +export {}; +//# sourceMappingURL=AccessControlMixin__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControlMixin__factory.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControlMixin__factory.d.ts.map new file mode 100644 index 00000000..900e88df --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControlMixin__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"AccessControlMixin__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControlMixin__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,kBAAkB,EAClB,2BAA2B,EAC5B,MAAM,2FAA2F,CAAC;AA4OnG,aAAK,mCAAmC,GACpC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,2BAA4B,SAAQ,eAAe;gBAClD,GAAG,IAAI,EAAE,mCAAmC;IAQ/C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,2BAA2B;IAI5E,MAAM,CAAC,QAAQ,CAAC,QAAQ,slHAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,2BAA2B;IAGrD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,kBAAkB;CAGtB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControlMixin__factory.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControlMixin__factory.js new file mode 100644 index 00000000..a9dfe89f --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControlMixin__factory.js @@ -0,0 +1,264 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.AccessControlMixin__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + indexed: true, + internalType: "bytes32", + name: "previousAdminRole", + type: "bytes32", + }, + { + indexed: true, + internalType: "bytes32", + name: "newAdminRole", + type: "bytes32", + }, + ], + name: "RoleAdminChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "RoleGranted", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "RoleRevoked", + type: "event", + }, + { + inputs: [], + name: "DEFAULT_ADMIN_ROLE", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + ], + name: "getRoleAdmin", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + 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: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "grantRole", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "hasRole", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "renounceRole", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "revokeRole", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +const _bytecode = "0x608060405234801561001057600080fd5b50610707806100206000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c806391d148541161005b57806391d1485414610155578063a217fddf14610195578063ca15c8731461019d578063d547741f146101ba57610088565b8063248a9ca31461008d5780632f2ff15d146100bc57806336568abe146100ea5780639010d07c14610116575b600080fd5b6100aa600480360360208110156100a357600080fd5b50356101e6565b60408051918252519081900360200190f35b6100e8600480360360408110156100d257600080fd5b50803590602001356001600160a01b03166101fb565b005b6100e86004803603604081101561010057600080fd5b50803590602001356001600160a01b0316610267565b6101396004803603604081101561012c57600080fd5b50803590602001356102c8565b604080516001600160a01b039092168252519081900360200190f35b6101816004803603604081101561016b57600080fd5b50803590602001356001600160a01b03166102ef565b604080519115158252519081900360200190f35b6100aa61030d565b6100aa600480360360208110156101b357600080fd5b5035610312565b6100e8600480360360408110156101d057600080fd5b50803590602001356001600160a01b0316610329565b60009081526020819052604090206002015490565b60008281526020819052604090206002015461021e90610219610382565b6102ef565b6102595760405162461bcd60e51b815260040180806020018281038252602f81526020018061066d602f913960400191505060405180910390fd5b6102638282610386565b5050565b61026f610382565b6001600160a01b0316816001600160a01b0316146102be5760405162461bcd60e51b815260040180806020018281038252602f8152602001806106cc602f913960400191505060405180910390fd5b61026382826103f5565b60008281526020819052604081206102e6908363ffffffff61046416565b90505b92915050565b60008281526020819052604081206102e6908363ffffffff61047016565b600081565b60008181526020819052604081206102e990610485565b60008281526020819052604090206002015461034790610219610382565b6102be5760405162461bcd60e51b815260040180806020018281038252603081526020018061069c6030913960400191505060405180910390fd5b3390565b60008281526020819052604090206103a4908263ffffffff61049016565b15610263576103b1610382565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6000828152602081905260409020610413908263ffffffff6104a516565b1561026357610420610382565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b60006102e683836104ba565b60006102e6836001600160a01b03841661051e565b60006102e982610536565b60006102e6836001600160a01b03841661053a565b60006102e6836001600160a01b038416610584565b815460009082106104fc5760405162461bcd60e51b815260040180806020018281038252602281526020018061064b6022913960400191505060405180910390fd5b82600001828154811061050b57fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000610546838361051e565b61057c575081546001818101845560008481526020808220909301849055845484825282860190935260409020919091556102e9565b5060006102e9565b6000818152600183016020526040812054801561064057835460001980830191908101906000908790839081106105b757fe5b90600052602060002001549050808760000184815481106105d457fe5b60009182526020808320909101929092558281526001898101909252604090209084019055865487908061060457fe5b600190038181906000526020600020016000905590558660010160008781526020019081526020016000206000905560019450505050506102e9565b60009150506102e956fe456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e74416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b65416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66a164736f6c6343000606000a"; +const isSuperArgs = (xs) => xs.length > 1; +class AccessControlMixin__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(overrides) { + return super.getDeployTransaction(overrides || {}); + } + deploy(overrides) { + return super.deploy(overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.AccessControlMixin__factory = AccessControlMixin__factory; +AccessControlMixin__factory.bytecode = _bytecode; +AccessControlMixin__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControl__factory.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControl__factory.d.ts new file mode 100644 index 00000000..615ae3eb --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControl__factory.d.ts @@ -0,0 +1,184 @@ +import { type ContractRunner } from "ethers"; +import type { AccessControl, AccessControlInterface } from "../../../../../contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControl"; +export declare class AccessControl__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "previousAdminRole"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "newAdminRole"; + readonly type: "bytes32"; + }]; + readonly name: "RoleAdminChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "sender"; + readonly type: "address"; + }]; + readonly name: "RoleGranted"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "sender"; + readonly type: "address"; + }]; + readonly name: "RoleRevoked"; + readonly type: "event"; + }, { + readonly inputs: readonly []; + readonly name: "DEFAULT_ADMIN_ROLE"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }]; + readonly name: "getRoleAdmin"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "index"; + readonly type: "uint256"; + }]; + readonly name: "getRoleMember"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }]; + readonly name: "getRoleMemberCount"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "grantRole"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "hasRole"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "renounceRole"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "revokeRole"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): AccessControlInterface; + static connect(address: string, runner?: ContractRunner | null): AccessControl; +} +//# sourceMappingURL=AccessControl__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControl__factory.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControl__factory.d.ts.map new file mode 100644 index 00000000..db4be070 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControl__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"AccessControl__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControl__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,aAAa,EACb,sBAAsB,EACvB,MAAM,sFAAsF,CAAC;AAyO9F,qBAAa,sBAAsB;IACjC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,sBAAsB;IAGhD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,aAAa;CAGjB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControl__factory.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControl__factory.js new file mode 100644 index 00000000..d7c08911 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControl__factory.js @@ -0,0 +1,244 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.AccessControl__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + indexed: true, + internalType: "bytes32", + name: "previousAdminRole", + type: "bytes32", + }, + { + indexed: true, + internalType: "bytes32", + name: "newAdminRole", + type: "bytes32", + }, + ], + name: "RoleAdminChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "RoleGranted", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "RoleRevoked", + type: "event", + }, + { + inputs: [], + name: "DEFAULT_ADMIN_ROLE", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + ], + name: "getRoleAdmin", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + 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: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "grantRole", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "hasRole", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "renounceRole", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "revokeRole", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +class AccessControl__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.AccessControl__factory = AccessControl__factory; +AccessControl__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base__factory.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base__factory.d.ts new file mode 100644 index 00000000..742d87fe --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base__factory.d.ts @@ -0,0 +1,53 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../../../common"; +import type { EIP712Base, EIP712BaseInterface } from "../../../../../contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base"; +declare type EIP712BaseConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class EIP712Base__factory extends ContractFactory { + constructor(...args: EIP712BaseConstructorParams); + getDeployTransaction(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): EIP712Base__factory; + static readonly bytecode = "0x60806040526000805460ff1916905534801561001a57600080fd5b5061010b8061002a6000396000f3fe6080604052348015600f57600080fd5b5060043610603c5760003560e01c80630f7e597014604157806320379ee51460b95780633408e4701460d1575b600080fd5b604760d7565b6040805160208082528351818301528351919283929083019185019080838360005b83811015607f5781810151838201526020016069565b50505050905090810190601f16801560ab5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b60bf60f4565b60408051918252519081900360200190f35b60bf60fa565b604051806040016040528060018152602001603160f81b81525081565b60015490565b469056fea164736f6c6343000606000a"; + static readonly abi: readonly [{ + readonly inputs: readonly []; + readonly name: "ERC712_VERSION"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "getChainId"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "pure"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "getDomainSeperator"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): EIP712BaseInterface; + static connect(address: string, runner?: ContractRunner | null): EIP712Base; +} +export {}; +//# sourceMappingURL=EIP712Base__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base__factory.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base__factory.d.ts.map new file mode 100644 index 00000000..ccf0df34 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"EIP712Base__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,UAAU,EACV,mBAAmB,EACpB,MAAM,mFAAmF,CAAC;AA+C3F,aAAK,2BAA2B,GAC5B,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,mBAAoB,SAAQ,eAAe;gBAC1C,GAAG,IAAI,EAAE,2BAA2B;IAQvC,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,mBAAmB;IAIpE,MAAM,CAAC,QAAQ,CAAC,QAAQ,knBAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,mBAAmB;IAG7C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,UAAU;CAG5E"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base__factory.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base__factory.js new file mode 100644 index 00000000..a1973c00 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base__factory.js @@ -0,0 +1,75 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.EIP712Base__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [], + name: "ERC712_VERSION", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "getChainId", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "pure", + type: "function", + }, + { + inputs: [], + name: "getDomainSeperator", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +const _bytecode = "0x60806040526000805460ff1916905534801561001a57600080fd5b5061010b8061002a6000396000f3fe6080604052348015600f57600080fd5b5060043610603c5760003560e01c80630f7e597014604157806320379ee51460b95780633408e4701460d1575b600080fd5b604760d7565b6040805160208082528351818301528351919283929083019185019080838360005b83811015607f5781810151838201526020016069565b50505050905090810190601f16801560ab5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b60bf60f4565b60408051918252519081900360200190f35b60bf60fa565b604051806040016040528060018152602001603160f81b81525081565b60015490565b469056fea164736f6c6343000606000a"; +const isSuperArgs = (xs) => xs.length > 1; +class EIP712Base__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(overrides) { + return super.getDeployTransaction(overrides || {}); + } + deploy(overrides) { + return super.deploy(overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.EIP712Base__factory = EIP712Base__factory; +EIP712Base__factory.bytecode = _bytecode; +EIP712Base__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager__factory.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager__factory.d.ts new file mode 100644 index 00000000..dfd0a679 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager__factory.d.ts @@ -0,0 +1,53 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../../../common"; +import type { ICheckpointManager, ICheckpointManagerInterface } from "../../../../../contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager"; +declare type ICheckpointManagerConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class ICheckpointManager__factory extends ContractFactory { + constructor(...args: ICheckpointManagerConstructorParams); + getDeployTransaction(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): ICheckpointManager__factory; + static readonly bytecode = "0x608060405234801561001057600080fd5b5060c08061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c806341539d4a14602d575b600080fd5b604760048036036020811015604157600080fd5b5035607b565b6040805195865260208601949094528484019290925260608401526001600160a01b03166080830152519081900360a00190f35b60006020819052908152604090208054600182015460028301546003840154600490940154929391929091906001600160a01b03168556fea164736f6c6343000606000a"; + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly name: "headerBlocks"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "root"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "start"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "end"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "createdAt"; + readonly type: "uint256"; + }, { + readonly internalType: "address"; + readonly name: "proposer"; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): ICheckpointManagerInterface; + static connect(address: string, runner?: ContractRunner | null): ICheckpointManager; +} +export {}; +//# sourceMappingURL=ICheckpointManager__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager__factory.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager__factory.d.ts.map new file mode 100644 index 00000000..a256a41c --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ICheckpointManager__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,kBAAkB,EAClB,2BAA2B,EAC5B,MAAM,2FAA2F,CAAC;AA+CnG,aAAK,mCAAmC,GACpC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,2BAA4B,SAAQ,eAAe;gBAClD,GAAG,IAAI,EAAE,mCAAmC;IAQ/C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,2BAA2B;IAI5E,MAAM,CAAC,QAAQ,CAAC,QAAQ,scAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,2BAA2B;IAGrD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,kBAAkB;CAGtB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager__factory.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager__factory.js new file mode 100644 index 00000000..2d28b829 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager__factory.js @@ -0,0 +1,75 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ICheckpointManager__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + name: "headerBlocks", + outputs: [ + { + internalType: "bytes32", + name: "root", + type: "bytes32", + }, + { + internalType: "uint256", + name: "start", + type: "uint256", + }, + { + internalType: "uint256", + name: "end", + type: "uint256", + }, + { + internalType: "uint256", + name: "createdAt", + type: "uint256", + }, + { + internalType: "address", + name: "proposer", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +const _bytecode = "0x608060405234801561001057600080fd5b5060c08061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c806341539d4a14602d575b600080fd5b604760048036036020811015604157600080fd5b5035607b565b6040805195865260208601949094528484019290925260608401526001600160a01b03166080830152519081900360a00190f35b60006020819052908152604090208054600182015460028301546003840154600490940154929391929091906001600160a01b03168556fea164736f6c6343000606000a"; +const isSuperArgs = (xs) => xs.length > 1; +class ICheckpointManager__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(overrides) { + return super.getDeployTransaction(overrides || {}); + } + deploy(overrides) { + return super.deploy(overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.ICheckpointManager__factory = ICheckpointManager__factory; +ICheckpointManager__factory.bytecode = _bytecode; +ICheckpointManager__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IRootChainManager__factory.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IRootChainManager__factory.d.ts new file mode 100644 index 00000000..6b6aa914 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IRootChainManager__factory.d.ts @@ -0,0 +1,145 @@ +import { type ContractRunner } from "ethers"; +import type { IRootChainManager, IRootChainManagerInterface } from "../../../../../contracts/@maticnetwork/pos-portal/RootChainManager.sol/IRootChainManager"; +export declare class IRootChainManager__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "tokenType"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "predicateAddress"; + readonly type: "address"; + }]; + readonly name: "PredicateRegistered"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "rootToken"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "childToken"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "tokenType"; + readonly type: "bytes32"; + }]; + readonly name: "TokenMapped"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "rootToken"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "childToken"; + readonly type: "address"; + }]; + readonly name: "cleanMapToken"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "user"; + readonly type: "address"; + }]; + readonly name: "depositEtherFor"; + readonly outputs: readonly []; + readonly stateMutability: "payable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "user"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "rootToken"; + readonly type: "address"; + }, { + readonly internalType: "bytes"; + readonly name: "depositData"; + readonly type: "bytes"; + }]; + readonly name: "depositFor"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes"; + readonly name: "inputData"; + readonly type: "bytes"; + }]; + readonly name: "exit"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "rootToken"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "childToken"; + readonly type: "address"; + }, { + readonly internalType: "bytes32"; + readonly name: "tokenType"; + readonly type: "bytes32"; + }]; + readonly name: "mapToken"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "tokenType"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "predicateAddress"; + readonly type: "address"; + }]; + readonly name: "registerPredicate"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "rootToken"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "childToken"; + readonly type: "address"; + }, { + readonly internalType: "bytes32"; + readonly name: "tokenType"; + readonly type: "bytes32"; + }]; + readonly name: "remapToken"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): IRootChainManagerInterface; + static connect(address: string, runner?: ContractRunner | null): IRootChainManager; +} +//# sourceMappingURL=IRootChainManager__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IRootChainManager__factory.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IRootChainManager__factory.d.ts.map new file mode 100644 index 00000000..ceda83e3 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IRootChainManager__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IRootChainManager__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IRootChainManager__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,iBAAiB,EACjB,0BAA0B,EAC3B,MAAM,0FAA0F,CAAC;AAoLlG,qBAAa,0BAA0B;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,0BAA0B;IAGpD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,iBAAiB;CAGrB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IRootChainManager__factory.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IRootChainManager__factory.js new file mode 100644 index 00000000..f5d067a6 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IRootChainManager__factory.js @@ -0,0 +1,191 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IRootChainManager__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "tokenType", + type: "bytes32", + }, + { + indexed: true, + internalType: "address", + name: "predicateAddress", + type: "address", + }, + ], + name: "PredicateRegistered", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "rootToken", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "childToken", + type: "address", + }, + { + indexed: true, + internalType: "bytes32", + name: "tokenType", + type: "bytes32", + }, + ], + name: "TokenMapped", + type: "event", + }, + { + inputs: [ + { + internalType: "address", + name: "rootToken", + type: "address", + }, + { + internalType: "address", + name: "childToken", + type: "address", + }, + ], + name: "cleanMapToken", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "user", + type: "address", + }, + ], + name: "depositEtherFor", + outputs: [], + stateMutability: "payable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "user", + type: "address", + }, + { + internalType: "address", + name: "rootToken", + type: "address", + }, + { + internalType: "bytes", + name: "depositData", + type: "bytes", + }, + ], + name: "depositFor", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes", + name: "inputData", + type: "bytes", + }, + ], + name: "exit", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "rootToken", + type: "address", + }, + { + internalType: "address", + name: "childToken", + type: "address", + }, + { + internalType: "bytes32", + name: "tokenType", + type: "bytes32", + }, + ], + name: "mapToken", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "tokenType", + type: "bytes32", + }, + { + internalType: "address", + name: "predicateAddress", + type: "address", + }, + ], + name: "registerPredicate", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "rootToken", + type: "address", + }, + { + internalType: "address", + name: "childToken", + type: "address", + }, + { + internalType: "bytes32", + name: "tokenType", + type: "bytes32", + }, + ], + name: "remapToken", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +class IRootChainManager__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IRootChainManager__factory = IRootChainManager__factory; +IRootChainManager__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IStateSender__factory.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IStateSender__factory.d.ts new file mode 100644 index 00000000..d902772d --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IStateSender__factory.d.ts @@ -0,0 +1,22 @@ +import { type ContractRunner } from "ethers"; +import type { IStateSender, IStateSenderInterface } from "../../../../../contracts/@maticnetwork/pos-portal/RootChainManager.sol/IStateSender"; +export declare class IStateSender__factory { + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "receiver"; + readonly type: "address"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "syncState"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): IStateSenderInterface; + static connect(address: string, runner?: ContractRunner | null): IStateSender; +} +//# sourceMappingURL=IStateSender__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IStateSender__factory.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IStateSender__factory.d.ts.map new file mode 100644 index 00000000..d060d600 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IStateSender__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IStateSender__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IStateSender__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,YAAY,EACZ,qBAAqB,EACtB,MAAM,qFAAqF,CAAC;AAuB7F,qBAAa,qBAAqB;IAChC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,qBAAqB;IAG/C,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,YAAY;CAGhB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IStateSender__factory.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IStateSender__factory.js new file mode 100644 index 00000000..a101a569 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IStateSender__factory.js @@ -0,0 +1,34 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IStateSender__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "address", + name: "receiver", + type: "address", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "syncState", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +class IStateSender__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IStateSender__factory = IStateSender__factory; +IStateSender__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ITokenPredicate__factory.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ITokenPredicate__factory.d.ts new file mode 100644 index 00000000..cdc03f80 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ITokenPredicate__factory.d.ts @@ -0,0 +1,48 @@ +import { type ContractRunner } from "ethers"; +import type { ITokenPredicate, ITokenPredicateInterface } from "../../../../../contracts/@maticnetwork/pos-portal/RootChainManager.sol/ITokenPredicate"; +export declare class ITokenPredicate__factory { + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "sender"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "rootToken"; + readonly type: "address"; + }, { + readonly internalType: "bytes"; + readonly name: "logRLPList"; + readonly type: "bytes"; + }]; + readonly name: "exitTokens"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "depositor"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "depositReceiver"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "rootToken"; + readonly type: "address"; + }, { + readonly internalType: "bytes"; + readonly name: "depositData"; + readonly type: "bytes"; + }]; + readonly name: "lockTokens"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): ITokenPredicateInterface; + static connect(address: string, runner?: ContractRunner | null): ITokenPredicate; +} +//# sourceMappingURL=ITokenPredicate__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ITokenPredicate__factory.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ITokenPredicate__factory.d.ts.map new file mode 100644 index 00000000..f14794e5 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ITokenPredicate__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ITokenPredicate__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ITokenPredicate__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,eAAe,EACf,wBAAwB,EACzB,MAAM,wFAAwF,CAAC;AAwDhG,qBAAa,wBAAwB;IACnC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,wBAAwB;IAGlD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,eAAe;CAGnB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ITokenPredicate__factory.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ITokenPredicate__factory.js new file mode 100644 index 00000000..94196918 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ITokenPredicate__factory.js @@ -0,0 +1,67 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ITokenPredicate__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "address", + name: "sender", + type: "address", + }, + { + internalType: "address", + name: "rootToken", + type: "address", + }, + { + internalType: "bytes", + name: "logRLPList", + type: "bytes", + }, + ], + name: "exitTokens", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "depositor", + type: "address", + }, + { + internalType: "address", + name: "depositReceiver", + type: "address", + }, + { + internalType: "address", + name: "rootToken", + type: "address", + }, + { + internalType: "bytes", + name: "depositData", + type: "bytes", + }, + ], + name: "lockTokens", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +class ITokenPredicate__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.ITokenPredicate__factory = ITokenPredicate__factory; +ITokenPredicate__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction__factory.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction__factory.d.ts new file mode 100644 index 00000000..494ac837 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction__factory.d.ts @@ -0,0 +1,117 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../../../common"; +import type { NativeMetaTransaction, NativeMetaTransactionInterface } from "../../../../../contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction"; +declare type NativeMetaTransactionConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class NativeMetaTransaction__factory extends ContractFactory { + constructor(...args: NativeMetaTransactionConstructorParams); + getDeployTransaction(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): NativeMetaTransaction__factory; + static readonly bytecode = "0x60806040526000805460ff1916905534801561001a57600080fd5b506108278061002a6000396000f3fe60806040526004361061004a5760003560e01c80630c53c51c1461004f5780630f7e59701461018857806320379ee51461019d5780632d0335ab146101c45780633408e470146101f7575b600080fd5b610113600480360360a081101561006557600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561009057600080fd5b8201836020820111156100a257600080fd5b803590602001918460018302840111640100000000831117156100c457600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550508235935050506020810135906040013560ff1661020c565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561014d578181015183820152602001610135565b50505050905090810190601f16801561017a5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561019457600080fd5b5061011361050f565b3480156101a957600080fd5b506101b261052c565b60408051918252519081900360200190f35b3480156101d057600080fd5b506101b2600480360360208110156101e757600080fd5b50356001600160a01b0316610532565b34801561020357600080fd5b506101b261054d565b6060610216610767565b50604080516060810182526001600160a01b038816600081815260026020908152908490205483528201529081018690526102548782878787610551565b61028f5760405162461bcd60e51b81526004018080602001828103825260218152602001806107fa6021913960400191505060405180910390fd5b6001600160a01b0387166000908152600260205260409020546102b990600163ffffffff61062e16565b6001600160a01b03881660008181526002602090815260408083209490945583519283523383820181905260609484018581528b51958501959095528a517f5845892132946850460bff5a0083f71031bc5bf9aadcd40f1de79423eac9b10b958d9592948d94919260808501928601918190849084905b83811015610348578181015183820152602001610330565b50505050905090810190601f1680156103755780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a160006060306001600160a01b0316888a6040516020018083805190602001908083835b602083106103c65780518252601f1990920191602091820191016103a7565b6001836020036101000a038019825116818451168082178552505050505050905001826001600160a01b03166001600160a01b031660601b8152601401925050506040516020818303038152906040526040518082805190602001908083835b602083106104455780518252601f199092019160209182019101610426565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d80600081146104a7576040519150601f19603f3d011682016040523d82523d6000602084013e6104ac565b606091505b509150915081610503576040805162461bcd60e51b815260206004820152601c60248201527f46756e6374696f6e2063616c6c206e6f74207375636365737366756c00000000604482015290519081900360640190fd5b98975050505050505050565b604051806040016040528060018152602001603160f81b81525081565b60015490565b6001600160a01b031660009081526002602052604090205490565b4690565b60006001600160a01b0386166105985760405162461bcd60e51b81526004018080602001828103825260258152602001806107d56025913960400191505060405180910390fd5b60016105ab6105a68761068f565b61071b565b83868660405160008152602001604052604051808581526020018460ff1660ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa158015610605573d6000803e3d6000fd5b505050602060405103516001600160a01b0316866001600160a01b031614905095945050505050565b600082820183811015610688576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b600060405180608001604052806043815260200161079260439139805190602001208260000151836020015184604001518051906020012060405160200180858152602001848152602001836001600160a01b03166001600160a01b03168152602001828152602001945050505050604051602081830303815290604052805190602001209050919050565b600061072561052c565b82604051602001808061190160f01b81525060020183815260200182815260200192505050604051602081830303815290604052805190602001209050919050565b60405180606001604052806000815260200160006001600160a01b0316815260200160608152509056fe4d6574615472616e73616374696f6e2875696e74323536206e6f6e63652c616464726573732066726f6d2c62797465732066756e6374696f6e5369676e6174757265294e61746976654d6574615472616e73616374696f6e3a20494e56414c49445f5349474e45525369676e657220616e64207369676e617475726520646f206e6f74206d61746368a164736f6c6343000606000a"; + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "address"; + readonly name: "userAddress"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "address payable"; + readonly name: "relayerAddress"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "bytes"; + readonly name: "functionSignature"; + readonly type: "bytes"; + }]; + readonly name: "MetaTransactionExecuted"; + readonly type: "event"; + }, { + readonly inputs: readonly []; + readonly name: "ERC712_VERSION"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "userAddress"; + readonly type: "address"; + }, { + readonly internalType: "bytes"; + readonly name: "functionSignature"; + readonly type: "bytes"; + }, { + readonly internalType: "bytes32"; + readonly name: "sigR"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes32"; + readonly name: "sigS"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint8"; + readonly name: "sigV"; + readonly type: "uint8"; + }]; + readonly name: "executeMetaTransaction"; + readonly outputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "payable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "getChainId"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "pure"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "getDomainSeperator"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "user"; + readonly type: "address"; + }]; + readonly name: "getNonce"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "nonce"; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): NativeMetaTransactionInterface; + static connect(address: string, runner?: ContractRunner | null): NativeMetaTransaction; +} +export {}; +//# sourceMappingURL=NativeMetaTransaction__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction__factory.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction__factory.d.ts.map new file mode 100644 index 00000000..d165b821 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"NativeMetaTransaction__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,qBAAqB,EACrB,8BAA8B,EAC/B,MAAM,8FAA8F,CAAC;AAkItG,aAAK,sCAAsC,GACvC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,8BAA+B,SAAQ,eAAe;gBACrD,GAAG,IAAI,EAAE,sCAAsC;IAQlD,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CACd,MAAM,EAAE,cAAc,GAAG,IAAI,GAC5B,8BAA8B;IAIjC,MAAM,CAAC,QAAQ,CAAC,QAAQ,0qIAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,8BAA8B;IAGxD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,qBAAqB;CAOzB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction__factory.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction__factory.js new file mode 100644 index 00000000..6c436069 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction__factory.js @@ -0,0 +1,158 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.NativeMetaTransaction__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "userAddress", + type: "address", + }, + { + indexed: false, + internalType: "address payable", + name: "relayerAddress", + type: "address", + }, + { + indexed: false, + internalType: "bytes", + name: "functionSignature", + type: "bytes", + }, + ], + name: "MetaTransactionExecuted", + type: "event", + }, + { + inputs: [], + name: "ERC712_VERSION", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "userAddress", + type: "address", + }, + { + internalType: "bytes", + name: "functionSignature", + type: "bytes", + }, + { + internalType: "bytes32", + name: "sigR", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "sigS", + type: "bytes32", + }, + { + internalType: "uint8", + name: "sigV", + type: "uint8", + }, + ], + name: "executeMetaTransaction", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "payable", + type: "function", + }, + { + inputs: [], + name: "getChainId", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "pure", + type: "function", + }, + { + inputs: [], + name: "getDomainSeperator", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "user", + type: "address", + }, + ], + name: "getNonce", + outputs: [ + { + internalType: "uint256", + name: "nonce", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +const _bytecode = "0x60806040526000805460ff1916905534801561001a57600080fd5b506108278061002a6000396000f3fe60806040526004361061004a5760003560e01c80630c53c51c1461004f5780630f7e59701461018857806320379ee51461019d5780632d0335ab146101c45780633408e470146101f7575b600080fd5b610113600480360360a081101561006557600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561009057600080fd5b8201836020820111156100a257600080fd5b803590602001918460018302840111640100000000831117156100c457600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550508235935050506020810135906040013560ff1661020c565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561014d578181015183820152602001610135565b50505050905090810190601f16801561017a5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561019457600080fd5b5061011361050f565b3480156101a957600080fd5b506101b261052c565b60408051918252519081900360200190f35b3480156101d057600080fd5b506101b2600480360360208110156101e757600080fd5b50356001600160a01b0316610532565b34801561020357600080fd5b506101b261054d565b6060610216610767565b50604080516060810182526001600160a01b038816600081815260026020908152908490205483528201529081018690526102548782878787610551565b61028f5760405162461bcd60e51b81526004018080602001828103825260218152602001806107fa6021913960400191505060405180910390fd5b6001600160a01b0387166000908152600260205260409020546102b990600163ffffffff61062e16565b6001600160a01b03881660008181526002602090815260408083209490945583519283523383820181905260609484018581528b51958501959095528a517f5845892132946850460bff5a0083f71031bc5bf9aadcd40f1de79423eac9b10b958d9592948d94919260808501928601918190849084905b83811015610348578181015183820152602001610330565b50505050905090810190601f1680156103755780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a160006060306001600160a01b0316888a6040516020018083805190602001908083835b602083106103c65780518252601f1990920191602091820191016103a7565b6001836020036101000a038019825116818451168082178552505050505050905001826001600160a01b03166001600160a01b031660601b8152601401925050506040516020818303038152906040526040518082805190602001908083835b602083106104455780518252601f199092019160209182019101610426565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d80600081146104a7576040519150601f19603f3d011682016040523d82523d6000602084013e6104ac565b606091505b509150915081610503576040805162461bcd60e51b815260206004820152601c60248201527f46756e6374696f6e2063616c6c206e6f74207375636365737366756c00000000604482015290519081900360640190fd5b98975050505050505050565b604051806040016040528060018152602001603160f81b81525081565b60015490565b6001600160a01b031660009081526002602052604090205490565b4690565b60006001600160a01b0386166105985760405162461bcd60e51b81526004018080602001828103825260258152602001806107d56025913960400191505060405180910390fd5b60016105ab6105a68761068f565b61071b565b83868660405160008152602001604052604051808581526020018460ff1660ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa158015610605573d6000803e3d6000fd5b505050602060405103516001600160a01b0316866001600160a01b031614905095945050505050565b600082820183811015610688576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b600060405180608001604052806043815260200161079260439139805190602001208260000151836020015184604001518051906020012060405160200180858152602001848152602001836001600160a01b03166001600160a01b03168152602001828152602001945050505050604051602081830303815290604052805190602001209050919050565b600061072561052c565b82604051602001808061190160f01b81525060020183815260200182815260200192505050604051602081830303815290604052805190602001209050919050565b60405180606001604052806000815260200160006001600160a01b0316815260200160608152509056fe4d6574615472616e73616374696f6e2875696e74323536206e6f6e63652c616464726573732066726f6d2c62797465732066756e6374696f6e5369676e6174757265294e61746976654d6574615472616e73616374696f6e3a20494e56414c49445f5349474e45525369676e657220616e64207369676e617475726520646f206e6f74206d61746368a164736f6c6343000606000a"; +const isSuperArgs = (xs) => xs.length > 1; +class NativeMetaTransaction__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(overrides) { + return super.getDeployTransaction(overrides || {}); + } + deploy(overrides) { + return super.deploy(overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.NativeMetaTransaction__factory = NativeMetaTransaction__factory; +NativeMetaTransaction__factory.bytecode = _bytecode; +NativeMetaTransaction__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage__factory.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage__factory.d.ts new file mode 100644 index 00000000..67f7fdb9 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage__factory.d.ts @@ -0,0 +1,88 @@ +import { type ContractRunner } from "ethers"; +import type { RootChainManagerStorage, RootChainManagerStorageInterface } from "../../../../../contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage"; +export declare class RootChainManagerStorage__factory { + static readonly abi: readonly [{ + readonly inputs: readonly []; + readonly name: "childChainManagerAddress"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly name: "childToRootToken"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly name: "processedExits"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly name: "rootToChildToken"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly name: "tokenToType"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly name: "typeToPredicate"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): RootChainManagerStorageInterface; + static connect(address: string, runner?: ContractRunner | null): RootChainManagerStorage; +} +//# sourceMappingURL=RootChainManagerStorage__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage__factory.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage__factory.d.ts.map new file mode 100644 index 00000000..59a2ccf5 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"RootChainManagerStorage__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,uBAAuB,EACvB,gCAAgC,EACjC,MAAM,gGAAgG,CAAC;AAiHxG,qBAAa,gCAAgC;IAC3C,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,gCAAgC;IAG1D,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,uBAAuB;CAO3B"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage__factory.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage__factory.js new file mode 100644 index 00000000..2f8bb873 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage__factory.js @@ -0,0 +1,124 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.RootChainManagerStorage__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [], + name: "childChainManagerAddress", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + name: "childToRootToken", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + name: "processedExits", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + name: "rootToChildToken", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + name: "tokenToType", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + name: "typeToPredicate", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class RootChainManagerStorage__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.RootChainManagerStorage__factory = RootChainManagerStorage__factory; +RootChainManagerStorage__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager__factory.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager__factory.d.ts new file mode 100644 index 00000000..7d218304 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager__factory.d.ts @@ -0,0 +1,625 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../../../common"; +import type { RootChainManager, RootChainManagerInterface } from "../../../../../contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager"; +declare type RootChainManagerConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class RootChainManager__factory extends ContractFactory { + constructor(...args: RootChainManagerConstructorParams); + getDeployTransaction(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): RootChainManager__factory; + static readonly bytecode = "0x60806040526000805460ff1916905534801561001a57600080fd5b506143098061002a6000396000f3fe6080604052600436106102295760003560e01c8063886a69ba11610123578063cf1d21c0116100ab578063e2c49de11161006f578063e2c49de11461091d578063e3dec8fb14610932578063e43009a6146109c8578063e66f9603146109fb578063ea60c7c414610a2557610240565b8063cf1d21c014610844578063d233a3c714610859578063d547741f1461089c578063d81c8e52146108d5578063dc993a23146108ea57610240565b8063a217fddf116100f2578063a217fddf1461078a578063b4b4f63e1461079f578063bc08452b146107b4578063c4d66de8146107e7578063ca15c8731461081a57610240565b8063886a69ba146106c95780639010d07c146106de5780639173b1391461070e57806391d148541461075157610240565b80633138b6f1116101b1578063568b80b511610175578063568b80b5146105fb578063607f2d4214610610578063630fcbfb1461064e5780636cb136b0146106635780636e86b7701461069657610240565b80633138b6f1146104f55780633408e4701461050a57806336568abe1461051f5780633805550f146105585780634faa8a26146105d557610240565b80630f7e5970116101f85780630f7e59701461042357806320379ee514610438578063248a9ca31461045f5780632d0335ab146104895780632f2ff15d146104bc57610240565b806304967702146102455780630c3894bb146102765780630c53c51c146102b15780630c598220146103ea57610240565b366102405761023e610239610a58565b610a68565b005b600080fd5b34801561025157600080fd5b5061025a610b69565b604080516001600160a01b039092168252519081900360200190f35b34801561028257600080fd5b5061023e6004803603604081101561029957600080fd5b506001600160a01b0381358116916020013516610b78565b610375600480360360a08110156102c757600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156102f257600080fd5b82018360208201111561030457600080fd5b8035906020019184600183028401116401000000008311171561032657600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550508235935050506020810135906040013560ff16610cc9565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103af578181015183820152602001610397565b50505050905090810190601f1680156103dc5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156103f657600080fd5b5061023e6004803603604081101561040d57600080fd5b50803590602001356001600160a01b0316610fcc565b34801561042f57600080fd5b506103756110b9565b34801561044457600080fd5b5061044d6110d6565b60408051918252519081900360200190f35b34801561046b57600080fd5b5061044d6004803603602081101561048257600080fd5b50356110dc565b34801561049557600080fd5b5061044d600480360360208110156104ac57600080fd5b50356001600160a01b03166110f4565b3480156104c857600080fd5b5061023e600480360360408110156104df57600080fd5b50803590602001356001600160a01b031661110f565b34801561050157600080fd5b5061025a611176565b34801561051657600080fd5b5061044d611185565b34801561052b57600080fd5b5061023e6004803603604081101561054257600080fd5b50803590602001356001600160a01b0316611189565b34801561056457600080fd5b5061023e6004803603602081101561057b57600080fd5b81019060208101813564010000000081111561059657600080fd5b8201836020820111156105a857600080fd5b803590602001918460018302840111640100000000831117156105ca57600080fd5b5090925090506111ea565b61023e600480360360208110156105eb57600080fd5b50356001600160a01b03166116ec565b34801561060757600080fd5b5061044d6116f8565b34801561061c57600080fd5b5061063a6004803603602081101561063357600080fd5b503561171b565b604080519115158252519081900360200190f35b34801561065a57600080fd5b5061023e611730565b34801561066f57600080fd5b5061023e6004803603602081101561068657600080fd5b50356001600160a01b03166117d6565b3480156106a257600080fd5b5061025a600480360360208110156106b957600080fd5b50356001600160a01b031661186e565b3480156106d557600080fd5b5061044d611889565b3480156106ea57600080fd5b5061025a6004803603604081101561070157600080fd5b50803590602001356118aa565b34801561071a57600080fd5b5061023e6004803603606081101561073157600080fd5b506001600160a01b038135811691602081013590911690604001356118d1565b34801561075d57600080fd5b5061063a6004803603604081101561077457600080fd5b50803590602001356001600160a01b0316611a06565b34801561079657600080fd5b5061044d611a24565b3480156107ab57600080fd5b5061023e611a29565b3480156107c057600080fd5b5061023e600480360360208110156107d757600080fd5b50356001600160a01b0316611acf565b3480156107f357600080fd5b5061023e6004803603602081101561080a57600080fd5b50356001600160a01b0316611b67565b34801561082657600080fd5b5061044d6004803603602081101561083d57600080fd5b5035611c57565b34801561085057600080fd5b5061025a611c6e565b34801561086557600080fd5b5061023e6004803603606081101561087c57600080fd5b506001600160a01b03813581169160208101359091169060400135611c86565b3480156108a857600080fd5b5061023e600480360360408110156108bf57600080fd5b50803590602001356001600160a01b0316611de8565b3480156108e157600080fd5b5061044d611e41565b3480156108f657600080fd5b5061023e6004803603602081101561090d57600080fd5b50356001600160a01b0316611e60565b34801561092957600080fd5b5061025a611f3d565b34801561093e57600080fd5b5061023e6004803603606081101561095557600080fd5b6001600160a01b03823581169260208101359091169181019060608101604082013564010000000081111561098957600080fd5b82018360208201111561099b57600080fd5b803590602001918460018302840111640100000000831117156109bd57600080fd5b509092509050611f4c565b3480156109d457600080fd5b5061044d600480360360208110156109eb57600080fd5b50356001600160a01b0316611fe9565b348015610a0757600080fd5b5061025a60048036036020811015610a1e57600080fd5b5035611ffb565b348015610a3157600080fd5b5061025a60048036036020811015610a4857600080fd5b50356001600160a01b0316612016565b6000610a62612031565b90505b90565b604080513460208083019190915282518083039091018152908201909152610aa58273eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee8361208e565b7fa1829a9003092132f585b6ccdd167c19fe9774dbdea4260287e8a8e8ca8185d7546000908152600260205260408082205490516001600160a01b039091169034908381818185875af1925050503d8060008114610b1f576040519150601f19603f3d011682016040523d82523d6000602084013e610b24565b606091505b5050905080610b645760405162461bcd60e51b815260040180806020018281038252602781526020018061419d6027913960400191505060405180910390fd5b505050565b6009546001600160a01b031681565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020610ba981610ba4610a58565b611a06565b600a90610c495760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b820191906000526020600020905b815481529060010190602001808311610c1d57829003601f168201915b50509250505060405180910390fd5b506001600160a01b03808416600081815260036020908152604080832080546001600160a01b0319908116909155948716808452600483528184208054909616909555838352600590915280822082905551909291907f9e651a8866fbea043e911d816ec254b0e3c992c06fff32d605e72362d6023bd9908490a4505050565b6060610cd3613e2a565b50604080516060810182526001600160a01b0388166000818152600c602090815290849020548352820152908101869052610d118782878787612508565b610d4c5760405162461bcd60e51b81526004018080602001828103825260218152602001806141c46021913960400191505060405180910390fd5b6001600160a01b0387166000908152600c6020526040902054610d7690600163ffffffff6125e516565b6001600160a01b0388166000818152600c602090815260408083209490945583519283523383820181905260609484018581528b51958501959095528a517f5845892132946850460bff5a0083f71031bc5bf9aadcd40f1de79423eac9b10b958d9592948d94919260808501928601918190849084905b83811015610e05578181015183820152602001610ded565b50505050905090810190601f168015610e325780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a160006060306001600160a01b0316888a6040516020018083805190602001908083835b60208310610e835780518252601f199092019160209182019101610e64565b6001836020036101000a038019825116818451168082178552505050505050905001826001600160a01b03166001600160a01b031660601b8152601401925050506040516020818303038152906040526040518082805190602001908083835b60208310610f025780518252601f199092019160209182019101610ee3565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610f64576040519150601f19603f3d011682016040523d82523d6000602084013e610f69565b606091505b509150915081610fc0576040805162461bcd60e51b815260206004820152601c60248201527f46756e6374696f6e2063616c6c206e6f74207375636365737366756c00000000604482015290519081900360640190fd5b98975050505050505050565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020610ff881610ba4610a58565b600a9061105e5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5060008381526002602052604080822080546001600160a01b0319166001600160a01b0386169081179091559051909185917f8643692ae1c12ec91fa18e50b82ed93fa314f580999a236824db6de9ae0d839b9190a3505050565b604051806040016040528060018152602001603160f81b81525081565b600b5490565b6000818152600160205260409020600201545b919050565b6001600160a01b03166000908152600c602052604090205490565b60008281526001602052604090206002015461112d90610ba4610a58565b6111685760405162461bcd60e51b815260040180806020018281038252602f815260200180613f78602f913960400191505060405180910390fd5b611172828261263f565b5050565b6008546001600160a01b031690565b4690565b611191610a58565b6001600160a01b0316816001600160a01b0316146111e05760405162461bcd60e51b815260040180806020018281038252602f815260200180614286602f913960400191505060405180910390fd5b61117282826126ae565b606061123361122e84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061271d92505050565b612798565b905060006112548260028151811061124757fe5b602002602001015161291a565b6112796112748460088151811061126757fe5b6020026020010151612a62565b612b2c565b6112898460098151811061124757fe5b6040516020018084815260200183805190602001908083835b602083106112c15780518252601f1990920191602091820191016112a2565b51815160209384036101000a6000190180199092169116179052920193845250604080518085038152938201815283519382019390932060008181526006909252929020549194505060ff1615915061134d90505760405162461bcd60e51b81526004018080602001828103825260288152602001806142096028913960400191505060405180910390fd5b6000818152600660208190526040909120805460ff19166001179055825160609161138a9161122e9161138591879190811061126757fe5b61271d565b9050611394613e54565b6113b1826003815181106113a457fe5b6020026020010151612798565b6113c18560098151811061124757fe5b815181106113cb57fe5b6020026020010151905060006113fc6113e383612798565b6000815181106113ef57fe5b6020026020010151612c9f565b6001600160a01b0380821660009081526004602052604090205491925016806114565760405162461bcd60e51b81526004018080602001828103825260228152602001806140af6022913960400191505060405180910390fd5b6001600160a01b03808216600090815260056020908152604080832054835260029091529020548751911690611493908890600890811061124757fe5b63ffffffff1916156114d65760405162461bcd60e51b815260040180806020018281038252602581526020018061408a6025913960400191505060405180910390fd5b61151e6114e98860068151811061126757fe5b6114f98960088151811061126757fe5b6115098a60078151811061126757fe5b6115198b60058151811061124757fe5b612d2f565b61156f576040805162461bcd60e51b815260206004820152601f60248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f50524f4f4600604482015290519081900360640190fd5b6115dd6115828860028151811061124757fe5b6115928960038151811061124757fe5b6115a28a60048151811061124757fe5b60001b6115b58b60058151811061124757fe5b60001b6115c88c60008151811061124757fe5b6115d88d60018151811061126757fe5b612f76565b50806001600160a01b0316638274664f6115f5610a58565b846115ff886130bf565b6040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561167b578181015183820152602001611663565b50505050905090810190601f1680156116a85780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b1580156116c957600080fd5b505af11580156116dd573d6000803e3d6000fd5b50505050505050505050505050565b6116f581610a68565b50565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b01902081565b60066020526000908152604090205460ff1681565b600061173e81610ba4610a58565b600a906117a45760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506116f56040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b81525061312d565b60006117e481610ba4610a58565b600a9061184a5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5050600780546001600160a01b0319166001600160a01b0392909216919091179055565b6004602052600090815260409020546001600160a01b031681565b604080516826a0a82faa27a5a2a760b91b8152905190819003600901902081565b60008281526001602052604081206118c8908363ffffffff6131e916565b90505b92915050565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b0190206118fd81610ba4610a58565b600a906119635760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b03848116600090815260036020526040902054161580156119a457506001600160a01b0383811660009081526004602052604090205416155b6119f5576040805162461bcd60e51b815260206004820181905260248201527f526f6f74436861696e4d616e616765723a20414c52454144595f4d4150504544604482015290519081900360640190fd5b611a008484846131f5565b50505050565b60008281526001602052604081206118c8908363ffffffff61348416565b600081565b6000611a3781610ba4610a58565b600a90611a9d5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506116f56040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613499565b6000611add81610ba4610a58565b600a90611b435760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5050600880546001600160a01b0319166001600160a01b0392909216919091179055565b60005460ff1615611bb0576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b611be16040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613537565b611c126040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613499565b611c1d600082611168565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020611c479082611168565b506000805460ff19166001179055565b60008181526001602052604081206118cb90613589565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020611cb281610ba4610a58565b600a90611d185760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b0380851660009081526003602081815260408084205488861685526004835281852054861680865293909252909220549183169290911615611d8e576001600160a01b038116600090815260036020908152604080832080546001600160a01b031916905560059091528120555b6001600160a01b038281166000908152600460205260409020541615611dd5576001600160a01b038216600090815260046020526040902080546001600160a01b03191690555b611de08686866131f5565b505050505050565b600082815260016020526040902060020154611e0690610ba4610a58565b6111e05760405162461bcd60e51b81526004018080602001828103825260308152602001806140f96030913960400191505060405180910390fd5b604080516611115413d4d25560ca1b8152905190819003600701902081565b6000611e6e81610ba4610a58565b600a90611ed45760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b038216611f1a5760405162461bcd60e51b815260040180806020018281038252602d815260200180613fa7602d913960400191505060405180910390fd5b50600980546001600160a01b0319166001600160a01b0392909216919091179055565b6007546001600160a01b031690565b6001600160a01b03831673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee1415611fa85760405162461bcd60e51b81526004018080602001828103825260248152602001806141e56024913960400191505060405180910390fd5b611a00848484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061208e92505050565b60056020526000908152604090205481565b6002602052600090815260409020546001600160a01b031681565b6003602052600090815260409020546001600160a01b031681565b6000333014156120895760606000368080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505050503601516001600160a01b03169150610a659050565b503390565b6001600160a01b03808316600090815260056020908152604080832054600390925290912054909116158015906120c457508015155b6120ff5760405162461bcd60e51b81526004018080602001828103825260228152602001806140af6022913960400191505060405180910390fd5b6000818152600260205260409020546001600160a01b0316806121535760405162461bcd60e51b81526004018080602001828103825260248152602001806140176024913960400191505060405180910390fd5b6001600160a01b0385166121ae576040805162461bcd60e51b815260206004820152601e60248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f555345520000604482015290519081900360640190fd5b806001600160a01b031663e375b64e6121c5610a58565b8787876040518563ffffffff1660e01b815260040180856001600160a01b03166001600160a01b03168152602001846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561225c578181015183820152602001612244565b50505050905090810190601f1680156122895780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b1580156122ab57600080fd5b505af11580156122bf573d6000803e3d6000fd5b50505050606085858560405160200180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015612338578181015183820152602001612320565b50505050905090810190601f1680156123655780820380516001836020036101000a031916815260200191505b5060408051808303601f19018152828252600780546009546611115413d4d25560ca1b865284519586900390920185206020808701828152878701968752855160608901528551959d506001600160a01b039384169c506316f198319b5092909316985096508a955093608001919085019080838360005b838110156123f55781810151838201526020016123dd565b50505050905090810190601f1680156124225780820380516001836020036101000a031916815260200191505b5093505050506040516020818303038152906040526040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561249b578181015183820152602001612483565b50505050905090810190601f1680156124c85780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b1580156124e857600080fd5b505af11580156124fc573d6000803e3d6000fd5b50505050505050505050565b60006001600160a01b03861661254f5760405162461bcd60e51b81526004018080602001828103825260258152602001806141296025913960400191505060405180910390fd5b600161256261255d87613594565b613620565b83868660405160008152602001604052604051808581526020018460ff1660ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa1580156125bc573d6000803e3d6000fd5b505050602060405103516001600160a01b0316866001600160a01b031614905095945050505050565b6000828201838110156118c8576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600082815260016020526040902061265d908263ffffffff61366c16565b156111725761266a610a58565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b60008281526001602052604090206126cc908263ffffffff61368116565b15611172576126d9610a58565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612725613e54565b600082511161277b576040805162461bcd60e51b815260206004820152601f60248201527f524c505265616465723a20494e56414c49445f42595445535f4c454e47544800604482015290519081900360640190fd5b506040805180820190915281518152602082810190820152919050565b60606127a382613696565b6127f4576040805162461bcd60e51b815260206004820152601860248201527f524c505265616465723a204954454d5f4e4f545f4c4953540000000000000000604482015290519081900360640190fd5b60006127ff836136c2565b905060608167ffffffffffffffff8111801561281a57600080fd5b5060405190808252806020026020018201604052801561285457816020015b612841613e54565b8152602001906001900390816128395790505b5090506000612866856020015161374e565b855190915081146128a85760405162461bcd60e51b81526004018080602001828103825260278152602001806142316027913960400191505060405180910390fd5b60006128b786602001516137e2565b60208701510190506000805b8581101561290e576128d48361374e565b91506040518060400160405280838152602001848152508582815181106128f757fe5b6020908102919091010152918101916001016128c3565b50929695505050505050565b600061292582613696565b15612977576040805162461bcd60e51b815260206004820181905260248201527f524c505265616465723a204445434f44494e475f4c4953545f41535f55494e54604482015290519081900360640190fd5b8151602110156129ce576040805162461bcd60e51b815260206004820152601e60248201527f524c505265616465723a20494e56414c49445f55494e545f4c454e4754480000604482015290519081900360640190fd5b60006129dd836020015161374e565b83519091508114612a1f5760405162461bcd60e51b81526004018080602001828103825260278152602001806142b56027913960400191505060405180910390fd5b6000612a2e84602001516137e2565b84516020808701518301805193945091849003929190831015612a5857826020036101000a820491505b5095945050505050565b60606000612a73836020015161374e565b83519091508114612ab55760405162461bcd60e51b81526004018080602001828103825260288152602001806140d16028913960400191505060405180910390fd5b6000612ac484602001516137e2565b845190915081900360608167ffffffffffffffff81118015612ae557600080fd5b506040519080825280601f01601f191660200182016040528015612b10576020820181803683370190505b5090506000816020019050612a58848860200151018285613845565b604080516020810190915260008152815160609190156118cb57600080612b54600086613890565b60f81c90506001811480612b6b57508060ff166003145b15612bfa57600185516002020367ffffffffffffffff81118015612b8e57600080fd5b506040519080825280601f01601f191660200182016040528015612bb9576020820181803683370190505b5092506000612bc9600187613890565b90508084600081518110612bd957fe5b60200101906001600160f81b031916908160001a9053506001925050612c4b565b600285516002020367ffffffffffffffff81118015612c1857600080fd5b506040519080825280601f01601f191660200182016040528015612c43576020820181803683370190505b509250600091505b60ff82165b8351811015612c9657612c6b8360ff16820360020187613890565b848281518110612c7757fe5b60200101906001600160f81b031916908160001a905350600101612c50565b50505092915050565b6000612caa82613696565b15612ce65760405162461bcd60e51b815260040180806020018281038252602381526020018061417a6023913960400191505060405180910390fd5b8151601514612d265760405162461bcd60e51b81526004018080602001828103825260218152602001806142dc6021913960400191505060405180910390fd5b6118cb8261291a565b6000612d39613e54565b612d428461271d565b90506060612d4f82612798565b905060608085600082612d618b612b2c565b9050805160001415612d7d576000975050505050505050612f6e565b60005b8651811015612f65578151831115612da357600098505050505050505050612f6e565b612dbf878281518110612db257fe5b60200260200101516130bf565b955085805190602001208414612de057600098505050505050505050612f6e565b612def8782815181106113a457fe5b9450845160111415612eac578151831415612e4b578c80519060200120612e1c8660108151811061126757fe5b805190602001201415612e3a57600198505050505050505050612f6e565b600098505050505050505050612f6e565b6000828481518110612e5957fe5b016020015160f81c90506010811115612e7e5760009950505050505050505050612f6e565b612e9d868260ff1681518110612e9057fe5b60200260200101516138ed565b94505060019290920191612f5d565b845160021415612e3a576000612ed2612ecb8760008151811061126757fe5b848661398c565b905082518185011415612f28578d80519060200120612ef78760018151811061126757fe5b805190602001201415612f165760019950505050505050505050612f6e565b60009950505050505050505050612f6e565b80612f3f5760009950505050505050505050612f6e565b8084019350612f5486600181518110612e9057fe5b9450612f5d9050565b600101612d80565b50505050505050505b949350505050565b600854604080516320a9cea560e11b81526004810185905290516000928392839283926001600160a01b0316916341539d4a9160248083019260a0929190829003018186803b158015612fc857600080fd5b505afa158015612fdc573d6000803e3d6000fd5b505050506040513d60a0811015612ff257600080fd5b5080516020820151606090920151909450909250905061306161301b8b8463ffffffff613a6b16565b6040805160208082018f90528183018e9052606082018d905260808083018d90528351808403909101815260a0909201909252805191012090858863ffffffff613aad16565b6130b2576040805162461bcd60e51b815260206004820181905260248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f484541444552604482015290519081900360640190fd5b9998505050505050505050565b606080826000015167ffffffffffffffff811180156130dd57600080fd5b506040519080825280601f01601f191660200182016040528015613108576020820181803683370190505b50905060008160200190506131268460200151828660000151613845565b5092915050565b6040518060800160405280604f815260200161403b604f913980516020918201208251838301206040805180820190915260018152603160f81b930192909252907fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc630613198611185565b604080516020808201979097528082019590955260608501939093526001600160a01b03909116608084015260a0808401919091528151808403909101815260c090920190528051910120600b5550565b60006118c88383613c03565b6000818152600260205260409020546001600160a01b03166132485760405162461bcd60e51b815260040180806020018281038252602a815260200180613f07602a913960400191505060405180910390fd5b6001600160a01b03808416600081815260036020908152604080832080549588166001600160a01b031996871681179091558084526004835281842080549096168517909555838352600590915280822085905551849392917f9e651a8866fbea043e911d816ec254b0e3c992c06fff32d605e72362d6023bd991a4604080516001600160a01b0380861660208084019190915281861683850152606083810186905284518085038201815260808086018088526007546009546826a0a82faa27a5a2a760b91b9092528851978890036089018820888701818152898b019a8b528551968a019690965284519499918816986316f1983198939093169690958a9590949293909201919085019080838360005b8381101561337357818101518382015260200161335b565b50505050905090810190601f1680156133a05780820380516001836020036101000a031916815260200191505b5093505050506040516020818303038152906040526040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015613419578181015183820152602001613401565b50505050905090810190601f1680156134465780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b15801561346657600080fd5b505af115801561347a573d6000803e3d6000fd5b5050505050505050565b60006118c8836001600160a01b038416613c67565b806040516020018082805190602001908083835b602083106134cc5780518252601f1990920191602091820191016134ad565b51815160209384036101000a60001901801990921691161790527f3a20494e53554646494349454e545f5045524d495353494f4e530000000000009190930190815260408051808303600519018152601a909201905280516111729550600a94509201919050613e6e565b60005460ff1615613580576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b611c478161312d565b60006118cb82613c7f565b6000604051806080016040528060438152602001613fd460439139805190602001208260000151836020015184604001518051906020012060405160200180858152602001848152602001836001600160a01b03166001600160a01b03168152602001828152602001945050505050604051602081830303815290604052805190602001209050919050565b600061362a6110d6565b82604051602001808061190160f01b81525060020183815260200182815260200192505050604051602081830303815290604052805190602001209050919050565b60006118c8836001600160a01b038416613c83565b60006118c8836001600160a01b038416613ccd565b6020810151805160009190821a9060c08210156136b8576000925050506110ef565b5060019392505050565b6000806000905060006136d884602001516137e2565b602085015185519181019250015b80821015613745576136f78261374e565b820191508082111561373a5760405162461bcd60e51b815260040180806020018281038252602c81526020018061414e602c913960400191505060405180910390fd5b6001909201916136e6565b50909392505050565b80516000908190811a60808110156137695760019150613126565b60b881101561377e57607e1981019150613126565b60c08110156137ab5760b78103600185019450806020036101000a85510460018201810193505050613126565b60f88110156137c05760be1981019150613126565b60019390930151602084900360f7016101000a900490920160f5190192915050565b8051600090811a60808110156137fc5760009150506110ef565b60b8811080613817575060c08110801590613817575060f881105b156138265760019150506110ef565b60c081101561383a5760b5190190506110ef565b60f5190190506110ef565b8061384f57610b64565b5b6020811061386f578251825260209283019290910190601f1901613850565b915181516020939093036101000a6000190180199091169216919091179052565b600060028306156138c15760108260028504815181106138ac57fe5b016020015160f81c816138bb57fe5b066138e3565b60108260028504815181106138d257fe5b016020015160f81c816138e157fe5b045b60f81b9392505050565b6000806138fd836020015161374e565b8351909150811461393f5760405162461bcd60e51b815260040180806020018281038252602e815260200180614258602e913960400191505060405180910390fd5b825160211461397f5760405162461bcd60e51b8152600401808060200182810382526025815260200180613f536025913960400191505060405180910390fd5b5050602001516001015190565b600080606061399a86612b2c565b90506060815167ffffffffffffffff811180156139b657600080fd5b506040519080825280601f01601f1916602001820160405280156139e1576020820181803683370190505b509050845b82518601811015613a3b5760008782815181106139ff57fe5b602001015160f81c60f81b9050808388840381518110613a1b57fe5b60200101906001600160f81b031916908160001a905350506001016139e6565b50808051906020012082805190602001201415613a5b5781519250613a60565b600092505b509095945050505050565b60006118c883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250613d93565b60006020825181613aba57fe5b0615613b04576040805162461bcd60e51b8152602060048201526014602482015273092dcecc2d8d2c840e0e4dedecc40d8cadccee8d60631b604482015290519081900360640190fd5b60006020835181613b1157fe5b0490508060020a8510613b63576040805162461bcd60e51b81526020600482015260156024820152744c65616620696e64657820697320746f6f2062696760581b604482015290519081900360640190fd5b60008660205b85518111613bf55785810151925060028806613bb55781836040516020018083815260200182815260200192505050604051602081830303815290604052805190602001209150613be7565b828260405160200180838152602001828152602001925050506040516020818303038152906040528051906020012091505b600288049750602001613b69565b509094149695505050505050565b81546000908210613c455760405162461bcd60e51b8152600401808060200182810382526022815260200180613f316022913960400191505060405180910390fd5b826000018281548110613c5457fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000613c8f8383613c67565b613cc5575081546001818101845560008481526020808220909301849055845484825282860190935260409020919091556118cb565b5060006118cb565b60008181526001830160205260408120548015613d895783546000198083019190810190600090879083908110613d0057fe5b9060005260206000200154905080876000018481548110613d1d57fe5b600091825260208083209091019290925582815260018981019092526040902090840190558654879080613d4d57fe5b600190038181906000526020600020016000905590558660010160008781526020019081526020016000206000905560019450505050506118cb565b60009150506118cb565b60008184841115613e225760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015613de7578181015183820152602001613dcf565b50505050905090810190601f168015613e145780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60405180606001604052806000815260200160006001600160a01b03168152602001606081525090565b604051806040016040528060008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10613eaf57805160ff1916838001178555613edc565b82800160010185558215613edc579182015b82811115613edc578251825591602001919060010190613ec1565b50613ee8929150613eec565b5090565b610a6591905b80821115613ee85760008155600101613ef256fe526f6f74436861696e4d616e616765723a20544f4b454e5f545950455f4e4f545f535550504f52544544456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473524c505265616465723a20494e56414c49445f55494e545f5354524943545f4c454e475448416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e74526f6f74436861696e4d616e616765723a20494e56414c49445f4348494c445f434841494e5f414444524553534d6574615472616e73616374696f6e2875696e74323536206e6f6e63652c616464726573732066726f6d2c62797465732066756e6374696f6e5369676e617475726529526f6f74436861696e4d616e616765723a20494e56414c49445f544f4b454e5f54595045454950373132446f6d61696e28737472696e67206e616d652c737472696e672076657273696f6e2c6164647265737320766572696679696e67436f6e74726163742c627974657333322073616c7429526f6f74436861696e4d616e616765723a20494e56414c49445f4252414e43485f4d41534b526f6f74436861696e4d616e616765723a20544f4b454e5f4e4f545f4d4150504544524c505265616465723a2042595445535f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b654e61746976654d6574615472616e73616374696f6e3a20494e56414c49445f5349474e4552524c505265616465723a204e554d5f4954454d535f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a204445434f44494e475f4c4953545f41535f41444452455353526f6f74436861696e4d616e616765723a2045544845525f5452414e534645525f4641494c45445369676e657220616e64207369676e617475726520646f206e6f74206d61746368526f6f74436861696e4d616e616765723a20494e56414c49445f524f4f545f544f4b454e526f6f74436861696e4d616e616765723a20455849545f414c52454144595f50524f434553534544524c505265616465723a204c4953545f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a2055494e545f5354524943545f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66524c505265616465723a2055494e545f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a20494e56414c49445f414444524553535f4c454e475448a164736f6c6343000606000a"; + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "address"; + readonly name: "userAddress"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "address payable"; + readonly name: "relayerAddress"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "bytes"; + readonly name: "functionSignature"; + readonly type: "bytes"; + }]; + readonly name: "MetaTransactionExecuted"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "tokenType"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "predicateAddress"; + readonly type: "address"; + }]; + readonly name: "PredicateRegistered"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "previousAdminRole"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "newAdminRole"; + readonly type: "bytes32"; + }]; + readonly name: "RoleAdminChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "sender"; + readonly type: "address"; + }]; + readonly name: "RoleGranted"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "sender"; + readonly type: "address"; + }]; + readonly name: "RoleRevoked"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "rootToken"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "childToken"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "tokenType"; + readonly type: "bytes32"; + }]; + readonly name: "TokenMapped"; + readonly type: "event"; + }, { + readonly inputs: readonly []; + readonly name: "DEFAULT_ADMIN_ROLE"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "DEPOSIT"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "ERC712_VERSION"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "ETHER_ADDRESS"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "MAPPER_ROLE"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "MAP_TOKEN"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "checkpointManagerAddress"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "childChainManagerAddress"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly name: "childToRootToken"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "rootToken"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "childToken"; + readonly type: "address"; + }]; + readonly name: "cleanMapToken"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "user"; + readonly type: "address"; + }]; + readonly name: "depositEtherFor"; + readonly outputs: readonly []; + readonly stateMutability: "payable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "user"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "rootToken"; + readonly type: "address"; + }, { + readonly internalType: "bytes"; + readonly name: "depositData"; + readonly type: "bytes"; + }]; + readonly name: "depositFor"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "userAddress"; + readonly type: "address"; + }, { + readonly internalType: "bytes"; + readonly name: "functionSignature"; + readonly type: "bytes"; + }, { + readonly internalType: "bytes32"; + readonly name: "sigR"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes32"; + readonly name: "sigS"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint8"; + readonly name: "sigV"; + readonly type: "uint8"; + }]; + readonly name: "executeMetaTransaction"; + readonly outputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "payable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes"; + readonly name: "inputData"; + readonly type: "bytes"; + }]; + readonly name: "exit"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "getChainId"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "pure"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "getDomainSeperator"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "user"; + readonly type: "address"; + }]; + readonly name: "getNonce"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "nonce"; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }]; + readonly name: "getRoleAdmin"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "index"; + readonly type: "uint256"; + }]; + readonly name: "getRoleMember"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }]; + readonly name: "getRoleMemberCount"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "grantRole"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "hasRole"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "_owner"; + readonly type: "address"; + }]; + readonly name: "initialize"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "initializeEIP712"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "rootToken"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "childToken"; + readonly type: "address"; + }, { + readonly internalType: "bytes32"; + readonly name: "tokenType"; + readonly type: "bytes32"; + }]; + readonly name: "mapToken"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly name: "processedExits"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "tokenType"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "predicateAddress"; + readonly type: "address"; + }]; + readonly name: "registerPredicate"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "rootToken"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "childToken"; + readonly type: "address"; + }, { + readonly internalType: "bytes32"; + readonly name: "tokenType"; + readonly type: "bytes32"; + }]; + readonly name: "remapToken"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "renounceRole"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "revokeRole"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly name: "rootToChildToken"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "newCheckpointManager"; + readonly type: "address"; + }]; + readonly name: "setCheckpointManager"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "newChildChainManager"; + readonly type: "address"; + }]; + readonly name: "setChildChainManagerAddress"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "newStateSender"; + readonly type: "address"; + }]; + readonly name: "setStateSender"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "setupContractId"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "stateSenderAddress"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly name: "tokenToType"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly name: "typeToPredicate"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly stateMutability: "payable"; + readonly type: "receive"; + }]; + static createInterface(): RootChainManagerInterface; + static connect(address: string, runner?: ContractRunner | null): RootChainManager; +} +export {}; +//# sourceMappingURL=RootChainManager__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager__factory.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager__factory.d.ts.map new file mode 100644 index 00000000..3aecf449 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"RootChainManager__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,gBAAgB,EAChB,yBAAyB,EAC1B,MAAM,yFAAyF,CAAC;AAqxBjG,aAAK,iCAAiC,GAClC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,yBAA0B,SAAQ,eAAe;gBAChD,GAAG,IAAI,EAAE,iCAAiC;IAQ7C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,yBAAyB;IAI1E,MAAM,CAAC,QAAQ,CAAC,QAAQ,8mjCAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,yBAAyB;IAGnD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,gBAAgB;CAGpB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager__factory.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager__factory.js new file mode 100644 index 00000000..731f8549 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager__factory.js @@ -0,0 +1,817 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.RootChainManager__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "userAddress", + type: "address", + }, + { + indexed: false, + internalType: "address payable", + name: "relayerAddress", + type: "address", + }, + { + indexed: false, + internalType: "bytes", + name: "functionSignature", + type: "bytes", + }, + ], + name: "MetaTransactionExecuted", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "tokenType", + type: "bytes32", + }, + { + indexed: true, + internalType: "address", + name: "predicateAddress", + type: "address", + }, + ], + name: "PredicateRegistered", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + indexed: true, + internalType: "bytes32", + name: "previousAdminRole", + type: "bytes32", + }, + { + indexed: true, + internalType: "bytes32", + name: "newAdminRole", + type: "bytes32", + }, + ], + name: "RoleAdminChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "RoleGranted", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "RoleRevoked", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "rootToken", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "childToken", + type: "address", + }, + { + indexed: true, + internalType: "bytes32", + name: "tokenType", + type: "bytes32", + }, + ], + name: "TokenMapped", + type: "event", + }, + { + inputs: [], + name: "DEFAULT_ADMIN_ROLE", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "DEPOSIT", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "ERC712_VERSION", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "ETHER_ADDRESS", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "MAPPER_ROLE", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "MAP_TOKEN", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "checkpointManagerAddress", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "childChainManagerAddress", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + name: "childToRootToken", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "rootToken", + type: "address", + }, + { + internalType: "address", + name: "childToken", + type: "address", + }, + ], + name: "cleanMapToken", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "user", + type: "address", + }, + ], + name: "depositEtherFor", + outputs: [], + stateMutability: "payable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "user", + type: "address", + }, + { + internalType: "address", + name: "rootToken", + type: "address", + }, + { + internalType: "bytes", + name: "depositData", + type: "bytes", + }, + ], + name: "depositFor", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "userAddress", + type: "address", + }, + { + internalType: "bytes", + name: "functionSignature", + type: "bytes", + }, + { + internalType: "bytes32", + name: "sigR", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "sigS", + type: "bytes32", + }, + { + internalType: "uint8", + name: "sigV", + type: "uint8", + }, + ], + name: "executeMetaTransaction", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "payable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes", + name: "inputData", + type: "bytes", + }, + ], + name: "exit", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "getChainId", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "pure", + type: "function", + }, + { + inputs: [], + name: "getDomainSeperator", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "user", + type: "address", + }, + ], + name: "getNonce", + outputs: [ + { + internalType: "uint256", + name: "nonce", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + ], + name: "getRoleAdmin", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + 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: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "grantRole", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "hasRole", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + ], + name: "initialize", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "initializeEIP712", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "rootToken", + type: "address", + }, + { + internalType: "address", + name: "childToken", + type: "address", + }, + { + internalType: "bytes32", + name: "tokenType", + type: "bytes32", + }, + ], + name: "mapToken", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + name: "processedExits", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "tokenType", + type: "bytes32", + }, + { + internalType: "address", + name: "predicateAddress", + type: "address", + }, + ], + name: "registerPredicate", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "rootToken", + type: "address", + }, + { + internalType: "address", + name: "childToken", + type: "address", + }, + { + internalType: "bytes32", + name: "tokenType", + type: "bytes32", + }, + ], + name: "remapToken", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "renounceRole", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "revokeRole", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + name: "rootToChildToken", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "newCheckpointManager", + type: "address", + }, + ], + name: "setCheckpointManager", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "newChildChainManager", + type: "address", + }, + ], + name: "setChildChainManagerAddress", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "newStateSender", + type: "address", + }, + ], + name: "setStateSender", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "setupContractId", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "stateSenderAddress", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + name: "tokenToType", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + name: "typeToPredicate", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + stateMutability: "payable", + type: "receive", + }, +]; +const _bytecode = "0x60806040526000805460ff1916905534801561001a57600080fd5b506143098061002a6000396000f3fe6080604052600436106102295760003560e01c8063886a69ba11610123578063cf1d21c0116100ab578063e2c49de11161006f578063e2c49de11461091d578063e3dec8fb14610932578063e43009a6146109c8578063e66f9603146109fb578063ea60c7c414610a2557610240565b8063cf1d21c014610844578063d233a3c714610859578063d547741f1461089c578063d81c8e52146108d5578063dc993a23146108ea57610240565b8063a217fddf116100f2578063a217fddf1461078a578063b4b4f63e1461079f578063bc08452b146107b4578063c4d66de8146107e7578063ca15c8731461081a57610240565b8063886a69ba146106c95780639010d07c146106de5780639173b1391461070e57806391d148541461075157610240565b80633138b6f1116101b1578063568b80b511610175578063568b80b5146105fb578063607f2d4214610610578063630fcbfb1461064e5780636cb136b0146106635780636e86b7701461069657610240565b80633138b6f1146104f55780633408e4701461050a57806336568abe1461051f5780633805550f146105585780634faa8a26146105d557610240565b80630f7e5970116101f85780630f7e59701461042357806320379ee514610438578063248a9ca31461045f5780632d0335ab146104895780632f2ff15d146104bc57610240565b806304967702146102455780630c3894bb146102765780630c53c51c146102b15780630c598220146103ea57610240565b366102405761023e610239610a58565b610a68565b005b600080fd5b34801561025157600080fd5b5061025a610b69565b604080516001600160a01b039092168252519081900360200190f35b34801561028257600080fd5b5061023e6004803603604081101561029957600080fd5b506001600160a01b0381358116916020013516610b78565b610375600480360360a08110156102c757600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156102f257600080fd5b82018360208201111561030457600080fd5b8035906020019184600183028401116401000000008311171561032657600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550508235935050506020810135906040013560ff16610cc9565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103af578181015183820152602001610397565b50505050905090810190601f1680156103dc5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156103f657600080fd5b5061023e6004803603604081101561040d57600080fd5b50803590602001356001600160a01b0316610fcc565b34801561042f57600080fd5b506103756110b9565b34801561044457600080fd5b5061044d6110d6565b60408051918252519081900360200190f35b34801561046b57600080fd5b5061044d6004803603602081101561048257600080fd5b50356110dc565b34801561049557600080fd5b5061044d600480360360208110156104ac57600080fd5b50356001600160a01b03166110f4565b3480156104c857600080fd5b5061023e600480360360408110156104df57600080fd5b50803590602001356001600160a01b031661110f565b34801561050157600080fd5b5061025a611176565b34801561051657600080fd5b5061044d611185565b34801561052b57600080fd5b5061023e6004803603604081101561054257600080fd5b50803590602001356001600160a01b0316611189565b34801561056457600080fd5b5061023e6004803603602081101561057b57600080fd5b81019060208101813564010000000081111561059657600080fd5b8201836020820111156105a857600080fd5b803590602001918460018302840111640100000000831117156105ca57600080fd5b5090925090506111ea565b61023e600480360360208110156105eb57600080fd5b50356001600160a01b03166116ec565b34801561060757600080fd5b5061044d6116f8565b34801561061c57600080fd5b5061063a6004803603602081101561063357600080fd5b503561171b565b604080519115158252519081900360200190f35b34801561065a57600080fd5b5061023e611730565b34801561066f57600080fd5b5061023e6004803603602081101561068657600080fd5b50356001600160a01b03166117d6565b3480156106a257600080fd5b5061025a600480360360208110156106b957600080fd5b50356001600160a01b031661186e565b3480156106d557600080fd5b5061044d611889565b3480156106ea57600080fd5b5061025a6004803603604081101561070157600080fd5b50803590602001356118aa565b34801561071a57600080fd5b5061023e6004803603606081101561073157600080fd5b506001600160a01b038135811691602081013590911690604001356118d1565b34801561075d57600080fd5b5061063a6004803603604081101561077457600080fd5b50803590602001356001600160a01b0316611a06565b34801561079657600080fd5b5061044d611a24565b3480156107ab57600080fd5b5061023e611a29565b3480156107c057600080fd5b5061023e600480360360208110156107d757600080fd5b50356001600160a01b0316611acf565b3480156107f357600080fd5b5061023e6004803603602081101561080a57600080fd5b50356001600160a01b0316611b67565b34801561082657600080fd5b5061044d6004803603602081101561083d57600080fd5b5035611c57565b34801561085057600080fd5b5061025a611c6e565b34801561086557600080fd5b5061023e6004803603606081101561087c57600080fd5b506001600160a01b03813581169160208101359091169060400135611c86565b3480156108a857600080fd5b5061023e600480360360408110156108bf57600080fd5b50803590602001356001600160a01b0316611de8565b3480156108e157600080fd5b5061044d611e41565b3480156108f657600080fd5b5061023e6004803603602081101561090d57600080fd5b50356001600160a01b0316611e60565b34801561092957600080fd5b5061025a611f3d565b34801561093e57600080fd5b5061023e6004803603606081101561095557600080fd5b6001600160a01b03823581169260208101359091169181019060608101604082013564010000000081111561098957600080fd5b82018360208201111561099b57600080fd5b803590602001918460018302840111640100000000831117156109bd57600080fd5b509092509050611f4c565b3480156109d457600080fd5b5061044d600480360360208110156109eb57600080fd5b50356001600160a01b0316611fe9565b348015610a0757600080fd5b5061025a60048036036020811015610a1e57600080fd5b5035611ffb565b348015610a3157600080fd5b5061025a60048036036020811015610a4857600080fd5b50356001600160a01b0316612016565b6000610a62612031565b90505b90565b604080513460208083019190915282518083039091018152908201909152610aa58273eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee8361208e565b7fa1829a9003092132f585b6ccdd167c19fe9774dbdea4260287e8a8e8ca8185d7546000908152600260205260408082205490516001600160a01b039091169034908381818185875af1925050503d8060008114610b1f576040519150601f19603f3d011682016040523d82523d6000602084013e610b24565b606091505b5050905080610b645760405162461bcd60e51b815260040180806020018281038252602781526020018061419d6027913960400191505060405180910390fd5b505050565b6009546001600160a01b031681565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020610ba981610ba4610a58565b611a06565b600a90610c495760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b820191906000526020600020905b815481529060010190602001808311610c1d57829003601f168201915b50509250505060405180910390fd5b506001600160a01b03808416600081815260036020908152604080832080546001600160a01b0319908116909155948716808452600483528184208054909616909555838352600590915280822082905551909291907f9e651a8866fbea043e911d816ec254b0e3c992c06fff32d605e72362d6023bd9908490a4505050565b6060610cd3613e2a565b50604080516060810182526001600160a01b0388166000818152600c602090815290849020548352820152908101869052610d118782878787612508565b610d4c5760405162461bcd60e51b81526004018080602001828103825260218152602001806141c46021913960400191505060405180910390fd5b6001600160a01b0387166000908152600c6020526040902054610d7690600163ffffffff6125e516565b6001600160a01b0388166000818152600c602090815260408083209490945583519283523383820181905260609484018581528b51958501959095528a517f5845892132946850460bff5a0083f71031bc5bf9aadcd40f1de79423eac9b10b958d9592948d94919260808501928601918190849084905b83811015610e05578181015183820152602001610ded565b50505050905090810190601f168015610e325780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a160006060306001600160a01b0316888a6040516020018083805190602001908083835b60208310610e835780518252601f199092019160209182019101610e64565b6001836020036101000a038019825116818451168082178552505050505050905001826001600160a01b03166001600160a01b031660601b8152601401925050506040516020818303038152906040526040518082805190602001908083835b60208310610f025780518252601f199092019160209182019101610ee3565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610f64576040519150601f19603f3d011682016040523d82523d6000602084013e610f69565b606091505b509150915081610fc0576040805162461bcd60e51b815260206004820152601c60248201527f46756e6374696f6e2063616c6c206e6f74207375636365737366756c00000000604482015290519081900360640190fd5b98975050505050505050565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020610ff881610ba4610a58565b600a9061105e5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5060008381526002602052604080822080546001600160a01b0319166001600160a01b0386169081179091559051909185917f8643692ae1c12ec91fa18e50b82ed93fa314f580999a236824db6de9ae0d839b9190a3505050565b604051806040016040528060018152602001603160f81b81525081565b600b5490565b6000818152600160205260409020600201545b919050565b6001600160a01b03166000908152600c602052604090205490565b60008281526001602052604090206002015461112d90610ba4610a58565b6111685760405162461bcd60e51b815260040180806020018281038252602f815260200180613f78602f913960400191505060405180910390fd5b611172828261263f565b5050565b6008546001600160a01b031690565b4690565b611191610a58565b6001600160a01b0316816001600160a01b0316146111e05760405162461bcd60e51b815260040180806020018281038252602f815260200180614286602f913960400191505060405180910390fd5b61117282826126ae565b606061123361122e84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061271d92505050565b612798565b905060006112548260028151811061124757fe5b602002602001015161291a565b6112796112748460088151811061126757fe5b6020026020010151612a62565b612b2c565b6112898460098151811061124757fe5b6040516020018084815260200183805190602001908083835b602083106112c15780518252601f1990920191602091820191016112a2565b51815160209384036101000a6000190180199092169116179052920193845250604080518085038152938201815283519382019390932060008181526006909252929020549194505060ff1615915061134d90505760405162461bcd60e51b81526004018080602001828103825260288152602001806142096028913960400191505060405180910390fd5b6000818152600660208190526040909120805460ff19166001179055825160609161138a9161122e9161138591879190811061126757fe5b61271d565b9050611394613e54565b6113b1826003815181106113a457fe5b6020026020010151612798565b6113c18560098151811061124757fe5b815181106113cb57fe5b6020026020010151905060006113fc6113e383612798565b6000815181106113ef57fe5b6020026020010151612c9f565b6001600160a01b0380821660009081526004602052604090205491925016806114565760405162461bcd60e51b81526004018080602001828103825260228152602001806140af6022913960400191505060405180910390fd5b6001600160a01b03808216600090815260056020908152604080832054835260029091529020548751911690611493908890600890811061124757fe5b63ffffffff1916156114d65760405162461bcd60e51b815260040180806020018281038252602581526020018061408a6025913960400191505060405180910390fd5b61151e6114e98860068151811061126757fe5b6114f98960088151811061126757fe5b6115098a60078151811061126757fe5b6115198b60058151811061124757fe5b612d2f565b61156f576040805162461bcd60e51b815260206004820152601f60248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f50524f4f4600604482015290519081900360640190fd5b6115dd6115828860028151811061124757fe5b6115928960038151811061124757fe5b6115a28a60048151811061124757fe5b60001b6115b58b60058151811061124757fe5b60001b6115c88c60008151811061124757fe5b6115d88d60018151811061126757fe5b612f76565b50806001600160a01b0316638274664f6115f5610a58565b846115ff886130bf565b6040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561167b578181015183820152602001611663565b50505050905090810190601f1680156116a85780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b1580156116c957600080fd5b505af11580156116dd573d6000803e3d6000fd5b50505050505050505050505050565b6116f581610a68565b50565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b01902081565b60066020526000908152604090205460ff1681565b600061173e81610ba4610a58565b600a906117a45760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506116f56040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b81525061312d565b60006117e481610ba4610a58565b600a9061184a5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5050600780546001600160a01b0319166001600160a01b0392909216919091179055565b6004602052600090815260409020546001600160a01b031681565b604080516826a0a82faa27a5a2a760b91b8152905190819003600901902081565b60008281526001602052604081206118c8908363ffffffff6131e916565b90505b92915050565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b0190206118fd81610ba4610a58565b600a906119635760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b03848116600090815260036020526040902054161580156119a457506001600160a01b0383811660009081526004602052604090205416155b6119f5576040805162461bcd60e51b815260206004820181905260248201527f526f6f74436861696e4d616e616765723a20414c52454144595f4d4150504544604482015290519081900360640190fd5b611a008484846131f5565b50505050565b60008281526001602052604081206118c8908363ffffffff61348416565b600081565b6000611a3781610ba4610a58565b600a90611a9d5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506116f56040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613499565b6000611add81610ba4610a58565b600a90611b435760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5050600880546001600160a01b0319166001600160a01b0392909216919091179055565b60005460ff1615611bb0576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b611be16040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613537565b611c126040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613499565b611c1d600082611168565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020611c479082611168565b506000805460ff19166001179055565b60008181526001602052604081206118cb90613589565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020611cb281610ba4610a58565b600a90611d185760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b0380851660009081526003602081815260408084205488861685526004835281852054861680865293909252909220549183169290911615611d8e576001600160a01b038116600090815260036020908152604080832080546001600160a01b031916905560059091528120555b6001600160a01b038281166000908152600460205260409020541615611dd5576001600160a01b038216600090815260046020526040902080546001600160a01b03191690555b611de08686866131f5565b505050505050565b600082815260016020526040902060020154611e0690610ba4610a58565b6111e05760405162461bcd60e51b81526004018080602001828103825260308152602001806140f96030913960400191505060405180910390fd5b604080516611115413d4d25560ca1b8152905190819003600701902081565b6000611e6e81610ba4610a58565b600a90611ed45760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b038216611f1a5760405162461bcd60e51b815260040180806020018281038252602d815260200180613fa7602d913960400191505060405180910390fd5b50600980546001600160a01b0319166001600160a01b0392909216919091179055565b6007546001600160a01b031690565b6001600160a01b03831673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee1415611fa85760405162461bcd60e51b81526004018080602001828103825260248152602001806141e56024913960400191505060405180910390fd5b611a00848484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061208e92505050565b60056020526000908152604090205481565b6002602052600090815260409020546001600160a01b031681565b6003602052600090815260409020546001600160a01b031681565b6000333014156120895760606000368080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505050503601516001600160a01b03169150610a659050565b503390565b6001600160a01b03808316600090815260056020908152604080832054600390925290912054909116158015906120c457508015155b6120ff5760405162461bcd60e51b81526004018080602001828103825260228152602001806140af6022913960400191505060405180910390fd5b6000818152600260205260409020546001600160a01b0316806121535760405162461bcd60e51b81526004018080602001828103825260248152602001806140176024913960400191505060405180910390fd5b6001600160a01b0385166121ae576040805162461bcd60e51b815260206004820152601e60248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f555345520000604482015290519081900360640190fd5b806001600160a01b031663e375b64e6121c5610a58565b8787876040518563ffffffff1660e01b815260040180856001600160a01b03166001600160a01b03168152602001846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561225c578181015183820152602001612244565b50505050905090810190601f1680156122895780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b1580156122ab57600080fd5b505af11580156122bf573d6000803e3d6000fd5b50505050606085858560405160200180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015612338578181015183820152602001612320565b50505050905090810190601f1680156123655780820380516001836020036101000a031916815260200191505b5060408051808303601f19018152828252600780546009546611115413d4d25560ca1b865284519586900390920185206020808701828152878701968752855160608901528551959d506001600160a01b039384169c506316f198319b5092909316985096508a955093608001919085019080838360005b838110156123f55781810151838201526020016123dd565b50505050905090810190601f1680156124225780820380516001836020036101000a031916815260200191505b5093505050506040516020818303038152906040526040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561249b578181015183820152602001612483565b50505050905090810190601f1680156124c85780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b1580156124e857600080fd5b505af11580156124fc573d6000803e3d6000fd5b50505050505050505050565b60006001600160a01b03861661254f5760405162461bcd60e51b81526004018080602001828103825260258152602001806141296025913960400191505060405180910390fd5b600161256261255d87613594565b613620565b83868660405160008152602001604052604051808581526020018460ff1660ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa1580156125bc573d6000803e3d6000fd5b505050602060405103516001600160a01b0316866001600160a01b031614905095945050505050565b6000828201838110156118c8576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600082815260016020526040902061265d908263ffffffff61366c16565b156111725761266a610a58565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b60008281526001602052604090206126cc908263ffffffff61368116565b15611172576126d9610a58565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612725613e54565b600082511161277b576040805162461bcd60e51b815260206004820152601f60248201527f524c505265616465723a20494e56414c49445f42595445535f4c454e47544800604482015290519081900360640190fd5b506040805180820190915281518152602082810190820152919050565b60606127a382613696565b6127f4576040805162461bcd60e51b815260206004820152601860248201527f524c505265616465723a204954454d5f4e4f545f4c4953540000000000000000604482015290519081900360640190fd5b60006127ff836136c2565b905060608167ffffffffffffffff8111801561281a57600080fd5b5060405190808252806020026020018201604052801561285457816020015b612841613e54565b8152602001906001900390816128395790505b5090506000612866856020015161374e565b855190915081146128a85760405162461bcd60e51b81526004018080602001828103825260278152602001806142316027913960400191505060405180910390fd5b60006128b786602001516137e2565b60208701510190506000805b8581101561290e576128d48361374e565b91506040518060400160405280838152602001848152508582815181106128f757fe5b6020908102919091010152918101916001016128c3565b50929695505050505050565b600061292582613696565b15612977576040805162461bcd60e51b815260206004820181905260248201527f524c505265616465723a204445434f44494e475f4c4953545f41535f55494e54604482015290519081900360640190fd5b8151602110156129ce576040805162461bcd60e51b815260206004820152601e60248201527f524c505265616465723a20494e56414c49445f55494e545f4c454e4754480000604482015290519081900360640190fd5b60006129dd836020015161374e565b83519091508114612a1f5760405162461bcd60e51b81526004018080602001828103825260278152602001806142b56027913960400191505060405180910390fd5b6000612a2e84602001516137e2565b84516020808701518301805193945091849003929190831015612a5857826020036101000a820491505b5095945050505050565b60606000612a73836020015161374e565b83519091508114612ab55760405162461bcd60e51b81526004018080602001828103825260288152602001806140d16028913960400191505060405180910390fd5b6000612ac484602001516137e2565b845190915081900360608167ffffffffffffffff81118015612ae557600080fd5b506040519080825280601f01601f191660200182016040528015612b10576020820181803683370190505b5090506000816020019050612a58848860200151018285613845565b604080516020810190915260008152815160609190156118cb57600080612b54600086613890565b60f81c90506001811480612b6b57508060ff166003145b15612bfa57600185516002020367ffffffffffffffff81118015612b8e57600080fd5b506040519080825280601f01601f191660200182016040528015612bb9576020820181803683370190505b5092506000612bc9600187613890565b90508084600081518110612bd957fe5b60200101906001600160f81b031916908160001a9053506001925050612c4b565b600285516002020367ffffffffffffffff81118015612c1857600080fd5b506040519080825280601f01601f191660200182016040528015612c43576020820181803683370190505b509250600091505b60ff82165b8351811015612c9657612c6b8360ff16820360020187613890565b848281518110612c7757fe5b60200101906001600160f81b031916908160001a905350600101612c50565b50505092915050565b6000612caa82613696565b15612ce65760405162461bcd60e51b815260040180806020018281038252602381526020018061417a6023913960400191505060405180910390fd5b8151601514612d265760405162461bcd60e51b81526004018080602001828103825260218152602001806142dc6021913960400191505060405180910390fd5b6118cb8261291a565b6000612d39613e54565b612d428461271d565b90506060612d4f82612798565b905060608085600082612d618b612b2c565b9050805160001415612d7d576000975050505050505050612f6e565b60005b8651811015612f65578151831115612da357600098505050505050505050612f6e565b612dbf878281518110612db257fe5b60200260200101516130bf565b955085805190602001208414612de057600098505050505050505050612f6e565b612def8782815181106113a457fe5b9450845160111415612eac578151831415612e4b578c80519060200120612e1c8660108151811061126757fe5b805190602001201415612e3a57600198505050505050505050612f6e565b600098505050505050505050612f6e565b6000828481518110612e5957fe5b016020015160f81c90506010811115612e7e5760009950505050505050505050612f6e565b612e9d868260ff1681518110612e9057fe5b60200260200101516138ed565b94505060019290920191612f5d565b845160021415612e3a576000612ed2612ecb8760008151811061126757fe5b848661398c565b905082518185011415612f28578d80519060200120612ef78760018151811061126757fe5b805190602001201415612f165760019950505050505050505050612f6e565b60009950505050505050505050612f6e565b80612f3f5760009950505050505050505050612f6e565b8084019350612f5486600181518110612e9057fe5b9450612f5d9050565b600101612d80565b50505050505050505b949350505050565b600854604080516320a9cea560e11b81526004810185905290516000928392839283926001600160a01b0316916341539d4a9160248083019260a0929190829003018186803b158015612fc857600080fd5b505afa158015612fdc573d6000803e3d6000fd5b505050506040513d60a0811015612ff257600080fd5b5080516020820151606090920151909450909250905061306161301b8b8463ffffffff613a6b16565b6040805160208082018f90528183018e9052606082018d905260808083018d90528351808403909101815260a0909201909252805191012090858863ffffffff613aad16565b6130b2576040805162461bcd60e51b815260206004820181905260248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f484541444552604482015290519081900360640190fd5b9998505050505050505050565b606080826000015167ffffffffffffffff811180156130dd57600080fd5b506040519080825280601f01601f191660200182016040528015613108576020820181803683370190505b50905060008160200190506131268460200151828660000151613845565b5092915050565b6040518060800160405280604f815260200161403b604f913980516020918201208251838301206040805180820190915260018152603160f81b930192909252907fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc630613198611185565b604080516020808201979097528082019590955260608501939093526001600160a01b03909116608084015260a0808401919091528151808403909101815260c090920190528051910120600b5550565b60006118c88383613c03565b6000818152600260205260409020546001600160a01b03166132485760405162461bcd60e51b815260040180806020018281038252602a815260200180613f07602a913960400191505060405180910390fd5b6001600160a01b03808416600081815260036020908152604080832080549588166001600160a01b031996871681179091558084526004835281842080549096168517909555838352600590915280822085905551849392917f9e651a8866fbea043e911d816ec254b0e3c992c06fff32d605e72362d6023bd991a4604080516001600160a01b0380861660208084019190915281861683850152606083810186905284518085038201815260808086018088526007546009546826a0a82faa27a5a2a760b91b9092528851978890036089018820888701818152898b019a8b528551968a019690965284519499918816986316f1983198939093169690958a9590949293909201919085019080838360005b8381101561337357818101518382015260200161335b565b50505050905090810190601f1680156133a05780820380516001836020036101000a031916815260200191505b5093505050506040516020818303038152906040526040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015613419578181015183820152602001613401565b50505050905090810190601f1680156134465780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b15801561346657600080fd5b505af115801561347a573d6000803e3d6000fd5b5050505050505050565b60006118c8836001600160a01b038416613c67565b806040516020018082805190602001908083835b602083106134cc5780518252601f1990920191602091820191016134ad565b51815160209384036101000a60001901801990921691161790527f3a20494e53554646494349454e545f5045524d495353494f4e530000000000009190930190815260408051808303600519018152601a909201905280516111729550600a94509201919050613e6e565b60005460ff1615613580576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b611c478161312d565b60006118cb82613c7f565b6000604051806080016040528060438152602001613fd460439139805190602001208260000151836020015184604001518051906020012060405160200180858152602001848152602001836001600160a01b03166001600160a01b03168152602001828152602001945050505050604051602081830303815290604052805190602001209050919050565b600061362a6110d6565b82604051602001808061190160f01b81525060020183815260200182815260200192505050604051602081830303815290604052805190602001209050919050565b60006118c8836001600160a01b038416613c83565b60006118c8836001600160a01b038416613ccd565b6020810151805160009190821a9060c08210156136b8576000925050506110ef565b5060019392505050565b6000806000905060006136d884602001516137e2565b602085015185519181019250015b80821015613745576136f78261374e565b820191508082111561373a5760405162461bcd60e51b815260040180806020018281038252602c81526020018061414e602c913960400191505060405180910390fd5b6001909201916136e6565b50909392505050565b80516000908190811a60808110156137695760019150613126565b60b881101561377e57607e1981019150613126565b60c08110156137ab5760b78103600185019450806020036101000a85510460018201810193505050613126565b60f88110156137c05760be1981019150613126565b60019390930151602084900360f7016101000a900490920160f5190192915050565b8051600090811a60808110156137fc5760009150506110ef565b60b8811080613817575060c08110801590613817575060f881105b156138265760019150506110ef565b60c081101561383a5760b5190190506110ef565b60f5190190506110ef565b8061384f57610b64565b5b6020811061386f578251825260209283019290910190601f1901613850565b915181516020939093036101000a6000190180199091169216919091179052565b600060028306156138c15760108260028504815181106138ac57fe5b016020015160f81c816138bb57fe5b066138e3565b60108260028504815181106138d257fe5b016020015160f81c816138e157fe5b045b60f81b9392505050565b6000806138fd836020015161374e565b8351909150811461393f5760405162461bcd60e51b815260040180806020018281038252602e815260200180614258602e913960400191505060405180910390fd5b825160211461397f5760405162461bcd60e51b8152600401808060200182810382526025815260200180613f536025913960400191505060405180910390fd5b5050602001516001015190565b600080606061399a86612b2c565b90506060815167ffffffffffffffff811180156139b657600080fd5b506040519080825280601f01601f1916602001820160405280156139e1576020820181803683370190505b509050845b82518601811015613a3b5760008782815181106139ff57fe5b602001015160f81c60f81b9050808388840381518110613a1b57fe5b60200101906001600160f81b031916908160001a905350506001016139e6565b50808051906020012082805190602001201415613a5b5781519250613a60565b600092505b509095945050505050565b60006118c883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250613d93565b60006020825181613aba57fe5b0615613b04576040805162461bcd60e51b8152602060048201526014602482015273092dcecc2d8d2c840e0e4dedecc40d8cadccee8d60631b604482015290519081900360640190fd5b60006020835181613b1157fe5b0490508060020a8510613b63576040805162461bcd60e51b81526020600482015260156024820152744c65616620696e64657820697320746f6f2062696760581b604482015290519081900360640190fd5b60008660205b85518111613bf55785810151925060028806613bb55781836040516020018083815260200182815260200192505050604051602081830303815290604052805190602001209150613be7565b828260405160200180838152602001828152602001925050506040516020818303038152906040528051906020012091505b600288049750602001613b69565b509094149695505050505050565b81546000908210613c455760405162461bcd60e51b8152600401808060200182810382526022815260200180613f316022913960400191505060405180910390fd5b826000018281548110613c5457fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000613c8f8383613c67565b613cc5575081546001818101845560008481526020808220909301849055845484825282860190935260409020919091556118cb565b5060006118cb565b60008181526001830160205260408120548015613d895783546000198083019190810190600090879083908110613d0057fe5b9060005260206000200154905080876000018481548110613d1d57fe5b600091825260208083209091019290925582815260018981019092526040902090840190558654879080613d4d57fe5b600190038181906000526020600020016000905590558660010160008781526020019081526020016000206000905560019450505050506118cb565b60009150506118cb565b60008184841115613e225760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015613de7578181015183820152602001613dcf565b50505050905090810190601f168015613e145780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60405180606001604052806000815260200160006001600160a01b03168152602001606081525090565b604051806040016040528060008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10613eaf57805160ff1916838001178555613edc565b82800160010185558215613edc579182015b82811115613edc578251825591602001919060010190613ec1565b50613ee8929150613eec565b5090565b610a6591905b80821115613ee85760008155600101613ef256fe526f6f74436861696e4d616e616765723a20544f4b454e5f545950455f4e4f545f535550504f52544544456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473524c505265616465723a20494e56414c49445f55494e545f5354524943545f4c454e475448416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e74526f6f74436861696e4d616e616765723a20494e56414c49445f4348494c445f434841494e5f414444524553534d6574615472616e73616374696f6e2875696e74323536206e6f6e63652c616464726573732066726f6d2c62797465732066756e6374696f6e5369676e617475726529526f6f74436861696e4d616e616765723a20494e56414c49445f544f4b454e5f54595045454950373132446f6d61696e28737472696e67206e616d652c737472696e672076657273696f6e2c6164647265737320766572696679696e67436f6e74726163742c627974657333322073616c7429526f6f74436861696e4d616e616765723a20494e56414c49445f4252414e43485f4d41534b526f6f74436861696e4d616e616765723a20544f4b454e5f4e4f545f4d4150504544524c505265616465723a2042595445535f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b654e61746976654d6574615472616e73616374696f6e3a20494e56414c49445f5349474e4552524c505265616465723a204e554d5f4954454d535f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a204445434f44494e475f4c4953545f41535f41444452455353526f6f74436861696e4d616e616765723a2045544845525f5452414e534645525f4641494c45445369676e657220616e64207369676e617475726520646f206e6f74206d61746368526f6f74436861696e4d616e616765723a20494e56414c49445f524f4f545f544f4b454e526f6f74436861696e4d616e616765723a20455849545f414c52454144595f50524f434553534544524c505265616465723a204c4953545f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a2055494e545f5354524943545f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66524c505265616465723a2055494e545f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a20494e56414c49445f414444524553535f4c454e475448a164736f6c6343000606000a"; +const isSuperArgs = (xs) => xs.length > 1; +class RootChainManager__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(overrides) { + return super.getDeployTransaction(overrides || {}); + } + deploy(overrides) { + return super.deploy(overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.RootChainManager__factory = RootChainManager__factory; +RootChainManager__factory.bytecode = _bytecode; +RootChainManager__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/index.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/index.d.ts new file mode 100644 index 00000000..8ea533ed --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/index.d.ts @@ -0,0 +1,11 @@ +export { AccessControl__factory } from "./AccessControl__factory"; +export { AccessControlMixin__factory } from "./AccessControlMixin__factory"; +export { EIP712Base__factory } from "./EIP712Base__factory"; +export { ICheckpointManager__factory } from "./ICheckpointManager__factory"; +export { IRootChainManager__factory } from "./IRootChainManager__factory"; +export { IStateSender__factory } from "./IStateSender__factory"; +export { ITokenPredicate__factory } from "./ITokenPredicate__factory"; +export { NativeMetaTransaction__factory } from "./NativeMetaTransaction__factory"; +export { RootChainManager__factory } from "./RootChainManager__factory"; +export { RootChainManagerStorage__factory } from "./RootChainManagerStorage__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/index.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/index.d.ts.map new file mode 100644 index 00000000..cc43c04c --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,8BAA8B,EAAE,MAAM,kCAAkC,CAAC;AAClF,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,gCAAgC,EAAE,MAAM,oCAAoC,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/index.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/index.js new file mode 100644 index 00000000..18ef7469 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/index.js @@ -0,0 +1,23 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.RootChainManagerStorage__factory = exports.RootChainManager__factory = exports.NativeMetaTransaction__factory = exports.ITokenPredicate__factory = exports.IStateSender__factory = exports.IRootChainManager__factory = exports.ICheckpointManager__factory = exports.EIP712Base__factory = exports.AccessControlMixin__factory = exports.AccessControl__factory = void 0; +var AccessControl__factory_1 = require("./AccessControl__factory"); +Object.defineProperty(exports, "AccessControl__factory", { enumerable: true, get: function () { return AccessControl__factory_1.AccessControl__factory; } }); +var AccessControlMixin__factory_1 = require("./AccessControlMixin__factory"); +Object.defineProperty(exports, "AccessControlMixin__factory", { enumerable: true, get: function () { return AccessControlMixin__factory_1.AccessControlMixin__factory; } }); +var EIP712Base__factory_1 = require("./EIP712Base__factory"); +Object.defineProperty(exports, "EIP712Base__factory", { enumerable: true, get: function () { return EIP712Base__factory_1.EIP712Base__factory; } }); +var ICheckpointManager__factory_1 = require("./ICheckpointManager__factory"); +Object.defineProperty(exports, "ICheckpointManager__factory", { enumerable: true, get: function () { return ICheckpointManager__factory_1.ICheckpointManager__factory; } }); +var IRootChainManager__factory_1 = require("./IRootChainManager__factory"); +Object.defineProperty(exports, "IRootChainManager__factory", { enumerable: true, get: function () { return IRootChainManager__factory_1.IRootChainManager__factory; } }); +var IStateSender__factory_1 = require("./IStateSender__factory"); +Object.defineProperty(exports, "IStateSender__factory", { enumerable: true, get: function () { return IStateSender__factory_1.IStateSender__factory; } }); +var ITokenPredicate__factory_1 = require("./ITokenPredicate__factory"); +Object.defineProperty(exports, "ITokenPredicate__factory", { enumerable: true, get: function () { return ITokenPredicate__factory_1.ITokenPredicate__factory; } }); +var NativeMetaTransaction__factory_1 = require("./NativeMetaTransaction__factory"); +Object.defineProperty(exports, "NativeMetaTransaction__factory", { enumerable: true, get: function () { return NativeMetaTransaction__factory_1.NativeMetaTransaction__factory; } }); +var RootChainManager__factory_1 = require("./RootChainManager__factory"); +Object.defineProperty(exports, "RootChainManager__factory", { enumerable: true, get: function () { return RootChainManager__factory_1.RootChainManager__factory; } }); +var RootChainManagerStorage__factory_1 = require("./RootChainManagerStorage__factory"); +Object.defineProperty(exports, "RootChainManagerStorage__factory", { enumerable: true, get: function () { return RootChainManagerStorage__factory_1.RootChainManagerStorage__factory; } }); diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/ICheckpointManager__factory.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/ICheckpointManager__factory.d.ts new file mode 100644 index 00000000..9e7eaa1a --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/ICheckpointManager__factory.d.ts @@ -0,0 +1,53 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../../../common"; +import type { ICheckpointManager, ICheckpointManagerInterface } from "../../../../../contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/ICheckpointManager"; +declare type ICheckpointManagerConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class ICheckpointManager__factory extends ContractFactory { + constructor(...args: ICheckpointManagerConstructorParams); + getDeployTransaction(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): ICheckpointManager__factory; + static readonly bytecode = "0x608060405234801561001057600080fd5b5060c08061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c806341539d4a14602d575b600080fd5b604760048036036020811015604157600080fd5b5035607b565b6040805195865260208601949094528484019290925260608401526001600160a01b03166080830152519081900360a00190f35b60006020819052908152604090208054600182015460028301546003840154600490940154929391929091906001600160a01b03168556fea164736f6c6343000606000a"; + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly name: "headerBlocks"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "root"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "start"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "end"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "createdAt"; + readonly type: "uint256"; + }, { + readonly internalType: "address"; + readonly name: "proposer"; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): ICheckpointManagerInterface; + static connect(address: string, runner?: ContractRunner | null): ICheckpointManager; +} +export {}; +//# sourceMappingURL=ICheckpointManager__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/ICheckpointManager__factory.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/ICheckpointManager__factory.d.ts.map new file mode 100644 index 00000000..c52a4cf6 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/ICheckpointManager__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ICheckpointManager__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/ICheckpointManager__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,kBAAkB,EAClB,2BAA2B,EAC5B,MAAM,kGAAkG,CAAC;AA+C1G,aAAK,mCAAmC,GACpC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,2BAA4B,SAAQ,eAAe;gBAClD,GAAG,IAAI,EAAE,mCAAmC;IAQ/C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,2BAA2B;IAI5E,MAAM,CAAC,QAAQ,CAAC,QAAQ,scAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,2BAA2B;IAGrD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,kBAAkB;CAGtB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/ICheckpointManager__factory.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/ICheckpointManager__factory.js new file mode 100644 index 00000000..2d28b829 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/ICheckpointManager__factory.js @@ -0,0 +1,75 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ICheckpointManager__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + name: "headerBlocks", + outputs: [ + { + internalType: "bytes32", + name: "root", + type: "bytes32", + }, + { + internalType: "uint256", + name: "start", + type: "uint256", + }, + { + internalType: "uint256", + name: "end", + type: "uint256", + }, + { + internalType: "uint256", + name: "createdAt", + type: "uint256", + }, + { + internalType: "address", + name: "proposer", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +const _bytecode = "0x608060405234801561001057600080fd5b5060c08061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c806341539d4a14602d575b600080fd5b604760048036036020811015604157600080fd5b5035607b565b6040805195865260208601949094528484019290925260608401526001600160a01b03166080830152519081900360a00190f35b60006020819052908152604090208054600182015460028301546003840154600490940154929391929091906001600160a01b03168556fea164736f6c6343000606000a"; +const isSuperArgs = (xs) => xs.length > 1; +class ICheckpointManager__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(overrides) { + return super.getDeployTransaction(overrides || {}); + } + deploy(overrides) { + return super.deploy(overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.ICheckpointManager__factory = ICheckpointManager__factory; +ICheckpointManager__factory.bytecode = _bytecode; +ICheckpointManager__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain__factory.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain__factory.d.ts new file mode 100644 index 00000000..9b05c949 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain__factory.d.ts @@ -0,0 +1,43 @@ +import { type ContractRunner } from "ethers"; +import type { IRootChain, IRootChainInterface } from "../../../../../contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain"; +export declare class IRootChain__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "proposer"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "headerBlockId"; + readonly type: "uint256"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "reward"; + readonly type: "uint256"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "start"; + readonly type: "uint256"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "end"; + readonly type: "uint256"; + }, { + readonly indexed: false; + readonly internalType: "bytes32"; + readonly name: "root"; + readonly type: "bytes32"; + }]; + readonly name: "NewHeaderBlock"; + readonly type: "event"; + }]; + static createInterface(): IRootChainInterface; + static connect(address: string, runner?: ContractRunner | null): IRootChain; +} +//# sourceMappingURL=IRootChain__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain__factory.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain__factory.d.ts.map new file mode 100644 index 00000000..64c58037 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IRootChain__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,UAAU,EACV,mBAAmB,EACpB,MAAM,0FAA0F,CAAC;AAgDlG,qBAAa,mBAAmB;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,mBAAmB;IAG7C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,UAAU;CAG5E"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain__factory.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain__factory.js new file mode 100644 index 00000000..7a627a95 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain__factory.js @@ -0,0 +1,59 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IRootChain__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "proposer", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "headerBlockId", + type: "uint256", + }, + { + indexed: true, + internalType: "uint256", + name: "reward", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "start", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "end", + type: "uint256", + }, + { + indexed: false, + internalType: "bytes32", + name: "root", + type: "bytes32", + }, + ], + name: "NewHeaderBlock", + type: "event", + }, +]; +class IRootChain__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IRootChain__factory = IRootChain__factory; +IRootChain__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager__factory.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager__factory.d.ts new file mode 100644 index 00000000..c8e0ddb9 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager__factory.d.ts @@ -0,0 +1,116 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../../../common"; +import type { SimpleCheckpointManager, SimpleCheckpointManagerInterface } from "../../../../../contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager"; +declare type SimpleCheckpointManagerConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class SimpleCheckpointManager__factory extends ContractFactory { + constructor(...args: SimpleCheckpointManagerConstructorParams); + getDeployTransaction(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): SimpleCheckpointManager__factory; + static readonly bytecode = "0x6080604052600060015534801561001557600080fd5b50610233806100256000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806341539d4a146100465780634d5505d314610097578063afa764d7146100b1575b600080fd5b6100636004803603602081101561005c57600080fd5b50356100dc565b6040805195865260208601949094528484019290925260608401526001600160a01b03166080830152519081900360a00190f35b61009f610114565b60408051918252519081900360200190f35b6100da600480360360608110156100c757600080fd5b508035906020810135906040013561011a565b005b60006020819052908152604090208054600182015460028301546003840154600490940154929391929091906001600160a01b031685565b60015481565b6101226101eb565b506040805160a0810182528481526020808201858152828401858152426060808601918252336080870181815260018054810180825560009081528089528a81208a518155975188830155955160028801559351600387015551600490950180546001600160a01b0319166001600160a01b0390961695909517909455905486518981529485018890528487018a905295519495919491937fba5de06d22af2685c6c7765f60067f7d2b08c2d29f53cdf14d67f6d1c9bfb527929081900390910190a450505050565b6040518060a001604052806000801916815260200160008152602001600081526020016000815260200160006001600160a01b03168152509056fea164736f6c6343000606000a"; + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "proposer"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "headerBlockId"; + readonly type: "uint256"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "reward"; + readonly type: "uint256"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "start"; + readonly type: "uint256"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "end"; + readonly type: "uint256"; + }, { + readonly indexed: false; + readonly internalType: "bytes32"; + readonly name: "root"; + readonly type: "bytes32"; + }]; + readonly name: "NewHeaderBlock"; + readonly type: "event"; + }, { + readonly inputs: readonly []; + readonly name: "currentCheckpointNumber"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly name: "headerBlocks"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "root"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "start"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "end"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "createdAt"; + readonly type: "uint256"; + }, { + readonly internalType: "address"; + readonly name: "proposer"; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "rootHash"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "start"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "end"; + readonly type: "uint256"; + }]; + readonly name: "setCheckpoint"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): SimpleCheckpointManagerInterface; + static connect(address: string, runner?: ContractRunner | null): SimpleCheckpointManager; +} +export {}; +//# sourceMappingURL=SimpleCheckpointManager__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager__factory.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager__factory.d.ts.map new file mode 100644 index 00000000..9d4ce416 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"SimpleCheckpointManager__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,uBAAuB,EACvB,gCAAgC,EACjC,MAAM,uGAAuG,CAAC;AA8H/G,aAAK,wCAAwC,GACzC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,gCAAiC,SAAQ,eAAe;gBACvD,GAAG,IAAI,EAAE,wCAAwC;IAQpD,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CACd,MAAM,EAAE,cAAc,GAAG,IAAI,GAC5B,gCAAgC;IAInC,MAAM,CAAC,QAAQ,CAAC,QAAQ,wrCAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,gCAAgC;IAG1D,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,uBAAuB;CAO3B"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager__factory.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager__factory.js new file mode 100644 index 00000000..64e4d004 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager__factory.js @@ -0,0 +1,154 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.SimpleCheckpointManager__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "proposer", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "headerBlockId", + type: "uint256", + }, + { + indexed: true, + internalType: "uint256", + name: "reward", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "start", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "end", + type: "uint256", + }, + { + indexed: false, + internalType: "bytes32", + name: "root", + type: "bytes32", + }, + ], + name: "NewHeaderBlock", + type: "event", + }, + { + inputs: [], + name: "currentCheckpointNumber", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + name: "headerBlocks", + outputs: [ + { + internalType: "bytes32", + name: "root", + type: "bytes32", + }, + { + internalType: "uint256", + name: "start", + type: "uint256", + }, + { + internalType: "uint256", + name: "end", + type: "uint256", + }, + { + internalType: "uint256", + name: "createdAt", + type: "uint256", + }, + { + internalType: "address", + name: "proposer", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "rootHash", + type: "bytes32", + }, + { + internalType: "uint256", + name: "start", + type: "uint256", + }, + { + internalType: "uint256", + name: "end", + type: "uint256", + }, + ], + name: "setCheckpoint", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +const _bytecode = "0x6080604052600060015534801561001557600080fd5b50610233806100256000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806341539d4a146100465780634d5505d314610097578063afa764d7146100b1575b600080fd5b6100636004803603602081101561005c57600080fd5b50356100dc565b6040805195865260208601949094528484019290925260608401526001600160a01b03166080830152519081900360a00190f35b61009f610114565b60408051918252519081900360200190f35b6100da600480360360608110156100c757600080fd5b508035906020810135906040013561011a565b005b60006020819052908152604090208054600182015460028301546003840154600490940154929391929091906001600160a01b031685565b60015481565b6101226101eb565b506040805160a0810182528481526020808201858152828401858152426060808601918252336080870181815260018054810180825560009081528089528a81208a518155975188830155955160028801559351600387015551600490950180546001600160a01b0319166001600160a01b0390961695909517909455905486518981529485018890528487018a905295519495919491937fba5de06d22af2685c6c7765f60067f7d2b08c2d29f53cdf14d67f6d1c9bfb527929081900390910190a450505050565b6040518060a001604052806000801916815260200160008152602001600081526020016000815260200160006001600160a01b03168152509056fea164736f6c6343000606000a"; +const isSuperArgs = (xs) => xs.length > 1; +class SimpleCheckpointManager__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(overrides) { + return super.getDeployTransaction(overrides || {}); + } + deploy(overrides) { + return super.deploy(overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.SimpleCheckpointManager__factory = SimpleCheckpointManager__factory; +SimpleCheckpointManager__factory.bytecode = _bytecode; +SimpleCheckpointManager__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/index.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/index.d.ts new file mode 100644 index 00000000..2859f68f --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/index.d.ts @@ -0,0 +1,4 @@ +export { ICheckpointManager__factory } from "./ICheckpointManager__factory"; +export { IRootChain__factory } from "./IRootChain__factory"; +export { SimpleCheckpointManager__factory } from "./SimpleCheckpointManager__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/index.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/index.d.ts.map new file mode 100644 index 00000000..6e7e655e --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,gCAAgC,EAAE,MAAM,oCAAoC,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/index.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/index.js new file mode 100644 index 00000000..e367d5b8 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/index.js @@ -0,0 +1,9 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.SimpleCheckpointManager__factory = exports.IRootChain__factory = exports.ICheckpointManager__factory = void 0; +var ICheckpointManager__factory_1 = require("./ICheckpointManager__factory"); +Object.defineProperty(exports, "ICheckpointManager__factory", { enumerable: true, get: function () { return ICheckpointManager__factory_1.ICheckpointManager__factory; } }); +var IRootChain__factory_1 = require("./IRootChain__factory"); +Object.defineProperty(exports, "IRootChain__factory", { enumerable: true, get: function () { return IRootChain__factory_1.IRootChain__factory; } }); +var SimpleCheckpointManager__factory_1 = require("./SimpleCheckpointManager__factory"); +Object.defineProperty(exports, "SimpleCheckpointManager__factory", { enumerable: true, get: function () { return SimpleCheckpointManager__factory_1.SimpleCheckpointManager__factory; } }); diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/index.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/index.d.ts new file mode 100644 index 00000000..0f620fd5 --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/index.d.ts @@ -0,0 +1,5 @@ +export * as dummyStateSenderSol from "./DummyStateSender.sol"; +export * as mintableErc721PredicateSol from "./MintableERC721Predicate.sol"; +export * as rootChainManagerSol from "./RootChainManager.sol"; +export * as simpleCheckpointManagerSol from "./SimpleCheckpointManager.sol"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/index.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/index.d.ts.map new file mode 100644 index 00000000..767910cb --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/contracts/@maticnetwork/pos-portal/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,mBAAmB,MAAM,wBAAwB,CAAC;AAC9D,OAAO,KAAK,0BAA0B,MAAM,+BAA+B,CAAC;AAC5E,OAAO,KAAK,mBAAmB,MAAM,wBAAwB,CAAC;AAC9D,OAAO,KAAK,0BAA0B,MAAM,+BAA+B,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/index.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/index.js new file mode 100644 index 00000000..d9fc620f --- /dev/null +++ b/dist/types/factories/contracts/@maticnetwork/pos-portal/index.js @@ -0,0 +1,30 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.simpleCheckpointManagerSol = exports.rootChainManagerSol = exports.mintableErc721PredicateSol = exports.dummyStateSenderSol = void 0; +exports.dummyStateSenderSol = __importStar(require("./DummyStateSender.sol")); +exports.mintableErc721PredicateSol = __importStar(require("./MintableERC721Predicate.sol")); +exports.rootChainManagerSol = __importStar(require("./RootChainManager.sol")); +exports.simpleCheckpointManagerSol = __importStar(require("./SimpleCheckpointManager.sol")); diff --git a/dist/types/factories/contracts/ChildRegistry__factory.d.ts b/dist/types/factories/contracts/ChildRegistry__factory.d.ts new file mode 100644 index 00000000..d13120e0 --- /dev/null +++ b/dist/types/factories/contracts/ChildRegistry__factory.d.ts @@ -0,0 +1,296 @@ +import { type ContractRunner } from "ethers"; +import type { ChildRegistry, ChildRegistryInterface } from "../../contracts/ChildRegistry"; +export declare class ChildRegistry__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "approved"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Approval"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "ApprovalForAll"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "uint8"; + readonly name: "version"; + readonly type: "uint8"; + }]; + readonly name: "Initialized"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Transfer"; + readonly type: "event"; + }, { + readonly inputs: readonly []; + readonly name: "BATCH_LIMIT"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "approve"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "balanceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "user"; + readonly type: "address"; + }, { + readonly internalType: "bytes"; + readonly name: "depositData"; + readonly type: "bytes"; + }]; + readonly name: "deposit"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getApproved"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly name: "isApprovedForAll"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "name"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "ownerOf"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "setApprovalForAll"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "symbol"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "tokenURI"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "transferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): ChildRegistryInterface; + static connect(address: string, runner?: ContractRunner | null): ChildRegistry; +} +//# sourceMappingURL=ChildRegistry__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/ChildRegistry__factory.d.ts.map b/dist/types/factories/contracts/ChildRegistry__factory.d.ts.map new file mode 100644 index 00000000..453be74a --- /dev/null +++ b/dist/types/factories/contracts/ChildRegistry__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ChildRegistry__factory.d.ts","sourceRoot":"","sources":["../../../../types/factories/contracts/ChildRegistry__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,aAAa,EACb,sBAAsB,EACvB,MAAM,+BAA+B,CAAC;AA2XvC,qBAAa,sBAAsB;IACjC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,sBAAsB;IAGhD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,aAAa;CAGjB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/ChildRegistry__factory.js b/dist/types/factories/contracts/ChildRegistry__factory.js new file mode 100644 index 00000000..478f11fe --- /dev/null +++ b/dist/types/factories/contracts/ChildRegistry__factory.js @@ -0,0 +1,390 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ChildRegistry__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "approved", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Approval", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "ApprovalForAll", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint8", + name: "version", + type: "uint8", + }, + ], + name: "Initialized", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Transfer", + type: "event", + }, + { + inputs: [], + name: "BATCH_LIMIT", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "approve", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "user", + type: "address", + }, + { + internalType: "bytes", + name: "depositData", + type: "bytes", + }, + ], + name: "deposit", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getApproved", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + name: "isApprovedForAll", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "name", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "ownerOf", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "setApprovalForAll", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "symbol", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "tokenURI", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "transferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +class ChildRegistry__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.ChildRegistry__factory = ChildRegistry__factory; +ChildRegistry__factory.abi = _abi; diff --git a/dist/types/factories/contracts/DotCoinBurner__factory.d.ts b/dist/types/factories/contracts/DotCoinBurner__factory.d.ts new file mode 100644 index 00000000..5dc55402 --- /dev/null +++ b/dist/types/factories/contracts/DotCoinBurner__factory.d.ts @@ -0,0 +1,56 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, AddressLike, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../common"; +import type { DotCoinBurner, DotCoinBurnerInterface } from "../../contracts/DotCoinBurner"; +declare type DotCoinBurnerConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class DotCoinBurner__factory extends ContractFactory { + constructor(...args: DotCoinBurnerConstructorParams); + getDeployTransaction(unsRegistry: AddressLike, overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(unsRegistry: AddressLike, overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): DotCoinBurner__factory; + static readonly bytecode = "0x60a060405234801561001057600080fd5b5060405161047d38038061047d83398101604081905261002f91610040565b6001600160a01b0316608052610070565b60006020828403121561005257600080fd5b81516001600160a01b038116811461006957600080fd5b9392505050565b6080516103f361008a600039600060d401526103f36000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063100cdd9114610030575b600080fd5b61004361003e3660046102e3565b610045565b005b60005b818110156101cb5760007f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e284848481811061008557610085610358565b905060200201356040516020016100a6929190918252602082015260400190565b60408051808303601f190181529082905280516020909101206331a9108f60e11b82526004820181905291507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906323b872dd908290636352211e90602401602060405180830381865afa15801561012b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061014f919061036e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015261dead602482015260448101849052606401600060405180830381600087803b15801561019f57600080fd5b505af11580156101b3573d6000803e3d6000fd5b505050505080806101c3906103b4565b915050610048565b5080156102df577f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e282826102006001826103cd565b81811061020f5761020f610358565b90506020020135604051602001610230929190918252602082015260400190565b6040516020818303038152906040528051906020012060001c7f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e28383600081811061027d5761027d610358565b9050602002013560405160200161029e929190918252602082015260400190565b60408051601f19818403018152908290528051602090910120907fdf423376f9b0ab363b1b4d6f0b4cb6821921ec30f491555a97236a8a38ce095a90600090a35b5050565b600080602083850312156102f657600080fd5b823567ffffffffffffffff8082111561030e57600080fd5b818501915085601f83011261032257600080fd5b81358181111561033157600080fd5b8660208260051b850101111561034657600080fd5b60209290920196919550909350505050565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561038057600080fd5b81516001600160a01b038116811461039757600080fd5b9392505050565b634e487b7160e01b600052601160045260246000fd5b6000600182016103c6576103c661039e565b5060010190565b818103818111156103e0576103e061039e565b9291505056fea164736f6c6343000811000a"; + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "contract IUNSRegistry"; + readonly name: "unsRegistry"; + readonly type: "address"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "constructor"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "first"; + readonly type: "uint256"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "last"; + readonly type: "uint256"; + }]; + readonly name: "BatchCompleted"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256[]"; + readonly name: "labelHashes"; + readonly type: "uint256[]"; + }]; + readonly name: "burnAll"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): DotCoinBurnerInterface; + static connect(address: string, runner?: ContractRunner | null): DotCoinBurner; +} +export {}; +//# sourceMappingURL=DotCoinBurner__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/DotCoinBurner__factory.d.ts.map b/dist/types/factories/contracts/DotCoinBurner__factory.d.ts.map new file mode 100644 index 00000000..936cda11 --- /dev/null +++ b/dist/types/factories/contracts/DotCoinBurner__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"DotCoinBurner__factory.d.ts","sourceRoot":"","sources":["../../../../types/factories/contracts/DotCoinBurner__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,MAAM,EACN,WAAW,EACX,yBAAyB,EACzB,cAAc,EACf,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACxD,OAAO,KAAK,EACV,aAAa,EACb,sBAAsB,EACvB,MAAM,+BAA+B,CAAC;AAmDvC,aAAK,8BAA8B,GAC/B,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,sBAAuB,SAAQ,eAAe;gBAC7C,GAAG,IAAI,EAAE,8BAA8B;IAQ1C,oBAAoB,CAC3B,WAAW,EAAE,WAAW,EACxB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CACb,WAAW,EAAE,WAAW,EACxB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAItB,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,sBAAsB;IAIvE,MAAM,CAAC,QAAQ,CAAC,QAAQ,kwEAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,sBAAsB;IAGhD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,aAAa;CAGjB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/DotCoinBurner__factory.js b/dist/types/factories/contracts/DotCoinBurner__factory.js new file mode 100644 index 00000000..8ee1b0f2 --- /dev/null +++ b/dist/types/factories/contracts/DotCoinBurner__factory.js @@ -0,0 +1,79 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.DotCoinBurner__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "contract IUNSRegistry", + name: "unsRegistry", + type: "address", + }, + ], + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "first", + type: "uint256", + }, + { + indexed: true, + internalType: "uint256", + name: "last", + type: "uint256", + }, + ], + name: "BatchCompleted", + type: "event", + }, + { + inputs: [ + { + internalType: "uint256[]", + name: "labelHashes", + type: "uint256[]", + }, + ], + name: "burnAll", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +const _bytecode = "0x60a060405234801561001057600080fd5b5060405161047d38038061047d83398101604081905261002f91610040565b6001600160a01b0316608052610070565b60006020828403121561005257600080fd5b81516001600160a01b038116811461006957600080fd5b9392505050565b6080516103f361008a600039600060d401526103f36000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063100cdd9114610030575b600080fd5b61004361003e3660046102e3565b610045565b005b60005b818110156101cb5760007f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e284848481811061008557610085610358565b905060200201356040516020016100a6929190918252602082015260400190565b60408051808303601f190181529082905280516020909101206331a9108f60e11b82526004820181905291507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906323b872dd908290636352211e90602401602060405180830381865afa15801561012b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061014f919061036e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015261dead602482015260448101849052606401600060405180830381600087803b15801561019f57600080fd5b505af11580156101b3573d6000803e3d6000fd5b505050505080806101c3906103b4565b915050610048565b5080156102df577f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e282826102006001826103cd565b81811061020f5761020f610358565b90506020020135604051602001610230929190918252602082015260400190565b6040516020818303038152906040528051906020012060001c7f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e28383600081811061027d5761027d610358565b9050602002013560405160200161029e929190918252602082015260400190565b60408051601f19818403018152908290528051602090910120907fdf423376f9b0ab363b1b4d6f0b4cb6821921ec30f491555a97236a8a38ce095a90600090a35b5050565b600080602083850312156102f657600080fd5b823567ffffffffffffffff8082111561030e57600080fd5b818501915085601f83011261032257600080fd5b81358181111561033157600080fd5b8660208260051b850101111561034657600080fd5b60209290920196919550909350505050565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561038057600080fd5b81516001600160a01b038116811461039757600080fd5b9392505050565b634e487b7160e01b600052601160045260246000fd5b6000600182016103c6576103c661039e565b5060010190565b818103818111156103e0576103e061039e565b9291505056fea164736f6c6343000811000a"; +const isSuperArgs = (xs) => xs.length > 1; +class DotCoinBurner__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(unsRegistry, overrides) { + return super.getDeployTransaction(unsRegistry, overrides || {}); + } + deploy(unsRegistry, overrides) { + return super.deploy(unsRegistry, overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.DotCoinBurner__factory = DotCoinBurner__factory; +DotCoinBurner__factory.bytecode = _bytecode; +DotCoinBurner__factory.abi = _abi; diff --git a/dist/types/factories/contracts/IAddressReader__factory.d.ts b/dist/types/factories/contracts/IAddressReader__factory.d.ts new file mode 100644 index 00000000..cf456fed --- /dev/null +++ b/dist/types/factories/contracts/IAddressReader__factory.d.ts @@ -0,0 +1,70 @@ +import { type ContractRunner } from "ethers"; +import type { IAddressReader, IAddressReaderInterface } from "../../contracts/IAddressReader"; +export declare class IAddressReader__factory { + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "network"; + readonly type: "string"; + }, { + readonly internalType: "string"; + readonly name: "token"; + readonly type: "string"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getAddress"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "network"; + readonly type: "string"; + }, { + readonly internalType: "string"; + readonly name: "token"; + readonly type: "string"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getAddressKey"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "network"; + readonly type: "string"; + }, { + readonly internalType: "string"; + readonly name: "token"; + readonly type: "string"; + }]; + readonly name: "getAddressKeys"; + readonly outputs: readonly [{ + readonly internalType: "string[]"; + readonly name: ""; + readonly type: "string[]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): IAddressReaderInterface; + static connect(address: string, runner?: ContractRunner | null): IAddressReader; +} +//# sourceMappingURL=IAddressReader__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/IAddressReader__factory.d.ts.map b/dist/types/factories/contracts/IAddressReader__factory.d.ts.map new file mode 100644 index 00000000..88ae50c4 --- /dev/null +++ b/dist/types/factories/contracts/IAddressReader__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IAddressReader__factory.d.ts","sourceRoot":"","sources":["../../../../types/factories/contracts/IAddressReader__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,cAAc,EACd,uBAAuB,EACxB,MAAM,gCAAgC,CAAC;AAuFxC,qBAAa,uBAAuB;IAClC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,uBAAuB;IAGjD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,cAAc;CAGlB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/IAddressReader__factory.js b/dist/types/factories/contracts/IAddressReader__factory.js new file mode 100644 index 00000000..d6a6925b --- /dev/null +++ b/dist/types/factories/contracts/IAddressReader__factory.js @@ -0,0 +1,98 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IAddressReader__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "string", + name: "network", + type: "string", + }, + { + internalType: "string", + name: "token", + type: "string", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getAddress", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "network", + type: "string", + }, + { + internalType: "string", + name: "token", + type: "string", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getAddressKey", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "network", + type: "string", + }, + { + internalType: "string", + name: "token", + type: "string", + }, + ], + name: "getAddressKeys", + outputs: [ + { + internalType: "string[]", + name: "", + type: "string[]", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class IAddressReader__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IAddressReader__factory = IAddressReader__factory; +IAddressReader__factory.abi = _abi; diff --git a/dist/types/factories/contracts/IDataReader__factory.d.ts b/dist/types/factories/contracts/IDataReader__factory.d.ts new file mode 100644 index 00000000..87de78c1 --- /dev/null +++ b/dist/types/factories/contracts/IDataReader__factory.d.ts @@ -0,0 +1,134 @@ +import { type ContractRunner } from "ethers"; +import type { IDataReader, IDataReaderInterface } from "../../contracts/IDataReader"; +export declare class IDataReader__factory { + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getData"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256[]"; + readonly name: "keyHashes"; + readonly type: "uint256[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getDataByHash"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256[]"; + readonly name: "keyHashes"; + readonly type: "uint256[]"; + }, { + readonly internalType: "uint256[]"; + readonly name: "tokenIds"; + readonly type: "uint256[]"; + }]; + readonly name: "getDataByHashForMany"; + readonly outputs: readonly [{ + readonly internalType: "address[]"; + readonly name: "resolvers"; + readonly type: "address[]"; + }, { + readonly internalType: "address[]"; + readonly name: "owners"; + readonly type: "address[]"; + }, { + readonly internalType: "string[][]"; + readonly name: "keys"; + readonly type: "string[][]"; + }, { + readonly internalType: "string[][]"; + readonly name: "values"; + readonly type: "string[][]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "uint256[]"; + readonly name: "tokenIds"; + readonly type: "uint256[]"; + }]; + readonly name: "getDataForMany"; + readonly outputs: readonly [{ + readonly internalType: "address[]"; + readonly name: "resolvers"; + readonly type: "address[]"; + }, { + readonly internalType: "address[]"; + readonly name: "owners"; + readonly type: "address[]"; + }, { + readonly internalType: "string[][]"; + readonly name: "values"; + readonly type: "string[][]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256[]"; + readonly name: "tokenIds"; + readonly type: "uint256[]"; + }]; + readonly name: "ownerOfForMany"; + readonly outputs: readonly [{ + readonly internalType: "address[]"; + readonly name: "owners"; + readonly type: "address[]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): IDataReaderInterface; + static connect(address: string, runner?: ContractRunner | null): IDataReader; +} +//# sourceMappingURL=IDataReader__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/IDataReader__factory.d.ts.map b/dist/types/factories/contracts/IDataReader__factory.d.ts.map new file mode 100644 index 00000000..6d5b9441 --- /dev/null +++ b/dist/types/factories/contracts/IDataReader__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IDataReader__factory.d.ts","sourceRoot":"","sources":["../../../../types/factories/contracts/IDataReader__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,WAAW,EACX,oBAAoB,EACrB,MAAM,6BAA6B,CAAC;AA0KrC,qBAAa,oBAAoB;IAC/B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,oBAAoB;IAG9C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,WAAW;CAG7E"} \ No newline at end of file diff --git a/dist/types/factories/contracts/IDataReader__factory.js b/dist/types/factories/contracts/IDataReader__factory.js new file mode 100644 index 00000000..341a0d83 --- /dev/null +++ b/dist/types/factories/contracts/IDataReader__factory.js @@ -0,0 +1,181 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IDataReader__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getData", + outputs: [ + { + internalType: "address", + name: "resolver", + type: "address", + }, + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256[]", + name: "keyHashes", + type: "uint256[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getDataByHash", + outputs: [ + { + internalType: "address", + name: "resolver", + type: "address", + }, + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256[]", + name: "keyHashes", + type: "uint256[]", + }, + { + internalType: "uint256[]", + name: "tokenIds", + type: "uint256[]", + }, + ], + name: "getDataByHashForMany", + outputs: [ + { + internalType: "address[]", + name: "resolvers", + type: "address[]", + }, + { + internalType: "address[]", + name: "owners", + type: "address[]", + }, + { + internalType: "string[][]", + name: "keys", + type: "string[][]", + }, + { + internalType: "string[][]", + name: "values", + type: "string[][]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "uint256[]", + name: "tokenIds", + type: "uint256[]", + }, + ], + name: "getDataForMany", + outputs: [ + { + internalType: "address[]", + name: "resolvers", + type: "address[]", + }, + { + internalType: "address[]", + name: "owners", + type: "address[]", + }, + { + internalType: "string[][]", + name: "values", + type: "string[][]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256[]", + name: "tokenIds", + type: "uint256[]", + }, + ], + name: "ownerOfForMany", + outputs: [ + { + internalType: "address[]", + name: "owners", + type: "address[]", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class IDataReader__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IDataReader__factory = IDataReader__factory; +IDataReader__factory.abi = _abi; diff --git a/dist/types/factories/contracts/IERC1967__factory.d.ts b/dist/types/factories/contracts/IERC1967__factory.d.ts new file mode 100644 index 00000000..ffb31354 --- /dev/null +++ b/dist/types/factories/contracts/IERC1967__factory.d.ts @@ -0,0 +1,33 @@ +import { type ContractRunner } from "ethers"; +import type { IERC1967, IERC1967Interface } from "../../contracts/IERC1967"; +export declare class IERC1967__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "address"; + readonly name: "previousAdmin"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "address"; + readonly name: "newAdmin"; + readonly type: "address"; + }]; + readonly name: "AdminChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "implementation"; + readonly type: "address"; + }]; + readonly name: "Upgraded"; + readonly type: "event"; + }]; + static createInterface(): IERC1967Interface; + static connect(address: string, runner?: ContractRunner | null): IERC1967; +} +//# sourceMappingURL=IERC1967__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/IERC1967__factory.d.ts.map b/dist/types/factories/contracts/IERC1967__factory.d.ts.map new file mode 100644 index 00000000..85c5f5fc --- /dev/null +++ b/dist/types/factories/contracts/IERC1967__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IERC1967__factory.d.ts","sourceRoot":"","sources":["../../../../types/factories/contracts/IERC1967__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAqC5E,qBAAa,iBAAiB;IAC5B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,iBAAiB;IAG3C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,QAAQ;CAG1E"} \ No newline at end of file diff --git a/dist/types/factories/contracts/IERC1967__factory.js b/dist/types/factories/contracts/IERC1967__factory.js new file mode 100644 index 00000000..669e4b11 --- /dev/null +++ b/dist/types/factories/contracts/IERC1967__factory.js @@ -0,0 +1,48 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IERC1967__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "previousAdmin", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "newAdmin", + type: "address", + }, + ], + name: "AdminChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "implementation", + type: "address", + }, + ], + name: "Upgraded", + type: "event", + }, +]; +class IERC1967__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IERC1967__factory = IERC1967__factory; +IERC1967__factory.abi = _abi; diff --git a/dist/types/factories/contracts/IMintingManager__factory.d.ts b/dist/types/factories/contracts/IMintingManager__factory.d.ts new file mode 100644 index 00000000..43f1f0c7 --- /dev/null +++ b/dist/types/factories/contracts/IMintingManager__factory.d.ts @@ -0,0 +1,376 @@ +import { type ContractRunner } from "ethers"; +import type { IMintingManager, IMintingManagerInterface } from "../../contracts/IMintingManager"; +export declare class IMintingManager__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "address"; + readonly name: "previousAdmin"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "address"; + readonly name: "newAdmin"; + readonly type: "address"; + }]; + readonly name: "AdminChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "sender"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "price"; + readonly type: "uint256"; + }, { + readonly indexed: false; + readonly internalType: "address"; + readonly name: "token"; + readonly type: "address"; + }]; + readonly name: "DomainPurchase"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly indexed: false; + readonly internalType: "string"; + readonly name: "tld"; + readonly type: "string"; + }]; + readonly name: "NewTld"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "RemoveTld"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "implementation"; + readonly type: "address"; + }]; + readonly name: "Upgraded"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "address"; + readonly name: "recepient"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "value"; + readonly type: "uint256"; + }, { + readonly indexed: false; + readonly internalType: "address"; + readonly name: "token"; + readonly type: "address"; + }]; + readonly name: "Withdrawal"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "tld"; + readonly type: "string"; + }, { + readonly internalType: "bool"; + readonly name: "isExpirable"; + readonly type: "bool"; + }]; + readonly name: "addTld"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "string[]"; + readonly name: "labels"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }, { + readonly internalType: "uint64"; + readonly name: "expiry"; + readonly type: "uint64"; + }, { + readonly internalType: "uint256"; + readonly name: "price"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "buy"; + readonly outputs: readonly []; + readonly stateMutability: "payable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "string[]"; + readonly name: "labels"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }, { + readonly internalType: "uint64"; + readonly name: "expiry"; + readonly type: "uint64"; + }, { + readonly internalType: "address"; + readonly name: "token"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "price"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "buyForErc20"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tld"; + readonly type: "uint256"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }]; + readonly name: "claim"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tld"; + readonly type: "uint256"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }]; + readonly name: "claimTo"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tld"; + readonly type: "uint256"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }, { + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }]; + readonly name: "claimToWithRecords"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "string[]"; + readonly name: "labels"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }, { + readonly internalType: "uint64"; + readonly name: "expiry"; + readonly type: "uint64"; + }, { + readonly internalType: "bool"; + readonly name: "withReverse"; + readonly type: "bool"; + }]; + readonly name: "issueExpirableWithRecords"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "string[]"; + readonly name: "labels"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }, { + readonly internalType: "bool"; + readonly name: "withReverse"; + readonly type: "bool"; + }]; + readonly name: "issueWithRecords"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "removeTld"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint64"; + readonly name: "expiry"; + readonly type: "uint64"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "renew"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "revoke"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "prefix"; + readonly type: "string"; + }]; + readonly name: "setTokenURIPrefix"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "recepient"; + readonly type: "address"; + }]; + readonly name: "withdraw"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "token"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "recepient"; + readonly type: "address"; + }]; + readonly name: "withdraw"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): IMintingManagerInterface; + static connect(address: string, runner?: ContractRunner | null): IMintingManager; +} +//# sourceMappingURL=IMintingManager__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/IMintingManager__factory.d.ts.map b/dist/types/factories/contracts/IMintingManager__factory.d.ts.map new file mode 100644 index 00000000..787fc50e --- /dev/null +++ b/dist/types/factories/contracts/IMintingManager__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IMintingManager__factory.d.ts","sourceRoot":"","sources":["../../../../types/factories/contracts/IMintingManager__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,eAAe,EACf,wBAAwB,EACzB,MAAM,iCAAiC,CAAC;AAydzC,qBAAa,wBAAwB;IACnC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,wBAAwB;IAGlD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,eAAe;CAGnB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/IMintingManager__factory.js b/dist/types/factories/contracts/IMintingManager__factory.js new file mode 100644 index 00000000..80734f56 --- /dev/null +++ b/dist/types/factories/contracts/IMintingManager__factory.js @@ -0,0 +1,484 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IMintingManager__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "previousAdmin", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "newAdmin", + type: "address", + }, + ], + name: "AdminChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + indexed: true, + internalType: "address", + name: "sender", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + indexed: false, + internalType: "address", + name: "token", + type: "address", + }, + ], + name: "DomainPurchase", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + indexed: false, + internalType: "string", + name: "tld", + type: "string", + }, + ], + name: "NewTld", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "RemoveTld", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "implementation", + type: "address", + }, + ], + name: "Upgraded", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "recepient", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "value", + type: "uint256", + }, + { + indexed: false, + internalType: "address", + name: "token", + type: "address", + }, + ], + name: "Withdrawal", + type: "event", + }, + { + inputs: [ + { + internalType: "string", + name: "tld", + type: "string", + }, + { + internalType: "bool", + name: "isExpirable", + type: "bool", + }, + ], + name: "addTld", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "string[]", + name: "labels", + type: "string[]", + }, + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + { + internalType: "uint64", + name: "expiry", + type: "uint64", + }, + { + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "buy", + outputs: [], + stateMutability: "payable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "string[]", + name: "labels", + type: "string[]", + }, + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + { + internalType: "uint64", + name: "expiry", + type: "uint64", + }, + { + internalType: "address", + name: "token", + type: "address", + }, + { + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "buyForErc20", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tld", + type: "uint256", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + ], + name: "claim", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tld", + type: "uint256", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + ], + name: "claimTo", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tld", + type: "uint256", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + ], + name: "claimToWithRecords", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "string[]", + name: "labels", + type: "string[]", + }, + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + { + internalType: "uint64", + name: "expiry", + type: "uint64", + }, + { + internalType: "bool", + name: "withReverse", + type: "bool", + }, + ], + name: "issueExpirableWithRecords", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "string[]", + name: "labels", + type: "string[]", + }, + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + { + internalType: "bool", + name: "withReverse", + type: "bool", + }, + ], + name: "issueWithRecords", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "removeTld", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint64", + name: "expiry", + type: "uint64", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "renew", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "revoke", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "prefix", + type: "string", + }, + ], + name: "setTokenURIPrefix", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "recepient", + type: "address", + }, + ], + name: "withdraw", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "token", + type: "address", + }, + { + internalType: "address", + name: "recepient", + type: "address", + }, + ], + name: "withdraw", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +class IMintingManager__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IMintingManager__factory = IMintingManager__factory; +IMintingManager__factory.abi = _abi; diff --git a/dist/types/factories/contracts/IRecordReader__factory.d.ts b/dist/types/factories/contracts/IRecordReader__factory.d.ts new file mode 100644 index 00000000..7e15ae5e --- /dev/null +++ b/dist/types/factories/contracts/IRecordReader__factory.d.ts @@ -0,0 +1,88 @@ +import { type ContractRunner } from "ethers"; +import type { IRecordReader, IRecordReaderInterface } from "../../contracts/IRecordReader"; +export declare class IRecordReader__factory { + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "get"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "keyHash"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getByHash"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }, { + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getMany"; + readonly outputs: readonly [{ + readonly internalType: "string[]"; + readonly name: ""; + readonly type: "string[]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256[]"; + readonly name: "keyHashes"; + readonly type: "uint256[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getManyByHash"; + readonly outputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): IRecordReaderInterface; + static connect(address: string, runner?: ContractRunner | null): IRecordReader; +} +//# sourceMappingURL=IRecordReader__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/IRecordReader__factory.d.ts.map b/dist/types/factories/contracts/IRecordReader__factory.d.ts.map new file mode 100644 index 00000000..a333bddb --- /dev/null +++ b/dist/types/factories/contracts/IRecordReader__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IRecordReader__factory.d.ts","sourceRoot":"","sources":["../../../../types/factories/contracts/IRecordReader__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,aAAa,EACb,sBAAsB,EACvB,MAAM,+BAA+B,CAAC;AA+GvC,qBAAa,sBAAsB;IACjC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,sBAAsB;IAGhD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,aAAa;CAGjB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/IRecordReader__factory.js b/dist/types/factories/contracts/IRecordReader__factory.js new file mode 100644 index 00000000..28373789 --- /dev/null +++ b/dist/types/factories/contracts/IRecordReader__factory.js @@ -0,0 +1,122 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IRecordReader__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "string", + name: "key", + type: "string", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "get", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "keyHash", + type: "uint256", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getByHash", + outputs: [ + { + internalType: "string", + name: "key", + type: "string", + }, + { + internalType: "string", + name: "value", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getMany", + outputs: [ + { + internalType: "string[]", + name: "", + type: "string[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256[]", + name: "keyHashes", + type: "uint256[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getManyByHash", + outputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class IRecordReader__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IRecordReader__factory = IRecordReader__factory; +IRecordReader__factory.abi = _abi; diff --git a/dist/types/factories/contracts/IRecordStorage__factory.d.ts b/dist/types/factories/contracts/IRecordStorage__factory.d.ts new file mode 100644 index 00000000..8c223d19 --- /dev/null +++ b/dist/types/factories/contracts/IRecordStorage__factory.d.ts @@ -0,0 +1,248 @@ +import { type ContractRunner } from "ethers"; +import type { IRecordStorage, IRecordStorageInterface } from "../../contracts/IRecordStorage"; +export declare class IRecordStorage__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly indexed: true; + readonly internalType: "string"; + readonly name: "keyIndex"; + readonly type: "string"; + }, { + readonly indexed: false; + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }]; + readonly name: "NewKey"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "ResetRecords"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly indexed: true; + readonly internalType: "string"; + readonly name: "keyIndex"; + readonly type: "string"; + }, { + readonly indexed: true; + readonly internalType: "string"; + readonly name: "valueIndex"; + readonly type: "string"; + }, { + readonly indexed: false; + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }, { + readonly indexed: false; + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }]; + readonly name: "Set"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "get"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "keyHash"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getByHash"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }, { + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getMany"; + readonly outputs: readonly [{ + readonly internalType: "string[]"; + readonly name: ""; + readonly type: "string[]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256[]"; + readonly name: "keyHashes"; + readonly type: "uint256[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getManyByHash"; + readonly outputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "reconfigure"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "reset"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }, { + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "set"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "keyHash"; + readonly type: "uint256"; + }, { + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "setByHash"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "setMany"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256[]"; + readonly name: "keyHashes"; + readonly type: "uint256[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "setManyByHash"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): IRecordStorageInterface; + static connect(address: string, runner?: ContractRunner | null): IRecordStorage; +} +//# sourceMappingURL=IRecordStorage__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/IRecordStorage__factory.d.ts.map b/dist/types/factories/contracts/IRecordStorage__factory.d.ts.map new file mode 100644 index 00000000..890bf0c1 --- /dev/null +++ b/dist/types/factories/contracts/IRecordStorage__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IRecordStorage__factory.d.ts","sourceRoot":"","sources":["../../../../types/factories/contracts/IRecordStorage__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,cAAc,EACd,uBAAuB,EACxB,MAAM,gCAAgC,CAAC;AA0TxC,qBAAa,uBAAuB;IAClC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,uBAAuB;IAGjD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,cAAc;CAGlB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/IRecordStorage__factory.js b/dist/types/factories/contracts/IRecordStorage__factory.js new file mode 100644 index 00000000..a0a1be59 --- /dev/null +++ b/dist/types/factories/contracts/IRecordStorage__factory.js @@ -0,0 +1,325 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IRecordStorage__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + indexed: true, + internalType: "string", + name: "keyIndex", + type: "string", + }, + { + indexed: false, + internalType: "string", + name: "key", + type: "string", + }, + ], + name: "NewKey", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "ResetRecords", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + indexed: true, + internalType: "string", + name: "keyIndex", + type: "string", + }, + { + indexed: true, + internalType: "string", + name: "valueIndex", + type: "string", + }, + { + indexed: false, + internalType: "string", + name: "key", + type: "string", + }, + { + indexed: false, + internalType: "string", + name: "value", + type: "string", + }, + ], + name: "Set", + type: "event", + }, + { + inputs: [ + { + internalType: "string", + name: "key", + type: "string", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "get", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "keyHash", + type: "uint256", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getByHash", + outputs: [ + { + internalType: "string", + name: "key", + type: "string", + }, + { + internalType: "string", + name: "value", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getMany", + outputs: [ + { + internalType: "string[]", + name: "", + type: "string[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256[]", + name: "keyHashes", + type: "uint256[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getManyByHash", + outputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "reconfigure", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "reset", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "key", + type: "string", + }, + { + internalType: "string", + name: "value", + type: "string", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "set", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "keyHash", + type: "uint256", + }, + { + internalType: "string", + name: "value", + type: "string", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "setByHash", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "setMany", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256[]", + name: "keyHashes", + type: "uint256[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "setManyByHash", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +class IRecordStorage__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IRecordStorage__factory = IRecordStorage__factory; +IRecordStorage__factory.abi = _abi; diff --git a/dist/types/factories/contracts/IRegistryReader__factory.d.ts b/dist/types/factories/contracts/IRegistryReader__factory.d.ts new file mode 100644 index 00000000..abf5b267 --- /dev/null +++ b/dist/types/factories/contracts/IRegistryReader__factory.d.ts @@ -0,0 +1,170 @@ +import { type ContractRunner } from "ethers"; +import type { IRegistryReader, IRegistryReaderInterface } from "../../contracts/IRegistryReader"; +export declare class IRegistryReader__factory { + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "balanceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "exists"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getApproved"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly name: "isApprovedForAll"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "spender"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "isApprovedOrOwner"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "labels"; + readonly type: "string[]"; + }]; + readonly name: "namehash"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "ownerOf"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "resolverOf"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }]; + readonly name: "reverseNameOf"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }]; + readonly name: "reverseOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "tokenURI"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): IRegistryReaderInterface; + static connect(address: string, runner?: ContractRunner | null): IRegistryReader; +} +//# sourceMappingURL=IRegistryReader__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/IRegistryReader__factory.d.ts.map b/dist/types/factories/contracts/IRegistryReader__factory.d.ts.map new file mode 100644 index 00000000..8d6f503b --- /dev/null +++ b/dist/types/factories/contracts/IRegistryReader__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IRegistryReader__factory.d.ts","sourceRoot":"","sources":["../../../../types/factories/contracts/IRegistryReader__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,eAAe,EACf,wBAAwB,EACzB,MAAM,iCAAiC,CAAC;AAgOzC,qBAAa,wBAAwB;IACnC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,wBAAwB;IAGlD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,eAAe;CAGnB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/IRegistryReader__factory.js b/dist/types/factories/contracts/IRegistryReader__factory.js new file mode 100644 index 00000000..c0add71b --- /dev/null +++ b/dist/types/factories/contracts/IRegistryReader__factory.js @@ -0,0 +1,235 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IRegistryReader__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "exists", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getApproved", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + name: "isApprovedForAll", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "spender", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "isApprovedOrOwner", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string[]", + name: "labels", + type: "string[]", + }, + ], + name: "namehash", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "ownerOf", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "resolverOf", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "reverseNameOf", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "reverseOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "tokenURI", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class IRegistryReader__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IRegistryReader__factory = IRegistryReader__factory; +IRegistryReader__factory.abi = _abi; diff --git a/dist/types/factories/contracts/IReverseRegistry__factory.d.ts b/dist/types/factories/contracts/IReverseRegistry__factory.d.ts new file mode 100644 index 00000000..a1ee4d2b --- /dev/null +++ b/dist/types/factories/contracts/IReverseRegistry__factory.d.ts @@ -0,0 +1,77 @@ +import { type ContractRunner } from "ethers"; +import type { IReverseRegistry, IReverseRegistryInterface } from "../../contracts/IReverseRegistry"; +export declare class IReverseRegistry__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }]; + readonly name: "RemoveReverse"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "SetReverse"; + readonly type: "event"; + }, { + readonly inputs: readonly []; + readonly name: "removeReverse"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }]; + readonly name: "reverseNameOf"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }]; + readonly name: "reverseOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "labels"; + readonly type: "string[]"; + }]; + readonly name: "setReverse"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): IReverseRegistryInterface; + static connect(address: string, runner?: ContractRunner | null): IReverseRegistry; +} +//# sourceMappingURL=IReverseRegistry__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/IReverseRegistry__factory.d.ts.map b/dist/types/factories/contracts/IReverseRegistry__factory.d.ts.map new file mode 100644 index 00000000..8ad36077 --- /dev/null +++ b/dist/types/factories/contracts/IReverseRegistry__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IReverseRegistry__factory.d.ts","sourceRoot":"","sources":["../../../../types/factories/contracts/IReverseRegistry__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,gBAAgB,EAChB,yBAAyB,EAC1B,MAAM,kCAAkC,CAAC;AA+F1C,qBAAa,yBAAyB;IACpC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,yBAAyB;IAGnD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,gBAAgB;CAGpB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/IReverseRegistry__factory.js b/dist/types/factories/contracts/IReverseRegistry__factory.js new file mode 100644 index 00000000..f3d3d6fe --- /dev/null +++ b/dist/types/factories/contracts/IReverseRegistry__factory.js @@ -0,0 +1,106 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IReverseRegistry__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "RemoveReverse", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "addr", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "SetReverse", + type: "event", + }, + { + inputs: [], + name: "removeReverse", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "reverseNameOf", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "reverseOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string[]", + name: "labels", + type: "string[]", + }, + ], + name: "setReverse", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +class IReverseRegistry__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IReverseRegistry__factory = IReverseRegistry__factory; +IReverseRegistry__factory.abi = _abi; diff --git a/dist/types/factories/contracts/IRootRegistry__factory.d.ts b/dist/types/factories/contracts/IRootRegistry__factory.d.ts new file mode 100644 index 00000000..4ad31336 --- /dev/null +++ b/dist/types/factories/contracts/IRootRegistry__factory.d.ts @@ -0,0 +1,306 @@ +import { type ContractRunner } from "ethers"; +import type { IRootRegistry, IRootRegistryInterface } from "../../contracts/IRootRegistry"; +export declare class IRootRegistry__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "approved"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Approval"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "ApprovalForAll"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Transfer"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "approve"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "balanceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "balance"; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "depositToPolygon"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "exists"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getApproved"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly name: "isApprovedForAll"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "user"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "mint"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "user"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "metaData"; + readonly type: "bytes"; + }]; + readonly name: "mint"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "ownerOf"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly internalType: "bool"; + readonly name: "_approved"; + readonly type: "bool"; + }]; + readonly name: "setApprovalForAll"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "transferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes"; + readonly name: "inputData"; + readonly type: "bytes"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }]; + readonly name: "withdrawFromPolygon"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): IRootRegistryInterface; + static connect(address: string, runner?: ContractRunner | null): IRootRegistry; +} +//# sourceMappingURL=IRootRegistry__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/IRootRegistry__factory.d.ts.map b/dist/types/factories/contracts/IRootRegistry__factory.d.ts.map new file mode 100644 index 00000000..51426eb2 --- /dev/null +++ b/dist/types/factories/contracts/IRootRegistry__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IRootRegistry__factory.d.ts","sourceRoot":"","sources":["../../../../types/factories/contracts/IRootRegistry__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,aAAa,EACb,sBAAsB,EACvB,MAAM,+BAA+B,CAAC;AAuYvC,qBAAa,sBAAsB;IACjC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,sBAAsB;IAGhD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,aAAa;CAGjB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/IRootRegistry__factory.js b/dist/types/factories/contracts/IRootRegistry__factory.js new file mode 100644 index 00000000..97802903 --- /dev/null +++ b/dist/types/factories/contracts/IRootRegistry__factory.js @@ -0,0 +1,402 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IRootRegistry__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "approved", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Approval", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "ApprovalForAll", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Transfer", + type: "event", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "approve", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "balance", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "depositToPolygon", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "exists", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getApproved", + outputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + name: "isApprovedForAll", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "user", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "mint", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "user", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "metaData", + type: "bytes", + }, + ], + name: "mint", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "ownerOf", + outputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "bool", + name: "_approved", + type: "bool", + }, + ], + name: "setApprovalForAll", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "transferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes", + name: "inputData", + type: "bytes", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + ], + name: "withdrawFromPolygon", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +class IRootRegistry__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IRootRegistry__factory = IRootRegistry__factory; +IRootRegistry__factory.abi = _abi; diff --git a/dist/types/factories/contracts/IUNSRegistry__factory.d.ts b/dist/types/factories/contracts/IUNSRegistry__factory.d.ts new file mode 100644 index 00000000..eca5835e --- /dev/null +++ b/dist/types/factories/contracts/IUNSRegistry__factory.d.ts @@ -0,0 +1,966 @@ +import { type ContractRunner } from "ethers"; +import type { IUNSRegistry, IUNSRegistryInterface } from "../../contracts/IUNSRegistry"; +export declare class IUNSRegistry__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "address"; + readonly name: "previousAdmin"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "address"; + readonly name: "newAdmin"; + readonly type: "address"; + }]; + readonly name: "AdminChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "approved"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Approval"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "ApprovalForAll"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly indexed: true; + readonly internalType: "string"; + readonly name: "keyIndex"; + readonly type: "string"; + }, { + readonly indexed: false; + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }]; + readonly name: "NewKey"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly indexed: false; + readonly internalType: "string"; + readonly name: "uri"; + readonly type: "string"; + }]; + readonly name: "NewURI"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "string"; + readonly name: "prefix"; + readonly type: "string"; + }]; + readonly name: "NewURIPrefix"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }]; + readonly name: "RemoveReverse"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "ResetRecords"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly indexed: true; + readonly internalType: "string"; + readonly name: "keyIndex"; + readonly type: "string"; + }, { + readonly indexed: true; + readonly internalType: "string"; + readonly name: "valueIndex"; + readonly type: "string"; + }, { + readonly indexed: false; + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }, { + readonly indexed: false; + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }]; + readonly name: "Set"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly indexed: false; + readonly internalType: "uint64"; + readonly name: "expiry"; + readonly type: "uint64"; + }]; + readonly name: "SetExpiry"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "SetReverse"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Transfer"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "implementation"; + readonly type: "address"; + }]; + readonly name: "Upgraded"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }]; + readonly name: "addProxyReader"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "approve"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "balanceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "balance"; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "burn"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "user"; + readonly type: "address"; + }, { + readonly internalType: "bytes"; + readonly name: "depositData"; + readonly type: "bytes"; + }]; + readonly name: "deposit"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "depositToPolygon"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "exists"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "expiryOf"; + readonly outputs: readonly [{ + readonly internalType: "uint64"; + readonly name: ""; + readonly type: "uint64"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "get"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getApproved"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "keyHash"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getByHash"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }, { + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getMany"; + readonly outputs: readonly [{ + readonly internalType: "string[]"; + readonly name: ""; + readonly type: "string[]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256[]"; + readonly name: "keyHashes"; + readonly type: "uint256[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getManyByHash"; + readonly outputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly name: "isApprovedForAll"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "spender"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "isApprovedOrOwner"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "isExpired"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "user"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "mint"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "user"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "metaData"; + readonly type: "bytes"; + }]; + readonly name: "mint"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "string"; + readonly name: "uri"; + readonly type: "string"; + }]; + readonly name: "mintTLD"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "string[]"; + readonly name: "labels"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }, { + readonly internalType: "bool"; + readonly name: "withReverse"; + readonly type: "bool"; + }]; + readonly name: "mintWithRecords"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "name"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "labels"; + readonly type: "string[]"; + }]; + readonly name: "namehash"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "pure"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "onERC721Received"; + readonly outputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: ""; + readonly type: "bytes4"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "ownerOf"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "reconfigure"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "removeReverse"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "reset"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "resolverOf"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }]; + readonly name: "reverseNameOf"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }]; + readonly name: "reverseOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }, { + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "set"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly internalType: "bool"; + readonly name: "_approved"; + readonly type: "bool"; + }]; + readonly name: "setApprovalForAll"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "keyHash"; + readonly type: "uint256"; + }, { + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "setByHash"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint64"; + readonly name: "expiry"; + readonly type: "uint64"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "setExpiry"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "setMany"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256[]"; + readonly name: "keyHashes"; + readonly type: "uint256[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "setManyByHash"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "setOwner"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "labels"; + readonly type: "string[]"; + }]; + readonly name: "setReverse"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "prefix"; + readonly type: "string"; + }]; + readonly name: "setTokenURIPrefix"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "symbol"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "tokenURI"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "transferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "unlock"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "string[]"; + readonly name: "labels"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }, { + readonly internalType: "bool"; + readonly name: "withReverse"; + readonly type: "bool"; + }]; + readonly name: "unlockWithRecords"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes"; + readonly name: "inputData"; + readonly type: "bytes"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }]; + readonly name: "withdrawFromPolygon"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): IUNSRegistryInterface; + static connect(address: string, runner?: ContractRunner | null): IUNSRegistry; +} +//# sourceMappingURL=IUNSRegistry__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/IUNSRegistry__factory.d.ts.map b/dist/types/factories/contracts/IUNSRegistry__factory.d.ts.map new file mode 100644 index 00000000..1a2dcf89 --- /dev/null +++ b/dist/types/factories/contracts/IUNSRegistry__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IUNSRegistry__factory.d.ts","sourceRoot":"","sources":["../../../../types/factories/contracts/IUNSRegistry__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,YAAY,EACZ,qBAAqB,EACtB,MAAM,8BAA8B,CAAC;AA+tCtC,qBAAa,qBAAqB;IAChC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,qBAAqB;IAG/C,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,YAAY;CAGhB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/IUNSRegistry__factory.js b/dist/types/factories/contracts/IUNSRegistry__factory.js new file mode 100644 index 00000000..a244a48f --- /dev/null +++ b/dist/types/factories/contracts/IUNSRegistry__factory.js @@ -0,0 +1,1258 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IUNSRegistry__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "previousAdmin", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "newAdmin", + type: "address", + }, + ], + name: "AdminChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "approved", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Approval", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "ApprovalForAll", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + indexed: true, + internalType: "string", + name: "keyIndex", + type: "string", + }, + { + indexed: false, + internalType: "string", + name: "key", + type: "string", + }, + ], + name: "NewKey", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + indexed: false, + internalType: "string", + name: "uri", + type: "string", + }, + ], + name: "NewURI", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "string", + name: "prefix", + type: "string", + }, + ], + name: "NewURIPrefix", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "RemoveReverse", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "ResetRecords", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + indexed: true, + internalType: "string", + name: "keyIndex", + type: "string", + }, + { + indexed: true, + internalType: "string", + name: "valueIndex", + type: "string", + }, + { + indexed: false, + internalType: "string", + name: "key", + type: "string", + }, + { + indexed: false, + internalType: "string", + name: "value", + type: "string", + }, + ], + name: "Set", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + indexed: false, + internalType: "uint64", + name: "expiry", + type: "uint64", + }, + ], + name: "SetExpiry", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "addr", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "SetReverse", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Transfer", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "implementation", + type: "address", + }, + ], + name: "Upgraded", + type: "event", + }, + { + inputs: [ + { + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "addProxyReader", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "approve", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "balance", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "burn", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "user", + type: "address", + }, + { + internalType: "bytes", + name: "depositData", + type: "bytes", + }, + ], + name: "deposit", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "depositToPolygon", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "exists", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "expiryOf", + outputs: [ + { + internalType: "uint64", + name: "", + type: "uint64", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "key", + type: "string", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "get", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getApproved", + outputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "keyHash", + type: "uint256", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getByHash", + outputs: [ + { + internalType: "string", + name: "key", + type: "string", + }, + { + internalType: "string", + name: "value", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getMany", + outputs: [ + { + internalType: "string[]", + name: "", + type: "string[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256[]", + name: "keyHashes", + type: "uint256[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getManyByHash", + outputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + name: "isApprovedForAll", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "spender", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "isApprovedOrOwner", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "isExpired", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "user", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "mint", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "user", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "metaData", + type: "bytes", + }, + ], + name: "mint", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "string", + name: "uri", + type: "string", + }, + ], + name: "mintTLD", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "string[]", + name: "labels", + type: "string[]", + }, + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + { + internalType: "bool", + name: "withReverse", + type: "bool", + }, + ], + name: "mintWithRecords", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "name", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string[]", + name: "labels", + type: "string[]", + }, + ], + name: "namehash", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "pure", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "onERC721Received", + outputs: [ + { + internalType: "bytes4", + name: "", + type: "bytes4", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "ownerOf", + outputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "reconfigure", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "removeReverse", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "reset", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "resolverOf", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "reverseNameOf", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "reverseOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "key", + type: "string", + }, + { + internalType: "string", + name: "value", + type: "string", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "set", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "bool", + name: "_approved", + type: "bool", + }, + ], + name: "setApprovalForAll", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "keyHash", + type: "uint256", + }, + { + internalType: "string", + name: "value", + type: "string", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "setByHash", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint64", + name: "expiry", + type: "uint64", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "setExpiry", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "setMany", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256[]", + name: "keyHashes", + type: "uint256[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "setManyByHash", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "setOwner", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string[]", + name: "labels", + type: "string[]", + }, + ], + name: "setReverse", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "prefix", + type: "string", + }, + ], + name: "setTokenURIPrefix", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "symbol", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "tokenURI", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "transferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "unlock", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "string[]", + name: "labels", + type: "string[]", + }, + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + { + internalType: "bool", + name: "withReverse", + type: "bool", + }, + ], + name: "unlockWithRecords", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes", + name: "inputData", + type: "bytes", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + ], + name: "withdrawFromPolygon", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +class IUNSRegistry__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IUNSRegistry__factory = IUNSRegistry__factory; +IUNSRegistry__factory.abi = _abi; diff --git a/dist/types/factories/contracts/KeyStorage__factory.d.ts b/dist/types/factories/contracts/KeyStorage__factory.d.ts new file mode 100644 index 00000000..f57bc1f3 --- /dev/null +++ b/dist/types/factories/contracts/KeyStorage__factory.d.ts @@ -0,0 +1,46 @@ +import { type ContractRunner } from "ethers"; +import type { KeyStorage, KeyStorageInterface } from "../../contracts/KeyStorage"; +export declare class KeyStorage__factory { + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }]; + readonly name: "addKey"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "keyHash"; + readonly type: "uint256"; + }]; + readonly name: "getKey"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256[]"; + readonly name: "hashes"; + readonly type: "uint256[]"; + }]; + readonly name: "getKeys"; + readonly outputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): KeyStorageInterface; + static connect(address: string, runner?: ContractRunner | null): KeyStorage; +} +//# sourceMappingURL=KeyStorage__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/KeyStorage__factory.d.ts.map b/dist/types/factories/contracts/KeyStorage__factory.d.ts.map new file mode 100644 index 00000000..21057696 --- /dev/null +++ b/dist/types/factories/contracts/KeyStorage__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"KeyStorage__factory.d.ts","sourceRoot":"","sources":["../../../../types/factories/contracts/KeyStorage__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,UAAU,EACV,mBAAmB,EACpB,MAAM,4BAA4B,CAAC;AAwDpC,qBAAa,mBAAmB;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,mBAAmB;IAG7C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,UAAU;CAG5E"} \ No newline at end of file diff --git a/dist/types/factories/contracts/KeyStorage__factory.js b/dist/types/factories/contracts/KeyStorage__factory.js new file mode 100644 index 00000000..bddd835b --- /dev/null +++ b/dist/types/factories/contracts/KeyStorage__factory.js @@ -0,0 +1,67 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.KeyStorage__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "string", + name: "key", + type: "string", + }, + ], + name: "addKey", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "keyHash", + type: "uint256", + }, + ], + name: "getKey", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256[]", + name: "hashes", + type: "uint256[]", + }, + ], + name: "getKeys", + outputs: [ + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class KeyStorage__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.KeyStorage__factory = KeyStorage__factory; +KeyStorage__factory.abi = _abi; diff --git a/dist/types/factories/contracts/MintingManager__factory.d.ts b/dist/types/factories/contracts/MintingManager__factory.d.ts new file mode 100644 index 00000000..b64b71cb --- /dev/null +++ b/dist/types/factories/contracts/MintingManager__factory.d.ts @@ -0,0 +1,920 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../common"; +import type { MintingManager, MintingManagerInterface } from "../../contracts/MintingManager"; +declare type MintingManagerConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class MintingManager__factory extends ContractFactory { + constructor(...args: MintingManagerConstructorParams); + getDeployTransaction(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): MintingManager__factory; + static readonly bytecode = "0x608060405234801561001057600080fd5b50614f20806100206000396000f3fe6080604052600436106102ae5760003560e01c8063906cecc111610175578063b9998a24116100dc578063d547741f11610095578063f2fde38b1161006f578063f2fde38b14610892578063f5243bc4146108b2578063f940e385146108d2578063ffa1ad74146108f257600080fd5b8063d547741f1461083f578063d7db74c71461085f578063ec5273891461087257600080fd5b8063b9998a241461077d578063cc2a9a5b1461079d578063cc2c3fc4146107bd578063ceeb4f50146107dd578063d1f5692c146107fd578063d53913931461081d57600080fd5b8063a3a3f7f61161012e578063a3a3f7f614610690578063a3f4df7e146106b0578063a849d65c146106fd578063aa271e1a1461071d578063b0aa98c71461073d578063b3ab15fb1461075d57600080fd5b8063906cecc1146105e657806391d1485414610606578063983b2d5614610626578063986502751461064657806399e0dd7c1461065b578063a217fddf1461067b57600080fd5b80635b6fa8db11610219578063715018a6116101d2578063715018a61461054b57806371e2a6571461056057806377a2a5891461058057806381c81d35146105a05780638456cb59146105b35780638da5cb5b146105c857600080fd5b80635b6fa8db146104a35780635c975abb146104c35780635cd7e3b3146104d85780635e22cd86146104f85780635fc1964f14610518578063634486da1461053857600080fd5b80633092afd51161026b5780633092afd5146103a857806336568abe146103c85780633f41b614146103e85780633f4ba83a1461042057806351cff8d914610435578063572b6c051461045557600080fd5b806301ffc9a7146102b35780631edb948e146102e857806320c5429b1461030a578063248a9ca31461032a578063268b15ed146103685780632f2ff15d14610388575b600080fd5b3480156102bf57600080fd5b506102d36102ce366004613dc4565b610923565b60405190151581526020015b60405180910390f35b3480156102f457600080fd5b50610308610303366004613e13565b61095a565b005b34801561031657600080fd5b50610308610325366004613e3f565b610b03565b34801561033657600080fd5b5061035a610345366004613e3f565b60009081526097602052604090206001015490565b6040519081526020016102df565b34801561037457600080fd5b50610308610383366004613e99565b610c26565b34801561039457600080fd5b506103086103a3366004613f04565b610cb9565b3480156103b457600080fd5b506103086103c3366004613f34565b610ce3565b3480156103d457600080fd5b506103086103e3366004613f04565b610cf7565b3480156103f457600080fd5b5060c954610408906001600160a01b031681565b6040516001600160a01b0390911681526020016102df565b34801561042c57600080fd5b50610308610d85565b34801561044157600080fd5b50610308610450366004613f34565b610d97565b34801561046157600080fd5b506102d3610470366004613f34565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546001600160a01b0390811691161490565b3480156104af57600080fd5b5060cc54610408906001600160a01b031681565b3480156104cf57600080fd5b506102d3610e37565b3480156104e457600080fd5b506103086104f3366004613fa3565b610e4d565b34801561050457600080fd5b50610308610513366004614062565b6110b1565b34801561052457600080fd5b5061030861053336600461419c565b6112f6565b610308610546366004613f34565b61133e565b34801561055757600080fd5b50610308611401565b34801561056c57600080fd5b5061030861057b36600461419c565b611413565b34801561058c57600080fd5b5060ce54610408906001600160a01b031681565b6103086105ae366004613f34565b61145b565b3480156105bf57600080fd5b506103086114d8565b3480156105d457600080fd5b506033546001600160a01b0316610408565b3480156105f257600080fd5b5061030861060136600461423a565b6114e8565b34801561061257600080fd5b506102d3610621366004613f04565b61156e565b34801561063257600080fd5b50610308610641366004613f34565b611599565b34801561065257600080fd5b506103086115aa565b34801561066757600080fd5b50610308610676366004614295565b6115c4565b34801561068757600080fd5b5061035a600081565b34801561069c57600080fd5b506103086106ab3660046142d6565b6116ab565b3480156106bc57600080fd5b506106f0604051806040016040528060148152602001732aa7299d1026b4b73a34b7339026b0b730b3b2b960611b81525081565b6040516102df919061437c565b34801561070957600080fd5b5060cb54610408906001600160a01b031681565b34801561072957600080fd5b506102d3610738366004613f34565b6116f4565b34801561074957600080fd5b506102d3610758366004613e3f565b61170e565b34801561076957600080fd5b50610308610778366004613f34565b61176c565b34801561078957600080fd5b50610308610798366004613f34565b611796565b3480156107a957600080fd5b506103086107b836600461438f565b6117db565b3480156107c957600080fd5b5060ca54610408906001600160a01b031681565b3480156107e957600080fd5b506103086107f8366004614411565b611cd2565b34801561080957600080fd5b506103086108183660046144c6565b611d76565b34801561082957600080fd5b5061035a600080516020614ef483398151915281565b34801561084b57600080fd5b5061030861085a366004613f04565b611e2d565b61030861086d3660046144fb565b611e52565b34801561087e57600080fd5b5061030861088d366004613e3f565b611fe2565b34801561089e57600080fd5b506103086108ad366004613f34565b612054565b3480156108be57600080fd5b506103086108cd3660046145f0565b612070565b3480156108de57600080fd5b506103086108ed366004614708565b612222565b3480156108fe57600080fd5b506106f060405180604001604052806005815260200164302e352e3160d81b81525081565b60006001600160e01b03198216637965db0b60e01b148061095457506301ffc9a760e01b6001600160e01b03198316145b92915050565b61096561073861239e565b61098a5760405162461bcd60e51b815260040161098190614736565b60405180910390fd5b60c95460405163baef73e960e01b8152600481018390526000916001600160a01b03169063baef73e990602401602060405180830381865afa1580156109d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109f8919061476b565b9050806001600160401b0316600003610a235760405162461bcd60e51b815260040161098190614788565b806001600160401b0316836001600160401b031611610a905760405162461bcd60e51b815260206004820152602360248201527f4d696e74696e674d616e616765723a204558504952595f4e4f545f455854454e60448201526211115160ea1b6064820152608401610981565b60c954604051631fb9763760e11b81526001600160401b0385166004820152602481018490526001600160a01b0390911690633f72ec6e906044015b600060405180830381600087803b158015610ae657600080fd5b505af1158015610afa573d6000803e3d6000fd5b50505050505050565b610b0e61073861239e565b610b2a5760405162461bcd60e51b815260040161098190614736565b60c95460405163baef73e960e01b8152600481018390526001600160a01b039091169063baef73e990602401602060405180830381865afa158015610b73573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b97919061476b565b6001600160401b0316600003610bbf5760405162461bcd60e51b815260040161098190614788565b60c954604051637eee288d60e01b8152306004820152602481018390526001600160a01b0390911690637eee288d90604401600060405180830381600087803b158015610c0b57600080fd5b505af1158015610c1f573d6000803e3d6000fd5b5050505050565b8282828080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250610c6993508592508491506123ad565b610c71610e37565b15610c8e5760405162461bcd60e51b8152600401610981906147cb565b6060610afa610c9b61239e565b610cae88610ca98989612584565b6125b0565b8384600060016126c1565b600082815260976020526040902060010154610cd481612c15565b610cde8383612c26565b505050565b610ceb612cad565b610cf481612d26565b50565b610cff61239e565b6001600160a01b0316816001600160a01b031614610d775760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610981565b610d818282612d3e565b5050565b610d8d612cad565b610d95612dc3565b565b610d9f612cad565b6001600160a01b038116610db257600080fd5b60405147906001600160a01b0383169082156108fc029083906000818181858888f19350505050158015610dea573d6000803e3d6000fd5b50604080516001600160a01b03841681526020810183905260008183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a15050565b600080516020614ed48339815191525460ff1690565b610e5786886147f5565b8051600203610e8c57610e6b61073861239e565b610e875760405162461bcd60e51b8152600401610981906148bf565b610fd1565b6000610e9782612e6b565b60c9549092506001600160a01b0316905063430c2081610eb561239e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015610f00573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f249190614903565b80610fb3575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa158015610f7d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fa19190614903565b8015610fb35750610fb361073861239e565b610fcf5760405162461bcd60e51b815260040161098190614920565b505b610fdb87896147f5565b6000600282511015610fff5760405162461bcd60e51b81526004016109819061496f565b6110546110336000846001865161101691906149ca565b81518110611026576110266149dd565b6020026020010151612ea6565b83600081518110611046576110466149dd565b6020026020010151836123ad565b61105c610e37565b156110795760405162461bcd60e51b8152600401610981906147cb565b6110a38b6110878b8d6147f5565b6110918a8c6147f5565b61109b898b6147f5565b6000896126c1565b505050505050505050505050565b6110bb87896147f5565b80516002036110f0576110cf61073861239e565b6110eb5760405162461bcd60e51b8152600401610981906148bf565b611235565b60006110fb82612e6b565b60c9549092506001600160a01b0316905063430c208161111961239e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015611164573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111889190614903565b80611217575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa1580156111e1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112059190614903565b8015611217575061121761073861239e565b6112335760405162461bcd60e51b815260040161098190614920565b505b61123f888a6147f5565b836002825110156112625760405162461bcd60e51b81526004016109819061496f565b6112796110336000846001865161101691906149ca565b611281610e37565b1561129e5760405162461bcd60e51b8152600401610981906147cb565b60028a146112be5760405162461bcd60e51b8152600401610981906149f3565b6112e78c6112cc8c8e6147f5565b6112d68b8d6147f5565b6112e08a8c6147f5565b89896126c1565b50505050505050505050505050565b6112fe612cad565b60005b8151811015610d815761132c82828151811061131f5761131f6149dd565b6020026020010151612d26565b8061133681614a39565b915050611301565b61134961073861239e565b6113655760405162461bcd60e51b815260040161098190614736565b6001600160a01b0381166113bb5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610981565b6113c481612f5a565b6113cc6115aa565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610d81573d6000803e3d6000fd5b611409612cad565b610d956000612f72565b61141b612cad565b60005b8151811015610d815761144982828151811061143c5761143c6149dd565b6020026020010151612f5a565b8061145381614a39565b91505061141e565b61146661073861239e565b6114825760405162461bcd60e51b815260040161098190614736565b6001600160a01b0381166113c45760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610981565b6114e0612cad565b610d95612fc4565b8282828080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525061152b93508592508491506123ad565b611533610e37565b156115505760405162461bcd60e51b8152600401610981906147cb565b606061156487610cae88610ca98989612584565b5050505050505050565b60009182526097602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6115a1612cad565b610cf481612f5a565b610d95600080516020614ef48339815191526103e361239e565b6115cc612cad565b60c954604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906115fe9085908590600401614a52565b600060405180830381600087803b15801561161857600080fd5b505af115801561162c573d6000803e3d6000fd5b505060cb546001600160a01b0316159150610d8190505760cb54604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906116759085908590600401614a52565b600060405180830381600087803b15801561168f57600080fd5b505af11580156116a3573d6000803e3d6000fd5b505050505050565b6116b3612cad565b610cde83838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525085925061302c915050565b6000610954600080516020614ef48339815191528361156e565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd696020820152908101829052600090611762906060015b6040516020818303038152906040528051906020012090565b5460ff1692915050565b611774612cad565b60ce80546001600160a01b0319166001600160a01b0392909216919091179055565b61179e612cad565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e80546001600160a01b0319166001600160a01b03831617905550565b600054610100900460ff16158080156117fb5750600054600160ff909116105b806118155750303b158015611815575060005460ff166001145b6118785760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610981565b6000805460ff19166001179055801561189b576000805461ff0019166101001790555b60c980546001600160a01b03199081166001600160a01b038a81169190911790925560ca8054821689841617905560cb8054821688841617905560cc8054821687841617905560ce80549091169185169190911790556118f961314c565b611901613183565b61190a826131bc565b6119126131e3565b6040805161036081018252600661032082018181526563727970746f60d01b610340840152825282518084018452818152651dd85b1b195d60d21b602082810191909152808401919091528351808501855260018152600f60fb1b8183015283850152835180850185526003808252621b999d60ea1b82840152606085019190915284518086018652600a815269313637b1b5b1b430b4b760b11b818401526080850152845180860186526007808252663134ba31b7b4b760c91b8285015260a0860191909152855180870187528281526207070760eb1b8185015260c0860152855180870187528281526264616f60e81b8185015260e086015285518087018752828152621e9a5b60ea1b8185015261010086015285518087018752908152663837b63cb3b7b760c91b8184015261012085015284518086018652600b81526a756e73746f707061626c6560a81b81840152610140850152845180860186528381526535b632bb32b960d11b8184015261016085015284518086018652600280825261686960f01b8285015261018086019190915285518087018752848152656b726573757360d01b818501526101a086015285518087018752600580825264616e696d6560d81b828601526101c087019190915286518088018852818152646d616e676160d81b818601526101e087015286518088018852600981526862696e616e6365757360b81b8186015261020087015286518088018852818152647265616c6d60d81b818601526102208701528651808801885291825261676f60f01b82850152610240860191909152855180870187526008815267185b1d1a5b5a5cdd60c21b818501526102608601528551808701875290815264707564677960d81b81840152610280850152845180860186528381526530bab9ba34b760d11b818401526102a08501528451808601865292835265189a5d19d95d60d21b838301526102c08401929092528351808501855291825262706f6760e81b828201526102e083019190915282518084019093526004835263636c617960e01b9083015261030081019190915260005b6019811015611c5c57611c4a828260198110611c3e57611c3e6149dd565b6020020151600061302c565b80611c5481614a39565b915050611c20565b50611c8360405180604001604052806003815260200162636f6d60e81b815250600161302c565b508015610afa576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050505050565b8686868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250611d1593508592508491506123ad565b611d1d610e37565b15611d3a5760405162461bcd60e51b8152600401610981906147cb565b611d698a611d4c8b610ca98c8c612584565b611d56888a6147f5565b611d6087896147f5565b600060016126c1565b5050505050505050505050565b611d7e612cad565b60005b81811015610cde5760c9546001600160a01b03166350960239848484818110611dac57611dac6149dd565b9050602002016020810190611dc19190613f34565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401600060405180830381600087803b158015611e0257600080fd5b505af1158015611e16573d6000803e3d6000fd5b505050508080611e2590614a39565b915050611d81565b600082815260976020526040902060010154611e4881612c15565b610cde8383612d3e565b611e5c898b6147f5565b6000600282511015611e805760405162461bcd60e51b81526004016109819061496f565b611e976110336000846001865161101691906149ca565b611e9f610e37565b15611ebc5760405162461bcd60e51b8152600401610981906147cb565b60028b14611edc5760405162461bcd60e51b8152600401610981906149f3565b611f228d8d8d898960008a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061322392505050565b84341015611f725760405162461bcd60e51b815260206004820181905260248201527f4d696e74696e674d616e616765723a204e4f545f454e4f5547485f46554e44536044820152606401610981565b611f848d8d8d8d8d8d8d8c60006133e3565b843411156112e757611f9461239e565b6001600160a01b03166108fc611faa87346149ca565b6040518115909202916000818181858888f19350505050158015611fd2573d6000803e3d6000fd5b5050505050505050505050505050565b611fea612cad565b611ff38161349f565b61200f5760405162461bcd60e51b815260040161098190614a81565b600081815260cd6020526040812061202691613d76565b60405181907f0aa1aff0f830e739d86baf0e6624d6763da02f7733575e0e463886cd062dea6a90600090a250565b61205c612cad565b612065816134c5565b610cf460008261353b565b61207a8a8c6147f5565b600060028251101561209e5760405162461bcd60e51b81526004016109819061496f565b6120b56110336000846001865161101691906149ca565b6120bd610e37565b156120da5760405162461bcd60e51b8152600401610981906147cb565b60028c146120fa5760405162461bcd60e51b8152600401610981906149f3565b61213f8e8e8e8a898b8a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061322392505050565b856001600160a01b03166323b872dd61215661239e565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152306024820152604481018890526064016020604051808303816000875af11580156121a9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121cd9190614903565b6122115760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610981565b611fd28e8e8e8e8e8e8e8c8e6133e3565b61222a612cad565b6040516370a0823160e01b81523060048201526000906001600160a01b038416906370a0823190602401602060405180830381865afa158015612271573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122959190614ac3565b60405163a9059cbb60e01b81526001600160a01b038481166004830152602482018390529192509084169063a9059cbb906044016020604051808303816000875af11580156122e8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061230c9190614903565b6123505760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610981565b604080516001600160a01b0384811682526020820184905285168183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a1505050565b60006123a8613545565b905090565b6123b68361349f565b6123d25760405162461bcd60e51b815260040161098190614a81565b600083815260cf602052604090205460ff1615156001600160401b03821615151461244e5760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544c445f455850495241424c455f4d496044820152650a69a82a886960d31b6064820152608401610981565b60006124818360408051808201825260008082526020918201528151808301909252825182529182019181019190915290565b9050600a81600001511115612529576124ac6124a0826000600a61358b565b80516020909101512090565b7fb551e0305c8163b812374b8e78b577c77f226f6f10c5ad03e52699578fbc34b8036125295760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544f4b454e5f4c4142454c5f50524f4860448201526512509255115160d21b6064820152608401610981565b612532836135ca565b61257e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a204c4142454c5f494e56414c49440000006044820152606401610981565b50505050565b60608282604051602001612599929190614adc565b604051602081830303815290604052905092915050565b604080516002808252606082810190935260009190816020015b60608152602001906001900390816125ca57905050905082816000815181106125f5576125f56149dd565b602002602001018190525060cd6000858152602001908152602001600020805461261e90614b04565b80601f016020809104026020016040519081016040528092919081815260200182805461264a90614b04565b80156126975780601f1061266c57610100808354040283529160200191612697565b820191906000526020600020905b81548152906001019060200180831161267a57829003601f168201915b5050505050816001815181106126af576126af6149dd565b60209081029190910101529392505050565b60008060006126cf88612e6b565b915091508380156126e1575060028851115b8015612763575060c9546040516331a9108f60e11b8152600481018390526001600160a01b038b8116921690636352211e90602401602060405180830381865afa158015612733573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127579190614b3e565b6001600160a01b031614155b156127c35760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e616765723a20524556455253455f5245434f52445f4e60448201526913d517d0531313d5d15160b21b6064820152608401610981565b60c954604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401602060405180830381865afa15801561280c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128309190614903565b8015612921575060c9546040516331a9108f60e11b81526004810184905230916001600160a01b031690636352211e90602401602060405180830381865afa158015612880573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128a49190614b3e565b6001600160a01b03161480612921575060c95460405163d9548e5360e01b8152600481018490526001600160a01b039091169063d9548e5390602401602060405180830381865afa1580156128fd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129219190614903565b15612a12576001600160401b038516156129a35760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b15801561298a57600080fd5b505af115801561299e573d6000803e3d6000fd5b505050505b60c954604051630fb8df0360e11b81526001600160a01b0390911690631f71be06906129db908c908c908c908c908b90600401614bb0565b600060405180830381600087803b1580156129f557600080fd5b505af1158015612a09573d6000803e3d6000fd5b50505050612c09565b612a1b8261372e565b612a248861378d565b8015612a31575087516002145b8015612a4457506001600160401b038516155b15612b225760ca5488516001600160a01b039091169063c36c2125908b908b90600090612a7357612a736149dd565b602090810291909101015160cc546040516001600160e01b031960e086901b168152612aad9392916001600160a01b031690600401614c0f565b600060405180830381600087803b158015612ac757600080fd5b505af1158015612adb573d6000803e3d6000fd5b50505050600087511115612b1d5760cc54604051633a0deb9d60e21b81526001600160a01b039091169063e837ae74906129db908a908a908790600401614c44565b612c09565b60c95460405163ba5d40b760e01b81526001600160a01b039091169063ba5d40b790612b5a908c908c908c908c908b90600401614bb0565b600060405180830381600087803b158015612b7457600080fd5b505af1158015612b88573d6000803e3d6000fd5b505050506001600160401b03851615612c095760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b158015612bf057600080fd5b505af1158015612c04573d6000803e3d6000fd5b505050505b50979650505050505050565b610cf481612c2161239e565b6137e7565b612c30828261156e565b610d815760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19166001179055612c6961239e565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b612cb561239e565b6001600160a01b0316612cd06033546001600160a01b031690565b6001600160a01b031614610d955760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610981565b610cf4600080516020614ef483398151915282611e2d565b612d48828261156e565b15610d815760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19169055612d7f61239e565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612dcb610e37565b612e0e5760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881393d517d4105554d15160621b6044820152606401610981565b600080516020614ed4833981519152805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa612e4e61239e565b6040516001600160a01b03909116815260200160405180910390a1565b805160009081905b8015612ea057829150612e8c82856110166001856149ca565b925080612e9881614c7a565b915050612e73565b50915091565b60008151600003612ef95760405162461bcd60e51b815260206004820152601b60248201527f4d696e74696e674d616e616765723a204c4142454c5f454d50545900000000006044820152606401610981565b8282604051602001612f0b9190614c91565b60405160208183030381529060405280519060200120604051602001612f3b929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b610cf4600080516020614ef48339815191528261353b565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b612fcc610e37565b15612fe95760405162461bcd60e51b8152600401610981906147cb565b600080516020614ed4833981519152805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258612e4e61239e565b6000613039600084612ea6565b600081815260cd602052604090209091506130548482614cf3565b50600081815260cf602052604090819020805460ff19168415151790555181907f4fce6f6e172b04eaa80325d8e3b0180a34945000f3e214605039e8420fdf8980906130a190869061437c565b60405180910390a260c954604051634f558e7960e01b8152600481018390526001600160a01b0390911690634f558e7990602401602060405180830381865afa1580156130f2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131169190614903565b610cde5760c9546040516307befae360e51b81526001600160a01b039091169063f7df5c6090610acc9084908790600401614db2565b600054610100900460ff166131735760405162461bcd60e51b815260040161098190614dd3565b610d9561317e61239e565b612f72565b600054610100900460ff166131aa5760405162461bcd60e51b815260040161098190614dd3565b610d9560006131b761239e565b61353b565b600054610100900460ff1661179e5760405162461bcd60e51b815260040161098190614dd3565b600054610100900460ff1661320a5760405162461bcd60e51b815260040161098190614dd3565b600080516020614ed4833981519152805460ff19169055565b600061323761323287896147f5565b612e6b565b506040516bffffffffffffffffffffffff1930606090811b821660208401524660348401528b811b82166054840152606883018490526001600160c01b031960c08a901b1660888401526090830188905286901b1660b082015290915060009061331390849061330d9060c401604051602081830303815290604052805190602001206040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c8101829052600090605c01604051602081830303815290604052805190602001209050919050565b9061384b565b905061331e816116f4565b6133765760405162461bcd60e51b8152602060048201526024808201527f4d696e74696e674d616e616765723a205349474e45525f49535f4e4f545f4d49604482015263272a22a960e11b6064820152608401610981565b42866001600160401b0316116133d85760405162461bcd60e51b815260206004820152602160248201527f4d696e74696e674d616e616765723a20455850495245445f5349474e415455526044820152604560f81b6064820152608401610981565b505050505050505050565b600061342a8a6133f38a8c6147f5565b6133fd898b6147f5565b613407888a6147f5565b60008f6001600160a01b031661341b61239e565b6001600160a01b0316146126c1565b9050896001600160a01b031661343e61239e565b6001600160a01b0316827fa545b6fd3355e8d57f8c8147bafe740545bd3ea1f94bef2576a6d532a7c3b605868660405161348b9291909182526001600160a01b0316602082015260400190565b60405180910390a450505050505050505050565b600081815260cd6020526040812080548291906134bb90614b04565b9050119050919050565b6134cd612cad565b6001600160a01b0381166135325760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610981565b610cf481612f72565b610d818282612c26565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546000906001600160a01b03163303613586575060331936013560601c90565b503390565b604080518082019091526000808252602082015260405180604001604052808381526020018486602001516135c09190614e1e565b9052949350505050565b600081516000036135dd57506000919050565b60208201805160f81c603081108015906135fb575060398160ff1611155b15801561361d575060618160ff161015801561361b5750607a8160ff1611155b155b1561362c575060009392505050565b8351600181111561369a5761364e836136466001846149ca565b015160f81c90565b915060308260ff1610158015613668575060398260ff1611155b15801561368a575060618260ff16101580156136885750607a8260ff1611155b155b1561369a57506000949350505050565b60015b6136a86001836149ca565b811015613722578381015160f81c9250602d83148015906136de575060308360ff16101580156136dc575060398360ff1611155b155b80156136ff575060618360ff16101580156136fd5750607a8360ff1611155b155b156137105750600095945050505050565b8061371a81614a39565b91505061369d565b50600195945050505050565b6137378161170e565b156137845760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a20544f4b454e5f424c4f434b45440000006044820152606401610981565b610cf48161386f565b6000806137a46000846001865161101691906149ca565b60ca549091506001600160a01b0316158015906137e05750807f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f145b9392505050565b6137f1828261156e565b610d8157613809816001600160a01b031660146138f3565b6138148360206138f3565b604051602001613825929190614e31565b60408051601f198184030181529082905262461bcd60e51b82526109819160040161437c565b600080600061385a8585613a8e565b9150915061386781613ad3565b509392505050565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd6960208201529081018290526001906138ae90606001611749565b805460ff19169115159190911790556040518181527f2ce5d9351b1d590d5a066db0d2dc7602d55f092506a83a7ee8c4d78ee357d75a9060200160405180910390a150565b60606000613902836002614ea6565b61390d906002614e1e565b6001600160401b0381111561392457613924614133565b6040519080825280601f01601f19166020018201604052801561394e576020820181803683370190505b509050600360fc1b81600081518110613969576139696149dd565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110613998576139986149dd565b60200101906001600160f81b031916908160001a90535060006139bc846002614ea6565b6139c7906001614e1e565b90505b6001811115613a3f576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106139fb576139fb6149dd565b1a60f81b828281518110613a1157613a116149dd565b60200101906001600160f81b031916908160001a90535060049490941c93613a3881614c7a565b90506139ca565b5083156137e05760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610981565b6000808251604103613ac45760208301516040840151606085015160001a613ab887828585613c89565b94509450505050613acc565b506000905060025b9250929050565b6000816004811115613ae757613ae7614ebd565b03613aef5750565b6001816004811115613b0357613b03614ebd565b03613b505760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152606401610981565b6002816004811115613b6457613b64614ebd565b03613bb15760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610981565b6003816004811115613bc557613bc5614ebd565b03613c1d5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b6064820152608401610981565b6004816004811115613c3157613c31614ebd565b03610cf45760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c604482015261756560f01b6064820152608401610981565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613cc05750600090506003613d6d565b8460ff16601b14158015613cd857508460ff16601c14155b15613ce95750600090506004613d6d565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613d3d573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613d6657600060019250925050613d6d565b9150600090505b94509492505050565b508054613d8290614b04565b6000825580601f10613d92575050565b601f016020900490600052602060002090810190610cf491905b80821115613dc05760008155600101613dac565b5090565b600060208284031215613dd657600080fd5b81356001600160e01b0319811681146137e057600080fd5b6001600160401b0381168114610cf457600080fd5b8035613e0e81613dee565b919050565b60008060408385031215613e2657600080fd5b8235613e3181613dee565b946020939093013593505050565b600060208284031215613e5157600080fd5b5035919050565b60008083601f840112613e6a57600080fd5b5081356001600160401b03811115613e8157600080fd5b602083019150836020828501011115613acc57600080fd5b600080600060408486031215613eae57600080fd5b8335925060208401356001600160401b03811115613ecb57600080fd5b613ed786828701613e58565b9497909650939450505050565b6001600160a01b0381168114610cf457600080fd5b8035613e0e81613ee4565b60008060408385031215613f1757600080fd5b823591506020830135613f2981613ee4565b809150509250929050565b600060208284031215613f4657600080fd5b81356137e081613ee4565b60008083601f840112613f6357600080fd5b5081356001600160401b03811115613f7a57600080fd5b6020830191508360208260051b8501011115613acc57600080fd5b8015158114610cf457600080fd5b60008060008060008060008060a0898b031215613fbf57600080fd5b8835613fca81613ee4565b975060208901356001600160401b0380821115613fe657600080fd5b613ff28c838d01613f51565b909950975060408b013591508082111561400b57600080fd5b6140178c838d01613f51565b909750955060608b013591508082111561403057600080fd5b5061403d8b828c01613f51565b909450925050608089013561405181613f95565b809150509295985092959890939650565b600080600080600080600080600060c08a8c03121561408057600080fd5b893561408b81613ee4565b985060208a01356001600160401b03808211156140a757600080fd5b6140b38d838e01613f51565b909a50985060408c01359150808211156140cc57600080fd5b6140d88d838e01613f51565b909850965060608c01359150808211156140f157600080fd5b506140fe8c828d01613f51565b90955093505060808a013561411281613dee565b915060a08a013561412281613f95565b809150509295985092959850929598565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561417157614171614133565b604052919050565b60006001600160401b0382111561419257614192614133565b5060051b60200190565b600060208083850312156141af57600080fd5b82356001600160401b038111156141c557600080fd5b8301601f810185136141d657600080fd5b80356141e96141e482614179565b614149565b81815260059190911b8201830190838101908783111561420857600080fd5b928401925b8284101561422f57833561422081613ee4565b8252928401929084019061420d565b979650505050505050565b6000806000806060858703121561425057600080fd5b843561425b81613ee4565b93506020850135925060408501356001600160401b0381111561427d57600080fd5b61428987828801613e58565b95989497509550505050565b600080602083850312156142a857600080fd5b82356001600160401b038111156142be57600080fd5b6142ca85828601613e58565b90969095509350505050565b6000806000604084860312156142eb57600080fd5b83356001600160401b0381111561430157600080fd5b61430d86828701613e58565b909450925050602084013561432181613f95565b809150509250925092565b60005b8381101561434757818101518382015260200161432f565b50506000910152565b6000815180845261436881602086016020860161432c565b601f01601f19169290920160200192915050565b6020815260006137e06020830184614350565b60008060008060008060c087890312156143a857600080fd5b86356143b381613ee4565b955060208701356143c381613ee4565b945060408701356143d381613ee4565b935060608701356143e381613ee4565b925060808701356143f381613ee4565b915060a087013561440381613ee4565b809150509295509295509295565b60008060008060008060008060a0898b03121561442d57600080fd5b883561443881613ee4565b97506020890135965060408901356001600160401b038082111561445b57600080fd5b6144678c838d01613e58565b909850965060608b013591508082111561448057600080fd5b61448c8c838d01613f51565b909650945060808b01359150808211156144a557600080fd5b506144b28b828c01613f51565b999c989b5096995094979396929594505050565b600080602083850312156144d957600080fd5b82356001600160401b038111156144ef57600080fd5b6142ca85828601613f51565b600080600080600080600080600080600060e08c8e03121561451c57600080fd5b6145258c613ef9565b9a506001600160401b038060208e0135111561454057600080fd5b6145508e60208f01358f01613f51565b909b50995060408d013581101561456657600080fd5b6145768e60408f01358f01613f51565b909950975060608d013581101561458c57600080fd5b61459c8e60608f01358f01613f51565b90975095506145ad60808e01613e03565b945060a08d013593508060c08e013511156145c757600080fd5b506145d88d60c08e01358e01613e58565b81935080925050509295989b509295989b9093969950565b6000806000806000806000806000806000806101008d8f03121561461357600080fd5b61461c8d613ef9565b9b506001600160401b0360208e0135111561463657600080fd5b6146468e60208f01358f01613f51565b909b5099506001600160401b0360408e0135111561466357600080fd5b6146738e60408f01358f01613f51565b90995097506001600160401b0360608e0135111561469057600080fd5b6146a08e60608f01358f01613f51565b90975095506146b160808e01613e03565b94506146bf60a08e01613ef9565b935060c08d013592506001600160401b0360e08e013511156146e057600080fd5b6146f08e60e08f01358f01613e58565b81935080925050509295989b509295989b509295989b565b6000806040838503121561471b57600080fd5b823561472681613ee4565b91506020830135613f2981613ee4565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b60006020828403121561477d57600080fd5b81516137e081613dee565b60208082526023908201527f4d696e74696e674d616e616765723a20544f4b454e5f4e4f545f455850495241604082015262424c4560e81b606082015260800190565b60208082526010908201526f14185d5cd8589b194e8814105554d15160821b604082015260600190565b60006148036141e484614179565b80848252602080830192508560051b85013681111561482157600080fd5b855b818110156148b35780356001600160401b03808211156148435760008081fd5b90880190601f36818401126148585760008081fd5b82358281111561486a5761486a614133565b61487b818301601f19168801614149565b9250808352368782860101111561489457600091508182fd5b8087850188850137600090830187015250865250938201938201614823565b50919695505050505050565b60208082526024908201527f4d696e74696e674d616e616765723a2043414c4c45525f49535f4e4f545f4d49604082015263272a22a960e11b606082015260800190565b60006020828403121561491557600080fd5b81516137e081613f95565b6020808252602f908201527f4d696e74696e674d616e616765723a2053454e4445525f49535f4e4f545f415060408201526e282927ab22a22fa7a92fa7aba722a960891b606082015260800190565b60208082526025908201527f4d696e74696e674d616e616765723a204c4142454c535f4c454e4754485f42456040820152642627abaf9960d91b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b81810381811115610954576109546149b4565b634e487b7160e01b600052603260045260246000fd5b60208082526026908201527f4d696e74696e674d616e616765723a20535542444f4d41494e535f4e4f545f41604082015265131313d5d15160d21b606082015260800190565b600060018201614a4b57614a4b6149b4565b5060010190565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b60208082526022908201527f4d696e74696e674d616e616765723a20544c445f4e4f545f5245474953544552604082015261115160f21b606082015260800190565b600060208284031215614ad557600080fd5b5051919050565b6b756e732d646576746573742d60a01b81528183600c83013760009101600c01908152919050565b600181811c90821680614b1857607f821691505b602082108103614b3857634e487b7160e01b600052602260045260246000fd5b50919050565b600060208284031215614b5057600080fd5b81516137e081613ee4565b600081518084526020808501808196508360051b8101915082860160005b85811015614ba3578284038952614b91848351614350565b98850198935090840190600101614b79565b5091979650505050505050565b6001600160a01b038616815260a060208201819052600090614bd490830187614b5b565b8281036040840152614be68187614b5b565b90508281036060840152614bfa8186614b5b565b91505082151560808301529695505050505050565b600060018060a01b03808616835260606020840152614c316060840186614350565b9150808416604084015250949350505050565b606081526000614c576060830186614b5b565b8281036020840152614c698186614b5b565b915050826040830152949350505050565b600081614c8957614c896149b4565b506000190190565b60008251614ca381846020870161432c565b9190910192915050565b601f821115610cde57600081815260208120601f850160051c81016020861015614cd45750805b601f850160051c820191505b818110156116a357828155600101614ce0565b81516001600160401b03811115614d0c57614d0c614133565b614d2081614d1a8454614b04565b84614cad565b602080601f831160018114614d555760008415614d3d5750858301515b600019600386901b1c1916600185901b1785556116a3565b600085815260208120601f198616915b82811015614d8457888601518255948401946001909101908401614d65565b5085821015614da25787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b828152604060208201526000614dcb6040830184614350565b949350505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b80820180821115610954576109546149b4565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351614e6981601785016020880161432c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351614e9a81602884016020880161432c565b01602801949350505050565b8082028115828204841417610954576109546149b4565b634e487b7160e01b600052602160045260246000fdfe5496787fc1ebdfeba375028c1865f13fbb1d63c0caa356ccc1b29a80f3ebd6229f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000811000a"; + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "address"; + readonly name: "previousAdmin"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "address"; + readonly name: "newAdmin"; + readonly type: "address"; + }]; + readonly name: "AdminChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Blocked"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "BlocklistDisabled"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "BlocklistEnabled"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "sender"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "price"; + readonly type: "uint256"; + }, { + readonly indexed: false; + readonly internalType: "address"; + readonly name: "token"; + readonly type: "address"; + }]; + readonly name: "DomainPurchase"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "uint8"; + readonly name: "version"; + readonly type: "uint8"; + }]; + readonly name: "Initialized"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly indexed: false; + readonly internalType: "string"; + readonly name: "tld"; + readonly type: "string"; + }]; + readonly name: "NewTld"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "previousOwner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "newOwner"; + readonly type: "address"; + }]; + readonly name: "OwnershipTransferred"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "Paused"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "RemoveTld"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "previousAdminRole"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "newAdminRole"; + readonly type: "bytes32"; + }]; + readonly name: "RoleAdminChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "sender"; + readonly type: "address"; + }]; + readonly name: "RoleGranted"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "sender"; + readonly type: "address"; + }]; + readonly name: "RoleRevoked"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "Unpaused"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "implementation"; + readonly type: "address"; + }]; + readonly name: "Upgraded"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "address"; + readonly name: "recepient"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "value"; + readonly type: "uint256"; + }, { + readonly indexed: false; + readonly internalType: "address"; + readonly name: "token"; + readonly type: "address"; + }]; + readonly name: "Withdrawal"; + readonly type: "event"; + }, { + readonly inputs: readonly []; + readonly name: "DEFAULT_ADMIN_ROLE"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "MINTER_ROLE"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "NAME"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "VERSION"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "addMinter"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address[]"; + readonly name: "accounts"; + readonly type: "address[]"; + }]; + readonly name: "addMinters"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address[]"; + readonly name: "addrs"; + readonly type: "address[]"; + }]; + readonly name: "addProxyReaders"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "tld"; + readonly type: "string"; + }, { + readonly internalType: "bool"; + readonly name: "isExpirable"; + readonly type: "bool"; + }]; + readonly name: "addTld"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "string[]"; + readonly name: "labels"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }, { + readonly internalType: "uint64"; + readonly name: "expiry"; + readonly type: "uint64"; + }, { + readonly internalType: "uint256"; + readonly name: "price"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "buy"; + readonly outputs: readonly []; + readonly stateMutability: "payable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "string[]"; + readonly name: "labels"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }, { + readonly internalType: "uint64"; + readonly name: "expiry"; + readonly type: "uint64"; + }, { + readonly internalType: "address"; + readonly name: "token"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "price"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "buyForErc20"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tld"; + readonly type: "uint256"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }]; + readonly name: "claim"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tld"; + readonly type: "uint256"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }]; + readonly name: "claimTo"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tld"; + readonly type: "uint256"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }, { + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }]; + readonly name: "claimToWithRecords"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address payable"; + readonly name: "receiver"; + readonly type: "address"; + }]; + readonly name: "closeMinter"; + readonly outputs: readonly []; + readonly stateMutability: "payable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "cnsMintingController"; + readonly outputs: readonly [{ + readonly internalType: "contract IMintingController"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "cnsResolver"; + readonly outputs: readonly [{ + readonly internalType: "contract IResolver"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "cnsURIPrefixController"; + readonly outputs: readonly [{ + readonly internalType: "contract IURIPrefixController"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }]; + readonly name: "getRoleAdmin"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "grantRole"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "hasRole"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "contract IUNSRegistry"; + readonly name: "unsRegistry_"; + readonly type: "address"; + }, { + readonly internalType: "contract IMintingController"; + readonly name: "cnsMintingController_"; + readonly type: "address"; + }, { + readonly internalType: "contract IURIPrefixController"; + readonly name: "cnsURIPrefixController_"; + readonly type: "address"; + }, { + readonly internalType: "contract IResolver"; + readonly name: "cnsResolver_"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "unsOperator_"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "forwarder"; + readonly type: "address"; + }]; + readonly name: "initialize"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "isBlocked"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "isMinter"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "forwarder"; + readonly type: "address"; + }]; + readonly name: "isTrustedForwarder"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "string[]"; + readonly name: "labels"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }, { + readonly internalType: "uint64"; + readonly name: "expiry"; + readonly type: "uint64"; + }, { + readonly internalType: "bool"; + readonly name: "withReverse"; + readonly type: "bool"; + }]; + readonly name: "issueExpirableWithRecords"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "string[]"; + readonly name: "labels"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }, { + readonly internalType: "bool"; + readonly name: "withReverse"; + readonly type: "bool"; + }]; + readonly name: "issueWithRecords"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "owner"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "pause"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "paused"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "removeMinter"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address[]"; + readonly name: "accounts"; + readonly type: "address[]"; + }]; + readonly name: "removeMinters"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tld"; + readonly type: "uint256"; + }]; + readonly name: "removeTld"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint64"; + readonly name: "expiry"; + readonly type: "uint64"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "renew"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "renounceMinter"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "renounceOwnership"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "renounceRole"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "revoke"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "revokeRole"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address payable"; + readonly name: "receiver"; + readonly type: "address"; + }]; + readonly name: "rotateMinter"; + readonly outputs: readonly []; + readonly stateMutability: "payable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "forwarder"; + readonly type: "address"; + }]; + readonly name: "setForwarder"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly name: "setOperator"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "prefix"; + readonly type: "string"; + }]; + readonly name: "setTokenURIPrefix"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "newOwner"; + readonly type: "address"; + }]; + readonly name: "transferOwnership"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "unpause"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "unsOperator"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "unsRegistry"; + readonly outputs: readonly [{ + readonly internalType: "contract IUNSRegistry"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "recepient"; + readonly type: "address"; + }]; + readonly name: "withdraw"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "token"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "recepient"; + readonly type: "address"; + }]; + readonly name: "withdraw"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): MintingManagerInterface; + static connect(address: string, runner?: ContractRunner | null): MintingManager; +} +export {}; +//# sourceMappingURL=MintingManager__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/MintingManager__factory.d.ts.map b/dist/types/factories/contracts/MintingManager__factory.d.ts.map new file mode 100644 index 00000000..fedf0c02 --- /dev/null +++ b/dist/types/factories/contracts/MintingManager__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"MintingManager__factory.d.ts","sourceRoot":"","sources":["../../../../types/factories/contracts/MintingManager__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACxD,OAAO,KAAK,EACV,cAAc,EACd,uBAAuB,EACxB,MAAM,gCAAgC,CAAC;AAwoCxC,aAAK,+BAA+B,GAChC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,uBAAwB,SAAQ,eAAe;gBAC9C,GAAG,IAAI,EAAE,+BAA+B;IAQ3C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,uBAAuB;IAIxE,MAAM,CAAC,QAAQ,CAAC,QAAQ,wovCAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,uBAAuB;IAGjD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,cAAc;CAGlB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/MintingManager__factory.js b/dist/types/factories/contracts/MintingManager__factory.js new file mode 100644 index 00000000..c2887171 --- /dev/null +++ b/dist/types/factories/contracts/MintingManager__factory.js @@ -0,0 +1,1188 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.MintingManager__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "previousAdmin", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "newAdmin", + type: "address", + }, + ], + name: "AdminChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Blocked", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "BlocklistDisabled", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "BlocklistEnabled", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + indexed: true, + internalType: "address", + name: "sender", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + indexed: false, + internalType: "address", + name: "token", + type: "address", + }, + ], + name: "DomainPurchase", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint8", + name: "version", + type: "uint8", + }, + ], + name: "Initialized", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + indexed: false, + internalType: "string", + name: "tld", + type: "string", + }, + ], + name: "NewTld", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "previousOwner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnershipTransferred", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "Paused", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "RemoveTld", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + indexed: true, + internalType: "bytes32", + name: "previousAdminRole", + type: "bytes32", + }, + { + indexed: true, + internalType: "bytes32", + name: "newAdminRole", + type: "bytes32", + }, + ], + name: "RoleAdminChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "RoleGranted", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "RoleRevoked", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "Unpaused", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "implementation", + type: "address", + }, + ], + name: "Upgraded", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "recepient", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "value", + type: "uint256", + }, + { + indexed: false, + internalType: "address", + name: "token", + type: "address", + }, + ], + name: "Withdrawal", + type: "event", + }, + { + inputs: [], + name: "DEFAULT_ADMIN_ROLE", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "MINTER_ROLE", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "NAME", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "VERSION", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "addMinter", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address[]", + name: "accounts", + type: "address[]", + }, + ], + name: "addMinters", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address[]", + name: "addrs", + type: "address[]", + }, + ], + name: "addProxyReaders", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "tld", + type: "string", + }, + { + internalType: "bool", + name: "isExpirable", + type: "bool", + }, + ], + name: "addTld", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "string[]", + name: "labels", + type: "string[]", + }, + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + { + internalType: "uint64", + name: "expiry", + type: "uint64", + }, + { + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "buy", + outputs: [], + stateMutability: "payable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "string[]", + name: "labels", + type: "string[]", + }, + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + { + internalType: "uint64", + name: "expiry", + type: "uint64", + }, + { + internalType: "address", + name: "token", + type: "address", + }, + { + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "buyForErc20", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tld", + type: "uint256", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + ], + name: "claim", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tld", + type: "uint256", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + ], + name: "claimTo", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tld", + type: "uint256", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + ], + name: "claimToWithRecords", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address payable", + name: "receiver", + type: "address", + }, + ], + name: "closeMinter", + outputs: [], + stateMutability: "payable", + type: "function", + }, + { + inputs: [], + name: "cnsMintingController", + outputs: [ + { + internalType: "contract IMintingController", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "cnsResolver", + outputs: [ + { + internalType: "contract IResolver", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "cnsURIPrefixController", + outputs: [ + { + internalType: "contract IURIPrefixController", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + ], + name: "getRoleAdmin", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "grantRole", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "hasRole", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "contract IUNSRegistry", + name: "unsRegistry_", + type: "address", + }, + { + internalType: "contract IMintingController", + name: "cnsMintingController_", + type: "address", + }, + { + internalType: "contract IURIPrefixController", + name: "cnsURIPrefixController_", + type: "address", + }, + { + internalType: "contract IResolver", + name: "cnsResolver_", + type: "address", + }, + { + internalType: "address", + name: "unsOperator_", + type: "address", + }, + { + internalType: "address", + name: "forwarder", + type: "address", + }, + ], + name: "initialize", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "isBlocked", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "isMinter", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "forwarder", + type: "address", + }, + ], + name: "isTrustedForwarder", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "string[]", + name: "labels", + type: "string[]", + }, + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + { + internalType: "uint64", + name: "expiry", + type: "uint64", + }, + { + internalType: "bool", + name: "withReverse", + type: "bool", + }, + ], + name: "issueExpirableWithRecords", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "string[]", + name: "labels", + type: "string[]", + }, + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + { + internalType: "bool", + name: "withReverse", + type: "bool", + }, + ], + name: "issueWithRecords", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + 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: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "removeMinter", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address[]", + name: "accounts", + type: "address[]", + }, + ], + name: "removeMinters", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tld", + type: "uint256", + }, + ], + name: "removeTld", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint64", + name: "expiry", + type: "uint64", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "renew", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "renounceMinter", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "renounceOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "renounceRole", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "revoke", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "revokeRole", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address payable", + name: "receiver", + type: "address", + }, + ], + name: "rotateMinter", + outputs: [], + stateMutability: "payable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "forwarder", + type: "address", + }, + ], + name: "setForwarder", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + name: "setOperator", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "prefix", + type: "string", + }, + ], + name: "setTokenURIPrefix", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "transferOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "unpause", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "unsOperator", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "unsRegistry", + outputs: [ + { + internalType: "contract IUNSRegistry", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "recepient", + type: "address", + }, + ], + name: "withdraw", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "token", + type: "address", + }, + { + internalType: "address", + name: "recepient", + type: "address", + }, + ], + name: "withdraw", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +const _bytecode = "0x608060405234801561001057600080fd5b50614f20806100206000396000f3fe6080604052600436106102ae5760003560e01c8063906cecc111610175578063b9998a24116100dc578063d547741f11610095578063f2fde38b1161006f578063f2fde38b14610892578063f5243bc4146108b2578063f940e385146108d2578063ffa1ad74146108f257600080fd5b8063d547741f1461083f578063d7db74c71461085f578063ec5273891461087257600080fd5b8063b9998a241461077d578063cc2a9a5b1461079d578063cc2c3fc4146107bd578063ceeb4f50146107dd578063d1f5692c146107fd578063d53913931461081d57600080fd5b8063a3a3f7f61161012e578063a3a3f7f614610690578063a3f4df7e146106b0578063a849d65c146106fd578063aa271e1a1461071d578063b0aa98c71461073d578063b3ab15fb1461075d57600080fd5b8063906cecc1146105e657806391d1485414610606578063983b2d5614610626578063986502751461064657806399e0dd7c1461065b578063a217fddf1461067b57600080fd5b80635b6fa8db11610219578063715018a6116101d2578063715018a61461054b57806371e2a6571461056057806377a2a5891461058057806381c81d35146105a05780638456cb59146105b35780638da5cb5b146105c857600080fd5b80635b6fa8db146104a35780635c975abb146104c35780635cd7e3b3146104d85780635e22cd86146104f85780635fc1964f14610518578063634486da1461053857600080fd5b80633092afd51161026b5780633092afd5146103a857806336568abe146103c85780633f41b614146103e85780633f4ba83a1461042057806351cff8d914610435578063572b6c051461045557600080fd5b806301ffc9a7146102b35780631edb948e146102e857806320c5429b1461030a578063248a9ca31461032a578063268b15ed146103685780632f2ff15d14610388575b600080fd5b3480156102bf57600080fd5b506102d36102ce366004613dc4565b610923565b60405190151581526020015b60405180910390f35b3480156102f457600080fd5b50610308610303366004613e13565b61095a565b005b34801561031657600080fd5b50610308610325366004613e3f565b610b03565b34801561033657600080fd5b5061035a610345366004613e3f565b60009081526097602052604090206001015490565b6040519081526020016102df565b34801561037457600080fd5b50610308610383366004613e99565b610c26565b34801561039457600080fd5b506103086103a3366004613f04565b610cb9565b3480156103b457600080fd5b506103086103c3366004613f34565b610ce3565b3480156103d457600080fd5b506103086103e3366004613f04565b610cf7565b3480156103f457600080fd5b5060c954610408906001600160a01b031681565b6040516001600160a01b0390911681526020016102df565b34801561042c57600080fd5b50610308610d85565b34801561044157600080fd5b50610308610450366004613f34565b610d97565b34801561046157600080fd5b506102d3610470366004613f34565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546001600160a01b0390811691161490565b3480156104af57600080fd5b5060cc54610408906001600160a01b031681565b3480156104cf57600080fd5b506102d3610e37565b3480156104e457600080fd5b506103086104f3366004613fa3565b610e4d565b34801561050457600080fd5b50610308610513366004614062565b6110b1565b34801561052457600080fd5b5061030861053336600461419c565b6112f6565b610308610546366004613f34565b61133e565b34801561055757600080fd5b50610308611401565b34801561056c57600080fd5b5061030861057b36600461419c565b611413565b34801561058c57600080fd5b5060ce54610408906001600160a01b031681565b6103086105ae366004613f34565b61145b565b3480156105bf57600080fd5b506103086114d8565b3480156105d457600080fd5b506033546001600160a01b0316610408565b3480156105f257600080fd5b5061030861060136600461423a565b6114e8565b34801561061257600080fd5b506102d3610621366004613f04565b61156e565b34801561063257600080fd5b50610308610641366004613f34565b611599565b34801561065257600080fd5b506103086115aa565b34801561066757600080fd5b50610308610676366004614295565b6115c4565b34801561068757600080fd5b5061035a600081565b34801561069c57600080fd5b506103086106ab3660046142d6565b6116ab565b3480156106bc57600080fd5b506106f0604051806040016040528060148152602001732aa7299d1026b4b73a34b7339026b0b730b3b2b960611b81525081565b6040516102df919061437c565b34801561070957600080fd5b5060cb54610408906001600160a01b031681565b34801561072957600080fd5b506102d3610738366004613f34565b6116f4565b34801561074957600080fd5b506102d3610758366004613e3f565b61170e565b34801561076957600080fd5b50610308610778366004613f34565b61176c565b34801561078957600080fd5b50610308610798366004613f34565b611796565b3480156107a957600080fd5b506103086107b836600461438f565b6117db565b3480156107c957600080fd5b5060ca54610408906001600160a01b031681565b3480156107e957600080fd5b506103086107f8366004614411565b611cd2565b34801561080957600080fd5b506103086108183660046144c6565b611d76565b34801561082957600080fd5b5061035a600080516020614ef483398151915281565b34801561084b57600080fd5b5061030861085a366004613f04565b611e2d565b61030861086d3660046144fb565b611e52565b34801561087e57600080fd5b5061030861088d366004613e3f565b611fe2565b34801561089e57600080fd5b506103086108ad366004613f34565b612054565b3480156108be57600080fd5b506103086108cd3660046145f0565b612070565b3480156108de57600080fd5b506103086108ed366004614708565b612222565b3480156108fe57600080fd5b506106f060405180604001604052806005815260200164302e352e3160d81b81525081565b60006001600160e01b03198216637965db0b60e01b148061095457506301ffc9a760e01b6001600160e01b03198316145b92915050565b61096561073861239e565b61098a5760405162461bcd60e51b815260040161098190614736565b60405180910390fd5b60c95460405163baef73e960e01b8152600481018390526000916001600160a01b03169063baef73e990602401602060405180830381865afa1580156109d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109f8919061476b565b9050806001600160401b0316600003610a235760405162461bcd60e51b815260040161098190614788565b806001600160401b0316836001600160401b031611610a905760405162461bcd60e51b815260206004820152602360248201527f4d696e74696e674d616e616765723a204558504952595f4e4f545f455854454e60448201526211115160ea1b6064820152608401610981565b60c954604051631fb9763760e11b81526001600160401b0385166004820152602481018490526001600160a01b0390911690633f72ec6e906044015b600060405180830381600087803b158015610ae657600080fd5b505af1158015610afa573d6000803e3d6000fd5b50505050505050565b610b0e61073861239e565b610b2a5760405162461bcd60e51b815260040161098190614736565b60c95460405163baef73e960e01b8152600481018390526001600160a01b039091169063baef73e990602401602060405180830381865afa158015610b73573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b97919061476b565b6001600160401b0316600003610bbf5760405162461bcd60e51b815260040161098190614788565b60c954604051637eee288d60e01b8152306004820152602481018390526001600160a01b0390911690637eee288d90604401600060405180830381600087803b158015610c0b57600080fd5b505af1158015610c1f573d6000803e3d6000fd5b5050505050565b8282828080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250610c6993508592508491506123ad565b610c71610e37565b15610c8e5760405162461bcd60e51b8152600401610981906147cb565b6060610afa610c9b61239e565b610cae88610ca98989612584565b6125b0565b8384600060016126c1565b600082815260976020526040902060010154610cd481612c15565b610cde8383612c26565b505050565b610ceb612cad565b610cf481612d26565b50565b610cff61239e565b6001600160a01b0316816001600160a01b031614610d775760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610981565b610d818282612d3e565b5050565b610d8d612cad565b610d95612dc3565b565b610d9f612cad565b6001600160a01b038116610db257600080fd5b60405147906001600160a01b0383169082156108fc029083906000818181858888f19350505050158015610dea573d6000803e3d6000fd5b50604080516001600160a01b03841681526020810183905260008183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a15050565b600080516020614ed48339815191525460ff1690565b610e5786886147f5565b8051600203610e8c57610e6b61073861239e565b610e875760405162461bcd60e51b8152600401610981906148bf565b610fd1565b6000610e9782612e6b565b60c9549092506001600160a01b0316905063430c2081610eb561239e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015610f00573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f249190614903565b80610fb3575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa158015610f7d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fa19190614903565b8015610fb35750610fb361073861239e565b610fcf5760405162461bcd60e51b815260040161098190614920565b505b610fdb87896147f5565b6000600282511015610fff5760405162461bcd60e51b81526004016109819061496f565b6110546110336000846001865161101691906149ca565b81518110611026576110266149dd565b6020026020010151612ea6565b83600081518110611046576110466149dd565b6020026020010151836123ad565b61105c610e37565b156110795760405162461bcd60e51b8152600401610981906147cb565b6110a38b6110878b8d6147f5565b6110918a8c6147f5565b61109b898b6147f5565b6000896126c1565b505050505050505050505050565b6110bb87896147f5565b80516002036110f0576110cf61073861239e565b6110eb5760405162461bcd60e51b8152600401610981906148bf565b611235565b60006110fb82612e6b565b60c9549092506001600160a01b0316905063430c208161111961239e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015611164573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111889190614903565b80611217575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa1580156111e1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112059190614903565b8015611217575061121761073861239e565b6112335760405162461bcd60e51b815260040161098190614920565b505b61123f888a6147f5565b836002825110156112625760405162461bcd60e51b81526004016109819061496f565b6112796110336000846001865161101691906149ca565b611281610e37565b1561129e5760405162461bcd60e51b8152600401610981906147cb565b60028a146112be5760405162461bcd60e51b8152600401610981906149f3565b6112e78c6112cc8c8e6147f5565b6112d68b8d6147f5565b6112e08a8c6147f5565b89896126c1565b50505050505050505050505050565b6112fe612cad565b60005b8151811015610d815761132c82828151811061131f5761131f6149dd565b6020026020010151612d26565b8061133681614a39565b915050611301565b61134961073861239e565b6113655760405162461bcd60e51b815260040161098190614736565b6001600160a01b0381166113bb5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610981565b6113c481612f5a565b6113cc6115aa565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610d81573d6000803e3d6000fd5b611409612cad565b610d956000612f72565b61141b612cad565b60005b8151811015610d815761144982828151811061143c5761143c6149dd565b6020026020010151612f5a565b8061145381614a39565b91505061141e565b61146661073861239e565b6114825760405162461bcd60e51b815260040161098190614736565b6001600160a01b0381166113c45760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610981565b6114e0612cad565b610d95612fc4565b8282828080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525061152b93508592508491506123ad565b611533610e37565b156115505760405162461bcd60e51b8152600401610981906147cb565b606061156487610cae88610ca98989612584565b5050505050505050565b60009182526097602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6115a1612cad565b610cf481612f5a565b610d95600080516020614ef48339815191526103e361239e565b6115cc612cad565b60c954604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906115fe9085908590600401614a52565b600060405180830381600087803b15801561161857600080fd5b505af115801561162c573d6000803e3d6000fd5b505060cb546001600160a01b0316159150610d8190505760cb54604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906116759085908590600401614a52565b600060405180830381600087803b15801561168f57600080fd5b505af11580156116a3573d6000803e3d6000fd5b505050505050565b6116b3612cad565b610cde83838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525085925061302c915050565b6000610954600080516020614ef48339815191528361156e565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd696020820152908101829052600090611762906060015b6040516020818303038152906040528051906020012090565b5460ff1692915050565b611774612cad565b60ce80546001600160a01b0319166001600160a01b0392909216919091179055565b61179e612cad565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e80546001600160a01b0319166001600160a01b03831617905550565b600054610100900460ff16158080156117fb5750600054600160ff909116105b806118155750303b158015611815575060005460ff166001145b6118785760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610981565b6000805460ff19166001179055801561189b576000805461ff0019166101001790555b60c980546001600160a01b03199081166001600160a01b038a81169190911790925560ca8054821689841617905560cb8054821688841617905560cc8054821687841617905560ce80549091169185169190911790556118f961314c565b611901613183565b61190a826131bc565b6119126131e3565b6040805161036081018252600661032082018181526563727970746f60d01b610340840152825282518084018452818152651dd85b1b195d60d21b602082810191909152808401919091528351808501855260018152600f60fb1b8183015283850152835180850185526003808252621b999d60ea1b82840152606085019190915284518086018652600a815269313637b1b5b1b430b4b760b11b818401526080850152845180860186526007808252663134ba31b7b4b760c91b8285015260a0860191909152855180870187528281526207070760eb1b8185015260c0860152855180870187528281526264616f60e81b8185015260e086015285518087018752828152621e9a5b60ea1b8185015261010086015285518087018752908152663837b63cb3b7b760c91b8184015261012085015284518086018652600b81526a756e73746f707061626c6560a81b81840152610140850152845180860186528381526535b632bb32b960d11b8184015261016085015284518086018652600280825261686960f01b8285015261018086019190915285518087018752848152656b726573757360d01b818501526101a086015285518087018752600580825264616e696d6560d81b828601526101c087019190915286518088018852818152646d616e676160d81b818601526101e087015286518088018852600981526862696e616e6365757360b81b8186015261020087015286518088018852818152647265616c6d60d81b818601526102208701528651808801885291825261676f60f01b82850152610240860191909152855180870187526008815267185b1d1a5b5a5cdd60c21b818501526102608601528551808701875290815264707564677960d81b81840152610280850152845180860186528381526530bab9ba34b760d11b818401526102a08501528451808601865292835265189a5d19d95d60d21b838301526102c08401929092528351808501855291825262706f6760e81b828201526102e083019190915282518084019093526004835263636c617960e01b9083015261030081019190915260005b6019811015611c5c57611c4a828260198110611c3e57611c3e6149dd565b6020020151600061302c565b80611c5481614a39565b915050611c20565b50611c8360405180604001604052806003815260200162636f6d60e81b815250600161302c565b508015610afa576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050505050565b8686868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250611d1593508592508491506123ad565b611d1d610e37565b15611d3a5760405162461bcd60e51b8152600401610981906147cb565b611d698a611d4c8b610ca98c8c612584565b611d56888a6147f5565b611d6087896147f5565b600060016126c1565b5050505050505050505050565b611d7e612cad565b60005b81811015610cde5760c9546001600160a01b03166350960239848484818110611dac57611dac6149dd565b9050602002016020810190611dc19190613f34565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401600060405180830381600087803b158015611e0257600080fd5b505af1158015611e16573d6000803e3d6000fd5b505050508080611e2590614a39565b915050611d81565b600082815260976020526040902060010154611e4881612c15565b610cde8383612d3e565b611e5c898b6147f5565b6000600282511015611e805760405162461bcd60e51b81526004016109819061496f565b611e976110336000846001865161101691906149ca565b611e9f610e37565b15611ebc5760405162461bcd60e51b8152600401610981906147cb565b60028b14611edc5760405162461bcd60e51b8152600401610981906149f3565b611f228d8d8d898960008a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061322392505050565b84341015611f725760405162461bcd60e51b815260206004820181905260248201527f4d696e74696e674d616e616765723a204e4f545f454e4f5547485f46554e44536044820152606401610981565b611f848d8d8d8d8d8d8d8c60006133e3565b843411156112e757611f9461239e565b6001600160a01b03166108fc611faa87346149ca565b6040518115909202916000818181858888f19350505050158015611fd2573d6000803e3d6000fd5b5050505050505050505050505050565b611fea612cad565b611ff38161349f565b61200f5760405162461bcd60e51b815260040161098190614a81565b600081815260cd6020526040812061202691613d76565b60405181907f0aa1aff0f830e739d86baf0e6624d6763da02f7733575e0e463886cd062dea6a90600090a250565b61205c612cad565b612065816134c5565b610cf460008261353b565b61207a8a8c6147f5565b600060028251101561209e5760405162461bcd60e51b81526004016109819061496f565b6120b56110336000846001865161101691906149ca565b6120bd610e37565b156120da5760405162461bcd60e51b8152600401610981906147cb565b60028c146120fa5760405162461bcd60e51b8152600401610981906149f3565b61213f8e8e8e8a898b8a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061322392505050565b856001600160a01b03166323b872dd61215661239e565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152306024820152604481018890526064016020604051808303816000875af11580156121a9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121cd9190614903565b6122115760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610981565b611fd28e8e8e8e8e8e8e8c8e6133e3565b61222a612cad565b6040516370a0823160e01b81523060048201526000906001600160a01b038416906370a0823190602401602060405180830381865afa158015612271573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122959190614ac3565b60405163a9059cbb60e01b81526001600160a01b038481166004830152602482018390529192509084169063a9059cbb906044016020604051808303816000875af11580156122e8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061230c9190614903565b6123505760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610981565b604080516001600160a01b0384811682526020820184905285168183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a1505050565b60006123a8613545565b905090565b6123b68361349f565b6123d25760405162461bcd60e51b815260040161098190614a81565b600083815260cf602052604090205460ff1615156001600160401b03821615151461244e5760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544c445f455850495241424c455f4d496044820152650a69a82a886960d31b6064820152608401610981565b60006124818360408051808201825260008082526020918201528151808301909252825182529182019181019190915290565b9050600a81600001511115612529576124ac6124a0826000600a61358b565b80516020909101512090565b7fb551e0305c8163b812374b8e78b577c77f226f6f10c5ad03e52699578fbc34b8036125295760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544f4b454e5f4c4142454c5f50524f4860448201526512509255115160d21b6064820152608401610981565b612532836135ca565b61257e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a204c4142454c5f494e56414c49440000006044820152606401610981565b50505050565b60608282604051602001612599929190614adc565b604051602081830303815290604052905092915050565b604080516002808252606082810190935260009190816020015b60608152602001906001900390816125ca57905050905082816000815181106125f5576125f56149dd565b602002602001018190525060cd6000858152602001908152602001600020805461261e90614b04565b80601f016020809104026020016040519081016040528092919081815260200182805461264a90614b04565b80156126975780601f1061266c57610100808354040283529160200191612697565b820191906000526020600020905b81548152906001019060200180831161267a57829003601f168201915b5050505050816001815181106126af576126af6149dd565b60209081029190910101529392505050565b60008060006126cf88612e6b565b915091508380156126e1575060028851115b8015612763575060c9546040516331a9108f60e11b8152600481018390526001600160a01b038b8116921690636352211e90602401602060405180830381865afa158015612733573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127579190614b3e565b6001600160a01b031614155b156127c35760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e616765723a20524556455253455f5245434f52445f4e60448201526913d517d0531313d5d15160b21b6064820152608401610981565b60c954604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401602060405180830381865afa15801561280c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128309190614903565b8015612921575060c9546040516331a9108f60e11b81526004810184905230916001600160a01b031690636352211e90602401602060405180830381865afa158015612880573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128a49190614b3e565b6001600160a01b03161480612921575060c95460405163d9548e5360e01b8152600481018490526001600160a01b039091169063d9548e5390602401602060405180830381865afa1580156128fd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129219190614903565b15612a12576001600160401b038516156129a35760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b15801561298a57600080fd5b505af115801561299e573d6000803e3d6000fd5b505050505b60c954604051630fb8df0360e11b81526001600160a01b0390911690631f71be06906129db908c908c908c908c908b90600401614bb0565b600060405180830381600087803b1580156129f557600080fd5b505af1158015612a09573d6000803e3d6000fd5b50505050612c09565b612a1b8261372e565b612a248861378d565b8015612a31575087516002145b8015612a4457506001600160401b038516155b15612b225760ca5488516001600160a01b039091169063c36c2125908b908b90600090612a7357612a736149dd565b602090810291909101015160cc546040516001600160e01b031960e086901b168152612aad9392916001600160a01b031690600401614c0f565b600060405180830381600087803b158015612ac757600080fd5b505af1158015612adb573d6000803e3d6000fd5b50505050600087511115612b1d5760cc54604051633a0deb9d60e21b81526001600160a01b039091169063e837ae74906129db908a908a908790600401614c44565b612c09565b60c95460405163ba5d40b760e01b81526001600160a01b039091169063ba5d40b790612b5a908c908c908c908c908b90600401614bb0565b600060405180830381600087803b158015612b7457600080fd5b505af1158015612b88573d6000803e3d6000fd5b505050506001600160401b03851615612c095760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b158015612bf057600080fd5b505af1158015612c04573d6000803e3d6000fd5b505050505b50979650505050505050565b610cf481612c2161239e565b6137e7565b612c30828261156e565b610d815760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19166001179055612c6961239e565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b612cb561239e565b6001600160a01b0316612cd06033546001600160a01b031690565b6001600160a01b031614610d955760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610981565b610cf4600080516020614ef483398151915282611e2d565b612d48828261156e565b15610d815760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19169055612d7f61239e565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612dcb610e37565b612e0e5760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881393d517d4105554d15160621b6044820152606401610981565b600080516020614ed4833981519152805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa612e4e61239e565b6040516001600160a01b03909116815260200160405180910390a1565b805160009081905b8015612ea057829150612e8c82856110166001856149ca565b925080612e9881614c7a565b915050612e73565b50915091565b60008151600003612ef95760405162461bcd60e51b815260206004820152601b60248201527f4d696e74696e674d616e616765723a204c4142454c5f454d50545900000000006044820152606401610981565b8282604051602001612f0b9190614c91565b60405160208183030381529060405280519060200120604051602001612f3b929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b610cf4600080516020614ef48339815191528261353b565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b612fcc610e37565b15612fe95760405162461bcd60e51b8152600401610981906147cb565b600080516020614ed4833981519152805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258612e4e61239e565b6000613039600084612ea6565b600081815260cd602052604090209091506130548482614cf3565b50600081815260cf602052604090819020805460ff19168415151790555181907f4fce6f6e172b04eaa80325d8e3b0180a34945000f3e214605039e8420fdf8980906130a190869061437c565b60405180910390a260c954604051634f558e7960e01b8152600481018390526001600160a01b0390911690634f558e7990602401602060405180830381865afa1580156130f2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131169190614903565b610cde5760c9546040516307befae360e51b81526001600160a01b039091169063f7df5c6090610acc9084908790600401614db2565b600054610100900460ff166131735760405162461bcd60e51b815260040161098190614dd3565b610d9561317e61239e565b612f72565b600054610100900460ff166131aa5760405162461bcd60e51b815260040161098190614dd3565b610d9560006131b761239e565b61353b565b600054610100900460ff1661179e5760405162461bcd60e51b815260040161098190614dd3565b600054610100900460ff1661320a5760405162461bcd60e51b815260040161098190614dd3565b600080516020614ed4833981519152805460ff19169055565b600061323761323287896147f5565b612e6b565b506040516bffffffffffffffffffffffff1930606090811b821660208401524660348401528b811b82166054840152606883018490526001600160c01b031960c08a901b1660888401526090830188905286901b1660b082015290915060009061331390849061330d9060c401604051602081830303815290604052805190602001206040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c8101829052600090605c01604051602081830303815290604052805190602001209050919050565b9061384b565b905061331e816116f4565b6133765760405162461bcd60e51b8152602060048201526024808201527f4d696e74696e674d616e616765723a205349474e45525f49535f4e4f545f4d49604482015263272a22a960e11b6064820152608401610981565b42866001600160401b0316116133d85760405162461bcd60e51b815260206004820152602160248201527f4d696e74696e674d616e616765723a20455850495245445f5349474e415455526044820152604560f81b6064820152608401610981565b505050505050505050565b600061342a8a6133f38a8c6147f5565b6133fd898b6147f5565b613407888a6147f5565b60008f6001600160a01b031661341b61239e565b6001600160a01b0316146126c1565b9050896001600160a01b031661343e61239e565b6001600160a01b0316827fa545b6fd3355e8d57f8c8147bafe740545bd3ea1f94bef2576a6d532a7c3b605868660405161348b9291909182526001600160a01b0316602082015260400190565b60405180910390a450505050505050505050565b600081815260cd6020526040812080548291906134bb90614b04565b9050119050919050565b6134cd612cad565b6001600160a01b0381166135325760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610981565b610cf481612f72565b610d818282612c26565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546000906001600160a01b03163303613586575060331936013560601c90565b503390565b604080518082019091526000808252602082015260405180604001604052808381526020018486602001516135c09190614e1e565b9052949350505050565b600081516000036135dd57506000919050565b60208201805160f81c603081108015906135fb575060398160ff1611155b15801561361d575060618160ff161015801561361b5750607a8160ff1611155b155b1561362c575060009392505050565b8351600181111561369a5761364e836136466001846149ca565b015160f81c90565b915060308260ff1610158015613668575060398260ff1611155b15801561368a575060618260ff16101580156136885750607a8260ff1611155b155b1561369a57506000949350505050565b60015b6136a86001836149ca565b811015613722578381015160f81c9250602d83148015906136de575060308360ff16101580156136dc575060398360ff1611155b155b80156136ff575060618360ff16101580156136fd5750607a8360ff1611155b155b156137105750600095945050505050565b8061371a81614a39565b91505061369d565b50600195945050505050565b6137378161170e565b156137845760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a20544f4b454e5f424c4f434b45440000006044820152606401610981565b610cf48161386f565b6000806137a46000846001865161101691906149ca565b60ca549091506001600160a01b0316158015906137e05750807f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f145b9392505050565b6137f1828261156e565b610d8157613809816001600160a01b031660146138f3565b6138148360206138f3565b604051602001613825929190614e31565b60408051601f198184030181529082905262461bcd60e51b82526109819160040161437c565b600080600061385a8585613a8e565b9150915061386781613ad3565b509392505050565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd6960208201529081018290526001906138ae90606001611749565b805460ff19169115159190911790556040518181527f2ce5d9351b1d590d5a066db0d2dc7602d55f092506a83a7ee8c4d78ee357d75a9060200160405180910390a150565b60606000613902836002614ea6565b61390d906002614e1e565b6001600160401b0381111561392457613924614133565b6040519080825280601f01601f19166020018201604052801561394e576020820181803683370190505b509050600360fc1b81600081518110613969576139696149dd565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110613998576139986149dd565b60200101906001600160f81b031916908160001a90535060006139bc846002614ea6565b6139c7906001614e1e565b90505b6001811115613a3f576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106139fb576139fb6149dd565b1a60f81b828281518110613a1157613a116149dd565b60200101906001600160f81b031916908160001a90535060049490941c93613a3881614c7a565b90506139ca565b5083156137e05760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610981565b6000808251604103613ac45760208301516040840151606085015160001a613ab887828585613c89565b94509450505050613acc565b506000905060025b9250929050565b6000816004811115613ae757613ae7614ebd565b03613aef5750565b6001816004811115613b0357613b03614ebd565b03613b505760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152606401610981565b6002816004811115613b6457613b64614ebd565b03613bb15760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610981565b6003816004811115613bc557613bc5614ebd565b03613c1d5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b6064820152608401610981565b6004816004811115613c3157613c31614ebd565b03610cf45760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c604482015261756560f01b6064820152608401610981565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613cc05750600090506003613d6d565b8460ff16601b14158015613cd857508460ff16601c14155b15613ce95750600090506004613d6d565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613d3d573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613d6657600060019250925050613d6d565b9150600090505b94509492505050565b508054613d8290614b04565b6000825580601f10613d92575050565b601f016020900490600052602060002090810190610cf491905b80821115613dc05760008155600101613dac565b5090565b600060208284031215613dd657600080fd5b81356001600160e01b0319811681146137e057600080fd5b6001600160401b0381168114610cf457600080fd5b8035613e0e81613dee565b919050565b60008060408385031215613e2657600080fd5b8235613e3181613dee565b946020939093013593505050565b600060208284031215613e5157600080fd5b5035919050565b60008083601f840112613e6a57600080fd5b5081356001600160401b03811115613e8157600080fd5b602083019150836020828501011115613acc57600080fd5b600080600060408486031215613eae57600080fd5b8335925060208401356001600160401b03811115613ecb57600080fd5b613ed786828701613e58565b9497909650939450505050565b6001600160a01b0381168114610cf457600080fd5b8035613e0e81613ee4565b60008060408385031215613f1757600080fd5b823591506020830135613f2981613ee4565b809150509250929050565b600060208284031215613f4657600080fd5b81356137e081613ee4565b60008083601f840112613f6357600080fd5b5081356001600160401b03811115613f7a57600080fd5b6020830191508360208260051b8501011115613acc57600080fd5b8015158114610cf457600080fd5b60008060008060008060008060a0898b031215613fbf57600080fd5b8835613fca81613ee4565b975060208901356001600160401b0380821115613fe657600080fd5b613ff28c838d01613f51565b909950975060408b013591508082111561400b57600080fd5b6140178c838d01613f51565b909750955060608b013591508082111561403057600080fd5b5061403d8b828c01613f51565b909450925050608089013561405181613f95565b809150509295985092959890939650565b600080600080600080600080600060c08a8c03121561408057600080fd5b893561408b81613ee4565b985060208a01356001600160401b03808211156140a757600080fd5b6140b38d838e01613f51565b909a50985060408c01359150808211156140cc57600080fd5b6140d88d838e01613f51565b909850965060608c01359150808211156140f157600080fd5b506140fe8c828d01613f51565b90955093505060808a013561411281613dee565b915060a08a013561412281613f95565b809150509295985092959850929598565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561417157614171614133565b604052919050565b60006001600160401b0382111561419257614192614133565b5060051b60200190565b600060208083850312156141af57600080fd5b82356001600160401b038111156141c557600080fd5b8301601f810185136141d657600080fd5b80356141e96141e482614179565b614149565b81815260059190911b8201830190838101908783111561420857600080fd5b928401925b8284101561422f57833561422081613ee4565b8252928401929084019061420d565b979650505050505050565b6000806000806060858703121561425057600080fd5b843561425b81613ee4565b93506020850135925060408501356001600160401b0381111561427d57600080fd5b61428987828801613e58565b95989497509550505050565b600080602083850312156142a857600080fd5b82356001600160401b038111156142be57600080fd5b6142ca85828601613e58565b90969095509350505050565b6000806000604084860312156142eb57600080fd5b83356001600160401b0381111561430157600080fd5b61430d86828701613e58565b909450925050602084013561432181613f95565b809150509250925092565b60005b8381101561434757818101518382015260200161432f565b50506000910152565b6000815180845261436881602086016020860161432c565b601f01601f19169290920160200192915050565b6020815260006137e06020830184614350565b60008060008060008060c087890312156143a857600080fd5b86356143b381613ee4565b955060208701356143c381613ee4565b945060408701356143d381613ee4565b935060608701356143e381613ee4565b925060808701356143f381613ee4565b915060a087013561440381613ee4565b809150509295509295509295565b60008060008060008060008060a0898b03121561442d57600080fd5b883561443881613ee4565b97506020890135965060408901356001600160401b038082111561445b57600080fd5b6144678c838d01613e58565b909850965060608b013591508082111561448057600080fd5b61448c8c838d01613f51565b909650945060808b01359150808211156144a557600080fd5b506144b28b828c01613f51565b999c989b5096995094979396929594505050565b600080602083850312156144d957600080fd5b82356001600160401b038111156144ef57600080fd5b6142ca85828601613f51565b600080600080600080600080600080600060e08c8e03121561451c57600080fd5b6145258c613ef9565b9a506001600160401b038060208e0135111561454057600080fd5b6145508e60208f01358f01613f51565b909b50995060408d013581101561456657600080fd5b6145768e60408f01358f01613f51565b909950975060608d013581101561458c57600080fd5b61459c8e60608f01358f01613f51565b90975095506145ad60808e01613e03565b945060a08d013593508060c08e013511156145c757600080fd5b506145d88d60c08e01358e01613e58565b81935080925050509295989b509295989b9093969950565b6000806000806000806000806000806000806101008d8f03121561461357600080fd5b61461c8d613ef9565b9b506001600160401b0360208e0135111561463657600080fd5b6146468e60208f01358f01613f51565b909b5099506001600160401b0360408e0135111561466357600080fd5b6146738e60408f01358f01613f51565b90995097506001600160401b0360608e0135111561469057600080fd5b6146a08e60608f01358f01613f51565b90975095506146b160808e01613e03565b94506146bf60a08e01613ef9565b935060c08d013592506001600160401b0360e08e013511156146e057600080fd5b6146f08e60e08f01358f01613e58565b81935080925050509295989b509295989b509295989b565b6000806040838503121561471b57600080fd5b823561472681613ee4565b91506020830135613f2981613ee4565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b60006020828403121561477d57600080fd5b81516137e081613dee565b60208082526023908201527f4d696e74696e674d616e616765723a20544f4b454e5f4e4f545f455850495241604082015262424c4560e81b606082015260800190565b60208082526010908201526f14185d5cd8589b194e8814105554d15160821b604082015260600190565b60006148036141e484614179565b80848252602080830192508560051b85013681111561482157600080fd5b855b818110156148b35780356001600160401b03808211156148435760008081fd5b90880190601f36818401126148585760008081fd5b82358281111561486a5761486a614133565b61487b818301601f19168801614149565b9250808352368782860101111561489457600091508182fd5b8087850188850137600090830187015250865250938201938201614823565b50919695505050505050565b60208082526024908201527f4d696e74696e674d616e616765723a2043414c4c45525f49535f4e4f545f4d49604082015263272a22a960e11b606082015260800190565b60006020828403121561491557600080fd5b81516137e081613f95565b6020808252602f908201527f4d696e74696e674d616e616765723a2053454e4445525f49535f4e4f545f415060408201526e282927ab22a22fa7a92fa7aba722a960891b606082015260800190565b60208082526025908201527f4d696e74696e674d616e616765723a204c4142454c535f4c454e4754485f42456040820152642627abaf9960d91b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b81810381811115610954576109546149b4565b634e487b7160e01b600052603260045260246000fd5b60208082526026908201527f4d696e74696e674d616e616765723a20535542444f4d41494e535f4e4f545f41604082015265131313d5d15160d21b606082015260800190565b600060018201614a4b57614a4b6149b4565b5060010190565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b60208082526022908201527f4d696e74696e674d616e616765723a20544c445f4e4f545f5245474953544552604082015261115160f21b606082015260800190565b600060208284031215614ad557600080fd5b5051919050565b6b756e732d646576746573742d60a01b81528183600c83013760009101600c01908152919050565b600181811c90821680614b1857607f821691505b602082108103614b3857634e487b7160e01b600052602260045260246000fd5b50919050565b600060208284031215614b5057600080fd5b81516137e081613ee4565b600081518084526020808501808196508360051b8101915082860160005b85811015614ba3578284038952614b91848351614350565b98850198935090840190600101614b79565b5091979650505050505050565b6001600160a01b038616815260a060208201819052600090614bd490830187614b5b565b8281036040840152614be68187614b5b565b90508281036060840152614bfa8186614b5b565b91505082151560808301529695505050505050565b600060018060a01b03808616835260606020840152614c316060840186614350565b9150808416604084015250949350505050565b606081526000614c576060830186614b5b565b8281036020840152614c698186614b5b565b915050826040830152949350505050565b600081614c8957614c896149b4565b506000190190565b60008251614ca381846020870161432c565b9190910192915050565b601f821115610cde57600081815260208120601f850160051c81016020861015614cd45750805b601f850160051c820191505b818110156116a357828155600101614ce0565b81516001600160401b03811115614d0c57614d0c614133565b614d2081614d1a8454614b04565b84614cad565b602080601f831160018114614d555760008415614d3d5750858301515b600019600386901b1c1916600185901b1785556116a3565b600085815260208120601f198616915b82811015614d8457888601518255948401946001909101908401614d65565b5085821015614da25787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b828152604060208201526000614dcb6040830184614350565b949350505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b80820180821115610954576109546149b4565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351614e6981601785016020880161432c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351614e9a81602884016020880161432c565b01602801949350505050565b8082028115828204841417610954576109546149b4565b634e487b7160e01b600052602160045260246000fdfe5496787fc1ebdfeba375028c1865f13fbb1d63c0caa356ccc1b29a80f3ebd6229f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000811000a"; +const isSuperArgs = (xs) => xs.length > 1; +class MintingManager__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(overrides) { + return super.getDeployTransaction(overrides || {}); + } + deploy(overrides) { + return super.deploy(overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.MintingManager__factory = MintingManager__factory; +MintingManager__factory.bytecode = _bytecode; +MintingManager__factory.abi = _abi; diff --git a/dist/types/factories/contracts/ProxyReader__factory.d.ts b/dist/types/factories/contracts/ProxyReader__factory.d.ts new file mode 100644 index 00000000..01ec91bb --- /dev/null +++ b/dist/types/factories/contracts/ProxyReader__factory.d.ts @@ -0,0 +1,652 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../common"; +import type { ProxyReader, ProxyReaderInterface } from "../../contracts/ProxyReader"; +declare type ProxyReaderConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class ProxyReader__factory extends ContractFactory { + constructor(...args: ProxyReaderConstructorParams); + getDeployTransaction(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): ProxyReader__factory; + static readonly bytecode = "0x608060405234801561001057600080fd5b50613cb4806100206000396000f3fe608060405234801561001057600080fd5b506004361061021c5760003560e01c80638da5cb5b11610125578063bebec6b4116100ad578063e985e9c51161007c578063e985e9c514610540578063f059235914610553578063f2fde38b14610566578063ffa1ad7414610579578063ffad6f551461059d57600080fd5b8063bebec6b4146104e7578063bfc5429b146104fa578063c15ae7cf1461050d578063c87b56dd1461052d57600080fd5b8063a81ce6f9116100f4578063a81ce6f91461046d578063ac9650d814610480578063b3f9e4cb146104a0578063b85afd28146104b3578063b98b3526146104d457600080fd5b80638da5cb5b146103f157806391015f6b146103f9578063933c051d1461041b578063a3f4df7e1461043d57600080fd5b80634bd79ed0116101a857806370a082311161017757806370a082311461038d578063715018a6146103a05780637e37479e146103a857806383caffbe146103bb578063869b8884146103ce57600080fd5b80634bd79ed0146103335780634f558e79146103465780636352211e14610359578063672b9f811461036c57600080fd5b80631bd8cc1a116101ef5780631bd8cc1a146102ac5780631be5e7ed146102cc578063276fabb1146102ec578063430c20811461030d578063485cc9551461032057600080fd5b806301ffc9a7146102215780630328075514610249578063081812fc1461026c57806313af403514610297575b600080fd5b61023461022f366004612c9d565b6105b0565b60405190151581526020015b60405180910390f35b61025c610257366004612d0b565b610638565b6040516102409493929190612dfe565b61027f61027a366004612e3c565b61065b565b6040516001600160a01b039091168152602001610240565b6102aa6102a5366004612e6a565b610760565b005b6102bf6102ba366004612d0b565b6107d1565b6040516102409190612e87565b6102df6102da366004612edb565b6107f0565b6040516102409190612f12565b6102ff6102fa366004612f25565b61091b565b604051908152602001610240565b61023461031b366004612f66565b61098f565b6102aa61032e366004612f92565b610aa2565b6102aa610341366004612fcb565b610bf5565b610234610354366004612e3c565b610e51565b61027f610367366004612e3c565b610e5c565b61037f61037a366004613036565b610e67565b604051610240929190613058565b6102ff61039b366004612e6a565b610f97565b6102aa611095565b6102ff6103b6366004612e6a565b6110a9565b6102bf6103c936600461307d565b611118565b6103e16103dc366004612fcb565b6114f0565b60405161024094939291906131bb565b61027f6116e6565b61040c610407366004612d0b565b611714565b60405161024093929190613208565b61042e610429366004612fcb565b611734565b60405161024093929190613234565b6102df604051806040016040528060118152602001702aa7299d10283937bc3c902932b0b232b960791b81525081565b61027f61047b366004612e3c565b6118bd565b61049361048e366004612f25565b61198b565b6040516102409190613277565b61027f6104ae366004612e3c565b611a7f565b6104c66104c1366004612d0b565b611b05565b6040516102409291906132d9565b6102df6104e23660046132fe565b611ce1565b6102df6104f5366004612e6a565b611cfb565b6102df6105083660046132fe565b611d6f565b61052061051b366004612f25565b611d89565b6040516102409190613371565b6102df61053b366004612e3c565b611e37565b61023461054e366004612f92565b611f09565b6102aa610561366004612fcb565b611f54565b6102aa610574366004612e6a565b612018565b6102df604051806040016040528060058152602001640302e352e360dc1b81525081565b6102aa6105ab366004613384565b612085565b60006001600160e01b031982166362526e6360e01b14806105e157506001600160e01b03198216636fa624af60e11b145b806105fc57506001600160e01b031982166308da864d60e31b145b8061061757506001600160e01b03198216638584880360e01b145b8061063257506301ffc9a760e01b6001600160e01b03198316145b92915050565b6000806060806106498787876120d8565b93509350935093505b93509350935093565b60006106668261233a565b61067257506000919050565b61067b826123d2565b6106f25760665460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa1580156106c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106ed91906133bd565b610632565b60655460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa15801561073c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061063291906133bd565b600061076a6116e6565b6001600160a01b0316146107c55760405162461bcd60e51b815260206004820152601e60248201527f50726f78795265616465723a204f574e45525f414c52454144595f534554000060448201526064015b60405180910390fd5b6107ce81612419565b50565b60606107e66107e0848661346a565b83612495565b90505b9392505050565b60606107fb826123d2565b1561088057606554604051631be5e7ed60e01b81526001600160a01b0390911690631be5e7ed9061083490879087908790600401613547565b600060405180830381865afa158015610851573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261087991908101906135b0565b90506107e9565b600061088b83612617565b90506001600160a01b0381163b1561091357604051631be5e7ed60e01b81526001600160a01b03821690631be5e7ed906108cd90889088908890600401613547565b600060405180830381865afa92505050801561090b57506040513d6000823e601f3d908101601f1916820160405261090891908101906135b0565b60015b156109135791505b509392505050565b60655460405163276fabb160e01b81526000916001600160a01b03169063276fabb19061094e908690869060040161366c565b602060405180830381865afa15801561096b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613680565b600061099a8261233a565b6109a657506000610632565b6109af826123d2565b610a2d5760665460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a04573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a289190613699565b6107e9565b60655460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a7e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613699565b600054610100900460ff1615808015610ac25750600054600160ff909116105b80610adc5750303b158015610adc575060005460ff166001145b610b3f5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107bc565b6000805460ff191660011790558015610b62576000805461ff0019166101001790555b606580546001600160a01b038086166001600160a01b0319928316179092556066805492851692909116919091179055610b9a61268a565b610ba261268a565b610baa6126b1565b8015610bf0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b610bfd6126e1565b828114610c4c5760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107bc565b60005b83811015610e4a5760006068868684818110610c6d57610c6d6136bb565b9050602002810190610c7f91906136d1565b604051610c8d929190613717565b908152604051908190036020019020541115610cf1576068858583818110610cb757610cb76136bb565b9050602002810190610cc991906136d1565b604051610cd7929190613717565b90815260200160405180910390206000610cf19190612c18565b60005b838383818110610d0657610d066136bb565b9050602002810190610d189190613727565b9050811015610ddc576068868684818110610d3557610d356136bb565b9050602002810190610d4791906136d1565b604051610d55929190613717565b9081526020016040518091039020848484818110610d7557610d756136bb565b9050602002810190610d879190613727565b83818110610d9757610d976136bb565b9050602002810190610da991906136d1565b82546001810184556000938452602090932090920191610dc991836137f8565b5080610dd4816138cd565b915050610cf4565b507fb2b57b54285120d17f49f2490a39ef791441fd0ad1e6b6818c23262bf91f061c858583818110610e1057610e106136bb565b9050602002810190610e2291906136d1565b604051610e309291906138e6565b60405180910390a180610e42816138cd565b915050610c4f565b5050505050565b60006106328261233a565b600061063282612740565b606080610e73836123d2565b15610ef95760655460405163672b9f8160e01b815260048101869052602481018590526001600160a01b039091169063672b9f8190604401600060405180830381865afa158015610ec8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610ef091908101906138fa565b91509150610f90565b6000610f0484612617565b90506001600160a01b0381163b15610f8e5760405163672b9f8160e01b815260048101869052602481018590526001600160a01b0382169063672b9f8190604401600060405180830381865afa925050508015610f8357506040513d6000823e601f3d908101601f19168201604052610f8091908101906138fa565b60015b15610f8e5790935091505b505b9250929050565b6065546040516370a0823160e01b81526001600160a01b03838116600483015260009283929116906370a0823190602401602060405180830381865afa158015610fe5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110099190613680565b6066549091506001600160a01b031615610632576066546040516370a0823160e01b81526001600160a01b038581166004830152909116906370a0823190602401602060405180830381865afa158015611067573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061108b9190613680565b6107e9908261395d565b61109d6126e1565b6110a76000612419565b565b606554604051633f1ba3cf60e11b81526001600160a01b0383811660048301526000921690637e37479e90602401602060405180830381865afa1580156110f4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190613680565b606060006067868660405161112e929190613717565b9081526020016040518091039020805461114790613770565b80601f016020809104026020016040519081016040528092919081815260200182805461117390613770565b80156111c05780601f10611195576101008083540402835291602001916111c0565b820191906000526020600020905b8154815290600101906020018083116111a357829003601f168201915b5050505050905080516000036111d657506114e8565b6000604051806040016040528060068152602001653a37b5b2b71760d11b81525090506000604051806040016040528060088152602001672e6164647265737360c01b81525090506000604051806040016040528060018152602001601760f91b815250905060008385838c8c868d8d8a60405160200161125f99989796959493929190613970565b6040516020818303038152906040529050600060688260405161128291906139f3565b9081526020016040518091039020805480602002602001604051908101604052809291908181526020016000905b8282101561135c5783829060005260206000200180546112cf90613770565b80601f01602080910402602001604051908101604052809291908181526020018280546112fb90613770565b80156113485780601f1061131d57610100808354040283529160200191611348565b820191906000526020600020905b81548152906001019060200180831161132b57829003601f168201915b5050505050815260200190600101906112b0565b50505050905080516003611370919061395d565b6001600160401b03811115611387576113876133da565b6040519080825280602002602001820160405280156113ba57816020015b60608152602001906001900390816113a55790505b50965081876000815181106113d1576113d16136bb565b602002602001018190525060005b815181101561143e578181815181106113fa576113fa6136bb565b602002602001015188826001611410919061395d565b81518110611420576114206136bb565b60200260200101819052508080611436906138cd565b9150506113df565b508486848d8d8860405160200161145a96959493929190613a0f565b6040516020818303038152906040528782516001611478919061395d565b81518110611488576114886136bb565b60200260200101819052508486856040516020016114a893929190613a72565b60405160208183030381529060405287825160026114c6919061395d565b815181106114d6576114d66136bb565b60200260200101819052505050505050505b949350505050565b6060808080846001600160401b0381111561150d5761150d6133da565b604051908082528060200260200182016040528015611536578160200160208202803683370190505b509350846001600160401b03811115611551576115516133da565b60405190808252806020026020018201604052801561157a578160200160208202803683370190505b509250846001600160401b03811115611595576115956133da565b6040519080825280602002602001820160405280156115c857816020015b60608152602001906001900390816115b35790505b509150846001600160401b038111156115e3576115e36133da565b60405190808252806020026020018201604052801561161657816020015b60608152602001906001900390816116015790505b50905060005b858110156116da57611647898989898581811061163b5761163b6136bb565b905060200201356120d8565b888581518110611659576116596136bb565b60200260200101888681518110611672576116726136bb565b6020026020010188878151811061168b5761168b6136bb565b602002602001018888815181106116a4576116a46136bb565b6020908102919091010193909352929091526001600160a01b0392831690915291169052806116d2816138cd565b91505061161c565b50945094509450949050565b7fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c8121905546001600160a01b031690565b6000806060611724868686612761565b9250925092505b93509350939050565b60608080836001600160401b03811115611750576117506133da565b604051908082528060200260200182016040528015611779578160200160208202803683370190505b509250836001600160401b03811115611794576117946133da565b6040519080825280602002602001820160405280156117bd578160200160208202803683370190505b509150836001600160401b038111156117d8576117d86133da565b60405190808252806020026020018201604052801561180b57816020015b60608152602001906001900390816117f65790505b50905060005b848110156118b25761183c8888888885818110611830576118306136bb565b90506020020135612761565b86848151811061184e5761184e6136bb565b60200260200101868581518110611867576118676136bb565b60200260200101868681518110611880576118806136bb565b60209081029190910101929092526001600160a01b0392831690915291169052806118aa816138cd565b915050611811565b509450945094915050565b606554604051634f558e7960e01b8152600481018390526000916001600160a01b031690634f558e7990602401602060405180830381865afa158015611907573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061192b9190613699565b156119415750506065546001600160a01b031690565b6066546001600160a01b03161580159061196d575060006119618361296c565b6001600160a01b031614155b156119835750506066546001600160a01b031690565b506000919050565b6060816001600160401b038111156119a5576119a56133da565b6040519080825280602002602001820160405280156119d857816020015b60608152602001906001900390816119c35790505b50905060005b82811015611a7857611a48308585848181106119fc576119fc6136bb565b9050602002810190611a0e91906136d1565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061299e92505050565b828281518110611a5a57611a5a6136bb565b60200260200101819052508080611a70906138cd565b9150506119de565b5092915050565b6000611a8a8261233a565b611a9657506000919050565b611a9f826123d2565b611ad45760665460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb906024016106ac565b60655460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb9060240161071f565b606080836001600160401b03811115611b2057611b206133da565b604051908082528060200260200182016040528015611b5357816020015b6060815260200190600190039081611b3e5790505b509150836001600160401b03811115611b6e57611b6e6133da565b604051908082528060200260200182016040528015611ba157816020015b6060815260200190600190039081611b8c5790505b509050611bad836123d2565b15611c345760655460405163170b5fa560e31b81526001600160a01b039091169063b85afd2890611be690889088908890600401613ab5565b600060405180830381865afa158015611c03573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611c2b9190810190613b72565b91509150611cd9565b6000611c3f84612617565b90506001600160a01b0381163b15158015611c5957508415155b15611cd75760405163170b5fa560e31b81526001600160a01b0382169063b85afd2890611c8e90899089908990600401613ab5565b600060405180830381865afa925050508015611ccc57506040513d6000823e601f3d908101601f19168201604052611cc99190810190613b72565b60015b15611cd75790935091505b505b935093915050565b6060611cf08686868686612a92565b979650505050505050565b606554604051632fafb1ad60e21b81526001600160a01b038381166004830152606092169063bebec6b4906024015b600060405180830381865afa158015611d47573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261063291908101906135b0565b6060611d7e8686868686612a92565b509695505050505050565b6060816001600160401b03811115611da357611da36133da565b604051908082528060200260200182016040528015611dcc578160200160208202803683370190505b50905060005b82811015611a7857611dfb848483818110611def57611def6136bb565b90506020020135612740565b828281518110611e0d57611e0d6136bb565b6001600160a01b039092166020928302919091019091015280611e2f816138cd565b915050611dd2565b6060611e428261233a565b611e5a57505060408051602081019091526000815290565b611e63826123d2565b611ed85760665460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401600060405180830381865afa158015611eb0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106ed91908101906135b0565b60655460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401611d2a565b60405162461bcd60e51b815260206004820152601f60248201527f50726f78795265616465723a20554e535550504f525445445f4d4554484f440060448201526000906064016107bc565b611f5c6126e1565b828114611fab5760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107bc565b60005b83811015610e4a57612006858583818110611fcb57611fcb6136bb565b9050602002810190611fdd91906136d1565b858585818110611fef57611fef6136bb565b905060200281019061200191906136d1565b612b3e565b80612010816138cd565b915050611fae565b6120206126e1565b6001600160a01b0381166107c55760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107bc565b61208d6126e1565b60005b83811015610e4a576120c68585838181106120ad576120ad6136bb565b90506020028101906120bf91906136d1565b8585612b3e565b806120d0816138cd565b915050612090565b600080606080856001600160401b038111156120f6576120f66133da565b60405190808252806020026020018201604052801561212957816020015b60608152602001906001900390816121145790505b509150856001600160401b03811115612144576121446133da565b60405190808252806020026020018201604052801561217757816020015b60608152602001906001900390816121625790505b509050612183856123d2565b156122845760655460405163b3f9e4cb60e01b8152600481018790526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa1580156121d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121f591906133bd565b935061220085612bad565b60655460405163170b5fa560e31b81529194506001600160a01b03169063b85afd2890612235908a908a908a90600401613ab5565b600060405180830381865afa158015612252573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261227a9190810190613b72565b9092509050610652565b61228d85612617565b93506122988561296c565b92506001600160a01b0384163b151580156122b4575060008251115b156106525760405163170b5fa560e31b81526001600160a01b0385169063b85afd28906122e9908a908a908a90600401613ab5565b600060405180830381865afa92505050801561232757506040513d6000823e601f3d908101601f191682016040526123249190810190613b72565b60015b1561065257909250905093509350935093565b6000612345826123d2565b6123645760006123548361296c565b6001600160a01b03161415610632565b606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e79906024015b602060405180830381865afa1580156123ae573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190613699565b6066546000906001600160a01b031615806106325750606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401612391565b60006124236116e6565b9050817fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c812190580546001600160a01b0319166001600160a01b03928316179055604051838216918316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b606082516001600160401b038111156124b0576124b06133da565b6040519080825280602002602001820160405280156124e357816020015b60608152602001906001900390816124ce5790505b5090506124ef826123d2565b1561257257606554604051630dec660d60e11b81526001600160a01b0390911690631bd8cc1a906125269086908690600401613bcb565b600060405180830381865afa158015612543573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261256b9190810190613bed565b9050610632565b600061257d83612617565b90506001600160a01b0381163b15158015612599575060008451115b15611a7857604051630dec660d60e11b81526001600160a01b03821690631bd8cc1a906125cc9087908790600401613bcb565b600060405180830381865afa92505050801561260a57506040513d6000823e601f3d908101601f191682016040526126079190810190613bed565b60015b15611a7857949350505050565b60665460405163b3f9e4cb60e01b8152600481018390526000916001600160a01b03169063b3f9e4cb906024015b602060405180830381865afa92505050801561267e575060408051601f3d908101601f1916820190925261267b918101906133bd565b60015b61063257506000919050565b600054610100900460ff166110a75760405162461bcd60e51b81526004016107bc90613c21565b600054610100900460ff166126d85760405162461bcd60e51b81526004016107bc90613c21565b6110a733612419565b336126ea6116e6565b6001600160a01b0316146110a75760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107bc565b600061274b826123d2565b612758576106ed8261296c565b61063282612bad565b6000806060846001600160401b0381111561277e5761277e6133da565b6040519080825280602002602001820160405280156127b157816020015b606081526020019060019003908161279c5790505b5090506127bd846123d2565b156128bb5760655460405163b3f9e4cb60e01b8152600481018690526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561280b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061282f91906133bd565b925061283a84612bad565b606554604051630dec660d60e11b81529193506001600160a01b031690631bd8cc1a9061286f90899089908990600401613c6c565b600060405180830381865afa15801561288c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526128b49190810190613bed565b905061172b565b6128c484612617565b92506128cf8461296c565b91506001600160a01b0383163b151580156128e957508415155b1561172b57604051630dec660d60e11b81526001600160a01b03841690631bd8cc1a9061291e90899089908990600401613c6c565b600060405180830381865afa92505050801561295c57506040513d6000823e601f3d908101601f191682016040526129599190810190613bed565b60015b1561172b57905093509350939050565b6066546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401612645565b60606001600160a01b0383163b612a065760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b60648201526084016107bc565b600080846001600160a01b031684604051612a2191906139f3565b600060405180830381855af49150503d8060008114612a5c576040519150601f19603f3d011682016040523d82523d6000602084013e612a61565b606091505b5091509150612a898282604051806060016040528060278152602001613c8160279139612bdf565b95945050505050565b6060806000612aa388888888611118565b90506000612ab18286612495565b905060005b8151811015612b31576000828281518110612ad357612ad36136bb565b6020026020010151511115612b1f57828181518110612af457612af46136bb565b60200260200101519350818181518110612b1057612b106136bb565b60200260200101519450612b31565b80612b29816138cd565b915050612ab6565b5050509550959350505050565b818160678686604051612b52929190613717565b90815260200160405180910390209182612b6d9291906137f8565b507f0bf4b04a0f6d7d0800284e1abb0f58f795c0a25b9088634b6ab847be51001dec8484604051612b9f9291906138e6565b60405180910390a150505050565b6065546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401612645565b60608315612bee5750816107e9565b825115612bfe5782518084602001fd5b8160405162461bcd60e51b81526004016107bc9190612f12565b50805460008255906000526020600020908101906107ce91905b80821115612c4f576000612c468282612c53565b50600101612c32565b5090565b508054612c5f90613770565b6000825580601f10612c6f575050565b601f0160209004906000526020600020908101906107ce91905b80821115612c4f5760008155600101612c89565b600060208284031215612caf57600080fd5b81356001600160e01b0319811681146107e957600080fd5b60008083601f840112612cd957600080fd5b5081356001600160401b03811115612cf057600080fd5b6020830191508360208260051b8501011115610f9057600080fd5b600080600060408486031215612d2057600080fd5b83356001600160401b03811115612d3657600080fd5b612d4286828701612cc7565b909790965060209590950135949350505050565b60005b83811015612d71578181015183820152602001612d59565b50506000910152565b60008151808452612d92816020860160208601612d56565b601f01601f19169290920160200192915050565b600082825180855260208086019550808260051b84010181860160005b84811015612df157601f19868403018952612ddf838351612d7a565b98840198925090830190600101612dc3565b5090979650505050505050565b6001600160a01b03858116825284166020820152608060408201819052600090612e2a90830185612da6565b8281036060840152611cf08185612da6565b600060208284031215612e4e57600080fd5b5035919050565b6001600160a01b03811681146107ce57600080fd5b600060208284031215612e7c57600080fd5b81356107e981612e55565b6020815260006107e96020830184612da6565b60008083601f840112612eac57600080fd5b5081356001600160401b03811115612ec357600080fd5b602083019150836020828501011115610f9057600080fd5b600080600060408486031215612ef057600080fd5b83356001600160401b03811115612f0657600080fd5b612d4286828701612e9a565b6020815260006107e96020830184612d7a565b60008060208385031215612f3857600080fd5b82356001600160401b03811115612f4e57600080fd5b612f5a85828601612cc7565b90969095509350505050565b60008060408385031215612f7957600080fd5b8235612f8481612e55565b946020939093013593505050565b60008060408385031215612fa557600080fd5b8235612fb081612e55565b91506020830135612fc081612e55565b809150509250929050565b60008060008060408587031215612fe157600080fd5b84356001600160401b0380821115612ff857600080fd5b61300488838901612cc7565b9096509450602087013591508082111561301d57600080fd5b5061302a87828801612cc7565b95989497509550505050565b6000806040838503121561304957600080fd5b50508035926020909101359150565b60408152600061306b6040830185612d7a565b8281036020840152612a898185612d7a565b6000806000806040858703121561309357600080fd5b84356001600160401b03808211156130aa57600080fd5b6130b688838901612e9a565b909650945060208701359150808211156130cf57600080fd5b5061302a87828801612e9a565b600081518084526020808501945080840160005b838110156131155781516001600160a01b0316875295820195908201906001016130f0565b509495945050505050565b60008282518085526020808601955060058183821b8501018287016000805b868110156131ac57601f1988850381018c5283518051808752908801908887019080891b88018a01865b8281101561319557858a8303018452613183828651612d7a565b948c0194938c01939150600101613169565b509e8a019e9750505093870193505060010161313f565b50919998505050505050505050565b6080815260006131ce60808301876130dc565b82810360208401526131e081876130dc565b905082810360408401526131f48186613120565b90508281036060840152611cf08185613120565b6001600160a01b03848116825283166020820152606060408201819052600090612a8990830184612da6565b60608152600061324760608301866130dc565b828103602084015261325981866130dc565b9050828103604084015261326d8185613120565b9695505050505050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156132cc57603f198886030184526132ba858351612d7a565b9450928501929085019060010161329e565b5092979650505050505050565b6040815260006132ec6040830185612da6565b8281036020840152612a898185612da6565b60008060008060006060868803121561331657600080fd5b85356001600160401b038082111561332d57600080fd5b61333989838a01612e9a565b9097509550602088013591508082111561335257600080fd5b5061335f88828901612e9a565b96999598509660400135949350505050565b6020815260006107e960208301846130dc565b6000806000806040858703121561339a57600080fd5b84356001600160401b03808211156133b157600080fd5b6130b688838901612cc7565b6000602082840312156133cf57600080fd5b81516107e981612e55565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715613418576134186133da565b604052919050565b60006001600160401b03821115613439576134396133da565b5060051b60200190565b60006001600160401b0382111561345c5761345c6133da565b50601f01601f191660200190565b600061347d61347884613420565b6133f0565b80848252602080830192508560051b85013681111561349b57600080fd5b855b818110156135125780356001600160401b038111156134bc5760008081fd5b870136601f8201126134ce5760008081fd5b80356134dc61347882613443565b81815236868385010111156134f15760008081fd5b8186840187830137600091810186019190915286525093820193820161349d565b50919695505050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60408152600061355b60408301858761351e565b9050826020830152949350505050565b600082601f83011261357c57600080fd5b815161358a61347882613443565b81815284602083860101111561359f57600080fd5b6114e8826020830160208701612d56565b6000602082840312156135c257600080fd5b81516001600160401b038111156135d857600080fd5b6114e88482850161356b565b60008383855260208086019550808560051b8301018460005b87811015612df157848303601f19018952813536889003601e1901811261362357600080fd5b870184810190356001600160401b0381111561363e57600080fd5b80360382131561364d57600080fd5b61365885828461351e565b9a86019a94505050908301906001016135fd565b6020815260006107e66020830184866135e4565b60006020828403121561369257600080fd5b5051919050565b6000602082840312156136ab57600080fd5b815180151581146107e957600080fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e198436030181126136e857600080fd5b8301803591506001600160401b0382111561370257600080fd5b602001915036819003821315610f9057600080fd5b8183823760009101908152919050565b6000808335601e1984360301811261373e57600080fd5b8301803591506001600160401b0382111561375857600080fd5b6020019150600581901b3603821315610f9057600080fd5b600181811c9082168061378457607f821691505b6020821081036137a457634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115610bf057600081815260208120601f850160051c810160208610156137d15750805b601f850160051c820191505b818110156137f0578281556001016137dd565b505050505050565b6001600160401b0383111561380f5761380f6133da565b6138238361381d8354613770565b836137aa565b6000601f841160018114613857576000851561383f5750838201355b600019600387901b1c1916600186901b178355610e4a565b600083815260209020601f19861690835b828110156138885786850135825560209485019460019092019101613868565b50868210156138a55760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b634e487b7160e01b600052601160045260246000fd5b6000600182016138df576138df6138b7565b5060010190565b6020815260006107e660208301848661351e565b6000806040838503121561390d57600080fd5b82516001600160401b038082111561392457600080fd5b6139308683870161356b565b9350602085015191508082111561394657600080fd5b506139538582860161356b565b9150509250929050565b80820180821115610632576106326138b7565b60008a51613982818460208f01612d56565b8a5190830190613996818360208f01612d56565b8a519101906139a9818360208e01612d56565b0187898237600090880190815286516139c6818360208b01612d56565b0184868237600090850190815283516139e3818360208801612d56565b019b9a5050505050505050505050565b60008251613a05818460208701612d56565b9190910192915050565b60008751613a21818460208c01612d56565b875190830190613a35818360208c01612d56565b8751910190613a48818360208b01612d56565b018486823760009085019081528351613a65818360208801612d56565b0198975050505050505050565b60008451613a84818460208901612d56565b845190830190613a98818360208901612d56565b8451910190613aab818360208801612d56565b0195945050505050565b6040808252810183905260006001600160fb1b03841115613ad557600080fd5b8360051b808660608501376020830193909352500160600192915050565b600082601f830112613b0457600080fd5b81516020613b1461347883613420565b82815260059290921b84018101918181019086841115613b3357600080fd5b8286015b84811015611d7e5780516001600160401b03811115613b565760008081fd5b613b648986838b010161356b565b845250918301918301613b37565b60008060408385031215613b8557600080fd5b82516001600160401b0380821115613b9c57600080fd5b613ba886838701613af3565b93506020850151915080821115613bbe57600080fd5b5061395385828601613af3565b604081526000613bde6040830185612da6565b90508260208301529392505050565b600060208284031215613bff57600080fd5b81516001600160401b03811115613c1557600080fd5b6114e884828501613af3565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60408152600061355b6040830185876135e456fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a"; + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "uint8"; + readonly name: "version"; + readonly type: "uint8"; + }]; + readonly name: "Initialized"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "previousOwner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "newOwner"; + readonly type: "address"; + }]; + readonly name: "OwnershipTransferred"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "string"; + readonly name: "tokenKey"; + readonly type: "string"; + }]; + readonly name: "SetLegacyRecords"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "string"; + readonly name: "network"; + readonly type: "string"; + }]; + readonly name: "SetNetworkFamily"; + readonly type: "event"; + }, { + readonly inputs: readonly []; + readonly name: "NAME"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "VERSION"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "networks"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "families"; + readonly type: "string[]"; + }]; + readonly name: "addBlockchainNetworks"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "networks"; + readonly type: "string[]"; + }, { + readonly internalType: "string"; + readonly name: "family"; + readonly type: "string"; + }]; + readonly name: "addBlockchainNetworks"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[][]"; + readonly name: "legacyKeys"; + readonly type: "string[][]"; + }]; + readonly name: "addLegacyRecords"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "balanceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "exists"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "get"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "network"; + readonly type: "string"; + }, { + readonly internalType: "string"; + readonly name: "token"; + readonly type: "string"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getAddress"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: "addr"; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "network"; + readonly type: "string"; + }, { + readonly internalType: "string"; + readonly name: "token"; + readonly type: "string"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getAddressKey"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "network"; + readonly type: "string"; + }, { + readonly internalType: "string"; + readonly name: "token"; + readonly type: "string"; + }]; + readonly name: "getAddressKeys"; + readonly outputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getApproved"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "keyHash"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getByHash"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }, { + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getData"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256[]"; + readonly name: "keyHashes"; + readonly type: "uint256[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getDataByHash"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256[]"; + readonly name: "keyHashes"; + readonly type: "uint256[]"; + }, { + readonly internalType: "uint256[]"; + readonly name: "tokenIds"; + readonly type: "uint256[]"; + }]; + readonly name: "getDataByHashForMany"; + readonly outputs: readonly [{ + readonly internalType: "address[]"; + readonly name: "resolvers"; + readonly type: "address[]"; + }, { + readonly internalType: "address[]"; + readonly name: "owners"; + readonly type: "address[]"; + }, { + readonly internalType: "string[][]"; + readonly name: "keys"; + readonly type: "string[][]"; + }, { + readonly internalType: "string[][]"; + readonly name: "values"; + readonly type: "string[][]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "uint256[]"; + readonly name: "tokenIds"; + readonly type: "uint256[]"; + }]; + readonly name: "getDataForMany"; + readonly outputs: readonly [{ + readonly internalType: "address[]"; + readonly name: "resolvers"; + readonly type: "address[]"; + }, { + readonly internalType: "address[]"; + readonly name: "owners"; + readonly type: "address[]"; + }, { + readonly internalType: "string[][]"; + readonly name: "values"; + readonly type: "string[][]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getMany"; + readonly outputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256[]"; + readonly name: "keyHashes"; + readonly type: "uint256[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getManyByHash"; + readonly outputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "contract IUNSRegistry"; + readonly name: "unsRegistry"; + readonly type: "address"; + }, { + readonly internalType: "contract ICNSRegistry"; + readonly name: "cnsRegistry"; + readonly type: "address"; + }]; + readonly name: "initialize"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly name: "isApprovedForAll"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "pure"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "spender"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "isApprovedOrOwner"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes[]"; + readonly name: "data"; + readonly type: "bytes[]"; + }]; + readonly name: "multicall"; + readonly outputs: readonly [{ + readonly internalType: "bytes[]"; + readonly name: "results"; + readonly type: "bytes[]"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "labels"; + readonly type: "string[]"; + }]; + readonly name: "namehash"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "owner"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "ownerOf"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256[]"; + readonly name: "tokenIds"; + readonly type: "uint256[]"; + }]; + readonly name: "ownerOfForMany"; + readonly outputs: readonly [{ + readonly internalType: "address[]"; + readonly name: "owners"; + readonly type: "address[]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "registryOf"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "renounceOwnership"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "resolverOf"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }]; + readonly name: "reverseNameOf"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }]; + readonly name: "reverseOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }]; + readonly name: "setOwner"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "tokenURI"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "newOwner"; + readonly type: "address"; + }]; + readonly name: "transferOwnership"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): ProxyReaderInterface; + static connect(address: string, runner?: ContractRunner | null): ProxyReader; +} +export {}; +//# sourceMappingURL=ProxyReader__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/ProxyReader__factory.d.ts.map b/dist/types/factories/contracts/ProxyReader__factory.d.ts.map new file mode 100644 index 00000000..ca495561 --- /dev/null +++ b/dist/types/factories/contracts/ProxyReader__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ProxyReader__factory.d.ts","sourceRoot":"","sources":["../../../../types/factories/contracts/ProxyReader__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACxD,OAAO,KAAK,EACV,WAAW,EACX,oBAAoB,EACrB,MAAM,6BAA6B,CAAC;AAu0BrC,aAAK,4BAA4B,GAC7B,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,oBAAqB,SAAQ,eAAe;gBAC3C,GAAG,IAAI,EAAE,4BAA4B;IAQxC,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,oBAAoB;IAIrE,MAAM,CAAC,QAAQ,CAAC,QAAQ,g78BAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,oBAAoB;IAG9C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,WAAW;CAG7E"} \ No newline at end of file diff --git a/dist/types/factories/contracts/ProxyReader__factory.js b/dist/types/factories/contracts/ProxyReader__factory.js new file mode 100644 index 00000000..1f73c0fe --- /dev/null +++ b/dist/types/factories/contracts/ProxyReader__factory.js @@ -0,0 +1,867 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ProxyReader__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint8", + name: "version", + type: "uint8", + }, + ], + name: "Initialized", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "previousOwner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnershipTransferred", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "string", + name: "tokenKey", + type: "string", + }, + ], + name: "SetLegacyRecords", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "string", + name: "network", + type: "string", + }, + ], + name: "SetNetworkFamily", + type: "event", + }, + { + inputs: [], + name: "NAME", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "VERSION", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string[]", + name: "networks", + type: "string[]", + }, + { + internalType: "string[]", + name: "families", + type: "string[]", + }, + ], + name: "addBlockchainNetworks", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string[]", + name: "networks", + type: "string[]", + }, + { + internalType: "string", + name: "family", + type: "string", + }, + ], + name: "addBlockchainNetworks", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[][]", + name: "legacyKeys", + type: "string[][]", + }, + ], + name: "addLegacyRecords", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "exists", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "key", + type: "string", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "get", + outputs: [ + { + internalType: "string", + name: "value", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "network", + type: "string", + }, + { + internalType: "string", + name: "token", + type: "string", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getAddress", + outputs: [ + { + internalType: "string", + name: "addr", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "network", + type: "string", + }, + { + internalType: "string", + name: "token", + type: "string", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getAddressKey", + outputs: [ + { + internalType: "string", + name: "key", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "network", + type: "string", + }, + { + internalType: "string", + name: "token", + type: "string", + }, + ], + name: "getAddressKeys", + outputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getApproved", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "keyHash", + type: "uint256", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getByHash", + outputs: [ + { + internalType: "string", + name: "key", + type: "string", + }, + { + internalType: "string", + name: "value", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getData", + outputs: [ + { + internalType: "address", + name: "resolver", + type: "address", + }, + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256[]", + name: "keyHashes", + type: "uint256[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getDataByHash", + outputs: [ + { + internalType: "address", + name: "resolver", + type: "address", + }, + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256[]", + name: "keyHashes", + type: "uint256[]", + }, + { + internalType: "uint256[]", + name: "tokenIds", + type: "uint256[]", + }, + ], + name: "getDataByHashForMany", + outputs: [ + { + internalType: "address[]", + name: "resolvers", + type: "address[]", + }, + { + internalType: "address[]", + name: "owners", + type: "address[]", + }, + { + internalType: "string[][]", + name: "keys", + type: "string[][]", + }, + { + internalType: "string[][]", + name: "values", + type: "string[][]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "uint256[]", + name: "tokenIds", + type: "uint256[]", + }, + ], + name: "getDataForMany", + outputs: [ + { + internalType: "address[]", + name: "resolvers", + type: "address[]", + }, + { + internalType: "address[]", + name: "owners", + type: "address[]", + }, + { + internalType: "string[][]", + name: "values", + type: "string[][]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getMany", + outputs: [ + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256[]", + name: "keyHashes", + type: "uint256[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getManyByHash", + outputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "contract IUNSRegistry", + name: "unsRegistry", + type: "address", + }, + { + internalType: "contract ICNSRegistry", + name: "cnsRegistry", + type: "address", + }, + ], + name: "initialize", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + { + internalType: "address", + name: "", + type: "address", + }, + ], + name: "isApprovedForAll", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "pure", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "spender", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "isApprovedOrOwner", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes[]", + name: "data", + type: "bytes[]", + }, + ], + name: "multicall", + outputs: [ + { + internalType: "bytes[]", + name: "results", + type: "bytes[]", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string[]", + name: "labels", + type: "string[]", + }, + ], + name: "namehash", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "ownerOf", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256[]", + name: "tokenIds", + type: "uint256[]", + }, + ], + name: "ownerOfForMany", + outputs: [ + { + internalType: "address[]", + name: "owners", + type: "address[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "registryOf", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "renounceOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "resolverOf", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "reverseNameOf", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "reverseOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "setOwner", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "tokenURI", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "transferOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +const _bytecode = "0x608060405234801561001057600080fd5b50613cb4806100206000396000f3fe608060405234801561001057600080fd5b506004361061021c5760003560e01c80638da5cb5b11610125578063bebec6b4116100ad578063e985e9c51161007c578063e985e9c514610540578063f059235914610553578063f2fde38b14610566578063ffa1ad7414610579578063ffad6f551461059d57600080fd5b8063bebec6b4146104e7578063bfc5429b146104fa578063c15ae7cf1461050d578063c87b56dd1461052d57600080fd5b8063a81ce6f9116100f4578063a81ce6f91461046d578063ac9650d814610480578063b3f9e4cb146104a0578063b85afd28146104b3578063b98b3526146104d457600080fd5b80638da5cb5b146103f157806391015f6b146103f9578063933c051d1461041b578063a3f4df7e1461043d57600080fd5b80634bd79ed0116101a857806370a082311161017757806370a082311461038d578063715018a6146103a05780637e37479e146103a857806383caffbe146103bb578063869b8884146103ce57600080fd5b80634bd79ed0146103335780634f558e79146103465780636352211e14610359578063672b9f811461036c57600080fd5b80631bd8cc1a116101ef5780631bd8cc1a146102ac5780631be5e7ed146102cc578063276fabb1146102ec578063430c20811461030d578063485cc9551461032057600080fd5b806301ffc9a7146102215780630328075514610249578063081812fc1461026c57806313af403514610297575b600080fd5b61023461022f366004612c9d565b6105b0565b60405190151581526020015b60405180910390f35b61025c610257366004612d0b565b610638565b6040516102409493929190612dfe565b61027f61027a366004612e3c565b61065b565b6040516001600160a01b039091168152602001610240565b6102aa6102a5366004612e6a565b610760565b005b6102bf6102ba366004612d0b565b6107d1565b6040516102409190612e87565b6102df6102da366004612edb565b6107f0565b6040516102409190612f12565b6102ff6102fa366004612f25565b61091b565b604051908152602001610240565b61023461031b366004612f66565b61098f565b6102aa61032e366004612f92565b610aa2565b6102aa610341366004612fcb565b610bf5565b610234610354366004612e3c565b610e51565b61027f610367366004612e3c565b610e5c565b61037f61037a366004613036565b610e67565b604051610240929190613058565b6102ff61039b366004612e6a565b610f97565b6102aa611095565b6102ff6103b6366004612e6a565b6110a9565b6102bf6103c936600461307d565b611118565b6103e16103dc366004612fcb565b6114f0565b60405161024094939291906131bb565b61027f6116e6565b61040c610407366004612d0b565b611714565b60405161024093929190613208565b61042e610429366004612fcb565b611734565b60405161024093929190613234565b6102df604051806040016040528060118152602001702aa7299d10283937bc3c902932b0b232b960791b81525081565b61027f61047b366004612e3c565b6118bd565b61049361048e366004612f25565b61198b565b6040516102409190613277565b61027f6104ae366004612e3c565b611a7f565b6104c66104c1366004612d0b565b611b05565b6040516102409291906132d9565b6102df6104e23660046132fe565b611ce1565b6102df6104f5366004612e6a565b611cfb565b6102df6105083660046132fe565b611d6f565b61052061051b366004612f25565b611d89565b6040516102409190613371565b6102df61053b366004612e3c565b611e37565b61023461054e366004612f92565b611f09565b6102aa610561366004612fcb565b611f54565b6102aa610574366004612e6a565b612018565b6102df604051806040016040528060058152602001640302e352e360dc1b81525081565b6102aa6105ab366004613384565b612085565b60006001600160e01b031982166362526e6360e01b14806105e157506001600160e01b03198216636fa624af60e11b145b806105fc57506001600160e01b031982166308da864d60e31b145b8061061757506001600160e01b03198216638584880360e01b145b8061063257506301ffc9a760e01b6001600160e01b03198316145b92915050565b6000806060806106498787876120d8565b93509350935093505b93509350935093565b60006106668261233a565b61067257506000919050565b61067b826123d2565b6106f25760665460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa1580156106c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106ed91906133bd565b610632565b60655460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa15801561073c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061063291906133bd565b600061076a6116e6565b6001600160a01b0316146107c55760405162461bcd60e51b815260206004820152601e60248201527f50726f78795265616465723a204f574e45525f414c52454144595f534554000060448201526064015b60405180910390fd5b6107ce81612419565b50565b60606107e66107e0848661346a565b83612495565b90505b9392505050565b60606107fb826123d2565b1561088057606554604051631be5e7ed60e01b81526001600160a01b0390911690631be5e7ed9061083490879087908790600401613547565b600060405180830381865afa158015610851573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261087991908101906135b0565b90506107e9565b600061088b83612617565b90506001600160a01b0381163b1561091357604051631be5e7ed60e01b81526001600160a01b03821690631be5e7ed906108cd90889088908890600401613547565b600060405180830381865afa92505050801561090b57506040513d6000823e601f3d908101601f1916820160405261090891908101906135b0565b60015b156109135791505b509392505050565b60655460405163276fabb160e01b81526000916001600160a01b03169063276fabb19061094e908690869060040161366c565b602060405180830381865afa15801561096b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613680565b600061099a8261233a565b6109a657506000610632565b6109af826123d2565b610a2d5760665460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a04573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a289190613699565b6107e9565b60655460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a7e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613699565b600054610100900460ff1615808015610ac25750600054600160ff909116105b80610adc5750303b158015610adc575060005460ff166001145b610b3f5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107bc565b6000805460ff191660011790558015610b62576000805461ff0019166101001790555b606580546001600160a01b038086166001600160a01b0319928316179092556066805492851692909116919091179055610b9a61268a565b610ba261268a565b610baa6126b1565b8015610bf0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b610bfd6126e1565b828114610c4c5760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107bc565b60005b83811015610e4a5760006068868684818110610c6d57610c6d6136bb565b9050602002810190610c7f91906136d1565b604051610c8d929190613717565b908152604051908190036020019020541115610cf1576068858583818110610cb757610cb76136bb565b9050602002810190610cc991906136d1565b604051610cd7929190613717565b90815260200160405180910390206000610cf19190612c18565b60005b838383818110610d0657610d066136bb565b9050602002810190610d189190613727565b9050811015610ddc576068868684818110610d3557610d356136bb565b9050602002810190610d4791906136d1565b604051610d55929190613717565b9081526020016040518091039020848484818110610d7557610d756136bb565b9050602002810190610d879190613727565b83818110610d9757610d976136bb565b9050602002810190610da991906136d1565b82546001810184556000938452602090932090920191610dc991836137f8565b5080610dd4816138cd565b915050610cf4565b507fb2b57b54285120d17f49f2490a39ef791441fd0ad1e6b6818c23262bf91f061c858583818110610e1057610e106136bb565b9050602002810190610e2291906136d1565b604051610e309291906138e6565b60405180910390a180610e42816138cd565b915050610c4f565b5050505050565b60006106328261233a565b600061063282612740565b606080610e73836123d2565b15610ef95760655460405163672b9f8160e01b815260048101869052602481018590526001600160a01b039091169063672b9f8190604401600060405180830381865afa158015610ec8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610ef091908101906138fa565b91509150610f90565b6000610f0484612617565b90506001600160a01b0381163b15610f8e5760405163672b9f8160e01b815260048101869052602481018590526001600160a01b0382169063672b9f8190604401600060405180830381865afa925050508015610f8357506040513d6000823e601f3d908101601f19168201604052610f8091908101906138fa565b60015b15610f8e5790935091505b505b9250929050565b6065546040516370a0823160e01b81526001600160a01b03838116600483015260009283929116906370a0823190602401602060405180830381865afa158015610fe5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110099190613680565b6066549091506001600160a01b031615610632576066546040516370a0823160e01b81526001600160a01b038581166004830152909116906370a0823190602401602060405180830381865afa158015611067573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061108b9190613680565b6107e9908261395d565b61109d6126e1565b6110a76000612419565b565b606554604051633f1ba3cf60e11b81526001600160a01b0383811660048301526000921690637e37479e90602401602060405180830381865afa1580156110f4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190613680565b606060006067868660405161112e929190613717565b9081526020016040518091039020805461114790613770565b80601f016020809104026020016040519081016040528092919081815260200182805461117390613770565b80156111c05780601f10611195576101008083540402835291602001916111c0565b820191906000526020600020905b8154815290600101906020018083116111a357829003601f168201915b5050505050905080516000036111d657506114e8565b6000604051806040016040528060068152602001653a37b5b2b71760d11b81525090506000604051806040016040528060088152602001672e6164647265737360c01b81525090506000604051806040016040528060018152602001601760f91b815250905060008385838c8c868d8d8a60405160200161125f99989796959493929190613970565b6040516020818303038152906040529050600060688260405161128291906139f3565b9081526020016040518091039020805480602002602001604051908101604052809291908181526020016000905b8282101561135c5783829060005260206000200180546112cf90613770565b80601f01602080910402602001604051908101604052809291908181526020018280546112fb90613770565b80156113485780601f1061131d57610100808354040283529160200191611348565b820191906000526020600020905b81548152906001019060200180831161132b57829003601f168201915b5050505050815260200190600101906112b0565b50505050905080516003611370919061395d565b6001600160401b03811115611387576113876133da565b6040519080825280602002602001820160405280156113ba57816020015b60608152602001906001900390816113a55790505b50965081876000815181106113d1576113d16136bb565b602002602001018190525060005b815181101561143e578181815181106113fa576113fa6136bb565b602002602001015188826001611410919061395d565b81518110611420576114206136bb565b60200260200101819052508080611436906138cd565b9150506113df565b508486848d8d8860405160200161145a96959493929190613a0f565b6040516020818303038152906040528782516001611478919061395d565b81518110611488576114886136bb565b60200260200101819052508486856040516020016114a893929190613a72565b60405160208183030381529060405287825160026114c6919061395d565b815181106114d6576114d66136bb565b60200260200101819052505050505050505b949350505050565b6060808080846001600160401b0381111561150d5761150d6133da565b604051908082528060200260200182016040528015611536578160200160208202803683370190505b509350846001600160401b03811115611551576115516133da565b60405190808252806020026020018201604052801561157a578160200160208202803683370190505b509250846001600160401b03811115611595576115956133da565b6040519080825280602002602001820160405280156115c857816020015b60608152602001906001900390816115b35790505b509150846001600160401b038111156115e3576115e36133da565b60405190808252806020026020018201604052801561161657816020015b60608152602001906001900390816116015790505b50905060005b858110156116da57611647898989898581811061163b5761163b6136bb565b905060200201356120d8565b888581518110611659576116596136bb565b60200260200101888681518110611672576116726136bb565b6020026020010188878151811061168b5761168b6136bb565b602002602001018888815181106116a4576116a46136bb565b6020908102919091010193909352929091526001600160a01b0392831690915291169052806116d2816138cd565b91505061161c565b50945094509450949050565b7fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c8121905546001600160a01b031690565b6000806060611724868686612761565b9250925092505b93509350939050565b60608080836001600160401b03811115611750576117506133da565b604051908082528060200260200182016040528015611779578160200160208202803683370190505b509250836001600160401b03811115611794576117946133da565b6040519080825280602002602001820160405280156117bd578160200160208202803683370190505b509150836001600160401b038111156117d8576117d86133da565b60405190808252806020026020018201604052801561180b57816020015b60608152602001906001900390816117f65790505b50905060005b848110156118b25761183c8888888885818110611830576118306136bb565b90506020020135612761565b86848151811061184e5761184e6136bb565b60200260200101868581518110611867576118676136bb565b60200260200101868681518110611880576118806136bb565b60209081029190910101929092526001600160a01b0392831690915291169052806118aa816138cd565b915050611811565b509450945094915050565b606554604051634f558e7960e01b8152600481018390526000916001600160a01b031690634f558e7990602401602060405180830381865afa158015611907573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061192b9190613699565b156119415750506065546001600160a01b031690565b6066546001600160a01b03161580159061196d575060006119618361296c565b6001600160a01b031614155b156119835750506066546001600160a01b031690565b506000919050565b6060816001600160401b038111156119a5576119a56133da565b6040519080825280602002602001820160405280156119d857816020015b60608152602001906001900390816119c35790505b50905060005b82811015611a7857611a48308585848181106119fc576119fc6136bb565b9050602002810190611a0e91906136d1565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061299e92505050565b828281518110611a5a57611a5a6136bb565b60200260200101819052508080611a70906138cd565b9150506119de565b5092915050565b6000611a8a8261233a565b611a9657506000919050565b611a9f826123d2565b611ad45760665460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb906024016106ac565b60655460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb9060240161071f565b606080836001600160401b03811115611b2057611b206133da565b604051908082528060200260200182016040528015611b5357816020015b6060815260200190600190039081611b3e5790505b509150836001600160401b03811115611b6e57611b6e6133da565b604051908082528060200260200182016040528015611ba157816020015b6060815260200190600190039081611b8c5790505b509050611bad836123d2565b15611c345760655460405163170b5fa560e31b81526001600160a01b039091169063b85afd2890611be690889088908890600401613ab5565b600060405180830381865afa158015611c03573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611c2b9190810190613b72565b91509150611cd9565b6000611c3f84612617565b90506001600160a01b0381163b15158015611c5957508415155b15611cd75760405163170b5fa560e31b81526001600160a01b0382169063b85afd2890611c8e90899089908990600401613ab5565b600060405180830381865afa925050508015611ccc57506040513d6000823e601f3d908101601f19168201604052611cc99190810190613b72565b60015b15611cd75790935091505b505b935093915050565b6060611cf08686868686612a92565b979650505050505050565b606554604051632fafb1ad60e21b81526001600160a01b038381166004830152606092169063bebec6b4906024015b600060405180830381865afa158015611d47573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261063291908101906135b0565b6060611d7e8686868686612a92565b509695505050505050565b6060816001600160401b03811115611da357611da36133da565b604051908082528060200260200182016040528015611dcc578160200160208202803683370190505b50905060005b82811015611a7857611dfb848483818110611def57611def6136bb565b90506020020135612740565b828281518110611e0d57611e0d6136bb565b6001600160a01b039092166020928302919091019091015280611e2f816138cd565b915050611dd2565b6060611e428261233a565b611e5a57505060408051602081019091526000815290565b611e63826123d2565b611ed85760665460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401600060405180830381865afa158015611eb0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106ed91908101906135b0565b60655460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401611d2a565b60405162461bcd60e51b815260206004820152601f60248201527f50726f78795265616465723a20554e535550504f525445445f4d4554484f440060448201526000906064016107bc565b611f5c6126e1565b828114611fab5760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107bc565b60005b83811015610e4a57612006858583818110611fcb57611fcb6136bb565b9050602002810190611fdd91906136d1565b858585818110611fef57611fef6136bb565b905060200281019061200191906136d1565b612b3e565b80612010816138cd565b915050611fae565b6120206126e1565b6001600160a01b0381166107c55760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107bc565b61208d6126e1565b60005b83811015610e4a576120c68585838181106120ad576120ad6136bb565b90506020028101906120bf91906136d1565b8585612b3e565b806120d0816138cd565b915050612090565b600080606080856001600160401b038111156120f6576120f66133da565b60405190808252806020026020018201604052801561212957816020015b60608152602001906001900390816121145790505b509150856001600160401b03811115612144576121446133da565b60405190808252806020026020018201604052801561217757816020015b60608152602001906001900390816121625790505b509050612183856123d2565b156122845760655460405163b3f9e4cb60e01b8152600481018790526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa1580156121d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121f591906133bd565b935061220085612bad565b60655460405163170b5fa560e31b81529194506001600160a01b03169063b85afd2890612235908a908a908a90600401613ab5565b600060405180830381865afa158015612252573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261227a9190810190613b72565b9092509050610652565b61228d85612617565b93506122988561296c565b92506001600160a01b0384163b151580156122b4575060008251115b156106525760405163170b5fa560e31b81526001600160a01b0385169063b85afd28906122e9908a908a908a90600401613ab5565b600060405180830381865afa92505050801561232757506040513d6000823e601f3d908101601f191682016040526123249190810190613b72565b60015b1561065257909250905093509350935093565b6000612345826123d2565b6123645760006123548361296c565b6001600160a01b03161415610632565b606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e79906024015b602060405180830381865afa1580156123ae573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190613699565b6066546000906001600160a01b031615806106325750606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401612391565b60006124236116e6565b9050817fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c812190580546001600160a01b0319166001600160a01b03928316179055604051838216918316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b606082516001600160401b038111156124b0576124b06133da565b6040519080825280602002602001820160405280156124e357816020015b60608152602001906001900390816124ce5790505b5090506124ef826123d2565b1561257257606554604051630dec660d60e11b81526001600160a01b0390911690631bd8cc1a906125269086908690600401613bcb565b600060405180830381865afa158015612543573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261256b9190810190613bed565b9050610632565b600061257d83612617565b90506001600160a01b0381163b15158015612599575060008451115b15611a7857604051630dec660d60e11b81526001600160a01b03821690631bd8cc1a906125cc9087908790600401613bcb565b600060405180830381865afa92505050801561260a57506040513d6000823e601f3d908101601f191682016040526126079190810190613bed565b60015b15611a7857949350505050565b60665460405163b3f9e4cb60e01b8152600481018390526000916001600160a01b03169063b3f9e4cb906024015b602060405180830381865afa92505050801561267e575060408051601f3d908101601f1916820190925261267b918101906133bd565b60015b61063257506000919050565b600054610100900460ff166110a75760405162461bcd60e51b81526004016107bc90613c21565b600054610100900460ff166126d85760405162461bcd60e51b81526004016107bc90613c21565b6110a733612419565b336126ea6116e6565b6001600160a01b0316146110a75760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107bc565b600061274b826123d2565b612758576106ed8261296c565b61063282612bad565b6000806060846001600160401b0381111561277e5761277e6133da565b6040519080825280602002602001820160405280156127b157816020015b606081526020019060019003908161279c5790505b5090506127bd846123d2565b156128bb5760655460405163b3f9e4cb60e01b8152600481018690526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561280b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061282f91906133bd565b925061283a84612bad565b606554604051630dec660d60e11b81529193506001600160a01b031690631bd8cc1a9061286f90899089908990600401613c6c565b600060405180830381865afa15801561288c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526128b49190810190613bed565b905061172b565b6128c484612617565b92506128cf8461296c565b91506001600160a01b0383163b151580156128e957508415155b1561172b57604051630dec660d60e11b81526001600160a01b03841690631bd8cc1a9061291e90899089908990600401613c6c565b600060405180830381865afa92505050801561295c57506040513d6000823e601f3d908101601f191682016040526129599190810190613bed565b60015b1561172b57905093509350939050565b6066546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401612645565b60606001600160a01b0383163b612a065760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b60648201526084016107bc565b600080846001600160a01b031684604051612a2191906139f3565b600060405180830381855af49150503d8060008114612a5c576040519150601f19603f3d011682016040523d82523d6000602084013e612a61565b606091505b5091509150612a898282604051806060016040528060278152602001613c8160279139612bdf565b95945050505050565b6060806000612aa388888888611118565b90506000612ab18286612495565b905060005b8151811015612b31576000828281518110612ad357612ad36136bb565b6020026020010151511115612b1f57828181518110612af457612af46136bb565b60200260200101519350818181518110612b1057612b106136bb565b60200260200101519450612b31565b80612b29816138cd565b915050612ab6565b5050509550959350505050565b818160678686604051612b52929190613717565b90815260200160405180910390209182612b6d9291906137f8565b507f0bf4b04a0f6d7d0800284e1abb0f58f795c0a25b9088634b6ab847be51001dec8484604051612b9f9291906138e6565b60405180910390a150505050565b6065546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401612645565b60608315612bee5750816107e9565b825115612bfe5782518084602001fd5b8160405162461bcd60e51b81526004016107bc9190612f12565b50805460008255906000526020600020908101906107ce91905b80821115612c4f576000612c468282612c53565b50600101612c32565b5090565b508054612c5f90613770565b6000825580601f10612c6f575050565b601f0160209004906000526020600020908101906107ce91905b80821115612c4f5760008155600101612c89565b600060208284031215612caf57600080fd5b81356001600160e01b0319811681146107e957600080fd5b60008083601f840112612cd957600080fd5b5081356001600160401b03811115612cf057600080fd5b6020830191508360208260051b8501011115610f9057600080fd5b600080600060408486031215612d2057600080fd5b83356001600160401b03811115612d3657600080fd5b612d4286828701612cc7565b909790965060209590950135949350505050565b60005b83811015612d71578181015183820152602001612d59565b50506000910152565b60008151808452612d92816020860160208601612d56565b601f01601f19169290920160200192915050565b600082825180855260208086019550808260051b84010181860160005b84811015612df157601f19868403018952612ddf838351612d7a565b98840198925090830190600101612dc3565b5090979650505050505050565b6001600160a01b03858116825284166020820152608060408201819052600090612e2a90830185612da6565b8281036060840152611cf08185612da6565b600060208284031215612e4e57600080fd5b5035919050565b6001600160a01b03811681146107ce57600080fd5b600060208284031215612e7c57600080fd5b81356107e981612e55565b6020815260006107e96020830184612da6565b60008083601f840112612eac57600080fd5b5081356001600160401b03811115612ec357600080fd5b602083019150836020828501011115610f9057600080fd5b600080600060408486031215612ef057600080fd5b83356001600160401b03811115612f0657600080fd5b612d4286828701612e9a565b6020815260006107e96020830184612d7a565b60008060208385031215612f3857600080fd5b82356001600160401b03811115612f4e57600080fd5b612f5a85828601612cc7565b90969095509350505050565b60008060408385031215612f7957600080fd5b8235612f8481612e55565b946020939093013593505050565b60008060408385031215612fa557600080fd5b8235612fb081612e55565b91506020830135612fc081612e55565b809150509250929050565b60008060008060408587031215612fe157600080fd5b84356001600160401b0380821115612ff857600080fd5b61300488838901612cc7565b9096509450602087013591508082111561301d57600080fd5b5061302a87828801612cc7565b95989497509550505050565b6000806040838503121561304957600080fd5b50508035926020909101359150565b60408152600061306b6040830185612d7a565b8281036020840152612a898185612d7a565b6000806000806040858703121561309357600080fd5b84356001600160401b03808211156130aa57600080fd5b6130b688838901612e9a565b909650945060208701359150808211156130cf57600080fd5b5061302a87828801612e9a565b600081518084526020808501945080840160005b838110156131155781516001600160a01b0316875295820195908201906001016130f0565b509495945050505050565b60008282518085526020808601955060058183821b8501018287016000805b868110156131ac57601f1988850381018c5283518051808752908801908887019080891b88018a01865b8281101561319557858a8303018452613183828651612d7a565b948c0194938c01939150600101613169565b509e8a019e9750505093870193505060010161313f565b50919998505050505050505050565b6080815260006131ce60808301876130dc565b82810360208401526131e081876130dc565b905082810360408401526131f48186613120565b90508281036060840152611cf08185613120565b6001600160a01b03848116825283166020820152606060408201819052600090612a8990830184612da6565b60608152600061324760608301866130dc565b828103602084015261325981866130dc565b9050828103604084015261326d8185613120565b9695505050505050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156132cc57603f198886030184526132ba858351612d7a565b9450928501929085019060010161329e565b5092979650505050505050565b6040815260006132ec6040830185612da6565b8281036020840152612a898185612da6565b60008060008060006060868803121561331657600080fd5b85356001600160401b038082111561332d57600080fd5b61333989838a01612e9a565b9097509550602088013591508082111561335257600080fd5b5061335f88828901612e9a565b96999598509660400135949350505050565b6020815260006107e960208301846130dc565b6000806000806040858703121561339a57600080fd5b84356001600160401b03808211156133b157600080fd5b6130b688838901612cc7565b6000602082840312156133cf57600080fd5b81516107e981612e55565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715613418576134186133da565b604052919050565b60006001600160401b03821115613439576134396133da565b5060051b60200190565b60006001600160401b0382111561345c5761345c6133da565b50601f01601f191660200190565b600061347d61347884613420565b6133f0565b80848252602080830192508560051b85013681111561349b57600080fd5b855b818110156135125780356001600160401b038111156134bc5760008081fd5b870136601f8201126134ce5760008081fd5b80356134dc61347882613443565b81815236868385010111156134f15760008081fd5b8186840187830137600091810186019190915286525093820193820161349d565b50919695505050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60408152600061355b60408301858761351e565b9050826020830152949350505050565b600082601f83011261357c57600080fd5b815161358a61347882613443565b81815284602083860101111561359f57600080fd5b6114e8826020830160208701612d56565b6000602082840312156135c257600080fd5b81516001600160401b038111156135d857600080fd5b6114e88482850161356b565b60008383855260208086019550808560051b8301018460005b87811015612df157848303601f19018952813536889003601e1901811261362357600080fd5b870184810190356001600160401b0381111561363e57600080fd5b80360382131561364d57600080fd5b61365885828461351e565b9a86019a94505050908301906001016135fd565b6020815260006107e66020830184866135e4565b60006020828403121561369257600080fd5b5051919050565b6000602082840312156136ab57600080fd5b815180151581146107e957600080fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e198436030181126136e857600080fd5b8301803591506001600160401b0382111561370257600080fd5b602001915036819003821315610f9057600080fd5b8183823760009101908152919050565b6000808335601e1984360301811261373e57600080fd5b8301803591506001600160401b0382111561375857600080fd5b6020019150600581901b3603821315610f9057600080fd5b600181811c9082168061378457607f821691505b6020821081036137a457634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115610bf057600081815260208120601f850160051c810160208610156137d15750805b601f850160051c820191505b818110156137f0578281556001016137dd565b505050505050565b6001600160401b0383111561380f5761380f6133da565b6138238361381d8354613770565b836137aa565b6000601f841160018114613857576000851561383f5750838201355b600019600387901b1c1916600186901b178355610e4a565b600083815260209020601f19861690835b828110156138885786850135825560209485019460019092019101613868565b50868210156138a55760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b634e487b7160e01b600052601160045260246000fd5b6000600182016138df576138df6138b7565b5060010190565b6020815260006107e660208301848661351e565b6000806040838503121561390d57600080fd5b82516001600160401b038082111561392457600080fd5b6139308683870161356b565b9350602085015191508082111561394657600080fd5b506139538582860161356b565b9150509250929050565b80820180821115610632576106326138b7565b60008a51613982818460208f01612d56565b8a5190830190613996818360208f01612d56565b8a519101906139a9818360208e01612d56565b0187898237600090880190815286516139c6818360208b01612d56565b0184868237600090850190815283516139e3818360208801612d56565b019b9a5050505050505050505050565b60008251613a05818460208701612d56565b9190910192915050565b60008751613a21818460208c01612d56565b875190830190613a35818360208c01612d56565b8751910190613a48818360208b01612d56565b018486823760009085019081528351613a65818360208801612d56565b0198975050505050505050565b60008451613a84818460208901612d56565b845190830190613a98818360208901612d56565b8451910190613aab818360208801612d56565b0195945050505050565b6040808252810183905260006001600160fb1b03841115613ad557600080fd5b8360051b808660608501376020830193909352500160600192915050565b600082601f830112613b0457600080fd5b81516020613b1461347883613420565b82815260059290921b84018101918181019086841115613b3357600080fd5b8286015b84811015611d7e5780516001600160401b03811115613b565760008081fd5b613b648986838b010161356b565b845250918301918301613b37565b60008060408385031215613b8557600080fd5b82516001600160401b0380821115613b9c57600080fd5b613ba886838701613af3565b93506020850151915080821115613bbe57600080fd5b5061395385828601613af3565b604081526000613bde6040830185612da6565b90508260208301529392505050565b600060208284031215613bff57600080fd5b81516001600160401b03811115613c1557600080fd5b6114e884828501613af3565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60408152600061355b6040830185876135e456fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a"; +const isSuperArgs = (xs) => xs.length > 1; +class ProxyReader__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(overrides) { + return super.getDeployTransaction(overrides || {}); + } + deploy(overrides) { + return super.deploy(overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.ProxyReader__factory = ProxyReader__factory; +ProxyReader__factory.bytecode = _bytecode; +ProxyReader__factory.abi = _abi; diff --git a/dist/types/factories/contracts/RecordStorage__factory.d.ts b/dist/types/factories/contracts/RecordStorage__factory.d.ts new file mode 100644 index 00000000..3d38adcf --- /dev/null +++ b/dist/types/factories/contracts/RecordStorage__factory.d.ts @@ -0,0 +1,286 @@ +import { type ContractRunner } from "ethers"; +import type { RecordStorage, RecordStorageInterface } from "../../contracts/RecordStorage"; +export declare class RecordStorage__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly indexed: true; + readonly internalType: "string"; + readonly name: "keyIndex"; + readonly type: "string"; + }, { + readonly indexed: false; + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }]; + readonly name: "NewKey"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "ResetRecords"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly indexed: true; + readonly internalType: "string"; + readonly name: "keyIndex"; + readonly type: "string"; + }, { + readonly indexed: true; + readonly internalType: "string"; + readonly name: "valueIndex"; + readonly type: "string"; + }, { + readonly indexed: false; + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }, { + readonly indexed: false; + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }]; + readonly name: "Set"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }]; + readonly name: "addKey"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "get"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "keyHash"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getByHash"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }, { + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "keyHash"; + readonly type: "uint256"; + }]; + readonly name: "getKey"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256[]"; + readonly name: "hashes"; + readonly type: "uint256[]"; + }]; + readonly name: "getKeys"; + readonly outputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getMany"; + readonly outputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256[]"; + readonly name: "keyHashes"; + readonly type: "uint256[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getManyByHash"; + readonly outputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "reconfigure"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "reset"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }, { + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "set"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "keyHash"; + readonly type: "uint256"; + }, { + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "setByHash"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "setMany"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256[]"; + readonly name: "keyHashes"; + readonly type: "uint256[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "setManyByHash"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): RecordStorageInterface; + static connect(address: string, runner?: ContractRunner | null): RecordStorage; +} +//# sourceMappingURL=RecordStorage__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/RecordStorage__factory.d.ts.map b/dist/types/factories/contracts/RecordStorage__factory.d.ts.map new file mode 100644 index 00000000..4450d0fd --- /dev/null +++ b/dist/types/factories/contracts/RecordStorage__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"RecordStorage__factory.d.ts","sourceRoot":"","sources":["../../../../types/factories/contracts/RecordStorage__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,aAAa,EACb,sBAAsB,EACvB,MAAM,+BAA+B,CAAC;AA6WvC,qBAAa,sBAAsB;IACjC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,sBAAsB;IAGhD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,aAAa;CAGjB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/RecordStorage__factory.js b/dist/types/factories/contracts/RecordStorage__factory.js new file mode 100644 index 00000000..13977f97 --- /dev/null +++ b/dist/types/factories/contracts/RecordStorage__factory.js @@ -0,0 +1,376 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.RecordStorage__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + indexed: true, + internalType: "string", + name: "keyIndex", + type: "string", + }, + { + indexed: false, + internalType: "string", + name: "key", + type: "string", + }, + ], + name: "NewKey", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "ResetRecords", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + indexed: true, + internalType: "string", + name: "keyIndex", + type: "string", + }, + { + indexed: true, + internalType: "string", + name: "valueIndex", + type: "string", + }, + { + indexed: false, + internalType: "string", + name: "key", + type: "string", + }, + { + indexed: false, + internalType: "string", + name: "value", + type: "string", + }, + ], + name: "Set", + type: "event", + }, + { + inputs: [ + { + internalType: "string", + name: "key", + type: "string", + }, + ], + name: "addKey", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "key", + type: "string", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "get", + outputs: [ + { + internalType: "string", + name: "value", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "keyHash", + type: "uint256", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getByHash", + outputs: [ + { + internalType: "string", + name: "key", + type: "string", + }, + { + internalType: "string", + name: "value", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "keyHash", + type: "uint256", + }, + ], + name: "getKey", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256[]", + name: "hashes", + type: "uint256[]", + }, + ], + name: "getKeys", + outputs: [ + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getMany", + outputs: [ + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256[]", + name: "keyHashes", + type: "uint256[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getManyByHash", + outputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "reconfigure", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "reset", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "key", + type: "string", + }, + { + internalType: "string", + name: "value", + type: "string", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "set", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "keyHash", + type: "uint256", + }, + { + internalType: "string", + name: "value", + type: "string", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "setByHash", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "setMany", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256[]", + name: "keyHashes", + type: "uint256[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "setManyByHash", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +class RecordStorage__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.RecordStorage__factory = RecordStorage__factory; +RecordStorage__factory.abi = _abi; diff --git a/dist/types/factories/contracts/RootRegistry__factory.d.ts b/dist/types/factories/contracts/RootRegistry__factory.d.ts new file mode 100644 index 00000000..6d4424de --- /dev/null +++ b/dist/types/factories/contracts/RootRegistry__factory.d.ts @@ -0,0 +1,350 @@ +import { type ContractRunner } from "ethers"; +import type { RootRegistry, RootRegistryInterface } from "../../contracts/RootRegistry"; +export declare class RootRegistry__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "approved"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Approval"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "ApprovalForAll"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "uint8"; + readonly name: "version"; + readonly type: "uint8"; + }]; + readonly name: "Initialized"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Transfer"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "approve"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "balanceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "depositToPolygon"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "exists"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getApproved"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly name: "isApprovedForAll"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "user"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "mint"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "user"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "metaData"; + readonly type: "bytes"; + }]; + readonly name: "mint"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "name"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "ownerOf"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "setApprovalForAll"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "symbol"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "tokenURI"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "transferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes"; + readonly name: "inputData"; + readonly type: "bytes"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }]; + readonly name: "withdrawFromPolygon"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): RootRegistryInterface; + static connect(address: string, runner?: ContractRunner | null): RootRegistry; +} +//# sourceMappingURL=RootRegistry__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/RootRegistry__factory.d.ts.map b/dist/types/factories/contracts/RootRegistry__factory.d.ts.map new file mode 100644 index 00000000..ba924996 --- /dev/null +++ b/dist/types/factories/contracts/RootRegistry__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"RootRegistry__factory.d.ts","sourceRoot":"","sources":["../../../../types/factories/contracts/RootRegistry__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,YAAY,EACZ,qBAAqB,EACtB,MAAM,8BAA8B,CAAC;AAictC,qBAAa,qBAAqB;IAChC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,qBAAqB;IAG/C,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,YAAY;CAGhB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/RootRegistry__factory.js b/dist/types/factories/contracts/RootRegistry__factory.js new file mode 100644 index 00000000..8c624995 --- /dev/null +++ b/dist/types/factories/contracts/RootRegistry__factory.js @@ -0,0 +1,460 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.RootRegistry__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "approved", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Approval", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "ApprovalForAll", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint8", + name: "version", + type: "uint8", + }, + ], + name: "Initialized", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Transfer", + type: "event", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "approve", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "depositToPolygon", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "exists", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getApproved", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + name: "isApprovedForAll", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "user", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "mint", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "user", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "metaData", + type: "bytes", + }, + ], + name: "mint", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "name", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "ownerOf", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "setApprovalForAll", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "symbol", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "tokenURI", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "transferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes", + name: "inputData", + type: "bytes", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + ], + name: "withdrawFromPolygon", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +class RootRegistry__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.RootRegistry__factory = RootRegistry__factory; +RootRegistry__factory.abi = _abi; diff --git a/dist/types/factories/contracts/UNSOperator__factory.d.ts b/dist/types/factories/contracts/UNSOperator__factory.d.ts new file mode 100644 index 00000000..e745bbed --- /dev/null +++ b/dist/types/factories/contracts/UNSOperator__factory.d.ts @@ -0,0 +1,100 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../common"; +import type { UNSOperator, UNSOperatorInterface } from "../../contracts/UNSOperator"; +declare type UNSOperatorConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class UNSOperator__factory extends ContractFactory { + constructor(...args: UNSOperatorConstructorParams); + getDeployTransaction(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): UNSOperator__factory; + static readonly bytecode = "0x608060405234801561001057600080fd5b50610454806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c8063715018a6146100675780638129fc1c146100715780638da5cb5b14610079578063a3f4df7e14610099578063f2fde38b146100d2578063ffa1ad74146100e5575b600080fd5b61006f610109565b005b61006f61011d565b6033546040516001600160a01b0390911681526020015b60405180910390f35b6100c56040518060400160405280600d81526020016c2aa7299d1027b832b930ba37b960991b81525081565b60405161009091906103c9565b61006f6100e0366004610417565b610233565b6100c5604051806040016040528060058152602001640302e312e360dc1b81525081565b6101116102a9565b61011b6000610303565b565b600054610100900460ff161580801561013d5750600054600160ff909116105b806101575750303b158015610157575060005460ff166001145b6101bf5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff1916600117905580156101e2576000805461ff0019166101001790555b6101ea610355565b8015610230576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50565b61023b6102a9565b6001600160a01b0381166102a05760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016101b6565b61023081610303565b6033546001600160a01b0316331461011b5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016101b6565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600054610100900460ff166103c05760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016101b6565b61011b33610303565b600060208083528351808285015260005b818110156103f6578581018301518582016040015282016103da565b506000604082860101526040601f19601f8301168501019250505092915050565b60006020828403121561042957600080fd5b81356001600160a01b038116811461044057600080fd5b939250505056fea164736f6c6343000811000a"; + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "uint8"; + readonly name: "version"; + readonly type: "uint8"; + }]; + readonly name: "Initialized"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "previousOwner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "newOwner"; + readonly type: "address"; + }]; + readonly name: "OwnershipTransferred"; + readonly type: "event"; + }, { + readonly inputs: readonly []; + readonly name: "NAME"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "VERSION"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "initialize"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "owner"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "renounceOwnership"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "newOwner"; + readonly type: "address"; + }]; + readonly name: "transferOwnership"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): UNSOperatorInterface; + static connect(address: string, runner?: ContractRunner | null): UNSOperator; +} +export {}; +//# sourceMappingURL=UNSOperator__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/UNSOperator__factory.d.ts.map b/dist/types/factories/contracts/UNSOperator__factory.d.ts.map new file mode 100644 index 00000000..205e51fd --- /dev/null +++ b/dist/types/factories/contracts/UNSOperator__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"UNSOperator__factory.d.ts","sourceRoot":"","sources":["../../../../types/factories/contracts/UNSOperator__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACxD,OAAO,KAAK,EACV,WAAW,EACX,oBAAoB,EACrB,MAAM,6BAA6B,CAAC;AA0GrC,aAAK,4BAA4B,GAC7B,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,oBAAqB,SAAQ,eAAe;gBAC3C,GAAG,IAAI,EAAE,4BAA4B;IAQxC,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,oBAAoB;IAIrE,MAAM,CAAC,QAAQ,CAAC,QAAQ,gvEAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,oBAAoB;IAG9C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,WAAW;CAG7E"} \ No newline at end of file diff --git a/dist/types/factories/contracts/UNSOperator__factory.js b/dist/types/factories/contracts/UNSOperator__factory.js new file mode 100644 index 00000000..5a0ac96a --- /dev/null +++ b/dist/types/factories/contracts/UNSOperator__factory.js @@ -0,0 +1,134 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.UNSOperator__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint8", + name: "version", + type: "uint8", + }, + ], + name: "Initialized", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "previousOwner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnershipTransferred", + type: "event", + }, + { + inputs: [], + name: "NAME", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "VERSION", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "initialize", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "renounceOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "transferOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +const _bytecode = "0x608060405234801561001057600080fd5b50610454806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c8063715018a6146100675780638129fc1c146100715780638da5cb5b14610079578063a3f4df7e14610099578063f2fde38b146100d2578063ffa1ad74146100e5575b600080fd5b61006f610109565b005b61006f61011d565b6033546040516001600160a01b0390911681526020015b60405180910390f35b6100c56040518060400160405280600d81526020016c2aa7299d1027b832b930ba37b960991b81525081565b60405161009091906103c9565b61006f6100e0366004610417565b610233565b6100c5604051806040016040528060058152602001640302e312e360dc1b81525081565b6101116102a9565b61011b6000610303565b565b600054610100900460ff161580801561013d5750600054600160ff909116105b806101575750303b158015610157575060005460ff166001145b6101bf5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff1916600117905580156101e2576000805461ff0019166101001790555b6101ea610355565b8015610230576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50565b61023b6102a9565b6001600160a01b0381166102a05760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016101b6565b61023081610303565b6033546001600160a01b0316331461011b5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016101b6565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600054610100900460ff166103c05760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016101b6565b61011b33610303565b600060208083528351808285015260005b818110156103f6578581018301518582016040015282016103da565b506000604082860101526040601f19601f8301168501019250505092915050565b60006020828403121561042957600080fd5b81356001600160a01b038116811461044057600080fd5b939250505056fea164736f6c6343000811000a"; +const isSuperArgs = (xs) => xs.length > 1; +class UNSOperator__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(overrides) { + return super.getDeployTransaction(overrides || {}); + } + deploy(overrides) { + return super.deploy(overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.UNSOperator__factory = UNSOperator__factory; +UNSOperator__factory.bytecode = _bytecode; +UNSOperator__factory.abi = _abi; diff --git a/dist/types/factories/contracts/UNSRegistry__factory.d.ts b/dist/types/factories/contracts/UNSRegistry__factory.d.ts new file mode 100644 index 00000000..ce7a7ab2 --- /dev/null +++ b/dist/types/factories/contracts/UNSRegistry__factory.d.ts @@ -0,0 +1,1203 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../common"; +import type { UNSRegistry, UNSRegistryInterface } from "../../contracts/UNSRegistry"; +declare type UNSRegistryConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class UNSRegistry__factory extends ContractFactory { + constructor(...args: UNSRegistryConstructorParams); + getDeployTransaction(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): UNSRegistry__factory; + static readonly bytecode = "0x608060405234801561001057600080fd5b506152e6806100206000396000f3fe608060405234801561001057600080fd5b50600436106103af5760003560e01c80637e37479e116101f4578063ba5d40b71161011a578063e985e9c5116100ad578063f5c1f76e1161007c578063f5c1f76e146108d8578063f7df5c60146108eb578063f8c8765e146108fe578063ffa1ad741461091157600080fd5b8063e985e9c51461087a578063ebf0c717146108b6578063ec129eea146108bd578063f25eb5c1146108d057600080fd5b8063c87b56dd116100e9578063c87b56dd1461082e578063ce92b33e14610841578063cf2c52cb14610854578063d9548e531461086757600080fd5b8063ba5d40b7146107b3578063baef73e9146107c6578063bb5b27e114610808578063bebec6b41461081b57600080fd5b8063a22cb46511610192578063ac9650d811610161578063ac9650d81461074c578063b3f9e4cb1461076c578063b85afd281461077f578063b88d4fde146107a057600080fd5b8063a22cb465146106e7578063a3f4df7e146106fa578063a424740014610726578063ab3b87fe1461073957600080fd5b80639508b1c4116101ce5780639508b1c4146106b15780639559c0bd146106c457806395d89b41146106cc57806399e0dd7c146106d457600080fd5b80637e37479e146106785780637eee288d1461068b57806394d008ef1461069e57600080fd5b806342842e0e116102d95780635096023911610277578063663f7b2a11610246578063663f7b2a14610610578063672b9f81146106235780636ccbae5f1461064457806370a082311461066557600080fd5b806350960239146105bb578063572b6c05146105ce5780636352211e146105ea578063638e5c78146105fd57600080fd5b806347c81699116102b357806347c816991461056f5780634a72584d146105825780634f558e791461059557806350382c1a146105a857600080fd5b806342842e0e1461053657806342966c6814610549578063430c20811461055c57600080fd5b80631bf7e13e1161035157806327f189751161032057806327f18975146104ea578063310bd74b146104fd5780633f72ec6e1461051057806340c10f191461052357600080fd5b80631bf7e13e146104905780631f71be06146104a357806323b872dd146104b6578063276fabb1146104c957600080fd5b8063095ea7b31161038d578063095ea7b31461041c578063150b7a02146104315780631bd8cc1a1461045d5780631be5e7ed1461047d57600080fd5b806301ffc9a7146103b457806306fdde03146103dc578063081812fc146103f1575b600080fd5b6103c76103c2366004613f0b565b610935565b60405190151581526020015b60405180910390f35b6103e4610946565b6040516103d39190613f78565b6104046103ff366004613f8b565b6109d8565b6040516001600160a01b0390911681526020016103d3565b61042f61042a366004613fb9565b6109ff565b005b61044461043f366004614026565b610a18565b6040516001600160e01b031990911681526020016103d3565b61047061046b3660046140dc565b610b72565b6040516103d3919061417f565b6103e461048b366004614192565b610c68565b6103e461049e3660046141c9565b610cb3565b61042f6104b1366004614249565b610dbe565b61042f6104c4366004614305565b610e54565b6104dc6104d7366004614346565b610ea7565b6040519081526020016103d3565b61042f6104f8366004614387565b610eb6565b61042f61050b366004613f8b565b610efe565b61042f61051e3660046143fa565b610f39565b61042f610531366004613fb9565b61103b565b61042f610544366004614305565b611088565b61042f610557366004613f8b565b6110a3565b6103c761056a366004613fb9565b6110e7565b61042f61057d366004614424565b6110f3565b61042f610590366004614485565b611132565b6103c76105a3366004613f8b565b611178565b61042f6105b636600461458c565b611197565b61042f6105c93660046145c0565b6111cd565b6103c76105dc3660046145c0565b6001600160a01b0316301490565b6104046105f8366004613f8b565b61122d565b61042f61060b366004613f8b565b61124a565b61042f61061e366004614678565b611295565b6106366106313660046146c0565b611336565b6040516103d39291906146e2565b6104dc610652366004613f8b565b6000908152610100602052604090205490565b6104dc6106733660046145c0565b61134e565b6104dc6106863660046145c0565b6113d4565b61042f610699366004613fb9565b611405565b61042f6106ac366004614707565b61145c565b61042f6106bf366004614762565b6114ab565b6104dc601481565b6103e4611532565b61042f6106e2366004614805565b611541565b61042f6106f536600461483a565b6115c8565b6103e46040518060400160405280600d81526020016c554e533a20526567697374727960981b81525081565b6103c76107343660046141c9565b6115da565b61042f610747366004613fb9565b611625565b61075f61075a366004614346565b61166a565b6040516103d39190614866565b61040461077a366004613f8b565b611746565b61079261078d3660046140dc565b611770565b6040516103d39291906148c8565b61042f6107ae3660046148ed565b611892565b61042f6107c1366004614249565b6118d9565b6107f06107d4366004613f8b565b600090815261013960205260409020546001600160401b031690565b6040516001600160401b0390911681526020016103d3565b6103e4610816366004613f8b565b611962565b6103e46108293660046145c0565b611a04565b6103e461083c366004613f8b565b611ace565b61042f61084f366004614387565b611b34565b61042f610862366004614958565b611b73565b6103c7610875366004613f8b565b611c42565b6103c761088836600461499f565b6001600160a01b039182166000908152606a6020908152604080832093909416825291909152205460ff1690565b60006104dc565b61042f6108cb366004614387565b611c85565b61042f611cc4565b6104706108e6366004614346565b611d4b565b61042f6108f93660046149d8565b611dfe565b61042f61090c366004614a0a565b611e8f565b6103e460405180604001604052806005815260200164302e392e3160d81b81525081565b600061094082612065565b92915050565b60606065805461095590614a66565b80601f016020809104026020016040519081016040528092919081815260200182805461098190614a66565b80156109ce5780601f106109a3576101008083540402835291602001916109ce565b820191906000526020600020905b8154815290600101906020018083116109b157829003601f168201915b5050505050905090565b60006109e3826120b5565b506000908152606960205260409020546001600160a01b031690565b80610a0981612114565b610a13838361217a565b505050565b60007f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378546001600160a01b0316610a4d61229c565b6001600160a01b031603610b0e57610a6361229c565b6001600160a01b03166342966c68856040518263ffffffff1660e01b8152600401610a9091815260200190565b600060405180830381600087803b158015610aaa57600080fd5b505af1158015610abe573d6000803e3d6000fd5b505050821580159150610ad85750610ad882840184614a9a565b15610af657610ae730856122ab565b610af185856123f9565b610b00565b610b0085856122ab565b50630a85bd0160e11b610b69565b60405162461bcd60e51b815260206004820152602560248201527f52656769737472793a204552433732315f524543454956494e475f50524f4849604482015264109255115160da1b60648201526084015b60405180910390fd5b95945050505050565b6060826001600160401b03811115610b8c57610b8c6144d7565b604051908082528060200260200182016040528015610bbf57816020015b6060815260200190600190039081610baa5790505b50905060005b83811015610c6057610c30858583818110610be257610be2614ab5565b9050602002810190610bf49190614acb565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508792506124a4915050565b828281518110610c4257610c42614ab5565b60200260200101819052508080610c5890614b27565b915050610bc5565b509392505050565b6060610cab84848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508692506124a4915050565b949350505050565b606060005a9050610cc58585856115da565b610d215760405162461bcd60e51b815260206004820152602760248201527f554e535265676973747279466f727761726465723a205349474e41545552455f6044820152661253959053125160ca1b6064820152608401610b60565b610db3610d3160208701876145c0565b30604088013584610d4560608b018b614acb565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284376000920191909152506124d992505050565b9150505b9392505050565b610134546001600160a01b0316610dd361229c565b6001600160a01b031614610df95760405162461bcd60e51b8152600401610b6090614b40565b6000610e0d610e08888a614b87565b6125ba565b509050610e1a8982611405565b610e278686868685612612565b8115610e4957610e498982610e44610e3f8b8d614b87565b612680565b612701565b505050505050505050565b80610e66610e6061229c565b82612743565b610e825760405162461bcd60e51b8152600401610b6090614b94565b81610e8c81612114565b610e95836127d4565b610ea0858585612841565b5050505050565b6000610c60610e088385614b87565b80610ec2610e6061229c565b610ede5760405162461bcd60e51b8152600401610b6090614b94565b81610ee881612114565b610ef587878787876129e8565b50505050505050565b80610f0a610e6061229c565b610f265760405162461bcd60e51b8152600401610b6090614b94565b81610f3081612114565b610a13836127d4565b610134546001600160a01b0316610f4e61229c565b6001600160a01b031614610f745760405162461bcd60e51b8152600401610b6090614b40565b610f7d816120b5565b42826001600160401b031611610fd55760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a204558504952595f494e5f5041535400000000000000006044820152606401610b60565b60008181526101396020908152604091829020805467ffffffffffffffff19166001600160401b038616908117909155915191825282917f93feabb03ab84f47fc85bf0c298103fca21d8c8bc376eae0c1e1c56b9d4f7789910160405180910390a25050565b611043612a4b565b6001600160a01b031661105461229c565b6001600160a01b03161461107a5760405162461bcd60e51b8152600401610b6090614bdd565b61108482826122ab565b5050565b610a1383838360405180602001604052806000815250611892565b806110af610e6061229c565b6110cb5760405162461bcd60e51b8152600401610b6090614b94565b816110d581612114565b6110de836127d4565b610a1383612b4c565b6000610db78383612743565b806110ff610e6061229c565b61111b5760405162461bcd60e51b8152600401610b6090614b94565b8161112581612114565b610ef58787878787612bf3565b8061113e610e6061229c565b61115a5760405162461bcd60e51b8152600401610b6090614b94565b8161116481612114565b61117086868686612cd2565b505050505050565b6000818152606760205260408120546001600160a01b03161515610940565b6111ca816040516020016111ab9190614c1f565b6040516020818303038152906040528051906020012060001c82612d72565b50565b610134546001600160a01b03166111e261229c565b6001600160a01b0316146112085760405162461bcd60e51b8152600401610b6090614b40565b6001600160a01b0316600090815261013660205260409020805460ff19166001179055565b600061123882611c42565b6112455761094082612d97565b919050565b80611256610e6061229c565b6112725760405162461bcd60e51b8152600401610b6090614b94565b61128461127d61229c565b3084612841565b61108461128f61229c565b836123f9565b60006112a0826125ba565b5090506112ab61229c565b6001600160a01b03166112bd8261122d565b6001600160a01b0316146113135760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b60565b61131c81612114565b61108461132761229c565b8261133185612680565b612df7565b6060806113438484612e7e565b909590945092505050565b60006001600160a01b0382166113b85760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b6064820152608401610b60565b506001600160a01b031660009081526068602052604090205490565b6001600160a01b038116600090815261013560205260408120546113f781612e9f565b6113ff578091505b50919050565b610134546001600160a01b031661141a61229c565b6001600160a01b0316146114405760405162461bcd60e51b8152600401610b6090614b40565b611449816127d4565b61108461145582612d97565b8383612841565b611464612a4b565b6001600160a01b031661147561229c565b6001600160a01b03161461149b5760405162461bcd60e51b8152600401610b6090614bdd565b6114a584846122ab565b50505050565b6114b58787612ee9565b6114bd61229c565b6001600160a01b03166114cf8661122d565b6001600160a01b0316146115255760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b60565b610ef58484848489612612565b60606066805461095590614a66565b610134546001600160a01b031661155661229c565b6001600160a01b03161461157c5760405162461bcd60e51b8152600401610b6090614b40565b61013361158a828483614c81565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b82826040516115bc929190614d69565b60405180910390a15050565b6110846115d361229c565b8383612f58565b6000610cab6115e885614d7d565b3085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061302692505050565b80611631610e6061229c565b61164d5760405162461bcd60e51b8152600401610b6090614b94565b8161165781612114565b6114a561166384612d97565b8585612841565b606060006116788385614e07565b905030330361173d5760005b8381101561173b5761170b61169761229c565b61169f61316f565b8787858181106116b1576116b1614ab5565b90506020028101906116c39190614acb565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250613183915050565b82828151811061171d5761171d614ab5565b6020026020010181905250808061173390614b27565b915050611684565b505b610cab816131b3565b6000818152606760205260408120546001600160a01b0316611769576000610940565b3092915050565b606080836001600160401b0381111561178b5761178b6144d7565b6040519080825280602002602001820160405280156117be57816020015b60608152602001906001900390816117a95790505b509150836001600160401b038111156117d9576117d96144d7565b60405190808252806020026020018201604052801561180c57816020015b60608152602001906001900390816117f75790505b50905060005b848110156118895761183c86868381811061182f5761182f614ab5565b9050602002013585612e7e565b84838151811061184e5761184e614ab5565b6020026020010184848151811061186757611867614ab5565b602002602001018290528290525050808061188190614b27565b915050611812565b50935093915050565b8161189e610e6061229c565b6118ba5760405162461bcd60e51b8152600401610b6090614b94565b826118c481612114565b6118cd846127d4565b611170868686866132de565b610134546001600160a01b03166118ee61229c565b6001600160a01b0316146119145760405162461bcd60e51b8152600401610b6090614b40565b600080611924610e08898b614b87565b9150915061193181613311565b6119498a83611943610e3f8c8e614b87565b86613371565b6119568787878786612612565b50505050505050505050565b600081815260c96020526040902080546060919061197f90614a66565b80601f01602080910402602001604051908101604052809291908181526020018280546119ab90614a66565b80156119f85780601f106119cd576101008083540402835291602001916119f8565b820191906000526020600020905b8154815290600101906020018083116119db57829003601f168201915b50505050509050919050565b6001600160a01b03811660009081526101356020526040902054606090611a2a81612e9f565b6113ff576000818152610138602052604090208054611a4890614a66565b80601f0160208091040260200160405190810160405280929190818152602001828054611a7490614a66565b8015611ac15780601f10611a9657610100808354040283529160200191611ac1565b820191906000526020600020905b815481529060010190602001808311611aa457829003601f168201915b5050505050915050919050565b6060611ad9826120b5565b6000611ae36133c4565b90506000815111611b035760405180602001604052806000815250610db7565b80611b0d846133d4565b604051602001611b1e929190614e7a565b6040516020818303038152906040529392505050565b80611b40610e6061229c565b611b5c5760405162461bcd60e51b8152600401610b6090614b94565b81611b6681612114565b610ef58787878787612612565b7f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87546001600160a01b0316611ba661229c565b6001600160a01b031614611bcc5760405162461bcd60e51b8152600401610b6090614bdd565b6020819003611bef576000611be382840184613f8b565b90506114a584826122ab565b6000611bfd82840184614ea9565b805190915060005b8181101561117057611c3086848381518110611c2357611c23614ab5565b60200260200101516122ab565b80611c3a81614b27565b915050611c05565b600081815261013960205260408120546001600160401b03161580159061094057505060009081526101396020526040902054426001600160401b039091161090565b80611c91610e6061229c565b611cad5760405162461bcd60e51b8152600401610b6090614b94565b81611cb781612114565b610ef587878787876134d4565b6000611cce61229c565b6001600160a01b0381166000908152610135602052604081205491925003611d425760405162461bcd60e51b815260206004820152602160248201527f52656769737472793a20524556455253455f5245434f52445f49535f454d50546044820152605960f81b6064820152608401610b60565b6111ca816134ea565b6060816001600160401b03811115611d6557611d656144d7565b604051908082528060200260200182016040528015611d9857816020015b6060815260200190600190039081611d835790505b50905060005b82811015611df757611dc7848483818110611dbb57611dbb614ab5565b90506020020135611962565b828281518110611dd957611dd9614ab5565b60200260200101819052508080611def90614b27565b915050611d9e565b5092915050565b610134546001600160a01b0316611e1361229c565b6001600160a01b031614611e395760405162461bcd60e51b8152600401610b6090614b40565b61013454611e50906001600160a01b0316846122ab565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c39528383604051611e82929190614d69565b60405180910390a2505050565b600054610100900460ff1615808015611eaf5750600054600160ff909116105b80611ec95750303b158015611ec9575060005460ff166001145b611f2c5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610b60565b6000805460ff191660011790558015611f4f576000805461ff0019166101001790555b61013480546001600160a01b0319166001600160a01b038716179055837f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec9237880546001600160a01b0319166001600160a01b03929092169190911790556040805180820182526013815272556e73746f707061626c6520446f6d61696e7360681b60208083019190915282518084019093526002835261155160f21b90830152611ff79161352f565b611fff61356f565b61200761356f565b61201083613598565b612019826135c8565b8015610ea0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b60006001600160e01b031982166380ac58cd60e01b148061209657506001600160e01b03198216635b5e139f60e01b145b8061094057506301ffc9a760e01b6001600160e01b0319831614610940565b6000818152606760205260409020546001600160a01b03166111ca5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b60565b3033036121715761212361316f565b81146111ca5760405162461bcd60e51b815260206004820152601760248201527f52656769737472793a20544f4b454e5f494e56414c49440000000000000000006044820152606401610b60565b6111ca816135f8565b600061218582612d97565b9050806001600160a01b0316836001600160a01b0316036121f25760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b6064820152608401610b60565b806001600160a01b031661220461229c565b6001600160a01b0316148061222057506122208161088861229c565b6122925760405162461bcd60e51b815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c00006064820152608401610b60565b610a138383613626565b60006122a6613694565b905090565b6001600160a01b0382166123015760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610b60565b6000818152606760205260409020546001600160a01b0316156123665760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610b60565b612372600083836136af565b6001600160a01b038216600090815260686020526040812080546001929061239b908490614f39565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b03861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b6000612403612a4b565b905061240f8183613626565b60008051602061529383398151915254604080516020808201869052825180830390910181528183019283905263e3dec8fb60e01b9092526001600160a01b0390921691829163e3dec8fb9161246c918891309190604401614f4c565b600060405180830381600087803b15801561248657600080fd5b505af115801561249a573d6000803e3d6000fd5b5050505050505050565b6060610db7836040516020016124ba9190614c1f565b6040516020818303038152906040528051906020012060001c8361378b565b60606124e4856135f8565b600080876001600160a01b0316866124fe8b8a8989613183565b60405161250b9190614c1f565b60006040518083038160008787f1925050503d8060008114612549576040519150601f19603f3d011682016040523d82523d6000602084013e61254e565b606091505b50909250905061255f603f87614f8e565b5a1161256d5761256d614fa2565b6125ad82826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061386d565b9998505050505050505050565b805160009081905b801561260c578291506125f882856125db600185614fb8565b815181106125eb576125eb614ab5565b60200260200101516138a6565b92508061260481614fcb565b9150506125c2565b50915091565b60005b848110156111705761266e86868381811061263257612632614ab5565b90506020028101906126449190614acb565b86868581811061265657612656614ab5565b90506020028101906126689190614acb565b86612bf3565b8061267881614b27565b915050612615565b606060008260008151811061269757612697614ab5565b602002602001015190506000600190505b8351811015611df757818482815181106126c4576126c4614ab5565b60200260200101516040516020016126dd929190614fe2565b604051602081830303815290604052915080806126f990614b27565b9150506126a8565b61dead6001600160a01b0384161480159061273357506001600160a01b03831660009081526101356020526040902054155b15610a1357610a13838383612df7565b60008061274f8361122d565b90506001600160a01b03811615801590610cab5750806001600160a01b0316846001600160a01b031614806127a957506001600160a01b038082166000908152606a602090815260408083209388168352929052205460ff165b80610cab5750836001600160a01b03166127c2846109d8565b6001600160a01b031614949350505050565b6127dd81613952565b6040516020016127ef91815260200190565b60408051601f198184030181528282528051602091820120600085815260cb9092529181209190915582917f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9190a250565b826001600160a01b031661285482612d97565b6001600160a01b0316146128b85760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b6064820152608401610b60565b6001600160a01b03821661291a5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610b60565b6129258383836136af565b612930600082613626565b6001600160a01b0383166000908152606860205260408120805460019290612959908490614fb8565b90915550506001600160a01b0382166000908152606860205260408120805460019290612987908490614f39565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60005b8481101561117057612a39868683818110612a0857612a08614ab5565b90506020020135858584818110612a2157612a21614ab5565b9050602002810190612a339190614acb565b85612cd2565b80612a4381614b27565b9150506129eb565b600080516020615293833981519152546000906001600160a01b03168015612b485760405163721804d360e11b81523060048201526000906001600160a01b0383169063e43009a690602401602060405180830381865afa158015612ab4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ad8919061501e565b60405163e66f960360e01b8152600481018290529091506001600160a01b0383169063e66f960390602401602060405180830381865afa158015612b20573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b449190615037565b9250505b5090565b6000612b5782612d97565b9050612b65816000846136af565b612b70600083613626565b6001600160a01b0381166000908152606860205260408120805460019290612b99908490614fb8565b909155505060008281526067602052604080822080546001600160a01b0319169055518391906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b60008585604051602001612c08929190615054565b60408051601f198184030181528282528051602091820120601f8901829004820284018201909252878352909250612c5c9183918990899081908401838280828437600092019190915250612d7292505050565b6111708187878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061397a915050565b612cdb84613aaf565b612d275760405162461bcd60e51b815260206004820152601c60248201527f5265636f726453746f726167653a204b45595f4e4f545f464f554e44000000006044820152606401610b60565b6114a584612d3486611962565b85858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525087925061397a915050565b612d7b82613aaf565b61108457600082815260c960205260409020610a138282615064565b6000818152606760205260408120546001600160a01b0316806109405760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b60565b6000828152610138602052604090208054612e1190614a66565b9050600003612e3557600082815261013860205260409020612e338282615064565b505b6001600160a01b03831660008181526101356020526040808220859055518492917feb76a21470988c474a21f690cc28fee1ed511bd812dc3c21fd0f49c5e5d4708a91a3505050565b606080612e8a84611962565b9150612e96848461378b565b90509250929050565b6000818152610137602052604081205460ff16801561094057506101366000612ec661229c565b6001600160a01b0316815260208101919091526040016000205460ff1692915050565b60008051602061529383398151915254604051633805550f60e01b81526001600160a01b03909116908190633805550f90612f2a9086908690600401614d69565b600060405180830381600087803b158015612f4457600080fd5b505af1158015610ef5573d6000803e3d6000fd5b816001600160a01b0316836001600160a01b031603612fb95760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610b60565b6001600160a01b038381166000818152606a6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561306d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613091919061501e565b9050600061313f8660600151805190602001208688602001516040516020016130df9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561316557508551613165906001600160a01b03168286613ad5565b9695505050505050565b60003033036131805750601f193601355b90565b606082858560405160200161319a93929190615123565b6040516020818303038152906040529050949350505050565b606081516001600160401b038111156131ce576131ce6144d7565b60405190808252806020026020018201604052801561320157816020015b60608152602001906001900390816131ec5790505b50905060005b82518110156113ff57600080306001600160a01b031685848151811061322f5761322f614ab5565b60200260200101516040516132449190614c1f565b600060405180830381855af49150503d806000811461327f576040519150601f19603f3d011682016040523d82523d6000602084013e613284565b606091505b50915091506132ac82826040518060600160405280602781526020016152b36027913961386d565b8484815181106132be576132be614ab5565b6020026020010181905250505080806132d690614b27565b915050613207565b6132e9848484612841565b6132f584848484613c17565b6114a55760405162461bcd60e51b8152600401610b6090615162565b6000818152610137602052604090205460ff16156111ca5760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a20544f4b454e5f555047524144454400000000000000006044820152606401610b60565b61337b84846122ab565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952836040516133ab9190613f78565b60405180910390a280156114a5576114a5848484612701565b6060610133805461095590614a66565b6060816000036133fb5750506040805180820190915260018152600360fc1b602082015290565b8160005b8115613425578061340f81614b27565b915061341e9050600a83614f8e565b91506133ff565b6000816001600160401b0381111561343f5761343f6144d7565b6040519080825280601f01601f191660200182016040528015613469576020820181803683370190505b5090505b8415610cab5761347e600183614fb8565b915061348b600a866151b4565b613496906030614f39565b60f81b8183815181106134ab576134ab614ab5565b60200101906001600160f81b031916908160001a9053506134cd600a86614f8e565b945061346d565b6134dd816127d4565b610ea08585858585612612565b6001600160a01b03811660008181526101356020526040808220829055517ffcf5eec0cfa3e6332f5f0e63ec242d71f866a61d121d6cdf5c2eb3b668a26c4f9190a250565b600054610100900460ff166135565760405162461bcd60e51b8152600401610b60906151c8565b60656135628382615064565b506066610a138282615064565b600054610100900460ff166135965760405162461bcd60e51b8152600401610b60906151c8565b565b600054610100900460ff166135bf5760405162461bcd60e51b8152600401610b60906151c8565b6111ca81613d1c565b600054610100900460ff166135ef5760405162461bcd60e51b8152600401610b60906151c8565b6111ca81613d75565b60008181526101006020526040902054613613906001614f39565b6000918252610100602052604090912055565b600081815260696020526040902080546001600160a01b0319166001600160a01b038416908117909155819061365b82612d97565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60003033036136aa575060331936013560601c90565b503390565b6001600160a01b0382166136c6576136c681613311565b600081815261013960205260409020546001600160401b031615613761576001600160a01b0382161580159061371557506136ff612a4b565b6001600160a01b0316826001600160a01b031614155b6137615760405162461bcd60e51b815260206004820152601960248201527f52656769737472793a20544f4b454e5f455850495241424c45000000000000006044820152606401610b60565b6001600160a01b03831660009081526101356020526040902054819003610a1357610a13836134ea565b606061379682612e9f565b156137b05750604080516020810190915260008152610940565b60ca60006137bd84613952565b8152602001908152602001600020600084815260200190815260200160002080546137e790614a66565b80601f016020809104026020016040519081016040528092919081815260200182805461381390614a66565b80156138605780601f1061383557610100808354040283529160200191613860565b820191906000526020600020905b81548152906001019060200180831161384357829003601f168201915b5050505050905092915050565b6060831561387c575081610db7565b82511561388c5782518084602001fd5b8160405162461bcd60e51b8152600401610b609190613f78565b600081516000036138f15760405162461bcd60e51b815260206004820152601560248201527452656769737472793a204c4142454c5f454d50545960581b6044820152606401610b60565b82826040516020016139039190614c1f565b60405160208183030381529060405280519060200120604051602001613933929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b600081815260cb602052604081205415612b4857600082815260cb6020526040902054610940565b60ca600061398783613952565b8152602001908152602001600020600085815260200190815260200160002080546139b190614a66565b9050600003613a0957826040516139c89190614c1f565b6040518091039020817f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f8685604051613a009190613f78565b60405180910390a35b8160ca6000613a1784613952565b815260200190815260200160002060008681526020019081526020016000209081613a429190615064565b5081604051613a519190614c1f565b604051809103902083604051613a679190614c1f565b6040518091039020827f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d928686604051613aa19291906146e2565b60405180910390a450505050565b600081815260c9602052604081208054829190613acb90614a66565b9050119050919050565b6000806000613ae48585613dc3565b90925090506000816004811115613afd57613afd615213565b148015613b1b5750856001600160a01b0316826001600160a01b0316145b15613b2b57600192505050610db7565b600080876001600160a01b0316631626ba7e60e01b8888604051602401613b53929190615229565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051613b919190614c1f565b600060405180830381855afa9150503d8060008114613bcc576040519150601f19603f3d011682016040523d82523d6000602084013e613bd1565b606091505b5091509150818015613be4575080516020145b8015613c0b57508051630b135d3f60e11b90613c09908301602090810190840161501e565b145b98975050505050505050565b60006001600160a01b0384163b15613d1457836001600160a01b031663150b7a02613c4061229c565b8786866040518563ffffffff1660e01b8152600401613c629493929190615242565b6020604051808303816000875af1925050508015613c9d575060408051601f3d908101601f19168201909252613c9a91810190615275565b60015b613cfa573d808015613ccb576040519150601f19603f3d011682016040523d82523d6000602084013e613cd0565b606091505b508051600003613cf25760405162461bcd60e51b8152600401610b6090615162565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610cab565b506001610cab565b600054610100900460ff16613d435760405162461bcd60e51b8152600401610b60906151c8565b806000805160206152938339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b600054610100900460ff16613d9c5760405162461bcd60e51b8152600401610b60906151c8565b807f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87613d54565b6000808251604103613df95760208301516040840151606085015160001a613ded87828585613e08565b94509450505050613e01565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613e3f5750600090506003613eec565b8460ff16601b14158015613e5757508460ff16601c14155b15613e685750600090506004613eec565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613ebc573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613ee557600060019250925050613eec565b9150600090505b94509492505050565b6001600160e01b0319811681146111ca57600080fd5b600060208284031215613f1d57600080fd5b8135610db781613ef5565b60005b83811015613f43578181015183820152602001613f2b565b50506000910152565b60008151808452613f64816020860160208601613f28565b601f01601f19169290920160200192915050565b602081526000610db76020830184613f4c565b600060208284031215613f9d57600080fd5b5035919050565b6001600160a01b03811681146111ca57600080fd5b60008060408385031215613fcc57600080fd5b8235613fd781613fa4565b946020939093013593505050565b60008083601f840112613ff757600080fd5b5081356001600160401b0381111561400e57600080fd5b602083019150836020828501011115613e0157600080fd5b60008060008060006080868803121561403e57600080fd5b853561404981613fa4565b9450602086013561405981613fa4565b93506040860135925060608601356001600160401b0381111561407b57600080fd5b61408788828901613fe5565b969995985093965092949392505050565b60008083601f8401126140aa57600080fd5b5081356001600160401b038111156140c157600080fd5b6020830191508360208260051b8501011115613e0157600080fd5b6000806000604084860312156140f157600080fd5b83356001600160401b0381111561410757600080fd5b61411386828701614098565b909790965060209590950135949350505050565b600082825180855260208086019550808260051b84010181860160005b8481101561417257601f19868403018952614160838351613f4c565b98840198925090830190600101614144565b5090979650505050505050565b602081526000610db76020830184614127565b6000806000604084860312156141a757600080fd5b83356001600160401b038111156141bd57600080fd5b61411386828701613fe5565b6000806000604084860312156141de57600080fd5b83356001600160401b03808211156141f557600080fd5b908501906080828803121561420957600080fd5b9093506020850135908082111561421f57600080fd5b5061422c86828701613fe5565b9497909650939450505050565b8035801515811461124557600080fd5b60008060008060008060008060a0898b03121561426557600080fd5b883561427081613fa4565b975060208901356001600160401b038082111561428c57600080fd5b6142988c838d01614098565b909950975060408b01359150808211156142b157600080fd5b6142bd8c838d01614098565b909750955060608b01359150808211156142d657600080fd5b506142e38b828c01614098565b90945092506142f6905060808a01614239565b90509295985092959890939650565b60008060006060848603121561431a57600080fd5b833561432581613fa4565b9250602084013561433581613fa4565b929592945050506040919091013590565b6000806020838503121561435957600080fd5b82356001600160401b0381111561436f57600080fd5b61437b85828601614098565b90969095509350505050565b60008060008060006060868803121561439f57600080fd5b85356001600160401b03808211156143b657600080fd5b6143c289838a01614098565b909750955060208801359150808211156143db57600080fd5b506143e888828901614098565b96999598509660400135949350505050565b6000806040838503121561440d57600080fd5b82356001600160401b0381168114613fd757600080fd5b60008060008060006060868803121561443c57600080fd5b85356001600160401b038082111561445357600080fd5b61445f89838a01613fe5565b9097509550602088013591508082111561447857600080fd5b506143e888828901613fe5565b6000806000806060858703121561449b57600080fd5b8435935060208501356001600160401b038111156144b857600080fd5b6144c487828801613fe5565b9598909750949560400135949350505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715614515576145156144d7565b604052919050565b600082601f83011261452e57600080fd5b81356001600160401b03811115614547576145476144d7565b61455a601f8201601f19166020016144ed565b81815284602083860101111561456f57600080fd5b816020850160208301376000918101602001919091529392505050565b60006020828403121561459e57600080fd5b81356001600160401b038111156145b457600080fd5b610cab8482850161451d565b6000602082840312156145d257600080fd5b8135610db781613fa4565b60006001600160401b038211156145f6576145f66144d7565b5060051b60200190565b600061461361460e846145dd565b6144ed565b8381529050602080820190600585901b84018681111561463257600080fd5b845b8181101561466d5780356001600160401b038111156146535760008081fd5b61465f8982890161451d565b855250928201928201614634565b505050509392505050565b60006020828403121561468a57600080fd5b81356001600160401b038111156146a057600080fd5b8201601f810184136146b157600080fd5b610cab84823560208401614600565b600080604083850312156146d357600080fd5b50508035926020909101359150565b6040815260006146f56040830185613f4c565b8281036020840152610db38185613f4c565b6000806000806060858703121561471d57600080fd5b843561472881613fa4565b93506020850135925060408501356001600160401b0381111561474a57600080fd5b61475687828801613fe5565b95989497509550505050565b60008060008060008060006080888a03121561477d57600080fd5b87356001600160401b038082111561479457600080fd5b6147a08b838c01613fe5565b909950975060208a0135965060408a01359150808211156147c057600080fd5b6147cc8b838c01614098565b909650945060608a01359150808211156147e557600080fd5b506147f28a828b01614098565b989b979a50959850939692959293505050565b6000806020838503121561481857600080fd5b82356001600160401b0381111561482e57600080fd5b61437b85828601613fe5565b6000806040838503121561484d57600080fd5b823561485881613fa4565b9150612e9660208401614239565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156148bb57603f198886030184526148a9858351613f4c565b9450928501929085019060010161488d565b5092979650505050505050565b6040815260006148db6040830185614127565b8281036020840152610db38185614127565b6000806000806080858703121561490357600080fd5b843561490e81613fa4565b9350602085013561491e81613fa4565b92506040850135915060608501356001600160401b0381111561494057600080fd5b61494c8782880161451d565b91505092959194509250565b60008060006040848603121561496d57600080fd5b833561497881613fa4565b925060208401356001600160401b0381111561499357600080fd5b61422c86828701613fe5565b600080604083850312156149b257600080fd5b82356149bd81613fa4565b915060208301356149cd81613fa4565b809150509250929050565b6000806000604084860312156149ed57600080fd5b8335925060208401356001600160401b0381111561499357600080fd5b60008060008060808587031215614a2057600080fd5b8435614a2b81613fa4565b93506020850135614a3b81613fa4565b92506040850135614a4b81613fa4565b91506060850135614a5b81613fa4565b939692955090935050565b600181811c90821680614a7a57607f821691505b6020821081036113ff57634e487b7160e01b600052602260045260246000fd5b600060208284031215614aac57600080fd5b610db782614239565b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112614ae257600080fd5b8301803591506001600160401b03821115614afc57600080fd5b602001915036819003821315613e0157600080fd5b634e487b7160e01b600052601160045260246000fd5b600060018201614b3957614b39614b11565b5060010190565b60208082526027908201527f52656769737472793a2053454e4445525f49535f4e4f545f4d494e54494e475f60408201526626a0a720a3a2a960c91b606082015260800190565b6000610db7368484614600565b60208082526029908201527f52656769737472793a2053454e4445525f49535f4e4f545f415050524f5645446040820152682fa7a92fa7aba722a960b91b606082015260800190565b60208082526022908201527f52656769737472793a20494e53554646494349454e545f5045524d495353494f6040820152614e5360f01b606082015260800190565b60008251614c31818460208701613f28565b9190910192915050565b601f821115610a1357600081815260208120601f850160051c81016020861015614c625750805b601f850160051c820191505b8181101561117057828155600101614c6e565b6001600160401b03831115614c9857614c986144d7565b614cac83614ca68354614a66565b83614c3b565b6000601f841160018114614ce05760008515614cc85750838201355b600019600387901b1c1916600186901b178355610ea0565b600083815260209020601f19861690835b82811015614d115786850135825560209485019460019092019101614cf1565b5086821015614d2e5760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b602081526000610cab602083018486614d40565b600060808236031215614d8f57600080fd5b604051608081016001600160401b038282108183111715614db257614db26144d7565b8160405284359150614dc382613fa4565b81835260208501356020840152604085013560408401526060850135915080821115614dee57600080fd5b50614dfb3682860161451d565b60608301525092915050565b6000614e1561460e846145dd565b80848252602080830192508560051b850136811115614e3357600080fd5b855b81811015614e6e5780356001600160401b03811115614e545760008081fd5b614e6036828a0161451d565b865250938201938201614e35565b50919695505050505050565b60008351614e8c818460208801613f28565b835190830190614ea0818360208801613f28565b01949350505050565b60006020808385031215614ebc57600080fd5b82356001600160401b03811115614ed257600080fd5b8301601f81018513614ee357600080fd5b8035614ef161460e826145dd565b81815260059190911b82018301908381019087831115614f1057600080fd5b928401925b82841015614f2e57833582529284019290840190614f15565b979650505050505050565b8082018082111561094057610940614b11565b6001600160a01b03848116825283166020820152606060408201819052600090610b6990830184613f4c565b634e487b7160e01b600052601260045260246000fd5b600082614f9d57614f9d614f78565b500490565b634e487b7160e01b600052600160045260246000fd5b8181038181111561094057610940614b11565b600081614fda57614fda614b11565b506000190190565b60008351614ff4818460208801613f28565b601760f91b9083019081528351615012816001840160208801613f28565b01600101949350505050565b60006020828403121561503057600080fd5b5051919050565b60006020828403121561504957600080fd5b8151610db781613fa4565b8183823760009101908152919050565b81516001600160401b0381111561507d5761507d6144d7565b6150918161508b8454614a66565b84614c3b565b602080601f8311600181146150c657600084156150ae5750858301515b600019600386901b1c1916600185901b178555611170565b600085815260208120601f198616915b828110156150f5578886015182559484019460019091019084016150d6565b50858210156151135787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60008451615135818460208901613f28565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6000826151c3576151c3614f78565b500690565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b634e487b7160e01b600052602160045260246000fd5b828152604060208201526000610cab6040830184613f4c565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061316590830184613f4c565b60006020828403121561528757600080fd5b8151610db781613ef556febe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a"; + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "address"; + readonly name: "previousAdmin"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "address"; + readonly name: "newAdmin"; + readonly type: "address"; + }]; + readonly name: "AdminChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "approved"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Approval"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "ApprovalForAll"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "uint8"; + readonly name: "version"; + readonly type: "uint8"; + }]; + readonly name: "Initialized"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly indexed: true; + readonly internalType: "string"; + readonly name: "keyIndex"; + readonly type: "string"; + }, { + readonly indexed: false; + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }]; + readonly name: "NewKey"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly indexed: false; + readonly internalType: "string"; + readonly name: "uri"; + readonly type: "string"; + }]; + readonly name: "NewURI"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "string"; + readonly name: "prefix"; + readonly type: "string"; + }]; + readonly name: "NewURIPrefix"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }]; + readonly name: "RemoveReverse"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "ResetRecords"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly indexed: true; + readonly internalType: "string"; + readonly name: "keyIndex"; + readonly type: "string"; + }, { + readonly indexed: true; + readonly internalType: "string"; + readonly name: "valueIndex"; + readonly type: "string"; + }, { + readonly indexed: false; + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }, { + readonly indexed: false; + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }]; + readonly name: "Set"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly indexed: false; + readonly internalType: "uint64"; + readonly name: "expiry"; + readonly type: "uint64"; + }]; + readonly name: "SetExpiry"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "SetReverse"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Transfer"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "implementation"; + readonly type: "address"; + }]; + readonly name: "Upgraded"; + readonly type: "event"; + }, { + readonly inputs: readonly []; + readonly name: "BATCH_LIMIT"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "NAME"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "VERSION"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }]; + readonly name: "addKey"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }]; + readonly name: "addProxyReader"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "approve"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "balanceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "burn"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "user"; + readonly type: "address"; + }, { + readonly internalType: "bytes"; + readonly name: "depositData"; + readonly type: "bytes"; + }]; + readonly name: "deposit"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "depositToPolygon"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly components: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "nonce"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly internalType: "struct IForwarder.ForwardRequest"; + readonly name: "req"; + readonly type: "tuple"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "execute"; + readonly outputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "exists"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "expiryOf"; + readonly outputs: readonly [{ + readonly internalType: "uint64"; + readonly name: ""; + readonly type: "uint64"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "get"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getApproved"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "keyHash"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getByHash"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }, { + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "keyHash"; + readonly type: "uint256"; + }]; + readonly name: "getKey"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256[]"; + readonly name: "hashes"; + readonly type: "uint256[]"; + }]; + readonly name: "getKeys"; + readonly outputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getMany"; + readonly outputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256[]"; + readonly name: "keyHashes"; + readonly type: "uint256[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getManyByHash"; + readonly outputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "mintingManager"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "cnsRegistry"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "rootChainManager"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "childChainManager"; + readonly type: "address"; + }]; + readonly name: "initialize"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly name: "isApprovedForAll"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "spender"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "isApprovedOrOwner"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "isExpired"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "forwarder"; + readonly type: "address"; + }]; + readonly name: "isTrustedForwarder"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "user"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "mint"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "user"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly name: "mint"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "string"; + readonly name: "uri"; + readonly type: "string"; + }]; + readonly name: "mintTLD"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "string[]"; + readonly name: "labels"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }, { + readonly internalType: "bool"; + readonly name: "withReverse"; + readonly type: "bool"; + }]; + readonly name: "mintWithRecords"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes[]"; + readonly name: "data"; + readonly type: "bytes[]"; + }]; + readonly name: "multicall"; + readonly outputs: readonly [{ + readonly internalType: "bytes[]"; + readonly name: "results"; + readonly type: "bytes[]"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "name"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "labels"; + readonly type: "string[]"; + }]; + readonly name: "namehash"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "hash"; + readonly type: "uint256"; + }]; + readonly stateMutability: "pure"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "nonceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "onERC721Received"; + readonly outputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: ""; + readonly type: "bytes4"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "ownerOf"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "reconfigure"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "removeReverse"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "reset"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "resolverOf"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }]; + readonly name: "reverseNameOf"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: "reverseUri"; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }]; + readonly name: "reverseOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "reverse"; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "root"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "pure"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }, { + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "set"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "setApprovalForAll"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "keyHash"; + readonly type: "uint256"; + }, { + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "setByHash"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint64"; + readonly name: "expiry"; + readonly type: "uint64"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "setExpiry"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "setMany"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256[]"; + readonly name: "keyHashes"; + readonly type: "uint256[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "setManyByHash"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "setOwner"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "labels"; + readonly type: "string[]"; + }]; + readonly name: "setReverse"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "prefix"; + readonly type: "string"; + }]; + readonly name: "setTokenURIPrefix"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "symbol"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "tokenURI"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "transferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "unlock"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "string[]"; + readonly name: "labels"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }, { + readonly internalType: "bool"; + readonly name: "withReverse"; + readonly type: "bool"; + }]; + readonly name: "unlockWithRecords"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly components: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "nonce"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly internalType: "struct IForwarder.ForwardRequest"; + readonly name: "req"; + readonly type: "tuple"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "verify"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes"; + readonly name: "inputData"; + readonly type: "bytes"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }]; + readonly name: "withdrawFromPolygon"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): UNSRegistryInterface; + static connect(address: string, runner?: ContractRunner | null): UNSRegistry; +} +export {}; +//# sourceMappingURL=UNSRegistry__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/UNSRegistry__factory.d.ts.map b/dist/types/factories/contracts/UNSRegistry__factory.d.ts.map new file mode 100644 index 00000000..d83b90e7 --- /dev/null +++ b/dist/types/factories/contracts/UNSRegistry__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"UNSRegistry__factory.d.ts","sourceRoot":"","sources":["../../../../types/factories/contracts/UNSRegistry__factory.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/factories/contracts/UNSRegistry__factory.js b/dist/types/factories/contracts/UNSRegistry__factory.js new file mode 100644 index 00000000..4413e2fb --- /dev/null +++ b/dist/types/factories/contracts/UNSRegistry__factory.js @@ -0,0 +1,1571 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.UNSRegistry__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "previousAdmin", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "newAdmin", + type: "address", + }, + ], + name: "AdminChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "approved", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Approval", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "ApprovalForAll", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint8", + name: "version", + type: "uint8", + }, + ], + name: "Initialized", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + indexed: true, + internalType: "string", + name: "keyIndex", + type: "string", + }, + { + indexed: false, + internalType: "string", + name: "key", + type: "string", + }, + ], + name: "NewKey", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + indexed: false, + internalType: "string", + name: "uri", + type: "string", + }, + ], + name: "NewURI", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "string", + name: "prefix", + type: "string", + }, + ], + name: "NewURIPrefix", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "RemoveReverse", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "ResetRecords", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + indexed: true, + internalType: "string", + name: "keyIndex", + type: "string", + }, + { + indexed: true, + internalType: "string", + name: "valueIndex", + type: "string", + }, + { + indexed: false, + internalType: "string", + name: "key", + type: "string", + }, + { + indexed: false, + internalType: "string", + name: "value", + type: "string", + }, + ], + name: "Set", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + indexed: false, + internalType: "uint64", + name: "expiry", + type: "uint64", + }, + ], + name: "SetExpiry", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "addr", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "SetReverse", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Transfer", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "implementation", + type: "address", + }, + ], + name: "Upgraded", + type: "event", + }, + { + inputs: [], + name: "BATCH_LIMIT", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "NAME", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "VERSION", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "key", + type: "string", + }, + ], + name: "addKey", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "addProxyReader", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "approve", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "burn", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "user", + type: "address", + }, + { + internalType: "bytes", + name: "depositData", + type: "bytes", + }, + ], + name: "deposit", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "depositToPolygon", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + components: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "uint256", + name: "nonce", + type: "uint256", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + internalType: "struct IForwarder.ForwardRequest", + name: "req", + type: "tuple", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "execute", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "exists", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "expiryOf", + outputs: [ + { + internalType: "uint64", + name: "", + type: "uint64", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "key", + type: "string", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "get", + outputs: [ + { + internalType: "string", + name: "value", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getApproved", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "keyHash", + type: "uint256", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getByHash", + outputs: [ + { + internalType: "string", + name: "key", + type: "string", + }, + { + internalType: "string", + name: "value", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "keyHash", + type: "uint256", + }, + ], + name: "getKey", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256[]", + name: "hashes", + type: "uint256[]", + }, + ], + name: "getKeys", + outputs: [ + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getMany", + outputs: [ + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256[]", + name: "keyHashes", + type: "uint256[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getManyByHash", + outputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "mintingManager", + type: "address", + }, + { + internalType: "address", + name: "cnsRegistry", + type: "address", + }, + { + internalType: "address", + name: "rootChainManager", + type: "address", + }, + { + internalType: "address", + name: "childChainManager", + type: "address", + }, + ], + name: "initialize", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + name: "isApprovedForAll", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "spender", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "isApprovedOrOwner", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "isExpired", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "forwarder", + type: "address", + }, + ], + name: "isTrustedForwarder", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "user", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "mint", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "user", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + name: "mint", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "string", + name: "uri", + type: "string", + }, + ], + name: "mintTLD", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "string[]", + name: "labels", + type: "string[]", + }, + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + { + internalType: "bool", + name: "withReverse", + type: "bool", + }, + ], + name: "mintWithRecords", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes[]", + name: "data", + type: "bytes[]", + }, + ], + name: "multicall", + outputs: [ + { + internalType: "bytes[]", + name: "results", + type: "bytes[]", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "name", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string[]", + name: "labels", + type: "string[]", + }, + ], + name: "namehash", + outputs: [ + { + internalType: "uint256", + name: "hash", + type: "uint256", + }, + ], + stateMutability: "pure", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "nonceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "onERC721Received", + outputs: [ + { + internalType: "bytes4", + name: "", + type: "bytes4", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "ownerOf", + outputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "reconfigure", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "removeReverse", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "reset", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "resolverOf", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "reverseNameOf", + outputs: [ + { + internalType: "string", + name: "reverseUri", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "reverseOf", + outputs: [ + { + internalType: "uint256", + name: "reverse", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "root", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "pure", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "key", + type: "string", + }, + { + internalType: "string", + name: "value", + type: "string", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "set", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "setApprovalForAll", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "keyHash", + type: "uint256", + }, + { + internalType: "string", + name: "value", + type: "string", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "setByHash", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint64", + name: "expiry", + type: "uint64", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "setExpiry", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "setMany", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256[]", + name: "keyHashes", + type: "uint256[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "setManyByHash", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "setOwner", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string[]", + name: "labels", + type: "string[]", + }, + ], + name: "setReverse", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "prefix", + type: "string", + }, + ], + name: "setTokenURIPrefix", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "symbol", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "tokenURI", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "transferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "unlock", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "string[]", + name: "labels", + type: "string[]", + }, + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + { + internalType: "bool", + name: "withReverse", + type: "bool", + }, + ], + name: "unlockWithRecords", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + components: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "uint256", + name: "nonce", + type: "uint256", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + internalType: "struct IForwarder.ForwardRequest", + name: "req", + type: "tuple", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "verify", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes", + name: "inputData", + type: "bytes", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + ], + name: "withdrawFromPolygon", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +const _bytecode = "0x608060405234801561001057600080fd5b506152e6806100206000396000f3fe608060405234801561001057600080fd5b50600436106103af5760003560e01c80637e37479e116101f4578063ba5d40b71161011a578063e985e9c5116100ad578063f5c1f76e1161007c578063f5c1f76e146108d8578063f7df5c60146108eb578063f8c8765e146108fe578063ffa1ad741461091157600080fd5b8063e985e9c51461087a578063ebf0c717146108b6578063ec129eea146108bd578063f25eb5c1146108d057600080fd5b8063c87b56dd116100e9578063c87b56dd1461082e578063ce92b33e14610841578063cf2c52cb14610854578063d9548e531461086757600080fd5b8063ba5d40b7146107b3578063baef73e9146107c6578063bb5b27e114610808578063bebec6b41461081b57600080fd5b8063a22cb46511610192578063ac9650d811610161578063ac9650d81461074c578063b3f9e4cb1461076c578063b85afd281461077f578063b88d4fde146107a057600080fd5b8063a22cb465146106e7578063a3f4df7e146106fa578063a424740014610726578063ab3b87fe1461073957600080fd5b80639508b1c4116101ce5780639508b1c4146106b15780639559c0bd146106c457806395d89b41146106cc57806399e0dd7c146106d457600080fd5b80637e37479e146106785780637eee288d1461068b57806394d008ef1461069e57600080fd5b806342842e0e116102d95780635096023911610277578063663f7b2a11610246578063663f7b2a14610610578063672b9f81146106235780636ccbae5f1461064457806370a082311461066557600080fd5b806350960239146105bb578063572b6c05146105ce5780636352211e146105ea578063638e5c78146105fd57600080fd5b806347c81699116102b357806347c816991461056f5780634a72584d146105825780634f558e791461059557806350382c1a146105a857600080fd5b806342842e0e1461053657806342966c6814610549578063430c20811461055c57600080fd5b80631bf7e13e1161035157806327f189751161032057806327f18975146104ea578063310bd74b146104fd5780633f72ec6e1461051057806340c10f191461052357600080fd5b80631bf7e13e146104905780631f71be06146104a357806323b872dd146104b6578063276fabb1146104c957600080fd5b8063095ea7b31161038d578063095ea7b31461041c578063150b7a02146104315780631bd8cc1a1461045d5780631be5e7ed1461047d57600080fd5b806301ffc9a7146103b457806306fdde03146103dc578063081812fc146103f1575b600080fd5b6103c76103c2366004613f0b565b610935565b60405190151581526020015b60405180910390f35b6103e4610946565b6040516103d39190613f78565b6104046103ff366004613f8b565b6109d8565b6040516001600160a01b0390911681526020016103d3565b61042f61042a366004613fb9565b6109ff565b005b61044461043f366004614026565b610a18565b6040516001600160e01b031990911681526020016103d3565b61047061046b3660046140dc565b610b72565b6040516103d3919061417f565b6103e461048b366004614192565b610c68565b6103e461049e3660046141c9565b610cb3565b61042f6104b1366004614249565b610dbe565b61042f6104c4366004614305565b610e54565b6104dc6104d7366004614346565b610ea7565b6040519081526020016103d3565b61042f6104f8366004614387565b610eb6565b61042f61050b366004613f8b565b610efe565b61042f61051e3660046143fa565b610f39565b61042f610531366004613fb9565b61103b565b61042f610544366004614305565b611088565b61042f610557366004613f8b565b6110a3565b6103c761056a366004613fb9565b6110e7565b61042f61057d366004614424565b6110f3565b61042f610590366004614485565b611132565b6103c76105a3366004613f8b565b611178565b61042f6105b636600461458c565b611197565b61042f6105c93660046145c0565b6111cd565b6103c76105dc3660046145c0565b6001600160a01b0316301490565b6104046105f8366004613f8b565b61122d565b61042f61060b366004613f8b565b61124a565b61042f61061e366004614678565b611295565b6106366106313660046146c0565b611336565b6040516103d39291906146e2565b6104dc610652366004613f8b565b6000908152610100602052604090205490565b6104dc6106733660046145c0565b61134e565b6104dc6106863660046145c0565b6113d4565b61042f610699366004613fb9565b611405565b61042f6106ac366004614707565b61145c565b61042f6106bf366004614762565b6114ab565b6104dc601481565b6103e4611532565b61042f6106e2366004614805565b611541565b61042f6106f536600461483a565b6115c8565b6103e46040518060400160405280600d81526020016c554e533a20526567697374727960981b81525081565b6103c76107343660046141c9565b6115da565b61042f610747366004613fb9565b611625565b61075f61075a366004614346565b61166a565b6040516103d39190614866565b61040461077a366004613f8b565b611746565b61079261078d3660046140dc565b611770565b6040516103d39291906148c8565b61042f6107ae3660046148ed565b611892565b61042f6107c1366004614249565b6118d9565b6107f06107d4366004613f8b565b600090815261013960205260409020546001600160401b031690565b6040516001600160401b0390911681526020016103d3565b6103e4610816366004613f8b565b611962565b6103e46108293660046145c0565b611a04565b6103e461083c366004613f8b565b611ace565b61042f61084f366004614387565b611b34565b61042f610862366004614958565b611b73565b6103c7610875366004613f8b565b611c42565b6103c761088836600461499f565b6001600160a01b039182166000908152606a6020908152604080832093909416825291909152205460ff1690565b60006104dc565b61042f6108cb366004614387565b611c85565b61042f611cc4565b6104706108e6366004614346565b611d4b565b61042f6108f93660046149d8565b611dfe565b61042f61090c366004614a0a565b611e8f565b6103e460405180604001604052806005815260200164302e392e3160d81b81525081565b600061094082612065565b92915050565b60606065805461095590614a66565b80601f016020809104026020016040519081016040528092919081815260200182805461098190614a66565b80156109ce5780601f106109a3576101008083540402835291602001916109ce565b820191906000526020600020905b8154815290600101906020018083116109b157829003601f168201915b5050505050905090565b60006109e3826120b5565b506000908152606960205260409020546001600160a01b031690565b80610a0981612114565b610a13838361217a565b505050565b60007f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378546001600160a01b0316610a4d61229c565b6001600160a01b031603610b0e57610a6361229c565b6001600160a01b03166342966c68856040518263ffffffff1660e01b8152600401610a9091815260200190565b600060405180830381600087803b158015610aaa57600080fd5b505af1158015610abe573d6000803e3d6000fd5b505050821580159150610ad85750610ad882840184614a9a565b15610af657610ae730856122ab565b610af185856123f9565b610b00565b610b0085856122ab565b50630a85bd0160e11b610b69565b60405162461bcd60e51b815260206004820152602560248201527f52656769737472793a204552433732315f524543454956494e475f50524f4849604482015264109255115160da1b60648201526084015b60405180910390fd5b95945050505050565b6060826001600160401b03811115610b8c57610b8c6144d7565b604051908082528060200260200182016040528015610bbf57816020015b6060815260200190600190039081610baa5790505b50905060005b83811015610c6057610c30858583818110610be257610be2614ab5565b9050602002810190610bf49190614acb565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508792506124a4915050565b828281518110610c4257610c42614ab5565b60200260200101819052508080610c5890614b27565b915050610bc5565b509392505050565b6060610cab84848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508692506124a4915050565b949350505050565b606060005a9050610cc58585856115da565b610d215760405162461bcd60e51b815260206004820152602760248201527f554e535265676973747279466f727761726465723a205349474e41545552455f6044820152661253959053125160ca1b6064820152608401610b60565b610db3610d3160208701876145c0565b30604088013584610d4560608b018b614acb565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284376000920191909152506124d992505050565b9150505b9392505050565b610134546001600160a01b0316610dd361229c565b6001600160a01b031614610df95760405162461bcd60e51b8152600401610b6090614b40565b6000610e0d610e08888a614b87565b6125ba565b509050610e1a8982611405565b610e278686868685612612565b8115610e4957610e498982610e44610e3f8b8d614b87565b612680565b612701565b505050505050505050565b80610e66610e6061229c565b82612743565b610e825760405162461bcd60e51b8152600401610b6090614b94565b81610e8c81612114565b610e95836127d4565b610ea0858585612841565b5050505050565b6000610c60610e088385614b87565b80610ec2610e6061229c565b610ede5760405162461bcd60e51b8152600401610b6090614b94565b81610ee881612114565b610ef587878787876129e8565b50505050505050565b80610f0a610e6061229c565b610f265760405162461bcd60e51b8152600401610b6090614b94565b81610f3081612114565b610a13836127d4565b610134546001600160a01b0316610f4e61229c565b6001600160a01b031614610f745760405162461bcd60e51b8152600401610b6090614b40565b610f7d816120b5565b42826001600160401b031611610fd55760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a204558504952595f494e5f5041535400000000000000006044820152606401610b60565b60008181526101396020908152604091829020805467ffffffffffffffff19166001600160401b038616908117909155915191825282917f93feabb03ab84f47fc85bf0c298103fca21d8c8bc376eae0c1e1c56b9d4f7789910160405180910390a25050565b611043612a4b565b6001600160a01b031661105461229c565b6001600160a01b03161461107a5760405162461bcd60e51b8152600401610b6090614bdd565b61108482826122ab565b5050565b610a1383838360405180602001604052806000815250611892565b806110af610e6061229c565b6110cb5760405162461bcd60e51b8152600401610b6090614b94565b816110d581612114565b6110de836127d4565b610a1383612b4c565b6000610db78383612743565b806110ff610e6061229c565b61111b5760405162461bcd60e51b8152600401610b6090614b94565b8161112581612114565b610ef58787878787612bf3565b8061113e610e6061229c565b61115a5760405162461bcd60e51b8152600401610b6090614b94565b8161116481612114565b61117086868686612cd2565b505050505050565b6000818152606760205260408120546001600160a01b03161515610940565b6111ca816040516020016111ab9190614c1f565b6040516020818303038152906040528051906020012060001c82612d72565b50565b610134546001600160a01b03166111e261229c565b6001600160a01b0316146112085760405162461bcd60e51b8152600401610b6090614b40565b6001600160a01b0316600090815261013660205260409020805460ff19166001179055565b600061123882611c42565b6112455761094082612d97565b919050565b80611256610e6061229c565b6112725760405162461bcd60e51b8152600401610b6090614b94565b61128461127d61229c565b3084612841565b61108461128f61229c565b836123f9565b60006112a0826125ba565b5090506112ab61229c565b6001600160a01b03166112bd8261122d565b6001600160a01b0316146113135760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b60565b61131c81612114565b61108461132761229c565b8261133185612680565b612df7565b6060806113438484612e7e565b909590945092505050565b60006001600160a01b0382166113b85760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b6064820152608401610b60565b506001600160a01b031660009081526068602052604090205490565b6001600160a01b038116600090815261013560205260408120546113f781612e9f565b6113ff578091505b50919050565b610134546001600160a01b031661141a61229c565b6001600160a01b0316146114405760405162461bcd60e51b8152600401610b6090614b40565b611449816127d4565b61108461145582612d97565b8383612841565b611464612a4b565b6001600160a01b031661147561229c565b6001600160a01b03161461149b5760405162461bcd60e51b8152600401610b6090614bdd565b6114a584846122ab565b50505050565b6114b58787612ee9565b6114bd61229c565b6001600160a01b03166114cf8661122d565b6001600160a01b0316146115255760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b60565b610ef58484848489612612565b60606066805461095590614a66565b610134546001600160a01b031661155661229c565b6001600160a01b03161461157c5760405162461bcd60e51b8152600401610b6090614b40565b61013361158a828483614c81565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b82826040516115bc929190614d69565b60405180910390a15050565b6110846115d361229c565b8383612f58565b6000610cab6115e885614d7d565b3085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061302692505050565b80611631610e6061229c565b61164d5760405162461bcd60e51b8152600401610b6090614b94565b8161165781612114565b6114a561166384612d97565b8585612841565b606060006116788385614e07565b905030330361173d5760005b8381101561173b5761170b61169761229c565b61169f61316f565b8787858181106116b1576116b1614ab5565b90506020028101906116c39190614acb565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250613183915050565b82828151811061171d5761171d614ab5565b6020026020010181905250808061173390614b27565b915050611684565b505b610cab816131b3565b6000818152606760205260408120546001600160a01b0316611769576000610940565b3092915050565b606080836001600160401b0381111561178b5761178b6144d7565b6040519080825280602002602001820160405280156117be57816020015b60608152602001906001900390816117a95790505b509150836001600160401b038111156117d9576117d96144d7565b60405190808252806020026020018201604052801561180c57816020015b60608152602001906001900390816117f75790505b50905060005b848110156118895761183c86868381811061182f5761182f614ab5565b9050602002013585612e7e565b84838151811061184e5761184e614ab5565b6020026020010184848151811061186757611867614ab5565b602002602001018290528290525050808061188190614b27565b915050611812565b50935093915050565b8161189e610e6061229c565b6118ba5760405162461bcd60e51b8152600401610b6090614b94565b826118c481612114565b6118cd846127d4565b611170868686866132de565b610134546001600160a01b03166118ee61229c565b6001600160a01b0316146119145760405162461bcd60e51b8152600401610b6090614b40565b600080611924610e08898b614b87565b9150915061193181613311565b6119498a83611943610e3f8c8e614b87565b86613371565b6119568787878786612612565b50505050505050505050565b600081815260c96020526040902080546060919061197f90614a66565b80601f01602080910402602001604051908101604052809291908181526020018280546119ab90614a66565b80156119f85780601f106119cd576101008083540402835291602001916119f8565b820191906000526020600020905b8154815290600101906020018083116119db57829003601f168201915b50505050509050919050565b6001600160a01b03811660009081526101356020526040902054606090611a2a81612e9f565b6113ff576000818152610138602052604090208054611a4890614a66565b80601f0160208091040260200160405190810160405280929190818152602001828054611a7490614a66565b8015611ac15780601f10611a9657610100808354040283529160200191611ac1565b820191906000526020600020905b815481529060010190602001808311611aa457829003601f168201915b5050505050915050919050565b6060611ad9826120b5565b6000611ae36133c4565b90506000815111611b035760405180602001604052806000815250610db7565b80611b0d846133d4565b604051602001611b1e929190614e7a565b6040516020818303038152906040529392505050565b80611b40610e6061229c565b611b5c5760405162461bcd60e51b8152600401610b6090614b94565b81611b6681612114565b610ef58787878787612612565b7f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87546001600160a01b0316611ba661229c565b6001600160a01b031614611bcc5760405162461bcd60e51b8152600401610b6090614bdd565b6020819003611bef576000611be382840184613f8b565b90506114a584826122ab565b6000611bfd82840184614ea9565b805190915060005b8181101561117057611c3086848381518110611c2357611c23614ab5565b60200260200101516122ab565b80611c3a81614b27565b915050611c05565b600081815261013960205260408120546001600160401b03161580159061094057505060009081526101396020526040902054426001600160401b039091161090565b80611c91610e6061229c565b611cad5760405162461bcd60e51b8152600401610b6090614b94565b81611cb781612114565b610ef587878787876134d4565b6000611cce61229c565b6001600160a01b0381166000908152610135602052604081205491925003611d425760405162461bcd60e51b815260206004820152602160248201527f52656769737472793a20524556455253455f5245434f52445f49535f454d50546044820152605960f81b6064820152608401610b60565b6111ca816134ea565b6060816001600160401b03811115611d6557611d656144d7565b604051908082528060200260200182016040528015611d9857816020015b6060815260200190600190039081611d835790505b50905060005b82811015611df757611dc7848483818110611dbb57611dbb614ab5565b90506020020135611962565b828281518110611dd957611dd9614ab5565b60200260200101819052508080611def90614b27565b915050611d9e565b5092915050565b610134546001600160a01b0316611e1361229c565b6001600160a01b031614611e395760405162461bcd60e51b8152600401610b6090614b40565b61013454611e50906001600160a01b0316846122ab565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c39528383604051611e82929190614d69565b60405180910390a2505050565b600054610100900460ff1615808015611eaf5750600054600160ff909116105b80611ec95750303b158015611ec9575060005460ff166001145b611f2c5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610b60565b6000805460ff191660011790558015611f4f576000805461ff0019166101001790555b61013480546001600160a01b0319166001600160a01b038716179055837f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec9237880546001600160a01b0319166001600160a01b03929092169190911790556040805180820182526013815272556e73746f707061626c6520446f6d61696e7360681b60208083019190915282518084019093526002835261155160f21b90830152611ff79161352f565b611fff61356f565b61200761356f565b61201083613598565b612019826135c8565b8015610ea0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b60006001600160e01b031982166380ac58cd60e01b148061209657506001600160e01b03198216635b5e139f60e01b145b8061094057506301ffc9a760e01b6001600160e01b0319831614610940565b6000818152606760205260409020546001600160a01b03166111ca5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b60565b3033036121715761212361316f565b81146111ca5760405162461bcd60e51b815260206004820152601760248201527f52656769737472793a20544f4b454e5f494e56414c49440000000000000000006044820152606401610b60565b6111ca816135f8565b600061218582612d97565b9050806001600160a01b0316836001600160a01b0316036121f25760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b6064820152608401610b60565b806001600160a01b031661220461229c565b6001600160a01b0316148061222057506122208161088861229c565b6122925760405162461bcd60e51b815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c00006064820152608401610b60565b610a138383613626565b60006122a6613694565b905090565b6001600160a01b0382166123015760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610b60565b6000818152606760205260409020546001600160a01b0316156123665760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610b60565b612372600083836136af565b6001600160a01b038216600090815260686020526040812080546001929061239b908490614f39565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b03861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b6000612403612a4b565b905061240f8183613626565b60008051602061529383398151915254604080516020808201869052825180830390910181528183019283905263e3dec8fb60e01b9092526001600160a01b0390921691829163e3dec8fb9161246c918891309190604401614f4c565b600060405180830381600087803b15801561248657600080fd5b505af115801561249a573d6000803e3d6000fd5b5050505050505050565b6060610db7836040516020016124ba9190614c1f565b6040516020818303038152906040528051906020012060001c8361378b565b60606124e4856135f8565b600080876001600160a01b0316866124fe8b8a8989613183565b60405161250b9190614c1f565b60006040518083038160008787f1925050503d8060008114612549576040519150601f19603f3d011682016040523d82523d6000602084013e61254e565b606091505b50909250905061255f603f87614f8e565b5a1161256d5761256d614fa2565b6125ad82826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061386d565b9998505050505050505050565b805160009081905b801561260c578291506125f882856125db600185614fb8565b815181106125eb576125eb614ab5565b60200260200101516138a6565b92508061260481614fcb565b9150506125c2565b50915091565b60005b848110156111705761266e86868381811061263257612632614ab5565b90506020028101906126449190614acb565b86868581811061265657612656614ab5565b90506020028101906126689190614acb565b86612bf3565b8061267881614b27565b915050612615565b606060008260008151811061269757612697614ab5565b602002602001015190506000600190505b8351811015611df757818482815181106126c4576126c4614ab5565b60200260200101516040516020016126dd929190614fe2565b604051602081830303815290604052915080806126f990614b27565b9150506126a8565b61dead6001600160a01b0384161480159061273357506001600160a01b03831660009081526101356020526040902054155b15610a1357610a13838383612df7565b60008061274f8361122d565b90506001600160a01b03811615801590610cab5750806001600160a01b0316846001600160a01b031614806127a957506001600160a01b038082166000908152606a602090815260408083209388168352929052205460ff165b80610cab5750836001600160a01b03166127c2846109d8565b6001600160a01b031614949350505050565b6127dd81613952565b6040516020016127ef91815260200190565b60408051601f198184030181528282528051602091820120600085815260cb9092529181209190915582917f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9190a250565b826001600160a01b031661285482612d97565b6001600160a01b0316146128b85760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b6064820152608401610b60565b6001600160a01b03821661291a5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610b60565b6129258383836136af565b612930600082613626565b6001600160a01b0383166000908152606860205260408120805460019290612959908490614fb8565b90915550506001600160a01b0382166000908152606860205260408120805460019290612987908490614f39565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60005b8481101561117057612a39868683818110612a0857612a08614ab5565b90506020020135858584818110612a2157612a21614ab5565b9050602002810190612a339190614acb565b85612cd2565b80612a4381614b27565b9150506129eb565b600080516020615293833981519152546000906001600160a01b03168015612b485760405163721804d360e11b81523060048201526000906001600160a01b0383169063e43009a690602401602060405180830381865afa158015612ab4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ad8919061501e565b60405163e66f960360e01b8152600481018290529091506001600160a01b0383169063e66f960390602401602060405180830381865afa158015612b20573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b449190615037565b9250505b5090565b6000612b5782612d97565b9050612b65816000846136af565b612b70600083613626565b6001600160a01b0381166000908152606860205260408120805460019290612b99908490614fb8565b909155505060008281526067602052604080822080546001600160a01b0319169055518391906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b60008585604051602001612c08929190615054565b60408051601f198184030181528282528051602091820120601f8901829004820284018201909252878352909250612c5c9183918990899081908401838280828437600092019190915250612d7292505050565b6111708187878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061397a915050565b612cdb84613aaf565b612d275760405162461bcd60e51b815260206004820152601c60248201527f5265636f726453746f726167653a204b45595f4e4f545f464f554e44000000006044820152606401610b60565b6114a584612d3486611962565b85858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525087925061397a915050565b612d7b82613aaf565b61108457600082815260c960205260409020610a138282615064565b6000818152606760205260408120546001600160a01b0316806109405760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b60565b6000828152610138602052604090208054612e1190614a66565b9050600003612e3557600082815261013860205260409020612e338282615064565b505b6001600160a01b03831660008181526101356020526040808220859055518492917feb76a21470988c474a21f690cc28fee1ed511bd812dc3c21fd0f49c5e5d4708a91a3505050565b606080612e8a84611962565b9150612e96848461378b565b90509250929050565b6000818152610137602052604081205460ff16801561094057506101366000612ec661229c565b6001600160a01b0316815260208101919091526040016000205460ff1692915050565b60008051602061529383398151915254604051633805550f60e01b81526001600160a01b03909116908190633805550f90612f2a9086908690600401614d69565b600060405180830381600087803b158015612f4457600080fd5b505af1158015610ef5573d6000803e3d6000fd5b816001600160a01b0316836001600160a01b031603612fb95760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610b60565b6001600160a01b038381166000818152606a6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561306d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613091919061501e565b9050600061313f8660600151805190602001208688602001516040516020016130df9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561316557508551613165906001600160a01b03168286613ad5565b9695505050505050565b60003033036131805750601f193601355b90565b606082858560405160200161319a93929190615123565b6040516020818303038152906040529050949350505050565b606081516001600160401b038111156131ce576131ce6144d7565b60405190808252806020026020018201604052801561320157816020015b60608152602001906001900390816131ec5790505b50905060005b82518110156113ff57600080306001600160a01b031685848151811061322f5761322f614ab5565b60200260200101516040516132449190614c1f565b600060405180830381855af49150503d806000811461327f576040519150601f19603f3d011682016040523d82523d6000602084013e613284565b606091505b50915091506132ac82826040518060600160405280602781526020016152b36027913961386d565b8484815181106132be576132be614ab5565b6020026020010181905250505080806132d690614b27565b915050613207565b6132e9848484612841565b6132f584848484613c17565b6114a55760405162461bcd60e51b8152600401610b6090615162565b6000818152610137602052604090205460ff16156111ca5760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a20544f4b454e5f555047524144454400000000000000006044820152606401610b60565b61337b84846122ab565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952836040516133ab9190613f78565b60405180910390a280156114a5576114a5848484612701565b6060610133805461095590614a66565b6060816000036133fb5750506040805180820190915260018152600360fc1b602082015290565b8160005b8115613425578061340f81614b27565b915061341e9050600a83614f8e565b91506133ff565b6000816001600160401b0381111561343f5761343f6144d7565b6040519080825280601f01601f191660200182016040528015613469576020820181803683370190505b5090505b8415610cab5761347e600183614fb8565b915061348b600a866151b4565b613496906030614f39565b60f81b8183815181106134ab576134ab614ab5565b60200101906001600160f81b031916908160001a9053506134cd600a86614f8e565b945061346d565b6134dd816127d4565b610ea08585858585612612565b6001600160a01b03811660008181526101356020526040808220829055517ffcf5eec0cfa3e6332f5f0e63ec242d71f866a61d121d6cdf5c2eb3b668a26c4f9190a250565b600054610100900460ff166135565760405162461bcd60e51b8152600401610b60906151c8565b60656135628382615064565b506066610a138282615064565b600054610100900460ff166135965760405162461bcd60e51b8152600401610b60906151c8565b565b600054610100900460ff166135bf5760405162461bcd60e51b8152600401610b60906151c8565b6111ca81613d1c565b600054610100900460ff166135ef5760405162461bcd60e51b8152600401610b60906151c8565b6111ca81613d75565b60008181526101006020526040902054613613906001614f39565b6000918252610100602052604090912055565b600081815260696020526040902080546001600160a01b0319166001600160a01b038416908117909155819061365b82612d97565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60003033036136aa575060331936013560601c90565b503390565b6001600160a01b0382166136c6576136c681613311565b600081815261013960205260409020546001600160401b031615613761576001600160a01b0382161580159061371557506136ff612a4b565b6001600160a01b0316826001600160a01b031614155b6137615760405162461bcd60e51b815260206004820152601960248201527f52656769737472793a20544f4b454e5f455850495241424c45000000000000006044820152606401610b60565b6001600160a01b03831660009081526101356020526040902054819003610a1357610a13836134ea565b606061379682612e9f565b156137b05750604080516020810190915260008152610940565b60ca60006137bd84613952565b8152602001908152602001600020600084815260200190815260200160002080546137e790614a66565b80601f016020809104026020016040519081016040528092919081815260200182805461381390614a66565b80156138605780601f1061383557610100808354040283529160200191613860565b820191906000526020600020905b81548152906001019060200180831161384357829003601f168201915b5050505050905092915050565b6060831561387c575081610db7565b82511561388c5782518084602001fd5b8160405162461bcd60e51b8152600401610b609190613f78565b600081516000036138f15760405162461bcd60e51b815260206004820152601560248201527452656769737472793a204c4142454c5f454d50545960581b6044820152606401610b60565b82826040516020016139039190614c1f565b60405160208183030381529060405280519060200120604051602001613933929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b600081815260cb602052604081205415612b4857600082815260cb6020526040902054610940565b60ca600061398783613952565b8152602001908152602001600020600085815260200190815260200160002080546139b190614a66565b9050600003613a0957826040516139c89190614c1f565b6040518091039020817f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f8685604051613a009190613f78565b60405180910390a35b8160ca6000613a1784613952565b815260200190815260200160002060008681526020019081526020016000209081613a429190615064565b5081604051613a519190614c1f565b604051809103902083604051613a679190614c1f565b6040518091039020827f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d928686604051613aa19291906146e2565b60405180910390a450505050565b600081815260c9602052604081208054829190613acb90614a66565b9050119050919050565b6000806000613ae48585613dc3565b90925090506000816004811115613afd57613afd615213565b148015613b1b5750856001600160a01b0316826001600160a01b0316145b15613b2b57600192505050610db7565b600080876001600160a01b0316631626ba7e60e01b8888604051602401613b53929190615229565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051613b919190614c1f565b600060405180830381855afa9150503d8060008114613bcc576040519150601f19603f3d011682016040523d82523d6000602084013e613bd1565b606091505b5091509150818015613be4575080516020145b8015613c0b57508051630b135d3f60e11b90613c09908301602090810190840161501e565b145b98975050505050505050565b60006001600160a01b0384163b15613d1457836001600160a01b031663150b7a02613c4061229c565b8786866040518563ffffffff1660e01b8152600401613c629493929190615242565b6020604051808303816000875af1925050508015613c9d575060408051601f3d908101601f19168201909252613c9a91810190615275565b60015b613cfa573d808015613ccb576040519150601f19603f3d011682016040523d82523d6000602084013e613cd0565b606091505b508051600003613cf25760405162461bcd60e51b8152600401610b6090615162565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610cab565b506001610cab565b600054610100900460ff16613d435760405162461bcd60e51b8152600401610b60906151c8565b806000805160206152938339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b600054610100900460ff16613d9c5760405162461bcd60e51b8152600401610b60906151c8565b807f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87613d54565b6000808251604103613df95760208301516040840151606085015160001a613ded87828585613e08565b94509450505050613e01565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613e3f5750600090506003613eec565b8460ff16601b14158015613e5757508460ff16601c14155b15613e685750600090506004613eec565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613ebc573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613ee557600060019250925050613eec565b9150600090505b94509492505050565b6001600160e01b0319811681146111ca57600080fd5b600060208284031215613f1d57600080fd5b8135610db781613ef5565b60005b83811015613f43578181015183820152602001613f2b565b50506000910152565b60008151808452613f64816020860160208601613f28565b601f01601f19169290920160200192915050565b602081526000610db76020830184613f4c565b600060208284031215613f9d57600080fd5b5035919050565b6001600160a01b03811681146111ca57600080fd5b60008060408385031215613fcc57600080fd5b8235613fd781613fa4565b946020939093013593505050565b60008083601f840112613ff757600080fd5b5081356001600160401b0381111561400e57600080fd5b602083019150836020828501011115613e0157600080fd5b60008060008060006080868803121561403e57600080fd5b853561404981613fa4565b9450602086013561405981613fa4565b93506040860135925060608601356001600160401b0381111561407b57600080fd5b61408788828901613fe5565b969995985093965092949392505050565b60008083601f8401126140aa57600080fd5b5081356001600160401b038111156140c157600080fd5b6020830191508360208260051b8501011115613e0157600080fd5b6000806000604084860312156140f157600080fd5b83356001600160401b0381111561410757600080fd5b61411386828701614098565b909790965060209590950135949350505050565b600082825180855260208086019550808260051b84010181860160005b8481101561417257601f19868403018952614160838351613f4c565b98840198925090830190600101614144565b5090979650505050505050565b602081526000610db76020830184614127565b6000806000604084860312156141a757600080fd5b83356001600160401b038111156141bd57600080fd5b61411386828701613fe5565b6000806000604084860312156141de57600080fd5b83356001600160401b03808211156141f557600080fd5b908501906080828803121561420957600080fd5b9093506020850135908082111561421f57600080fd5b5061422c86828701613fe5565b9497909650939450505050565b8035801515811461124557600080fd5b60008060008060008060008060a0898b03121561426557600080fd5b883561427081613fa4565b975060208901356001600160401b038082111561428c57600080fd5b6142988c838d01614098565b909950975060408b01359150808211156142b157600080fd5b6142bd8c838d01614098565b909750955060608b01359150808211156142d657600080fd5b506142e38b828c01614098565b90945092506142f6905060808a01614239565b90509295985092959890939650565b60008060006060848603121561431a57600080fd5b833561432581613fa4565b9250602084013561433581613fa4565b929592945050506040919091013590565b6000806020838503121561435957600080fd5b82356001600160401b0381111561436f57600080fd5b61437b85828601614098565b90969095509350505050565b60008060008060006060868803121561439f57600080fd5b85356001600160401b03808211156143b657600080fd5b6143c289838a01614098565b909750955060208801359150808211156143db57600080fd5b506143e888828901614098565b96999598509660400135949350505050565b6000806040838503121561440d57600080fd5b82356001600160401b0381168114613fd757600080fd5b60008060008060006060868803121561443c57600080fd5b85356001600160401b038082111561445357600080fd5b61445f89838a01613fe5565b9097509550602088013591508082111561447857600080fd5b506143e888828901613fe5565b6000806000806060858703121561449b57600080fd5b8435935060208501356001600160401b038111156144b857600080fd5b6144c487828801613fe5565b9598909750949560400135949350505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715614515576145156144d7565b604052919050565b600082601f83011261452e57600080fd5b81356001600160401b03811115614547576145476144d7565b61455a601f8201601f19166020016144ed565b81815284602083860101111561456f57600080fd5b816020850160208301376000918101602001919091529392505050565b60006020828403121561459e57600080fd5b81356001600160401b038111156145b457600080fd5b610cab8482850161451d565b6000602082840312156145d257600080fd5b8135610db781613fa4565b60006001600160401b038211156145f6576145f66144d7565b5060051b60200190565b600061461361460e846145dd565b6144ed565b8381529050602080820190600585901b84018681111561463257600080fd5b845b8181101561466d5780356001600160401b038111156146535760008081fd5b61465f8982890161451d565b855250928201928201614634565b505050509392505050565b60006020828403121561468a57600080fd5b81356001600160401b038111156146a057600080fd5b8201601f810184136146b157600080fd5b610cab84823560208401614600565b600080604083850312156146d357600080fd5b50508035926020909101359150565b6040815260006146f56040830185613f4c565b8281036020840152610db38185613f4c565b6000806000806060858703121561471d57600080fd5b843561472881613fa4565b93506020850135925060408501356001600160401b0381111561474a57600080fd5b61475687828801613fe5565b95989497509550505050565b60008060008060008060006080888a03121561477d57600080fd5b87356001600160401b038082111561479457600080fd5b6147a08b838c01613fe5565b909950975060208a0135965060408a01359150808211156147c057600080fd5b6147cc8b838c01614098565b909650945060608a01359150808211156147e557600080fd5b506147f28a828b01614098565b989b979a50959850939692959293505050565b6000806020838503121561481857600080fd5b82356001600160401b0381111561482e57600080fd5b61437b85828601613fe5565b6000806040838503121561484d57600080fd5b823561485881613fa4565b9150612e9660208401614239565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156148bb57603f198886030184526148a9858351613f4c565b9450928501929085019060010161488d565b5092979650505050505050565b6040815260006148db6040830185614127565b8281036020840152610db38185614127565b6000806000806080858703121561490357600080fd5b843561490e81613fa4565b9350602085013561491e81613fa4565b92506040850135915060608501356001600160401b0381111561494057600080fd5b61494c8782880161451d565b91505092959194509250565b60008060006040848603121561496d57600080fd5b833561497881613fa4565b925060208401356001600160401b0381111561499357600080fd5b61422c86828701613fe5565b600080604083850312156149b257600080fd5b82356149bd81613fa4565b915060208301356149cd81613fa4565b809150509250929050565b6000806000604084860312156149ed57600080fd5b8335925060208401356001600160401b0381111561499357600080fd5b60008060008060808587031215614a2057600080fd5b8435614a2b81613fa4565b93506020850135614a3b81613fa4565b92506040850135614a4b81613fa4565b91506060850135614a5b81613fa4565b939692955090935050565b600181811c90821680614a7a57607f821691505b6020821081036113ff57634e487b7160e01b600052602260045260246000fd5b600060208284031215614aac57600080fd5b610db782614239565b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112614ae257600080fd5b8301803591506001600160401b03821115614afc57600080fd5b602001915036819003821315613e0157600080fd5b634e487b7160e01b600052601160045260246000fd5b600060018201614b3957614b39614b11565b5060010190565b60208082526027908201527f52656769737472793a2053454e4445525f49535f4e4f545f4d494e54494e475f60408201526626a0a720a3a2a960c91b606082015260800190565b6000610db7368484614600565b60208082526029908201527f52656769737472793a2053454e4445525f49535f4e4f545f415050524f5645446040820152682fa7a92fa7aba722a960b91b606082015260800190565b60208082526022908201527f52656769737472793a20494e53554646494349454e545f5045524d495353494f6040820152614e5360f01b606082015260800190565b60008251614c31818460208701613f28565b9190910192915050565b601f821115610a1357600081815260208120601f850160051c81016020861015614c625750805b601f850160051c820191505b8181101561117057828155600101614c6e565b6001600160401b03831115614c9857614c986144d7565b614cac83614ca68354614a66565b83614c3b565b6000601f841160018114614ce05760008515614cc85750838201355b600019600387901b1c1916600186901b178355610ea0565b600083815260209020601f19861690835b82811015614d115786850135825560209485019460019092019101614cf1565b5086821015614d2e5760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b602081526000610cab602083018486614d40565b600060808236031215614d8f57600080fd5b604051608081016001600160401b038282108183111715614db257614db26144d7565b8160405284359150614dc382613fa4565b81835260208501356020840152604085013560408401526060850135915080821115614dee57600080fd5b50614dfb3682860161451d565b60608301525092915050565b6000614e1561460e846145dd565b80848252602080830192508560051b850136811115614e3357600080fd5b855b81811015614e6e5780356001600160401b03811115614e545760008081fd5b614e6036828a0161451d565b865250938201938201614e35565b50919695505050505050565b60008351614e8c818460208801613f28565b835190830190614ea0818360208801613f28565b01949350505050565b60006020808385031215614ebc57600080fd5b82356001600160401b03811115614ed257600080fd5b8301601f81018513614ee357600080fd5b8035614ef161460e826145dd565b81815260059190911b82018301908381019087831115614f1057600080fd5b928401925b82841015614f2e57833582529284019290840190614f15565b979650505050505050565b8082018082111561094057610940614b11565b6001600160a01b03848116825283166020820152606060408201819052600090610b6990830184613f4c565b634e487b7160e01b600052601260045260246000fd5b600082614f9d57614f9d614f78565b500490565b634e487b7160e01b600052600160045260246000fd5b8181038181111561094057610940614b11565b600081614fda57614fda614b11565b506000190190565b60008351614ff4818460208801613f28565b601760f91b9083019081528351615012816001840160208801613f28565b01600101949350505050565b60006020828403121561503057600080fd5b5051919050565b60006020828403121561504957600080fd5b8151610db781613fa4565b8183823760009101908152919050565b81516001600160401b0381111561507d5761507d6144d7565b6150918161508b8454614a66565b84614c3b565b602080601f8311600181146150c657600084156150ae5750858301515b600019600386901b1c1916600185901b178555611170565b600085815260208120601f198616915b828110156150f5578886015182559484019460019091019084016150d6565b50858210156151135787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60008451615135818460208901613f28565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6000826151c3576151c3614f78565b500690565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b634e487b7160e01b600052602160045260246000fd5b828152604060208201526000610cab6040830184613f4c565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061316590830184613f4c565b60006020828403121561528757600080fd5b8151610db781613ef556febe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a"; +const isSuperArgs = (xs) => xs.length > 1; +class UNSRegistry__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(overrides) { + return super.getDeployTransaction(overrides || {}); + } + deploy(overrides) { + return super.deploy(overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.UNSRegistry__factory = UNSRegistry__factory; +UNSRegistry__factory.bytecode = _bytecode; +UNSRegistry__factory.abi = _abi; diff --git a/dist/types/factories/contracts/cns/ICNSRegistry__factory.d.ts b/dist/types/factories/contracts/cns/ICNSRegistry__factory.d.ts new file mode 100644 index 00000000..c4cefeeb --- /dev/null +++ b/dist/types/factories/contracts/cns/ICNSRegistry__factory.d.ts @@ -0,0 +1,322 @@ +import { type ContractRunner } from "ethers"; +import type { ICNSRegistry, ICNSRegistryInterface } from "../../../contracts/cns/ICNSRegistry"; +export declare class ICNSRegistry__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "approved"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Approval"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "ApprovalForAll"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Transfer"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "approve"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "balanceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "balance"; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "burn"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }]; + readonly name: "childIdOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getApproved"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly name: "isApprovedForAll"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "spender"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "isApprovedOrOwner"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "name"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "ownerOf"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "resolverOf"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly internalType: "bool"; + readonly name: "_approved"; + readonly type: "bool"; + }]; + readonly name: "setApprovalForAll"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "symbol"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "tokenURI"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "transferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): ICNSRegistryInterface; + static connect(address: string, runner?: ContractRunner | null): ICNSRegistry; +} +//# sourceMappingURL=ICNSRegistry__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/cns/ICNSRegistry__factory.d.ts.map b/dist/types/factories/contracts/cns/ICNSRegistry__factory.d.ts.map new file mode 100644 index 00000000..af174248 --- /dev/null +++ b/dist/types/factories/contracts/cns/ICNSRegistry__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ICNSRegistry__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/cns/ICNSRegistry__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,YAAY,EACZ,qBAAqB,EACtB,MAAM,qCAAqC,CAAC;AA+Z7C,qBAAa,qBAAqB;IAChC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,qBAAqB;IAG/C,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,YAAY;CAGhB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/cns/ICNSRegistry__factory.js b/dist/types/factories/contracts/cns/ICNSRegistry__factory.js new file mode 100644 index 00000000..fd0436ab --- /dev/null +++ b/dist/types/factories/contracts/cns/ICNSRegistry__factory.js @@ -0,0 +1,426 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ICNSRegistry__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "approved", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Approval", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "ApprovalForAll", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Transfer", + type: "event", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "approve", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "balance", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "burn", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + ], + name: "childIdOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getApproved", + outputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + name: "isApprovedForAll", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "spender", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "isApprovedOrOwner", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "name", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "ownerOf", + outputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "resolverOf", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "bool", + name: "_approved", + type: "bool", + }, + ], + name: "setApprovalForAll", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "symbol", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "tokenURI", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "transferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +class ICNSRegistry__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.ICNSRegistry__factory = ICNSRegistry__factory; +ICNSRegistry__factory.abi = _abi; diff --git a/dist/types/factories/contracts/cns/IMintingController__factory.d.ts b/dist/types/factories/contracts/cns/IMintingController__factory.d.ts new file mode 100644 index 00000000..742ec42c --- /dev/null +++ b/dist/types/factories/contracts/cns/IMintingController__factory.d.ts @@ -0,0 +1,112 @@ +import { type ContractRunner } from "ethers"; +import type { IMintingController, IMintingControllerInterface } from "../../../contracts/cns/IMintingController"; +export declare class IMintingController__factory { + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }]; + readonly name: "mintSLD"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }, { + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }]; + readonly name: "mintSLDWithResolver"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }]; + readonly name: "safeMintSLD"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "safeMintSLD"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }, { + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "safeMintSLDWithResolver"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }, { + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }]; + readonly name: "safeMintSLDWithResolver"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): IMintingControllerInterface; + static connect(address: string, runner?: ContractRunner | null): IMintingController; +} +//# sourceMappingURL=IMintingController__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/cns/IMintingController__factory.d.ts.map b/dist/types/factories/contracts/cns/IMintingController__factory.d.ts.map new file mode 100644 index 00000000..bce23b9b --- /dev/null +++ b/dist/types/factories/contracts/cns/IMintingController__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IMintingController__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/cns/IMintingController__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,kBAAkB,EAClB,2BAA2B,EAC5B,MAAM,2CAA2C,CAAC;AA0InD,qBAAa,2BAA2B;IACtC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,2BAA2B;IAGrD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,kBAAkB;CAGtB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/cns/IMintingController__factory.js b/dist/types/factories/contracts/cns/IMintingController__factory.js new file mode 100644 index 00000000..f0d64b93 --- /dev/null +++ b/dist/types/factories/contracts/cns/IMintingController__factory.js @@ -0,0 +1,149 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IMintingController__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + ], + name: "mintSLD", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + { + internalType: "address", + name: "resolver", + type: "address", + }, + ], + name: "mintSLDWithResolver", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + ], + name: "safeMintSLD", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "safeMintSLD", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + { + internalType: "address", + name: "resolver", + type: "address", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "safeMintSLDWithResolver", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + { + internalType: "address", + name: "resolver", + type: "address", + }, + ], + name: "safeMintSLDWithResolver", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +class IMintingController__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IMintingController__factory = IMintingController__factory; +IMintingController__factory.abi = _abi; diff --git a/dist/types/factories/contracts/cns/IResolver__factory.d.ts b/dist/types/factories/contracts/cns/IResolver__factory.d.ts new file mode 100644 index 00000000..1851ccf8 --- /dev/null +++ b/dist/types/factories/contracts/cns/IResolver__factory.d.ts @@ -0,0 +1,124 @@ +import { type ContractRunner } from "ethers"; +import type { IResolver, IResolverInterface } from "../../../contracts/cns/IResolver"; +export declare class IResolver__factory { + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "get"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "keyHash"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getByHash"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }, { + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getMany"; + readonly outputs: readonly [{ + readonly internalType: "string[]"; + readonly name: ""; + readonly type: "string[]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256[]"; + readonly name: "keyHashes"; + readonly type: "uint256[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getManyByHash"; + readonly outputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "preconfigure"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }, { + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "set"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): IResolverInterface; + static connect(address: string, runner?: ContractRunner | null): IResolver; +} +//# sourceMappingURL=IResolver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/cns/IResolver__factory.d.ts.map b/dist/types/factories/contracts/cns/IResolver__factory.d.ts.map new file mode 100644 index 00000000..0d47bc17 --- /dev/null +++ b/dist/types/factories/contracts/cns/IResolver__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IResolver__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/cns/IResolver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,SAAS,EACT,kBAAkB,EACnB,MAAM,kCAAkC,CAAC;AA6J1C,qBAAa,kBAAkB;IAC7B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,kBAAkB;IAG5C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,SAAS;CAG3E"} \ No newline at end of file diff --git a/dist/types/factories/contracts/cns/IResolver__factory.js b/dist/types/factories/contracts/cns/IResolver__factory.js new file mode 100644 index 00000000..13499831 --- /dev/null +++ b/dist/types/factories/contracts/cns/IResolver__factory.js @@ -0,0 +1,168 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IResolver__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "string", + name: "key", + type: "string", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "get", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "keyHash", + type: "uint256", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getByHash", + outputs: [ + { + internalType: "string", + name: "key", + type: "string", + }, + { + internalType: "string", + name: "value", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getMany", + outputs: [ + { + internalType: "string[]", + name: "", + type: "string[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256[]", + name: "keyHashes", + type: "uint256[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getManyByHash", + outputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "preconfigure", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "key", + type: "string", + }, + { + internalType: "string", + name: "value", + type: "string", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "set", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +class IResolver__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IResolver__factory = IResolver__factory; +IResolver__factory.abi = _abi; diff --git a/dist/types/factories/contracts/cns/IURIPrefixController__factory.d.ts b/dist/types/factories/contracts/cns/IURIPrefixController__factory.d.ts new file mode 100644 index 00000000..bd5cdcbd --- /dev/null +++ b/dist/types/factories/contracts/cns/IURIPrefixController__factory.d.ts @@ -0,0 +1,18 @@ +import { type ContractRunner } from "ethers"; +import type { IURIPrefixController, IURIPrefixControllerInterface } from "../../../contracts/cns/IURIPrefixController"; +export declare class IURIPrefixController__factory { + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "prefix"; + readonly type: "string"; + }]; + readonly name: "setTokenURIPrefix"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): IURIPrefixControllerInterface; + static connect(address: string, runner?: ContractRunner | null): IURIPrefixController; +} +//# sourceMappingURL=IURIPrefixController__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/cns/IURIPrefixController__factory.d.ts.map b/dist/types/factories/contracts/cns/IURIPrefixController__factory.d.ts.map new file mode 100644 index 00000000..9f2e65fd --- /dev/null +++ b/dist/types/factories/contracts/cns/IURIPrefixController__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IURIPrefixController__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/cns/IURIPrefixController__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,oBAAoB,EACpB,6BAA6B,EAC9B,MAAM,6CAA6C,CAAC;AAkBrD,qBAAa,6BAA6B;IACxC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,6BAA6B;IAGvD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,oBAAoB;CAOxB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/cns/IURIPrefixController__factory.js b/dist/types/factories/contracts/cns/IURIPrefixController__factory.js new file mode 100644 index 00000000..44bb078c --- /dev/null +++ b/dist/types/factories/contracts/cns/IURIPrefixController__factory.js @@ -0,0 +1,29 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IURIPrefixController__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "string", + name: "prefix", + type: "string", + }, + ], + name: "setTokenURIPrefix", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +class IURIPrefixController__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IURIPrefixController__factory = IURIPrefixController__factory; +IURIPrefixController__factory.abi = _abi; diff --git a/dist/types/factories/contracts/cns/index.d.ts b/dist/types/factories/contracts/cns/index.d.ts new file mode 100644 index 00000000..6726d450 --- /dev/null +++ b/dist/types/factories/contracts/cns/index.d.ts @@ -0,0 +1,5 @@ +export { ICNSRegistry__factory } from "./ICNSRegistry__factory"; +export { IMintingController__factory } from "./IMintingController__factory"; +export { IResolver__factory } from "./IResolver__factory"; +export { IURIPrefixController__factory } from "./IURIPrefixController__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/cns/index.d.ts.map b/dist/types/factories/contracts/cns/index.d.ts.map new file mode 100644 index 00000000..b1225862 --- /dev/null +++ b/dist/types/factories/contracts/cns/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/cns/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/contracts/cns/index.js b/dist/types/factories/contracts/cns/index.js new file mode 100644 index 00000000..bad38ddd --- /dev/null +++ b/dist/types/factories/contracts/cns/index.js @@ -0,0 +1,11 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IURIPrefixController__factory = exports.IResolver__factory = exports.IMintingController__factory = exports.ICNSRegistry__factory = void 0; +var ICNSRegistry__factory_1 = require("./ICNSRegistry__factory"); +Object.defineProperty(exports, "ICNSRegistry__factory", { enumerable: true, get: function () { return ICNSRegistry__factory_1.ICNSRegistry__factory; } }); +var IMintingController__factory_1 = require("./IMintingController__factory"); +Object.defineProperty(exports, "IMintingController__factory", { enumerable: true, get: function () { return IMintingController__factory_1.IMintingController__factory; } }); +var IResolver__factory_1 = require("./IResolver__factory"); +Object.defineProperty(exports, "IResolver__factory", { enumerable: true, get: function () { return IResolver__factory_1.IResolver__factory; } }); +var IURIPrefixController__factory_1 = require("./IURIPrefixController__factory"); +Object.defineProperty(exports, "IURIPrefixController__factory", { enumerable: true, get: function () { return IURIPrefixController__factory_1.IURIPrefixController__factory; } }); diff --git a/dist/types/factories/contracts/custody/ENSCustody__factory.d.ts b/dist/types/factories/contracts/custody/ENSCustody__factory.d.ts new file mode 100644 index 00000000..6db8192d --- /dev/null +++ b/dist/types/factories/contracts/custody/ENSCustody__factory.d.ts @@ -0,0 +1,790 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../common"; +import type { ENSCustody, ENSCustodyInterface } from "../../../contracts/custody/ENSCustody"; +declare type ENSCustodyConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class ENSCustody__factory extends ContractFactory { + constructor(...args: ENSCustodyConstructorParams); + getDeployTransaction(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): ENSCustody__factory; + static readonly bytecode = "0x60806040523480156200001157600080fd5b506200001c62000022565b620000e4565b600054610100900460ff16156200008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff9081161015620000e2576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b61344180620000f46000396000f3fe60806040526004361061021e5760003560e01c80638da5cb5b11610123578063acf1a841116100ab578063d547741f1161006f578063d547741f14610682578063f14fcbc8146106a2578063f23a6e61146106c2578063f2fde38b146106e2578063ffa1ad741461070257600080fd5b8063acf1a841146105e0578063bc197c8114610600578063c0c53b8b14610620578063cf01585314610640578063d53913931461066057600080fd5b8063a0e3aef1116100f2578063a0e3aef114610534578063a217fddf14610554578063a3f4df7e14610569578063a4247400146105a0578063aa271e1a146105c057600080fd5b80638da5cb5b146104c157806391d14854146104df578063983b2d56146104ff578063986502751461051f57600080fd5b80635fc1964f116101a65780636ccbae5f116101755780636ccbae5f14610439578063715018a61461045957806371e2a6571461046e57806381c81d351461048e57806383e7f6ff146104a157600080fd5b80635fc1964f146103ae578063634486da146103ce5780636352211e146103e15780636a8be89e1461041957600080fd5b80632f2ff15d116101ed5780632f2ff15d146103035780633092afd51461032557806336568abe14610345578063423f6cef14610365578063572b6c051461038557600080fd5b806301ffc9a71461022a578063150b7a021461025f5780631bf7e13e14610298578063248a9ca3146102c557600080fd5b3661022557005b600080fd5b34801561023657600080fd5b5061024a6102453660046125f2565b610733565b60405190151581526020015b60405180910390f35b34801561026b57600080fd5b5061027f61027a366004612672565b610779565b6040516001600160e01b03199091168152602001610256565b3480156102a457600080fd5b506102b86102b33660046126e4565b6108cb565b60405161025691906127a4565b3480156102d157600080fd5b506102f56102e03660046127b7565b600090815260fb602052604090206001015490565b604051908152602001610256565b34801561030f57600080fd5b5061032361031e3660046127d0565b610997565b005b34801561033157600080fd5b50610323610340366004612800565b6109c1565b34801561035157600080fd5b506103236103603660046127d0565b6109d5565b34801561037157600080fd5b5061032361038036600461281d565b610a68565b34801561039157600080fd5b5061024a6103a0366004612800565b6001600160a01b0316301490565b3480156103ba57600080fd5b506103236103c936600461288f565b610bd9565b6103236103dc366004612800565b610c21565b3480156103ed57600080fd5b506104016103fc3660046127b7565b610ce4565b6040516001600160a01b039091168152602001610256565b34801561042557600080fd5b50610323610434366004612800565b610cef565b34801561044557600080fd5b506102f56104543660046127b7565b610d38565b34801561046557600080fd5b50610323610d7e565b34801561047a57600080fd5b5061032361048936600461288f565b610d92565b61032361049c366004612800565b610dda565b3480156104ad57600080fd5b506102f56104bc366004612934565b610e57565b3480156104cd57600080fd5b506097546001600160a01b0316610401565b3480156104eb57600080fd5b5061024a6104fa3660046127d0565b610efa565b34801561050b57600080fd5b5061032361051a366004612800565b610f25565b34801561052b57600080fd5b50610323610f36565b34801561054057600080fd5b506102f561054f366004612a5c565b610f50565b34801561056057600080fd5b506102f5600081565b34801561057557600080fd5b506102b86040518060400160405280600b81526020016a454e5320437573746f647960a81b81525081565b3480156105ac57600080fd5b5061024a6105bb3660046126e4565b610ffc565b3480156105cc57600080fd5b5061024a6105db366004612800565b61104f565b3480156105ec57600080fd5b506103236105fb366004612934565b611069565b34801561060c57600080fd5b5061027f61061b366004612b35565b611222565b34801561062c57600080fd5b5061032361063b366004612bf3565b6112db565b34801561064c57600080fd5b5061032361065b366004612c3e565b611485565b34801561066c57600080fd5b506102f56000805160206133f583398151915281565b34801561068e57600080fd5b5061032361069d3660046127d0565b611592565b3480156106ae57600080fd5b506103236106bd3660046127b7565b6115b7565b3480156106ce57600080fd5b5061027f6106dd366004612d20565b61162b565b3480156106ee57600080fd5b506103236106fd366004612800565b6116bc565b34801561070e57600080fd5b506102b860405180604001604052806005815260200164302e312e3360d81b81525081565b60006001600160e01b03198216630a85bd0160e11b148061076457506001600160e01b03198216630271189760e51b145b806107735750610773826116d8565b92915050565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004546000906001600160a01b0316806107b061170d565b6001600160a01b0316036108a957600080806107ce86880188612d9b565b9250925092506107dd8361171c565b6001600160a01b03841663b88d4fde30600080516020613415833981519152546040516001600160a01b03909116908c9061082390879030906000908b90602001612dfc565b6040516020818303038152906040526040518563ffffffff1660e01b81526004016108519493929190612e3c565b600060405180830381600087803b15801561086b57600080fd5b505af115801561087f573d6000803e3d6000fd5b5050505061089561088f8261174e565b846117d3565b50630a85bd0160e11b93506108c292505050565b6040516344e7d94960e01b815260040160405180910390fd5b95945050505050565b606060005a90506108dd858585610ffc565b6108fa57604051638baa579f60e01b815260040160405180910390fd5b61098c61090a6020870187612800565b3060408801358461091e60608b018b612e6f565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061185e92505050565b9150505b9392505050565b600082815260fb60205260409020600101546109b28161193f565b6109bc8383611950565b505050565b6109c96119d7565b6109d281611a50565b50565b6109dd61170d565b6001600160a01b0316816001600160a01b031614610a5a5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b610a648282611a68565b5050565b80610a7161170d565b6001600160a01b0316610a8382611aed565b6001600160a01b031614610ac55780610a9a61170d565b604051637ea58b1160e01b815260048101929092526001600160a01b03166024820152604401610a51565b610ace82611c03565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052600090610b22906060015b6040516020818303038152906040528051906020012090565b80546001600160a01b0319166001600160a01b0392909216919091179055600060008051602061341583398151915254604051637921219560e11b81523060048201526001600160a01b038681166024830152604482018690526001606483015260a06084830152600060a48301529091169150819063f242432a9060c401600060405180830381600087803b158015610bbb57600080fd5b505af1158015610bcf573d6000803e3d6000fd5b5050505050505050565b610be16119d7565b60005b8151811015610a6457610c0f828281518110610c0257610c02612eb5565b6020026020010151611a50565b80610c1981612ee1565b915050610be4565b610c2c6105db61170d565b610c485760405162461bcd60e51b8152600401610a5190612efa565b6001600160a01b038116610c9e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a51565b610ca781611c1c565b610caf610f36565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610a64573d6000803e3d6000fd5b600061077382611aed565b610cf76119d7565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c500480546001600160a01b0319166001600160a01b0392909216919091179055565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a838156020820152908101829052600090610d7790606001610b09565b5492915050565b610d866119d7565b610d906000611c34565b565b610d9a6119d7565b60005b8151811015610a6457610dc8828281518110610dbb57610dbb612eb5565b6020026020010151611c1c565b80610dd281612ee1565b915050610d9d565b610de56105db61170d565b610e015760405162461bcd60e51b8152600401610a5190612efa565b6001600160a01b038116610ca75760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a51565b6000805160206133d5833981519152546040516383e7f6ff60e01b81526000916001600160a01b031690829082906383e7f6ff90610e9d90899089908990600401612f58565b6040805180830381865afa158015610eb9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610edd9190612f7c565b60208101518151919250610ef091612fca565b9695505050505050565b600091825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610f2d6119d7565b6109d281611c1c565b610d906000805160206133f583398151915261036061170d565b6000805160206133d5833981519152546000906001600160a01b0316806365a69dcf8d85610f7e5730610f80565b8d5b8d8d8d8d8d8d8d6040518a63ffffffff1660e01b8152600401610fab9998979695949392919061306e565b602060405180830381865afa158015610fc8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fec91906130de565b9c9b505050505050505050505050565b600061104761100a856130f7565b3085858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611c8692505050565b949350505050565b60006107736000805160206133f583398151915283610efa565b6110746105db61170d565b6110905760405162461bcd60e51b8152600401610a5190612efa565b6002603354036110e25760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a51565b60026033556000805160206133d5833981519152546040516383e7f6ff60e01b81526001600160a01b039091169060009082906383e7f6ff9061112d90889088908890600401612f58565b6040805180830381865afa158015611149573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061116d9190612f7c565b6020810151815191925061118091612fca565b4710156111a05760405163050205f960e01b815260040160405180910390fd5b816001600160a01b031663acf1a841826020015183600001516111c39190612fca565b8787876040518563ffffffff1660e01b81526004016111e493929190612f58565b6000604051808303818588803b1580156111fd57600080fd5b505af1158015611211573d6000803e3d6000fd5b505060016033555050505050505050565b6000600080516020613415833981519152546001600160a01b031661124561170d565b6001600160a01b03161461126c576040516344e7d94960e01b815260040160405180910390fd5b600061127a83850185612800565b90506112858161171c565b60005b878110156112c4576112b28989838181106112a5576112a5612eb5565b90506020020135836117d3565b806112bc81612ee1565b915050611288565b5063bc197c8160e01b9a9950505050505050505050565b600054610100900460ff16158080156112fb5750600054600160ff909116105b806113155750303b158015611315575060005460ff166001145b6113785760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610a51565b6000805460ff19166001179055801561139b576000805461ff0019166101001790555b6000805160206133d583398151915280546001600160a01b038087166001600160a01b03199283161790925560008051602061341583398151915280548684169083161790557ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004805492851692909116919091179055611419611dc5565b611421611df3565b611429611df3565b611431611e1a565b611439611e51565b801561147f576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6114906105db61170d565b6114ac5760405162461bcd60e51b8152600401610a5190612efa565b6002603354036114fe5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a51565b600260338190555060006115478c8c8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061174e92505050565b905061155281611c03565b6115708c8c846115625730611564565b8c5b8c8c8c8c8c8c8c611e8a565b8161157f5761157f818b6117d3565b5050600160335550505050505050505050565b600082815260fb60205260409020600101546115ad8161193f565b6109bc8383611a68565b60006000805160206133d583398151915254604051631e29f97960e31b8152600481018490526001600160a01b039091169150819063f14fcbc890602401600060405180830381600087803b15801561160f57600080fd5b505af1158015611623573d6000803e3d6000fd5b505050505050565b6000600080516020613415833981519152546001600160a01b031661164e61170d565b6001600160a01b031614611675576040516344e7d94960e01b815260040160405180910390fd5b6001600160a01b038616156116a957600061169283850185612800565b905061169d8161171c565b6116a786826117d3565b505b5063f23a6e6160e01b9695505050505050565b6116c46119d7565b6116cd81611fd5565b6109d260008261204b565b60006001600160e01b03198216637965db0b60e01b148061077357506301ffc9a760e01b6001600160e01b0319831614610773565b6000611717612055565b905090565b6001600160a01b0381166109d25760405163b20f76e360e01b81526001600160a01b0382166004820152602401610a51565b60007f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae60001b826040516020016117859190613195565b604051602081830303815290604052805190602001206040516020016117b5929190918252602082015260400190565b60408051601f19818403018152919052805160209091012092915050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052819061181190606001610b09565b80546001600160a01b0319166001600160a01b039283161790556040519082169083907f45aa97e368889fb3527c1db60c59c2ae91e82f21778613449e46d4208c1c4b1290600090a35050565b606061186985612073565b600080876001600160a01b0316866118838b8a89896120d9565b6040516118909190613195565b60006040518083038160008787f1925050503d80600081146118ce576040519150601f19603f3d011682016040523d82523d6000602084013e6118d3565b606091505b5090925090506118e4603f876131b1565b5a116118f2576118f26131d3565b61193282826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c4544000000000000815250612109565b9998505050505050505050565b6109d28161194b61170d565b612142565b61195a8282610efa565b610a6457600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff1916600117905561199361170d565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6119df61170d565b6001600160a01b03166119fa6097546001600160a01b031690565b6001600160a01b031614610d905760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a51565b6109d26000805160206133f583398151915282611592565b611a728282610efa565b15610a6457600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff19169055611aa961170d565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101829052600090611b2c90606001610b09565b546001600160a01b0316905080611b595760405163124bad6360e31b815260048101839052602401610a51565b30600080516020613415833981519152546040516331a9108f60e11b8152600481018590526001600160a01b0390911690636352211e90602401602060405180830381865afa158015611bb0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bd491906131e9565b6001600160a01b031614611bfe576040516303b673fd60e21b815260048101839052602401610a51565b919050565b303303611c13576109d2816121a6565b6109d281612073565b6109d26000805160206133f58339815191528261204b565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015611ccd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cf191906130de565b90506000611d9f866060015180519060200120868860200151604051602001611d3f9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b9050818660200151148015610ef057508551610ef0906001600160a01b031682866121d0565b600054610100900460ff16611dec5760405162461bcd60e51b8152600401610a5190613206565b6001603355565b600054610100900460ff16610d905760405162461bcd60e51b8152600401610a5190613206565b600054610100900460ff16611e415760405162461bcd60e51b8152600401610a5190613206565b610d90611e4c61170d565b611c34565b600054610100900460ff16611e785760405162461bcd60e51b8152600401610a5190613206565b610d906000611e8561170d565b61204b565b6000805160206133d5833981519152546040516383e7f6ff60e01b81526001600160a01b039091169060009082906383e7f6ff90611ed0908f908f908e90600401612f58565b6040805180830381865afa158015611eec573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f109190612f7c565b60208101518151919250611f2391612fca565b471015611f435760405163050205f960e01b815260040160405180910390fd5b816001600160a01b03166374694a2b82602001518360000151611f669190612fca565b8e8e8e8e8e8e8e8e8e8e6040518c63ffffffff1660e01b8152600401611f959a99989796959493929190613251565b6000604051808303818588803b158015611fae57600080fd5b505af1158015611fc2573d6000803e3d6000fd5b5050505050505050505050505050505050565b611fdd6119d7565b6001600160a01b0381166120425760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610a51565b6109d281611c34565b610a648282611950565b600030330361206b575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290526000906060016040516020818303038152906040528051906020012090506120c88190565b546120d4906001612fca565b905550565b60608285856040516020016120f0939291906132c3565b6040516020818303038152906040529050949350505050565b60608315612118575081610990565b8251156121285782518084602001fd5b8160405162461bcd60e51b8152600401610a5191906127a4565b61214c8282610efa565b610a6457612164816001600160a01b03166014612312565b61216f836020612312565b604051602001612180929190613302565b60408051601f198184030181529082905262461bcd60e51b8252610a51916004016127a4565b6121ae6124ad565b81146109d257604051635637b6af60e11b815260048101829052602401610a51565b60008060006121df85856124c0565b909250905060008160048111156121f8576121f8613377565b1480156122165750856001600160a01b0316826001600160a01b0316145b1561222657600192505050610990565b600080876001600160a01b0316631626ba7e60e01b888860405160240161224e92919061338d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161228c9190613195565b600060405180830381855afa9150503d80600081146122c7576040519150601f19603f3d011682016040523d82523d6000602084013e6122cc565b606091505b50915091508180156122df575080516020145b801561230657508051630b135d3f60e11b9061230490830160209081019084016130de565b145b98975050505050505050565b606060006123218360026133a6565b61232c906002612fca565b6001600160401b0381111561234357612343612849565b6040519080825280601f01601f19166020018201604052801561236d576020820181803683370190505b509050600360fc1b8160008151811061238857612388612eb5565b60200101906001600160f81b031916908160001a905350600f60fb1b816001815181106123b7576123b7612eb5565b60200101906001600160f81b031916908160001a90535060006123db8460026133a6565b6123e6906001612fca565b90505b600181111561245e576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061241a5761241a612eb5565b1a60f81b82828151811061243057612430612eb5565b60200101906001600160f81b031916908160001a90535060049490941c93612457816133bd565b90506123e9565b5083156109905760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610a51565b60003033036120705750601f1936013590565b60008082516041036124f65760208301516040840151606085015160001a6124ea87828585612505565b945094505050506124fe565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561253c57506000905060036125e9565b8460ff16601b1415801561255457508460ff16601c14155b1561256557506000905060046125e9565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156125b9573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166125e2576000600192509250506125e9565b9150600090505b94509492505050565b60006020828403121561260457600080fd5b81356001600160e01b03198116811461099057600080fd5b6001600160a01b03811681146109d257600080fd5b60008083601f84011261264357600080fd5b5081356001600160401b0381111561265a57600080fd5b6020830191508360208285010111156124fe57600080fd5b60008060008060006080868803121561268a57600080fd5b85356126958161261c565b945060208601356126a58161261c565b93506040860135925060608601356001600160401b038111156126c757600080fd5b6126d388828901612631565b969995985093965092949392505050565b6000806000604084860312156126f957600080fd5b83356001600160401b038082111561271057600080fd5b908501906080828803121561272457600080fd5b9093506020850135908082111561273a57600080fd5b5061274786828701612631565b9497909650939450505050565b60005b8381101561276f578181015183820152602001612757565b50506000910152565b60008151808452612790816020860160208601612754565b601f01601f19169290920160200192915050565b6020815260006109906020830184612778565b6000602082840312156127c957600080fd5b5035919050565b600080604083850312156127e357600080fd5b8235915060208301356127f58161261c565b809150509250929050565b60006020828403121561281257600080fd5b81356109908161261c565b6000806040838503121561283057600080fd5b823561283b8161261c565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561288757612887612849565b604052919050565b600060208083850312156128a257600080fd5b82356001600160401b03808211156128b957600080fd5b818501915085601f8301126128cd57600080fd5b8135818111156128df576128df612849565b8060051b91506128f084830161285f565b818152918301840191848101908884111561290a57600080fd5b938501935b8385101561230657843592506129248361261c565b828252938501939085019061290f565b60008060006040848603121561294957600080fd5b83356001600160401b0381111561295f57600080fd5b61296b86828701612631565b909790965060209590950135949350505050565b60006001600160401b0383111561299857612998612849565b6129ab601f8401601f191660200161285f565b90508281528383830111156129bf57600080fd5b828260208301376000602084830101529392505050565b600082601f8301126129e757600080fd5b6109908383356020850161297f565b60008083601f840112612a0857600080fd5b5081356001600160401b03811115612a1f57600080fd5b6020830191508360208260051b85010111156124fe57600080fd5b80358015158114611bfe57600080fd5b803561ffff81168114611bfe57600080fd5b6000806000806000806000806000806101208b8d031215612a7c57600080fd5b8a356001600160401b0380821115612a9357600080fd5b612a9f8e838f016129d6565b9b5060208d01359150612ab18261261c565b90995060408c0135985060608c0135975060808c013590612ad18261261c565b90965060a08c01359080821115612ae757600080fd5b50612af48d828e016129f6565b9096509450612b07905060c08c01612a3a565b9250612b1560e08c01612a4a565b9150612b246101008c01612a3a565b90509295989b9194979a5092959850565b60008060008060008060008060a0898b031215612b5157600080fd5b8835612b5c8161261c565b97506020890135612b6c8161261c565b965060408901356001600160401b0380821115612b8857600080fd5b612b948c838d016129f6565b909850965060608b0135915080821115612bad57600080fd5b612bb98c838d016129f6565b909650945060808b0135915080821115612bd257600080fd5b50612bdf8b828c01612631565b999c989b5096995094979396929594505050565b600080600060608486031215612c0857600080fd5b8335612c138161261c565b92506020840135612c238161261c565b91506040840135612c338161261c565b809150509250925092565b60008060008060008060008060008060006101208c8e031215612c6057600080fd5b6001600160401b03808d351115612c7657600080fd5b612c838e8e358f01612631565b909c509a50612c9560208e013561261c565b60208d0135995060408d0135985060608d01359750612cb760808e013561261c565b60808d013596508060a08e01351115612ccf57600080fd5b50612ce08d60a08e01358e016129f6565b9095509350612cf160c08d01612a3a565b9250612cff60e08d01612a4a565b9150612d0e6101008d01612a3a565b90509295989b509295989b9093969950565b60008060008060008060a08789031215612d3957600080fd5b8635612d448161261c565b95506020870135612d548161261c565b9450604087013593506060870135925060808701356001600160401b03811115612d7d57600080fd5b612d8989828a01612631565b979a9699509497509295939492505050565b600080600060608486031215612db057600080fd5b8335612dbb8161261c565b92506020840135612dcb8161261c565b915060408401356001600160401b03811115612de657600080fd5b612df2868287016129d6565b9150509250925092565b608081526000612e0f6080830187612778565b6001600160a01b03958616602084015261ffff949094166040830152509216606090920191909152919050565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090610ef090830184612778565b6000808335601e19843603018112612e8657600080fd5b8301803591506001600160401b03821115612ea057600080fd5b6020019150368190038213156124fe57600080fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201612ef357612ef3612ecb565b5060010190565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b604081526000612f6c604083018587612f2f565b9050826020830152949350505050565b600060408284031215612f8e57600080fd5b604051604081018181106001600160401b0382111715612fb057612fb0612849565b604052825181526020928301519281019290925250919050565b8082018082111561077357610773612ecb565b81835260006020808501808196508560051b810191508460005b878110156130615782840389528135601e1988360301811261301857600080fd5b870185810190356001600160401b0381111561303357600080fd5b80360382131561304257600080fd5b61304d868284612f2f565b9a87019a9550505090840190600101612ff7565b5091979650505050505050565b60006101008083526130828184018d612778565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a085015290506130bc818789612fdd565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b6000602082840312156130f057600080fd5b5051919050565b60006080823603121561310957600080fd5b604051608081016001600160401b03828210818311171561312c5761312c612849565b816040528435915061313d8261261c565b8183526020850135602084015260408501356040840152606085013591508082111561316857600080fd5b50830136601f82011261317a57600080fd5b6131893682356020840161297f565b60608301525092915050565b600082516131a7818460208701612754565b9190910192915050565b6000826131ce57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b6000602082840312156131fb57600080fd5b81516109908161261c565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60006101008083526132668184018d8f612f2f565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a085015290506132a0818789612fdd565b94151560c0840152505061ffff9190911660e09091015298975050505050505050565b600084516132d5818460208901612754565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081526000835161333a816017850160208801612754565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835161336b816028840160208801612754565b01602801949350505050565b634e487b7160e01b600052602160045260246000fd5b8281526040602082015260006110476040830184612778565b808202811582820484141761077357610773612ecb565b6000816133cc576133cc612ecb565b50600019019056fe412386de53449251cbf7ce1f4c6a038bf9c0746e62d331b08ef0c3fa7d0ab6729f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a660793a5062d506d35cc8f1beda67ee5028c16bfcd9c923d5bfc439c04bd929b1a164736f6c6343000811000a"; + static readonly abi: readonly [{ + readonly inputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "constructor"; + }, { + readonly inputs: readonly []; + readonly name: "CustodyNotEnoughBalance"; + readonly type: "error"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "InvalidForwardedToken"; + readonly type: "error"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }]; + readonly name: "InvalidOwner"; + readonly type: "error"; + }, { + readonly inputs: readonly []; + readonly name: "InvalidSignature"; + readonly type: "error"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "InvalidToken"; + readonly type: "error"; + }, { + readonly inputs: readonly []; + readonly name: "OperationProhibited"; + readonly type: "error"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }]; + readonly name: "Unauthorised"; + readonly type: "error"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "UnknownToken"; + readonly type: "error"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "uint8"; + readonly name: "version"; + readonly type: "uint8"; + }]; + readonly name: "Initialized"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "previousOwner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "newOwner"; + readonly type: "address"; + }]; + readonly name: "OwnershipTransferred"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "Parked"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "previousAdminRole"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "newAdminRole"; + readonly type: "bytes32"; + }]; + readonly name: "RoleAdminChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "sender"; + readonly type: "address"; + }]; + readonly name: "RoleGranted"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "sender"; + readonly type: "address"; + }]; + readonly name: "RoleRevoked"; + readonly type: "event"; + }, { + readonly inputs: readonly []; + readonly name: "DEFAULT_ADMIN_ROLE"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "MINTER_ROLE"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "NAME"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "VERSION"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "addMinter"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address[]"; + readonly name: "accounts"; + readonly type: "address[]"; + }]; + readonly name: "addMinters"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address payable"; + readonly name: "receiver"; + readonly type: "address"; + }]; + readonly name: "closeMinter"; + readonly outputs: readonly []; + readonly stateMutability: "payable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "commitment"; + readonly type: "bytes32"; + }]; + readonly name: "commit"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly components: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "nonce"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly internalType: "struct IForwarder.ForwardRequest"; + readonly name: "req"; + readonly type: "tuple"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "execute"; + readonly outputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }]; + readonly name: "getRoleAdmin"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "grantRole"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "hasRole"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "controller"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "wrapper"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "registrar"; + readonly type: "address"; + }]; + readonly name: "initialize"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "isMinter"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "forwarder"; + readonly type: "address"; + }]; + readonly name: "isTrustedForwarder"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "name"; + readonly type: "string"; + }, { + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "duration"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes32"; + readonly name: "secret"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }, { + readonly internalType: "bytes[]"; + readonly name: "data"; + readonly type: "bytes[]"; + }, { + readonly internalType: "bool"; + readonly name: "reverseRecord"; + readonly type: "bool"; + }, { + readonly internalType: "uint16"; + readonly name: "ownerControlledFuses"; + readonly type: "uint16"; + }, { + readonly internalType: "bool"; + readonly name: "selfCustody"; + readonly type: "bool"; + }]; + readonly name: "makeCommitment"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "nonceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }, { + readonly internalType: "uint256[]"; + readonly name: "tokenIds"; + readonly type: "uint256[]"; + }, { + readonly internalType: "uint256[]"; + readonly name: ""; + readonly type: "uint256[]"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "onERC1155BatchReceived"; + readonly outputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: ""; + readonly type: "bytes4"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "onERC1155Received"; + readonly outputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: ""; + readonly type: "bytes4"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "onERC721Received"; + readonly outputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: ""; + readonly type: "bytes4"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "owner"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "ownerOf"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "name"; + readonly type: "string"; + }, { + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "duration"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes32"; + readonly name: "secret"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }, { + readonly internalType: "bytes[]"; + readonly name: "data"; + readonly type: "bytes[]"; + }, { + readonly internalType: "bool"; + readonly name: "reverseRecord"; + readonly type: "bool"; + }, { + readonly internalType: "uint16"; + readonly name: "ownerControlledFuses"; + readonly type: "uint16"; + }, { + readonly internalType: "bool"; + readonly name: "selfCustody"; + readonly type: "bool"; + }]; + readonly name: "register"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "removeMinter"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address[]"; + readonly name: "accounts"; + readonly type: "address[]"; + }]; + readonly name: "removeMinters"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "name"; + readonly type: "string"; + }, { + readonly internalType: "uint256"; + readonly name: "duration"; + readonly type: "uint256"; + }]; + readonly name: "renew"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "renounceMinter"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "renounceOwnership"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "renounceRole"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "name"; + readonly type: "string"; + }, { + readonly internalType: "uint256"; + readonly name: "duration"; + readonly type: "uint256"; + }]; + readonly name: "rentPrice"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "revokeRole"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address payable"; + readonly name: "receiver"; + readonly type: "address"; + }]; + readonly name: "rotateMinter"; + readonly outputs: readonly []; + readonly stateMutability: "payable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "safeTransfer"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "baseRegistrar"; + readonly type: "address"; + }]; + readonly name: "setBaseRegistrar"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "newOwner"; + readonly type: "address"; + }]; + readonly name: "transferOwnership"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly components: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "nonce"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly internalType: "struct IForwarder.ForwardRequest"; + readonly name: "req"; + readonly type: "tuple"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "verify"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly stateMutability: "payable"; + readonly type: "receive"; + }]; + static createInterface(): ENSCustodyInterface; + static connect(address: string, runner?: ContractRunner | null): ENSCustody; +} +export {}; +//# sourceMappingURL=ENSCustody__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/custody/ENSCustody__factory.d.ts.map b/dist/types/factories/contracts/custody/ENSCustody__factory.d.ts.map new file mode 100644 index 00000000..f0644b3e --- /dev/null +++ b/dist/types/factories/contracts/custody/ENSCustody__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ENSCustody__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/custody/ENSCustody__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,KAAK,EACV,UAAU,EACV,mBAAmB,EACpB,MAAM,uCAAuC,CAAC;AA6+B/C,aAAK,2BAA2B,GAC5B,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,mBAAoB,SAAQ,eAAe;gBAC1C,GAAG,IAAI,EAAE,2BAA2B;IAQvC,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,mBAAmB;IAIpE,MAAM,CAAC,QAAQ,CAAC,QAAQ,kn1BAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,mBAAmB;IAG7C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,UAAU;CAG5E"} \ No newline at end of file diff --git a/dist/types/factories/contracts/custody/ENSCustody__factory.js b/dist/types/factories/contracts/custody/ENSCustody__factory.js new file mode 100644 index 00000000..6b75aa6a --- /dev/null +++ b/dist/types/factories/contracts/custody/ENSCustody__factory.js @@ -0,0 +1,1033 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ENSCustody__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [], + stateMutability: "nonpayable", + type: "constructor", + }, + { + inputs: [], + name: "CustodyNotEnoughBalance", + type: "error", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "InvalidForwardedToken", + type: "error", + }, + { + inputs: [ + { + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "InvalidOwner", + type: "error", + }, + { + inputs: [], + name: "InvalidSignature", + type: "error", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "InvalidToken", + type: "error", + }, + { + inputs: [], + name: "OperationProhibited", + type: "error", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "Unauthorised", + type: "error", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "UnknownToken", + type: "error", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint8", + name: "version", + type: "uint8", + }, + ], + name: "Initialized", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "previousOwner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnershipTransferred", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "Parked", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + indexed: true, + internalType: "bytes32", + name: "previousAdminRole", + type: "bytes32", + }, + { + indexed: true, + internalType: "bytes32", + name: "newAdminRole", + type: "bytes32", + }, + ], + name: "RoleAdminChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "RoleGranted", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "RoleRevoked", + type: "event", + }, + { + inputs: [], + name: "DEFAULT_ADMIN_ROLE", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "MINTER_ROLE", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "NAME", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "VERSION", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "addMinter", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address[]", + name: "accounts", + type: "address[]", + }, + ], + name: "addMinters", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address payable", + name: "receiver", + type: "address", + }, + ], + name: "closeMinter", + outputs: [], + stateMutability: "payable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "commitment", + type: "bytes32", + }, + ], + name: "commit", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + components: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "uint256", + name: "nonce", + type: "uint256", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + internalType: "struct IForwarder.ForwardRequest", + name: "req", + type: "tuple", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "execute", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + ], + name: "getRoleAdmin", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "grantRole", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "hasRole", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "controller", + type: "address", + }, + { + internalType: "address", + name: "wrapper", + type: "address", + }, + { + internalType: "address", + name: "registrar", + type: "address", + }, + ], + name: "initialize", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "isMinter", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "forwarder", + type: "address", + }, + ], + name: "isTrustedForwarder", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "name", + type: "string", + }, + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "uint256", + name: "duration", + type: "uint256", + }, + { + internalType: "bytes32", + name: "secret", + type: "bytes32", + }, + { + internalType: "address", + name: "resolver", + type: "address", + }, + { + internalType: "bytes[]", + name: "data", + type: "bytes[]", + }, + { + internalType: "bool", + name: "reverseRecord", + type: "bool", + }, + { + internalType: "uint16", + name: "ownerControlledFuses", + type: "uint16", + }, + { + internalType: "bool", + name: "selfCustody", + type: "bool", + }, + ], + name: "makeCommitment", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "nonceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + { + internalType: "address", + name: "", + type: "address", + }, + { + internalType: "uint256[]", + name: "tokenIds", + type: "uint256[]", + }, + { + internalType: "uint256[]", + name: "", + type: "uint256[]", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "onERC1155BatchReceived", + outputs: [ + { + internalType: "bytes4", + name: "", + type: "bytes4", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "uint256", + name: "", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "onERC1155Received", + outputs: [ + { + internalType: "bytes4", + name: "", + type: "bytes4", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + { + internalType: "address", + name: "", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "onERC721Received", + outputs: [ + { + internalType: "bytes4", + name: "", + type: "bytes4", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "ownerOf", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "name", + type: "string", + }, + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "uint256", + name: "duration", + type: "uint256", + }, + { + internalType: "bytes32", + name: "secret", + type: "bytes32", + }, + { + internalType: "address", + name: "resolver", + type: "address", + }, + { + internalType: "bytes[]", + name: "data", + type: "bytes[]", + }, + { + internalType: "bool", + name: "reverseRecord", + type: "bool", + }, + { + internalType: "uint16", + name: "ownerControlledFuses", + type: "uint16", + }, + { + internalType: "bool", + name: "selfCustody", + type: "bool", + }, + ], + name: "register", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "removeMinter", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address[]", + name: "accounts", + type: "address[]", + }, + ], + name: "removeMinters", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "name", + type: "string", + }, + { + internalType: "uint256", + name: "duration", + type: "uint256", + }, + ], + name: "renew", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "renounceMinter", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "renounceOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "renounceRole", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "name", + type: "string", + }, + { + internalType: "uint256", + name: "duration", + type: "uint256", + }, + ], + name: "rentPrice", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "revokeRole", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address payable", + name: "receiver", + type: "address", + }, + ], + name: "rotateMinter", + outputs: [], + stateMutability: "payable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "safeTransfer", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "baseRegistrar", + type: "address", + }, + ], + name: "setBaseRegistrar", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "transferOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + components: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "uint256", + name: "nonce", + type: "uint256", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + internalType: "struct IForwarder.ForwardRequest", + name: "req", + type: "tuple", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "verify", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + stateMutability: "payable", + type: "receive", + }, +]; +const _bytecode = "0x60806040523480156200001157600080fd5b506200001c62000022565b620000e4565b600054610100900460ff16156200008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff9081161015620000e2576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b61344180620000f46000396000f3fe60806040526004361061021e5760003560e01c80638da5cb5b11610123578063acf1a841116100ab578063d547741f1161006f578063d547741f14610682578063f14fcbc8146106a2578063f23a6e61146106c2578063f2fde38b146106e2578063ffa1ad741461070257600080fd5b8063acf1a841146105e0578063bc197c8114610600578063c0c53b8b14610620578063cf01585314610640578063d53913931461066057600080fd5b8063a0e3aef1116100f2578063a0e3aef114610534578063a217fddf14610554578063a3f4df7e14610569578063a4247400146105a0578063aa271e1a146105c057600080fd5b80638da5cb5b146104c157806391d14854146104df578063983b2d56146104ff578063986502751461051f57600080fd5b80635fc1964f116101a65780636ccbae5f116101755780636ccbae5f14610439578063715018a61461045957806371e2a6571461046e57806381c81d351461048e57806383e7f6ff146104a157600080fd5b80635fc1964f146103ae578063634486da146103ce5780636352211e146103e15780636a8be89e1461041957600080fd5b80632f2ff15d116101ed5780632f2ff15d146103035780633092afd51461032557806336568abe14610345578063423f6cef14610365578063572b6c051461038557600080fd5b806301ffc9a71461022a578063150b7a021461025f5780631bf7e13e14610298578063248a9ca3146102c557600080fd5b3661022557005b600080fd5b34801561023657600080fd5b5061024a6102453660046125f2565b610733565b60405190151581526020015b60405180910390f35b34801561026b57600080fd5b5061027f61027a366004612672565b610779565b6040516001600160e01b03199091168152602001610256565b3480156102a457600080fd5b506102b86102b33660046126e4565b6108cb565b60405161025691906127a4565b3480156102d157600080fd5b506102f56102e03660046127b7565b600090815260fb602052604090206001015490565b604051908152602001610256565b34801561030f57600080fd5b5061032361031e3660046127d0565b610997565b005b34801561033157600080fd5b50610323610340366004612800565b6109c1565b34801561035157600080fd5b506103236103603660046127d0565b6109d5565b34801561037157600080fd5b5061032361038036600461281d565b610a68565b34801561039157600080fd5b5061024a6103a0366004612800565b6001600160a01b0316301490565b3480156103ba57600080fd5b506103236103c936600461288f565b610bd9565b6103236103dc366004612800565b610c21565b3480156103ed57600080fd5b506104016103fc3660046127b7565b610ce4565b6040516001600160a01b039091168152602001610256565b34801561042557600080fd5b50610323610434366004612800565b610cef565b34801561044557600080fd5b506102f56104543660046127b7565b610d38565b34801561046557600080fd5b50610323610d7e565b34801561047a57600080fd5b5061032361048936600461288f565b610d92565b61032361049c366004612800565b610dda565b3480156104ad57600080fd5b506102f56104bc366004612934565b610e57565b3480156104cd57600080fd5b506097546001600160a01b0316610401565b3480156104eb57600080fd5b5061024a6104fa3660046127d0565b610efa565b34801561050b57600080fd5b5061032361051a366004612800565b610f25565b34801561052b57600080fd5b50610323610f36565b34801561054057600080fd5b506102f561054f366004612a5c565b610f50565b34801561056057600080fd5b506102f5600081565b34801561057557600080fd5b506102b86040518060400160405280600b81526020016a454e5320437573746f647960a81b81525081565b3480156105ac57600080fd5b5061024a6105bb3660046126e4565b610ffc565b3480156105cc57600080fd5b5061024a6105db366004612800565b61104f565b3480156105ec57600080fd5b506103236105fb366004612934565b611069565b34801561060c57600080fd5b5061027f61061b366004612b35565b611222565b34801561062c57600080fd5b5061032361063b366004612bf3565b6112db565b34801561064c57600080fd5b5061032361065b366004612c3e565b611485565b34801561066c57600080fd5b506102f56000805160206133f583398151915281565b34801561068e57600080fd5b5061032361069d3660046127d0565b611592565b3480156106ae57600080fd5b506103236106bd3660046127b7565b6115b7565b3480156106ce57600080fd5b5061027f6106dd366004612d20565b61162b565b3480156106ee57600080fd5b506103236106fd366004612800565b6116bc565b34801561070e57600080fd5b506102b860405180604001604052806005815260200164302e312e3360d81b81525081565b60006001600160e01b03198216630a85bd0160e11b148061076457506001600160e01b03198216630271189760e51b145b806107735750610773826116d8565b92915050565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004546000906001600160a01b0316806107b061170d565b6001600160a01b0316036108a957600080806107ce86880188612d9b565b9250925092506107dd8361171c565b6001600160a01b03841663b88d4fde30600080516020613415833981519152546040516001600160a01b03909116908c9061082390879030906000908b90602001612dfc565b6040516020818303038152906040526040518563ffffffff1660e01b81526004016108519493929190612e3c565b600060405180830381600087803b15801561086b57600080fd5b505af115801561087f573d6000803e3d6000fd5b5050505061089561088f8261174e565b846117d3565b50630a85bd0160e11b93506108c292505050565b6040516344e7d94960e01b815260040160405180910390fd5b95945050505050565b606060005a90506108dd858585610ffc565b6108fa57604051638baa579f60e01b815260040160405180910390fd5b61098c61090a6020870187612800565b3060408801358461091e60608b018b612e6f565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061185e92505050565b9150505b9392505050565b600082815260fb60205260409020600101546109b28161193f565b6109bc8383611950565b505050565b6109c96119d7565b6109d281611a50565b50565b6109dd61170d565b6001600160a01b0316816001600160a01b031614610a5a5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b610a648282611a68565b5050565b80610a7161170d565b6001600160a01b0316610a8382611aed565b6001600160a01b031614610ac55780610a9a61170d565b604051637ea58b1160e01b815260048101929092526001600160a01b03166024820152604401610a51565b610ace82611c03565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052600090610b22906060015b6040516020818303038152906040528051906020012090565b80546001600160a01b0319166001600160a01b0392909216919091179055600060008051602061341583398151915254604051637921219560e11b81523060048201526001600160a01b038681166024830152604482018690526001606483015260a06084830152600060a48301529091169150819063f242432a9060c401600060405180830381600087803b158015610bbb57600080fd5b505af1158015610bcf573d6000803e3d6000fd5b5050505050505050565b610be16119d7565b60005b8151811015610a6457610c0f828281518110610c0257610c02612eb5565b6020026020010151611a50565b80610c1981612ee1565b915050610be4565b610c2c6105db61170d565b610c485760405162461bcd60e51b8152600401610a5190612efa565b6001600160a01b038116610c9e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a51565b610ca781611c1c565b610caf610f36565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610a64573d6000803e3d6000fd5b600061077382611aed565b610cf76119d7565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c500480546001600160a01b0319166001600160a01b0392909216919091179055565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a838156020820152908101829052600090610d7790606001610b09565b5492915050565b610d866119d7565b610d906000611c34565b565b610d9a6119d7565b60005b8151811015610a6457610dc8828281518110610dbb57610dbb612eb5565b6020026020010151611c1c565b80610dd281612ee1565b915050610d9d565b610de56105db61170d565b610e015760405162461bcd60e51b8152600401610a5190612efa565b6001600160a01b038116610ca75760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a51565b6000805160206133d5833981519152546040516383e7f6ff60e01b81526000916001600160a01b031690829082906383e7f6ff90610e9d90899089908990600401612f58565b6040805180830381865afa158015610eb9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610edd9190612f7c565b60208101518151919250610ef091612fca565b9695505050505050565b600091825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610f2d6119d7565b6109d281611c1c565b610d906000805160206133f583398151915261036061170d565b6000805160206133d5833981519152546000906001600160a01b0316806365a69dcf8d85610f7e5730610f80565b8d5b8d8d8d8d8d8d8d6040518a63ffffffff1660e01b8152600401610fab9998979695949392919061306e565b602060405180830381865afa158015610fc8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fec91906130de565b9c9b505050505050505050505050565b600061104761100a856130f7565b3085858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611c8692505050565b949350505050565b60006107736000805160206133f583398151915283610efa565b6110746105db61170d565b6110905760405162461bcd60e51b8152600401610a5190612efa565b6002603354036110e25760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a51565b60026033556000805160206133d5833981519152546040516383e7f6ff60e01b81526001600160a01b039091169060009082906383e7f6ff9061112d90889088908890600401612f58565b6040805180830381865afa158015611149573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061116d9190612f7c565b6020810151815191925061118091612fca565b4710156111a05760405163050205f960e01b815260040160405180910390fd5b816001600160a01b031663acf1a841826020015183600001516111c39190612fca565b8787876040518563ffffffff1660e01b81526004016111e493929190612f58565b6000604051808303818588803b1580156111fd57600080fd5b505af1158015611211573d6000803e3d6000fd5b505060016033555050505050505050565b6000600080516020613415833981519152546001600160a01b031661124561170d565b6001600160a01b03161461126c576040516344e7d94960e01b815260040160405180910390fd5b600061127a83850185612800565b90506112858161171c565b60005b878110156112c4576112b28989838181106112a5576112a5612eb5565b90506020020135836117d3565b806112bc81612ee1565b915050611288565b5063bc197c8160e01b9a9950505050505050505050565b600054610100900460ff16158080156112fb5750600054600160ff909116105b806113155750303b158015611315575060005460ff166001145b6113785760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610a51565b6000805460ff19166001179055801561139b576000805461ff0019166101001790555b6000805160206133d583398151915280546001600160a01b038087166001600160a01b03199283161790925560008051602061341583398151915280548684169083161790557ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004805492851692909116919091179055611419611dc5565b611421611df3565b611429611df3565b611431611e1a565b611439611e51565b801561147f576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6114906105db61170d565b6114ac5760405162461bcd60e51b8152600401610a5190612efa565b6002603354036114fe5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a51565b600260338190555060006115478c8c8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061174e92505050565b905061155281611c03565b6115708c8c846115625730611564565b8c5b8c8c8c8c8c8c8c611e8a565b8161157f5761157f818b6117d3565b5050600160335550505050505050505050565b600082815260fb60205260409020600101546115ad8161193f565b6109bc8383611a68565b60006000805160206133d583398151915254604051631e29f97960e31b8152600481018490526001600160a01b039091169150819063f14fcbc890602401600060405180830381600087803b15801561160f57600080fd5b505af1158015611623573d6000803e3d6000fd5b505050505050565b6000600080516020613415833981519152546001600160a01b031661164e61170d565b6001600160a01b031614611675576040516344e7d94960e01b815260040160405180910390fd5b6001600160a01b038616156116a957600061169283850185612800565b905061169d8161171c565b6116a786826117d3565b505b5063f23a6e6160e01b9695505050505050565b6116c46119d7565b6116cd81611fd5565b6109d260008261204b565b60006001600160e01b03198216637965db0b60e01b148061077357506301ffc9a760e01b6001600160e01b0319831614610773565b6000611717612055565b905090565b6001600160a01b0381166109d25760405163b20f76e360e01b81526001600160a01b0382166004820152602401610a51565b60007f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae60001b826040516020016117859190613195565b604051602081830303815290604052805190602001206040516020016117b5929190918252602082015260400190565b60408051601f19818403018152919052805160209091012092915050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052819061181190606001610b09565b80546001600160a01b0319166001600160a01b039283161790556040519082169083907f45aa97e368889fb3527c1db60c59c2ae91e82f21778613449e46d4208c1c4b1290600090a35050565b606061186985612073565b600080876001600160a01b0316866118838b8a89896120d9565b6040516118909190613195565b60006040518083038160008787f1925050503d80600081146118ce576040519150601f19603f3d011682016040523d82523d6000602084013e6118d3565b606091505b5090925090506118e4603f876131b1565b5a116118f2576118f26131d3565b61193282826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c4544000000000000815250612109565b9998505050505050505050565b6109d28161194b61170d565b612142565b61195a8282610efa565b610a6457600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff1916600117905561199361170d565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6119df61170d565b6001600160a01b03166119fa6097546001600160a01b031690565b6001600160a01b031614610d905760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a51565b6109d26000805160206133f583398151915282611592565b611a728282610efa565b15610a6457600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff19169055611aa961170d565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101829052600090611b2c90606001610b09565b546001600160a01b0316905080611b595760405163124bad6360e31b815260048101839052602401610a51565b30600080516020613415833981519152546040516331a9108f60e11b8152600481018590526001600160a01b0390911690636352211e90602401602060405180830381865afa158015611bb0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bd491906131e9565b6001600160a01b031614611bfe576040516303b673fd60e21b815260048101839052602401610a51565b919050565b303303611c13576109d2816121a6565b6109d281612073565b6109d26000805160206133f58339815191528261204b565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015611ccd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cf191906130de565b90506000611d9f866060015180519060200120868860200151604051602001611d3f9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b9050818660200151148015610ef057508551610ef0906001600160a01b031682866121d0565b600054610100900460ff16611dec5760405162461bcd60e51b8152600401610a5190613206565b6001603355565b600054610100900460ff16610d905760405162461bcd60e51b8152600401610a5190613206565b600054610100900460ff16611e415760405162461bcd60e51b8152600401610a5190613206565b610d90611e4c61170d565b611c34565b600054610100900460ff16611e785760405162461bcd60e51b8152600401610a5190613206565b610d906000611e8561170d565b61204b565b6000805160206133d5833981519152546040516383e7f6ff60e01b81526001600160a01b039091169060009082906383e7f6ff90611ed0908f908f908e90600401612f58565b6040805180830381865afa158015611eec573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f109190612f7c565b60208101518151919250611f2391612fca565b471015611f435760405163050205f960e01b815260040160405180910390fd5b816001600160a01b03166374694a2b82602001518360000151611f669190612fca565b8e8e8e8e8e8e8e8e8e8e6040518c63ffffffff1660e01b8152600401611f959a99989796959493929190613251565b6000604051808303818588803b158015611fae57600080fd5b505af1158015611fc2573d6000803e3d6000fd5b5050505050505050505050505050505050565b611fdd6119d7565b6001600160a01b0381166120425760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610a51565b6109d281611c34565b610a648282611950565b600030330361206b575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290526000906060016040516020818303038152906040528051906020012090506120c88190565b546120d4906001612fca565b905550565b60608285856040516020016120f0939291906132c3565b6040516020818303038152906040529050949350505050565b60608315612118575081610990565b8251156121285782518084602001fd5b8160405162461bcd60e51b8152600401610a5191906127a4565b61214c8282610efa565b610a6457612164816001600160a01b03166014612312565b61216f836020612312565b604051602001612180929190613302565b60408051601f198184030181529082905262461bcd60e51b8252610a51916004016127a4565b6121ae6124ad565b81146109d257604051635637b6af60e11b815260048101829052602401610a51565b60008060006121df85856124c0565b909250905060008160048111156121f8576121f8613377565b1480156122165750856001600160a01b0316826001600160a01b0316145b1561222657600192505050610990565b600080876001600160a01b0316631626ba7e60e01b888860405160240161224e92919061338d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161228c9190613195565b600060405180830381855afa9150503d80600081146122c7576040519150601f19603f3d011682016040523d82523d6000602084013e6122cc565b606091505b50915091508180156122df575080516020145b801561230657508051630b135d3f60e11b9061230490830160209081019084016130de565b145b98975050505050505050565b606060006123218360026133a6565b61232c906002612fca565b6001600160401b0381111561234357612343612849565b6040519080825280601f01601f19166020018201604052801561236d576020820181803683370190505b509050600360fc1b8160008151811061238857612388612eb5565b60200101906001600160f81b031916908160001a905350600f60fb1b816001815181106123b7576123b7612eb5565b60200101906001600160f81b031916908160001a90535060006123db8460026133a6565b6123e6906001612fca565b90505b600181111561245e576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061241a5761241a612eb5565b1a60f81b82828151811061243057612430612eb5565b60200101906001600160f81b031916908160001a90535060049490941c93612457816133bd565b90506123e9565b5083156109905760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610a51565b60003033036120705750601f1936013590565b60008082516041036124f65760208301516040840151606085015160001a6124ea87828585612505565b945094505050506124fe565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561253c57506000905060036125e9565b8460ff16601b1415801561255457508460ff16601c14155b1561256557506000905060046125e9565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156125b9573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166125e2576000600192509250506125e9565b9150600090505b94509492505050565b60006020828403121561260457600080fd5b81356001600160e01b03198116811461099057600080fd5b6001600160a01b03811681146109d257600080fd5b60008083601f84011261264357600080fd5b5081356001600160401b0381111561265a57600080fd5b6020830191508360208285010111156124fe57600080fd5b60008060008060006080868803121561268a57600080fd5b85356126958161261c565b945060208601356126a58161261c565b93506040860135925060608601356001600160401b038111156126c757600080fd5b6126d388828901612631565b969995985093965092949392505050565b6000806000604084860312156126f957600080fd5b83356001600160401b038082111561271057600080fd5b908501906080828803121561272457600080fd5b9093506020850135908082111561273a57600080fd5b5061274786828701612631565b9497909650939450505050565b60005b8381101561276f578181015183820152602001612757565b50506000910152565b60008151808452612790816020860160208601612754565b601f01601f19169290920160200192915050565b6020815260006109906020830184612778565b6000602082840312156127c957600080fd5b5035919050565b600080604083850312156127e357600080fd5b8235915060208301356127f58161261c565b809150509250929050565b60006020828403121561281257600080fd5b81356109908161261c565b6000806040838503121561283057600080fd5b823561283b8161261c565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561288757612887612849565b604052919050565b600060208083850312156128a257600080fd5b82356001600160401b03808211156128b957600080fd5b818501915085601f8301126128cd57600080fd5b8135818111156128df576128df612849565b8060051b91506128f084830161285f565b818152918301840191848101908884111561290a57600080fd5b938501935b8385101561230657843592506129248361261c565b828252938501939085019061290f565b60008060006040848603121561294957600080fd5b83356001600160401b0381111561295f57600080fd5b61296b86828701612631565b909790965060209590950135949350505050565b60006001600160401b0383111561299857612998612849565b6129ab601f8401601f191660200161285f565b90508281528383830111156129bf57600080fd5b828260208301376000602084830101529392505050565b600082601f8301126129e757600080fd5b6109908383356020850161297f565b60008083601f840112612a0857600080fd5b5081356001600160401b03811115612a1f57600080fd5b6020830191508360208260051b85010111156124fe57600080fd5b80358015158114611bfe57600080fd5b803561ffff81168114611bfe57600080fd5b6000806000806000806000806000806101208b8d031215612a7c57600080fd5b8a356001600160401b0380821115612a9357600080fd5b612a9f8e838f016129d6565b9b5060208d01359150612ab18261261c565b90995060408c0135985060608c0135975060808c013590612ad18261261c565b90965060a08c01359080821115612ae757600080fd5b50612af48d828e016129f6565b9096509450612b07905060c08c01612a3a565b9250612b1560e08c01612a4a565b9150612b246101008c01612a3a565b90509295989b9194979a5092959850565b60008060008060008060008060a0898b031215612b5157600080fd5b8835612b5c8161261c565b97506020890135612b6c8161261c565b965060408901356001600160401b0380821115612b8857600080fd5b612b948c838d016129f6565b909850965060608b0135915080821115612bad57600080fd5b612bb98c838d016129f6565b909650945060808b0135915080821115612bd257600080fd5b50612bdf8b828c01612631565b999c989b5096995094979396929594505050565b600080600060608486031215612c0857600080fd5b8335612c138161261c565b92506020840135612c238161261c565b91506040840135612c338161261c565b809150509250925092565b60008060008060008060008060008060006101208c8e031215612c6057600080fd5b6001600160401b03808d351115612c7657600080fd5b612c838e8e358f01612631565b909c509a50612c9560208e013561261c565b60208d0135995060408d0135985060608d01359750612cb760808e013561261c565b60808d013596508060a08e01351115612ccf57600080fd5b50612ce08d60a08e01358e016129f6565b9095509350612cf160c08d01612a3a565b9250612cff60e08d01612a4a565b9150612d0e6101008d01612a3a565b90509295989b509295989b9093969950565b60008060008060008060a08789031215612d3957600080fd5b8635612d448161261c565b95506020870135612d548161261c565b9450604087013593506060870135925060808701356001600160401b03811115612d7d57600080fd5b612d8989828a01612631565b979a9699509497509295939492505050565b600080600060608486031215612db057600080fd5b8335612dbb8161261c565b92506020840135612dcb8161261c565b915060408401356001600160401b03811115612de657600080fd5b612df2868287016129d6565b9150509250925092565b608081526000612e0f6080830187612778565b6001600160a01b03958616602084015261ffff949094166040830152509216606090920191909152919050565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090610ef090830184612778565b6000808335601e19843603018112612e8657600080fd5b8301803591506001600160401b03821115612ea057600080fd5b6020019150368190038213156124fe57600080fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201612ef357612ef3612ecb565b5060010190565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b604081526000612f6c604083018587612f2f565b9050826020830152949350505050565b600060408284031215612f8e57600080fd5b604051604081018181106001600160401b0382111715612fb057612fb0612849565b604052825181526020928301519281019290925250919050565b8082018082111561077357610773612ecb565b81835260006020808501808196508560051b810191508460005b878110156130615782840389528135601e1988360301811261301857600080fd5b870185810190356001600160401b0381111561303357600080fd5b80360382131561304257600080fd5b61304d868284612f2f565b9a87019a9550505090840190600101612ff7565b5091979650505050505050565b60006101008083526130828184018d612778565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a085015290506130bc818789612fdd565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b6000602082840312156130f057600080fd5b5051919050565b60006080823603121561310957600080fd5b604051608081016001600160401b03828210818311171561312c5761312c612849565b816040528435915061313d8261261c565b8183526020850135602084015260408501356040840152606085013591508082111561316857600080fd5b50830136601f82011261317a57600080fd5b6131893682356020840161297f565b60608301525092915050565b600082516131a7818460208701612754565b9190910192915050565b6000826131ce57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b6000602082840312156131fb57600080fd5b81516109908161261c565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60006101008083526132668184018d8f612f2f565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a085015290506132a0818789612fdd565b94151560c0840152505061ffff9190911660e09091015298975050505050505050565b600084516132d5818460208901612754565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081526000835161333a816017850160208801612754565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835161336b816028840160208801612754565b01602801949350505050565b634e487b7160e01b600052602160045260246000fd5b8281526040602082015260006110476040830184612778565b808202811582820484141761077357610773612ecb565b6000816133cc576133cc612ecb565b50600019019056fe412386de53449251cbf7ce1f4c6a038bf9c0746e62d331b08ef0c3fa7d0ab6729f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a660793a5062d506d35cc8f1beda67ee5028c16bfcd9c923d5bfc439c04bd929b1a164736f6c6343000811000a"; +const isSuperArgs = (xs) => xs.length > 1; +class ENSCustody__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(overrides) { + return super.getDeployTransaction(overrides || {}); + } + deploy(overrides) { + return super.deploy(overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.ENSCustody__factory = ENSCustody__factory; +ENSCustody__factory.bytecode = _bytecode; +ENSCustody__factory.abi = _abi; diff --git a/dist/types/factories/contracts/custody/IENSCustody__factory.d.ts b/dist/types/factories/contracts/custody/IENSCustody__factory.d.ts new file mode 100644 index 00000000..1c9f06fd --- /dev/null +++ b/dist/types/factories/contracts/custody/IENSCustody__factory.d.ts @@ -0,0 +1,258 @@ +import { type ContractRunner } from "ethers"; +import type { IENSCustody, IENSCustodyInterface } from "../../../contracts/custody/IENSCustody"; +export declare class IENSCustody__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "Parked"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "commitment"; + readonly type: "bytes32"; + }]; + readonly name: "commit"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "name"; + readonly type: "string"; + }, { + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "duration"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes32"; + readonly name: "secret"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }, { + readonly internalType: "bytes[]"; + readonly name: "data"; + readonly type: "bytes[]"; + }, { + readonly internalType: "bool"; + readonly name: "reverseRecord"; + readonly type: "bool"; + }, { + readonly internalType: "uint16"; + readonly name: "ownerControlledFuses"; + readonly type: "uint16"; + }, { + readonly internalType: "bool"; + readonly name: "selfCustody"; + readonly type: "bool"; + }]; + readonly name: "makeCommitment"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "uint256[]"; + readonly name: "ids"; + readonly type: "uint256[]"; + }, { + readonly internalType: "uint256[]"; + readonly name: "values"; + readonly type: "uint256[]"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "onERC1155BatchReceived"; + readonly outputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: ""; + readonly type: "bytes4"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "value"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "onERC1155Received"; + readonly outputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: ""; + readonly type: "bytes4"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "ownerOf"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "name"; + readonly type: "string"; + }, { + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "duration"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes32"; + readonly name: "secret"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }, { + readonly internalType: "bytes[]"; + readonly name: "data"; + readonly type: "bytes[]"; + }, { + readonly internalType: "bool"; + readonly name: "reverseRecord"; + readonly type: "bool"; + }, { + readonly internalType: "uint16"; + readonly name: "ownerControlledFuses"; + readonly type: "uint16"; + }, { + readonly internalType: "bool"; + readonly name: "selfCustody"; + readonly type: "bool"; + }]; + readonly name: "register"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "name"; + readonly type: "string"; + }, { + readonly internalType: "uint256"; + readonly name: "duration"; + readonly type: "uint256"; + }]; + readonly name: "renew"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "name"; + readonly type: "string"; + }, { + readonly internalType: "uint256"; + readonly name: "duration"; + readonly type: "uint256"; + }]; + readonly name: "rentPrice"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "safeTransfer"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly stateMutability: "payable"; + readonly type: "receive"; + }]; + static createInterface(): IENSCustodyInterface; + static connect(address: string, runner?: ContractRunner | null): IENSCustody; +} +//# sourceMappingURL=IENSCustody__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/custody/IENSCustody__factory.d.ts.map b/dist/types/factories/contracts/custody/IENSCustody__factory.d.ts.map new file mode 100644 index 00000000..660f0edf --- /dev/null +++ b/dist/types/factories/contracts/custody/IENSCustody__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IENSCustody__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/custody/IENSCustody__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,WAAW,EACX,oBAAoB,EACrB,MAAM,wCAAwC,CAAC;AAyUhD,qBAAa,oBAAoB;IAC/B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,oBAAoB;IAG9C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,WAAW;CAG7E"} \ No newline at end of file diff --git a/dist/types/factories/contracts/custody/IENSCustody__factory.js b/dist/types/factories/contracts/custody/IENSCustody__factory.js new file mode 100644 index 00000000..bfc1f517 --- /dev/null +++ b/dist/types/factories/contracts/custody/IENSCustody__factory.js @@ -0,0 +1,340 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IENSCustody__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "Parked", + type: "event", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "commitment", + type: "bytes32", + }, + ], + name: "commit", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "name", + type: "string", + }, + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "uint256", + name: "duration", + type: "uint256", + }, + { + internalType: "bytes32", + name: "secret", + type: "bytes32", + }, + { + internalType: "address", + name: "resolver", + type: "address", + }, + { + internalType: "bytes[]", + name: "data", + type: "bytes[]", + }, + { + internalType: "bool", + name: "reverseRecord", + type: "bool", + }, + { + internalType: "uint16", + name: "ownerControlledFuses", + type: "uint16", + }, + { + internalType: "bool", + name: "selfCustody", + type: "bool", + }, + ], + name: "makeCommitment", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "uint256[]", + name: "ids", + type: "uint256[]", + }, + { + internalType: "uint256[]", + name: "values", + type: "uint256[]", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "onERC1155BatchReceived", + outputs: [ + { + internalType: "bytes4", + name: "", + type: "bytes4", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + internalType: "uint256", + name: "value", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "onERC1155Received", + outputs: [ + { + internalType: "bytes4", + name: "", + type: "bytes4", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "ownerOf", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "name", + type: "string", + }, + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "uint256", + name: "duration", + type: "uint256", + }, + { + internalType: "bytes32", + name: "secret", + type: "bytes32", + }, + { + internalType: "address", + name: "resolver", + type: "address", + }, + { + internalType: "bytes[]", + name: "data", + type: "bytes[]", + }, + { + internalType: "bool", + name: "reverseRecord", + type: "bool", + }, + { + internalType: "uint16", + name: "ownerControlledFuses", + type: "uint16", + }, + { + internalType: "bool", + name: "selfCustody", + type: "bool", + }, + ], + name: "register", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "name", + type: "string", + }, + { + internalType: "uint256", + name: "duration", + type: "uint256", + }, + ], + name: "renew", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "name", + type: "string", + }, + { + internalType: "uint256", + name: "duration", + type: "uint256", + }, + ], + name: "rentPrice", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "safeTransfer", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + stateMutability: "payable", + type: "receive", + }, +]; +class IENSCustody__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IENSCustody__factory = IENSCustody__factory; +IENSCustody__factory.abi = _abi; diff --git a/dist/types/factories/contracts/custody/ZilliqaRecover__factory.d.ts b/dist/types/factories/contracts/custody/ZilliqaRecover__factory.d.ts new file mode 100644 index 00000000..a0833363 --- /dev/null +++ b/dist/types/factories/contracts/custody/ZilliqaRecover__factory.d.ts @@ -0,0 +1,454 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../common"; +import type { ZilliqaRecover, ZilliqaRecoverInterface } from "../../../contracts/custody/ZilliqaRecover"; +declare type ZilliqaRecoverConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class ZilliqaRecover__factory extends ContractFactory { + constructor(...args: ZilliqaRecoverConstructorParams); + getDeployTransaction(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): ZilliqaRecover__factory; + static readonly bytecode = "0x608060405234801561001057600080fd5b5061001961001e565b6100de565b600054610100900460ff161561008a5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811610156100dc576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b611c80806100ed6000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c806371017a54116100a25780639e32d364116100715780639e32d36414610260578063a424740014610287578063dd6b9e221461029a578063e1c4b65a146102ad578063e35a14e5146102c057600080fd5b806371017a54146102145780637b103999146102275780638f0dbd251461023a5780639810b6951461024d57600080fd5b8063485cc955116100de578063485cc95514610197578063572b6c05146101aa57806358884432146101d65780636ccbae5f1461020157600080fd5b8063150b7a02146101105780631694116d146101415780631bf7e13e146101565780631c351a9d14610176575b600080fd5b61012361011e3660046114ae565b6102e9565b6040516001600160e01b031990911681526020015b60405180910390f35b61015461014f366004611566565b61037b565b005b6101696101643660046115d1565b610422565b6040516101389190611692565b6101896101843660046116a5565b6104ee565b604051908152602001610138565b6101546101a53660046116fc565b6105df565b6101c66101b8366004611735565b6001600160a01b0316301490565b6040519015158152602001610138565b6067546101e9906001600160a01b031681565b6040516001600160a01b039091168152602001610138565b61018961020f366004611752565b61071a565b6101e961022236600461176b565b610774565b6066546101e9906001600160a01b031681565b61015461024836600461178d565b6107b5565b6101e961025b36600461176b565b61082a565b6101897fd81bbfcee722494b885e891546eeac23d0eedcd44038d7a2f6ef9ec2f9e0d23981565b6101c66102953660046115d1565b610886565b6101c66102a83660046117ce565b6108d1565b6101546102bb366004611816565b610953565b6101e96102ce366004611752565b6000908152606560205260409020546001600160a01b031690565b6066546000906001600160a01b0316610300610a86565b6001600160a01b031614158061032b57506000848152606560205260409020546001600160a01b0316155b156103695783610339610a86565b60405163634afa0d60e01b815260048101929092526001600160a01b031660248201526044015b60405180910390fd5b50630a85bd0160e11b95945050505050565b82826103878282610774565b6001600160a01b0316610398610a86565b6001600160a01b0316146103c957604051632cd9b44d60e11b81526004810183905260248101829052604401610360565b60006103d5868661082a565b905060005b87811015610417576104058989838181106103f7576103f7611858565b905060200201358387610a95565b8061040f81611884565b9150506103da565b505050505050505050565b606060005a9050610434858585610886565b61045157604051638baa579f60e01b815260040160405180910390fd5b6104e36104616020870187611735565b3060408801358461047560608b018b61189d565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b9081908401838280828437600092019190915250610bd092505050565b9150505b9392505050565b6067546000906001600160a01b031663aa271e1a61050a610a86565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa15801561054e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061057291906118e4565b158061058d575030610582610a86565b6001600160a01b0316145b156105bf5761059a610a86565b60405163e2c8c9d560e01b81526001600160a01b039091166004820152602401610360565b60006105cc858585610cb1565b90506105d781610ece565b949350505050565b600054610100900460ff16158080156105ff5750600054600160ff909116105b806106195750303b158015610619575060005460ff166001145b61067c5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610360565b6000805460ff19166001179055801561069f576000805461ff0019166101001790555b606680546001600160a01b038086166001600160a01b03199283161790925560678054928516929091169190911790558015610715576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a83815602082015290810182905260009061076d906060016040516020818303038152906040528051906020012090565b5492915050565b6000808383604051602001610793929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209150505b92915050565b82826107c18282610774565b6001600160a01b03166107d2610a86565b6001600160a01b03161461080357604051632cd9b44d60e11b81526004810183905260248101829052604401610360565b8561080d81610ece565b6108218761081b888961082a565b86610a95565b50505050505050565b60008060026108398585610eea565b6040516108469190611906565b602060405180830381855afa158015610863573d6000803e3d6000fd5b5050506040513d601f19601f820116820180604052508101906105d79190611922565b60006105d7610894856119ab565b3085858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250610f7092505050565b6000805b8281101561094857846001600160a01b031661091e8585848181106108fc576108fc611858565b905060200201356000908152606560205260409020546001600160a01b031690565b6001600160a01b0316146109365760009150506104e7565b8061094081611884565b9150506108d5565b506001949350505050565b6067546001600160a01b031663aa271e1a61096c610a86565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa1580156109b0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109d491906118e4565b15806109ef5750306109e4610a86565b6001600160a01b0316145b156109fc5761059a610a86565b60005b8181101561071557610a73838383818110610a1c57610a1c611858565b9050602002810190610a2e9190611a6e565b610a3c90602081019061189d565b858585818110610a4e57610a4e611858565b9050602002810190610a609190611a6e565b610a6e906020810190611735565b610cb1565b5080610a7e81611884565b9150506109ff565b6000610a906110b9565b905090565b6000838152606560205260409020546001600160a01b03838116911614610afa57600083815260656020526040908190205490516326995d8360e11b8152600481018590526001600160a01b0391821660248201529083166044820152606401610360565b6000838152606560205260409081902080546001600160a01b03191690556066549051632142170760e11b81523060048201526001600160a01b03838116602483015260448201869052909116906342842e0e90606401600060405180830381600087803b158015610b6b57600080fd5b505af1158015610b7f573d6000803e3d6000fd5b50505050806001600160a01b0316610b95610a86565b6001600160a01b0316847f9a471856befea1cabcd7fc8a1c4d70ea07b8ed2ee205cc361f932433542ef3fe60405160405180910390a4505050565b6060610bdb856110d7565b600080876001600160a01b031686610bf58b8a898961113d565b604051610c029190611906565b60006040518083038160008787f1925050503d8060008114610c40576040519150601f19603f3d011682016040523d82523d6000602084013e610c45565b606091505b509092509050610c56603f87611a9a565b5a11610c6457610c64611aae565b610ca482826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061116d565b9998505050505050505050565b6000606060007fd81bbfcee722494b885e891546eeac23d0eedcd44038d7a2f6ef9ec2f9e0d2398686604051602001610ceb929190611ac4565b60405160208183030381529060405280519060200120604051602001610d1b929190918252602082015260400190565b60408051808303601f190181528282528051602090910120600280845260608401909252925060009190816020015b6060815260200190600190039081610d4a57905050905086868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250855186945090925015159050610dab57610dab611858565b6020026020010181905250604051806040016040528060038152602001621e9a5b60ea1b81525081600181518110610de557610de5611858565b60209081029190910181019190915260008381526065909152604080822080546001600160a01b0319166001600160a01b03898116919091179091556067549151635cd7e3b360e01b8152911691635cd7e3b391610e4e91309186918991829190600401611b29565b600060405180830381600087803b158015610e6857600080fd5b505af1158015610e7c573d6000803e3d6000fd5b50505050846001600160a01b0316827f08717469d38a4b02325ea6637978c7952f94d3d8fc7848994f618ddbf4d637f18989604051610ebc929190611b88565b60405180910390a35095945050505050565b303303610ee157610ede816111a6565b50565b610ede816110d7565b6060600082610efb60016020611bb7565b60ff1660208110610f0e57610f0e611858565b1a9050610f1c600282611bd0565b60ff1615610f2b576003610f2e565b60025b84604051602001610f5892919060f89290921b6001600160f81b0319168252600182015260210190565b60405160208183030381529060405291505092915050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015610fb7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fdb9190611922565b905060006110898660600151805190602001208688602001516040516020016110299392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156110af575085516110af906001600160a01b031682866111d0565b9695505050505050565b60003033036110cf575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a83815602082015290810182905260009060600160405160208183030381529060405280519060200120905061112c8190565b54611138906001611bf2565b905550565b606082858560405160200161115493929190611c05565b6040516020818303038152906040529050949350505050565b6060831561117c5750816104e7565b82511561118c5782518084602001fd5b8160405162461bcd60e51b81526004016103609190611692565b6111ae611312565b8114610ede57604051635637b6af60e11b815260048101829052602401610360565b60008060006111df8585611325565b909250905060008160048111156111f8576111f8611c44565b1480156112165750856001600160a01b0316826001600160a01b0316145b15611226576001925050506104e7565b600080876001600160a01b0316631626ba7e60e01b888860405160240161124e929190611c5a565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161128c9190611906565b600060405180830381855afa9150503d80600081146112c7576040519150601f19603f3d011682016040523d82523d6000602084013e6112cc565b606091505b50915091508180156112df575080516020145b801561130657508051630b135d3f60e11b906113049083016020908101908401611922565b145b98975050505050505050565b60003033036110d45750601f1936013590565b600080825160410361135b5760208301516040840151606085015160001a61134f8782858561136a565b94509450505050611363565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08311156113a1575060009050600361144e565b8460ff16601b141580156113b957508460ff16601c14155b156113ca575060009050600461144e565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa15801561141e573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166114475760006001925092505061144e565b9150600090505b94509492505050565b6001600160a01b0381168114610ede57600080fd5b60008083601f84011261147e57600080fd5b50813567ffffffffffffffff81111561149657600080fd5b60208301915083602082850101111561136357600080fd5b6000806000806000608086880312156114c657600080fd5b85356114d181611457565b945060208601356114e181611457565b935060408601359250606086013567ffffffffffffffff81111561150457600080fd5b6115108882890161146c565b969995985093965092949392505050565b60008083601f84011261153357600080fd5b50813567ffffffffffffffff81111561154b57600080fd5b6020830191508360208260051b850101111561136357600080fd5b60008060008060006080868803121561157e57600080fd5b853567ffffffffffffffff81111561159557600080fd5b6115a188828901611521565b909650945050602086013592506040860135915060608601356115c381611457565b809150509295509295909350565b6000806000604084860312156115e657600080fd5b833567ffffffffffffffff808211156115fe57600080fd5b908501906080828803121561161257600080fd5b9093506020850135908082111561162857600080fd5b506116358682870161146c565b9497909650939450505050565b60005b8381101561165d578181015183820152602001611645565b50506000910152565b6000815180845261167e816020860160208601611642565b601f01601f19169290920160200192915050565b6020815260006104e76020830184611666565b6000806000604084860312156116ba57600080fd5b833567ffffffffffffffff8111156116d157600080fd5b6116dd8682870161146c565b90945092505060208401356116f181611457565b809150509250925092565b6000806040838503121561170f57600080fd5b823561171a81611457565b9150602083013561172a81611457565b809150509250929050565b60006020828403121561174757600080fd5b81356104e781611457565b60006020828403121561176457600080fd5b5035919050565b6000806040838503121561177e57600080fd5b50508035926020909101359150565b600080600080608085870312156117a357600080fd5b84359350602085013592506040850135915060608501356117c381611457565b939692955090935050565b6000806000604084860312156117e357600080fd5b83356117ee81611457565b9250602084013567ffffffffffffffff81111561180a57600080fd5b61163586828701611521565b6000806020838503121561182957600080fd5b823567ffffffffffffffff81111561184057600080fd5b61184c85828601611521565b90969095509350505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000600182016118965761189661186e565b5060010190565b6000808335601e198436030181126118b457600080fd5b83018035915067ffffffffffffffff8211156118cf57600080fd5b60200191503681900382131561136357600080fd5b6000602082840312156118f657600080fd5b815180151581146104e757600080fd5b60008251611918818460208701611642565b9190910192915050565b60006020828403121561193457600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff811182821017156119745761197461193b565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156119a3576119a361193b565b604052919050565b6000608082360312156119bd57600080fd5b6119c5611951565b82356119d081611457565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff80821115611a0157600080fd5b9085019036601f830112611a1457600080fd5b813581811115611a2657611a2661193b565b611a38601f8201601f1916850161197a565b91508082523684828501011115611a4e57600080fd5b808484018584013760009082019093019290925250606082015292915050565b60008235603e1983360301811261191857600080fd5b634e487b7160e01b600052601260045260246000fd5b600082611aa957611aa9611a84565b500490565b634e487b7160e01b600052600160045260246000fd5b8183823760009101908152919050565b600081518084526020808501808196508360051b8101915082860160005b85811015611b1c578284038952611b0a848351611666565b98850198935090840190600101611af2565b5091979650505050505050565b6001600160a01b038616815260a060208201819052600090611b4d90830187611ad4565b8281036040840152611b5f8187611ad4565b90508281036060840152611b738186611ad4565b91505082151560808301529695505050505050565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b60ff82811682821603908111156107af576107af61186e565b600060ff831680611be357611be3611a84565b8060ff84160691505092915050565b808201808211156107af576107af61186e565b60008451611c17818460208901611642565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b600052602160045260246000fd5b8281526040602082015260006105d7604083018461166656fea164736f6c6343000811000a"; + static readonly abi: readonly [{ + readonly inputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "constructor"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "InvalidForwardedToken"; + readonly type: "error"; + }, { + readonly inputs: readonly []; + readonly name: "InvalidSignature"; + readonly type: "error"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "publicKeyX"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes32"; + readonly name: "publicKeyY"; + readonly type: "bytes32"; + }]; + readonly name: "PublicKeyUnmatchSenderAddress"; + readonly type: "error"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "sender"; + readonly type: "address"; + }]; + readonly name: "SenderNotMinter"; + readonly type: "error"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "address"; + readonly name: "znsOwner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "receivedOwner"; + readonly type: "address"; + }]; + readonly name: "TokenOwnedByOtherZilAddress"; + readonly type: "error"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "address"; + readonly name: "contractAddress"; + readonly type: "address"; + }]; + readonly name: "UnknownTokenReceived"; + readonly type: "error"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "uint8"; + readonly name: "version"; + readonly type: "uint8"; + }]; + readonly name: "Initialized"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "oldAddress"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "newAddress"; + readonly type: "address"; + }]; + readonly name: "ZnsTokenClaimed"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "zilAddress"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }]; + readonly name: "ZnsTokenMinted"; + readonly type: "event"; + }, { + readonly inputs: readonly []; + readonly name: "ZIL_NODE"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes32"; + readonly name: "publicKeyX"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes32"; + readonly name: "publicKeyY"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "newOwnerAddress"; + readonly type: "address"; + }]; + readonly name: "claim"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256[]"; + readonly name: "tokenIds"; + readonly type: "uint256[]"; + }, { + readonly internalType: "bytes32"; + readonly name: "publicKeyX"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes32"; + readonly name: "publicKeyY"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "newOwnerAddress"; + readonly type: "address"; + }]; + readonly name: "claimAll"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "publicKeyX"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes32"; + readonly name: "publicKeyY"; + readonly type: "bytes32"; + }]; + readonly name: "ethAddress"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "pure"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly components: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "nonce"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly internalType: "struct IForwarder.ForwardRequest"; + readonly name: "req"; + readonly type: "tuple"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "execute"; + readonly outputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "contract IUNSRegistry"; + readonly name: "registry_"; + readonly type: "address"; + }, { + readonly internalType: "contract IMintingManager"; + readonly name: "mintingManager_"; + readonly type: "address"; + }]; + readonly name: "initialize"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "_zilAddress"; + readonly type: "address"; + }, { + readonly internalType: "uint256[]"; + readonly name: "tokenIds"; + readonly type: "uint256[]"; + }]; + readonly name: "isOwnedBy"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "forwarder"; + readonly type: "address"; + }]; + readonly name: "isTrustedForwarder"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }, { + readonly internalType: "address"; + readonly name: "zilOwner"; + readonly type: "address"; + }]; + readonly name: "mint"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly components: readonly [{ + readonly internalType: "address"; + readonly name: "zilOwner"; + readonly type: "address"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }]; + readonly internalType: "struct ZilliqaRecover.MintingToken[]"; + readonly name: "tokens"; + readonly type: "tuple[]"; + }]; + readonly name: "mintAll"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "mintingManager"; + readonly outputs: readonly [{ + readonly internalType: "contract IMintingManager"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "nonceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly name: "onERC721Received"; + readonly outputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: ""; + readonly type: "bytes4"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "registry"; + readonly outputs: readonly [{ + readonly internalType: "contract IUNSRegistry"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly components: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "nonce"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly internalType: "struct IForwarder.ForwardRequest"; + readonly name: "req"; + readonly type: "tuple"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "verify"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "publicKeyX"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes32"; + readonly name: "publicKeyY"; + readonly type: "bytes32"; + }]; + readonly name: "zilAddress"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "pure"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "znsOwnerOf"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): ZilliqaRecoverInterface; + static connect(address: string, runner?: ContractRunner | null): ZilliqaRecover; +} +export {}; +//# sourceMappingURL=ZilliqaRecover__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/custody/ZilliqaRecover__factory.d.ts.map b/dist/types/factories/contracts/custody/ZilliqaRecover__factory.d.ts.map new file mode 100644 index 00000000..8903410f --- /dev/null +++ b/dist/types/factories/contracts/custody/ZilliqaRecover__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ZilliqaRecover__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/custody/ZilliqaRecover__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,KAAK,EACV,cAAc,EACd,uBAAuB,EACxB,MAAM,2CAA2C,CAAC;AA6jBnD,aAAK,+BAA+B,GAChC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,uBAAwB,SAAQ,eAAe;gBAC9C,GAAG,IAAI,EAAE,+BAA+B;IAQ3C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,uBAAuB;IAIxE,MAAM,CAAC,QAAQ,CAAC,QAAQ,kudAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,uBAAuB;IAGjD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,cAAc;CAGlB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/custody/ZilliqaRecover__factory.js b/dist/types/factories/contracts/custody/ZilliqaRecover__factory.js new file mode 100644 index 00000000..21d04481 --- /dev/null +++ b/dist/types/factories/contracts/custody/ZilliqaRecover__factory.js @@ -0,0 +1,601 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ZilliqaRecover__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [], + stateMutability: "nonpayable", + type: "constructor", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "InvalidForwardedToken", + type: "error", + }, + { + inputs: [], + name: "InvalidSignature", + type: "error", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "publicKeyX", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "publicKeyY", + type: "bytes32", + }, + ], + name: "PublicKeyUnmatchSenderAddress", + type: "error", + }, + { + inputs: [ + { + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "SenderNotMinter", + type: "error", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "address", + name: "znsOwner", + type: "address", + }, + { + internalType: "address", + name: "receivedOwner", + type: "address", + }, + ], + name: "TokenOwnedByOtherZilAddress", + type: "error", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "address", + name: "contractAddress", + type: "address", + }, + ], + name: "UnknownTokenReceived", + type: "error", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint8", + name: "version", + type: "uint8", + }, + ], + name: "Initialized", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + indexed: true, + internalType: "address", + name: "oldAddress", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "newAddress", + type: "address", + }, + ], + name: "ZnsTokenClaimed", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + indexed: true, + internalType: "address", + name: "zilAddress", + type: "address", + }, + { + indexed: false, + internalType: "string", + name: "label", + type: "string", + }, + ], + name: "ZnsTokenMinted", + type: "event", + }, + { + inputs: [], + name: "ZIL_NODE", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes32", + name: "publicKeyX", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "publicKeyY", + type: "bytes32", + }, + { + internalType: "address", + name: "newOwnerAddress", + type: "address", + }, + ], + name: "claim", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256[]", + name: "tokenIds", + type: "uint256[]", + }, + { + internalType: "bytes32", + name: "publicKeyX", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "publicKeyY", + type: "bytes32", + }, + { + internalType: "address", + name: "newOwnerAddress", + type: "address", + }, + ], + name: "claimAll", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "publicKeyX", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "publicKeyY", + type: "bytes32", + }, + ], + name: "ethAddress", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "pure", + type: "function", + }, + { + inputs: [ + { + components: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "uint256", + name: "nonce", + type: "uint256", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + internalType: "struct IForwarder.ForwardRequest", + name: "req", + type: "tuple", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "execute", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "contract IUNSRegistry", + name: "registry_", + type: "address", + }, + { + internalType: "contract IMintingManager", + name: "mintingManager_", + type: "address", + }, + ], + name: "initialize", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "_zilAddress", + type: "address", + }, + { + internalType: "uint256[]", + name: "tokenIds", + type: "uint256[]", + }, + ], + name: "isOwnedBy", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "forwarder", + type: "address", + }, + ], + name: "isTrustedForwarder", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "label", + type: "string", + }, + { + internalType: "address", + name: "zilOwner", + type: "address", + }, + ], + name: "mint", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + components: [ + { + internalType: "address", + name: "zilOwner", + type: "address", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + ], + internalType: "struct ZilliqaRecover.MintingToken[]", + name: "tokens", + type: "tuple[]", + }, + ], + name: "mintAll", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "mintingManager", + outputs: [ + { + internalType: "contract IMintingManager", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "nonceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + { + internalType: "address", + name: "", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + name: "onERC721Received", + outputs: [ + { + internalType: "bytes4", + name: "", + type: "bytes4", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "registry", + outputs: [ + { + internalType: "contract IUNSRegistry", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + components: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "uint256", + name: "nonce", + type: "uint256", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + internalType: "struct IForwarder.ForwardRequest", + name: "req", + type: "tuple", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "verify", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "publicKeyX", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "publicKeyY", + type: "bytes32", + }, + ], + name: "zilAddress", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "pure", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "znsOwnerOf", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +const _bytecode = "0x608060405234801561001057600080fd5b5061001961001e565b6100de565b600054610100900460ff161561008a5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811610156100dc576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b611c80806100ed6000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c806371017a54116100a25780639e32d364116100715780639e32d36414610260578063a424740014610287578063dd6b9e221461029a578063e1c4b65a146102ad578063e35a14e5146102c057600080fd5b806371017a54146102145780637b103999146102275780638f0dbd251461023a5780639810b6951461024d57600080fd5b8063485cc955116100de578063485cc95514610197578063572b6c05146101aa57806358884432146101d65780636ccbae5f1461020157600080fd5b8063150b7a02146101105780631694116d146101415780631bf7e13e146101565780631c351a9d14610176575b600080fd5b61012361011e3660046114ae565b6102e9565b6040516001600160e01b031990911681526020015b60405180910390f35b61015461014f366004611566565b61037b565b005b6101696101643660046115d1565b610422565b6040516101389190611692565b6101896101843660046116a5565b6104ee565b604051908152602001610138565b6101546101a53660046116fc565b6105df565b6101c66101b8366004611735565b6001600160a01b0316301490565b6040519015158152602001610138565b6067546101e9906001600160a01b031681565b6040516001600160a01b039091168152602001610138565b61018961020f366004611752565b61071a565b6101e961022236600461176b565b610774565b6066546101e9906001600160a01b031681565b61015461024836600461178d565b6107b5565b6101e961025b36600461176b565b61082a565b6101897fd81bbfcee722494b885e891546eeac23d0eedcd44038d7a2f6ef9ec2f9e0d23981565b6101c66102953660046115d1565b610886565b6101c66102a83660046117ce565b6108d1565b6101546102bb366004611816565b610953565b6101e96102ce366004611752565b6000908152606560205260409020546001600160a01b031690565b6066546000906001600160a01b0316610300610a86565b6001600160a01b031614158061032b57506000848152606560205260409020546001600160a01b0316155b156103695783610339610a86565b60405163634afa0d60e01b815260048101929092526001600160a01b031660248201526044015b60405180910390fd5b50630a85bd0160e11b95945050505050565b82826103878282610774565b6001600160a01b0316610398610a86565b6001600160a01b0316146103c957604051632cd9b44d60e11b81526004810183905260248101829052604401610360565b60006103d5868661082a565b905060005b87811015610417576104058989838181106103f7576103f7611858565b905060200201358387610a95565b8061040f81611884565b9150506103da565b505050505050505050565b606060005a9050610434858585610886565b61045157604051638baa579f60e01b815260040160405180910390fd5b6104e36104616020870187611735565b3060408801358461047560608b018b61189d565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b9081908401838280828437600092019190915250610bd092505050565b9150505b9392505050565b6067546000906001600160a01b031663aa271e1a61050a610a86565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa15801561054e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061057291906118e4565b158061058d575030610582610a86565b6001600160a01b0316145b156105bf5761059a610a86565b60405163e2c8c9d560e01b81526001600160a01b039091166004820152602401610360565b60006105cc858585610cb1565b90506105d781610ece565b949350505050565b600054610100900460ff16158080156105ff5750600054600160ff909116105b806106195750303b158015610619575060005460ff166001145b61067c5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610360565b6000805460ff19166001179055801561069f576000805461ff0019166101001790555b606680546001600160a01b038086166001600160a01b03199283161790925560678054928516929091169190911790558015610715576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a83815602082015290810182905260009061076d906060016040516020818303038152906040528051906020012090565b5492915050565b6000808383604051602001610793929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209150505b92915050565b82826107c18282610774565b6001600160a01b03166107d2610a86565b6001600160a01b03161461080357604051632cd9b44d60e11b81526004810183905260248101829052604401610360565b8561080d81610ece565b6108218761081b888961082a565b86610a95565b50505050505050565b60008060026108398585610eea565b6040516108469190611906565b602060405180830381855afa158015610863573d6000803e3d6000fd5b5050506040513d601f19601f820116820180604052508101906105d79190611922565b60006105d7610894856119ab565b3085858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250610f7092505050565b6000805b8281101561094857846001600160a01b031661091e8585848181106108fc576108fc611858565b905060200201356000908152606560205260409020546001600160a01b031690565b6001600160a01b0316146109365760009150506104e7565b8061094081611884565b9150506108d5565b506001949350505050565b6067546001600160a01b031663aa271e1a61096c610a86565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa1580156109b0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109d491906118e4565b15806109ef5750306109e4610a86565b6001600160a01b0316145b156109fc5761059a610a86565b60005b8181101561071557610a73838383818110610a1c57610a1c611858565b9050602002810190610a2e9190611a6e565b610a3c90602081019061189d565b858585818110610a4e57610a4e611858565b9050602002810190610a609190611a6e565b610a6e906020810190611735565b610cb1565b5080610a7e81611884565b9150506109ff565b6000610a906110b9565b905090565b6000838152606560205260409020546001600160a01b03838116911614610afa57600083815260656020526040908190205490516326995d8360e11b8152600481018590526001600160a01b0391821660248201529083166044820152606401610360565b6000838152606560205260409081902080546001600160a01b03191690556066549051632142170760e11b81523060048201526001600160a01b03838116602483015260448201869052909116906342842e0e90606401600060405180830381600087803b158015610b6b57600080fd5b505af1158015610b7f573d6000803e3d6000fd5b50505050806001600160a01b0316610b95610a86565b6001600160a01b0316847f9a471856befea1cabcd7fc8a1c4d70ea07b8ed2ee205cc361f932433542ef3fe60405160405180910390a4505050565b6060610bdb856110d7565b600080876001600160a01b031686610bf58b8a898961113d565b604051610c029190611906565b60006040518083038160008787f1925050503d8060008114610c40576040519150601f19603f3d011682016040523d82523d6000602084013e610c45565b606091505b509092509050610c56603f87611a9a565b5a11610c6457610c64611aae565b610ca482826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061116d565b9998505050505050505050565b6000606060007fd81bbfcee722494b885e891546eeac23d0eedcd44038d7a2f6ef9ec2f9e0d2398686604051602001610ceb929190611ac4565b60405160208183030381529060405280519060200120604051602001610d1b929190918252602082015260400190565b60408051808303601f190181528282528051602090910120600280845260608401909252925060009190816020015b6060815260200190600190039081610d4a57905050905086868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250855186945090925015159050610dab57610dab611858565b6020026020010181905250604051806040016040528060038152602001621e9a5b60ea1b81525081600181518110610de557610de5611858565b60209081029190910181019190915260008381526065909152604080822080546001600160a01b0319166001600160a01b03898116919091179091556067549151635cd7e3b360e01b8152911691635cd7e3b391610e4e91309186918991829190600401611b29565b600060405180830381600087803b158015610e6857600080fd5b505af1158015610e7c573d6000803e3d6000fd5b50505050846001600160a01b0316827f08717469d38a4b02325ea6637978c7952f94d3d8fc7848994f618ddbf4d637f18989604051610ebc929190611b88565b60405180910390a35095945050505050565b303303610ee157610ede816111a6565b50565b610ede816110d7565b6060600082610efb60016020611bb7565b60ff1660208110610f0e57610f0e611858565b1a9050610f1c600282611bd0565b60ff1615610f2b576003610f2e565b60025b84604051602001610f5892919060f89290921b6001600160f81b0319168252600182015260210190565b60405160208183030381529060405291505092915050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015610fb7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fdb9190611922565b905060006110898660600151805190602001208688602001516040516020016110299392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156110af575085516110af906001600160a01b031682866111d0565b9695505050505050565b60003033036110cf575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a83815602082015290810182905260009060600160405160208183030381529060405280519060200120905061112c8190565b54611138906001611bf2565b905550565b606082858560405160200161115493929190611c05565b6040516020818303038152906040529050949350505050565b6060831561117c5750816104e7565b82511561118c5782518084602001fd5b8160405162461bcd60e51b81526004016103609190611692565b6111ae611312565b8114610ede57604051635637b6af60e11b815260048101829052602401610360565b60008060006111df8585611325565b909250905060008160048111156111f8576111f8611c44565b1480156112165750856001600160a01b0316826001600160a01b0316145b15611226576001925050506104e7565b600080876001600160a01b0316631626ba7e60e01b888860405160240161124e929190611c5a565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161128c9190611906565b600060405180830381855afa9150503d80600081146112c7576040519150601f19603f3d011682016040523d82523d6000602084013e6112cc565b606091505b50915091508180156112df575080516020145b801561130657508051630b135d3f60e11b906113049083016020908101908401611922565b145b98975050505050505050565b60003033036110d45750601f1936013590565b600080825160410361135b5760208301516040840151606085015160001a61134f8782858561136a565b94509450505050611363565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08311156113a1575060009050600361144e565b8460ff16601b141580156113b957508460ff16601c14155b156113ca575060009050600461144e565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa15801561141e573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166114475760006001925092505061144e565b9150600090505b94509492505050565b6001600160a01b0381168114610ede57600080fd5b60008083601f84011261147e57600080fd5b50813567ffffffffffffffff81111561149657600080fd5b60208301915083602082850101111561136357600080fd5b6000806000806000608086880312156114c657600080fd5b85356114d181611457565b945060208601356114e181611457565b935060408601359250606086013567ffffffffffffffff81111561150457600080fd5b6115108882890161146c565b969995985093965092949392505050565b60008083601f84011261153357600080fd5b50813567ffffffffffffffff81111561154b57600080fd5b6020830191508360208260051b850101111561136357600080fd5b60008060008060006080868803121561157e57600080fd5b853567ffffffffffffffff81111561159557600080fd5b6115a188828901611521565b909650945050602086013592506040860135915060608601356115c381611457565b809150509295509295909350565b6000806000604084860312156115e657600080fd5b833567ffffffffffffffff808211156115fe57600080fd5b908501906080828803121561161257600080fd5b9093506020850135908082111561162857600080fd5b506116358682870161146c565b9497909650939450505050565b60005b8381101561165d578181015183820152602001611645565b50506000910152565b6000815180845261167e816020860160208601611642565b601f01601f19169290920160200192915050565b6020815260006104e76020830184611666565b6000806000604084860312156116ba57600080fd5b833567ffffffffffffffff8111156116d157600080fd5b6116dd8682870161146c565b90945092505060208401356116f181611457565b809150509250925092565b6000806040838503121561170f57600080fd5b823561171a81611457565b9150602083013561172a81611457565b809150509250929050565b60006020828403121561174757600080fd5b81356104e781611457565b60006020828403121561176457600080fd5b5035919050565b6000806040838503121561177e57600080fd5b50508035926020909101359150565b600080600080608085870312156117a357600080fd5b84359350602085013592506040850135915060608501356117c381611457565b939692955090935050565b6000806000604084860312156117e357600080fd5b83356117ee81611457565b9250602084013567ffffffffffffffff81111561180a57600080fd5b61163586828701611521565b6000806020838503121561182957600080fd5b823567ffffffffffffffff81111561184057600080fd5b61184c85828601611521565b90969095509350505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000600182016118965761189661186e565b5060010190565b6000808335601e198436030181126118b457600080fd5b83018035915067ffffffffffffffff8211156118cf57600080fd5b60200191503681900382131561136357600080fd5b6000602082840312156118f657600080fd5b815180151581146104e757600080fd5b60008251611918818460208701611642565b9190910192915050565b60006020828403121561193457600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff811182821017156119745761197461193b565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156119a3576119a361193b565b604052919050565b6000608082360312156119bd57600080fd5b6119c5611951565b82356119d081611457565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff80821115611a0157600080fd5b9085019036601f830112611a1457600080fd5b813581811115611a2657611a2661193b565b611a38601f8201601f1916850161197a565b91508082523684828501011115611a4e57600080fd5b808484018584013760009082019093019290925250606082015292915050565b60008235603e1983360301811261191857600080fd5b634e487b7160e01b600052601260045260246000fd5b600082611aa957611aa9611a84565b500490565b634e487b7160e01b600052600160045260246000fd5b8183823760009101908152919050565b600081518084526020808501808196508360051b8101915082860160005b85811015611b1c578284038952611b0a848351611666565b98850198935090840190600101611af2565b5091979650505050505050565b6001600160a01b038616815260a060208201819052600090611b4d90830187611ad4565b8281036040840152611b5f8187611ad4565b90508281036060840152611b738186611ad4565b91505082151560808301529695505050505050565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b60ff82811682821603908111156107af576107af61186e565b600060ff831680611be357611be3611a84565b8060ff84160691505092915050565b808201808211156107af576107af61186e565b60008451611c17818460208901611642565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b600052602160045260246000fd5b8281526040602082015260006105d7604083018461166656fea164736f6c6343000811000a"; +const isSuperArgs = (xs) => xs.length > 1; +class ZilliqaRecover__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(overrides) { + return super.getDeployTransaction(overrides || {}); + } + deploy(overrides) { + return super.deploy(overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.ZilliqaRecover__factory = ZilliqaRecover__factory; +ZilliqaRecover__factory.bytecode = _bytecode; +ZilliqaRecover__factory.abi = _abi; diff --git a/dist/types/factories/contracts/custody/index.d.ts b/dist/types/factories/contracts/custody/index.d.ts new file mode 100644 index 00000000..c42d3a60 --- /dev/null +++ b/dist/types/factories/contracts/custody/index.d.ts @@ -0,0 +1,4 @@ +export { ENSCustody__factory } from "./ENSCustody__factory"; +export { IENSCustody__factory } from "./IENSCustody__factory"; +export { ZilliqaRecover__factory } from "./ZilliqaRecover__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/custody/index.d.ts.map b/dist/types/factories/contracts/custody/index.d.ts.map new file mode 100644 index 00000000..df8de20d --- /dev/null +++ b/dist/types/factories/contracts/custody/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/custody/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/contracts/custody/index.js b/dist/types/factories/contracts/custody/index.js new file mode 100644 index 00000000..08ca206c --- /dev/null +++ b/dist/types/factories/contracts/custody/index.js @@ -0,0 +1,9 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ZilliqaRecover__factory = exports.IENSCustody__factory = exports.ENSCustody__factory = void 0; +var ENSCustody__factory_1 = require("./ENSCustody__factory"); +Object.defineProperty(exports, "ENSCustody__factory", { enumerable: true, get: function () { return ENSCustody__factory_1.ENSCustody__factory; } }); +var IENSCustody__factory_1 = require("./IENSCustody__factory"); +Object.defineProperty(exports, "IENSCustody__factory", { enumerable: true, get: function () { return IENSCustody__factory_1.IENSCustody__factory; } }); +var ZilliqaRecover__factory_1 = require("./ZilliqaRecover__factory"); +Object.defineProperty(exports, "ZilliqaRecover__factory", { enumerable: true, get: function () { return ZilliqaRecover__factory_1.ZilliqaRecover__factory; } }); diff --git a/dist/types/factories/contracts/history/IUNSRegistryV07__factory.d.ts b/dist/types/factories/contracts/history/IUNSRegistryV07__factory.d.ts new file mode 100644 index 00000000..b85c4f56 --- /dev/null +++ b/dist/types/factories/contracts/history/IUNSRegistryV07__factory.d.ts @@ -0,0 +1,895 @@ +import { type ContractRunner } from "ethers"; +import type { IUNSRegistryV07, IUNSRegistryV07Interface } from "../../../contracts/history/IUNSRegistryV07"; +export declare class IUNSRegistryV07__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "address"; + readonly name: "previousAdmin"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "address"; + readonly name: "newAdmin"; + readonly type: "address"; + }]; + readonly name: "AdminChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "approved"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Approval"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "ApprovalForAll"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly indexed: true; + readonly internalType: "string"; + readonly name: "keyIndex"; + readonly type: "string"; + }, { + readonly indexed: false; + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }]; + readonly name: "NewKey"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly indexed: false; + readonly internalType: "string"; + readonly name: "uri"; + readonly type: "string"; + }]; + readonly name: "NewURI"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "string"; + readonly name: "prefix"; + readonly type: "string"; + }]; + readonly name: "NewURIPrefix"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }]; + readonly name: "RemoveReverse"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "ResetRecords"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly indexed: true; + readonly internalType: "string"; + readonly name: "keyIndex"; + readonly type: "string"; + }, { + readonly indexed: true; + readonly internalType: "string"; + readonly name: "valueIndex"; + readonly type: "string"; + }, { + readonly indexed: false; + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }, { + readonly indexed: false; + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }]; + readonly name: "Set"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "SetReverse"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Transfer"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "implementation"; + readonly type: "address"; + }]; + readonly name: "Upgraded"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }]; + readonly name: "addProxyReader"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "approve"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "balanceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "balance"; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "burn"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "user"; + readonly type: "address"; + }, { + readonly internalType: "bytes"; + readonly name: "depositData"; + readonly type: "bytes"; + }]; + readonly name: "deposit"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "depositToPolygon"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "exists"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "get"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getApproved"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "keyHash"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getByHash"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }, { + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getMany"; + readonly outputs: readonly [{ + readonly internalType: "string[]"; + readonly name: ""; + readonly type: "string[]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256[]"; + readonly name: "keyHashes"; + readonly type: "uint256[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getManyByHash"; + readonly outputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly name: "isApprovedForAll"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "spender"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "isApprovedOrOwner"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "user"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "mint"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "user"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "metaData"; + readonly type: "bytes"; + }]; + readonly name: "mint"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "string"; + readonly name: "uri"; + readonly type: "string"; + }]; + readonly name: "mintTLD"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "string[]"; + readonly name: "labels"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }, { + readonly internalType: "bool"; + readonly name: "withReverse"; + readonly type: "bool"; + }]; + readonly name: "mintWithRecords"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "name"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "labels"; + readonly type: "string[]"; + }]; + readonly name: "namehash"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "pure"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "onERC721Received"; + readonly outputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: ""; + readonly type: "bytes4"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "ownerOf"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "reconfigure"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "removeReverse"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "reset"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "resolverOf"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }]; + readonly name: "reverseNameOf"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }]; + readonly name: "reverseOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }, { + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "set"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly internalType: "bool"; + readonly name: "_approved"; + readonly type: "bool"; + }]; + readonly name: "setApprovalForAll"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "keyHash"; + readonly type: "uint256"; + }, { + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "setByHash"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "setMany"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256[]"; + readonly name: "keyHashes"; + readonly type: "uint256[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "setManyByHash"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "setOwner"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "labels"; + readonly type: "string[]"; + }]; + readonly name: "setReverse"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "prefix"; + readonly type: "string"; + }]; + readonly name: "setTokenURIPrefix"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "symbol"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "tokenURI"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "transferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "string[]"; + readonly name: "labels"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }, { + readonly internalType: "bool"; + readonly name: "withReverse"; + readonly type: "bool"; + }]; + readonly name: "unlockWithRecords"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes"; + readonly name: "inputData"; + readonly type: "bytes"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }]; + readonly name: "withdrawFromPolygon"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): IUNSRegistryV07Interface; + static connect(address: string, runner?: ContractRunner | null): IUNSRegistryV07; +} +//# sourceMappingURL=IUNSRegistryV07__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/history/IUNSRegistryV07__factory.d.ts.map b/dist/types/factories/contracts/history/IUNSRegistryV07__factory.d.ts.map new file mode 100644 index 00000000..ab564b88 --- /dev/null +++ b/dist/types/factories/contracts/history/IUNSRegistryV07__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IUNSRegistryV07__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/history/IUNSRegistryV07__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,eAAe,EACf,wBAAwB,EACzB,MAAM,4CAA4C,CAAC;AAkoCpD,qBAAa,wBAAwB;IACnC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,wBAAwB;IAGlD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,eAAe;CAGnB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/history/IUNSRegistryV07__factory.js b/dist/types/factories/contracts/history/IUNSRegistryV07__factory.js new file mode 100644 index 00000000..c9552b22 --- /dev/null +++ b/dist/types/factories/contracts/history/IUNSRegistryV07__factory.js @@ -0,0 +1,1165 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IUNSRegistryV07__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "previousAdmin", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "newAdmin", + type: "address", + }, + ], + name: "AdminChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "approved", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Approval", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "ApprovalForAll", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + indexed: true, + internalType: "string", + name: "keyIndex", + type: "string", + }, + { + indexed: false, + internalType: "string", + name: "key", + type: "string", + }, + ], + name: "NewKey", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + indexed: false, + internalType: "string", + name: "uri", + type: "string", + }, + ], + name: "NewURI", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "string", + name: "prefix", + type: "string", + }, + ], + name: "NewURIPrefix", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "RemoveReverse", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "ResetRecords", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + indexed: true, + internalType: "string", + name: "keyIndex", + type: "string", + }, + { + indexed: true, + internalType: "string", + name: "valueIndex", + type: "string", + }, + { + indexed: false, + internalType: "string", + name: "key", + type: "string", + }, + { + indexed: false, + internalType: "string", + name: "value", + type: "string", + }, + ], + name: "Set", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "addr", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "SetReverse", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Transfer", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "implementation", + type: "address", + }, + ], + name: "Upgraded", + type: "event", + }, + { + inputs: [ + { + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "addProxyReader", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "approve", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "balance", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "burn", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "user", + type: "address", + }, + { + internalType: "bytes", + name: "depositData", + type: "bytes", + }, + ], + name: "deposit", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "depositToPolygon", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "exists", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "key", + type: "string", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "get", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getApproved", + outputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "keyHash", + type: "uint256", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getByHash", + outputs: [ + { + internalType: "string", + name: "key", + type: "string", + }, + { + internalType: "string", + name: "value", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getMany", + outputs: [ + { + internalType: "string[]", + name: "", + type: "string[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256[]", + name: "keyHashes", + type: "uint256[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getManyByHash", + outputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + name: "isApprovedForAll", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "spender", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "isApprovedOrOwner", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "user", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "mint", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "user", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "metaData", + type: "bytes", + }, + ], + name: "mint", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "string", + name: "uri", + type: "string", + }, + ], + name: "mintTLD", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "string[]", + name: "labels", + type: "string[]", + }, + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + { + internalType: "bool", + name: "withReverse", + type: "bool", + }, + ], + name: "mintWithRecords", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "name", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string[]", + name: "labels", + type: "string[]", + }, + ], + name: "namehash", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "pure", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "onERC721Received", + outputs: [ + { + internalType: "bytes4", + name: "", + type: "bytes4", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "ownerOf", + outputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "reconfigure", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "removeReverse", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "reset", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "resolverOf", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "reverseNameOf", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "reverseOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "key", + type: "string", + }, + { + internalType: "string", + name: "value", + type: "string", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "set", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "bool", + name: "_approved", + type: "bool", + }, + ], + name: "setApprovalForAll", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "keyHash", + type: "uint256", + }, + { + internalType: "string", + name: "value", + type: "string", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "setByHash", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "setMany", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256[]", + name: "keyHashes", + type: "uint256[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "setManyByHash", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "setOwner", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string[]", + name: "labels", + type: "string[]", + }, + ], + name: "setReverse", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "prefix", + type: "string", + }, + ], + name: "setTokenURIPrefix", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "symbol", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "tokenURI", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "transferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "string[]", + name: "labels", + type: "string[]", + }, + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + { + internalType: "bool", + name: "withReverse", + type: "bool", + }, + ], + name: "unlockWithRecords", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes", + name: "inputData", + type: "bytes", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + ], + name: "withdrawFromPolygon", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +class IUNSRegistryV07__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IUNSRegistryV07__factory = IUNSRegistryV07__factory; +IUNSRegistryV07__factory.abi = _abi; diff --git a/dist/types/factories/contracts/history/ProxyReaderV04__factory.d.ts b/dist/types/factories/contracts/history/ProxyReaderV04__factory.d.ts new file mode 100644 index 00000000..69609797 --- /dev/null +++ b/dist/types/factories/contracts/history/ProxyReaderV04__factory.d.ts @@ -0,0 +1,477 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../common"; +import type { ProxyReaderV04, ProxyReaderV04Interface } from "../../../contracts/history/ProxyReaderV04"; +declare type ProxyReaderV04ConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class ProxyReaderV04__factory extends ContractFactory { + constructor(...args: ProxyReaderV04ConstructorParams); + getDeployTransaction(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): ProxyReaderV04__factory; + static readonly bytecode = "0x608060405234801561001057600080fd5b50612c48806100206000396000f3fe608060405234801561001057600080fd5b506004361061018e5760003560e01c8063869b8884116100de578063b3f9e4cb11610097578063c15ae7cf11610071578063c15ae7cf14610410578063c87b56dd14610430578063e985e9c514610443578063ffa1ad741461045657600080fd5b8063b3f9e4cb146103c9578063b85afd28146103dc578063bebec6b4146103fd57600080fd5b8063869b8884146102ff57806391015f6b14610322578063933c051d14610344578063a3f4df7e14610366578063a81ce6f914610396578063ac9650d8146103a957600080fd5b8063430c20811161014b5780636352211e116101255780636352211e146102a5578063672b9f81146102b857806370a08231146102d95780637e37479e146102ec57600080fd5b8063430c20811461026a578063485cc9551461027d5780634f558e791461029257600080fd5b806301ffc9a71461019357806303280755146101bb578063081812fc146101de5780631bd8cc1a146102095780631be5e7ed14610229578063276fabb114610249575b600080fd5b6101a66101a1366004612046565b61047a565b60405190151581526020015b60405180910390f35b6101ce6101c93660046120b4565b6104e7565b6040516101b294939291906121a7565b6101f16101ec3660046121f0565b61050a565b6040516001600160a01b0390911681526020016101b2565b61021c6102173660046120b4565b61060f565b6040516101b29190612209565b61023c61023736600461221c565b61062e565b6040516101b29190612293565b61025c6102573660046122a6565b610759565b6040519081526020016101b2565b6101a66102783660046122ff565b6107cd565b61029061028b36600461232b565b6108e0565b005b6101a66102a03660046121f0565b610a30565b6101f16102b33660046121f0565b610a3b565b6102cb6102c6366004612364565b610a46565b6040516101b2929190612386565b61025c6102e73660046123ab565b610b76565b61025c6102fa3660046123ab565b610c74565b61031261030d3660046123c8565b610ce3565b6040516101b2949392919061250f565b6103356103303660046120b4565b610ed9565b6040516101b29392919061255c565b6103576103523660046123c8565b610ef9565b6040516101b293929190612588565b61023c604051806040016040528060118152602001702aa7299d10283937bc3c902932b0b232b960791b81525081565b6101f16103a43660046121f0565b611082565b6103bc6103b73660046122a6565b611150565b6040516101b291906125cb565b6101f16103d73660046121f0565b611244565b6103ef6103ea3660046120b4565b6112ca565b6040516101b292919061262d565b61023c61040b3660046123ab565b6114a6565b61042361041e3660046122a6565b61151a565b6040516101b29190612652565b61023c61043e3660046121f0565b6115c8565b6101a661045136600461232b565b61169a565b61023c60405180604001604052806005815260200164302e342e3160d81b81525081565b60006001600160e01b031982166362526e6360e01b14806104ab57506001600160e01b03198216636fa624af60e11b145b806104c657506001600160e01b031982166308da864d60e31b145b806104e157506301ffc9a760e01b6001600160e01b03198316145b92915050565b6000806060806104f88787876116e5565b93509350935093505b93509350935093565b600061051582611947565b61052157506000919050565b61052a826119df565b6105a15760665460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa158015610578573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061059c9190612665565b6104e1565b60655460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa1580156105eb573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104e19190612665565b606061062461061e8486612712565b83611a26565b90505b9392505050565b6060610639826119df565b156106be57606554604051631be5e7ed60e01b81526001600160a01b0390911690631be5e7ed90610672908790879087906004016127ef565b600060405180830381865afa15801561068f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106b79190810190612858565b9050610627565b60006106c983611ba9565b90506001600160a01b0381163b1561075157604051631be5e7ed60e01b81526001600160a01b03821690631be5e7ed9061070b908890889088906004016127ef565b600060405180830381865afa92505050801561074957506040513d6000823e601f3d908101601f191682016040526107469190810190612858565b60015b156107515791505b509392505050565b60655460405163276fabb160e01b81526000916001600160a01b03169063276fabb19061078c908690869060040161291d565b602060405180830381865afa1580156107a9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106279190612931565b60006107d882611947565b6107e4575060006104e1565b6107ed826119df565b61086b5760665460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610842573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610866919061294a565b610627565b60655460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa1580156108bc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610627919061294a565b600054610100900460ff16158080156109005750600054600160ff909116105b8061091a5750303b15801561091a575060005460ff166001145b6109825760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff1916600117905580156109a5576000805461ff0019166101001790555b606580546001600160a01b038086166001600160a01b03199283161790925560668054928516929091169190911790556109dd611c1c565b6109e5611c1c565b8015610a2b576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b60006104e182611947565b60006104e182611c89565b606080610a52836119df565b15610ad85760655460405163672b9f8160e01b815260048101869052602481018590526001600160a01b039091169063672b9f8190604401600060405180830381865afa158015610aa7573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610acf919081019061296c565b91509150610b6f565b6000610ae384611ba9565b90506001600160a01b0381163b15610b6d5760405163672b9f8160e01b815260048101869052602481018590526001600160a01b0382169063672b9f8190604401600060405180830381865afa925050508015610b6257506040513d6000823e601f3d908101601f19168201604052610b5f919081019061296c565b60015b15610b6d5790935091505b505b9250929050565b6065546040516370a0823160e01b81526001600160a01b03838116600483015260009283929116906370a0823190602401602060405180830381865afa158015610bc4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610be89190612931565b6066549091506001600160a01b0316156104e1576066546040516370a0823160e01b81526001600160a01b038581166004830152909116906370a0823190602401602060405180830381865afa158015610c46573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c6a9190612931565b61062790826129e5565b606554604051633f1ba3cf60e11b81526001600160a01b0383811660048301526000921690637e37479e90602401602060405180830381865afa158015610cbf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104e19190612931565b6060808080846001600160401b03811115610d0057610d00612682565b604051908082528060200260200182016040528015610d29578160200160208202803683370190505b509350846001600160401b03811115610d4457610d44612682565b604051908082528060200260200182016040528015610d6d578160200160208202803683370190505b509250846001600160401b03811115610d8857610d88612682565b604051908082528060200260200182016040528015610dbb57816020015b6060815260200190600190039081610da65790505b509150846001600160401b03811115610dd657610dd6612682565b604051908082528060200260200182016040528015610e0957816020015b6060815260200190600190039081610df45790505b50905060005b85811015610ecd57610e3a8989898985818110610e2e57610e2e6129f8565b905060200201356116e5565b888581518110610e4c57610e4c6129f8565b60200260200101888681518110610e6557610e656129f8565b60200260200101888781518110610e7e57610e7e6129f8565b60200260200101888881518110610e9757610e976129f8565b6020908102919091010193909352929091526001600160a01b039283169091529116905280610ec581612a0e565b915050610e0f565b50945094509450949050565b6000806060610ee9868686611caa565b9250925092505b93509350939050565b60608080836001600160401b03811115610f1557610f15612682565b604051908082528060200260200182016040528015610f3e578160200160208202803683370190505b509250836001600160401b03811115610f5957610f59612682565b604051908082528060200260200182016040528015610f82578160200160208202803683370190505b509150836001600160401b03811115610f9d57610f9d612682565b604051908082528060200260200182016040528015610fd057816020015b6060815260200190600190039081610fbb5790505b50905060005b84811015611077576110018888888885818110610ff557610ff56129f8565b90506020020135611caa565b868481518110611013576110136129f8565b6020026020010186858151811061102c5761102c6129f8565b60200260200101868681518110611045576110456129f8565b60209081029190910101929092526001600160a01b03928316909152911690528061106f81612a0e565b915050610fd6565b509450945094915050565b606554604051634f558e7960e01b8152600481018390526000916001600160a01b031690634f558e7990602401602060405180830381865afa1580156110cc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110f0919061294a565b156111065750506065546001600160a01b031690565b6066546001600160a01b0316158015906111325750600061112683611eb5565b6001600160a01b031614155b156111485750506066546001600160a01b031690565b506000919050565b6060816001600160401b0381111561116a5761116a612682565b60405190808252806020026020018201604052801561119d57816020015b60608152602001906001900390816111885790505b50905060005b8281101561123d5761120d308585848181106111c1576111c16129f8565b90506020028101906111d39190612a27565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611ee792505050565b82828151811061121f5761121f6129f8565b6020026020010181905250808061123590612a0e565b9150506111a3565b5092915050565b600061124f82611947565b61125b57506000919050565b611264826119df565b6112995760665460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb9060240161055b565b60655460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb906024016105ce565b606080836001600160401b038111156112e5576112e5612682565b60405190808252806020026020018201604052801561131857816020015b60608152602001906001900390816113035790505b509150836001600160401b0381111561133357611333612682565b60405190808252806020026020018201604052801561136657816020015b60608152602001906001900390816113515790505b509050611372836119df565b156113f95760655460405163170b5fa560e31b81526001600160a01b039091169063b85afd28906113ab90889088908890600401612a6d565b600060405180830381865afa1580156113c8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526113f09190810190612b35565b9150915061149e565b600061140484611ba9565b90506001600160a01b0381163b1515801561141e57508415155b1561149c5760405163170b5fa560e31b81526001600160a01b0382169063b85afd289061145390899089908990600401612a6d565b600060405180830381865afa92505050801561149157506040513d6000823e601f3d908101601f1916820160405261148e9190810190612b35565b60015b1561149c5790935091505b505b935093915050565b606554604051632fafb1ad60e21b81526001600160a01b038381166004830152606092169063bebec6b4906024015b600060405180830381865afa1580156114f2573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526104e19190810190612858565b6060816001600160401b0381111561153457611534612682565b60405190808252806020026020018201604052801561155d578160200160208202803683370190505b50905060005b8281101561123d5761158c848483818110611580576115806129f8565b90506020020135611c89565b82828151811061159e5761159e6129f8565b6001600160a01b0390921660209283029190910190910152806115c081612a0e565b915050611563565b60606115d382611947565b6115eb57505060408051602081019091526000815290565b6115f4826119df565b6116695760665460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401600060405180830381865afa158015611641573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261059c9190810190612858565b60655460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd906024016114d5565b60405162461bcd60e51b815260206004820152601f60248201527f50726f78795265616465723a20554e535550504f525445445f4d4554484f44006044820152600090606401610979565b600080606080856001600160401b0381111561170357611703612682565b60405190808252806020026020018201604052801561173657816020015b60608152602001906001900390816117215790505b509150856001600160401b0381111561175157611751612682565b60405190808252806020026020018201604052801561178457816020015b606081526020019060019003908161176f5790505b509050611790856119df565b156118915760655460405163b3f9e4cb60e01b8152600481018790526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa1580156117de573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118029190612665565b935061180d85611fdb565b60655460405163170b5fa560e31b81529194506001600160a01b03169063b85afd2890611842908a908a908a90600401612a6d565b600060405180830381865afa15801561185f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526118879190810190612b35565b9092509050610501565b61189a85611ba9565b93506118a585611eb5565b92506001600160a01b0384163b151580156118c1575060008251115b156105015760405163170b5fa560e31b81526001600160a01b0385169063b85afd28906118f6908a908a908a90600401612a6d565b600060405180830381865afa92505050801561193457506040513d6000823e601f3d908101601f191682016040526119319190810190612b35565b60015b1561050157909250905093509350935093565b6000611952826119df565b61197157600061196183611eb5565b6001600160a01b031614156104e1565b606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e79906024015b602060405180830381865afa1580156119bb573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104e1919061294a565b6066546000906001600160a01b031615806104e15750606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e799060240161199e565b606082516001600160401b03811115611a4157611a41612682565b604051908082528060200260200182016040528015611a7457816020015b6060815260200190600190039081611a5f5790505b509050611a80826119df565b15611b0357606554604051630dec660d60e11b81526001600160a01b0390911690631bd8cc1a90611ab79086908690600401612b8e565b600060405180830381865afa158015611ad4573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611afc9190810190612bb0565b90506104e1565b6000611b0e83611ba9565b90506001600160a01b0381163b15158015611b2a575060008451115b1561123d57604051630dec660d60e11b81526001600160a01b03821690631bd8cc1a90611b5d9087908790600401612b8e565b600060405180830381865afa925050508015611b9b57506040513d6000823e601f3d908101601f19168201604052611b989190810190612bb0565b60015b1561123d575b949350505050565b60665460405163b3f9e4cb60e01b8152600481018390526000916001600160a01b03169063b3f9e4cb906024015b602060405180830381865afa925050508015611c10575060408051601f3d908101601f19168201909252611c0d91810190612665565b60015b6104e157506000919050565b600054610100900460ff16611c875760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608401610979565b565b6000611c94826119df565b611ca15761059c82611eb5565b6104e182611fdb565b6000806060846001600160401b03811115611cc757611cc7612682565b604051908082528060200260200182016040528015611cfa57816020015b6060815260200190600190039081611ce55790505b509050611d06846119df565b15611e045760655460405163b3f9e4cb60e01b8152600481018690526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa158015611d54573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d789190612665565b9250611d8384611fdb565b606554604051630dec660d60e11b81529193506001600160a01b031690631bd8cc1a90611db890899089908990600401612be4565b600060405180830381865afa158015611dd5573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611dfd9190810190612bb0565b9050610ef0565b611e0d84611ba9565b9250611e1884611eb5565b91506001600160a01b0383163b15158015611e3257508415155b15610ef057604051630dec660d60e11b81526001600160a01b03841690631bd8cc1a90611e6790899089908990600401612be4565b600060405180830381865afa925050508015611ea557506040513d6000823e601f3d908101601f19168201604052611ea29190810190612bb0565b60015b15610ef057905093509350939050565b6066546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401611bd7565b60606001600160a01b0383163b611f4f5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b6064820152608401610979565b600080846001600160a01b031684604051611f6a9190612bf8565b600060405180830381855af49150503d8060008114611fa5576040519150601f19603f3d011682016040523d82523d6000602084013e611faa565b606091505b5091509150611fd28282604051806060016040528060278152602001612c156027913961200d565b95945050505050565b6065546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401611bd7565b6060831561201c575081610627565b82511561202c5782518084602001fd5b8160405162461bcd60e51b81526004016109799190612293565b60006020828403121561205857600080fd5b81356001600160e01b03198116811461062757600080fd5b60008083601f84011261208257600080fd5b5081356001600160401b0381111561209957600080fd5b6020830191508360208260051b8501011115610b6f57600080fd5b6000806000604084860312156120c957600080fd5b83356001600160401b038111156120df57600080fd5b6120eb86828701612070565b909790965060209590950135949350505050565b60005b8381101561211a578181015183820152602001612102565b50506000910152565b6000815180845261213b8160208601602086016120ff565b601f01601f19169290920160200192915050565b600082825180855260208086019550808260051b84010181860160005b8481101561219a57601f19868403018952612188838351612123565b9884019892509083019060010161216c565b5090979650505050505050565b6001600160a01b038581168252841660208201526080604082018190526000906121d39083018561214f565b82810360608401526121e5818561214f565b979650505050505050565b60006020828403121561220257600080fd5b5035919050565b602081526000610627602083018461214f565b60008060006040848603121561223157600080fd5b83356001600160401b038082111561224857600080fd5b818601915086601f83011261225c57600080fd5b81358181111561226b57600080fd5b87602082850101111561227d57600080fd5b6020928301989097509590910135949350505050565b6020815260006106276020830184612123565b600080602083850312156122b957600080fd5b82356001600160401b038111156122cf57600080fd5b6122db85828601612070565b90969095509350505050565b6001600160a01b03811681146122fc57600080fd5b50565b6000806040838503121561231257600080fd5b823561231d816122e7565b946020939093013593505050565b6000806040838503121561233e57600080fd5b8235612349816122e7565b91506020830135612359816122e7565b809150509250929050565b6000806040838503121561237757600080fd5b50508035926020909101359150565b6040815260006123996040830185612123565b8281036020840152611fd28185612123565b6000602082840312156123bd57600080fd5b8135610627816122e7565b600080600080604085870312156123de57600080fd5b84356001600160401b03808211156123f557600080fd5b61240188838901612070565b9096509450602087013591508082111561241a57600080fd5b5061242787828801612070565b95989497509550505050565b600081518084526020808501945080840160005b8381101561246c5781516001600160a01b031687529582019590820190600101612447565b509495945050505050565b600081518084526020808501808196506005915083821b81018387016000805b87811015612500578484038b5282518051808652908801908886019080891b87018a01855b828110156124ea57601f198983030184526124d8828651612123565b948c0194938c019391506001016124bc565b509d8a019d965050509287019250600101612497565b50919998505050505050505050565b6080815260006125226080830187612433565b82810360208401526125348187612433565b905082810360408401526125488186612477565b905082810360608401526121e58185612477565b6001600160a01b03848116825283166020820152606060408201819052600090611fd29083018461214f565b60608152600061259b6060830186612433565b82810360208401526125ad8186612433565b905082810360408401526125c18185612477565b9695505050505050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b8281101561262057603f1988860301845261260e858351612123565b945092850192908501906001016125f2565b5092979650505050505050565b604081526000612640604083018561214f565b8281036020840152611fd2818561214f565b6020815260006106276020830184612433565b60006020828403121561267757600080fd5b8151610627816122e7565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b03811182821017156126c0576126c0612682565b604052919050565b60006001600160401b038211156126e1576126e1612682565b5060051b60200190565b60006001600160401b0382111561270457612704612682565b50601f01601f191660200190565b6000612725612720846126c8565b612698565b80848252602080830192508560051b85013681111561274357600080fd5b855b818110156127ba5780356001600160401b038111156127645760008081fd5b870136601f8201126127765760008081fd5b8035612784612720826126eb565b81815236868385010111156127995760008081fd5b81868401878301376000918101860191909152865250938201938201612745565b50919695505050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b6040815260006128036040830185876127c6565b9050826020830152949350505050565b600082601f83011261282457600080fd5b8151612832612720826126eb565b81815284602083860101111561284757600080fd5b611ba18260208301602087016120ff565b60006020828403121561286a57600080fd5b81516001600160401b0381111561288057600080fd5b611ba184828501612813565b81835260006020808501808196508560051b810191508460005b878110156129105782840389528135601e198836030181126128c757600080fd5b870185810190356001600160401b038111156128e257600080fd5b8036038213156128f157600080fd5b6128fc8682846127c6565b9a87019a95505050908401906001016128a6565b5091979650505050505050565b60208152600061062460208301848661288c565b60006020828403121561294357600080fd5b5051919050565b60006020828403121561295c57600080fd5b8151801515811461062757600080fd5b6000806040838503121561297f57600080fd5b82516001600160401b038082111561299657600080fd5b6129a286838701612813565b935060208501519150808211156129b857600080fd5b506129c585828601612813565b9150509250929050565b634e487b7160e01b600052601160045260246000fd5b808201808211156104e1576104e16129cf565b634e487b7160e01b600052603260045260246000fd5b600060018201612a2057612a206129cf565b5060010190565b6000808335601e19843603018112612a3e57600080fd5b8301803591506001600160401b03821115612a5857600080fd5b602001915036819003821315610b6f57600080fd5b6040808252810183905260006001600160fb1b03841115612a8d57600080fd5b8360051b808660608501376020830193909352500160600192915050565b600082601f830112612abc57600080fd5b81516020612acc612720836126c8565b82815260059290921b84018101918181019086841115612aeb57600080fd5b8286015b84811015612b2a5780516001600160401b03811115612b0e5760008081fd5b612b1c8986838b0101612813565b845250918301918301612aef565b509695505050505050565b60008060408385031215612b4857600080fd5b82516001600160401b0380821115612b5f57600080fd5b612b6b86838701612aab565b93506020850151915080821115612b8157600080fd5b506129c585828601612aab565b604081526000612ba1604083018561214f565b90508260208301529392505050565b600060208284031215612bc257600080fd5b81516001600160401b03811115612bd857600080fd5b611ba184828501612aab565b60408152600061280360408301858761288c565b60008251612c0a8184602087016120ff565b919091019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a"; + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "uint8"; + readonly name: "version"; + readonly type: "uint8"; + }]; + readonly name: "Initialized"; + readonly type: "event"; + }, { + readonly inputs: readonly []; + readonly name: "NAME"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "VERSION"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "balanceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "exists"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "get"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getApproved"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "keyHash"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getByHash"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }, { + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getData"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256[]"; + readonly name: "keyHashes"; + readonly type: "uint256[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getDataByHash"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256[]"; + readonly name: "keyHashes"; + readonly type: "uint256[]"; + }, { + readonly internalType: "uint256[]"; + readonly name: "tokenIds"; + readonly type: "uint256[]"; + }]; + readonly name: "getDataByHashForMany"; + readonly outputs: readonly [{ + readonly internalType: "address[]"; + readonly name: "resolvers"; + readonly type: "address[]"; + }, { + readonly internalType: "address[]"; + readonly name: "owners"; + readonly type: "address[]"; + }, { + readonly internalType: "string[][]"; + readonly name: "keys"; + readonly type: "string[][]"; + }, { + readonly internalType: "string[][]"; + readonly name: "values"; + readonly type: "string[][]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "uint256[]"; + readonly name: "tokenIds"; + readonly type: "uint256[]"; + }]; + readonly name: "getDataForMany"; + readonly outputs: readonly [{ + readonly internalType: "address[]"; + readonly name: "resolvers"; + readonly type: "address[]"; + }, { + readonly internalType: "address[]"; + readonly name: "owners"; + readonly type: "address[]"; + }, { + readonly internalType: "string[][]"; + readonly name: "values"; + readonly type: "string[][]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getMany"; + readonly outputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256[]"; + readonly name: "keyHashes"; + readonly type: "uint256[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getManyByHash"; + readonly outputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "contract IUNSRegistry"; + readonly name: "unsRegistry"; + readonly type: "address"; + }, { + readonly internalType: "contract ICNSRegistry"; + readonly name: "cnsRegistry"; + readonly type: "address"; + }]; + readonly name: "initialize"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly name: "isApprovedForAll"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "pure"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "spender"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "isApprovedOrOwner"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes[]"; + readonly name: "data"; + readonly type: "bytes[]"; + }]; + readonly name: "multicall"; + readonly outputs: readonly [{ + readonly internalType: "bytes[]"; + readonly name: "results"; + readonly type: "bytes[]"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "labels"; + readonly type: "string[]"; + }]; + readonly name: "namehash"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "ownerOf"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256[]"; + readonly name: "tokenIds"; + readonly type: "uint256[]"; + }]; + readonly name: "ownerOfForMany"; + readonly outputs: readonly [{ + readonly internalType: "address[]"; + readonly name: "owners"; + readonly type: "address[]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "registryOf"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "resolverOf"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }]; + readonly name: "reverseNameOf"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }]; + readonly name: "reverseOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "tokenURI"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): ProxyReaderV04Interface; + static connect(address: string, runner?: ContractRunner | null): ProxyReaderV04; +} +export {}; +//# sourceMappingURL=ProxyReaderV04__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/history/ProxyReaderV04__factory.d.ts.map b/dist/types/factories/contracts/history/ProxyReaderV04__factory.d.ts.map new file mode 100644 index 00000000..2bec1804 --- /dev/null +++ b/dist/types/factories/contracts/history/ProxyReaderV04__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ProxyReaderV04__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/history/ProxyReaderV04__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,KAAK,EACV,cAAc,EACd,uBAAuB,EACxB,MAAM,2CAA2C,CAAC;AAomBnD,aAAK,+BAA+B,GAChC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,uBAAwB,SAAQ,eAAe;gBAC9C,GAAG,IAAI,EAAE,+BAA+B;IAQ3C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,uBAAuB;IAIxE,MAAM,CAAC,QAAQ,CAAC,QAAQ,wtsBAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,uBAAuB;IAGjD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,cAAc;CAGlB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/history/ProxyReaderV04__factory.js b/dist/types/factories/contracts/history/ProxyReaderV04__factory.js new file mode 100644 index 00000000..99acd98a --- /dev/null +++ b/dist/types/factories/contracts/history/ProxyReaderV04__factory.js @@ -0,0 +1,640 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ProxyReaderV04__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint8", + name: "version", + type: "uint8", + }, + ], + name: "Initialized", + type: "event", + }, + { + inputs: [], + name: "NAME", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "VERSION", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "exists", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "key", + type: "string", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "get", + outputs: [ + { + internalType: "string", + name: "value", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getApproved", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "keyHash", + type: "uint256", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getByHash", + outputs: [ + { + internalType: "string", + name: "key", + type: "string", + }, + { + internalType: "string", + name: "value", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getData", + outputs: [ + { + internalType: "address", + name: "resolver", + type: "address", + }, + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256[]", + name: "keyHashes", + type: "uint256[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getDataByHash", + outputs: [ + { + internalType: "address", + name: "resolver", + type: "address", + }, + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256[]", + name: "keyHashes", + type: "uint256[]", + }, + { + internalType: "uint256[]", + name: "tokenIds", + type: "uint256[]", + }, + ], + name: "getDataByHashForMany", + outputs: [ + { + internalType: "address[]", + name: "resolvers", + type: "address[]", + }, + { + internalType: "address[]", + name: "owners", + type: "address[]", + }, + { + internalType: "string[][]", + name: "keys", + type: "string[][]", + }, + { + internalType: "string[][]", + name: "values", + type: "string[][]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "uint256[]", + name: "tokenIds", + type: "uint256[]", + }, + ], + name: "getDataForMany", + outputs: [ + { + internalType: "address[]", + name: "resolvers", + type: "address[]", + }, + { + internalType: "address[]", + name: "owners", + type: "address[]", + }, + { + internalType: "string[][]", + name: "values", + type: "string[][]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getMany", + outputs: [ + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256[]", + name: "keyHashes", + type: "uint256[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getManyByHash", + outputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "contract IUNSRegistry", + name: "unsRegistry", + type: "address", + }, + { + internalType: "contract ICNSRegistry", + name: "cnsRegistry", + type: "address", + }, + ], + name: "initialize", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + { + internalType: "address", + name: "", + type: "address", + }, + ], + name: "isApprovedForAll", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "pure", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "spender", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "isApprovedOrOwner", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes[]", + name: "data", + type: "bytes[]", + }, + ], + name: "multicall", + outputs: [ + { + internalType: "bytes[]", + name: "results", + type: "bytes[]", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string[]", + name: "labels", + type: "string[]", + }, + ], + name: "namehash", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "ownerOf", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256[]", + name: "tokenIds", + type: "uint256[]", + }, + ], + name: "ownerOfForMany", + outputs: [ + { + internalType: "address[]", + name: "owners", + type: "address[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "registryOf", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "resolverOf", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "reverseNameOf", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "reverseOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "tokenURI", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +const _bytecode = "0x608060405234801561001057600080fd5b50612c48806100206000396000f3fe608060405234801561001057600080fd5b506004361061018e5760003560e01c8063869b8884116100de578063b3f9e4cb11610097578063c15ae7cf11610071578063c15ae7cf14610410578063c87b56dd14610430578063e985e9c514610443578063ffa1ad741461045657600080fd5b8063b3f9e4cb146103c9578063b85afd28146103dc578063bebec6b4146103fd57600080fd5b8063869b8884146102ff57806391015f6b14610322578063933c051d14610344578063a3f4df7e14610366578063a81ce6f914610396578063ac9650d8146103a957600080fd5b8063430c20811161014b5780636352211e116101255780636352211e146102a5578063672b9f81146102b857806370a08231146102d95780637e37479e146102ec57600080fd5b8063430c20811461026a578063485cc9551461027d5780634f558e791461029257600080fd5b806301ffc9a71461019357806303280755146101bb578063081812fc146101de5780631bd8cc1a146102095780631be5e7ed14610229578063276fabb114610249575b600080fd5b6101a66101a1366004612046565b61047a565b60405190151581526020015b60405180910390f35b6101ce6101c93660046120b4565b6104e7565b6040516101b294939291906121a7565b6101f16101ec3660046121f0565b61050a565b6040516001600160a01b0390911681526020016101b2565b61021c6102173660046120b4565b61060f565b6040516101b29190612209565b61023c61023736600461221c565b61062e565b6040516101b29190612293565b61025c6102573660046122a6565b610759565b6040519081526020016101b2565b6101a66102783660046122ff565b6107cd565b61029061028b36600461232b565b6108e0565b005b6101a66102a03660046121f0565b610a30565b6101f16102b33660046121f0565b610a3b565b6102cb6102c6366004612364565b610a46565b6040516101b2929190612386565b61025c6102e73660046123ab565b610b76565b61025c6102fa3660046123ab565b610c74565b61031261030d3660046123c8565b610ce3565b6040516101b2949392919061250f565b6103356103303660046120b4565b610ed9565b6040516101b29392919061255c565b6103576103523660046123c8565b610ef9565b6040516101b293929190612588565b61023c604051806040016040528060118152602001702aa7299d10283937bc3c902932b0b232b960791b81525081565b6101f16103a43660046121f0565b611082565b6103bc6103b73660046122a6565b611150565b6040516101b291906125cb565b6101f16103d73660046121f0565b611244565b6103ef6103ea3660046120b4565b6112ca565b6040516101b292919061262d565b61023c61040b3660046123ab565b6114a6565b61042361041e3660046122a6565b61151a565b6040516101b29190612652565b61023c61043e3660046121f0565b6115c8565b6101a661045136600461232b565b61169a565b61023c60405180604001604052806005815260200164302e342e3160d81b81525081565b60006001600160e01b031982166362526e6360e01b14806104ab57506001600160e01b03198216636fa624af60e11b145b806104c657506001600160e01b031982166308da864d60e31b145b806104e157506301ffc9a760e01b6001600160e01b03198316145b92915050565b6000806060806104f88787876116e5565b93509350935093505b93509350935093565b600061051582611947565b61052157506000919050565b61052a826119df565b6105a15760665460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa158015610578573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061059c9190612665565b6104e1565b60655460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa1580156105eb573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104e19190612665565b606061062461061e8486612712565b83611a26565b90505b9392505050565b6060610639826119df565b156106be57606554604051631be5e7ed60e01b81526001600160a01b0390911690631be5e7ed90610672908790879087906004016127ef565b600060405180830381865afa15801561068f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106b79190810190612858565b9050610627565b60006106c983611ba9565b90506001600160a01b0381163b1561075157604051631be5e7ed60e01b81526001600160a01b03821690631be5e7ed9061070b908890889088906004016127ef565b600060405180830381865afa92505050801561074957506040513d6000823e601f3d908101601f191682016040526107469190810190612858565b60015b156107515791505b509392505050565b60655460405163276fabb160e01b81526000916001600160a01b03169063276fabb19061078c908690869060040161291d565b602060405180830381865afa1580156107a9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106279190612931565b60006107d882611947565b6107e4575060006104e1565b6107ed826119df565b61086b5760665460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610842573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610866919061294a565b610627565b60655460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa1580156108bc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610627919061294a565b600054610100900460ff16158080156109005750600054600160ff909116105b8061091a5750303b15801561091a575060005460ff166001145b6109825760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff1916600117905580156109a5576000805461ff0019166101001790555b606580546001600160a01b038086166001600160a01b03199283161790925560668054928516929091169190911790556109dd611c1c565b6109e5611c1c565b8015610a2b576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b60006104e182611947565b60006104e182611c89565b606080610a52836119df565b15610ad85760655460405163672b9f8160e01b815260048101869052602481018590526001600160a01b039091169063672b9f8190604401600060405180830381865afa158015610aa7573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610acf919081019061296c565b91509150610b6f565b6000610ae384611ba9565b90506001600160a01b0381163b15610b6d5760405163672b9f8160e01b815260048101869052602481018590526001600160a01b0382169063672b9f8190604401600060405180830381865afa925050508015610b6257506040513d6000823e601f3d908101601f19168201604052610b5f919081019061296c565b60015b15610b6d5790935091505b505b9250929050565b6065546040516370a0823160e01b81526001600160a01b03838116600483015260009283929116906370a0823190602401602060405180830381865afa158015610bc4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610be89190612931565b6066549091506001600160a01b0316156104e1576066546040516370a0823160e01b81526001600160a01b038581166004830152909116906370a0823190602401602060405180830381865afa158015610c46573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c6a9190612931565b61062790826129e5565b606554604051633f1ba3cf60e11b81526001600160a01b0383811660048301526000921690637e37479e90602401602060405180830381865afa158015610cbf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104e19190612931565b6060808080846001600160401b03811115610d0057610d00612682565b604051908082528060200260200182016040528015610d29578160200160208202803683370190505b509350846001600160401b03811115610d4457610d44612682565b604051908082528060200260200182016040528015610d6d578160200160208202803683370190505b509250846001600160401b03811115610d8857610d88612682565b604051908082528060200260200182016040528015610dbb57816020015b6060815260200190600190039081610da65790505b509150846001600160401b03811115610dd657610dd6612682565b604051908082528060200260200182016040528015610e0957816020015b6060815260200190600190039081610df45790505b50905060005b85811015610ecd57610e3a8989898985818110610e2e57610e2e6129f8565b905060200201356116e5565b888581518110610e4c57610e4c6129f8565b60200260200101888681518110610e6557610e656129f8565b60200260200101888781518110610e7e57610e7e6129f8565b60200260200101888881518110610e9757610e976129f8565b6020908102919091010193909352929091526001600160a01b039283169091529116905280610ec581612a0e565b915050610e0f565b50945094509450949050565b6000806060610ee9868686611caa565b9250925092505b93509350939050565b60608080836001600160401b03811115610f1557610f15612682565b604051908082528060200260200182016040528015610f3e578160200160208202803683370190505b509250836001600160401b03811115610f5957610f59612682565b604051908082528060200260200182016040528015610f82578160200160208202803683370190505b509150836001600160401b03811115610f9d57610f9d612682565b604051908082528060200260200182016040528015610fd057816020015b6060815260200190600190039081610fbb5790505b50905060005b84811015611077576110018888888885818110610ff557610ff56129f8565b90506020020135611caa565b868481518110611013576110136129f8565b6020026020010186858151811061102c5761102c6129f8565b60200260200101868681518110611045576110456129f8565b60209081029190910101929092526001600160a01b03928316909152911690528061106f81612a0e565b915050610fd6565b509450945094915050565b606554604051634f558e7960e01b8152600481018390526000916001600160a01b031690634f558e7990602401602060405180830381865afa1580156110cc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110f0919061294a565b156111065750506065546001600160a01b031690565b6066546001600160a01b0316158015906111325750600061112683611eb5565b6001600160a01b031614155b156111485750506066546001600160a01b031690565b506000919050565b6060816001600160401b0381111561116a5761116a612682565b60405190808252806020026020018201604052801561119d57816020015b60608152602001906001900390816111885790505b50905060005b8281101561123d5761120d308585848181106111c1576111c16129f8565b90506020028101906111d39190612a27565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611ee792505050565b82828151811061121f5761121f6129f8565b6020026020010181905250808061123590612a0e565b9150506111a3565b5092915050565b600061124f82611947565b61125b57506000919050565b611264826119df565b6112995760665460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb9060240161055b565b60655460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb906024016105ce565b606080836001600160401b038111156112e5576112e5612682565b60405190808252806020026020018201604052801561131857816020015b60608152602001906001900390816113035790505b509150836001600160401b0381111561133357611333612682565b60405190808252806020026020018201604052801561136657816020015b60608152602001906001900390816113515790505b509050611372836119df565b156113f95760655460405163170b5fa560e31b81526001600160a01b039091169063b85afd28906113ab90889088908890600401612a6d565b600060405180830381865afa1580156113c8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526113f09190810190612b35565b9150915061149e565b600061140484611ba9565b90506001600160a01b0381163b1515801561141e57508415155b1561149c5760405163170b5fa560e31b81526001600160a01b0382169063b85afd289061145390899089908990600401612a6d565b600060405180830381865afa92505050801561149157506040513d6000823e601f3d908101601f1916820160405261148e9190810190612b35565b60015b1561149c5790935091505b505b935093915050565b606554604051632fafb1ad60e21b81526001600160a01b038381166004830152606092169063bebec6b4906024015b600060405180830381865afa1580156114f2573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526104e19190810190612858565b6060816001600160401b0381111561153457611534612682565b60405190808252806020026020018201604052801561155d578160200160208202803683370190505b50905060005b8281101561123d5761158c848483818110611580576115806129f8565b90506020020135611c89565b82828151811061159e5761159e6129f8565b6001600160a01b0390921660209283029190910190910152806115c081612a0e565b915050611563565b60606115d382611947565b6115eb57505060408051602081019091526000815290565b6115f4826119df565b6116695760665460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401600060405180830381865afa158015611641573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261059c9190810190612858565b60655460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd906024016114d5565b60405162461bcd60e51b815260206004820152601f60248201527f50726f78795265616465723a20554e535550504f525445445f4d4554484f44006044820152600090606401610979565b600080606080856001600160401b0381111561170357611703612682565b60405190808252806020026020018201604052801561173657816020015b60608152602001906001900390816117215790505b509150856001600160401b0381111561175157611751612682565b60405190808252806020026020018201604052801561178457816020015b606081526020019060019003908161176f5790505b509050611790856119df565b156118915760655460405163b3f9e4cb60e01b8152600481018790526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa1580156117de573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118029190612665565b935061180d85611fdb565b60655460405163170b5fa560e31b81529194506001600160a01b03169063b85afd2890611842908a908a908a90600401612a6d565b600060405180830381865afa15801561185f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526118879190810190612b35565b9092509050610501565b61189a85611ba9565b93506118a585611eb5565b92506001600160a01b0384163b151580156118c1575060008251115b156105015760405163170b5fa560e31b81526001600160a01b0385169063b85afd28906118f6908a908a908a90600401612a6d565b600060405180830381865afa92505050801561193457506040513d6000823e601f3d908101601f191682016040526119319190810190612b35565b60015b1561050157909250905093509350935093565b6000611952826119df565b61197157600061196183611eb5565b6001600160a01b031614156104e1565b606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e79906024015b602060405180830381865afa1580156119bb573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104e1919061294a565b6066546000906001600160a01b031615806104e15750606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e799060240161199e565b606082516001600160401b03811115611a4157611a41612682565b604051908082528060200260200182016040528015611a7457816020015b6060815260200190600190039081611a5f5790505b509050611a80826119df565b15611b0357606554604051630dec660d60e11b81526001600160a01b0390911690631bd8cc1a90611ab79086908690600401612b8e565b600060405180830381865afa158015611ad4573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611afc9190810190612bb0565b90506104e1565b6000611b0e83611ba9565b90506001600160a01b0381163b15158015611b2a575060008451115b1561123d57604051630dec660d60e11b81526001600160a01b03821690631bd8cc1a90611b5d9087908790600401612b8e565b600060405180830381865afa925050508015611b9b57506040513d6000823e601f3d908101601f19168201604052611b989190810190612bb0565b60015b1561123d575b949350505050565b60665460405163b3f9e4cb60e01b8152600481018390526000916001600160a01b03169063b3f9e4cb906024015b602060405180830381865afa925050508015611c10575060408051601f3d908101601f19168201909252611c0d91810190612665565b60015b6104e157506000919050565b600054610100900460ff16611c875760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608401610979565b565b6000611c94826119df565b611ca15761059c82611eb5565b6104e182611fdb565b6000806060846001600160401b03811115611cc757611cc7612682565b604051908082528060200260200182016040528015611cfa57816020015b6060815260200190600190039081611ce55790505b509050611d06846119df565b15611e045760655460405163b3f9e4cb60e01b8152600481018690526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa158015611d54573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d789190612665565b9250611d8384611fdb565b606554604051630dec660d60e11b81529193506001600160a01b031690631bd8cc1a90611db890899089908990600401612be4565b600060405180830381865afa158015611dd5573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611dfd9190810190612bb0565b9050610ef0565b611e0d84611ba9565b9250611e1884611eb5565b91506001600160a01b0383163b15158015611e3257508415155b15610ef057604051630dec660d60e11b81526001600160a01b03841690631bd8cc1a90611e6790899089908990600401612be4565b600060405180830381865afa925050508015611ea557506040513d6000823e601f3d908101601f19168201604052611ea29190810190612bb0565b60015b15610ef057905093509350939050565b6066546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401611bd7565b60606001600160a01b0383163b611f4f5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b6064820152608401610979565b600080846001600160a01b031684604051611f6a9190612bf8565b600060405180830381855af49150503d8060008114611fa5576040519150601f19603f3d011682016040523d82523d6000602084013e611faa565b606091505b5091509150611fd28282604051806060016040528060278152602001612c156027913961200d565b95945050505050565b6065546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401611bd7565b6060831561201c575081610627565b82511561202c5782518084602001fd5b8160405162461bcd60e51b81526004016109799190612293565b60006020828403121561205857600080fd5b81356001600160e01b03198116811461062757600080fd5b60008083601f84011261208257600080fd5b5081356001600160401b0381111561209957600080fd5b6020830191508360208260051b8501011115610b6f57600080fd5b6000806000604084860312156120c957600080fd5b83356001600160401b038111156120df57600080fd5b6120eb86828701612070565b909790965060209590950135949350505050565b60005b8381101561211a578181015183820152602001612102565b50506000910152565b6000815180845261213b8160208601602086016120ff565b601f01601f19169290920160200192915050565b600082825180855260208086019550808260051b84010181860160005b8481101561219a57601f19868403018952612188838351612123565b9884019892509083019060010161216c565b5090979650505050505050565b6001600160a01b038581168252841660208201526080604082018190526000906121d39083018561214f565b82810360608401526121e5818561214f565b979650505050505050565b60006020828403121561220257600080fd5b5035919050565b602081526000610627602083018461214f565b60008060006040848603121561223157600080fd5b83356001600160401b038082111561224857600080fd5b818601915086601f83011261225c57600080fd5b81358181111561226b57600080fd5b87602082850101111561227d57600080fd5b6020928301989097509590910135949350505050565b6020815260006106276020830184612123565b600080602083850312156122b957600080fd5b82356001600160401b038111156122cf57600080fd5b6122db85828601612070565b90969095509350505050565b6001600160a01b03811681146122fc57600080fd5b50565b6000806040838503121561231257600080fd5b823561231d816122e7565b946020939093013593505050565b6000806040838503121561233e57600080fd5b8235612349816122e7565b91506020830135612359816122e7565b809150509250929050565b6000806040838503121561237757600080fd5b50508035926020909101359150565b6040815260006123996040830185612123565b8281036020840152611fd28185612123565b6000602082840312156123bd57600080fd5b8135610627816122e7565b600080600080604085870312156123de57600080fd5b84356001600160401b03808211156123f557600080fd5b61240188838901612070565b9096509450602087013591508082111561241a57600080fd5b5061242787828801612070565b95989497509550505050565b600081518084526020808501945080840160005b8381101561246c5781516001600160a01b031687529582019590820190600101612447565b509495945050505050565b600081518084526020808501808196506005915083821b81018387016000805b87811015612500578484038b5282518051808652908801908886019080891b87018a01855b828110156124ea57601f198983030184526124d8828651612123565b948c0194938c019391506001016124bc565b509d8a019d965050509287019250600101612497565b50919998505050505050505050565b6080815260006125226080830187612433565b82810360208401526125348187612433565b905082810360408401526125488186612477565b905082810360608401526121e58185612477565b6001600160a01b03848116825283166020820152606060408201819052600090611fd29083018461214f565b60608152600061259b6060830186612433565b82810360208401526125ad8186612433565b905082810360408401526125c18185612477565b9695505050505050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b8281101561262057603f1988860301845261260e858351612123565b945092850192908501906001016125f2565b5092979650505050505050565b604081526000612640604083018561214f565b8281036020840152611fd2818561214f565b6020815260006106276020830184612433565b60006020828403121561267757600080fd5b8151610627816122e7565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b03811182821017156126c0576126c0612682565b604052919050565b60006001600160401b038211156126e1576126e1612682565b5060051b60200190565b60006001600160401b0382111561270457612704612682565b50601f01601f191660200190565b6000612725612720846126c8565b612698565b80848252602080830192508560051b85013681111561274357600080fd5b855b818110156127ba5780356001600160401b038111156127645760008081fd5b870136601f8201126127765760008081fd5b8035612784612720826126eb565b81815236868385010111156127995760008081fd5b81868401878301376000918101860191909152865250938201938201612745565b50919695505050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b6040815260006128036040830185876127c6565b9050826020830152949350505050565b600082601f83011261282457600080fd5b8151612832612720826126eb565b81815284602083860101111561284757600080fd5b611ba18260208301602087016120ff565b60006020828403121561286a57600080fd5b81516001600160401b0381111561288057600080fd5b611ba184828501612813565b81835260006020808501808196508560051b810191508460005b878110156129105782840389528135601e198836030181126128c757600080fd5b870185810190356001600160401b038111156128e257600080fd5b8036038213156128f157600080fd5b6128fc8682846127c6565b9a87019a95505050908401906001016128a6565b5091979650505050505050565b60208152600061062460208301848661288c565b60006020828403121561294357600080fd5b5051919050565b60006020828403121561295c57600080fd5b8151801515811461062757600080fd5b6000806040838503121561297f57600080fd5b82516001600160401b038082111561299657600080fd5b6129a286838701612813565b935060208501519150808211156129b857600080fd5b506129c585828601612813565b9150509250929050565b634e487b7160e01b600052601160045260246000fd5b808201808211156104e1576104e16129cf565b634e487b7160e01b600052603260045260246000fd5b600060018201612a2057612a206129cf565b5060010190565b6000808335601e19843603018112612a3e57600080fd5b8301803591506001600160401b03821115612a5857600080fd5b602001915036819003821315610b6f57600080fd5b6040808252810183905260006001600160fb1b03841115612a8d57600080fd5b8360051b808660608501376020830193909352500160600192915050565b600082601f830112612abc57600080fd5b81516020612acc612720836126c8565b82815260059290921b84018101918181019086841115612aeb57600080fd5b8286015b84811015612b2a5780516001600160401b03811115612b0e5760008081fd5b612b1c8986838b0101612813565b845250918301918301612aef565b509695505050505050565b60008060408385031215612b4857600080fd5b82516001600160401b0380821115612b5f57600080fd5b612b6b86838701612aab565b93506020850151915080821115612b8157600080fd5b506129c585828601612aab565b604081526000612ba1604083018561214f565b90508260208301529392505050565b600060208284031215612bc257600080fd5b81516001600160401b03811115612bd857600080fd5b611ba184828501612aab565b60408152600061280360408301858761288c565b60008251612c0a8184602087016120ff565b919091019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a"; +const isSuperArgs = (xs) => xs.length > 1; +class ProxyReaderV04__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(overrides) { + return super.getDeployTransaction(overrides || {}); + } + deploy(overrides) { + return super.deploy(overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.ProxyReaderV04__factory = ProxyReaderV04__factory; +ProxyReaderV04__factory.bytecode = _bytecode; +ProxyReaderV04__factory.abi = _abi; diff --git a/dist/types/factories/contracts/history/UNSRegistryV07__factory.d.ts b/dist/types/factories/contracts/history/UNSRegistryV07__factory.d.ts new file mode 100644 index 00000000..62d81d39 --- /dev/null +++ b/dist/types/factories/contracts/history/UNSRegistryV07__factory.d.ts @@ -0,0 +1,1118 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../common"; +import type { UNSRegistryV07, UNSRegistryV07Interface } from "../../../contracts/history/UNSRegistryV07"; +declare type UNSRegistryV07ConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class UNSRegistryV07__factory extends ContractFactory { + constructor(...args: UNSRegistryV07ConstructorParams); + getDeployTransaction(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): UNSRegistryV07__factory; + static readonly bytecode = "0x608060405234801561001057600080fd5b50614c76806100206000396000f3fe608060405234801561001057600080fd5b50600436106103785760003560e01c806370a08231116101d3578063ba5d40b711610104578063ebf0c717116100a2578063f5c1f76e1161007c578063f5c1f76e14610806578063f7df5c6014610819578063f8c8765e1461082c578063ffa1ad741461083f57600080fd5b8063ebf0c717146107e4578063ec129eea146107eb578063f25eb5c1146107fe57600080fd5b8063c87b56dd116100de578063c87b56dd1461076f578063ce92b33e14610782578063cf2c52cb14610795578063e985e9c5146107a857600080fd5b8063ba5d40b714610736578063bb5b27e114610749578063bebec6b41461075c57600080fd5b8063a22cb46511610171578063ab3b87fe1161014b578063ab3b87fe146106dc578063b3f9e4cb146106ef578063b85afd2814610702578063b88d4fde1461072357600080fd5b8063a22cb4651461068a578063a3f4df7e1461069d578063a4247400146106c957600080fd5b80639508b1c4116101ad5780639508b1c4146106545780639559c0bd1461066757806395d89b411461066f57806399e0dd7c1461067757600080fd5b806370a082311461061b5780637e37479e1461062e57806394d008ef1461064157600080fd5b806342842e0e116102ad578063509602391161024b578063638e5c7811610225578063638e5c78146105b3578063663f7b2a146105c6578063672b9f81146105d95780636ccbae5f146105fa57600080fd5b80635096023914610571578063572b6c05146105845780636352211e146105a057600080fd5b806347c816991161028757806347c81699146105255780634a72584d146105385780634f558e791461054b57806350382c1a1461055e57600080fd5b806342842e0e146104ec57806342966c68146104ff578063430c20811461051257600080fd5b80631bf7e13e1161031a578063276fabb1116102f4578063276fabb11461049257806327f18975146104b3578063310bd74b146104c657806340c10f19146104d957600080fd5b80631bf7e13e146104595780631f71be061461046c57806323b872dd1461047f57600080fd5b8063095ea7b311610356578063095ea7b3146103e5578063150b7a02146103fa5780631bd8cc1a146104265780631be5e7ed1461044657600080fd5b806301ffc9a71461037d57806306fdde03146103a5578063081812fc146103ba575b600080fd5b61039061038b3660046139bf565b610863565b60405190151581526020015b60405180910390f35b6103ad610874565b60405161039c9190613a2c565b6103cd6103c8366004613a3f565b610906565b6040516001600160a01b03909116815260200161039c565b6103f86103f3366004613a6d565b61092d565b005b61040d610408366004613ada565b610946565b6040516001600160e01b0319909116815260200161039c565b610439610434366004613b90565b610aa0565b60405161039c9190613c30565b6103ad610454366004613c43565b610b96565b6103ad610467366004613c7a565b610be1565b6103f861047a366004613cff565b610cec565b6103f861048d366004613dbb565b610d93565b6104a56104a0366004613dfc565b610de6565b60405190815260200161039c565b6103f86104c1366004613e3d565b610df5565b6103f86104d4366004613a3f565b610e3d565b6103f86104e7366004613a6d565b610e78565b6103f86104fa366004613dbb565b610ec5565b6103f861050d366004613a3f565b610ee0565b610390610520366004613a6d565b610f24565b6103f8610533366004613eb0565b610f30565b6103f8610546366004613f11565b610f6f565b610390610559366004613a3f565b610fb5565b6103f861056c366004614018565b610fd4565b6103f861057f36600461404c565b61100a565b61039061059236600461404c565b6001600160a01b0316301490565b6103cd6105ae366004613a3f565b61106a565b6103f86105c1366004613a3f565b6110ca565b6103f86105d4366004614104565b611115565b6105ec6105e736600461414c565b61114e565b60405161039c92919061416e565b6104a5610608366004613a3f565b6000908152610100602052604090205490565b6104a561062936600461404c565b611166565b6104a561063c36600461404c565b6111ec565b6103f861064f366004614193565b61121d565b6103f86106623660046141ee565b61126c565b6104a5601481565b6103ad6112f3565b6103f8610685366004614291565b611302565b6103f86106983660046142c6565b611389565b6103ad6040518060400160405280600d81526020016c554e533a20526567697374727960981b81525081565b6103906106d7366004613c7a565b61139b565b6103f86106ea366004613a6d565b6113e6565b6103cd6106fd366004613a3f565b61142b565b610715610710366004613b90565b611455565b60405161039c9291906142f2565b6103f8610731366004614317565b611577565b6103f8610744366004613cff565b6115be565b6103ad610757366004613a3f565b61162f565b6103ad61076a36600461404c565b6116d1565b6103ad61077d366004613a3f565b61179b565b6103f8610790366004613e3d565b611801565b6103f86107a3366004614382565b611840565b6103906107b63660046143c9565b6001600160a01b039182166000908152606a6020908152604080832093909416825291909152205460ff1690565b60006104a5565b6103f86107f9366004613e3d565b61190f565b6103f861194e565b610439610814366004613dfc565b6119d5565b6103f8610827366004614402565b611a88565b6103f861083a366004614434565b611b19565b6103ad60405180604001604052806005815260200164302e372e3360d81b81525081565b600061086e82611cef565b92915050565b60606065805461088390614490565b80601f01602080910402602001604051908101604052809291908181526020018280546108af90614490565b80156108fc5780601f106108d1576101008083540402835291602001916108fc565b820191906000526020600020905b8154815290600101906020018083116108df57829003601f168201915b5050505050905090565b600061091182611d3f565b506000908152606960205260409020546001600160a01b031690565b8061093781611d9e565b6109418383611e04565b505050565b60007f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378546001600160a01b031661097b611f26565b6001600160a01b031603610a3c57610991611f26565b6001600160a01b03166342966c68856040518263ffffffff1660e01b81526004016109be91815260200190565b600060405180830381600087803b1580156109d857600080fd5b505af11580156109ec573d6000803e3d6000fd5b505050821580159150610a065750610a06828401846144c4565b15610a2457610a153085611f35565b610a1f8585612083565b610a2e565b610a2e8585611f35565b50630a85bd0160e11b610a97565b60405162461bcd60e51b815260206004820152602560248201527f52656769737472793a204552433732315f524543454956494e475f50524f4849604482015264109255115160da1b60648201526084015b60405180910390fd5b95945050505050565b6060826001600160401b03811115610aba57610aba613f63565b604051908082528060200260200182016040528015610aed57816020015b6060815260200190600190039081610ad85790505b50905060005b83811015610b8e57610b5e858583818110610b1057610b106144df565b9050602002810190610b2291906144f5565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525087925061212e915050565b828281518110610b7057610b706144df565b60200260200101819052508080610b8690614551565b915050610af3565b509392505050565b6060610bd984848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525086925061212e915050565b949350505050565b606060005a9050610bf385858561139b565b610c4f5760405162461bcd60e51b815260206004820152602760248201527f554e535265676973747279466f727761726465723a205349474e41545552455f6044820152661253959053125160ca1b6064820152608401610a8e565b610ce1610c5f602087018761404c565b30604088013584610c7360608b018b6144f5565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061216392505050565b9150505b9392505050565b610134546001600160a01b0316610d01611f26565b6001600160a01b031614610d275760405162461bcd60e51b8152600401610a8e9061456a565b6000610d3b610d36888a6145b1565b612244565b9050610d4681612293565b610d59610d528261106a565b8a83612300565b610d6686868686856124a7565b8115610d8857610d888982610d83610d7e8b8d6145b1565b612515565b612596565b505050505050505050565b80610da5610d9f611f26565b826125d8565b610dc15760405162461bcd60e51b8152600401610a8e906145be565b81610dcb81611d9e565b610dd483612293565b610ddf858585612300565b5050505050565b6000610ce5610d3683856145b1565b80610e01610d9f611f26565b610e1d5760405162461bcd60e51b8152600401610a8e906145be565b81610e2781611d9e565b610e348787878787612656565b50505050505050565b80610e49610d9f611f26565b610e655760405162461bcd60e51b8152600401610a8e906145be565b81610e6f81611d9e565b61094183612293565b610e806126b9565b6001600160a01b0316610e91611f26565b6001600160a01b031614610eb75760405162461bcd60e51b8152600401610a8e90614607565b610ec18282611f35565b5050565b61094183838360405180602001604052806000815250611577565b80610eec610d9f611f26565b610f085760405162461bcd60e51b8152600401610a8e906145be565b81610f1281611d9e565b610f1b83612293565b610941836127ba565b6000610ce583836125d8565b80610f3c610d9f611f26565b610f585760405162461bcd60e51b8152600401610a8e906145be565b81610f6281611d9e565b610e348787878787612861565b80610f7b610d9f611f26565b610f975760405162461bcd60e51b8152600401610a8e906145be565b81610fa181611d9e565b610fad86868686612940565b505050505050565b6000818152606760205260408120546001600160a01b0316151561086e565b61100781604051602001610fe89190614649565b6040516020818303038152906040528051906020012060001c826129e0565b50565b610134546001600160a01b031661101f611f26565b6001600160a01b0316146110455760405162461bcd60e51b8152600401610a8e9061456a565b6001600160a01b0316600090815261013660205260409020805460ff19166001179055565b6000818152606760205260408120546001600160a01b03168061086e5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610a8e565b806110d6610d9f611f26565b6110f25760405162461bcd60e51b8152600401610a8e906145be565b6111046110fd611f26565b3084612300565b610ec161110f611f26565b83612083565b600061112082612244565b905061112b81612a05565b61113481611d9e565b610ec161113f611f26565b8261114985612515565b612a75565b60608061115b8484612afc565b909590945092505050565b60006001600160a01b0382166111d05760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b6064820152608401610a8e565b506001600160a01b031660009081526068602052604090205490565b6001600160a01b0381166000908152610135602052604081205461120f81612b1d565b611217578091505b50919050565b6112256126b9565b6001600160a01b0316611236611f26565b6001600160a01b03161461125c5760405162461bcd60e51b8152600401610a8e90614607565b6112668484611f35565b50505050565b6112768787612b67565b61127e611f26565b6001600160a01b03166112908661106a565b6001600160a01b0316146112e65760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610a8e565b610e3484848484896124a7565b60606066805461088390614490565b610134546001600160a01b0316611317611f26565b6001600160a01b03161461133d5760405162461bcd60e51b8152600401610a8e9061456a565b61013361134b8284836146ab565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b828260405161137d929190614793565b60405180910390a15050565b610ec1611394611f26565b8383612bd6565b6000610bd96113a9856147a7565b3085858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250612ca492505050565b806113f2610d9f611f26565b61140e5760405162461bcd60e51b8152600401610a8e906145be565b8161141881611d9e565b6112666114248461106a565b8585612300565b6000818152606760205260408120546001600160a01b031661144e57600061086e565b3092915050565b606080836001600160401b0381111561147057611470613f63565b6040519080825280602002602001820160405280156114a357816020015b606081526020019060019003908161148e5790505b509150836001600160401b038111156114be576114be613f63565b6040519080825280602002602001820160405280156114f157816020015b60608152602001906001900390816114dc5790505b50905060005b8481101561156e57611521868683818110611514576115146144df565b9050602002013585612afc565b848381518110611533576115336144df565b6020026020010184848151811061154c5761154c6144df565b602002602001018290528290525050808061156690614551565b9150506114f7565b50935093915050565b81611583610d9f611f26565b61159f5760405162461bcd60e51b8152600401610a8e906145be565b826115a981611d9e565b6115b284612293565b610fad86868686612ded565b610134546001600160a01b03166115d3611f26565b6001600160a01b0316146115f95760405162461bcd60e51b8152600401610a8e9061456a565b6000611608610d36888a6145b1565b9050611622898261161c610d7e8b8d6145b1565b85612e20565b610d8886868686856124a7565b600081815260c96020526040902080546060919061164c90614490565b80601f016020809104026020016040519081016040528092919081815260200182805461167890614490565b80156116c55780601f1061169a576101008083540402835291602001916116c5565b820191906000526020600020905b8154815290600101906020018083116116a857829003601f168201915b50505050509050919050565b6001600160a01b038116600090815261013560205260409020546060906116f781612b1d565b61121757600081815261013860205260409020805461171590614490565b80601f016020809104026020016040519081016040528092919081815260200182805461174190614490565b801561178e5780601f106117635761010080835404028352916020019161178e565b820191906000526020600020905b81548152906001019060200180831161177157829003601f168201915b5050505050915050919050565b60606117a682611d3f565b60006117b0612e73565b905060008151116117d05760405180602001604052806000815250610ce5565b806117da84612e83565b6040516020016117eb929190614831565b6040516020818303038152906040529392505050565b8061180d610d9f611f26565b6118295760405162461bcd60e51b8152600401610a8e906145be565b8161183381611d9e565b610e3487878787876124a7565b7f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87546001600160a01b0316611873611f26565b6001600160a01b0316146118995760405162461bcd60e51b8152600401610a8e90614607565b60208190036118bc5760006118b082840184613a3f565b90506112668482611f35565b60006118ca82840184614860565b805190915060005b81811015610fad576118fd868483815181106118f0576118f06144df565b6020026020010151611f35565b8061190781614551565b9150506118d2565b8061191b610d9f611f26565b6119375760405162461bcd60e51b8152600401610a8e906145be565b8161194181611d9e565b610e348787878787612f83565b6000611958611f26565b6001600160a01b03811660009081526101356020526040812054919250036119cc5760405162461bcd60e51b815260206004820152602160248201527f52656769737472793a20524556455253455f5245434f52445f49535f454d50546044820152605960f81b6064820152608401610a8e565b61100781612f99565b6060816001600160401b038111156119ef576119ef613f63565b604051908082528060200260200182016040528015611a2257816020015b6060815260200190600190039081611a0d5790505b50905060005b82811015611a8157611a51848483818110611a4557611a456144df565b9050602002013561162f565b828281518110611a6357611a636144df565b60200260200101819052508080611a7990614551565b915050611a28565b5092915050565b610134546001600160a01b0316611a9d611f26565b6001600160a01b031614611ac35760405162461bcd60e51b8152600401610a8e9061456a565b61013454611ada906001600160a01b031684611f35565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c39528383604051611b0c929190614793565b60405180910390a2505050565b600054610100900460ff1615808015611b395750600054600160ff909116105b80611b535750303b158015611b53575060005460ff166001145b611bb65760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610a8e565b6000805460ff191660011790558015611bd9576000805461ff0019166101001790555b61013480546001600160a01b0319166001600160a01b038716179055837f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec9237880546001600160a01b0319166001600160a01b03929092169190911790556040805180820182526013815272556e73746f707061626c6520446f6d61696e7360681b60208083019190915282518084019093526002835261155160f21b90830152611c8191612fde565b611c8961301e565b611c9161301e565b611c9a83613047565b611ca382613077565b8015610ddf576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b60006001600160e01b031982166380ac58cd60e01b1480611d2057506001600160e01b03198216635b5e139f60e01b145b8061086e57506301ffc9a760e01b6001600160e01b031983161461086e565b6000818152606760205260409020546001600160a01b03166110075760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610a8e565b303303611dfb57611dad6130a7565b81146110075760405162461bcd60e51b815260206004820152601760248201527f52656769737472793a20544f4b454e5f494e56414c49440000000000000000006044820152606401610a8e565b611007816130bb565b6000611e0f8261106a565b9050806001600160a01b0316836001600160a01b031603611e7c5760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b6064820152608401610a8e565b806001600160a01b0316611e8e611f26565b6001600160a01b03161480611eaa5750611eaa816107b6611f26565b611f1c5760405162461bcd60e51b815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c00006064820152608401610a8e565b61094183836130e9565b6000611f30613157565b905090565b6001600160a01b038216611f8b5760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610a8e565b6000818152606760205260409020546001600160a01b031615611ff05760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610a8e565b611ffc60008383613172565b6001600160a01b03821660009081526068602052604081208054600192906120259084906148f0565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b03861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b600061208d6126b9565b905061209981836130e9565b600080516020614c4a83398151915254604080516020808201869052825180830390910181528183019283905263e3dec8fb60e01b9092526001600160a01b0390921691829163e3dec8fb916120f6918891309190604401614903565b600060405180830381600087803b15801561211057600080fd5b505af1158015612124573d6000803e3d6000fd5b5050505050505050565b6060610ce5836040516020016121449190614649565b6040516020818303038152906040528051906020012060001c8361320f565b606061216e856130bb565b600080876001600160a01b0316866121888b8a89896132f1565b6040516121959190614649565b60006040518083038160008787f1925050503d80600081146121d3576040519150601f19603f3d011682016040523d82523d6000602084013e6121d8565b606091505b5090925090506121e9603f87614945565b5a116121f7576121f7614959565b61223782826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c4544000000000000815250613321565b9998505050505050505050565b805160009081905b8015611a815761227f828561226260018561496f565b81518110612272576122726144df565b602002602001015161335a565b91508061228b81614982565b91505061224c565b61229c81613406565b6040516020016122ae91815260200190565b60408051601f198184030181528282528051602091820120600085815260cb9092529181209190915582917f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9190a250565b826001600160a01b03166123138261106a565b6001600160a01b0316146123775760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b6064820152608401610a8e565b6001600160a01b0382166123d95760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610a8e565b6123e4838383613172565b6123ef6000826130e9565b6001600160a01b038316600090815260686020526040812080546001929061241890849061496f565b90915550506001600160a01b03821660009081526068602052604081208054600192906124469084906148f0565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60005b84811015610fad576125038686838181106124c7576124c76144df565b90506020028101906124d991906144f5565b8686858181106124eb576124eb6144df565b90506020028101906124fd91906144f5565b86612861565b8061250d81614551565b9150506124aa565b606060008260008151811061252c5761252c6144df565b602002602001015190506000600190505b8351811015611a815781848281518110612559576125596144df565b6020026020010151604051602001612572929190614999565b6040516020818303038152906040529150808061258e90614551565b91505061253d565b61dead6001600160a01b038416148015906125c857506001600160a01b03831660009081526101356020526040902054155b1561094157610941838383612a75565b6000806125e48361106a565b9050806001600160a01b0316846001600160a01b0316148061262b57506001600160a01b038082166000908152606a602090815260408083209388168352929052205460ff165b80610bd95750836001600160a01b031661264484610906565b6001600160a01b031614949350505050565b60005b84811015610fad576126a7868683818110612676576126766144df565b9050602002013585858481811061268f5761268f6144df565b90506020028101906126a191906144f5565b85612940565b806126b181614551565b915050612659565b600080516020614c4a833981519152546000906001600160a01b031680156127b65760405163721804d360e11b81523060048201526000906001600160a01b0383169063e43009a690602401602060405180830381865afa158015612722573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061274691906149d5565b60405163e66f960360e01b8152600481018290529091506001600160a01b0383169063e66f960390602401602060405180830381865afa15801561278e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127b291906149ee565b9250505b5090565b60006127c58261106a565b90506127d381600084613172565b6127de6000836130e9565b6001600160a01b038116600090815260686020526040812080546001929061280790849061496f565b909155505060008281526067602052604080822080546001600160a01b0319169055518391906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b60008585604051602001612876929190614a0b565b60408051601f198184030181528282528051602091820120601f89018290048202840182019092528783529092506128ca91839189908990819084018382808284376000920191909152506129e092505050565b610fad8187878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061342e915050565b61294984613563565b6129955760405162461bcd60e51b815260206004820152601c60248201527f5265636f726453746f726167653a204b45595f4e4f545f464f554e44000000006044820152606401610a8e565b611266846129a28661162f565b85858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525087925061342e915050565b6129e982613563565b610ec157600082815260c9602052604090206109418282614a1b565b612a0d611f26565b6001600160a01b0316612a1f8261106a565b6001600160a01b0316146110075760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610a8e565b6000828152610138602052604090208054612a8f90614490565b9050600003612ab357600082815261013860205260409020612ab18282614a1b565b505b6001600160a01b03831660008181526101356020526040808220859055518492917feb76a21470988c474a21f690cc28fee1ed511bd812dc3c21fd0f49c5e5d4708a91a3505050565b606080612b088461162f565b9150612b14848461320f565b90509250929050565b6000818152610137602052604081205460ff16801561086e57506101366000612b44611f26565b6001600160a01b0316815260208101919091526040016000205460ff1692915050565b600080516020614c4a83398151915254604051633805550f60e01b81526001600160a01b03909116908190633805550f90612ba89086908690600401614793565b600060405180830381600087803b158015612bc257600080fd5b505af1158015610e34573d6000803e3d6000fd5b816001600160a01b0316836001600160a01b031603612c375760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610a8e565b6001600160a01b038381166000818152606a6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015612ceb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612d0f91906149d5565b90506000612dbd866060015180519060200120868860200151604051602001612d5d9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b9050818660200151148015612de357508551612de3906001600160a01b03168286613589565b9695505050505050565b612df8848484612300565b612e04848484846136cb565b6112665760405162461bcd60e51b8152600401610a8e90614ada565b612e2a8484611f35565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c395283604051612e5a9190613a2c565b60405180910390a2801561126657611266848484612596565b6060610133805461088390614490565b606081600003612eaa5750506040805180820190915260018152600360fc1b602082015290565b8160005b8115612ed45780612ebe81614551565b9150612ecd9050600a83614945565b9150612eae565b6000816001600160401b03811115612eee57612eee613f63565b6040519080825280601f01601f191660200182016040528015612f18576020820181803683370190505b5090505b8415610bd957612f2d60018361496f565b9150612f3a600a86614b2c565b612f459060306148f0565b60f81b818381518110612f5a57612f5a6144df565b60200101906001600160f81b031916908160001a905350612f7c600a86614945565b9450612f1c565b612f8c81612293565b610ddf85858585856124a7565b6001600160a01b03811660008181526101356020526040808220829055517ffcf5eec0cfa3e6332f5f0e63ec242d71f866a61d121d6cdf5c2eb3b668a26c4f9190a250565b600054610100900460ff166130055760405162461bcd60e51b8152600401610a8e90614b40565b60656130118382614a1b565b5060666109418282614a1b565b600054610100900460ff166130455760405162461bcd60e51b8152600401610a8e90614b40565b565b600054610100900460ff1661306e5760405162461bcd60e51b8152600401610a8e90614b40565b611007816137d0565b600054610100900460ff1661309e5760405162461bcd60e51b8152600401610a8e90614b40565b61100781613829565b60003033036130b85750601f193601355b90565b600081815261010060205260409020546130d69060016148f0565b6000918252610100602052604090912055565b600081815260696020526040902080546001600160a01b0319166001600160a01b038416908117909155819061311e8261106a565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b600030330361316d575060331936013560601c90565b503390565b6000818152610137602052604090205460ff16158061319957506001600160a01b03821615155b6131e55760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a20544f4b454e5f555047524144454400000000000000006044820152606401610a8e565b6001600160a01b038316600090815261013560205260409020548190036109415761094183612f99565b606061321a82612b1d565b15613234575060408051602081019091526000815261086e565b60ca600061324184613406565b81526020019081526020016000206000848152602001908152602001600020805461326b90614490565b80601f016020809104026020016040519081016040528092919081815260200182805461329790614490565b80156132e45780601f106132b9576101008083540402835291602001916132e4565b820191906000526020600020905b8154815290600101906020018083116132c757829003601f168201915b5050505050905092915050565b606082858560405160200161330893929190614b8b565b6040516020818303038152906040529050949350505050565b60608315613330575081610ce5565b8251156133405782518084602001fd5b8160405162461bcd60e51b8152600401610a8e9190613a2c565b600081516000036133a55760405162461bcd60e51b815260206004820152601560248201527452656769737472793a204c4142454c5f454d50545960581b6044820152606401610a8e565b82826040516020016133b79190614649565b604051602081830303815290604052805190602001206040516020016133e7929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b600081815260cb6020526040812054156127b657600082815260cb602052604090205461086e565b60ca600061343b83613406565b81526020019081526020016000206000858152602001908152602001600020805461346590614490565b90506000036134bd578260405161347c9190614649565b6040518091039020817f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f86856040516134b49190613a2c565b60405180910390a35b8160ca60006134cb84613406565b8152602001908152602001600020600086815260200190815260200160002090816134f69190614a1b565b50816040516135059190614649565b60405180910390208360405161351b9190614649565b6040518091039020827f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d92868660405161355592919061416e565b60405180910390a450505050565b600081815260c960205260408120805482919061357f90614490565b9050119050919050565b60008060006135988585613877565b909250905060008160048111156135b1576135b1614bca565b1480156135cf5750856001600160a01b0316826001600160a01b0316145b156135df57600192505050610ce5565b600080876001600160a01b0316631626ba7e60e01b8888604051602401613607929190614be0565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516136459190614649565b600060405180830381855afa9150503d8060008114613680576040519150601f19603f3d011682016040523d82523d6000602084013e613685565b606091505b5091509150818015613698575080516020145b80156136bf57508051630b135d3f60e11b906136bd90830160209081019084016149d5565b145b98975050505050505050565b60006001600160a01b0384163b156137c857836001600160a01b031663150b7a026136f4611f26565b8786866040518563ffffffff1660e01b81526004016137169493929190614bf9565b6020604051808303816000875af1925050508015613751575060408051601f3d908101601f1916820190925261374e91810190614c2c565b60015b6137ae573d80801561377f576040519150601f19603f3d011682016040523d82523d6000602084013e613784565b606091505b5080516000036137a65760405162461bcd60e51b8152600401610a8e90614ada565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610bd9565b506001610bd9565b600054610100900460ff166137f75760405162461bcd60e51b8152600401610a8e90614b40565b80600080516020614c4a8339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b600054610100900460ff166138505760405162461bcd60e51b8152600401610a8e90614b40565b807f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87613808565b60008082516041036138ad5760208301516040840151606085015160001a6138a1878285856138bc565b945094505050506138b5565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08311156138f357506000905060036139a0565b8460ff16601b1415801561390b57508460ff16601c14155b1561391c57506000905060046139a0565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613970573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613999576000600192509250506139a0565b9150600090505b94509492505050565b6001600160e01b03198116811461100757600080fd5b6000602082840312156139d157600080fd5b8135610ce5816139a9565b60005b838110156139f75781810151838201526020016139df565b50506000910152565b60008151808452613a188160208601602086016139dc565b601f01601f19169290920160200192915050565b602081526000610ce56020830184613a00565b600060208284031215613a5157600080fd5b5035919050565b6001600160a01b038116811461100757600080fd5b60008060408385031215613a8057600080fd5b8235613a8b81613a58565b946020939093013593505050565b60008083601f840112613aab57600080fd5b5081356001600160401b03811115613ac257600080fd5b6020830191508360208285010111156138b557600080fd5b600080600080600060808688031215613af257600080fd5b8535613afd81613a58565b94506020860135613b0d81613a58565b93506040860135925060608601356001600160401b03811115613b2f57600080fd5b613b3b88828901613a99565b969995985093965092949392505050565b60008083601f840112613b5e57600080fd5b5081356001600160401b03811115613b7557600080fd5b6020830191508360208260051b85010111156138b557600080fd5b600080600060408486031215613ba557600080fd5b83356001600160401b03811115613bbb57600080fd5b613bc786828701613b4c565b909790965060209590950135949350505050565b600081518084526020808501808196508360051b8101915082860160005b85811015613c23578284038952613c11848351613a00565b98850198935090840190600101613bf9565b5091979650505050505050565b602081526000610ce56020830184613bdb565b600080600060408486031215613c5857600080fd5b83356001600160401b03811115613c6e57600080fd5b613bc786828701613a99565b600080600060408486031215613c8f57600080fd5b83356001600160401b0380821115613ca657600080fd5b9085019060808288031215613cba57600080fd5b90935060208501359080821115613cd057600080fd5b50613cdd86828701613a99565b9497909650939450505050565b80358015158114613cfa57600080fd5b919050565b60008060008060008060008060a0898b031215613d1b57600080fd5b8835613d2681613a58565b975060208901356001600160401b0380821115613d4257600080fd5b613d4e8c838d01613b4c565b909950975060408b0135915080821115613d6757600080fd5b613d738c838d01613b4c565b909750955060608b0135915080821115613d8c57600080fd5b50613d998b828c01613b4c565b9094509250613dac905060808a01613cea565b90509295985092959890939650565b600080600060608486031215613dd057600080fd5b8335613ddb81613a58565b92506020840135613deb81613a58565b929592945050506040919091013590565b60008060208385031215613e0f57600080fd5b82356001600160401b03811115613e2557600080fd5b613e3185828601613b4c565b90969095509350505050565b600080600080600060608688031215613e5557600080fd5b85356001600160401b0380821115613e6c57600080fd5b613e7889838a01613b4c565b90975095506020880135915080821115613e9157600080fd5b50613e9e88828901613b4c565b96999598509660400135949350505050565b600080600080600060608688031215613ec857600080fd5b85356001600160401b0380821115613edf57600080fd5b613eeb89838a01613a99565b90975095506020880135915080821115613f0457600080fd5b50613e9e88828901613a99565b60008060008060608587031215613f2757600080fd5b8435935060208501356001600160401b03811115613f4457600080fd5b613f5087828801613a99565b9598909750949560400135949350505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715613fa157613fa1613f63565b604052919050565b600082601f830112613fba57600080fd5b81356001600160401b03811115613fd357613fd3613f63565b613fe6601f8201601f1916602001613f79565b818152846020838601011115613ffb57600080fd5b816020850160208301376000918101602001919091529392505050565b60006020828403121561402a57600080fd5b81356001600160401b0381111561404057600080fd5b610bd984828501613fa9565b60006020828403121561405e57600080fd5b8135610ce581613a58565b60006001600160401b0382111561408257614082613f63565b5060051b60200190565b600061409f61409a84614069565b613f79565b8381529050602080820190600585901b8401868111156140be57600080fd5b845b818110156140f95780356001600160401b038111156140df5760008081fd5b6140eb89828901613fa9565b8552509282019282016140c0565b505050509392505050565b60006020828403121561411657600080fd5b81356001600160401b0381111561412c57600080fd5b8201601f8101841361413d57600080fd5b610bd98482356020840161408c565b6000806040838503121561415f57600080fd5b50508035926020909101359150565b6040815260006141816040830185613a00565b8281036020840152610ce18185613a00565b600080600080606085870312156141a957600080fd5b84356141b481613a58565b93506020850135925060408501356001600160401b038111156141d657600080fd5b6141e287828801613a99565b95989497509550505050565b60008060008060008060006080888a03121561420957600080fd5b87356001600160401b038082111561422057600080fd5b61422c8b838c01613a99565b909950975060208a0135965060408a013591508082111561424c57600080fd5b6142588b838c01613b4c565b909650945060608a013591508082111561427157600080fd5b5061427e8a828b01613b4c565b989b979a50959850939692959293505050565b600080602083850312156142a457600080fd5b82356001600160401b038111156142ba57600080fd5b613e3185828601613a99565b600080604083850312156142d957600080fd5b82356142e481613a58565b9150612b1460208401613cea565b6040815260006143056040830185613bdb565b8281036020840152610ce18185613bdb565b6000806000806080858703121561432d57600080fd5b843561433881613a58565b9350602085013561434881613a58565b92506040850135915060608501356001600160401b0381111561436a57600080fd5b61437687828801613fa9565b91505092959194509250565b60008060006040848603121561439757600080fd5b83356143a281613a58565b925060208401356001600160401b038111156143bd57600080fd5b613cdd86828701613a99565b600080604083850312156143dc57600080fd5b82356143e781613a58565b915060208301356143f781613a58565b809150509250929050565b60008060006040848603121561441757600080fd5b8335925060208401356001600160401b038111156143bd57600080fd5b6000806000806080858703121561444a57600080fd5b843561445581613a58565b9350602085013561446581613a58565b9250604085013561447581613a58565b9150606085013561448581613a58565b939692955090935050565b600181811c908216806144a457607f821691505b60208210810361121757634e487b7160e01b600052602260045260246000fd5b6000602082840312156144d657600080fd5b610ce582613cea565b634e487b7160e01b600052603260045260246000fd5b6000808335601e1984360301811261450c57600080fd5b8301803591506001600160401b0382111561452657600080fd5b6020019150368190038213156138b557600080fd5b634e487b7160e01b600052601160045260246000fd5b6000600182016145635761456361453b565b5060010190565b60208082526027908201527f52656769737472793a2053454e4445525f49535f4e4f545f4d494e54494e475f60408201526626a0a720a3a2a960c91b606082015260800190565b6000610ce536848461408c565b60208082526029908201527f52656769737472793a2053454e4445525f49535f4e4f545f415050524f5645446040820152682fa7a92fa7aba722a960b91b606082015260800190565b60208082526022908201527f52656769737472793a20494e53554646494349454e545f5045524d495353494f6040820152614e5360f01b606082015260800190565b6000825161465b8184602087016139dc565b9190910192915050565b601f82111561094157600081815260208120601f850160051c8101602086101561468c5750805b601f850160051c820191505b81811015610fad57828155600101614698565b6001600160401b038311156146c2576146c2613f63565b6146d6836146d08354614490565b83614665565b6000601f84116001811461470a57600085156146f25750838201355b600019600387901b1c1916600186901b178355610ddf565b600083815260209020601f19861690835b8281101561473b578685013582556020948501946001909201910161471b565b50868210156147585760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b602081526000610bd960208301848661476a565b6000608082360312156147b957600080fd5b604051608081016001600160401b0382821081831117156147dc576147dc613f63565b81604052843591506147ed82613a58565b8183526020850135602084015260408501356040840152606085013591508082111561481857600080fd5b5061482536828601613fa9565b60608301525092915050565b600083516148438184602088016139dc565b8351908301906148578183602088016139dc565b01949350505050565b6000602080838503121561487357600080fd5b82356001600160401b0381111561488957600080fd5b8301601f8101851361489a57600080fd5b80356148a861409a82614069565b81815260059190911b820183019083810190878311156148c757600080fd5b928401925b828410156148e5578335825292840192908401906148cc565b979650505050505050565b8082018082111561086e5761086e61453b565b6001600160a01b03848116825283166020820152606060408201819052600090610a9790830184613a00565b634e487b7160e01b600052601260045260246000fd5b6000826149545761495461492f565b500490565b634e487b7160e01b600052600160045260246000fd5b8181038181111561086e5761086e61453b565b6000816149915761499161453b565b506000190190565b600083516149ab8184602088016139dc565b601760f91b90830190815283516149c98160018401602088016139dc565b01600101949350505050565b6000602082840312156149e757600080fd5b5051919050565b600060208284031215614a0057600080fd5b8151610ce581613a58565b8183823760009101908152919050565b81516001600160401b03811115614a3457614a34613f63565b614a4881614a428454614490565b84614665565b602080601f831160018114614a7d5760008415614a655750858301515b600019600386901b1c1916600185901b178555610fad565b600085815260208120601f198616915b82811015614aac57888601518255948401946001909101908401614a8d565b5085821015614aca5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b600082614b3b57614b3b61492f565b500690565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60008451614b9d8184602089016139dc565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b600052602160045260246000fd5b828152604060208201526000610bd96040830184613a00565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090612de390830184613a00565b600060208284031215614c3e57600080fd5b8151610ce5816139a956febe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafea164736f6c6343000811000a"; + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "address"; + readonly name: "previousAdmin"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "address"; + readonly name: "newAdmin"; + readonly type: "address"; + }]; + readonly name: "AdminChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "approved"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Approval"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "ApprovalForAll"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "uint8"; + readonly name: "version"; + readonly type: "uint8"; + }]; + readonly name: "Initialized"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly indexed: true; + readonly internalType: "string"; + readonly name: "keyIndex"; + readonly type: "string"; + }, { + readonly indexed: false; + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }]; + readonly name: "NewKey"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly indexed: false; + readonly internalType: "string"; + readonly name: "uri"; + readonly type: "string"; + }]; + readonly name: "NewURI"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "string"; + readonly name: "prefix"; + readonly type: "string"; + }]; + readonly name: "NewURIPrefix"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }]; + readonly name: "RemoveReverse"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "ResetRecords"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly indexed: true; + readonly internalType: "string"; + readonly name: "keyIndex"; + readonly type: "string"; + }, { + readonly indexed: true; + readonly internalType: "string"; + readonly name: "valueIndex"; + readonly type: "string"; + }, { + readonly indexed: false; + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }, { + readonly indexed: false; + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }]; + readonly name: "Set"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "SetReverse"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Transfer"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "implementation"; + readonly type: "address"; + }]; + readonly name: "Upgraded"; + readonly type: "event"; + }, { + readonly inputs: readonly []; + readonly name: "BATCH_LIMIT"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "NAME"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "VERSION"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }]; + readonly name: "addKey"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }]; + readonly name: "addProxyReader"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "approve"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "balanceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "burn"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "user"; + readonly type: "address"; + }, { + readonly internalType: "bytes"; + readonly name: "depositData"; + readonly type: "bytes"; + }]; + readonly name: "deposit"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "depositToPolygon"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly components: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "nonce"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly internalType: "struct IForwarder.ForwardRequest"; + readonly name: "req"; + readonly type: "tuple"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "execute"; + readonly outputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "exists"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "get"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getApproved"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "keyHash"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getByHash"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }, { + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "keyHash"; + readonly type: "uint256"; + }]; + readonly name: "getKey"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256[]"; + readonly name: "hashes"; + readonly type: "uint256[]"; + }]; + readonly name: "getKeys"; + readonly outputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getMany"; + readonly outputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256[]"; + readonly name: "keyHashes"; + readonly type: "uint256[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getManyByHash"; + readonly outputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "mintingManager"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "cnsRegistry"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "rootChainManager"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "childChainManager"; + readonly type: "address"; + }]; + readonly name: "initialize"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly name: "isApprovedForAll"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "spender"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "isApprovedOrOwner"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "forwarder"; + readonly type: "address"; + }]; + readonly name: "isTrustedForwarder"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "user"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "mint"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "user"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly name: "mint"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "string"; + readonly name: "uri"; + readonly type: "string"; + }]; + readonly name: "mintTLD"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "string[]"; + readonly name: "labels"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }, { + readonly internalType: "bool"; + readonly name: "withReverse"; + readonly type: "bool"; + }]; + readonly name: "mintWithRecords"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "name"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "labels"; + readonly type: "string[]"; + }]; + readonly name: "namehash"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "pure"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "nonceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "onERC721Received"; + readonly outputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: ""; + readonly type: "bytes4"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "ownerOf"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "reconfigure"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "removeReverse"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "reset"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "resolverOf"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }]; + readonly name: "reverseNameOf"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: "reverseUri"; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }]; + readonly name: "reverseOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "reverse"; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "root"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "pure"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }, { + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "set"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "setApprovalForAll"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "keyHash"; + readonly type: "uint256"; + }, { + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "setByHash"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "setMany"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256[]"; + readonly name: "keyHashes"; + readonly type: "uint256[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "setManyByHash"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "setOwner"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "labels"; + readonly type: "string[]"; + }]; + readonly name: "setReverse"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "prefix"; + readonly type: "string"; + }]; + readonly name: "setTokenURIPrefix"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "symbol"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "tokenURI"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "transferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "string[]"; + readonly name: "labels"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }, { + readonly internalType: "bool"; + readonly name: "withReverse"; + readonly type: "bool"; + }]; + readonly name: "unlockWithRecords"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly components: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "nonce"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly internalType: "struct IForwarder.ForwardRequest"; + readonly name: "req"; + readonly type: "tuple"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "verify"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes"; + readonly name: "inputData"; + readonly type: "bytes"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }]; + readonly name: "withdrawFromPolygon"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): UNSRegistryV07Interface; + static connect(address: string, runner?: ContractRunner | null): UNSRegistryV07; +} +export {}; +//# sourceMappingURL=UNSRegistryV07__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/history/UNSRegistryV07__factory.d.ts.map b/dist/types/factories/contracts/history/UNSRegistryV07__factory.d.ts.map new file mode 100644 index 00000000..013d0553 --- /dev/null +++ b/dist/types/factories/contracts/history/UNSRegistryV07__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"UNSRegistryV07__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/history/UNSRegistryV07__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,KAAK,EACV,cAAc,EACd,uBAAuB,EACxB,MAAM,2CAA2C,CAAC;AAu5CnD,aAAK,+BAA+B,GAChC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,uBAAwB,SAAQ,eAAe;gBAC9C,GAAG,IAAI,EAAE,+BAA+B;IAQ3C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,uBAAuB;IAIxE,MAAM,CAAC,QAAQ,CAAC,QAAQ,ozsCAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,uBAAuB;IAGjD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,cAAc;CAGlB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/history/UNSRegistryV07__factory.js b/dist/types/factories/contracts/history/UNSRegistryV07__factory.js new file mode 100644 index 00000000..9fac02dd --- /dev/null +++ b/dist/types/factories/contracts/history/UNSRegistryV07__factory.js @@ -0,0 +1,1459 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.UNSRegistryV07__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "previousAdmin", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "newAdmin", + type: "address", + }, + ], + name: "AdminChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "approved", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Approval", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "ApprovalForAll", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint8", + name: "version", + type: "uint8", + }, + ], + name: "Initialized", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + indexed: true, + internalType: "string", + name: "keyIndex", + type: "string", + }, + { + indexed: false, + internalType: "string", + name: "key", + type: "string", + }, + ], + name: "NewKey", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + indexed: false, + internalType: "string", + name: "uri", + type: "string", + }, + ], + name: "NewURI", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "string", + name: "prefix", + type: "string", + }, + ], + name: "NewURIPrefix", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "RemoveReverse", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "ResetRecords", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + indexed: true, + internalType: "string", + name: "keyIndex", + type: "string", + }, + { + indexed: true, + internalType: "string", + name: "valueIndex", + type: "string", + }, + { + indexed: false, + internalType: "string", + name: "key", + type: "string", + }, + { + indexed: false, + internalType: "string", + name: "value", + type: "string", + }, + ], + name: "Set", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "addr", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "SetReverse", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Transfer", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "implementation", + type: "address", + }, + ], + name: "Upgraded", + type: "event", + }, + { + inputs: [], + name: "BATCH_LIMIT", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "NAME", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "VERSION", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "key", + type: "string", + }, + ], + name: "addKey", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "addProxyReader", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "approve", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "burn", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "user", + type: "address", + }, + { + internalType: "bytes", + name: "depositData", + type: "bytes", + }, + ], + name: "deposit", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "depositToPolygon", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + components: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "uint256", + name: "nonce", + type: "uint256", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + internalType: "struct IForwarder.ForwardRequest", + name: "req", + type: "tuple", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "execute", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "exists", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "key", + type: "string", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "get", + outputs: [ + { + internalType: "string", + name: "value", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getApproved", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "keyHash", + type: "uint256", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getByHash", + outputs: [ + { + internalType: "string", + name: "key", + type: "string", + }, + { + internalType: "string", + name: "value", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "keyHash", + type: "uint256", + }, + ], + name: "getKey", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256[]", + name: "hashes", + type: "uint256[]", + }, + ], + name: "getKeys", + outputs: [ + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getMany", + outputs: [ + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256[]", + name: "keyHashes", + type: "uint256[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getManyByHash", + outputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "mintingManager", + type: "address", + }, + { + internalType: "address", + name: "cnsRegistry", + type: "address", + }, + { + internalType: "address", + name: "rootChainManager", + type: "address", + }, + { + internalType: "address", + name: "childChainManager", + type: "address", + }, + ], + name: "initialize", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + name: "isApprovedForAll", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "spender", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "isApprovedOrOwner", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "forwarder", + type: "address", + }, + ], + name: "isTrustedForwarder", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "user", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "mint", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "user", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + name: "mint", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "string", + name: "uri", + type: "string", + }, + ], + name: "mintTLD", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "string[]", + name: "labels", + type: "string[]", + }, + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + { + internalType: "bool", + name: "withReverse", + type: "bool", + }, + ], + name: "mintWithRecords", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "name", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string[]", + name: "labels", + type: "string[]", + }, + ], + name: "namehash", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "pure", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "nonceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "onERC721Received", + outputs: [ + { + internalType: "bytes4", + name: "", + type: "bytes4", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "ownerOf", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "reconfigure", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "removeReverse", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "reset", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "resolverOf", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "reverseNameOf", + outputs: [ + { + internalType: "string", + name: "reverseUri", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "reverseOf", + outputs: [ + { + internalType: "uint256", + name: "reverse", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "root", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "pure", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "key", + type: "string", + }, + { + internalType: "string", + name: "value", + type: "string", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "set", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "setApprovalForAll", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "keyHash", + type: "uint256", + }, + { + internalType: "string", + name: "value", + type: "string", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "setByHash", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "setMany", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256[]", + name: "keyHashes", + type: "uint256[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "setManyByHash", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "setOwner", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string[]", + name: "labels", + type: "string[]", + }, + ], + name: "setReverse", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "prefix", + type: "string", + }, + ], + name: "setTokenURIPrefix", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "symbol", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "tokenURI", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "transferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "string[]", + name: "labels", + type: "string[]", + }, + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + { + internalType: "bool", + name: "withReverse", + type: "bool", + }, + ], + name: "unlockWithRecords", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + components: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "uint256", + name: "nonce", + type: "uint256", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + internalType: "struct IForwarder.ForwardRequest", + name: "req", + type: "tuple", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "verify", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes", + name: "inputData", + type: "bytes", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + ], + name: "withdrawFromPolygon", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +const _bytecode = "0x608060405234801561001057600080fd5b50614c76806100206000396000f3fe608060405234801561001057600080fd5b50600436106103785760003560e01c806370a08231116101d3578063ba5d40b711610104578063ebf0c717116100a2578063f5c1f76e1161007c578063f5c1f76e14610806578063f7df5c6014610819578063f8c8765e1461082c578063ffa1ad741461083f57600080fd5b8063ebf0c717146107e4578063ec129eea146107eb578063f25eb5c1146107fe57600080fd5b8063c87b56dd116100de578063c87b56dd1461076f578063ce92b33e14610782578063cf2c52cb14610795578063e985e9c5146107a857600080fd5b8063ba5d40b714610736578063bb5b27e114610749578063bebec6b41461075c57600080fd5b8063a22cb46511610171578063ab3b87fe1161014b578063ab3b87fe146106dc578063b3f9e4cb146106ef578063b85afd2814610702578063b88d4fde1461072357600080fd5b8063a22cb4651461068a578063a3f4df7e1461069d578063a4247400146106c957600080fd5b80639508b1c4116101ad5780639508b1c4146106545780639559c0bd1461066757806395d89b411461066f57806399e0dd7c1461067757600080fd5b806370a082311461061b5780637e37479e1461062e57806394d008ef1461064157600080fd5b806342842e0e116102ad578063509602391161024b578063638e5c7811610225578063638e5c78146105b3578063663f7b2a146105c6578063672b9f81146105d95780636ccbae5f146105fa57600080fd5b80635096023914610571578063572b6c05146105845780636352211e146105a057600080fd5b806347c816991161028757806347c81699146105255780634a72584d146105385780634f558e791461054b57806350382c1a1461055e57600080fd5b806342842e0e146104ec57806342966c68146104ff578063430c20811461051257600080fd5b80631bf7e13e1161031a578063276fabb1116102f4578063276fabb11461049257806327f18975146104b3578063310bd74b146104c657806340c10f19146104d957600080fd5b80631bf7e13e146104595780631f71be061461046c57806323b872dd1461047f57600080fd5b8063095ea7b311610356578063095ea7b3146103e5578063150b7a02146103fa5780631bd8cc1a146104265780631be5e7ed1461044657600080fd5b806301ffc9a71461037d57806306fdde03146103a5578063081812fc146103ba575b600080fd5b61039061038b3660046139bf565b610863565b60405190151581526020015b60405180910390f35b6103ad610874565b60405161039c9190613a2c565b6103cd6103c8366004613a3f565b610906565b6040516001600160a01b03909116815260200161039c565b6103f86103f3366004613a6d565b61092d565b005b61040d610408366004613ada565b610946565b6040516001600160e01b0319909116815260200161039c565b610439610434366004613b90565b610aa0565b60405161039c9190613c30565b6103ad610454366004613c43565b610b96565b6103ad610467366004613c7a565b610be1565b6103f861047a366004613cff565b610cec565b6103f861048d366004613dbb565b610d93565b6104a56104a0366004613dfc565b610de6565b60405190815260200161039c565b6103f86104c1366004613e3d565b610df5565b6103f86104d4366004613a3f565b610e3d565b6103f86104e7366004613a6d565b610e78565b6103f86104fa366004613dbb565b610ec5565b6103f861050d366004613a3f565b610ee0565b610390610520366004613a6d565b610f24565b6103f8610533366004613eb0565b610f30565b6103f8610546366004613f11565b610f6f565b610390610559366004613a3f565b610fb5565b6103f861056c366004614018565b610fd4565b6103f861057f36600461404c565b61100a565b61039061059236600461404c565b6001600160a01b0316301490565b6103cd6105ae366004613a3f565b61106a565b6103f86105c1366004613a3f565b6110ca565b6103f86105d4366004614104565b611115565b6105ec6105e736600461414c565b61114e565b60405161039c92919061416e565b6104a5610608366004613a3f565b6000908152610100602052604090205490565b6104a561062936600461404c565b611166565b6104a561063c36600461404c565b6111ec565b6103f861064f366004614193565b61121d565b6103f86106623660046141ee565b61126c565b6104a5601481565b6103ad6112f3565b6103f8610685366004614291565b611302565b6103f86106983660046142c6565b611389565b6103ad6040518060400160405280600d81526020016c554e533a20526567697374727960981b81525081565b6103906106d7366004613c7a565b61139b565b6103f86106ea366004613a6d565b6113e6565b6103cd6106fd366004613a3f565b61142b565b610715610710366004613b90565b611455565b60405161039c9291906142f2565b6103f8610731366004614317565b611577565b6103f8610744366004613cff565b6115be565b6103ad610757366004613a3f565b61162f565b6103ad61076a36600461404c565b6116d1565b6103ad61077d366004613a3f565b61179b565b6103f8610790366004613e3d565b611801565b6103f86107a3366004614382565b611840565b6103906107b63660046143c9565b6001600160a01b039182166000908152606a6020908152604080832093909416825291909152205460ff1690565b60006104a5565b6103f86107f9366004613e3d565b61190f565b6103f861194e565b610439610814366004613dfc565b6119d5565b6103f8610827366004614402565b611a88565b6103f861083a366004614434565b611b19565b6103ad60405180604001604052806005815260200164302e372e3360d81b81525081565b600061086e82611cef565b92915050565b60606065805461088390614490565b80601f01602080910402602001604051908101604052809291908181526020018280546108af90614490565b80156108fc5780601f106108d1576101008083540402835291602001916108fc565b820191906000526020600020905b8154815290600101906020018083116108df57829003601f168201915b5050505050905090565b600061091182611d3f565b506000908152606960205260409020546001600160a01b031690565b8061093781611d9e565b6109418383611e04565b505050565b60007f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378546001600160a01b031661097b611f26565b6001600160a01b031603610a3c57610991611f26565b6001600160a01b03166342966c68856040518263ffffffff1660e01b81526004016109be91815260200190565b600060405180830381600087803b1580156109d857600080fd5b505af11580156109ec573d6000803e3d6000fd5b505050821580159150610a065750610a06828401846144c4565b15610a2457610a153085611f35565b610a1f8585612083565b610a2e565b610a2e8585611f35565b50630a85bd0160e11b610a97565b60405162461bcd60e51b815260206004820152602560248201527f52656769737472793a204552433732315f524543454956494e475f50524f4849604482015264109255115160da1b60648201526084015b60405180910390fd5b95945050505050565b6060826001600160401b03811115610aba57610aba613f63565b604051908082528060200260200182016040528015610aed57816020015b6060815260200190600190039081610ad85790505b50905060005b83811015610b8e57610b5e858583818110610b1057610b106144df565b9050602002810190610b2291906144f5565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525087925061212e915050565b828281518110610b7057610b706144df565b60200260200101819052508080610b8690614551565b915050610af3565b509392505050565b6060610bd984848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525086925061212e915050565b949350505050565b606060005a9050610bf385858561139b565b610c4f5760405162461bcd60e51b815260206004820152602760248201527f554e535265676973747279466f727761726465723a205349474e41545552455f6044820152661253959053125160ca1b6064820152608401610a8e565b610ce1610c5f602087018761404c565b30604088013584610c7360608b018b6144f5565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061216392505050565b9150505b9392505050565b610134546001600160a01b0316610d01611f26565b6001600160a01b031614610d275760405162461bcd60e51b8152600401610a8e9061456a565b6000610d3b610d36888a6145b1565b612244565b9050610d4681612293565b610d59610d528261106a565b8a83612300565b610d6686868686856124a7565b8115610d8857610d888982610d83610d7e8b8d6145b1565b612515565b612596565b505050505050505050565b80610da5610d9f611f26565b826125d8565b610dc15760405162461bcd60e51b8152600401610a8e906145be565b81610dcb81611d9e565b610dd483612293565b610ddf858585612300565b5050505050565b6000610ce5610d3683856145b1565b80610e01610d9f611f26565b610e1d5760405162461bcd60e51b8152600401610a8e906145be565b81610e2781611d9e565b610e348787878787612656565b50505050505050565b80610e49610d9f611f26565b610e655760405162461bcd60e51b8152600401610a8e906145be565b81610e6f81611d9e565b61094183612293565b610e806126b9565b6001600160a01b0316610e91611f26565b6001600160a01b031614610eb75760405162461bcd60e51b8152600401610a8e90614607565b610ec18282611f35565b5050565b61094183838360405180602001604052806000815250611577565b80610eec610d9f611f26565b610f085760405162461bcd60e51b8152600401610a8e906145be565b81610f1281611d9e565b610f1b83612293565b610941836127ba565b6000610ce583836125d8565b80610f3c610d9f611f26565b610f585760405162461bcd60e51b8152600401610a8e906145be565b81610f6281611d9e565b610e348787878787612861565b80610f7b610d9f611f26565b610f975760405162461bcd60e51b8152600401610a8e906145be565b81610fa181611d9e565b610fad86868686612940565b505050505050565b6000818152606760205260408120546001600160a01b0316151561086e565b61100781604051602001610fe89190614649565b6040516020818303038152906040528051906020012060001c826129e0565b50565b610134546001600160a01b031661101f611f26565b6001600160a01b0316146110455760405162461bcd60e51b8152600401610a8e9061456a565b6001600160a01b0316600090815261013660205260409020805460ff19166001179055565b6000818152606760205260408120546001600160a01b03168061086e5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610a8e565b806110d6610d9f611f26565b6110f25760405162461bcd60e51b8152600401610a8e906145be565b6111046110fd611f26565b3084612300565b610ec161110f611f26565b83612083565b600061112082612244565b905061112b81612a05565b61113481611d9e565b610ec161113f611f26565b8261114985612515565b612a75565b60608061115b8484612afc565b909590945092505050565b60006001600160a01b0382166111d05760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b6064820152608401610a8e565b506001600160a01b031660009081526068602052604090205490565b6001600160a01b0381166000908152610135602052604081205461120f81612b1d565b611217578091505b50919050565b6112256126b9565b6001600160a01b0316611236611f26565b6001600160a01b03161461125c5760405162461bcd60e51b8152600401610a8e90614607565b6112668484611f35565b50505050565b6112768787612b67565b61127e611f26565b6001600160a01b03166112908661106a565b6001600160a01b0316146112e65760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610a8e565b610e3484848484896124a7565b60606066805461088390614490565b610134546001600160a01b0316611317611f26565b6001600160a01b03161461133d5760405162461bcd60e51b8152600401610a8e9061456a565b61013361134b8284836146ab565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b828260405161137d929190614793565b60405180910390a15050565b610ec1611394611f26565b8383612bd6565b6000610bd96113a9856147a7565b3085858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250612ca492505050565b806113f2610d9f611f26565b61140e5760405162461bcd60e51b8152600401610a8e906145be565b8161141881611d9e565b6112666114248461106a565b8585612300565b6000818152606760205260408120546001600160a01b031661144e57600061086e565b3092915050565b606080836001600160401b0381111561147057611470613f63565b6040519080825280602002602001820160405280156114a357816020015b606081526020019060019003908161148e5790505b509150836001600160401b038111156114be576114be613f63565b6040519080825280602002602001820160405280156114f157816020015b60608152602001906001900390816114dc5790505b50905060005b8481101561156e57611521868683818110611514576115146144df565b9050602002013585612afc565b848381518110611533576115336144df565b6020026020010184848151811061154c5761154c6144df565b602002602001018290528290525050808061156690614551565b9150506114f7565b50935093915050565b81611583610d9f611f26565b61159f5760405162461bcd60e51b8152600401610a8e906145be565b826115a981611d9e565b6115b284612293565b610fad86868686612ded565b610134546001600160a01b03166115d3611f26565b6001600160a01b0316146115f95760405162461bcd60e51b8152600401610a8e9061456a565b6000611608610d36888a6145b1565b9050611622898261161c610d7e8b8d6145b1565b85612e20565b610d8886868686856124a7565b600081815260c96020526040902080546060919061164c90614490565b80601f016020809104026020016040519081016040528092919081815260200182805461167890614490565b80156116c55780601f1061169a576101008083540402835291602001916116c5565b820191906000526020600020905b8154815290600101906020018083116116a857829003601f168201915b50505050509050919050565b6001600160a01b038116600090815261013560205260409020546060906116f781612b1d565b61121757600081815261013860205260409020805461171590614490565b80601f016020809104026020016040519081016040528092919081815260200182805461174190614490565b801561178e5780601f106117635761010080835404028352916020019161178e565b820191906000526020600020905b81548152906001019060200180831161177157829003601f168201915b5050505050915050919050565b60606117a682611d3f565b60006117b0612e73565b905060008151116117d05760405180602001604052806000815250610ce5565b806117da84612e83565b6040516020016117eb929190614831565b6040516020818303038152906040529392505050565b8061180d610d9f611f26565b6118295760405162461bcd60e51b8152600401610a8e906145be565b8161183381611d9e565b610e3487878787876124a7565b7f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87546001600160a01b0316611873611f26565b6001600160a01b0316146118995760405162461bcd60e51b8152600401610a8e90614607565b60208190036118bc5760006118b082840184613a3f565b90506112668482611f35565b60006118ca82840184614860565b805190915060005b81811015610fad576118fd868483815181106118f0576118f06144df565b6020026020010151611f35565b8061190781614551565b9150506118d2565b8061191b610d9f611f26565b6119375760405162461bcd60e51b8152600401610a8e906145be565b8161194181611d9e565b610e348787878787612f83565b6000611958611f26565b6001600160a01b03811660009081526101356020526040812054919250036119cc5760405162461bcd60e51b815260206004820152602160248201527f52656769737472793a20524556455253455f5245434f52445f49535f454d50546044820152605960f81b6064820152608401610a8e565b61100781612f99565b6060816001600160401b038111156119ef576119ef613f63565b604051908082528060200260200182016040528015611a2257816020015b6060815260200190600190039081611a0d5790505b50905060005b82811015611a8157611a51848483818110611a4557611a456144df565b9050602002013561162f565b828281518110611a6357611a636144df565b60200260200101819052508080611a7990614551565b915050611a28565b5092915050565b610134546001600160a01b0316611a9d611f26565b6001600160a01b031614611ac35760405162461bcd60e51b8152600401610a8e9061456a565b61013454611ada906001600160a01b031684611f35565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c39528383604051611b0c929190614793565b60405180910390a2505050565b600054610100900460ff1615808015611b395750600054600160ff909116105b80611b535750303b158015611b53575060005460ff166001145b611bb65760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610a8e565b6000805460ff191660011790558015611bd9576000805461ff0019166101001790555b61013480546001600160a01b0319166001600160a01b038716179055837f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec9237880546001600160a01b0319166001600160a01b03929092169190911790556040805180820182526013815272556e73746f707061626c6520446f6d61696e7360681b60208083019190915282518084019093526002835261155160f21b90830152611c8191612fde565b611c8961301e565b611c9161301e565b611c9a83613047565b611ca382613077565b8015610ddf576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b60006001600160e01b031982166380ac58cd60e01b1480611d2057506001600160e01b03198216635b5e139f60e01b145b8061086e57506301ffc9a760e01b6001600160e01b031983161461086e565b6000818152606760205260409020546001600160a01b03166110075760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610a8e565b303303611dfb57611dad6130a7565b81146110075760405162461bcd60e51b815260206004820152601760248201527f52656769737472793a20544f4b454e5f494e56414c49440000000000000000006044820152606401610a8e565b611007816130bb565b6000611e0f8261106a565b9050806001600160a01b0316836001600160a01b031603611e7c5760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b6064820152608401610a8e565b806001600160a01b0316611e8e611f26565b6001600160a01b03161480611eaa5750611eaa816107b6611f26565b611f1c5760405162461bcd60e51b815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c00006064820152608401610a8e565b61094183836130e9565b6000611f30613157565b905090565b6001600160a01b038216611f8b5760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610a8e565b6000818152606760205260409020546001600160a01b031615611ff05760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610a8e565b611ffc60008383613172565b6001600160a01b03821660009081526068602052604081208054600192906120259084906148f0565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b03861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b600061208d6126b9565b905061209981836130e9565b600080516020614c4a83398151915254604080516020808201869052825180830390910181528183019283905263e3dec8fb60e01b9092526001600160a01b0390921691829163e3dec8fb916120f6918891309190604401614903565b600060405180830381600087803b15801561211057600080fd5b505af1158015612124573d6000803e3d6000fd5b5050505050505050565b6060610ce5836040516020016121449190614649565b6040516020818303038152906040528051906020012060001c8361320f565b606061216e856130bb565b600080876001600160a01b0316866121888b8a89896132f1565b6040516121959190614649565b60006040518083038160008787f1925050503d80600081146121d3576040519150601f19603f3d011682016040523d82523d6000602084013e6121d8565b606091505b5090925090506121e9603f87614945565b5a116121f7576121f7614959565b61223782826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c4544000000000000815250613321565b9998505050505050505050565b805160009081905b8015611a815761227f828561226260018561496f565b81518110612272576122726144df565b602002602001015161335a565b91508061228b81614982565b91505061224c565b61229c81613406565b6040516020016122ae91815260200190565b60408051601f198184030181528282528051602091820120600085815260cb9092529181209190915582917f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9190a250565b826001600160a01b03166123138261106a565b6001600160a01b0316146123775760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b6064820152608401610a8e565b6001600160a01b0382166123d95760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610a8e565b6123e4838383613172565b6123ef6000826130e9565b6001600160a01b038316600090815260686020526040812080546001929061241890849061496f565b90915550506001600160a01b03821660009081526068602052604081208054600192906124469084906148f0565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60005b84811015610fad576125038686838181106124c7576124c76144df565b90506020028101906124d991906144f5565b8686858181106124eb576124eb6144df565b90506020028101906124fd91906144f5565b86612861565b8061250d81614551565b9150506124aa565b606060008260008151811061252c5761252c6144df565b602002602001015190506000600190505b8351811015611a815781848281518110612559576125596144df565b6020026020010151604051602001612572929190614999565b6040516020818303038152906040529150808061258e90614551565b91505061253d565b61dead6001600160a01b038416148015906125c857506001600160a01b03831660009081526101356020526040902054155b1561094157610941838383612a75565b6000806125e48361106a565b9050806001600160a01b0316846001600160a01b0316148061262b57506001600160a01b038082166000908152606a602090815260408083209388168352929052205460ff165b80610bd95750836001600160a01b031661264484610906565b6001600160a01b031614949350505050565b60005b84811015610fad576126a7868683818110612676576126766144df565b9050602002013585858481811061268f5761268f6144df565b90506020028101906126a191906144f5565b85612940565b806126b181614551565b915050612659565b600080516020614c4a833981519152546000906001600160a01b031680156127b65760405163721804d360e11b81523060048201526000906001600160a01b0383169063e43009a690602401602060405180830381865afa158015612722573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061274691906149d5565b60405163e66f960360e01b8152600481018290529091506001600160a01b0383169063e66f960390602401602060405180830381865afa15801561278e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127b291906149ee565b9250505b5090565b60006127c58261106a565b90506127d381600084613172565b6127de6000836130e9565b6001600160a01b038116600090815260686020526040812080546001929061280790849061496f565b909155505060008281526067602052604080822080546001600160a01b0319169055518391906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b60008585604051602001612876929190614a0b565b60408051601f198184030181528282528051602091820120601f89018290048202840182019092528783529092506128ca91839189908990819084018382808284376000920191909152506129e092505050565b610fad8187878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061342e915050565b61294984613563565b6129955760405162461bcd60e51b815260206004820152601c60248201527f5265636f726453746f726167653a204b45595f4e4f545f464f554e44000000006044820152606401610a8e565b611266846129a28661162f565b85858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525087925061342e915050565b6129e982613563565b610ec157600082815260c9602052604090206109418282614a1b565b612a0d611f26565b6001600160a01b0316612a1f8261106a565b6001600160a01b0316146110075760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610a8e565b6000828152610138602052604090208054612a8f90614490565b9050600003612ab357600082815261013860205260409020612ab18282614a1b565b505b6001600160a01b03831660008181526101356020526040808220859055518492917feb76a21470988c474a21f690cc28fee1ed511bd812dc3c21fd0f49c5e5d4708a91a3505050565b606080612b088461162f565b9150612b14848461320f565b90509250929050565b6000818152610137602052604081205460ff16801561086e57506101366000612b44611f26565b6001600160a01b0316815260208101919091526040016000205460ff1692915050565b600080516020614c4a83398151915254604051633805550f60e01b81526001600160a01b03909116908190633805550f90612ba89086908690600401614793565b600060405180830381600087803b158015612bc257600080fd5b505af1158015610e34573d6000803e3d6000fd5b816001600160a01b0316836001600160a01b031603612c375760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610a8e565b6001600160a01b038381166000818152606a6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015612ceb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612d0f91906149d5565b90506000612dbd866060015180519060200120868860200151604051602001612d5d9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b9050818660200151148015612de357508551612de3906001600160a01b03168286613589565b9695505050505050565b612df8848484612300565b612e04848484846136cb565b6112665760405162461bcd60e51b8152600401610a8e90614ada565b612e2a8484611f35565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c395283604051612e5a9190613a2c565b60405180910390a2801561126657611266848484612596565b6060610133805461088390614490565b606081600003612eaa5750506040805180820190915260018152600360fc1b602082015290565b8160005b8115612ed45780612ebe81614551565b9150612ecd9050600a83614945565b9150612eae565b6000816001600160401b03811115612eee57612eee613f63565b6040519080825280601f01601f191660200182016040528015612f18576020820181803683370190505b5090505b8415610bd957612f2d60018361496f565b9150612f3a600a86614b2c565b612f459060306148f0565b60f81b818381518110612f5a57612f5a6144df565b60200101906001600160f81b031916908160001a905350612f7c600a86614945565b9450612f1c565b612f8c81612293565b610ddf85858585856124a7565b6001600160a01b03811660008181526101356020526040808220829055517ffcf5eec0cfa3e6332f5f0e63ec242d71f866a61d121d6cdf5c2eb3b668a26c4f9190a250565b600054610100900460ff166130055760405162461bcd60e51b8152600401610a8e90614b40565b60656130118382614a1b565b5060666109418282614a1b565b600054610100900460ff166130455760405162461bcd60e51b8152600401610a8e90614b40565b565b600054610100900460ff1661306e5760405162461bcd60e51b8152600401610a8e90614b40565b611007816137d0565b600054610100900460ff1661309e5760405162461bcd60e51b8152600401610a8e90614b40565b61100781613829565b60003033036130b85750601f193601355b90565b600081815261010060205260409020546130d69060016148f0565b6000918252610100602052604090912055565b600081815260696020526040902080546001600160a01b0319166001600160a01b038416908117909155819061311e8261106a565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b600030330361316d575060331936013560601c90565b503390565b6000818152610137602052604090205460ff16158061319957506001600160a01b03821615155b6131e55760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a20544f4b454e5f555047524144454400000000000000006044820152606401610a8e565b6001600160a01b038316600090815261013560205260409020548190036109415761094183612f99565b606061321a82612b1d565b15613234575060408051602081019091526000815261086e565b60ca600061324184613406565b81526020019081526020016000206000848152602001908152602001600020805461326b90614490565b80601f016020809104026020016040519081016040528092919081815260200182805461329790614490565b80156132e45780601f106132b9576101008083540402835291602001916132e4565b820191906000526020600020905b8154815290600101906020018083116132c757829003601f168201915b5050505050905092915050565b606082858560405160200161330893929190614b8b565b6040516020818303038152906040529050949350505050565b60608315613330575081610ce5565b8251156133405782518084602001fd5b8160405162461bcd60e51b8152600401610a8e9190613a2c565b600081516000036133a55760405162461bcd60e51b815260206004820152601560248201527452656769737472793a204c4142454c5f454d50545960581b6044820152606401610a8e565b82826040516020016133b79190614649565b604051602081830303815290604052805190602001206040516020016133e7929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b600081815260cb6020526040812054156127b657600082815260cb602052604090205461086e565b60ca600061343b83613406565b81526020019081526020016000206000858152602001908152602001600020805461346590614490565b90506000036134bd578260405161347c9190614649565b6040518091039020817f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f86856040516134b49190613a2c565b60405180910390a35b8160ca60006134cb84613406565b8152602001908152602001600020600086815260200190815260200160002090816134f69190614a1b565b50816040516135059190614649565b60405180910390208360405161351b9190614649565b6040518091039020827f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d92868660405161355592919061416e565b60405180910390a450505050565b600081815260c960205260408120805482919061357f90614490565b9050119050919050565b60008060006135988585613877565b909250905060008160048111156135b1576135b1614bca565b1480156135cf5750856001600160a01b0316826001600160a01b0316145b156135df57600192505050610ce5565b600080876001600160a01b0316631626ba7e60e01b8888604051602401613607929190614be0565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516136459190614649565b600060405180830381855afa9150503d8060008114613680576040519150601f19603f3d011682016040523d82523d6000602084013e613685565b606091505b5091509150818015613698575080516020145b80156136bf57508051630b135d3f60e11b906136bd90830160209081019084016149d5565b145b98975050505050505050565b60006001600160a01b0384163b156137c857836001600160a01b031663150b7a026136f4611f26565b8786866040518563ffffffff1660e01b81526004016137169493929190614bf9565b6020604051808303816000875af1925050508015613751575060408051601f3d908101601f1916820190925261374e91810190614c2c565b60015b6137ae573d80801561377f576040519150601f19603f3d011682016040523d82523d6000602084013e613784565b606091505b5080516000036137a65760405162461bcd60e51b8152600401610a8e90614ada565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610bd9565b506001610bd9565b600054610100900460ff166137f75760405162461bcd60e51b8152600401610a8e90614b40565b80600080516020614c4a8339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b600054610100900460ff166138505760405162461bcd60e51b8152600401610a8e90614b40565b807f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87613808565b60008082516041036138ad5760208301516040840151606085015160001a6138a1878285856138bc565b945094505050506138b5565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08311156138f357506000905060036139a0565b8460ff16601b1415801561390b57508460ff16601c14155b1561391c57506000905060046139a0565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613970573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613999576000600192509250506139a0565b9150600090505b94509492505050565b6001600160e01b03198116811461100757600080fd5b6000602082840312156139d157600080fd5b8135610ce5816139a9565b60005b838110156139f75781810151838201526020016139df565b50506000910152565b60008151808452613a188160208601602086016139dc565b601f01601f19169290920160200192915050565b602081526000610ce56020830184613a00565b600060208284031215613a5157600080fd5b5035919050565b6001600160a01b038116811461100757600080fd5b60008060408385031215613a8057600080fd5b8235613a8b81613a58565b946020939093013593505050565b60008083601f840112613aab57600080fd5b5081356001600160401b03811115613ac257600080fd5b6020830191508360208285010111156138b557600080fd5b600080600080600060808688031215613af257600080fd5b8535613afd81613a58565b94506020860135613b0d81613a58565b93506040860135925060608601356001600160401b03811115613b2f57600080fd5b613b3b88828901613a99565b969995985093965092949392505050565b60008083601f840112613b5e57600080fd5b5081356001600160401b03811115613b7557600080fd5b6020830191508360208260051b85010111156138b557600080fd5b600080600060408486031215613ba557600080fd5b83356001600160401b03811115613bbb57600080fd5b613bc786828701613b4c565b909790965060209590950135949350505050565b600081518084526020808501808196508360051b8101915082860160005b85811015613c23578284038952613c11848351613a00565b98850198935090840190600101613bf9565b5091979650505050505050565b602081526000610ce56020830184613bdb565b600080600060408486031215613c5857600080fd5b83356001600160401b03811115613c6e57600080fd5b613bc786828701613a99565b600080600060408486031215613c8f57600080fd5b83356001600160401b0380821115613ca657600080fd5b9085019060808288031215613cba57600080fd5b90935060208501359080821115613cd057600080fd5b50613cdd86828701613a99565b9497909650939450505050565b80358015158114613cfa57600080fd5b919050565b60008060008060008060008060a0898b031215613d1b57600080fd5b8835613d2681613a58565b975060208901356001600160401b0380821115613d4257600080fd5b613d4e8c838d01613b4c565b909950975060408b0135915080821115613d6757600080fd5b613d738c838d01613b4c565b909750955060608b0135915080821115613d8c57600080fd5b50613d998b828c01613b4c565b9094509250613dac905060808a01613cea565b90509295985092959890939650565b600080600060608486031215613dd057600080fd5b8335613ddb81613a58565b92506020840135613deb81613a58565b929592945050506040919091013590565b60008060208385031215613e0f57600080fd5b82356001600160401b03811115613e2557600080fd5b613e3185828601613b4c565b90969095509350505050565b600080600080600060608688031215613e5557600080fd5b85356001600160401b0380821115613e6c57600080fd5b613e7889838a01613b4c565b90975095506020880135915080821115613e9157600080fd5b50613e9e88828901613b4c565b96999598509660400135949350505050565b600080600080600060608688031215613ec857600080fd5b85356001600160401b0380821115613edf57600080fd5b613eeb89838a01613a99565b90975095506020880135915080821115613f0457600080fd5b50613e9e88828901613a99565b60008060008060608587031215613f2757600080fd5b8435935060208501356001600160401b03811115613f4457600080fd5b613f5087828801613a99565b9598909750949560400135949350505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715613fa157613fa1613f63565b604052919050565b600082601f830112613fba57600080fd5b81356001600160401b03811115613fd357613fd3613f63565b613fe6601f8201601f1916602001613f79565b818152846020838601011115613ffb57600080fd5b816020850160208301376000918101602001919091529392505050565b60006020828403121561402a57600080fd5b81356001600160401b0381111561404057600080fd5b610bd984828501613fa9565b60006020828403121561405e57600080fd5b8135610ce581613a58565b60006001600160401b0382111561408257614082613f63565b5060051b60200190565b600061409f61409a84614069565b613f79565b8381529050602080820190600585901b8401868111156140be57600080fd5b845b818110156140f95780356001600160401b038111156140df5760008081fd5b6140eb89828901613fa9565b8552509282019282016140c0565b505050509392505050565b60006020828403121561411657600080fd5b81356001600160401b0381111561412c57600080fd5b8201601f8101841361413d57600080fd5b610bd98482356020840161408c565b6000806040838503121561415f57600080fd5b50508035926020909101359150565b6040815260006141816040830185613a00565b8281036020840152610ce18185613a00565b600080600080606085870312156141a957600080fd5b84356141b481613a58565b93506020850135925060408501356001600160401b038111156141d657600080fd5b6141e287828801613a99565b95989497509550505050565b60008060008060008060006080888a03121561420957600080fd5b87356001600160401b038082111561422057600080fd5b61422c8b838c01613a99565b909950975060208a0135965060408a013591508082111561424c57600080fd5b6142588b838c01613b4c565b909650945060608a013591508082111561427157600080fd5b5061427e8a828b01613b4c565b989b979a50959850939692959293505050565b600080602083850312156142a457600080fd5b82356001600160401b038111156142ba57600080fd5b613e3185828601613a99565b600080604083850312156142d957600080fd5b82356142e481613a58565b9150612b1460208401613cea565b6040815260006143056040830185613bdb565b8281036020840152610ce18185613bdb565b6000806000806080858703121561432d57600080fd5b843561433881613a58565b9350602085013561434881613a58565b92506040850135915060608501356001600160401b0381111561436a57600080fd5b61437687828801613fa9565b91505092959194509250565b60008060006040848603121561439757600080fd5b83356143a281613a58565b925060208401356001600160401b038111156143bd57600080fd5b613cdd86828701613a99565b600080604083850312156143dc57600080fd5b82356143e781613a58565b915060208301356143f781613a58565b809150509250929050565b60008060006040848603121561441757600080fd5b8335925060208401356001600160401b038111156143bd57600080fd5b6000806000806080858703121561444a57600080fd5b843561445581613a58565b9350602085013561446581613a58565b9250604085013561447581613a58565b9150606085013561448581613a58565b939692955090935050565b600181811c908216806144a457607f821691505b60208210810361121757634e487b7160e01b600052602260045260246000fd5b6000602082840312156144d657600080fd5b610ce582613cea565b634e487b7160e01b600052603260045260246000fd5b6000808335601e1984360301811261450c57600080fd5b8301803591506001600160401b0382111561452657600080fd5b6020019150368190038213156138b557600080fd5b634e487b7160e01b600052601160045260246000fd5b6000600182016145635761456361453b565b5060010190565b60208082526027908201527f52656769737472793a2053454e4445525f49535f4e4f545f4d494e54494e475f60408201526626a0a720a3a2a960c91b606082015260800190565b6000610ce536848461408c565b60208082526029908201527f52656769737472793a2053454e4445525f49535f4e4f545f415050524f5645446040820152682fa7a92fa7aba722a960b91b606082015260800190565b60208082526022908201527f52656769737472793a20494e53554646494349454e545f5045524d495353494f6040820152614e5360f01b606082015260800190565b6000825161465b8184602087016139dc565b9190910192915050565b601f82111561094157600081815260208120601f850160051c8101602086101561468c5750805b601f850160051c820191505b81811015610fad57828155600101614698565b6001600160401b038311156146c2576146c2613f63565b6146d6836146d08354614490565b83614665565b6000601f84116001811461470a57600085156146f25750838201355b600019600387901b1c1916600186901b178355610ddf565b600083815260209020601f19861690835b8281101561473b578685013582556020948501946001909201910161471b565b50868210156147585760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b602081526000610bd960208301848661476a565b6000608082360312156147b957600080fd5b604051608081016001600160401b0382821081831117156147dc576147dc613f63565b81604052843591506147ed82613a58565b8183526020850135602084015260408501356040840152606085013591508082111561481857600080fd5b5061482536828601613fa9565b60608301525092915050565b600083516148438184602088016139dc565b8351908301906148578183602088016139dc565b01949350505050565b6000602080838503121561487357600080fd5b82356001600160401b0381111561488957600080fd5b8301601f8101851361489a57600080fd5b80356148a861409a82614069565b81815260059190911b820183019083810190878311156148c757600080fd5b928401925b828410156148e5578335825292840192908401906148cc565b979650505050505050565b8082018082111561086e5761086e61453b565b6001600160a01b03848116825283166020820152606060408201819052600090610a9790830184613a00565b634e487b7160e01b600052601260045260246000fd5b6000826149545761495461492f565b500490565b634e487b7160e01b600052600160045260246000fd5b8181038181111561086e5761086e61453b565b6000816149915761499161453b565b506000190190565b600083516149ab8184602088016139dc565b601760f91b90830190815283516149c98160018401602088016139dc565b01600101949350505050565b6000602082840312156149e757600080fd5b5051919050565b600060208284031215614a0057600080fd5b8151610ce581613a58565b8183823760009101908152919050565b81516001600160401b03811115614a3457614a34613f63565b614a4881614a428454614490565b84614665565b602080601f831160018114614a7d5760008415614a655750858301515b600019600386901b1c1916600185901b178555610fad565b600085815260208120601f198616915b82811015614aac57888601518255948401946001909101908401614a8d565b5085821015614aca5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b600082614b3b57614b3b61492f565b500690565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60008451614b9d8184602089016139dc565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b600052602160045260246000fd5b828152604060208201526000610bd96040830184613a00565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090612de390830184613a00565b600060208284031215614c3e57600080fd5b8151610ce5816139a956febe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafea164736f6c6343000811000a"; +const isSuperArgs = (xs) => xs.length > 1; +class UNSRegistryV07__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(overrides) { + return super.getDeployTransaction(overrides || {}); + } + deploy(overrides) { + return super.deploy(overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.UNSRegistryV07__factory = UNSRegistryV07__factory; +UNSRegistryV07__factory.bytecode = _bytecode; +UNSRegistryV07__factory.abi = _abi; diff --git a/dist/types/factories/contracts/history/index.d.ts b/dist/types/factories/contracts/history/index.d.ts new file mode 100644 index 00000000..72767b2b --- /dev/null +++ b/dist/types/factories/contracts/history/index.d.ts @@ -0,0 +1,4 @@ +export { IUNSRegistryV07__factory } from "./IUNSRegistryV07__factory"; +export { ProxyReaderV04__factory } from "./ProxyReaderV04__factory"; +export { UNSRegistryV07__factory } from "./UNSRegistryV07__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/history/index.d.ts.map b/dist/types/factories/contracts/history/index.d.ts.map new file mode 100644 index 00000000..00381afc --- /dev/null +++ b/dist/types/factories/contracts/history/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/history/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/contracts/history/index.js b/dist/types/factories/contracts/history/index.js new file mode 100644 index 00000000..7431d3be --- /dev/null +++ b/dist/types/factories/contracts/history/index.js @@ -0,0 +1,9 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.UNSRegistryV07__factory = exports.ProxyReaderV04__factory = exports.IUNSRegistryV07__factory = void 0; +var IUNSRegistryV07__factory_1 = require("./IUNSRegistryV07__factory"); +Object.defineProperty(exports, "IUNSRegistryV07__factory", { enumerable: true, get: function () { return IUNSRegistryV07__factory_1.IUNSRegistryV07__factory; } }); +var ProxyReaderV04__factory_1 = require("./ProxyReaderV04__factory"); +Object.defineProperty(exports, "ProxyReaderV04__factory", { enumerable: true, get: function () { return ProxyReaderV04__factory_1.ProxyReaderV04__factory; } }); +var UNSRegistryV07__factory_1 = require("./UNSRegistryV07__factory"); +Object.defineProperty(exports, "UNSRegistryV07__factory", { enumerable: true, get: function () { return UNSRegistryV07__factory_1.UNSRegistryV07__factory; } }); diff --git a/dist/types/factories/contracts/index.d.ts b/dist/types/factories/contracts/index.d.ts new file mode 100644 index 00000000..a4e7e943 --- /dev/null +++ b/dist/types/factories/contracts/index.d.ts @@ -0,0 +1,29 @@ +export * as ens from "./@ens"; +export * as maticnetwork from "./@maticnetwork"; +export * as cns from "./cns"; +export * as custody from "./custody"; +export * as history from "./history"; +export * as metatx from "./metatx"; +export * as mocks from "./mocks"; +export * as roles from "./roles"; +export * as utils from "./utils"; +export { ChildRegistry__factory } from "./ChildRegistry__factory"; +export { DotCoinBurner__factory } from "./DotCoinBurner__factory"; +export { IAddressReader__factory } from "./IAddressReader__factory"; +export { IDataReader__factory } from "./IDataReader__factory"; +export { IERC1967__factory } from "./IERC1967__factory"; +export { IMintingManager__factory } from "./IMintingManager__factory"; +export { IRecordReader__factory } from "./IRecordReader__factory"; +export { IRecordStorage__factory } from "./IRecordStorage__factory"; +export { IRegistryReader__factory } from "./IRegistryReader__factory"; +export { IReverseRegistry__factory } from "./IReverseRegistry__factory"; +export { IRootRegistry__factory } from "./IRootRegistry__factory"; +export { IUNSRegistry__factory } from "./IUNSRegistry__factory"; +export { KeyStorage__factory } from "./KeyStorage__factory"; +export { MintingManager__factory } from "./MintingManager__factory"; +export { ProxyReader__factory } from "./ProxyReader__factory"; +export { RecordStorage__factory } from "./RecordStorage__factory"; +export { RootRegistry__factory } from "./RootRegistry__factory"; +export { UNSOperator__factory } from "./UNSOperator__factory"; +export { UNSRegistry__factory } from "./UNSRegistry__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/index.d.ts.map b/dist/types/factories/contracts/index.d.ts.map new file mode 100644 index 00000000..eb0a0bea --- /dev/null +++ b/dist/types/factories/contracts/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../types/factories/contracts/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,GAAG,MAAM,QAAQ,CAAC;AAC9B,OAAO,KAAK,YAAY,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC;AAC7B,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AACrC,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AACrC,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/contracts/index.js b/dist/types/factories/contracts/index.js new file mode 100644 index 00000000..a313b274 --- /dev/null +++ b/dist/types/factories/contracts/index.js @@ -0,0 +1,73 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.UNSRegistry__factory = exports.UNSOperator__factory = exports.RootRegistry__factory = exports.RecordStorage__factory = exports.ProxyReader__factory = exports.MintingManager__factory = exports.KeyStorage__factory = exports.IUNSRegistry__factory = exports.IRootRegistry__factory = exports.IReverseRegistry__factory = exports.IRegistryReader__factory = exports.IRecordStorage__factory = exports.IRecordReader__factory = exports.IMintingManager__factory = exports.IERC1967__factory = exports.IDataReader__factory = exports.IAddressReader__factory = exports.DotCoinBurner__factory = exports.ChildRegistry__factory = exports.utils = exports.roles = exports.mocks = exports.metatx = exports.history = exports.custody = exports.cns = exports.maticnetwork = exports.ens = void 0; +exports.ens = __importStar(require("./@ens")); +exports.maticnetwork = __importStar(require("./@maticnetwork")); +exports.cns = __importStar(require("./cns")); +exports.custody = __importStar(require("./custody")); +exports.history = __importStar(require("./history")); +exports.metatx = __importStar(require("./metatx")); +exports.mocks = __importStar(require("./mocks")); +exports.roles = __importStar(require("./roles")); +exports.utils = __importStar(require("./utils")); +var ChildRegistry__factory_1 = require("./ChildRegistry__factory"); +Object.defineProperty(exports, "ChildRegistry__factory", { enumerable: true, get: function () { return ChildRegistry__factory_1.ChildRegistry__factory; } }); +var DotCoinBurner__factory_1 = require("./DotCoinBurner__factory"); +Object.defineProperty(exports, "DotCoinBurner__factory", { enumerable: true, get: function () { return DotCoinBurner__factory_1.DotCoinBurner__factory; } }); +var IAddressReader__factory_1 = require("./IAddressReader__factory"); +Object.defineProperty(exports, "IAddressReader__factory", { enumerable: true, get: function () { return IAddressReader__factory_1.IAddressReader__factory; } }); +var IDataReader__factory_1 = require("./IDataReader__factory"); +Object.defineProperty(exports, "IDataReader__factory", { enumerable: true, get: function () { return IDataReader__factory_1.IDataReader__factory; } }); +var IERC1967__factory_1 = require("./IERC1967__factory"); +Object.defineProperty(exports, "IERC1967__factory", { enumerable: true, get: function () { return IERC1967__factory_1.IERC1967__factory; } }); +var IMintingManager__factory_1 = require("./IMintingManager__factory"); +Object.defineProperty(exports, "IMintingManager__factory", { enumerable: true, get: function () { return IMintingManager__factory_1.IMintingManager__factory; } }); +var IRecordReader__factory_1 = require("./IRecordReader__factory"); +Object.defineProperty(exports, "IRecordReader__factory", { enumerable: true, get: function () { return IRecordReader__factory_1.IRecordReader__factory; } }); +var IRecordStorage__factory_1 = require("./IRecordStorage__factory"); +Object.defineProperty(exports, "IRecordStorage__factory", { enumerable: true, get: function () { return IRecordStorage__factory_1.IRecordStorage__factory; } }); +var IRegistryReader__factory_1 = require("./IRegistryReader__factory"); +Object.defineProperty(exports, "IRegistryReader__factory", { enumerable: true, get: function () { return IRegistryReader__factory_1.IRegistryReader__factory; } }); +var IReverseRegistry__factory_1 = require("./IReverseRegistry__factory"); +Object.defineProperty(exports, "IReverseRegistry__factory", { enumerable: true, get: function () { return IReverseRegistry__factory_1.IReverseRegistry__factory; } }); +var IRootRegistry__factory_1 = require("./IRootRegistry__factory"); +Object.defineProperty(exports, "IRootRegistry__factory", { enumerable: true, get: function () { return IRootRegistry__factory_1.IRootRegistry__factory; } }); +var IUNSRegistry__factory_1 = require("./IUNSRegistry__factory"); +Object.defineProperty(exports, "IUNSRegistry__factory", { enumerable: true, get: function () { return IUNSRegistry__factory_1.IUNSRegistry__factory; } }); +var KeyStorage__factory_1 = require("./KeyStorage__factory"); +Object.defineProperty(exports, "KeyStorage__factory", { enumerable: true, get: function () { return KeyStorage__factory_1.KeyStorage__factory; } }); +var MintingManager__factory_1 = require("./MintingManager__factory"); +Object.defineProperty(exports, "MintingManager__factory", { enumerable: true, get: function () { return MintingManager__factory_1.MintingManager__factory; } }); +var ProxyReader__factory_1 = require("./ProxyReader__factory"); +Object.defineProperty(exports, "ProxyReader__factory", { enumerable: true, get: function () { return ProxyReader__factory_1.ProxyReader__factory; } }); +var RecordStorage__factory_1 = require("./RecordStorage__factory"); +Object.defineProperty(exports, "RecordStorage__factory", { enumerable: true, get: function () { return RecordStorage__factory_1.RecordStorage__factory; } }); +var RootRegistry__factory_1 = require("./RootRegistry__factory"); +Object.defineProperty(exports, "RootRegistry__factory", { enumerable: true, get: function () { return RootRegistry__factory_1.RootRegistry__factory; } }); +var UNSOperator__factory_1 = require("./UNSOperator__factory"); +Object.defineProperty(exports, "UNSOperator__factory", { enumerable: true, get: function () { return UNSOperator__factory_1.UNSOperator__factory; } }); +var UNSRegistry__factory_1 = require("./UNSRegistry__factory"); +Object.defineProperty(exports, "UNSRegistry__factory", { enumerable: true, get: function () { return UNSRegistry__factory_1.UNSRegistry__factory; } }); diff --git a/dist/types/factories/contracts/metatx/BaseForwarder__factory.d.ts b/dist/types/factories/contracts/metatx/BaseForwarder__factory.d.ts new file mode 100644 index 00000000..47c48059 --- /dev/null +++ b/dist/types/factories/contracts/metatx/BaseForwarder__factory.d.ts @@ -0,0 +1,92 @@ +import { type ContractRunner } from "ethers"; +import type { BaseForwarder, BaseForwarderInterface } from "../../../contracts/metatx/BaseForwarder"; +export declare class BaseForwarder__factory { + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly components: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "nonce"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly internalType: "struct IForwarder.ForwardRequest"; + readonly name: "req"; + readonly type: "tuple"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "execute"; + readonly outputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "nonceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly components: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "nonce"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly internalType: "struct IForwarder.ForwardRequest"; + readonly name: "req"; + readonly type: "tuple"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "verify"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): BaseForwarderInterface; + static connect(address: string, runner?: ContractRunner | null): BaseForwarder; +} +//# sourceMappingURL=BaseForwarder__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/metatx/BaseForwarder__factory.d.ts.map b/dist/types/factories/contracts/metatx/BaseForwarder__factory.d.ts.map new file mode 100644 index 00000000..b3492e06 --- /dev/null +++ b/dist/types/factories/contracts/metatx/BaseForwarder__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"BaseForwarder__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/metatx/BaseForwarder__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,aAAa,EACb,sBAAsB,EACvB,MAAM,yCAAyC,CAAC;AAoHjD,qBAAa,sBAAsB;IACjC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,sBAAsB;IAGhD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,aAAa;CAGjB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/metatx/BaseForwarder__factory.js b/dist/types/factories/contracts/metatx/BaseForwarder__factory.js new file mode 100644 index 00000000..4580846a --- /dev/null +++ b/dist/types/factories/contracts/metatx/BaseForwarder__factory.js @@ -0,0 +1,127 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.BaseForwarder__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + components: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "uint256", + name: "nonce", + type: "uint256", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + internalType: "struct IForwarder.ForwardRequest", + name: "req", + type: "tuple", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "execute", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "nonceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + components: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "uint256", + name: "nonce", + type: "uint256", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + internalType: "struct IForwarder.ForwardRequest", + name: "req", + type: "tuple", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "verify", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class BaseForwarder__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.BaseForwarder__factory = BaseForwarder__factory; +BaseForwarder__factory.abi = _abi; diff --git a/dist/types/factories/contracts/metatx/BaseRoutingForwarder__factory.d.ts b/dist/types/factories/contracts/metatx/BaseRoutingForwarder__factory.d.ts new file mode 100644 index 00000000..c2a53f95 --- /dev/null +++ b/dist/types/factories/contracts/metatx/BaseRoutingForwarder__factory.d.ts @@ -0,0 +1,92 @@ +import { type ContractRunner } from "ethers"; +import type { BaseRoutingForwarder, BaseRoutingForwarderInterface } from "../../../contracts/metatx/BaseRoutingForwarder"; +export declare class BaseRoutingForwarder__factory { + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly components: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "nonce"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly internalType: "struct IForwarder.ForwardRequest"; + readonly name: "req"; + readonly type: "tuple"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "execute"; + readonly outputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "nonceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly components: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "nonce"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly internalType: "struct IForwarder.ForwardRequest"; + readonly name: "req"; + readonly type: "tuple"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "verify"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): BaseRoutingForwarderInterface; + static connect(address: string, runner?: ContractRunner | null): BaseRoutingForwarder; +} +//# sourceMappingURL=BaseRoutingForwarder__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/metatx/BaseRoutingForwarder__factory.d.ts.map b/dist/types/factories/contracts/metatx/BaseRoutingForwarder__factory.d.ts.map new file mode 100644 index 00000000..2f36ca09 --- /dev/null +++ b/dist/types/factories/contracts/metatx/BaseRoutingForwarder__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"BaseRoutingForwarder__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/metatx/BaseRoutingForwarder__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,oBAAoB,EACpB,6BAA6B,EAC9B,MAAM,gDAAgD,CAAC;AAoHxD,qBAAa,6BAA6B;IACxC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,6BAA6B;IAGvD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,oBAAoB;CAOxB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/metatx/BaseRoutingForwarder__factory.js b/dist/types/factories/contracts/metatx/BaseRoutingForwarder__factory.js new file mode 100644 index 00000000..8e27a59d --- /dev/null +++ b/dist/types/factories/contracts/metatx/BaseRoutingForwarder__factory.js @@ -0,0 +1,127 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.BaseRoutingForwarder__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + components: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "uint256", + name: "nonce", + type: "uint256", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + internalType: "struct IForwarder.ForwardRequest", + name: "req", + type: "tuple", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "execute", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "nonceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + components: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "uint256", + name: "nonce", + type: "uint256", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + internalType: "struct IForwarder.ForwardRequest", + name: "req", + type: "tuple", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "verify", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class BaseRoutingForwarder__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.BaseRoutingForwarder__factory = BaseRoutingForwarder__factory; +BaseRoutingForwarder__factory.abi = _abi; diff --git a/dist/types/factories/contracts/metatx/CNSRegistryForwarder__factory.d.ts b/dist/types/factories/contracts/metatx/CNSRegistryForwarder__factory.d.ts new file mode 100644 index 00000000..d68ba91a --- /dev/null +++ b/dist/types/factories/contracts/metatx/CNSRegistryForwarder__factory.d.ts @@ -0,0 +1,115 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, AddressLike, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../common"; +import type { CNSRegistryForwarder, CNSRegistryForwarderInterface } from "../../../contracts/metatx/CNSRegistryForwarder"; +declare type CNSRegistryForwarderConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class CNSRegistryForwarder__factory extends ContractFactory { + constructor(...args: CNSRegistryForwarderConstructorParams); + getDeployTransaction(target: AddressLike, overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(target: AddressLike, overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): CNSRegistryForwarder__factory; + static readonly bytecode = "0x60806040523480156200001157600080fd5b5060405162001ef938038062001ef9833981016040819052620000349162000657565b600180546001600160a01b0319166001600160a01b03831617905560408051606081019091526025808252620000c7919062001b7960208301396040518060600160405280602e815260200162001e87602e913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b6200013e60405180606001604052806029815260200162001c046029913960405180606001604052806032815260200162001c8a6032913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b620001b56040518060600160405280602f815260200162001d93602f913960405180606001604052806038815260200162001b9e6038913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b620002216040518060400160405280600d81526020016c6275726e2875696e743235362960981b8152506040518060400160405280601681526020017f6275726e466f722875696e743235362c627974657329000000000000000000008152506200061860201b60201c565b6200029860405180606001604052806021815260200162001e66602191396040518060600160405280602a815260200162001d69602a913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b6200030f60405180606001604052806025815260200162001cde602591396040518060600160405280602e815260200162001bd6602e913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b620003866040518060600160405280602b815260200162001dfd602b913960405180606001604052806034815260200162001b456034913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b620003fd60405180606001604052806031815260200162001d38603191396040518060600160405280603a815260200162001c50603a913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b6200047460405180606001604052806035815260200162001d03603591396040518060600160405280603e815260200162001e28603e913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b620004eb6040518060600160405280603b815260200162001dc2603b913960405180608001604052806044815260200162001eb56044913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b6200057e6040518060400160405280601981526020017f6275726e4368696c642875696e743235362c737472696e67290000000000000081525060405180606001604052806022815260200162001cbc6022913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b620006116040518060400160405280601a81526020017f7265736f6c7665546f28616464726573732c75696e743235362900000000000081525060405180606001604052806023815260200162001c2d6023913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b5062000689565b80516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b6000602082840312156200066a57600080fd5b81516001600160a01b03811681146200068257600080fd5b9392505050565b6114ac80620006996000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a424740014610090575b600080fd5b610059610054366004610cac565b6100b3565b6040516100669190610d9b565b60405180910390f35b61008261007d366004610dae565b610162565b604051908152602001610066565b6100a361009e366004610cac565b6101d6565b6040519015158152602001610066565b606060005a90506101576100ca6020870187610ddc565b6001546001600160a01b03166040880135846100e960608b018b610df9565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061023592505050565b9150505b9392505050565b600154604051636ccbae5f60e01b8152600481018390526000916001600160a01b031690636ccbae5f90602401602060405180830381865afa1580156101ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d09190610e40565b92915050565b600061022d6101e485610ef1565b600154604080516020601f88018190048102820181019092528681526001600160a01b039092169190879087908190840183828082843760009201919091525061030d92505050565b949350505050565b6060600080876001600160a01b0316866102518b8a8989610355565b60405161025e9190610f9b565b60006040518083038160008787f1925050503d806000811461029c576040519150601f19603f3d011682016040523d82523d6000602084013e6102a1565b606091505b5090925090506102b2603f87610fb7565b5a116102c0576102c0610fd9565b61030082826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061040a565b9998505050505050505050565b600061031a848484610443565b801561022d575060608401516020908101516001600160e01b031990811660009081529182905260409091205460e01b16151561022d565b50565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036103e75760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526103ff82828661058c565b979650505050505050565b6060831561041957508161015b565b8251156104295782518084602001fd5b8160405162461bcd60e51b81526004016103de9190610d9b565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561048a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104ae9190610e40565b9050600061055c8660600151805190602001208688602001516040516020016104fc9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561058257508551610582906001600160a01b03168286610a38565b9695505050505050565b60606001600160e01b03198416631de5861160e31b0361061a576000806000858060200190518101906105bf9190610fef565b92509250925086838383886040516024016105dd9493929190611032565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152935061015b92505050565b6001600160e01b03198416636debcb8d60e01b0361064b576000806000858060200190518101906105bf9190610fef565b6001600160e01b0319841663280d9b0560e01b036106dd576000806000808680602001905181019061067d91906110aa565b935093509350935087848484848a60405160240161069f959493929190611118565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152945061015b9350505050565b6001600160e01b031984166361603dd960e01b0361075c5760008380602001905181019061070b9190610e40565b905084818460405160240161072192919061115d565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152915061015b9050565b6001600160e01b0319841663b34f33c560e01b036107ab5760008060008580602001905181019061078d9190611176565b92509250925086838383886040516024016105dd94939291906111d0565b6001600160e01b03198416633013529360e01b036107dc5760008060008580602001905181019061078d9190611176565b6001600160e01b031984166307eca39560e01b03610830576000806000808680602001905181019061080e9190611209565b935093509350935087848484848a60405160240161069f95949392919061127e565b6001600160e01b031984166368b6154f60e01b03610862576000806000808680602001905181019061067d91906110aa565b6001600160e01b0319841663341de35b60e21b03610894576000806000808680602001905181019061067d91906110aa565b6001600160e01b03198416637a84860f60e11b0361092d576000806000806000878060200190518101906108c891906112cb565b945094509450945094508885858585858c6040516024016108ee96959493929190611360565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152955061015b945050505050565b6001600160e01b03198416636fab95b360e01b036109b2576000808480602001905181019061095c91906113b9565b915091508582828660405160240161097693929190611400565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925061015b915050565b6001600160e01b0319841663288f888960e11b0361015b57600080848060200190518101906109e1919061142b565b91509150858282866040516024016109fb93929190611459565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925050509392505050565b6000806000610a478585610b7a565b90925090506000816004811115610a6057610a60611489565b148015610a7e5750856001600160a01b0316826001600160a01b0316145b15610a8e5760019250505061015b565b600080876001600160a01b0316631626ba7e60e01b8888604051602401610ab692919061115d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051610af49190610f9b565b600060405180830381855afa9150503d8060008114610b2f576040519150601f19603f3d011682016040523d82523d6000602084013e610b34565b606091505b5091509150818015610b47575080516020145b8015610b6e57508051630b135d3f60e11b90610b6c9083016020908101908401610e40565b145b98975050505050505050565b6000808251604103610bb05760208301516040840151606085015160001a610ba487828585610bbf565b94509450505050610bb8565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610bf65750600090506003610ca3565b8460ff16601b14158015610c0e57508460ff16601c14155b15610c1f5750600090506004610ca3565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610c73573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610c9c57600060019250925050610ca3565b9150600090505b94509492505050565b600080600060408486031215610cc157600080fd5b833567ffffffffffffffff80821115610cd957600080fd5b9085019060808288031215610ced57600080fd5b90935060208501359080821115610d0357600080fd5b818601915086601f830112610d1757600080fd5b813581811115610d2657600080fd5b876020828501011115610d3857600080fd5b6020830194508093505050509250925092565b60005b83811015610d66578181015183820152602001610d4e565b50506000910152565b60008151808452610d87816020860160208601610d4b565b601f01601f19169290920160200192915050565b60208152600061015b6020830184610d6f565b600060208284031215610dc057600080fd5b5035919050565b6001600160a01b038116811461035257600080fd5b600060208284031215610dee57600080fd5b813561015b81610dc7565b6000808335601e19843603018112610e1057600080fd5b83018035915067ffffffffffffffff821115610e2b57600080fd5b602001915036819003821315610bb857600080fd5b600060208284031215610e5257600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610e9257610e92610e59565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ec157610ec1610e59565b604052919050565b600067ffffffffffffffff821115610ee357610ee3610e59565b50601f01601f191660200190565b600060808236031215610f0357600080fd5b610f0b610e6f565b8235610f1681610dc7565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610f4657600080fd5b840136601f820112610f5757600080fd5b8035610f6a610f6582610ec9565b610e98565b8181523684838501011115610f7e57600080fd5b818484018583013760009181019093015250606082015292915050565b60008251610fad818460208701610d4b565b9190910192915050565b600082610fd457634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b60008060006060848603121561100457600080fd5b835161100f81610dc7565b602085015190935061102081610dc7565b80925050604084015190509250925092565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061058290830184610d6f565b600082601f83011261107657600080fd5b8151611084610f6582610ec9565b81815284602083860101111561109957600080fd5b61022d826020830160208701610d4b565b600080600080608085870312156110c057600080fd5b84516110cb81610dc7565b60208601519094506110dc81610dc7565b60408601516060870151919450925067ffffffffffffffff81111561110057600080fd5b61110c87828801611065565b91505092959194509250565b6001600160a01b038681168252851660208201526040810184905260a06060820181905260009061114b90830185610d6f565b8281036080840152610b6e8185610d6f565b82815260406020820152600061022d6040830184610d6f565b60008060006060848603121561118b57600080fd5b835161119681610dc7565b60208501516040860151919450925067ffffffffffffffff8111156111ba57600080fd5b6111c686828701611065565b9150509250925092565b60018060a01b03851681528360208201526080604082015260006111f76080830185610d6f565b82810360608401526103ff8185610d6f565b6000806000806080858703121561121f57600080fd5b845161122a81610dc7565b60208601516040870151919550935067ffffffffffffffff8082111561124f57600080fd5b61125b88838901611065565b9350606087015191508082111561127157600080fd5b5061110c87828801611065565b60018060a01b038616815284602082015260a0604082015260006112a560a0830186610d6f565b82810360608401526112b78186610d6f565b90508281036080840152610b6e8185610d6f565b600080600080600060a086880312156112e357600080fd5b85516112ee81610dc7565b60208701519095506112ff81610dc7565b60408701516060880151919550935067ffffffffffffffff8082111561132457600080fd5b61133089838a01611065565b9350608088015191508082111561134657600080fd5b5061135388828901611065565b9150509295509295909350565b6001600160a01b038781168252861660208201526040810185905260c06060820181905260009061139390830186610d6f565b82810360808401526113a58186610d6f565b905082810360a08401526103008185610d6f565b600080604083850312156113cc57600080fd5b82519150602083015167ffffffffffffffff8111156113ea57600080fd5b6113f685828601611065565b9150509250929050565b8381526060602082015260006114196060830185610d6f565b82810360408401526105828185610d6f565b6000806040838503121561143e57600080fd5b825161144981610dc7565b6020939093015192949293505050565b60018060a01b03841681528260208201526060604082015260006114806060830184610d6f565b95945050505050565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a736166654d696e744368696c64466f7228616464726573732c75696e743235362c737472696e672c62797465732c6279746573297472616e7366657246726f6d28616464726573732c616464726573732c75696e7432353629736166655472616e7366657246726f6d466f7228616464726573732c616464726573732c75696e743235362c62797465732c627974657329736166654d696e744368696c64466f7228616464726573732c75696e743235362c737472696e672c627974657329736166655472616e7366657246726f6d28616464726573732c616464726573732c75696e74323536297265736f6c7665546f466f7228616464726573732c75696e743235362c6279746573297472616e7366657246726f6d4368696c64466f7228616464726573732c616464726573732c75696e743235362c737472696e672c627974657329736166655472616e7366657246726f6d466f7228616464726573732c616464726573732c75696e743235362c6279746573296275726e4368696c64466f722875696e743235362c737472696e672c627974657329736166654d696e744368696c6428616464726573732c75696e743235362c737472696e6729736166655472616e7366657246726f6d4368696c6428616464726573732c616464726573732c75696e743235362c737472696e67297472616e7366657246726f6d4368696c6428616464726573732c616464726573732c75696e743235362c737472696e67296d696e744368696c64466f7228616464726573732c75696e743235362c737472696e672c627974657329736166655472616e7366657246726f6d28616464726573732c616464726573732c75696e743235362c627974657329736166655472616e7366657246726f6d4368696c6428616464726573732c616464726573732c75696e743235362c737472696e672c627974657329736166654d696e744368696c6428616464726573732c75696e743235362c737472696e672c627974657329736166655472616e7366657246726f6d4368696c64466f7228616464726573732c616464726573732c75696e743235362c737472696e672c6279746573296d696e744368696c6428616464726573732c75696e743235362c737472696e67297472616e7366657246726f6d466f7228616464726573732c616464726573732c75696e743235362c627974657329736166655472616e7366657246726f6d4368696c64466f7228616464726573732c616464726573732c75696e743235362c737472696e672c62797465732c627974657329"; + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "contract IForwarder"; + readonly name: "target"; + readonly type: "address"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "constructor"; + }, { + readonly inputs: readonly [{ + readonly components: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "nonce"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly internalType: "struct IForwarder.ForwardRequest"; + readonly name: "req"; + readonly type: "tuple"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "execute"; + readonly outputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "nonceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly components: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "nonce"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly internalType: "struct IForwarder.ForwardRequest"; + readonly name: "req"; + readonly type: "tuple"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "verify"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): CNSRegistryForwarderInterface; + static connect(address: string, runner?: ContractRunner | null): CNSRegistryForwarder; +} +export {}; +//# sourceMappingURL=CNSRegistryForwarder__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/metatx/CNSRegistryForwarder__factory.d.ts.map b/dist/types/factories/contracts/metatx/CNSRegistryForwarder__factory.d.ts.map new file mode 100644 index 00000000..0d5cf011 --- /dev/null +++ b/dist/types/factories/contracts/metatx/CNSRegistryForwarder__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"CNSRegistryForwarder__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/metatx/CNSRegistryForwarder__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,MAAM,EACN,WAAW,EACX,yBAAyB,EACzB,cAAc,EACf,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,KAAK,EACV,oBAAoB,EACpB,6BAA6B,EAC9B,MAAM,gDAAgD,CAAC;AAkIxD,aAAK,qCAAqC,GACtC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,6BAA8B,SAAQ,eAAe;gBACpD,GAAG,IAAI,EAAE,qCAAqC;IAQjD,oBAAoB,CAC3B,MAAM,EAAE,WAAW,EACnB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CACb,MAAM,EAAE,WAAW,EACnB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAItB,2BAA2B;;IAIjD,OAAO,CACd,MAAM,EAAE,cAAc,GAAG,IAAI,GAC5B,6BAA6B;IAIhC,MAAM,CAAC,QAAQ,CAAC,QAAQ,0/eAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,6BAA6B;IAGvD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,oBAAoB;CAOxB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/metatx/CNSRegistryForwarder__factory.js b/dist/types/factories/contracts/metatx/CNSRegistryForwarder__factory.js new file mode 100644 index 00000000..d97cf3e9 --- /dev/null +++ b/dist/types/factories/contracts/metatx/CNSRegistryForwarder__factory.js @@ -0,0 +1,158 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.CNSRegistryForwarder__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "contract IForwarder", + name: "target", + type: "address", + }, + ], + stateMutability: "nonpayable", + type: "constructor", + }, + { + inputs: [ + { + components: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "uint256", + name: "nonce", + type: "uint256", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + internalType: "struct IForwarder.ForwardRequest", + name: "req", + type: "tuple", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "execute", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "nonceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + components: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "uint256", + name: "nonce", + type: "uint256", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + internalType: "struct IForwarder.ForwardRequest", + name: "req", + type: "tuple", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "verify", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +const _bytecode = "0x60806040523480156200001157600080fd5b5060405162001ef938038062001ef9833981016040819052620000349162000657565b600180546001600160a01b0319166001600160a01b03831617905560408051606081019091526025808252620000c7919062001b7960208301396040518060600160405280602e815260200162001e87602e913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b6200013e60405180606001604052806029815260200162001c046029913960405180606001604052806032815260200162001c8a6032913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b620001b56040518060600160405280602f815260200162001d93602f913960405180606001604052806038815260200162001b9e6038913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b620002216040518060400160405280600d81526020016c6275726e2875696e743235362960981b8152506040518060400160405280601681526020017f6275726e466f722875696e743235362c627974657329000000000000000000008152506200061860201b60201c565b6200029860405180606001604052806021815260200162001e66602191396040518060600160405280602a815260200162001d69602a913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b6200030f60405180606001604052806025815260200162001cde602591396040518060600160405280602e815260200162001bd6602e913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b620003866040518060600160405280602b815260200162001dfd602b913960405180606001604052806034815260200162001b456034913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b620003fd60405180606001604052806031815260200162001d38603191396040518060600160405280603a815260200162001c50603a913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b6200047460405180606001604052806035815260200162001d03603591396040518060600160405280603e815260200162001e28603e913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b620004eb6040518060600160405280603b815260200162001dc2603b913960405180608001604052806044815260200162001eb56044913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b6200057e6040518060400160405280601981526020017f6275726e4368696c642875696e743235362c737472696e67290000000000000081525060405180606001604052806022815260200162001cbc6022913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b620006116040518060400160405280601a81526020017f7265736f6c7665546f28616464726573732c75696e743235362900000000000081525060405180606001604052806023815260200162001c2d6023913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b5062000689565b80516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b6000602082840312156200066a57600080fd5b81516001600160a01b03811681146200068257600080fd5b9392505050565b6114ac80620006996000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a424740014610090575b600080fd5b610059610054366004610cac565b6100b3565b6040516100669190610d9b565b60405180910390f35b61008261007d366004610dae565b610162565b604051908152602001610066565b6100a361009e366004610cac565b6101d6565b6040519015158152602001610066565b606060005a90506101576100ca6020870187610ddc565b6001546001600160a01b03166040880135846100e960608b018b610df9565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061023592505050565b9150505b9392505050565b600154604051636ccbae5f60e01b8152600481018390526000916001600160a01b031690636ccbae5f90602401602060405180830381865afa1580156101ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d09190610e40565b92915050565b600061022d6101e485610ef1565b600154604080516020601f88018190048102820181019092528681526001600160a01b039092169190879087908190840183828082843760009201919091525061030d92505050565b949350505050565b6060600080876001600160a01b0316866102518b8a8989610355565b60405161025e9190610f9b565b60006040518083038160008787f1925050503d806000811461029c576040519150601f19603f3d011682016040523d82523d6000602084013e6102a1565b606091505b5090925090506102b2603f87610fb7565b5a116102c0576102c0610fd9565b61030082826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061040a565b9998505050505050505050565b600061031a848484610443565b801561022d575060608401516020908101516001600160e01b031990811660009081529182905260409091205460e01b16151561022d565b50565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036103e75760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526103ff82828661058c565b979650505050505050565b6060831561041957508161015b565b8251156104295782518084602001fd5b8160405162461bcd60e51b81526004016103de9190610d9b565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561048a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104ae9190610e40565b9050600061055c8660600151805190602001208688602001516040516020016104fc9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561058257508551610582906001600160a01b03168286610a38565b9695505050505050565b60606001600160e01b03198416631de5861160e31b0361061a576000806000858060200190518101906105bf9190610fef565b92509250925086838383886040516024016105dd9493929190611032565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152935061015b92505050565b6001600160e01b03198416636debcb8d60e01b0361064b576000806000858060200190518101906105bf9190610fef565b6001600160e01b0319841663280d9b0560e01b036106dd576000806000808680602001905181019061067d91906110aa565b935093509350935087848484848a60405160240161069f959493929190611118565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152945061015b9350505050565b6001600160e01b031984166361603dd960e01b0361075c5760008380602001905181019061070b9190610e40565b905084818460405160240161072192919061115d565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152915061015b9050565b6001600160e01b0319841663b34f33c560e01b036107ab5760008060008580602001905181019061078d9190611176565b92509250925086838383886040516024016105dd94939291906111d0565b6001600160e01b03198416633013529360e01b036107dc5760008060008580602001905181019061078d9190611176565b6001600160e01b031984166307eca39560e01b03610830576000806000808680602001905181019061080e9190611209565b935093509350935087848484848a60405160240161069f95949392919061127e565b6001600160e01b031984166368b6154f60e01b03610862576000806000808680602001905181019061067d91906110aa565b6001600160e01b0319841663341de35b60e21b03610894576000806000808680602001905181019061067d91906110aa565b6001600160e01b03198416637a84860f60e11b0361092d576000806000806000878060200190518101906108c891906112cb565b945094509450945094508885858585858c6040516024016108ee96959493929190611360565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152955061015b945050505050565b6001600160e01b03198416636fab95b360e01b036109b2576000808480602001905181019061095c91906113b9565b915091508582828660405160240161097693929190611400565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925061015b915050565b6001600160e01b0319841663288f888960e11b0361015b57600080848060200190518101906109e1919061142b565b91509150858282866040516024016109fb93929190611459565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925050509392505050565b6000806000610a478585610b7a565b90925090506000816004811115610a6057610a60611489565b148015610a7e5750856001600160a01b0316826001600160a01b0316145b15610a8e5760019250505061015b565b600080876001600160a01b0316631626ba7e60e01b8888604051602401610ab692919061115d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051610af49190610f9b565b600060405180830381855afa9150503d8060008114610b2f576040519150601f19603f3d011682016040523d82523d6000602084013e610b34565b606091505b5091509150818015610b47575080516020145b8015610b6e57508051630b135d3f60e11b90610b6c9083016020908101908401610e40565b145b98975050505050505050565b6000808251604103610bb05760208301516040840151606085015160001a610ba487828585610bbf565b94509450505050610bb8565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610bf65750600090506003610ca3565b8460ff16601b14158015610c0e57508460ff16601c14155b15610c1f5750600090506004610ca3565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610c73573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610c9c57600060019250925050610ca3565b9150600090505b94509492505050565b600080600060408486031215610cc157600080fd5b833567ffffffffffffffff80821115610cd957600080fd5b9085019060808288031215610ced57600080fd5b90935060208501359080821115610d0357600080fd5b818601915086601f830112610d1757600080fd5b813581811115610d2657600080fd5b876020828501011115610d3857600080fd5b6020830194508093505050509250925092565b60005b83811015610d66578181015183820152602001610d4e565b50506000910152565b60008151808452610d87816020860160208601610d4b565b601f01601f19169290920160200192915050565b60208152600061015b6020830184610d6f565b600060208284031215610dc057600080fd5b5035919050565b6001600160a01b038116811461035257600080fd5b600060208284031215610dee57600080fd5b813561015b81610dc7565b6000808335601e19843603018112610e1057600080fd5b83018035915067ffffffffffffffff821115610e2b57600080fd5b602001915036819003821315610bb857600080fd5b600060208284031215610e5257600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610e9257610e92610e59565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ec157610ec1610e59565b604052919050565b600067ffffffffffffffff821115610ee357610ee3610e59565b50601f01601f191660200190565b600060808236031215610f0357600080fd5b610f0b610e6f565b8235610f1681610dc7565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610f4657600080fd5b840136601f820112610f5757600080fd5b8035610f6a610f6582610ec9565b610e98565b8181523684838501011115610f7e57600080fd5b818484018583013760009181019093015250606082015292915050565b60008251610fad818460208701610d4b565b9190910192915050565b600082610fd457634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b60008060006060848603121561100457600080fd5b835161100f81610dc7565b602085015190935061102081610dc7565b80925050604084015190509250925092565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061058290830184610d6f565b600082601f83011261107657600080fd5b8151611084610f6582610ec9565b81815284602083860101111561109957600080fd5b61022d826020830160208701610d4b565b600080600080608085870312156110c057600080fd5b84516110cb81610dc7565b60208601519094506110dc81610dc7565b60408601516060870151919450925067ffffffffffffffff81111561110057600080fd5b61110c87828801611065565b91505092959194509250565b6001600160a01b038681168252851660208201526040810184905260a06060820181905260009061114b90830185610d6f565b8281036080840152610b6e8185610d6f565b82815260406020820152600061022d6040830184610d6f565b60008060006060848603121561118b57600080fd5b835161119681610dc7565b60208501516040860151919450925067ffffffffffffffff8111156111ba57600080fd5b6111c686828701611065565b9150509250925092565b60018060a01b03851681528360208201526080604082015260006111f76080830185610d6f565b82810360608401526103ff8185610d6f565b6000806000806080858703121561121f57600080fd5b845161122a81610dc7565b60208601516040870151919550935067ffffffffffffffff8082111561124f57600080fd5b61125b88838901611065565b9350606087015191508082111561127157600080fd5b5061110c87828801611065565b60018060a01b038616815284602082015260a0604082015260006112a560a0830186610d6f565b82810360608401526112b78186610d6f565b90508281036080840152610b6e8185610d6f565b600080600080600060a086880312156112e357600080fd5b85516112ee81610dc7565b60208701519095506112ff81610dc7565b60408701516060880151919550935067ffffffffffffffff8082111561132457600080fd5b61133089838a01611065565b9350608088015191508082111561134657600080fd5b5061135388828901611065565b9150509295509295909350565b6001600160a01b038781168252861660208201526040810185905260c06060820181905260009061139390830186610d6f565b82810360808401526113a58186610d6f565b905082810360a08401526103008185610d6f565b600080604083850312156113cc57600080fd5b82519150602083015167ffffffffffffffff8111156113ea57600080fd5b6113f685828601611065565b9150509250929050565b8381526060602082015260006114196060830185610d6f565b82810360408401526105828185610d6f565b6000806040838503121561143e57600080fd5b825161144981610dc7565b6020939093015192949293505050565b60018060a01b03841681528260208201526060604082015260006114806060830184610d6f565b95945050505050565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a736166654d696e744368696c64466f7228616464726573732c75696e743235362c737472696e672c62797465732c6279746573297472616e7366657246726f6d28616464726573732c616464726573732c75696e7432353629736166655472616e7366657246726f6d466f7228616464726573732c616464726573732c75696e743235362c62797465732c627974657329736166654d696e744368696c64466f7228616464726573732c75696e743235362c737472696e672c627974657329736166655472616e7366657246726f6d28616464726573732c616464726573732c75696e74323536297265736f6c7665546f466f7228616464726573732c75696e743235362c6279746573297472616e7366657246726f6d4368696c64466f7228616464726573732c616464726573732c75696e743235362c737472696e672c627974657329736166655472616e7366657246726f6d466f7228616464726573732c616464726573732c75696e743235362c6279746573296275726e4368696c64466f722875696e743235362c737472696e672c627974657329736166654d696e744368696c6428616464726573732c75696e743235362c737472696e6729736166655472616e7366657246726f6d4368696c6428616464726573732c616464726573732c75696e743235362c737472696e67297472616e7366657246726f6d4368696c6428616464726573732c616464726573732c75696e743235362c737472696e67296d696e744368696c64466f7228616464726573732c75696e743235362c737472696e672c627974657329736166655472616e7366657246726f6d28616464726573732c616464726573732c75696e743235362c627974657329736166655472616e7366657246726f6d4368696c6428616464726573732c616464726573732c75696e743235362c737472696e672c627974657329736166654d696e744368696c6428616464726573732c75696e743235362c737472696e672c627974657329736166655472616e7366657246726f6d4368696c64466f7228616464726573732c616464726573732c75696e743235362c737472696e672c6279746573296d696e744368696c6428616464726573732c75696e743235362c737472696e67297472616e7366657246726f6d466f7228616464726573732c616464726573732c75696e743235362c627974657329736166655472616e7366657246726f6d4368696c64466f7228616464726573732c616464726573732c75696e743235362c737472696e672c62797465732c627974657329"; +const isSuperArgs = (xs) => xs.length > 1; +class CNSRegistryForwarder__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(target, overrides) { + return super.getDeployTransaction(target, overrides || {}); + } + deploy(target, overrides) { + return super.deploy(target, overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.CNSRegistryForwarder__factory = CNSRegistryForwarder__factory; +CNSRegistryForwarder__factory.bytecode = _bytecode; +CNSRegistryForwarder__factory.abi = _abi; diff --git a/dist/types/factories/contracts/metatx/ERC2771Context__factory.d.ts b/dist/types/factories/contracts/metatx/ERC2771Context__factory.d.ts new file mode 100644 index 00000000..33284a3c --- /dev/null +++ b/dist/types/factories/contracts/metatx/ERC2771Context__factory.d.ts @@ -0,0 +1,32 @@ +import { type ContractRunner } from "ethers"; +import type { ERC2771Context, ERC2771ContextInterface } from "../../../contracts/metatx/ERC2771Context"; +export declare class ERC2771Context__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "uint8"; + readonly name: "version"; + readonly type: "uint8"; + }]; + readonly name: "Initialized"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "forwarder"; + readonly type: "address"; + }]; + readonly name: "isTrustedForwarder"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): ERC2771ContextInterface; + static connect(address: string, runner?: ContractRunner | null): ERC2771Context; +} +//# sourceMappingURL=ERC2771Context__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/metatx/ERC2771Context__factory.d.ts.map b/dist/types/factories/contracts/metatx/ERC2771Context__factory.d.ts.map new file mode 100644 index 00000000..a0c6008b --- /dev/null +++ b/dist/types/factories/contracts/metatx/ERC2771Context__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ERC2771Context__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/metatx/ERC2771Context__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,cAAc,EACd,uBAAuB,EACxB,MAAM,0CAA0C,CAAC;AAqClD,qBAAa,uBAAuB;IAClC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,uBAAuB;IAGjD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,cAAc;CAGlB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/metatx/ERC2771Context__factory.js b/dist/types/factories/contracts/metatx/ERC2771Context__factory.js new file mode 100644 index 00000000..15292e2a --- /dev/null +++ b/dist/types/factories/contracts/metatx/ERC2771Context__factory.js @@ -0,0 +1,48 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ERC2771Context__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint8", + name: "version", + type: "uint8", + }, + ], + name: "Initialized", + type: "event", + }, + { + inputs: [ + { + internalType: "address", + name: "forwarder", + type: "address", + }, + ], + name: "isTrustedForwarder", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class ERC2771Context__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.ERC2771Context__factory = ERC2771Context__factory; +ERC2771Context__factory.abi = _abi; diff --git a/dist/types/factories/contracts/metatx/ERC2771RegistryContext__factory.d.ts b/dist/types/factories/contracts/metatx/ERC2771RegistryContext__factory.d.ts new file mode 100644 index 00000000..b47c1c30 --- /dev/null +++ b/dist/types/factories/contracts/metatx/ERC2771RegistryContext__factory.d.ts @@ -0,0 +1,32 @@ +import { type ContractRunner } from "ethers"; +import type { ERC2771RegistryContext, ERC2771RegistryContextInterface } from "../../../contracts/metatx/ERC2771RegistryContext"; +export declare class ERC2771RegistryContext__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "uint8"; + readonly name: "version"; + readonly type: "uint8"; + }]; + readonly name: "Initialized"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "forwarder"; + readonly type: "address"; + }]; + readonly name: "isTrustedForwarder"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): ERC2771RegistryContextInterface; + static connect(address: string, runner?: ContractRunner | null): ERC2771RegistryContext; +} +//# sourceMappingURL=ERC2771RegistryContext__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/metatx/ERC2771RegistryContext__factory.d.ts.map b/dist/types/factories/contracts/metatx/ERC2771RegistryContext__factory.d.ts.map new file mode 100644 index 00000000..008db28f --- /dev/null +++ b/dist/types/factories/contracts/metatx/ERC2771RegistryContext__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ERC2771RegistryContext__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/metatx/ERC2771RegistryContext__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,sBAAsB,EACtB,+BAA+B,EAChC,MAAM,kDAAkD,CAAC;AAqC1D,qBAAa,+BAA+B;IAC1C,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,+BAA+B;IAGzD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,sBAAsB;CAO1B"} \ No newline at end of file diff --git a/dist/types/factories/contracts/metatx/ERC2771RegistryContext__factory.js b/dist/types/factories/contracts/metatx/ERC2771RegistryContext__factory.js new file mode 100644 index 00000000..9468870d --- /dev/null +++ b/dist/types/factories/contracts/metatx/ERC2771RegistryContext__factory.js @@ -0,0 +1,48 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ERC2771RegistryContext__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint8", + name: "version", + type: "uint8", + }, + ], + name: "Initialized", + type: "event", + }, + { + inputs: [ + { + internalType: "address", + name: "forwarder", + type: "address", + }, + ], + name: "isTrustedForwarder", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class ERC2771RegistryContext__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.ERC2771RegistryContext__factory = ERC2771RegistryContext__factory; +ERC2771RegistryContext__factory.abi = _abi; diff --git a/dist/types/factories/contracts/metatx/Forwarder__factory.d.ts b/dist/types/factories/contracts/metatx/Forwarder__factory.d.ts new file mode 100644 index 00000000..ab1b0e52 --- /dev/null +++ b/dist/types/factories/contracts/metatx/Forwarder__factory.d.ts @@ -0,0 +1,106 @@ +import { type ContractRunner } from "ethers"; +import type { Forwarder, ForwarderInterface } from "../../../contracts/metatx/Forwarder"; +export declare class Forwarder__factory { + static readonly abi: readonly [{ + readonly inputs: readonly []; + readonly name: "InvalidSignature"; + readonly type: "error"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "uint8"; + readonly name: "version"; + readonly type: "uint8"; + }]; + readonly name: "Initialized"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly components: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "nonce"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly internalType: "struct IForwarder.ForwardRequest"; + readonly name: "req"; + readonly type: "tuple"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "execute"; + readonly outputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "nonceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly components: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "nonce"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly internalType: "struct IForwarder.ForwardRequest"; + readonly name: "req"; + readonly type: "tuple"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "verify"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): ForwarderInterface; + static connect(address: string, runner?: ContractRunner | null): Forwarder; +} +//# sourceMappingURL=Forwarder__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/metatx/Forwarder__factory.d.ts.map b/dist/types/factories/contracts/metatx/Forwarder__factory.d.ts.map new file mode 100644 index 00000000..a9e8a8b3 --- /dev/null +++ b/dist/types/factories/contracts/metatx/Forwarder__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"Forwarder__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/metatx/Forwarder__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,SAAS,EACT,kBAAkB,EACnB,MAAM,qCAAqC,CAAC;AAsI7C,qBAAa,kBAAkB;IAC7B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,kBAAkB;IAG5C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,SAAS;CAG3E"} \ No newline at end of file diff --git a/dist/types/factories/contracts/metatx/Forwarder__factory.js b/dist/types/factories/contracts/metatx/Forwarder__factory.js new file mode 100644 index 00000000..5d7c6f70 --- /dev/null +++ b/dist/types/factories/contracts/metatx/Forwarder__factory.js @@ -0,0 +1,145 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.Forwarder__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [], + name: "InvalidSignature", + type: "error", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint8", + name: "version", + type: "uint8", + }, + ], + name: "Initialized", + type: "event", + }, + { + inputs: [ + { + components: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "uint256", + name: "nonce", + type: "uint256", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + internalType: "struct IForwarder.ForwardRequest", + name: "req", + type: "tuple", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "execute", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "nonceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + components: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "uint256", + name: "nonce", + type: "uint256", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + internalType: "struct IForwarder.ForwardRequest", + name: "req", + type: "tuple", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "verify", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class Forwarder__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.Forwarder__factory = Forwarder__factory; +Forwarder__factory.abi = _abi; diff --git a/dist/types/factories/contracts/metatx/IForwarder__factory.d.ts b/dist/types/factories/contracts/metatx/IForwarder__factory.d.ts new file mode 100644 index 00000000..311fccbb --- /dev/null +++ b/dist/types/factories/contracts/metatx/IForwarder__factory.d.ts @@ -0,0 +1,92 @@ +import { type ContractRunner } from "ethers"; +import type { IForwarder, IForwarderInterface } from "../../../contracts/metatx/IForwarder"; +export declare class IForwarder__factory { + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly components: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "nonce"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly internalType: "struct IForwarder.ForwardRequest"; + readonly name: "req"; + readonly type: "tuple"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "execute"; + readonly outputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "nonceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly components: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "nonce"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly internalType: "struct IForwarder.ForwardRequest"; + readonly name: "req"; + readonly type: "tuple"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "verify"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): IForwarderInterface; + static connect(address: string, runner?: ContractRunner | null): IForwarder; +} +//# sourceMappingURL=IForwarder__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/metatx/IForwarder__factory.d.ts.map b/dist/types/factories/contracts/metatx/IForwarder__factory.d.ts.map new file mode 100644 index 00000000..ff616ee9 --- /dev/null +++ b/dist/types/factories/contracts/metatx/IForwarder__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IForwarder__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/metatx/IForwarder__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,UAAU,EACV,mBAAmB,EACpB,MAAM,sCAAsC,CAAC;AAoH9C,qBAAa,mBAAmB;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,mBAAmB;IAG7C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,UAAU;CAG5E"} \ No newline at end of file diff --git a/dist/types/factories/contracts/metatx/IForwarder__factory.js b/dist/types/factories/contracts/metatx/IForwarder__factory.js new file mode 100644 index 00000000..1c58ae9e --- /dev/null +++ b/dist/types/factories/contracts/metatx/IForwarder__factory.js @@ -0,0 +1,127 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IForwarder__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + components: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "uint256", + name: "nonce", + type: "uint256", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + internalType: "struct IForwarder.ForwardRequest", + name: "req", + type: "tuple", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "execute", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "nonceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + components: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "uint256", + name: "nonce", + type: "uint256", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + internalType: "struct IForwarder.ForwardRequest", + name: "req", + type: "tuple", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "verify", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class IForwarder__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IForwarder__factory = IForwarder__factory; +IForwarder__factory.abi = _abi; diff --git a/dist/types/factories/contracts/metatx/MintingManagerForwarder__factory.d.ts b/dist/types/factories/contracts/metatx/MintingManagerForwarder__factory.d.ts new file mode 100644 index 00000000..a594bc55 --- /dev/null +++ b/dist/types/factories/contracts/metatx/MintingManagerForwarder__factory.d.ts @@ -0,0 +1,115 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, AddressLike, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../common"; +import type { MintingManagerForwarder, MintingManagerForwarderInterface } from "../../../contracts/metatx/MintingManagerForwarder"; +declare type MintingManagerForwarderConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class MintingManagerForwarder__factory extends ContractFactory { + constructor(...args: MintingManagerForwarderConstructorParams); + getDeployTransaction(mintingManager: AddressLike, overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(mintingManager: AddressLike, overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): MintingManagerForwarder__factory; + static readonly bytecode = "0x608060405234801561001057600080fd5b50604051610bdd380380610bdd83398101604081905261002f91610054565b600080546001600160a01b0319166001600160a01b0392909216919091179055610084565b60006020828403121561006657600080fd5b81516001600160a01b038116811461007d57600080fd5b9392505050565b610b4a806100936000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a42474001461009d575b600080fd5b610059610054366004610771565b6100c0565b6040516100669190610860565b60405180910390f35b61008f61007d366004610873565b60009081526001602052604090205490565b604051908152602001610066565b6100b06100ab366004610771565b6101de565b6040519015158152602001610066565b606060005a90506100d28585856101de565b6101365760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e61676572466f727761726465723a205349474e415455604482015269149157d253959053125160b21b60648201526084015b60405180910390fd5b6101d361014660208701876108a8565b6000546001600160a01b031660408801358461016560608b018b6108c3565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061023d92505050565b9150505b9392505050565b60006102356101ec8561097a565b600054604080516020601f88018190048102820181019092528681526001600160a01b039092169190879087908190840183828082843760009201919091525061031e92505050565b949350505050565b606061024885610467565b600080876001600160a01b0316866102628b8a8989610494565b60405161026f9190610a3b565b60006040518083038160008787f1925050503d80600081146102ad576040519150601f19603f3d011682016040523d82523d6000602084013e6102b2565b606091505b5090925090506102c3603f87610a57565b5a116102d1576102d1610a79565b61031182826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506104c4565b9998505050505050505050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015610365573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103899190610a8f565b905060006104378660600151805190602001208688602001516040516020016103d79392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561045d5750855161045d906001600160a01b031682866104fd565b9695505050505050565b60008181526001602081905260409091205461048291610aa8565b60009182526001602052604090912055565b60608285856040516020016104ab93929190610acf565b6040516020818303038152906040529050949350505050565b606083156104d35750816101d7565b8251156104e35782518084602001fd5b8160405162461bcd60e51b815260040161012d9190610860565b600080600061050c858561063f565b9092509050600081600481111561052557610525610b0e565b1480156105435750856001600160a01b0316826001600160a01b0316145b15610553576001925050506101d7565b600080876001600160a01b0316631626ba7e60e01b888860405160240161057b929190610b24565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516105b99190610a3b565b600060405180830381855afa9150503d80600081146105f4576040519150601f19603f3d011682016040523d82523d6000602084013e6105f9565b606091505b509150915081801561060c575080516020145b801561063357508051630b135d3f60e11b906106319083016020908101908401610a8f565b145b98975050505050505050565b60008082516041036106755760208301516040840151606085015160001a61066987828585610684565b9450945050505061067d565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08311156106bb5750600090506003610768565b8460ff16601b141580156106d357508460ff16601c14155b156106e45750600090506004610768565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610738573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b03811661076157600060019250925050610768565b9150600090505b94509492505050565b60008060006040848603121561078657600080fd5b833567ffffffffffffffff8082111561079e57600080fd5b90850190608082880312156107b257600080fd5b909350602085013590808211156107c857600080fd5b818601915086601f8301126107dc57600080fd5b8135818111156107eb57600080fd5b8760208285010111156107fd57600080fd5b6020830194508093505050509250925092565b60005b8381101561082b578181015183820152602001610813565b50506000910152565b6000815180845261084c816020860160208601610810565b601f01601f19169290920160200192915050565b6020815260006101d76020830184610834565b60006020828403121561088557600080fd5b5035919050565b80356001600160a01b03811681146108a357600080fd5b919050565b6000602082840312156108ba57600080fd5b6101d78261088c565b6000808335601e198436030181126108da57600080fd5b83018035915067ffffffffffffffff8211156108f557600080fd5b60200191503681900382131561067d57600080fd5b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff811182821017156109435761094361090a565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156109725761097261090a565b604052919050565b60006080823603121561098c57600080fd5b610994610920565b61099d8361088c565b81526020808401358183015260408401356040830152606084013567ffffffffffffffff808211156109ce57600080fd5b9085019036601f8301126109e157600080fd5b8135818111156109f3576109f361090a565b610a05601f8201601f19168501610949565b91508082523684828501011115610a1b57600080fd5b808484018584013760009082019093019290925250606082015292915050565b60008251610a4d818460208701610810565b9190910192915050565b600082610a7457634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b600060208284031215610aa157600080fd5b5051919050565b80820180821115610ac957634e487b7160e01b600052601160045260246000fd5b92915050565b60008451610ae1818460208901610810565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b600052602160045260246000fd5b828152604060208201526000610235604083018461083456fea164736f6c6343000811000a"; + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "mintingManager"; + readonly type: "address"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "constructor"; + }, { + readonly inputs: readonly [{ + readonly components: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "nonce"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly internalType: "struct IForwarder.ForwardRequest"; + readonly name: "req"; + readonly type: "tuple"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "execute"; + readonly outputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "nonceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly components: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "nonce"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly internalType: "struct IForwarder.ForwardRequest"; + readonly name: "req"; + readonly type: "tuple"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "verify"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): MintingManagerForwarderInterface; + static connect(address: string, runner?: ContractRunner | null): MintingManagerForwarder; +} +export {}; +//# sourceMappingURL=MintingManagerForwarder__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/metatx/MintingManagerForwarder__factory.d.ts.map b/dist/types/factories/contracts/metatx/MintingManagerForwarder__factory.d.ts.map new file mode 100644 index 00000000..e5d93369 --- /dev/null +++ b/dist/types/factories/contracts/metatx/MintingManagerForwarder__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"MintingManagerForwarder__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/metatx/MintingManagerForwarder__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,MAAM,EACN,WAAW,EACX,yBAAyB,EACzB,cAAc,EACf,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,KAAK,EACV,uBAAuB,EACvB,gCAAgC,EACjC,MAAM,mDAAmD,CAAC;AAkI3D,aAAK,wCAAwC,GACzC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,gCAAiC,SAAQ,eAAe;gBACvD,GAAG,IAAI,EAAE,wCAAwC;IAQpD,oBAAoB,CAC3B,cAAc,EAAE,WAAW,EAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CACb,cAAc,EAAE,WAAW,EAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAItB,2BAA2B;;IAIjD,OAAO,CACd,MAAM,EAAE,cAAc,GAAG,IAAI,GAC5B,gCAAgC;IAInC,MAAM,CAAC,QAAQ,CAAC,QAAQ,k8LAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,gCAAgC;IAG1D,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,uBAAuB;CAO3B"} \ No newline at end of file diff --git a/dist/types/factories/contracts/metatx/MintingManagerForwarder__factory.js b/dist/types/factories/contracts/metatx/MintingManagerForwarder__factory.js new file mode 100644 index 00000000..15da5a43 --- /dev/null +++ b/dist/types/factories/contracts/metatx/MintingManagerForwarder__factory.js @@ -0,0 +1,158 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.MintingManagerForwarder__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "address", + name: "mintingManager", + type: "address", + }, + ], + stateMutability: "nonpayable", + type: "constructor", + }, + { + inputs: [ + { + components: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "uint256", + name: "nonce", + type: "uint256", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + internalType: "struct IForwarder.ForwardRequest", + name: "req", + type: "tuple", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "execute", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "nonceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + components: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "uint256", + name: "nonce", + type: "uint256", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + internalType: "struct IForwarder.ForwardRequest", + name: "req", + type: "tuple", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "verify", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +const _bytecode = "0x608060405234801561001057600080fd5b50604051610bdd380380610bdd83398101604081905261002f91610054565b600080546001600160a01b0319166001600160a01b0392909216919091179055610084565b60006020828403121561006657600080fd5b81516001600160a01b038116811461007d57600080fd5b9392505050565b610b4a806100936000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a42474001461009d575b600080fd5b610059610054366004610771565b6100c0565b6040516100669190610860565b60405180910390f35b61008f61007d366004610873565b60009081526001602052604090205490565b604051908152602001610066565b6100b06100ab366004610771565b6101de565b6040519015158152602001610066565b606060005a90506100d28585856101de565b6101365760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e61676572466f727761726465723a205349474e415455604482015269149157d253959053125160b21b60648201526084015b60405180910390fd5b6101d361014660208701876108a8565b6000546001600160a01b031660408801358461016560608b018b6108c3565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061023d92505050565b9150505b9392505050565b60006102356101ec8561097a565b600054604080516020601f88018190048102820181019092528681526001600160a01b039092169190879087908190840183828082843760009201919091525061031e92505050565b949350505050565b606061024885610467565b600080876001600160a01b0316866102628b8a8989610494565b60405161026f9190610a3b565b60006040518083038160008787f1925050503d80600081146102ad576040519150601f19603f3d011682016040523d82523d6000602084013e6102b2565b606091505b5090925090506102c3603f87610a57565b5a116102d1576102d1610a79565b61031182826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506104c4565b9998505050505050505050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015610365573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103899190610a8f565b905060006104378660600151805190602001208688602001516040516020016103d79392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561045d5750855161045d906001600160a01b031682866104fd565b9695505050505050565b60008181526001602081905260409091205461048291610aa8565b60009182526001602052604090912055565b60608285856040516020016104ab93929190610acf565b6040516020818303038152906040529050949350505050565b606083156104d35750816101d7565b8251156104e35782518084602001fd5b8160405162461bcd60e51b815260040161012d9190610860565b600080600061050c858561063f565b9092509050600081600481111561052557610525610b0e565b1480156105435750856001600160a01b0316826001600160a01b0316145b15610553576001925050506101d7565b600080876001600160a01b0316631626ba7e60e01b888860405160240161057b929190610b24565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516105b99190610a3b565b600060405180830381855afa9150503d80600081146105f4576040519150601f19603f3d011682016040523d82523d6000602084013e6105f9565b606091505b509150915081801561060c575080516020145b801561063357508051630b135d3f60e11b906106319083016020908101908401610a8f565b145b98975050505050505050565b60008082516041036106755760208301516040840151606085015160001a61066987828585610684565b9450945050505061067d565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08311156106bb5750600090506003610768565b8460ff16601b141580156106d357508460ff16601c14155b156106e45750600090506004610768565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610738573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b03811661076157600060019250925050610768565b9150600090505b94509492505050565b60008060006040848603121561078657600080fd5b833567ffffffffffffffff8082111561079e57600080fd5b90850190608082880312156107b257600080fd5b909350602085013590808211156107c857600080fd5b818601915086601f8301126107dc57600080fd5b8135818111156107eb57600080fd5b8760208285010111156107fd57600080fd5b6020830194508093505050509250925092565b60005b8381101561082b578181015183820152602001610813565b50506000910152565b6000815180845261084c816020860160208601610810565b601f01601f19169290920160200192915050565b6020815260006101d76020830184610834565b60006020828403121561088557600080fd5b5035919050565b80356001600160a01b03811681146108a357600080fd5b919050565b6000602082840312156108ba57600080fd5b6101d78261088c565b6000808335601e198436030181126108da57600080fd5b83018035915067ffffffffffffffff8211156108f557600080fd5b60200191503681900382131561067d57600080fd5b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff811182821017156109435761094361090a565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156109725761097261090a565b604052919050565b60006080823603121561098c57600080fd5b610994610920565b61099d8361088c565b81526020808401358183015260408401356040830152606084013567ffffffffffffffff808211156109ce57600080fd5b9085019036601f8301126109e157600080fd5b8135818111156109f3576109f361090a565b610a05601f8201601f19168501610949565b91508082523684828501011115610a1b57600080fd5b808484018584013760009082019093019290925250606082015292915050565b60008251610a4d818460208701610810565b9190910192915050565b600082610a7457634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b600060208284031215610aa157600080fd5b5051919050565b80820180821115610ac957634e487b7160e01b600052601160045260246000fd5b92915050565b60008451610ae1818460208901610810565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b600052602160045260246000fd5b828152604060208201526000610235604083018461083456fea164736f6c6343000811000a"; +const isSuperArgs = (xs) => xs.length > 1; +class MintingManagerForwarder__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(mintingManager, overrides) { + return super.getDeployTransaction(mintingManager, overrides || {}); + } + deploy(mintingManager, overrides) { + return super.deploy(mintingManager, overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.MintingManagerForwarder__factory = MintingManagerForwarder__factory; +MintingManagerForwarder__factory.bytecode = _bytecode; +MintingManagerForwarder__factory.abi = _abi; diff --git a/dist/types/factories/contracts/metatx/ResolverForwarder__factory.d.ts b/dist/types/factories/contracts/metatx/ResolverForwarder__factory.d.ts new file mode 100644 index 00000000..9703e416 --- /dev/null +++ b/dist/types/factories/contracts/metatx/ResolverForwarder__factory.d.ts @@ -0,0 +1,119 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, AddressLike, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../common"; +import type { ResolverForwarder, ResolverForwarderInterface } from "../../../contracts/metatx/ResolverForwarder"; +declare type ResolverForwarderConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class ResolverForwarder__factory extends ContractFactory { + constructor(...args: ResolverForwarderConstructorParams); + getDeployTransaction(cnsRegistry: AddressLike, defaultCnsResolver: AddressLike, overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(cnsRegistry: AddressLike, defaultCnsResolver: AddressLike, overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): ResolverForwarder__factory; + static readonly bytecode = "0x60806040523480156200001157600080fd5b506040516200153938038062001539833981016040819052620000349162000286565b600180546001600160a01b038481166001600160a01b0319928316179092556002805492841692909116919091179055604080518082018252600e81526d72657365742875696e743235362960901b602080830191825283518085018552601781527f7265736574466f722875696e743235362c62797465732900000000000000000090820152915190206001600160e01b03191660009081529081905220805463ffffffff191663b87abc11179055620001776040518060400160405280601a81526020017f73657428737472696e672c737472696e672c75696e7432353629000000000000815250604051806060016040528060238152602001620014ce6023913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b620001ee604051806060016040528060228152602001620014f1602291396040518060600160405280602b815260200162001474602b913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b6200026560405180606001604052806026815260200162001513602691396040518060600160405280602f81526020016200149f602f913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b5050620002c5565b6001600160a01b03811681146200028357600080fd5b50565b600080604083850312156200029a57600080fd5b8251620002a7816200026d565b6020840151909250620002ba816200026d565b809150509250929050565b61119f80620002d56000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a424740014610090575b600080fd5b610059610054366004610ba9565b6100b3565b6040516100669190610c98565b60405180910390f35b61008261007d366004610cab565b6101ce565b604051908152602001610066565b6100a361009e366004610ba9565b610332565b6040519015158152602001610066565b606060005a6001546040805163b3f9e4cb60e01b81529088013560048201529192506000916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561010a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061012e9190610cd9565b90506101c26101406020880188610cf6565b8260408901358561015460608c018c610d13565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8f018190048102820181019092528d815292508d91508c90819084018382808284376000920191909152506103fb92505050565b925050505b9392505050565b60025460015460405163b3f9e4cb60e01b8152600481018490526000926001600160a01b0390811692169063b3f9e4cb90602401602060405180830381865afa92505050801561023b575060408051601f3d908101601f1916820190925261023891810190610cd9565b60015b156102435790505b6001600160a01b0381163b156102c557604051636ccbae5f60e01b81526004810184905281906001600160a01b03821690636ccbae5f90602401602060405180830381865afa9250505080156102b6575060408051601f3d908101601f191682019092526102b391810190610d5a565b60015b156102c357949350505050565b505b600254604051636ccbae5f60e01b8152600481018590526001600160a01b0390911690636ccbae5f90602401602060405180830381865afa15801561030e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101c79190610d5a565b6001546040805163b3f9e4cb60e01b815290850135600482015260009182916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa158015610383573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103a79190610cd9565b90506103f26103b586610e0b565b8286868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506104d392505050565b95945050505050565b6060600080876001600160a01b0316866104178b8a898961051f565b6040516104249190610eb5565b60006040518083038160008787f1925050503d8060008114610462576040519150601f19603f3d011682016040523d82523d6000602084013e610467565b606091505b509092509050610478603f87610ed1565b5a1161048657610486610ef3565b6104c682826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506105d4565b9998505050505050505050565b60006104e084848461060d565b8015610514575060608401516020908101516001600160e01b031990811660009081529182905260409091205460e01b1615155b949350505050565b50565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036105b15760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526105c982828661074c565b979650505050505050565b606083156105e35750816101c7565b8251156105f35782518084602001fd5b8160405162461bcd60e51b81526004016105a89190610c98565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015610654573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106789190610d5a565b905060006107268660600151805190602001208688602001516040516020016106c69392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156101c2575085516101c2906001600160a01b03168286610935565b60606001600160e01b0319841663b87abc1160e01b036107cd5760008380602001905181019061077c9190610d5a565b9050848184604051602401610792929190610f09565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915291506101c79050565b6001600160e01b0319841663c597407360e01b03610859576000806000858060200190518101906107fe9190610f67565b925092509250868383838860405160240161081c9493929190610fd4565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293506101c792505050565b6001600160e01b031984166311ed383160e31b036108a85760008060008580602001905181019061088a91906110a6565b925092509250868383838860405160240161081c9493929190611157565b6001600160e01b031984166328d55f9b60e21b036101c7576000806000858060200190518101906108d991906110a6565b92509250925086838383886040516024016108f79493929190611157565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293505050509392505050565b60008060006109448585610a77565b9092509050600081600481111561095d5761095d61117c565b14801561097b5750856001600160a01b0316826001600160a01b0316145b1561098b576001925050506101c7565b600080876001600160a01b0316631626ba7e60e01b88886040516024016109b3929190610f09565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516109f19190610eb5565b600060405180830381855afa9150503d8060008114610a2c576040519150601f19603f3d011682016040523d82523d6000602084013e610a31565b606091505b5091509150818015610a44575080516020145b8015610a6b57508051630b135d3f60e11b90610a699083016020908101908401610d5a565b145b98975050505050505050565b6000808251604103610aad5760208301516040840151606085015160001a610aa187828585610abc565b94509450505050610ab5565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610af35750600090506003610ba0565b8460ff16601b14158015610b0b57508460ff16601c14155b15610b1c5750600090506004610ba0565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610b70573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610b9957600060019250925050610ba0565b9150600090505b94509492505050565b600080600060408486031215610bbe57600080fd5b833567ffffffffffffffff80821115610bd657600080fd5b9085019060808288031215610bea57600080fd5b90935060208501359080821115610c0057600080fd5b818601915086601f830112610c1457600080fd5b813581811115610c2357600080fd5b876020828501011115610c3557600080fd5b6020830194508093505050509250925092565b60005b83811015610c63578181015183820152602001610c4b565b50506000910152565b60008151808452610c84816020860160208601610c48565b601f01601f19169290920160200192915050565b6020815260006101c76020830184610c6c565b600060208284031215610cbd57600080fd5b5035919050565b6001600160a01b038116811461051c57600080fd5b600060208284031215610ceb57600080fd5b81516101c781610cc4565b600060208284031215610d0857600080fd5b81356101c781610cc4565b6000808335601e19843603018112610d2a57600080fd5b83018035915067ffffffffffffffff821115610d4557600080fd5b602001915036819003821315610ab557600080fd5b600060208284031215610d6c57600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610dac57610dac610d73565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ddb57610ddb610d73565b604052919050565b600067ffffffffffffffff821115610dfd57610dfd610d73565b50601f01601f191660200190565b600060808236031215610e1d57600080fd5b610e25610d89565b8235610e3081610cc4565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610e6057600080fd5b840136601f820112610e7157600080fd5b8035610e84610e7f82610de3565b610db2565b8181523684838501011115610e9857600080fd5b818484018583013760009181019093015250606082015292915050565b60008251610ec7818460208701610c48565b9190910192915050565b600082610eee57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b8281526040602082015260006105146040830184610c6c565b600082601f830112610f3357600080fd5b8151610f41610e7f82610de3565b818152846020838601011115610f5657600080fd5b610514826020830160208701610c48565b600080600060608486031215610f7c57600080fd5b835167ffffffffffffffff80821115610f9457600080fd5b610fa087838801610f22565b94506020860151915080821115610fb657600080fd5b50610fc386828701610f22565b925050604084015190509250925092565b608081526000610fe76080830187610c6c565b8281036020840152610ff98187610c6c565b905084604084015282810360608401526105c98185610c6c565b600082601f83011261102457600080fd5b8151602067ffffffffffffffff8083111561104157611041610d73565b8260051b611050838201610db2565b938452858101830193838101908886111561106a57600080fd5b84880192505b85831015610a6b578251848111156110885760008081fd5b6110968a87838c0101610f22565b8352509184019190840190611070565b6000806000606084860312156110bb57600080fd5b835167ffffffffffffffff808211156110d357600080fd5b6110df87838801611013565b945060208601519150808211156110f557600080fd5b50610fc386828701611013565b600081518084526020808501808196508360051b8101915082860160005b8581101561114a578284038952611138848351610c6c565b98850198935090840190600101611120565b5091979650505050505050565b60808152600061116a6080830187611102565b8281036020840152610ff98187611102565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a7365744d616e79466f7228737472696e675b5d2c737472696e675b5d2c75696e743235362c6279746573297265636f6e666967757265466f7228737472696e675b5d2c737472696e675b5d2c75696e743235362c627974657329736574466f7228737472696e672c737472696e672c75696e743235362c6279746573297365744d616e7928737472696e675b5d2c737472696e675b5d2c75696e74323536297265636f6e66696775726528737472696e675b5d2c737472696e675b5d2c75696e7432353629"; + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "contract ICNSRegistry"; + readonly name: "cnsRegistry"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "defaultCnsResolver"; + readonly type: "address"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "constructor"; + }, { + readonly inputs: readonly [{ + readonly components: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "nonce"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly internalType: "struct IForwarder.ForwardRequest"; + readonly name: "req"; + readonly type: "tuple"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "execute"; + readonly outputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "nonceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly components: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "nonce"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly internalType: "struct IForwarder.ForwardRequest"; + readonly name: "req"; + readonly type: "tuple"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "verify"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): ResolverForwarderInterface; + static connect(address: string, runner?: ContractRunner | null): ResolverForwarder; +} +export {}; +//# sourceMappingURL=ResolverForwarder__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/metatx/ResolverForwarder__factory.d.ts.map b/dist/types/factories/contracts/metatx/ResolverForwarder__factory.d.ts.map new file mode 100644 index 00000000..476a9b4d --- /dev/null +++ b/dist/types/factories/contracts/metatx/ResolverForwarder__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ResolverForwarder__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/metatx/ResolverForwarder__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,MAAM,EACN,WAAW,EACX,yBAAyB,EACzB,cAAc,EACf,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,KAAK,EACV,iBAAiB,EACjB,0BAA0B,EAC3B,MAAM,6CAA6C,CAAC;AAuIrD,aAAK,kCAAkC,GACnC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,0BAA2B,SAAQ,eAAe;gBACjD,GAAG,IAAI,EAAE,kCAAkC;IAQ9C,oBAAoB,CAC3B,WAAW,EAAE,WAAW,EACxB,kBAAkB,EAAE,WAAW,EAC/B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAO5B,MAAM,CACb,WAAW,EAAE,WAAW,EACxB,kBAAkB,EAAE,WAAW,EAC/B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAQtB,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,0BAA0B;IAI3E,MAAM,CAAC,QAAQ,CAAC,QAAQ,0nVAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,0BAA0B;IAGpD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,iBAAiB;CAGrB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/metatx/ResolverForwarder__factory.js b/dist/types/factories/contracts/metatx/ResolverForwarder__factory.js new file mode 100644 index 00000000..737c90da --- /dev/null +++ b/dist/types/factories/contracts/metatx/ResolverForwarder__factory.js @@ -0,0 +1,163 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ResolverForwarder__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "contract ICNSRegistry", + name: "cnsRegistry", + type: "address", + }, + { + internalType: "address", + name: "defaultCnsResolver", + type: "address", + }, + ], + stateMutability: "nonpayable", + type: "constructor", + }, + { + inputs: [ + { + components: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "uint256", + name: "nonce", + type: "uint256", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + internalType: "struct IForwarder.ForwardRequest", + name: "req", + type: "tuple", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "execute", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "nonceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + components: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "uint256", + name: "nonce", + type: "uint256", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + internalType: "struct IForwarder.ForwardRequest", + name: "req", + type: "tuple", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "verify", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +const _bytecode = "0x60806040523480156200001157600080fd5b506040516200153938038062001539833981016040819052620000349162000286565b600180546001600160a01b038481166001600160a01b0319928316179092556002805492841692909116919091179055604080518082018252600e81526d72657365742875696e743235362960901b602080830191825283518085018552601781527f7265736574466f722875696e743235362c62797465732900000000000000000090820152915190206001600160e01b03191660009081529081905220805463ffffffff191663b87abc11179055620001776040518060400160405280601a81526020017f73657428737472696e672c737472696e672c75696e7432353629000000000000815250604051806060016040528060238152602001620014ce6023913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b620001ee604051806060016040528060228152602001620014f1602291396040518060600160405280602b815260200162001474602b913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b6200026560405180606001604052806026815260200162001513602691396040518060600160405280602f81526020016200149f602f913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b5050620002c5565b6001600160a01b03811681146200028357600080fd5b50565b600080604083850312156200029a57600080fd5b8251620002a7816200026d565b6020840151909250620002ba816200026d565b809150509250929050565b61119f80620002d56000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a424740014610090575b600080fd5b610059610054366004610ba9565b6100b3565b6040516100669190610c98565b60405180910390f35b61008261007d366004610cab565b6101ce565b604051908152602001610066565b6100a361009e366004610ba9565b610332565b6040519015158152602001610066565b606060005a6001546040805163b3f9e4cb60e01b81529088013560048201529192506000916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561010a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061012e9190610cd9565b90506101c26101406020880188610cf6565b8260408901358561015460608c018c610d13565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8f018190048102820181019092528d815292508d91508c90819084018382808284376000920191909152506103fb92505050565b925050505b9392505050565b60025460015460405163b3f9e4cb60e01b8152600481018490526000926001600160a01b0390811692169063b3f9e4cb90602401602060405180830381865afa92505050801561023b575060408051601f3d908101601f1916820190925261023891810190610cd9565b60015b156102435790505b6001600160a01b0381163b156102c557604051636ccbae5f60e01b81526004810184905281906001600160a01b03821690636ccbae5f90602401602060405180830381865afa9250505080156102b6575060408051601f3d908101601f191682019092526102b391810190610d5a565b60015b156102c357949350505050565b505b600254604051636ccbae5f60e01b8152600481018590526001600160a01b0390911690636ccbae5f90602401602060405180830381865afa15801561030e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101c79190610d5a565b6001546040805163b3f9e4cb60e01b815290850135600482015260009182916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa158015610383573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103a79190610cd9565b90506103f26103b586610e0b565b8286868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506104d392505050565b95945050505050565b6060600080876001600160a01b0316866104178b8a898961051f565b6040516104249190610eb5565b60006040518083038160008787f1925050503d8060008114610462576040519150601f19603f3d011682016040523d82523d6000602084013e610467565b606091505b509092509050610478603f87610ed1565b5a1161048657610486610ef3565b6104c682826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506105d4565b9998505050505050505050565b60006104e084848461060d565b8015610514575060608401516020908101516001600160e01b031990811660009081529182905260409091205460e01b1615155b949350505050565b50565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036105b15760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526105c982828661074c565b979650505050505050565b606083156105e35750816101c7565b8251156105f35782518084602001fd5b8160405162461bcd60e51b81526004016105a89190610c98565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015610654573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106789190610d5a565b905060006107268660600151805190602001208688602001516040516020016106c69392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156101c2575085516101c2906001600160a01b03168286610935565b60606001600160e01b0319841663b87abc1160e01b036107cd5760008380602001905181019061077c9190610d5a565b9050848184604051602401610792929190610f09565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915291506101c79050565b6001600160e01b0319841663c597407360e01b03610859576000806000858060200190518101906107fe9190610f67565b925092509250868383838860405160240161081c9493929190610fd4565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293506101c792505050565b6001600160e01b031984166311ed383160e31b036108a85760008060008580602001905181019061088a91906110a6565b925092509250868383838860405160240161081c9493929190611157565b6001600160e01b031984166328d55f9b60e21b036101c7576000806000858060200190518101906108d991906110a6565b92509250925086838383886040516024016108f79493929190611157565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293505050509392505050565b60008060006109448585610a77565b9092509050600081600481111561095d5761095d61117c565b14801561097b5750856001600160a01b0316826001600160a01b0316145b1561098b576001925050506101c7565b600080876001600160a01b0316631626ba7e60e01b88886040516024016109b3929190610f09565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516109f19190610eb5565b600060405180830381855afa9150503d8060008114610a2c576040519150601f19603f3d011682016040523d82523d6000602084013e610a31565b606091505b5091509150818015610a44575080516020145b8015610a6b57508051630b135d3f60e11b90610a699083016020908101908401610d5a565b145b98975050505050505050565b6000808251604103610aad5760208301516040840151606085015160001a610aa187828585610abc565b94509450505050610ab5565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610af35750600090506003610ba0565b8460ff16601b14158015610b0b57508460ff16601c14155b15610b1c5750600090506004610ba0565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610b70573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610b9957600060019250925050610ba0565b9150600090505b94509492505050565b600080600060408486031215610bbe57600080fd5b833567ffffffffffffffff80821115610bd657600080fd5b9085019060808288031215610bea57600080fd5b90935060208501359080821115610c0057600080fd5b818601915086601f830112610c1457600080fd5b813581811115610c2357600080fd5b876020828501011115610c3557600080fd5b6020830194508093505050509250925092565b60005b83811015610c63578181015183820152602001610c4b565b50506000910152565b60008151808452610c84816020860160208601610c48565b601f01601f19169290920160200192915050565b6020815260006101c76020830184610c6c565b600060208284031215610cbd57600080fd5b5035919050565b6001600160a01b038116811461051c57600080fd5b600060208284031215610ceb57600080fd5b81516101c781610cc4565b600060208284031215610d0857600080fd5b81356101c781610cc4565b6000808335601e19843603018112610d2a57600080fd5b83018035915067ffffffffffffffff821115610d4557600080fd5b602001915036819003821315610ab557600080fd5b600060208284031215610d6c57600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610dac57610dac610d73565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ddb57610ddb610d73565b604052919050565b600067ffffffffffffffff821115610dfd57610dfd610d73565b50601f01601f191660200190565b600060808236031215610e1d57600080fd5b610e25610d89565b8235610e3081610cc4565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610e6057600080fd5b840136601f820112610e7157600080fd5b8035610e84610e7f82610de3565b610db2565b8181523684838501011115610e9857600080fd5b818484018583013760009181019093015250606082015292915050565b60008251610ec7818460208701610c48565b9190910192915050565b600082610eee57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b8281526040602082015260006105146040830184610c6c565b600082601f830112610f3357600080fd5b8151610f41610e7f82610de3565b818152846020838601011115610f5657600080fd5b610514826020830160208701610c48565b600080600060608486031215610f7c57600080fd5b835167ffffffffffffffff80821115610f9457600080fd5b610fa087838801610f22565b94506020860151915080821115610fb657600080fd5b50610fc386828701610f22565b925050604084015190509250925092565b608081526000610fe76080830187610c6c565b8281036020840152610ff98187610c6c565b905084604084015282810360608401526105c98185610c6c565b600082601f83011261102457600080fd5b8151602067ffffffffffffffff8083111561104157611041610d73565b8260051b611050838201610db2565b938452858101830193838101908886111561106a57600080fd5b84880192505b85831015610a6b578251848111156110885760008081fd5b6110968a87838c0101610f22565b8352509184019190840190611070565b6000806000606084860312156110bb57600080fd5b835167ffffffffffffffff808211156110d357600080fd5b6110df87838801611013565b945060208601519150808211156110f557600080fd5b50610fc386828701611013565b600081518084526020808501808196508360051b8101915082860160005b8581101561114a578284038952611138848351610c6c565b98850198935090840190600101611120565b5091979650505050505050565b60808152600061116a6080830187611102565b8281036020840152610ff98187611102565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a7365744d616e79466f7228737472696e675b5d2c737472696e675b5d2c75696e743235362c6279746573297265636f6e666967757265466f7228737472696e675b5d2c737472696e675b5d2c75696e743235362c627974657329736574466f7228737472696e672c737472696e672c75696e743235362c6279746573297365744d616e7928737472696e675b5d2c737472696e675b5d2c75696e74323536297265636f6e66696775726528737472696e675b5d2c737472696e675b5d2c75696e7432353629"; +const isSuperArgs = (xs) => xs.length > 1; +class ResolverForwarder__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(cnsRegistry, defaultCnsResolver, overrides) { + return super.getDeployTransaction(cnsRegistry, defaultCnsResolver, overrides || {}); + } + deploy(cnsRegistry, defaultCnsResolver, overrides) { + return super.deploy(cnsRegistry, defaultCnsResolver, overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.ResolverForwarder__factory = ResolverForwarder__factory; +ResolverForwarder__factory.bytecode = _bytecode; +ResolverForwarder__factory.abi = _abi; diff --git a/dist/types/factories/contracts/metatx/UNSRegistryForwarder__factory.d.ts b/dist/types/factories/contracts/metatx/UNSRegistryForwarder__factory.d.ts new file mode 100644 index 00000000..fb8a6a8c --- /dev/null +++ b/dist/types/factories/contracts/metatx/UNSRegistryForwarder__factory.d.ts @@ -0,0 +1,102 @@ +import { type ContractRunner } from "ethers"; +import type { UNSRegistryForwarder, UNSRegistryForwarderInterface } from "../../../contracts/metatx/UNSRegistryForwarder"; +export declare class UNSRegistryForwarder__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "uint8"; + readonly name: "version"; + readonly type: "uint8"; + }]; + readonly name: "Initialized"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly components: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "nonce"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly internalType: "struct IForwarder.ForwardRequest"; + readonly name: "req"; + readonly type: "tuple"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "execute"; + readonly outputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "nonceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly components: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "nonce"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly internalType: "struct IForwarder.ForwardRequest"; + readonly name: "req"; + readonly type: "tuple"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "verify"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): UNSRegistryForwarderInterface; + static connect(address: string, runner?: ContractRunner | null): UNSRegistryForwarder; +} +//# sourceMappingURL=UNSRegistryForwarder__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/metatx/UNSRegistryForwarder__factory.d.ts.map b/dist/types/factories/contracts/metatx/UNSRegistryForwarder__factory.d.ts.map new file mode 100644 index 00000000..f685a623 --- /dev/null +++ b/dist/types/factories/contracts/metatx/UNSRegistryForwarder__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"UNSRegistryForwarder__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/metatx/UNSRegistryForwarder__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,oBAAoB,EACpB,6BAA6B,EAC9B,MAAM,gDAAgD,CAAC;AAiIxD,qBAAa,6BAA6B;IACxC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,6BAA6B;IAGvD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,oBAAoB;CAOxB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/metatx/UNSRegistryForwarder__factory.js b/dist/types/factories/contracts/metatx/UNSRegistryForwarder__factory.js new file mode 100644 index 00000000..10e0a621 --- /dev/null +++ b/dist/types/factories/contracts/metatx/UNSRegistryForwarder__factory.js @@ -0,0 +1,140 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.UNSRegistryForwarder__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint8", + name: "version", + type: "uint8", + }, + ], + name: "Initialized", + type: "event", + }, + { + inputs: [ + { + components: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "uint256", + name: "nonce", + type: "uint256", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + internalType: "struct IForwarder.ForwardRequest", + name: "req", + type: "tuple", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "execute", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "nonceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + components: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "uint256", + name: "nonce", + type: "uint256", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + internalType: "struct IForwarder.ForwardRequest", + name: "req", + type: "tuple", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "verify", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class UNSRegistryForwarder__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.UNSRegistryForwarder__factory = UNSRegistryForwarder__factory; +UNSRegistryForwarder__factory.abi = _abi; diff --git a/dist/types/factories/contracts/metatx/index.d.ts b/dist/types/factories/contracts/metatx/index.d.ts new file mode 100644 index 00000000..8bae4771 --- /dev/null +++ b/dist/types/factories/contracts/metatx/index.d.ts @@ -0,0 +1,11 @@ +export { BaseForwarder__factory } from "./BaseForwarder__factory"; +export { BaseRoutingForwarder__factory } from "./BaseRoutingForwarder__factory"; +export { CNSRegistryForwarder__factory } from "./CNSRegistryForwarder__factory"; +export { ERC2771Context__factory } from "./ERC2771Context__factory"; +export { ERC2771RegistryContext__factory } from "./ERC2771RegistryContext__factory"; +export { Forwarder__factory } from "./Forwarder__factory"; +export { IForwarder__factory } from "./IForwarder__factory"; +export { MintingManagerForwarder__factory } from "./MintingManagerForwarder__factory"; +export { ResolverForwarder__factory } from "./ResolverForwarder__factory"; +export { UNSRegistryForwarder__factory } from "./UNSRegistryForwarder__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/metatx/index.d.ts.map b/dist/types/factories/contracts/metatx/index.d.ts.map new file mode 100644 index 00000000..8c302c16 --- /dev/null +++ b/dist/types/factories/contracts/metatx/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/metatx/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AAChF,OAAO,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AAChF,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,+BAA+B,EAAE,MAAM,mCAAmC,CAAC;AACpF,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,gCAAgC,EAAE,MAAM,oCAAoC,CAAC;AACtF,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/contracts/metatx/index.js b/dist/types/factories/contracts/metatx/index.js new file mode 100644 index 00000000..4cedd7a3 --- /dev/null +++ b/dist/types/factories/contracts/metatx/index.js @@ -0,0 +1,23 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.UNSRegistryForwarder__factory = exports.ResolverForwarder__factory = exports.MintingManagerForwarder__factory = exports.IForwarder__factory = exports.Forwarder__factory = exports.ERC2771RegistryContext__factory = exports.ERC2771Context__factory = exports.CNSRegistryForwarder__factory = exports.BaseRoutingForwarder__factory = exports.BaseForwarder__factory = void 0; +var BaseForwarder__factory_1 = require("./BaseForwarder__factory"); +Object.defineProperty(exports, "BaseForwarder__factory", { enumerable: true, get: function () { return BaseForwarder__factory_1.BaseForwarder__factory; } }); +var BaseRoutingForwarder__factory_1 = require("./BaseRoutingForwarder__factory"); +Object.defineProperty(exports, "BaseRoutingForwarder__factory", { enumerable: true, get: function () { return BaseRoutingForwarder__factory_1.BaseRoutingForwarder__factory; } }); +var CNSRegistryForwarder__factory_1 = require("./CNSRegistryForwarder__factory"); +Object.defineProperty(exports, "CNSRegistryForwarder__factory", { enumerable: true, get: function () { return CNSRegistryForwarder__factory_1.CNSRegistryForwarder__factory; } }); +var ERC2771Context__factory_1 = require("./ERC2771Context__factory"); +Object.defineProperty(exports, "ERC2771Context__factory", { enumerable: true, get: function () { return ERC2771Context__factory_1.ERC2771Context__factory; } }); +var ERC2771RegistryContext__factory_1 = require("./ERC2771RegistryContext__factory"); +Object.defineProperty(exports, "ERC2771RegistryContext__factory", { enumerable: true, get: function () { return ERC2771RegistryContext__factory_1.ERC2771RegistryContext__factory; } }); +var Forwarder__factory_1 = require("./Forwarder__factory"); +Object.defineProperty(exports, "Forwarder__factory", { enumerable: true, get: function () { return Forwarder__factory_1.Forwarder__factory; } }); +var IForwarder__factory_1 = require("./IForwarder__factory"); +Object.defineProperty(exports, "IForwarder__factory", { enumerable: true, get: function () { return IForwarder__factory_1.IForwarder__factory; } }); +var MintingManagerForwarder__factory_1 = require("./MintingManagerForwarder__factory"); +Object.defineProperty(exports, "MintingManagerForwarder__factory", { enumerable: true, get: function () { return MintingManagerForwarder__factory_1.MintingManagerForwarder__factory; } }); +var ResolverForwarder__factory_1 = require("./ResolverForwarder__factory"); +Object.defineProperty(exports, "ResolverForwarder__factory", { enumerable: true, get: function () { return ResolverForwarder__factory_1.ResolverForwarder__factory; } }); +var UNSRegistryForwarder__factory_1 = require("./UNSRegistryForwarder__factory"); +Object.defineProperty(exports, "UNSRegistryForwarder__factory", { enumerable: true, get: function () { return UNSRegistryForwarder__factory_1.UNSRegistryForwarder__factory; } }); diff --git a/dist/types/factories/contracts/mocks/BaseForwarderMock__factory.d.ts b/dist/types/factories/contracts/mocks/BaseForwarderMock__factory.d.ts new file mode 100644 index 00000000..68463695 --- /dev/null +++ b/dist/types/factories/contracts/mocks/BaseForwarderMock__factory.d.ts @@ -0,0 +1,139 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../common"; +import type { BaseForwarderMock, BaseForwarderMockInterface } from "../../../contracts/mocks/BaseForwarderMock"; +declare type BaseForwarderMockConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class BaseForwarderMock__factory extends ContractFactory { + constructor(...args: BaseForwarderMockConstructorParams); + getDeployTransaction(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): BaseForwarderMock__factory; + static readonly bytecode = "0x608060405234801561001057600080fd5b50610c30806100206000396000f3fe608060405234801561001057600080fd5b506004361061007d5760003560e01c80636ccbae5f1161005b5780636ccbae5f146100bd578063716ac80f146100eb578063a4247400146100f3578063a567fb471461011657600080fd5b80631bf7e13e146100825780634167168d146100ab5780635b2dd100146100b5575b600080fd5b610095610090366004610857565b610142565b6040516100a29190610946565b60405180910390f35b6100b3600080fd5b005b6100b361024e565b6100dd6100cb366004610959565b60009081526020819052604090205490565b6040519081526020016100a2565b6100b361027f565b610106610101366004610857565b6102b6565b60405190151581526020016100a2565b61010661012436600461098e565b6001600160a01b031660009081526001602052604090205460ff1690565b606060005a90506101548585856102b6565b6101b15760405162461bcd60e51b8152602060048201526024808201527f42617365466f727761726465724d6f636b3a205349474e41545552455f494e566044820152631053125160e21b60648201526084015b60405180910390fd5b6102436101c1602087018761098e565b306040880135846101d560608b018b6109a9565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061030992505050565b9150505b9392505050565b60405162461bcd60e51b815260206004820152600660248201526541414141414160d01b60448201526064016101a8565b600180600061028c6103ea565b6001600160a01b031681526020810191909152604001600020805460ff1916911515919091179055565b60006103016102c485610a60565b3085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061040592505050565b949350505050565b60606103148561054e565b600080876001600160a01b03168661032e8b8a898961057a565b60405161033b9190610b21565b60006040518083038160008787f1925050503d8060008114610379576040519150601f19603f3d011682016040523d82523d6000602084013e61037e565b606091505b50909250905061038f603f87610b3d565b5a1161039d5761039d610b5f565b6103dd82826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506105aa565b9998505050505050505050565b6000303303610400575060331936013560601c90565b503390565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561044c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104709190610b75565b9050600061051e8660600151805190602001208688602001516040516020016104be9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561054457508551610544906001600160a01b031682866105e3565b9695505050505050565b600081815260208190526040902054610568906001610b8e565b60009182526020829052604090912055565b606082858560405160200161059193929190610bb5565b6040516020818303038152906040529050949350505050565b606083156105b9575081610247565b8251156105c95782518084602001fd5b8160405162461bcd60e51b81526004016101a89190610946565b60008060006105f28585610725565b9092509050600081600481111561060b5761060b610bf4565b1480156106295750856001600160a01b0316826001600160a01b0316145b1561063957600192505050610247565b600080876001600160a01b0316631626ba7e60e01b8888604051602401610661929190610c0a565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161069f9190610b21565b600060405180830381855afa9150503d80600081146106da576040519150601f19603f3d011682016040523d82523d6000602084013e6106df565b606091505b50915091508180156106f2575080516020145b801561071957508051630b135d3f60e11b906107179083016020908101908401610b75565b145b98975050505050505050565b600080825160410361075b5760208301516040840151606085015160001a61074f8782858561076a565b94509450505050610763565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08311156107a1575060009050600361084e565b8460ff16601b141580156107b957508460ff16601c14155b156107ca575060009050600461084e565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa15801561081e573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166108475760006001925092505061084e565b9150600090505b94509492505050565b60008060006040848603121561086c57600080fd5b833567ffffffffffffffff8082111561088457600080fd5b908501906080828803121561089857600080fd5b909350602085013590808211156108ae57600080fd5b818601915086601f8301126108c257600080fd5b8135818111156108d157600080fd5b8760208285010111156108e357600080fd5b6020830194508093505050509250925092565b60005b838110156109115781810151838201526020016108f9565b50506000910152565b600081518084526109328160208601602086016108f6565b601f01601f19169290920160200192915050565b602081526000610247602083018461091a565b60006020828403121561096b57600080fd5b5035919050565b80356001600160a01b038116811461098957600080fd5b919050565b6000602082840312156109a057600080fd5b61024782610972565b6000808335601e198436030181126109c057600080fd5b83018035915067ffffffffffffffff8211156109db57600080fd5b60200191503681900382131561076357600080fd5b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610a2957610a296109f0565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610a5857610a586109f0565b604052919050565b600060808236031215610a7257600080fd5b610a7a610a06565b610a8383610972565b81526020808401358183015260408401356040830152606084013567ffffffffffffffff80821115610ab457600080fd5b9085019036601f830112610ac757600080fd5b813581811115610ad957610ad96109f0565b610aeb601f8201601f19168501610a2f565b91508082523684828501011115610b0157600080fd5b808484018584013760009082019093019290925250606082015292915050565b60008251610b338184602087016108f6565b9190910192915050565b600082610b5a57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b600060208284031215610b8757600080fd5b5051919050565b80820180821115610baf57634e487b7160e01b600052601160045260246000fd5b92915050565b60008451610bc78184602089016108f6565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b600052602160045260246000fd5b828152604060208201526000610301604083018461091a56fea164736f6c6343000811000a"; + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly components: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "nonce"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly internalType: "struct IForwarder.ForwardRequest"; + readonly name: "req"; + readonly type: "tuple"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "execute"; + readonly outputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }]; + readonly name: "hasAsset"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "mintAsset"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "nonceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "revertWithReason"; + readonly outputs: readonly []; + readonly stateMutability: "pure"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "revertWithoutReason"; + readonly outputs: readonly []; + readonly stateMutability: "pure"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly components: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "nonce"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly internalType: "struct IForwarder.ForwardRequest"; + readonly name: "req"; + readonly type: "tuple"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "verify"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): BaseForwarderMockInterface; + static connect(address: string, runner?: ContractRunner | null): BaseForwarderMock; +} +export {}; +//# sourceMappingURL=BaseForwarderMock__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/BaseForwarderMock__factory.d.ts.map b/dist/types/factories/contracts/mocks/BaseForwarderMock__factory.d.ts.map new file mode 100644 index 00000000..bc004293 --- /dev/null +++ b/dist/types/factories/contracts/mocks/BaseForwarderMock__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"BaseForwarderMock__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/mocks/BaseForwarderMock__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,KAAK,EACV,iBAAiB,EACjB,0BAA0B,EAC3B,MAAM,4CAA4C,CAAC;AA+JpD,aAAK,kCAAkC,GACnC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,0BAA2B,SAAQ,eAAe;gBACjD,GAAG,IAAI,EAAE,kCAAkC;IAQ9C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,0BAA0B;IAI3E,MAAM,CAAC,QAAQ,CAAC,QAAQ,wqMAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,0BAA0B;IAGpD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,iBAAiB;CAGrB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/BaseForwarderMock__factory.js b/dist/types/factories/contracts/mocks/BaseForwarderMock__factory.js new file mode 100644 index 00000000..88b271e8 --- /dev/null +++ b/dist/types/factories/contracts/mocks/BaseForwarderMock__factory.js @@ -0,0 +1,187 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.BaseForwarderMock__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + components: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "uint256", + name: "nonce", + type: "uint256", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + internalType: "struct IForwarder.ForwardRequest", + name: "req", + type: "tuple", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "execute", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "hasAsset", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "mintAsset", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "nonceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "revertWithReason", + outputs: [], + stateMutability: "pure", + type: "function", + }, + { + inputs: [], + name: "revertWithoutReason", + outputs: [], + stateMutability: "pure", + type: "function", + }, + { + inputs: [ + { + components: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "uint256", + name: "nonce", + type: "uint256", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + internalType: "struct IForwarder.ForwardRequest", + name: "req", + type: "tuple", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "verify", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +const _bytecode = "0x608060405234801561001057600080fd5b50610c30806100206000396000f3fe608060405234801561001057600080fd5b506004361061007d5760003560e01c80636ccbae5f1161005b5780636ccbae5f146100bd578063716ac80f146100eb578063a4247400146100f3578063a567fb471461011657600080fd5b80631bf7e13e146100825780634167168d146100ab5780635b2dd100146100b5575b600080fd5b610095610090366004610857565b610142565b6040516100a29190610946565b60405180910390f35b6100b3600080fd5b005b6100b361024e565b6100dd6100cb366004610959565b60009081526020819052604090205490565b6040519081526020016100a2565b6100b361027f565b610106610101366004610857565b6102b6565b60405190151581526020016100a2565b61010661012436600461098e565b6001600160a01b031660009081526001602052604090205460ff1690565b606060005a90506101548585856102b6565b6101b15760405162461bcd60e51b8152602060048201526024808201527f42617365466f727761726465724d6f636b3a205349474e41545552455f494e566044820152631053125160e21b60648201526084015b60405180910390fd5b6102436101c1602087018761098e565b306040880135846101d560608b018b6109a9565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061030992505050565b9150505b9392505050565b60405162461bcd60e51b815260206004820152600660248201526541414141414160d01b60448201526064016101a8565b600180600061028c6103ea565b6001600160a01b031681526020810191909152604001600020805460ff1916911515919091179055565b60006103016102c485610a60565b3085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061040592505050565b949350505050565b60606103148561054e565b600080876001600160a01b03168661032e8b8a898961057a565b60405161033b9190610b21565b60006040518083038160008787f1925050503d8060008114610379576040519150601f19603f3d011682016040523d82523d6000602084013e61037e565b606091505b50909250905061038f603f87610b3d565b5a1161039d5761039d610b5f565b6103dd82826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506105aa565b9998505050505050505050565b6000303303610400575060331936013560601c90565b503390565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561044c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104709190610b75565b9050600061051e8660600151805190602001208688602001516040516020016104be9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561054457508551610544906001600160a01b031682866105e3565b9695505050505050565b600081815260208190526040902054610568906001610b8e565b60009182526020829052604090912055565b606082858560405160200161059193929190610bb5565b6040516020818303038152906040529050949350505050565b606083156105b9575081610247565b8251156105c95782518084602001fd5b8160405162461bcd60e51b81526004016101a89190610946565b60008060006105f28585610725565b9092509050600081600481111561060b5761060b610bf4565b1480156106295750856001600160a01b0316826001600160a01b0316145b1561063957600192505050610247565b600080876001600160a01b0316631626ba7e60e01b8888604051602401610661929190610c0a565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161069f9190610b21565b600060405180830381855afa9150503d80600081146106da576040519150601f19603f3d011682016040523d82523d6000602084013e6106df565b606091505b50915091508180156106f2575080516020145b801561071957508051630b135d3f60e11b906107179083016020908101908401610b75565b145b98975050505050505050565b600080825160410361075b5760208301516040840151606085015160001a61074f8782858561076a565b94509450505050610763565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08311156107a1575060009050600361084e565b8460ff16601b141580156107b957508460ff16601c14155b156107ca575060009050600461084e565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa15801561081e573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166108475760006001925092505061084e565b9150600090505b94509492505050565b60008060006040848603121561086c57600080fd5b833567ffffffffffffffff8082111561088457600080fd5b908501906080828803121561089857600080fd5b909350602085013590808211156108ae57600080fd5b818601915086601f8301126108c257600080fd5b8135818111156108d157600080fd5b8760208285010111156108e357600080fd5b6020830194508093505050509250925092565b60005b838110156109115781810151838201526020016108f9565b50506000910152565b600081518084526109328160208601602086016108f6565b601f01601f19169290920160200192915050565b602081526000610247602083018461091a565b60006020828403121561096b57600080fd5b5035919050565b80356001600160a01b038116811461098957600080fd5b919050565b6000602082840312156109a057600080fd5b61024782610972565b6000808335601e198436030181126109c057600080fd5b83018035915067ffffffffffffffff8211156109db57600080fd5b60200191503681900382131561076357600080fd5b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610a2957610a296109f0565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610a5857610a586109f0565b604052919050565b600060808236031215610a7257600080fd5b610a7a610a06565b610a8383610972565b81526020808401358183015260408401356040830152606084013567ffffffffffffffff80821115610ab457600080fd5b9085019036601f830112610ac757600080fd5b813581811115610ad957610ad96109f0565b610aeb601f8201601f19168501610a2f565b91508082523684828501011115610b0157600080fd5b808484018584013760009082019093019290925250606082015292915050565b60008251610b338184602087016108f6565b9190910192915050565b600082610b5a57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b600060208284031215610b8757600080fd5b5051919050565b80820180821115610baf57634e487b7160e01b600052601160045260246000fd5b92915050565b60008451610bc78184602089016108f6565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b600052602160045260246000fd5b828152604060208201526000610301604083018461091a56fea164736f6c6343000811000a"; +const isSuperArgs = (xs) => xs.length > 1; +class BaseForwarderMock__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(overrides) { + return super.getDeployTransaction(overrides || {}); + } + deploy(overrides) { + return super.deploy(overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.BaseForwarderMock__factory = BaseForwarderMock__factory; +BaseForwarderMock__factory.bytecode = _bytecode; +BaseForwarderMock__factory.abi = _abi; diff --git a/dist/types/factories/contracts/mocks/BaseRoutingForwarderMock__factory.d.ts b/dist/types/factories/contracts/mocks/BaseRoutingForwarderMock__factory.d.ts new file mode 100644 index 00000000..d16b209f --- /dev/null +++ b/dist/types/factories/contracts/mocks/BaseRoutingForwarderMock__factory.d.ts @@ -0,0 +1,218 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../common"; +import type { BaseRoutingForwarderMock, BaseRoutingForwarderMockInterface } from "../../../contracts/mocks/BaseRoutingForwarderMock"; +declare type BaseRoutingForwarderMockConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class BaseRoutingForwarderMock__factory extends ContractFactory { + constructor(...args: BaseRoutingForwarderMockConstructorParams); + getDeployTransaction(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): BaseRoutingForwarderMock__factory; + static readonly bytecode = "0x608060405234801561001057600080fd5b50610085604051806060016040528060258152602001610d5d602591396040518060600160405280602e8152602001610d82602e913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b6100f360405180604001604052806011815260200170707574537472696e6728737472696e672960781b8152506040518060400160405280601a81526020017f707574537472696e67466f7228737472696e672c6279746573290000000000008152506101df60201b60201c565b6101606040518060400160405280601081526020016f70757455696e742875696e743235362960801b8152506040518060400160405280601981526020017f70757455696e74466f722875696e743235362c627974657329000000000000008152506101df60201b60201c565b6101da6040518060400160405280601581526020017f70757455696e744172722875696e743235365b5d2900000000000000000000008152506040518060400160405280601e81526020017f70757455696e74417272466f722875696e743235365b5d2c62797465732900008152506101df60201b60201c565b61021e565b80516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b610b308061022d6000396000f3fe608060405234801561001057600080fd5b506004361061009e5760003560e01c8063a424740011610066578063a424740014610124578063ab3ca71b14610147578063cdec3fe31461015a578063da5703c214610168578063daa948aa1461017657600080fd5b806302c7ff77146100a35780631bf7e13e146100b857806332065ca7146100e15780633b526333146100f45780636ccbae5f14610102575b600080fd5b6100b66100b136600461054f565b610184565b005b6100cb6100c63660046105d3565b6101a5565b6040516100d89190610694565b60405180910390f35b6100cb6100ef3660046105d3565b6101bf565b6100b66100b13660046106a7565b6101166101103660046106dd565b50600090565b6040519081526020016100d8565b6101376101323660046105d3565b61025b565b60405190151581526020016100d8565b6100b66101553660046106f6565b610275565b6100b66100b13660046106dd565b6100b6610155366004610762565b6100b661015536600461079c565b60405162461bcd60e51b815260040161019c906107db565b60405180910390fd5b606060405162461bcd60e51b815260040161019c906107db565b60606102516101d16020860186610811565b60408601356101e3606088018861082e565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b0181900481028201810190925289815292508991508890819084018382808284376000920191909152506102a792505050565b90505b9392505050565b600060405162461bcd60e51b815260040161019c906107db565b60405162461bcd60e51b815260206004820152600760248201526636b7b1b5a337b960c91b604482015260640161019c565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036103345760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b606482015260840161019c565b8351600319016004850190815261034c828286610357565b979650505050505050565b606063021a79ef60e31b6001600160e01b03198516016103e55760008060008580602001905181019061038a9190610875565b92509250925086838383886040516024016103a894939291906108b8565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152935061025492505050565b6312d47e1f60e11b6001600160e01b031985160161046457600083806020019051810190610413919061093c565b90508481846040516024016104299291906109d0565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915291506102549050565b6312ab5bab60e11b6001600160e01b03198516016104a85760008380602001905181019061049291906109fe565b9050848184604051602401610429929190610a17565b6354c358e560e01b6001600160e01b03198516016104ec576000838060200190518101906104d69190610a30565b9050848184604051602401610429929190610ad6565b506040805160208101909152600081529392505050565b60008083601f84011261051557600080fd5b50813567ffffffffffffffff81111561052d57600080fd5b6020830191508360208260051b850101111561054857600080fd5b9250929050565b6000806020838503121561056257600080fd5b823567ffffffffffffffff81111561057957600080fd5b61058585828601610503565b90969095509350505050565b60008083601f8401126105a357600080fd5b50813567ffffffffffffffff8111156105bb57600080fd5b60208301915083602082850101111561054857600080fd5b6000806000604084860312156105e857600080fd5b833567ffffffffffffffff8082111561060057600080fd5b908501906080828803121561061457600080fd5b9093506020850135908082111561062a57600080fd5b5061063786828701610591565b9497909650939450505050565b60005b8381101561065f578181015183820152602001610647565b50506000910152565b60008151808452610680816020860160208601610644565b601f01601f19169290920160200192915050565b6020815260006102546020830184610668565b600080602083850312156106ba57600080fd5b823567ffffffffffffffff8111156106d157600080fd5b61058585828601610591565b6000602082840312156106ef57600080fd5b5035919050565b6000806000806040858703121561070c57600080fd5b843567ffffffffffffffff8082111561072457600080fd5b61073088838901610503565b9096509450602087013591508082111561074957600080fd5b5061075687828801610591565b95989497509550505050565b6000806000806040858703121561077857600080fd5b843567ffffffffffffffff8082111561079057600080fd5b61073088838901610591565b6000806000604084860312156107b157600080fd5b83359250602084013567ffffffffffffffff8111156107cf57600080fd5b61063786828701610591565b6020808252600490820152636d6f636b60e01b604082015260600190565b6001600160a01b038116811461080e57600080fd5b50565b60006020828403121561082357600080fd5b8135610254816107f9565b6000808335601e1984360301811261084557600080fd5b83018035915067ffffffffffffffff82111561086057600080fd5b60200191503681900382131561054857600080fd5b60008060006060848603121561088a57600080fd5b8351610895816107f9565b60208501519093506108a6816107f9565b80925050604084015190509250925092565b6001600160a01b03858116825284166020820152604081018390526080606082018190526000906108eb90830184610668565b9695505050505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715610934576109346108f5565b604052919050565b60006020828403121561094e57600080fd5b815167ffffffffffffffff8082111561096657600080fd5b818401915084601f83011261097a57600080fd5b81518181111561098c5761098c6108f5565b61099f601f8201601f191660200161090b565b91508082528560208285010111156109b657600080fd5b6109c7816020840160208601610644565b50949350505050565b6040815260006109e36040830185610668565b82810360208401526109f58185610668565b95945050505050565b600060208284031215610a1057600080fd5b5051919050565b8281526040602082015260006102516040830184610668565b60006020808385031215610a4357600080fd5b825167ffffffffffffffff80821115610a5b57600080fd5b818501915085601f830112610a6f57600080fd5b815181811115610a8157610a816108f5565b8060051b9150610a9284830161090b565b8181529183018401918481019088841115610aac57600080fd5b938501935b83851015610aca57845182529385019390850190610ab1565b98975050505050505050565b604080825283519082018190526000906020906060840190828701845b82811015610b0f57815184529284019290840190600101610af3565b505050838103828501526108eb818661066856fea164736f6c6343000811000a7472616e7366657246726f6d28616464726573732c616464726573732c75696e74323536297472616e7366657246726f6d466f7228616464726573732c616464726573732c75696e743235362c627974657329"; + static readonly abi: readonly [{ + readonly inputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "constructor"; + }, { + readonly inputs: readonly [{ + readonly components: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "nonce"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly internalType: "struct IForwarder.ForwardRequest"; + readonly name: "req"; + readonly type: "tuple"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "buildRouteData"; + readonly outputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly components: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "nonce"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly internalType: "struct IForwarder.ForwardRequest"; + readonly name: ""; + readonly type: "tuple"; + }, { + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly name: "execute"; + readonly outputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "pure"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly name: "nonceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "pure"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly name: "putString"; + readonly outputs: readonly []; + readonly stateMutability: "pure"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }, { + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly name: "putStringFor"; + readonly outputs: readonly []; + readonly stateMutability: "pure"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly name: "putUint"; + readonly outputs: readonly []; + readonly stateMutability: "pure"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256[]"; + readonly name: ""; + readonly type: "uint256[]"; + }]; + readonly name: "putUintArr"; + readonly outputs: readonly []; + readonly stateMutability: "pure"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256[]"; + readonly name: ""; + readonly type: "uint256[]"; + }, { + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly name: "putUintArrFor"; + readonly outputs: readonly []; + readonly stateMutability: "pure"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly name: "putUintFor"; + readonly outputs: readonly []; + readonly stateMutability: "pure"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly components: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "nonce"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly internalType: "struct IForwarder.ForwardRequest"; + readonly name: ""; + readonly type: "tuple"; + }, { + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly name: "verify"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "pure"; + readonly type: "function"; + }]; + static createInterface(): BaseRoutingForwarderMockInterface; + static connect(address: string, runner?: ContractRunner | null): BaseRoutingForwarderMock; +} +export {}; +//# sourceMappingURL=BaseRoutingForwarderMock__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/BaseRoutingForwarderMock__factory.d.ts.map b/dist/types/factories/contracts/mocks/BaseRoutingForwarderMock__factory.d.ts.map new file mode 100644 index 00000000..36721630 --- /dev/null +++ b/dist/types/factories/contracts/mocks/BaseRoutingForwarderMock__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"BaseRoutingForwarderMock__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/mocks/BaseRoutingForwarderMock__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,KAAK,EACV,wBAAwB,EACxB,iCAAiC,EAClC,MAAM,mDAAmD,CAAC;AAuQ3D,aAAK,yCAAyC,GAC1C,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,iCAAkC,SAAQ,eAAe;gBACxD,GAAG,IAAI,EAAE,yCAAyC;IAQrD,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CACd,MAAM,EAAE,cAAc,GAAG,IAAI,GAC5B,iCAAiC;IAIpC,MAAM,CAAC,QAAQ,CAAC,QAAQ,w2NAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,iCAAiC;IAG3D,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,wBAAwB;CAO5B"} \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/BaseRoutingForwarderMock__factory.js b/dist/types/factories/contracts/mocks/BaseRoutingForwarderMock__factory.js new file mode 100644 index 00000000..da8359db --- /dev/null +++ b/dist/types/factories/contracts/mocks/BaseRoutingForwarderMock__factory.js @@ -0,0 +1,291 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.BaseRoutingForwarderMock__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [], + stateMutability: "nonpayable", + type: "constructor", + }, + { + inputs: [ + { + components: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "uint256", + name: "nonce", + type: "uint256", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + internalType: "struct IForwarder.ForwardRequest", + name: "req", + type: "tuple", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "buildRouteData", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + components: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "uint256", + name: "nonce", + type: "uint256", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + internalType: "struct IForwarder.ForwardRequest", + name: "", + type: "tuple", + }, + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + name: "execute", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "pure", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + name: "nonceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "pure", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + name: "putString", + outputs: [], + stateMutability: "pure", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + name: "putStringFor", + outputs: [], + stateMutability: "pure", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + name: "putUint", + outputs: [], + stateMutability: "pure", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256[]", + name: "", + type: "uint256[]", + }, + ], + name: "putUintArr", + outputs: [], + stateMutability: "pure", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256[]", + name: "", + type: "uint256[]", + }, + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + name: "putUintArrFor", + outputs: [], + stateMutability: "pure", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + name: "putUintFor", + outputs: [], + stateMutability: "pure", + type: "function", + }, + { + inputs: [ + { + components: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "uint256", + name: "nonce", + type: "uint256", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + internalType: "struct IForwarder.ForwardRequest", + name: "", + type: "tuple", + }, + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + name: "verify", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "pure", + type: "function", + }, +]; +const _bytecode = "0x608060405234801561001057600080fd5b50610085604051806060016040528060258152602001610d5d602591396040518060600160405280602e8152602001610d82602e913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b6100f360405180604001604052806011815260200170707574537472696e6728737472696e672960781b8152506040518060400160405280601a81526020017f707574537472696e67466f7228737472696e672c6279746573290000000000008152506101df60201b60201c565b6101606040518060400160405280601081526020016f70757455696e742875696e743235362960801b8152506040518060400160405280601981526020017f70757455696e74466f722875696e743235362c627974657329000000000000008152506101df60201b60201c565b6101da6040518060400160405280601581526020017f70757455696e744172722875696e743235365b5d2900000000000000000000008152506040518060400160405280601e81526020017f70757455696e74417272466f722875696e743235365b5d2c62797465732900008152506101df60201b60201c565b61021e565b80516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b610b308061022d6000396000f3fe608060405234801561001057600080fd5b506004361061009e5760003560e01c8063a424740011610066578063a424740014610124578063ab3ca71b14610147578063cdec3fe31461015a578063da5703c214610168578063daa948aa1461017657600080fd5b806302c7ff77146100a35780631bf7e13e146100b857806332065ca7146100e15780633b526333146100f45780636ccbae5f14610102575b600080fd5b6100b66100b136600461054f565b610184565b005b6100cb6100c63660046105d3565b6101a5565b6040516100d89190610694565b60405180910390f35b6100cb6100ef3660046105d3565b6101bf565b6100b66100b13660046106a7565b6101166101103660046106dd565b50600090565b6040519081526020016100d8565b6101376101323660046105d3565b61025b565b60405190151581526020016100d8565b6100b66101553660046106f6565b610275565b6100b66100b13660046106dd565b6100b6610155366004610762565b6100b661015536600461079c565b60405162461bcd60e51b815260040161019c906107db565b60405180910390fd5b606060405162461bcd60e51b815260040161019c906107db565b60606102516101d16020860186610811565b60408601356101e3606088018861082e565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b0181900481028201810190925289815292508991508890819084018382808284376000920191909152506102a792505050565b90505b9392505050565b600060405162461bcd60e51b815260040161019c906107db565b60405162461bcd60e51b815260206004820152600760248201526636b7b1b5a337b960c91b604482015260640161019c565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036103345760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b606482015260840161019c565b8351600319016004850190815261034c828286610357565b979650505050505050565b606063021a79ef60e31b6001600160e01b03198516016103e55760008060008580602001905181019061038a9190610875565b92509250925086838383886040516024016103a894939291906108b8565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152935061025492505050565b6312d47e1f60e11b6001600160e01b031985160161046457600083806020019051810190610413919061093c565b90508481846040516024016104299291906109d0565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915291506102549050565b6312ab5bab60e11b6001600160e01b03198516016104a85760008380602001905181019061049291906109fe565b9050848184604051602401610429929190610a17565b6354c358e560e01b6001600160e01b03198516016104ec576000838060200190518101906104d69190610a30565b9050848184604051602401610429929190610ad6565b506040805160208101909152600081529392505050565b60008083601f84011261051557600080fd5b50813567ffffffffffffffff81111561052d57600080fd5b6020830191508360208260051b850101111561054857600080fd5b9250929050565b6000806020838503121561056257600080fd5b823567ffffffffffffffff81111561057957600080fd5b61058585828601610503565b90969095509350505050565b60008083601f8401126105a357600080fd5b50813567ffffffffffffffff8111156105bb57600080fd5b60208301915083602082850101111561054857600080fd5b6000806000604084860312156105e857600080fd5b833567ffffffffffffffff8082111561060057600080fd5b908501906080828803121561061457600080fd5b9093506020850135908082111561062a57600080fd5b5061063786828701610591565b9497909650939450505050565b60005b8381101561065f578181015183820152602001610647565b50506000910152565b60008151808452610680816020860160208601610644565b601f01601f19169290920160200192915050565b6020815260006102546020830184610668565b600080602083850312156106ba57600080fd5b823567ffffffffffffffff8111156106d157600080fd5b61058585828601610591565b6000602082840312156106ef57600080fd5b5035919050565b6000806000806040858703121561070c57600080fd5b843567ffffffffffffffff8082111561072457600080fd5b61073088838901610503565b9096509450602087013591508082111561074957600080fd5b5061075687828801610591565b95989497509550505050565b6000806000806040858703121561077857600080fd5b843567ffffffffffffffff8082111561079057600080fd5b61073088838901610591565b6000806000604084860312156107b157600080fd5b83359250602084013567ffffffffffffffff8111156107cf57600080fd5b61063786828701610591565b6020808252600490820152636d6f636b60e01b604082015260600190565b6001600160a01b038116811461080e57600080fd5b50565b60006020828403121561082357600080fd5b8135610254816107f9565b6000808335601e1984360301811261084557600080fd5b83018035915067ffffffffffffffff82111561086057600080fd5b60200191503681900382131561054857600080fd5b60008060006060848603121561088a57600080fd5b8351610895816107f9565b60208501519093506108a6816107f9565b80925050604084015190509250925092565b6001600160a01b03858116825284166020820152604081018390526080606082018190526000906108eb90830184610668565b9695505050505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715610934576109346108f5565b604052919050565b60006020828403121561094e57600080fd5b815167ffffffffffffffff8082111561096657600080fd5b818401915084601f83011261097a57600080fd5b81518181111561098c5761098c6108f5565b61099f601f8201601f191660200161090b565b91508082528560208285010111156109b657600080fd5b6109c7816020840160208601610644565b50949350505050565b6040815260006109e36040830185610668565b82810360208401526109f58185610668565b95945050505050565b600060208284031215610a1057600080fd5b5051919050565b8281526040602082015260006102516040830184610668565b60006020808385031215610a4357600080fd5b825167ffffffffffffffff80821115610a5b57600080fd5b818501915085601f830112610a6f57600080fd5b815181811115610a8157610a816108f5565b8060051b9150610a9284830161090b565b8181529183018401918481019088841115610aac57600080fd5b938501935b83851015610aca57845182529385019390850190610ab1565b98975050505050505050565b604080825283519082018190526000906020906060840190828701845b82811015610b0f57815184529284019290840190600101610af3565b505050838103828501526108eb818661066856fea164736f6c6343000811000a7472616e7366657246726f6d28616464726573732c616464726573732c75696e74323536297472616e7366657246726f6d466f7228616464726573732c616464726573732c75696e743235362c627974657329"; +const isSuperArgs = (xs) => xs.length > 1; +class BaseRoutingForwarderMock__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(overrides) { + return super.getDeployTransaction(overrides || {}); + } + deploy(overrides) { + return super.deploy(overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.BaseRoutingForwarderMock__factory = BaseRoutingForwarderMock__factory; +BaseRoutingForwarderMock__factory.bytecode = _bytecode; +BaseRoutingForwarderMock__factory.abi = _abi; diff --git a/dist/types/factories/contracts/mocks/ERC1155Mock__factory.d.ts b/dist/types/factories/contracts/mocks/ERC1155Mock__factory.d.ts new file mode 100644 index 00000000..cf4abd3c --- /dev/null +++ b/dist/types/factories/contracts/mocks/ERC1155Mock__factory.d.ts @@ -0,0 +1,612 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../common"; +import type { ERC1155Mock, ERC1155MockInterface } from "../../../contracts/mocks/ERC1155Mock"; +declare type ERC1155MockConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class ERC1155Mock__factory extends ContractFactory { + constructor(...args: ERC1155MockConstructorParams); + getDeployTransaction(uri: string, overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(uri: string, overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): ERC1155Mock__factory; + static readonly bytecode = "0x60806040523480156200001157600080fd5b506040516200346f3803806200346f83398101604081905262000034916200051c565b6200003f8162000046565b506200074b565b600054610100900460ff1615808015620000675750600054600160ff909116105b8062000097575062000084306200017a60201b62000b5d1760201c565b15801562000097575060005460ff166001145b620001005760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff19166001179055801562000124576000805461ff0019166101001790555b6200012f8262000189565b801562000176576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050565b6001600160a01b03163b151590565b600054610100900460ff16620001e55760405162461bcd60e51b815260206004820152602b60248201526000805160206200344f83398151915260448201526a6e697469616c697a696e6760a81b6064820152608401620000f7565b620001f08162000208565b620001fa6200026f565b6200020581620002d8565b50565b600054610100900460ff16620002645760405162461bcd60e51b815260206004820152602b60248201526000805160206200344f83398151915260448201526a6e697469616c697a696e6760a81b6064820152608401620000f7565b620002058162000399565b600054610100900460ff16620002cb5760405162461bcd60e51b815260206004820152602b60248201526000805160206200344f83398151915260448201526a6e697469616c697a696e6760a81b6064820152608401620000f7565b61012d805460ff19169055565b600054610100900460ff16620003345760405162461bcd60e51b815260206004820152602b60248201526000805160206200344f83398151915260448201526a6e697469616c697a696e6760a81b6064820152608401620000f7565b62000341600033620003a7565b6200036d7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a633620003a7565b620002057f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a33620003a7565b60cb6200017682826200067f565b620001768282620003c48282620003f060201b62000b6c1760201c565b6000828152609760209081526040909120620003eb91839062000bf262000494821b17901c565b505050565b60008281526065602090815260408083206001600160a01b038516845290915290205460ff16620001765760008281526065602090815260408083206001600160a01b03851684529091529020805460ff19166001179055620004503390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6000620004ab836001600160a01b038416620004b4565b90505b92915050565b6000818152600183016020526040812054620004fd57508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155620004ae565b506000620004ae565b634e487b7160e01b600052604160045260246000fd5b600060208083850312156200053057600080fd5b82516001600160401b03808211156200054857600080fd5b818501915085601f8301126200055d57600080fd5b81518181111562000572576200057262000506565b604051601f8201601f19908116603f011681019083821181831017156200059d576200059d62000506565b816040528281528886848701011115620005b657600080fd5b600093505b82841015620005da5784840186015181850187015292850192620005bb565b600086848301015280965050505050505092915050565b600181811c908216806200060657607f821691505b6020821081036200062757634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620003eb57600081815260208120601f850160051c81016020861015620006565750805b601f850160051c820191505b81811015620006775782815560010162000662565b505050505050565b81516001600160401b038111156200069b576200069b62000506565b620006b381620006ac8454620005f1565b846200062d565b602080601f831160018114620006eb5760008415620006d25750858301515b600019600386901b1c1916600185901b17855562000677565b600085815260208120601f198616915b828110156200071c57888601518255948401946001909101908401620006fb565b50858210156200073b5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b612cf4806200075b6000396000f3fe608060405234801561001057600080fd5b506004361061018d5760003560e01c80638456cb59116100de578063d539139311610097578063e985e9c511610071578063e985e9c514610377578063f242432a146103b3578063f5298aca146103c6578063f62d1888146103d957600080fd5b8063d53913931461033a578063d547741f1461034f578063e63ab1e91461036257600080fd5b80638456cb59146102c65780639010d07c146102ce57806391d14854146102f9578063a217fddf1461030c578063a22cb46514610314578063ca15c8731461032757600080fd5b80632f2ff15d1161014b5780634e1273f4116101255780634e1273f4146102745780635c975abb146102945780636b20c454146102a0578063731133e9146102b357600080fd5b80632f2ff15d1461024657806336568abe146102595780633f4ba83a1461026c57600080fd5b8062fdd58e1461019257806301ffc9a7146101b85780630e89341c146101db5780631f7fdffa146101fb578063248a9ca3146102105780632eb2c2d614610233575b600080fd5b6101a56101a0366004611eec565b6103ec565b6040519081526020015b60405180910390f35b6101cb6101c6366004611f2c565b610487565b60405190151581526020016101af565b6101ee6101e9366004611f49565b610492565b6040516101af9190611fb2565b61020e610209366004612118565b610526565b005b6101a561021e366004611f49565b60009081526065602052604090206001015490565b61020e6102413660046121b0565b61056c565b61020e610254366004612259565b6105b8565b61020e610267366004612259565b6105e2565b61020e610660565b610287610282366004612285565b6106f4565b6040516101af919061238a565b61012d5460ff166101cb565b61020e6102ae36600461239d565b61081d565b61020e6102c1366004612410565b610860565b61020e6108a0565b6102e16102dc366004612464565b610932565b6040516001600160a01b0390911681526020016101af565b6101cb610307366004612259565b610951565b6101a5600081565b61020e610322366004612486565b61097c565b6101a5610335366004611f49565b610987565b6101a5600080516020612cc883398151915281565b61020e61035d366004612259565b61099e565b6101a5600080516020612ca883398151915281565b6101cb6103853660046124c2565b6001600160a01b03918216600090815260ca6020908152604080832093909416825291909152205460ff1690565b61020e6103c13660046124ec565b6109c3565b61020e6103d4366004612550565b610a08565b61020e6103e7366004612583565b610a4b565b60006001600160a01b03831661045c5760405162461bcd60e51b815260206004820152602a60248201527f455243313135353a2061646472657373207a65726f206973206e6f742061207660448201526930b634b21037bbb732b960b11b60648201526084015b60405180910390fd5b50600081815260c9602090815260408083206001600160a01b03861684529091529020545b92915050565b600061048182610c07565b606060cb80546104a1906125d3565b80601f01602080910402602001604051908101604052809291908181526020018280546104cd906125d3565b801561051a5780601f106104ef5761010080835404028352916020019161051a565b820191906000526020600020905b8154815290600101906020018083116104fd57829003601f168201915b50505050509050919050565b61053e600080516020612cc883398151915233610951565b61055a5760405162461bcd60e51b81526004016104539061260d565b61056684848484610c47565b50505050565b6001600160a01b03851633148061058857506105888533610385565b6105a45760405162461bcd60e51b81526004016104539061266a565b6105b18585858585610da2565b5050505050565b6000828152606560205260409020600101546105d381610f4f565b6105dd8383610f5c565b505050565b6001600160a01b03811633146106525760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610453565b61065c8282610f7e565b5050565b610678600080516020612ca883398151915233610951565b6106ea5760405162461bcd60e51b815260206004820152603b60248201527f455243313135355072657365744d696e7465725061757365723a206d7573742060448201527f686176652070617573657220726f6c6520746f20756e706175736500000000006064820152608401610453565b6106f2610fa0565b565b606081518351146107595760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b6064820152608401610453565b600083516001600160401b0381111561077457610774611fc5565b60405190808252806020026020018201604052801561079d578160200160208202803683370190505b50905060005b8451811015610815576107e88582815181106107c1576107c16126b9565b60200260200101518583815181106107db576107db6126b9565b60200260200101516103ec565b8282815181106107fa576107fa6126b9565b602090810291909101015261080e816126e5565b90506107a3565b509392505050565b6001600160a01b03831633148061083957506108398333610385565b6108555760405162461bcd60e51b81526004016104539061266a565b6105dd838383610ff3565b610878600080516020612cc883398151915233610951565b6108945760405162461bcd60e51b81526004016104539061260d565b61056684848484611192565b6108b8600080516020612ca883398151915233610951565b61092a5760405162461bcd60e51b815260206004820152603960248201527f455243313135355072657365744d696e7465725061757365723a206d7573742060448201527f686176652070617573657220726f6c6520746f207061757365000000000000006064820152608401610453565b6106f261127d565b600082815260976020526040812061094a90836112bb565b9392505050565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b61065c3383836112c7565b6000818152609760205260408120610481906113a7565b6000828152606560205260409020600101546109b981610f4f565b6105dd8383610f7e565b6001600160a01b0385163314806109df57506109df8533610385565b6109fb5760405162461bcd60e51b81526004016104539061266a565b6105b185858585856113b1565b6001600160a01b038316331480610a245750610a248333610385565b610a405760405162461bcd60e51b81526004016104539061266a565b6105dd8383836114ed565b600054610100900460ff1615808015610a6b5750600054600160ff909116105b80610a855750303b158015610a85575060005460ff166001145b610ae85760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610453565b6000805460ff191660011790558015610b0b576000805461ff0019166101001790555b610b1482611609565b801561065c576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b6001600160a01b03163b151590565b610b768282610951565b61065c5760008281526065602090815260408083206001600160a01b03851684529091529020805460ff19166001179055610bae3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b600061094a836001600160a01b03841661164a565b60006001600160e01b03198216636cdb3d1360e11b1480610c3857506001600160e01b031982166303a24d0760e21b145b80610481575061048182611699565b6001600160a01b038416610c6d5760405162461bcd60e51b8152600401610453906126fe565b8151835114610c8e5760405162461bcd60e51b81526004016104539061273f565b33610c9e816000878787876116be565b60005b8451811015610d3a57838181518110610cbc57610cbc6126b9565b602002602001015160c96000878481518110610cda57610cda6126b9565b602002602001015181526020019081526020016000206000886001600160a01b03166001600160a01b031681526020019081526020016000206000828254610d229190612787565b90915550819050610d32816126e5565b915050610ca1565b50846001600160a01b031660006001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051610d8b92919061279a565b60405180910390a46105b1816000878787876116cc565b8151835114610dc35760405162461bcd60e51b81526004016104539061273f565b6001600160a01b038416610de95760405162461bcd60e51b8152600401610453906127c8565b33610df88187878787876116be565b60005b8451811015610ee1576000858281518110610e1857610e186126b9565b602002602001015190506000858381518110610e3657610e366126b9565b602090810291909101810151600084815260c9835260408082206001600160a01b038e168352909352919091205490915081811015610e875760405162461bcd60e51b81526004016104539061280d565b600083815260c9602090815260408083206001600160a01b038e8116855292528083208585039055908b16825281208054849290610ec6908490612787565b9250508190555050505080610eda906126e5565b9050610dfb565b50846001600160a01b0316866001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051610f3192919061279a565b60405180910390a4610f478187878787876116cc565b505050505050565b610f598133611827565b50565b610f668282610b6c565b60008281526097602052604090206105dd9082610bf2565b610f88828261188b565b60008281526097602052604090206105dd90826118f2565b610fa8611907565b61012d805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516001600160a01b03909116815260200160405180910390a1565b6001600160a01b0383166110195760405162461bcd60e51b815260040161045390612857565b805182511461103a5760405162461bcd60e51b81526004016104539061273f565b600033905061105d818560008686604051806020016040528060008152506116be565b60005b835181101561112557600084828151811061107d5761107d6126b9565b60200260200101519050600084838151811061109b5761109b6126b9565b602090810291909101810151600084815260c9835260408082206001600160a01b038c1683529093529190912054909150818110156110ec5760405162461bcd60e51b81526004016104539061289a565b600092835260c9602090815260408085206001600160a01b038b168652909152909220910390558061111d816126e5565b915050611060565b5060006001600160a01b0316846001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb868660405161117692919061279a565b60405180910390a4604080516020810190915260009052610566565b6001600160a01b0384166111b85760405162461bcd60e51b8152600401610453906126fe565b3360006111c485611951565b905060006111d185611951565b90506111e2836000898585896116be565b600086815260c9602090815260408083206001600160a01b038b16845290915281208054879290611214908490612787565b909155505060408051878152602081018790526001600160a01b03808a1692600092918716917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46112748360008989898961199c565b50505050505050565b611285611a57565b61012d805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258610fd63390565b600061094a8383611a9e565b816001600160a01b0316836001600160a01b03160361133a5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b6064820152608401610453565b6001600160a01b03838116600081815260ca6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6000610481825490565b6001600160a01b0384166113d75760405162461bcd60e51b8152600401610453906127c8565b3360006113e385611951565b905060006113f085611951565b90506114008389898585896116be565b600086815260c9602090815260408083206001600160a01b038c168452909152902054858110156114435760405162461bcd60e51b81526004016104539061280d565b600087815260c9602090815260408083206001600160a01b038d8116855292528083208985039055908a16825281208054889290611482908490612787565b909155505060408051888152602081018890526001600160a01b03808b16928c821692918816917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46114e2848a8a8a8a8a61199c565b505050505050505050565b6001600160a01b0383166115135760405162461bcd60e51b815260040161045390612857565b33600061151f84611951565b9050600061152c84611951565b905061154c838760008585604051806020016040528060008152506116be565b600085815260c9602090815260408083206001600160a01b038a1684529091529020548481101561158f5760405162461bcd60e51b81526004016104539061289a565b600086815260c9602090815260408083206001600160a01b038b81168086529184528285208a8703905582518b81529384018a90529092908816917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4604080516020810190915260009052611274565b600054610100900460ff166116305760405162461bcd60e51b8152600401610453906128de565b61163981611ac8565b611641611af8565b610f5981611b2c565b600081815260018301602052604081205461169157508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610481565b506000610481565b60006001600160e01b03198216635a05180f60e01b1480610481575061048182611b8e565b610f47868686868686611bc3565b6001600160a01b0384163b15610f475760405163bc197c8160e01b81526001600160a01b0385169063bc197c81906117109089908990889088908890600401612929565b6020604051808303816000875af192505050801561174b575060408051601f3d908101601f1916820190925261174891810190612987565b60015b6117f7576117576129a4565b806308c379a003611790575061176b6129c0565b806117765750611792565b8060405162461bcd60e51b81526004016104539190611fb2565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e20455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b6064820152608401610453565b6001600160e01b0319811663bc197c8160e01b146112745760405162461bcd60e51b815260040161045390612a49565b6118318282610951565b61065c57611849816001600160a01b03166014611c2c565b611854836020611c2c565b604051602001611865929190612a91565b60408051601f198184030181529082905262461bcd60e51b825261045391600401611fb2565b6118958282610951565b1561065c5760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b600061094a836001600160a01b038416611dc7565b61012d5460ff166106f25760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b6044820152606401610453565b6040805160018082528183019092526060916000919060208083019080368337019050509050828160008151811061198b5761198b6126b9565b602090810291909101015292915050565b6001600160a01b0384163b15610f475760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e61906119e09089908990889088908890600401612b06565b6020604051808303816000875af1925050508015611a1b575060408051601f3d908101601f19168201909252611a1891810190612987565b60015b611a27576117576129a4565b6001600160e01b0319811663f23a6e6160e01b146112745760405162461bcd60e51b815260040161045390612a49565b61012d5460ff16156106f25760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b6044820152606401610453565b6000826000018281548110611ab557611ab56126b9565b9060005260206000200154905092915050565b600054610100900460ff16611aef5760405162461bcd60e51b8152600401610453906128de565b610f5981611eba565b600054610100900460ff16611b1f5760405162461bcd60e51b8152600401610453906128de565b61012d805460ff19169055565b600054610100900460ff16611b535760405162461bcd60e51b8152600401610453906128de565b611b5e600033611ec6565b611b76600080516020612cc883398151915233611ec6565b610f59600080516020612ca883398151915233611ec6565b60006001600160e01b03198216637965db0b60e01b148061048157506301ffc9a760e01b6001600160e01b0319831614610481565b61012d5460ff1615610f475760405162461bcd60e51b815260206004820152602c60248201527f455243313135355061757361626c653a20746f6b656e207472616e736665722060448201526b1dda1a5b19481c185d5cd95960a21b6064820152608401610453565b60606000611c3b836002612b4b565b611c46906002612787565b6001600160401b03811115611c5d57611c5d611fc5565b6040519080825280601f01601f191660200182016040528015611c87576020820181803683370190505b509050600360fc1b81600081518110611ca257611ca26126b9565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110611cd157611cd16126b9565b60200101906001600160f81b031916908160001a9053506000611cf5846002612b4b565b611d00906001612787565b90505b6001811115611d78576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611d3457611d346126b9565b1a60f81b828281518110611d4a57611d4a6126b9565b60200101906001600160f81b031916908160001a90535060049490941c93611d7181612b62565b9050611d03565b50831561094a5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610453565b60008181526001830160205260408120548015611eb0576000611deb600183612b79565b8554909150600090611dff90600190612b79565b9050818114611e64576000866000018281548110611e1f57611e1f6126b9565b9060005260206000200154905080876000018481548110611e4257611e426126b9565b6000918252602080832090910192909255918252600188019052604090208390555b8554869080611e7557611e75612b8c565b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050610481565b6000915050610481565b60cb61065c8282612be8565b61065c8282610f5c565b80356001600160a01b0381168114611ee757600080fd5b919050565b60008060408385031215611eff57600080fd5b611f0883611ed0565b946020939093013593505050565b6001600160e01b031981168114610f5957600080fd5b600060208284031215611f3e57600080fd5b813561094a81611f16565b600060208284031215611f5b57600080fd5b5035919050565b60005b83811015611f7d578181015183820152602001611f65565b50506000910152565b60008151808452611f9e816020860160208601611f62565b601f01601f19169290920160200192915050565b60208152600061094a6020830184611f86565b634e487b7160e01b600052604160045260246000fd5b601f8201601f191681016001600160401b038111828210171561200057612000611fc5565b6040525050565b60006001600160401b0382111561202057612020611fc5565b5060051b60200190565b600082601f83011261203b57600080fd5b8135602061204882612007565b6040516120558282611fdb565b83815260059390931b850182019282810191508684111561207557600080fd5b8286015b848110156120905780358352918301918301612079565b509695505050505050565b60006001600160401b038311156120b4576120b4611fc5565b6040516120cb601f8501601f191660200182611fdb565b8091508381528484840111156120e057600080fd5b83836020830137600060208583010152509392505050565b600082601f83011261210957600080fd5b61094a8383356020850161209b565b6000806000806080858703121561212e57600080fd5b61213785611ed0565b935060208501356001600160401b038082111561215357600080fd5b61215f8883890161202a565b9450604087013591508082111561217557600080fd5b6121818883890161202a565b9350606087013591508082111561219757600080fd5b506121a4878288016120f8565b91505092959194509250565b600080600080600060a086880312156121c857600080fd5b6121d186611ed0565b94506121df60208701611ed0565b935060408601356001600160401b03808211156121fb57600080fd5b61220789838a0161202a565b9450606088013591508082111561221d57600080fd5b61222989838a0161202a565b9350608088013591508082111561223f57600080fd5b5061224c888289016120f8565b9150509295509295909350565b6000806040838503121561226c57600080fd5b8235915061227c60208401611ed0565b90509250929050565b6000806040838503121561229857600080fd5b82356001600160401b03808211156122af57600080fd5b818501915085601f8301126122c357600080fd5b813560206122d082612007565b6040516122dd8282611fdb565b83815260059390931b85018201928281019150898411156122fd57600080fd5b948201945b838610156123225761231386611ed0565b82529482019490820190612302565b9650508601359250508082111561233857600080fd5b506123458582860161202a565b9150509250929050565b600081518084526020808501945080840160005b8381101561237f57815187529582019590820190600101612363565b509495945050505050565b60208152600061094a602083018461234f565b6000806000606084860312156123b257600080fd5b6123bb84611ed0565b925060208401356001600160401b03808211156123d757600080fd5b6123e38783880161202a565b935060408601359150808211156123f957600080fd5b506124068682870161202a565b9150509250925092565b6000806000806080858703121561242657600080fd5b61242f85611ed0565b9350602085013592506040850135915060608501356001600160401b0381111561245857600080fd5b6121a4878288016120f8565b6000806040838503121561247757600080fd5b50508035926020909101359150565b6000806040838503121561249957600080fd5b6124a283611ed0565b9150602083013580151581146124b757600080fd5b809150509250929050565b600080604083850312156124d557600080fd5b6124de83611ed0565b915061227c60208401611ed0565b600080600080600060a0868803121561250457600080fd5b61250d86611ed0565b945061251b60208701611ed0565b9350604086013592506060860135915060808601356001600160401b0381111561254457600080fd5b61224c888289016120f8565b60008060006060848603121561256557600080fd5b61256e84611ed0565b95602085013595506040909401359392505050565b60006020828403121561259557600080fd5b81356001600160401b038111156125ab57600080fd5b8201601f810184136125bc57600080fd5b6125cb8482356020840161209b565b949350505050565b600181811c908216806125e757607f821691505b60208210810361260757634e487b7160e01b600052602260045260246000fd5b50919050565b60208082526038908201527f455243313135355072657365744d696e7465725061757365723a206d7573742060408201527f68617665206d696e74657220726f6c6520746f206d696e740000000000000000606082015260800190565b6020808252602f908201527f455243313135353a2063616c6c6572206973206e6f7420746f6b656e206f776e60408201526e195c881b9bdc88185c1c1c9bdd9959608a1b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000600182016126f7576126f76126cf565b5060010190565b60208082526021908201527f455243313135353a206d696e7420746f20746865207a65726f206164647265736040820152607360f81b606082015260800190565b60208082526028908201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206040820152670dad2e6dac2e8c6d60c31b606082015260800190565b80820180821115610481576104816126cf565b6040815260006127ad604083018561234f565b82810360208401526127bf818561234f565b95945050505050565b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b60208082526023908201527f455243313135353a206275726e2066726f6d20746865207a65726f206164647260408201526265737360e81b606082015260800190565b60208082526024908201527f455243313135353a206275726e20616d6f756e7420657863656564732062616c604082015263616e636560e01b606082015260800190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6001600160a01b0386811682528516602082015260a0604082018190526000906129559083018661234f565b8281036060840152612967818661234f565b9050828103608084015261297b8185611f86565b98975050505050505050565b60006020828403121561299957600080fd5b815161094a81611f16565b600060033d11156129bd5760046000803e5060005160e01c5b90565b600060443d10156129ce5790565b6040516003193d81016004833e81513d6001600160401b0381602484011181841117156129fd57505050505090565b8285019150815181811115612a155750505050505090565b843d8701016020828501011115612a2f5750505050505090565b612a3e60208286010187611fdb565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351612ac9816017850160208801611f62565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351612afa816028840160208801611f62565b01602801949350505050565b6001600160a01b03868116825285166020820152604081018490526060810183905260a060808201819052600090612b4090830184611f86565b979650505050505050565b8082028115828204841417610481576104816126cf565b600081612b7157612b716126cf565b506000190190565b81810381811115610481576104816126cf565b634e487b7160e01b600052603160045260246000fd5b601f8211156105dd57600081815260208120601f850160051c81016020861015612bc95750805b601f850160051c820191505b81811015610f4757828155600101612bd5565b81516001600160401b03811115612c0157612c01611fc5565b612c1581612c0f84546125d3565b84612ba2565b602080601f831160018114612c4a5760008415612c325750858301515b600019600386901b1c1916600185901b178555610f47565b600085815260208120601f198616915b82811015612c7957888601518255948401946001909101908401612c5a565b5085821015612c975787850151600019600388901b60f8161c191681555b5050505050600190811b0190555056fe65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000811000a496e697469616c697a61626c653a20636f6e7472616374206973206e6f742069"; + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "uri"; + readonly type: "string"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "constructor"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "ApprovalForAll"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "uint8"; + readonly name: "version"; + readonly type: "uint8"; + }]; + readonly name: "Initialized"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "Paused"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "previousAdminRole"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "newAdminRole"; + readonly type: "bytes32"; + }]; + readonly name: "RoleAdminChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "sender"; + readonly type: "address"; + }]; + readonly name: "RoleGranted"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "sender"; + readonly type: "address"; + }]; + readonly name: "RoleRevoked"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "uint256[]"; + readonly name: "ids"; + readonly type: "uint256[]"; + }, { + readonly indexed: false; + readonly internalType: "uint256[]"; + readonly name: "values"; + readonly type: "uint256[]"; + }]; + readonly name: "TransferBatch"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "value"; + readonly type: "uint256"; + }]; + readonly name: "TransferSingle"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }]; + readonly name: "URI"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "Unpaused"; + readonly type: "event"; + }, { + readonly inputs: readonly []; + readonly name: "DEFAULT_ADMIN_ROLE"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "MINTER_ROLE"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "PAUSER_ROLE"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }]; + readonly name: "balanceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address[]"; + readonly name: "accounts"; + readonly type: "address[]"; + }, { + readonly internalType: "uint256[]"; + readonly name: "ids"; + readonly type: "uint256[]"; + }]; + readonly name: "balanceOfBatch"; + readonly outputs: readonly [{ + readonly internalType: "uint256[]"; + readonly name: ""; + readonly type: "uint256[]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "value"; + readonly type: "uint256"; + }]; + readonly name: "burn"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly internalType: "uint256[]"; + readonly name: "ids"; + readonly type: "uint256[]"; + }, { + readonly internalType: "uint256[]"; + readonly name: "values"; + readonly type: "uint256[]"; + }]; + readonly name: "burnBatch"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }]; + readonly name: "getRoleAdmin"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "uint256"; + readonly name: "index"; + readonly type: "uint256"; + }]; + readonly name: "getRoleMember"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }]; + readonly name: "getRoleMemberCount"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "grantRole"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "hasRole"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "uri"; + readonly type: "string"; + }]; + readonly name: "initialize"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly name: "isApprovedForAll"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "amount"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "mint"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256[]"; + readonly name: "ids"; + readonly type: "uint256[]"; + }, { + readonly internalType: "uint256[]"; + readonly name: "amounts"; + readonly type: "uint256[]"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "mintBatch"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "pause"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "paused"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "renounceRole"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "revokeRole"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256[]"; + readonly name: "ids"; + readonly type: "uint256[]"; + }, { + readonly internalType: "uint256[]"; + readonly name: "amounts"; + readonly type: "uint256[]"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "safeBatchTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "id"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "amount"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "setApprovalForAll"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "unpause"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly name: "uri"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): ERC1155MockInterface; + static connect(address: string, runner?: ContractRunner | null): ERC1155Mock; +} +export {}; +//# sourceMappingURL=ERC1155Mock__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/ERC1155Mock__factory.d.ts.map b/dist/types/factories/contracts/mocks/ERC1155Mock__factory.d.ts.map new file mode 100644 index 00000000..d90b6b43 --- /dev/null +++ b/dist/types/factories/contracts/mocks/ERC1155Mock__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ERC1155Mock__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/mocks/ERC1155Mock__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,KAAK,EACV,WAAW,EACX,oBAAoB,EACrB,MAAM,sCAAsC,CAAC;AA8vB9C,aAAK,4BAA4B,GAC7B,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,oBAAqB,SAAQ,eAAe;gBAC3C,GAAG,IAAI,EAAE,4BAA4B;IAQxC,oBAAoB,CAC3B,GAAG,EAAE,MAAM,EACX,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CACb,GAAG,EAAE,MAAM,EACX,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAItB,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,oBAAoB;IAIrE,MAAM,CAAC,QAAQ,CAAC,QAAQ,su0BAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,oBAAoB;IAG9C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,WAAW;CAG7E"} \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/ERC1155Mock__factory.js b/dist/types/factories/contracts/mocks/ERC1155Mock__factory.js new file mode 100644 index 00000000..f4ec8a1e --- /dev/null +++ b/dist/types/factories/contracts/mocks/ERC1155Mock__factory.js @@ -0,0 +1,794 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ERC1155Mock__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "string", + name: "uri", + type: "string", + }, + ], + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "ApprovalForAll", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint8", + name: "version", + type: "uint8", + }, + ], + name: "Initialized", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "Paused", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + indexed: true, + internalType: "bytes32", + name: "previousAdminRole", + type: "bytes32", + }, + { + indexed: true, + internalType: "bytes32", + name: "newAdminRole", + type: "bytes32", + }, + ], + name: "RoleAdminChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "RoleGranted", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "RoleRevoked", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: false, + internalType: "uint256[]", + name: "ids", + type: "uint256[]", + }, + { + indexed: false, + internalType: "uint256[]", + name: "values", + type: "uint256[]", + }, + ], + name: "TransferBatch", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "TransferSingle", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "string", + name: "value", + type: "string", + }, + { + indexed: true, + internalType: "uint256", + name: "id", + type: "uint256", + }, + ], + name: "URI", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "Unpaused", + type: "event", + }, + { + inputs: [], + name: "DEFAULT_ADMIN_ROLE", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + 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: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address[]", + name: "accounts", + type: "address[]", + }, + { + internalType: "uint256[]", + name: "ids", + type: "uint256[]", + }, + ], + name: "balanceOfBatch", + outputs: [ + { + internalType: "uint256[]", + name: "", + type: "uint256[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "burn", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "uint256[]", + name: "ids", + type: "uint256[]", + }, + { + internalType: "uint256[]", + name: "values", + type: "uint256[]", + }, + ], + name: "burnBatch", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + ], + name: "getRoleAdmin", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + 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: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "grantRole", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "hasRole", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "uri", + type: "string", + }, + ], + name: "initialize", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + name: "isApprovedForAll", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "mint", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256[]", + name: "ids", + type: "uint256[]", + }, + { + internalType: "uint256[]", + name: "amounts", + type: "uint256[]", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "mintBatch", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "pause", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "paused", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "renounceRole", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "revokeRole", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256[]", + name: "ids", + type: "uint256[]", + }, + { + internalType: "uint256[]", + name: "amounts", + type: "uint256[]", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "safeBatchTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "setApprovalForAll", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "unpause", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + name: "uri", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +const _bytecode = "0x60806040523480156200001157600080fd5b506040516200346f3803806200346f83398101604081905262000034916200051c565b6200003f8162000046565b506200074b565b600054610100900460ff1615808015620000675750600054600160ff909116105b8062000097575062000084306200017a60201b62000b5d1760201c565b15801562000097575060005460ff166001145b620001005760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff19166001179055801562000124576000805461ff0019166101001790555b6200012f8262000189565b801562000176576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050565b6001600160a01b03163b151590565b600054610100900460ff16620001e55760405162461bcd60e51b815260206004820152602b60248201526000805160206200344f83398151915260448201526a6e697469616c697a696e6760a81b6064820152608401620000f7565b620001f08162000208565b620001fa6200026f565b6200020581620002d8565b50565b600054610100900460ff16620002645760405162461bcd60e51b815260206004820152602b60248201526000805160206200344f83398151915260448201526a6e697469616c697a696e6760a81b6064820152608401620000f7565b620002058162000399565b600054610100900460ff16620002cb5760405162461bcd60e51b815260206004820152602b60248201526000805160206200344f83398151915260448201526a6e697469616c697a696e6760a81b6064820152608401620000f7565b61012d805460ff19169055565b600054610100900460ff16620003345760405162461bcd60e51b815260206004820152602b60248201526000805160206200344f83398151915260448201526a6e697469616c697a696e6760a81b6064820152608401620000f7565b62000341600033620003a7565b6200036d7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a633620003a7565b620002057f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a33620003a7565b60cb6200017682826200067f565b620001768282620003c48282620003f060201b62000b6c1760201c565b6000828152609760209081526040909120620003eb91839062000bf262000494821b17901c565b505050565b60008281526065602090815260408083206001600160a01b038516845290915290205460ff16620001765760008281526065602090815260408083206001600160a01b03851684529091529020805460ff19166001179055620004503390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6000620004ab836001600160a01b038416620004b4565b90505b92915050565b6000818152600183016020526040812054620004fd57508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155620004ae565b506000620004ae565b634e487b7160e01b600052604160045260246000fd5b600060208083850312156200053057600080fd5b82516001600160401b03808211156200054857600080fd5b818501915085601f8301126200055d57600080fd5b81518181111562000572576200057262000506565b604051601f8201601f19908116603f011681019083821181831017156200059d576200059d62000506565b816040528281528886848701011115620005b657600080fd5b600093505b82841015620005da5784840186015181850187015292850192620005bb565b600086848301015280965050505050505092915050565b600181811c908216806200060657607f821691505b6020821081036200062757634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620003eb57600081815260208120601f850160051c81016020861015620006565750805b601f850160051c820191505b81811015620006775782815560010162000662565b505050505050565b81516001600160401b038111156200069b576200069b62000506565b620006b381620006ac8454620005f1565b846200062d565b602080601f831160018114620006eb5760008415620006d25750858301515b600019600386901b1c1916600185901b17855562000677565b600085815260208120601f198616915b828110156200071c57888601518255948401946001909101908401620006fb565b50858210156200073b5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b612cf4806200075b6000396000f3fe608060405234801561001057600080fd5b506004361061018d5760003560e01c80638456cb59116100de578063d539139311610097578063e985e9c511610071578063e985e9c514610377578063f242432a146103b3578063f5298aca146103c6578063f62d1888146103d957600080fd5b8063d53913931461033a578063d547741f1461034f578063e63ab1e91461036257600080fd5b80638456cb59146102c65780639010d07c146102ce57806391d14854146102f9578063a217fddf1461030c578063a22cb46514610314578063ca15c8731461032757600080fd5b80632f2ff15d1161014b5780634e1273f4116101255780634e1273f4146102745780635c975abb146102945780636b20c454146102a0578063731133e9146102b357600080fd5b80632f2ff15d1461024657806336568abe146102595780633f4ba83a1461026c57600080fd5b8062fdd58e1461019257806301ffc9a7146101b85780630e89341c146101db5780631f7fdffa146101fb578063248a9ca3146102105780632eb2c2d614610233575b600080fd5b6101a56101a0366004611eec565b6103ec565b6040519081526020015b60405180910390f35b6101cb6101c6366004611f2c565b610487565b60405190151581526020016101af565b6101ee6101e9366004611f49565b610492565b6040516101af9190611fb2565b61020e610209366004612118565b610526565b005b6101a561021e366004611f49565b60009081526065602052604090206001015490565b61020e6102413660046121b0565b61056c565b61020e610254366004612259565b6105b8565b61020e610267366004612259565b6105e2565b61020e610660565b610287610282366004612285565b6106f4565b6040516101af919061238a565b61012d5460ff166101cb565b61020e6102ae36600461239d565b61081d565b61020e6102c1366004612410565b610860565b61020e6108a0565b6102e16102dc366004612464565b610932565b6040516001600160a01b0390911681526020016101af565b6101cb610307366004612259565b610951565b6101a5600081565b61020e610322366004612486565b61097c565b6101a5610335366004611f49565b610987565b6101a5600080516020612cc883398151915281565b61020e61035d366004612259565b61099e565b6101a5600080516020612ca883398151915281565b6101cb6103853660046124c2565b6001600160a01b03918216600090815260ca6020908152604080832093909416825291909152205460ff1690565b61020e6103c13660046124ec565b6109c3565b61020e6103d4366004612550565b610a08565b61020e6103e7366004612583565b610a4b565b60006001600160a01b03831661045c5760405162461bcd60e51b815260206004820152602a60248201527f455243313135353a2061646472657373207a65726f206973206e6f742061207660448201526930b634b21037bbb732b960b11b60648201526084015b60405180910390fd5b50600081815260c9602090815260408083206001600160a01b03861684529091529020545b92915050565b600061048182610c07565b606060cb80546104a1906125d3565b80601f01602080910402602001604051908101604052809291908181526020018280546104cd906125d3565b801561051a5780601f106104ef5761010080835404028352916020019161051a565b820191906000526020600020905b8154815290600101906020018083116104fd57829003601f168201915b50505050509050919050565b61053e600080516020612cc883398151915233610951565b61055a5760405162461bcd60e51b81526004016104539061260d565b61056684848484610c47565b50505050565b6001600160a01b03851633148061058857506105888533610385565b6105a45760405162461bcd60e51b81526004016104539061266a565b6105b18585858585610da2565b5050505050565b6000828152606560205260409020600101546105d381610f4f565b6105dd8383610f5c565b505050565b6001600160a01b03811633146106525760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610453565b61065c8282610f7e565b5050565b610678600080516020612ca883398151915233610951565b6106ea5760405162461bcd60e51b815260206004820152603b60248201527f455243313135355072657365744d696e7465725061757365723a206d7573742060448201527f686176652070617573657220726f6c6520746f20756e706175736500000000006064820152608401610453565b6106f2610fa0565b565b606081518351146107595760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b6064820152608401610453565b600083516001600160401b0381111561077457610774611fc5565b60405190808252806020026020018201604052801561079d578160200160208202803683370190505b50905060005b8451811015610815576107e88582815181106107c1576107c16126b9565b60200260200101518583815181106107db576107db6126b9565b60200260200101516103ec565b8282815181106107fa576107fa6126b9565b602090810291909101015261080e816126e5565b90506107a3565b509392505050565b6001600160a01b03831633148061083957506108398333610385565b6108555760405162461bcd60e51b81526004016104539061266a565b6105dd838383610ff3565b610878600080516020612cc883398151915233610951565b6108945760405162461bcd60e51b81526004016104539061260d565b61056684848484611192565b6108b8600080516020612ca883398151915233610951565b61092a5760405162461bcd60e51b815260206004820152603960248201527f455243313135355072657365744d696e7465725061757365723a206d7573742060448201527f686176652070617573657220726f6c6520746f207061757365000000000000006064820152608401610453565b6106f261127d565b600082815260976020526040812061094a90836112bb565b9392505050565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b61065c3383836112c7565b6000818152609760205260408120610481906113a7565b6000828152606560205260409020600101546109b981610f4f565b6105dd8383610f7e565b6001600160a01b0385163314806109df57506109df8533610385565b6109fb5760405162461bcd60e51b81526004016104539061266a565b6105b185858585856113b1565b6001600160a01b038316331480610a245750610a248333610385565b610a405760405162461bcd60e51b81526004016104539061266a565b6105dd8383836114ed565b600054610100900460ff1615808015610a6b5750600054600160ff909116105b80610a855750303b158015610a85575060005460ff166001145b610ae85760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610453565b6000805460ff191660011790558015610b0b576000805461ff0019166101001790555b610b1482611609565b801561065c576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b6001600160a01b03163b151590565b610b768282610951565b61065c5760008281526065602090815260408083206001600160a01b03851684529091529020805460ff19166001179055610bae3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b600061094a836001600160a01b03841661164a565b60006001600160e01b03198216636cdb3d1360e11b1480610c3857506001600160e01b031982166303a24d0760e21b145b80610481575061048182611699565b6001600160a01b038416610c6d5760405162461bcd60e51b8152600401610453906126fe565b8151835114610c8e5760405162461bcd60e51b81526004016104539061273f565b33610c9e816000878787876116be565b60005b8451811015610d3a57838181518110610cbc57610cbc6126b9565b602002602001015160c96000878481518110610cda57610cda6126b9565b602002602001015181526020019081526020016000206000886001600160a01b03166001600160a01b031681526020019081526020016000206000828254610d229190612787565b90915550819050610d32816126e5565b915050610ca1565b50846001600160a01b031660006001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051610d8b92919061279a565b60405180910390a46105b1816000878787876116cc565b8151835114610dc35760405162461bcd60e51b81526004016104539061273f565b6001600160a01b038416610de95760405162461bcd60e51b8152600401610453906127c8565b33610df88187878787876116be565b60005b8451811015610ee1576000858281518110610e1857610e186126b9565b602002602001015190506000858381518110610e3657610e366126b9565b602090810291909101810151600084815260c9835260408082206001600160a01b038e168352909352919091205490915081811015610e875760405162461bcd60e51b81526004016104539061280d565b600083815260c9602090815260408083206001600160a01b038e8116855292528083208585039055908b16825281208054849290610ec6908490612787565b9250508190555050505080610eda906126e5565b9050610dfb565b50846001600160a01b0316866001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051610f3192919061279a565b60405180910390a4610f478187878787876116cc565b505050505050565b610f598133611827565b50565b610f668282610b6c565b60008281526097602052604090206105dd9082610bf2565b610f88828261188b565b60008281526097602052604090206105dd90826118f2565b610fa8611907565b61012d805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516001600160a01b03909116815260200160405180910390a1565b6001600160a01b0383166110195760405162461bcd60e51b815260040161045390612857565b805182511461103a5760405162461bcd60e51b81526004016104539061273f565b600033905061105d818560008686604051806020016040528060008152506116be565b60005b835181101561112557600084828151811061107d5761107d6126b9565b60200260200101519050600084838151811061109b5761109b6126b9565b602090810291909101810151600084815260c9835260408082206001600160a01b038c1683529093529190912054909150818110156110ec5760405162461bcd60e51b81526004016104539061289a565b600092835260c9602090815260408085206001600160a01b038b168652909152909220910390558061111d816126e5565b915050611060565b5060006001600160a01b0316846001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb868660405161117692919061279a565b60405180910390a4604080516020810190915260009052610566565b6001600160a01b0384166111b85760405162461bcd60e51b8152600401610453906126fe565b3360006111c485611951565b905060006111d185611951565b90506111e2836000898585896116be565b600086815260c9602090815260408083206001600160a01b038b16845290915281208054879290611214908490612787565b909155505060408051878152602081018790526001600160a01b03808a1692600092918716917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46112748360008989898961199c565b50505050505050565b611285611a57565b61012d805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258610fd63390565b600061094a8383611a9e565b816001600160a01b0316836001600160a01b03160361133a5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b6064820152608401610453565b6001600160a01b03838116600081815260ca6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6000610481825490565b6001600160a01b0384166113d75760405162461bcd60e51b8152600401610453906127c8565b3360006113e385611951565b905060006113f085611951565b90506114008389898585896116be565b600086815260c9602090815260408083206001600160a01b038c168452909152902054858110156114435760405162461bcd60e51b81526004016104539061280d565b600087815260c9602090815260408083206001600160a01b038d8116855292528083208985039055908a16825281208054889290611482908490612787565b909155505060408051888152602081018890526001600160a01b03808b16928c821692918816917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46114e2848a8a8a8a8a61199c565b505050505050505050565b6001600160a01b0383166115135760405162461bcd60e51b815260040161045390612857565b33600061151f84611951565b9050600061152c84611951565b905061154c838760008585604051806020016040528060008152506116be565b600085815260c9602090815260408083206001600160a01b038a1684529091529020548481101561158f5760405162461bcd60e51b81526004016104539061289a565b600086815260c9602090815260408083206001600160a01b038b81168086529184528285208a8703905582518b81529384018a90529092908816917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4604080516020810190915260009052611274565b600054610100900460ff166116305760405162461bcd60e51b8152600401610453906128de565b61163981611ac8565b611641611af8565b610f5981611b2c565b600081815260018301602052604081205461169157508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610481565b506000610481565b60006001600160e01b03198216635a05180f60e01b1480610481575061048182611b8e565b610f47868686868686611bc3565b6001600160a01b0384163b15610f475760405163bc197c8160e01b81526001600160a01b0385169063bc197c81906117109089908990889088908890600401612929565b6020604051808303816000875af192505050801561174b575060408051601f3d908101601f1916820190925261174891810190612987565b60015b6117f7576117576129a4565b806308c379a003611790575061176b6129c0565b806117765750611792565b8060405162461bcd60e51b81526004016104539190611fb2565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e20455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b6064820152608401610453565b6001600160e01b0319811663bc197c8160e01b146112745760405162461bcd60e51b815260040161045390612a49565b6118318282610951565b61065c57611849816001600160a01b03166014611c2c565b611854836020611c2c565b604051602001611865929190612a91565b60408051601f198184030181529082905262461bcd60e51b825261045391600401611fb2565b6118958282610951565b1561065c5760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b600061094a836001600160a01b038416611dc7565b61012d5460ff166106f25760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b6044820152606401610453565b6040805160018082528183019092526060916000919060208083019080368337019050509050828160008151811061198b5761198b6126b9565b602090810291909101015292915050565b6001600160a01b0384163b15610f475760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e61906119e09089908990889088908890600401612b06565b6020604051808303816000875af1925050508015611a1b575060408051601f3d908101601f19168201909252611a1891810190612987565b60015b611a27576117576129a4565b6001600160e01b0319811663f23a6e6160e01b146112745760405162461bcd60e51b815260040161045390612a49565b61012d5460ff16156106f25760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b6044820152606401610453565b6000826000018281548110611ab557611ab56126b9565b9060005260206000200154905092915050565b600054610100900460ff16611aef5760405162461bcd60e51b8152600401610453906128de565b610f5981611eba565b600054610100900460ff16611b1f5760405162461bcd60e51b8152600401610453906128de565b61012d805460ff19169055565b600054610100900460ff16611b535760405162461bcd60e51b8152600401610453906128de565b611b5e600033611ec6565b611b76600080516020612cc883398151915233611ec6565b610f59600080516020612ca883398151915233611ec6565b60006001600160e01b03198216637965db0b60e01b148061048157506301ffc9a760e01b6001600160e01b0319831614610481565b61012d5460ff1615610f475760405162461bcd60e51b815260206004820152602c60248201527f455243313135355061757361626c653a20746f6b656e207472616e736665722060448201526b1dda1a5b19481c185d5cd95960a21b6064820152608401610453565b60606000611c3b836002612b4b565b611c46906002612787565b6001600160401b03811115611c5d57611c5d611fc5565b6040519080825280601f01601f191660200182016040528015611c87576020820181803683370190505b509050600360fc1b81600081518110611ca257611ca26126b9565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110611cd157611cd16126b9565b60200101906001600160f81b031916908160001a9053506000611cf5846002612b4b565b611d00906001612787565b90505b6001811115611d78576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611d3457611d346126b9565b1a60f81b828281518110611d4a57611d4a6126b9565b60200101906001600160f81b031916908160001a90535060049490941c93611d7181612b62565b9050611d03565b50831561094a5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610453565b60008181526001830160205260408120548015611eb0576000611deb600183612b79565b8554909150600090611dff90600190612b79565b9050818114611e64576000866000018281548110611e1f57611e1f6126b9565b9060005260206000200154905080876000018481548110611e4257611e426126b9565b6000918252602080832090910192909255918252600188019052604090208390555b8554869080611e7557611e75612b8c565b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050610481565b6000915050610481565b60cb61065c8282612be8565b61065c8282610f5c565b80356001600160a01b0381168114611ee757600080fd5b919050565b60008060408385031215611eff57600080fd5b611f0883611ed0565b946020939093013593505050565b6001600160e01b031981168114610f5957600080fd5b600060208284031215611f3e57600080fd5b813561094a81611f16565b600060208284031215611f5b57600080fd5b5035919050565b60005b83811015611f7d578181015183820152602001611f65565b50506000910152565b60008151808452611f9e816020860160208601611f62565b601f01601f19169290920160200192915050565b60208152600061094a6020830184611f86565b634e487b7160e01b600052604160045260246000fd5b601f8201601f191681016001600160401b038111828210171561200057612000611fc5565b6040525050565b60006001600160401b0382111561202057612020611fc5565b5060051b60200190565b600082601f83011261203b57600080fd5b8135602061204882612007565b6040516120558282611fdb565b83815260059390931b850182019282810191508684111561207557600080fd5b8286015b848110156120905780358352918301918301612079565b509695505050505050565b60006001600160401b038311156120b4576120b4611fc5565b6040516120cb601f8501601f191660200182611fdb565b8091508381528484840111156120e057600080fd5b83836020830137600060208583010152509392505050565b600082601f83011261210957600080fd5b61094a8383356020850161209b565b6000806000806080858703121561212e57600080fd5b61213785611ed0565b935060208501356001600160401b038082111561215357600080fd5b61215f8883890161202a565b9450604087013591508082111561217557600080fd5b6121818883890161202a565b9350606087013591508082111561219757600080fd5b506121a4878288016120f8565b91505092959194509250565b600080600080600060a086880312156121c857600080fd5b6121d186611ed0565b94506121df60208701611ed0565b935060408601356001600160401b03808211156121fb57600080fd5b61220789838a0161202a565b9450606088013591508082111561221d57600080fd5b61222989838a0161202a565b9350608088013591508082111561223f57600080fd5b5061224c888289016120f8565b9150509295509295909350565b6000806040838503121561226c57600080fd5b8235915061227c60208401611ed0565b90509250929050565b6000806040838503121561229857600080fd5b82356001600160401b03808211156122af57600080fd5b818501915085601f8301126122c357600080fd5b813560206122d082612007565b6040516122dd8282611fdb565b83815260059390931b85018201928281019150898411156122fd57600080fd5b948201945b838610156123225761231386611ed0565b82529482019490820190612302565b9650508601359250508082111561233857600080fd5b506123458582860161202a565b9150509250929050565b600081518084526020808501945080840160005b8381101561237f57815187529582019590820190600101612363565b509495945050505050565b60208152600061094a602083018461234f565b6000806000606084860312156123b257600080fd5b6123bb84611ed0565b925060208401356001600160401b03808211156123d757600080fd5b6123e38783880161202a565b935060408601359150808211156123f957600080fd5b506124068682870161202a565b9150509250925092565b6000806000806080858703121561242657600080fd5b61242f85611ed0565b9350602085013592506040850135915060608501356001600160401b0381111561245857600080fd5b6121a4878288016120f8565b6000806040838503121561247757600080fd5b50508035926020909101359150565b6000806040838503121561249957600080fd5b6124a283611ed0565b9150602083013580151581146124b757600080fd5b809150509250929050565b600080604083850312156124d557600080fd5b6124de83611ed0565b915061227c60208401611ed0565b600080600080600060a0868803121561250457600080fd5b61250d86611ed0565b945061251b60208701611ed0565b9350604086013592506060860135915060808601356001600160401b0381111561254457600080fd5b61224c888289016120f8565b60008060006060848603121561256557600080fd5b61256e84611ed0565b95602085013595506040909401359392505050565b60006020828403121561259557600080fd5b81356001600160401b038111156125ab57600080fd5b8201601f810184136125bc57600080fd5b6125cb8482356020840161209b565b949350505050565b600181811c908216806125e757607f821691505b60208210810361260757634e487b7160e01b600052602260045260246000fd5b50919050565b60208082526038908201527f455243313135355072657365744d696e7465725061757365723a206d7573742060408201527f68617665206d696e74657220726f6c6520746f206d696e740000000000000000606082015260800190565b6020808252602f908201527f455243313135353a2063616c6c6572206973206e6f7420746f6b656e206f776e60408201526e195c881b9bdc88185c1c1c9bdd9959608a1b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000600182016126f7576126f76126cf565b5060010190565b60208082526021908201527f455243313135353a206d696e7420746f20746865207a65726f206164647265736040820152607360f81b606082015260800190565b60208082526028908201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206040820152670dad2e6dac2e8c6d60c31b606082015260800190565b80820180821115610481576104816126cf565b6040815260006127ad604083018561234f565b82810360208401526127bf818561234f565b95945050505050565b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b60208082526023908201527f455243313135353a206275726e2066726f6d20746865207a65726f206164647260408201526265737360e81b606082015260800190565b60208082526024908201527f455243313135353a206275726e20616d6f756e7420657863656564732062616c604082015263616e636560e01b606082015260800190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6001600160a01b0386811682528516602082015260a0604082018190526000906129559083018661234f565b8281036060840152612967818661234f565b9050828103608084015261297b8185611f86565b98975050505050505050565b60006020828403121561299957600080fd5b815161094a81611f16565b600060033d11156129bd5760046000803e5060005160e01c5b90565b600060443d10156129ce5790565b6040516003193d81016004833e81513d6001600160401b0381602484011181841117156129fd57505050505090565b8285019150815181811115612a155750505050505090565b843d8701016020828501011115612a2f5750505050505090565b612a3e60208286010187611fdb565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351612ac9816017850160208801611f62565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351612afa816028840160208801611f62565b01602801949350505050565b6001600160a01b03868116825285166020820152604081018490526060810183905260a060808201819052600090612b4090830184611f86565b979650505050505050565b8082028115828204841417610481576104816126cf565b600081612b7157612b716126cf565b506000190190565b81810381811115610481576104816126cf565b634e487b7160e01b600052603160045260246000fd5b601f8211156105dd57600081815260208120601f850160051c81016020861015612bc95750805b601f850160051c820191505b81811015610f4757828155600101612bd5565b81516001600160401b03811115612c0157612c01611fc5565b612c1581612c0f84546125d3565b84612ba2565b602080601f831160018114612c4a5760008415612c325750858301515b600019600386901b1c1916600185901b178555610f47565b600085815260208120601f198616915b82811015612c7957888601518255948401946001909101908401612c5a565b5085821015612c975787850151600019600388901b60f8161c191681555b5050505050600190811b0190555056fe65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000811000a496e697469616c697a61626c653a20636f6e7472616374206973206e6f742069"; +const isSuperArgs = (xs) => xs.length > 1; +class ERC1155Mock__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(uri, overrides) { + return super.getDeployTransaction(uri, overrides || {}); + } + deploy(uri, overrides) { + return super.deploy(uri, overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.ERC1155Mock__factory = ERC1155Mock__factory; +ERC1155Mock__factory.bytecode = _bytecode; +ERC1155Mock__factory.abi = _abi; diff --git a/dist/types/factories/contracts/mocks/ERC20Mock__factory.d.ts b/dist/types/factories/contracts/mocks/ERC20Mock__factory.d.ts new file mode 100644 index 00000000..8aeafe34 --- /dev/null +++ b/dist/types/factories/contracts/mocks/ERC20Mock__factory.d.ts @@ -0,0 +1,243 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../common"; +import type { ERC20Mock, ERC20MockInterface } from "../../../contracts/mocks/ERC20Mock"; +declare type ERC20MockConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class ERC20Mock__factory extends ContractFactory { + constructor(...args: ERC20MockConstructorParams); + getDeployTransaction(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): ERC20Mock__factory; + static readonly bytecode = "0x608060405234801561001057600080fd5b5060408051602080820183526000808352835191820190935291825290600361003983826100ed565b50600461004682826100ed565b5050506101ac565b634e487b7160e01b600052604160045260246000fd5b600181811c9082168061007857607f821691505b60208210810361009857634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156100e857600081815260208120601f850160051c810160208610156100c55750805b601f850160051c820191505b818110156100e4578281556001016100d1565b5050505b505050565b81516001600160401b038111156101065761010661004e565b61011a816101148454610064565b8461009e565b602080601f83116001811461014f57600084156101375750858301515b600019600386901b1c1916600185901b1785556100e4565b600085815260208120601f198616915b8281101561017e5788860151825594840194600190910190840161015f565b508582101561019c5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b610916806101bb6000396000f3fe608060405234801561001057600080fd5b50600436106100b45760003560e01c806340c10f191161007157806340c10f191461014157806370a082311461015657806395d89b411461017f578063a457c2d714610187578063a9059cbb1461019a578063dd62ed3e146101ad57600080fd5b806306fdde03146100b9578063095ea7b3146100d757806318160ddd146100fa57806323b872dd1461010c578063313ce5671461011f578063395093511461012e575b600080fd5b6100c16101c0565b6040516100ce9190610789565b60405180910390f35b6100ea6100e53660046107f3565b610252565b60405190151581526020016100ce565b6002545b6040519081526020016100ce565b6100ea61011a36600461081d565b61026c565b604051601281526020016100ce565b6100ea61013c3660046107f3565b610290565b61015461014f3660046107f3565b6102b2565b005b6100fe610164366004610859565b6001600160a01b031660009081526020819052604090205490565b6100c16102c0565b6100ea6101953660046107f3565b6102cf565b6100ea6101a83660046107f3565b61034f565b6100fe6101bb36600461087b565b61035d565b6060600380546101cf906108ae565b80601f01602080910402602001604051908101604052809291908181526020018280546101fb906108ae565b80156102485780601f1061021d57610100808354040283529160200191610248565b820191906000526020600020905b81548152906001019060200180831161022b57829003601f168201915b5050505050905090565b600033610260818585610388565b60019150505b92915050565b60003361027a8582856104ac565b610285858585610526565b506001949350505050565b6000336102608185856102a3838361035d565b6102ad91906108e8565b610388565b6102bc82826106ca565b5050565b6060600480546101cf906108ae565b600033816102dd828661035d565b9050838110156103425760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b6102858286868403610388565b600033610260818585610526565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6001600160a01b0383166103ea5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610339565b6001600160a01b03821661044b5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610339565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b60006104b8848461035d565b9050600019811461052057818110156105135760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610339565b6105208484848403610388565b50505050565b6001600160a01b03831661058a5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610339565b6001600160a01b0382166105ec5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610339565b6001600160a01b038316600090815260208190526040902054818110156106645760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610339565b6001600160a01b03848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3610520565b6001600160a01b0382166107205760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606401610339565b806002600082825461073291906108e8565b90915550506001600160a01b038216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b600060208083528351808285015260005b818110156107b65785810183015185820160400152820161079a565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146107ee57600080fd5b919050565b6000806040838503121561080657600080fd5b61080f836107d7565b946020939093013593505050565b60008060006060848603121561083257600080fd5b61083b846107d7565b9250610849602085016107d7565b9150604084013590509250925092565b60006020828403121561086b57600080fd5b610874826107d7565b9392505050565b6000806040838503121561088e57600080fd5b610897836107d7565b91506108a5602084016107d7565b90509250929050565b600181811c908216806108c257607f821691505b6020821081036108e257634e487b7160e01b600052602260045260246000fd5b50919050565b8082018082111561026657634e487b7160e01b600052601160045260246000fdfea164736f6c6343000811000a"; + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "spender"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "value"; + readonly type: "uint256"; + }]; + readonly name: "Approval"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "value"; + readonly type: "uint256"; + }]; + readonly name: "Transfer"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "spender"; + readonly type: "address"; + }]; + readonly name: "allowance"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "spender"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "amount"; + readonly type: "uint256"; + }]; + readonly name: "approve"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "balanceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "decimals"; + readonly outputs: readonly [{ + readonly internalType: "uint8"; + readonly name: ""; + readonly type: "uint8"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "spender"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "subtractedValue"; + readonly type: "uint256"; + }]; + readonly name: "decreaseAllowance"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "spender"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "addedValue"; + readonly type: "uint256"; + }]; + readonly name: "increaseAllowance"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "amount"; + readonly type: "uint256"; + }]; + readonly name: "mint"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "name"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "symbol"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "totalSupply"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "amount"; + readonly type: "uint256"; + }]; + readonly name: "transfer"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "amount"; + readonly type: "uint256"; + }]; + readonly name: "transferFrom"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): ERC20MockInterface; + static connect(address: string, runner?: ContractRunner | null): ERC20Mock; +} +export {}; +//# sourceMappingURL=ERC20Mock__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/ERC20Mock__factory.d.ts.map b/dist/types/factories/contracts/mocks/ERC20Mock__factory.d.ts.map new file mode 100644 index 00000000..9d83778e --- /dev/null +++ b/dist/types/factories/contracts/mocks/ERC20Mock__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ERC20Mock__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/mocks/ERC20Mock__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,KAAK,EACV,SAAS,EACT,kBAAkB,EACnB,MAAM,oCAAoC,CAAC;AAwS5C,aAAK,0BAA0B,GAC3B,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,kBAAmB,SAAQ,eAAe;gBACzC,GAAG,IAAI,EAAE,0BAA0B;IAQtC,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,kBAAkB;IAInE,MAAM,CAAC,QAAQ,CAAC,QAAQ,06KAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,kBAAkB;IAG5C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,SAAS;CAG3E"} \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/ERC20Mock__factory.js b/dist/types/factories/contracts/mocks/ERC20Mock__factory.js new file mode 100644 index 00000000..cecd6cae --- /dev/null +++ b/dist/types/factories/contracts/mocks/ERC20Mock__factory.js @@ -0,0 +1,324 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ERC20Mock__factory = void 0; +const ethers_1 = require("ethers"); +const _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: [ + { + 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: [ + { + 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: "account", + type: "address", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "mint", + outputs: [], + stateMutability: "nonpayable", + 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", + }, +]; +const _bytecode = "0x608060405234801561001057600080fd5b5060408051602080820183526000808352835191820190935291825290600361003983826100ed565b50600461004682826100ed565b5050506101ac565b634e487b7160e01b600052604160045260246000fd5b600181811c9082168061007857607f821691505b60208210810361009857634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156100e857600081815260208120601f850160051c810160208610156100c55750805b601f850160051c820191505b818110156100e4578281556001016100d1565b5050505b505050565b81516001600160401b038111156101065761010661004e565b61011a816101148454610064565b8461009e565b602080601f83116001811461014f57600084156101375750858301515b600019600386901b1c1916600185901b1785556100e4565b600085815260208120601f198616915b8281101561017e5788860151825594840194600190910190840161015f565b508582101561019c5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b610916806101bb6000396000f3fe608060405234801561001057600080fd5b50600436106100b45760003560e01c806340c10f191161007157806340c10f191461014157806370a082311461015657806395d89b411461017f578063a457c2d714610187578063a9059cbb1461019a578063dd62ed3e146101ad57600080fd5b806306fdde03146100b9578063095ea7b3146100d757806318160ddd146100fa57806323b872dd1461010c578063313ce5671461011f578063395093511461012e575b600080fd5b6100c16101c0565b6040516100ce9190610789565b60405180910390f35b6100ea6100e53660046107f3565b610252565b60405190151581526020016100ce565b6002545b6040519081526020016100ce565b6100ea61011a36600461081d565b61026c565b604051601281526020016100ce565b6100ea61013c3660046107f3565b610290565b61015461014f3660046107f3565b6102b2565b005b6100fe610164366004610859565b6001600160a01b031660009081526020819052604090205490565b6100c16102c0565b6100ea6101953660046107f3565b6102cf565b6100ea6101a83660046107f3565b61034f565b6100fe6101bb36600461087b565b61035d565b6060600380546101cf906108ae565b80601f01602080910402602001604051908101604052809291908181526020018280546101fb906108ae565b80156102485780601f1061021d57610100808354040283529160200191610248565b820191906000526020600020905b81548152906001019060200180831161022b57829003601f168201915b5050505050905090565b600033610260818585610388565b60019150505b92915050565b60003361027a8582856104ac565b610285858585610526565b506001949350505050565b6000336102608185856102a3838361035d565b6102ad91906108e8565b610388565b6102bc82826106ca565b5050565b6060600480546101cf906108ae565b600033816102dd828661035d565b9050838110156103425760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b6102858286868403610388565b600033610260818585610526565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6001600160a01b0383166103ea5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610339565b6001600160a01b03821661044b5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610339565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b60006104b8848461035d565b9050600019811461052057818110156105135760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610339565b6105208484848403610388565b50505050565b6001600160a01b03831661058a5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610339565b6001600160a01b0382166105ec5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610339565b6001600160a01b038316600090815260208190526040902054818110156106645760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610339565b6001600160a01b03848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3610520565b6001600160a01b0382166107205760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606401610339565b806002600082825461073291906108e8565b90915550506001600160a01b038216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b600060208083528351808285015260005b818110156107b65785810183015185820160400152820161079a565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146107ee57600080fd5b919050565b6000806040838503121561080657600080fd5b61080f836107d7565b946020939093013593505050565b60008060006060848603121561083257600080fd5b61083b846107d7565b9250610849602085016107d7565b9150604084013590509250925092565b60006020828403121561086b57600080fd5b610874826107d7565b9392505050565b6000806040838503121561088e57600080fd5b610897836107d7565b91506108a5602084016107d7565b90509250929050565b600181811c908216806108c257607f821691505b6020821081036108e257634e487b7160e01b600052602260045260246000fd5b50919050565b8082018082111561026657634e487b7160e01b600052601160045260246000fdfea164736f6c6343000811000a"; +const isSuperArgs = (xs) => xs.length > 1; +class ERC20Mock__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(overrides) { + return super.getDeployTransaction(overrides || {}); + } + deploy(overrides) { + return super.deploy(overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.ERC20Mock__factory = ERC20Mock__factory; +ERC20Mock__factory.bytecode = _bytecode; +ERC20Mock__factory.abi = _abi; diff --git a/dist/types/factories/contracts/mocks/ERC20UnsafeMock__factory.d.ts b/dist/types/factories/contracts/mocks/ERC20UnsafeMock__factory.d.ts new file mode 100644 index 00000000..2a7b58ff --- /dev/null +++ b/dist/types/factories/contracts/mocks/ERC20UnsafeMock__factory.d.ts @@ -0,0 +1,243 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../common"; +import type { ERC20UnsafeMock, ERC20UnsafeMockInterface } from "../../../contracts/mocks/ERC20UnsafeMock"; +declare type ERC20UnsafeMockConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class ERC20UnsafeMock__factory extends ContractFactory { + constructor(...args: ERC20UnsafeMockConstructorParams); + getDeployTransaction(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): ERC20UnsafeMock__factory; + static readonly bytecode = "0x608060405234801561001057600080fd5b5060408051602080820183526000808352835191820190935291825290600361003983826100ed565b50600461004682826100ed565b5050506101ac565b634e487b7160e01b600052604160045260246000fd5b600181811c9082168061007857607f821691505b60208210810361009857634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156100e857600081815260208120601f850160051c810160208610156100c55750805b601f850160051c820191505b818110156100e4578281556001016100d1565b5050505b505050565b81516001600160401b038111156101065761010661004e565b61011a816101148454610064565b8461009e565b602080601f83116001811461014f57600084156101375750858301515b600019600386901b1c1916600185901b1785556100e4565b600085815260208120601f198616915b8281101561017e5788860151825594840194600190910190840161015f565b508582101561019c5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b610944806101bb6000396000f3fe608060405234801561001057600080fd5b50600436106100b45760003560e01c806340c10f191161007157806340c10f191461014157806370a082311461015657806395d89b411461017f578063a457c2d714610187578063a9059cbb1461019a578063dd62ed3e146101ad57600080fd5b806306fdde03146100b9578063095ea7b3146100d757806318160ddd146100fa57806323b872dd1461010c578063313ce5671461011f578063395093511461012e575b600080fd5b6100c16101c0565b6040516100ce91906107b7565b60405180910390f35b6100ea6100e5366004610821565b610252565b60405190151581526020016100ce565b6002545b6040519081526020016100ce565b6100ea61011a36600461084b565b61026c565b604051601281526020016100ce565b6100ea61013c366004610821565b610284565b61015461014f366004610821565b6102a6565b005b6100fe610164366004610887565b6001600160a01b031660009081526020819052604090205490565b6100c16102b4565b6100ea610195366004610821565b6102c3565b6100ea6101a8366004610821565b61034e565b6100fe6101bb3660046108a9565b610364565b6060600380546101cf906108dc565b80601f01602080910402602001604051908101604052809291908181526020018280546101fb906108dc565b80156102485780601f1061021d57610100808354040283529160200191610248565b820191906000526020600020905b81548152906001019060200180831161022b57829003601f168201915b5050505050905090565b60003361026081858561038f565b60019150505b92915050565b60006102798484846104b3565b506000949350505050565b6000336102608185856102978383610364565b6102a19190610916565b61038f565b6102b082826104cc565b5050565b6060600480546101cf906108dc565b600033816102d18286610364565b9050838110156103365760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b610343828686840361038f565b506001949350505050565b600061035a838361058b565b5060009392505050565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6001600160a01b0383166103f15760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161032d565b6001600160a01b0382166104525760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161032d565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6000336104c1858285610599565b610343858585610613565b6001600160a01b0382166105225760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640161032d565b80600260008282546105349190610916565b90915550506001600160a01b038216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b600033610260818585610613565b60006105a58484610364565b9050600019811461060d57818110156106005760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161032d565b61060d848484840361038f565b50505050565b6001600160a01b0383166106775760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161032d565b6001600160a01b0382166106d95760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161032d565b6001600160a01b038316600090815260208190526040902054818110156107515760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161032d565b6001600160a01b03848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a361060d565b600060208083528351808285015260005b818110156107e4578581018301518582016040015282016107c8565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b038116811461081c57600080fd5b919050565b6000806040838503121561083457600080fd5b61083d83610805565b946020939093013593505050565b60008060006060848603121561086057600080fd5b61086984610805565b925061087760208501610805565b9150604084013590509250925092565b60006020828403121561089957600080fd5b6108a282610805565b9392505050565b600080604083850312156108bc57600080fd5b6108c583610805565b91506108d360208401610805565b90509250929050565b600181811c908216806108f057607f821691505b60208210810361091057634e487b7160e01b600052602260045260246000fd5b50919050565b8082018082111561026657634e487b7160e01b600052601160045260246000fdfea164736f6c6343000811000a"; + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "spender"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "value"; + readonly type: "uint256"; + }]; + readonly name: "Approval"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "value"; + readonly type: "uint256"; + }]; + readonly name: "Transfer"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "spender"; + readonly type: "address"; + }]; + readonly name: "allowance"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "spender"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "amount"; + readonly type: "uint256"; + }]; + readonly name: "approve"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "balanceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "decimals"; + readonly outputs: readonly [{ + readonly internalType: "uint8"; + readonly name: ""; + readonly type: "uint8"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "spender"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "subtractedValue"; + readonly type: "uint256"; + }]; + readonly name: "decreaseAllowance"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "spender"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "addedValue"; + readonly type: "uint256"; + }]; + readonly name: "increaseAllowance"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "amount"; + readonly type: "uint256"; + }]; + readonly name: "mint"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "name"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "symbol"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "totalSupply"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "value"; + readonly type: "uint256"; + }]; + readonly name: "transfer"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "value"; + readonly type: "uint256"; + }]; + readonly name: "transferFrom"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): ERC20UnsafeMockInterface; + static connect(address: string, runner?: ContractRunner | null): ERC20UnsafeMock; +} +export {}; +//# sourceMappingURL=ERC20UnsafeMock__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/ERC20UnsafeMock__factory.d.ts.map b/dist/types/factories/contracts/mocks/ERC20UnsafeMock__factory.d.ts.map new file mode 100644 index 00000000..c2ff96ed --- /dev/null +++ b/dist/types/factories/contracts/mocks/ERC20UnsafeMock__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ERC20UnsafeMock__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/mocks/ERC20UnsafeMock__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,KAAK,EACV,eAAe,EACf,wBAAwB,EACzB,MAAM,0CAA0C,CAAC;AAwSlD,aAAK,gCAAgC,GACjC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,wBAAyB,SAAQ,eAAe;gBAC/C,GAAG,IAAI,EAAE,gCAAgC;IAQ5C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,wBAAwB;IAIzE,MAAM,CAAC,QAAQ,CAAC,QAAQ,sgLAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,wBAAwB;IAGlD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,eAAe;CAGnB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/ERC20UnsafeMock__factory.js b/dist/types/factories/contracts/mocks/ERC20UnsafeMock__factory.js new file mode 100644 index 00000000..8ae9ffeb --- /dev/null +++ b/dist/types/factories/contracts/mocks/ERC20UnsafeMock__factory.js @@ -0,0 +1,324 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ERC20UnsafeMock__factory = void 0; +const ethers_1 = require("ethers"); +const _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: [ + { + 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: [ + { + 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: "account", + type: "address", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "mint", + outputs: [], + stateMutability: "nonpayable", + 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: "value", + 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: "value", + type: "uint256", + }, + ], + name: "transferFrom", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, +]; +const _bytecode = "0x608060405234801561001057600080fd5b5060408051602080820183526000808352835191820190935291825290600361003983826100ed565b50600461004682826100ed565b5050506101ac565b634e487b7160e01b600052604160045260246000fd5b600181811c9082168061007857607f821691505b60208210810361009857634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156100e857600081815260208120601f850160051c810160208610156100c55750805b601f850160051c820191505b818110156100e4578281556001016100d1565b5050505b505050565b81516001600160401b038111156101065761010661004e565b61011a816101148454610064565b8461009e565b602080601f83116001811461014f57600084156101375750858301515b600019600386901b1c1916600185901b1785556100e4565b600085815260208120601f198616915b8281101561017e5788860151825594840194600190910190840161015f565b508582101561019c5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b610944806101bb6000396000f3fe608060405234801561001057600080fd5b50600436106100b45760003560e01c806340c10f191161007157806340c10f191461014157806370a082311461015657806395d89b411461017f578063a457c2d714610187578063a9059cbb1461019a578063dd62ed3e146101ad57600080fd5b806306fdde03146100b9578063095ea7b3146100d757806318160ddd146100fa57806323b872dd1461010c578063313ce5671461011f578063395093511461012e575b600080fd5b6100c16101c0565b6040516100ce91906107b7565b60405180910390f35b6100ea6100e5366004610821565b610252565b60405190151581526020016100ce565b6002545b6040519081526020016100ce565b6100ea61011a36600461084b565b61026c565b604051601281526020016100ce565b6100ea61013c366004610821565b610284565b61015461014f366004610821565b6102a6565b005b6100fe610164366004610887565b6001600160a01b031660009081526020819052604090205490565b6100c16102b4565b6100ea610195366004610821565b6102c3565b6100ea6101a8366004610821565b61034e565b6100fe6101bb3660046108a9565b610364565b6060600380546101cf906108dc565b80601f01602080910402602001604051908101604052809291908181526020018280546101fb906108dc565b80156102485780601f1061021d57610100808354040283529160200191610248565b820191906000526020600020905b81548152906001019060200180831161022b57829003601f168201915b5050505050905090565b60003361026081858561038f565b60019150505b92915050565b60006102798484846104b3565b506000949350505050565b6000336102608185856102978383610364565b6102a19190610916565b61038f565b6102b082826104cc565b5050565b6060600480546101cf906108dc565b600033816102d18286610364565b9050838110156103365760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b610343828686840361038f565b506001949350505050565b600061035a838361058b565b5060009392505050565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6001600160a01b0383166103f15760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161032d565b6001600160a01b0382166104525760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161032d565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6000336104c1858285610599565b610343858585610613565b6001600160a01b0382166105225760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640161032d565b80600260008282546105349190610916565b90915550506001600160a01b038216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b600033610260818585610613565b60006105a58484610364565b9050600019811461060d57818110156106005760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161032d565b61060d848484840361038f565b50505050565b6001600160a01b0383166106775760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161032d565b6001600160a01b0382166106d95760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161032d565b6001600160a01b038316600090815260208190526040902054818110156107515760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161032d565b6001600160a01b03848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a361060d565b600060208083528351808285015260005b818110156107e4578581018301518582016040015282016107c8565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b038116811461081c57600080fd5b919050565b6000806040838503121561083457600080fd5b61083d83610805565b946020939093013593505050565b60008060006060848603121561086057600080fd5b61086984610805565b925061087760208501610805565b9150604084013590509250925092565b60006020828403121561089957600080fd5b6108a282610805565b9392505050565b600080604083850312156108bc57600080fd5b6108c583610805565b91506108d360208401610805565b90509250929050565b600181811c908216806108f057607f821691505b60208210810361091057634e487b7160e01b600052602260045260246000fd5b50919050565b8082018082111561026657634e487b7160e01b600052601160045260246000fdfea164736f6c6343000811000a"; +const isSuperArgs = (xs) => xs.length > 1; +class ERC20UnsafeMock__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(overrides) { + return super.getDeployTransaction(overrides || {}); + } + deploy(overrides) { + return super.deploy(overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.ERC20UnsafeMock__factory = ERC20UnsafeMock__factory; +ERC20UnsafeMock__factory.bytecode = _bytecode; +ERC20UnsafeMock__factory.abi = _abi; diff --git a/dist/types/factories/contracts/mocks/ERC2771ContextMock__factory.d.ts b/dist/types/factories/contracts/mocks/ERC2771ContextMock__factory.d.ts new file mode 100644 index 00000000..cb032491 --- /dev/null +++ b/dist/types/factories/contracts/mocks/ERC2771ContextMock__factory.d.ts @@ -0,0 +1,97 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../common"; +import type { ERC2771ContextMock, ERC2771ContextMockInterface } from "../../../contracts/mocks/ERC2771ContextMock"; +declare type ERC2771ContextMockConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class ERC2771ContextMock__factory extends ContractFactory { + constructor(...args: ERC2771ContextMockConstructorParams); + getDeployTransaction(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): ERC2771ContextMock__factory; + static readonly bytecode = "0x608060405234801561001057600080fd5b5061053a806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c8063572b6c0514610067578063c04062261461008f578063c4c2bfdc146100ce578063c4d66de8146100e4578063d737d0c7146100f9578063f4b06cd814610119575b600080fd5b61007a6100753660046103e4565b61012f565b60405190151581526020015b60405180910390f35b604080518082018252601781527f45524332373731436f6e746578744d6f636b3a2072756e000000000000000000602082015290516100869190610414565b6100d6610162565b604051610086929190610462565b6100f76100f23660046103e4565b610175565b005b61010161028d565b6040516001600160a01b039091168152602001610086565b61012161029c565b604051908152602001610086565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546001600160a01b0390811691161490565b36600061016d6102a6565b915091509091565b600054610100900460ff16158080156101955750600054600160ff909116105b806101af5750303b1580156101af575060005460ff166001145b6102175760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff19166001179055801561023a576000805461ff0019166101001790555b610243826102db565b8015610289576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050565b6000610297610316565b905090565b600061029761033b565b3660006102b23361012f565b156102d357600080366102c6603482610491565b9261016d939291906104b8565b60003661016d565b600054610100900460ff166103025760405162461bcd60e51b815260040161020e906104e2565b61030a610355565b6103138161037e565b50565b60006103213361012f565b15610333575060331936013560601c90565b503390565b90565b60006103463361012f565b156103385750601f1936013590565b600054610100900460ff1661037c5760405162461bcd60e51b815260040161020e906104e2565b565b600054610100900460ff166103a55760405162461bcd60e51b815260040161020e906104e2565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e80546001600160a01b0319166001600160a01b038316179055610313565b6000602082840312156103f657600080fd5b81356001600160a01b038116811461040d57600080fd5b9392505050565b600060208083528351808285015260005b8181101561044157858101830151858201604001528201610425565b506000604082860101526040601f19601f8301168501019250505092915050565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b818103818111156104b257634e487b7160e01b600052601160045260246000fd5b92915050565b600080858511156104c857600080fd5b838611156104d557600080fd5b5050820193919092039150565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b60608201526080019056fea164736f6c6343000811000a"; + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "uint8"; + readonly name: "version"; + readonly type: "uint8"; + }]; + readonly name: "Initialized"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "forwarder"; + readonly type: "address"; + }]; + readonly name: "initialize"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "forwarder"; + readonly type: "address"; + }]; + readonly name: "isTrustedForwarder"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "msgData"; + readonly outputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "msgSender"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "msgToken"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "run"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "pure"; + readonly type: "function"; + }]; + static createInterface(): ERC2771ContextMockInterface; + static connect(address: string, runner?: ContractRunner | null): ERC2771ContextMock; +} +export {}; +//# sourceMappingURL=ERC2771ContextMock__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/ERC2771ContextMock__factory.d.ts.map b/dist/types/factories/contracts/mocks/ERC2771ContextMock__factory.d.ts.map new file mode 100644 index 00000000..83e3095f --- /dev/null +++ b/dist/types/factories/contracts/mocks/ERC2771ContextMock__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ERC2771ContextMock__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/mocks/ERC2771ContextMock__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,KAAK,EACV,kBAAkB,EAClB,2BAA2B,EAC5B,MAAM,6CAA6C,CAAC;AAyGrD,aAAK,mCAAmC,GACpC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,2BAA4B,SAAQ,eAAe;gBAClD,GAAG,IAAI,EAAE,mCAAmC;IAQ/C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,2BAA2B;IAI5E,MAAM,CAAC,QAAQ,CAAC,QAAQ,4rFAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,2BAA2B;IAGrD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,kBAAkB;CAGtB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/ERC2771ContextMock__factory.js b/dist/types/factories/contracts/mocks/ERC2771ContextMock__factory.js new file mode 100644 index 00000000..8a7493ae --- /dev/null +++ b/dist/types/factories/contracts/mocks/ERC2771ContextMock__factory.js @@ -0,0 +1,133 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ERC2771ContextMock__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint8", + name: "version", + type: "uint8", + }, + ], + name: "Initialized", + type: "event", + }, + { + inputs: [ + { + internalType: "address", + name: "forwarder", + type: "address", + }, + ], + name: "initialize", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "forwarder", + type: "address", + }, + ], + name: "isTrustedForwarder", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "msgData", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "msgSender", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "msgToken", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "run", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "pure", + type: "function", + }, +]; +const _bytecode = "0x608060405234801561001057600080fd5b5061053a806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c8063572b6c0514610067578063c04062261461008f578063c4c2bfdc146100ce578063c4d66de8146100e4578063d737d0c7146100f9578063f4b06cd814610119575b600080fd5b61007a6100753660046103e4565b61012f565b60405190151581526020015b60405180910390f35b604080518082018252601781527f45524332373731436f6e746578744d6f636b3a2072756e000000000000000000602082015290516100869190610414565b6100d6610162565b604051610086929190610462565b6100f76100f23660046103e4565b610175565b005b61010161028d565b6040516001600160a01b039091168152602001610086565b61012161029c565b604051908152602001610086565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546001600160a01b0390811691161490565b36600061016d6102a6565b915091509091565b600054610100900460ff16158080156101955750600054600160ff909116105b806101af5750303b1580156101af575060005460ff166001145b6102175760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff19166001179055801561023a576000805461ff0019166101001790555b610243826102db565b8015610289576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050565b6000610297610316565b905090565b600061029761033b565b3660006102b23361012f565b156102d357600080366102c6603482610491565b9261016d939291906104b8565b60003661016d565b600054610100900460ff166103025760405162461bcd60e51b815260040161020e906104e2565b61030a610355565b6103138161037e565b50565b60006103213361012f565b15610333575060331936013560601c90565b503390565b90565b60006103463361012f565b156103385750601f1936013590565b600054610100900460ff1661037c5760405162461bcd60e51b815260040161020e906104e2565b565b600054610100900460ff166103a55760405162461bcd60e51b815260040161020e906104e2565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e80546001600160a01b0319166001600160a01b038316179055610313565b6000602082840312156103f657600080fd5b81356001600160a01b038116811461040d57600080fd5b9392505050565b600060208083528351808285015260005b8181101561044157858101830151858201604001528201610425565b506000604082860101526040601f19601f8301168501019250505092915050565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b818103818111156104b257634e487b7160e01b600052601160045260246000fd5b92915050565b600080858511156104c857600080fd5b838611156104d557600080fd5b5050820193919092039150565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b60608201526080019056fea164736f6c6343000811000a"; +const isSuperArgs = (xs) => xs.length > 1; +class ERC2771ContextMock__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(overrides) { + return super.getDeployTransaction(overrides || {}); + } + deploy(overrides) { + return super.deploy(overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.ERC2771ContextMock__factory = ERC2771ContextMock__factory; +ERC2771ContextMock__factory.bytecode = _bytecode; +ERC2771ContextMock__factory.abi = _abi; diff --git a/dist/types/factories/contracts/mocks/ERC2771RegistryContextMock__factory.d.ts b/dist/types/factories/contracts/mocks/ERC2771RegistryContextMock__factory.d.ts new file mode 100644 index 00000000..a8119dca --- /dev/null +++ b/dist/types/factories/contracts/mocks/ERC2771RegistryContextMock__factory.d.ts @@ -0,0 +1,101 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../common"; +import type { ERC2771RegistryContextMock, ERC2771RegistryContextMockInterface } from "../../../contracts/mocks/ERC2771RegistryContextMock"; +declare type ERC2771RegistryContextMockConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class ERC2771RegistryContextMock__factory extends ContractFactory { + constructor(...args: ERC2771RegistryContextMockConstructorParams); + getDeployTransaction(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): ERC2771RegistryContextMock__factory; + static readonly bytecode = "0x608060405234801561001057600080fd5b50610562806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c806309c5eabe14610067578063572b6c05146100915780638129fc1c146100bd578063c4c2bfdc146100c7578063d737d0c7146100dd578063f4b06cd8146100fd575b600080fd5b61007a610075366004610380565b610113565b6040516100889291906103f2565b60405180910390f35b6100ad61009f36600461044a565b6001600160a01b0316301490565b6040519015158152602001610088565b6100c561017f565b005b6100cf610295565b60405161008892919061047a565b6100e56102a8565b6040516001600160a01b039091168152602001610088565b6101056102b7565b604051908152602001610088565b60006060306001600160a01b031684846040516101319291906104a9565b6000604051808303816000865af19150503d806000811461016e576040519150601f19603f3d011682016040523d82523d6000602084013e610173565b606091505b50915091509250929050565b600054610100900460ff161580801561019f5750600054600160ff909116105b806101b95750303b1580156101b9575060005460ff166001145b6102215760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff191660011790558015610244576000805461ff0019166101001790555b61024c6102c1565b8015610292576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50565b3660006102a06102fa565b915091509091565b60006102b2610328565b905090565b60006102b2610346565b600054610100900460ff166102e85760405162461bcd60e51b8152600401610218906104b9565b6102f0610359565b6102f8610359565b565b3660003033036103205760008036610313603482610504565b926102a09392919061052b565b6000366102a0565b600030330361033e575060331936013560601c90565b503390565b90565b60003033036103435750601f1936013590565b600054610100900460ff166102f85760405162461bcd60e51b8152600401610218906104b9565b6000806020838503121561039357600080fd5b823567ffffffffffffffff808211156103ab57600080fd5b818501915085601f8301126103bf57600080fd5b8135818111156103ce57600080fd5b8660208285010111156103e057600080fd5b60209290920196919550909350505050565b821515815260006020604081840152835180604085015260005b818110156104285785810183015185820160600152820161040c565b506000606082860101526060601f19601f830116850101925050509392505050565b60006020828403121561045c57600080fd5b81356001600160a01b038116811461047357600080fd5b9392505050565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b8183823760009101908152919050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b8181038181111561052557634e487b7160e01b600052601160045260246000fd5b92915050565b6000808585111561053b57600080fd5b8386111561054857600080fd5b505082019391909203915056fea164736f6c6343000811000a"; + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "uint8"; + readonly name: "version"; + readonly type: "uint8"; + }]; + readonly name: "Initialized"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "execute"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }, { + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "initialize"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "forwarder"; + readonly type: "address"; + }]; + readonly name: "isTrustedForwarder"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "msgData"; + readonly outputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "msgSender"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "msgToken"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): ERC2771RegistryContextMockInterface; + static connect(address: string, runner?: ContractRunner | null): ERC2771RegistryContextMock; +} +export {}; +//# sourceMappingURL=ERC2771RegistryContextMock__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/ERC2771RegistryContextMock__factory.d.ts.map b/dist/types/factories/contracts/mocks/ERC2771RegistryContextMock__factory.d.ts.map new file mode 100644 index 00000000..1b78cfcd --- /dev/null +++ b/dist/types/factories/contracts/mocks/ERC2771RegistryContextMock__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ERC2771RegistryContextMock__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/mocks/ERC2771RegistryContextMock__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,KAAK,EACV,0BAA0B,EAC1B,mCAAmC,EACpC,MAAM,qDAAqD,CAAC;AA8G7D,aAAK,2CAA2C,GAC5C,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,mCAAoC,SAAQ,eAAe;gBAC1D,GAAG,IAAI,EAAE,2CAA2C;IAQvD,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CACd,MAAM,EAAE,cAAc,GAAG,IAAI,GAC5B,mCAAmC;IAItC,MAAM,CAAC,QAAQ,CAAC,QAAQ,4wFAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,mCAAmC;IAG7D,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,0BAA0B;CAO9B"} \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/ERC2771RegistryContextMock__factory.js b/dist/types/factories/contracts/mocks/ERC2771RegistryContextMock__factory.js new file mode 100644 index 00000000..43f780fb --- /dev/null +++ b/dist/types/factories/contracts/mocks/ERC2771RegistryContextMock__factory.js @@ -0,0 +1,138 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ERC2771RegistryContextMock__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint8", + name: "version", + type: "uint8", + }, + ], + name: "Initialized", + type: "event", + }, + { + inputs: [ + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "execute", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "initialize", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "forwarder", + type: "address", + }, + ], + name: "isTrustedForwarder", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "msgData", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "msgSender", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "msgToken", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +const _bytecode = "0x608060405234801561001057600080fd5b50610562806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c806309c5eabe14610067578063572b6c05146100915780638129fc1c146100bd578063c4c2bfdc146100c7578063d737d0c7146100dd578063f4b06cd8146100fd575b600080fd5b61007a610075366004610380565b610113565b6040516100889291906103f2565b60405180910390f35b6100ad61009f36600461044a565b6001600160a01b0316301490565b6040519015158152602001610088565b6100c561017f565b005b6100cf610295565b60405161008892919061047a565b6100e56102a8565b6040516001600160a01b039091168152602001610088565b6101056102b7565b604051908152602001610088565b60006060306001600160a01b031684846040516101319291906104a9565b6000604051808303816000865af19150503d806000811461016e576040519150601f19603f3d011682016040523d82523d6000602084013e610173565b606091505b50915091509250929050565b600054610100900460ff161580801561019f5750600054600160ff909116105b806101b95750303b1580156101b9575060005460ff166001145b6102215760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff191660011790558015610244576000805461ff0019166101001790555b61024c6102c1565b8015610292576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50565b3660006102a06102fa565b915091509091565b60006102b2610328565b905090565b60006102b2610346565b600054610100900460ff166102e85760405162461bcd60e51b8152600401610218906104b9565b6102f0610359565b6102f8610359565b565b3660003033036103205760008036610313603482610504565b926102a09392919061052b565b6000366102a0565b600030330361033e575060331936013560601c90565b503390565b90565b60003033036103435750601f1936013590565b600054610100900460ff166102f85760405162461bcd60e51b8152600401610218906104b9565b6000806020838503121561039357600080fd5b823567ffffffffffffffff808211156103ab57600080fd5b818501915085601f8301126103bf57600080fd5b8135818111156103ce57600080fd5b8660208285010111156103e057600080fd5b60209290920196919550909350505050565b821515815260006020604081840152835180604085015260005b818110156104285785810183015185820160600152820161040c565b506000606082860101526060601f19601f830116850101925050509392505050565b60006020828403121561045c57600080fd5b81356001600160a01b038116811461047357600080fd5b9392505050565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b8183823760009101908152919050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b8181038181111561052557634e487b7160e01b600052601160045260246000fd5b92915050565b6000808585111561053b57600080fd5b8386111561054857600080fd5b505082019391909203915056fea164736f6c6343000811000a"; +const isSuperArgs = (xs) => xs.length > 1; +class ERC2771RegistryContextMock__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(overrides) { + return super.getDeployTransaction(overrides || {}); + } + deploy(overrides) { + return super.deploy(overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.ERC2771RegistryContextMock__factory = ERC2771RegistryContextMock__factory; +ERC2771RegistryContextMock__factory.bytecode = _bytecode; +ERC2771RegistryContextMock__factory.abi = _abi; diff --git a/dist/types/factories/contracts/mocks/ERC721Mock__factory.d.ts b/dist/types/factories/contracts/mocks/ERC721Mock__factory.d.ts new file mode 100644 index 00000000..7ed21133 --- /dev/null +++ b/dist/types/factories/contracts/mocks/ERC721Mock__factory.d.ts @@ -0,0 +1,295 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../common"; +import type { ERC721Mock, ERC721MockInterface } from "../../../contracts/mocks/ERC721Mock"; +declare type ERC721MockConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class ERC721Mock__factory extends ContractFactory { + constructor(...args: ERC721MockConstructorParams); + getDeployTransaction(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): ERC721Mock__factory; + static readonly bytecode = "0x60806040523480156200001157600080fd5b5060408051602080820183526000808352835191820190935282815290916200003b8382620000f8565b5060016200004a8282620000f8565b505050620001c4565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200007e57607f821691505b6020821081036200009f57634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620000f357600081815260208120601f850160051c81016020861015620000ce5750805b601f850160051c820191505b81811015620000ef57828155600101620000da565b5050505b505050565b81516001600160401b0381111562000114576200011462000053565b6200012c8162000125845462000069565b84620000a5565b602080601f8311600181146200016457600084156200014b5750858301515b600019600386901b1c1916600185901b178555620000ef565b600085815260208120601f198616915b82811015620001955788860151825594840194600190910190840162000174565b5085821015620001b45787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6112da80620001d46000396000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c80636352211e1161008c578063a22cb46511610066578063a22cb465146101e1578063b88d4fde146101f4578063c87b56dd14610207578063e985e9c51461021a57600080fd5b80636352211e146101a557806370a08231146101b857806395d89b41146101d957600080fd5b8063095ea7b3116100c8578063095ea7b31461015757806323b872dd1461016c57806340c10f191461017f57806342842e0e1461019257600080fd5b806301ffc9a7146100ef57806306fdde0314610117578063081812fc1461012c575b600080fd5b6101026100fd366004610e8f565b610256565b60405190151581526020015b60405180910390f35b61011f6102a8565b60405161010e9190610efc565b61013f61013a366004610f0f565b61033a565b6040516001600160a01b03909116815260200161010e565b61016a610165366004610f44565b610361565b005b61016a61017a366004610f6e565b61047b565b61016a61018d366004610f44565b6104ac565b61016a6101a0366004610f6e565b6104ba565b61013f6101b3366004610f0f565b6104d5565b6101cb6101c6366004610faa565b610535565b60405190815260200161010e565b61011f6105bb565b61016a6101ef366004610fc5565b6105ca565b61016a610202366004611017565b6105d5565b61011f610215366004610f0f565b61060d565b6101026102283660046110f3565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b60006001600160e01b031982166380ac58cd60e01b148061028757506001600160e01b03198216635b5e139f60e01b145b806102a257506301ffc9a760e01b6001600160e01b03198316145b92915050565b6060600080546102b790611126565b80601f01602080910402602001604051908101604052809291908181526020018280546102e390611126565b80156103305780601f1061030557610100808354040283529160200191610330565b820191906000526020600020905b81548152906001019060200180831161031357829003601f168201915b5050505050905090565b600061034582610681565b506000908152600460205260409020546001600160a01b031690565b600061036c826104d5565b9050806001600160a01b0316836001600160a01b0316036103de5760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084015b60405180910390fd5b336001600160a01b03821614806103fa57506103fa8133610228565b61046c5760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016103d5565b61047683836106e3565b505050565b6104853382610751565b6104a15760405162461bcd60e51b81526004016103d590611160565b6104768383836107d0565b6104b68282610934565b5050565b610476838383604051806020016040528060008152506105d5565b6000818152600260205260408120546001600160a01b0316806102a25760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016103d5565b60006001600160a01b03821661059f5760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b60648201526084016103d5565b506001600160a01b031660009081526003602052604090205490565b6060600180546102b790611126565b6104b633838361094e565b6105df3383610751565b6105fb5760405162461bcd60e51b81526004016103d590611160565b61060784848484610a1c565b50505050565b606061061882610681565b600061062f60408051602081019091526000815290565b9050600081511161064f576040518060200160405280600081525061067a565b8061065984610a4f565b60405160200161066a9291906111ad565b6040516020818303038152906040525b9392505050565b6000818152600260205260409020546001600160a01b03166106e05760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016103d5565b50565b600081815260046020526040902080546001600160a01b0319166001600160a01b0384169081179091558190610718826104d5565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60008061075d836104d5565b9050806001600160a01b0316846001600160a01b031614806107a457506001600160a01b0380821660009081526005602090815260408083209388168352929052205460ff165b806107c85750836001600160a01b03166107bd8461033a565b6001600160a01b0316145b949350505050565b826001600160a01b03166107e3826104d5565b6001600160a01b0316146108095760405162461bcd60e51b81526004016103d5906111dc565b6001600160a01b03821661086b5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b60648201526084016103d5565b826001600160a01b031661087e826104d5565b6001600160a01b0316146108a45760405162461bcd60e51b81526004016103d5906111dc565b600081815260046020908152604080832080546001600160a01b03199081169091556001600160a01b0387811680865260038552838620805460001901905590871680865283862080546001019055868652600290945282852080549092168417909155905184937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6104b6828260405180602001604052806000815250610ae2565b816001600160a01b0316836001600160a01b0316036109af5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c65720000000000000060448201526064016103d5565b6001600160a01b03838116600081815260056020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b610a278484846107d0565b610a3384848484610b15565b6106075760405162461bcd60e51b81526004016103d590611221565b60606000610a5c83610c16565b600101905060008167ffffffffffffffff811115610a7c57610a7c611001565b6040519080825280601f01601f191660200182016040528015610aa6576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a8504945084610ab057509392505050565b610aec8383610cee565b610af96000848484610b15565b6104765760405162461bcd60e51b81526004016103d590611221565b60006001600160a01b0384163b15610c0b57604051630a85bd0160e11b81526001600160a01b0385169063150b7a0290610b59903390899088908890600401611273565b6020604051808303816000875af1925050508015610b94575060408051601f3d908101601f19168201909252610b91918101906112b0565b60015b610bf1573d808015610bc2576040519150601f19603f3d011682016040523d82523d6000602084013e610bc7565b606091505b508051600003610be95760405162461bcd60e51b81526004016103d590611221565b805181602001fd5b6001600160e01b031916630a85bd0160e11b1490506107c8565b506001949350505050565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b8310610c555772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef81000000008310610c81576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc100008310610c9f57662386f26fc10000830492506010015b6305f5e1008310610cb7576305f5e100830492506008015b6127108310610ccb57612710830492506004015b60648310610cdd576064830492506002015b600a83106102a25760010192915050565b6001600160a01b038216610d445760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f206164647265737360448201526064016103d5565b6000818152600260205260409020546001600160a01b031615610da95760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016103d5565b6000818152600260205260409020546001600160a01b031615610e0e5760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016103d5565b6001600160a01b038216600081815260036020908152604080832080546001019055848352600290915280822080546001600160a01b0319168417905551839291907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b6001600160e01b0319811681146106e057600080fd5b600060208284031215610ea157600080fd5b813561067a81610e79565b60005b83811015610ec7578181015183820152602001610eaf565b50506000910152565b60008151808452610ee8816020860160208601610eac565b601f01601f19169290920160200192915050565b60208152600061067a6020830184610ed0565b600060208284031215610f2157600080fd5b5035919050565b80356001600160a01b0381168114610f3f57600080fd5b919050565b60008060408385031215610f5757600080fd5b610f6083610f28565b946020939093013593505050565b600080600060608486031215610f8357600080fd5b610f8c84610f28565b9250610f9a60208501610f28565b9150604084013590509250925092565b600060208284031215610fbc57600080fd5b61067a82610f28565b60008060408385031215610fd857600080fd5b610fe183610f28565b915060208301358015158114610ff657600080fd5b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b6000806000806080858703121561102d57600080fd5b61103685610f28565b935061104460208601610f28565b925060408501359150606085013567ffffffffffffffff8082111561106857600080fd5b818701915087601f83011261107c57600080fd5b81358181111561108e5761108e611001565b604051601f8201601f19908116603f011681019083821181831017156110b6576110b6611001565b816040528281528a60208487010111156110cf57600080fd5b82602086016020830137600060208483010152809550505050505092959194509250565b6000806040838503121561110657600080fd5b61110f83610f28565b915061111d60208401610f28565b90509250929050565b600181811c9082168061113a57607f821691505b60208210810361115a57634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252602d908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526c1c881bdc88185c1c1c9bdd9959609a1b606082015260800190565b600083516111bf818460208801610eac565b8351908301906111d3818360208801610eac565b01949350505050565b60208082526025908201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060408201526437bbb732b960d91b606082015260800190565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6001600160a01b03858116825284166020820152604081018390526080606082018190526000906112a690830184610ed0565b9695505050505050565b6000602082840312156112c257600080fd5b815161067a81610e7956fea164736f6c6343000811000a"; + static readonly abi: readonly [{ + readonly inputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "constructor"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "approved"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Approval"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "ApprovalForAll"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Transfer"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "approve"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "balanceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getApproved"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly name: "isApprovedForAll"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "mint"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "name"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "ownerOf"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "setApprovalForAll"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "symbol"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "tokenURI"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "transferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): ERC721MockInterface; + static connect(address: string, runner?: ContractRunner | null): ERC721Mock; +} +export {}; +//# sourceMappingURL=ERC721Mock__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/ERC721Mock__factory.d.ts.map b/dist/types/factories/contracts/mocks/ERC721Mock__factory.d.ts.map new file mode 100644 index 00000000..8b2e9854 --- /dev/null +++ b/dist/types/factories/contracts/mocks/ERC721Mock__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ERC721Mock__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/mocks/ERC721Mock__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,KAAK,EACV,UAAU,EACV,mBAAmB,EACpB,MAAM,qCAAqC,CAAC;AAyW7C,aAAK,2BAA2B,GAC5B,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,mBAAoB,SAAQ,eAAe;gBAC1C,GAAG,IAAI,EAAE,2BAA2B;IAQvC,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,mBAAmB;IAIpE,MAAM,CAAC,QAAQ,CAAC,QAAQ,o2UAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,mBAAmB;IAG7C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,UAAU;CAG5E"} \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/ERC721Mock__factory.js b/dist/types/factories/contracts/mocks/ERC721Mock__factory.js new file mode 100644 index 00000000..9e98cbba --- /dev/null +++ b/dist/types/factories/contracts/mocks/ERC721Mock__factory.js @@ -0,0 +1,389 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ERC721Mock__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [], + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "approved", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Approval", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "ApprovalForAll", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Transfer", + type: "event", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "approve", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getApproved", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + name: "isApprovedForAll", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "mint", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "name", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "ownerOf", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "setApprovalForAll", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "symbol", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "tokenURI", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "transferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +const _bytecode = "0x60806040523480156200001157600080fd5b5060408051602080820183526000808352835191820190935282815290916200003b8382620000f8565b5060016200004a8282620000f8565b505050620001c4565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200007e57607f821691505b6020821081036200009f57634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620000f357600081815260208120601f850160051c81016020861015620000ce5750805b601f850160051c820191505b81811015620000ef57828155600101620000da565b5050505b505050565b81516001600160401b0381111562000114576200011462000053565b6200012c8162000125845462000069565b84620000a5565b602080601f8311600181146200016457600084156200014b5750858301515b600019600386901b1c1916600185901b178555620000ef565b600085815260208120601f198616915b82811015620001955788860151825594840194600190910190840162000174565b5085821015620001b45787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6112da80620001d46000396000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c80636352211e1161008c578063a22cb46511610066578063a22cb465146101e1578063b88d4fde146101f4578063c87b56dd14610207578063e985e9c51461021a57600080fd5b80636352211e146101a557806370a08231146101b857806395d89b41146101d957600080fd5b8063095ea7b3116100c8578063095ea7b31461015757806323b872dd1461016c57806340c10f191461017f57806342842e0e1461019257600080fd5b806301ffc9a7146100ef57806306fdde0314610117578063081812fc1461012c575b600080fd5b6101026100fd366004610e8f565b610256565b60405190151581526020015b60405180910390f35b61011f6102a8565b60405161010e9190610efc565b61013f61013a366004610f0f565b61033a565b6040516001600160a01b03909116815260200161010e565b61016a610165366004610f44565b610361565b005b61016a61017a366004610f6e565b61047b565b61016a61018d366004610f44565b6104ac565b61016a6101a0366004610f6e565b6104ba565b61013f6101b3366004610f0f565b6104d5565b6101cb6101c6366004610faa565b610535565b60405190815260200161010e565b61011f6105bb565b61016a6101ef366004610fc5565b6105ca565b61016a610202366004611017565b6105d5565b61011f610215366004610f0f565b61060d565b6101026102283660046110f3565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b60006001600160e01b031982166380ac58cd60e01b148061028757506001600160e01b03198216635b5e139f60e01b145b806102a257506301ffc9a760e01b6001600160e01b03198316145b92915050565b6060600080546102b790611126565b80601f01602080910402602001604051908101604052809291908181526020018280546102e390611126565b80156103305780601f1061030557610100808354040283529160200191610330565b820191906000526020600020905b81548152906001019060200180831161031357829003601f168201915b5050505050905090565b600061034582610681565b506000908152600460205260409020546001600160a01b031690565b600061036c826104d5565b9050806001600160a01b0316836001600160a01b0316036103de5760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084015b60405180910390fd5b336001600160a01b03821614806103fa57506103fa8133610228565b61046c5760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016103d5565b61047683836106e3565b505050565b6104853382610751565b6104a15760405162461bcd60e51b81526004016103d590611160565b6104768383836107d0565b6104b68282610934565b5050565b610476838383604051806020016040528060008152506105d5565b6000818152600260205260408120546001600160a01b0316806102a25760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016103d5565b60006001600160a01b03821661059f5760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b60648201526084016103d5565b506001600160a01b031660009081526003602052604090205490565b6060600180546102b790611126565b6104b633838361094e565b6105df3383610751565b6105fb5760405162461bcd60e51b81526004016103d590611160565b61060784848484610a1c565b50505050565b606061061882610681565b600061062f60408051602081019091526000815290565b9050600081511161064f576040518060200160405280600081525061067a565b8061065984610a4f565b60405160200161066a9291906111ad565b6040516020818303038152906040525b9392505050565b6000818152600260205260409020546001600160a01b03166106e05760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016103d5565b50565b600081815260046020526040902080546001600160a01b0319166001600160a01b0384169081179091558190610718826104d5565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60008061075d836104d5565b9050806001600160a01b0316846001600160a01b031614806107a457506001600160a01b0380821660009081526005602090815260408083209388168352929052205460ff165b806107c85750836001600160a01b03166107bd8461033a565b6001600160a01b0316145b949350505050565b826001600160a01b03166107e3826104d5565b6001600160a01b0316146108095760405162461bcd60e51b81526004016103d5906111dc565b6001600160a01b03821661086b5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b60648201526084016103d5565b826001600160a01b031661087e826104d5565b6001600160a01b0316146108a45760405162461bcd60e51b81526004016103d5906111dc565b600081815260046020908152604080832080546001600160a01b03199081169091556001600160a01b0387811680865260038552838620805460001901905590871680865283862080546001019055868652600290945282852080549092168417909155905184937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6104b6828260405180602001604052806000815250610ae2565b816001600160a01b0316836001600160a01b0316036109af5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c65720000000000000060448201526064016103d5565b6001600160a01b03838116600081815260056020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b610a278484846107d0565b610a3384848484610b15565b6106075760405162461bcd60e51b81526004016103d590611221565b60606000610a5c83610c16565b600101905060008167ffffffffffffffff811115610a7c57610a7c611001565b6040519080825280601f01601f191660200182016040528015610aa6576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a8504945084610ab057509392505050565b610aec8383610cee565b610af96000848484610b15565b6104765760405162461bcd60e51b81526004016103d590611221565b60006001600160a01b0384163b15610c0b57604051630a85bd0160e11b81526001600160a01b0385169063150b7a0290610b59903390899088908890600401611273565b6020604051808303816000875af1925050508015610b94575060408051601f3d908101601f19168201909252610b91918101906112b0565b60015b610bf1573d808015610bc2576040519150601f19603f3d011682016040523d82523d6000602084013e610bc7565b606091505b508051600003610be95760405162461bcd60e51b81526004016103d590611221565b805181602001fd5b6001600160e01b031916630a85bd0160e11b1490506107c8565b506001949350505050565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b8310610c555772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef81000000008310610c81576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc100008310610c9f57662386f26fc10000830492506010015b6305f5e1008310610cb7576305f5e100830492506008015b6127108310610ccb57612710830492506004015b60648310610cdd576064830492506002015b600a83106102a25760010192915050565b6001600160a01b038216610d445760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f206164647265737360448201526064016103d5565b6000818152600260205260409020546001600160a01b031615610da95760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016103d5565b6000818152600260205260409020546001600160a01b031615610e0e5760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016103d5565b6001600160a01b038216600081815260036020908152604080832080546001019055848352600290915280822080546001600160a01b0319168417905551839291907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b6001600160e01b0319811681146106e057600080fd5b600060208284031215610ea157600080fd5b813561067a81610e79565b60005b83811015610ec7578181015183820152602001610eaf565b50506000910152565b60008151808452610ee8816020860160208601610eac565b601f01601f19169290920160200192915050565b60208152600061067a6020830184610ed0565b600060208284031215610f2157600080fd5b5035919050565b80356001600160a01b0381168114610f3f57600080fd5b919050565b60008060408385031215610f5757600080fd5b610f6083610f28565b946020939093013593505050565b600080600060608486031215610f8357600080fd5b610f8c84610f28565b9250610f9a60208501610f28565b9150604084013590509250925092565b600060208284031215610fbc57600080fd5b61067a82610f28565b60008060408385031215610fd857600080fd5b610fe183610f28565b915060208301358015158114610ff657600080fd5b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b6000806000806080858703121561102d57600080fd5b61103685610f28565b935061104460208601610f28565b925060408501359150606085013567ffffffffffffffff8082111561106857600080fd5b818701915087601f83011261107c57600080fd5b81358181111561108e5761108e611001565b604051601f8201601f19908116603f011681019083821181831017156110b6576110b6611001565b816040528281528a60208487010111156110cf57600080fd5b82602086016020830137600060208483010152809550505050505092959194509250565b6000806040838503121561110657600080fd5b61110f83610f28565b915061111d60208401610f28565b90509250929050565b600181811c9082168061113a57607f821691505b60208210810361115a57634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252602d908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526c1c881bdc88185c1c1c9bdd9959609a1b606082015260800190565b600083516111bf818460208801610eac565b8351908301906111d3818360208801610eac565b01949350505050565b60208082526025908201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060408201526437bbb732b960d91b606082015260800190565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6001600160a01b03858116825284166020820152604081018390526080606082018190526000906112a690830184610ed0565b9695505050505050565b6000602082840312156112c257600080fd5b815161067a81610e7956fea164736f6c6343000811000a"; +const isSuperArgs = (xs) => xs.length > 1; +class ERC721Mock__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(overrides) { + return super.getDeployTransaction(overrides || {}); + } + deploy(overrides) { + return super.deploy(overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.ERC721Mock__factory = ERC721Mock__factory; +ERC721Mock__factory.bytecode = _bytecode; +ERC721Mock__factory.abi = _abi; diff --git a/dist/types/factories/contracts/mocks/ERC721ReceiverMock__factory.d.ts b/dist/types/factories/contracts/mocks/ERC721ReceiverMock__factory.d.ts new file mode 100644 index 00000000..74990f00 --- /dev/null +++ b/dist/types/factories/contracts/mocks/ERC721ReceiverMock__factory.d.ts @@ -0,0 +1,49 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../common"; +import type { ERC721ReceiverMock, ERC721ReceiverMockInterface } from "../../../contracts/mocks/ERC721ReceiverMock"; +declare type ERC721ReceiverMockConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class ERC721ReceiverMock__factory extends ContractFactory { + constructor(...args: ERC721ReceiverMockConstructorParams); + getDeployTransaction(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): ERC721ReceiverMock__factory; + static readonly bytecode = "0x608060405234801561001057600080fd5b50610186806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063150b7a0214610030575b600080fd5b61004e61003e36600461009d565b630a85bd0160e11b949350505050565b6040516001600160e01b0319909116815260200160405180910390f35b80356001600160a01b038116811461008257600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b600080600080608085870312156100b357600080fd5b6100bc8561006b565b93506100ca6020860161006b565b925060408501359150606085013567ffffffffffffffff808211156100ee57600080fd5b818701915087601f83011261010257600080fd5b81358181111561011457610114610087565b604051601f8201601f19908116603f0116810190838211818310171561013c5761013c610087565b816040528281528a602084870101111561015557600080fd5b8260208601602083013760006020848301015280955050505050509295919450925056fea164736f6c6343000811000a"; + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly name: "onERC721Received"; + readonly outputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: ""; + readonly type: "bytes4"; + }]; + readonly stateMutability: "pure"; + readonly type: "function"; + }]; + static createInterface(): ERC721ReceiverMockInterface; + static connect(address: string, runner?: ContractRunner | null): ERC721ReceiverMock; +} +export {}; +//# sourceMappingURL=ERC721ReceiverMock__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/ERC721ReceiverMock__factory.d.ts.map b/dist/types/factories/contracts/mocks/ERC721ReceiverMock__factory.d.ts.map new file mode 100644 index 00000000..5c696742 --- /dev/null +++ b/dist/types/factories/contracts/mocks/ERC721ReceiverMock__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ERC721ReceiverMock__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/mocks/ERC721ReceiverMock__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,KAAK,EACV,kBAAkB,EAClB,2BAA2B,EAC5B,MAAM,6CAA6C,CAAC;AA0CrD,aAAK,mCAAmC,GACpC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,2BAA4B,SAAQ,eAAe;gBAClD,GAAG,IAAI,EAAE,mCAAmC;IAQ/C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,2BAA2B;IAI5E,MAAM,CAAC,QAAQ,CAAC,QAAQ,o1BAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,2BAA2B;IAGrD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,kBAAkB;CAGtB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/ERC721ReceiverMock__factory.js b/dist/types/factories/contracts/mocks/ERC721ReceiverMock__factory.js new file mode 100644 index 00000000..7fac8c1d --- /dev/null +++ b/dist/types/factories/contracts/mocks/ERC721ReceiverMock__factory.js @@ -0,0 +1,70 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ERC721ReceiverMock__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + { + internalType: "address", + name: "", + type: "address", + }, + { + internalType: "uint256", + name: "", + type: "uint256", + }, + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + name: "onERC721Received", + outputs: [ + { + internalType: "bytes4", + name: "", + type: "bytes4", + }, + ], + stateMutability: "pure", + type: "function", + }, +]; +const _bytecode = "0x608060405234801561001057600080fd5b50610186806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063150b7a0214610030575b600080fd5b61004e61003e36600461009d565b630a85bd0160e11b949350505050565b6040516001600160e01b0319909116815260200160405180910390f35b80356001600160a01b038116811461008257600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b600080600080608085870312156100b357600080fd5b6100bc8561006b565b93506100ca6020860161006b565b925060408501359150606085013567ffffffffffffffff808211156100ee57600080fd5b818701915087601f83011261010257600080fd5b81358181111561011457610114610087565b604051601f8201601f19908116603f0116810190838211818310171561013c5761013c610087565b816040528281528a602084870101111561015557600080fd5b8260208601602083013760006020848301015280955050505050509295919450925056fea164736f6c6343000811000a"; +const isSuperArgs = (xs) => xs.length > 1; +class ERC721ReceiverMock__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(overrides) { + return super.getDeployTransaction(overrides || {}); + } + deploy(overrides) { + return super.deploy(overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.ERC721ReceiverMock__factory = ERC721ReceiverMock__factory; +ERC721ReceiverMock__factory.bytecode = _bytecode; +ERC721ReceiverMock__factory.abi = _abi; diff --git a/dist/types/factories/contracts/mocks/MinterRoleMock__factory.d.ts b/dist/types/factories/contracts/mocks/MinterRoleMock__factory.d.ts new file mode 100644 index 00000000..612db611 --- /dev/null +++ b/dist/types/factories/contracts/mocks/MinterRoleMock__factory.d.ts @@ -0,0 +1,334 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../common"; +import type { MinterRoleMock, MinterRoleMockInterface } from "../../../contracts/mocks/MinterRoleMock"; +declare type MinterRoleMockConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class MinterRoleMock__factory extends ContractFactory { + constructor(...args: MinterRoleMockConstructorParams); + getDeployTransaction(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): MinterRoleMock__factory; + static readonly bytecode = "0x608060405234801561001057600080fd5b5061112a806100206000396000f3fe60806040526004361061012a5760003560e01c806381c81d35116100ab578063a217fddf1161006f578063a217fddf14610311578063aa271e1a14610326578063d539139314610346578063d547741f14610368578063ecfdcfb814610388578063f2fde38b1461039d57600080fd5b806381c81d35146102815780638da5cb5b1461029457806391d14854146102bc578063983b2d56146102dc57806398650275146102fc57600080fd5b80635fc1964f116100f25780635fc1964f14610204578063634486da14610224578063715018a61461023757806371e2a6571461024c5780638129fc1c1461026c57600080fd5b806301ffc9a71461012f578063248a9ca3146101645780632f2ff15d146101a25780633092afd5146101c457806336568abe146101e4575b600080fd5b34801561013b57600080fd5b5061014f61014a366004610d9b565b6103bd565b60405190151581526020015b60405180910390f35b34801561017057600080fd5b5061019461017f366004610dc5565b60009081526097602052604090206001015490565b60405190815260200161015b565b3480156101ae57600080fd5b506101c26101bd366004610e03565b6103f4565b005b3480156101d057600080fd5b506101c26101df366004610e33565b61041e565b3480156101f057600080fd5b506101c26101ff366004610e03565b610432565b34801561021057600080fd5b506101c261021f366004610e66565b6104b5565b6101c2610232366004610e33565b6104fd565b34801561024357600080fd5b506101c26105be565b34801561025857600080fd5b506101c2610267366004610e66565b6105d2565b34801561027857600080fd5b506101c261061a565b6101c261028f366004610e33565b61072a565b3480156102a057600080fd5b506033546040516001600160a01b03909116815260200161015b565b3480156102c857600080fd5b5061014f6102d7366004610e03565b6107a5565b3480156102e857600080fd5b506101c26102f7366004610e33565b6107d0565b34801561030857600080fd5b506101c26107e1565b34801561031d57600080fd5b50610194600081565b34801561033257600080fd5b5061014f610341366004610e33565b6107f9565b34801561035257600080fd5b506101946000805160206110fe83398151915281565b34801561037457600080fd5b506101c2610383366004610e03565b610813565b34801561039457600080fd5b506101c2610838565b3480156103a957600080fd5b506101c26103b8366004610e33565b61085d565b60006001600160e01b03198216637965db0b60e01b14806103ee57506301ffc9a760e01b6001600160e01b03198316145b92915050565b60008281526097602052604090206001015461040f81610879565b6104198383610883565b505050565b610426610909565b61042f81610963565b50565b6001600160a01b03811633146104a75760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6104b1828261097b565b5050565b6104bd610909565b60005b81518110156104b1576104eb8282815181106104de576104de610f2b565b6020026020010151610963565b806104f581610f57565b9150506104c0565b610506336107f9565b6105225760405162461bcd60e51b815260040161049e90610f70565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d505459000000604482015260640161049e565b610581816109e2565b6105896107e1565b6040516001600160a01b038216903480156108fc02916000818181858888f193505050501580156104b1573d6000803e3d6000fd5b6105c6610909565b6105d060006109fa565b565b6105da610909565b60005b81518110156104b1576106088282815181106105fb576105fb610f2b565b60200260200101516109e2565b8061061281610f57565b9150506105dd565b600054610100900460ff161580801561063a5750600054600160ff909116105b806106545750303b158015610654575060005460ff166001145b6106b75760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840161049e565b6000805460ff1916600117905580156106da576000805461ff0019166101001790555b6106e2610a4c565b801561042f576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150565b610733336107f9565b61074f5760405162461bcd60e51b815260040161049e90610f70565b6001600160a01b0381166105815760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d505459000000604482015260640161049e565b60009182526097602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6107d8610909565b61042f816109e2565b6105d06000805160206110fe83398151915233610432565b60006103ee6000805160206110fe833981519152836107a5565b60008281526097602052604090206001015461082e81610879565b610419838361097b565b610841336107f9565b6105d05760405162461bcd60e51b815260040161049e90610f70565b610865610909565b61086e81610a8b565b61042f600082610b01565b61042f8133610b0b565b61088d82826107a5565b6104b15760008281526097602090815260408083206001600160a01b03851684529091529020805460ff191660011790556108c53390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6033546001600160a01b031633146105d05760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161049e565b61042f6000805160206110fe83398151915282610813565b61098582826107a5565b156104b15760008281526097602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b61042f6000805160206110fe83398151915282610b01565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600054610100900460ff16610a735760405162461bcd60e51b815260040161049e90610fa5565b610a7b610b6f565b610a83610b9f565b6105d0610bc6565b610a93610909565b6001600160a01b038116610af85760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161049e565b61042f816109fa565b6104b18282610883565b610b1582826107a5565b6104b157610b2d816001600160a01b03166014610bf8565b610b38836020610bf8565b604051602001610b49929190611014565b60408051601f198184030181529082905262461bcd60e51b825261049e91600401611089565b600054610100900460ff16610b965760405162461bcd60e51b815260040161049e90610fa5565b6105d0336109fa565b600054610100900460ff166105d05760405162461bcd60e51b815260040161049e90610fa5565b600054610100900460ff16610bed5760405162461bcd60e51b815260040161049e90610fa5565b6105d0600033610b01565b60606000610c078360026110bc565b610c129060026110d3565b67ffffffffffffffff811115610c2a57610c2a610e50565b6040519080825280601f01601f191660200182016040528015610c54576020820181803683370190505b509050600360fc1b81600081518110610c6f57610c6f610f2b565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110610c9e57610c9e610f2b565b60200101906001600160f81b031916908160001a9053506000610cc28460026110bc565b610ccd9060016110d3565b90505b6001811115610d45576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110610d0157610d01610f2b565b1a60f81b828281518110610d1757610d17610f2b565b60200101906001600160f81b031916908160001a90535060049490941c93610d3e816110e6565b9050610cd0565b508315610d945760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e74604482015260640161049e565b9392505050565b600060208284031215610dad57600080fd5b81356001600160e01b031981168114610d9457600080fd5b600060208284031215610dd757600080fd5b5035919050565b6001600160a01b038116811461042f57600080fd5b8035610dfe81610dde565b919050565b60008060408385031215610e1657600080fd5b823591506020830135610e2881610dde565b809150509250929050565b600060208284031215610e4557600080fd5b8135610d9481610dde565b634e487b7160e01b600052604160045260246000fd5b60006020808385031215610e7957600080fd5b823567ffffffffffffffff80821115610e9157600080fd5b818501915085601f830112610ea557600080fd5b813581811115610eb757610eb7610e50565b8060051b604051601f19603f83011681018181108582111715610edc57610edc610e50565b604052918252848201925083810185019188831115610efa57600080fd5b938501935b82851015610f1f57610f1085610df3565b84529385019392850192610eff565b98975050505050505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201610f6957610f69610f41565b5060010190565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60005b8381101561100b578181015183820152602001610ff3565b50506000910152565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081526000835161104c816017850160208801610ff0565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835161107d816028840160208801610ff0565b01602801949350505050565b60208152600082518060208401526110a8816040850160208701610ff0565b601f01601f19169190910160400192915050565b80820281158282048414176103ee576103ee610f41565b808201808211156103ee576103ee610f41565b6000816110f5576110f5610f41565b50600019019056fe9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000811000a"; + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "uint8"; + readonly name: "version"; + readonly type: "uint8"; + }]; + readonly name: "Initialized"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "previousOwner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "newOwner"; + readonly type: "address"; + }]; + readonly name: "OwnershipTransferred"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "previousAdminRole"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "newAdminRole"; + readonly type: "bytes32"; + }]; + readonly name: "RoleAdminChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "sender"; + readonly type: "address"; + }]; + readonly name: "RoleGranted"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "sender"; + readonly type: "address"; + }]; + readonly name: "RoleRevoked"; + readonly type: "event"; + }, { + readonly inputs: readonly []; + readonly name: "DEFAULT_ADMIN_ROLE"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "MINTER_ROLE"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "addMinter"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address[]"; + readonly name: "accounts"; + readonly type: "address[]"; + }]; + readonly name: "addMinters"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address payable"; + readonly name: "receiver"; + readonly type: "address"; + }]; + readonly name: "closeMinter"; + readonly outputs: readonly []; + readonly stateMutability: "payable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }]; + readonly name: "getRoleAdmin"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "grantRole"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "hasRole"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "initialize"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "isMinter"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "olnyMinterFunc"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "owner"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "removeMinter"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address[]"; + readonly name: "accounts"; + readonly type: "address[]"; + }]; + readonly name: "removeMinters"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "renounceMinter"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "renounceOwnership"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "renounceRole"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "revokeRole"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address payable"; + readonly name: "receiver"; + readonly type: "address"; + }]; + readonly name: "rotateMinter"; + readonly outputs: readonly []; + readonly stateMutability: "payable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "newOwner"; + readonly type: "address"; + }]; + readonly name: "transferOwnership"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): MinterRoleMockInterface; + static connect(address: string, runner?: ContractRunner | null): MinterRoleMock; +} +export {}; +//# sourceMappingURL=MinterRoleMock__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/MinterRoleMock__factory.d.ts.map b/dist/types/factories/contracts/mocks/MinterRoleMock__factory.d.ts.map new file mode 100644 index 00000000..accc4610 --- /dev/null +++ b/dist/types/factories/contracts/mocks/MinterRoleMock__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"MinterRoleMock__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/mocks/MinterRoleMock__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,KAAK,EACV,cAAc,EACd,uBAAuB,EACxB,MAAM,yCAAyC,CAAC;AAwZjD,aAAK,+BAA+B,GAChC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,uBAAwB,SAAQ,eAAe;gBAC9C,GAAG,IAAI,EAAE,+BAA+B;IAQ3C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,uBAAuB;IAIxE,MAAM,CAAC,QAAQ,CAAC,QAAQ,4pRAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,uBAAuB;IAGjD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,cAAc;CAGlB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/MinterRoleMock__factory.js b/dist/types/factories/contracts/mocks/MinterRoleMock__factory.js new file mode 100644 index 00000000..fdaefe6c --- /dev/null +++ b/dist/types/factories/contracts/mocks/MinterRoleMock__factory.js @@ -0,0 +1,436 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.MinterRoleMock__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint8", + name: "version", + type: "uint8", + }, + ], + name: "Initialized", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "previousOwner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnershipTransferred", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + indexed: true, + internalType: "bytes32", + name: "previousAdminRole", + type: "bytes32", + }, + { + indexed: true, + internalType: "bytes32", + name: "newAdminRole", + type: "bytes32", + }, + ], + name: "RoleAdminChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "RoleGranted", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "RoleRevoked", + type: "event", + }, + { + inputs: [], + name: "DEFAULT_ADMIN_ROLE", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "MINTER_ROLE", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "addMinter", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address[]", + name: "accounts", + type: "address[]", + }, + ], + name: "addMinters", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address payable", + name: "receiver", + type: "address", + }, + ], + name: "closeMinter", + outputs: [], + stateMutability: "payable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + ], + name: "getRoleAdmin", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "grantRole", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "hasRole", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "initialize", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "isMinter", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "olnyMinterFunc", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "removeMinter", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address[]", + name: "accounts", + type: "address[]", + }, + ], + name: "removeMinters", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "renounceMinter", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "renounceOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "renounceRole", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "revokeRole", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address payable", + name: "receiver", + type: "address", + }, + ], + name: "rotateMinter", + outputs: [], + stateMutability: "payable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "transferOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +const _bytecode = "0x608060405234801561001057600080fd5b5061112a806100206000396000f3fe60806040526004361061012a5760003560e01c806381c81d35116100ab578063a217fddf1161006f578063a217fddf14610311578063aa271e1a14610326578063d539139314610346578063d547741f14610368578063ecfdcfb814610388578063f2fde38b1461039d57600080fd5b806381c81d35146102815780638da5cb5b1461029457806391d14854146102bc578063983b2d56146102dc57806398650275146102fc57600080fd5b80635fc1964f116100f25780635fc1964f14610204578063634486da14610224578063715018a61461023757806371e2a6571461024c5780638129fc1c1461026c57600080fd5b806301ffc9a71461012f578063248a9ca3146101645780632f2ff15d146101a25780633092afd5146101c457806336568abe146101e4575b600080fd5b34801561013b57600080fd5b5061014f61014a366004610d9b565b6103bd565b60405190151581526020015b60405180910390f35b34801561017057600080fd5b5061019461017f366004610dc5565b60009081526097602052604090206001015490565b60405190815260200161015b565b3480156101ae57600080fd5b506101c26101bd366004610e03565b6103f4565b005b3480156101d057600080fd5b506101c26101df366004610e33565b61041e565b3480156101f057600080fd5b506101c26101ff366004610e03565b610432565b34801561021057600080fd5b506101c261021f366004610e66565b6104b5565b6101c2610232366004610e33565b6104fd565b34801561024357600080fd5b506101c26105be565b34801561025857600080fd5b506101c2610267366004610e66565b6105d2565b34801561027857600080fd5b506101c261061a565b6101c261028f366004610e33565b61072a565b3480156102a057600080fd5b506033546040516001600160a01b03909116815260200161015b565b3480156102c857600080fd5b5061014f6102d7366004610e03565b6107a5565b3480156102e857600080fd5b506101c26102f7366004610e33565b6107d0565b34801561030857600080fd5b506101c26107e1565b34801561031d57600080fd5b50610194600081565b34801561033257600080fd5b5061014f610341366004610e33565b6107f9565b34801561035257600080fd5b506101946000805160206110fe83398151915281565b34801561037457600080fd5b506101c2610383366004610e03565b610813565b34801561039457600080fd5b506101c2610838565b3480156103a957600080fd5b506101c26103b8366004610e33565b61085d565b60006001600160e01b03198216637965db0b60e01b14806103ee57506301ffc9a760e01b6001600160e01b03198316145b92915050565b60008281526097602052604090206001015461040f81610879565b6104198383610883565b505050565b610426610909565b61042f81610963565b50565b6001600160a01b03811633146104a75760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6104b1828261097b565b5050565b6104bd610909565b60005b81518110156104b1576104eb8282815181106104de576104de610f2b565b6020026020010151610963565b806104f581610f57565b9150506104c0565b610506336107f9565b6105225760405162461bcd60e51b815260040161049e90610f70565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d505459000000604482015260640161049e565b610581816109e2565b6105896107e1565b6040516001600160a01b038216903480156108fc02916000818181858888f193505050501580156104b1573d6000803e3d6000fd5b6105c6610909565b6105d060006109fa565b565b6105da610909565b60005b81518110156104b1576106088282815181106105fb576105fb610f2b565b60200260200101516109e2565b8061061281610f57565b9150506105dd565b600054610100900460ff161580801561063a5750600054600160ff909116105b806106545750303b158015610654575060005460ff166001145b6106b75760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840161049e565b6000805460ff1916600117905580156106da576000805461ff0019166101001790555b6106e2610a4c565b801561042f576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150565b610733336107f9565b61074f5760405162461bcd60e51b815260040161049e90610f70565b6001600160a01b0381166105815760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d505459000000604482015260640161049e565b60009182526097602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6107d8610909565b61042f816109e2565b6105d06000805160206110fe83398151915233610432565b60006103ee6000805160206110fe833981519152836107a5565b60008281526097602052604090206001015461082e81610879565b610419838361097b565b610841336107f9565b6105d05760405162461bcd60e51b815260040161049e90610f70565b610865610909565b61086e81610a8b565b61042f600082610b01565b61042f8133610b0b565b61088d82826107a5565b6104b15760008281526097602090815260408083206001600160a01b03851684529091529020805460ff191660011790556108c53390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6033546001600160a01b031633146105d05760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161049e565b61042f6000805160206110fe83398151915282610813565b61098582826107a5565b156104b15760008281526097602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b61042f6000805160206110fe83398151915282610b01565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600054610100900460ff16610a735760405162461bcd60e51b815260040161049e90610fa5565b610a7b610b6f565b610a83610b9f565b6105d0610bc6565b610a93610909565b6001600160a01b038116610af85760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161049e565b61042f816109fa565b6104b18282610883565b610b1582826107a5565b6104b157610b2d816001600160a01b03166014610bf8565b610b38836020610bf8565b604051602001610b49929190611014565b60408051601f198184030181529082905262461bcd60e51b825261049e91600401611089565b600054610100900460ff16610b965760405162461bcd60e51b815260040161049e90610fa5565b6105d0336109fa565b600054610100900460ff166105d05760405162461bcd60e51b815260040161049e90610fa5565b600054610100900460ff16610bed5760405162461bcd60e51b815260040161049e90610fa5565b6105d0600033610b01565b60606000610c078360026110bc565b610c129060026110d3565b67ffffffffffffffff811115610c2a57610c2a610e50565b6040519080825280601f01601f191660200182016040528015610c54576020820181803683370190505b509050600360fc1b81600081518110610c6f57610c6f610f2b565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110610c9e57610c9e610f2b565b60200101906001600160f81b031916908160001a9053506000610cc28460026110bc565b610ccd9060016110d3565b90505b6001811115610d45576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110610d0157610d01610f2b565b1a60f81b828281518110610d1757610d17610f2b565b60200101906001600160f81b031916908160001a90535060049490941c93610d3e816110e6565b9050610cd0565b508315610d945760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e74604482015260640161049e565b9392505050565b600060208284031215610dad57600080fd5b81356001600160e01b031981168114610d9457600080fd5b600060208284031215610dd757600080fd5b5035919050565b6001600160a01b038116811461042f57600080fd5b8035610dfe81610dde565b919050565b60008060408385031215610e1657600080fd5b823591506020830135610e2881610dde565b809150509250929050565b600060208284031215610e4557600080fd5b8135610d9481610dde565b634e487b7160e01b600052604160045260246000fd5b60006020808385031215610e7957600080fd5b823567ffffffffffffffff80821115610e9157600080fd5b818501915085601f830112610ea557600080fd5b813581811115610eb757610eb7610e50565b8060051b604051601f19603f83011681018181108582111715610edc57610edc610e50565b604052918252848201925083810185019188831115610efa57600080fd5b938501935b82851015610f1f57610f1085610df3565b84529385019392850192610eff565b98975050505050505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201610f6957610f69610f41565b5060010190565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60005b8381101561100b578181015183820152602001610ff3565b50506000910152565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081526000835161104c816017850160208801610ff0565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835161107d816028840160208801610ff0565b01602801949350505050565b60208152600082518060208401526110a8816040850160208701610ff0565b601f01601f19169190910160400192915050565b80820281158282048414176103ee576103ee610f41565b808201808211156103ee576103ee610f41565b6000816110f5576110f5610f41565b50600019019056fe9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000811000a"; +const isSuperArgs = (xs) => xs.length > 1; +class MinterRoleMock__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(overrides) { + return super.getDeployTransaction(overrides || {}); + } + deploy(overrides) { + return super.deploy(overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.MinterRoleMock__factory = MinterRoleMock__factory; +MinterRoleMock__factory.bytecode = _bytecode; +MinterRoleMock__factory.abi = _abi; diff --git a/dist/types/factories/contracts/mocks/MintingManagerMock__factory.d.ts b/dist/types/factories/contracts/mocks/MintingManagerMock__factory.d.ts new file mode 100644 index 00000000..53eba5fa --- /dev/null +++ b/dist/types/factories/contracts/mocks/MintingManagerMock__factory.d.ts @@ -0,0 +1,930 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../common"; +import type { MintingManagerMock, MintingManagerMockInterface } from "../../../contracts/mocks/MintingManagerMock"; +declare type MintingManagerMockConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class MintingManagerMock__factory extends ContractFactory { + constructor(...args: MintingManagerMockConstructorParams); + getDeployTransaction(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): MintingManagerMock__factory; + static readonly bytecode = "0x608060405234801561001057600080fd5b5061509f806100206000396000f3fe6080604052600436106102c95760003560e01c806391d1485411610175578063b9998a24116100dc578063d547741f11610095578063f2fde38b1161006f578063f2fde38b146108cd578063f5243bc4146108ed578063f940e3851461090d578063ffa1ad741461092d57600080fd5b8063d547741f1461087a578063d7db74c71461089a578063ec527389146108ad57600080fd5b8063b9998a24146107b8578063cc2a9a5b146107d8578063cc2c3fc4146107f8578063ceeb4f5014610818578063d1f5692c14610838578063d53913931461085857600080fd5b8063a3f4df7e1161012e578063a3f4df7e146106cb578063a849d65c14610718578063aa271e1a14610738578063ae31844a14610758578063b0aa98c714610778578063b3ab15fb1461079857600080fd5b806391d1485414610621578063983b2d5614610641578063986502751461066157806399e0dd7c14610676578063a217fddf14610696578063a3a3f7f6146106ab57600080fd5b80635b6fa8db11610234578063715018a6116101ed57806381c81d35116101c757806381c81d35146105bb5780638456cb59146105ce5780638da5cb5b146105e3578063906cecc11461060157600080fd5b8063715018a61461056657806371e2a6571461057b57806377a2a5891461059b57600080fd5b80635b6fa8db146104be5780635c975abb146104de5780635cd7e3b3146104f35780635e22cd86146105135780635fc1964f14610533578063634486da1461055357600080fd5b80633092afd5116102865780633092afd5146103c357806336568abe146103e35780633f41b614146104035780633f4ba83a1461043b57806351cff8d914610450578063572b6c051461047057600080fd5b806301ffc9a7146102ce5780631edb948e1461030357806320c5429b14610325578063248a9ca314610345578063268b15ed146103835780632f2ff15d146103a3575b600080fd5b3480156102da57600080fd5b506102ee6102e9366004613f0a565b61095e565b60405190151581526020015b60405180910390f35b34801561030f57600080fd5b5061032361031e366004613f59565b610995565b005b34801561033157600080fd5b50610323610340366004613f85565b610b3e565b34801561035157600080fd5b50610375610360366004613f85565b60009081526097602052604090206001015490565b6040519081526020016102fa565b34801561038f57600080fd5b5061032361039e366004613fdf565b610c61565b3480156103af57600080fd5b506103236103be36600461404a565b610cf4565b3480156103cf57600080fd5b506103236103de36600461407a565b610d1e565b3480156103ef57600080fd5b506103236103fe36600461404a565b610d32565b34801561040f57600080fd5b5060c954610423906001600160a01b031681565b6040516001600160a01b0390911681526020016102fa565b34801561044757600080fd5b50610323610dc0565b34801561045c57600080fd5b5061032361046b36600461407a565b610dd2565b34801561047c57600080fd5b506102ee61048b36600461407a565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546001600160a01b0390811691161490565b3480156104ca57600080fd5b5060cc54610423906001600160a01b031681565b3480156104ea57600080fd5b506102ee610e72565b3480156104ff57600080fd5b5061032361050e3660046140e9565b610e88565b34801561051f57600080fd5b5061032361052e3660046141a8565b6110ec565b34801561053f57600080fd5b5061032361054e3660046142e2565b611331565b61032361056136600461407a565b611379565b34801561057257600080fd5b5061032361143c565b34801561058757600080fd5b506103236105963660046142e2565b61144e565b3480156105a757600080fd5b5060ce54610423906001600160a01b031681565b6103236105c936600461407a565b611496565b3480156105da57600080fd5b50610323611513565b3480156105ef57600080fd5b506033546001600160a01b0316610423565b34801561060d57600080fd5b5061032361061c366004614380565b611523565b34801561062d57600080fd5b506102ee61063c36600461404a565b6115a9565b34801561064d57600080fd5b5061032361065c36600461407a565b6115d4565b34801561066d57600080fd5b506103236115e5565b34801561068257600080fd5b506103236106913660046143db565b6115ff565b3480156106a257600080fd5b50610375600081565b3480156106b757600080fd5b506103236106c636600461441c565b6116e6565b3480156106d757600080fd5b5061070b604051806040016040528060148152602001732aa7299d1026b4b73a34b7339026b0b730b3b2b960611b81525081565b6040516102fa91906144c2565b34801561072457600080fd5b5060cb54610423906001600160a01b031681565b34801561074457600080fd5b506102ee61075336600461407a565b61172f565b34801561076457600080fd5b506103236107733660046144d5565b611749565b34801561078457600080fd5b506102ee610793366004613f85565b611854565b3480156107a457600080fd5b506103236107b336600461407a565b6118b2565b3480156107c457600080fd5b506103236107d336600461407a565b6118dc565b3480156107e457600080fd5b506103236107f336600461450a565b611921565b34801561080457600080fd5b5060ca54610423906001600160a01b031681565b34801561082457600080fd5b5061032361083336600461458c565b611e18565b34801561084457600080fd5b506103236108533660046144d5565b611ebc565b34801561086457600080fd5b5061037560008051602061507383398151915281565b34801561088657600080fd5b5061032361089536600461404a565b611f73565b6103236108a8366004614641565b611f98565b3480156108b957600080fd5b506103236108c8366004613f85565b612128565b3480156108d957600080fd5b506103236108e836600461407a565b61219a565b3480156108f957600080fd5b50610323610908366004614736565b6121b6565b34801561091957600080fd5b5061032361092836600461484e565b612368565b34801561093957600080fd5b5061070b60405180604001604052806005815260200164302e352e3160d81b81525081565b60006001600160e01b03198216637965db0b60e01b148061098f57506301ffc9a760e01b6001600160e01b03198316145b92915050565b6109a06107536124e4565b6109c55760405162461bcd60e51b81526004016109bc9061487c565b60405180910390fd5b60c95460405163baef73e960e01b8152600481018390526000916001600160a01b03169063baef73e990602401602060405180830381865afa158015610a0f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a3391906148b1565b9050806001600160401b0316600003610a5e5760405162461bcd60e51b81526004016109bc906148ce565b806001600160401b0316836001600160401b031611610acb5760405162461bcd60e51b815260206004820152602360248201527f4d696e74696e674d616e616765723a204558504952595f4e4f545f455854454e60448201526211115160ea1b60648201526084016109bc565b60c954604051631fb9763760e11b81526001600160401b0385166004820152602481018490526001600160a01b0390911690633f72ec6e906044015b600060405180830381600087803b158015610b2157600080fd5b505af1158015610b35573d6000803e3d6000fd5b50505050505050565b610b496107536124e4565b610b655760405162461bcd60e51b81526004016109bc9061487c565b60c95460405163baef73e960e01b8152600481018390526001600160a01b039091169063baef73e990602401602060405180830381865afa158015610bae573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bd291906148b1565b6001600160401b0316600003610bfa5760405162461bcd60e51b81526004016109bc906148ce565b60c954604051637eee288d60e01b8152306004820152602481018390526001600160a01b0390911690637eee288d90604401600060405180830381600087803b158015610c4657600080fd5b505af1158015610c5a573d6000803e3d6000fd5b5050505050565b8282828080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250610ca493508592508491506124f3565b610cac610e72565b15610cc95760405162461bcd60e51b81526004016109bc90614911565b6060610b35610cd66124e4565b610ce988610ce489896126ca565b6126f6565b838460006001612807565b600082815260976020526040902060010154610d0f81612d5b565b610d198383612d6c565b505050565b610d26612df3565b610d2f81612e6c565b50565b610d3a6124e4565b6001600160a01b0316816001600160a01b031614610db25760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084016109bc565b610dbc8282612e84565b5050565b610dc8612df3565b610dd0612f09565b565b610dda612df3565b6001600160a01b038116610ded57600080fd5b60405147906001600160a01b0383169082156108fc029083906000818181858888f19350505050158015610e25573d6000803e3d6000fd5b50604080516001600160a01b03841681526020810183905260008183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a15050565b6000805160206150538339815191525460ff1690565b610e92868861493b565b8051600203610ec757610ea66107536124e4565b610ec25760405162461bcd60e51b81526004016109bc90614a05565b61100c565b6000610ed282612fb1565b60c9549092506001600160a01b0316905063430c2081610ef06124e4565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015610f3b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f5f9190614a49565b80610fee575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa158015610fb8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fdc9190614a49565b8015610fee5750610fee6107536124e4565b61100a5760405162461bcd60e51b81526004016109bc90614a66565b505b611016878961493b565b600060028251101561103a5760405162461bcd60e51b81526004016109bc90614ab5565b61108f61106e600084600186516110519190614b10565b8151811061106157611061614b23565b6020026020010151612fec565b8360008151811061108157611081614b23565b6020026020010151836124f3565b611097610e72565b156110b45760405162461bcd60e51b81526004016109bc90614911565b6110de8b6110c28b8d61493b565b6110cc8a8c61493b565b6110d6898b61493b565b600089612807565b505050505050505050505050565b6110f6878961493b565b805160020361112b5761110a6107536124e4565b6111265760405162461bcd60e51b81526004016109bc90614a05565b611270565b600061113682612fb1565b60c9549092506001600160a01b0316905063430c20816111546124e4565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa15801561119f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111c39190614a49565b80611252575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa15801561121c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112409190614a49565b801561125257506112526107536124e4565b61126e5760405162461bcd60e51b81526004016109bc90614a66565b505b61127a888a61493b565b8360028251101561129d5760405162461bcd60e51b81526004016109bc90614ab5565b6112b461106e600084600186516110519190614b10565b6112bc610e72565b156112d95760405162461bcd60e51b81526004016109bc90614911565b60028a146112f95760405162461bcd60e51b81526004016109bc90614b39565b6113228c6113078c8e61493b565b6113118b8d61493b565b61131b8a8c61493b565b8989612807565b50505050505050505050505050565b611339612df3565b60005b8151811015610dbc5761136782828151811061135a5761135a614b23565b6020026020010151612e6c565b8061137181614b7f565b91505061133c565b6113846107536124e4565b6113a05760405162461bcd60e51b81526004016109bc9061487c565b6001600160a01b0381166113f65760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016109bc565b6113ff816130a0565b6114076115e5565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610dbc573d6000803e3d6000fd5b611444612df3565b610dd060006130b8565b611456612df3565b60005b8151811015610dbc5761148482828151811061147757611477614b23565b60200260200101516130a0565b8061148e81614b7f565b915050611459565b6114a16107536124e4565b6114bd5760405162461bcd60e51b81526004016109bc9061487c565b6001600160a01b0381166113ff5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016109bc565b61151b612df3565b610dd061310a565b8282828080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525061156693508592508491506124f3565b61156e610e72565b1561158b5760405162461bcd60e51b81526004016109bc90614911565b606061159f87610ce988610ce489896126ca565b5050505050505050565b60009182526097602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6115dc612df3565b610d2f816130a0565b610dd06000805160206150738339815191526103fe6124e4565b611607612df3565b60c954604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906116399085908590600401614b98565b600060405180830381600087803b15801561165357600080fd5b505af1158015611667573d6000803e3d6000fd5b505060cb546001600160a01b0316159150610dbc90505760cb54604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906116b09085908590600401614b98565b600060405180830381600087803b1580156116ca57600080fd5b505af11580156116de573d6000803e3d6000fd5b505050505050565b6116ee612df3565b610d1983838080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250859250613172915050565b600061098f600080516020615073833981519152836115a9565b6117546107536124e4565b6117705760405162461bcd60e51b81526004016109bc9061487c565b60c9546040516000916001600160a01b0316906117939085908590602401614bc7565b60408051601f198184030181529181526020820180516001600160e01b0316635718c22560e11b179052516117c89190614c00565b6000604051808303816000865af19150503d8060008114611805576040519150601f19603f3d011682016040523d82523d6000602084013e61180a565b606091505b5050905080610d195760405162461bcd60e51b81526020600482015260166024820152751d5c19dc985919505b1b081b5bd8dac819985a5b195960521b60448201526064016109bc565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd6960208201529081018290526000906118a8906060015b6040516020818303038152906040528051906020012090565b5460ff1692915050565b6118ba612df3565b60ce80546001600160a01b0319166001600160a01b0392909216919091179055565b6118e4612df3565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e80546001600160a01b0319166001600160a01b03831617905550565b600054610100900460ff16158080156119415750600054600160ff909116105b8061195b5750303b15801561195b575060005460ff166001145b6119be5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016109bc565b6000805460ff1916600117905580156119e1576000805461ff0019166101001790555b60c980546001600160a01b03199081166001600160a01b038a81169190911790925560ca8054821689841617905560cb8054821688841617905560cc8054821687841617905560ce8054909116918516919091179055611a3f613292565b611a476132c9565b611a5082613302565b611a58613329565b6040805161036081018252600661032082018181526563727970746f60d01b610340840152825282518084018452818152651dd85b1b195d60d21b602082810191909152808401919091528351808501855260018152600f60fb1b8183015283850152835180850185526003808252621b999d60ea1b82840152606085019190915284518086018652600a815269313637b1b5b1b430b4b760b11b818401526080850152845180860186526007808252663134ba31b7b4b760c91b8285015260a0860191909152855180870187528281526207070760eb1b8185015260c0860152855180870187528281526264616f60e81b8185015260e086015285518087018752828152621e9a5b60ea1b8185015261010086015285518087018752908152663837b63cb3b7b760c91b8184015261012085015284518086018652600b81526a756e73746f707061626c6560a81b81840152610140850152845180860186528381526535b632bb32b960d11b8184015261016085015284518086018652600280825261686960f01b8285015261018086019190915285518087018752848152656b726573757360d01b818501526101a086015285518087018752600580825264616e696d6560d81b828601526101c087019190915286518088018852818152646d616e676160d81b818601526101e087015286518088018852600981526862696e616e6365757360b81b8186015261020087015286518088018852818152647265616c6d60d81b818601526102208701528651808801885291825261676f60f01b82850152610240860191909152855180870187526008815267185b1d1a5b5a5cdd60c21b818501526102608601528551808701875290815264707564677960d81b81840152610280850152845180860186528381526530bab9ba34b760d11b818401526102a08501528451808601865292835265189a5d19d95d60d21b838301526102c08401929092528351808501855291825262706f6760e81b828201526102e083019190915282518084019093526004835263636c617960e01b9083015261030081019190915260005b6019811015611da257611d90828260198110611d8457611d84614b23565b60200201516000613172565b80611d9a81614b7f565b915050611d66565b50611dc960405180604001604052806003815260200162636f6d60e81b8152506001613172565b508015610b35576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050505050565b8686868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250611e5b93508592508491506124f3565b611e63610e72565b15611e805760405162461bcd60e51b81526004016109bc90614911565b611eaf8a611e928b610ce48c8c6126ca565b611e9c888a61493b565b611ea6878961493b565b60006001612807565b5050505050505050505050565b611ec4612df3565b60005b81811015610d195760c9546001600160a01b03166350960239848484818110611ef257611ef2614b23565b9050602002016020810190611f07919061407a565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401600060405180830381600087803b158015611f4857600080fd5b505af1158015611f5c573d6000803e3d6000fd5b505050508080611f6b90614b7f565b915050611ec7565b600082815260976020526040902060010154611f8e81612d5b565b610d198383612e84565b611fa2898b61493b565b6000600282511015611fc65760405162461bcd60e51b81526004016109bc90614ab5565b611fdd61106e600084600186516110519190614b10565b611fe5610e72565b156120025760405162461bcd60e51b81526004016109bc90614911565b60028b146120225760405162461bcd60e51b81526004016109bc90614b39565b6120688d8d8d898960008a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061336992505050565b843410156120b85760405162461bcd60e51b815260206004820181905260248201527f4d696e74696e674d616e616765723a204e4f545f454e4f5547485f46554e445360448201526064016109bc565b6120ca8d8d8d8d8d8d8d8c6000613529565b84341115611322576120da6124e4565b6001600160a01b03166108fc6120f08734614b10565b6040518115909202916000818181858888f19350505050158015612118573d6000803e3d6000fd5b5050505050505050505050505050565b612130612df3565b612139816135e5565b6121555760405162461bcd60e51b81526004016109bc90614c1c565b600081815260cd6020526040812061216c91613ebc565b60405181907f0aa1aff0f830e739d86baf0e6624d6763da02f7733575e0e463886cd062dea6a90600090a250565b6121a2612df3565b6121ab8161360b565b610d2f600082613681565b6121c08a8c61493b565b60006002825110156121e45760405162461bcd60e51b81526004016109bc90614ab5565b6121fb61106e600084600186516110519190614b10565b612203610e72565b156122205760405162461bcd60e51b81526004016109bc90614911565b60028c146122405760405162461bcd60e51b81526004016109bc90614b39565b6122858e8e8e8a898b8a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061336992505050565b856001600160a01b03166323b872dd61229c6124e4565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152306024820152604481018890526064016020604051808303816000875af11580156122ef573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123139190614a49565b6123575760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b60448201526064016109bc565b6121188e8e8e8e8e8e8e8c8e613529565b612370612df3565b6040516370a0823160e01b81523060048201526000906001600160a01b038416906370a0823190602401602060405180830381865afa1580156123b7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123db9190614c5e565b60405163a9059cbb60e01b81526001600160a01b038481166004830152602482018390529192509084169063a9059cbb906044016020604051808303816000875af115801561242e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124529190614a49565b6124965760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b60448201526064016109bc565b604080516001600160a01b0384811682526020820184905285168183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a1505050565b60006124ee61368b565b905090565b6124fc836135e5565b6125185760405162461bcd60e51b81526004016109bc90614c1c565b600083815260cf602052604090205460ff1615156001600160401b0382161515146125945760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544c445f455850495241424c455f4d496044820152650a69a82a886960d31b60648201526084016109bc565b60006125c78360408051808201825260008082526020918201528151808301909252825182529182019181019190915290565b9050600a8160000151111561266f576125f26125e6826000600a6136d1565b80516020909101512090565b7fb551e0305c8163b812374b8e78b577c77f226f6f10c5ad03e52699578fbc34b80361266f5760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544f4b454e5f4c4142454c5f50524f4860448201526512509255115160d21b60648201526084016109bc565b61267883613710565b6126c45760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a204c4142454c5f494e56414c494400000060448201526064016109bc565b50505050565b606082826040516020016126df929190614c77565b604051602081830303815290604052905092915050565b604080516002808252606082810190935260009190816020015b6060815260200190600190039081612710579050509050828160008151811061273b5761273b614b23565b602002602001018190525060cd6000858152602001908152602001600020805461276490614c9f565b80601f016020809104026020016040519081016040528092919081815260200182805461279090614c9f565b80156127dd5780601f106127b2576101008083540402835291602001916127dd565b820191906000526020600020905b8154815290600101906020018083116127c057829003601f168201915b5050505050816001815181106127f5576127f5614b23565b60209081029190910101529392505050565b600080600061281588612fb1565b91509150838015612827575060028851115b80156128a9575060c9546040516331a9108f60e11b8152600481018390526001600160a01b038b8116921690636352211e90602401602060405180830381865afa158015612879573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061289d9190614cd9565b6001600160a01b031614155b156129095760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e616765723a20524556455253455f5245434f52445f4e60448201526913d517d0531313d5d15160b21b60648201526084016109bc565b60c954604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401602060405180830381865afa158015612952573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129769190614a49565b8015612a67575060c9546040516331a9108f60e11b81526004810184905230916001600160a01b031690636352211e90602401602060405180830381865afa1580156129c6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129ea9190614cd9565b6001600160a01b03161480612a67575060c95460405163d9548e5360e01b8152600481018490526001600160a01b039091169063d9548e5390602401602060405180830381865afa158015612a43573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612a679190614a49565b15612b58576001600160401b03851615612ae95760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b158015612ad057600080fd5b505af1158015612ae4573d6000803e3d6000fd5b505050505b60c954604051630fb8df0360e11b81526001600160a01b0390911690631f71be0690612b21908c908c908c908c908b90600401614d4b565b600060405180830381600087803b158015612b3b57600080fd5b505af1158015612b4f573d6000803e3d6000fd5b50505050612d4f565b612b6182613874565b612b6a886138d3565b8015612b77575087516002145b8015612b8a57506001600160401b038516155b15612c685760ca5488516001600160a01b039091169063c36c2125908b908b90600090612bb957612bb9614b23565b602090810291909101015160cc546040516001600160e01b031960e086901b168152612bf39392916001600160a01b031690600401614daa565b600060405180830381600087803b158015612c0d57600080fd5b505af1158015612c21573d6000803e3d6000fd5b50505050600087511115612c635760cc54604051633a0deb9d60e21b81526001600160a01b039091169063e837ae7490612b21908a908a908790600401614ddf565b612d4f565b60c95460405163ba5d40b760e01b81526001600160a01b039091169063ba5d40b790612ca0908c908c908c908c908b90600401614d4b565b600060405180830381600087803b158015612cba57600080fd5b505af1158015612cce573d6000803e3d6000fd5b505050506001600160401b03851615612d4f5760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b158015612d3657600080fd5b505af1158015612d4a573d6000803e3d6000fd5b505050505b50979650505050505050565b610d2f81612d676124e4565b61392d565b612d7682826115a9565b610dbc5760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19166001179055612daf6124e4565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b612dfb6124e4565b6001600160a01b0316612e166033546001600160a01b031690565b6001600160a01b031614610dd05760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016109bc565b610d2f60008051602061507383398151915282611f73565b612e8e82826115a9565b15610dbc5760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19169055612ec56124e4565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612f11610e72565b612f545760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881393d517d4105554d15160621b60448201526064016109bc565b600080516020615053833981519152805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa612f946124e4565b6040516001600160a01b03909116815260200160405180910390a1565b805160009081905b8015612fe657829150612fd28285611051600185614b10565b925080612fde81614e15565b915050612fb9565b50915091565b6000815160000361303f5760405162461bcd60e51b815260206004820152601b60248201527f4d696e74696e674d616e616765723a204c4142454c5f454d505459000000000060448201526064016109bc565b82826040516020016130519190614c00565b60405160208183030381529060405280519060200120604051602001613081929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b610d2f60008051602061507383398151915282613681565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b613112610e72565b1561312f5760405162461bcd60e51b81526004016109bc90614911565b600080516020615053833981519152805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258612f946124e4565b600061317f600084612fec565b600081815260cd6020526040902090915061319a8482614e72565b50600081815260cf602052604090819020805460ff19168415151790555181907f4fce6f6e172b04eaa80325d8e3b0180a34945000f3e214605039e8420fdf8980906131e79086906144c2565b60405180910390a260c954604051634f558e7960e01b8152600481018390526001600160a01b0390911690634f558e7990602401602060405180830381865afa158015613238573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061325c9190614a49565b610d195760c9546040516307befae360e51b81526001600160a01b039091169063f7df5c6090610b079084908790600401614f31565b600054610100900460ff166132b95760405162461bcd60e51b81526004016109bc90614f52565b610dd06132c46124e4565b6130b8565b600054610100900460ff166132f05760405162461bcd60e51b81526004016109bc90614f52565b610dd060006132fd6124e4565b613681565b600054610100900460ff166118e45760405162461bcd60e51b81526004016109bc90614f52565b600054610100900460ff166133505760405162461bcd60e51b81526004016109bc90614f52565b600080516020615053833981519152805460ff19169055565b600061337d613378878961493b565b612fb1565b506040516bffffffffffffffffffffffff1930606090811b821660208401524660348401528b811b82166054840152606883018490526001600160c01b031960c08a901b1660888401526090830188905286901b1660b08201529091506000906134599084906134539060c401604051602081830303815290604052805190602001206040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c8101829052600090605c01604051602081830303815290604052805190602001209050919050565b90613991565b90506134648161172f565b6134bc5760405162461bcd60e51b8152602060048201526024808201527f4d696e74696e674d616e616765723a205349474e45525f49535f4e4f545f4d49604482015263272a22a960e11b60648201526084016109bc565b42866001600160401b03161161351e5760405162461bcd60e51b815260206004820152602160248201527f4d696e74696e674d616e616765723a20455850495245445f5349474e415455526044820152604560f81b60648201526084016109bc565b505050505050505050565b60006135708a6135398a8c61493b565b613543898b61493b565b61354d888a61493b565b60008f6001600160a01b03166135616124e4565b6001600160a01b031614612807565b9050896001600160a01b03166135846124e4565b6001600160a01b0316827fa545b6fd3355e8d57f8c8147bafe740545bd3ea1f94bef2576a6d532a7c3b60586866040516135d19291909182526001600160a01b0316602082015260400190565b60405180910390a450505050505050505050565b600081815260cd60205260408120805482919061360190614c9f565b9050119050919050565b613613612df3565b6001600160a01b0381166136785760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016109bc565b610d2f816130b8565b610dbc8282612d6c565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546000906001600160a01b031633036136cc575060331936013560601c90565b503390565b604080518082019091526000808252602082015260405180604001604052808381526020018486602001516137069190614f9d565b9052949350505050565b6000815160000361372357506000919050565b60208201805160f81c60308110801590613741575060398160ff1611155b158015613763575060618160ff16101580156137615750607a8160ff1611155b155b15613772575060009392505050565b835160018111156137e0576137948361378c600184614b10565b015160f81c90565b915060308260ff16101580156137ae575060398260ff1611155b1580156137d0575060618260ff16101580156137ce5750607a8260ff1611155b155b156137e057506000949350505050565b60015b6137ee600183614b10565b811015613868578381015160f81c9250602d8314801590613824575060308360ff1610158015613822575060398360ff1611155b155b8015613845575060618360ff16101580156138435750607a8360ff1611155b155b156138565750600095945050505050565b8061386081614b7f565b9150506137e3565b50600195945050505050565b61387d81611854565b156138ca5760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a20544f4b454e5f424c4f434b454400000060448201526064016109bc565b610d2f816139b5565b6000806138ea600084600186516110519190614b10565b60ca549091506001600160a01b0316158015906139265750807f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f145b9392505050565b61393782826115a9565b610dbc5761394f816001600160a01b03166014613a39565b61395a836020613a39565b60405160200161396b929190614fb0565b60408051601f198184030181529082905262461bcd60e51b82526109bc916004016144c2565b60008060006139a08585613bd4565b915091506139ad81613c19565b509392505050565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd6960208201529081018290526001906139f49060600161188f565b805460ff19169115159190911790556040518181527f2ce5d9351b1d590d5a066db0d2dc7602d55f092506a83a7ee8c4d78ee357d75a9060200160405180910390a150565b60606000613a48836002615025565b613a53906002614f9d565b6001600160401b03811115613a6a57613a6a614279565b6040519080825280601f01601f191660200182016040528015613a94576020820181803683370190505b509050600360fc1b81600081518110613aaf57613aaf614b23565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110613ade57613ade614b23565b60200101906001600160f81b031916908160001a9053506000613b02846002615025565b613b0d906001614f9d565b90505b6001811115613b85576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110613b4157613b41614b23565b1a60f81b828281518110613b5757613b57614b23565b60200101906001600160f81b031916908160001a90535060049490941c93613b7e81614e15565b9050613b10565b5083156139265760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016109bc565b6000808251604103613c0a5760208301516040840151606085015160001a613bfe87828585613dcf565b94509450505050613c12565b506000905060025b9250929050565b6000816004811115613c2d57613c2d61503c565b03613c355750565b6001816004811115613c4957613c4961503c565b03613c965760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e6174757265000000000000000060448201526064016109bc565b6002816004811115613caa57613caa61503c565b03613cf75760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e6774680060448201526064016109bc565b6003816004811115613d0b57613d0b61503c565b03613d635760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b60648201526084016109bc565b6004816004811115613d7757613d7761503c565b03610d2f5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c604482015261756560f01b60648201526084016109bc565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613e065750600090506003613eb3565b8460ff16601b14158015613e1e57508460ff16601c14155b15613e2f5750600090506004613eb3565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613e83573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613eac57600060019250925050613eb3565b9150600090505b94509492505050565b508054613ec890614c9f565b6000825580601f10613ed8575050565b601f016020900490600052602060002090810190610d2f91905b80821115613f065760008155600101613ef2565b5090565b600060208284031215613f1c57600080fd5b81356001600160e01b03198116811461392657600080fd5b6001600160401b0381168114610d2f57600080fd5b8035613f5481613f34565b919050565b60008060408385031215613f6c57600080fd5b8235613f7781613f34565b946020939093013593505050565b600060208284031215613f9757600080fd5b5035919050565b60008083601f840112613fb057600080fd5b5081356001600160401b03811115613fc757600080fd5b602083019150836020828501011115613c1257600080fd5b600080600060408486031215613ff457600080fd5b8335925060208401356001600160401b0381111561401157600080fd5b61401d86828701613f9e565b9497909650939450505050565b6001600160a01b0381168114610d2f57600080fd5b8035613f548161402a565b6000806040838503121561405d57600080fd5b82359150602083013561406f8161402a565b809150509250929050565b60006020828403121561408c57600080fd5b81356139268161402a565b60008083601f8401126140a957600080fd5b5081356001600160401b038111156140c057600080fd5b6020830191508360208260051b8501011115613c1257600080fd5b8015158114610d2f57600080fd5b60008060008060008060008060a0898b03121561410557600080fd5b88356141108161402a565b975060208901356001600160401b038082111561412c57600080fd5b6141388c838d01614097565b909950975060408b013591508082111561415157600080fd5b61415d8c838d01614097565b909750955060608b013591508082111561417657600080fd5b506141838b828c01614097565b9094509250506080890135614197816140db565b809150509295985092959890939650565b600080600080600080600080600060c08a8c0312156141c657600080fd5b89356141d18161402a565b985060208a01356001600160401b03808211156141ed57600080fd5b6141f98d838e01614097565b909a50985060408c013591508082111561421257600080fd5b61421e8d838e01614097565b909850965060608c013591508082111561423757600080fd5b506142448c828d01614097565b90955093505060808a013561425881613f34565b915060a08a0135614268816140db565b809150509295985092959850929598565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b03811182821017156142b7576142b7614279565b604052919050565b60006001600160401b038211156142d8576142d8614279565b5060051b60200190565b600060208083850312156142f557600080fd5b82356001600160401b0381111561430b57600080fd5b8301601f8101851361431c57600080fd5b803561432f61432a826142bf565b61428f565b81815260059190911b8201830190838101908783111561434e57600080fd5b928401925b828410156143755783356143668161402a565b82529284019290840190614353565b979650505050505050565b6000806000806060858703121561439657600080fd5b84356143a18161402a565b93506020850135925060408501356001600160401b038111156143c357600080fd5b6143cf87828801613f9e565b95989497509550505050565b600080602083850312156143ee57600080fd5b82356001600160401b0381111561440457600080fd5b61441085828601613f9e565b90969095509350505050565b60008060006040848603121561443157600080fd5b83356001600160401b0381111561444757600080fd5b61445386828701613f9e565b9094509250506020840135614467816140db565b809150509250925092565b60005b8381101561448d578181015183820152602001614475565b50506000910152565b600081518084526144ae816020860160208601614472565b601f01601f19169290920160200192915050565b6020815260006139266020830184614496565b600080602083850312156144e857600080fd5b82356001600160401b038111156144fe57600080fd5b61441085828601614097565b60008060008060008060c0878903121561452357600080fd5b863561452e8161402a565b9550602087013561453e8161402a565b9450604087013561454e8161402a565b9350606087013561455e8161402a565b9250608087013561456e8161402a565b915060a087013561457e8161402a565b809150509295509295509295565b60008060008060008060008060a0898b0312156145a857600080fd5b88356145b38161402a565b97506020890135965060408901356001600160401b03808211156145d657600080fd5b6145e28c838d01613f9e565b909850965060608b01359150808211156145fb57600080fd5b6146078c838d01614097565b909650945060808b013591508082111561462057600080fd5b5061462d8b828c01614097565b999c989b5096995094979396929594505050565b600080600080600080600080600080600060e08c8e03121561466257600080fd5b61466b8c61403f565b9a506001600160401b038060208e0135111561468657600080fd5b6146968e60208f01358f01614097565b909b50995060408d01358110156146ac57600080fd5b6146bc8e60408f01358f01614097565b909950975060608d01358110156146d257600080fd5b6146e28e60608f01358f01614097565b90975095506146f360808e01613f49565b945060a08d013593508060c08e0135111561470d57600080fd5b5061471e8d60c08e01358e01613f9e565b81935080925050509295989b509295989b9093969950565b6000806000806000806000806000806000806101008d8f03121561475957600080fd5b6147628d61403f565b9b506001600160401b0360208e0135111561477c57600080fd5b61478c8e60208f01358f01614097565b909b5099506001600160401b0360408e013511156147a957600080fd5b6147b98e60408f01358f01614097565b90995097506001600160401b0360608e013511156147d657600080fd5b6147e68e60608f01358f01614097565b90975095506147f760808e01613f49565b945061480560a08e0161403f565b935060c08d013592506001600160401b0360e08e0135111561482657600080fd5b6148368e60e08f01358f01613f9e565b81935080925050509295989b509295989b509295989b565b6000806040838503121561486157600080fd5b823561486c8161402a565b9150602083013561406f8161402a565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b6000602082840312156148c357600080fd5b815161392681613f34565b60208082526023908201527f4d696e74696e674d616e616765723a20544f4b454e5f4e4f545f455850495241604082015262424c4560e81b606082015260800190565b60208082526010908201526f14185d5cd8589b194e8814105554d15160821b604082015260600190565b600061494961432a846142bf565b80848252602080830192508560051b85013681111561496757600080fd5b855b818110156149f95780356001600160401b03808211156149895760008081fd5b90880190601f368184011261499e5760008081fd5b8235828111156149b0576149b0614279565b6149c1818301601f1916880161428f565b925080835236878286010111156149da57600091508182fd5b8087850188850137600090830187015250865250938201938201614969565b50919695505050505050565b60208082526024908201527f4d696e74696e674d616e616765723a2043414c4c45525f49535f4e4f545f4d49604082015263272a22a960e11b606082015260800190565b600060208284031215614a5b57600080fd5b8151613926816140db565b6020808252602f908201527f4d696e74696e674d616e616765723a2053454e4445525f49535f4e4f545f415060408201526e282927ab22a22fa7a92fa7aba722a960891b606082015260800190565b60208082526025908201527f4d696e74696e674d616e616765723a204c4142454c535f4c454e4754485f42456040820152642627abaf9960d91b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b8181038181111561098f5761098f614afa565b634e487b7160e01b600052603260045260246000fd5b60208082526026908201527f4d696e74696e674d616e616765723a20535542444f4d41494e535f4e4f545f41604082015265131313d5d15160d21b606082015260800190565b600060018201614b9157614b91614afa565b5060010190565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b6020808252810182905260006001600160fb1b03831115614be757600080fd5b8260051b80856040850137919091016040019392505050565b60008251614c12818460208701614472565b9190910192915050565b60208082526022908201527f4d696e74696e674d616e616765723a20544c445f4e4f545f5245474953544552604082015261115160f21b606082015260800190565b600060208284031215614c7057600080fd5b5051919050565b6b756e732d646576746573742d60a01b81528183600c83013760009101600c01908152919050565b600181811c90821680614cb357607f821691505b602082108103614cd357634e487b7160e01b600052602260045260246000fd5b50919050565b600060208284031215614ceb57600080fd5b81516139268161402a565b600081518084526020808501808196508360051b8101915082860160005b85811015614d3e578284038952614d2c848351614496565b98850198935090840190600101614d14565b5091979650505050505050565b6001600160a01b038616815260a060208201819052600090614d6f90830187614cf6565b8281036040840152614d818187614cf6565b90508281036060840152614d958186614cf6565b91505082151560808301529695505050505050565b600060018060a01b03808616835260606020840152614dcc6060840186614496565b9150808416604084015250949350505050565b606081526000614df26060830186614cf6565b8281036020840152614e048186614cf6565b915050826040830152949350505050565b600081614e2457614e24614afa565b506000190190565b601f821115610d1957600081815260208120601f850160051c81016020861015614e535750805b601f850160051c820191505b818110156116de57828155600101614e5f565b81516001600160401b03811115614e8b57614e8b614279565b614e9f81614e998454614c9f565b84614e2c565b602080601f831160018114614ed45760008415614ebc5750858301515b600019600386901b1c1916600185901b1785556116de565b600085815260208120601f198616915b82811015614f0357888601518255948401946001909101908401614ee4565b5085821015614f215787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b828152604060208201526000614f4a6040830184614496565b949350505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b8082018082111561098f5761098f614afa565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351614fe8816017850160208801614472565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351615019816028840160208801614472565b01602801949350505050565b808202811582820484141761098f5761098f614afa565b634e487b7160e01b600052602160045260246000fdfe5496787fc1ebdfeba375028c1865f13fbb1d63c0caa356ccc1b29a80f3ebd6229f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000811000a"; + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "address"; + readonly name: "previousAdmin"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "address"; + readonly name: "newAdmin"; + readonly type: "address"; + }]; + readonly name: "AdminChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Blocked"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "BlocklistDisabled"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "BlocklistEnabled"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "sender"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "price"; + readonly type: "uint256"; + }, { + readonly indexed: false; + readonly internalType: "address"; + readonly name: "token"; + readonly type: "address"; + }]; + readonly name: "DomainPurchase"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "uint8"; + readonly name: "version"; + readonly type: "uint8"; + }]; + readonly name: "Initialized"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly indexed: false; + readonly internalType: "string"; + readonly name: "tld"; + readonly type: "string"; + }]; + readonly name: "NewTld"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "previousOwner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "newOwner"; + readonly type: "address"; + }]; + readonly name: "OwnershipTransferred"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "Paused"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "RemoveTld"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "previousAdminRole"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "newAdminRole"; + readonly type: "bytes32"; + }]; + readonly name: "RoleAdminChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "sender"; + readonly type: "address"; + }]; + readonly name: "RoleGranted"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "sender"; + readonly type: "address"; + }]; + readonly name: "RoleRevoked"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "Unpaused"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "implementation"; + readonly type: "address"; + }]; + readonly name: "Upgraded"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "address"; + readonly name: "recepient"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "value"; + readonly type: "uint256"; + }, { + readonly indexed: false; + readonly internalType: "address"; + readonly name: "token"; + readonly type: "address"; + }]; + readonly name: "Withdrawal"; + readonly type: "event"; + }, { + readonly inputs: readonly []; + readonly name: "DEFAULT_ADMIN_ROLE"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "MINTER_ROLE"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "NAME"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "VERSION"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "addMinter"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address[]"; + readonly name: "accounts"; + readonly type: "address[]"; + }]; + readonly name: "addMinters"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address[]"; + readonly name: "addrs"; + readonly type: "address[]"; + }]; + readonly name: "addProxyReaders"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "tld"; + readonly type: "string"; + }, { + readonly internalType: "bool"; + readonly name: "isExpirable"; + readonly type: "bool"; + }]; + readonly name: "addTld"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "string[]"; + readonly name: "labels"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }, { + readonly internalType: "uint64"; + readonly name: "expiry"; + readonly type: "uint64"; + }, { + readonly internalType: "uint256"; + readonly name: "price"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "buy"; + readonly outputs: readonly []; + readonly stateMutability: "payable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "string[]"; + readonly name: "labels"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }, { + readonly internalType: "uint64"; + readonly name: "expiry"; + readonly type: "uint64"; + }, { + readonly internalType: "address"; + readonly name: "token"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "price"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "buyForErc20"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tld"; + readonly type: "uint256"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }]; + readonly name: "claim"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tld"; + readonly type: "uint256"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }]; + readonly name: "claimTo"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tld"; + readonly type: "uint256"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }, { + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }]; + readonly name: "claimToWithRecords"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address payable"; + readonly name: "receiver"; + readonly type: "address"; + }]; + readonly name: "closeMinter"; + readonly outputs: readonly []; + readonly stateMutability: "payable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "cnsMintingController"; + readonly outputs: readonly [{ + readonly internalType: "contract IMintingController"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "cnsResolver"; + readonly outputs: readonly [{ + readonly internalType: "contract IResolver"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "cnsURIPrefixController"; + readonly outputs: readonly [{ + readonly internalType: "contract IURIPrefixController"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }]; + readonly name: "getRoleAdmin"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "grantRole"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "hasRole"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "contract IUNSRegistry"; + readonly name: "unsRegistry_"; + readonly type: "address"; + }, { + readonly internalType: "contract IMintingController"; + readonly name: "cnsMintingController_"; + readonly type: "address"; + }, { + readonly internalType: "contract IURIPrefixController"; + readonly name: "cnsURIPrefixController_"; + readonly type: "address"; + }, { + readonly internalType: "contract IResolver"; + readonly name: "cnsResolver_"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "unsOperator_"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "forwarder"; + readonly type: "address"; + }]; + readonly name: "initialize"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "isBlocked"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "isMinter"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "forwarder"; + readonly type: "address"; + }]; + readonly name: "isTrustedForwarder"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "string[]"; + readonly name: "labels"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }, { + readonly internalType: "uint64"; + readonly name: "expiry"; + readonly type: "uint64"; + }, { + readonly internalType: "bool"; + readonly name: "withReverse"; + readonly type: "bool"; + }]; + readonly name: "issueExpirableWithRecords"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "string[]"; + readonly name: "labels"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }, { + readonly internalType: "bool"; + readonly name: "withReverse"; + readonly type: "bool"; + }]; + readonly name: "issueWithRecords"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "owner"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "pause"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "paused"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "removeMinter"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address[]"; + readonly name: "accounts"; + readonly type: "address[]"; + }]; + readonly name: "removeMinters"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tld"; + readonly type: "uint256"; + }]; + readonly name: "removeTld"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint64"; + readonly name: "expiry"; + readonly type: "uint64"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "renew"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "renounceMinter"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "renounceOwnership"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "renounceRole"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "revoke"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "revokeRole"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address payable"; + readonly name: "receiver"; + readonly type: "address"; + }]; + readonly name: "rotateMinter"; + readonly outputs: readonly []; + readonly stateMutability: "payable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "forwarder"; + readonly type: "address"; + }]; + readonly name: "setForwarder"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly name: "setOperator"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "prefix"; + readonly type: "string"; + }]; + readonly name: "setTokenURIPrefix"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "newOwner"; + readonly type: "address"; + }]; + readonly name: "transferOwnership"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "unpause"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "unsOperator"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "unsRegistry"; + readonly outputs: readonly [{ + readonly internalType: "contract IUNSRegistry"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256[]"; + readonly name: "tokenIds"; + readonly type: "uint256[]"; + }]; + readonly name: "upgradeAll"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "recepient"; + readonly type: "address"; + }]; + readonly name: "withdraw"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "token"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "recepient"; + readonly type: "address"; + }]; + readonly name: "withdraw"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): MintingManagerMockInterface; + static connect(address: string, runner?: ContractRunner | null): MintingManagerMock; +} +export {}; +//# sourceMappingURL=MintingManagerMock__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/MintingManagerMock__factory.d.ts.map b/dist/types/factories/contracts/mocks/MintingManagerMock__factory.d.ts.map new file mode 100644 index 00000000..b0946702 --- /dev/null +++ b/dist/types/factories/contracts/mocks/MintingManagerMock__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"MintingManagerMock__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/mocks/MintingManagerMock__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,KAAK,EACV,kBAAkB,EAClB,2BAA2B,EAC5B,MAAM,6CAA6C,CAAC;AAqpCrD,aAAK,mCAAmC,GACpC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,2BAA4B,SAAQ,eAAe;gBAClD,GAAG,IAAI,EAAE,mCAAmC;IAQ/C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,2BAA2B;IAI5E,MAAM,CAAC,QAAQ,CAAC,QAAQ,s4wCAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,2BAA2B;IAGrD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,kBAAkB;CAGtB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/MintingManagerMock__factory.js b/dist/types/factories/contracts/mocks/MintingManagerMock__factory.js new file mode 100644 index 00000000..b624b911 --- /dev/null +++ b/dist/types/factories/contracts/mocks/MintingManagerMock__factory.js @@ -0,0 +1,1201 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.MintingManagerMock__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "previousAdmin", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "newAdmin", + type: "address", + }, + ], + name: "AdminChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Blocked", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "BlocklistDisabled", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "BlocklistEnabled", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + indexed: true, + internalType: "address", + name: "sender", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + indexed: false, + internalType: "address", + name: "token", + type: "address", + }, + ], + name: "DomainPurchase", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint8", + name: "version", + type: "uint8", + }, + ], + name: "Initialized", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + indexed: false, + internalType: "string", + name: "tld", + type: "string", + }, + ], + name: "NewTld", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "previousOwner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnershipTransferred", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "Paused", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "RemoveTld", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + indexed: true, + internalType: "bytes32", + name: "previousAdminRole", + type: "bytes32", + }, + { + indexed: true, + internalType: "bytes32", + name: "newAdminRole", + type: "bytes32", + }, + ], + name: "RoleAdminChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "RoleGranted", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "RoleRevoked", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "Unpaused", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "implementation", + type: "address", + }, + ], + name: "Upgraded", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "recepient", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "value", + type: "uint256", + }, + { + indexed: false, + internalType: "address", + name: "token", + type: "address", + }, + ], + name: "Withdrawal", + type: "event", + }, + { + inputs: [], + name: "DEFAULT_ADMIN_ROLE", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "MINTER_ROLE", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "NAME", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "VERSION", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "addMinter", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address[]", + name: "accounts", + type: "address[]", + }, + ], + name: "addMinters", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address[]", + name: "addrs", + type: "address[]", + }, + ], + name: "addProxyReaders", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "tld", + type: "string", + }, + { + internalType: "bool", + name: "isExpirable", + type: "bool", + }, + ], + name: "addTld", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "string[]", + name: "labels", + type: "string[]", + }, + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + { + internalType: "uint64", + name: "expiry", + type: "uint64", + }, + { + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "buy", + outputs: [], + stateMutability: "payable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "string[]", + name: "labels", + type: "string[]", + }, + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + { + internalType: "uint64", + name: "expiry", + type: "uint64", + }, + { + internalType: "address", + name: "token", + type: "address", + }, + { + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "buyForErc20", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tld", + type: "uint256", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + ], + name: "claim", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tld", + type: "uint256", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + ], + name: "claimTo", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tld", + type: "uint256", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + ], + name: "claimToWithRecords", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address payable", + name: "receiver", + type: "address", + }, + ], + name: "closeMinter", + outputs: [], + stateMutability: "payable", + type: "function", + }, + { + inputs: [], + name: "cnsMintingController", + outputs: [ + { + internalType: "contract IMintingController", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "cnsResolver", + outputs: [ + { + internalType: "contract IResolver", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "cnsURIPrefixController", + outputs: [ + { + internalType: "contract IURIPrefixController", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + ], + name: "getRoleAdmin", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "grantRole", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "hasRole", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "contract IUNSRegistry", + name: "unsRegistry_", + type: "address", + }, + { + internalType: "contract IMintingController", + name: "cnsMintingController_", + type: "address", + }, + { + internalType: "contract IURIPrefixController", + name: "cnsURIPrefixController_", + type: "address", + }, + { + internalType: "contract IResolver", + name: "cnsResolver_", + type: "address", + }, + { + internalType: "address", + name: "unsOperator_", + type: "address", + }, + { + internalType: "address", + name: "forwarder", + type: "address", + }, + ], + name: "initialize", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "isBlocked", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "isMinter", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "forwarder", + type: "address", + }, + ], + name: "isTrustedForwarder", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "string[]", + name: "labels", + type: "string[]", + }, + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + { + internalType: "uint64", + name: "expiry", + type: "uint64", + }, + { + internalType: "bool", + name: "withReverse", + type: "bool", + }, + ], + name: "issueExpirableWithRecords", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "string[]", + name: "labels", + type: "string[]", + }, + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + { + internalType: "bool", + name: "withReverse", + type: "bool", + }, + ], + name: "issueWithRecords", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + 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: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "removeMinter", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address[]", + name: "accounts", + type: "address[]", + }, + ], + name: "removeMinters", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tld", + type: "uint256", + }, + ], + name: "removeTld", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint64", + name: "expiry", + type: "uint64", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "renew", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "renounceMinter", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "renounceOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "renounceRole", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "revoke", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "revokeRole", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address payable", + name: "receiver", + type: "address", + }, + ], + name: "rotateMinter", + outputs: [], + stateMutability: "payable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "forwarder", + type: "address", + }, + ], + name: "setForwarder", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + name: "setOperator", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "prefix", + type: "string", + }, + ], + name: "setTokenURIPrefix", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "transferOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "unpause", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "unsOperator", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "unsRegistry", + outputs: [ + { + internalType: "contract IUNSRegistry", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256[]", + name: "tokenIds", + type: "uint256[]", + }, + ], + name: "upgradeAll", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "recepient", + type: "address", + }, + ], + name: "withdraw", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "token", + type: "address", + }, + { + internalType: "address", + name: "recepient", + type: "address", + }, + ], + name: "withdraw", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +const _bytecode = "0x608060405234801561001057600080fd5b5061509f806100206000396000f3fe6080604052600436106102c95760003560e01c806391d1485411610175578063b9998a24116100dc578063d547741f11610095578063f2fde38b1161006f578063f2fde38b146108cd578063f5243bc4146108ed578063f940e3851461090d578063ffa1ad741461092d57600080fd5b8063d547741f1461087a578063d7db74c71461089a578063ec527389146108ad57600080fd5b8063b9998a24146107b8578063cc2a9a5b146107d8578063cc2c3fc4146107f8578063ceeb4f5014610818578063d1f5692c14610838578063d53913931461085857600080fd5b8063a3f4df7e1161012e578063a3f4df7e146106cb578063a849d65c14610718578063aa271e1a14610738578063ae31844a14610758578063b0aa98c714610778578063b3ab15fb1461079857600080fd5b806391d1485414610621578063983b2d5614610641578063986502751461066157806399e0dd7c14610676578063a217fddf14610696578063a3a3f7f6146106ab57600080fd5b80635b6fa8db11610234578063715018a6116101ed57806381c81d35116101c757806381c81d35146105bb5780638456cb59146105ce5780638da5cb5b146105e3578063906cecc11461060157600080fd5b8063715018a61461056657806371e2a6571461057b57806377a2a5891461059b57600080fd5b80635b6fa8db146104be5780635c975abb146104de5780635cd7e3b3146104f35780635e22cd86146105135780635fc1964f14610533578063634486da1461055357600080fd5b80633092afd5116102865780633092afd5146103c357806336568abe146103e35780633f41b614146104035780633f4ba83a1461043b57806351cff8d914610450578063572b6c051461047057600080fd5b806301ffc9a7146102ce5780631edb948e1461030357806320c5429b14610325578063248a9ca314610345578063268b15ed146103835780632f2ff15d146103a3575b600080fd5b3480156102da57600080fd5b506102ee6102e9366004613f0a565b61095e565b60405190151581526020015b60405180910390f35b34801561030f57600080fd5b5061032361031e366004613f59565b610995565b005b34801561033157600080fd5b50610323610340366004613f85565b610b3e565b34801561035157600080fd5b50610375610360366004613f85565b60009081526097602052604090206001015490565b6040519081526020016102fa565b34801561038f57600080fd5b5061032361039e366004613fdf565b610c61565b3480156103af57600080fd5b506103236103be36600461404a565b610cf4565b3480156103cf57600080fd5b506103236103de36600461407a565b610d1e565b3480156103ef57600080fd5b506103236103fe36600461404a565b610d32565b34801561040f57600080fd5b5060c954610423906001600160a01b031681565b6040516001600160a01b0390911681526020016102fa565b34801561044757600080fd5b50610323610dc0565b34801561045c57600080fd5b5061032361046b36600461407a565b610dd2565b34801561047c57600080fd5b506102ee61048b36600461407a565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546001600160a01b0390811691161490565b3480156104ca57600080fd5b5060cc54610423906001600160a01b031681565b3480156104ea57600080fd5b506102ee610e72565b3480156104ff57600080fd5b5061032361050e3660046140e9565b610e88565b34801561051f57600080fd5b5061032361052e3660046141a8565b6110ec565b34801561053f57600080fd5b5061032361054e3660046142e2565b611331565b61032361056136600461407a565b611379565b34801561057257600080fd5b5061032361143c565b34801561058757600080fd5b506103236105963660046142e2565b61144e565b3480156105a757600080fd5b5060ce54610423906001600160a01b031681565b6103236105c936600461407a565b611496565b3480156105da57600080fd5b50610323611513565b3480156105ef57600080fd5b506033546001600160a01b0316610423565b34801561060d57600080fd5b5061032361061c366004614380565b611523565b34801561062d57600080fd5b506102ee61063c36600461404a565b6115a9565b34801561064d57600080fd5b5061032361065c36600461407a565b6115d4565b34801561066d57600080fd5b506103236115e5565b34801561068257600080fd5b506103236106913660046143db565b6115ff565b3480156106a257600080fd5b50610375600081565b3480156106b757600080fd5b506103236106c636600461441c565b6116e6565b3480156106d757600080fd5b5061070b604051806040016040528060148152602001732aa7299d1026b4b73a34b7339026b0b730b3b2b960611b81525081565b6040516102fa91906144c2565b34801561072457600080fd5b5060cb54610423906001600160a01b031681565b34801561074457600080fd5b506102ee61075336600461407a565b61172f565b34801561076457600080fd5b506103236107733660046144d5565b611749565b34801561078457600080fd5b506102ee610793366004613f85565b611854565b3480156107a457600080fd5b506103236107b336600461407a565b6118b2565b3480156107c457600080fd5b506103236107d336600461407a565b6118dc565b3480156107e457600080fd5b506103236107f336600461450a565b611921565b34801561080457600080fd5b5060ca54610423906001600160a01b031681565b34801561082457600080fd5b5061032361083336600461458c565b611e18565b34801561084457600080fd5b506103236108533660046144d5565b611ebc565b34801561086457600080fd5b5061037560008051602061507383398151915281565b34801561088657600080fd5b5061032361089536600461404a565b611f73565b6103236108a8366004614641565b611f98565b3480156108b957600080fd5b506103236108c8366004613f85565b612128565b3480156108d957600080fd5b506103236108e836600461407a565b61219a565b3480156108f957600080fd5b50610323610908366004614736565b6121b6565b34801561091957600080fd5b5061032361092836600461484e565b612368565b34801561093957600080fd5b5061070b60405180604001604052806005815260200164302e352e3160d81b81525081565b60006001600160e01b03198216637965db0b60e01b148061098f57506301ffc9a760e01b6001600160e01b03198316145b92915050565b6109a06107536124e4565b6109c55760405162461bcd60e51b81526004016109bc9061487c565b60405180910390fd5b60c95460405163baef73e960e01b8152600481018390526000916001600160a01b03169063baef73e990602401602060405180830381865afa158015610a0f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a3391906148b1565b9050806001600160401b0316600003610a5e5760405162461bcd60e51b81526004016109bc906148ce565b806001600160401b0316836001600160401b031611610acb5760405162461bcd60e51b815260206004820152602360248201527f4d696e74696e674d616e616765723a204558504952595f4e4f545f455854454e60448201526211115160ea1b60648201526084016109bc565b60c954604051631fb9763760e11b81526001600160401b0385166004820152602481018490526001600160a01b0390911690633f72ec6e906044015b600060405180830381600087803b158015610b2157600080fd5b505af1158015610b35573d6000803e3d6000fd5b50505050505050565b610b496107536124e4565b610b655760405162461bcd60e51b81526004016109bc9061487c565b60c95460405163baef73e960e01b8152600481018390526001600160a01b039091169063baef73e990602401602060405180830381865afa158015610bae573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bd291906148b1565b6001600160401b0316600003610bfa5760405162461bcd60e51b81526004016109bc906148ce565b60c954604051637eee288d60e01b8152306004820152602481018390526001600160a01b0390911690637eee288d90604401600060405180830381600087803b158015610c4657600080fd5b505af1158015610c5a573d6000803e3d6000fd5b5050505050565b8282828080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250610ca493508592508491506124f3565b610cac610e72565b15610cc95760405162461bcd60e51b81526004016109bc90614911565b6060610b35610cd66124e4565b610ce988610ce489896126ca565b6126f6565b838460006001612807565b600082815260976020526040902060010154610d0f81612d5b565b610d198383612d6c565b505050565b610d26612df3565b610d2f81612e6c565b50565b610d3a6124e4565b6001600160a01b0316816001600160a01b031614610db25760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084016109bc565b610dbc8282612e84565b5050565b610dc8612df3565b610dd0612f09565b565b610dda612df3565b6001600160a01b038116610ded57600080fd5b60405147906001600160a01b0383169082156108fc029083906000818181858888f19350505050158015610e25573d6000803e3d6000fd5b50604080516001600160a01b03841681526020810183905260008183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a15050565b6000805160206150538339815191525460ff1690565b610e92868861493b565b8051600203610ec757610ea66107536124e4565b610ec25760405162461bcd60e51b81526004016109bc90614a05565b61100c565b6000610ed282612fb1565b60c9549092506001600160a01b0316905063430c2081610ef06124e4565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015610f3b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f5f9190614a49565b80610fee575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa158015610fb8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fdc9190614a49565b8015610fee5750610fee6107536124e4565b61100a5760405162461bcd60e51b81526004016109bc90614a66565b505b611016878961493b565b600060028251101561103a5760405162461bcd60e51b81526004016109bc90614ab5565b61108f61106e600084600186516110519190614b10565b8151811061106157611061614b23565b6020026020010151612fec565b8360008151811061108157611081614b23565b6020026020010151836124f3565b611097610e72565b156110b45760405162461bcd60e51b81526004016109bc90614911565b6110de8b6110c28b8d61493b565b6110cc8a8c61493b565b6110d6898b61493b565b600089612807565b505050505050505050505050565b6110f6878961493b565b805160020361112b5761110a6107536124e4565b6111265760405162461bcd60e51b81526004016109bc90614a05565b611270565b600061113682612fb1565b60c9549092506001600160a01b0316905063430c20816111546124e4565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa15801561119f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111c39190614a49565b80611252575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa15801561121c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112409190614a49565b801561125257506112526107536124e4565b61126e5760405162461bcd60e51b81526004016109bc90614a66565b505b61127a888a61493b565b8360028251101561129d5760405162461bcd60e51b81526004016109bc90614ab5565b6112b461106e600084600186516110519190614b10565b6112bc610e72565b156112d95760405162461bcd60e51b81526004016109bc90614911565b60028a146112f95760405162461bcd60e51b81526004016109bc90614b39565b6113228c6113078c8e61493b565b6113118b8d61493b565b61131b8a8c61493b565b8989612807565b50505050505050505050505050565b611339612df3565b60005b8151811015610dbc5761136782828151811061135a5761135a614b23565b6020026020010151612e6c565b8061137181614b7f565b91505061133c565b6113846107536124e4565b6113a05760405162461bcd60e51b81526004016109bc9061487c565b6001600160a01b0381166113f65760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016109bc565b6113ff816130a0565b6114076115e5565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610dbc573d6000803e3d6000fd5b611444612df3565b610dd060006130b8565b611456612df3565b60005b8151811015610dbc5761148482828151811061147757611477614b23565b60200260200101516130a0565b8061148e81614b7f565b915050611459565b6114a16107536124e4565b6114bd5760405162461bcd60e51b81526004016109bc9061487c565b6001600160a01b0381166113ff5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016109bc565b61151b612df3565b610dd061310a565b8282828080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525061156693508592508491506124f3565b61156e610e72565b1561158b5760405162461bcd60e51b81526004016109bc90614911565b606061159f87610ce988610ce489896126ca565b5050505050505050565b60009182526097602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6115dc612df3565b610d2f816130a0565b610dd06000805160206150738339815191526103fe6124e4565b611607612df3565b60c954604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906116399085908590600401614b98565b600060405180830381600087803b15801561165357600080fd5b505af1158015611667573d6000803e3d6000fd5b505060cb546001600160a01b0316159150610dbc90505760cb54604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906116b09085908590600401614b98565b600060405180830381600087803b1580156116ca57600080fd5b505af11580156116de573d6000803e3d6000fd5b505050505050565b6116ee612df3565b610d1983838080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250859250613172915050565b600061098f600080516020615073833981519152836115a9565b6117546107536124e4565b6117705760405162461bcd60e51b81526004016109bc9061487c565b60c9546040516000916001600160a01b0316906117939085908590602401614bc7565b60408051601f198184030181529181526020820180516001600160e01b0316635718c22560e11b179052516117c89190614c00565b6000604051808303816000865af19150503d8060008114611805576040519150601f19603f3d011682016040523d82523d6000602084013e61180a565b606091505b5050905080610d195760405162461bcd60e51b81526020600482015260166024820152751d5c19dc985919505b1b081b5bd8dac819985a5b195960521b60448201526064016109bc565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd6960208201529081018290526000906118a8906060015b6040516020818303038152906040528051906020012090565b5460ff1692915050565b6118ba612df3565b60ce80546001600160a01b0319166001600160a01b0392909216919091179055565b6118e4612df3565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e80546001600160a01b0319166001600160a01b03831617905550565b600054610100900460ff16158080156119415750600054600160ff909116105b8061195b5750303b15801561195b575060005460ff166001145b6119be5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016109bc565b6000805460ff1916600117905580156119e1576000805461ff0019166101001790555b60c980546001600160a01b03199081166001600160a01b038a81169190911790925560ca8054821689841617905560cb8054821688841617905560cc8054821687841617905560ce8054909116918516919091179055611a3f613292565b611a476132c9565b611a5082613302565b611a58613329565b6040805161036081018252600661032082018181526563727970746f60d01b610340840152825282518084018452818152651dd85b1b195d60d21b602082810191909152808401919091528351808501855260018152600f60fb1b8183015283850152835180850185526003808252621b999d60ea1b82840152606085019190915284518086018652600a815269313637b1b5b1b430b4b760b11b818401526080850152845180860186526007808252663134ba31b7b4b760c91b8285015260a0860191909152855180870187528281526207070760eb1b8185015260c0860152855180870187528281526264616f60e81b8185015260e086015285518087018752828152621e9a5b60ea1b8185015261010086015285518087018752908152663837b63cb3b7b760c91b8184015261012085015284518086018652600b81526a756e73746f707061626c6560a81b81840152610140850152845180860186528381526535b632bb32b960d11b8184015261016085015284518086018652600280825261686960f01b8285015261018086019190915285518087018752848152656b726573757360d01b818501526101a086015285518087018752600580825264616e696d6560d81b828601526101c087019190915286518088018852818152646d616e676160d81b818601526101e087015286518088018852600981526862696e616e6365757360b81b8186015261020087015286518088018852818152647265616c6d60d81b818601526102208701528651808801885291825261676f60f01b82850152610240860191909152855180870187526008815267185b1d1a5b5a5cdd60c21b818501526102608601528551808701875290815264707564677960d81b81840152610280850152845180860186528381526530bab9ba34b760d11b818401526102a08501528451808601865292835265189a5d19d95d60d21b838301526102c08401929092528351808501855291825262706f6760e81b828201526102e083019190915282518084019093526004835263636c617960e01b9083015261030081019190915260005b6019811015611da257611d90828260198110611d8457611d84614b23565b60200201516000613172565b80611d9a81614b7f565b915050611d66565b50611dc960405180604001604052806003815260200162636f6d60e81b8152506001613172565b508015610b35576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050505050565b8686868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250611e5b93508592508491506124f3565b611e63610e72565b15611e805760405162461bcd60e51b81526004016109bc90614911565b611eaf8a611e928b610ce48c8c6126ca565b611e9c888a61493b565b611ea6878961493b565b60006001612807565b5050505050505050505050565b611ec4612df3565b60005b81811015610d195760c9546001600160a01b03166350960239848484818110611ef257611ef2614b23565b9050602002016020810190611f07919061407a565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401600060405180830381600087803b158015611f4857600080fd5b505af1158015611f5c573d6000803e3d6000fd5b505050508080611f6b90614b7f565b915050611ec7565b600082815260976020526040902060010154611f8e81612d5b565b610d198383612e84565b611fa2898b61493b565b6000600282511015611fc65760405162461bcd60e51b81526004016109bc90614ab5565b611fdd61106e600084600186516110519190614b10565b611fe5610e72565b156120025760405162461bcd60e51b81526004016109bc90614911565b60028b146120225760405162461bcd60e51b81526004016109bc90614b39565b6120688d8d8d898960008a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061336992505050565b843410156120b85760405162461bcd60e51b815260206004820181905260248201527f4d696e74696e674d616e616765723a204e4f545f454e4f5547485f46554e445360448201526064016109bc565b6120ca8d8d8d8d8d8d8d8c6000613529565b84341115611322576120da6124e4565b6001600160a01b03166108fc6120f08734614b10565b6040518115909202916000818181858888f19350505050158015612118573d6000803e3d6000fd5b5050505050505050505050505050565b612130612df3565b612139816135e5565b6121555760405162461bcd60e51b81526004016109bc90614c1c565b600081815260cd6020526040812061216c91613ebc565b60405181907f0aa1aff0f830e739d86baf0e6624d6763da02f7733575e0e463886cd062dea6a90600090a250565b6121a2612df3565b6121ab8161360b565b610d2f600082613681565b6121c08a8c61493b565b60006002825110156121e45760405162461bcd60e51b81526004016109bc90614ab5565b6121fb61106e600084600186516110519190614b10565b612203610e72565b156122205760405162461bcd60e51b81526004016109bc90614911565b60028c146122405760405162461bcd60e51b81526004016109bc90614b39565b6122858e8e8e8a898b8a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061336992505050565b856001600160a01b03166323b872dd61229c6124e4565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152306024820152604481018890526064016020604051808303816000875af11580156122ef573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123139190614a49565b6123575760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b60448201526064016109bc565b6121188e8e8e8e8e8e8e8c8e613529565b612370612df3565b6040516370a0823160e01b81523060048201526000906001600160a01b038416906370a0823190602401602060405180830381865afa1580156123b7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123db9190614c5e565b60405163a9059cbb60e01b81526001600160a01b038481166004830152602482018390529192509084169063a9059cbb906044016020604051808303816000875af115801561242e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124529190614a49565b6124965760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b60448201526064016109bc565b604080516001600160a01b0384811682526020820184905285168183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a1505050565b60006124ee61368b565b905090565b6124fc836135e5565b6125185760405162461bcd60e51b81526004016109bc90614c1c565b600083815260cf602052604090205460ff1615156001600160401b0382161515146125945760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544c445f455850495241424c455f4d496044820152650a69a82a886960d31b60648201526084016109bc565b60006125c78360408051808201825260008082526020918201528151808301909252825182529182019181019190915290565b9050600a8160000151111561266f576125f26125e6826000600a6136d1565b80516020909101512090565b7fb551e0305c8163b812374b8e78b577c77f226f6f10c5ad03e52699578fbc34b80361266f5760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544f4b454e5f4c4142454c5f50524f4860448201526512509255115160d21b60648201526084016109bc565b61267883613710565b6126c45760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a204c4142454c5f494e56414c494400000060448201526064016109bc565b50505050565b606082826040516020016126df929190614c77565b604051602081830303815290604052905092915050565b604080516002808252606082810190935260009190816020015b6060815260200190600190039081612710579050509050828160008151811061273b5761273b614b23565b602002602001018190525060cd6000858152602001908152602001600020805461276490614c9f565b80601f016020809104026020016040519081016040528092919081815260200182805461279090614c9f565b80156127dd5780601f106127b2576101008083540402835291602001916127dd565b820191906000526020600020905b8154815290600101906020018083116127c057829003601f168201915b5050505050816001815181106127f5576127f5614b23565b60209081029190910101529392505050565b600080600061281588612fb1565b91509150838015612827575060028851115b80156128a9575060c9546040516331a9108f60e11b8152600481018390526001600160a01b038b8116921690636352211e90602401602060405180830381865afa158015612879573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061289d9190614cd9565b6001600160a01b031614155b156129095760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e616765723a20524556455253455f5245434f52445f4e60448201526913d517d0531313d5d15160b21b60648201526084016109bc565b60c954604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401602060405180830381865afa158015612952573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129769190614a49565b8015612a67575060c9546040516331a9108f60e11b81526004810184905230916001600160a01b031690636352211e90602401602060405180830381865afa1580156129c6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129ea9190614cd9565b6001600160a01b03161480612a67575060c95460405163d9548e5360e01b8152600481018490526001600160a01b039091169063d9548e5390602401602060405180830381865afa158015612a43573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612a679190614a49565b15612b58576001600160401b03851615612ae95760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b158015612ad057600080fd5b505af1158015612ae4573d6000803e3d6000fd5b505050505b60c954604051630fb8df0360e11b81526001600160a01b0390911690631f71be0690612b21908c908c908c908c908b90600401614d4b565b600060405180830381600087803b158015612b3b57600080fd5b505af1158015612b4f573d6000803e3d6000fd5b50505050612d4f565b612b6182613874565b612b6a886138d3565b8015612b77575087516002145b8015612b8a57506001600160401b038516155b15612c685760ca5488516001600160a01b039091169063c36c2125908b908b90600090612bb957612bb9614b23565b602090810291909101015160cc546040516001600160e01b031960e086901b168152612bf39392916001600160a01b031690600401614daa565b600060405180830381600087803b158015612c0d57600080fd5b505af1158015612c21573d6000803e3d6000fd5b50505050600087511115612c635760cc54604051633a0deb9d60e21b81526001600160a01b039091169063e837ae7490612b21908a908a908790600401614ddf565b612d4f565b60c95460405163ba5d40b760e01b81526001600160a01b039091169063ba5d40b790612ca0908c908c908c908c908b90600401614d4b565b600060405180830381600087803b158015612cba57600080fd5b505af1158015612cce573d6000803e3d6000fd5b505050506001600160401b03851615612d4f5760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b158015612d3657600080fd5b505af1158015612d4a573d6000803e3d6000fd5b505050505b50979650505050505050565b610d2f81612d676124e4565b61392d565b612d7682826115a9565b610dbc5760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19166001179055612daf6124e4565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b612dfb6124e4565b6001600160a01b0316612e166033546001600160a01b031690565b6001600160a01b031614610dd05760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016109bc565b610d2f60008051602061507383398151915282611f73565b612e8e82826115a9565b15610dbc5760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19169055612ec56124e4565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612f11610e72565b612f545760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881393d517d4105554d15160621b60448201526064016109bc565b600080516020615053833981519152805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa612f946124e4565b6040516001600160a01b03909116815260200160405180910390a1565b805160009081905b8015612fe657829150612fd28285611051600185614b10565b925080612fde81614e15565b915050612fb9565b50915091565b6000815160000361303f5760405162461bcd60e51b815260206004820152601b60248201527f4d696e74696e674d616e616765723a204c4142454c5f454d505459000000000060448201526064016109bc565b82826040516020016130519190614c00565b60405160208183030381529060405280519060200120604051602001613081929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b610d2f60008051602061507383398151915282613681565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b613112610e72565b1561312f5760405162461bcd60e51b81526004016109bc90614911565b600080516020615053833981519152805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258612f946124e4565b600061317f600084612fec565b600081815260cd6020526040902090915061319a8482614e72565b50600081815260cf602052604090819020805460ff19168415151790555181907f4fce6f6e172b04eaa80325d8e3b0180a34945000f3e214605039e8420fdf8980906131e79086906144c2565b60405180910390a260c954604051634f558e7960e01b8152600481018390526001600160a01b0390911690634f558e7990602401602060405180830381865afa158015613238573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061325c9190614a49565b610d195760c9546040516307befae360e51b81526001600160a01b039091169063f7df5c6090610b079084908790600401614f31565b600054610100900460ff166132b95760405162461bcd60e51b81526004016109bc90614f52565b610dd06132c46124e4565b6130b8565b600054610100900460ff166132f05760405162461bcd60e51b81526004016109bc90614f52565b610dd060006132fd6124e4565b613681565b600054610100900460ff166118e45760405162461bcd60e51b81526004016109bc90614f52565b600054610100900460ff166133505760405162461bcd60e51b81526004016109bc90614f52565b600080516020615053833981519152805460ff19169055565b600061337d613378878961493b565b612fb1565b506040516bffffffffffffffffffffffff1930606090811b821660208401524660348401528b811b82166054840152606883018490526001600160c01b031960c08a901b1660888401526090830188905286901b1660b08201529091506000906134599084906134539060c401604051602081830303815290604052805190602001206040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c8101829052600090605c01604051602081830303815290604052805190602001209050919050565b90613991565b90506134648161172f565b6134bc5760405162461bcd60e51b8152602060048201526024808201527f4d696e74696e674d616e616765723a205349474e45525f49535f4e4f545f4d49604482015263272a22a960e11b60648201526084016109bc565b42866001600160401b03161161351e5760405162461bcd60e51b815260206004820152602160248201527f4d696e74696e674d616e616765723a20455850495245445f5349474e415455526044820152604560f81b60648201526084016109bc565b505050505050505050565b60006135708a6135398a8c61493b565b613543898b61493b565b61354d888a61493b565b60008f6001600160a01b03166135616124e4565b6001600160a01b031614612807565b9050896001600160a01b03166135846124e4565b6001600160a01b0316827fa545b6fd3355e8d57f8c8147bafe740545bd3ea1f94bef2576a6d532a7c3b60586866040516135d19291909182526001600160a01b0316602082015260400190565b60405180910390a450505050505050505050565b600081815260cd60205260408120805482919061360190614c9f565b9050119050919050565b613613612df3565b6001600160a01b0381166136785760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016109bc565b610d2f816130b8565b610dbc8282612d6c565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546000906001600160a01b031633036136cc575060331936013560601c90565b503390565b604080518082019091526000808252602082015260405180604001604052808381526020018486602001516137069190614f9d565b9052949350505050565b6000815160000361372357506000919050565b60208201805160f81c60308110801590613741575060398160ff1611155b158015613763575060618160ff16101580156137615750607a8160ff1611155b155b15613772575060009392505050565b835160018111156137e0576137948361378c600184614b10565b015160f81c90565b915060308260ff16101580156137ae575060398260ff1611155b1580156137d0575060618260ff16101580156137ce5750607a8260ff1611155b155b156137e057506000949350505050565b60015b6137ee600183614b10565b811015613868578381015160f81c9250602d8314801590613824575060308360ff1610158015613822575060398360ff1611155b155b8015613845575060618360ff16101580156138435750607a8360ff1611155b155b156138565750600095945050505050565b8061386081614b7f565b9150506137e3565b50600195945050505050565b61387d81611854565b156138ca5760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a20544f4b454e5f424c4f434b454400000060448201526064016109bc565b610d2f816139b5565b6000806138ea600084600186516110519190614b10565b60ca549091506001600160a01b0316158015906139265750807f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f145b9392505050565b61393782826115a9565b610dbc5761394f816001600160a01b03166014613a39565b61395a836020613a39565b60405160200161396b929190614fb0565b60408051601f198184030181529082905262461bcd60e51b82526109bc916004016144c2565b60008060006139a08585613bd4565b915091506139ad81613c19565b509392505050565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd6960208201529081018290526001906139f49060600161188f565b805460ff19169115159190911790556040518181527f2ce5d9351b1d590d5a066db0d2dc7602d55f092506a83a7ee8c4d78ee357d75a9060200160405180910390a150565b60606000613a48836002615025565b613a53906002614f9d565b6001600160401b03811115613a6a57613a6a614279565b6040519080825280601f01601f191660200182016040528015613a94576020820181803683370190505b509050600360fc1b81600081518110613aaf57613aaf614b23565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110613ade57613ade614b23565b60200101906001600160f81b031916908160001a9053506000613b02846002615025565b613b0d906001614f9d565b90505b6001811115613b85576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110613b4157613b41614b23565b1a60f81b828281518110613b5757613b57614b23565b60200101906001600160f81b031916908160001a90535060049490941c93613b7e81614e15565b9050613b10565b5083156139265760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016109bc565b6000808251604103613c0a5760208301516040840151606085015160001a613bfe87828585613dcf565b94509450505050613c12565b506000905060025b9250929050565b6000816004811115613c2d57613c2d61503c565b03613c355750565b6001816004811115613c4957613c4961503c565b03613c965760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e6174757265000000000000000060448201526064016109bc565b6002816004811115613caa57613caa61503c565b03613cf75760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e6774680060448201526064016109bc565b6003816004811115613d0b57613d0b61503c565b03613d635760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b60648201526084016109bc565b6004816004811115613d7757613d7761503c565b03610d2f5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c604482015261756560f01b60648201526084016109bc565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613e065750600090506003613eb3565b8460ff16601b14158015613e1e57508460ff16601c14155b15613e2f5750600090506004613eb3565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613e83573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613eac57600060019250925050613eb3565b9150600090505b94509492505050565b508054613ec890614c9f565b6000825580601f10613ed8575050565b601f016020900490600052602060002090810190610d2f91905b80821115613f065760008155600101613ef2565b5090565b600060208284031215613f1c57600080fd5b81356001600160e01b03198116811461392657600080fd5b6001600160401b0381168114610d2f57600080fd5b8035613f5481613f34565b919050565b60008060408385031215613f6c57600080fd5b8235613f7781613f34565b946020939093013593505050565b600060208284031215613f9757600080fd5b5035919050565b60008083601f840112613fb057600080fd5b5081356001600160401b03811115613fc757600080fd5b602083019150836020828501011115613c1257600080fd5b600080600060408486031215613ff457600080fd5b8335925060208401356001600160401b0381111561401157600080fd5b61401d86828701613f9e565b9497909650939450505050565b6001600160a01b0381168114610d2f57600080fd5b8035613f548161402a565b6000806040838503121561405d57600080fd5b82359150602083013561406f8161402a565b809150509250929050565b60006020828403121561408c57600080fd5b81356139268161402a565b60008083601f8401126140a957600080fd5b5081356001600160401b038111156140c057600080fd5b6020830191508360208260051b8501011115613c1257600080fd5b8015158114610d2f57600080fd5b60008060008060008060008060a0898b03121561410557600080fd5b88356141108161402a565b975060208901356001600160401b038082111561412c57600080fd5b6141388c838d01614097565b909950975060408b013591508082111561415157600080fd5b61415d8c838d01614097565b909750955060608b013591508082111561417657600080fd5b506141838b828c01614097565b9094509250506080890135614197816140db565b809150509295985092959890939650565b600080600080600080600080600060c08a8c0312156141c657600080fd5b89356141d18161402a565b985060208a01356001600160401b03808211156141ed57600080fd5b6141f98d838e01614097565b909a50985060408c013591508082111561421257600080fd5b61421e8d838e01614097565b909850965060608c013591508082111561423757600080fd5b506142448c828d01614097565b90955093505060808a013561425881613f34565b915060a08a0135614268816140db565b809150509295985092959850929598565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b03811182821017156142b7576142b7614279565b604052919050565b60006001600160401b038211156142d8576142d8614279565b5060051b60200190565b600060208083850312156142f557600080fd5b82356001600160401b0381111561430b57600080fd5b8301601f8101851361431c57600080fd5b803561432f61432a826142bf565b61428f565b81815260059190911b8201830190838101908783111561434e57600080fd5b928401925b828410156143755783356143668161402a565b82529284019290840190614353565b979650505050505050565b6000806000806060858703121561439657600080fd5b84356143a18161402a565b93506020850135925060408501356001600160401b038111156143c357600080fd5b6143cf87828801613f9e565b95989497509550505050565b600080602083850312156143ee57600080fd5b82356001600160401b0381111561440457600080fd5b61441085828601613f9e565b90969095509350505050565b60008060006040848603121561443157600080fd5b83356001600160401b0381111561444757600080fd5b61445386828701613f9e565b9094509250506020840135614467816140db565b809150509250925092565b60005b8381101561448d578181015183820152602001614475565b50506000910152565b600081518084526144ae816020860160208601614472565b601f01601f19169290920160200192915050565b6020815260006139266020830184614496565b600080602083850312156144e857600080fd5b82356001600160401b038111156144fe57600080fd5b61441085828601614097565b60008060008060008060c0878903121561452357600080fd5b863561452e8161402a565b9550602087013561453e8161402a565b9450604087013561454e8161402a565b9350606087013561455e8161402a565b9250608087013561456e8161402a565b915060a087013561457e8161402a565b809150509295509295509295565b60008060008060008060008060a0898b0312156145a857600080fd5b88356145b38161402a565b97506020890135965060408901356001600160401b03808211156145d657600080fd5b6145e28c838d01613f9e565b909850965060608b01359150808211156145fb57600080fd5b6146078c838d01614097565b909650945060808b013591508082111561462057600080fd5b5061462d8b828c01614097565b999c989b5096995094979396929594505050565b600080600080600080600080600080600060e08c8e03121561466257600080fd5b61466b8c61403f565b9a506001600160401b038060208e0135111561468657600080fd5b6146968e60208f01358f01614097565b909b50995060408d01358110156146ac57600080fd5b6146bc8e60408f01358f01614097565b909950975060608d01358110156146d257600080fd5b6146e28e60608f01358f01614097565b90975095506146f360808e01613f49565b945060a08d013593508060c08e0135111561470d57600080fd5b5061471e8d60c08e01358e01613f9e565b81935080925050509295989b509295989b9093969950565b6000806000806000806000806000806000806101008d8f03121561475957600080fd5b6147628d61403f565b9b506001600160401b0360208e0135111561477c57600080fd5b61478c8e60208f01358f01614097565b909b5099506001600160401b0360408e013511156147a957600080fd5b6147b98e60408f01358f01614097565b90995097506001600160401b0360608e013511156147d657600080fd5b6147e68e60608f01358f01614097565b90975095506147f760808e01613f49565b945061480560a08e0161403f565b935060c08d013592506001600160401b0360e08e0135111561482657600080fd5b6148368e60e08f01358f01613f9e565b81935080925050509295989b509295989b509295989b565b6000806040838503121561486157600080fd5b823561486c8161402a565b9150602083013561406f8161402a565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b6000602082840312156148c357600080fd5b815161392681613f34565b60208082526023908201527f4d696e74696e674d616e616765723a20544f4b454e5f4e4f545f455850495241604082015262424c4560e81b606082015260800190565b60208082526010908201526f14185d5cd8589b194e8814105554d15160821b604082015260600190565b600061494961432a846142bf565b80848252602080830192508560051b85013681111561496757600080fd5b855b818110156149f95780356001600160401b03808211156149895760008081fd5b90880190601f368184011261499e5760008081fd5b8235828111156149b0576149b0614279565b6149c1818301601f1916880161428f565b925080835236878286010111156149da57600091508182fd5b8087850188850137600090830187015250865250938201938201614969565b50919695505050505050565b60208082526024908201527f4d696e74696e674d616e616765723a2043414c4c45525f49535f4e4f545f4d49604082015263272a22a960e11b606082015260800190565b600060208284031215614a5b57600080fd5b8151613926816140db565b6020808252602f908201527f4d696e74696e674d616e616765723a2053454e4445525f49535f4e4f545f415060408201526e282927ab22a22fa7a92fa7aba722a960891b606082015260800190565b60208082526025908201527f4d696e74696e674d616e616765723a204c4142454c535f4c454e4754485f42456040820152642627abaf9960d91b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b8181038181111561098f5761098f614afa565b634e487b7160e01b600052603260045260246000fd5b60208082526026908201527f4d696e74696e674d616e616765723a20535542444f4d41494e535f4e4f545f41604082015265131313d5d15160d21b606082015260800190565b600060018201614b9157614b91614afa565b5060010190565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b6020808252810182905260006001600160fb1b03831115614be757600080fd5b8260051b80856040850137919091016040019392505050565b60008251614c12818460208701614472565b9190910192915050565b60208082526022908201527f4d696e74696e674d616e616765723a20544c445f4e4f545f5245474953544552604082015261115160f21b606082015260800190565b600060208284031215614c7057600080fd5b5051919050565b6b756e732d646576746573742d60a01b81528183600c83013760009101600c01908152919050565b600181811c90821680614cb357607f821691505b602082108103614cd357634e487b7160e01b600052602260045260246000fd5b50919050565b600060208284031215614ceb57600080fd5b81516139268161402a565b600081518084526020808501808196508360051b8101915082860160005b85811015614d3e578284038952614d2c848351614496565b98850198935090840190600101614d14565b5091979650505050505050565b6001600160a01b038616815260a060208201819052600090614d6f90830187614cf6565b8281036040840152614d818187614cf6565b90508281036060840152614d958186614cf6565b91505082151560808301529695505050505050565b600060018060a01b03808616835260606020840152614dcc6060840186614496565b9150808416604084015250949350505050565b606081526000614df26060830186614cf6565b8281036020840152614e048186614cf6565b915050826040830152949350505050565b600081614e2457614e24614afa565b506000190190565b601f821115610d1957600081815260208120601f850160051c81016020861015614e535750805b601f850160051c820191505b818110156116de57828155600101614e5f565b81516001600160401b03811115614e8b57614e8b614279565b614e9f81614e998454614c9f565b84614e2c565b602080601f831160018114614ed45760008415614ebc5750858301515b600019600386901b1c1916600185901b1785556116de565b600085815260208120601f198616915b82811015614f0357888601518255948401946001909101908401614ee4565b5085821015614f215787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b828152604060208201526000614f4a6040830184614496565b949350505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b8082018082111561098f5761098f614afa565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351614fe8816017850160208801614472565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351615019816028840160208801614472565b01602801949350505050565b808202811582820484141761098f5761098f614afa565b634e487b7160e01b600052602160045260246000fdfe5496787fc1ebdfeba375028c1865f13fbb1d63c0caa356ccc1b29a80f3ebd6229f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000811000a"; +const isSuperArgs = (xs) => xs.length > 1; +class MintingManagerMock__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(overrides) { + return super.getDeployTransaction(overrides || {}); + } + deploy(overrides) { + return super.deploy(overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.MintingManagerMock__factory = MintingManagerMock__factory; +MintingManagerMock__factory.bytecode = _bytecode; +MintingManagerMock__factory.abi = _abi; diff --git a/dist/types/factories/contracts/mocks/UNSRegistryForwarderMock__factory.d.ts b/dist/types/factories/contracts/mocks/UNSRegistryForwarderMock__factory.d.ts new file mode 100644 index 00000000..cc53b4b2 --- /dev/null +++ b/dist/types/factories/contracts/mocks/UNSRegistryForwarderMock__factory.d.ts @@ -0,0 +1,123 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../common"; +import type { UNSRegistryForwarderMock, UNSRegistryForwarderMockInterface } from "../../../contracts/mocks/UNSRegistryForwarderMock"; +declare type UNSRegistryForwarderMockConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class UNSRegistryForwarderMock__factory extends ContractFactory { + constructor(...args: UNSRegistryForwarderMockConstructorParams); + getDeployTransaction(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): UNSRegistryForwarderMock__factory; + static readonly bytecode = "0x608060405234801561001057600080fd5b50610cf8806100206000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c80631bf7e13e146100515780636ccbae5f1461007a5780638129fc1c146100a8578063a4247400146100b2575b600080fd5b61006461005f3660046108d4565b6100d5565b60405161007191906109c3565b60405180910390f35b61009a6100883660046109d6565b60009081526035602052604090205490565b604051908152602001610071565b6100b06101e5565b005b6100c56100c03660046108d4565b6102f6565b6040519015158152602001610071565b606060005a90506100e78585856102f6565b6101485760405162461bcd60e51b815260206004820152602760248201527f554e535265676973747279466f727761726465723a205349474e41545552455f6044820152661253959053125160ca1b60648201526084015b60405180910390fd5b6101da6101586020870187610a0b565b3060408801358461016c60608b018b610a26565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061034992505050565b9150505b9392505050565b600054610100900460ff16158080156102055750600054600160ff909116105b8061021f5750303b15801561021f575060005460ff166001145b6102825760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840161013f565b6000805460ff1916600117905580156102a5576000805461ff0019166101001790555b6102ad61042a565b80156102f3576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50565b600061034161030485610add565b3085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061045b92505050565b949350505050565b6060610354856105a4565b600080876001600160a01b03168661036e8b8a89896105d0565b60405161037b9190610b9e565b60006040518083038160008787f1925050503d80600081146103b9576040519150601f19603f3d011682016040523d82523d6000602084013e6103be565b606091505b5090925090506103cf603f87610bba565b5a116103dd576103dd610bdc565b61041d82826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c4544000000000000815250610600565b9998505050505050505050565b600054610100900460ff166104515760405162461bcd60e51b815260040161013f90610bf2565b610459610639565b565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa1580156104a2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104c69190610c3d565b905060006105748660600151805190602001208688602001516040516020016105149392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561059a5750855161059a906001600160a01b03168286610660565b9695505050505050565b6000818152603560205260409020546105be906001610c56565b60009182526035602052604090912055565b60608285856040516020016105e793929190610c7d565b6040516020818303038152906040529050949350505050565b6060831561060f5750816101de565b82511561061f5782518084602001fd5b8160405162461bcd60e51b815260040161013f91906109c3565b600054610100900460ff166104595760405162461bcd60e51b815260040161013f90610bf2565b600080600061066f85856107a2565b9092509050600081600481111561068857610688610cbc565b1480156106a65750856001600160a01b0316826001600160a01b0316145b156106b6576001925050506101de565b600080876001600160a01b0316631626ba7e60e01b88886040516024016106de929190610cd2565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161071c9190610b9e565b600060405180830381855afa9150503d8060008114610757576040519150601f19603f3d011682016040523d82523d6000602084013e61075c565b606091505b509150915081801561076f575080516020145b801561079657508051630b135d3f60e11b906107949083016020908101908401610c3d565b145b98975050505050505050565b60008082516041036107d85760208301516040840151606085015160001a6107cc878285856107e7565b945094505050506107e0565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561081e57506000905060036108cb565b8460ff16601b1415801561083657508460ff16601c14155b1561084757506000905060046108cb565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa15801561089b573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166108c4576000600192509250506108cb565b9150600090505b94509492505050565b6000806000604084860312156108e957600080fd5b833567ffffffffffffffff8082111561090157600080fd5b908501906080828803121561091557600080fd5b9093506020850135908082111561092b57600080fd5b818601915086601f83011261093f57600080fd5b81358181111561094e57600080fd5b87602082850101111561096057600080fd5b6020830194508093505050509250925092565b60005b8381101561098e578181015183820152602001610976565b50506000910152565b600081518084526109af816020860160208601610973565b601f01601f19169290920160200192915050565b6020815260006101de6020830184610997565b6000602082840312156109e857600080fd5b5035919050565b80356001600160a01b0381168114610a0657600080fd5b919050565b600060208284031215610a1d57600080fd5b6101de826109ef565b6000808335601e19843603018112610a3d57600080fd5b83018035915067ffffffffffffffff821115610a5857600080fd5b6020019150368190038213156107e057600080fd5b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610aa657610aa6610a6d565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ad557610ad5610a6d565b604052919050565b600060808236031215610aef57600080fd5b610af7610a83565b610b00836109ef565b81526020808401358183015260408401356040830152606084013567ffffffffffffffff80821115610b3157600080fd5b9085019036601f830112610b4457600080fd5b813581811115610b5657610b56610a6d565b610b68601f8201601f19168501610aac565b91508082523684828501011115610b7e57600080fd5b808484018584013760009082019093019290925250606082015292915050565b60008251610bb0818460208701610973565b9190910192915050565b600082610bd757634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b600060208284031215610c4f57600080fd5b5051919050565b80820180821115610c7757634e487b7160e01b600052601160045260246000fd5b92915050565b60008451610c8f818460208901610973565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b600052602160045260246000fd5b828152604060208201526000610341604083018461099756fea164736f6c6343000811000a"; + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "uint8"; + readonly name: "version"; + readonly type: "uint8"; + }]; + readonly name: "Initialized"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly components: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "nonce"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly internalType: "struct IForwarder.ForwardRequest"; + readonly name: "req"; + readonly type: "tuple"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "execute"; + readonly outputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "initialize"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "nonceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly components: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "nonce"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly internalType: "struct IForwarder.ForwardRequest"; + readonly name: "req"; + readonly type: "tuple"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "verify"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): UNSRegistryForwarderMockInterface; + static connect(address: string, runner?: ContractRunner | null): UNSRegistryForwarderMock; +} +export {}; +//# sourceMappingURL=UNSRegistryForwarderMock__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/UNSRegistryForwarderMock__factory.d.ts.map b/dist/types/factories/contracts/mocks/UNSRegistryForwarderMock__factory.d.ts.map new file mode 100644 index 00000000..2c02171c --- /dev/null +++ b/dist/types/factories/contracts/mocks/UNSRegistryForwarderMock__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"UNSRegistryForwarderMock__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/mocks/UNSRegistryForwarderMock__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,KAAK,EACV,wBAAwB,EACxB,iCAAiC,EAClC,MAAM,mDAAmD,CAAC;AA2I3D,aAAK,yCAAyC,GAC1C,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,iCAAkC,SAAQ,eAAe;gBACxD,GAAG,IAAI,EAAE,yCAAyC;IAQrD,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CACd,MAAM,EAAE,cAAc,GAAG,IAAI,GAC5B,iCAAiC;IAIpC,MAAM,CAAC,QAAQ,CAAC,QAAQ,wjNAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,iCAAiC;IAG3D,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,wBAAwB;CAO5B"} \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/UNSRegistryForwarderMock__factory.js b/dist/types/factories/contracts/mocks/UNSRegistryForwarderMock__factory.js new file mode 100644 index 00000000..4af25f6f --- /dev/null +++ b/dist/types/factories/contracts/mocks/UNSRegistryForwarderMock__factory.js @@ -0,0 +1,167 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.UNSRegistryForwarderMock__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint8", + name: "version", + type: "uint8", + }, + ], + name: "Initialized", + type: "event", + }, + { + inputs: [ + { + components: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "uint256", + name: "nonce", + type: "uint256", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + internalType: "struct IForwarder.ForwardRequest", + name: "req", + type: "tuple", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "execute", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "initialize", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "nonceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + components: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "uint256", + name: "nonce", + type: "uint256", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + internalType: "struct IForwarder.ForwardRequest", + name: "req", + type: "tuple", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "verify", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +const _bytecode = "0x608060405234801561001057600080fd5b50610cf8806100206000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c80631bf7e13e146100515780636ccbae5f1461007a5780638129fc1c146100a8578063a4247400146100b2575b600080fd5b61006461005f3660046108d4565b6100d5565b60405161007191906109c3565b60405180910390f35b61009a6100883660046109d6565b60009081526035602052604090205490565b604051908152602001610071565b6100b06101e5565b005b6100c56100c03660046108d4565b6102f6565b6040519015158152602001610071565b606060005a90506100e78585856102f6565b6101485760405162461bcd60e51b815260206004820152602760248201527f554e535265676973747279466f727761726465723a205349474e41545552455f6044820152661253959053125160ca1b60648201526084015b60405180910390fd5b6101da6101586020870187610a0b565b3060408801358461016c60608b018b610a26565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061034992505050565b9150505b9392505050565b600054610100900460ff16158080156102055750600054600160ff909116105b8061021f5750303b15801561021f575060005460ff166001145b6102825760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840161013f565b6000805460ff1916600117905580156102a5576000805461ff0019166101001790555b6102ad61042a565b80156102f3576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50565b600061034161030485610add565b3085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061045b92505050565b949350505050565b6060610354856105a4565b600080876001600160a01b03168661036e8b8a89896105d0565b60405161037b9190610b9e565b60006040518083038160008787f1925050503d80600081146103b9576040519150601f19603f3d011682016040523d82523d6000602084013e6103be565b606091505b5090925090506103cf603f87610bba565b5a116103dd576103dd610bdc565b61041d82826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c4544000000000000815250610600565b9998505050505050505050565b600054610100900460ff166104515760405162461bcd60e51b815260040161013f90610bf2565b610459610639565b565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa1580156104a2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104c69190610c3d565b905060006105748660600151805190602001208688602001516040516020016105149392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561059a5750855161059a906001600160a01b03168286610660565b9695505050505050565b6000818152603560205260409020546105be906001610c56565b60009182526035602052604090912055565b60608285856040516020016105e793929190610c7d565b6040516020818303038152906040529050949350505050565b6060831561060f5750816101de565b82511561061f5782518084602001fd5b8160405162461bcd60e51b815260040161013f91906109c3565b600054610100900460ff166104595760405162461bcd60e51b815260040161013f90610bf2565b600080600061066f85856107a2565b9092509050600081600481111561068857610688610cbc565b1480156106a65750856001600160a01b0316826001600160a01b0316145b156106b6576001925050506101de565b600080876001600160a01b0316631626ba7e60e01b88886040516024016106de929190610cd2565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161071c9190610b9e565b600060405180830381855afa9150503d8060008114610757576040519150601f19603f3d011682016040523d82523d6000602084013e61075c565b606091505b509150915081801561076f575080516020145b801561079657508051630b135d3f60e11b906107949083016020908101908401610c3d565b145b98975050505050505050565b60008082516041036107d85760208301516040840151606085015160001a6107cc878285856107e7565b945094505050506107e0565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561081e57506000905060036108cb565b8460ff16601b1415801561083657508460ff16601c14155b1561084757506000905060046108cb565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa15801561089b573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166108c4576000600192509250506108cb565b9150600090505b94509492505050565b6000806000604084860312156108e957600080fd5b833567ffffffffffffffff8082111561090157600080fd5b908501906080828803121561091557600080fd5b9093506020850135908082111561092b57600080fd5b818601915086601f83011261093f57600080fd5b81358181111561094e57600080fd5b87602082850101111561096057600080fd5b6020830194508093505050509250925092565b60005b8381101561098e578181015183820152602001610976565b50506000910152565b600081518084526109af816020860160208601610973565b601f01601f19169290920160200192915050565b6020815260006101de6020830184610997565b6000602082840312156109e857600080fd5b5035919050565b80356001600160a01b0381168114610a0657600080fd5b919050565b600060208284031215610a1d57600080fd5b6101de826109ef565b6000808335601e19843603018112610a3d57600080fd5b83018035915067ffffffffffffffff821115610a5857600080fd5b6020019150368190038213156107e057600080fd5b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610aa657610aa6610a6d565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ad557610ad5610a6d565b604052919050565b600060808236031215610aef57600080fd5b610af7610a83565b610b00836109ef565b81526020808401358183015260408401356040830152606084013567ffffffffffffffff80821115610b3157600080fd5b9085019036601f830112610b4457600080fd5b813581811115610b5657610b56610a6d565b610b68601f8201601f19168501610aac565b91508082523684828501011115610b7e57600080fd5b808484018584013760009082019093019290925250606082015292915050565b60008251610bb0818460208701610973565b9190910192915050565b600082610bd757634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b600060208284031215610c4f57600080fd5b5051919050565b80820180821115610c7757634e487b7160e01b600052601160045260246000fd5b92915050565b60008451610c8f818460208901610973565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b600052602160045260246000fd5b828152604060208201526000610341604083018461099756fea164736f6c6343000811000a"; +const isSuperArgs = (xs) => xs.length > 1; +class UNSRegistryForwarderMock__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(overrides) { + return super.getDeployTransaction(overrides || {}); + } + deploy(overrides) { + return super.deploy(overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.UNSRegistryForwarderMock__factory = UNSRegistryForwarderMock__factory; +UNSRegistryForwarderMock__factory.bytecode = _bytecode; +UNSRegistryForwarderMock__factory.abi = _abi; diff --git a/dist/types/factories/contracts/mocks/UNSRegistryMock__factory.d.ts b/dist/types/factories/contracts/mocks/UNSRegistryMock__factory.d.ts new file mode 100644 index 00000000..b8e77971 --- /dev/null +++ b/dist/types/factories/contracts/mocks/UNSRegistryMock__factory.d.ts @@ -0,0 +1,1227 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../common"; +import type { UNSRegistryMock, UNSRegistryMockInterface } from "../../../contracts/mocks/UNSRegistryMock"; +declare type UNSRegistryMockConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class UNSRegistryMock__factory extends ContractFactory { + constructor(...args: UNSRegistryMockConstructorParams); + getDeployTransaction(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): UNSRegistryMock__factory; + static readonly bytecode = "0x608060405234801561001057600080fd5b506153de806100206000396000f3fe608060405234801561001057600080fd5b50600436106103c55760003560e01c80637eee288d116101ff578063baef73e91161011a578063e985e9c5116100ad578063f5c1f76e1161007c578063f5c1f76e14610914578063f7df5c6014610927578063f8c8765e1461093a578063ffa1ad741461094d57600080fd5b8063e985e9c5146108b6578063ebf0c717146108f2578063ec129eea146108f9578063f25eb5c11461090c57600080fd5b8063ce92b33e116100e9578063ce92b33e1461086a578063cf2c52cb1461087d578063d9548e5314610890578063dbe16c07146108a357600080fd5b8063baef73e9146107ef578063bb5b27e114610831578063bebec6b414610844578063c87b56dd1461085757600080fd5b8063a424740011610192578063b3f9e4cb11610161578063b3f9e4cb14610795578063b85afd28146107a8578063b88d4fde146107c9578063ba5d40b7146107dc57600080fd5b8063a42474001461073c578063ab3b87fe1461074f578063ac9650d814610762578063ae31844a1461078257600080fd5b806395d89b41116101ce57806395d89b41146106e257806399e0dd7c146106ea578063a22cb465146106fd578063a3f4df7e1461071057600080fd5b80637eee288d146106a157806394d008ef146106b45780639508b1c4146106c75780639559c0bd146106da57600080fd5b806342842e0e116102ef578063572b6c0511610282578063672b9f8111610251578063672b9f81146106395780636ccbae5f1461065a57806370a082311461067b5780637e37479e1461068e57600080fd5b8063572b6c05146105e45780636352211e14610600578063638e5c7814610613578063663f7b2a1461062657600080fd5b80634a72584d116102be5780634a72584d146105985780634f558e79146105ab57806350382c1a146105be57806350960239146105d157600080fd5b806342842e0e1461054c57806342966c681461055f578063430c20811461057257806347c816991461058557600080fd5b80631bf7e13e1161036757806327f189751161033657806327f1897514610500578063310bd74b146105135780633f72ec6e1461052657806340c10f191461053957600080fd5b80631bf7e13e146104a65780631f71be06146104b957806323b872dd146104cc578063276fabb1146104df57600080fd5b8063095ea7b3116103a3578063095ea7b314610432578063150b7a02146104475780631bd8cc1a146104735780631be5e7ed1461049357600080fd5b806301ffc9a7146103ca57806306fdde03146103f2578063081812fc14610407575b600080fd5b6103dd6103d8366004614003565b610971565b60405190151581526020015b60405180910390f35b6103fa610982565b6040516103e99190614070565b61041a610415366004614083565b610a14565b6040516001600160a01b0390911681526020016103e9565b6104456104403660046140b1565b610a3b565b005b61045a61045536600461411e565b610a54565b6040516001600160e01b031990911681526020016103e9565b6104866104813660046141d4565b610bae565b6040516103e99190614277565b6103fa6104a136600461428a565b610ca4565b6103fa6104b43660046142c1565b610cef565b6104456104c7366004614341565b610dfa565b6104456104da3660046143fd565b610e90565b6104f26104ed36600461443e565b610ee3565b6040519081526020016103e9565b61044561050e36600461447f565b610ef2565b610445610521366004614083565b610f3a565b6104456105343660046144f2565b610f75565b6104456105473660046140b1565b611077565b61044561055a3660046143fd565b6110c4565b61044561056d366004614083565b6110df565b6103dd6105803660046140b1565b611123565b61044561059336600461451c565b61112f565b6104456105a636600461457d565b61116e565b6103dd6105b9366004614083565b6111b4565b6104456105cc366004614684565b6111d3565b6104456105df3660046146b8565b611209565b6103dd6105f23660046146b8565b6001600160a01b0316301490565b61041a61060e366004614083565b611269565b610445610621366004614083565b611286565b610445610634366004614770565b6112d1565b61064c6106473660046147b8565b611372565b6040516103e99291906147da565b6104f2610668366004614083565b6000908152610100602052604090205490565b6104f26106893660046146b8565b61138a565b6104f261069c3660046146b8565b611410565b6104456106af3660046140b1565b611441565b6104456106c23660046147ff565b611498565b6104456106d536600461485a565b6114e7565b6104f2601481565b6103fa61156e565b6104456106f83660046148fd565b61157d565b61044561070b366004614932565b611604565b6103fa6040518060400160405280600d81526020016c554e533a20526567697374727960981b81525081565b6103dd61074a3660046142c1565b611616565b61044561075d3660046140b1565b611661565b61077561077036600461443e565b6116a6565b6040516103e9919061495e565b61044561079036600461443e565b611782565b61041a6107a3366004614083565b611820565b6107bb6107b63660046141d4565b61184a565b6040516103e99291906149c0565b6104456107d73660046149e5565b61196c565b6104456107ea366004614341565b6119b3565b6108196107fd366004614083565b600090815261013960205260409020546001600160401b031690565b6040516001600160401b0390911681526020016103e9565b6103fa61083f366004614083565b611a3c565b6103fa6108523660046146b8565b611ade565b6103fa610865366004614083565b611ba8565b61044561087836600461447f565b611c0e565b61044561088b366004614a50565b611c4d565b6103dd61089e366004614083565b611d1c565b6103fa6108b1366004614083565b611d5f565b6103dd6108c4366004614a97565b6001600160a01b039182166000908152606a6020908152604080832093909416825291909152205460ff1690565b60006104f2565b61044561090736600461447f565b611d7d565b610445611dbc565b61048661092236600461443e565b611e43565b610445610935366004614ad0565b611ef6565b610445610948366004614b02565b611f87565b6103fa60405180604001604052806005815260200164302e392e3160d81b81525081565b600061097c8261215d565b92915050565b60606065805461099190614b5e565b80601f01602080910402602001604051908101604052809291908181526020018280546109bd90614b5e565b8015610a0a5780601f106109df57610100808354040283529160200191610a0a565b820191906000526020600020905b8154815290600101906020018083116109ed57829003601f168201915b5050505050905090565b6000610a1f826121ad565b506000908152606960205260409020546001600160a01b031690565b80610a458161220c565b610a4f8383612272565b505050565b60007f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378546001600160a01b0316610a89612394565b6001600160a01b031603610b4a57610a9f612394565b6001600160a01b03166342966c68856040518263ffffffff1660e01b8152600401610acc91815260200190565b600060405180830381600087803b158015610ae657600080fd5b505af1158015610afa573d6000803e3d6000fd5b505050821580159150610b145750610b1482840184614b92565b15610b3257610b2330856123a3565b610b2d85856124f1565b610b3c565b610b3c85856123a3565b50630a85bd0160e11b610ba5565b60405162461bcd60e51b815260206004820152602560248201527f52656769737472793a204552433732315f524543454956494e475f50524f4849604482015264109255115160da1b60648201526084015b60405180910390fd5b95945050505050565b6060826001600160401b03811115610bc857610bc86145cf565b604051908082528060200260200182016040528015610bfb57816020015b6060815260200190600190039081610be65790505b50905060005b83811015610c9c57610c6c858583818110610c1e57610c1e614bad565b9050602002810190610c309190614bc3565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525087925061259c915050565b828281518110610c7e57610c7e614bad565b60200260200101819052508080610c9490614c1f565b915050610c01565b509392505050565b6060610ce784848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525086925061259c915050565b949350505050565b606060005a9050610d01858585611616565b610d5d5760405162461bcd60e51b815260206004820152602760248201527f554e535265676973747279466f727761726465723a205349474e41545552455f6044820152661253959053125160ca1b6064820152608401610b9c565b610def610d6d60208701876146b8565b30604088013584610d8160608b018b614bc3565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284376000920191909152506125d192505050565b9150505b9392505050565b610134546001600160a01b0316610e0f612394565b6001600160a01b031614610e355760405162461bcd60e51b8152600401610b9c90614c38565b6000610e49610e44888a614c7f565b6126b2565b509050610e568982611441565b610e63868686868561270a565b8115610e8557610e858982610e80610e7b8b8d614c7f565b612778565b6127f9565b505050505050505050565b80610ea2610e9c612394565b8261283b565b610ebe5760405162461bcd60e51b8152600401610b9c90614c8c565b81610ec88161220c565b610ed1836128cc565b610edc858585612939565b5050505050565b6000610c9c610e448385614c7f565b80610efe610e9c612394565b610f1a5760405162461bcd60e51b8152600401610b9c90614c8c565b81610f248161220c565b610f318787878787612ae0565b50505050505050565b80610f46610e9c612394565b610f625760405162461bcd60e51b8152600401610b9c90614c8c565b81610f6c8161220c565b610a4f836128cc565b610134546001600160a01b0316610f8a612394565b6001600160a01b031614610fb05760405162461bcd60e51b8152600401610b9c90614c38565b610fb9816121ad565b42826001600160401b0316116110115760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a204558504952595f494e5f5041535400000000000000006044820152606401610b9c565b60008181526101396020908152604091829020805467ffffffffffffffff19166001600160401b038616908117909155915191825282917f93feabb03ab84f47fc85bf0c298103fca21d8c8bc376eae0c1e1c56b9d4f7789910160405180910390a25050565b61107f612b43565b6001600160a01b0316611090612394565b6001600160a01b0316146110b65760405162461bcd60e51b8152600401610b9c90614cd5565b6110c082826123a3565b5050565b610a4f8383836040518060200160405280600081525061196c565b806110eb610e9c612394565b6111075760405162461bcd60e51b8152600401610b9c90614c8c565b816111118161220c565b61111a836128cc565b610a4f83612c44565b6000610df3838361283b565b8061113b610e9c612394565b6111575760405162461bcd60e51b8152600401610b9c90614c8c565b816111618161220c565b610f318787878787612ceb565b8061117a610e9c612394565b6111965760405162461bcd60e51b8152600401610b9c90614c8c565b816111a08161220c565b6111ac86868686612dca565b505050505050565b6000818152606760205260408120546001600160a01b0316151561097c565b611206816040516020016111e79190614d17565b6040516020818303038152906040528051906020012060001c82612e6a565b50565b610134546001600160a01b031661121e612394565b6001600160a01b0316146112445760405162461bcd60e51b8152600401610b9c90614c38565b6001600160a01b0316600090815261013660205260409020805460ff19166001179055565b600061127482611d1c565b6112815761097c82612e8f565b919050565b80611292610e9c612394565b6112ae5760405162461bcd60e51b8152600401610b9c90614c8c565b6112c06112b9612394565b3084612939565b6110c06112cb612394565b836124f1565b60006112dc826126b2565b5090506112e7612394565b6001600160a01b03166112f982611269565b6001600160a01b03161461134f5760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b9c565b6113588161220c565b6110c0611363612394565b8261136d85612778565b612eef565b60608061137f8484612f76565b909590945092505050565b60006001600160a01b0382166113f45760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b6064820152608401610b9c565b506001600160a01b031660009081526068602052604090205490565b6001600160a01b0381166000908152610135602052604081205461143381612f97565b61143b578091505b50919050565b610134546001600160a01b0316611456612394565b6001600160a01b03161461147c5760405162461bcd60e51b8152600401610b9c90614c38565b611485816128cc565b6110c061149182612e8f565b8383612939565b6114a0612b43565b6001600160a01b03166114b1612394565b6001600160a01b0316146114d75760405162461bcd60e51b8152600401610b9c90614cd5565b6114e184846123a3565b50505050565b6114f18787612fe1565b6114f9612394565b6001600160a01b031661150b86611269565b6001600160a01b0316146115615760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b9c565b610f31848484848961270a565b60606066805461099190614b5e565b610134546001600160a01b0316611592612394565b6001600160a01b0316146115b85760405162461bcd60e51b8152600401610b9c90614c38565b6101336115c6828483614d79565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b82826040516115f8929190614e61565b60405180910390a15050565b6110c061160f612394565b8383613050565b6000610ce761162485614e75565b3085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061311e92505050565b8061166d610e9c612394565b6116895760405162461bcd60e51b8152600401610b9c90614c8c565b816116938161220c565b6114e161169f84612e8f565b8585612939565b606060006116b48385614eff565b90503033036117795760005b83811015611777576117476116d3612394565b6116db613267565b8787858181106116ed576116ed614bad565b90506020028101906116ff9190614bc3565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201829052506040805160208101909152908152925061327b915050565b82828151811061175957611759614bad565b6020026020010181905250808061176f90614c1f565b9150506116c0565b505b610ce7816132ab565b610134546001600160a01b0316611797612394565b6001600160a01b0316146117bd5760405162461bcd60e51b8152600401610b9c90614c38565b60005b81811015610a4f57600161013760008585858181106117e1576117e1614bad565b90506020020135815260200190815260200160002060006101000a81548160ff021916908315150217905550808061181890614c1f565b9150506117c0565b6000818152606760205260408120546001600160a01b031661184357600061097c565b3092915050565b606080836001600160401b03811115611865576118656145cf565b60405190808252806020026020018201604052801561189857816020015b60608152602001906001900390816118835790505b509150836001600160401b038111156118b3576118b36145cf565b6040519080825280602002602001820160405280156118e657816020015b60608152602001906001900390816118d15790505b50905060005b848110156119635761191686868381811061190957611909614bad565b9050602002013585612f76565b84838151811061192857611928614bad565b6020026020010184848151811061194157611941614bad565b602002602001018290528290525050808061195b90614c1f565b9150506118ec565b50935093915050565b81611978610e9c612394565b6119945760405162461bcd60e51b8152600401610b9c90614c8c565b8261199e8161220c565b6119a7846128cc565b6111ac868686866133d6565b610134546001600160a01b03166119c8612394565b6001600160a01b0316146119ee5760405162461bcd60e51b8152600401610b9c90614c38565b6000806119fe610e44898b614c7f565b91509150611a0b81613409565b611a238a83611a1d610e7b8c8e614c7f565b86613469565b611a30878787878661270a565b50505050505050505050565b600081815260c960205260409020805460609190611a5990614b5e565b80601f0160208091040260200160405190810160405280929190818152602001828054611a8590614b5e565b8015611ad25780601f10611aa757610100808354040283529160200191611ad2565b820191906000526020600020905b815481529060010190602001808311611ab557829003601f168201915b50505050509050919050565b6001600160a01b03811660009081526101356020526040902054606090611b0481612f97565b61143b576000818152610138602052604090208054611b2290614b5e565b80601f0160208091040260200160405190810160405280929190818152602001828054611b4e90614b5e565b8015611b9b5780601f10611b7057610100808354040283529160200191611b9b565b820191906000526020600020905b815481529060010190602001808311611b7e57829003601f168201915b5050505050915050919050565b6060611bb3826121ad565b6000611bbd6134bc565b90506000815111611bdd5760405180602001604052806000815250610df3565b80611be7846134cc565b604051602001611bf8929190614f72565b6040516020818303038152906040529392505050565b80611c1a610e9c612394565b611c365760405162461bcd60e51b8152600401610b9c90614c8c565b81611c408161220c565b610f31878787878761270a565b7f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87546001600160a01b0316611c80612394565b6001600160a01b031614611ca65760405162461bcd60e51b8152600401610b9c90614cd5565b6020819003611cc9576000611cbd82840184614083565b90506114e184826123a3565b6000611cd782840184614fa1565b805190915060005b818110156111ac57611d0a86848381518110611cfd57611cfd614bad565b60200260200101516123a3565b80611d1481614c1f565b915050611cdf565b600081815261013960205260408120546001600160401b03161580159061097c57505060009081526101396020526040902054426001600160401b039091161090565b600081815261013860205260409020805460609190611a5990614b5e565b80611d89610e9c612394565b611da55760405162461bcd60e51b8152600401610b9c90614c8c565b81611daf8161220c565b610f3187878787876135cc565b6000611dc6612394565b6001600160a01b0381166000908152610135602052604081205491925003611e3a5760405162461bcd60e51b815260206004820152602160248201527f52656769737472793a20524556455253455f5245434f52445f49535f454d50546044820152605960f81b6064820152608401610b9c565b611206816135e2565b6060816001600160401b03811115611e5d57611e5d6145cf565b604051908082528060200260200182016040528015611e9057816020015b6060815260200190600190039081611e7b5790505b50905060005b82811015611eef57611ebf848483818110611eb357611eb3614bad565b90506020020135611a3c565b828281518110611ed157611ed1614bad565b60200260200101819052508080611ee790614c1f565b915050611e96565b5092915050565b610134546001600160a01b0316611f0b612394565b6001600160a01b031614611f315760405162461bcd60e51b8152600401610b9c90614c38565b61013454611f48906001600160a01b0316846123a3565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c39528383604051611f7a929190614e61565b60405180910390a2505050565b600054610100900460ff1615808015611fa75750600054600160ff909116105b80611fc15750303b158015611fc1575060005460ff166001145b6120245760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610b9c565b6000805460ff191660011790558015612047576000805461ff0019166101001790555b61013480546001600160a01b0319166001600160a01b038716179055837f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec9237880546001600160a01b0319166001600160a01b03929092169190911790556040805180820182526013815272556e73746f707061626c6520446f6d61696e7360681b60208083019190915282518084019093526002835261155160f21b908301526120ef91613627565b6120f7613667565b6120ff613667565b61210883613690565b612111826136c0565b8015610edc576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b60006001600160e01b031982166380ac58cd60e01b148061218e57506001600160e01b03198216635b5e139f60e01b145b8061097c57506301ffc9a760e01b6001600160e01b031983161461097c565b6000818152606760205260409020546001600160a01b03166112065760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b9c565b3033036122695761221b613267565b81146112065760405162461bcd60e51b815260206004820152601760248201527f52656769737472793a20544f4b454e5f494e56414c49440000000000000000006044820152606401610b9c565b611206816136f0565b600061227d82612e8f565b9050806001600160a01b0316836001600160a01b0316036122ea5760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b6064820152608401610b9c565b806001600160a01b03166122fc612394565b6001600160a01b031614806123185750612318816108c4612394565b61238a5760405162461bcd60e51b815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c00006064820152608401610b9c565b610a4f838361371e565b600061239e61378c565b905090565b6001600160a01b0382166123f95760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610b9c565b6000818152606760205260409020546001600160a01b03161561245e5760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610b9c565b61246a600083836137a7565b6001600160a01b0382166000908152606860205260408120805460019290612493908490615031565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b03861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b60006124fb612b43565b9050612507818361371e565b60008051602061538b83398151915254604080516020808201869052825180830390910181528183019283905263e3dec8fb60e01b9092526001600160a01b0390921691829163e3dec8fb91612564918891309190604401615044565b600060405180830381600087803b15801561257e57600080fd5b505af1158015612592573d6000803e3d6000fd5b5050505050505050565b6060610df3836040516020016125b29190614d17565b6040516020818303038152906040528051906020012060001c83613883565b60606125dc856136f0565b600080876001600160a01b0316866125f68b8a898961327b565b6040516126039190614d17565b60006040518083038160008787f1925050503d8060008114612641576040519150601f19603f3d011682016040523d82523d6000602084013e612646565b606091505b509092509050612657603f87615086565b5a116126655761266561509a565b6126a582826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c4544000000000000815250613965565b9998505050505050505050565b805160009081905b8015612704578291506126f082856126d36001856150b0565b815181106126e3576126e3614bad565b602002602001015161399e565b9250806126fc816150c3565b9150506126ba565b50915091565b60005b848110156111ac5761276686868381811061272a5761272a614bad565b905060200281019061273c9190614bc3565b86868581811061274e5761274e614bad565b90506020028101906127609190614bc3565b86612ceb565b8061277081614c1f565b91505061270d565b606060008260008151811061278f5761278f614bad565b602002602001015190506000600190505b8351811015611eef57818482815181106127bc576127bc614bad565b60200260200101516040516020016127d59291906150da565b604051602081830303815290604052915080806127f190614c1f565b9150506127a0565b61dead6001600160a01b0384161480159061282b57506001600160a01b03831660009081526101356020526040902054155b15610a4f57610a4f838383612eef565b60008061284783611269565b90506001600160a01b03811615801590610ce75750806001600160a01b0316846001600160a01b031614806128a157506001600160a01b038082166000908152606a602090815260408083209388168352929052205460ff165b80610ce75750836001600160a01b03166128ba84610a14565b6001600160a01b031614949350505050565b6128d581613a4a565b6040516020016128e791815260200190565b60408051601f198184030181528282528051602091820120600085815260cb9092529181209190915582917f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9190a250565b826001600160a01b031661294c82612e8f565b6001600160a01b0316146129b05760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b6064820152608401610b9c565b6001600160a01b038216612a125760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610b9c565b612a1d8383836137a7565b612a2860008261371e565b6001600160a01b0383166000908152606860205260408120805460019290612a519084906150b0565b90915550506001600160a01b0382166000908152606860205260408120805460019290612a7f908490615031565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60005b848110156111ac57612b31868683818110612b0057612b00614bad565b90506020020135858584818110612b1957612b19614bad565b9050602002810190612b2b9190614bc3565b85612dca565b80612b3b81614c1f565b915050612ae3565b60008051602061538b833981519152546000906001600160a01b03168015612c405760405163721804d360e11b81523060048201526000906001600160a01b0383169063e43009a690602401602060405180830381865afa158015612bac573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612bd09190615116565b60405163e66f960360e01b8152600481018290529091506001600160a01b0383169063e66f960390602401602060405180830381865afa158015612c18573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612c3c919061512f565b9250505b5090565b6000612c4f82612e8f565b9050612c5d816000846137a7565b612c6860008361371e565b6001600160a01b0381166000908152606860205260408120805460019290612c919084906150b0565b909155505060008281526067602052604080822080546001600160a01b0319169055518391906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b60008585604051602001612d0092919061514c565b60408051601f198184030181528282528051602091820120601f8901829004820284018201909252878352909250612d549183918990899081908401838280828437600092019190915250612e6a92505050565b6111ac8187878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b018190048102820181019092528981529250899150889081908401838280828437600092019190915250889250613a72915050565b612dd384613ba7565b612e1f5760405162461bcd60e51b815260206004820152601c60248201527f5265636f726453746f726167653a204b45595f4e4f545f464f554e44000000006044820152606401610b9c565b6114e184612e2c86611a3c565b85858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250879250613a72915050565b612e7382613ba7565b6110c057600082815260c960205260409020610a4f828261515c565b6000818152606760205260408120546001600160a01b03168061097c5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b9c565b6000828152610138602052604090208054612f0990614b5e565b9050600003612f2d57600082815261013860205260409020612f2b828261515c565b505b6001600160a01b03831660008181526101356020526040808220859055518492917feb76a21470988c474a21f690cc28fee1ed511bd812dc3c21fd0f49c5e5d4708a91a3505050565b606080612f8284611a3c565b9150612f8e8484613883565b90509250929050565b6000818152610137602052604081205460ff16801561097c57506101366000612fbe612394565b6001600160a01b0316815260208101919091526040016000205460ff1692915050565b60008051602061538b83398151915254604051633805550f60e01b81526001600160a01b03909116908190633805550f906130229086908690600401614e61565b600060405180830381600087803b15801561303c57600080fd5b505af1158015610f31573d6000803e3d6000fd5b816001600160a01b0316836001600160a01b0316036130b15760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610b9c565b6001600160a01b038381166000818152606a6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015613165573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131899190615116565b905060006132378660600151805190602001208688602001516040516020016131d79392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561325d5750855161325d906001600160a01b03168286613bcd565b9695505050505050565b60003033036132785750601f193601355b90565b60608285856040516020016132929392919061521b565b6040516020818303038152906040529050949350505050565b606081516001600160401b038111156132c6576132c66145cf565b6040519080825280602002602001820160405280156132f957816020015b60608152602001906001900390816132e45790505b50905060005b825181101561143b57600080306001600160a01b031685848151811061332757613327614bad565b602002602001015160405161333c9190614d17565b600060405180830381855af49150503d8060008114613377576040519150601f19603f3d011682016040523d82523d6000602084013e61337c565b606091505b50915091506133a482826040518060600160405280602781526020016153ab60279139613965565b8484815181106133b6576133b6614bad565b6020026020010181905250505080806133ce90614c1f565b9150506132ff565b6133e1848484612939565b6133ed84848484613d0f565b6114e15760405162461bcd60e51b8152600401610b9c9061525a565b6000818152610137602052604090205460ff16156112065760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a20544f4b454e5f555047524144454400000000000000006044820152606401610b9c565b61347384846123a3565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952836040516134a39190614070565b60405180910390a280156114e1576114e18484846127f9565b6060610133805461099190614b5e565b6060816000036134f35750506040805180820190915260018152600360fc1b602082015290565b8160005b811561351d578061350781614c1f565b91506135169050600a83615086565b91506134f7565b6000816001600160401b03811115613537576135376145cf565b6040519080825280601f01601f191660200182016040528015613561576020820181803683370190505b5090505b8415610ce7576135766001836150b0565b9150613583600a866152ac565b61358e906030615031565b60f81b8183815181106135a3576135a3614bad565b60200101906001600160f81b031916908160001a9053506135c5600a86615086565b9450613565565b6135d5816128cc565b610edc858585858561270a565b6001600160a01b03811660008181526101356020526040808220829055517ffcf5eec0cfa3e6332f5f0e63ec242d71f866a61d121d6cdf5c2eb3b668a26c4f9190a250565b600054610100900460ff1661364e5760405162461bcd60e51b8152600401610b9c906152c0565b606561365a838261515c565b506066610a4f828261515c565b600054610100900460ff1661368e5760405162461bcd60e51b8152600401610b9c906152c0565b565b600054610100900460ff166136b75760405162461bcd60e51b8152600401610b9c906152c0565b61120681613e14565b600054610100900460ff166136e75760405162461bcd60e51b8152600401610b9c906152c0565b61120681613e6d565b6000818152610100602052604090205461370b906001615031565b6000918252610100602052604090912055565b600081815260696020526040902080546001600160a01b0319166001600160a01b038416908117909155819061375382612e8f565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60003033036137a2575060331936013560601c90565b503390565b6001600160a01b0382166137be576137be81613409565b600081815261013960205260409020546001600160401b031615613859576001600160a01b0382161580159061380d57506137f7612b43565b6001600160a01b0316826001600160a01b031614155b6138595760405162461bcd60e51b815260206004820152601960248201527f52656769737472793a20544f4b454e5f455850495241424c45000000000000006044820152606401610b9c565b6001600160a01b03831660009081526101356020526040902054819003610a4f57610a4f836135e2565b606061388e82612f97565b156138a8575060408051602081019091526000815261097c565b60ca60006138b584613a4a565b8152602001908152602001600020600084815260200190815260200160002080546138df90614b5e565b80601f016020809104026020016040519081016040528092919081815260200182805461390b90614b5e565b80156139585780601f1061392d57610100808354040283529160200191613958565b820191906000526020600020905b81548152906001019060200180831161393b57829003601f168201915b5050505050905092915050565b60608315613974575081610df3565b8251156139845782518084602001fd5b8160405162461bcd60e51b8152600401610b9c9190614070565b600081516000036139e95760405162461bcd60e51b815260206004820152601560248201527452656769737472793a204c4142454c5f454d50545960581b6044820152606401610b9c565b82826040516020016139fb9190614d17565b60405160208183030381529060405280519060200120604051602001613a2b929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b600081815260cb602052604081205415612c4057600082815260cb602052604090205461097c565b60ca6000613a7f83613a4a565b815260200190815260200160002060008581526020019081526020016000208054613aa990614b5e565b9050600003613b015782604051613ac09190614d17565b6040518091039020817f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f8685604051613af89190614070565b60405180910390a35b8160ca6000613b0f84613a4a565b815260200190815260200160002060008681526020019081526020016000209081613b3a919061515c565b5081604051613b499190614d17565b604051809103902083604051613b5f9190614d17565b6040518091039020827f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d928686604051613b999291906147da565b60405180910390a450505050565b600081815260c9602052604081208054829190613bc390614b5e565b9050119050919050565b6000806000613bdc8585613ebb565b90925090506000816004811115613bf557613bf561530b565b148015613c135750856001600160a01b0316826001600160a01b0316145b15613c2357600192505050610df3565b600080876001600160a01b0316631626ba7e60e01b8888604051602401613c4b929190615321565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051613c899190614d17565b600060405180830381855afa9150503d8060008114613cc4576040519150601f19603f3d011682016040523d82523d6000602084013e613cc9565b606091505b5091509150818015613cdc575080516020145b8015613d0357508051630b135d3f60e11b90613d019083016020908101908401615116565b145b98975050505050505050565b60006001600160a01b0384163b15613e0c57836001600160a01b031663150b7a02613d38612394565b8786866040518563ffffffff1660e01b8152600401613d5a949392919061533a565b6020604051808303816000875af1925050508015613d95575060408051601f3d908101601f19168201909252613d929181019061536d565b60015b613df2573d808015613dc3576040519150601f19603f3d011682016040523d82523d6000602084013e613dc8565b606091505b508051600003613dea5760405162461bcd60e51b8152600401610b9c9061525a565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610ce7565b506001610ce7565b600054610100900460ff16613e3b5760405162461bcd60e51b8152600401610b9c906152c0565b8060008051602061538b8339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b600054610100900460ff16613e945760405162461bcd60e51b8152600401610b9c906152c0565b807f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87613e4c565b6000808251604103613ef15760208301516040840151606085015160001a613ee587828585613f00565b94509450505050613ef9565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613f375750600090506003613fe4565b8460ff16601b14158015613f4f57508460ff16601c14155b15613f605750600090506004613fe4565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613fb4573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613fdd57600060019250925050613fe4565b9150600090505b94509492505050565b6001600160e01b03198116811461120657600080fd5b60006020828403121561401557600080fd5b8135610df381613fed565b60005b8381101561403b578181015183820152602001614023565b50506000910152565b6000815180845261405c816020860160208601614020565b601f01601f19169290920160200192915050565b602081526000610df36020830184614044565b60006020828403121561409557600080fd5b5035919050565b6001600160a01b038116811461120657600080fd5b600080604083850312156140c457600080fd5b82356140cf8161409c565b946020939093013593505050565b60008083601f8401126140ef57600080fd5b5081356001600160401b0381111561410657600080fd5b602083019150836020828501011115613ef957600080fd5b60008060008060006080868803121561413657600080fd5b85356141418161409c565b945060208601356141518161409c565b93506040860135925060608601356001600160401b0381111561417357600080fd5b61417f888289016140dd565b969995985093965092949392505050565b60008083601f8401126141a257600080fd5b5081356001600160401b038111156141b957600080fd5b6020830191508360208260051b8501011115613ef957600080fd5b6000806000604084860312156141e957600080fd5b83356001600160401b038111156141ff57600080fd5b61420b86828701614190565b909790965060209590950135949350505050565b600082825180855260208086019550808260051b84010181860160005b8481101561426a57601f19868403018952614258838351614044565b9884019892509083019060010161423c565b5090979650505050505050565b602081526000610df3602083018461421f565b60008060006040848603121561429f57600080fd5b83356001600160401b038111156142b557600080fd5b61420b868287016140dd565b6000806000604084860312156142d657600080fd5b83356001600160401b03808211156142ed57600080fd5b908501906080828803121561430157600080fd5b9093506020850135908082111561431757600080fd5b50614324868287016140dd565b9497909650939450505050565b8035801515811461128157600080fd5b60008060008060008060008060a0898b03121561435d57600080fd5b88356143688161409c565b975060208901356001600160401b038082111561438457600080fd5b6143908c838d01614190565b909950975060408b01359150808211156143a957600080fd5b6143b58c838d01614190565b909750955060608b01359150808211156143ce57600080fd5b506143db8b828c01614190565b90945092506143ee905060808a01614331565b90509295985092959890939650565b60008060006060848603121561441257600080fd5b833561441d8161409c565b9250602084013561442d8161409c565b929592945050506040919091013590565b6000806020838503121561445157600080fd5b82356001600160401b0381111561446757600080fd5b61447385828601614190565b90969095509350505050565b60008060008060006060868803121561449757600080fd5b85356001600160401b03808211156144ae57600080fd5b6144ba89838a01614190565b909750955060208801359150808211156144d357600080fd5b506144e088828901614190565b96999598509660400135949350505050565b6000806040838503121561450557600080fd5b82356001600160401b03811681146140cf57600080fd5b60008060008060006060868803121561453457600080fd5b85356001600160401b038082111561454b57600080fd5b61455789838a016140dd565b9097509550602088013591508082111561457057600080fd5b506144e0888289016140dd565b6000806000806060858703121561459357600080fd5b8435935060208501356001600160401b038111156145b057600080fd5b6145bc878288016140dd565b9598909750949560400135949350505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561460d5761460d6145cf565b604052919050565b600082601f83011261462657600080fd5b81356001600160401b0381111561463f5761463f6145cf565b614652601f8201601f19166020016145e5565b81815284602083860101111561466757600080fd5b816020850160208301376000918101602001919091529392505050565b60006020828403121561469657600080fd5b81356001600160401b038111156146ac57600080fd5b610ce784828501614615565b6000602082840312156146ca57600080fd5b8135610df38161409c565b60006001600160401b038211156146ee576146ee6145cf565b5060051b60200190565b600061470b614706846146d5565b6145e5565b8381529050602080820190600585901b84018681111561472a57600080fd5b845b818110156147655780356001600160401b0381111561474b5760008081fd5b61475789828901614615565b85525092820192820161472c565b505050509392505050565b60006020828403121561478257600080fd5b81356001600160401b0381111561479857600080fd5b8201601f810184136147a957600080fd5b610ce7848235602084016146f8565b600080604083850312156147cb57600080fd5b50508035926020909101359150565b6040815260006147ed6040830185614044565b8281036020840152610def8185614044565b6000806000806060858703121561481557600080fd5b84356148208161409c565b93506020850135925060408501356001600160401b0381111561484257600080fd5b61484e878288016140dd565b95989497509550505050565b60008060008060008060006080888a03121561487557600080fd5b87356001600160401b038082111561488c57600080fd5b6148988b838c016140dd565b909950975060208a0135965060408a01359150808211156148b857600080fd5b6148c48b838c01614190565b909650945060608a01359150808211156148dd57600080fd5b506148ea8a828b01614190565b989b979a50959850939692959293505050565b6000806020838503121561491057600080fd5b82356001600160401b0381111561492657600080fd5b614473858286016140dd565b6000806040838503121561494557600080fd5b82356149508161409c565b9150612f8e60208401614331565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156149b357603f198886030184526149a1858351614044565b94509285019290850190600101614985565b5092979650505050505050565b6040815260006149d3604083018561421f565b8281036020840152610def818561421f565b600080600080608085870312156149fb57600080fd5b8435614a068161409c565b93506020850135614a168161409c565b92506040850135915060608501356001600160401b03811115614a3857600080fd5b614a4487828801614615565b91505092959194509250565b600080600060408486031215614a6557600080fd5b8335614a708161409c565b925060208401356001600160401b03811115614a8b57600080fd5b614324868287016140dd565b60008060408385031215614aaa57600080fd5b8235614ab58161409c565b91506020830135614ac58161409c565b809150509250929050565b600080600060408486031215614ae557600080fd5b8335925060208401356001600160401b03811115614a8b57600080fd5b60008060008060808587031215614b1857600080fd5b8435614b238161409c565b93506020850135614b338161409c565b92506040850135614b438161409c565b91506060850135614b538161409c565b939692955090935050565b600181811c90821680614b7257607f821691505b60208210810361143b57634e487b7160e01b600052602260045260246000fd5b600060208284031215614ba457600080fd5b610df382614331565b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112614bda57600080fd5b8301803591506001600160401b03821115614bf457600080fd5b602001915036819003821315613ef957600080fd5b634e487b7160e01b600052601160045260246000fd5b600060018201614c3157614c31614c09565b5060010190565b60208082526027908201527f52656769737472793a2053454e4445525f49535f4e4f545f4d494e54494e475f60408201526626a0a720a3a2a960c91b606082015260800190565b6000610df33684846146f8565b60208082526029908201527f52656769737472793a2053454e4445525f49535f4e4f545f415050524f5645446040820152682fa7a92fa7aba722a960b91b606082015260800190565b60208082526022908201527f52656769737472793a20494e53554646494349454e545f5045524d495353494f6040820152614e5360f01b606082015260800190565b60008251614d29818460208701614020565b9190910192915050565b601f821115610a4f57600081815260208120601f850160051c81016020861015614d5a5750805b601f850160051c820191505b818110156111ac57828155600101614d66565b6001600160401b03831115614d9057614d906145cf565b614da483614d9e8354614b5e565b83614d33565b6000601f841160018114614dd85760008515614dc05750838201355b600019600387901b1c1916600186901b178355610edc565b600083815260209020601f19861690835b82811015614e095786850135825560209485019460019092019101614de9565b5086821015614e265760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b602081526000610ce7602083018486614e38565b600060808236031215614e8757600080fd5b604051608081016001600160401b038282108183111715614eaa57614eaa6145cf565b8160405284359150614ebb8261409c565b81835260208501356020840152604085013560408401526060850135915080821115614ee657600080fd5b50614ef336828601614615565b60608301525092915050565b6000614f0d614706846146d5565b80848252602080830192508560051b850136811115614f2b57600080fd5b855b81811015614f665780356001600160401b03811115614f4c5760008081fd5b614f5836828a01614615565b865250938201938201614f2d565b50919695505050505050565b60008351614f84818460208801614020565b835190830190614f98818360208801614020565b01949350505050565b60006020808385031215614fb457600080fd5b82356001600160401b03811115614fca57600080fd5b8301601f81018513614fdb57600080fd5b8035614fe9614706826146d5565b81815260059190911b8201830190838101908783111561500857600080fd5b928401925b828410156150265783358252928401929084019061500d565b979650505050505050565b8082018082111561097c5761097c614c09565b6001600160a01b03848116825283166020820152606060408201819052600090610ba590830184614044565b634e487b7160e01b600052601260045260246000fd5b60008261509557615095615070565b500490565b634e487b7160e01b600052600160045260246000fd5b8181038181111561097c5761097c614c09565b6000816150d2576150d2614c09565b506000190190565b600083516150ec818460208801614020565b601760f91b908301908152835161510a816001840160208801614020565b01600101949350505050565b60006020828403121561512857600080fd5b5051919050565b60006020828403121561514157600080fd5b8151610df38161409c565b8183823760009101908152919050565b81516001600160401b03811115615175576151756145cf565b615189816151838454614b5e565b84614d33565b602080601f8311600181146151be57600084156151a65750858301515b600019600386901b1c1916600185901b1785556111ac565b600085815260208120601f198616915b828110156151ed578886015182559484019460019091019084016151ce565b508582101561520b5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6000845161522d818460208901614020565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6000826152bb576152bb615070565b500690565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b634e487b7160e01b600052602160045260246000fd5b828152604060208201526000610ce76040830184614044565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061325d90830184614044565b60006020828403121561537f57600080fd5b8151610df381613fed56febe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a"; + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "address"; + readonly name: "previousAdmin"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "address"; + readonly name: "newAdmin"; + readonly type: "address"; + }]; + readonly name: "AdminChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "approved"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Approval"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "ApprovalForAll"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "uint8"; + readonly name: "version"; + readonly type: "uint8"; + }]; + readonly name: "Initialized"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly indexed: true; + readonly internalType: "string"; + readonly name: "keyIndex"; + readonly type: "string"; + }, { + readonly indexed: false; + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }]; + readonly name: "NewKey"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly indexed: false; + readonly internalType: "string"; + readonly name: "uri"; + readonly type: "string"; + }]; + readonly name: "NewURI"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "string"; + readonly name: "prefix"; + readonly type: "string"; + }]; + readonly name: "NewURIPrefix"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }]; + readonly name: "RemoveReverse"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "ResetRecords"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly indexed: true; + readonly internalType: "string"; + readonly name: "keyIndex"; + readonly type: "string"; + }, { + readonly indexed: true; + readonly internalType: "string"; + readonly name: "valueIndex"; + readonly type: "string"; + }, { + readonly indexed: false; + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }, { + readonly indexed: false; + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }]; + readonly name: "Set"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly indexed: false; + readonly internalType: "uint64"; + readonly name: "expiry"; + readonly type: "uint64"; + }]; + readonly name: "SetExpiry"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "SetReverse"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Transfer"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "implementation"; + readonly type: "address"; + }]; + readonly name: "Upgraded"; + readonly type: "event"; + }, { + readonly inputs: readonly []; + readonly name: "BATCH_LIMIT"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "NAME"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "VERSION"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }]; + readonly name: "addKey"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }]; + readonly name: "addProxyReader"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "approve"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "balanceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "burn"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "user"; + readonly type: "address"; + }, { + readonly internalType: "bytes"; + readonly name: "depositData"; + readonly type: "bytes"; + }]; + readonly name: "deposit"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "depositToPolygon"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly components: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "nonce"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly internalType: "struct IForwarder.ForwardRequest"; + readonly name: "req"; + readonly type: "tuple"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "execute"; + readonly outputs: readonly [{ + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "exists"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "expiryOf"; + readonly outputs: readonly [{ + readonly internalType: "uint64"; + readonly name: ""; + readonly type: "uint64"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "get"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getApproved"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "keyHash"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getByHash"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }, { + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "keyHash"; + readonly type: "uint256"; + }]; + readonly name: "getKey"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256[]"; + readonly name: "hashes"; + readonly type: "uint256[]"; + }]; + readonly name: "getKeys"; + readonly outputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getMany"; + readonly outputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256[]"; + readonly name: "keyHashes"; + readonly type: "uint256[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getManyByHash"; + readonly outputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getTokenName"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "mintingManager"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "cnsRegistry"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "rootChainManager"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "childChainManager"; + readonly type: "address"; + }]; + readonly name: "initialize"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly name: "isApprovedForAll"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "spender"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "isApprovedOrOwner"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "isExpired"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "forwarder"; + readonly type: "address"; + }]; + readonly name: "isTrustedForwarder"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "user"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "mint"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "user"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: ""; + readonly type: "bytes"; + }]; + readonly name: "mint"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "string"; + readonly name: "uri"; + readonly type: "string"; + }]; + readonly name: "mintTLD"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "string[]"; + readonly name: "labels"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }, { + readonly internalType: "bool"; + readonly name: "withReverse"; + readonly type: "bool"; + }]; + readonly name: "mintWithRecords"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes[]"; + readonly name: "data"; + readonly type: "bytes[]"; + }]; + readonly name: "multicall"; + readonly outputs: readonly [{ + readonly internalType: "bytes[]"; + readonly name: "results"; + readonly type: "bytes[]"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "name"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "labels"; + readonly type: "string[]"; + }]; + readonly name: "namehash"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "hash"; + readonly type: "uint256"; + }]; + readonly stateMutability: "pure"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "nonceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "onERC721Received"; + readonly outputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: ""; + readonly type: "bytes4"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "ownerOf"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "reconfigure"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "removeReverse"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "reset"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "resolverOf"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }]; + readonly name: "reverseNameOf"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: "reverseUri"; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "addr"; + readonly type: "address"; + }]; + readonly name: "reverseOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "reverse"; + readonly type: "uint256"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "root"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly stateMutability: "pure"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }, { + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "set"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "setApprovalForAll"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "keyHash"; + readonly type: "uint256"; + }, { + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "setByHash"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint64"; + readonly name: "expiry"; + readonly type: "uint64"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "setExpiry"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "setMany"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256[]"; + readonly name: "keyHashes"; + readonly type: "uint256[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "setManyByHash"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "setOwner"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "labels"; + readonly type: "string[]"; + }]; + readonly name: "setReverse"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "prefix"; + readonly type: "string"; + }]; + readonly name: "setTokenURIPrefix"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "symbol"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "tokenURI"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "transferFrom"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "unlock"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "string[]"; + readonly name: "labels"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }, { + readonly internalType: "bool"; + readonly name: "withReverse"; + readonly type: "bool"; + }]; + readonly name: "unlockWithRecords"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256[]"; + readonly name: "tokenIds"; + readonly type: "uint256[]"; + }]; + readonly name: "upgradeAll"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly components: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "nonce"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly internalType: "struct IForwarder.ForwardRequest"; + readonly name: "req"; + readonly type: "tuple"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "verify"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes"; + readonly name: "inputData"; + readonly type: "bytes"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }]; + readonly name: "withdrawFromPolygon"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): UNSRegistryMockInterface; + static connect(address: string, runner?: ContractRunner | null): UNSRegistryMock; +} +export {}; +//# sourceMappingURL=UNSRegistryMock__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/UNSRegistryMock__factory.d.ts.map b/dist/types/factories/contracts/mocks/UNSRegistryMock__factory.d.ts.map new file mode 100644 index 00000000..a235dc9e --- /dev/null +++ b/dist/types/factories/contracts/mocks/UNSRegistryMock__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"UNSRegistryMock__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/mocks/UNSRegistryMock__factory.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/UNSRegistryMock__factory.js b/dist/types/factories/contracts/mocks/UNSRegistryMock__factory.js new file mode 100644 index 00000000..06b88c23 --- /dev/null +++ b/dist/types/factories/contracts/mocks/UNSRegistryMock__factory.js @@ -0,0 +1,1603 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.UNSRegistryMock__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "previousAdmin", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "newAdmin", + type: "address", + }, + ], + name: "AdminChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "approved", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Approval", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "ApprovalForAll", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint8", + name: "version", + type: "uint8", + }, + ], + name: "Initialized", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + indexed: true, + internalType: "string", + name: "keyIndex", + type: "string", + }, + { + indexed: false, + internalType: "string", + name: "key", + type: "string", + }, + ], + name: "NewKey", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + indexed: false, + internalType: "string", + name: "uri", + type: "string", + }, + ], + name: "NewURI", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "string", + name: "prefix", + type: "string", + }, + ], + name: "NewURIPrefix", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "RemoveReverse", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "ResetRecords", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + indexed: true, + internalType: "string", + name: "keyIndex", + type: "string", + }, + { + indexed: true, + internalType: "string", + name: "valueIndex", + type: "string", + }, + { + indexed: false, + internalType: "string", + name: "key", + type: "string", + }, + { + indexed: false, + internalType: "string", + name: "value", + type: "string", + }, + ], + name: "Set", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + indexed: false, + internalType: "uint64", + name: "expiry", + type: "uint64", + }, + ], + name: "SetExpiry", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "addr", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "SetReverse", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Transfer", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "implementation", + type: "address", + }, + ], + name: "Upgraded", + type: "event", + }, + { + inputs: [], + name: "BATCH_LIMIT", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "NAME", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "VERSION", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "key", + type: "string", + }, + ], + name: "addKey", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "addProxyReader", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "approve", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "burn", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "user", + type: "address", + }, + { + internalType: "bytes", + name: "depositData", + type: "bytes", + }, + ], + name: "deposit", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "depositToPolygon", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + components: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "uint256", + name: "nonce", + type: "uint256", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + internalType: "struct IForwarder.ForwardRequest", + name: "req", + type: "tuple", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "execute", + outputs: [ + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "exists", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "expiryOf", + outputs: [ + { + internalType: "uint64", + name: "", + type: "uint64", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "key", + type: "string", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "get", + outputs: [ + { + internalType: "string", + name: "value", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getApproved", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "keyHash", + type: "uint256", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getByHash", + outputs: [ + { + internalType: "string", + name: "key", + type: "string", + }, + { + internalType: "string", + name: "value", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "keyHash", + type: "uint256", + }, + ], + name: "getKey", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256[]", + name: "hashes", + type: "uint256[]", + }, + ], + name: "getKeys", + outputs: [ + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getMany", + outputs: [ + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256[]", + name: "keyHashes", + type: "uint256[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getManyByHash", + outputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getTokenName", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "mintingManager", + type: "address", + }, + { + internalType: "address", + name: "cnsRegistry", + type: "address", + }, + { + internalType: "address", + name: "rootChainManager", + type: "address", + }, + { + internalType: "address", + name: "childChainManager", + type: "address", + }, + ], + name: "initialize", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + name: "isApprovedForAll", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "spender", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "isApprovedOrOwner", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "isExpired", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "forwarder", + type: "address", + }, + ], + name: "isTrustedForwarder", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "user", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "mint", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "user", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + name: "mint", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "string", + name: "uri", + type: "string", + }, + ], + name: "mintTLD", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "string[]", + name: "labels", + type: "string[]", + }, + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + { + internalType: "bool", + name: "withReverse", + type: "bool", + }, + ], + name: "mintWithRecords", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes[]", + name: "data", + type: "bytes[]", + }, + ], + name: "multicall", + outputs: [ + { + internalType: "bytes[]", + name: "results", + type: "bytes[]", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "name", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string[]", + name: "labels", + type: "string[]", + }, + ], + name: "namehash", + outputs: [ + { + internalType: "uint256", + name: "hash", + type: "uint256", + }, + ], + stateMutability: "pure", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "nonceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "onERC721Received", + outputs: [ + { + internalType: "bytes4", + name: "", + type: "bytes4", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "ownerOf", + outputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "reconfigure", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "removeReverse", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "reset", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "resolverOf", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "reverseNameOf", + outputs: [ + { + internalType: "string", + name: "reverseUri", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "reverseOf", + outputs: [ + { + internalType: "uint256", + name: "reverse", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "root", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "pure", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "key", + type: "string", + }, + { + internalType: "string", + name: "value", + type: "string", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "set", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "setApprovalForAll", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "keyHash", + type: "uint256", + }, + { + internalType: "string", + name: "value", + type: "string", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "setByHash", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint64", + name: "expiry", + type: "uint64", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "setExpiry", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "setMany", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256[]", + name: "keyHashes", + type: "uint256[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "setManyByHash", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "setOwner", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string[]", + name: "labels", + type: "string[]", + }, + ], + name: "setReverse", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "prefix", + type: "string", + }, + ], + name: "setTokenURIPrefix", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "symbol", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "tokenURI", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "transferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "unlock", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "string[]", + name: "labels", + type: "string[]", + }, + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + { + internalType: "bool", + name: "withReverse", + type: "bool", + }, + ], + name: "unlockWithRecords", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256[]", + name: "tokenIds", + type: "uint256[]", + }, + ], + name: "upgradeAll", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + components: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "uint256", + name: "nonce", + type: "uint256", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + internalType: "struct IForwarder.ForwardRequest", + name: "req", + type: "tuple", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "verify", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes", + name: "inputData", + type: "bytes", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + ], + name: "withdrawFromPolygon", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +const _bytecode = "0x608060405234801561001057600080fd5b506153de806100206000396000f3fe608060405234801561001057600080fd5b50600436106103c55760003560e01c80637eee288d116101ff578063baef73e91161011a578063e985e9c5116100ad578063f5c1f76e1161007c578063f5c1f76e14610914578063f7df5c6014610927578063f8c8765e1461093a578063ffa1ad741461094d57600080fd5b8063e985e9c5146108b6578063ebf0c717146108f2578063ec129eea146108f9578063f25eb5c11461090c57600080fd5b8063ce92b33e116100e9578063ce92b33e1461086a578063cf2c52cb1461087d578063d9548e5314610890578063dbe16c07146108a357600080fd5b8063baef73e9146107ef578063bb5b27e114610831578063bebec6b414610844578063c87b56dd1461085757600080fd5b8063a424740011610192578063b3f9e4cb11610161578063b3f9e4cb14610795578063b85afd28146107a8578063b88d4fde146107c9578063ba5d40b7146107dc57600080fd5b8063a42474001461073c578063ab3b87fe1461074f578063ac9650d814610762578063ae31844a1461078257600080fd5b806395d89b41116101ce57806395d89b41146106e257806399e0dd7c146106ea578063a22cb465146106fd578063a3f4df7e1461071057600080fd5b80637eee288d146106a157806394d008ef146106b45780639508b1c4146106c75780639559c0bd146106da57600080fd5b806342842e0e116102ef578063572b6c0511610282578063672b9f8111610251578063672b9f81146106395780636ccbae5f1461065a57806370a082311461067b5780637e37479e1461068e57600080fd5b8063572b6c05146105e45780636352211e14610600578063638e5c7814610613578063663f7b2a1461062657600080fd5b80634a72584d116102be5780634a72584d146105985780634f558e79146105ab57806350382c1a146105be57806350960239146105d157600080fd5b806342842e0e1461054c57806342966c681461055f578063430c20811461057257806347c816991461058557600080fd5b80631bf7e13e1161036757806327f189751161033657806327f1897514610500578063310bd74b146105135780633f72ec6e1461052657806340c10f191461053957600080fd5b80631bf7e13e146104a65780631f71be06146104b957806323b872dd146104cc578063276fabb1146104df57600080fd5b8063095ea7b3116103a3578063095ea7b314610432578063150b7a02146104475780631bd8cc1a146104735780631be5e7ed1461049357600080fd5b806301ffc9a7146103ca57806306fdde03146103f2578063081812fc14610407575b600080fd5b6103dd6103d8366004614003565b610971565b60405190151581526020015b60405180910390f35b6103fa610982565b6040516103e99190614070565b61041a610415366004614083565b610a14565b6040516001600160a01b0390911681526020016103e9565b6104456104403660046140b1565b610a3b565b005b61045a61045536600461411e565b610a54565b6040516001600160e01b031990911681526020016103e9565b6104866104813660046141d4565b610bae565b6040516103e99190614277565b6103fa6104a136600461428a565b610ca4565b6103fa6104b43660046142c1565b610cef565b6104456104c7366004614341565b610dfa565b6104456104da3660046143fd565b610e90565b6104f26104ed36600461443e565b610ee3565b6040519081526020016103e9565b61044561050e36600461447f565b610ef2565b610445610521366004614083565b610f3a565b6104456105343660046144f2565b610f75565b6104456105473660046140b1565b611077565b61044561055a3660046143fd565b6110c4565b61044561056d366004614083565b6110df565b6103dd6105803660046140b1565b611123565b61044561059336600461451c565b61112f565b6104456105a636600461457d565b61116e565b6103dd6105b9366004614083565b6111b4565b6104456105cc366004614684565b6111d3565b6104456105df3660046146b8565b611209565b6103dd6105f23660046146b8565b6001600160a01b0316301490565b61041a61060e366004614083565b611269565b610445610621366004614083565b611286565b610445610634366004614770565b6112d1565b61064c6106473660046147b8565b611372565b6040516103e99291906147da565b6104f2610668366004614083565b6000908152610100602052604090205490565b6104f26106893660046146b8565b61138a565b6104f261069c3660046146b8565b611410565b6104456106af3660046140b1565b611441565b6104456106c23660046147ff565b611498565b6104456106d536600461485a565b6114e7565b6104f2601481565b6103fa61156e565b6104456106f83660046148fd565b61157d565b61044561070b366004614932565b611604565b6103fa6040518060400160405280600d81526020016c554e533a20526567697374727960981b81525081565b6103dd61074a3660046142c1565b611616565b61044561075d3660046140b1565b611661565b61077561077036600461443e565b6116a6565b6040516103e9919061495e565b61044561079036600461443e565b611782565b61041a6107a3366004614083565b611820565b6107bb6107b63660046141d4565b61184a565b6040516103e99291906149c0565b6104456107d73660046149e5565b61196c565b6104456107ea366004614341565b6119b3565b6108196107fd366004614083565b600090815261013960205260409020546001600160401b031690565b6040516001600160401b0390911681526020016103e9565b6103fa61083f366004614083565b611a3c565b6103fa6108523660046146b8565b611ade565b6103fa610865366004614083565b611ba8565b61044561087836600461447f565b611c0e565b61044561088b366004614a50565b611c4d565b6103dd61089e366004614083565b611d1c565b6103fa6108b1366004614083565b611d5f565b6103dd6108c4366004614a97565b6001600160a01b039182166000908152606a6020908152604080832093909416825291909152205460ff1690565b60006104f2565b61044561090736600461447f565b611d7d565b610445611dbc565b61048661092236600461443e565b611e43565b610445610935366004614ad0565b611ef6565b610445610948366004614b02565b611f87565b6103fa60405180604001604052806005815260200164302e392e3160d81b81525081565b600061097c8261215d565b92915050565b60606065805461099190614b5e565b80601f01602080910402602001604051908101604052809291908181526020018280546109bd90614b5e565b8015610a0a5780601f106109df57610100808354040283529160200191610a0a565b820191906000526020600020905b8154815290600101906020018083116109ed57829003601f168201915b5050505050905090565b6000610a1f826121ad565b506000908152606960205260409020546001600160a01b031690565b80610a458161220c565b610a4f8383612272565b505050565b60007f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378546001600160a01b0316610a89612394565b6001600160a01b031603610b4a57610a9f612394565b6001600160a01b03166342966c68856040518263ffffffff1660e01b8152600401610acc91815260200190565b600060405180830381600087803b158015610ae657600080fd5b505af1158015610afa573d6000803e3d6000fd5b505050821580159150610b145750610b1482840184614b92565b15610b3257610b2330856123a3565b610b2d85856124f1565b610b3c565b610b3c85856123a3565b50630a85bd0160e11b610ba5565b60405162461bcd60e51b815260206004820152602560248201527f52656769737472793a204552433732315f524543454956494e475f50524f4849604482015264109255115160da1b60648201526084015b60405180910390fd5b95945050505050565b6060826001600160401b03811115610bc857610bc86145cf565b604051908082528060200260200182016040528015610bfb57816020015b6060815260200190600190039081610be65790505b50905060005b83811015610c9c57610c6c858583818110610c1e57610c1e614bad565b9050602002810190610c309190614bc3565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525087925061259c915050565b828281518110610c7e57610c7e614bad565b60200260200101819052508080610c9490614c1f565b915050610c01565b509392505050565b6060610ce784848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525086925061259c915050565b949350505050565b606060005a9050610d01858585611616565b610d5d5760405162461bcd60e51b815260206004820152602760248201527f554e535265676973747279466f727761726465723a205349474e41545552455f6044820152661253959053125160ca1b6064820152608401610b9c565b610def610d6d60208701876146b8565b30604088013584610d8160608b018b614bc3565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284376000920191909152506125d192505050565b9150505b9392505050565b610134546001600160a01b0316610e0f612394565b6001600160a01b031614610e355760405162461bcd60e51b8152600401610b9c90614c38565b6000610e49610e44888a614c7f565b6126b2565b509050610e568982611441565b610e63868686868561270a565b8115610e8557610e858982610e80610e7b8b8d614c7f565b612778565b6127f9565b505050505050505050565b80610ea2610e9c612394565b8261283b565b610ebe5760405162461bcd60e51b8152600401610b9c90614c8c565b81610ec88161220c565b610ed1836128cc565b610edc858585612939565b5050505050565b6000610c9c610e448385614c7f565b80610efe610e9c612394565b610f1a5760405162461bcd60e51b8152600401610b9c90614c8c565b81610f248161220c565b610f318787878787612ae0565b50505050505050565b80610f46610e9c612394565b610f625760405162461bcd60e51b8152600401610b9c90614c8c565b81610f6c8161220c565b610a4f836128cc565b610134546001600160a01b0316610f8a612394565b6001600160a01b031614610fb05760405162461bcd60e51b8152600401610b9c90614c38565b610fb9816121ad565b42826001600160401b0316116110115760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a204558504952595f494e5f5041535400000000000000006044820152606401610b9c565b60008181526101396020908152604091829020805467ffffffffffffffff19166001600160401b038616908117909155915191825282917f93feabb03ab84f47fc85bf0c298103fca21d8c8bc376eae0c1e1c56b9d4f7789910160405180910390a25050565b61107f612b43565b6001600160a01b0316611090612394565b6001600160a01b0316146110b65760405162461bcd60e51b8152600401610b9c90614cd5565b6110c082826123a3565b5050565b610a4f8383836040518060200160405280600081525061196c565b806110eb610e9c612394565b6111075760405162461bcd60e51b8152600401610b9c90614c8c565b816111118161220c565b61111a836128cc565b610a4f83612c44565b6000610df3838361283b565b8061113b610e9c612394565b6111575760405162461bcd60e51b8152600401610b9c90614c8c565b816111618161220c565b610f318787878787612ceb565b8061117a610e9c612394565b6111965760405162461bcd60e51b8152600401610b9c90614c8c565b816111a08161220c565b6111ac86868686612dca565b505050505050565b6000818152606760205260408120546001600160a01b0316151561097c565b611206816040516020016111e79190614d17565b6040516020818303038152906040528051906020012060001c82612e6a565b50565b610134546001600160a01b031661121e612394565b6001600160a01b0316146112445760405162461bcd60e51b8152600401610b9c90614c38565b6001600160a01b0316600090815261013660205260409020805460ff19166001179055565b600061127482611d1c565b6112815761097c82612e8f565b919050565b80611292610e9c612394565b6112ae5760405162461bcd60e51b8152600401610b9c90614c8c565b6112c06112b9612394565b3084612939565b6110c06112cb612394565b836124f1565b60006112dc826126b2565b5090506112e7612394565b6001600160a01b03166112f982611269565b6001600160a01b03161461134f5760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b9c565b6113588161220c565b6110c0611363612394565b8261136d85612778565b612eef565b60608061137f8484612f76565b909590945092505050565b60006001600160a01b0382166113f45760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b6064820152608401610b9c565b506001600160a01b031660009081526068602052604090205490565b6001600160a01b0381166000908152610135602052604081205461143381612f97565b61143b578091505b50919050565b610134546001600160a01b0316611456612394565b6001600160a01b03161461147c5760405162461bcd60e51b8152600401610b9c90614c38565b611485816128cc565b6110c061149182612e8f565b8383612939565b6114a0612b43565b6001600160a01b03166114b1612394565b6001600160a01b0316146114d75760405162461bcd60e51b8152600401610b9c90614cd5565b6114e184846123a3565b50505050565b6114f18787612fe1565b6114f9612394565b6001600160a01b031661150b86611269565b6001600160a01b0316146115615760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b9c565b610f31848484848961270a565b60606066805461099190614b5e565b610134546001600160a01b0316611592612394565b6001600160a01b0316146115b85760405162461bcd60e51b8152600401610b9c90614c38565b6101336115c6828483614d79565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b82826040516115f8929190614e61565b60405180910390a15050565b6110c061160f612394565b8383613050565b6000610ce761162485614e75565b3085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061311e92505050565b8061166d610e9c612394565b6116895760405162461bcd60e51b8152600401610b9c90614c8c565b816116938161220c565b6114e161169f84612e8f565b8585612939565b606060006116b48385614eff565b90503033036117795760005b83811015611777576117476116d3612394565b6116db613267565b8787858181106116ed576116ed614bad565b90506020028101906116ff9190614bc3565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201829052506040805160208101909152908152925061327b915050565b82828151811061175957611759614bad565b6020026020010181905250808061176f90614c1f565b9150506116c0565b505b610ce7816132ab565b610134546001600160a01b0316611797612394565b6001600160a01b0316146117bd5760405162461bcd60e51b8152600401610b9c90614c38565b60005b81811015610a4f57600161013760008585858181106117e1576117e1614bad565b90506020020135815260200190815260200160002060006101000a81548160ff021916908315150217905550808061181890614c1f565b9150506117c0565b6000818152606760205260408120546001600160a01b031661184357600061097c565b3092915050565b606080836001600160401b03811115611865576118656145cf565b60405190808252806020026020018201604052801561189857816020015b60608152602001906001900390816118835790505b509150836001600160401b038111156118b3576118b36145cf565b6040519080825280602002602001820160405280156118e657816020015b60608152602001906001900390816118d15790505b50905060005b848110156119635761191686868381811061190957611909614bad565b9050602002013585612f76565b84838151811061192857611928614bad565b6020026020010184848151811061194157611941614bad565b602002602001018290528290525050808061195b90614c1f565b9150506118ec565b50935093915050565b81611978610e9c612394565b6119945760405162461bcd60e51b8152600401610b9c90614c8c565b8261199e8161220c565b6119a7846128cc565b6111ac868686866133d6565b610134546001600160a01b03166119c8612394565b6001600160a01b0316146119ee5760405162461bcd60e51b8152600401610b9c90614c38565b6000806119fe610e44898b614c7f565b91509150611a0b81613409565b611a238a83611a1d610e7b8c8e614c7f565b86613469565b611a30878787878661270a565b50505050505050505050565b600081815260c960205260409020805460609190611a5990614b5e565b80601f0160208091040260200160405190810160405280929190818152602001828054611a8590614b5e565b8015611ad25780601f10611aa757610100808354040283529160200191611ad2565b820191906000526020600020905b815481529060010190602001808311611ab557829003601f168201915b50505050509050919050565b6001600160a01b03811660009081526101356020526040902054606090611b0481612f97565b61143b576000818152610138602052604090208054611b2290614b5e565b80601f0160208091040260200160405190810160405280929190818152602001828054611b4e90614b5e565b8015611b9b5780601f10611b7057610100808354040283529160200191611b9b565b820191906000526020600020905b815481529060010190602001808311611b7e57829003601f168201915b5050505050915050919050565b6060611bb3826121ad565b6000611bbd6134bc565b90506000815111611bdd5760405180602001604052806000815250610df3565b80611be7846134cc565b604051602001611bf8929190614f72565b6040516020818303038152906040529392505050565b80611c1a610e9c612394565b611c365760405162461bcd60e51b8152600401610b9c90614c8c565b81611c408161220c565b610f31878787878761270a565b7f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87546001600160a01b0316611c80612394565b6001600160a01b031614611ca65760405162461bcd60e51b8152600401610b9c90614cd5565b6020819003611cc9576000611cbd82840184614083565b90506114e184826123a3565b6000611cd782840184614fa1565b805190915060005b818110156111ac57611d0a86848381518110611cfd57611cfd614bad565b60200260200101516123a3565b80611d1481614c1f565b915050611cdf565b600081815261013960205260408120546001600160401b03161580159061097c57505060009081526101396020526040902054426001600160401b039091161090565b600081815261013860205260409020805460609190611a5990614b5e565b80611d89610e9c612394565b611da55760405162461bcd60e51b8152600401610b9c90614c8c565b81611daf8161220c565b610f3187878787876135cc565b6000611dc6612394565b6001600160a01b0381166000908152610135602052604081205491925003611e3a5760405162461bcd60e51b815260206004820152602160248201527f52656769737472793a20524556455253455f5245434f52445f49535f454d50546044820152605960f81b6064820152608401610b9c565b611206816135e2565b6060816001600160401b03811115611e5d57611e5d6145cf565b604051908082528060200260200182016040528015611e9057816020015b6060815260200190600190039081611e7b5790505b50905060005b82811015611eef57611ebf848483818110611eb357611eb3614bad565b90506020020135611a3c565b828281518110611ed157611ed1614bad565b60200260200101819052508080611ee790614c1f565b915050611e96565b5092915050565b610134546001600160a01b0316611f0b612394565b6001600160a01b031614611f315760405162461bcd60e51b8152600401610b9c90614c38565b61013454611f48906001600160a01b0316846123a3565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c39528383604051611f7a929190614e61565b60405180910390a2505050565b600054610100900460ff1615808015611fa75750600054600160ff909116105b80611fc15750303b158015611fc1575060005460ff166001145b6120245760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610b9c565b6000805460ff191660011790558015612047576000805461ff0019166101001790555b61013480546001600160a01b0319166001600160a01b038716179055837f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec9237880546001600160a01b0319166001600160a01b03929092169190911790556040805180820182526013815272556e73746f707061626c6520446f6d61696e7360681b60208083019190915282518084019093526002835261155160f21b908301526120ef91613627565b6120f7613667565b6120ff613667565b61210883613690565b612111826136c0565b8015610edc576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b60006001600160e01b031982166380ac58cd60e01b148061218e57506001600160e01b03198216635b5e139f60e01b145b8061097c57506301ffc9a760e01b6001600160e01b031983161461097c565b6000818152606760205260409020546001600160a01b03166112065760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b9c565b3033036122695761221b613267565b81146112065760405162461bcd60e51b815260206004820152601760248201527f52656769737472793a20544f4b454e5f494e56414c49440000000000000000006044820152606401610b9c565b611206816136f0565b600061227d82612e8f565b9050806001600160a01b0316836001600160a01b0316036122ea5760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b6064820152608401610b9c565b806001600160a01b03166122fc612394565b6001600160a01b031614806123185750612318816108c4612394565b61238a5760405162461bcd60e51b815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c00006064820152608401610b9c565b610a4f838361371e565b600061239e61378c565b905090565b6001600160a01b0382166123f95760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610b9c565b6000818152606760205260409020546001600160a01b03161561245e5760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610b9c565b61246a600083836137a7565b6001600160a01b0382166000908152606860205260408120805460019290612493908490615031565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b03861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b60006124fb612b43565b9050612507818361371e565b60008051602061538b83398151915254604080516020808201869052825180830390910181528183019283905263e3dec8fb60e01b9092526001600160a01b0390921691829163e3dec8fb91612564918891309190604401615044565b600060405180830381600087803b15801561257e57600080fd5b505af1158015612592573d6000803e3d6000fd5b5050505050505050565b6060610df3836040516020016125b29190614d17565b6040516020818303038152906040528051906020012060001c83613883565b60606125dc856136f0565b600080876001600160a01b0316866125f68b8a898961327b565b6040516126039190614d17565b60006040518083038160008787f1925050503d8060008114612641576040519150601f19603f3d011682016040523d82523d6000602084013e612646565b606091505b509092509050612657603f87615086565b5a116126655761266561509a565b6126a582826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c4544000000000000815250613965565b9998505050505050505050565b805160009081905b8015612704578291506126f082856126d36001856150b0565b815181106126e3576126e3614bad565b602002602001015161399e565b9250806126fc816150c3565b9150506126ba565b50915091565b60005b848110156111ac5761276686868381811061272a5761272a614bad565b905060200281019061273c9190614bc3565b86868581811061274e5761274e614bad565b90506020028101906127609190614bc3565b86612ceb565b8061277081614c1f565b91505061270d565b606060008260008151811061278f5761278f614bad565b602002602001015190506000600190505b8351811015611eef57818482815181106127bc576127bc614bad565b60200260200101516040516020016127d59291906150da565b604051602081830303815290604052915080806127f190614c1f565b9150506127a0565b61dead6001600160a01b0384161480159061282b57506001600160a01b03831660009081526101356020526040902054155b15610a4f57610a4f838383612eef565b60008061284783611269565b90506001600160a01b03811615801590610ce75750806001600160a01b0316846001600160a01b031614806128a157506001600160a01b038082166000908152606a602090815260408083209388168352929052205460ff165b80610ce75750836001600160a01b03166128ba84610a14565b6001600160a01b031614949350505050565b6128d581613a4a565b6040516020016128e791815260200190565b60408051601f198184030181528282528051602091820120600085815260cb9092529181209190915582917f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9190a250565b826001600160a01b031661294c82612e8f565b6001600160a01b0316146129b05760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b6064820152608401610b9c565b6001600160a01b038216612a125760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610b9c565b612a1d8383836137a7565b612a2860008261371e565b6001600160a01b0383166000908152606860205260408120805460019290612a519084906150b0565b90915550506001600160a01b0382166000908152606860205260408120805460019290612a7f908490615031565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60005b848110156111ac57612b31868683818110612b0057612b00614bad565b90506020020135858584818110612b1957612b19614bad565b9050602002810190612b2b9190614bc3565b85612dca565b80612b3b81614c1f565b915050612ae3565b60008051602061538b833981519152546000906001600160a01b03168015612c405760405163721804d360e11b81523060048201526000906001600160a01b0383169063e43009a690602401602060405180830381865afa158015612bac573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612bd09190615116565b60405163e66f960360e01b8152600481018290529091506001600160a01b0383169063e66f960390602401602060405180830381865afa158015612c18573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612c3c919061512f565b9250505b5090565b6000612c4f82612e8f565b9050612c5d816000846137a7565b612c6860008361371e565b6001600160a01b0381166000908152606860205260408120805460019290612c919084906150b0565b909155505060008281526067602052604080822080546001600160a01b0319169055518391906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b60008585604051602001612d0092919061514c565b60408051601f198184030181528282528051602091820120601f8901829004820284018201909252878352909250612d549183918990899081908401838280828437600092019190915250612e6a92505050565b6111ac8187878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b018190048102820181019092528981529250899150889081908401838280828437600092019190915250889250613a72915050565b612dd384613ba7565b612e1f5760405162461bcd60e51b815260206004820152601c60248201527f5265636f726453746f726167653a204b45595f4e4f545f464f554e44000000006044820152606401610b9c565b6114e184612e2c86611a3c565b85858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250879250613a72915050565b612e7382613ba7565b6110c057600082815260c960205260409020610a4f828261515c565b6000818152606760205260408120546001600160a01b03168061097c5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b9c565b6000828152610138602052604090208054612f0990614b5e565b9050600003612f2d57600082815261013860205260409020612f2b828261515c565b505b6001600160a01b03831660008181526101356020526040808220859055518492917feb76a21470988c474a21f690cc28fee1ed511bd812dc3c21fd0f49c5e5d4708a91a3505050565b606080612f8284611a3c565b9150612f8e8484613883565b90509250929050565b6000818152610137602052604081205460ff16801561097c57506101366000612fbe612394565b6001600160a01b0316815260208101919091526040016000205460ff1692915050565b60008051602061538b83398151915254604051633805550f60e01b81526001600160a01b03909116908190633805550f906130229086908690600401614e61565b600060405180830381600087803b15801561303c57600080fd5b505af1158015610f31573d6000803e3d6000fd5b816001600160a01b0316836001600160a01b0316036130b15760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610b9c565b6001600160a01b038381166000818152606a6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015613165573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131899190615116565b905060006132378660600151805190602001208688602001516040516020016131d79392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561325d5750855161325d906001600160a01b03168286613bcd565b9695505050505050565b60003033036132785750601f193601355b90565b60608285856040516020016132929392919061521b565b6040516020818303038152906040529050949350505050565b606081516001600160401b038111156132c6576132c66145cf565b6040519080825280602002602001820160405280156132f957816020015b60608152602001906001900390816132e45790505b50905060005b825181101561143b57600080306001600160a01b031685848151811061332757613327614bad565b602002602001015160405161333c9190614d17565b600060405180830381855af49150503d8060008114613377576040519150601f19603f3d011682016040523d82523d6000602084013e61337c565b606091505b50915091506133a482826040518060600160405280602781526020016153ab60279139613965565b8484815181106133b6576133b6614bad565b6020026020010181905250505080806133ce90614c1f565b9150506132ff565b6133e1848484612939565b6133ed84848484613d0f565b6114e15760405162461bcd60e51b8152600401610b9c9061525a565b6000818152610137602052604090205460ff16156112065760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a20544f4b454e5f555047524144454400000000000000006044820152606401610b9c565b61347384846123a3565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952836040516134a39190614070565b60405180910390a280156114e1576114e18484846127f9565b6060610133805461099190614b5e565b6060816000036134f35750506040805180820190915260018152600360fc1b602082015290565b8160005b811561351d578061350781614c1f565b91506135169050600a83615086565b91506134f7565b6000816001600160401b03811115613537576135376145cf565b6040519080825280601f01601f191660200182016040528015613561576020820181803683370190505b5090505b8415610ce7576135766001836150b0565b9150613583600a866152ac565b61358e906030615031565b60f81b8183815181106135a3576135a3614bad565b60200101906001600160f81b031916908160001a9053506135c5600a86615086565b9450613565565b6135d5816128cc565b610edc858585858561270a565b6001600160a01b03811660008181526101356020526040808220829055517ffcf5eec0cfa3e6332f5f0e63ec242d71f866a61d121d6cdf5c2eb3b668a26c4f9190a250565b600054610100900460ff1661364e5760405162461bcd60e51b8152600401610b9c906152c0565b606561365a838261515c565b506066610a4f828261515c565b600054610100900460ff1661368e5760405162461bcd60e51b8152600401610b9c906152c0565b565b600054610100900460ff166136b75760405162461bcd60e51b8152600401610b9c906152c0565b61120681613e14565b600054610100900460ff166136e75760405162461bcd60e51b8152600401610b9c906152c0565b61120681613e6d565b6000818152610100602052604090205461370b906001615031565b6000918252610100602052604090912055565b600081815260696020526040902080546001600160a01b0319166001600160a01b038416908117909155819061375382612e8f565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60003033036137a2575060331936013560601c90565b503390565b6001600160a01b0382166137be576137be81613409565b600081815261013960205260409020546001600160401b031615613859576001600160a01b0382161580159061380d57506137f7612b43565b6001600160a01b0316826001600160a01b031614155b6138595760405162461bcd60e51b815260206004820152601960248201527f52656769737472793a20544f4b454e5f455850495241424c45000000000000006044820152606401610b9c565b6001600160a01b03831660009081526101356020526040902054819003610a4f57610a4f836135e2565b606061388e82612f97565b156138a8575060408051602081019091526000815261097c565b60ca60006138b584613a4a565b8152602001908152602001600020600084815260200190815260200160002080546138df90614b5e565b80601f016020809104026020016040519081016040528092919081815260200182805461390b90614b5e565b80156139585780601f1061392d57610100808354040283529160200191613958565b820191906000526020600020905b81548152906001019060200180831161393b57829003601f168201915b5050505050905092915050565b60608315613974575081610df3565b8251156139845782518084602001fd5b8160405162461bcd60e51b8152600401610b9c9190614070565b600081516000036139e95760405162461bcd60e51b815260206004820152601560248201527452656769737472793a204c4142454c5f454d50545960581b6044820152606401610b9c565b82826040516020016139fb9190614d17565b60405160208183030381529060405280519060200120604051602001613a2b929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b600081815260cb602052604081205415612c4057600082815260cb602052604090205461097c565b60ca6000613a7f83613a4a565b815260200190815260200160002060008581526020019081526020016000208054613aa990614b5e565b9050600003613b015782604051613ac09190614d17565b6040518091039020817f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f8685604051613af89190614070565b60405180910390a35b8160ca6000613b0f84613a4a565b815260200190815260200160002060008681526020019081526020016000209081613b3a919061515c565b5081604051613b499190614d17565b604051809103902083604051613b5f9190614d17565b6040518091039020827f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d928686604051613b999291906147da565b60405180910390a450505050565b600081815260c9602052604081208054829190613bc390614b5e565b9050119050919050565b6000806000613bdc8585613ebb565b90925090506000816004811115613bf557613bf561530b565b148015613c135750856001600160a01b0316826001600160a01b0316145b15613c2357600192505050610df3565b600080876001600160a01b0316631626ba7e60e01b8888604051602401613c4b929190615321565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051613c899190614d17565b600060405180830381855afa9150503d8060008114613cc4576040519150601f19603f3d011682016040523d82523d6000602084013e613cc9565b606091505b5091509150818015613cdc575080516020145b8015613d0357508051630b135d3f60e11b90613d019083016020908101908401615116565b145b98975050505050505050565b60006001600160a01b0384163b15613e0c57836001600160a01b031663150b7a02613d38612394565b8786866040518563ffffffff1660e01b8152600401613d5a949392919061533a565b6020604051808303816000875af1925050508015613d95575060408051601f3d908101601f19168201909252613d929181019061536d565b60015b613df2573d808015613dc3576040519150601f19603f3d011682016040523d82523d6000602084013e613dc8565b606091505b508051600003613dea5760405162461bcd60e51b8152600401610b9c9061525a565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610ce7565b506001610ce7565b600054610100900460ff16613e3b5760405162461bcd60e51b8152600401610b9c906152c0565b8060008051602061538b8339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b600054610100900460ff16613e945760405162461bcd60e51b8152600401610b9c906152c0565b807f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87613e4c565b6000808251604103613ef15760208301516040840151606085015160001a613ee587828585613f00565b94509450505050613ef9565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613f375750600090506003613fe4565b8460ff16601b14158015613f4f57508460ff16601c14155b15613f605750600090506004613fe4565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613fb4573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613fdd57600060019250925050613fe4565b9150600090505b94509492505050565b6001600160e01b03198116811461120657600080fd5b60006020828403121561401557600080fd5b8135610df381613fed565b60005b8381101561403b578181015183820152602001614023565b50506000910152565b6000815180845261405c816020860160208601614020565b601f01601f19169290920160200192915050565b602081526000610df36020830184614044565b60006020828403121561409557600080fd5b5035919050565b6001600160a01b038116811461120657600080fd5b600080604083850312156140c457600080fd5b82356140cf8161409c565b946020939093013593505050565b60008083601f8401126140ef57600080fd5b5081356001600160401b0381111561410657600080fd5b602083019150836020828501011115613ef957600080fd5b60008060008060006080868803121561413657600080fd5b85356141418161409c565b945060208601356141518161409c565b93506040860135925060608601356001600160401b0381111561417357600080fd5b61417f888289016140dd565b969995985093965092949392505050565b60008083601f8401126141a257600080fd5b5081356001600160401b038111156141b957600080fd5b6020830191508360208260051b8501011115613ef957600080fd5b6000806000604084860312156141e957600080fd5b83356001600160401b038111156141ff57600080fd5b61420b86828701614190565b909790965060209590950135949350505050565b600082825180855260208086019550808260051b84010181860160005b8481101561426a57601f19868403018952614258838351614044565b9884019892509083019060010161423c565b5090979650505050505050565b602081526000610df3602083018461421f565b60008060006040848603121561429f57600080fd5b83356001600160401b038111156142b557600080fd5b61420b868287016140dd565b6000806000604084860312156142d657600080fd5b83356001600160401b03808211156142ed57600080fd5b908501906080828803121561430157600080fd5b9093506020850135908082111561431757600080fd5b50614324868287016140dd565b9497909650939450505050565b8035801515811461128157600080fd5b60008060008060008060008060a0898b03121561435d57600080fd5b88356143688161409c565b975060208901356001600160401b038082111561438457600080fd5b6143908c838d01614190565b909950975060408b01359150808211156143a957600080fd5b6143b58c838d01614190565b909750955060608b01359150808211156143ce57600080fd5b506143db8b828c01614190565b90945092506143ee905060808a01614331565b90509295985092959890939650565b60008060006060848603121561441257600080fd5b833561441d8161409c565b9250602084013561442d8161409c565b929592945050506040919091013590565b6000806020838503121561445157600080fd5b82356001600160401b0381111561446757600080fd5b61447385828601614190565b90969095509350505050565b60008060008060006060868803121561449757600080fd5b85356001600160401b03808211156144ae57600080fd5b6144ba89838a01614190565b909750955060208801359150808211156144d357600080fd5b506144e088828901614190565b96999598509660400135949350505050565b6000806040838503121561450557600080fd5b82356001600160401b03811681146140cf57600080fd5b60008060008060006060868803121561453457600080fd5b85356001600160401b038082111561454b57600080fd5b61455789838a016140dd565b9097509550602088013591508082111561457057600080fd5b506144e0888289016140dd565b6000806000806060858703121561459357600080fd5b8435935060208501356001600160401b038111156145b057600080fd5b6145bc878288016140dd565b9598909750949560400135949350505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561460d5761460d6145cf565b604052919050565b600082601f83011261462657600080fd5b81356001600160401b0381111561463f5761463f6145cf565b614652601f8201601f19166020016145e5565b81815284602083860101111561466757600080fd5b816020850160208301376000918101602001919091529392505050565b60006020828403121561469657600080fd5b81356001600160401b038111156146ac57600080fd5b610ce784828501614615565b6000602082840312156146ca57600080fd5b8135610df38161409c565b60006001600160401b038211156146ee576146ee6145cf565b5060051b60200190565b600061470b614706846146d5565b6145e5565b8381529050602080820190600585901b84018681111561472a57600080fd5b845b818110156147655780356001600160401b0381111561474b5760008081fd5b61475789828901614615565b85525092820192820161472c565b505050509392505050565b60006020828403121561478257600080fd5b81356001600160401b0381111561479857600080fd5b8201601f810184136147a957600080fd5b610ce7848235602084016146f8565b600080604083850312156147cb57600080fd5b50508035926020909101359150565b6040815260006147ed6040830185614044565b8281036020840152610def8185614044565b6000806000806060858703121561481557600080fd5b84356148208161409c565b93506020850135925060408501356001600160401b0381111561484257600080fd5b61484e878288016140dd565b95989497509550505050565b60008060008060008060006080888a03121561487557600080fd5b87356001600160401b038082111561488c57600080fd5b6148988b838c016140dd565b909950975060208a0135965060408a01359150808211156148b857600080fd5b6148c48b838c01614190565b909650945060608a01359150808211156148dd57600080fd5b506148ea8a828b01614190565b989b979a50959850939692959293505050565b6000806020838503121561491057600080fd5b82356001600160401b0381111561492657600080fd5b614473858286016140dd565b6000806040838503121561494557600080fd5b82356149508161409c565b9150612f8e60208401614331565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156149b357603f198886030184526149a1858351614044565b94509285019290850190600101614985565b5092979650505050505050565b6040815260006149d3604083018561421f565b8281036020840152610def818561421f565b600080600080608085870312156149fb57600080fd5b8435614a068161409c565b93506020850135614a168161409c565b92506040850135915060608501356001600160401b03811115614a3857600080fd5b614a4487828801614615565b91505092959194509250565b600080600060408486031215614a6557600080fd5b8335614a708161409c565b925060208401356001600160401b03811115614a8b57600080fd5b614324868287016140dd565b60008060408385031215614aaa57600080fd5b8235614ab58161409c565b91506020830135614ac58161409c565b809150509250929050565b600080600060408486031215614ae557600080fd5b8335925060208401356001600160401b03811115614a8b57600080fd5b60008060008060808587031215614b1857600080fd5b8435614b238161409c565b93506020850135614b338161409c565b92506040850135614b438161409c565b91506060850135614b538161409c565b939692955090935050565b600181811c90821680614b7257607f821691505b60208210810361143b57634e487b7160e01b600052602260045260246000fd5b600060208284031215614ba457600080fd5b610df382614331565b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112614bda57600080fd5b8301803591506001600160401b03821115614bf457600080fd5b602001915036819003821315613ef957600080fd5b634e487b7160e01b600052601160045260246000fd5b600060018201614c3157614c31614c09565b5060010190565b60208082526027908201527f52656769737472793a2053454e4445525f49535f4e4f545f4d494e54494e475f60408201526626a0a720a3a2a960c91b606082015260800190565b6000610df33684846146f8565b60208082526029908201527f52656769737472793a2053454e4445525f49535f4e4f545f415050524f5645446040820152682fa7a92fa7aba722a960b91b606082015260800190565b60208082526022908201527f52656769737472793a20494e53554646494349454e545f5045524d495353494f6040820152614e5360f01b606082015260800190565b60008251614d29818460208701614020565b9190910192915050565b601f821115610a4f57600081815260208120601f850160051c81016020861015614d5a5750805b601f850160051c820191505b818110156111ac57828155600101614d66565b6001600160401b03831115614d9057614d906145cf565b614da483614d9e8354614b5e565b83614d33565b6000601f841160018114614dd85760008515614dc05750838201355b600019600387901b1c1916600186901b178355610edc565b600083815260209020601f19861690835b82811015614e095786850135825560209485019460019092019101614de9565b5086821015614e265760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b602081526000610ce7602083018486614e38565b600060808236031215614e8757600080fd5b604051608081016001600160401b038282108183111715614eaa57614eaa6145cf565b8160405284359150614ebb8261409c565b81835260208501356020840152604085013560408401526060850135915080821115614ee657600080fd5b50614ef336828601614615565b60608301525092915050565b6000614f0d614706846146d5565b80848252602080830192508560051b850136811115614f2b57600080fd5b855b81811015614f665780356001600160401b03811115614f4c5760008081fd5b614f5836828a01614615565b865250938201938201614f2d565b50919695505050505050565b60008351614f84818460208801614020565b835190830190614f98818360208801614020565b01949350505050565b60006020808385031215614fb457600080fd5b82356001600160401b03811115614fca57600080fd5b8301601f81018513614fdb57600080fd5b8035614fe9614706826146d5565b81815260059190911b8201830190838101908783111561500857600080fd5b928401925b828410156150265783358252928401929084019061500d565b979650505050505050565b8082018082111561097c5761097c614c09565b6001600160a01b03848116825283166020820152606060408201819052600090610ba590830184614044565b634e487b7160e01b600052601260045260246000fd5b60008261509557615095615070565b500490565b634e487b7160e01b600052600160045260246000fd5b8181038181111561097c5761097c614c09565b6000816150d2576150d2614c09565b506000190190565b600083516150ec818460208801614020565b601760f91b908301908152835161510a816001840160208801614020565b01600101949350505050565b60006020828403121561512857600080fd5b5051919050565b60006020828403121561514157600080fd5b8151610df38161409c565b8183823760009101908152919050565b81516001600160401b03811115615175576151756145cf565b615189816151838454614b5e565b84614d33565b602080601f8311600181146151be57600084156151a65750858301515b600019600386901b1c1916600185901b1785556111ac565b600085815260208120601f198616915b828110156151ed578886015182559484019460019091019084016151ce565b508582101561520b5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6000845161522d818460208901614020565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6000826152bb576152bb615070565b500690565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b634e487b7160e01b600052602160045260246000fd5b828152604060208201526000610ce76040830184614044565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061325d90830184614044565b60006020828403121561537f57600080fd5b8151610df381613fed56febe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a"; +const isSuperArgs = (xs) => xs.length > 1; +class UNSRegistryMock__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(overrides) { + return super.getDeployTransaction(overrides || {}); + } + deploy(overrides) { + return super.deploy(overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.UNSRegistryMock__factory = UNSRegistryMock__factory; +UNSRegistryMock__factory.bytecode = _bytecode; +UNSRegistryMock__factory.abi = _abi; diff --git a/dist/types/factories/contracts/mocks/index.d.ts b/dist/types/factories/contracts/mocks/index.d.ts new file mode 100644 index 00000000..bc463189 --- /dev/null +++ b/dist/types/factories/contracts/mocks/index.d.ts @@ -0,0 +1,14 @@ +export { BaseForwarderMock__factory } from "./BaseForwarderMock__factory"; +export { BaseRoutingForwarderMock__factory } from "./BaseRoutingForwarderMock__factory"; +export { ERC1155Mock__factory } from "./ERC1155Mock__factory"; +export { ERC20Mock__factory } from "./ERC20Mock__factory"; +export { ERC20UnsafeMock__factory } from "./ERC20UnsafeMock__factory"; +export { ERC2771ContextMock__factory } from "./ERC2771ContextMock__factory"; +export { ERC2771RegistryContextMock__factory } from "./ERC2771RegistryContextMock__factory"; +export { ERC721Mock__factory } from "./ERC721Mock__factory"; +export { ERC721ReceiverMock__factory } from "./ERC721ReceiverMock__factory"; +export { MinterRoleMock__factory } from "./MinterRoleMock__factory"; +export { MintingManagerMock__factory } from "./MintingManagerMock__factory"; +export { UNSRegistryForwarderMock__factory } from "./UNSRegistryForwarderMock__factory"; +export { UNSRegistryMock__factory } from "./UNSRegistryMock__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/index.d.ts.map b/dist/types/factories/contracts/mocks/index.d.ts.map new file mode 100644 index 00000000..4e3835f0 --- /dev/null +++ b/dist/types/factories/contracts/mocks/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/mocks/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,iCAAiC,EAAE,MAAM,qCAAqC,CAAC;AACxF,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,mCAAmC,EAAE,MAAM,uCAAuC,CAAC;AAC5F,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,iCAAiC,EAAE,MAAM,qCAAqC,CAAC;AACxF,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/index.js b/dist/types/factories/contracts/mocks/index.js new file mode 100644 index 00000000..741924b7 --- /dev/null +++ b/dist/types/factories/contracts/mocks/index.js @@ -0,0 +1,29 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.UNSRegistryMock__factory = exports.UNSRegistryForwarderMock__factory = exports.MintingManagerMock__factory = exports.MinterRoleMock__factory = exports.ERC721ReceiverMock__factory = exports.ERC721Mock__factory = exports.ERC2771RegistryContextMock__factory = exports.ERC2771ContextMock__factory = exports.ERC20UnsafeMock__factory = exports.ERC20Mock__factory = exports.ERC1155Mock__factory = exports.BaseRoutingForwarderMock__factory = exports.BaseForwarderMock__factory = void 0; +var BaseForwarderMock__factory_1 = require("./BaseForwarderMock__factory"); +Object.defineProperty(exports, "BaseForwarderMock__factory", { enumerable: true, get: function () { return BaseForwarderMock__factory_1.BaseForwarderMock__factory; } }); +var BaseRoutingForwarderMock__factory_1 = require("./BaseRoutingForwarderMock__factory"); +Object.defineProperty(exports, "BaseRoutingForwarderMock__factory", { enumerable: true, get: function () { return BaseRoutingForwarderMock__factory_1.BaseRoutingForwarderMock__factory; } }); +var ERC1155Mock__factory_1 = require("./ERC1155Mock__factory"); +Object.defineProperty(exports, "ERC1155Mock__factory", { enumerable: true, get: function () { return ERC1155Mock__factory_1.ERC1155Mock__factory; } }); +var ERC20Mock__factory_1 = require("./ERC20Mock__factory"); +Object.defineProperty(exports, "ERC20Mock__factory", { enumerable: true, get: function () { return ERC20Mock__factory_1.ERC20Mock__factory; } }); +var ERC20UnsafeMock__factory_1 = require("./ERC20UnsafeMock__factory"); +Object.defineProperty(exports, "ERC20UnsafeMock__factory", { enumerable: true, get: function () { return ERC20UnsafeMock__factory_1.ERC20UnsafeMock__factory; } }); +var ERC2771ContextMock__factory_1 = require("./ERC2771ContextMock__factory"); +Object.defineProperty(exports, "ERC2771ContextMock__factory", { enumerable: true, get: function () { return ERC2771ContextMock__factory_1.ERC2771ContextMock__factory; } }); +var ERC2771RegistryContextMock__factory_1 = require("./ERC2771RegistryContextMock__factory"); +Object.defineProperty(exports, "ERC2771RegistryContextMock__factory", { enumerable: true, get: function () { return ERC2771RegistryContextMock__factory_1.ERC2771RegistryContextMock__factory; } }); +var ERC721Mock__factory_1 = require("./ERC721Mock__factory"); +Object.defineProperty(exports, "ERC721Mock__factory", { enumerable: true, get: function () { return ERC721Mock__factory_1.ERC721Mock__factory; } }); +var ERC721ReceiverMock__factory_1 = require("./ERC721ReceiverMock__factory"); +Object.defineProperty(exports, "ERC721ReceiverMock__factory", { enumerable: true, get: function () { return ERC721ReceiverMock__factory_1.ERC721ReceiverMock__factory; } }); +var MinterRoleMock__factory_1 = require("./MinterRoleMock__factory"); +Object.defineProperty(exports, "MinterRoleMock__factory", { enumerable: true, get: function () { return MinterRoleMock__factory_1.MinterRoleMock__factory; } }); +var MintingManagerMock__factory_1 = require("./MintingManagerMock__factory"); +Object.defineProperty(exports, "MintingManagerMock__factory", { enumerable: true, get: function () { return MintingManagerMock__factory_1.MintingManagerMock__factory; } }); +var UNSRegistryForwarderMock__factory_1 = require("./UNSRegistryForwarderMock__factory"); +Object.defineProperty(exports, "UNSRegistryForwarderMock__factory", { enumerable: true, get: function () { return UNSRegistryForwarderMock__factory_1.UNSRegistryForwarderMock__factory; } }); +var UNSRegistryMock__factory_1 = require("./UNSRegistryMock__factory"); +Object.defineProperty(exports, "UNSRegistryMock__factory", { enumerable: true, get: function () { return UNSRegistryMock__factory_1.UNSRegistryMock__factory; } }); diff --git a/dist/types/factories/contracts/roles/MinterRole__factory.d.ts b/dist/types/factories/contracts/roles/MinterRole__factory.d.ts new file mode 100644 index 00000000..2022751a --- /dev/null +++ b/dist/types/factories/contracts/roles/MinterRole__factory.d.ts @@ -0,0 +1,307 @@ +import { type ContractRunner } from "ethers"; +import type { MinterRole, MinterRoleInterface } from "../../../contracts/roles/MinterRole"; +export declare class MinterRole__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "uint8"; + readonly name: "version"; + readonly type: "uint8"; + }]; + readonly name: "Initialized"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "previousOwner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "newOwner"; + readonly type: "address"; + }]; + readonly name: "OwnershipTransferred"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "previousAdminRole"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "newAdminRole"; + readonly type: "bytes32"; + }]; + readonly name: "RoleAdminChanged"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "sender"; + readonly type: "address"; + }]; + readonly name: "RoleGranted"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "sender"; + readonly type: "address"; + }]; + readonly name: "RoleRevoked"; + readonly type: "event"; + }, { + readonly inputs: readonly []; + readonly name: "DEFAULT_ADMIN_ROLE"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "MINTER_ROLE"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "addMinter"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address[]"; + readonly name: "accounts"; + readonly type: "address[]"; + }]; + readonly name: "addMinters"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address payable"; + readonly name: "receiver"; + readonly type: "address"; + }]; + readonly name: "closeMinter"; + readonly outputs: readonly []; + readonly stateMutability: "payable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }]; + readonly name: "getRoleAdmin"; + readonly outputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: ""; + readonly type: "bytes32"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "grantRole"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "hasRole"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "isMinter"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "owner"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "removeMinter"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address[]"; + readonly name: "accounts"; + readonly type: "address[]"; + }]; + readonly name: "removeMinters"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "renounceMinter"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "renounceOwnership"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "renounceRole"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "role"; + readonly type: "bytes32"; + }, { + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "revokeRole"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address payable"; + readonly name: "receiver"; + readonly type: "address"; + }]; + readonly name: "rotateMinter"; + readonly outputs: readonly []; + readonly stateMutability: "payable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "newOwner"; + readonly type: "address"; + }]; + readonly name: "transferOwnership"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): MinterRoleInterface; + static connect(address: string, runner?: ContractRunner | null): MinterRole; +} +//# sourceMappingURL=MinterRole__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/roles/MinterRole__factory.d.ts.map b/dist/types/factories/contracts/roles/MinterRole__factory.d.ts.map new file mode 100644 index 00000000..d9e09395 --- /dev/null +++ b/dist/types/factories/contracts/roles/MinterRole__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"MinterRole__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/roles/MinterRole__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,UAAU,EACV,mBAAmB,EACpB,MAAM,qCAAqC,CAAC;AAuY7C,qBAAa,mBAAmB;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,mBAAmB;IAG7C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,UAAU;CAG5E"} \ No newline at end of file diff --git a/dist/types/factories/contracts/roles/MinterRole__factory.js b/dist/types/factories/contracts/roles/MinterRole__factory.js new file mode 100644 index 00000000..db846305 --- /dev/null +++ b/dist/types/factories/contracts/roles/MinterRole__factory.js @@ -0,0 +1,402 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.MinterRole__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint8", + name: "version", + type: "uint8", + }, + ], + name: "Initialized", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "previousOwner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnershipTransferred", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + indexed: true, + internalType: "bytes32", + name: "previousAdminRole", + type: "bytes32", + }, + { + indexed: true, + internalType: "bytes32", + name: "newAdminRole", + type: "bytes32", + }, + ], + name: "RoleAdminChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "RoleGranted", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "RoleRevoked", + type: "event", + }, + { + inputs: [], + name: "DEFAULT_ADMIN_ROLE", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "MINTER_ROLE", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "addMinter", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address[]", + name: "accounts", + type: "address[]", + }, + ], + name: "addMinters", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address payable", + name: "receiver", + type: "address", + }, + ], + name: "closeMinter", + outputs: [], + stateMutability: "payable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + ], + name: "getRoleAdmin", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "grantRole", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "hasRole", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "isMinter", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "removeMinter", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address[]", + name: "accounts", + type: "address[]", + }, + ], + name: "removeMinters", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "renounceMinter", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "renounceOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "renounceRole", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "role", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "revokeRole", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address payable", + name: "receiver", + type: "address", + }, + ], + name: "rotateMinter", + outputs: [], + stateMutability: "payable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "transferOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +class MinterRole__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.MinterRole__factory = MinterRole__factory; +MinterRole__factory.abi = _abi; diff --git a/dist/types/factories/contracts/roles/index.d.ts b/dist/types/factories/contracts/roles/index.d.ts new file mode 100644 index 00000000..963e97e0 --- /dev/null +++ b/dist/types/factories/contracts/roles/index.d.ts @@ -0,0 +1,2 @@ +export { MinterRole__factory } from "./MinterRole__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/roles/index.d.ts.map b/dist/types/factories/contracts/roles/index.d.ts.map new file mode 100644 index 00000000..768829c0 --- /dev/null +++ b/dist/types/factories/contracts/roles/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/roles/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/contracts/roles/index.js b/dist/types/factories/contracts/roles/index.js new file mode 100644 index 00000000..bfce881c --- /dev/null +++ b/dist/types/factories/contracts/roles/index.js @@ -0,0 +1,5 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.MinterRole__factory = void 0; +var MinterRole__factory_1 = require("./MinterRole__factory"); +Object.defineProperty(exports, "MinterRole__factory", { enumerable: true, get: function () { return MinterRole__factory_1.MinterRole__factory; } }); diff --git a/dist/types/factories/contracts/utils/Blocklist__factory.d.ts b/dist/types/factories/contracts/utils/Blocklist__factory.d.ts new file mode 100644 index 00000000..204fa4b3 --- /dev/null +++ b/dist/types/factories/contracts/utils/Blocklist__factory.d.ts @@ -0,0 +1,62 @@ +import { type ContractRunner } from "ethers"; +import type { Blocklist, BlocklistInterface } from "../../../contracts/utils/Blocklist"; +export declare class Blocklist__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Blocked"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "BlocklistDisabled"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "BlocklistEnabled"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "uint8"; + readonly name: "version"; + readonly type: "uint8"; + }]; + readonly name: "Initialized"; + readonly type: "event"; + }, { + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "isBlocked"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): BlocklistInterface; + static connect(address: string, runner?: ContractRunner | null): Blocklist; +} +//# sourceMappingURL=Blocklist__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/utils/Blocklist__factory.d.ts.map b/dist/types/factories/contracts/utils/Blocklist__factory.d.ts.map new file mode 100644 index 00000000..96703baf --- /dev/null +++ b/dist/types/factories/contracts/utils/Blocklist__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"Blocklist__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/utils/Blocklist__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,SAAS,EACT,kBAAkB,EACnB,MAAM,oCAAoC,CAAC;AA4E5C,qBAAa,kBAAkB;IAC7B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,kBAAkB;IAG5C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,SAAS;CAG3E"} \ No newline at end of file diff --git a/dist/types/factories/contracts/utils/Blocklist__factory.js b/dist/types/factories/contracts/utils/Blocklist__factory.js new file mode 100644 index 00000000..b159e3b5 --- /dev/null +++ b/dist/types/factories/contracts/utils/Blocklist__factory.js @@ -0,0 +1,87 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.Blocklist__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Blocked", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "BlocklistDisabled", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "BlocklistEnabled", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint8", + name: "version", + type: "uint8", + }, + ], + name: "Initialized", + type: "event", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "isBlocked", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class Blocklist__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.Blocklist__factory = Blocklist__factory; +Blocklist__factory.abi = _abi; diff --git a/dist/types/factories/contracts/utils/ERC1271SimpleWallet__factory.d.ts b/dist/types/factories/contracts/utils/ERC1271SimpleWallet__factory.d.ts new file mode 100644 index 00000000..31bfc99b --- /dev/null +++ b/dist/types/factories/contracts/utils/ERC1271SimpleWallet__factory.d.ts @@ -0,0 +1,49 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, AddressLike, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../common"; +import type { ERC1271SimpleWallet, ERC1271SimpleWalletInterface } from "../../../contracts/utils/ERC1271SimpleWallet"; +declare type ERC1271SimpleWalletConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class ERC1271SimpleWallet__factory extends ContractFactory { + constructor(...args: ERC1271SimpleWalletConstructorParams); + getDeployTransaction(owner: AddressLike, overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(owner: AddressLike, overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): ERC1271SimpleWallet__factory; + static readonly bytecode = "0x608060405234801561001057600080fd5b5060405161055138038061055183398101604081905261002f91610054565b600080546001600160a01b0319166001600160a01b0392909216919091179055610084565b60006020828403121561006657600080fd5b81516001600160a01b038116811461007d57600080fd5b9392505050565b6104be806100936000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c80631626ba7e14610030575b600080fd5b61004361003e3660046103e0565b610060565b6040516001600160e01b0319909116815260200160405180910390f35b600080546001600160a01b031661007784846100b6565b6001600160a01b0316036100ac57507f1626ba7e356f5979dd355a3d2bfb43e80420a480c3b854edce286a82d74968696100b0565b5060005b92915050565b60008060006100c585856100da565b915091506100d28161011f565b509392505050565b60008082516041036101105760208301516040840151606085015160001a610104878285856102dd565b94509450505050610118565b506000905060025b9250929050565b60008160048111156101335761013361049b565b0361013b5750565b600181600481111561014f5761014f61049b565b036101a15760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e6174757265000000000000000060448201526064015b60405180910390fd5b60028160048111156101b5576101b561049b565b036102025760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610198565b60038160048111156102165761021661049b565b0361026e5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b6064820152608401610198565b60048160048111156102825761028261049b565b036102da5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c604482015261756560f01b6064820152608401610198565b50565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561031457506000905060036103c1565b8460ff16601b1415801561032c57508460ff16601c14155b1561033d57506000905060046103c1565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610391573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166103ba576000600192509250506103c1565b9150600090505b94509492505050565b634e487b7160e01b600052604160045260246000fd5b600080604083850312156103f357600080fd5b82359150602083013567ffffffffffffffff8082111561041257600080fd5b818501915085601f83011261042657600080fd5b813581811115610438576104386103ca565b604051601f8201601f19908116603f01168101908382118183101715610460576104606103ca565b8160405282815288602084870101111561047957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a"; + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly stateMutability: "nonpayable"; + readonly type: "constructor"; + }, { + readonly inputs: readonly [{ + readonly internalType: "bytes32"; + readonly name: "_hash"; + readonly type: "bytes32"; + }, { + readonly internalType: "bytes"; + readonly name: "_signature"; + readonly type: "bytes"; + }]; + readonly name: "isValidSignature"; + readonly outputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: ""; + readonly type: "bytes4"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): ERC1271SimpleWalletInterface; + static connect(address: string, runner?: ContractRunner | null): ERC1271SimpleWallet; +} +export {}; +//# sourceMappingURL=ERC1271SimpleWallet__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/utils/ERC1271SimpleWallet__factory.d.ts.map b/dist/types/factories/contracts/utils/ERC1271SimpleWallet__factory.d.ts.map new file mode 100644 index 00000000..88302cb4 --- /dev/null +++ b/dist/types/factories/contracts/utils/ERC1271SimpleWallet__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ERC1271SimpleWallet__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/utils/ERC1271SimpleWallet__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,MAAM,EACN,WAAW,EACX,yBAAyB,EACzB,cAAc,EACf,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,KAAK,EACV,mBAAmB,EACnB,4BAA4B,EAC7B,MAAM,8CAA8C,CAAC;AA2CtD,aAAK,oCAAoC,GACrC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,4BAA6B,SAAQ,eAAe;gBACnD,GAAG,IAAI,EAAE,oCAAoC;IAQhD,oBAAoB,CAC3B,KAAK,EAAE,WAAW,EAClB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CACb,KAAK,EAAE,WAAW,EAClB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAItB,2BAA2B;;IAIjD,OAAO,CACd,MAAM,EAAE,cAAc,GAAG,IAAI,GAC5B,4BAA4B;IAI/B,MAAM,CAAC,QAAQ,CAAC,QAAQ,0qFAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,4BAA4B;IAGtD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,mBAAmB;CAOvB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/utils/ERC1271SimpleWallet__factory.js b/dist/types/factories/contracts/utils/ERC1271SimpleWallet__factory.js new file mode 100644 index 00000000..eaf42e7d --- /dev/null +++ b/dist/types/factories/contracts/utils/ERC1271SimpleWallet__factory.js @@ -0,0 +1,71 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ERC1271SimpleWallet__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + stateMutability: "nonpayable", + type: "constructor", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "_hash", + type: "bytes32", + }, + { + internalType: "bytes", + name: "_signature", + type: "bytes", + }, + ], + name: "isValidSignature", + outputs: [ + { + internalType: "bytes4", + name: "", + type: "bytes4", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +const _bytecode = "0x608060405234801561001057600080fd5b5060405161055138038061055183398101604081905261002f91610054565b600080546001600160a01b0319166001600160a01b0392909216919091179055610084565b60006020828403121561006657600080fd5b81516001600160a01b038116811461007d57600080fd5b9392505050565b6104be806100936000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c80631626ba7e14610030575b600080fd5b61004361003e3660046103e0565b610060565b6040516001600160e01b0319909116815260200160405180910390f35b600080546001600160a01b031661007784846100b6565b6001600160a01b0316036100ac57507f1626ba7e356f5979dd355a3d2bfb43e80420a480c3b854edce286a82d74968696100b0565b5060005b92915050565b60008060006100c585856100da565b915091506100d28161011f565b509392505050565b60008082516041036101105760208301516040840151606085015160001a610104878285856102dd565b94509450505050610118565b506000905060025b9250929050565b60008160048111156101335761013361049b565b0361013b5750565b600181600481111561014f5761014f61049b565b036101a15760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e6174757265000000000000000060448201526064015b60405180910390fd5b60028160048111156101b5576101b561049b565b036102025760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610198565b60038160048111156102165761021661049b565b0361026e5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b6064820152608401610198565b60048160048111156102825761028261049b565b036102da5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c604482015261756560f01b6064820152608401610198565b50565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561031457506000905060036103c1565b8460ff16601b1415801561032c57508460ff16601c14155b1561033d57506000905060046103c1565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610391573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166103ba576000600192509250506103c1565b9150600090505b94509492505050565b634e487b7160e01b600052604160045260246000fd5b600080604083850312156103f357600080fd5b82359150602083013567ffffffffffffffff8082111561041257600080fd5b818501915085601f83011261042657600080fd5b813581811115610438576104386103ca565b604051601f8201601f19908116603f01168101908382118183101715610460576104606103ca565b8160405282815288602084870101111561047957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a"; +const isSuperArgs = (xs) => xs.length > 1; +class ERC1271SimpleWallet__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(owner, overrides) { + return super.getDeployTransaction(owner, overrides || {}); + } + deploy(owner, overrides) { + return super.deploy(owner, overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.ERC1271SimpleWallet__factory = ERC1271SimpleWallet__factory; +ERC1271SimpleWallet__factory.bytecode = _bytecode; +ERC1271SimpleWallet__factory.abi = _abi; diff --git a/dist/types/factories/contracts/utils/MultiSend__factory.d.ts b/dist/types/factories/contracts/utils/MultiSend__factory.d.ts new file mode 100644 index 00000000..cf8c47fd --- /dev/null +++ b/dist/types/factories/contracts/utils/MultiSend__factory.d.ts @@ -0,0 +1,35 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, BigNumberish, AddressLike, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { PayableOverrides } from "../../../common"; +import type { MultiSend, MultiSendInterface } from "../../../contracts/utils/MultiSend"; +declare type MultiSendConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class MultiSend__factory extends ContractFactory { + constructor(...args: MultiSendConstructorParams); + getDeployTransaction(accounts: AddressLike[], values: BigNumberish[], overrides?: PayableOverrides & { + from?: string; + }): Promise; + deploy(accounts: AddressLike[], values: BigNumberish[], overrides?: PayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): MultiSend__factory; + static readonly bytecode = "0x608060405260405161029338038061029383398101604081905261002291610184565b60005b82518110156100ac5782818151811061004057610040610255565b60200260200101516001600160a01b03166108fc83838151811061006657610066610255565b60200260200101519081150290604051600060405180830381858888f19350505050158015610099573d6000803e3d6000fd5b50806100a48161026b565b915050610025565b5033ff5b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b03811182821017156100ee576100ee6100b0565b604052919050565b60006001600160401b0382111561010f5761010f6100b0565b5060051b60200190565b600082601f83011261012a57600080fd5b8151602061013f61013a836100f6565b6100c6565b82815260059290921b8401810191818101908684111561015e57600080fd5b8286015b848110156101795780518352918301918301610162565b509695505050505050565b6000806040838503121561019757600080fd5b82516001600160401b03808211156101ae57600080fd5b818501915085601f8301126101c257600080fd5b815160206101d261013a836100f6565b82815260059290921b840181019181810190898411156101f157600080fd5b948201945b838610156102255785516001600160a01b03811681146102165760008081fd5b825294820194908201906101f6565b9188015191965090935050508082111561023e57600080fd5b5061024b85828601610119565b9150509250929050565b634e487b7160e01b600052603260045260246000fd5b60006001820161028b57634e487b7160e01b600052601160045260246000fd5b506001019056fe"; + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "address payable[]"; + readonly name: "accounts"; + readonly type: "address[]"; + }, { + readonly internalType: "uint256[]"; + readonly name: "values"; + readonly type: "uint256[]"; + }]; + readonly stateMutability: "payable"; + readonly type: "constructor"; + }]; + static createInterface(): MultiSendInterface; + static connect(address: string, runner?: ContractRunner | null): MultiSend; +} +export {}; +//# sourceMappingURL=MultiSend__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/utils/MultiSend__factory.d.ts.map b/dist/types/factories/contracts/utils/MultiSend__factory.d.ts.map new file mode 100644 index 00000000..2a919024 --- /dev/null +++ b/dist/types/factories/contracts/utils/MultiSend__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"MultiSend__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/utils/MultiSend__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,MAAM,EACN,YAAY,EACZ,WAAW,EACX,yBAAyB,EACzB,cAAc,EACf,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,KAAK,EACV,SAAS,EACT,kBAAkB,EACnB,MAAM,oCAAoC,CAAC;AAwB5C,aAAK,0BAA0B,GAC3B,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,kBAAmB,SAAQ,eAAe;gBACzC,GAAG,IAAI,EAAE,0BAA0B;IAQtC,oBAAoB,CAC3B,QAAQ,EAAE,WAAW,EAAE,EACvB,MAAM,EAAE,YAAY,EAAE,EACtB,SAAS,CAAC,EAAE,gBAAgB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAC/C,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CACb,QAAQ,EAAE,WAAW,EAAE,EACvB,MAAM,EAAE,YAAY,EAAE,EACtB,SAAS,CAAC,EAAE,gBAAgB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAInB,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,kBAAkB;IAInE,MAAM,CAAC,QAAQ,CAAC,QAAQ,8yCAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,kBAAkB;IAG5C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,SAAS;CAG3E"} \ No newline at end of file diff --git a/dist/types/factories/contracts/utils/MultiSend__factory.js b/dist/types/factories/contracts/utils/MultiSend__factory.js new file mode 100644 index 00000000..3937a30e --- /dev/null +++ b/dist/types/factories/contracts/utils/MultiSend__factory.js @@ -0,0 +1,52 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.MultiSend__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "address payable[]", + name: "accounts", + type: "address[]", + }, + { + internalType: "uint256[]", + name: "values", + type: "uint256[]", + }, + ], + stateMutability: "payable", + type: "constructor", + }, +]; +const _bytecode = "0x608060405260405161029338038061029383398101604081905261002291610184565b60005b82518110156100ac5782818151811061004057610040610255565b60200260200101516001600160a01b03166108fc83838151811061006657610066610255565b60200260200101519081150290604051600060405180830381858888f19350505050158015610099573d6000803e3d6000fd5b50806100a48161026b565b915050610025565b5033ff5b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b03811182821017156100ee576100ee6100b0565b604052919050565b60006001600160401b0382111561010f5761010f6100b0565b5060051b60200190565b600082601f83011261012a57600080fd5b8151602061013f61013a836100f6565b6100c6565b82815260059290921b8401810191818101908684111561015e57600080fd5b8286015b848110156101795780518352918301918301610162565b509695505050505050565b6000806040838503121561019757600080fd5b82516001600160401b03808211156101ae57600080fd5b818501915085601f8301126101c257600080fd5b815160206101d261013a836100f6565b82815260059290921b840181019181810190898411156101f157600080fd5b948201945b838610156102255785516001600160a01b03811681146102165760008081fd5b825294820194908201906101f6565b9188015191965090935050508082111561023e57600080fd5b5061024b85828601610119565b9150509250929050565b634e487b7160e01b600052603260045260246000fd5b60006001820161028b57634e487b7160e01b600052601160045260246000fd5b506001019056fe"; +const isSuperArgs = (xs) => xs.length > 1; +class MultiSend__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(accounts, values, overrides) { + return super.getDeployTransaction(accounts, values, overrides || {}); + } + deploy(accounts, values, overrides) { + return super.deploy(accounts, values, overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.MultiSend__factory = MultiSend__factory; +MultiSend__factory.bytecode = _bytecode; +MultiSend__factory.abi = _abi; diff --git a/dist/types/factories/contracts/utils/Ownable__factory.d.ts b/dist/types/factories/contracts/utils/Ownable__factory.d.ts new file mode 100644 index 00000000..cd9c94ea --- /dev/null +++ b/dist/types/factories/contracts/utils/Ownable__factory.d.ts @@ -0,0 +1,59 @@ +import { type ContractRunner } from "ethers"; +import type { Ownable, OwnableInterface } from "../../../contracts/utils/Ownable"; +export declare class Ownable__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "uint8"; + readonly name: "version"; + readonly type: "uint8"; + }]; + readonly name: "Initialized"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "previousOwner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "newOwner"; + readonly type: "address"; + }]; + readonly name: "OwnershipTransferred"; + readonly type: "event"; + }, { + readonly inputs: readonly []; + readonly name: "owner"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly inputs: readonly []; + readonly name: "renounceOwnership"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "newOwner"; + readonly type: "address"; + }]; + readonly name: "transferOwnership"; + readonly outputs: readonly []; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): OwnableInterface; + static connect(address: string, runner?: ContractRunner | null): Ownable; +} +//# sourceMappingURL=Ownable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/utils/Ownable__factory.d.ts.map b/dist/types/factories/contracts/utils/Ownable__factory.d.ts.map new file mode 100644 index 00000000..36c85240 --- /dev/null +++ b/dist/types/factories/contracts/utils/Ownable__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"Ownable__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/utils/Ownable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,OAAO,EACP,gBAAgB,EACjB,MAAM,kCAAkC,CAAC;AAsE1C,qBAAa,gBAAgB;IAC3B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,gBAAgB;IAG1C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,OAAO;CAGzE"} \ No newline at end of file diff --git a/dist/types/factories/contracts/utils/Ownable__factory.js b/dist/types/factories/contracts/utils/Ownable__factory.js new file mode 100644 index 00000000..abc9ec40 --- /dev/null +++ b/dist/types/factories/contracts/utils/Ownable__factory.js @@ -0,0 +1,81 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.Ownable__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint8", + name: "version", + type: "uint8", + }, + ], + name: "Initialized", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "previousOwner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnershipTransferred", + type: "event", + }, + { + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "renounceOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "transferOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +]; +class Ownable__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.Ownable__factory = Ownable__factory; +Ownable__factory.abi = _abi; diff --git a/dist/types/factories/contracts/utils/Pausable__factory.d.ts b/dist/types/factories/contracts/utils/Pausable__factory.d.ts new file mode 100644 index 00000000..bcd64121 --- /dev/null +++ b/dist/types/factories/contracts/utils/Pausable__factory.d.ts @@ -0,0 +1,48 @@ +import { type ContractRunner } from "ethers"; +import type { Pausable, PausableInterface } from "../../../contracts/utils/Pausable"; +export declare class Pausable__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "uint8"; + readonly name: "version"; + readonly type: "uint8"; + }]; + readonly name: "Initialized"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "Paused"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "Unpaused"; + readonly type: "event"; + }, { + readonly inputs: readonly []; + readonly name: "paused"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): PausableInterface; + static connect(address: string, runner?: ContractRunner | null): Pausable; +} +//# sourceMappingURL=Pausable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/utils/Pausable__factory.d.ts.map b/dist/types/factories/contracts/utils/Pausable__factory.d.ts.map new file mode 100644 index 00000000..8efefaa0 --- /dev/null +++ b/dist/types/factories/contracts/utils/Pausable__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"Pausable__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/utils/Pausable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,QAAQ,EACR,iBAAiB,EAClB,MAAM,mCAAmC,CAAC;AAyD3C,qBAAa,iBAAiB;IAC5B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,iBAAiB;IAG3C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,QAAQ;CAG1E"} \ No newline at end of file diff --git a/dist/types/factories/contracts/utils/Pausable__factory.js b/dist/types/factories/contracts/utils/Pausable__factory.js new file mode 100644 index 00000000..3345de40 --- /dev/null +++ b/dist/types/factories/contracts/utils/Pausable__factory.js @@ -0,0 +1,68 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.Pausable__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint8", + name: "version", + type: "uint8", + }, + ], + name: "Initialized", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "Paused", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "Unpaused", + type: "event", + }, + { + inputs: [], + name: "paused", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, +]; +class Pausable__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.Pausable__factory = Pausable__factory; +Pausable__factory.abi = _abi; diff --git a/dist/types/factories/contracts/utils/index.d.ts b/dist/types/factories/contracts/utils/index.d.ts new file mode 100644 index 00000000..5cbb36f6 --- /dev/null +++ b/dist/types/factories/contracts/utils/index.d.ts @@ -0,0 +1,6 @@ +export { Blocklist__factory } from "./Blocklist__factory"; +export { ERC1271SimpleWallet__factory } from "./ERC1271SimpleWallet__factory"; +export { MultiSend__factory } from "./MultiSend__factory"; +export { Ownable__factory } from "./Ownable__factory"; +export { Pausable__factory } from "./Pausable__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/utils/index.d.ts.map b/dist/types/factories/contracts/utils/index.d.ts.map new file mode 100644 index 00000000..8477a716 --- /dev/null +++ b/dist/types/factories/contracts/utils/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/utils/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/contracts/utils/index.js b/dist/types/factories/contracts/utils/index.js new file mode 100644 index 00000000..c946b5ca --- /dev/null +++ b/dist/types/factories/contracts/utils/index.js @@ -0,0 +1,13 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.Pausable__factory = exports.Ownable__factory = exports.MultiSend__factory = exports.ERC1271SimpleWallet__factory = exports.Blocklist__factory = void 0; +var Blocklist__factory_1 = require("./Blocklist__factory"); +Object.defineProperty(exports, "Blocklist__factory", { enumerable: true, get: function () { return Blocklist__factory_1.Blocklist__factory; } }); +var ERC1271SimpleWallet__factory_1 = require("./ERC1271SimpleWallet__factory"); +Object.defineProperty(exports, "ERC1271SimpleWallet__factory", { enumerable: true, get: function () { return ERC1271SimpleWallet__factory_1.ERC1271SimpleWallet__factory; } }); +var MultiSend__factory_1 = require("./MultiSend__factory"); +Object.defineProperty(exports, "MultiSend__factory", { enumerable: true, get: function () { return MultiSend__factory_1.MultiSend__factory; } }); +var Ownable__factory_1 = require("./Ownable__factory"); +Object.defineProperty(exports, "Ownable__factory", { enumerable: true, get: function () { return Ownable__factory_1.Ownable__factory; } }); +var Pausable__factory_1 = require("./Pausable__factory"); +Object.defineProperty(exports, "Pausable__factory", { enumerable: true, get: function () { return Pausable__factory_1.Pausable__factory; } }); diff --git a/dist/types/factories/dot-crypto/contracts/CNSRegistry__factory.d.ts b/dist/types/factories/dot-crypto/contracts/CNSRegistry__factory.d.ts new file mode 100644 index 00000000..11ef9d7b --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/CNSRegistry__factory.d.ts @@ -0,0 +1,816 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../common"; +import type { CNSRegistry, CNSRegistryInterface } from "../../../dot-crypto/contracts/CNSRegistry"; +declare type CNSRegistryConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class CNSRegistry__factory extends ContractFactory { + constructor(...args: CNSRegistryConstructorParams); + getDeployTransaction(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): CNSRegistry__factory; + static readonly bytecode = "0x60806040523480156200001157600080fd5b50620000467f01ffc9a7000000000000000000000000000000000000000000000000000000006001600160e01b03620001cf16565b6200005a336001600160e01b036200029e16565b6200008e7f80ac58cd000000000000000000000000000000000000000000000000000000006001600160e01b03620001cf16565b620000b461dead6000805160206200300b8339815191526001600160e01b03620002bc16565b620000e87f5b5e139f000000000000000000000000000000000000000000000000000000006001600160e01b03620001cf16565b6040805180820190915260068082527f63727970746f000000000000000000000000000000000000000000000000000060208301526000620001326001600160e01b036200043916565b81526020019081526020016000209080519060200190620001559291906200059d565b50620001696001600160e01b036200043916565b6040805160208082526006908201527f63727970746f00000000000000000000000000000000000000000000000000008183015290517fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c39529181900360600190a26200063f565b7fffffffff0000000000000000000000000000000000000000000000000000000080821614156200026157604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f4552433136353a20696e76616c696420696e7465726661636520696400000000604482015290519081900360640190fd5b7fffffffff00000000000000000000000000000000000000000000000000000000166000908152602081905260409020805460ff19166001179055565b620002b98160016200044d60201b6200228e1790919060201c565b50565b6001600160a01b0382166200033257604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f2061646472657373604482015290519081900360640190fd5b62000346816001600160e01b03620004f416565b15620003b357604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000604482015290519081900360640190fd5b600081815260026020908152604080832080546001600160a01b0319166001600160a01b038716908117909155835260048252909120620003fd9162000511811b6200236117901c565b60405181906001600160a01b038416906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b6000805160206200300b8339815191525b90565b6200046282826001600160e01b036200051a16565b15620004cf57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b6000908152600260205260409020546001600160a01b0316151590565b80546001019055565b60006001600160a01b0382166200057d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602281526020018062002fe96022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620005e057805160ff191683800117855562000610565b8280016001018555821562000610579182015b8281111562000610578251825591602001919060010190620005f3565b506200061e92915062000622565b5090565b6200044a91905b808211156200061e576000815560010162000629565b61299a806200064f6000396000f3fe608060405234801561001057600080fd5b50600436106102325760003560e01c80637c69eae211610130578063b5466669116100b8578063d284d97a1161007c578063d284d97a14610d4e578063d8d3cc6e14610dbc578063e67ca8a314610e3f578063e985e9c514610e5c578063ebf0c71714610e8a57610232565b8063b5466669146109ce578063b88d4fde14610a51578063c29b52f914610b15578063c87b56dd14610c5e578063ce9fb82b14610c7b57610232565b8063a22cb465116100ff578063a22cb4651461090b578063a7fc7a0714610939578063ab3b87fe1461095f578063b3f9e4cb1461098b578063b429afeb146109a857610232565b80637c69eae21461076457806395d89b41146107e75780639d743989146107ef5780639e5be9a51461087d57610232565b806342842e0e116101be5780635cbe1112116101825780635cbe11121461061d5780636352211e1461069257806366ac3b68146106af57806368b62d32146106b757806370a082311461073e57610232565b806342842e0e146104ed57806342966c6814610523578063430c208114610540578063538361a71461056c57806357aac5741461058f57610232565b8063081812fc11610205578063081812fc146103fa578063095ea7b3146104335780632392c1891461045f57806323b872dd1461048b5780632525d06a146104c157610232565b806301ffc9a71461023757806302759c37146102725780630467e014146102aa57806306fdde031461037d575b600080fd5b61025e6004803603602081101561024d57600080fd5b50356001600160e01b031916610e92565b604080519115158252519081900360200190f35b6102a86004803603606081101561028857600080fd5b506001600160a01b03813581169160208101359091169060400135610eb1565b005b6102a8600480360360808110156102c057600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156102ef57600080fd5b82018360208201111561030157600080fd5b803590602001918460018302840111600160201b8311171561032257600080fd5b919390929091602081019035600160201b81111561033f57600080fd5b82018360208201111561035157600080fd5b803590602001918460018302840111600160201b8311171561037257600080fd5b509092509050610ed3565b610385610f62565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103bf5781810151838201526020016103a7565b50505050905090810190601f1680156103ec5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6104176004803603602081101561041057600080fd5b5035610f84565b604080516001600160a01b039092168252519081900360200190f35b6102a86004803603604081101561044957600080fd5b506001600160a01b038135169060200135610fe6565b6102a86004803603604081101561047557600080fd5b506001600160a01b0381351690602001356110f7565b6102a8600480360360608110156104a157600080fd5b506001600160a01b03813581169160208101359091169060400135611115565b6102a8600480360360408110156104d757600080fd5b506001600160a01b03813516906020013561115a565b6102a86004803603606081101561050357600080fd5b506001600160a01b0381358116916020810135909116906040013561117a565b6102a86004803603602081101561053957600080fd5b5035611195565b61025e6004803603604081101561055657600080fd5b506001600160a01b0381351690602001356111e6565b6102a86004803603604081101561058257600080fd5b50803590602001356111f9565b6102a8600480360360808110156105a557600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156105df57600080fd5b8201836020820111156105f157600080fd5b803590602001918460018302840111600160201b8311171561061257600080fd5b50909250905061124f565b6102a86004803603604081101561063357600080fd5b81359190810190604081016020820135600160201b81111561065457600080fd5b82018360208201111561066657600080fd5b803590602001918460018302840111600160201b8311171561068757600080fd5b5090925090506112be565b610417600480360360208110156106a857600080fd5b5035611320565b6102a861137a565b61072c600480360360408110156106cd57600080fd5b81359190810190604081016020820135600160201b8111156106ee57600080fd5b82018360208201111561070057600080fd5b803590602001918460018302840111600160201b8311171561072157600080fd5b509092509050611385565b60408051918252519081900360200190f35b61072c6004803603602081101561075457600080fd5b50356001600160a01b03166113cf565b6102a86004803603606081101561077a57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156107a957600080fd5b8201836020820111156107bb57600080fd5b803590602001918460018302840111600160201b831117156107dc57600080fd5b509092509050611437565b61038561149a565b6102a86004803603608081101561080557600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561083f57600080fd5b82018360208201111561085157600080fd5b803590602001918460018302840111600160201b8311171561087257600080fd5b5090925090506114b6565b6102a86004803603608081101561089357600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156108cd57600080fd5b8201836020820111156108df57600080fd5b803590602001918460018302840111600160201b8311171561090057600080fd5b509092509050611506565b6102a86004803603604081101561092157600080fd5b506001600160a01b0381351690602001351515611564565b6102a86004803603602081101561094f57600080fd5b50356001600160a01b0316611630565b6102a86004803603604081101561097557600080fd5b506001600160a01b03813516906020013561164b565b610417600480360360208110156109a157600080fd5b5035611672565b61025e600480360360208110156109be57600080fd5b50356001600160a01b0316611694565b6102a8600480360360608110156109e457600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610a1357600080fd5b820183602082011115610a2557600080fd5b803590602001918460018302840111600160201b83111715610a4657600080fd5b5090925090506116a7565b6102a860048036036080811015610a6757600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b811115610aa157600080fd5b820183602082011115610ab357600080fd5b803590602001918460018302840111600160201b83111715610ad457600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506116fa945050505050565b6102a8600480360360a0811015610b2b57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b811115610b6557600080fd5b820183602082011115610b7757600080fd5b803590602001918460018302840111600160201b83111715610b9857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b811115610bea57600080fd5b820183602082011115610bfc57600080fd5b803590602001918460018302840111600160201b83111715610c1d57600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061174c945050505050565b61038560048036036020811015610c7457600080fd5b5035611797565b6102a860048036036080811015610c9157600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610cc057600080fd5b820183602082011115610cd257600080fd5b803590602001918460018302840111600160201b83111715610cf357600080fd5b919390929091602081019035600160201b811115610d1057600080fd5b820183602082011115610d2257600080fd5b803590602001918460018302840111600160201b83111715610d4357600080fd5b509092509050611892565b6102a860048036036020811015610d6457600080fd5b810190602081018135600160201b811115610d7e57600080fd5b820183602082011115610d9057600080fd5b803590602001918460018302840111600160201b83111715610db157600080fd5b50909250905061191b565b6102a860048036036060811015610dd257600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610e0157600080fd5b820183602082011115610e1357600080fd5b803590602001918460018302840111600160201b83111715610e3457600080fd5b50909250905061199e565b6102a860048036036020811015610e5557600080fd5b50356119f3565b61025e60048036036040811015610e7257600080fd5b506001600160a01b0381358116916020013516611a05565b61072c611a33565b6001600160e01b03191660009081526020819052604090205460ff1690565b610eba33611694565b610ec357600080fd5b610ece838383611a57565b505050565b610edc33611694565b610ee557600080fd5b610f5a868686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8a018190048102820181019092528881529250889150879081908401838280828437600092019190915250611a9f92505050565b505050505050565b6040805180820190915260078152662e63727970746f60c81b60208201525b90565b6000610f8f82611ac9565b610fca5760405162461bcd60e51b815260040180806020018281038252602c815260200180612848602c913960400191505060405180910390fd5b506000908152600360205260409020546001600160a01b031690565b6000610ff182611320565b9050806001600160a01b0316836001600160a01b031614156110445760405162461bcd60e51b81526004018080602001828103825260218152602001806128bf6021913960400191505060405180910390fd5b336001600160a01b038216148061106057506110608133611a05565b61109b5760405162461bcd60e51b815260040180806020018281038252603881526020018061279c6038913960400191505060405180910390fd5b60008281526003602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b806111023382611ae6565b61110b57600080fd5b610ece8383611b82565b61111f3382611ae6565b610ec35760405162461bcd60e51b81526004018080602001828103825260318152602001806128e06031913960400191505060405180910390fd5b61116333611694565b61116c57600080fd5b6111768282611b82565b5050565b610ece838383604051806020016040528060008152506116fa565b61119f3382611ae6565b6111da5760405162461bcd60e51b81526004018080602001828103825260308152602001806129366030913960400191505060405180910390fd5b6111e381611bf8565b50565b60006111f28383611ae6565b9392505050565b6000828152600860205260409020546001600160a01b0316331461121c57600080fd5b6040518290829033907ff10fc780c78f994a214c79a2ae8d8b7bfe7cc3f0f935a8f05a29525e71d7f12790600090a45050565b61125833611694565b61126157600080fd5b61126c858585611a57565b6112ae85858585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611c7992505050565b6112b757600080fd5b5050505050565b826112c93382611ae6565b6112d257600080fd5b61131a6113158585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b611bf8565b50505050565b6000818152600260205260408120546001600160a01b0316806113745760405162461bcd60e51b81526004018080602001828103825260298152602001806127fe6029913960400191505060405180910390fd5b92915050565b61138333611e64565b565b60006113c78484848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b949350505050565b60006001600160a01b0382166114165760405162461bcd60e51b815260040180806020018281038252602a8152602001806127d4602a913960400191505060405180910390fd5b6001600160a01b038216600090815260046020526040902061137490611e75565b826114423382611ae6565b61144b57600080fd5b6112b7858585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250611a9f915050565b604080518082019091526002815261155160f21b602082015290565b6112b785858585858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201829052506040805160208101909152908152925061174c915050565b826115113382611ae6565b61151a57600080fd5b610f5a868661155f8787878080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b611a57565b6001600160a01b0382163314156115c2576040805162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604482015290519081900360640190fd5b3360008181526005602090815260408083206001600160a01b03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b61163933611694565b61164257600080fd5b6111e381611e79565b806116563382611ae6565b61165f57600080fd5b610ece61166b83611320565b8484611e8a565b6000818152600860205260408120546001600160a01b03168061137457600080fd5b600061137460018363ffffffff611fce16565b6116b033611694565b6116b957600080fd5b61131a848484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061203592505050565b611705848484611115565b61171184848484611c79565b61131a5760405162461bcd60e51b815260040180806020018281038252603281526020018061271a6032913960400191505060405180910390fd5b826117573382611ae6565b61176057600080fd5b600061176c8585611dac565b9050611779878783611a57565b61178587878386611c79565b61178e57600080fd5b50505050505050565b60606117a282611ac9565b6117ab57600080fd5b600760066000848152602001908152602001600020604051602001808380546001816001161561010002031660029004801561181e5780601f106117fc57610100808354040283529182019161181e565b820191906000526020600020905b81548152906001019060200180831161180a575b5050828054600181600116156101000203166002900480156118775780601f10611855576101008083540402835291820191611877565b820191906000526020600020905b815481529060010190602001808311611863575b505060408051601f1981840301815291905295945050505050565b8461189d3382611ae6565b6118a657600080fd5b61178e878787878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b018190048102820181019092528981529250899150889081908401838280828437600092019190915250611a9f92505050565b61192433611694565b61192d57600080fd5b611939600783836125cf565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b828260405180806020018281038252848482818152602001925080828437600083820152604051601f909101601f19169092018290039550909350505050a15050565b826119a93382611ae6565b6119b257600080fd5b6112b7858585858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061203592505050565b6119fc33611694565b6111da57600080fd5b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b7f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f90565b611a62838383611e8a565b6000818152600860205260409020546001600160a01b031615610ece57600090815260086020526040902080546001600160a01b03191690555050565b611aaa848484612035565b611ac0600085611aba8686611dac565b84611c79565b61131a57600080fd5b6000908152600260205260409020546001600160a01b0316151590565b6000611af182611ac9565b611b2c5760405162461bcd60e51b815260040180806020018281038252602c815260200180612770602c913960400191505060405180910390fd5b6000611b3783611320565b9050806001600160a01b0316846001600160a01b03161480611b725750836001600160a01b0316611b6784610f84565b6001600160a01b0316145b806113c757506113c78185611a05565b611b8b81611ac9565b611b9457600080fd5b6040516001600160a01b0383169082907fb1b34e6d89e1c584527d447f4b29ffad55635a37edeeb564939a6483401b31a590600090a3600090815260086020526040902080546001600160a01b0319166001600160a01b0392909216919091179055565b611c018161220f565b6000818152600860205260409020546001600160a01b031615611c3b57600081815260086020526040902080546001600160a01b03191690555b60008181526006602052604090205460026000196101006001841615020190911604156111e35760008181526006602052604081206111e39161264d565b6000611c8d846001600160a01b0316612221565b611c99575060016113c7565b604051630a85bd0160e11b815233600482018181526001600160a01b03888116602485015260448401879052608060648501908152865160848601528651600095928a169463150b7a029490938c938b938b939260a4019060208501908083838e5b83811015611d13578181015183820152602001611cfb565b50505050905090810190601f168015611d405780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015611d6257600080fd5b505af1158015611d76573d6000803e3d6000fd5b505050506040513d6020811015611d8c57600080fd5b50516001600160e01b031916630a85bd0160e11b14915050949350505050565b6000815160001415611dbd57600080fd5b82826040516020018082805190602001908083835b60208310611df15780518252601f199092019160209182019101611dd2565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040528051906020012060405160200180838152602001828152602001925050506040516020818303038152906040528051906020012060001c905092915050565b6111e360018263ffffffff61222716565b5490565b6111e360018263ffffffff61228e16565b826001600160a01b0316611e9d82611320565b6001600160a01b031614611ee25760405162461bcd60e51b81526004018080602001828103825260298152602001806128966029913960400191505060405180910390fd5b6001600160a01b038216611f275760405162461bcd60e51b815260040180806020018281038252602481526020018061274c6024913960400191505060405180910390fd5b611f308161230f565b6001600160a01b0383166000908152600460205260409020611f519061234a565b6001600160a01b0382166000908152600460205260409020611f7290612361565b60008181526002602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60006001600160a01b0382166120155760405162461bcd60e51b81526004018080602001828103825260228152602001806128746022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b60006120418383611dac565b905061204d848261236a565b815161205857600080fd5b61206181611ac9565b61206a57600080fd5b606082600660008681526020019081526020016000206040516020018083805190602001908083835b602083106120b25780518252601f199092019160209182019101612093565b6001836020036101000a03801982511681845116808217855250505050505090500180601760f91b815250600101828054600181600116156101000203166002900480156121375780601f10612115576101008083540402835291820191612137565b820191906000526020600020905b815481529060010190602001808311612123575b505060408051601f19818403018152918152600087815260066020908152919020825192965061216d9550935085019150612691565b50817fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952826040518080602001828103825283818151815260200191508051906020019080838360005b838110156121ce5781810151838201526020016121b6565b50505050905090810190601f1680156121fb5780820380516001836020036101000a031916815260200191505b509250505060405180910390a25050505050565b6111e361221b82611320565b8261249b565b3b151590565b6122318282611fce565b61226c5760405162461bcd60e51b81526004018080602001828103825260218152602001806128276021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff19169055565b6122988282611fce565b156122ea576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b6000818152600360205260409020546001600160a01b0316156111e357600090815260036020526040902080546001600160a01b0319169055565b805461235d90600163ffffffff61257216565b9055565b80546001019055565b6001600160a01b0382166123c5576040805162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f2061646472657373604482015290519081900360640190fd5b6123ce81611ac9565b15612420576040805162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000604482015290519081900360640190fd5b600081815260026020908152604080832080546001600160a01b0319166001600160a01b03871690811790915583526004909152902061245f90612361565b60405181906001600160a01b038416906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b816001600160a01b03166124ae82611320565b6001600160a01b0316146124f35760405162461bcd60e51b81526004018080602001828103825260258152602001806129116025913960400191505060405180910390fd5b6124fc8161230f565b6001600160a01b038216600090815260046020526040902061251d9061234a565b60008181526002602052604080822080546001600160a01b0319169055518291906001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6000828211156125c9576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106126105782800160ff1982351617855561263d565b8280016001018555821561263d579182015b8281111561263d578235825591602001919060010190612622565b506126499291506126ff565b5090565b50805460018160011615610100020316600290046000825580601f1061267357506111e3565b601f0160209004906000526020600020908101906111e391906126ff565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106126d257805160ff191683800117855561263d565b8280016001018555821561263d579182015b8281111561263d5782518255916020019190600101906126e4565b610f8191905b80821115612649576000815560010161270556fe4552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c654552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e526f6c65733a206163636f756e7420697320746865207a65726f20616464726573734552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f7665644552433732313a206275726e206f6620746f6b656e2074686174206973206e6f74206f776e4552433732314275726e61626c653a2063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564a265627a7a72315820fb6a1b26cc352dbb05e6627fd530bbb44114ac3a349f30d1f071136c656d20dc64736f6c634300050c0032526f6c65733a206163636f756e7420697320746865207a65726f20616464726573730f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f"; + static readonly abi: readonly [{ + readonly inputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "constructor"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "approved"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Approval"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "ApprovalForAll"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly indexed: false; + readonly internalType: "string"; + readonly name: "uri"; + readonly type: "string"; + }]; + readonly name: "NewURI"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "string"; + readonly name: "prefix"; + readonly type: "string"; + }]; + readonly name: "NewURIPrefix"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }]; + readonly name: "Resolve"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "updateId"; + readonly type: "uint256"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Sync"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Transfer"; + readonly type: "event"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "addController"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "approve"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "balanceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "burn"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }]; + readonly name: "burnChild"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }]; + readonly name: "childIdOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly payable: false; + readonly stateMutability: "pure"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "controlledBurn"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }]; + readonly name: "controlledMintChild"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "controlledResolveTo"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }, { + readonly internalType: "bytes"; + readonly name: "_data"; + readonly type: "bytes"; + }]; + readonly name: "controlledSafeMintChild"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "_data"; + readonly type: "bytes"; + }]; + readonly name: "controlledSafeTransferFrom"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "prefix"; + readonly type: "string"; + }]; + readonly name: "controlledSetTokenURIPrefix"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "controlledTransferFrom"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getApproved"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly name: "isApprovedForAll"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "spender"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "isApprovedOrOwner"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "isController"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }]; + readonly name: "mintChild"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly []; + readonly name: "name"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "ownerOf"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly []; + readonly name: "renounceController"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "resolveTo"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "resolverOf"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly []; + readonly name: "root"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly payable: false; + readonly stateMutability: "pure"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }]; + readonly name: "safeMintChild"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }, { + readonly internalType: "bytes"; + readonly name: "_data"; + readonly type: "bytes"; + }]; + readonly name: "safeMintChild"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "_data"; + readonly type: "bytes"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }]; + readonly name: "safeTransferFromChild"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }, { + readonly internalType: "bytes"; + readonly name: "_data"; + readonly type: "bytes"; + }]; + readonly name: "safeTransferFromChild"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "setApprovalForAll"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "setOwner"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly []; + readonly name: "symbol"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "updateId"; + readonly type: "uint256"; + }]; + readonly name: "sync"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "tokenURI"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "transferFrom"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }]; + readonly name: "transferFromChild"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): CNSRegistryInterface; + static connect(address: string, runner?: ContractRunner | null): CNSRegistry; +} +export {}; +//# sourceMappingURL=CNSRegistry__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/CNSRegistry__factory.d.ts.map b/dist/types/factories/dot-crypto/contracts/CNSRegistry__factory.d.ts.map new file mode 100644 index 00000000..71b073fe --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/CNSRegistry__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"CNSRegistry__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/dot-crypto/contracts/CNSRegistry__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,KAAK,EACV,WAAW,EACX,oBAAoB,EACrB,MAAM,2CAA2C,CAAC;AAi/BnD,aAAK,4BAA4B,GAC7B,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,oBAAqB,SAAQ,eAAe;gBAC3C,GAAG,IAAI,EAAE,4BAA4B;IAQxC,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,oBAAoB;IAIrE,MAAM,CAAC,QAAQ,CAAC,QAAQ,8lwBAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,oBAAoB;IAG9C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,WAAW;CAG7E"} \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/CNSRegistry__factory.js b/dist/types/factories/dot-crypto/contracts/CNSRegistry__factory.js new file mode 100644 index 00000000..d2c0275e --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/CNSRegistry__factory.js @@ -0,0 +1,1037 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.CNSRegistry__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [], + payable: false, + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "approved", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Approval", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "ApprovalForAll", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + indexed: false, + internalType: "string", + name: "uri", + type: "string", + }, + ], + name: "NewURI", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "string", + name: "prefix", + type: "string", + }, + ], + name: "NewURIPrefix", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + ], + name: "Resolve", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "resolver", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "updateId", + type: "uint256", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Sync", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Transfer", + type: "event", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "addController", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "approve", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "burn", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + ], + name: "burnChild", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + ], + name: "childIdOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "pure", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "controlledBurn", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + ], + name: "controlledMintChild", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "controlledResolveTo", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + { + internalType: "bytes", + name: "_data", + type: "bytes", + }, + ], + name: "controlledSafeMintChild", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "_data", + type: "bytes", + }, + ], + name: "controlledSafeTransferFrom", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "string", + name: "prefix", + type: "string", + }, + ], + name: "controlledSetTokenURIPrefix", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "controlledTransferFrom", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getApproved", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + name: "isApprovedForAll", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "spender", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "isApprovedOrOwner", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "isController", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + ], + name: "mintChild", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "name", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "ownerOf", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [], + name: "renounceController", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "resolveTo", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "resolverOf", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "root", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "pure", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + ], + name: "safeMintChild", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + { + internalType: "bytes", + name: "_data", + type: "bytes", + }, + ], + name: "safeMintChild", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "safeTransferFrom", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "_data", + type: "bytes", + }, + ], + name: "safeTransferFrom", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + ], + name: "safeTransferFromChild", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + { + internalType: "bytes", + name: "_data", + type: "bytes", + }, + ], + name: "safeTransferFromChild", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "setApprovalForAll", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "setOwner", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "symbol", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "uint256", + name: "updateId", + type: "uint256", + }, + ], + name: "sync", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "tokenURI", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "transferFrom", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + ], + name: "transferFromChild", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, +]; +const _bytecode = "0x60806040523480156200001157600080fd5b50620000467f01ffc9a7000000000000000000000000000000000000000000000000000000006001600160e01b03620001cf16565b6200005a336001600160e01b036200029e16565b6200008e7f80ac58cd000000000000000000000000000000000000000000000000000000006001600160e01b03620001cf16565b620000b461dead6000805160206200300b8339815191526001600160e01b03620002bc16565b620000e87f5b5e139f000000000000000000000000000000000000000000000000000000006001600160e01b03620001cf16565b6040805180820190915260068082527f63727970746f000000000000000000000000000000000000000000000000000060208301526000620001326001600160e01b036200043916565b81526020019081526020016000209080519060200190620001559291906200059d565b50620001696001600160e01b036200043916565b6040805160208082526006908201527f63727970746f00000000000000000000000000000000000000000000000000008183015290517fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c39529181900360600190a26200063f565b7fffffffff0000000000000000000000000000000000000000000000000000000080821614156200026157604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f4552433136353a20696e76616c696420696e7465726661636520696400000000604482015290519081900360640190fd5b7fffffffff00000000000000000000000000000000000000000000000000000000166000908152602081905260409020805460ff19166001179055565b620002b98160016200044d60201b6200228e1790919060201c565b50565b6001600160a01b0382166200033257604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f2061646472657373604482015290519081900360640190fd5b62000346816001600160e01b03620004f416565b15620003b357604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000604482015290519081900360640190fd5b600081815260026020908152604080832080546001600160a01b0319166001600160a01b038716908117909155835260048252909120620003fd9162000511811b6200236117901c565b60405181906001600160a01b038416906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b6000805160206200300b8339815191525b90565b6200046282826001600160e01b036200051a16565b15620004cf57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b6000908152600260205260409020546001600160a01b0316151590565b80546001019055565b60006001600160a01b0382166200057d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602281526020018062002fe96022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620005e057805160ff191683800117855562000610565b8280016001018555821562000610579182015b8281111562000610578251825591602001919060010190620005f3565b506200061e92915062000622565b5090565b6200044a91905b808211156200061e576000815560010162000629565b61299a806200064f6000396000f3fe608060405234801561001057600080fd5b50600436106102325760003560e01c80637c69eae211610130578063b5466669116100b8578063d284d97a1161007c578063d284d97a14610d4e578063d8d3cc6e14610dbc578063e67ca8a314610e3f578063e985e9c514610e5c578063ebf0c71714610e8a57610232565b8063b5466669146109ce578063b88d4fde14610a51578063c29b52f914610b15578063c87b56dd14610c5e578063ce9fb82b14610c7b57610232565b8063a22cb465116100ff578063a22cb4651461090b578063a7fc7a0714610939578063ab3b87fe1461095f578063b3f9e4cb1461098b578063b429afeb146109a857610232565b80637c69eae21461076457806395d89b41146107e75780639d743989146107ef5780639e5be9a51461087d57610232565b806342842e0e116101be5780635cbe1112116101825780635cbe11121461061d5780636352211e1461069257806366ac3b68146106af57806368b62d32146106b757806370a082311461073e57610232565b806342842e0e146104ed57806342966c6814610523578063430c208114610540578063538361a71461056c57806357aac5741461058f57610232565b8063081812fc11610205578063081812fc146103fa578063095ea7b3146104335780632392c1891461045f57806323b872dd1461048b5780632525d06a146104c157610232565b806301ffc9a71461023757806302759c37146102725780630467e014146102aa57806306fdde031461037d575b600080fd5b61025e6004803603602081101561024d57600080fd5b50356001600160e01b031916610e92565b604080519115158252519081900360200190f35b6102a86004803603606081101561028857600080fd5b506001600160a01b03813581169160208101359091169060400135610eb1565b005b6102a8600480360360808110156102c057600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156102ef57600080fd5b82018360208201111561030157600080fd5b803590602001918460018302840111600160201b8311171561032257600080fd5b919390929091602081019035600160201b81111561033f57600080fd5b82018360208201111561035157600080fd5b803590602001918460018302840111600160201b8311171561037257600080fd5b509092509050610ed3565b610385610f62565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103bf5781810151838201526020016103a7565b50505050905090810190601f1680156103ec5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6104176004803603602081101561041057600080fd5b5035610f84565b604080516001600160a01b039092168252519081900360200190f35b6102a86004803603604081101561044957600080fd5b506001600160a01b038135169060200135610fe6565b6102a86004803603604081101561047557600080fd5b506001600160a01b0381351690602001356110f7565b6102a8600480360360608110156104a157600080fd5b506001600160a01b03813581169160208101359091169060400135611115565b6102a8600480360360408110156104d757600080fd5b506001600160a01b03813516906020013561115a565b6102a86004803603606081101561050357600080fd5b506001600160a01b0381358116916020810135909116906040013561117a565b6102a86004803603602081101561053957600080fd5b5035611195565b61025e6004803603604081101561055657600080fd5b506001600160a01b0381351690602001356111e6565b6102a86004803603604081101561058257600080fd5b50803590602001356111f9565b6102a8600480360360808110156105a557600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156105df57600080fd5b8201836020820111156105f157600080fd5b803590602001918460018302840111600160201b8311171561061257600080fd5b50909250905061124f565b6102a86004803603604081101561063357600080fd5b81359190810190604081016020820135600160201b81111561065457600080fd5b82018360208201111561066657600080fd5b803590602001918460018302840111600160201b8311171561068757600080fd5b5090925090506112be565b610417600480360360208110156106a857600080fd5b5035611320565b6102a861137a565b61072c600480360360408110156106cd57600080fd5b81359190810190604081016020820135600160201b8111156106ee57600080fd5b82018360208201111561070057600080fd5b803590602001918460018302840111600160201b8311171561072157600080fd5b509092509050611385565b60408051918252519081900360200190f35b61072c6004803603602081101561075457600080fd5b50356001600160a01b03166113cf565b6102a86004803603606081101561077a57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156107a957600080fd5b8201836020820111156107bb57600080fd5b803590602001918460018302840111600160201b831117156107dc57600080fd5b509092509050611437565b61038561149a565b6102a86004803603608081101561080557600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561083f57600080fd5b82018360208201111561085157600080fd5b803590602001918460018302840111600160201b8311171561087257600080fd5b5090925090506114b6565b6102a86004803603608081101561089357600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156108cd57600080fd5b8201836020820111156108df57600080fd5b803590602001918460018302840111600160201b8311171561090057600080fd5b509092509050611506565b6102a86004803603604081101561092157600080fd5b506001600160a01b0381351690602001351515611564565b6102a86004803603602081101561094f57600080fd5b50356001600160a01b0316611630565b6102a86004803603604081101561097557600080fd5b506001600160a01b03813516906020013561164b565b610417600480360360208110156109a157600080fd5b5035611672565b61025e600480360360208110156109be57600080fd5b50356001600160a01b0316611694565b6102a8600480360360608110156109e457600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610a1357600080fd5b820183602082011115610a2557600080fd5b803590602001918460018302840111600160201b83111715610a4657600080fd5b5090925090506116a7565b6102a860048036036080811015610a6757600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b811115610aa157600080fd5b820183602082011115610ab357600080fd5b803590602001918460018302840111600160201b83111715610ad457600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506116fa945050505050565b6102a8600480360360a0811015610b2b57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b811115610b6557600080fd5b820183602082011115610b7757600080fd5b803590602001918460018302840111600160201b83111715610b9857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b811115610bea57600080fd5b820183602082011115610bfc57600080fd5b803590602001918460018302840111600160201b83111715610c1d57600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061174c945050505050565b61038560048036036020811015610c7457600080fd5b5035611797565b6102a860048036036080811015610c9157600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610cc057600080fd5b820183602082011115610cd257600080fd5b803590602001918460018302840111600160201b83111715610cf357600080fd5b919390929091602081019035600160201b811115610d1057600080fd5b820183602082011115610d2257600080fd5b803590602001918460018302840111600160201b83111715610d4357600080fd5b509092509050611892565b6102a860048036036020811015610d6457600080fd5b810190602081018135600160201b811115610d7e57600080fd5b820183602082011115610d9057600080fd5b803590602001918460018302840111600160201b83111715610db157600080fd5b50909250905061191b565b6102a860048036036060811015610dd257600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610e0157600080fd5b820183602082011115610e1357600080fd5b803590602001918460018302840111600160201b83111715610e3457600080fd5b50909250905061199e565b6102a860048036036020811015610e5557600080fd5b50356119f3565b61025e60048036036040811015610e7257600080fd5b506001600160a01b0381358116916020013516611a05565b61072c611a33565b6001600160e01b03191660009081526020819052604090205460ff1690565b610eba33611694565b610ec357600080fd5b610ece838383611a57565b505050565b610edc33611694565b610ee557600080fd5b610f5a868686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8a018190048102820181019092528881529250889150879081908401838280828437600092019190915250611a9f92505050565b505050505050565b6040805180820190915260078152662e63727970746f60c81b60208201525b90565b6000610f8f82611ac9565b610fca5760405162461bcd60e51b815260040180806020018281038252602c815260200180612848602c913960400191505060405180910390fd5b506000908152600360205260409020546001600160a01b031690565b6000610ff182611320565b9050806001600160a01b0316836001600160a01b031614156110445760405162461bcd60e51b81526004018080602001828103825260218152602001806128bf6021913960400191505060405180910390fd5b336001600160a01b038216148061106057506110608133611a05565b61109b5760405162461bcd60e51b815260040180806020018281038252603881526020018061279c6038913960400191505060405180910390fd5b60008281526003602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b806111023382611ae6565b61110b57600080fd5b610ece8383611b82565b61111f3382611ae6565b610ec35760405162461bcd60e51b81526004018080602001828103825260318152602001806128e06031913960400191505060405180910390fd5b61116333611694565b61116c57600080fd5b6111768282611b82565b5050565b610ece838383604051806020016040528060008152506116fa565b61119f3382611ae6565b6111da5760405162461bcd60e51b81526004018080602001828103825260308152602001806129366030913960400191505060405180910390fd5b6111e381611bf8565b50565b60006111f28383611ae6565b9392505050565b6000828152600860205260409020546001600160a01b0316331461121c57600080fd5b6040518290829033907ff10fc780c78f994a214c79a2ae8d8b7bfe7cc3f0f935a8f05a29525e71d7f12790600090a45050565b61125833611694565b61126157600080fd5b61126c858585611a57565b6112ae85858585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611c7992505050565b6112b757600080fd5b5050505050565b826112c93382611ae6565b6112d257600080fd5b61131a6113158585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b611bf8565b50505050565b6000818152600260205260408120546001600160a01b0316806113745760405162461bcd60e51b81526004018080602001828103825260298152602001806127fe6029913960400191505060405180910390fd5b92915050565b61138333611e64565b565b60006113c78484848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b949350505050565b60006001600160a01b0382166114165760405162461bcd60e51b815260040180806020018281038252602a8152602001806127d4602a913960400191505060405180910390fd5b6001600160a01b038216600090815260046020526040902061137490611e75565b826114423382611ae6565b61144b57600080fd5b6112b7858585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250611a9f915050565b604080518082019091526002815261155160f21b602082015290565b6112b785858585858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201829052506040805160208101909152908152925061174c915050565b826115113382611ae6565b61151a57600080fd5b610f5a868661155f8787878080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b611a57565b6001600160a01b0382163314156115c2576040805162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604482015290519081900360640190fd5b3360008181526005602090815260408083206001600160a01b03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b61163933611694565b61164257600080fd5b6111e381611e79565b806116563382611ae6565b61165f57600080fd5b610ece61166b83611320565b8484611e8a565b6000818152600860205260408120546001600160a01b03168061137457600080fd5b600061137460018363ffffffff611fce16565b6116b033611694565b6116b957600080fd5b61131a848484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061203592505050565b611705848484611115565b61171184848484611c79565b61131a5760405162461bcd60e51b815260040180806020018281038252603281526020018061271a6032913960400191505060405180910390fd5b826117573382611ae6565b61176057600080fd5b600061176c8585611dac565b9050611779878783611a57565b61178587878386611c79565b61178e57600080fd5b50505050505050565b60606117a282611ac9565b6117ab57600080fd5b600760066000848152602001908152602001600020604051602001808380546001816001161561010002031660029004801561181e5780601f106117fc57610100808354040283529182019161181e565b820191906000526020600020905b81548152906001019060200180831161180a575b5050828054600181600116156101000203166002900480156118775780601f10611855576101008083540402835291820191611877565b820191906000526020600020905b815481529060010190602001808311611863575b505060408051601f1981840301815291905295945050505050565b8461189d3382611ae6565b6118a657600080fd5b61178e878787878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b018190048102820181019092528981529250899150889081908401838280828437600092019190915250611a9f92505050565b61192433611694565b61192d57600080fd5b611939600783836125cf565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b828260405180806020018281038252848482818152602001925080828437600083820152604051601f909101601f19169092018290039550909350505050a15050565b826119a93382611ae6565b6119b257600080fd5b6112b7858585858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061203592505050565b6119fc33611694565b6111da57600080fd5b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b7f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f90565b611a62838383611e8a565b6000818152600860205260409020546001600160a01b031615610ece57600090815260086020526040902080546001600160a01b03191690555050565b611aaa848484612035565b611ac0600085611aba8686611dac565b84611c79565b61131a57600080fd5b6000908152600260205260409020546001600160a01b0316151590565b6000611af182611ac9565b611b2c5760405162461bcd60e51b815260040180806020018281038252602c815260200180612770602c913960400191505060405180910390fd5b6000611b3783611320565b9050806001600160a01b0316846001600160a01b03161480611b725750836001600160a01b0316611b6784610f84565b6001600160a01b0316145b806113c757506113c78185611a05565b611b8b81611ac9565b611b9457600080fd5b6040516001600160a01b0383169082907fb1b34e6d89e1c584527d447f4b29ffad55635a37edeeb564939a6483401b31a590600090a3600090815260086020526040902080546001600160a01b0319166001600160a01b0392909216919091179055565b611c018161220f565b6000818152600860205260409020546001600160a01b031615611c3b57600081815260086020526040902080546001600160a01b03191690555b60008181526006602052604090205460026000196101006001841615020190911604156111e35760008181526006602052604081206111e39161264d565b6000611c8d846001600160a01b0316612221565b611c99575060016113c7565b604051630a85bd0160e11b815233600482018181526001600160a01b03888116602485015260448401879052608060648501908152865160848601528651600095928a169463150b7a029490938c938b938b939260a4019060208501908083838e5b83811015611d13578181015183820152602001611cfb565b50505050905090810190601f168015611d405780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015611d6257600080fd5b505af1158015611d76573d6000803e3d6000fd5b505050506040513d6020811015611d8c57600080fd5b50516001600160e01b031916630a85bd0160e11b14915050949350505050565b6000815160001415611dbd57600080fd5b82826040516020018082805190602001908083835b60208310611df15780518252601f199092019160209182019101611dd2565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040528051906020012060405160200180838152602001828152602001925050506040516020818303038152906040528051906020012060001c905092915050565b6111e360018263ffffffff61222716565b5490565b6111e360018263ffffffff61228e16565b826001600160a01b0316611e9d82611320565b6001600160a01b031614611ee25760405162461bcd60e51b81526004018080602001828103825260298152602001806128966029913960400191505060405180910390fd5b6001600160a01b038216611f275760405162461bcd60e51b815260040180806020018281038252602481526020018061274c6024913960400191505060405180910390fd5b611f308161230f565b6001600160a01b0383166000908152600460205260409020611f519061234a565b6001600160a01b0382166000908152600460205260409020611f7290612361565b60008181526002602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60006001600160a01b0382166120155760405162461bcd60e51b81526004018080602001828103825260228152602001806128746022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b60006120418383611dac565b905061204d848261236a565b815161205857600080fd5b61206181611ac9565b61206a57600080fd5b606082600660008681526020019081526020016000206040516020018083805190602001908083835b602083106120b25780518252601f199092019160209182019101612093565b6001836020036101000a03801982511681845116808217855250505050505090500180601760f91b815250600101828054600181600116156101000203166002900480156121375780601f10612115576101008083540402835291820191612137565b820191906000526020600020905b815481529060010190602001808311612123575b505060408051601f19818403018152918152600087815260066020908152919020825192965061216d9550935085019150612691565b50817fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952826040518080602001828103825283818151815260200191508051906020019080838360005b838110156121ce5781810151838201526020016121b6565b50505050905090810190601f1680156121fb5780820380516001836020036101000a031916815260200191505b509250505060405180910390a25050505050565b6111e361221b82611320565b8261249b565b3b151590565b6122318282611fce565b61226c5760405162461bcd60e51b81526004018080602001828103825260218152602001806128276021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff19169055565b6122988282611fce565b156122ea576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b6000818152600360205260409020546001600160a01b0316156111e357600090815260036020526040902080546001600160a01b0319169055565b805461235d90600163ffffffff61257216565b9055565b80546001019055565b6001600160a01b0382166123c5576040805162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f2061646472657373604482015290519081900360640190fd5b6123ce81611ac9565b15612420576040805162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000604482015290519081900360640190fd5b600081815260026020908152604080832080546001600160a01b0319166001600160a01b03871690811790915583526004909152902061245f90612361565b60405181906001600160a01b038416906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b816001600160a01b03166124ae82611320565b6001600160a01b0316146124f35760405162461bcd60e51b81526004018080602001828103825260258152602001806129116025913960400191505060405180910390fd5b6124fc8161230f565b6001600160a01b038216600090815260046020526040902061251d9061234a565b60008181526002602052604080822080546001600160a01b0319169055518291906001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6000828211156125c9576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106126105782800160ff1982351617855561263d565b8280016001018555821561263d579182015b8281111561263d578235825591602001919060010190612622565b506126499291506126ff565b5090565b50805460018160011615610100020316600290046000825580601f1061267357506111e3565b601f0160209004906000526020600020908101906111e391906126ff565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106126d257805160ff191683800117855561263d565b8280016001018555821561263d579182015b8281111561263d5782518255916020019190600101906126e4565b610f8191905b80821115612649576000815560010161270556fe4552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c654552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e526f6c65733a206163636f756e7420697320746865207a65726f20616464726573734552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f7665644552433732313a206275726e206f6620746f6b656e2074686174206973206e6f74206f776e4552433732314275726e61626c653a2063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564a265627a7a72315820fb6a1b26cc352dbb05e6627fd530bbb44114ac3a349f30d1f071136c656d20dc64736f6c634300050c0032526f6c65733a206163636f756e7420697320746865207a65726f20616464726573730f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f"; +const isSuperArgs = (xs) => xs.length > 1; +class CNSRegistry__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(overrides) { + return super.getDeployTransaction(overrides || {}); + } + deploy(overrides) { + return super.deploy(overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.CNSRegistry__factory = CNSRegistry__factory; +CNSRegistry__factory.bytecode = _bytecode; +CNSRegistry__factory.abi = _abi; diff --git a/dist/types/factories/dot-crypto/contracts/ICNSRegistry__factory.d.ts b/dist/types/factories/dot-crypto/contracts/ICNSRegistry__factory.d.ts new file mode 100644 index 00000000..b9b58eee --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/ICNSRegistry__factory.d.ts @@ -0,0 +1,652 @@ +import { type ContractRunner } from "ethers"; +import type { ICNSRegistry, ICNSRegistryInterface } from "../../../dot-crypto/contracts/ICNSRegistry"; +export declare class ICNSRegistry__factory { + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "approved"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Approval"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly indexed: false; + readonly internalType: "bool"; + readonly name: "approved"; + readonly type: "bool"; + }]; + readonly name: "ApprovalForAll"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly indexed: false; + readonly internalType: "string"; + readonly name: "uri"; + readonly type: "string"; + }]; + readonly name: "NewURI"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: false; + readonly internalType: "string"; + readonly name: "prefix"; + readonly type: "string"; + }]; + readonly name: "NewURIPrefix"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }]; + readonly name: "Resolve"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "updateId"; + readonly type: "uint256"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Sync"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "Transfer"; + readonly type: "event"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "approve"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "balanceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "balance"; + readonly type: "uint256"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }]; + readonly name: "burnChild"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }]; + readonly name: "childIdOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly payable: false; + readonly stateMutability: "pure"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "controlledBurn"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }]; + readonly name: "controlledMintChild"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "controlledResolveTo"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "_data"; + readonly type: "bytes"; + }]; + readonly name: "controlledSafeTransferFrom"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "prefix"; + readonly type: "string"; + }]; + readonly name: "controlledSetTokenURIPrefix"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "controlledTransferFrom"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getApproved"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly name: "isApprovedForAll"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "spender"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "isApprovedOrOwner"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }]; + readonly name: "mintChild"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly []; + readonly name: "name"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "ownerOf"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "resolveTo"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "resolverOf"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "data"; + readonly type: "bytes"; + }]; + readonly name: "safeTransferFrom"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }]; + readonly name: "safeTransferFromChild"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }, { + readonly internalType: "bytes"; + readonly name: "_data"; + readonly type: "bytes"; + }]; + readonly name: "safeTransferFromChild"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }, { + readonly internalType: "bool"; + readonly name: "_approved"; + readonly type: "bool"; + }]; + readonly name: "setApprovalForAll"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "setOwner"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "bytes4"; + readonly name: "interfaceId"; + readonly type: "bytes4"; + }]; + readonly name: "supportsInterface"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly []; + readonly name: "symbol"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "tokenURI"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "transferFrom"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }]; + readonly name: "transferFromChild"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): ICNSRegistryInterface; + static connect(address: string, runner?: ContractRunner | null): ICNSRegistry; +} +//# sourceMappingURL=ICNSRegistry__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/ICNSRegistry__factory.d.ts.map b/dist/types/factories/dot-crypto/contracts/ICNSRegistry__factory.d.ts.map new file mode 100644 index 00000000..dc5f6948 --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/ICNSRegistry__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ICNSRegistry__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/dot-crypto/contracts/ICNSRegistry__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,YAAY,EACZ,qBAAqB,EACtB,MAAM,4CAA4C,CAAC;AAozBpD,qBAAa,qBAAqB;IAChC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,qBAAqB;IAG/C,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,YAAY;CAGhB"} \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/ICNSRegistry__factory.js b/dist/types/factories/dot-crypto/contracts/ICNSRegistry__factory.js new file mode 100644 index 00000000..e26d79e3 --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/ICNSRegistry__factory.js @@ -0,0 +1,831 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ICNSRegistry__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "approved", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Approval", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "ApprovalForAll", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + indexed: false, + internalType: "string", + name: "uri", + type: "string", + }, + ], + name: "NewURI", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "string", + name: "prefix", + type: "string", + }, + ], + name: "NewURIPrefix", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + ], + name: "Resolve", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "resolver", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "updateId", + type: "uint256", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Sync", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Transfer", + type: "event", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "approve", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "balance", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + ], + name: "burnChild", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + ], + name: "childIdOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "pure", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "controlledBurn", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + ], + name: "controlledMintChild", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "controlledResolveTo", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "_data", + type: "bytes", + }, + ], + name: "controlledSafeTransferFrom", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "string", + name: "prefix", + type: "string", + }, + ], + name: "controlledSetTokenURIPrefix", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "controlledTransferFrom", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getApproved", + outputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + name: "isApprovedForAll", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "spender", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "isApprovedOrOwner", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + ], + name: "mintChild", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "name", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "ownerOf", + outputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "resolveTo", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "resolverOf", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "safeTransferFrom", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "safeTransferFrom", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + ], + name: "safeTransferFromChild", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + { + internalType: "bytes", + name: "_data", + type: "bytes", + }, + ], + name: "safeTransferFromChild", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "bool", + name: "_approved", + type: "bool", + }, + ], + name: "setApprovalForAll", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "setOwner", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "symbol", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "tokenURI", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "transferFrom", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + ], + name: "transferFromChild", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, +]; +class ICNSRegistry__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.ICNSRegistry__factory = ICNSRegistry__factory; +ICNSRegistry__factory.abi = _abi; diff --git a/dist/types/factories/dot-crypto/contracts/IRegistryReader__factory.d.ts b/dist/types/factories/dot-crypto/contracts/IRegistryReader__factory.d.ts new file mode 100644 index 00000000..6df0e6bd --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/IRegistryReader__factory.d.ts @@ -0,0 +1,200 @@ +import { type ContractRunner } from "ethers"; +import type { IRegistryReader, IRegistryReaderInterface } from "../../../dot-crypto/contracts/IRegistryReader"; +export declare class IRegistryReader__factory { + static readonly abi: readonly [{ + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }]; + readonly name: "balanceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }]; + readonly name: "childIdOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getApproved"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "owner"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "operator"; + readonly type: "address"; + }]; + readonly name: "isApprovedForAll"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "spender"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "isApprovedOrOwner"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "isController"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly []; + readonly name: "name"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "ownerOf"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "resolverOf"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly []; + readonly name: "root"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly []; + readonly name: "symbol"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "tokenURI"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): IRegistryReaderInterface; + static connect(address: string, runner?: ContractRunner | null): IRegistryReader; +} +//# sourceMappingURL=IRegistryReader__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/IRegistryReader__factory.d.ts.map b/dist/types/factories/dot-crypto/contracts/IRegistryReader__factory.d.ts.map new file mode 100644 index 00000000..63f9354c --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/IRegistryReader__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IRegistryReader__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/dot-crypto/contracts/IRegistryReader__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,eAAe,EACf,wBAAwB,EACzB,MAAM,+CAA+C,CAAC;AA8PvD,qBAAa,wBAAwB;IACnC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,wBAAwB;IAGlD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,eAAe;CAGnB"} \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/IRegistryReader__factory.js b/dist/types/factories/dot-crypto/contracts/IRegistryReader__factory.js new file mode 100644 index 00000000..0646fb4e --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/IRegistryReader__factory.js @@ -0,0 +1,265 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IRegistryReader__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + constant: true, + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + ], + name: "childIdOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getApproved", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + name: "isApprovedForAll", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "spender", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "isApprovedOrOwner", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "isController", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "name", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "ownerOf", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "resolverOf", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "root", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "symbol", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "tokenURI", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, +]; +class IRegistryReader__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IRegistryReader__factory = IRegistryReader__factory; +IRegistryReader__factory.abi = _abi; diff --git a/dist/types/factories/dot-crypto/contracts/IResolverReader__factory.d.ts b/dist/types/factories/dot-crypto/contracts/IResolverReader__factory.d.ts new file mode 100644 index 00000000..695a8dfa --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/IResolverReader__factory.d.ts @@ -0,0 +1,124 @@ +import { type ContractRunner } from "ethers"; +import type { IResolverReader, IResolverReaderInterface } from "../../../dot-crypto/contracts/IResolverReader"; +export declare class IResolverReader__factory { + static readonly abi: readonly [{ + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "get"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "keyHash"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getByHash"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }, { + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getMany"; + readonly outputs: readonly [{ + readonly internalType: "string[]"; + readonly name: ""; + readonly type: "string[]"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "uint256[]"; + readonly name: "keyHashes"; + readonly type: "uint256[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getManyByHash"; + readonly outputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "nonceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly []; + readonly name: "registry"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): IResolverReaderInterface; + static connect(address: string, runner?: ContractRunner | null): IResolverReader; +} +//# sourceMappingURL=IResolverReader__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/IResolverReader__factory.d.ts.map b/dist/types/factories/dot-crypto/contracts/IResolverReader__factory.d.ts.map new file mode 100644 index 00000000..fa590fa5 --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/IResolverReader__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IResolverReader__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/dot-crypto/contracts/IResolverReader__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,eAAe,EACf,wBAAwB,EACzB,MAAM,+CAA+C,CAAC;AA2JvD,qBAAa,wBAAwB;IACnC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,wBAAwB;IAGlD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,eAAe;CAGnB"} \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/IResolverReader__factory.js b/dist/types/factories/dot-crypto/contracts/IResolverReader__factory.js new file mode 100644 index 00000000..eced3274 --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/IResolverReader__factory.js @@ -0,0 +1,166 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IResolverReader__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + constant: true, + inputs: [ + { + internalType: "string", + name: "key", + type: "string", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "get", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "uint256", + name: "keyHash", + type: "uint256", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getByHash", + outputs: [ + { + internalType: "string", + name: "key", + type: "string", + }, + { + internalType: "string", + name: "value", + type: "string", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getMany", + outputs: [ + { + internalType: "string[]", + name: "", + type: "string[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "uint256[]", + name: "keyHashes", + type: "uint256[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getManyByHash", + outputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "nonceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "registry", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, +]; +class IResolverReader__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IResolverReader__factory = IResolverReader__factory; +IResolverReader__factory.abi = _abi; diff --git a/dist/types/factories/dot-crypto/contracts/IResolver__factory.d.ts b/dist/types/factories/dot-crypto/contracts/IResolver__factory.d.ts new file mode 100644 index 00000000..0aca3d20 --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/IResolver__factory.d.ts @@ -0,0 +1,100 @@ +import { type ContractRunner } from "ethers"; +import type { IResolver, IResolverInterface } from "../../../dot-crypto/contracts/IResolver"; +export declare class IResolver__factory { + static readonly abi: readonly [{ + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "preconfigure"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "reconfigure"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "reset"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }, { + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "set"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "setMany"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): IResolverInterface; + static connect(address: string, runner?: ContractRunner | null): IResolver; +} +//# sourceMappingURL=IResolver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/IResolver__factory.d.ts.map b/dist/types/factories/dot-crypto/contracts/IResolver__factory.d.ts.map new file mode 100644 index 00000000..ca030e6a --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/IResolver__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IResolver__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/dot-crypto/contracts/IResolver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,SAAS,EACT,kBAAkB,EACnB,MAAM,yCAAyC,CAAC;AAwHjD,qBAAa,kBAAkB;IAC7B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,kBAAkB;IAG5C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,SAAS;CAG3E"} \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/IResolver__factory.js b/dist/types/factories/dot-crypto/contracts/IResolver__factory.js new file mode 100644 index 00000000..c950b9bc --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/IResolver__factory.js @@ -0,0 +1,131 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IResolver__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + constant: false, + inputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "preconfigure", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "reconfigure", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "reset", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "string", + name: "key", + type: "string", + }, + { + internalType: "string", + name: "value", + type: "string", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "set", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "setMany", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, +]; +class IResolver__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IResolver__factory = IResolver__factory; +IResolver__factory.abi = _abi; diff --git a/dist/types/factories/dot-crypto/contracts/Resolver__factory.d.ts b/dist/types/factories/dot-crypto/contracts/Resolver__factory.d.ts new file mode 100644 index 00000000..31f51d1c --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/Resolver__factory.d.ts @@ -0,0 +1,424 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, AddressLike, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../common"; +import type { Resolver, ResolverInterface } from "../../../dot-crypto/contracts/Resolver"; +declare type ResolverConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class Resolver__factory extends ContractFactory { + constructor(...args: ResolverConstructorParams); + getDeployTransaction(registry: AddressLike, mintingController: AddressLike, overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(registry: AddressLike, mintingController: AddressLike, overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): Resolver__factory; + static readonly bytecode = "0x60806040523480156200001157600080fd5b506040516200240a3803806200240a833981016040819052620000349162000160565b8180600160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555050806001600160a01b0316637b1039996040518163ffffffff1660e01b815260040160206040518083038186803b1580156200009757600080fd5b505afa158015620000ac573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250620000d2919081019062000137565b6001600160a01b0316826001600160a01b031614620000f057600080fd5b600580546001600160a01b0319166001600160a01b039290921691909117905550620001ea565b80516200012481620001c5565b92915050565b80516200012481620001df565b6000602082840312156200014a57600080fd5b600062000158848462000117565b949350505050565b600080604083850312156200017457600080fd5b60006200018285856200012a565b925050602062000195858286016200012a565b9150509250929050565b60006200012482620001b9565b600062000124826200019f565b6001600160a01b031690565b620001d0816200019f565b8114620001dc57600080fd5b50565b620001d081620001ac565b61221080620001fa6000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c80638c87a4ea116100a2578063b87abc1111610071578063b87abc1114610244578063c597407314610257578063ce92b33e1461026a578063e837ae741461027d578063ec129eea146102905761010b565b80638c87a4ea146101ea5780638f69c188146101fd578063a3557e6c14610210578063b85afd28146102235761010b565b806347c81699116100de57806347c8169914610181578063672b9f81146101945780636ccbae5f146101b55780637b103999146101d55761010b565b80631bd8cc1a146101105780631be5e7ed146101395780632c3d376d14610159578063310bd74b1461016c575b600080fd5b61012361011e3660046117b4565b6102a3565b6040516101309190611eee565b60405180910390f35b61014c610147366004611aec565b6104f2565b6040516101309190611fd6565b61014c610167366004611b21565b610673565b61017f61017a366004611b21565b610714565b005b61017f61018f3660046119b5565b6107c0565b6101a76101a2366004611b94565b6108ef565b604051610130929190611fe7565b6101c86101c3366004611b21565b6109c3565b604051610130919061204c565b6101dd6109d5565b6040516101309190611ea9565b6101236101f836600461191d565b6109e5565b61017f61020b366004611878565b610a74565b61017f61021e366004611878565b610af0565b610236610231366004611951565b610b1b565b604051610130929190611eff565b61017f610252366004611b3f565b610ca9565b61017f610265366004611a39565b610d43565b61017f610278366004611808565b610df9565b61017f61028b366004611808565b610e97565b61017f61029e366004611808565b610f4e565b60015460405163b3f9e4cb60e01b815260609183916001600160a01b039091169063b3f9e4cb906102d890849060040161204c565b60206040518083038186803b1580156102f057600080fd5b505afa158015610304573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610328919081019061178e565b6001600160a01b0316306001600160a01b0316146103615760405162461bcd60e51b81526004016103589061201c565b60405180910390fd5b604080518581526020808702820101909152849060609082801561039957816020015b60608152602001906001900390816103845790505b506000868152600360205260408120549192505b838110156104e557600087815260026020908152604080832085845290915290208989838181106103da57fe5b602002820190508035601e19368490030181126103f657600080fd5b909101602081019150356001600160401b0381111561041457600080fd5b3681900382131561042457600080fd5b604051610432929190611e70565b9081526040805160209281900383018120805460026001821615610100026000190190911604601f810185900485028301850190935282825290929091908301828280156104c15780601f10610496576101008083540402835291602001916104c1565b820191906000526020600020905b8154815290600101906020018083116104a457829003601f168201915b50505050508382815181106104d257fe5b60209081029190910101526001016103ad565b5090979650505050505050565b60015460405163b3f9e4cb60e01b815260609183916001600160a01b039091169063b3f9e4cb9061052790849060040161204c565b60206040518083038186803b15801561053f57600080fd5b505afa158015610553573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610577919081019061178e565b6001600160a01b0316306001600160a01b0316146105a75760405162461bcd60e51b81526004016103589061201c565b6000838152600260209081526040808320600383528184205484529091529081902090516105d6908690611e7d565b9081526040805160209281900383018120805460026001821615610100026000190190911604601f810185900485028301850190935282825290929091908301828280156106655780601f1061063a57610100808354040283529160200191610665565b820191906000526020600020905b81548152906001019060200180831161064857829003601f168201915b505050505091505092915050565b60008181526004602090815260409182902080548351601f60026000196101006001861615020190931692909204918201849004840281018401909452808452606093928301828280156107085780601f106106dd57610100808354040283529160200191610708565b820191906000526020600020905b8154815290600101906020018083116106eb57829003601f168201915b50505050509050919050565b60015460405163430c208160e01b815282916001600160a01b03169063430c2081906107469033908590600401611ec5565b60206040518083038186803b15801561075e57600080fd5b505afa158015610772573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506107969190810190611997565b6107b25760405162461bcd60e51b81526004016103589061202c565b6107bc4283610fec565b5050565b60015460405163430c208160e01b815282916001600160a01b03169063430c2081906107f29033908590600401611ec5565b60206040518083038186803b15801561080a57600080fd5b505afa15801561081e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506108429190810190611997565b61085e5760405162461bcd60e51b81526004016103589061202c565b6108e7600360008481526020019081526020016000205487878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061108e915050565b505050505050565b60015460405163b3f9e4cb60e01b8152606091829184916001600160a01b03169063b3f9e4cb9061092490849060040161204c565b60206040518083038186803b15801561093c57600080fd5b505afa158015610950573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610974919081019061178e565b6001600160a01b0316306001600160a01b0316146109a45760405162461bcd60e51b81526004016103589061201c565b6109ad85610673565b92506109b983856104f2565b9150509250929050565b60009081526020819052604090205490565b6001546001600160a01b03165b90565b6060600082519050606081604051908082528060200260200182016040528015610a2357816020015b6060815260200190600190039081610a0e5790505b50905060005b82811015610a6c57610a4d858281518110610a4057fe5b6020026020010151610673565b828281518110610a5957fe5b6020908102919091010152600101610a29565b509392505050565b610acf63ce92b33e60e01b858585604051602401610a9493929190611f24565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092178252519020838361129f565b600082815260036020526040902054610aea908585856113c3565b50505050565b610b1063ec129eea60e01b858585604051602401610a9493929190611f24565b610aea84848461140a565b60015460405163b3f9e4cb60e01b8152606091829184916001600160a01b03169063b3f9e4cb90610b5090849060040161204c565b60206040518083038186803b158015610b6857600080fd5b505afa158015610b7c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610ba0919081019061178e565b6001600160a01b0316306001600160a01b031614610bd05760405162461bcd60e51b81526004016103589061201c565b8451604080518281526020808402820101909152818015610c0557816020015b6060815260200190600190039081610bf05790505b50935080604051908082528060200260200182016040528015610c3c57816020015b6060815260200190600190039081610c275790505b50925060005b81811015610c9f57610c67878281518110610c5957fe5b6020026020010151876108ef565b8651879084908110610c7557fe5b60200260200101868481518110610c8857fe5b602090810291909101019190915252600101610c42565b5050509250929050565b610d3463310bd74b60e01b84604051602401610cc5919061204c565b60408051601f19818403018152918152602080830180516001600160e01b03166001600160e01b031990951694909417845291519092208251601f8601839004830281018301909352848352918691869086908190840183828082843760009201919091525061129f92505050565b610d3e4284610fec565b505050565b610d676347c8169960e01b8888888888604051602401610cc5959493929190611f96565b610df0600360008581526020019081526020016000205488888080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8c018190048102820181019092528a815292508a915089908190840183828082843760009201919091525089925061108e915050565b50505050505050565b60015460405163430c208160e01b815282916001600160a01b03169063430c208190610e2b9033908590600401611ec5565b60206040518083038186803b158015610e4357600080fd5b505afa158015610e57573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610e7b9190810190611997565b610acf5760405162461bcd60e51b81526004016103589061202c565b6005546040516355138f0d60e11b81526001600160a01b039091169063aa271e1a90610ec7903390600401611eb7565b60206040518083038186803b158015610edf57600080fd5b505afa158015610ef3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610f179190810190611997565b610f335760405162461bcd60e51b81526004016103589061203c565b600081815260036020526040902054610d3e908484846113c3565b60015460405163430c208160e01b815282916001600160a01b03169063430c208190610f809033908590600401611ec5565b60206040518083038186803b158015610f9857600080fd5b505afa158015610fac573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610fd09190810190611997565b610b105760405162461bcd60e51b81526004016103589061202c565b600081815260036020526040808220849055600154905163538361a760e01b81526001600160a01b039091169163538361a79161102d91859160040161205a565b600060405180830381600087803b15801561104757600080fd5b505af115801561105b573d6000803e3d6000fd5b50506040518392507f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9150600090a25050565b825160208085019190912060008381526002835260408082208883529093528281209251919290916110c1908790611e7d565b908152604051602091819003919091018120546001805463538361a760e01b84526002918316156101000260001901909216041592506001600160a01b03169063538361a7906111179086908690600401612075565b600060405180830381600087803b15801561113157600080fd5b505af1158015611145573d6000803e3d6000fd5b50505060008481526002602090815260408083208a8452909152908190209051869250611173908890611e7d565b90815260200160405180910390209080519060200190611194929190611521565b50600082815260046020526040902054600260001961010060018416150201909116046111dc57600082815260046020908152604090912086516111da92880190611521565b505b801561123157846040516111f09190611e7d565b6040518091039020837f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f86876040516112289190611fd6565b60405180910390a35b8360405161123f9190611e7d565b6040518091039020856040516112559190611e7d565b6040518091039020847f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d92888860405161128f929190611fe7565b60405180910390a4505050505050565b6000828152602081815260408083205490519092916112f59185916112e9916112ce918a913091899101611e39565b60405160208183030381529060405280519060200120611414565b9063ffffffff61144416565b90506001600160a01b0381161580159061138c575060015460405163430c208160e01b81526001600160a01b039091169063430c20819061133c9084908890600401611ee0565b60206040518083038186803b15801561135457600080fd5b505afa158015611368573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061138c9190810190611997565b6113a85760405162461bcd60e51b81526004016103589061200c565b50505060009081526020819052604090208054600101905550565b825160005b818110156108e757611402868683815181106113e057fe5b60200260200101518684815181106113f457fe5b60200260200101518661108e565b6001016113c8565b610f334282610fec565b6000816040516020016114279190611e89565b604051602081830303815290604052805190602001209050919050565b600081516041146114575750600061151b565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a082111561149d576000935050505061151b565b8060ff16601b141580156114b557508060ff16601c14155b156114c6576000935050505061151b565b600186828585604051600081526020016040526040516114e99493929190611f58565b6020604051602081039080840390855afa15801561150b573d6000803e3d6000fd5b5050506020604051035193505050505b92915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061156257805160ff191683800117855561158f565b8280016001018555821561158f579182015b8281111561158f578251825591602001919060010190611574565b5061159b92915061159f565b5090565b6109e291905b8082111561159b57600081556001016115a5565b805161151b816121a4565b60008083601f8401126115d657600080fd5b5081356001600160401b038111156115ed57600080fd5b60208301915083602082028301111561160557600080fd5b9250929050565b600082601f83011261161d57600080fd5b813561163061162b826120a9565b612083565b81815260209384019390925082018360005b8381101561166e57813586016116588882611734565b8452506020928301929190910190600101611642565b5050505092915050565b600082601f83011261168957600080fd5b813561169761162b826120a9565b915081818352602084019350602081019050838560208402820111156116bc57600080fd5b60005b8381101561166e57816116d28882611783565b84525060209283019291909101906001016116bf565b805161151b816121bb565b60008083601f84011261170557600080fd5b5081356001600160401b0381111561171c57600080fd5b60208301915083600182028301111561160557600080fd5b600082601f83011261174557600080fd5b813561175361162b826120c9565b9150808252602083016020830185838301111561176f57600080fd5b61177a83828461214b565b50505092915050565b803561151b816121c4565b6000602082840312156117a057600080fd5b60006117ac84846115b9565b949350505050565b6000806000604084860312156117c957600080fd5b83356001600160401b038111156117df57600080fd5b6117eb868287016115c4565b935093505060206117fe86828701611783565b9150509250925092565b60008060006060848603121561181d57600080fd5b83356001600160401b0381111561183357600080fd5b61183f8682870161160c565b93505060208401356001600160401b0381111561185b57600080fd5b6118678682870161160c565b92505060406117fe86828701611783565b6000806000806080858703121561188e57600080fd5b84356001600160401b038111156118a457600080fd5b6118b08782880161160c565b94505060208501356001600160401b038111156118cc57600080fd5b6118d88782880161160c565b93505060406118e987828801611783565b92505060608501356001600160401b0381111561190557600080fd5b61191187828801611734565b91505092959194509250565b60006020828403121561192f57600080fd5b81356001600160401b0381111561194557600080fd5b6117ac84828501611678565b6000806040838503121561196457600080fd5b82356001600160401b0381111561197a57600080fd5b61198685828601611678565b92505060206109b985828601611783565b6000602082840312156119a957600080fd5b60006117ac84846116e8565b6000806000806000606086880312156119cd57600080fd5b85356001600160401b038111156119e357600080fd5b6119ef888289016116f3565b955095505060208601356001600160401b03811115611a0d57600080fd5b611a19888289016116f3565b93509350506040611a2c88828901611783565b9150509295509295909350565b60008060008060008060006080888a031215611a5457600080fd5b87356001600160401b03811115611a6a57600080fd5b611a768a828b016116f3565b975097505060208801356001600160401b03811115611a9457600080fd5b611aa08a828b016116f3565b95509550506040611ab38a828b01611783565b93505060608801356001600160401b03811115611acf57600080fd5b611adb8a828b016116f3565b925092505092959891949750929550565b60008060408385031215611aff57600080fd5b82356001600160401b03811115611b1557600080fd5b61198685828601611734565b600060208284031215611b3357600080fd5b60006117ac8484611783565b600080600060408486031215611b5457600080fd5b6000611b608686611783565b93505060208401356001600160401b03811115611b7c57600080fd5b611b88868287016116f3565b92509250509250925092565b60008060408385031215611ba757600080fd5b60006119868585611783565b6000611bbf8383611ccb565b9392505050565b611bcf8161212a565b82525050565b611bcf81612108565b611bcf611bea82612108565b612183565b6000611bfa826120f6565b611c0481856120fa565b935083602082028501611c16856120f0565b8060005b85811015611c505784840389528151611c338582611bb3565b9450611c3e836120f0565b60209a909a0199925050600101611c1a565b5091979650505050505050565b611bcf816109e2565b611bcf611c72826109e2565b6109e2565b611bcf81612135565b6000611c8c83856120fa565b9350611c9983858461214b565b611ca283612194565b9093019392505050565b6000611cb88385612103565b9350611cc583858461214b565b50500190565b6000611cd6826120f6565b611ce081856120fa565b9350611cf0818560208601612157565b611ca281612194565b6000611d04826120f6565b611d0e8185612103565b9350611d1e818560208601612157565b9290920192915050565b6000611d35601c83612103565b7f19457468657265756d205369676e6564204d6573736167653a0a3332000000008152601c0192915050565b6000611d6e6011836120fa565b70494e56414c49445f5349474e415455524560781b815260200192915050565b6000611d9b601d836120fa565b7f5245534f4c5645525f44455441434845445f46524f4d5f444f4d41494e000000815260200192915050565b6000611dd4601f836120fa565b7f53454e4445525f49535f4e4f545f415050524f5645445f4f525f4f574e455200815260200192915050565b6000611e0d6014836120fa565b7329a2a72222a92fa4a9afa727aa2fa6a4a72a22a960611b815260200192915050565b611bcf81612124565b6000611e458286611c66565b602082019150611e558285611bde565b601482019150611e658284611c66565b506020019392505050565b60006117ac828486611cac565b6000611bbf8284611cf9565b6000611e9482611d28565b9150611ea08284611c66565b50602001919050565b6020810161151b8284611bd5565b6020810161151b8284611bc6565b60408101611ed38285611bc6565b611bbf6020830184611c5d565b60408101611ed38285611bd5565b60208082528101611bbf8184611bef565b60408082528101611f108185611bef565b905081810360208301526117ac8184611bef565b60608082528101611f358186611bef565b90508181036020830152611f498185611bef565b90506117ac6040830184611c5d565b60808101611f668287611c5d565b611f736020830186611e30565b611f806040830185611c5d565b611f8d6060830184611c5d565b95945050505050565b60608082528101611fa8818789611c80565b90508181036020830152611fbd818587611c80565b9050611fcc6040830184611c5d565b9695505050505050565b60208082528101611bbf8184611ccb565b60408082528101611ff88185611ccb565b905081810360208301526117ac8184611ccb565b6020808252810161151b81611d61565b6020808252810161151b81611d8e565b6020808252810161151b81611dc7565b6020808252810161151b81611e00565b6020810161151b8284611c5d565b604081016120688285611c5d565b611bbf6020830184611c77565b60408101611ed38285611c5d565b6040518181016001600160401b03811182821017156120a157600080fd5b604052919050565b60006001600160401b038211156120bf57600080fd5b5060209081020190565b60006001600160401b038211156120df57600080fd5b506020601f91909101601f19160190565b60200190565b5190565b90815260200190565b919050565b600061151b82612118565b151590565b6001600160a01b031690565b60ff1690565b600061151b82612140565b600061151b826109e2565b600061151b82612108565b82818337506000910152565b60005b8381101561217257818101518382015260200161215a565b83811115610aea5750506000910152565b600061151b82600061151b8261219e565b601f01601f191690565b60601b90565b6121ad81612108565b81146121b857600080fd5b50565b6121ad81612113565b6121ad816109e256fea365627a7a723158207a1d8dfd286d14fcafd1812a4c44813691ac746a5a23fa711ac5551c9509654d6c6578706572696d656e74616cf564736f6c634300050c0040"; + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "contract CNSRegistry"; + readonly name: "registry"; + readonly type: "address"; + }, { + readonly internalType: "contract MintingController"; + readonly name: "mintingController"; + readonly type: "address"; + }]; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "constructor"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly indexed: true; + readonly internalType: "string"; + readonly name: "keyIndex"; + readonly type: "string"; + }, { + readonly indexed: false; + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }]; + readonly name: "NewKey"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "ResetRecords"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly indexed: true; + readonly internalType: "string"; + readonly name: "keyIndex"; + readonly type: "string"; + }, { + readonly indexed: true; + readonly internalType: "string"; + readonly name: "valueIndex"; + readonly type: "string"; + }, { + readonly indexed: false; + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }, { + readonly indexed: false; + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }]; + readonly name: "Set"; + readonly type: "event"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "get"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "keyHash"; + readonly type: "uint256"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getByHash"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }, { + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getMany"; + readonly outputs: readonly [{ + readonly internalType: "string[]"; + readonly name: ""; + readonly type: "string[]"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "uint256[]"; + readonly name: "keyHashes"; + readonly type: "uint256[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "getManyByHash"; + readonly outputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "keyHash"; + readonly type: "uint256"; + }]; + readonly name: "hashToKey"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "uint256[]"; + readonly name: "hashes"; + readonly type: "uint256[]"; + }]; + readonly name: "hashesToKeys"; + readonly outputs: readonly [{ + readonly internalType: "string[]"; + readonly name: ""; + readonly type: "string[]"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "nonceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "preconfigure"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "reconfigure"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "reconfigureFor"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly []; + readonly name: "registry"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "reset"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "resetFor"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }, { + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "set"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "key"; + readonly type: "string"; + }, { + readonly internalType: "string"; + readonly name: "value"; + readonly type: "string"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "setFor"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "setMany"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "setManyFor"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): ResolverInterface; + static connect(address: string, runner?: ContractRunner | null): Resolver; +} +export {}; +//# sourceMappingURL=Resolver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/Resolver__factory.d.ts.map b/dist/types/factories/dot-crypto/contracts/Resolver__factory.d.ts.map new file mode 100644 index 00000000..ede8f8db --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/Resolver__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"Resolver__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/dot-crypto/contracts/Resolver__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,MAAM,EACN,WAAW,EACX,yBAAyB,EACzB,cAAc,EACf,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,KAAK,EACV,QAAQ,EACR,iBAAiB,EAClB,MAAM,wCAAwC,CAAC;AAqgBhD,aAAK,yBAAyB,GAC1B,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,iBAAkB,SAAQ,eAAe;gBACxC,GAAG,IAAI,EAAE,yBAAyB;IAQrC,oBAAoB,CAC3B,QAAQ,EAAE,WAAW,EACrB,iBAAiB,EAAE,WAAW,EAC9B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAO5B,MAAM,CACb,QAAQ,EAAE,WAAW,EACrB,iBAAiB,EAAE,WAAW,EAC9B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAQtB,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,iBAAiB;IAIlE,MAAM,CAAC,QAAQ,CAAC,QAAQ,4hkBAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,iBAAiB;IAG3C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,QAAQ;CAG1E"} \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/Resolver__factory.js b/dist/types/factories/dot-crypto/contracts/Resolver__factory.js new file mode 100644 index 00000000..3e566f40 --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/Resolver__factory.js @@ -0,0 +1,545 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.Resolver__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "contract CNSRegistry", + name: "registry", + type: "address", + }, + { + internalType: "contract MintingController", + name: "mintingController", + type: "address", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + indexed: true, + internalType: "string", + name: "keyIndex", + type: "string", + }, + { + indexed: false, + internalType: "string", + name: "key", + type: "string", + }, + ], + name: "NewKey", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "ResetRecords", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + indexed: true, + internalType: "string", + name: "keyIndex", + type: "string", + }, + { + indexed: true, + internalType: "string", + name: "valueIndex", + type: "string", + }, + { + indexed: false, + internalType: "string", + name: "key", + type: "string", + }, + { + indexed: false, + internalType: "string", + name: "value", + type: "string", + }, + ], + name: "Set", + type: "event", + }, + { + constant: true, + inputs: [ + { + internalType: "string", + name: "key", + type: "string", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "get", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "uint256", + name: "keyHash", + type: "uint256", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getByHash", + outputs: [ + { + internalType: "string", + name: "key", + type: "string", + }, + { + internalType: "string", + name: "value", + type: "string", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getMany", + outputs: [ + { + internalType: "string[]", + name: "", + type: "string[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "uint256[]", + name: "keyHashes", + type: "uint256[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getManyByHash", + outputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "uint256", + name: "keyHash", + type: "uint256", + }, + ], + name: "hashToKey", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "uint256[]", + name: "hashes", + type: "uint256[]", + }, + ], + name: "hashesToKeys", + outputs: [ + { + internalType: "string[]", + name: "", + type: "string[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "nonceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "preconfigure", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "reconfigure", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "reconfigureFor", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "registry", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "reset", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "resetFor", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "string", + name: "key", + type: "string", + }, + { + internalType: "string", + name: "value", + type: "string", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "set", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "string", + name: "key", + type: "string", + }, + { + internalType: "string", + name: "value", + type: "string", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "setFor", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "setMany", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "setManyFor", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, +]; +const _bytecode = "0x60806040523480156200001157600080fd5b506040516200240a3803806200240a833981016040819052620000349162000160565b8180600160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555050806001600160a01b0316637b1039996040518163ffffffff1660e01b815260040160206040518083038186803b1580156200009757600080fd5b505afa158015620000ac573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250620000d2919081019062000137565b6001600160a01b0316826001600160a01b031614620000f057600080fd5b600580546001600160a01b0319166001600160a01b039290921691909117905550620001ea565b80516200012481620001c5565b92915050565b80516200012481620001df565b6000602082840312156200014a57600080fd5b600062000158848462000117565b949350505050565b600080604083850312156200017457600080fd5b60006200018285856200012a565b925050602062000195858286016200012a565b9150509250929050565b60006200012482620001b9565b600062000124826200019f565b6001600160a01b031690565b620001d0816200019f565b8114620001dc57600080fd5b50565b620001d081620001ac565b61221080620001fa6000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c80638c87a4ea116100a2578063b87abc1111610071578063b87abc1114610244578063c597407314610257578063ce92b33e1461026a578063e837ae741461027d578063ec129eea146102905761010b565b80638c87a4ea146101ea5780638f69c188146101fd578063a3557e6c14610210578063b85afd28146102235761010b565b806347c81699116100de57806347c8169914610181578063672b9f81146101945780636ccbae5f146101b55780637b103999146101d55761010b565b80631bd8cc1a146101105780631be5e7ed146101395780632c3d376d14610159578063310bd74b1461016c575b600080fd5b61012361011e3660046117b4565b6102a3565b6040516101309190611eee565b60405180910390f35b61014c610147366004611aec565b6104f2565b6040516101309190611fd6565b61014c610167366004611b21565b610673565b61017f61017a366004611b21565b610714565b005b61017f61018f3660046119b5565b6107c0565b6101a76101a2366004611b94565b6108ef565b604051610130929190611fe7565b6101c86101c3366004611b21565b6109c3565b604051610130919061204c565b6101dd6109d5565b6040516101309190611ea9565b6101236101f836600461191d565b6109e5565b61017f61020b366004611878565b610a74565b61017f61021e366004611878565b610af0565b610236610231366004611951565b610b1b565b604051610130929190611eff565b61017f610252366004611b3f565b610ca9565b61017f610265366004611a39565b610d43565b61017f610278366004611808565b610df9565b61017f61028b366004611808565b610e97565b61017f61029e366004611808565b610f4e565b60015460405163b3f9e4cb60e01b815260609183916001600160a01b039091169063b3f9e4cb906102d890849060040161204c565b60206040518083038186803b1580156102f057600080fd5b505afa158015610304573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610328919081019061178e565b6001600160a01b0316306001600160a01b0316146103615760405162461bcd60e51b81526004016103589061201c565b60405180910390fd5b604080518581526020808702820101909152849060609082801561039957816020015b60608152602001906001900390816103845790505b506000868152600360205260408120549192505b838110156104e557600087815260026020908152604080832085845290915290208989838181106103da57fe5b602002820190508035601e19368490030181126103f657600080fd5b909101602081019150356001600160401b0381111561041457600080fd5b3681900382131561042457600080fd5b604051610432929190611e70565b9081526040805160209281900383018120805460026001821615610100026000190190911604601f810185900485028301850190935282825290929091908301828280156104c15780601f10610496576101008083540402835291602001916104c1565b820191906000526020600020905b8154815290600101906020018083116104a457829003601f168201915b50505050508382815181106104d257fe5b60209081029190910101526001016103ad565b5090979650505050505050565b60015460405163b3f9e4cb60e01b815260609183916001600160a01b039091169063b3f9e4cb9061052790849060040161204c565b60206040518083038186803b15801561053f57600080fd5b505afa158015610553573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610577919081019061178e565b6001600160a01b0316306001600160a01b0316146105a75760405162461bcd60e51b81526004016103589061201c565b6000838152600260209081526040808320600383528184205484529091529081902090516105d6908690611e7d565b9081526040805160209281900383018120805460026001821615610100026000190190911604601f810185900485028301850190935282825290929091908301828280156106655780601f1061063a57610100808354040283529160200191610665565b820191906000526020600020905b81548152906001019060200180831161064857829003601f168201915b505050505091505092915050565b60008181526004602090815260409182902080548351601f60026000196101006001861615020190931692909204918201849004840281018401909452808452606093928301828280156107085780601f106106dd57610100808354040283529160200191610708565b820191906000526020600020905b8154815290600101906020018083116106eb57829003601f168201915b50505050509050919050565b60015460405163430c208160e01b815282916001600160a01b03169063430c2081906107469033908590600401611ec5565b60206040518083038186803b15801561075e57600080fd5b505afa158015610772573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506107969190810190611997565b6107b25760405162461bcd60e51b81526004016103589061202c565b6107bc4283610fec565b5050565b60015460405163430c208160e01b815282916001600160a01b03169063430c2081906107f29033908590600401611ec5565b60206040518083038186803b15801561080a57600080fd5b505afa15801561081e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506108429190810190611997565b61085e5760405162461bcd60e51b81526004016103589061202c565b6108e7600360008481526020019081526020016000205487878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061108e915050565b505050505050565b60015460405163b3f9e4cb60e01b8152606091829184916001600160a01b03169063b3f9e4cb9061092490849060040161204c565b60206040518083038186803b15801561093c57600080fd5b505afa158015610950573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610974919081019061178e565b6001600160a01b0316306001600160a01b0316146109a45760405162461bcd60e51b81526004016103589061201c565b6109ad85610673565b92506109b983856104f2565b9150509250929050565b60009081526020819052604090205490565b6001546001600160a01b03165b90565b6060600082519050606081604051908082528060200260200182016040528015610a2357816020015b6060815260200190600190039081610a0e5790505b50905060005b82811015610a6c57610a4d858281518110610a4057fe5b6020026020010151610673565b828281518110610a5957fe5b6020908102919091010152600101610a29565b509392505050565b610acf63ce92b33e60e01b858585604051602401610a9493929190611f24565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092178252519020838361129f565b600082815260036020526040902054610aea908585856113c3565b50505050565b610b1063ec129eea60e01b858585604051602401610a9493929190611f24565b610aea84848461140a565b60015460405163b3f9e4cb60e01b8152606091829184916001600160a01b03169063b3f9e4cb90610b5090849060040161204c565b60206040518083038186803b158015610b6857600080fd5b505afa158015610b7c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610ba0919081019061178e565b6001600160a01b0316306001600160a01b031614610bd05760405162461bcd60e51b81526004016103589061201c565b8451604080518281526020808402820101909152818015610c0557816020015b6060815260200190600190039081610bf05790505b50935080604051908082528060200260200182016040528015610c3c57816020015b6060815260200190600190039081610c275790505b50925060005b81811015610c9f57610c67878281518110610c5957fe5b6020026020010151876108ef565b8651879084908110610c7557fe5b60200260200101868481518110610c8857fe5b602090810291909101019190915252600101610c42565b5050509250929050565b610d3463310bd74b60e01b84604051602401610cc5919061204c565b60408051601f19818403018152918152602080830180516001600160e01b03166001600160e01b031990951694909417845291519092208251601f8601839004830281018301909352848352918691869086908190840183828082843760009201919091525061129f92505050565b610d3e4284610fec565b505050565b610d676347c8169960e01b8888888888604051602401610cc5959493929190611f96565b610df0600360008581526020019081526020016000205488888080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8c018190048102820181019092528a815292508a915089908190840183828082843760009201919091525089925061108e915050565b50505050505050565b60015460405163430c208160e01b815282916001600160a01b03169063430c208190610e2b9033908590600401611ec5565b60206040518083038186803b158015610e4357600080fd5b505afa158015610e57573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610e7b9190810190611997565b610acf5760405162461bcd60e51b81526004016103589061202c565b6005546040516355138f0d60e11b81526001600160a01b039091169063aa271e1a90610ec7903390600401611eb7565b60206040518083038186803b158015610edf57600080fd5b505afa158015610ef3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610f179190810190611997565b610f335760405162461bcd60e51b81526004016103589061203c565b600081815260036020526040902054610d3e908484846113c3565b60015460405163430c208160e01b815282916001600160a01b03169063430c208190610f809033908590600401611ec5565b60206040518083038186803b158015610f9857600080fd5b505afa158015610fac573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610fd09190810190611997565b610b105760405162461bcd60e51b81526004016103589061202c565b600081815260036020526040808220849055600154905163538361a760e01b81526001600160a01b039091169163538361a79161102d91859160040161205a565b600060405180830381600087803b15801561104757600080fd5b505af115801561105b573d6000803e3d6000fd5b50506040518392507f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9150600090a25050565b825160208085019190912060008381526002835260408082208883529093528281209251919290916110c1908790611e7d565b908152604051602091819003919091018120546001805463538361a760e01b84526002918316156101000260001901909216041592506001600160a01b03169063538361a7906111179086908690600401612075565b600060405180830381600087803b15801561113157600080fd5b505af1158015611145573d6000803e3d6000fd5b50505060008481526002602090815260408083208a8452909152908190209051869250611173908890611e7d565b90815260200160405180910390209080519060200190611194929190611521565b50600082815260046020526040902054600260001961010060018416150201909116046111dc57600082815260046020908152604090912086516111da92880190611521565b505b801561123157846040516111f09190611e7d565b6040518091039020837f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f86876040516112289190611fd6565b60405180910390a35b8360405161123f9190611e7d565b6040518091039020856040516112559190611e7d565b6040518091039020847f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d92888860405161128f929190611fe7565b60405180910390a4505050505050565b6000828152602081815260408083205490519092916112f59185916112e9916112ce918a913091899101611e39565b60405160208183030381529060405280519060200120611414565b9063ffffffff61144416565b90506001600160a01b0381161580159061138c575060015460405163430c208160e01b81526001600160a01b039091169063430c20819061133c9084908890600401611ee0565b60206040518083038186803b15801561135457600080fd5b505afa158015611368573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061138c9190810190611997565b6113a85760405162461bcd60e51b81526004016103589061200c565b50505060009081526020819052604090208054600101905550565b825160005b818110156108e757611402868683815181106113e057fe5b60200260200101518684815181106113f457fe5b60200260200101518661108e565b6001016113c8565b610f334282610fec565b6000816040516020016114279190611e89565b604051602081830303815290604052805190602001209050919050565b600081516041146114575750600061151b565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a082111561149d576000935050505061151b565b8060ff16601b141580156114b557508060ff16601c14155b156114c6576000935050505061151b565b600186828585604051600081526020016040526040516114e99493929190611f58565b6020604051602081039080840390855afa15801561150b573d6000803e3d6000fd5b5050506020604051035193505050505b92915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061156257805160ff191683800117855561158f565b8280016001018555821561158f579182015b8281111561158f578251825591602001919060010190611574565b5061159b92915061159f565b5090565b6109e291905b8082111561159b57600081556001016115a5565b805161151b816121a4565b60008083601f8401126115d657600080fd5b5081356001600160401b038111156115ed57600080fd5b60208301915083602082028301111561160557600080fd5b9250929050565b600082601f83011261161d57600080fd5b813561163061162b826120a9565b612083565b81815260209384019390925082018360005b8381101561166e57813586016116588882611734565b8452506020928301929190910190600101611642565b5050505092915050565b600082601f83011261168957600080fd5b813561169761162b826120a9565b915081818352602084019350602081019050838560208402820111156116bc57600080fd5b60005b8381101561166e57816116d28882611783565b84525060209283019291909101906001016116bf565b805161151b816121bb565b60008083601f84011261170557600080fd5b5081356001600160401b0381111561171c57600080fd5b60208301915083600182028301111561160557600080fd5b600082601f83011261174557600080fd5b813561175361162b826120c9565b9150808252602083016020830185838301111561176f57600080fd5b61177a83828461214b565b50505092915050565b803561151b816121c4565b6000602082840312156117a057600080fd5b60006117ac84846115b9565b949350505050565b6000806000604084860312156117c957600080fd5b83356001600160401b038111156117df57600080fd5b6117eb868287016115c4565b935093505060206117fe86828701611783565b9150509250925092565b60008060006060848603121561181d57600080fd5b83356001600160401b0381111561183357600080fd5b61183f8682870161160c565b93505060208401356001600160401b0381111561185b57600080fd5b6118678682870161160c565b92505060406117fe86828701611783565b6000806000806080858703121561188e57600080fd5b84356001600160401b038111156118a457600080fd5b6118b08782880161160c565b94505060208501356001600160401b038111156118cc57600080fd5b6118d88782880161160c565b93505060406118e987828801611783565b92505060608501356001600160401b0381111561190557600080fd5b61191187828801611734565b91505092959194509250565b60006020828403121561192f57600080fd5b81356001600160401b0381111561194557600080fd5b6117ac84828501611678565b6000806040838503121561196457600080fd5b82356001600160401b0381111561197a57600080fd5b61198685828601611678565b92505060206109b985828601611783565b6000602082840312156119a957600080fd5b60006117ac84846116e8565b6000806000806000606086880312156119cd57600080fd5b85356001600160401b038111156119e357600080fd5b6119ef888289016116f3565b955095505060208601356001600160401b03811115611a0d57600080fd5b611a19888289016116f3565b93509350506040611a2c88828901611783565b9150509295509295909350565b60008060008060008060006080888a031215611a5457600080fd5b87356001600160401b03811115611a6a57600080fd5b611a768a828b016116f3565b975097505060208801356001600160401b03811115611a9457600080fd5b611aa08a828b016116f3565b95509550506040611ab38a828b01611783565b93505060608801356001600160401b03811115611acf57600080fd5b611adb8a828b016116f3565b925092505092959891949750929550565b60008060408385031215611aff57600080fd5b82356001600160401b03811115611b1557600080fd5b61198685828601611734565b600060208284031215611b3357600080fd5b60006117ac8484611783565b600080600060408486031215611b5457600080fd5b6000611b608686611783565b93505060208401356001600160401b03811115611b7c57600080fd5b611b88868287016116f3565b92509250509250925092565b60008060408385031215611ba757600080fd5b60006119868585611783565b6000611bbf8383611ccb565b9392505050565b611bcf8161212a565b82525050565b611bcf81612108565b611bcf611bea82612108565b612183565b6000611bfa826120f6565b611c0481856120fa565b935083602082028501611c16856120f0565b8060005b85811015611c505784840389528151611c338582611bb3565b9450611c3e836120f0565b60209a909a0199925050600101611c1a565b5091979650505050505050565b611bcf816109e2565b611bcf611c72826109e2565b6109e2565b611bcf81612135565b6000611c8c83856120fa565b9350611c9983858461214b565b611ca283612194565b9093019392505050565b6000611cb88385612103565b9350611cc583858461214b565b50500190565b6000611cd6826120f6565b611ce081856120fa565b9350611cf0818560208601612157565b611ca281612194565b6000611d04826120f6565b611d0e8185612103565b9350611d1e818560208601612157565b9290920192915050565b6000611d35601c83612103565b7f19457468657265756d205369676e6564204d6573736167653a0a3332000000008152601c0192915050565b6000611d6e6011836120fa565b70494e56414c49445f5349474e415455524560781b815260200192915050565b6000611d9b601d836120fa565b7f5245534f4c5645525f44455441434845445f46524f4d5f444f4d41494e000000815260200192915050565b6000611dd4601f836120fa565b7f53454e4445525f49535f4e4f545f415050524f5645445f4f525f4f574e455200815260200192915050565b6000611e0d6014836120fa565b7329a2a72222a92fa4a9afa727aa2fa6a4a72a22a960611b815260200192915050565b611bcf81612124565b6000611e458286611c66565b602082019150611e558285611bde565b601482019150611e658284611c66565b506020019392505050565b60006117ac828486611cac565b6000611bbf8284611cf9565b6000611e9482611d28565b9150611ea08284611c66565b50602001919050565b6020810161151b8284611bd5565b6020810161151b8284611bc6565b60408101611ed38285611bc6565b611bbf6020830184611c5d565b60408101611ed38285611bd5565b60208082528101611bbf8184611bef565b60408082528101611f108185611bef565b905081810360208301526117ac8184611bef565b60608082528101611f358186611bef565b90508181036020830152611f498185611bef565b90506117ac6040830184611c5d565b60808101611f668287611c5d565b611f736020830186611e30565b611f806040830185611c5d565b611f8d6060830184611c5d565b95945050505050565b60608082528101611fa8818789611c80565b90508181036020830152611fbd818587611c80565b9050611fcc6040830184611c5d565b9695505050505050565b60208082528101611bbf8184611ccb565b60408082528101611ff88185611ccb565b905081810360208301526117ac8184611ccb565b6020808252810161151b81611d61565b6020808252810161151b81611d8e565b6020808252810161151b81611dc7565b6020808252810161151b81611e00565b6020810161151b8284611c5d565b604081016120688285611c5d565b611bbf6020830184611c77565b60408101611ed38285611c5d565b6040518181016001600160401b03811182821017156120a157600080fd5b604052919050565b60006001600160401b038211156120bf57600080fd5b5060209081020190565b60006001600160401b038211156120df57600080fd5b506020601f91909101601f19160190565b60200190565b5190565b90815260200190565b919050565b600061151b82612118565b151590565b6001600160a01b031690565b60ff1690565b600061151b82612140565b600061151b826109e2565b600061151b82612108565b82818337506000910152565b60005b8381101561217257818101518382015260200161215a565b83811115610aea5750506000910152565b600061151b82600061151b8261219e565b601f01601f191690565b60601b90565b6121ad81612108565b81146121b857600080fd5b50565b6121ad81612113565b6121ad816109e256fea365627a7a723158207a1d8dfd286d14fcafd1812a4c44813691ac746a5a23fa711ac5551c9509654d6c6578706572696d656e74616cf564736f6c634300050c0040"; +const isSuperArgs = (xs) => xs.length > 1; +class Resolver__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(registry, mintingController, overrides) { + return super.getDeployTransaction(registry, mintingController, overrides || {}); + } + deploy(registry, mintingController, overrides) { + return super.deploy(registry, mintingController, overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.Resolver__factory = Resolver__factory; +Resolver__factory.bytecode = _bytecode; +Resolver__factory.abi = _abi; diff --git a/dist/types/factories/dot-crypto/contracts/controllers/DomainZoneController__factory.d.ts b/dist/types/factories/dot-crypto/contracts/controllers/DomainZoneController__factory.d.ts new file mode 100644 index 00000000..93afb65b --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/controllers/DomainZoneController__factory.d.ts @@ -0,0 +1,268 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, AddressLike, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../../common"; +import type { DomainZoneController, DomainZoneControllerInterface } from "../../../../dot-crypto/contracts/controllers/DomainZoneController"; +declare type DomainZoneControllerConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class DomainZoneController__factory extends ContractFactory { + constructor(...args: DomainZoneControllerConstructorParams); + getDeployTransaction(registry: AddressLike, accounts: AddressLike[], overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(registry: AddressLike, accounts: AddressLike[], overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): DomainZoneController__factory; + static readonly bytecode = "0x60806040523480156200001157600080fd5b50604051620016ec380380620016ec8339810160408190526200003491620002d4565b62000048336001600160e01b03620000a716565b600280546001600160a01b0319166001600160a01b03841617905560005b81518110156200009e57620000958282815181106200008157fe5b6020026020010151620000f960201b60201c565b60010162000066565b50505062000487565b620000c28160006200014b60201b6200099e1790919060201c565b6040516001600160a01b038216907f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129990600090a250565b620001148160016200014b60201b6200099e1790919060201c565b6040516001600160a01b038216907fee1504a83b6d4a361f4c1dc78ab59bfa30d6a3b6612c403e86bb01ef2984295f90600090a250565b6200016082826001600160e01b03620001c816565b15620001a3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200019a90620003c7565b60405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b60006001600160a01b0382166200020d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200019a90620003d9565b506001600160a01b03811660009081526020839052604090205460ff165b92915050565b80516200022b8162000462565b600082601f8301126200025057600080fd5b815162000267620002618262000412565b620003eb565b915081818352602084019350602081019050838560208402820111156200028d57600080fd5b60005b83811015620002bd5781620002a6888262000231565b845250602092830192919091019060010162000290565b5050505092915050565b80516200022b816200047c565b60008060408385031215620002e857600080fd5b6000620002f68585620002c7565b92505060208301516001600160401b038111156200031357600080fd5b62000321858286016200023e565b9150509250929050565b60006200033a601f8362000433565b7f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500815260200192915050565b60006200037560228362000433565b7f526f6c65733a206163636f756e7420697320746865207a65726f20616464726581527f7373000000000000000000000000000000000000000000000000000000000000602082015260400192915050565b602080825281016200022b816200032b565b602080825281016200022b8162000366565b6040518181016001600160401b03811182821017156200040a57600080fd5b604052919050565b60006001600160401b038211156200042957600080fd5b5060209081020190565b90815260200190565b60006200022b8262000456565b60006200022b826200043c565b6001600160a01b031690565b6200046d816200043c565b81146200047957600080fd5b50565b6200046d8162000449565b61125580620004976000396000f3fe608060405234801561001057600080fd5b50600436106100b45760003560e01c8063841cb28e11610071578063841cb28e14610138578063bb5f747b1461014b578063ce92b33e1461015e578063d6cd947314610171578063f6e491aa14610179578063f8a6c3d61461018c576100b4565b806310154bad146100b95780632392c189146100ce578063291d9549146100e15780633af32abf146100f45780634c5a628c1461011d5780637362d9c814610125575b600080fd5b6100cc6100c7366004610b89565b61019f565b005b6100cc6100dc366004610bcd565b6101d9565b6100cc6100ef366004610b89565b610266565b610107610102366004610b89565b610294565b6040516101149190611070565b60405180910390f35b6100cc6102ad565b6100cc610133366004610b89565b6102b8565b6100cc610146366004610c07565b6102e6565b610107610159366004610b89565b61065c565b6100cc61016c366004610cf9565b61066e565b6100cc61077f565b6100cc610187366004610cc4565b610788565b6100cc61019a366004610cc4565b6107e1565b6101a83361065c565b6101cd5760405162461bcd60e51b81526004016101c4906110bf565b60405180910390fd5b6101d681610836565b50565b6101e233610294565b6101fe5760405162461bcd60e51b81526004016101c4906110cf565b600254604051632392c18960e01b81526001600160a01b0390911690632392c189906102309085908590600401610feb565b600060405180830381600087803b15801561024a57600080fd5b505af115801561025e573d6000803e3d6000fd5b505050505050565b61026f3361065c565b61028b5760405162461bcd60e51b81526004016101c4906110bf565b6101d68161087e565b60006102a760018363ffffffff6108c616565b92915050565b6102b63361090e565b565b6102c13361065c565b6102dd5760405162461bcd60e51b81526004016101c4906110bf565b6101d681610956565b6102ef33610294565b61030b5760405162461bcd60e51b81526004016101c4906110cf565b60025460405163b3f9e4cb60e01b81526000916001600160a01b03169063b3f9e4cb9061033c9088906004016110df565b60206040518083038186803b15801561035457600080fd5b505afa158015610368573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061038c9190810190610baf565b60025460405163345b169960e11b81529192506000916001600160a01b03909116906368b62d32906103c490899089906004016110ed565b60206040518083038186803b1580156103dc57600080fd5b505afa1580156103f0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506104149190810190610d75565b8451909150156105b357600254604051636c69e63760e11b81526001600160a01b039091169063d8d3cc6e906104529030908a908a90600401611006565b600060405180830381600087803b15801561046c57600080fd5b505af1158015610480573d6000803e3d6000fd5b5050600254604051632392c18960e01b81526001600160a01b039091169250632392c18991506104b69085908590600401610feb565b600060405180830381600087803b1580156104d057600080fd5b505af11580156104e4573d6000803e3d6000fd5b50506040516376094f7560e11b81526001600160a01b038516925063ec129eea91506105189087908790869060040161103c565b600060405180830381600087803b15801561053257600080fd5b505af1158015610546573d6000803e3d6000fd5b505060025460405163559dc3ff60e11b81526001600160a01b03909116925063ab3b87fe915061057c908a908590600401610feb565b600060405180830381600087803b15801561059657600080fd5b505af11580156105aa573d6000803e3d6000fd5b5050505061061a565b600254604051636c69e63760e11b81526001600160a01b039091169063d8d3cc6e906105e7908a908a908a90600401611006565b600060405180830381600087803b15801561060157600080fd5b505af1158015610615573d6000803e3d6000fd5b505050505b85817f5653f60014b57c7e76e4b4be42e724badf242bc2918de8c398c2c3ab542dea388760405161064b919061107e565b60405180910390a350505050505050565b60006102a7818363ffffffff6108c616565b61067733610294565b6106935760405162461bcd60e51b81526004016101c4906110cf565b60025460405163b3f9e4cb60e01b81526000916001600160a01b03169063b3f9e4cb906106c49085906004016110df565b60206040518083038186803b1580156106dc57600080fd5b505afa1580156106f0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506107149190810190610baf565b604051636749599f60e11b81529091506001600160a01b0382169063ce92b33e906107479087908790879060040161103c565b600060405180830381600087803b15801561076157600080fd5b505af1158015610775573d6000803e3d6000fd5b5050505050505050565b6102b63361087e565b6107913361065c565b6107ad5760405162461bcd60e51b81526004016101c4906110bf565b60005b81518110156107dd576107d58282815181106107c857fe5b6020026020010151610836565b6001016107b0565b5050565b6107ea3361065c565b6108065760405162461bcd60e51b81526004016101c4906110bf565b60005b81518110156107dd5761082e82828151811061082157fe5b602002602001015161087e565b600101610809565b61084760018263ffffffff61099e16565b6040516001600160a01b038216907fee1504a83b6d4a361f4c1dc78ab59bfa30d6a3b6612c403e86bb01ef2984295f90600090a250565b61088f60018263ffffffff6109ea16565b6040516001600160a01b038216907f270d9b30cf5b0793bbfd54c9d5b94aeb49462b8148399000265144a8722da6b690600090a250565b60006001600160a01b0382166108ee5760405162461bcd60e51b81526004016101c4906110af565b506001600160a01b03166000908152602091909152604090205460ff1690565b61091f60008263ffffffff6109ea16565b6040516001600160a01b038216907f0a8eb35e5ca14b3d6f28e4abf2f128dbab231a58b56e89beb5d636115001e16590600090a250565b61096760008263ffffffff61099e16565b6040516001600160a01b038216907f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129990600090a250565b6109a882826108c6565b156109c55760405162461bcd60e51b81526004016101c49061108f565b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b6109f482826108c6565b610a105760405162461bcd60e51b81526004016101c49061109f565b6001600160a01b0316600090815260209190915260409020805460ff19169055565b80356102a7816111f5565b80516102a7816111f5565b600082601f830112610a5957600080fd5b8135610a6c610a6782611134565b61110d565b91508181835260208401935060208101905083856020840282011115610a9157600080fd5b60005b83811015610abd5781610aa78882610a32565b8452506020928301929190910190600101610a94565b5050505092915050565b600082601f830112610ad857600080fd5b8135610ae6610a6782611134565b81815260209384019390925082018360005b83811015610abd5781358601610b0e8882610b24565b8452506020928301929190910190600101610af8565b600082601f830112610b3557600080fd5b8135610b43610a6782611155565b91508082526020830160208301858383011115610b5f57600080fd5b610b6a8382846111af565b50505092915050565b80356102a781611209565b80516102a781611209565b600060208284031215610b9b57600080fd5b6000610ba78484610a32565b949350505050565b600060208284031215610bc157600080fd5b6000610ba78484610a3d565b60008060408385031215610be057600080fd5b6000610bec8585610a32565b9250506020610bfd85828601610b73565b9150509250929050565b600080600080600060a08688031215610c1f57600080fd5b6000610c2b8888610a32565b9550506020610c3c88828901610b73565b945050604086013567ffffffffffffffff811115610c5957600080fd5b610c6588828901610b24565b935050606086013567ffffffffffffffff811115610c8257600080fd5b610c8e88828901610ac7565b925050608086013567ffffffffffffffff811115610cab57600080fd5b610cb788828901610ac7565b9150509295509295909350565b600060208284031215610cd657600080fd5b813567ffffffffffffffff811115610ced57600080fd5b610ba784828501610a48565b600080600060608486031215610d0e57600080fd5b833567ffffffffffffffff811115610d2557600080fd5b610d3186828701610ac7565b935050602084013567ffffffffffffffff811115610d4e57600080fd5b610d5a86828701610ac7565b9250506040610d6b86828701610b73565b9150509250925092565b600060208284031215610d8757600080fd5b6000610ba78484610b7e565b6000610d9f8383610e2c565b9392505050565b610daf81611190565b82525050565b6000610dc082611183565b610dca8185611187565b935083602082028501610ddc8561117d565b8060005b85811015610e165784840389528151610df98582610d93565b9450610e048361117d565b60209a909a0199925050600101610de0565b5091979650505050505050565b610daf8161119b565b6000610e3782611183565b610e418185611187565b9350610e518185602086016111bb565b610e5a816111eb565b9093019392505050565b6000610e71601f83611187565b7f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500815260200192915050565b6000610eaa602183611187565b7f526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c8152606560f81b602082015260400192915050565b6000610eed602283611187565b7f526f6c65733a206163636f756e7420697320746865207a65726f206164647265815261737360f01b602082015260400192915050565b6000610f31604083611187565b7f57686974656c69737441646d696e526f6c653a2063616c6c657220646f65732081527f6e6f742068617665207468652057686974656c69737441646d696e20726f6c65602082015260400192915050565b6000610f90603a83611187565b7f57686974656c6973746564526f6c653a2063616c6c657220646f6573206e6f7481527f2068617665207468652057686974656c697374656420726f6c65000000000000602082015260400192915050565b610daf816111ac565b60408101610ff98285610da6565b610d9f6020830184610fe2565b606081016110148286610da6565b6110216020830185610fe2565b81810360408301526110338184610e2c565b95945050505050565b6060808252810161104d8186610db5565b905081810360208301526110618185610db5565b9050610ba76040830184610fe2565b602081016102a78284610e23565b60208082528101610d9f8184610e2c565b602080825281016102a781610e64565b602080825281016102a781610e9d565b602080825281016102a781610ee0565b602080825281016102a781610f24565b602080825281016102a781610f83565b602081016102a78284610fe2565b604081016110fb8285610fe2565b8181036020830152610ba78184610e2c565b60405181810167ffffffffffffffff8111828210171561112c57600080fd5b604052919050565b600067ffffffffffffffff82111561114b57600080fd5b5060209081020190565b600067ffffffffffffffff82111561116c57600080fd5b506020601f91909101601f19160190565b60200190565b5190565b90815260200190565b60006102a7826111a0565b151590565b6001600160a01b031690565b90565b82818337506000910152565b60005b838110156111d65781810151838201526020016111be565b838111156111e5576000848401525b50505050565b601f01601f191690565b6111fe81611190565b81146101d657600080fd5b6111fe816111ac56fea365627a7a723158201133b4cf3b641c36dd1661fa1ca1c9f7a2bf9049abd1a6f0c66110188587e4996c6578706572696d656e74616cf564736f6c634300050c0040"; + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "contract ICNSRegistry"; + readonly name: "registry"; + readonly type: "address"; + }, { + readonly internalType: "address[]"; + readonly name: "accounts"; + readonly type: "address[]"; + }]; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "constructor"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly indexed: true; + readonly internalType: "uint256"; + readonly name: "parentTokenId"; + readonly type: "uint256"; + }, { + readonly indexed: false; + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }]; + readonly name: "MintChild"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "WhitelistAdminAdded"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "WhitelistAdminRemoved"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "WhitelistedAdded"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "WhitelistedRemoved"; + readonly type: "event"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "addWhitelistAdmin"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "addWhitelisted"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address[]"; + readonly name: "accounts"; + readonly type: "address[]"; + }]; + readonly name: "bulkAddWhitelisted"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address[]"; + readonly name: "accounts"; + readonly type: "address[]"; + }]; + readonly name: "bulkRemoveWhitelisted"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "isWhitelistAdmin"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "isWhitelisted"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }, { + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }]; + readonly name: "mintChild"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "removeWhitelisted"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly []; + readonly name: "renounceWhitelistAdmin"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly []; + readonly name: "renounceWhitelisted"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "resolveTo"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "setMany"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): DomainZoneControllerInterface; + static connect(address: string, runner?: ContractRunner | null): DomainZoneController; +} +export {}; +//# sourceMappingURL=DomainZoneController__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/controllers/DomainZoneController__factory.d.ts.map b/dist/types/factories/dot-crypto/contracts/controllers/DomainZoneController__factory.d.ts.map new file mode 100644 index 00000000..99faef52 --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/controllers/DomainZoneController__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"DomainZoneController__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/dot-crypto/contracts/controllers/DomainZoneController__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,MAAM,EACN,WAAW,EACX,yBAAyB,EACzB,cAAc,EACf,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,KAAK,EACV,oBAAoB,EACpB,6BAA6B,EAC9B,MAAM,mEAAmE,CAAC;AA6T3E,aAAK,qCAAqC,GACtC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,6BAA8B,SAAQ,eAAe;gBACpD,GAAG,IAAI,EAAE,qCAAqC;IAQjD,oBAAoB,CAC3B,QAAQ,EAAE,WAAW,EACrB,QAAQ,EAAE,WAAW,EAAE,EACvB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CACb,QAAQ,EAAE,WAAW,EACrB,QAAQ,EAAE,WAAW,EAAE,EACvB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAItB,2BAA2B;;IAIjD,OAAO,CACd,MAAM,EAAE,cAAc,GAAG,IAAI,GAC5B,6BAA6B;IAIhC,MAAM,CAAC,QAAQ,CAAC,QAAQ,g+WAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,6BAA6B;IAGvD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,oBAAoB;CAOxB"} \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/controllers/DomainZoneController__factory.js b/dist/types/factories/dot-crypto/contracts/controllers/DomainZoneController__factory.js new file mode 100644 index 00000000..3867d1d8 --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/controllers/DomainZoneController__factory.js @@ -0,0 +1,345 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.DomainZoneController__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "contract ICNSRegistry", + name: "registry", + type: "address", + }, + { + internalType: "address[]", + name: "accounts", + type: "address[]", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + indexed: true, + internalType: "uint256", + name: "parentTokenId", + type: "uint256", + }, + { + indexed: false, + internalType: "string", + name: "label", + type: "string", + }, + ], + name: "MintChild", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "WhitelistAdminAdded", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "WhitelistAdminRemoved", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "WhitelistedAdded", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "WhitelistedRemoved", + type: "event", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "addWhitelistAdmin", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "addWhitelisted", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address[]", + name: "accounts", + type: "address[]", + }, + ], + name: "bulkAddWhitelisted", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address[]", + name: "accounts", + type: "address[]", + }, + ], + name: "bulkRemoveWhitelisted", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "isWhitelistAdmin", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "isWhitelisted", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + ], + name: "mintChild", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "removeWhitelisted", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [], + name: "renounceWhitelistAdmin", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [], + name: "renounceWhitelisted", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "resolveTo", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "setMany", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, +]; +const _bytecode = "0x60806040523480156200001157600080fd5b50604051620016ec380380620016ec8339810160408190526200003491620002d4565b62000048336001600160e01b03620000a716565b600280546001600160a01b0319166001600160a01b03841617905560005b81518110156200009e57620000958282815181106200008157fe5b6020026020010151620000f960201b60201c565b60010162000066565b50505062000487565b620000c28160006200014b60201b6200099e1790919060201c565b6040516001600160a01b038216907f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129990600090a250565b620001148160016200014b60201b6200099e1790919060201c565b6040516001600160a01b038216907fee1504a83b6d4a361f4c1dc78ab59bfa30d6a3b6612c403e86bb01ef2984295f90600090a250565b6200016082826001600160e01b03620001c816565b15620001a3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200019a90620003c7565b60405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b60006001600160a01b0382166200020d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200019a90620003d9565b506001600160a01b03811660009081526020839052604090205460ff165b92915050565b80516200022b8162000462565b600082601f8301126200025057600080fd5b815162000267620002618262000412565b620003eb565b915081818352602084019350602081019050838560208402820111156200028d57600080fd5b60005b83811015620002bd5781620002a6888262000231565b845250602092830192919091019060010162000290565b5050505092915050565b80516200022b816200047c565b60008060408385031215620002e857600080fd5b6000620002f68585620002c7565b92505060208301516001600160401b038111156200031357600080fd5b62000321858286016200023e565b9150509250929050565b60006200033a601f8362000433565b7f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500815260200192915050565b60006200037560228362000433565b7f526f6c65733a206163636f756e7420697320746865207a65726f20616464726581527f7373000000000000000000000000000000000000000000000000000000000000602082015260400192915050565b602080825281016200022b816200032b565b602080825281016200022b8162000366565b6040518181016001600160401b03811182821017156200040a57600080fd5b604052919050565b60006001600160401b038211156200042957600080fd5b5060209081020190565b90815260200190565b60006200022b8262000456565b60006200022b826200043c565b6001600160a01b031690565b6200046d816200043c565b81146200047957600080fd5b50565b6200046d8162000449565b61125580620004976000396000f3fe608060405234801561001057600080fd5b50600436106100b45760003560e01c8063841cb28e11610071578063841cb28e14610138578063bb5f747b1461014b578063ce92b33e1461015e578063d6cd947314610171578063f6e491aa14610179578063f8a6c3d61461018c576100b4565b806310154bad146100b95780632392c189146100ce578063291d9549146100e15780633af32abf146100f45780634c5a628c1461011d5780637362d9c814610125575b600080fd5b6100cc6100c7366004610b89565b61019f565b005b6100cc6100dc366004610bcd565b6101d9565b6100cc6100ef366004610b89565b610266565b610107610102366004610b89565b610294565b6040516101149190611070565b60405180910390f35b6100cc6102ad565b6100cc610133366004610b89565b6102b8565b6100cc610146366004610c07565b6102e6565b610107610159366004610b89565b61065c565b6100cc61016c366004610cf9565b61066e565b6100cc61077f565b6100cc610187366004610cc4565b610788565b6100cc61019a366004610cc4565b6107e1565b6101a83361065c565b6101cd5760405162461bcd60e51b81526004016101c4906110bf565b60405180910390fd5b6101d681610836565b50565b6101e233610294565b6101fe5760405162461bcd60e51b81526004016101c4906110cf565b600254604051632392c18960e01b81526001600160a01b0390911690632392c189906102309085908590600401610feb565b600060405180830381600087803b15801561024a57600080fd5b505af115801561025e573d6000803e3d6000fd5b505050505050565b61026f3361065c565b61028b5760405162461bcd60e51b81526004016101c4906110bf565b6101d68161087e565b60006102a760018363ffffffff6108c616565b92915050565b6102b63361090e565b565b6102c13361065c565b6102dd5760405162461bcd60e51b81526004016101c4906110bf565b6101d681610956565b6102ef33610294565b61030b5760405162461bcd60e51b81526004016101c4906110cf565b60025460405163b3f9e4cb60e01b81526000916001600160a01b03169063b3f9e4cb9061033c9088906004016110df565b60206040518083038186803b15801561035457600080fd5b505afa158015610368573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061038c9190810190610baf565b60025460405163345b169960e11b81529192506000916001600160a01b03909116906368b62d32906103c490899089906004016110ed565b60206040518083038186803b1580156103dc57600080fd5b505afa1580156103f0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506104149190810190610d75565b8451909150156105b357600254604051636c69e63760e11b81526001600160a01b039091169063d8d3cc6e906104529030908a908a90600401611006565b600060405180830381600087803b15801561046c57600080fd5b505af1158015610480573d6000803e3d6000fd5b5050600254604051632392c18960e01b81526001600160a01b039091169250632392c18991506104b69085908590600401610feb565b600060405180830381600087803b1580156104d057600080fd5b505af11580156104e4573d6000803e3d6000fd5b50506040516376094f7560e11b81526001600160a01b038516925063ec129eea91506105189087908790869060040161103c565b600060405180830381600087803b15801561053257600080fd5b505af1158015610546573d6000803e3d6000fd5b505060025460405163559dc3ff60e11b81526001600160a01b03909116925063ab3b87fe915061057c908a908590600401610feb565b600060405180830381600087803b15801561059657600080fd5b505af11580156105aa573d6000803e3d6000fd5b5050505061061a565b600254604051636c69e63760e11b81526001600160a01b039091169063d8d3cc6e906105e7908a908a908a90600401611006565b600060405180830381600087803b15801561060157600080fd5b505af1158015610615573d6000803e3d6000fd5b505050505b85817f5653f60014b57c7e76e4b4be42e724badf242bc2918de8c398c2c3ab542dea388760405161064b919061107e565b60405180910390a350505050505050565b60006102a7818363ffffffff6108c616565b61067733610294565b6106935760405162461bcd60e51b81526004016101c4906110cf565b60025460405163b3f9e4cb60e01b81526000916001600160a01b03169063b3f9e4cb906106c49085906004016110df565b60206040518083038186803b1580156106dc57600080fd5b505afa1580156106f0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506107149190810190610baf565b604051636749599f60e11b81529091506001600160a01b0382169063ce92b33e906107479087908790879060040161103c565b600060405180830381600087803b15801561076157600080fd5b505af1158015610775573d6000803e3d6000fd5b5050505050505050565b6102b63361087e565b6107913361065c565b6107ad5760405162461bcd60e51b81526004016101c4906110bf565b60005b81518110156107dd576107d58282815181106107c857fe5b6020026020010151610836565b6001016107b0565b5050565b6107ea3361065c565b6108065760405162461bcd60e51b81526004016101c4906110bf565b60005b81518110156107dd5761082e82828151811061082157fe5b602002602001015161087e565b600101610809565b61084760018263ffffffff61099e16565b6040516001600160a01b038216907fee1504a83b6d4a361f4c1dc78ab59bfa30d6a3b6612c403e86bb01ef2984295f90600090a250565b61088f60018263ffffffff6109ea16565b6040516001600160a01b038216907f270d9b30cf5b0793bbfd54c9d5b94aeb49462b8148399000265144a8722da6b690600090a250565b60006001600160a01b0382166108ee5760405162461bcd60e51b81526004016101c4906110af565b506001600160a01b03166000908152602091909152604090205460ff1690565b61091f60008263ffffffff6109ea16565b6040516001600160a01b038216907f0a8eb35e5ca14b3d6f28e4abf2f128dbab231a58b56e89beb5d636115001e16590600090a250565b61096760008263ffffffff61099e16565b6040516001600160a01b038216907f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129990600090a250565b6109a882826108c6565b156109c55760405162461bcd60e51b81526004016101c49061108f565b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b6109f482826108c6565b610a105760405162461bcd60e51b81526004016101c49061109f565b6001600160a01b0316600090815260209190915260409020805460ff19169055565b80356102a7816111f5565b80516102a7816111f5565b600082601f830112610a5957600080fd5b8135610a6c610a6782611134565b61110d565b91508181835260208401935060208101905083856020840282011115610a9157600080fd5b60005b83811015610abd5781610aa78882610a32565b8452506020928301929190910190600101610a94565b5050505092915050565b600082601f830112610ad857600080fd5b8135610ae6610a6782611134565b81815260209384019390925082018360005b83811015610abd5781358601610b0e8882610b24565b8452506020928301929190910190600101610af8565b600082601f830112610b3557600080fd5b8135610b43610a6782611155565b91508082526020830160208301858383011115610b5f57600080fd5b610b6a8382846111af565b50505092915050565b80356102a781611209565b80516102a781611209565b600060208284031215610b9b57600080fd5b6000610ba78484610a32565b949350505050565b600060208284031215610bc157600080fd5b6000610ba78484610a3d565b60008060408385031215610be057600080fd5b6000610bec8585610a32565b9250506020610bfd85828601610b73565b9150509250929050565b600080600080600060a08688031215610c1f57600080fd5b6000610c2b8888610a32565b9550506020610c3c88828901610b73565b945050604086013567ffffffffffffffff811115610c5957600080fd5b610c6588828901610b24565b935050606086013567ffffffffffffffff811115610c8257600080fd5b610c8e88828901610ac7565b925050608086013567ffffffffffffffff811115610cab57600080fd5b610cb788828901610ac7565b9150509295509295909350565b600060208284031215610cd657600080fd5b813567ffffffffffffffff811115610ced57600080fd5b610ba784828501610a48565b600080600060608486031215610d0e57600080fd5b833567ffffffffffffffff811115610d2557600080fd5b610d3186828701610ac7565b935050602084013567ffffffffffffffff811115610d4e57600080fd5b610d5a86828701610ac7565b9250506040610d6b86828701610b73565b9150509250925092565b600060208284031215610d8757600080fd5b6000610ba78484610b7e565b6000610d9f8383610e2c565b9392505050565b610daf81611190565b82525050565b6000610dc082611183565b610dca8185611187565b935083602082028501610ddc8561117d565b8060005b85811015610e165784840389528151610df98582610d93565b9450610e048361117d565b60209a909a0199925050600101610de0565b5091979650505050505050565b610daf8161119b565b6000610e3782611183565b610e418185611187565b9350610e518185602086016111bb565b610e5a816111eb565b9093019392505050565b6000610e71601f83611187565b7f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500815260200192915050565b6000610eaa602183611187565b7f526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c8152606560f81b602082015260400192915050565b6000610eed602283611187565b7f526f6c65733a206163636f756e7420697320746865207a65726f206164647265815261737360f01b602082015260400192915050565b6000610f31604083611187565b7f57686974656c69737441646d696e526f6c653a2063616c6c657220646f65732081527f6e6f742068617665207468652057686974656c69737441646d696e20726f6c65602082015260400192915050565b6000610f90603a83611187565b7f57686974656c6973746564526f6c653a2063616c6c657220646f6573206e6f7481527f2068617665207468652057686974656c697374656420726f6c65000000000000602082015260400192915050565b610daf816111ac565b60408101610ff98285610da6565b610d9f6020830184610fe2565b606081016110148286610da6565b6110216020830185610fe2565b81810360408301526110338184610e2c565b95945050505050565b6060808252810161104d8186610db5565b905081810360208301526110618185610db5565b9050610ba76040830184610fe2565b602081016102a78284610e23565b60208082528101610d9f8184610e2c565b602080825281016102a781610e64565b602080825281016102a781610e9d565b602080825281016102a781610ee0565b602080825281016102a781610f24565b602080825281016102a781610f83565b602081016102a78284610fe2565b604081016110fb8285610fe2565b8181036020830152610ba78184610e2c565b60405181810167ffffffffffffffff8111828210171561112c57600080fd5b604052919050565b600067ffffffffffffffff82111561114b57600080fd5b5060209081020190565b600067ffffffffffffffff82111561116c57600080fd5b506020601f91909101601f19160190565b60200190565b5190565b90815260200190565b60006102a7826111a0565b151590565b6001600160a01b031690565b90565b82818337506000910152565b60005b838110156111d65781810151838201526020016111be565b838111156111e5576000848401525b50505050565b601f01601f191690565b6111fe81611190565b81146101d657600080fd5b6111fe816111ac56fea365627a7a723158201133b4cf3b641c36dd1661fa1ca1c9f7a2bf9049abd1a6f0c66110188587e4996c6578706572696d656e74616cf564736f6c634300050c0040"; +const isSuperArgs = (xs) => xs.length > 1; +class DomainZoneController__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(registry, accounts, overrides) { + return super.getDeployTransaction(registry, accounts, overrides || {}); + } + deploy(registry, accounts, overrides) { + return super.deploy(registry, accounts, overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.DomainZoneController__factory = DomainZoneController__factory; +DomainZoneController__factory.bytecode = _bytecode; +DomainZoneController__factory.abi = _abi; diff --git a/dist/types/factories/dot-crypto/contracts/controllers/IMintingController__factory.d.ts b/dist/types/factories/dot-crypto/contracts/controllers/IMintingController__factory.d.ts new file mode 100644 index 00000000..9805bf62 --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/controllers/IMintingController__factory.d.ts @@ -0,0 +1,60 @@ +import { type ContractRunner } from "ethers"; +import type { IMintingController, IMintingControllerInterface } from "../../../../dot-crypto/contracts/controllers/IMintingController"; +export declare class IMintingController__factory { + static readonly abi: readonly [{ + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }]; + readonly name: "mintSLD"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }]; + readonly name: "safeMintSLD"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }, { + readonly internalType: "bytes"; + readonly name: "_data"; + readonly type: "bytes"; + }]; + readonly name: "safeMintSLD"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): IMintingControllerInterface; + static connect(address: string, runner?: ContractRunner | null): IMintingController; +} +//# sourceMappingURL=IMintingController__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/controllers/IMintingController__factory.d.ts.map b/dist/types/factories/dot-crypto/contracts/controllers/IMintingController__factory.d.ts.map new file mode 100644 index 00000000..ecf9e71f --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/controllers/IMintingController__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IMintingController__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/dot-crypto/contracts/controllers/IMintingController__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,kBAAkB,EAClB,2BAA2B,EAC5B,MAAM,iEAAiE,CAAC;AAsEzE,qBAAa,2BAA2B;IACtC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,2BAA2B;IAGrD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,kBAAkB;CAGtB"} \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/controllers/IMintingController__factory.js b/dist/types/factories/dot-crypto/contracts/controllers/IMintingController__factory.js new file mode 100644 index 00000000..6c457bf6 --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/controllers/IMintingController__factory.js @@ -0,0 +1,81 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IMintingController__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + constant: false, + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + ], + name: "mintSLD", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + ], + name: "safeMintSLD", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + { + internalType: "bytes", + name: "_data", + type: "bytes", + }, + ], + name: "safeMintSLD", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, +]; +class IMintingController__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IMintingController__factory = IMintingController__factory; +IMintingController__factory.abi = _abi; diff --git a/dist/types/factories/dot-crypto/contracts/controllers/ISignatureController__factory.d.ts b/dist/types/factories/dot-crypto/contracts/controllers/ISignatureController__factory.d.ts new file mode 100644 index 00000000..cbd3c1e8 --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/controllers/ISignatureController__factory.d.ts @@ -0,0 +1,268 @@ +import { type ContractRunner } from "ethers"; +import type { ISignatureController, ISignatureControllerInterface } from "../../../../dot-crypto/contracts/controllers/ISignatureController"; +export declare class ISignatureController__factory { + static readonly abi: readonly [{ + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "burnChildFor"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "burnFor"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "mintChildFor"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "nonceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "resolveToFor"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "safeTransferFromChildFor"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }, { + readonly internalType: "bytes"; + readonly name: "_data"; + readonly type: "bytes"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "safeTransferFromChildFor"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "_data"; + readonly type: "bytes"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "safeTransferFromFor"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "safeTransferFromFor"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "transferFromChildFor"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "transferFromFor"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): ISignatureControllerInterface; + static connect(address: string, runner?: ContractRunner | null): ISignatureController; +} +//# sourceMappingURL=ISignatureController__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/controllers/ISignatureController__factory.d.ts.map b/dist/types/factories/dot-crypto/contracts/controllers/ISignatureController__factory.d.ts.map new file mode 100644 index 00000000..a3172130 --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/controllers/ISignatureController__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ISignatureController__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/dot-crypto/contracts/controllers/ISignatureController__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,oBAAoB,EACpB,6BAA6B,EAC9B,MAAM,mEAAmE,CAAC;AA2U3E,qBAAa,6BAA6B;IACxC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,6BAA6B;IAGvD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,oBAAoB;CAOxB"} \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/controllers/ISignatureController__factory.js b/dist/types/factories/dot-crypto/contracts/controllers/ISignatureController__factory.js new file mode 100644 index 00000000..10c78e51 --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/controllers/ISignatureController__factory.js @@ -0,0 +1,342 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ISignatureController__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "burnChildFor", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "burnFor", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "mintChildFor", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "nonceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "resolveToFor", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "safeTransferFromChildFor", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + { + internalType: "bytes", + name: "_data", + type: "bytes", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "safeTransferFromChildFor", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "_data", + type: "bytes", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "safeTransferFromFor", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "safeTransferFromFor", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "transferFromChildFor", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "transferFromFor", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, +]; +class ISignatureController__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.ISignatureController__factory = ISignatureController__factory; +ISignatureController__factory.abi = _abi; diff --git a/dist/types/factories/dot-crypto/contracts/controllers/IURIPrefixController__factory.d.ts b/dist/types/factories/dot-crypto/contracts/controllers/IURIPrefixController__factory.d.ts new file mode 100644 index 00000000..9997858e --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/controllers/IURIPrefixController__factory.d.ts @@ -0,0 +1,20 @@ +import { type ContractRunner } from "ethers"; +import type { IURIPrefixController, IURIPrefixControllerInterface } from "../../../../dot-crypto/contracts/controllers/IURIPrefixController"; +export declare class IURIPrefixController__factory { + static readonly abi: readonly [{ + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "prefix"; + readonly type: "string"; + }]; + readonly name: "setTokenURIPrefix"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): IURIPrefixControllerInterface; + static connect(address: string, runner?: ContractRunner | null): IURIPrefixController; +} +//# sourceMappingURL=IURIPrefixController__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/controllers/IURIPrefixController__factory.d.ts.map b/dist/types/factories/dot-crypto/contracts/controllers/IURIPrefixController__factory.d.ts.map new file mode 100644 index 00000000..5197dfe3 --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/controllers/IURIPrefixController__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"IURIPrefixController__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/dot-crypto/contracts/controllers/IURIPrefixController__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,oBAAoB,EACpB,6BAA6B,EAC9B,MAAM,mEAAmE,CAAC;AAoB3E,qBAAa,6BAA6B;IACxC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,6BAA6B;IAGvD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,oBAAoB;CAOxB"} \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/controllers/IURIPrefixController__factory.js b/dist/types/factories/dot-crypto/contracts/controllers/IURIPrefixController__factory.js new file mode 100644 index 00000000..d77be0db --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/controllers/IURIPrefixController__factory.js @@ -0,0 +1,31 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IURIPrefixController__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + constant: false, + inputs: [ + { + internalType: "string", + name: "prefix", + type: "string", + }, + ], + name: "setTokenURIPrefix", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, +]; +class IURIPrefixController__factory { + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.IURIPrefixController__factory = IURIPrefixController__factory; +IURIPrefixController__factory.abi = _abi; diff --git a/dist/types/factories/dot-crypto/contracts/controllers/MintingController__factory.d.ts b/dist/types/factories/dot-crypto/contracts/controllers/MintingController__factory.d.ts new file mode 100644 index 00000000..4e3d02b8 --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/controllers/MintingController__factory.d.ts @@ -0,0 +1,216 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, AddressLike, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../../common"; +import type { MintingController, MintingControllerInterface } from "../../../../dot-crypto/contracts/controllers/MintingController"; +declare type MintingControllerConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class MintingController__factory extends ContractFactory { + constructor(...args: MintingControllerConstructorParams); + getDeployTransaction(registry: AddressLike, overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(registry: AddressLike, overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): MintingController__factory; + static readonly bytecode = "0x60806040523480156200001157600080fd5b50604051620015bd380380620015bd833981810160405260208110156200003757600080fd5b50516200004d336001600160e01b036200007316565b600180546001600160a01b0319166001600160a01b0392909216919091179055620001ef565b6200008e816000620000c560201b6200120c1790919060201c565b6040516001600160a01b038216907f6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f690600090a250565b620000da82826001600160e01b036200016c16565b156200014757604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b60006001600160a01b038216620001cf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260228152602001806200159b6022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b61139c80620001ff6000396000f3fe608060405234801561001057600080fd5b506004361061009e5760003560e01c806398650275116100665780639865027514610305578063aa271e1a1461030d578063b2da297914610347578063be362e2e146103c5578063c36c2125146104fe5761009e565b80634c0b0ed2146100a35780637b103999146101595780637caf3ad81461017d5780638ad364f814610258578063983b2d56146102df575b600080fd5b610157600480360360408110156100b957600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156100e357600080fd5b8201836020820111156100f557600080fd5b803590602001918460018302840111600160201b8311171561011657600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506105bd945050505050565b005b61016161074c565b604080516001600160a01b039092168252519081900360200190f35b6101576004803603608081101561019357600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156101bd57600080fd5b8201836020820111156101cf57600080fd5b803590602001918460018302840111600160201b831117156101f057600080fd5b919390926001600160a01b0383351692604081019060200135600160201b81111561021a57600080fd5b82018360208201111561022c57600080fd5b803590602001918460018302840111600160201b8311171561024d57600080fd5b50909250905061075b565b6101576004803603606081101561026e57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561029857600080fd5b8201836020820111156102aa57600080fd5b803590602001918460018302840111600160201b831117156102cb57600080fd5b9193509150356001600160a01b0316610957565b610157600480360360208110156102f557600080fd5b50356001600160a01b0316610b2b565b610157610b7b565b6103336004803603602081101561032357600080fd5b50356001600160a01b0316610b86565b604080519115158252519081900360200190f35b6101576004803603604081101561035d57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561038757600080fd5b82018360208201111561039957600080fd5b803590602001918460018302840111600160201b831117156103ba57600080fd5b509092509050610b9e565b610157600480360360608110156103db57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561040557600080fd5b82018360208201111561041757600080fd5b803590602001918460018302840111600160201b8311171561043857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b81111561048a57600080fd5b82018360208201111561049c57600080fd5b803590602001918460018302840111600160201b831117156104bd57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610bf1945050505050565b6101576004803603606081101561051457600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561053e57600080fd5b82018360208201111561055057600080fd5b803590602001918460018302840111600160201b8311171561057157600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550505090356001600160a01b03169150610dec9050565b6105c633610b86565b6106015760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b039092169163b5466669918591849163ebf0c717916004808301926020929190829003018186803b15801561064f57600080fd5b505afa158015610663573d6000803e3d6000fd5b505050506040513d602081101561067957600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052606060448301908152875160648401528751889360840190602085019080838360005b838110156106e25781810151838201526020016106ca565b50505050905090810190601f16801561070f5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15801561073057600080fd5b505af1158015610744573d6000803e3d6000fd5b505050505050565b6001546001600160a01b031690565b6107cf8686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f89018190048102820181019092528781529250879150869081908401838280828437600092019190915250610bf192505050565b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691632525d06a91869184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b15801561082557600080fd5b505afa158015610839573d6000803e3d6000fd5b505050506040513d602081101561084f57600080fd5b5051604080516001600160e01b031960e085901b1681526004810183815260248201928352604482018d90528d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b1580156108bd57600080fd5b505afa1580156108d1573d6000803e3d6000fd5b505050506040513d60208110156108e757600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b15801561093757600080fd5b505af115801561094b573d6000803e3d6000fd5b50505050505050505050565b6109a58484848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250610bf1915050565b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691632525d06a91849184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b1580156109fb57600080fd5b505afa158015610a0f573d6000803e3d6000fd5b505050506040513d6020811015610a2557600080fd5b5051604080516001600160e01b031960e085901b1681526004810183815260248201928352604482018b90528b928b92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b158015610a9357600080fd5b505afa158015610aa7573d6000803e3d6000fd5b505050506040513d6020811015610abd57600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b158015610b0d57600080fd5b505af1158015610b21573d6000803e3d6000fd5b5050505050505050565b610b3433610b86565b610b6f5760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b610b7881611115565b50565b610b843361115d565b565b6000610b98818363ffffffff6111a516565b92915050565b610bec8383838080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250610bf1915050565b505050565b610bfa33610b86565b610c355760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691630467e014918691849163ebf0c717916004808301926020929190829003018186803b158015610c8357600080fd5b505afa158015610c97573d6000803e3d6000fd5b505050506040513d6020811015610cad57600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052608060448301908152885160848401528851899389939291606482019160a40190602087019080838360005b83811015610d1f578181015183820152602001610d07565b50505050905090810190601f168015610d4c5780820380516001836020036101000a031916815260200191505b50838103825284518152845160209182019186019080838360005b83811015610d7f578181015183820152602001610d67565b50505050905090810190601f168015610dac5780820380516001836020036101000a031916815260200191505b509650505050505050600060405180830381600087803b158015610dcf57600080fd5b505af1158015610de3573d6000803e3d6000fd5b50505050505050565b610df533610b86565b610e305760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b039092169163b5466669918691849163ebf0c717916004808301926020929190829003018186803b158015610e7e57600080fd5b505afa158015610e92573d6000803e3d6000fd5b505050506040513d6020811015610ea857600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052606060448301908152885160648401528851899360840190602085019080838360005b83811015610f11578181015183820152602001610ef9565b50505050905090810190601f168015610f3e5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015610f5f57600080fd5b505af1158015610f73573d6000803e3d6000fd5b50506001546040805163ebf0c71760e01b815290516001600160a01b039092169350632525d06a9250849184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b158015610fcd57600080fd5b505afa158015610fe1573d6000803e3d6000fd5b505050506040513d6020811015610ff757600080fd5b5051604080516001600160e01b031960e085901b16815260048101838152602482019283528a5160448301528a518b93919260640190602085019080838360005b83811015611050578181015183820152602001611038565b50505050905090810190601f16801561107d5780820380516001836020036101000a031916815260200191505b50935050505060206040518083038186803b15801561109b57600080fd5b505afa1580156110af573d6000803e3d6000fd5b505050506040513d60208110156110c557600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b158015610dcf57600080fd5b61112660008263ffffffff61120c16565b6040516001600160a01b038216907f6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f690600090a250565b61116e60008263ffffffff61128d16565b6040516001600160a01b038216907fe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb6669290600090a250565b60006001600160a01b0382166111ec5760405162461bcd60e51b81526004018080602001828103825260228152602001806113466022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b61121682826111a5565b15611268576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b61129782826111a5565b6112d25760405162461bcd60e51b81526004018080602001828103825260218152602001806113256021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe4d696e746572526f6c653a2063616c6c657220646f6573206e6f74206861766520746865204d696e74657220726f6c65526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f2061646472657373a265627a7a72315820c058d70355f7d37ff6b3b61cd850cc4a41893e30048389698c062148bf3d2ff464736f6c634300050c0032526f6c65733a206163636f756e7420697320746865207a65726f2061646472657373"; + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "contract CNSRegistry"; + readonly name: "registry"; + readonly type: "address"; + }]; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "constructor"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "MinterAdded"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "MinterRemoved"; + readonly type: "event"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "addMinter"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "isMinter"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }]; + readonly name: "mintSLD"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }, { + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }]; + readonly name: "mintSLDWithResolver"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly []; + readonly name: "registry"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly []; + readonly name: "renounceMinter"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }]; + readonly name: "safeMintSLD"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }, { + readonly internalType: "bytes"; + readonly name: "_data"; + readonly type: "bytes"; + }]; + readonly name: "safeMintSLD"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }, { + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }, { + readonly internalType: "bytes"; + readonly name: "_data"; + readonly type: "bytes"; + }]; + readonly name: "safeMintSLDWithResolver"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }, { + readonly internalType: "address"; + readonly name: "resolver"; + readonly type: "address"; + }]; + readonly name: "safeMintSLDWithResolver"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): MintingControllerInterface; + static connect(address: string, runner?: ContractRunner | null): MintingController; +} +export {}; +//# sourceMappingURL=MintingController__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/controllers/MintingController__factory.d.ts.map b/dist/types/factories/dot-crypto/contracts/controllers/MintingController__factory.d.ts.map new file mode 100644 index 00000000..083761ed --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/controllers/MintingController__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"MintingController__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/dot-crypto/contracts/controllers/MintingController__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,MAAM,EACN,WAAW,EACX,yBAAyB,EACzB,cAAc,EACf,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,KAAK,EACV,iBAAiB,EACjB,0BAA0B,EAC3B,MAAM,gEAAgE,CAAC;AA2PxE,aAAK,kCAAkC,GACnC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,0BAA2B,SAAQ,eAAe;gBACjD,GAAG,IAAI,EAAE,kCAAkC;IAQ9C,oBAAoB,CAC3B,QAAQ,EAAE,WAAW,EACrB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CACb,QAAQ,EAAE,WAAW,EACrB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAItB,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,0BAA0B;IAI3E,MAAM,CAAC,QAAQ,CAAC,QAAQ,k4VAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,0BAA0B;IAGpD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,iBAAiB;CAGrB"} \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/controllers/MintingController__factory.js b/dist/types/factories/dot-crypto/contracts/controllers/MintingController__factory.js new file mode 100644 index 00000000..d2279dba --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/controllers/MintingController__factory.js @@ -0,0 +1,279 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.MintingController__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "contract CNSRegistry", + name: "registry", + type: "address", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "MinterAdded", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "MinterRemoved", + type: "event", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "addMinter", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "isMinter", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + ], + name: "mintSLD", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + { + internalType: "address", + name: "resolver", + type: "address", + }, + ], + name: "mintSLDWithResolver", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "registry", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [], + name: "renounceMinter", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + ], + name: "safeMintSLD", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + { + internalType: "bytes", + name: "_data", + type: "bytes", + }, + ], + name: "safeMintSLD", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + { + internalType: "address", + name: "resolver", + type: "address", + }, + { + internalType: "bytes", + name: "_data", + type: "bytes", + }, + ], + name: "safeMintSLDWithResolver", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + { + internalType: "address", + name: "resolver", + type: "address", + }, + ], + name: "safeMintSLDWithResolver", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, +]; +const _bytecode = "0x60806040523480156200001157600080fd5b50604051620015bd380380620015bd833981810160405260208110156200003757600080fd5b50516200004d336001600160e01b036200007316565b600180546001600160a01b0319166001600160a01b0392909216919091179055620001ef565b6200008e816000620000c560201b6200120c1790919060201c565b6040516001600160a01b038216907f6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f690600090a250565b620000da82826001600160e01b036200016c16565b156200014757604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b60006001600160a01b038216620001cf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260228152602001806200159b6022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b61139c80620001ff6000396000f3fe608060405234801561001057600080fd5b506004361061009e5760003560e01c806398650275116100665780639865027514610305578063aa271e1a1461030d578063b2da297914610347578063be362e2e146103c5578063c36c2125146104fe5761009e565b80634c0b0ed2146100a35780637b103999146101595780637caf3ad81461017d5780638ad364f814610258578063983b2d56146102df575b600080fd5b610157600480360360408110156100b957600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156100e357600080fd5b8201836020820111156100f557600080fd5b803590602001918460018302840111600160201b8311171561011657600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506105bd945050505050565b005b61016161074c565b604080516001600160a01b039092168252519081900360200190f35b6101576004803603608081101561019357600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156101bd57600080fd5b8201836020820111156101cf57600080fd5b803590602001918460018302840111600160201b831117156101f057600080fd5b919390926001600160a01b0383351692604081019060200135600160201b81111561021a57600080fd5b82018360208201111561022c57600080fd5b803590602001918460018302840111600160201b8311171561024d57600080fd5b50909250905061075b565b6101576004803603606081101561026e57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561029857600080fd5b8201836020820111156102aa57600080fd5b803590602001918460018302840111600160201b831117156102cb57600080fd5b9193509150356001600160a01b0316610957565b610157600480360360208110156102f557600080fd5b50356001600160a01b0316610b2b565b610157610b7b565b6103336004803603602081101561032357600080fd5b50356001600160a01b0316610b86565b604080519115158252519081900360200190f35b6101576004803603604081101561035d57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561038757600080fd5b82018360208201111561039957600080fd5b803590602001918460018302840111600160201b831117156103ba57600080fd5b509092509050610b9e565b610157600480360360608110156103db57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561040557600080fd5b82018360208201111561041757600080fd5b803590602001918460018302840111600160201b8311171561043857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b81111561048a57600080fd5b82018360208201111561049c57600080fd5b803590602001918460018302840111600160201b831117156104bd57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610bf1945050505050565b6101576004803603606081101561051457600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561053e57600080fd5b82018360208201111561055057600080fd5b803590602001918460018302840111600160201b8311171561057157600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550505090356001600160a01b03169150610dec9050565b6105c633610b86565b6106015760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b039092169163b5466669918591849163ebf0c717916004808301926020929190829003018186803b15801561064f57600080fd5b505afa158015610663573d6000803e3d6000fd5b505050506040513d602081101561067957600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052606060448301908152875160648401528751889360840190602085019080838360005b838110156106e25781810151838201526020016106ca565b50505050905090810190601f16801561070f5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15801561073057600080fd5b505af1158015610744573d6000803e3d6000fd5b505050505050565b6001546001600160a01b031690565b6107cf8686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f89018190048102820181019092528781529250879150869081908401838280828437600092019190915250610bf192505050565b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691632525d06a91869184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b15801561082557600080fd5b505afa158015610839573d6000803e3d6000fd5b505050506040513d602081101561084f57600080fd5b5051604080516001600160e01b031960e085901b1681526004810183815260248201928352604482018d90528d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b1580156108bd57600080fd5b505afa1580156108d1573d6000803e3d6000fd5b505050506040513d60208110156108e757600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b15801561093757600080fd5b505af115801561094b573d6000803e3d6000fd5b50505050505050505050565b6109a58484848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250610bf1915050565b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691632525d06a91849184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b1580156109fb57600080fd5b505afa158015610a0f573d6000803e3d6000fd5b505050506040513d6020811015610a2557600080fd5b5051604080516001600160e01b031960e085901b1681526004810183815260248201928352604482018b90528b928b92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b158015610a9357600080fd5b505afa158015610aa7573d6000803e3d6000fd5b505050506040513d6020811015610abd57600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b158015610b0d57600080fd5b505af1158015610b21573d6000803e3d6000fd5b5050505050505050565b610b3433610b86565b610b6f5760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b610b7881611115565b50565b610b843361115d565b565b6000610b98818363ffffffff6111a516565b92915050565b610bec8383838080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250610bf1915050565b505050565b610bfa33610b86565b610c355760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691630467e014918691849163ebf0c717916004808301926020929190829003018186803b158015610c8357600080fd5b505afa158015610c97573d6000803e3d6000fd5b505050506040513d6020811015610cad57600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052608060448301908152885160848401528851899389939291606482019160a40190602087019080838360005b83811015610d1f578181015183820152602001610d07565b50505050905090810190601f168015610d4c5780820380516001836020036101000a031916815260200191505b50838103825284518152845160209182019186019080838360005b83811015610d7f578181015183820152602001610d67565b50505050905090810190601f168015610dac5780820380516001836020036101000a031916815260200191505b509650505050505050600060405180830381600087803b158015610dcf57600080fd5b505af1158015610de3573d6000803e3d6000fd5b50505050505050565b610df533610b86565b610e305760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b039092169163b5466669918691849163ebf0c717916004808301926020929190829003018186803b158015610e7e57600080fd5b505afa158015610e92573d6000803e3d6000fd5b505050506040513d6020811015610ea857600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052606060448301908152885160648401528851899360840190602085019080838360005b83811015610f11578181015183820152602001610ef9565b50505050905090810190601f168015610f3e5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015610f5f57600080fd5b505af1158015610f73573d6000803e3d6000fd5b50506001546040805163ebf0c71760e01b815290516001600160a01b039092169350632525d06a9250849184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b158015610fcd57600080fd5b505afa158015610fe1573d6000803e3d6000fd5b505050506040513d6020811015610ff757600080fd5b5051604080516001600160e01b031960e085901b16815260048101838152602482019283528a5160448301528a518b93919260640190602085019080838360005b83811015611050578181015183820152602001611038565b50505050905090810190601f16801561107d5780820380516001836020036101000a031916815260200191505b50935050505060206040518083038186803b15801561109b57600080fd5b505afa1580156110af573d6000803e3d6000fd5b505050506040513d60208110156110c557600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b158015610dcf57600080fd5b61112660008263ffffffff61120c16565b6040516001600160a01b038216907f6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f690600090a250565b61116e60008263ffffffff61128d16565b6040516001600160a01b038216907fe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb6669290600090a250565b60006001600160a01b0382166111ec5760405162461bcd60e51b81526004018080602001828103825260228152602001806113466022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b61121682826111a5565b15611268576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b61129782826111a5565b6112d25760405162461bcd60e51b81526004018080602001828103825260218152602001806113256021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe4d696e746572526f6c653a2063616c6c657220646f6573206e6f74206861766520746865204d696e74657220726f6c65526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f2061646472657373a265627a7a72315820c058d70355f7d37ff6b3b61cd850cc4a41893e30048389698c062148bf3d2ff464736f6c634300050c0032526f6c65733a206163636f756e7420697320746865207a65726f2061646472657373"; +const isSuperArgs = (xs) => xs.length > 1; +class MintingController__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(registry, overrides) { + return super.getDeployTransaction(registry, overrides || {}); + } + deploy(registry, overrides) { + return super.deploy(registry, overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.MintingController__factory = MintingController__factory; +MintingController__factory.bytecode = _bytecode; +MintingController__factory.abi = _abi; diff --git a/dist/types/factories/dot-crypto/contracts/controllers/SignatureController__factory.d.ts b/dist/types/factories/dot-crypto/contracts/controllers/SignatureController__factory.d.ts new file mode 100644 index 00000000..30ca294a --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/controllers/SignatureController__factory.d.ts @@ -0,0 +1,356 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, AddressLike, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../../common"; +import type { SignatureController, SignatureControllerInterface } from "../../../../dot-crypto/contracts/controllers/SignatureController"; +declare type SignatureControllerConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class SignatureController__factory extends ContractFactory { + constructor(...args: SignatureControllerConstructorParams); + getDeployTransaction(registry: AddressLike, overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(registry: AddressLike, overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): SignatureController__factory; + static readonly bytecode = "0x608060405234801561001057600080fd5b506040516120813803806120818339818101604052602081101561003357600080fd5b5051600180546001600160a01b0319166001600160a01b0390921691909117905561201e806100636000396000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c80636debcb8d1161008c578063b34f33c511610066578063b34f33c514610741578063d0778d6c14610814578063ef2c3088146108f2578063f5090c1e14610980576100ea565b80636debcb8d146105ca5780636fab95b3146106585780637b1039991461071d576100ea565b8063511f1112116100c8578063511f1112146103c557806361603dd91461044857806368b6154f146104bd5780636ccbae5f1461059b576100ea565b806307eca395146100ef578063280d9b051461021457806330135293146102f2575b600080fd5b610212600480360360a081101561010557600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561013457600080fd5b82018360208201111561014657600080fd5b803590602001918460018302840111600160201b8311171561016757600080fd5b919390929091602081019035600160201b81111561018457600080fd5b82018360208201111561019657600080fd5b803590602001918460018302840111600160201b831117156101b757600080fd5b919390929091602081019035600160201b8111156101d457600080fd5b8201836020820111156101e657600080fd5b803590602001918460018302840111600160201b8311171561020757600080fd5b509092509050610aae565b005b610212600480360360a081101561022a57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561026457600080fd5b82018360208201111561027657600080fd5b803590602001918460018302840111600160201b8311171561029757600080fd5b919390929091602081019035600160201b8111156102b457600080fd5b8201836020820111156102c657600080fd5b803590602001918460018302840111600160201b831117156102e757600080fd5b509092509050610c92565b6102126004803603608081101561030857600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561033757600080fd5b82018360208201111561034957600080fd5b803590602001918460018302840111600160201b8311171561036a57600080fd5b919390929091602081019035600160201b81111561038757600080fd5b82018360208201111561039957600080fd5b803590602001918460018302840111600160201b831117156103ba57600080fd5b509092509050610e3d565b610212600480360360608110156103db57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561040a57600080fd5b82018360208201111561041c57600080fd5b803590602001918460018302840111600160201b8311171561043d57600080fd5b509092509050610fcc565b6102126004803603604081101561045e57600080fd5b81359190810190604081016020820135600160201b81111561047f57600080fd5b82018360208201111561049157600080fd5b803590602001918460018302840111600160201b831117156104b257600080fd5b5090925090506110c9565b610212600480360360a08110156104d357600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561050d57600080fd5b82018360208201111561051f57600080fd5b803590602001918460018302840111600160201b8311171561054057600080fd5b919390929091602081019035600160201b81111561055d57600080fd5b82018360208201111561056f57600080fd5b803590602001918460018302840111600160201b8311171561059057600080fd5b5090925090506111ae565b6105b8600480360360208110156105b157600080fd5b50356113a8565b60408051918252519081900360200190f35b610212600480360360808110156105e057600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561061a57600080fd5b82018360208201111561062c57600080fd5b803590602001918460018302840111600160201b8311171561064d57600080fd5b5090925090506113ba565b6102126004803603606081101561066e57600080fd5b81359190810190604081016020820135600160201b81111561068f57600080fd5b8201836020820111156106a157600080fd5b803590602001918460018302840111600160201b831117156106c257600080fd5b919390929091602081019035600160201b8111156106df57600080fd5b8201836020820111156106f157600080fd5b803590602001918460018302840111600160201b8311171561071257600080fd5b5090925090506114d4565b610725611675565b604080516001600160a01b039092168252519081900360200190f35b6102126004803603608081101561075757600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561078657600080fd5b82018360208201111561079857600080fd5b803590602001918460018302840111600160201b831117156107b957600080fd5b919390929091602081019035600160201b8111156107d657600080fd5b8201836020820111156107e857600080fd5b803590602001918460018302840111600160201b8311171561080957600080fd5b509092509050611684565b610212600480360360a081101561082a57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561086457600080fd5b82018360208201111561087657600080fd5b803590602001918460018302840111600160201b8311171561089757600080fd5b919390929091602081019035600160201b8111156108b457600080fd5b8201836020820111156108c657600080fd5b803590602001918460018302840111600160201b831117156108e757600080fd5b5090925090506117de565b6102126004803603608081101561090857600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561094257600080fd5b82018360208201111561095457600080fd5b803590602001918460018302840111600160201b8311171561097557600080fd5b5090925090506119e4565b610212600480360360c081101561099657600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156109d057600080fd5b8201836020820111156109e257600080fd5b803590602001918460018302840111600160201b83111715610a0357600080fd5b919390929091602081019035600160201b811115610a2057600080fd5b820183602082011115610a3257600080fd5b803590602001918460018302840111600160201b83111715610a5357600080fd5b919390929091602081019035600160201b811115610a7057600080fd5b820183602082011115610a8257600080fd5b803590602001918460018302840111600160201b83111715610aa357600080fd5b509092509050611ad3565b610bb163ce9fb82b89898989898960405160240180876001600160a01b03166001600160a01b0316815260200186815260200180602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f820116905080830192505050985050505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208884848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b600154604051630119f80560e21b81526001600160a01b038a811660048301908152602483018b9052608060448401908152608484018a90529190931692630467e014928c928c928c928c928c928c92909190606481019060a401878780828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f82011690508083019250505098505050505050505050600060405180830381600087803b158015610c7057600080fd5b505af1158015610c84573d6000803e3d6000fd5b505050505050505050505050565b610d8363b88d4fde888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040516315eab15d60e21b81526001600160a01b03898116600483019081528982166024840152604483018990526080606484019081526084840188905291909316926357aac574928b928b928b928b928b929160a401848480828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b158015610e1c57600080fd5b505af1158015610e30573d6000803e3d6000fd5b5050505050505050505050565b610f09637c69eae28787878760405160240180856001600160a01b03166001600160a01b0316815260200184815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09d909d1b9c909c178c529351909a208a51918d01849004840282018401909a528b81528f985096508b95508a94508493505085019050838280828437600092019190915250611d5492505050565b600154604051630119f80560e21b81526001600160a01b038881166004830190815260248301899052608060448401908152608484018890529190931692630467e014928a928a928a928a9290606481019060a401858580828437600081840152601f19601f8201169050808301925050508381038252600081526020016020019650505050505050600060405180830381600087803b158015610fac57600080fd5b505af1158015610fc0573d6000803e3d6000fd5b50505050505050505050565b604080516001600160a01b038616602482015260448082018690528251808303909101815260649091018252602081810180516001600160e01b0316632392c18960e01b17815291519091208251601f85018390048302810183019093528383526110569290918691908690869081908401838280828437600092019190915250611d5492505050565b60015460408051631292e83560e11b81526001600160a01b0387811660048301526024820187905291519190921691632525d06a91604480830192600092919082900301818387803b1580156110ab57600080fd5b505af11580156110bf573d6000803e3d6000fd5b5050505050505050565b6040805160248082018690528251808303909101815260449091018252602081810180516001600160e01b0316630852cd8d60e31b17815291519091208251601f85018390048302810183019093528383526111449290918691908690869081908401838280828437600092019190915250611d5492505050565b6001546040805163e67ca8a360e01b81526004810186905290516001600160a01b039092169163e67ca8a39160248082019260009290919082900301818387803b15801561119157600080fd5b505af11580156111a5573d6000803e3d6000fd5b50505050505050565b61129f639e5be9a5888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b03909316926302759c37928b928b9286926368b62d32928d928d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561132757600080fd5b505afa15801561133b573d6000803e3d6000fd5b505050506040513d602081101561135157600080fd5b5051604080516001600160e01b031960e087901b1681526001600160a01b03948516600482015292909316602483015260448201529051606480830192600092919082900301818387803b158015610e1c57600080fd5b60009081526020819052604090205490565b604080516001600160a01b0380881660248301528616604482015260648082018690528251808303909101815260849091018252602081810180516001600160e01b0316632142170760e11b17815291519091208251601f850183900483028101830190935283835261144c9290918691908690869081908401838280828437600092019190915250611d5492505050565b600154604080516315eab15d60e21b81526001600160a01b0388811660048301528781166024830152604482018790526080606483015260006084830181905292519316926357aac5749260c48084019391929182900301818387803b1580156114b557600080fd5b505af11580156114c9573d6000803e3d6000fd5b505050505050505050565b611585635cbe11128686866040516024018084815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09c909c1b9b909b178b5293519099208951918c018490048402820184019099528a81528e975095508a9450899350839250508401838280828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b039093169263e67ca8a39284926368b62d32928b928b928b929190606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561160b57600080fd5b505afa15801561161f573d6000803e3d6000fd5b505050506040513d602081101561163557600080fd5b5051604080516001600160e01b031960e085901b168152600481019290925251602480830192600092919082900301818387803b1580156114b557600080fd5b6001546001600160a01b031690565b61175063d8d3cc6e8787878760405160240180856001600160a01b03166001600160a01b0316815260200184815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09d909d1b9c909c178c529351909a208a51918d01849004840282018401909a528b81528f985096508b95508a94508493505085019050838280828437600092019190915250611d5492505050565b60015460405163b546666960e01b81526001600160a01b03888116600483019081526024830189905260606044840190815260648401889052919093169263b5466669928a928a928a928a9290608401848480828437600081840152601f19601f82011690508083019250505095505050505050600060405180830381600087803b158015610fac57600080fd5b6118cf639d743989888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b03909316926357aac574928b928b9286926368b62d32928d928d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561195757600080fd5b505afa15801561196b573d6000803e3d6000fd5b505050506040513d602081101561198157600080fd5b5051604080516001600160e01b031960e087901b1681526001600160a01b039485166004820152929093166024830152604482015260806064820152600060848201819052915160c4808301939282900301818387803b158015610e1c57600080fd5b604080516001600160a01b0380881660248301528616604482015260648082018690528251808303909101815260849091018252602081810180516001600160e01b03166323b872dd60e01b17815291519091208251601f8501839004830281018301909352838352611a769290918691908690869081908401838280828437600092019190915250611d5492505050565b600154604080516302759c3760e01b81526001600160a01b038881166004830152878116602483015260448201879052915191909216916302759c3791606480830192600092919082900301818387803b1580156114b557600080fd5b611bf063c29b52f98a8a8a8a8a8a8a60405160240180886001600160a01b03166001600160a01b03168152602001876001600160a01b03166001600160a01b0316815260200186815260200180602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f82011690508083019250505099505050505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208884848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b8152600481018a815260248201928352604482018990526001600160a01b03909316926357aac574928d928d9286926368b62d32928f928f928f92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b158015611c7857600080fd5b505afa158015611c8c573d6000803e3d6000fd5b505050506040513d6020811015611ca257600080fd5b50516040516001600160e01b031960e086901b1681526001600160a01b0380851660048301908152908416602483015260448201839052608060648301908152608483018b90528b928b92919060a401848480828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b158015611d3157600080fd5b505af1158015611d45573d6000803e3d6000fd5b50505050505050505050505050565b6000828152602081815260408083205481518084018890523060601b81840152605480820183905283518083039091018152607490910190925281519190920120909190611db3908490611da790611ea9565b9063ffffffff611efa16565b90506001600160a01b03811615801590611e4957506001546040805163430c208160e01b81526001600160a01b038481166004830152602482018890529151919092169163430c2081916044808301926020929190829003018186803b158015611e1c57600080fd5b505afa158015611e30573d6000803e3d6000fd5b505050506040513d6020811015611e4657600080fd5b50515b611e8e576040805162461bcd60e51b8152602060048201526011602482015270494e56414c49445f5349474e415455524560781b604482015290519081900360640190fd5b50505060009081526020819052604090208054600101905550565b604080517f19457468657265756d205369676e6564204d6573736167653a0a333200000000602080830191909152603c8083019490945282518083039094018452605c909101909152815191012090565b60008151604114611f0d57506000611fe3565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0821115611f535760009350505050611fe3565b8060ff16601b14158015611f6b57508060ff16601c14155b15611f7c5760009350505050611fe3565b6040805160008152602080820180845289905260ff8416828401526060820186905260808201859052915160019260a0808401939192601f1981019281900390910190855afa158015611fd3573d6000803e3d6000fd5b5050506020604051035193505050505b9291505056fea265627a7a7231582014816bfd0c1519ce8c4cf272eb0526ffdba3abef0df7f17deb0da40bd8abb77f64736f6c634300050c0032"; + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "contract CNSRegistry"; + readonly name: "registry"; + readonly type: "address"; + }]; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "constructor"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "burnChildFor"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "burnFor"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "mintChildFor"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "nonceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly []; + readonly name: "registry"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "resolveToFor"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }, { + readonly internalType: "bytes"; + readonly name: "_data"; + readonly type: "bytes"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "safeMintChildFor"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "safeMintChildFor"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "safeTransferFromChildFor"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }, { + readonly internalType: "bytes"; + readonly name: "_data"; + readonly type: "bytes"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "safeTransferFromChildFor"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "_data"; + readonly type: "bytes"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "safeTransferFromFor"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "safeTransferFromFor"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "transferFromChildFor"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "from"; + readonly type: "address"; + }, { + readonly internalType: "address"; + readonly name: "to"; + readonly type: "address"; + }, { + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }, { + readonly internalType: "bytes"; + readonly name: "signature"; + readonly type: "bytes"; + }]; + readonly name: "transferFromFor"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): SignatureControllerInterface; + static connect(address: string, runner?: ContractRunner | null): SignatureController; +} +export {}; +//# sourceMappingURL=SignatureController__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/controllers/SignatureController__factory.d.ts.map b/dist/types/factories/dot-crypto/contracts/controllers/SignatureController__factory.d.ts.map new file mode 100644 index 00000000..1666e826 --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/controllers/SignatureController__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"SignatureController__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/dot-crypto/contracts/controllers/SignatureController__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,MAAM,EACN,WAAW,EACX,yBAAyB,EACzB,cAAc,EACf,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,KAAK,EACV,mBAAmB,EACnB,4BAA4B,EAC7B,MAAM,kEAAkE,CAAC;AA0a1E,aAAK,oCAAoC,GACrC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,4BAA6B,SAAQ,eAAe;gBACnD,GAAG,IAAI,EAAE,oCAAoC;IAQhD,oBAAoB,CAC3B,QAAQ,EAAE,WAAW,EACrB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CACb,QAAQ,EAAE,WAAW,EACrB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAItB,2BAA2B;;IAIjD,OAAO,CACd,MAAM,EAAE,cAAc,GAAG,IAAI,GAC5B,4BAA4B;IAI/B,MAAM,CAAC,QAAQ,CAAC,QAAQ,0wgBAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,4BAA4B;IAGtD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,mBAAmB;CAOvB"} \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/controllers/SignatureController__factory.js b/dist/types/factories/dot-crypto/contracts/controllers/SignatureController__factory.js new file mode 100644 index 00000000..6d60cbdb --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/controllers/SignatureController__factory.js @@ -0,0 +1,454 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.SignatureController__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "contract CNSRegistry", + name: "registry", + type: "address", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "constructor", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "burnChildFor", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "burnFor", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "mintChildFor", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "nonceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "registry", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "resolveToFor", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + { + internalType: "bytes", + name: "_data", + type: "bytes", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "safeMintChildFor", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "safeMintChildFor", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "safeTransferFromChildFor", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + { + internalType: "bytes", + name: "_data", + type: "bytes", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "safeTransferFromChildFor", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "_data", + type: "bytes", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "safeTransferFromFor", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "safeTransferFromFor", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "string", + name: "label", + type: "string", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "transferFromChildFor", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "transferFromFor", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, +]; +const _bytecode = "0x608060405234801561001057600080fd5b506040516120813803806120818339818101604052602081101561003357600080fd5b5051600180546001600160a01b0319166001600160a01b0390921691909117905561201e806100636000396000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c80636debcb8d1161008c578063b34f33c511610066578063b34f33c514610741578063d0778d6c14610814578063ef2c3088146108f2578063f5090c1e14610980576100ea565b80636debcb8d146105ca5780636fab95b3146106585780637b1039991461071d576100ea565b8063511f1112116100c8578063511f1112146103c557806361603dd91461044857806368b6154f146104bd5780636ccbae5f1461059b576100ea565b806307eca395146100ef578063280d9b051461021457806330135293146102f2575b600080fd5b610212600480360360a081101561010557600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561013457600080fd5b82018360208201111561014657600080fd5b803590602001918460018302840111600160201b8311171561016757600080fd5b919390929091602081019035600160201b81111561018457600080fd5b82018360208201111561019657600080fd5b803590602001918460018302840111600160201b831117156101b757600080fd5b919390929091602081019035600160201b8111156101d457600080fd5b8201836020820111156101e657600080fd5b803590602001918460018302840111600160201b8311171561020757600080fd5b509092509050610aae565b005b610212600480360360a081101561022a57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561026457600080fd5b82018360208201111561027657600080fd5b803590602001918460018302840111600160201b8311171561029757600080fd5b919390929091602081019035600160201b8111156102b457600080fd5b8201836020820111156102c657600080fd5b803590602001918460018302840111600160201b831117156102e757600080fd5b509092509050610c92565b6102126004803603608081101561030857600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561033757600080fd5b82018360208201111561034957600080fd5b803590602001918460018302840111600160201b8311171561036a57600080fd5b919390929091602081019035600160201b81111561038757600080fd5b82018360208201111561039957600080fd5b803590602001918460018302840111600160201b831117156103ba57600080fd5b509092509050610e3d565b610212600480360360608110156103db57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561040a57600080fd5b82018360208201111561041c57600080fd5b803590602001918460018302840111600160201b8311171561043d57600080fd5b509092509050610fcc565b6102126004803603604081101561045e57600080fd5b81359190810190604081016020820135600160201b81111561047f57600080fd5b82018360208201111561049157600080fd5b803590602001918460018302840111600160201b831117156104b257600080fd5b5090925090506110c9565b610212600480360360a08110156104d357600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561050d57600080fd5b82018360208201111561051f57600080fd5b803590602001918460018302840111600160201b8311171561054057600080fd5b919390929091602081019035600160201b81111561055d57600080fd5b82018360208201111561056f57600080fd5b803590602001918460018302840111600160201b8311171561059057600080fd5b5090925090506111ae565b6105b8600480360360208110156105b157600080fd5b50356113a8565b60408051918252519081900360200190f35b610212600480360360808110156105e057600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561061a57600080fd5b82018360208201111561062c57600080fd5b803590602001918460018302840111600160201b8311171561064d57600080fd5b5090925090506113ba565b6102126004803603606081101561066e57600080fd5b81359190810190604081016020820135600160201b81111561068f57600080fd5b8201836020820111156106a157600080fd5b803590602001918460018302840111600160201b831117156106c257600080fd5b919390929091602081019035600160201b8111156106df57600080fd5b8201836020820111156106f157600080fd5b803590602001918460018302840111600160201b8311171561071257600080fd5b5090925090506114d4565b610725611675565b604080516001600160a01b039092168252519081900360200190f35b6102126004803603608081101561075757600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561078657600080fd5b82018360208201111561079857600080fd5b803590602001918460018302840111600160201b831117156107b957600080fd5b919390929091602081019035600160201b8111156107d657600080fd5b8201836020820111156107e857600080fd5b803590602001918460018302840111600160201b8311171561080957600080fd5b509092509050611684565b610212600480360360a081101561082a57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561086457600080fd5b82018360208201111561087657600080fd5b803590602001918460018302840111600160201b8311171561089757600080fd5b919390929091602081019035600160201b8111156108b457600080fd5b8201836020820111156108c657600080fd5b803590602001918460018302840111600160201b831117156108e757600080fd5b5090925090506117de565b6102126004803603608081101561090857600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561094257600080fd5b82018360208201111561095457600080fd5b803590602001918460018302840111600160201b8311171561097557600080fd5b5090925090506119e4565b610212600480360360c081101561099657600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156109d057600080fd5b8201836020820111156109e257600080fd5b803590602001918460018302840111600160201b83111715610a0357600080fd5b919390929091602081019035600160201b811115610a2057600080fd5b820183602082011115610a3257600080fd5b803590602001918460018302840111600160201b83111715610a5357600080fd5b919390929091602081019035600160201b811115610a7057600080fd5b820183602082011115610a8257600080fd5b803590602001918460018302840111600160201b83111715610aa357600080fd5b509092509050611ad3565b610bb163ce9fb82b89898989898960405160240180876001600160a01b03166001600160a01b0316815260200186815260200180602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f820116905080830192505050985050505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208884848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b600154604051630119f80560e21b81526001600160a01b038a811660048301908152602483018b9052608060448401908152608484018a90529190931692630467e014928c928c928c928c928c928c92909190606481019060a401878780828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f82011690508083019250505098505050505050505050600060405180830381600087803b158015610c7057600080fd5b505af1158015610c84573d6000803e3d6000fd5b505050505050505050505050565b610d8363b88d4fde888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040516315eab15d60e21b81526001600160a01b03898116600483019081528982166024840152604483018990526080606484019081526084840188905291909316926357aac574928b928b928b928b928b929160a401848480828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b158015610e1c57600080fd5b505af1158015610e30573d6000803e3d6000fd5b5050505050505050505050565b610f09637c69eae28787878760405160240180856001600160a01b03166001600160a01b0316815260200184815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09d909d1b9c909c178c529351909a208a51918d01849004840282018401909a528b81528f985096508b95508a94508493505085019050838280828437600092019190915250611d5492505050565b600154604051630119f80560e21b81526001600160a01b038881166004830190815260248301899052608060448401908152608484018890529190931692630467e014928a928a928a928a9290606481019060a401858580828437600081840152601f19601f8201169050808301925050508381038252600081526020016020019650505050505050600060405180830381600087803b158015610fac57600080fd5b505af1158015610fc0573d6000803e3d6000fd5b50505050505050505050565b604080516001600160a01b038616602482015260448082018690528251808303909101815260649091018252602081810180516001600160e01b0316632392c18960e01b17815291519091208251601f85018390048302810183019093528383526110569290918691908690869081908401838280828437600092019190915250611d5492505050565b60015460408051631292e83560e11b81526001600160a01b0387811660048301526024820187905291519190921691632525d06a91604480830192600092919082900301818387803b1580156110ab57600080fd5b505af11580156110bf573d6000803e3d6000fd5b5050505050505050565b6040805160248082018690528251808303909101815260449091018252602081810180516001600160e01b0316630852cd8d60e31b17815291519091208251601f85018390048302810183019093528383526111449290918691908690869081908401838280828437600092019190915250611d5492505050565b6001546040805163e67ca8a360e01b81526004810186905290516001600160a01b039092169163e67ca8a39160248082019260009290919082900301818387803b15801561119157600080fd5b505af11580156111a5573d6000803e3d6000fd5b50505050505050565b61129f639e5be9a5888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b03909316926302759c37928b928b9286926368b62d32928d928d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561132757600080fd5b505afa15801561133b573d6000803e3d6000fd5b505050506040513d602081101561135157600080fd5b5051604080516001600160e01b031960e087901b1681526001600160a01b03948516600482015292909316602483015260448201529051606480830192600092919082900301818387803b158015610e1c57600080fd5b60009081526020819052604090205490565b604080516001600160a01b0380881660248301528616604482015260648082018690528251808303909101815260849091018252602081810180516001600160e01b0316632142170760e11b17815291519091208251601f850183900483028101830190935283835261144c9290918691908690869081908401838280828437600092019190915250611d5492505050565b600154604080516315eab15d60e21b81526001600160a01b0388811660048301528781166024830152604482018790526080606483015260006084830181905292519316926357aac5749260c48084019391929182900301818387803b1580156114b557600080fd5b505af11580156114c9573d6000803e3d6000fd5b505050505050505050565b611585635cbe11128686866040516024018084815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09c909c1b9b909b178b5293519099208951918c018490048402820184019099528a81528e975095508a9450899350839250508401838280828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b039093169263e67ca8a39284926368b62d32928b928b928b929190606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561160b57600080fd5b505afa15801561161f573d6000803e3d6000fd5b505050506040513d602081101561163557600080fd5b5051604080516001600160e01b031960e085901b168152600481019290925251602480830192600092919082900301818387803b1580156114b557600080fd5b6001546001600160a01b031690565b61175063d8d3cc6e8787878760405160240180856001600160a01b03166001600160a01b0316815260200184815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09d909d1b9c909c178c529351909a208a51918d01849004840282018401909a528b81528f985096508b95508a94508493505085019050838280828437600092019190915250611d5492505050565b60015460405163b546666960e01b81526001600160a01b03888116600483019081526024830189905260606044840190815260648401889052919093169263b5466669928a928a928a928a9290608401848480828437600081840152601f19601f82011690508083019250505095505050505050600060405180830381600087803b158015610fac57600080fd5b6118cf639d743989888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b03909316926357aac574928b928b9286926368b62d32928d928d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561195757600080fd5b505afa15801561196b573d6000803e3d6000fd5b505050506040513d602081101561198157600080fd5b5051604080516001600160e01b031960e087901b1681526001600160a01b039485166004820152929093166024830152604482015260806064820152600060848201819052915160c4808301939282900301818387803b158015610e1c57600080fd5b604080516001600160a01b0380881660248301528616604482015260648082018690528251808303909101815260849091018252602081810180516001600160e01b03166323b872dd60e01b17815291519091208251601f8501839004830281018301909352838352611a769290918691908690869081908401838280828437600092019190915250611d5492505050565b600154604080516302759c3760e01b81526001600160a01b038881166004830152878116602483015260448201879052915191909216916302759c3791606480830192600092919082900301818387803b1580156114b557600080fd5b611bf063c29b52f98a8a8a8a8a8a8a60405160240180886001600160a01b03166001600160a01b03168152602001876001600160a01b03166001600160a01b0316815260200186815260200180602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f82011690508083019250505099505050505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208884848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b8152600481018a815260248201928352604482018990526001600160a01b03909316926357aac574928d928d9286926368b62d32928f928f928f92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b158015611c7857600080fd5b505afa158015611c8c573d6000803e3d6000fd5b505050506040513d6020811015611ca257600080fd5b50516040516001600160e01b031960e086901b1681526001600160a01b0380851660048301908152908416602483015260448201839052608060648301908152608483018b90528b928b92919060a401848480828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b158015611d3157600080fd5b505af1158015611d45573d6000803e3d6000fd5b50505050505050505050505050565b6000828152602081815260408083205481518084018890523060601b81840152605480820183905283518083039091018152607490910190925281519190920120909190611db3908490611da790611ea9565b9063ffffffff611efa16565b90506001600160a01b03811615801590611e4957506001546040805163430c208160e01b81526001600160a01b038481166004830152602482018890529151919092169163430c2081916044808301926020929190829003018186803b158015611e1c57600080fd5b505afa158015611e30573d6000803e3d6000fd5b505050506040513d6020811015611e4657600080fd5b50515b611e8e576040805162461bcd60e51b8152602060048201526011602482015270494e56414c49445f5349474e415455524560781b604482015290519081900360640190fd5b50505060009081526020819052604090208054600101905550565b604080517f19457468657265756d205369676e6564204d6573736167653a0a333200000000602080830191909152603c8083019490945282518083039094018452605c909101909152815191012090565b60008151604114611f0d57506000611fe3565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0821115611f535760009350505050611fe3565b8060ff16601b14158015611f6b57508060ff16601c14155b15611f7c5760009350505050611fe3565b6040805160008152602080820180845289905260ff8416828401526060820186905260808201859052915160019260a0808401939192601f1981019281900390910190855afa158015611fd3573d6000803e3d6000fd5b5050506020604051035193505050505b9291505056fea265627a7a7231582014816bfd0c1519ce8c4cf272eb0526ffdba3abef0df7f17deb0da40bd8abb77f64736f6c634300050c0032"; +const isSuperArgs = (xs) => xs.length > 1; +class SignatureController__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(registry, overrides) { + return super.getDeployTransaction(registry, overrides || {}); + } + deploy(registry, overrides) { + return super.deploy(registry, overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.SignatureController__factory = SignatureController__factory; +SignatureController__factory.bytecode = _bytecode; +SignatureController__factory.abi = _abi; diff --git a/dist/types/factories/dot-crypto/contracts/controllers/URIPrefixController__factory.d.ts b/dist/types/factories/dot-crypto/contracts/controllers/URIPrefixController__factory.d.ts new file mode 100644 index 00000000..9aadbf5a --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/controllers/URIPrefixController__factory.d.ts @@ -0,0 +1,180 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, AddressLike, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../../common"; +import type { URIPrefixController, URIPrefixControllerInterface } from "../../../../dot-crypto/contracts/controllers/URIPrefixController"; +declare type URIPrefixControllerConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class URIPrefixController__factory extends ContractFactory { + constructor(...args: URIPrefixControllerConstructorParams); + getDeployTransaction(registry: AddressLike, overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(registry: AddressLike, overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): URIPrefixController__factory; + static readonly bytecode = "0x608060405234801561001057600080fd5b506040516109913803806109918339818101604052602081101561003357600080fd5b5051610047336001600160e01b0361006c16565b600280546001600160a01b0319166001600160a01b03929092169190911790556101e0565b6100848160006100bb60201b6105a61790919060201c565b6040516001600160a01b038216907f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129990600090a250565b6100ce82826001600160e01b0361015f16565b1561013a57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b60006001600160a01b0382166101c0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602281526020018061096f6022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b610780806101ef6000396000f3fe608060405234801561001057600080fd5b50600436106100935760003560e01c80637362d9c8116100665780637362d9c8146101285780637b1039991461014e57806399e0dd7c14610172578063bb5f747b146101e2578063d6cd94731461020857610093565b806310154bad14610098578063291d9549146100c05780633af32abf146100e65780634c5a628c14610120575b600080fd5b6100be600480360360208110156100ae57600080fd5b50356001600160a01b0316610210565b005b6100be600480360360208110156100d657600080fd5b50356001600160a01b0316610260565b61010c600480360360208110156100fc57600080fd5b50356001600160a01b03166102ad565b604080519115158252519081900360200190f35b6100be6102c6565b6100be6004803603602081101561013e57600080fd5b50356001600160a01b03166102d1565b61015661031e565b604080516001600160a01b039092168252519081900360200190f35b6100be6004803603602081101561018857600080fd5b8101906020810181356401000000008111156101a357600080fd5b8201836020820111156101b557600080fd5b803590602001918460018302840111640100000000831117156101d757600080fd5b50909250905061032d565b61010c600480360360208110156101f857600080fd5b50356001600160a01b0316610404565b6100be610416565b61021933610404565b6102545760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d8161041f565b50565b61026933610404565b6102a45760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d81610467565b60006102c060018363ffffffff6104af16565b92915050565b6102cf33610516565b565b6102da33610404565b6103155760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d8161055e565b6002546001600160a01b031690565b610336336102ad565b6103715760405162461bcd60e51b815260040180806020018281038252603a815260200180610712603a913960400191505060405180910390fd5b6002546040516369426cbd60e11b8152602060048201908152602482018490526001600160a01b039092169163d284d97a91859185918190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b1580156103e857600080fd5b505af11580156103fc573d6000803e3d6000fd5b505050505050565b60006102c0818363ffffffff6104af16565b6102cf33610467565b61043060018263ffffffff6105a616565b6040516001600160a01b038216907fee1504a83b6d4a361f4c1dc78ab59bfa30d6a3b6612c403e86bb01ef2984295f90600090a250565b61047860018263ffffffff61062716565b6040516001600160a01b038216907f270d9b30cf5b0793bbfd54c9d5b94aeb49462b8148399000265144a8722da6b690600090a250565b60006001600160a01b0382166104f65760405162461bcd60e51b81526004018080602001828103825260228152602001806106b06022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b61052760008263ffffffff61062716565b6040516001600160a01b038216907f0a8eb35e5ca14b3d6f28e4abf2f128dbab231a58b56e89beb5d636115001e16590600090a250565b61056f60008263ffffffff6105a616565b6040516001600160a01b038216907f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129990600090a250565b6105b082826104af565b15610602576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b61063182826104af565b61066c5760405162461bcd60e51b815260040180806020018281038252602181526020018061068f6021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f206164647265737357686974656c69737441646d696e526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c69737441646d696e20726f6c6557686974656c6973746564526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c697374656420726f6c65a265627a7a72315820debca60946c0819dc5b5c2756c5c1dd8dd8a46f2429fa8a43a4f4362af3030c164736f6c634300050c0032526f6c65733a206163636f756e7420697320746865207a65726f2061646472657373"; + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "contract CNSRegistry"; + readonly name: "registry"; + readonly type: "address"; + }]; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "constructor"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "WhitelistAdminAdded"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "WhitelistAdminRemoved"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "WhitelistedAdded"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "WhitelistedRemoved"; + readonly type: "event"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "addWhitelistAdmin"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "addWhitelisted"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "isWhitelistAdmin"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "isWhitelisted"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly []; + readonly name: "registry"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "removeWhitelisted"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly []; + readonly name: "renounceWhitelistAdmin"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly []; + readonly name: "renounceWhitelisted"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "prefix"; + readonly type: "string"; + }]; + readonly name: "setTokenURIPrefix"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): URIPrefixControllerInterface; + static connect(address: string, runner?: ContractRunner | null): URIPrefixController; +} +export {}; +//# sourceMappingURL=URIPrefixController__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/controllers/URIPrefixController__factory.d.ts.map b/dist/types/factories/dot-crypto/contracts/controllers/URIPrefixController__factory.d.ts.map new file mode 100644 index 00000000..66d63d79 --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/controllers/URIPrefixController__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"URIPrefixController__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/dot-crypto/contracts/controllers/URIPrefixController__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,MAAM,EACN,WAAW,EACX,yBAAyB,EACzB,cAAc,EACf,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,KAAK,EACV,mBAAmB,EACnB,4BAA4B,EAC7B,MAAM,kEAAkE,CAAC;AA+M1E,aAAK,oCAAoC,GACrC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,4BAA6B,SAAQ,eAAe;gBACnD,GAAG,IAAI,EAAE,oCAAoC;IAQhD,oBAAoB,CAC3B,QAAQ,EAAE,WAAW,EACrB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CACb,QAAQ,EAAE,WAAW,EACrB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAItB,2BAA2B;;IAIjD,OAAO,CACd,MAAM,EAAE,cAAc,GAAG,IAAI,GAC5B,4BAA4B;IAI/B,MAAM,CAAC,QAAQ,CAAC,QAAQ,0yJAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,4BAA4B;IAGtD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,mBAAmB;CAOvB"} \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/controllers/URIPrefixController__factory.js b/dist/types/factories/dot-crypto/contracts/controllers/URIPrefixController__factory.js new file mode 100644 index 00000000..fc0ab33c --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/controllers/URIPrefixController__factory.js @@ -0,0 +1,235 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.URIPrefixController__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "contract CNSRegistry", + name: "registry", + type: "address", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "WhitelistAdminAdded", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "WhitelistAdminRemoved", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "WhitelistedAdded", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "WhitelistedRemoved", + type: "event", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "addWhitelistAdmin", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "addWhitelisted", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "isWhitelistAdmin", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "isWhitelisted", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "registry", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "removeWhitelisted", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [], + name: "renounceWhitelistAdmin", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [], + name: "renounceWhitelisted", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "string", + name: "prefix", + type: "string", + }, + ], + name: "setTokenURIPrefix", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, +]; +const _bytecode = "0x608060405234801561001057600080fd5b506040516109913803806109918339818101604052602081101561003357600080fd5b5051610047336001600160e01b0361006c16565b600280546001600160a01b0319166001600160a01b03929092169190911790556101e0565b6100848160006100bb60201b6105a61790919060201c565b6040516001600160a01b038216907f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129990600090a250565b6100ce82826001600160e01b0361015f16565b1561013a57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b60006001600160a01b0382166101c0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602281526020018061096f6022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b610780806101ef6000396000f3fe608060405234801561001057600080fd5b50600436106100935760003560e01c80637362d9c8116100665780637362d9c8146101285780637b1039991461014e57806399e0dd7c14610172578063bb5f747b146101e2578063d6cd94731461020857610093565b806310154bad14610098578063291d9549146100c05780633af32abf146100e65780634c5a628c14610120575b600080fd5b6100be600480360360208110156100ae57600080fd5b50356001600160a01b0316610210565b005b6100be600480360360208110156100d657600080fd5b50356001600160a01b0316610260565b61010c600480360360208110156100fc57600080fd5b50356001600160a01b03166102ad565b604080519115158252519081900360200190f35b6100be6102c6565b6100be6004803603602081101561013e57600080fd5b50356001600160a01b03166102d1565b61015661031e565b604080516001600160a01b039092168252519081900360200190f35b6100be6004803603602081101561018857600080fd5b8101906020810181356401000000008111156101a357600080fd5b8201836020820111156101b557600080fd5b803590602001918460018302840111640100000000831117156101d757600080fd5b50909250905061032d565b61010c600480360360208110156101f857600080fd5b50356001600160a01b0316610404565b6100be610416565b61021933610404565b6102545760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d8161041f565b50565b61026933610404565b6102a45760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d81610467565b60006102c060018363ffffffff6104af16565b92915050565b6102cf33610516565b565b6102da33610404565b6103155760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d8161055e565b6002546001600160a01b031690565b610336336102ad565b6103715760405162461bcd60e51b815260040180806020018281038252603a815260200180610712603a913960400191505060405180910390fd5b6002546040516369426cbd60e11b8152602060048201908152602482018490526001600160a01b039092169163d284d97a91859185918190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b1580156103e857600080fd5b505af11580156103fc573d6000803e3d6000fd5b505050505050565b60006102c0818363ffffffff6104af16565b6102cf33610467565b61043060018263ffffffff6105a616565b6040516001600160a01b038216907fee1504a83b6d4a361f4c1dc78ab59bfa30d6a3b6612c403e86bb01ef2984295f90600090a250565b61047860018263ffffffff61062716565b6040516001600160a01b038216907f270d9b30cf5b0793bbfd54c9d5b94aeb49462b8148399000265144a8722da6b690600090a250565b60006001600160a01b0382166104f65760405162461bcd60e51b81526004018080602001828103825260228152602001806106b06022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b61052760008263ffffffff61062716565b6040516001600160a01b038216907f0a8eb35e5ca14b3d6f28e4abf2f128dbab231a58b56e89beb5d636115001e16590600090a250565b61056f60008263ffffffff6105a616565b6040516001600160a01b038216907f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129990600090a250565b6105b082826104af565b15610602576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b61063182826104af565b61066c5760405162461bcd60e51b815260040180806020018281038252602181526020018061068f6021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f206164647265737357686974656c69737441646d696e526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c69737441646d696e20726f6c6557686974656c6973746564526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c697374656420726f6c65a265627a7a72315820debca60946c0819dc5b5c2756c5c1dd8dd8a46f2429fa8a43a4f4362af3030c164736f6c634300050c0032526f6c65733a206163636f756e7420697320746865207a65726f2061646472657373"; +const isSuperArgs = (xs) => xs.length > 1; +class URIPrefixController__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(registry, overrides) { + return super.getDeployTransaction(registry, overrides || {}); + } + deploy(registry, overrides) { + return super.deploy(registry, overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.URIPrefixController__factory = URIPrefixController__factory; +URIPrefixController__factory.bytecode = _bytecode; +URIPrefixController__factory.abi = _abi; diff --git a/dist/types/factories/dot-crypto/contracts/controllers/index.d.ts b/dist/types/factories/dot-crypto/contracts/controllers/index.d.ts new file mode 100644 index 00000000..27f11ddd --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/controllers/index.d.ts @@ -0,0 +1,8 @@ +export { DomainZoneController__factory } from "./DomainZoneController__factory"; +export { IMintingController__factory } from "./IMintingController__factory"; +export { ISignatureController__factory } from "./ISignatureController__factory"; +export { IURIPrefixController__factory } from "./IURIPrefixController__factory"; +export { MintingController__factory } from "./MintingController__factory"; +export { SignatureController__factory } from "./SignatureController__factory"; +export { URIPrefixController__factory } from "./URIPrefixController__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/controllers/index.d.ts.map b/dist/types/factories/dot-crypto/contracts/controllers/index.d.ts.map new file mode 100644 index 00000000..2b4604bb --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/controllers/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/dot-crypto/contracts/controllers/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AAChF,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AAChF,OAAO,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AAChF,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/controllers/index.js b/dist/types/factories/dot-crypto/contracts/controllers/index.js new file mode 100644 index 00000000..e9bd0c2f --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/controllers/index.js @@ -0,0 +1,17 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.URIPrefixController__factory = exports.SignatureController__factory = exports.MintingController__factory = exports.IURIPrefixController__factory = exports.ISignatureController__factory = exports.IMintingController__factory = exports.DomainZoneController__factory = void 0; +var DomainZoneController__factory_1 = require("./DomainZoneController__factory"); +Object.defineProperty(exports, "DomainZoneController__factory", { enumerable: true, get: function () { return DomainZoneController__factory_1.DomainZoneController__factory; } }); +var IMintingController__factory_1 = require("./IMintingController__factory"); +Object.defineProperty(exports, "IMintingController__factory", { enumerable: true, get: function () { return IMintingController__factory_1.IMintingController__factory; } }); +var ISignatureController__factory_1 = require("./ISignatureController__factory"); +Object.defineProperty(exports, "ISignatureController__factory", { enumerable: true, get: function () { return ISignatureController__factory_1.ISignatureController__factory; } }); +var IURIPrefixController__factory_1 = require("./IURIPrefixController__factory"); +Object.defineProperty(exports, "IURIPrefixController__factory", { enumerable: true, get: function () { return IURIPrefixController__factory_1.IURIPrefixController__factory; } }); +var MintingController__factory_1 = require("./MintingController__factory"); +Object.defineProperty(exports, "MintingController__factory", { enumerable: true, get: function () { return MintingController__factory_1.MintingController__factory; } }); +var SignatureController__factory_1 = require("./SignatureController__factory"); +Object.defineProperty(exports, "SignatureController__factory", { enumerable: true, get: function () { return SignatureController__factory_1.SignatureController__factory; } }); +var URIPrefixController__factory_1 = require("./URIPrefixController__factory"); +Object.defineProperty(exports, "URIPrefixController__factory", { enumerable: true, get: function () { return URIPrefixController__factory_1.URIPrefixController__factory; } }); diff --git a/dist/types/factories/dot-crypto/contracts/index.d.ts b/dist/types/factories/dot-crypto/contracts/index.d.ts new file mode 100644 index 00000000..5274e981 --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/index.d.ts @@ -0,0 +1,9 @@ +export * as controllers from "./controllers"; +export * as util from "./util"; +export { CNSRegistry__factory } from "./CNSRegistry__factory"; +export { ICNSRegistry__factory } from "./ICNSRegistry__factory"; +export { IRegistryReader__factory } from "./IRegistryReader__factory"; +export { IResolver__factory } from "./IResolver__factory"; +export { IResolverReader__factory } from "./IResolverReader__factory"; +export { Resolver__factory } from "./Resolver__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/index.d.ts.map b/dist/types/factories/dot-crypto/contracts/index.d.ts.map new file mode 100644 index 00000000..83b242bf --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/factories/dot-crypto/contracts/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,WAAW,MAAM,eAAe,CAAC;AAC7C,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAC/B,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/index.js b/dist/types/factories/dot-crypto/contracts/index.js new file mode 100644 index 00000000..34917c67 --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/index.js @@ -0,0 +1,40 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.Resolver__factory = exports.IResolverReader__factory = exports.IResolver__factory = exports.IRegistryReader__factory = exports.ICNSRegistry__factory = exports.CNSRegistry__factory = exports.util = exports.controllers = void 0; +exports.controllers = __importStar(require("./controllers")); +exports.util = __importStar(require("./util")); +var CNSRegistry__factory_1 = require("./CNSRegistry__factory"); +Object.defineProperty(exports, "CNSRegistry__factory", { enumerable: true, get: function () { return CNSRegistry__factory_1.CNSRegistry__factory; } }); +var ICNSRegistry__factory_1 = require("./ICNSRegistry__factory"); +Object.defineProperty(exports, "ICNSRegistry__factory", { enumerable: true, get: function () { return ICNSRegistry__factory_1.ICNSRegistry__factory; } }); +var IRegistryReader__factory_1 = require("./IRegistryReader__factory"); +Object.defineProperty(exports, "IRegistryReader__factory", { enumerable: true, get: function () { return IRegistryReader__factory_1.IRegistryReader__factory; } }); +var IResolver__factory_1 = require("./IResolver__factory"); +Object.defineProperty(exports, "IResolver__factory", { enumerable: true, get: function () { return IResolver__factory_1.IResolver__factory; } }); +var IResolverReader__factory_1 = require("./IResolverReader__factory"); +Object.defineProperty(exports, "IResolverReader__factory", { enumerable: true, get: function () { return IResolverReader__factory_1.IResolverReader__factory; } }); +var Resolver__factory_1 = require("./Resolver__factory"); +Object.defineProperty(exports, "Resolver__factory", { enumerable: true, get: function () { return Resolver__factory_1.Resolver__factory; } }); diff --git a/dist/types/factories/dot-crypto/contracts/util/BulkWhitelistedRole__factory.d.ts b/dist/types/factories/dot-crypto/contracts/util/BulkWhitelistedRole__factory.d.ts new file mode 100644 index 00000000..40922906 --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/util/BulkWhitelistedRole__factory.d.ts @@ -0,0 +1,171 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../../common"; +import type { BulkWhitelistedRole, BulkWhitelistedRoleInterface } from "../../../../dot-crypto/contracts/util/BulkWhitelistedRole"; +declare type BulkWhitelistedRoleConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class BulkWhitelistedRole__factory extends ContractFactory { + constructor(...args: BulkWhitelistedRoleConstructorParams); + getDeployTransaction(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): BulkWhitelistedRole__factory; + static readonly bytecode = "0x6080604052610016336001600160e01b0361001b16565b61018f565b61003381600061006a60201b61065e1790919060201c565b6040516001600160a01b038216907f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129990600090a250565b61007d82826001600160e01b0361010e16565b156100e957604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b60006001600160a01b03821661016f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602281526020018061099c6022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b6107fe8061019e6000396000f3fe608060405234801561001057600080fd5b50600436106100935760003560e01c80637362d9c8116100665780637362d9c814610128578063bb5f747b1461014e578063d6cd947314610174578063f6e491aa1461017c578063f8a6c3d61461021f57610093565b806310154bad14610098578063291d9549146100c05780633af32abf146100e65780634c5a628c14610120575b600080fd5b6100be600480360360208110156100ae57600080fd5b50356001600160a01b03166102c2565b005b6100be600480360360208110156100d657600080fd5b50356001600160a01b0316610312565b61010c600480360360208110156100fc57600080fd5b50356001600160a01b031661035f565b604080519115158252519081900360200190f35b6100be610378565b6100be6004803603602081101561013e57600080fd5b50356001600160a01b0316610383565b61010c6004803603602081101561016457600080fd5b50356001600160a01b03166103d0565b6100be6103e2565b6100be6004803603602081101561019257600080fd5b8101906020810181356401000000008111156101ad57600080fd5b8201836020820111156101bf57600080fd5b803590602001918460208302840111640100000000831117156101e157600080fd5b9190808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152509295506103eb945050505050565b6100be6004803603602081101561023557600080fd5b81019060208101813564010000000081111561025057600080fd5b82018360208201111561026257600080fd5b8035906020019184602083028401116401000000008311171561028457600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250929550610463945050505050565b6102cb336103d0565b6103065760405162461bcd60e51b815260040180806020018281038252604081526020018061078a6040913960400191505060405180910390fd5b61030f816104d7565b50565b61031b336103d0565b6103565760405162461bcd60e51b815260040180806020018281038252604081526020018061078a6040913960400191505060405180910390fd5b61030f8161051f565b600061037260018363ffffffff61056716565b92915050565b610381336105ce565b565b61038c336103d0565b6103c75760405162461bcd60e51b815260040180806020018281038252604081526020018061078a6040913960400191505060405180910390fd5b61030f81610616565b6000610372818363ffffffff61056716565b6103813361051f565b6103f4336103d0565b61042f5760405162461bcd60e51b815260040180806020018281038252604081526020018061078a6040913960400191505060405180910390fd5b60005b815181101561045f5761045782828151811061044a57fe5b60200260200101516104d7565b600101610432565b5050565b61046c336103d0565b6104a75760405162461bcd60e51b815260040180806020018281038252604081526020018061078a6040913960400191505060405180910390fd5b60005b815181101561045f576104cf8282815181106104c257fe5b602002602001015161051f565b6001016104aa565b6104e860018263ffffffff61065e16565b6040516001600160a01b038216907fee1504a83b6d4a361f4c1dc78ab59bfa30d6a3b6612c403e86bb01ef2984295f90600090a250565b61053060018263ffffffff6106df16565b6040516001600160a01b038216907f270d9b30cf5b0793bbfd54c9d5b94aeb49462b8148399000265144a8722da6b690600090a250565b60006001600160a01b0382166105ae5760405162461bcd60e51b81526004018080602001828103825260228152602001806107686022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b6105df60008263ffffffff6106df16565b6040516001600160a01b038216907f0a8eb35e5ca14b3d6f28e4abf2f128dbab231a58b56e89beb5d636115001e16590600090a250565b61062760008263ffffffff61065e16565b6040516001600160a01b038216907f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129990600090a250565b6106688282610567565b156106ba576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b6106e98282610567565b6107245760405162461bcd60e51b81526004018080602001828103825260218152602001806107476021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f206164647265737357686974656c69737441646d696e526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c69737441646d696e20726f6c65a265627a7a7231582035dbd8362e05f6fd37a31d481003d9409cc607f91fc47e2eab1cf7fff7af997064736f6c634300050c0032526f6c65733a206163636f756e7420697320746865207a65726f2061646472657373"; + static readonly abi: readonly [{ + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "WhitelistAdminAdded"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "WhitelistAdminRemoved"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "WhitelistedAdded"; + readonly type: "event"; + }, { + readonly anonymous: false; + readonly inputs: readonly [{ + readonly indexed: true; + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "WhitelistedRemoved"; + readonly type: "event"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "addWhitelistAdmin"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "addWhitelisted"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address[]"; + readonly name: "accounts"; + readonly type: "address[]"; + }]; + readonly name: "bulkAddWhitelisted"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address[]"; + readonly name: "accounts"; + readonly type: "address[]"; + }]; + readonly name: "bulkRemoveWhitelisted"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "isWhitelistAdmin"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "isWhitelisted"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "removeWhitelisted"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly []; + readonly name: "renounceWhitelistAdmin"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly []; + readonly name: "renounceWhitelisted"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): BulkWhitelistedRoleInterface; + static connect(address: string, runner?: ContractRunner | null): BulkWhitelistedRole; +} +export {}; +//# sourceMappingURL=BulkWhitelistedRole__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/util/BulkWhitelistedRole__factory.d.ts.map b/dist/types/factories/dot-crypto/contracts/util/BulkWhitelistedRole__factory.d.ts.map new file mode 100644 index 00000000..88ba0912 --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/util/BulkWhitelistedRole__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"BulkWhitelistedRole__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/dot-crypto/contracts/util/BulkWhitelistedRole__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,KAAK,EACV,mBAAmB,EACnB,4BAA4B,EAC7B,MAAM,2DAA2D,CAAC;AAmMnE,aAAK,oCAAoC,GACrC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,4BAA6B,SAAQ,eAAe;gBACnD,GAAG,IAAI,EAAE,oCAAoC;IAQhD,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CACd,MAAM,EAAE,cAAc,GAAG,IAAI,GAC5B,4BAA4B;IAI/B,MAAM,CAAC,QAAQ,CAAC,QAAQ,o4JAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,4BAA4B;IAGtD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,mBAAmB;CAOvB"} \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/util/BulkWhitelistedRole__factory.js b/dist/types/factories/dot-crypto/contracts/util/BulkWhitelistedRole__factory.js new file mode 100644 index 00000000..2b99afd4 --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/util/BulkWhitelistedRole__factory.js @@ -0,0 +1,223 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.BulkWhitelistedRole__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "WhitelistAdminAdded", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "WhitelistAdminRemoved", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "WhitelistedAdded", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "WhitelistedRemoved", + type: "event", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "addWhitelistAdmin", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "addWhitelisted", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address[]", + name: "accounts", + type: "address[]", + }, + ], + name: "bulkAddWhitelisted", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address[]", + name: "accounts", + type: "address[]", + }, + ], + name: "bulkRemoveWhitelisted", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "isWhitelistAdmin", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "isWhitelisted", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "removeWhitelisted", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [], + name: "renounceWhitelistAdmin", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [], + name: "renounceWhitelisted", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, +]; +const _bytecode = "0x6080604052610016336001600160e01b0361001b16565b61018f565b61003381600061006a60201b61065e1790919060201c565b6040516001600160a01b038216907f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129990600090a250565b61007d82826001600160e01b0361010e16565b156100e957604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b60006001600160a01b03821661016f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602281526020018061099c6022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b6107fe8061019e6000396000f3fe608060405234801561001057600080fd5b50600436106100935760003560e01c80637362d9c8116100665780637362d9c814610128578063bb5f747b1461014e578063d6cd947314610174578063f6e491aa1461017c578063f8a6c3d61461021f57610093565b806310154bad14610098578063291d9549146100c05780633af32abf146100e65780634c5a628c14610120575b600080fd5b6100be600480360360208110156100ae57600080fd5b50356001600160a01b03166102c2565b005b6100be600480360360208110156100d657600080fd5b50356001600160a01b0316610312565b61010c600480360360208110156100fc57600080fd5b50356001600160a01b031661035f565b604080519115158252519081900360200190f35b6100be610378565b6100be6004803603602081101561013e57600080fd5b50356001600160a01b0316610383565b61010c6004803603602081101561016457600080fd5b50356001600160a01b03166103d0565b6100be6103e2565b6100be6004803603602081101561019257600080fd5b8101906020810181356401000000008111156101ad57600080fd5b8201836020820111156101bf57600080fd5b803590602001918460208302840111640100000000831117156101e157600080fd5b9190808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152509295506103eb945050505050565b6100be6004803603602081101561023557600080fd5b81019060208101813564010000000081111561025057600080fd5b82018360208201111561026257600080fd5b8035906020019184602083028401116401000000008311171561028457600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250929550610463945050505050565b6102cb336103d0565b6103065760405162461bcd60e51b815260040180806020018281038252604081526020018061078a6040913960400191505060405180910390fd5b61030f816104d7565b50565b61031b336103d0565b6103565760405162461bcd60e51b815260040180806020018281038252604081526020018061078a6040913960400191505060405180910390fd5b61030f8161051f565b600061037260018363ffffffff61056716565b92915050565b610381336105ce565b565b61038c336103d0565b6103c75760405162461bcd60e51b815260040180806020018281038252604081526020018061078a6040913960400191505060405180910390fd5b61030f81610616565b6000610372818363ffffffff61056716565b6103813361051f565b6103f4336103d0565b61042f5760405162461bcd60e51b815260040180806020018281038252604081526020018061078a6040913960400191505060405180910390fd5b60005b815181101561045f5761045782828151811061044a57fe5b60200260200101516104d7565b600101610432565b5050565b61046c336103d0565b6104a75760405162461bcd60e51b815260040180806020018281038252604081526020018061078a6040913960400191505060405180910390fd5b60005b815181101561045f576104cf8282815181106104c257fe5b602002602001015161051f565b6001016104aa565b6104e860018263ffffffff61065e16565b6040516001600160a01b038216907fee1504a83b6d4a361f4c1dc78ab59bfa30d6a3b6612c403e86bb01ef2984295f90600090a250565b61053060018263ffffffff6106df16565b6040516001600160a01b038216907f270d9b30cf5b0793bbfd54c9d5b94aeb49462b8148399000265144a8722da6b690600090a250565b60006001600160a01b0382166105ae5760405162461bcd60e51b81526004018080602001828103825260228152602001806107686022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b6105df60008263ffffffff6106df16565b6040516001600160a01b038216907f0a8eb35e5ca14b3d6f28e4abf2f128dbab231a58b56e89beb5d636115001e16590600090a250565b61062760008263ffffffff61065e16565b6040516001600160a01b038216907f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129990600090a250565b6106688282610567565b156106ba576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b6106e98282610567565b6107245760405162461bcd60e51b81526004018080602001828103825260218152602001806107476021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f206164647265737357686974656c69737441646d696e526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c69737441646d696e20726f6c65a265627a7a7231582035dbd8362e05f6fd37a31d481003d9409cc607f91fc47e2eab1cf7fff7af997064736f6c634300050c0032526f6c65733a206163636f756e7420697320746865207a65726f2061646472657373"; +const isSuperArgs = (xs) => xs.length > 1; +class BulkWhitelistedRole__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(overrides) { + return super.getDeployTransaction(overrides || {}); + } + deploy(overrides) { + return super.deploy(overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.BulkWhitelistedRole__factory = BulkWhitelistedRole__factory; +BulkWhitelistedRole__factory.bytecode = _bytecode; +BulkWhitelistedRole__factory.abi = _abi; diff --git a/dist/types/factories/dot-crypto/contracts/util/ControllerRole__factory.d.ts b/dist/types/factories/dot-crypto/contracts/util/ControllerRole__factory.d.ts new file mode 100644 index 00000000..7ec841ef --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/util/ControllerRole__factory.d.ts @@ -0,0 +1,64 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../../common"; +import type { ControllerRole, ControllerRoleInterface } from "../../../../dot-crypto/contracts/util/ControllerRole"; +declare type ControllerRoleConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class ControllerRole__factory extends ContractFactory { + constructor(...args: ControllerRoleConstructorParams); + getDeployTransaction(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): ControllerRole__factory; + static readonly bytecode = "0x608060405234801561001057600080fd5b50610023336001600160e01b0361002816565b610168565b61004081600061004360201b6101e11790919060201c565b50565b61005682826001600160e01b036100e716565b156100c257604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b60006001600160a01b038216610148576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260228152602001806104516022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b6102da806101776000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806366ac3b6814610046578063a7fc7a0714610050578063b429afeb14610076575b600080fd5b61004e6100b0565b005b61004e6004803603602081101561006657600080fd5b50356001600160a01b03166100bb565b61009c6004803603602081101561008c57600080fd5b50356001600160a01b03166100d9565b604080519115158252519081900360200190f35b6100b9336100f1565b565b6100c4336100d9565b6100cd57600080fd5b6100d681610102565b50565b60006100eb818363ffffffff61011316565b92915050565b6100d660008263ffffffff61017a16565b6100d660008263ffffffff6101e116565b60006001600160a01b03821661015a5760405162461bcd60e51b81526004018080602001828103825260228152602001806102846022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b6101848282610113565b6101bf5760405162461bcd60e51b81526004018080602001828103825260218152602001806102636021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff19169055565b6101eb8282610113565b1561023d576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff1916600117905556fe526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f2061646472657373a265627a7a723158203f5cad0be955d3ba0bdc521b5cecdcc2ff4d35429e8c84794fb194ccfc853b6664736f6c634300050c0032526f6c65733a206163636f756e7420697320746865207a65726f2061646472657373"; + static readonly abi: readonly [{ + readonly inputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "constructor"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "addController"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "address"; + readonly name: "account"; + readonly type: "address"; + }]; + readonly name: "isController"; + readonly outputs: readonly [{ + readonly internalType: "bool"; + readonly name: ""; + readonly type: "bool"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly []; + readonly name: "renounceController"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): ControllerRoleInterface; + static connect(address: string, runner?: ContractRunner | null): ControllerRole; +} +export {}; +//# sourceMappingURL=ControllerRole__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/util/ControllerRole__factory.d.ts.map b/dist/types/factories/dot-crypto/contracts/util/ControllerRole__factory.d.ts.map new file mode 100644 index 00000000..820da9f3 --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/util/ControllerRole__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"ControllerRole__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/dot-crypto/contracts/util/ControllerRole__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,KAAK,EACV,cAAc,EACd,uBAAuB,EACxB,MAAM,sDAAsD,CAAC;AA2D9D,aAAK,+BAA+B,GAChC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,uBAAwB,SAAQ,eAAe;gBAC9C,GAAG,IAAI,EAAE,+BAA+B;IAQ3C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,uBAAuB;IAIxE,MAAM,CAAC,QAAQ,CAAC,QAAQ,8uEAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,uBAAuB;IAGjD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,cAAc;CAGlB"} \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/util/ControllerRole__factory.js b/dist/types/factories/dot-crypto/contracts/util/ControllerRole__factory.js new file mode 100644 index 00000000..1dca7239 --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/util/ControllerRole__factory.js @@ -0,0 +1,87 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ControllerRole__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [], + payable: false, + stateMutability: "nonpayable", + type: "constructor", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "addController", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "isController", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [], + name: "renounceController", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, +]; +const _bytecode = "0x608060405234801561001057600080fd5b50610023336001600160e01b0361002816565b610168565b61004081600061004360201b6101e11790919060201c565b50565b61005682826001600160e01b036100e716565b156100c257604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b60006001600160a01b038216610148576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260228152602001806104516022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b6102da806101776000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806366ac3b6814610046578063a7fc7a0714610050578063b429afeb14610076575b600080fd5b61004e6100b0565b005b61004e6004803603602081101561006657600080fd5b50356001600160a01b03166100bb565b61009c6004803603602081101561008c57600080fd5b50356001600160a01b03166100d9565b604080519115158252519081900360200190f35b6100b9336100f1565b565b6100c4336100d9565b6100cd57600080fd5b6100d681610102565b50565b60006100eb818363ffffffff61011316565b92915050565b6100d660008263ffffffff61017a16565b6100d660008263ffffffff6101e116565b60006001600160a01b03821661015a5760405162461bcd60e51b81526004018080602001828103825260228152602001806102846022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b6101848282610113565b6101bf5760405162461bcd60e51b81526004018080602001828103825260218152602001806102636021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff19169055565b6101eb8282610113565b1561023d576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff1916600117905556fe526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f2061646472657373a265627a7a723158203f5cad0be955d3ba0bdc521b5cecdcc2ff4d35429e8c84794fb194ccfc853b6664736f6c634300050c0032526f6c65733a206163636f756e7420697320746865207a65726f2061646472657373"; +const isSuperArgs = (xs) => xs.length > 1; +class ControllerRole__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(overrides) { + return super.getDeployTransaction(overrides || {}); + } + deploy(overrides) { + return super.deploy(overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.ControllerRole__factory = ControllerRole__factory; +ControllerRole__factory.bytecode = _bytecode; +ControllerRole__factory.abi = _abi; diff --git a/dist/types/factories/dot-crypto/contracts/util/FreeMinter__factory.d.ts b/dist/types/factories/dot-crypto/contracts/util/FreeMinter__factory.d.ts new file mode 100644 index 00000000..4c1b9b3a --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/util/FreeMinter__factory.d.ts @@ -0,0 +1,116 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, AddressLike, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../../common"; +import type { FreeMinter, FreeMinterInterface } from "../../../../dot-crypto/contracts/util/FreeMinter"; +declare type FreeMinterConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class FreeMinter__factory extends ContractFactory { + constructor(...args: FreeMinterConstructorParams); + getDeployTransaction(mintingController: AddressLike, resolver: AddressLike, registry: AddressLike, overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(mintingController: AddressLike, resolver: AddressLike, registry: AddressLike, overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): FreeMinter__factory; + static readonly bytecode = "0x608060405234801561001057600080fd5b50604051610a45380380610a4583398101604081905261002f91610082565b600080546001600160a01b039485166001600160a01b031991821617909155600180549385169382169390931790925560028054919093169116179055610108565b805161007c816100f1565b92915050565b60008060006060848603121561009757600080fd5b60006100a38686610071565b93505060206100b486828701610071565b92505060406100c586828701610071565b9150509250925092565b600061007c826100e5565b600061007c826100cf565b6001600160a01b031690565b6100fa816100da565b811461010557600080fd5b50565b61092e806101176000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c80639dcb816a1461005c578063a3f4df7e14610071578063bba652d91461008f578063f3fe12c9146100a2578063ffa1ad74146100b5575b600080fd5b61006f61006a366004610554565b6100bd565b005b610079610277565b60405161008691906107d4565b60405180910390f35b61006f61009d3660046104ff565b6102b0565b61006f6100b03660046104bd565b6102f7565b61007961033d565b606061010088888080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508a925061035e915050565b90508361010d575061026e565b6002546040805163ebf0c71760e01b815290516000926001600160a01b0316916368b62d3291839163ebf0c717916004808301926020929190829003018186803b15801561015a57600080fd5b505afa15801561016e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610192919081019061060a565b846040518363ffffffff1660e01b81526004016101b09291906107ec565b60206040518083038186803b1580156101c857600080fd5b505afa1580156101dc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610200919081019061060a565b600154604051633a0deb9d60e21b81529192506001600160a01b03169063e837ae74906102399089908990899089908890600401610794565b600060405180830381600087803b15801561025357600080fd5b505af1158015610267573d6000803e3d6000fd5b5050505050505b50505050505050565b6040518060400160405280601f81526020017f556e73746f707061626c65204672656520446f6d61696e73204d696e7465720081525081565b6102f183838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525085925061035e915050565b50505050565b61033882828080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525033925061035e915050565b505050565b604051806040016040528060058152602001640302e312e360dc1b81525081565b6060806040518060400160405280600a8152602001697564746573746465762d60b01b8152508460405160200161039692919061074d565b60408051601f198184030181529082905260005460015463c36c212560e01b84529193506001600160a01b039081169263c36c2125926103e0928892879290911690600401610765565b600060405180830381600087803b1580156103fa57600080fd5b505af115801561040e573d6000803e3d6000fd5b509293505050505b92915050565b8035610416816108cb565b60008083601f84011261043957600080fd5b50813567ffffffffffffffff81111561045157600080fd5b60208301915083602082028301111561046957600080fd5b9250929050565b60008083601f84011261048257600080fd5b50813567ffffffffffffffff81111561049a57600080fd5b60208301915083600182028301111561046957600080fd5b8051610416816108e2565b600080602083850312156104d057600080fd5b823567ffffffffffffffff8111156104e757600080fd5b6104f385828601610470565b92509250509250929050565b60008060006040848603121561051457600080fd5b833567ffffffffffffffff81111561052b57600080fd5b61053786828701610470565b9350935050602061054a8682870161041c565b9150509250925092565b60008060008060008060006080888a03121561056f57600080fd5b873567ffffffffffffffff81111561058657600080fd5b6105928a828b01610470565b975097505060206105a58a828b0161041c565b955050604088013567ffffffffffffffff8111156105c257600080fd5b6105ce8a828b01610427565b9450945050606088013567ffffffffffffffff8111156105ed57600080fd5b6105f98a828b01610427565b925092505092959891949750929550565b60006020828403121561061c57600080fd5b600061062884846104b2565b949350505050565b60006106288484846106bb565b61064681610878565b82525050565b60006106588385610819565b93508360208402850161066a8461080c565b8060005b878110156106ae5784840389526106858284610827565b610690868284610630565b955061069b84610813565b60209b909b019a9350505060010161066e565b5091979650505050505050565b60006106c78385610819565b93506106d4838584610889565b6106dd836108c1565b9093019392505050565b60006106f28261080f565b6106fc8185610819565b935061070c818560208601610895565b6106dd816108c1565b60006107208261080f565b61072a8185610822565b935061073a818560208601610895565b9290920192915050565b6106468161080c565b60006107598285610715565b91506106288284610715565b60608101610773828661063d565b818103602083015261078581856106e7565b9050610628604083018461063d565b606080825281016107a681878961064c565b905081810360208301526107bb81858761064c565b90506107ca6040830184610744565b9695505050505050565b602080825281016107e581846106e7565b9392505050565b604081016107fa8285610744565b818103602083015261062881846106e7565b90565b5190565b60200190565b90815260200190565b919050565b6000808335601e193685900301811261083f57600080fd5b83810160208101935035915067ffffffffffffffff82111561086057600080fd5b3682900384131561087057600080fd5b509250929050565b60006001600160a01b038216610416565b82818337506000910152565b60005b838110156108b0578181015183820152602001610898565b838111156102f15750506000910152565b601f01601f191690565b6108d481610878565b81146108df57600080fd5b50565b6108d48161080c56fea365627a7a723158200b9239a7e176a847a51bd6184cfde12825afe2b8c85d40d8c3f7dd62517ee6fa6c6578706572696d656e74616cf564736f6c634300050c0040"; + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "contract MintingController"; + readonly name: "mintingController"; + readonly type: "address"; + }, { + readonly internalType: "contract IResolver"; + readonly name: "resolver"; + readonly type: "address"; + }, { + readonly internalType: "contract IRegistryReader"; + readonly name: "registry"; + readonly type: "address"; + }]; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "constructor"; + }, { + readonly constant: true; + readonly inputs: readonly []; + readonly name: "NAME"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly []; + readonly name: "VERSION"; + readonly outputs: readonly [{ + readonly internalType: "string"; + readonly name: ""; + readonly type: "string"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }]; + readonly name: "claim"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }, { + readonly internalType: "address"; + readonly name: "receiver"; + readonly type: "address"; + }]; + readonly name: "claimTo"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }, { + readonly constant: false; + readonly inputs: readonly [{ + readonly internalType: "string"; + readonly name: "label"; + readonly type: "string"; + }, { + readonly internalType: "address"; + readonly name: "receiver"; + readonly type: "address"; + }, { + readonly internalType: "string[]"; + readonly name: "keys"; + readonly type: "string[]"; + }, { + readonly internalType: "string[]"; + readonly name: "values"; + readonly type: "string[]"; + }]; + readonly name: "claimToWithRecords"; + readonly outputs: readonly []; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "function"; + }]; + static createInterface(): FreeMinterInterface; + static connect(address: string, runner?: ContractRunner | null): FreeMinter; +} +export {}; +//# sourceMappingURL=FreeMinter__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/util/FreeMinter__factory.d.ts.map b/dist/types/factories/dot-crypto/contracts/util/FreeMinter__factory.d.ts.map new file mode 100644 index 00000000..d969b5d1 --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/util/FreeMinter__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"FreeMinter__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/dot-crypto/contracts/util/FreeMinter__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,MAAM,EACN,WAAW,EACX,yBAAyB,EACzB,cAAc,EACf,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,KAAK,EACV,UAAU,EACV,mBAAmB,EACpB,MAAM,kDAAkD,CAAC;AA6H1D,aAAK,2BAA2B,GAC5B,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,mBAAoB,SAAQ,eAAe;gBAC1C,GAAG,IAAI,EAAE,2BAA2B;IAQvC,oBAAoB,CAC3B,iBAAiB,EAAE,WAAW,EAC9B,QAAQ,EAAE,WAAW,EACrB,QAAQ,EAAE,WAAW,EACrB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAQ5B,MAAM,CACb,iBAAiB,EAAE,WAAW,EAC9B,QAAQ,EAAE,WAAW,EACrB,QAAQ,EAAE,WAAW,EACrB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAStB,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,mBAAmB;IAIpE,MAAM,CAAC,QAAQ,CAAC,QAAQ,kpKAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,mBAAmB;IAG7C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,UAAU;CAG5E"} \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/util/FreeMinter__factory.js b/dist/types/factories/dot-crypto/contracts/util/FreeMinter__factory.js new file mode 100644 index 00000000..7ae21e1a --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/util/FreeMinter__factory.js @@ -0,0 +1,153 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.FreeMinter__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "contract MintingController", + name: "mintingController", + type: "address", + }, + { + internalType: "contract IResolver", + name: "resolver", + type: "address", + }, + { + internalType: "contract IRegistryReader", + name: "registry", + type: "address", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "constructor", + }, + { + constant: true, + inputs: [], + name: "NAME", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "VERSION", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "string", + name: "label", + type: "string", + }, + ], + name: "claim", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "string", + name: "label", + type: "string", + }, + { + internalType: "address", + name: "receiver", + type: "address", + }, + ], + name: "claimTo", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "string", + name: "label", + type: "string", + }, + { + internalType: "address", + name: "receiver", + type: "address", + }, + { + internalType: "string[]", + name: "keys", + type: "string[]", + }, + { + internalType: "string[]", + name: "values", + type: "string[]", + }, + ], + name: "claimToWithRecords", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, +]; +const _bytecode = "0x608060405234801561001057600080fd5b50604051610a45380380610a4583398101604081905261002f91610082565b600080546001600160a01b039485166001600160a01b031991821617909155600180549385169382169390931790925560028054919093169116179055610108565b805161007c816100f1565b92915050565b60008060006060848603121561009757600080fd5b60006100a38686610071565b93505060206100b486828701610071565b92505060406100c586828701610071565b9150509250925092565b600061007c826100e5565b600061007c826100cf565b6001600160a01b031690565b6100fa816100da565b811461010557600080fd5b50565b61092e806101176000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c80639dcb816a1461005c578063a3f4df7e14610071578063bba652d91461008f578063f3fe12c9146100a2578063ffa1ad74146100b5575b600080fd5b61006f61006a366004610554565b6100bd565b005b610079610277565b60405161008691906107d4565b60405180910390f35b61006f61009d3660046104ff565b6102b0565b61006f6100b03660046104bd565b6102f7565b61007961033d565b606061010088888080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508a925061035e915050565b90508361010d575061026e565b6002546040805163ebf0c71760e01b815290516000926001600160a01b0316916368b62d3291839163ebf0c717916004808301926020929190829003018186803b15801561015a57600080fd5b505afa15801561016e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610192919081019061060a565b846040518363ffffffff1660e01b81526004016101b09291906107ec565b60206040518083038186803b1580156101c857600080fd5b505afa1580156101dc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610200919081019061060a565b600154604051633a0deb9d60e21b81529192506001600160a01b03169063e837ae74906102399089908990899089908890600401610794565b600060405180830381600087803b15801561025357600080fd5b505af1158015610267573d6000803e3d6000fd5b5050505050505b50505050505050565b6040518060400160405280601f81526020017f556e73746f707061626c65204672656520446f6d61696e73204d696e7465720081525081565b6102f183838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525085925061035e915050565b50505050565b61033882828080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525033925061035e915050565b505050565b604051806040016040528060058152602001640302e312e360dc1b81525081565b6060806040518060400160405280600a8152602001697564746573746465762d60b01b8152508460405160200161039692919061074d565b60408051601f198184030181529082905260005460015463c36c212560e01b84529193506001600160a01b039081169263c36c2125926103e0928892879290911690600401610765565b600060405180830381600087803b1580156103fa57600080fd5b505af115801561040e573d6000803e3d6000fd5b509293505050505b92915050565b8035610416816108cb565b60008083601f84011261043957600080fd5b50813567ffffffffffffffff81111561045157600080fd5b60208301915083602082028301111561046957600080fd5b9250929050565b60008083601f84011261048257600080fd5b50813567ffffffffffffffff81111561049a57600080fd5b60208301915083600182028301111561046957600080fd5b8051610416816108e2565b600080602083850312156104d057600080fd5b823567ffffffffffffffff8111156104e757600080fd5b6104f385828601610470565b92509250509250929050565b60008060006040848603121561051457600080fd5b833567ffffffffffffffff81111561052b57600080fd5b61053786828701610470565b9350935050602061054a8682870161041c565b9150509250925092565b60008060008060008060006080888a03121561056f57600080fd5b873567ffffffffffffffff81111561058657600080fd5b6105928a828b01610470565b975097505060206105a58a828b0161041c565b955050604088013567ffffffffffffffff8111156105c257600080fd5b6105ce8a828b01610427565b9450945050606088013567ffffffffffffffff8111156105ed57600080fd5b6105f98a828b01610427565b925092505092959891949750929550565b60006020828403121561061c57600080fd5b600061062884846104b2565b949350505050565b60006106288484846106bb565b61064681610878565b82525050565b60006106588385610819565b93508360208402850161066a8461080c565b8060005b878110156106ae5784840389526106858284610827565b610690868284610630565b955061069b84610813565b60209b909b019a9350505060010161066e565b5091979650505050505050565b60006106c78385610819565b93506106d4838584610889565b6106dd836108c1565b9093019392505050565b60006106f28261080f565b6106fc8185610819565b935061070c818560208601610895565b6106dd816108c1565b60006107208261080f565b61072a8185610822565b935061073a818560208601610895565b9290920192915050565b6106468161080c565b60006107598285610715565b91506106288284610715565b60608101610773828661063d565b818103602083015261078581856106e7565b9050610628604083018461063d565b606080825281016107a681878961064c565b905081810360208301526107bb81858761064c565b90506107ca6040830184610744565b9695505050505050565b602080825281016107e581846106e7565b9392505050565b604081016107fa8285610744565b818103602083015261062881846106e7565b90565b5190565b60200190565b90815260200190565b919050565b6000808335601e193685900301811261083f57600080fd5b83810160208101935035915067ffffffffffffffff82111561086057600080fd5b3682900384131561087057600080fd5b509250929050565b60006001600160a01b038216610416565b82818337506000910152565b60005b838110156108b0578181015183820152602001610898565b838111156102f15750506000910152565b601f01601f191690565b6108d481610878565b81146108df57600080fd5b50565b6108d48161080c56fea365627a7a723158200b9239a7e176a847a51bd6184cfde12825afe2b8c85d40d8c3f7dd62517ee6fa6c6578706572696d656e74616cf564736f6c634300050c0040"; +const isSuperArgs = (xs) => xs.length > 1; +class FreeMinter__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(mintingController, resolver, registry, overrides) { + return super.getDeployTransaction(mintingController, resolver, registry, overrides || {}); + } + deploy(mintingController, resolver, registry, overrides) { + return super.deploy(mintingController, resolver, registry, overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.FreeMinter__factory = FreeMinter__factory; +FreeMinter__factory.bytecode = _bytecode; +FreeMinter__factory.abi = _abi; diff --git a/dist/types/factories/dot-crypto/contracts/util/SignatureUtil__factory.d.ts b/dist/types/factories/dot-crypto/contracts/util/SignatureUtil__factory.d.ts new file mode 100644 index 00000000..35b7edef --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/util/SignatureUtil__factory.d.ts @@ -0,0 +1,60 @@ +import { ContractFactory, ContractTransactionResponse } from "ethers"; +import type { Signer, AddressLike, ContractDeployTransaction, ContractRunner } from "ethers"; +import type { NonPayableOverrides } from "../../../../common"; +import type { SignatureUtil, SignatureUtilInterface } from "../../../../dot-crypto/contracts/util/SignatureUtil"; +declare type SignatureUtilConstructorParams = [signer?: Signer] | ConstructorParameters; +export declare class SignatureUtil__factory extends ContractFactory { + constructor(...args: SignatureUtilConstructorParams); + getDeployTransaction(registry: AddressLike, overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + deploy(registry: AddressLike, overrides?: NonPayableOverrides & { + from?: string; + }): Promise; + connect(runner: ContractRunner | null): SignatureUtil__factory; + static readonly bytecode = "0x608060405234801561001057600080fd5b5060405161013d38038061013d8339818101604052602081101561003357600080fd5b5051600180546001600160a01b0319166001600160a01b0390921691909117905560db806100626000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c80636ccbae5f1460375780637b103999146063575b600080fd5b605160048036036020811015604b57600080fd5b50356085565b60408051918252519081900360200190f35b60696097565b604080516001600160a01b039092168252519081900360200190f35b60009081526020819052604090205490565b6001546001600160a01b03169056fea265627a7a723158209ce28ed4bcc27cb55d265eaa0611259b785b62de333c7977452c1130d6df0bbc64736f6c634300050c0032"; + static readonly abi: readonly [{ + readonly inputs: readonly [{ + readonly internalType: "contract CNSRegistry"; + readonly name: "registry"; + readonly type: "address"; + }]; + readonly payable: false; + readonly stateMutability: "nonpayable"; + readonly type: "constructor"; + }, { + readonly constant: true; + readonly inputs: readonly [{ + readonly internalType: "uint256"; + readonly name: "tokenId"; + readonly type: "uint256"; + }]; + readonly name: "nonceOf"; + readonly outputs: readonly [{ + readonly internalType: "uint256"; + readonly name: ""; + readonly type: "uint256"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }, { + readonly constant: true; + readonly inputs: readonly []; + readonly name: "registry"; + readonly outputs: readonly [{ + readonly internalType: "address"; + readonly name: ""; + readonly type: "address"; + }]; + readonly payable: false; + readonly stateMutability: "view"; + readonly type: "function"; + }]; + static createInterface(): SignatureUtilInterface; + static connect(address: string, runner?: ContractRunner | null): SignatureUtil; +} +export {}; +//# sourceMappingURL=SignatureUtil__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/util/SignatureUtil__factory.d.ts.map b/dist/types/factories/dot-crypto/contracts/util/SignatureUtil__factory.d.ts.map new file mode 100644 index 00000000..ec190f86 --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/util/SignatureUtil__factory.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"SignatureUtil__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/dot-crypto/contracts/util/SignatureUtil__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,MAAM,EACN,WAAW,EACX,yBAAyB,EACzB,cAAc,EACf,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,KAAK,EACV,aAAa,EACb,sBAAsB,EACvB,MAAM,qDAAqD,CAAC;AAwD7D,aAAK,8BAA8B,GAC/B,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,sBAAuB,SAAQ,eAAe;gBAC7C,GAAG,IAAI,EAAE,8BAA8B;IAQ1C,oBAAoB,CAC3B,QAAQ,EAAE,WAAW,EACrB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CACb,QAAQ,EAAE,WAAW,EACrB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAItB,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,sBAAsB;IAIvE,MAAM,CAAC,QAAQ,CAAC,QAAQ,koBAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,sBAAsB;IAGhD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,aAAa;CAGjB"} \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/util/SignatureUtil__factory.js b/dist/types/factories/dot-crypto/contracts/util/SignatureUtil__factory.js new file mode 100644 index 00000000..0f0eaacc --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/util/SignatureUtil__factory.js @@ -0,0 +1,84 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.SignatureUtil__factory = void 0; +const ethers_1 = require("ethers"); +const _abi = [ + { + inputs: [ + { + internalType: "contract CNSRegistry", + name: "registry", + type: "address", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "constructor", + }, + { + constant: true, + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "nonceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "registry", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, +]; +const _bytecode = "0x608060405234801561001057600080fd5b5060405161013d38038061013d8339818101604052602081101561003357600080fd5b5051600180546001600160a01b0319166001600160a01b0390921691909117905560db806100626000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c80636ccbae5f1460375780637b103999146063575b600080fd5b605160048036036020811015604b57600080fd5b50356085565b60408051918252519081900360200190f35b60696097565b604080516001600160a01b039092168252519081900360200190f35b60009081526020819052604090205490565b6001546001600160a01b03169056fea265627a7a723158209ce28ed4bcc27cb55d265eaa0611259b785b62de333c7977452c1130d6df0bbc64736f6c634300050c0032"; +const isSuperArgs = (xs) => xs.length > 1; +class SignatureUtil__factory extends ethers_1.ContractFactory { + constructor(...args) { + if (isSuperArgs(args)) { + super(...args); + } + else { + super(_abi, _bytecode, args[0]); + } + } + getDeployTransaction(registry, overrides) { + return super.getDeployTransaction(registry, overrides || {}); + } + deploy(registry, overrides) { + return super.deploy(registry, overrides || {}); + } + connect(runner) { + return super.connect(runner); + } + static createInterface() { + return new ethers_1.Interface(_abi); + } + static connect(address, runner) { + return new ethers_1.Contract(address, _abi, runner); + } +} +exports.SignatureUtil__factory = SignatureUtil__factory; +SignatureUtil__factory.bytecode = _bytecode; +SignatureUtil__factory.abi = _abi; diff --git a/dist/types/factories/dot-crypto/contracts/util/index.d.ts b/dist/types/factories/dot-crypto/contracts/util/index.d.ts new file mode 100644 index 00000000..3263ea72 --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/util/index.d.ts @@ -0,0 +1,5 @@ +export { BulkWhitelistedRole__factory } from "./BulkWhitelistedRole__factory"; +export { ControllerRole__factory } from "./ControllerRole__factory"; +export { FreeMinter__factory } from "./FreeMinter__factory"; +export { SignatureUtil__factory } from "./SignatureUtil__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/util/index.d.ts.map b/dist/types/factories/dot-crypto/contracts/util/index.d.ts.map new file mode 100644 index 00000000..19b8c5e3 --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/util/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/dot-crypto/contracts/util/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/util/index.js b/dist/types/factories/dot-crypto/contracts/util/index.js new file mode 100644 index 00000000..d3f13637 --- /dev/null +++ b/dist/types/factories/dot-crypto/contracts/util/index.js @@ -0,0 +1,11 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.SignatureUtil__factory = exports.FreeMinter__factory = exports.ControllerRole__factory = exports.BulkWhitelistedRole__factory = void 0; +var BulkWhitelistedRole__factory_1 = require("./BulkWhitelistedRole__factory"); +Object.defineProperty(exports, "BulkWhitelistedRole__factory", { enumerable: true, get: function () { return BulkWhitelistedRole__factory_1.BulkWhitelistedRole__factory; } }); +var ControllerRole__factory_1 = require("./ControllerRole__factory"); +Object.defineProperty(exports, "ControllerRole__factory", { enumerable: true, get: function () { return ControllerRole__factory_1.ControllerRole__factory; } }); +var FreeMinter__factory_1 = require("./FreeMinter__factory"); +Object.defineProperty(exports, "FreeMinter__factory", { enumerable: true, get: function () { return FreeMinter__factory_1.FreeMinter__factory; } }); +var SignatureUtil__factory_1 = require("./SignatureUtil__factory"); +Object.defineProperty(exports, "SignatureUtil__factory", { enumerable: true, get: function () { return SignatureUtil__factory_1.SignatureUtil__factory; } }); diff --git a/dist/types/factories/dot-crypto/index.d.ts b/dist/types/factories/dot-crypto/index.d.ts new file mode 100644 index 00000000..0687b2ab --- /dev/null +++ b/dist/types/factories/dot-crypto/index.d.ts @@ -0,0 +1,2 @@ +export * as contracts from "./contracts"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/index.d.ts.map b/dist/types/factories/dot-crypto/index.d.ts.map new file mode 100644 index 00000000..c00ac0c2 --- /dev/null +++ b/dist/types/factories/dot-crypto/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../types/factories/dot-crypto/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/index.js b/dist/types/factories/dot-crypto/index.js new file mode 100644 index 00000000..7ed2f1f8 --- /dev/null +++ b/dist/types/factories/dot-crypto/index.js @@ -0,0 +1,27 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.contracts = void 0; +exports.contracts = __importStar(require("./contracts")); diff --git a/dist/types/factories/index.d.ts b/dist/types/factories/index.d.ts new file mode 100644 index 00000000..31854a8b --- /dev/null +++ b/dist/types/factories/index.d.ts @@ -0,0 +1,5 @@ +export * as ensdomains from "./@ensdomains"; +export * as openzeppelin from "./@openzeppelin"; +export * as contracts from "./contracts"; +export * as dotCrypto from "./dot-crypto"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/index.d.ts.map b/dist/types/factories/index.d.ts.map new file mode 100644 index 00000000..11d31583 --- /dev/null +++ b/dist/types/factories/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../types/factories/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,UAAU,MAAM,eAAe,CAAC;AAC5C,OAAO,KAAK,YAAY,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,SAAS,MAAM,cAAc,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/index.js b/dist/types/factories/index.js new file mode 100644 index 00000000..341fdb15 --- /dev/null +++ b/dist/types/factories/index.js @@ -0,0 +1,30 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.dotCrypto = exports.contracts = exports.openzeppelin = exports.ensdomains = void 0; +exports.ensdomains = __importStar(require("./@ensdomains")); +exports.openzeppelin = __importStar(require("./@openzeppelin")); +exports.contracts = __importStar(require("./contracts")); +exports.dotCrypto = __importStar(require("./dot-crypto")); diff --git a/dist/types/index.d.ts b/dist/types/index.d.ts new file mode 100644 index 00000000..912208f3 --- /dev/null +++ b/dist/types/index.d.ts @@ -0,0 +1,396 @@ +import type * as ensdomains from "./@ensdomains"; +export type { ensdomains }; +import type * as openzeppelin from "./@openzeppelin"; +export type { openzeppelin }; +import type * as contracts from "./contracts"; +export type { contracts }; +import type * as dotCrypto from "./dot-crypto"; +export type { dotCrypto }; +export * as factories from "./factories"; +export type { BytesUtils } from "./@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils"; +export { BytesUtils__factory } from "./factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils__factory"; +export type { BaseRegistrarImplementation } from "./@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation"; +export { BaseRegistrarImplementation__factory } from "./factories/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation__factory"; +export type { DummyOracle } from "./@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle"; +export { DummyOracle__factory } from "./factories/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle__factory"; +export type { ETHRegistrarController } from "./@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController"; +export { ETHRegistrarController__factory } from "./factories/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController__factory"; +export type { IBaseRegistrar } from "./@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar"; +export { IBaseRegistrar__factory } from "./factories/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar__factory"; +export type { IETHRegistrarController } from "./@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController"; +export { IETHRegistrarController__factory } from "./factories/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController__factory"; +export type { IPriceOracle } from "./@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle"; +export { IPriceOracle__factory } from "./factories/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle__factory"; +export type { AggregatorInterface } from "./@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface"; +export { AggregatorInterface__factory } from "./factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface__factory"; +export type { StablePriceOracle } from "./@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle"; +export { StablePriceOracle__factory } from "./factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle__factory"; +export type { ENS } from "./@ensdomains/ens-contracts/contracts/registry/ENS"; +export { ENS__factory } from "./factories/@ensdomains/ens-contracts/contracts/registry/ENS__factory"; +export type { ENSRegistry } from "./@ensdomains/ens-contracts/contracts/registry/ENSRegistry"; +export { ENSRegistry__factory } from "./factories/@ensdomains/ens-contracts/contracts/registry/ENSRegistry__factory"; +export type { IMulticallable } from "./@ensdomains/ens-contracts/contracts/resolvers/IMulticallable"; +export { IMulticallable__factory } from "./factories/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable__factory"; +export type { Multicallable } from "./@ensdomains/ens-contracts/contracts/resolvers/Multicallable"; +export { Multicallable__factory } from "./factories/@ensdomains/ens-contracts/contracts/resolvers/Multicallable__factory"; +export type { ABIResolver } from "./@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver"; +export { ABIResolver__factory } from "./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver__factory"; +export type { AddrResolver } from "./@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver"; +export { AddrResolver__factory } from "./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver__factory"; +export type { ContentHashResolver } from "./@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver"; +export { ContentHashResolver__factory } from "./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver__factory"; +export type { DNSResolver } from "./@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver"; +export { DNSResolver__factory } from "./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver__factory"; +export type { IABIResolver } from "./@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver"; +export { IABIResolver__factory } from "./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver__factory"; +export type { IAddressResolver } from "./@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver"; +export { IAddressResolver__factory } from "./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver__factory"; +export type { IAddrResolver } from "./@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver"; +export { IAddrResolver__factory } from "./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver__factory"; +export type { IContentHashResolver } from "./@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver"; +export { IContentHashResolver__factory } from "./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver__factory"; +export type { IDNSRecordResolver } from "./@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver"; +export { IDNSRecordResolver__factory } from "./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver__factory"; +export type { IDNSZoneResolver } from "./@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver"; +export { IDNSZoneResolver__factory } from "./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver__factory"; +export type { IExtendedResolver } from "./@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver"; +export { IExtendedResolver__factory } from "./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver__factory"; +export type { IInterfaceResolver } from "./@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver"; +export { IInterfaceResolver__factory } from "./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver__factory"; +export type { INameResolver } from "./@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver"; +export { INameResolver__factory } from "./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver__factory"; +export type { InterfaceResolver } from "./@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver"; +export { InterfaceResolver__factory } from "./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver__factory"; +export type { IPubkeyResolver } from "./@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver"; +export { IPubkeyResolver__factory } from "./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver__factory"; +export type { ITextResolver } from "./@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver"; +export { ITextResolver__factory } from "./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver__factory"; +export type { IVersionableResolver } from "./@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver"; +export { IVersionableResolver__factory } from "./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver__factory"; +export type { NameResolver } from "./@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver"; +export { NameResolver__factory } from "./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver__factory"; +export type { PubkeyResolver } from "./@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver"; +export { PubkeyResolver__factory } from "./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver__factory"; +export type { TextResolver } from "./@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver"; +export { TextResolver__factory } from "./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver__factory"; +export type { PublicResolver } from "./@ensdomains/ens-contracts/contracts/resolvers/PublicResolver"; +export { PublicResolver__factory } from "./factories/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver__factory"; +export type { Resolver } from "./@ensdomains/ens-contracts/contracts/resolvers/Resolver"; +export { Resolver__factory } from "./factories/@ensdomains/ens-contracts/contracts/resolvers/Resolver__factory"; +export type { ResolverBase } from "./@ensdomains/ens-contracts/contracts/resolvers/ResolverBase"; +export { ResolverBase__factory } from "./factories/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase__factory"; +export type { IReverseRegistrar } from "./@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar"; +export { IReverseRegistrar__factory } from "./factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar__factory"; +export type { ReverseClaimer } from "./@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer"; +export { ReverseClaimer__factory } from "./factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer__factory"; +export type { ReverseRegistrar } from "./@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar"; +export { ReverseRegistrar__factory } from "./factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar__factory"; +export type { Controllable } from "./@ensdomains/ens-contracts/contracts/root/Controllable"; +export { Controllable__factory } from "./factories/@ensdomains/ens-contracts/contracts/root/Controllable__factory"; +export type { Root } from "./@ensdomains/ens-contracts/contracts/root/Root"; +export { Root__factory } from "./factories/@ensdomains/ens-contracts/contracts/root/Root__factory"; +export type { ERC20Recoverable } from "./@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable"; +export { ERC20Recoverable__factory } from "./factories/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable__factory"; +export type { ERC1155Fuse } from "./@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse"; +export { ERC1155Fuse__factory } from "./factories/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse__factory"; +export type { IMetadataService } from "./@ensdomains/ens-contracts/contracts/wrapper/IMetadataService"; +export { IMetadataService__factory } from "./factories/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService__factory"; +export type { INameWrapper } from "./@ensdomains/ens-contracts/contracts/wrapper/INameWrapper"; +export { INameWrapper__factory } from "./factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper__factory"; +export type { INameWrapperUpgrade } from "./@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade"; +export { INameWrapperUpgrade__factory } from "./factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade__factory"; +export type { NameWrapper } from "./@ensdomains/ens-contracts/contracts/wrapper/NameWrapper"; +export { NameWrapper__factory } from "./factories/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper__factory"; +export type { MinterRole } from "./@openzeppelin/contracts-2.3/access/roles/MinterRole"; +export { MinterRole__factory } from "./factories/@openzeppelin/contracts-2.3/access/roles/MinterRole__factory"; +export type { WhitelistAdminRole } from "./@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole"; +export { WhitelistAdminRole__factory } from "./factories/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole__factory"; +export type { WhitelistedRole } from "./@openzeppelin/contracts-2.3/access/roles/WhitelistedRole"; +export { WhitelistedRole__factory } from "./factories/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole__factory"; +export type { ERC165 } from "./@openzeppelin/contracts-2.3/introspection/ERC165"; +export { ERC165__factory } from "./factories/@openzeppelin/contracts-2.3/introspection/ERC165__factory"; +export type { IERC165 } from "./@openzeppelin/contracts-2.3/introspection/IERC165"; +export { IERC165__factory } from "./factories/@openzeppelin/contracts-2.3/introspection/IERC165__factory"; +export type { ERC721 } from "./@openzeppelin/contracts-2.3/token/ERC721/ERC721"; +export { ERC721__factory } from "./factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721__factory"; +export type { ERC721Burnable } from "./@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable"; +export { ERC721Burnable__factory } from "./factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable__factory"; +export type { IERC721 } from "./@openzeppelin/contracts-2.3/token/ERC721/IERC721"; +export { IERC721__factory } from "./factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721__factory"; +export type { IERC721Metadata } from "./@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata"; +export { IERC721Metadata__factory } from "./factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata__factory"; +export type { IERC721Receiver } from "./@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver"; +export { IERC721Receiver__factory } from "./factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver__factory"; +export type { AccessControlEnumerableUpgradeable } from "./@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable"; +export { AccessControlEnumerableUpgradeable__factory } from "./factories/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable__factory"; +export type { AccessControlUpgradeable } from "./@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable"; +export { AccessControlUpgradeable__factory } from "./factories/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable__factory"; +export type { IAccessControlEnumerableUpgradeable } from "./@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable"; +export { IAccessControlEnumerableUpgradeable__factory } from "./factories/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable__factory"; +export type { IAccessControlUpgradeable } from "./@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable"; +export { IAccessControlUpgradeable__factory } from "./factories/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable__factory"; +export type { OwnableUpgradeable } from "./@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable"; +export { OwnableUpgradeable__factory } from "./factories/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable__factory"; +export type { IERC1271Upgradeable } from "./@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable"; +export { IERC1271Upgradeable__factory } from "./factories/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable__factory"; +export type { Initializable } from "./@openzeppelin/contracts-upgradeable/proxy/utils/Initializable"; +export { Initializable__factory } from "./factories/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable__factory"; +export type { PausableUpgradeable } from "./@openzeppelin/contracts-upgradeable/security/PausableUpgradeable"; +export { PausableUpgradeable__factory } from "./factories/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable__factory"; +export type { ReentrancyGuardUpgradeable } from "./@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable"; +export { ReentrancyGuardUpgradeable__factory } from "./factories/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable__factory"; +export type { ERC1155Upgradeable } from "./@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable"; +export { ERC1155Upgradeable__factory } from "./factories/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable__factory"; +export type { ERC1155BurnableUpgradeable } from "./@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable"; +export { ERC1155BurnableUpgradeable__factory } from "./factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable__factory"; +export type { ERC1155PausableUpgradeable } from "./@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable"; +export { ERC1155PausableUpgradeable__factory } from "./factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable__factory"; +export type { IERC1155MetadataURIUpgradeable } from "./@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable"; +export { IERC1155MetadataURIUpgradeable__factory } from "./factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable__factory"; +export type { IERC1155ReceiverUpgradeable } from "./@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable"; +export { IERC1155ReceiverUpgradeable__factory } from "./factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable__factory"; +export type { IERC1155Upgradeable } from "./@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable"; +export { IERC1155Upgradeable__factory } from "./factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable__factory"; +export type { ERC1155PresetMinterPauserUpgradeable } from "./@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable"; +export { ERC1155PresetMinterPauserUpgradeable__factory } from "./factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable__factory"; +export type { IERC20Upgradeable } from "./@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable"; +export { IERC20Upgradeable__factory } from "./factories/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable__factory"; +export type { ERC721Upgradeable } from "./@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable"; +export { ERC721Upgradeable__factory } from "./factories/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable__factory"; +export type { IERC721MetadataUpgradeable } from "./@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable"; +export { IERC721MetadataUpgradeable__factory } from "./factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable__factory"; +export type { IERC721ReceiverUpgradeable } from "./@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable"; +export { IERC721ReceiverUpgradeable__factory } from "./factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable__factory"; +export type { IERC721Upgradeable } from "./@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable"; +export { IERC721Upgradeable__factory } from "./factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable__factory"; +export type { ContextUpgradeable } from "./@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable"; +export { ContextUpgradeable__factory } from "./factories/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable__factory"; +export type { ERC165Upgradeable } from "./@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable"; +export { ERC165Upgradeable__factory } from "./factories/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable__factory"; +export type { IERC165Upgradeable } from "./@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable"; +export { IERC165Upgradeable__factory } from "./factories/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable__factory"; +export type { MulticallUpgradeable } from "./@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable"; +export { MulticallUpgradeable__factory } from "./factories/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable__factory"; +export type { Ownable } from "./@openzeppelin/contracts/access/Ownable"; +export { Ownable__factory } from "./factories/@openzeppelin/contracts/access/Ownable__factory"; +export type { IERC1155MetadataURI } from "./@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI"; +export { IERC1155MetadataURI__factory } from "./factories/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI__factory"; +export type { IERC1155 } from "./@openzeppelin/contracts/token/ERC1155/IERC1155"; +export { IERC1155__factory } from "./factories/@openzeppelin/contracts/token/ERC1155/IERC1155__factory"; +export type { IERC1155Receiver } from "./@openzeppelin/contracts/token/ERC1155/IERC1155Receiver"; +export { IERC1155Receiver__factory } from "./factories/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver__factory"; +export type { ERC20 } from "./@openzeppelin/contracts/token/ERC20/ERC20"; +export { ERC20__factory } from "./factories/@openzeppelin/contracts/token/ERC20/ERC20__factory"; +export type { IERC20Metadata } from "./@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata"; +export { IERC20Metadata__factory } from "./factories/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata__factory"; +export type { IERC20 } from "./@openzeppelin/contracts/token/ERC20/IERC20"; +export { IERC20__factory } from "./factories/@openzeppelin/contracts/token/ERC20/IERC20__factory"; +export type { DummyAlgorithm } from "./contracts/@ens/dnssec/algorithms/DummyAlgorithm"; +export { DummyAlgorithm__factory } from "./factories/contracts/@ens/dnssec/algorithms/DummyAlgorithm__factory"; +export type { RSASHA256Algorithm } from "./contracts/@ens/dnssec/algorithms/RSASHA256Algorithm"; +export { RSASHA256Algorithm__factory } from "./factories/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm__factory"; +export type { SHA1Digest } from "./contracts/@ens/dnssec/digests/SHA1Digest"; +export { SHA1Digest__factory } from "./factories/contracts/@ens/dnssec/digests/SHA1Digest__factory"; +export type { SHA1NSEC3Digest } from "./contracts/@ens/dnssec/digests/SHA1NSEC3Digest"; +export { SHA1NSEC3Digest__factory } from "./factories/contracts/@ens/dnssec/digests/SHA1NSEC3Digest__factory"; +export type { SHA256Digest } from "./contracts/@ens/dnssec/digests/SHA256Digest"; +export { SHA256Digest__factory } from "./factories/contracts/@ens/dnssec/digests/SHA256Digest__factory"; +export type { DNSRegistrar } from "./contracts/@ens/dnssec/DNSRegistrar"; +export { DNSRegistrar__factory } from "./factories/contracts/@ens/dnssec/DNSRegistrar__factory"; +export type { DNSSEC } from "./contracts/@ens/dnssec/DNSSEC"; +export { DNSSEC__factory } from "./factories/contracts/@ens/dnssec/DNSSEC__factory"; +export type { DNSSECImpl } from "./contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl"; +export { DNSSECImpl__factory } from "./factories/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl__factory"; +export type { Owned } from "./contracts/@ens/dnssec/DNSSECImpl.sol/Owned"; +export { Owned__factory } from "./factories/contracts/@ens/dnssec/DNSSECImpl.sol/Owned__factory"; +export type { Algorithm } from "./contracts/@ens/dnssec/interfaces/Algorithm"; +export { Algorithm__factory } from "./factories/contracts/@ens/dnssec/interfaces/Algorithm__factory"; +export type { Digest } from "./contracts/@ens/dnssec/interfaces/Digest"; +export { Digest__factory } from "./factories/contracts/@ens/dnssec/interfaces/Digest__factory"; +export type { IDNSRegistrar } from "./contracts/@ens/dnssec/interfaces/IDNSRegistrar"; +export { IDNSRegistrar__factory } from "./factories/contracts/@ens/dnssec/interfaces/IDNSRegistrar__factory"; +export type { NSEC3Digest } from "./contracts/@ens/dnssec/interfaces/NSEC3Digest"; +export { NSEC3Digest__factory } from "./factories/contracts/@ens/dnssec/interfaces/NSEC3Digest__factory"; +export type { PublicSuffixList } from "./contracts/@ens/dnssec/interfaces/PublicSuffixList"; +export { PublicSuffixList__factory } from "./factories/contracts/@ens/dnssec/interfaces/PublicSuffixList__factory"; +export type { SHA1 } from "./contracts/@ens/dnssec/libraries/SHA1"; +export { SHA1__factory } from "./factories/contracts/@ens/dnssec/libraries/SHA1__factory"; +export type { TLDPublicSuffixList } from "./contracts/@ens/dnssec/TLDPublicSuffixList"; +export { TLDPublicSuffixList__factory } from "./factories/contracts/@ens/dnssec/TLDPublicSuffixList__factory"; +export type { LegacyENS } from "./contracts/@ens/LegacyENSRegistry.sol/LegacyENS"; +export { LegacyENS__factory } from "./factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENS__factory"; +export type { LegacyENSRegistry } from "./contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry"; +export { LegacyENSRegistry__factory } from "./factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry__factory"; +export type { BaseRegistrar } from "./contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar"; +export { BaseRegistrar__factory } from "./factories/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar__factory"; +export type { LegacyETHRegistrarController } from "./contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController"; +export { LegacyETHRegistrarController__factory } from "./factories/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController__factory"; +export type { PriceOracle } from "./contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle"; +export { PriceOracle__factory } from "./factories/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle__factory"; +export type { IChildToken } from "./contracts/@maticnetwork/IChildToken"; +export { IChildToken__factory } from "./factories/contracts/@maticnetwork/IChildToken__factory"; +export type { IMintableERC721 } from "./contracts/@maticnetwork/IMintableERC721"; +export { IMintableERC721__factory } from "./factories/contracts/@maticnetwork/IMintableERC721__factory"; +export type { IRootChainManager } from "./contracts/@maticnetwork/IRootChainManager"; +export { IRootChainManager__factory } from "./factories/contracts/@maticnetwork/IRootChainManager__factory"; +export type { DummyStateSender } from "./contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender"; +export { DummyStateSender__factory } from "./factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender__factory"; +export type { IStateSender } from "./contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender"; +export { IStateSender__factory } from "./factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender__factory"; +export type { AccessControl } from "./contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl"; +export { AccessControl__factory } from "./factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl__factory"; +export type { AccessControlMixin } from "./contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin"; +export { AccessControlMixin__factory } from "./factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin__factory"; +export type { ITokenPredicate } from "./contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate"; +export { ITokenPredicate__factory } from "./factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate__factory"; +export type { MintableERC721Predicate } from "./contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate"; +export { MintableERC721Predicate__factory } from "./factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate__factory"; +export type { EIP712Base } from "./contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base"; +export { EIP712Base__factory } from "./factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base__factory"; +export type { ICheckpointManager } from "./contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager"; +export { ICheckpointManager__factory } from "./factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager__factory"; +export type { NativeMetaTransaction } from "./contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction"; +export { NativeMetaTransaction__factory } from "./factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction__factory"; +export type { RootChainManager } from "./contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager"; +export { RootChainManager__factory } from "./factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager__factory"; +export type { RootChainManagerStorage } from "./contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage"; +export { RootChainManagerStorage__factory } from "./factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage__factory"; +export type { IRootChain } from "./contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain"; +export { IRootChain__factory } from "./factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain__factory"; +export type { SimpleCheckpointManager } from "./contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager"; +export { SimpleCheckpointManager__factory } from "./factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager__factory"; +export type { ChildRegistry } from "./contracts/ChildRegistry"; +export { ChildRegistry__factory } from "./factories/contracts/ChildRegistry__factory"; +export type { ICNSRegistry } from "./contracts/cns/ICNSRegistry"; +export { ICNSRegistry__factory } from "./factories/contracts/cns/ICNSRegistry__factory"; +export type { IMintingController } from "./contracts/cns/IMintingController"; +export { IMintingController__factory } from "./factories/contracts/cns/IMintingController__factory"; +export type { IResolver } from "./contracts/cns/IResolver"; +export { IResolver__factory } from "./factories/contracts/cns/IResolver__factory"; +export type { IURIPrefixController } from "./contracts/cns/IURIPrefixController"; +export { IURIPrefixController__factory } from "./factories/contracts/cns/IURIPrefixController__factory"; +export type { ENSCustody } from "./contracts/custody/ENSCustody"; +export { ENSCustody__factory } from "./factories/contracts/custody/ENSCustody__factory"; +export type { IENSCustody } from "./contracts/custody/IENSCustody"; +export { IENSCustody__factory } from "./factories/contracts/custody/IENSCustody__factory"; +export type { ZilliqaRecover } from "./contracts/custody/ZilliqaRecover"; +export { ZilliqaRecover__factory } from "./factories/contracts/custody/ZilliqaRecover__factory"; +export type { DotCoinBurner } from "./contracts/DotCoinBurner"; +export { DotCoinBurner__factory } from "./factories/contracts/DotCoinBurner__factory"; +export type { IUNSRegistryV07 } from "./contracts/history/IUNSRegistryV07"; +export { IUNSRegistryV07__factory } from "./factories/contracts/history/IUNSRegistryV07__factory"; +export type { ProxyReaderV04 } from "./contracts/history/ProxyReaderV04"; +export { ProxyReaderV04__factory } from "./factories/contracts/history/ProxyReaderV04__factory"; +export type { UNSRegistryV07 } from "./contracts/history/UNSRegistryV07"; +export { UNSRegistryV07__factory } from "./factories/contracts/history/UNSRegistryV07__factory"; +export type { IAddressReader } from "./contracts/IAddressReader"; +export { IAddressReader__factory } from "./factories/contracts/IAddressReader__factory"; +export type { IDataReader } from "./contracts/IDataReader"; +export { IDataReader__factory } from "./factories/contracts/IDataReader__factory"; +export type { IERC1967 } from "./contracts/IERC1967"; +export { IERC1967__factory } from "./factories/contracts/IERC1967__factory"; +export type { IMintingManager } from "./contracts/IMintingManager"; +export { IMintingManager__factory } from "./factories/contracts/IMintingManager__factory"; +export type { IRecordReader } from "./contracts/IRecordReader"; +export { IRecordReader__factory } from "./factories/contracts/IRecordReader__factory"; +export type { IRecordStorage } from "./contracts/IRecordStorage"; +export { IRecordStorage__factory } from "./factories/contracts/IRecordStorage__factory"; +export type { IRegistryReader } from "./contracts/IRegistryReader"; +export { IRegistryReader__factory } from "./factories/contracts/IRegistryReader__factory"; +export type { IReverseRegistry } from "./contracts/IReverseRegistry"; +export { IReverseRegistry__factory } from "./factories/contracts/IReverseRegistry__factory"; +export type { IRootRegistry } from "./contracts/IRootRegistry"; +export { IRootRegistry__factory } from "./factories/contracts/IRootRegistry__factory"; +export type { IUNSRegistry } from "./contracts/IUNSRegistry"; +export { IUNSRegistry__factory } from "./factories/contracts/IUNSRegistry__factory"; +export type { KeyStorage } from "./contracts/KeyStorage"; +export { KeyStorage__factory } from "./factories/contracts/KeyStorage__factory"; +export type { BaseForwarder } from "./contracts/metatx/BaseForwarder"; +export { BaseForwarder__factory } from "./factories/contracts/metatx/BaseForwarder__factory"; +export type { BaseRoutingForwarder } from "./contracts/metatx/BaseRoutingForwarder"; +export { BaseRoutingForwarder__factory } from "./factories/contracts/metatx/BaseRoutingForwarder__factory"; +export type { CNSRegistryForwarder } from "./contracts/metatx/CNSRegistryForwarder"; +export { CNSRegistryForwarder__factory } from "./factories/contracts/metatx/CNSRegistryForwarder__factory"; +export type { ERC2771Context } from "./contracts/metatx/ERC2771Context"; +export { ERC2771Context__factory } from "./factories/contracts/metatx/ERC2771Context__factory"; +export type { ERC2771RegistryContext } from "./contracts/metatx/ERC2771RegistryContext"; +export { ERC2771RegistryContext__factory } from "./factories/contracts/metatx/ERC2771RegistryContext__factory"; +export type { Forwarder } from "./contracts/metatx/Forwarder"; +export { Forwarder__factory } from "./factories/contracts/metatx/Forwarder__factory"; +export type { IForwarder } from "./contracts/metatx/IForwarder"; +export { IForwarder__factory } from "./factories/contracts/metatx/IForwarder__factory"; +export type { MintingManagerForwarder } from "./contracts/metatx/MintingManagerForwarder"; +export { MintingManagerForwarder__factory } from "./factories/contracts/metatx/MintingManagerForwarder__factory"; +export type { ResolverForwarder } from "./contracts/metatx/ResolverForwarder"; +export { ResolverForwarder__factory } from "./factories/contracts/metatx/ResolverForwarder__factory"; +export type { UNSRegistryForwarder } from "./contracts/metatx/UNSRegistryForwarder"; +export { UNSRegistryForwarder__factory } from "./factories/contracts/metatx/UNSRegistryForwarder__factory"; +export type { MintingManager } from "./contracts/MintingManager"; +export { MintingManager__factory } from "./factories/contracts/MintingManager__factory"; +export type { BaseForwarderMock } from "./contracts/mocks/BaseForwarderMock"; +export { BaseForwarderMock__factory } from "./factories/contracts/mocks/BaseForwarderMock__factory"; +export type { BaseRoutingForwarderMock } from "./contracts/mocks/BaseRoutingForwarderMock"; +export { BaseRoutingForwarderMock__factory } from "./factories/contracts/mocks/BaseRoutingForwarderMock__factory"; +export type { ERC1155Mock } from "./contracts/mocks/ERC1155Mock"; +export { ERC1155Mock__factory } from "./factories/contracts/mocks/ERC1155Mock__factory"; +export type { ERC20Mock } from "./contracts/mocks/ERC20Mock"; +export { ERC20Mock__factory } from "./factories/contracts/mocks/ERC20Mock__factory"; +export type { ERC20UnsafeMock } from "./contracts/mocks/ERC20UnsafeMock"; +export { ERC20UnsafeMock__factory } from "./factories/contracts/mocks/ERC20UnsafeMock__factory"; +export type { ERC2771ContextMock } from "./contracts/mocks/ERC2771ContextMock"; +export { ERC2771ContextMock__factory } from "./factories/contracts/mocks/ERC2771ContextMock__factory"; +export type { ERC2771RegistryContextMock } from "./contracts/mocks/ERC2771RegistryContextMock"; +export { ERC2771RegistryContextMock__factory } from "./factories/contracts/mocks/ERC2771RegistryContextMock__factory"; +export type { ERC721Mock } from "./contracts/mocks/ERC721Mock"; +export { ERC721Mock__factory } from "./factories/contracts/mocks/ERC721Mock__factory"; +export type { ERC721ReceiverMock } from "./contracts/mocks/ERC721ReceiverMock"; +export { ERC721ReceiverMock__factory } from "./factories/contracts/mocks/ERC721ReceiverMock__factory"; +export type { MinterRoleMock } from "./contracts/mocks/MinterRoleMock"; +export { MinterRoleMock__factory } from "./factories/contracts/mocks/MinterRoleMock__factory"; +export type { MintingManagerMock } from "./contracts/mocks/MintingManagerMock"; +export { MintingManagerMock__factory } from "./factories/contracts/mocks/MintingManagerMock__factory"; +export type { UNSRegistryForwarderMock } from "./contracts/mocks/UNSRegistryForwarderMock"; +export { UNSRegistryForwarderMock__factory } from "./factories/contracts/mocks/UNSRegistryForwarderMock__factory"; +export type { UNSRegistryMock } from "./contracts/mocks/UNSRegistryMock"; +export { UNSRegistryMock__factory } from "./factories/contracts/mocks/UNSRegistryMock__factory"; +export type { ProxyReader } from "./contracts/ProxyReader"; +export { ProxyReader__factory } from "./factories/contracts/ProxyReader__factory"; +export type { RecordStorage } from "./contracts/RecordStorage"; +export { RecordStorage__factory } from "./factories/contracts/RecordStorage__factory"; +export type { RootRegistry } from "./contracts/RootRegistry"; +export { RootRegistry__factory } from "./factories/contracts/RootRegistry__factory"; +export type { UNSOperator } from "./contracts/UNSOperator"; +export { UNSOperator__factory } from "./factories/contracts/UNSOperator__factory"; +export type { UNSRegistry } from "./contracts/UNSRegistry"; +export { UNSRegistry__factory } from "./factories/contracts/UNSRegistry__factory"; +export type { Blocklist } from "./contracts/utils/Blocklist"; +export { Blocklist__factory } from "./factories/contracts/utils/Blocklist__factory"; +export type { ERC1271SimpleWallet } from "./contracts/utils/ERC1271SimpleWallet"; +export { ERC1271SimpleWallet__factory } from "./factories/contracts/utils/ERC1271SimpleWallet__factory"; +export type { MultiSend } from "./contracts/utils/MultiSend"; +export { MultiSend__factory } from "./factories/contracts/utils/MultiSend__factory"; +export type { Pausable } from "./contracts/utils/Pausable"; +export { Pausable__factory } from "./factories/contracts/utils/Pausable__factory"; +export type { CNSRegistry } from "./dot-crypto/contracts/CNSRegistry"; +export { CNSRegistry__factory } from "./factories/dot-crypto/contracts/CNSRegistry__factory"; +export type { DomainZoneController } from "./dot-crypto/contracts/controllers/DomainZoneController"; +export { DomainZoneController__factory } from "./factories/dot-crypto/contracts/controllers/DomainZoneController__factory"; +export type { ISignatureController } from "./dot-crypto/contracts/controllers/ISignatureController"; +export { ISignatureController__factory } from "./factories/dot-crypto/contracts/controllers/ISignatureController__factory"; +export type { MintingController } from "./dot-crypto/contracts/controllers/MintingController"; +export { MintingController__factory } from "./factories/dot-crypto/contracts/controllers/MintingController__factory"; +export type { SignatureController } from "./dot-crypto/contracts/controllers/SignatureController"; +export { SignatureController__factory } from "./factories/dot-crypto/contracts/controllers/SignatureController__factory"; +export type { URIPrefixController } from "./dot-crypto/contracts/controllers/URIPrefixController"; +export { URIPrefixController__factory } from "./factories/dot-crypto/contracts/controllers/URIPrefixController__factory"; +export type { IResolverReader } from "./dot-crypto/contracts/IResolverReader"; +export { IResolverReader__factory } from "./factories/dot-crypto/contracts/IResolverReader__factory"; +export type { BulkWhitelistedRole } from "./dot-crypto/contracts/util/BulkWhitelistedRole"; +export { BulkWhitelistedRole__factory } from "./factories/dot-crypto/contracts/util/BulkWhitelistedRole__factory"; +export type { ControllerRole } from "./dot-crypto/contracts/util/ControllerRole"; +export { ControllerRole__factory } from "./factories/dot-crypto/contracts/util/ControllerRole__factory"; +export type { FreeMinter } from "./dot-crypto/contracts/util/FreeMinter"; +export { FreeMinter__factory } from "./factories/dot-crypto/contracts/util/FreeMinter__factory"; +export type { SignatureUtil } from "./dot-crypto/contracts/util/SignatureUtil"; +export { SignatureUtil__factory } from "./factories/dot-crypto/contracts/util/SignatureUtil__factory"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/index.d.ts.map b/dist/types/index.d.ts.map new file mode 100644 index 00000000..11f846b9 --- /dev/null +++ b/dist/types/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../types/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/index.js b/dist/types/index.js new file mode 100644 index 00000000..0dfb1207 --- /dev/null +++ b/dist/types/index.js @@ -0,0 +1,416 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.WhitelistAdminRole__factory = exports.MinterRole__factory = exports.NameWrapper__factory = exports.INameWrapperUpgrade__factory = exports.INameWrapper__factory = exports.IMetadataService__factory = exports.ERC1155Fuse__factory = exports.ERC20Recoverable__factory = exports.Root__factory = exports.Controllable__factory = exports.ReverseRegistrar__factory = exports.ReverseClaimer__factory = exports.IReverseRegistrar__factory = exports.ResolverBase__factory = exports.Resolver__factory = exports.PublicResolver__factory = exports.TextResolver__factory = exports.PubkeyResolver__factory = exports.NameResolver__factory = exports.IVersionableResolver__factory = exports.ITextResolver__factory = exports.IPubkeyResolver__factory = exports.InterfaceResolver__factory = exports.INameResolver__factory = exports.IInterfaceResolver__factory = exports.IExtendedResolver__factory = exports.IDNSZoneResolver__factory = exports.IDNSRecordResolver__factory = exports.IContentHashResolver__factory = exports.IAddrResolver__factory = exports.IAddressResolver__factory = exports.IABIResolver__factory = exports.DNSResolver__factory = exports.ContentHashResolver__factory = exports.AddrResolver__factory = exports.ABIResolver__factory = exports.Multicallable__factory = exports.IMulticallable__factory = exports.ENSRegistry__factory = exports.ENS__factory = exports.StablePriceOracle__factory = exports.AggregatorInterface__factory = exports.IPriceOracle__factory = exports.IETHRegistrarController__factory = exports.IBaseRegistrar__factory = exports.ETHRegistrarController__factory = exports.DummyOracle__factory = exports.BaseRegistrarImplementation__factory = exports.BytesUtils__factory = exports.factories = void 0; +exports.Algorithm__factory = exports.Owned__factory = exports.DNSSECImpl__factory = exports.DNSSEC__factory = exports.DNSRegistrar__factory = exports.SHA256Digest__factory = exports.SHA1NSEC3Digest__factory = exports.SHA1Digest__factory = exports.RSASHA256Algorithm__factory = exports.DummyAlgorithm__factory = exports.IERC20__factory = exports.IERC20Metadata__factory = exports.ERC20__factory = exports.IERC1155Receiver__factory = exports.IERC1155__factory = exports.IERC1155MetadataURI__factory = exports.Ownable__factory = exports.MulticallUpgradeable__factory = exports.IERC165Upgradeable__factory = exports.ERC165Upgradeable__factory = exports.ContextUpgradeable__factory = exports.IERC721Upgradeable__factory = exports.IERC721ReceiverUpgradeable__factory = exports.IERC721MetadataUpgradeable__factory = exports.ERC721Upgradeable__factory = exports.IERC20Upgradeable__factory = exports.ERC1155PresetMinterPauserUpgradeable__factory = exports.IERC1155Upgradeable__factory = exports.IERC1155ReceiverUpgradeable__factory = exports.IERC1155MetadataURIUpgradeable__factory = exports.ERC1155PausableUpgradeable__factory = exports.ERC1155BurnableUpgradeable__factory = exports.ERC1155Upgradeable__factory = exports.ReentrancyGuardUpgradeable__factory = exports.PausableUpgradeable__factory = exports.Initializable__factory = exports.IERC1271Upgradeable__factory = exports.OwnableUpgradeable__factory = exports.IAccessControlUpgradeable__factory = exports.IAccessControlEnumerableUpgradeable__factory = exports.AccessControlUpgradeable__factory = exports.AccessControlEnumerableUpgradeable__factory = exports.IERC721Receiver__factory = exports.IERC721Metadata__factory = exports.IERC721__factory = exports.ERC721Burnable__factory = exports.ERC721__factory = exports.IERC165__factory = exports.ERC165__factory = exports.WhitelistedRole__factory = void 0; +exports.KeyStorage__factory = exports.IUNSRegistry__factory = exports.IRootRegistry__factory = exports.IReverseRegistry__factory = exports.IRegistryReader__factory = exports.IRecordStorage__factory = exports.IRecordReader__factory = exports.IMintingManager__factory = exports.IERC1967__factory = exports.IDataReader__factory = exports.IAddressReader__factory = exports.UNSRegistryV07__factory = exports.ProxyReaderV04__factory = exports.IUNSRegistryV07__factory = exports.DotCoinBurner__factory = exports.ZilliqaRecover__factory = exports.IENSCustody__factory = exports.ENSCustody__factory = exports.IURIPrefixController__factory = exports.IResolver__factory = exports.IMintingController__factory = exports.ICNSRegistry__factory = exports.ChildRegistry__factory = exports.SimpleCheckpointManager__factory = exports.IRootChain__factory = exports.RootChainManagerStorage__factory = exports.RootChainManager__factory = exports.NativeMetaTransaction__factory = exports.ICheckpointManager__factory = exports.EIP712Base__factory = exports.MintableERC721Predicate__factory = exports.ITokenPredicate__factory = exports.AccessControlMixin__factory = exports.AccessControl__factory = exports.IStateSender__factory = exports.DummyStateSender__factory = exports.IRootChainManager__factory = exports.IMintableERC721__factory = exports.IChildToken__factory = exports.PriceOracle__factory = exports.LegacyETHRegistrarController__factory = exports.BaseRegistrar__factory = exports.LegacyENSRegistry__factory = exports.LegacyENS__factory = exports.TLDPublicSuffixList__factory = exports.SHA1__factory = exports.PublicSuffixList__factory = exports.NSEC3Digest__factory = exports.IDNSRegistrar__factory = exports.Digest__factory = void 0; +exports.SignatureUtil__factory = exports.FreeMinter__factory = exports.ControllerRole__factory = exports.BulkWhitelistedRole__factory = exports.IResolverReader__factory = exports.URIPrefixController__factory = exports.SignatureController__factory = exports.MintingController__factory = exports.ISignatureController__factory = exports.DomainZoneController__factory = exports.CNSRegistry__factory = exports.Pausable__factory = exports.MultiSend__factory = exports.ERC1271SimpleWallet__factory = exports.Blocklist__factory = exports.UNSRegistry__factory = exports.UNSOperator__factory = exports.RootRegistry__factory = exports.RecordStorage__factory = exports.ProxyReader__factory = exports.UNSRegistryMock__factory = exports.UNSRegistryForwarderMock__factory = exports.MintingManagerMock__factory = exports.MinterRoleMock__factory = exports.ERC721ReceiverMock__factory = exports.ERC721Mock__factory = exports.ERC2771RegistryContextMock__factory = exports.ERC2771ContextMock__factory = exports.ERC20UnsafeMock__factory = exports.ERC20Mock__factory = exports.ERC1155Mock__factory = exports.BaseRoutingForwarderMock__factory = exports.BaseForwarderMock__factory = exports.MintingManager__factory = exports.UNSRegistryForwarder__factory = exports.ResolverForwarder__factory = exports.MintingManagerForwarder__factory = exports.IForwarder__factory = exports.Forwarder__factory = exports.ERC2771RegistryContext__factory = exports.ERC2771Context__factory = exports.CNSRegistryForwarder__factory = exports.BaseRoutingForwarder__factory = exports.BaseForwarder__factory = void 0; +exports.factories = __importStar(require("./factories")); +var BytesUtils__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils__factory"); +Object.defineProperty(exports, "BytesUtils__factory", { enumerable: true, get: function () { return BytesUtils__factory_1.BytesUtils__factory; } }); +var BaseRegistrarImplementation__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation__factory"); +Object.defineProperty(exports, "BaseRegistrarImplementation__factory", { enumerable: true, get: function () { return BaseRegistrarImplementation__factory_1.BaseRegistrarImplementation__factory; } }); +var DummyOracle__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle__factory"); +Object.defineProperty(exports, "DummyOracle__factory", { enumerable: true, get: function () { return DummyOracle__factory_1.DummyOracle__factory; } }); +var ETHRegistrarController__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController__factory"); +Object.defineProperty(exports, "ETHRegistrarController__factory", { enumerable: true, get: function () { return ETHRegistrarController__factory_1.ETHRegistrarController__factory; } }); +var IBaseRegistrar__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar__factory"); +Object.defineProperty(exports, "IBaseRegistrar__factory", { enumerable: true, get: function () { return IBaseRegistrar__factory_1.IBaseRegistrar__factory; } }); +var IETHRegistrarController__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController__factory"); +Object.defineProperty(exports, "IETHRegistrarController__factory", { enumerable: true, get: function () { return IETHRegistrarController__factory_1.IETHRegistrarController__factory; } }); +var IPriceOracle__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle__factory"); +Object.defineProperty(exports, "IPriceOracle__factory", { enumerable: true, get: function () { return IPriceOracle__factory_1.IPriceOracle__factory; } }); +var AggregatorInterface__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface__factory"); +Object.defineProperty(exports, "AggregatorInterface__factory", { enumerable: true, get: function () { return AggregatorInterface__factory_1.AggregatorInterface__factory; } }); +var StablePriceOracle__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle__factory"); +Object.defineProperty(exports, "StablePriceOracle__factory", { enumerable: true, get: function () { return StablePriceOracle__factory_1.StablePriceOracle__factory; } }); +var ENS__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/registry/ENS__factory"); +Object.defineProperty(exports, "ENS__factory", { enumerable: true, get: function () { return ENS__factory_1.ENS__factory; } }); +var ENSRegistry__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/registry/ENSRegistry__factory"); +Object.defineProperty(exports, "ENSRegistry__factory", { enumerable: true, get: function () { return ENSRegistry__factory_1.ENSRegistry__factory; } }); +var IMulticallable__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable__factory"); +Object.defineProperty(exports, "IMulticallable__factory", { enumerable: true, get: function () { return IMulticallable__factory_1.IMulticallable__factory; } }); +var Multicallable__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/resolvers/Multicallable__factory"); +Object.defineProperty(exports, "Multicallable__factory", { enumerable: true, get: function () { return Multicallable__factory_1.Multicallable__factory; } }); +var ABIResolver__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver__factory"); +Object.defineProperty(exports, "ABIResolver__factory", { enumerable: true, get: function () { return ABIResolver__factory_1.ABIResolver__factory; } }); +var AddrResolver__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver__factory"); +Object.defineProperty(exports, "AddrResolver__factory", { enumerable: true, get: function () { return AddrResolver__factory_1.AddrResolver__factory; } }); +var ContentHashResolver__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver__factory"); +Object.defineProperty(exports, "ContentHashResolver__factory", { enumerable: true, get: function () { return ContentHashResolver__factory_1.ContentHashResolver__factory; } }); +var DNSResolver__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver__factory"); +Object.defineProperty(exports, "DNSResolver__factory", { enumerable: true, get: function () { return DNSResolver__factory_1.DNSResolver__factory; } }); +var IABIResolver__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver__factory"); +Object.defineProperty(exports, "IABIResolver__factory", { enumerable: true, get: function () { return IABIResolver__factory_1.IABIResolver__factory; } }); +var IAddressResolver__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver__factory"); +Object.defineProperty(exports, "IAddressResolver__factory", { enumerable: true, get: function () { return IAddressResolver__factory_1.IAddressResolver__factory; } }); +var IAddrResolver__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver__factory"); +Object.defineProperty(exports, "IAddrResolver__factory", { enumerable: true, get: function () { return IAddrResolver__factory_1.IAddrResolver__factory; } }); +var IContentHashResolver__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver__factory"); +Object.defineProperty(exports, "IContentHashResolver__factory", { enumerable: true, get: function () { return IContentHashResolver__factory_1.IContentHashResolver__factory; } }); +var IDNSRecordResolver__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver__factory"); +Object.defineProperty(exports, "IDNSRecordResolver__factory", { enumerable: true, get: function () { return IDNSRecordResolver__factory_1.IDNSRecordResolver__factory; } }); +var IDNSZoneResolver__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver__factory"); +Object.defineProperty(exports, "IDNSZoneResolver__factory", { enumerable: true, get: function () { return IDNSZoneResolver__factory_1.IDNSZoneResolver__factory; } }); +var IExtendedResolver__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver__factory"); +Object.defineProperty(exports, "IExtendedResolver__factory", { enumerable: true, get: function () { return IExtendedResolver__factory_1.IExtendedResolver__factory; } }); +var IInterfaceResolver__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver__factory"); +Object.defineProperty(exports, "IInterfaceResolver__factory", { enumerable: true, get: function () { return IInterfaceResolver__factory_1.IInterfaceResolver__factory; } }); +var INameResolver__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver__factory"); +Object.defineProperty(exports, "INameResolver__factory", { enumerable: true, get: function () { return INameResolver__factory_1.INameResolver__factory; } }); +var InterfaceResolver__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver__factory"); +Object.defineProperty(exports, "InterfaceResolver__factory", { enumerable: true, get: function () { return InterfaceResolver__factory_1.InterfaceResolver__factory; } }); +var IPubkeyResolver__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver__factory"); +Object.defineProperty(exports, "IPubkeyResolver__factory", { enumerable: true, get: function () { return IPubkeyResolver__factory_1.IPubkeyResolver__factory; } }); +var ITextResolver__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver__factory"); +Object.defineProperty(exports, "ITextResolver__factory", { enumerable: true, get: function () { return ITextResolver__factory_1.ITextResolver__factory; } }); +var IVersionableResolver__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver__factory"); +Object.defineProperty(exports, "IVersionableResolver__factory", { enumerable: true, get: function () { return IVersionableResolver__factory_1.IVersionableResolver__factory; } }); +var NameResolver__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver__factory"); +Object.defineProperty(exports, "NameResolver__factory", { enumerable: true, get: function () { return NameResolver__factory_1.NameResolver__factory; } }); +var PubkeyResolver__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver__factory"); +Object.defineProperty(exports, "PubkeyResolver__factory", { enumerable: true, get: function () { return PubkeyResolver__factory_1.PubkeyResolver__factory; } }); +var TextResolver__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver__factory"); +Object.defineProperty(exports, "TextResolver__factory", { enumerable: true, get: function () { return TextResolver__factory_1.TextResolver__factory; } }); +var PublicResolver__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver__factory"); +Object.defineProperty(exports, "PublicResolver__factory", { enumerable: true, get: function () { return PublicResolver__factory_1.PublicResolver__factory; } }); +var Resolver__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/resolvers/Resolver__factory"); +Object.defineProperty(exports, "Resolver__factory", { enumerable: true, get: function () { return Resolver__factory_1.Resolver__factory; } }); +var ResolverBase__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase__factory"); +Object.defineProperty(exports, "ResolverBase__factory", { enumerable: true, get: function () { return ResolverBase__factory_1.ResolverBase__factory; } }); +var IReverseRegistrar__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar__factory"); +Object.defineProperty(exports, "IReverseRegistrar__factory", { enumerable: true, get: function () { return IReverseRegistrar__factory_1.IReverseRegistrar__factory; } }); +var ReverseClaimer__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer__factory"); +Object.defineProperty(exports, "ReverseClaimer__factory", { enumerable: true, get: function () { return ReverseClaimer__factory_1.ReverseClaimer__factory; } }); +var ReverseRegistrar__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar__factory"); +Object.defineProperty(exports, "ReverseRegistrar__factory", { enumerable: true, get: function () { return ReverseRegistrar__factory_1.ReverseRegistrar__factory; } }); +var Controllable__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/root/Controllable__factory"); +Object.defineProperty(exports, "Controllable__factory", { enumerable: true, get: function () { return Controllable__factory_1.Controllable__factory; } }); +var Root__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/root/Root__factory"); +Object.defineProperty(exports, "Root__factory", { enumerable: true, get: function () { return Root__factory_1.Root__factory; } }); +var ERC20Recoverable__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable__factory"); +Object.defineProperty(exports, "ERC20Recoverable__factory", { enumerable: true, get: function () { return ERC20Recoverable__factory_1.ERC20Recoverable__factory; } }); +var ERC1155Fuse__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse__factory"); +Object.defineProperty(exports, "ERC1155Fuse__factory", { enumerable: true, get: function () { return ERC1155Fuse__factory_1.ERC1155Fuse__factory; } }); +var IMetadataService__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService__factory"); +Object.defineProperty(exports, "IMetadataService__factory", { enumerable: true, get: function () { return IMetadataService__factory_1.IMetadataService__factory; } }); +var INameWrapper__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper__factory"); +Object.defineProperty(exports, "INameWrapper__factory", { enumerable: true, get: function () { return INameWrapper__factory_1.INameWrapper__factory; } }); +var INameWrapperUpgrade__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade__factory"); +Object.defineProperty(exports, "INameWrapperUpgrade__factory", { enumerable: true, get: function () { return INameWrapperUpgrade__factory_1.INameWrapperUpgrade__factory; } }); +var NameWrapper__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper__factory"); +Object.defineProperty(exports, "NameWrapper__factory", { enumerable: true, get: function () { return NameWrapper__factory_1.NameWrapper__factory; } }); +var MinterRole__factory_1 = require("./factories/@openzeppelin/contracts-2.3/access/roles/MinterRole__factory"); +Object.defineProperty(exports, "MinterRole__factory", { enumerable: true, get: function () { return MinterRole__factory_1.MinterRole__factory; } }); +var WhitelistAdminRole__factory_1 = require("./factories/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole__factory"); +Object.defineProperty(exports, "WhitelistAdminRole__factory", { enumerable: true, get: function () { return WhitelistAdminRole__factory_1.WhitelistAdminRole__factory; } }); +var WhitelistedRole__factory_1 = require("./factories/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole__factory"); +Object.defineProperty(exports, "WhitelistedRole__factory", { enumerable: true, get: function () { return WhitelistedRole__factory_1.WhitelistedRole__factory; } }); +var ERC165__factory_1 = require("./factories/@openzeppelin/contracts-2.3/introspection/ERC165__factory"); +Object.defineProperty(exports, "ERC165__factory", { enumerable: true, get: function () { return ERC165__factory_1.ERC165__factory; } }); +var IERC165__factory_1 = require("./factories/@openzeppelin/contracts-2.3/introspection/IERC165__factory"); +Object.defineProperty(exports, "IERC165__factory", { enumerable: true, get: function () { return IERC165__factory_1.IERC165__factory; } }); +var ERC721__factory_1 = require("./factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721__factory"); +Object.defineProperty(exports, "ERC721__factory", { enumerable: true, get: function () { return ERC721__factory_1.ERC721__factory; } }); +var ERC721Burnable__factory_1 = require("./factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable__factory"); +Object.defineProperty(exports, "ERC721Burnable__factory", { enumerable: true, get: function () { return ERC721Burnable__factory_1.ERC721Burnable__factory; } }); +var IERC721__factory_1 = require("./factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721__factory"); +Object.defineProperty(exports, "IERC721__factory", { enumerable: true, get: function () { return IERC721__factory_1.IERC721__factory; } }); +var IERC721Metadata__factory_1 = require("./factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata__factory"); +Object.defineProperty(exports, "IERC721Metadata__factory", { enumerable: true, get: function () { return IERC721Metadata__factory_1.IERC721Metadata__factory; } }); +var IERC721Receiver__factory_1 = require("./factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver__factory"); +Object.defineProperty(exports, "IERC721Receiver__factory", { enumerable: true, get: function () { return IERC721Receiver__factory_1.IERC721Receiver__factory; } }); +var AccessControlEnumerableUpgradeable__factory_1 = require("./factories/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable__factory"); +Object.defineProperty(exports, "AccessControlEnumerableUpgradeable__factory", { enumerable: true, get: function () { return AccessControlEnumerableUpgradeable__factory_1.AccessControlEnumerableUpgradeable__factory; } }); +var AccessControlUpgradeable__factory_1 = require("./factories/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable__factory"); +Object.defineProperty(exports, "AccessControlUpgradeable__factory", { enumerable: true, get: function () { return AccessControlUpgradeable__factory_1.AccessControlUpgradeable__factory; } }); +var IAccessControlEnumerableUpgradeable__factory_1 = require("./factories/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable__factory"); +Object.defineProperty(exports, "IAccessControlEnumerableUpgradeable__factory", { enumerable: true, get: function () { return IAccessControlEnumerableUpgradeable__factory_1.IAccessControlEnumerableUpgradeable__factory; } }); +var IAccessControlUpgradeable__factory_1 = require("./factories/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable__factory"); +Object.defineProperty(exports, "IAccessControlUpgradeable__factory", { enumerable: true, get: function () { return IAccessControlUpgradeable__factory_1.IAccessControlUpgradeable__factory; } }); +var OwnableUpgradeable__factory_1 = require("./factories/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable__factory"); +Object.defineProperty(exports, "OwnableUpgradeable__factory", { enumerable: true, get: function () { return OwnableUpgradeable__factory_1.OwnableUpgradeable__factory; } }); +var IERC1271Upgradeable__factory_1 = require("./factories/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable__factory"); +Object.defineProperty(exports, "IERC1271Upgradeable__factory", { enumerable: true, get: function () { return IERC1271Upgradeable__factory_1.IERC1271Upgradeable__factory; } }); +var Initializable__factory_1 = require("./factories/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable__factory"); +Object.defineProperty(exports, "Initializable__factory", { enumerable: true, get: function () { return Initializable__factory_1.Initializable__factory; } }); +var PausableUpgradeable__factory_1 = require("./factories/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable__factory"); +Object.defineProperty(exports, "PausableUpgradeable__factory", { enumerable: true, get: function () { return PausableUpgradeable__factory_1.PausableUpgradeable__factory; } }); +var ReentrancyGuardUpgradeable__factory_1 = require("./factories/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable__factory"); +Object.defineProperty(exports, "ReentrancyGuardUpgradeable__factory", { enumerable: true, get: function () { return ReentrancyGuardUpgradeable__factory_1.ReentrancyGuardUpgradeable__factory; } }); +var ERC1155Upgradeable__factory_1 = require("./factories/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable__factory"); +Object.defineProperty(exports, "ERC1155Upgradeable__factory", { enumerable: true, get: function () { return ERC1155Upgradeable__factory_1.ERC1155Upgradeable__factory; } }); +var ERC1155BurnableUpgradeable__factory_1 = require("./factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable__factory"); +Object.defineProperty(exports, "ERC1155BurnableUpgradeable__factory", { enumerable: true, get: function () { return ERC1155BurnableUpgradeable__factory_1.ERC1155BurnableUpgradeable__factory; } }); +var ERC1155PausableUpgradeable__factory_1 = require("./factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable__factory"); +Object.defineProperty(exports, "ERC1155PausableUpgradeable__factory", { enumerable: true, get: function () { return ERC1155PausableUpgradeable__factory_1.ERC1155PausableUpgradeable__factory; } }); +var IERC1155MetadataURIUpgradeable__factory_1 = require("./factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable__factory"); +Object.defineProperty(exports, "IERC1155MetadataURIUpgradeable__factory", { enumerable: true, get: function () { return IERC1155MetadataURIUpgradeable__factory_1.IERC1155MetadataURIUpgradeable__factory; } }); +var IERC1155ReceiverUpgradeable__factory_1 = require("./factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable__factory"); +Object.defineProperty(exports, "IERC1155ReceiverUpgradeable__factory", { enumerable: true, get: function () { return IERC1155ReceiverUpgradeable__factory_1.IERC1155ReceiverUpgradeable__factory; } }); +var IERC1155Upgradeable__factory_1 = require("./factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable__factory"); +Object.defineProperty(exports, "IERC1155Upgradeable__factory", { enumerable: true, get: function () { return IERC1155Upgradeable__factory_1.IERC1155Upgradeable__factory; } }); +var ERC1155PresetMinterPauserUpgradeable__factory_1 = require("./factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable__factory"); +Object.defineProperty(exports, "ERC1155PresetMinterPauserUpgradeable__factory", { enumerable: true, get: function () { return ERC1155PresetMinterPauserUpgradeable__factory_1.ERC1155PresetMinterPauserUpgradeable__factory; } }); +var IERC20Upgradeable__factory_1 = require("./factories/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable__factory"); +Object.defineProperty(exports, "IERC20Upgradeable__factory", { enumerable: true, get: function () { return IERC20Upgradeable__factory_1.IERC20Upgradeable__factory; } }); +var ERC721Upgradeable__factory_1 = require("./factories/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable__factory"); +Object.defineProperty(exports, "ERC721Upgradeable__factory", { enumerable: true, get: function () { return ERC721Upgradeable__factory_1.ERC721Upgradeable__factory; } }); +var IERC721MetadataUpgradeable__factory_1 = require("./factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable__factory"); +Object.defineProperty(exports, "IERC721MetadataUpgradeable__factory", { enumerable: true, get: function () { return IERC721MetadataUpgradeable__factory_1.IERC721MetadataUpgradeable__factory; } }); +var IERC721ReceiverUpgradeable__factory_1 = require("./factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable__factory"); +Object.defineProperty(exports, "IERC721ReceiverUpgradeable__factory", { enumerable: true, get: function () { return IERC721ReceiverUpgradeable__factory_1.IERC721ReceiverUpgradeable__factory; } }); +var IERC721Upgradeable__factory_1 = require("./factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable__factory"); +Object.defineProperty(exports, "IERC721Upgradeable__factory", { enumerable: true, get: function () { return IERC721Upgradeable__factory_1.IERC721Upgradeable__factory; } }); +var ContextUpgradeable__factory_1 = require("./factories/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable__factory"); +Object.defineProperty(exports, "ContextUpgradeable__factory", { enumerable: true, get: function () { return ContextUpgradeable__factory_1.ContextUpgradeable__factory; } }); +var ERC165Upgradeable__factory_1 = require("./factories/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable__factory"); +Object.defineProperty(exports, "ERC165Upgradeable__factory", { enumerable: true, get: function () { return ERC165Upgradeable__factory_1.ERC165Upgradeable__factory; } }); +var IERC165Upgradeable__factory_1 = require("./factories/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable__factory"); +Object.defineProperty(exports, "IERC165Upgradeable__factory", { enumerable: true, get: function () { return IERC165Upgradeable__factory_1.IERC165Upgradeable__factory; } }); +var MulticallUpgradeable__factory_1 = require("./factories/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable__factory"); +Object.defineProperty(exports, "MulticallUpgradeable__factory", { enumerable: true, get: function () { return MulticallUpgradeable__factory_1.MulticallUpgradeable__factory; } }); +var Ownable__factory_1 = require("./factories/@openzeppelin/contracts/access/Ownable__factory"); +Object.defineProperty(exports, "Ownable__factory", { enumerable: true, get: function () { return Ownable__factory_1.Ownable__factory; } }); +var IERC1155MetadataURI__factory_1 = require("./factories/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI__factory"); +Object.defineProperty(exports, "IERC1155MetadataURI__factory", { enumerable: true, get: function () { return IERC1155MetadataURI__factory_1.IERC1155MetadataURI__factory; } }); +var IERC1155__factory_1 = require("./factories/@openzeppelin/contracts/token/ERC1155/IERC1155__factory"); +Object.defineProperty(exports, "IERC1155__factory", { enumerable: true, get: function () { return IERC1155__factory_1.IERC1155__factory; } }); +var IERC1155Receiver__factory_1 = require("./factories/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver__factory"); +Object.defineProperty(exports, "IERC1155Receiver__factory", { enumerable: true, get: function () { return IERC1155Receiver__factory_1.IERC1155Receiver__factory; } }); +var ERC20__factory_1 = require("./factories/@openzeppelin/contracts/token/ERC20/ERC20__factory"); +Object.defineProperty(exports, "ERC20__factory", { enumerable: true, get: function () { return ERC20__factory_1.ERC20__factory; } }); +var IERC20Metadata__factory_1 = require("./factories/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata__factory"); +Object.defineProperty(exports, "IERC20Metadata__factory", { enumerable: true, get: function () { return IERC20Metadata__factory_1.IERC20Metadata__factory; } }); +var IERC20__factory_1 = require("./factories/@openzeppelin/contracts/token/ERC20/IERC20__factory"); +Object.defineProperty(exports, "IERC20__factory", { enumerable: true, get: function () { return IERC20__factory_1.IERC20__factory; } }); +var DummyAlgorithm__factory_1 = require("./factories/contracts/@ens/dnssec/algorithms/DummyAlgorithm__factory"); +Object.defineProperty(exports, "DummyAlgorithm__factory", { enumerable: true, get: function () { return DummyAlgorithm__factory_1.DummyAlgorithm__factory; } }); +var RSASHA256Algorithm__factory_1 = require("./factories/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm__factory"); +Object.defineProperty(exports, "RSASHA256Algorithm__factory", { enumerable: true, get: function () { return RSASHA256Algorithm__factory_1.RSASHA256Algorithm__factory; } }); +var SHA1Digest__factory_1 = require("./factories/contracts/@ens/dnssec/digests/SHA1Digest__factory"); +Object.defineProperty(exports, "SHA1Digest__factory", { enumerable: true, get: function () { return SHA1Digest__factory_1.SHA1Digest__factory; } }); +var SHA1NSEC3Digest__factory_1 = require("./factories/contracts/@ens/dnssec/digests/SHA1NSEC3Digest__factory"); +Object.defineProperty(exports, "SHA1NSEC3Digest__factory", { enumerable: true, get: function () { return SHA1NSEC3Digest__factory_1.SHA1NSEC3Digest__factory; } }); +var SHA256Digest__factory_1 = require("./factories/contracts/@ens/dnssec/digests/SHA256Digest__factory"); +Object.defineProperty(exports, "SHA256Digest__factory", { enumerable: true, get: function () { return SHA256Digest__factory_1.SHA256Digest__factory; } }); +var DNSRegistrar__factory_1 = require("./factories/contracts/@ens/dnssec/DNSRegistrar__factory"); +Object.defineProperty(exports, "DNSRegistrar__factory", { enumerable: true, get: function () { return DNSRegistrar__factory_1.DNSRegistrar__factory; } }); +var DNSSEC__factory_1 = require("./factories/contracts/@ens/dnssec/DNSSEC__factory"); +Object.defineProperty(exports, "DNSSEC__factory", { enumerable: true, get: function () { return DNSSEC__factory_1.DNSSEC__factory; } }); +var DNSSECImpl__factory_1 = require("./factories/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl__factory"); +Object.defineProperty(exports, "DNSSECImpl__factory", { enumerable: true, get: function () { return DNSSECImpl__factory_1.DNSSECImpl__factory; } }); +var Owned__factory_1 = require("./factories/contracts/@ens/dnssec/DNSSECImpl.sol/Owned__factory"); +Object.defineProperty(exports, "Owned__factory", { enumerable: true, get: function () { return Owned__factory_1.Owned__factory; } }); +var Algorithm__factory_1 = require("./factories/contracts/@ens/dnssec/interfaces/Algorithm__factory"); +Object.defineProperty(exports, "Algorithm__factory", { enumerable: true, get: function () { return Algorithm__factory_1.Algorithm__factory; } }); +var Digest__factory_1 = require("./factories/contracts/@ens/dnssec/interfaces/Digest__factory"); +Object.defineProperty(exports, "Digest__factory", { enumerable: true, get: function () { return Digest__factory_1.Digest__factory; } }); +var IDNSRegistrar__factory_1 = require("./factories/contracts/@ens/dnssec/interfaces/IDNSRegistrar__factory"); +Object.defineProperty(exports, "IDNSRegistrar__factory", { enumerable: true, get: function () { return IDNSRegistrar__factory_1.IDNSRegistrar__factory; } }); +var NSEC3Digest__factory_1 = require("./factories/contracts/@ens/dnssec/interfaces/NSEC3Digest__factory"); +Object.defineProperty(exports, "NSEC3Digest__factory", { enumerable: true, get: function () { return NSEC3Digest__factory_1.NSEC3Digest__factory; } }); +var PublicSuffixList__factory_1 = require("./factories/contracts/@ens/dnssec/interfaces/PublicSuffixList__factory"); +Object.defineProperty(exports, "PublicSuffixList__factory", { enumerable: true, get: function () { return PublicSuffixList__factory_1.PublicSuffixList__factory; } }); +var SHA1__factory_1 = require("./factories/contracts/@ens/dnssec/libraries/SHA1__factory"); +Object.defineProperty(exports, "SHA1__factory", { enumerable: true, get: function () { return SHA1__factory_1.SHA1__factory; } }); +var TLDPublicSuffixList__factory_1 = require("./factories/contracts/@ens/dnssec/TLDPublicSuffixList__factory"); +Object.defineProperty(exports, "TLDPublicSuffixList__factory", { enumerable: true, get: function () { return TLDPublicSuffixList__factory_1.TLDPublicSuffixList__factory; } }); +var LegacyENS__factory_1 = require("./factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENS__factory"); +Object.defineProperty(exports, "LegacyENS__factory", { enumerable: true, get: function () { return LegacyENS__factory_1.LegacyENS__factory; } }); +var LegacyENSRegistry__factory_1 = require("./factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry__factory"); +Object.defineProperty(exports, "LegacyENSRegistry__factory", { enumerable: true, get: function () { return LegacyENSRegistry__factory_1.LegacyENSRegistry__factory; } }); +var BaseRegistrar__factory_1 = require("./factories/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar__factory"); +Object.defineProperty(exports, "BaseRegistrar__factory", { enumerable: true, get: function () { return BaseRegistrar__factory_1.BaseRegistrar__factory; } }); +var LegacyETHRegistrarController__factory_1 = require("./factories/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController__factory"); +Object.defineProperty(exports, "LegacyETHRegistrarController__factory", { enumerable: true, get: function () { return LegacyETHRegistrarController__factory_1.LegacyETHRegistrarController__factory; } }); +var PriceOracle__factory_1 = require("./factories/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle__factory"); +Object.defineProperty(exports, "PriceOracle__factory", { enumerable: true, get: function () { return PriceOracle__factory_1.PriceOracle__factory; } }); +var IChildToken__factory_1 = require("./factories/contracts/@maticnetwork/IChildToken__factory"); +Object.defineProperty(exports, "IChildToken__factory", { enumerable: true, get: function () { return IChildToken__factory_1.IChildToken__factory; } }); +var IMintableERC721__factory_1 = require("./factories/contracts/@maticnetwork/IMintableERC721__factory"); +Object.defineProperty(exports, "IMintableERC721__factory", { enumerable: true, get: function () { return IMintableERC721__factory_1.IMintableERC721__factory; } }); +var IRootChainManager__factory_1 = require("./factories/contracts/@maticnetwork/IRootChainManager__factory"); +Object.defineProperty(exports, "IRootChainManager__factory", { enumerable: true, get: function () { return IRootChainManager__factory_1.IRootChainManager__factory; } }); +var DummyStateSender__factory_1 = require("./factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender__factory"); +Object.defineProperty(exports, "DummyStateSender__factory", { enumerable: true, get: function () { return DummyStateSender__factory_1.DummyStateSender__factory; } }); +var IStateSender__factory_1 = require("./factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender__factory"); +Object.defineProperty(exports, "IStateSender__factory", { enumerable: true, get: function () { return IStateSender__factory_1.IStateSender__factory; } }); +var AccessControl__factory_1 = require("./factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl__factory"); +Object.defineProperty(exports, "AccessControl__factory", { enumerable: true, get: function () { return AccessControl__factory_1.AccessControl__factory; } }); +var AccessControlMixin__factory_1 = require("./factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin__factory"); +Object.defineProperty(exports, "AccessControlMixin__factory", { enumerable: true, get: function () { return AccessControlMixin__factory_1.AccessControlMixin__factory; } }); +var ITokenPredicate__factory_1 = require("./factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate__factory"); +Object.defineProperty(exports, "ITokenPredicate__factory", { enumerable: true, get: function () { return ITokenPredicate__factory_1.ITokenPredicate__factory; } }); +var MintableERC721Predicate__factory_1 = require("./factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate__factory"); +Object.defineProperty(exports, "MintableERC721Predicate__factory", { enumerable: true, get: function () { return MintableERC721Predicate__factory_1.MintableERC721Predicate__factory; } }); +var EIP712Base__factory_1 = require("./factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base__factory"); +Object.defineProperty(exports, "EIP712Base__factory", { enumerable: true, get: function () { return EIP712Base__factory_1.EIP712Base__factory; } }); +var ICheckpointManager__factory_1 = require("./factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager__factory"); +Object.defineProperty(exports, "ICheckpointManager__factory", { enumerable: true, get: function () { return ICheckpointManager__factory_1.ICheckpointManager__factory; } }); +var NativeMetaTransaction__factory_1 = require("./factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction__factory"); +Object.defineProperty(exports, "NativeMetaTransaction__factory", { enumerable: true, get: function () { return NativeMetaTransaction__factory_1.NativeMetaTransaction__factory; } }); +var RootChainManager__factory_1 = require("./factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager__factory"); +Object.defineProperty(exports, "RootChainManager__factory", { enumerable: true, get: function () { return RootChainManager__factory_1.RootChainManager__factory; } }); +var RootChainManagerStorage__factory_1 = require("./factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage__factory"); +Object.defineProperty(exports, "RootChainManagerStorage__factory", { enumerable: true, get: function () { return RootChainManagerStorage__factory_1.RootChainManagerStorage__factory; } }); +var IRootChain__factory_1 = require("./factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain__factory"); +Object.defineProperty(exports, "IRootChain__factory", { enumerable: true, get: function () { return IRootChain__factory_1.IRootChain__factory; } }); +var SimpleCheckpointManager__factory_1 = require("./factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager__factory"); +Object.defineProperty(exports, "SimpleCheckpointManager__factory", { enumerable: true, get: function () { return SimpleCheckpointManager__factory_1.SimpleCheckpointManager__factory; } }); +var ChildRegistry__factory_1 = require("./factories/contracts/ChildRegistry__factory"); +Object.defineProperty(exports, "ChildRegistry__factory", { enumerable: true, get: function () { return ChildRegistry__factory_1.ChildRegistry__factory; } }); +var ICNSRegistry__factory_1 = require("./factories/contracts/cns/ICNSRegistry__factory"); +Object.defineProperty(exports, "ICNSRegistry__factory", { enumerable: true, get: function () { return ICNSRegistry__factory_1.ICNSRegistry__factory; } }); +var IMintingController__factory_1 = require("./factories/contracts/cns/IMintingController__factory"); +Object.defineProperty(exports, "IMintingController__factory", { enumerable: true, get: function () { return IMintingController__factory_1.IMintingController__factory; } }); +var IResolver__factory_1 = require("./factories/contracts/cns/IResolver__factory"); +Object.defineProperty(exports, "IResolver__factory", { enumerable: true, get: function () { return IResolver__factory_1.IResolver__factory; } }); +var IURIPrefixController__factory_1 = require("./factories/contracts/cns/IURIPrefixController__factory"); +Object.defineProperty(exports, "IURIPrefixController__factory", { enumerable: true, get: function () { return IURIPrefixController__factory_1.IURIPrefixController__factory; } }); +var ENSCustody__factory_1 = require("./factories/contracts/custody/ENSCustody__factory"); +Object.defineProperty(exports, "ENSCustody__factory", { enumerable: true, get: function () { return ENSCustody__factory_1.ENSCustody__factory; } }); +var IENSCustody__factory_1 = require("./factories/contracts/custody/IENSCustody__factory"); +Object.defineProperty(exports, "IENSCustody__factory", { enumerable: true, get: function () { return IENSCustody__factory_1.IENSCustody__factory; } }); +var ZilliqaRecover__factory_1 = require("./factories/contracts/custody/ZilliqaRecover__factory"); +Object.defineProperty(exports, "ZilliqaRecover__factory", { enumerable: true, get: function () { return ZilliqaRecover__factory_1.ZilliqaRecover__factory; } }); +var DotCoinBurner__factory_1 = require("./factories/contracts/DotCoinBurner__factory"); +Object.defineProperty(exports, "DotCoinBurner__factory", { enumerable: true, get: function () { return DotCoinBurner__factory_1.DotCoinBurner__factory; } }); +var IUNSRegistryV07__factory_1 = require("./factories/contracts/history/IUNSRegistryV07__factory"); +Object.defineProperty(exports, "IUNSRegistryV07__factory", { enumerable: true, get: function () { return IUNSRegistryV07__factory_1.IUNSRegistryV07__factory; } }); +var ProxyReaderV04__factory_1 = require("./factories/contracts/history/ProxyReaderV04__factory"); +Object.defineProperty(exports, "ProxyReaderV04__factory", { enumerable: true, get: function () { return ProxyReaderV04__factory_1.ProxyReaderV04__factory; } }); +var UNSRegistryV07__factory_1 = require("./factories/contracts/history/UNSRegistryV07__factory"); +Object.defineProperty(exports, "UNSRegistryV07__factory", { enumerable: true, get: function () { return UNSRegistryV07__factory_1.UNSRegistryV07__factory; } }); +var IAddressReader__factory_1 = require("./factories/contracts/IAddressReader__factory"); +Object.defineProperty(exports, "IAddressReader__factory", { enumerable: true, get: function () { return IAddressReader__factory_1.IAddressReader__factory; } }); +var IDataReader__factory_1 = require("./factories/contracts/IDataReader__factory"); +Object.defineProperty(exports, "IDataReader__factory", { enumerable: true, get: function () { return IDataReader__factory_1.IDataReader__factory; } }); +var IERC1967__factory_1 = require("./factories/contracts/IERC1967__factory"); +Object.defineProperty(exports, "IERC1967__factory", { enumerable: true, get: function () { return IERC1967__factory_1.IERC1967__factory; } }); +var IMintingManager__factory_1 = require("./factories/contracts/IMintingManager__factory"); +Object.defineProperty(exports, "IMintingManager__factory", { enumerable: true, get: function () { return IMintingManager__factory_1.IMintingManager__factory; } }); +var IRecordReader__factory_1 = require("./factories/contracts/IRecordReader__factory"); +Object.defineProperty(exports, "IRecordReader__factory", { enumerable: true, get: function () { return IRecordReader__factory_1.IRecordReader__factory; } }); +var IRecordStorage__factory_1 = require("./factories/contracts/IRecordStorage__factory"); +Object.defineProperty(exports, "IRecordStorage__factory", { enumerable: true, get: function () { return IRecordStorage__factory_1.IRecordStorage__factory; } }); +var IRegistryReader__factory_1 = require("./factories/contracts/IRegistryReader__factory"); +Object.defineProperty(exports, "IRegistryReader__factory", { enumerable: true, get: function () { return IRegistryReader__factory_1.IRegistryReader__factory; } }); +var IReverseRegistry__factory_1 = require("./factories/contracts/IReverseRegistry__factory"); +Object.defineProperty(exports, "IReverseRegistry__factory", { enumerable: true, get: function () { return IReverseRegistry__factory_1.IReverseRegistry__factory; } }); +var IRootRegistry__factory_1 = require("./factories/contracts/IRootRegistry__factory"); +Object.defineProperty(exports, "IRootRegistry__factory", { enumerable: true, get: function () { return IRootRegistry__factory_1.IRootRegistry__factory; } }); +var IUNSRegistry__factory_1 = require("./factories/contracts/IUNSRegistry__factory"); +Object.defineProperty(exports, "IUNSRegistry__factory", { enumerable: true, get: function () { return IUNSRegistry__factory_1.IUNSRegistry__factory; } }); +var KeyStorage__factory_1 = require("./factories/contracts/KeyStorage__factory"); +Object.defineProperty(exports, "KeyStorage__factory", { enumerable: true, get: function () { return KeyStorage__factory_1.KeyStorage__factory; } }); +var BaseForwarder__factory_1 = require("./factories/contracts/metatx/BaseForwarder__factory"); +Object.defineProperty(exports, "BaseForwarder__factory", { enumerable: true, get: function () { return BaseForwarder__factory_1.BaseForwarder__factory; } }); +var BaseRoutingForwarder__factory_1 = require("./factories/contracts/metatx/BaseRoutingForwarder__factory"); +Object.defineProperty(exports, "BaseRoutingForwarder__factory", { enumerable: true, get: function () { return BaseRoutingForwarder__factory_1.BaseRoutingForwarder__factory; } }); +var CNSRegistryForwarder__factory_1 = require("./factories/contracts/metatx/CNSRegistryForwarder__factory"); +Object.defineProperty(exports, "CNSRegistryForwarder__factory", { enumerable: true, get: function () { return CNSRegistryForwarder__factory_1.CNSRegistryForwarder__factory; } }); +var ERC2771Context__factory_1 = require("./factories/contracts/metatx/ERC2771Context__factory"); +Object.defineProperty(exports, "ERC2771Context__factory", { enumerable: true, get: function () { return ERC2771Context__factory_1.ERC2771Context__factory; } }); +var ERC2771RegistryContext__factory_1 = require("./factories/contracts/metatx/ERC2771RegistryContext__factory"); +Object.defineProperty(exports, "ERC2771RegistryContext__factory", { enumerable: true, get: function () { return ERC2771RegistryContext__factory_1.ERC2771RegistryContext__factory; } }); +var Forwarder__factory_1 = require("./factories/contracts/metatx/Forwarder__factory"); +Object.defineProperty(exports, "Forwarder__factory", { enumerable: true, get: function () { return Forwarder__factory_1.Forwarder__factory; } }); +var IForwarder__factory_1 = require("./factories/contracts/metatx/IForwarder__factory"); +Object.defineProperty(exports, "IForwarder__factory", { enumerable: true, get: function () { return IForwarder__factory_1.IForwarder__factory; } }); +var MintingManagerForwarder__factory_1 = require("./factories/contracts/metatx/MintingManagerForwarder__factory"); +Object.defineProperty(exports, "MintingManagerForwarder__factory", { enumerable: true, get: function () { return MintingManagerForwarder__factory_1.MintingManagerForwarder__factory; } }); +var ResolverForwarder__factory_1 = require("./factories/contracts/metatx/ResolverForwarder__factory"); +Object.defineProperty(exports, "ResolverForwarder__factory", { enumerable: true, get: function () { return ResolverForwarder__factory_1.ResolverForwarder__factory; } }); +var UNSRegistryForwarder__factory_1 = require("./factories/contracts/metatx/UNSRegistryForwarder__factory"); +Object.defineProperty(exports, "UNSRegistryForwarder__factory", { enumerable: true, get: function () { return UNSRegistryForwarder__factory_1.UNSRegistryForwarder__factory; } }); +var MintingManager__factory_1 = require("./factories/contracts/MintingManager__factory"); +Object.defineProperty(exports, "MintingManager__factory", { enumerable: true, get: function () { return MintingManager__factory_1.MintingManager__factory; } }); +var BaseForwarderMock__factory_1 = require("./factories/contracts/mocks/BaseForwarderMock__factory"); +Object.defineProperty(exports, "BaseForwarderMock__factory", { enumerable: true, get: function () { return BaseForwarderMock__factory_1.BaseForwarderMock__factory; } }); +var BaseRoutingForwarderMock__factory_1 = require("./factories/contracts/mocks/BaseRoutingForwarderMock__factory"); +Object.defineProperty(exports, "BaseRoutingForwarderMock__factory", { enumerable: true, get: function () { return BaseRoutingForwarderMock__factory_1.BaseRoutingForwarderMock__factory; } }); +var ERC1155Mock__factory_1 = require("./factories/contracts/mocks/ERC1155Mock__factory"); +Object.defineProperty(exports, "ERC1155Mock__factory", { enumerable: true, get: function () { return ERC1155Mock__factory_1.ERC1155Mock__factory; } }); +var ERC20Mock__factory_1 = require("./factories/contracts/mocks/ERC20Mock__factory"); +Object.defineProperty(exports, "ERC20Mock__factory", { enumerable: true, get: function () { return ERC20Mock__factory_1.ERC20Mock__factory; } }); +var ERC20UnsafeMock__factory_1 = require("./factories/contracts/mocks/ERC20UnsafeMock__factory"); +Object.defineProperty(exports, "ERC20UnsafeMock__factory", { enumerable: true, get: function () { return ERC20UnsafeMock__factory_1.ERC20UnsafeMock__factory; } }); +var ERC2771ContextMock__factory_1 = require("./factories/contracts/mocks/ERC2771ContextMock__factory"); +Object.defineProperty(exports, "ERC2771ContextMock__factory", { enumerable: true, get: function () { return ERC2771ContextMock__factory_1.ERC2771ContextMock__factory; } }); +var ERC2771RegistryContextMock__factory_1 = require("./factories/contracts/mocks/ERC2771RegistryContextMock__factory"); +Object.defineProperty(exports, "ERC2771RegistryContextMock__factory", { enumerable: true, get: function () { return ERC2771RegistryContextMock__factory_1.ERC2771RegistryContextMock__factory; } }); +var ERC721Mock__factory_1 = require("./factories/contracts/mocks/ERC721Mock__factory"); +Object.defineProperty(exports, "ERC721Mock__factory", { enumerable: true, get: function () { return ERC721Mock__factory_1.ERC721Mock__factory; } }); +var ERC721ReceiverMock__factory_1 = require("./factories/contracts/mocks/ERC721ReceiverMock__factory"); +Object.defineProperty(exports, "ERC721ReceiverMock__factory", { enumerable: true, get: function () { return ERC721ReceiverMock__factory_1.ERC721ReceiverMock__factory; } }); +var MinterRoleMock__factory_1 = require("./factories/contracts/mocks/MinterRoleMock__factory"); +Object.defineProperty(exports, "MinterRoleMock__factory", { enumerable: true, get: function () { return MinterRoleMock__factory_1.MinterRoleMock__factory; } }); +var MintingManagerMock__factory_1 = require("./factories/contracts/mocks/MintingManagerMock__factory"); +Object.defineProperty(exports, "MintingManagerMock__factory", { enumerable: true, get: function () { return MintingManagerMock__factory_1.MintingManagerMock__factory; } }); +var UNSRegistryForwarderMock__factory_1 = require("./factories/contracts/mocks/UNSRegistryForwarderMock__factory"); +Object.defineProperty(exports, "UNSRegistryForwarderMock__factory", { enumerable: true, get: function () { return UNSRegistryForwarderMock__factory_1.UNSRegistryForwarderMock__factory; } }); +var UNSRegistryMock__factory_1 = require("./factories/contracts/mocks/UNSRegistryMock__factory"); +Object.defineProperty(exports, "UNSRegistryMock__factory", { enumerable: true, get: function () { return UNSRegistryMock__factory_1.UNSRegistryMock__factory; } }); +var ProxyReader__factory_1 = require("./factories/contracts/ProxyReader__factory"); +Object.defineProperty(exports, "ProxyReader__factory", { enumerable: true, get: function () { return ProxyReader__factory_1.ProxyReader__factory; } }); +var RecordStorage__factory_1 = require("./factories/contracts/RecordStorage__factory"); +Object.defineProperty(exports, "RecordStorage__factory", { enumerable: true, get: function () { return RecordStorage__factory_1.RecordStorage__factory; } }); +var RootRegistry__factory_1 = require("./factories/contracts/RootRegistry__factory"); +Object.defineProperty(exports, "RootRegistry__factory", { enumerable: true, get: function () { return RootRegistry__factory_1.RootRegistry__factory; } }); +var UNSOperator__factory_1 = require("./factories/contracts/UNSOperator__factory"); +Object.defineProperty(exports, "UNSOperator__factory", { enumerable: true, get: function () { return UNSOperator__factory_1.UNSOperator__factory; } }); +var UNSRegistry__factory_1 = require("./factories/contracts/UNSRegistry__factory"); +Object.defineProperty(exports, "UNSRegistry__factory", { enumerable: true, get: function () { return UNSRegistry__factory_1.UNSRegistry__factory; } }); +var Blocklist__factory_1 = require("./factories/contracts/utils/Blocklist__factory"); +Object.defineProperty(exports, "Blocklist__factory", { enumerable: true, get: function () { return Blocklist__factory_1.Blocklist__factory; } }); +var ERC1271SimpleWallet__factory_1 = require("./factories/contracts/utils/ERC1271SimpleWallet__factory"); +Object.defineProperty(exports, "ERC1271SimpleWallet__factory", { enumerable: true, get: function () { return ERC1271SimpleWallet__factory_1.ERC1271SimpleWallet__factory; } }); +var MultiSend__factory_1 = require("./factories/contracts/utils/MultiSend__factory"); +Object.defineProperty(exports, "MultiSend__factory", { enumerable: true, get: function () { return MultiSend__factory_1.MultiSend__factory; } }); +var Pausable__factory_1 = require("./factories/contracts/utils/Pausable__factory"); +Object.defineProperty(exports, "Pausable__factory", { enumerable: true, get: function () { return Pausable__factory_1.Pausable__factory; } }); +var CNSRegistry__factory_1 = require("./factories/dot-crypto/contracts/CNSRegistry__factory"); +Object.defineProperty(exports, "CNSRegistry__factory", { enumerable: true, get: function () { return CNSRegistry__factory_1.CNSRegistry__factory; } }); +var DomainZoneController__factory_1 = require("./factories/dot-crypto/contracts/controllers/DomainZoneController__factory"); +Object.defineProperty(exports, "DomainZoneController__factory", { enumerable: true, get: function () { return DomainZoneController__factory_1.DomainZoneController__factory; } }); +var ISignatureController__factory_1 = require("./factories/dot-crypto/contracts/controllers/ISignatureController__factory"); +Object.defineProperty(exports, "ISignatureController__factory", { enumerable: true, get: function () { return ISignatureController__factory_1.ISignatureController__factory; } }); +var MintingController__factory_1 = require("./factories/dot-crypto/contracts/controllers/MintingController__factory"); +Object.defineProperty(exports, "MintingController__factory", { enumerable: true, get: function () { return MintingController__factory_1.MintingController__factory; } }); +var SignatureController__factory_1 = require("./factories/dot-crypto/contracts/controllers/SignatureController__factory"); +Object.defineProperty(exports, "SignatureController__factory", { enumerable: true, get: function () { return SignatureController__factory_1.SignatureController__factory; } }); +var URIPrefixController__factory_1 = require("./factories/dot-crypto/contracts/controllers/URIPrefixController__factory"); +Object.defineProperty(exports, "URIPrefixController__factory", { enumerable: true, get: function () { return URIPrefixController__factory_1.URIPrefixController__factory; } }); +var IResolverReader__factory_1 = require("./factories/dot-crypto/contracts/IResolverReader__factory"); +Object.defineProperty(exports, "IResolverReader__factory", { enumerable: true, get: function () { return IResolverReader__factory_1.IResolverReader__factory; } }); +var BulkWhitelistedRole__factory_1 = require("./factories/dot-crypto/contracts/util/BulkWhitelistedRole__factory"); +Object.defineProperty(exports, "BulkWhitelistedRole__factory", { enumerable: true, get: function () { return BulkWhitelistedRole__factory_1.BulkWhitelistedRole__factory; } }); +var ControllerRole__factory_1 = require("./factories/dot-crypto/contracts/util/ControllerRole__factory"); +Object.defineProperty(exports, "ControllerRole__factory", { enumerable: true, get: function () { return ControllerRole__factory_1.ControllerRole__factory; } }); +var FreeMinter__factory_1 = require("./factories/dot-crypto/contracts/util/FreeMinter__factory"); +Object.defineProperty(exports, "FreeMinter__factory", { enumerable: true, get: function () { return FreeMinter__factory_1.FreeMinter__factory; } }); +var SignatureUtil__factory_1 = require("./factories/dot-crypto/contracts/util/SignatureUtil__factory"); +Object.defineProperty(exports, "SignatureUtil__factory", { enumerable: true, get: function () { return SignatureUtil__factory_1.SignatureUtil__factory; } }); diff --git a/dist/uns-config.json b/dist/uns-config.json new file mode 100644 index 00000000..3d0b9068 --- /dev/null +++ b/dist/uns-config.json @@ -0,0 +1,571 @@ +{ + "version": "0.9.2", + "networks": { + "1": { + "contracts": { + "UNSRegistry": { + "address": "0x049aba7510f45BA5b64ea9E658E342F904DB358D", + "implementation": "0xCd451149ffa9d059030528917842bcE14327DfD6", + "legacyAddresses": [], + "deploymentBlock": "0xc2fede", + "forwarder": "0x049aba7510f45BA5b64ea9E658E342F904DB358D" + }, + "CNSRegistry": { + "address": "0xD1E5b0FF1287aA9f9A268759062E4Ab08b9Dacbe", + "legacyAddresses": [], + "deploymentBlock": "0x8a958b", + "forwarder": "0x97B0E89fC1B7eD4A8B237D9d8Fcce9b234f25A37" + }, + "MintingManager": { + "address": "0x2a7084870bB724175a3C96Da8FaA55128fa3E19D", + "implementation": "0xc2729efaBe5746C0875AE8969ce386a02A19fB13", + "legacyAddresses": [], + "deploymentBlock": "0xc2fee0", + "forwarder": "0xb970fbCF52cd8111c76c379D4f2FE12E7f8AE7fb" + }, + "UNSOperator": { + "address": "0x28400c6e89f11a99fD7145a24d39c19f949Ab86e", + "implementation": "0x4f78Db4b434128a45C6236bd61dFf2258637cd7f", + "legacyAddresses": [], + "deploymentBlock": "0xfdd3a7" + }, + "ProxyAdmin": { + "address": "0xAA16DA78110D9A9742c760a1a064F28654Ab93de", + "legacyAddresses": [], + "deploymentBlock": "0xc2fedc" + }, + "SignatureController": { + "address": "0x82EF94294C95aD0930055f31e53A34509227c5f7", + "legacyAddresses": [], + "deploymentBlock": "0x8a95a6" + }, + "MintingController": { + "address": "0xb0EE56339C3253361730F50c08d3d7817ecD60Ca", + "legacyAddresses": [], + "deploymentBlock": "0x8a95aa", + "deprecated": true + }, + "WhitelistedMinter": { + "address": "0xd3fF3377b0ceade1303dAF9Db04068ef8a650757", + "legacyAddresses": [], + "deploymentBlock": "0xa76ad3", + "deprecated": true + }, + "URIPrefixController": { + "address": "0x09B091492759737C03da9dB7eDF1CD6BCC3A9d91", + "legacyAddresses": [], + "deploymentBlock": "0x8a95ae", + "deprecated": true + }, + "DomainZoneController": { + "address": "0xeA70777e28E00E81f58b8921fC47F78B8a72eFE7", + "legacyAddresses": [], + "deploymentBlock": "0x98ca20", + "deprecated": true + }, + "Resolver": { + "address": "0xb66DcE2DA6afAAa98F2013446dBCB0f4B0ab2842", + "legacyAddresses": [ + "0xa1cac442be6673c49f8e74ffc7c4fd746f3cbd0d", + "0x878bc2f3f717766ab69c0a5f9a6144931e61aed3" + ], + "deploymentBlock": "0x960844", + "forwarder": "0x486eb10E4F48C038513ECAf11585Ca2779768CF2" + }, + "ProxyReader": { + "address": "0x578853aa776Eef10CeE6c4dd2B5862bdcE767A8B", + "implementation": "0xF83b08F90C1d5eEf255E8DB50b3Ab158A37a9AD4", + "legacyAddresses": [ + "0x6E68f3EaAD2CC946C6CC7f4859251d8D70Dd3EDB", + "0x1BDc0fD4fbABeed3E611fd6195fCd5d41dcEF393", + "0x58034A288D2E56B661c9056A0C27273E5460B63c", + "0xc3C2BAB5e3e52DBF311b2aAcEf2e40344f19494E", + "0xfEe4D4F0aDFF8D84c12170306507554bC7045878", + "0xa6E7cEf2EDDEA66352Fd68E5915b60BDbb7309f5", + "0x7ea9Ee21077F84339eDa9C80048ec6db678642B1" + ], + "deploymentBlock": "0xf2f03c" + }, + "TwitterValidationOperator": { + "address": "0x2F659766E3D08561CA3408FbAba7C0749ab2c402", + "legacyAddresses": [ + "0xbb486C6E9cF1faA86a6E3eAAFE2e5665C0507855" + ], + "deploymentBlock": "0xc300b5" + }, + "FreeMinter": { + "address": "0x1fC985cAc641ED5846b631f96F35d9b48Bc3b834", + "legacyAddresses": [], + "deploymentBlock": "0xacc390", + "deprecated": true + }, + "MintableERC721Predicate": { + "address": "0x932532aA4c0174b8453839A6E44eE09Cc615F2b7", + "legacyAddresses": [], + "deploymentBlock": "0xa3cf69" + }, + "RootChainManager": { + "address": "0xA0c68C638235ee32657e8f720a23ceC1bFc77C77", + "legacyAddresses": [], + "deploymentBlock": "0xa3cf4d" + }, + "DotCoinBurner": { + "address": "0x65c6abdf52aD08A53A77488D1Acc5c666ada840F", + "legacyAddresses": [], + "deploymentBlock": "0xf335e0" + }, + "ZilliqaRecover": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0" + } + } + }, + "137": { + "contracts": { + "UNSRegistry": { + "address": "0xa9a6A3626993D487d2Dbda3173cf58cA1a9D9e9f", + "implementation": "0x11227E54F19934164A81d5aDd1ce5825D46B2271", + "legacyAddresses": [], + "deploymentBlock": "0x01272eb5", + "forwarder": "0xa9a6A3626993D487d2Dbda3173cf58cA1a9D9e9f" + }, + "CNSRegistry": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0", + "forwarder": "0x0000000000000000000000000000000000000000" + }, + "MintingManager": { + "address": "0x7be83293BeeDc9Eba1bd76c66A65F10F3efaeC26", + "implementation": "0x8Efbe119357753c5d12f078AC081E37a5AFACf33", + "legacyAddresses": [], + "deploymentBlock": "0x01272f41", + "forwarder": "0xC37d3c4326ab0E1D2b9D8b916bBdf5715f780fcF" + }, + "UNSOperator": { + "address": "0x8f0c61C9BD21d3a5c078FB03eCA01AE2Ff5380dB", + "implementation": "0xbB101ae4B5Df5F9375112D38D9f5a3394916EA97", + "legacyAddresses": [], + "deploymentBlock": "0x025809c0" + }, + "ProxyAdmin": { + "address": "0xe1D668052D52388F52b90f4d1798DB2b04bC3b88", + "legacyAddresses": [], + "deploymentBlock": "0x01272d15" + }, + "SignatureController": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0" + }, + "MintingController": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0", + "deprecated": true + }, + "WhitelistedMinter": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0", + "deprecated": true + }, + "URIPrefixController": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0", + "deprecated": true + }, + "DomainZoneController": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0", + "deprecated": true + }, + "Resolver": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0", + "forwarder": "0x0000000000000000000000000000000000000000" + }, + "ProxyReader": { + "address": "0x91EDd8708062bd4233f4Dd0FCE15A7cb4d500091", + "implementation": "0x989730eAe394d0415eaB088e0C1d83aCD40A66A1", + "legacyAddresses": [ + "0x68Af8fFFCdC6218836C62Bc2Fd2D35dA544471dD", + "0x3E67b8c702a1292d1CEb025494C84367fcb12b45", + "0x423F2531bd5d3C3D4EF7C318c2D1d9BEDE67c680", + "0xA3f32c8cd786dc089Bd1fC175F2707223aeE5d00" + ], + "deploymentBlock": "0x021b1c05" + }, + "TwitterValidationOperator": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0" + }, + "FreeMinter": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0", + "deprecated": true + }, + "MintableERC721Predicate": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0" + }, + "RootChainManager": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0" + }, + "DotCoinBurner": { + "address": "0x65c6abdf52aD08A53A77488D1Acc5c666ada840F", + "legacyAddresses": [], + "deploymentBlock": "0x021cac00" + }, + "ZilliqaRecover": { + "address": "0x07B58C81f160257BCb3a2d549ea02D36E3e70461", + "legacyAddresses": [], + "deploymentBlock": "0x032b35a6", + "implementation": "0x50752EcBedBb07543C4191E2492e2e888a7D04bD", + "forwarder": "0x07B58C81f160257BCb3a2d549ea02D36E3e70461" + } + } + }, + "1337": { + "contracts": { + "UNSRegistry": { + "address": "0x107733feD96C4Cd390c944a31F5425A7FB98Ae5e", + "implementation": "0x62b11ad5F582a5C5d378fB310125b030042554F1", + "legacyAddresses": [], + "deploymentBlock": "0x15", + "forwarder": "0x107733feD96C4Cd390c944a31F5425A7FB98Ae5e" + }, + "CNSRegistry": { + "address": "0xC58206842E4030a3B2CaBC78780Ae7635173C533", + "legacyAddresses": [], + "deploymentBlock": "0x01", + "forwarder": "0xAc52F68f31577E44aE0C7E95A42dC9eb574B9383" + }, + "MintingManager": { + "address": "0x39a27956B78d00a4E00EA8833Ff0947410A2933F", + "implementation": "0x229C56b7805aB5935a883207F6a6bD5847E65Aee", + "legacyAddresses": [], + "deploymentBlock": "0x17", + "forwarder": "0x7c3c91245769c8B7450aD522792deC4bd4bf797f" + }, + "UNSOperator": { + "address": "0xCE4bb7Dc1Eb9DCe75743dE6a4B48534fD427Ef51", + "legacyAddresses": [], + "deploymentBlock": "0x19", + "implementation": "0xe85541865Bbb62A05064ce5C9F41cC293A8eA996" + }, + "ProxyAdmin": { + "address": "0x4e44E79e0cEc05D9e62e952B2088c02A3C450aeC", + "legacyAddresses": [], + "deploymentBlock": "0x01" + }, + "SignatureController": { + "address": "0x7bB6Cd9be29fab783c0b494A06FED8b2E2596B7a", + "legacyAddresses": [], + "deploymentBlock": "0x02" + }, + "MintingController": { + "address": "0x4a3C194eB88966178bfDD81744ddDafED611B830", + "legacyAddresses": [], + "deploymentBlock": "0x03", + "deprecated": true + }, + "WhitelistedMinter": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0", + "deprecated": true + }, + "URIPrefixController": { + "address": "0x4872CC1be60A9DB9c880A0A437Da7a6AF134F08f", + "legacyAddresses": [], + "deploymentBlock": "0x04", + "deprecated": true + }, + "DomainZoneController": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0", + "deprecated": true + }, + "Resolver": { + "address": "0xF8C26340C1eAeA6c7fF1760B25005e1306953572", + "legacyAddresses": [], + "deploymentBlock": "0x08", + "forwarder": "0x11dD97b7Ca847DfB6504e61B7B9Eb30F55E554a0" + }, + "ProxyReader": { + "address": "0x5CC819C9915eADfcEBd76952B8C1BC36CADd7376", + "implementation": "0xBDeFCF6429D0AC68236A6BEb321cBD2Ce66B463C", + "legacyAddresses": [], + "deploymentBlock": "0x1f" + }, + "TwitterValidationOperator": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0" + }, + "FreeMinter": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0", + "deprecated": true + }, + "MintableERC721Predicate": { + "address": "0x58a175BEbc8ec21A94ea63Aa5a28743945940EE6", + "legacyAddresses": [], + "deploymentBlock": "0x0d" + }, + "RootChainManager": { + "address": "0x27935e7e85db3c4e7885eB828B9e889BA69a4e7f", + "legacyAddresses": [], + "deploymentBlock": "0x0f" + }, + "DotCoinBurner": { + "address": "0xEE9A59532B50514d4Cb2440b19E9539b6380CEcf", + "legacyAddresses": [], + "deploymentBlock": "0x2a" + }, + "ZilliqaRecover": { + "address": "0x70fDaD6FB674d2EbAa36719839aCf496843994A2", + "deploymentBlock": "0x25", + "implementation": "0x56b793E4aD031Dd3EFeF272dc133D212d5fBddc3", + "legacyAddresses": [], + "forwarder": "0x70fDaD6FB674d2EbAa36719839aCf496843994A2" + } + } + }, + "80002": { + "contracts": { + "CNSRegistry": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0", + "forwarder": "0x0000000000000000000000000000000000000000" + }, + "SignatureController": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0" + }, + "MintingController": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0", + "deprecated": true + }, + "WhitelistedMinter": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0", + "deprecated": true + }, + "URIPrefixController": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0", + "deprecated": true + }, + "DomainZoneController": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0", + "deprecated": true + }, + "Resolver": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0", + "forwarder": "0x0000000000000000000000000000000000000000" + }, + "TwitterValidationOperator": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0" + }, + "FreeMinter": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0", + "deprecated": true + }, + "MintableERC721Predicate": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0" + }, + "RootChainManager": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0" + }, + "ProxyAdmin": { + "address": "0xCbF16B0E2A06916F0Ca4892F704349d13E11cF66", + "legacyAddresses": [], + "deploymentBlock": "0x53f24d" + }, + "UNSOperator": { + "address": "0x89D35aABc8427a32ee7032e73975271e1480fd4E", + "legacyAddresses": [], + "deploymentBlock": "0x53f775", + "implementation": "0x49Ac063337cF2fB26dD421Ab650b893CD54b900F" + }, + "UNSRegistry": { + "address": "0xAb005176D74900A9c25fDA144e2f9f329A409166", + "legacyAddresses": [], + "deploymentBlock": "0x53f76a", + "implementation": "0x223350B4892300EA6E8adEF48C955dcf1C544D02", + "forwarder": "0xAb005176D74900A9c25fDA144e2f9f329A409166" + }, + "MintingManager": { + "address": "0xabec3fF0F0b6375F65CB9aEB01e8347bf697082F", + "legacyAddresses": [], + "deploymentBlock": "0x53f770", + "implementation": "0x5e6f02BA94648Fb25Ca98C6a577c04A0Db34c724", + "forwarder": "0xC738bD0E31CF0f7a777D815F8cA965f3c064C012" + }, + "ProxyReader": { + "address": "0x109e7315189E476AB21166955a0fB9BE9b531BEc", + "legacyAddresses": [], + "deploymentBlock": "0x53fff5", + "implementation": "0xA35F199591bD4F0Cb301ff85b6109Bda146dfb09" + }, + "DotCoinBurner": { + "address": "0xFc86844dE82FA7906C9789ca3161004F18Ca8ff4", + "legacyAddresses": [], + "deploymentBlock": "0x540d0d" + }, + "ZilliqaRecover": { + "address": "0x002380ccAFf852dEF50a176873d50f8019e36FBc", + "legacyAddresses": [], + "deploymentBlock": "0x540d6a", + "implementation": "0xBf101Ad6226024D1d26180136311d77387353c71", + "forwarder": "0x002380ccAFf852dEF50a176873d50f8019e36FBc" + } + } + }, + "11155111": { + "contracts": { + "ProxyAdmin": { + "address": "0xCbF16B0E2A06916F0Ca4892F704349d13E11cF66", + "legacyAddresses": [], + "deploymentBlock": "0x5588B8" + }, + "ENSCustody": { + "address": "0xd2Bf816C7b23fF6e7d141ECC4c1e41DcC857aD45", + "legacyAddresses": [], + "deploymentBlock": "0x5588b9", + "implementation": "0x49Ac063337cF2fB26dD421Ab650b893CD54b900F", + "forwarder": "0xd2Bf816C7b23fF6e7d141ECC4c1e41DcC857aD45" + }, + "CNSRegistry": { + "address": "0xAb005176D74900A9c25fDA144e2f9f329A409166", + "legacyAddresses": [], + "deploymentBlock": "0x558be7", + "forwarder": "0xD3146C740c0Fa128ab1aEA90e4E75194AC0Bbc9B" + }, + "SignatureController": { + "address": "0x5e6f02BA94648Fb25Ca98C6a577c04A0Db34c724", + "legacyAddresses": [], + "deploymentBlock": "0x558bee" + }, + "MintingController": { + "address": "0xabec3fF0F0b6375F65CB9aEB01e8347bf697082F", + "legacyAddresses": [], + "deploymentBlock": "0x558bef", + "deprecated": true + }, + "URIPrefixController": { + "address": "0x89D35aABc8427a32ee7032e73975271e1480fd4E", + "legacyAddresses": [], + "deploymentBlock": "0x558bf6", + "deprecated": true + }, + "Resolver": { + "address": "0xf8F0622A88eC688140890153191Db1713442618D", + "legacyAddresses": [], + "deploymentBlock": "0x558bfc", + "forwarder": "0xA35F199591bD4F0Cb301ff85b6109Bda146dfb09" + }, + "WhitelistedMinter": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0", + "deprecated": true + }, + "DomainZoneController": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0", + "deprecated": true + }, + "TwitterValidationOperator": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0" + }, + "FreeMinter": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0", + "deprecated": true + }, + "MintableERC721Predicate": { + "address": "0xf8D2ecCA43F50F04922A13c417aEd05C34F1EF52", + "legacyAddresses": [], + "deploymentBlock": "0x486873" + }, + "RootChainManager": { + "address": "0x34F5A25B627f50Bb3f5cAb72807c4D4F405a9232", + "legacyAddresses": [], + "deploymentBlock": "0x486867" + }, + "UNSRegistry": { + "address": "0xDD907B4d80B4a979fd77eE502580c55F2700292c", + "deploymentBlock": "0x55a711", + "legacyAddresses": [], + "implementation": "0x7f21bA760352326c55FD6A83D218c2FCd294Dd1c", + "forwarder": "0xDD907B4d80B4a979fd77eE502580c55F2700292c" + }, + "MintingManager": { + "address": "0x1620637c0ce88cccfa919ef562b4398e3187189d", + "deploymentBlock": "0x55a715", + "legacyAddresses": [], + "implementation": "0x63B6F3F80d12A70eA26a57cdFDc16F33e6fD319A", + "forwarder": "0x38F532B32E0b42E747483A37Dfaf05460b1F4Fa3" + }, + "UNSOperator": { + "address": "0x41fD65E5a1cbdcCdD69F8C11DA4c829F7d3565A6", + "deploymentBlock": "0x55A717", + "legacyAddresses": [], + "implementation": "0xf9A7A6516Ee73E4Bd3FA9fbABdA3C8DeA40c89FA" + }, + "ProxyReader": { + "address": "0x880F7D37E9E4EB6868F92F4bB9C8C0995178fdA9", + "deploymentBlock": "0x55a857", + "legacyAddresses": [], + "implementation": "0xdA0E8ec8f801593161e689275Ab1394e7791ee18" + }, + "DotCoinBurner": { + "address": "0x64E3ecF931610d2503247b7c7A885688de54241A", + "legacyAddresses": [], + "deploymentBlock": "0x55f932" + }, + "ZilliqaRecover": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0" + } + } + } + } +} From f5c5017a48d01ad6fa28c5360a59dbcb892e1b9b Mon Sep 17 00:00:00 2001 From: derain Date: Tue, 21 May 2024 20:01:29 +0300 Subject: [PATCH 05/21] [REG-1273] - Finish contract updates. Migrate sandbox RPC to support cancun hardfork. --- CHANGELOG.md | 6 + artifacts/CNSRegistryForwarder.json | 4 +- artifacts/ResolverForwarder.json | 4 +- contracts/metatx/CNSRegistryForwarder.sol | 2 +- contracts/metatx/ResolverForwarder.sol | 2 +- ens-config.json | 62 +++--- package.json | 4 +- sandbox/anvil-server.ts | 128 ++++++++++++ sandbox/anvil-service.ts | 36 ++++ sandbox/index.test.ts | 13 +- sandbox/index.ts | 104 +++++----- sandbox/rebuild.ts | 21 +- sandbox/state.json | 1 + scripts/deploy_SeaportProxyBuyer.ts | 32 +++ src/tasks.ts | 110 +++++++++- src/types.ts | 7 + uns-config.json | 88 +++++++- yarn.lock | 242 +++------------------- 18 files changed, 521 insertions(+), 345 deletions(-) create mode 100644 sandbox/anvil-server.ts create mode 100644 sandbox/anvil-service.ts create mode 100644 sandbox/state.json create mode 100644 scripts/deploy_SeaportProxyBuyer.ts diff --git a/CHANGELOG.md b/CHANGELOG.md index e17b1f77..90988066 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,9 @@ +## v0.9.14 + +- Add SeaportProxyBuyer contract +- Update sandbox RPC server to Foundry Anvil to support cancun hardfork +- Add Seaport contracts to sandbox + ## v0.9.13 - Added `USDT` MATIC token to resolver list diff --git a/artifacts/CNSRegistryForwarder.json b/artifacts/CNSRegistryForwarder.json index 826b199c..5dec03b6 100644 --- a/artifacts/CNSRegistryForwarder.json +++ b/artifacts/CNSRegistryForwarder.json @@ -126,8 +126,8 @@ "type": "function" } ], - "bytecode": "0x608060405234801562000010575f80fd5b5060405162001e5838038062001e5883398101604081905262000033916200064a565b600180546001600160a01b0319166001600160a01b03831617905560408051606081019091526025808252620000c5919062001ad860208301396040518060600160405280602e815260200162001de6602e913980516020918201208251928201929092206001600160e01b0319165f9081529081905260409020805463ffffffff191660e09290921c919091179055565b6200013b60405180606001604052806029815260200162001b636029913960405180606001604052806032815260200162001be96032913980516020918201208251928201929092206001600160e01b0319165f9081529081905260409020805463ffffffff191660e09290921c919091179055565b620001b16040518060600160405280602f815260200162001cf2602f913960405180606001604052806038815260200162001afd6038913980516020918201208251928201929092206001600160e01b0319165f9081529081905260409020805463ffffffff191660e09290921c919091179055565b6200021d6040518060400160405280600d81526020016c6275726e2875696e743235362960981b8152506040518060400160405280601681526020017f6275726e466f722875696e743235362c627974657329000000000000000000008152506200060c60201b60201c565b6200029360405180606001604052806021815260200162001dc5602191396040518060600160405280602a815260200162001cc8602a913980516020918201208251928201929092206001600160e01b0319165f9081529081905260409020805463ffffffff191660e09290921c919091179055565b6200030960405180606001604052806025815260200162001c3d602591396040518060600160405280602e815260200162001b35602e913980516020918201208251928201929092206001600160e01b0319165f9081529081905260409020805463ffffffff191660e09290921c919091179055565b6200037f6040518060600160405280602b815260200162001d5c602b913960405180606001604052806034815260200162001aa46034913980516020918201208251928201929092206001600160e01b0319165f9081529081905260409020805463ffffffff191660e09290921c919091179055565b620003f560405180606001604052806031815260200162001c97603191396040518060600160405280603a815260200162001baf603a913980516020918201208251928201929092206001600160e01b0319165f9081529081905260409020805463ffffffff191660e09290921c919091179055565b6200046b60405180606001604052806035815260200162001c62603591396040518060600160405280603e815260200162001d87603e913980516020918201208251928201929092206001600160e01b0319165f9081529081905260409020805463ffffffff191660e09290921c919091179055565b620004e16040518060600160405280603b815260200162001d21603b913960405180608001604052806044815260200162001e146044913980516020918201208251928201929092206001600160e01b0319165f9081529081905260409020805463ffffffff191660e09290921c919091179055565b620005736040518060400160405280601981526020017f6275726e4368696c642875696e743235362c737472696e67290000000000000081525060405180606001604052806022815260200162001c1b6022913980516020918201208251928201929092206001600160e01b0319165f9081529081905260409020805463ffffffff191660e09290921c919091179055565b620006056040518060400160405280601a81526020017f7265736f6c7665546f28616464726573732c75696e743235362900000000000081525060405180606001604052806023815260200162001b8c6023913980516020918201208251928201929092206001600160e01b0319165f9081529081905260409020805463ffffffff191660e09290921c919091179055565b5062000679565b80516020918201208251928201929092206001600160e01b0319165f9081529081905260409020805463ffffffff191660e09290921c919091179055565b5f602082840312156200065b575f80fd5b81516001600160a01b038116811462000672575f80fd5b9392505050565b61141d80620006875f395ff3fe608060405234801561000f575f80fd5b506004361061003f575f3560e01c80631bf7e13e146100435780636ccbae5f1461006c578063a42474001461008d575b5f80fd5b610056610051366004610c6c565b6100b0565b6040516100639190610d4f565b60405180910390f35b61007f61007a366004610d61565b61015c565b604051908152602001610063565b6100a061009b366004610c6c565b6101cd565b6040519015158152602001610063565b60605f5a90506101516100c66020870187610d8c565b6001546001600160a01b03166040880135846100e560608b018b610da7565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f9201919091525061022a92505050565b9150505b9392505050565b600154604051636ccbae5f60e01b8152600481018390525f916001600160a01b031690636ccbae5f90602401602060405180830381865afa1580156101a3573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101c79190610dea565b92915050565b5f6102226101da85610e96565b600154604080516020601f88018190048102820181019092528681526001600160a01b03909216919087908790819084018382808284375f920191909152506102fd92505050565b949350505050565b60605f80876001600160a01b0316866102458b8a8989610343565b6040516102529190610f3a565b5f604051808303815f8787f1925050503d805f811461028c576040519150601f19603f3d011682016040523d82523d5f602084013e610291565b606091505b5090925090506102a2603f87610f55565b5a116102b0576102b0610f74565b6102f082826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506103f6565b9998505050505050505050565b5f61030984848461042f565b8015610222575060608401516020908101516001600160e01b03199081165f9081529182905260409091205460e01b161515610222565b50565b6020808301516001600160e01b0319165f9081529081905260408120546060919060e01b90506001600160e01b031981165f036103d35760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526103eb828286610574565b979650505050505050565b60608315610405575081610155565b8251156104155782518084602001fd5b8160405162461bcd60e51b81526004016103ca9190610d4f565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015610473573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104979190610dea565b90505f6105448660600151805190602001208688602001516040516020016104e49392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561056a5750855161056a906001600160a01b03168286610a0a565b9695505050505050565b60606001600160e01b03198416631de5861160e31b03610600575f805f858060200190518101906105a59190610f88565b92509250925086838383886040516024016105c39493929190610fc8565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152935061015592505050565b6001600160e01b03198416636debcb8d60e01b0361062f575f805f858060200190518101906105a59190610f88565b6001600160e01b0319841663280d9b0560e01b036106bf575f805f808680602001905181019061065f919061103c565b935093509350935087848484848a6040516024016106819594939291906110a6565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915294506101559350505050565b6001600160e01b031984166361603dd960e01b0361073d575f838060200190518101906106ec9190610dea565b90508481846040516024016107029291906110ea565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915291506101559050565b6001600160e01b0319841663b34f33c560e01b0361078a575f805f8580602001905181019061076c9190611102565b92509250925086838383886040516024016105c39493929190611158565b6001600160e01b03198416633013529360e01b036107b9575f805f8580602001905181019061076c9190611102565b6001600160e01b031984166307eca39560e01b0361080b575f805f80868060200190518101906107e99190611190565b935093509350935087848484848a604051602401610681959493929190611200565b6001600160e01b031984166368b6154f60e01b0361083b575f805f808680602001905181019061065f919061103c565b6001600160e01b0319841663341de35b60e21b0361086b575f805f808680602001905181019061065f919061103c565b6001600160e01b03198416637a84860f60e11b03610901575f805f805f8780602001905181019061089c919061124c565b945094509450945094508885858585858c6040516024016108c2969594939291906112db565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092179091529550610155945050505050565b6001600160e01b03198416636fab95b360e01b03610985575f808480602001905181019061092f9190611333565b915091508582828660405160240161094993929190611377565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092179091529250610155915050565b6001600160e01b0319841663288f888960e11b03610155575f80848060200190518101906109b391906113a1565b91509150858282866040516024016109cd939291906113cd565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925050509392505050565b5f805f610a178585610b45565b90925090505f816004811115610a2f57610a2f6113fc565b148015610a4d5750856001600160a01b0316826001600160a01b0316145b15610a5d57600192505050610155565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401610a849291906110ea565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051610ac29190610f3a565b5f60405180830381855afa9150503d805f8114610afa576040519150601f19603f3d011682016040523d82523d5f602084013e610aff565b606091505b5091509150818015610b12575080516020145b8015610b3957508051630b135d3f60e11b90610b379083016020908101908401610dea565b145b98975050505050505050565b5f808251604103610b79576020830151604084015160608501515f1a610b6d87828585610b87565b94509450505050610b80565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610bbc57505f90506003610c63565b8460ff16601b14158015610bd457508460ff16601c14155b15610be457505f90506004610c63565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610c35573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b038116610c5d575f60019250925050610c63565b91505f90505b94509492505050565b5f805f60408486031215610c7e575f80fd5b833567ffffffffffffffff80821115610c95575f80fd5b9085019060808288031215610ca8575f80fd5b90935060208501359080821115610cbd575f80fd5b818601915086601f830112610cd0575f80fd5b813581811115610cde575f80fd5b876020828501011115610cef575f80fd5b6020830194508093505050509250925092565b5f5b83811015610d1c578181015183820152602001610d04565b50505f910152565b5f8151808452610d3b816020860160208601610d02565b601f01601f19169290920160200192915050565b602081525f6101556020830184610d24565b5f60208284031215610d71575f80fd5b5035919050565b6001600160a01b0381168114610340575f80fd5b5f60208284031215610d9c575f80fd5b813561015581610d78565b5f808335601e19843603018112610dbc575f80fd5b83018035915067ffffffffffffffff821115610dd6575f80fd5b602001915036819003821315610b80575f80fd5b5f60208284031215610dfa575f80fd5b5051919050565b634e487b7160e01b5f52604160045260245ffd5b6040516080810167ffffffffffffffff81118282101715610e3857610e38610e01565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610e6757610e67610e01565b604052919050565b5f67ffffffffffffffff821115610e8857610e88610e01565b50601f01601f191660200190565b5f60808236031215610ea6575f80fd5b610eae610e15565b8235610eb981610d78565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610ee8575f80fd5b840136601f820112610ef8575f80fd5b8035610f0b610f0682610e6f565b610e3e565b8181523684838501011115610f1e575f80fd5b81848401858301375f9181019093015250606082015292915050565b5f8251610f4b818460208701610d02565b9190910192915050565b5f82610f6f57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b5f805f60608486031215610f9a575f80fd5b8351610fa581610d78565b6020850151909350610fb681610d78565b80925050604084015190509250925092565b6001600160a01b03858116825284166020820152604081018390526080606082018190525f9061056a90830184610d24565b5f82601f830112611009575f80fd5b8151611017610f0682610e6f565b81815284602083860101111561102b575f80fd5b610222826020830160208701610d02565b5f805f806080858703121561104f575f80fd5b845161105a81610d78565b602086015190945061106b81610d78565b60408601516060870151919450925067ffffffffffffffff81111561108e575f80fd5b61109a87828801610ffa565b91505092959194509250565b6001600160a01b038681168252851660208201526040810184905260a0606082018190525f906110d890830185610d24565b8281036080840152610b398185610d24565b828152604060208201525f6102226040830184610d24565b5f805f60608486031215611114575f80fd5b835161111f81610d78565b60208501516040860151919450925067ffffffffffffffff811115611142575f80fd5b61114e86828701610ffa565b9150509250925092565b60018060a01b0385168152836020820152608060408201525f61117e6080830185610d24565b82810360608401526103eb8185610d24565b5f805f80608085870312156111a3575f80fd5b84516111ae81610d78565b60208601516040870151919550935067ffffffffffffffff808211156111d2575f80fd5b6111de88838901610ffa565b935060608701519150808211156111f3575f80fd5b5061109a87828801610ffa565b60018060a01b038616815284602082015260a060408201525f61122660a0830186610d24565b82810360608401526112388186610d24565b90508281036080840152610b398185610d24565b5f805f805f60a08688031215611260575f80fd5b855161126b81610d78565b602087015190955061127c81610d78565b60408701516060880151919550935067ffffffffffffffff808211156112a0575f80fd5b6112ac89838a01610ffa565b935060808801519150808211156112c1575f80fd5b506112ce88828901610ffa565b9150509295509295909350565b6001600160a01b038781168252861660208201526040810185905260c0606082018190525f9061130d90830186610d24565b828103608084015261131f8186610d24565b905082810360a08401526102f08185610d24565b5f8060408385031215611344575f80fd5b82519150602083015167ffffffffffffffff811115611361575f80fd5b61136d85828601610ffa565b9150509250929050565b838152606060208201525f61138f6060830185610d24565b828103604084015261056a8185610d24565b5f80604083850312156113b2575f80fd5b82516113bd81610d78565b6020939093015192949293505050565b60018060a01b0384168152826020820152606060408201525f6113f36060830184610d24565b95945050505050565b634e487b7160e01b5f52602160045260245ffdfea164736f6c6343000818000a736166654d696e744368696c64466f7228616464726573732c75696e743235362c737472696e672c62797465732c6279746573297472616e7366657246726f6d28616464726573732c616464726573732c75696e7432353629736166655472616e7366657246726f6d466f7228616464726573732c616464726573732c75696e743235362c62797465732c627974657329736166654d696e744368696c64466f7228616464726573732c75696e743235362c737472696e672c627974657329736166655472616e7366657246726f6d28616464726573732c616464726573732c75696e74323536297265736f6c7665546f466f7228616464726573732c75696e743235362c6279746573297472616e7366657246726f6d4368696c64466f7228616464726573732c616464726573732c75696e743235362c737472696e672c627974657329736166655472616e7366657246726f6d466f7228616464726573732c616464726573732c75696e743235362c6279746573296275726e4368696c64466f722875696e743235362c737472696e672c627974657329736166654d696e744368696c6428616464726573732c75696e743235362c737472696e6729736166655472616e7366657246726f6d4368696c6428616464726573732c616464726573732c75696e743235362c737472696e67297472616e7366657246726f6d4368696c6428616464726573732c616464726573732c75696e743235362c737472696e67296d696e744368696c64466f7228616464726573732c75696e743235362c737472696e672c627974657329736166655472616e7366657246726f6d28616464726573732c616464726573732c75696e743235362c627974657329736166655472616e7366657246726f6d4368696c6428616464726573732c616464726573732c75696e743235362c737472696e672c627974657329736166654d696e744368696c6428616464726573732c75696e743235362c737472696e672c627974657329736166655472616e7366657246726f6d4368696c64466f7228616464726573732c616464726573732c75696e743235362c737472696e672c6279746573296d696e744368696c6428616464726573732c75696e743235362c737472696e67297472616e7366657246726f6d466f7228616464726573732c616464726573732c75696e743235362c627974657329736166655472616e7366657246726f6d4368696c64466f7228616464726573732c616464726573732c75696e743235362c737472696e672c62797465732c627974657329", - "deployedBytecode": "0x608060405234801561000f575f80fd5b506004361061003f575f3560e01c80631bf7e13e146100435780636ccbae5f1461006c578063a42474001461008d575b5f80fd5b610056610051366004610c6c565b6100b0565b6040516100639190610d4f565b60405180910390f35b61007f61007a366004610d61565b61015c565b604051908152602001610063565b6100a061009b366004610c6c565b6101cd565b6040519015158152602001610063565b60605f5a90506101516100c66020870187610d8c565b6001546001600160a01b03166040880135846100e560608b018b610da7565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f9201919091525061022a92505050565b9150505b9392505050565b600154604051636ccbae5f60e01b8152600481018390525f916001600160a01b031690636ccbae5f90602401602060405180830381865afa1580156101a3573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101c79190610dea565b92915050565b5f6102226101da85610e96565b600154604080516020601f88018190048102820181019092528681526001600160a01b03909216919087908790819084018382808284375f920191909152506102fd92505050565b949350505050565b60605f80876001600160a01b0316866102458b8a8989610343565b6040516102529190610f3a565b5f604051808303815f8787f1925050503d805f811461028c576040519150601f19603f3d011682016040523d82523d5f602084013e610291565b606091505b5090925090506102a2603f87610f55565b5a116102b0576102b0610f74565b6102f082826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506103f6565b9998505050505050505050565b5f61030984848461042f565b8015610222575060608401516020908101516001600160e01b03199081165f9081529182905260409091205460e01b161515610222565b50565b6020808301516001600160e01b0319165f9081529081905260408120546060919060e01b90506001600160e01b031981165f036103d35760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526103eb828286610574565b979650505050505050565b60608315610405575081610155565b8251156104155782518084602001fd5b8160405162461bcd60e51b81526004016103ca9190610d4f565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015610473573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104979190610dea565b90505f6105448660600151805190602001208688602001516040516020016104e49392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561056a5750855161056a906001600160a01b03168286610a0a565b9695505050505050565b60606001600160e01b03198416631de5861160e31b03610600575f805f858060200190518101906105a59190610f88565b92509250925086838383886040516024016105c39493929190610fc8565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152935061015592505050565b6001600160e01b03198416636debcb8d60e01b0361062f575f805f858060200190518101906105a59190610f88565b6001600160e01b0319841663280d9b0560e01b036106bf575f805f808680602001905181019061065f919061103c565b935093509350935087848484848a6040516024016106819594939291906110a6565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915294506101559350505050565b6001600160e01b031984166361603dd960e01b0361073d575f838060200190518101906106ec9190610dea565b90508481846040516024016107029291906110ea565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915291506101559050565b6001600160e01b0319841663b34f33c560e01b0361078a575f805f8580602001905181019061076c9190611102565b92509250925086838383886040516024016105c39493929190611158565b6001600160e01b03198416633013529360e01b036107b9575f805f8580602001905181019061076c9190611102565b6001600160e01b031984166307eca39560e01b0361080b575f805f80868060200190518101906107e99190611190565b935093509350935087848484848a604051602401610681959493929190611200565b6001600160e01b031984166368b6154f60e01b0361083b575f805f808680602001905181019061065f919061103c565b6001600160e01b0319841663341de35b60e21b0361086b575f805f808680602001905181019061065f919061103c565b6001600160e01b03198416637a84860f60e11b03610901575f805f805f8780602001905181019061089c919061124c565b945094509450945094508885858585858c6040516024016108c2969594939291906112db565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092179091529550610155945050505050565b6001600160e01b03198416636fab95b360e01b03610985575f808480602001905181019061092f9190611333565b915091508582828660405160240161094993929190611377565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092179091529250610155915050565b6001600160e01b0319841663288f888960e11b03610155575f80848060200190518101906109b391906113a1565b91509150858282866040516024016109cd939291906113cd565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925050509392505050565b5f805f610a178585610b45565b90925090505f816004811115610a2f57610a2f6113fc565b148015610a4d5750856001600160a01b0316826001600160a01b0316145b15610a5d57600192505050610155565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401610a849291906110ea565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051610ac29190610f3a565b5f60405180830381855afa9150503d805f8114610afa576040519150601f19603f3d011682016040523d82523d5f602084013e610aff565b606091505b5091509150818015610b12575080516020145b8015610b3957508051630b135d3f60e11b90610b379083016020908101908401610dea565b145b98975050505050505050565b5f808251604103610b79576020830151604084015160608501515f1a610b6d87828585610b87565b94509450505050610b80565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610bbc57505f90506003610c63565b8460ff16601b14158015610bd457508460ff16601c14155b15610be457505f90506004610c63565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610c35573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b038116610c5d575f60019250925050610c63565b91505f90505b94509492505050565b5f805f60408486031215610c7e575f80fd5b833567ffffffffffffffff80821115610c95575f80fd5b9085019060808288031215610ca8575f80fd5b90935060208501359080821115610cbd575f80fd5b818601915086601f830112610cd0575f80fd5b813581811115610cde575f80fd5b876020828501011115610cef575f80fd5b6020830194508093505050509250925092565b5f5b83811015610d1c578181015183820152602001610d04565b50505f910152565b5f8151808452610d3b816020860160208601610d02565b601f01601f19169290920160200192915050565b602081525f6101556020830184610d24565b5f60208284031215610d71575f80fd5b5035919050565b6001600160a01b0381168114610340575f80fd5b5f60208284031215610d9c575f80fd5b813561015581610d78565b5f808335601e19843603018112610dbc575f80fd5b83018035915067ffffffffffffffff821115610dd6575f80fd5b602001915036819003821315610b80575f80fd5b5f60208284031215610dfa575f80fd5b5051919050565b634e487b7160e01b5f52604160045260245ffd5b6040516080810167ffffffffffffffff81118282101715610e3857610e38610e01565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610e6757610e67610e01565b604052919050565b5f67ffffffffffffffff821115610e8857610e88610e01565b50601f01601f191660200190565b5f60808236031215610ea6575f80fd5b610eae610e15565b8235610eb981610d78565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610ee8575f80fd5b840136601f820112610ef8575f80fd5b8035610f0b610f0682610e6f565b610e3e565b8181523684838501011115610f1e575f80fd5b81848401858301375f9181019093015250606082015292915050565b5f8251610f4b818460208701610d02565b9190910192915050565b5f82610f6f57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b5f805f60608486031215610f9a575f80fd5b8351610fa581610d78565b6020850151909350610fb681610d78565b80925050604084015190509250925092565b6001600160a01b03858116825284166020820152604081018390526080606082018190525f9061056a90830184610d24565b5f82601f830112611009575f80fd5b8151611017610f0682610e6f565b81815284602083860101111561102b575f80fd5b610222826020830160208701610d02565b5f805f806080858703121561104f575f80fd5b845161105a81610d78565b602086015190945061106b81610d78565b60408601516060870151919450925067ffffffffffffffff81111561108e575f80fd5b61109a87828801610ffa565b91505092959194509250565b6001600160a01b038681168252851660208201526040810184905260a0606082018190525f906110d890830185610d24565b8281036080840152610b398185610d24565b828152604060208201525f6102226040830184610d24565b5f805f60608486031215611114575f80fd5b835161111f81610d78565b60208501516040860151919450925067ffffffffffffffff811115611142575f80fd5b61114e86828701610ffa565b9150509250925092565b60018060a01b0385168152836020820152608060408201525f61117e6080830185610d24565b82810360608401526103eb8185610d24565b5f805f80608085870312156111a3575f80fd5b84516111ae81610d78565b60208601516040870151919550935067ffffffffffffffff808211156111d2575f80fd5b6111de88838901610ffa565b935060608701519150808211156111f3575f80fd5b5061109a87828801610ffa565b60018060a01b038616815284602082015260a060408201525f61122660a0830186610d24565b82810360608401526112388186610d24565b90508281036080840152610b398185610d24565b5f805f805f60a08688031215611260575f80fd5b855161126b81610d78565b602087015190955061127c81610d78565b60408701516060880151919550935067ffffffffffffffff808211156112a0575f80fd5b6112ac89838a01610ffa565b935060808801519150808211156112c1575f80fd5b506112ce88828901610ffa565b9150509295509295909350565b6001600160a01b038781168252861660208201526040810185905260c0606082018190525f9061130d90830186610d24565b828103608084015261131f8186610d24565b905082810360a08401526102f08185610d24565b5f8060408385031215611344575f80fd5b82519150602083015167ffffffffffffffff811115611361575f80fd5b61136d85828601610ffa565b9150509250929050565b838152606060208201525f61138f6060830185610d24565b828103604084015261056a8185610d24565b5f80604083850312156113b2575f80fd5b82516113bd81610d78565b6020939093015192949293505050565b60018060a01b0384168152826020820152606060408201525f6113f36060830184610d24565b95945050505050565b634e487b7160e01b5f52602160045260245ffdfea164736f6c6343000818000a", + "bytecode": "0x60806040523480156200001157600080fd5b5060405162001ef938038062001ef9833981016040819052620000349162000657565b600180546001600160a01b0319166001600160a01b03831617905560408051606081019091526025808252620000c7919062001b7960208301396040518060600160405280602e815260200162001e87602e913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b6200013e60405180606001604052806029815260200162001c046029913960405180606001604052806032815260200162001c8a6032913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b620001b56040518060600160405280602f815260200162001d93602f913960405180606001604052806038815260200162001b9e6038913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b620002216040518060400160405280600d81526020016c6275726e2875696e743235362960981b8152506040518060400160405280601681526020017f6275726e466f722875696e743235362c627974657329000000000000000000008152506200061860201b60201c565b6200029860405180606001604052806021815260200162001e66602191396040518060600160405280602a815260200162001d69602a913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b6200030f60405180606001604052806025815260200162001cde602591396040518060600160405280602e815260200162001bd6602e913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b620003866040518060600160405280602b815260200162001dfd602b913960405180606001604052806034815260200162001b456034913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b620003fd60405180606001604052806031815260200162001d38603191396040518060600160405280603a815260200162001c50603a913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b6200047460405180606001604052806035815260200162001d03603591396040518060600160405280603e815260200162001e28603e913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b620004eb6040518060600160405280603b815260200162001dc2603b913960405180608001604052806044815260200162001eb56044913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b6200057e6040518060400160405280601981526020017f6275726e4368696c642875696e743235362c737472696e67290000000000000081525060405180606001604052806022815260200162001cbc6022913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b620006116040518060400160405280601a81526020017f7265736f6c7665546f28616464726573732c75696e743235362900000000000081525060405180606001604052806023815260200162001c2d6023913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b5062000689565b80516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b6000602082840312156200066a57600080fd5b81516001600160a01b03811681146200068257600080fd5b9392505050565b6114ac80620006996000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a424740014610090575b600080fd5b610059610054366004610cac565b6100b3565b6040516100669190610d9b565b60405180910390f35b61008261007d366004610dae565b610162565b604051908152602001610066565b6100a361009e366004610cac565b6101d6565b6040519015158152602001610066565b606060005a90506101576100ca6020870187610ddc565b6001546001600160a01b03166040880135846100e960608b018b610df9565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061023592505050565b9150505b9392505050565b600154604051636ccbae5f60e01b8152600481018390526000916001600160a01b031690636ccbae5f90602401602060405180830381865afa1580156101ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d09190610e40565b92915050565b600061022d6101e485610ef1565b600154604080516020601f88018190048102820181019092528681526001600160a01b039092169190879087908190840183828082843760009201919091525061030d92505050565b949350505050565b6060600080876001600160a01b0316866102518b8a8989610355565b60405161025e9190610f9b565b60006040518083038160008787f1925050503d806000811461029c576040519150601f19603f3d011682016040523d82523d6000602084013e6102a1565b606091505b5090925090506102b2603f87610fb7565b5a116102c0576102c0610fd9565b61030082826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061040a565b9998505050505050505050565b600061031a848484610443565b801561022d575060608401516020908101516001600160e01b031990811660009081529182905260409091205460e01b16151561022d565b50565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036103e75760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526103ff82828661058c565b979650505050505050565b6060831561041957508161015b565b8251156104295782518084602001fd5b8160405162461bcd60e51b81526004016103de9190610d9b565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561048a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104ae9190610e40565b9050600061055c8660600151805190602001208688602001516040516020016104fc9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561058257508551610582906001600160a01b03168286610a38565b9695505050505050565b60606001600160e01b03198416631de5861160e31b0361061a576000806000858060200190518101906105bf9190610fef565b92509250925086838383886040516024016105dd9493929190611032565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152935061015b92505050565b6001600160e01b03198416636debcb8d60e01b0361064b576000806000858060200190518101906105bf9190610fef565b6001600160e01b0319841663280d9b0560e01b036106dd576000806000808680602001905181019061067d91906110aa565b935093509350935087848484848a60405160240161069f959493929190611118565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152945061015b9350505050565b6001600160e01b031984166361603dd960e01b0361075c5760008380602001905181019061070b9190610e40565b905084818460405160240161072192919061115d565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152915061015b9050565b6001600160e01b0319841663b34f33c560e01b036107ab5760008060008580602001905181019061078d9190611176565b92509250925086838383886040516024016105dd94939291906111d0565b6001600160e01b03198416633013529360e01b036107dc5760008060008580602001905181019061078d9190611176565b6001600160e01b031984166307eca39560e01b03610830576000806000808680602001905181019061080e9190611209565b935093509350935087848484848a60405160240161069f95949392919061127e565b6001600160e01b031984166368b6154f60e01b03610862576000806000808680602001905181019061067d91906110aa565b6001600160e01b0319841663341de35b60e21b03610894576000806000808680602001905181019061067d91906110aa565b6001600160e01b03198416637a84860f60e11b0361092d576000806000806000878060200190518101906108c891906112cb565b945094509450945094508885858585858c6040516024016108ee96959493929190611360565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152955061015b945050505050565b6001600160e01b03198416636fab95b360e01b036109b2576000808480602001905181019061095c91906113b9565b915091508582828660405160240161097693929190611400565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925061015b915050565b6001600160e01b0319841663288f888960e11b0361015b57600080848060200190518101906109e1919061142b565b91509150858282866040516024016109fb93929190611459565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925050509392505050565b6000806000610a478585610b7a565b90925090506000816004811115610a6057610a60611489565b148015610a7e5750856001600160a01b0316826001600160a01b0316145b15610a8e5760019250505061015b565b600080876001600160a01b0316631626ba7e60e01b8888604051602401610ab692919061115d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051610af49190610f9b565b600060405180830381855afa9150503d8060008114610b2f576040519150601f19603f3d011682016040523d82523d6000602084013e610b34565b606091505b5091509150818015610b47575080516020145b8015610b6e57508051630b135d3f60e11b90610b6c9083016020908101908401610e40565b145b98975050505050505050565b6000808251604103610bb05760208301516040840151606085015160001a610ba487828585610bbf565b94509450505050610bb8565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610bf65750600090506003610ca3565b8460ff16601b14158015610c0e57508460ff16601c14155b15610c1f5750600090506004610ca3565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610c73573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610c9c57600060019250925050610ca3565b9150600090505b94509492505050565b600080600060408486031215610cc157600080fd5b833567ffffffffffffffff80821115610cd957600080fd5b9085019060808288031215610ced57600080fd5b90935060208501359080821115610d0357600080fd5b818601915086601f830112610d1757600080fd5b813581811115610d2657600080fd5b876020828501011115610d3857600080fd5b6020830194508093505050509250925092565b60005b83811015610d66578181015183820152602001610d4e565b50506000910152565b60008151808452610d87816020860160208601610d4b565b601f01601f19169290920160200192915050565b60208152600061015b6020830184610d6f565b600060208284031215610dc057600080fd5b5035919050565b6001600160a01b038116811461035257600080fd5b600060208284031215610dee57600080fd5b813561015b81610dc7565b6000808335601e19843603018112610e1057600080fd5b83018035915067ffffffffffffffff821115610e2b57600080fd5b602001915036819003821315610bb857600080fd5b600060208284031215610e5257600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610e9257610e92610e59565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ec157610ec1610e59565b604052919050565b600067ffffffffffffffff821115610ee357610ee3610e59565b50601f01601f191660200190565b600060808236031215610f0357600080fd5b610f0b610e6f565b8235610f1681610dc7565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610f4657600080fd5b840136601f820112610f5757600080fd5b8035610f6a610f6582610ec9565b610e98565b8181523684838501011115610f7e57600080fd5b818484018583013760009181019093015250606082015292915050565b60008251610fad818460208701610d4b565b9190910192915050565b600082610fd457634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b60008060006060848603121561100457600080fd5b835161100f81610dc7565b602085015190935061102081610dc7565b80925050604084015190509250925092565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061058290830184610d6f565b600082601f83011261107657600080fd5b8151611084610f6582610ec9565b81815284602083860101111561109957600080fd5b61022d826020830160208701610d4b565b600080600080608085870312156110c057600080fd5b84516110cb81610dc7565b60208601519094506110dc81610dc7565b60408601516060870151919450925067ffffffffffffffff81111561110057600080fd5b61110c87828801611065565b91505092959194509250565b6001600160a01b038681168252851660208201526040810184905260a06060820181905260009061114b90830185610d6f565b8281036080840152610b6e8185610d6f565b82815260406020820152600061022d6040830184610d6f565b60008060006060848603121561118b57600080fd5b835161119681610dc7565b60208501516040860151919450925067ffffffffffffffff8111156111ba57600080fd5b6111c686828701611065565b9150509250925092565b60018060a01b03851681528360208201526080604082015260006111f76080830185610d6f565b82810360608401526103ff8185610d6f565b6000806000806080858703121561121f57600080fd5b845161122a81610dc7565b60208601516040870151919550935067ffffffffffffffff8082111561124f57600080fd5b61125b88838901611065565b9350606087015191508082111561127157600080fd5b5061110c87828801611065565b60018060a01b038616815284602082015260a0604082015260006112a560a0830186610d6f565b82810360608401526112b78186610d6f565b90508281036080840152610b6e8185610d6f565b600080600080600060a086880312156112e357600080fd5b85516112ee81610dc7565b60208701519095506112ff81610dc7565b60408701516060880151919550935067ffffffffffffffff8082111561132457600080fd5b61133089838a01611065565b9350608088015191508082111561134657600080fd5b5061135388828901611065565b9150509295509295909350565b6001600160a01b038781168252861660208201526040810185905260c06060820181905260009061139390830186610d6f565b82810360808401526113a58186610d6f565b905082810360a08401526103008185610d6f565b600080604083850312156113cc57600080fd5b82519150602083015167ffffffffffffffff8111156113ea57600080fd5b6113f685828601611065565b9150509250929050565b8381526060602082015260006114196060830185610d6f565b82810360408401526105828185610d6f565b6000806040838503121561143e57600080fd5b825161144981610dc7565b6020939093015192949293505050565b60018060a01b03841681528260208201526060604082015260006114806060830184610d6f565b95945050505050565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a736166654d696e744368696c64466f7228616464726573732c75696e743235362c737472696e672c62797465732c6279746573297472616e7366657246726f6d28616464726573732c616464726573732c75696e7432353629736166655472616e7366657246726f6d466f7228616464726573732c616464726573732c75696e743235362c62797465732c627974657329736166654d696e744368696c64466f7228616464726573732c75696e743235362c737472696e672c627974657329736166655472616e7366657246726f6d28616464726573732c616464726573732c75696e74323536297265736f6c7665546f466f7228616464726573732c75696e743235362c6279746573297472616e7366657246726f6d4368696c64466f7228616464726573732c616464726573732c75696e743235362c737472696e672c627974657329736166655472616e7366657246726f6d466f7228616464726573732c616464726573732c75696e743235362c6279746573296275726e4368696c64466f722875696e743235362c737472696e672c627974657329736166654d696e744368696c6428616464726573732c75696e743235362c737472696e6729736166655472616e7366657246726f6d4368696c6428616464726573732c616464726573732c75696e743235362c737472696e67297472616e7366657246726f6d4368696c6428616464726573732c616464726573732c75696e743235362c737472696e67296d696e744368696c64466f7228616464726573732c75696e743235362c737472696e672c627974657329736166655472616e7366657246726f6d28616464726573732c616464726573732c75696e743235362c627974657329736166655472616e7366657246726f6d4368696c6428616464726573732c616464726573732c75696e743235362c737472696e672c627974657329736166654d696e744368696c6428616464726573732c75696e743235362c737472696e672c627974657329736166655472616e7366657246726f6d4368696c64466f7228616464726573732c616464726573732c75696e743235362c737472696e672c6279746573296d696e744368696c6428616464726573732c75696e743235362c737472696e67297472616e7366657246726f6d466f7228616464726573732c616464726573732c75696e743235362c627974657329736166655472616e7366657246726f6d4368696c64466f7228616464726573732c616464726573732c75696e743235362c737472696e672c62797465732c627974657329", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a424740014610090575b600080fd5b610059610054366004610cac565b6100b3565b6040516100669190610d9b565b60405180910390f35b61008261007d366004610dae565b610162565b604051908152602001610066565b6100a361009e366004610cac565b6101d6565b6040519015158152602001610066565b606060005a90506101576100ca6020870187610ddc565b6001546001600160a01b03166040880135846100e960608b018b610df9565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061023592505050565b9150505b9392505050565b600154604051636ccbae5f60e01b8152600481018390526000916001600160a01b031690636ccbae5f90602401602060405180830381865afa1580156101ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d09190610e40565b92915050565b600061022d6101e485610ef1565b600154604080516020601f88018190048102820181019092528681526001600160a01b039092169190879087908190840183828082843760009201919091525061030d92505050565b949350505050565b6060600080876001600160a01b0316866102518b8a8989610355565b60405161025e9190610f9b565b60006040518083038160008787f1925050503d806000811461029c576040519150601f19603f3d011682016040523d82523d6000602084013e6102a1565b606091505b5090925090506102b2603f87610fb7565b5a116102c0576102c0610fd9565b61030082826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061040a565b9998505050505050505050565b600061031a848484610443565b801561022d575060608401516020908101516001600160e01b031990811660009081529182905260409091205460e01b16151561022d565b50565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036103e75760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526103ff82828661058c565b979650505050505050565b6060831561041957508161015b565b8251156104295782518084602001fd5b8160405162461bcd60e51b81526004016103de9190610d9b565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561048a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104ae9190610e40565b9050600061055c8660600151805190602001208688602001516040516020016104fc9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561058257508551610582906001600160a01b03168286610a38565b9695505050505050565b60606001600160e01b03198416631de5861160e31b0361061a576000806000858060200190518101906105bf9190610fef565b92509250925086838383886040516024016105dd9493929190611032565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152935061015b92505050565b6001600160e01b03198416636debcb8d60e01b0361064b576000806000858060200190518101906105bf9190610fef565b6001600160e01b0319841663280d9b0560e01b036106dd576000806000808680602001905181019061067d91906110aa565b935093509350935087848484848a60405160240161069f959493929190611118565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152945061015b9350505050565b6001600160e01b031984166361603dd960e01b0361075c5760008380602001905181019061070b9190610e40565b905084818460405160240161072192919061115d565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152915061015b9050565b6001600160e01b0319841663b34f33c560e01b036107ab5760008060008580602001905181019061078d9190611176565b92509250925086838383886040516024016105dd94939291906111d0565b6001600160e01b03198416633013529360e01b036107dc5760008060008580602001905181019061078d9190611176565b6001600160e01b031984166307eca39560e01b03610830576000806000808680602001905181019061080e9190611209565b935093509350935087848484848a60405160240161069f95949392919061127e565b6001600160e01b031984166368b6154f60e01b03610862576000806000808680602001905181019061067d91906110aa565b6001600160e01b0319841663341de35b60e21b03610894576000806000808680602001905181019061067d91906110aa565b6001600160e01b03198416637a84860f60e11b0361092d576000806000806000878060200190518101906108c891906112cb565b945094509450945094508885858585858c6040516024016108ee96959493929190611360565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152955061015b945050505050565b6001600160e01b03198416636fab95b360e01b036109b2576000808480602001905181019061095c91906113b9565b915091508582828660405160240161097693929190611400565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925061015b915050565b6001600160e01b0319841663288f888960e11b0361015b57600080848060200190518101906109e1919061142b565b91509150858282866040516024016109fb93929190611459565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925050509392505050565b6000806000610a478585610b7a565b90925090506000816004811115610a6057610a60611489565b148015610a7e5750856001600160a01b0316826001600160a01b0316145b15610a8e5760019250505061015b565b600080876001600160a01b0316631626ba7e60e01b8888604051602401610ab692919061115d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051610af49190610f9b565b600060405180830381855afa9150503d8060008114610b2f576040519150601f19603f3d011682016040523d82523d6000602084013e610b34565b606091505b5091509150818015610b47575080516020145b8015610b6e57508051630b135d3f60e11b90610b6c9083016020908101908401610e40565b145b98975050505050505050565b6000808251604103610bb05760208301516040840151606085015160001a610ba487828585610bbf565b94509450505050610bb8565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610bf65750600090506003610ca3565b8460ff16601b14158015610c0e57508460ff16601c14155b15610c1f5750600090506004610ca3565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610c73573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610c9c57600060019250925050610ca3565b9150600090505b94509492505050565b600080600060408486031215610cc157600080fd5b833567ffffffffffffffff80821115610cd957600080fd5b9085019060808288031215610ced57600080fd5b90935060208501359080821115610d0357600080fd5b818601915086601f830112610d1757600080fd5b813581811115610d2657600080fd5b876020828501011115610d3857600080fd5b6020830194508093505050509250925092565b60005b83811015610d66578181015183820152602001610d4e565b50506000910152565b60008151808452610d87816020860160208601610d4b565b601f01601f19169290920160200192915050565b60208152600061015b6020830184610d6f565b600060208284031215610dc057600080fd5b5035919050565b6001600160a01b038116811461035257600080fd5b600060208284031215610dee57600080fd5b813561015b81610dc7565b6000808335601e19843603018112610e1057600080fd5b83018035915067ffffffffffffffff821115610e2b57600080fd5b602001915036819003821315610bb857600080fd5b600060208284031215610e5257600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610e9257610e92610e59565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ec157610ec1610e59565b604052919050565b600067ffffffffffffffff821115610ee357610ee3610e59565b50601f01601f191660200190565b600060808236031215610f0357600080fd5b610f0b610e6f565b8235610f1681610dc7565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610f4657600080fd5b840136601f820112610f5757600080fd5b8035610f6a610f6582610ec9565b610e98565b8181523684838501011115610f7e57600080fd5b818484018583013760009181019093015250606082015292915050565b60008251610fad818460208701610d4b565b9190910192915050565b600082610fd457634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b60008060006060848603121561100457600080fd5b835161100f81610dc7565b602085015190935061102081610dc7565b80925050604084015190509250925092565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061058290830184610d6f565b600082601f83011261107657600080fd5b8151611084610f6582610ec9565b81815284602083860101111561109957600080fd5b61022d826020830160208701610d4b565b600080600080608085870312156110c057600080fd5b84516110cb81610dc7565b60208601519094506110dc81610dc7565b60408601516060870151919450925067ffffffffffffffff81111561110057600080fd5b61110c87828801611065565b91505092959194509250565b6001600160a01b038681168252851660208201526040810184905260a06060820181905260009061114b90830185610d6f565b8281036080840152610b6e8185610d6f565b82815260406020820152600061022d6040830184610d6f565b60008060006060848603121561118b57600080fd5b835161119681610dc7565b60208501516040860151919450925067ffffffffffffffff8111156111ba57600080fd5b6111c686828701611065565b9150509250925092565b60018060a01b03851681528360208201526080604082015260006111f76080830185610d6f565b82810360608401526103ff8185610d6f565b6000806000806080858703121561121f57600080fd5b845161122a81610dc7565b60208601516040870151919550935067ffffffffffffffff8082111561124f57600080fd5b61125b88838901611065565b9350606087015191508082111561127157600080fd5b5061110c87828801611065565b60018060a01b038616815284602082015260a0604082015260006112a560a0830186610d6f565b82810360608401526112b78186610d6f565b90508281036080840152610b6e8185610d6f565b600080600080600060a086880312156112e357600080fd5b85516112ee81610dc7565b60208701519095506112ff81610dc7565b60408701516060880151919550935067ffffffffffffffff8082111561132457600080fd5b61133089838a01611065565b9350608088015191508082111561134657600080fd5b5061135388828901611065565b9150509295509295909350565b6001600160a01b038781168252861660208201526040810185905260c06060820181905260009061139390830186610d6f565b82810360808401526113a58186610d6f565b905082810360a08401526103008185610d6f565b600080604083850312156113cc57600080fd5b82519150602083015167ffffffffffffffff8111156113ea57600080fd5b6113f685828601611065565b9150509250929050565b8381526060602082015260006114196060830185610d6f565b82810360408401526105828185610d6f565b6000806040838503121561143e57600080fd5b825161144981610dc7565b6020939093015192949293505050565b60018060a01b03841681528260208201526060604082015260006114806060830184610d6f565b95945050505050565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/artifacts/ResolverForwarder.json b/artifacts/ResolverForwarder.json index d9937497..cf8fedf7 100644 --- a/artifacts/ResolverForwarder.json +++ b/artifacts/ResolverForwarder.json @@ -131,8 +131,8 @@ "type": "function" } ], - "bytecode": "0x608060405234801562000010575f80fd5b50604051620014bc380380620014bc833981016040819052620000339162000280565b600180546001600160a01b038481166001600160a01b0319928316179092556002805492841692909116919091179055604080518082018252600e81526d72657365742875696e743235362960901b602080830191825283518085018552601781527f7265736574466f722875696e743235362c62797465732900000000000000000090820152915190206001600160e01b0319165f9081529081905220805463ffffffff191663b87abc11179055620001746040518060400160405280601a81526020017f73657428737472696e672c737472696e672c75696e7432353629000000000000815250604051806060016040528060238152602001620014516023913980516020918201208251928201929092206001600160e01b0319165f9081529081905260409020805463ffffffff191660e09290921c919091179055565b620001ea60405180606001604052806022815260200162001474602291396040518060600160405280602b8152602001620013f7602b913980516020918201208251928201929092206001600160e01b0319165f9081529081905260409020805463ffffffff191660e09290921c919091179055565b6200026060405180606001604052806026815260200162001496602691396040518060600160405280602f815260200162001422602f913980516020918201208251928201929092206001600160e01b0319165f9081529081905260409020805463ffffffff191660e09290921c919091179055565b5050620002bd565b6001600160a01b03811681146200027d575f80fd5b50565b5f806040838503121562000292575f80fd5b82516200029f8162000268565b6020840151909250620002b28162000268565b809150509250929050565b61112c80620002cb5f395ff3fe608060405234801561000f575f80fd5b506004361061003f575f3560e01c80631bf7e13e146100435780636ccbae5f1461006c578063a42474001461008d575b5f80fd5b610056610051366004610b73565b6100b0565b6040516100639190610c56565b60405180910390f35b61007f61007a366004610c68565b6101c5565b604051908152602001610063565b6100a061009b366004610b73565b610326565b6040519015158152602001610063565b60605f5a6001546040805163b3f9e4cb60e01b81529088013560048201529192505f916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa158015610103573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101279190610c93565b90506101b96101396020880188610cae565b8260408901358561014d60608c018c610cc9565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8f018190048102820181019092528d815292508d91508c90819084018382808284375f920191909152506103eb92505050565b925050505b9392505050565b60025460015460405163b3f9e4cb60e01b8152600481018490525f926001600160a01b0390811692169063b3f9e4cb90602401602060405180830381865afa925050508015610231575060408051601f3d908101601f1916820190925261022e91810190610c93565b60015b156102395790505b6001600160a01b0381163b156102bb57604051636ccbae5f60e01b81526004810184905281906001600160a01b03821690636ccbae5f90602401602060405180830381865afa9250505080156102ac575060408051601f3d908101601f191682019092526102a991810190610d0c565b60015b156102b957949350505050565b505b600254604051636ccbae5f60e01b8152600481018590526001600160a01b0390911690636ccbae5f90602401602060405180830381865afa158015610302573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101be9190610d0c565b6001546040805163b3f9e4cb60e01b81529085013560048201525f9182916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa158015610374573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103989190610c93565b90506103e26103a686610db8565b8286868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152506104be92505050565b95945050505050565b60605f80876001600160a01b0316866104068b8a8989610508565b6040516104139190610e5c565b5f604051808303815f8787f1925050503d805f811461044d576040519150601f19603f3d011682016040523d82523d5f602084013e610452565b606091505b509092509050610463603f87610e77565b5a1161047157610471610e96565b6104b182826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506105bb565b9998505050505050505050565b5f6104ca8484846105f4565b80156104fd575060608401516020908101516001600160e01b03199081165f9081529182905260409091205460e01b1615155b949350505050565b50565b6020808301516001600160e01b0319165f9081529081905260408120546060919060e01b90506001600160e01b031981165f036105985760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526105b082828661072f565b979650505050505050565b606083156105ca5750816101be565b8251156105da5782518084602001fd5b8160405162461bcd60e51b815260040161058f9190610c56565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015610638573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061065c9190610d0c565b90505f6107098660600151805190602001208688602001516040516020016106a99392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156101b9575085516101b9906001600160a01b03168286610911565b60606001600160e01b0319841663b87abc1160e01b036107af575f8380602001905181019061075e9190610d0c565b9050848184604051602401610774929190610eaa565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915291506101be9050565b6001600160e01b0319841663c597407360e01b03610839575f805f858060200190518101906107de9190610f04565b92509250925086838383886040516024016107fc9493929190610f6c565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293506101be92505050565b6001600160e01b031984166311ed383160e31b03610886575f805f858060200190518101906108689190611038565b92509250925086838383886040516024016107fc94939291906110e7565b6001600160e01b031984166328d55f9b60e21b036101be575f805f858060200190518101906108b59190611038565b92509250925086838383886040516024016108d394939291906110e7565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293505050509392505050565b5f805f61091e8585610a4c565b90925090505f8160048111156109365761093661110b565b1480156109545750856001600160a01b0316826001600160a01b0316145b15610964576001925050506101be565b5f80876001600160a01b0316631626ba7e60e01b888860405160240161098b929190610eaa565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516109c99190610e5c565b5f60405180830381855afa9150503d805f8114610a01576040519150601f19603f3d011682016040523d82523d5f602084013e610a06565b606091505b5091509150818015610a19575080516020145b8015610a4057508051630b135d3f60e11b90610a3e9083016020908101908401610d0c565b145b98975050505050505050565b5f808251604103610a80576020830151604084015160608501515f1a610a7487828585610a8e565b94509450505050610a87565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610ac357505f90506003610b6a565b8460ff16601b14158015610adb57508460ff16601c14155b15610aeb57505f90506004610b6a565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610b3c573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b038116610b64575f60019250925050610b6a565b91505f90505b94509492505050565b5f805f60408486031215610b85575f80fd5b833567ffffffffffffffff80821115610b9c575f80fd5b9085019060808288031215610baf575f80fd5b90935060208501359080821115610bc4575f80fd5b818601915086601f830112610bd7575f80fd5b813581811115610be5575f80fd5b876020828501011115610bf6575f80fd5b6020830194508093505050509250925092565b5f5b83811015610c23578181015183820152602001610c0b565b50505f910152565b5f8151808452610c42816020860160208601610c09565b601f01601f19169290920160200192915050565b602081525f6101be6020830184610c2b565b5f60208284031215610c78575f80fd5b5035919050565b6001600160a01b0381168114610505575f80fd5b5f60208284031215610ca3575f80fd5b81516101be81610c7f565b5f60208284031215610cbe575f80fd5b81356101be81610c7f565b5f808335601e19843603018112610cde575f80fd5b83018035915067ffffffffffffffff821115610cf8575f80fd5b602001915036819003821315610a87575f80fd5b5f60208284031215610d1c575f80fd5b5051919050565b634e487b7160e01b5f52604160045260245ffd5b6040516080810167ffffffffffffffff81118282101715610d5a57610d5a610d23565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610d8957610d89610d23565b604052919050565b5f67ffffffffffffffff821115610daa57610daa610d23565b50601f01601f191660200190565b5f60808236031215610dc8575f80fd5b610dd0610d37565b8235610ddb81610c7f565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610e0a575f80fd5b840136601f820112610e1a575f80fd5b8035610e2d610e2882610d91565b610d60565b8181523684838501011115610e40575f80fd5b81848401858301375f9181019093015250606082015292915050565b5f8251610e6d818460208701610c09565b9190910192915050565b5f82610e9157634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b828152604060208201525f6104fd6040830184610c2b565b5f82601f830112610ed1575f80fd5b8151610edf610e2882610d91565b818152846020838601011115610ef3575f80fd5b6104fd826020830160208701610c09565b5f805f60608486031215610f16575f80fd5b835167ffffffffffffffff80821115610f2d575f80fd5b610f3987838801610ec2565b94506020860151915080821115610f4e575f80fd5b50610f5b86828701610ec2565b925050604084015190509250925092565b608081525f610f7e6080830187610c2b565b8281036020840152610f908187610c2b565b905084604084015282810360608401526105b08185610c2b565b5f82601f830112610fb9575f80fd5b8151602067ffffffffffffffff80831115610fd657610fd6610d23565b8260051b610fe5838201610d60565b9384528581018301938381019088861115610ffe575f80fd5b84880192505b85831015610a405782518481111561101a575f80fd5b6110288a87838c0101610ec2565b8352509184019190840190611004565b5f805f6060848603121561104a575f80fd5b835167ffffffffffffffff80821115611061575f80fd5b61106d87838801610faa565b94506020860151915080821115611082575f80fd5b50610f5b86828701610faa565b5f8282518085526020808601955060208260051b840101602086015f5b848110156110da57601f198684030189526110c8838351610c2b565b988401989250908301906001016110ac565b5090979650505050505050565b608081525f6110f9608083018761108f565b8281036020840152610f90818761108f565b634e487b7160e01b5f52602160045260245ffdfea164736f6c6343000818000a7365744d616e79466f7228737472696e675b5d2c737472696e675b5d2c75696e743235362c6279746573297265636f6e666967757265466f7228737472696e675b5d2c737472696e675b5d2c75696e743235362c627974657329736574466f7228737472696e672c737472696e672c75696e743235362c6279746573297365744d616e7928737472696e675b5d2c737472696e675b5d2c75696e74323536297265636f6e66696775726528737472696e675b5d2c737472696e675b5d2c75696e7432353629", - "deployedBytecode": "0x608060405234801561000f575f80fd5b506004361061003f575f3560e01c80631bf7e13e146100435780636ccbae5f1461006c578063a42474001461008d575b5f80fd5b610056610051366004610b73565b6100b0565b6040516100639190610c56565b60405180910390f35b61007f61007a366004610c68565b6101c5565b604051908152602001610063565b6100a061009b366004610b73565b610326565b6040519015158152602001610063565b60605f5a6001546040805163b3f9e4cb60e01b81529088013560048201529192505f916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa158015610103573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101279190610c93565b90506101b96101396020880188610cae565b8260408901358561014d60608c018c610cc9565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8f018190048102820181019092528d815292508d91508c90819084018382808284375f920191909152506103eb92505050565b925050505b9392505050565b60025460015460405163b3f9e4cb60e01b8152600481018490525f926001600160a01b0390811692169063b3f9e4cb90602401602060405180830381865afa925050508015610231575060408051601f3d908101601f1916820190925261022e91810190610c93565b60015b156102395790505b6001600160a01b0381163b156102bb57604051636ccbae5f60e01b81526004810184905281906001600160a01b03821690636ccbae5f90602401602060405180830381865afa9250505080156102ac575060408051601f3d908101601f191682019092526102a991810190610d0c565b60015b156102b957949350505050565b505b600254604051636ccbae5f60e01b8152600481018590526001600160a01b0390911690636ccbae5f90602401602060405180830381865afa158015610302573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101be9190610d0c565b6001546040805163b3f9e4cb60e01b81529085013560048201525f9182916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa158015610374573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103989190610c93565b90506103e26103a686610db8565b8286868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152506104be92505050565b95945050505050565b60605f80876001600160a01b0316866104068b8a8989610508565b6040516104139190610e5c565b5f604051808303815f8787f1925050503d805f811461044d576040519150601f19603f3d011682016040523d82523d5f602084013e610452565b606091505b509092509050610463603f87610e77565b5a1161047157610471610e96565b6104b182826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506105bb565b9998505050505050505050565b5f6104ca8484846105f4565b80156104fd575060608401516020908101516001600160e01b03199081165f9081529182905260409091205460e01b1615155b949350505050565b50565b6020808301516001600160e01b0319165f9081529081905260408120546060919060e01b90506001600160e01b031981165f036105985760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526105b082828661072f565b979650505050505050565b606083156105ca5750816101be565b8251156105da5782518084602001fd5b8160405162461bcd60e51b815260040161058f9190610c56565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015610638573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061065c9190610d0c565b90505f6107098660600151805190602001208688602001516040516020016106a99392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156101b9575085516101b9906001600160a01b03168286610911565b60606001600160e01b0319841663b87abc1160e01b036107af575f8380602001905181019061075e9190610d0c565b9050848184604051602401610774929190610eaa565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915291506101be9050565b6001600160e01b0319841663c597407360e01b03610839575f805f858060200190518101906107de9190610f04565b92509250925086838383886040516024016107fc9493929190610f6c565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293506101be92505050565b6001600160e01b031984166311ed383160e31b03610886575f805f858060200190518101906108689190611038565b92509250925086838383886040516024016107fc94939291906110e7565b6001600160e01b031984166328d55f9b60e21b036101be575f805f858060200190518101906108b59190611038565b92509250925086838383886040516024016108d394939291906110e7565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293505050509392505050565b5f805f61091e8585610a4c565b90925090505f8160048111156109365761093661110b565b1480156109545750856001600160a01b0316826001600160a01b0316145b15610964576001925050506101be565b5f80876001600160a01b0316631626ba7e60e01b888860405160240161098b929190610eaa565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516109c99190610e5c565b5f60405180830381855afa9150503d805f8114610a01576040519150601f19603f3d011682016040523d82523d5f602084013e610a06565b606091505b5091509150818015610a19575080516020145b8015610a4057508051630b135d3f60e11b90610a3e9083016020908101908401610d0c565b145b98975050505050505050565b5f808251604103610a80576020830151604084015160608501515f1a610a7487828585610a8e565b94509450505050610a87565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610ac357505f90506003610b6a565b8460ff16601b14158015610adb57508460ff16601c14155b15610aeb57505f90506004610b6a565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610b3c573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b038116610b64575f60019250925050610b6a565b91505f90505b94509492505050565b5f805f60408486031215610b85575f80fd5b833567ffffffffffffffff80821115610b9c575f80fd5b9085019060808288031215610baf575f80fd5b90935060208501359080821115610bc4575f80fd5b818601915086601f830112610bd7575f80fd5b813581811115610be5575f80fd5b876020828501011115610bf6575f80fd5b6020830194508093505050509250925092565b5f5b83811015610c23578181015183820152602001610c0b565b50505f910152565b5f8151808452610c42816020860160208601610c09565b601f01601f19169290920160200192915050565b602081525f6101be6020830184610c2b565b5f60208284031215610c78575f80fd5b5035919050565b6001600160a01b0381168114610505575f80fd5b5f60208284031215610ca3575f80fd5b81516101be81610c7f565b5f60208284031215610cbe575f80fd5b81356101be81610c7f565b5f808335601e19843603018112610cde575f80fd5b83018035915067ffffffffffffffff821115610cf8575f80fd5b602001915036819003821315610a87575f80fd5b5f60208284031215610d1c575f80fd5b5051919050565b634e487b7160e01b5f52604160045260245ffd5b6040516080810167ffffffffffffffff81118282101715610d5a57610d5a610d23565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610d8957610d89610d23565b604052919050565b5f67ffffffffffffffff821115610daa57610daa610d23565b50601f01601f191660200190565b5f60808236031215610dc8575f80fd5b610dd0610d37565b8235610ddb81610c7f565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610e0a575f80fd5b840136601f820112610e1a575f80fd5b8035610e2d610e2882610d91565b610d60565b8181523684838501011115610e40575f80fd5b81848401858301375f9181019093015250606082015292915050565b5f8251610e6d818460208701610c09565b9190910192915050565b5f82610e9157634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b828152604060208201525f6104fd6040830184610c2b565b5f82601f830112610ed1575f80fd5b8151610edf610e2882610d91565b818152846020838601011115610ef3575f80fd5b6104fd826020830160208701610c09565b5f805f60608486031215610f16575f80fd5b835167ffffffffffffffff80821115610f2d575f80fd5b610f3987838801610ec2565b94506020860151915080821115610f4e575f80fd5b50610f5b86828701610ec2565b925050604084015190509250925092565b608081525f610f7e6080830187610c2b565b8281036020840152610f908187610c2b565b905084604084015282810360608401526105b08185610c2b565b5f82601f830112610fb9575f80fd5b8151602067ffffffffffffffff80831115610fd657610fd6610d23565b8260051b610fe5838201610d60565b9384528581018301938381019088861115610ffe575f80fd5b84880192505b85831015610a405782518481111561101a575f80fd5b6110288a87838c0101610ec2565b8352509184019190840190611004565b5f805f6060848603121561104a575f80fd5b835167ffffffffffffffff80821115611061575f80fd5b61106d87838801610faa565b94506020860151915080821115611082575f80fd5b50610f5b86828701610faa565b5f8282518085526020808601955060208260051b840101602086015f5b848110156110da57601f198684030189526110c8838351610c2b565b988401989250908301906001016110ac565b5090979650505050505050565b608081525f6110f9608083018761108f565b8281036020840152610f90818761108f565b634e487b7160e01b5f52602160045260245ffdfea164736f6c6343000818000a", + "bytecode": "0x60806040523480156200001157600080fd5b506040516200153938038062001539833981016040819052620000349162000286565b600180546001600160a01b038481166001600160a01b0319928316179092556002805492841692909116919091179055604080518082018252600e81526d72657365742875696e743235362960901b602080830191825283518085018552601781527f7265736574466f722875696e743235362c62797465732900000000000000000090820152915190206001600160e01b03191660009081529081905220805463ffffffff191663b87abc11179055620001776040518060400160405280601a81526020017f73657428737472696e672c737472696e672c75696e7432353629000000000000815250604051806060016040528060238152602001620014ce6023913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b620001ee604051806060016040528060228152602001620014f1602291396040518060600160405280602b815260200162001474602b913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b6200026560405180606001604052806026815260200162001513602691396040518060600160405280602f81526020016200149f602f913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b5050620002c5565b6001600160a01b03811681146200028357600080fd5b50565b600080604083850312156200029a57600080fd5b8251620002a7816200026d565b6020840151909250620002ba816200026d565b809150509250929050565b61119f80620002d56000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a424740014610090575b600080fd5b610059610054366004610ba9565b6100b3565b6040516100669190610c98565b60405180910390f35b61008261007d366004610cab565b6101ce565b604051908152602001610066565b6100a361009e366004610ba9565b610332565b6040519015158152602001610066565b606060005a6001546040805163b3f9e4cb60e01b81529088013560048201529192506000916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561010a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061012e9190610cd9565b90506101c26101406020880188610cf6565b8260408901358561015460608c018c610d13565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8f018190048102820181019092528d815292508d91508c90819084018382808284376000920191909152506103fb92505050565b925050505b9392505050565b60025460015460405163b3f9e4cb60e01b8152600481018490526000926001600160a01b0390811692169063b3f9e4cb90602401602060405180830381865afa92505050801561023b575060408051601f3d908101601f1916820190925261023891810190610cd9565b60015b156102435790505b6001600160a01b0381163b156102c557604051636ccbae5f60e01b81526004810184905281906001600160a01b03821690636ccbae5f90602401602060405180830381865afa9250505080156102b6575060408051601f3d908101601f191682019092526102b391810190610d5a565b60015b156102c357949350505050565b505b600254604051636ccbae5f60e01b8152600481018590526001600160a01b0390911690636ccbae5f90602401602060405180830381865afa15801561030e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101c79190610d5a565b6001546040805163b3f9e4cb60e01b815290850135600482015260009182916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa158015610383573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103a79190610cd9565b90506103f26103b586610e0b565b8286868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506104d392505050565b95945050505050565b6060600080876001600160a01b0316866104178b8a898961051f565b6040516104249190610eb5565b60006040518083038160008787f1925050503d8060008114610462576040519150601f19603f3d011682016040523d82523d6000602084013e610467565b606091505b509092509050610478603f87610ed1565b5a1161048657610486610ef3565b6104c682826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506105d4565b9998505050505050505050565b60006104e084848461060d565b8015610514575060608401516020908101516001600160e01b031990811660009081529182905260409091205460e01b1615155b949350505050565b50565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036105b15760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526105c982828661074c565b979650505050505050565b606083156105e35750816101c7565b8251156105f35782518084602001fd5b8160405162461bcd60e51b81526004016105a89190610c98565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015610654573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106789190610d5a565b905060006107268660600151805190602001208688602001516040516020016106c69392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156101c2575085516101c2906001600160a01b03168286610935565b60606001600160e01b0319841663b87abc1160e01b036107cd5760008380602001905181019061077c9190610d5a565b9050848184604051602401610792929190610f09565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915291506101c79050565b6001600160e01b0319841663c597407360e01b03610859576000806000858060200190518101906107fe9190610f67565b925092509250868383838860405160240161081c9493929190610fd4565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293506101c792505050565b6001600160e01b031984166311ed383160e31b036108a85760008060008580602001905181019061088a91906110a6565b925092509250868383838860405160240161081c9493929190611157565b6001600160e01b031984166328d55f9b60e21b036101c7576000806000858060200190518101906108d991906110a6565b92509250925086838383886040516024016108f79493929190611157565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293505050509392505050565b60008060006109448585610a77565b9092509050600081600481111561095d5761095d61117c565b14801561097b5750856001600160a01b0316826001600160a01b0316145b1561098b576001925050506101c7565b600080876001600160a01b0316631626ba7e60e01b88886040516024016109b3929190610f09565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516109f19190610eb5565b600060405180830381855afa9150503d8060008114610a2c576040519150601f19603f3d011682016040523d82523d6000602084013e610a31565b606091505b5091509150818015610a44575080516020145b8015610a6b57508051630b135d3f60e11b90610a699083016020908101908401610d5a565b145b98975050505050505050565b6000808251604103610aad5760208301516040840151606085015160001a610aa187828585610abc565b94509450505050610ab5565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610af35750600090506003610ba0565b8460ff16601b14158015610b0b57508460ff16601c14155b15610b1c5750600090506004610ba0565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610b70573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610b9957600060019250925050610ba0565b9150600090505b94509492505050565b600080600060408486031215610bbe57600080fd5b833567ffffffffffffffff80821115610bd657600080fd5b9085019060808288031215610bea57600080fd5b90935060208501359080821115610c0057600080fd5b818601915086601f830112610c1457600080fd5b813581811115610c2357600080fd5b876020828501011115610c3557600080fd5b6020830194508093505050509250925092565b60005b83811015610c63578181015183820152602001610c4b565b50506000910152565b60008151808452610c84816020860160208601610c48565b601f01601f19169290920160200192915050565b6020815260006101c76020830184610c6c565b600060208284031215610cbd57600080fd5b5035919050565b6001600160a01b038116811461051c57600080fd5b600060208284031215610ceb57600080fd5b81516101c781610cc4565b600060208284031215610d0857600080fd5b81356101c781610cc4565b6000808335601e19843603018112610d2a57600080fd5b83018035915067ffffffffffffffff821115610d4557600080fd5b602001915036819003821315610ab557600080fd5b600060208284031215610d6c57600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610dac57610dac610d73565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ddb57610ddb610d73565b604052919050565b600067ffffffffffffffff821115610dfd57610dfd610d73565b50601f01601f191660200190565b600060808236031215610e1d57600080fd5b610e25610d89565b8235610e3081610cc4565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610e6057600080fd5b840136601f820112610e7157600080fd5b8035610e84610e7f82610de3565b610db2565b8181523684838501011115610e9857600080fd5b818484018583013760009181019093015250606082015292915050565b60008251610ec7818460208701610c48565b9190910192915050565b600082610eee57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b8281526040602082015260006105146040830184610c6c565b600082601f830112610f3357600080fd5b8151610f41610e7f82610de3565b818152846020838601011115610f5657600080fd5b610514826020830160208701610c48565b600080600060608486031215610f7c57600080fd5b835167ffffffffffffffff80821115610f9457600080fd5b610fa087838801610f22565b94506020860151915080821115610fb657600080fd5b50610fc386828701610f22565b925050604084015190509250925092565b608081526000610fe76080830187610c6c565b8281036020840152610ff98187610c6c565b905084604084015282810360608401526105c98185610c6c565b600082601f83011261102457600080fd5b8151602067ffffffffffffffff8083111561104157611041610d73565b8260051b611050838201610db2565b938452858101830193838101908886111561106a57600080fd5b84880192505b85831015610a6b578251848111156110885760008081fd5b6110968a87838c0101610f22565b8352509184019190840190611070565b6000806000606084860312156110bb57600080fd5b835167ffffffffffffffff808211156110d357600080fd5b6110df87838801611013565b945060208601519150808211156110f557600080fd5b50610fc386828701611013565b600081518084526020808501808196508360051b8101915082860160005b8581101561114a578284038952611138848351610c6c565b98850198935090840190600101611120565b5091979650505050505050565b60808152600061116a6080830187611102565b8281036020840152610ff98187611102565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a7365744d616e79466f7228737472696e675b5d2c737472696e675b5d2c75696e743235362c6279746573297265636f6e666967757265466f7228737472696e675b5d2c737472696e675b5d2c75696e743235362c627974657329736574466f7228737472696e672c737472696e672c75696e743235362c6279746573297365744d616e7928737472696e675b5d2c737472696e675b5d2c75696e74323536297265636f6e66696775726528737472696e675b5d2c737472696e675b5d2c75696e7432353629", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a424740014610090575b600080fd5b610059610054366004610ba9565b6100b3565b6040516100669190610c98565b60405180910390f35b61008261007d366004610cab565b6101ce565b604051908152602001610066565b6100a361009e366004610ba9565b610332565b6040519015158152602001610066565b606060005a6001546040805163b3f9e4cb60e01b81529088013560048201529192506000916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561010a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061012e9190610cd9565b90506101c26101406020880188610cf6565b8260408901358561015460608c018c610d13565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8f018190048102820181019092528d815292508d91508c90819084018382808284376000920191909152506103fb92505050565b925050505b9392505050565b60025460015460405163b3f9e4cb60e01b8152600481018490526000926001600160a01b0390811692169063b3f9e4cb90602401602060405180830381865afa92505050801561023b575060408051601f3d908101601f1916820190925261023891810190610cd9565b60015b156102435790505b6001600160a01b0381163b156102c557604051636ccbae5f60e01b81526004810184905281906001600160a01b03821690636ccbae5f90602401602060405180830381865afa9250505080156102b6575060408051601f3d908101601f191682019092526102b391810190610d5a565b60015b156102c357949350505050565b505b600254604051636ccbae5f60e01b8152600481018590526001600160a01b0390911690636ccbae5f90602401602060405180830381865afa15801561030e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101c79190610d5a565b6001546040805163b3f9e4cb60e01b815290850135600482015260009182916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa158015610383573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103a79190610cd9565b90506103f26103b586610e0b565b8286868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506104d392505050565b95945050505050565b6060600080876001600160a01b0316866104178b8a898961051f565b6040516104249190610eb5565b60006040518083038160008787f1925050503d8060008114610462576040519150601f19603f3d011682016040523d82523d6000602084013e610467565b606091505b509092509050610478603f87610ed1565b5a1161048657610486610ef3565b6104c682826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506105d4565b9998505050505050505050565b60006104e084848461060d565b8015610514575060608401516020908101516001600160e01b031990811660009081529182905260409091205460e01b1615155b949350505050565b50565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036105b15760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526105c982828661074c565b979650505050505050565b606083156105e35750816101c7565b8251156105f35782518084602001fd5b8160405162461bcd60e51b81526004016105a89190610c98565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015610654573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106789190610d5a565b905060006107268660600151805190602001208688602001516040516020016106c69392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156101c2575085516101c2906001600160a01b03168286610935565b60606001600160e01b0319841663b87abc1160e01b036107cd5760008380602001905181019061077c9190610d5a565b9050848184604051602401610792929190610f09565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915291506101c79050565b6001600160e01b0319841663c597407360e01b03610859576000806000858060200190518101906107fe9190610f67565b925092509250868383838860405160240161081c9493929190610fd4565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293506101c792505050565b6001600160e01b031984166311ed383160e31b036108a85760008060008580602001905181019061088a91906110a6565b925092509250868383838860405160240161081c9493929190611157565b6001600160e01b031984166328d55f9b60e21b036101c7576000806000858060200190518101906108d991906110a6565b92509250925086838383886040516024016108f79493929190611157565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293505050509392505050565b60008060006109448585610a77565b9092509050600081600481111561095d5761095d61117c565b14801561097b5750856001600160a01b0316826001600160a01b0316145b1561098b576001925050506101c7565b600080876001600160a01b0316631626ba7e60e01b88886040516024016109b3929190610f09565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516109f19190610eb5565b600060405180830381855afa9150503d8060008114610a2c576040519150601f19603f3d011682016040523d82523d6000602084013e610a31565b606091505b5091509150818015610a44575080516020145b8015610a6b57508051630b135d3f60e11b90610a699083016020908101908401610d5a565b145b98975050505050505050565b6000808251604103610aad5760208301516040840151606085015160001a610aa187828585610abc565b94509450505050610ab5565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610af35750600090506003610ba0565b8460ff16601b14158015610b0b57508460ff16601c14155b15610b1c5750600090506004610ba0565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610b70573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610b9957600060019250925050610ba0565b9150600090505b94509492505050565b600080600060408486031215610bbe57600080fd5b833567ffffffffffffffff80821115610bd657600080fd5b9085019060808288031215610bea57600080fd5b90935060208501359080821115610c0057600080fd5b818601915086601f830112610c1457600080fd5b813581811115610c2357600080fd5b876020828501011115610c3557600080fd5b6020830194508093505050509250925092565b60005b83811015610c63578181015183820152602001610c4b565b50506000910152565b60008151808452610c84816020860160208601610c48565b601f01601f19169290920160200192915050565b6020815260006101c76020830184610c6c565b600060208284031215610cbd57600080fd5b5035919050565b6001600160a01b038116811461051c57600080fd5b600060208284031215610ceb57600080fd5b81516101c781610cc4565b600060208284031215610d0857600080fd5b81356101c781610cc4565b6000808335601e19843603018112610d2a57600080fd5b83018035915067ffffffffffffffff821115610d4557600080fd5b602001915036819003821315610ab557600080fd5b600060208284031215610d6c57600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610dac57610dac610d73565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ddb57610ddb610d73565b604052919050565b600067ffffffffffffffff821115610dfd57610dfd610d73565b50601f01601f191660200190565b600060808236031215610e1d57600080fd5b610e25610d89565b8235610e3081610cc4565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610e6057600080fd5b840136601f820112610e7157600080fd5b8035610e84610e7f82610de3565b610db2565b8181523684838501011115610e9857600080fd5b818484018583013760009181019093015250606082015292915050565b60008251610ec7818460208701610c48565b9190910192915050565b600082610eee57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b8281526040602082015260006105146040830184610c6c565b600082601f830112610f3357600080fd5b8151610f41610e7f82610de3565b818152846020838601011115610f5657600080fd5b610514826020830160208701610c48565b600080600060608486031215610f7c57600080fd5b835167ffffffffffffffff80821115610f9457600080fd5b610fa087838801610f22565b94506020860151915080821115610fb657600080fd5b50610fc386828701610f22565b925050604084015190509250925092565b608081526000610fe76080830187610c6c565b8281036020840152610ff98187610c6c565b905084604084015282810360608401526105c98185610c6c565b600082601f83011261102457600080fd5b8151602067ffffffffffffffff8083111561104157611041610d73565b8260051b611050838201610db2565b938452858101830193838101908886111561106a57600080fd5b84880192505b85831015610a6b578251848111156110885760008081fd5b6110968a87838c0101610f22565b8352509184019190840190611070565b6000806000606084860312156110bb57600080fd5b835167ffffffffffffffff808211156110d357600080fd5b6110df87838801611013565b945060208601519150808211156110f557600080fd5b50610fc386828701611013565b600081518084526020808501808196508360051b8101915082860160005b8581101561114a578284038952611138848351610c6c565b98850198935090840190600101611120565b5091979650505050505050565b60808152600061116a6080830187611102565b8281036020840152610ff98187611102565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/contracts/metatx/CNSRegistryForwarder.sol b/contracts/metatx/CNSRegistryForwarder.sol index 9cb7b10e..fc608a4a 100644 --- a/contracts/metatx/CNSRegistryForwarder.sol +++ b/contracts/metatx/CNSRegistryForwarder.sol @@ -1,7 +1,7 @@ // @author Unstoppable Domains, Inc. // @date August 12th, 2021 -pragma solidity ^0.8.0; +pragma solidity 0.8.17; import './IForwarder.sol'; import './BaseRoutingForwarder.sol'; diff --git a/contracts/metatx/ResolverForwarder.sol b/contracts/metatx/ResolverForwarder.sol index 70d79db4..9d520808 100644 --- a/contracts/metatx/ResolverForwarder.sol +++ b/contracts/metatx/ResolverForwarder.sol @@ -1,7 +1,7 @@ // @author Unstoppable Domains, Inc. // @date August 19th, 2021 -pragma solidity ^0.8.0; +pragma solidity 0.8.17; import '@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable.sol'; diff --git a/ens-config.json b/ens-config.json index 75d34e1c..91b1b1b2 100644 --- a/ens-config.json +++ b/ens-config.json @@ -73,45 +73,45 @@ "1337": { "contracts": { "ENSRegistry": { - "address": "0xD178b720229c39De617846F84cf9c8D32a63a23D", - "deploymentBlock": "0x2b", + "address": "0x3F1194B9019002863Ad0DBBE295294547c0d36A9", + "deploymentBlock": "0x32", "legacyAddresses": [] }, "BaseRegistrarImplementation": { - "address": "0x00e39A5004299871aB3b00FeD5A39a715F181d02", - "deploymentBlock": "0x2c", + "address": "0xc965345EDaC823D56812cD20A10316233916a605", + "deploymentBlock": "0x33", "legacyAddresses": [] }, "ReverseRegistrar": { - "address": "0xf6b7c221342BC966f4396790895530bF4E9799eB", - "deploymentBlock": "0x2d", + "address": "0xf670681605eFc4efC804F5a9b97ee89520473d56", + "deploymentBlock": "0x34", "legacyAddresses": [] }, "NameWrapper": { - "address": "0xf7c9FD8E37863CF3f2da6A3ea0B1D1E3FaadeAD4", - "deploymentBlock": "0x30", + "address": "0x6aC8F19d1E0F81147cdF2a1e53cb1f4E18417204", + "deploymentBlock": "0x37", "legacyAddresses": [] }, "DummyOracle": { - "address": "0x3F1194B9019002863Ad0DBBE295294547c0d36A9", - "deploymentBlock": "0x32", + "address": "0xf3810eB7d64D1C11AE12727d957c6202B24492F5", + "deploymentBlock": "0x39", "legacyAddresses": [] }, "StablePriceOracle": { - "address": "0xc965345EDaC823D56812cD20A10316233916a605", - "deploymentBlock": "0x33", + "address": "0xeC71E4E674fe0f432693DC2b935C34bd2774C003", + "deploymentBlock": "0x3a", "legacyAddresses": [] }, "ETHRegistrarController": { - "address": "0xf670681605eFc4efC804F5a9b97ee89520473d56", - "deploymentBlock": "0x34", + "address": "0x4fbf7B2f171336958BE5D15FF762a5CfF5363568", + "deploymentBlock": "0x3b", "legacyAddresses": [] }, "PublicResolver": { - "address": "0x653F5A2aF800684EcF2aAeAcE8dBE86afEaaEBC0", - "deploymentBlock": "0x3d", + "address": "0x9dF67c91f1bFCB4D966cF764E9218685E7c59E8a", + "deploymentBlock": "0x44", "legacyAddresses": [ - "0x38b83990077ac5DA78Aa9e72f5747D3A0b2374D9" + "0xF1Ad43dc647f27c2366Ab4742d68d21282F7d50e" ] }, "ProxyAdmin": { @@ -120,33 +120,33 @@ "legacyAddresses": [] }, "ENSCustody": { - "address": "0x287DeE389Caaa49edc112888f2BcFD927b472e25", - "deploymentBlock": "0x54", - "implementation": "0x0794D2ccC545a585C114A4680d43484100E6ba44", - "forwarder": "0x287DeE389Caaa49edc112888f2BcFD927b472e25", + "address": "0x3198fc981626687F4B5BDf0fbEABB0a5E0489C03", + "deploymentBlock": "0x5b", + "implementation": "0xc2110388dd54228aE0A834119457edE938BF0B57", + "forwarder": "0x3198fc981626687F4B5BDf0fbEABB0a5E0489C03", "legacyAddresses": [] }, "LegacyENSRegistry": { - "address": "0xDa429c9136b95E18c6396c7B18f85ACcc8575164", - "deploymentBlock": "0x40", + "address": "0x6E1Eb616c7d69491f9a880f815Ff5574768cBa20", + "deploymentBlock": "0x47", "legacyAddresses": [] }, "LegacyETHRegistrarController": { - "address": "0x72FA6D0C2F56b802D762a14F1a71f9A56221cabe", - "deploymentBlock": "0x35", + "address": "0xB17aAe5B3A7815433fC82Cfd67Ea245767894f03", + "deploymentBlock": "0x3c", "legacyAddresses": [] }, "DNSSECImpl": { - "address": "0x6E1Eb616c7d69491f9a880f815Ff5574768cBa20", - "deploymentBlock": "0x47" - }, - "DNSRegistrar": { "address": "0x9B2565a3545A1312bdCb6e7148A7f7cAe8C2706B", "deploymentBlock": "0x4e" }, + "DNSRegistrar": { + "address": "0x6265cc8D1b28eDfd4D76C80bf774c0D446FFfbde", + "deploymentBlock": "0x55" + }, "Root": { - "address": "0xFb82C655715B43b07863e9c2fd42f60bbd9838B0", - "deploymentBlock": "0x4f" + "address": "0xE4fDf45C2F8D198854f8823809C7a988eeAAA493", + "deploymentBlock": "0x56" } } }, diff --git a/package.json b/package.json index e03d3a99..ef850195 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "uns", - "version": "0.9.13", + "version": "0.9.14", "description": "UNS contracts and tools", "repository": "https://github.com/unstoppabledomains/uns.git", "main": "./dist/index.js", @@ -100,9 +100,9 @@ }, "dependencies": { "@ensdomains/address-encoder": "^0.2.22", + "@foundry-rs/easy-foundryup": "^0.1.3", "bip39": "^3.0.0", "bip44-constants": "^243.0.0", - "ganache": "^7.9.1", "hdkey": "^2.0.1", "web3": "^1.7.4" }, diff --git a/sandbox/anvil-server.ts b/sandbox/anvil-server.ts new file mode 100644 index 00000000..07a42c78 --- /dev/null +++ b/sandbox/anvil-server.ts @@ -0,0 +1,128 @@ +import { spawn, ChildProcessWithoutNullStreams } from 'child_process'; +import debug from 'debug'; +import { getAnvilCommand } from '@foundry-rs/easy-foundryup'; +import { run as installFoundry } from '@foundry-rs/easy-foundryup/dist/binary'; +import _ from 'lodash'; + +const log = debug('UNS:sandbox'); + +export type AnvilServerOptions = { + port: number; + hostIpAddress: string; + chainId: number; + hardfork: string; + gasPrice: number; + gasLimit: number; + mnemonic: string; + hdPath: string; + totalAccounts: number; + defaultBalanceEther: number; + dumpStatePath: string; + loadStatePath: string; + silent: boolean; + anvilCliPath: string; +}; + +const ANVIL_ARGUMENTS_MAP: Record, string> = { + port: '--port', + hostIpAddress: '--host', + chainId: '--chain-id', + hardfork: '--hardfork', + gasPrice: '--gas-price', + gasLimit: '--gas-limit', + mnemonic: '--mnemonic', + hdPath: '--derivation-path', + totalAccounts: '--accounts', + defaultBalanceEther: '--balance', + dumpStatePath: '--dump-state', + loadStatePath: '--load-state', + silent: '--silent', +}; + +export class AnvilServer { + readonly options: Partial; + private readonly _anvil: ChildProcessWithoutNullStreams; + + private constructor (anvil: ChildProcessWithoutNullStreams, options: Partial) { + this._anvil = anvil; + this.options = options; + } + + public static async launch (options: Partial, inherit = false): Promise { + try { + if (!(await getAnvilCommand())) { + throw new Error('Foundry not found'); + } + } catch (e) { + if (!(await installFoundry(true))) { + throw new Error('Failed to install Foundry'); + } + } + + if (!options.silent) { + log('Launching anvil'); + } + const anvilPath = options.anvilCliPath ?? (await getAnvilCommand()); + const args: (string | number)[] = []; + for (const [key, value] of Object.entries(options)) { + if (!value) { + continue; + } + const arg = ANVIL_ARGUMENTS_MAP[key]; + if (arg) { + if (_.isBoolean(value) && value) { + args.push(arg); + } else { + args.push(arg, value); + } + } + } + + const opts = inherit ? { stdio: 'inherit' } : {}; + + const anvil: ChildProcessWithoutNullStreams = spawn(anvilPath, args as never, opts as never); + + anvil.on('close', (code: any) => { + log(`anvil child process exited with code ${code}`); + }); + + process.on('exit', function () { + anvil.kill(); + }); + + if (!inherit) { + let serverReady = false; + anvil.stdout?.on('data', (data: any) => { + const output = data.toString(); + if (output.includes('Listening')) { + serverReady = true; + } + if (!options.silent) { + log(`${data}`); + } + }); + + anvil.stderr?.on('data', (data: any) => { + log(`${data}`); + }); + + // wait until server ready + const retries = 30; // 3secs + for (let i = 0; i < retries; i++) { + if (serverReady) { + if (!options.silent) { + log('anvil server ready'); + } + break; + } + await new Promise((resolve) => setTimeout(resolve, 100)); + } + } + + return new AnvilServer(anvil, options); + } + + public kill () { + this._anvil?.kill(); + } +} diff --git a/sandbox/anvil-service.ts b/sandbox/anvil-service.ts new file mode 100644 index 00000000..f3268e24 --- /dev/null +++ b/sandbox/anvil-service.ts @@ -0,0 +1,36 @@ +import { JsonRpcProvider } from 'ethers'; +import { AnvilServer, AnvilServerOptions } from './anvil-server'; + +export default class AnvilService { + private _server?: AnvilServer; + private readonly _provider: JsonRpcProvider; + private readonly _options: Partial; + + constructor (options: Partial = {}) { + this._options = options; + this._provider = new JsonRpcProvider(this.getRpcEndpoint()); + } + + async startServer () { + if (this._server) { + throw new Error('Anvil server is already started'); + } + this._server = await AnvilServer.launch(this._options, false); + } + + stopServer () { + this._server?.kill(); + } + + get provider (): JsonRpcProvider { + return this._provider; + } + + get server (): AnvilServer | undefined { + return this._server; + } + + private getRpcEndpoint () { + return `http://${this._options.hostIpAddress}:${this._options.port}`; + } +} diff --git a/sandbox/index.test.ts b/sandbox/index.test.ts index fce6cca0..c37189e1 100644 --- a/sandbox/index.test.ts +++ b/sandbox/index.test.ts @@ -4,7 +4,7 @@ import { ethers, network } from 'hardhat'; import { SignerWithAddress } from '@nomicfoundation/hardhat-ethers/signers'; import { AbiCoder } from 'ethers'; import { NameService, getNetworkConfig } from '../src/config'; -import { MintingManager, UNSRegistry } from '../types/contracts'; +import { MintingManager, UNSRegistry } from '../types'; import { unwrap } from '../src/utils'; import { BUFFERED_REGISTRATION_COST, REGISTRATION_TIME, TLD, ZERO_ADDRESS } from '../test/helpers/constants'; import { @@ -174,8 +174,9 @@ describe('Sandbox', async () => { ); let tx = await ethRegistrarController.commit(commitment); + const blockNumber = unwrap(await tx.wait() ?? {}, 'blockNumber'); const block = await ethers.provider.getBlock( - unwrap(tx, 'blockNumber'), + blockNumber, ); expect(await ethRegistrarController.commitments(commitment)).to.equal(block?.timestamp); @@ -220,7 +221,8 @@ describe('Sandbox', async () => { selfCustody, ); const commitTx = await custody.connect(minter).commit(commitment); - const block = await ethers.provider.getBlock(unwrap(commitTx, 'blockNumber')); + const blockNumber = unwrap(await commitTx.wait() ?? {}, 'blockNumber'); + const block = await ethers.provider.getBlock(blockNumber); const timestamp = block?.timestamp; expect(await ethRegistrarController.commitments(commitment)).to.equal(timestamp); @@ -265,11 +267,10 @@ describe('Sandbox (multiple instances)', async () => { const sandbox = await Sandbox.start({ verbose: true, network: { - url: 'http://localhost:7546', + port: 7546, chainId: 1338, - dbPath: './.sandbox/_l2', }, }); - await sandbox.stop(); + sandbox.stop(); }); }); diff --git a/sandbox/index.ts b/sandbox/index.ts index da54ff50..742f3ff4 100644 --- a/sandbox/index.ts +++ b/sandbox/index.ts @@ -1,43 +1,35 @@ -import fs from 'fs'; import path from 'path'; -import tar from 'tar'; +import fs from 'fs'; import HDKey from 'hdkey'; import { mnemonicToSeedSync } from 'bip39'; import secp256k1 from 'secp256k1'; import createKeccakHash from 'keccak'; import debug from 'debug'; -import { EthereumProvider } from 'ganache'; import type { HttpNetworkUserConfig } from 'hardhat/types'; +import { JsonRpcProvider } from 'ethers'; import { unwrap } from '../src/utils'; -import { GanacheService } from './ganache-service'; +import { AnvilServerOptions } from './anvil-server'; +import AnvilService from './anvil-service'; const log = debug('UNS:sandbox'); export type SandboxNetworkOptions = { - url: string; - port?: number; - hostname?: string; + port: number; + hostIpAddress: string; chainId: number; hardfork: string; gasPrice: number; gasLimit: number; - allowUnlimitedContractSize: boolean; - locked: boolean; mnemonic: string; hdPath: string; totalAccounts: number; defaultBalanceEther: number; - dbPath: string; - snapshotPath: string; - keepAliveTimeout: number; - vmErrorsOnRpcResponse: boolean; - logger: { log: (message: string) => void }; + statePath: string; }; export type SandboxOptions = { verbose?: boolean; - clean?: boolean; - extract?: boolean; + rebuild?: boolean; network?: Partial; }; @@ -51,28 +43,31 @@ export type SandboxAccount = { }; const DEFAULT_SERVER_CONFIG: SandboxNetworkOptions = { - url: 'http://localhost:7545', + hostIpAddress: '127.0.0.1', + port: 7545, gasPrice: 20000000000, gasLimit: 6721975, defaultBalanceEther: 1000, totalAccounts: 10, - hardfork: 'london', - allowUnlimitedContractSize: false, - locked: false, + hardfork: 'cancun', hdPath: 'm/44\'/60\'/0\'/0/', - keepAliveTimeout: 5000, mnemonic: 'mimic dune forward party defy island absorb insane deputy obvious brother immense', chainId: 1337, - dbPath: './.sandbox', - snapshotPath: path.join(__dirname, 'db.tgz'), - vmErrorsOnRpcResponse: true, - logger: { log: () => {} }, + statePath: path.join(__dirname, 'state.json'), }; export class Sandbox { + version: string; + public accounts: Record; + public options: SandboxOptions; + + private anvilService: AnvilService; + private provider: JsonRpcProvider; + private snapshotId?: string; + static defaultNetworkOptions (): HttpNetworkUserConfig { return { - url: DEFAULT_SERVER_CONFIG.url, + url: `http://${DEFAULT_SERVER_CONFIG.hostIpAddress}:${DEFAULT_SERVER_CONFIG.port}`, chainId: DEFAULT_SERVER_CONFIG.chainId, accounts: { mnemonic: DEFAULT_SERVER_CONFIG.mnemonic, @@ -90,53 +85,48 @@ export class Sandbox { static async create (options: SandboxOptions): Promise { options = { - clean: true, - extract: true, + rebuild: false, verbose: false, ...options, }; + const networkOptions: SandboxNetworkOptions = { ...DEFAULT_SERVER_CONFIG, ...options.network, }; + const anvilOptions: Partial = { + ...networkOptions, + }; + if (options.verbose) { debug.enable('UNS:sandbox*'); + anvilOptions.silent = false; + } else { + anvilOptions.silent = true; } - const { dbPath, snapshotPath } = networkOptions; - - if (options.clean) { - if (fs.existsSync(dbPath)) { - fs.rmdirSync(dbPath, { recursive: true }); + if (options.rebuild) { + if (fs.existsSync(networkOptions.statePath)) { + fs.rmSync(networkOptions.statePath); } - fs.mkdirSync(dbPath, { recursive: true }); - log(`Cleaned sandbox database. Path: ${dbPath}`); + anvilOptions.dumpStatePath = networkOptions.statePath; + anvilOptions.loadStatePath = ''; + } else { + anvilOptions.dumpStatePath = ''; + anvilOptions.loadStatePath = networkOptions.statePath; } - if (options.extract) { - await tar.extract({ cwd: dbPath, file: snapshotPath }); - log(`Prepared sandbox database. [Source: ${snapshotPath}, TargetDir: ${dbPath}]`); - } - - const service = new GanacheService({ ...networkOptions }); + const service = new AnvilService(anvilOptions); return new Sandbox(service, { ...options, network: networkOptions }); } - version: string; - public accounts: Record; - public options: SandboxOptions; - - private ganacheService: GanacheService; - private provider: EthereumProvider; - private snapshotId?: string; - - constructor (service: GanacheService, options: SandboxOptions = {}) { - this.ganacheService = service; + constructor (service: AnvilService, options: SandboxOptions = {}) { + this.anvilService = service; this.options = options; - this.provider = service.provider; + this.provider = this.anvilService.provider; this.snapshotId = undefined; - this.version = '0.6'; + this.version = '1.0'; const accounts = this.getAccounts(unwrap(this.options, 'network')); @@ -157,7 +147,7 @@ export class Sandbox { } async start (options: SandboxStartOptions = { noSnapshot: false }): Promise { - await this.ganacheService.startServer(); + await this.anvilService.startServer(); log('Started sandbox'); if (options.noSnapshot) return; @@ -166,9 +156,9 @@ export class Sandbox { log('Created snapshot', this.snapshotId); } - async stop (): Promise { + stop (): void { try { - await this.ganacheService.stopServer(); + this.anvilService.stopServer(); log('Stopped sandbox'); } catch (e: any) { // eslint-disable-line @typescript-eslint/no-explicit-any if (e.message.includes('Server is not running')) { @@ -191,7 +181,7 @@ export class Sandbox { } private async snapshot (): Promise { - return await this.provider.send('evm_snapshot'); + return await this.provider.send('evm_snapshot', []); } private async revert (snapshotId: string): Promise { diff --git a/sandbox/rebuild.ts b/sandbox/rebuild.ts index 8fd99f39..dc06a1d7 100644 --- a/sandbox/rebuild.ts +++ b/sandbox/rebuild.ts @@ -1,15 +1,13 @@ -import fs from 'fs'; -import tar from 'tar'; +import { getAnvilCommand, run as installFoundry } from '@foundry-rs/easy-foundryup'; import { NameService, mergeNetworkConfig } from '../src/config'; import { Deployer } from '../src/deployer'; -import { unwrap } from '../src/utils'; -import { Sandbox } from '.'; +import { Sandbox } from './index'; // NOTE: Node module execution is used for rebuilding sandbox package if (require.main === module) { (async () => { try { - const sandbox = await Sandbox.create({ extract: false }); + const sandbox = await Sandbox.create({ rebuild: true, verbose: true }); await sandbox.start({ noSnapshot: true }); const unsDeployer = await Deployer.create(); @@ -20,21 +18,10 @@ if (require.main === module) { const unsConfig = await unsDeployer.execute(['full', 'config_polygon_pos_bridge']); const ensConfig = await ensDeployer.execute(['ens', 'ens_custody', 'fund_ens_custody']); - await sandbox.stop(); + sandbox.stop(); mergeNetworkConfig(unsConfig, NameService.UNS); mergeNetworkConfig(ensConfig, NameService.ENS); - - const { dbPath, snapshotPath } = unwrap(sandbox.options, 'network'); - await tar.create( - { - cwd: dbPath, - gzip: true, - file: snapshotPath, - filter: (p) => p.indexOf('_tmp') === -1, - }, - fs.readdirSync(dbPath), - ); } catch (error) { console.error(error); } diff --git a/sandbox/state.json b/sandbox/state.json new file mode 100644 index 00000000..263a856c --- /dev/null +++ b/sandbox/state.json @@ -0,0 +1 @@ +{"block":{"number":"0x5d","coinbase":"0x0000000000000000000000000000000000000000","timestamp":"0x664caebd","gas_limit":"0x6691b7","basefee":"0x1b818","difficulty":"0x0","prevrandao":"0x0000000000000000000000000000000000000000000000000000000000000000","blob_excess_gas_and_price":{"excess_blob_gas":0,"blob_gasprice":1}},"accounts":{"0x0000000000000000000000000000000000000000":{"nonce":0,"balance":"0xc968d22370860","code":"0x","storage":{}},"0x00e39a5004299871ab3b00fed5a39a715f181d02":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x66":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x67":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xd178b720229c39de617846f84cf9c8d32a63a23d","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0x0458f653495fb8d9bd0e7df468c2bf76d26c7bd9":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f7e83aee1461002d575b5f80fd5b61004061003b3660046105ba565b610054565b604051901515815260200160405180910390f35b5f601482146100a95760405162461bcd60e51b815260206004820152601860248201527f496e76616c696420736861312068617368206c656e6774680000000000000000604482015260640160405180910390fd5b5f6100ec5f85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101599050565b6bffffffffffffffffffffffff191690505f61013c87878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061018a92505050565b6bffffffffffffffffffffffff1916919091149695505050505050565b81515f90610168836014610621565b1115610172575f80fd5b5001602001516bffffffffffffffffffffffff191690565b5f6040518251602084019350604067ffffffffffffffc0600183011601600982820310600181036101bc576040820191505b50776745230100efcdab890098badcfe001032547600c3d2e1f061020d565b5f8383101561020657508082015192829003926020841015610206575f1960208590036101000a0119165b9392505050565b5f5b82811015610514576102228482896101db565b85526102328460208301896101db565b60208601526040818503106001810361024e5760808286038701535b506040830381146001810361026b57602086018051600887021790525b5060405b60808110156102f357858101603f19810151603719820151601f19830151600b198401516002911891909218189081027ffffffffefffffffefffffffefffffffefffffffefffffffefffffffefffffffe1663800000009091047c010000000100000001000000010000000100000001000000010000000116179052600c0161026f565b5060805b61014081101561037c57858101607f19810151606f19820151603f198301516017198401516004911891909218189081027ffffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffc1663400000009091047c0300000003000000030000000300000003000000030000000300000003161790526018016102f7565b50815f805f5b60508110156104ea576014810480156103b257600181146103d957600281146103fe576003811461042857610449565b600160281b8504600160501b86048118600160781b870416189350635a8279999250610449565b600160281b8504600160781b8604600160501b870418189350636ed9eba19250610449565b600160501b8504600160781b8604818117600160281b8804169116179350638f1bbcdc9250610449565b600160281b8504600160781b8604600160501b87041818935063ca62c1d692505b50601f600160bb1b8504168063ffffffe06001609b1b87041617905080840190508063ffffffff8616019050808301905080600160e01b600484028c015104019050600160a01b8102600160281b860417945050600160501b633fffffff600160521b86041663c00000006604000000000000870416170277ffffffff00ffffffff000000000000ffffffff00ffffffff8516179350600181019050610382565b5050509190910177ffffffff00ffffffff00ffffffff00ffffffff00ffffffff169060400161020f565b50600160601b63ffffffff821667ffffffff000000006101008404166bffffffff00000000000000006201000085041663ffffffff60601b630100000086041663ffffffff60801b6401000000008704161717171702945050505050919050565b5f8083601f840112610585575f80fd5b50813567ffffffffffffffff81111561059c575f80fd5b6020830191508360208285010111156105b3575f80fd5b9250929050565b5f805f80604085870312156105cd575f80fd5b843567ffffffffffffffff808211156105e4575f80fd5b6105f088838901610575565b90965094506020870135915080821115610608575f80fd5b5061061587828801610575565b95989497509550505050565b8082018082111561064057634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x06e2822b8856749ed179c77140dbc5f5a27410a4":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063de8f50a11461002d575b5f80fd5b61004061003b36600461051c565b610054565b604051901515815260200160405180910390f35b5f6060805f61009c60048b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506102e79050565b60ff1690508015610166576100f060058261ffff168c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b925061015f6101008260056105c3565b61ffff908116906005906101169085168d6105e5565b61012091906105e5565b8c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b915061021d565b6101a960058b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250929392505061038b9050565b90506101f460078261ffff168c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b925061021a6102048260076105c3565b61ffff908116906007906101169085168d6105e5565b91505b5f606061026084868a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152506103b192505050565b90925090508180156102d757506102856020825161027e91906105e5565b82906103cb565b60028b8b6040516102979291906105f8565b602060405180830381855afa1580156102b2573d5f803e3d5ffd5b5050506040513d601f19601f820116820180604052508101906102d59190610607565b145b9c9b505050505050505050505050565b5f8282815181106102fa576102fa61061e565b016020015160f81c90505b92915050565b825160609061031a8385610632565b1115610324575f80fd5b5f8267ffffffffffffffff81111561033e5761033e610645565b6040519080825280601f01601f191660200182016040528015610368576020820181803683370190505b509050602080820190868601016103808282876103ed565b509095945050505050565b81515f9061039a836002610632565b11156103a4575f80fd5b50016002015161ffff1690565b5f60606103bf838587610442565b91509150935093915050565b81515f906103da836020610632565b11156103e4575f80fd5b50016020015190565b602081106104255781518352610404602084610632565b9250610411602083610632565b915061041e6020826105e5565b90506103ed565b905182516020929092036101000a5f190180199091169116179052565b5f60605f85518551855188888860405160200161046496959493929190610686565b6040516020818303038152906040529050835167ffffffffffffffff81111561048f5761048f610645565b6040519080825280601f01601f1916602001820160405280156104b9576020820181803683370190505b50915083516020830182516020840160055afa925050935093915050565b5f8083601f8401126104e7575f80fd5b50813567ffffffffffffffff8111156104fe575f80fd5b602083019150836020828501011115610515575f80fd5b9250929050565b5f805f805f8060608789031215610531575f80fd5b863567ffffffffffffffff80821115610548575f80fd5b6105548a838b016104d7565b9098509650602089013591508082111561056c575f80fd5b6105788a838b016104d7565b90965094506040890135915080821115610590575f80fd5b5061059d89828a016104d7565b979a9699509497509295939492505050565b634e487b7160e01b5f52601160045260245ffd5b61ffff8181168382160190808211156105de576105de6105af565b5092915050565b81810381811115610305576103056105af565b818382375f9101908152919050565b5f60208284031215610617575f80fd5b5051919050565b634e487b7160e01b5f52603260045260245ffd5b80820180821115610305576103056105af565b634e487b7160e01b5f52604160045260245ffd5b5f81515f5b81811015610678576020818501810151868301520161065e565b505f93019283525090919050565b8681528560208201528460408201525f6106b56106af6106a96060850188610659565b86610659565b84610659565b9897505050505050505056fea164736f6c6343000818000a","storage":{}},"0x0712e8e819712c3bfdb098ce51c87a4ac0296fd8":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x0930ffb2c192b0c9a9dd2372cf7f2845ef39cbb6":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x65":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x66":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xbe92182cab5b84fd18b34881a0c32771e84f5b8b","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c8121905":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x107733fed96c4cd390c944a31f5425a7fb98ae5e":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x65":"0x556e73746f707061626c6520446f6d61696e7300000000000000000000000026","0x66":"0x5544000000000000000000000000000000000000000000000000000000000004","0x133":"0x68747470733a2f2f6578616d706c652e636f6d2f000000000000000000000028","0x134":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x9c74364589a7bce52d7a232f90c98b979577d9ab711dbe7e9fb985471178bff":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf29a433ca043c2d5f13825944af9d019209f338df87172c6b8012dce3044881":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf319a2ef598111826b455194189a27454a0286226eb066e1116f605e0373b37":"0x0","0x1257bbdf5bed452b3eda1d974a9839972d4d54d7fb1cde6a652e653346cc29b8":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x12c033f2252861b1bd15e9b5c71ef1cf26ca53de15eabc3b49e06f596e8755ec":"0x0","0x1348552952ac59b1c2522e84f684e36775420b449eddcdbd28f217183ed58b09":"0x0","0x149026695ebdd2bd6be0a7006aec5d10ddffbe46be181e4468980ea83c004fe9":"0x0","0x14c854a78d51371251661a408306c75d2515b5d509b295a58205e48267082bdc":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x18f06622a1abedc7bb78fcc98b2375188aef6c03b9247beee780b0b095d60285":"0x0","0x201ef5e312d372e2aeac4cf173b46ad2985127c7381f4f9acae5ebbd3a5e3861":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x2215c0abaeffcb5feae8a439b3185f8fba5dd6d97529a56c7609cd41fafdf5f1":"0x1","0x23513200931f98893f46373666c13964c7a821c5b40da7951b921629acf02735":"0x0","0x23f87654b79c6db28828f317e47d0c8deb9eaa2ea4e213fef901836c85036bf3":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x2e4566d865f2e159531492d7643e25e502917762b29082282ab9dfee8fbf54c7":"0x0","0x31fc31c15d389c5908095d314bb8b258352d51e18ac8a2f7fe15f3a0af519145":"0x0","0x3467fdbb447be3074b11c625b56e54d7ab44f3804bef205b07dd436d707d06d5":"0x0","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x62b11ad5f582a5c5d378fb310125b030042554f1","0x3cd80e7291e5f6dffa9af6eb70d47145a8fdd40acb8d09dfd0cf374e8c239b37":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x3f86c4990e663ffa5011ed38824fca68af7e0592eb22f41aebdec0ce84ee672e":"0x0","0x406aa3bf31381c8a323679af48792dfa2e7aa09dd0eb919e307dc4bf84216ff6":"0x0","0x47ce17acd30cc86e021ac7b23be8138ea767f6da503362aac5888a0679270eed":"0x0","0x4a7983c36f64e6df4d467cf706c128c273d30c24bbb172e251a5740624cc0bd3":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x4c42d98041cda7cb7d56b5d04731bd436366eb9f05c30f43671f1d1e2c0b0fa4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x55926eed7087c8cbfa1492f6d367f5e4c14c8d8cd59e2918c37184091369efb1":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x5b20f40cb5e9e634a90df9a72b516c11cc52281a4d1b7b67e672e2fe544ff22f":"0x0","0x6dac3e1cfae338e10c9c2f5000f6256d09afa83708761042001cea734f470ac1":"0x0","0x6defc32a546a6fb1b745bd1bb04e27085e94f01d7ef79587aee2c80853c43a53":"0x0","0x760b245be050a725a39b4fc089ad474a5fd40efa17101e112d30195d590779b4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x7bee59fcac76da32acb23def57eaaf959a4372a4fc180978fbd54f7a4c4b2f3d":"0x0","0x804aee9448e0b539a009ee7c6dd57e686c72e7b182e9622a42922b245a97e61e":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x825f7f8567cfd669c3beab41edff07d4aa51436123deeb0d3623b6a8fdec893c":"0x0","0x8717a3236e6a948df94444f035834fa8f7c5ee663a29f3580f3ef43ab051d6bd":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8a34e37883baf84417a33bb02eec8d1e43e363f617029800ff166614df3f112f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8bd1acdc45b63f1edf5db0b1444f1c4a6f82bf0a5a0a7231c2dd7b76a2b1e35c":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87":"0x0","0x8ed4e9fbdf86edd9f3eb1c8d4fbfc53a2eb863faf4cf5e0d2b307c0b33030091":"0x0","0x8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x90d72780b77edcd0c8daffbac0b21264679e851b734cb090e2b144eb3a28bb98":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x93fc964857984ff804a65eaceac4062669948f2b651ddc6b71373ad142bf45e0":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x9770fa903e700367e0306ab8fd70a2bb4f049417d341a2f8a2409d8d6a2218d1":"0x0","0xb1016fe231c2ed9dba8c95d2658191823b4b9ffa61a7aea530802c6b2ff27c41":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xbe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafe":"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f","0xbe7c5c707db1c91bd2c84880bb1e177b65886d295d9a62df8edfe38f8066cc81":"0x0","0xc3cd64a46de7309013ddb93a16a3024c2e46fb931e4744edf2610fb119f716f5":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xc563f9d3175978a619bae1a8175d3ea4be91d3890345085c5eb16f83b678a3d9":"0x0","0xc5b5cdb7b939f9d661f58f28c37e10cf71d45dacfea2581c88ae4a17aaf55e6e":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xd386775169d9e0716e9b5b08561984726edaa9febd0ca8e5468ecffa112078c7":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xe3b736cdcc6a09d7e3a05ffb63b11f11c91958d861443c3409d3fd863e8217bd":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xe3e5b75e3dff543bfbfe5b494e4e3243b4d9d0b3d794725cea46c28fe6be50e4":"0x0","0xe7d61626cac95282d296ee7ab5958e3e72e32eb959a7cab1d37c0f9d6d69c18a":"0x1a","0xeca5e1ccaa645ce2be97a867a1f8aeeb63ea833aeb009c0df0553b42b30c683f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf08305746cdba1d0eaa65036694838a3db122973267ffc57739d605c320c680a":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf0d566acc03395f71b37890f455d51d93197adf754ea72aba21427dc66b437df":"0x0","0xf230898ba4fe40c52f958d03013d995f822e25a5d4fae43bbdc6e92623cea0bd":"0x0","0xf245a9962043f44f4af98f9952a3bd29d91eb05418e4bb567b9de8f27e239b13":"0x0","0xf2a19ade13962e8675aecf2fbe51913877912f9e48e899806b6e06e82f9a980f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf2fab50b0b53245ddfa1bcfcdf4c73e209d6921dad704d173cf04cbbadc8e346":"0x0","0xfa6f3ee10d719cb3457d10c539ff3d77b8e56852ea62f68b2f9f85ad691ed6b4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xfff3abb219acc6ef4eed6e93a5682023229370196f352cdf3a71a88d881e3487":"0x0"}},"0x11dd97b7ca847dfb6504e61b7b9eb30f55e554a0":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a424740014610090575b600080fd5b610059610054366004610ba9565b6100b3565b6040516100669190610c98565b60405180910390f35b61008261007d366004610cab565b6101ce565b604051908152602001610066565b6100a361009e366004610ba9565b610332565b6040519015158152602001610066565b606060005a6001546040805163b3f9e4cb60e01b81529088013560048201529192506000916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561010a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061012e9190610cd9565b90506101c26101406020880188610cf6565b8260408901358561015460608c018c610d13565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8f018190048102820181019092528d815292508d91508c90819084018382808284376000920191909152506103fb92505050565b925050505b9392505050565b60025460015460405163b3f9e4cb60e01b8152600481018490526000926001600160a01b0390811692169063b3f9e4cb90602401602060405180830381865afa92505050801561023b575060408051601f3d908101601f1916820190925261023891810190610cd9565b60015b156102435790505b6001600160a01b0381163b156102c557604051636ccbae5f60e01b81526004810184905281906001600160a01b03821690636ccbae5f90602401602060405180830381865afa9250505080156102b6575060408051601f3d908101601f191682019092526102b391810190610d5a565b60015b156102c357949350505050565b505b600254604051636ccbae5f60e01b8152600481018590526001600160a01b0390911690636ccbae5f90602401602060405180830381865afa15801561030e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101c79190610d5a565b6001546040805163b3f9e4cb60e01b815290850135600482015260009182916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa158015610383573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103a79190610cd9565b90506103f26103b586610e0b565b8286868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506104d392505050565b95945050505050565b6060600080876001600160a01b0316866104178b8a898961051f565b6040516104249190610eb5565b60006040518083038160008787f1925050503d8060008114610462576040519150601f19603f3d011682016040523d82523d6000602084013e610467565b606091505b509092509050610478603f87610ed1565b5a1161048657610486610ef3565b6104c682826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506105d4565b9998505050505050505050565b60006104e084848461060d565b8015610514575060608401516020908101516001600160e01b031990811660009081529182905260409091205460e01b1615155b949350505050565b50565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036105b15760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526105c982828661074c565b979650505050505050565b606083156105e35750816101c7565b8251156105f35782518084602001fd5b8160405162461bcd60e51b81526004016105a89190610c98565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015610654573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106789190610d5a565b905060006107268660600151805190602001208688602001516040516020016106c69392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156101c2575085516101c2906001600160a01b03168286610935565b60606001600160e01b0319841663b87abc1160e01b036107cd5760008380602001905181019061077c9190610d5a565b9050848184604051602401610792929190610f09565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915291506101c79050565b6001600160e01b0319841663c597407360e01b03610859576000806000858060200190518101906107fe9190610f67565b925092509250868383838860405160240161081c9493929190610fd4565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293506101c792505050565b6001600160e01b031984166311ed383160e31b036108a85760008060008580602001905181019061088a91906110a6565b925092509250868383838860405160240161081c9493929190611157565b6001600160e01b031984166328d55f9b60e21b036101c7576000806000858060200190518101906108d991906110a6565b92509250925086838383886040516024016108f79493929190611157565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293505050509392505050565b60008060006109448585610a77565b9092509050600081600481111561095d5761095d61117c565b14801561097b5750856001600160a01b0316826001600160a01b0316145b1561098b576001925050506101c7565b600080876001600160a01b0316631626ba7e60e01b88886040516024016109b3929190610f09565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516109f19190610eb5565b600060405180830381855afa9150503d8060008114610a2c576040519150601f19603f3d011682016040523d82523d6000602084013e610a31565b606091505b5091509150818015610a44575080516020145b8015610a6b57508051630b135d3f60e11b90610a699083016020908101908401610d5a565b145b98975050505050505050565b6000808251604103610aad5760208301516040840151606085015160001a610aa187828585610abc565b94509450505050610ab5565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610af35750600090506003610ba0565b8460ff16601b14158015610b0b57508460ff16601c14155b15610b1c5750600090506004610ba0565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610b70573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610b9957600060019250925050610ba0565b9150600090505b94509492505050565b600080600060408486031215610bbe57600080fd5b833567ffffffffffffffff80821115610bd657600080fd5b9085019060808288031215610bea57600080fd5b90935060208501359080821115610c0057600080fd5b818601915086601f830112610c1457600080fd5b813581811115610c2357600080fd5b876020828501011115610c3557600080fd5b6020830194508093505050509250925092565b60005b83811015610c63578181015183820152602001610c4b565b50506000910152565b60008151808452610c84816020860160208601610c48565b601f01601f19169290920160200192915050565b6020815260006101c76020830184610c6c565b600060208284031215610cbd57600080fd5b5035919050565b6001600160a01b038116811461051c57600080fd5b600060208284031215610ceb57600080fd5b81516101c781610cc4565b600060208284031215610d0857600080fd5b81356101c781610cc4565b6000808335601e19843603018112610d2a57600080fd5b83018035915067ffffffffffffffff821115610d4557600080fd5b602001915036819003821315610ab557600080fd5b600060208284031215610d6c57600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610dac57610dac610d73565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ddb57610ddb610d73565b604052919050565b600067ffffffffffffffff821115610dfd57610dfd610d73565b50601f01601f191660200190565b600060808236031215610e1d57600080fd5b610e25610d89565b8235610e3081610cc4565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610e6057600080fd5b840136601f820112610e7157600080fd5b8035610e84610e7f82610de3565b610db2565b8181523684838501011115610e9857600080fd5b818484018583013760009181019093015250606082015292915050565b60008251610ec7818460208701610c48565b9190910192915050565b600082610eee57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b8281526040602082015260006105146040830184610c6c565b600082601f830112610f3357600080fd5b8151610f41610e7f82610de3565b818152846020838601011115610f5657600080fd5b610514826020830160208701610c48565b600080600060608486031215610f7c57600080fd5b835167ffffffffffffffff80821115610f9457600080fd5b610fa087838801610f22565b94506020860151915080821115610fb657600080fd5b50610fc386828701610f22565b925050604084015190509250925092565b608081526000610fe76080830187610c6c565b8281036020840152610ff98187610c6c565b905084604084015282810360608401526105c98185610c6c565b600082601f83011261102457600080fd5b8151602067ffffffffffffffff8083111561104157611041610d73565b8260051b611050838201610db2565b938452858101830193838101908886111561106a57600080fd5b84880192505b85831015610a6b578251848111156110885760008081fd5b6110968a87838c0101610f22565b8352509184019190840190611070565b6000806000606084860312156110bb57600080fd5b835167ffffffffffffffff808211156110d357600080fd5b6110df87838801611013565b945060208601519150808211156110f557600080fd5b50610fc386828701611013565b600081518084526020808501808196508360051b8101915082860160005b8581101561114a578284038952611138848351610c6c565b98850198935090840190600101611120565b5091979650505050505050565b60808152600061116a6080830187611102565b8281036020840152610ff98187611102565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x2":"0xf8c26340c1eaea6c7ff1760b25005e1306953572","0x1e74f978992d7d64ddac400bd4aae9eefd60fa0b8456650273f5f50148803323":"0xa3557e6c","0x23c84c23be8f829809d1b1502c647c6c59fb6b2345b163a2ca3e7d4f9855975c":"0x8f69c188","0xa0286316c9d3cb00f4f54a9f1096cefaa1748bb5a5395e7fa1563568ebb3e6c3":"0xb87abc11","0xdc138de224807be243ee38fe9e746cce5d437a256b87be90b80240e0811ad043":"0xc5974073"}},"0x145908bbcfc7b258e4d4d9a586f6e3249ae80216":{"nonce":1,"balance":"0x0","code":"0x3d5c","storage":{}},"0x17cda4e23f7237277952e075b1c48467aabfacc0":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c806368f9dab21461002d575b5f80fd5b61004061003b36600461088b565b610052565b60405190815260200160405180910390f35b5f61006f6040518060400160405280606081526020015f81525090565b61008e61007c858861090d565b61008790601061090d565b82906101d1565b506100d085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250859392505061023a9050565b5061011287878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250859392505061023a9050565b505f610120825f0151610266565b905083156101bc5760408051808201909152606081525f602090910181905282515261014c825f610650565b5061018e88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250869392505061023a9050565b505f5b848110156101ba576101a4835f8461067f565b5082516101b090610266565b9150600101610191565b505b6001600160601b031916979650505050505050565b60408051808201909152606081525f60208201526101f0602083610920565b1561021857610200602083610920565b61020b90602061093f565b610215908361090d565b91505b506020808301829052604080518085525f815283019091019052815b92915050565b60408051808201909152606081525f602082015261025f83845f0151518485516106b2565b9392505050565b5f6040518251602084019350604067ffffffffffffffc060018301160160098282031060018103610298576040820191505b50776745230100efcdab890098badcfe001032547600c3d2e1f06102e8565b5f8383101561025f5750808201519282900392602084101561025f575f1960208590036101000a0119169392505050565b5f5b828110156105ef576102fd8482896102b7565b855261030d8460208301896102b7565b6020860152604081850310600181036103295760808286038701535b506040830381146001810361034657602086018051600887021790525b5060405b60808110156103ce57858101603f19810151603719820151601f19830151600b198401516002911891909218189081027ffffffffefffffffefffffffefffffffefffffffefffffffefffffffefffffffe1663800000009091047c010000000100000001000000010000000100000001000000010000000116179052600c0161034a565b5060805b61014081101561045757858101607f19810151606f19820151603f198301516017198401516004911891909218189081027ffffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffc1663400000009091047c0300000003000000030000000300000003000000030000000300000003161790526018016103d2565b50815f805f5b60508110156105c55760148104801561048d57600181146104b457600281146104d9576003811461050357610524565b600160281b8504600160501b86048118600160781b870416189350635a8279999250610524565b600160281b8504600160781b8604600160501b870418189350636ed9eba19250610524565b600160501b8504600160781b8604818117600160281b8804169116179350638f1bbcdc9250610524565b600160281b8504600160781b8604600160501b87041818935063ca62c1d692505b50601f600160bb1b8504168063ffffffe06001609b1b87041617905080840190508063ffffffff8616019050808301905080600160e01b600484028c015104019050600160a01b8102600160281b860417945050600160501b633fffffff600160521b86041663c00000006604000000000000870416170277ffffffff00ffffffff000000000000ffffffff00ffffffff851617935060018101905061045d565b5050509190910177ffffffff00ffffffff00ffffffff00ffffffff00ffffffff16906040016102ea565b50600160601b63ffffffff821667ffffffff000000006101008404166bffffffff00000000000000006201000085041663ffffffff60601b630100000086041663ffffffff60801b6401000000008704161717171702945050505050919050565b60408051808201909152606081525f602082015282515161025f9084906001600160601b031985166014610798565b60408051808201909152606081525f60208201526106aa84846001600160601b031985166014610798565b949350505050565b60408051808201909152606081525f602082015282518211156106d3575f80fd5b60208501516106e2838661090d565b1115610715576107158561070587602001518786610700919061090d565b610813565b610710906002610952565b610829565b5f808651805187602083010193508088870111156107335787860182525b505050602084015b60208410610773578051825261075260208361090d565b915061075f60208261090d565b905061076c60208561093f565b935061073b565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b60408051808201909152606081525f602082015260208501516107bb858461090d565b11156107cf576107cf85610705868561090d565b5f6001836101000a0390508260200360080284901c93508551838682010185831982511617815250805184870111156108085783860181525b509495945050505050565b5f81831115610823575081610234565b50919050565b815161083583836101d1565b50610840838261023a565b50505050565b5f8083601f840112610856575f80fd5b50813567ffffffffffffffff81111561086d575f80fd5b602083019150836020828501011115610884575f80fd5b9250929050565b5f805f805f6060868803121561089f575f80fd5b853567ffffffffffffffff808211156108b6575f80fd5b6108c289838a01610846565b909750955060208801359150808211156108da575f80fd5b506108e788828901610846565b96999598509660400135949350505050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610234576102346108f9565b5f8261093a57634e487b7160e01b5f52601260045260245ffd5b500690565b81810381811115610234576102346108f9565b8082028115828204841417610234576102346108f956fea164736f6c6343000818000a","storage":{}},"0x19356cc2300833e690088a5a09a2044a3cc2a1e2":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x229c56b7805ab5935a883207f6a6bd5847e65aee":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106102ae5760003560e01c8063906cecc111610175578063b9998a24116100dc578063d547741f11610095578063f2fde38b1161006f578063f2fde38b14610892578063f5243bc4146108b2578063f940e385146108d2578063ffa1ad74146108f257600080fd5b8063d547741f1461083f578063d7db74c71461085f578063ec5273891461087257600080fd5b8063b9998a241461077d578063cc2a9a5b1461079d578063cc2c3fc4146107bd578063ceeb4f50146107dd578063d1f5692c146107fd578063d53913931461081d57600080fd5b8063a3a3f7f61161012e578063a3a3f7f614610690578063a3f4df7e146106b0578063a849d65c146106fd578063aa271e1a1461071d578063b0aa98c71461073d578063b3ab15fb1461075d57600080fd5b8063906cecc1146105e657806391d1485414610606578063983b2d5614610626578063986502751461064657806399e0dd7c1461065b578063a217fddf1461067b57600080fd5b80635b6fa8db11610219578063715018a6116101d2578063715018a61461054b57806371e2a6571461056057806377a2a5891461058057806381c81d35146105a05780638456cb59146105b35780638da5cb5b146105c857600080fd5b80635b6fa8db146104a35780635c975abb146104c35780635cd7e3b3146104d85780635e22cd86146104f85780635fc1964f14610518578063634486da1461053857600080fd5b80633092afd51161026b5780633092afd5146103a857806336568abe146103c85780633f41b614146103e85780633f4ba83a1461042057806351cff8d914610435578063572b6c051461045557600080fd5b806301ffc9a7146102b35780631edb948e146102e857806320c5429b1461030a578063248a9ca31461032a578063268b15ed146103685780632f2ff15d14610388575b600080fd5b3480156102bf57600080fd5b506102d36102ce366004613dc4565b610923565b60405190151581526020015b60405180910390f35b3480156102f457600080fd5b50610308610303366004613e13565b61095a565b005b34801561031657600080fd5b50610308610325366004613e3f565b610b03565b34801561033657600080fd5b5061035a610345366004613e3f565b60009081526097602052604090206001015490565b6040519081526020016102df565b34801561037457600080fd5b50610308610383366004613e99565b610c26565b34801561039457600080fd5b506103086103a3366004613f04565b610cb9565b3480156103b457600080fd5b506103086103c3366004613f34565b610ce3565b3480156103d457600080fd5b506103086103e3366004613f04565b610cf7565b3480156103f457600080fd5b5060c954610408906001600160a01b031681565b6040516001600160a01b0390911681526020016102df565b34801561042c57600080fd5b50610308610d85565b34801561044157600080fd5b50610308610450366004613f34565b610d97565b34801561046157600080fd5b506102d3610470366004613f34565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546001600160a01b0390811691161490565b3480156104af57600080fd5b5060cc54610408906001600160a01b031681565b3480156104cf57600080fd5b506102d3610e37565b3480156104e457600080fd5b506103086104f3366004613fa3565b610e4d565b34801561050457600080fd5b50610308610513366004614062565b6110b1565b34801561052457600080fd5b5061030861053336600461419c565b6112f6565b610308610546366004613f34565b61133e565b34801561055757600080fd5b50610308611401565b34801561056c57600080fd5b5061030861057b36600461419c565b611413565b34801561058c57600080fd5b5060ce54610408906001600160a01b031681565b6103086105ae366004613f34565b61145b565b3480156105bf57600080fd5b506103086114d8565b3480156105d457600080fd5b506033546001600160a01b0316610408565b3480156105f257600080fd5b5061030861060136600461423a565b6114e8565b34801561061257600080fd5b506102d3610621366004613f04565b61156e565b34801561063257600080fd5b50610308610641366004613f34565b611599565b34801561065257600080fd5b506103086115aa565b34801561066757600080fd5b50610308610676366004614295565b6115c4565b34801561068757600080fd5b5061035a600081565b34801561069c57600080fd5b506103086106ab3660046142d6565b6116ab565b3480156106bc57600080fd5b506106f0604051806040016040528060148152602001732aa7299d1026b4b73a34b7339026b0b730b3b2b960611b81525081565b6040516102df919061437c565b34801561070957600080fd5b5060cb54610408906001600160a01b031681565b34801561072957600080fd5b506102d3610738366004613f34565b6116f4565b34801561074957600080fd5b506102d3610758366004613e3f565b61170e565b34801561076957600080fd5b50610308610778366004613f34565b61176c565b34801561078957600080fd5b50610308610798366004613f34565b611796565b3480156107a957600080fd5b506103086107b836600461438f565b6117db565b3480156107c957600080fd5b5060ca54610408906001600160a01b031681565b3480156107e957600080fd5b506103086107f8366004614411565b611cd2565b34801561080957600080fd5b506103086108183660046144c6565b611d76565b34801561082957600080fd5b5061035a600080516020614ef483398151915281565b34801561084b57600080fd5b5061030861085a366004613f04565b611e2d565b61030861086d3660046144fb565b611e52565b34801561087e57600080fd5b5061030861088d366004613e3f565b611fe2565b34801561089e57600080fd5b506103086108ad366004613f34565b612054565b3480156108be57600080fd5b506103086108cd3660046145f0565b612070565b3480156108de57600080fd5b506103086108ed366004614708565b612222565b3480156108fe57600080fd5b506106f060405180604001604052806005815260200164302e352e3160d81b81525081565b60006001600160e01b03198216637965db0b60e01b148061095457506301ffc9a760e01b6001600160e01b03198316145b92915050565b61096561073861239e565b61098a5760405162461bcd60e51b815260040161098190614736565b60405180910390fd5b60c95460405163baef73e960e01b8152600481018390526000916001600160a01b03169063baef73e990602401602060405180830381865afa1580156109d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109f8919061476b565b9050806001600160401b0316600003610a235760405162461bcd60e51b815260040161098190614788565b806001600160401b0316836001600160401b031611610a905760405162461bcd60e51b815260206004820152602360248201527f4d696e74696e674d616e616765723a204558504952595f4e4f545f455854454e60448201526211115160ea1b6064820152608401610981565b60c954604051631fb9763760e11b81526001600160401b0385166004820152602481018490526001600160a01b0390911690633f72ec6e906044015b600060405180830381600087803b158015610ae657600080fd5b505af1158015610afa573d6000803e3d6000fd5b50505050505050565b610b0e61073861239e565b610b2a5760405162461bcd60e51b815260040161098190614736565b60c95460405163baef73e960e01b8152600481018390526001600160a01b039091169063baef73e990602401602060405180830381865afa158015610b73573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b97919061476b565b6001600160401b0316600003610bbf5760405162461bcd60e51b815260040161098190614788565b60c954604051637eee288d60e01b8152306004820152602481018390526001600160a01b0390911690637eee288d90604401600060405180830381600087803b158015610c0b57600080fd5b505af1158015610c1f573d6000803e3d6000fd5b5050505050565b8282828080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250610c6993508592508491506123ad565b610c71610e37565b15610c8e5760405162461bcd60e51b8152600401610981906147cb565b6060610afa610c9b61239e565b610cae88610ca98989612584565b6125b0565b8384600060016126c1565b600082815260976020526040902060010154610cd481612c15565b610cde8383612c26565b505050565b610ceb612cad565b610cf481612d26565b50565b610cff61239e565b6001600160a01b0316816001600160a01b031614610d775760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610981565b610d818282612d3e565b5050565b610d8d612cad565b610d95612dc3565b565b610d9f612cad565b6001600160a01b038116610db257600080fd5b60405147906001600160a01b0383169082156108fc029083906000818181858888f19350505050158015610dea573d6000803e3d6000fd5b50604080516001600160a01b03841681526020810183905260008183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a15050565b600080516020614ed48339815191525460ff1690565b610e5786886147f5565b8051600203610e8c57610e6b61073861239e565b610e875760405162461bcd60e51b8152600401610981906148bf565b610fd1565b6000610e9782612e6b565b60c9549092506001600160a01b0316905063430c2081610eb561239e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015610f00573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f249190614903565b80610fb3575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa158015610f7d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fa19190614903565b8015610fb35750610fb361073861239e565b610fcf5760405162461bcd60e51b815260040161098190614920565b505b610fdb87896147f5565b6000600282511015610fff5760405162461bcd60e51b81526004016109819061496f565b6110546110336000846001865161101691906149ca565b81518110611026576110266149dd565b6020026020010151612ea6565b83600081518110611046576110466149dd565b6020026020010151836123ad565b61105c610e37565b156110795760405162461bcd60e51b8152600401610981906147cb565b6110a38b6110878b8d6147f5565b6110918a8c6147f5565b61109b898b6147f5565b6000896126c1565b505050505050505050505050565b6110bb87896147f5565b80516002036110f0576110cf61073861239e565b6110eb5760405162461bcd60e51b8152600401610981906148bf565b611235565b60006110fb82612e6b565b60c9549092506001600160a01b0316905063430c208161111961239e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015611164573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111889190614903565b80611217575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa1580156111e1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112059190614903565b8015611217575061121761073861239e565b6112335760405162461bcd60e51b815260040161098190614920565b505b61123f888a6147f5565b836002825110156112625760405162461bcd60e51b81526004016109819061496f565b6112796110336000846001865161101691906149ca565b611281610e37565b1561129e5760405162461bcd60e51b8152600401610981906147cb565b60028a146112be5760405162461bcd60e51b8152600401610981906149f3565b6112e78c6112cc8c8e6147f5565b6112d68b8d6147f5565b6112e08a8c6147f5565b89896126c1565b50505050505050505050505050565b6112fe612cad565b60005b8151811015610d815761132c82828151811061131f5761131f6149dd565b6020026020010151612d26565b8061133681614a39565b915050611301565b61134961073861239e565b6113655760405162461bcd60e51b815260040161098190614736565b6001600160a01b0381166113bb5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610981565b6113c481612f5a565b6113cc6115aa565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610d81573d6000803e3d6000fd5b611409612cad565b610d956000612f72565b61141b612cad565b60005b8151811015610d815761144982828151811061143c5761143c6149dd565b6020026020010151612f5a565b8061145381614a39565b91505061141e565b61146661073861239e565b6114825760405162461bcd60e51b815260040161098190614736565b6001600160a01b0381166113c45760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610981565b6114e0612cad565b610d95612fc4565b8282828080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525061152b93508592508491506123ad565b611533610e37565b156115505760405162461bcd60e51b8152600401610981906147cb565b606061156487610cae88610ca98989612584565b5050505050505050565b60009182526097602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6115a1612cad565b610cf481612f5a565b610d95600080516020614ef48339815191526103e361239e565b6115cc612cad565b60c954604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906115fe9085908590600401614a52565b600060405180830381600087803b15801561161857600080fd5b505af115801561162c573d6000803e3d6000fd5b505060cb546001600160a01b0316159150610d8190505760cb54604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906116759085908590600401614a52565b600060405180830381600087803b15801561168f57600080fd5b505af11580156116a3573d6000803e3d6000fd5b505050505050565b6116b3612cad565b610cde83838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525085925061302c915050565b6000610954600080516020614ef48339815191528361156e565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd696020820152908101829052600090611762906060015b6040516020818303038152906040528051906020012090565b5460ff1692915050565b611774612cad565b60ce80546001600160a01b0319166001600160a01b0392909216919091179055565b61179e612cad565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e80546001600160a01b0319166001600160a01b03831617905550565b600054610100900460ff16158080156117fb5750600054600160ff909116105b806118155750303b158015611815575060005460ff166001145b6118785760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610981565b6000805460ff19166001179055801561189b576000805461ff0019166101001790555b60c980546001600160a01b03199081166001600160a01b038a81169190911790925560ca8054821689841617905560cb8054821688841617905560cc8054821687841617905560ce80549091169185169190911790556118f961314c565b611901613183565b61190a826131bc565b6119126131e3565b6040805161036081018252600661032082018181526563727970746f60d01b610340840152825282518084018452818152651dd85b1b195d60d21b602082810191909152808401919091528351808501855260018152600f60fb1b8183015283850152835180850185526003808252621b999d60ea1b82840152606085019190915284518086018652600a815269313637b1b5b1b430b4b760b11b818401526080850152845180860186526007808252663134ba31b7b4b760c91b8285015260a0860191909152855180870187528281526207070760eb1b8185015260c0860152855180870187528281526264616f60e81b8185015260e086015285518087018752828152621e9a5b60ea1b8185015261010086015285518087018752908152663837b63cb3b7b760c91b8184015261012085015284518086018652600b81526a756e73746f707061626c6560a81b81840152610140850152845180860186528381526535b632bb32b960d11b8184015261016085015284518086018652600280825261686960f01b8285015261018086019190915285518087018752848152656b726573757360d01b818501526101a086015285518087018752600580825264616e696d6560d81b828601526101c087019190915286518088018852818152646d616e676160d81b818601526101e087015286518088018852600981526862696e616e6365757360b81b8186015261020087015286518088018852818152647265616c6d60d81b818601526102208701528651808801885291825261676f60f01b82850152610240860191909152855180870187526008815267185b1d1a5b5a5cdd60c21b818501526102608601528551808701875290815264707564677960d81b81840152610280850152845180860186528381526530bab9ba34b760d11b818401526102a08501528451808601865292835265189a5d19d95d60d21b838301526102c08401929092528351808501855291825262706f6760e81b828201526102e083019190915282518084019093526004835263636c617960e01b9083015261030081019190915260005b6019811015611c5c57611c4a828260198110611c3e57611c3e6149dd565b6020020151600061302c565b80611c5481614a39565b915050611c20565b50611c8360405180604001604052806003815260200162636f6d60e81b815250600161302c565b508015610afa576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050505050565b8686868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250611d1593508592508491506123ad565b611d1d610e37565b15611d3a5760405162461bcd60e51b8152600401610981906147cb565b611d698a611d4c8b610ca98c8c612584565b611d56888a6147f5565b611d6087896147f5565b600060016126c1565b5050505050505050505050565b611d7e612cad565b60005b81811015610cde5760c9546001600160a01b03166350960239848484818110611dac57611dac6149dd565b9050602002016020810190611dc19190613f34565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401600060405180830381600087803b158015611e0257600080fd5b505af1158015611e16573d6000803e3d6000fd5b505050508080611e2590614a39565b915050611d81565b600082815260976020526040902060010154611e4881612c15565b610cde8383612d3e565b611e5c898b6147f5565b6000600282511015611e805760405162461bcd60e51b81526004016109819061496f565b611e976110336000846001865161101691906149ca565b611e9f610e37565b15611ebc5760405162461bcd60e51b8152600401610981906147cb565b60028b14611edc5760405162461bcd60e51b8152600401610981906149f3565b611f228d8d8d898960008a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061322392505050565b84341015611f725760405162461bcd60e51b815260206004820181905260248201527f4d696e74696e674d616e616765723a204e4f545f454e4f5547485f46554e44536044820152606401610981565b611f848d8d8d8d8d8d8d8c60006133e3565b843411156112e757611f9461239e565b6001600160a01b03166108fc611faa87346149ca565b6040518115909202916000818181858888f19350505050158015611fd2573d6000803e3d6000fd5b5050505050505050505050505050565b611fea612cad565b611ff38161349f565b61200f5760405162461bcd60e51b815260040161098190614a81565b600081815260cd6020526040812061202691613d76565b60405181907f0aa1aff0f830e739d86baf0e6624d6763da02f7733575e0e463886cd062dea6a90600090a250565b61205c612cad565b612065816134c5565b610cf460008261353b565b61207a8a8c6147f5565b600060028251101561209e5760405162461bcd60e51b81526004016109819061496f565b6120b56110336000846001865161101691906149ca565b6120bd610e37565b156120da5760405162461bcd60e51b8152600401610981906147cb565b60028c146120fa5760405162461bcd60e51b8152600401610981906149f3565b61213f8e8e8e8a898b8a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061322392505050565b856001600160a01b03166323b872dd61215661239e565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152306024820152604481018890526064016020604051808303816000875af11580156121a9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121cd9190614903565b6122115760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610981565b611fd28e8e8e8e8e8e8e8c8e6133e3565b61222a612cad565b6040516370a0823160e01b81523060048201526000906001600160a01b038416906370a0823190602401602060405180830381865afa158015612271573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122959190614ac3565b60405163a9059cbb60e01b81526001600160a01b038481166004830152602482018390529192509084169063a9059cbb906044016020604051808303816000875af11580156122e8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061230c9190614903565b6123505760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610981565b604080516001600160a01b0384811682526020820184905285168183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a1505050565b60006123a8613545565b905090565b6123b68361349f565b6123d25760405162461bcd60e51b815260040161098190614a81565b600083815260cf602052604090205460ff1615156001600160401b03821615151461244e5760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544c445f455850495241424c455f4d496044820152650a69a82a886960d31b6064820152608401610981565b60006124818360408051808201825260008082526020918201528151808301909252825182529182019181019190915290565b9050600a81600001511115612529576124ac6124a0826000600a61358b565b80516020909101512090565b7fb551e0305c8163b812374b8e78b577c77f226f6f10c5ad03e52699578fbc34b8036125295760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544f4b454e5f4c4142454c5f50524f4860448201526512509255115160d21b6064820152608401610981565b612532836135ca565b61257e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a204c4142454c5f494e56414c49440000006044820152606401610981565b50505050565b60608282604051602001612599929190614adc565b604051602081830303815290604052905092915050565b604080516002808252606082810190935260009190816020015b60608152602001906001900390816125ca57905050905082816000815181106125f5576125f56149dd565b602002602001018190525060cd6000858152602001908152602001600020805461261e90614b04565b80601f016020809104026020016040519081016040528092919081815260200182805461264a90614b04565b80156126975780601f1061266c57610100808354040283529160200191612697565b820191906000526020600020905b81548152906001019060200180831161267a57829003601f168201915b5050505050816001815181106126af576126af6149dd565b60209081029190910101529392505050565b60008060006126cf88612e6b565b915091508380156126e1575060028851115b8015612763575060c9546040516331a9108f60e11b8152600481018390526001600160a01b038b8116921690636352211e90602401602060405180830381865afa158015612733573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127579190614b3e565b6001600160a01b031614155b156127c35760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e616765723a20524556455253455f5245434f52445f4e60448201526913d517d0531313d5d15160b21b6064820152608401610981565b60c954604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401602060405180830381865afa15801561280c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128309190614903565b8015612921575060c9546040516331a9108f60e11b81526004810184905230916001600160a01b031690636352211e90602401602060405180830381865afa158015612880573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128a49190614b3e565b6001600160a01b03161480612921575060c95460405163d9548e5360e01b8152600481018490526001600160a01b039091169063d9548e5390602401602060405180830381865afa1580156128fd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129219190614903565b15612a12576001600160401b038516156129a35760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b15801561298a57600080fd5b505af115801561299e573d6000803e3d6000fd5b505050505b60c954604051630fb8df0360e11b81526001600160a01b0390911690631f71be06906129db908c908c908c908c908b90600401614bb0565b600060405180830381600087803b1580156129f557600080fd5b505af1158015612a09573d6000803e3d6000fd5b50505050612c09565b612a1b8261372e565b612a248861378d565b8015612a31575087516002145b8015612a4457506001600160401b038516155b15612b225760ca5488516001600160a01b039091169063c36c2125908b908b90600090612a7357612a736149dd565b602090810291909101015160cc546040516001600160e01b031960e086901b168152612aad9392916001600160a01b031690600401614c0f565b600060405180830381600087803b158015612ac757600080fd5b505af1158015612adb573d6000803e3d6000fd5b50505050600087511115612b1d5760cc54604051633a0deb9d60e21b81526001600160a01b039091169063e837ae74906129db908a908a908790600401614c44565b612c09565b60c95460405163ba5d40b760e01b81526001600160a01b039091169063ba5d40b790612b5a908c908c908c908c908b90600401614bb0565b600060405180830381600087803b158015612b7457600080fd5b505af1158015612b88573d6000803e3d6000fd5b505050506001600160401b03851615612c095760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b158015612bf057600080fd5b505af1158015612c04573d6000803e3d6000fd5b505050505b50979650505050505050565b610cf481612c2161239e565b6137e7565b612c30828261156e565b610d815760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19166001179055612c6961239e565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b612cb561239e565b6001600160a01b0316612cd06033546001600160a01b031690565b6001600160a01b031614610d955760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610981565b610cf4600080516020614ef483398151915282611e2d565b612d48828261156e565b15610d815760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19169055612d7f61239e565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612dcb610e37565b612e0e5760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881393d517d4105554d15160621b6044820152606401610981565b600080516020614ed4833981519152805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa612e4e61239e565b6040516001600160a01b03909116815260200160405180910390a1565b805160009081905b8015612ea057829150612e8c82856110166001856149ca565b925080612e9881614c7a565b915050612e73565b50915091565b60008151600003612ef95760405162461bcd60e51b815260206004820152601b60248201527f4d696e74696e674d616e616765723a204c4142454c5f454d50545900000000006044820152606401610981565b8282604051602001612f0b9190614c91565b60405160208183030381529060405280519060200120604051602001612f3b929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b610cf4600080516020614ef48339815191528261353b565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b612fcc610e37565b15612fe95760405162461bcd60e51b8152600401610981906147cb565b600080516020614ed4833981519152805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258612e4e61239e565b6000613039600084612ea6565b600081815260cd602052604090209091506130548482614cf3565b50600081815260cf602052604090819020805460ff19168415151790555181907f4fce6f6e172b04eaa80325d8e3b0180a34945000f3e214605039e8420fdf8980906130a190869061437c565b60405180910390a260c954604051634f558e7960e01b8152600481018390526001600160a01b0390911690634f558e7990602401602060405180830381865afa1580156130f2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131169190614903565b610cde5760c9546040516307befae360e51b81526001600160a01b039091169063f7df5c6090610acc9084908790600401614db2565b600054610100900460ff166131735760405162461bcd60e51b815260040161098190614dd3565b610d9561317e61239e565b612f72565b600054610100900460ff166131aa5760405162461bcd60e51b815260040161098190614dd3565b610d9560006131b761239e565b61353b565b600054610100900460ff1661179e5760405162461bcd60e51b815260040161098190614dd3565b600054610100900460ff1661320a5760405162461bcd60e51b815260040161098190614dd3565b600080516020614ed4833981519152805460ff19169055565b600061323761323287896147f5565b612e6b565b506040516bffffffffffffffffffffffff1930606090811b821660208401524660348401528b811b82166054840152606883018490526001600160c01b031960c08a901b1660888401526090830188905286901b1660b082015290915060009061331390849061330d9060c401604051602081830303815290604052805190602001206040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c8101829052600090605c01604051602081830303815290604052805190602001209050919050565b9061384b565b905061331e816116f4565b6133765760405162461bcd60e51b8152602060048201526024808201527f4d696e74696e674d616e616765723a205349474e45525f49535f4e4f545f4d49604482015263272a22a960e11b6064820152608401610981565b42866001600160401b0316116133d85760405162461bcd60e51b815260206004820152602160248201527f4d696e74696e674d616e616765723a20455850495245445f5349474e415455526044820152604560f81b6064820152608401610981565b505050505050505050565b600061342a8a6133f38a8c6147f5565b6133fd898b6147f5565b613407888a6147f5565b60008f6001600160a01b031661341b61239e565b6001600160a01b0316146126c1565b9050896001600160a01b031661343e61239e565b6001600160a01b0316827fa545b6fd3355e8d57f8c8147bafe740545bd3ea1f94bef2576a6d532a7c3b605868660405161348b9291909182526001600160a01b0316602082015260400190565b60405180910390a450505050505050505050565b600081815260cd6020526040812080548291906134bb90614b04565b9050119050919050565b6134cd612cad565b6001600160a01b0381166135325760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610981565b610cf481612f72565b610d818282612c26565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546000906001600160a01b03163303613586575060331936013560601c90565b503390565b604080518082019091526000808252602082015260405180604001604052808381526020018486602001516135c09190614e1e565b9052949350505050565b600081516000036135dd57506000919050565b60208201805160f81c603081108015906135fb575060398160ff1611155b15801561361d575060618160ff161015801561361b5750607a8160ff1611155b155b1561362c575060009392505050565b8351600181111561369a5761364e836136466001846149ca565b015160f81c90565b915060308260ff1610158015613668575060398260ff1611155b15801561368a575060618260ff16101580156136885750607a8260ff1611155b155b1561369a57506000949350505050565b60015b6136a86001836149ca565b811015613722578381015160f81c9250602d83148015906136de575060308360ff16101580156136dc575060398360ff1611155b155b80156136ff575060618360ff16101580156136fd5750607a8360ff1611155b155b156137105750600095945050505050565b8061371a81614a39565b91505061369d565b50600195945050505050565b6137378161170e565b156137845760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a20544f4b454e5f424c4f434b45440000006044820152606401610981565b610cf48161386f565b6000806137a46000846001865161101691906149ca565b60ca549091506001600160a01b0316158015906137e05750807f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f145b9392505050565b6137f1828261156e565b610d8157613809816001600160a01b031660146138f3565b6138148360206138f3565b604051602001613825929190614e31565b60408051601f198184030181529082905262461bcd60e51b82526109819160040161437c565b600080600061385a8585613a8e565b9150915061386781613ad3565b509392505050565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd6960208201529081018290526001906138ae90606001611749565b805460ff19169115159190911790556040518181527f2ce5d9351b1d590d5a066db0d2dc7602d55f092506a83a7ee8c4d78ee357d75a9060200160405180910390a150565b60606000613902836002614ea6565b61390d906002614e1e565b6001600160401b0381111561392457613924614133565b6040519080825280601f01601f19166020018201604052801561394e576020820181803683370190505b509050600360fc1b81600081518110613969576139696149dd565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110613998576139986149dd565b60200101906001600160f81b031916908160001a90535060006139bc846002614ea6565b6139c7906001614e1e565b90505b6001811115613a3f576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106139fb576139fb6149dd565b1a60f81b828281518110613a1157613a116149dd565b60200101906001600160f81b031916908160001a90535060049490941c93613a3881614c7a565b90506139ca565b5083156137e05760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610981565b6000808251604103613ac45760208301516040840151606085015160001a613ab887828585613c89565b94509450505050613acc565b506000905060025b9250929050565b6000816004811115613ae757613ae7614ebd565b03613aef5750565b6001816004811115613b0357613b03614ebd565b03613b505760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152606401610981565b6002816004811115613b6457613b64614ebd565b03613bb15760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610981565b6003816004811115613bc557613bc5614ebd565b03613c1d5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b6064820152608401610981565b6004816004811115613c3157613c31614ebd565b03610cf45760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c604482015261756560f01b6064820152608401610981565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613cc05750600090506003613d6d565b8460ff16601b14158015613cd857508460ff16601c14155b15613ce95750600090506004613d6d565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613d3d573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613d6657600060019250925050613d6d565b9150600090505b94509492505050565b508054613d8290614b04565b6000825580601f10613d92575050565b601f016020900490600052602060002090810190610cf491905b80821115613dc05760008155600101613dac565b5090565b600060208284031215613dd657600080fd5b81356001600160e01b0319811681146137e057600080fd5b6001600160401b0381168114610cf457600080fd5b8035613e0e81613dee565b919050565b60008060408385031215613e2657600080fd5b8235613e3181613dee565b946020939093013593505050565b600060208284031215613e5157600080fd5b5035919050565b60008083601f840112613e6a57600080fd5b5081356001600160401b03811115613e8157600080fd5b602083019150836020828501011115613acc57600080fd5b600080600060408486031215613eae57600080fd5b8335925060208401356001600160401b03811115613ecb57600080fd5b613ed786828701613e58565b9497909650939450505050565b6001600160a01b0381168114610cf457600080fd5b8035613e0e81613ee4565b60008060408385031215613f1757600080fd5b823591506020830135613f2981613ee4565b809150509250929050565b600060208284031215613f4657600080fd5b81356137e081613ee4565b60008083601f840112613f6357600080fd5b5081356001600160401b03811115613f7a57600080fd5b6020830191508360208260051b8501011115613acc57600080fd5b8015158114610cf457600080fd5b60008060008060008060008060a0898b031215613fbf57600080fd5b8835613fca81613ee4565b975060208901356001600160401b0380821115613fe657600080fd5b613ff28c838d01613f51565b909950975060408b013591508082111561400b57600080fd5b6140178c838d01613f51565b909750955060608b013591508082111561403057600080fd5b5061403d8b828c01613f51565b909450925050608089013561405181613f95565b809150509295985092959890939650565b600080600080600080600080600060c08a8c03121561408057600080fd5b893561408b81613ee4565b985060208a01356001600160401b03808211156140a757600080fd5b6140b38d838e01613f51565b909a50985060408c01359150808211156140cc57600080fd5b6140d88d838e01613f51565b909850965060608c01359150808211156140f157600080fd5b506140fe8c828d01613f51565b90955093505060808a013561411281613dee565b915060a08a013561412281613f95565b809150509295985092959850929598565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561417157614171614133565b604052919050565b60006001600160401b0382111561419257614192614133565b5060051b60200190565b600060208083850312156141af57600080fd5b82356001600160401b038111156141c557600080fd5b8301601f810185136141d657600080fd5b80356141e96141e482614179565b614149565b81815260059190911b8201830190838101908783111561420857600080fd5b928401925b8284101561422f57833561422081613ee4565b8252928401929084019061420d565b979650505050505050565b6000806000806060858703121561425057600080fd5b843561425b81613ee4565b93506020850135925060408501356001600160401b0381111561427d57600080fd5b61428987828801613e58565b95989497509550505050565b600080602083850312156142a857600080fd5b82356001600160401b038111156142be57600080fd5b6142ca85828601613e58565b90969095509350505050565b6000806000604084860312156142eb57600080fd5b83356001600160401b0381111561430157600080fd5b61430d86828701613e58565b909450925050602084013561432181613f95565b809150509250925092565b60005b8381101561434757818101518382015260200161432f565b50506000910152565b6000815180845261436881602086016020860161432c565b601f01601f19169290920160200192915050565b6020815260006137e06020830184614350565b60008060008060008060c087890312156143a857600080fd5b86356143b381613ee4565b955060208701356143c381613ee4565b945060408701356143d381613ee4565b935060608701356143e381613ee4565b925060808701356143f381613ee4565b915060a087013561440381613ee4565b809150509295509295509295565b60008060008060008060008060a0898b03121561442d57600080fd5b883561443881613ee4565b97506020890135965060408901356001600160401b038082111561445b57600080fd5b6144678c838d01613e58565b909850965060608b013591508082111561448057600080fd5b61448c8c838d01613f51565b909650945060808b01359150808211156144a557600080fd5b506144b28b828c01613f51565b999c989b5096995094979396929594505050565b600080602083850312156144d957600080fd5b82356001600160401b038111156144ef57600080fd5b6142ca85828601613f51565b600080600080600080600080600080600060e08c8e03121561451c57600080fd5b6145258c613ef9565b9a506001600160401b038060208e0135111561454057600080fd5b6145508e60208f01358f01613f51565b909b50995060408d013581101561456657600080fd5b6145768e60408f01358f01613f51565b909950975060608d013581101561458c57600080fd5b61459c8e60608f01358f01613f51565b90975095506145ad60808e01613e03565b945060a08d013593508060c08e013511156145c757600080fd5b506145d88d60c08e01358e01613e58565b81935080925050509295989b509295989b9093969950565b6000806000806000806000806000806000806101008d8f03121561461357600080fd5b61461c8d613ef9565b9b506001600160401b0360208e0135111561463657600080fd5b6146468e60208f01358f01613f51565b909b5099506001600160401b0360408e0135111561466357600080fd5b6146738e60408f01358f01613f51565b90995097506001600160401b0360608e0135111561469057600080fd5b6146a08e60608f01358f01613f51565b90975095506146b160808e01613e03565b94506146bf60a08e01613ef9565b935060c08d013592506001600160401b0360e08e013511156146e057600080fd5b6146f08e60e08f01358f01613e58565b81935080925050509295989b509295989b509295989b565b6000806040838503121561471b57600080fd5b823561472681613ee4565b91506020830135613f2981613ee4565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b60006020828403121561477d57600080fd5b81516137e081613dee565b60208082526023908201527f4d696e74696e674d616e616765723a20544f4b454e5f4e4f545f455850495241604082015262424c4560e81b606082015260800190565b60208082526010908201526f14185d5cd8589b194e8814105554d15160821b604082015260600190565b60006148036141e484614179565b80848252602080830192508560051b85013681111561482157600080fd5b855b818110156148b35780356001600160401b03808211156148435760008081fd5b90880190601f36818401126148585760008081fd5b82358281111561486a5761486a614133565b61487b818301601f19168801614149565b9250808352368782860101111561489457600091508182fd5b8087850188850137600090830187015250865250938201938201614823565b50919695505050505050565b60208082526024908201527f4d696e74696e674d616e616765723a2043414c4c45525f49535f4e4f545f4d49604082015263272a22a960e11b606082015260800190565b60006020828403121561491557600080fd5b81516137e081613f95565b6020808252602f908201527f4d696e74696e674d616e616765723a2053454e4445525f49535f4e4f545f415060408201526e282927ab22a22fa7a92fa7aba722a960891b606082015260800190565b60208082526025908201527f4d696e74696e674d616e616765723a204c4142454c535f4c454e4754485f42456040820152642627abaf9960d91b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b81810381811115610954576109546149b4565b634e487b7160e01b600052603260045260246000fd5b60208082526026908201527f4d696e74696e674d616e616765723a20535542444f4d41494e535f4e4f545f41604082015265131313d5d15160d21b606082015260800190565b600060018201614a4b57614a4b6149b4565b5060010190565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b60208082526022908201527f4d696e74696e674d616e616765723a20544c445f4e4f545f5245474953544552604082015261115160f21b606082015260800190565b600060208284031215614ad557600080fd5b5051919050565b6b756e732d646576746573742d60a01b81528183600c83013760009101600c01908152919050565b600181811c90821680614b1857607f821691505b602082108103614b3857634e487b7160e01b600052602260045260246000fd5b50919050565b600060208284031215614b5057600080fd5b81516137e081613ee4565b600081518084526020808501808196508360051b8101915082860160005b85811015614ba3578284038952614b91848351614350565b98850198935090840190600101614b79565b5091979650505050505050565b6001600160a01b038616815260a060208201819052600090614bd490830187614b5b565b8281036040840152614be68187614b5b565b90508281036060840152614bfa8186614b5b565b91505082151560808301529695505050505050565b600060018060a01b03808616835260606020840152614c316060840186614350565b9150808416604084015250949350505050565b606081526000614c576060830186614b5b565b8281036020840152614c698186614b5b565b915050826040830152949350505050565b600081614c8957614c896149b4565b506000190190565b60008251614ca381846020870161432c565b9190910192915050565b601f821115610cde57600081815260208120601f850160051c81016020861015614cd45750805b601f850160051c820191505b818110156116a357828155600101614ce0565b81516001600160401b03811115614d0c57614d0c614133565b614d2081614d1a8454614b04565b84614cad565b602080601f831160018114614d555760008415614d3d5750858301515b600019600386901b1c1916600185901b1785556116a3565b600085815260208120601f198616915b82811015614d8457888601518255948401946001909101908401614d65565b5085821015614da25787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b828152604060208201526000614dcb6040830184614350565b949350505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b80820180821115610954576109546149b4565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351614e6981601785016020880161432c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351614e9a81602884016020880161432c565b01602801949350505050565b8082028115828204841417610954576109546149b4565b634e487b7160e01b600052602160045260246000fdfe5496787fc1ebdfeba375028c1865f13fbb1d63c0caa356ccc1b29a80f3ebd6229f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000811000a","storage":{}},"0x24f45688d421f46cca60734bdc648ad192db0f2e":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0x1","0x97":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x12d":"0x0","0x15f":"0x5cc819c9915eadfcebd76952b8c1bc36cadd7376","0x13cf90498be59d359caa5b6092b365feab4610605d7107d1f05f8e94ac955652":"0x1","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x54563a9e1cd2dcbd0bca90d3cfa4a647e02c404a","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106102295760003560e01c8063886a69ba11610123578063cf1d21c0116100ab578063e2c49de11161006f578063e2c49de11461091d578063e3dec8fb14610932578063e43009a6146109c8578063e66f9603146109fb578063ea60c7c414610a2557610240565b8063cf1d21c014610844578063d233a3c714610859578063d547741f1461089c578063d81c8e52146108d5578063dc993a23146108ea57610240565b8063a217fddf116100f2578063a217fddf1461078a578063b4b4f63e1461079f578063bc08452b146107b4578063c4d66de8146107e7578063ca15c8731461081a57610240565b8063886a69ba146106c95780639010d07c146106de5780639173b1391461070e57806391d148541461075157610240565b80633138b6f1116101b1578063568b80b511610175578063568b80b5146105fb578063607f2d4214610610578063630fcbfb1461064e5780636cb136b0146106635780636e86b7701461069657610240565b80633138b6f1146104f55780633408e4701461050a57806336568abe1461051f5780633805550f146105585780634faa8a26146105d557610240565b80630f7e5970116101f85780630f7e59701461042357806320379ee514610438578063248a9ca31461045f5780632d0335ab146104895780632f2ff15d146104bc57610240565b806304967702146102455780630c3894bb146102765780630c53c51c146102b15780630c598220146103ea57610240565b366102405761023e610239610a58565b610a68565b005b600080fd5b34801561025157600080fd5b5061025a610b69565b604080516001600160a01b039092168252519081900360200190f35b34801561028257600080fd5b5061023e6004803603604081101561029957600080fd5b506001600160a01b0381358116916020013516610b78565b610375600480360360a08110156102c757600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156102f257600080fd5b82018360208201111561030457600080fd5b8035906020019184600183028401116401000000008311171561032657600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550508235935050506020810135906040013560ff16610cc9565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103af578181015183820152602001610397565b50505050905090810190601f1680156103dc5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156103f657600080fd5b5061023e6004803603604081101561040d57600080fd5b50803590602001356001600160a01b0316610fcc565b34801561042f57600080fd5b506103756110b9565b34801561044457600080fd5b5061044d6110d6565b60408051918252519081900360200190f35b34801561046b57600080fd5b5061044d6004803603602081101561048257600080fd5b50356110dc565b34801561049557600080fd5b5061044d600480360360208110156104ac57600080fd5b50356001600160a01b03166110f4565b3480156104c857600080fd5b5061023e600480360360408110156104df57600080fd5b50803590602001356001600160a01b031661110f565b34801561050157600080fd5b5061025a611176565b34801561051657600080fd5b5061044d611185565b34801561052b57600080fd5b5061023e6004803603604081101561054257600080fd5b50803590602001356001600160a01b0316611189565b34801561056457600080fd5b5061023e6004803603602081101561057b57600080fd5b81019060208101813564010000000081111561059657600080fd5b8201836020820111156105a857600080fd5b803590602001918460018302840111640100000000831117156105ca57600080fd5b5090925090506111ea565b61023e600480360360208110156105eb57600080fd5b50356001600160a01b03166116ec565b34801561060757600080fd5b5061044d6116f8565b34801561061c57600080fd5b5061063a6004803603602081101561063357600080fd5b503561171b565b604080519115158252519081900360200190f35b34801561065a57600080fd5b5061023e611730565b34801561066f57600080fd5b5061023e6004803603602081101561068657600080fd5b50356001600160a01b03166117d6565b3480156106a257600080fd5b5061025a600480360360208110156106b957600080fd5b50356001600160a01b031661186e565b3480156106d557600080fd5b5061044d611889565b3480156106ea57600080fd5b5061025a6004803603604081101561070157600080fd5b50803590602001356118aa565b34801561071a57600080fd5b5061023e6004803603606081101561073157600080fd5b506001600160a01b038135811691602081013590911690604001356118d1565b34801561075d57600080fd5b5061063a6004803603604081101561077457600080fd5b50803590602001356001600160a01b0316611a06565b34801561079657600080fd5b5061044d611a24565b3480156107ab57600080fd5b5061023e611a29565b3480156107c057600080fd5b5061023e600480360360208110156107d757600080fd5b50356001600160a01b0316611acf565b3480156107f357600080fd5b5061023e6004803603602081101561080a57600080fd5b50356001600160a01b0316611b67565b34801561082657600080fd5b5061044d6004803603602081101561083d57600080fd5b5035611c57565b34801561085057600080fd5b5061025a611c6e565b34801561086557600080fd5b5061023e6004803603606081101561087c57600080fd5b506001600160a01b03813581169160208101359091169060400135611c86565b3480156108a857600080fd5b5061023e600480360360408110156108bf57600080fd5b50803590602001356001600160a01b0316611de8565b3480156108e157600080fd5b5061044d611e41565b3480156108f657600080fd5b5061023e6004803603602081101561090d57600080fd5b50356001600160a01b0316611e60565b34801561092957600080fd5b5061025a611f3d565b34801561093e57600080fd5b5061023e6004803603606081101561095557600080fd5b6001600160a01b03823581169260208101359091169181019060608101604082013564010000000081111561098957600080fd5b82018360208201111561099b57600080fd5b803590602001918460018302840111640100000000831117156109bd57600080fd5b509092509050611f4c565b3480156109d457600080fd5b5061044d600480360360208110156109eb57600080fd5b50356001600160a01b0316611fe9565b348015610a0757600080fd5b5061025a60048036036020811015610a1e57600080fd5b5035611ffb565b348015610a3157600080fd5b5061025a60048036036020811015610a4857600080fd5b50356001600160a01b0316612016565b6000610a62612031565b90505b90565b604080513460208083019190915282518083039091018152908201909152610aa58273eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee8361208e565b7fa1829a9003092132f585b6ccdd167c19fe9774dbdea4260287e8a8e8ca8185d7546000908152600260205260408082205490516001600160a01b039091169034908381818185875af1925050503d8060008114610b1f576040519150601f19603f3d011682016040523d82523d6000602084013e610b24565b606091505b5050905080610b645760405162461bcd60e51b815260040180806020018281038252602781526020018061419d6027913960400191505060405180910390fd5b505050565b6009546001600160a01b031681565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020610ba981610ba4610a58565b611a06565b600a90610c495760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b820191906000526020600020905b815481529060010190602001808311610c1d57829003601f168201915b50509250505060405180910390fd5b506001600160a01b03808416600081815260036020908152604080832080546001600160a01b0319908116909155948716808452600483528184208054909616909555838352600590915280822082905551909291907f9e651a8866fbea043e911d816ec254b0e3c992c06fff32d605e72362d6023bd9908490a4505050565b6060610cd3613e2a565b50604080516060810182526001600160a01b0388166000818152600c602090815290849020548352820152908101869052610d118782878787612508565b610d4c5760405162461bcd60e51b81526004018080602001828103825260218152602001806141c46021913960400191505060405180910390fd5b6001600160a01b0387166000908152600c6020526040902054610d7690600163ffffffff6125e516565b6001600160a01b0388166000818152600c602090815260408083209490945583519283523383820181905260609484018581528b51958501959095528a517f5845892132946850460bff5a0083f71031bc5bf9aadcd40f1de79423eac9b10b958d9592948d94919260808501928601918190849084905b83811015610e05578181015183820152602001610ded565b50505050905090810190601f168015610e325780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a160006060306001600160a01b0316888a6040516020018083805190602001908083835b60208310610e835780518252601f199092019160209182019101610e64565b6001836020036101000a038019825116818451168082178552505050505050905001826001600160a01b03166001600160a01b031660601b8152601401925050506040516020818303038152906040526040518082805190602001908083835b60208310610f025780518252601f199092019160209182019101610ee3565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610f64576040519150601f19603f3d011682016040523d82523d6000602084013e610f69565b606091505b509150915081610fc0576040805162461bcd60e51b815260206004820152601c60248201527f46756e6374696f6e2063616c6c206e6f74207375636365737366756c00000000604482015290519081900360640190fd5b98975050505050505050565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020610ff881610ba4610a58565b600a9061105e5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5060008381526002602052604080822080546001600160a01b0319166001600160a01b0386169081179091559051909185917f8643692ae1c12ec91fa18e50b82ed93fa314f580999a236824db6de9ae0d839b9190a3505050565b604051806040016040528060018152602001603160f81b81525081565b600b5490565b6000818152600160205260409020600201545b919050565b6001600160a01b03166000908152600c602052604090205490565b60008281526001602052604090206002015461112d90610ba4610a58565b6111685760405162461bcd60e51b815260040180806020018281038252602f815260200180613f78602f913960400191505060405180910390fd5b611172828261263f565b5050565b6008546001600160a01b031690565b4690565b611191610a58565b6001600160a01b0316816001600160a01b0316146111e05760405162461bcd60e51b815260040180806020018281038252602f815260200180614286602f913960400191505060405180910390fd5b61117282826126ae565b606061123361122e84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061271d92505050565b612798565b905060006112548260028151811061124757fe5b602002602001015161291a565b6112796112748460088151811061126757fe5b6020026020010151612a62565b612b2c565b6112898460098151811061124757fe5b6040516020018084815260200183805190602001908083835b602083106112c15780518252601f1990920191602091820191016112a2565b51815160209384036101000a6000190180199092169116179052920193845250604080518085038152938201815283519382019390932060008181526006909252929020549194505060ff1615915061134d90505760405162461bcd60e51b81526004018080602001828103825260288152602001806142096028913960400191505060405180910390fd5b6000818152600660208190526040909120805460ff19166001179055825160609161138a9161122e9161138591879190811061126757fe5b61271d565b9050611394613e54565b6113b1826003815181106113a457fe5b6020026020010151612798565b6113c18560098151811061124757fe5b815181106113cb57fe5b6020026020010151905060006113fc6113e383612798565b6000815181106113ef57fe5b6020026020010151612c9f565b6001600160a01b0380821660009081526004602052604090205491925016806114565760405162461bcd60e51b81526004018080602001828103825260228152602001806140af6022913960400191505060405180910390fd5b6001600160a01b03808216600090815260056020908152604080832054835260029091529020548751911690611493908890600890811061124757fe5b63ffffffff1916156114d65760405162461bcd60e51b815260040180806020018281038252602581526020018061408a6025913960400191505060405180910390fd5b61151e6114e98860068151811061126757fe5b6114f98960088151811061126757fe5b6115098a60078151811061126757fe5b6115198b60058151811061124757fe5b612d2f565b61156f576040805162461bcd60e51b815260206004820152601f60248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f50524f4f4600604482015290519081900360640190fd5b6115dd6115828860028151811061124757fe5b6115928960038151811061124757fe5b6115a28a60048151811061124757fe5b60001b6115b58b60058151811061124757fe5b60001b6115c88c60008151811061124757fe5b6115d88d60018151811061126757fe5b612f76565b50806001600160a01b0316638274664f6115f5610a58565b846115ff886130bf565b6040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561167b578181015183820152602001611663565b50505050905090810190601f1680156116a85780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b1580156116c957600080fd5b505af11580156116dd573d6000803e3d6000fd5b50505050505050505050505050565b6116f581610a68565b50565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b01902081565b60066020526000908152604090205460ff1681565b600061173e81610ba4610a58565b600a906117a45760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506116f56040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b81525061312d565b60006117e481610ba4610a58565b600a9061184a5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5050600780546001600160a01b0319166001600160a01b0392909216919091179055565b6004602052600090815260409020546001600160a01b031681565b604080516826a0a82faa27a5a2a760b91b8152905190819003600901902081565b60008281526001602052604081206118c8908363ffffffff6131e916565b90505b92915050565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b0190206118fd81610ba4610a58565b600a906119635760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b03848116600090815260036020526040902054161580156119a457506001600160a01b0383811660009081526004602052604090205416155b6119f5576040805162461bcd60e51b815260206004820181905260248201527f526f6f74436861696e4d616e616765723a20414c52454144595f4d4150504544604482015290519081900360640190fd5b611a008484846131f5565b50505050565b60008281526001602052604081206118c8908363ffffffff61348416565b600081565b6000611a3781610ba4610a58565b600a90611a9d5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506116f56040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613499565b6000611add81610ba4610a58565b600a90611b435760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5050600880546001600160a01b0319166001600160a01b0392909216919091179055565b60005460ff1615611bb0576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b611be16040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613537565b611c126040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613499565b611c1d600082611168565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020611c479082611168565b506000805460ff19166001179055565b60008181526001602052604081206118cb90613589565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020611cb281610ba4610a58565b600a90611d185760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b0380851660009081526003602081815260408084205488861685526004835281852054861680865293909252909220549183169290911615611d8e576001600160a01b038116600090815260036020908152604080832080546001600160a01b031916905560059091528120555b6001600160a01b038281166000908152600460205260409020541615611dd5576001600160a01b038216600090815260046020526040902080546001600160a01b03191690555b611de08686866131f5565b505050505050565b600082815260016020526040902060020154611e0690610ba4610a58565b6111e05760405162461bcd60e51b81526004018080602001828103825260308152602001806140f96030913960400191505060405180910390fd5b604080516611115413d4d25560ca1b8152905190819003600701902081565b6000611e6e81610ba4610a58565b600a90611ed45760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b038216611f1a5760405162461bcd60e51b815260040180806020018281038252602d815260200180613fa7602d913960400191505060405180910390fd5b50600980546001600160a01b0319166001600160a01b0392909216919091179055565b6007546001600160a01b031690565b6001600160a01b03831673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee1415611fa85760405162461bcd60e51b81526004018080602001828103825260248152602001806141e56024913960400191505060405180910390fd5b611a00848484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061208e92505050565b60056020526000908152604090205481565b6002602052600090815260409020546001600160a01b031681565b6003602052600090815260409020546001600160a01b031681565b6000333014156120895760606000368080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505050503601516001600160a01b03169150610a659050565b503390565b6001600160a01b03808316600090815260056020908152604080832054600390925290912054909116158015906120c457508015155b6120ff5760405162461bcd60e51b81526004018080602001828103825260228152602001806140af6022913960400191505060405180910390fd5b6000818152600260205260409020546001600160a01b0316806121535760405162461bcd60e51b81526004018080602001828103825260248152602001806140176024913960400191505060405180910390fd5b6001600160a01b0385166121ae576040805162461bcd60e51b815260206004820152601e60248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f555345520000604482015290519081900360640190fd5b806001600160a01b031663e375b64e6121c5610a58565b8787876040518563ffffffff1660e01b815260040180856001600160a01b03166001600160a01b03168152602001846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561225c578181015183820152602001612244565b50505050905090810190601f1680156122895780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b1580156122ab57600080fd5b505af11580156122bf573d6000803e3d6000fd5b50505050606085858560405160200180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015612338578181015183820152602001612320565b50505050905090810190601f1680156123655780820380516001836020036101000a031916815260200191505b5060408051808303601f19018152828252600780546009546611115413d4d25560ca1b865284519586900390920185206020808701828152878701968752855160608901528551959d506001600160a01b039384169c506316f198319b5092909316985096508a955093608001919085019080838360005b838110156123f55781810151838201526020016123dd565b50505050905090810190601f1680156124225780820380516001836020036101000a031916815260200191505b5093505050506040516020818303038152906040526040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561249b578181015183820152602001612483565b50505050905090810190601f1680156124c85780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b1580156124e857600080fd5b505af11580156124fc573d6000803e3d6000fd5b50505050505050505050565b60006001600160a01b03861661254f5760405162461bcd60e51b81526004018080602001828103825260258152602001806141296025913960400191505060405180910390fd5b600161256261255d87613594565b613620565b83868660405160008152602001604052604051808581526020018460ff1660ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa1580156125bc573d6000803e3d6000fd5b505050602060405103516001600160a01b0316866001600160a01b031614905095945050505050565b6000828201838110156118c8576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600082815260016020526040902061265d908263ffffffff61366c16565b156111725761266a610a58565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b60008281526001602052604090206126cc908263ffffffff61368116565b15611172576126d9610a58565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612725613e54565b600082511161277b576040805162461bcd60e51b815260206004820152601f60248201527f524c505265616465723a20494e56414c49445f42595445535f4c454e47544800604482015290519081900360640190fd5b506040805180820190915281518152602082810190820152919050565b60606127a382613696565b6127f4576040805162461bcd60e51b815260206004820152601860248201527f524c505265616465723a204954454d5f4e4f545f4c4953540000000000000000604482015290519081900360640190fd5b60006127ff836136c2565b905060608167ffffffffffffffff8111801561281a57600080fd5b5060405190808252806020026020018201604052801561285457816020015b612841613e54565b8152602001906001900390816128395790505b5090506000612866856020015161374e565b855190915081146128a85760405162461bcd60e51b81526004018080602001828103825260278152602001806142316027913960400191505060405180910390fd5b60006128b786602001516137e2565b60208701510190506000805b8581101561290e576128d48361374e565b91506040518060400160405280838152602001848152508582815181106128f757fe5b6020908102919091010152918101916001016128c3565b50929695505050505050565b600061292582613696565b15612977576040805162461bcd60e51b815260206004820181905260248201527f524c505265616465723a204445434f44494e475f4c4953545f41535f55494e54604482015290519081900360640190fd5b8151602110156129ce576040805162461bcd60e51b815260206004820152601e60248201527f524c505265616465723a20494e56414c49445f55494e545f4c454e4754480000604482015290519081900360640190fd5b60006129dd836020015161374e565b83519091508114612a1f5760405162461bcd60e51b81526004018080602001828103825260278152602001806142b56027913960400191505060405180910390fd5b6000612a2e84602001516137e2565b84516020808701518301805193945091849003929190831015612a5857826020036101000a820491505b5095945050505050565b60606000612a73836020015161374e565b83519091508114612ab55760405162461bcd60e51b81526004018080602001828103825260288152602001806140d16028913960400191505060405180910390fd5b6000612ac484602001516137e2565b845190915081900360608167ffffffffffffffff81118015612ae557600080fd5b506040519080825280601f01601f191660200182016040528015612b10576020820181803683370190505b5090506000816020019050612a58848860200151018285613845565b604080516020810190915260008152815160609190156118cb57600080612b54600086613890565b60f81c90506001811480612b6b57508060ff166003145b15612bfa57600185516002020367ffffffffffffffff81118015612b8e57600080fd5b506040519080825280601f01601f191660200182016040528015612bb9576020820181803683370190505b5092506000612bc9600187613890565b90508084600081518110612bd957fe5b60200101906001600160f81b031916908160001a9053506001925050612c4b565b600285516002020367ffffffffffffffff81118015612c1857600080fd5b506040519080825280601f01601f191660200182016040528015612c43576020820181803683370190505b509250600091505b60ff82165b8351811015612c9657612c6b8360ff16820360020187613890565b848281518110612c7757fe5b60200101906001600160f81b031916908160001a905350600101612c50565b50505092915050565b6000612caa82613696565b15612ce65760405162461bcd60e51b815260040180806020018281038252602381526020018061417a6023913960400191505060405180910390fd5b8151601514612d265760405162461bcd60e51b81526004018080602001828103825260218152602001806142dc6021913960400191505060405180910390fd5b6118cb8261291a565b6000612d39613e54565b612d428461271d565b90506060612d4f82612798565b905060608085600082612d618b612b2c565b9050805160001415612d7d576000975050505050505050612f6e565b60005b8651811015612f65578151831115612da357600098505050505050505050612f6e565b612dbf878281518110612db257fe5b60200260200101516130bf565b955085805190602001208414612de057600098505050505050505050612f6e565b612def8782815181106113a457fe5b9450845160111415612eac578151831415612e4b578c80519060200120612e1c8660108151811061126757fe5b805190602001201415612e3a57600198505050505050505050612f6e565b600098505050505050505050612f6e565b6000828481518110612e5957fe5b016020015160f81c90506010811115612e7e5760009950505050505050505050612f6e565b612e9d868260ff1681518110612e9057fe5b60200260200101516138ed565b94505060019290920191612f5d565b845160021415612e3a576000612ed2612ecb8760008151811061126757fe5b848661398c565b905082518185011415612f28578d80519060200120612ef78760018151811061126757fe5b805190602001201415612f165760019950505050505050505050612f6e565b60009950505050505050505050612f6e565b80612f3f5760009950505050505050505050612f6e565b8084019350612f5486600181518110612e9057fe5b9450612f5d9050565b600101612d80565b50505050505050505b949350505050565b600854604080516320a9cea560e11b81526004810185905290516000928392839283926001600160a01b0316916341539d4a9160248083019260a0929190829003018186803b158015612fc857600080fd5b505afa158015612fdc573d6000803e3d6000fd5b505050506040513d60a0811015612ff257600080fd5b5080516020820151606090920151909450909250905061306161301b8b8463ffffffff613a6b16565b6040805160208082018f90528183018e9052606082018d905260808083018d90528351808403909101815260a0909201909252805191012090858863ffffffff613aad16565b6130b2576040805162461bcd60e51b815260206004820181905260248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f484541444552604482015290519081900360640190fd5b9998505050505050505050565b606080826000015167ffffffffffffffff811180156130dd57600080fd5b506040519080825280601f01601f191660200182016040528015613108576020820181803683370190505b50905060008160200190506131268460200151828660000151613845565b5092915050565b6040518060800160405280604f815260200161403b604f913980516020918201208251838301206040805180820190915260018152603160f81b930192909252907fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc630613198611185565b604080516020808201979097528082019590955260608501939093526001600160a01b03909116608084015260a0808401919091528151808403909101815260c090920190528051910120600b5550565b60006118c88383613c03565b6000818152600260205260409020546001600160a01b03166132485760405162461bcd60e51b815260040180806020018281038252602a815260200180613f07602a913960400191505060405180910390fd5b6001600160a01b03808416600081815260036020908152604080832080549588166001600160a01b031996871681179091558084526004835281842080549096168517909555838352600590915280822085905551849392917f9e651a8866fbea043e911d816ec254b0e3c992c06fff32d605e72362d6023bd991a4604080516001600160a01b0380861660208084019190915281861683850152606083810186905284518085038201815260808086018088526007546009546826a0a82faa27a5a2a760b91b9092528851978890036089018820888701818152898b019a8b528551968a019690965284519499918816986316f1983198939093169690958a9590949293909201919085019080838360005b8381101561337357818101518382015260200161335b565b50505050905090810190601f1680156133a05780820380516001836020036101000a031916815260200191505b5093505050506040516020818303038152906040526040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015613419578181015183820152602001613401565b50505050905090810190601f1680156134465780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b15801561346657600080fd5b505af115801561347a573d6000803e3d6000fd5b5050505050505050565b60006118c8836001600160a01b038416613c67565b806040516020018082805190602001908083835b602083106134cc5780518252601f1990920191602091820191016134ad565b51815160209384036101000a60001901801990921691161790527f3a20494e53554646494349454e545f5045524d495353494f4e530000000000009190930190815260408051808303600519018152601a909201905280516111729550600a94509201919050613e6e565b60005460ff1615613580576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b611c478161312d565b60006118cb82613c7f565b6000604051806080016040528060438152602001613fd460439139805190602001208260000151836020015184604001518051906020012060405160200180858152602001848152602001836001600160a01b03166001600160a01b03168152602001828152602001945050505050604051602081830303815290604052805190602001209050919050565b600061362a6110d6565b82604051602001808061190160f01b81525060020183815260200182815260200192505050604051602081830303815290604052805190602001209050919050565b60006118c8836001600160a01b038416613c83565b60006118c8836001600160a01b038416613ccd565b6020810151805160009190821a9060c08210156136b8576000925050506110ef565b5060019392505050565b6000806000905060006136d884602001516137e2565b602085015185519181019250015b80821015613745576136f78261374e565b820191508082111561373a5760405162461bcd60e51b815260040180806020018281038252602c81526020018061414e602c913960400191505060405180910390fd5b6001909201916136e6565b50909392505050565b80516000908190811a60808110156137695760019150613126565b60b881101561377e57607e1981019150613126565b60c08110156137ab5760b78103600185019450806020036101000a85510460018201810193505050613126565b60f88110156137c05760be1981019150613126565b60019390930151602084900360f7016101000a900490920160f5190192915050565b8051600090811a60808110156137fc5760009150506110ef565b60b8811080613817575060c08110801590613817575060f881105b156138265760019150506110ef565b60c081101561383a5760b5190190506110ef565b60f5190190506110ef565b8061384f57610b64565b5b6020811061386f578251825260209283019290910190601f1901613850565b915181516020939093036101000a6000190180199091169216919091179052565b600060028306156138c15760108260028504815181106138ac57fe5b016020015160f81c816138bb57fe5b066138e3565b60108260028504815181106138d257fe5b016020015160f81c816138e157fe5b045b60f81b9392505050565b6000806138fd836020015161374e565b8351909150811461393f5760405162461bcd60e51b815260040180806020018281038252602e815260200180614258602e913960400191505060405180910390fd5b825160211461397f5760405162461bcd60e51b8152600401808060200182810382526025815260200180613f536025913960400191505060405180910390fd5b5050602001516001015190565b600080606061399a86612b2c565b90506060815167ffffffffffffffff811180156139b657600080fd5b506040519080825280601f01601f1916602001820160405280156139e1576020820181803683370190505b509050845b82518601811015613a3b5760008782815181106139ff57fe5b602001015160f81c60f81b9050808388840381518110613a1b57fe5b60200101906001600160f81b031916908160001a905350506001016139e6565b50808051906020012082805190602001201415613a5b5781519250613a60565b600092505b509095945050505050565b60006118c883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250613d93565b60006020825181613aba57fe5b0615613b04576040805162461bcd60e51b8152602060048201526014602482015273092dcecc2d8d2c840e0e4dedecc40d8cadccee8d60631b604482015290519081900360640190fd5b60006020835181613b1157fe5b0490508060020a8510613b63576040805162461bcd60e51b81526020600482015260156024820152744c65616620696e64657820697320746f6f2062696760581b604482015290519081900360640190fd5b60008660205b85518111613bf55785810151925060028806613bb55781836040516020018083815260200182815260200192505050604051602081830303815290604052805190602001209150613be7565b828260405160200180838152602001828152602001925050506040516020818303038152906040528051906020012091505b600288049750602001613b69565b509094149695505050505050565b81546000908210613c455760405162461bcd60e51b8152600401808060200182810382526022815260200180613f316022913960400191505060405180910390fd5b826000018281548110613c5457fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000613c8f8383613c67565b613cc5575081546001818101845560008481526020808220909301849055845484825282860190935260409020919091556118cb565b5060006118cb565b60008181526001830160205260408120548015613d895783546000198083019190810190600090879083908110613d0057fe5b9060005260206000200154905080876000018481548110613d1d57fe5b600091825260208083209091019290925582815260018981019092526040902090840190558654879080613d4d57fe5b600190038181906000526020600020016000905590558660010160008781526020019081526020016000206000905560019450505050506118cb565b60009150506118cb565b60008184841115613e225760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015613de7578181015183820152602001613dcf565b50505050905090810190601f168015613e145780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60405180606001604052806000815260200160006001600160a01b03168152602001606081525090565b604051806040016040528060008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10613eaf57805160ff1916838001178555613edc565b82800160010185558215613edc579182015b82811115613edc578251825591602001919060010190613ec1565b50613ee8929150613eec565b5090565b610a6591905b80821115613ee85760008155600101613ef256fe526f6f74436861696e4d616e616765723a20544f4b454e5f545950455f4e4f545f535550504f52544544456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473524c505265616465723a20494e56414c49445f55494e545f5354524943545f4c454e475448416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e74526f6f74436861696e4d616e616765723a20494e56414c49445f4348494c445f434841494e5f414444524553534d6574615472616e73616374696f6e2875696e74323536206e6f6e63652c616464726573732066726f6d2c62797465732066756e6374696f6e5369676e617475726529526f6f74436861696e4d616e616765723a20494e56414c49445f544f4b454e5f54595045454950373132446f6d61696e28737472696e67206e616d652c737472696e672076657273696f6e2c6164647265737320766572696679696e67436f6e74726163742c627974657333322073616c7429526f6f74436861696e4d616e616765723a20494e56414c49445f4252414e43485f4d41534b526f6f74436861696e4d616e616765723a20544f4b454e5f4e4f545f4d4150504544524c505265616465723a2042595445535f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b654e61746976654d6574615472616e73616374696f6e3a20494e56414c49445f5349474e4552524c505265616465723a204e554d5f4954454d535f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a204445434f44494e475f4c4953545f41535f41444452455353526f6f74436861696e4d616e616765723a2045544845525f5452414e534645525f4641494c45445369676e657220616e64207369676e617475726520646f206e6f74206d61746368526f6f74436861696e4d616e616765723a20494e56414c49445f524f4f545f544f4b454e526f6f74436861696e4d616e616765723a20455849545f414c52454144595f50524f434553534544524c505265616465723a204c4953545f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a2055494e545f5354524943545f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66524c505265616465723a2055494e545f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a20494e56414c49445f414444524553535f4c454e475448a164736f6c6343000606000a","storage":{"0x0":"0x1","0x7":"0xe0afc4e9e03e4aa67257df7a2eca77454309789d","0x8":"0xbe5deac45dd1ca4ee18dc2d585d84d3d3cb82b0d","0x9":"0x0","0xa":"0x55","0xb":"0x2603903cfd8895fdde3da4d607d44203e86098073e351022fd12745d3436e93a","0xeb5be412f275a18f6e4d622aee4ff40b21467c926224771b782d4c095d1444b":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x162b27a30e878e20728deaa5c9814fd57ccf962b998b8733ce65749bc61c552f":"0x58a175bebc8ec21a94ea63aa5a28743945940ee6","0x1a93463c7bbb7215968307c7cd357c2009c10df2a511dd62c1189098e4f3249b":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x415fec6a4fd7706b96d3a0a30121284bc5e2b28b978c20486c9f5e20d44fc781":"0x1","0x4dc1f0160d96279adc262db20edcc15527e32cb28eda582becc5ac0bc453be34":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x5fc73aa2ab567caef8745f0709fae506c01972ffb297bd9225bc262d6e87746f":"0x1","0x6ce1cd05966f090b8daa7b2ee7f80930bbb39d19b693045725fbae5fa44fda90":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0xa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb49":"0x1","0xc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a8":"0x526f6f74436861696e4d616e616765723a20494e53554646494349454e545f50","0xc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a9":"0x45524d495353494f4e5300000000000000000000000000000000000000000000","0xd61ba0007bb57e62613f82f528c06ba46d36349cf5be567b12f878ef04849a7d":"0x1","0xf960df71fab73e593428c10f56f55e7ea46985963177def0458b97f1afec9576":"0xcf4e755f204163e9213ba8b1305036e386579ccc70731c25c62a101197811f48"}},"0x287dee389caaa49edc112888f2bcfd927b472e25":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c80634f89059e1461002d575b5f80fd5b61004061003b366004610125565b610054565b604051901515815260200160405180910390f35b5f806100985f85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101029050565b60ff1690505f811180156100f857506100f36100b5826001610191565b85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101029050565b60ff16155b9150505b92915050565b5f828281518110610115576101156101b0565b016020015160f81c905092915050565b5f8060208385031215610136575f80fd5b823567ffffffffffffffff8082111561014d575f80fd5b818501915085601f830112610160575f80fd5b81358181111561016e575f80fd5b86602082850101111561017f575f80fd5b60209290920196919550909350505050565b808201808211156100fc57634e487b7160e01b5f52601160045260245ffd5b634e487b7160e01b5f52603260045260245ffdfea164736f6c6343000818000a","storage":{}},"0x3198fc981626687f4b5bdf0fbeabb0a5e0489c03":{"nonce":1,"balance":"0x8ac7230489e80000","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0x1","0x97":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x13cf90498be59d359caa5b6092b365feab4610605d7107d1f05f8e94ac955652":"0x1","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xc2110388dd54228ae0a834119457ede938bf0b57","0x412386de53449251cbf7ce1f4c6a038bf9c0746e62d331b08ef0c3fa7d0ab672":"0x4fbf7b2f171336958be5d15ff762a5cff5363568","0x60793a5062d506d35cc8f1beda67ee5028c16bfcd9c923d5bfc439c04bd929b1":"0x6ac8f19d1e0f81147cdf2a1e53cb1f4e18417204","0x75df8b43665bf2e4996a686913c4c278ca7aed85444740ca40355b1c9a94b504":"0x1","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xf851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004":"0xc965345edac823d56812cd20a10316233916a605"}},"0x39a27956b78d00a4e00ea8833ff0947410a2933f":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xc9":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0xca":"0x4a3c194eb88966178bfdd81744dddafed611b830","0xcb":"0x4872cc1be60a9db9c880a0a437da7a6af134f08f","0xcc":"0xf8c26340c1eaea6c7ff1760b25005e1306953572","0xce":"0xce4bb7dc1eb9dce75743de6a4b48534fd427ef51","0xc6892776bb3da1e1199a03e0d3131aea089754b59c557b750c478ebc85ccaa":"0x6e66740000000000000000000000000000000000000000000000000000000006","0x6cb37a6d512a1e227e627eddc133023e6d00bfedff31a600abb75aa93e9a4a0":"0x6b7265737573000000000000000000000000000000000000000000000000000c","0x8e966fe8b9b43d48017ba1eb562ced91049de778396aaa438773698b3fa8fb6":"0x0","0x94a32b1c7b189ce7293f7ae444cdcab6800d858454022d15355d5ecc5b32b26":"0x0","0xa4b2d73a9f36ca5eed107f7c3d2ba877fb7537d447256726bcde9bac9e9aaee":"0x0","0xe0e3ab102c26f13da20123aa517b31e99cf65b7b720ba0dd7138012fd23eff2":"0x0","0x1203b5e51c7d5be6da42b83f22878d3583e53123857d27fc3cff3df46fb9126c":"0x0","0x13477730039a04f4290adf0e48e98b233579c040281545e4446ce662ba56a9be":"0x7800000000000000000000000000000000000000000000000000000000000002","0x1e06d49ce7b00846691778f302e94a3ac9c2633d745ebe73d68353c941e68dee":"0x626974636f696e0000000000000000000000000000000000000000000000000e","0x1e99199375610ffe00d28ee5827c616cf6469be3de2a2f738d955eb6b62127e8":"0x1","0x21e80eded1b2e1c5d976c85e89dde60bd4e99a8d66346af0e359ac854bceba44":"0x0","0x254d9ade81439f29723741d6ff407eab1fe03caffb042bd85e53955e41fb9792":"0x616c74696d697374000000000000000000000000000000000000000000000010","0x269db12b2cd2aeb7d5f52eda16edb1d211ccbea12da1ebfa60ed5f8f396c1d04":"0x0","0x2a3f03435eedee01de7e1c4386b04ca8469edd8df00408cd6d2b058bce1cecfa":"0x0","0x323a3cb169499006d6635c58232c8c58e23c20bf9e1d309d6b3bc6fb2c7a093d":"0x0","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x229c56b7805ab5935a883207f6a6bd5847e65aee","0x37aac864d4715a975bd45cae6be99de9f7968cf995917cc7f8192940fb62acbf":"0x0","0x3f69f26894a7ae0f7a7aa6c2d77935589dabbff6435aee960da15064dea7cd59":"0x64616f0000000000000000000000000000000000000000000000000000000006","0x467a68fda3230ce33f64703ebdbd91caccf235403282ae9fe390675ef39e9c94":"0x0","0x50ae8c017c4c1fddbe9509bd2b916f5dd9da11ddb639f2a4230322f49a41ac87":"0x1","0x5496787fc1ebdfeba375028c1865f13fbb1d63c0caa356ccc1b29a80f3ebd622":"0x0","0x576dd8d1a7b74aba0a99a213f50d74aa642a2c80bd5a854b24aac7568afea0f7":"0x626974676574000000000000000000000000000000000000000000000000000c","0x5b54338c052ce22ec334b6c5a19c4b122701c5fd4d3a2a5f5890f57050e0aafa":"0x626c6f636b636861696e00000000000000000000000000000000000000000014","0x5d9de30f0e5e02628e726fd23e310ee9e64489866fa6959825148a25d40e4c83":"0x0","0x5e2d99ab4a1a153039a4b2e068d64802da8735071a2d018ee9d04297945bed00":"0x0","0x670006c4193123492fb25db465ed52e62aff2f076289f4f1a5f167237f5e579d":"0x6d616e676100000000000000000000000000000000000000000000000000000a","0x6deac161c541001c0d79afaf7b809418785fa5ca6533d86bcf312e7213ee08fc":"0x0","0x6eaa0db35203bc0d58aff54ca630dd125b27758aa6204f7a11c0617f7c2fa776":"0x706f670000000000000000000000000000000000000000000000000000000006","0x732abe4661f55132b7f119cab9a9985be6630299dfc92870cc910f147795bc44":"0x0","0x743eb517f46c12bb593097087a972028308ce2e819a76cfb5488751f9d1ca34a":"0x7265616c6d00000000000000000000000000000000000000000000000000000a","0x750dfb39c9afc828c341e1a8e8fdca0b3914baf43303e1ef21fbfe8ec8ee016a":"0x0","0x7cbf647b96a1d1a533ea4bc3a4a8a78f166bd91e6a96afb12f063fef0e9cb960":"0x0","0x7dc972254779cfb51850c0eaccfcb71207822b3c10d4840567bec3dfbf0dff13":"0x636f6d0000000000000000000000000000000000000000000000000000000006","0x7dfa160584f41570c33e8e6c42c5314a7b45ddc162f99fd101ccc10c7b5b3dd3":"0x77616c6c6574000000000000000000000000000000000000000000000000000c","0x868a5f38a2d46181ffad442d7bc5b337b3c349a58e4979f2901786c6123b996c":"0x6b6c65766572000000000000000000000000000000000000000000000000000c","0x87b2c647061aef22ef1aba96c67f440d471dfac27e9873ff4a03793b402d32ee":"0x706f6c79676f6e0000000000000000000000000000000000000000000000000e","0x893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e":"0x7c3c91245769c8b7450ad522792dec4bd4bf797f","0x91e744007b4b3621bec7c01ea851c3f48cf196b9cc6c566a48cec8c5faac6e62":"0x0","0x92c5a28dd4caaa50e0a8370243a5c600f64349e8b03604b403cbe111b50f1f7b":"0x3838380000000000000000000000000000000000000000000000000000000006","0x947936973a3a21b10c8980e1a8939a55c7339d302161884a3de05cf090e812f0":"0x1","0x9535d3ea47c5e1398d3405b4fadc73de6b1b1e6a66f674a8886ab7a6c873a390":"0x63727970746f000000000000000000000000000000000000000000000000000c","0x9956a4e94676c45844be3667f17e077c7cb53aa4e87e5a71d65e56b291232715":"0x676f000000000000000000000000000000000000000000000000000000000004","0x9c6ba1ddff1ffbc14dcdc1f97db867554a42a39e00e892c7e882dbb3dca89ebf":"0x6869000000000000000000000000000000000000000000000000000000000004","0x9f836a0f81651f597cee678b440ba8c853c633e6654809efb83d4b22aff06fb2":"0x616e696d6500000000000000000000000000000000000000000000000000000a","0x9fecf1e12f4b8ec337da992721a0f27526ddbd6be1e77885ab963c09afcf0fc1":"0x0","0xab129a0f8c6cf8d160116a28abc7369c2f8a098fc023f00f07dc3e1d5798e47a":"0x0","0xb04c0eb6f034d9a3179a4e6f953bdf8afc78ba2cdcfbc775076e1c2a0bb67818":"0x0","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xbe51b53bc2060a7a6419622b5a9adc00b50a57e6aa741882f2f60f95d4580078":"0x636c617900000000000000000000000000000000000000000000000000000008","0xbf350522e335b8ab3da1d099c93cdc09179f1e15ea6aa1acfaa4afb1ef87eabf":"0x756e73746f707061626c65000000000000000000000000000000000000000016","0xcbf7a3d53e0851ac15a415b99c2ba95a2497dd9dd44068ac261bcbdafdfe8472":"0x707564677900000000000000000000000000000000000000000000000000000a","0xcf4411216f3fdf787d1cfe037bbcfa0d5293d83a8082f8e4141266399e2a784b":"0x61757374696e000000000000000000000000000000000000000000000000000c","0xcfdbac664139565f92cce149a345e5f19355d25b3eb8a70c549d5da3283a15b8":"0x7a696c0000000000000000000000000000000000000000000000000000000006","0xcfeb64c30a93ecd7224f854b09be57bb6b3962e739fa8e3ea3a1851502474c07":"0x1","0xe03c9c593ce8661bd39f77653f7ca6c43f093aa7f3b95890f309f67b57f39e74":"0x0","0xe50c62c16d12655dfdbd61c232155e5c3a1cf61977d2d8e7449cb88611b73832":"0x0","0xeeb0b17d77f2c9069ad443f3927c0802d98d5553e52b17c985d45d4a10b79566":"0x62696e616e636575730000000000000000000000000000000000000000000012","0xf562ef0db022f25a957fb6e49aa07004f14a50ed5b23279e9ac25b4632f7bf1c":"0x0","0xf6776268d6c5847a771099280c742d684a4b22bac609ba615de51f7f893ff2bc":"0x0"}},"0x3f1194b9019002863ad0dbbe295294547c0d36a9":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100b1575f3560e01c80635b0fc9c31161006e5780635b0fc9c3146101a55780635ef2c7f0146101b8578063a22cb465146101cb578063cf408823146101de578063e985e9c5146101f1578063f79fe5381461023c575f80fd5b80630178b8bf146100b557806302571be3146100fd57806306ab59231461011057806314ab90381461013157806316a25cbd146101465780631896f70a14610192575b5f80fd5b6100e06100c3366004610785565b5f908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100e061010b366004610785565b610266565b61012361011e3660046107b7565b610292565b6040519081526020016100f4565b61014461013f366004610800565b61035f565b005b610179610154366004610785565b5f90815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100f4565b6101446101a036600461082a565b61042e565b6101446101b336600461082a565b6104ef565b6101446101c636600461084b565b61058e565b6101446101d936600461089e565b6105af565b6101446101ec3660046108d7565b61061a565b61022c6101ff366004610921565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205460ff1690565b60405190151581526020016100f4565b61022c61024a366004610785565b5f908152602081905260409020546001600160a01b0316151590565b5f818152602081905260408120546001600160a01b031630810361028c57505f92915050565b92915050565b5f8381526020819052604081205484906001600160a01b0316338114806102db57506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b6102e3575f80fd5b604080516020808201899052818301889052825180830384018152606090920190925280519101206103158186610635565b6040516001600160a01b0386168152869088907fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829060200160405180910390a39695505050505050565b5f8281526020819052604090205482906001600160a01b0316338114806103a857506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b6103b0575f80fd5b60405167ffffffffffffffff8416815284907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a250505f91825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b5f8281526020819052604090205482906001600160a01b03163381148061047757506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b61047f575f80fd5b6040516001600160a01b038416815284907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a250505f9182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b5f8281526020819052604090205482906001600160a01b03163381148061053857506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b610540575f80fd5b61054a8484610635565b6040516001600160a01b038416815284907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a250505050565b5f61059a868686610292565b90506105a7818484610662565b505050505050565b335f8181526001602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b61062484846104ef565b61062f848383610662565b50505050565b5f9182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b5f838152602081905260409020600101546001600160a01b038381169116146106e6575f838152602081815260409182902060010180546001600160a01b0319166001600160a01b038616908117909155915191825284917f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a0910160405180910390a25b5f8381526020819052604090206001015467ffffffffffffffff828116600160a01b9092041614610780575f8381526020818152604091829020600101805467ffffffffffffffff60a01b1916600160a01b67ffffffffffffffff861690810291909117909155915191825284917f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa68910160405180910390a25b505050565b5f60208284031215610795575f80fd5b5035919050565b80356001600160a01b03811681146107b2575f80fd5b919050565b5f805f606084860312156107c9575f80fd5b83359250602084013591506107e06040850161079c565b90509250925092565b803567ffffffffffffffff811681146107b2575f80fd5b5f8060408385031215610811575f80fd5b82359150610821602084016107e9565b90509250929050565b5f806040838503121561083b575f80fd5b823591506108216020840161079c565b5f805f805f60a0868803121561085f575f80fd5b85359450602086013593506108766040870161079c565b92506108846060870161079c565b9150610892608087016107e9565b90509295509295909350565b5f80604083850312156108af575f80fd5b6108b88361079c565b9150602083013580151581146108cc575f80fd5b809150509250929050565b5f805f80608085870312156108ea575f80fd5b843593506108fa6020860161079c565b92506109086040860161079c565b9150610916606086016107e9565b905092959194509250565b5f8060408385031215610932575f80fd5b61093b8361079c565b91506108216020840161079c56fea164736f6c6343000818000a","storage":{"0xdd4f47a3b6f87903b728feed7a23273bd8de58e4fa257d37a74a5881e5d92ff":"0xf670681605efc4efc804f5a9b97ee89520473d56","0x14ce109f1cffdc11aa7355660be720f902291be09fb159b4c578958cd0f533bc":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x14ce109f1cffdc11aa7355660be720f902291be09fb159b4c578958cd0f533bd":"0x0","0x1e2c8528d7e8e90443ad0a4e37b6f2b1daed719a574ce3a0c347063e8d839d50":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1e2c8528d7e8e90443ad0a4e37b6f2b1daed719a574ce3a0c347063e8d839d51":"0x0","0x2fb4213711fd985fc1fb1ea2bfa660b0b37fd50c6c74ab531d9b54b29dd5177e":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2fb4213711fd985fc1fb1ea2bfa660b0b37fd50c6c74ab531d9b54b29dd5177f":"0x0","0x859ecef2e168dc10231b000bd53493b42bc9d944cac29d94582c1e1d43592131":"0xc965345edac823d56812cd20a10316233916a605","0x8878c6daefcfc78c7f181d00d719b4a0612dd3e65cafeb72507d15c036a9f690":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0xe4fdf45c2f8d198854f8823809c7a988eeaaa493","0xfb5568c6845cf0d5915af088a5d8ba90a5ff735e102c9a79609ef7d043f1108c":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xfb5568c6845cf0d5915af088a5d8ba90a5ff735e102c9a79609ef7d043f1108d":"0x0"}},"0x4872cc1be60a9db9c880a0a437da7a6af134f08f":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100935760003560e01c80637362d9c8116100665780637362d9c8146101285780637b1039991461014e57806399e0dd7c14610172578063bb5f747b146101e2578063d6cd94731461020857610093565b806310154bad14610098578063291d9549146100c05780633af32abf146100e65780634c5a628c14610120575b600080fd5b6100be600480360360208110156100ae57600080fd5b50356001600160a01b0316610210565b005b6100be600480360360208110156100d657600080fd5b50356001600160a01b0316610260565b61010c600480360360208110156100fc57600080fd5b50356001600160a01b03166102ad565b604080519115158252519081900360200190f35b6100be6102c6565b6100be6004803603602081101561013e57600080fd5b50356001600160a01b03166102d1565b61015661031e565b604080516001600160a01b039092168252519081900360200190f35b6100be6004803603602081101561018857600080fd5b8101906020810181356401000000008111156101a357600080fd5b8201836020820111156101b557600080fd5b803590602001918460018302840111640100000000831117156101d757600080fd5b50909250905061032d565b61010c600480360360208110156101f857600080fd5b50356001600160a01b0316610404565b6100be610416565b61021933610404565b6102545760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d8161041f565b50565b61026933610404565b6102a45760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d81610467565b60006102c060018363ffffffff6104af16565b92915050565b6102cf33610516565b565b6102da33610404565b6103155760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d8161055e565b6002546001600160a01b031690565b610336336102ad565b6103715760405162461bcd60e51b815260040180806020018281038252603a815260200180610712603a913960400191505060405180910390fd5b6002546040516369426cbd60e11b8152602060048201908152602482018490526001600160a01b039092169163d284d97a91859185918190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b1580156103e857600080fd5b505af11580156103fc573d6000803e3d6000fd5b505050505050565b60006102c0818363ffffffff6104af16565b6102cf33610467565b61043060018263ffffffff6105a616565b6040516001600160a01b038216907fee1504a83b6d4a361f4c1dc78ab59bfa30d6a3b6612c403e86bb01ef2984295f90600090a250565b61047860018263ffffffff61062716565b6040516001600160a01b038216907f270d9b30cf5b0793bbfd54c9d5b94aeb49462b8148399000265144a8722da6b690600090a250565b60006001600160a01b0382166104f65760405162461bcd60e51b81526004018080602001828103825260228152602001806106b06022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b61052760008263ffffffff61062716565b6040516001600160a01b038216907f0a8eb35e5ca14b3d6f28e4abf2f128dbab231a58b56e89beb5d636115001e16590600090a250565b61056f60008263ffffffff6105a616565b6040516001600160a01b038216907f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129990600090a250565b6105b082826104af565b15610602576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b61063182826104af565b61066c5760405162461bcd60e51b815260040180806020018281038252602181526020018061068f6021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f206164647265737357686974656c69737441646d696e526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c69737441646d696e20726f6c6557686974656c6973746564526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c697374656420726f6c65a265627a7a72315820debca60946c0819dc5b5c2756c5c1dd8dd8a46f2429fa8a43a4f4362af3030c164736f6c634300050c0032","storage":{"0x2":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x5ac40fcee41fb0272a935f6e51e963102fba5db6f20e897e9361f0347eb2cae6":"0x1","0xdc4aeb95a779c8b92b845e3a94044db8ff2e43acc37da18c4b35a6bbad7c122f":"0x1"}},"0x49da8861c65460639925febe1fb4b5b59b443082":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f7e83aee1461002d575b5f80fd5b61004061003b3660046101ac565b610054565b604051901515815260200160405180910390f35b5f602082146100a95760405162461bcd60e51b815260206004820152601a60248201527f496e76616c6964207368613235362068617368206c656e677468000000000000604482015260640160405180910390fd5b6100eb5f84848080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101459050565b600286866040516100fd929190610213565b602060405180830381855afa158015610118573d5f803e3d5ffd5b5050506040513d601f19601f8201168201806040525081019061013b9190610222565b1495945050505050565b81515f90610154836020610239565b111561015e575f80fd5b50016020015190565b5f8083601f840112610177575f80fd5b50813567ffffffffffffffff81111561018e575f80fd5b6020830191508360208285010111156101a5575f80fd5b9250929050565b5f805f80604085870312156101bf575f80fd5b843567ffffffffffffffff808211156101d6575f80fd5b6101e288838901610167565b909650945060208701359150808211156101fa575f80fd5b5061020787828801610167565b95989497509550505050565b818382375f9101908152919050565b5f60208284031215610232575f80fd5b5051919050565b8082018082111561025857634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x4a3c194eb88966178bfdd81744dddafed611b830":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061009e5760003560e01c806398650275116100665780639865027514610305578063aa271e1a1461030d578063b2da297914610347578063be362e2e146103c5578063c36c2125146104fe5761009e565b80634c0b0ed2146100a35780637b103999146101595780637caf3ad81461017d5780638ad364f814610258578063983b2d56146102df575b600080fd5b610157600480360360408110156100b957600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156100e357600080fd5b8201836020820111156100f557600080fd5b803590602001918460018302840111600160201b8311171561011657600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506105bd945050505050565b005b61016161074c565b604080516001600160a01b039092168252519081900360200190f35b6101576004803603608081101561019357600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156101bd57600080fd5b8201836020820111156101cf57600080fd5b803590602001918460018302840111600160201b831117156101f057600080fd5b919390926001600160a01b0383351692604081019060200135600160201b81111561021a57600080fd5b82018360208201111561022c57600080fd5b803590602001918460018302840111600160201b8311171561024d57600080fd5b50909250905061075b565b6101576004803603606081101561026e57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561029857600080fd5b8201836020820111156102aa57600080fd5b803590602001918460018302840111600160201b831117156102cb57600080fd5b9193509150356001600160a01b0316610957565b610157600480360360208110156102f557600080fd5b50356001600160a01b0316610b2b565b610157610b7b565b6103336004803603602081101561032357600080fd5b50356001600160a01b0316610b86565b604080519115158252519081900360200190f35b6101576004803603604081101561035d57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561038757600080fd5b82018360208201111561039957600080fd5b803590602001918460018302840111600160201b831117156103ba57600080fd5b509092509050610b9e565b610157600480360360608110156103db57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561040557600080fd5b82018360208201111561041757600080fd5b803590602001918460018302840111600160201b8311171561043857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b81111561048a57600080fd5b82018360208201111561049c57600080fd5b803590602001918460018302840111600160201b831117156104bd57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610bf1945050505050565b6101576004803603606081101561051457600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561053e57600080fd5b82018360208201111561055057600080fd5b803590602001918460018302840111600160201b8311171561057157600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550505090356001600160a01b03169150610dec9050565b6105c633610b86565b6106015760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b039092169163b5466669918591849163ebf0c717916004808301926020929190829003018186803b15801561064f57600080fd5b505afa158015610663573d6000803e3d6000fd5b505050506040513d602081101561067957600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052606060448301908152875160648401528751889360840190602085019080838360005b838110156106e25781810151838201526020016106ca565b50505050905090810190601f16801561070f5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15801561073057600080fd5b505af1158015610744573d6000803e3d6000fd5b505050505050565b6001546001600160a01b031690565b6107cf8686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f89018190048102820181019092528781529250879150869081908401838280828437600092019190915250610bf192505050565b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691632525d06a91869184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b15801561082557600080fd5b505afa158015610839573d6000803e3d6000fd5b505050506040513d602081101561084f57600080fd5b5051604080516001600160e01b031960e085901b1681526004810183815260248201928352604482018d90528d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b1580156108bd57600080fd5b505afa1580156108d1573d6000803e3d6000fd5b505050506040513d60208110156108e757600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b15801561093757600080fd5b505af115801561094b573d6000803e3d6000fd5b50505050505050505050565b6109a58484848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250610bf1915050565b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691632525d06a91849184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b1580156109fb57600080fd5b505afa158015610a0f573d6000803e3d6000fd5b505050506040513d6020811015610a2557600080fd5b5051604080516001600160e01b031960e085901b1681526004810183815260248201928352604482018b90528b928b92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b158015610a9357600080fd5b505afa158015610aa7573d6000803e3d6000fd5b505050506040513d6020811015610abd57600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b158015610b0d57600080fd5b505af1158015610b21573d6000803e3d6000fd5b5050505050505050565b610b3433610b86565b610b6f5760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b610b7881611115565b50565b610b843361115d565b565b6000610b98818363ffffffff6111a516565b92915050565b610bec8383838080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250610bf1915050565b505050565b610bfa33610b86565b610c355760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691630467e014918691849163ebf0c717916004808301926020929190829003018186803b158015610c8357600080fd5b505afa158015610c97573d6000803e3d6000fd5b505050506040513d6020811015610cad57600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052608060448301908152885160848401528851899389939291606482019160a40190602087019080838360005b83811015610d1f578181015183820152602001610d07565b50505050905090810190601f168015610d4c5780820380516001836020036101000a031916815260200191505b50838103825284518152845160209182019186019080838360005b83811015610d7f578181015183820152602001610d67565b50505050905090810190601f168015610dac5780820380516001836020036101000a031916815260200191505b509650505050505050600060405180830381600087803b158015610dcf57600080fd5b505af1158015610de3573d6000803e3d6000fd5b50505050505050565b610df533610b86565b610e305760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b039092169163b5466669918691849163ebf0c717916004808301926020929190829003018186803b158015610e7e57600080fd5b505afa158015610e92573d6000803e3d6000fd5b505050506040513d6020811015610ea857600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052606060448301908152885160648401528851899360840190602085019080838360005b83811015610f11578181015183820152602001610ef9565b50505050905090810190601f168015610f3e5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015610f5f57600080fd5b505af1158015610f73573d6000803e3d6000fd5b50506001546040805163ebf0c71760e01b815290516001600160a01b039092169350632525d06a9250849184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b158015610fcd57600080fd5b505afa158015610fe1573d6000803e3d6000fd5b505050506040513d6020811015610ff757600080fd5b5051604080516001600160e01b031960e085901b16815260048101838152602482019283528a5160448301528a518b93919260640190602085019080838360005b83811015611050578181015183820152602001611038565b50505050905090810190601f16801561107d5780820380516001836020036101000a031916815260200191505b50935050505060206040518083038186803b15801561109b57600080fd5b505afa1580156110af573d6000803e3d6000fd5b505050506040513d60208110156110c557600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b158015610dcf57600080fd5b61112660008263ffffffff61120c16565b6040516001600160a01b038216907f6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f690600090a250565b61116e60008263ffffffff61128d16565b6040516001600160a01b038216907fe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb6669290600090a250565b60006001600160a01b0382166111ec5760405162461bcd60e51b81526004018080602001828103825260228152602001806113466022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b61121682826111a5565b15611268576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b61129782826111a5565b6112d25760405162461bcd60e51b81526004018080602001828103825260218152602001806113256021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe4d696e746572526f6c653a2063616c6c657220646f6573206e6f74206861766520746865204d696e74657220726f6c65526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f2061646472657373a265627a7a72315820c058d70355f7d37ff6b3b61cd850cc4a41893e30048389698c062148bf3d2ff464736f6c634300050c0032","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x789b49055833748af4eaa9affbcd84118ce8770f7e4385b5a3f428626b1f0aff":"0x1","0xdc4aeb95a779c8b92b845e3a94044db8ff2e43acc37da18c4b35a6bbad7c122f":"0x1"}},"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061007b5760003560e01c80639623609d1161004e5780639623609d1461011157806399a88ec414610124578063f2fde38b14610144578063f3b7dead1461016457600080fd5b8063204e1c7a14610080578063715018a6146100bc5780637eff275e146100d35780638da5cb5b146100f3575b600080fd5b34801561008c57600080fd5b506100a061009b366004610499565b610184565b6040516001600160a01b03909116815260200160405180910390f35b3480156100c857600080fd5b506100d1610215565b005b3480156100df57600080fd5b506100d16100ee3660046104bd565b610229565b3480156100ff57600080fd5b506000546001600160a01b03166100a0565b6100d161011f36600461050c565b610291565b34801561013057600080fd5b506100d161013f3660046104bd565b610300565b34801561015057600080fd5b506100d161015f366004610499565b610336565b34801561017057600080fd5b506100a061017f366004610499565b6103b4565b6000806000836001600160a01b03166040516101aa90635c60da1b60e01b815260040190565b600060405180830381855afa9150503d80600081146101e5576040519150601f19603f3d011682016040523d82523d6000602084013e6101ea565b606091505b5091509150816101f957600080fd5b8080602001905181019061020d91906105e2565b949350505050565b61021d6103da565b6102276000610434565b565b6102316103da565b6040516308f2839760e41b81526001600160a01b038281166004830152831690638f283970906024015b600060405180830381600087803b15801561027557600080fd5b505af1158015610289573d6000803e3d6000fd5b505050505050565b6102996103da565b60405163278f794360e11b81526001600160a01b03841690634f1ef2869034906102c990869086906004016105ff565b6000604051808303818588803b1580156102e257600080fd5b505af11580156102f6573d6000803e3d6000fd5b5050505050505050565b6103086103da565b604051631b2ce7f360e11b81526001600160a01b038281166004830152831690633659cfe69060240161025b565b61033e6103da565b6001600160a01b0381166103a85760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b6103b181610434565b50565b6000806000836001600160a01b03166040516101aa906303e1469160e61b815260040190565b6000546001600160a01b031633146102275760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161039f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146103b157600080fd5b6000602082840312156104ab57600080fd5b81356104b681610484565b9392505050565b600080604083850312156104d057600080fd5b82356104db81610484565b915060208301356104eb81610484565b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561052157600080fd5b833561052c81610484565b9250602084013561053c81610484565b9150604084013567ffffffffffffffff8082111561055957600080fd5b818601915086601f83011261056d57600080fd5b81358181111561057f5761057f6104f6565b604051601f8201601f19908116603f011681019083821181831017156105a7576105a76104f6565b816040528281528960208487010111156105c057600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000602082840312156105f457600080fd5b81516104b681610484565b60018060a01b038316815260006020604081840152835180604085015260005b8181101561063b5785810183015185820160600152820161061f565b8181111561064d576000606083870101525b50601f01601f19169290920160600194935050505056fea26469706673582212207ad53e1008cce369999f6b5f2f77109510b404ff1de9b47b639981fd68e6239264736f6c63430008090033","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x4e59b44847b379578588920ca78fbf26c0b4956c":{"nonce":0,"balance":"0x0","code":"0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe03601600081602082378035828234f58015156039578182fd5b8082525050506014600cf3","storage":{}},"0x4eb9de1fc0d800e941f326d6699e9e11969557ea":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063100cdd911461002d575b5f80fd5b61004061003b3660046102cd565b610042565b005b5f5b818110156101b8575f7f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e28484848181106100805761008061033c565b905060200201356040516020016100a1929190918252602082015260400190565b60408051808303601f190181529082905280516020909101206331a9108f60e11b82526004820181905291507f000000000000000000000000107733fed96c4cd390c944a31f5425a7fb98ae5e6001600160a01b0316906323b872dd908290636352211e90602401602060405180830381865afa158015610124573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101489190610350565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015261dead6024820152604481018490526064015f604051808303815f87803b158015610195575f80fd5b505af11580156101a7573d5f803e3d5ffd5b505060019093019250610044915050565b5080156102c9577f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e282826101ed60018261037d565b8181106101fc576101fc61033c565b9050602002013560405160200161021d929190918252602082015260400190565b604051602081830303815290604052805190602001205f1c7f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e283835f8181106102685761026861033c565b90506020020135604051602001610289929190918252602082015260400190565b60408051601f19818403018152908290528051602090910120907fdf423376f9b0ab363b1b4d6f0b4cb6821921ec30f491555a97236a8a38ce095a905f90a35b5050565b5f80602083850312156102de575f80fd5b823567ffffffffffffffff808211156102f5575f80fd5b818501915085601f830112610308575f80fd5b813581811115610316575f80fd5b8660208260051b850101111561032a575f80fd5b60209290920196919550909350505050565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215610360575f80fd5b81516001600160a01b0381168114610376575f80fd5b9392505050565b8181038181111561039c57634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x4fbf7b2f171336958be5d15ff762a5cff5363568":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061011b575f3560e01c80638d839ffe1161009d578063aeb8ce9b11610062578063aeb8ce9b14610356578063ce1e09c014610375578063d3419bf3146103a8578063f14fcbc8146103db578063f2fde38b146103fa575f80fd5b80638d839ffe146102a25780638da5cb5b146102d55780639791c097146102f1578063a8e5fbc014610310578063acf1a84114610343575f80fd5b806374694a2b116100e357806374694a2b146101c957806380869853146101dc578063839df9451461022757806383e7f6ff146102525780638a95b09f1461028c575f80fd5b806301ffc9a71461011f5780633ccfd60b146101535780635d3590d51461016957806365a69dcf14610188578063715018a6146101b5575b5f80fd5b34801561012a575f80fd5b5061013e610139366004611145565b610419565b60405190151581526020015b60405180910390f35b34801561015e575f80fd5b5061016761044f565b005b348015610174575f80fd5b50610167610183366004611187565b610489565b348015610193575f80fd5b506101a76101a23660046112e4565b610507565b60405190815260200161014a565b3480156101c0575f80fd5b5061016761058b565b6101676101d73660046113db565b61059e565b3480156101e7575f80fd5b5061020f7f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5681565b6040516001600160a01b03909116815260200161014a565b348015610232575f80fd5b506101a761024136600461149d565b60016020525f908152604090205481565b34801561025d575f80fd5b5061027161026c3660046114b4565b610894565b6040805182518152602092830151928101929092520161014a565b348015610297575f80fd5b506101a76224ea0081565b3480156102ad575f80fd5b506101a77f000000000000000000000000000000000000000000000000000000000000025881565b3480156102e0575f80fd5b505f546001600160a01b031661020f565b3480156102fc575f80fd5b5061013e61030b3660046114f6565b6109c9565b34801561031b575f80fd5b5061020f7f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e1841720481565b610167610351366004611528565b6109dd565b348015610361575f80fd5b5061013e6103703660046114f6565b610b7b565b348015610380575f80fd5b506101a77f000000000000000000000000000000000000000000000000000000000001518081565b3480156103b3575f80fd5b5061020f7f000000000000000000000000ec71e4e674fe0f432693dc2b935c34bd2774c00381565b3480156103e6575f80fd5b506101676103f536600461149d565b610c22565b348015610405575f80fd5b50610167610414366004611570565b610c95565b5f6001600160e01b031982166301ffc9a760e01b148061044957506001600160e01b0319821663612e8c0960e01b145b92915050565b5f80546040516001600160a01b03909116914780156108fc02929091818181858888f19350505050158015610486573d5f803e3d5ffd5b50565b610491610d0b565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af11580156104dd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105019190611589565b50505050565b885160208a01205f90841580159061052657506001600160a01b038716155b15610544576040516334fd817160e21b815260040160405180910390fd5b808a8a8a8a8a8a8a8a6040516020016105659998979695949392919061165e565b604051602081830303815290604052805190602001209150509998505050505050505050565b610593610d0b565b61059c5f610d64565b565b5f6105df8b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c9250610894915050565b602081015181519192506105f2916116d5565b3410156106125760405163044044a560e21b815260040160405180910390fd5b6106b38b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f82011690508083019250505050505050896106ae8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f820116905080830192505050505050508d8d8d8d8d8d8d8d610507565b610db3565b604051635200a4c160e11b81525f906001600160a01b037f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e18417204169063a40149829061070b908f908f908f908f908e908b906004016116e8565b6020604051808303815f875af1158015610727573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061074b9190611732565b9050841561077657610776878d8d604051610767929190611749565b60405180910390208888610ece565b83156107be576107be8c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508b9250339150610f939050565b896001600160a01b03168c8c6040516107d8929190611749565b60405180910390207f69e37f151eb98a09618ddaa80c8cfaf1ce5996867c489f45b555b412271ebf278e8e865f015187602001518760405161081e959493929190611758565b60405180910390a36020820151825161083791906116d5565b341115610886576020820151825133916108fc9161085591906116d5565b61085f9034611788565b6040518115909202915f818181858888f19350505050158015610884573d5f803e3d5ffd5b505b505050505050505050505050565b604080518082019091525f808252602082015282516020840120604051636b727d4360e11b8152600481018290527f000000000000000000000000ec71e4e674fe0f432693dc2b935c34bd2774c0036001600160a01b03908116916350e9a7159187917f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063d6e4fa8690602401602060405180830381865afa158015610940573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109649190611732565b866040518463ffffffff1660e01b8152600401610983939291906117e8565b6040805180830381865afa15801561099d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109c1919061180c565b949350505050565b5f60036109d583611044565b101592915050565b5f83836040516109ee929190611749565b604080519182900382206020601f8701819004810284018101909252858352925082915f91610a39919088908890819084018382808284375f92019190915250889250610894915050565b8051909150341015610a5e5760405163044044a560e21b815260040160405180910390fd5b60405163c475abff60e01b815260048101839052602481018590525f907f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b03169063c475abff906044016020604051808303815f875af1158015610acb573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610aef9190611732565b8251909150341115610b3457815133906108fc90610b0d9034611788565b6040518115909202915f818181858888f19350505050158015610b32573d5f803e3d5ffd5b505b837f3da24c024582931cfaf8267d8ed24d13a82a8068d5bd337d30ec45cea4e506ae88883485604051610b6a9493929190611859565b60405180910390a250505050505050565b805160208201205f90610b8d836109c9565b8015610c1b57506040516312dc929d60e31b8152600481018290527f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b0316906396e494e890602401602060405180830381865afa158015610bf7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c1b9190611589565b9392505050565b5f818152600160205260409020544290610c5d907f0000000000000000000000000000000000000000000000000000000000015180906116d5565b10610c8357604051630a059d7160e01b8152600481018290526024015b60405180910390fd5b5f908152600160205260409020429055565b610c9d610d0b565b6001600160a01b038116610d025760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610c7a565b61048681610d64565b5f546001600160a01b0316331461059c5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610c7a565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f818152600160205260409020544290610dee907f0000000000000000000000000000000000000000000000000000000000000258906116d5565b1115610e1057604051635320bcf960e01b815260048101829052602401610c7a565b5f818152600160205260409020544290610e4b907f0000000000000000000000000000000000000000000000000000000000015180906116d5565b11610e6c5760405163cb7690d760e01b815260048101829052602401610c7a565b610e7583610b7b565b610e9457826040516308eee0fd60e31b8152600401610c7a919061187f565b5f818152600160205260408120556224ea00821015610ec957604051639a71997b60e01b815260048101839052602401610c7a565b505050565b604080517f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae6020808301919091528183018690528251808303840181526060830193849052805191012063e32954eb60e01b90925285906001600160a01b0382169063e32954eb90610f4890859088908890606401611891565b5f604051808303815f875af1158015610f63573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052610f8a91908101906118b3565b50505050505050565b7f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d566001600160a01b0316637a806d6b33838587604051602001610fd691906119a7565b6040516020818303038152906040526040518563ffffffff1660e01b815260040161100494939291906119ce565b6020604051808303815f875af1158015611020573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105019190611732565b80515f90819081905b8082101561113c575f85838151811061106857611068611a0b565b01602001516001600160f81b0319169050600160ff1b811015611097576110906001846116d5565b9250611129565b600760fd1b6001600160f81b0319821610156110b8576110906002846116d5565b600f60fc1b6001600160f81b0319821610156110d9576110906003846116d5565b601f60fb1b6001600160f81b0319821610156110fa576110906004846116d5565b603f60fa1b6001600160f81b03198216101561111b576110906005846116d5565b6111266006846116d5565b92505b508261113481611a1f565b93505061104d565b50909392505050565b5f60208284031215611155575f80fd5b81356001600160e01b031981168114610c1b575f80fd5b80356001600160a01b0381168114611182575f80fd5b919050565b5f805f60608486031215611199575f80fd5b6111a28461116c565b92506111b06020850161116c565b9150604084013590509250925092565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff811182821017156111fd576111fd6111c0565b604052919050565b5f67ffffffffffffffff82111561121e5761121e6111c0565b50601f01601f191660200190565b5f82601f83011261123b575f80fd5b813561124e61124982611205565b6111d4565b818152846020838601011115611262575f80fd5b816020850160208301375f918101602001919091529392505050565b5f8083601f84011261128e575f80fd5b50813567ffffffffffffffff8111156112a5575f80fd5b6020830191508360208260051b85010111156112bf575f80fd5b9250929050565b8015158114610486575f80fd5b803561ffff81168114611182575f80fd5b5f805f805f805f805f6101008a8c0312156112fd575f80fd5b893567ffffffffffffffff80821115611314575f80fd5b6113208d838e0161122c565b9a5061132e60208d0161116c565b995060408c0135985060608c0135975061134a60808d0161116c565b965060a08c013591508082111561135f575f80fd5b5061136c8c828d0161127e565b90955093505060c08a0135611380816112c6565b915061138e60e08b016112d3565b90509295985092959850929598565b5f8083601f8401126113ad575f80fd5b50813567ffffffffffffffff8111156113c4575f80fd5b6020830191508360208285010111156112bf575f80fd5b5f805f805f805f805f806101008b8d0312156113f5575f80fd5b8a3567ffffffffffffffff8082111561140c575f80fd5b6114188e838f0161139d565b909c509a508a915061142c60208e0161116c565b995060408d0135985060608d0135975061144860808e0161116c565b965060a08d013591508082111561145d575f80fd5b5061146a8d828e0161127e565b90955093505060c08b013561147e816112c6565b915061148c60e08c016112d3565b90509295989b9194979a5092959850565b5f602082840312156114ad575f80fd5b5035919050565b5f80604083850312156114c5575f80fd5b823567ffffffffffffffff8111156114db575f80fd5b6114e78582860161122c565b95602094909401359450505050565b5f60208284031215611506575f80fd5b813567ffffffffffffffff81111561151c575f80fd5b6109c18482850161122c565b5f805f6040848603121561153a575f80fd5b833567ffffffffffffffff811115611550575f80fd5b61155c8682870161139d565b909790965060209590950135949350505050565b5f60208284031215611580575f80fd5b610c1b8261116c565b5f60208284031215611599575f80fd5b8151610c1b816112c6565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b5f838385526020808601955060208560051b830101845f5b8781101561165157848303601f19018952813536889003601e19018112611609575f80fd5b8701848101903567ffffffffffffffff811115611624575f80fd5b803603821315611632575f80fd5b61163d8582846115a4565b9a86019a94505050908301906001016115e4565b5090979650505050505050565b8981526001600160a01b03898116602083015260408201899052606082018890528616608082015261010060a082018190525f9061169f83820187896115cc565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610449576104496116c1565b60a081525f6116fb60a08301888a6115a4565b6001600160a01b03968716602084015260408301959095525091909316606082015261ffff90921660809092019190915292915050565b5f60208284031215611742575f80fd5b5051919050565b818382375f9101908152919050565b608081525f61176b6080830187896115a4565b602083019590955250604081019290925260609091015292915050565b81810381811115610449576104496116c1565b5f5b838110156117b557818101518382015260200161179d565b50505f910152565b5f81518084526117d481602086016020860161179b565b601f01601f19169290920160200192915050565b606081525f6117fa60608301866117bd565b60208301949094525060400152919050565b5f6040828403121561181c575f80fd5b6040516040810181811067ffffffffffffffff8211171561183f5761183f6111c0565b604052825181526020928301519281019290925250919050565b606081525f61186c6060830186886115a4565b6020830194909452506040015292915050565b602081525f610c1b60208301846117bd565b838152604060208201525f6118aa6040830184866115cc565b95945050505050565b5f60208083850312156118c4575f80fd5b825167ffffffffffffffff808211156118db575f80fd5b818501915085601f8301126118ee575f80fd5b815181811115611900576119006111c0565b8060051b61190f8582016111d4565b9182528381018501918581019089841115611928575f80fd5b86860192505b8383101561199a57825185811115611944575f80fd5b8601603f81018b13611954575f80fd5b87810151604061196661124983611205565b8281528d82848601011115611979575f80fd5b611988838c830184870161179b565b8552505050918601919086019061192e565b9998505050505050505050565b5f82516119b881846020870161179b565b6305ccae8d60e31b920191825250600401919050565b6001600160a01b0385811682528481166020830152831660408201526080606082018190525f90611a01908301846117bd565b9695505050505050565b634e487b7160e01b5f52603260045260245ffd5b5f60018201611a3057611a306116c1565b506001019056fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x5155f5627bdf9795b3dbb8887001ada1eeba93f2":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063de8f50a11461002d575b5f80fd5b61004761003b3660046100a0565b60019695505050505050565b604051901515815260200160405180910390f35b5f8083601f84011261006b575f80fd5b50813567ffffffffffffffff811115610082575f80fd5b602083019150836020828501011115610099575f80fd5b9250929050565b5f805f805f80606087890312156100b5575f80fd5b863567ffffffffffffffff808211156100cc575f80fd5b6100d88a838b0161005b565b909850965060208901359150808211156100f0575f80fd5b6100fc8a838b0161005b565b90965094506040890135915080821115610114575f80fd5b5061012189828a0161005b565b979a969950949750929593949250505056fea164736f6c6343000818000a","storage":{}},"0x54563a9e1cd2dcbd0bca90d3cfa4a647e02c404a":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106101db575f3560e01c80638da5cb5b116100fd578063c4d66de811610092578063daea85c511610062578063daea85c51461055e578063e7acab241461057d578063f2fde38b1461059c578063ffa1ad74146105bb575f80fd5b8063c4d66de8146104e1578063d539139314610500578063d547741f14610520578063d9caed121461053f575f80fd5b8063a217fddf116100cd578063a217fddf14610452578063a3f4df7e14610465578063a4247400146104a3578063aa271e1a146104c2575f80fd5b80638da5cb5b146103d957806391d1485414610400578063983b2d561461041f578063986502751461043e575f80fd5b80635c975abb11610173578063715018a611610143578063715018a61461037f57806371e2a6571461039357806381c81d35146103b25780638456cb59146103c5575f80fd5b80635c975abb146103165780635fc1964f1461032e578063634486da1461034d5780636ccbae5f14610360575f80fd5b80633092afd5116101ae5780633092afd51461029c57806336568abe146102bb5780633f4ba83a146102da578063572b6c05146102ee575f80fd5b806301ffc9a7146101df5780631bf7e13e14610213578063248a9ca31461023f5780632f2ff15d1461027b575b5f80fd5b3480156101ea575f80fd5b506101fe6101f9366004611ee0565b6105eb565b60405190151581526020015b60405180910390f35b34801561021e575f80fd5b5061023261022d366004611f07565b610621565b60405161020a9190611fe9565b34801561024a575f80fd5b5061026d610259366004611ffb565b5f90815260fb602052604090206001015490565b60405190815260200161020a565b348015610286575f80fd5b5061029a610295366004612036565b6106ea565b005b3480156102a7575f80fd5b5061029a6102b6366004612064565b610713565b3480156102c6575f80fd5b5061029a6102d5366004612036565b610727565b3480156102e5575f80fd5b5061029a6107ba565b3480156102f9575f80fd5b506101fe610308366004612064565b6001600160a01b0316301490565b348015610321575f80fd5b5061012d5460ff166101fe565b348015610339575f80fd5b5061029a6103483660046120eb565b6107d4565b61029a61035b366004612064565b610811565b34801561036b575f80fd5b5061026d61037a366004611ffb565b6108d1565b34801561038a575f80fd5b5061029a61092a565b34801561039e575f80fd5b5061029a6103ad3660046120eb565b61093b565b61029a6103c0366004612064565b610978565b3480156103d0575f80fd5b5061029a6109f5565b3480156103e4575f80fd5b506097546040516001600160a01b03909116815260200161020a565b34801561040b575f80fd5b506101fe61041a366004612036565b610a0d565b34801561042a575f80fd5b5061029a610439366004612064565b610a37565b348015610449575f80fd5b5061029a610a48565b34801561045d575f80fd5b5061026d5f81565b348015610470575f80fd5b506102326040518060400160405280601381526020017229b2b0b837b93a10283937bc3c90213abcb2b960691b81525081565b3480156104ae575f80fd5b506101fe6104bd366004611f07565b610a61565b3480156104cd575f80fd5b506101fe6104dc366004612064565b610ab2565b3480156104ec575f80fd5b5061029a6104fb366004612064565b610aca565b34801561050b575f80fd5b5061026d5f80516020612ea783398151915281565b34801561052b575f80fd5b5061029a61053a366004612036565b610c21565b34801561054a575f80fd5b5061029a61055936600461218b565b610c45565b348015610569575f80fd5b5061029a610578366004612064565b610cf7565b348015610588575f80fd5b506101fe6105973660046121c9565b610dac565b3480156105a7575f80fd5b5061029a6105b6366004612064565b6111db565b3480156105c6575f80fd5b5061023260405180604001604052806005815260200164302e302e3160d81b81525081565b5f6001600160e01b03198216637965db0b60e01b148061061b57506301ffc9a760e01b6001600160e01b03198316145b92915050565b60605f5a9050610632858585610a61565b61064f57604051638baa579f60e01b815260040160405180910390fd5b6106df61065f6020870187612064565b3060408801358461067360608b018b61227b565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f920191909152506111f692505050565b9150505b9392505050565b5f82815260fb6020526040902060010154610704816112d4565b61070e83836112e5565b505050565b61071b61136b565b610724816113e4565b50565b61072f6113fb565b6001600160a01b0316816001600160a01b0316146107ac5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6107b68282611409565b5050565b6107c261136b565b6107ca61148d565b6107d26114d7565b565b6107dc61136b565b5f5b81518110156107b6576108098282815181106107fc576107fc6122bd565b60200260200101516113e4565b6001016107de565b61081c6104dc6113fb565b6108385760405162461bcd60e51b81526004016107a3906122d1565b6001600160a01b03811661088e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016107a3565b61089781611530565b61089f610a48565b6040516001600160a01b038216903480156108fc02915f818181858888f193505050501580156107b6573d5f803e3d5ffd5b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f90610923906060016040516020818303038152906040528051906020012090565b5492915050565b61093261136b565b6107d25f611547565b61094361136b565b5f5b81518110156107b657610970828281518110610963576109636122bd565b6020026020010151611530565b600101610945565b6109836104dc6113fb565b61099f5760405162461bcd60e51b81526004016107a3906122d1565b6001600160a01b0381166108975760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016107a3565b6109fd61136b565b610a05611598565b6107d26115df565b5f91825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610a3f61136b565b61072481611530565b6107d25f80516020612ea78339815191526102d56113fb565b5f610aaa610a6e85612306565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061161e92505050565b949350505050565b5f61061b5f80516020612ea783398151915283610a0d565b5f54610100900460ff1615808015610ae857505f54600160ff909116105b80610b015750303b158015610b0157505f5460ff166001145b610b645760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107a3565b5f805460ff191660011790558015610b85575f805461ff0019166101001790555b61015f80546001600160a01b0319166001600160a01b038416179055610ba9611759565b610bb1611786565b610bb9611786565b610bc1611786565b610bc96117ac565b610bd16117e2565b610bd9611819565b80156107b6575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b5f82815260fb6020526040902060010154610c3b816112d4565b61070e8383611409565b610c4d61136b565b600260335403610c6f5760405162461bcd60e51b81526004016107a3906123c2565b6002603355610c7c611598565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af1158015610cc8573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cec91906123f9565b505060016033555050565b610cff61136b565b600260335403610d215760405162461bcd60e51b81526004016107a3906123c2565b6002603355610d2e611598565b61015f5460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529082169063095ea7b3906044016020604051808303815f875af1158015610d7f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610da391906123f9565b50506001603355565b5f610db86104dc6113fb565b610dd45760405162461bcd60e51b81526004016107a3906122d1565b600260335403610df65760405162461bcd60e51b81526004016107a3906123c2565b6002603355610e03611598565b6001600160a01b038216610e2a576040516311d000e160e31b815260040160405180910390fd5b30610e358780612418565b610e46906040810190602001612064565b6001600160a01b031614610e6d57604051639d3c586b60e01b815260040160405180910390fd5b610e75611e67565b610e7f8780612418565b610e8d906020810190612064565b6001600160a01b03168152610ea28780612418565b610eb3906040810190602001612064565b6001600160a01b03166020820152610ecb8780612418565b610ed9906040810190612437565b808060200260200160405190810160405280939291908181526020015f905b82821015610f2457610f1560a08302860136819003810190612489565b81526020019060010190610ef8565b50505050506040820152610f388780612418565b610f46906060810190612506565b808060200260200160405190810160405280939291908181526020015f905b82821015610f9157610f8260c0830286013681900381019061254a565b81526020019060010190610f65565b50505050506060820152610fa58780612418565b610fb69060a08101906080016125e5565b81608001906004811115610fcc57610fcc6125fe565b90816004811115610fdf57610fdf6125fe565b905250610fec8780612418565b60a090810135908201526110008780612418565b60c090810135908201526110148780612418565b60e090810135908201526110288780612418565b610100908101359082015261103d8780612418565b610120908101359082015261015f54815160405163f07ec37360e01b81526001600160a01b03918216600482015291169063f07ec37390602401602060405180830381865afa158015611092573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110b69190612612565b61014082015261015f546040516379df72bd60e01b8152611133916001600160a01b0316906379df72bd906110ef908590600401612737565b602060405180830381865afa15801561110a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061112e9190612612565b61184c565b61015f546040516339eb2ac960e21b81526001600160a01b039091169063e7acab249061116c908a908a908a908a908a90600401612b24565b6020604051808303815f875af1158015611188573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111ac91906123f9565b9150816111cc57604051636725093760e01b815260040160405180910390fd5b50600160335595945050505050565b6111e361136b565b6111ec81611865565b6107245f826118db565b6060611201856118e5565b5f80876001600160a01b03168661121a8b8a898961194a565b6040516112279190612cfa565b5f604051808303815f8787f1925050503d805f8114611261576040519150601f19603f3d011682016040523d82523d5f602084013e611266565b606091505b509092509050611277603f87612d1f565b5a1161128557611285612d3e565b6112c582826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061197a565b925050505b9695505050505050565b610724816112e06113fb565b6119b3565b6112ef8282610a0d565b6107b6575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191660011790556113276113fb565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6113736113fb565b6001600160a01b031661138e6097546001600160a01b031690565b6001600160a01b0316146107d25760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107a3565b6107245f80516020612ea783398151915282610c21565b5f611404611a17565b905090565b6114138282610a0d565b156107b6575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191690556114496113fb565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b61012d5460ff166107d25760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b60448201526064016107a3565b6114df61148d565b61012d805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6115136113fb565b6040516001600160a01b03909116815260200160405180910390a1565b6107245f80516020612ea7833981519152826118db565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b61012d5460ff16156107d25760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b60448201526064016107a3565b6115e7611598565b61012d805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586115136113fb565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015611662573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116869190612612565b90505f6117338660600151805190602001208688602001516040516020016116d39392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156112ca575085516112ca906001600160a01b03168286611a34565b5f54610100900460ff1661177f5760405162461bcd60e51b81526004016107a390612d52565b6001603355565b5f54610100900460ff166107d25760405162461bcd60e51b81526004016107a390612d52565b5f54610100900460ff166117d25760405162461bcd60e51b81526004016107a390612d52565b6107d26117dd6113fb565b611547565b5f54610100900460ff166118085760405162461bcd60e51b81526004016107a390612d52565b6107d25f6118146113fb565b6118db565b5f54610100900460ff1661183f5760405162461bcd60e51b81526004016107a390612d52565b61012d805460ff19169055565b30330361185c5761072481611b6f565b610724816118e5565b61186d61136b565b6001600160a01b0381166118d25760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107a3565b61072481611547565b6107b682826112e5565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f906060016040516020818303038152906040528051906020012090506119398190565b54611945906001612d9d565b905550565b606082858560405160200161196193929190612db0565b6040516020818303038152906040529050949350505050565b606083156119895750816106e3565b8251156119995782518084602001fd5b8160405162461bcd60e51b81526004016107a39190611fe9565b6119bd8282610a0d565b6107b6576119d5816001600160a01b03166014611b99565b6119e0836020611b99565b6040516020016119f1929190612dee565b60408051601f198184030181529082905262461bcd60e51b82526107a391600401611fe9565b5f303303611a2c575060331936013560601c90565b503390565b90565b5f805f611a418585611d2e565b90925090505f816004811115611a5957611a596125fe565b148015611a775750856001600160a01b0316826001600160a01b0316145b15611a87576001925050506106e3565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401611aae929190612e62565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051611aec9190612cfa565b5f60405180830381855afa9150503d805f8114611b24576040519150601f19603f3d011682016040523d82523d5f602084013e611b29565b606091505b5091509150818015611b3c575080516020145b8015611b6357508051630b135d3f60e11b90611b619083016020908101908401612612565b145b98975050505050505050565b611b77611d70565b811461072457604051635637b6af60e11b8152600481018290526024016107a3565b60605f611ba7836002612e7a565b611bb2906002612d9d565b6001600160401b03811115611bc957611bc961207f565b6040519080825280601f01601f191660200182016040528015611bf3576020820181803683370190505b509050600360fc1b815f81518110611c0d57611c0d6122bd565b60200101906001600160f81b03191690815f1a905350600f60fb1b81600181518110611c3b57611c3b6122bd565b60200101906001600160f81b03191690815f1a9053505f611c5d846002612e7a565b611c68906001612d9d565b90505b6001811115611cdf576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611c9c57611c9c6122bd565b1a60f81b828281518110611cb257611cb26122bd565b60200101906001600160f81b03191690815f1a90535060049490941c93611cd881612e91565b9050611c6b565b5083156106e35760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016107a3565b5f808251604103611d62576020830151604084015160608501515f1a611d5687828585611d82565b94509450505050611d69565b505f905060025b9250929050565b5f303303611a315750601f1936013590565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115611db757505f90506003611e5e565b8460ff16601b14158015611dcf57508460ff16601c14155b15611ddf57505f90506004611e5e565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015611e30573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b038116611e58575f60019250925050611e5e565b91505f90505b94509492505050565b6040518061016001604052805f6001600160a01b031681526020015f6001600160a01b0316815260200160608152602001606081526020015f6004811115611eb157611eb16125fe565b81525f6020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b5f60208284031215611ef0575f80fd5b81356001600160e01b0319811681146106e3575f80fd5b5f805f60408486031215611f19575f80fd5b83356001600160401b0380821115611f2f575f80fd5b9085019060808288031215611f42575f80fd5b90935060208501359080821115611f57575f80fd5b818601915086601f830112611f6a575f80fd5b813581811115611f78575f80fd5b876020828501011115611f89575f80fd5b6020830194508093505050509250925092565b5f5b83811015611fb6578181015183820152602001611f9e565b50505f910152565b5f8151808452611fd5816020860160208601611f9c565b601f01601f19169290920160200192915050565b602081525f6106e36020830184611fbe565b5f6020828403121561200b575f80fd5b5035919050565b6001600160a01b0381168114610724575f80fd5b803561203181612012565b919050565b5f8060408385031215612047575f80fd5b82359150602083013561205981612012565b809150509250929050565b5f60208284031215612074575f80fd5b81356106e381612012565b634e487b7160e01b5f52604160045260245ffd5b604051608081016001600160401b03811182821017156120b5576120b561207f565b60405290565b604051601f8201601f191681016001600160401b03811182821017156120e3576120e361207f565b604052919050565b5f60208083850312156120fc575f80fd5b82356001600160401b0380821115612112575f80fd5b818501915085601f830112612125575f80fd5b8135818111156121375761213761207f565b8060051b91506121488483016120bb565b8181529183018401918481019088841115612161575f80fd5b938501935b83851015611b63578435925061217b83612012565b8282529385019390850190612166565b5f805f6060848603121561219d575f80fd5b83356121a881612012565b925060208401356121b881612012565b929592945050506040919091013590565b5f805f805f608086880312156121dd575f80fd5b85356001600160401b03808211156121f3575f80fd5b9087019060a0828a031215612206575f80fd5b9095506020870135908082111561221b575f80fd5b818801915088601f83011261222e575f80fd5b81358181111561223c575f80fd5b8960208260051b8501011115612250575f80fd5b6020830196508095505050506040860135915061226f60608701612026565b90509295509295909350565b5f808335601e19843603018112612290575f80fd5b8301803591506001600160401b038211156122a9575f80fd5b602001915036819003821315611d69575f80fd5b634e487b7160e01b5f52603260045260245ffd5b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b5f60808236031215612316575f80fd5b61231e612093565b823561232981612012565b8152602083810135818301526040808501359083015260608401356001600160401b0380821115612358575f80fd5b9085019036601f83011261236a575f80fd5b81358181111561237c5761237c61207f565b61238e601f8201601f191685016120bb565b915080825236848285010111156123a3575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b5f60208284031215612409575f80fd5b815180151581146106e3575f80fd5b5f823561015e1983360301811261242d575f80fd5b9190910192915050565b5f808335601e1984360301811261244c575f80fd5b8301803591506001600160401b03821115612465575f80fd5b602001915060a081023603821315611d69575f80fd5b803560068110612031575f80fd5b5f60a08284031215612499575f80fd5b60405160a081018181106001600160401b03821117156124bb576124bb61207f565b6040526124c78361247b565b815260208301356124d781612012565b806020830152506040830135604082015260608301356060820152608083013560808201528091505092915050565b5f808335601e1984360301811261251b575f80fd5b8301803591506001600160401b03821115612534575f80fd5b602001915060c081023603821315611d69575f80fd5b5f60c0828403121561255a575f80fd5b60405160c081018181106001600160401b038211171561257c5761257c61207f565b6040526125888361247b565b8152602083013561259881612012565b8060208301525060408301356040820152606083013560608201526080830135608082015260a08301356125cb81612012565b60a08201529392505050565b803560058110612031575f80fd5b5f602082840312156125f5575f80fd5b6106e3826125d7565b634e487b7160e01b5f52602160045260245ffd5b5f60208284031215612622575f80fd5b5051919050565b60068110612639576126396125fe565b9052565b5f815180845260208085019450602084015f5b838110156126a6578151612665888251612629565b838101516001600160a01b03168885015260408082015190890152606080820151908901526080908101519088015260a09096019590820190600101612650565b509495945050505050565b5f815180845260208085019450602084015f5b838110156126a65781516126d9888251612629565b808401516001600160a01b0390811689860152604080830151908a0152606080830151908a0152608080830151908a015260a091820151169088015260c090960195908201906001016126c4565b60058110612639576126396125fe565b602081526127516020820183516001600160a01b03169052565b5f602083015161276c60408401826001600160a01b03169052565b50604083015161016080606085015261278961018085018361263d565b91506060850151601f198584030160808601526127a683826126b1565b92505060808501516127bb60a0860182612727565b5060a085015160c085015260c085015160e085015260e0850151610100818187015280870151915050610120818187015280870151915050610140818187015280870151838701525050508091505092915050565b5f808335601e19843603018112612825575f80fd5b83016020810192503590506001600160401b03811115612843575f80fd5b60a081023603821315611d69575f80fd5b8183525f60208085019450825f5b858110156126a65761287c876128778461247b565b612629565b8282013561288981612012565b6001600160a01b03168388015260408281013590880152606080830135908801526080808301359088015260a09687019690910190600101612862565b5f808335601e198436030181126128db575f80fd5b83016020810192503590506001600160401b038111156128f9575f80fd5b60c081023603821315611d69575f80fd5b8183525f60208085019450825f5b858110156126a65761292d876128778461247b565b8282013561293a81612012565b6001600160a01b039081168885015260408381013590890152606080840135908901526080808401359089015260a0908382013561297781612012565b169088015260c0968701969190910190600101612918565b80356001600160781b0381168114612031575f80fd5b5f808335601e198436030181126129ba575f80fd5b83016020810192503590506001600160401b038111156129d8575f80fd5b803603821315611d69575f80fd5b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b8183525f6001600160fb1b03831115612a25575f80fd5b8260051b80836020870137939093016020019392505050565b8183526020808401935f91600585811b8301820185855b88811015612b1657858303601f19018a52813536899003609e19018112612a7a575f80fd5b88018035845260a08682013560028110612a92575f80fd5b85880152604082810135908601526060808301359086015260808083013536849003601e19018112612ac2575f80fd5b9092018781019290356001600160401b03811115612ade575f80fd5b80881b3603841315612aee575f80fd5b8282880152612b008388018286612a0e565b9d89019d96505050928601925050600101612a55565b509098975050505050505050565b608081525f610120873561015e19893603018112612b40575f80fd5b60a060808501528801612b65828501612b5883612026565b6001600160a01b03169052565b612b7160208201612026565b610140612b88818701836001600160a01b03169052565b612b956040840184612810565b610160888101529250612bad61028088018483612854565b925050612bbd60608401846128c6565b87840361011f1901610180890152612bd684828461290a565b93505050612be6608084016125d7565b612bf46101a0880182612727565b5060a08301356101c087015260c08301356101e087015260e0830135610200870152610100808401356102208801528484013561024088015281840135610260880152612c4360208d0161298f565b6001600160781b03811660a08901529450612c6060408d0161298f565b6001600160781b03811660c08901529450612c7e60608d018d6129a5565b95509350607f199150818784030160e0880152612c9c8386866129e6565b9450612cab60808d018d6129a5565b945092508187860301818801525050612cc58383836129e6565b925050508281036020840152612cdc818789612a3e565b9150508360408301526112ca60608301846001600160a01b03169052565b5f825161242d818460208701611f9c565b634e487b7160e01b5f52601160045260245ffd5b5f82612d3957634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b8082018082111561061b5761061b612d0b565b5f8451612dc1818460208901611f9c565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081525f8351612e25816017850160208801611f9c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351612e56816028840160208801611f9c565b01602801949350505050565b828152604060208201525f610aaa6040830184611fbe565b808202811582820484141761061b5761061b612d0b565b5f81612e9f57612e9f612d0b565b505f19019056fe9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000818000a","storage":{"0x0":"0xff"}},"0x58a175bebc8ec21a94ea63aa5a28743945940ee6":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106101165760003560e01c806391d14854116100a2578063c4d66de811610071578063c4d66de8146103bb578063ca15c873146103e1578063d547741f146103fe578063e375b64e1461042a578063ec87621c146104b957610116565b806391d14854146103635780639559c0bd146103a3578063a217fddf146103ab578063b017a30f146103b357610116565b80634794b430116100e95780634794b4301461024f57806349f5124b14610257578063609c92b81461025f5780638274664f146102675780639010d07c1461032457610116565b8063150b7a021461011b578063248a9ca3146101c65780632f2ff15d146101f557806336568abe14610223575b600080fd5b6101a96004803603608081101561013157600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561016b57600080fd5b82018360208201111561017d57600080fd5b803590602001918460018302840111600160201b8311171561019e57600080fd5b5090925090506104c1565b604080516001600160e01b03199092168252519081900360200190f35b6101e3600480360360208110156101dc57600080fd5b50356104d2565b60408051918252519081900360200190f35b6102216004803603604081101561020b57600080fd5b50803590602001356001600160a01b03166104ea565b005b6102216004803603604081101561023957600080fd5b50803590602001356001600160a01b0316610556565b6101e36105b7565b6101e36105db565b6101e36105ff565b6102216004803603606081101561027d57600080fd5b6001600160a01b038235811692602081013590911691810190606081016040820135600160201b8111156102b057600080fd5b8201836020820111156102c257600080fd5b803590602001918460018302840111600160201b831117156102e357600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610623945050505050565b6103476004803603604081101561033a57600080fd5b5080359060200135610fa2565b604080516001600160a01b039092168252519081900360200190f35b61038f6004803603604081101561037957600080fd5b50803590602001356001600160a01b0316610fc9565b604080519115158252519081900360200190f35b6101e3610fe7565b6101e3610fec565b6101e3610ff1565b610221600480360360208110156103d157600080fd5b50356001600160a01b0316611015565b6101e3600480360360208110156103f757600080fd5b50356110cf565b6102216004803603604081101561041457600080fd5b50803590602001356001600160a01b03166110e6565b6102216004803603608081101561044057600080fd5b6001600160a01b0382358116926020810135821692604082013590921691810190608081016060820135600160201b81111561047b57600080fd5b82018360208201111561048d57600080fd5b803590602001918460018302840111600160201b831117156104ae57600080fd5b50909250905061113f565b6101e36114e6565b630a85bd0160e11b95945050505050565b6000818152602081905260409020600201545b919050565b60008281526020819052604090206002015461050d906105086114f8565b610fc9565b6105485760405162461bcd60e51b815260040180806020018281038252602f815260200180611f42602f913960400191505060405180910390fd5b61055282826114fd565b5050565b61055e6114f8565b6001600160a01b0316816001600160a01b0316146105ad5760405162461bcd60e51b815260040180806020018281038252602f8152602001806120bb602f913960400191505060405180910390fd5b610552828261156c565b7ff871896b17e9cb7a64941c62c188a4f5c621b86800e3d15452ece01ce56073df81565b7ff94915c6d1fd521cee85359239227480c7e8776d7caf1fc3bacad5c269b66a1481565b7fd4392723c111fcb98b073fe55873efb447bcd23cd3e49ec9ea2581930cd01ddc81565b60008051602061204b83398151915261063e816105086114f8565b6001906106de5760405162461bcd60e51b81526020600482019081528254600260001961010060018416150201909116046024830181905290918291604490910190849080156106cf5780601f106106a4576101008083540402835291602001916106cf565b820191906000526020600020905b8154815290600101906020018083116106b257829003601f168201915b50509250505060405180910390fd5b5060606106f26106ed846115db565b611656565b905060606107138260018151811061070657fe5b6020026020010151611656565b90507fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60001b6107568260008151811061074957fe5b60200260200101516117d8565b141561095457600061076e8260018151811061074957fe5b905060006001600160a01b031661078b8360028151811061074957fe5b6001600160a01b0316146107d05760405162461bcd60e51b815260040180806020018281038252602981526020018061206b6029913960400191505060405180910390fd5b600086905060006107e78460038151811061074957fe5b9050816001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b15801561082d57600080fd5b505afa158015610841573d6000803e3d6000fd5b505050506040513d602081101561085757600080fd5b5051156108d35760408051632142170760e11b81523060048201526001600160a01b038581166024830152604482018490529151918416916342842e0e9160648082019260009290919082900301818387803b1580156108b657600080fd5b505af11580156108ca573d6000803e3d6000fd5b5050505061094c565b816001600160a01b03166340c10f1984836040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b15801561093357600080fd5b505af1158015610947573d6000803e3d6000fd5b505050505b505050610f9a565b7ff871896b17e9cb7a64941c62c188a4f5c621b86800e3d15452ece01ce56073df60001b6109888260008151811061074957fe5b1415610c085760006109a08260018151811061074957fe5b905060606109c1846002815181106109b457fe5b6020026020010151611920565b905060608180602001905160208110156109da57600080fd5b8101908080516040519392919084600160201b8211156109f957600080fd5b908301906020820185811115610a0e57600080fd5b82518660208202830111600160201b82111715610a2a57600080fd5b82525081516020918201928201910280838360005b83811015610a57578181015183820152602001610a3f565b5050505091909101604052505082519293508a9150600090505b82811015610bfd576000848281518110610a8757fe5b60200260200101519050826001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610ad557600080fd5b505afa158015610ae9573d6000803e3d6000fd5b505050506040513d6020811015610aff57600080fd5b505115610b7b5760408051632142170760e11b81523060048201526001600160a01b038981166024830152604482018490529151918516916342842e0e9160648082019260009290919082900301818387803b158015610b5e57600080fd5b505af1158015610b72573d6000803e3d6000fd5b50505050610bf4565b826001600160a01b03166340c10f1988836040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b158015610bdb57600080fd5b505af1158015610bef573d6000803e3d6000fd5b505050505b50600101610a71565b505050505050610f9a565b7ff94915c6d1fd521cee85359239227480c7e8776d7caf1fc3bacad5c269b66a1460001b610c3c8260008151811061074957fe5b1415610f63576000610c548260018151811061074957fe5b905060006001600160a01b0316610c718360028151811061074957fe5b6001600160a01b031614610cb65760405162461bcd60e51b815260040180806020018281038252602981526020018061206b6029913960400191505060405180910390fd5b60008690506000610ccd8460038151811061074957fe5b9050816001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610d1357600080fd5b505afa158015610d27573d6000803e3d6000fd5b505050506040513d6020811015610d3d57600080fd5b505115610d9c5760408051632142170760e11b81523060048201526001600160a01b038581166024830152604482018490529151918416916342842e0e9160648082019260009290919082900301818387803b1580156108b657600080fd5b6060610dae866002815181106109b457fe5b90506060818060200190516020811015610dc757600080fd5b8101908080516040519392919084600160201b821115610de657600080fd5b908301906020820185811115610dfb57600080fd5b8251600160201b811182820188101715610e1457600080fd5b82525081516020918201929091019080838360005b83811015610e41578181015183820152602001610e29565b50505050905090810190601f168015610e6e5780820380516001836020036101000a031916815260200191505b506040525050509050836001600160a01b03166394d008ef8685846040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b0316815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610ef3578181015183820152602001610edb565b50505050905090810190601f168015610f205780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015610f4157600080fd5b505af1158015610f55573d6000803e3d6000fd5b505050505050505050610f9a565b60405162461bcd60e51b815260040180806020018281038252602a815260200180611f71602a913960400191505060405180910390fd5b505050505050565b6000828152602081905260408120610fc0908363ffffffff6119ea16565b90505b92915050565b6000828152602081905260408120610fc0908363ffffffff6119f616565b601481565b600081565b7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef81565b60025460ff161561105e576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b61109c6040518060400160405280601781526020017f4d696e7461626c65455243373231507265646963617465000000000000000000815250611a0b565b6110a7600082610548565b6110bf60008051602061204b83398151915282610548565b506002805460ff19166001179055565b6000818152602081905260408120610fc390611aa9565b600082815260208190526040902060020154611104906105086114f8565b6105ad5760405162461bcd60e51b8152600401808060200182810382526030815260200180611fc36030913960400191505060405180910390fd5b60008051602061204b83398151915261115a816105086114f8565b6001906111c05760405162461bcd60e51b81526020600482019081528254600260001961010060018416150201909116046024830181905290918291604490910190849080156106cf5780601f106106a4576101008083540402835291602001916106cf565b50602082141561129f576000838360208110156111dc57600080fd5b5060408051913580835290519092506001600160a01b038088169289821692918b16917fe13244aa06bdc79480ed5fdc6ebe2bb37202fcdf33ecf45dc449f4201f3dc0879181900360200190a460408051632142170760e11b81526001600160a01b038981166004830152306024830152604482018490529151918716916342842e0e9160648082019260009290919082900301818387803b15801561128157600080fd5b505af1158015611295573d6000803e3d6000fd5b5050505050610f9a565b6060838360208110156112b157600080fd5b810190602081018135600160201b8111156112cb57600080fd5b8201836020820111156112dd57600080fd5b803590602001918460208302840111600160201b831117156112fe57600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f8201169050808301925050505050505091929192905050509050846001600160a01b0316866001600160a01b0316886001600160a01b03167fdb55e3a0ae817693fd7b07170d81eab0eb2c239f36fcecbc98b6b58ac5667e7a846040518080602001828103825283818151815260200191508051906020019060200280838360005b838110156113ca5781810151838201526020016113b2565b505050509050019250505060405180910390a48051601481111561141f5760405162461bcd60e51b815260040180806020018281038252602c81526020018061201f602c913960400191505060405180910390fd5b60005b818110156114db57866001600160a01b03166342842e0e8a3086858151811061144757fe5b60200260200101516040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050600060405180830381600087803b1580156114b757600080fd5b505af11580156114cb573d6000803e3d6000fd5b5050600190920191506114229050565b505050505050505050565b60008051602061204b83398151915281565b335b90565b600082815260208190526040902061151b908263ffffffff611ab416565b15610552576115286114f8565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b600082815260208190526040902061158a908263ffffffff611ac916565b15610552576115976114f8565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b6115e3611e6d565b6000825111611639576040805162461bcd60e51b815260206004820152601f60248201527f524c505265616465723a20494e56414c49445f42595445535f4c454e47544800604482015290519081900360640190fd5b506040805180820190915281518152602082810190820152919050565b606061166182611ade565b6116b2576040805162461bcd60e51b815260206004820152601860248201527f524c505265616465723a204954454d5f4e4f545f4c4953540000000000000000604482015290519081900360640190fd5b60006116bd83611b0a565b905060608167ffffffffffffffff811180156116d857600080fd5b5060405190808252806020026020018201604052801561171257816020015b6116ff611e6d565b8152602001906001900390816116f75790505b50905060006117248560200151611b96565b855190915081146117665760405162461bcd60e51b81526004018080602001828103825260278152602001806120946027913960400191505060405180910390fd5b60006117758660200151611c2f565b60208701510190506000805b858110156117cc5761179283611b96565b91506040518060400160405280838152602001848152508582815181106117b557fe5b602090810291909101015291810191600101611781565b50929695505050505050565b60006117e382611ade565b15611835576040805162461bcd60e51b815260206004820181905260248201527f524c505265616465723a204445434f44494e475f4c4953545f41535f55494e54604482015290519081900360640190fd5b81516021101561188c576040805162461bcd60e51b815260206004820152601e60248201527f524c505265616465723a20494e56414c49445f55494e545f4c454e4754480000604482015290519081900360640190fd5b600061189b8360200151611b96565b835190915081146118dd5760405162461bcd60e51b81526004018080602001828103825260278152602001806120ea6027913960400191505060405180910390fd5b60006118ec8460200151611c2f565b8451602080870151830180519394509184900392919083101561191657826020036101000a820491505b5095945050505050565b606060006119318360200151611b96565b835190915081146119735760405162461bcd60e51b8152600401808060200182810382526028815260200180611f9b6028913960400191505060405180910390fd5b60006119828460200151611c2f565b845190915081900360608167ffffffffffffffff811180156119a357600080fd5b506040519080825280601f01601f1916602001820160405280156119ce576020820181803683370190505b5090506000816020019050611916848860200151018285611c92565b6000610fc08383611cdd565b6000610fc0836001600160a01b038416611d41565b806040516020018082805190602001908083835b60208310611a3e5780518252601f199092019160209182019101611a1f565b51815160209384036101000a60001901801990921691161790527f3a20494e53554646494349454e545f5045524d495353494f4e530000000000009190930190815260408051808303600519018152601a909201905280516105529550600194509201919050611e87565b6000610fc382611d59565b6000610fc0836001600160a01b038416611d5d565b6000610fc0836001600160a01b038416611da7565b6020810151805160009190821a9060c0821015611b00576000925050506104e5565b5060019392505050565b600080600090506000611b208460200151611c2f565b602085015185519181019250015b80821015611b8d57611b3f82611b96565b8201915080821115611b825760405162461bcd60e51b815260040180806020018281038252602c815260200180611ff3602c913960400191505060405180910390fd5b600190920191611b2e565b50909392505050565b80516000908190811a6080811015611bb15760019150611c28565b60b8811015611bc657607e1981019150611c28565b60c0811015611bf35760b78103600185019450806020036101000a85510460018201810193505050611c28565b60f8811015611c085760be1981019150611c28565b60f78103600185019450806020036101000a855104600182018101935050505b5092915050565b8051600090811a6080811015611c495760009150506104e5565b60b8811080611c64575060c08110801590611c64575060f881105b15611c735760019150506104e5565b60c0811015611c875760b5190190506104e5565b60f5190190506104e5565b80611c9c57611cd8565b5b60208110611cbc578251825260209283019290910190601f1901611c9d565b8251825160208390036101000a60001901801990921691161782525b505050565b81546000908210611d1f5760405162461bcd60e51b8152600401808060200182810382526022815260200180611f206022913960400191505060405180910390fd5b826000018281548110611d2e57fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000611d698383611d41565b611d9f57508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610fc3565b506000610fc3565b60008181526001830160205260408120548015611e635783546000198083019190810190600090879083908110611dda57fe5b9060005260206000200154905080876000018481548110611df757fe5b600091825260208083209091019290925582815260018981019092526040902090840190558654879080611e2757fe5b60019003818190600052602060002001600090559055866001016000878152602001908152602001600020600090556001945050505050610fc3565b6000915050610fc3565b604051806040016040528060008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611ec857805160ff1916838001178555611ef5565b82800160010185558215611ef5579182015b82811115611ef5578251825591602001919060010190611eda565b50611f01929150611f05565b5090565b6114fa91905b80821115611f015760008155600101611f0b56fe456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e744d696e7461626c654552433732315072656469636174653a20494e56414c49445f5349474e4154555245524c505265616465723a2042595445535f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b65524c505265616465723a204e554d5f4954454d535f4445434f4445445f4c454e4754485f4d49534d415443484d696e7461626c654552433732315072656469636174653a20455843454544535f42415443485f4c494d4954241ecf16d79d0f8dbfb92cbc07fe17840425976cf0667f022fe9877caa831b084d696e7461626c654552433732315072656469636174653a20494e56414c49445f5245434549564552524c505265616465723a204c4953545f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66524c505265616465723a2055494e545f4445434f4445445f4c454e4754485f4d49534d41544348a164736f6c6343000606000a","storage":{"0x1":"0x63","0x2":"0x1","0x73d5d1a274bdea1400ad3ea4d982f594abdfd528cde1486b6c617faa3ec116":"0x1","0x89011777cfe6194dd982545e7eb24725dfe9a1aacae299c76fc48ef5017ae650":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x89011777cfe6194dd982545e7eb24725dfe9a1aacae299c76fc48ef5017ae651":"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0x1","0xb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6":"0x4d696e7461626c654552433732315072656469636174653a20494e5355464649","0xb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf7":"0x4349454e545f5045524d495353494f4e53000000000000000000000000000000","0xba75a66b8132bebab85d36fd3638083da57ae3d78fbcd8cc41f73514287dadaf":"0x1","0xe6c7d8231a06d7cb67831aeabcbd43ba24e5e4c6569cf23405f1e558de8580e0":"0x2","0xe84508f2c7fa9c351146748b3025cb78b45df37d868e48c6a75102fecdeee645":"0x2","0xe84508f2c7fa9c351146748b3025cb78b45df37d868e48c6a75102fecdeee647":"0x0","0xf0df3dcda05b4fbd9c655cde3d5ceb211e019e72ec816e127a59e7195f2cd7f5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x5cc819c9915eadfcebd76952b8c1bc36cadd7376":{"nonce":2,"balance":"0x0","code":"0x608060405260043610610103575f3560e01c8063a900866b11610092578063f07ec37311610062578063f07ec373146102f7578063f2d12b1214610316578063f47b774014610329578063fb0f3ee114610116578063fd9f1e101461034c575f80fd5b8063a900866b1461028a578063b3a34c4c146102be578063e7acab24146102d1578063ed98a574146102e4575f80fd5b80637423eb3c116100d85780637423eb3c146101f757806379df72bd1461020b57806387201b411461022a578063881477321461024b578063a81744041461026a575f80fd5b801561011657806306fdde031461013e57806346423aa71461015f5780635b34b966146101d5575f80fd5b366101125761011061036b565b005b5f80fd5b610129610124366004615115565b6103f9565b60405190151581526020015b60405180910390f35b348015610149575f80fd5b50610152610408565b604051610135919061518f565b34801561016a575f80fd5b506101b36101793660046151a1565b5f9081526001602052604090205460ff808216926101008304909116916001600160781b03620100008204811692600160881b9092041690565b6040805194151585529215156020850152918301526060820152608001610135565b3480156101e0575f80fd5b506101e9610417565b604051908152602001610135565b348015610202575f80fd5b50610110610420565b348015610216575f80fd5b506101e96102253660046151b8565b6104c1565b61023d61023836600461524c565b6104f8565b6040516101359291906153f0565b348015610256575f80fd5b5061012961026536600461543f565b610571565b61027d61027836600461547d565b61058f565b60405161013591906154e3565b348015610295575f80fd5b506101e96102a43660046154f5565b6001600160a01b03165f9081526002602052604090205490565b6101296102cc36600461550e565b61062a565b6101296102df366004615553565b6106a3565b61023d6102f23660046155d7565b6106e1565b348015610302575f80fd5b506101e96103113660046154f5565b610784565b61027d610324366004615677565b6107a1565b348015610334575f80fd5b5061033d6107ea565b60405161013593929190615719565b348015610357575f80fd5b5061012961036636600461543f565b610801565b7f000000000000000000000000000000000000000000000000000000000000000180156103b357600263929eee145c146103b05763a61be9f05f52346020526024601cfd5b50565b63929eee1454806103e057600263929eee145c146103dc5763a61be9f05f52346020526024601cfd5b5050565b600381146103dc5763a61be9f05f52346020526024601cfd5b5f61040261080c565b92915050565b60606104126109c0565b905090565b5f6104126109d8565b63929eee14546001147f000000000000000000000000000000000000000000000000000000000000000180610453575080155b1561047157604051630f45b98b60e41b815260040160405180910390fd5b61049a7f000000000000000000000000145908bbcfc7b258e4d4d9a586f6e3249ae80216610a45565b6104b7576040516370a4078f60e01b815260040160405180910390fd5b5f63929eee145550565b5f806104cd6004610aa3565b90506104f16104e282610ab35b63ffffffff16565b610140830135610b30565b3590565b9392505050565b60608061055d61051361050b6004610aa3565b610c746104da565b61052a61052260046020610cdc565b610cfa6104da565b61054161053960046040610cdc565b610d526104da565b61055061053960046060610cdc565b89338a15028a0189610daa565b915091509b509b9950505050505050505050565b5f6104f161058a6105826004610aa3565b610de46104da565b610e3c565b606061061f6105a96105a16004610aa3565b610f5d6104da565b604080515f8082526020820190925290610601565b6105ee6040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816105be5790505b5061061961061160046020610cdc565b610fb56104da565b3361100d565b90505b949350505050565b5f6104f161064361063b6004610aa3565b61104b6104da565b604080515f808252602082019092529061069b565b6106886040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816106585790505b5084336110c1565b5f6106d76106bc6106b46004610aa3565b6112406104da565b6106cb61052260046020610cdc565b853386150286016110c1565b9695505050505050565b6060806107736106f46105a16004610aa3565b604080515f808252602082019092529061074c565b6107396040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816107095790505b5061075c61053960046020610cdc565b61076b61053960046040610cdc565b883389610daa565b915091509850989650505050505050565b6001600160a01b0381165f90815260208190526040812054610402565b60606107dc6107b361050b6004610aa3565b6107c261052260046020610cdc565b6107d161061160046040610cdc565b33861502860161100d565b90505b979650505050505050565b60605f806107f661129c565b925092509250909192565b5f6104f183836112e8565b5f61012435600281901c90600316600182118334158214806108315761083134611423565b506003841160a0810260240135906502030203010160d01b861a905f630101020360d01b881a6108648882898888611434565b9096509150506101c4600583901b01355f87600581111561088757610887615329565b036108bc5760443560243517156108a557636ab37ce75f526004601cfd5b6108af8482611751565b6108b7611809565b61099d565b6040805160208082528183019092525f9160208201818036833701905050905060028a60058111156108f0576108f0615329565b036109135761090e60c4356084353360e435610104355b8787611889565b610988565b60038a600581111561092757610927615329565b036109455761090e60c4356084353360e435610104355b87876118d4565b60048a600581111561095957610959615329565b036109735761090e60243533608435604435606435610907565b6109886024353360843560443560643561093e565b610992848261190a565b61099b816119c4565b505b6109a88689846119e8565b6109b0611a5e565b6001995050505050505050505090565b6060602080526707536561706f727460475260606020f35b5f6109e1611ab1565b600143034060801c335f525f60205260405f208054820192508281555050336001600160a01b03167f721c20121297512b72821b97f5326877ea8ecf4bb9948fea5bfcb6453074d37f82604051610a3a91815260200190565b60405180910390a290565b5f816001600160a01b0316600a5a610a5d9190615773565b6040515f8181818686fa925050503d805f8114610a95576040519150601f19603f3d011682016040523d82523d5f602084013e610a9a565b606091505b50909392505050565b5f813563ffffffff168201610402565b5f610ac661016060408051918201905290565b9050610ad58282610140611b28565b610af2610aeb610ae6846040610cdc565b611b31565b6040830152565b5f610b06610b01846060610cdc565b611b84565b9050610b13816060840152565b610b26610b1e825190565b610140840152565b50919050565b0190565b610140820151604080519084015180515f939284927fa66999307ad1bb4fde44d13a5d710bd7718e0c87c1eef68a571629fbf5b93d0292602090910190845b81811015610b9c578251601f1901805186825260c082208652905260209384019390920191600101610b6f565b508060051b6040512094505050505f7f42d81c6929ffdc4eb27a0808e40e82516ad42296c166065de7f812492304ff6e915060405160206060890151015f5b86811015610c08578151601f1901805186825260e082208552905260209283019290910190600101610bdb565b505060408051600587901b9020601f198a0180517ffa445660b7e21515a59617fcd68910b487aa5808b8abda3d78bc85df364b2c2f8252928b01805197815260608c018051938152610140909c019a8b5261018082209390915295909552939097525050925250919050565b5f8063ffffffff8335169050600581901b610c986020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610cca610cc4610cbf8484610cdc565b611240565b82850152565b602001610ca7565b5050505050919050565b5f6104f163ffffffff610cf46104ed8686610b2c8516565b16840190565b5f8063ffffffff8335169050600581901b610d1e6020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610d4a610cc4610d458484610cdc565b611bc7565b602001610d2d565b5f8063ffffffff8335169050600581901b610d766020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610da2610cc4610d9d8484610cdc565b611c09565b602001610d85565b60608036155f80610dbe8c8c85898b611c4c565b91509150610dd18c8b8b8b8b8787612029565b9450945050505097509795505050505050565b5f8063ffffffff8335169050600581901b610e086020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610e34610cc4610e2f8484610cdc565b61215b565b602001610e17565b5f610e45611ab1565b5f805f80855190505f5b81811015610f50575f878281518110610e6a57610e6a615792565b60209081029190910101518051909150600481608001516004811115610e9257610e92615329565b03610e9e575050610f48565b80519450610eab8161219e565b5f8181526001602052604081209850909650610ecd90879089903615156121d7565b50865460ff16610f455780610140015181606001515114610ef057610ef0612265565b610eff85878460200151612272565b865460ff191660011787556040517ff280791efe782edcf06ce15c8f4dff17601db3b88eb3805a0db7d77faf757f0490610f3c9088908490615895565b60405180910390a15b50505b600101610e4f565b5060019695505050505050565b5f8063ffffffff8335169050600581901b610f816020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610fad610cc4610fa88484610cdc565b61104b565b602001610f90565b5f8063ffffffff8335169050600581901b610fd96020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257611005610cc46110008484610cdc565b61230e565b602001610fe8565b60605f36151590505f806110258888858b5189611c4c565b9150915061103282612341565b61103f8887848885612380565b98975050505050505050565b5f61105e61020060408051918201905290565b60a0810180825290915061107a61107484610aa3565b82612453565b61108660016020840152565b61109260016040840152565b6110af6110a86110a3856020610cdc565b612489565b6060840152565b610b266110ba6124b1565b6080840152565b835160808101515f91906110e860048260048111156110e2576110e2615329565b146124cb565b5f80806110f78a36151561256c565b60408051600180825281830190925293965091945092505f9190816020015b61111e615027565b8152602001906001900390816111165790505090508a815f8151811061114657611146615792565b602002602001018190525061115b818b612764565b6111678684848b6128dd565b6040805160018082528183019092525f91602080830190803683375091925050503615156004878181111561119e5761119e615329565b146111c1576111af8d83885f6129dd565b6111bb86868684612a2f565b506111d3565b6111d0888e6080015183612b33565b95505b6111de888c8c612c03565b85825f815181106111f1576111f1615792565b6020026020010181815250506112088d8388612d26565b61122586895f01518a602001518d8c604001518d60600151612df3565b61122d611a5e565b5060019c9b505050505050505050505050565b5f61125361020060408051918201905290565b905061126760208381019083016040611b28565b60a0810180825261127a61107484610aa3565b61128b6110a86110a3856060610cdc565b610b266110ba6110a3856080610cdc565b60605f805f6112a9612e58565b90505f7f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c905060605f5281602052806040526303312e3660635260a05ff35b5f6112f1611ab1565b5f8083815b81811015611408573687878381811061131157611311615792565b90506020028101906113239190615977565b90505f61133360208301836154f5565b90505f61134660408401602085016154f5565b90505f61135960a0850160808601615996565b905081331483331417156004821417871796505f61138d61138261137a8790565b610ab36104da565b866101400135610b30565b5f8181526001602052604090819020805461ffff19166101001781559051909a509091506001600160a01b0380851691908616907f6bacc01dbe442496068f7d234edd811f1a5f833243e0aec824f86ab861f3c90d906113f09085815260200190565b60405180910390a385600101955050505050506112f6565b5050801561141857611418612f35565b506001949350505050565b63a61be9f05f52806020526024601cfd5b5f8061143f5f6124cb565b611447612f42565b426101643511154261014435111715611475576321ccfeb75f5261014435602052610164356040526044601cfd5b610204356102643510156114905763466aa6165f526004601cfd5b7f42d81c6929ffdc4eb27a0808e40e82516ad42296c166065de7f812492304ff6e608081905260a08790526060602460c037604060646101203760e060802061016052610264356102043560051b6102a0016001820181526020810190508881526080602460208301376101608860a0528760c0525f60e0525f6102043593505f5b84811015611566578060400261028401602081610100376040816101203760208101358317925060208401935060e0608020845260a0850194508b85528a6020860152604081606087013750600101611512565b6001850160051b610160206060526102643594505b848110156115b6578060400261028401925060a0840193508a845289602085015260408360608601376020830135919091179060010161157b565b506001600160a01b038111156115d3576339f3e3fd5f526004601cfd5b50505050505f7fa66999307ad1bb4fde44d13a5d710bd7718e0c87c1eef68a571629fbf5b93d029050806080528360a052606060c460c0376020610104610120375060c06080205f9081526020812060e05260843590611647826001600160a01b03165f9081526020819052604090205490565b7ffa445660b7e21515a59617fcd68910b487aa5808b8abda3d78bc85df364b2c2f60808190529091506040608460a03760605161010052896101205260a061014461014037816101e05261018060802094505050506102043560051b61018001828152336020820152608060408201526101206060820152600160808201528360a0820152606060c460c083013760a061026435026101e00160a4356084357f9d9af8e38d66c62e2c12f0225249fd9d721c54b83f48d9352c97c6cacdcb6f318385a35f60605260608101820160405250505f61172383612f8d565b905061172f8389612fde565b7101000000000000000000000000000001000182559150509550959350505050565b60c43560843560e4356101043584156117b9575f6040519050632671a55160e11b815260206004820152600160248201528660448201528460648201528360848201523360a48201528260c48201528160e48201526117b38682610104613033565b50611801565b60028660058111156117cd576117cd615329565b036117f457806001146117e3576117e3816130ea565b6117ef848433856130fb565b611801565b61180184843385856131b0565b505050505050565b346064356084356102643560061b5f80805b8381101561185a5761028481013592506102a481013591508683111561184357611843613287565b82870396506118528284613294565b60400161181b565b508585111561186b5761186b613287565b6118758486613294565b848611156118015761180133868803613294565b61189381836132ca565b816118ba57826001146118a9576118a9836130ea565b6118b5878787876130fb565b6118cb565b6118cb828260028a8a8a8a8a6132e8565b50505050505050565b6118dd83613367565b6118e781836132ca565b816118f9576118b587878787876131b0565b6118cb828260038a8a8a8a8a6132e8565b5f805f805f861561192f57505060843592503391505060c4356101043560e435611944565b50339350506084359150506024356064356044355b801561195257611952613379565b50600586901b6101e403356102643560061b5f80805b838110156119a95761028481013592506102a481013591508a156119935761199083876159b4565b95505b6119a1878a8486898f613386565b604001611968565b506119b886898988888e613386565b50505050505050505050565b60408151146119d05750565b5f6119dc826020015190565b90506103dc81836133bb565b611a048260a4355b331415600182116004909210919091161690565b15611a5957805f611a13825190565b9050608081901c63ffffffff8216611a3484826317b1f94282526001905250565b601c840163fb5014fc6060529350611a5060a4358886856133df565b5f6060526118cb565b505050565b7f00000000000000000000000000000000000000000000000000000000000000018015611a8f575f63929eee145d50565b63929eee145480611aa5575f63929eee145d5050565b50600163929eee145550565b7f00000000000000000000000000000000000000000000000000000000000000018015611af05763929eee145c156103b057637fa8a9875f526004601cfd5b63929eee145480611b135763929eee145c156103dc57637fa8a9875f526004601cfd5b600181146103dc57637fa8a9875f526004601cfd5b80838337505050565b5f63ffffffff8235166040519150808252602082018160051b81018060a084026020870183378293505b81841015611b745780845260209093019260a001611b5b565b60405250919392505050565b9052565b5f63ffffffff8235166040519150808252602082018160051b81018060c084026020870183378293505b81841015611b745780845260209093019260c001611bae565b5f611bd960a060408051918201905290565b9050611be782826080611b28565b611c04611bfd611bf8846080610cdc565b613427565b6080830152565b919050565b5f63ffffffff8235166040519150808252602082018160051b8101808360061b6020870183378293505b81841015611b7457808452602090930192604001611c33565b60605f611c5960016124cb565b86515f90600160e61b82351690806001600160401b03811115611c7e57611c7e61574b565b604051908082528060200260200182016040528015611ca7578160200160208202803683370190505b50945060010160051b91505f60205b83811015611ea8575f611ccc8c83613cce6104da565b90505f805f611cdb848e61256c565b6001600160781b0382166020880152919450925090505f829003611d025750505050611ea0565b6001600160781b0381166040808601919091528a8601849052845160a081015160c0820151608083015192909301518051600184119d909d179c600490931099509092915f5b81811015611dea575f838281518110611d6357611d63615792565b602002602001015190508b8151108d179c505f611d858989846080015161345e565b90508160800151826060015103611da25760608201819052611db7565b611db18989846060015161345e565b60608301525b5f611dd08360600151838a8a611dcb361590565b61349a565b606084018190526080909301929092525050600101611d48565b5087516060015180515f5b81811015611e94575f838281518110611e1057611e10615792565b602002602001015190505f611e2a8b8b846080015161345e565b90508160800151826060015103611e475760608201819052611e5c565b611e568b8b846060015161345e565b60608301525b5f611e718360600151838c8c611dcb36151590565b6060840181905260a0840180516080909501949094529092525050600101611df5565b50505050505050505050505b602001611cb6565b50506001600160e61b018103611ec057611ec06134ed565b50611ecb8888612764565b5f8060205b8381101561200e578581015192508215612006575f611ef28c83613cce6104da565b9050885f03611f0d575f878301819052602090910152612006565b60048151608001516004811115611f2657611f26615329565b14611fa957611f3f8188866001600587901c038e6134fa565b611f55575f878301819052602090910152612006565b602080820151604083015183516080810151930151611f8e9388936001600160781b039081169316913314156001909111168e17612a2f565b611fa4575f878301819052602090910152612006565b611fd4565b611fbb815f015182608001518c612b33565b878301819052935083611fd4575f602090910152612006565b886001900398505f815f01519050611fff85825f015183602001518c85604001518660600151612df3565b6001935050505b602001611ed0565b508061201c5761201c613555565b5050509550959350505050565b85518551606091829161203c81836159c7565b6001600160401b038111156120535761205361574b565b60405190808252806020026020018201604052801561208c57816020015b61207961505a565b8152602001906001900390816120715790505b5092505f5b828110156120e4576120bf8c5f8d84815181106120b0576120b0615792565b60200260200101518c8c613562565b8482815181106120d1576120d1615792565b6020908102919091010152600101612091565b505f5b8181101561213d576121168c60018c848151811061210757612107615792565b60200260200101518c5f613562565b848483018151811061212a5761212a615792565b60209081029190910101526001016120e7565b5061214b8b84888a896135b1565b9350505097509795505050505050565b5f61216c6040808051918201905290565b905061218661218261217d84610aa3565b61389a565b8252565b611c046121976110a3846020610cdc565b6020830152565b5f6121b38260600151518361014001516138b9565b81516001600160a01b03165f90815260208190526040902054610402908390610b30565b82545f90610100900460ff16156121fe5781156121f7576121f7856138c9565b505f610622565b83546201000090046001600160781b0316801561225957831561222957612224866138da565b612259565b8454600160881b90046001600160781b0316811061225957821561225057612250866138eb565b5f915050610622565b50600195945050505050565b632165628a5f526004601cfd5b33831480156122815750505050565b5f61228a612e58565b61190160f01b5f9081526002828152602287815260428320908390528651939450929190601f601d840116106102e260621984011016156122f4576122cf86886138fc565b61190160f01b5f908152600286905260228281526042822091905290975090506122f7565b50815b612304888285858a613992565b5050505050505050565b5f61231f6040808051918201905290565b9050612330612182610d9d84610aa3565b611c04612197610d9d846020610cdc565b80518060051b6040019050602082038051602082527f4b9f2d36e1b4c93de62cc077b00b1a91d84b6c31b4a14e012718dcca230689e78383a190525050565b8351606090806001600160401b0381111561239d5761239d61574b565b6040519080825280602002602001820160405280156123d657816020015b6123c361505a565b8152602001906001900390816123bb5790505b5091505f5b81811015612439575f8782815181106123f6576123f6615792565b6020026020010151905061241389825f0151836020015185613adb565b84838151811061242557612425615792565b6020908102919091010152506001016123db565b5061244787838787876135b1565b50505b95945050505050565b6124608282610160611b28565b612471610aeb610ae6846040610cdc565b6103dc612482610b01846060610cdc565b6060830152565b6040518135601f0163ffffffe01660200180838337913563ffffffff16815290810160405290565b5f6124c3602060408051918201905290565b5f8152905090565b7f000000000000000000000000000000000000000000000000000000000000000180156125185763929eee145c1561250a57637fa8a9875f526004601cfd5b8160010163929eee145d5050565b63929eee14548061254a5763929eee145c1561253b57637fa8a9875f526004601cfd5b8260010163929eee145d505050565b6001811461255f57637fa8a9875f526004601cfd5b505060020163929eee1455565b5f805f80855f015190506125898160a001518260c0015187613c80565b61259c57505f925082915081905061275d565b602086015160408701516001600160781b0391821694501691505f6004826080015160048111156125cf576125cf615329565b036125fc57600183850218905080156125ea576125ea613ca3565b506001935083925082915061275d9050565b50818311831517801561261157612611613ca3565b608082015160011615848411161561262b5761262b613cb0565b6126348261219e565b5f81815260016020526040812091965061265290879083908a6121d7565b61266557505f935083925061275d915050565b805460ff1661268057612680835f0151878a60600151612272565b8054608881901c8061269457869150612757565b6001600160781b038260101c169150600186036126b8578181039650809550612757565b8086036126d357908601858103868211029096039590612757565b80860296810291909502810186810387821102918290039695919003906001600160781b0386111561275757612717565b5f5b8215610b2657908290069190612706565b61272a6127248784612704565b88612704565b8015019687900496909504946001600160781b0386111561275757634e487b715f5260116020526024601cfd5b50505050505b9250925092565b805182515f5b82811015612853575f84828151811061278557612785615792565b602002602001015190505f815f015190508381106127aa576127aa8260200151613cbd565b5f8782815181106127bd576127bd615792565b6020026020010151905080602001516001600160781b03165f036127e35750505061284b565b80516040808201519085015163bfb3f8ce5f8760200151600181111561280b5761280b615329565b14612827575f61281c856060613cce565b9350636088d7de9150505b8251821061283857805f526004601cfd5b612843838389613cd9565b505050505050505b60010161276a565b505f5b818110156128d6575f85828151811061287157612871615792565b6020026020010151905080602001516001600160781b03165f0361289557506128ce565b8051608081015160608201516128b29085908363a8930e9a613d8c565b6128ca8483604001518363d69293326104da613d8c90565b5050505b600101612856565b5050505050565b60a084015160c08501516040860151515f805b8281101561295a575f8960400151828151811061290f5761290f615792565b602002602001015190505f815f01519050801584179350505f612946826060015183608001518c8c8b8b612941361590565b613df3565b6060830152506080018690526001016128f0565b5060808801516004811082168015612974576129746134ed565b505050506060860151515f5b81811015612304575f8860600151828151811061299f5761299f615792565b602002602001015190505f6129c4826060015183608001518b8b8a8a61294136151590565b60608301525060a0810151608090910152600101612980565b8351608081015160208201513314156001821160049092109190911616156128d6575f80612a12858489608001518988613e2e565b63fb5014fc6060529092509050611a5083602001518684846133df565b5f848152600160205260408120805482908290608881901c80612a5457889150612adc565b6001600160781b038260101c169150808803612a7857908801878111935090612adc565b97880297808802979190910288018781119350906001600160781b038083119089111715612adc57612aaa8883612704565b8015019788900497909104906001600160781b038083119089111715612adc57634e487b715f5260116020526024601cfd5b508215612b15578515612b09576040516310fda3e160e01b8152600481018a905260240160405180910390fd5b5f945050505050610622565b8660881b8160101b1760011782556001945050505050949350505050565b5f83610140015184606001515114612b4d57612b4d612265565b83515f8080612b5c8888613fac565b915091505f8082845f885af16001600160a01b0385165f908152600260205260409020805460018101909155606086901b189550925082612bbb578515612bae57612ba5614056565b612bae8561409d565b505f93506104f192505050565b505050505f805f612bd8876040015188606001516104da6140ae90565b925092509250825f14612bee57612bee8461409d565b60408701919091526060860152509392505050565b6040805160208082528183019092525f916020820181803683375050506040850151519091505f5b81811015612c7b575f86604001518281518110612c4a57612c4a615792565b60200260200101519050846080820152612c7281885f0151896101200151876104da61432790565b50600101612c2b565b50506060840151515f90815b81811015612d09575f87606001518281518110612ca657612ca6615792565b602002602001015190505f6005811115612cc257612cc2615329565b81516005811115612cd557612cd5615329565b03612cf1574793508381606001511115612cf157612cf1613287565b612d00813389886143276104da565b50600101612c87565b5050612d14826119c4565b504780156128d6576128d63382613294565b8251608081015160208201515f92839283928392916004811060019091111633909114151615612d8857612d69612d6361010083015190565b5190565b8861441c565b9093509150612d7a60208201612d5f565b945063fb5014fc9350612dd4565b600481608001516004811115612da057612da0615329565b0361230457805194505f8560601b9050612dc187838b608001518b8561445d565b639397928596509094509250612dd49050565b612dde6060859052565b612dea858785856133df565b5f606052612304565b60608290506060829050856001600160a01b0316876001600160a01b03167f9d9af8e38d66c62e2c12f0225249fd9d721c54b83f48d9352c97c6cacdcb6f318a888686604051612e469493929190615a13565b60405180910390a35050505050505050565b5f7f00000000000000000000000000000000000000000000000000000000000005394614612f10575060408051608080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f5f9081527f32b5c112df393a49218d7552f96b2eeb829dfb4272f4f24eef510a586b85feef6020527f95f740a33d720b7cd93c75d515ac95ca3bbaa2594cce46ea48e00974ea8fcd14855246606090815230845260a08220949095529093529190915290565b507f8bebed3dbe91a82da0dc94c8d370c160ad6db1b32164303e65b8544bae7e2f5590565b63fed398fc5f526004601cfd5b600435602014610224356102401416610244356102606102643560061b01141660186101243510600160a01b60843560a4351760c4356024351717101616806103b0576103b0614528565b5f8181526001602081905260409091209060843590612fb290849084903615156121d7565b50815460ff16610b2657610b268184612fd9602463ffffffff6102443516016124896104da565b612272565b5f612feb8260a4356119f0565b15610402575f805f612ffc86614535565b63fb5014fc6060529194509250905061301c60a43587601c8601856133df565b5f60605260209190910160801b1781529392505050565b604080517f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c60ff60a01b175f90815260208690527f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f83526055600b20919092526001600160a01b031690505f805f805260205f85875f875af191505f519050816130c8576130bf614056565b6130c8836145ed565b6001600160e01b03198116632671a55160e11b146118015761180186846145fe565b6369f958275f52806020526024601cfd5b833b61311257635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af1806131a2573d1561318057601f3d0160051c8260051c8160030281831115613169578183036003028280028480020360091c01015b5a60208201101561317c573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b6131c757635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af18061326c573d1561324b57601f3d0160051c8560051c8160030281831115613234578183036003028280028480020360091c01015b5a602082011015613247573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b638ffff9805f526004601cfd5b61329d81613367565b5f805f805f85875af1905080611a59576132b5614056565b63bc806b965f5282602052816040526044601cfd5b5f6132d6836020015190565b9050818114611a5957611a59836119c4565b5f60208851036133225750604080885260208089018a9052632671a55160e11b918901919091526044880152600160648801819052613331565b50606487018051600101908190525b603c60c082028901038781528660208201528560408201528460608201528360808201528260a082015250505050505050505050565b806103b0576391b3e5145f526004601cfd5b636ab37ce75f526004601cfd5b61338f83613367565b61339981836132ca565b816133aa576117ef86868686614613565b611801828260018989895f8a6132e8565b6064810151604082019060c0026044016133d6848383613033565b50506020905250565b5f806001600160e01b03198451165f805260205f85875f8b5af15f51909350149050816134185761340e614056565b846080526024607cfd5b8061180157846080526024607cfd5b5f8063ffffffff83351690506001810160051b61344a8160408051918201905290565b9250613457848483611b28565b5050919050565b5f82840361346d5750806104f1565b82848309156134835763c63cf0895f526004601cfd5b5f61348e8584615aaf565b93909304949350505050565b5f8486146134e357838303428590038082035f6134b7838a615aaf565b6134c1838c615aaf565b6134cb91906159c7565b9050858487830304018115150294505050505061244a565b5092949350505050565b6312d3f5a35f526004601cfd5b8451608081015160208201515f92916004811060019091111633909114151615610f50575f8061353187848b608001518b8a613e2e565b9150915061354b836020015188848463fb5014fc8a614707565b935050505061244a565b63d5da9a1b5f526004601cfd5b61356a61505a565b83515f0361357b5761357b85614774565b5f85600181111561358e5761358e615329565b036135a45761359f86858385614785565b61244a565b61244a86858333876148f5565b84516060905f816001600160401b038111156135cf576135cf61574b565b6040519080825280602002602001820160405280156135f8578160200160208202803683370190505b506040805160208082528183019092529192505f9190602082018180368337505089519192505060010160051b60205b81811015613687575f61363e8b83613cce6104da565b8051606081015191925090801561367c57478111825115161561366857638ffff9805f526004601cfd5b61367c828460200151856040015189614327565b505050602001613628565b50505f5b838110156137f3575f8a82815181106136a6576136a6615792565b6020026020010151905080602001516001600160781b03165f036136ed575f8483815181106136d7576136d7615792565b91151560209283029190910190910152506137eb565b600184838151811061370157613701615792565b911515602092830291909101909101528051604081015180515f5b81811015613786575f83828151811061373757613737615792565b6020026020010151905080606001515f1461377357608081018051908e9052855161012087015161376d9184918c6143276104da565b60808201525b608081015160609091015260010161371c565b505050606081015180515f5b818110156137e5575f8382815181106137ad576137ad615792565b602002602001015190505f81606001519050805f146137d1576137d1888483614a2c565b5060a0810151606090910152600101613792565b50505050505b60010161368b565b506137fd816119c4565b47801561380e5761380e3382613294565b8515613884575f5b848110156138825783818151811061383057613830615792565b60200260200101511561387a5761387a8b828151811061385257613852615792565b60200260200101518a8b848151811061386d5761386d615792565b6020026020010151612d26565b600101613816565b505b61388c611a5e565b509098975050505050505050565b5f6138ad61016060408051918201905290565b9050611c048282612453565b808210156103dc576103dc614a45565b631a5155745f52806020526024601cfd5b63ee9e0e635f52806020526024601cfd5b6310fda3e15f52806020526024601cfd5b5f805f84516001811660410380820360051c9250808752806020018701915050805160e81c6003820191506001811660051b868152825160208218525060015b838110156139685760405f2082821c60051b60209081169182529384018051919094185260010161393c565b50505060405f2091505f61397b82614a52565b5f9081526020939093525050604090209392505050565b5f805f528151602083038051826041035f600182116139f557604087015160608801515f1a83156139d657601b8260ff1c0190506001600160ff1b03821660408a01525b88528a855260205f60808760015afa508385528588526040880152505f515b8a148a1515169450849050613abe57858552604082526044850380516040870351630b135d3f60e11b835289604089035260205f60648b01858f5afa96508615613ab257630b135d3f60e11b5f5114613ab2578b3b15613a5c57634f7fb80d5f526004601cfd5b6001866041031115613a7557638baa579f5f526004601cfd5b64010100000060608901515f1a1a15604187141615613aa557631f003d0a5f5260608801515f1a6020526024601cfd5b63815e1d645f526004601cfd5b8385529152603f198601525b5050508061180157613ace614056565b634f7fb80d5f526004601cfd5b613ae361505a565b8251158451151715613afc576398e9db6e5f526004601cfd5b613b0461505a565b613b118685835f806148f5565b805160608101515f03613b2657509050610622565b613b368787858460800151614785565b82516040828101519082015160208085015190840151855185511891181791181715613b6d5763bced929d5f52846020526024601cfd5b806060015182606001511115613bf4575f865f81518110613b9057613b90615792565b60200260200101519050816060015183606001510389825f015181518110613bba57613bba615792565b60200260200101515f015160600151826020015181518110613bde57613bde615792565b6020026020010151606001818152505050613c75565b5f875f81518110613c0757613c07615792565b60200260200101519050826060015182606001510389825f015181518110613c3157613c31615792565b60200260200101515f015160400151826020015181518110613c5557613c55615792565b602002602001015160600181815250508260600151826060018181525050505b505050949350505050565b428084111590831116818015613c94575080155b156104f1576104f18484614e61565b635a052b325f526004601cfd5b63a11b63ff5f526004601cfd5b63133c37c65f52806020526024601cfd5b5f6104f18284015190565b5f838381518110613cec57613cec615792565b602002602001015190505f815f01519050613d078160031090565b613d1357613d13614e76565b60408201518015613d3657613d318460600151828660800151614e83565b613d49565b60808401515115613d4957613d49614ecd565b6004821460030383816005811115613d6357613d63615329565b90816005811115613d7657613d76615329565b9052505050606090920151604090910152505050565b82515f5b81811015611801575f858281518110613dab57613dab615792565b60209081029190910101518051604082015191925090600382116004881415821515171615613de557855f5288602052836040526044601cfd5b505050806001019050613d90565b5f868803613e0d57613e0686868961345e565b90506107df565b6107dc613e1b87878b61345e565b613e2688888b61345e565b86868661349a565b5f805f613e39614eda565b6301e4d72a815260208082015260408101898152336060830152601c820194509091508751604082015287613e79613e7260a083015190565b60e0840152565b613e8f613e8760c083015190565b610100840152565b613ea5613e9d60e083015190565b610120840152565b610140613eb3816060850152565b5f613ebf604084015190565b90505f613ece82848701614ee4565b928301929050613edf836080870152565b5f613eeb606086015190565b90505f613efa82868901614f4a565b948501949050613f0b8560a0890152565b5f613f188e878a01614faf565b959095019450613f298560c0890152565b8685015f613f378e83614fce565b602497019687019a50613f539050613f4e8c8c0190565b614ffe565b8060408b901b60808b901b17178f610100018181525050613f7d8c82611b8090919063ffffffff16565b60058c8e51613f8c91906159b4565b613f97911b8b6159b4565b99505050505050505050509550959350505050565b5f8083613fb7614eda565b639891976581523360208201908152608060408301819052601c9092019450905f613fe3604085015190565b90505f613ff282848601614ee4565b928301929050614003836040860152565b5f61400f606087015190565b90505f61401e82868801614ee4565b94850194905061402f856060880152565b895f61403d82898901614faf565b9a9d96909a016004019b50949950505050505050505050565b3d1561409b57601f3d0160051c60405160051c8160030281831115614088578183036003028280028480020360091c01015b5a602082011015611a59573d5f803e3d5ffd5b565b63939792855f52806020526024601cfd5b60603d105f8080808080866141205760405f803e5f51935060205192503d60208501113d60208501118082179850505086614120576020845f3e5f51915060208360203e60205190508160071b60208501018160a0026020850101803d10823d101761ffff8486171117985050505f80525b86614152575f8061413584602088018d61415b565b9250975061414783602087018c61423b565b929092179850909550505b5050505061275d565b5f806040519150825160c08602602001830160405285835260208660010160051b8085018360010160051b8701614199858b81811090829003020190565b60010160051b8a861196505b808510156141f957828589015260808a843e6060830151955085608084015260608201518681116141d685856142e2565b17881797505060808a01995060a08301925060a0820191506020850194506141a5565b50505b8183101561422f578083870152608088823e6060810151608082015260808801975060a0810190506020830192506141fc565b50505050935093915050565b604051815180851190808603818710028101602060e08202850181016040528185526001928301600590811b87019390920190911b908185015b8282101561422f57808287015260a088823e60206060890160a083013e606081015160608501516142b26080840151608088015180159114171590565b818311176142c084886142e2565b60a09b909b019a179690961795505060c0938401936020929092019101614275565b5f81516040830151801560038311161561430457506040840151600119909101905b604085015181148551831460208701516020870151141616159250505092915050565b5f8451600581111561433b5761433b615329565b0361437857604084015160208501516001600160a01b0316171561436157614361613379565b61437384608001518560600151613294565b614416565b60018451600581111561438d5761438d615329565b036143be576040840151156143a4576143a4613379565b614373846020015184866080015187606001518686613386565b6002845160058111156143d3576143d3615329565b036143f7576143738460200151848660800151876040015188606001518787611889565b61441684602001518486608001518760400151886060015187876118d4565b50505050565b608082901c63ffffffff604084901c811690808516906144449084906317b1f94290611b8016565b601c830192506144548482614fce565b50509250929050565b5f80614467614eda565b63f4dd92ce815287841860a0820152601c8101925060200160a0808252875f614491604083015190565b90505f6144a082858701614ee4565b9384019390506144b1846020870152565b5f6144bd606085015190565b90505f6144cc82878901614f4a565b9586019590506144dd866040890152565b5f6144ea8d888a01614faf565b9687019690506144fb8760608a0152565b5f6145088d898b01614fce565b905080880197508760040199505050505050505050509550959350505050565b6339f3e3fd5f526004601cfd5b6301e4d72a6102043560051b6080019081525f808260208082015260408101858152336060830152601c919091019061456f608435610aeb565b61458061014460e083016060611b28565b61014061458e816060840152565b61459c60a082016080840152565b61016060a06102643581029290920101906145b8908290840152565b6145c25f82840152565b6020016145d08160c0840152565b5f9181019182526020820196909652939560449095019492505050565b63d13d53d45f52806020526024601cfd5b631cf99b265f5281602052806040526044601cfd5b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166146f85780873b1515166146f857806146e757816146ca573d156146a957601f3d0160051c8360051c8160030281831115614692578183036003028280028480020360091c01015b5a6020820110156146a5573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b5f805f6001600160e01b03198751165f805260205f888a5f8e5af15f5190935014905081614753578361473e575f925050506106d7565b614746614056565b845f52876020526024601cfd5b8061476557845f52876020526024601cfd5b50600198975050505050505050565b63375c24c15f52806020526024601cfd5b5f805f85865160051b87015b808210156148a2576020820191508851825151106147b1576147b16148d6565b81515160051b60208a01015180516020845101515f6040830151602085015115815184101517156147e6575050505050614791565b8260051b60208201015191505060608101935083518901915083511589831060011b17881797508198505f84528a51935086156001811461484f5760608220881860408d01516101208601511860208e015186511817171561484a5761484a6148d6565b614898565b8151855260208201516020860152604082015160408601528a6080860152835160208d015261012084015160408d015260608520975060208d0192508683181561489857865183525b5050505050614791565b5050508160608551015280156148cf57600181036148c7576391b3e5145f526004601cfd5b6148cf6148e3565b5050614416565b637fda72795f526004601cfd5b634e487b715f5260116020526024601cfd5b5f805f86875160051b88015b808210156149f7576020820191508151518a518110614922576149226148d6565b8060051b60208c01015190506020835101515f606083510151602084015115815184101517156149555750505050614901565b8260051b60208201015191505060608101925082518801915082511588831060011b17871796508197505f83528a5192508515600181146149a75760a0822087146149a2576149a26148d6565b6149ee565b815184526020820151602085015260408201516040850152608082015160808501528a60208d01528960408d015260a08220965060208d019250858318156149ee57855183525b50505050614901565b50508551606001839052508015614a255760018103614a1d576391b3e5145f526004601cfd5b614a256148e3565b50506128d6565b63a5f542085f528260205281604052806060526064601cfd5b63466aa6165f526004601cfd5b5f614e58565b5f6009821015614bb1576005821015614b0e576003821015614ac1577f832c58a5b611aadcfa6a082ac9d04bace53d8278387f10040347b7e98eb5b30260018314027fbf8e29b89f29ed9b529c154a63038ffca562f8d7cd1e2545dda53a1b582dde3018610402565b7ff3e8417a785f980bdaf134fa0274a6bf891eeb8195cd94b09d2aa651046e28bc60038314027fa02eb7ff164c884e5e2c336dc85f81c6a93329d8e9adf214b32729b894de2af118610402565b6007821015614b64577f25d02425402d882d211a7ab774c0ed6eca048c4d03d9af40132475744753b2a360058314027f1c19f71958cdd8f081b4c31f7caf5c010b29d12950be2fa1c95070dc47e30b5518610402565b7fb58d772fb09b426b9dece637f61ca9065f2b994f1464b51e9207f55f7c8f594860078314027f7ff98d9d4e55d876c5cfac10b43c04039522f3ddfb0ea9bfe70c68cfb5c7cc1418610402565b6011821015614d0957600d821015614c6657600b821015614c19577f6f0ec38c21f6f583ab7f3c5413c773ffd5344c34fde1d390958e438bf667448f60098314027fd1d97d1ef5eaa37a4ee5fbf234e6f6d64eb511eb562221cd7edfbdde0848da0518610402565b7f32f4e7485d6485f9f6c255929b9905c62ba919758bbe231f231eaeecf33d810c600b8314027fbb98d87cc12922b83759626c5f07d72266da9702d19ffad6a514c73a89002f5f18610402565b600f821015614cbc577f8df51df98847160517f5b1186b4bc3f418d98b8a7f17f1292f392d79d600d79e600d8314027f6b5b04cbae4fcb1a9d78e7b2dfc51a36933d023cf6e347e03d517b472a85259018610402565b7fcc4886e37eedd9aacd6c1c2c9247197a621a71282e87a7cbc673f3736d9aa141600f8314027f1da3eed3ecef6ebaa6e5023c057ec2c75150693fd0dac5c90f4a142f9879fde818610402565b6015821015614db5576013821015614d68577f2d7a3ed6dab270fdb8e054b2ad525f0ce2a8b89cc76c17f0965434740f673a5560118314027fc3939feff011e53ab8c35ca3370aad54c5df1fc2938cd62543174fa6e7d8587718610402565b7f54b3212a178782f104e0d514b41a9a5c4ca9c980bf6597c3cecbf280917e202a60138314027f5a4f867d3d458dabecad65f6201ceeaba0096df2d0c491cc32e6ea4e6435001718610402565b6017821015614e0b577fbb40bf8cea3a5a716e2b6eb08bbdac8ec159f82f380783db3c56904f15a43d0460158314027f3bd8cff538aba49a9c374c806d277181e9651624b3e31111bc0624574f8bca1d18610402565b7f403be09941a31d05cfc2f896505811353d45d38743288b016630cce39435476a60178314027f1d51df90cba8de7637ca3e8fe1e3511d1dc2f23487d05dbdecb781860c21ac1c18610402565b61040282614a58565b6321ccfeb75f5281602052806040526044601cfd5b6394eb6af65f526004601cfd5b5f835f5260205f2060208301835160051b81015b80821015614ebe57815180841160051b93845260209384185260405f209290910190614e97565b50508314905080614416576144165b6309bde3395f526004601cfd5b5f61041260405190565b5f825180835260208401602084018260051b82015b80831015614f375782518051835260208101516020840152604081015160408401526060810151606084015250602083019250608082019150614ef9565b5050508060071b60200191505092915050565b5f80614f54845190565b8084529050602084810190600583901b860181019085015b82821115614f9c575f614f7e84615008565b9050614f8c818360a0615011565b506020929092019160a001614f6c565b60a0840260200194505050505092915050565b5f63ffffffe0603f614fbf855190565b01169050610402838383615011565b5f80614fd8845190565b8084529050600581901b614ff3602086810190860183615011565b602001949350505050565b6103b06040829052565b5f610402825190565b8082828560045afa80153d151715614416575f80fd5b6040518060a0016040528061503a61509c565b81525f602082018190526040820152606080820181905260809091015290565b60408051610100810182525f606082018181526080830182905260a0830182905260c0830182905260e083018290528252602082018190529181019190915290565b6040518061016001604052805f6001600160a01b031681526020015f6001600160a01b0316815260200160608152602001606081526020015f60048111156150e6576150e6615329565b81525f6020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b5f60208284031215615125575f80fd5b81356001600160401b0381111561513a575f80fd5b820161024081850312156104f1575f80fd5b5f81518084525f5b8181101561517057602081850181015186830182015201615154565b505f602082860101526020601f19601f83011685010191505092915050565b602081525f6104f1602083018461514c565b5f602082840312156151b1575f80fd5b5035919050565b5f602082840312156151c8575f80fd5b81356001600160401b038111156151dd575f80fd5b820161016081850312156104f1575f80fd5b5f8083601f8401126151ff575f80fd5b5081356001600160401b03811115615215575f80fd5b6020830191508360208260051b850101111561522f575f80fd5b9250929050565b80356001600160a01b0381168114611c04575f80fd5b5f805f805f805f805f805f60e08c8e031215615266575f80fd5b6001600160401b03808d35111561527b575f80fd5b6152888e8e358f016151ef565b909c509a5060208d013581101561529d575f80fd5b6152ad8e60208f01358f016151ef565b909a50985060408d01358110156152c2575f80fd5b6152d28e60408f01358f016151ef565b909850965060608d01358110156152e7575f80fd5b506152f88d60608e01358e016151ef565b909550935060808c0135925061531060a08d01615236565b915060c08c013590509295989b509295989b9093969950565b634e487b7160e01b5f52602160045260245ffd5b60068110611b8057611b80615329565b61535882825161533d565b6020818101516001600160a01b0390811691840191909152604080830151908401526060808301519084015260809182015116910152565b5f815180845260208085019450602084015f5b838110156153e55781516153b888825161534d565b808401516001600160a01b031660a08901526040015160c088015260e090960195908201906001016153a3565b509495945050505050565b604080825283519082018190525f906020906060840190828701845b8281101561542a57815115158452928401929084019060010161540c565b50505083810360208501526106d78186615390565b5f8060208385031215615450575f80fd5b82356001600160401b03811115615465575f80fd5b615471858286016151ef565b90969095509350505050565b5f805f8060408587031215615490575f80fd5b84356001600160401b03808211156154a6575f80fd5b6154b2888389016151ef565b909650945060208701359150808211156154ca575f80fd5b506154d7878288016151ef565b95989497509550505050565b602081525f6104f16020830184615390565b5f60208284031215615505575f80fd5b6104f182615236565b5f806040838503121561551f575f80fd5b82356001600160401b03811115615534575f80fd5b830160408186031215615545575f80fd5b946020939093013593505050565b5f805f805f60808688031215615567575f80fd5b85356001600160401b038082111561557d575f80fd5b9087019060a0828a031215615590575f80fd5b909550602087013590808211156155a5575f80fd5b506155b2888289016151ef565b909550935050604086013591506155cb60608701615236565b90509295509295909350565b5f805f805f805f8060a0898b0312156155ee575f80fd5b88356001600160401b0380821115615604575f80fd5b6156108c838d016151ef565b909a50985060208b0135915080821115615628575f80fd5b6156348c838d016151ef565b909850965060408b013591508082111561564c575f80fd5b506156598b828c016151ef565b999c989b509699959896976060870135966080013595509350505050565b5f805f805f805f6080888a03121561568d575f80fd5b87356001600160401b03808211156156a3575f80fd5b6156af8b838c016151ef565b909950975060208a01359150808211156156c7575f80fd5b6156d38b838c016151ef565b909750955060408a01359150808211156156eb575f80fd5b506156f88a828b016151ef565b909450925061570b905060608901615236565b905092959891949750929550565b606081525f61572b606083018661514c565b6020830194909452506001600160a01b0391909116604090910152919050565b634e487b7160e01b5f52604160045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b5f8261578d57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f815180845260208085019450602084015f5b838110156153e55781516157ce88825161533d565b838101516001600160a01b03168885015260408082015190890152606080820151908901526080908101519088015260a090960195908201906001016157b9565b5f815180845260208085019450602084015f5b838110156153e557815161583788825161533d565b808401516001600160a01b0390811689860152604080830151908a0152606080830151908a0152608080830151908a015260a091820151169088015260c09096019590820190600101615822565b60058110611b8057611b80615329565b828152604060208201526158b56040820183516001600160a01b03169052565b5f60208301516158d060608401826001600160a01b03169052565b5060408301516101608060808501526158ed6101a08501836157a6565b91506060850151603f198584030160a086015261590a838261580f565b925050608085015161591f60c0860182615885565b5060a085015160e085015260c0850151610100818187015260e0870151915061012082818801528188015192506101409150828288015280880151848801525080870151610180870152505050809150509392505050565b5f823561015e1983360301811261598c575f80fd5b9190910192915050565b5f602082840312156159a6575f80fd5b8135600581106104f1575f80fd5b818103818111156104025761040261575f565b808201808211156104025761040261575f565b5f815180845260208085019450602084015f5b838110156153e557615a0087835161534d565b60a09690960195908201906001016159ed565b5f6080808301878452602060018060a01b03808916602087015260406080604088015283895180865260a08901915060208b0195505f5b81811015615a8b578651615a5f84825161533d565b808701518616848801528481015185850152606090810151908401529585019591870191600101615a4a565b50508781036060890152615a9f818a6159da565b9c9b505050505050505050505050565b80820281158282048414176104025761040261575f56fea164736f6c6343000818000a","storage":{}},"0x6265cc8d1b28edfd4d76c80bf774c0d446fffbde":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610090575f3560e01c80633f15457f116100635780633f15457f1461010f5780637adbf973146101225780637dc0d1d0146101355780638bbedf7514610147578063be27b22c1461015a575f80fd5b806301ffc9a7146100945780631ecfc411146100bc578063224199c2146100d157806330349ebe146100e4575b5f80fd5b6100a76100a23660046115b1565b61016d565b60405190151581526020015b60405180910390f35b6100cf6100ca3660046115ef565b6101a3565b005b6100cf6100df3660046117e0565b6102de565b6002546100f7906001600160a01b031681565b6040516001600160a01b0390911681526020016100b3565b6001546100f7906001600160a01b031681565b6100cf6101303660046115ef565b61063c565b5f546100f7906001600160a01b031681565b6100cf610155366004611889565b61076d565b6100cf61016836600461190b565b6107f1565b5f6001600160e01b031982166301ffc9a760e01b148061019d57506001600160e01b031982166317d8f49b60e01b145b92915050565b6001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa1580156101ea573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061020e919061196b565b90505f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561024d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610271919061196b565b9050336001600160a01b03821614610287575f80fd5b600280546001600160a01b0319166001600160a01b0385169081179091556040519081527f9176b7f47e4504df5e5516c99d90d82ac7cbd49cc77e7f22ba2ac2f2e3a3eba8906020015b60405180910390a1505050565b5f546040516321ae60b160e11b81526001600160a01b039091169063435cc1629061030f90879087906004016119d3565b5f604051808303815f875af115801561032a573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526103519190810190611a6b565b92505f805f610360888761088b565b91945092509050336001600160a01b038216146103da5760405162461bcd60e51b815260206004820152602d60248201527f4f6e6c79206f776e65722063616e2063616c6c2070726f7665416e64436c616960448201526c36abb4ba342932b9b7b63b32b960991b60648201526084015b60405180910390fd5b6001600160a01b038416156105bb576001600160a01b03851661044e5760405162461bcd60e51b815260206004820152602660248201527f43616e6e6f74207365742061646472206966207265736f6c766572206973206e6044820152651bdd081cd95d60d21b60648201526084016103d1565b6001546040516305ef2c7f60e41b815260048101859052602481018490523060448201526001600160a01b0387811660648301525f608483015290911690635ef2c7f09060a4015f604051808303815f87803b1580156104ac575f80fd5b505af11580156104be573d5f803e3d5ffd5b505050505f83836040516020016104df929190918252602082015260400190565b60408051808303601f1901815290829052805160209091012062d5fa2b60e81b8252600482018190526001600160a01b03878116602484015290925087169063d5fa2b00906044015f604051808303815f87803b15801561053e575f80fd5b505af1158015610550573d5f803e3d5ffd5b5050600154604051635b0fc9c360e01b8152600481018590526001600160a01b0386811660248301529091169250635b0fc9c391506044015f604051808303815f87803b15801561059f575f80fd5b505af11580156105b1573d5f803e3d5ffd5b5050505050610632565b6001546040516305ef2c7f60e41b815260048101859052602481018490526001600160a01b03838116604483015287811660648301525f608483015290911690635ef2c7f09060a4015f604051808303815f87803b15801561061b575f80fd5b505af115801561062d573d5f803e3d5ffd5b505050505b5050505050505050565b6001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa158015610683573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106a7919061196b565b90505f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106e6573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061070a919061196b565b9050336001600160a01b03821614610720575f80fd5b5f80546001600160a01b0319166001600160a01b0385169081179091556040519081527fb3eacd0e351fafdfefdec84e1cd19679b38dbcd63ea7c2c24da17fd2bc3b3c0e906020016102d1565b5f546040516321ae60b160e11b81526001600160a01b039091169063435cc1629061079e90859085906004016119d3565b5f604051808303815f875af11580156107b9573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526107e09190810190611a6b565b90506107ec83826107f1565b505050565b5f805f6107fe858561088b565b6001546040516306ab592360e01b815260048101859052602481018490526001600160a01b03808416604483015294975092955090935091909116906306ab5923906064016020604051808303815f875af115801561085f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108839190611add565b505050505050565b5f8080806108998682610a40565b60ff1690506108aa86600183610a63565b92505f6108dc6108bb836001611b08565b6001848a516108ca9190611b1b565b6108d49190611b1b565b899190610a85565b6002546040516327c482cf60e11b81529192506001600160a01b031690634f89059e9061090d908490600401611b2e565b602060405180830381865afa158015610928573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061094c9190611b40565b6109a45760405162461bcd60e51b815260206004820152602360248201527f506172656e74206e616d65206d7573742062652061207075626c6963207375666044820152620ccd2f60eb1b60648201526084016103d1565b6109ae815f610b05565b5f549095506109c7906001600160a01b03168888610de3565b5060408051602081018890529081018690529093506001600160a01b03841690606001604051602081830303815290604052805190602001207fa2e66ce20e6fb2c4f61339c364ad79f15160cf5307230c8bc4d628adbca2ba3989604051610a2f9190611b2e565b60405180910390a350509250925092565b5f828281518110610a5357610a53611b5f565b016020015160f81c905092915050565b82515f90610a718385611b08565b1115610a7b575f80fd5b5091016020012090565b8251606090610a948385611b08565b1115610a9e575f80fd5b5f8267ffffffffffffffff811115610ab857610ab861160a565b6040519080825280601f01601f191660200182016040528015610ae2576020820181803683370190505b50905060208082019086860101610afa82828761100b565b509095945050505050565b5f80610b118484610a40565b60ff169050805f03610b2657505f905061019d565b5f610b4585610b358487611b08565b610b40906001611b08565b610b05565b90505f610b5e610b56866001611b08565b879085610a63565b604080516020810185905290810182905290915060600160408051808303601f190181529082905280516020909101206001546302571be360e01b8352600483018290529095505f916001600160a01b03909116906302571be390602401602060405180830381865afa158015610bd7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bfb919061196b565b90506001600160a01b0381161580610c1b57506001600160a01b03811630145b610c7a5760405162461bcd60e51b815260206004820152602a60248201527f43616e6e6f7420656e61626c652061206e616d65206f776e656420627920736f6044820152696d656f6e6520656c736560b01b60648201526084016103d1565b6001600160a01b0381163014610dd95782610d5e576001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa158015610cd6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cfa919061196b565b60405163232e3b3b60e21b8152600481018590523060248201529091506001600160a01b03821690638cb8ecec906044015f604051808303815f87803b158015610d42575f80fd5b505af1158015610d54573d5f803e3d5ffd5b5050505050610dd9565b6001546040516306ab592360e01b815260048101859052602481018490523060448201526001600160a01b03909116906306ab5923906064016020604051808303815f875af1158015610db3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610dd79190611add565b505b5050505092915050565b5f80610e016040518060400160405280606081526020015f81525090565b610e1985516005610e129190611b08565b8290611060565b50604080518082019091526005815264045f656e7360d81b6020820152610e419082906110c3565b50610e4c81866110c3565b50805160405163021e646f60e21b81525f9182916001600160a01b038a169163087991bc91610e8091601091600401611b73565b606060405180830381865afa158015610e9b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ebf9190611ba7565b93509150506bffffffffffffffffffffffff198216158015610ee057508551155b15610ef3575f8094509450505050611003565b855160208701206bffffffffffffffffffffffff19838116911614610f16575f80fd5b5f610f2187826110ef565b90505b80515160208201511015610ff857610f4b816080015183610f459190611bfc565b4261114a565b610fbd5760405162461bcd60e51b815260206004820152603c60248201527f444e53207265636f7264206973207374616c653b2072656672657368206f722060448201527f64656c657465206974206265666f72652070726f63656564696e672e0000000060648201526084016103d1565b5f80610fcd898460a00151611162565b925090508115610fe857965060019550611003945050505050565b5050610ff3816111d1565b610f24565b505f80945094505050505b935093915050565b602081106110435781518352611022602084611b08565b925061102f602083611b08565b915061103c602082611b1b565b905061100b565b905182516020929092036101000a5f190180199091169116179052565b60408051808201909152606081525f602082015261107f602083611c20565b156110a75761108f602083611c20565b61109a906020611b1b565b6110a49083611b08565b91505b506020828101829052604080518085525f815290920101905290565b60408051808201909152606081525f60208201526110e883845f0151518485516112b6565b9392505050565b6111376040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261019d816111d1565b5f806111568385611c3f565b60030b12159392505050565b5f805b83518310156111c4575f6111798585610a40565b60ff169050611189600185611b08565b93505f8061119887878561139c565b9250905081156111b0579350600192506111ca915050565b6111ba8387611b08565b9550505050611165565b505f9050805b9250929050565b60c081015160208201819052815151116111e85750565b5f6111fa825f015183602001516113f5565b82602001516112099190611b08565b82519091506112189082611454565b61ffff16604083015261122c600282611b08565b825190915061123b9082611454565b61ffff16606083015261124f600282611b08565b825190915061125e908261147a565b63ffffffff166080830152611274600482611b08565b82519091505f906112859083611454565b61ffff169050611296600283611b08565b60a0840181905291506112a98183611b08565b60c0909301929092525050565b60408051808201909152606081525f602082015282518211156112d7575f80fd5b60208501516112e68386611b08565b11156113195761131985611309876020015187866113049190611b08565b6114a2565b611314906002611c66565b6114b8565b5f808651805187602083010193508088870111156113375787860182525b505050602084015b602084106113775780518252611356602083611b08565b9150611363602082611b08565b9050611370602085611b1b565b935061133f565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b5f806113a8858561147a565b63ffffffff1663613d3078146113c257505f905080611003565b602c8310156113d557505f905080611003565b6113e9856113e4866004611b08565b6114d5565b91509150935093915050565b5f815b8351811061140857611408611c7d565b5f6114138583610a40565b60ff169050611423816001611b08565b61142d9083611b08565b9150805f0361143c5750611442565b506113f8565b61144c8382611b1b565b949350505050565b81515f90611463836002611b08565b111561146d575f80fd5b50016002015161ffff1690565b81515f90611489836004611b08565b1115611493575f80fd5b50016004015163ffffffff1690565b5f818311156114b257508161019d565b50919050565b81516114c48383611060565b506114cf83826110c3565b50505050565b5f8060288385516114e69190611b1b565b10156114f657505f9050806111ca565b5f835b611504856028611b08565b8110156115a55760049190911b905f61151d8783610a40565b60ff169050603081101580156115335750603a81105b1561154c57611543603082611b1b565b8317925061159c565b6041811015801561155d5750604781105b1561156d57611543603782611b1b565b6061811015801561157e5750606781105b1561158e57611543605782611b1b565b5f80945094505050506111ca565b506001016114f9565b50946001945092505050565b5f602082840312156115c1575f80fd5b81356001600160e01b0319811681146110e8575f80fd5b6001600160a01b03811681146115ec575f80fd5b50565b5f602082840312156115ff575f80fd5b81356110e8816115d8565b634e487b7160e01b5f52604160045260245ffd5b6040805190810167ffffffffffffffff811182821017156116415761164161160a565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156116705761167061160a565b604052919050565b5f67ffffffffffffffff8211156116915761169161160a565b50601f01601f191660200190565b5f82601f8301126116ae575f80fd5b81356116c16116bc82611678565b611647565b8181528460208386010111156116d5575f80fd5b816020850160208301375f918101602001919091529392505050565b5f82601f830112611700575f80fd5b8135602067ffffffffffffffff8083111561171d5761171d61160a565b8260051b61172c838201611647565b9384528581018301938381019088861115611745575f80fd5b84880192505b858310156117d457823584811115611761575f80fd5b88016040818b03601f1901811315611777575f80fd5b61177f61161e565b878301358781111561178f575f80fd5b61179d8d8a8387010161169f565b8252509082013590868211156117b1575f80fd5b6117bf8c898486010161169f565b8189015284525050918401919084019061174b565b98975050505050505050565b5f805f805f60a086880312156117f4575f80fd5b853567ffffffffffffffff8082111561180b575f80fd5b61181789838a0161169f565b9650602088013591508082111561182c575f80fd5b61183889838a016116f1565b9550604088013591508082111561184d575f80fd5b5061185a8882890161169f565b935050606086013561186b816115d8565b9150608086013561187b816115d8565b809150509295509295909350565b5f805f6060848603121561189b575f80fd5b833567ffffffffffffffff808211156118b2575f80fd5b6118be8783880161169f565b945060208601359150808211156118d3575f80fd5b6118df878388016116f1565b935060408601359150808211156118f4575f80fd5b506119018682870161169f565b9150509250925092565b5f806040838503121561191c575f80fd5b823567ffffffffffffffff80821115611933575f80fd5b61193f8683870161169f565b93506020850135915080821115611954575f80fd5b506119618582860161169f565b9150509250929050565b5f6020828403121561197b575f80fd5b81516110e8816115d8565b5f5b838110156119a0578181015183820152602001611988565b50505f910152565b5f81518084526119bf816020860160208601611986565b601f01601f19169290920160200192915050565b5f60408083016040845280865180835260608601915060608160051b870101925060208089015f5b83811015611a4b57888603605f1901855281518051888852611a1f898901826119a8565b9185015188830389870152919050611a3781836119a8565b9750505093820193908201906001016119fb565b505086840381880152505050611a6181866119a8565b9695505050505050565b5f60208284031215611a7b575f80fd5b815167ffffffffffffffff811115611a91575f80fd5b8201601f81018413611aa1575f80fd5b8051611aaf6116bc82611678565b818152856020838501011115611ac3575f80fd5b611ad4826020830160208601611986565b95945050505050565b5f60208284031215611aed575f80fd5b5051919050565b634e487b7160e01b5f52601160045260245ffd5b8082018082111561019d5761019d611af4565b8181038181111561019d5761019d611af4565b602081525f6110e860208301846119a8565b5f60208284031215611b50575f80fd5b815180151581146110e8575f80fd5b634e487b7160e01b5f52603260045260245ffd5b61ffff83168152604060208201525f61144c60408301846119a8565b805163ffffffff81168114611ba2575f80fd5b919050565b5f805f60608486031215611bb9575f80fd5b611bc284611b8f565b9250611bd060208501611b8f565b915060408401516bffffffffffffffffffffffff1981168114611bf1575f80fd5b809150509250925092565b63ffffffff818116838216019080821115611c1957611c19611af4565b5092915050565b5f82611c3a57634e487b7160e01b5f52601260045260245ffd5b500690565b600382810b9082900b03637fffffff198112637fffffff8213171561019d5761019d611af4565b808202811582820484141761019d5761019d611af4565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{"0x0":"0x9b2565a3545a1312bdcb6e7148a7f7cae8c2706b","0x1":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0x2":"0x287dee389caaa49edc112888f2bcfd927b472e25"}},"0x62b11ad5f582a5c5d378fb310125b030042554f1":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106103af5760003560e01c80637e37479e116101f4578063ba5d40b71161011a578063e985e9c5116100ad578063f5c1f76e1161007c578063f5c1f76e146108d8578063f7df5c60146108eb578063f8c8765e146108fe578063ffa1ad741461091157600080fd5b8063e985e9c51461087a578063ebf0c717146108b6578063ec129eea146108bd578063f25eb5c1146108d057600080fd5b8063c87b56dd116100e9578063c87b56dd1461082e578063ce92b33e14610841578063cf2c52cb14610854578063d9548e531461086757600080fd5b8063ba5d40b7146107b3578063baef73e9146107c6578063bb5b27e114610808578063bebec6b41461081b57600080fd5b8063a22cb46511610192578063ac9650d811610161578063ac9650d81461074c578063b3f9e4cb1461076c578063b85afd281461077f578063b88d4fde146107a057600080fd5b8063a22cb465146106e7578063a3f4df7e146106fa578063a424740014610726578063ab3b87fe1461073957600080fd5b80639508b1c4116101ce5780639508b1c4146106b15780639559c0bd146106c457806395d89b41146106cc57806399e0dd7c146106d457600080fd5b80637e37479e146106785780637eee288d1461068b57806394d008ef1461069e57600080fd5b806342842e0e116102d95780635096023911610277578063663f7b2a11610246578063663f7b2a14610610578063672b9f81146106235780636ccbae5f1461064457806370a082311461066557600080fd5b806350960239146105bb578063572b6c05146105ce5780636352211e146105ea578063638e5c78146105fd57600080fd5b806347c81699116102b357806347c816991461056f5780634a72584d146105825780634f558e791461059557806350382c1a146105a857600080fd5b806342842e0e1461053657806342966c6814610549578063430c20811461055c57600080fd5b80631bf7e13e1161035157806327f189751161032057806327f18975146104ea578063310bd74b146104fd5780633f72ec6e1461051057806340c10f191461052357600080fd5b80631bf7e13e146104905780631f71be06146104a357806323b872dd146104b6578063276fabb1146104c957600080fd5b8063095ea7b31161038d578063095ea7b31461041c578063150b7a02146104315780631bd8cc1a1461045d5780631be5e7ed1461047d57600080fd5b806301ffc9a7146103b457806306fdde03146103dc578063081812fc146103f1575b600080fd5b6103c76103c2366004613f0b565b610935565b60405190151581526020015b60405180910390f35b6103e4610946565b6040516103d39190613f78565b6104046103ff366004613f8b565b6109d8565b6040516001600160a01b0390911681526020016103d3565b61042f61042a366004613fb9565b6109ff565b005b61044461043f366004614026565b610a18565b6040516001600160e01b031990911681526020016103d3565b61047061046b3660046140dc565b610b72565b6040516103d3919061417f565b6103e461048b366004614192565b610c68565b6103e461049e3660046141c9565b610cb3565b61042f6104b1366004614249565b610dbe565b61042f6104c4366004614305565b610e54565b6104dc6104d7366004614346565b610ea7565b6040519081526020016103d3565b61042f6104f8366004614387565b610eb6565b61042f61050b366004613f8b565b610efe565b61042f61051e3660046143fa565b610f39565b61042f610531366004613fb9565b61103b565b61042f610544366004614305565b611088565b61042f610557366004613f8b565b6110a3565b6103c761056a366004613fb9565b6110e7565b61042f61057d366004614424565b6110f3565b61042f610590366004614485565b611132565b6103c76105a3366004613f8b565b611178565b61042f6105b636600461458c565b611197565b61042f6105c93660046145c0565b6111cd565b6103c76105dc3660046145c0565b6001600160a01b0316301490565b6104046105f8366004613f8b565b61122d565b61042f61060b366004613f8b565b61124a565b61042f61061e366004614678565b611295565b6106366106313660046146c0565b611336565b6040516103d39291906146e2565b6104dc610652366004613f8b565b6000908152610100602052604090205490565b6104dc6106733660046145c0565b61134e565b6104dc6106863660046145c0565b6113d4565b61042f610699366004613fb9565b611405565b61042f6106ac366004614707565b61145c565b61042f6106bf366004614762565b6114ab565b6104dc601481565b6103e4611532565b61042f6106e2366004614805565b611541565b61042f6106f536600461483a565b6115c8565b6103e46040518060400160405280600d81526020016c554e533a20526567697374727960981b81525081565b6103c76107343660046141c9565b6115da565b61042f610747366004613fb9565b611625565b61075f61075a366004614346565b61166a565b6040516103d39190614866565b61040461077a366004613f8b565b611746565b61079261078d3660046140dc565b611770565b6040516103d39291906148c8565b61042f6107ae3660046148ed565b611892565b61042f6107c1366004614249565b6118d9565b6107f06107d4366004613f8b565b600090815261013960205260409020546001600160401b031690565b6040516001600160401b0390911681526020016103d3565b6103e4610816366004613f8b565b611962565b6103e46108293660046145c0565b611a04565b6103e461083c366004613f8b565b611ace565b61042f61084f366004614387565b611b34565b61042f610862366004614958565b611b73565b6103c7610875366004613f8b565b611c42565b6103c761088836600461499f565b6001600160a01b039182166000908152606a6020908152604080832093909416825291909152205460ff1690565b60006104dc565b61042f6108cb366004614387565b611c85565b61042f611cc4565b6104706108e6366004614346565b611d4b565b61042f6108f93660046149d8565b611dfe565b61042f61090c366004614a0a565b611e8f565b6103e460405180604001604052806005815260200164302e392e3160d81b81525081565b600061094082612065565b92915050565b60606065805461095590614a66565b80601f016020809104026020016040519081016040528092919081815260200182805461098190614a66565b80156109ce5780601f106109a3576101008083540402835291602001916109ce565b820191906000526020600020905b8154815290600101906020018083116109b157829003601f168201915b5050505050905090565b60006109e3826120b5565b506000908152606960205260409020546001600160a01b031690565b80610a0981612114565b610a13838361217a565b505050565b60007f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378546001600160a01b0316610a4d61229c565b6001600160a01b031603610b0e57610a6361229c565b6001600160a01b03166342966c68856040518263ffffffff1660e01b8152600401610a9091815260200190565b600060405180830381600087803b158015610aaa57600080fd5b505af1158015610abe573d6000803e3d6000fd5b505050821580159150610ad85750610ad882840184614a9a565b15610af657610ae730856122ab565b610af185856123f9565b610b00565b610b0085856122ab565b50630a85bd0160e11b610b69565b60405162461bcd60e51b815260206004820152602560248201527f52656769737472793a204552433732315f524543454956494e475f50524f4849604482015264109255115160da1b60648201526084015b60405180910390fd5b95945050505050565b6060826001600160401b03811115610b8c57610b8c6144d7565b604051908082528060200260200182016040528015610bbf57816020015b6060815260200190600190039081610baa5790505b50905060005b83811015610c6057610c30858583818110610be257610be2614ab5565b9050602002810190610bf49190614acb565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508792506124a4915050565b828281518110610c4257610c42614ab5565b60200260200101819052508080610c5890614b27565b915050610bc5565b509392505050565b6060610cab84848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508692506124a4915050565b949350505050565b606060005a9050610cc58585856115da565b610d215760405162461bcd60e51b815260206004820152602760248201527f554e535265676973747279466f727761726465723a205349474e41545552455f6044820152661253959053125160ca1b6064820152608401610b60565b610db3610d3160208701876145c0565b30604088013584610d4560608b018b614acb565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284376000920191909152506124d992505050565b9150505b9392505050565b610134546001600160a01b0316610dd361229c565b6001600160a01b031614610df95760405162461bcd60e51b8152600401610b6090614b40565b6000610e0d610e08888a614b87565b6125ba565b509050610e1a8982611405565b610e278686868685612612565b8115610e4957610e498982610e44610e3f8b8d614b87565b612680565b612701565b505050505050505050565b80610e66610e6061229c565b82612743565b610e825760405162461bcd60e51b8152600401610b6090614b94565b81610e8c81612114565b610e95836127d4565b610ea0858585612841565b5050505050565b6000610c60610e088385614b87565b80610ec2610e6061229c565b610ede5760405162461bcd60e51b8152600401610b6090614b94565b81610ee881612114565b610ef587878787876129e8565b50505050505050565b80610f0a610e6061229c565b610f265760405162461bcd60e51b8152600401610b6090614b94565b81610f3081612114565b610a13836127d4565b610134546001600160a01b0316610f4e61229c565b6001600160a01b031614610f745760405162461bcd60e51b8152600401610b6090614b40565b610f7d816120b5565b42826001600160401b031611610fd55760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a204558504952595f494e5f5041535400000000000000006044820152606401610b60565b60008181526101396020908152604091829020805467ffffffffffffffff19166001600160401b038616908117909155915191825282917f93feabb03ab84f47fc85bf0c298103fca21d8c8bc376eae0c1e1c56b9d4f7789910160405180910390a25050565b611043612a4b565b6001600160a01b031661105461229c565b6001600160a01b03161461107a5760405162461bcd60e51b8152600401610b6090614bdd565b61108482826122ab565b5050565b610a1383838360405180602001604052806000815250611892565b806110af610e6061229c565b6110cb5760405162461bcd60e51b8152600401610b6090614b94565b816110d581612114565b6110de836127d4565b610a1383612b4c565b6000610db78383612743565b806110ff610e6061229c565b61111b5760405162461bcd60e51b8152600401610b6090614b94565b8161112581612114565b610ef58787878787612bf3565b8061113e610e6061229c565b61115a5760405162461bcd60e51b8152600401610b6090614b94565b8161116481612114565b61117086868686612cd2565b505050505050565b6000818152606760205260408120546001600160a01b03161515610940565b6111ca816040516020016111ab9190614c1f565b6040516020818303038152906040528051906020012060001c82612d72565b50565b610134546001600160a01b03166111e261229c565b6001600160a01b0316146112085760405162461bcd60e51b8152600401610b6090614b40565b6001600160a01b0316600090815261013660205260409020805460ff19166001179055565b600061123882611c42565b6112455761094082612d97565b919050565b80611256610e6061229c565b6112725760405162461bcd60e51b8152600401610b6090614b94565b61128461127d61229c565b3084612841565b61108461128f61229c565b836123f9565b60006112a0826125ba565b5090506112ab61229c565b6001600160a01b03166112bd8261122d565b6001600160a01b0316146113135760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b60565b61131c81612114565b61108461132761229c565b8261133185612680565b612df7565b6060806113438484612e7e565b909590945092505050565b60006001600160a01b0382166113b85760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b6064820152608401610b60565b506001600160a01b031660009081526068602052604090205490565b6001600160a01b038116600090815261013560205260408120546113f781612e9f565b6113ff578091505b50919050565b610134546001600160a01b031661141a61229c565b6001600160a01b0316146114405760405162461bcd60e51b8152600401610b6090614b40565b611449816127d4565b61108461145582612d97565b8383612841565b611464612a4b565b6001600160a01b031661147561229c565b6001600160a01b03161461149b5760405162461bcd60e51b8152600401610b6090614bdd565b6114a584846122ab565b50505050565b6114b58787612ee9565b6114bd61229c565b6001600160a01b03166114cf8661122d565b6001600160a01b0316146115255760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b60565b610ef58484848489612612565b60606066805461095590614a66565b610134546001600160a01b031661155661229c565b6001600160a01b03161461157c5760405162461bcd60e51b8152600401610b6090614b40565b61013361158a828483614c81565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b82826040516115bc929190614d69565b60405180910390a15050565b6110846115d361229c565b8383612f58565b6000610cab6115e885614d7d565b3085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061302692505050565b80611631610e6061229c565b61164d5760405162461bcd60e51b8152600401610b6090614b94565b8161165781612114565b6114a561166384612d97565b8585612841565b606060006116788385614e07565b905030330361173d5760005b8381101561173b5761170b61169761229c565b61169f61316f565b8787858181106116b1576116b1614ab5565b90506020028101906116c39190614acb565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250613183915050565b82828151811061171d5761171d614ab5565b6020026020010181905250808061173390614b27565b915050611684565b505b610cab816131b3565b6000818152606760205260408120546001600160a01b0316611769576000610940565b3092915050565b606080836001600160401b0381111561178b5761178b6144d7565b6040519080825280602002602001820160405280156117be57816020015b60608152602001906001900390816117a95790505b509150836001600160401b038111156117d9576117d96144d7565b60405190808252806020026020018201604052801561180c57816020015b60608152602001906001900390816117f75790505b50905060005b848110156118895761183c86868381811061182f5761182f614ab5565b9050602002013585612e7e565b84838151811061184e5761184e614ab5565b6020026020010184848151811061186757611867614ab5565b602002602001018290528290525050808061188190614b27565b915050611812565b50935093915050565b8161189e610e6061229c565b6118ba5760405162461bcd60e51b8152600401610b6090614b94565b826118c481612114565b6118cd846127d4565b611170868686866132de565b610134546001600160a01b03166118ee61229c565b6001600160a01b0316146119145760405162461bcd60e51b8152600401610b6090614b40565b600080611924610e08898b614b87565b9150915061193181613311565b6119498a83611943610e3f8c8e614b87565b86613371565b6119568787878786612612565b50505050505050505050565b600081815260c96020526040902080546060919061197f90614a66565b80601f01602080910402602001604051908101604052809291908181526020018280546119ab90614a66565b80156119f85780601f106119cd576101008083540402835291602001916119f8565b820191906000526020600020905b8154815290600101906020018083116119db57829003601f168201915b50505050509050919050565b6001600160a01b03811660009081526101356020526040902054606090611a2a81612e9f565b6113ff576000818152610138602052604090208054611a4890614a66565b80601f0160208091040260200160405190810160405280929190818152602001828054611a7490614a66565b8015611ac15780601f10611a9657610100808354040283529160200191611ac1565b820191906000526020600020905b815481529060010190602001808311611aa457829003601f168201915b5050505050915050919050565b6060611ad9826120b5565b6000611ae36133c4565b90506000815111611b035760405180602001604052806000815250610db7565b80611b0d846133d4565b604051602001611b1e929190614e7a565b6040516020818303038152906040529392505050565b80611b40610e6061229c565b611b5c5760405162461bcd60e51b8152600401610b6090614b94565b81611b6681612114565b610ef58787878787612612565b7f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87546001600160a01b0316611ba661229c565b6001600160a01b031614611bcc5760405162461bcd60e51b8152600401610b6090614bdd565b6020819003611bef576000611be382840184613f8b565b90506114a584826122ab565b6000611bfd82840184614ea9565b805190915060005b8181101561117057611c3086848381518110611c2357611c23614ab5565b60200260200101516122ab565b80611c3a81614b27565b915050611c05565b600081815261013960205260408120546001600160401b03161580159061094057505060009081526101396020526040902054426001600160401b039091161090565b80611c91610e6061229c565b611cad5760405162461bcd60e51b8152600401610b6090614b94565b81611cb781612114565b610ef587878787876134d4565b6000611cce61229c565b6001600160a01b0381166000908152610135602052604081205491925003611d425760405162461bcd60e51b815260206004820152602160248201527f52656769737472793a20524556455253455f5245434f52445f49535f454d50546044820152605960f81b6064820152608401610b60565b6111ca816134ea565b6060816001600160401b03811115611d6557611d656144d7565b604051908082528060200260200182016040528015611d9857816020015b6060815260200190600190039081611d835790505b50905060005b82811015611df757611dc7848483818110611dbb57611dbb614ab5565b90506020020135611962565b828281518110611dd957611dd9614ab5565b60200260200101819052508080611def90614b27565b915050611d9e565b5092915050565b610134546001600160a01b0316611e1361229c565b6001600160a01b031614611e395760405162461bcd60e51b8152600401610b6090614b40565b61013454611e50906001600160a01b0316846122ab565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c39528383604051611e82929190614d69565b60405180910390a2505050565b600054610100900460ff1615808015611eaf5750600054600160ff909116105b80611ec95750303b158015611ec9575060005460ff166001145b611f2c5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610b60565b6000805460ff191660011790558015611f4f576000805461ff0019166101001790555b61013480546001600160a01b0319166001600160a01b038716179055837f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec9237880546001600160a01b0319166001600160a01b03929092169190911790556040805180820182526013815272556e73746f707061626c6520446f6d61696e7360681b60208083019190915282518084019093526002835261155160f21b90830152611ff79161352f565b611fff61356f565b61200761356f565b61201083613598565b612019826135c8565b8015610ea0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b60006001600160e01b031982166380ac58cd60e01b148061209657506001600160e01b03198216635b5e139f60e01b145b8061094057506301ffc9a760e01b6001600160e01b0319831614610940565b6000818152606760205260409020546001600160a01b03166111ca5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b60565b3033036121715761212361316f565b81146111ca5760405162461bcd60e51b815260206004820152601760248201527f52656769737472793a20544f4b454e5f494e56414c49440000000000000000006044820152606401610b60565b6111ca816135f8565b600061218582612d97565b9050806001600160a01b0316836001600160a01b0316036121f25760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b6064820152608401610b60565b806001600160a01b031661220461229c565b6001600160a01b0316148061222057506122208161088861229c565b6122925760405162461bcd60e51b815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c00006064820152608401610b60565b610a138383613626565b60006122a6613694565b905090565b6001600160a01b0382166123015760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610b60565b6000818152606760205260409020546001600160a01b0316156123665760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610b60565b612372600083836136af565b6001600160a01b038216600090815260686020526040812080546001929061239b908490614f39565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b03861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b6000612403612a4b565b905061240f8183613626565b60008051602061529383398151915254604080516020808201869052825180830390910181528183019283905263e3dec8fb60e01b9092526001600160a01b0390921691829163e3dec8fb9161246c918891309190604401614f4c565b600060405180830381600087803b15801561248657600080fd5b505af115801561249a573d6000803e3d6000fd5b5050505050505050565b6060610db7836040516020016124ba9190614c1f565b6040516020818303038152906040528051906020012060001c8361378b565b60606124e4856135f8565b600080876001600160a01b0316866124fe8b8a8989613183565b60405161250b9190614c1f565b60006040518083038160008787f1925050503d8060008114612549576040519150601f19603f3d011682016040523d82523d6000602084013e61254e565b606091505b50909250905061255f603f87614f8e565b5a1161256d5761256d614fa2565b6125ad82826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061386d565b9998505050505050505050565b805160009081905b801561260c578291506125f882856125db600185614fb8565b815181106125eb576125eb614ab5565b60200260200101516138a6565b92508061260481614fcb565b9150506125c2565b50915091565b60005b848110156111705761266e86868381811061263257612632614ab5565b90506020028101906126449190614acb565b86868581811061265657612656614ab5565b90506020028101906126689190614acb565b86612bf3565b8061267881614b27565b915050612615565b606060008260008151811061269757612697614ab5565b602002602001015190506000600190505b8351811015611df757818482815181106126c4576126c4614ab5565b60200260200101516040516020016126dd929190614fe2565b604051602081830303815290604052915080806126f990614b27565b9150506126a8565b61dead6001600160a01b0384161480159061273357506001600160a01b03831660009081526101356020526040902054155b15610a1357610a13838383612df7565b60008061274f8361122d565b90506001600160a01b03811615801590610cab5750806001600160a01b0316846001600160a01b031614806127a957506001600160a01b038082166000908152606a602090815260408083209388168352929052205460ff165b80610cab5750836001600160a01b03166127c2846109d8565b6001600160a01b031614949350505050565b6127dd81613952565b6040516020016127ef91815260200190565b60408051601f198184030181528282528051602091820120600085815260cb9092529181209190915582917f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9190a250565b826001600160a01b031661285482612d97565b6001600160a01b0316146128b85760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b6064820152608401610b60565b6001600160a01b03821661291a5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610b60565b6129258383836136af565b612930600082613626565b6001600160a01b0383166000908152606860205260408120805460019290612959908490614fb8565b90915550506001600160a01b0382166000908152606860205260408120805460019290612987908490614f39565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60005b8481101561117057612a39868683818110612a0857612a08614ab5565b90506020020135858584818110612a2157612a21614ab5565b9050602002810190612a339190614acb565b85612cd2565b80612a4381614b27565b9150506129eb565b600080516020615293833981519152546000906001600160a01b03168015612b485760405163721804d360e11b81523060048201526000906001600160a01b0383169063e43009a690602401602060405180830381865afa158015612ab4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ad8919061501e565b60405163e66f960360e01b8152600481018290529091506001600160a01b0383169063e66f960390602401602060405180830381865afa158015612b20573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b449190615037565b9250505b5090565b6000612b5782612d97565b9050612b65816000846136af565b612b70600083613626565b6001600160a01b0381166000908152606860205260408120805460019290612b99908490614fb8565b909155505060008281526067602052604080822080546001600160a01b0319169055518391906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b60008585604051602001612c08929190615054565b60408051601f198184030181528282528051602091820120601f8901829004820284018201909252878352909250612c5c9183918990899081908401838280828437600092019190915250612d7292505050565b6111708187878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061397a915050565b612cdb84613aaf565b612d275760405162461bcd60e51b815260206004820152601c60248201527f5265636f726453746f726167653a204b45595f4e4f545f464f554e44000000006044820152606401610b60565b6114a584612d3486611962565b85858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525087925061397a915050565b612d7b82613aaf565b61108457600082815260c960205260409020610a138282615064565b6000818152606760205260408120546001600160a01b0316806109405760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b60565b6000828152610138602052604090208054612e1190614a66565b9050600003612e3557600082815261013860205260409020612e338282615064565b505b6001600160a01b03831660008181526101356020526040808220859055518492917feb76a21470988c474a21f690cc28fee1ed511bd812dc3c21fd0f49c5e5d4708a91a3505050565b606080612e8a84611962565b9150612e96848461378b565b90509250929050565b6000818152610137602052604081205460ff16801561094057506101366000612ec661229c565b6001600160a01b0316815260208101919091526040016000205460ff1692915050565b60008051602061529383398151915254604051633805550f60e01b81526001600160a01b03909116908190633805550f90612f2a9086908690600401614d69565b600060405180830381600087803b158015612f4457600080fd5b505af1158015610ef5573d6000803e3d6000fd5b816001600160a01b0316836001600160a01b031603612fb95760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610b60565b6001600160a01b038381166000818152606a6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561306d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613091919061501e565b9050600061313f8660600151805190602001208688602001516040516020016130df9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561316557508551613165906001600160a01b03168286613ad5565b9695505050505050565b60003033036131805750601f193601355b90565b606082858560405160200161319a93929190615123565b6040516020818303038152906040529050949350505050565b606081516001600160401b038111156131ce576131ce6144d7565b60405190808252806020026020018201604052801561320157816020015b60608152602001906001900390816131ec5790505b50905060005b82518110156113ff57600080306001600160a01b031685848151811061322f5761322f614ab5565b60200260200101516040516132449190614c1f565b600060405180830381855af49150503d806000811461327f576040519150601f19603f3d011682016040523d82523d6000602084013e613284565b606091505b50915091506132ac82826040518060600160405280602781526020016152b36027913961386d565b8484815181106132be576132be614ab5565b6020026020010181905250505080806132d690614b27565b915050613207565b6132e9848484612841565b6132f584848484613c17565b6114a55760405162461bcd60e51b8152600401610b6090615162565b6000818152610137602052604090205460ff16156111ca5760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a20544f4b454e5f555047524144454400000000000000006044820152606401610b60565b61337b84846122ab565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952836040516133ab9190613f78565b60405180910390a280156114a5576114a5848484612701565b6060610133805461095590614a66565b6060816000036133fb5750506040805180820190915260018152600360fc1b602082015290565b8160005b8115613425578061340f81614b27565b915061341e9050600a83614f8e565b91506133ff565b6000816001600160401b0381111561343f5761343f6144d7565b6040519080825280601f01601f191660200182016040528015613469576020820181803683370190505b5090505b8415610cab5761347e600183614fb8565b915061348b600a866151b4565b613496906030614f39565b60f81b8183815181106134ab576134ab614ab5565b60200101906001600160f81b031916908160001a9053506134cd600a86614f8e565b945061346d565b6134dd816127d4565b610ea08585858585612612565b6001600160a01b03811660008181526101356020526040808220829055517ffcf5eec0cfa3e6332f5f0e63ec242d71f866a61d121d6cdf5c2eb3b668a26c4f9190a250565b600054610100900460ff166135565760405162461bcd60e51b8152600401610b60906151c8565b60656135628382615064565b506066610a138282615064565b600054610100900460ff166135965760405162461bcd60e51b8152600401610b60906151c8565b565b600054610100900460ff166135bf5760405162461bcd60e51b8152600401610b60906151c8565b6111ca81613d1c565b600054610100900460ff166135ef5760405162461bcd60e51b8152600401610b60906151c8565b6111ca81613d75565b60008181526101006020526040902054613613906001614f39565b6000918252610100602052604090912055565b600081815260696020526040902080546001600160a01b0319166001600160a01b038416908117909155819061365b82612d97565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60003033036136aa575060331936013560601c90565b503390565b6001600160a01b0382166136c6576136c681613311565b600081815261013960205260409020546001600160401b031615613761576001600160a01b0382161580159061371557506136ff612a4b565b6001600160a01b0316826001600160a01b031614155b6137615760405162461bcd60e51b815260206004820152601960248201527f52656769737472793a20544f4b454e5f455850495241424c45000000000000006044820152606401610b60565b6001600160a01b03831660009081526101356020526040902054819003610a1357610a13836134ea565b606061379682612e9f565b156137b05750604080516020810190915260008152610940565b60ca60006137bd84613952565b8152602001908152602001600020600084815260200190815260200160002080546137e790614a66565b80601f016020809104026020016040519081016040528092919081815260200182805461381390614a66565b80156138605780601f1061383557610100808354040283529160200191613860565b820191906000526020600020905b81548152906001019060200180831161384357829003601f168201915b5050505050905092915050565b6060831561387c575081610db7565b82511561388c5782518084602001fd5b8160405162461bcd60e51b8152600401610b609190613f78565b600081516000036138f15760405162461bcd60e51b815260206004820152601560248201527452656769737472793a204c4142454c5f454d50545960581b6044820152606401610b60565b82826040516020016139039190614c1f565b60405160208183030381529060405280519060200120604051602001613933929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b600081815260cb602052604081205415612b4857600082815260cb6020526040902054610940565b60ca600061398783613952565b8152602001908152602001600020600085815260200190815260200160002080546139b190614a66565b9050600003613a0957826040516139c89190614c1f565b6040518091039020817f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f8685604051613a009190613f78565b60405180910390a35b8160ca6000613a1784613952565b815260200190815260200160002060008681526020019081526020016000209081613a429190615064565b5081604051613a519190614c1f565b604051809103902083604051613a679190614c1f565b6040518091039020827f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d928686604051613aa19291906146e2565b60405180910390a450505050565b600081815260c9602052604081208054829190613acb90614a66565b9050119050919050565b6000806000613ae48585613dc3565b90925090506000816004811115613afd57613afd615213565b148015613b1b5750856001600160a01b0316826001600160a01b0316145b15613b2b57600192505050610db7565b600080876001600160a01b0316631626ba7e60e01b8888604051602401613b53929190615229565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051613b919190614c1f565b600060405180830381855afa9150503d8060008114613bcc576040519150601f19603f3d011682016040523d82523d6000602084013e613bd1565b606091505b5091509150818015613be4575080516020145b8015613c0b57508051630b135d3f60e11b90613c09908301602090810190840161501e565b145b98975050505050505050565b60006001600160a01b0384163b15613d1457836001600160a01b031663150b7a02613c4061229c565b8786866040518563ffffffff1660e01b8152600401613c629493929190615242565b6020604051808303816000875af1925050508015613c9d575060408051601f3d908101601f19168201909252613c9a91810190615275565b60015b613cfa573d808015613ccb576040519150601f19603f3d011682016040523d82523d6000602084013e613cd0565b606091505b508051600003613cf25760405162461bcd60e51b8152600401610b6090615162565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610cab565b506001610cab565b600054610100900460ff16613d435760405162461bcd60e51b8152600401610b60906151c8565b806000805160206152938339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b600054610100900460ff16613d9c5760405162461bcd60e51b8152600401610b60906151c8565b807f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87613d54565b6000808251604103613df95760208301516040840151606085015160001a613ded87828585613e08565b94509450505050613e01565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613e3f5750600090506003613eec565b8460ff16601b14158015613e5757508460ff16601c14155b15613e685750600090506004613eec565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613ebc573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613ee557600060019250925050613eec565b9150600090505b94509492505050565b6001600160e01b0319811681146111ca57600080fd5b600060208284031215613f1d57600080fd5b8135610db781613ef5565b60005b83811015613f43578181015183820152602001613f2b565b50506000910152565b60008151808452613f64816020860160208601613f28565b601f01601f19169290920160200192915050565b602081526000610db76020830184613f4c565b600060208284031215613f9d57600080fd5b5035919050565b6001600160a01b03811681146111ca57600080fd5b60008060408385031215613fcc57600080fd5b8235613fd781613fa4565b946020939093013593505050565b60008083601f840112613ff757600080fd5b5081356001600160401b0381111561400e57600080fd5b602083019150836020828501011115613e0157600080fd5b60008060008060006080868803121561403e57600080fd5b853561404981613fa4565b9450602086013561405981613fa4565b93506040860135925060608601356001600160401b0381111561407b57600080fd5b61408788828901613fe5565b969995985093965092949392505050565b60008083601f8401126140aa57600080fd5b5081356001600160401b038111156140c157600080fd5b6020830191508360208260051b8501011115613e0157600080fd5b6000806000604084860312156140f157600080fd5b83356001600160401b0381111561410757600080fd5b61411386828701614098565b909790965060209590950135949350505050565b600082825180855260208086019550808260051b84010181860160005b8481101561417257601f19868403018952614160838351613f4c565b98840198925090830190600101614144565b5090979650505050505050565b602081526000610db76020830184614127565b6000806000604084860312156141a757600080fd5b83356001600160401b038111156141bd57600080fd5b61411386828701613fe5565b6000806000604084860312156141de57600080fd5b83356001600160401b03808211156141f557600080fd5b908501906080828803121561420957600080fd5b9093506020850135908082111561421f57600080fd5b5061422c86828701613fe5565b9497909650939450505050565b8035801515811461124557600080fd5b60008060008060008060008060a0898b03121561426557600080fd5b883561427081613fa4565b975060208901356001600160401b038082111561428c57600080fd5b6142988c838d01614098565b909950975060408b01359150808211156142b157600080fd5b6142bd8c838d01614098565b909750955060608b01359150808211156142d657600080fd5b506142e38b828c01614098565b90945092506142f6905060808a01614239565b90509295985092959890939650565b60008060006060848603121561431a57600080fd5b833561432581613fa4565b9250602084013561433581613fa4565b929592945050506040919091013590565b6000806020838503121561435957600080fd5b82356001600160401b0381111561436f57600080fd5b61437b85828601614098565b90969095509350505050565b60008060008060006060868803121561439f57600080fd5b85356001600160401b03808211156143b657600080fd5b6143c289838a01614098565b909750955060208801359150808211156143db57600080fd5b506143e888828901614098565b96999598509660400135949350505050565b6000806040838503121561440d57600080fd5b82356001600160401b0381168114613fd757600080fd5b60008060008060006060868803121561443c57600080fd5b85356001600160401b038082111561445357600080fd5b61445f89838a01613fe5565b9097509550602088013591508082111561447857600080fd5b506143e888828901613fe5565b6000806000806060858703121561449b57600080fd5b8435935060208501356001600160401b038111156144b857600080fd5b6144c487828801613fe5565b9598909750949560400135949350505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715614515576145156144d7565b604052919050565b600082601f83011261452e57600080fd5b81356001600160401b03811115614547576145476144d7565b61455a601f8201601f19166020016144ed565b81815284602083860101111561456f57600080fd5b816020850160208301376000918101602001919091529392505050565b60006020828403121561459e57600080fd5b81356001600160401b038111156145b457600080fd5b610cab8482850161451d565b6000602082840312156145d257600080fd5b8135610db781613fa4565b60006001600160401b038211156145f6576145f66144d7565b5060051b60200190565b600061461361460e846145dd565b6144ed565b8381529050602080820190600585901b84018681111561463257600080fd5b845b8181101561466d5780356001600160401b038111156146535760008081fd5b61465f8982890161451d565b855250928201928201614634565b505050509392505050565b60006020828403121561468a57600080fd5b81356001600160401b038111156146a057600080fd5b8201601f810184136146b157600080fd5b610cab84823560208401614600565b600080604083850312156146d357600080fd5b50508035926020909101359150565b6040815260006146f56040830185613f4c565b8281036020840152610db38185613f4c565b6000806000806060858703121561471d57600080fd5b843561472881613fa4565b93506020850135925060408501356001600160401b0381111561474a57600080fd5b61475687828801613fe5565b95989497509550505050565b60008060008060008060006080888a03121561477d57600080fd5b87356001600160401b038082111561479457600080fd5b6147a08b838c01613fe5565b909950975060208a0135965060408a01359150808211156147c057600080fd5b6147cc8b838c01614098565b909650945060608a01359150808211156147e557600080fd5b506147f28a828b01614098565b989b979a50959850939692959293505050565b6000806020838503121561481857600080fd5b82356001600160401b0381111561482e57600080fd5b61437b85828601613fe5565b6000806040838503121561484d57600080fd5b823561485881613fa4565b9150612e9660208401614239565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156148bb57603f198886030184526148a9858351613f4c565b9450928501929085019060010161488d565b5092979650505050505050565b6040815260006148db6040830185614127565b8281036020840152610db38185614127565b6000806000806080858703121561490357600080fd5b843561490e81613fa4565b9350602085013561491e81613fa4565b92506040850135915060608501356001600160401b0381111561494057600080fd5b61494c8782880161451d565b91505092959194509250565b60008060006040848603121561496d57600080fd5b833561497881613fa4565b925060208401356001600160401b0381111561499357600080fd5b61422c86828701613fe5565b600080604083850312156149b257600080fd5b82356149bd81613fa4565b915060208301356149cd81613fa4565b809150509250929050565b6000806000604084860312156149ed57600080fd5b8335925060208401356001600160401b0381111561499357600080fd5b60008060008060808587031215614a2057600080fd5b8435614a2b81613fa4565b93506020850135614a3b81613fa4565b92506040850135614a4b81613fa4565b91506060850135614a5b81613fa4565b939692955090935050565b600181811c90821680614a7a57607f821691505b6020821081036113ff57634e487b7160e01b600052602260045260246000fd5b600060208284031215614aac57600080fd5b610db782614239565b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112614ae257600080fd5b8301803591506001600160401b03821115614afc57600080fd5b602001915036819003821315613e0157600080fd5b634e487b7160e01b600052601160045260246000fd5b600060018201614b3957614b39614b11565b5060010190565b60208082526027908201527f52656769737472793a2053454e4445525f49535f4e4f545f4d494e54494e475f60408201526626a0a720a3a2a960c91b606082015260800190565b6000610db7368484614600565b60208082526029908201527f52656769737472793a2053454e4445525f49535f4e4f545f415050524f5645446040820152682fa7a92fa7aba722a960b91b606082015260800190565b60208082526022908201527f52656769737472793a20494e53554646494349454e545f5045524d495353494f6040820152614e5360f01b606082015260800190565b60008251614c31818460208701613f28565b9190910192915050565b601f821115610a1357600081815260208120601f850160051c81016020861015614c625750805b601f850160051c820191505b8181101561117057828155600101614c6e565b6001600160401b03831115614c9857614c986144d7565b614cac83614ca68354614a66565b83614c3b565b6000601f841160018114614ce05760008515614cc85750838201355b600019600387901b1c1916600186901b178355610ea0565b600083815260209020601f19861690835b82811015614d115786850135825560209485019460019092019101614cf1565b5086821015614d2e5760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b602081526000610cab602083018486614d40565b600060808236031215614d8f57600080fd5b604051608081016001600160401b038282108183111715614db257614db26144d7565b8160405284359150614dc382613fa4565b81835260208501356020840152604085013560408401526060850135915080821115614dee57600080fd5b50614dfb3682860161451d565b60608301525092915050565b6000614e1561460e846145dd565b80848252602080830192508560051b850136811115614e3357600080fd5b855b81811015614e6e5780356001600160401b03811115614e545760008081fd5b614e6036828a0161451d565b865250938201938201614e35565b50919695505050505050565b60008351614e8c818460208801613f28565b835190830190614ea0818360208801613f28565b01949350505050565b60006020808385031215614ebc57600080fd5b82356001600160401b03811115614ed257600080fd5b8301601f81018513614ee357600080fd5b8035614ef161460e826145dd565b81815260059190911b82018301908381019087831115614f1057600080fd5b928401925b82841015614f2e57833582529284019290840190614f15565b979650505050505050565b8082018082111561094057610940614b11565b6001600160a01b03848116825283166020820152606060408201819052600090610b6990830184613f4c565b634e487b7160e01b600052601260045260246000fd5b600082614f9d57614f9d614f78565b500490565b634e487b7160e01b600052600160045260246000fd5b8181038181111561094057610940614b11565b600081614fda57614fda614b11565b506000190190565b60008351614ff4818460208801613f28565b601760f91b9083019081528351615012816001840160208801613f28565b01600101949350505050565b60006020828403121561503057600080fd5b5051919050565b60006020828403121561504957600080fd5b8151610db781613fa4565b8183823760009101908152919050565b81516001600160401b0381111561507d5761507d6144d7565b6150918161508b8454614a66565b84614c3b565b602080601f8311600181146150c657600084156150ae5750858301515b600019600386901b1c1916600185901b178555611170565b600085815260208120601f198616915b828110156150f5578886015182559484019460019091019084016150d6565b50858210156151135787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60008451615135818460208901613f28565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6000826151c3576151c3614f78565b500690565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b634e487b7160e01b600052602160045260246000fd5b828152604060208201526000610cab6040830184613f4c565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061316590830184613f4c565b60006020828403121561528757600080fd5b8151610db781613ef556febe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a","storage":{}},"0x6ac8f19d1e0f81147cdf2a1e53cb1f4e18417204":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610296575f3560e01c80636352211e11610161578063c93ab3fd116100ca578063e985e9c511610084578063e985e9c5146106c8578063eb8ae530146106db578063ed70554d146106ee578063f242432a1461070d578063f2fde38b14610720578063fd0cd0d914610733575f80fd5b8063c93ab3fd14610647578063cf4088231461065a578063d8c9921a1461066d578063d9a50c1214610680578063da8c229e14610693578063e0dba60f146106b5575f80fd5b8063a22cb4651161011b578063a22cb465146105d5578063a4014982146105e8578063adf4960a146105fb578063b6bcad261461060e578063c475abff14610621578063c658e08614610634575f80fd5b80636352211e146105595780636e5d6ad21461056c578063715018a6146105975780638b4dfa751461059f5780638cf8b41e146105b25780638da5cb5b146105c5575f80fd5b80631f4e1504116102035780633f15457f116101bd5780633f15457f146104b1578063402906fc146104d857806341415eab146105005780634e1273f41461051357806353095467146105335780635d3590d514610546575f80fd5b80631f4e15041461042b57806320c38e2b1461043e57806324c1af44146104515780632b20e397146104645780632eb2c2d61461048b57806333c69ea91461049e575f80fd5b80630e4cd725116102545780630e4cd725146103a05780630e89341c146103b357806314ab9038146103c6578063150b7a02146103d95780631534e177146104055780631896f70a14610418575f80fd5b8062fdd58e1461029a5780630178fe3f146102c057806301ffc9a71461030657806306fdde0314610329578063081812fc14610360578063095ea7b31461038b575b5f80fd5b6102ad6102a8366004614316565b610746565b6040519081526020015b60405180910390f35b6102d36102ce366004614340565b6107f0565b604080516001600160a01b03909416845263ffffffff90921660208401526001600160401b0316908201526060016102b7565b61031961031436600461436c565b61081f565b60405190151581526020016102b7565b6103536040518060400160405280600b81526020016a2730b6b2abb930b83832b960a91b81525081565b6040516102b791906143d4565b61037361036e366004614340565b61085e565b6040516001600160a01b0390911681526020016102b7565b61039e610399366004614316565b6108a0565b005b6103196103ae3660046143e6565b6108e5565b6103536103c1366004614340565b61095e565b61039e6103d436600461442f565b6109cc565b6103ec6103e736600461449d565b610ac0565b6040516001600160e01b031990911681526020016102b7565b61039e61041336600461450a565b610c96565b61039e6104263660046143e6565b610cc0565b600754610373906001600160a01b031681565b61035361044c366004614340565b610d75565b6102ad61045f3660046145f6565b610e0c565b6103737f000000000000000000000000c965345edac823d56812cd20a10316233916a60581565b61039e610499366004614717565b610fe7565b61039e6104ac3660046147bd565b61121a565b6103737f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a981565b6104eb6104e6366004614811565b6113e6565b60405163ffffffff90911681526020016102b7565b61031961050e3660046143e6565b611480565b610526610521366004614832565b6114b8565b6040516102b79190614928565b600554610373906001600160a01b031681565b61039e61055436600461493a565b6115d7565b610373610567366004614340565b611655565b61057f61057a366004614978565b61165f565b6040516001600160401b0390911681526020016102b7565b61039e61178e565b61039e6105ad3660046149aa565b6117a1565b61057f6105c03660046149e9565b6118c0565b5f546001600160a01b0316610373565b61039e6105e3366004614a6b565b611c28565b6102ad6105f6366004614a97565b611cfd565b610319610609366004614b12565b611e38565b61039e61061c36600461450a565b611e5c565b6102ad61062f366004614b33565b61209e565b6102ad610642366004614b53565b6122fd565b61039e610655366004614bc0565b6124bd565b61039e610668366004614c26565b612605565b61039e61067b366004614c5b565b612794565b61031961068e366004614b33565b61285d565b6103196106a136600461450a565b60046020525f908152604090205460ff1681565b61039e6106c3366004614a6b565b612938565b6103196106d6366004614c86565b61299f565b61039e6106e9366004614cb2565b6129cc565b6102ad6106fc366004614340565b60016020525f908152604090205481565b61039e61071b366004614d15565b612d59565b61039e61072e36600461450a565b612e06565b610319610741366004614340565b612e7c565b5f6001600160a01b0383166107b65760405162461bcd60e51b815260206004820152602b60248201527f455243313135353a2062616c616e636520717565727920666f7220746865207a60448201526a65726f206164647265737360a81b60648201526084015b60405180910390fd5b5f6107c083611655565b9050836001600160a01b0316816001600160a01b0316036107e55760019150506107ea565b5f9150505b92915050565b5f8181526001602052604090205460a081901c60c082901c610813838383612f4d565b90959094509092509050565b5f6001600160e01b03198216631b05885b60e31b148061084f57506001600160e01b03198216630a85bd0160e11b145b806107ea57506107ea82612f80565b5f8061086983611655565b90506001600160a01b03811661088157505f92915050565b5f838152600360205260409020546001600160a01b03165b9392505050565b5f6108aa826107f0565b50915050603f1960408216016108d65760405163a2a7201360e01b8152600481018390526024016107ad565b6108e08383612fcf565b505050565b5f8080806108f2866107f0565b925092509250846001600160a01b0316836001600160a01b0316148061091d575061091d838661299f565b8061094157506001600160a01b0385166109368761085e565b6001600160a01b0316145b8015610954575061095282826130de565b155b9695505050505050565b6005546040516303a24d0760e21b8152600481018390526060916001600160a01b031690630e89341c906024015f60405180830381865afa1580156109a5573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526107ea9190810190614d78565b816109d78133611480565b6109f857803360405163168ab55d60e31b81526004016107ad929190614dea565b8260105f610a05836107f0565b5091505063ffffffff8282161615610a335760405163a2a7201360e01b8152600481018490526024016107ad565b604051630295720760e31b8152600481018790526001600160401b03861660248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906314ab9038906044015b5f604051808303815f87803b158015610aa2575f80fd5b505af1158015610ab4573d5f803e3d5ffd5b50505050505050505050565b5f336001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a6051614610b0a5760405163032634a760e31b815260040160405180910390fd5b5f808080610b1a86880188614e01565b83516020850120939750919550935091508890808214610b57576040516331970f3360e21b815260048101829052602481018390526044016107ad565b604051630a3b53db60e21b81526001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906328ed4f6c90610ba59085903090600401614dea565b5f604051808303815f87803b158015610bbc575f80fd5b505af1158015610bce573d5f803e3d5ffd5b5050604051636b727d4360e11b8152600481018d90525f92506276a70091506001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063d6e4fa8690602401602060405180830381865afa158015610c3c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c609190614e64565b610c6a9190614e8f565b9050610c7d87878761ffff16848861310d565b50630a85bd0160e11b9c9b505050505050505050505050565b610c9e613215565b600580546001600160a01b0319166001600160a01b0392909216919091179055565b81610ccb8133611480565b610cec57803360405163168ab55d60e31b81526004016107ad929190614dea565b8260085f610cf9836107f0565b5091505063ffffffff8282161615610d275760405163a2a7201360e01b8152600481018490526024016107ad565b604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a90610a8b9089908990600401614dea565b60066020525f908152604090208054610d8d90614eb6565b80601f0160208091040260200160405190810160405280929190818152602001828054610db990614eb6565b8015610e045780601f10610ddb57610100808354040283529160200191610e04565b820191905f5260205f20905b815481529060010190602001808311610de757829003601f168201915b505050505081565b5f87610e188133611480565b610e3957803360405163168ab55d60e31b81526004016107ad929190614dea565b87516020890120610e4a8a8261326e565b9250610e568a8461329a565b610e6083866133d3565b610e6b8a848b613406565b50610e788a8487876134cd565b9350610e8383613510565b610f33576040516305ef2c7f60e41b8152600481018b9052602481018290523060448201526001600160a01b0388811660648301526001600160401b03881660848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610f0a575f80fd5b505af1158015610f1c573d5f803e3d5ffd5b50505050610f2e8a848b8b89896135c6565b610fda565b6040516305ef2c7f60e41b8152600481018b9052602481018290523060448201526001600160a01b0388811660648301526001600160401b03881660848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610fb6575f80fd5b505af1158015610fc8573d5f803e3d5ffd5b50505050610fda8a848b8b89896135fc565b5050979650505050505050565b81518351146110495760405162461bcd60e51b815260206004820152602860248201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206044820152670dad2e6dac2e8c6d60c31b60648201526084016107ad565b6001600160a01b03841661106f5760405162461bcd60e51b81526004016107ad90614eee565b6001600160a01b03851633148061108b575061108b853361299f565b6110f25760405162461bcd60e51b815260206004820152603260248201527f455243313135353a207472616e736665722063616c6c6572206973206e6f74206044820152711bdddb995c881b9bdc88185c1c1c9bdd995960721b60648201526084016107ad565b5f5b83518110156111ad575f84828151811061111057611110614f33565b602002602001015190505f84838151811061112d5761112d614f33565b602002602001015190505f805f611143856107f0565b9250925092506111548583836136b6565b83600114801561117557508a6001600160a01b0316836001600160a01b0316145b6111915760405162461bcd60e51b81526004016107ad90614f47565b61119d858b848461375d565b50505050508060010190506110f4565b50836001600160a01b0316856001600160a01b0316336001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516111fd929190614f91565b60405180910390a461121333868686868661379d565b5050505050565b5f611225858561326e565b905061123181846133d3565b5f808061123d846107f0565b919450925090506001600160a01b03831615806112ea57506040516302571be360e01b81526004810185905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa1580156112ba573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112de9190614fbe565b6001600160a01b031614155b1561130857604051635374b59960e01b815260040160405180910390fd5b5f806113138a6107f0565b90935091508a905061134f576113298633611480565b61134a57853360405163168ab55d60e31b81526004016107ad929190614dea565b61137a565b6113598a33611480565b61137a57893360405163168ab55d60e31b81526004016107ad929190614dea565b6113858689846138f7565b611390878483613932565b9650620100008416158015906113b457508363ffffffff1688851763ffffffff1614155b156113d55760405163a2a7201360e01b8152600481018790526024016107ad565b96831796610ab486868a868b613977565b5f826113f28133611480565b61141357803360405163168ab55d60e31b81526004016107ad929190614dea565b8360025f611420836107f0565b5091505063ffffffff828216161561144e5760405163a2a7201360e01b8152600481018490526024016107ad565b5f808061145a8a6107f0565b9250925092506114738a84848c61ffff16178485613977565b5098975050505050505050565b5f80808061148d866107f0565b925092509250846001600160a01b0316836001600160a01b031614806109415750610941838661299f565b6060815183511461151d5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b60648201526084016107ad565b5f83516001600160401b0381111561153757611537614525565b604051908082528060200260200182016040528015611560578160200160208202803683370190505b5090505f5b84518110156115cf576115aa85828151811061158357611583614f33565b602002602001015185838151811061159d5761159d614f33565b6020026020010151610746565b8282815181106115bc576115bc614f33565b6020908102919091010152600101611565565b509392505050565b6115df613215565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af115801561162b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061164f9190614fd9565b50505050565b5f6107ea82613a1e565b5f8061166b858561326e565b905061167681613510565b61169357604051635374b59960e01b815260040160405180910390fd5b5f61169e86336108e5565b9050801580156116b557506116b38233611480565b155b156116d757813360405163168ab55d60e31b81526004016107ad929190614dea565b5f80806116e3856107f0565b925092509250831580156116fa5750620400008216155b1561171b5760405163a2a7201360e01b8152600481018690526024016107ad565b5f6117258a6107f0565b92505050611734888383613932565b97506117428685858b613a33565b6040516001600160401b038916815286907ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b1329060200160405180910390a2509598975050505050505050565b611796613215565b61179f5f613a49565b565b6117b85f805160206154fc8339815191528461326e565b6117c28133611480565b6117e357803360405163168ab55d60e31b81526004016107ad929190614dea565b306001600160a01b0384160361181757604051632ca49b0d60e11b81526001600160a01b03841660048201526024016107ad565b6118376118315f805160206154fc8339815191528661326e565b83613a98565b604051632142170760e11b81523060048201526001600160a01b038481166024830152604482018690527f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906342842e0e906064015f604051808303815f87803b1580156118a4575f80fd5b505af11580156118b6573d5f803e3d5ffd5b5050505050505050565b5f8086866040516118d2929190614ff4565b6040519081900381206331a9108f60e11b82526004820181905291505f907f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa15801561193f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119639190614fbe565b90506001600160a01b0381163314801590611a09575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063e985e9c590604401602060405180830381865afa1580156119e3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a079190614fd9565b155b15611a4157611a255f805160206154fc8339815191528361326e565b3360405163168ab55d60e31b81526004016107ad929190614dea565b6040516323b872dd60e01b81526001600160a01b038281166004830152306024830152604482018490527f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906323b872dd906064015f604051808303815f87803b158015611aae575f80fd5b505af1158015611ac0573d5f803e3d5ffd5b5050604051630a3b53db60e21b81526001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a6051692506328ed4f6c9150611b129085903090600401614dea565b5f604051808303815f87803b158015611b29575f80fd5b505af1158015611b3b573d5f803e3d5ffd5b5050604051636b727d4360e11b8152600481018590526276a70092507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b0316915063d6e4fa8690602401602060405180830381865afa158015611ba7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611bcb9190614e64565b611bd59190614e8f565b9250611c1d88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508a9250505061ffff8816868861310d565b505095945050505050565b6001600160a01b0382163303611c925760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084016107ad565b335f8181526002602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b335f9081526004602052604081205460ff16611d2b5760405162461bcd60e51b81526004016107ad90615003565b5f8787604051611d3c929190614ff4565b604051908190038120633f2891eb60e21b8252600482018190523060248301526044820187905291507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b03169063fca247ac906064016020604051808303815f875af1158015611db5573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611dd99190614e64565b9150611e2d88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508a9250505061ffff8616611e276276a70087614e8f565b8861310d565b509695505050505050565b5f80611e43846107f0565b50841663ffffffff908116908516149250505092915050565b611e64613215565b6007546001600160a01b031615611f785760075460405163a22cb46560e01b81526001600160a01b0391821660048201525f60248201527f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063a22cb465906044015f604051808303815f87803b158015611ee0575f80fd5b505af1158015611ef2573d5f803e3d5ffd5b505060075460405163a22cb46560e01b81526001600160a01b0391821660048201525f60248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9909116925063a22cb46591506044015f604051808303815f87803b158015611f61575f80fd5b505af1158015611f73573d5f803e3d5ffd5b505050505b600780546001600160a01b0319166001600160a01b0383169081179091551561209b5760075460405163a22cb46560e01b81526001600160a01b039182166004820152600160248201527f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063a22cb465906044015f604051808303815f87803b158015612007575f80fd5b505af1158015612019573d5f803e3d5ffd5b505060075460405163a22cb46560e01b81526001600160a01b039182166004820152600160248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9909116925063a22cb46591506044015f604051808303815f87803b158015612089575f80fd5b505af1158015611213573d5f803e3d5ffd5b50565b335f9081526004602052604081205460ff166120cc5760405162461bcd60e51b81526004016107ad90615003565b5f6120e45f805160206154fc8339815191528561326e565b60405163c475abff60e01b815260048101869052602481018590529091505f906001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063c475abff906044016020604051808303815f875af1158015612154573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906121789190614e64565b6040516331a9108f60e11b8152600481018790529091507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa9250505080156121fc575060408051601f3d908101601f191682019092526121f991810190614fbe565b60015b6122095791506107ea9050565b6001600160a01b038116301415806122b157506040516302571be360e01b81526004810184905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015612281573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906122a59190614fbe565b6001600160a01b031614155b156122c0575091506107ea9050565b505f6122cf6276a70083614e8f565b5f8481526001602052604090205490915060a081901c6122f185838386613a33565b50919695505050505050565b5f866123098133611480565b61232a57803360405163168ab55d60e31b81526004016107ad929190614dea565b5f878760405161233b929190614ff4565b6040518091039020905061234f898261326e565b925061235b898461329a565b61236583866133d3565b5f6123a68a858b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061340692505050565b90506123b48a8588886134cd565b94506123bf84613510565b61246b576040516306ab592360e01b8152600481018b9052602481018390523060448201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906306ab5923906064016020604051808303815f875af1158015612434573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906124589190614e64565b506124668482898989613b83565b6124b0565b6124b08a858b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508d92508c91508b90506135fc565b5050509695505050505050565b5f6125005f86868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613bc59050565b6007549091506001600160a01b031661252c5760405163093075b560e21b815260040160405180910390fd5b6125368133611480565b61255757803360405163168ab55d60e31b81526004016107ad929190614dea565b5f8080612563846107f0565b919450925090505f6125748561085e565b905061257f85613c81565b60075f9054906101000a90046001600160a01b03166001600160a01b0316639198c2768a8a878787878e8e6040518963ffffffff1660e01b81526004016125cd989796959493929190615073565b5f604051808303815f87803b1580156125e4575f80fd5b505af11580156125f6573d5f803e3d5ffd5b50505050505050505050505050565b836126108133611480565b61263157803360405163168ab55d60e31b81526004016107ad929190614dea565b84601c5f61263e836107f0565b5091505063ffffffff828216161561266c5760405163a2a7201360e01b8152600481018490526024016107ad565b60405163cf40882360e01b8152600481018990523060248201526001600160a01b0387811660448301526001600160401b03871660648301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063cf408823906084015f604051808303815f87803b1580156126e8575f80fd5b505af11580156126fa573d5f803e3d5ffd5b5050506001600160a01b038816905061275f575f612717896107f0565b509150506201ffff196202000082160161274f57604051632ca49b0d60e11b81526001600160a01b03891660048201526024016107ad565b612759895f613a98565b506118b6565b5f61276989611655565b905061278981898b5f1c600160405180602001604052805f815250613d1e565b505050505050505050565b61279e838361326e565b6127a88133611480565b6127c957803360405163168ab55d60e31b81526004016107ad929190614dea565b7f6c32148f748aba23997146d7fe89e962e3cc30271290fb96f5f4337756c03b5284016128095760405163615a470360e01b815260040160405180910390fd5b6001600160a01b038216158061282757506001600160a01b03821630145b1561285057604051632ca49b0d60e11b81526001600160a01b03831660048201526024016107ad565b61164f611831858561326e565b5f80612869848461326e565b90505f61287582613510565b90505f805160206154fc83398151915285146128945791506107ea9050565b6040516331a9108f60e11b8152600481018590527f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa925050508015612915575060408051601f3d908101601f1916820190925261291291810190614fbe565b60015b612923575f925050506107ea565b6001600160a01b0316301492506107ea915050565b612940613215565b6001600160a01b0382165f81815260046020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf8791015b60405180910390a25050565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205460ff1690565b5f80612a105f87878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613dfe9050565b915091505f612a578288888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613bc59050565b90505f612a64828561326e565b5f818152600660205260409020909150612a7f888a8361511e565b507f6c32148f748aba23997146d7fe89e962e3cc30271290fb96f5f4337756c03b528201612ac05760405163615a470360e01b815260040160405180910390fd5b6040516302571be360e01b8152600481018290525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa158015612b25573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612b499190614fbe565b90506001600160a01b0381163314801590612bef575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063e985e9c590604401602060405180830381865afa158015612bc9573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612bed9190614fd9565b155b15612c1157813360405163168ab55d60e31b81526004016107ad929190614dea565b6001600160a01b03861615612c9c57604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a90612c6e9085908a90600401614dea565b5f604051808303815f87803b158015612c85575f80fd5b505af1158015612c97573d5f803e3d5ffd5b505050505b604051635b0fc9c360e01b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635b0fc9c390612cea9085903090600401614dea565b5f604051808303815f87803b158015612d01575f80fd5b505af1158015612d13573d5f803e3d5ffd5b50505050612789828a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201829052508d93509150819050613b83565b6001600160a01b038416612d7f5760405162461bcd60e51b81526004016107ad90614eee565b6001600160a01b038516331480612d9b5750612d9b853361299f565b612df95760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2063616c6c6572206973206e6f74206f776e6572206e6f7260448201526808185c1c1c9bdd995960ba1b60648201526084016107ad565b6112138585858585613d1e565b612e0e613215565b6001600160a01b038116612e735760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107ad565b61209b81613a49565b5f8181526006602052604081208054829190612e9790614eb6565b80601f0160208091040260200160405190810160405280929190818152602001828054612ec390614eb6565b8015612f0e5780601f10612ee557610100808354040283529160200191612f0e565b820191905f5260205f20905b815481529060010190602001808311612ef157829003601f168201915b5050505050905080515f03612f2557505f92915050565b5f80612f318382613dfe565b90925090505f612f418483613bc5565b9050610954818461285d565b5f8042836001600160401b03161015612f775761ffff1962010000851601612f73575f94505b5f93505b50929391925050565b5f6001600160e01b03198216636cdb3d1360e11b1480612fb057506001600160e01b031982166303a24d0760e21b145b806107ea57506301ffc9a760e01b6001600160e01b03198316146107ea565b5f612fd982611655565b9050806001600160a01b0316836001600160a01b0316036130465760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084016107ad565b336001600160a01b03821614806130625750613062813361299f565b6130d45760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016107ad565b6108e08383613eb2565b5f620200008381161480156108995750426130fc6276a700846151d7565b6001600160401b0316109392505050565b845160208601205f61312c5f805160206154fc8339815191528361326e565b90505f61315488604051806040016040528060058152602001626cae8d60e31b815250613f1f565b5f83815260066020526040902090915061316e82826151f7565b50613181828289620300008a1789613b83565b6001600160a01b038416156118b657604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a906131de9085908890600401614dea565b5f604051808303815f87803b1580156131f5575f80fd5b505af1158015613207573d5f803e3d5ffd5b505050505050505050505050565b5f546001600160a01b0316331461179f5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107ad565b604080516020808201949094528082019290925280518083038201815260609092019052805191012090565b5f80806132a6846107f0565b91945092509050426001600160401b0382161080801561336657506001600160a01b038416158061336657506040516302571be360e01b8152600481018690525f906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015613337573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061335b9190614fbe565b6001600160a01b0316145b156133a4575f613375876107f0565b50915050602081161561339e5760405163a2a7201360e01b8152600481018790526024016107ad565b506133cb565b620100008316156133cb5760405163a2a7201360e01b8152600481018690526024016107ad565b505050505050565b63fffdffff81811763ffffffff16146134025760405163a2a7201360e01b8152600481018390526024016107ad565b5050565b60605f6134aa8360065f8881526020019081526020015f20805461342990614eb6565b80601f016020809104026020016040519081016040528092919081815260200182805461345590614eb6565b80156134a05780601f10613477576101008083540402835291602001916134a0565b820191905f5260205f20905b81548152906001019060200180831161348357829003601f168201915b5050505050613f1f565b5f8581526006602052604090209091506134c482826151f7565b50949350505050565b5f806134d8856107f0565b925050505f806134e9885f1c6107f0565b92509250506134f98787846138f7565b613504858483613932565b98975050505050505050565b5f8061351b83611655565b6001600160a01b0316141580156107ea57506040516302571be360e01b81526004810183905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015613592573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906135b69190614fbe565b6001600160a01b03161492915050565b5f86815260066020526040812080546135e491879161342990614eb6565b90506135f38682868686613b83565b50505050505050565b5f8080613608886107f0565b9250925092505f61362f8860065f8d81526020019081526020015f20805461342990614eb6565b5f8a815260066020526040902080549192509061364b90614eb6565b90505f0361366c575f89815260066020526040902061366a82826151f7565b505b61367b89858886178589613977565b6001600160a01b03871661369857613693895f613a98565b610ab4565b610ab484888b5f1c600160405180602001604052805f815250613d1e565b6201ffff19620200008316016136d6576136d36276a700826151d7565b90505b42816001600160401b0316101561370f576201000082161561370a5760405162461bcd60e51b81526004016107ad90614f47565b613734565b60048216156137345760405163a2a7201360e01b8152600481018490526024016107ad565b604082165f036108e05750505f90815260036020526040902080546001600160a01b0319169055565b60c0816001600160401b0316901b60a08363ffffffff16901b846001600160a01b0316171760015f8681526020019081526020015f208190555050505050565b6001600160a01b0384163b156133cb5760405163bc197c8160e01b81526001600160a01b0385169063bc197c81906137e190899089908890889088906004016152b2565b6020604051808303815f875af192505050801561381b575060408051601f3d908101601f1916820190925261381891810190615303565b60015b6138c75761382761531e565b806308c379a003613860575061383b615337565b806138465750613862565b8060405162461bcd60e51b81526004016107ad91906143d4565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e20455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b60648201526084016107ad565b6001600160e01b0319811663bc197c8160e01b146135f35760405162461bcd60e51b81526004016107ad906153bf565b63ffff000082161580159060018316159082906139115750805b156112135760405163a2a7201360e01b8152600481018690526024016107ad565b5f816001600160401b0316846001600160401b03161115613951578193505b826001600160401b0316846001600160401b0316101561396f578293505b509192915050565b61398385858584613a33565b60405163ffffffff8416815285907f39873f00c80f4f94b7bd1594aebcf650f003545b74824d57ddf4939e3ff3a34b9060200160405180910390a2816001600160401b0316816001600160401b03161115611213576040516001600160401b038216815285907ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b132906020015b60405180910390a25050505050565b5f80613a29836107f0565b5090949350505050565b613a3d8483613f96565b61164f8484848461375d565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b613aa3826001611e38565b15613ac45760405163a2a7201360e01b8152600481018390526024016107ad565b613acd82613c81565b604051635b0fc9c360e01b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635b0fc9c390613b1b9085908590600401614dea565b5f604051808303815f87803b158015613b32575f80fd5b505af1158015613b44573d5f803e3d5ffd5b50506040516001600160a01b03841681528492507fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c49150602001612993565b613b8f85848484613fcf565b847f8ce7013e8abebc55c3890a68f5a27c67c3f7efa64e584de5fb22363c606fd34085858585604051613a0f9493929190615407565b5f805f613bd28585613dfe565b909250905081613c435760018551613bea919061544d565b8414613c385760405162461bcd60e51b815260206004820152601d60248201527f6e616d65686173683a204a756e6b20617420656e64206f66206e616d6500000060448201526064016107ad565b505f91506107ea9050565b613c4d8582613bc5565b6040805160208101929092528101839052606001604051602081830303815290604052805190602001209250505092915050565b5f8181526001602052604090205460a081901c60c082901c613ca4838383612f4d565b5f86815260036020526040812080546001600160a01b0319169055909350613cd091508590848461375d565b60408051858152600160208201525f916001600160a01b0386169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b5f805f613d2a866107f0565b925092509250613d3b8683836136b6565b846001148015613d5c5750876001600160a01b0316836001600160a01b0316145b613d785760405162461bcd60e51b81526004016107ad90614f47565b866001600160a01b0316836001600160a01b031603613d9957505050611213565b613da58688848461375d565b60408051878152602081018790526001600160a01b03808a1692908b169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46118b6338989898989614041565b5f8083518310613e505760405162461bcd60e51b815260206004820152601e60248201527f726561644c6162656c3a20496e646578206f7574206f6620626f756e6473000060448201526064016107ad565b5f848481518110613e6357613e63614f33565b016020015160f81c90508015613e8f57613e8885613e82866001615460565b836140fb565b9250613e93565b5f92505b613e9d8185615460565b613ea8906001615460565b9150509250929050565b5f81815260036020526040902080546001600160a01b0319166001600160a01b0384169081179091558190613ee682611655565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6060600183511015613f4457604051631406d65b60e11b815260040160405180910390fd5b60ff83511115613f69578260405163e3ba295f60e01b81526004016107ad91906143d4565b82518383604051602001613f7f93929190615473565b604051602081830303815290604052905092915050565b61ffff811615801590613fae57506201000181811614155b156134025760405163a2a7201360e01b8152600481018390526024016107ad565b613fd98483613f96565b5f848152600160205260409020546001600160a01b0381161561403557613fff85613c81565b6040515f815285907fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c49060200160405180910390a25b6112138585858561411d565b6001600160a01b0384163b156133cb5760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e619061408590899089908890889088906004016154b7565b6020604051808303815f875af19250505080156140bf575060408051601f3d908101601f191682019092526140bc91810190615303565b60015b6140cb5761382761531e565b6001600160e01b0319811663f23a6e6160e01b146135f35760405162461bcd60e51b81526004016107ad906153bf565b82515f906141098385615460565b1115614113575f80fd5b5091016020012090565b835f808061412a846107f0565b9194509250905063ffff000082166001600160401b038087169083161115614150578195505b42826001600160401b03161061416557958617955b6001600160a01b038416156141bc5760405162461bcd60e51b815260206004820152601f60248201527f455243313135353a206d696e74206f66206578697374696e6720746f6b656e0060448201526064016107ad565b6001600160a01b03881661421c5760405162461bcd60e51b815260206004820152602160248201527f455243313135353a206d696e7420746f20746865207a65726f206164647265736044820152607360f81b60648201526084016107ad565b306001600160a01b038916036142915760405162461bcd60e51b815260206004820152603460248201527f455243313135353a206e65774f776e65722063616e6e6f74206265207468652060448201527313985b5955dc985c1c195c8818dbdb9d1c9858dd60621b60648201526084016107ad565b61429d8589898961375d565b60408051868152600160208201526001600160a01b038a16915f9133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4612789335f8a88600160405180602001604052805f815250614041565b6001600160a01b038116811461209b575f80fd5b5f8060408385031215614327575f80fd5b823561433281614302565b946020939093013593505050565b5f60208284031215614350575f80fd5b5035919050565b6001600160e01b03198116811461209b575f80fd5b5f6020828403121561437c575f80fd5b813561089981614357565b5f5b838110156143a1578181015183820152602001614389565b50505f910152565b5f81518084526143c0816020860160208601614387565b601f01601f19169290920160200192915050565b602081525f61089960208301846143a9565b5f80604083850312156143f7575f80fd5b82359150602083013561440981614302565b809150509250929050565b80356001600160401b038116811461442a575f80fd5b919050565b5f8060408385031215614440575f80fd5b8235915061445060208401614414565b90509250929050565b5f8083601f840112614469575f80fd5b5081356001600160401b0381111561447f575f80fd5b602083019150836020828501011115614496575f80fd5b9250929050565b5f805f805f608086880312156144b1575f80fd5b85356144bc81614302565b945060208601356144cc81614302565b93506040860135925060608601356001600160401b038111156144ed575f80fd5b6144f988828901614459565b969995985093965092949392505050565b5f6020828403121561451a575f80fd5b813561089981614302565b634e487b7160e01b5f52604160045260245ffd5b601f8201601f191681016001600160401b038111828210171561455e5761455e614525565b6040525050565b5f6001600160401b0382111561457d5761457d614525565b50601f01601f191660200190565b5f82601f83011261459a575f80fd5b81356145a581614565565b6040516145b28282614539565b8281528560208487010111156145c6575f80fd5b826020860160208301375f92810160200192909252509392505050565b803563ffffffff8116811461442a575f80fd5b5f805f805f805f60e0888a03121561460c575f80fd5b8735965060208801356001600160401b03811115614628575f80fd5b6146348a828b0161458b565b965050604088013561464581614302565b9450606088013561465581614302565b935061466360808901614414565b925061467160a089016145e3565b915061467f60c08901614414565b905092959891949750929550565b5f6001600160401b038211156146a5576146a5614525565b5060051b60200190565b5f82601f8301126146be575f80fd5b813560206146cb8261468d565b6040516146d88282614539565b80915083815260208101915060208460051b8701019350868411156146fb575f80fd5b602086015b84811015611e2d5780358352918301918301614700565b5f805f805f60a0868803121561472b575f80fd5b853561473681614302565b9450602086013561474681614302565b935060408601356001600160401b0380821115614761575f80fd5b61476d89838a016146af565b94506060880135915080821115614782575f80fd5b61478e89838a016146af565b935060808801359150808211156147a3575f80fd5b506147b08882890161458b565b9150509295509295909350565b5f805f80608085870312156147d0575f80fd5b84359350602085013592506147e7604086016145e3565b91506147f560608601614414565b905092959194509250565b803561ffff8116811461442a575f80fd5b5f8060408385031215614822575f80fd5b8235915061445060208401614800565b5f8060408385031215614843575f80fd5b82356001600160401b0380821115614859575f80fd5b818501915085601f83011261486c575f80fd5b813560206148798261468d565b6040516148868282614539565b83815260059390931b85018201928281019150898411156148a5575f80fd5b948201945b838610156148cc5785356148bd81614302565b825294820194908201906148aa565b965050860135925050808211156148e1575f80fd5b50613ea8858286016146af565b5f815180845260208085019450602084015f5b8381101561491d57815187529582019590820190600101614901565b509495945050505050565b602081525f61089960208301846148ee565b5f805f6060848603121561494c575f80fd5b833561495781614302565b9250602084013561496781614302565b929592945050506040919091013590565b5f805f6060848603121561498a575f80fd5b83359250602084013591506149a160408501614414565b90509250925092565b5f805f606084860312156149bc575f80fd5b8335925060208401356149ce81614302565b915060408401356149de81614302565b809150509250925092565b5f805f805f608086880312156149fd575f80fd5b85356001600160401b03811115614a12575f80fd5b614a1e88828901614459565b9096509450506020860135614a3281614302565b9250614a4060408701614800565b91506060860135614a5081614302565b809150509295509295909350565b801515811461209b575f80fd5b5f8060408385031215614a7c575f80fd5b8235614a8781614302565b9150602083013561440981614a5e565b5f805f805f8060a08789031215614aac575f80fd5b86356001600160401b03811115614ac1575f80fd5b614acd89828a01614459565b9097509550506020870135614ae181614302565b9350604087013592506060870135614af881614302565b9150614b0660808801614800565b90509295509295509295565b5f8060408385031215614b23575f80fd5b82359150614450602084016145e3565b5f8060408385031215614b44575f80fd5b50508035926020909101359150565b5f805f805f8060a08789031215614b68575f80fd5b8635955060208701356001600160401b03811115614b84575f80fd5b614b9089828a01614459565b9096509450506040870135614ba481614302565b9250614bb2606088016145e3565b9150614b0660808801614414565b5f805f8060408587031215614bd3575f80fd5b84356001600160401b0380821115614be9575f80fd5b614bf588838901614459565b90965094506020870135915080821115614c0d575f80fd5b50614c1a87828801614459565b95989497509550505050565b5f805f8060808587031215614c39575f80fd5b843593506020850135614c4b81614302565b925060408501356147e781614302565b5f805f60608486031215614c6d575f80fd5b833592506020840135915060408401356149de81614302565b5f8060408385031215614c97575f80fd5b8235614ca281614302565b9150602083013561440981614302565b5f805f8060608587031215614cc5575f80fd5b84356001600160401b03811115614cda575f80fd5b614ce687828801614459565b9095509350506020850135614cfa81614302565b91506040850135614d0a81614302565b939692955090935050565b5f805f805f60a08688031215614d29575f80fd5b8535614d3481614302565b94506020860135614d4481614302565b9350604086013592506060860135915060808601356001600160401b03811115614d6c575f80fd5b6147b08882890161458b565b5f60208284031215614d88575f80fd5b81516001600160401b03811115614d9d575f80fd5b8201601f81018413614dad575f80fd5b8051614db881614565565b604051614dc58282614539565b828152866020848601011115614dd9575f80fd5b610954836020830160208701614387565b9182526001600160a01b0316602082015260400190565b5f805f8060808587031215614e14575f80fd5b84356001600160401b03811115614e29575f80fd5b614e358782880161458b565b9450506020850135614e4681614302565b9250614e5460408601614800565b91506060850135614d0a81614302565b5f60208284031215614e74575f80fd5b5051919050565b634e487b7160e01b5f52601160045260245ffd5b6001600160401b03818116838216019080821115614eaf57614eaf614e7b565b5092915050565b600181811c90821680614eca57607f821691505b602082108103614ee857634e487b7160e01b5f52602260045260245ffd5b50919050565b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b634e487b7160e01b5f52603260045260245ffd5b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b604081525f614fa360408301856148ee565b8281036020840152614fb581856148ee565b95945050505050565b5f60208284031215614fce575f80fd5b815161089981614302565b5f60208284031215614fe9575f80fd5b815161089981614a5e565b818382375f9101908152919050565b60208082526028908201527f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f604082015267373a3937b63632b960c11b606082015260800190565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b60c081525f61508660c083018a8c61504b565b6001600160a01b03898116602085015263ffffffff891660408501526001600160401b03881660608501528616608084015282810360a08401526150cb81858761504b565b9b9a5050505050505050505050565b601f8211156108e057805f5260205f20601f840160051c810160208510156150ff5750805b601f840160051c820191505b81811015611213575f815560010161510b565b6001600160401b0383111561513557615135614525565b615149836151438354614eb6565b836150da565b5f601f84116001811461517a575f85156151635750838201355b5f19600387901b1c1916600186901b178355611213565b5f83815260208120601f198716915b828110156151a95786850135825560209485019460019092019101615189565b50868210156151c5575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b6001600160401b03828116828216039080821115614eaf57614eaf614e7b565b81516001600160401b0381111561521057615210614525565b6152248161521e8454614eb6565b846150da565b602080601f831160018114615257575f84156152405750858301515b5f19600386901b1c1916600185901b1785556133cb565b5f85815260208120601f198616915b8281101561528557888601518255948401946001909101908401615266565b50858210156152a257878501515f19600388901b60f8161c191681555b5050505050600190811b01905550565b6001600160a01b0386811682528516602082015260a0604082018190525f906152dd908301866148ee565b82810360608401526152ef81866148ee565b9050828103608084015261350481856143a9565b5f60208284031215615313575f80fd5b815161089981614357565b5f60033d11156153345760045f803e505f5160e01c5b90565b5f60443d10156153445790565b6040516003193d81016004833e81513d6001600160401b03816024840111818411171561537357505050505090565b828501915081518181111561538b5750505050505090565b843d87010160208285010111156153a55750505050505090565b6153b460208286010187614539565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b608081525f61541960808301876143a9565b6001600160a01b039590951660208301525063ffffffff9290921660408301526001600160401b0316606090910152919050565b818103818111156107ea576107ea614e7b565b808201808211156107ea576107ea614e7b565b60ff60f81b8460f81b1681525f8351615493816001850160208801614387565b8351908301906154aa816001840160208801614387565b0160010195945050505050565b6001600160a01b03868116825285166020820152604081018490526060810183905260a0608082018190525f906154f0908301846143a9565b97965050505050505056fe93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4aea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2a68925cf5169f28586095d5b5b9933b3008f4c793a48be4f59b8b2bc62aa60a":"0x1","0x54cdd369e4e8a8515e52ca72ec816c2101831ad1f18bf44102ed171459c9b4f8":"0x2","0xa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb49":"0xffffffffffffffff000100010000000000000000000000000000000000000000","0xafa26c20e8b3d9a2853d642cfe1021dae26242ffedfac91c97aab212c1a4b93b":"0xffffffffffffffff000100010000000000000000000000000000000000000000","0xef5b11c47ebee44618abc22110e10e3b408ea5e799056d2b38461aa7b97c5a97":"0x1","0xfb9e8e321b8a5ec48f12a7b41f22c6e595d761285c9eb19d8dda7c99edf1b54f":"0x36574680000000000000000000000000000000000000000000000000000000a"}},"0x6e1eb616c7d69491f9a880f815ff5574768cba20":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b506004361061007a575f3560e01c806314ab90381161005857806314ab90381461010357806316a25cbd146101165780631896f70a146101625780635b0fc9c314610175575f80fd5b80630178b8bf1461007e57806302571be3146100c657806306ab5923146100ee575b5f80fd5b6100a961008c366004610403565b5f908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100a96100d4366004610403565b5f908152602081905260409020546001600160a01b031690565b6101016100fc366004610435565b610188565b005b610101610111366004610467565b610242565b610149610124366004610403565b5f90815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100bd565b6101016101703660046104a1565b6102e2565b6101016101833660046104a1565b610374565b5f8381526020819052604090205483906001600160a01b031633146101ab575f80fd5b60408051602080820187905281830186905282518083038401815260608301808552815191909201206001600160a01b0386169091529151859187917fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829181900360800190a35f90815260208190526040902080546001600160a01b0319166001600160a01b039390931692909217909155505050565b5f8281526020819052604090205482906001600160a01b03163314610265575f80fd5b60405167ffffffffffffffff8316815283907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a2505f91825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b5f8281526020819052604090205482906001600160a01b03163314610305575f80fd5b6040516001600160a01b038316815283907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a2505f9182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b5f8281526020819052604090205482906001600160a01b03163314610397575f80fd5b6040516001600160a01b038316815283907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a2505f9182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b5f60208284031215610413575f80fd5b5035919050565b80356001600160a01b0381168114610430575f80fd5b919050565b5f805f60608486031215610447575f80fd5b833592506020840135915061045e6040850161041a565b90509250925092565b5f8060408385031215610478575f80fd5b82359150602083013567ffffffffffffffff81168114610496575f80fd5b809150509250929050565b5f80604083850312156104b2575f80fd5b823591506104c26020840161041a565b9050925092905056fea164736f6c6343000818000a","storage":{"0x859ecef2e168dc10231b000bd53493b42bc9d944cac29d94582c1e1d43592131":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x7bb6cd9be29fab783c0b494a06fed8b2e2596b7a":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100ea5760003560e01c80636debcb8d1161008c578063b34f33c511610066578063b34f33c514610741578063d0778d6c14610814578063ef2c3088146108f2578063f5090c1e14610980576100ea565b80636debcb8d146105ca5780636fab95b3146106585780637b1039991461071d576100ea565b8063511f1112116100c8578063511f1112146103c557806361603dd91461044857806368b6154f146104bd5780636ccbae5f1461059b576100ea565b806307eca395146100ef578063280d9b051461021457806330135293146102f2575b600080fd5b610212600480360360a081101561010557600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561013457600080fd5b82018360208201111561014657600080fd5b803590602001918460018302840111600160201b8311171561016757600080fd5b919390929091602081019035600160201b81111561018457600080fd5b82018360208201111561019657600080fd5b803590602001918460018302840111600160201b831117156101b757600080fd5b919390929091602081019035600160201b8111156101d457600080fd5b8201836020820111156101e657600080fd5b803590602001918460018302840111600160201b8311171561020757600080fd5b509092509050610aae565b005b610212600480360360a081101561022a57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561026457600080fd5b82018360208201111561027657600080fd5b803590602001918460018302840111600160201b8311171561029757600080fd5b919390929091602081019035600160201b8111156102b457600080fd5b8201836020820111156102c657600080fd5b803590602001918460018302840111600160201b831117156102e757600080fd5b509092509050610c92565b6102126004803603608081101561030857600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561033757600080fd5b82018360208201111561034957600080fd5b803590602001918460018302840111600160201b8311171561036a57600080fd5b919390929091602081019035600160201b81111561038757600080fd5b82018360208201111561039957600080fd5b803590602001918460018302840111600160201b831117156103ba57600080fd5b509092509050610e3d565b610212600480360360608110156103db57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561040a57600080fd5b82018360208201111561041c57600080fd5b803590602001918460018302840111600160201b8311171561043d57600080fd5b509092509050610fcc565b6102126004803603604081101561045e57600080fd5b81359190810190604081016020820135600160201b81111561047f57600080fd5b82018360208201111561049157600080fd5b803590602001918460018302840111600160201b831117156104b257600080fd5b5090925090506110c9565b610212600480360360a08110156104d357600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561050d57600080fd5b82018360208201111561051f57600080fd5b803590602001918460018302840111600160201b8311171561054057600080fd5b919390929091602081019035600160201b81111561055d57600080fd5b82018360208201111561056f57600080fd5b803590602001918460018302840111600160201b8311171561059057600080fd5b5090925090506111ae565b6105b8600480360360208110156105b157600080fd5b50356113a8565b60408051918252519081900360200190f35b610212600480360360808110156105e057600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561061a57600080fd5b82018360208201111561062c57600080fd5b803590602001918460018302840111600160201b8311171561064d57600080fd5b5090925090506113ba565b6102126004803603606081101561066e57600080fd5b81359190810190604081016020820135600160201b81111561068f57600080fd5b8201836020820111156106a157600080fd5b803590602001918460018302840111600160201b831117156106c257600080fd5b919390929091602081019035600160201b8111156106df57600080fd5b8201836020820111156106f157600080fd5b803590602001918460018302840111600160201b8311171561071257600080fd5b5090925090506114d4565b610725611675565b604080516001600160a01b039092168252519081900360200190f35b6102126004803603608081101561075757600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561078657600080fd5b82018360208201111561079857600080fd5b803590602001918460018302840111600160201b831117156107b957600080fd5b919390929091602081019035600160201b8111156107d657600080fd5b8201836020820111156107e857600080fd5b803590602001918460018302840111600160201b8311171561080957600080fd5b509092509050611684565b610212600480360360a081101561082a57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561086457600080fd5b82018360208201111561087657600080fd5b803590602001918460018302840111600160201b8311171561089757600080fd5b919390929091602081019035600160201b8111156108b457600080fd5b8201836020820111156108c657600080fd5b803590602001918460018302840111600160201b831117156108e757600080fd5b5090925090506117de565b6102126004803603608081101561090857600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561094257600080fd5b82018360208201111561095457600080fd5b803590602001918460018302840111600160201b8311171561097557600080fd5b5090925090506119e4565b610212600480360360c081101561099657600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156109d057600080fd5b8201836020820111156109e257600080fd5b803590602001918460018302840111600160201b83111715610a0357600080fd5b919390929091602081019035600160201b811115610a2057600080fd5b820183602082011115610a3257600080fd5b803590602001918460018302840111600160201b83111715610a5357600080fd5b919390929091602081019035600160201b811115610a7057600080fd5b820183602082011115610a8257600080fd5b803590602001918460018302840111600160201b83111715610aa357600080fd5b509092509050611ad3565b610bb163ce9fb82b89898989898960405160240180876001600160a01b03166001600160a01b0316815260200186815260200180602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f820116905080830192505050985050505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208884848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b600154604051630119f80560e21b81526001600160a01b038a811660048301908152602483018b9052608060448401908152608484018a90529190931692630467e014928c928c928c928c928c928c92909190606481019060a401878780828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f82011690508083019250505098505050505050505050600060405180830381600087803b158015610c7057600080fd5b505af1158015610c84573d6000803e3d6000fd5b505050505050505050505050565b610d8363b88d4fde888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040516315eab15d60e21b81526001600160a01b03898116600483019081528982166024840152604483018990526080606484019081526084840188905291909316926357aac574928b928b928b928b928b929160a401848480828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b158015610e1c57600080fd5b505af1158015610e30573d6000803e3d6000fd5b5050505050505050505050565b610f09637c69eae28787878760405160240180856001600160a01b03166001600160a01b0316815260200184815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09d909d1b9c909c178c529351909a208a51918d01849004840282018401909a528b81528f985096508b95508a94508493505085019050838280828437600092019190915250611d5492505050565b600154604051630119f80560e21b81526001600160a01b038881166004830190815260248301899052608060448401908152608484018890529190931692630467e014928a928a928a928a9290606481019060a401858580828437600081840152601f19601f8201169050808301925050508381038252600081526020016020019650505050505050600060405180830381600087803b158015610fac57600080fd5b505af1158015610fc0573d6000803e3d6000fd5b50505050505050505050565b604080516001600160a01b038616602482015260448082018690528251808303909101815260649091018252602081810180516001600160e01b0316632392c18960e01b17815291519091208251601f85018390048302810183019093528383526110569290918691908690869081908401838280828437600092019190915250611d5492505050565b60015460408051631292e83560e11b81526001600160a01b0387811660048301526024820187905291519190921691632525d06a91604480830192600092919082900301818387803b1580156110ab57600080fd5b505af11580156110bf573d6000803e3d6000fd5b5050505050505050565b6040805160248082018690528251808303909101815260449091018252602081810180516001600160e01b0316630852cd8d60e31b17815291519091208251601f85018390048302810183019093528383526111449290918691908690869081908401838280828437600092019190915250611d5492505050565b6001546040805163e67ca8a360e01b81526004810186905290516001600160a01b039092169163e67ca8a39160248082019260009290919082900301818387803b15801561119157600080fd5b505af11580156111a5573d6000803e3d6000fd5b50505050505050565b61129f639e5be9a5888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b03909316926302759c37928b928b9286926368b62d32928d928d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561132757600080fd5b505afa15801561133b573d6000803e3d6000fd5b505050506040513d602081101561135157600080fd5b5051604080516001600160e01b031960e087901b1681526001600160a01b03948516600482015292909316602483015260448201529051606480830192600092919082900301818387803b158015610e1c57600080fd5b60009081526020819052604090205490565b604080516001600160a01b0380881660248301528616604482015260648082018690528251808303909101815260849091018252602081810180516001600160e01b0316632142170760e11b17815291519091208251601f850183900483028101830190935283835261144c9290918691908690869081908401838280828437600092019190915250611d5492505050565b600154604080516315eab15d60e21b81526001600160a01b0388811660048301528781166024830152604482018790526080606483015260006084830181905292519316926357aac5749260c48084019391929182900301818387803b1580156114b557600080fd5b505af11580156114c9573d6000803e3d6000fd5b505050505050505050565b611585635cbe11128686866040516024018084815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09c909c1b9b909b178b5293519099208951918c018490048402820184019099528a81528e975095508a9450899350839250508401838280828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b039093169263e67ca8a39284926368b62d32928b928b928b929190606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561160b57600080fd5b505afa15801561161f573d6000803e3d6000fd5b505050506040513d602081101561163557600080fd5b5051604080516001600160e01b031960e085901b168152600481019290925251602480830192600092919082900301818387803b1580156114b557600080fd5b6001546001600160a01b031690565b61175063d8d3cc6e8787878760405160240180856001600160a01b03166001600160a01b0316815260200184815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09d909d1b9c909c178c529351909a208a51918d01849004840282018401909a528b81528f985096508b95508a94508493505085019050838280828437600092019190915250611d5492505050565b60015460405163b546666960e01b81526001600160a01b03888116600483019081526024830189905260606044840190815260648401889052919093169263b5466669928a928a928a928a9290608401848480828437600081840152601f19601f82011690508083019250505095505050505050600060405180830381600087803b158015610fac57600080fd5b6118cf639d743989888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b03909316926357aac574928b928b9286926368b62d32928d928d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561195757600080fd5b505afa15801561196b573d6000803e3d6000fd5b505050506040513d602081101561198157600080fd5b5051604080516001600160e01b031960e087901b1681526001600160a01b039485166004820152929093166024830152604482015260806064820152600060848201819052915160c4808301939282900301818387803b158015610e1c57600080fd5b604080516001600160a01b0380881660248301528616604482015260648082018690528251808303909101815260849091018252602081810180516001600160e01b03166323b872dd60e01b17815291519091208251601f8501839004830281018301909352838352611a769290918691908690869081908401838280828437600092019190915250611d5492505050565b600154604080516302759c3760e01b81526001600160a01b038881166004830152878116602483015260448201879052915191909216916302759c3791606480830192600092919082900301818387803b1580156114b557600080fd5b611bf063c29b52f98a8a8a8a8a8a8a60405160240180886001600160a01b03166001600160a01b03168152602001876001600160a01b03166001600160a01b0316815260200186815260200180602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f82011690508083019250505099505050505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208884848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b8152600481018a815260248201928352604482018990526001600160a01b03909316926357aac574928d928d9286926368b62d32928f928f928f92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b158015611c7857600080fd5b505afa158015611c8c573d6000803e3d6000fd5b505050506040513d6020811015611ca257600080fd5b50516040516001600160e01b031960e086901b1681526001600160a01b0380851660048301908152908416602483015260448201839052608060648301908152608483018b90528b928b92919060a401848480828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b158015611d3157600080fd5b505af1158015611d45573d6000803e3d6000fd5b50505050505050505050505050565b6000828152602081815260408083205481518084018890523060601b81840152605480820183905283518083039091018152607490910190925281519190920120909190611db3908490611da790611ea9565b9063ffffffff611efa16565b90506001600160a01b03811615801590611e4957506001546040805163430c208160e01b81526001600160a01b038481166004830152602482018890529151919092169163430c2081916044808301926020929190829003018186803b158015611e1c57600080fd5b505afa158015611e30573d6000803e3d6000fd5b505050506040513d6020811015611e4657600080fd5b50515b611e8e576040805162461bcd60e51b8152602060048201526011602482015270494e56414c49445f5349474e415455524560781b604482015290519081900360640190fd5b50505060009081526020819052604090208054600101905550565b604080517f19457468657265756d205369676e6564204d6573736167653a0a333200000000602080830191909152603c8083019490945282518083039094018452605c909101909152815191012090565b60008151604114611f0d57506000611fe3565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0821115611f535760009350505050611fe3565b8060ff16601b14158015611f6b57508060ff16601c14155b15611f7c5760009350505050611fe3565b6040805160008152602080820180845289905260ff8416828401526060820186905260808201859052915160019260a0808401939192601f1981019281900390910190855afa158015611fd3573d6000803e3d6000fd5b5050506020604051035193505050505b9291505056fea265627a7a7231582014816bfd0c1519ce8c4cf272eb0526ffdba3abef0df7f17deb0da40bd8abb77f64736f6c634300050c0032","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533"}},"0x7c3c91245769c8b7450ad522792dec4bd4bf797f":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b506004361061003f575f3560e01c80631bf7e13e146100435780636ccbae5f1461006c578063a424740014610099575b5f80fd5b610056610051366004610749565b6100bc565b604051610063919061082c565b60405180910390f35b61008b61007a36600461083e565b5f9081526001602052604090205490565b604051908152602001610063565b6100ac6100a7366004610749565b6101d6565b6040519015158152602001610063565b60605f5a90506100cd8585856101d6565b6101315760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e61676572466f727761726465723a205349474e415455604482015269149157d253959053125160b21b60648201526084015b60405180910390fd5b6101cb6101416020870187610870565b5f546001600160a01b031660408801358461015f60608b018b610889565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f9201919091525061023292505050565b9150505b9392505050565b5f61022a6101e38561093a565b5f54604080516020601f88018190048102820181019092528681526001600160a01b03909216919087908790819084018382808284375f9201919091525061030e92505050565b949350505050565b606061023d85610453565b5f80876001600160a01b0316866102568b8a898961047e565b60405161026391906109f5565b5f604051808303815f8787f1925050503d805f811461029d576040519150601f19603f3d011682016040523d82523d5f602084013e6102a2565b606091505b5090925090506102b3603f87610a10565b5a116102c1576102c1610a2f565b61030182826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506104ae565b9998505050505050505050565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015610352573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103769190610a43565b90505f6104238660600151805190602001208688602001516040516020016103c39392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561044957508551610449906001600160a01b031682866104e7565b9695505050505050565b5f8181526001602081905260409091205461046d91610a5a565b5f9182526001602052604090912055565b606082858560405160200161049593929190610a7f565b6040516020818303038152906040529050949350505050565b606083156104bd5750816101cf565b8251156104cd5782518084602001fd5b8160405162461bcd60e51b8152600401610128919061082c565b5f805f6104f48585610622565b90925090505f81600481111561050c5761050c610abd565b14801561052a5750856001600160a01b0316826001600160a01b0316145b1561053a576001925050506101cf565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401610561929190610ad1565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161059f91906109f5565b5f60405180830381855afa9150503d805f81146105d7576040519150601f19603f3d011682016040523d82523d5f602084013e6105dc565b606091505b50915091508180156105ef575080516020145b801561061657508051630b135d3f60e11b906106149083016020908101908401610a43565b145b98975050505050505050565b5f808251604103610656576020830151604084015160608501515f1a61064a87828585610664565b9450945050505061065d565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561069957505f90506003610740565b8460ff16601b141580156106b157508460ff16601c14155b156106c157505f90506004610740565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610712573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b03811661073a575f60019250925050610740565b91505f90505b94509492505050565b5f805f6040848603121561075b575f80fd5b833567ffffffffffffffff80821115610772575f80fd5b9085019060808288031215610785575f80fd5b9093506020850135908082111561079a575f80fd5b818601915086601f8301126107ad575f80fd5b8135818111156107bb575f80fd5b8760208285010111156107cc575f80fd5b6020830194508093505050509250925092565b5f5b838110156107f95781810151838201526020016107e1565b50505f910152565b5f81518084526108188160208601602086016107df565b601f01601f19169290920160200192915050565b602081525f6101cf6020830184610801565b5f6020828403121561084e575f80fd5b5035919050565b80356001600160a01b038116811461086b575f80fd5b919050565b5f60208284031215610880575f80fd5b6101cf82610855565b5f808335601e1984360301811261089e575f80fd5b83018035915067ffffffffffffffff8211156108b8575f80fd5b60200191503681900382131561065d575f80fd5b634e487b7160e01b5f52604160045260245ffd5b6040516080810167ffffffffffffffff81118282101715610903576109036108cc565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610932576109326108cc565b604052919050565b5f6080823603121561094a575f80fd5b6109526108e0565b61095b83610855565b81526020808401358183015260408401356040830152606084013567ffffffffffffffff8082111561098b575f80fd5b9085019036601f83011261099d575f80fd5b8135818111156109af576109af6108cc565b6109c1601f8201601f19168501610909565b915080825236848285010111156109d6575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b5f8251610a068184602087016107df565b9190910192915050565b5f82610a2a57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b5f60208284031215610a53575f80fd5b5051919050565b80820180821115610a7957634e487b7160e01b5f52601160045260245ffd5b92915050565b5f8451610a908184602089016107df565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f61022a604083018461080156fea164736f6c6343000818000a","storage":{"0x0":"0x39a27956b78d00a4e00ea8833ff0947410a2933f"}},"0x8861cdfa38838531275ce12f9e795c3b9ff29cbe":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x936188f2c3c8e8c95e425b6fe41c2ac9e701585e":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x94f57ed7e9af03a10e8eb23ce1b3c7914a182b0f":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x95f29431aeb52c0d5dbeeec36010b8e2ca69cb3d":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x9b2565a3545a1312bdcb6e7148a7f7cae8c2706b":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c806373cc48a61161008857806398d35f201161006357806398d35f2014610215578063bd7ed31a1461021d578063c327deef14610245578063d7b82ebe1461026d575f80fd5b806373cc48a6146101af5780638438dc04146101ef5780638da5cb5b14610202575f80fd5b806313af4035116100c357806313af40351461015657806328e7677d146101695780632c095cbb1461017c578063435cc1621461018f575f80fd5b8063020ed8d3146100e9578063087991bc146100fe5780630b1a249514610143575b5f80fd5b6100fc6100f73660046122ff565b610280565b005b61011161010c36600461238a565b610300565b6040805163ffffffff94851681529390921660208401526001600160601b031916908201526060015b60405180910390f35b6100fc610151366004612510565b61036c565b6100fc6101643660046125c6565b6104da565b6100fc6101773660046122ff565b610512565b6100fc61018a3660046125e1565b61058a565b6101a261019d366004612674565b610656565b60405161013a919061278c565b6101d76101bd36600461279e565b60046020525f90815260409020546001600160a01b031681565b6040516001600160a01b03909116815260200161013a565b6100fc6101fd3660046122ff565b6106d2565b6001546101d7906001600160a01b031681565b6101a261074a565b6101d761022b36600461279e565b60056020525f90815260409020546001600160a01b031681565b6101d761025336600461279e565b60036020525f90815260409020546001600160a01b031681565b6101a261027b3660046127b7565b6107d5565b6001546001600160a01b03163314610296575f80fd5b60ff82165f8181526003602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527ff73c3c226af96b7f1ba666a21b3ceaf2be3ee6a365e3178fd9cd1eaae0075aa891015b60405180910390a15050565b5f805f8060025f8787604051610317929190612817565b604080519182900390912082526020808301939093529081015f90812061ffff8b16825290925290205463ffffffff80821695506401000000008204169350600160401b900460601b91505093509350939050565b83516020808601919091205f90815260028252604080822061ffff891683529092529081205463ffffffff16906103a385846107ea565b90506103b0818784610889565b6103b8612239565b845151156103d7576103ca85856107ea565b90506103d7818885610889565b5f6103e1836108cc565b602081015190915060fe16156103f5575f80fd5b61040081602761092a565b158015610425575061041381600261092a565b1580610425575061042581600661092a565b61042d575f80fd5b61043e89898561012001518461093a565b156104795787516020808a01919091205f90815260028252604080822061ffff8d1683529092522080546001600160e01b03191690556104cf565b6104988884610120015183856101200151610493876108cc565b610968565b156100e55787516020808a01919091205f90815260028252604080822061ffff8d1683529092522080546001600160e01b03191690555b505050505050505050565b6001546001600160a01b031633146104f0575f80fd5b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6001546001600160a01b03163314610528575f80fd5b60ff82165f8181526004602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527f2fcc274c3b72dd483ab201bfa87295e3817e8b9b10693219873b722ca1af00c791016102f4565b610592612239565b61059c83836107ea565b805190915061ffff16602f146105b0575f80fd5b60a081015184516020808701919091205f90815260028252604080822061ffff8a16835290925220546105e9919063ffffffff16610a7c565b6105f1575f80fd5b5f6105fb82610a94565b9050805151602082015110156100e55761061c818361012001518789610aab565b505082516020808501919091205f90815260028252604080822061ffff881683529092522080546001600160e01b03191690555b50505050565b60605f83838080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201829052509394505050505b85518110156106c7576106bd8682815181106106af576106af612826565b602002602001015183610c4a565b9150600101610691565b5090505b9392505050565b6001546001600160a01b031633146106e8575f80fd5b60ff82165f8181526005602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527fc7eec866a7a1386188cc3ca20ffea75b71bd3e90a60b6791b1d3f0971145118d91016102f4565b5f80546107569061283a565b80601f01602080910402602001604051908101604052809291908181526020018280546107829061283a565b80156107cd5780601f106107a4576101008083540402835291602001916107cd565b820191905f5260205f20905b8154815290600101906020018083116107b057829003601f168201915b505050505081565b60606107e18383610c4a565b90505b92915050565b6107f2612239565b82516107fd90610dc6565b905061080d8160e0015183610ebf565b610815575f80fd5b5f61082382835f0151610f25565b604083015190915060ff16610838825f610fcc565b14610841575f80fd5b610120820181905260808201516108589042610a7c565b610860575f80fd5b61086e428360a00151610a7c565b610876575f80fd5b61088281838686611026565b5092915050565b6108978360a0015182610a7c565b61089f575f80fd5b825161ffff166032146108b0575f80fd5b6108bf83610120015183611106565b6108c7575f80fd5b505050565b6040805160c0810182525f8082526020820181905291810182905260608082018190526080820183905260a08201529061090583610a94565b60a081015160c08201519192506106cb91610921908290612880565b83519190611172565b5f6107e18360a001515f846112b4565b5f6109468284866113c1565b1561095d57610955828661092a565b159050610960565b505f5b949350505050565b60208101515f9060fe161561097b575f80fd5b5f610985866113e6565b90505f610991856113e6565b90505f8061099f8a82611401565b6109aa906001612893565b60ff1690505b8951811015610a6b57836109dc896109d784858f516109cf9190612880565b8f9190611424565b6114a4565b03610a3f575f6109f7876109d785868f516109cf9190612880565b90508660800151841015610a23578381118015610a175750866080015181105b95505050505050610a73565b83811180610a1757508660800151811095505050505050610a73565b905080610a4c8a82611401565b610a57906001612893565b610a649060ff16826128ac565b90506109b0565b505f93505050505b95945050505050565b5f80610a8883856128bf565b60030b12159392505050565b610a9c61228e565b6107e48261010001515f61152d565b60a084015184515f90610abe9083611548565b90505f8660a001518760c00151610ad59190612880565b9050818111610ae2575f80fd5b5f610aed868861159f565b9050805f03610b1a57610b0c610b0384866128ac565b895190876112b4565b15610b15575f80fd5b610b5b565b87515f90610b29908686611424565b90505f8213610b36575f80fd5b5f610b41898361159f565b12156104cf575f610b52888361159f565b126104cf575f80fd5b5050505050505050565b60c08101516020820181905281515111610b7c5750565b5f610b8e825f01518360200151611548565b8260200151610b9d91906128ac565b8251909150610bac90826116ec565b61ffff166040830152610bc06002826128ac565b8251909150610bcf90826116ec565b61ffff166060830152610be36002826128ac565b8251909150610bf29082611712565b63ffffffff166080830152610c086004826128ac565b82519091505f90610c1990836116ec565b61ffff169050610c2a6002836128ac565b60a084018190529150610c3d81836128ac565b60c0909301929092525050565b6060610c54612239565b610c5e84846107ea565b61012081015180516020918201205f908152600282526040808220845161ffff16835290925220805491925090600160401b900460601b6001600160601b03191615610cc35760a08201518154610cbb919063ffffffff16610a7c565b610cc3575f80fd5b604080516060808201835260a085015163ffffffff9081168352608086015181166020808501918252610100880180518051908301206001600160601b0319168688019081526101208a0180518051908501205f908152600285528981208c5161ffff16825290945292889020965187549451915190961c600160401b0268010000000000000000600160e01b03199186166401000000000267ffffffffffffffff19909516969095169590951792909217939093169190911790925551905191517f55ced933cdd5a34dd03eb5d4bef19ec6ebb251dcd7a988eee0c1b9a13baaa88b92610db192916128e6565b60405180910390a15061010001519392505050565b610dce612239565b610dd8825f6116ec565b61ffff168152610de9826002611401565b60ff166020820152610dfc826003611401565b60ff166040820152610e0f826004611712565b63ffffffff9081166060830152610e2b90839060089061171216565b63ffffffff9081166080830152610e47908390600c9061171216565b63ffffffff90811660a0830152610e639083906010906116ec16565b61ffff1660c0820152610e7782601261173a565b60e0820181905251610eb490610e8e9060126128ac565b8260e001515160128551610ea29190612880565b610eac9190612880565b849190611424565b610100820152919050565b5f80610ed5610ece8483611548565b84906116ec565b83516020808601919091208651878301205f90815260028352604080822061ffff90951682529390925291902054600160401b900460601b6001600160601b031990811691161491505092915050565b60605f610f3184610a94565b90505b8051516020820151101561088257606081015161ffff16600114610f56575f80fd5b81515f03610f6e57610f6781611754565b9150610fa7565b60208101518151610f7e91611548565b825114610f89575f80fd5b805160208201518351610f9f9285925f92611775565b610fa7575f80fd5b8261ffff16816040015161ffff1614610fbe575f80fd5b610fc781610b65565b610f34565b5f805b83518310610fdf57610fdf61290a565b5f610fea8585611401565b60ff169050610ffa8160016128ac565b61100490856128ac565b9350805f0361101357506107e1565b61101e6001836128ac565b915050610fcf565b83518360e00151511115611038575f80fd5b61105c5f858560e0015151875161104f9190612880565b60e0870151929190611797565b611064575f80fd5b5f61106f828261152d565b9050602b61ffff16816040015161ffff160361109d576110908484836117cb565b611098575f80fd5b6110ff565b603061ffff16816040015161ffff16036110bc5761109084848361185f565b60405162461bcd60e51b8152602060048201526014602482015273139bc81d985b1a59081c1c9bdbd988199bdd5b9960621b604482015260640160405180910390fd5b5050505050565b5f806111128482611401565b61111d906001612893565b60ff1690505f5b835181101561095d5761113984828785611797565b15611149576001925050506107e4565b6111538482611401565b61115e906001612893565b61116b9060ff16826128ac565b9050611124565b6040805160c0810182525f8082526020820181905291810182905260608082018190526080820183905260a0820152906111ac83856128ac565b90506111c26111bb5f866128ac565b8690611401565b60ff1682526111d56111bb6001866128ac565b60ff1660208301526111f26111eb6002866128ac565b86906116ec565b61ffff1660408301525f61121161120a6004876128ac565b8790611401565b905061121e6005866128ac565b945061122e868660ff8416611424565b606084015261124060ff8216866128ac565b94505f61124d8787611401565b905060208160ff16111561125f575f80fd5b61126a6001876128ac565b955061127a878760ff8416611900565b608085015261128c60ff8216876128ac565b95506112a48661129c8186612880565b899190611424565b60a0850152509195945050505050565b5f60ff600883811c82169183916112cc918616612932565b90505f6112dd600780871690612952565b600160ff919091161b9050855b87518110156113b4575f6112fe8983611401565b90505f61131661130f8460016128ac565b8b90611401565b90508160ff168660ff161015611334575f96505050505050506106cb565b8160ff168660ff1603611393578460ff168160ff161161135c575f96505050505050506106cb565b8361137f61136d60ff8816866128ac565b6113789060026128ac565b8c90611401565b1660ff165f141596505050505050506106cb565b61139e816002612893565b6113ab9060ff16846128ac565b925050506112ea565b505f979650505050505050565b5f806113cd85846114a4565b90505f6113d9856113e6565b9190911495945050505050565b5f6107e460016113f68484611401565b84919060ff1661193d565b5f82828151811061141457611414612826565b016020015160f81c905092915050565b825160609061143383856128ac565b111561143d575f80fd5b5f8267ffffffffffffffff811115611457576114576123d9565b6040519080825280601f01601f191660200182016040528015611481576020820181803683370190505b50905060208082019086860101611499828287611b43565b509095945050505050565b815160ff165f9081526005602052604080822054606085015182860151925163347ced5960e11b81526001600160a01b03909216926368f9dab2926114ee9291879160040161296b565b602060405180830381865afa158015611509573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107e191906129a4565b61153561228e565b82815260c081018290526107e481610b65565b5f815b8351811061155b5761155b61290a565b5f6115668583611401565b60ff1690506115768160016128ac565b61158090836128ac565b9150805f0361158f5750611595565b5061154b565b6109608382612880565b5f6115aa8383611b98565b156115b657505f6107e4565b5f805f805f6115c5885f610fcc565b90505f6115d2885f610fcc565b90505b808211156115fe578593506115ea8987611bb3565b9550816115f6816129bb565b9250506115d5565b81811115611627578492506116138886611bb3565b94508061161f816129bb565b9150506115fe565b5f8211801561163f575061163d89878a88611797565b155b15611674578593506116518987611bb3565b95508492506116608886611bb3565b945061166d600183612880565b9150611627565b855f0361168a575f1996505050505050506107e4565b845f036116a057600196505050505050506107e4565b6116df6116ae8560016128ac565b6116b88b87611401565b60ff168a6116c78760016128ac565b6116d18d89611401565b8e949392919060ff16611bd6565b9998505050505050505050565b81515f906116fb8360026128ac565b1115611705575f80fd5b50016002015161ffff1690565b81515f906117218360046128ac565b111561172b575f80fd5b50016004015163ffffffff1690565b60605f6117478484611548565b9050610960848483611424565b602081015181516060916107e49161176c9082611548565b84519190611424565b5f611781848484611cc6565b61178c878785611cc6565b149695505050505050565b5f6117af83838486516117aa9190612880565b611cc6565b6117c186868789516117aa9190612880565b1495945050505050565b5f806117d685610a94565b90505b8051516020820151101561095d57604081015161ffff166030146117fb575f80fd5b5f61180582611ce8565b90505f61181e5f835184611d049092919063ffffffff16565b905061182c81838989611da0565b1561184f5761184561183d84611754565b868385611e9b565b93505050506106cb565b505061185a81610b65565b6117d9565b5f6118778460e0015161187184611754565b90611b98565b61187f575f80fd5b815151602083015110156118f75761189e8460e0015161187184611754565b6118a6575f80fd5b5f6118b083611ce8565b90505f6118c95f835184611d049092919063ffffffff16565b90506118d781838888611da0565b156118e7576001925050506106cb565b50506118f282610b65565b61187f565b505f9392505050565b5f602082111561190e575f80fd5b835161191a83856128ac565b1115611924575f80fd5b506020919092018101519190036101000a5f1901191690565b5f603482111561194b575f80fd5b5f80805b84811015611a29575f8761196383896128ac565b8151811061197357611973612826565b01602001516001600160f81b0319169050600360fc1b81108015906119a65750603d60f91b6001600160f81b0319821611155b6119ae575f80fd5b604051806080016040528060478152602001612b5c604791396119d6603060f884901c612880565b815181106119e6576119e6612826565b0160209081015160f81c93508311156119fd575f80fd5b611a08600187612880565b8203611a145750611a29565b5060059290921b60ff8216179160010161194f565b505f611a368560056129d0565b9050611a436008866129e7565b5f03611a5a578160ff16600584901b179250611b29565b611a656008866129e7565b600203611a935760028260ff16901c60ff16600384901b179250600281611a8c9190612880565b9050611b29565b611a9e6008866129e7565b600403611ac55760048260ff16901c60ff16600184901b179250600481611a8c9190612880565b611ad06008866129e7565b600503611af75760018260ff16901c60ff16600484901b179250600181611a8c9190612880565b611b026008866129e7565b6007036100e55760038260ff16901c60ff16600284901b179250600381611a8c9190612880565b611b3581610100612880565b9290921b9695505050505050565b60208110611b7b5781518352611b5a6020846128ac565b9250611b676020836128ac565b9150611b74602082612880565b9050611b43565b905182516020929092036101000a5f190180199091169116179052565b5f815183511480156107e157506107e1835f845f8751611775565b5f611bbe8383611401565b60ff16611bcc8360016128ac565b6107e191906128ac565b5f8480831015611be35750815b6020878901810190858701015f5b83811015611cab5782518251808214611c7b575f6020871115611c1657505f19611c52565b600184611c24896020612880565b611c2e91906128ac565b611c399060086129d0565b611c44906002612ada565b611c4e9190612880565b1990505b5f611c61838316858416612ae5565b90508015611c78579750611cbc9650505050505050565b50505b611c866020866128ac565b9450611c936020856128ac565b93505050602081611ca491906128ac565b9050611bf1565b50611cb68589612ae5565b93505050505b9695505050505050565b82515f90611cd483856128ac565b1115611cde575f80fd5b5091016020012090565b60a081015160c08201516060916107e49161176c908290612880565b604080516080810182525f8082526020820181905291810191909152606080820152611d3a611d335f856128ac565b85906116ec565b61ffff168152611d55611d4e6002856128ac565b8590611401565b60ff166020820152611d6b611d4e6003856128ac565b60ff166040820152611d94611d816004856128ac565b611d8c600485612880565b869190611424565b60608201529392505050565b5f846020015160ff16600314611db757505f610960565b826020015160ff16856040015160ff1614611dd357505f610960565b5f611ddd85611f96565b90508360c0015161ffff168161ffff1614611dfb575f915050610960565b8551610100165f03611e10575f915050610960565b60408087015160ff165f908152600360209081529082902054855191860151925163de8f50a160e01b81526001600160a01b039091169263de8f50a192611e5c928a9290600401612b04565b602060405180830381865afa158015611e77573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611cbc9190612b3c565b5f80611ea683611f96565b90505b84515160208601511015611f8b5760a085015160c08601515f91611edb91611ed2908290612880565b88519190611d04565b90508161ffff16815f015161ffff1614611ef55750611f7d565b846040015160ff16816020015160ff1614611f105750611f7d565b60408051808201909152606081525f6020820152611f3c85518951611f3591906128ac565b8290611ff7565b50611f47818961205a565b50611f52818661205a565b50611f698260400151825f0151846060015161207f565b15611f7a5760019350505050610960565b50505b611f8685610b65565b611ea9565b505f95945050505050565b5f805f5b8351811015611fe8576001811615611fbe57611fb68482611401565b60ff16611fd0565b6008611fca8583611401565b60ff16901b5b611fde9061ffff16836128ac565b9150600101611f9a565b506106cb601082901c826128ac565b60408051808201909152606081525f60208201526120166020836129e7565b1561203e576120266020836129e7565b612031906020612880565b61203b90836128ac565b91505b506020828101829052604080518085525f815290920101905290565b60408051808201909152606081525f60208201526107e183845f015151848551612126565b60ff83165f908152600460205260408120546001600160a01b03166120a557505f6106cb565b60ff84165f90815260046020819052604091829020549151637bf41d7760e11b81526001600160a01b039092169163f7e83aee916120e79187918791016128e6565b602060405180830381865afa158015612102573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109609190612b3c565b60408051808201909152606081525f60208201528251821115612147575f80fd5b602085015161215683866128ac565b111561218957612189856121798760200151878661217491906128ac565b61220c565b6121849060026129d0565b612222565b5f808651805187602083010193508088870111156121a75787860182525b505050602084015b602084106121e757805182526121c66020836128ac565b91506121d36020826128ac565b90506121e0602085612880565b93506121af565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b5f8183111561221c5750816107e4565b50919050565b815161222e8383611ff7565b50610650838261205a565b60408051610140810182525f8082526020820181905291810182905260608082018390526080820183905260a0820183905260c082019290925260e08101829052610100810182905261012081019190915290565b6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b803560ff811681146122e3575f80fd5b919050565b6001600160a01b03811681146122fc575f80fd5b50565b5f8060408385031215612310575f80fd5b612319836122d3565b91506020830135612329816122e8565b809150509250929050565b803561ffff811681146122e3575f80fd5b5f8083601f840112612355575f80fd5b50813567ffffffffffffffff81111561236c575f80fd5b602083019150836020828501011115612383575f80fd5b9250929050565b5f805f6040848603121561239c575f80fd5b6123a584612334565b9250602084013567ffffffffffffffff8111156123c0575f80fd5b6123cc86828701612345565b9497909650939450505050565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff81118282101715612416576124166123d9565b604052919050565b5f82601f83011261242d575f80fd5b813567ffffffffffffffff811115612447576124476123d9565b61245a601f8201601f19166020016123ed565b81815284602083860101111561246e575f80fd5b816020850160208301375f918101602001919091529392505050565b5f6040828403121561249a575f80fd5b6040516040810167ffffffffffffffff82821081831117156124be576124be6123d9565b8160405282935084359150808211156124d5575f80fd5b6124e18683870161241e565b835260208501359150808211156124f6575f80fd5b506125038582860161241e565b6020830152505092915050565b5f805f805f60a08688031215612524575f80fd5b61252d86612334565b9450602086013567ffffffffffffffff80821115612549575f80fd5b61255589838a0161241e565b9550604088013591508082111561256a575f80fd5b61257689838a0161248a565b9450606088013591508082111561258b575f80fd5b61259789838a0161248a565b935060808801359150808211156125ac575f80fd5b506125b98882890161241e565b9150509295509295909350565b5f602082840312156125d6575f80fd5b81356107e1816122e8565b5f805f80608085870312156125f4575f80fd5b6125fd85612334565b9350602085013567ffffffffffffffff80821115612619575f80fd5b6126258883890161241e565b9450604087013591508082111561263a575f80fd5b6126468883890161248a565b9350606087013591508082111561265b575f80fd5b506126688782880161241e565b91505092959194509250565b5f805f60408486031215612686575f80fd5b833567ffffffffffffffff8082111561269d575f80fd5b818601915086601f8301126126b0575f80fd5b81356020828211156126c4576126c46123d9565b8160051b6126d38282016123ed565b928352848101820192828101908b8511156126ec575f80fd5b83870192505b8483101561272657823586811115612708575f80fd5b6127168d86838b010161248a565b83525091830191908301906126f2565b985050508701359250508082111561273c575f80fd5b506123cc86828701612345565b5f81518084525f5b8181101561276d57602081850181015186830182015201612751565b505f602082860101526020601f19601f83011685010191505092915050565b602081525f6107e16020830184612749565b5f602082840312156127ae575f80fd5b6107e1826122d3565b5f80604083850312156127c8575f80fd5b823567ffffffffffffffff808211156127df575f80fd5b6127eb8683870161248a565b93506020850135915080821115612800575f80fd5b5061280d8582860161241e565b9150509250929050565b818382375f9101908152919050565b634e487b7160e01b5f52603260045260245ffd5b600181811c9082168061284e57607f821691505b60208210810361221c57634e487b7160e01b5f52602260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b818103818111156107e4576107e461286c565b60ff81811683821601908111156107e4576107e461286c565b808201808211156107e4576107e461286c565b600382810b9082900b03637fffffff198112637fffffff821317156107e4576107e461286c565b604081525f6128f86040830185612749565b8281036020840152610a738185612749565b634e487b7160e01b5f52600160045260245ffd5b634e487b7160e01b5f52601260045260245ffd5b5f61ffff808416806129465761294661291e565b92169190910492915050565b60ff82811682821603908111156107e4576107e461286c565b606081525f61297d6060830186612749565b828103602084015261298f8186612749565b91505061ffff83166040830152949350505050565b5f602082840312156129b4575f80fd5b5051919050565b5f816129c9576129c961286c565b505f190190565b80820281158282048414176107e4576107e461286c565b5f826129f5576129f561291e565b500690565b600181815b80851115612a3457815f1904821115612a1a57612a1a61286c565b80851615612a2757918102915b93841c93908002906129ff565b509250929050565b5f82612a4a575060016107e4565b81612a5657505f6107e4565b8160018114612a6c5760028114612a7657612a92565b60019150506107e4565b60ff841115612a8757612a8761286c565b50506001821b6107e4565b5060208310610133831016604e8410600b8410161715612ab5575081810a6107e4565b612abf83836129fa565b805f1904821115612ad257612ad261286c565b029392505050565b5f6107e18383612a3c565b8181035f8312801583831316838312821617156108825761088261286c565b606081525f612b166060830186612749565b8281036020840152612b288186612749565b90508281036040840152611cbc8185612749565b5f60208284031215612b4c575f80fd5b815180151581146107e1575f80fdfe00010203040506070809ffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fffffffffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fa164736f6c6343000818000a","storage":{"0x0":"0xbd","0x1":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1471eb6eb2c5e789fc3de43f8ce62938c7d1836ec861730447e2ada8fd81017b":"0x17cda4e23f7237277952e075b1c48467aabfacc0","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563":"0x2b000100000e1000244a5c080249aac11d7b6f6446702e54a1607371607a","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e564":"0x1a41855200fd2ce1cdde32f24e8fb500002b000100000e1000244f660802e06d","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e565":"0x44b80b8f1d39a95c0b0d7c65d08458e880409bbc683457104237c7f8ec8d0000","0x3617319a054d772f909f7c479a2cebe5066e836a939412e32403c99029b92eff":"0x5155f5627bdf9795b3dbb8887001ada1eeba93f2","0x85aaa47b6dc46495bb8824fad4583769726fea36efd831a35556690b830a8fbe":"0x6e2822b8856749ed179c77140dbc5f5a27410a4","0x91da3fd0782e51c6b3986e9e672fd566868e71f3dbc2d6c2cd6fbb3e361af2a7":"0x49da8861c65460639925febe1fb4b5b59b443082","0x95c6356c1b7a542b884d2484ef785c9c7224e77e1016c20007bddc15c23b452f":"0x3f9151d3fd1a82dcc5091909589900fd60ee767ee090bba000000000","0xabd6e7cb50984ff9c2f3e18a2660c3353dadf4e3291deeb275dae2cd1e44fe05":"0x458f653495fb8d9bd0e7df468c2bf76d26c7bd9"}},"0x9dc64b2558b458a15c7f01c192d874ef460f0a29":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x9df67c91f1bfcb4d966cf764e9218685e7c59e8a":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101d1575f3560e01c80638b95dd71116100fe578063c86902331161009e578063e32954eb1161006e578063e32954eb146104f2578063e59d895d14610505578063e985e9c514610518578063f1cb7e0614610553575f80fd5b8063c869023314610435578063ce3decdc1461048c578063d5fa2b001461049f578063d700ff33146104b2575f80fd5b8063a8fa5682116100d9578063a8fa5682146103ac578063a9784b3e146103bf578063ac9650d814610402578063bc1c58d114610422575f80fd5b80638b95dd7114610373578063a22cb46514610386578063a4b91a0114610399575f80fd5b80633603d758116101745780635c98042b116101445780635c98042b14610327578063623195b01461033a578063691f34311461034d5780637737221314610360575f80fd5b80633603d758146102975780633b3b57de146102aa5780634cbf6ba4146102bd57806359d1d43c14610307575f80fd5b8063124a319c116101af578063124a319c146102255780632203ab561461025057806329cd62ea14610271578063304e6ade14610284575f80fd5b806301ffc9a7146101d55780630af179d7146101fd57806310f13a8c14610212575b5f80fd5b6101e86101e3366004612267565b610566565b60405190151581526020015b60405180910390f35b61021061020b3660046122bd565b610576565b005b610210610220366004612304565b610778565b610238610233366004612377565b610842565b6040516001600160a01b0390911681526020016101f4565b61026361025e3660046123a1565b610a87565b6040516101f492919061240e565b61021061027f366004612426565b610bb5565b6102106102923660046122bd565b610c4d565b6102106102a536600461244f565b610cc6565b6102386102b836600461244f565b610d64565b6101e86102cb3660046123a1565b5f82815260208181526040808320546001600160401b031683526006825280832094835293815283822092825291909152205461ffff16151590565b61031a6103153660046122bd565b610d93565b6040516101f49190612466565b61031a61033536600461244f565b610e6f565b610210610348366004612478565b610f2a565b61031a61035b36600461244f565b610fc2565b61021061036e3660046122bd565b610ffa565b6102106103813660046124da565b611073565b6102106103943660046125b9565b611150565b6102106103a73660046125e3565b61122a565b61031a6103ba36600461261e565b6112f6565b6101e86103cd36600461265a565b6001600160a01b039283165f908152600c60209081526040808320948352938152838220929094168152925290205460ff1690565b6104156104103660046126ce565b611342565b6040516101f4919061270c565b61031a61043036600461244f565b61134f565b61047761044336600461244f565b5f81815260208181526040808320546001600160401b03168352600982528083209383529290522080546001909101549091565b604080519283526020830191909152016101f4565b61021061049a3660046122bd565b611387565b6102106104ad36600461276e565b6114c3565b6104da6104c036600461244f565b5f602081905290815260409020546001600160401b031681565b6040516001600160401b0390911681526020016101f4565b61041561050036600461279c565b6114e9565b6102106105133660046127d6565b6114fe565b6101e8610526366004612808565b6001600160a01b039182165f908152600b6020908152604080832093909416825291909152205460ff1690565b61031a6105613660046123a1565b6115a2565b5f61057082611666565b92915050565b826105808161168a565b610588575f80fd5b5f84815260208181526040808320548151601f87018490048402810184019092528582528392606092839285926001600160401b039091169183916105eb9183918d908d90819084018382808284375f9201919091525092939250506118b79050565b90505b80515160208201511015610712578661ffff165f03610652578060400151965061061781611912565b94508460405160200161062a9190612834565b60405160208183030381529060405280519060200120925061064b81611933565b9350610704565b5f61065c82611912565b9050816040015161ffff168861ffff16141580610680575061067e868261194f565b155b15610702576106db8c878a8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250505060208801518d91506106d2908290612863565b8b51158a61196a565b8160400151975081602001519650809550858051906020012093506106ff82611933565b94505b505b61070d81611bc9565b6105ee565b5083511561076c5761076c8a85888c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c925061076391508290508f612863565b8951158861196a565b50505050505050505050565b846107828161168a565b61078a575f80fd5b5f86815260208181526040808320546001600160401b03168352600a8252808320898452909152908190209051849184916107c89089908990612876565b908152602001604051809103902091826107e3929190612901565b5084846040516107f4929190612876565b6040518091039020867f448bc014f1536726cf8d54ff3d6481ed3cbc683c2591ca204274009afa09b1a18787878760405161083294939291906129e2565b60405180910390a3505050505050565b5f82815260208181526040808320546001600160401b031683526007825280832085845282528083206001600160e01b0319851684529091528120546001600160a01b03168015610894579050610570565b5f61089e85610d64565b90506001600160a01b0381166108b8575f92505050610570565b6040516301ffc9a760e01b60248201525f9081906001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b1790525161090f9190612834565b5f60405180830381855afa9150503d805f8114610947576040519150601f19603f3d011682016040523d82523d5f602084013e61094c565b606091505b509150915081158061095f575060208151105b80610989575080601f8151811061097857610978612a13565b01602001516001600160f81b031916155b1561099a575f945050505050610570565b6040516001600160e01b0319871660248201526001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b179052516109f09190612834565b5f60405180830381855afa9150503d805f8114610a28576040519150601f19603f3d011682016040523d82523d5f602084013e610a2d565b606091505b509092509050811580610a41575060208151105b80610a6b575080601f81518110610a5a57610a5a612a13565b01602001516001600160f81b031916155b15610a7c575f945050505050610570565b509095945050505050565b5f82815260208181526040808320546001600160401b03168352600180835281842086855290925282206060915b848111610b975780851615801590610ae457505f8181526020839052604081208054610ae090612885565b9050115b15610b8f5780825f8381526020019081526020015f20808054610b0690612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610b3290612885565b8015610b7d5780601f10610b5457610100808354040283529160200191610b7d565b820191905f5260205f20905b815481529060010190602001808311610b6057829003601f168201915b50505050509050935093505050610bae565b60011b610ab5565b505f60405180602001604052805f81525092509250505b9250929050565b82610bbf8161168a565b610bc7575f80fd5b60408051808201825284815260208082018581525f888152808352848120546001600160401b031681526009835284812089825283528490209251835551600190920191909155815185815290810184905285917f1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e4691015b60405180910390a250505050565b82610c578161168a565b610c5f575f80fd5b5f84815260208181526040808320546001600160401b03168352600382528083208784529091529020610c93838583612901565b50837fe379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d75788484604051610c3f929190612a27565b80610cd08161168a565b610cd8575f80fd5b5f82815260208190526040812080546001600160401b031691610cfa83612a3a565b82546101009290920a6001600160401b038181021990931691831602179091555f84815260208181526040918290205491519190921681528492507fc6621ccb8f3f5a04bb6502154b2caf6adf5983fe76dfef1cfc9c42e3579db444910160405180910390a25050565b5f80610d7183603c6115a2565b905080515f03610d8357505f92915050565b610d8c81611cae565b9392505050565b5f83815260208181526040808320546001600160401b03168352600a825280832086845290915290819020905160609190610dd19085908590612876565b90815260200160405180910390208054610dea90612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610e1690612885565b8015610e615780601f10610e3857610100808354040283529160200191610e61565b820191905f5260205f20905b815481529060010190602001808311610e4457829003601f168201915b505050505090509392505050565b5f81815260208181526040808320546001600160401b03168352600482528083208484529091529020805460609190610ea790612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610ed390612885565b8015610f1e5780601f10610ef557610100808354040283529160200191610f1e565b820191905f5260205f20905b815481529060010190602001808311610f0157829003601f168201915b50505050509050919050565b83610f348161168a565b610f3c575f80fd5b83610f48600182612863565b1615610f52575f80fd5b5f85815260208181526040808320546001600160401b031683526001825280832088845282528083208784529091529020610f8e838583612901565b50604051849086907faa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe3905f90a35050505050565b5f81815260208181526040808320546001600160401b03168352600882528083208484529091529020805460609190610ea790612885565b826110048161168a565b61100c575f80fd5b5f84815260208181526040808320546001600160401b03168352600882528083208784529091529020611040838583612901565b50837fb7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f78484604051610c3f929190612a27565b8261107d8161168a565b611085575f80fd5b837f65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af75284846040516110b792919061240e565b60405180910390a2603c830361110e57837f52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd26110f284611cae565b6040516001600160a01b03909116815260200160405180910390a25b5f84815260208181526040808320546001600160401b0316835260028252808320878452825280832086845290915290206111498382612a5f565b5050505050565b6001600160a01b03821633036111bf5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084015b60405180910390fd5b335f818152600b602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6001600160a01b03821633036112825760405162461bcd60e51b815260206004820181905260248201527f53657474696e672064656c65676174652073746174757320666f722073656c6660448201526064016111b6565b335f818152600c6020908152604080832087845282528083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519384529286917ff0ddb3b04746704017f9aa8bd728fcc2c1d11675041205350018915f5e4750a0910160405180910390a4505050565b5f83815260208181526040808320546001600160401b03168352600582528083208684528252808320858452825280832061ffff851684529091529020805460609190610dea90612885565b6060610d8c5f8484611ccb565b5f81815260208181526040808320546001600160401b03168352600382528083208484529091529020805460609190610ea790612885565b826113918161168a565b611399575f80fd5b5f84815260208181526040808320546001600160401b031680845260048352818420888552909252822080549192916113d190612885565b80601f01602080910402602001604051908101604052809291908181526020018280546113fd90612885565b80156114485780601f1061141f57610100808354040283529160200191611448565b820191905f5260205f20905b81548152906001019060200180831161142b57829003601f168201915b505050506001600160401b0384165f9081526004602090815260408083208b8452909152902091925061147e9050858783612901565b50857f8f15ed4b723ef428f250961da8315675b507046737e19319fc1a4d81bfe87f858287876040516114b393929190612b1e565b60405180910390a2505050505050565b816114cd8161168a565b6114d5575f80fd5b6114e483603c61038185611e88565b505050565b60606114f6848484611ccb565b949350505050565b826115088161168a565b611510575f80fd5b5f84815260208181526040808320546001600160401b031683526007825280832087845282528083206001600160e01b031987168085529083529281902080546001600160a01b0319166001600160a01b038716908117909155905190815286917f7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa910160405180910390a350505050565b5f82815260208181526040808320546001600160401b0316835260028252808320858452825280832084845290915290208054606091906115e290612885565b80601f016020809104026020016040519081016040528092919081815260200182805461160e90612885565b80156116595780601f1061163057610100808354040283529160200191611659565b820191905f5260205f20905b81548152906001019060200180831161163c57829003601f168201915b5050505050905092915050565b5f6001600160e01b03198216631674750f60e21b1480610570575061057082611eb8565b5f336001600160a01b037f0000000000000000000000004fbf7b2f171336958be5d15ff762a5cff53635681614806116ea5750336001600160a01b037f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5616145b156116f757506001919050565b6040516302571be360e01b8152600481018390525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa15801561175c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117809190612b4d565b90507f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b0316816001600160a01b031603611845576040516331a9108f60e11b8152600481018490527f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b031690636352211e90602401602060405180830381865afa15801561181e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118429190612b4d565b90505b6001600160a01b03811633148061187e57506001600160a01b0381165f908152600b6020908152604080832033845290915290205460ff165b80610d8c57506001600160a01b0381165f908152600c60209081526040808320868452825280832033845290915290205460ff16610d8c565b6118ff6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261057081611bc9565b602081015181516060916105709161192a9082611edc565b84519190611f33565b60a081015160c08201516060916105709161192a908290612863565b5f81518351148015610d8c5750610d8c835f845f8751611fa7565b865160208801205f61197d878787611f33565b90508315611aa1576001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c168452909152902080546119c690612885565b159050611a23576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611a0783612b68565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091528120611a62916121f9565b897f03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a12078a8a604051611a94929190612b84565b60405180910390a261076c565b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c16845290915290208054611ae290612885565b90505f03611b40576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611b2483612ba9565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091529020611b808282612a5f565b50897f52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b8a8a84604051611bb593929190612bbf565b60405180910390a250505050505050505050565b60c08101516020820181905281515111611be05750565b5f611bf2825f01518360200151611edc565b8260200151611c019190612bed565b8251909150611c109082611fc9565b61ffff166040830152611c24600282612bed565b8251909150611c339082611fc9565b61ffff166060830152611c47600282612bed565b8251909150611c569082611fef565b63ffffffff166080830152611c6c600482612bed565b82519091505f90611c7d9083611fc9565b61ffff169050611c8e600283612bed565b60a084018190529150611ca18183612bed565b60c0909301929092525050565b5f8151601414611cbc575f80fd5b5060200151600160601b900490565b6060816001600160401b03811115611ce557611ce56124c6565b604051908082528060200260200182016040528015611d1857816020015b6060815260200190600190039081611d035790505b5090505f5b82811015611e80578415611dd8575f848483818110611d3e57611d3e612a13565b9050602002810190611d509190612c00565b611d5f91602491600491612c42565b611d6891612c69565b9050858114611dd65760405162461bcd60e51b815260206004820152603460248201527f6d756c746963616c6c3a20416c6c207265636f726473206d7573742068617665604482015273040c240dac2e8c6d0d2dcce40dcc2dacad0c2e6d60631b60648201526084016111b6565b505b5f8030868685818110611ded57611ded612a13565b9050602002810190611dff9190612c00565b604051611e0d929190612876565b5f60405180830381855af49150503d805f8114611e45576040519150601f19603f3d011682016040523d82523d5f602084013e611e4a565b606091505b509150915081611e58575f80fd5b80848481518110611e6b57611e6b612a13565b60209081029190910101525050600101611d1d565b509392505050565b604080516014808252818301909252606091602082018180368337505050600160601b9290920260208301525090565b5f6001600160e01b0319821663c869023360e01b1480610570575061057082612017565b5f815b83518110611eef57611eef612c86565b5f611efa858361203b565b60ff169050611f0a816001612bed565b611f149083612bed565b9150805f03611f235750611f29565b50611edf565b6114f68382612863565b8251606090611f428385612bed565b1115611f4c575f80fd5b5f826001600160401b03811115611f6557611f656124c6565b6040519080825280601f01601f191660200182016040528015611f8f576020820181803683370190505b50905060208082019086860101610a7c82828761205e565b5f611fb38484846120b3565b611fbe8787856120b3565b149695505050505050565b81515f90611fd8836002612bed565b1115611fe2575f80fd5b50016002015161ffff1690565b81515f90611ffe836004612bed565b1115612008575f80fd5b50016004015163ffffffff1690565b5f6001600160e01b0319821663691f343160e01b14806105705750610570826120d5565b5f82828151811061204e5761204e612a13565b016020015160f81c905092915050565b602081106120965781518352612075602084612bed565b9250612082602083612bed565b915061208f602082612863565b905061205e565b905182516020929092036101000a5f190180199091169116179052565b82515f906120c18385612bed565b11156120cb575f80fd5b5091016020012090565b5f6001600160e01b031982166304928c6760e21b14806105705750610570825f6001600160e01b0319821663547d2b4160e11b148061212457506001600160e01b03198216635c98042b60e01b145b806105705750610570825f6001600160e01b0319821663bc1c58d160e01b14806105705750610570825f6001600160e01b03198216631d9dabef60e11b148061217d57506001600160e01b031982166378e5bf0360e11b145b806105705750610570825f6001600160e01b03198216631101d5ab60e11b14806105705750610570825f6001600160e01b0319821663d700ff3360e01b14806105705750610570825f6001600160e01b03198216634fbf043360e01b148061057057506301ffc9a760e01b6001600160e01b0319831614610570565b50805461220590612885565b5f825580601f10612214575050565b601f0160209004905f5260205f20908101906122309190612233565b50565b5b80821115612247575f8155600101612234565b5090565b80356001600160e01b031981168114612262575f80fd5b919050565b5f60208284031215612277575f80fd5b610d8c8261224b565b5f8083601f840112612290575f80fd5b5081356001600160401b038111156122a6575f80fd5b602083019150836020828501011115610bae575f80fd5b5f805f604084860312156122cf575f80fd5b8335925060208401356001600160401b038111156122eb575f80fd5b6122f786828701612280565b9497909650939450505050565b5f805f805f60608688031215612318575f80fd5b8535945060208601356001600160401b0380821115612335575f80fd5b61234189838a01612280565b90965094506040880135915080821115612359575f80fd5b5061236688828901612280565b969995985093965092949392505050565b5f8060408385031215612388575f80fd5b823591506123986020840161224b565b90509250929050565b5f80604083850312156123b2575f80fd5b50508035926020909101359150565b5f5b838110156123db5781810151838201526020016123c3565b50505f910152565b5f81518084526123fa8160208601602086016123c1565b601f01601f19169290920160200192915050565b828152604060208201525f6114f660408301846123e3565b5f805f60608486031215612438575f80fd5b505081359360208301359350604090920135919050565b5f6020828403121561245f575f80fd5b5035919050565b602081525f610d8c60208301846123e3565b5f805f806060858703121561248b575f80fd5b843593506020850135925060408501356001600160401b038111156124ae575f80fd5b6124ba87828801612280565b95989497509550505050565b634e487b7160e01b5f52604160045260245ffd5b5f805f606084860312156124ec575f80fd5b833592506020840135915060408401356001600160401b0380821115612510575f80fd5b818601915086601f830112612523575f80fd5b813581811115612535576125356124c6565b604051601f8201601f19908116603f0116810190838211818310171561255d5761255d6124c6565b81604052828152896020848701011115612575575f80fd5b826020860160208301375f6020848301015280955050505050509250925092565b6001600160a01b0381168114612230575f80fd5b80358015158114612262575f80fd5b5f80604083850312156125ca575f80fd5b82356125d581612596565b9150612398602084016125aa565b5f805f606084860312156125f5575f80fd5b83359250602084013561260781612596565b9150612615604085016125aa565b90509250925092565b5f805f60608486031215612630575f80fd5b8335925060208401359150604084013561ffff8116811461264f575f80fd5b809150509250925092565b5f805f6060848603121561266c575f80fd5b833561267781612596565b925060208401359150604084013561264f81612596565b5f8083601f84011261269e575f80fd5b5081356001600160401b038111156126b4575f80fd5b6020830191508360208260051b8501011115610bae575f80fd5b5f80602083850312156126df575f80fd5b82356001600160401b038111156126f4575f80fd5b6127008582860161268e565b90969095509350505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b8281101561276157603f1988860301845261274f8583516123e3565b94509285019290850190600101612733565b5092979650505050505050565b5f806040838503121561277f575f80fd5b82359150602083013561279181612596565b809150509250929050565b5f805f604084860312156127ae575f80fd5b8335925060208401356001600160401b038111156127ca575f80fd5b6122f78682870161268e565b5f805f606084860312156127e8575f80fd5b833592506127f86020850161224b565b9150604084013561264f81612596565b5f8060408385031215612819575f80fd5b823561282481612596565b9150602083013561279181612596565b5f82516128458184602087016123c1565b9190910192915050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156105705761057061284f565b818382375f9101908152919050565b600181811c9082168061289957607f821691505b6020821081036128b757634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156114e457805f5260205f20601f840160051c810160208510156128e25750805b601f840160051c820191505b81811015611149575f81556001016128ee565b6001600160401b03831115612918576129186124c6565b61292c836129268354612885565b836128bd565b5f601f84116001811461295d575f85156129465750838201355b5f19600387901b1c1916600186901b178355611149565b5f83815260208120601f198716915b8281101561298c578685013582556020948501946001909201910161296c565b50868210156129a8575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b604081525f6129f56040830186886129ba565b8281036020840152612a088185876129ba565b979650505050505050565b634e487b7160e01b5f52603260045260245ffd5b602081525f6114f66020830184866129ba565b5f6001600160401b03808316818103612a5557612a5561284f565b6001019392505050565b81516001600160401b03811115612a7857612a786124c6565b612a8c81612a868454612885565b846128bd565b602080601f831160018114612abf575f8415612aa85750858301515b5f19600386901b1c1916600185901b178555612b16565b5f85815260208120601f198616915b82811015612aed57888601518255948401946001909101908401612ace565b5085821015612b0a57878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b604081525f612b3060408301866123e3565b8281036020840152612b438185876129ba565b9695505050505050565b5f60208284031215612b5d575f80fd5b8151610d8c81612596565b5f61ffff821680612b7b57612b7b61284f565b5f190192915050565b604081525f612b9660408301856123e3565b905061ffff831660208301529392505050565b5f61ffff808316818103612a5557612a5561284f565b606081525f612bd160608301866123e3565b61ffff851660208401528281036040840152612b4381856123e3565b808201808211156105705761057061284f565b5f808335601e19843603018112612c15575f80fd5b8301803591506001600160401b03821115612c2e575f80fd5b602001915036819003821315610bae575f80fd5b5f8085851115612c50575f80fd5b83861115612c5c575f80fd5b5050820193919092039150565b80356020831015610570575f19602084900360031b1b1692915050565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{}},"0xa06a63155145b7f2fda96d9658ec7fef3b9dcf76":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b506004361061004a575f3560e01c80634ce34aa21461004e578063899e104c1461007e5780638df25d9214610091578063c4e8fcb5146100a4575b5f80fd5b61006161005c366004610834565b6100b9565b6040516001600160e01b0319909116815260200160405180910390f35b61006161008c3660046108b4565b610121565b61006161009f36600461091b565b61018a565b6100b76100b2366004610969565b6101c7565b005b5f335f525f60205260405f20546100dd576349ed56f960e11b5f523360045260245ffd5b815f5b81811015610110576101088585838181106100fd576100fd6109a2565b905060c002016102c4565b6001016100e0565b50632671a55160e11b949350505050565b5f335f525f60205260405f2054610145576349ed56f960e11b5f523360045260245ffd5b835f5b8181101561016d576101658787838181106100fd576100fd6109a2565b600101610148565b506101788484610436565b50632267841360e21b95945050505050565b5f335f525f60205260405f20546101ae576349ed56f960e11b5f523360045260245ffd5b6101b88383610436565b506346f92ec960e11b92915050565b336001600160a01b037f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c1614610210576040516336abb4df60e11b815260040160405180910390fd5b6001600160a01b0382165f9081526020819052604090205481151560ff909116151503610268576040516349271a0f60e11b81526001600160a01b038316600482015281151560248201526044015b60405180910390fd5b6001600160a01b0382165f8181526020818152604091829020805460ff191685151590811790915591519182527fae63067d43ac07563b7eb8db6595635fc77f1578a2a5ea06ba91b63e2afa37e2910160405180910390a25050565b60016102d360208301836109ca565b60038111156102e4576102e46109b6565b03610329576103266102fc60408301602084016109ef565b61030c60608401604085016109ef565b61031c60808501606086016109ef565b8460a0013561056c565b50565b600261033860208301836109ca565b6003811115610349576103496109b6565b036103b6578060a00135600114610379576040516369f9582760e01b815260a0820135600482015260240161025f565b61032661038c60408301602084016109ef565b61039c60608401604085016109ef565b6103ac60808501606086016109ef565b8460800135610660565b60036103c560208301836109ca565b60038111156103d6576103d66109b6565b0361041d576103266103ee60408301602084016109ef565b6103fe60608401604085016109ef565b61040e60808501606086016109ef565b84608001358560a00135610715565b604051631e4cbc7f60e21b815260040160405180910390fd5b808280631759616b60e11b6020525f5b8381101561055f57823582018035803b61046b57635f15d6725f52806020526024601cfd5b60a08201358060051b60c0018060808501351460a0606086013514168185013583141615905080156104a657633ae8821360e21b5f5260045ffd5b506020860195506080602084016024378060061b60400190508060a00160a4525f8160c401528060c4018160a0850160c4375f808260205f875af1935083610550573d1561053057601f3d0160051c91508060051c826003028184111561051a578184036003028280028580020360091c01015b5a60208201101561052d573d5f803e3d5ffd5b50505b6357e222f160e11b5f528260045260c0606452608451602001608452805ffd5b50505050600181019050610446565b5050505060806040525050565b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166106515780873b15151661065157806106405781610623573d1561060257601f3d0160051c8360051c81600302818311156105eb578183036003028280028480020360091c01015b5a6020820110156105fe573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b833b61067757635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af180610707573d156106e557601f3d0160051c8260051c81600302818311156106ce578183036003028280028480020360091c01015b5a6020820110156106e1573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b61072c57635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af1806107d1573d156107b057601f3d0160051c8560051c8160030281831115610799578183036003028280028480020360091c01015b5a6020820110156107ac573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b5f8083601f8401126107fc575f80fd5b50813567ffffffffffffffff811115610813575f80fd5b60208301915083602060c08302850101111561082d575f80fd5b9250929050565b5f8060208385031215610845575f80fd5b823567ffffffffffffffff81111561085b575f80fd5b610867858286016107ec565b90969095509350505050565b5f8083601f840112610883575f80fd5b50813567ffffffffffffffff81111561089a575f80fd5b6020830191508360208260051b850101111561082d575f80fd5b5f805f80604085870312156108c7575f80fd5b843567ffffffffffffffff808211156108de575f80fd5b6108ea888389016107ec565b90965094506020870135915080821115610902575f80fd5b5061090f87828801610873565b95989497509550505050565b5f806020838503121561092c575f80fd5b823567ffffffffffffffff811115610942575f80fd5b61086785828601610873565b80356001600160a01b0381168114610964575f80fd5b919050565b5f806040838503121561097a575f80fd5b6109838361094e565b915060208301358015158114610997575f80fd5b809150509250929050565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52602160045260245ffd5b5f602082840312156109da575f80fd5b8135600481106109e8575f80fd5b9392505050565b5f602082840312156109ff575f80fd5b6109e88261094e56fea164736f6c6343000818000a","storage":{}},"0xaa33d7188eb4b4a51c37199eaad2f73cf2bf0204":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0xac52f68f31577e44ae0c7e95a42dc9eb574b9383":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a424740014610090575b600080fd5b610059610054366004610cac565b6100b3565b6040516100669190610d9b565b60405180910390f35b61008261007d366004610dae565b610162565b604051908152602001610066565b6100a361009e366004610cac565b6101d6565b6040519015158152602001610066565b606060005a90506101576100ca6020870187610ddc565b6001546001600160a01b03166040880135846100e960608b018b610df9565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061023592505050565b9150505b9392505050565b600154604051636ccbae5f60e01b8152600481018390526000916001600160a01b031690636ccbae5f90602401602060405180830381865afa1580156101ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d09190610e40565b92915050565b600061022d6101e485610ef1565b600154604080516020601f88018190048102820181019092528681526001600160a01b039092169190879087908190840183828082843760009201919091525061030d92505050565b949350505050565b6060600080876001600160a01b0316866102518b8a8989610355565b60405161025e9190610f9b565b60006040518083038160008787f1925050503d806000811461029c576040519150601f19603f3d011682016040523d82523d6000602084013e6102a1565b606091505b5090925090506102b2603f87610fb7565b5a116102c0576102c0610fd9565b61030082826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061040a565b9998505050505050505050565b600061031a848484610443565b801561022d575060608401516020908101516001600160e01b031990811660009081529182905260409091205460e01b16151561022d565b50565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036103e75760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526103ff82828661058c565b979650505050505050565b6060831561041957508161015b565b8251156104295782518084602001fd5b8160405162461bcd60e51b81526004016103de9190610d9b565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561048a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104ae9190610e40565b9050600061055c8660600151805190602001208688602001516040516020016104fc9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561058257508551610582906001600160a01b03168286610a38565b9695505050505050565b60606001600160e01b03198416631de5861160e31b0361061a576000806000858060200190518101906105bf9190610fef565b92509250925086838383886040516024016105dd9493929190611032565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152935061015b92505050565b6001600160e01b03198416636debcb8d60e01b0361064b576000806000858060200190518101906105bf9190610fef565b6001600160e01b0319841663280d9b0560e01b036106dd576000806000808680602001905181019061067d91906110aa565b935093509350935087848484848a60405160240161069f959493929190611118565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152945061015b9350505050565b6001600160e01b031984166361603dd960e01b0361075c5760008380602001905181019061070b9190610e40565b905084818460405160240161072192919061115d565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152915061015b9050565b6001600160e01b0319841663b34f33c560e01b036107ab5760008060008580602001905181019061078d9190611176565b92509250925086838383886040516024016105dd94939291906111d0565b6001600160e01b03198416633013529360e01b036107dc5760008060008580602001905181019061078d9190611176565b6001600160e01b031984166307eca39560e01b03610830576000806000808680602001905181019061080e9190611209565b935093509350935087848484848a60405160240161069f95949392919061127e565b6001600160e01b031984166368b6154f60e01b03610862576000806000808680602001905181019061067d91906110aa565b6001600160e01b0319841663341de35b60e21b03610894576000806000808680602001905181019061067d91906110aa565b6001600160e01b03198416637a84860f60e11b0361092d576000806000806000878060200190518101906108c891906112cb565b945094509450945094508885858585858c6040516024016108ee96959493929190611360565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152955061015b945050505050565b6001600160e01b03198416636fab95b360e01b036109b2576000808480602001905181019061095c91906113b9565b915091508582828660405160240161097693929190611400565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925061015b915050565b6001600160e01b0319841663288f888960e11b0361015b57600080848060200190518101906109e1919061142b565b91509150858282866040516024016109fb93929190611459565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925050509392505050565b6000806000610a478585610b7a565b90925090506000816004811115610a6057610a60611489565b148015610a7e5750856001600160a01b0316826001600160a01b0316145b15610a8e5760019250505061015b565b600080876001600160a01b0316631626ba7e60e01b8888604051602401610ab692919061115d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051610af49190610f9b565b600060405180830381855afa9150503d8060008114610b2f576040519150601f19603f3d011682016040523d82523d6000602084013e610b34565b606091505b5091509150818015610b47575080516020145b8015610b6e57508051630b135d3f60e11b90610b6c9083016020908101908401610e40565b145b98975050505050505050565b6000808251604103610bb05760208301516040840151606085015160001a610ba487828585610bbf565b94509450505050610bb8565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610bf65750600090506003610ca3565b8460ff16601b14158015610c0e57508460ff16601c14155b15610c1f5750600090506004610ca3565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610c73573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610c9c57600060019250925050610ca3565b9150600090505b94509492505050565b600080600060408486031215610cc157600080fd5b833567ffffffffffffffff80821115610cd957600080fd5b9085019060808288031215610ced57600080fd5b90935060208501359080821115610d0357600080fd5b818601915086601f830112610d1757600080fd5b813581811115610d2657600080fd5b876020828501011115610d3857600080fd5b6020830194508093505050509250925092565b60005b83811015610d66578181015183820152602001610d4e565b50506000910152565b60008151808452610d87816020860160208601610d4b565b601f01601f19169290920160200192915050565b60208152600061015b6020830184610d6f565b600060208284031215610dc057600080fd5b5035919050565b6001600160a01b038116811461035257600080fd5b600060208284031215610dee57600080fd5b813561015b81610dc7565b6000808335601e19843603018112610e1057600080fd5b83018035915067ffffffffffffffff821115610e2b57600080fd5b602001915036819003821315610bb857600080fd5b600060208284031215610e5257600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610e9257610e92610e59565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ec157610ec1610e59565b604052919050565b600067ffffffffffffffff821115610ee357610ee3610e59565b50601f01601f191660200190565b600060808236031215610f0357600080fd5b610f0b610e6f565b8235610f1681610dc7565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610f4657600080fd5b840136601f820112610f5757600080fd5b8035610f6a610f6582610ec9565b610e98565b8181523684838501011115610f7e57600080fd5b818484018583013760009181019093015250606082015292915050565b60008251610fad818460208701610d4b565b9190910192915050565b600082610fd457634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b60008060006060848603121561100457600080fd5b835161100f81610dc7565b602085015190935061102081610dc7565b80925050604084015190509250925092565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061058290830184610d6f565b600082601f83011261107657600080fd5b8151611084610f6582610ec9565b81815284602083860101111561109957600080fd5b61022d826020830160208701610d4b565b600080600080608085870312156110c057600080fd5b84516110cb81610dc7565b60208601519094506110dc81610dc7565b60408601516060870151919450925067ffffffffffffffff81111561110057600080fd5b61110c87828801611065565b91505092959194509250565b6001600160a01b038681168252851660208201526040810184905260a06060820181905260009061114b90830185610d6f565b8281036080840152610b6e8185610d6f565b82815260406020820152600061022d6040830184610d6f565b60008060006060848603121561118b57600080fd5b835161119681610dc7565b60208501516040860151919450925067ffffffffffffffff8111156111ba57600080fd5b6111c686828701611065565b9150509250925092565b60018060a01b03851681528360208201526080604082015260006111f76080830185610d6f565b82810360608401526103ff8185610d6f565b6000806000806080858703121561121f57600080fd5b845161122a81610dc7565b60208601516040870151919550935067ffffffffffffffff8082111561124f57600080fd5b61125b88838901611065565b9350606087015191508082111561127157600080fd5b5061110c87828801611065565b60018060a01b038616815284602082015260a0604082015260006112a560a0830186610d6f565b82810360608401526112b78186610d6f565b90508281036080840152610b6e8185610d6f565b600080600080600060a086880312156112e357600080fd5b85516112ee81610dc7565b60208701519095506112ff81610dc7565b60408701516060880151919550935067ffffffffffffffff8082111561132457600080fd5b61133089838a01611065565b9350608088015191508082111561134657600080fd5b5061135388828901611065565b9150509295509295909350565b6001600160a01b038781168252861660208201526040810185905260c06060820181905260009061139390830186610d6f565b82810360808401526113a58186610d6f565b905082810360a08401526103008185610d6f565b600080604083850312156113cc57600080fd5b82519150602083015167ffffffffffffffff8111156113ea57600080fd5b6113f685828601611065565b9150509250929050565b8381526060602082015260006114196060830185610d6f565b82810360408401526105828185610d6f565b6000806040838503121561143e57600080fd5b825161144981610dc7565b6020939093015192949293505050565b60018060a01b03841681528260208201526060604082015260006114806060830184610d6f565b95945050505050565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a","storage":{"0x1":"0x7bb6cd9be29fab783c0b494a06fed8b2e2596b7a","0xd8b896d609e853134f3f02ce62d8049b2fdfe9356134f6d548fb1beda30db79":"0x30135293","0x4f457f36b92dc6b16c281e5877e2d8d39630135c1b7246fa9174035e1efcefbd":"0x6fab95b3","0x6b7ba3fe9941e089de60543da4a1deaef065baa963222951b2f9a138f9960820":"0x6debcb8d","0x70cff8e4ee4af5aa154324d45bcf258212c235bbe79f0707bb6273110ef4e13a":"0xf5090c1e","0x73efb0e44094dbabc6bbeecd3be1d81f272157c2dae2d647e6315f150b0b1dd2":"0xd0778d6c","0x8b1c4edded6644848281eab03ac2c319242d62b2057cffa3dd4540715bbc155e":"0xef2c3088","0xbeb5ea8fc2aeae43b7170220434aa4429fb067f0866ae25514b29f647641ca8c":"0x511f1112","0xca659f6eb372ce950e69d4d474290a6a4285f6a06a6128ca9f45419371a1e997":"0xb34f33c5","0xd12e300b5f35ba5198dd81dab97a512a154a0ad0e2cda788abdc22deba64f2a7":"0x280d9b05","0xd5453e7f4fff276a1d42f717d1db50865c284ae707a15bd6a590a3895656f27c":"0x7eca395","0xea2575ae4056f10294a848ca5ed6d215dffd1b80838142770bc441f7df607d71":"0x61603dd9","0xf8ca3ef1e3d09a0d88e209301f12626c90bec3ea586d4bce2c7a58e7eae8278f":"0x68b6154f"}},"0xb17aae5b3a7815433fc82cfd67ea245767894f03":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061012a5760003560e01c80638d839ffe116100ab578063aeb8ce9b1161006f578063aeb8ce9b146105d7578063ce1e09c014610688578063f14fcbc81461069d578063f2fde38b146106c7578063f49826be146106fa578063f7a16963146107b95761012a565b80638d839ffe1461045d5780638da5cb5b146104725780638f32d59b146104a35780639791c097146104b8578063acf1a841146105695761012a565b80637e324479116100f25780637e324479146102b8578063839df945146102e857806383e7f6ff1461031257806385f6d155146103c55780638a95b09f146104485761012a565b806301ffc9a71461012f5780633ccfd60b146101775780633d86c52f1461018e578063530e784f14610270578063715018a6146102a3575b600080fd5b34801561013b57600080fd5b506101636004803603602081101561015257600080fd5b50356001600160e01b031916610881565b604080519115158252519081900360200190f35b34801561018357600080fd5b5061018c610a12565b005b34801561019a57600080fd5b5061025e600480360360a08110156101b157600080fd5b810190602081018135600160201b8111156101cb57600080fd5b8201836020820111156101dd57600080fd5b803590602001918460018302840111600160201b831117156101fe57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b0383358116945060208401359360408101358216935060600135169050610a53565b60408051918252519081900360200190f35b34801561027c57600080fd5b5061018c6004803603602081101561029357600080fd5b50356001600160a01b0316610b42565b3480156102af57600080fd5b5061018c610ba3565b3480156102c457600080fd5b5061018c600480360360408110156102db57600080fd5b5080359060200135610bfe565b3480156102f457600080fd5b5061025e6004803603602081101561030b57600080fd5b5035610c1a565b34801561031e57600080fd5b5061025e6004803603604081101561033557600080fd5b810190602081018135600160201b81111561034f57600080fd5b82018360208201111561036157600080fd5b803590602001918460018302840111600160201b8311171561038257600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505091359250610c2c915050565b61018c600480360360808110156103db57600080fd5b810190602081018135600160201b8111156103f557600080fd5b82018360208201111561040757600080fd5b803590602001918460018302840111600160201b8311171561042857600080fd5b91935091506001600160a01b038135169060208101359060400135610d9e565b34801561045457600080fd5b5061025e610de9565b34801561046957600080fd5b5061025e610df0565b34801561047e57600080fd5b50610487610df6565b604080516001600160a01b039092168252519081900360200190f35b3480156104af57600080fd5b50610163610e05565b3480156104c457600080fd5b50610163600480360360208110156104db57600080fd5b810190602081018135600160201b8111156104f557600080fd5b82018360208201111561050757600080fd5b803590602001918460018302840111600160201b8311171561052857600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610e16945050505050565b61018c6004803603604081101561057f57600080fd5b810190602081018135600160201b81111561059957600080fd5b8201836020820111156105ab57600080fd5b803590602001918460018302840111600160201b831117156105cc57600080fd5b919350915035610e2b565b3480156105e357600080fd5b50610163600480360360208110156105fa57600080fd5b810190602081018135600160201b81111561061457600080fd5b82018360208201111561062657600080fd5b803590602001918460018302840111600160201b8311171561064757600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610fcf945050505050565b34801561069457600080fd5b5061025e611069565b3480156106a957600080fd5b5061018c600480360360208110156106c057600080fd5b503561106f565b3480156106d357600080fd5b5061018c600480360360208110156106ea57600080fd5b50356001600160a01b03166110a1565b34801561070657600080fd5b5061025e6004803603606081101561071d57600080fd5b810190602081018135600160201b81111561073757600080fd5b82018360208201111561074957600080fd5b803590602001918460018302840111600160201b8311171561076a57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b0383351693505050602001356110bb565b61018c600480360360c08110156107cf57600080fd5b810190602081018135600160201b8111156107e957600080fd5b8201836020820111156107fb57600080fd5b803590602001918460018302840111600160201b8311171561081c57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b038335811694506020840135936040810135935060608101358216925060800135166110d3565b604080517f737570706f727473496e74657266616365286279746573342900000000000000815290519081900360190190206000906001600160e01b0319838116911614806109c05750604080517472656e657728737472696e672c75696e743235362960581b815290519081900360150181209080602861186a8239604080519182900360280182206e636f6d6d697428627974657333322960881b8352905191829003600f01822090925090806026611892823960260190506040518091039020604051808070617661696c61626c6528737472696e672960781b8152506011019050604051809103902060405180807f72656e74507269636528737472696e672c75696e7432353629000000000000008152506019019050604051809103902018181818186001600160e01b031916826001600160e01b031916145b80610a0c5750604051808061182a60409139604080519182900301812091508060426118b8823960420190506040518091039020186001600160e01b031916826001600160e01b031916145b92915050565b610a1a610e05565b610a2357600080fd5b6040513390303180156108fc02916000818181858888f19350505050158015610a50573d6000803e3d6000fd5b50565b845160208601206000906001600160a01b038416158015610a7b57506001600160a01b038316155b15610acb57604080516020808201939093526bffffffffffffffffffffffff19606089901b1681830152605480820188905282518083039091018152607490910190915280519101209050610b39565b6001600160a01b038416610ade57600080fd5b604080516020808201939093526bffffffffffffffffffffffff19606089811b82168385015287811b8216605484015286901b166068820152607c80820188905282518083039091018152609c909101909152805191012090505b95945050505050565b610b4a610e05565b610b5357600080fd5b600280546001600160a01b0319166001600160a01b0383811691909117918290556040519116907ff261845a790fe29bbd6631e2ca4a5bdc83e6eed7c3271d9590d97287e00e912390600090a250565b610bab610e05565b610bb457600080fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b610c06610e05565b610c0f57600080fd5b600391909155600455565b60056020526000908152604090205481565b815160208084019190912060025460015460408051636b727d4360e11b81526004810185905290516000956001600160a01b03948516946350e9a715948a9491169263d6e4fa8692602480840193919291829003018186803b158015610c9157600080fd5b505afa158015610ca5573d6000803e3d6000fd5b505050506040513d6020811015610cbb57600080fd5b50516040516001600160e01b031960e085901b168152602481018290526044810188905260606004820190815283516064830152835189928291608490910190602087019080838360005b83811015610d1e578181015183820152602001610d06565b50505050905090810190601f168015610d4b5780820380516001836020036101000a031916815260200191505b5094505050505060206040518083038186803b158015610d6a57600080fd5b505afa158015610d7e573d6000803e3d6000fd5b505050506040513d6020811015610d9457600080fd5b5051949350505050565b610de285858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250889350879250869150806110d3565b5050505050565b6224ea0081565b60035481565b6000546001600160a01b031690565b6000546001600160a01b0316331490565b60006003610e2383611646565b101592915050565b6000610e6e84848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250869250610c2c915050565b905080341015610e7d57600080fd5b60008484604051808383808284376040805193909101839003832060015463c475abff60e01b855260048501829052602485018b90529151909750600096506001600160a01b03909116945063c475abff93506044808401936020935082900301818787803b158015610eef57600080fd5b505af1158015610f03573d6000803e3d6000fd5b505050506040513d6020811015610f1957600080fd5b5051905034831015610f565760405133903485900380156108fc02916000818181858888f19350505050158015610f54573d6000803e3d6000fd5b505b817f3da24c024582931cfaf8267d8ed24d13a82a8068d5bd337d30ec45cea4e506ae8787868560405180806020018481526020018381526020018281038252868682818152602001925080828437600083820152604051601f909101601f191690920182900397509095505050505050a2505050505050565b80516020820120600090610fe283610e16565b80156110625750600154604080516312dc929d60e31b81526004810184905290516001600160a01b03909216916396e494e891602480820192602092909190829003018186803b15801561103557600080fd5b505afa158015611049573d6000803e3d6000fd5b505050506040513d602081101561105f57600080fd5b50515b9392505050565b60045481565b6004546000828152600560205260409020544291011061108e57600080fd5b6000908152600560205260409020429055565b6110a9610e05565b6110b257600080fd5b610a508161172e565b60006110cb848484600080610a53565b949350505050565b60006110e28787868686610a53565b905060006110f188878461179c565b885160208a01209091508060006001600160a01b038716156114ac5760015460408051633f2891eb60e21b815260048101859052306024820152604481018c905290516001600160a01b039092169163fca247ac916064808201926020929091908290030181600087803b15801561116857600080fd5b505af115801561117c573d6000803e3d6000fd5b505050506040513d602081101561119257600080fd5b505160015460408051630ddf7fcb60e41b815290519293506000926001600160a01b039092169163ddf7fcb091600480820192602092909190829003018186803b1580156111df57600080fd5b505afa1580156111f3573d6000803e3d6000fd5b505050506040513d602081101561120957600080fd5b50516040805160208181019390935280820187905281518082038301815260608201808452815191850191909120600154633f15457f60e01b90925292519294506001600160a01b031692633f15457f92606480840193829003018186803b15801561127457600080fd5b505afa158015611288573d6000803e3d6000fd5b505050506040513d602081101561129e57600080fd5b505160408051630c4b7b8560e11b8152600481018490526001600160a01b038b8116602483015291519190921691631896f70a91604480830192600092919082900301818387803b1580156112f257600080fd5b505af1158015611306573d6000803e3d6000fd5b505050506001600160a01b0387161561139257876001600160a01b031663d5fa2b0082896040518363ffffffff1660e01b815260040180838152602001826001600160a01b03166001600160a01b0316815260200192505050600060405180830381600087803b15801561137957600080fd5b505af115801561138d573d6000803e3d6000fd5b505050505b60015460408051630a3b53db60e21b8152600481018690526001600160a01b038e81166024830152915191909216916328ed4f6c91604480830192600092919082900301818387803b1580156113e757600080fd5b505af11580156113fb573d6000803e3d6000fd5b50505050600160009054906101000a90046001600160a01b03166001600160a01b03166323b872dd308d866040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050600060405180830381600087803b15801561148e57600080fd5b505af11580156114a2573d6000803e3d6000fd5b505050505061154c565b6001600160a01b038616156114c057600080fd5b60015460408051633f2891eb60e21b8152600481018590526001600160a01b038d81166024830152604482018d90529151919092169163fca247ac9160648083019260209291908290030181600087803b15801561151d57600080fd5b505af1158015611531573d6000803e3d6000fd5b505050506040513d602081101561154757600080fd5b505190505b896001600160a01b0316837fca6abbe9d7f11422cb6ca7629fbf6fe9efb1c621f71ce8f02b9f2a230097404f8d87856040518080602001848152602001838152602001828103825285818151815260200191508051906020019080838360005b838110156115c45781810151838201526020016115ac565b50505050905090810190601f1680156115f15780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a3833411156116395760405133903486900380156108fc02916000818181858888f19350505050158015611637573d6000803e3d6000fd5b505b5050505050505050505050565b8051600090819081905b8082101561172557600085838151811061166657fe5b01602001516001600160f81b0319169050600160ff1b81101561168e57600183019250611719565b600760fd1b6001600160f81b0319821610156116af57600283019250611719565b600f60fc1b6001600160f81b0319821610156116d057600383019250611719565b601f60fb1b6001600160f81b0319821610156116f157600483019250611719565b603f60fa1b6001600160f81b03198216101561171257600583019250611719565b6006830192505b50600190920191611650565b50909392505050565b6001600160a01b03811661174157600080fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b600354600082815260056020526040812054909142910111156117be57600080fd5b600454600083815260056020526040902054429101116117dd57600080fd5b6117e684610fcf565b6117ef57600080fd5b600082815260056020526040812081905561180a8585610c2c565b90506224ea0084101561181c57600080fd5b803410156110cb57600080fdfe6d616b65436f6d6d69746d656e7457697468436f6e66696728737472696e672c616464726573732c627974657333322c616464726573732c6164647265737329726567697374657228737472696e672c616464726573732c75696e743235362c62797465733332296d616b65436f6d6d69746d656e7428737472696e672c616464726573732c6279746573333229726567697374657257697468436f6e66696728737472696e672c616464726573732c75696e743235362c627974657333322c616464726573732c6164647265737329a265627a7a72315820ba74b4e49afb22de09a9ebda5d073d93e2a2a7b2530ce50def390c32cac92ea064736f6c634300050c0032","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1":"0xc965345edac823d56812cd20a10316233916a605","0x2":"0xec71e4e674fe0f432693dc2b935c34bd2774c003","0x3":"0x258","0x4":"0x15180"}},"0xbdefcf6429d0ac68236a6beb321cbd2ce66b463c":{"nonce":2,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c80636d435421116100885780637b37e561116100635780637b37e561146102435780638b9e028b14610256578063906c87cc1461027657806393790f4414610289575f80fd5b80636d435421146101eb5780636e9bfd9f146101fe578063794593bc14610230575f80fd5b806314afd79e116100c357806314afd79e1461018157806333bc8572146101945780634e3f9580146101b757806351710e45146101d8575f80fd5b8063027cc764146100e95780630a96ad391461011957806313ad9cab1461016c575b5f80fd5b6100fc6100f7366004610c39565b61029c565b6040516001600160a01b0390911681526020015b60405180910390f35b604080517f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f81527fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167602082015201610110565b61017f61017a366004610c61565b610339565b005b6100fc61018f366004610ca9565b610531565b6101a76101a2366004610cc9565b61055c565b6040519015158152602001610110565b6101ca6101c5366004610ca9565b610595565b604051908152602001610110565b61017f6101e6366004610ca9565b6105bd565b61017f6101f9366004610cc9565b6106be565b61021161020c366004610cfa565b6107ae565b604080516001600160a01b039093168352901515602083015201610110565b6100fc61023e366004610d11565b610838565b61017f610251366004610ca9565b610a0a565b610269610264366004610ca9565b610aab565b6040516101109190610d32565b6100fc610284366004610ca9565b610b28565b6101ca610297366004610ca9565b610b53565b5f6102a683610b8e565b6001600160a01b0383165f908152602081905260409020600301548083106102f157604051636ceb340b60e01b81526001600160a01b03851660048201526024015b60405180910390fd5b6001600160a01b0384165f90815260208190526040902060030180548490811061031d5761031d610d7e565b5f918252602090912001546001600160a01b0316949350505050565b61034283610bc6565b60405163c4e8fcb560e01b81526001600160a01b038381166004830152821515602483015284169063c4e8fcb5906044015f604051808303815f87803b15801561038a575f80fd5b505af115801561039c573d5f803e3d5ffd5b505050506001600160a01b038381165f908152602081815260408083209386168352600484019091529020548015158380156103d6575080155b15610425576003830180546001810182555f828152602080822090920180546001600160a01b0319166001600160a01b038a169081179091559254928152600486019091526040902055610529565b831580156104305750805b156105295760038301545f198301905f9061044d90600190610d92565b90508181146104d8575f85600301828154811061046c5761046c610d7e565b5f918252602090912001546003870180546001600160a01b03909216925082918590811061049c5761049c610d7e565b5f91825260208083209190910180546001600160a01b0319166001600160a01b0394851617905592909116815260048701909152604090208490555b846003018054806104eb576104eb610db7565b5f828152602080822083015f1990810180546001600160a01b03191690559092019092556001600160a01b0389168252600487019052604081205550505b505050505050565b5f61053b82610b8e565b506001600160a01b039081165f908152602081905260409020600101541690565b5f61056683610b8e565b506001600160a01b039182165f9081526020818152604080832093909416825260049092019091522054151590565b5f61059f82610b8e565b506001600160a01b03165f9081526020819052604090206003015490565b6105c681610b8e565b6001600160a01b038181165f9081526020819052604090206002015416331461060d576040516388c3a11560e01b81526001600160a01b03821660048201526024016102e8565b6040515f907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da908290a26001600160a01b038082165f818152602081905260408082206002810180546001600160a01b031916905560010154905133949190911692917fc8894f26f396ce8c004245c8b7cd1b92103a6e4302fcbab883987149ac01b7ec91a46001600160a01b03165f90815260208190526040902060010180546001600160a01b03191633179055565b6106c782610bc6565b6001600160a01b0381166106f95760405163a388d26360e01b81526001600160a01b03831660048201526024016102e8565b6001600160a01b038083165f9081526020819052604090206002015481169082160361074b576040516365e0406560e11b81526001600160a01b038084166004830152821660248201526044016102e8565b6040516001600160a01b038216907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da905f90a26001600160a01b039182165f90815260208190526040902060020180546001600160a01b03191691909216179055565b5f8060ff60f81b30847f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f6040516020016107eb9493929190610dcb565b60408051601f198184030181529190528051602090910120936001600160a01b0385163f7fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167149350915050565b5f6001600160a01b0382166108605760405163267eaa8160e21b815260040160405180910390fd5b606083901c3314610884576040516332db94d160e21b815260040160405180910390fd5b6040516108c3906001600160f81b031990309086907f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f90602001610dcb565b604051602081830303815290604052805190602001205f1c90507fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167816001600160a01b03163f0361093257604051633194665960e11b81526001600160a01b03821660048201526024016102e8565b8260405161093f90610c16565b8190604051809103905ff590508015801561095c573d5f803e3d5ffd5b50506001600160a01b038181165f81815260208181526040918290206001810180546001600160a01b03191695881695909517909455868455815192835282018690527f4397af6128d529b8ae0442f99db1296d5136062597a15bbc61c1b2a6431a7d15910160405180910390a16040516001600160a01b03808516915f918516907fc8894f26f396ce8c004245c8b7cd1b92103a6e4302fcbab883987149ac01b7ec908390a45092915050565b610a1381610bc6565b6001600160a01b038181165f9081526020819052604090206002015416610a58576040516335809b0b60e11b81526001600160a01b03821660048201526024016102e8565b6040515f907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da908290a26001600160a01b03165f90815260208190526040902060020180546001600160a01b0319169055565b6060610ab682610b8e565b6001600160a01b0382165f908152602081815260409182902060030180548351818402810184019094528084529091830182828015610b1c57602002820191905f5260205f20905b81546001600160a01b03168152600190910190602001808311610afe575b50505050509050919050565b5f610b3282610b8e565b506001600160a01b039081165f908152602081905260409020600201541690565b6001600160a01b0381165f9081526020819052604090205480610b89576040516304ca820960e41b815260040160405180910390fd5b919050565b6001600160a01b0381165f90815260208190526040902054610bc3576040516304ca820960e41b815260040160405180910390fd5b50565b610bcf81610b8e565b6001600160a01b038181165f90815260208190526040902060010154163314610bc35760405163d4ed9a1760e01b81526001600160a01b03821660048201526024016102e8565b610a4180610e0583390190565b80356001600160a01b0381168114610b89575f80fd5b5f8060408385031215610c4a575f80fd5b610c5383610c23565b946020939093013593505050565b5f805f60608486031215610c73575f80fd5b610c7c84610c23565b9250610c8a60208501610c23565b915060408401358015158114610c9e575f80fd5b809150509250925092565b5f60208284031215610cb9575f80fd5b610cc282610c23565b9392505050565b5f8060408385031215610cda575f80fd5b610ce383610c23565b9150610cf160208401610c23565b90509250929050565b5f60208284031215610d0a575f80fd5b5035919050565b5f8060408385031215610d22575f80fd5b82359150610cf160208401610c23565b602080825282518282018190525f9190848201906040850190845b81811015610d725783516001600160a01b031683529284019291840191600101610d4d565b50909695505050505050565b634e487b7160e01b5f52603260045260245ffd5b81810381811115610db157634e487b7160e01b5f52601160045260245ffd5b92915050565b634e487b7160e01b5f52603160045260245ffd5b6001600160f81b031994909416845260609290921b6bffffffffffffffffffffffff19166001840152601583015260358201526055019056fe60a060405234801561000f575f80fd5b5033608052608051610a1561002c5f395f6101d20152610a155ff3fe608060405234801561000f575f80fd5b506004361061004a575f3560e01c80634ce34aa21461004e578063899e104c1461007e5780638df25d9214610091578063c4e8fcb5146100a4575b5f80fd5b61006161005c366004610834565b6100b9565b6040516001600160e01b0319909116815260200160405180910390f35b61006161008c3660046108b4565b610121565b61006161009f36600461091b565b61018a565b6100b76100b2366004610969565b6101c7565b005b5f335f525f60205260405f20546100dd576349ed56f960e11b5f523360045260245ffd5b815f5b81811015610110576101088585838181106100fd576100fd6109a2565b905060c002016102c4565b6001016100e0565b50632671a55160e11b949350505050565b5f335f525f60205260405f2054610145576349ed56f960e11b5f523360045260245ffd5b835f5b8181101561016d576101658787838181106100fd576100fd6109a2565b600101610148565b506101788484610436565b50632267841360e21b95945050505050565b5f335f525f60205260405f20546101ae576349ed56f960e11b5f523360045260245ffd5b6101b88383610436565b506346f92ec960e11b92915050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610210576040516336abb4df60e11b815260040160405180910390fd5b6001600160a01b0382165f9081526020819052604090205481151560ff909116151503610268576040516349271a0f60e11b81526001600160a01b038316600482015281151560248201526044015b60405180910390fd5b6001600160a01b0382165f8181526020818152604091829020805460ff191685151590811790915591519182527fae63067d43ac07563b7eb8db6595635fc77f1578a2a5ea06ba91b63e2afa37e2910160405180910390a25050565b60016102d360208301836109ca565b60038111156102e4576102e46109b6565b03610329576103266102fc60408301602084016109ef565b61030c60608401604085016109ef565b61031c60808501606086016109ef565b8460a0013561056c565b50565b600261033860208301836109ca565b6003811115610349576103496109b6565b036103b6578060a00135600114610379576040516369f9582760e01b815260a0820135600482015260240161025f565b61032661038c60408301602084016109ef565b61039c60608401604085016109ef565b6103ac60808501606086016109ef565b8460800135610660565b60036103c560208301836109ca565b60038111156103d6576103d66109b6565b0361041d576103266103ee60408301602084016109ef565b6103fe60608401604085016109ef565b61040e60808501606086016109ef565b84608001358560a00135610715565b604051631e4cbc7f60e21b815260040160405180910390fd5b808280631759616b60e11b6020525f5b8381101561055f57823582018035803b61046b57635f15d6725f52806020526024601cfd5b60a08201358060051b60c0018060808501351460a0606086013514168185013583141615905080156104a657633ae8821360e21b5f5260045ffd5b506020860195506080602084016024378060061b60400190508060a00160a4525f8160c401528060c4018160a0850160c4375f808260205f875af1935083610550573d1561053057601f3d0160051c91508060051c826003028184111561051a578184036003028280028580020360091c01015b5a60208201101561052d573d5f803e3d5ffd5b50505b6357e222f160e11b5f528260045260c0606452608451602001608452805ffd5b50505050600181019050610446565b5050505060806040525050565b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166106515780873b15151661065157806106405781610623573d1561060257601f3d0160051c8360051c81600302818311156105eb578183036003028280028480020360091c01015b5a6020820110156105fe573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b833b61067757635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af180610707573d156106e557601f3d0160051c8260051c81600302818311156106ce578183036003028280028480020360091c01015b5a6020820110156106e1573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b61072c57635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af1806107d1573d156107b057601f3d0160051c8560051c8160030281831115610799578183036003028280028480020360091c01015b5a6020820110156107ac573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b5f8083601f8401126107fc575f80fd5b50813567ffffffffffffffff811115610813575f80fd5b60208301915083602060c08302850101111561082d575f80fd5b9250929050565b5f8060208385031215610845575f80fd5b823567ffffffffffffffff81111561085b575f80fd5b610867858286016107ec565b90969095509350505050565b5f8083601f840112610883575f80fd5b50813567ffffffffffffffff81111561089a575f80fd5b6020830191508360208260051b850101111561082d575f80fd5b5f805f80604085870312156108c7575f80fd5b843567ffffffffffffffff808211156108de575f80fd5b6108ea888389016107ec565b90965094506020870135915080821115610902575f80fd5b5061090f87828801610873565b95989497509550505050565b5f806020838503121561092c575f80fd5b823567ffffffffffffffff811115610942575f80fd5b61086785828601610873565b80356001600160a01b0381168114610964575f80fd5b919050565b5f806040838503121561097a575f80fd5b6109838361094e565b915060208301358015158114610997575f80fd5b809150509250929050565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52602160045260245ffd5b5f602082840312156109da575f80fd5b8135600481106109e8575f80fd5b9392505050565b5f602082840312156109ff575f80fd5b6109e88261094e56fea164736f6c6343000818000aa164736f6c6343000818000a","storage":{}},"0xbe5deac45dd1ca4ee18dc2d585d84d3d3cb82b0d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c806341539d4a146100465780634d5505d314610097578063afa764d7146100b1575b600080fd5b6100636004803603602081101561005c57600080fd5b50356100dc565b6040805195865260208601949094528484019290925260608401526001600160a01b03166080830152519081900360a00190f35b61009f610114565b60408051918252519081900360200190f35b6100da600480360360608110156100c757600080fd5b508035906020810135906040013561011a565b005b60006020819052908152604090208054600182015460028301546003840154600490940154929391929091906001600160a01b031685565b60015481565b6101226101eb565b506040805160a0810182528481526020808201858152828401858152426060808601918252336080870181815260018054810180825560009081528089528a81208a518155975188830155955160028801559351600387015551600490950180546001600160a01b0319166001600160a01b0390961695909517909455905486518981529485018890528487018a905295519495919491937fba5de06d22af2685c6c7765f60067f7d2b08c2d29f53cdf14d67f6d1c9bfb527929081900390910190a450505050565b6040518060a001604052806000801916815260200160008152602001600081526020016000815260200160006001600160a01b03168152509056fea164736f6c6343000606000a","storage":{"0x1":"0x0"}},"0xbe92182cab5b84fd18b34881a0c32771e84f5b8b":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061021c5760003560e01c80638da5cb5b11610125578063bebec6b4116100ad578063e985e9c51161007c578063e985e9c514610540578063f059235914610553578063f2fde38b14610566578063ffa1ad7414610579578063ffad6f551461059d57600080fd5b8063bebec6b4146104e7578063bfc5429b146104fa578063c15ae7cf1461050d578063c87b56dd1461052d57600080fd5b8063a81ce6f9116100f4578063a81ce6f91461046d578063ac9650d814610480578063b3f9e4cb146104a0578063b85afd28146104b3578063b98b3526146104d457600080fd5b80638da5cb5b146103f157806391015f6b146103f9578063933c051d1461041b578063a3f4df7e1461043d57600080fd5b80634bd79ed0116101a857806370a082311161017757806370a082311461038d578063715018a6146103a05780637e37479e146103a857806383caffbe146103bb578063869b8884146103ce57600080fd5b80634bd79ed0146103335780634f558e79146103465780636352211e14610359578063672b9f811461036c57600080fd5b80631bd8cc1a116101ef5780631bd8cc1a146102ac5780631be5e7ed146102cc578063276fabb1146102ec578063430c20811461030d578063485cc9551461032057600080fd5b806301ffc9a7146102215780630328075514610249578063081812fc1461026c57806313af403514610297575b600080fd5b61023461022f366004612c9d565b6105b0565b60405190151581526020015b60405180910390f35b61025c610257366004612d0b565b610638565b6040516102409493929190612dfe565b61027f61027a366004612e3c565b61065b565b6040516001600160a01b039091168152602001610240565b6102aa6102a5366004612e6a565b610760565b005b6102bf6102ba366004612d0b565b6107d1565b6040516102409190612e87565b6102df6102da366004612edb565b6107f0565b6040516102409190612f12565b6102ff6102fa366004612f25565b61091b565b604051908152602001610240565b61023461031b366004612f66565b61098f565b6102aa61032e366004612f92565b610aa2565b6102aa610341366004612fcb565b610bf5565b610234610354366004612e3c565b610e51565b61027f610367366004612e3c565b610e5c565b61037f61037a366004613036565b610e67565b604051610240929190613058565b6102ff61039b366004612e6a565b610f97565b6102aa611095565b6102ff6103b6366004612e6a565b6110a9565b6102bf6103c936600461307d565b611118565b6103e16103dc366004612fcb565b6114f0565b60405161024094939291906131bb565b61027f6116e6565b61040c610407366004612d0b565b611714565b60405161024093929190613208565b61042e610429366004612fcb565b611734565b60405161024093929190613234565b6102df604051806040016040528060118152602001702aa7299d10283937bc3c902932b0b232b960791b81525081565b61027f61047b366004612e3c565b6118bd565b61049361048e366004612f25565b61198b565b6040516102409190613277565b61027f6104ae366004612e3c565b611a7f565b6104c66104c1366004612d0b565b611b05565b6040516102409291906132d9565b6102df6104e23660046132fe565b611ce1565b6102df6104f5366004612e6a565b611cfb565b6102df6105083660046132fe565b611d6f565b61052061051b366004612f25565b611d89565b6040516102409190613371565b6102df61053b366004612e3c565b611e37565b61023461054e366004612f92565b611f09565b6102aa610561366004612fcb565b611f54565b6102aa610574366004612e6a565b612018565b6102df604051806040016040528060058152602001640302e352e360dc1b81525081565b6102aa6105ab366004613384565b612085565b60006001600160e01b031982166362526e6360e01b14806105e157506001600160e01b03198216636fa624af60e11b145b806105fc57506001600160e01b031982166308da864d60e31b145b8061061757506001600160e01b03198216638584880360e01b145b8061063257506301ffc9a760e01b6001600160e01b03198316145b92915050565b6000806060806106498787876120d8565b93509350935093505b93509350935093565b60006106668261233a565b61067257506000919050565b61067b826123d2565b6106f25760665460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa1580156106c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106ed91906133bd565b610632565b60655460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa15801561073c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061063291906133bd565b600061076a6116e6565b6001600160a01b0316146107c55760405162461bcd60e51b815260206004820152601e60248201527f50726f78795265616465723a204f574e45525f414c52454144595f534554000060448201526064015b60405180910390fd5b6107ce81612419565b50565b60606107e66107e0848661346a565b83612495565b90505b9392505050565b60606107fb826123d2565b1561088057606554604051631be5e7ed60e01b81526001600160a01b0390911690631be5e7ed9061083490879087908790600401613547565b600060405180830381865afa158015610851573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261087991908101906135b0565b90506107e9565b600061088b83612617565b90506001600160a01b0381163b1561091357604051631be5e7ed60e01b81526001600160a01b03821690631be5e7ed906108cd90889088908890600401613547565b600060405180830381865afa92505050801561090b57506040513d6000823e601f3d908101601f1916820160405261090891908101906135b0565b60015b156109135791505b509392505050565b60655460405163276fabb160e01b81526000916001600160a01b03169063276fabb19061094e908690869060040161366c565b602060405180830381865afa15801561096b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613680565b600061099a8261233a565b6109a657506000610632565b6109af826123d2565b610a2d5760665460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a04573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a289190613699565b6107e9565b60655460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a7e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613699565b600054610100900460ff1615808015610ac25750600054600160ff909116105b80610adc5750303b158015610adc575060005460ff166001145b610b3f5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107bc565b6000805460ff191660011790558015610b62576000805461ff0019166101001790555b606580546001600160a01b038086166001600160a01b0319928316179092556066805492851692909116919091179055610b9a61268a565b610ba261268a565b610baa6126b1565b8015610bf0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b610bfd6126e1565b828114610c4c5760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107bc565b60005b83811015610e4a5760006068868684818110610c6d57610c6d6136bb565b9050602002810190610c7f91906136d1565b604051610c8d929190613717565b908152604051908190036020019020541115610cf1576068858583818110610cb757610cb76136bb565b9050602002810190610cc991906136d1565b604051610cd7929190613717565b90815260200160405180910390206000610cf19190612c18565b60005b838383818110610d0657610d066136bb565b9050602002810190610d189190613727565b9050811015610ddc576068868684818110610d3557610d356136bb565b9050602002810190610d4791906136d1565b604051610d55929190613717565b9081526020016040518091039020848484818110610d7557610d756136bb565b9050602002810190610d879190613727565b83818110610d9757610d976136bb565b9050602002810190610da991906136d1565b82546001810184556000938452602090932090920191610dc991836137f8565b5080610dd4816138cd565b915050610cf4565b507fb2b57b54285120d17f49f2490a39ef791441fd0ad1e6b6818c23262bf91f061c858583818110610e1057610e106136bb565b9050602002810190610e2291906136d1565b604051610e309291906138e6565b60405180910390a180610e42816138cd565b915050610c4f565b5050505050565b60006106328261233a565b600061063282612740565b606080610e73836123d2565b15610ef95760655460405163672b9f8160e01b815260048101869052602481018590526001600160a01b039091169063672b9f8190604401600060405180830381865afa158015610ec8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610ef091908101906138fa565b91509150610f90565b6000610f0484612617565b90506001600160a01b0381163b15610f8e5760405163672b9f8160e01b815260048101869052602481018590526001600160a01b0382169063672b9f8190604401600060405180830381865afa925050508015610f8357506040513d6000823e601f3d908101601f19168201604052610f8091908101906138fa565b60015b15610f8e5790935091505b505b9250929050565b6065546040516370a0823160e01b81526001600160a01b03838116600483015260009283929116906370a0823190602401602060405180830381865afa158015610fe5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110099190613680565b6066549091506001600160a01b031615610632576066546040516370a0823160e01b81526001600160a01b038581166004830152909116906370a0823190602401602060405180830381865afa158015611067573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061108b9190613680565b6107e9908261395d565b61109d6126e1565b6110a76000612419565b565b606554604051633f1ba3cf60e11b81526001600160a01b0383811660048301526000921690637e37479e90602401602060405180830381865afa1580156110f4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190613680565b606060006067868660405161112e929190613717565b9081526020016040518091039020805461114790613770565b80601f016020809104026020016040519081016040528092919081815260200182805461117390613770565b80156111c05780601f10611195576101008083540402835291602001916111c0565b820191906000526020600020905b8154815290600101906020018083116111a357829003601f168201915b5050505050905080516000036111d657506114e8565b6000604051806040016040528060068152602001653a37b5b2b71760d11b81525090506000604051806040016040528060088152602001672e6164647265737360c01b81525090506000604051806040016040528060018152602001601760f91b815250905060008385838c8c868d8d8a60405160200161125f99989796959493929190613970565b6040516020818303038152906040529050600060688260405161128291906139f3565b9081526020016040518091039020805480602002602001604051908101604052809291908181526020016000905b8282101561135c5783829060005260206000200180546112cf90613770565b80601f01602080910402602001604051908101604052809291908181526020018280546112fb90613770565b80156113485780601f1061131d57610100808354040283529160200191611348565b820191906000526020600020905b81548152906001019060200180831161132b57829003601f168201915b5050505050815260200190600101906112b0565b50505050905080516003611370919061395d565b6001600160401b03811115611387576113876133da565b6040519080825280602002602001820160405280156113ba57816020015b60608152602001906001900390816113a55790505b50965081876000815181106113d1576113d16136bb565b602002602001018190525060005b815181101561143e578181815181106113fa576113fa6136bb565b602002602001015188826001611410919061395d565b81518110611420576114206136bb565b60200260200101819052508080611436906138cd565b9150506113df565b508486848d8d8860405160200161145a96959493929190613a0f565b6040516020818303038152906040528782516001611478919061395d565b81518110611488576114886136bb565b60200260200101819052508486856040516020016114a893929190613a72565b60405160208183030381529060405287825160026114c6919061395d565b815181106114d6576114d66136bb565b60200260200101819052505050505050505b949350505050565b6060808080846001600160401b0381111561150d5761150d6133da565b604051908082528060200260200182016040528015611536578160200160208202803683370190505b509350846001600160401b03811115611551576115516133da565b60405190808252806020026020018201604052801561157a578160200160208202803683370190505b509250846001600160401b03811115611595576115956133da565b6040519080825280602002602001820160405280156115c857816020015b60608152602001906001900390816115b35790505b509150846001600160401b038111156115e3576115e36133da565b60405190808252806020026020018201604052801561161657816020015b60608152602001906001900390816116015790505b50905060005b858110156116da57611647898989898581811061163b5761163b6136bb565b905060200201356120d8565b888581518110611659576116596136bb565b60200260200101888681518110611672576116726136bb565b6020026020010188878151811061168b5761168b6136bb565b602002602001018888815181106116a4576116a46136bb565b6020908102919091010193909352929091526001600160a01b0392831690915291169052806116d2816138cd565b91505061161c565b50945094509450949050565b7fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c8121905546001600160a01b031690565b6000806060611724868686612761565b9250925092505b93509350939050565b60608080836001600160401b03811115611750576117506133da565b604051908082528060200260200182016040528015611779578160200160208202803683370190505b509250836001600160401b03811115611794576117946133da565b6040519080825280602002602001820160405280156117bd578160200160208202803683370190505b509150836001600160401b038111156117d8576117d86133da565b60405190808252806020026020018201604052801561180b57816020015b60608152602001906001900390816117f65790505b50905060005b848110156118b25761183c8888888885818110611830576118306136bb565b90506020020135612761565b86848151811061184e5761184e6136bb565b60200260200101868581518110611867576118676136bb565b60200260200101868681518110611880576118806136bb565b60209081029190910101929092526001600160a01b0392831690915291169052806118aa816138cd565b915050611811565b509450945094915050565b606554604051634f558e7960e01b8152600481018390526000916001600160a01b031690634f558e7990602401602060405180830381865afa158015611907573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061192b9190613699565b156119415750506065546001600160a01b031690565b6066546001600160a01b03161580159061196d575060006119618361296c565b6001600160a01b031614155b156119835750506066546001600160a01b031690565b506000919050565b6060816001600160401b038111156119a5576119a56133da565b6040519080825280602002602001820160405280156119d857816020015b60608152602001906001900390816119c35790505b50905060005b82811015611a7857611a48308585848181106119fc576119fc6136bb565b9050602002810190611a0e91906136d1565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061299e92505050565b828281518110611a5a57611a5a6136bb565b60200260200101819052508080611a70906138cd565b9150506119de565b5092915050565b6000611a8a8261233a565b611a9657506000919050565b611a9f826123d2565b611ad45760665460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb906024016106ac565b60655460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb9060240161071f565b606080836001600160401b03811115611b2057611b206133da565b604051908082528060200260200182016040528015611b5357816020015b6060815260200190600190039081611b3e5790505b509150836001600160401b03811115611b6e57611b6e6133da565b604051908082528060200260200182016040528015611ba157816020015b6060815260200190600190039081611b8c5790505b509050611bad836123d2565b15611c345760655460405163170b5fa560e31b81526001600160a01b039091169063b85afd2890611be690889088908890600401613ab5565b600060405180830381865afa158015611c03573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611c2b9190810190613b72565b91509150611cd9565b6000611c3f84612617565b90506001600160a01b0381163b15158015611c5957508415155b15611cd75760405163170b5fa560e31b81526001600160a01b0382169063b85afd2890611c8e90899089908990600401613ab5565b600060405180830381865afa925050508015611ccc57506040513d6000823e601f3d908101601f19168201604052611cc99190810190613b72565b60015b15611cd75790935091505b505b935093915050565b6060611cf08686868686612a92565b979650505050505050565b606554604051632fafb1ad60e21b81526001600160a01b038381166004830152606092169063bebec6b4906024015b600060405180830381865afa158015611d47573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261063291908101906135b0565b6060611d7e8686868686612a92565b509695505050505050565b6060816001600160401b03811115611da357611da36133da565b604051908082528060200260200182016040528015611dcc578160200160208202803683370190505b50905060005b82811015611a7857611dfb848483818110611def57611def6136bb565b90506020020135612740565b828281518110611e0d57611e0d6136bb565b6001600160a01b039092166020928302919091019091015280611e2f816138cd565b915050611dd2565b6060611e428261233a565b611e5a57505060408051602081019091526000815290565b611e63826123d2565b611ed85760665460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401600060405180830381865afa158015611eb0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106ed91908101906135b0565b60655460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401611d2a565b60405162461bcd60e51b815260206004820152601f60248201527f50726f78795265616465723a20554e535550504f525445445f4d4554484f440060448201526000906064016107bc565b611f5c6126e1565b828114611fab5760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107bc565b60005b83811015610e4a57612006858583818110611fcb57611fcb6136bb565b9050602002810190611fdd91906136d1565b858585818110611fef57611fef6136bb565b905060200281019061200191906136d1565b612b3e565b80612010816138cd565b915050611fae565b6120206126e1565b6001600160a01b0381166107c55760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107bc565b61208d6126e1565b60005b83811015610e4a576120c68585838181106120ad576120ad6136bb565b90506020028101906120bf91906136d1565b8585612b3e565b806120d0816138cd565b915050612090565b600080606080856001600160401b038111156120f6576120f66133da565b60405190808252806020026020018201604052801561212957816020015b60608152602001906001900390816121145790505b509150856001600160401b03811115612144576121446133da565b60405190808252806020026020018201604052801561217757816020015b60608152602001906001900390816121625790505b509050612183856123d2565b156122845760655460405163b3f9e4cb60e01b8152600481018790526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa1580156121d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121f591906133bd565b935061220085612bad565b60655460405163170b5fa560e31b81529194506001600160a01b03169063b85afd2890612235908a908a908a90600401613ab5565b600060405180830381865afa158015612252573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261227a9190810190613b72565b9092509050610652565b61228d85612617565b93506122988561296c565b92506001600160a01b0384163b151580156122b4575060008251115b156106525760405163170b5fa560e31b81526001600160a01b0385169063b85afd28906122e9908a908a908a90600401613ab5565b600060405180830381865afa92505050801561232757506040513d6000823e601f3d908101601f191682016040526123249190810190613b72565b60015b1561065257909250905093509350935093565b6000612345826123d2565b6123645760006123548361296c565b6001600160a01b03161415610632565b606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e79906024015b602060405180830381865afa1580156123ae573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190613699565b6066546000906001600160a01b031615806106325750606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401612391565b60006124236116e6565b9050817fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c812190580546001600160a01b0319166001600160a01b03928316179055604051838216918316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b606082516001600160401b038111156124b0576124b06133da565b6040519080825280602002602001820160405280156124e357816020015b60608152602001906001900390816124ce5790505b5090506124ef826123d2565b1561257257606554604051630dec660d60e11b81526001600160a01b0390911690631bd8cc1a906125269086908690600401613bcb565b600060405180830381865afa158015612543573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261256b9190810190613bed565b9050610632565b600061257d83612617565b90506001600160a01b0381163b15158015612599575060008451115b15611a7857604051630dec660d60e11b81526001600160a01b03821690631bd8cc1a906125cc9087908790600401613bcb565b600060405180830381865afa92505050801561260a57506040513d6000823e601f3d908101601f191682016040526126079190810190613bed565b60015b15611a7857949350505050565b60665460405163b3f9e4cb60e01b8152600481018390526000916001600160a01b03169063b3f9e4cb906024015b602060405180830381865afa92505050801561267e575060408051601f3d908101601f1916820190925261267b918101906133bd565b60015b61063257506000919050565b600054610100900460ff166110a75760405162461bcd60e51b81526004016107bc90613c21565b600054610100900460ff166126d85760405162461bcd60e51b81526004016107bc90613c21565b6110a733612419565b336126ea6116e6565b6001600160a01b0316146110a75760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107bc565b600061274b826123d2565b612758576106ed8261296c565b61063282612bad565b6000806060846001600160401b0381111561277e5761277e6133da565b6040519080825280602002602001820160405280156127b157816020015b606081526020019060019003908161279c5790505b5090506127bd846123d2565b156128bb5760655460405163b3f9e4cb60e01b8152600481018690526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561280b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061282f91906133bd565b925061283a84612bad565b606554604051630dec660d60e11b81529193506001600160a01b031690631bd8cc1a9061286f90899089908990600401613c6c565b600060405180830381865afa15801561288c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526128b49190810190613bed565b905061172b565b6128c484612617565b92506128cf8461296c565b91506001600160a01b0383163b151580156128e957508415155b1561172b57604051630dec660d60e11b81526001600160a01b03841690631bd8cc1a9061291e90899089908990600401613c6c565b600060405180830381865afa92505050801561295c57506040513d6000823e601f3d908101601f191682016040526129599190810190613bed565b60015b1561172b57905093509350939050565b6066546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401612645565b60606001600160a01b0383163b612a065760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b60648201526084016107bc565b600080846001600160a01b031684604051612a2191906139f3565b600060405180830381855af49150503d8060008114612a5c576040519150601f19603f3d011682016040523d82523d6000602084013e612a61565b606091505b5091509150612a898282604051806060016040528060278152602001613c8160279139612bdf565b95945050505050565b6060806000612aa388888888611118565b90506000612ab18286612495565b905060005b8151811015612b31576000828281518110612ad357612ad36136bb565b6020026020010151511115612b1f57828181518110612af457612af46136bb565b60200260200101519350818181518110612b1057612b106136bb565b60200260200101519450612b31565b80612b29816138cd565b915050612ab6565b5050509550959350505050565b818160678686604051612b52929190613717565b90815260200160405180910390209182612b6d9291906137f8565b507f0bf4b04a0f6d7d0800284e1abb0f58f795c0a25b9088634b6ab847be51001dec8484604051612b9f9291906138e6565b60405180910390a150505050565b6065546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401612645565b60608315612bee5750816107e9565b825115612bfe5782518084602001fd5b8160405162461bcd60e51b81526004016107bc9190612f12565b50805460008255906000526020600020908101906107ce91905b80821115612c4f576000612c468282612c53565b50600101612c32565b5090565b508054612c5f90613770565b6000825580601f10612c6f575050565b601f0160209004906000526020600020908101906107ce91905b80821115612c4f5760008155600101612c89565b600060208284031215612caf57600080fd5b81356001600160e01b0319811681146107e957600080fd5b60008083601f840112612cd957600080fd5b5081356001600160401b03811115612cf057600080fd5b6020830191508360208260051b8501011115610f9057600080fd5b600080600060408486031215612d2057600080fd5b83356001600160401b03811115612d3657600080fd5b612d4286828701612cc7565b909790965060209590950135949350505050565b60005b83811015612d71578181015183820152602001612d59565b50506000910152565b60008151808452612d92816020860160208601612d56565b601f01601f19169290920160200192915050565b600082825180855260208086019550808260051b84010181860160005b84811015612df157601f19868403018952612ddf838351612d7a565b98840198925090830190600101612dc3565b5090979650505050505050565b6001600160a01b03858116825284166020820152608060408201819052600090612e2a90830185612da6565b8281036060840152611cf08185612da6565b600060208284031215612e4e57600080fd5b5035919050565b6001600160a01b03811681146107ce57600080fd5b600060208284031215612e7c57600080fd5b81356107e981612e55565b6020815260006107e96020830184612da6565b60008083601f840112612eac57600080fd5b5081356001600160401b03811115612ec357600080fd5b602083019150836020828501011115610f9057600080fd5b600080600060408486031215612ef057600080fd5b83356001600160401b03811115612f0657600080fd5b612d4286828701612e9a565b6020815260006107e96020830184612d7a565b60008060208385031215612f3857600080fd5b82356001600160401b03811115612f4e57600080fd5b612f5a85828601612cc7565b90969095509350505050565b60008060408385031215612f7957600080fd5b8235612f8481612e55565b946020939093013593505050565b60008060408385031215612fa557600080fd5b8235612fb081612e55565b91506020830135612fc081612e55565b809150509250929050565b60008060008060408587031215612fe157600080fd5b84356001600160401b0380821115612ff857600080fd5b61300488838901612cc7565b9096509450602087013591508082111561301d57600080fd5b5061302a87828801612cc7565b95989497509550505050565b6000806040838503121561304957600080fd5b50508035926020909101359150565b60408152600061306b6040830185612d7a565b8281036020840152612a898185612d7a565b6000806000806040858703121561309357600080fd5b84356001600160401b03808211156130aa57600080fd5b6130b688838901612e9a565b909650945060208701359150808211156130cf57600080fd5b5061302a87828801612e9a565b600081518084526020808501945080840160005b838110156131155781516001600160a01b0316875295820195908201906001016130f0565b509495945050505050565b60008282518085526020808601955060058183821b8501018287016000805b868110156131ac57601f1988850381018c5283518051808752908801908887019080891b88018a01865b8281101561319557858a8303018452613183828651612d7a565b948c0194938c01939150600101613169565b509e8a019e9750505093870193505060010161313f565b50919998505050505050505050565b6080815260006131ce60808301876130dc565b82810360208401526131e081876130dc565b905082810360408401526131f48186613120565b90508281036060840152611cf08185613120565b6001600160a01b03848116825283166020820152606060408201819052600090612a8990830184612da6565b60608152600061324760608301866130dc565b828103602084015261325981866130dc565b9050828103604084015261326d8185613120565b9695505050505050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156132cc57603f198886030184526132ba858351612d7a565b9450928501929085019060010161329e565b5092979650505050505050565b6040815260006132ec6040830185612da6565b8281036020840152612a898185612da6565b60008060008060006060868803121561331657600080fd5b85356001600160401b038082111561332d57600080fd5b61333989838a01612e9a565b9097509550602088013591508082111561335257600080fd5b5061335f88828901612e9a565b96999598509660400135949350505050565b6020815260006107e960208301846130dc565b6000806000806040858703121561339a57600080fd5b84356001600160401b03808211156133b157600080fd5b6130b688838901612cc7565b6000602082840312156133cf57600080fd5b81516107e981612e55565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715613418576134186133da565b604052919050565b60006001600160401b03821115613439576134396133da565b5060051b60200190565b60006001600160401b0382111561345c5761345c6133da565b50601f01601f191660200190565b600061347d61347884613420565b6133f0565b80848252602080830192508560051b85013681111561349b57600080fd5b855b818110156135125780356001600160401b038111156134bc5760008081fd5b870136601f8201126134ce5760008081fd5b80356134dc61347882613443565b81815236868385010111156134f15760008081fd5b8186840187830137600091810186019190915286525093820193820161349d565b50919695505050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60408152600061355b60408301858761351e565b9050826020830152949350505050565b600082601f83011261357c57600080fd5b815161358a61347882613443565b81815284602083860101111561359f57600080fd5b6114e8826020830160208701612d56565b6000602082840312156135c257600080fd5b81516001600160401b038111156135d857600080fd5b6114e88482850161356b565b60008383855260208086019550808560051b8301018460005b87811015612df157848303601f19018952813536889003601e1901811261362357600080fd5b870184810190356001600160401b0381111561363e57600080fd5b80360382131561364d57600080fd5b61365885828461351e565b9a86019a94505050908301906001016135fd565b6020815260006107e66020830184866135e4565b60006020828403121561369257600080fd5b5051919050565b6000602082840312156136ab57600080fd5b815180151581146107e957600080fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e198436030181126136e857600080fd5b8301803591506001600160401b0382111561370257600080fd5b602001915036819003821315610f9057600080fd5b8183823760009101908152919050565b6000808335601e1984360301811261373e57600080fd5b8301803591506001600160401b0382111561375857600080fd5b6020019150600581901b3603821315610f9057600080fd5b600181811c9082168061378457607f821691505b6020821081036137a457634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115610bf057600081815260208120601f850160051c810160208610156137d15750805b601f850160051c820191505b818110156137f0578281556001016137dd565b505050505050565b6001600160401b0383111561380f5761380f6133da565b6138238361381d8354613770565b836137aa565b6000601f841160018114613857576000851561383f5750838201355b600019600387901b1c1916600186901b178355610e4a565b600083815260209020601f19861690835b828110156138885786850135825560209485019460019092019101613868565b50868210156138a55760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b634e487b7160e01b600052601160045260246000fd5b6000600182016138df576138df6138b7565b5060010190565b6020815260006107e660208301848661351e565b6000806040838503121561390d57600080fd5b82516001600160401b038082111561392457600080fd5b6139308683870161356b565b9350602085015191508082111561394657600080fd5b506139538582860161356b565b9150509250929050565b80820180821115610632576106326138b7565b60008a51613982818460208f01612d56565b8a5190830190613996818360208f01612d56565b8a519101906139a9818360208e01612d56565b0187898237600090880190815286516139c6818360208b01612d56565b0184868237600090850190815283516139e3818360208801612d56565b019b9a5050505050505050505050565b60008251613a05818460208701612d56565b9190910192915050565b60008751613a21818460208c01612d56565b875190830190613a35818360208c01612d56565b8751910190613a48818360208b01612d56565b018486823760009085019081528351613a65818360208801612d56565b0198975050505050505050565b60008451613a84818460208901612d56565b845190830190613a98818360208901612d56565b8451910190613aab818360208801612d56565b0195945050505050565b6040808252810183905260006001600160fb1b03841115613ad557600080fd5b8360051b808660608501376020830193909352500160600192915050565b600082601f830112613b0457600080fd5b81516020613b1461347883613420565b82815260059290921b84018101918181019086841115613b3357600080fd5b8286015b84811015611d7e5780516001600160401b03811115613b565760008081fd5b613b648986838b010161356b565b845250918301918301613b37565b60008060408385031215613b8557600080fd5b82516001600160401b0380821115613b9c57600080fd5b613ba886838701613af3565b93506020850151915080821115613bbe57600080fd5b5061395385828601613af3565b604081526000613bde6040830185612da6565b90508260208301529392505050565b600060208284031215613bff57600080fd5b81516001600160401b03811115613c1557600080fd5b6114e884828501613af3565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60408152600061355b6040830185876135e456fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a","storage":{}},"0xc2110388dd54228ae0a834119457ede938bf0b57":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061021e5760003560e01c80638da5cb5b11610123578063acf1a841116100ab578063d547741f1161006f578063d547741f14610682578063f14fcbc8146106a2578063f23a6e61146106c2578063f2fde38b146106e2578063ffa1ad741461070257600080fd5b8063acf1a841146105e0578063bc197c8114610600578063c0c53b8b14610620578063cf01585314610640578063d53913931461066057600080fd5b8063a0e3aef1116100f2578063a0e3aef114610534578063a217fddf14610554578063a3f4df7e14610569578063a4247400146105a0578063aa271e1a146105c057600080fd5b80638da5cb5b146104c157806391d14854146104df578063983b2d56146104ff578063986502751461051f57600080fd5b80635fc1964f116101a65780636ccbae5f116101755780636ccbae5f14610439578063715018a61461045957806371e2a6571461046e57806381c81d351461048e57806383e7f6ff146104a157600080fd5b80635fc1964f146103ae578063634486da146103ce5780636352211e146103e15780636a8be89e1461041957600080fd5b80632f2ff15d116101ed5780632f2ff15d146103035780633092afd51461032557806336568abe14610345578063423f6cef14610365578063572b6c051461038557600080fd5b806301ffc9a71461022a578063150b7a021461025f5780631bf7e13e14610298578063248a9ca3146102c557600080fd5b3661022557005b600080fd5b34801561023657600080fd5b5061024a6102453660046125f2565b610733565b60405190151581526020015b60405180910390f35b34801561026b57600080fd5b5061027f61027a366004612672565b610779565b6040516001600160e01b03199091168152602001610256565b3480156102a457600080fd5b506102b86102b33660046126e4565b6108cb565b60405161025691906127a4565b3480156102d157600080fd5b506102f56102e03660046127b7565b600090815260fb602052604090206001015490565b604051908152602001610256565b34801561030f57600080fd5b5061032361031e3660046127d0565b610997565b005b34801561033157600080fd5b50610323610340366004612800565b6109c1565b34801561035157600080fd5b506103236103603660046127d0565b6109d5565b34801561037157600080fd5b5061032361038036600461281d565b610a68565b34801561039157600080fd5b5061024a6103a0366004612800565b6001600160a01b0316301490565b3480156103ba57600080fd5b506103236103c936600461288f565b610bd9565b6103236103dc366004612800565b610c21565b3480156103ed57600080fd5b506104016103fc3660046127b7565b610ce4565b6040516001600160a01b039091168152602001610256565b34801561042557600080fd5b50610323610434366004612800565b610cef565b34801561044557600080fd5b506102f56104543660046127b7565b610d38565b34801561046557600080fd5b50610323610d7e565b34801561047a57600080fd5b5061032361048936600461288f565b610d92565b61032361049c366004612800565b610dda565b3480156104ad57600080fd5b506102f56104bc366004612934565b610e57565b3480156104cd57600080fd5b506097546001600160a01b0316610401565b3480156104eb57600080fd5b5061024a6104fa3660046127d0565b610efa565b34801561050b57600080fd5b5061032361051a366004612800565b610f25565b34801561052b57600080fd5b50610323610f36565b34801561054057600080fd5b506102f561054f366004612a5c565b610f50565b34801561056057600080fd5b506102f5600081565b34801561057557600080fd5b506102b86040518060400160405280600b81526020016a454e5320437573746f647960a81b81525081565b3480156105ac57600080fd5b5061024a6105bb3660046126e4565b610ffc565b3480156105cc57600080fd5b5061024a6105db366004612800565b61104f565b3480156105ec57600080fd5b506103236105fb366004612934565b611069565b34801561060c57600080fd5b5061027f61061b366004612b35565b611222565b34801561062c57600080fd5b5061032361063b366004612bf3565b6112db565b34801561064c57600080fd5b5061032361065b366004612c3e565b611485565b34801561066c57600080fd5b506102f56000805160206133f583398151915281565b34801561068e57600080fd5b5061032361069d3660046127d0565b611592565b3480156106ae57600080fd5b506103236106bd3660046127b7565b6115b7565b3480156106ce57600080fd5b5061027f6106dd366004612d20565b61162b565b3480156106ee57600080fd5b506103236106fd366004612800565b6116bc565b34801561070e57600080fd5b506102b860405180604001604052806005815260200164302e312e3360d81b81525081565b60006001600160e01b03198216630a85bd0160e11b148061076457506001600160e01b03198216630271189760e51b145b806107735750610773826116d8565b92915050565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004546000906001600160a01b0316806107b061170d565b6001600160a01b0316036108a957600080806107ce86880188612d9b565b9250925092506107dd8361171c565b6001600160a01b03841663b88d4fde30600080516020613415833981519152546040516001600160a01b03909116908c9061082390879030906000908b90602001612dfc565b6040516020818303038152906040526040518563ffffffff1660e01b81526004016108519493929190612e3c565b600060405180830381600087803b15801561086b57600080fd5b505af115801561087f573d6000803e3d6000fd5b5050505061089561088f8261174e565b846117d3565b50630a85bd0160e11b93506108c292505050565b6040516344e7d94960e01b815260040160405180910390fd5b95945050505050565b606060005a90506108dd858585610ffc565b6108fa57604051638baa579f60e01b815260040160405180910390fd5b61098c61090a6020870187612800565b3060408801358461091e60608b018b612e6f565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061185e92505050565b9150505b9392505050565b600082815260fb60205260409020600101546109b28161193f565b6109bc8383611950565b505050565b6109c96119d7565b6109d281611a50565b50565b6109dd61170d565b6001600160a01b0316816001600160a01b031614610a5a5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b610a648282611a68565b5050565b80610a7161170d565b6001600160a01b0316610a8382611aed565b6001600160a01b031614610ac55780610a9a61170d565b604051637ea58b1160e01b815260048101929092526001600160a01b03166024820152604401610a51565b610ace82611c03565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052600090610b22906060015b6040516020818303038152906040528051906020012090565b80546001600160a01b0319166001600160a01b0392909216919091179055600060008051602061341583398151915254604051637921219560e11b81523060048201526001600160a01b038681166024830152604482018690526001606483015260a06084830152600060a48301529091169150819063f242432a9060c401600060405180830381600087803b158015610bbb57600080fd5b505af1158015610bcf573d6000803e3d6000fd5b5050505050505050565b610be16119d7565b60005b8151811015610a6457610c0f828281518110610c0257610c02612eb5565b6020026020010151611a50565b80610c1981612ee1565b915050610be4565b610c2c6105db61170d565b610c485760405162461bcd60e51b8152600401610a5190612efa565b6001600160a01b038116610c9e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a51565b610ca781611c1c565b610caf610f36565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610a64573d6000803e3d6000fd5b600061077382611aed565b610cf76119d7565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c500480546001600160a01b0319166001600160a01b0392909216919091179055565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a838156020820152908101829052600090610d7790606001610b09565b5492915050565b610d866119d7565b610d906000611c34565b565b610d9a6119d7565b60005b8151811015610a6457610dc8828281518110610dbb57610dbb612eb5565b6020026020010151611c1c565b80610dd281612ee1565b915050610d9d565b610de56105db61170d565b610e015760405162461bcd60e51b8152600401610a5190612efa565b6001600160a01b038116610ca75760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a51565b6000805160206133d5833981519152546040516383e7f6ff60e01b81526000916001600160a01b031690829082906383e7f6ff90610e9d90899089908990600401612f58565b6040805180830381865afa158015610eb9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610edd9190612f7c565b60208101518151919250610ef091612fca565b9695505050505050565b600091825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610f2d6119d7565b6109d281611c1c565b610d906000805160206133f583398151915261036061170d565b6000805160206133d5833981519152546000906001600160a01b0316806365a69dcf8d85610f7e5730610f80565b8d5b8d8d8d8d8d8d8d6040518a63ffffffff1660e01b8152600401610fab9998979695949392919061306e565b602060405180830381865afa158015610fc8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fec91906130de565b9c9b505050505050505050505050565b600061104761100a856130f7565b3085858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611c8692505050565b949350505050565b60006107736000805160206133f583398151915283610efa565b6110746105db61170d565b6110905760405162461bcd60e51b8152600401610a5190612efa565b6002603354036110e25760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a51565b60026033556000805160206133d5833981519152546040516383e7f6ff60e01b81526001600160a01b039091169060009082906383e7f6ff9061112d90889088908890600401612f58565b6040805180830381865afa158015611149573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061116d9190612f7c565b6020810151815191925061118091612fca565b4710156111a05760405163050205f960e01b815260040160405180910390fd5b816001600160a01b031663acf1a841826020015183600001516111c39190612fca565b8787876040518563ffffffff1660e01b81526004016111e493929190612f58565b6000604051808303818588803b1580156111fd57600080fd5b505af1158015611211573d6000803e3d6000fd5b505060016033555050505050505050565b6000600080516020613415833981519152546001600160a01b031661124561170d565b6001600160a01b03161461126c576040516344e7d94960e01b815260040160405180910390fd5b600061127a83850185612800565b90506112858161171c565b60005b878110156112c4576112b28989838181106112a5576112a5612eb5565b90506020020135836117d3565b806112bc81612ee1565b915050611288565b5063bc197c8160e01b9a9950505050505050505050565b600054610100900460ff16158080156112fb5750600054600160ff909116105b806113155750303b158015611315575060005460ff166001145b6113785760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610a51565b6000805460ff19166001179055801561139b576000805461ff0019166101001790555b6000805160206133d583398151915280546001600160a01b038087166001600160a01b03199283161790925560008051602061341583398151915280548684169083161790557ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004805492851692909116919091179055611419611dc5565b611421611df3565b611429611df3565b611431611e1a565b611439611e51565b801561147f576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6114906105db61170d565b6114ac5760405162461bcd60e51b8152600401610a5190612efa565b6002603354036114fe5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a51565b600260338190555060006115478c8c8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061174e92505050565b905061155281611c03565b6115708c8c846115625730611564565b8c5b8c8c8c8c8c8c8c611e8a565b8161157f5761157f818b6117d3565b5050600160335550505050505050505050565b600082815260fb60205260409020600101546115ad8161193f565b6109bc8383611a68565b60006000805160206133d583398151915254604051631e29f97960e31b8152600481018490526001600160a01b039091169150819063f14fcbc890602401600060405180830381600087803b15801561160f57600080fd5b505af1158015611623573d6000803e3d6000fd5b505050505050565b6000600080516020613415833981519152546001600160a01b031661164e61170d565b6001600160a01b031614611675576040516344e7d94960e01b815260040160405180910390fd5b6001600160a01b038616156116a957600061169283850185612800565b905061169d8161171c565b6116a786826117d3565b505b5063f23a6e6160e01b9695505050505050565b6116c46119d7565b6116cd81611fd5565b6109d260008261204b565b60006001600160e01b03198216637965db0b60e01b148061077357506301ffc9a760e01b6001600160e01b0319831614610773565b6000611717612055565b905090565b6001600160a01b0381166109d25760405163b20f76e360e01b81526001600160a01b0382166004820152602401610a51565b60007f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae60001b826040516020016117859190613195565b604051602081830303815290604052805190602001206040516020016117b5929190918252602082015260400190565b60408051601f19818403018152919052805160209091012092915050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052819061181190606001610b09565b80546001600160a01b0319166001600160a01b039283161790556040519082169083907f45aa97e368889fb3527c1db60c59c2ae91e82f21778613449e46d4208c1c4b1290600090a35050565b606061186985612073565b600080876001600160a01b0316866118838b8a89896120d9565b6040516118909190613195565b60006040518083038160008787f1925050503d80600081146118ce576040519150601f19603f3d011682016040523d82523d6000602084013e6118d3565b606091505b5090925090506118e4603f876131b1565b5a116118f2576118f26131d3565b61193282826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c4544000000000000815250612109565b9998505050505050505050565b6109d28161194b61170d565b612142565b61195a8282610efa565b610a6457600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff1916600117905561199361170d565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6119df61170d565b6001600160a01b03166119fa6097546001600160a01b031690565b6001600160a01b031614610d905760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a51565b6109d26000805160206133f583398151915282611592565b611a728282610efa565b15610a6457600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff19169055611aa961170d565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101829052600090611b2c90606001610b09565b546001600160a01b0316905080611b595760405163124bad6360e31b815260048101839052602401610a51565b30600080516020613415833981519152546040516331a9108f60e11b8152600481018590526001600160a01b0390911690636352211e90602401602060405180830381865afa158015611bb0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bd491906131e9565b6001600160a01b031614611bfe576040516303b673fd60e21b815260048101839052602401610a51565b919050565b303303611c13576109d2816121a6565b6109d281612073565b6109d26000805160206133f58339815191528261204b565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015611ccd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cf191906130de565b90506000611d9f866060015180519060200120868860200151604051602001611d3f9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b9050818660200151148015610ef057508551610ef0906001600160a01b031682866121d0565b600054610100900460ff16611dec5760405162461bcd60e51b8152600401610a5190613206565b6001603355565b600054610100900460ff16610d905760405162461bcd60e51b8152600401610a5190613206565b600054610100900460ff16611e415760405162461bcd60e51b8152600401610a5190613206565b610d90611e4c61170d565b611c34565b600054610100900460ff16611e785760405162461bcd60e51b8152600401610a5190613206565b610d906000611e8561170d565b61204b565b6000805160206133d5833981519152546040516383e7f6ff60e01b81526001600160a01b039091169060009082906383e7f6ff90611ed0908f908f908e90600401612f58565b6040805180830381865afa158015611eec573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f109190612f7c565b60208101518151919250611f2391612fca565b471015611f435760405163050205f960e01b815260040160405180910390fd5b816001600160a01b03166374694a2b82602001518360000151611f669190612fca565b8e8e8e8e8e8e8e8e8e8e6040518c63ffffffff1660e01b8152600401611f959a99989796959493929190613251565b6000604051808303818588803b158015611fae57600080fd5b505af1158015611fc2573d6000803e3d6000fd5b5050505050505050505050505050505050565b611fdd6119d7565b6001600160a01b0381166120425760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610a51565b6109d281611c34565b610a648282611950565b600030330361206b575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290526000906060016040516020818303038152906040528051906020012090506120c88190565b546120d4906001612fca565b905550565b60608285856040516020016120f0939291906132c3565b6040516020818303038152906040529050949350505050565b60608315612118575081610990565b8251156121285782518084602001fd5b8160405162461bcd60e51b8152600401610a5191906127a4565b61214c8282610efa565b610a6457612164816001600160a01b03166014612312565b61216f836020612312565b604051602001612180929190613302565b60408051601f198184030181529082905262461bcd60e51b8252610a51916004016127a4565b6121ae6124ad565b81146109d257604051635637b6af60e11b815260048101829052602401610a51565b60008060006121df85856124c0565b909250905060008160048111156121f8576121f8613377565b1480156122165750856001600160a01b0316826001600160a01b0316145b1561222657600192505050610990565b600080876001600160a01b0316631626ba7e60e01b888860405160240161224e92919061338d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161228c9190613195565b600060405180830381855afa9150503d80600081146122c7576040519150601f19603f3d011682016040523d82523d6000602084013e6122cc565b606091505b50915091508180156122df575080516020145b801561230657508051630b135d3f60e11b9061230490830160209081019084016130de565b145b98975050505050505050565b606060006123218360026133a6565b61232c906002612fca565b6001600160401b0381111561234357612343612849565b6040519080825280601f01601f19166020018201604052801561236d576020820181803683370190505b509050600360fc1b8160008151811061238857612388612eb5565b60200101906001600160f81b031916908160001a905350600f60fb1b816001815181106123b7576123b7612eb5565b60200101906001600160f81b031916908160001a90535060006123db8460026133a6565b6123e6906001612fca565b90505b600181111561245e576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061241a5761241a612eb5565b1a60f81b82828151811061243057612430612eb5565b60200101906001600160f81b031916908160001a90535060049490941c93612457816133bd565b90506123e9565b5083156109905760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610a51565b60003033036120705750601f1936013590565b60008082516041036124f65760208301516040840151606085015160001a6124ea87828585612505565b945094505050506124fe565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561253c57506000905060036125e9565b8460ff16601b1415801561255457508460ff16601c14155b1561256557506000905060046125e9565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156125b9573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166125e2576000600192509250506125e9565b9150600090505b94509492505050565b60006020828403121561260457600080fd5b81356001600160e01b03198116811461099057600080fd5b6001600160a01b03811681146109d257600080fd5b60008083601f84011261264357600080fd5b5081356001600160401b0381111561265a57600080fd5b6020830191508360208285010111156124fe57600080fd5b60008060008060006080868803121561268a57600080fd5b85356126958161261c565b945060208601356126a58161261c565b93506040860135925060608601356001600160401b038111156126c757600080fd5b6126d388828901612631565b969995985093965092949392505050565b6000806000604084860312156126f957600080fd5b83356001600160401b038082111561271057600080fd5b908501906080828803121561272457600080fd5b9093506020850135908082111561273a57600080fd5b5061274786828701612631565b9497909650939450505050565b60005b8381101561276f578181015183820152602001612757565b50506000910152565b60008151808452612790816020860160208601612754565b601f01601f19169290920160200192915050565b6020815260006109906020830184612778565b6000602082840312156127c957600080fd5b5035919050565b600080604083850312156127e357600080fd5b8235915060208301356127f58161261c565b809150509250929050565b60006020828403121561281257600080fd5b81356109908161261c565b6000806040838503121561283057600080fd5b823561283b8161261c565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561288757612887612849565b604052919050565b600060208083850312156128a257600080fd5b82356001600160401b03808211156128b957600080fd5b818501915085601f8301126128cd57600080fd5b8135818111156128df576128df612849565b8060051b91506128f084830161285f565b818152918301840191848101908884111561290a57600080fd5b938501935b8385101561230657843592506129248361261c565b828252938501939085019061290f565b60008060006040848603121561294957600080fd5b83356001600160401b0381111561295f57600080fd5b61296b86828701612631565b909790965060209590950135949350505050565b60006001600160401b0383111561299857612998612849565b6129ab601f8401601f191660200161285f565b90508281528383830111156129bf57600080fd5b828260208301376000602084830101529392505050565b600082601f8301126129e757600080fd5b6109908383356020850161297f565b60008083601f840112612a0857600080fd5b5081356001600160401b03811115612a1f57600080fd5b6020830191508360208260051b85010111156124fe57600080fd5b80358015158114611bfe57600080fd5b803561ffff81168114611bfe57600080fd5b6000806000806000806000806000806101208b8d031215612a7c57600080fd5b8a356001600160401b0380821115612a9357600080fd5b612a9f8e838f016129d6565b9b5060208d01359150612ab18261261c565b90995060408c0135985060608c0135975060808c013590612ad18261261c565b90965060a08c01359080821115612ae757600080fd5b50612af48d828e016129f6565b9096509450612b07905060c08c01612a3a565b9250612b1560e08c01612a4a565b9150612b246101008c01612a3a565b90509295989b9194979a5092959850565b60008060008060008060008060a0898b031215612b5157600080fd5b8835612b5c8161261c565b97506020890135612b6c8161261c565b965060408901356001600160401b0380821115612b8857600080fd5b612b948c838d016129f6565b909850965060608b0135915080821115612bad57600080fd5b612bb98c838d016129f6565b909650945060808b0135915080821115612bd257600080fd5b50612bdf8b828c01612631565b999c989b5096995094979396929594505050565b600080600060608486031215612c0857600080fd5b8335612c138161261c565b92506020840135612c238161261c565b91506040840135612c338161261c565b809150509250925092565b60008060008060008060008060008060006101208c8e031215612c6057600080fd5b6001600160401b03808d351115612c7657600080fd5b612c838e8e358f01612631565b909c509a50612c9560208e013561261c565b60208d0135995060408d0135985060608d01359750612cb760808e013561261c565b60808d013596508060a08e01351115612ccf57600080fd5b50612ce08d60a08e01358e016129f6565b9095509350612cf160c08d01612a3a565b9250612cff60e08d01612a4a565b9150612d0e6101008d01612a3a565b90509295989b509295989b9093969950565b60008060008060008060a08789031215612d3957600080fd5b8635612d448161261c565b95506020870135612d548161261c565b9450604087013593506060870135925060808701356001600160401b03811115612d7d57600080fd5b612d8989828a01612631565b979a9699509497509295939492505050565b600080600060608486031215612db057600080fd5b8335612dbb8161261c565b92506020840135612dcb8161261c565b915060408401356001600160401b03811115612de657600080fd5b612df2868287016129d6565b9150509250925092565b608081526000612e0f6080830187612778565b6001600160a01b03958616602084015261ffff949094166040830152509216606090920191909152919050565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090610ef090830184612778565b6000808335601e19843603018112612e8657600080fd5b8301803591506001600160401b03821115612ea057600080fd5b6020019150368190038213156124fe57600080fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201612ef357612ef3612ecb565b5060010190565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b604081526000612f6c604083018587612f2f565b9050826020830152949350505050565b600060408284031215612f8e57600080fd5b604051604081018181106001600160401b0382111715612fb057612fb0612849565b604052825181526020928301519281019290925250919050565b8082018082111561077357610773612ecb565b81835260006020808501808196508560051b810191508460005b878110156130615782840389528135601e1988360301811261301857600080fd5b870185810190356001600160401b0381111561303357600080fd5b80360382131561304257600080fd5b61304d868284612f2f565b9a87019a9550505090840190600101612ff7565b5091979650505050505050565b60006101008083526130828184018d612778565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a085015290506130bc818789612fdd565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b6000602082840312156130f057600080fd5b5051919050565b60006080823603121561310957600080fd5b604051608081016001600160401b03828210818311171561312c5761312c612849565b816040528435915061313d8261261c565b8183526020850135602084015260408501356040840152606085013591508082111561316857600080fd5b50830136601f82011261317a57600080fd5b6131893682356020840161297f565b60608301525092915050565b600082516131a7818460208701612754565b9190910192915050565b6000826131ce57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b6000602082840312156131fb57600080fd5b81516109908161261c565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60006101008083526132668184018d8f612f2f565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a085015290506132a0818789612fdd565b94151560c0840152505061ffff9190911660e09091015298975050505050505050565b600084516132d5818460208901612754565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081526000835161333a816017850160208801612754565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835161336b816028840160208801612754565b01602801949350505050565b634e487b7160e01b600052602160045260246000fd5b8281526040602082015260006110476040830184612778565b808202811582820484141761077357610773612ecb565b6000816133cc576133cc612ecb565b50600019019056fe412386de53449251cbf7ce1f4c6a038bf9c0746e62d331b08ef0c3fa7d0ab6729f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a660793a5062d506d35cc8f1beda67ee5028c16bfcd9c923d5bfc439c04bd929b1a164736f6c6343000811000a","storage":{"0x0":"0xff"}},"0xc58206842e4030a3b2cabc78780ae7635173c533":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106102325760003560e01c80637c69eae211610130578063b5466669116100b8578063d284d97a1161007c578063d284d97a14610d4e578063d8d3cc6e14610dbc578063e67ca8a314610e3f578063e985e9c514610e5c578063ebf0c71714610e8a57610232565b8063b5466669146109ce578063b88d4fde14610a51578063c29b52f914610b15578063c87b56dd14610c5e578063ce9fb82b14610c7b57610232565b8063a22cb465116100ff578063a22cb4651461090b578063a7fc7a0714610939578063ab3b87fe1461095f578063b3f9e4cb1461098b578063b429afeb146109a857610232565b80637c69eae21461076457806395d89b41146107e75780639d743989146107ef5780639e5be9a51461087d57610232565b806342842e0e116101be5780635cbe1112116101825780635cbe11121461061d5780636352211e1461069257806366ac3b68146106af57806368b62d32146106b757806370a082311461073e57610232565b806342842e0e146104ed57806342966c6814610523578063430c208114610540578063538361a71461056c57806357aac5741461058f57610232565b8063081812fc11610205578063081812fc146103fa578063095ea7b3146104335780632392c1891461045f57806323b872dd1461048b5780632525d06a146104c157610232565b806301ffc9a71461023757806302759c37146102725780630467e014146102aa57806306fdde031461037d575b600080fd5b61025e6004803603602081101561024d57600080fd5b50356001600160e01b031916610e92565b604080519115158252519081900360200190f35b6102a86004803603606081101561028857600080fd5b506001600160a01b03813581169160208101359091169060400135610eb1565b005b6102a8600480360360808110156102c057600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156102ef57600080fd5b82018360208201111561030157600080fd5b803590602001918460018302840111600160201b8311171561032257600080fd5b919390929091602081019035600160201b81111561033f57600080fd5b82018360208201111561035157600080fd5b803590602001918460018302840111600160201b8311171561037257600080fd5b509092509050610ed3565b610385610f62565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103bf5781810151838201526020016103a7565b50505050905090810190601f1680156103ec5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6104176004803603602081101561041057600080fd5b5035610f84565b604080516001600160a01b039092168252519081900360200190f35b6102a86004803603604081101561044957600080fd5b506001600160a01b038135169060200135610fe6565b6102a86004803603604081101561047557600080fd5b506001600160a01b0381351690602001356110f7565b6102a8600480360360608110156104a157600080fd5b506001600160a01b03813581169160208101359091169060400135611115565b6102a8600480360360408110156104d757600080fd5b506001600160a01b03813516906020013561115a565b6102a86004803603606081101561050357600080fd5b506001600160a01b0381358116916020810135909116906040013561117a565b6102a86004803603602081101561053957600080fd5b5035611195565b61025e6004803603604081101561055657600080fd5b506001600160a01b0381351690602001356111e6565b6102a86004803603604081101561058257600080fd5b50803590602001356111f9565b6102a8600480360360808110156105a557600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156105df57600080fd5b8201836020820111156105f157600080fd5b803590602001918460018302840111600160201b8311171561061257600080fd5b50909250905061124f565b6102a86004803603604081101561063357600080fd5b81359190810190604081016020820135600160201b81111561065457600080fd5b82018360208201111561066657600080fd5b803590602001918460018302840111600160201b8311171561068757600080fd5b5090925090506112be565b610417600480360360208110156106a857600080fd5b5035611320565b6102a861137a565b61072c600480360360408110156106cd57600080fd5b81359190810190604081016020820135600160201b8111156106ee57600080fd5b82018360208201111561070057600080fd5b803590602001918460018302840111600160201b8311171561072157600080fd5b509092509050611385565b60408051918252519081900360200190f35b61072c6004803603602081101561075457600080fd5b50356001600160a01b03166113cf565b6102a86004803603606081101561077a57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156107a957600080fd5b8201836020820111156107bb57600080fd5b803590602001918460018302840111600160201b831117156107dc57600080fd5b509092509050611437565b61038561149a565b6102a86004803603608081101561080557600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561083f57600080fd5b82018360208201111561085157600080fd5b803590602001918460018302840111600160201b8311171561087257600080fd5b5090925090506114b6565b6102a86004803603608081101561089357600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156108cd57600080fd5b8201836020820111156108df57600080fd5b803590602001918460018302840111600160201b8311171561090057600080fd5b509092509050611506565b6102a86004803603604081101561092157600080fd5b506001600160a01b0381351690602001351515611564565b6102a86004803603602081101561094f57600080fd5b50356001600160a01b0316611630565b6102a86004803603604081101561097557600080fd5b506001600160a01b03813516906020013561164b565b610417600480360360208110156109a157600080fd5b5035611672565b61025e600480360360208110156109be57600080fd5b50356001600160a01b0316611694565b6102a8600480360360608110156109e457600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610a1357600080fd5b820183602082011115610a2557600080fd5b803590602001918460018302840111600160201b83111715610a4657600080fd5b5090925090506116a7565b6102a860048036036080811015610a6757600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b811115610aa157600080fd5b820183602082011115610ab357600080fd5b803590602001918460018302840111600160201b83111715610ad457600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506116fa945050505050565b6102a8600480360360a0811015610b2b57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b811115610b6557600080fd5b820183602082011115610b7757600080fd5b803590602001918460018302840111600160201b83111715610b9857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b811115610bea57600080fd5b820183602082011115610bfc57600080fd5b803590602001918460018302840111600160201b83111715610c1d57600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061174c945050505050565b61038560048036036020811015610c7457600080fd5b5035611797565b6102a860048036036080811015610c9157600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610cc057600080fd5b820183602082011115610cd257600080fd5b803590602001918460018302840111600160201b83111715610cf357600080fd5b919390929091602081019035600160201b811115610d1057600080fd5b820183602082011115610d2257600080fd5b803590602001918460018302840111600160201b83111715610d4357600080fd5b509092509050611892565b6102a860048036036020811015610d6457600080fd5b810190602081018135600160201b811115610d7e57600080fd5b820183602082011115610d9057600080fd5b803590602001918460018302840111600160201b83111715610db157600080fd5b50909250905061191b565b6102a860048036036060811015610dd257600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610e0157600080fd5b820183602082011115610e1357600080fd5b803590602001918460018302840111600160201b83111715610e3457600080fd5b50909250905061199e565b6102a860048036036020811015610e5557600080fd5b50356119f3565b61025e60048036036040811015610e7257600080fd5b506001600160a01b0381358116916020013516611a05565b61072c611a33565b6001600160e01b03191660009081526020819052604090205460ff1690565b610eba33611694565b610ec357600080fd5b610ece838383611a57565b505050565b610edc33611694565b610ee557600080fd5b610f5a868686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8a018190048102820181019092528881529250889150879081908401838280828437600092019190915250611a9f92505050565b505050505050565b6040805180820190915260078152662e63727970746f60c81b60208201525b90565b6000610f8f82611ac9565b610fca5760405162461bcd60e51b815260040180806020018281038252602c815260200180612848602c913960400191505060405180910390fd5b506000908152600360205260409020546001600160a01b031690565b6000610ff182611320565b9050806001600160a01b0316836001600160a01b031614156110445760405162461bcd60e51b81526004018080602001828103825260218152602001806128bf6021913960400191505060405180910390fd5b336001600160a01b038216148061106057506110608133611a05565b61109b5760405162461bcd60e51b815260040180806020018281038252603881526020018061279c6038913960400191505060405180910390fd5b60008281526003602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b806111023382611ae6565b61110b57600080fd5b610ece8383611b82565b61111f3382611ae6565b610ec35760405162461bcd60e51b81526004018080602001828103825260318152602001806128e06031913960400191505060405180910390fd5b61116333611694565b61116c57600080fd5b6111768282611b82565b5050565b610ece838383604051806020016040528060008152506116fa565b61119f3382611ae6565b6111da5760405162461bcd60e51b81526004018080602001828103825260308152602001806129366030913960400191505060405180910390fd5b6111e381611bf8565b50565b60006111f28383611ae6565b9392505050565b6000828152600860205260409020546001600160a01b0316331461121c57600080fd5b6040518290829033907ff10fc780c78f994a214c79a2ae8d8b7bfe7cc3f0f935a8f05a29525e71d7f12790600090a45050565b61125833611694565b61126157600080fd5b61126c858585611a57565b6112ae85858585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611c7992505050565b6112b757600080fd5b5050505050565b826112c93382611ae6565b6112d257600080fd5b61131a6113158585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b611bf8565b50505050565b6000818152600260205260408120546001600160a01b0316806113745760405162461bcd60e51b81526004018080602001828103825260298152602001806127fe6029913960400191505060405180910390fd5b92915050565b61138333611e64565b565b60006113c78484848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b949350505050565b60006001600160a01b0382166114165760405162461bcd60e51b815260040180806020018281038252602a8152602001806127d4602a913960400191505060405180910390fd5b6001600160a01b038216600090815260046020526040902061137490611e75565b826114423382611ae6565b61144b57600080fd5b6112b7858585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250611a9f915050565b604080518082019091526002815261155160f21b602082015290565b6112b785858585858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201829052506040805160208101909152908152925061174c915050565b826115113382611ae6565b61151a57600080fd5b610f5a868661155f8787878080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b611a57565b6001600160a01b0382163314156115c2576040805162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604482015290519081900360640190fd5b3360008181526005602090815260408083206001600160a01b03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b61163933611694565b61164257600080fd5b6111e381611e79565b806116563382611ae6565b61165f57600080fd5b610ece61166b83611320565b8484611e8a565b6000818152600860205260408120546001600160a01b03168061137457600080fd5b600061137460018363ffffffff611fce16565b6116b033611694565b6116b957600080fd5b61131a848484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061203592505050565b611705848484611115565b61171184848484611c79565b61131a5760405162461bcd60e51b815260040180806020018281038252603281526020018061271a6032913960400191505060405180910390fd5b826117573382611ae6565b61176057600080fd5b600061176c8585611dac565b9050611779878783611a57565b61178587878386611c79565b61178e57600080fd5b50505050505050565b60606117a282611ac9565b6117ab57600080fd5b600760066000848152602001908152602001600020604051602001808380546001816001161561010002031660029004801561181e5780601f106117fc57610100808354040283529182019161181e565b820191906000526020600020905b81548152906001019060200180831161180a575b5050828054600181600116156101000203166002900480156118775780601f10611855576101008083540402835291820191611877565b820191906000526020600020905b815481529060010190602001808311611863575b505060408051601f1981840301815291905295945050505050565b8461189d3382611ae6565b6118a657600080fd5b61178e878787878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b018190048102820181019092528981529250899150889081908401838280828437600092019190915250611a9f92505050565b61192433611694565b61192d57600080fd5b611939600783836125cf565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b828260405180806020018281038252848482818152602001925080828437600083820152604051601f909101601f19169092018290039550909350505050a15050565b826119a93382611ae6565b6119b257600080fd5b6112b7858585858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061203592505050565b6119fc33611694565b6111da57600080fd5b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b7f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f90565b611a62838383611e8a565b6000818152600860205260409020546001600160a01b031615610ece57600090815260086020526040902080546001600160a01b03191690555050565b611aaa848484612035565b611ac0600085611aba8686611dac565b84611c79565b61131a57600080fd5b6000908152600260205260409020546001600160a01b0316151590565b6000611af182611ac9565b611b2c5760405162461bcd60e51b815260040180806020018281038252602c815260200180612770602c913960400191505060405180910390fd5b6000611b3783611320565b9050806001600160a01b0316846001600160a01b03161480611b725750836001600160a01b0316611b6784610f84565b6001600160a01b0316145b806113c757506113c78185611a05565b611b8b81611ac9565b611b9457600080fd5b6040516001600160a01b0383169082907fb1b34e6d89e1c584527d447f4b29ffad55635a37edeeb564939a6483401b31a590600090a3600090815260086020526040902080546001600160a01b0319166001600160a01b0392909216919091179055565b611c018161220f565b6000818152600860205260409020546001600160a01b031615611c3b57600081815260086020526040902080546001600160a01b03191690555b60008181526006602052604090205460026000196101006001841615020190911604156111e35760008181526006602052604081206111e39161264d565b6000611c8d846001600160a01b0316612221565b611c99575060016113c7565b604051630a85bd0160e11b815233600482018181526001600160a01b03888116602485015260448401879052608060648501908152865160848601528651600095928a169463150b7a029490938c938b938b939260a4019060208501908083838e5b83811015611d13578181015183820152602001611cfb565b50505050905090810190601f168015611d405780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015611d6257600080fd5b505af1158015611d76573d6000803e3d6000fd5b505050506040513d6020811015611d8c57600080fd5b50516001600160e01b031916630a85bd0160e11b14915050949350505050565b6000815160001415611dbd57600080fd5b82826040516020018082805190602001908083835b60208310611df15780518252601f199092019160209182019101611dd2565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040528051906020012060405160200180838152602001828152602001925050506040516020818303038152906040528051906020012060001c905092915050565b6111e360018263ffffffff61222716565b5490565b6111e360018263ffffffff61228e16565b826001600160a01b0316611e9d82611320565b6001600160a01b031614611ee25760405162461bcd60e51b81526004018080602001828103825260298152602001806128966029913960400191505060405180910390fd5b6001600160a01b038216611f275760405162461bcd60e51b815260040180806020018281038252602481526020018061274c6024913960400191505060405180910390fd5b611f308161230f565b6001600160a01b0383166000908152600460205260409020611f519061234a565b6001600160a01b0382166000908152600460205260409020611f7290612361565b60008181526002602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60006001600160a01b0382166120155760405162461bcd60e51b81526004018080602001828103825260228152602001806128746022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b60006120418383611dac565b905061204d848261236a565b815161205857600080fd5b61206181611ac9565b61206a57600080fd5b606082600660008681526020019081526020016000206040516020018083805190602001908083835b602083106120b25780518252601f199092019160209182019101612093565b6001836020036101000a03801982511681845116808217855250505050505090500180601760f91b815250600101828054600181600116156101000203166002900480156121375780601f10612115576101008083540402835291820191612137565b820191906000526020600020905b815481529060010190602001808311612123575b505060408051601f19818403018152918152600087815260066020908152919020825192965061216d9550935085019150612691565b50817fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952826040518080602001828103825283818151815260200191508051906020019080838360005b838110156121ce5781810151838201526020016121b6565b50505050905090810190601f1680156121fb5780820380516001836020036101000a031916815260200191505b509250505060405180910390a25050505050565b6111e361221b82611320565b8261249b565b3b151590565b6122318282611fce565b61226c5760405162461bcd60e51b81526004018080602001828103825260218152602001806128276021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff19169055565b6122988282611fce565b156122ea576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b6000818152600360205260409020546001600160a01b0316156111e357600090815260036020526040902080546001600160a01b0319169055565b805461235d90600163ffffffff61257216565b9055565b80546001019055565b6001600160a01b0382166123c5576040805162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f2061646472657373604482015290519081900360640190fd5b6123ce81611ac9565b15612420576040805162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000604482015290519081900360640190fd5b600081815260026020908152604080832080546001600160a01b0319166001600160a01b03871690811790915583526004909152902061245f90612361565b60405181906001600160a01b038416906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b816001600160a01b03166124ae82611320565b6001600160a01b0316146124f35760405162461bcd60e51b81526004018080602001828103825260258152602001806129116025913960400191505060405180910390fd5b6124fc8161230f565b6001600160a01b038216600090815260046020526040902061251d9061234a565b60008181526002602052604080822080546001600160a01b0319169055518291906001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6000828211156125c9576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106126105782800160ff1982351617855561263d565b8280016001018555821561263d579182015b8281111561263d578235825591602001919060010190612622565b506126499291506126ff565b5090565b50805460018160011615610100020316600290046000825580601f1061267357506111e3565b601f0160209004906000526020600020908101906111e391906126ff565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106126d257805160ff191683800117855561263d565b8280016001018555821561263d579182015b8281111561263d5782518255916020019190600101906126e4565b610f8191905b80821115612649576000815560010161270556fe4552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c654552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e526f6c65733a206163636f756e7420697320746865207a65726f20616464726573734552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f7665644552433732313a206275726e206f6620746f6b656e2074686174206973206e6f74206f776e4552433732314275726e61626c653a2063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564a265627a7a72315820fb6a1b26cc352dbb05e6627fd530bbb44114ac3a349f30d1f071136c656d20dc64736f6c634300050c0032","storage":{"0x7":"0x68747470733a2f2f6578616d706c652e636f6d2f000000000000000000000028","0xbdf39e9e65b2355b1b0b06df799c09159f0ab90f06a9bb2153f5de7d9b0ea81":"0x1","0x1a306d3e9bf29128dee78d8d16c9f378a11bbdf917a9caf986fc6e60846e37e7":"0x63727970746f000000000000000000000000000000000000000000000000000c","0x42c63635470f1fb1d6d4b6441c413cb435b1ebb6fedd1896dd5e25d1399147dd":"0x1","0x605d7a0bb2b20c4004d356eb969ff104dcca62360aa356247072f5e0df6472e3":"0xdead","0x67be87c3ff9960ca1e9cfac5cab2ff4747269cf9ed20c9b7306235ac35a491c5":"0x1","0x70f464f95f9ab7aba03264fd4cac1711d774d3703ce74217180264d4efc2105f":"0x1","0x76a72f26a108e6f3f687141f5f42d21d65857c03cb1b01aa1284f9a9ccd085da":"0x1","0x9562381dfbc2d8b8b66e765249f330164b73e329e5f01670660643571d1974df":"0x1","0x9f23d2403fb64167582d316b1bc5b35a6ed48524341ab24947c71df77304b29e":"0x1","0xf7815fccbf112960a73756e185887fedcb9fc64ca0a16cc5923b7960ed780800":"0x1"}},"0xc965345edac823d56812cd20a10316233916a605":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101c6575f3560e01c806395d89b41116100fe578063c87b56dd1161009e578063e985e9c51161006e578063e985e9c5146103d4578063f2fde38b1461040f578063f6a74ed714610422578063fca247ac14610435575f80fd5b8063c87b56dd14610377578063d6e4fa861461038a578063da8c229e146103a9578063ddf7fcb0146103cb575f80fd5b8063a7fc7a07116100d9578063a7fc7a0714610334578063b88d4fde14610347578063c1a287e21461035a578063c475abff14610364575f80fd5b806395d89b411461030657806396e494e81461030e578063a22cb46514610321575f80fd5b80633f15457f116101695780636352211e116101445780636352211e146102c757806370a08231146102da578063715018a6146102ed5780638da5cb5b146102f5575f80fd5b80633f15457f1461028e57806342842e0e146102a15780634e543b26146102b4575f80fd5b8063095ea7b3116101a4578063095ea7b3146102325780630e297b451461024757806323b872dd1461026857806328ed4f6c1461027b575f80fd5b806301ffc9a7146101ca57806306fdde03146101f2578063081812fc14610207575b5f80fd5b6101dd6101d83660046117dd565b610448565b60405190151581526020015b60405180910390f35b6101fa610499565b6040516101e99190611845565b61021a610215366004611857565b610528565b6040516001600160a01b0390911681526020016101e9565b610245610240366004611882565b61054d565b005b61025a6102553660046118ac565b610666565b6040519081526020016101e9565b6102456102763660046118e1565b61067b565b61024561028936600461190e565b6106ac565b60085461021a906001600160a01b031681565b6102456102af3660046118e1565b6107be565b6102456102c236600461193c565b6107d8565b61021a6102d5366004611857565b610848565b61025a6102e836600461193c565b610869565b6102456108ed565b6006546001600160a01b031661021a565b6101fa610900565b6101dd61031c366004611857565b61090f565b61024561032f366004611957565b610934565b61024561034236600461193c565b610943565b61024561035536600461199b565b610996565b61025a6276a70081565b61025a610372366004611a74565b6109ce565b6101fa610385366004611857565b610b52565b61025a610398366004611857565b5f9081526007602052604090205490565b6101dd6103b736600461193c565b600a6020525f908152604090205460ff1681565b61025a60095481565b6101dd6103e2366004611a94565b6001600160a01b039182165f90815260056020908152604080832093909416825291909152205460ff1690565b61024561041d36600461193c565b610bc2565b61024561043036600461193c565b610c3b565b61025a6104433660046118ac565b610c8b565b5f6001600160e01b031982166301ffc9a760e01b148061047857506001600160e01b031982166380ac58cd60e01b145b8061049357506001600160e01b03198216630a3b53db60e21b145b92915050565b60605f80546104a790611ac0565b80601f01602080910402602001604051908101604052809291908181526020018280546104d390611ac0565b801561051e5780601f106104f55761010080835404028352916020019161051e565b820191905f5260205f20905b81548152906001019060200180831161050157829003601f168201915b5050505050905090565b5f61053282610c99565b505f908152600460205260409020546001600160a01b031690565b5f61055782610cf7565b9050806001600160a01b0316836001600160a01b0316036105c95760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084015b60405180910390fd5b336001600160a01b03821614806105e557506105e581336103e2565b6106575760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016105c0565b6106618383610d56565b505050565b5f6106738484845f610dc3565b949350505050565b6106853382610fc7565b6106a15760405162461bcd60e51b81526004016105c090611af8565b610661838383611040565b6008546009546040516302571be360e01b8152600481019190915230916001600160a01b0316906302571be390602401602060405180830381865afa1580156106f7573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061071b9190611b45565b6001600160a01b03161461072d575f80fd5b6107373383610fc7565b61073f575f80fd5b6008546009546040516306ab592360e01b81526004810191909152602481018490526001600160a01b038381166044830152909116906306ab5923906064016020604051808303815f875af115801561079a573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106619190611b60565b61066183838360405180602001604052805f815250610996565b6107e06111a2565b600854600954604051630c4b7b8560e11b815260048101919091526001600160a01b03838116602483015290911690631896f70a906044015f604051808303815f87803b15801561082f575f80fd5b505af1158015610841573d5f803e3d5ffd5b5050505050565b5f818152600760205260408120544210610860575f80fd5b61049382610cf7565b5f6001600160a01b0382166108d25760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b60648201526084016105c0565b506001600160a01b03165f9081526003602052604090205490565b6108f56111a2565b6108fe5f6111fc565b565b6060600180546104a790611ac0565b5f81815260076020526040812054429061092d906276a70090611b77565b1092915050565b61093f33838361124d565b5050565b61094b6111a2565b6001600160a01b0381165f818152600a6020526040808220805460ff19166001179055517f0a8bb31534c0ed46f380cb867bd5c803a189ced9a764e30b3a4991a9901d74749190a250565b6109a03383610fc7565b6109bc5760405162461bcd60e51b81526004016105c090611af8565b6109c88484848461131a565b50505050565b6008546009546040516302571be360e01b815260048101919091525f9130916001600160a01b03909116906302571be390602401602060405180830381865afa158015610a1d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a419190611b45565b6001600160a01b031614610a53575f80fd5b335f908152600a602052604090205460ff16610a6d575f80fd5b5f838152600760205260409020544290610a8b906276a70090611b77565b1015610a95575f80fd5b610aa26276a70083611b77565b5f848152600760205260409020546276a70090610ac0908590611b77565b610aca9190611b77565b11610ad3575f80fd5b5f8381526007602052604081208054849290610af0908490611b77565b90915550505f838152600760205260409081902054905184917f9b87a00e30f1ac65d898f070f8a3488fe60517182d0a2098e1b4b93a54aa9bd691610b3791815260200190565b60405180910390a250505f9081526007602052604090205490565b6060610b5d82610c99565b5f610b7260408051602081019091525f815290565b90505f815111610b905760405180602001604052805f815250610bbb565b80610b9a8461134d565b604051602001610bab929190611b96565b6040516020818303038152906040525b9392505050565b610bca6111a2565b6001600160a01b038116610c2f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016105c0565b610c38816111fc565b50565b610c436111a2565b6001600160a01b0381165f818152600a6020526040808220805460ff19169055517f33d83959be2573f5453b12eb9d43b3499bc57d96bd2f067ba44803c859e811139190a250565b5f6106738484846001610dc3565b5f818152600260205260409020546001600160a01b0316610c385760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105c0565b5f818152600260205260408120546001600160a01b0316806104935760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105c0565b5f81815260046020526040902080546001600160a01b0319166001600160a01b0384169081179091558190610d8a82610cf7565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6008546009546040516302571be360e01b815260048101919091525f9130916001600160a01b03909116906302571be390602401602060405180830381865afa158015610e12573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e369190611b45565b6001600160a01b031614610e48575f80fd5b335f908152600a602052604090205460ff16610e62575f80fd5b610e6b8561090f565b610e73575f80fd5b610e806276a70042611b77565b6276a700610e8e8542611b77565b610e989190611b77565b11610ea1575f80fd5b610eab8342611b77565b5f868152600760209081526040808320939093556002905220546001600160a01b031615610edc57610edc856113dd565b610ee6848661146f565b8115610f6d576008546009546040516306ab592360e01b81526004810191909152602481018790526001600160a01b038681166044830152909116906306ab5923906064016020604051808303815f875af1158015610f47573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f6b9190611b60565b505b6001600160a01b038416857fb3d987963d01b2f68493b4bdb130988f157ea43070d4ad840fee0466ed9370d9610fa38642611b77565b60405190815260200160405180910390a3610fbe8342611b77565b95945050505050565b5f80610fd283610848565b9050806001600160a01b0316846001600160a01b0316148061100d5750836001600160a01b031661100284610528565b6001600160a01b0316145b8061067357506001600160a01b038082165f9081526005602090815260408083209388168352929052205460ff16610673565b826001600160a01b031661105382610cf7565b6001600160a01b0316146110795760405162461bcd60e51b81526004016105c090611bc4565b6001600160a01b0382166110db5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b60648201526084016105c0565b826001600160a01b03166110ee82610cf7565b6001600160a01b0316146111145760405162461bcd60e51b81526004016105c090611bc4565b5f81815260046020908152604080832080546001600160a01b03199081169091556001600160a01b038781168086526003855283862080545f1901905590871680865283862080546001019055868652600290945282852080549092168417909155905184937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6006546001600160a01b031633146108fe5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016105c0565b600680546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b816001600160a01b0316836001600160a01b0316036112ae5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c65720000000000000060448201526064016105c0565b6001600160a01b038381165f81815260056020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b611325848484611040565b611331848484846115f7565b6109c85760405162461bcd60e51b81526004016105c090611c09565b60605f611359836116f1565b60010190505f8167ffffffffffffffff81111561137857611378611987565b6040519080825280601f01601f1916602001820160405280156113a2576020820181803683370190505b5090508181016020015b5f19016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a85049450846113ac57509392505050565b5f6113e782610cf7565b90506113f282610cf7565b5f83815260046020908152604080832080546001600160a01b03199081169091556001600160a01b0385168085526003845282852080545f190190558785526002909352818420805490911690555192935084927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6001600160a01b0382166114c55760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f206164647265737360448201526064016105c0565b5f818152600260205260409020546001600160a01b0316156115295760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105c0565b5f818152600260205260409020546001600160a01b03161561158d5760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105c0565b6001600160a01b0382165f81815260036020908152604080832080546001019055848352600290915280822080546001600160a01b0319168417905551839291907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b5f6001600160a01b0384163b156116e957604051630a85bd0160e11b81526001600160a01b0385169063150b7a029061163a903390899088908890600401611c5b565b6020604051808303815f875af1925050508015611674575060408051601f3d908101601f1916820190925261167191810190611c97565b60015b6116cf573d8080156116a1576040519150601f19603f3d011682016040523d82523d5f602084013e6116a6565b606091505b5080515f036116c75760405162461bcd60e51b81526004016105c090611c09565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610673565b506001610673565b5f8072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b831061172f5772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef8100000000831061175b576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc10000831061177957662386f26fc10000830492506010015b6305f5e1008310611791576305f5e100830492506008015b61271083106117a557612710830492506004015b606483106117b7576064830492506002015b600a83106104935760010192915050565b6001600160e01b031981168114610c38575f80fd5b5f602082840312156117ed575f80fd5b8135610bbb816117c8565b5f5b838110156118125781810151838201526020016117fa565b50505f910152565b5f81518084526118318160208601602086016117f8565b601f01601f19169290920160200192915050565b602081525f610bbb602083018461181a565b5f60208284031215611867575f80fd5b5035919050565b6001600160a01b0381168114610c38575f80fd5b5f8060408385031215611893575f80fd5b823561189e8161186e565b946020939093013593505050565b5f805f606084860312156118be575f80fd5b8335925060208401356118d08161186e565b929592945050506040919091013590565b5f805f606084860312156118f3575f80fd5b83356118fe8161186e565b925060208401356118d08161186e565b5f806040838503121561191f575f80fd5b8235915060208301356119318161186e565b809150509250929050565b5f6020828403121561194c575f80fd5b8135610bbb8161186e565b5f8060408385031215611968575f80fd5b82356119738161186e565b915060208301358015158114611931575f80fd5b634e487b7160e01b5f52604160045260245ffd5b5f805f80608085870312156119ae575f80fd5b84356119b98161186e565b935060208501356119c98161186e565b925060408501359150606085013567ffffffffffffffff808211156119ec575f80fd5b818701915087601f8301126119ff575f80fd5b813581811115611a1157611a11611987565b604051601f8201601f19908116603f01168101908382118183101715611a3957611a39611987565b816040528281528a6020848701011115611a51575f80fd5b826020860160208301375f60208483010152809550505050505092959194509250565b5f8060408385031215611a85575f80fd5b50508035926020909101359150565b5f8060408385031215611aa5575f80fd5b8235611ab08161186e565b915060208301356119318161186e565b600181811c90821680611ad457607f821691505b602082108103611af257634e487b7160e01b5f52602260045260245ffd5b50919050565b6020808252602d908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526c1c881bdc88185c1c1c9bdd9959609a1b606082015260800190565b5f60208284031215611b55575f80fd5b8151610bbb8161186e565b5f60208284031215611b70575f80fd5b5051919050565b8082018082111561049357634e487b7160e01b5f52601160045260245ffd5b5f8351611ba78184602088016117f8565b835190830190611bbb8183602088016117f8565b01949350505050565b60208082526025908201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060408201526437bbb732b960d91b606082015260800190565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6001600160a01b03858116825284166020820152604081018390526080606082018190525f90611c8d9083018461181a565b9695505050505050565b5f60208284031215611ca7575f80fd5b8151610bbb816117c856fea164736f6c6343000818000a","storage":{"0x0":"0x0","0x1":"0x0","0x6":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x8":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0x9":"0x93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae","0x9b8bc185dce56a7ea1b27d35e40ac15dcdf9144303dfd4d8880220078bf21a2c":"0x1","0xdb5e6a17df8534b92b0c8de590f14b4fb4b5eb2c62ef1bf7a05555e354797508":"0x1","0xe1a982900207b619cb6c39be8cb5e60da1370171412fb65b5efc25e2dce3c34c":"0x1"}},"0xce4bb7dc1eb9dce75743de6a4b48534fd427ef51":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xe85541865bbb62a05064ce5c9f41cc293a8ea996","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0xd178b720229c39de617846f84cf9c8d32a63a23d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610106575f3560e01c806371017a541161009e5780639e32d3641161006e5780639e32d3641461025a578063a424740014610281578063dd6b9e2214610294578063e1c4b65a146102a7578063e35a14e5146102ba575f80fd5b806371017a541461020e5780637b103999146102215780638f0dbd25146102345780639810b69514610247575f80fd5b8063485cc955116100d9578063485cc95514610191578063572b6c05146101a457806358884432146101d05780636ccbae5f146101fb575f80fd5b8063150b7a021461010a5780631694116d1461013b5780631bf7e13e146101505780631c351a9d14610170575b5f80fd5b61011d610118366004611434565b6102e2565b6040516001600160e01b031990911681526020015b60405180910390f35b61014e6101493660046114e3565b610372565b005b61016361015e366004611549565b61040d565b6040516101329190611601565b61018361017e366004611613565b6104d6565b604051908152602001610132565b61014e61019f366004611666565b6105c3565b6101c06101b236600461169d565b6001600160a01b0316301490565b6040519015158152602001610132565b6067546101e3906001600160a01b031681565b6040516001600160a01b039091168152602001610132565b6101836102093660046116b8565b6106f8565b6101e361021c3660046116cf565b610751565b6066546101e3906001600160a01b031681565b61014e6102423660046116ef565b610791565b6101e36102553660046116cf565b610806565b6101837fd81bbfcee722494b885e891546eeac23d0eedcd44038d7a2f6ef9ec2f9e0d23981565b6101c061028f366004611549565b61085f565b6101c06102a236600461172d565b6108a8565b61014e6102b5366004611771565b61091d565b6101e36102c83660046116b8565b5f908152606560205260409020546001600160a01b031690565b6066545f906001600160a01b03166102f8610a43565b6001600160a01b031614158061032257505f848152606560205260409020546001600160a01b0316155b156103605783610330610a43565b60405163634afa0d60e01b815260048101929092526001600160a01b031660248201526044015b60405180910390fd5b50630a85bd0160e11b95945050505050565b828261037e8282610751565b6001600160a01b031661038f610a43565b6001600160a01b0316146103c057604051632cd9b44d60e11b81526004810183905260248101829052604401610357565b5f6103cb8686610806565b90505f5b87811015610402576103fa8989838181106103ec576103ec6117b0565b905060200201358387610a51565b6001016103cf565b505050505050505050565b60605f5a905061041e85858561085f565b61043b57604051638baa579f60e01b815260040160405180910390fd5b6104cb61044b602087018761169d565b3060408801358461045f60608b018b6117c4565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f92019190915250610b8492505050565b9150505b9392505050565b6067545f906001600160a01b031663aa271e1a6104f1610a43565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015610533573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105579190611807565b1580610572575030610567610a43565b6001600160a01b0316145b156105a45761057f610a43565b60405163e2c8c9d560e01b81526001600160a01b039091166004820152602401610357565b5f6105b0858585610c60565b90506105bb81610e73565b949350505050565b5f54610100900460ff16158080156105e157505f54600160ff909116105b806105fa5750303b1580156105fa57505f5460ff166001145b61065d5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610357565b5f805460ff19166001179055801561067e575f805461ff0019166101001790555b606680546001600160a01b038086166001600160a01b031992831617909255606780549285169290911691909117905580156106f3575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f9061074a906060016040516020818303038152906040528051906020012090565b5492915050565b5f80838360405160200161076f929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209150505b92915050565b828261079d8282610751565b6001600160a01b03166107ae610a43565b6001600160a01b0316146107df57604051632cd9b44d60e11b81526004810183905260248101829052604401610357565b856107e981610e73565b6107fd876107f78889610806565b86610a51565b50505050505050565b5f8060026108148585610e8f565b6040516108219190611826565b602060405180830381855afa15801561083c573d5f803e3d5ffd5b5050506040513d601f19601f820116820180604052508101906105bb9190611841565b5f6105bb61086c856118c6565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250610f1492505050565b5f805b8281101561091257846001600160a01b03166108f38585848181106108d2576108d26117b0565b905060200201355f908152606560205260409020546001600160a01b031690565b6001600160a01b03161461090a575f9150506104cf565b6001016108ab565b506001949350505050565b6067546001600160a01b031663aa271e1a610936610a43565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015610978573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061099c9190611807565b15806109b75750306109ac610a43565b6001600160a01b0316145b156109c45761057f610a43565b5f5b818110156106f357610a3a8383838181106109e3576109e36117b0565b90506020028101906109f59190611983565b610a039060208101906117c4565b858585818110610a1557610a156117b0565b9050602002810190610a279190611983565b610a3590602081019061169d565b610c60565b506001016109c6565b5f610a4c611059565b905090565b5f838152606560205260409020546001600160a01b03838116911614610ab4575f83815260656020526040908190205490516326995d8360e11b8152600481018590526001600160a01b0391821660248201529083166044820152606401610357565b5f838152606560205260409081902080546001600160a01b03191690556066549051632142170760e11b81523060048201526001600160a01b03838116602483015260448201869052909116906342842e0e906064015f604051808303815f87803b158015610b21575f80fd5b505af1158015610b33573d5f803e3d5ffd5b50505050806001600160a01b0316610b49610a43565b6001600160a01b0316847f9a471856befea1cabcd7fc8a1c4d70ea07b8ed2ee205cc361f932433542ef3fe60405160405180910390a4505050565b6060610b8f85611076565b5f80876001600160a01b031686610ba88b8a89896110db565b604051610bb59190611826565b5f604051808303815f8787f1925050503d805f8114610bef576040519150601f19603f3d011682016040523d82523d5f602084013e610bf4565b606091505b509092509050610c05603f876119bf565b5a11610c1357610c136119d2565b610c5382826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061110b565b9998505050505050505050565b5f60605f7fd81bbfcee722494b885e891546eeac23d0eedcd44038d7a2f6ef9ec2f9e0d2398686604051602001610c989291906119e6565b60405160208183030381529060405280519060200120604051602001610cc8929190918252602082015260400190565b60408051808303601f19018152828252805160209091012060028084526060840190925292505f9190816020015b6060815260200190600190039081610cf657905050905086868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920182905250855186945090925015159050610d5657610d566117b0565b6020026020010181905250604051806040016040528060038152602001621e9a5b60ea1b81525081600181518110610d9057610d906117b0565b6020908102919091018101919091525f8381526065909152604080822080546001600160a01b0319166001600160a01b03898116919091179091556067549151635cd7e3b360e01b8152911691635cd7e3b391610df891309186918991829190600401611a4d565b5f604051808303815f87803b158015610e0f575f80fd5b505af1158015610e21573d5f803e3d5ffd5b50505050846001600160a01b0316827f08717469d38a4b02325ea6637978c7952f94d3d8fc7848994f618ddbf4d637f18989604051610e61929190611aab565b60405180910390a35095945050505050565b303303610e8657610e8381611144565b50565b610e8381611076565b60605f82610e9f60016020611ad9565b60ff1660208110610eb257610eb26117b0565b1a9050610ec0600282611af2565b60ff1615610ecf576003610ed2565b60025b84604051602001610efc92919060f89290921b6001600160f81b0319168252600182015260210190565b60405160208183030381529060405291505092915050565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015610f58573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f7c9190611841565b90505f611029866060015180519060200120868860200151604051602001610fc99392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561104f5750855161104f906001600160a01b0316828661116e565b9695505050505050565b5f30330361106e575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f906060016040516020818303038152906040528051906020012090506110ca8190565b546110d6906001611b13565b905550565b60608285856040516020016110f293929190611b26565b6040516020818303038152906040529050949350505050565b6060831561111a5750816104cf565b82511561112a5782518084602001fd5b8160405162461bcd60e51b81526004016103579190611601565b61114c6112a9565b8114610e8357604051635637b6af60e11b815260048101829052602401610357565b5f805f61117b85856112bb565b90925090505f81600481111561119357611193611b64565b1480156111b15750856001600160a01b0316826001600160a01b0316145b156111c1576001925050506104cf565b5f80876001600160a01b0316631626ba7e60e01b88886040516024016111e8929190611b78565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516112269190611826565b5f60405180830381855afa9150503d805f811461125e576040519150601f19603f3d011682016040523d82523d5f602084013e611263565b606091505b5091509150818015611276575080516020145b801561129d57508051630b135d3f60e11b9061129b9083016020908101908401611841565b145b98975050505050505050565b5f3033036110735750601f1936013590565b5f8082516041036112ef576020830151604084015160608501515f1a6112e3878285856112fd565b945094505050506112f6565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561133257505f905060036113d9565b8460ff16601b1415801561134a57508460ff16601c14155b1561135a57505f905060046113d9565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156113ab573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b0381166113d3575f600192509250506113d9565b91505f90505b94509492505050565b6001600160a01b0381168114610e83575f80fd5b5f8083601f840112611406575f80fd5b50813567ffffffffffffffff81111561141d575f80fd5b6020830191508360208285010111156112f6575f80fd5b5f805f805f60808688031215611448575f80fd5b8535611453816113e2565b94506020860135611463816113e2565b935060408601359250606086013567ffffffffffffffff811115611485575f80fd5b611491888289016113f6565b969995985093965092949392505050565b5f8083601f8401126114b2575f80fd5b50813567ffffffffffffffff8111156114c9575f80fd5b6020830191508360208260051b85010111156112f6575f80fd5b5f805f805f608086880312156114f7575f80fd5b853567ffffffffffffffff81111561150d575f80fd5b611519888289016114a2565b9096509450506020860135925060408601359150606086013561153b816113e2565b809150509295509295909350565b5f805f6040848603121561155b575f80fd5b833567ffffffffffffffff80821115611572575f80fd5b9085019060808288031215611585575f80fd5b9093506020850135908082111561159a575f80fd5b506115a7868287016113f6565b9497909650939450505050565b5f5b838110156115ce5781810151838201526020016115b6565b50505f910152565b5f81518084526115ed8160208601602086016115b4565b601f01601f19169290920160200192915050565b602081525f6104cf60208301846115d6565b5f805f60408486031215611625575f80fd5b833567ffffffffffffffff81111561163b575f80fd5b611647868287016113f6565b909450925050602084013561165b816113e2565b809150509250925092565b5f8060408385031215611677575f80fd5b8235611682816113e2565b91506020830135611692816113e2565b809150509250929050565b5f602082840312156116ad575f80fd5b81356104cf816113e2565b5f602082840312156116c8575f80fd5b5035919050565b5f80604083850312156116e0575f80fd5b50508035926020909101359150565b5f805f8060808587031215611702575f80fd5b8435935060208501359250604085013591506060850135611722816113e2565b939692955090935050565b5f805f6040848603121561173f575f80fd5b833561174a816113e2565b9250602084013567ffffffffffffffff811115611765575f80fd5b6115a7868287016114a2565b5f8060208385031215611782575f80fd5b823567ffffffffffffffff811115611798575f80fd5b6117a4858286016114a2565b90969095509350505050565b634e487b7160e01b5f52603260045260245ffd5b5f808335601e198436030181126117d9575f80fd5b83018035915067ffffffffffffffff8211156117f3575f80fd5b6020019150368190038213156112f6575f80fd5b5f60208284031215611817575f80fd5b815180151581146104cf575f80fd5b5f82516118378184602087016115b4565b9190910192915050565b5f60208284031215611851575f80fd5b5051919050565b634e487b7160e01b5f52604160045260245ffd5b6040516080810167ffffffffffffffff8111828210171561188f5761188f611858565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156118be576118be611858565b604052919050565b5f608082360312156118d6575f80fd5b6118de61186c565b82356118e9816113e2565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff80821115611919575f80fd5b9085019036601f83011261192b575f80fd5b81358181111561193d5761193d611858565b61194f601f8201601f19168501611895565b91508082523684828501011115611964575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b5f8235603e19833603018112611837575f80fd5b634e487b7160e01b5f52601260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b5f826119cd576119cd611997565b500490565b634e487b7160e01b5f52600160045260245ffd5b818382375f9101908152919050565b5f8282518085526020808601955060208260051b840101602086015f5b84811015611a4057601f19868403018952611a2e8383516115d6565b98840198925090830190600101611a12565b5090979650505050505050565b6001600160a01b038616815260a0602082018190525f90611a70908301876119f5565b8281036040840152611a8281876119f5565b90508281036060840152611a9681866119f5565b91505082151560808301529695505050505050565b60208152816020820152818360408301375f818301604090810191909152601f909201601f19160101919050565b60ff828116828216039081111561078b5761078b6119ab565b5f60ff831680611b0457611b04611997565b8060ff84160691505092915050565b8082018082111561078b5761078b6119ab565b5f8451611b378184602089016115b4565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f6105bb60408301846115d656fea164736f6c6343000818000a","storage":{"0x0":"0xff"}},"0xda9e1b3e395bfb0a45f03c7f615146b9d896c959":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100b1575f3560e01c806340c10f191161006e57806340c10f191461013d57806370a082311461015257806395d89b411461017a578063a457c2d714610182578063a9059cbb14610195578063dd62ed3e146101a8575f80fd5b806306fdde03146100b5578063095ea7b3146100d357806318160ddd146100f657806323b872dd14610108578063313ce5671461011b578063395093511461012a575b5f80fd5b6100bd6101bb565b6040516100ca9190610775565b60405180910390f35b6100e66100e13660046107dc565b61024b565b60405190151581526020016100ca565b6002545b6040519081526020016100ca565b6100e6610116366004610804565b610264565b604051601281526020016100ca565b6100e66101383660046107dc565b610287565b61015061014b3660046107dc565b6102a8565b005b6100fa61016036600461083d565b6001600160a01b03165f9081526020819052604090205490565b6100bd6102b6565b6100e66101903660046107dc565b6102c5565b6100e66101a33660046107dc565b610344565b6100fa6101b636600461085d565b610351565b6060600380546101ca9061088e565b80601f01602080910402602001604051908101604052809291908181526020018280546101f69061088e565b80156102415780601f1061021857610100808354040283529160200191610241565b820191905f5260205f20905b81548152906001019060200180831161022457829003601f168201915b5050505050905090565b5f3361025881858561037b565b60019150505b92915050565b5f3361027185828561049e565b61027c858585610516565b506001949350505050565b5f336102588185856102998383610351565b6102a391906108c6565b61037b565b6102b282826106b8565b5050565b6060600480546101ca9061088e565b5f33816102d28286610351565b9050838110156103375760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b61027c828686840361037b565b5f33610258818585610516565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b6001600160a01b0383166103dd5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161032e565b6001600160a01b03821661043e5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161032e565b6001600160a01b038381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b5f6104a98484610351565b90505f19811461051057818110156105035760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161032e565b610510848484840361037b565b50505050565b6001600160a01b03831661057a5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161032e565b6001600160a01b0382166105dc5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161032e565b6001600160a01b0383165f90815260208190526040902054818110156106535760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161032e565b6001600160a01b038481165f81815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3610510565b6001600160a01b03821661070e5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640161032e565b8060025f82825461071f91906108c6565b90915550506001600160a01b0382165f81815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b5f602080835283518060208501525f5b818110156107a157858101830151858201604001528201610785565b505f604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146107d7575f80fd5b919050565b5f80604083850312156107ed575f80fd5b6107f6836107c1565b946020939093013593505050565b5f805f60608486031215610816575f80fd5b61081f846107c1565b925061082d602085016107c1565b9150604084013590509250925092565b5f6020828403121561084d575f80fd5b610856826107c1565b9392505050565b5f806040838503121561086e575f80fd5b610877836107c1565b9150610885602084016107c1565b90509250929050565b600181811c908216806108a257607f821691505b6020821081036108c057634e487b7160e01b5f52602260045260245ffd5b50919050565b8082018082111561025e57634e487b7160e01b5f52601160045260245ffdfea164736f6c6343000818000a","storage":{"0x2":"0xe8d4a51000","0x3":"0x0","0x4":"0x0","0x47668262eb76f3aa61b856a0c078f33a11f46671cf1466c3616ba74a22fcdd92":"0xe8d4a51000","0x9cc83e833a69122bf7773b58c082655d780ae469ab7cdf5d1047a30229e55875":"0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"}},"0xe0afc4e9e03e4aa67257df7a2eca77454309789d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061002b5760003560e01c806316f1983114610030575b600080fd5b6100b06004803603604081101561004657600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561007157600080fd5b82018360208201111561008357600080fd5b803590602001918460018302840111640100000000831117156100a557600080fd5b5090925090506100b2565b005b826001600160a01b031660017f103fed9db65eac19c4d870f49ab7520fe03b99f1838e5996caf47e9e43308392848460405180806020018281038252848482818152602001925080828437600083820152604051601f909101601f19169092018290039550909350505050a350505056fea164736f6c6343000606000a","storage":{}},"0xe4fdf45c2f8d198854f8823809c7a988eeaaa493":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100a6575f3560e01c80638cb8ecec1161006e5780638cb8ecec1461013e5780638da5cb5b14610151578063cbe9e76414610161578063da8c229e14610183578063e0dba60f146101a5578063f2fde38b146101b8575f80fd5b806301670ba9146100aa57806301ffc9a7146100bf5780633f15457f146100f85780634e543b2614610123578063715018a614610136575b5f80fd5b6100bd6100b8366004610529565b6101cb565b005b6100e36100cd366004610540565b6001600160e01b0319166301ffc9a760e01b1490565b60405190151581526020015b60405180910390f35b60025461010b906001600160a01b031681565b6040516001600160a01b0390911681526020016100ef565b6100bd610131366004610589565b610217565b6100bd610282565b6100bd61014c3660046105a2565b610295565b5f546001600160a01b031661010b565b6100e361016f366004610529565b60036020525f908152604090205460ff1681565b6100e3610191366004610589565b60016020525f908152604090205460ff1681565b6100bd6101b33660046105cc565b6103a2565b6100bd6101c6366004610589565b610408565b6101d3610481565b60405181907f1764176cfa565853ba1ded547a830a9f9bff95231ef6fd228b3ddd6175777569905f90a25f908152600360205260409020805460ff19166001179055565b61021f610481565b600254604051630c4b7b8560e11b81525f60048201526001600160a01b03838116602483015290911690631896f70a906044015f604051808303815f87803b158015610269575f80fd5b505af115801561027b573d5f803e3d5ffd5b5050505050565b61028a610481565b6102935f6104da565b565b335f9081526001602052604090205460ff166103095760405162461bcd60e51b815260206004820152602860248201527f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f604482015267373a3937b63632b960c11b60648201526084015b60405180910390fd5b5f8281526003602052604090205460ff1615610323575f80fd5b6002546040516306ab592360e01b81525f6004820152602481018490526001600160a01b038381166044830152909116906306ab5923906064016020604051808303815f875af1158015610379573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061039d9190610605565b505050565b6103aa610481565b6001600160a01b0382165f81815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b610410610481565b6001600160a01b0381166104755760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610300565b61047e816104da565b50565b5f546001600160a01b031633146102935760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610300565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f60208284031215610539575f80fd5b5035919050565b5f60208284031215610550575f80fd5b81356001600160e01b031981168114610567575f80fd5b9392505050565b80356001600160a01b0381168114610584575f80fd5b919050565b5f60208284031215610599575f80fd5b6105678261056e565b5f80604083850312156105b3575f80fd5b823591506105c36020840161056e565b90509250929050565b5f80604083850312156105dd575f80fd5b6105e68361056e565b9150602083013580151581146105fa575f80fd5b809150509250929050565b5f60208284031215610615575f80fd5b505191905056fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0xbdf39e9e65b2355b1b0b06df799c09159f0ab90f06a9bb2153f5de7d9b0ea81":"0x1","0x97b771283c9c769f7b9399fef71d92816f2bd31de10203b676671b01eb920966":"0x1"}},"0xe85541865bbb62a05064ce5c9f41cc293a8ea996":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610060575f3560e01c8063715018a6146100645780638129fc1c1461006e5780638da5cb5b14610076578063a3f4df7e14610096578063f2fde38b146100cf578063ffa1ad74146100e2575b5f80fd5b61006c610106565b005b61006c610119565b6033546040516001600160a01b0390911681526020015b60405180910390f35b6100c26040518060400160405280600d81526020016c2aa7299d1027b832b930ba37b960991b81525081565b60405161008d91906103bd565b61006c6100dd366004610409565b610229565b6100c2604051806040016040528060058152602001640302e312e360dc1b81525081565b61010e61029f565b6101175f6102f9565b565b5f54610100900460ff161580801561013757505f54600160ff909116105b806101505750303b15801561015057505f5460ff166001145b6101b85760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b5f805460ff1916600117905580156101d9575f805461ff0019166101001790555b6101e161034a565b8015610226575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50565b61023161029f565b6001600160a01b0381166102965760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016101af565b610226816102f9565b6033546001600160a01b031633146101175760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016101af565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff166103b45760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016101af565b610117336102f9565b5f602080835283518060208501525f5b818110156103e9578581018301518582016040015282016103cd565b505f604082860101526040601f19601f8301168501019250505092915050565b5f60208284031215610419575f80fd5b81356001600160a01b038116811461042f575f80fd5b939250505056fea164736f6c6343000818000a","storage":{}},"0xead34b583404e3cb0c9b97c2d1c486be67be9f30":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0xec71e4e674fe0f432693dc2b935c34bd2774c003":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610090575f3560e01c8063a200e15311610063578063a200e15314610146578063a34e35961461016d578063c8a4271f14610180578063cd5d2c74146101bf578063d820ed42146101e6575f80fd5b806301ffc9a7146100945780632c0fd74c146100bc57806350e9a715146100f157806359b6b86c1461011f575b5f80fd5b6100a76100a2366004610600565b61020d565b60405190151581526020015b60405180910390f35b6100e37f000000000000000000000000000000000000000000000000000000000000000081565b6040519081526020016100b3565b6101046100ff366004610627565b610243565b604080518251815260209283015192810192909252016100b3565b6100e37f000000000000000000000000000000000000000000000000000000000000000181565b6100e37f000000000000000000000000000000000000000000000000000000000000000481565b6100e361017b366004610627565b610404565b6101a77f000000000000000000000000f3810eb7d64d1c11ae12727d957c6202b24492f581565b6040516001600160a01b0390911681526020016100b3565b6100e37f000000000000000000000000000000000000000000000000000000000000000081565b6100e37f000000000000000000000000000000000000000000000000000000000000000281565b5f6001600160e01b031982166301ffc9a760e01b148061023d57506001600160e01b031982166350e9a71560e01b145b92915050565b604080518082019091525f80825260208201525f61029586868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061045392505050565b90505f600582106102d1576102ca847f00000000000000000000000000000000000000000000000000000000000000016106b3565b9050610394565b81600403610303576102ca847f00000000000000000000000000000000000000000000000000000000000000026106b3565b81600303610335576102ca847f00000000000000000000000000000000000000000000000000000000000000046106b3565b81600203610367576102ca847f00000000000000000000000000000000000000000000000000000000000000006106b3565b610391847f00000000000000000000000000000000000000000000000000000000000000006106b3565b90505b60405180604001604052806103a883610554565b81526020016103f76103f28a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c92508b91506105f89050565b610554565b9052979650505050505050565b5f61044a6103f286868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508892508791506105f89050565b95945050505050565b80515f90819081905b8082101561054b575f858381518110610477576104776106ca565b01602001516001600160f81b0319169050600160ff1b8110156104a65761049f6001846106de565b9250610538565b600760fd1b6001600160f81b0319821610156104c75761049f6002846106de565b600f60fc1b6001600160f81b0319821610156104e85761049f6003846106de565b601f60fb1b6001600160f81b0319821610156105095761049f6004846106de565b603f60fa1b6001600160f81b03198216101561052a5761049f6005846106de565b6105356006846106de565b92505b5082610543816106f1565b93505061045c565b50909392505050565b5f807f000000000000000000000000f3810eb7d64d1c11ae12727d957c6202b24492f56001600160a01b03166350d25bcd6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105b2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105d69190610709565b9050806105e7846305f5e1006106b3565b6105f19190610720565b9392505050565b5f9392505050565b5f60208284031215610610575f80fd5b81356001600160e01b0319811681146105f1575f80fd5b5f805f806060858703121561063a575f80fd5b843567ffffffffffffffff80821115610651575f80fd5b818701915087601f830112610664575f80fd5b813581811115610672575f80fd5b886020828501011115610683575f80fd5b6020928301999098509187013596604001359550909350505050565b634e487b7160e01b5f52601160045260245ffd5b808202811582820484141761023d5761023d61069f565b634e487b7160e01b5f52603260045260245ffd5b8082018082111561023d5761023d61069f565b5f600182016107025761070261069f565b5060010190565b5f60208284031215610719575f80fd5b5051919050565b5f8261073a57634e487b7160e01b5f52601260045260245ffd5b50049056fea164736f6c6343000818000a","storage":{}},"0xf1ad43dc647f27c2366ab4742d68d21282f7d50e":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101d1575f3560e01c80638b95dd71116100fe578063c86902331161009e578063e32954eb1161006e578063e32954eb146104f2578063e59d895d14610505578063e985e9c514610518578063f1cb7e0614610553575f80fd5b8063c869023314610435578063ce3decdc1461048c578063d5fa2b001461049f578063d700ff33146104b2575f80fd5b8063a8fa5682116100d9578063a8fa5682146103ac578063a9784b3e146103bf578063ac9650d814610402578063bc1c58d114610422575f80fd5b80638b95dd7114610373578063a22cb46514610386578063a4b91a0114610399575f80fd5b80633603d758116101745780635c98042b116101445780635c98042b14610327578063623195b01461033a578063691f34311461034d5780637737221314610360575f80fd5b80633603d758146102975780633b3b57de146102aa5780634cbf6ba4146102bd57806359d1d43c14610307575f80fd5b8063124a319c116101af578063124a319c146102255780632203ab561461025057806329cd62ea14610271578063304e6ade14610284575f80fd5b806301ffc9a7146101d55780630af179d7146101fd57806310f13a8c14610212575b5f80fd5b6101e86101e3366004612267565b610566565b60405190151581526020015b60405180910390f35b61021061020b3660046122bd565b610576565b005b610210610220366004612304565b610778565b610238610233366004612377565b610842565b6040516001600160a01b0390911681526020016101f4565b61026361025e3660046123a1565b610a87565b6040516101f492919061240e565b61021061027f366004612426565b610bb5565b6102106102923660046122bd565b610c4d565b6102106102a536600461244f565b610cc6565b6102386102b836600461244f565b610d64565b6101e86102cb3660046123a1565b5f82815260208181526040808320546001600160401b031683526006825280832094835293815283822092825291909152205461ffff16151590565b61031a6103153660046122bd565b610d93565b6040516101f49190612466565b61031a61033536600461244f565b610e6f565b610210610348366004612478565b610f2a565b61031a61035b36600461244f565b610fc2565b61021061036e3660046122bd565b610ffa565b6102106103813660046124da565b611073565b6102106103943660046125b9565b611150565b6102106103a73660046125e3565b61122a565b61031a6103ba36600461261e565b6112f6565b6101e86103cd36600461265a565b6001600160a01b039283165f908152600c60209081526040808320948352938152838220929094168152925290205460ff1690565b6104156104103660046126ce565b611342565b6040516101f4919061270c565b61031a61043036600461244f565b61134f565b61047761044336600461244f565b5f81815260208181526040808320546001600160401b03168352600982528083209383529290522080546001909101549091565b604080519283526020830191909152016101f4565b61021061049a3660046122bd565b611387565b6102106104ad36600461276e565b6114c3565b6104da6104c036600461244f565b5f602081905290815260409020546001600160401b031681565b6040516001600160401b0390911681526020016101f4565b61041561050036600461279c565b6114e9565b6102106105133660046127d6565b6114fe565b6101e8610526366004612808565b6001600160a01b039182165f908152600b6020908152604080832093909416825291909152205460ff1690565b61031a6105613660046123a1565b6115a2565b5f61057082611666565b92915050565b826105808161168a565b610588575f80fd5b5f84815260208181526040808320548151601f87018490048402810184019092528582528392606092839285926001600160401b039091169183916105eb9183918d908d90819084018382808284375f9201919091525092939250506118b79050565b90505b80515160208201511015610712578661ffff165f03610652578060400151965061061781611912565b94508460405160200161062a9190612834565b60405160208183030381529060405280519060200120925061064b81611933565b9350610704565b5f61065c82611912565b9050816040015161ffff168861ffff16141580610680575061067e868261194f565b155b15610702576106db8c878a8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250505060208801518d91506106d2908290612863565b8b51158a61196a565b8160400151975081602001519650809550858051906020012093506106ff82611933565b94505b505b61070d81611bc9565b6105ee565b5083511561076c5761076c8a85888c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c925061076391508290508f612863565b8951158861196a565b50505050505050505050565b846107828161168a565b61078a575f80fd5b5f86815260208181526040808320546001600160401b03168352600a8252808320898452909152908190209051849184916107c89089908990612876565b908152602001604051809103902091826107e3929190612901565b5084846040516107f4929190612876565b6040518091039020867f448bc014f1536726cf8d54ff3d6481ed3cbc683c2591ca204274009afa09b1a18787878760405161083294939291906129e2565b60405180910390a3505050505050565b5f82815260208181526040808320546001600160401b031683526007825280832085845282528083206001600160e01b0319851684529091528120546001600160a01b03168015610894579050610570565b5f61089e85610d64565b90506001600160a01b0381166108b8575f92505050610570565b6040516301ffc9a760e01b60248201525f9081906001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b1790525161090f9190612834565b5f60405180830381855afa9150503d805f8114610947576040519150601f19603f3d011682016040523d82523d5f602084013e61094c565b606091505b509150915081158061095f575060208151105b80610989575080601f8151811061097857610978612a13565b01602001516001600160f81b031916155b1561099a575f945050505050610570565b6040516001600160e01b0319871660248201526001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b179052516109f09190612834565b5f60405180830381855afa9150503d805f8114610a28576040519150601f19603f3d011682016040523d82523d5f602084013e610a2d565b606091505b509092509050811580610a41575060208151105b80610a6b575080601f81518110610a5a57610a5a612a13565b01602001516001600160f81b031916155b15610a7c575f945050505050610570565b509095945050505050565b5f82815260208181526040808320546001600160401b03168352600180835281842086855290925282206060915b848111610b975780851615801590610ae457505f8181526020839052604081208054610ae090612885565b9050115b15610b8f5780825f8381526020019081526020015f20808054610b0690612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610b3290612885565b8015610b7d5780601f10610b5457610100808354040283529160200191610b7d565b820191905f5260205f20905b815481529060010190602001808311610b6057829003601f168201915b50505050509050935093505050610bae565b60011b610ab5565b505f60405180602001604052805f81525092509250505b9250929050565b82610bbf8161168a565b610bc7575f80fd5b60408051808201825284815260208082018581525f888152808352848120546001600160401b031681526009835284812089825283528490209251835551600190920191909155815185815290810184905285917f1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e4691015b60405180910390a250505050565b82610c578161168a565b610c5f575f80fd5b5f84815260208181526040808320546001600160401b03168352600382528083208784529091529020610c93838583612901565b50837fe379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d75788484604051610c3f929190612a27565b80610cd08161168a565b610cd8575f80fd5b5f82815260208190526040812080546001600160401b031691610cfa83612a3a565b82546101009290920a6001600160401b038181021990931691831602179091555f84815260208181526040918290205491519190921681528492507fc6621ccb8f3f5a04bb6502154b2caf6adf5983fe76dfef1cfc9c42e3579db444910160405180910390a25050565b5f80610d7183603c6115a2565b905080515f03610d8357505f92915050565b610d8c81611cae565b9392505050565b5f83815260208181526040808320546001600160401b03168352600a825280832086845290915290819020905160609190610dd19085908590612876565b90815260200160405180910390208054610dea90612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610e1690612885565b8015610e615780601f10610e3857610100808354040283529160200191610e61565b820191905f5260205f20905b815481529060010190602001808311610e4457829003601f168201915b505050505090509392505050565b5f81815260208181526040808320546001600160401b03168352600482528083208484529091529020805460609190610ea790612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610ed390612885565b8015610f1e5780601f10610ef557610100808354040283529160200191610f1e565b820191905f5260205f20905b815481529060010190602001808311610f0157829003601f168201915b50505050509050919050565b83610f348161168a565b610f3c575f80fd5b83610f48600182612863565b1615610f52575f80fd5b5f85815260208181526040808320546001600160401b031683526001825280832088845282528083208784529091529020610f8e838583612901565b50604051849086907faa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe3905f90a35050505050565b5f81815260208181526040808320546001600160401b03168352600882528083208484529091529020805460609190610ea790612885565b826110048161168a565b61100c575f80fd5b5f84815260208181526040808320546001600160401b03168352600882528083208784529091529020611040838583612901565b50837fb7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f78484604051610c3f929190612a27565b8261107d8161168a565b611085575f80fd5b837f65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af75284846040516110b792919061240e565b60405180910390a2603c830361110e57837f52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd26110f284611cae565b6040516001600160a01b03909116815260200160405180910390a25b5f84815260208181526040808320546001600160401b0316835260028252808320878452825280832086845290915290206111498382612a5f565b5050505050565b6001600160a01b03821633036111bf5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084015b60405180910390fd5b335f818152600b602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6001600160a01b03821633036112825760405162461bcd60e51b815260206004820181905260248201527f53657474696e672064656c65676174652073746174757320666f722073656c6660448201526064016111b6565b335f818152600c6020908152604080832087845282528083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519384529286917ff0ddb3b04746704017f9aa8bd728fcc2c1d11675041205350018915f5e4750a0910160405180910390a4505050565b5f83815260208181526040808320546001600160401b03168352600582528083208684528252808320858452825280832061ffff851684529091529020805460609190610dea90612885565b6060610d8c5f8484611ccb565b5f81815260208181526040808320546001600160401b03168352600382528083208484529091529020805460609190610ea790612885565b826113918161168a565b611399575f80fd5b5f84815260208181526040808320546001600160401b031680845260048352818420888552909252822080549192916113d190612885565b80601f01602080910402602001604051908101604052809291908181526020018280546113fd90612885565b80156114485780601f1061141f57610100808354040283529160200191611448565b820191905f5260205f20905b81548152906001019060200180831161142b57829003601f168201915b505050506001600160401b0384165f9081526004602090815260408083208b8452909152902091925061147e9050858783612901565b50857f8f15ed4b723ef428f250961da8315675b507046737e19319fc1a4d81bfe87f858287876040516114b393929190612b1e565b60405180910390a2505050505050565b816114cd8161168a565b6114d5575f80fd5b6114e483603c61038185611e88565b505050565b60606114f6848484611ccb565b949350505050565b826115088161168a565b611510575f80fd5b5f84815260208181526040808320546001600160401b031683526007825280832087845282528083206001600160e01b031987168085529083529281902080546001600160a01b0319166001600160a01b038716908117909155905190815286917f7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa910160405180910390a350505050565b5f82815260208181526040808320546001600160401b0316835260028252808320858452825280832084845290915290208054606091906115e290612885565b80601f016020809104026020016040519081016040528092919081815260200182805461160e90612885565b80156116595780601f1061163057610100808354040283529160200191611659565b820191905f5260205f20905b81548152906001019060200180831161163c57829003601f168201915b5050505050905092915050565b5f6001600160e01b03198216631674750f60e21b1480610570575061057082611eb8565b5f336001600160a01b037f0000000000000000000000004fbf7b2f171336958be5d15ff762a5cff53635681614806116ea5750336001600160a01b037f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5616145b156116f757506001919050565b6040516302571be360e01b8152600481018390525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa15801561175c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117809190612b4d565b90507f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b0316816001600160a01b031603611845576040516331a9108f60e11b8152600481018490527f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b031690636352211e90602401602060405180830381865afa15801561181e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118429190612b4d565b90505b6001600160a01b03811633148061187e57506001600160a01b0381165f908152600b6020908152604080832033845290915290205460ff165b80610d8c57506001600160a01b0381165f908152600c60209081526040808320868452825280832033845290915290205460ff16610d8c565b6118ff6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261057081611bc9565b602081015181516060916105709161192a9082611edc565b84519190611f33565b60a081015160c08201516060916105709161192a908290612863565b5f81518351148015610d8c5750610d8c835f845f8751611fa7565b865160208801205f61197d878787611f33565b90508315611aa1576001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c168452909152902080546119c690612885565b159050611a23576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611a0783612b68565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091528120611a62916121f9565b897f03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a12078a8a604051611a94929190612b84565b60405180910390a261076c565b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c16845290915290208054611ae290612885565b90505f03611b40576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611b2483612ba9565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091529020611b808282612a5f565b50897f52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b8a8a84604051611bb593929190612bbf565b60405180910390a250505050505050505050565b60c08101516020820181905281515111611be05750565b5f611bf2825f01518360200151611edc565b8260200151611c019190612bed565b8251909150611c109082611fc9565b61ffff166040830152611c24600282612bed565b8251909150611c339082611fc9565b61ffff166060830152611c47600282612bed565b8251909150611c569082611fef565b63ffffffff166080830152611c6c600482612bed565b82519091505f90611c7d9083611fc9565b61ffff169050611c8e600283612bed565b60a084018190529150611ca18183612bed565b60c0909301929092525050565b5f8151601414611cbc575f80fd5b5060200151600160601b900490565b6060816001600160401b03811115611ce557611ce56124c6565b604051908082528060200260200182016040528015611d1857816020015b6060815260200190600190039081611d035790505b5090505f5b82811015611e80578415611dd8575f848483818110611d3e57611d3e612a13565b9050602002810190611d509190612c00565b611d5f91602491600491612c42565b611d6891612c69565b9050858114611dd65760405162461bcd60e51b815260206004820152603460248201527f6d756c746963616c6c3a20416c6c207265636f726473206d7573742068617665604482015273040c240dac2e8c6d0d2dcce40dcc2dacad0c2e6d60631b60648201526084016111b6565b505b5f8030868685818110611ded57611ded612a13565b9050602002810190611dff9190612c00565b604051611e0d929190612876565b5f60405180830381855af49150503d805f8114611e45576040519150601f19603f3d011682016040523d82523d5f602084013e611e4a565b606091505b509150915081611e58575f80fd5b80848481518110611e6b57611e6b612a13565b60209081029190910101525050600101611d1d565b509392505050565b604080516014808252818301909252606091602082018180368337505050600160601b9290920260208301525090565b5f6001600160e01b0319821663c869023360e01b1480610570575061057082612017565b5f815b83518110611eef57611eef612c86565b5f611efa858361203b565b60ff169050611f0a816001612bed565b611f149083612bed565b9150805f03611f235750611f29565b50611edf565b6114f68382612863565b8251606090611f428385612bed565b1115611f4c575f80fd5b5f826001600160401b03811115611f6557611f656124c6565b6040519080825280601f01601f191660200182016040528015611f8f576020820181803683370190505b50905060208082019086860101610a7c82828761205e565b5f611fb38484846120b3565b611fbe8787856120b3565b149695505050505050565b81515f90611fd8836002612bed565b1115611fe2575f80fd5b50016002015161ffff1690565b81515f90611ffe836004612bed565b1115612008575f80fd5b50016004015163ffffffff1690565b5f6001600160e01b0319821663691f343160e01b14806105705750610570826120d5565b5f82828151811061204e5761204e612a13565b016020015160f81c905092915050565b602081106120965781518352612075602084612bed565b9250612082602083612bed565b915061208f602082612863565b905061205e565b905182516020929092036101000a5f190180199091169116179052565b82515f906120c18385612bed565b11156120cb575f80fd5b5091016020012090565b5f6001600160e01b031982166304928c6760e21b14806105705750610570825f6001600160e01b0319821663547d2b4160e11b148061212457506001600160e01b03198216635c98042b60e01b145b806105705750610570825f6001600160e01b0319821663bc1c58d160e01b14806105705750610570825f6001600160e01b03198216631d9dabef60e11b148061217d57506001600160e01b031982166378e5bf0360e11b145b806105705750610570825f6001600160e01b03198216631101d5ab60e11b14806105705750610570825f6001600160e01b0319821663d700ff3360e01b14806105705750610570825f6001600160e01b03198216634fbf043360e01b148061057057506301ffc9a760e01b6001600160e01b0319831614610570565b50805461220590612885565b5f825580601f10612214575050565b601f0160209004905f5260205f20908101906122309190612233565b50565b5b80821115612247575f8155600101612234565b5090565b80356001600160e01b031981168114612262575f80fd5b919050565b5f60208284031215612277575f80fd5b610d8c8261224b565b5f8083601f840112612290575f80fd5b5081356001600160401b038111156122a6575f80fd5b602083019150836020828501011115610bae575f80fd5b5f805f604084860312156122cf575f80fd5b8335925060208401356001600160401b038111156122eb575f80fd5b6122f786828701612280565b9497909650939450505050565b5f805f805f60608688031215612318575f80fd5b8535945060208601356001600160401b0380821115612335575f80fd5b61234189838a01612280565b90965094506040880135915080821115612359575f80fd5b5061236688828901612280565b969995985093965092949392505050565b5f8060408385031215612388575f80fd5b823591506123986020840161224b565b90509250929050565b5f80604083850312156123b2575f80fd5b50508035926020909101359150565b5f5b838110156123db5781810151838201526020016123c3565b50505f910152565b5f81518084526123fa8160208601602086016123c1565b601f01601f19169290920160200192915050565b828152604060208201525f6114f660408301846123e3565b5f805f60608486031215612438575f80fd5b505081359360208301359350604090920135919050565b5f6020828403121561245f575f80fd5b5035919050565b602081525f610d8c60208301846123e3565b5f805f806060858703121561248b575f80fd5b843593506020850135925060408501356001600160401b038111156124ae575f80fd5b6124ba87828801612280565b95989497509550505050565b634e487b7160e01b5f52604160045260245ffd5b5f805f606084860312156124ec575f80fd5b833592506020840135915060408401356001600160401b0380821115612510575f80fd5b818601915086601f830112612523575f80fd5b813581811115612535576125356124c6565b604051601f8201601f19908116603f0116810190838211818310171561255d5761255d6124c6565b81604052828152896020848701011115612575575f80fd5b826020860160208301375f6020848301015280955050505050509250925092565b6001600160a01b0381168114612230575f80fd5b80358015158114612262575f80fd5b5f80604083850312156125ca575f80fd5b82356125d581612596565b9150612398602084016125aa565b5f805f606084860312156125f5575f80fd5b83359250602084013561260781612596565b9150612615604085016125aa565b90509250925092565b5f805f60608486031215612630575f80fd5b8335925060208401359150604084013561ffff8116811461264f575f80fd5b809150509250925092565b5f805f6060848603121561266c575f80fd5b833561267781612596565b925060208401359150604084013561264f81612596565b5f8083601f84011261269e575f80fd5b5081356001600160401b038111156126b4575f80fd5b6020830191508360208260051b8501011115610bae575f80fd5b5f80602083850312156126df575f80fd5b82356001600160401b038111156126f4575f80fd5b6127008582860161268e565b90969095509350505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b8281101561276157603f1988860301845261274f8583516123e3565b94509285019290850190600101612733565b5092979650505050505050565b5f806040838503121561277f575f80fd5b82359150602083013561279181612596565b809150509250929050565b5f805f604084860312156127ae575f80fd5b8335925060208401356001600160401b038111156127ca575f80fd5b6122f78682870161268e565b5f805f606084860312156127e8575f80fd5b833592506127f86020850161224b565b9150604084013561264f81612596565b5f8060408385031215612819575f80fd5b823561282481612596565b9150602083013561279181612596565b5f82516128458184602087016123c1565b9190910192915050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156105705761057061284f565b818382375f9101908152919050565b600181811c9082168061289957607f821691505b6020821081036128b757634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156114e457805f5260205f20601f840160051c810160208510156128e25750805b601f840160051c820191505b81811015611149575f81556001016128ee565b6001600160401b03831115612918576129186124c6565b61292c836129268354612885565b836128bd565b5f601f84116001811461295d575f85156129465750838201355b5f19600387901b1c1916600186901b178355611149565b5f83815260208120601f198716915b8281101561298c578685013582556020948501946001909201910161296c565b50868210156129a8575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b604081525f6129f56040830186886129ba565b8281036020840152612a088185876129ba565b979650505050505050565b634e487b7160e01b5f52603260045260245ffd5b602081525f6114f66020830184866129ba565b5f6001600160401b03808316818103612a5557612a5561284f565b6001019392505050565b81516001600160401b03811115612a7857612a786124c6565b612a8c81612a868454612885565b846128bd565b602080601f831160018114612abf575f8415612aa85750858301515b5f19600386901b1c1916600185901b178555612b16565b5f85815260208120601f198616915b82811015612aed57888601518255948401946001909101908401612ace565b5085821015612b0a57878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b604081525f612b3060408301866123e3565b8281036020840152612b438185876129ba565b9695505050505050565b5f60208284031215612b5d575f80fd5b8151610d8c81612596565b5f61ffff821680612b7b57612b7b61284f565b5f190192915050565b604081525f612b9660408301856123e3565b905061ffff831660208301529392505050565b5f61ffff808316818103612a5557612a5561284f565b606081525f612bd160608301866123e3565b61ffff851660208401528281036040840152612b4381856123e3565b808201808211156105705761057061284f565b5f808335601e19843603018112612c15575f80fd5b8301803591506001600160401b03821115612c2e575f80fd5b602001915036819003821315610bae575f80fd5b5f8085851115612c50575f80fd5b83861115612c5c575f80fd5b5050820193919092039150565b80356020831015610570575f19602084900360031b1b1692915050565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{}},"0xf3810eb7d64d1c11ae12727d957c6202b24492f5":{"nonce":1,"balance":"0x0","code":"0x6080604052348015600e575f80fd5b50600436106030575f3560e01c806350d25bcd146034578063e5c19b2d146048575b5f80fd5b5f5460405190815260200160405180910390f35b605760533660046059565b5f55565b005b5f602082840312156068575f80fd5b503591905056fea164736f6c6343000818000a","storage":{"0x0":"0x5f5e100"}},"0xf670681605efc4efc804f5a9b97ee89520473d56":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c80638da5cb5b11610088578063c66485b211610063578063c66485b2146101da578063da8c229e146101ed578063e0dba60f1461021f578063f2fde38b14610232575f80fd5b80638da5cb5b146101a4578063bffbe61c146101b4578063c47f0027146101c7575f80fd5b806365669631116100c35780636566963114610161578063715018a6146101745780637a806d6b1461017e578063828eab0e14610191575f80fd5b80630f5a5466146100e95780631e83409a1461010f5780633f15457f14610122575b5f80fd5b6100fc6100f7366004610958565b610245565b6040519081526020015b60405180910390f35b6100fc61011d36600461098f565b610258565b6101497f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a981565b6040516001600160a01b039091168152602001610106565b6100fc61016f3660046109aa565b610279565b61017c610526565b005b6100fc61018c366004610a8f565b610539565b600254610149906001600160a01b031681565b5f546001600160a01b0316610149565b6100fc6101c236600461098f565b6105ae565b6100fc6101d5366004610b00565b610608565b61017c6101e836600461098f565b610624565b61020f6101fb36600461098f565b60016020525f908152604090205460ff1681565b6040519015158152602001610106565b61017c61022d366004610b47565b6106e4565b61017c61024036600461098f565b61074a565b5f610251338484610279565b9392505050565b6002545f9061027390339084906001600160a01b0316610279565b92915050565b5f836001600160a01b0381163314806102a05750335f9081526001602052604090205460ff165b80610334575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063e985e9c590604401602060405180830381865afa158015610310573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103349190610b73565b806103435750610343816107c3565b6103e05760405162461bcd60e51b815260206004820152605b60248201527f526576657273655265676973747261723a2043616c6c6572206973206e6f742060448201527f6120636f6e74726f6c6c6572206f7220617574686f726973656420627920616460648201527f6472657373206f7220746865206164647265737320697473656c660000000000608482015260a4015b60405180910390fd5b5f6103ea8661083a565b604080517f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e2602080830191909152818301849052825180830384018152606090920192839052815191012091925081906001600160a01b038916907f6ada868dd3058cf77a48a74489fd7963688e5464b2b0fa957ace976243270e92905f90a36040516305ef2c7f60e41b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26004820152602481018390526001600160a01b03878116604483015286811660648301525f60848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610505575f80fd5b505af1158015610517573d5f803e3d5ffd5b50929998505050505050505050565b61052e61089c565b6105375f6108f5565b565b5f80610546868686610279565b604051637737221360e01b81529091506001600160a01b038516906377372213906105779084908790600401610b8e565b5f604051808303815f87803b15801561058e575f80fd5b505af11580156105a0573d5f803e3d5ffd5b509298975050505050505050565b5f7f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26105d98361083a565b604080516020810193909352820152606001604051602081830303815290604052805190602001209050919050565b6002545f9061027390339081906001600160a01b031685610539565b61062c61089c565b6001600160a01b03811661069b5760405162461bcd60e51b815260206004820152603060248201527f526576657273655265676973747261723a205265736f6c76657220616464726560448201526f07373206d757374206e6f7420626520360841b60648201526084016103d7565b600280546001600160a01b0319166001600160a01b0383169081179091556040517feae17a84d9eb83d8c8eb317f9e7d64857bc363fa51674d996c023f4340c577cf905f90a250565b6106ec61089c565b6001600160a01b0382165f81815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b61075261089c565b6001600160a01b0381166107b75760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016103d7565b6107c0816108f5565b50565b5f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801561081e575060408051601f3d908101601f1916820190925261081b91810190610be2565b60015b61082957505f919050565b6001600160a01b0316331492915050565b5f60285b8015610891575f19016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a81536010909204915f19016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a815360108304925061083e565b505060285f20919050565b5f546001600160a01b031633146105375760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016103d7565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146107c0575f80fd5b5f8060408385031215610969575f80fd5b823561097481610944565b9150602083013561098481610944565b809150509250929050565b5f6020828403121561099f575f80fd5b813561025181610944565b5f805f606084860312156109bc575f80fd5b83356109c781610944565b925060208401356109d781610944565b915060408401356109e781610944565b809150509250925092565b634e487b7160e01b5f52604160045260245ffd5b5f82601f830112610a15575f80fd5b813567ffffffffffffffff80821115610a3057610a306109f2565b604051601f8301601f19908116603f01168101908282118183101715610a5857610a586109f2565b81604052838152866020858801011115610a70575f80fd5b836020870160208301375f602085830101528094505050505092915050565b5f805f8060808587031215610aa2575f80fd5b8435610aad81610944565b93506020850135610abd81610944565b92506040850135610acd81610944565b9150606085013567ffffffffffffffff811115610ae8575f80fd5b610af487828801610a06565b91505092959194509250565b5f60208284031215610b10575f80fd5b813567ffffffffffffffff811115610b26575f80fd5b610b3284828501610a06565b949350505050565b80151581146107c0575f80fd5b5f8060408385031215610b58575f80fd5b8235610b6381610944565b9150602083013561098481610b3a565b5f60208284031215610b83575f80fd5b815161025181610b3a565b8281525f60206040602084015283518060408501525f5b81811015610bc157858101830151858201606001528201610ba5565b505f606082860101526060601f19601f830116850101925050509392505050565b5f60208284031215610bf2575f80fd5b81516102518161094456fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2":"0x9df67c91f1bfcb4d966cf764e9218685e7c59e8a","0x1f5b7623941da966ad7183d9cbb6db584f6d4add26919ac31a2d3f19a164e7e1":"0x1","0xbe5de2149ce76ca5934fa63455cd675fd52e2d30f3328985d298a627ca0f05e9":"0x1"}},"0xf8c26340c1eaea6c7ff1760b25005e1306953572":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061010b5760003560e01c80638c87a4ea116100a2578063b87abc1111610071578063b87abc1114610244578063c597407314610257578063ce92b33e1461026a578063e837ae741461027d578063ec129eea146102905761010b565b80638c87a4ea146101ea5780638f69c188146101fd578063a3557e6c14610210578063b85afd28146102235761010b565b806347c81699116100de57806347c8169914610181578063672b9f81146101945780636ccbae5f146101b55780637b103999146101d55761010b565b80631bd8cc1a146101105780631be5e7ed146101395780632c3d376d14610159578063310bd74b1461016c575b600080fd5b61012361011e3660046117b4565b6102a3565b6040516101309190611eee565b60405180910390f35b61014c610147366004611aec565b6104f2565b6040516101309190611fd6565b61014c610167366004611b21565b610673565b61017f61017a366004611b21565b610714565b005b61017f61018f3660046119b5565b6107c0565b6101a76101a2366004611b94565b6108ef565b604051610130929190611fe7565b6101c86101c3366004611b21565b6109c3565b604051610130919061204c565b6101dd6109d5565b6040516101309190611ea9565b6101236101f836600461191d565b6109e5565b61017f61020b366004611878565b610a74565b61017f61021e366004611878565b610af0565b610236610231366004611951565b610b1b565b604051610130929190611eff565b61017f610252366004611b3f565b610ca9565b61017f610265366004611a39565b610d43565b61017f610278366004611808565b610df9565b61017f61028b366004611808565b610e97565b61017f61029e366004611808565b610f4e565b60015460405163b3f9e4cb60e01b815260609183916001600160a01b039091169063b3f9e4cb906102d890849060040161204c565b60206040518083038186803b1580156102f057600080fd5b505afa158015610304573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610328919081019061178e565b6001600160a01b0316306001600160a01b0316146103615760405162461bcd60e51b81526004016103589061201c565b60405180910390fd5b604080518581526020808702820101909152849060609082801561039957816020015b60608152602001906001900390816103845790505b506000868152600360205260408120549192505b838110156104e557600087815260026020908152604080832085845290915290208989838181106103da57fe5b602002820190508035601e19368490030181126103f657600080fd5b909101602081019150356001600160401b0381111561041457600080fd5b3681900382131561042457600080fd5b604051610432929190611e70565b9081526040805160209281900383018120805460026001821615610100026000190190911604601f810185900485028301850190935282825290929091908301828280156104c15780601f10610496576101008083540402835291602001916104c1565b820191906000526020600020905b8154815290600101906020018083116104a457829003601f168201915b50505050508382815181106104d257fe5b60209081029190910101526001016103ad565b5090979650505050505050565b60015460405163b3f9e4cb60e01b815260609183916001600160a01b039091169063b3f9e4cb9061052790849060040161204c565b60206040518083038186803b15801561053f57600080fd5b505afa158015610553573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610577919081019061178e565b6001600160a01b0316306001600160a01b0316146105a75760405162461bcd60e51b81526004016103589061201c565b6000838152600260209081526040808320600383528184205484529091529081902090516105d6908690611e7d565b9081526040805160209281900383018120805460026001821615610100026000190190911604601f810185900485028301850190935282825290929091908301828280156106655780601f1061063a57610100808354040283529160200191610665565b820191906000526020600020905b81548152906001019060200180831161064857829003601f168201915b505050505091505092915050565b60008181526004602090815260409182902080548351601f60026000196101006001861615020190931692909204918201849004840281018401909452808452606093928301828280156107085780601f106106dd57610100808354040283529160200191610708565b820191906000526020600020905b8154815290600101906020018083116106eb57829003601f168201915b50505050509050919050565b60015460405163430c208160e01b815282916001600160a01b03169063430c2081906107469033908590600401611ec5565b60206040518083038186803b15801561075e57600080fd5b505afa158015610772573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506107969190810190611997565b6107b25760405162461bcd60e51b81526004016103589061202c565b6107bc4283610fec565b5050565b60015460405163430c208160e01b815282916001600160a01b03169063430c2081906107f29033908590600401611ec5565b60206040518083038186803b15801561080a57600080fd5b505afa15801561081e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506108429190810190611997565b61085e5760405162461bcd60e51b81526004016103589061202c565b6108e7600360008481526020019081526020016000205487878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061108e915050565b505050505050565b60015460405163b3f9e4cb60e01b8152606091829184916001600160a01b03169063b3f9e4cb9061092490849060040161204c565b60206040518083038186803b15801561093c57600080fd5b505afa158015610950573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610974919081019061178e565b6001600160a01b0316306001600160a01b0316146109a45760405162461bcd60e51b81526004016103589061201c565b6109ad85610673565b92506109b983856104f2565b9150509250929050565b60009081526020819052604090205490565b6001546001600160a01b03165b90565b6060600082519050606081604051908082528060200260200182016040528015610a2357816020015b6060815260200190600190039081610a0e5790505b50905060005b82811015610a6c57610a4d858281518110610a4057fe5b6020026020010151610673565b828281518110610a5957fe5b6020908102919091010152600101610a29565b509392505050565b610acf63ce92b33e60e01b858585604051602401610a9493929190611f24565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092178252519020838361129f565b600082815260036020526040902054610aea908585856113c3565b50505050565b610b1063ec129eea60e01b858585604051602401610a9493929190611f24565b610aea84848461140a565b60015460405163b3f9e4cb60e01b8152606091829184916001600160a01b03169063b3f9e4cb90610b5090849060040161204c565b60206040518083038186803b158015610b6857600080fd5b505afa158015610b7c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610ba0919081019061178e565b6001600160a01b0316306001600160a01b031614610bd05760405162461bcd60e51b81526004016103589061201c565b8451604080518281526020808402820101909152818015610c0557816020015b6060815260200190600190039081610bf05790505b50935080604051908082528060200260200182016040528015610c3c57816020015b6060815260200190600190039081610c275790505b50925060005b81811015610c9f57610c67878281518110610c5957fe5b6020026020010151876108ef565b8651879084908110610c7557fe5b60200260200101868481518110610c8857fe5b602090810291909101019190915252600101610c42565b5050509250929050565b610d3463310bd74b60e01b84604051602401610cc5919061204c565b60408051601f19818403018152918152602080830180516001600160e01b03166001600160e01b031990951694909417845291519092208251601f8601839004830281018301909352848352918691869086908190840183828082843760009201919091525061129f92505050565b610d3e4284610fec565b505050565b610d676347c8169960e01b8888888888604051602401610cc5959493929190611f96565b610df0600360008581526020019081526020016000205488888080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8c018190048102820181019092528a815292508a915089908190840183828082843760009201919091525089925061108e915050565b50505050505050565b60015460405163430c208160e01b815282916001600160a01b03169063430c208190610e2b9033908590600401611ec5565b60206040518083038186803b158015610e4357600080fd5b505afa158015610e57573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610e7b9190810190611997565b610acf5760405162461bcd60e51b81526004016103589061202c565b6005546040516355138f0d60e11b81526001600160a01b039091169063aa271e1a90610ec7903390600401611eb7565b60206040518083038186803b158015610edf57600080fd5b505afa158015610ef3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610f179190810190611997565b610f335760405162461bcd60e51b81526004016103589061203c565b600081815260036020526040902054610d3e908484846113c3565b60015460405163430c208160e01b815282916001600160a01b03169063430c208190610f809033908590600401611ec5565b60206040518083038186803b158015610f9857600080fd5b505afa158015610fac573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610fd09190810190611997565b610b105760405162461bcd60e51b81526004016103589061202c565b600081815260036020526040808220849055600154905163538361a760e01b81526001600160a01b039091169163538361a79161102d91859160040161205a565b600060405180830381600087803b15801561104757600080fd5b505af115801561105b573d6000803e3d6000fd5b50506040518392507f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9150600090a25050565b825160208085019190912060008381526002835260408082208883529093528281209251919290916110c1908790611e7d565b908152604051602091819003919091018120546001805463538361a760e01b84526002918316156101000260001901909216041592506001600160a01b03169063538361a7906111179086908690600401612075565b600060405180830381600087803b15801561113157600080fd5b505af1158015611145573d6000803e3d6000fd5b50505060008481526002602090815260408083208a8452909152908190209051869250611173908890611e7d565b90815260200160405180910390209080519060200190611194929190611521565b50600082815260046020526040902054600260001961010060018416150201909116046111dc57600082815260046020908152604090912086516111da92880190611521565b505b801561123157846040516111f09190611e7d565b6040518091039020837f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f86876040516112289190611fd6565b60405180910390a35b8360405161123f9190611e7d565b6040518091039020856040516112559190611e7d565b6040518091039020847f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d92888860405161128f929190611fe7565b60405180910390a4505050505050565b6000828152602081815260408083205490519092916112f59185916112e9916112ce918a913091899101611e39565b60405160208183030381529060405280519060200120611414565b9063ffffffff61144416565b90506001600160a01b0381161580159061138c575060015460405163430c208160e01b81526001600160a01b039091169063430c20819061133c9084908890600401611ee0565b60206040518083038186803b15801561135457600080fd5b505afa158015611368573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061138c9190810190611997565b6113a85760405162461bcd60e51b81526004016103589061200c565b50505060009081526020819052604090208054600101905550565b825160005b818110156108e757611402868683815181106113e057fe5b60200260200101518684815181106113f457fe5b60200260200101518661108e565b6001016113c8565b610f334282610fec565b6000816040516020016114279190611e89565b604051602081830303815290604052805190602001209050919050565b600081516041146114575750600061151b565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a082111561149d576000935050505061151b565b8060ff16601b141580156114b557508060ff16601c14155b156114c6576000935050505061151b565b600186828585604051600081526020016040526040516114e99493929190611f58565b6020604051602081039080840390855afa15801561150b573d6000803e3d6000fd5b5050506020604051035193505050505b92915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061156257805160ff191683800117855561158f565b8280016001018555821561158f579182015b8281111561158f578251825591602001919060010190611574565b5061159b92915061159f565b5090565b6109e291905b8082111561159b57600081556001016115a5565b805161151b816121a4565b60008083601f8401126115d657600080fd5b5081356001600160401b038111156115ed57600080fd5b60208301915083602082028301111561160557600080fd5b9250929050565b600082601f83011261161d57600080fd5b813561163061162b826120a9565b612083565b81815260209384019390925082018360005b8381101561166e57813586016116588882611734565b8452506020928301929190910190600101611642565b5050505092915050565b600082601f83011261168957600080fd5b813561169761162b826120a9565b915081818352602084019350602081019050838560208402820111156116bc57600080fd5b60005b8381101561166e57816116d28882611783565b84525060209283019291909101906001016116bf565b805161151b816121bb565b60008083601f84011261170557600080fd5b5081356001600160401b0381111561171c57600080fd5b60208301915083600182028301111561160557600080fd5b600082601f83011261174557600080fd5b813561175361162b826120c9565b9150808252602083016020830185838301111561176f57600080fd5b61177a83828461214b565b50505092915050565b803561151b816121c4565b6000602082840312156117a057600080fd5b60006117ac84846115b9565b949350505050565b6000806000604084860312156117c957600080fd5b83356001600160401b038111156117df57600080fd5b6117eb868287016115c4565b935093505060206117fe86828701611783565b9150509250925092565b60008060006060848603121561181d57600080fd5b83356001600160401b0381111561183357600080fd5b61183f8682870161160c565b93505060208401356001600160401b0381111561185b57600080fd5b6118678682870161160c565b92505060406117fe86828701611783565b6000806000806080858703121561188e57600080fd5b84356001600160401b038111156118a457600080fd5b6118b08782880161160c565b94505060208501356001600160401b038111156118cc57600080fd5b6118d88782880161160c565b93505060406118e987828801611783565b92505060608501356001600160401b0381111561190557600080fd5b61191187828801611734565b91505092959194509250565b60006020828403121561192f57600080fd5b81356001600160401b0381111561194557600080fd5b6117ac84828501611678565b6000806040838503121561196457600080fd5b82356001600160401b0381111561197a57600080fd5b61198685828601611678565b92505060206109b985828601611783565b6000602082840312156119a957600080fd5b60006117ac84846116e8565b6000806000806000606086880312156119cd57600080fd5b85356001600160401b038111156119e357600080fd5b6119ef888289016116f3565b955095505060208601356001600160401b03811115611a0d57600080fd5b611a19888289016116f3565b93509350506040611a2c88828901611783565b9150509295509295909350565b60008060008060008060006080888a031215611a5457600080fd5b87356001600160401b03811115611a6a57600080fd5b611a768a828b016116f3565b975097505060208801356001600160401b03811115611a9457600080fd5b611aa08a828b016116f3565b95509550506040611ab38a828b01611783565b93505060608801356001600160401b03811115611acf57600080fd5b611adb8a828b016116f3565b925092505092959891949750929550565b60008060408385031215611aff57600080fd5b82356001600160401b03811115611b1557600080fd5b61198685828601611734565b600060208284031215611b3357600080fd5b60006117ac8484611783565b600080600060408486031215611b5457600080fd5b6000611b608686611783565b93505060208401356001600160401b03811115611b7c57600080fd5b611b88868287016116f3565b92509250509250925092565b60008060408385031215611ba757600080fd5b60006119868585611783565b6000611bbf8383611ccb565b9392505050565b611bcf8161212a565b82525050565b611bcf81612108565b611bcf611bea82612108565b612183565b6000611bfa826120f6565b611c0481856120fa565b935083602082028501611c16856120f0565b8060005b85811015611c505784840389528151611c338582611bb3565b9450611c3e836120f0565b60209a909a0199925050600101611c1a565b5091979650505050505050565b611bcf816109e2565b611bcf611c72826109e2565b6109e2565b611bcf81612135565b6000611c8c83856120fa565b9350611c9983858461214b565b611ca283612194565b9093019392505050565b6000611cb88385612103565b9350611cc583858461214b565b50500190565b6000611cd6826120f6565b611ce081856120fa565b9350611cf0818560208601612157565b611ca281612194565b6000611d04826120f6565b611d0e8185612103565b9350611d1e818560208601612157565b9290920192915050565b6000611d35601c83612103565b7f19457468657265756d205369676e6564204d6573736167653a0a3332000000008152601c0192915050565b6000611d6e6011836120fa565b70494e56414c49445f5349474e415455524560781b815260200192915050565b6000611d9b601d836120fa565b7f5245534f4c5645525f44455441434845445f46524f4d5f444f4d41494e000000815260200192915050565b6000611dd4601f836120fa565b7f53454e4445525f49535f4e4f545f415050524f5645445f4f525f4f574e455200815260200192915050565b6000611e0d6014836120fa565b7329a2a72222a92fa4a9afa727aa2fa6a4a72a22a960611b815260200192915050565b611bcf81612124565b6000611e458286611c66565b602082019150611e558285611bde565b601482019150611e658284611c66565b506020019392505050565b60006117ac828486611cac565b6000611bbf8284611cf9565b6000611e9482611d28565b9150611ea08284611c66565b50602001919050565b6020810161151b8284611bd5565b6020810161151b8284611bc6565b60408101611ed38285611bc6565b611bbf6020830184611c5d565b60408101611ed38285611bd5565b60208082528101611bbf8184611bef565b60408082528101611f108185611bef565b905081810360208301526117ac8184611bef565b60608082528101611f358186611bef565b90508181036020830152611f498185611bef565b90506117ac6040830184611c5d565b60808101611f668287611c5d565b611f736020830186611e30565b611f806040830185611c5d565b611f8d6060830184611c5d565b95945050505050565b60608082528101611fa8818789611c80565b90508181036020830152611fbd818587611c80565b9050611fcc6040830184611c5d565b9695505050505050565b60208082528101611bbf8184611ccb565b60408082528101611ff88185611ccb565b905081810360208301526117ac8184611ccb565b6020808252810161151b81611d61565b6020808252810161151b81611d8e565b6020808252810161151b81611dc7565b6020808252810161151b81611e00565b6020810161151b8284611c5d565b604081016120688285611c5d565b611bbf6020830184611c77565b60408101611ed38285611c5d565b6040518181016001600160401b03811182821017156120a157600080fd5b604052919050565b60006001600160401b038211156120bf57600080fd5b5060209081020190565b60006001600160401b038211156120df57600080fd5b506020601f91909101601f19160190565b60200190565b5190565b90815260200190565b919050565b600061151b82612118565b151590565b6001600160a01b031690565b60ff1690565b600061151b82612140565b600061151b826109e2565b600061151b82612108565b82818337506000910152565b60005b8381101561217257818101518382015260200161215a565b83811115610aea5750506000910152565b600061151b82600061151b8261219e565b601f01601f191690565b60601b90565b6121ad81612108565b81146121b857600080fd5b50565b6121ad81612113565b6121ad816109e256fea365627a7a723158207a1d8dfd286d14fcafd1812a4c44813691ac746a5a23fa711ac5551c9509654d6c6578706572696d656e74616cf564736f6c634300050c0040","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x5":"0x4a3c194eb88966178bfdd81744dddafed611b830"}},"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa":{"nonce":93,"balance":"0x35aac60bbae01d424b","code":"0x","storage":{}}},"best_block_number":"0x5d"} \ No newline at end of file diff --git a/scripts/deploy_SeaportProxyBuyer.ts b/scripts/deploy_SeaportProxyBuyer.ts new file mode 100644 index 00000000..3e16f2e1 --- /dev/null +++ b/scripts/deploy_SeaportProxyBuyer.ts @@ -0,0 +1,32 @@ +import { network } from 'hardhat'; +import { NameService, getNetworkConfig, mergeNetworkConfig } from '../src/config'; +import { Deployer } from '../src/deployer'; +import { unwrap } from '../src/utils'; + +async function main () { + console.log('Network:', network.name); + + const chainId: number = unwrap(network.config, 'chainId'); + if (![137].includes(chainId)) { + throw new Error(`Unsupported network ${chainId}`); + } + + const config = getNetworkConfig(chainId, NameService.UNS); + + if (!config) { + throw new Error(`Config not found for network ${chainId}`); + } + + const deployer = await Deployer.create(); + const deployConfig = await deployer.execute(['seaport_proxy_buyer'], config); + mergeNetworkConfig(deployConfig, NameService.UNS); + + console.log('Deployed!'); +} + +main() + .then(() => process.exit(0)) + .catch((error) => { + console.error(error); + process.exit(1); + }); diff --git a/src/tasks.ts b/src/tasks.ts index 3c97d7b4..452cfefe 100644 --- a/src/tasks.ts +++ b/src/tasks.ts @@ -1,9 +1,17 @@ import { network, upgrades, ethers, defender } from 'hardhat'; -import { Contract, keccak256, namehash, parseEther } from 'ethers'; +import { Contract, keccak256, namehash, parseEther, parseUnits } from 'ethers'; import { merge } from 'lodash'; import { getContractAddress } from '@openzeppelin/hardhat-upgrades/dist/utils'; import { ZERO_ADDRESS, ZERO_WORD } from '../test/helpers/constants'; -import { ENSCustody, MintingManager, ProxyReader, UNSOperator, UNSRegistry, ZilliqaRecover } from '../types'; +import { + ENSCustody, + MintingManager, + ProxyReader, + UNSOperator, + UNSRegistry, + ZilliqaRecover, + SeaportProxyBuyer, +} from '../types'; import { Deployer } from './deployer'; import { ArtifactName, DependenciesMap, EnsContractName, UnsContractName, NsNetworkConfig } from './types'; import verify from './verify'; @@ -1061,6 +1069,100 @@ const fundENSCustodyTask: Task = { }, }; +const deploySeaportTask: Task = { + tags: ['seaport', 'full'], + priority: 10, + run: async (ctx: Deployer) => { + const { owner } = ctx.accounts; + + if (!isSandbox) { + throw new Error('This task is only available for sandbox'); + } + + const conduitController = await ethers.deployContract(ArtifactName.ConduitController, [], owner); + const seaport = await ethers.deployContract(ArtifactName.Seaport, [await conduitController.getAddress()], owner); + await seaport.waitForDeployment(); + await ctx.saveContractConfig(UnsContractName.Seaport, seaport); + }, + ensureDependencies: () => ({}), +}; + +const deployUsdcMockTask: Task = { + tags: ['erc20_mock', 'full'], + priority: 10, + run: async (ctx: Deployer) => { + const { owner } = ctx.accounts; + + if (!isSandbox) { + throw new Error('This task is only available for sandbox'); + } + + const usdcMock = await ethers.deployContract(ArtifactName.ERC20Mock, [], owner); + await usdcMock.waitForDeployment(); + await ctx.saveContractConfig(UnsContractName.ERC20Mock, usdcMock); + }, + ensureDependencies: () => ({}), +}; + +const deploySeaportProxyBuyerTask: Task = { + tags: ['seaport_proxy_buyer', 'full'], + priority: 25, + run: async (ctx: Deployer, dependencies: DependenciesMap) => { + const { owner } = ctx.accounts; + const [Seaport] = unwrapDependencies(dependencies, [UnsContractName.Seaport]); + const seaportProxyBuyer = await deployProxy( + await ethers.getContractFactory(ArtifactName.SeaportProxyBuyer, owner), + [Seaport.address], + ); + await seaportProxyBuyer.waitForDeployment(); + const proxyAdmin = await upgrades.admin.getInstance(); + const seaportProxyBuyerImpl = await proxyAdmin.getProxyImplementation.staticCall( + await seaportProxyBuyer.getAddress(), + ); + await ctx.saveContractConfig( + UnsContractName.SeaportProxyBuyer, + seaportProxyBuyer, + seaportProxyBuyerImpl, + seaportProxyBuyer, + ); + }, + ensureDependencies: (ctx: Deployer, config?: NsNetworkConfig): DependenciesMap => { + config = merge(ctx.getDeployConfig(), config); + + return ensureDeployed(config, UnsContractName.Seaport); + }, +}; + +const fundSeaportProxyBuyerTask: Task = { + tags: ['fund_seaport_proxy_buyer', 'full'], + priority: 30, + run: async (ctx: Deployer, dependencies: DependenciesMap) => { + const { owner } = ctx.accounts; + + if (!isSandbox) { + throw new Error('This task is only available for sandbox'); + } + + const [SeaportProxyBuyer, ERC20Mock] = unwrapDependencies(dependencies, [ + UnsContractName.SeaportProxyBuyer, + UnsContractName.ERC20Mock, + ]); + const erc20MockContract = await ethers.getContractAt(UnsContractName.ERC20Mock, ERC20Mock.address, owner); + await erc20MockContract.mint(SeaportProxyBuyer.address, parseUnits('1000000', 6)); // 1M USDC + const seaportProxyBuyerContract = await ethers.getContractAt( + UnsContractName.SeaportProxyBuyer, + SeaportProxyBuyer.address, + owner, + ); + await seaportProxyBuyerContract.approve(ERC20Mock.address); + }, + ensureDependencies: (ctx: Deployer, config?: NsNetworkConfig): DependenciesMap => { + config = merge(ctx.getDeployConfig(), config); + + return ensureDeployed(config, UnsContractName.SeaportProxyBuyer, UnsContractName.ERC20Mock); + }, +}; + export const tasks: Task[] = [ deployCNSTask, deployCNSForwardersTask, @@ -1085,4 +1187,8 @@ export const tasks: Task[] = [ proposeENSCustodyTask, fundENSCustodyTask, deployZilliqaRecoverTask, + deploySeaportTask, + deploySeaportProxyBuyerTask, + deployUsdcMockTask, + fundSeaportProxyBuyerTask, ]; diff --git a/src/types.ts b/src/types.ts index 774c7e38..2696129d 100644 --- a/src/types.ts +++ b/src/types.ts @@ -21,6 +21,10 @@ export enum ArtifactName { RootChainManager = 'RootChainManager', DotCoinBurner = 'DotCoinBurner', ZilliqaRecover = 'ZilliqaRecover', + Seaport = 'Seaport', + SeaportProxyBuyer = 'SeaportProxyBuyer', + ConduitController = 'ConduitController', + ERC20Mock = 'ERC20Mock', // ENS ENSRegistry = 'ENSRegistry', @@ -64,6 +68,9 @@ export enum UnsContractName { RootChainManager = 'RootChainManager', DotCoinBurner = 'DotCoinBurner', ZilliqaRecover = 'ZilliqaRecover', + Seaport = 'Seaport', + SeaportProxyBuyer = 'SeaportProxyBuyer', + ERC20Mock = 'ERC20Mock', } export enum EnsContractName { diff --git a/uns-config.json b/uns-config.json index 3d0b9068..e6c2de7d 100644 --- a/uns-config.json +++ b/uns-config.json @@ -118,6 +118,20 @@ "address": "0x0000000000000000000000000000000000000000", "legacyAddresses": [], "deploymentBlock": "0x0" + }, + "Seaport": { + "address": "0x0000000000000068F116a894984e2DB1123eB395", + "deploymentBlock": "0x0" + }, + "ERC20Mock": { + "address": "0x0000000000000000000000000000000000000000", + "deploymentBlock": "0x0" + }, + "SeaportProxyBuyer": { + "address": "0x0000000000000000000000000000000000000000", + "deploymentBlock": "0x0", + "implementation": "0x0000000000000000000000000000000000000000", + "forwarder": "0x0000000000000000000000000000000000000000" } } }, @@ -232,6 +246,20 @@ "deploymentBlock": "0x032b35a6", "implementation": "0x50752EcBedBb07543C4191E2492e2e888a7D04bD", "forwarder": "0x07B58C81f160257BCb3a2d549ea02D36E3e70461" + }, + "Seaport": { + "address": "0x0000000000000068F116a894984e2DB1123eB395", + "deploymentBlock": "0x0" + }, + "ERC20Mock": { + "address": "0x0000000000000000000000000000000000000000", + "deploymentBlock": "0x0" + }, + "SeaportProxyBuyer": { + "address": "0x0000000000000000000000000000000000000000", + "deploymentBlock": "0x0", + "implementation": "0x0000000000000000000000000000000000000000", + "forwarder": "0x0000000000000000000000000000000000000000" } } }, @@ -304,10 +332,10 @@ "forwarder": "0x11dD97b7Ca847DfB6504e61B7B9Eb30F55E554a0" }, "ProxyReader": { - "address": "0x5CC819C9915eADfcEBd76952B8C1BC36CADd7376", - "implementation": "0xBDeFCF6429D0AC68236A6BEb321cBD2Ce66B463C", + "address": "0x0930ffb2c192B0C9A9dd2372Cf7f2845ef39CBb6", + "implementation": "0xbE92182CAB5b84Fd18b34881A0c32771e84f5b8B", "legacyAddresses": [], - "deploymentBlock": "0x1f" + "deploymentBlock": "0x22" }, "TwitterValidationOperator": { "address": "0x0000000000000000000000000000000000000000", @@ -331,16 +359,30 @@ "deploymentBlock": "0x0f" }, "DotCoinBurner": { - "address": "0xEE9A59532B50514d4Cb2440b19E9539b6380CEcf", + "address": "0x4Eb9dE1Fc0d800e941F326d6699E9E11969557ea", "legacyAddresses": [], - "deploymentBlock": "0x2a" + "deploymentBlock": "0x31" }, "ZilliqaRecover": { - "address": "0x70fDaD6FB674d2EbAa36719839aCf496843994A2", - "deploymentBlock": "0x25", - "implementation": "0x56b793E4aD031Dd3EFeF272dc133D212d5fBddc3", + "address": "0x00e39A5004299871aB3b00FeD5A39a715F181d02", + "deploymentBlock": "0x2c", + "implementation": "0xD178b720229c39De617846F84cf9c8D32a63a23D", "legacyAddresses": [], - "forwarder": "0x70fDaD6FB674d2EbAa36719839aCf496843994A2" + "forwarder": "0x00e39A5004299871aB3b00FeD5A39a715F181d02" + }, + "Seaport": { + "address": "0x5CC819C9915eADfcEBd76952B8C1BC36CADd7376", + "deploymentBlock": "0x1f" + }, + "ERC20Mock": { + "address": "0xDa9E1b3e395bFb0A45F03C7F615146B9d896c959", + "deploymentBlock": "0x20" + }, + "SeaportProxyBuyer": { + "address": "0x24F45688D421f46cca60734BdC648ad192dB0f2E", + "deploymentBlock": "0x28", + "implementation": "0x54563a9e1cD2dCBD0BCA90D3CFA4A647e02C404a", + "forwarder": "0x24F45688D421f46cca60734BdC648ad192dB0f2E" } } }, @@ -450,6 +492,20 @@ "deploymentBlock": "0x540d6a", "implementation": "0xBf101Ad6226024D1d26180136311d77387353c71", "forwarder": "0x002380ccAFf852dEF50a176873d50f8019e36FBc" + }, + "Seaport": { + "address": "0x0000000000000068F116a894984e2DB1123eB395", + "deploymentBlock": "0x0" + }, + "ERC20Mock": { + "address": "0x0000000000000000000000000000000000000000", + "deploymentBlock": "0x0" + }, + "SeaportProxyBuyer": { + "address": "0x0000000000000000000000000000000000000000", + "deploymentBlock": "0x0", + "implementation": "0x0000000000000000000000000000000000000000", + "forwarder": "0x0000000000000000000000000000000000000000" } } }, @@ -564,6 +620,20 @@ "address": "0x0000000000000000000000000000000000000000", "legacyAddresses": [], "deploymentBlock": "0x0" + }, + "Seaport": { + "address": "0x0000000000000068F116a894984e2DB1123eB395", + "deploymentBlock": "0x0" + }, + "ERC20Mock": { + "address": "0x0000000000000000000000000000000000000000", + "deploymentBlock": "0x0" + }, + "SeaportProxyBuyer": { + "address": "0x0000000000000000000000000000000000000000", + "deploymentBlock": "0x0", + "implementation": "0x0000000000000000000000000000000000000000", + "forwarder": "0x0000000000000000000000000000000000000000" } } } diff --git a/yarn.lock b/yarn.lock index a5dbf7c7..8bd55f24 100644 --- a/yarn.lock +++ b/yarn.lock @@ -669,6 +669,16 @@ __metadata: languageName: node linkType: hard +"@foundry-rs/easy-foundryup@npm:^0.1.3": + version: 0.1.3 + resolution: "@foundry-rs/easy-foundryup@npm:0.1.3" + dependencies: + command-exists: ^1.2.9 + ts-interface-checker: ^0.1.9 + checksum: 479af448f079f588dda2a693ef70cebeacd98ccd53b6bf2636eb6eb4dd5cdbdc70ee09ac48c76bf58846bc0c07692931765c9fbd6974e20c91b70e25467de0cb + languageName: node + linkType: hard + "@gar/promisify@npm:^1.1.3": version: 1.1.3 resolution: "@gar/promisify@npm:1.1.3" @@ -1579,32 +1589,6 @@ __metadata: languageName: node linkType: hard -"@trufflesuite/bigint-buffer@npm:1.1.10": - version: 1.1.10 - resolution: "@trufflesuite/bigint-buffer@npm:1.1.10" - dependencies: - node-gyp: latest - node-gyp-build: 4.4.0 - checksum: e1dc5e4fbf348a55e660c0055267021eb04cbbdb7f6b0ee983ad32cd4aae1200be448a2ca3963c7d19c7c936d42f66c1ff8b5e4e2332cb1a9e3f870ff818dce4 - languageName: node - linkType: hard - -"@trufflesuite/uws-js-unofficial@npm:20.30.0-unofficial.0": - version: 20.30.0-unofficial.0 - resolution: "@trufflesuite/uws-js-unofficial@npm:20.30.0-unofficial.0" - dependencies: - bufferutil: 4.0.7 - utf-8-validate: 6.0.3 - ws: 8.13.0 - dependenciesMeta: - bufferutil: - optional: true - utf-8-validate: - optional: true - checksum: 67e67140877f89b31c504a057d26853d5780b09c733d92c32480d2f0dfe4e98fb822860f3efeb06f379daecee70d67185f88a7b6f3406d18526e501b36c40fd3 - languageName: node - linkType: hard - "@tsconfig/node10@npm:^1.0.7": version: 1.0.9 resolution: "@tsconfig/node10@npm:1.0.9" @@ -1842,7 +1826,7 @@ __metadata: languageName: node linkType: hard -"@types/lru-cache@npm:5.1.1, @types/lru-cache@npm:^5.1.0": +"@types/lru-cache@npm:^5.1.0": version: 5.1.1 resolution: "@types/lru-cache@npm:5.1.1" checksum: e1d6c0085f61b16ec5b3073ec76ad1be4844ea036561c3f145fc19f71f084b58a6eb600b14128aa95809d057d28f1d147c910186ae51219f58366ffd2ff2e118 @@ -1942,13 +1926,6 @@ __metadata: languageName: node linkType: hard -"@types/seedrandom@npm:3.0.1": - version: 3.0.1 - resolution: "@types/seedrandom@npm:3.0.1" - checksum: d9755452f224a4f5072a1d8738da6c9de3039fc59a2a449b1f658e51087be7b48ada49bcabc8b0f16633c095f55598c32fcd072c448858422a2f6a0566569e4c - languageName: node - linkType: hard - "@types/semver@npm:^7.3.12": version: 7.3.13 resolution: "@types/semver@npm:7.3.13" @@ -2186,35 +2163,6 @@ __metadata: languageName: node linkType: hard -"abstract-level@npm:1.0.3": - version: 1.0.3 - resolution: "abstract-level@npm:1.0.3" - dependencies: - buffer: ^6.0.3 - catering: ^2.1.0 - is-buffer: ^2.0.5 - level-supports: ^4.0.0 - level-transcoder: ^1.0.1 - module-error: ^1.0.1 - queue-microtask: ^1.2.3 - checksum: 70d61a3924526ebc257b138992052f9ff571a6cee5a7660836e37a1cc7081273c3acf465dd2f5e1897b38dc743a6fd9dba14a5d8a2a9d39e5787cd3da99f301d - languageName: node - linkType: hard - -"abstract-leveldown@npm:7.2.0, abstract-leveldown@npm:^7.2.0": - version: 7.2.0 - resolution: "abstract-leveldown@npm:7.2.0" - dependencies: - buffer: ^6.0.3 - catering: ^2.0.0 - is-buffer: ^2.0.5 - level-concat-iterator: ^3.0.0 - level-supports: ^2.0.1 - queue-microtask: ^1.2.3 - checksum: d558111f2d123da95ac80b8ba3b9b0a5bc8cd87296e64b05dca693f5f4839aa0e2fc97bad56a101766f499824e2962611750f8a76bbac4a5db35801968fbbe02 - languageName: node - linkType: hard - "abstract-leveldown@npm:^6.2.1": version: 6.3.0 resolution: "abstract-leveldown@npm:6.3.0" @@ -2731,15 +2679,6 @@ __metadata: languageName: node linkType: hard -"async-eventemitter@npm:0.2.4": - version: 0.2.4 - resolution: "async-eventemitter@npm:0.2.4" - dependencies: - async: ^2.4.0 - checksum: b9e77e0f58ebd7188c50c23d613d1263e0ab501f5e677e02b57cc97d7032beaf60aafa189887e7105569c791e212df4af00b608be1e9a4c425911d577124911e - languageName: node - linkType: hard - "async-limiter@npm:~1.0.0": version: 1.0.1 resolution: "async-limiter@npm:1.0.1" @@ -2763,7 +2702,7 @@ __metadata: languageName: node linkType: hard -"async@npm:^2.0.1, async@npm:^2.4.0": +"async@npm:^2.0.1": version: 2.6.3 resolution: "async@npm:2.6.3" dependencies: @@ -3197,7 +3136,7 @@ __metadata: languageName: node linkType: hard -"bufferutil@npm:4.0.5, bufferutil@npm:^4.0.1": +"bufferutil@npm:^4.0.1": version: 4.0.5 resolution: "bufferutil@npm:4.0.5" dependencies: @@ -3207,16 +3146,6 @@ __metadata: languageName: node linkType: hard -"bufferutil@npm:4.0.7": - version: 4.0.7 - resolution: "bufferutil@npm:4.0.7" - dependencies: - node-gyp: latest - node-gyp-build: ^4.3.0 - checksum: f75aa87e3d1b99b87a95f60a855e63f70af07b57fb8443e75a2ddfef2e47788d130fdd46e3a78fd7e0c10176082b26dfbed970c5b8632e1cc299cafa0e93ce45 - languageName: node - linkType: hard - "bytes@npm:3.1.2": version: 3.1.2 resolution: "bytes@npm:3.1.2" @@ -3348,13 +3277,6 @@ __metadata: languageName: node linkType: hard -"catering@npm:^2.0.0, catering@npm:^2.1.0": - version: 2.1.1 - resolution: "catering@npm:2.1.1" - checksum: 205daefa69c935b0c19f3d8f2e0a520dd69aebe9bda55902958003f7c9cff8f967dfb90071b421bd6eb618576f657a89d2bc0986872c9bc04bbd66655e9d4bd6 - languageName: node - linkType: hard - "cbor@npm:^8.1.0": version: 8.1.0 resolution: "cbor@npm:8.1.0" @@ -3696,7 +3618,7 @@ __metadata: languageName: node linkType: hard -"command-exists@npm:^1.2.8": +"command-exists@npm:^1.2.8, command-exists@npm:^1.2.9": version: 1.2.9 resolution: "command-exists@npm:1.2.9" checksum: 729ae3d88a2058c93c58840f30341b7f82688a573019535d198b57a4d8cb0135ced0ad7f52b591e5b28a90feb2c675080ce916e56254a0f7c15cb2395277cac3 @@ -4426,13 +4348,6 @@ __metadata: languageName: node linkType: hard -"emittery@npm:0.10.0": - version: 0.10.0 - resolution: "emittery@npm:0.10.0" - checksum: 2616a802df51e3f412b9b33f1b43161f7bc96037142cada6ecdbf35ddef1368e30d4f8e47fddc10b0753ccf91d3483b20ebca535b4b1e47526440e13150e2bc7 - languageName: node - linkType: hard - "emoji-regex@npm:^7.0.1": version: 7.0.3 resolution: "emoji-regex@npm:7.0.3" @@ -5993,36 +5908,6 @@ __metadata: languageName: node linkType: hard -"ganache@npm:^7.9.1": - version: 7.9.1 - resolution: "ganache@npm:7.9.1" - dependencies: - "@trufflesuite/bigint-buffer": 1.1.10 - "@trufflesuite/uws-js-unofficial": 20.30.0-unofficial.0 - "@types/bn.js": ^5.1.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 - bufferutil: 4.0.5 - emittery: 0.10.0 - keccak: 3.0.2 - leveldown: 6.1.0 - secp256k1: 4.0.3 - utf-8-validate: 5.0.7 - dependenciesMeta: - bufferutil: - optional: true - utf-8-validate: - optional: true - bin: - ganache: dist/node/cli.js - ganache-cli: dist/node/cli.js - checksum: 5807ef87ce7f82122790075001f6621af69e4a6b0a6a52be40b7cfae97a331b2dca7cfa0f6ebe0f3162cf5e88e393cd4dcb3aefeea7e3131285d9689e52e03ab - languageName: node - linkType: hard - "gauge@npm:^4.0.3": version: 4.0.4 resolution: "gauge@npm:4.0.4" @@ -7115,7 +7000,7 @@ __metadata: languageName: node linkType: hard -"is-buffer@npm:^2.0.5, is-buffer@npm:~2.0.3": +"is-buffer@npm:~2.0.3": version: 2.0.5 resolution: "is-buffer@npm:2.0.5" checksum: 764c9ad8b523a9f5a32af29bdf772b08eb48c04d2ad0a7240916ac2688c983bf5f8504bf25b35e66240edeb9d9085461f9b5dae1f3d2861c6b06a65fe983de42 @@ -7687,7 +7572,7 @@ __metadata: languageName: node linkType: hard -"keccak@npm:3.0.2, keccak@npm:^3.0.0, keccak@npm:^3.0.2": +"keccak@npm:^3.0.0, keccak@npm:^3.0.2": version: 3.0.2 resolution: "keccak@npm:3.0.2" dependencies: @@ -7743,15 +7628,6 @@ __metadata: languageName: node linkType: hard -"level-concat-iterator@npm:^3.0.0": - version: 3.1.0 - resolution: "level-concat-iterator@npm:3.1.0" - dependencies: - catering: ^2.1.0 - checksum: a15bc4c5fbbb30c1efa7fad06b72feaac84d90990b356b461593c198a833336f31f6daff8f40c3908fabd14cfd8856d1c5ecae9e1cb0575037b65fa607e760e9 - languageName: node - linkType: hard - "level-concat-iterator@npm:~2.0.0": version: 2.0.1 resolution: "level-concat-iterator@npm:2.0.1" @@ -7829,20 +7705,6 @@ __metadata: languageName: node linkType: hard -"level-supports@npm:^2.0.1": - version: 2.1.0 - resolution: "level-supports@npm:2.1.0" - checksum: f7b16aea7ddd13326ee4fbc2c1099bcaf8a74dc95346af9ebedea4e02518c6f7a438e829b79b7890d67489b59f615a9428369a0a065021797aa7cb6b6bd84d75 - languageName: node - linkType: hard - -"level-supports@npm:^4.0.0": - version: 4.0.1 - resolution: "level-supports@npm:4.0.1" - checksum: d4552b42bb8cdeada07b0f6356c7a90fefe76279147331f291aceae26e3e56d5f927b09ce921647c0230bfe03ddfbdcef332be921e5c2194421ae2bfa3cf6368 - languageName: node - linkType: hard - "level-supports@npm:~1.0.0": version: 1.0.1 resolution: "level-supports@npm:1.0.1" @@ -7852,16 +7714,6 @@ __metadata: languageName: node linkType: hard -"level-transcoder@npm:^1.0.1": - version: 1.0.1 - resolution: "level-transcoder@npm:1.0.1" - dependencies: - buffer: ^6.0.3 - module-error: ^1.0.1 - checksum: 304f08d802faf3491a533b6d87ad8be3cabfd27f2713bbe9d4c633bf50fcb9460eab5a6776bf015e101ead7ba1c1853e05e7f341112f17a9d0cb37ee5a421a25 - languageName: node - linkType: hard - "level-ws@npm:0.0.0": version: 0.0.0 resolution: "level-ws@npm:0.0.0" @@ -7883,18 +7735,6 @@ __metadata: languageName: node linkType: hard -"leveldown@npm:6.1.0": - version: 6.1.0 - resolution: "leveldown@npm:6.1.0" - dependencies: - abstract-leveldown: ^7.2.0 - napi-macros: ~2.0.0 - node-gyp: latest - node-gyp-build: ^4.3.0 - checksum: e984b61e9fbe057cfd5c81ac0afe5d7e35d695ff130a95991e0ecb66390e4c4ff6aa3980a65b6c53edaba80527a47790bb26e3cfbd52a054957b3546d9941fe4 - languageName: node - linkType: hard - "levelup@npm:^1.2.1": version: 1.3.9 resolution: "levelup@npm:1.3.9" @@ -8651,13 +8491,6 @@ __metadata: languageName: node linkType: hard -"module-error@npm:^1.0.1": - version: 1.0.2 - resolution: "module-error@npm:1.0.2" - checksum: 5d653e35bd55b3e95f8aee2cdac108082ea892e71b8f651be92cde43e4ee86abee4fa8bd7fc3fe5e68b63926d42f63c54cd17b87a560c31f18739295575a3962 - languageName: node - linkType: hard - "ms@npm:2.0.0": version: 2.0.0 resolution: "ms@npm:2.0.0" @@ -8766,13 +8599,6 @@ __metadata: languageName: node linkType: hard -"napi-macros@npm:~2.0.0": - version: 2.0.0 - resolution: "napi-macros@npm:2.0.0" - checksum: 30384819386977c1f82034757014163fa60ab3c5a538094f778d38788bebb52534966279956f796a92ea771c7f8ae072b975df65de910d051ffbdc927f62320c - languageName: node - linkType: hard - "natural-compare-lite@npm:^1.4.0": version: 1.4.0 resolution: "natural-compare-lite@npm:1.4.0" @@ -8857,17 +8683,6 @@ __metadata: languageName: node linkType: hard -"node-gyp-build@npm:4.4.0": - version: 4.4.0 - resolution: "node-gyp-build@npm:4.4.0" - bin: - node-gyp-build: bin.js - node-gyp-build-optional: optional.js - node-gyp-build-test: build-test.js - checksum: 972a059f960253d254e0b23ce10f54c8982236fc0edcab85166d0b7f87443b2ce98391c877cfb2f6eeafcf03c538c5f4dd3e0bfff03828eb48634f58f4c64343 - languageName: node - linkType: hard - "node-gyp-build@npm:^4.2.0, node-gyp-build@npm:^4.3.0": version: 4.5.0 resolution: "node-gyp-build@npm:4.5.0" @@ -9657,7 +9472,7 @@ __metadata: languageName: node linkType: hard -"queue-microtask@npm:^1.2.2, queue-microtask@npm:^1.2.3": +"queue-microtask@npm:^1.2.2": version: 1.2.3 resolution: "queue-microtask@npm:1.2.3" checksum: b676f8c040cdc5b12723ad2f91414d267605b26419d5c821ff03befa817ddd10e238d22b25d604920340fd73efd8ba795465a0377c4adf45a4a41e4234e42dc4 @@ -10239,7 +10054,7 @@ __metadata: languageName: node linkType: hard -"secp256k1@npm:4.0.3, secp256k1@npm:^4.0.0, secp256k1@npm:^4.0.1": +"secp256k1@npm:^4.0.0, secp256k1@npm:^4.0.1": version: 4.0.3 resolution: "secp256k1@npm:4.0.3" dependencies: @@ -11264,6 +11079,13 @@ __metadata: languageName: node linkType: hard +"ts-interface-checker@npm:^0.1.9": + version: 0.1.13 + resolution: "ts-interface-checker@npm:0.1.13" + checksum: 20c29189c2dd6067a8775e07823ddf8d59a33e2ffc47a1bd59a5cb28bb0121a2969a816d5e77eda2ed85b18171aa5d1c4005a6b88ae8499ec7cc49f78571cb5e + languageName: node + linkType: hard + "ts-mocha@npm:^10.0.0": version: 10.0.0 resolution: "ts-mocha@npm:10.0.0" @@ -11702,6 +11524,7 @@ __metadata: "@ensdomains/address-encoder": ^0.2.22 "@ensdomains/ens-contracts": ^0.0.21 "@ethereumjs/tx": ^4.0.1 + "@foundry-rs/easy-foundryup": ^0.1.3 "@nomicfoundation/hardhat-chai-matchers": ^2.0.6 "@nomicfoundation/hardhat-ethers": ^3.0.0 "@nomicfoundation/hardhat-verify": ^1.1.0 @@ -11741,7 +11564,6 @@ __metadata: ethereumjs-tx: ^1.3.7 ethereumjs-util: ^7.1.0 ethers: ^6.11.1 - ganache: ^7.9.1 hardhat: ~2.20.0 hardhat-abi-exporter: ^2.2.1 hardhat-contract-sizer: ~2.6.0 @@ -11800,7 +11622,7 @@ __metadata: languageName: node linkType: hard -"utf-8-validate@npm:5.0.7, utf-8-validate@npm:^5.0.2": +"utf-8-validate@npm:^5.0.2": version: 5.0.7 resolution: "utf-8-validate@npm:5.0.7" dependencies: @@ -11810,16 +11632,6 @@ __metadata: languageName: node linkType: hard -"utf-8-validate@npm:6.0.3": - version: 6.0.3 - resolution: "utf-8-validate@npm:6.0.3" - dependencies: - node-gyp: latest - node-gyp-build: ^4.3.0 - checksum: 5e21383c81ff7469c1912119ca69d07202d944c73ddd8a54b84dddcc546b939054e5101c78c294e494d206fe93bd43428adc635a0660816b3ec9c8ec89286ac4 - languageName: node - linkType: hard - "utf8@npm:3.0.0": version: 3.0.0 resolution: "utf8@npm:3.0.0" From 97924963e3b1e1c5cc6f515e17fcce1f773d9a0a Mon Sep 17 00:00:00 2001 From: derain Date: Tue, 21 May 2024 20:08:49 +0300 Subject: [PATCH 06/21] [REG-1273] - Resolve conflicts with main --- contracts/marketplace/SeaportProxyBuyer.sol | 3 +-- sandbox/db.tgz | Bin 548070 -> 0 bytes sandbox/state.json | 2 +- 3 files changed, 2 insertions(+), 3 deletions(-) delete mode 100644 sandbox/db.tgz diff --git a/contracts/marketplace/SeaportProxyBuyer.sol b/contracts/marketplace/SeaportProxyBuyer.sol index 6a7931b0..15b9b65c 100644 --- a/contracts/marketplace/SeaportProxyBuyer.sol +++ b/contracts/marketplace/SeaportProxyBuyer.sol @@ -79,7 +79,6 @@ contract SeaportProxyBuyer is if (!fulfilled) { revert OrderIsNotFulfiled(); } - return fulfilled; } function approve(address token) external onlyOwner nonReentrant whenNotPaused { @@ -114,5 +113,5 @@ contract SeaportProxyBuyer is } } - uint256[50] __gap; + uint256[50] private __gap; } diff --git a/sandbox/db.tgz b/sandbox/db.tgz deleted file mode 100644 index bac527ed4728642940e1c00f0160847f1e2cb663..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 548070 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

Ol_Dul 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

gx(Kla``Ad2JtAHU^5K>;au zfYMG8P*CY8sB{FR?Hy&+GjT^mMG+LcM!8B6)IGqi3HIK5G?u8*C~9JfEioEabpt-4%iNKJ2mT;p89l}Xdsc49U*tw0kU;p38 z?`hhNNFB}<{3URYR^ANpyMU`|a*;19!4KGpg3yt&oed9p-=0`Vy2uxg6d-puj4q z3RcimGSR@1`9sLNjxrd2V{}c9NJAn_Rf-LyIxV5tFT<1>n@5 z08YJSGWZQRg%Q9hjI{tTA;|&0ouC2Wl&&!VoS>lyoaEZxH7?T21GDl+K%o=iB!(Wu zY0r#$`coOmkdcZC3q5v)zs_^@9yZj+wwvhX#A#-SvoFu8;E|`^bc>5xoj76WHevkAlWEl_xW zs@lYY{58Kyz{Q(gTC?!kMj;A?LMpWa&g%%^ybf`j!Xdv=WD#&asG^Wh^uzWk2HZX_ zMmkHbi=Ez*E0F*fcS=2=&QgOu7ngW#p9^$o0GIyi4IHyOaFNu%J8+p}aChMH4Ko5R zdmGptl<|Peul4T^T-!~bKE1S*6Puk8ik??%U!DFUtdz_q}@f+(d#hP|E0&6$## z5f?w8S4K)qnyzK)s+dmyl#?6~a09kr%?CDj2;f?!>y!ef{{YuD#es+=WQ0)4rz#8? z^sZ;>`ZYDO=6attn_QnsLEtygOWw*L%X*^`hRisLMp!BU0uL4FIgW0dDr~WM<6pJD zcS0@>-)K3w{V(HsR{M+(AilKh)vf4cv(ER2v9Uow(4THmkSzs)N01Fma%3Q=JG?fD z*_o-OLtuFShonQW-Jo;`zGI|AaJd2LDCYse-}OsJ+wd7PW=tzBYl?7a0^hRSb`|^v z+Gc*R^S~F$4jCiGN+>8C>Rmj^DW<1n+tnYok8gXD*~f!+)&}i1K5A-=bvjj3Zdqb$ zd;Y>%>kL(z{m+yrjqK;BC!S|!&_CrfkaU7}UbL=?5N3_6micM>nK_ikp-7>-hP>bH zMtxX6+Rai?p!XrVsnsS6_vko46jD3VSdO77C#PW0A_W_T<#e1NYWB6e`(e$xnX~M3 z!<)=L9Ve^QP9}o81qCHi+Wl)UE4@>3TLpq*nXp3OwnI)&VYf34OkufHM4o1pG&Je? zeD*j&X2<9AK>L)20`~NkS$a~;0Cap48I=?}AUS~!*lUrq%Bv)YJgaZjgZ5H6P59$l)LzH`LB!I_8hH^@31f%FM5fkB4wnIi%z|fs;lh zLTgBtXBO>QjSyz}t+tv;pDXH~-jzx1D(tANEKyq*LmJF8;KNjjC!wN1Vwlzv&f|;u z!1ItniSaTlF{0SaSW#N+08wmoswidveO8)dd*1%1G+W#AKMTn%29HcrGiFRwA57|> zk;0pXI@ZDb!#dW%SK}(~*w!#R6_m(V`>eV?W_FN#V4KV8FjJ!4_@(q2Y4vs(-Za?w z+Yf8JV_T-feBfn6XilN|pyN`azC-Hb#t*6M+Tk6i>Db{Nzt$s=9p6^Fe&=dhW9xMt zwXYckI$oj5nLlO7%a*vwke99F3!SFC%=DT9oy;=Dz{^nvx^{sd+LwT?)6tlF`4M=r zkTl|U(F|J&%VI6R@AZnqbr$_cV*}jg43tkezPhzO#tebWU z5D!?)YG}`vIzEqaUxM7+>;e>zpFajACghLL%P!D0is1%E$6qX?!<#zCGkoFy8^%x> zpmSmUTzMJd+TZ`u4~x9w?hk1h({ar9kf5I*9eq3KLECF_t3vD@^|{jd1lkROE|vzD z86N8JXr99t{V(=e&^o2Ww(`9FIjfBHpM~T=J?mBXSf8b~@QdAlwnz{^z5RZnYNb5M zaoO85G0X3+NlBZ0cG~@$n?|nzT~c)RJz7zutbYcXavVxZK@HNSnvkh*(4}0a1Xgw= zrbOGi3S0uZ%$0(qNwmwM%jis$0fe@tLKq3t<+Z^cIyPi_vByJtrkC2}@@c7}K$5DC z#l?8=*;3srRFsM~=l{1i#wf-Vb8RhEa4{)7x?xOJ0b`gLk{P%ICId8XZMnv)-CAxZ zwWlhf?@MK;qGVKI*|p{i)9m{4Y-3Kk{2r|&Ua5GgD53O?VS%7Bi9)KmF+_TI+#S8?4h z-q_^OBCrbQJo|%3;vsjVTK!%sp@8pVs)&x!WaMXwAuC5e#;HCl$M@-nE&6_T>`stz z$VCXVn(zDj2F*e3m|v^qWd6S9sp4^VpiY zkDV1KTzFl`)jUmdfZtB~c_dI;&)XaJr6ix#E#}{%fno+#02+P&uE5`)acm-U8!~eE zd##_=z9dOW9c6YX4W<_vsK7*J=zBUmyBI20FIflRdVgRVuW_UO@INOow80Dm;` z(WLFc9@&xo>#2*vQ5qBlx+S7K$^aKBit_~l;|%JZ_7X#CCoLf^g+7^ven4i!oaO1& zZZ&yb*K&_4(h8^yxM;AAwhaVS#>NbQjYXzsh-lpwOV;YPpydZ7IUvw$8VGpC2HFI? zW&E@tusP$mCOI=TYippR?h?gAeryUa)hZIETSQj4Ja)(1fQ-B63(KW(-@Y4T68l}) z;@63f-N&ss@4xcU4wIrH7=ayF#%NRaK^?WqE^XShYr7>S=`s}s0{77SP71eX#tj6X z)DM~q@^8o=ptb>EejZx&KP)$qF$tt}xC9F2gVBZ`klUbfnArtzK~NEalL4)Ru^^Ik zqB6yJ0JE$}WOVYdM7`jsPf_G(RaF#`0!#>k4yY)Q;*u$*L~LRwyHp1K22XV9v_63h zlL*OLC(>7HCE-&b2%ZFoNXhqh)_gHkkipIbP6Bwr3Vn4XaB>oRU(5%=onU3m!X}4@ zGuC_%Jf8r;DRL0pi^LRY0mon?6iWT`m8mNm3LBGYH8u@4rnz4N8r&%P}O1TyP#`VDGKoCgRY8y;|!u5PEkpz(TTBjoIyyUy5%Dk z47x6>DC55eeTP=H@+oAk^@PN~?HK#2XQI1vOxgBe+q#v|6 zbYfCIkIj(>U7u*#@t~WT#_S|{pd0jxcjL)P0s6>TKHc1*ODe@r&)}hCl!)oJOa#oN zD!7QC1sgeJy7f~kLFf!7x4qjCDF{8ADaKi+&A*Maz$nmd1B|l(_6eC{dQnpG`Sg)K zJe`n=3On7p6y)gK*P>su5u48ZI?m|)05kVyt3s#VJ$zxt4dOySozp@(aUFyh$w?!S zvLaIqLM$lw(M1z{4TU_UJpn@6gUA3np-UnYNtj$t=>9@8k`F>s2uQ3{5-jhEQMeeV zaFR>@E&*%Ji0*?B|8 z3>D<$jUGFAa86cEcHS8MZHP=rMsh*uVFG6F3dslsCWPS;LXy)4gzhSqDV3l{X{NXe zM{^Q{)*!Q!!bu~sIu%Wn@4zH; zN5`Z^h6-}>#(~_NL4wgaL-N3wu?5*IO0RAYjMxSS5up1Zwt>wC8*pv70ft?A4RF~8 zju4>x5vGA2&ITK3*GL1Nqdf)VKrU(kjLjzh(sM8xGi~+oBR~&7rY-a5AJ^8nhTGyu z3Jc%s{(M2?jV6}i&cEOD={3|*P%Vd~93bfN=7OFhGQ|oQx#Y-$s=dcW0!Lq+kngp} zJ*J>BDu{F#yRJ$UqEbpkzAv$>kfC@9l9Xaa|FaP#QcQ`o4p~iaCjMtEaw&;|ODX9c zMbDnPad9wFy)`CO;kcIZ(Gw=NlUN1B??8n3N$&Ajed=oD|5ED1$$=hPe(`6EZ?kgeu>_pc@2L;BbSX zThj>!fFSHbk*pX4VSO^iRdcA>cx4r9Noe67==D16rcQ^$?b!}9C4xXv zq@Yy886+&>Od1pje_Ae|j)8DtrkI+C&%w!vGAu}iqe2l(8W4!E*A$wA&%#MktB^07 zI2X~gOjgd6s)7X3d5FsLI*wIgR=+d0<*O>_CKsuCFu*M3m7T zn2VEwX?h)qSjp11b-H{8)9QSDE>1?2YiO%s3tiL{nv2iINm8rO6LkmPmCM*}&cZ8U z2c}^`Akv1J12|cYzPGE>A^5LeL<}`#g`E`BjJHe%AuA$B5g>9DV@!xx$PM;v)|w9@ zD+mx-fePTHi6cCfqvcFO%Vp$7RxY(gDe?$2EilqmiYaYDnIY!B)7*!0_X_P7bM1=yY5X%%+d=TYB$b&$XfF2Z?2;QL-7zLs% zGR0cHVrE21Wicc$3a9H)1c4|q{b(gl3X~X}u@Oq$85=c)8L+6*Vp$12V`t5+f-Csfv#ww4f2dwhYt|A&^s))8wYYj%8p@IR?ZMB9U z{?R~&M91kshD7@y>?al~L@JahL?C*ol!hQF!a#HDJLgJ&D{uc#-=&dwgXWdm4h0;3 zkKt-*wpsMwOoQ4crn6ex#B|fqHnVXuLSN~`h#Aht3_C9U=cL6?o9$q!4a&`sUndt~j%q2qt6Z2SCU|>bMiU|tLwelIT zidZM6aIAYd2z#9=p07Tkk&uEJSdcXz#73}X@EN3FCKfc4>B9ni9!^F~$AX}w#13Xl zjhjJ6Xq7@bm}E#q^qaHrB^~8V8~#P!9eWA>FDAN zn&Hw)Tmo&4idl0PpkGww?0I#xG5iZK&h(kE+r4ZVGI}{pN8Mha?l#-&UcqdUUIu#2 z7LH&FXR(Dx8|XY+m}Cl5Y~gAHJm|GqiwB_BezF>VdyQoMz;vWz*!r$9^<87@`)dYy zjjqoiU(hcd8z9b6ZS=%>sHcpMF+d6=GLclOmzxqDnUtjM|4T`a6_F88OOTk3nHI3=9Z3?_FG2OADy(1?`I<8y9(~>;bJU>( z#B)L9O$AyWBnoI0OXOGuu0*CtFq|>*ZD|^nbf9YdRzjjX&EunC0qI*YRf18ZYp@jB zJn?;)i?SdYs%01f;)kJi4a85D%8?Q*!O)6SflK6~;9^-3vVGzq28s%o%HE14#Y(J1 z389-PIaZ8`@FEdjDZ?sd7>IX+Cqo)AIJ(d64YEytI1mHW?pQ6psmCROuQM)C{nHKj z7;GRdHYG;WKqQVD$m`J2b8WjNJ}X!ItX#XY-D;QstUpHX2CGA-R%rv0VpHPM;|D~= zqUr{Dc&^xd4$ z6F{Z_DUc{JiF7tDCruosm~&wF-ZhT%CRCf z3G|~mTFpUm(Dqk@q*4MTl`_)9X-$u&ObC*eGFWTSbkf3FbA^fr9?_v=0fAINx+*c! z#7PPbEh|1qItKwDnTs+^h11H*ZYd$7x6Db`V2-o4Wsq!6fMj!8LnRBOAi0eq9qr2% zAZa}kPtsLxO=40WNQQV;3O-2gN#II3CKQvL)+D!xa&&?Rs!GbyUYP;xmcl+LS@K#J z*{Q@bNJO%NC@I2(vWzMPRz+fz3ZoPlNY2g_<4PI4zl118ey-Lew}f&eYwes`+etI% zlN=JGq>dQM?t+m95%l2z2PB_>Jf&?%HDl3?@}?Te*n&Y1IcP==V+-Zv4Ix))Pc4ZI zL%Lo|r|82VfUKX%kQS&$1sN{*DYhd_8G^eB$RxQX+)!xI-QNE{u)t(=_I zk(}a4+N%^8j1q+p%$JfK6q*MxvIE9;Ng^|n@?|n(1<$@d{nnP9n(xwQPbfV2;P(eh z#~PJ8WIqYt zc=}wY(##c$SvWmwP74I57xlxzy9oYw#blR3} z4KN55xNbIn(HdZY`N#v!lOWdK>zgNdpm{DK$=cQLZ3iA`UI;%SN0t?gd?jt82Dun){K-F(;@V5bQBBM&s&3_tcg@Es2{I}ATw zToB0v&1y7|edpL`;c)Rlvk8O*0jTgmvob=GRrQnUV;*SsHCrl5(Z$jl7+oSHD09ae z7>y?+S%bqTdszdcUd%@xXl6x7vW9qn17SDa{x>kWCpHZD9|3?I!Z#l_`2aNp)NtWZqnl?OO{001Y z>&~P9kuZgQmIfT;ZX+aF&E8(+@&FeiS(-Z7{KEs>Ck&n-;2s6s?-9mSONiAJR1bt8 z;NApgy=VwA?pc_AH38!28UyZo^l%w`_@ZGbJuZygF!lk)Ua079SoA%@5jTzj#^DHh z&LdL{S~%z?kLXn}5*QChWq*ZOMFm>4L>6Wu0*%WMyj%r5P8`Zy`WjvO5nkHLkg*wo zswKd4zuuk0oDQK>IPC4>WSQmd}irZZhb zGfn?(dNY?$|9in!Z6NktvtZB+^}iQv$2OQ9MR?5G>kpds%|vW92wM_h95$bWVhW5_ zQ)-*STq@FBI>$6UPt7i#33F*3LPKi~FZE|G?MIg&^dWC8s*B`FY1!fXGe!P@MdD!{ z{7B}~3v>xW2=b4i(%QM67D!TZGg8t*1)}UBIitrEOeE(rh-#3p%>&g^$-hk3*gQ^6 zt(|+O7&IRMn)g$SpxrPnagQHNk3jQDYIfVhLd`2c^XcjtVn0%wxADiAW)PfW{G&`U zaHwD|9aPT;hfA=Uzd-YIdLs~`&ZuEyb|}qUjnJR#+?&AEPEA|ufy||j>LF@l%v|cB zF4g7~O^s=)dRjRKGM5IzO9_48rO`A4O~lajvVbeL8>rnl8&;he~nevKNu2rn_S-OLfHk7aL%kF z7HWXK5FLO$U=|?*g6vENI*%mDY)LvW%b-B-!5@}|g0i0mqgZvbQ*;)J+0r^$C}yV` z%R({Rte=HK(PwMG?1l^ow$sPVQW2S>BMwaTu>`a*lY+K9sL5^Ra?o}XgF!}e3TM8V z-E7{k-m7K?{&dsHXkm}wAB71+zPbJrKXjIC-;Zt+v>-cMB!hMfwG<8)w6r8Zi!9x% zXt9QP`?4%}N@~Z1MPi@@rJ^%>36T3HVEH7` z;w1rE-0@X{c2GsMc%oDSx7TnL;-Ftj`UalWLirs=UUvj7a}2*u!ks=JW_3cSAXXIJ z)!%Objp&k)5{ELe=%BelRwxtevigWvgO;d{#UV+V_CBs!v3)Gs07H4(m8xL5#t`j!flB7Ul1dUy10W3{Rrh!DL zJl(&Ahw?bEY*Q+u*IrA{qN1WACGfDx6ifNQGJyb=38gY%83QcC%cj$hc}OzFz!TF6 z+>`*z!N8J4#K?eWG_0#GoDw3WDpM>4mgS5JvYaIcp3oAotcF9|Au>~}_U{055?Gqb zm8e+>u>78F0a#vbsP4OL-7kva59oMTO)CP*YoV^El}7{hwDQ%cNt#9-*0)O0XML+N z^|Btcnj%G-IZCYw?5shn^9=>_XsI6>nKU6~03Ml^UMH9b$}Dm-Ap-y{p(+`SXji}2 zfC1i#fX+BdYEP*$R6>N#%pk$h@=ikXW3f{%N5UupR`1pISvxjRpS8Q5@OVFik6VXn9`D!CxYnEQ!Eus-&IL3`sE$lp z|Dit`Hm3Ef19ey>Z9E1u)`C{r1>&MjHyLfc*~Aja2kb$>RBOAXi5p@DGl&&4 zVEal6y1;yV+xLV7y|0L>BR9M@`f|gIs9%@y5~TE0vr+(F1}zVAIX$ktL3#>;H?~gI z3+h)8yyXf7qacuq;B7B123_vKPv7ZD1n+c_zC`fd|2v7We4$V%6s2e>BuR3xmaVVL zJAS5q2l-#s&pRvt@TbWXa*zZw9|{v~EQZaRuUIblJO0J%t~J$nR2`!Ni#JZh+IIh< zOQ~OXlmQ0#d*R+NIY*s%u$WfH3c#n=f4Lm^^r4r`wSa$D36iH|ihY&Je-9es>rufh zlXiaUsco0sfXcHYn5n~C4(zfNNE(=x9EC62O^_==N^@wH`UY@;eNTclU+udSz`iB0 zo5Qs74e-m)6c-mOp*d@}nE-a1b|A225M~ z0F7yDr$Dfx=4++EZ)^S99N0rJeWcNS*`1<9u5JF?m;JBXWeu4B_WKN)|Mshq`40o} zv}?OW0Q*Y~)aGDrxVBfC&4dDuhC?X<9C{QLq0NMY4*?u}G~CC6lt}R@R{AOOCHpmoADIcOaXEW^uZ zpxZ?tU=+Nb2~C6|q$BF40{y62PvJ}SS{Ht}r=ay(wWpwUE$u02eX@?Hpml9yo`Tj_ z>Us*8b7X_-1#}gV6lmk6Suz;IvYWaypiTUTccjf2bw}D9q&w1PcAbv2IoMc7+AP!W zhziHqw;{H(%aIDLfg_iwV_#bAgxbx~LIDEKsS`*XT~Gqaq&g;7 zC94h{Bh(V=*uMdF=r~xXTZ~uVr=balGn;h`# zt?tEIa_hK4Uv3?1>Rm8Nft2C`M;I~&9B&|32=um5I9y3-QyboSi|(YXh6&CnYmq)| zwjN0UC*LAwQaia3z{yQ}?g~)_65tdnRZmq7<8S1pY0fsv5)MIGiIn*hqQ#yRAYx$@ua4v9;YA9n-V-n~AnlO;Pv`NrcJ7WAn-m4C(zc#&e;TT&Tc>#JI^(!i=E{fU5pOkonH~a`KUsHbg}au0yyu{*2TzI z%dB0_mk8i|$-vs>{8*!Hoxjc$GvGYBO47wvU)Wqi8Zcf0(}4@FNe`q=HCf@2eUD9F zR&I9k%Qcr*EgfIY?XmC`w(I1yw-ZmDdTAaaLc2WRBGa>CmN3dv7XsF0qdo+z%a1Gs zEc~Pe0qff7|4#^5dRwgv0qdGt2Lcvgfrb!niy^S9yit#8!zjBNlqy@Ps31cFS}KUi z9|3amMw3GwQ9PUuRHl(!1o$xW2mxifzEXi89|)TE9t0u0y5`LPR&o$D7k+3h13|}- zlD4e=PcSa^Uq~Za*XJbtLK?wr2A74oBmUC%8+b=7L3+c`yK0avrEP9$JG6oI@dkV- z| z`~tS@Ai-exB{!GD(bcEuAR^cUaj4x25M0H8$!Tq^-LQsI_gJDvc>D6;A-cFGy! zto^r*xx?h3YZ-c|{Y@n^(M^f>c28*J z_0R4p?CYPY3h1zMA3%l|gVY(B;(pe^eFOpAM}X8N(8<0Y?cvp@i*3-#Ul;{OXKS5I zzyRO@y&@BmVq@6QG#qprktv=xSKG_3L8tLBN9Z)}wK64ezXH)|Qg<=$L~(yW0QU#F zc3ig=G<1!Ju@t19pp63e?={dh^cE1>gC2Rz7SO|=03QCj8*q;pW&>VSgf{6OnFR32 z)GITTEyMUuJtkbwor3Eg_HB8cWDyRi+qRUC+vf!Vab8dj=3{@0z^MmI$V3wy-5=e>Lq4 zQ1qdDXT-~72m(kYgVP2^ex9HzL@KF3MX54mszQhUzRD5n zx0n4j=itlikoDqPdE z>pQy38I=t>`a(Ehq#$(#LtlG$?2EMbE>?Rttm``#|7%?@wNuI9n*>xsMWw3PPSvQs zS1n^qFwLy?3Snlomni|fOm!SPN`&F<)s_HWZFQ%zR{%4WmFOTt0=%L%Q@P^<18avC zb_fJ?i-*IMRp4NJ7NNt{LFAR&QCT;A%~lu!MDp79VSq?p7gZF%U1&t!+xfG(YUm{y zCDH<;fNjCshT8HLd{|rFQ2*gwp)SRld}iQHuofNg&Xz*xDI`DMBT0^2M}DM+CBl22 zuKXZ;HiHsDWeDXeZ8YP?SAIFW@+*~$X6R%JRVAL@fMReh#blJR%t(RB;1PAPTtrpi zpi_U9TvbYy8a$}(T)>=8TaT0$7k~WWc$v=Ocq#PNma6a)Lv5B+;2>lYy{GMTMFBz~ z*E@SQWWb5Cv+@fDrH#oifWS+F#8~=mkG)beQex^FaJ=OT&^fROZMHwcm0qkxU+2j( znm#K91Hi{R2SE#4nGE2A>USukjnRLw#X;@rIP$t!)6O}#;&MTkAVRMQ=n}xthU+Ln zsb+PQ$OK9%L#U`w6+RfZgg0_-d0g+dFR7Xi@2)=*I$pH-wMW~xtrCvhIyZ8fYAIvc zNkErr3dB_iuQywvK*k%TNm)nrcU3duJya!da|n+pIiSlAx;q&9C4nekCjvqPYu;s3 z*RmC6bu-CmRRJy`5y;{D|(i>Xvh*}#upWOxrueIUL z6x`3D{glBoes&C`^dM+k4pqf=5{0M=0#~yqxJ7)v)>(g{z3~aeY@u5`l(O)nQ@AM07jG$MS!bSD*eU{N=o@s=!QWgyAdCzOnp_1 z;)e1E{KAV!5)(2ueNhR-j$%}n@9%JuRlp=4m=&%I=4J=e9Ytgy_D-V+YzkOU z4~dd>rYPy1580opga=1bp$fe#iNd7_*or6N1HWtnR|*$yVef#@%>bUZR@#zICXnAL0{ES3z|rWB8FV!IJ=AhEBJ&z~ z_$9t-@|E;Cj=v89{C)IIZQviHzj0Fbd#+ONn*0kJ*){nq*j*DkVDVqa?2SlzZ{$e_ zr;4_co~jVE{b7!k{Pz*Sf1kdS6CEn~|DrMO{b9tg|2>6*2{Q0UXSkq;J<{d|{hGpo zdK!m;qi@)+RLB35fyap=V`5_r`+ou^D?Zp&3fUa6mWkYF9iqr_pqB&d;@P?q*QU;t2iZ29tqG75s#Zu_`=Yv3ZLIMI?v9=rtbb$!>a zYp?5C&(E&+dA)*lU#H9#MBc=nPI~1ZH&TAATFli^`XJaAVsato!*~9vZ>a!D|d*4QjT1!9Nfn_y_t>R_6>#JK~)Wx&lJ;5Dh`cCvXt_UN z*J=Ivu724>gX?r1PXauwV>}7W`4Q+kTZYbB`Jn42LOW0ao>tPX@8b}8<2wb~-|M~x zf#fLaycePCoew{r?PjY!p6y1`$Ftpn>KxB@BO5!O?G|14oS6-Nkn=&euLxX<4qjzK zKIm3Xz@rLMfI*w7j?}WMkHLuS_N1ZrooL2I3rLylqigx9VU$C-4LcHP>-uNOj|Acz7sYf!TSZ;76>%QS4WV5z?9%@FQV4#p=nohv^BajwOy7>~!nz^sW zXZ*h5mRlreR=hOc^0iAr+hg8~st<20EP|#62<7N5Doe#uL{F%_VaY1ey+BDpXcRQq zpnj903Wa)vptUP>h~8CMq0;r;j4|gi5x7#l`1SQox6XCy_u|a@)~4_7&N+Iqg+&F8 zw;H;bO)k<#SJe%sU~yGLPq3U}aaCzV$IzQfCFpr5Q;eLl8g#w41PFZ#M7Eh?Xti~B zBygo6H6Z4L?%o7ML&NDf0UbATmYv79Q^{+NB_&W$+GC)58l+g%QC~i!A_mQrImEKl zq{>y$W2$>iBgRzspS6uCDeTxy0*9iB-hj}fCH#`r()NpR z^134hdYDmi2-hY>$=uNH=85Od(GFVCDE97r(33}KwlOG`5%h>aJFj9iUP`@$jvfQ6 zkR2oxEsLMhTV>T$4RQ$TnysbDRNtwjH8ucs?bNdRt3z!^gOKRz%N* z^;g_zqzLGlt_42X^R*%H$)1l8_+*%=27EFMGXOsMVK9ba;c6Jeu!lM@hGB#bjA7VN zHH;xF_#eR-hVA_T7{jnzS}=yNaeWv=_0S_^J!st1cy(%cJZCjLp2bcn2z#Ny&Eb=P#L)qwxisDXdNFGxZ7vbt!8 zYHYt(2C@AjEDeJihGDu;ex#(R1fk%CF(5lZAR>Wj5r_Q^0ug=b@0B|Jq*tP}&`w=%`E=gpdnSI)*Osx)s&Vn~iyW0>TF^}-SAP|c#Lu{e6VXljwo z8CoK35t>@WTnODn&BjT=ENT`OqyhbqK_>tNMJd8&;S$)G0>h*T5(PQdBMS(KnxWug zr6LeX%H={dsB;zA+zOnM)37L!F)*TC8x}=Z3?e=CFyJCr8l?I=U8*4mbsxK`{}_V9 zh-6-;Ln$$el*rIfMwv0!7}z@sm5g#_@wuWpshiLNr<4TIXpc6r^`kvTWvlVmqDInU zVF>Lpip3F&nu{>i&>-leJw|P23w@_4q>uI(^^2P98whv}m4eavAnGNB024t}2=Xu1 zfqEoKns?D{Sl)qXcbe!57F#cf`96fbWmFtZ*Y6#I1y6!|@Q~o{t|7R)1$P}>0|a+> z3-0dj?l6P9!{9Is9IpGU_r0&@`Eq*osxPzZ*SmH}_jK3(@3K7PmfA1AcW~C0 zK1OLf3xoqX@wb}ET5tScKYqG_3x5gDG~meyTklc3_Ac>CvCM7D66h2kBpx2hTjq({Et6ai1m2&pB+2_}2<$8v)G(M7lo8dz)aW{2 zTHtFL?R@x17?Sm_2D+TKRr~S!1C07NDgO)!q;Qi#ePmv^1D<}zfJ4FIuHr@a)At`C z4Lx^_%-)>(Wp8q%A5Y4!$MG}8QASG`)XYw0-uHKk?OGbU1n4#9Bp1H#?@d6FYS#G{ z5aKg!C6@M;RuWzfPWxhS3KfNz0ciCbr<$NOdr+v@Uk~=j*09J`0yz-_m<9C)xu7ra zqi)ggN3r5woEu>I!s8b%QenoZD6D&)u|GHrNTovBwO_EWbSbbwC-7oK zO5}y*67IFj-&9$wsv6-2xyyuwcX*1E>pX;ncRW~s513d=7chJ+_IRXA{TrFDUe4>k zUAmlBI<~tv4kzOAaeGW;c+}$99Sh(`uN^o#iwwW55T_MnTN6)ze#EAUuWNZ8z7yX=V6`P< z!Ohnp{ai_WhJx1oay>1og5M;2aFrejm~<`@_>|4X*n&j1*yt4H&hTxm$s=JUDL z6nsk9IyN^+JHJ02Q&AZPOvdFYn^3j&y3A@W;8W9BE3$HL@g|M1wHxIj&~R zMu0&3O92*B^g|5Z`_B~(3b0#QgYlMMi%`ieMKa#OX>ly)dlVWR#Vzbcw`%xx8<|y$ z2%oU2m<=JEMD#l-TAEs;mO2$9G&lfs=LcOqu&D|POm2=7KW2VRj}v$ojZH;UP)JoU zix)&|@o_^ho#Bt=!B7scXCgwNR2K#Gq?`M8U~C}e&HC3_Rbf#em2ip*6)7b#g?$SuN*>u+7`{{+`P;6BEEu{n*3@Ja zl&=J{QE{v(u8U%^pHbpWVgkNVi8PdTtKdm_#L*6he=H_eajO^sevUgaKbY52jDVj> zdE2N@$t?LZtLKooM2Av5+(R9&oGjn_8>(Ib@(S!_M{ELcmQz2R4oV&qv7I6vN{1Kb zcJ)(&lH#{LW_i-$tL&$i27XdXJ2IgwoPK;-d@?1t68ji0so?!o6^6VC%Hq?*J)~Zu zypdr#xDnr46yd9MgW~SkBcV~|PbaB+epsDARHlgXw9h$#JWsG@#)ef zIP?64WRYeAg~ZK0_Y~@Xn9szaYzZJ0sL1RcTcr%@s0M}=owCqQg9GaGZtX-|{#0LyEd#cV{n9Uz2vA6Hkw;54k)VI5; zyAwq~7_gO;+{k1f5rh$vSWqd;ioZdpVX-4nW5T3JSYKfmvPg=5Lrb3WK3!j3<4NHw zawzrYKQ~%~cDg{{?1w51UWv6`gP$&_C68!LzVL~?+alBYk*4@c>-JaJ`G@X<+;sz+ z7Y$1$eu=tBiF!4oME-`$*Ee~?-iu_}g!s+XEuzKpS(h?xN(y}7jjmHBOV#3?qHN_|m z4A$gMYC4Kq8W`(q+L-i8!+97yMOV|RF*I`YZR&+)ja6O3higGQFAgud^t>VPM_J`* zb1P!C3LLwJ;)Pe??ue4v9k=kMCMHT}6!$GXgXzuJl88sIG?5y(m!dX^A@WMnt=N>+&yYh9UMF=*)=jYiNm{wvV_H!@)U> z-S#WqlIv9mxI!%`6TK*_mC7vPtA4pRd92D5v;N#FFVk-SrK!x4z@dX6)wa;KKlq?s z3(8XUH>4l%^n9#y41Ma}<-hhNQ!D>)#2R{7SJ7m!u>Y3IfKz2Gy(@FM(c`2o-wGp9 zMsEVhd%Nx~95>--4i+NabGuj&^m#oW&TU>kUhzTc8b9nJzf4%`)n$LxY1%!I6hwX5 z-(Q#m6c=J1*nm`J@f;Aqe@ed>fl`B4fe@#jaW83Ja8<0Q&obYl@%*(be;I~*yYtJV z95Ud?)#S8f6G8*Uy*ifSY|UC1f8vbM&FW)xskaBoNmH&t!OlpQ0N{?~cAOW_`EI+` z9~0ImC86Q(e$^3i8K)}}zRT*Cb85&fBo!q}%{O%ey1xt$#fUm;`_-F{O`h$(0R4{S z_}Trppt0UWawvCy^MLxbTy~>2DXa41SoXkLorfBuKBxIqJL~SwR^wO}fp%7U(nmh7 zJ%gza`L-Z#aO@aEl8PNb$7Zj=YmZg6@$|@F`TNBLpXu}NbAa6w4_dPu*L~RS^0C!G zQxQo1abd^hXtwB9G@{-}P#{z=$9f{y+@Sy{{Y)z-b3exdicd4JT zOmV;JjOV1Ms>Ami@n;p+5u>IbcPz#xqh-g^B~Wz^Tmga?ud`mYm!lSaQU??d4)+O+ z?@w8t^R!NYI)=F8hd}vt)Mc8ci)Vo@`|4iP>b2~m;D}SjwPQoq8}De4dLQMD{H;y$ zct9lxXHds$?Q|Xrm;c_8(A2hp&-UboMSDnm?Hao}V$?mg=@CPa@d(c;hPUK2Hn3tX za-hq`XQ-xa`I}Ph4iLZ9EV3a*?R!FXMO5YsaupO}#>=ecw(MQx0=g5=rK#X}wKpD3 z->I?f+m>J*h}z(3$00~VoVidKq&!sa-bqRQXtTlT+!v|JQOfa3 zxRKAxDV036%tmP>qy(4&}SY-eSJdaRPl8$sS4bz)GyE z&i;z`)dp^4mjVM}=&)9?PF>fU{0v1asqZ*9(R$4nhbivI`wohs58HoV_)i}rgGlAn zib7cVAXhIGwMm}mH@;w*XsCeNP8KO@M;deP{>)L=$Ubq^dKF*e^XZ5Tuy0-i_ho@8 z^7M5G%Bi~;*`n{kQt=pHXHi4Z<%_j)m-aCxe!igEm_L|5efy4# zSk?7-oO^*C?>^ue&T)2PD5{F9JvshFMR)j`%VQTY@>(?cs_n9lN0z8jQJR)vzgxaj zUnqHweFMUpxfV(5mC?HnAZ1-M+n7jH9zon&NRBsx<%w`kS8Sxak}%XNDkQ2K59!@b zankL?<0)&RUr;A6xy#aGx1CQ`jV31E55PHM91Lty=HydJ%3j&HNQNXrx08O%3oe{o zbmDOtV6?c7WOiBV>q1;YoF@zjt;!gi^e`MT&;MW&&LnWES-RQCHGDBSeJA{Dv7>QK z-R5o}&<^Vpij_o^tK)0W*r-R;JiCv26%g;I(pniP2qN#xauNriRORDNhU9Q_vawLV zhC=ldhqzhkU02KH^z3Qv9TaEY&cK(6oorY7V18_wLx#z*N! zik|1Q#cOrizk(4oT>HZWBXWG~I!U=4Je0y~bx#ljijMP7a3>a1nXQwFY6YP&skta#>9&}8FUG`gjw^^ z_iqeAJ{EF?m{Nx{0}XNp<1UCa^m_ELac_2iC8Rw=_b>fQvS&S=@yOuWXX)G2M+_cD zxBFtvhD&f^JG=~!wzW=4sk<}3zoq;0eyt@^!oUt2tu8Sb=AM|lA zvLR&uHD39SWLtNsN`HXl?))6%?p#;AqESPY<2sxda3QfiZn*zyD|syTRIuP_$w_Fl^wU*lPEQ^Rx+4&R?Uc^X$4Ff&jLb(NRc$*t!GJ;ex@Kpvfl`%;!mx~Sx zX;4DS+g}+!Jkfu#v0J&~yZ4djs_L+|w8PeBz-0s7e|L4AS)Ji9mT~pM6K2*J-g-qU67^VT)FQ*5LTL(11V3`ML=EZf8F#WL@dd(9-}GmkwLUGOshi!((UA z5%n3wC8TVIERV~vgSvq8RD{P1-|r;sxyM79$|CFDUrpp77Xnul_U zR&8Va!$YEPa)?OAk`j7yNsK=xmnRuD(Ug*21+yZr0-RF4?HV?EDJ~!a`mWoI zP22&=x}ek2VFqh6H3+sqG=v}>N`S%?m-?IQTQynxN|-72$^B?1Hesnq($Dc#?##N= zw7qZc5BjRc5x)wb@fwiHE-lc2A7 zGOSuvM^;^p`h`_B(Xn##-#x~JXzI!)FZpQR%GESF9|$H))y?6uP>7hNg`J5ks&Eco z9cyvsd5Oc(_QI{l&(d8E_f#Z7T@n z=lRV+_!^#MFEdBuHl71z@rDEudPs-^*C(Q=-+?`^TocoF=tHAn#*q=Z=Fgaa>Z-ULmpt=%+U-Efn$L0VtR2liX#_cC zL3=2`F>Q(!K8%SfO~*D3r|z~PSCAf9xuM03MjbJ3wa^3C@|HNC>Fw!I>BqKViD6te z$1Y8^p8i8eqNYVG` z!yX^aTppt_ZT2`=`P!^k&9u3ki!V39kQX=JjlYgW~BaaGCDWdG=>E&i%kDSoXt|54Y{$c}H6*4{DA1+aHhi9yF<&qNMP_ z)(xzd2UHCR*zwcRj)sZv4LKlphic)joodF{TH(3gZ7lj>lp1rx$iUWT z@v=Pk3r!WtwqT(S+amPu@PJu2Fgh8BPc z=<>XGA8N~iPNo_nci+x1?yU}%nZxageQd!D+4cQ<_wU{*UasTGoqyK3aP1ql6GzBo z`0@R9Z`k2_E_NV4Vm<1cVB_DB{wAU__lnkEmZy$lqDuYs!Ij(VR1ljF&EUubNVjsKOQ+*7k zIWcVH9jjz|(|)$kOlJh6cq#plUePO>dwN=N`=kDWUzr|O&DvZ22I#plQHQ;FM2&4{ zXXkN8`oZNNQKNjqFE7gfb0DUms+B`*OqRqS6Abb|!Lo7gBNf1M-9{@JyY-V(de2Tv z7BKY}Mzh~rd(mY7tMZp~6lw@SyT%;&%yvJygp!p7+$^V*<%Fa&Y~jcfJTClxn>X)w z(O}R%{kwBG42cyrBX3sOebWtA2106#zsZv}XkdE#*<`L*5Bw``yn$>E~VDaw1` zapZKONlzDEmNPAc?X(P9?>M7zpH7aO4Pzy!$AH84DbhQ~%cE`fW+jnxNsp$Y>rvge ziYoLwKv1J|-RwFJQM8_>YCsrz~MQ)?XZ`7d}}4Y z9)<=tN#B)sv3()Ez%?+f@>C*e(Rd)Fx^dg`wij z2HO{Ee}9XEd+!bAoTGGWCfA!31S7bA+WX(R9uBnuy<~mvuj>#j*cIa)o3X%D`rloh zcJKI!iBUWAaA@d%Yu+(`#a$}OQwkPx7tXCha}IAAyhsE5w^7!Xus6- zV|$tnNTzh6-j&qXdAWWstC6!;pbxw+yn^^X-t?@1*UwC!?1NhiGLrZ7j@Efv2R-q#o6ThX{cJkg@T)*-#ZXl9uDCeUh z?YX`4IpSAkGFxcC#^tn@<(mJ*K2fwo*CDRtS~V_F9ciNx8(#{As4-gHM!(xoi1JR{eFAlAnr^t4U3E1( zuRJvolgTHyIDq)GNn0xM7PbrWqKH_-o)-?9R2hO;LHt_wo_$Bk&qY)EQ#uc~8^m2J z3}4YaJvPq$Kr#pO5p_+ksDd{)6Cf`5%ZrvJv#zi()(O!Djdl_{R!56k^Ld0at6XqH zbXl-K`>N6mopKNj2S&^18Tl9iPm!%2#4bS%p2gx-GKlm8$w4{nP_pSF(JG7n)oBmo znF2j8jnC0(Qd7#|uxdvvb*d|g*Y!B(y7)kKi*M2kRRprtx0J!t%a|C3!Vse#qHGM~e+QpZAic$I~hX z60HFA0}>c#0-) zC`_bZs3|y{cDg^E9IBe~>@rE&Sc4gp?#a|Y<%@d#8kd<0Jt#PwM;)61w{*rm`|hsx31c@7Et;VAi^_I8LClr9ov3=0Fj6*m!4jXE|78C@w(<5bm4J_YyEId${?|MG~h&8To)_`q+Ah657o=Mretl-rw$pg znxW4>`yg%i9J@Smee$>w?)lgSy!dVT=uq%FG1IY5qV2u=0^BAD7mR*oA3NF~cBc|u zL$Ee~?RTl!oE{M#lUM~8TKj^CEt}@QmdI3bCNelMM`s17rE7Q9dI~$;PYb+id($je zeuphHLyC4e;yaB_dtr==veDu(D>3Qb{{DUvqcCgd?ncL}HKABBy`G>E_w}>Zs>T8*{hgOu6@LZonwr%UQYp zRF={1`ls_+uht6id{lVw(yhIrbA2teH;XM}7R^ofu?R6C-T5hhEVr9j5{L0;J-9!r zT^9Y8U^?XKbs2)*Or1otNtFBTD^;!(ucG27EHNR47|UGz_mq}mc4&XT2E4!P)&0zK z2(QpXFtF~)xJ>A(f`xLoPI#=`*#waOz~}YwvatiXhWhws$up*|rLLr|yd51|b6j!@ zKs&4?C3%b}h;^1I?tWcb-(C}`NsT;2veh>8(YgOjXKVg8ep<4X0zH~NBJ|1O9nsO` zn>b?McHK(B7`FT~?ztT2@{4E zW4QH9C_MPGx)J=tKRE;aoQy9c30D3j!Dk zp@DW4gagHRSerIZw0u{`V>_VMWhITy#7a+>>+@l^L;g$_K9C*f(IY5~C;Lvt?oPg}L?3brKMa@fmlQM!kUXo;+87M*TG2Obr)bOb; z?lYq&cZ0{>vfy`qhrNtE^zu{my^4SVtfZ})&Ztb4(soEB4)w(F^+U zMN^d{$7ep^QP^rhroFQ}_C59Z#SFqS*Aloh%zGb|teCNwmM!=9(IHGLe~8)?VJW12giT6D~;wW-L#H9@g60+sm!PE`-O8cPh@0 z4`kPHd!n3C?u~~l$t^AV2U11ZW@ zy2MOrpt`Y%{;@Wf>2BKX{Lq=`i{P8g7x8QRB8m}pXV3*G&RNh}Jj@hQn^eEChXiK~ za9MT$-!XvR%5qIzQ?5w0t_c5yDQ-Eg&> z=Sn$qNNsso)B7u36&#eJ+cw?du@q_FM|!s2UR3=XU6$uMXUNcXioVj+%C76g^Um3{ zaB>gFZlK4+xO|BFAXj~sCTL)-m>|1aC})B-o|0AB?WRNWV1)Tf zj5)jIvZdk7R2-k9^g#7{T`%5?iq^Z98eKNWN$vIm=-79fov7eCcDxNlMy_gutAS{K zeano}I5gQbuPe-ad*5_8wu9LxZ5UpN##$t>eZV(I+#v5zA)JgpE+c9+i^E|h2~m`m z&Pg((EyN7b1>-114Q%QnExUv>M-L%lC(bnRG&TI$b?tLVhKrVt$k4Xr&d{OZ)p}1) z98aZo`u0Mz^0m=xE{PL=%EHrPq>L$C18Ob0YR_r26sO$B?_mpYu{>F<3>@%tJU3fJ za2^>0+_%C{@Ep6=H5+TMK#&@nFd|y+e>nnMTRL1gbj`g}daqg`ZbRM@;hd9QeBZy( z4cQIuGt{28;4Xh(6gw18M^Dp?LV&DydrwyI@CG*R7zq}^`t-&!CYcl2oZ(v8SeR_o z-Z~Ci>q?zz_nhV>@8ZOKgz2sOvLfBZAWy_Qs9 z^QW#=!t=uQMD1i)E?p{YT@Ug!N%N{K={Z+c$vmegiAOiA^QoN+U6;%B=#1dxB1CkO z_=U$9VErq{Zp3JC?m1pwJP~ADq4)Eo7%)GxT_^Lmg-VmSqYiX+)#nMVq;5z{BISCK zg{g(MFZ#^KwCuzVp!V#fceX*6f97V&3D;I%-~v7pX6e+EzG8 zoa%Z&Zu~2IFfbRJbQNamN^gTxc|F{Z^3O_XBu=%sT&+xtFsL!i4);4W+8a-k2fM}eQ^MkX&89?kwB+@R zhvuC!ZHcHe5`F8(>+=u}jc{+wMI1hDhJ1^n-_aWIktus7_m*5va-uQl}C58*`kp^>6(+V#wo#!(S0FTu( z4RU#PKLo@Lva!cwDQ=^-Djm9Vk0YBK>}d5jO-ZPi!P8B-U)Xr92zT2&W*pLwzBzn0 zRIsXwCQ0wBB+jXhP&{Z&As%B+Jo6$aZ0%9ece*;tk)}6Ba5L=`RLLQoCe|ett7&)4N_ zK5}{B1+znE0p;M!Ay409h0{(Mqai{*Zw2pBYqfUcp75u7M$k@VsF7~VSt)5r4TT#qK4kXIvkJ5!AWySU40QVLn-VGWGBHHlwXQf8~dO;|b8rPh;q zUu&lZ5tsax+DY2ADpo`qmc;=$D#V_g3XEdV@33qHrx2>;AJ_tCW$UKW)llvY*l;SO zMJFSOU00kufLZL1+?vKq@{FwYHdb!dCGJII8SB|I$=}ZtDBN{#|gbj$q{oEe0|@+*xELPynrcxqmxiK zx6mT|L`ny%R5bPv_}TAjrWnVwanSn5)WKHXOXo{$G0XWWF7u=xVr&u>lEx{h(qQhT$R zeUpXv;>|X~$p_PS=M^+Eh$B){t%{x|Ivh7a9iyaK`xgKQj#uS0hCHwOAM4d5sKTb*K}w z(}&+%hG@5bJYQjabC%Pct}S2(-eBi3>G>7e!nhFm9he{ch*ULblEDLsOniO(aat4- z5_s)c#c*!z;oL4Z^!0oK2YHNYy(p(yGj5*HX>PtzeO;G#cdbS{O4vBwPdN-huu@-Xb94G6U*>1D zx7*aQ5%Az-gakwTlG>MWn-l_T^JzDxeP8rBY$>_Elc=Melfp&)0rizqZ#Kng>MqNt zF)51ABRkw{vw;p8Jz293+`GVRLVFq^<(YOk-(0k_Y6XdP2!;wQ?|D>O*H7Le)^2SC zX_uqPrK6R;d+G2z)On0Or(((VUc1|Mt(5MN7p(a~Xmh;Aav(G)HF8YcHU;mUE_l*6 z*cQw>U8nz}(!(O8!i>@ELUY+_4zqSI1>CxoAEvqX{}icro%2nq_VN zYTPia&q4F(*~qam%5IA{(|Ghc^4=*LHMU`x2Y)mH-GaOkrV*GZtx|dWx zhGO*lOc630`n4d`Bl;*v@Y4l+eyssm%K@)%Z*+ zli1a`cuFA(Xv$_-vChHZ)U}=?n;oFev(AC#oDtLUnV4%K2dhBtqS2B(h|0xP2)Km2 za$0>)us$qZ187Qdk+d!MZ3NX%72zjFN1clc$`ddj106=@rJn{eot23s;1O0%`E%=V z#rSLGCXTOt1cUa3v`g+|4MWzQ*Ef{ckHXWHe76q2Msvr87yC(2@A}e6Z8Rra{|@nNZE1w@#NRzI3_V;JrCC-obs5V#fL7Ys*Cd zBH*-@>R2sccmAS8U9SN$-5fjOZ8`&_;8Y{9Xl-315-|(wxrvHk77chxR_D&%a9-PVF+a^^3&S zv{r((MnJawr@VzrZ-L>^o2ZdStH%FY{7;F+V7-s9?6xvY&E9RAlk-ohKvt7VXs~lj z`wzxHAnhL*?cjf4z5jx-ll}+hQ1>rb@_%3!Q~!bu)cylw7yB2iW&A&|?>7In%!T_u zFzkkZ!QR>YW7*@vzhD;i|G-@I{sohs`wuMPU$6${|G-)r-(U=nvqiWox{9~2VOeSO z=;^{0i>9_Ak?Ny1O1%HL1(^8IrH|G450=V3-IeO);(M_L+GUr%cVi2oL4Jd8`r^A+ z$p3YpiS2*5zncGR9OlA5OKVQn5Fw(4(5hAYRvLCIcZ<99xD$4kvD%m-fSiP^ZgL}q ztC^;I`uAX%{h$?E3A^N{mrDl5L-pm4thM457bJY{_ludNiW(swkN6PLymG(ZnfM56 zsere3zenf&THS1lIN7~M(^Rd>oAgk#X{;ca@MR7FG1Gc(U(OJkA^mC$rT;#)iczO) ze&+z#hD-`%@cZ6OlHFB2|#_6}yK&|95P_gB{6{vf)3ixt?TF=22xhDU(vLd0QOJoc8h10PGt<|&jsIECf8 zqa!ia2LRJP%eRpJy&jnZqRXl~-C5`b3Nm9N`xSxq_b{cC z)o^v2jpnLTK&|*jRkZ96T^uj#vsF=>-8rQOm!sS&E9-N52d}yT-@wHC*3PPLT1Wg` z%^Rh)edUK4p=yhDI8BLMr{Z7v2%8!(JC>7b%ao2|8NsZ`MBF;xkTyK><}8b#(aEPC zKK$)Gs6!5##=G{%l8eg^N2XYYRtKr+(L_j^c;04f0@hVi0WAvzofob8q&0G^`^9Pl zlTq+e4Ol}akzks#@n?4f&!!4q6v;{gvh|P20c-Z5P)fE%-!g|Oz#LRG-(pb2c_rt2 zV=UcmCH~!C7jVI;*c2&Zr*6s)Z&4sLeZ=*NMTL*f(Kn=cV4pi(ki;rGIg#~lZtv)H zMHfoH#CYRN;QcemX#yNvCb1$rEw_!Nym9Jm&#hu_iJIRxzAOr@dtbT%TzwsW4r`A` zvp;LFZY{Y^L1BO1E~bYF$GzmM_o-#D`Fc*wD&cOdXeK44Ho54gdn#YGp>t`vPHNxx z%yCDMgF>ER`AH5MkWMweSp5`XIq4p9gCvERMsZ)?+)bjp8#{mIaB9Q(0qC-I>9nir zo?WWd2&dr2q`o;+%`w)s(70PRy*_SCvo(uq)YR@!;8?Jl5?`rxrOnqVjb-OP88XSz zAm?RfnIEJK2_SghjUM3i5V&%PZ#IRnQxal;8ysZ|dW@dvobRf63W&r#Pb*p}p zIt!Y!V)35tRjGwqZ$#>pHqoT-vfX~O6u8&0HTx$EqwE=#w*6SSNP^p~+u%~WBntWb z>jyW>Df;#=#Gtx8-I;>zz2DYrE!vVSqnHBH7YtYJj$o0Qf!BaH7zQ5^we5BKzZHvjF`GEWA7mnS~Q&ERJ+bfloC05+++0dXA zaE+{XvRM60Jt*C-$mL6{gYwaY+b>*DYHr%H= z-epoCF%dXow|0OQs8qU8S$=LtY~~t$$x$2f^{}!?d+GpngL!3h2#kl=R+VIA91GP3o9^z;iBf z>$-hBz`sMvSmx}e$?^Aa)jPZxxyl9sFUs9X7pCtI1|EW+VJ{{VoS)&Bcc@l=r`t$O zaH349+;hvCkNrlll(Er<^SG+}KUpKTjOf^!e6L{I%;c(<{XX>}Mi{@SOCY&f){{9Nt1U#-itAU9ED3ww6I?Y=Bp+VibdSYi!f+|#>o*|@ZawzcQH6)o6^ zbE4*3X%B0wFuS~;dr0J=l@Ge-FFAW=EM;6WopD?%Mv>-{Ptsq=+=-;Zq@_ZMaMR)P zj5i^983p|#%6tkR`Ejm8Dz-l>kV#2N{S=lAczF0E#DyR$EjHAnW{xZsHjpR&0XIe5 z@M3})slSuRU(A6v{+aAcFOy1y*T;9iJ{ufg!STTa!~CkzK-Csf^l)-0r`Sb>0eY3^ z&l5Azy9ESzp@;Ng#(WDq9C*uB8Zl2SM=S|{<(Lu2NpM!87fM-w|M}eO321QDph|5) zpZ`wzW9}&h6*pT?w4de&URd_O-~Y-<`R%i0`3Xto{AHx_-+znE+I`247_g08*kbfi z2Yv9}I29jENTBNNK1qmoHF_@^vn?m&MBmzHwyr*Y1hfzXTAf)+h_#r4yz?4e} z8AT!fTWb7*Xk#wAlb?IixxLs*ZUl$gaE90To0I`InT~}3Voy8Sm=SgSW?TxVdg+&8 z73HHU+rIonV-dkp-jR@`zX?VJ`@{$-=SrW=t$J+jzZy};a_r_O^nri(8N!$%lU}38 zJ2F|ZmPgYV(FIW4Vma_LBLx5W$k?6n9{hv*JvtS>scWl72FyH#dq9g5*F1*&bRb%c zv{%Gi811`#OJ;?x_amXbsP^5fJqMfbISjHkVfUG9@V+R!y^r!cPU2zZ`4wiz8Lw3K z62vRuGupm=v#ni(C%+MC6teTSX&{S*kV)`GT<+1xIN*CCp6K;1xud5p@_YqSj$uEh z{ny805Nsq=;h9o?GmP1uGs3^k2z4YTItvf>zSn_6;oy>=c@WW`X7GWmn~9mQm~=n9 z*Y8QMGe9NHf$`WF7IP*p>yN<9j5PDe2ubnB{-M5=#F&)LFF$`uNxv6yGm@7Tqa%PB zX3FvteRo@@plmi^lmm`=d#9K)fH-gWNvICn#0nWmZp`BHdUGN=y+rIg-c<)6Jiex? zwHbb4X18*dv4K11Y(sZB6gNV3#4mC!{WK_K>=<|ooIORbhi0tmuJKL(PLZCL@2ARf z7%?9$#&fp(sYH(a)z$cr*${Vv7SUhY{2V-Z@U|p%n-2bPiG3VYQnD10P)d__Szyos zT3JYIPb@2EB5<9K@a_c3(K$J31}0@}iQS&ol730#gZVUwKtTE^hQ~0dup9EOij~@B z_#@k~YpLi3JX;Yvmum>ZAPJ|dj@S5d%5SWg&&g6qWc~!6?TOu9Lb6ZRdO^aO_7ZB!?I48} z761H~jL_UCUY`C}%?I-&FkJ8S%iN%`>ONjz_@lwGPC36xA1cu`PEiku*4-6}7K2e~ zNCIq8xQun=Ga@d2wLea>t#|>Mk{p34y#%WNqSPaR0S+ep=RR!3h)}pR=x@V^p7IH) zUc8e)Jj@TYIQSopyfHbZpGu$Ci)em5dwsWJk1lxQDr5+5ZWeKeWLh) zo9r3mB`3iD%Rgn>47Os*D?q5XU*YEK`}*@sIHO^-YrO2f9z3PrGHtjyHWE@yY_Kp| ziG2PE3FMDTTyHX+n<8B3{CK$Lkk2Uqf;{U#nth5wWnxTrtz+_gVo~xLyYDvqq9yZ< zw~dX2f1vU=Nd`1Oq#T;eIP6GJW7IN>q1~hHqW#Qb&Bot%cif!8#Ly0%BkgM7Tu-WR1Huqk2*zJCAl;u#`9qx=77hEC!DE-P z7=sm~-^eyhF6!Pnjj_?pI@RA$bfgBm_^jW>AbIID7jd<9z!vv}_z~D6^JNZ$q9t_m|!)LNUGjeVX@Ub9M9aoiolf)>}vgOFSt+GodMG=EG-ob%J;7tO5)~ zQ_Q*+?_$QTBypxc1VrDfUug=#?(FnRkE#8t@k5v#3hJko!Nr-50XyXW2Dmbzm|MU7 z+Kz1oPnYBH1DhMAIQb1c?Jjy(Eydmha{VFOMW~3@Z0`MAY@}gmDbA-g-wsfLD{Q+Y6aAP|dU2 zkLRg~r-Jip{0GGu~$bml?IxDi0_P>DWzU9j()`%9Ei%F33K@L0aEAACoauHJ^oQ z6nZiJ)X3O$M0MdS4dJ%dDc%~{C5~=ag$xL`&ko{)VR|0NRM5XwjRFqKtOr%i1_cdw zMW_$3%7%uRP=*|QLjb%m2IjX~tIQfA?dqbJ%$CIXmP`xo>$FwC90MH>JrfzyK8PKi zz$gk7Zlwi(BcHb}t0!>{AX?XL=!%Y`a;+hnRQ0c08tsZuJ!6X{=RtJk`9A=EK!Cp{ zhiBAID2yRjrshJ`PV1;n*LVV8yiN|^uYha5rM61m^j3*QnQgM&s?Lk_ZMX08=&{S0 zwB5YRaog5C7%(Te9NNx-+FdCL{HD{$v~(0gJKLaTX?0c+i&jtNu#G>;;R96RgOo1A zq?H^Vr!p9=$;$pF@p5>UD!ix`K35K3qYB>*;eN9ryiyK7t>FJm!~8!}?OzT1`y22C zz~V9u*Va*iYnxK=6FdR1oG6EPR@D&P*n-fHVs|1;%9T^l4pPN1L}@ry4z&4dkEM`) zhhK5!U1q9w$x{l=`o0{#SQWlODHJq94nL?0KL_CfZy|h~9DYX?{tCkTY4ZfY#zqeR z*{}s^P!<&J*wv-06IP)x8HO@%A~F_EiK%P}^CmdZiQsdnB@KqfiWXvHmVk~3fldt2 z>IvE{hL73&`r8Q|f&~3sd9~RO>~sX?9VXoSCixjwMKvN2G0DXkQl&~s3QA(_5e$`Y ztkZ{lW8-X~Q_iP$nbgh_hPRk^m?zv{TZ`cS8b)~>m?hAumXe^~7`RQvDYV|^Ok<3} z1TES%%wZ-^P}@+fd@=wn$Od;l?dY9PNL)fnTtaLJNC2@hNgimxAkF~p;NhVIBZdbI ziUZzlf zmWO_+8#z-mUw6u*m~vD~sXlA436#=bg{0fEj*xV%>kEk|5Q#)M4)-u9E>%~fQd40h zLCu+hd?`s#(?%@DMG`lRk&lQ-E(hqw6>!q>IT9%cwA%oqknz;Q%m%u%8XgXvuxjxQ z=q{j@p}R2?=&s4i0v#kg0qC%qClE{EWCXT{sm)lum<#BZ6TqGgJKhnCfxRt{PWb@c z7r>t4;3EMXY^i(=(5<0p)OyR>)Gg4P)Szj1ljmQA!kFY_KbUYyjE7m61T--rehQit zlaM$eK^Q}sc7ndU+s^KLNN2Y_`tDnII%8RN%^c_vA`x)#f-J&Mc{GQ5bAZE9nD_*G zOQ>&D(ky!Ntv%))){m^s;E^IW(EdY>6q6W(Ac(Zg%y(3Z2dYxR zUI`+w8eA)WxVzC> zCi6M9j*lbs(?to;Y6q<~d9X?))~h6>xiO(?>~%ba|6e9!YsT+Q#@6knBpATt32@MQ z8y^PE*m-KUK~`uNAg3u6)u9Qe8*D>1M100?5?`ty&Zek?*4vbFY<;0YISxQ!mJ_tD z%*dj2fH5#NQJ6j(w61BmeIkr?BY?g$#*ko0dKl0*hD6W6WEi0j^lkY--xdtG4YM0? z(j#G@>q?$Lj4^0rV!4SKj`+2S8BS@)#DF0oHxk3e zzg`d2vRT0JV8ggSKqOCcfnizhEZTGouPMyQuu5)DS%0-5XheoTY4^&YOq~t%2tF{f z7l|mtHnQdeBkQ_`57!MG7`YN4&>iMBIlu^k`@R86i5bQGI&`S@;zs-aF1HWErkEsd zVtkAT$_?-f7{CkQ4j&LcJRpPuBbCBoiGE8s$NoLx zu&R_xYPVzmSp>uGQa6HOJIgJW&H1|sh8>+zH*~4BJB%R}Q9%pL40+=cR5ADhvcOov zm6BW%Rjj4#rL|EDrDdp~I{Pocd_YT=T}CU64hC%}yA8+gn-g{8KbVXp0sAMJMy8RF z<3KL2fr#1Iv`#Q+Y+uKfU}tL+3v4L|=n*7`55H`Ltnq}#$j+`yw&X8?I^1$^lS|}| zSo}|vDJ7*`s7T;wPv`0xKqsP}EX7ow1BOVcR;B&4yzFz>BXy9a;;1uIl7KdXF-TxCg2XT?)2MoYiieRHil8J<0QD)~5t^jXdOH92r&h4# zVyb1M*|LTZiH#K}Ul9Odkm^{CF&myfntbPTFb3>U^QUU`1voHe^Er-`{NWRX)fi(4 zO8`t8KGN$-Ps9NUaVc>iK5igzEvNiQ>K}0! zo`$4xF@)e^t+DUsFwhpKA3|%V~yC~;Q zR?8ixfs44&R1Hh4!d#RN!KE2g|MW0C6Ul_?il#~o!t4$OugX9aKum|=j#Act!*{7@~O;!ud7jt7w=SP{{fHo)=Lujc4$tUv_h9(tpM~q91#h#jr z;Po4|Dlx?xWx`|u7gHB=h46h>tje5(-I)y9j4_4)GlLO;#ZW%52o#CnCt%^l2Nqt6 z2mlGg7{JjU1^^ZjwE=(y3>1NdST(!Gr2O&-Vd7Y5bX*RGP#rmRW=1*v$w(@YA-JiH zy{1UguAjP%p2<9X?#V6-%p-Ggr-BB9Rb;KCoQR2bSw8X_Fi%Z|Y_duskd! zshsHV?Nb^^`&g;fS#qt6>n*uB4y-zmN`+by4dz^|`m5$#U_t{}4OMR7Z*~VcEMRr(*SiC2o4mZdtSpR?o&AsF1<<`6eXmT?L!S+-lNwkM z36k4zwv$S8h7OGE*ME55$WZ_Ax{;~1B#-{d#TdZ(0it@jxL1tX)M{k=YZEfB*2+-p= z6~kf-5pd}Rznd!GnJKLUZFv7jSqHkKLF+&d$gKmt`8U>)%L3@PUt34pKC@=c%FfF9 zzcG&5i*LeqyOVB%w!Gg?9yn6AgZUFkCJBv0xr@gb8T6EFyXN=y@omq^_wm5SpuxC} zO_545h#<>yTV)yjS0TQ3od0X_)k(4v#v(45{ksc$^_^Knu>WxC_{PUKIAD0l0Q$mSi@4Qx znQ_>a`cXY-Pl%xma1o5388{SxRD^Khy*h-<=ZeBaT&W0=(g6lZEovbC@Dq4;7%%aM_85PP(rxd&@E`zL1_0d}Le9 zpS{1wZYIR=Plh%yC?Irru#ay*@Nf=yV1IgOhMfFJgD@D**U8v-=q?5>(D`(j*;tlB zl?IJ{Kq${Acz}QXEQLHPfQdxZ_7MRciu2(dxW%i#pCmc*duGtSV2q4mB7zFu7*dj; zuDW29ry?T}{lDVkja7w)1!b5h5kw{XrCC zprn9^fFnZ?7{uXX17JIqFCv+kwXq11(u){@Ar$AfoA|(XlbmysP=mMV5U%{%H@t$# z0Jax0shlpnFD!7 z*3tR*TuDd1lmtOuDoZ$vEntI=M;o*lyM`@>8^8Knp_Mw zGP-&x4BOh^k?Fw5SyPk;ll9L?A+Vu=b<+L4fpv1MO%-=;+pst#B-c^(tom2N?1cX& z&Ek1#*X9Bl8O6PV?d`?CfrpBT^`13g`5)rUL7aKlyCL%Me4r@o_+jbyxAVUli z*d_CUU2?rS9EO!e)D4x=sZa^nZ79fBF(o*n;MNU|$nIp_5mnaLE+YdjEL|-5G%2Bn z-it+l%~C#f+n7R0F`LXLGiZALJOL#S#kqf!_pUne2z}rm<-LmpU55OY_`9UkVYW+V zeP&gx%wFf;wX!a6>(I7WuWx0Xd2?&G3^37ecZ23+Qq5eGBOQj&aAN%J+pl|WdL$%`ee00PDdSY#{lnD&M}F4 z&^YM*{c?&g`yKT*NcI<1@4BhJ0>lD(bN+76HgHmcJbek`<71Mj`}m0|)Qbs;lM-T* z>ITJd15+noETXSBIrNvyh5b(iLq-CJ)L%>Gv%B@s?l(>>vg`LewxxgPlpXFamtLLx z5&fcVRln8lCg$~};&7JQ4S}w$8eC>r)PR#&rcpyH1}!iP%`_^wYErHr8F48L8&NNM zt$VDm;5IdC&+8Tg1n(c$ER?Pi2b(YdaoK;x)3u@D)2?Jcf4Dh$E$A9rXWyf8i&T-H zp+Y$ZNs!Qkbd~W%QV!^vD@p_U#u$=DZR_$mIOtkLfZ(Zg%AspAk9q@$+LngFn=oC! zHaJ4_zYDz-$3yi(FJ;Kpt)-L%!P37(T=ERQqE)YaDJiAH`9Jr@2q_Q6tj!1s6CvQy zjXYFE<$*~N-^p096Oc84bFW^?cLo#_wMqHCKYEx367~z`7v|EFp@AA8B_1S z^u>Be5N;0jIRYM9j1nu?s#3Vnmu8dZ##klWYA!Kb#|G0}xj~uxhRdlT5PZevLD(|ZKNIXI$B|(pU^oEn<7|8VodYr3&Th68X-z5T+ zi$8oZk6P}3@1;a}EI`orB&a)l@S5Roywp&eDKmCv0+)0?2Xi)aMO-k%`T;LI~JAu_08?Xh?GrC&xIT(On=u;of`5bJj0xnm5D^a}+Ca-hwp63Y_qp8c4LZ!4F7OTuanV9}=BYC^tA9 zxV5Q0#d2K)T^*u?0yj5;y4lYLZjyhJ1)?)ezQF_if&%`M1)?mfXCmc-f!p%Gq`R>* z5zs3tFJ8cLyH)WycxvlF{pBCyJLNui9eyF8>_V$Wq9m#9_UoXQw8z6fegE zw|6Q5Jm{%Y8*gGP&=aP^d$PnBNO@B|!1w&tH+us}%Ab0fT90Zaz)1oWaLWwYtCe0VHDa8vCc z-Ec9t9IQ7)bL{5JwlzxldwV``Zx4K&={LD>5f_)g#0m3W)Qn^U_fS4$mcU)bZV1T{a7Yfu#Qrc> zYYx z6Go1V6UN0Pq}1Pkh{7-*Ch$1Mhp+91VcrrX4Bm?f!x(LV$L62z9M+4;2fdhbSg(fj{-*M`xc&UY zeLT>(goz+NE*edai%kG26Oxp_CbRAc)D#4w`Jh*{g20vr30VI<0lB#95nw6^9Or{x z$K?ciTQ*3*rV#=ilRKglK|DnOOo+kW*2^ra%W3s?;)C8!a$33{|1(+>|DF~DPfe|< z`xC`aNaio+Sl)fst?wvvR3?V3l=5kPGlAz=o>Sjool*3U8K0M(Y?HG~|3wKb&shE}njh1$U96SPeis&!~V~8TDthr}CpK_5f zh*G_W0XzZRM`=h&sksOdBczx>$PDOCeYNQx`4S{wAd={_fp0gy*ai5av{FP| z2q7g134HZ<0+l4OT%%Z824v8eL*tRS0AB&!wSa@6X$YLL-f4AbtnUoD!hEwbM49xA zol{f@ZBB_Ar3dc2x}kyl9#kMWlO{^15s-6fZ7O+FI1k?!3g@AU!Vi(7@Y7Rz4Y@r- z2Lt@ts;D3SS6eH@uV0;7A%5McqECt%Aw(E1;R3%=1YLV19RYs!$^szyWIlqSb!vtH zw<_ogB*3rEWGT(ag3SBL$Di&3{I=0@ox_1;MO=X2QTlTs2lJ*rUs1{(qdq^NKj(8W zocjEM{tOKqe)eaoc(yt8A6|pr#@|8dZTx%I@iucgn0I}r<1dg))<2f=CzNFA=~(Me z{BcF2+*+qIms7~WaFs?Y6m!;ptJ3KdFDzQXnOn>$oL4Y6pW2z#F&O_F4H=C8o4N)A z5!H1}&|s=^XF(JJ7V^dc9dd!!SDs+L@@NLf&{>F!0UHE(E81{oVd!kcWwv|_3pm9b z%sUTpftC_5QqgMSEX-S_73G65MXOvztA(>LOr;f^5FlU!hR;HP7n9PoEDtWdI94iW zLvj8E0xI&TFK5vLCki+?j5YG-6fL0sA`9jg|HT`_KLBCm&4$D7Yb0l*uSFg;>;=kU zD@NVdRneqx1EW?n_LesmDjFv@FnC2{Ox~DOG?q0WgT7l-WB~de!esE%SIX8)^C%yq zz*i;5SEa!Bb{1Ae<7-eZ)L(UCfPUu6pr@a$a>~>R1~3#CaS5W{ODTRn!NIEeztD&P zF6Irr1cuZJ)B4H%9}z}{4RF<=Fk>nE4%NevMpATWpz0)r@O9C)XP zUfc*OlLIe=Q5CqL-n~ir)pBdN68;%1A&5Lx3AwRp*#3k4DK@wP{RV_9<`ggpgGD48 z(qG_Jxl;_IP>-3Akn9j0GchG5ImH2!nG=vBU5XL{7cBX+fMirbBNCsE7bV@iYV{=5oZChB<*qIihp~V+hjV ztO_dOizLh}E(nrJ#9>q*P?Uxg6>wnO1$TNuuz;adHTaTmY0}{#tBlG)(QhLKmBYyb zf&@H)h+x9>2^R!CCg^YAZ7?Q=QQv(d(y8yH9FB<1#&9vhRhdr=48b9OJl$B##W1?4 zS+EoAn@;g3<=_%y3Oz@eu*IlwCYX<5VkBM30^K!Eg&Z^o)wDGT&fof$@upnT(rOyVz<*)#x{7Vrc<03k$|4?=Wl4;6wEAf$~Xg4&)-K=202JTYsr0frDP5CZF2N!TF7lg~*L zBVhuJVTLi&NplN$pqfUSo1{eo;}STAGzEKR>Bdrl2r>~O;b*2JVWP-F2~vn5q!b|~ z2ndPc2{>sY2w%p}pweAt7&DVJ$EuAj%#4Xh`alOmNWvVU-tK}o4ZP_y0tN^<3uQ`& zkV?T)GpY;O$QxVm(nB0Iqed$l#U;dIt5v5KEKuss|Md2Q)2pJ%YFlc-IhBkEREG#FK2#5F3HX~mbaSpXtmXob{k`6 zR;GR*_wYi7#Nb`%hu&q;<;kxKJdN&{fTX-J)6{ewbz9{u&y(wp=Hg%G?4SAUDjIA!+)pr~TiT>9Yfc~e zdHiU<0NGrpg~K9;uIzE%c;W7{Kkl_+C;Gi~UGnhGg(qaml;Z8XWqdV8G>czYdBH~8 z{n7qQNwX7i8^JA~eJ8d|upR%=##46G_Os=sC!x$4A-g%+Gmtd$Rvz$ArT!S1Oi|nBsh5s&H-D+q}-QLCZaMNv&;e_Qu|f z@`^_$PZ;NOGeo>7BytBka}5YxAsh1j$cQOG@U9W}i}jcXh#%!4|_Sj>T6ROpsM&JkB$jajBJ~A=i6a)ST~EXL*(%Sa)an*e;nT zEOu%<_+UmpUz1^`^v>f0)0}@elx#~{`g>_yxEyY$JT-M&bJ<^jXC09df#=@%qMHI zQfH>D{kY6O%8p;| zi==;P*E@gajIFm$GD{yZc7~r3b?i0mTZMX5+VXJ}TjP!1IiI+0B(!-t;6mqt*w%up zgS>mjy^nqVY$Dezed9l1t1DtQ-g^4K#8wG&_*i>#>-kPuLs~revA@S{gGz_I+hY%Y z!u`&;9toVIs;0(<@Q>6~XpLn}iJmkr#I7bqyw^@(9K#{!elgdOToHiJ3-_M+w=BQ0 z0si}z|J)h5tM+Etu$#JiyDi*a-{3i?%^_N4eU^MUaBl=7`po}Bcixzg|L4yCU3cCX zr}AIvu~{tUCs|%kG&$bSF0$v=8(ZccwX?L!UUo44WKQI=O*?R0CV9->FqCm($l+~W z`{@w^o=YKfURfXKH{CpMyjvK%>N$?fZoC^fbYx2VDW6Wo9U9}M_F^M{`RgCoPwLDb zGIHs>q0W?5+qJ7X_r>q<`mpy)XC5B*agNI~ZI|wceh9`-Eh)-k9n* z8T#(LiLGGwy?b|%mw~;ygZ=wglWX)==gf|J^7N_C!?@jjtNjsNcH238f6j`84ny8C zzSsC)@p1U=eFg$d^GSlaW`f{)= z$LVFyi)THSJU#yp7;5a-K>Qv<9pl$*`BoIT>cop9d#kHUt2Gwg?dg}lBIRScm+O}` zWX5i=fb(Yt7IHpyFdvg?RAyWIn;LoBjf zU5dMOI(Tm3tA8o*xX$^x^vS%Fn|2oE-%R%iUH%fgu}olNz;g(EJS53|puz8QW(hg7 zWttkAj{TQ7E3n?GDLkqBkZg+k({s2C;KG<;g?nWulAZ&Qv~;Z4yZ0{(vK z7NxtIUj$YH<^6ti1acJDyUag2Vz|BjFRD1a_}}>1W0LR6Z_1{VnWy5vjFd@X-})8K zE1YB2s0!6OOBcy>mb`r?;mpmMlt~72hCwOs_d`ANP`|1cLJ^8jKJLA*{In+*s&>j~ zS8f;a%YYc!{h0St8Wk+a5b;{Iw*vydR6p-~pzw}GV=CNRxErG^8s-18+pBr%Y z_`G}j_l6uL?=lehrTAgMyV1g`w{Z-7w)*^FaKFpbaSVL1I^i?akS&ip0?d^mEYcI^ z=C}XG`7Nz_OA4Xg#i!;3&S}w4CEVO#(1XkCZ$=JykOumXxOHVxle&8!_rBYY(#>xc zQtp11Q^#dWUWZ}%zYkrY8R~cc>1uK0pS9;Y`kt_-*IWGQw#yr77hGQ;DNsEgleKbZ z(k7oJv0rvop0c&)mI_I2bO8>li*Bi(?~VQAeUDDvva42Jy`#}6&tD>29{4cM?d`o3 zM5IO1xb25(ul>F4y^5nUAN6V8IyUUa)kcl?&z#(%Wtig@p<&Txi6!KL*X^w~;7!-r znJv2}!ap0Ot*`_3jgG&rnX<6n4UR)pM$Ec zCc@4?Uv%V>cj$=morI?K-&88DgslO8zk8;Q?oe{lGp7p-mh? z$)9)gN8zbD8$yKH^f3ejvl)#ZSEY3kLYukz*ieX~5DM-SlzcZG5K8c#pyYeI-#;mY zHkAlUet2x+A3|sor2k-<*S#WVh`lD5MC?>C7;&N##;ylo`z^)f>`|r?Jmqa z^MhrYMB` zaDt+5Fbg3cMGr&pDMHBaMo{v;wdbR-nW_2@JTD%v;tatvf_W4|-p}aq?)|4i$U9C@ z@)~I?*9jr-2|>{y;eRoPB-pygkuHBRCN2?<%kMAl_%-di2qCWxLCNhsTt5EwZR%fA za9tA@DTKTkY~U@(i-5df6ilVg+(ap~SzAi1Ey(Kuc?8NAR3T9cZKK(+J8}64Pz?rs zPLx941jrkMvea#evPesbKoy6wu7JG7bk_cfQfNog;dgnvA#b~(2)onzBD5MX-)VS=G%4)IK7`F)FD^+0iPCO|%2|Bxv3s;{0uB%qM441@fi47GNg z!4&2+olV+oNOD@9NQ;AigeEsGQ3{eHE)If}5i{XK*iRZ5nDME{Xx^ry!9IM;F)Fix z2D$kru&;(0iWhr)B|A0<5ubM(zfE2>$ZG|(p+jMXBcxGrM#;EDGJKGniA!X2lZEGD zQ__}HTZ4j0ODSmc(KN~aa%KneHl1YaZkm*#&gLU}C@JilfsW`~02H)sla-YP#TU_` zT;`wtfj((!+eZogQM@tRbi@5*XggL3{m-C>mju~|##`Xo3U)I9J!VjyP~U_A9;77^ z9&C@44dKD|DbgP@Hrud7DVh8q6lvG6j75gAMUoh_>rXd0qnq`12h3ik^I&Zt5s%#5|hyG9<;lm&V&*D6QwFx zZ908ZRDTzjgmxbo`HP@EMX=I9!^qb_N9e5v+DB-z=zr+WZ)7VYkRw(o_VMO~f+-u3 zzOe{A&bKlX?HSsS*3uW-BG=M)N$noe^0A+!f&uO{D4^laRs#_%=SrC6Oj*p>Z<=iS zpE<@*by1A03Ph>wl(R2phXhi(NEClsFDgbfXjo+!FbT?qUTa{vj+#tOCe1)pYT{Ss zQf@%m%*F1ZRs*9b2Bm&B+h)owL2ZV%Sy*lj+h)oK>D$a#!9p^Ourf0=xaM2YLdutf zf+~fv@--1-C|)J4tYj;cJpOw`GV5zZ`|`h*M6@q|RgY+oo{SLfD>VLZBHG*S_!`l^ zg6wNV`{ZKiA1bpL`X>)T_UCmW`%npa8E$z9uAafFuP_@1Ohgllh3tPSDfh7Sp@ZZ~|5uUgG;Kwm62N83e2}qePD7YzfK)5-5PW3yDob z=gKwH#F{*yg_VwIRj^(mx?Kz_om0T*-xv^!imwx;k_qcKjZLT-FFrk?&C53BW1fu` zHu+Tk^u5iBT>pUDMZUIPtY96S2prAujqtZGhN)4yT zp=}t`gRze_;?S@|L5HC#cHD6&(vLf6kz+u1LU*yNv3IeJMj@2P1mBMBNgNKBaoBNq z&h+!q?^%EfN9G=kqd;wL;Bllw)mdUqSqf+DxZ|iQecW-Rius|(9mgqzW|{;IJq9=f zMmz@SWn=6xx~IkRRC(HOz%M)AEn7G1R8Bwg^fAR7p+mp+G0%m*zt?<=1E;=aXn8Z2?w_F3QUoqs83o5@tMXmOAv zM)qa!i=6A4Z`f1GuL@2n^y##_b`~b&eOlb%yr&l2{YHZpd@ClMncgj zK+fk02_4#(F-ZN|!j@(sxqiJ(>$kY0SQ0pbEHTMqPiN^{7qak2d(345OzqvtB7LeV zLzSDGIeGF#7Cpu#Y1YgcKTc;>n=ymU02-r#0fF#A7li5*^XhAvQVdYB86lFGMyf>D zC0u(DDy2a}fJ%TaC(Et}mk$O#xVC2W;OhOA9$Z^n(t~U5uds_*EM^pDZ7tIy(yHM@ z*TJZ^Jx$SOT(b!1ngzoz8==k6b=M=!xNaxRp**`TCJ^k*j}k=|3pwL@nt-mS=?>f& z=2;)hOW24|D42}z3F!LXIAeUak_1rb#PY|4`w|mSC@x8kqM$HJW9ai;uO~_+>P+?I z$=R&-h28b4ukZMk>a&#bsGLzI;&GC_HFF?K}a6=Sxy! ze#IALNQ$D=###_nBA}?!H?$y%qP0MZl{^FF&oqfCjd%iz;=e^>%-1yXO3;{2K+*JX z(Ku|@8bljtYtWXUcAJ2r+uxw(=4O_f8z5LnBlen_+hqc}waUrK$;m)d1-AwSbZbyN zRREFn>OVV!R)JeL0=jiGRzY?qlaNk8w{(+)EGA(R0o^8l|P2=p?(byjj=7E|qOe;bf6-1G-ns%*=!}AiAuI{xOaX4QoRxV_~~X2ZJSYNsP$hIrBl4KhtH+9By?Qw7 z^{O>mp??JrYO+u-4Ii|!UD>7tm20yLQ4y@%gpf#3p~lA2$0#};0%@x}kY2V|hALPq zwInEfWfh{($Ap3bxQ|pAE3@)q0#;u94P{ooXjYk(_Z2IXzI<3^6alNW4#~)%mm!ru z60q_|)46^X2X?Oi{V`E$&C6qhMbnzC(w%@+x|Wcf#Ih=z91xW!tS!chsjL zq%{dJoBWK&N&qaM3M%%fiHc6DIF^*cs3fgCFSq1&nNYKe;FA#bM(o!xB zs?Wp;)}>?TE)q#6JfTJNqz)|-T6b#BI>9iF-VX+Sdl=knzAOJ5?lma3WnDME#|Y?q z%(OfA{e$h!GcxGm+xHm(eV>`;5d$_4tlbC!po*P}73{kjZ8nMNIv4@mm9lH`AEN8h z0uxVW3Nx?x8G<|eznZ@!+t`x zS2v;N*PMWU&A&x$qZQ#m_ZrVXvg*fHM$be_NkKY1L&O(x`Rank%?=j#&`nO82=4xuCdOn zHP@Jf~jV2Ary>_A$*4)o5LJ(6Y)wI})cQ90Ji>mohzaDX~ZN5FJ4eZwP z`3AeJVb|(WdW)*ntwf7*uT8KchNieteHD%lGZ#P&2DG4eA&RR518u)G0c*m{t?G+= zC#NR&g~O6*`xOsM6Awxo6eLe$CSaa(y=Hd(!#K_%yN#_j@SsNS`9MF`J#P>}M)%iR zi6oXHF@+EY_CTy?CCFA9#{#DQu}VA^p<<~)BNzw~_gZ@1q?N$H96Iz4h3bR05^6Aq z?iwn{8rm3G`+B0(0Jl$)2vI(;0C}J2Lv3hP0|VD7Gufjo2Df(YP!xQLS;YjNC1BuL z6UR0k1I(9DGM?|i*8~iFZIWS{g!PKob|PSHCzG^%39KE8CYH5p6;CV!H`7l2>5}Pe zH>ptQ_lRoa=J$xSN?3a!orLyiCscU7wyop9arRivj#Ykf?D}r{o`q6Pw!B^ct*v&& zW8P2HwD4=sFS*@nvSR%%15$}#?LP^Lf>LM0%K zYEwXJyAygq>N=g!gr`nR6bqv>1OEo=gfYm}2E|~>juJgQ90A@#x8Sv>Ku{r$MAUzajP*WN|w$330R;l?> zLW-wrrh~|0d^2Vt6EwsGG&ZQ48PM3EykgMUpu|!@V=<*Np2|RYa+zSdghI@#0Z`Cr zaOL3X~+zsTm}kSt7hY}PzV@| zMV6}@s8N9o7_@|eb)!+_yq+tVH^u6y+tCyU+!%Y??u1^vhTK0G0JQBMDq!6%22@uW zmZ2g-VK{g0mW5AOg6SG1(?&v`qb-Kw(a5yrkv0mI67?I(EI?wEG?OOxGirO;8GHrE z#Z~cCJe7qbVASj^prLX+v%y4=$++c0rxO_yReYevVW>)($+Xe@T#!F47fjRAy=Z7k zqEs?(BA7QrB9TnX0tl)cy>5)aAZN`q4wFRDA`U%)a2&H>$W9&mC874!hCs46H0cq3|1m$OJjb|1Bc@hcsiWmnYMyX+h z7{w!dUK;vv#7`#Z!;vmV=)-jS4i;xP3q+y1xWI@L>>DZ)MqGsvqm(eB8I67)m8oI| zg@_ky7Dc8SWHC6f3XnR^&uuZq=k%#ULU_&S$kPd_WVS0a5AMfkEYw zzv`(N3n%iT;X}1D1Hi}ubZ~f8@!SDPS_Ocb#H3m5%t5W%>`PrFZHtIw5Q;*0`#ioCcHvLQ( zdB?auQF$f+zD5Zv^%Z48Wa#I7r63$*lq!<+sjQCT)0KFjkCs41Y9+>oT92onJ^-yG zN}-`^qMth`R7x5t*Z>o3O0{02QmJ+|qDtB*G@el=gp2WpQ7kbNyy1F_zKu6b1K`p} zfXxHo);nz$0Jq+AJpgXKKlC92i_amUa1hLWQ*YN+jhscZQ~C* z>R27yw)uxQcg@^2Z+GVDu6e1o*Qrxgr@mTMb?V!-_ct2{5#wHx{VV24quQtqV+2Ytgbn79!hCB|M>QdJsxtYF8yk*YltSHVLK>trU4oolc-T&RDsA|sEN zJ9~5zBypU+gi{~{>hBb|Hc0Usxiop^iJ=B-){QE~k7lW!@@x$=H_YFrhK^DRLSPC7 zXMdX<2%)lvO5=Lu`%caoy}wmWt&xYoj7cM7n#TJY&t!UzGF+P_CX&pmUuASmw{&}} z`~qdAJ=5{0vI_4%PaPj#aWV;om)T?(hpA8oZ&l006k;UoAco&76mh!e zi!>%?tEnex6H-HDQKx9pJ1+NESnQGBv?adsAkifPq3 z3>5t;#uulW&{XHGxsI4~&TRP=-u;^RyJ(ldxZeNV!BJ6QH6tXG<$D@5GVp4xDvFp~ zV;-Fm$5h>4?4X$*+IFPi(js{H(xjF(pP98xDL<*Ck zEW^J&sBb1D$_Sh!2D`Lqgd()bHo1K4%_g!GL^}-3k{RU@YPTlU6wG|;kT0)5mU|m2 z@`4x~@8RE=svKC1P=!;ZI%EqC2;KrqV;2;T`DI-{{?Zlhuj0$P&*~)iWkU_vuIjIG zMkuy+b>971B%xP4x^Vv1ek_*|36aFp9U+xg!lDO_kb~U8X{dU&?`c=T!U4)yCHcFC zpP{t1^Y!(JS)5#!&(6159#O_0Gg*bL@HAQ)$QXldO84n0B%(D3N4()T0Ys(OFZjpD z01QZu8{K%@a+2Vq;_3JfH`wy4g{t+36(p7@e1d>hf#xH5+11rEzQ%tKODwg6>J{|n z!y!69mbnRkoU7!O@DRcR2p({4ym9!KsHeSUESqSr>fwQE^4Ij4WnfaICJcV<8oIS>K zFM`EU8as+7h6@gX2glZe(Ci2_c}iWY&YG!tCR5#ww04}!JdWz8!6obt*Bpb|h7L%#vZbB1yz{#)0E1p21 zB?D_557#n_*|F&AO&ispJa&n3XR7{jH)|_S18;wtKX?mbG-=b$p1(kB%oZwBMNCG> z7~*u&5t5d;QmeVY3JkhtyERz7I(g0%YqO-5Y(COVM_WGw+8@8ZuofQ!u&AFOyL8_4 zMFq6?Qh#?#5%7>cS!Z{$-A34XEZaG|90gtaAbndN=I2z5W~zZ}AlSOBN$14&C~G)# z?Urpu0PZOu*aAF0S8p(%A^@A$y%+(fq^GL8PXcvzGDXam>vQ9w=S4lu(M_gsUub#@ zqv6@%yV%Gb{tPL31oW4~vvDTtBmT-_DZ!!U~0 zyTj6rOzvF$F~< zHmc8KW(eYb!2st8BO-Uqe-EogB62&bvv(3Gc8~`-A(#+_VnmSl|3~4Q2FdSB(9QuS zho-W!Yuni&z5OPP>NZo%L}i6+LPI>~_WnC2tw-*Yq(ADlGPvARJ_lg{t6ew%t{;>j zhi4hmD#!8gC&{9!2b|AgfO`Gp>YWnW``JO*VEe1eWvM+At!rAH-Z_QDR&LB;T-QZL zOQGf0*z5=Qv4AGi<*az>^yJ$I?wG^4FV!m{`^~cqz%#;!sUAiZ@?`vpJ@8{az$XF! z&V!$4wQH#|{|)#|bi+AmW0C6vuFVedpNucjmky>`FZ9b>>5JAlq;FuK!qKq`XHUiL z&CeSpEPsZBm3dOG^lP_@kMJwu=xI9 z5&3<)l>g&!J2Jmv}xHirJ8{F{m{-(2nUtHi!>HoJB%{sO*{zW^_BWQJ0f@UEf}{%zH#^!2H4$#yuRH7&9bwtT0WP{6l!agD)_e< zyGdO?eRpooiOerNYB!BKwSEO{WIvX2Lj94!kKo+HzWHXu)21P3-9T>4VDBG8M^f_Vm~U){x&!FfZ(If6 z?eke2B24)>wQs9-jwWfWvg6)SKjg8108vquYu6pIk4LffZ{cD##GVHC`^~Gd!rOkd z_j}rM!xv`9*M8O~z?CUAPggpFOvgQM+t|z9b#2#O#$DEdz~YOY#xpB>pt{Rh5G`pE zm(3}6Jppj*;tdFp^!*Lz$KBvB%yJsk=rWSikJJ;G`(vM4+M<#(s)#DL6j$YSTdkoR zc|>sWdMS+Dd>UWfd>{J;z`YwxU`3>0Qh+OyVPOdi#88WNkiFB}cwN>gKb)#uTt9a0 zX8ijl>zXFq-eeZ1(x(?~tw;@897(BzWgDxLgVI9-7;@f%Pu%QAnXU5~=7){(1$q{Y zx_F~=Y!lx4arsgE6jfeRmzua!Ac~~)=4`pJHrc1EZA-7p7qn(UZ zZ`-Rmv(mBKUm8(%%o7X$@^lQS;yHTcgT#u}|6r4J>E9% zT`4~U`g$nA+@wyIKLY-W9l1m-m&|PrYCMxYO;`SxbT}yMX{%GeS3O^@LfL1pU6oMd zXLaJuRReC$%U`_uyAC%ml6r$ZF7~0*Bc@Qxj)@f4s?LYQ&}#%bO%^Kdo)2$D zkV5Ad^n`j-k~NNM{bno2n@l$4HEM3Hf(RG}*sH%<(SjEn&qK@_Xl{?i}@R4 zC;8kqH$CBum^Zjyq059-P(Om+V`N|P&fe&w$9ZHw=cuP@iLck>{_UQIzp=x${_0_E?}9G~K_?|Z zSf$tH!dp~7dxif>%nnHFJ$dEiUa{FB&*8pqK;Zp&aC#TyqCzAd+cii+p9LCcK+-uSh{?P~w}#)=Of zThpWK8f$+RVN%ez2#fSl^RF6Q5Fda@cYj7{5$%HjI&5+#WV1>f@0+lHUpS>}Qr7o@Ikz_!)-$DArIXi1$CpTEKvpD2)h!a%+h5^sQ2&7su3TM@Yr(hjfjJ_GRE_2y zP0xWkBB=0vO2-@LkE|Hr-Jku3mOk5w!ua4)-#c?Ra1Hs(B&eOsxVvnkL;ykz!2b@9 z#d7Q`SzOSTx&b|Z{g6(C3GwP#=<~-8%=bfX`m5Eg;y|*6HZI8jd;Qbv9XZa3VAOYj z`8Df#i2^@2xF4`S=P)>-lxur*eVa*ZvEqV))G2)dh93{sAnCwwbzf|_HvF+UcJ}xdhJVP160}wyz@kUDY*pwtbLcV(} zLQc=lF#kIXB|tSPzC-KxOlwe7SeawK$M1#7St3B-I%d4PV$Og2tWF*=$hP{b6Qwo4Sir zL_944nE`|69xerr|3{|%z_AGJ^P%!}*){gpjfay@dWpHRmgDf~+C=>OE3mIeoz7Jt z{NL$f=}6LVG<%me!Y|Kxp_HWysfBl*W%;dT^q9O>r|P&JqwX-#&(vhKOOvZB&Rl-B z*eaUtwS)AK^KZ8ZFFiJO0K-o0^XVG_aG%?@^6SC=y6WKSk8G^5XUHXGX9^Lw%ae+p zN$Udl_<9c&xs;m+$k%d=3w^4LmPO2a9k)TNiyiZRcQ*!|H~$ z*)*LUvfZSZK9moNPVbqcpf$MSYJAvT7zoDd{bKFS)|eamsMN@bIJY<5%)a2iY7zPU zgOH=`_yMU`A(9W^a@Z;cZev08u-38_S)}F=iNg9kmspIL^O&RQxMSq~-0IYb#a#`q zHnROYO964q&EnMa&Z+Lo`3-ZI4f;(Xv!!C}5;pf7-S7}Kf6#(WKm%aWdupf0wn-(e z;p6-Ho22_L-^+V4^bl<;CNzJz-ajeP$K2!jKEBM&LCsL}R*^f~&(EDJ2Ke60zT|aV zkczhC>fhskevE{6F%gSb{ED1KH0?;ZY~Q_p-4)Tsz3G=sX8w=^ah+{H5qu=8e^WY; z8+6|GkFUXr70W3)x_wA&WACTE6AGaHw~p>09sM5W|Ch}llqi7l-}`9(zK48%Ddu2*X3;p9e^9@ndE(N z^H2AQ>f<4Cyqwb?b4tiANqpg&&cOB(?B2c zRyMFTHVSewb^dC+;zN9?os+;U`70tMf#e~mvXYsKC@?2JM2Y^EF=H$JiSzF`-&lHH z39gcXscRTQs}P1Kd6*&Dfkp|EZ!+?vO68;{!X@mQ&FHiA!nXB1Hg!>ur06s|r7c|T zY`xuH$xLCj9sq+LG^C0x$-)1o{J!E|W|M{HA=KCEmipJzI|f8Oi9mi{)!mCyiC|%P z+mElTOi+Y_Lhz#( zxLbzg++op@DJ3y9k}5&GwLx5Zu*TK086oc`lhD1m{G9)=ZSc)BpPFoV?eZW}ICZKQ zu||(^{1_^-MyW<}z0gCO)Fv1uQ3%$<-m$;`zgkZ{;yglX-r+ooXLrKCr!=op)l!@p z@_fW55q`eTtc&WEg@m-oRQmRue3!FCB@2EJfjGFf4F_i8f%o(s18P)jOJ(dra9>Sl$Q6R;ef0Y>tVv^LwK$z=+gkT)6K+7 z$3|ZWV&_SCVT+ujLM=W^#KsUaKD(+v-9&J;lOq=5A*e5TkcYlZ!?++%xm9e)rP}JY z7yQzC^+FMGusU0_=rr2D|5>0>q*@dR<_fCiC|erL?tzM6QBb&31-8bWvC*T^X+?4I zvMcOyo6p8S)zjt|(mvKj?@!XG++l z=#0ri*zh`tI%M3P0>Vi_%f8o~BbUwVf{$C91+D1f9*b2|amQl)*>Q?pXq|${j*QUh zkN$zPQ@@hb^vN0zaeHuFe00H-jWCKrr6qtg6RgA|kHS?}qZOFIgM$j7uxpEj!?FKJ7kKdK7Cx4gr3h;LzfB~hQjkIGLU ze?L#8q6yB4l}tfg)57zDS087)f-x+?j5(qL-HQtd1ZGE-3YFRuV}r86ELEi~!r-`Q zzU^3B=4XNErucQLJF6v{xnc~tmu-#7G{e>M43AQc+K?dfjeNiRjmF!-FSoKhPcQ2V z-#q{Q9NkvH_Bv0!o#|obv1;owX0|HRz>;2YAiYlVQ-Q=u2ZhJcVt^S}7-q^(aa(I{ z@EG6W7wJ-WL+N^-qi&p^Ic)~sHb!t?@_3F2rFva^5di3tq3dcrO~Tf3Ki(_whe4pU z!C-|oO*(6{3H2)hMUO@MI99ahasj@rmz6m^iOKY8Yh`LZmrX7EJewKvd}(V#0t7eS zhxj86p$lHn@1zE?dQOf~02hUGGW+IQnNwjmCKkdC?e?Wx%@fsQiM?>6bP0i;W-(-6 zzc81@(!+U+Gf=;u0G{MyajSZqPj{GK`9S?{ymGk2eUqH}%|dn|%%#cYQhBSE`gsgfcwO{JI+dFP3jtfDi%4?rdW z{q91pwp%vgn~`{8@qYc2#nMKkQ8PhzR{;4t*ZY~?R-i%lbq5BU^ZUmk7uqnA&aJo6 zJz{>RpCMeEsI8>Y+IxbCjyf%-!YaGhzX}^WKL+0{LZFj(F-zBI0Y>!3TR4>crQ%B5 zIL)??aqelY#ThEmOQ#Rvb<;s~)ll~zzOayzS_jX6(t54Xqrn`TX$}wb1f27zraku# z865r_uhkJRK3B%sJVa_smW)pyVnWj~Vj)&-Ws|`Z<`-~VtE?Xd(LVas*+NkbC7A^D zhB`bO*#f2Cv`|xXs=Ko&tAP!9n?CELF4WbSvH*JyPw!FI+o{d49k5v;X!;-N$e%jE zYJQ4Y4TX%_3q4yc|009`=Ss&^dhVgblqy8L71`EB<0hb@X@qXE=j95|UVGw>PHpBj zZTqrQfv!U?8%a&M%5`OP|6m{iPr^}uB?WD5b2@+!!*lmg;J1*u)F?hwrW?~Jp+hj= zojymBdvA&gYn#n{elRIor+Pzo>we`(_W9UnNHitC;UVS3v|`*NAgq|;coi=&|q z*86nPN^vb^jh1ig?0(-#E!~f7aA^xzPz4JsC0P~-7y6?m*&3kDT6w|2;bz%1cJ8(c zvTuOGQtN`&2O^UHxd@;s03BV) z&@H!|9cB^Pu5Ny*Za$Xw*{E(Fse)h%N)no2T|E5FW6HvX0PTz&(ZNUK~(}cj1hx0@AJJb9CBFQVJT+Kzx^S#1X zv%gO5rfh=a-V)YRV158k{}wu{bUkY^7E5s2&DC#ju08*Jokgt|y^uRw!D-Z3U#N`~ zuD+Iroo^cp4MOG>oWVh-XmWt zDkVW$^|im&Mn)6TMh9f?pg-g3qLL}Q5ttRDduMgVhzt629nk_Xq(|w>TdQ;2ku!nS zFoi+7Uni-$>nUY$>tFZZPD?QLdU8rHHs#;)T%1SZcy}+=pZuVrcgEE_I2cx08+@q{ z8q)V|MR>AmuX@k>hu%8n#B<3bL617Q>&%)j{G~Kh@S_wCfqtL?q!u1+Qf!@$89rK> zMoKo^hyb+|6(^i+Su%wgK3md3bDS|-B~lqD+)Zta@uF^PnR1|kzol6r+z2NWen6Eb z6&{>TvauW25Ml8iC)rO)wr5a$M|`n95Kpa6#tgkGFQMECK^-qXHo$sA=-!BON0kK ze?gAuHS**q8S#EKHCWC@P!4!*Vlc-Dgad7H?la-{FJG^{woS1;6Gs>Ni+=pmEuDNB zGQ-~1t4=gx-YIhJr#(@^|;68g}UFZjYHx2*PC$`v`u!cntH%C(BDT*DBWgXyx=R@D7bF>$@cqF zP*B;RQP7@mOwRIfm}SJOPM1#+W4JI=;oWjjDOn$ErW`QkmcTd9GSkaY$XM~q;FvcL z?6jCRW!-8^7k)rVhp%oB|1Uyg9q;f-yrWym-XZ1xzz3prJd6!EZp|I)mp7e~v@8W2 zfCW==eg{?h@aYlQclPKr5pyoPcm;8oVKVHKMV;O1zcSgPbq_o z@nlACdl%cy^;8_kfO&;)*+V#pzEV3DIbtzd!4f?AnZe1My?J1iu0OkTy|=By)9+v> z8GwlK#EkbMYcbYQ(1q*8#`W$#E!3~nHCt-9pP}l&RGwQU#WX#wIaYYRR!XZ(d%9w3CVtQ)whgWSWPJK||9{q9)?q#7V{8XC&{ ztf==i#9?|y!zvF!T^(da$?K?JF+kDOTjA>+*&UZ?=~nmi^(BGa?(~pYm=y?*qq41P zX8m^>L!H^|RpnUYwdR~l{tm5o%F7~<41ZJ;MRQ@@c9YF5L%f$fS~x24jm+bHH#ODXW7A40#_bta+yGUy-+n;j?Z3D6p)Zz8 zpNs9oXZOD45=l`ELlWIvB9mLKRp9!&3$V;+L7Xc!-sVZfXTU^f} zgN^s;o5nnsi`VnvGyLU+1t_X2R|g_w`Z!CEeuI1G3B~uEUu)kvyMB4mbDs^tI8XyM zqDxFx?us{7nOtctTZ3;&9NSmx*Zxn+dOP`4FERO__Fv)ay}M5i?H_pm4Fqm?t`FO7 zyqn;0_zYfeeRkL4mCC4nNA7kY&|xOY`kC;y&-cla+91IEF*wA|+CLsfO>>OHTt**iEbcGWC@v|2|S5d$m!~QxISW2fXwz)S_InUE=>@uHF;kIYI_}M*SYC*qqlW zg=XV*{Z#v`rjctlh^u8|)o3)D>xgi`LgX<8#1**;@SbkDuh(YY>&T1$Gst+e)J>sp*nV>Pt5rnPOjzTTRyPi{&pk%_!9_xV-~7QO(1d>>fBH); zj%%=c(Lv=PpItkDlId+6uvW>Nphn!M`V8q`KD`WlEiH<89!d^>MC2cZuu3kOr*7#p}fJcLH;z%u?(l;ZEwC05K?R zxpcmq8Ie=<*j%X9pzq%JV|W>VE#TMbT(mq+k0LXjv$|3k7V`0kub=%#z!mGc-mwk# z?$b$kyKP;HBs z-wFR*5$FT`>OG>#>b@N`l_`- zcKVA~Tnu#{C*~}!Az4RWR9;({>LDc_?ds|T4H=FaQ_#{ZQVeBU9{ zy6eYlpS?ww4!G*wuyH|b>JCMPKb1J+f?Cxnd29F81@OVoYqp-)*z(-^m>RauLX*Se zUw|k`wmaMybt*s&SDJ1LcDyhX!{){H9y0r+?*q|&r>L(uhCW`(Qo(NCYrJzPcFe1*Yh=Qj0Q;wIY(Rl>Mp-%*Zdz7 z#7Ujt@f*F-5E`WD`-N^nb_qC{XR=JHBH7)!#@{nj$WU_Pcw^S2`UhRGoIN<04`A(H{28 zz?t3GV*f=)yyp(?@>56KSH0z%2`zqBpvg|zV)jYJXJ;xWl)YB2BS!BEK0Y|$JE&NC zPX9ay!9CjBrdvM(#MTuG%oj(P9JkNpT-C4o(DA{MYUDZZ^bV@G|9T;5{k`)3t9v4G z<^9WpFRhDkLNETXZp3-nq~pBti?VKHjwKs#3jnh5Y;C^(vOJE{%Uo3pIOEY#x~hr4 zSD>V))9FBNS)KxiZ%QT}hrLrrBg2&1x+yxyTA=jFCBgnyhuSq$sJn!(s0Al|ZCPj3 zvkaD@rMw@OuP5h_qz!+oX#EI<#$8Vq1Am(f!GP+hr)Bd_I?Pyy2+tHWUnKV-y7 z;BiP=9Ap*merSXfpbEc{1t$sgM;yJU((2{^NTm&R-~SfW@;bJu!dxB|jc~_4|0vv) z4^GPW+>rVi>K=fc^8S#W!X0q<5$YM^luHr%wB^kV33LqlV3}gYZ$@hyN(FlL=0m?z|mA61JozrveH;D=de(I`k(bmeFlj>AaTb z5qV+DeIZ3>ulvb~Z@FB%LSkc z`+Ef^X=HPjf2)y$Ajpw2$h=>%ZvDRzqW`Q43~)6xr3_6dl2~E8RcK3Vlm|r&&hX+> zl=|1P!ZR*z;_p0)v*Wb-jClQXfxUGR{;Z9D@w$`ZD@*Zs=bOzK7u9kXR{4~_aPOiN zeB%jQ1a~?o^HQ?KePcK!*p&OM#;Ac12m??o8i#roy@ckndSU^5v`TQaPz|TR;ZsPe z?naPO2a|aY-16(+QzVZ+8X>)Pg>JlZ+N>*)mYv+HC6WU~X|& zTC)a*Z0v4yN%%?Cto||)QUqA2^LfexR&U^_UHq5MwY=WHt+(deo^&GqR^@?)6@vb* z)-3g>5cvHL@!c{vG;2+3n}-^ruP8U}j}j#-#K)C%j~Fdqv1Y{tsxU-?3|G7$rOsGd z>G))F>B4z#_U_#b1|B3#1MZ)5iR&h$+TkFS&i(dlf8hSOy|tgnNZ#7T1Jq)A8_t~ywxC~L1c zH4?19<&aoDdm@9#XMeF1a7bg-8X7#YeOf~3owz>C`m^&@w+kg=SIe$*4HMOt2yo|9 zh1t`tJ`lXRt{*=rQ^#r1z*;pE;I_9c>6Qn^>YPc~!Y)J9Y@#+9eXyf?(>TJK94C0_ zRR>M^8~$ERo&Rx}p*7J|ZAOOKWhv6Sso#8R7c<|5+X?Rh&CWMe!R%fPzui^dbjme+ z$`U;vU^<_USMDHoI#pKmKx_Mo!uKUHb^kT<@+SP?=W;Ac{lGm?vYyT&4R|h?N1~7} ze1>7~PHPOG`HSi9JJko$M7{!GDVy0eDN(!wS`6I^VsLYs_#>qvxEKdZG_~gl?=_$vlSsT<; zjT@gsc#{N&hb905c&`b6ge;UnQlTiBYK2O1xz$9}!AmmqG%ef%7>Yz2Hn@WI&E{xj zSi8yh_e^GA*EAxRmMzmLh4h1+!?Y1>*+A%2sQKP=@gi@HyaMj=%_*g$S*qX_{x$p= zz8D|L*8;jq;;{ZQQ`|;$M83$*(KpyAsxCp;qN_A14=useL(_IG(covcIQG0#y8U*g zL}e$1+_obMqV_+JHEi{k=UBKP2te6|cD;K~iA;}Igb^wnwQ$k449N#v1-1va} zIDSJ_HctDCfe#;5g{;|GBt09?L|a-}{&%M7djYS`N6}f?(51TBARGJDd}Nwci5!w5 z-4xzLOzlTk5``ffsyYiONkA=?E=?+$!4;Rag5+Ie!>Cu9u`}1sQ!g&aj+GXpUVN1N zg+#^H4xuiaNijB>T+xbp(hD~w96kfy45OZ7+`}C+Q1$Mkc}ppdgP~zD5H;cAZ0P1z zgsyIoO{G?;WD*MMb2_9M$%R$pDGz%7dnRI8l}3}2IME5%7Zqsg7&4)Doig6|I}c>uSkz;3y>{rk^3S*CJF|Jajr1G8c}NL^)r^H%eW$ zb<|*&b>qFBW4z>mNa-Rwg|Dvs%_LNy7^8f!W$rf2xnj2}bqEnlPa6|7`sid4)^%?2~{geBwB@iA&v7qiOqD!gqWN);e=kwgY!*tBkx zeT@xi>?+&WJVf(FO`b1zfea#8lW<=AfOG6x;Q>mi0X)T1w9=Vd)=N>BjKWYi=o$A~=#vs2{>VRCVvS(j zw#F^P^6FM2uL!Nf^KwSE7ZiMA_w~5Nr0Q+MCz^8AL3S^Z%5dEF#4{zCyg~r>LAZIy z1~cna3bUf4@H@*%4F0;9Foqc{`XZT#I6Qb~S6(aiIJ?2o30Q)9)595VVy2|>7!OpT z5r(7t^1=>#FjqKACN@~+{la8Cng=T9aO#`_6%f!|FvDzt1P^dFZ)Bu%da0Bu$rvdI zDZ%nIic^}hN}flgeE6%-Okt!(Yf!2-E8(F-BmdDqm3?GYxjTbD;d#Ut+tau^Hn&HM(Q>u zRc==&j?r22cOCYlIZmISwcr>w#`H~da+78)TxcQma7&W9N2&aTHxzJ%6ZH2j1|&b9 zT?!{|H>hJy+jEw)lP3_Ca-4hGNK8fP^E0n7iskemXsKaNv?VG_5Y`vd1M7Oq!sCY# z;5x;r4cD;`)>8yE0+;;k;89)V=>5(VH=?^f@94Jqv)IYY_pK_&9)~=m&FR+2+WL~$ zT;;82g_35bRsag|Bz12XjO{$$obn9qvfmXdd7nuYY|J$ku~(td)8^y($e=>zXQO8B zZFXVS8~&oOlNB@+Ryrc1p`*LgW5&%u&z_nf$0=%2>|Ox!978$aMXYZ=dpSZ-7TI(A zfB)5r#*pe^3qg7O$DG@VzD^KnmHJQu=@q_5)v9R#w92xwx7MxhXEXlLq|sL7wJB_k zK{svs41QmaaTOcE31dp`4^(>J9BDss_uFV;nIX&ZQ&k-93C-)_R%v6vE3p(JkD z27FKxH|e6<(2i*WJIAj`S#RLZTMt!pFK?>W92a z@gUpKLDm_)G7_n^dCNaR(nB_qOvpCK?q66O?qVnWF|+fL4%ga+Irk?ynB8VaFqIn* zJO;4HhPa@>A-Qk2hfM)wR8$cnU!V+|yfU2kZx|^Ux`2n!xt{h!L8>sqBf!HMGeYB3 zL5dMIBbymKH>jdP&9;xIjy5A3U*_r@p5|(~8^-BHo?54L^+VQT>?CdDzkv#fyC24D zdh?J>H)za(5HFC`7f_%_b*DecYl!rQ*zRpTJxRWkt-v_>b04?AEY4lL{-z!ESjr#Z~KA?X6e zow2)z*^r3R#ByE|0eJ*R^17Jv1;N;2*6V2H>2J1}B`-iLJh+WrTJB2%L%}Q%J_iCW z$CXULvnaBS1{{0qo|>HgK8G#c_n=Z0Jco?sWP0INm11;o><*5XoV9AJQ|_ES+;&5_ z?q0P(RuzizprJU$Gk@myWuXqcJxRPL4GW0;8MD<-oLg1QQQ>uCW*#1%yT)=b@~bh3 zVd`!pTwtJ7hf&rZi;gsZkqU8NR5B~v9|hO$DFhB%p+gdXVq`ofRiU6~B7V!0hL--2 zM5ly_6<((yFI6~RE@zh&2BY=Sd0QGQ(I5$Grxk`UU-@Myu<;UZYsfraVm_}E#}SsaD3I@?F0`3oS%o)n0Lv&98 zt#M*b$vj?Ps*cpL{(&f$g6a8Wqcg#eV_qkxBK63D9xLx*FDHta9+BuK#$_JBWC8- z6$X11f!)t!VhxbP^8Q)eN2v+7P-4{S|H>L}6f-qB`F@qSrDMuH=i}2%+U@Z%hsC%> zjaKOKCe^Tax1l>MwwpUDA6>|y^#=x=+@gTW?~hSb*n!S1ZV;5i$9DP5IP zw1>~kz%7CKxh2VjKc~rJGd}g|B5$G-ZSqX}Pq(|7@E!d2D+^6TnCW7=7@ssGFup$*SmPedp45);q_iQ} zo7irM(3$tC2%yG*ja`1t(8BDc$urz?MHCwJ^Bk9_ie z68$KhC#+3glP%%2dT;MA#BE&BM1ZA?+MUY!MAc>M`n!aVdVJM5pPXeps*+GCs8jh&aIk{a5S-i^(5znV z%=(cwse%)-jI0j@>iR;)#9LYr)yqE(Tl0o-%Bvc(Cr6xryePWxy+Hv_c>7YI;vfWQAftJbP?VG<;-aagSt`6WSIFJx6_ zMU&M>yYOcH%l5pej;J&wJM*oI2ON|#(uWjom6;ePKiOraKPWfogDO{+q{oA(=ch)j z^(_u2olC`r@>zsm{Fq9VQm!nZbjbLgXEJUGsnoz~p>m1PlQT3))yN96Km#e9QpRzhVn|YO`A^TwAhgYq zRT2V^cnuLi!Iv6xY|wdKqY!t(iM`Py`va3#TNJQzvD8WA?NL#a(h06(R;oxWc&nXm z?`96=RWkj=<~O^f-~hZFvAS_@z>M>L>(KOC+Df7KfD1opL3F95FIJHxd?;ig0@XoT zC?Rs_#Dy5)>SCMp-%(9PhEEH5qUt^%81wW;eOdQcSxYq;Zi{R+TwUfvY#;SiU6f3L zSHMk=uj{n+&Fs_4I`7A`#cGZEt+&)9s9O?Tnf5-R3lQF?v(yatS8{RmTuiz%96mvG zg3Mo0xP3XP=4<&b+^h3jpBt6v&LLZ*^9Kv3XsXc3ofaiG5`F|WCbwP$Hv6US7y!5V zX?ZTXyE)$Ky68;1ifLOHDLQlItXP8!wr-1Df^dN|yZ3=(wymYu%LZ^u3yBJaLIT0{ zAyK`E1t0>E@^ah2I;Pd?u3hguNdlh1xn1x5Vy)97J5lR=29zDcEcwM(RAM@ve=a|R z&bo%ST&qpVJo?EDl^pz9hoq1p-l! z`jFJxC6`mqF6GfALcF*w6Xb$jy186A!s^d+?5TGNl@M#S^t6k}8{Y3=}61zPjawjLl1@%5kIVXXs;pbaAGsGM6qUpvdv0X#)FtwFTDXP z>U7PaT+i1;ZK+U~Z~jYEEkw0qwr^m1#%!UrBE|KzwwL+Vt(*Od8Y?%e%?muxC*D^( z!!H@&*TUkSQl+CxaMKW~T|&c|bShlU7;(-hx*K7*^!zg<&2``&tE$uQVC&Q>{A{UP z4j-1n`0i&!`v~4Ugt34B6b+=knVaee;~2F8Wsvm<*v~JLxpNlaz2+w&P(da#AMG}i zMq&-SGl*$vNuk3IE#k$2u&evxrU#bm!;VD7hwN$0O7a9<&Av`AsKYar1^Ww~9e3On zUIO{i(3maJevE^>RhK7ILZ9V?MDL6zh3l;=7((*&ow}!<=yp+pl(gN|u^?`o8Z+$y z-_@axxhOGK(sNz7ZIai{RpGc4M}9BzZys0Vt_8dinLF(rd+<+b(5I8P{{lL4Tc38T zN%2wUQhPhv=v~pwP)pgo6{Ef>z*eF{=Sr8r8SYCO!?kqL4pGlk z3WK3iFy}?ccUV!Oz+B3!7z)ak1H64sl=C5nb5Tz<4QVDO=5?h)Ak63nqTLQ$N;^|% ztjJ9kzg(hYW^2TjHne^oo1l6I4`|m2FY(V(vN)2;zE*XwGq<{|YaLNJ6-^ZUkUgy^ zDScQ7r&ozMb7Qg|YtGul@Y$;O(Wr5-oQ2QjzOf$zw>_5IZ7hKaNz5jSInr9I<9VlO zTON?P_8G#XJFCUjBfNq8>E(1m1oN)6~E{3JIkp~5q^3fR@nvxsi z6)h>=BHq#3;l&Vg`{VDFTkO>PxYJfN9vCW8CzjEN4~ZCfeV8jDTGiP2^iRLxIQt3} zz2Ug!`)QrGZh{U3lJoQ*GEy9?z+<`a%q+TYU^kHzc(b+kKYFZ4yq14@fgW{RiIThn zIkMggMk%zs?u*`bYJT;JygS{gUMNyY!_o4ue$K`2F-+TVKIVuxiA<6i8Hw3H!c8Hv zfv*KP@#Z!fSEF$k8WMV}adQQhGhBp+O0Vq61)K&uJnHp-t;9~}Ir#RClQWX7PM}RW zCQk`3wQI=gZFH_syl_ENd$1nbcGVRG&0H5iRx~~9RZ)r;ipFri+0XYtGNhMQTCg65 zc0s&tq?&xpm&^u#nEaH+oow&xjRjPxi+Cal zJh5vStrzys$hQ@vE@Lg@Q}9a)DXa9yeNq(-9voh>HLE%Vp30X#$bUk1EcUW9 zBnl`{T1nYqh_Y4Az&^}S+2Aaip|Ln-&&Z4v(@oF<4GLD?$?1eCO5U@tgKNhkH?Ni|O8% zjT=6$#%+NUiO@mQtni*Q9f@mOWRL|c4^bYNqmm@AqglMUn}sqoV>%;qg{3XOFWXch zaHUclQG{sOoJU=+sucrwPHpXdj!96FeJSK(T;#JEVw?LcXS@(%nnC29tc=Z-l({(> zC0=h_g@0zP?LLVGq?h^qdczIqx_UTlggS;|b>`4V;XT~yxu17HJ$|#!#bk~=Cmt0P z#|CeSs3r>_^yWwAj#P=8?YH>H9dbtsLF<9ni zG1$!B6^t&TR~h{wEb}ZZ;xS8`0g@`Cj{GoN5`7n&=*+TlrF}QQ(UX=TARH#rY0wL7 zjI!GCC0tM;G)R4tho!(9X__^JaewM>kPF`ECA5&rO+xo8z?7)2Yj!!l@h0hEYLztZ0Z}QdRW7x;W_!~qI$_b%nd0p`S70+mCngg`cyV*|b&%2FX zY;7+cA)DJ7w>%~hz0g!<$#MH&90&fB?jN8|r4K)yPo4sGG$vvB-VgVF`|m6?x-Qde!U9zsZweu^F{FVZ$h5F0PZGG$PzB?cNLEv2^KT)@4rP*D)W3=+7{8d8PIj^o zrHlwz5D!AS;Ih%}2dKX889eUCUx|w-JHPZi5#5YS7N=kHE62xYr4q~8`K9#ceL#Z0lud&Iq0dWX(=ZU4k|w6-;InZutQhlG;;2vLRN&2B0%^k z)|e1+kQ?0DtgQnGFC{>DDJp=IMlSGFj*&Bpk<0M4oLp*(Quuy$T3}>z38t_I;lHYc zJN!Nfza<6X6Vk*WJT6TP_fbYlTInLiWEd@zV01oIrxB*i8>MorR4kR-IDiOGLgo)5 zgv_8wMer9|j?o~(GEJ=EBxXmHROCYfBXFi3xj%>yGq0B6q)>su85^e1p0N>=*#V0v z%$F80Gj?W0Ig~k7)k3D@5i9g{JYpwT!4ZWtkEwv3#f+wkHcoj&Jmi#zW)+bbTScU$ zN^7w43>6HBbki7q_&+sdNMx)QWJshZ!hYhQLL@1aTm&MAN*D-|JPbs3P~m`-(xn(F z)PfEHf!Clakb_9A$+A1Y5E38B_CL=bL~dmGIunQJBK{z9FY~<|C&SS9Gb+B5==)9P zdnry*==%%iI}~vEJ&LcP*=92Tr0LZ*Q5{vbsiU|tLwUX(uifC81aI|{~2zi?(o~t^Vp-AC$%-_}lM2B%@@ad#*2IfD5?ZZ5L z4o-$m!~CJ7L=Waljh#-0X_P`bnB+>8aHZx?CrOP`a6*9S)g(0?10j4g(v{QT(o2!M zSu(iuFA#lU8hSXLVYs9Wr=YD-Im(_BObMe!AM%L#3wG#qMSD;OS~5ay~KHNbzUkWC8KwG_h2|hkg?gh`%FY zp1^1@K1rfye@gPuGbN5o9UMqXhKV%h6OY6wSU;8LC=-z+18SDw4d2Z}^eJ&l?ue?# zRi0WB*)a(ONy@N16$#9%nHtSOanSTvgM>l?BowmJ!*gavQ{O$4+@Sv=R8NHSPF?qloJJcSc){YT#l8K7_G!;IR+9l(!{tz3V&ZjY(qmZYJ?Wkfbno;fP1~Rr_v_mGE zQNy@GnIndfD>SDTCB=}g*U%}tFbE($J$uZE(L&A}#)GmTO94rl64D6*;T15WI1=N> z&*2Y`pEoZ)H;7+0DZMQ@*@bjc$}t!v3SXEjA=}8+FJNRFjO!95HIO(+rG|2WQ(gMa zjhmVud(9d@b1g95qU{B)AXOmAaZ!p7GMx6@P}FW1zUgt_M-rpBtWdax3`W8fJqiXrElx|p^X5TOobn( zC0`Xlv`39<1i<*N8p!WYf=XY~YBWy(OdtYZRhRsa0$>uvy)e^s{XScO9VeKN0${uz ze(bY*hX5GwgC8%<3l{+6YBglvS?*mpTmoP`o}dtbiU1fF6I6QnNz*3+VEi3dDnj1L z$`%-0Bq)@*V+#z%5mfr%&`IrVfk6!WQ2>l>2r7L@`|ly_X3KvLOxDpg1O7=u6hWcT zc>yra;A(``2!PQ~DiA#*NIs0H6ab?K@Z~Gi}Yi9v4YN=U`02o3X zMi{%u;uON<2>~#K;_8uIwO#-W4|6Xx`eyk?Tfm=2FdqfL(Dk2V=3qY2KmZKA2`b&? zLUj`XFzgRM-oE?zpCnA?-emv>`I`tT-T1>*z5wtclBH>5yY~XXf5zeo0{%h3{{>-8 znM155|2iN90sj_g6vIG>@z22YtML#=*AVbOp_hx{%NO)R>G5IYhM^}gY=??&hebaj z9C5=aU>J&^=US(Ufmvhia3IrVINhO4Yti0sDwh)nx;5`}hZe(J=LkciB>t5xiI{ z_~-@uh(?bTX<}gO!@js!RhR8}w$v7c8&(1z&1N4RMvr#GN5|L~FLRGnN2Oj6l@JcR zQH`onyN*l^#_Imt^N{>Q*p?I8A@aR4wz{f~j|*avW<2#;A~ZZNDj7ID=eY)OFe zxO@(pEs(3C)IN!Ql&5}lmTh{Did_OD_R$Xr4b22T>c>9Xg&slZLqQd)ixfy0*>Uh; zi`;-ky2Cmg!r4c!&?5*T=x_*?*39*^M3Rz~n$$B`D9RX;nL9dX0$IT#szJV*_^G7Q z;Wws6lUNnCj_zq?9r0h5U;c00jBCZ)h+nrenPjnw3A_d{$m z2u`v4<1{g7T*^M$qnZzmFT!e`0+X{kBM_v@sNrIEX!TqT)1B-5Tfo#&MVs?L_EB5a z5H&GmA9YogYI2;R#xz+qtz7)rM+4!bxZdzlF2g|6F{&3`BiKg;sMPmrS%s)E2%L17 zIvTZ%E_alQ;3ka2nt zi)&?}G&+bRbG8N=-IN01X6Be#A|f-j#DNVvrhr)^32+lYO>Qrf0k?@P z1{uklI^*3e<2jexubAO?@|LT?{H_6qQ{skvfBmFG@J#8>!!5^aKz5oXf)?{N6b>Jl zTM@u4UHd6otRddMG##FjIQDmTx_W%abB`zrzWnwWwbAxP9Cf0ANBVsjLqAC`LB&C}BIP($$n3sU4^BVCQ zDBFpP)iB>h=u4L}Uq!Hi8?1NVf+T>2mqHWPu;Y7 z+fMTO(m1f#uTUr$U2N&5_h{dP8M@S@p4{lgWao?nIfJ;UM;M40Jpc{eV7s0(>7I5e zEOtmSZxhb_#E+iwrB3IIaqh!u&L5q2(Fv`6d9CZ)=6knv*n$4`Zl&6U$z^a5*K~^(mzyn$WR+VsQ+k~fyRsJ1d zK>{mNnF2LS0jpoQ7J${&`s%*N)%_|T{(-jlRJ0AMAlaN_2g&9tJ4kS}+9x3SvD_+?Az`F|%_miTwl4M5XX~ybJndh=*KI@8ulKF* z^+D|Gwj<$80v%4LiPa8Es2GN@0m2#}RSuvL6cO7a5;mOCwhHEXG_NzygXby*9dj6v zP%W9Xy`eiAcBXZ!165chV>|}1)`CX91>&MzXDMU7*+mn`2;0>?oA*Z%Y*HEbt?$LQn{Q}5J*J`Hs|MqPWR!b9Xb*rIFY9-5f1KOPa>>d$>nl+AzBJak{qmI z>udAQAx*b~4*#f|cbG45D3Z!$AOU7ROpUj*95!>Ve5vry?yuekR#)CtwvF)1UpoPF z>(akdp?4RQ`UM<*hI_-rOjY8+LPir!@^bo5qDZO6oVRGuTjP94Eg;FvB)(!j3dD16y*yi5U-OrTZj<;w?7-3ZQnb?QO@ zCv)I9n{DNL;GLZ&&d*msbJlS^0UXzBo3oC4|AILS!ILy@JENh&1-xaNrma&`0ys6* zW7<0Ts!dx*If50nsFDEhjdg2t-~_?+kw*98c8Zit)BJZT{%5y~>oNbGcIq|%omL|A z9|q!S)^?EqP8aK`t+9pv+TN%)6LL5jjSC6TxNBY>+DtU|BtTp3q@eLW zR@fRJlQTMqU1)u->dwo?f9TFjXF)xtF$J7k0V~tOVq|Tii~whE3GjvY5IDyb$$)bt zunH}ij(*MqzN6stG-x8^AstaW73i>fJ%yL(IZyq3Pl0ol%2VK6!*~jukJa)NIM+1f zDR912+f%@vBkNr+psRqSL6dgsC4)6AJF7YansopCjx-sq>PVA4Oh=l`s@0Judm8FU zlO?(xQQ|mv8)B1-jMszYfhISB?>;26JV}ZzaN!fR>`Tk7P`kNU%7O1$RRW1iGn7Cw zv6jhI#;HS>FqMS5^s7f5x(wDaAfa$fEq*XJyXb@8%Nz514^Sjo>~|D+?;7ySoU=ot z6MZk=?vk$|w=TqG@80xyZ9)`MZ)nTaLS=1@l<63;GZTTomaXx4oQD4TQ+9c2cG+`lo8Iz!o zX2v2i4s4G|fZqcYPN1oan`RK8X+}M|xM_u6UEEZr*2U-mzUdnRG(9MnBVF9|CjvD6 zNmCaiUoE?KHN8lHrWf_BT}_{;wQbYy(!?w{kG7I*X0I!3&4TJNUi^B2X1F>%kTKPy zQ}^$DV*0vly{mVYg{*w>xJrK4`ERgo$BI5oIDY)KMUV*X@<21Gjuo?rRhHTiu+7%$ zLclgV%t64yPZ|)g%{%;0LclWHYHbME=E=1nU;*Z*58*Z+0=vo@^r+U4va3d^vX_W* zQq`cP!l>+TLFR~Da;OW6htq<}G?0ma1B^UEK$*?oD1pBx1Wo${{1INA3H$#xGT>hU zKR8Q){~@HLtt!6?#-;9sG}I5hk1-e02xqalEbK4hZ|uK^zlbTMH}u_AgKQ~Hb4$~q z4Q!9p<3kx|+lxL{U6NGLM7*Fv+@z0bQPhY8akRwOtWRC^tYSr{H zIq*&S9XwaF#M90#p7w~Q*;m!&>C^5#WE03&VtElY^_^j^`-7{M17k%0@9$7 zAI)Y)*YcI=ktGMvayJ|NwIve&5>5xGaP?H&hY7ctL9FhlnwN|qmnmc!xBu-+b zG-x>w0th4rrHN@}DvoQCM@fbHGz90xqf=z1^wcZQMXOzI9GaK;%etZO1E;N;*?#%6 z^nD8*+q~+V_^Rc`C$yA7UxCPXe6&5ManQJ&#BP#va4ZfT3aAk8uuEh0=Qp-ur$fr*gH|& z9}>X*p|%~@c^QLQ)7nr1l8-V*f%`9N%o=732<^evBiJoqYaar%_R-#ew~k^r;CXpy zlioUw0Ikz>$_(You)fpQ)BegLMw=b8OpL0))bP+8B?eA zJ_5Afr&XAhkk(hAX_0)RmWU{!CDi(@+7fELB25gguI6Mz?ub(JJ$wn3cTHAnO9WFi z&Fl%rU(GlJc@*$SmLdNWt&vWN>|cv2LPNRBHC3(0N_9JwzGLqKN13RUW)8i@6sk(S zIslJfm~ z-v{chqeFARh}^*$Il{p?+20B?N2F)xkfx0J*TnZ83YSg3z1jmNT=WOYP3ur5>mTOpNE9h?t+pAcryl( z_fGaKz6x_mN{ckWC}3OgXMJt87k*w_?V!?G zWLokg(JvA0=V;3h0%p@I5p-&bOsR=x-0;dT<5qr!g4GNiOrfg8d)1>DnipbH+E8jB z$E5IxI$tKDOL5SlpHikQqzm;PRCml_Pp551O7ipn`r&x7*5P;|^wkzB@dABq7L?*3 zXd<(x?QlsBf+5#CdempYi89i&a|ZPsot*=LmxS@r%x#Y`$*DHL+9Vw|$L8qq3OO;a}j$I@eSy2+(!|gR)-R9%<$0;rs>@Ih8`(Pcn z|MuCDMaspjWk-QdMRLSdh^seCE=R^2txj1-^#`gL@d>IDxH*JJlswSsfc6fCxg-$f z>x4mQVD()#wJqC}^v*`9*0r!PB{X_Y1J8DJ9-YUaq-E-}UOl6f|-0DyRyW z+$*ezUfr$Fj#)jQ^PUS!4GWL7?-Q7r<*hpDXU8cF0vORLC<0uiQkfe!XbJ5_qaXA_ z*nRtX%G68ADsCu$z&kXLB(W6Mrq3&Y*io#?^7jF^vMkR0`R9F62919eP1e7yC$Eh4eXkHG%KmPLhANs}!=?w~CG2=NzS!1Ee3F zj>}Q#6-ffjSK~+;I-+@e;QNkX)>0On4T>)Wd17Fy(!>(z`F8+*?gRz=tT|f__%(wF z_cFA7RpP++6N5~oA#i@71n>*h7PwjvQ+}DXAg07}2e^p=ep4Vi8Z>fXbH$`t9!S{) z(eP%`q!%)W$r=|4a}MDL%U7|3try`5_#J~aKyu4*;P)-8=!!%mj!eOXuxVOe+KZNy zPEDEm{?#A5Pb|LU>p8$G{ZXrqqiO~(Yiidt>-T=0Hf|ZZC@Y!S?Py|B`lsm^qC;t7 zG6VPzl(EYtIaqUD*LZ(co$u=utbLs_R}gsa1f)H>RzXH=ez2%iF()RTAl=WSjT!2*z+S0I7^DoS{*>(Izls00iISeuJ0od zd1Hqh?eDd(K_GeZTK6IZ-u?XJ+0OQ=SW{kh&9a{s<*g zC*FDuX3p4I?Ky7eaH|c}>1D4CH+pRx6bjI7Z<-i6W!30<9|#cq z0f_9=#L#N%;zHmGeQH4L0J^j%AQ~FZ#0hA*k<%Sp|2T!b=2B1q1*H`Ry7Yt;i`weS zheX7pnX-pij_Opoa>p{d%!w`)(J7#dvbHhxr`nk6Qr&$R zUCrT_baVUuq2zTJ8gy+$%OG5v1SNAryIUZxn5`MKqE_r(96&b#q29)zR7TJ>4DGz~ z(Re9z5<0pLEJt>%C;~3qn)e(*ZbEt%uir5J3Aup0_Zwd33mgcF$|7s*FTAF z@EEx3(FVHT^(5DQ3Mq=N&+9bss1ym(HmY%O)=L9?vfEpI;FH}RBk;)(Q#JTx2&M;o^7CK}Lqb(Bh9Qr% zU<^YDEf~X)p(+?dSnw;s7>4}(88C(+w>4l4VdJ_mhN_`Q$a>JYXYlG&@OVvC@OYM6 zB_QOL8bd2IQVT;Xw7nh-tM^g+8>$2o6Uqq5@&6p+V3^dyH7m722ULq>J_#@vDmLn+SLfm4eavAmTNR z024t(5b`h9f_fxLhIf%oINpIscZTRv4qMNk{XVm_9J#U}#EUV?FL6wWyoV+jEQKc6EHX?} zq*V$e%CZ*CP}PK<*O~n+aZz3M5*O8zgT@f1DR|Ux!HIIX2WJOYw zkx|>YM)n~HM)>;73VJqPK2x)Ee*x<<+JOMk4y;#$!@87`&1IM!i0-6?Ps`F09ZP`d zSo8*n?#tB-mxZXu2)I&C3S|sRSTsBS64)U)*CCb@ME^nlMU~Fu7J%sQ^tQK&?Yl*l zT&lo8bW^Q&PHQb%P)@b6I-_3`Ao?{TR}-rf#MpxvD>;aUDHo7%nM4E+{h-%~G*Zwm zax4$F9^=Cf3llCH^Q{K38v4B_3!w&L1{A`Ph2$wjI9%eT7>My>!lG;SHKs^kUt?JK z6e)rTmD_`u^%|Y`hw~A{@U)~j<_s%ZIOSi8wq*WFHHs%#X98w^qtU`IR+$d47 zYp35!kBkVtJ%P}TBTP^5{Ym#;m6V#~RjDvM<$>;yu3 z5aP>1$jTzsJc`}Tm90i)8HECIC`pY%x4Fp{`@Be6%#^B_H+wFQR@>5r-FdJ87#gZql-x@1CeKK)Uy4_=Qe$&?rR&afq;(L@uHfDU?hEO#>xPhDk^xmwXH> z#bx;z7w+2qCxQ%hF396!auMjhQo$~y<#?$AD@7|8hJo(WU<|9~LduMC_e;zu!-Z6P zlvPVBMN-Tt$MIF89A~99${?!)J!`iAm}|eDX0@5qL#Sd- zkM`Qk>Cr`tIiN?piW(Aq7qjJOmCnTJGF%I(uE#_jq&oXgbs*Jgz~lYEGRAVN6p2$E z_<%f0=1(?rmIv@Li5=*1g990+{FS(-BJA;=GaWG{9w4FlQhT-0s2`+|MGcG(B0zi) zh_}^14TO6d54ygbGKi=NaRLx%+2Gcd%Y};>boo8<}#sz00|Y$f|~Gy3?wX*^+K*48Aw3) zMv=|s45VEGgh^F6fP_N?E|X&Z45VE?3u%`}yEw^GfmLN1d%3WXW+3fo8H;IWOXMjq ze`zWyELR{@yHZSvfrMviVmuFl+ChcqOx6^Td>2PoXL&y6&tTe-n1aMyFj*?AcO){A z1TE@;Fjzy%_*7WDNF}ld;JuNw%F?%}LY96WNJMeWBqa@iBAz&d70Iv^xCvHC>p!Q6 z%+|>PByJ!;;s(SS2^l7m`zvvfxL1ninM5XH%p|DnnB@t=9HPm{E(D2xa0@}=y8x)b zk?BCnFcIgO<$)vzl^LKPSvAR53t2U3gpL7_)Qd9!lE?sQ5z~ko0yW8B2LctL?Ug{$ zDquuQmIC)lAgNL!Q$54f=Bf%*Jn3hBYgE!{Zoadi;z>6N4pcnp8HllxqQ2FEC!WmW z->LD$lRFVIe+?M%WCtx6aTUa17|er4DnaEkgV$)w*ejw)II&o)OY=;c+w5zq89NO% zBL&F|2#~x0B#%!M{z@NkCH^Z1T$y73dBBwDi zSq75jbh&Qmff7arNJON7o&SC+PY+bWK6G8th$FH`u#hsM45Wldd2iVClh1Y=zb)GW ze70=Z8tk*39Hpa_LCRhNr0iv+#F+l7;F)^SDYfA{Evgv!PGmZ>Qm=qgFXt{sV=g(Q zV7099duPzKJzb)FE$In)mG*IG`%S}k2j+$^eALg|@x1jpg9Rhw&kiiTJ!4?T6{jgb zehg=V_=AO6+2cB9WsJ?p5)R79$`}GhGwBDy!5}j$V^A$L%(5|pb$8oc_-**+J892* z`n_v(7b`4XGa<2G%c;9OmR@oYUf$zwcyG+Rpw*AoWmE*(n2N2A9J8JrnDMFGE$5g4 zW!q3KLwu{Njt_qK(q&&8o^rHcToz_1ymPQ*;)~_|UpNHa^*GCai=C=G;&s+)-0c<3 z?zUW$G3CENWm_feHqC6}lY8UH8nuKSI#ZjMOALN7!!7+!sYFW3u~M_EXm}p;_=C5^95HYO&&A&jq%6fm1|B8P5FM( zf~XZ|_yH9X&xs+zEscL{{?@ti4cXq5z8kMsZv1$#YHtbkX6DaR?w=DT*bRsj5A;-w zYrpdFFCX{sjg79H!zpfCh;dHZVi5Xdr%8}d~dUiY1cTLVnmt);L@BVzyW5gc+GZ&T&oZx$4V*0A;r_UH(FuA$`94`11QR4jDc>H}CsCt^+RY%erJcrt(_;ooP;!Pg!}{iNYrJpZV_G z^loQ&R9#*2ZTo@)uA4X5P-y5I;`c_ZW_{(h&G#<_uIj#|T9I89IP>A<9w!Tj_!nQa z+^&?qPF_~9I-J^a?KIP~ zhFa`dlR|N=PM-r-%--p_BO>R3ol|M-^^Ovs0TqeodD{~2d_Ud8`#xLj$nAYq;0NE! zw+)8>61DqAz_=-QR~Am4GJ4g^MNx?#`n+QrZm6L9o)J`vUK|PY4gWl?a}=F zhnfEGXNH{KNp@Vd#A%3kyKRXz@l?K9_KC5b`O3<)d(E9(s#BMJl11Ms-CZ+6-2Ix% zoUGNmv4NhOZ>Dc@tK5G&2FrWXvTNy-$r~;oeS1cKc$cmmx z<&l%7J#cxEl)HT9_L*4=u3zyESUET8)?ky(Rk!!(8lx~%yl>Cc5dOUlA__G_a#ObvD6i-yU+uj}(&?T471YSsH6JAPl+ zY0;mHMg5gR*FJf{(%EG{E5DZHH`KweFZt^%r;QCbD-AB`*3W;@%T;!RPAoha8fnZQ znep&XFW!Kb|3-D*5R?B_=U-QyH$(^$YI6MkGcHAo_utRyyDqHT`JVE2vg%h3QPVtk z-da9|d{|QXTSByNn~^Q27cU9FIkjhp#k@vok5clZ&UWfQbY>5Gx(`KFwx3cycGNfJ zPh1*TfJ+$`t%@5Nn)P}$4t$uh=8>Z0^sc_YJ}B!OyO>hV-G`e&ztWc>;=UIP-%jcs zG0)S#S8sFU8_SK-H)MubuiRZ}w0H1MtBD_fPCSPjs9q)kKv)(t0MRGxpF8#*zIULeAYLD?3 z5VXy0v;QAP%4T^J_nO7-knYc4EH=5^QS$crwiCYv{cQW>^9b^8V=$@FUrtTx?yeC zEFUvuX#dQoZaoh8jQe@?-+Jw9>$Qet>EEW;8ltoet5H%^T39V|{=w01K^Ro=?JeZJYWwRqe0>sPTyJ-YaSpMPFK zue4lIJfr{Jd-uX`WwQFgc$D4pq3y<)=A@-heX^ya|E{t_!+GvghV1HI7+v$U#f{I? z4-HX1x+bSmc)#Mh!RWnzysREsFeEIcbl~LM>n%^Z9?c1>JlJVqX1i_4HHpm&1N>({ zN}nTNx%?}cf?oHM{lz9jpERv3%Bi|$H)7Z$*JF#{w(fk%W7(9IMO~{umog!w?Cw9L ze=L~rl_)ce7+8|&Zc*}PSBmShpH|P=K6B2l6?3Y}oR-Y%?OW4g%fDaz8eo-5{2JQ- z|E)8>P-iwI3jYy0b7}W%TExS60w#7Fga3XNchSLMylS8^hOrf!Fcpt>^I3hjbE{z~ zM^2m`wtHWY^>6;IkKP^{yZw!o-Ij5OA~UMC8N9{(Yt9%*je?rXF^g~bazkl$s0?$N zTOPD%LfY18yd~GHR>(r1mXEesR2E8Y8+7VbW(QvVf5HZS$27n6JLG&=`OWJ056@?c zw(a>j;K-HSvAe0tDTAG6_Zs%ghxp$&Y-(~XXTh3g1w`-3AN_h5jHJ& zVdrgzS9^#?PH*ur@#caNX34UNuU<$`o$38}NuQc;%0J4h3b($eJztzSpB5H8!&K}T zw5qZpj#P%6_WS;P%JYX^ibJoS-hbg#H|0Tl-(P>bGU{cIj)P5hE)-ITM_5a@oCeve zGmIPAO9tPyCEN-_RDoUapjkgTi4td4r}jtU{I^2RRuRP&i3oM6E&t}c%V}@>7Zo-x~8XT?N zSWCA|w}wh#Ld?)@pqsG5_$}YzE%v_hvj61_-<$nMcn0h`on19-#LX8k(nGVCzWKp= zx0}_=Zkd%$s}t{CJ=lL@m16UdE!Ah6oUw~`DK8pr|8!x*hp@9{vE}+WP}$Hlt|WqD zl3)FPwZy=zAMfS<$_$$pCB3WzOlGvXe{oK4!71CygZ-ZahpFt4Q+sgNK>23ylG{f*m>butUF-lO!3H8{>ca*#6#<@23y>^i!v z`aOm!y3kB{dfI|m?9C6yJ-fZWbLnKMIXNKPbY1~AXvE0{kLlc+QJg!mfhMWSoZV#| zpU2&uwZe7a;9(2>qX%B<$Tx2}u3bCJ=r@f;ZSyIr@_y9KZN7)EEFAcBO;K7Sg`w&4 z=|A0RG6<|3z3G8P`k(z#Q}oZT=7@Nh*%vR{4RxlOaksl79%la4D~@-oZY1Ji7GK@a znDO)G;6Hen<$u-qcWwRNRK&xqzxpt3lU19Ec$m#sulUA;Ve3Ua%=W8~f0q_QIREYb ztHyusV#~)O9wzwe!zAdxf1ZekIehhsJ%xu~oN>n-*@^{R#pRC#SsPt7H&6)@R z-;$uxH~iLif&lPi;Vp*&ojM5se?LK`@6B>^7XZVL1mJy_CZ^I8%&krf01w`8H_0Yw zjsReN2rB&_YlANc05+MR(u>Xvsu2K#-msl69n%EB;CJp$I*cFS`n?C)3#D~GSBD>rDOTe(4p1}ZmTgLGMpIumi4x@#otn!$+A?V3SF zt=3mH)cR4bYq%2kS7U}XA~eVlA~Ifa$xrH1=Iv1_U_J?6(B-R9n%`1S={#mcl@1R2 zM-s^>zyIfUm!GfOUH+T~y37Aji`nMi=`x#t>2q5*G}3L|(5Zpe4Lkn}Go-u>=A4(| z{!CIGOGHsEBIY+l#EySynwmf3rl~gLj0B&{IHM3&WAKWMlR3O1luK!xt`C|A%_`#wT(qC& z-Jaw%1?}RfMoW@8!t{F>^VUj=!o5f`3Ply>r;vl>m?%G`pp1kUf(sQGP03_j4yEx8 ztsF|@BTQxpjiYgF4iTPAtO-iWhe}yS3i$xznem;O+X`WhFC!VX0hvs=AVmg{$t0>4 zoM;+iB{xR!YD$w6d3kw%9iyyJ3!^L_VwB}8@jSh_Xy(sKRV36mn(po=hbi;mXb#=d z(MKt(e^gD~wMNx6sLoL}O;(R8rDs?TC76sEObD+OCB>%EqG_emO36W(T+Va_jTy|M z;)0t?F_bHb;{0)moDTt!Sh{v-({-wDy6)CNSDu!*(PfULAq;G8#XwxAkWq*sJdPnU zRty>iYKcLkcs;1HNU=165IXO z1I#NVG6Z!1Y?nH6mwy8DM>3i0Yl#uti$B?3Sor@>tr>o%IkmBTxf9U zt)^%Vy;W(QLvOX>Uosa87;^y*y*_in+E!~stlrih5$lk@VlG$@&>9cxTy1QLdYM>; zBZXdyf3`-qKBmP^>+5y0)B4R9X!N2K$VE|6N^zMI>hxOdv%$64XVbYh`)nrH$3Bz` zqQ-S(dSf$Bt2Z`l>+Frq{;#_ZaI*;5wkCPZO~Sy=!cprQd#NKmb=dVB*_6fRRP$ZO z&e{|$JhyAcn=w(z=MB;}B@KV^``*_y$wQECz;=YXo@uq~xgRxQ<(um>I~<(Rarmk& z<5%z5nsYJWK<{o(x_>81*fO}3t4HhZKifz3%-t63+_jG(ThyAnx)=Ki88B0tyZRc~ zIZCC#b}0l2vl~i4p4P&{YR=-6WoKpN1`9!YdiIzRqg8hl3Hpqi8 zTD_;zZCdLRNMJXcB>>o+uBVr7Trb^8H$57vzLx0Jw2z7KCWRc>g<$Shi9y*JOa{wP z0MSv0W(b)=s5d&D)h?^2KxS^Odm$EO44gPI$Gf+1cklE3)Hi3QzTUXS^#WeqBfK!g z%TQLBSz_$geOEWnmuzZ@kp<7^^L&FAHp|@#o5$eEyB9Az+_q9yu=ZA! zp`Su3=I}nBtWl%xTW7!dN@NXKmE5XEGJmL{nC-%LM~8I5cWM$i2>s`G}J{I@#)y6U{4YF=P9 zfwoB%>uyDJ(uBuZf+f6A^Pku_;X8P^Ry&>&#+^?UP$dEj?|DkuMJnOUbL;bF{ z%l>}3@q;Gkt;5R}u9OB}IeD?YvAFWXgEOrTdmI~cgFop}diu}iJtYfQmwY-!M^g#E zEPjZ6pejG`yZZ!&tXLY_{Y>XaX%Ri%Vf?F|29IC$;@pJRWup#6P?bfNWAoenbSS=f z`j00ktvPt-jA77w&w&N4JI@+s-9FdkM&$t$!-a=`GDyyCdgl1(RMU>*TYLELeb@Q> z`4jHuOo=Z(MOChRJh-g7%BJhu>gv^7H%)A2G3B>o)XaA;I$1bR2o#4Fu`#v{6+@%5V4ZGgM; zo=(kdFAf{AchTPCzYjg${^$FZ4IQi^g80LH+IqOo9yFculx?@zI3Q;G`_;u|9xdNb zT55F7_U8p(Ku|*mz@JCZ#HAg!W2WKX1pSm2()IARl(Lf>E}z|YvRVFzHLl+4<|Y3h zl%0mgfR&v+lP8eQQ~Krx#q54&`e)xCx(OG&+wmgm$+VOaf7}|u8>H;k zoRh10K3|ElqS)k}F+Kvfr$5dmyBt5#bnm{%YkQ+QV#_`#b)KzifD2=^qXCrZW6N z%V|BX2EKAVJTG-9*}>iOq^IH9{GY89d+kTW6poB{qfie~`bR^RJu-NUWn$7Fm%^xg zs(~1A?LUo(al^Vx>Hee>{7+GO9{#WV+3;%m)%4XX6EzW)4SCPCBKY-2;Y)v9%4C+L zHxOhh96vA4sJHLvqL&X=u6=h*Zd-D1ob{AQ#pcB?+YB7u-0Ty|EOA?c)hudI6l$i{ zOy*Gyiq!vHuTgGGLsVjJD7VG!tkGM8Q*W_%4W`We#oU&L^h>4R!sJ7@t$-L1I0yB2qMcZc9sptwVEw^FRQ6WpDm!8N$M-Q4f~`0k&ReNOh7GyBeLa&~uS zUK#}+)XAeE`!mh%>W7Nz=}UY4%K1Mm!nxL)C2srKMZ;5@t(4x(c^aPfNW%Nc){|>H zPa6;Qm`2u+#Z>Oi1LKaV6Kjjq^X?prvLiZ9!XLU#EjtyCT@eM%3nx`=BRL5Uc{`Qf zgVNSCzkHu}c+{KOICbyFt%K6%Zgcsw0H@AS!sFf+gv0ps& zT?#_LxOH#W?AhKvo_xVPmJ{~*t+I}Ok^6P|_I_iWi=%;oQXrRb+JgDZ3$+!#J~tzE zi}joNUV_xi?oRY`lFmEgYzMJ}f$#p=^?tfi>{-j=S@uI{zgOI2!`_A$NIK3z>sb-# z%zPK$wL$dDmX*1yp1d9(ekXj(yDc)}DWHyNM#VZ%bHpgxJL3bgUYPTGU_(d!`gpu3 zzm#>4`o3iv@}arA`RJA{OF@EjyAUyIIrXmz(tN#RI8cnp#@*!LQSX=*8h7o~6}B{c*~f<0VT0VUZ*oe%;wk~y1V!((Y>OKIt9Wn=QA#NJnE+3Clr3?@q9D*$OF~j^&ndf#nBt0SC@Xt@ERBI{8 zr3ZwFgi>4SG7WgJ{2P? zR&DTE&LkGw?}It+TdZ{s^3@+~vSDC3D{0UppoQA0R5C;yC6#lrPoBv;?D=lKY65DzA=#P*kLB@Z+@?%uiK2NKnUpjA#a^ zEky#ro{wwyB&fS)tMcvevz?1{stj)Y%%CD3@$t($Ye^gY+7||NJ!z6Z!R!HhS&EyF zioo!z^?K0SAK&+?$Qg|LeI-fMGfJqQm}QGv~eM! z_uA6APfm^h+DAi2hzpsu!x~NxexK;lq(S#Lv6@XRZv}mWTp_Pcc-8^Z0~uGbKrFU< zY>J-9!pvfhdUki22-Ih8cS)FD>(y}8uYY9lLxmsqW5vLVnx`uZ`RQEID@?k7gKk*N z>z}#0TuNyVd{P_LsU}a)if|zaIGGc?(eoS|`tE zPMX)OU9|4*ZN{H`=nda}Tp{FqG!>M6%#hWx?;kYmF6H0_P+m^-?ZPwY0haBIXZQ}z zB!D-I<4UN%l%JsMH>S?lTduSz#wTxjc=Yp?7?tqcTKaeCHmTP^c5l>ow)@$nKaKBo zdC9N6CQa>re>LV*K=olM_LF&}rm8-DCb|F~?ZQSRxt{q|gGoK4PF;XiFPXJePspB^ zC-UzL5A{t#vF#tO6?cE0SZEI8zaq8~x=aK}t0uUE5~37EI6wa1JJRdNX8+AkdWk}v zPNT}uv3}_=0;(uCEBq#Zf94nElhbO#8|Uf3kB+AqX$M-ZCevEL^^>l^+bRo)h|qiC zL3*}lZLJgFxFKW&=H0q}5lTbmh z`@nzbK! z%IcKYls>QNvIvN!cCJ;%2fL-@8ro4GCeZlG2PrUKu&IyUfl3U3LJ zkJ0q!fy5W*%C>)g!wfV*oPrsz`wxUbBi6w4R|dic|mlQ4=UAwg7GGb zf-F5<$Oxvq-UKg_EQlR78?_7m;N+Go-GRG(hLm5$=&^dhV4%+kYB& z+8%AZLIwTHer6#;el!1O6vOgpzt=7A?&n;Q&lU9E86EQWjLq_+?dAaMp($1`EjaAR zuIF;dh&NNDT9_Q@^rB?I7T5)WqI}l2$i0{;dQL@&SLo4^S~; z#P3izFU!|yftb-a$nQkkPq=;4FqZJg#^GrX4kKCd8@v8t*I z$^&{jKU_=@%bdLmp17=b&Q0OpIk(u~X-+QcUcgQZe-H-^&k#09D~_*R9bSgJPYM{5 zg6ON9-;&#zn*zi^!uNOK#t^EuAdd6*>nf_sKM6u@pu72nxb51Xmv`_+ezl;oBWK{l z#C2U8jrJzU$L(x7KcR!|w^_PQHur1Se)Y+wE7581Fw?WuPC6t>K^V*LW13Lp=*|w5 zsc|B;==6qZX#J>vq3`xhepdaX34aAkAQt>Qc*7`FY(-<>0qRI-wIT2~&pGZsPBG!l ze`fU0ub&q@54mtYYB$?8=L_lB=-ii4SDb!KxFnd!x$#Y~?%o95%yp}Jj!OL;^#fGN z>NR}4o5OKnaBEt3>$&IJv+n)-)~x?d;BlPhb)lftDnjS#DP5WMwIKrF>p0mCnhLo7 zoo9fzcVfK86RLFt^(vvYans`Lz~Mh$K0oPo@xJjcCzDsZxyujqpLse& zb>1F?w-1FM6bf*^@6Es9{TJ%zy9~qe8TD&zP|!nViqY?Y%fqm@`=fr6+~&gs+=O%D zdPduSgtgKDTKaL8-KXcl7K^_yi?W-_UpuodtpeR51ENP--jA@4GrwMie(@TJl( z2mrVD#z-3&;<~)d>Au)I)I!*RT*Pe04wQ)ByS?ds9`8wiM3t|tbtz82XaP1w-cFLp z;VD&H()wjAv)MLa9UdzYBG(E1rXA#m<={ zYPZQ&G=ho*n^C1;P_`jr+@p_RepT^>&3{GCDV2QmsBvzdw(m?e2RWP3>Dd7K2oG{I z+M~XpeKg2{7vAn;f>c62@{fzOqghu0Sr0Y zEC$X-`PoPUo8YxtRPaX zrRY+y=VT4TP9SrVPPEbHX_%j4KvQ;184tt=AHOi@D|LRF7IAZR)Qp^^BtTk_$AXv- z)<)HC*C%Vjz%ur#_3_;hLp1%zW{nuW*AKQq4Om^J5bVtPLe+JmH&#!>>>nHi4vUT) zndHF0(y;oV<7-U$SyTxAcskxMCclbEAr>(FKKn%}+P~ z2Z85>YguCX*=e4Rn#gXoM~DZqa0U(Z`|UUAMsF;g%7L+82BINSf&Z2IC(>{xt`wXO zQ5MO^dee_l3b=L}M*87o9~D!E3PB12>=y`&j1}GU0z_HRCh(d-ezulNz;x-VmK1W= z1%iRIyoV|TgS-D?0G10rVg6OL=>RZv<-6OJ(Tx^fJPi}^x4dz|RRk^+g}v*`{hmD6 zT|V|MU-6WZ-2ZC_>Fo&U3tB_Fp_ZS$;Of9=XRRe;)0F{k7KK4@g}8zqqNCLiWU4%S zH=KOwr-tuWyN$AR;F_W*GNg7(1923GaihFGwcGMZCEgRhKpy$o ze27%H&fCEv3*tAQ|N7SL?oCs6`d#55^Wfoz_|ZQyrVI#izz-&>MsI6Z zuU|z#TY%ves9gUXqJ%>Orqc~*UI#G%1VQ%d6;nUO^S1535d1by@?n&p6@hpTn$}`> zkJ@d*q*BHvjo@C%89?nO7cdkr$b z*Ks}eA-!z@eLR8#8;0rlE}G;yzcEN!o=%c#J2N0B4jWN1%3n!4-%hKIorP8oJBk~4 zI-e|G6^A3vqs0ZsOgTcLw}Ydh=@-pPt3;)AL*!t669#Yak2xPwHa>aaN1*w*(km^I zsNzfO8(cUC4sO~k5eCyA1h?aZ-Ek^opnS{3;jFP^o6jq84vSfKT)OF#S;&?IB)}~9 zcVMK^%fy_*Re{j+m~G};u2C1AslQ7C{aClIMEp|h{tVWw-@B;HOpYJswH^*T;W*e=j*P2CH$S(##4MOeA%OkP068$ImMG)J z=X;@BXk&%vH4Za_`c;)DBQl3nlafg6c$dn5t~39gH%ROMD%BE1zd0R*KbotNaO{|V zM{5H2N0{YSJ45F-jTjD5vAKl4vW(QOCB8&93_04DE}kzJ_E)833dWgN)i*J zJJl5)5gWm!jZphS;?%WvDC9iSV2jEtq?o;7XNWGKnJ`JVL|2pBczll)W<+rb7q&I*4kZ_*_sKz42^X*1g6ss5 z$8$3kGe1rT1V=1a<%q~rG)eN5P?9h0gBdk3b?g=v9`co^_jU+57IiiH-av$a8mrl2f;3eEz=yhl0p^7OdES>cJ$d!~*?7(&CkSJ)_L7gfj z{QRB`v|DJBz)`bFNv!;ET47Ap_)#FT7?w!tAu`&Civ-$Tr6)oWvp#w~A=xDvO&0kj zpHlUhEs3`uRxT>YGIbN$@YzDc&SDwb}f4L|bjBo4zj(JgdA zb(vED0>61(jV==^DQqAGBxP%xtI27WRSSCeL!~@uQ)NlyMbobp;j0p zu%LnKWw%@X87Uc!%F$9#UXfLNh5|ULn4GOYa!_t%ZH3I4hO_x|UsATBqU4AFd7!MT zPbT7b_n3X*!j|30U{RE|JOBBUbT5{zd+7%cSx@Qoz34RRq|Ay5B*O;FnO}~%Kded4 z+5Sv7Fl^x2>3MT9?4r*%^JHXyzV(Fyr{GkYaEs13=a?LvjYt|dUmFE{89?q+SeF9b ziJ|#-Y<53f%|Bo`m`*S;=c3-okByL}CU;Lqy>K?Jj{sxH_2`4@5HiQ zS$xVl#y<55>{FT6_K6s!2C>F|uLa0@^5dG3au!`heNeQ)yz+pwaBzlwScMvk81gw zIWn5swAgo{QJMlGEv#k8uA#;}XW3Pif|_I*Jps?Rm`EG}#fDA_vEvN>wsEZvG~3|B zuQ_BhRstjtc31Lz-73Hu!8&=oDcXLKu5PEOjbCqw!UAVlPNNRwjK9Wx`z}lYI%eL7 zu~!FS5>q8U1z;^1)ry(68#_+MFm2v417c= zWtYe?(efRiY|g`uP*qWuEpJc*VLBiV`WQ35C4ki|&}*qtR~5`npsZkthJ^-FQe{Ng{sUo6r?OJSQzt2YBmHR2fe9JE7D5|a{D4YXYD%HcuC_Nk@IHkIud@qs{@nsB8uR^ zGtNj{y2Q6Q3f>(N`yw>EbvoLg?oZ!I>Wx@bS)%60{s_K@3^mR6!31mOf)>kKmP@*Wd8#{Y1{=jg0HH@av}WEy&~R)k~r0jDbWqm!d+jS?`%BH~P5BU~<;o ze8dCaNyIscEy^^CfV;bhTeM)%+SOiGnlD0+rDE-#<6>wH_AscOxyvt`#6yU0<5%Ov z<(tTWwQFa!F)-hGF0|%n0|x(5Cls{C>}RM8v7R~wECdM@-72)j@bAc@CS+DccKYx1 zxX+4AC12r)xz9~(keE5~^>2A2rhZS(#_i!*)rs5ZN-0fylq-KWEX<0hl{K05wJ=kS zw-Dzvq#T`0bX*9YPMf=F`gc}xD;??QJ8_yv7;@3ufx(N_gYX*v@!tUYx(Uu{QU0;TCLkXbnR zD-MGX*V_6?Mxh+KlDeca1IwY!(b{=gaf0exdS$M_Vu5?f2icwh)y`i`7Yc&RAtWG>AgKl*p&DgvLRC_NH*p zk0K>+gM&3dIV-i%TzRY}cbXy+Q%Cy19pQ0}O6;AOy)Kc}b0+?AzbesU@^2WDix=oI zJ6TvRJ1|t=VnCYqh$?F;jL|JUA-A|>$!?y8Vph@TIH`t^NfSm!GY$ z{C59cVMdqXY^Z4P=AHVNNl9hS@=XWQAfYx3euW7_&;q5p@Jc4gSlz94;B!5_cbG3+Oz9l1FVjl%$8*|V`5)JT3@FuJQTZhL zBs*{MB<<)bD|?Z}$lWPbdi_o!0lP$%?p*cSkzneFOvN@?c*{LO$))6`SiO#v>Yh($ z1lv_j&!?R%c6n%Bj>;2*WYJ%7>r*lDjFJnpMFZ?;M)g^)i)<*kFoq<)CO zQMytX>&M~yrX`%`er&>mQzT!x&;rx`Z72OASz>Bzn`E(nP=96N)_0YX5(c!UPWBpQ zsHy87$gz*>X8V)0qVVYBe32PvMh55$fi!`8F*pp30TH~j z6pJx4UfkRE74cUH!b87EoiNCD@O>7s%+q)mmHA3|iwi6PEV8OICTz{6HO_3!XUEAV zsZ(bAg=fqtgp*)AUB_0sdIXhYk0>M0o&BFT-{0whH~b8nMOsc|O%fo(b61C#UyvO` z%RVC|8^8MYUlUM8D#14KoT8x0_nUN6{T2j@d9-~|k2HLWxYjwIzZ?pYVI!0%6e%YE z%9lGraD^OycBAT50VGF{`uQS>&eNRI(|z}_EGuM~yARYNMjXe<>U~$f%xOh>Fd5be zI@TDLH3ENCc}U+x%;#%A)7bg zq)2Z1IR>Ep)j*wnd7FR7#(c8klO#3lRrqBj$i+t4m}c%C2dZ<5nnU;#6JjMUN z!H}t8Xt%smr#Hg5i+H^n6ms4u*#5KlI&5^vWUi>H0zA&!3wrOL`i_XCOJlT< zfFptfNpVSMvpGGZlAA$KFz?+mD~KawBMMxRY#M@7)a)4RSan23^6cE-D2*Ml2D|_> z71H<2t|Z0foL97!#dMOUbylPDVY0uc5u?T;;IH~+no8pZTwkBhYda3U$er`K9+efB zf?}l4H?_s56sVwX5Q-=xbE(NC1>;s>G&UH?F&&c`wFL9W;#mRRg37}LB29gK7gT)N zx4)jgS@8U!F_sclS0ih;}Me~{jjlT5`6ZBigBfRkeSybflZ0%j$K8WKf;?EBt z8N@BDY@Mx}qg)G~%z%pCqF>lR;KXK7tS?&P>gtCV9lKEzBPnl}1tWKV=Un7>iI_!y zHTWh%Iyk*>eZ$uM-3{MR$5G!J)3&{|d4*0zTuN+2^&+fVPOR~uFy(? zDpL09WfJ)O4COi3N=L1u(NjrS1$4^Elz%xsTbz+}+N0K>w!qt@l!;Zt-T#7=`M4QB znCzbjA=kd_7aG#v)ccha{>X-*<@V18w7H1O9TIcOn)7xPUoe+- z=jG%I|7mp=K%b?#!>Z&FwR-!oO=MQ$ptAa47*c%Y82|SZe$ShWDE!Om1Yj`?WpPwp zSc+xT5mnUan?S(Ek0TCT^Eqz~XzvR)d7tx@!?}mw<~S-BvegX@gJ<09|K4E_#5#z} zNnB<;)pEydn3Hn3YaOWh32AmNvxC(EbDVvBb9OjztGd~aD2&qOJCp_nGNTT$v(IL<0#pQmC(wN!Q>5q)`VtfZ@-IgR?h-BJsf0d*QaDBq8Q9n{&Zlo0>MWg@Axgq+Oy zEX(;*e^^UX^UYo{-{f-f77;PJOc~Gn3|T>ZRP8%n2T~uYZnptIl~M<*0S_b58dLg3 zuYmWBxg{!mnCF!Pg~3^~X*I(WY6T@i0*!)vn+*knhwK22Z@>$d zh*N$%lo5SP@vO}LwV=l-bsG(**yV})5wF^bdoKzyn0K%%L>&N6{A7QD!e8^yAprKy zXNMs+wz2T~tAI)@(sqANR(BJP&0uGb-sEuvY{o4J!sV-(NFuQf9&i)+qME4lv7xkc zKqO*17n!6Up-f=RItyY~^r%Yw`1S3}oYF2q5fa)PGJKSMXRaFBGY_S(9)w8*c0U6y zRO4{EK-s^g(0IPzKI+h-f$mBhYVM-n=(;&D!hti>R1nWO86QW%M9!@@G2Crk&9ah7 z`Q3wUKl>Dt$`hM0d)FT>as0CWYiON_&0lmOyEkBJy=drjh;6h%afMFst#%}G3@tkQ z=WQ?f)ZEN$0fqO6pfCZ2>BoJPdEsyY1yY_q;_*9^=bP2FS=;5YG=}s=<`uYy+%Oe(ff`93 z9zK$a3KQ_8UASDMTx|EmQMr-S!%u$?I~ewX`wWO);)i+lRby5(Xp;4dVhNA@{2o9&K z6v5VEju7eC^@j~7-tCO1zd4j&cVCr_L$8LLe@Zq_v&(U-s#}jyWpaeyVrs#If3+`| ze)$UTlA<}Ejs!JWzC@QuTSnfq$_7U_{dIa-v@)>;dH<&PEJ*7vj%mqAeX?oks4fAP_rrId+I5dj;?mkyS zwF6Jn&3&H_@tSAUMwA$H#&8alO}>_mS(j3=kq&eVu~8p{dQI4rZ+@FcOwnQnkSaXq zCGAKC5ucz31`wYl?YLsocwLL+KuD5j^E8d^S^X}TbPwNCTE4VYt;xVR zWKeEMLg)cVXPuBPL_zwvnc5)p!ziWJ{?Tvp!Oo$UU~|Z>waQE9#!a_2zw`K<7(8w{ z@$8w$1ar^#a84wrJm1 z))@qVp;+A|YhaV#C&-;ie8=<$Avk>cyDnEq~Qfb?Ny zQX)H3KDV9{zyCtgp;2Ma%8Of%S$->Wbu1(#lasyDPUiE@v4Vf$|FOD%bSRKZaODDU z$hp|McA;7OgH8M@h95-VeoGe-4wo;MUK||pDZy2jH^YQ)-$h(^G$6(V3G_0H# z*lxITdbCEzXw;IF^-Qb@7<}vQy02N@{FfZA$9I;!e+YgnS9Fe_{+jVH(e|W~{hPS< zgRKbsItq*#f_3cb73#n$vG_J7_5-RB1!k184evXhTO{kfc1&8*d}?lF0XwkYBr=WK zG^j7k+_JQ;3wm0p>ICq58xN?STVnlJYkZ8J62M)1cG%PjOQ&B#&!?fjonQSPOT4L4 zZjUcO2Qb3wiv9Jg?^WYJ$-Nud@`}i+s4Z7lwF6 zGpAkjoB++6C1E&n*+|T|J%S0B)boNB%RMi2;f@STugWSIolR05`ayhEWToWOWz-*c zBC8?OO9n{XgmY$;5wNz7lpZ4w(M8s#TFopuB9*P3-n|C%1Id}CgY$~J(G2t^R#!b* zwr``+G?kuzeJvu&3_^bmB-*QBAmK@ztCo3Uea~SjVY+2-X}^Bon;cO6HZ)E%zl{3Z zA;WRq4-g0&u4H+E6X2A9oiaO98MJbCgn zZLS&Wv-+L#@LRM&=eXaRBu0|`uQO<9Z*T@8_Gs95LSIowC5@Q|8D=+lOo zq#CWx;9v6Qfv3%vy{OM3x7X(df9Q!qa=R7Ki|xc%eEuABI)a*CDVq(g2+XdwYzwbzV3KXNmItkKU&#i z-#&mk>0lCUCMbta;S&mr|47NJFRC4<`kCQZY$hU6=qF$#rN}PtXC~G8>dzymaZz*x zlkuq5MM#NlQK1u8fDxj28~E8Z&KgMy?GH6co;uxDc2)HiHG@o=uFu-kcJ!by2KR@E zX7Pjm$ma17+oaDU#}g}XYMR8M&&zkMGMV`h&FeaB1Am+}R&ritSGKAt{~T{s>nNYA z`fhNv%JrrHDsiFLJtNHr700tt0K2{(7Gujfm~j~B`gs(kyt5ATdKin_?{ZJ*jKaZt!hu4lCQ<5+X?w~G%)rG))M_VR8`@7wA~zmit2MdVQ#WgKFM zo9iShOW(VAL5sJlx?NMzjNuJQU%cS19hh5y1w}&iC`SPyKsHYKuFiu})hx{^hA|A0 zxk@s!j2a~qDkWD5uT`xLBy3Xl31+iF2Ymr=gtvbsL4A+qoaU*mid$7QMSbW6wV0FFd+ir#yp@Mvvuoar_W=-@|* z@!xvo9Q%$lZW86L(*IY5K4fvrfs(-b?GFsnnm!YME^F(enPGn- z7a~johM&5bO7KEJgSKdh1!MQN$rcZ5VE*8r&=3(f$=|fLp&mp?b9A<$uN@yCy7ac2 zuha)9oN1}dVSH5cir7>f@}}=UuFbF+hdSV)?BM44@Hh>tx9EV_l-x!k>;}Tv;D29? zwoPUjOz=ur_9g zfuYv-V|^e^%jJOsF+T|8{8+`S-bKu_|A}V01?A^NlMXSj8=Vp)OJr-8NFs0ubMs`& zIW0DX@>`PWAESL@hw6c%O0FUPqyc#{${Ed%<;YG^fvA6Cch}52q~@wLS17rAsVx{1 zKfQ+sw_}daY#U-sIfsVP{OgEkJ@J5{8cGg&pE;@_yfxhjKO^h$Lup+xT=P&Xb|WJP z^1SF~c3Fo7QZ6?QlG6-INZo=ZQdtpaIgxxO%&2UL&p|H|!Wz#1?9q&2g>;MdzJ$jzlKu0cB)-AoU584+!MJRmk!F<`lurj2R=EA*8fnziQ?#zqibZKUF0>k)PA$Z! zE0%;OMwW0^#YmN=yY~EDz&UDBZWv3PDM{1TD{}e!n#3M6b@w;LK)%WhGW#)JXYXa1 zha?mk-m_|&j$;1|A>$&~NvY?=G1nie!d{`vqq`XnBVrPqN`Q_STd?V<8}&wM2#Sh; zkV7l~Mxy7KqQcQ5YxZV5s{Rhh6$|Td-D|^SrZF`(>{&VBj9snH4Y`pT=4ThVc4wYg zncnmWniW3e|KNuykg=tOjlQ|QO1tmy#5(OnUStvJM+;V>Q|xUp zgm@Nu$MYdM5&xRc^h}K_{`7udIhKj7v3T+h;Dc z!pI*Xjl^j!ehNJvy_iDg5BmsGltkjO2v;o-x?zgOtEYI-LUD7}j78K6UsIX3Dn?4w z9~N^W9_=Y8;Pt1cxxr_-u{=+qH@4HId%(8TouO4N$Yo1>Da>wj2Zpb4Q0y@`>yUe; z4n{wyiZPF3)64<%>c2K>#0}aS{Wd6?5?j)hk|}|@es;Y_8sQjCp{VDTa+|@}YpT=X z>Nc~KPHG_FVNFOn;$N2}I*Pv#sZPu$w(mq{9wr8Dglg-|X zKNLEx-Sv6Vgm&f~q|Xd)RLWEI0%>d~c^P4o=wUoHicC`j}3-bM1TCsXLG6g%06<KUKsc=~LH+_x38BxSeY*@J<7wByUn}uR zKm?xlJPy8st0_hv*YkWW;xpOCM76t)4Y+s zTg1z>2WK9{yOd?$sg2ma35+^=jD`I9=H=S?z)qT(z=4ont%l50IG_Lp68z?@Vib)} zQRwy+{+lzoFS7Io^KukgRbiC$A9HVkY+WWTbdWXWkf_ z3bJ%^?9}`3=iOa5i-D*@a~FkYsGfna#-HwUi=6^TlXm|^sSo4Cld5vM*%^_O^9WVE z+|%$BVd_!n!BCDl1|$54@39HTc16>IEzY~2THZ9TNaUt`x|l2J{DHXZCKIRqEV-&e z^erO4^Mu2$@q0g*jVP8x!p_`9A)#skcBiiw$`m%_>$G2dN!TwMGwjENG|Bns1dNul zhM*x*ebKC5oOnDgRYL_d%OSGl_XFo!_-IZ}%(({KRIS@gqfVDV*TGle-@-~gOkZf2 z+-7Ns;DtvO3*g9&FyaJbZHEixX2E8EPaqXqdo!SN0B8ao@JUy_iiG{%b@82;WMvSe zD`nv>vH`HLXl9tDtBTMqJ$E#@tO#lNJ(?I}UHML}%%B`x<_NVombd!!JK6AhW=fmd zQ@a$fg$=7|rf8nH=Q19y%tF|-Vl=TlmYw_hGHT(TkmEnklS^*A(P<=kG5AA|=ncU<#Od zt~7OEf;YFvJ}+DyZ=lOEJ>`b8N6uCvsA`gA^uAmn;=^G@q)r8wsH$`ZBUgWii47oy z5v6C5S{)qe8*h!n+-JI3R)36dSY*e;o$76M(G`#5KxC~6Esi`LCuY5O?aQN`B?-3? zL)~S~OY8r%`_m z5r?MQb;cfzsm*3otiRPPCe1aPH-JG~@zvlgsYW_l0ypmJEUu68i4uM`8BHbyWXL;5 zCL>H#V6uiTSXO@qCef)c@|9IwTkaD>rLvG(FS4Si%Z(ygWM(odiKH|W#oG$Fly%9hQOP%*Mt-M#)R_B>Xiju}3#Skg5_ z5&C%h601NJRqqUg^ z5Tgw0`P#sTFXTMv;qK{ZtfQ8R=xGHR{9Zh9-4eb()#caXK>E_3z`#AQq(`z=)ORGM zT8)rnv{4B^T>bVm)xs^9Y9B;L9Sqz*Bz5)$a*JH|-3#8>ukU^X28#Zi@5gnn_>P?h zZ+>!==V5-bp2oGaL0b^C>y06R1?K?|i77gHy-%YpAQ`6hh5w+1#2KONtD+X-)ghB| zo{--P4uhCUjJz92zAgV=_BBSdXi_E4mOWk5GxtdKjOa zCi*7<2HA!5x9AJU^?mBOE+!FY)7YqMHD5C9iesJoB-CV7Wyj7`tkIgCrC~VvStwLaMv+nd6}eB;bUbM0g$k_Fwz9)sRfBkRaA@37du@+Ltg}= zfh$;1Db(I^NZ`=H*$n9&ntyE;!}Kf<#TRHL7s0kROgN|(*G|WwzaT$pu^tx)cD+eN z&eae(HXHMKk~dn!EoCLyODB2u(=T9mNU*t z%vd({MD`EGsj@ecKw_%Uq^*ez1N(V}V52@JC{dzkB+!03TYSDfhlC?VG)*o^s8A1s zt`{dWOCt(YiIivHZqYcUCb1ueaV3gHtq;8QAM)*SB}1l41dqwlc<7q$WXx~TBI~eR ziLyw3xCFVQG&|Nt6fo_Z3TQ&11_hBEM6#9nDg?sb`afqINsgbH> zPMiR*HMVDbVS9H#cdXKHv~uaH(ol{gkD|b?_>ylcaDRaunh7V&RWBMrm=!iq(g=CD zmShf^pxsYmYv8)l_2>F^Wx?WkU1V!f=ka&9x2Pof`ZVo|bJIwol1_S;B~snu&YiVJ z3O1+wb1sDTLG?>Qs-;|5qbi2LyUJ@hirO3;2FW|^FHY|B(Rw9&tBNlDzjn1x(zI(+ zwBau+dD4F5|E^t=DW$_pLsRyjk>Z&J3$urtD1Q{oFw}nkh}hLDX1h0Zp@vO)M;*Q! zu=vvunV=gHM28x{TA56~oGhw-9DpJ_srnRdAFBDX-e-d~EUW+Ws%Gb4Uk zNjFxBJIa6*@Ox9qhP;dHCcY4uyf2?)Nm*t(qG|M|WMqmU)^D1u@3+)|yq(IIGNepo zV-{omOJjn?IF_3>($3pJVs72Q_EDz{kG*eQ&zvU)Tf9ts#DeE5f%EL&ml6DHq%cNT zR4>LUEH!v?hBXFCKpwzBhD7TRxl8mnV2e(nVea*DfuB&LK*;DTEcwODglO}NbR0p$ zH=jkj_zS(I+z^%G4#%@{y4vJ*^?&3lkcwNmmHljOT!olx$Hd zFtk_iqu{AZBX2o}M|DZYQF89W|@(6OEjd%$n!0z`piXgvBi8 zbCVx4#t>~AOVXEwUF|VD)UU&}(k*>nyxLqQUwL|rnsIwb!uBIg=$mP0d=LuFx)J)Q zWm$cP?$*W0Tk`)0X+W00W{_C*uw(Kql(20LZlQ!7Yw8wC*i*i@P$c8Y1^f3>u!UX7~$C5n8Zih}w6bv#%Rj&GLUGTCCVD(?Ta>iN@`T%A!%qOx#Sx? z{({h3J?agKx8FM^QZ(=w*rU~P4*yGZ&<+^A2?x5gy1+rJZ&IAl8HMI5v)@&7rAZu0rCDia2p3fcUu{;5-CM3+(HN06IXa?srLNOBYF zWA_oU2QASZi-VA;-N&_F&Oz(tQ1Fo^UW43rQe!n*zsUK!F4g)`P6^yly!+vZgYXom z(~d7;xBilY)?dQtXOv6W1gq~id{gU)#rm&rk5<<)(DiQ;sU`%&83aRxgngALE;oBXKe_eHzr)tl(9Z{1d2Et!)I-RmCZqv!{(SCP%>L!h! zsLtN-vhv%Ye7YL-hyxJ|r;@3g5j}COG%?zY-te67w?>%uE@+dAH}%y-4yK@-8al%P zZ3^+Rz_R~sK$S0Upv0B5AO#8mA}!#%hRX%Ej#=(vmPvx-pzWgf72d8Vo$Ht%__H$Aku)F5oOHIiUVj*MN`1|mXhmcke;Ji9%I59Jw%=uj)lx;LVGRaI4$ z6Oy7WR>1%fqd15dRVzY70YnU2wn8qJ#9OS;o%Rac=S5 zk&#J9ji1WoPAqB=%!7HBxS5CnKvbwp#G&l&?;0q;J2}`HCke5VYm&?C5?Rqzx%$fX z9Rv4H81c9B#qeZ7_xIL><;z}Pc<$7}FJ75_&xG4*U1~VmRvFkXA9{|_UT%pj@*Rc9 zCH_a@Q(W93in0u56!l~G{f-Q=cX)_=(mhF$M;e)=$PbiBiu_EOBs^Qa#uEN%v&U{H z%*aFJRX4q;xJKwjb@O4KUcchvQA0h&CpT7nx>7u99$rb%`(2CGq7tfaq1^jh*OdTu;5| z7D>_Dy*mQY`$V#T(R3{)rm?VA&+73$` z1@RD*?{GlhyKpdueE#kUjv#n;5VO~Blak$^TFL64ioZlfqP67!ZpFO`riF4S_pHqH zosn73@9F<6de&PlG2Rn~W@)xtp12`pGBZ>*gP1=A=!@^;$6V!j^1ULd0pI95`0|ZD z=i0JNKT437TBHN?lVpCd+vR!HPxlcJ`UMS0Z@#vG&_CdCC<20r2>mnF)zJ4_{It)9 zBlK@o`ErDzTk~;5#P1G=!%<6AAwp<|#@6>9JA=iygN8ewmi)`rRO_%x6N4TC6Ef=f4LHNlB_x)TA-hy|j(v8WDL$PFXto2f%1^5N=R3 zISF4jF0wmed6BEW7--W1XeVBy8x-Xt}V?W7K7;%iJqeF z6nVSW{EuDsPq&vfV*bbO_iO&gK0?fY9Ehi-c7lW06OB-77w(_hAD+#G1J6dgS`OL` zuBsxNiFW-sXxGm(`gDeq2tJ3M3|PDI9JCv+9WaMOPMFC-yP4VqQDX57;L&U+ct*2b zG~OsMtH}rn(C%J0v$cEfn#?9byF&`IwR_Vc%OFM3_W#UxUAFtdcU`vEH)0y|(7r1~ zgw`%2)+V_T&^}dwH2fWc_M?{Cp?y9?3|qdEBv(P&t@ynKn+R1zMl`$%^twl%;*aRH zue^RwLHq4)PeJ>OvZtW^n+-e#?JqXvDQJJPp{GDONA{~Pu&V$`(4nVCWhjQ_0C#7g z!^rFJNQe3Ej&wLEccjC*1|8{eu&Iu8xZk%UE{0LRhS=eR?DaqtbT|!ZhX~J7f;kG} zbX)`bvdtbW-QwCfAnkqk1(LXqg25VB;)W#{7Ny_*~@Xcm&Yf(OIj+)0od`gwFsN=hE5Z^_+cFlwU5Ag#9 z_ri@2(rz|1!Y@a??-Q0oK1b&5kj&G#AR~zvD&FND(D=t28PNDWJ_DNmKIv5aF|ToI zX!*G67#$?!HFjgsV-olPnkbOHvPp2G_QoPH4x-)=ApIN(C(z2`gkla7iW`x|2^;*% z;sm=#7Lx<`gg-b)c+KG;vN+*+4icW%%3|WHRdiRv2@VoY_|aVnKYFBX!o3!&0?y+t zBs<3VGF!*&MvRyABIw9?t_RAdnppYD{vSgxtbQs!bxyc_&9>X>b%XEzgWmh*(#wmF z9lH>o&5~UnbQFE8n5~Mi^oD@#_@plcY{%DC2w422fq+fy{r?gIR^C>7L%=3ZXaE5V zbh4^Gf!MODOAPxW64R6XHq%o~ia9NZT z>&-Fu;S?)RuOg9`d<(T(*L9CE~?2RqA;Z-$7AjEh8Sb#lu4CH31j_3lsB z$WHW5zcePV+&jp5^UBK>0{OJ6Z9zHy;4!%yELWS2E_rjYrz+?i=(FH?=xpK`=xh=o zv_=-ko$LIzVW_`06#HV6l*u1io?Tq3+*U3vD_8SQH_gC5=FFieZ+S`%A~KW62z7oC zGS?_za+ldupTRmXzW)XzoWVH=`T)%KY$>0lLia+w*wuO6Hg0-VqrxeKD!B zczVN0?^2E^+^Z+G-O%pb@g;FY*GbT2GX@ZtkZrL_u1O4|Z5}V0{7DGaizk`wbyDT0 zzp#(TeR+6u$xAzC{hhVq(Y3uE`q_49i?PS=lgItuW!I0AD5I}nafGA+f+2H8YZl?SSLq8 zx49g2n+p@RVki6KWDoB?UF<+Ke`Ow26l+c{oy4#-6ZR_KMCo>(gKp=&?YIFC%9u4tfdWi8A{zzWUh-hp$Xh^c z4!vqDzZsWvT%@O@yRnw&7=5ElNNcb$0UR76%dtM$4Tos zNLugJR%`_!d_&o8R!kwmA)7i$hd4+&fGk4SZ_OE9@4*Cf$Z*=|aTbME8MEcKS}~)z+%%)SY_6%K)K*qrUTm9hlFw9S z|K|xGTg;;jk~=hlb<&^;AAKNWoe-^X%Ezux?q*j+HYBHDIA9_my&1z-dMDpVr1xG` zdN(fXldJ!=tQU+f5r0X*Wp=D~RU2JR%6r%SiV5af)jhM7Royd`gPx&YjvXh#@b1}( zgPxtdmvYZEWhpz!K?V;!^F2#B`Me+9p}`KpfNmr4G}+4A1-?hn;TjM@W;*c9#~-xM|IAS2e%WsYr(2 zp;%NhMU4oC#9CUE0>uCaE#f2UYC9{{G0=O8%kHX`YW*Hm_bFFSr=#Wx)z$y|;rKGI z!|__|tF3i0HU8?Xsbe5}iM*%nebNB~@u>Id-k1T$7Te0or%#+;R*r#}Ok)b=uRRW* zFll^2Ljz9#fCKuZSCP&3|KLim*0itB?V{YiNQVNzr#c6rRg5SCGyU2QWwJ49hAj@M z*UORDH%fNSVU4SUz8RcP7U-L%w2ko+f`Ugo@}kKpO)@*`T$Se+Zq?7*uzbYmP8X!3 zJ+6H5y*ci9^e2NmU2Z$-m9O5Px74*wvFv#0yVOBO731oyb2y0cCV8%`6Z%>1fw+oA z3EmvyBT5STzUsY$kv|eh?(5`WXkgE`Y#Lg&X4`v($+Q>WDH5j;B zJ;ALq7&K@7m9Z&zZO`5gA!lnh6h1!W#(nE1{zCm?stc@rqt}gDC38~UC;iGi0+`h;nUOA*|d{~&c(6+*OGvFWR7Fm{w8vQj?Bi>wY` z^1-*ly}{g!__`yD((yPIHD>QLiNNN-bO!TI)tTaycRpx}v>G2A31%1hR+7XB1lUT? z8z8lqW1MD4E%vBAu?hx$V6kfNDPiYAD$n7~L?)eKl}JFCTOg-y!o34?7e9E~nrlm5 zH-S=*agchf5l3Tx+OMNA^*fEDk(k%S!_TLq>lYeu$ zcTN2(o7gq=cc{B2a=_C6F=cOrgZ}${ot)%QssD!_ zx!3;g?k(r$NL zx2qHnbJ}(#a$j|n@&?>~aysrHp;rh2ou)aG#*S!82WfwCvMyD?*)aQJkS7_Y%3>9; z=idP7-8df7+p4x4q<6#!_ja;+O=Md>Q|8`}v{USU;`kR;nZtfZe(&u7A zp9-2dGN&BErnS7hm6j+?GFSfn`ws`++V*u?zo`+n@4EK6_2P^N6QUF5d_JY`uHCb? z&Y2+ZcC?t385aLcbl74=#gH-0uBb~iL#x*{<=0)ayidl4pHo&d5^v&=c%S?~Hj#gU zo6X%(`j8oeF}cX#<8S`ClU$}rsyR~PIm2wQF>xqPC_#cutIsyDa=G=3ug-sWr}do) zx8~j1(edl2I{kq^b|!bUnpz!x?d4~?`2YjULNfDFe^`T_ZC~cA9Av&KAIf^2L1`o2 z4Uh$#r;rRmXW$sfyy_jA;@QUP4OUX<+Ire|y}Lg)(Wsto;7P!Tb&4lJIX{A|bs{-y zH9*!5P8+CzPb+2D_Zt{_W1oZU@4Y{RfG9_U?;>P z)YS3pfc%E%%xdt1-2emb;241%yozQ63|P+LqY7lAvCY(gYgN&wU_=i1xv}q^c;-ce zpp0(twtU_A$=SNb9f?Y=w111AEU%R#s>LdAe2JNV#J$+uGnrj&_dAmfzi^TLl-52U z7{-xcpzOn*PT=)p5-OLRxd3Zd?LXS@w*9jscJl8&cp-4-y&cOt9qx5c{h=o-tFWm7 z11WE%vdt=x_6&^m&skO8FC+m5=3#>k%Qt}#H2XA!=&pe?ecpUFGUDZ37Ld8`bctjl;6<1Y8bR2lb z>4YIKTdc$>>p|DM%)!9Rz{Xgt*lHUT$1zTSV!&#ELA^MPhQ`Qo0$y%pn=$FRyU?k) zni|X~U1=CJ5x1C4_T>+ORnSb8LoB1`s@xjmYH4+>RL4qY802bbO#SIGrUo5t!k8NL zj@FnGaL3MY3}#L81%$z^@ef<;n45;7FXAK^946T@T$?~Hb7Q+(Z{4t78?@pP?1Kz2 zM9+D)G2|*E49+1tuWB-1PM-@MgQu+_b}XBR)wcFKM|d=Gd+t%hTjCHbiW1u!iFW}8 zZ*t+?0J}iOQ62mzHv}I84?faF_XoeNcAqDLV(>55H1K${K%|X(9*pW05Iw$Bu${zK zlK*OT>X7_v>QvrmYiVu#7}v*&7;^Wu2{#!j0z-;4;FCix`2(LE@;w2c92)8YpBzg2 z0iV1+7{j5%+%Seizw?4I9LjmY7!IA~hB3q$n+e8n=nK~YV>t9H4U8eK+!w~sJ@o`x z4;%L~UY#2rFTo9u*Jh6ZLx1;RXbsEv!q6Jl%MXUuu<0HQtzkVH#n5WAN5;?^Hr5NC z?;dYVLU-4^TI&J-JL(4h8TOF?!|rd0cId|T`@=7`UrvO7P{X0LH z01S#!MXzOeT$zKW1p=;&G&a*^F`CX>3sL2syIB)bfYl3Rcy+O@DK z-fWQD-3J3M_aVQn-sjzFJc8cEKJzU`;4pHP&*?}`T0*=?rZO)~d8feMNhD`pqKeOz z*V|o%7dR!KA)`G;7hW6fF|XK-zm_*oW($94k9jJNSl$MLsYWKj7ws|cDK*nRPbOcq z$Gi{S%|1St$nF>5KJ}h zLC8O;4nqD}vcPaIvcT4%94$+`1xP`g25rWoX4pqQt6ync!C=3QE10N4<4q-v!z|OF zaRrNf8t3L+HzZ@hW)+fAVM*;k7VK3kIYb~Baq+bqr1i|2wc5`84_KFl1`Y}hidRF$ zx)f2OosNdWzFzpWN?Qs?{2%td1Fnf>`+qkHMMP>61O!468;Xjc*e)ty$0S0c#lL`?|*;4U-CZhx+Jq_&di)S zbLPyM?-7EKuEZN4WPpY;To!_#6Tp>nj3Xma!a}I=m%s+Wxel?MAo>sCU)1V6%>odz zpvw9-Q*E~_l1mjR2yxMS=bYZ61?5y9t25+-5QKan*ww}A1fljI)JhIQ;FSx=xJ<%_ zhknp&gqbLm&T=#z)*jlD8Wu8KG<1Xxup04uUkXAEgbvAqBMaG6@VRh_m!crF6&V&? zsjZ>eRkbygf=`hW5TSB=5V}F9@&0f=f>1FM&L_w{+x)RvcMGFerwV`%7s|FObYY&RCt^ys2)CUFCE}xm%x;T0n`V**Y zzJ`)IM>d6;K!hHI__7ePGFv;3y6)GMEg{O13I*a&VmgKHYbIOQH`&r0vec}(Gv{!L z)i$>vS8E?=)K|BtXS0O{6`>@VUphZv>Kff__uR3hi&3LY-w zL(@RT#eyW5iE{>u=5l2js3zRC+b$vYhht_s9hLJzx0MQNAW{K^X~i*|9OdqG?I?G*(i>&a-Bqjj;c% z|6UDJoen(SYN})EY?Bh=R1H2Lg3J6dS4VjO9hKOD9(Ob#!??eStE&ime9@SWsEQjP zQPQRM z0fIW)0_1X1rx7$8{g7rSE|=d&5E4w#99oXrxT7*^qelfo-NX7ugobwS(mfYdA-=sXUl7%<1%+w{H!~Gc?JVr8N41Nr64lN&NsDTiP@cO2ZZ3Px z5`tc{$OX06Y8mLYOcqYKc4VLzkv9r+lar8ky&z1gf(3dV6>?=#)Sra3%b+0b(v{8* zvIt?QDhV3e;a3fpPK`1gc#wszO1p*8&kYodC6i3eOQM&BW-= z?0Sy!4Ah^*w8KyZhB~9N2uklrWPAy+sJDi}8dB1yLg7WK2zvnLjZ|taeaj-k(oYAy zi8y8qmj*x)?>(Io$siuw1Z$=BUsFV8>%aoNHwr=TjYQ8#upqwNU&RHz4@rr6CXw+; zGYKj?a(RLZ<5U64P6(CRvw7n@%v@%K2lJVd^352O7GVOP0xw)zZ6%X58)fyFc zPBY&rQ1P(4LJg>R*lQ4KB_-Nc4W4)(3jeMgPrOevq0CoS9Bv}II^C=5<43hT0VoKmyd*HtriI%-A=`pg%CKJ!7Ju>uj7Q2{j-t&EzgQ#~R9 zef}1LK7UgRN&`$Ok&}~LPEK+i;7aZh61bAP_6NX~ zwn^0hS90H11zgGfO9NcVv;R5ZN(_4PZSiUm9V(5ViMg~au7?Ya+t+bvV zsDxW8tBXcVNKBw0W%$vA5+2!N!f){WcRw%mb@te}(u?~oAi4v|t~ zs;p7)%qr0-_2D}$i%9rR!gQvjUIC?Eu1SnWCOO0*SxWd@L@O(My7(D-($n$1;M?9N zn}_XhoziL1vw_dSvuaY^#e`}h>MSos)UA_H;TFbVdKkx58v`Y@TPC8&$S++S-ES+^&aS%wy(j`t1M1| zPjS)IWn-OA?EGH;YQvI|bnn?0N0xNh>L<80JuXB#ouGm^N*67fMkeVrxSB}~OBt}R+G6C99h>IuK1kPpxG)xQX zh$cgL$|0!}m;k*a#KnJ|%uitgnz;}lc>)nGwqf;L!vx4IAuev@QqY|Vko`hj-1cqb zeN2En5aQxq10ts|0m{+91|oYg1|C4iIB<3#Yc)Q`@&I0%4T12dU+%9e%E34W)Ka(9 zmnurFA>FGKb0IqWi&ZzOTI!Zy(r}cpm zVWKHL05U)i@FOGz&`17&c3X%7%cVGb%iK@R|605i_yl!K--W(xByThX zrq6|;D1b3mOUJZ9WjYP&%x!*JWR|zLq`v@ zgz@1AgW#bV;PseCr9r3&NWvk5FqIm}K48)SLw>-n#k5U>2QKQ_A+h1TqBpM_UM=!; z>bE5!Ywwo70&KbH?PzVYO%k^B&3uhMr-bR4FxHjZ2%B`BhY1 zSLlK10Mix}1Hd%?2fgmD>GkQDdu7r8VNJ>i!M6&`M_Mebag2iY0CPbctNoy!ioYu{W_qS`y22>Ps18;Kd7nowrrx z9qfF*jJfE=$tInq2fhEhwBcyciH39fR)gM9)ytUOpExff=wh+)-!o?d>WD>}a z6kfCi#3?>FmtV#NwOLwtYs5zXHy869kaUKP$n>4C&a}=w>E9b1g6`xsL^H} zbty6d<9Rudvu8PwbC3`h_mzR=Oke^LwuP$>r!s-bbj`aE6xkNgOv>?*Kb0dc`$352 z+yhxmz!*}F)(m^0e*H7Un1FFWLxx0LrnMI0V%n&At(kxZ%`QglEhZDtR+Zy0PtsUX zw81)SKdrak+E0WN0IS?;3?JGG@>Ps@HB%#Zn&Vx630nm%7JnFq4o@?H)ds>K)4Ych z?@^v#tDrKljfhuvCOmp~7 z-=}x@PG3$QDJZ!xjspre-{Xh!?w88b>zl0e@iqKv1#lsOrkvd=ylW55^+H@?p!WRKum}YOozp zu?7?RPt-78=Pjb6OaiqXWed@vHS>X}-b7Gs^_4oqL`sz&m6+3T=1Wa|n)rJscA=A6?E)8sh9lMb69+1Du(;>v3kUpp=^aRM4$?oGeoc>cW@}Q@Fy~a1FLRUMl`r!@Dsp9RNdKAZ z>p$k!O5EiAHa90LadXoEH?)#X=|v|9ImNzyFrEB2yAeFME{5vtdV?Bx~5)FSqG$JAm` zC2lqu;)Y5CqEi0y1;yL~E?|Gs=8M;~K@HnbyUFjip>}k|Hq;(tpbfQW{Tpq_&x35` zasA1FK#GYcm6-TqfC)>Nf2$)MdTBe7uF#QM%T%pMJIt&oDVC~V5?0Io6U7Z)ej+!4o>Hh2RlyTiUfbkKwJ8nNwn48pN9T&Oz0SE`>Od>B zA`4db23W9arO(2GiVe1k&DHgGZ_mUQ6crxTs3+0;V^x{f2o zYNsEm>#Pn@=i*kUAX0&okizZ5^ue66r_UPHcE+*b4v>Bj%j+zj?#a?-U-;VeybXn)l@Y^x9Qxtp;duIU|$L0 zUT0()X$1Ql)~M3RP$vxbGC$xNMc#G<_QmqwNDraqSm(sL+?&m0|A52B8V)aDjjQ#m zYJgi98WaTkR3&g71v{SES<~^%o|=)~_N${?B_6TULRAI5Ns~|@eww?xR8{|eT@JlS z>|?;P)ij6Yq_b!M){uR z5UoxH?BOzE<&n#QYqn-anO8HT$WT0BpQ=5Sb2|l(kJ#%q)$Y(vbNO#g8IC_SG!7>4 z207tFa>hMMPBC8Ztfx51S?y=Uj5Q?~5X*Gn$kc8_-R3bdaAYrjkM447P*GRPqg5;p? zd`&ObT}BPI!?cXwnTNlFrK2_AfTI^BbB;|ZHXH*nGnow3KmF5q_2sf7mrF?=bGc-F zgdZ1%pv^vJ@}ulyY1Tb# zmb{B^IOR#ekkcV0r>*8Io%2Pr8kJlPKTzk;iSdb0K|4i4o4n$D*GHJNIwd5lGq2)i zy)uH-pR3@+a`Q<|ENDa)SIT-H)$B+2yqioIh#d8l`1xa1#IsMb&E+j!1k^Rc=skztEZNC9q@36 zOwERvfWW?(L@=W+rb_sJ1i)!IP*J9Yjd>|hJ{BxTGl)Q|C3PCg4}F& zK5pj4@|lWD(2veksDMu0YrbThgiEAe zoP^8hs*r$)ZL`Z1O>kiqmvU8Hu1@N09)>Vkz=gU1r@73JOUYaNuwC#*pbc<&EyQ_J z7}EhmdkN4V6$)I=K}poM0(X@1*b+I9jY}OAd@hAmK#6>{m;ktpgiN4xS+#|cdK%mV zV0%{^s^I}+ABd!wx?fIX>mez+&L{V(<+BF3-uVe@yWxx~tZf~G*sZ}2hP#weo3#!eyJe9oQ+ipFemS41Q;hG zd?kE%N1+<~#l1CYzqqq1+Ar>{4cRa5o|Wwv7~GygsyQO;mm}rn&fo&~5%7wm0#$K= zw+doK7{ol%w;5y-36Ih={GoXOcI1zvLn zqISdr3Or!6jvGvP>hUwtIt?5APPC2)c+8@zVF8aP{~w}~$jMpRheoYrx(+t|)leY9 z!-3}@C5DnJt$s3FAR@npq7$Ky-+j2Mru`a#w{Fvb=P7csv49t+>R$U5*lxXE(`YM= zJy+(vfy1omg%d1z_$_Spc9Dh{tOZcNwcyXfsv8o5kl^m$PASSvuNFCailQJrj zh+mIOOyDGrj!uq=PaIRlKyj6Hr9f1bx+_;@#EwD9kf6CzsQkQbgi;*EzB@|&+3+fX zcLzuSUVuI$IS;&i74NL^z4Bb@_N5_qZQ2!&6;-g1IC!|Iv8^T(KQ&&?aF)2D3q$VbFMvjV3 z9!I1CNJvbG9t>h)F*@I^oC31*%Udpm{G6#DfHJv`!V(azoJi0V@WhC@b(9^$WzR zh`6lOlZi2u#!4LuQgwR3P!5R7V`8WiwVgLAIl(}+okt}nP*+S05Y@(UejeuRUE<$# zm&t?3w2RGmZSKTe-L}=j=4W4xw2zM-!MRp3j&t94wEIo7_pO?Ao85m|pUl}`BX5WH z+#BX_e#@xqkDKl}bAeulo>d=je!*(Y{S~ecJ=aE0zMA$q>E7uKlfrn!t?l>X39Y{b ztBa;w#iz*VyTIpecSgHUcs#~>MaR>BDBpPYj>uHJFM5sR>Wx=IgO1N~E<1gBtwV!4 zSf6d8v3)G&F>g$mG%Dt!>9^tPr^vgIex3co!dA9_!yUBw+c;KI_a@;h1_fRhu^#7j zJFnjKt+?pW6#Qes?#YiYa(dYf=^~2sRg7t}^4P&|hYxiPQO{^GZ*auGWvx!J=WQ?f za@&fP*yUNk!h1JPKU6LrH+%DTwUCBHF@^b8PkWdL-rs#Td3qx5A-dLS*O3jQyhpzC z=%7C2{lVqz!!Y`!-rL$fzaQm+?aNJ9N=CKYc`CvpW!9YMYTph=2dqs_az5F?_u=m1 z1_=lJ&tF~=InM9Mc=4)|S5q6QzjSJAmOa5zZrgNR^q0CR9a(FaO!_DvGq354KN33O zw@`J9hO`N_CiNXO&m!%e^3>!GoEbCLKG?Z){`cbVe{RVPI;LK_I%?PKbJ)w__DkL{ ztS)4C4~Pjn&>@J{W((4-(~`@X>hVi`cA(~+1_$mEbZmcYJ1_6d#%mY0pK;Cjy0%`6 z^>h2EZ)H4~>M-f7RdYLj(1bw+pD#}9aA8l;jU^+RWFD!vWupyF485WL-h`HJP;cMz z_-gA_-IkOn5{p_FJiXTAOjfLa&XqblRMHO-%fmjZ$M+ey+>G~p_`9Nc)-A*17aaEV ze>-8-k!AfaJogdoFl~mb-F=S?-u7yIPOsR9KF=qQ2z#{6`eVc^^~cr2ueDq>uFFlF z{HPze3X)rIo)>(%%=FZg?zCiVGiqtGwCkp+Irh%;+a=0j8I{YDCYDFe7B&h#Kp&s; zyska_?xO1(z9H<()}8RJx6Y9*GgM>WQXa0UHBYtW!q~N^Q;)Ykzvxu)EKi?p_L*%$ z%bvEnWWDTMjC?Xx?D+jZi@<8XYxilx4+ihQ6EJ4-!mI()yO;2h;``834gMaN^J>fO`o-@iENk1WrX=4`18ZLLzm&zjx7a*u z!ma38om(YLIp?YByQuB^9mlW4&hhDeVCR?rqB=L!$wqZvv+CRsBZN?6V-KHq&R%@@ zaq@umK^-pjl{c1^yk`YZ_1$}K`DELF1O9rFH=yfcTsvu>ZUF;x z-*prXxRO;ipQ08|FMn(f)ALIEi+VVcxjxP6E&!6>fY?!LwUg^9{Fef%Mdu6v}1GZu@?t~HgEz1e>H@4(%*FV(&0KInFMU*ODu zq${PHB^S@^82O;^YSU*W!)KkmQ*Y4ajs!!s?#!n>|D?(t@A=o67qY~K%`UaNonH7N z`P1y;w3s!t8^6HNH`3fNY=QK_v>whqAC6x@TmN$m)gAoI zO)+K4$Ct|%Ox<*>+acQ<3d_9tzQgB(+x0i?N@o2N$KFsUl4HNRWNMQA%J9?Ex*nak zv5!>o^xph=r$u{4-yIkbw$APBTBAa%X@zD;mi}uB%@C(~XsHUv)$3(4VY17mM2Ev& z8%MO+cxA(kLycWrvkUje7w1G2uG@m+>U)XzFS$OPeDYd@w%Vm{0qlNEaVP$E}J@ z-hX<|*_XpEs2jdATl>z`{#s|>OxtL#-PZb0?g`Ef)ko-u*QXr3McZ%RzJWgL(XJ)f zy?cdnWt|l{(+53#^r+LlI7&a5jC9G~_cB4#=_ed5MGGi?RyZC$Hgo#8H7~G7d$)WEF+GuzGaX?LCX%B2D8{?NpO&#D_WADhI`<&3HM9jzh~C*?Pw4ZmF{779^xrhL6Zo^JX_3>!8#6u(alPtTQ1Y{!c|y*v zosAT`^r#`uuI~yukMDT6uEi8r2TSzt*N0li``&Io;?4TP3C;rtE?@g!UwsXAm3H+t z1T$lt=)XA84T-`(VxrIP+$EEbpsp-3h!w)i)C?-og%+s)kXoo4McAAqoa(-;PV~}~ z-4&ksH*rt&sikDnHexFz*k1dlUpELVo<=82FtzG&MCTrLC`T^jH9ojhcxQ zNBHU%*pI8bkB&9n)AG~M57(PWY>VFht^W9eHX!PO`)ykK(eJKjTBu#vlNS!E^_P2- zpjRf1huKV>e?ETufVSC!B=bxAEsmc%RXRBTo4hD%+ZUzp+tZf>L2aj-i`apy)P_1l zz0(f#m=wHb_Gq=F-irFN)GmR2?#=SFJ<6Qw0G1rReA5#r`Uv%OPd3=Q#~5X_P*jHQ z6z@Q*>5QOC-!RID(BKCze?)a({<)fd^!WjyU;EHB4`paT>Fj))F@E2!#P>R{JQlpz zExi8n&$HGJzO6PCL%JO^P|Lq9bEUKM4@*tu&4QXQ-gtcX*s&H5#k`cme*Xm4p!~o^ zBgH-Uv7+U|9lZ{0_IkShPJvn7Jsbamgn0W zm+k4E+bEnhVB7k9@BF<>P6fxf%*hBil4*!xGnC;T@9w#nUWTd-PM0!tV(D%KH#qP9 zxq|Ui-2YQ$2laH1b2l_bs3*#Bk97B(X<9~SmZ4wNZXcdJNo$)hYt^=q{eoFtQWkB# zlX+2ttA(n&fA4J=VzzdzgpD!YtV(fuK86l zt2VTVsn?b46OF!leAVMlLmS2|GhM&=dj8(C6UKDi)3ovEj$1#@Q7?N{oOWfBsqL~0 zb-z!WKKy2#ZYS$c^qmuWR4KP!Xm$O(QOzQ#rz}Rb4eAVeOqX~it~T^$rshFTiyi7+ z`q%agw9>Qx>+FI3ULQaFo<$&~T}2u0aqbA}d24XU;eH6(prZMPmOW_d*eGqNYawUq z?QchpOujtK`~IMPJsT`qpJ{_}CwSjq#A#IL*_H5|$Q6IlLsn+CNj%zf+3tdFLFOL< zeDl~=Z|{qxlJ6(BEx5)<(1yQk9U7|t{;LQdK7ux?al-hHE0_5Q+PKE;*>eq_3;Q8x zlmAdpue>DM#Ya$|8t)J@+q~X<1Z`U5gd?xi-Nr}IW;Nc^KCe=T^+QnK|4>gi`|KCZ zN6_XqFM5Z+*z*yzMU4~w^17r}OCPi)Mc7tD*tlc=zqn&3hJMmS%=YUaUHX}A9VWhP zzi))|%aaA$H&1`?*Wu;uGp$-(!vm|q5kzZiaRf)AM*+-tPFX7X(6FT+iQWJ`l+XdFPJh%X@sFvEkO z0?;-pC169K5i|>+a`-!YDg6BfnTwdr8I86PkW`lv1-?ME&ztb8BLLkFzjE-`38ik% zRFW^VSmm!{vEcxHT%O5Wq6ajpX#`bM7NA)ZWcd)q!wG)%7|=Y3uZF{~QUxL`rV>HO zBCQ)yYAP(Xg?dq>ebKxzK|bxW^S)CLJ-YYI9Gt}peX-i}%!_Lmg4$dv{P1$Y!LnQD z0wrYQXa(91Gf$_!T0szl_ZH00QdRDPU)6<|ifi?ysywA(p9}<#t`b8dCLBY`8vy7C zut?VpNoV1J-UMd-lUGRsW(B0j31xsDNWK`v6N`I%s-w*(PhWdD})HLC(&fDS{=d19X{n|qT0!3+|f+)Dy4#bd!Jpku_P9{R=f zbfVLVr05w0pq_&eFif(tWDczX&`{?;`LNcoBGtiknmAMc~?J$P2S7E?0}15vwNz;#Cb?oq&mjWFk_1?t(gl>z=IUg@ zRHP=~p@c)J{;pK9ZA3UQbrf=&6E_~=6a4Kv8$+2QU^=nNY{kvU3l2X(=_jtG5EmRq zIJ$Oo63rRp)KBCzcy@m**BOg~G~^oQbuRBf28gtA;ov*s$Ob6l057S=l;7IG)3rBN z9CKxCc)<>f#lv$I>|BWCMcjtljeH=@_0s0^7L4qgFSe&i&+Ct_p=5 zDnauvLSX(yR|)=T(J1fBS^+`~f$EX*5Gu@CLFEe5{34N1Njv9a!z*Z*TJismhN-pw z=QK>M3*{Q7)=Q{iYTc`>VQPIT*Dwf~3&)Hl1QsbW8L>!M)Dr@Wdgc8CDO)sCDS=ah zKm;t>6If_ULX9gF3gV40A+QLm@SJ^fa3?{x_Qtkt;}_e>#ywz8*^;@+d>$-L^biIN z31yzA;7vg%j}CT{m;*gVcYpyQ5q?A)v_RlLWOy@U;qOgh=bNN8S*ivc<9Uz*m%yJu zi6xV#nrgMr>-qZ~0H4w7W$x36)u-dhtF$E0)LQE5}81MiY}3=7IPx&IX8CsAh5L=YsY(1I+j``TjFc1zNg z+hhE)uAgIsJyht=&W>=<4|T~$VvETIJsNw#1ZR#^5r+gr>AI~`trgr&u0*zED=nm? zm}De%F?V)+C`HQbcBq4zRmj|$rJ^EaYp)8?lj`S1IBgt36Cp9cwhR{~+cg3)7^Xtg z>sLZ*j!&SG2%BJZK(E!HIG}d#HPvY=qnCkbHUlNz1huxWwULEsOUp6(brxsvxPzw3 zFMie%-Es!UPG9>NFK`dH(yU-eY3~bi9f~rhS}rf&Wq||lg|fh0#_}}g2#P2@4BU(o zq77y6TikThU|>zIoG8n1WxWI z;tnF+O|cNr#W{>fu;DNw)Ubc5xs6mvZ!_uw40^ae`+8l7_HPe_^S@B8TSC$P5JVh{ zT9Sj-*I9{mT2p`j*5>I_*20iz^5y2AQWG^&RkM1o9NH#%yJj;@3;rEfyYt^nilm7* z?4?L{#j2-atA$-nHcuf!QyWU|4c$a_%=2dY%>lEL(a%5FbP4epu<5D_>=mjgO3oDw zwYVc<5NSHOpra4j*G?GB3T}>UEajn2!BvX^wcEMVhZ@3@mj5S=NVd0IE)@0YnIY{s zS^jsgu5@9ok|Se!DNl)o=9=5*G@*e|q&?K~;gQkyOx_eO>%^g1kGOcZ1jGbGfH?eO z5;KbBuXj8l`dc$z@(0lsf)Z$^@IaAm5{|auT}R)PggBpR;{nj&8Rh_q+%jOnSg3XJ zh%yPddw@g{jRU8S#NR7vHC|R>LT%1`9^`~HP+t=eQ#GPN>d_EPRFOmKK$I2lG3e!# zB9W9q_kNSK4BRFVX=s5|n%lU=2QXCmBiM3MvC#5X#8p*6(%fbYD=PW2@KNop36g_n zXun<_8X##RT%hR0*f)?Po4acsdg)~tr4hr^QePWda4^^YdZGjm=KV71eGlf=wpYzu z8Mt}cp7Ot@kCp#e;$7~ z#0#-act{mvfL*0S*y`L=Em1DGpESy^SC*T+sSVhSn9LaTdzMb=UiiBn2H}@bNfY_) z?TKM5=TNv=mb?`B{R)NEWX^zl-NjSpUl}EXN-F0_S(lVc;=iFsyB`xUx#dr{8vh-0fk{0D^Lg2>y9io%{b$7_R60)D_Snw6rN&zwy&(_!NM{KrpK#mF{&fr6M{68fjO~*Qfl;6%p8E$8Gtmag;W{J?2z-3zG?=TGmXW zhz*{0Cyg33wyYP4913nv2|Yg}>Cbn0Bmn(qK$X6iURk8vtuw-lEif?98&Bb{cyh5pfxuQsMt=LMC(#h@x0DE#jb3c1vjIK&JLr=9;;? zN^Y+MPbOY#5&>b!LxU2g%NB8J0W{|tws4Z7@?Wt^9&KXIl43y7m%5l37H4*>a`V$! z!zfo3DsV}1uf*5Bbv+tWv*H@~{th&1>cq|%1Bw|``JUvwLAooLvg*`hup%dK6hbE5 z0TX_nu_@JzhKF_sI9*p+* z#6&#`j=OG{w>pueSue6fhmsn!u&H_8cupxKyHb!r%EUpd5(cXLSkSyE>E07^Q0j_8G@=%n{4WqPg7vHG2=_6<}@ zWLqyHCxNbN*0uhq_2@oX*viLYtJ%Im=uUGfbNB@DX-+nc zX6X95x0c}A)Z*|FgsXeZwL@fM@wn=G-Su8dP0OdRTkr4A?D(`TyDlg333?ZIJA+Tm zBmbCVu=&e;C7U|4n~!TTl4x>$*M;@zv`m1baYWEkA-Ha#_cm@Rc?ZW@dqnn~RO1x4 zxfj6PYMs+^{e8uL{^JWjF0sCT&z}PM{if^scJ9aMIwVhlW29!u=4!Iw@I&H!K|

it$Le+yRAF+&V>|!xiJ@3Pu5sKP(qft61!(ilz1*D^TbnB5zn@}=vRyr*I}+1Y z|4ehWbQ^bAeO;(h5RO-}6n0=b$g0BlOG2)z(IVV-J^vaivxLC{D{p*v^I5=^!I!Bt z^E5f?_Q3Su0{1U}O@2J4{!K1%@w;vL^{Y*dlvm6U%O(_$chg{?^vSCFHmum#WSzHz z#qA)Ah~)ULWwrA|W2%$TtbrThZDFY(l;gbP*&?Cd1d@(vQ!_qAeazC{GovH_2{xnm z2#$V)l)>=pyuhZkqOri{Uo2aBEw-vbsK_BfUVmhwF!T%L+F>e50$jv=T}jK940{Qf zQt%{8D)+hma%krUm)ml_M+E#fft}8WY_s>lPDjS|3&*y&p5y|};t!4@@3+N*(=6FFt0w99G z43Z7@C+R6aB*;nz*k5!g_BR^<1^-)<7-sgNxOE==Go=T^8%X)a0srS16FHp7t_KUm zIR>bG_?M26e>J1PGG?w7>`Ya}uT8I1+1aHQ1I&Hr7>D*@4jrS+YDU>*%o3~UdDh`m z?Ej4#WBBxHWbu)&=KjPSTiA-ClYix+JcD*KEctYdUFz@iC20d~)iSor3HSD=T&sJ{ z?oe!pVfSmhE0>)M3rtVF?NvK?(YX(~OC|i;(u_kb*Q?0B1S5eWdO15PlnFhM+4Y4F z*YQmSeX*B&e?F1=Jr5w0gOEJe1`cW9)Z~N|HJeN=s!hFtK$tQxncsa;4<}IDSou|b zGtA$M7EgW+pjS(Gy@lOA{+bHFVd33zo4VRNJ`c04fNR@_>tpr})6pig0UlpO1kUKw zC8^c!f}T}u61=6%Qsx5cgNt1CD<^@ZR1)UN*9A=~OJypJR)P@vi`~!nDf6Qx!Z|D4 zr&y1!^LwDwbyibuEj{ggh}&Z4%1HVR?*PT+{{4WR?r9f)vijl{HDzPh*4J#e&TOSV zc8YRE$5@uZz-!Wby1xw*Jr6C|^^?p`5AeeqTNtu+`a52RM^9mHLO(S8f?@O##rQRZ z`E3~O$2i=Bxvv*}3lR0^GTMn^ycxoLF@*JI1n6pDCZ@3YTG;R+FXFC7j;A`QkTBn{h|~+xZWn`J7L4t zFj`}Ckqx?os7<5i->G)ScmLNnBA2I9vXQf?#*F$gyTQ_o9J4Qr?Ls%f8xU(SA8xpOqq`c97diToG|ikH7@bV7f83eK%Mi z%$CFP+){wR4tEoT5;93MoKrTQ^Uq5N&m)j4%h9>p3aF1fc4cWQ>l(FfI*|41_ox52y9=EY!A)6|gr^Gz_1Pu@-<{yaLPi$g5zu~v;eDw|iEW3D_ zDzE=t&D$WaUD=$S@@@NxDY!Y3!Y;m8kvLr1WypDh#{8_=#5{O0xhiDG7YJ>cS$ipZ zzUYjKrivSJJl#Gw*WgeS636FX#yPTJ#a4Q>;FP^sPx?6VYT7yczV59IVSgUG?yIfv zJ=<5)3D*5Ci^1o!H`z3<_nZ6nuwiqbeiuxIe2Ki2{hxKp!{y4*eu?M;lwUvAmcHG^ z!6{qfk=^*{lV<$#?O;;UTs%KBo29V!*VxJ{
p+qWYIj-~WHdaV5g_yUK4o>y5F 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¥>uf|GG^XMW$m(JShF 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 diff --git a/sandbox/state.json b/sandbox/state.json index 263a856c..c47c2241 100644 --- a/sandbox/state.json +++ b/sandbox/state.json @@ -1 +1 @@ -{"block":{"number":"0x5d","coinbase":"0x0000000000000000000000000000000000000000","timestamp":"0x664caebd","gas_limit":"0x6691b7","basefee":"0x1b818","difficulty":"0x0","prevrandao":"0x0000000000000000000000000000000000000000000000000000000000000000","blob_excess_gas_and_price":{"excess_blob_gas":0,"blob_gasprice":1}},"accounts":{"0x0000000000000000000000000000000000000000":{"nonce":0,"balance":"0xc968d22370860","code":"0x","storage":{}},"0x00e39a5004299871ab3b00fed5a39a715f181d02":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x66":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x67":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xd178b720229c39de617846f84cf9c8d32a63a23d","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0x0458f653495fb8d9bd0e7df468c2bf76d26c7bd9":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f7e83aee1461002d575b5f80fd5b61004061003b3660046105ba565b610054565b604051901515815260200160405180910390f35b5f601482146100a95760405162461bcd60e51b815260206004820152601860248201527f496e76616c696420736861312068617368206c656e6774680000000000000000604482015260640160405180910390fd5b5f6100ec5f85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101599050565b6bffffffffffffffffffffffff191690505f61013c87878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061018a92505050565b6bffffffffffffffffffffffff1916919091149695505050505050565b81515f90610168836014610621565b1115610172575f80fd5b5001602001516bffffffffffffffffffffffff191690565b5f6040518251602084019350604067ffffffffffffffc0600183011601600982820310600181036101bc576040820191505b50776745230100efcdab890098badcfe001032547600c3d2e1f061020d565b5f8383101561020657508082015192829003926020841015610206575f1960208590036101000a0119165b9392505050565b5f5b82811015610514576102228482896101db565b85526102328460208301896101db565b60208601526040818503106001810361024e5760808286038701535b506040830381146001810361026b57602086018051600887021790525b5060405b60808110156102f357858101603f19810151603719820151601f19830151600b198401516002911891909218189081027ffffffffefffffffefffffffefffffffefffffffefffffffefffffffefffffffe1663800000009091047c010000000100000001000000010000000100000001000000010000000116179052600c0161026f565b5060805b61014081101561037c57858101607f19810151606f19820151603f198301516017198401516004911891909218189081027ffffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffc1663400000009091047c0300000003000000030000000300000003000000030000000300000003161790526018016102f7565b50815f805f5b60508110156104ea576014810480156103b257600181146103d957600281146103fe576003811461042857610449565b600160281b8504600160501b86048118600160781b870416189350635a8279999250610449565b600160281b8504600160781b8604600160501b870418189350636ed9eba19250610449565b600160501b8504600160781b8604818117600160281b8804169116179350638f1bbcdc9250610449565b600160281b8504600160781b8604600160501b87041818935063ca62c1d692505b50601f600160bb1b8504168063ffffffe06001609b1b87041617905080840190508063ffffffff8616019050808301905080600160e01b600484028c015104019050600160a01b8102600160281b860417945050600160501b633fffffff600160521b86041663c00000006604000000000000870416170277ffffffff00ffffffff000000000000ffffffff00ffffffff8516179350600181019050610382565b5050509190910177ffffffff00ffffffff00ffffffff00ffffffff00ffffffff169060400161020f565b50600160601b63ffffffff821667ffffffff000000006101008404166bffffffff00000000000000006201000085041663ffffffff60601b630100000086041663ffffffff60801b6401000000008704161717171702945050505050919050565b5f8083601f840112610585575f80fd5b50813567ffffffffffffffff81111561059c575f80fd5b6020830191508360208285010111156105b3575f80fd5b9250929050565b5f805f80604085870312156105cd575f80fd5b843567ffffffffffffffff808211156105e4575f80fd5b6105f088838901610575565b90965094506020870135915080821115610608575f80fd5b5061061587828801610575565b95989497509550505050565b8082018082111561064057634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x06e2822b8856749ed179c77140dbc5f5a27410a4":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063de8f50a11461002d575b5f80fd5b61004061003b36600461051c565b610054565b604051901515815260200160405180910390f35b5f6060805f61009c60048b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506102e79050565b60ff1690508015610166576100f060058261ffff168c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b925061015f6101008260056105c3565b61ffff908116906005906101169085168d6105e5565b61012091906105e5565b8c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b915061021d565b6101a960058b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250929392505061038b9050565b90506101f460078261ffff168c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b925061021a6102048260076105c3565b61ffff908116906007906101169085168d6105e5565b91505b5f606061026084868a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152506103b192505050565b90925090508180156102d757506102856020825161027e91906105e5565b82906103cb565b60028b8b6040516102979291906105f8565b602060405180830381855afa1580156102b2573d5f803e3d5ffd5b5050506040513d601f19601f820116820180604052508101906102d59190610607565b145b9c9b505050505050505050505050565b5f8282815181106102fa576102fa61061e565b016020015160f81c90505b92915050565b825160609061031a8385610632565b1115610324575f80fd5b5f8267ffffffffffffffff81111561033e5761033e610645565b6040519080825280601f01601f191660200182016040528015610368576020820181803683370190505b509050602080820190868601016103808282876103ed565b509095945050505050565b81515f9061039a836002610632565b11156103a4575f80fd5b50016002015161ffff1690565b5f60606103bf838587610442565b91509150935093915050565b81515f906103da836020610632565b11156103e4575f80fd5b50016020015190565b602081106104255781518352610404602084610632565b9250610411602083610632565b915061041e6020826105e5565b90506103ed565b905182516020929092036101000a5f190180199091169116179052565b5f60605f85518551855188888860405160200161046496959493929190610686565b6040516020818303038152906040529050835167ffffffffffffffff81111561048f5761048f610645565b6040519080825280601f01601f1916602001820160405280156104b9576020820181803683370190505b50915083516020830182516020840160055afa925050935093915050565b5f8083601f8401126104e7575f80fd5b50813567ffffffffffffffff8111156104fe575f80fd5b602083019150836020828501011115610515575f80fd5b9250929050565b5f805f805f8060608789031215610531575f80fd5b863567ffffffffffffffff80821115610548575f80fd5b6105548a838b016104d7565b9098509650602089013591508082111561056c575f80fd5b6105788a838b016104d7565b90965094506040890135915080821115610590575f80fd5b5061059d89828a016104d7565b979a9699509497509295939492505050565b634e487b7160e01b5f52601160045260245ffd5b61ffff8181168382160190808211156105de576105de6105af565b5092915050565b81810381811115610305576103056105af565b818382375f9101908152919050565b5f60208284031215610617575f80fd5b5051919050565b634e487b7160e01b5f52603260045260245ffd5b80820180821115610305576103056105af565b634e487b7160e01b5f52604160045260245ffd5b5f81515f5b81811015610678576020818501810151868301520161065e565b505f93019283525090919050565b8681528560208201528460408201525f6106b56106af6106a96060850188610659565b86610659565b84610659565b9897505050505050505056fea164736f6c6343000818000a","storage":{}},"0x0712e8e819712c3bfdb098ce51c87a4ac0296fd8":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x0930ffb2c192b0c9a9dd2372cf7f2845ef39cbb6":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x65":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x66":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xbe92182cab5b84fd18b34881a0c32771e84f5b8b","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c8121905":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x107733fed96c4cd390c944a31f5425a7fb98ae5e":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x65":"0x556e73746f707061626c6520446f6d61696e7300000000000000000000000026","0x66":"0x5544000000000000000000000000000000000000000000000000000000000004","0x133":"0x68747470733a2f2f6578616d706c652e636f6d2f000000000000000000000028","0x134":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x9c74364589a7bce52d7a232f90c98b979577d9ab711dbe7e9fb985471178bff":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf29a433ca043c2d5f13825944af9d019209f338df87172c6b8012dce3044881":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf319a2ef598111826b455194189a27454a0286226eb066e1116f605e0373b37":"0x0","0x1257bbdf5bed452b3eda1d974a9839972d4d54d7fb1cde6a652e653346cc29b8":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x12c033f2252861b1bd15e9b5c71ef1cf26ca53de15eabc3b49e06f596e8755ec":"0x0","0x1348552952ac59b1c2522e84f684e36775420b449eddcdbd28f217183ed58b09":"0x0","0x149026695ebdd2bd6be0a7006aec5d10ddffbe46be181e4468980ea83c004fe9":"0x0","0x14c854a78d51371251661a408306c75d2515b5d509b295a58205e48267082bdc":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x18f06622a1abedc7bb78fcc98b2375188aef6c03b9247beee780b0b095d60285":"0x0","0x201ef5e312d372e2aeac4cf173b46ad2985127c7381f4f9acae5ebbd3a5e3861":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x2215c0abaeffcb5feae8a439b3185f8fba5dd6d97529a56c7609cd41fafdf5f1":"0x1","0x23513200931f98893f46373666c13964c7a821c5b40da7951b921629acf02735":"0x0","0x23f87654b79c6db28828f317e47d0c8deb9eaa2ea4e213fef901836c85036bf3":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x2e4566d865f2e159531492d7643e25e502917762b29082282ab9dfee8fbf54c7":"0x0","0x31fc31c15d389c5908095d314bb8b258352d51e18ac8a2f7fe15f3a0af519145":"0x0","0x3467fdbb447be3074b11c625b56e54d7ab44f3804bef205b07dd436d707d06d5":"0x0","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x62b11ad5f582a5c5d378fb310125b030042554f1","0x3cd80e7291e5f6dffa9af6eb70d47145a8fdd40acb8d09dfd0cf374e8c239b37":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x3f86c4990e663ffa5011ed38824fca68af7e0592eb22f41aebdec0ce84ee672e":"0x0","0x406aa3bf31381c8a323679af48792dfa2e7aa09dd0eb919e307dc4bf84216ff6":"0x0","0x47ce17acd30cc86e021ac7b23be8138ea767f6da503362aac5888a0679270eed":"0x0","0x4a7983c36f64e6df4d467cf706c128c273d30c24bbb172e251a5740624cc0bd3":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x4c42d98041cda7cb7d56b5d04731bd436366eb9f05c30f43671f1d1e2c0b0fa4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x55926eed7087c8cbfa1492f6d367f5e4c14c8d8cd59e2918c37184091369efb1":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x5b20f40cb5e9e634a90df9a72b516c11cc52281a4d1b7b67e672e2fe544ff22f":"0x0","0x6dac3e1cfae338e10c9c2f5000f6256d09afa83708761042001cea734f470ac1":"0x0","0x6defc32a546a6fb1b745bd1bb04e27085e94f01d7ef79587aee2c80853c43a53":"0x0","0x760b245be050a725a39b4fc089ad474a5fd40efa17101e112d30195d590779b4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x7bee59fcac76da32acb23def57eaaf959a4372a4fc180978fbd54f7a4c4b2f3d":"0x0","0x804aee9448e0b539a009ee7c6dd57e686c72e7b182e9622a42922b245a97e61e":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x825f7f8567cfd669c3beab41edff07d4aa51436123deeb0d3623b6a8fdec893c":"0x0","0x8717a3236e6a948df94444f035834fa8f7c5ee663a29f3580f3ef43ab051d6bd":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8a34e37883baf84417a33bb02eec8d1e43e363f617029800ff166614df3f112f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8bd1acdc45b63f1edf5db0b1444f1c4a6f82bf0a5a0a7231c2dd7b76a2b1e35c":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87":"0x0","0x8ed4e9fbdf86edd9f3eb1c8d4fbfc53a2eb863faf4cf5e0d2b307c0b33030091":"0x0","0x8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x90d72780b77edcd0c8daffbac0b21264679e851b734cb090e2b144eb3a28bb98":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x93fc964857984ff804a65eaceac4062669948f2b651ddc6b71373ad142bf45e0":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x9770fa903e700367e0306ab8fd70a2bb4f049417d341a2f8a2409d8d6a2218d1":"0x0","0xb1016fe231c2ed9dba8c95d2658191823b4b9ffa61a7aea530802c6b2ff27c41":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xbe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafe":"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f","0xbe7c5c707db1c91bd2c84880bb1e177b65886d295d9a62df8edfe38f8066cc81":"0x0","0xc3cd64a46de7309013ddb93a16a3024c2e46fb931e4744edf2610fb119f716f5":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xc563f9d3175978a619bae1a8175d3ea4be91d3890345085c5eb16f83b678a3d9":"0x0","0xc5b5cdb7b939f9d661f58f28c37e10cf71d45dacfea2581c88ae4a17aaf55e6e":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xd386775169d9e0716e9b5b08561984726edaa9febd0ca8e5468ecffa112078c7":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xe3b736cdcc6a09d7e3a05ffb63b11f11c91958d861443c3409d3fd863e8217bd":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xe3e5b75e3dff543bfbfe5b494e4e3243b4d9d0b3d794725cea46c28fe6be50e4":"0x0","0xe7d61626cac95282d296ee7ab5958e3e72e32eb959a7cab1d37c0f9d6d69c18a":"0x1a","0xeca5e1ccaa645ce2be97a867a1f8aeeb63ea833aeb009c0df0553b42b30c683f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf08305746cdba1d0eaa65036694838a3db122973267ffc57739d605c320c680a":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf0d566acc03395f71b37890f455d51d93197adf754ea72aba21427dc66b437df":"0x0","0xf230898ba4fe40c52f958d03013d995f822e25a5d4fae43bbdc6e92623cea0bd":"0x0","0xf245a9962043f44f4af98f9952a3bd29d91eb05418e4bb567b9de8f27e239b13":"0x0","0xf2a19ade13962e8675aecf2fbe51913877912f9e48e899806b6e06e82f9a980f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf2fab50b0b53245ddfa1bcfcdf4c73e209d6921dad704d173cf04cbbadc8e346":"0x0","0xfa6f3ee10d719cb3457d10c539ff3d77b8e56852ea62f68b2f9f85ad691ed6b4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xfff3abb219acc6ef4eed6e93a5682023229370196f352cdf3a71a88d881e3487":"0x0"}},"0x11dd97b7ca847dfb6504e61b7b9eb30f55e554a0":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a424740014610090575b600080fd5b610059610054366004610ba9565b6100b3565b6040516100669190610c98565b60405180910390f35b61008261007d366004610cab565b6101ce565b604051908152602001610066565b6100a361009e366004610ba9565b610332565b6040519015158152602001610066565b606060005a6001546040805163b3f9e4cb60e01b81529088013560048201529192506000916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561010a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061012e9190610cd9565b90506101c26101406020880188610cf6565b8260408901358561015460608c018c610d13565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8f018190048102820181019092528d815292508d91508c90819084018382808284376000920191909152506103fb92505050565b925050505b9392505050565b60025460015460405163b3f9e4cb60e01b8152600481018490526000926001600160a01b0390811692169063b3f9e4cb90602401602060405180830381865afa92505050801561023b575060408051601f3d908101601f1916820190925261023891810190610cd9565b60015b156102435790505b6001600160a01b0381163b156102c557604051636ccbae5f60e01b81526004810184905281906001600160a01b03821690636ccbae5f90602401602060405180830381865afa9250505080156102b6575060408051601f3d908101601f191682019092526102b391810190610d5a565b60015b156102c357949350505050565b505b600254604051636ccbae5f60e01b8152600481018590526001600160a01b0390911690636ccbae5f90602401602060405180830381865afa15801561030e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101c79190610d5a565b6001546040805163b3f9e4cb60e01b815290850135600482015260009182916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa158015610383573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103a79190610cd9565b90506103f26103b586610e0b565b8286868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506104d392505050565b95945050505050565b6060600080876001600160a01b0316866104178b8a898961051f565b6040516104249190610eb5565b60006040518083038160008787f1925050503d8060008114610462576040519150601f19603f3d011682016040523d82523d6000602084013e610467565b606091505b509092509050610478603f87610ed1565b5a1161048657610486610ef3565b6104c682826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506105d4565b9998505050505050505050565b60006104e084848461060d565b8015610514575060608401516020908101516001600160e01b031990811660009081529182905260409091205460e01b1615155b949350505050565b50565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036105b15760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526105c982828661074c565b979650505050505050565b606083156105e35750816101c7565b8251156105f35782518084602001fd5b8160405162461bcd60e51b81526004016105a89190610c98565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015610654573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106789190610d5a565b905060006107268660600151805190602001208688602001516040516020016106c69392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156101c2575085516101c2906001600160a01b03168286610935565b60606001600160e01b0319841663b87abc1160e01b036107cd5760008380602001905181019061077c9190610d5a565b9050848184604051602401610792929190610f09565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915291506101c79050565b6001600160e01b0319841663c597407360e01b03610859576000806000858060200190518101906107fe9190610f67565b925092509250868383838860405160240161081c9493929190610fd4565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293506101c792505050565b6001600160e01b031984166311ed383160e31b036108a85760008060008580602001905181019061088a91906110a6565b925092509250868383838860405160240161081c9493929190611157565b6001600160e01b031984166328d55f9b60e21b036101c7576000806000858060200190518101906108d991906110a6565b92509250925086838383886040516024016108f79493929190611157565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293505050509392505050565b60008060006109448585610a77565b9092509050600081600481111561095d5761095d61117c565b14801561097b5750856001600160a01b0316826001600160a01b0316145b1561098b576001925050506101c7565b600080876001600160a01b0316631626ba7e60e01b88886040516024016109b3929190610f09565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516109f19190610eb5565b600060405180830381855afa9150503d8060008114610a2c576040519150601f19603f3d011682016040523d82523d6000602084013e610a31565b606091505b5091509150818015610a44575080516020145b8015610a6b57508051630b135d3f60e11b90610a699083016020908101908401610d5a565b145b98975050505050505050565b6000808251604103610aad5760208301516040840151606085015160001a610aa187828585610abc565b94509450505050610ab5565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610af35750600090506003610ba0565b8460ff16601b14158015610b0b57508460ff16601c14155b15610b1c5750600090506004610ba0565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610b70573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610b9957600060019250925050610ba0565b9150600090505b94509492505050565b600080600060408486031215610bbe57600080fd5b833567ffffffffffffffff80821115610bd657600080fd5b9085019060808288031215610bea57600080fd5b90935060208501359080821115610c0057600080fd5b818601915086601f830112610c1457600080fd5b813581811115610c2357600080fd5b876020828501011115610c3557600080fd5b6020830194508093505050509250925092565b60005b83811015610c63578181015183820152602001610c4b565b50506000910152565b60008151808452610c84816020860160208601610c48565b601f01601f19169290920160200192915050565b6020815260006101c76020830184610c6c565b600060208284031215610cbd57600080fd5b5035919050565b6001600160a01b038116811461051c57600080fd5b600060208284031215610ceb57600080fd5b81516101c781610cc4565b600060208284031215610d0857600080fd5b81356101c781610cc4565b6000808335601e19843603018112610d2a57600080fd5b83018035915067ffffffffffffffff821115610d4557600080fd5b602001915036819003821315610ab557600080fd5b600060208284031215610d6c57600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610dac57610dac610d73565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ddb57610ddb610d73565b604052919050565b600067ffffffffffffffff821115610dfd57610dfd610d73565b50601f01601f191660200190565b600060808236031215610e1d57600080fd5b610e25610d89565b8235610e3081610cc4565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610e6057600080fd5b840136601f820112610e7157600080fd5b8035610e84610e7f82610de3565b610db2565b8181523684838501011115610e9857600080fd5b818484018583013760009181019093015250606082015292915050565b60008251610ec7818460208701610c48565b9190910192915050565b600082610eee57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b8281526040602082015260006105146040830184610c6c565b600082601f830112610f3357600080fd5b8151610f41610e7f82610de3565b818152846020838601011115610f5657600080fd5b610514826020830160208701610c48565b600080600060608486031215610f7c57600080fd5b835167ffffffffffffffff80821115610f9457600080fd5b610fa087838801610f22565b94506020860151915080821115610fb657600080fd5b50610fc386828701610f22565b925050604084015190509250925092565b608081526000610fe76080830187610c6c565b8281036020840152610ff98187610c6c565b905084604084015282810360608401526105c98185610c6c565b600082601f83011261102457600080fd5b8151602067ffffffffffffffff8083111561104157611041610d73565b8260051b611050838201610db2565b938452858101830193838101908886111561106a57600080fd5b84880192505b85831015610a6b578251848111156110885760008081fd5b6110968a87838c0101610f22565b8352509184019190840190611070565b6000806000606084860312156110bb57600080fd5b835167ffffffffffffffff808211156110d357600080fd5b6110df87838801611013565b945060208601519150808211156110f557600080fd5b50610fc386828701611013565b600081518084526020808501808196508360051b8101915082860160005b8581101561114a578284038952611138848351610c6c565b98850198935090840190600101611120565b5091979650505050505050565b60808152600061116a6080830187611102565b8281036020840152610ff98187611102565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x2":"0xf8c26340c1eaea6c7ff1760b25005e1306953572","0x1e74f978992d7d64ddac400bd4aae9eefd60fa0b8456650273f5f50148803323":"0xa3557e6c","0x23c84c23be8f829809d1b1502c647c6c59fb6b2345b163a2ca3e7d4f9855975c":"0x8f69c188","0xa0286316c9d3cb00f4f54a9f1096cefaa1748bb5a5395e7fa1563568ebb3e6c3":"0xb87abc11","0xdc138de224807be243ee38fe9e746cce5d437a256b87be90b80240e0811ad043":"0xc5974073"}},"0x145908bbcfc7b258e4d4d9a586f6e3249ae80216":{"nonce":1,"balance":"0x0","code":"0x3d5c","storage":{}},"0x17cda4e23f7237277952e075b1c48467aabfacc0":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c806368f9dab21461002d575b5f80fd5b61004061003b36600461088b565b610052565b60405190815260200160405180910390f35b5f61006f6040518060400160405280606081526020015f81525090565b61008e61007c858861090d565b61008790601061090d565b82906101d1565b506100d085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250859392505061023a9050565b5061011287878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250859392505061023a9050565b505f610120825f0151610266565b905083156101bc5760408051808201909152606081525f602090910181905282515261014c825f610650565b5061018e88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250869392505061023a9050565b505f5b848110156101ba576101a4835f8461067f565b5082516101b090610266565b9150600101610191565b505b6001600160601b031916979650505050505050565b60408051808201909152606081525f60208201526101f0602083610920565b1561021857610200602083610920565b61020b90602061093f565b610215908361090d565b91505b506020808301829052604080518085525f815283019091019052815b92915050565b60408051808201909152606081525f602082015261025f83845f0151518485516106b2565b9392505050565b5f6040518251602084019350604067ffffffffffffffc060018301160160098282031060018103610298576040820191505b50776745230100efcdab890098badcfe001032547600c3d2e1f06102e8565b5f8383101561025f5750808201519282900392602084101561025f575f1960208590036101000a0119169392505050565b5f5b828110156105ef576102fd8482896102b7565b855261030d8460208301896102b7565b6020860152604081850310600181036103295760808286038701535b506040830381146001810361034657602086018051600887021790525b5060405b60808110156103ce57858101603f19810151603719820151601f19830151600b198401516002911891909218189081027ffffffffefffffffefffffffefffffffefffffffefffffffefffffffefffffffe1663800000009091047c010000000100000001000000010000000100000001000000010000000116179052600c0161034a565b5060805b61014081101561045757858101607f19810151606f19820151603f198301516017198401516004911891909218189081027ffffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffc1663400000009091047c0300000003000000030000000300000003000000030000000300000003161790526018016103d2565b50815f805f5b60508110156105c55760148104801561048d57600181146104b457600281146104d9576003811461050357610524565b600160281b8504600160501b86048118600160781b870416189350635a8279999250610524565b600160281b8504600160781b8604600160501b870418189350636ed9eba19250610524565b600160501b8504600160781b8604818117600160281b8804169116179350638f1bbcdc9250610524565b600160281b8504600160781b8604600160501b87041818935063ca62c1d692505b50601f600160bb1b8504168063ffffffe06001609b1b87041617905080840190508063ffffffff8616019050808301905080600160e01b600484028c015104019050600160a01b8102600160281b860417945050600160501b633fffffff600160521b86041663c00000006604000000000000870416170277ffffffff00ffffffff000000000000ffffffff00ffffffff851617935060018101905061045d565b5050509190910177ffffffff00ffffffff00ffffffff00ffffffff00ffffffff16906040016102ea565b50600160601b63ffffffff821667ffffffff000000006101008404166bffffffff00000000000000006201000085041663ffffffff60601b630100000086041663ffffffff60801b6401000000008704161717171702945050505050919050565b60408051808201909152606081525f602082015282515161025f9084906001600160601b031985166014610798565b60408051808201909152606081525f60208201526106aa84846001600160601b031985166014610798565b949350505050565b60408051808201909152606081525f602082015282518211156106d3575f80fd5b60208501516106e2838661090d565b1115610715576107158561070587602001518786610700919061090d565b610813565b610710906002610952565b610829565b5f808651805187602083010193508088870111156107335787860182525b505050602084015b60208410610773578051825261075260208361090d565b915061075f60208261090d565b905061076c60208561093f565b935061073b565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b60408051808201909152606081525f602082015260208501516107bb858461090d565b11156107cf576107cf85610705868561090d565b5f6001836101000a0390508260200360080284901c93508551838682010185831982511617815250805184870111156108085783860181525b509495945050505050565b5f81831115610823575081610234565b50919050565b815161083583836101d1565b50610840838261023a565b50505050565b5f8083601f840112610856575f80fd5b50813567ffffffffffffffff81111561086d575f80fd5b602083019150836020828501011115610884575f80fd5b9250929050565b5f805f805f6060868803121561089f575f80fd5b853567ffffffffffffffff808211156108b6575f80fd5b6108c289838a01610846565b909750955060208801359150808211156108da575f80fd5b506108e788828901610846565b96999598509660400135949350505050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610234576102346108f9565b5f8261093a57634e487b7160e01b5f52601260045260245ffd5b500690565b81810381811115610234576102346108f9565b8082028115828204841417610234576102346108f956fea164736f6c6343000818000a","storage":{}},"0x19356cc2300833e690088a5a09a2044a3cc2a1e2":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x229c56b7805ab5935a883207f6a6bd5847e65aee":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106102ae5760003560e01c8063906cecc111610175578063b9998a24116100dc578063d547741f11610095578063f2fde38b1161006f578063f2fde38b14610892578063f5243bc4146108b2578063f940e385146108d2578063ffa1ad74146108f257600080fd5b8063d547741f1461083f578063d7db74c71461085f578063ec5273891461087257600080fd5b8063b9998a241461077d578063cc2a9a5b1461079d578063cc2c3fc4146107bd578063ceeb4f50146107dd578063d1f5692c146107fd578063d53913931461081d57600080fd5b8063a3a3f7f61161012e578063a3a3f7f614610690578063a3f4df7e146106b0578063a849d65c146106fd578063aa271e1a1461071d578063b0aa98c71461073d578063b3ab15fb1461075d57600080fd5b8063906cecc1146105e657806391d1485414610606578063983b2d5614610626578063986502751461064657806399e0dd7c1461065b578063a217fddf1461067b57600080fd5b80635b6fa8db11610219578063715018a6116101d2578063715018a61461054b57806371e2a6571461056057806377a2a5891461058057806381c81d35146105a05780638456cb59146105b35780638da5cb5b146105c857600080fd5b80635b6fa8db146104a35780635c975abb146104c35780635cd7e3b3146104d85780635e22cd86146104f85780635fc1964f14610518578063634486da1461053857600080fd5b80633092afd51161026b5780633092afd5146103a857806336568abe146103c85780633f41b614146103e85780633f4ba83a1461042057806351cff8d914610435578063572b6c051461045557600080fd5b806301ffc9a7146102b35780631edb948e146102e857806320c5429b1461030a578063248a9ca31461032a578063268b15ed146103685780632f2ff15d14610388575b600080fd5b3480156102bf57600080fd5b506102d36102ce366004613dc4565b610923565b60405190151581526020015b60405180910390f35b3480156102f457600080fd5b50610308610303366004613e13565b61095a565b005b34801561031657600080fd5b50610308610325366004613e3f565b610b03565b34801561033657600080fd5b5061035a610345366004613e3f565b60009081526097602052604090206001015490565b6040519081526020016102df565b34801561037457600080fd5b50610308610383366004613e99565b610c26565b34801561039457600080fd5b506103086103a3366004613f04565b610cb9565b3480156103b457600080fd5b506103086103c3366004613f34565b610ce3565b3480156103d457600080fd5b506103086103e3366004613f04565b610cf7565b3480156103f457600080fd5b5060c954610408906001600160a01b031681565b6040516001600160a01b0390911681526020016102df565b34801561042c57600080fd5b50610308610d85565b34801561044157600080fd5b50610308610450366004613f34565b610d97565b34801561046157600080fd5b506102d3610470366004613f34565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546001600160a01b0390811691161490565b3480156104af57600080fd5b5060cc54610408906001600160a01b031681565b3480156104cf57600080fd5b506102d3610e37565b3480156104e457600080fd5b506103086104f3366004613fa3565b610e4d565b34801561050457600080fd5b50610308610513366004614062565b6110b1565b34801561052457600080fd5b5061030861053336600461419c565b6112f6565b610308610546366004613f34565b61133e565b34801561055757600080fd5b50610308611401565b34801561056c57600080fd5b5061030861057b36600461419c565b611413565b34801561058c57600080fd5b5060ce54610408906001600160a01b031681565b6103086105ae366004613f34565b61145b565b3480156105bf57600080fd5b506103086114d8565b3480156105d457600080fd5b506033546001600160a01b0316610408565b3480156105f257600080fd5b5061030861060136600461423a565b6114e8565b34801561061257600080fd5b506102d3610621366004613f04565b61156e565b34801561063257600080fd5b50610308610641366004613f34565b611599565b34801561065257600080fd5b506103086115aa565b34801561066757600080fd5b50610308610676366004614295565b6115c4565b34801561068757600080fd5b5061035a600081565b34801561069c57600080fd5b506103086106ab3660046142d6565b6116ab565b3480156106bc57600080fd5b506106f0604051806040016040528060148152602001732aa7299d1026b4b73a34b7339026b0b730b3b2b960611b81525081565b6040516102df919061437c565b34801561070957600080fd5b5060cb54610408906001600160a01b031681565b34801561072957600080fd5b506102d3610738366004613f34565b6116f4565b34801561074957600080fd5b506102d3610758366004613e3f565b61170e565b34801561076957600080fd5b50610308610778366004613f34565b61176c565b34801561078957600080fd5b50610308610798366004613f34565b611796565b3480156107a957600080fd5b506103086107b836600461438f565b6117db565b3480156107c957600080fd5b5060ca54610408906001600160a01b031681565b3480156107e957600080fd5b506103086107f8366004614411565b611cd2565b34801561080957600080fd5b506103086108183660046144c6565b611d76565b34801561082957600080fd5b5061035a600080516020614ef483398151915281565b34801561084b57600080fd5b5061030861085a366004613f04565b611e2d565b61030861086d3660046144fb565b611e52565b34801561087e57600080fd5b5061030861088d366004613e3f565b611fe2565b34801561089e57600080fd5b506103086108ad366004613f34565b612054565b3480156108be57600080fd5b506103086108cd3660046145f0565b612070565b3480156108de57600080fd5b506103086108ed366004614708565b612222565b3480156108fe57600080fd5b506106f060405180604001604052806005815260200164302e352e3160d81b81525081565b60006001600160e01b03198216637965db0b60e01b148061095457506301ffc9a760e01b6001600160e01b03198316145b92915050565b61096561073861239e565b61098a5760405162461bcd60e51b815260040161098190614736565b60405180910390fd5b60c95460405163baef73e960e01b8152600481018390526000916001600160a01b03169063baef73e990602401602060405180830381865afa1580156109d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109f8919061476b565b9050806001600160401b0316600003610a235760405162461bcd60e51b815260040161098190614788565b806001600160401b0316836001600160401b031611610a905760405162461bcd60e51b815260206004820152602360248201527f4d696e74696e674d616e616765723a204558504952595f4e4f545f455854454e60448201526211115160ea1b6064820152608401610981565b60c954604051631fb9763760e11b81526001600160401b0385166004820152602481018490526001600160a01b0390911690633f72ec6e906044015b600060405180830381600087803b158015610ae657600080fd5b505af1158015610afa573d6000803e3d6000fd5b50505050505050565b610b0e61073861239e565b610b2a5760405162461bcd60e51b815260040161098190614736565b60c95460405163baef73e960e01b8152600481018390526001600160a01b039091169063baef73e990602401602060405180830381865afa158015610b73573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b97919061476b565b6001600160401b0316600003610bbf5760405162461bcd60e51b815260040161098190614788565b60c954604051637eee288d60e01b8152306004820152602481018390526001600160a01b0390911690637eee288d90604401600060405180830381600087803b158015610c0b57600080fd5b505af1158015610c1f573d6000803e3d6000fd5b5050505050565b8282828080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250610c6993508592508491506123ad565b610c71610e37565b15610c8e5760405162461bcd60e51b8152600401610981906147cb565b6060610afa610c9b61239e565b610cae88610ca98989612584565b6125b0565b8384600060016126c1565b600082815260976020526040902060010154610cd481612c15565b610cde8383612c26565b505050565b610ceb612cad565b610cf481612d26565b50565b610cff61239e565b6001600160a01b0316816001600160a01b031614610d775760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610981565b610d818282612d3e565b5050565b610d8d612cad565b610d95612dc3565b565b610d9f612cad565b6001600160a01b038116610db257600080fd5b60405147906001600160a01b0383169082156108fc029083906000818181858888f19350505050158015610dea573d6000803e3d6000fd5b50604080516001600160a01b03841681526020810183905260008183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a15050565b600080516020614ed48339815191525460ff1690565b610e5786886147f5565b8051600203610e8c57610e6b61073861239e565b610e875760405162461bcd60e51b8152600401610981906148bf565b610fd1565b6000610e9782612e6b565b60c9549092506001600160a01b0316905063430c2081610eb561239e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015610f00573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f249190614903565b80610fb3575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa158015610f7d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fa19190614903565b8015610fb35750610fb361073861239e565b610fcf5760405162461bcd60e51b815260040161098190614920565b505b610fdb87896147f5565b6000600282511015610fff5760405162461bcd60e51b81526004016109819061496f565b6110546110336000846001865161101691906149ca565b81518110611026576110266149dd565b6020026020010151612ea6565b83600081518110611046576110466149dd565b6020026020010151836123ad565b61105c610e37565b156110795760405162461bcd60e51b8152600401610981906147cb565b6110a38b6110878b8d6147f5565b6110918a8c6147f5565b61109b898b6147f5565b6000896126c1565b505050505050505050505050565b6110bb87896147f5565b80516002036110f0576110cf61073861239e565b6110eb5760405162461bcd60e51b8152600401610981906148bf565b611235565b60006110fb82612e6b565b60c9549092506001600160a01b0316905063430c208161111961239e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015611164573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111889190614903565b80611217575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa1580156111e1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112059190614903565b8015611217575061121761073861239e565b6112335760405162461bcd60e51b815260040161098190614920565b505b61123f888a6147f5565b836002825110156112625760405162461bcd60e51b81526004016109819061496f565b6112796110336000846001865161101691906149ca565b611281610e37565b1561129e5760405162461bcd60e51b8152600401610981906147cb565b60028a146112be5760405162461bcd60e51b8152600401610981906149f3565b6112e78c6112cc8c8e6147f5565b6112d68b8d6147f5565b6112e08a8c6147f5565b89896126c1565b50505050505050505050505050565b6112fe612cad565b60005b8151811015610d815761132c82828151811061131f5761131f6149dd565b6020026020010151612d26565b8061133681614a39565b915050611301565b61134961073861239e565b6113655760405162461bcd60e51b815260040161098190614736565b6001600160a01b0381166113bb5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610981565b6113c481612f5a565b6113cc6115aa565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610d81573d6000803e3d6000fd5b611409612cad565b610d956000612f72565b61141b612cad565b60005b8151811015610d815761144982828151811061143c5761143c6149dd565b6020026020010151612f5a565b8061145381614a39565b91505061141e565b61146661073861239e565b6114825760405162461bcd60e51b815260040161098190614736565b6001600160a01b0381166113c45760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610981565b6114e0612cad565b610d95612fc4565b8282828080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525061152b93508592508491506123ad565b611533610e37565b156115505760405162461bcd60e51b8152600401610981906147cb565b606061156487610cae88610ca98989612584565b5050505050505050565b60009182526097602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6115a1612cad565b610cf481612f5a565b610d95600080516020614ef48339815191526103e361239e565b6115cc612cad565b60c954604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906115fe9085908590600401614a52565b600060405180830381600087803b15801561161857600080fd5b505af115801561162c573d6000803e3d6000fd5b505060cb546001600160a01b0316159150610d8190505760cb54604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906116759085908590600401614a52565b600060405180830381600087803b15801561168f57600080fd5b505af11580156116a3573d6000803e3d6000fd5b505050505050565b6116b3612cad565b610cde83838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525085925061302c915050565b6000610954600080516020614ef48339815191528361156e565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd696020820152908101829052600090611762906060015b6040516020818303038152906040528051906020012090565b5460ff1692915050565b611774612cad565b60ce80546001600160a01b0319166001600160a01b0392909216919091179055565b61179e612cad565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e80546001600160a01b0319166001600160a01b03831617905550565b600054610100900460ff16158080156117fb5750600054600160ff909116105b806118155750303b158015611815575060005460ff166001145b6118785760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610981565b6000805460ff19166001179055801561189b576000805461ff0019166101001790555b60c980546001600160a01b03199081166001600160a01b038a81169190911790925560ca8054821689841617905560cb8054821688841617905560cc8054821687841617905560ce80549091169185169190911790556118f961314c565b611901613183565b61190a826131bc565b6119126131e3565b6040805161036081018252600661032082018181526563727970746f60d01b610340840152825282518084018452818152651dd85b1b195d60d21b602082810191909152808401919091528351808501855260018152600f60fb1b8183015283850152835180850185526003808252621b999d60ea1b82840152606085019190915284518086018652600a815269313637b1b5b1b430b4b760b11b818401526080850152845180860186526007808252663134ba31b7b4b760c91b8285015260a0860191909152855180870187528281526207070760eb1b8185015260c0860152855180870187528281526264616f60e81b8185015260e086015285518087018752828152621e9a5b60ea1b8185015261010086015285518087018752908152663837b63cb3b7b760c91b8184015261012085015284518086018652600b81526a756e73746f707061626c6560a81b81840152610140850152845180860186528381526535b632bb32b960d11b8184015261016085015284518086018652600280825261686960f01b8285015261018086019190915285518087018752848152656b726573757360d01b818501526101a086015285518087018752600580825264616e696d6560d81b828601526101c087019190915286518088018852818152646d616e676160d81b818601526101e087015286518088018852600981526862696e616e6365757360b81b8186015261020087015286518088018852818152647265616c6d60d81b818601526102208701528651808801885291825261676f60f01b82850152610240860191909152855180870187526008815267185b1d1a5b5a5cdd60c21b818501526102608601528551808701875290815264707564677960d81b81840152610280850152845180860186528381526530bab9ba34b760d11b818401526102a08501528451808601865292835265189a5d19d95d60d21b838301526102c08401929092528351808501855291825262706f6760e81b828201526102e083019190915282518084019093526004835263636c617960e01b9083015261030081019190915260005b6019811015611c5c57611c4a828260198110611c3e57611c3e6149dd565b6020020151600061302c565b80611c5481614a39565b915050611c20565b50611c8360405180604001604052806003815260200162636f6d60e81b815250600161302c565b508015610afa576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050505050565b8686868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250611d1593508592508491506123ad565b611d1d610e37565b15611d3a5760405162461bcd60e51b8152600401610981906147cb565b611d698a611d4c8b610ca98c8c612584565b611d56888a6147f5565b611d6087896147f5565b600060016126c1565b5050505050505050505050565b611d7e612cad565b60005b81811015610cde5760c9546001600160a01b03166350960239848484818110611dac57611dac6149dd565b9050602002016020810190611dc19190613f34565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401600060405180830381600087803b158015611e0257600080fd5b505af1158015611e16573d6000803e3d6000fd5b505050508080611e2590614a39565b915050611d81565b600082815260976020526040902060010154611e4881612c15565b610cde8383612d3e565b611e5c898b6147f5565b6000600282511015611e805760405162461bcd60e51b81526004016109819061496f565b611e976110336000846001865161101691906149ca565b611e9f610e37565b15611ebc5760405162461bcd60e51b8152600401610981906147cb565b60028b14611edc5760405162461bcd60e51b8152600401610981906149f3565b611f228d8d8d898960008a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061322392505050565b84341015611f725760405162461bcd60e51b815260206004820181905260248201527f4d696e74696e674d616e616765723a204e4f545f454e4f5547485f46554e44536044820152606401610981565b611f848d8d8d8d8d8d8d8c60006133e3565b843411156112e757611f9461239e565b6001600160a01b03166108fc611faa87346149ca565b6040518115909202916000818181858888f19350505050158015611fd2573d6000803e3d6000fd5b5050505050505050505050505050565b611fea612cad565b611ff38161349f565b61200f5760405162461bcd60e51b815260040161098190614a81565b600081815260cd6020526040812061202691613d76565b60405181907f0aa1aff0f830e739d86baf0e6624d6763da02f7733575e0e463886cd062dea6a90600090a250565b61205c612cad565b612065816134c5565b610cf460008261353b565b61207a8a8c6147f5565b600060028251101561209e5760405162461bcd60e51b81526004016109819061496f565b6120b56110336000846001865161101691906149ca565b6120bd610e37565b156120da5760405162461bcd60e51b8152600401610981906147cb565b60028c146120fa5760405162461bcd60e51b8152600401610981906149f3565b61213f8e8e8e8a898b8a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061322392505050565b856001600160a01b03166323b872dd61215661239e565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152306024820152604481018890526064016020604051808303816000875af11580156121a9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121cd9190614903565b6122115760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610981565b611fd28e8e8e8e8e8e8e8c8e6133e3565b61222a612cad565b6040516370a0823160e01b81523060048201526000906001600160a01b038416906370a0823190602401602060405180830381865afa158015612271573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122959190614ac3565b60405163a9059cbb60e01b81526001600160a01b038481166004830152602482018390529192509084169063a9059cbb906044016020604051808303816000875af11580156122e8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061230c9190614903565b6123505760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610981565b604080516001600160a01b0384811682526020820184905285168183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a1505050565b60006123a8613545565b905090565b6123b68361349f565b6123d25760405162461bcd60e51b815260040161098190614a81565b600083815260cf602052604090205460ff1615156001600160401b03821615151461244e5760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544c445f455850495241424c455f4d496044820152650a69a82a886960d31b6064820152608401610981565b60006124818360408051808201825260008082526020918201528151808301909252825182529182019181019190915290565b9050600a81600001511115612529576124ac6124a0826000600a61358b565b80516020909101512090565b7fb551e0305c8163b812374b8e78b577c77f226f6f10c5ad03e52699578fbc34b8036125295760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544f4b454e5f4c4142454c5f50524f4860448201526512509255115160d21b6064820152608401610981565b612532836135ca565b61257e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a204c4142454c5f494e56414c49440000006044820152606401610981565b50505050565b60608282604051602001612599929190614adc565b604051602081830303815290604052905092915050565b604080516002808252606082810190935260009190816020015b60608152602001906001900390816125ca57905050905082816000815181106125f5576125f56149dd565b602002602001018190525060cd6000858152602001908152602001600020805461261e90614b04565b80601f016020809104026020016040519081016040528092919081815260200182805461264a90614b04565b80156126975780601f1061266c57610100808354040283529160200191612697565b820191906000526020600020905b81548152906001019060200180831161267a57829003601f168201915b5050505050816001815181106126af576126af6149dd565b60209081029190910101529392505050565b60008060006126cf88612e6b565b915091508380156126e1575060028851115b8015612763575060c9546040516331a9108f60e11b8152600481018390526001600160a01b038b8116921690636352211e90602401602060405180830381865afa158015612733573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127579190614b3e565b6001600160a01b031614155b156127c35760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e616765723a20524556455253455f5245434f52445f4e60448201526913d517d0531313d5d15160b21b6064820152608401610981565b60c954604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401602060405180830381865afa15801561280c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128309190614903565b8015612921575060c9546040516331a9108f60e11b81526004810184905230916001600160a01b031690636352211e90602401602060405180830381865afa158015612880573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128a49190614b3e565b6001600160a01b03161480612921575060c95460405163d9548e5360e01b8152600481018490526001600160a01b039091169063d9548e5390602401602060405180830381865afa1580156128fd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129219190614903565b15612a12576001600160401b038516156129a35760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b15801561298a57600080fd5b505af115801561299e573d6000803e3d6000fd5b505050505b60c954604051630fb8df0360e11b81526001600160a01b0390911690631f71be06906129db908c908c908c908c908b90600401614bb0565b600060405180830381600087803b1580156129f557600080fd5b505af1158015612a09573d6000803e3d6000fd5b50505050612c09565b612a1b8261372e565b612a248861378d565b8015612a31575087516002145b8015612a4457506001600160401b038516155b15612b225760ca5488516001600160a01b039091169063c36c2125908b908b90600090612a7357612a736149dd565b602090810291909101015160cc546040516001600160e01b031960e086901b168152612aad9392916001600160a01b031690600401614c0f565b600060405180830381600087803b158015612ac757600080fd5b505af1158015612adb573d6000803e3d6000fd5b50505050600087511115612b1d5760cc54604051633a0deb9d60e21b81526001600160a01b039091169063e837ae74906129db908a908a908790600401614c44565b612c09565b60c95460405163ba5d40b760e01b81526001600160a01b039091169063ba5d40b790612b5a908c908c908c908c908b90600401614bb0565b600060405180830381600087803b158015612b7457600080fd5b505af1158015612b88573d6000803e3d6000fd5b505050506001600160401b03851615612c095760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b158015612bf057600080fd5b505af1158015612c04573d6000803e3d6000fd5b505050505b50979650505050505050565b610cf481612c2161239e565b6137e7565b612c30828261156e565b610d815760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19166001179055612c6961239e565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b612cb561239e565b6001600160a01b0316612cd06033546001600160a01b031690565b6001600160a01b031614610d955760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610981565b610cf4600080516020614ef483398151915282611e2d565b612d48828261156e565b15610d815760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19169055612d7f61239e565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612dcb610e37565b612e0e5760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881393d517d4105554d15160621b6044820152606401610981565b600080516020614ed4833981519152805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa612e4e61239e565b6040516001600160a01b03909116815260200160405180910390a1565b805160009081905b8015612ea057829150612e8c82856110166001856149ca565b925080612e9881614c7a565b915050612e73565b50915091565b60008151600003612ef95760405162461bcd60e51b815260206004820152601b60248201527f4d696e74696e674d616e616765723a204c4142454c5f454d50545900000000006044820152606401610981565b8282604051602001612f0b9190614c91565b60405160208183030381529060405280519060200120604051602001612f3b929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b610cf4600080516020614ef48339815191528261353b565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b612fcc610e37565b15612fe95760405162461bcd60e51b8152600401610981906147cb565b600080516020614ed4833981519152805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258612e4e61239e565b6000613039600084612ea6565b600081815260cd602052604090209091506130548482614cf3565b50600081815260cf602052604090819020805460ff19168415151790555181907f4fce6f6e172b04eaa80325d8e3b0180a34945000f3e214605039e8420fdf8980906130a190869061437c565b60405180910390a260c954604051634f558e7960e01b8152600481018390526001600160a01b0390911690634f558e7990602401602060405180830381865afa1580156130f2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131169190614903565b610cde5760c9546040516307befae360e51b81526001600160a01b039091169063f7df5c6090610acc9084908790600401614db2565b600054610100900460ff166131735760405162461bcd60e51b815260040161098190614dd3565b610d9561317e61239e565b612f72565b600054610100900460ff166131aa5760405162461bcd60e51b815260040161098190614dd3565b610d9560006131b761239e565b61353b565b600054610100900460ff1661179e5760405162461bcd60e51b815260040161098190614dd3565b600054610100900460ff1661320a5760405162461bcd60e51b815260040161098190614dd3565b600080516020614ed4833981519152805460ff19169055565b600061323761323287896147f5565b612e6b565b506040516bffffffffffffffffffffffff1930606090811b821660208401524660348401528b811b82166054840152606883018490526001600160c01b031960c08a901b1660888401526090830188905286901b1660b082015290915060009061331390849061330d9060c401604051602081830303815290604052805190602001206040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c8101829052600090605c01604051602081830303815290604052805190602001209050919050565b9061384b565b905061331e816116f4565b6133765760405162461bcd60e51b8152602060048201526024808201527f4d696e74696e674d616e616765723a205349474e45525f49535f4e4f545f4d49604482015263272a22a960e11b6064820152608401610981565b42866001600160401b0316116133d85760405162461bcd60e51b815260206004820152602160248201527f4d696e74696e674d616e616765723a20455850495245445f5349474e415455526044820152604560f81b6064820152608401610981565b505050505050505050565b600061342a8a6133f38a8c6147f5565b6133fd898b6147f5565b613407888a6147f5565b60008f6001600160a01b031661341b61239e565b6001600160a01b0316146126c1565b9050896001600160a01b031661343e61239e565b6001600160a01b0316827fa545b6fd3355e8d57f8c8147bafe740545bd3ea1f94bef2576a6d532a7c3b605868660405161348b9291909182526001600160a01b0316602082015260400190565b60405180910390a450505050505050505050565b600081815260cd6020526040812080548291906134bb90614b04565b9050119050919050565b6134cd612cad565b6001600160a01b0381166135325760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610981565b610cf481612f72565b610d818282612c26565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546000906001600160a01b03163303613586575060331936013560601c90565b503390565b604080518082019091526000808252602082015260405180604001604052808381526020018486602001516135c09190614e1e565b9052949350505050565b600081516000036135dd57506000919050565b60208201805160f81c603081108015906135fb575060398160ff1611155b15801561361d575060618160ff161015801561361b5750607a8160ff1611155b155b1561362c575060009392505050565b8351600181111561369a5761364e836136466001846149ca565b015160f81c90565b915060308260ff1610158015613668575060398260ff1611155b15801561368a575060618260ff16101580156136885750607a8260ff1611155b155b1561369a57506000949350505050565b60015b6136a86001836149ca565b811015613722578381015160f81c9250602d83148015906136de575060308360ff16101580156136dc575060398360ff1611155b155b80156136ff575060618360ff16101580156136fd5750607a8360ff1611155b155b156137105750600095945050505050565b8061371a81614a39565b91505061369d565b50600195945050505050565b6137378161170e565b156137845760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a20544f4b454e5f424c4f434b45440000006044820152606401610981565b610cf48161386f565b6000806137a46000846001865161101691906149ca565b60ca549091506001600160a01b0316158015906137e05750807f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f145b9392505050565b6137f1828261156e565b610d8157613809816001600160a01b031660146138f3565b6138148360206138f3565b604051602001613825929190614e31565b60408051601f198184030181529082905262461bcd60e51b82526109819160040161437c565b600080600061385a8585613a8e565b9150915061386781613ad3565b509392505050565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd6960208201529081018290526001906138ae90606001611749565b805460ff19169115159190911790556040518181527f2ce5d9351b1d590d5a066db0d2dc7602d55f092506a83a7ee8c4d78ee357d75a9060200160405180910390a150565b60606000613902836002614ea6565b61390d906002614e1e565b6001600160401b0381111561392457613924614133565b6040519080825280601f01601f19166020018201604052801561394e576020820181803683370190505b509050600360fc1b81600081518110613969576139696149dd565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110613998576139986149dd565b60200101906001600160f81b031916908160001a90535060006139bc846002614ea6565b6139c7906001614e1e565b90505b6001811115613a3f576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106139fb576139fb6149dd565b1a60f81b828281518110613a1157613a116149dd565b60200101906001600160f81b031916908160001a90535060049490941c93613a3881614c7a565b90506139ca565b5083156137e05760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610981565b6000808251604103613ac45760208301516040840151606085015160001a613ab887828585613c89565b94509450505050613acc565b506000905060025b9250929050565b6000816004811115613ae757613ae7614ebd565b03613aef5750565b6001816004811115613b0357613b03614ebd565b03613b505760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152606401610981565b6002816004811115613b6457613b64614ebd565b03613bb15760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610981565b6003816004811115613bc557613bc5614ebd565b03613c1d5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b6064820152608401610981565b6004816004811115613c3157613c31614ebd565b03610cf45760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c604482015261756560f01b6064820152608401610981565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613cc05750600090506003613d6d565b8460ff16601b14158015613cd857508460ff16601c14155b15613ce95750600090506004613d6d565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613d3d573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613d6657600060019250925050613d6d565b9150600090505b94509492505050565b508054613d8290614b04565b6000825580601f10613d92575050565b601f016020900490600052602060002090810190610cf491905b80821115613dc05760008155600101613dac565b5090565b600060208284031215613dd657600080fd5b81356001600160e01b0319811681146137e057600080fd5b6001600160401b0381168114610cf457600080fd5b8035613e0e81613dee565b919050565b60008060408385031215613e2657600080fd5b8235613e3181613dee565b946020939093013593505050565b600060208284031215613e5157600080fd5b5035919050565b60008083601f840112613e6a57600080fd5b5081356001600160401b03811115613e8157600080fd5b602083019150836020828501011115613acc57600080fd5b600080600060408486031215613eae57600080fd5b8335925060208401356001600160401b03811115613ecb57600080fd5b613ed786828701613e58565b9497909650939450505050565b6001600160a01b0381168114610cf457600080fd5b8035613e0e81613ee4565b60008060408385031215613f1757600080fd5b823591506020830135613f2981613ee4565b809150509250929050565b600060208284031215613f4657600080fd5b81356137e081613ee4565b60008083601f840112613f6357600080fd5b5081356001600160401b03811115613f7a57600080fd5b6020830191508360208260051b8501011115613acc57600080fd5b8015158114610cf457600080fd5b60008060008060008060008060a0898b031215613fbf57600080fd5b8835613fca81613ee4565b975060208901356001600160401b0380821115613fe657600080fd5b613ff28c838d01613f51565b909950975060408b013591508082111561400b57600080fd5b6140178c838d01613f51565b909750955060608b013591508082111561403057600080fd5b5061403d8b828c01613f51565b909450925050608089013561405181613f95565b809150509295985092959890939650565b600080600080600080600080600060c08a8c03121561408057600080fd5b893561408b81613ee4565b985060208a01356001600160401b03808211156140a757600080fd5b6140b38d838e01613f51565b909a50985060408c01359150808211156140cc57600080fd5b6140d88d838e01613f51565b909850965060608c01359150808211156140f157600080fd5b506140fe8c828d01613f51565b90955093505060808a013561411281613dee565b915060a08a013561412281613f95565b809150509295985092959850929598565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561417157614171614133565b604052919050565b60006001600160401b0382111561419257614192614133565b5060051b60200190565b600060208083850312156141af57600080fd5b82356001600160401b038111156141c557600080fd5b8301601f810185136141d657600080fd5b80356141e96141e482614179565b614149565b81815260059190911b8201830190838101908783111561420857600080fd5b928401925b8284101561422f57833561422081613ee4565b8252928401929084019061420d565b979650505050505050565b6000806000806060858703121561425057600080fd5b843561425b81613ee4565b93506020850135925060408501356001600160401b0381111561427d57600080fd5b61428987828801613e58565b95989497509550505050565b600080602083850312156142a857600080fd5b82356001600160401b038111156142be57600080fd5b6142ca85828601613e58565b90969095509350505050565b6000806000604084860312156142eb57600080fd5b83356001600160401b0381111561430157600080fd5b61430d86828701613e58565b909450925050602084013561432181613f95565b809150509250925092565b60005b8381101561434757818101518382015260200161432f565b50506000910152565b6000815180845261436881602086016020860161432c565b601f01601f19169290920160200192915050565b6020815260006137e06020830184614350565b60008060008060008060c087890312156143a857600080fd5b86356143b381613ee4565b955060208701356143c381613ee4565b945060408701356143d381613ee4565b935060608701356143e381613ee4565b925060808701356143f381613ee4565b915060a087013561440381613ee4565b809150509295509295509295565b60008060008060008060008060a0898b03121561442d57600080fd5b883561443881613ee4565b97506020890135965060408901356001600160401b038082111561445b57600080fd5b6144678c838d01613e58565b909850965060608b013591508082111561448057600080fd5b61448c8c838d01613f51565b909650945060808b01359150808211156144a557600080fd5b506144b28b828c01613f51565b999c989b5096995094979396929594505050565b600080602083850312156144d957600080fd5b82356001600160401b038111156144ef57600080fd5b6142ca85828601613f51565b600080600080600080600080600080600060e08c8e03121561451c57600080fd5b6145258c613ef9565b9a506001600160401b038060208e0135111561454057600080fd5b6145508e60208f01358f01613f51565b909b50995060408d013581101561456657600080fd5b6145768e60408f01358f01613f51565b909950975060608d013581101561458c57600080fd5b61459c8e60608f01358f01613f51565b90975095506145ad60808e01613e03565b945060a08d013593508060c08e013511156145c757600080fd5b506145d88d60c08e01358e01613e58565b81935080925050509295989b509295989b9093969950565b6000806000806000806000806000806000806101008d8f03121561461357600080fd5b61461c8d613ef9565b9b506001600160401b0360208e0135111561463657600080fd5b6146468e60208f01358f01613f51565b909b5099506001600160401b0360408e0135111561466357600080fd5b6146738e60408f01358f01613f51565b90995097506001600160401b0360608e0135111561469057600080fd5b6146a08e60608f01358f01613f51565b90975095506146b160808e01613e03565b94506146bf60a08e01613ef9565b935060c08d013592506001600160401b0360e08e013511156146e057600080fd5b6146f08e60e08f01358f01613e58565b81935080925050509295989b509295989b509295989b565b6000806040838503121561471b57600080fd5b823561472681613ee4565b91506020830135613f2981613ee4565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b60006020828403121561477d57600080fd5b81516137e081613dee565b60208082526023908201527f4d696e74696e674d616e616765723a20544f4b454e5f4e4f545f455850495241604082015262424c4560e81b606082015260800190565b60208082526010908201526f14185d5cd8589b194e8814105554d15160821b604082015260600190565b60006148036141e484614179565b80848252602080830192508560051b85013681111561482157600080fd5b855b818110156148b35780356001600160401b03808211156148435760008081fd5b90880190601f36818401126148585760008081fd5b82358281111561486a5761486a614133565b61487b818301601f19168801614149565b9250808352368782860101111561489457600091508182fd5b8087850188850137600090830187015250865250938201938201614823565b50919695505050505050565b60208082526024908201527f4d696e74696e674d616e616765723a2043414c4c45525f49535f4e4f545f4d49604082015263272a22a960e11b606082015260800190565b60006020828403121561491557600080fd5b81516137e081613f95565b6020808252602f908201527f4d696e74696e674d616e616765723a2053454e4445525f49535f4e4f545f415060408201526e282927ab22a22fa7a92fa7aba722a960891b606082015260800190565b60208082526025908201527f4d696e74696e674d616e616765723a204c4142454c535f4c454e4754485f42456040820152642627abaf9960d91b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b81810381811115610954576109546149b4565b634e487b7160e01b600052603260045260246000fd5b60208082526026908201527f4d696e74696e674d616e616765723a20535542444f4d41494e535f4e4f545f41604082015265131313d5d15160d21b606082015260800190565b600060018201614a4b57614a4b6149b4565b5060010190565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b60208082526022908201527f4d696e74696e674d616e616765723a20544c445f4e4f545f5245474953544552604082015261115160f21b606082015260800190565b600060208284031215614ad557600080fd5b5051919050565b6b756e732d646576746573742d60a01b81528183600c83013760009101600c01908152919050565b600181811c90821680614b1857607f821691505b602082108103614b3857634e487b7160e01b600052602260045260246000fd5b50919050565b600060208284031215614b5057600080fd5b81516137e081613ee4565b600081518084526020808501808196508360051b8101915082860160005b85811015614ba3578284038952614b91848351614350565b98850198935090840190600101614b79565b5091979650505050505050565b6001600160a01b038616815260a060208201819052600090614bd490830187614b5b565b8281036040840152614be68187614b5b565b90508281036060840152614bfa8186614b5b565b91505082151560808301529695505050505050565b600060018060a01b03808616835260606020840152614c316060840186614350565b9150808416604084015250949350505050565b606081526000614c576060830186614b5b565b8281036020840152614c698186614b5b565b915050826040830152949350505050565b600081614c8957614c896149b4565b506000190190565b60008251614ca381846020870161432c565b9190910192915050565b601f821115610cde57600081815260208120601f850160051c81016020861015614cd45750805b601f850160051c820191505b818110156116a357828155600101614ce0565b81516001600160401b03811115614d0c57614d0c614133565b614d2081614d1a8454614b04565b84614cad565b602080601f831160018114614d555760008415614d3d5750858301515b600019600386901b1c1916600185901b1785556116a3565b600085815260208120601f198616915b82811015614d8457888601518255948401946001909101908401614d65565b5085821015614da25787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b828152604060208201526000614dcb6040830184614350565b949350505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b80820180821115610954576109546149b4565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351614e6981601785016020880161432c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351614e9a81602884016020880161432c565b01602801949350505050565b8082028115828204841417610954576109546149b4565b634e487b7160e01b600052602160045260246000fdfe5496787fc1ebdfeba375028c1865f13fbb1d63c0caa356ccc1b29a80f3ebd6229f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000811000a","storage":{}},"0x24f45688d421f46cca60734bdc648ad192db0f2e":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0x1","0x97":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x12d":"0x0","0x15f":"0x5cc819c9915eadfcebd76952b8c1bc36cadd7376","0x13cf90498be59d359caa5b6092b365feab4610605d7107d1f05f8e94ac955652":"0x1","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x54563a9e1cd2dcbd0bca90d3cfa4a647e02c404a","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106102295760003560e01c8063886a69ba11610123578063cf1d21c0116100ab578063e2c49de11161006f578063e2c49de11461091d578063e3dec8fb14610932578063e43009a6146109c8578063e66f9603146109fb578063ea60c7c414610a2557610240565b8063cf1d21c014610844578063d233a3c714610859578063d547741f1461089c578063d81c8e52146108d5578063dc993a23146108ea57610240565b8063a217fddf116100f2578063a217fddf1461078a578063b4b4f63e1461079f578063bc08452b146107b4578063c4d66de8146107e7578063ca15c8731461081a57610240565b8063886a69ba146106c95780639010d07c146106de5780639173b1391461070e57806391d148541461075157610240565b80633138b6f1116101b1578063568b80b511610175578063568b80b5146105fb578063607f2d4214610610578063630fcbfb1461064e5780636cb136b0146106635780636e86b7701461069657610240565b80633138b6f1146104f55780633408e4701461050a57806336568abe1461051f5780633805550f146105585780634faa8a26146105d557610240565b80630f7e5970116101f85780630f7e59701461042357806320379ee514610438578063248a9ca31461045f5780632d0335ab146104895780632f2ff15d146104bc57610240565b806304967702146102455780630c3894bb146102765780630c53c51c146102b15780630c598220146103ea57610240565b366102405761023e610239610a58565b610a68565b005b600080fd5b34801561025157600080fd5b5061025a610b69565b604080516001600160a01b039092168252519081900360200190f35b34801561028257600080fd5b5061023e6004803603604081101561029957600080fd5b506001600160a01b0381358116916020013516610b78565b610375600480360360a08110156102c757600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156102f257600080fd5b82018360208201111561030457600080fd5b8035906020019184600183028401116401000000008311171561032657600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550508235935050506020810135906040013560ff16610cc9565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103af578181015183820152602001610397565b50505050905090810190601f1680156103dc5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156103f657600080fd5b5061023e6004803603604081101561040d57600080fd5b50803590602001356001600160a01b0316610fcc565b34801561042f57600080fd5b506103756110b9565b34801561044457600080fd5b5061044d6110d6565b60408051918252519081900360200190f35b34801561046b57600080fd5b5061044d6004803603602081101561048257600080fd5b50356110dc565b34801561049557600080fd5b5061044d600480360360208110156104ac57600080fd5b50356001600160a01b03166110f4565b3480156104c857600080fd5b5061023e600480360360408110156104df57600080fd5b50803590602001356001600160a01b031661110f565b34801561050157600080fd5b5061025a611176565b34801561051657600080fd5b5061044d611185565b34801561052b57600080fd5b5061023e6004803603604081101561054257600080fd5b50803590602001356001600160a01b0316611189565b34801561056457600080fd5b5061023e6004803603602081101561057b57600080fd5b81019060208101813564010000000081111561059657600080fd5b8201836020820111156105a857600080fd5b803590602001918460018302840111640100000000831117156105ca57600080fd5b5090925090506111ea565b61023e600480360360208110156105eb57600080fd5b50356001600160a01b03166116ec565b34801561060757600080fd5b5061044d6116f8565b34801561061c57600080fd5b5061063a6004803603602081101561063357600080fd5b503561171b565b604080519115158252519081900360200190f35b34801561065a57600080fd5b5061023e611730565b34801561066f57600080fd5b5061023e6004803603602081101561068657600080fd5b50356001600160a01b03166117d6565b3480156106a257600080fd5b5061025a600480360360208110156106b957600080fd5b50356001600160a01b031661186e565b3480156106d557600080fd5b5061044d611889565b3480156106ea57600080fd5b5061025a6004803603604081101561070157600080fd5b50803590602001356118aa565b34801561071a57600080fd5b5061023e6004803603606081101561073157600080fd5b506001600160a01b038135811691602081013590911690604001356118d1565b34801561075d57600080fd5b5061063a6004803603604081101561077457600080fd5b50803590602001356001600160a01b0316611a06565b34801561079657600080fd5b5061044d611a24565b3480156107ab57600080fd5b5061023e611a29565b3480156107c057600080fd5b5061023e600480360360208110156107d757600080fd5b50356001600160a01b0316611acf565b3480156107f357600080fd5b5061023e6004803603602081101561080a57600080fd5b50356001600160a01b0316611b67565b34801561082657600080fd5b5061044d6004803603602081101561083d57600080fd5b5035611c57565b34801561085057600080fd5b5061025a611c6e565b34801561086557600080fd5b5061023e6004803603606081101561087c57600080fd5b506001600160a01b03813581169160208101359091169060400135611c86565b3480156108a857600080fd5b5061023e600480360360408110156108bf57600080fd5b50803590602001356001600160a01b0316611de8565b3480156108e157600080fd5b5061044d611e41565b3480156108f657600080fd5b5061023e6004803603602081101561090d57600080fd5b50356001600160a01b0316611e60565b34801561092957600080fd5b5061025a611f3d565b34801561093e57600080fd5b5061023e6004803603606081101561095557600080fd5b6001600160a01b03823581169260208101359091169181019060608101604082013564010000000081111561098957600080fd5b82018360208201111561099b57600080fd5b803590602001918460018302840111640100000000831117156109bd57600080fd5b509092509050611f4c565b3480156109d457600080fd5b5061044d600480360360208110156109eb57600080fd5b50356001600160a01b0316611fe9565b348015610a0757600080fd5b5061025a60048036036020811015610a1e57600080fd5b5035611ffb565b348015610a3157600080fd5b5061025a60048036036020811015610a4857600080fd5b50356001600160a01b0316612016565b6000610a62612031565b90505b90565b604080513460208083019190915282518083039091018152908201909152610aa58273eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee8361208e565b7fa1829a9003092132f585b6ccdd167c19fe9774dbdea4260287e8a8e8ca8185d7546000908152600260205260408082205490516001600160a01b039091169034908381818185875af1925050503d8060008114610b1f576040519150601f19603f3d011682016040523d82523d6000602084013e610b24565b606091505b5050905080610b645760405162461bcd60e51b815260040180806020018281038252602781526020018061419d6027913960400191505060405180910390fd5b505050565b6009546001600160a01b031681565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020610ba981610ba4610a58565b611a06565b600a90610c495760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b820191906000526020600020905b815481529060010190602001808311610c1d57829003601f168201915b50509250505060405180910390fd5b506001600160a01b03808416600081815260036020908152604080832080546001600160a01b0319908116909155948716808452600483528184208054909616909555838352600590915280822082905551909291907f9e651a8866fbea043e911d816ec254b0e3c992c06fff32d605e72362d6023bd9908490a4505050565b6060610cd3613e2a565b50604080516060810182526001600160a01b0388166000818152600c602090815290849020548352820152908101869052610d118782878787612508565b610d4c5760405162461bcd60e51b81526004018080602001828103825260218152602001806141c46021913960400191505060405180910390fd5b6001600160a01b0387166000908152600c6020526040902054610d7690600163ffffffff6125e516565b6001600160a01b0388166000818152600c602090815260408083209490945583519283523383820181905260609484018581528b51958501959095528a517f5845892132946850460bff5a0083f71031bc5bf9aadcd40f1de79423eac9b10b958d9592948d94919260808501928601918190849084905b83811015610e05578181015183820152602001610ded565b50505050905090810190601f168015610e325780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a160006060306001600160a01b0316888a6040516020018083805190602001908083835b60208310610e835780518252601f199092019160209182019101610e64565b6001836020036101000a038019825116818451168082178552505050505050905001826001600160a01b03166001600160a01b031660601b8152601401925050506040516020818303038152906040526040518082805190602001908083835b60208310610f025780518252601f199092019160209182019101610ee3565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610f64576040519150601f19603f3d011682016040523d82523d6000602084013e610f69565b606091505b509150915081610fc0576040805162461bcd60e51b815260206004820152601c60248201527f46756e6374696f6e2063616c6c206e6f74207375636365737366756c00000000604482015290519081900360640190fd5b98975050505050505050565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020610ff881610ba4610a58565b600a9061105e5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5060008381526002602052604080822080546001600160a01b0319166001600160a01b0386169081179091559051909185917f8643692ae1c12ec91fa18e50b82ed93fa314f580999a236824db6de9ae0d839b9190a3505050565b604051806040016040528060018152602001603160f81b81525081565b600b5490565b6000818152600160205260409020600201545b919050565b6001600160a01b03166000908152600c602052604090205490565b60008281526001602052604090206002015461112d90610ba4610a58565b6111685760405162461bcd60e51b815260040180806020018281038252602f815260200180613f78602f913960400191505060405180910390fd5b611172828261263f565b5050565b6008546001600160a01b031690565b4690565b611191610a58565b6001600160a01b0316816001600160a01b0316146111e05760405162461bcd60e51b815260040180806020018281038252602f815260200180614286602f913960400191505060405180910390fd5b61117282826126ae565b606061123361122e84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061271d92505050565b612798565b905060006112548260028151811061124757fe5b602002602001015161291a565b6112796112748460088151811061126757fe5b6020026020010151612a62565b612b2c565b6112898460098151811061124757fe5b6040516020018084815260200183805190602001908083835b602083106112c15780518252601f1990920191602091820191016112a2565b51815160209384036101000a6000190180199092169116179052920193845250604080518085038152938201815283519382019390932060008181526006909252929020549194505060ff1615915061134d90505760405162461bcd60e51b81526004018080602001828103825260288152602001806142096028913960400191505060405180910390fd5b6000818152600660208190526040909120805460ff19166001179055825160609161138a9161122e9161138591879190811061126757fe5b61271d565b9050611394613e54565b6113b1826003815181106113a457fe5b6020026020010151612798565b6113c18560098151811061124757fe5b815181106113cb57fe5b6020026020010151905060006113fc6113e383612798565b6000815181106113ef57fe5b6020026020010151612c9f565b6001600160a01b0380821660009081526004602052604090205491925016806114565760405162461bcd60e51b81526004018080602001828103825260228152602001806140af6022913960400191505060405180910390fd5b6001600160a01b03808216600090815260056020908152604080832054835260029091529020548751911690611493908890600890811061124757fe5b63ffffffff1916156114d65760405162461bcd60e51b815260040180806020018281038252602581526020018061408a6025913960400191505060405180910390fd5b61151e6114e98860068151811061126757fe5b6114f98960088151811061126757fe5b6115098a60078151811061126757fe5b6115198b60058151811061124757fe5b612d2f565b61156f576040805162461bcd60e51b815260206004820152601f60248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f50524f4f4600604482015290519081900360640190fd5b6115dd6115828860028151811061124757fe5b6115928960038151811061124757fe5b6115a28a60048151811061124757fe5b60001b6115b58b60058151811061124757fe5b60001b6115c88c60008151811061124757fe5b6115d88d60018151811061126757fe5b612f76565b50806001600160a01b0316638274664f6115f5610a58565b846115ff886130bf565b6040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561167b578181015183820152602001611663565b50505050905090810190601f1680156116a85780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b1580156116c957600080fd5b505af11580156116dd573d6000803e3d6000fd5b50505050505050505050505050565b6116f581610a68565b50565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b01902081565b60066020526000908152604090205460ff1681565b600061173e81610ba4610a58565b600a906117a45760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506116f56040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b81525061312d565b60006117e481610ba4610a58565b600a9061184a5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5050600780546001600160a01b0319166001600160a01b0392909216919091179055565b6004602052600090815260409020546001600160a01b031681565b604080516826a0a82faa27a5a2a760b91b8152905190819003600901902081565b60008281526001602052604081206118c8908363ffffffff6131e916565b90505b92915050565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b0190206118fd81610ba4610a58565b600a906119635760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b03848116600090815260036020526040902054161580156119a457506001600160a01b0383811660009081526004602052604090205416155b6119f5576040805162461bcd60e51b815260206004820181905260248201527f526f6f74436861696e4d616e616765723a20414c52454144595f4d4150504544604482015290519081900360640190fd5b611a008484846131f5565b50505050565b60008281526001602052604081206118c8908363ffffffff61348416565b600081565b6000611a3781610ba4610a58565b600a90611a9d5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506116f56040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613499565b6000611add81610ba4610a58565b600a90611b435760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5050600880546001600160a01b0319166001600160a01b0392909216919091179055565b60005460ff1615611bb0576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b611be16040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613537565b611c126040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613499565b611c1d600082611168565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020611c479082611168565b506000805460ff19166001179055565b60008181526001602052604081206118cb90613589565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020611cb281610ba4610a58565b600a90611d185760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b0380851660009081526003602081815260408084205488861685526004835281852054861680865293909252909220549183169290911615611d8e576001600160a01b038116600090815260036020908152604080832080546001600160a01b031916905560059091528120555b6001600160a01b038281166000908152600460205260409020541615611dd5576001600160a01b038216600090815260046020526040902080546001600160a01b03191690555b611de08686866131f5565b505050505050565b600082815260016020526040902060020154611e0690610ba4610a58565b6111e05760405162461bcd60e51b81526004018080602001828103825260308152602001806140f96030913960400191505060405180910390fd5b604080516611115413d4d25560ca1b8152905190819003600701902081565b6000611e6e81610ba4610a58565b600a90611ed45760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b038216611f1a5760405162461bcd60e51b815260040180806020018281038252602d815260200180613fa7602d913960400191505060405180910390fd5b50600980546001600160a01b0319166001600160a01b0392909216919091179055565b6007546001600160a01b031690565b6001600160a01b03831673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee1415611fa85760405162461bcd60e51b81526004018080602001828103825260248152602001806141e56024913960400191505060405180910390fd5b611a00848484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061208e92505050565b60056020526000908152604090205481565b6002602052600090815260409020546001600160a01b031681565b6003602052600090815260409020546001600160a01b031681565b6000333014156120895760606000368080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505050503601516001600160a01b03169150610a659050565b503390565b6001600160a01b03808316600090815260056020908152604080832054600390925290912054909116158015906120c457508015155b6120ff5760405162461bcd60e51b81526004018080602001828103825260228152602001806140af6022913960400191505060405180910390fd5b6000818152600260205260409020546001600160a01b0316806121535760405162461bcd60e51b81526004018080602001828103825260248152602001806140176024913960400191505060405180910390fd5b6001600160a01b0385166121ae576040805162461bcd60e51b815260206004820152601e60248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f555345520000604482015290519081900360640190fd5b806001600160a01b031663e375b64e6121c5610a58565b8787876040518563ffffffff1660e01b815260040180856001600160a01b03166001600160a01b03168152602001846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561225c578181015183820152602001612244565b50505050905090810190601f1680156122895780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b1580156122ab57600080fd5b505af11580156122bf573d6000803e3d6000fd5b50505050606085858560405160200180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015612338578181015183820152602001612320565b50505050905090810190601f1680156123655780820380516001836020036101000a031916815260200191505b5060408051808303601f19018152828252600780546009546611115413d4d25560ca1b865284519586900390920185206020808701828152878701968752855160608901528551959d506001600160a01b039384169c506316f198319b5092909316985096508a955093608001919085019080838360005b838110156123f55781810151838201526020016123dd565b50505050905090810190601f1680156124225780820380516001836020036101000a031916815260200191505b5093505050506040516020818303038152906040526040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561249b578181015183820152602001612483565b50505050905090810190601f1680156124c85780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b1580156124e857600080fd5b505af11580156124fc573d6000803e3d6000fd5b50505050505050505050565b60006001600160a01b03861661254f5760405162461bcd60e51b81526004018080602001828103825260258152602001806141296025913960400191505060405180910390fd5b600161256261255d87613594565b613620565b83868660405160008152602001604052604051808581526020018460ff1660ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa1580156125bc573d6000803e3d6000fd5b505050602060405103516001600160a01b0316866001600160a01b031614905095945050505050565b6000828201838110156118c8576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600082815260016020526040902061265d908263ffffffff61366c16565b156111725761266a610a58565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b60008281526001602052604090206126cc908263ffffffff61368116565b15611172576126d9610a58565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612725613e54565b600082511161277b576040805162461bcd60e51b815260206004820152601f60248201527f524c505265616465723a20494e56414c49445f42595445535f4c454e47544800604482015290519081900360640190fd5b506040805180820190915281518152602082810190820152919050565b60606127a382613696565b6127f4576040805162461bcd60e51b815260206004820152601860248201527f524c505265616465723a204954454d5f4e4f545f4c4953540000000000000000604482015290519081900360640190fd5b60006127ff836136c2565b905060608167ffffffffffffffff8111801561281a57600080fd5b5060405190808252806020026020018201604052801561285457816020015b612841613e54565b8152602001906001900390816128395790505b5090506000612866856020015161374e565b855190915081146128a85760405162461bcd60e51b81526004018080602001828103825260278152602001806142316027913960400191505060405180910390fd5b60006128b786602001516137e2565b60208701510190506000805b8581101561290e576128d48361374e565b91506040518060400160405280838152602001848152508582815181106128f757fe5b6020908102919091010152918101916001016128c3565b50929695505050505050565b600061292582613696565b15612977576040805162461bcd60e51b815260206004820181905260248201527f524c505265616465723a204445434f44494e475f4c4953545f41535f55494e54604482015290519081900360640190fd5b8151602110156129ce576040805162461bcd60e51b815260206004820152601e60248201527f524c505265616465723a20494e56414c49445f55494e545f4c454e4754480000604482015290519081900360640190fd5b60006129dd836020015161374e565b83519091508114612a1f5760405162461bcd60e51b81526004018080602001828103825260278152602001806142b56027913960400191505060405180910390fd5b6000612a2e84602001516137e2565b84516020808701518301805193945091849003929190831015612a5857826020036101000a820491505b5095945050505050565b60606000612a73836020015161374e565b83519091508114612ab55760405162461bcd60e51b81526004018080602001828103825260288152602001806140d16028913960400191505060405180910390fd5b6000612ac484602001516137e2565b845190915081900360608167ffffffffffffffff81118015612ae557600080fd5b506040519080825280601f01601f191660200182016040528015612b10576020820181803683370190505b5090506000816020019050612a58848860200151018285613845565b604080516020810190915260008152815160609190156118cb57600080612b54600086613890565b60f81c90506001811480612b6b57508060ff166003145b15612bfa57600185516002020367ffffffffffffffff81118015612b8e57600080fd5b506040519080825280601f01601f191660200182016040528015612bb9576020820181803683370190505b5092506000612bc9600187613890565b90508084600081518110612bd957fe5b60200101906001600160f81b031916908160001a9053506001925050612c4b565b600285516002020367ffffffffffffffff81118015612c1857600080fd5b506040519080825280601f01601f191660200182016040528015612c43576020820181803683370190505b509250600091505b60ff82165b8351811015612c9657612c6b8360ff16820360020187613890565b848281518110612c7757fe5b60200101906001600160f81b031916908160001a905350600101612c50565b50505092915050565b6000612caa82613696565b15612ce65760405162461bcd60e51b815260040180806020018281038252602381526020018061417a6023913960400191505060405180910390fd5b8151601514612d265760405162461bcd60e51b81526004018080602001828103825260218152602001806142dc6021913960400191505060405180910390fd5b6118cb8261291a565b6000612d39613e54565b612d428461271d565b90506060612d4f82612798565b905060608085600082612d618b612b2c565b9050805160001415612d7d576000975050505050505050612f6e565b60005b8651811015612f65578151831115612da357600098505050505050505050612f6e565b612dbf878281518110612db257fe5b60200260200101516130bf565b955085805190602001208414612de057600098505050505050505050612f6e565b612def8782815181106113a457fe5b9450845160111415612eac578151831415612e4b578c80519060200120612e1c8660108151811061126757fe5b805190602001201415612e3a57600198505050505050505050612f6e565b600098505050505050505050612f6e565b6000828481518110612e5957fe5b016020015160f81c90506010811115612e7e5760009950505050505050505050612f6e565b612e9d868260ff1681518110612e9057fe5b60200260200101516138ed565b94505060019290920191612f5d565b845160021415612e3a576000612ed2612ecb8760008151811061126757fe5b848661398c565b905082518185011415612f28578d80519060200120612ef78760018151811061126757fe5b805190602001201415612f165760019950505050505050505050612f6e565b60009950505050505050505050612f6e565b80612f3f5760009950505050505050505050612f6e565b8084019350612f5486600181518110612e9057fe5b9450612f5d9050565b600101612d80565b50505050505050505b949350505050565b600854604080516320a9cea560e11b81526004810185905290516000928392839283926001600160a01b0316916341539d4a9160248083019260a0929190829003018186803b158015612fc857600080fd5b505afa158015612fdc573d6000803e3d6000fd5b505050506040513d60a0811015612ff257600080fd5b5080516020820151606090920151909450909250905061306161301b8b8463ffffffff613a6b16565b6040805160208082018f90528183018e9052606082018d905260808083018d90528351808403909101815260a0909201909252805191012090858863ffffffff613aad16565b6130b2576040805162461bcd60e51b815260206004820181905260248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f484541444552604482015290519081900360640190fd5b9998505050505050505050565b606080826000015167ffffffffffffffff811180156130dd57600080fd5b506040519080825280601f01601f191660200182016040528015613108576020820181803683370190505b50905060008160200190506131268460200151828660000151613845565b5092915050565b6040518060800160405280604f815260200161403b604f913980516020918201208251838301206040805180820190915260018152603160f81b930192909252907fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc630613198611185565b604080516020808201979097528082019590955260608501939093526001600160a01b03909116608084015260a0808401919091528151808403909101815260c090920190528051910120600b5550565b60006118c88383613c03565b6000818152600260205260409020546001600160a01b03166132485760405162461bcd60e51b815260040180806020018281038252602a815260200180613f07602a913960400191505060405180910390fd5b6001600160a01b03808416600081815260036020908152604080832080549588166001600160a01b031996871681179091558084526004835281842080549096168517909555838352600590915280822085905551849392917f9e651a8866fbea043e911d816ec254b0e3c992c06fff32d605e72362d6023bd991a4604080516001600160a01b0380861660208084019190915281861683850152606083810186905284518085038201815260808086018088526007546009546826a0a82faa27a5a2a760b91b9092528851978890036089018820888701818152898b019a8b528551968a019690965284519499918816986316f1983198939093169690958a9590949293909201919085019080838360005b8381101561337357818101518382015260200161335b565b50505050905090810190601f1680156133a05780820380516001836020036101000a031916815260200191505b5093505050506040516020818303038152906040526040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015613419578181015183820152602001613401565b50505050905090810190601f1680156134465780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b15801561346657600080fd5b505af115801561347a573d6000803e3d6000fd5b5050505050505050565b60006118c8836001600160a01b038416613c67565b806040516020018082805190602001908083835b602083106134cc5780518252601f1990920191602091820191016134ad565b51815160209384036101000a60001901801990921691161790527f3a20494e53554646494349454e545f5045524d495353494f4e530000000000009190930190815260408051808303600519018152601a909201905280516111729550600a94509201919050613e6e565b60005460ff1615613580576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b611c478161312d565b60006118cb82613c7f565b6000604051806080016040528060438152602001613fd460439139805190602001208260000151836020015184604001518051906020012060405160200180858152602001848152602001836001600160a01b03166001600160a01b03168152602001828152602001945050505050604051602081830303815290604052805190602001209050919050565b600061362a6110d6565b82604051602001808061190160f01b81525060020183815260200182815260200192505050604051602081830303815290604052805190602001209050919050565b60006118c8836001600160a01b038416613c83565b60006118c8836001600160a01b038416613ccd565b6020810151805160009190821a9060c08210156136b8576000925050506110ef565b5060019392505050565b6000806000905060006136d884602001516137e2565b602085015185519181019250015b80821015613745576136f78261374e565b820191508082111561373a5760405162461bcd60e51b815260040180806020018281038252602c81526020018061414e602c913960400191505060405180910390fd5b6001909201916136e6565b50909392505050565b80516000908190811a60808110156137695760019150613126565b60b881101561377e57607e1981019150613126565b60c08110156137ab5760b78103600185019450806020036101000a85510460018201810193505050613126565b60f88110156137c05760be1981019150613126565b60019390930151602084900360f7016101000a900490920160f5190192915050565b8051600090811a60808110156137fc5760009150506110ef565b60b8811080613817575060c08110801590613817575060f881105b156138265760019150506110ef565b60c081101561383a5760b5190190506110ef565b60f5190190506110ef565b8061384f57610b64565b5b6020811061386f578251825260209283019290910190601f1901613850565b915181516020939093036101000a6000190180199091169216919091179052565b600060028306156138c15760108260028504815181106138ac57fe5b016020015160f81c816138bb57fe5b066138e3565b60108260028504815181106138d257fe5b016020015160f81c816138e157fe5b045b60f81b9392505050565b6000806138fd836020015161374e565b8351909150811461393f5760405162461bcd60e51b815260040180806020018281038252602e815260200180614258602e913960400191505060405180910390fd5b825160211461397f5760405162461bcd60e51b8152600401808060200182810382526025815260200180613f536025913960400191505060405180910390fd5b5050602001516001015190565b600080606061399a86612b2c565b90506060815167ffffffffffffffff811180156139b657600080fd5b506040519080825280601f01601f1916602001820160405280156139e1576020820181803683370190505b509050845b82518601811015613a3b5760008782815181106139ff57fe5b602001015160f81c60f81b9050808388840381518110613a1b57fe5b60200101906001600160f81b031916908160001a905350506001016139e6565b50808051906020012082805190602001201415613a5b5781519250613a60565b600092505b509095945050505050565b60006118c883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250613d93565b60006020825181613aba57fe5b0615613b04576040805162461bcd60e51b8152602060048201526014602482015273092dcecc2d8d2c840e0e4dedecc40d8cadccee8d60631b604482015290519081900360640190fd5b60006020835181613b1157fe5b0490508060020a8510613b63576040805162461bcd60e51b81526020600482015260156024820152744c65616620696e64657820697320746f6f2062696760581b604482015290519081900360640190fd5b60008660205b85518111613bf55785810151925060028806613bb55781836040516020018083815260200182815260200192505050604051602081830303815290604052805190602001209150613be7565b828260405160200180838152602001828152602001925050506040516020818303038152906040528051906020012091505b600288049750602001613b69565b509094149695505050505050565b81546000908210613c455760405162461bcd60e51b8152600401808060200182810382526022815260200180613f316022913960400191505060405180910390fd5b826000018281548110613c5457fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000613c8f8383613c67565b613cc5575081546001818101845560008481526020808220909301849055845484825282860190935260409020919091556118cb565b5060006118cb565b60008181526001830160205260408120548015613d895783546000198083019190810190600090879083908110613d0057fe5b9060005260206000200154905080876000018481548110613d1d57fe5b600091825260208083209091019290925582815260018981019092526040902090840190558654879080613d4d57fe5b600190038181906000526020600020016000905590558660010160008781526020019081526020016000206000905560019450505050506118cb565b60009150506118cb565b60008184841115613e225760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015613de7578181015183820152602001613dcf565b50505050905090810190601f168015613e145780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60405180606001604052806000815260200160006001600160a01b03168152602001606081525090565b604051806040016040528060008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10613eaf57805160ff1916838001178555613edc565b82800160010185558215613edc579182015b82811115613edc578251825591602001919060010190613ec1565b50613ee8929150613eec565b5090565b610a6591905b80821115613ee85760008155600101613ef256fe526f6f74436861696e4d616e616765723a20544f4b454e5f545950455f4e4f545f535550504f52544544456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473524c505265616465723a20494e56414c49445f55494e545f5354524943545f4c454e475448416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e74526f6f74436861696e4d616e616765723a20494e56414c49445f4348494c445f434841494e5f414444524553534d6574615472616e73616374696f6e2875696e74323536206e6f6e63652c616464726573732066726f6d2c62797465732066756e6374696f6e5369676e617475726529526f6f74436861696e4d616e616765723a20494e56414c49445f544f4b454e5f54595045454950373132446f6d61696e28737472696e67206e616d652c737472696e672076657273696f6e2c6164647265737320766572696679696e67436f6e74726163742c627974657333322073616c7429526f6f74436861696e4d616e616765723a20494e56414c49445f4252414e43485f4d41534b526f6f74436861696e4d616e616765723a20544f4b454e5f4e4f545f4d4150504544524c505265616465723a2042595445535f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b654e61746976654d6574615472616e73616374696f6e3a20494e56414c49445f5349474e4552524c505265616465723a204e554d5f4954454d535f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a204445434f44494e475f4c4953545f41535f41444452455353526f6f74436861696e4d616e616765723a2045544845525f5452414e534645525f4641494c45445369676e657220616e64207369676e617475726520646f206e6f74206d61746368526f6f74436861696e4d616e616765723a20494e56414c49445f524f4f545f544f4b454e526f6f74436861696e4d616e616765723a20455849545f414c52454144595f50524f434553534544524c505265616465723a204c4953545f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a2055494e545f5354524943545f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66524c505265616465723a2055494e545f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a20494e56414c49445f414444524553535f4c454e475448a164736f6c6343000606000a","storage":{"0x0":"0x1","0x7":"0xe0afc4e9e03e4aa67257df7a2eca77454309789d","0x8":"0xbe5deac45dd1ca4ee18dc2d585d84d3d3cb82b0d","0x9":"0x0","0xa":"0x55","0xb":"0x2603903cfd8895fdde3da4d607d44203e86098073e351022fd12745d3436e93a","0xeb5be412f275a18f6e4d622aee4ff40b21467c926224771b782d4c095d1444b":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x162b27a30e878e20728deaa5c9814fd57ccf962b998b8733ce65749bc61c552f":"0x58a175bebc8ec21a94ea63aa5a28743945940ee6","0x1a93463c7bbb7215968307c7cd357c2009c10df2a511dd62c1189098e4f3249b":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x415fec6a4fd7706b96d3a0a30121284bc5e2b28b978c20486c9f5e20d44fc781":"0x1","0x4dc1f0160d96279adc262db20edcc15527e32cb28eda582becc5ac0bc453be34":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x5fc73aa2ab567caef8745f0709fae506c01972ffb297bd9225bc262d6e87746f":"0x1","0x6ce1cd05966f090b8daa7b2ee7f80930bbb39d19b693045725fbae5fa44fda90":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0xa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb49":"0x1","0xc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a8":"0x526f6f74436861696e4d616e616765723a20494e53554646494349454e545f50","0xc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a9":"0x45524d495353494f4e5300000000000000000000000000000000000000000000","0xd61ba0007bb57e62613f82f528c06ba46d36349cf5be567b12f878ef04849a7d":"0x1","0xf960df71fab73e593428c10f56f55e7ea46985963177def0458b97f1afec9576":"0xcf4e755f204163e9213ba8b1305036e386579ccc70731c25c62a101197811f48"}},"0x287dee389caaa49edc112888f2bcfd927b472e25":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c80634f89059e1461002d575b5f80fd5b61004061003b366004610125565b610054565b604051901515815260200160405180910390f35b5f806100985f85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101029050565b60ff1690505f811180156100f857506100f36100b5826001610191565b85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101029050565b60ff16155b9150505b92915050565b5f828281518110610115576101156101b0565b016020015160f81c905092915050565b5f8060208385031215610136575f80fd5b823567ffffffffffffffff8082111561014d575f80fd5b818501915085601f830112610160575f80fd5b81358181111561016e575f80fd5b86602082850101111561017f575f80fd5b60209290920196919550909350505050565b808201808211156100fc57634e487b7160e01b5f52601160045260245ffd5b634e487b7160e01b5f52603260045260245ffdfea164736f6c6343000818000a","storage":{}},"0x3198fc981626687f4b5bdf0fbeabb0a5e0489c03":{"nonce":1,"balance":"0x8ac7230489e80000","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0x1","0x97":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x13cf90498be59d359caa5b6092b365feab4610605d7107d1f05f8e94ac955652":"0x1","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xc2110388dd54228ae0a834119457ede938bf0b57","0x412386de53449251cbf7ce1f4c6a038bf9c0746e62d331b08ef0c3fa7d0ab672":"0x4fbf7b2f171336958be5d15ff762a5cff5363568","0x60793a5062d506d35cc8f1beda67ee5028c16bfcd9c923d5bfc439c04bd929b1":"0x6ac8f19d1e0f81147cdf2a1e53cb1f4e18417204","0x75df8b43665bf2e4996a686913c4c278ca7aed85444740ca40355b1c9a94b504":"0x1","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xf851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004":"0xc965345edac823d56812cd20a10316233916a605"}},"0x39a27956b78d00a4e00ea8833ff0947410a2933f":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xc9":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0xca":"0x4a3c194eb88966178bfdd81744dddafed611b830","0xcb":"0x4872cc1be60a9db9c880a0a437da7a6af134f08f","0xcc":"0xf8c26340c1eaea6c7ff1760b25005e1306953572","0xce":"0xce4bb7dc1eb9dce75743de6a4b48534fd427ef51","0xc6892776bb3da1e1199a03e0d3131aea089754b59c557b750c478ebc85ccaa":"0x6e66740000000000000000000000000000000000000000000000000000000006","0x6cb37a6d512a1e227e627eddc133023e6d00bfedff31a600abb75aa93e9a4a0":"0x6b7265737573000000000000000000000000000000000000000000000000000c","0x8e966fe8b9b43d48017ba1eb562ced91049de778396aaa438773698b3fa8fb6":"0x0","0x94a32b1c7b189ce7293f7ae444cdcab6800d858454022d15355d5ecc5b32b26":"0x0","0xa4b2d73a9f36ca5eed107f7c3d2ba877fb7537d447256726bcde9bac9e9aaee":"0x0","0xe0e3ab102c26f13da20123aa517b31e99cf65b7b720ba0dd7138012fd23eff2":"0x0","0x1203b5e51c7d5be6da42b83f22878d3583e53123857d27fc3cff3df46fb9126c":"0x0","0x13477730039a04f4290adf0e48e98b233579c040281545e4446ce662ba56a9be":"0x7800000000000000000000000000000000000000000000000000000000000002","0x1e06d49ce7b00846691778f302e94a3ac9c2633d745ebe73d68353c941e68dee":"0x626974636f696e0000000000000000000000000000000000000000000000000e","0x1e99199375610ffe00d28ee5827c616cf6469be3de2a2f738d955eb6b62127e8":"0x1","0x21e80eded1b2e1c5d976c85e89dde60bd4e99a8d66346af0e359ac854bceba44":"0x0","0x254d9ade81439f29723741d6ff407eab1fe03caffb042bd85e53955e41fb9792":"0x616c74696d697374000000000000000000000000000000000000000000000010","0x269db12b2cd2aeb7d5f52eda16edb1d211ccbea12da1ebfa60ed5f8f396c1d04":"0x0","0x2a3f03435eedee01de7e1c4386b04ca8469edd8df00408cd6d2b058bce1cecfa":"0x0","0x323a3cb169499006d6635c58232c8c58e23c20bf9e1d309d6b3bc6fb2c7a093d":"0x0","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x229c56b7805ab5935a883207f6a6bd5847e65aee","0x37aac864d4715a975bd45cae6be99de9f7968cf995917cc7f8192940fb62acbf":"0x0","0x3f69f26894a7ae0f7a7aa6c2d77935589dabbff6435aee960da15064dea7cd59":"0x64616f0000000000000000000000000000000000000000000000000000000006","0x467a68fda3230ce33f64703ebdbd91caccf235403282ae9fe390675ef39e9c94":"0x0","0x50ae8c017c4c1fddbe9509bd2b916f5dd9da11ddb639f2a4230322f49a41ac87":"0x1","0x5496787fc1ebdfeba375028c1865f13fbb1d63c0caa356ccc1b29a80f3ebd622":"0x0","0x576dd8d1a7b74aba0a99a213f50d74aa642a2c80bd5a854b24aac7568afea0f7":"0x626974676574000000000000000000000000000000000000000000000000000c","0x5b54338c052ce22ec334b6c5a19c4b122701c5fd4d3a2a5f5890f57050e0aafa":"0x626c6f636b636861696e00000000000000000000000000000000000000000014","0x5d9de30f0e5e02628e726fd23e310ee9e64489866fa6959825148a25d40e4c83":"0x0","0x5e2d99ab4a1a153039a4b2e068d64802da8735071a2d018ee9d04297945bed00":"0x0","0x670006c4193123492fb25db465ed52e62aff2f076289f4f1a5f167237f5e579d":"0x6d616e676100000000000000000000000000000000000000000000000000000a","0x6deac161c541001c0d79afaf7b809418785fa5ca6533d86bcf312e7213ee08fc":"0x0","0x6eaa0db35203bc0d58aff54ca630dd125b27758aa6204f7a11c0617f7c2fa776":"0x706f670000000000000000000000000000000000000000000000000000000006","0x732abe4661f55132b7f119cab9a9985be6630299dfc92870cc910f147795bc44":"0x0","0x743eb517f46c12bb593097087a972028308ce2e819a76cfb5488751f9d1ca34a":"0x7265616c6d00000000000000000000000000000000000000000000000000000a","0x750dfb39c9afc828c341e1a8e8fdca0b3914baf43303e1ef21fbfe8ec8ee016a":"0x0","0x7cbf647b96a1d1a533ea4bc3a4a8a78f166bd91e6a96afb12f063fef0e9cb960":"0x0","0x7dc972254779cfb51850c0eaccfcb71207822b3c10d4840567bec3dfbf0dff13":"0x636f6d0000000000000000000000000000000000000000000000000000000006","0x7dfa160584f41570c33e8e6c42c5314a7b45ddc162f99fd101ccc10c7b5b3dd3":"0x77616c6c6574000000000000000000000000000000000000000000000000000c","0x868a5f38a2d46181ffad442d7bc5b337b3c349a58e4979f2901786c6123b996c":"0x6b6c65766572000000000000000000000000000000000000000000000000000c","0x87b2c647061aef22ef1aba96c67f440d471dfac27e9873ff4a03793b402d32ee":"0x706f6c79676f6e0000000000000000000000000000000000000000000000000e","0x893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e":"0x7c3c91245769c8b7450ad522792dec4bd4bf797f","0x91e744007b4b3621bec7c01ea851c3f48cf196b9cc6c566a48cec8c5faac6e62":"0x0","0x92c5a28dd4caaa50e0a8370243a5c600f64349e8b03604b403cbe111b50f1f7b":"0x3838380000000000000000000000000000000000000000000000000000000006","0x947936973a3a21b10c8980e1a8939a55c7339d302161884a3de05cf090e812f0":"0x1","0x9535d3ea47c5e1398d3405b4fadc73de6b1b1e6a66f674a8886ab7a6c873a390":"0x63727970746f000000000000000000000000000000000000000000000000000c","0x9956a4e94676c45844be3667f17e077c7cb53aa4e87e5a71d65e56b291232715":"0x676f000000000000000000000000000000000000000000000000000000000004","0x9c6ba1ddff1ffbc14dcdc1f97db867554a42a39e00e892c7e882dbb3dca89ebf":"0x6869000000000000000000000000000000000000000000000000000000000004","0x9f836a0f81651f597cee678b440ba8c853c633e6654809efb83d4b22aff06fb2":"0x616e696d6500000000000000000000000000000000000000000000000000000a","0x9fecf1e12f4b8ec337da992721a0f27526ddbd6be1e77885ab963c09afcf0fc1":"0x0","0xab129a0f8c6cf8d160116a28abc7369c2f8a098fc023f00f07dc3e1d5798e47a":"0x0","0xb04c0eb6f034d9a3179a4e6f953bdf8afc78ba2cdcfbc775076e1c2a0bb67818":"0x0","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xbe51b53bc2060a7a6419622b5a9adc00b50a57e6aa741882f2f60f95d4580078":"0x636c617900000000000000000000000000000000000000000000000000000008","0xbf350522e335b8ab3da1d099c93cdc09179f1e15ea6aa1acfaa4afb1ef87eabf":"0x756e73746f707061626c65000000000000000000000000000000000000000016","0xcbf7a3d53e0851ac15a415b99c2ba95a2497dd9dd44068ac261bcbdafdfe8472":"0x707564677900000000000000000000000000000000000000000000000000000a","0xcf4411216f3fdf787d1cfe037bbcfa0d5293d83a8082f8e4141266399e2a784b":"0x61757374696e000000000000000000000000000000000000000000000000000c","0xcfdbac664139565f92cce149a345e5f19355d25b3eb8a70c549d5da3283a15b8":"0x7a696c0000000000000000000000000000000000000000000000000000000006","0xcfeb64c30a93ecd7224f854b09be57bb6b3962e739fa8e3ea3a1851502474c07":"0x1","0xe03c9c593ce8661bd39f77653f7ca6c43f093aa7f3b95890f309f67b57f39e74":"0x0","0xe50c62c16d12655dfdbd61c232155e5c3a1cf61977d2d8e7449cb88611b73832":"0x0","0xeeb0b17d77f2c9069ad443f3927c0802d98d5553e52b17c985d45d4a10b79566":"0x62696e616e636575730000000000000000000000000000000000000000000012","0xf562ef0db022f25a957fb6e49aa07004f14a50ed5b23279e9ac25b4632f7bf1c":"0x0","0xf6776268d6c5847a771099280c742d684a4b22bac609ba615de51f7f893ff2bc":"0x0"}},"0x3f1194b9019002863ad0dbbe295294547c0d36a9":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100b1575f3560e01c80635b0fc9c31161006e5780635b0fc9c3146101a55780635ef2c7f0146101b8578063a22cb465146101cb578063cf408823146101de578063e985e9c5146101f1578063f79fe5381461023c575f80fd5b80630178b8bf146100b557806302571be3146100fd57806306ab59231461011057806314ab90381461013157806316a25cbd146101465780631896f70a14610192575b5f80fd5b6100e06100c3366004610785565b5f908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100e061010b366004610785565b610266565b61012361011e3660046107b7565b610292565b6040519081526020016100f4565b61014461013f366004610800565b61035f565b005b610179610154366004610785565b5f90815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100f4565b6101446101a036600461082a565b61042e565b6101446101b336600461082a565b6104ef565b6101446101c636600461084b565b61058e565b6101446101d936600461089e565b6105af565b6101446101ec3660046108d7565b61061a565b61022c6101ff366004610921565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205460ff1690565b60405190151581526020016100f4565b61022c61024a366004610785565b5f908152602081905260409020546001600160a01b0316151590565b5f818152602081905260408120546001600160a01b031630810361028c57505f92915050565b92915050565b5f8381526020819052604081205484906001600160a01b0316338114806102db57506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b6102e3575f80fd5b604080516020808201899052818301889052825180830384018152606090920190925280519101206103158186610635565b6040516001600160a01b0386168152869088907fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829060200160405180910390a39695505050505050565b5f8281526020819052604090205482906001600160a01b0316338114806103a857506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b6103b0575f80fd5b60405167ffffffffffffffff8416815284907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a250505f91825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b5f8281526020819052604090205482906001600160a01b03163381148061047757506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b61047f575f80fd5b6040516001600160a01b038416815284907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a250505f9182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b5f8281526020819052604090205482906001600160a01b03163381148061053857506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b610540575f80fd5b61054a8484610635565b6040516001600160a01b038416815284907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a250505050565b5f61059a868686610292565b90506105a7818484610662565b505050505050565b335f8181526001602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b61062484846104ef565b61062f848383610662565b50505050565b5f9182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b5f838152602081905260409020600101546001600160a01b038381169116146106e6575f838152602081815260409182902060010180546001600160a01b0319166001600160a01b038616908117909155915191825284917f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a0910160405180910390a25b5f8381526020819052604090206001015467ffffffffffffffff828116600160a01b9092041614610780575f8381526020818152604091829020600101805467ffffffffffffffff60a01b1916600160a01b67ffffffffffffffff861690810291909117909155915191825284917f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa68910160405180910390a25b505050565b5f60208284031215610795575f80fd5b5035919050565b80356001600160a01b03811681146107b2575f80fd5b919050565b5f805f606084860312156107c9575f80fd5b83359250602084013591506107e06040850161079c565b90509250925092565b803567ffffffffffffffff811681146107b2575f80fd5b5f8060408385031215610811575f80fd5b82359150610821602084016107e9565b90509250929050565b5f806040838503121561083b575f80fd5b823591506108216020840161079c565b5f805f805f60a0868803121561085f575f80fd5b85359450602086013593506108766040870161079c565b92506108846060870161079c565b9150610892608087016107e9565b90509295509295909350565b5f80604083850312156108af575f80fd5b6108b88361079c565b9150602083013580151581146108cc575f80fd5b809150509250929050565b5f805f80608085870312156108ea575f80fd5b843593506108fa6020860161079c565b92506109086040860161079c565b9150610916606086016107e9565b905092959194509250565b5f8060408385031215610932575f80fd5b61093b8361079c565b91506108216020840161079c56fea164736f6c6343000818000a","storage":{"0xdd4f47a3b6f87903b728feed7a23273bd8de58e4fa257d37a74a5881e5d92ff":"0xf670681605efc4efc804f5a9b97ee89520473d56","0x14ce109f1cffdc11aa7355660be720f902291be09fb159b4c578958cd0f533bc":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x14ce109f1cffdc11aa7355660be720f902291be09fb159b4c578958cd0f533bd":"0x0","0x1e2c8528d7e8e90443ad0a4e37b6f2b1daed719a574ce3a0c347063e8d839d50":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1e2c8528d7e8e90443ad0a4e37b6f2b1daed719a574ce3a0c347063e8d839d51":"0x0","0x2fb4213711fd985fc1fb1ea2bfa660b0b37fd50c6c74ab531d9b54b29dd5177e":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2fb4213711fd985fc1fb1ea2bfa660b0b37fd50c6c74ab531d9b54b29dd5177f":"0x0","0x859ecef2e168dc10231b000bd53493b42bc9d944cac29d94582c1e1d43592131":"0xc965345edac823d56812cd20a10316233916a605","0x8878c6daefcfc78c7f181d00d719b4a0612dd3e65cafeb72507d15c036a9f690":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0xe4fdf45c2f8d198854f8823809c7a988eeaaa493","0xfb5568c6845cf0d5915af088a5d8ba90a5ff735e102c9a79609ef7d043f1108c":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xfb5568c6845cf0d5915af088a5d8ba90a5ff735e102c9a79609ef7d043f1108d":"0x0"}},"0x4872cc1be60a9db9c880a0a437da7a6af134f08f":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100935760003560e01c80637362d9c8116100665780637362d9c8146101285780637b1039991461014e57806399e0dd7c14610172578063bb5f747b146101e2578063d6cd94731461020857610093565b806310154bad14610098578063291d9549146100c05780633af32abf146100e65780634c5a628c14610120575b600080fd5b6100be600480360360208110156100ae57600080fd5b50356001600160a01b0316610210565b005b6100be600480360360208110156100d657600080fd5b50356001600160a01b0316610260565b61010c600480360360208110156100fc57600080fd5b50356001600160a01b03166102ad565b604080519115158252519081900360200190f35b6100be6102c6565b6100be6004803603602081101561013e57600080fd5b50356001600160a01b03166102d1565b61015661031e565b604080516001600160a01b039092168252519081900360200190f35b6100be6004803603602081101561018857600080fd5b8101906020810181356401000000008111156101a357600080fd5b8201836020820111156101b557600080fd5b803590602001918460018302840111640100000000831117156101d757600080fd5b50909250905061032d565b61010c600480360360208110156101f857600080fd5b50356001600160a01b0316610404565b6100be610416565b61021933610404565b6102545760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d8161041f565b50565b61026933610404565b6102a45760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d81610467565b60006102c060018363ffffffff6104af16565b92915050565b6102cf33610516565b565b6102da33610404565b6103155760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d8161055e565b6002546001600160a01b031690565b610336336102ad565b6103715760405162461bcd60e51b815260040180806020018281038252603a815260200180610712603a913960400191505060405180910390fd5b6002546040516369426cbd60e11b8152602060048201908152602482018490526001600160a01b039092169163d284d97a91859185918190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b1580156103e857600080fd5b505af11580156103fc573d6000803e3d6000fd5b505050505050565b60006102c0818363ffffffff6104af16565b6102cf33610467565b61043060018263ffffffff6105a616565b6040516001600160a01b038216907fee1504a83b6d4a361f4c1dc78ab59bfa30d6a3b6612c403e86bb01ef2984295f90600090a250565b61047860018263ffffffff61062716565b6040516001600160a01b038216907f270d9b30cf5b0793bbfd54c9d5b94aeb49462b8148399000265144a8722da6b690600090a250565b60006001600160a01b0382166104f65760405162461bcd60e51b81526004018080602001828103825260228152602001806106b06022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b61052760008263ffffffff61062716565b6040516001600160a01b038216907f0a8eb35e5ca14b3d6f28e4abf2f128dbab231a58b56e89beb5d636115001e16590600090a250565b61056f60008263ffffffff6105a616565b6040516001600160a01b038216907f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129990600090a250565b6105b082826104af565b15610602576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b61063182826104af565b61066c5760405162461bcd60e51b815260040180806020018281038252602181526020018061068f6021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f206164647265737357686974656c69737441646d696e526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c69737441646d696e20726f6c6557686974656c6973746564526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c697374656420726f6c65a265627a7a72315820debca60946c0819dc5b5c2756c5c1dd8dd8a46f2429fa8a43a4f4362af3030c164736f6c634300050c0032","storage":{"0x2":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x5ac40fcee41fb0272a935f6e51e963102fba5db6f20e897e9361f0347eb2cae6":"0x1","0xdc4aeb95a779c8b92b845e3a94044db8ff2e43acc37da18c4b35a6bbad7c122f":"0x1"}},"0x49da8861c65460639925febe1fb4b5b59b443082":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f7e83aee1461002d575b5f80fd5b61004061003b3660046101ac565b610054565b604051901515815260200160405180910390f35b5f602082146100a95760405162461bcd60e51b815260206004820152601a60248201527f496e76616c6964207368613235362068617368206c656e677468000000000000604482015260640160405180910390fd5b6100eb5f84848080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101459050565b600286866040516100fd929190610213565b602060405180830381855afa158015610118573d5f803e3d5ffd5b5050506040513d601f19601f8201168201806040525081019061013b9190610222565b1495945050505050565b81515f90610154836020610239565b111561015e575f80fd5b50016020015190565b5f8083601f840112610177575f80fd5b50813567ffffffffffffffff81111561018e575f80fd5b6020830191508360208285010111156101a5575f80fd5b9250929050565b5f805f80604085870312156101bf575f80fd5b843567ffffffffffffffff808211156101d6575f80fd5b6101e288838901610167565b909650945060208701359150808211156101fa575f80fd5b5061020787828801610167565b95989497509550505050565b818382375f9101908152919050565b5f60208284031215610232575f80fd5b5051919050565b8082018082111561025857634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x4a3c194eb88966178bfdd81744dddafed611b830":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061009e5760003560e01c806398650275116100665780639865027514610305578063aa271e1a1461030d578063b2da297914610347578063be362e2e146103c5578063c36c2125146104fe5761009e565b80634c0b0ed2146100a35780637b103999146101595780637caf3ad81461017d5780638ad364f814610258578063983b2d56146102df575b600080fd5b610157600480360360408110156100b957600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156100e357600080fd5b8201836020820111156100f557600080fd5b803590602001918460018302840111600160201b8311171561011657600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506105bd945050505050565b005b61016161074c565b604080516001600160a01b039092168252519081900360200190f35b6101576004803603608081101561019357600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156101bd57600080fd5b8201836020820111156101cf57600080fd5b803590602001918460018302840111600160201b831117156101f057600080fd5b919390926001600160a01b0383351692604081019060200135600160201b81111561021a57600080fd5b82018360208201111561022c57600080fd5b803590602001918460018302840111600160201b8311171561024d57600080fd5b50909250905061075b565b6101576004803603606081101561026e57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561029857600080fd5b8201836020820111156102aa57600080fd5b803590602001918460018302840111600160201b831117156102cb57600080fd5b9193509150356001600160a01b0316610957565b610157600480360360208110156102f557600080fd5b50356001600160a01b0316610b2b565b610157610b7b565b6103336004803603602081101561032357600080fd5b50356001600160a01b0316610b86565b604080519115158252519081900360200190f35b6101576004803603604081101561035d57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561038757600080fd5b82018360208201111561039957600080fd5b803590602001918460018302840111600160201b831117156103ba57600080fd5b509092509050610b9e565b610157600480360360608110156103db57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561040557600080fd5b82018360208201111561041757600080fd5b803590602001918460018302840111600160201b8311171561043857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b81111561048a57600080fd5b82018360208201111561049c57600080fd5b803590602001918460018302840111600160201b831117156104bd57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610bf1945050505050565b6101576004803603606081101561051457600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561053e57600080fd5b82018360208201111561055057600080fd5b803590602001918460018302840111600160201b8311171561057157600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550505090356001600160a01b03169150610dec9050565b6105c633610b86565b6106015760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b039092169163b5466669918591849163ebf0c717916004808301926020929190829003018186803b15801561064f57600080fd5b505afa158015610663573d6000803e3d6000fd5b505050506040513d602081101561067957600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052606060448301908152875160648401528751889360840190602085019080838360005b838110156106e25781810151838201526020016106ca565b50505050905090810190601f16801561070f5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15801561073057600080fd5b505af1158015610744573d6000803e3d6000fd5b505050505050565b6001546001600160a01b031690565b6107cf8686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f89018190048102820181019092528781529250879150869081908401838280828437600092019190915250610bf192505050565b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691632525d06a91869184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b15801561082557600080fd5b505afa158015610839573d6000803e3d6000fd5b505050506040513d602081101561084f57600080fd5b5051604080516001600160e01b031960e085901b1681526004810183815260248201928352604482018d90528d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b1580156108bd57600080fd5b505afa1580156108d1573d6000803e3d6000fd5b505050506040513d60208110156108e757600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b15801561093757600080fd5b505af115801561094b573d6000803e3d6000fd5b50505050505050505050565b6109a58484848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250610bf1915050565b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691632525d06a91849184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b1580156109fb57600080fd5b505afa158015610a0f573d6000803e3d6000fd5b505050506040513d6020811015610a2557600080fd5b5051604080516001600160e01b031960e085901b1681526004810183815260248201928352604482018b90528b928b92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b158015610a9357600080fd5b505afa158015610aa7573d6000803e3d6000fd5b505050506040513d6020811015610abd57600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b158015610b0d57600080fd5b505af1158015610b21573d6000803e3d6000fd5b5050505050505050565b610b3433610b86565b610b6f5760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b610b7881611115565b50565b610b843361115d565b565b6000610b98818363ffffffff6111a516565b92915050565b610bec8383838080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250610bf1915050565b505050565b610bfa33610b86565b610c355760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691630467e014918691849163ebf0c717916004808301926020929190829003018186803b158015610c8357600080fd5b505afa158015610c97573d6000803e3d6000fd5b505050506040513d6020811015610cad57600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052608060448301908152885160848401528851899389939291606482019160a40190602087019080838360005b83811015610d1f578181015183820152602001610d07565b50505050905090810190601f168015610d4c5780820380516001836020036101000a031916815260200191505b50838103825284518152845160209182019186019080838360005b83811015610d7f578181015183820152602001610d67565b50505050905090810190601f168015610dac5780820380516001836020036101000a031916815260200191505b509650505050505050600060405180830381600087803b158015610dcf57600080fd5b505af1158015610de3573d6000803e3d6000fd5b50505050505050565b610df533610b86565b610e305760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b039092169163b5466669918691849163ebf0c717916004808301926020929190829003018186803b158015610e7e57600080fd5b505afa158015610e92573d6000803e3d6000fd5b505050506040513d6020811015610ea857600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052606060448301908152885160648401528851899360840190602085019080838360005b83811015610f11578181015183820152602001610ef9565b50505050905090810190601f168015610f3e5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015610f5f57600080fd5b505af1158015610f73573d6000803e3d6000fd5b50506001546040805163ebf0c71760e01b815290516001600160a01b039092169350632525d06a9250849184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b158015610fcd57600080fd5b505afa158015610fe1573d6000803e3d6000fd5b505050506040513d6020811015610ff757600080fd5b5051604080516001600160e01b031960e085901b16815260048101838152602482019283528a5160448301528a518b93919260640190602085019080838360005b83811015611050578181015183820152602001611038565b50505050905090810190601f16801561107d5780820380516001836020036101000a031916815260200191505b50935050505060206040518083038186803b15801561109b57600080fd5b505afa1580156110af573d6000803e3d6000fd5b505050506040513d60208110156110c557600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b158015610dcf57600080fd5b61112660008263ffffffff61120c16565b6040516001600160a01b038216907f6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f690600090a250565b61116e60008263ffffffff61128d16565b6040516001600160a01b038216907fe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb6669290600090a250565b60006001600160a01b0382166111ec5760405162461bcd60e51b81526004018080602001828103825260228152602001806113466022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b61121682826111a5565b15611268576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b61129782826111a5565b6112d25760405162461bcd60e51b81526004018080602001828103825260218152602001806113256021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe4d696e746572526f6c653a2063616c6c657220646f6573206e6f74206861766520746865204d696e74657220726f6c65526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f2061646472657373a265627a7a72315820c058d70355f7d37ff6b3b61cd850cc4a41893e30048389698c062148bf3d2ff464736f6c634300050c0032","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x789b49055833748af4eaa9affbcd84118ce8770f7e4385b5a3f428626b1f0aff":"0x1","0xdc4aeb95a779c8b92b845e3a94044db8ff2e43acc37da18c4b35a6bbad7c122f":"0x1"}},"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061007b5760003560e01c80639623609d1161004e5780639623609d1461011157806399a88ec414610124578063f2fde38b14610144578063f3b7dead1461016457600080fd5b8063204e1c7a14610080578063715018a6146100bc5780637eff275e146100d35780638da5cb5b146100f3575b600080fd5b34801561008c57600080fd5b506100a061009b366004610499565b610184565b6040516001600160a01b03909116815260200160405180910390f35b3480156100c857600080fd5b506100d1610215565b005b3480156100df57600080fd5b506100d16100ee3660046104bd565b610229565b3480156100ff57600080fd5b506000546001600160a01b03166100a0565b6100d161011f36600461050c565b610291565b34801561013057600080fd5b506100d161013f3660046104bd565b610300565b34801561015057600080fd5b506100d161015f366004610499565b610336565b34801561017057600080fd5b506100a061017f366004610499565b6103b4565b6000806000836001600160a01b03166040516101aa90635c60da1b60e01b815260040190565b600060405180830381855afa9150503d80600081146101e5576040519150601f19603f3d011682016040523d82523d6000602084013e6101ea565b606091505b5091509150816101f957600080fd5b8080602001905181019061020d91906105e2565b949350505050565b61021d6103da565b6102276000610434565b565b6102316103da565b6040516308f2839760e41b81526001600160a01b038281166004830152831690638f283970906024015b600060405180830381600087803b15801561027557600080fd5b505af1158015610289573d6000803e3d6000fd5b505050505050565b6102996103da565b60405163278f794360e11b81526001600160a01b03841690634f1ef2869034906102c990869086906004016105ff565b6000604051808303818588803b1580156102e257600080fd5b505af11580156102f6573d6000803e3d6000fd5b5050505050505050565b6103086103da565b604051631b2ce7f360e11b81526001600160a01b038281166004830152831690633659cfe69060240161025b565b61033e6103da565b6001600160a01b0381166103a85760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b6103b181610434565b50565b6000806000836001600160a01b03166040516101aa906303e1469160e61b815260040190565b6000546001600160a01b031633146102275760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161039f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146103b157600080fd5b6000602082840312156104ab57600080fd5b81356104b681610484565b9392505050565b600080604083850312156104d057600080fd5b82356104db81610484565b915060208301356104eb81610484565b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561052157600080fd5b833561052c81610484565b9250602084013561053c81610484565b9150604084013567ffffffffffffffff8082111561055957600080fd5b818601915086601f83011261056d57600080fd5b81358181111561057f5761057f6104f6565b604051601f8201601f19908116603f011681019083821181831017156105a7576105a76104f6565b816040528281528960208487010111156105c057600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000602082840312156105f457600080fd5b81516104b681610484565b60018060a01b038316815260006020604081840152835180604085015260005b8181101561063b5785810183015185820160600152820161061f565b8181111561064d576000606083870101525b50601f01601f19169290920160600194935050505056fea26469706673582212207ad53e1008cce369999f6b5f2f77109510b404ff1de9b47b639981fd68e6239264736f6c63430008090033","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x4e59b44847b379578588920ca78fbf26c0b4956c":{"nonce":0,"balance":"0x0","code":"0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe03601600081602082378035828234f58015156039578182fd5b8082525050506014600cf3","storage":{}},"0x4eb9de1fc0d800e941f326d6699e9e11969557ea":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063100cdd911461002d575b5f80fd5b61004061003b3660046102cd565b610042565b005b5f5b818110156101b8575f7f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e28484848181106100805761008061033c565b905060200201356040516020016100a1929190918252602082015260400190565b60408051808303601f190181529082905280516020909101206331a9108f60e11b82526004820181905291507f000000000000000000000000107733fed96c4cd390c944a31f5425a7fb98ae5e6001600160a01b0316906323b872dd908290636352211e90602401602060405180830381865afa158015610124573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101489190610350565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015261dead6024820152604481018490526064015f604051808303815f87803b158015610195575f80fd5b505af11580156101a7573d5f803e3d5ffd5b505060019093019250610044915050565b5080156102c9577f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e282826101ed60018261037d565b8181106101fc576101fc61033c565b9050602002013560405160200161021d929190918252602082015260400190565b604051602081830303815290604052805190602001205f1c7f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e283835f8181106102685761026861033c565b90506020020135604051602001610289929190918252602082015260400190565b60408051601f19818403018152908290528051602090910120907fdf423376f9b0ab363b1b4d6f0b4cb6821921ec30f491555a97236a8a38ce095a905f90a35b5050565b5f80602083850312156102de575f80fd5b823567ffffffffffffffff808211156102f5575f80fd5b818501915085601f830112610308575f80fd5b813581811115610316575f80fd5b8660208260051b850101111561032a575f80fd5b60209290920196919550909350505050565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215610360575f80fd5b81516001600160a01b0381168114610376575f80fd5b9392505050565b8181038181111561039c57634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x4fbf7b2f171336958be5d15ff762a5cff5363568":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061011b575f3560e01c80638d839ffe1161009d578063aeb8ce9b11610062578063aeb8ce9b14610356578063ce1e09c014610375578063d3419bf3146103a8578063f14fcbc8146103db578063f2fde38b146103fa575f80fd5b80638d839ffe146102a25780638da5cb5b146102d55780639791c097146102f1578063a8e5fbc014610310578063acf1a84114610343575f80fd5b806374694a2b116100e357806374694a2b146101c957806380869853146101dc578063839df9451461022757806383e7f6ff146102525780638a95b09f1461028c575f80fd5b806301ffc9a71461011f5780633ccfd60b146101535780635d3590d51461016957806365a69dcf14610188578063715018a6146101b5575b5f80fd5b34801561012a575f80fd5b5061013e610139366004611145565b610419565b60405190151581526020015b60405180910390f35b34801561015e575f80fd5b5061016761044f565b005b348015610174575f80fd5b50610167610183366004611187565b610489565b348015610193575f80fd5b506101a76101a23660046112e4565b610507565b60405190815260200161014a565b3480156101c0575f80fd5b5061016761058b565b6101676101d73660046113db565b61059e565b3480156101e7575f80fd5b5061020f7f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5681565b6040516001600160a01b03909116815260200161014a565b348015610232575f80fd5b506101a761024136600461149d565b60016020525f908152604090205481565b34801561025d575f80fd5b5061027161026c3660046114b4565b610894565b6040805182518152602092830151928101929092520161014a565b348015610297575f80fd5b506101a76224ea0081565b3480156102ad575f80fd5b506101a77f000000000000000000000000000000000000000000000000000000000000025881565b3480156102e0575f80fd5b505f546001600160a01b031661020f565b3480156102fc575f80fd5b5061013e61030b3660046114f6565b6109c9565b34801561031b575f80fd5b5061020f7f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e1841720481565b610167610351366004611528565b6109dd565b348015610361575f80fd5b5061013e6103703660046114f6565b610b7b565b348015610380575f80fd5b506101a77f000000000000000000000000000000000000000000000000000000000001518081565b3480156103b3575f80fd5b5061020f7f000000000000000000000000ec71e4e674fe0f432693dc2b935c34bd2774c00381565b3480156103e6575f80fd5b506101676103f536600461149d565b610c22565b348015610405575f80fd5b50610167610414366004611570565b610c95565b5f6001600160e01b031982166301ffc9a760e01b148061044957506001600160e01b0319821663612e8c0960e01b145b92915050565b5f80546040516001600160a01b03909116914780156108fc02929091818181858888f19350505050158015610486573d5f803e3d5ffd5b50565b610491610d0b565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af11580156104dd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105019190611589565b50505050565b885160208a01205f90841580159061052657506001600160a01b038716155b15610544576040516334fd817160e21b815260040160405180910390fd5b808a8a8a8a8a8a8a8a6040516020016105659998979695949392919061165e565b604051602081830303815290604052805190602001209150509998505050505050505050565b610593610d0b565b61059c5f610d64565b565b5f6105df8b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c9250610894915050565b602081015181519192506105f2916116d5565b3410156106125760405163044044a560e21b815260040160405180910390fd5b6106b38b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f82011690508083019250505050505050896106ae8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f820116905080830192505050505050508d8d8d8d8d8d8d8d610507565b610db3565b604051635200a4c160e11b81525f906001600160a01b037f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e18417204169063a40149829061070b908f908f908f908f908e908b906004016116e8565b6020604051808303815f875af1158015610727573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061074b9190611732565b9050841561077657610776878d8d604051610767929190611749565b60405180910390208888610ece565b83156107be576107be8c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508b9250339150610f939050565b896001600160a01b03168c8c6040516107d8929190611749565b60405180910390207f69e37f151eb98a09618ddaa80c8cfaf1ce5996867c489f45b555b412271ebf278e8e865f015187602001518760405161081e959493929190611758565b60405180910390a36020820151825161083791906116d5565b341115610886576020820151825133916108fc9161085591906116d5565b61085f9034611788565b6040518115909202915f818181858888f19350505050158015610884573d5f803e3d5ffd5b505b505050505050505050505050565b604080518082019091525f808252602082015282516020840120604051636b727d4360e11b8152600481018290527f000000000000000000000000ec71e4e674fe0f432693dc2b935c34bd2774c0036001600160a01b03908116916350e9a7159187917f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063d6e4fa8690602401602060405180830381865afa158015610940573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109649190611732565b866040518463ffffffff1660e01b8152600401610983939291906117e8565b6040805180830381865afa15801561099d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109c1919061180c565b949350505050565b5f60036109d583611044565b101592915050565b5f83836040516109ee929190611749565b604080519182900382206020601f8701819004810284018101909252858352925082915f91610a39919088908890819084018382808284375f92019190915250889250610894915050565b8051909150341015610a5e5760405163044044a560e21b815260040160405180910390fd5b60405163c475abff60e01b815260048101839052602481018590525f907f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b03169063c475abff906044016020604051808303815f875af1158015610acb573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610aef9190611732565b8251909150341115610b3457815133906108fc90610b0d9034611788565b6040518115909202915f818181858888f19350505050158015610b32573d5f803e3d5ffd5b505b837f3da24c024582931cfaf8267d8ed24d13a82a8068d5bd337d30ec45cea4e506ae88883485604051610b6a9493929190611859565b60405180910390a250505050505050565b805160208201205f90610b8d836109c9565b8015610c1b57506040516312dc929d60e31b8152600481018290527f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b0316906396e494e890602401602060405180830381865afa158015610bf7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c1b9190611589565b9392505050565b5f818152600160205260409020544290610c5d907f0000000000000000000000000000000000000000000000000000000000015180906116d5565b10610c8357604051630a059d7160e01b8152600481018290526024015b60405180910390fd5b5f908152600160205260409020429055565b610c9d610d0b565b6001600160a01b038116610d025760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610c7a565b61048681610d64565b5f546001600160a01b0316331461059c5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610c7a565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f818152600160205260409020544290610dee907f0000000000000000000000000000000000000000000000000000000000000258906116d5565b1115610e1057604051635320bcf960e01b815260048101829052602401610c7a565b5f818152600160205260409020544290610e4b907f0000000000000000000000000000000000000000000000000000000000015180906116d5565b11610e6c5760405163cb7690d760e01b815260048101829052602401610c7a565b610e7583610b7b565b610e9457826040516308eee0fd60e31b8152600401610c7a919061187f565b5f818152600160205260408120556224ea00821015610ec957604051639a71997b60e01b815260048101839052602401610c7a565b505050565b604080517f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae6020808301919091528183018690528251808303840181526060830193849052805191012063e32954eb60e01b90925285906001600160a01b0382169063e32954eb90610f4890859088908890606401611891565b5f604051808303815f875af1158015610f63573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052610f8a91908101906118b3565b50505050505050565b7f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d566001600160a01b0316637a806d6b33838587604051602001610fd691906119a7565b6040516020818303038152906040526040518563ffffffff1660e01b815260040161100494939291906119ce565b6020604051808303815f875af1158015611020573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105019190611732565b80515f90819081905b8082101561113c575f85838151811061106857611068611a0b565b01602001516001600160f81b0319169050600160ff1b811015611097576110906001846116d5565b9250611129565b600760fd1b6001600160f81b0319821610156110b8576110906002846116d5565b600f60fc1b6001600160f81b0319821610156110d9576110906003846116d5565b601f60fb1b6001600160f81b0319821610156110fa576110906004846116d5565b603f60fa1b6001600160f81b03198216101561111b576110906005846116d5565b6111266006846116d5565b92505b508261113481611a1f565b93505061104d565b50909392505050565b5f60208284031215611155575f80fd5b81356001600160e01b031981168114610c1b575f80fd5b80356001600160a01b0381168114611182575f80fd5b919050565b5f805f60608486031215611199575f80fd5b6111a28461116c565b92506111b06020850161116c565b9150604084013590509250925092565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff811182821017156111fd576111fd6111c0565b604052919050565b5f67ffffffffffffffff82111561121e5761121e6111c0565b50601f01601f191660200190565b5f82601f83011261123b575f80fd5b813561124e61124982611205565b6111d4565b818152846020838601011115611262575f80fd5b816020850160208301375f918101602001919091529392505050565b5f8083601f84011261128e575f80fd5b50813567ffffffffffffffff8111156112a5575f80fd5b6020830191508360208260051b85010111156112bf575f80fd5b9250929050565b8015158114610486575f80fd5b803561ffff81168114611182575f80fd5b5f805f805f805f805f6101008a8c0312156112fd575f80fd5b893567ffffffffffffffff80821115611314575f80fd5b6113208d838e0161122c565b9a5061132e60208d0161116c565b995060408c0135985060608c0135975061134a60808d0161116c565b965060a08c013591508082111561135f575f80fd5b5061136c8c828d0161127e565b90955093505060c08a0135611380816112c6565b915061138e60e08b016112d3565b90509295985092959850929598565b5f8083601f8401126113ad575f80fd5b50813567ffffffffffffffff8111156113c4575f80fd5b6020830191508360208285010111156112bf575f80fd5b5f805f805f805f805f806101008b8d0312156113f5575f80fd5b8a3567ffffffffffffffff8082111561140c575f80fd5b6114188e838f0161139d565b909c509a508a915061142c60208e0161116c565b995060408d0135985060608d0135975061144860808e0161116c565b965060a08d013591508082111561145d575f80fd5b5061146a8d828e0161127e565b90955093505060c08b013561147e816112c6565b915061148c60e08c016112d3565b90509295989b9194979a5092959850565b5f602082840312156114ad575f80fd5b5035919050565b5f80604083850312156114c5575f80fd5b823567ffffffffffffffff8111156114db575f80fd5b6114e78582860161122c565b95602094909401359450505050565b5f60208284031215611506575f80fd5b813567ffffffffffffffff81111561151c575f80fd5b6109c18482850161122c565b5f805f6040848603121561153a575f80fd5b833567ffffffffffffffff811115611550575f80fd5b61155c8682870161139d565b909790965060209590950135949350505050565b5f60208284031215611580575f80fd5b610c1b8261116c565b5f60208284031215611599575f80fd5b8151610c1b816112c6565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b5f838385526020808601955060208560051b830101845f5b8781101561165157848303601f19018952813536889003601e19018112611609575f80fd5b8701848101903567ffffffffffffffff811115611624575f80fd5b803603821315611632575f80fd5b61163d8582846115a4565b9a86019a94505050908301906001016115e4565b5090979650505050505050565b8981526001600160a01b03898116602083015260408201899052606082018890528616608082015261010060a082018190525f9061169f83820187896115cc565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610449576104496116c1565b60a081525f6116fb60a08301888a6115a4565b6001600160a01b03968716602084015260408301959095525091909316606082015261ffff90921660809092019190915292915050565b5f60208284031215611742575f80fd5b5051919050565b818382375f9101908152919050565b608081525f61176b6080830187896115a4565b602083019590955250604081019290925260609091015292915050565b81810381811115610449576104496116c1565b5f5b838110156117b557818101518382015260200161179d565b50505f910152565b5f81518084526117d481602086016020860161179b565b601f01601f19169290920160200192915050565b606081525f6117fa60608301866117bd565b60208301949094525060400152919050565b5f6040828403121561181c575f80fd5b6040516040810181811067ffffffffffffffff8211171561183f5761183f6111c0565b604052825181526020928301519281019290925250919050565b606081525f61186c6060830186886115a4565b6020830194909452506040015292915050565b602081525f610c1b60208301846117bd565b838152604060208201525f6118aa6040830184866115cc565b95945050505050565b5f60208083850312156118c4575f80fd5b825167ffffffffffffffff808211156118db575f80fd5b818501915085601f8301126118ee575f80fd5b815181811115611900576119006111c0565b8060051b61190f8582016111d4565b9182528381018501918581019089841115611928575f80fd5b86860192505b8383101561199a57825185811115611944575f80fd5b8601603f81018b13611954575f80fd5b87810151604061196661124983611205565b8281528d82848601011115611979575f80fd5b611988838c830184870161179b565b8552505050918601919086019061192e565b9998505050505050505050565b5f82516119b881846020870161179b565b6305ccae8d60e31b920191825250600401919050565b6001600160a01b0385811682528481166020830152831660408201526080606082018190525f90611a01908301846117bd565b9695505050505050565b634e487b7160e01b5f52603260045260245ffd5b5f60018201611a3057611a306116c1565b506001019056fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x5155f5627bdf9795b3dbb8887001ada1eeba93f2":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063de8f50a11461002d575b5f80fd5b61004761003b3660046100a0565b60019695505050505050565b604051901515815260200160405180910390f35b5f8083601f84011261006b575f80fd5b50813567ffffffffffffffff811115610082575f80fd5b602083019150836020828501011115610099575f80fd5b9250929050565b5f805f805f80606087890312156100b5575f80fd5b863567ffffffffffffffff808211156100cc575f80fd5b6100d88a838b0161005b565b909850965060208901359150808211156100f0575f80fd5b6100fc8a838b0161005b565b90965094506040890135915080821115610114575f80fd5b5061012189828a0161005b565b979a969950949750929593949250505056fea164736f6c6343000818000a","storage":{}},"0x54563a9e1cd2dcbd0bca90d3cfa4a647e02c404a":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106101db575f3560e01c80638da5cb5b116100fd578063c4d66de811610092578063daea85c511610062578063daea85c51461055e578063e7acab241461057d578063f2fde38b1461059c578063ffa1ad74146105bb575f80fd5b8063c4d66de8146104e1578063d539139314610500578063d547741f14610520578063d9caed121461053f575f80fd5b8063a217fddf116100cd578063a217fddf14610452578063a3f4df7e14610465578063a4247400146104a3578063aa271e1a146104c2575f80fd5b80638da5cb5b146103d957806391d1485414610400578063983b2d561461041f578063986502751461043e575f80fd5b80635c975abb11610173578063715018a611610143578063715018a61461037f57806371e2a6571461039357806381c81d35146103b25780638456cb59146103c5575f80fd5b80635c975abb146103165780635fc1964f1461032e578063634486da1461034d5780636ccbae5f14610360575f80fd5b80633092afd5116101ae5780633092afd51461029c57806336568abe146102bb5780633f4ba83a146102da578063572b6c05146102ee575f80fd5b806301ffc9a7146101df5780631bf7e13e14610213578063248a9ca31461023f5780632f2ff15d1461027b575b5f80fd5b3480156101ea575f80fd5b506101fe6101f9366004611ee0565b6105eb565b60405190151581526020015b60405180910390f35b34801561021e575f80fd5b5061023261022d366004611f07565b610621565b60405161020a9190611fe9565b34801561024a575f80fd5b5061026d610259366004611ffb565b5f90815260fb602052604090206001015490565b60405190815260200161020a565b348015610286575f80fd5b5061029a610295366004612036565b6106ea565b005b3480156102a7575f80fd5b5061029a6102b6366004612064565b610713565b3480156102c6575f80fd5b5061029a6102d5366004612036565b610727565b3480156102e5575f80fd5b5061029a6107ba565b3480156102f9575f80fd5b506101fe610308366004612064565b6001600160a01b0316301490565b348015610321575f80fd5b5061012d5460ff166101fe565b348015610339575f80fd5b5061029a6103483660046120eb565b6107d4565b61029a61035b366004612064565b610811565b34801561036b575f80fd5b5061026d61037a366004611ffb565b6108d1565b34801561038a575f80fd5b5061029a61092a565b34801561039e575f80fd5b5061029a6103ad3660046120eb565b61093b565b61029a6103c0366004612064565b610978565b3480156103d0575f80fd5b5061029a6109f5565b3480156103e4575f80fd5b506097546040516001600160a01b03909116815260200161020a565b34801561040b575f80fd5b506101fe61041a366004612036565b610a0d565b34801561042a575f80fd5b5061029a610439366004612064565b610a37565b348015610449575f80fd5b5061029a610a48565b34801561045d575f80fd5b5061026d5f81565b348015610470575f80fd5b506102326040518060400160405280601381526020017229b2b0b837b93a10283937bc3c90213abcb2b960691b81525081565b3480156104ae575f80fd5b506101fe6104bd366004611f07565b610a61565b3480156104cd575f80fd5b506101fe6104dc366004612064565b610ab2565b3480156104ec575f80fd5b5061029a6104fb366004612064565b610aca565b34801561050b575f80fd5b5061026d5f80516020612ea783398151915281565b34801561052b575f80fd5b5061029a61053a366004612036565b610c21565b34801561054a575f80fd5b5061029a61055936600461218b565b610c45565b348015610569575f80fd5b5061029a610578366004612064565b610cf7565b348015610588575f80fd5b506101fe6105973660046121c9565b610dac565b3480156105a7575f80fd5b5061029a6105b6366004612064565b6111db565b3480156105c6575f80fd5b5061023260405180604001604052806005815260200164302e302e3160d81b81525081565b5f6001600160e01b03198216637965db0b60e01b148061061b57506301ffc9a760e01b6001600160e01b03198316145b92915050565b60605f5a9050610632858585610a61565b61064f57604051638baa579f60e01b815260040160405180910390fd5b6106df61065f6020870187612064565b3060408801358461067360608b018b61227b565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f920191909152506111f692505050565b9150505b9392505050565b5f82815260fb6020526040902060010154610704816112d4565b61070e83836112e5565b505050565b61071b61136b565b610724816113e4565b50565b61072f6113fb565b6001600160a01b0316816001600160a01b0316146107ac5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6107b68282611409565b5050565b6107c261136b565b6107ca61148d565b6107d26114d7565b565b6107dc61136b565b5f5b81518110156107b6576108098282815181106107fc576107fc6122bd565b60200260200101516113e4565b6001016107de565b61081c6104dc6113fb565b6108385760405162461bcd60e51b81526004016107a3906122d1565b6001600160a01b03811661088e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016107a3565b61089781611530565b61089f610a48565b6040516001600160a01b038216903480156108fc02915f818181858888f193505050501580156107b6573d5f803e3d5ffd5b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f90610923906060016040516020818303038152906040528051906020012090565b5492915050565b61093261136b565b6107d25f611547565b61094361136b565b5f5b81518110156107b657610970828281518110610963576109636122bd565b6020026020010151611530565b600101610945565b6109836104dc6113fb565b61099f5760405162461bcd60e51b81526004016107a3906122d1565b6001600160a01b0381166108975760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016107a3565b6109fd61136b565b610a05611598565b6107d26115df565b5f91825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610a3f61136b565b61072481611530565b6107d25f80516020612ea78339815191526102d56113fb565b5f610aaa610a6e85612306565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061161e92505050565b949350505050565b5f61061b5f80516020612ea783398151915283610a0d565b5f54610100900460ff1615808015610ae857505f54600160ff909116105b80610b015750303b158015610b0157505f5460ff166001145b610b645760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107a3565b5f805460ff191660011790558015610b85575f805461ff0019166101001790555b61015f80546001600160a01b0319166001600160a01b038416179055610ba9611759565b610bb1611786565b610bb9611786565b610bc1611786565b610bc96117ac565b610bd16117e2565b610bd9611819565b80156107b6575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b5f82815260fb6020526040902060010154610c3b816112d4565b61070e8383611409565b610c4d61136b565b600260335403610c6f5760405162461bcd60e51b81526004016107a3906123c2565b6002603355610c7c611598565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af1158015610cc8573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cec91906123f9565b505060016033555050565b610cff61136b565b600260335403610d215760405162461bcd60e51b81526004016107a3906123c2565b6002603355610d2e611598565b61015f5460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529082169063095ea7b3906044016020604051808303815f875af1158015610d7f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610da391906123f9565b50506001603355565b5f610db86104dc6113fb565b610dd45760405162461bcd60e51b81526004016107a3906122d1565b600260335403610df65760405162461bcd60e51b81526004016107a3906123c2565b6002603355610e03611598565b6001600160a01b038216610e2a576040516311d000e160e31b815260040160405180910390fd5b30610e358780612418565b610e46906040810190602001612064565b6001600160a01b031614610e6d57604051639d3c586b60e01b815260040160405180910390fd5b610e75611e67565b610e7f8780612418565b610e8d906020810190612064565b6001600160a01b03168152610ea28780612418565b610eb3906040810190602001612064565b6001600160a01b03166020820152610ecb8780612418565b610ed9906040810190612437565b808060200260200160405190810160405280939291908181526020015f905b82821015610f2457610f1560a08302860136819003810190612489565b81526020019060010190610ef8565b50505050506040820152610f388780612418565b610f46906060810190612506565b808060200260200160405190810160405280939291908181526020015f905b82821015610f9157610f8260c0830286013681900381019061254a565b81526020019060010190610f65565b50505050506060820152610fa58780612418565b610fb69060a08101906080016125e5565b81608001906004811115610fcc57610fcc6125fe565b90816004811115610fdf57610fdf6125fe565b905250610fec8780612418565b60a090810135908201526110008780612418565b60c090810135908201526110148780612418565b60e090810135908201526110288780612418565b610100908101359082015261103d8780612418565b610120908101359082015261015f54815160405163f07ec37360e01b81526001600160a01b03918216600482015291169063f07ec37390602401602060405180830381865afa158015611092573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110b69190612612565b61014082015261015f546040516379df72bd60e01b8152611133916001600160a01b0316906379df72bd906110ef908590600401612737565b602060405180830381865afa15801561110a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061112e9190612612565b61184c565b61015f546040516339eb2ac960e21b81526001600160a01b039091169063e7acab249061116c908a908a908a908a908a90600401612b24565b6020604051808303815f875af1158015611188573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111ac91906123f9565b9150816111cc57604051636725093760e01b815260040160405180910390fd5b50600160335595945050505050565b6111e361136b565b6111ec81611865565b6107245f826118db565b6060611201856118e5565b5f80876001600160a01b03168661121a8b8a898961194a565b6040516112279190612cfa565b5f604051808303815f8787f1925050503d805f8114611261576040519150601f19603f3d011682016040523d82523d5f602084013e611266565b606091505b509092509050611277603f87612d1f565b5a1161128557611285612d3e565b6112c582826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061197a565b925050505b9695505050505050565b610724816112e06113fb565b6119b3565b6112ef8282610a0d565b6107b6575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191660011790556113276113fb565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6113736113fb565b6001600160a01b031661138e6097546001600160a01b031690565b6001600160a01b0316146107d25760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107a3565b6107245f80516020612ea783398151915282610c21565b5f611404611a17565b905090565b6114138282610a0d565b156107b6575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191690556114496113fb565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b61012d5460ff166107d25760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b60448201526064016107a3565b6114df61148d565b61012d805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6115136113fb565b6040516001600160a01b03909116815260200160405180910390a1565b6107245f80516020612ea7833981519152826118db565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b61012d5460ff16156107d25760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b60448201526064016107a3565b6115e7611598565b61012d805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586115136113fb565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015611662573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116869190612612565b90505f6117338660600151805190602001208688602001516040516020016116d39392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156112ca575085516112ca906001600160a01b03168286611a34565b5f54610100900460ff1661177f5760405162461bcd60e51b81526004016107a390612d52565b6001603355565b5f54610100900460ff166107d25760405162461bcd60e51b81526004016107a390612d52565b5f54610100900460ff166117d25760405162461bcd60e51b81526004016107a390612d52565b6107d26117dd6113fb565b611547565b5f54610100900460ff166118085760405162461bcd60e51b81526004016107a390612d52565b6107d25f6118146113fb565b6118db565b5f54610100900460ff1661183f5760405162461bcd60e51b81526004016107a390612d52565b61012d805460ff19169055565b30330361185c5761072481611b6f565b610724816118e5565b61186d61136b565b6001600160a01b0381166118d25760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107a3565b61072481611547565b6107b682826112e5565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f906060016040516020818303038152906040528051906020012090506119398190565b54611945906001612d9d565b905550565b606082858560405160200161196193929190612db0565b6040516020818303038152906040529050949350505050565b606083156119895750816106e3565b8251156119995782518084602001fd5b8160405162461bcd60e51b81526004016107a39190611fe9565b6119bd8282610a0d565b6107b6576119d5816001600160a01b03166014611b99565b6119e0836020611b99565b6040516020016119f1929190612dee565b60408051601f198184030181529082905262461bcd60e51b82526107a391600401611fe9565b5f303303611a2c575060331936013560601c90565b503390565b90565b5f805f611a418585611d2e565b90925090505f816004811115611a5957611a596125fe565b148015611a775750856001600160a01b0316826001600160a01b0316145b15611a87576001925050506106e3565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401611aae929190612e62565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051611aec9190612cfa565b5f60405180830381855afa9150503d805f8114611b24576040519150601f19603f3d011682016040523d82523d5f602084013e611b29565b606091505b5091509150818015611b3c575080516020145b8015611b6357508051630b135d3f60e11b90611b619083016020908101908401612612565b145b98975050505050505050565b611b77611d70565b811461072457604051635637b6af60e11b8152600481018290526024016107a3565b60605f611ba7836002612e7a565b611bb2906002612d9d565b6001600160401b03811115611bc957611bc961207f565b6040519080825280601f01601f191660200182016040528015611bf3576020820181803683370190505b509050600360fc1b815f81518110611c0d57611c0d6122bd565b60200101906001600160f81b03191690815f1a905350600f60fb1b81600181518110611c3b57611c3b6122bd565b60200101906001600160f81b03191690815f1a9053505f611c5d846002612e7a565b611c68906001612d9d565b90505b6001811115611cdf576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611c9c57611c9c6122bd565b1a60f81b828281518110611cb257611cb26122bd565b60200101906001600160f81b03191690815f1a90535060049490941c93611cd881612e91565b9050611c6b565b5083156106e35760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016107a3565b5f808251604103611d62576020830151604084015160608501515f1a611d5687828585611d82565b94509450505050611d69565b505f905060025b9250929050565b5f303303611a315750601f1936013590565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115611db757505f90506003611e5e565b8460ff16601b14158015611dcf57508460ff16601c14155b15611ddf57505f90506004611e5e565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015611e30573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b038116611e58575f60019250925050611e5e565b91505f90505b94509492505050565b6040518061016001604052805f6001600160a01b031681526020015f6001600160a01b0316815260200160608152602001606081526020015f6004811115611eb157611eb16125fe565b81525f6020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b5f60208284031215611ef0575f80fd5b81356001600160e01b0319811681146106e3575f80fd5b5f805f60408486031215611f19575f80fd5b83356001600160401b0380821115611f2f575f80fd5b9085019060808288031215611f42575f80fd5b90935060208501359080821115611f57575f80fd5b818601915086601f830112611f6a575f80fd5b813581811115611f78575f80fd5b876020828501011115611f89575f80fd5b6020830194508093505050509250925092565b5f5b83811015611fb6578181015183820152602001611f9e565b50505f910152565b5f8151808452611fd5816020860160208601611f9c565b601f01601f19169290920160200192915050565b602081525f6106e36020830184611fbe565b5f6020828403121561200b575f80fd5b5035919050565b6001600160a01b0381168114610724575f80fd5b803561203181612012565b919050565b5f8060408385031215612047575f80fd5b82359150602083013561205981612012565b809150509250929050565b5f60208284031215612074575f80fd5b81356106e381612012565b634e487b7160e01b5f52604160045260245ffd5b604051608081016001600160401b03811182821017156120b5576120b561207f565b60405290565b604051601f8201601f191681016001600160401b03811182821017156120e3576120e361207f565b604052919050565b5f60208083850312156120fc575f80fd5b82356001600160401b0380821115612112575f80fd5b818501915085601f830112612125575f80fd5b8135818111156121375761213761207f565b8060051b91506121488483016120bb565b8181529183018401918481019088841115612161575f80fd5b938501935b83851015611b63578435925061217b83612012565b8282529385019390850190612166565b5f805f6060848603121561219d575f80fd5b83356121a881612012565b925060208401356121b881612012565b929592945050506040919091013590565b5f805f805f608086880312156121dd575f80fd5b85356001600160401b03808211156121f3575f80fd5b9087019060a0828a031215612206575f80fd5b9095506020870135908082111561221b575f80fd5b818801915088601f83011261222e575f80fd5b81358181111561223c575f80fd5b8960208260051b8501011115612250575f80fd5b6020830196508095505050506040860135915061226f60608701612026565b90509295509295909350565b5f808335601e19843603018112612290575f80fd5b8301803591506001600160401b038211156122a9575f80fd5b602001915036819003821315611d69575f80fd5b634e487b7160e01b5f52603260045260245ffd5b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b5f60808236031215612316575f80fd5b61231e612093565b823561232981612012565b8152602083810135818301526040808501359083015260608401356001600160401b0380821115612358575f80fd5b9085019036601f83011261236a575f80fd5b81358181111561237c5761237c61207f565b61238e601f8201601f191685016120bb565b915080825236848285010111156123a3575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b5f60208284031215612409575f80fd5b815180151581146106e3575f80fd5b5f823561015e1983360301811261242d575f80fd5b9190910192915050565b5f808335601e1984360301811261244c575f80fd5b8301803591506001600160401b03821115612465575f80fd5b602001915060a081023603821315611d69575f80fd5b803560068110612031575f80fd5b5f60a08284031215612499575f80fd5b60405160a081018181106001600160401b03821117156124bb576124bb61207f565b6040526124c78361247b565b815260208301356124d781612012565b806020830152506040830135604082015260608301356060820152608083013560808201528091505092915050565b5f808335601e1984360301811261251b575f80fd5b8301803591506001600160401b03821115612534575f80fd5b602001915060c081023603821315611d69575f80fd5b5f60c0828403121561255a575f80fd5b60405160c081018181106001600160401b038211171561257c5761257c61207f565b6040526125888361247b565b8152602083013561259881612012565b8060208301525060408301356040820152606083013560608201526080830135608082015260a08301356125cb81612012565b60a08201529392505050565b803560058110612031575f80fd5b5f602082840312156125f5575f80fd5b6106e3826125d7565b634e487b7160e01b5f52602160045260245ffd5b5f60208284031215612622575f80fd5b5051919050565b60068110612639576126396125fe565b9052565b5f815180845260208085019450602084015f5b838110156126a6578151612665888251612629565b838101516001600160a01b03168885015260408082015190890152606080820151908901526080908101519088015260a09096019590820190600101612650565b509495945050505050565b5f815180845260208085019450602084015f5b838110156126a65781516126d9888251612629565b808401516001600160a01b0390811689860152604080830151908a0152606080830151908a0152608080830151908a015260a091820151169088015260c090960195908201906001016126c4565b60058110612639576126396125fe565b602081526127516020820183516001600160a01b03169052565b5f602083015161276c60408401826001600160a01b03169052565b50604083015161016080606085015261278961018085018361263d565b91506060850151601f198584030160808601526127a683826126b1565b92505060808501516127bb60a0860182612727565b5060a085015160c085015260c085015160e085015260e0850151610100818187015280870151915050610120818187015280870151915050610140818187015280870151838701525050508091505092915050565b5f808335601e19843603018112612825575f80fd5b83016020810192503590506001600160401b03811115612843575f80fd5b60a081023603821315611d69575f80fd5b8183525f60208085019450825f5b858110156126a65761287c876128778461247b565b612629565b8282013561288981612012565b6001600160a01b03168388015260408281013590880152606080830135908801526080808301359088015260a09687019690910190600101612862565b5f808335601e198436030181126128db575f80fd5b83016020810192503590506001600160401b038111156128f9575f80fd5b60c081023603821315611d69575f80fd5b8183525f60208085019450825f5b858110156126a65761292d876128778461247b565b8282013561293a81612012565b6001600160a01b039081168885015260408381013590890152606080840135908901526080808401359089015260a0908382013561297781612012565b169088015260c0968701969190910190600101612918565b80356001600160781b0381168114612031575f80fd5b5f808335601e198436030181126129ba575f80fd5b83016020810192503590506001600160401b038111156129d8575f80fd5b803603821315611d69575f80fd5b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b8183525f6001600160fb1b03831115612a25575f80fd5b8260051b80836020870137939093016020019392505050565b8183526020808401935f91600585811b8301820185855b88811015612b1657858303601f19018a52813536899003609e19018112612a7a575f80fd5b88018035845260a08682013560028110612a92575f80fd5b85880152604082810135908601526060808301359086015260808083013536849003601e19018112612ac2575f80fd5b9092018781019290356001600160401b03811115612ade575f80fd5b80881b3603841315612aee575f80fd5b8282880152612b008388018286612a0e565b9d89019d96505050928601925050600101612a55565b509098975050505050505050565b608081525f610120873561015e19893603018112612b40575f80fd5b60a060808501528801612b65828501612b5883612026565b6001600160a01b03169052565b612b7160208201612026565b610140612b88818701836001600160a01b03169052565b612b956040840184612810565b610160888101529250612bad61028088018483612854565b925050612bbd60608401846128c6565b87840361011f1901610180890152612bd684828461290a565b93505050612be6608084016125d7565b612bf46101a0880182612727565b5060a08301356101c087015260c08301356101e087015260e0830135610200870152610100808401356102208801528484013561024088015281840135610260880152612c4360208d0161298f565b6001600160781b03811660a08901529450612c6060408d0161298f565b6001600160781b03811660c08901529450612c7e60608d018d6129a5565b95509350607f199150818784030160e0880152612c9c8386866129e6565b9450612cab60808d018d6129a5565b945092508187860301818801525050612cc58383836129e6565b925050508281036020840152612cdc818789612a3e565b9150508360408301526112ca60608301846001600160a01b03169052565b5f825161242d818460208701611f9c565b634e487b7160e01b5f52601160045260245ffd5b5f82612d3957634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b8082018082111561061b5761061b612d0b565b5f8451612dc1818460208901611f9c565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081525f8351612e25816017850160208801611f9c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351612e56816028840160208801611f9c565b01602801949350505050565b828152604060208201525f610aaa6040830184611fbe565b808202811582820484141761061b5761061b612d0b565b5f81612e9f57612e9f612d0b565b505f19019056fe9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000818000a","storage":{"0x0":"0xff"}},"0x58a175bebc8ec21a94ea63aa5a28743945940ee6":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106101165760003560e01c806391d14854116100a2578063c4d66de811610071578063c4d66de8146103bb578063ca15c873146103e1578063d547741f146103fe578063e375b64e1461042a578063ec87621c146104b957610116565b806391d14854146103635780639559c0bd146103a3578063a217fddf146103ab578063b017a30f146103b357610116565b80634794b430116100e95780634794b4301461024f57806349f5124b14610257578063609c92b81461025f5780638274664f146102675780639010d07c1461032457610116565b8063150b7a021461011b578063248a9ca3146101c65780632f2ff15d146101f557806336568abe14610223575b600080fd5b6101a96004803603608081101561013157600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561016b57600080fd5b82018360208201111561017d57600080fd5b803590602001918460018302840111600160201b8311171561019e57600080fd5b5090925090506104c1565b604080516001600160e01b03199092168252519081900360200190f35b6101e3600480360360208110156101dc57600080fd5b50356104d2565b60408051918252519081900360200190f35b6102216004803603604081101561020b57600080fd5b50803590602001356001600160a01b03166104ea565b005b6102216004803603604081101561023957600080fd5b50803590602001356001600160a01b0316610556565b6101e36105b7565b6101e36105db565b6101e36105ff565b6102216004803603606081101561027d57600080fd5b6001600160a01b038235811692602081013590911691810190606081016040820135600160201b8111156102b057600080fd5b8201836020820111156102c257600080fd5b803590602001918460018302840111600160201b831117156102e357600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610623945050505050565b6103476004803603604081101561033a57600080fd5b5080359060200135610fa2565b604080516001600160a01b039092168252519081900360200190f35b61038f6004803603604081101561037957600080fd5b50803590602001356001600160a01b0316610fc9565b604080519115158252519081900360200190f35b6101e3610fe7565b6101e3610fec565b6101e3610ff1565b610221600480360360208110156103d157600080fd5b50356001600160a01b0316611015565b6101e3600480360360208110156103f757600080fd5b50356110cf565b6102216004803603604081101561041457600080fd5b50803590602001356001600160a01b03166110e6565b6102216004803603608081101561044057600080fd5b6001600160a01b0382358116926020810135821692604082013590921691810190608081016060820135600160201b81111561047b57600080fd5b82018360208201111561048d57600080fd5b803590602001918460018302840111600160201b831117156104ae57600080fd5b50909250905061113f565b6101e36114e6565b630a85bd0160e11b95945050505050565b6000818152602081905260409020600201545b919050565b60008281526020819052604090206002015461050d906105086114f8565b610fc9565b6105485760405162461bcd60e51b815260040180806020018281038252602f815260200180611f42602f913960400191505060405180910390fd5b61055282826114fd565b5050565b61055e6114f8565b6001600160a01b0316816001600160a01b0316146105ad5760405162461bcd60e51b815260040180806020018281038252602f8152602001806120bb602f913960400191505060405180910390fd5b610552828261156c565b7ff871896b17e9cb7a64941c62c188a4f5c621b86800e3d15452ece01ce56073df81565b7ff94915c6d1fd521cee85359239227480c7e8776d7caf1fc3bacad5c269b66a1481565b7fd4392723c111fcb98b073fe55873efb447bcd23cd3e49ec9ea2581930cd01ddc81565b60008051602061204b83398151915261063e816105086114f8565b6001906106de5760405162461bcd60e51b81526020600482019081528254600260001961010060018416150201909116046024830181905290918291604490910190849080156106cf5780601f106106a4576101008083540402835291602001916106cf565b820191906000526020600020905b8154815290600101906020018083116106b257829003601f168201915b50509250505060405180910390fd5b5060606106f26106ed846115db565b611656565b905060606107138260018151811061070657fe5b6020026020010151611656565b90507fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60001b6107568260008151811061074957fe5b60200260200101516117d8565b141561095457600061076e8260018151811061074957fe5b905060006001600160a01b031661078b8360028151811061074957fe5b6001600160a01b0316146107d05760405162461bcd60e51b815260040180806020018281038252602981526020018061206b6029913960400191505060405180910390fd5b600086905060006107e78460038151811061074957fe5b9050816001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b15801561082d57600080fd5b505afa158015610841573d6000803e3d6000fd5b505050506040513d602081101561085757600080fd5b5051156108d35760408051632142170760e11b81523060048201526001600160a01b038581166024830152604482018490529151918416916342842e0e9160648082019260009290919082900301818387803b1580156108b657600080fd5b505af11580156108ca573d6000803e3d6000fd5b5050505061094c565b816001600160a01b03166340c10f1984836040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b15801561093357600080fd5b505af1158015610947573d6000803e3d6000fd5b505050505b505050610f9a565b7ff871896b17e9cb7a64941c62c188a4f5c621b86800e3d15452ece01ce56073df60001b6109888260008151811061074957fe5b1415610c085760006109a08260018151811061074957fe5b905060606109c1846002815181106109b457fe5b6020026020010151611920565b905060608180602001905160208110156109da57600080fd5b8101908080516040519392919084600160201b8211156109f957600080fd5b908301906020820185811115610a0e57600080fd5b82518660208202830111600160201b82111715610a2a57600080fd5b82525081516020918201928201910280838360005b83811015610a57578181015183820152602001610a3f565b5050505091909101604052505082519293508a9150600090505b82811015610bfd576000848281518110610a8757fe5b60200260200101519050826001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610ad557600080fd5b505afa158015610ae9573d6000803e3d6000fd5b505050506040513d6020811015610aff57600080fd5b505115610b7b5760408051632142170760e11b81523060048201526001600160a01b038981166024830152604482018490529151918516916342842e0e9160648082019260009290919082900301818387803b158015610b5e57600080fd5b505af1158015610b72573d6000803e3d6000fd5b50505050610bf4565b826001600160a01b03166340c10f1988836040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b158015610bdb57600080fd5b505af1158015610bef573d6000803e3d6000fd5b505050505b50600101610a71565b505050505050610f9a565b7ff94915c6d1fd521cee85359239227480c7e8776d7caf1fc3bacad5c269b66a1460001b610c3c8260008151811061074957fe5b1415610f63576000610c548260018151811061074957fe5b905060006001600160a01b0316610c718360028151811061074957fe5b6001600160a01b031614610cb65760405162461bcd60e51b815260040180806020018281038252602981526020018061206b6029913960400191505060405180910390fd5b60008690506000610ccd8460038151811061074957fe5b9050816001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610d1357600080fd5b505afa158015610d27573d6000803e3d6000fd5b505050506040513d6020811015610d3d57600080fd5b505115610d9c5760408051632142170760e11b81523060048201526001600160a01b038581166024830152604482018490529151918416916342842e0e9160648082019260009290919082900301818387803b1580156108b657600080fd5b6060610dae866002815181106109b457fe5b90506060818060200190516020811015610dc757600080fd5b8101908080516040519392919084600160201b821115610de657600080fd5b908301906020820185811115610dfb57600080fd5b8251600160201b811182820188101715610e1457600080fd5b82525081516020918201929091019080838360005b83811015610e41578181015183820152602001610e29565b50505050905090810190601f168015610e6e5780820380516001836020036101000a031916815260200191505b506040525050509050836001600160a01b03166394d008ef8685846040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b0316815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610ef3578181015183820152602001610edb565b50505050905090810190601f168015610f205780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015610f4157600080fd5b505af1158015610f55573d6000803e3d6000fd5b505050505050505050610f9a565b60405162461bcd60e51b815260040180806020018281038252602a815260200180611f71602a913960400191505060405180910390fd5b505050505050565b6000828152602081905260408120610fc0908363ffffffff6119ea16565b90505b92915050565b6000828152602081905260408120610fc0908363ffffffff6119f616565b601481565b600081565b7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef81565b60025460ff161561105e576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b61109c6040518060400160405280601781526020017f4d696e7461626c65455243373231507265646963617465000000000000000000815250611a0b565b6110a7600082610548565b6110bf60008051602061204b83398151915282610548565b506002805460ff19166001179055565b6000818152602081905260408120610fc390611aa9565b600082815260208190526040902060020154611104906105086114f8565b6105ad5760405162461bcd60e51b8152600401808060200182810382526030815260200180611fc36030913960400191505060405180910390fd5b60008051602061204b83398151915261115a816105086114f8565b6001906111c05760405162461bcd60e51b81526020600482019081528254600260001961010060018416150201909116046024830181905290918291604490910190849080156106cf5780601f106106a4576101008083540402835291602001916106cf565b50602082141561129f576000838360208110156111dc57600080fd5b5060408051913580835290519092506001600160a01b038088169289821692918b16917fe13244aa06bdc79480ed5fdc6ebe2bb37202fcdf33ecf45dc449f4201f3dc0879181900360200190a460408051632142170760e11b81526001600160a01b038981166004830152306024830152604482018490529151918716916342842e0e9160648082019260009290919082900301818387803b15801561128157600080fd5b505af1158015611295573d6000803e3d6000fd5b5050505050610f9a565b6060838360208110156112b157600080fd5b810190602081018135600160201b8111156112cb57600080fd5b8201836020820111156112dd57600080fd5b803590602001918460208302840111600160201b831117156112fe57600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f8201169050808301925050505050505091929192905050509050846001600160a01b0316866001600160a01b0316886001600160a01b03167fdb55e3a0ae817693fd7b07170d81eab0eb2c239f36fcecbc98b6b58ac5667e7a846040518080602001828103825283818151815260200191508051906020019060200280838360005b838110156113ca5781810151838201526020016113b2565b505050509050019250505060405180910390a48051601481111561141f5760405162461bcd60e51b815260040180806020018281038252602c81526020018061201f602c913960400191505060405180910390fd5b60005b818110156114db57866001600160a01b03166342842e0e8a3086858151811061144757fe5b60200260200101516040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050600060405180830381600087803b1580156114b757600080fd5b505af11580156114cb573d6000803e3d6000fd5b5050600190920191506114229050565b505050505050505050565b60008051602061204b83398151915281565b335b90565b600082815260208190526040902061151b908263ffffffff611ab416565b15610552576115286114f8565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b600082815260208190526040902061158a908263ffffffff611ac916565b15610552576115976114f8565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b6115e3611e6d565b6000825111611639576040805162461bcd60e51b815260206004820152601f60248201527f524c505265616465723a20494e56414c49445f42595445535f4c454e47544800604482015290519081900360640190fd5b506040805180820190915281518152602082810190820152919050565b606061166182611ade565b6116b2576040805162461bcd60e51b815260206004820152601860248201527f524c505265616465723a204954454d5f4e4f545f4c4953540000000000000000604482015290519081900360640190fd5b60006116bd83611b0a565b905060608167ffffffffffffffff811180156116d857600080fd5b5060405190808252806020026020018201604052801561171257816020015b6116ff611e6d565b8152602001906001900390816116f75790505b50905060006117248560200151611b96565b855190915081146117665760405162461bcd60e51b81526004018080602001828103825260278152602001806120946027913960400191505060405180910390fd5b60006117758660200151611c2f565b60208701510190506000805b858110156117cc5761179283611b96565b91506040518060400160405280838152602001848152508582815181106117b557fe5b602090810291909101015291810191600101611781565b50929695505050505050565b60006117e382611ade565b15611835576040805162461bcd60e51b815260206004820181905260248201527f524c505265616465723a204445434f44494e475f4c4953545f41535f55494e54604482015290519081900360640190fd5b81516021101561188c576040805162461bcd60e51b815260206004820152601e60248201527f524c505265616465723a20494e56414c49445f55494e545f4c454e4754480000604482015290519081900360640190fd5b600061189b8360200151611b96565b835190915081146118dd5760405162461bcd60e51b81526004018080602001828103825260278152602001806120ea6027913960400191505060405180910390fd5b60006118ec8460200151611c2f565b8451602080870151830180519394509184900392919083101561191657826020036101000a820491505b5095945050505050565b606060006119318360200151611b96565b835190915081146119735760405162461bcd60e51b8152600401808060200182810382526028815260200180611f9b6028913960400191505060405180910390fd5b60006119828460200151611c2f565b845190915081900360608167ffffffffffffffff811180156119a357600080fd5b506040519080825280601f01601f1916602001820160405280156119ce576020820181803683370190505b5090506000816020019050611916848860200151018285611c92565b6000610fc08383611cdd565b6000610fc0836001600160a01b038416611d41565b806040516020018082805190602001908083835b60208310611a3e5780518252601f199092019160209182019101611a1f565b51815160209384036101000a60001901801990921691161790527f3a20494e53554646494349454e545f5045524d495353494f4e530000000000009190930190815260408051808303600519018152601a909201905280516105529550600194509201919050611e87565b6000610fc382611d59565b6000610fc0836001600160a01b038416611d5d565b6000610fc0836001600160a01b038416611da7565b6020810151805160009190821a9060c0821015611b00576000925050506104e5565b5060019392505050565b600080600090506000611b208460200151611c2f565b602085015185519181019250015b80821015611b8d57611b3f82611b96565b8201915080821115611b825760405162461bcd60e51b815260040180806020018281038252602c815260200180611ff3602c913960400191505060405180910390fd5b600190920191611b2e565b50909392505050565b80516000908190811a6080811015611bb15760019150611c28565b60b8811015611bc657607e1981019150611c28565b60c0811015611bf35760b78103600185019450806020036101000a85510460018201810193505050611c28565b60f8811015611c085760be1981019150611c28565b60f78103600185019450806020036101000a855104600182018101935050505b5092915050565b8051600090811a6080811015611c495760009150506104e5565b60b8811080611c64575060c08110801590611c64575060f881105b15611c735760019150506104e5565b60c0811015611c875760b5190190506104e5565b60f5190190506104e5565b80611c9c57611cd8565b5b60208110611cbc578251825260209283019290910190601f1901611c9d565b8251825160208390036101000a60001901801990921691161782525b505050565b81546000908210611d1f5760405162461bcd60e51b8152600401808060200182810382526022815260200180611f206022913960400191505060405180910390fd5b826000018281548110611d2e57fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000611d698383611d41565b611d9f57508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610fc3565b506000610fc3565b60008181526001830160205260408120548015611e635783546000198083019190810190600090879083908110611dda57fe5b9060005260206000200154905080876000018481548110611df757fe5b600091825260208083209091019290925582815260018981019092526040902090840190558654879080611e2757fe5b60019003818190600052602060002001600090559055866001016000878152602001908152602001600020600090556001945050505050610fc3565b6000915050610fc3565b604051806040016040528060008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611ec857805160ff1916838001178555611ef5565b82800160010185558215611ef5579182015b82811115611ef5578251825591602001919060010190611eda565b50611f01929150611f05565b5090565b6114fa91905b80821115611f015760008155600101611f0b56fe456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e744d696e7461626c654552433732315072656469636174653a20494e56414c49445f5349474e4154555245524c505265616465723a2042595445535f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b65524c505265616465723a204e554d5f4954454d535f4445434f4445445f4c454e4754485f4d49534d415443484d696e7461626c654552433732315072656469636174653a20455843454544535f42415443485f4c494d4954241ecf16d79d0f8dbfb92cbc07fe17840425976cf0667f022fe9877caa831b084d696e7461626c654552433732315072656469636174653a20494e56414c49445f5245434549564552524c505265616465723a204c4953545f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66524c505265616465723a2055494e545f4445434f4445445f4c454e4754485f4d49534d41544348a164736f6c6343000606000a","storage":{"0x1":"0x63","0x2":"0x1","0x73d5d1a274bdea1400ad3ea4d982f594abdfd528cde1486b6c617faa3ec116":"0x1","0x89011777cfe6194dd982545e7eb24725dfe9a1aacae299c76fc48ef5017ae650":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x89011777cfe6194dd982545e7eb24725dfe9a1aacae299c76fc48ef5017ae651":"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0x1","0xb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6":"0x4d696e7461626c654552433732315072656469636174653a20494e5355464649","0xb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf7":"0x4349454e545f5045524d495353494f4e53000000000000000000000000000000","0xba75a66b8132bebab85d36fd3638083da57ae3d78fbcd8cc41f73514287dadaf":"0x1","0xe6c7d8231a06d7cb67831aeabcbd43ba24e5e4c6569cf23405f1e558de8580e0":"0x2","0xe84508f2c7fa9c351146748b3025cb78b45df37d868e48c6a75102fecdeee645":"0x2","0xe84508f2c7fa9c351146748b3025cb78b45df37d868e48c6a75102fecdeee647":"0x0","0xf0df3dcda05b4fbd9c655cde3d5ceb211e019e72ec816e127a59e7195f2cd7f5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x5cc819c9915eadfcebd76952b8c1bc36cadd7376":{"nonce":2,"balance":"0x0","code":"0x608060405260043610610103575f3560e01c8063a900866b11610092578063f07ec37311610062578063f07ec373146102f7578063f2d12b1214610316578063f47b774014610329578063fb0f3ee114610116578063fd9f1e101461034c575f80fd5b8063a900866b1461028a578063b3a34c4c146102be578063e7acab24146102d1578063ed98a574146102e4575f80fd5b80637423eb3c116100d85780637423eb3c146101f757806379df72bd1461020b57806387201b411461022a578063881477321461024b578063a81744041461026a575f80fd5b801561011657806306fdde031461013e57806346423aa71461015f5780635b34b966146101d5575f80fd5b366101125761011061036b565b005b5f80fd5b610129610124366004615115565b6103f9565b60405190151581526020015b60405180910390f35b348015610149575f80fd5b50610152610408565b604051610135919061518f565b34801561016a575f80fd5b506101b36101793660046151a1565b5f9081526001602052604090205460ff808216926101008304909116916001600160781b03620100008204811692600160881b9092041690565b6040805194151585529215156020850152918301526060820152608001610135565b3480156101e0575f80fd5b506101e9610417565b604051908152602001610135565b348015610202575f80fd5b50610110610420565b348015610216575f80fd5b506101e96102253660046151b8565b6104c1565b61023d61023836600461524c565b6104f8565b6040516101359291906153f0565b348015610256575f80fd5b5061012961026536600461543f565b610571565b61027d61027836600461547d565b61058f565b60405161013591906154e3565b348015610295575f80fd5b506101e96102a43660046154f5565b6001600160a01b03165f9081526002602052604090205490565b6101296102cc36600461550e565b61062a565b6101296102df366004615553565b6106a3565b61023d6102f23660046155d7565b6106e1565b348015610302575f80fd5b506101e96103113660046154f5565b610784565b61027d610324366004615677565b6107a1565b348015610334575f80fd5b5061033d6107ea565b60405161013593929190615719565b348015610357575f80fd5b5061012961036636600461543f565b610801565b7f000000000000000000000000000000000000000000000000000000000000000180156103b357600263929eee145c146103b05763a61be9f05f52346020526024601cfd5b50565b63929eee1454806103e057600263929eee145c146103dc5763a61be9f05f52346020526024601cfd5b5050565b600381146103dc5763a61be9f05f52346020526024601cfd5b5f61040261080c565b92915050565b60606104126109c0565b905090565b5f6104126109d8565b63929eee14546001147f000000000000000000000000000000000000000000000000000000000000000180610453575080155b1561047157604051630f45b98b60e41b815260040160405180910390fd5b61049a7f000000000000000000000000145908bbcfc7b258e4d4d9a586f6e3249ae80216610a45565b6104b7576040516370a4078f60e01b815260040160405180910390fd5b5f63929eee145550565b5f806104cd6004610aa3565b90506104f16104e282610ab35b63ffffffff16565b610140830135610b30565b3590565b9392505050565b60608061055d61051361050b6004610aa3565b610c746104da565b61052a61052260046020610cdc565b610cfa6104da565b61054161053960046040610cdc565b610d526104da565b61055061053960046060610cdc565b89338a15028a0189610daa565b915091509b509b9950505050505050505050565b5f6104f161058a6105826004610aa3565b610de46104da565b610e3c565b606061061f6105a96105a16004610aa3565b610f5d6104da565b604080515f8082526020820190925290610601565b6105ee6040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816105be5790505b5061061961061160046020610cdc565b610fb56104da565b3361100d565b90505b949350505050565b5f6104f161064361063b6004610aa3565b61104b6104da565b604080515f808252602082019092529061069b565b6106886040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816106585790505b5084336110c1565b5f6106d76106bc6106b46004610aa3565b6112406104da565b6106cb61052260046020610cdc565b853386150286016110c1565b9695505050505050565b6060806107736106f46105a16004610aa3565b604080515f808252602082019092529061074c565b6107396040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816107095790505b5061075c61053960046020610cdc565b61076b61053960046040610cdc565b883389610daa565b915091509850989650505050505050565b6001600160a01b0381165f90815260208190526040812054610402565b60606107dc6107b361050b6004610aa3565b6107c261052260046020610cdc565b6107d161061160046040610cdc565b33861502860161100d565b90505b979650505050505050565b60605f806107f661129c565b925092509250909192565b5f6104f183836112e8565b5f61012435600281901c90600316600182118334158214806108315761083134611423565b506003841160a0810260240135906502030203010160d01b861a905f630101020360d01b881a6108648882898888611434565b9096509150506101c4600583901b01355f87600581111561088757610887615329565b036108bc5760443560243517156108a557636ab37ce75f526004601cfd5b6108af8482611751565b6108b7611809565b61099d565b6040805160208082528183019092525f9160208201818036833701905050905060028a60058111156108f0576108f0615329565b036109135761090e60c4356084353360e435610104355b8787611889565b610988565b60038a600581111561092757610927615329565b036109455761090e60c4356084353360e435610104355b87876118d4565b60048a600581111561095957610959615329565b036109735761090e60243533608435604435606435610907565b6109886024353360843560443560643561093e565b610992848261190a565b61099b816119c4565b505b6109a88689846119e8565b6109b0611a5e565b6001995050505050505050505090565b6060602080526707536561706f727460475260606020f35b5f6109e1611ab1565b600143034060801c335f525f60205260405f208054820192508281555050336001600160a01b03167f721c20121297512b72821b97f5326877ea8ecf4bb9948fea5bfcb6453074d37f82604051610a3a91815260200190565b60405180910390a290565b5f816001600160a01b0316600a5a610a5d9190615773565b6040515f8181818686fa925050503d805f8114610a95576040519150601f19603f3d011682016040523d82523d5f602084013e610a9a565b606091505b50909392505050565b5f813563ffffffff168201610402565b5f610ac661016060408051918201905290565b9050610ad58282610140611b28565b610af2610aeb610ae6846040610cdc565b611b31565b6040830152565b5f610b06610b01846060610cdc565b611b84565b9050610b13816060840152565b610b26610b1e825190565b610140840152565b50919050565b0190565b610140820151604080519084015180515f939284927fa66999307ad1bb4fde44d13a5d710bd7718e0c87c1eef68a571629fbf5b93d0292602090910190845b81811015610b9c578251601f1901805186825260c082208652905260209384019390920191600101610b6f565b508060051b6040512094505050505f7f42d81c6929ffdc4eb27a0808e40e82516ad42296c166065de7f812492304ff6e915060405160206060890151015f5b86811015610c08578151601f1901805186825260e082208552905260209283019290910190600101610bdb565b505060408051600587901b9020601f198a0180517ffa445660b7e21515a59617fcd68910b487aa5808b8abda3d78bc85df364b2c2f8252928b01805197815260608c018051938152610140909c019a8b5261018082209390915295909552939097525050925250919050565b5f8063ffffffff8335169050600581901b610c986020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610cca610cc4610cbf8484610cdc565b611240565b82850152565b602001610ca7565b5050505050919050565b5f6104f163ffffffff610cf46104ed8686610b2c8516565b16840190565b5f8063ffffffff8335169050600581901b610d1e6020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610d4a610cc4610d458484610cdc565b611bc7565b602001610d2d565b5f8063ffffffff8335169050600581901b610d766020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610da2610cc4610d9d8484610cdc565b611c09565b602001610d85565b60608036155f80610dbe8c8c85898b611c4c565b91509150610dd18c8b8b8b8b8787612029565b9450945050505097509795505050505050565b5f8063ffffffff8335169050600581901b610e086020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610e34610cc4610e2f8484610cdc565b61215b565b602001610e17565b5f610e45611ab1565b5f805f80855190505f5b81811015610f50575f878281518110610e6a57610e6a615792565b60209081029190910101518051909150600481608001516004811115610e9257610e92615329565b03610e9e575050610f48565b80519450610eab8161219e565b5f8181526001602052604081209850909650610ecd90879089903615156121d7565b50865460ff16610f455780610140015181606001515114610ef057610ef0612265565b610eff85878460200151612272565b865460ff191660011787556040517ff280791efe782edcf06ce15c8f4dff17601db3b88eb3805a0db7d77faf757f0490610f3c9088908490615895565b60405180910390a15b50505b600101610e4f565b5060019695505050505050565b5f8063ffffffff8335169050600581901b610f816020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610fad610cc4610fa88484610cdc565b61104b565b602001610f90565b5f8063ffffffff8335169050600581901b610fd96020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257611005610cc46110008484610cdc565b61230e565b602001610fe8565b60605f36151590505f806110258888858b5189611c4c565b9150915061103282612341565b61103f8887848885612380565b98975050505050505050565b5f61105e61020060408051918201905290565b60a0810180825290915061107a61107484610aa3565b82612453565b61108660016020840152565b61109260016040840152565b6110af6110a86110a3856020610cdc565b612489565b6060840152565b610b266110ba6124b1565b6080840152565b835160808101515f91906110e860048260048111156110e2576110e2615329565b146124cb565b5f80806110f78a36151561256c565b60408051600180825281830190925293965091945092505f9190816020015b61111e615027565b8152602001906001900390816111165790505090508a815f8151811061114657611146615792565b602002602001018190525061115b818b612764565b6111678684848b6128dd565b6040805160018082528183019092525f91602080830190803683375091925050503615156004878181111561119e5761119e615329565b146111c1576111af8d83885f6129dd565b6111bb86868684612a2f565b506111d3565b6111d0888e6080015183612b33565b95505b6111de888c8c612c03565b85825f815181106111f1576111f1615792565b6020026020010181815250506112088d8388612d26565b61122586895f01518a602001518d8c604001518d60600151612df3565b61122d611a5e565b5060019c9b505050505050505050505050565b5f61125361020060408051918201905290565b905061126760208381019083016040611b28565b60a0810180825261127a61107484610aa3565b61128b6110a86110a3856060610cdc565b610b266110ba6110a3856080610cdc565b60605f805f6112a9612e58565b90505f7f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c905060605f5281602052806040526303312e3660635260a05ff35b5f6112f1611ab1565b5f8083815b81811015611408573687878381811061131157611311615792565b90506020028101906113239190615977565b90505f61133360208301836154f5565b90505f61134660408401602085016154f5565b90505f61135960a0850160808601615996565b905081331483331417156004821417871796505f61138d61138261137a8790565b610ab36104da565b866101400135610b30565b5f8181526001602052604090819020805461ffff19166101001781559051909a509091506001600160a01b0380851691908616907f6bacc01dbe442496068f7d234edd811f1a5f833243e0aec824f86ab861f3c90d906113f09085815260200190565b60405180910390a385600101955050505050506112f6565b5050801561141857611418612f35565b506001949350505050565b63a61be9f05f52806020526024601cfd5b5f8061143f5f6124cb565b611447612f42565b426101643511154261014435111715611475576321ccfeb75f5261014435602052610164356040526044601cfd5b610204356102643510156114905763466aa6165f526004601cfd5b7f42d81c6929ffdc4eb27a0808e40e82516ad42296c166065de7f812492304ff6e608081905260a08790526060602460c037604060646101203760e060802061016052610264356102043560051b6102a0016001820181526020810190508881526080602460208301376101608860a0528760c0525f60e0525f6102043593505f5b84811015611566578060400261028401602081610100376040816101203760208101358317925060208401935060e0608020845260a0850194508b85528a6020860152604081606087013750600101611512565b6001850160051b610160206060526102643594505b848110156115b6578060400261028401925060a0840193508a845289602085015260408360608601376020830135919091179060010161157b565b506001600160a01b038111156115d3576339f3e3fd5f526004601cfd5b50505050505f7fa66999307ad1bb4fde44d13a5d710bd7718e0c87c1eef68a571629fbf5b93d029050806080528360a052606060c460c0376020610104610120375060c06080205f9081526020812060e05260843590611647826001600160a01b03165f9081526020819052604090205490565b7ffa445660b7e21515a59617fcd68910b487aa5808b8abda3d78bc85df364b2c2f60808190529091506040608460a03760605161010052896101205260a061014461014037816101e05261018060802094505050506102043560051b61018001828152336020820152608060408201526101206060820152600160808201528360a0820152606060c460c083013760a061026435026101e00160a4356084357f9d9af8e38d66c62e2c12f0225249fd9d721c54b83f48d9352c97c6cacdcb6f318385a35f60605260608101820160405250505f61172383612f8d565b905061172f8389612fde565b7101000000000000000000000000000001000182559150509550959350505050565b60c43560843560e4356101043584156117b9575f6040519050632671a55160e11b815260206004820152600160248201528660448201528460648201528360848201523360a48201528260c48201528160e48201526117b38682610104613033565b50611801565b60028660058111156117cd576117cd615329565b036117f457806001146117e3576117e3816130ea565b6117ef848433856130fb565b611801565b61180184843385856131b0565b505050505050565b346064356084356102643560061b5f80805b8381101561185a5761028481013592506102a481013591508683111561184357611843613287565b82870396506118528284613294565b60400161181b565b508585111561186b5761186b613287565b6118758486613294565b848611156118015761180133868803613294565b61189381836132ca565b816118ba57826001146118a9576118a9836130ea565b6118b5878787876130fb565b6118cb565b6118cb828260028a8a8a8a8a6132e8565b50505050505050565b6118dd83613367565b6118e781836132ca565b816118f9576118b587878787876131b0565b6118cb828260038a8a8a8a8a6132e8565b5f805f805f861561192f57505060843592503391505060c4356101043560e435611944565b50339350506084359150506024356064356044355b801561195257611952613379565b50600586901b6101e403356102643560061b5f80805b838110156119a95761028481013592506102a481013591508a156119935761199083876159b4565b95505b6119a1878a8486898f613386565b604001611968565b506119b886898988888e613386565b50505050505050505050565b60408151146119d05750565b5f6119dc826020015190565b90506103dc81836133bb565b611a048260a4355b331415600182116004909210919091161690565b15611a5957805f611a13825190565b9050608081901c63ffffffff8216611a3484826317b1f94282526001905250565b601c840163fb5014fc6060529350611a5060a4358886856133df565b5f6060526118cb565b505050565b7f00000000000000000000000000000000000000000000000000000000000000018015611a8f575f63929eee145d50565b63929eee145480611aa5575f63929eee145d5050565b50600163929eee145550565b7f00000000000000000000000000000000000000000000000000000000000000018015611af05763929eee145c156103b057637fa8a9875f526004601cfd5b63929eee145480611b135763929eee145c156103dc57637fa8a9875f526004601cfd5b600181146103dc57637fa8a9875f526004601cfd5b80838337505050565b5f63ffffffff8235166040519150808252602082018160051b81018060a084026020870183378293505b81841015611b745780845260209093019260a001611b5b565b60405250919392505050565b9052565b5f63ffffffff8235166040519150808252602082018160051b81018060c084026020870183378293505b81841015611b745780845260209093019260c001611bae565b5f611bd960a060408051918201905290565b9050611be782826080611b28565b611c04611bfd611bf8846080610cdc565b613427565b6080830152565b919050565b5f63ffffffff8235166040519150808252602082018160051b8101808360061b6020870183378293505b81841015611b7457808452602090930192604001611c33565b60605f611c5960016124cb565b86515f90600160e61b82351690806001600160401b03811115611c7e57611c7e61574b565b604051908082528060200260200182016040528015611ca7578160200160208202803683370190505b50945060010160051b91505f60205b83811015611ea8575f611ccc8c83613cce6104da565b90505f805f611cdb848e61256c565b6001600160781b0382166020880152919450925090505f829003611d025750505050611ea0565b6001600160781b0381166040808601919091528a8601849052845160a081015160c0820151608083015192909301518051600184119d909d179c600490931099509092915f5b81811015611dea575f838281518110611d6357611d63615792565b602002602001015190508b8151108d179c505f611d858989846080015161345e565b90508160800151826060015103611da25760608201819052611db7565b611db18989846060015161345e565b60608301525b5f611dd08360600151838a8a611dcb361590565b61349a565b606084018190526080909301929092525050600101611d48565b5087516060015180515f5b81811015611e94575f838281518110611e1057611e10615792565b602002602001015190505f611e2a8b8b846080015161345e565b90508160800151826060015103611e475760608201819052611e5c565b611e568b8b846060015161345e565b60608301525b5f611e718360600151838c8c611dcb36151590565b6060840181905260a0840180516080909501949094529092525050600101611df5565b50505050505050505050505b602001611cb6565b50506001600160e61b018103611ec057611ec06134ed565b50611ecb8888612764565b5f8060205b8381101561200e578581015192508215612006575f611ef28c83613cce6104da565b9050885f03611f0d575f878301819052602090910152612006565b60048151608001516004811115611f2657611f26615329565b14611fa957611f3f8188866001600587901c038e6134fa565b611f55575f878301819052602090910152612006565b602080820151604083015183516080810151930151611f8e9388936001600160781b039081169316913314156001909111168e17612a2f565b611fa4575f878301819052602090910152612006565b611fd4565b611fbb815f015182608001518c612b33565b878301819052935083611fd4575f602090910152612006565b886001900398505f815f01519050611fff85825f015183602001518c85604001518660600151612df3565b6001935050505b602001611ed0565b508061201c5761201c613555565b5050509550959350505050565b85518551606091829161203c81836159c7565b6001600160401b038111156120535761205361574b565b60405190808252806020026020018201604052801561208c57816020015b61207961505a565b8152602001906001900390816120715790505b5092505f5b828110156120e4576120bf8c5f8d84815181106120b0576120b0615792565b60200260200101518c8c613562565b8482815181106120d1576120d1615792565b6020908102919091010152600101612091565b505f5b8181101561213d576121168c60018c848151811061210757612107615792565b60200260200101518c5f613562565b848483018151811061212a5761212a615792565b60209081029190910101526001016120e7565b5061214b8b84888a896135b1565b9350505097509795505050505050565b5f61216c6040808051918201905290565b905061218661218261217d84610aa3565b61389a565b8252565b611c046121976110a3846020610cdc565b6020830152565b5f6121b38260600151518361014001516138b9565b81516001600160a01b03165f90815260208190526040902054610402908390610b30565b82545f90610100900460ff16156121fe5781156121f7576121f7856138c9565b505f610622565b83546201000090046001600160781b0316801561225957831561222957612224866138da565b612259565b8454600160881b90046001600160781b0316811061225957821561225057612250866138eb565b5f915050610622565b50600195945050505050565b632165628a5f526004601cfd5b33831480156122815750505050565b5f61228a612e58565b61190160f01b5f9081526002828152602287815260428320908390528651939450929190601f601d840116106102e260621984011016156122f4576122cf86886138fc565b61190160f01b5f908152600286905260228281526042822091905290975090506122f7565b50815b612304888285858a613992565b5050505050505050565b5f61231f6040808051918201905290565b9050612330612182610d9d84610aa3565b611c04612197610d9d846020610cdc565b80518060051b6040019050602082038051602082527f4b9f2d36e1b4c93de62cc077b00b1a91d84b6c31b4a14e012718dcca230689e78383a190525050565b8351606090806001600160401b0381111561239d5761239d61574b565b6040519080825280602002602001820160405280156123d657816020015b6123c361505a565b8152602001906001900390816123bb5790505b5091505f5b81811015612439575f8782815181106123f6576123f6615792565b6020026020010151905061241389825f0151836020015185613adb565b84838151811061242557612425615792565b6020908102919091010152506001016123db565b5061244787838787876135b1565b50505b95945050505050565b6124608282610160611b28565b612471610aeb610ae6846040610cdc565b6103dc612482610b01846060610cdc565b6060830152565b6040518135601f0163ffffffe01660200180838337913563ffffffff16815290810160405290565b5f6124c3602060408051918201905290565b5f8152905090565b7f000000000000000000000000000000000000000000000000000000000000000180156125185763929eee145c1561250a57637fa8a9875f526004601cfd5b8160010163929eee145d5050565b63929eee14548061254a5763929eee145c1561253b57637fa8a9875f526004601cfd5b8260010163929eee145d505050565b6001811461255f57637fa8a9875f526004601cfd5b505060020163929eee1455565b5f805f80855f015190506125898160a001518260c0015187613c80565b61259c57505f925082915081905061275d565b602086015160408701516001600160781b0391821694501691505f6004826080015160048111156125cf576125cf615329565b036125fc57600183850218905080156125ea576125ea613ca3565b506001935083925082915061275d9050565b50818311831517801561261157612611613ca3565b608082015160011615848411161561262b5761262b613cb0565b6126348261219e565b5f81815260016020526040812091965061265290879083908a6121d7565b61266557505f935083925061275d915050565b805460ff1661268057612680835f0151878a60600151612272565b8054608881901c8061269457869150612757565b6001600160781b038260101c169150600186036126b8578181039650809550612757565b8086036126d357908601858103868211029096039590612757565b80860296810291909502810186810387821102918290039695919003906001600160781b0386111561275757612717565b5f5b8215610b2657908290069190612706565b61272a6127248784612704565b88612704565b8015019687900496909504946001600160781b0386111561275757634e487b715f5260116020526024601cfd5b50505050505b9250925092565b805182515f5b82811015612853575f84828151811061278557612785615792565b602002602001015190505f815f015190508381106127aa576127aa8260200151613cbd565b5f8782815181106127bd576127bd615792565b6020026020010151905080602001516001600160781b03165f036127e35750505061284b565b80516040808201519085015163bfb3f8ce5f8760200151600181111561280b5761280b615329565b14612827575f61281c856060613cce565b9350636088d7de9150505b8251821061283857805f526004601cfd5b612843838389613cd9565b505050505050505b60010161276a565b505f5b818110156128d6575f85828151811061287157612871615792565b6020026020010151905080602001516001600160781b03165f0361289557506128ce565b8051608081015160608201516128b29085908363a8930e9a613d8c565b6128ca8483604001518363d69293326104da613d8c90565b5050505b600101612856565b5050505050565b60a084015160c08501516040860151515f805b8281101561295a575f8960400151828151811061290f5761290f615792565b602002602001015190505f815f01519050801584179350505f612946826060015183608001518c8c8b8b612941361590565b613df3565b6060830152506080018690526001016128f0565b5060808801516004811082168015612974576129746134ed565b505050506060860151515f5b81811015612304575f8860600151828151811061299f5761299f615792565b602002602001015190505f6129c4826060015183608001518b8b8a8a61294136151590565b60608301525060a0810151608090910152600101612980565b8351608081015160208201513314156001821160049092109190911616156128d6575f80612a12858489608001518988613e2e565b63fb5014fc6060529092509050611a5083602001518684846133df565b5f848152600160205260408120805482908290608881901c80612a5457889150612adc565b6001600160781b038260101c169150808803612a7857908801878111935090612adc565b97880297808802979190910288018781119350906001600160781b038083119089111715612adc57612aaa8883612704565b8015019788900497909104906001600160781b038083119089111715612adc57634e487b715f5260116020526024601cfd5b508215612b15578515612b09576040516310fda3e160e01b8152600481018a905260240160405180910390fd5b5f945050505050610622565b8660881b8160101b1760011782556001945050505050949350505050565b5f83610140015184606001515114612b4d57612b4d612265565b83515f8080612b5c8888613fac565b915091505f8082845f885af16001600160a01b0385165f908152600260205260409020805460018101909155606086901b189550925082612bbb578515612bae57612ba5614056565b612bae8561409d565b505f93506104f192505050565b505050505f805f612bd8876040015188606001516104da6140ae90565b925092509250825f14612bee57612bee8461409d565b60408701919091526060860152509392505050565b6040805160208082528183019092525f916020820181803683375050506040850151519091505f5b81811015612c7b575f86604001518281518110612c4a57612c4a615792565b60200260200101519050846080820152612c7281885f0151896101200151876104da61432790565b50600101612c2b565b50506060840151515f90815b81811015612d09575f87606001518281518110612ca657612ca6615792565b602002602001015190505f6005811115612cc257612cc2615329565b81516005811115612cd557612cd5615329565b03612cf1574793508381606001511115612cf157612cf1613287565b612d00813389886143276104da565b50600101612c87565b5050612d14826119c4565b504780156128d6576128d63382613294565b8251608081015160208201515f92839283928392916004811060019091111633909114151615612d8857612d69612d6361010083015190565b5190565b8861441c565b9093509150612d7a60208201612d5f565b945063fb5014fc9350612dd4565b600481608001516004811115612da057612da0615329565b0361230457805194505f8560601b9050612dc187838b608001518b8561445d565b639397928596509094509250612dd49050565b612dde6060859052565b612dea858785856133df565b5f606052612304565b60608290506060829050856001600160a01b0316876001600160a01b03167f9d9af8e38d66c62e2c12f0225249fd9d721c54b83f48d9352c97c6cacdcb6f318a888686604051612e469493929190615a13565b60405180910390a35050505050505050565b5f7f00000000000000000000000000000000000000000000000000000000000005394614612f10575060408051608080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f5f9081527f32b5c112df393a49218d7552f96b2eeb829dfb4272f4f24eef510a586b85feef6020527f95f740a33d720b7cd93c75d515ac95ca3bbaa2594cce46ea48e00974ea8fcd14855246606090815230845260a08220949095529093529190915290565b507f8bebed3dbe91a82da0dc94c8d370c160ad6db1b32164303e65b8544bae7e2f5590565b63fed398fc5f526004601cfd5b600435602014610224356102401416610244356102606102643560061b01141660186101243510600160a01b60843560a4351760c4356024351717101616806103b0576103b0614528565b5f8181526001602081905260409091209060843590612fb290849084903615156121d7565b50815460ff16610b2657610b268184612fd9602463ffffffff6102443516016124896104da565b612272565b5f612feb8260a4356119f0565b15610402575f805f612ffc86614535565b63fb5014fc6060529194509250905061301c60a43587601c8601856133df565b5f60605260209190910160801b1781529392505050565b604080517f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c60ff60a01b175f90815260208690527f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f83526055600b20919092526001600160a01b031690505f805f805260205f85875f875af191505f519050816130c8576130bf614056565b6130c8836145ed565b6001600160e01b03198116632671a55160e11b146118015761180186846145fe565b6369f958275f52806020526024601cfd5b833b61311257635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af1806131a2573d1561318057601f3d0160051c8260051c8160030281831115613169578183036003028280028480020360091c01015b5a60208201101561317c573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b6131c757635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af18061326c573d1561324b57601f3d0160051c8560051c8160030281831115613234578183036003028280028480020360091c01015b5a602082011015613247573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b638ffff9805f526004601cfd5b61329d81613367565b5f805f805f85875af1905080611a59576132b5614056565b63bc806b965f5282602052816040526044601cfd5b5f6132d6836020015190565b9050818114611a5957611a59836119c4565b5f60208851036133225750604080885260208089018a9052632671a55160e11b918901919091526044880152600160648801819052613331565b50606487018051600101908190525b603c60c082028901038781528660208201528560408201528460608201528360808201528260a082015250505050505050505050565b806103b0576391b3e5145f526004601cfd5b636ab37ce75f526004601cfd5b61338f83613367565b61339981836132ca565b816133aa576117ef86868686614613565b611801828260018989895f8a6132e8565b6064810151604082019060c0026044016133d6848383613033565b50506020905250565b5f806001600160e01b03198451165f805260205f85875f8b5af15f51909350149050816134185761340e614056565b846080526024607cfd5b8061180157846080526024607cfd5b5f8063ffffffff83351690506001810160051b61344a8160408051918201905290565b9250613457848483611b28565b5050919050565b5f82840361346d5750806104f1565b82848309156134835763c63cf0895f526004601cfd5b5f61348e8584615aaf565b93909304949350505050565b5f8486146134e357838303428590038082035f6134b7838a615aaf565b6134c1838c615aaf565b6134cb91906159c7565b9050858487830304018115150294505050505061244a565b5092949350505050565b6312d3f5a35f526004601cfd5b8451608081015160208201515f92916004811060019091111633909114151615610f50575f8061353187848b608001518b8a613e2e565b9150915061354b836020015188848463fb5014fc8a614707565b935050505061244a565b63d5da9a1b5f526004601cfd5b61356a61505a565b83515f0361357b5761357b85614774565b5f85600181111561358e5761358e615329565b036135a45761359f86858385614785565b61244a565b61244a86858333876148f5565b84516060905f816001600160401b038111156135cf576135cf61574b565b6040519080825280602002602001820160405280156135f8578160200160208202803683370190505b506040805160208082528183019092529192505f9190602082018180368337505089519192505060010160051b60205b81811015613687575f61363e8b83613cce6104da565b8051606081015191925090801561367c57478111825115161561366857638ffff9805f526004601cfd5b61367c828460200151856040015189614327565b505050602001613628565b50505f5b838110156137f3575f8a82815181106136a6576136a6615792565b6020026020010151905080602001516001600160781b03165f036136ed575f8483815181106136d7576136d7615792565b91151560209283029190910190910152506137eb565b600184838151811061370157613701615792565b911515602092830291909101909101528051604081015180515f5b81811015613786575f83828151811061373757613737615792565b6020026020010151905080606001515f1461377357608081018051908e9052855161012087015161376d9184918c6143276104da565b60808201525b608081015160609091015260010161371c565b505050606081015180515f5b818110156137e5575f8382815181106137ad576137ad615792565b602002602001015190505f81606001519050805f146137d1576137d1888483614a2c565b5060a0810151606090910152600101613792565b50505050505b60010161368b565b506137fd816119c4565b47801561380e5761380e3382613294565b8515613884575f5b848110156138825783818151811061383057613830615792565b60200260200101511561387a5761387a8b828151811061385257613852615792565b60200260200101518a8b848151811061386d5761386d615792565b6020026020010151612d26565b600101613816565b505b61388c611a5e565b509098975050505050505050565b5f6138ad61016060408051918201905290565b9050611c048282612453565b808210156103dc576103dc614a45565b631a5155745f52806020526024601cfd5b63ee9e0e635f52806020526024601cfd5b6310fda3e15f52806020526024601cfd5b5f805f84516001811660410380820360051c9250808752806020018701915050805160e81c6003820191506001811660051b868152825160208218525060015b838110156139685760405f2082821c60051b60209081169182529384018051919094185260010161393c565b50505060405f2091505f61397b82614a52565b5f9081526020939093525050604090209392505050565b5f805f528151602083038051826041035f600182116139f557604087015160608801515f1a83156139d657601b8260ff1c0190506001600160ff1b03821660408a01525b88528a855260205f60808760015afa508385528588526040880152505f515b8a148a1515169450849050613abe57858552604082526044850380516040870351630b135d3f60e11b835289604089035260205f60648b01858f5afa96508615613ab257630b135d3f60e11b5f5114613ab2578b3b15613a5c57634f7fb80d5f526004601cfd5b6001866041031115613a7557638baa579f5f526004601cfd5b64010100000060608901515f1a1a15604187141615613aa557631f003d0a5f5260608801515f1a6020526024601cfd5b63815e1d645f526004601cfd5b8385529152603f198601525b5050508061180157613ace614056565b634f7fb80d5f526004601cfd5b613ae361505a565b8251158451151715613afc576398e9db6e5f526004601cfd5b613b0461505a565b613b118685835f806148f5565b805160608101515f03613b2657509050610622565b613b368787858460800151614785565b82516040828101519082015160208085015190840151855185511891181791181715613b6d5763bced929d5f52846020526024601cfd5b806060015182606001511115613bf4575f865f81518110613b9057613b90615792565b60200260200101519050816060015183606001510389825f015181518110613bba57613bba615792565b60200260200101515f015160600151826020015181518110613bde57613bde615792565b6020026020010151606001818152505050613c75565b5f875f81518110613c0757613c07615792565b60200260200101519050826060015182606001510389825f015181518110613c3157613c31615792565b60200260200101515f015160400151826020015181518110613c5557613c55615792565b602002602001015160600181815250508260600151826060018181525050505b505050949350505050565b428084111590831116818015613c94575080155b156104f1576104f18484614e61565b635a052b325f526004601cfd5b63a11b63ff5f526004601cfd5b63133c37c65f52806020526024601cfd5b5f6104f18284015190565b5f838381518110613cec57613cec615792565b602002602001015190505f815f01519050613d078160031090565b613d1357613d13614e76565b60408201518015613d3657613d318460600151828660800151614e83565b613d49565b60808401515115613d4957613d49614ecd565b6004821460030383816005811115613d6357613d63615329565b90816005811115613d7657613d76615329565b9052505050606090920151604090910152505050565b82515f5b81811015611801575f858281518110613dab57613dab615792565b60209081029190910101518051604082015191925090600382116004881415821515171615613de557855f5288602052836040526044601cfd5b505050806001019050613d90565b5f868803613e0d57613e0686868961345e565b90506107df565b6107dc613e1b87878b61345e565b613e2688888b61345e565b86868661349a565b5f805f613e39614eda565b6301e4d72a815260208082015260408101898152336060830152601c820194509091508751604082015287613e79613e7260a083015190565b60e0840152565b613e8f613e8760c083015190565b610100840152565b613ea5613e9d60e083015190565b610120840152565b610140613eb3816060850152565b5f613ebf604084015190565b90505f613ece82848701614ee4565b928301929050613edf836080870152565b5f613eeb606086015190565b90505f613efa82868901614f4a565b948501949050613f0b8560a0890152565b5f613f188e878a01614faf565b959095019450613f298560c0890152565b8685015f613f378e83614fce565b602497019687019a50613f539050613f4e8c8c0190565b614ffe565b8060408b901b60808b901b17178f610100018181525050613f7d8c82611b8090919063ffffffff16565b60058c8e51613f8c91906159b4565b613f97911b8b6159b4565b99505050505050505050509550959350505050565b5f8083613fb7614eda565b639891976581523360208201908152608060408301819052601c9092019450905f613fe3604085015190565b90505f613ff282848601614ee4565b928301929050614003836040860152565b5f61400f606087015190565b90505f61401e82868801614ee4565b94850194905061402f856060880152565b895f61403d82898901614faf565b9a9d96909a016004019b50949950505050505050505050565b3d1561409b57601f3d0160051c60405160051c8160030281831115614088578183036003028280028480020360091c01015b5a602082011015611a59573d5f803e3d5ffd5b565b63939792855f52806020526024601cfd5b60603d105f8080808080866141205760405f803e5f51935060205192503d60208501113d60208501118082179850505086614120576020845f3e5f51915060208360203e60205190508160071b60208501018160a0026020850101803d10823d101761ffff8486171117985050505f80525b86614152575f8061413584602088018d61415b565b9250975061414783602087018c61423b565b929092179850909550505b5050505061275d565b5f806040519150825160c08602602001830160405285835260208660010160051b8085018360010160051b8701614199858b81811090829003020190565b60010160051b8a861196505b808510156141f957828589015260808a843e6060830151955085608084015260608201518681116141d685856142e2565b17881797505060808a01995060a08301925060a0820191506020850194506141a5565b50505b8183101561422f578083870152608088823e6060810151608082015260808801975060a0810190506020830192506141fc565b50505050935093915050565b604051815180851190808603818710028101602060e08202850181016040528185526001928301600590811b87019390920190911b908185015b8282101561422f57808287015260a088823e60206060890160a083013e606081015160608501516142b26080840151608088015180159114171590565b818311176142c084886142e2565b60a09b909b019a179690961795505060c0938401936020929092019101614275565b5f81516040830151801560038311161561430457506040840151600119909101905b604085015181148551831460208701516020870151141616159250505092915050565b5f8451600581111561433b5761433b615329565b0361437857604084015160208501516001600160a01b0316171561436157614361613379565b61437384608001518560600151613294565b614416565b60018451600581111561438d5761438d615329565b036143be576040840151156143a4576143a4613379565b614373846020015184866080015187606001518686613386565b6002845160058111156143d3576143d3615329565b036143f7576143738460200151848660800151876040015188606001518787611889565b61441684602001518486608001518760400151886060015187876118d4565b50505050565b608082901c63ffffffff604084901c811690808516906144449084906317b1f94290611b8016565b601c830192506144548482614fce565b50509250929050565b5f80614467614eda565b63f4dd92ce815287841860a0820152601c8101925060200160a0808252875f614491604083015190565b90505f6144a082858701614ee4565b9384019390506144b1846020870152565b5f6144bd606085015190565b90505f6144cc82878901614f4a565b9586019590506144dd866040890152565b5f6144ea8d888a01614faf565b9687019690506144fb8760608a0152565b5f6145088d898b01614fce565b905080880197508760040199505050505050505050509550959350505050565b6339f3e3fd5f526004601cfd5b6301e4d72a6102043560051b6080019081525f808260208082015260408101858152336060830152601c919091019061456f608435610aeb565b61458061014460e083016060611b28565b61014061458e816060840152565b61459c60a082016080840152565b61016060a06102643581029290920101906145b8908290840152565b6145c25f82840152565b6020016145d08160c0840152565b5f9181019182526020820196909652939560449095019492505050565b63d13d53d45f52806020526024601cfd5b631cf99b265f5281602052806040526044601cfd5b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166146f85780873b1515166146f857806146e757816146ca573d156146a957601f3d0160051c8360051c8160030281831115614692578183036003028280028480020360091c01015b5a6020820110156146a5573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b5f805f6001600160e01b03198751165f805260205f888a5f8e5af15f5190935014905081614753578361473e575f925050506106d7565b614746614056565b845f52876020526024601cfd5b8061476557845f52876020526024601cfd5b50600198975050505050505050565b63375c24c15f52806020526024601cfd5b5f805f85865160051b87015b808210156148a2576020820191508851825151106147b1576147b16148d6565b81515160051b60208a01015180516020845101515f6040830151602085015115815184101517156147e6575050505050614791565b8260051b60208201015191505060608101935083518901915083511589831060011b17881797508198505f84528a51935086156001811461484f5760608220881860408d01516101208601511860208e015186511817171561484a5761484a6148d6565b614898565b8151855260208201516020860152604082015160408601528a6080860152835160208d015261012084015160408d015260608520975060208d0192508683181561489857865183525b5050505050614791565b5050508160608551015280156148cf57600181036148c7576391b3e5145f526004601cfd5b6148cf6148e3565b5050614416565b637fda72795f526004601cfd5b634e487b715f5260116020526024601cfd5b5f805f86875160051b88015b808210156149f7576020820191508151518a518110614922576149226148d6565b8060051b60208c01015190506020835101515f606083510151602084015115815184101517156149555750505050614901565b8260051b60208201015191505060608101925082518801915082511588831060011b17871796508197505f83528a5192508515600181146149a75760a0822087146149a2576149a26148d6565b6149ee565b815184526020820151602085015260408201516040850152608082015160808501528a60208d01528960408d015260a08220965060208d019250858318156149ee57855183525b50505050614901565b50508551606001839052508015614a255760018103614a1d576391b3e5145f526004601cfd5b614a256148e3565b50506128d6565b63a5f542085f528260205281604052806060526064601cfd5b63466aa6165f526004601cfd5b5f614e58565b5f6009821015614bb1576005821015614b0e576003821015614ac1577f832c58a5b611aadcfa6a082ac9d04bace53d8278387f10040347b7e98eb5b30260018314027fbf8e29b89f29ed9b529c154a63038ffca562f8d7cd1e2545dda53a1b582dde3018610402565b7ff3e8417a785f980bdaf134fa0274a6bf891eeb8195cd94b09d2aa651046e28bc60038314027fa02eb7ff164c884e5e2c336dc85f81c6a93329d8e9adf214b32729b894de2af118610402565b6007821015614b64577f25d02425402d882d211a7ab774c0ed6eca048c4d03d9af40132475744753b2a360058314027f1c19f71958cdd8f081b4c31f7caf5c010b29d12950be2fa1c95070dc47e30b5518610402565b7fb58d772fb09b426b9dece637f61ca9065f2b994f1464b51e9207f55f7c8f594860078314027f7ff98d9d4e55d876c5cfac10b43c04039522f3ddfb0ea9bfe70c68cfb5c7cc1418610402565b6011821015614d0957600d821015614c6657600b821015614c19577f6f0ec38c21f6f583ab7f3c5413c773ffd5344c34fde1d390958e438bf667448f60098314027fd1d97d1ef5eaa37a4ee5fbf234e6f6d64eb511eb562221cd7edfbdde0848da0518610402565b7f32f4e7485d6485f9f6c255929b9905c62ba919758bbe231f231eaeecf33d810c600b8314027fbb98d87cc12922b83759626c5f07d72266da9702d19ffad6a514c73a89002f5f18610402565b600f821015614cbc577f8df51df98847160517f5b1186b4bc3f418d98b8a7f17f1292f392d79d600d79e600d8314027f6b5b04cbae4fcb1a9d78e7b2dfc51a36933d023cf6e347e03d517b472a85259018610402565b7fcc4886e37eedd9aacd6c1c2c9247197a621a71282e87a7cbc673f3736d9aa141600f8314027f1da3eed3ecef6ebaa6e5023c057ec2c75150693fd0dac5c90f4a142f9879fde818610402565b6015821015614db5576013821015614d68577f2d7a3ed6dab270fdb8e054b2ad525f0ce2a8b89cc76c17f0965434740f673a5560118314027fc3939feff011e53ab8c35ca3370aad54c5df1fc2938cd62543174fa6e7d8587718610402565b7f54b3212a178782f104e0d514b41a9a5c4ca9c980bf6597c3cecbf280917e202a60138314027f5a4f867d3d458dabecad65f6201ceeaba0096df2d0c491cc32e6ea4e6435001718610402565b6017821015614e0b577fbb40bf8cea3a5a716e2b6eb08bbdac8ec159f82f380783db3c56904f15a43d0460158314027f3bd8cff538aba49a9c374c806d277181e9651624b3e31111bc0624574f8bca1d18610402565b7f403be09941a31d05cfc2f896505811353d45d38743288b016630cce39435476a60178314027f1d51df90cba8de7637ca3e8fe1e3511d1dc2f23487d05dbdecb781860c21ac1c18610402565b61040282614a58565b6321ccfeb75f5281602052806040526044601cfd5b6394eb6af65f526004601cfd5b5f835f5260205f2060208301835160051b81015b80821015614ebe57815180841160051b93845260209384185260405f209290910190614e97565b50508314905080614416576144165b6309bde3395f526004601cfd5b5f61041260405190565b5f825180835260208401602084018260051b82015b80831015614f375782518051835260208101516020840152604081015160408401526060810151606084015250602083019250608082019150614ef9565b5050508060071b60200191505092915050565b5f80614f54845190565b8084529050602084810190600583901b860181019085015b82821115614f9c575f614f7e84615008565b9050614f8c818360a0615011565b506020929092019160a001614f6c565b60a0840260200194505050505092915050565b5f63ffffffe0603f614fbf855190565b01169050610402838383615011565b5f80614fd8845190565b8084529050600581901b614ff3602086810190860183615011565b602001949350505050565b6103b06040829052565b5f610402825190565b8082828560045afa80153d151715614416575f80fd5b6040518060a0016040528061503a61509c565b81525f602082018190526040820152606080820181905260809091015290565b60408051610100810182525f606082018181526080830182905260a0830182905260c0830182905260e083018290528252602082018190529181019190915290565b6040518061016001604052805f6001600160a01b031681526020015f6001600160a01b0316815260200160608152602001606081526020015f60048111156150e6576150e6615329565b81525f6020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b5f60208284031215615125575f80fd5b81356001600160401b0381111561513a575f80fd5b820161024081850312156104f1575f80fd5b5f81518084525f5b8181101561517057602081850181015186830182015201615154565b505f602082860101526020601f19601f83011685010191505092915050565b602081525f6104f1602083018461514c565b5f602082840312156151b1575f80fd5b5035919050565b5f602082840312156151c8575f80fd5b81356001600160401b038111156151dd575f80fd5b820161016081850312156104f1575f80fd5b5f8083601f8401126151ff575f80fd5b5081356001600160401b03811115615215575f80fd5b6020830191508360208260051b850101111561522f575f80fd5b9250929050565b80356001600160a01b0381168114611c04575f80fd5b5f805f805f805f805f805f60e08c8e031215615266575f80fd5b6001600160401b03808d35111561527b575f80fd5b6152888e8e358f016151ef565b909c509a5060208d013581101561529d575f80fd5b6152ad8e60208f01358f016151ef565b909a50985060408d01358110156152c2575f80fd5b6152d28e60408f01358f016151ef565b909850965060608d01358110156152e7575f80fd5b506152f88d60608e01358e016151ef565b909550935060808c0135925061531060a08d01615236565b915060c08c013590509295989b509295989b9093969950565b634e487b7160e01b5f52602160045260245ffd5b60068110611b8057611b80615329565b61535882825161533d565b6020818101516001600160a01b0390811691840191909152604080830151908401526060808301519084015260809182015116910152565b5f815180845260208085019450602084015f5b838110156153e55781516153b888825161534d565b808401516001600160a01b031660a08901526040015160c088015260e090960195908201906001016153a3565b509495945050505050565b604080825283519082018190525f906020906060840190828701845b8281101561542a57815115158452928401929084019060010161540c565b50505083810360208501526106d78186615390565b5f8060208385031215615450575f80fd5b82356001600160401b03811115615465575f80fd5b615471858286016151ef565b90969095509350505050565b5f805f8060408587031215615490575f80fd5b84356001600160401b03808211156154a6575f80fd5b6154b2888389016151ef565b909650945060208701359150808211156154ca575f80fd5b506154d7878288016151ef565b95989497509550505050565b602081525f6104f16020830184615390565b5f60208284031215615505575f80fd5b6104f182615236565b5f806040838503121561551f575f80fd5b82356001600160401b03811115615534575f80fd5b830160408186031215615545575f80fd5b946020939093013593505050565b5f805f805f60808688031215615567575f80fd5b85356001600160401b038082111561557d575f80fd5b9087019060a0828a031215615590575f80fd5b909550602087013590808211156155a5575f80fd5b506155b2888289016151ef565b909550935050604086013591506155cb60608701615236565b90509295509295909350565b5f805f805f805f8060a0898b0312156155ee575f80fd5b88356001600160401b0380821115615604575f80fd5b6156108c838d016151ef565b909a50985060208b0135915080821115615628575f80fd5b6156348c838d016151ef565b909850965060408b013591508082111561564c575f80fd5b506156598b828c016151ef565b999c989b509699959896976060870135966080013595509350505050565b5f805f805f805f6080888a03121561568d575f80fd5b87356001600160401b03808211156156a3575f80fd5b6156af8b838c016151ef565b909950975060208a01359150808211156156c7575f80fd5b6156d38b838c016151ef565b909750955060408a01359150808211156156eb575f80fd5b506156f88a828b016151ef565b909450925061570b905060608901615236565b905092959891949750929550565b606081525f61572b606083018661514c565b6020830194909452506001600160a01b0391909116604090910152919050565b634e487b7160e01b5f52604160045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b5f8261578d57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f815180845260208085019450602084015f5b838110156153e55781516157ce88825161533d565b838101516001600160a01b03168885015260408082015190890152606080820151908901526080908101519088015260a090960195908201906001016157b9565b5f815180845260208085019450602084015f5b838110156153e557815161583788825161533d565b808401516001600160a01b0390811689860152604080830151908a0152606080830151908a0152608080830151908a015260a091820151169088015260c09096019590820190600101615822565b60058110611b8057611b80615329565b828152604060208201526158b56040820183516001600160a01b03169052565b5f60208301516158d060608401826001600160a01b03169052565b5060408301516101608060808501526158ed6101a08501836157a6565b91506060850151603f198584030160a086015261590a838261580f565b925050608085015161591f60c0860182615885565b5060a085015160e085015260c0850151610100818187015260e0870151915061012082818801528188015192506101409150828288015280880151848801525080870151610180870152505050809150509392505050565b5f823561015e1983360301811261598c575f80fd5b9190910192915050565b5f602082840312156159a6575f80fd5b8135600581106104f1575f80fd5b818103818111156104025761040261575f565b808201808211156104025761040261575f565b5f815180845260208085019450602084015f5b838110156153e557615a0087835161534d565b60a09690960195908201906001016159ed565b5f6080808301878452602060018060a01b03808916602087015260406080604088015283895180865260a08901915060208b0195505f5b81811015615a8b578651615a5f84825161533d565b808701518616848801528481015185850152606090810151908401529585019591870191600101615a4a565b50508781036060890152615a9f818a6159da565b9c9b505050505050505050505050565b80820281158282048414176104025761040261575f56fea164736f6c6343000818000a","storage":{}},"0x6265cc8d1b28edfd4d76c80bf774c0d446fffbde":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610090575f3560e01c80633f15457f116100635780633f15457f1461010f5780637adbf973146101225780637dc0d1d0146101355780638bbedf7514610147578063be27b22c1461015a575f80fd5b806301ffc9a7146100945780631ecfc411146100bc578063224199c2146100d157806330349ebe146100e4575b5f80fd5b6100a76100a23660046115b1565b61016d565b60405190151581526020015b60405180910390f35b6100cf6100ca3660046115ef565b6101a3565b005b6100cf6100df3660046117e0565b6102de565b6002546100f7906001600160a01b031681565b6040516001600160a01b0390911681526020016100b3565b6001546100f7906001600160a01b031681565b6100cf6101303660046115ef565b61063c565b5f546100f7906001600160a01b031681565b6100cf610155366004611889565b61076d565b6100cf61016836600461190b565b6107f1565b5f6001600160e01b031982166301ffc9a760e01b148061019d57506001600160e01b031982166317d8f49b60e01b145b92915050565b6001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa1580156101ea573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061020e919061196b565b90505f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561024d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610271919061196b565b9050336001600160a01b03821614610287575f80fd5b600280546001600160a01b0319166001600160a01b0385169081179091556040519081527f9176b7f47e4504df5e5516c99d90d82ac7cbd49cc77e7f22ba2ac2f2e3a3eba8906020015b60405180910390a1505050565b5f546040516321ae60b160e11b81526001600160a01b039091169063435cc1629061030f90879087906004016119d3565b5f604051808303815f875af115801561032a573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526103519190810190611a6b565b92505f805f610360888761088b565b91945092509050336001600160a01b038216146103da5760405162461bcd60e51b815260206004820152602d60248201527f4f6e6c79206f776e65722063616e2063616c6c2070726f7665416e64436c616960448201526c36abb4ba342932b9b7b63b32b960991b60648201526084015b60405180910390fd5b6001600160a01b038416156105bb576001600160a01b03851661044e5760405162461bcd60e51b815260206004820152602660248201527f43616e6e6f74207365742061646472206966207265736f6c766572206973206e6044820152651bdd081cd95d60d21b60648201526084016103d1565b6001546040516305ef2c7f60e41b815260048101859052602481018490523060448201526001600160a01b0387811660648301525f608483015290911690635ef2c7f09060a4015f604051808303815f87803b1580156104ac575f80fd5b505af11580156104be573d5f803e3d5ffd5b505050505f83836040516020016104df929190918252602082015260400190565b60408051808303601f1901815290829052805160209091012062d5fa2b60e81b8252600482018190526001600160a01b03878116602484015290925087169063d5fa2b00906044015f604051808303815f87803b15801561053e575f80fd5b505af1158015610550573d5f803e3d5ffd5b5050600154604051635b0fc9c360e01b8152600481018590526001600160a01b0386811660248301529091169250635b0fc9c391506044015f604051808303815f87803b15801561059f575f80fd5b505af11580156105b1573d5f803e3d5ffd5b5050505050610632565b6001546040516305ef2c7f60e41b815260048101859052602481018490526001600160a01b03838116604483015287811660648301525f608483015290911690635ef2c7f09060a4015f604051808303815f87803b15801561061b575f80fd5b505af115801561062d573d5f803e3d5ffd5b505050505b5050505050505050565b6001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa158015610683573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106a7919061196b565b90505f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106e6573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061070a919061196b565b9050336001600160a01b03821614610720575f80fd5b5f80546001600160a01b0319166001600160a01b0385169081179091556040519081527fb3eacd0e351fafdfefdec84e1cd19679b38dbcd63ea7c2c24da17fd2bc3b3c0e906020016102d1565b5f546040516321ae60b160e11b81526001600160a01b039091169063435cc1629061079e90859085906004016119d3565b5f604051808303815f875af11580156107b9573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526107e09190810190611a6b565b90506107ec83826107f1565b505050565b5f805f6107fe858561088b565b6001546040516306ab592360e01b815260048101859052602481018490526001600160a01b03808416604483015294975092955090935091909116906306ab5923906064016020604051808303815f875af115801561085f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108839190611add565b505050505050565b5f8080806108998682610a40565b60ff1690506108aa86600183610a63565b92505f6108dc6108bb836001611b08565b6001848a516108ca9190611b1b565b6108d49190611b1b565b899190610a85565b6002546040516327c482cf60e11b81529192506001600160a01b031690634f89059e9061090d908490600401611b2e565b602060405180830381865afa158015610928573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061094c9190611b40565b6109a45760405162461bcd60e51b815260206004820152602360248201527f506172656e74206e616d65206d7573742062652061207075626c6963207375666044820152620ccd2f60eb1b60648201526084016103d1565b6109ae815f610b05565b5f549095506109c7906001600160a01b03168888610de3565b5060408051602081018890529081018690529093506001600160a01b03841690606001604051602081830303815290604052805190602001207fa2e66ce20e6fb2c4f61339c364ad79f15160cf5307230c8bc4d628adbca2ba3989604051610a2f9190611b2e565b60405180910390a350509250925092565b5f828281518110610a5357610a53611b5f565b016020015160f81c905092915050565b82515f90610a718385611b08565b1115610a7b575f80fd5b5091016020012090565b8251606090610a948385611b08565b1115610a9e575f80fd5b5f8267ffffffffffffffff811115610ab857610ab861160a565b6040519080825280601f01601f191660200182016040528015610ae2576020820181803683370190505b50905060208082019086860101610afa82828761100b565b509095945050505050565b5f80610b118484610a40565b60ff169050805f03610b2657505f905061019d565b5f610b4585610b358487611b08565b610b40906001611b08565b610b05565b90505f610b5e610b56866001611b08565b879085610a63565b604080516020810185905290810182905290915060600160408051808303601f190181529082905280516020909101206001546302571be360e01b8352600483018290529095505f916001600160a01b03909116906302571be390602401602060405180830381865afa158015610bd7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bfb919061196b565b90506001600160a01b0381161580610c1b57506001600160a01b03811630145b610c7a5760405162461bcd60e51b815260206004820152602a60248201527f43616e6e6f7420656e61626c652061206e616d65206f776e656420627920736f6044820152696d656f6e6520656c736560b01b60648201526084016103d1565b6001600160a01b0381163014610dd95782610d5e576001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa158015610cd6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cfa919061196b565b60405163232e3b3b60e21b8152600481018590523060248201529091506001600160a01b03821690638cb8ecec906044015f604051808303815f87803b158015610d42575f80fd5b505af1158015610d54573d5f803e3d5ffd5b5050505050610dd9565b6001546040516306ab592360e01b815260048101859052602481018490523060448201526001600160a01b03909116906306ab5923906064016020604051808303815f875af1158015610db3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610dd79190611add565b505b5050505092915050565b5f80610e016040518060400160405280606081526020015f81525090565b610e1985516005610e129190611b08565b8290611060565b50604080518082019091526005815264045f656e7360d81b6020820152610e419082906110c3565b50610e4c81866110c3565b50805160405163021e646f60e21b81525f9182916001600160a01b038a169163087991bc91610e8091601091600401611b73565b606060405180830381865afa158015610e9b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ebf9190611ba7565b93509150506bffffffffffffffffffffffff198216158015610ee057508551155b15610ef3575f8094509450505050611003565b855160208701206bffffffffffffffffffffffff19838116911614610f16575f80fd5b5f610f2187826110ef565b90505b80515160208201511015610ff857610f4b816080015183610f459190611bfc565b4261114a565b610fbd5760405162461bcd60e51b815260206004820152603c60248201527f444e53207265636f7264206973207374616c653b2072656672657368206f722060448201527f64656c657465206974206265666f72652070726f63656564696e672e0000000060648201526084016103d1565b5f80610fcd898460a00151611162565b925090508115610fe857965060019550611003945050505050565b5050610ff3816111d1565b610f24565b505f80945094505050505b935093915050565b602081106110435781518352611022602084611b08565b925061102f602083611b08565b915061103c602082611b1b565b905061100b565b905182516020929092036101000a5f190180199091169116179052565b60408051808201909152606081525f602082015261107f602083611c20565b156110a75761108f602083611c20565b61109a906020611b1b565b6110a49083611b08565b91505b506020828101829052604080518085525f815290920101905290565b60408051808201909152606081525f60208201526110e883845f0151518485516112b6565b9392505050565b6111376040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261019d816111d1565b5f806111568385611c3f565b60030b12159392505050565b5f805b83518310156111c4575f6111798585610a40565b60ff169050611189600185611b08565b93505f8061119887878561139c565b9250905081156111b0579350600192506111ca915050565b6111ba8387611b08565b9550505050611165565b505f9050805b9250929050565b60c081015160208201819052815151116111e85750565b5f6111fa825f015183602001516113f5565b82602001516112099190611b08565b82519091506112189082611454565b61ffff16604083015261122c600282611b08565b825190915061123b9082611454565b61ffff16606083015261124f600282611b08565b825190915061125e908261147a565b63ffffffff166080830152611274600482611b08565b82519091505f906112859083611454565b61ffff169050611296600283611b08565b60a0840181905291506112a98183611b08565b60c0909301929092525050565b60408051808201909152606081525f602082015282518211156112d7575f80fd5b60208501516112e68386611b08565b11156113195761131985611309876020015187866113049190611b08565b6114a2565b611314906002611c66565b6114b8565b5f808651805187602083010193508088870111156113375787860182525b505050602084015b602084106113775780518252611356602083611b08565b9150611363602082611b08565b9050611370602085611b1b565b935061133f565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b5f806113a8858561147a565b63ffffffff1663613d3078146113c257505f905080611003565b602c8310156113d557505f905080611003565b6113e9856113e4866004611b08565b6114d5565b91509150935093915050565b5f815b8351811061140857611408611c7d565b5f6114138583610a40565b60ff169050611423816001611b08565b61142d9083611b08565b9150805f0361143c5750611442565b506113f8565b61144c8382611b1b565b949350505050565b81515f90611463836002611b08565b111561146d575f80fd5b50016002015161ffff1690565b81515f90611489836004611b08565b1115611493575f80fd5b50016004015163ffffffff1690565b5f818311156114b257508161019d565b50919050565b81516114c48383611060565b506114cf83826110c3565b50505050565b5f8060288385516114e69190611b1b565b10156114f657505f9050806111ca565b5f835b611504856028611b08565b8110156115a55760049190911b905f61151d8783610a40565b60ff169050603081101580156115335750603a81105b1561154c57611543603082611b1b565b8317925061159c565b6041811015801561155d5750604781105b1561156d57611543603782611b1b565b6061811015801561157e5750606781105b1561158e57611543605782611b1b565b5f80945094505050506111ca565b506001016114f9565b50946001945092505050565b5f602082840312156115c1575f80fd5b81356001600160e01b0319811681146110e8575f80fd5b6001600160a01b03811681146115ec575f80fd5b50565b5f602082840312156115ff575f80fd5b81356110e8816115d8565b634e487b7160e01b5f52604160045260245ffd5b6040805190810167ffffffffffffffff811182821017156116415761164161160a565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156116705761167061160a565b604052919050565b5f67ffffffffffffffff8211156116915761169161160a565b50601f01601f191660200190565b5f82601f8301126116ae575f80fd5b81356116c16116bc82611678565b611647565b8181528460208386010111156116d5575f80fd5b816020850160208301375f918101602001919091529392505050565b5f82601f830112611700575f80fd5b8135602067ffffffffffffffff8083111561171d5761171d61160a565b8260051b61172c838201611647565b9384528581018301938381019088861115611745575f80fd5b84880192505b858310156117d457823584811115611761575f80fd5b88016040818b03601f1901811315611777575f80fd5b61177f61161e565b878301358781111561178f575f80fd5b61179d8d8a8387010161169f565b8252509082013590868211156117b1575f80fd5b6117bf8c898486010161169f565b8189015284525050918401919084019061174b565b98975050505050505050565b5f805f805f60a086880312156117f4575f80fd5b853567ffffffffffffffff8082111561180b575f80fd5b61181789838a0161169f565b9650602088013591508082111561182c575f80fd5b61183889838a016116f1565b9550604088013591508082111561184d575f80fd5b5061185a8882890161169f565b935050606086013561186b816115d8565b9150608086013561187b816115d8565b809150509295509295909350565b5f805f6060848603121561189b575f80fd5b833567ffffffffffffffff808211156118b2575f80fd5b6118be8783880161169f565b945060208601359150808211156118d3575f80fd5b6118df878388016116f1565b935060408601359150808211156118f4575f80fd5b506119018682870161169f565b9150509250925092565b5f806040838503121561191c575f80fd5b823567ffffffffffffffff80821115611933575f80fd5b61193f8683870161169f565b93506020850135915080821115611954575f80fd5b506119618582860161169f565b9150509250929050565b5f6020828403121561197b575f80fd5b81516110e8816115d8565b5f5b838110156119a0578181015183820152602001611988565b50505f910152565b5f81518084526119bf816020860160208601611986565b601f01601f19169290920160200192915050565b5f60408083016040845280865180835260608601915060608160051b870101925060208089015f5b83811015611a4b57888603605f1901855281518051888852611a1f898901826119a8565b9185015188830389870152919050611a3781836119a8565b9750505093820193908201906001016119fb565b505086840381880152505050611a6181866119a8565b9695505050505050565b5f60208284031215611a7b575f80fd5b815167ffffffffffffffff811115611a91575f80fd5b8201601f81018413611aa1575f80fd5b8051611aaf6116bc82611678565b818152856020838501011115611ac3575f80fd5b611ad4826020830160208601611986565b95945050505050565b5f60208284031215611aed575f80fd5b5051919050565b634e487b7160e01b5f52601160045260245ffd5b8082018082111561019d5761019d611af4565b8181038181111561019d5761019d611af4565b602081525f6110e860208301846119a8565b5f60208284031215611b50575f80fd5b815180151581146110e8575f80fd5b634e487b7160e01b5f52603260045260245ffd5b61ffff83168152604060208201525f61144c60408301846119a8565b805163ffffffff81168114611ba2575f80fd5b919050565b5f805f60608486031215611bb9575f80fd5b611bc284611b8f565b9250611bd060208501611b8f565b915060408401516bffffffffffffffffffffffff1981168114611bf1575f80fd5b809150509250925092565b63ffffffff818116838216019080821115611c1957611c19611af4565b5092915050565b5f82611c3a57634e487b7160e01b5f52601260045260245ffd5b500690565b600382810b9082900b03637fffffff198112637fffffff8213171561019d5761019d611af4565b808202811582820484141761019d5761019d611af4565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{"0x0":"0x9b2565a3545a1312bdcb6e7148a7f7cae8c2706b","0x1":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0x2":"0x287dee389caaa49edc112888f2bcfd927b472e25"}},"0x62b11ad5f582a5c5d378fb310125b030042554f1":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106103af5760003560e01c80637e37479e116101f4578063ba5d40b71161011a578063e985e9c5116100ad578063f5c1f76e1161007c578063f5c1f76e146108d8578063f7df5c60146108eb578063f8c8765e146108fe578063ffa1ad741461091157600080fd5b8063e985e9c51461087a578063ebf0c717146108b6578063ec129eea146108bd578063f25eb5c1146108d057600080fd5b8063c87b56dd116100e9578063c87b56dd1461082e578063ce92b33e14610841578063cf2c52cb14610854578063d9548e531461086757600080fd5b8063ba5d40b7146107b3578063baef73e9146107c6578063bb5b27e114610808578063bebec6b41461081b57600080fd5b8063a22cb46511610192578063ac9650d811610161578063ac9650d81461074c578063b3f9e4cb1461076c578063b85afd281461077f578063b88d4fde146107a057600080fd5b8063a22cb465146106e7578063a3f4df7e146106fa578063a424740014610726578063ab3b87fe1461073957600080fd5b80639508b1c4116101ce5780639508b1c4146106b15780639559c0bd146106c457806395d89b41146106cc57806399e0dd7c146106d457600080fd5b80637e37479e146106785780637eee288d1461068b57806394d008ef1461069e57600080fd5b806342842e0e116102d95780635096023911610277578063663f7b2a11610246578063663f7b2a14610610578063672b9f81146106235780636ccbae5f1461064457806370a082311461066557600080fd5b806350960239146105bb578063572b6c05146105ce5780636352211e146105ea578063638e5c78146105fd57600080fd5b806347c81699116102b357806347c816991461056f5780634a72584d146105825780634f558e791461059557806350382c1a146105a857600080fd5b806342842e0e1461053657806342966c6814610549578063430c20811461055c57600080fd5b80631bf7e13e1161035157806327f189751161032057806327f18975146104ea578063310bd74b146104fd5780633f72ec6e1461051057806340c10f191461052357600080fd5b80631bf7e13e146104905780631f71be06146104a357806323b872dd146104b6578063276fabb1146104c957600080fd5b8063095ea7b31161038d578063095ea7b31461041c578063150b7a02146104315780631bd8cc1a1461045d5780631be5e7ed1461047d57600080fd5b806301ffc9a7146103b457806306fdde03146103dc578063081812fc146103f1575b600080fd5b6103c76103c2366004613f0b565b610935565b60405190151581526020015b60405180910390f35b6103e4610946565b6040516103d39190613f78565b6104046103ff366004613f8b565b6109d8565b6040516001600160a01b0390911681526020016103d3565b61042f61042a366004613fb9565b6109ff565b005b61044461043f366004614026565b610a18565b6040516001600160e01b031990911681526020016103d3565b61047061046b3660046140dc565b610b72565b6040516103d3919061417f565b6103e461048b366004614192565b610c68565b6103e461049e3660046141c9565b610cb3565b61042f6104b1366004614249565b610dbe565b61042f6104c4366004614305565b610e54565b6104dc6104d7366004614346565b610ea7565b6040519081526020016103d3565b61042f6104f8366004614387565b610eb6565b61042f61050b366004613f8b565b610efe565b61042f61051e3660046143fa565b610f39565b61042f610531366004613fb9565b61103b565b61042f610544366004614305565b611088565b61042f610557366004613f8b565b6110a3565b6103c761056a366004613fb9565b6110e7565b61042f61057d366004614424565b6110f3565b61042f610590366004614485565b611132565b6103c76105a3366004613f8b565b611178565b61042f6105b636600461458c565b611197565b61042f6105c93660046145c0565b6111cd565b6103c76105dc3660046145c0565b6001600160a01b0316301490565b6104046105f8366004613f8b565b61122d565b61042f61060b366004613f8b565b61124a565b61042f61061e366004614678565b611295565b6106366106313660046146c0565b611336565b6040516103d39291906146e2565b6104dc610652366004613f8b565b6000908152610100602052604090205490565b6104dc6106733660046145c0565b61134e565b6104dc6106863660046145c0565b6113d4565b61042f610699366004613fb9565b611405565b61042f6106ac366004614707565b61145c565b61042f6106bf366004614762565b6114ab565b6104dc601481565b6103e4611532565b61042f6106e2366004614805565b611541565b61042f6106f536600461483a565b6115c8565b6103e46040518060400160405280600d81526020016c554e533a20526567697374727960981b81525081565b6103c76107343660046141c9565b6115da565b61042f610747366004613fb9565b611625565b61075f61075a366004614346565b61166a565b6040516103d39190614866565b61040461077a366004613f8b565b611746565b61079261078d3660046140dc565b611770565b6040516103d39291906148c8565b61042f6107ae3660046148ed565b611892565b61042f6107c1366004614249565b6118d9565b6107f06107d4366004613f8b565b600090815261013960205260409020546001600160401b031690565b6040516001600160401b0390911681526020016103d3565b6103e4610816366004613f8b565b611962565b6103e46108293660046145c0565b611a04565b6103e461083c366004613f8b565b611ace565b61042f61084f366004614387565b611b34565b61042f610862366004614958565b611b73565b6103c7610875366004613f8b565b611c42565b6103c761088836600461499f565b6001600160a01b039182166000908152606a6020908152604080832093909416825291909152205460ff1690565b60006104dc565b61042f6108cb366004614387565b611c85565b61042f611cc4565b6104706108e6366004614346565b611d4b565b61042f6108f93660046149d8565b611dfe565b61042f61090c366004614a0a565b611e8f565b6103e460405180604001604052806005815260200164302e392e3160d81b81525081565b600061094082612065565b92915050565b60606065805461095590614a66565b80601f016020809104026020016040519081016040528092919081815260200182805461098190614a66565b80156109ce5780601f106109a3576101008083540402835291602001916109ce565b820191906000526020600020905b8154815290600101906020018083116109b157829003601f168201915b5050505050905090565b60006109e3826120b5565b506000908152606960205260409020546001600160a01b031690565b80610a0981612114565b610a13838361217a565b505050565b60007f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378546001600160a01b0316610a4d61229c565b6001600160a01b031603610b0e57610a6361229c565b6001600160a01b03166342966c68856040518263ffffffff1660e01b8152600401610a9091815260200190565b600060405180830381600087803b158015610aaa57600080fd5b505af1158015610abe573d6000803e3d6000fd5b505050821580159150610ad85750610ad882840184614a9a565b15610af657610ae730856122ab565b610af185856123f9565b610b00565b610b0085856122ab565b50630a85bd0160e11b610b69565b60405162461bcd60e51b815260206004820152602560248201527f52656769737472793a204552433732315f524543454956494e475f50524f4849604482015264109255115160da1b60648201526084015b60405180910390fd5b95945050505050565b6060826001600160401b03811115610b8c57610b8c6144d7565b604051908082528060200260200182016040528015610bbf57816020015b6060815260200190600190039081610baa5790505b50905060005b83811015610c6057610c30858583818110610be257610be2614ab5565b9050602002810190610bf49190614acb565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508792506124a4915050565b828281518110610c4257610c42614ab5565b60200260200101819052508080610c5890614b27565b915050610bc5565b509392505050565b6060610cab84848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508692506124a4915050565b949350505050565b606060005a9050610cc58585856115da565b610d215760405162461bcd60e51b815260206004820152602760248201527f554e535265676973747279466f727761726465723a205349474e41545552455f6044820152661253959053125160ca1b6064820152608401610b60565b610db3610d3160208701876145c0565b30604088013584610d4560608b018b614acb565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284376000920191909152506124d992505050565b9150505b9392505050565b610134546001600160a01b0316610dd361229c565b6001600160a01b031614610df95760405162461bcd60e51b8152600401610b6090614b40565b6000610e0d610e08888a614b87565b6125ba565b509050610e1a8982611405565b610e278686868685612612565b8115610e4957610e498982610e44610e3f8b8d614b87565b612680565b612701565b505050505050505050565b80610e66610e6061229c565b82612743565b610e825760405162461bcd60e51b8152600401610b6090614b94565b81610e8c81612114565b610e95836127d4565b610ea0858585612841565b5050505050565b6000610c60610e088385614b87565b80610ec2610e6061229c565b610ede5760405162461bcd60e51b8152600401610b6090614b94565b81610ee881612114565b610ef587878787876129e8565b50505050505050565b80610f0a610e6061229c565b610f265760405162461bcd60e51b8152600401610b6090614b94565b81610f3081612114565b610a13836127d4565b610134546001600160a01b0316610f4e61229c565b6001600160a01b031614610f745760405162461bcd60e51b8152600401610b6090614b40565b610f7d816120b5565b42826001600160401b031611610fd55760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a204558504952595f494e5f5041535400000000000000006044820152606401610b60565b60008181526101396020908152604091829020805467ffffffffffffffff19166001600160401b038616908117909155915191825282917f93feabb03ab84f47fc85bf0c298103fca21d8c8bc376eae0c1e1c56b9d4f7789910160405180910390a25050565b611043612a4b565b6001600160a01b031661105461229c565b6001600160a01b03161461107a5760405162461bcd60e51b8152600401610b6090614bdd565b61108482826122ab565b5050565b610a1383838360405180602001604052806000815250611892565b806110af610e6061229c565b6110cb5760405162461bcd60e51b8152600401610b6090614b94565b816110d581612114565b6110de836127d4565b610a1383612b4c565b6000610db78383612743565b806110ff610e6061229c565b61111b5760405162461bcd60e51b8152600401610b6090614b94565b8161112581612114565b610ef58787878787612bf3565b8061113e610e6061229c565b61115a5760405162461bcd60e51b8152600401610b6090614b94565b8161116481612114565b61117086868686612cd2565b505050505050565b6000818152606760205260408120546001600160a01b03161515610940565b6111ca816040516020016111ab9190614c1f565b6040516020818303038152906040528051906020012060001c82612d72565b50565b610134546001600160a01b03166111e261229c565b6001600160a01b0316146112085760405162461bcd60e51b8152600401610b6090614b40565b6001600160a01b0316600090815261013660205260409020805460ff19166001179055565b600061123882611c42565b6112455761094082612d97565b919050565b80611256610e6061229c565b6112725760405162461bcd60e51b8152600401610b6090614b94565b61128461127d61229c565b3084612841565b61108461128f61229c565b836123f9565b60006112a0826125ba565b5090506112ab61229c565b6001600160a01b03166112bd8261122d565b6001600160a01b0316146113135760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b60565b61131c81612114565b61108461132761229c565b8261133185612680565b612df7565b6060806113438484612e7e565b909590945092505050565b60006001600160a01b0382166113b85760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b6064820152608401610b60565b506001600160a01b031660009081526068602052604090205490565b6001600160a01b038116600090815261013560205260408120546113f781612e9f565b6113ff578091505b50919050565b610134546001600160a01b031661141a61229c565b6001600160a01b0316146114405760405162461bcd60e51b8152600401610b6090614b40565b611449816127d4565b61108461145582612d97565b8383612841565b611464612a4b565b6001600160a01b031661147561229c565b6001600160a01b03161461149b5760405162461bcd60e51b8152600401610b6090614bdd565b6114a584846122ab565b50505050565b6114b58787612ee9565b6114bd61229c565b6001600160a01b03166114cf8661122d565b6001600160a01b0316146115255760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b60565b610ef58484848489612612565b60606066805461095590614a66565b610134546001600160a01b031661155661229c565b6001600160a01b03161461157c5760405162461bcd60e51b8152600401610b6090614b40565b61013361158a828483614c81565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b82826040516115bc929190614d69565b60405180910390a15050565b6110846115d361229c565b8383612f58565b6000610cab6115e885614d7d565b3085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061302692505050565b80611631610e6061229c565b61164d5760405162461bcd60e51b8152600401610b6090614b94565b8161165781612114565b6114a561166384612d97565b8585612841565b606060006116788385614e07565b905030330361173d5760005b8381101561173b5761170b61169761229c565b61169f61316f565b8787858181106116b1576116b1614ab5565b90506020028101906116c39190614acb565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250613183915050565b82828151811061171d5761171d614ab5565b6020026020010181905250808061173390614b27565b915050611684565b505b610cab816131b3565b6000818152606760205260408120546001600160a01b0316611769576000610940565b3092915050565b606080836001600160401b0381111561178b5761178b6144d7565b6040519080825280602002602001820160405280156117be57816020015b60608152602001906001900390816117a95790505b509150836001600160401b038111156117d9576117d96144d7565b60405190808252806020026020018201604052801561180c57816020015b60608152602001906001900390816117f75790505b50905060005b848110156118895761183c86868381811061182f5761182f614ab5565b9050602002013585612e7e565b84838151811061184e5761184e614ab5565b6020026020010184848151811061186757611867614ab5565b602002602001018290528290525050808061188190614b27565b915050611812565b50935093915050565b8161189e610e6061229c565b6118ba5760405162461bcd60e51b8152600401610b6090614b94565b826118c481612114565b6118cd846127d4565b611170868686866132de565b610134546001600160a01b03166118ee61229c565b6001600160a01b0316146119145760405162461bcd60e51b8152600401610b6090614b40565b600080611924610e08898b614b87565b9150915061193181613311565b6119498a83611943610e3f8c8e614b87565b86613371565b6119568787878786612612565b50505050505050505050565b600081815260c96020526040902080546060919061197f90614a66565b80601f01602080910402602001604051908101604052809291908181526020018280546119ab90614a66565b80156119f85780601f106119cd576101008083540402835291602001916119f8565b820191906000526020600020905b8154815290600101906020018083116119db57829003601f168201915b50505050509050919050565b6001600160a01b03811660009081526101356020526040902054606090611a2a81612e9f565b6113ff576000818152610138602052604090208054611a4890614a66565b80601f0160208091040260200160405190810160405280929190818152602001828054611a7490614a66565b8015611ac15780601f10611a9657610100808354040283529160200191611ac1565b820191906000526020600020905b815481529060010190602001808311611aa457829003601f168201915b5050505050915050919050565b6060611ad9826120b5565b6000611ae36133c4565b90506000815111611b035760405180602001604052806000815250610db7565b80611b0d846133d4565b604051602001611b1e929190614e7a565b6040516020818303038152906040529392505050565b80611b40610e6061229c565b611b5c5760405162461bcd60e51b8152600401610b6090614b94565b81611b6681612114565b610ef58787878787612612565b7f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87546001600160a01b0316611ba661229c565b6001600160a01b031614611bcc5760405162461bcd60e51b8152600401610b6090614bdd565b6020819003611bef576000611be382840184613f8b565b90506114a584826122ab565b6000611bfd82840184614ea9565b805190915060005b8181101561117057611c3086848381518110611c2357611c23614ab5565b60200260200101516122ab565b80611c3a81614b27565b915050611c05565b600081815261013960205260408120546001600160401b03161580159061094057505060009081526101396020526040902054426001600160401b039091161090565b80611c91610e6061229c565b611cad5760405162461bcd60e51b8152600401610b6090614b94565b81611cb781612114565b610ef587878787876134d4565b6000611cce61229c565b6001600160a01b0381166000908152610135602052604081205491925003611d425760405162461bcd60e51b815260206004820152602160248201527f52656769737472793a20524556455253455f5245434f52445f49535f454d50546044820152605960f81b6064820152608401610b60565b6111ca816134ea565b6060816001600160401b03811115611d6557611d656144d7565b604051908082528060200260200182016040528015611d9857816020015b6060815260200190600190039081611d835790505b50905060005b82811015611df757611dc7848483818110611dbb57611dbb614ab5565b90506020020135611962565b828281518110611dd957611dd9614ab5565b60200260200101819052508080611def90614b27565b915050611d9e565b5092915050565b610134546001600160a01b0316611e1361229c565b6001600160a01b031614611e395760405162461bcd60e51b8152600401610b6090614b40565b61013454611e50906001600160a01b0316846122ab565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c39528383604051611e82929190614d69565b60405180910390a2505050565b600054610100900460ff1615808015611eaf5750600054600160ff909116105b80611ec95750303b158015611ec9575060005460ff166001145b611f2c5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610b60565b6000805460ff191660011790558015611f4f576000805461ff0019166101001790555b61013480546001600160a01b0319166001600160a01b038716179055837f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec9237880546001600160a01b0319166001600160a01b03929092169190911790556040805180820182526013815272556e73746f707061626c6520446f6d61696e7360681b60208083019190915282518084019093526002835261155160f21b90830152611ff79161352f565b611fff61356f565b61200761356f565b61201083613598565b612019826135c8565b8015610ea0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b60006001600160e01b031982166380ac58cd60e01b148061209657506001600160e01b03198216635b5e139f60e01b145b8061094057506301ffc9a760e01b6001600160e01b0319831614610940565b6000818152606760205260409020546001600160a01b03166111ca5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b60565b3033036121715761212361316f565b81146111ca5760405162461bcd60e51b815260206004820152601760248201527f52656769737472793a20544f4b454e5f494e56414c49440000000000000000006044820152606401610b60565b6111ca816135f8565b600061218582612d97565b9050806001600160a01b0316836001600160a01b0316036121f25760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b6064820152608401610b60565b806001600160a01b031661220461229c565b6001600160a01b0316148061222057506122208161088861229c565b6122925760405162461bcd60e51b815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c00006064820152608401610b60565b610a138383613626565b60006122a6613694565b905090565b6001600160a01b0382166123015760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610b60565b6000818152606760205260409020546001600160a01b0316156123665760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610b60565b612372600083836136af565b6001600160a01b038216600090815260686020526040812080546001929061239b908490614f39565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b03861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b6000612403612a4b565b905061240f8183613626565b60008051602061529383398151915254604080516020808201869052825180830390910181528183019283905263e3dec8fb60e01b9092526001600160a01b0390921691829163e3dec8fb9161246c918891309190604401614f4c565b600060405180830381600087803b15801561248657600080fd5b505af115801561249a573d6000803e3d6000fd5b5050505050505050565b6060610db7836040516020016124ba9190614c1f565b6040516020818303038152906040528051906020012060001c8361378b565b60606124e4856135f8565b600080876001600160a01b0316866124fe8b8a8989613183565b60405161250b9190614c1f565b60006040518083038160008787f1925050503d8060008114612549576040519150601f19603f3d011682016040523d82523d6000602084013e61254e565b606091505b50909250905061255f603f87614f8e565b5a1161256d5761256d614fa2565b6125ad82826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061386d565b9998505050505050505050565b805160009081905b801561260c578291506125f882856125db600185614fb8565b815181106125eb576125eb614ab5565b60200260200101516138a6565b92508061260481614fcb565b9150506125c2565b50915091565b60005b848110156111705761266e86868381811061263257612632614ab5565b90506020028101906126449190614acb565b86868581811061265657612656614ab5565b90506020028101906126689190614acb565b86612bf3565b8061267881614b27565b915050612615565b606060008260008151811061269757612697614ab5565b602002602001015190506000600190505b8351811015611df757818482815181106126c4576126c4614ab5565b60200260200101516040516020016126dd929190614fe2565b604051602081830303815290604052915080806126f990614b27565b9150506126a8565b61dead6001600160a01b0384161480159061273357506001600160a01b03831660009081526101356020526040902054155b15610a1357610a13838383612df7565b60008061274f8361122d565b90506001600160a01b03811615801590610cab5750806001600160a01b0316846001600160a01b031614806127a957506001600160a01b038082166000908152606a602090815260408083209388168352929052205460ff165b80610cab5750836001600160a01b03166127c2846109d8565b6001600160a01b031614949350505050565b6127dd81613952565b6040516020016127ef91815260200190565b60408051601f198184030181528282528051602091820120600085815260cb9092529181209190915582917f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9190a250565b826001600160a01b031661285482612d97565b6001600160a01b0316146128b85760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b6064820152608401610b60565b6001600160a01b03821661291a5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610b60565b6129258383836136af565b612930600082613626565b6001600160a01b0383166000908152606860205260408120805460019290612959908490614fb8565b90915550506001600160a01b0382166000908152606860205260408120805460019290612987908490614f39565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60005b8481101561117057612a39868683818110612a0857612a08614ab5565b90506020020135858584818110612a2157612a21614ab5565b9050602002810190612a339190614acb565b85612cd2565b80612a4381614b27565b9150506129eb565b600080516020615293833981519152546000906001600160a01b03168015612b485760405163721804d360e11b81523060048201526000906001600160a01b0383169063e43009a690602401602060405180830381865afa158015612ab4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ad8919061501e565b60405163e66f960360e01b8152600481018290529091506001600160a01b0383169063e66f960390602401602060405180830381865afa158015612b20573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b449190615037565b9250505b5090565b6000612b5782612d97565b9050612b65816000846136af565b612b70600083613626565b6001600160a01b0381166000908152606860205260408120805460019290612b99908490614fb8565b909155505060008281526067602052604080822080546001600160a01b0319169055518391906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b60008585604051602001612c08929190615054565b60408051601f198184030181528282528051602091820120601f8901829004820284018201909252878352909250612c5c9183918990899081908401838280828437600092019190915250612d7292505050565b6111708187878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061397a915050565b612cdb84613aaf565b612d275760405162461bcd60e51b815260206004820152601c60248201527f5265636f726453746f726167653a204b45595f4e4f545f464f554e44000000006044820152606401610b60565b6114a584612d3486611962565b85858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525087925061397a915050565b612d7b82613aaf565b61108457600082815260c960205260409020610a138282615064565b6000818152606760205260408120546001600160a01b0316806109405760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b60565b6000828152610138602052604090208054612e1190614a66565b9050600003612e3557600082815261013860205260409020612e338282615064565b505b6001600160a01b03831660008181526101356020526040808220859055518492917feb76a21470988c474a21f690cc28fee1ed511bd812dc3c21fd0f49c5e5d4708a91a3505050565b606080612e8a84611962565b9150612e96848461378b565b90509250929050565b6000818152610137602052604081205460ff16801561094057506101366000612ec661229c565b6001600160a01b0316815260208101919091526040016000205460ff1692915050565b60008051602061529383398151915254604051633805550f60e01b81526001600160a01b03909116908190633805550f90612f2a9086908690600401614d69565b600060405180830381600087803b158015612f4457600080fd5b505af1158015610ef5573d6000803e3d6000fd5b816001600160a01b0316836001600160a01b031603612fb95760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610b60565b6001600160a01b038381166000818152606a6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561306d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613091919061501e565b9050600061313f8660600151805190602001208688602001516040516020016130df9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561316557508551613165906001600160a01b03168286613ad5565b9695505050505050565b60003033036131805750601f193601355b90565b606082858560405160200161319a93929190615123565b6040516020818303038152906040529050949350505050565b606081516001600160401b038111156131ce576131ce6144d7565b60405190808252806020026020018201604052801561320157816020015b60608152602001906001900390816131ec5790505b50905060005b82518110156113ff57600080306001600160a01b031685848151811061322f5761322f614ab5565b60200260200101516040516132449190614c1f565b600060405180830381855af49150503d806000811461327f576040519150601f19603f3d011682016040523d82523d6000602084013e613284565b606091505b50915091506132ac82826040518060600160405280602781526020016152b36027913961386d565b8484815181106132be576132be614ab5565b6020026020010181905250505080806132d690614b27565b915050613207565b6132e9848484612841565b6132f584848484613c17565b6114a55760405162461bcd60e51b8152600401610b6090615162565b6000818152610137602052604090205460ff16156111ca5760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a20544f4b454e5f555047524144454400000000000000006044820152606401610b60565b61337b84846122ab565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952836040516133ab9190613f78565b60405180910390a280156114a5576114a5848484612701565b6060610133805461095590614a66565b6060816000036133fb5750506040805180820190915260018152600360fc1b602082015290565b8160005b8115613425578061340f81614b27565b915061341e9050600a83614f8e565b91506133ff565b6000816001600160401b0381111561343f5761343f6144d7565b6040519080825280601f01601f191660200182016040528015613469576020820181803683370190505b5090505b8415610cab5761347e600183614fb8565b915061348b600a866151b4565b613496906030614f39565b60f81b8183815181106134ab576134ab614ab5565b60200101906001600160f81b031916908160001a9053506134cd600a86614f8e565b945061346d565b6134dd816127d4565b610ea08585858585612612565b6001600160a01b03811660008181526101356020526040808220829055517ffcf5eec0cfa3e6332f5f0e63ec242d71f866a61d121d6cdf5c2eb3b668a26c4f9190a250565b600054610100900460ff166135565760405162461bcd60e51b8152600401610b60906151c8565b60656135628382615064565b506066610a138282615064565b600054610100900460ff166135965760405162461bcd60e51b8152600401610b60906151c8565b565b600054610100900460ff166135bf5760405162461bcd60e51b8152600401610b60906151c8565b6111ca81613d1c565b600054610100900460ff166135ef5760405162461bcd60e51b8152600401610b60906151c8565b6111ca81613d75565b60008181526101006020526040902054613613906001614f39565b6000918252610100602052604090912055565b600081815260696020526040902080546001600160a01b0319166001600160a01b038416908117909155819061365b82612d97565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60003033036136aa575060331936013560601c90565b503390565b6001600160a01b0382166136c6576136c681613311565b600081815261013960205260409020546001600160401b031615613761576001600160a01b0382161580159061371557506136ff612a4b565b6001600160a01b0316826001600160a01b031614155b6137615760405162461bcd60e51b815260206004820152601960248201527f52656769737472793a20544f4b454e5f455850495241424c45000000000000006044820152606401610b60565b6001600160a01b03831660009081526101356020526040902054819003610a1357610a13836134ea565b606061379682612e9f565b156137b05750604080516020810190915260008152610940565b60ca60006137bd84613952565b8152602001908152602001600020600084815260200190815260200160002080546137e790614a66565b80601f016020809104026020016040519081016040528092919081815260200182805461381390614a66565b80156138605780601f1061383557610100808354040283529160200191613860565b820191906000526020600020905b81548152906001019060200180831161384357829003601f168201915b5050505050905092915050565b6060831561387c575081610db7565b82511561388c5782518084602001fd5b8160405162461bcd60e51b8152600401610b609190613f78565b600081516000036138f15760405162461bcd60e51b815260206004820152601560248201527452656769737472793a204c4142454c5f454d50545960581b6044820152606401610b60565b82826040516020016139039190614c1f565b60405160208183030381529060405280519060200120604051602001613933929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b600081815260cb602052604081205415612b4857600082815260cb6020526040902054610940565b60ca600061398783613952565b8152602001908152602001600020600085815260200190815260200160002080546139b190614a66565b9050600003613a0957826040516139c89190614c1f565b6040518091039020817f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f8685604051613a009190613f78565b60405180910390a35b8160ca6000613a1784613952565b815260200190815260200160002060008681526020019081526020016000209081613a429190615064565b5081604051613a519190614c1f565b604051809103902083604051613a679190614c1f565b6040518091039020827f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d928686604051613aa19291906146e2565b60405180910390a450505050565b600081815260c9602052604081208054829190613acb90614a66565b9050119050919050565b6000806000613ae48585613dc3565b90925090506000816004811115613afd57613afd615213565b148015613b1b5750856001600160a01b0316826001600160a01b0316145b15613b2b57600192505050610db7565b600080876001600160a01b0316631626ba7e60e01b8888604051602401613b53929190615229565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051613b919190614c1f565b600060405180830381855afa9150503d8060008114613bcc576040519150601f19603f3d011682016040523d82523d6000602084013e613bd1565b606091505b5091509150818015613be4575080516020145b8015613c0b57508051630b135d3f60e11b90613c09908301602090810190840161501e565b145b98975050505050505050565b60006001600160a01b0384163b15613d1457836001600160a01b031663150b7a02613c4061229c565b8786866040518563ffffffff1660e01b8152600401613c629493929190615242565b6020604051808303816000875af1925050508015613c9d575060408051601f3d908101601f19168201909252613c9a91810190615275565b60015b613cfa573d808015613ccb576040519150601f19603f3d011682016040523d82523d6000602084013e613cd0565b606091505b508051600003613cf25760405162461bcd60e51b8152600401610b6090615162565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610cab565b506001610cab565b600054610100900460ff16613d435760405162461bcd60e51b8152600401610b60906151c8565b806000805160206152938339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b600054610100900460ff16613d9c5760405162461bcd60e51b8152600401610b60906151c8565b807f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87613d54565b6000808251604103613df95760208301516040840151606085015160001a613ded87828585613e08565b94509450505050613e01565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613e3f5750600090506003613eec565b8460ff16601b14158015613e5757508460ff16601c14155b15613e685750600090506004613eec565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613ebc573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613ee557600060019250925050613eec565b9150600090505b94509492505050565b6001600160e01b0319811681146111ca57600080fd5b600060208284031215613f1d57600080fd5b8135610db781613ef5565b60005b83811015613f43578181015183820152602001613f2b565b50506000910152565b60008151808452613f64816020860160208601613f28565b601f01601f19169290920160200192915050565b602081526000610db76020830184613f4c565b600060208284031215613f9d57600080fd5b5035919050565b6001600160a01b03811681146111ca57600080fd5b60008060408385031215613fcc57600080fd5b8235613fd781613fa4565b946020939093013593505050565b60008083601f840112613ff757600080fd5b5081356001600160401b0381111561400e57600080fd5b602083019150836020828501011115613e0157600080fd5b60008060008060006080868803121561403e57600080fd5b853561404981613fa4565b9450602086013561405981613fa4565b93506040860135925060608601356001600160401b0381111561407b57600080fd5b61408788828901613fe5565b969995985093965092949392505050565b60008083601f8401126140aa57600080fd5b5081356001600160401b038111156140c157600080fd5b6020830191508360208260051b8501011115613e0157600080fd5b6000806000604084860312156140f157600080fd5b83356001600160401b0381111561410757600080fd5b61411386828701614098565b909790965060209590950135949350505050565b600082825180855260208086019550808260051b84010181860160005b8481101561417257601f19868403018952614160838351613f4c565b98840198925090830190600101614144565b5090979650505050505050565b602081526000610db76020830184614127565b6000806000604084860312156141a757600080fd5b83356001600160401b038111156141bd57600080fd5b61411386828701613fe5565b6000806000604084860312156141de57600080fd5b83356001600160401b03808211156141f557600080fd5b908501906080828803121561420957600080fd5b9093506020850135908082111561421f57600080fd5b5061422c86828701613fe5565b9497909650939450505050565b8035801515811461124557600080fd5b60008060008060008060008060a0898b03121561426557600080fd5b883561427081613fa4565b975060208901356001600160401b038082111561428c57600080fd5b6142988c838d01614098565b909950975060408b01359150808211156142b157600080fd5b6142bd8c838d01614098565b909750955060608b01359150808211156142d657600080fd5b506142e38b828c01614098565b90945092506142f6905060808a01614239565b90509295985092959890939650565b60008060006060848603121561431a57600080fd5b833561432581613fa4565b9250602084013561433581613fa4565b929592945050506040919091013590565b6000806020838503121561435957600080fd5b82356001600160401b0381111561436f57600080fd5b61437b85828601614098565b90969095509350505050565b60008060008060006060868803121561439f57600080fd5b85356001600160401b03808211156143b657600080fd5b6143c289838a01614098565b909750955060208801359150808211156143db57600080fd5b506143e888828901614098565b96999598509660400135949350505050565b6000806040838503121561440d57600080fd5b82356001600160401b0381168114613fd757600080fd5b60008060008060006060868803121561443c57600080fd5b85356001600160401b038082111561445357600080fd5b61445f89838a01613fe5565b9097509550602088013591508082111561447857600080fd5b506143e888828901613fe5565b6000806000806060858703121561449b57600080fd5b8435935060208501356001600160401b038111156144b857600080fd5b6144c487828801613fe5565b9598909750949560400135949350505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715614515576145156144d7565b604052919050565b600082601f83011261452e57600080fd5b81356001600160401b03811115614547576145476144d7565b61455a601f8201601f19166020016144ed565b81815284602083860101111561456f57600080fd5b816020850160208301376000918101602001919091529392505050565b60006020828403121561459e57600080fd5b81356001600160401b038111156145b457600080fd5b610cab8482850161451d565b6000602082840312156145d257600080fd5b8135610db781613fa4565b60006001600160401b038211156145f6576145f66144d7565b5060051b60200190565b600061461361460e846145dd565b6144ed565b8381529050602080820190600585901b84018681111561463257600080fd5b845b8181101561466d5780356001600160401b038111156146535760008081fd5b61465f8982890161451d565b855250928201928201614634565b505050509392505050565b60006020828403121561468a57600080fd5b81356001600160401b038111156146a057600080fd5b8201601f810184136146b157600080fd5b610cab84823560208401614600565b600080604083850312156146d357600080fd5b50508035926020909101359150565b6040815260006146f56040830185613f4c565b8281036020840152610db38185613f4c565b6000806000806060858703121561471d57600080fd5b843561472881613fa4565b93506020850135925060408501356001600160401b0381111561474a57600080fd5b61475687828801613fe5565b95989497509550505050565b60008060008060008060006080888a03121561477d57600080fd5b87356001600160401b038082111561479457600080fd5b6147a08b838c01613fe5565b909950975060208a0135965060408a01359150808211156147c057600080fd5b6147cc8b838c01614098565b909650945060608a01359150808211156147e557600080fd5b506147f28a828b01614098565b989b979a50959850939692959293505050565b6000806020838503121561481857600080fd5b82356001600160401b0381111561482e57600080fd5b61437b85828601613fe5565b6000806040838503121561484d57600080fd5b823561485881613fa4565b9150612e9660208401614239565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156148bb57603f198886030184526148a9858351613f4c565b9450928501929085019060010161488d565b5092979650505050505050565b6040815260006148db6040830185614127565b8281036020840152610db38185614127565b6000806000806080858703121561490357600080fd5b843561490e81613fa4565b9350602085013561491e81613fa4565b92506040850135915060608501356001600160401b0381111561494057600080fd5b61494c8782880161451d565b91505092959194509250565b60008060006040848603121561496d57600080fd5b833561497881613fa4565b925060208401356001600160401b0381111561499357600080fd5b61422c86828701613fe5565b600080604083850312156149b257600080fd5b82356149bd81613fa4565b915060208301356149cd81613fa4565b809150509250929050565b6000806000604084860312156149ed57600080fd5b8335925060208401356001600160401b0381111561499357600080fd5b60008060008060808587031215614a2057600080fd5b8435614a2b81613fa4565b93506020850135614a3b81613fa4565b92506040850135614a4b81613fa4565b91506060850135614a5b81613fa4565b939692955090935050565b600181811c90821680614a7a57607f821691505b6020821081036113ff57634e487b7160e01b600052602260045260246000fd5b600060208284031215614aac57600080fd5b610db782614239565b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112614ae257600080fd5b8301803591506001600160401b03821115614afc57600080fd5b602001915036819003821315613e0157600080fd5b634e487b7160e01b600052601160045260246000fd5b600060018201614b3957614b39614b11565b5060010190565b60208082526027908201527f52656769737472793a2053454e4445525f49535f4e4f545f4d494e54494e475f60408201526626a0a720a3a2a960c91b606082015260800190565b6000610db7368484614600565b60208082526029908201527f52656769737472793a2053454e4445525f49535f4e4f545f415050524f5645446040820152682fa7a92fa7aba722a960b91b606082015260800190565b60208082526022908201527f52656769737472793a20494e53554646494349454e545f5045524d495353494f6040820152614e5360f01b606082015260800190565b60008251614c31818460208701613f28565b9190910192915050565b601f821115610a1357600081815260208120601f850160051c81016020861015614c625750805b601f850160051c820191505b8181101561117057828155600101614c6e565b6001600160401b03831115614c9857614c986144d7565b614cac83614ca68354614a66565b83614c3b565b6000601f841160018114614ce05760008515614cc85750838201355b600019600387901b1c1916600186901b178355610ea0565b600083815260209020601f19861690835b82811015614d115786850135825560209485019460019092019101614cf1565b5086821015614d2e5760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b602081526000610cab602083018486614d40565b600060808236031215614d8f57600080fd5b604051608081016001600160401b038282108183111715614db257614db26144d7565b8160405284359150614dc382613fa4565b81835260208501356020840152604085013560408401526060850135915080821115614dee57600080fd5b50614dfb3682860161451d565b60608301525092915050565b6000614e1561460e846145dd565b80848252602080830192508560051b850136811115614e3357600080fd5b855b81811015614e6e5780356001600160401b03811115614e545760008081fd5b614e6036828a0161451d565b865250938201938201614e35565b50919695505050505050565b60008351614e8c818460208801613f28565b835190830190614ea0818360208801613f28565b01949350505050565b60006020808385031215614ebc57600080fd5b82356001600160401b03811115614ed257600080fd5b8301601f81018513614ee357600080fd5b8035614ef161460e826145dd565b81815260059190911b82018301908381019087831115614f1057600080fd5b928401925b82841015614f2e57833582529284019290840190614f15565b979650505050505050565b8082018082111561094057610940614b11565b6001600160a01b03848116825283166020820152606060408201819052600090610b6990830184613f4c565b634e487b7160e01b600052601260045260246000fd5b600082614f9d57614f9d614f78565b500490565b634e487b7160e01b600052600160045260246000fd5b8181038181111561094057610940614b11565b600081614fda57614fda614b11565b506000190190565b60008351614ff4818460208801613f28565b601760f91b9083019081528351615012816001840160208801613f28565b01600101949350505050565b60006020828403121561503057600080fd5b5051919050565b60006020828403121561504957600080fd5b8151610db781613fa4565b8183823760009101908152919050565b81516001600160401b0381111561507d5761507d6144d7565b6150918161508b8454614a66565b84614c3b565b602080601f8311600181146150c657600084156150ae5750858301515b600019600386901b1c1916600185901b178555611170565b600085815260208120601f198616915b828110156150f5578886015182559484019460019091019084016150d6565b50858210156151135787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60008451615135818460208901613f28565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6000826151c3576151c3614f78565b500690565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b634e487b7160e01b600052602160045260246000fd5b828152604060208201526000610cab6040830184613f4c565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061316590830184613f4c565b60006020828403121561528757600080fd5b8151610db781613ef556febe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a","storage":{}},"0x6ac8f19d1e0f81147cdf2a1e53cb1f4e18417204":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610296575f3560e01c80636352211e11610161578063c93ab3fd116100ca578063e985e9c511610084578063e985e9c5146106c8578063eb8ae530146106db578063ed70554d146106ee578063f242432a1461070d578063f2fde38b14610720578063fd0cd0d914610733575f80fd5b8063c93ab3fd14610647578063cf4088231461065a578063d8c9921a1461066d578063d9a50c1214610680578063da8c229e14610693578063e0dba60f146106b5575f80fd5b8063a22cb4651161011b578063a22cb465146105d5578063a4014982146105e8578063adf4960a146105fb578063b6bcad261461060e578063c475abff14610621578063c658e08614610634575f80fd5b80636352211e146105595780636e5d6ad21461056c578063715018a6146105975780638b4dfa751461059f5780638cf8b41e146105b25780638da5cb5b146105c5575f80fd5b80631f4e1504116102035780633f15457f116101bd5780633f15457f146104b1578063402906fc146104d857806341415eab146105005780634e1273f41461051357806353095467146105335780635d3590d514610546575f80fd5b80631f4e15041461042b57806320c38e2b1461043e57806324c1af44146104515780632b20e397146104645780632eb2c2d61461048b57806333c69ea91461049e575f80fd5b80630e4cd725116102545780630e4cd725146103a05780630e89341c146103b357806314ab9038146103c6578063150b7a02146103d95780631534e177146104055780631896f70a14610418575f80fd5b8062fdd58e1461029a5780630178fe3f146102c057806301ffc9a71461030657806306fdde0314610329578063081812fc14610360578063095ea7b31461038b575b5f80fd5b6102ad6102a8366004614316565b610746565b6040519081526020015b60405180910390f35b6102d36102ce366004614340565b6107f0565b604080516001600160a01b03909416845263ffffffff90921660208401526001600160401b0316908201526060016102b7565b61031961031436600461436c565b61081f565b60405190151581526020016102b7565b6103536040518060400160405280600b81526020016a2730b6b2abb930b83832b960a91b81525081565b6040516102b791906143d4565b61037361036e366004614340565b61085e565b6040516001600160a01b0390911681526020016102b7565b61039e610399366004614316565b6108a0565b005b6103196103ae3660046143e6565b6108e5565b6103536103c1366004614340565b61095e565b61039e6103d436600461442f565b6109cc565b6103ec6103e736600461449d565b610ac0565b6040516001600160e01b031990911681526020016102b7565b61039e61041336600461450a565b610c96565b61039e6104263660046143e6565b610cc0565b600754610373906001600160a01b031681565b61035361044c366004614340565b610d75565b6102ad61045f3660046145f6565b610e0c565b6103737f000000000000000000000000c965345edac823d56812cd20a10316233916a60581565b61039e610499366004614717565b610fe7565b61039e6104ac3660046147bd565b61121a565b6103737f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a981565b6104eb6104e6366004614811565b6113e6565b60405163ffffffff90911681526020016102b7565b61031961050e3660046143e6565b611480565b610526610521366004614832565b6114b8565b6040516102b79190614928565b600554610373906001600160a01b031681565b61039e61055436600461493a565b6115d7565b610373610567366004614340565b611655565b61057f61057a366004614978565b61165f565b6040516001600160401b0390911681526020016102b7565b61039e61178e565b61039e6105ad3660046149aa565b6117a1565b61057f6105c03660046149e9565b6118c0565b5f546001600160a01b0316610373565b61039e6105e3366004614a6b565b611c28565b6102ad6105f6366004614a97565b611cfd565b610319610609366004614b12565b611e38565b61039e61061c36600461450a565b611e5c565b6102ad61062f366004614b33565b61209e565b6102ad610642366004614b53565b6122fd565b61039e610655366004614bc0565b6124bd565b61039e610668366004614c26565b612605565b61039e61067b366004614c5b565b612794565b61031961068e366004614b33565b61285d565b6103196106a136600461450a565b60046020525f908152604090205460ff1681565b61039e6106c3366004614a6b565b612938565b6103196106d6366004614c86565b61299f565b61039e6106e9366004614cb2565b6129cc565b6102ad6106fc366004614340565b60016020525f908152604090205481565b61039e61071b366004614d15565b612d59565b61039e61072e36600461450a565b612e06565b610319610741366004614340565b612e7c565b5f6001600160a01b0383166107b65760405162461bcd60e51b815260206004820152602b60248201527f455243313135353a2062616c616e636520717565727920666f7220746865207a60448201526a65726f206164647265737360a81b60648201526084015b60405180910390fd5b5f6107c083611655565b9050836001600160a01b0316816001600160a01b0316036107e55760019150506107ea565b5f9150505b92915050565b5f8181526001602052604090205460a081901c60c082901c610813838383612f4d565b90959094509092509050565b5f6001600160e01b03198216631b05885b60e31b148061084f57506001600160e01b03198216630a85bd0160e11b145b806107ea57506107ea82612f80565b5f8061086983611655565b90506001600160a01b03811661088157505f92915050565b5f838152600360205260409020546001600160a01b03165b9392505050565b5f6108aa826107f0565b50915050603f1960408216016108d65760405163a2a7201360e01b8152600481018390526024016107ad565b6108e08383612fcf565b505050565b5f8080806108f2866107f0565b925092509250846001600160a01b0316836001600160a01b0316148061091d575061091d838661299f565b8061094157506001600160a01b0385166109368761085e565b6001600160a01b0316145b8015610954575061095282826130de565b155b9695505050505050565b6005546040516303a24d0760e21b8152600481018390526060916001600160a01b031690630e89341c906024015f60405180830381865afa1580156109a5573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526107ea9190810190614d78565b816109d78133611480565b6109f857803360405163168ab55d60e31b81526004016107ad929190614dea565b8260105f610a05836107f0565b5091505063ffffffff8282161615610a335760405163a2a7201360e01b8152600481018490526024016107ad565b604051630295720760e31b8152600481018790526001600160401b03861660248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906314ab9038906044015b5f604051808303815f87803b158015610aa2575f80fd5b505af1158015610ab4573d5f803e3d5ffd5b50505050505050505050565b5f336001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a6051614610b0a5760405163032634a760e31b815260040160405180910390fd5b5f808080610b1a86880188614e01565b83516020850120939750919550935091508890808214610b57576040516331970f3360e21b815260048101829052602481018390526044016107ad565b604051630a3b53db60e21b81526001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906328ed4f6c90610ba59085903090600401614dea565b5f604051808303815f87803b158015610bbc575f80fd5b505af1158015610bce573d5f803e3d5ffd5b5050604051636b727d4360e11b8152600481018d90525f92506276a70091506001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063d6e4fa8690602401602060405180830381865afa158015610c3c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c609190614e64565b610c6a9190614e8f565b9050610c7d87878761ffff16848861310d565b50630a85bd0160e11b9c9b505050505050505050505050565b610c9e613215565b600580546001600160a01b0319166001600160a01b0392909216919091179055565b81610ccb8133611480565b610cec57803360405163168ab55d60e31b81526004016107ad929190614dea565b8260085f610cf9836107f0565b5091505063ffffffff8282161615610d275760405163a2a7201360e01b8152600481018490526024016107ad565b604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a90610a8b9089908990600401614dea565b60066020525f908152604090208054610d8d90614eb6565b80601f0160208091040260200160405190810160405280929190818152602001828054610db990614eb6565b8015610e045780601f10610ddb57610100808354040283529160200191610e04565b820191905f5260205f20905b815481529060010190602001808311610de757829003601f168201915b505050505081565b5f87610e188133611480565b610e3957803360405163168ab55d60e31b81526004016107ad929190614dea565b87516020890120610e4a8a8261326e565b9250610e568a8461329a565b610e6083866133d3565b610e6b8a848b613406565b50610e788a8487876134cd565b9350610e8383613510565b610f33576040516305ef2c7f60e41b8152600481018b9052602481018290523060448201526001600160a01b0388811660648301526001600160401b03881660848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610f0a575f80fd5b505af1158015610f1c573d5f803e3d5ffd5b50505050610f2e8a848b8b89896135c6565b610fda565b6040516305ef2c7f60e41b8152600481018b9052602481018290523060448201526001600160a01b0388811660648301526001600160401b03881660848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610fb6575f80fd5b505af1158015610fc8573d5f803e3d5ffd5b50505050610fda8a848b8b89896135fc565b5050979650505050505050565b81518351146110495760405162461bcd60e51b815260206004820152602860248201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206044820152670dad2e6dac2e8c6d60c31b60648201526084016107ad565b6001600160a01b03841661106f5760405162461bcd60e51b81526004016107ad90614eee565b6001600160a01b03851633148061108b575061108b853361299f565b6110f25760405162461bcd60e51b815260206004820152603260248201527f455243313135353a207472616e736665722063616c6c6572206973206e6f74206044820152711bdddb995c881b9bdc88185c1c1c9bdd995960721b60648201526084016107ad565b5f5b83518110156111ad575f84828151811061111057611110614f33565b602002602001015190505f84838151811061112d5761112d614f33565b602002602001015190505f805f611143856107f0565b9250925092506111548583836136b6565b83600114801561117557508a6001600160a01b0316836001600160a01b0316145b6111915760405162461bcd60e51b81526004016107ad90614f47565b61119d858b848461375d565b50505050508060010190506110f4565b50836001600160a01b0316856001600160a01b0316336001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516111fd929190614f91565b60405180910390a461121333868686868661379d565b5050505050565b5f611225858561326e565b905061123181846133d3565b5f808061123d846107f0565b919450925090506001600160a01b03831615806112ea57506040516302571be360e01b81526004810185905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa1580156112ba573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112de9190614fbe565b6001600160a01b031614155b1561130857604051635374b59960e01b815260040160405180910390fd5b5f806113138a6107f0565b90935091508a905061134f576113298633611480565b61134a57853360405163168ab55d60e31b81526004016107ad929190614dea565b61137a565b6113598a33611480565b61137a57893360405163168ab55d60e31b81526004016107ad929190614dea565b6113858689846138f7565b611390878483613932565b9650620100008416158015906113b457508363ffffffff1688851763ffffffff1614155b156113d55760405163a2a7201360e01b8152600481018790526024016107ad565b96831796610ab486868a868b613977565b5f826113f28133611480565b61141357803360405163168ab55d60e31b81526004016107ad929190614dea565b8360025f611420836107f0565b5091505063ffffffff828216161561144e5760405163a2a7201360e01b8152600481018490526024016107ad565b5f808061145a8a6107f0565b9250925092506114738a84848c61ffff16178485613977565b5098975050505050505050565b5f80808061148d866107f0565b925092509250846001600160a01b0316836001600160a01b031614806109415750610941838661299f565b6060815183511461151d5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b60648201526084016107ad565b5f83516001600160401b0381111561153757611537614525565b604051908082528060200260200182016040528015611560578160200160208202803683370190505b5090505f5b84518110156115cf576115aa85828151811061158357611583614f33565b602002602001015185838151811061159d5761159d614f33565b6020026020010151610746565b8282815181106115bc576115bc614f33565b6020908102919091010152600101611565565b509392505050565b6115df613215565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af115801561162b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061164f9190614fd9565b50505050565b5f6107ea82613a1e565b5f8061166b858561326e565b905061167681613510565b61169357604051635374b59960e01b815260040160405180910390fd5b5f61169e86336108e5565b9050801580156116b557506116b38233611480565b155b156116d757813360405163168ab55d60e31b81526004016107ad929190614dea565b5f80806116e3856107f0565b925092509250831580156116fa5750620400008216155b1561171b5760405163a2a7201360e01b8152600481018690526024016107ad565b5f6117258a6107f0565b92505050611734888383613932565b97506117428685858b613a33565b6040516001600160401b038916815286907ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b1329060200160405180910390a2509598975050505050505050565b611796613215565b61179f5f613a49565b565b6117b85f805160206154fc8339815191528461326e565b6117c28133611480565b6117e357803360405163168ab55d60e31b81526004016107ad929190614dea565b306001600160a01b0384160361181757604051632ca49b0d60e11b81526001600160a01b03841660048201526024016107ad565b6118376118315f805160206154fc8339815191528661326e565b83613a98565b604051632142170760e11b81523060048201526001600160a01b038481166024830152604482018690527f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906342842e0e906064015f604051808303815f87803b1580156118a4575f80fd5b505af11580156118b6573d5f803e3d5ffd5b5050505050505050565b5f8086866040516118d2929190614ff4565b6040519081900381206331a9108f60e11b82526004820181905291505f907f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa15801561193f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119639190614fbe565b90506001600160a01b0381163314801590611a09575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063e985e9c590604401602060405180830381865afa1580156119e3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a079190614fd9565b155b15611a4157611a255f805160206154fc8339815191528361326e565b3360405163168ab55d60e31b81526004016107ad929190614dea565b6040516323b872dd60e01b81526001600160a01b038281166004830152306024830152604482018490527f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906323b872dd906064015f604051808303815f87803b158015611aae575f80fd5b505af1158015611ac0573d5f803e3d5ffd5b5050604051630a3b53db60e21b81526001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a6051692506328ed4f6c9150611b129085903090600401614dea565b5f604051808303815f87803b158015611b29575f80fd5b505af1158015611b3b573d5f803e3d5ffd5b5050604051636b727d4360e11b8152600481018590526276a70092507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b0316915063d6e4fa8690602401602060405180830381865afa158015611ba7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611bcb9190614e64565b611bd59190614e8f565b9250611c1d88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508a9250505061ffff8816868861310d565b505095945050505050565b6001600160a01b0382163303611c925760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084016107ad565b335f8181526002602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b335f9081526004602052604081205460ff16611d2b5760405162461bcd60e51b81526004016107ad90615003565b5f8787604051611d3c929190614ff4565b604051908190038120633f2891eb60e21b8252600482018190523060248301526044820187905291507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b03169063fca247ac906064016020604051808303815f875af1158015611db5573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611dd99190614e64565b9150611e2d88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508a9250505061ffff8616611e276276a70087614e8f565b8861310d565b509695505050505050565b5f80611e43846107f0565b50841663ffffffff908116908516149250505092915050565b611e64613215565b6007546001600160a01b031615611f785760075460405163a22cb46560e01b81526001600160a01b0391821660048201525f60248201527f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063a22cb465906044015f604051808303815f87803b158015611ee0575f80fd5b505af1158015611ef2573d5f803e3d5ffd5b505060075460405163a22cb46560e01b81526001600160a01b0391821660048201525f60248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9909116925063a22cb46591506044015f604051808303815f87803b158015611f61575f80fd5b505af1158015611f73573d5f803e3d5ffd5b505050505b600780546001600160a01b0319166001600160a01b0383169081179091551561209b5760075460405163a22cb46560e01b81526001600160a01b039182166004820152600160248201527f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063a22cb465906044015f604051808303815f87803b158015612007575f80fd5b505af1158015612019573d5f803e3d5ffd5b505060075460405163a22cb46560e01b81526001600160a01b039182166004820152600160248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9909116925063a22cb46591506044015f604051808303815f87803b158015612089575f80fd5b505af1158015611213573d5f803e3d5ffd5b50565b335f9081526004602052604081205460ff166120cc5760405162461bcd60e51b81526004016107ad90615003565b5f6120e45f805160206154fc8339815191528561326e565b60405163c475abff60e01b815260048101869052602481018590529091505f906001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063c475abff906044016020604051808303815f875af1158015612154573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906121789190614e64565b6040516331a9108f60e11b8152600481018790529091507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa9250505080156121fc575060408051601f3d908101601f191682019092526121f991810190614fbe565b60015b6122095791506107ea9050565b6001600160a01b038116301415806122b157506040516302571be360e01b81526004810184905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015612281573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906122a59190614fbe565b6001600160a01b031614155b156122c0575091506107ea9050565b505f6122cf6276a70083614e8f565b5f8481526001602052604090205490915060a081901c6122f185838386613a33565b50919695505050505050565b5f866123098133611480565b61232a57803360405163168ab55d60e31b81526004016107ad929190614dea565b5f878760405161233b929190614ff4565b6040518091039020905061234f898261326e565b925061235b898461329a565b61236583866133d3565b5f6123a68a858b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061340692505050565b90506123b48a8588886134cd565b94506123bf84613510565b61246b576040516306ab592360e01b8152600481018b9052602481018390523060448201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906306ab5923906064016020604051808303815f875af1158015612434573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906124589190614e64565b506124668482898989613b83565b6124b0565b6124b08a858b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508d92508c91508b90506135fc565b5050509695505050505050565b5f6125005f86868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613bc59050565b6007549091506001600160a01b031661252c5760405163093075b560e21b815260040160405180910390fd5b6125368133611480565b61255757803360405163168ab55d60e31b81526004016107ad929190614dea565b5f8080612563846107f0565b919450925090505f6125748561085e565b905061257f85613c81565b60075f9054906101000a90046001600160a01b03166001600160a01b0316639198c2768a8a878787878e8e6040518963ffffffff1660e01b81526004016125cd989796959493929190615073565b5f604051808303815f87803b1580156125e4575f80fd5b505af11580156125f6573d5f803e3d5ffd5b50505050505050505050505050565b836126108133611480565b61263157803360405163168ab55d60e31b81526004016107ad929190614dea565b84601c5f61263e836107f0565b5091505063ffffffff828216161561266c5760405163a2a7201360e01b8152600481018490526024016107ad565b60405163cf40882360e01b8152600481018990523060248201526001600160a01b0387811660448301526001600160401b03871660648301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063cf408823906084015f604051808303815f87803b1580156126e8575f80fd5b505af11580156126fa573d5f803e3d5ffd5b5050506001600160a01b038816905061275f575f612717896107f0565b509150506201ffff196202000082160161274f57604051632ca49b0d60e11b81526001600160a01b03891660048201526024016107ad565b612759895f613a98565b506118b6565b5f61276989611655565b905061278981898b5f1c600160405180602001604052805f815250613d1e565b505050505050505050565b61279e838361326e565b6127a88133611480565b6127c957803360405163168ab55d60e31b81526004016107ad929190614dea565b7f6c32148f748aba23997146d7fe89e962e3cc30271290fb96f5f4337756c03b5284016128095760405163615a470360e01b815260040160405180910390fd5b6001600160a01b038216158061282757506001600160a01b03821630145b1561285057604051632ca49b0d60e11b81526001600160a01b03831660048201526024016107ad565b61164f611831858561326e565b5f80612869848461326e565b90505f61287582613510565b90505f805160206154fc83398151915285146128945791506107ea9050565b6040516331a9108f60e11b8152600481018590527f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa925050508015612915575060408051601f3d908101601f1916820190925261291291810190614fbe565b60015b612923575f925050506107ea565b6001600160a01b0316301492506107ea915050565b612940613215565b6001600160a01b0382165f81815260046020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf8791015b60405180910390a25050565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205460ff1690565b5f80612a105f87878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613dfe9050565b915091505f612a578288888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613bc59050565b90505f612a64828561326e565b5f818152600660205260409020909150612a7f888a8361511e565b507f6c32148f748aba23997146d7fe89e962e3cc30271290fb96f5f4337756c03b528201612ac05760405163615a470360e01b815260040160405180910390fd5b6040516302571be360e01b8152600481018290525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa158015612b25573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612b499190614fbe565b90506001600160a01b0381163314801590612bef575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063e985e9c590604401602060405180830381865afa158015612bc9573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612bed9190614fd9565b155b15612c1157813360405163168ab55d60e31b81526004016107ad929190614dea565b6001600160a01b03861615612c9c57604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a90612c6e9085908a90600401614dea565b5f604051808303815f87803b158015612c85575f80fd5b505af1158015612c97573d5f803e3d5ffd5b505050505b604051635b0fc9c360e01b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635b0fc9c390612cea9085903090600401614dea565b5f604051808303815f87803b158015612d01575f80fd5b505af1158015612d13573d5f803e3d5ffd5b50505050612789828a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201829052508d93509150819050613b83565b6001600160a01b038416612d7f5760405162461bcd60e51b81526004016107ad90614eee565b6001600160a01b038516331480612d9b5750612d9b853361299f565b612df95760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2063616c6c6572206973206e6f74206f776e6572206e6f7260448201526808185c1c1c9bdd995960ba1b60648201526084016107ad565b6112138585858585613d1e565b612e0e613215565b6001600160a01b038116612e735760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107ad565b61209b81613a49565b5f8181526006602052604081208054829190612e9790614eb6565b80601f0160208091040260200160405190810160405280929190818152602001828054612ec390614eb6565b8015612f0e5780601f10612ee557610100808354040283529160200191612f0e565b820191905f5260205f20905b815481529060010190602001808311612ef157829003601f168201915b5050505050905080515f03612f2557505f92915050565b5f80612f318382613dfe565b90925090505f612f418483613bc5565b9050610954818461285d565b5f8042836001600160401b03161015612f775761ffff1962010000851601612f73575f94505b5f93505b50929391925050565b5f6001600160e01b03198216636cdb3d1360e11b1480612fb057506001600160e01b031982166303a24d0760e21b145b806107ea57506301ffc9a760e01b6001600160e01b03198316146107ea565b5f612fd982611655565b9050806001600160a01b0316836001600160a01b0316036130465760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084016107ad565b336001600160a01b03821614806130625750613062813361299f565b6130d45760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016107ad565b6108e08383613eb2565b5f620200008381161480156108995750426130fc6276a700846151d7565b6001600160401b0316109392505050565b845160208601205f61312c5f805160206154fc8339815191528361326e565b90505f61315488604051806040016040528060058152602001626cae8d60e31b815250613f1f565b5f83815260066020526040902090915061316e82826151f7565b50613181828289620300008a1789613b83565b6001600160a01b038416156118b657604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a906131de9085908890600401614dea565b5f604051808303815f87803b1580156131f5575f80fd5b505af1158015613207573d5f803e3d5ffd5b505050505050505050505050565b5f546001600160a01b0316331461179f5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107ad565b604080516020808201949094528082019290925280518083038201815260609092019052805191012090565b5f80806132a6846107f0565b91945092509050426001600160401b0382161080801561336657506001600160a01b038416158061336657506040516302571be360e01b8152600481018690525f906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015613337573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061335b9190614fbe565b6001600160a01b0316145b156133a4575f613375876107f0565b50915050602081161561339e5760405163a2a7201360e01b8152600481018790526024016107ad565b506133cb565b620100008316156133cb5760405163a2a7201360e01b8152600481018690526024016107ad565b505050505050565b63fffdffff81811763ffffffff16146134025760405163a2a7201360e01b8152600481018390526024016107ad565b5050565b60605f6134aa8360065f8881526020019081526020015f20805461342990614eb6565b80601f016020809104026020016040519081016040528092919081815260200182805461345590614eb6565b80156134a05780601f10613477576101008083540402835291602001916134a0565b820191905f5260205f20905b81548152906001019060200180831161348357829003601f168201915b5050505050613f1f565b5f8581526006602052604090209091506134c482826151f7565b50949350505050565b5f806134d8856107f0565b925050505f806134e9885f1c6107f0565b92509250506134f98787846138f7565b613504858483613932565b98975050505050505050565b5f8061351b83611655565b6001600160a01b0316141580156107ea57506040516302571be360e01b81526004810183905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015613592573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906135b69190614fbe565b6001600160a01b03161492915050565b5f86815260066020526040812080546135e491879161342990614eb6565b90506135f38682868686613b83565b50505050505050565b5f8080613608886107f0565b9250925092505f61362f8860065f8d81526020019081526020015f20805461342990614eb6565b5f8a815260066020526040902080549192509061364b90614eb6565b90505f0361366c575f89815260066020526040902061366a82826151f7565b505b61367b89858886178589613977565b6001600160a01b03871661369857613693895f613a98565b610ab4565b610ab484888b5f1c600160405180602001604052805f815250613d1e565b6201ffff19620200008316016136d6576136d36276a700826151d7565b90505b42816001600160401b0316101561370f576201000082161561370a5760405162461bcd60e51b81526004016107ad90614f47565b613734565b60048216156137345760405163a2a7201360e01b8152600481018490526024016107ad565b604082165f036108e05750505f90815260036020526040902080546001600160a01b0319169055565b60c0816001600160401b0316901b60a08363ffffffff16901b846001600160a01b0316171760015f8681526020019081526020015f208190555050505050565b6001600160a01b0384163b156133cb5760405163bc197c8160e01b81526001600160a01b0385169063bc197c81906137e190899089908890889088906004016152b2565b6020604051808303815f875af192505050801561381b575060408051601f3d908101601f1916820190925261381891810190615303565b60015b6138c75761382761531e565b806308c379a003613860575061383b615337565b806138465750613862565b8060405162461bcd60e51b81526004016107ad91906143d4565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e20455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b60648201526084016107ad565b6001600160e01b0319811663bc197c8160e01b146135f35760405162461bcd60e51b81526004016107ad906153bf565b63ffff000082161580159060018316159082906139115750805b156112135760405163a2a7201360e01b8152600481018690526024016107ad565b5f816001600160401b0316846001600160401b03161115613951578193505b826001600160401b0316846001600160401b0316101561396f578293505b509192915050565b61398385858584613a33565b60405163ffffffff8416815285907f39873f00c80f4f94b7bd1594aebcf650f003545b74824d57ddf4939e3ff3a34b9060200160405180910390a2816001600160401b0316816001600160401b03161115611213576040516001600160401b038216815285907ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b132906020015b60405180910390a25050505050565b5f80613a29836107f0565b5090949350505050565b613a3d8483613f96565b61164f8484848461375d565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b613aa3826001611e38565b15613ac45760405163a2a7201360e01b8152600481018390526024016107ad565b613acd82613c81565b604051635b0fc9c360e01b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635b0fc9c390613b1b9085908590600401614dea565b5f604051808303815f87803b158015613b32575f80fd5b505af1158015613b44573d5f803e3d5ffd5b50506040516001600160a01b03841681528492507fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c49150602001612993565b613b8f85848484613fcf565b847f8ce7013e8abebc55c3890a68f5a27c67c3f7efa64e584de5fb22363c606fd34085858585604051613a0f9493929190615407565b5f805f613bd28585613dfe565b909250905081613c435760018551613bea919061544d565b8414613c385760405162461bcd60e51b815260206004820152601d60248201527f6e616d65686173683a204a756e6b20617420656e64206f66206e616d6500000060448201526064016107ad565b505f91506107ea9050565b613c4d8582613bc5565b6040805160208101929092528101839052606001604051602081830303815290604052805190602001209250505092915050565b5f8181526001602052604090205460a081901c60c082901c613ca4838383612f4d565b5f86815260036020526040812080546001600160a01b0319169055909350613cd091508590848461375d565b60408051858152600160208201525f916001600160a01b0386169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b5f805f613d2a866107f0565b925092509250613d3b8683836136b6565b846001148015613d5c5750876001600160a01b0316836001600160a01b0316145b613d785760405162461bcd60e51b81526004016107ad90614f47565b866001600160a01b0316836001600160a01b031603613d9957505050611213565b613da58688848461375d565b60408051878152602081018790526001600160a01b03808a1692908b169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46118b6338989898989614041565b5f8083518310613e505760405162461bcd60e51b815260206004820152601e60248201527f726561644c6162656c3a20496e646578206f7574206f6620626f756e6473000060448201526064016107ad565b5f848481518110613e6357613e63614f33565b016020015160f81c90508015613e8f57613e8885613e82866001615460565b836140fb565b9250613e93565b5f92505b613e9d8185615460565b613ea8906001615460565b9150509250929050565b5f81815260036020526040902080546001600160a01b0319166001600160a01b0384169081179091558190613ee682611655565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6060600183511015613f4457604051631406d65b60e11b815260040160405180910390fd5b60ff83511115613f69578260405163e3ba295f60e01b81526004016107ad91906143d4565b82518383604051602001613f7f93929190615473565b604051602081830303815290604052905092915050565b61ffff811615801590613fae57506201000181811614155b156134025760405163a2a7201360e01b8152600481018390526024016107ad565b613fd98483613f96565b5f848152600160205260409020546001600160a01b0381161561403557613fff85613c81565b6040515f815285907fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c49060200160405180910390a25b6112138585858561411d565b6001600160a01b0384163b156133cb5760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e619061408590899089908890889088906004016154b7565b6020604051808303815f875af19250505080156140bf575060408051601f3d908101601f191682019092526140bc91810190615303565b60015b6140cb5761382761531e565b6001600160e01b0319811663f23a6e6160e01b146135f35760405162461bcd60e51b81526004016107ad906153bf565b82515f906141098385615460565b1115614113575f80fd5b5091016020012090565b835f808061412a846107f0565b9194509250905063ffff000082166001600160401b038087169083161115614150578195505b42826001600160401b03161061416557958617955b6001600160a01b038416156141bc5760405162461bcd60e51b815260206004820152601f60248201527f455243313135353a206d696e74206f66206578697374696e6720746f6b656e0060448201526064016107ad565b6001600160a01b03881661421c5760405162461bcd60e51b815260206004820152602160248201527f455243313135353a206d696e7420746f20746865207a65726f206164647265736044820152607360f81b60648201526084016107ad565b306001600160a01b038916036142915760405162461bcd60e51b815260206004820152603460248201527f455243313135353a206e65774f776e65722063616e6e6f74206265207468652060448201527313985b5955dc985c1c195c8818dbdb9d1c9858dd60621b60648201526084016107ad565b61429d8589898961375d565b60408051868152600160208201526001600160a01b038a16915f9133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4612789335f8a88600160405180602001604052805f815250614041565b6001600160a01b038116811461209b575f80fd5b5f8060408385031215614327575f80fd5b823561433281614302565b946020939093013593505050565b5f60208284031215614350575f80fd5b5035919050565b6001600160e01b03198116811461209b575f80fd5b5f6020828403121561437c575f80fd5b813561089981614357565b5f5b838110156143a1578181015183820152602001614389565b50505f910152565b5f81518084526143c0816020860160208601614387565b601f01601f19169290920160200192915050565b602081525f61089960208301846143a9565b5f80604083850312156143f7575f80fd5b82359150602083013561440981614302565b809150509250929050565b80356001600160401b038116811461442a575f80fd5b919050565b5f8060408385031215614440575f80fd5b8235915061445060208401614414565b90509250929050565b5f8083601f840112614469575f80fd5b5081356001600160401b0381111561447f575f80fd5b602083019150836020828501011115614496575f80fd5b9250929050565b5f805f805f608086880312156144b1575f80fd5b85356144bc81614302565b945060208601356144cc81614302565b93506040860135925060608601356001600160401b038111156144ed575f80fd5b6144f988828901614459565b969995985093965092949392505050565b5f6020828403121561451a575f80fd5b813561089981614302565b634e487b7160e01b5f52604160045260245ffd5b601f8201601f191681016001600160401b038111828210171561455e5761455e614525565b6040525050565b5f6001600160401b0382111561457d5761457d614525565b50601f01601f191660200190565b5f82601f83011261459a575f80fd5b81356145a581614565565b6040516145b28282614539565b8281528560208487010111156145c6575f80fd5b826020860160208301375f92810160200192909252509392505050565b803563ffffffff8116811461442a575f80fd5b5f805f805f805f60e0888a03121561460c575f80fd5b8735965060208801356001600160401b03811115614628575f80fd5b6146348a828b0161458b565b965050604088013561464581614302565b9450606088013561465581614302565b935061466360808901614414565b925061467160a089016145e3565b915061467f60c08901614414565b905092959891949750929550565b5f6001600160401b038211156146a5576146a5614525565b5060051b60200190565b5f82601f8301126146be575f80fd5b813560206146cb8261468d565b6040516146d88282614539565b80915083815260208101915060208460051b8701019350868411156146fb575f80fd5b602086015b84811015611e2d5780358352918301918301614700565b5f805f805f60a0868803121561472b575f80fd5b853561473681614302565b9450602086013561474681614302565b935060408601356001600160401b0380821115614761575f80fd5b61476d89838a016146af565b94506060880135915080821115614782575f80fd5b61478e89838a016146af565b935060808801359150808211156147a3575f80fd5b506147b08882890161458b565b9150509295509295909350565b5f805f80608085870312156147d0575f80fd5b84359350602085013592506147e7604086016145e3565b91506147f560608601614414565b905092959194509250565b803561ffff8116811461442a575f80fd5b5f8060408385031215614822575f80fd5b8235915061445060208401614800565b5f8060408385031215614843575f80fd5b82356001600160401b0380821115614859575f80fd5b818501915085601f83011261486c575f80fd5b813560206148798261468d565b6040516148868282614539565b83815260059390931b85018201928281019150898411156148a5575f80fd5b948201945b838610156148cc5785356148bd81614302565b825294820194908201906148aa565b965050860135925050808211156148e1575f80fd5b50613ea8858286016146af565b5f815180845260208085019450602084015f5b8381101561491d57815187529582019590820190600101614901565b509495945050505050565b602081525f61089960208301846148ee565b5f805f6060848603121561494c575f80fd5b833561495781614302565b9250602084013561496781614302565b929592945050506040919091013590565b5f805f6060848603121561498a575f80fd5b83359250602084013591506149a160408501614414565b90509250925092565b5f805f606084860312156149bc575f80fd5b8335925060208401356149ce81614302565b915060408401356149de81614302565b809150509250925092565b5f805f805f608086880312156149fd575f80fd5b85356001600160401b03811115614a12575f80fd5b614a1e88828901614459565b9096509450506020860135614a3281614302565b9250614a4060408701614800565b91506060860135614a5081614302565b809150509295509295909350565b801515811461209b575f80fd5b5f8060408385031215614a7c575f80fd5b8235614a8781614302565b9150602083013561440981614a5e565b5f805f805f8060a08789031215614aac575f80fd5b86356001600160401b03811115614ac1575f80fd5b614acd89828a01614459565b9097509550506020870135614ae181614302565b9350604087013592506060870135614af881614302565b9150614b0660808801614800565b90509295509295509295565b5f8060408385031215614b23575f80fd5b82359150614450602084016145e3565b5f8060408385031215614b44575f80fd5b50508035926020909101359150565b5f805f805f8060a08789031215614b68575f80fd5b8635955060208701356001600160401b03811115614b84575f80fd5b614b9089828a01614459565b9096509450506040870135614ba481614302565b9250614bb2606088016145e3565b9150614b0660808801614414565b5f805f8060408587031215614bd3575f80fd5b84356001600160401b0380821115614be9575f80fd5b614bf588838901614459565b90965094506020870135915080821115614c0d575f80fd5b50614c1a87828801614459565b95989497509550505050565b5f805f8060808587031215614c39575f80fd5b843593506020850135614c4b81614302565b925060408501356147e781614302565b5f805f60608486031215614c6d575f80fd5b833592506020840135915060408401356149de81614302565b5f8060408385031215614c97575f80fd5b8235614ca281614302565b9150602083013561440981614302565b5f805f8060608587031215614cc5575f80fd5b84356001600160401b03811115614cda575f80fd5b614ce687828801614459565b9095509350506020850135614cfa81614302565b91506040850135614d0a81614302565b939692955090935050565b5f805f805f60a08688031215614d29575f80fd5b8535614d3481614302565b94506020860135614d4481614302565b9350604086013592506060860135915060808601356001600160401b03811115614d6c575f80fd5b6147b08882890161458b565b5f60208284031215614d88575f80fd5b81516001600160401b03811115614d9d575f80fd5b8201601f81018413614dad575f80fd5b8051614db881614565565b604051614dc58282614539565b828152866020848601011115614dd9575f80fd5b610954836020830160208701614387565b9182526001600160a01b0316602082015260400190565b5f805f8060808587031215614e14575f80fd5b84356001600160401b03811115614e29575f80fd5b614e358782880161458b565b9450506020850135614e4681614302565b9250614e5460408601614800565b91506060850135614d0a81614302565b5f60208284031215614e74575f80fd5b5051919050565b634e487b7160e01b5f52601160045260245ffd5b6001600160401b03818116838216019080821115614eaf57614eaf614e7b565b5092915050565b600181811c90821680614eca57607f821691505b602082108103614ee857634e487b7160e01b5f52602260045260245ffd5b50919050565b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b634e487b7160e01b5f52603260045260245ffd5b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b604081525f614fa360408301856148ee565b8281036020840152614fb581856148ee565b95945050505050565b5f60208284031215614fce575f80fd5b815161089981614302565b5f60208284031215614fe9575f80fd5b815161089981614a5e565b818382375f9101908152919050565b60208082526028908201527f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f604082015267373a3937b63632b960c11b606082015260800190565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b60c081525f61508660c083018a8c61504b565b6001600160a01b03898116602085015263ffffffff891660408501526001600160401b03881660608501528616608084015282810360a08401526150cb81858761504b565b9b9a5050505050505050505050565b601f8211156108e057805f5260205f20601f840160051c810160208510156150ff5750805b601f840160051c820191505b81811015611213575f815560010161510b565b6001600160401b0383111561513557615135614525565b615149836151438354614eb6565b836150da565b5f601f84116001811461517a575f85156151635750838201355b5f19600387901b1c1916600186901b178355611213565b5f83815260208120601f198716915b828110156151a95786850135825560209485019460019092019101615189565b50868210156151c5575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b6001600160401b03828116828216039080821115614eaf57614eaf614e7b565b81516001600160401b0381111561521057615210614525565b6152248161521e8454614eb6565b846150da565b602080601f831160018114615257575f84156152405750858301515b5f19600386901b1c1916600185901b1785556133cb565b5f85815260208120601f198616915b8281101561528557888601518255948401946001909101908401615266565b50858210156152a257878501515f19600388901b60f8161c191681555b5050505050600190811b01905550565b6001600160a01b0386811682528516602082015260a0604082018190525f906152dd908301866148ee565b82810360608401526152ef81866148ee565b9050828103608084015261350481856143a9565b5f60208284031215615313575f80fd5b815161089981614357565b5f60033d11156153345760045f803e505f5160e01c5b90565b5f60443d10156153445790565b6040516003193d81016004833e81513d6001600160401b03816024840111818411171561537357505050505090565b828501915081518181111561538b5750505050505090565b843d87010160208285010111156153a55750505050505090565b6153b460208286010187614539565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b608081525f61541960808301876143a9565b6001600160a01b039590951660208301525063ffffffff9290921660408301526001600160401b0316606090910152919050565b818103818111156107ea576107ea614e7b565b808201808211156107ea576107ea614e7b565b60ff60f81b8460f81b1681525f8351615493816001850160208801614387565b8351908301906154aa816001840160208801614387565b0160010195945050505050565b6001600160a01b03868116825285166020820152604081018490526060810183905260a0608082018190525f906154f0908301846143a9565b97965050505050505056fe93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4aea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2a68925cf5169f28586095d5b5b9933b3008f4c793a48be4f59b8b2bc62aa60a":"0x1","0x54cdd369e4e8a8515e52ca72ec816c2101831ad1f18bf44102ed171459c9b4f8":"0x2","0xa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb49":"0xffffffffffffffff000100010000000000000000000000000000000000000000","0xafa26c20e8b3d9a2853d642cfe1021dae26242ffedfac91c97aab212c1a4b93b":"0xffffffffffffffff000100010000000000000000000000000000000000000000","0xef5b11c47ebee44618abc22110e10e3b408ea5e799056d2b38461aa7b97c5a97":"0x1","0xfb9e8e321b8a5ec48f12a7b41f22c6e595d761285c9eb19d8dda7c99edf1b54f":"0x36574680000000000000000000000000000000000000000000000000000000a"}},"0x6e1eb616c7d69491f9a880f815ff5574768cba20":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b506004361061007a575f3560e01c806314ab90381161005857806314ab90381461010357806316a25cbd146101165780631896f70a146101625780635b0fc9c314610175575f80fd5b80630178b8bf1461007e57806302571be3146100c657806306ab5923146100ee575b5f80fd5b6100a961008c366004610403565b5f908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100a96100d4366004610403565b5f908152602081905260409020546001600160a01b031690565b6101016100fc366004610435565b610188565b005b610101610111366004610467565b610242565b610149610124366004610403565b5f90815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100bd565b6101016101703660046104a1565b6102e2565b6101016101833660046104a1565b610374565b5f8381526020819052604090205483906001600160a01b031633146101ab575f80fd5b60408051602080820187905281830186905282518083038401815260608301808552815191909201206001600160a01b0386169091529151859187917fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829181900360800190a35f90815260208190526040902080546001600160a01b0319166001600160a01b039390931692909217909155505050565b5f8281526020819052604090205482906001600160a01b03163314610265575f80fd5b60405167ffffffffffffffff8316815283907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a2505f91825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b5f8281526020819052604090205482906001600160a01b03163314610305575f80fd5b6040516001600160a01b038316815283907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a2505f9182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b5f8281526020819052604090205482906001600160a01b03163314610397575f80fd5b6040516001600160a01b038316815283907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a2505f9182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b5f60208284031215610413575f80fd5b5035919050565b80356001600160a01b0381168114610430575f80fd5b919050565b5f805f60608486031215610447575f80fd5b833592506020840135915061045e6040850161041a565b90509250925092565b5f8060408385031215610478575f80fd5b82359150602083013567ffffffffffffffff81168114610496575f80fd5b809150509250929050565b5f80604083850312156104b2575f80fd5b823591506104c26020840161041a565b9050925092905056fea164736f6c6343000818000a","storage":{"0x859ecef2e168dc10231b000bd53493b42bc9d944cac29d94582c1e1d43592131":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x7bb6cd9be29fab783c0b494a06fed8b2e2596b7a":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100ea5760003560e01c80636debcb8d1161008c578063b34f33c511610066578063b34f33c514610741578063d0778d6c14610814578063ef2c3088146108f2578063f5090c1e14610980576100ea565b80636debcb8d146105ca5780636fab95b3146106585780637b1039991461071d576100ea565b8063511f1112116100c8578063511f1112146103c557806361603dd91461044857806368b6154f146104bd5780636ccbae5f1461059b576100ea565b806307eca395146100ef578063280d9b051461021457806330135293146102f2575b600080fd5b610212600480360360a081101561010557600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561013457600080fd5b82018360208201111561014657600080fd5b803590602001918460018302840111600160201b8311171561016757600080fd5b919390929091602081019035600160201b81111561018457600080fd5b82018360208201111561019657600080fd5b803590602001918460018302840111600160201b831117156101b757600080fd5b919390929091602081019035600160201b8111156101d457600080fd5b8201836020820111156101e657600080fd5b803590602001918460018302840111600160201b8311171561020757600080fd5b509092509050610aae565b005b610212600480360360a081101561022a57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561026457600080fd5b82018360208201111561027657600080fd5b803590602001918460018302840111600160201b8311171561029757600080fd5b919390929091602081019035600160201b8111156102b457600080fd5b8201836020820111156102c657600080fd5b803590602001918460018302840111600160201b831117156102e757600080fd5b509092509050610c92565b6102126004803603608081101561030857600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561033757600080fd5b82018360208201111561034957600080fd5b803590602001918460018302840111600160201b8311171561036a57600080fd5b919390929091602081019035600160201b81111561038757600080fd5b82018360208201111561039957600080fd5b803590602001918460018302840111600160201b831117156103ba57600080fd5b509092509050610e3d565b610212600480360360608110156103db57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561040a57600080fd5b82018360208201111561041c57600080fd5b803590602001918460018302840111600160201b8311171561043d57600080fd5b509092509050610fcc565b6102126004803603604081101561045e57600080fd5b81359190810190604081016020820135600160201b81111561047f57600080fd5b82018360208201111561049157600080fd5b803590602001918460018302840111600160201b831117156104b257600080fd5b5090925090506110c9565b610212600480360360a08110156104d357600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561050d57600080fd5b82018360208201111561051f57600080fd5b803590602001918460018302840111600160201b8311171561054057600080fd5b919390929091602081019035600160201b81111561055d57600080fd5b82018360208201111561056f57600080fd5b803590602001918460018302840111600160201b8311171561059057600080fd5b5090925090506111ae565b6105b8600480360360208110156105b157600080fd5b50356113a8565b60408051918252519081900360200190f35b610212600480360360808110156105e057600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561061a57600080fd5b82018360208201111561062c57600080fd5b803590602001918460018302840111600160201b8311171561064d57600080fd5b5090925090506113ba565b6102126004803603606081101561066e57600080fd5b81359190810190604081016020820135600160201b81111561068f57600080fd5b8201836020820111156106a157600080fd5b803590602001918460018302840111600160201b831117156106c257600080fd5b919390929091602081019035600160201b8111156106df57600080fd5b8201836020820111156106f157600080fd5b803590602001918460018302840111600160201b8311171561071257600080fd5b5090925090506114d4565b610725611675565b604080516001600160a01b039092168252519081900360200190f35b6102126004803603608081101561075757600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561078657600080fd5b82018360208201111561079857600080fd5b803590602001918460018302840111600160201b831117156107b957600080fd5b919390929091602081019035600160201b8111156107d657600080fd5b8201836020820111156107e857600080fd5b803590602001918460018302840111600160201b8311171561080957600080fd5b509092509050611684565b610212600480360360a081101561082a57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561086457600080fd5b82018360208201111561087657600080fd5b803590602001918460018302840111600160201b8311171561089757600080fd5b919390929091602081019035600160201b8111156108b457600080fd5b8201836020820111156108c657600080fd5b803590602001918460018302840111600160201b831117156108e757600080fd5b5090925090506117de565b6102126004803603608081101561090857600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561094257600080fd5b82018360208201111561095457600080fd5b803590602001918460018302840111600160201b8311171561097557600080fd5b5090925090506119e4565b610212600480360360c081101561099657600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156109d057600080fd5b8201836020820111156109e257600080fd5b803590602001918460018302840111600160201b83111715610a0357600080fd5b919390929091602081019035600160201b811115610a2057600080fd5b820183602082011115610a3257600080fd5b803590602001918460018302840111600160201b83111715610a5357600080fd5b919390929091602081019035600160201b811115610a7057600080fd5b820183602082011115610a8257600080fd5b803590602001918460018302840111600160201b83111715610aa357600080fd5b509092509050611ad3565b610bb163ce9fb82b89898989898960405160240180876001600160a01b03166001600160a01b0316815260200186815260200180602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f820116905080830192505050985050505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208884848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b600154604051630119f80560e21b81526001600160a01b038a811660048301908152602483018b9052608060448401908152608484018a90529190931692630467e014928c928c928c928c928c928c92909190606481019060a401878780828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f82011690508083019250505098505050505050505050600060405180830381600087803b158015610c7057600080fd5b505af1158015610c84573d6000803e3d6000fd5b505050505050505050505050565b610d8363b88d4fde888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040516315eab15d60e21b81526001600160a01b03898116600483019081528982166024840152604483018990526080606484019081526084840188905291909316926357aac574928b928b928b928b928b929160a401848480828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b158015610e1c57600080fd5b505af1158015610e30573d6000803e3d6000fd5b5050505050505050505050565b610f09637c69eae28787878760405160240180856001600160a01b03166001600160a01b0316815260200184815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09d909d1b9c909c178c529351909a208a51918d01849004840282018401909a528b81528f985096508b95508a94508493505085019050838280828437600092019190915250611d5492505050565b600154604051630119f80560e21b81526001600160a01b038881166004830190815260248301899052608060448401908152608484018890529190931692630467e014928a928a928a928a9290606481019060a401858580828437600081840152601f19601f8201169050808301925050508381038252600081526020016020019650505050505050600060405180830381600087803b158015610fac57600080fd5b505af1158015610fc0573d6000803e3d6000fd5b50505050505050505050565b604080516001600160a01b038616602482015260448082018690528251808303909101815260649091018252602081810180516001600160e01b0316632392c18960e01b17815291519091208251601f85018390048302810183019093528383526110569290918691908690869081908401838280828437600092019190915250611d5492505050565b60015460408051631292e83560e11b81526001600160a01b0387811660048301526024820187905291519190921691632525d06a91604480830192600092919082900301818387803b1580156110ab57600080fd5b505af11580156110bf573d6000803e3d6000fd5b5050505050505050565b6040805160248082018690528251808303909101815260449091018252602081810180516001600160e01b0316630852cd8d60e31b17815291519091208251601f85018390048302810183019093528383526111449290918691908690869081908401838280828437600092019190915250611d5492505050565b6001546040805163e67ca8a360e01b81526004810186905290516001600160a01b039092169163e67ca8a39160248082019260009290919082900301818387803b15801561119157600080fd5b505af11580156111a5573d6000803e3d6000fd5b50505050505050565b61129f639e5be9a5888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b03909316926302759c37928b928b9286926368b62d32928d928d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561132757600080fd5b505afa15801561133b573d6000803e3d6000fd5b505050506040513d602081101561135157600080fd5b5051604080516001600160e01b031960e087901b1681526001600160a01b03948516600482015292909316602483015260448201529051606480830192600092919082900301818387803b158015610e1c57600080fd5b60009081526020819052604090205490565b604080516001600160a01b0380881660248301528616604482015260648082018690528251808303909101815260849091018252602081810180516001600160e01b0316632142170760e11b17815291519091208251601f850183900483028101830190935283835261144c9290918691908690869081908401838280828437600092019190915250611d5492505050565b600154604080516315eab15d60e21b81526001600160a01b0388811660048301528781166024830152604482018790526080606483015260006084830181905292519316926357aac5749260c48084019391929182900301818387803b1580156114b557600080fd5b505af11580156114c9573d6000803e3d6000fd5b505050505050505050565b611585635cbe11128686866040516024018084815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09c909c1b9b909b178b5293519099208951918c018490048402820184019099528a81528e975095508a9450899350839250508401838280828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b039093169263e67ca8a39284926368b62d32928b928b928b929190606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561160b57600080fd5b505afa15801561161f573d6000803e3d6000fd5b505050506040513d602081101561163557600080fd5b5051604080516001600160e01b031960e085901b168152600481019290925251602480830192600092919082900301818387803b1580156114b557600080fd5b6001546001600160a01b031690565b61175063d8d3cc6e8787878760405160240180856001600160a01b03166001600160a01b0316815260200184815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09d909d1b9c909c178c529351909a208a51918d01849004840282018401909a528b81528f985096508b95508a94508493505085019050838280828437600092019190915250611d5492505050565b60015460405163b546666960e01b81526001600160a01b03888116600483019081526024830189905260606044840190815260648401889052919093169263b5466669928a928a928a928a9290608401848480828437600081840152601f19601f82011690508083019250505095505050505050600060405180830381600087803b158015610fac57600080fd5b6118cf639d743989888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b03909316926357aac574928b928b9286926368b62d32928d928d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561195757600080fd5b505afa15801561196b573d6000803e3d6000fd5b505050506040513d602081101561198157600080fd5b5051604080516001600160e01b031960e087901b1681526001600160a01b039485166004820152929093166024830152604482015260806064820152600060848201819052915160c4808301939282900301818387803b158015610e1c57600080fd5b604080516001600160a01b0380881660248301528616604482015260648082018690528251808303909101815260849091018252602081810180516001600160e01b03166323b872dd60e01b17815291519091208251601f8501839004830281018301909352838352611a769290918691908690869081908401838280828437600092019190915250611d5492505050565b600154604080516302759c3760e01b81526001600160a01b038881166004830152878116602483015260448201879052915191909216916302759c3791606480830192600092919082900301818387803b1580156114b557600080fd5b611bf063c29b52f98a8a8a8a8a8a8a60405160240180886001600160a01b03166001600160a01b03168152602001876001600160a01b03166001600160a01b0316815260200186815260200180602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f82011690508083019250505099505050505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208884848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b8152600481018a815260248201928352604482018990526001600160a01b03909316926357aac574928d928d9286926368b62d32928f928f928f92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b158015611c7857600080fd5b505afa158015611c8c573d6000803e3d6000fd5b505050506040513d6020811015611ca257600080fd5b50516040516001600160e01b031960e086901b1681526001600160a01b0380851660048301908152908416602483015260448201839052608060648301908152608483018b90528b928b92919060a401848480828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b158015611d3157600080fd5b505af1158015611d45573d6000803e3d6000fd5b50505050505050505050505050565b6000828152602081815260408083205481518084018890523060601b81840152605480820183905283518083039091018152607490910190925281519190920120909190611db3908490611da790611ea9565b9063ffffffff611efa16565b90506001600160a01b03811615801590611e4957506001546040805163430c208160e01b81526001600160a01b038481166004830152602482018890529151919092169163430c2081916044808301926020929190829003018186803b158015611e1c57600080fd5b505afa158015611e30573d6000803e3d6000fd5b505050506040513d6020811015611e4657600080fd5b50515b611e8e576040805162461bcd60e51b8152602060048201526011602482015270494e56414c49445f5349474e415455524560781b604482015290519081900360640190fd5b50505060009081526020819052604090208054600101905550565b604080517f19457468657265756d205369676e6564204d6573736167653a0a333200000000602080830191909152603c8083019490945282518083039094018452605c909101909152815191012090565b60008151604114611f0d57506000611fe3565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0821115611f535760009350505050611fe3565b8060ff16601b14158015611f6b57508060ff16601c14155b15611f7c5760009350505050611fe3565b6040805160008152602080820180845289905260ff8416828401526060820186905260808201859052915160019260a0808401939192601f1981019281900390910190855afa158015611fd3573d6000803e3d6000fd5b5050506020604051035193505050505b9291505056fea265627a7a7231582014816bfd0c1519ce8c4cf272eb0526ffdba3abef0df7f17deb0da40bd8abb77f64736f6c634300050c0032","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533"}},"0x7c3c91245769c8b7450ad522792dec4bd4bf797f":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b506004361061003f575f3560e01c80631bf7e13e146100435780636ccbae5f1461006c578063a424740014610099575b5f80fd5b610056610051366004610749565b6100bc565b604051610063919061082c565b60405180910390f35b61008b61007a36600461083e565b5f9081526001602052604090205490565b604051908152602001610063565b6100ac6100a7366004610749565b6101d6565b6040519015158152602001610063565b60605f5a90506100cd8585856101d6565b6101315760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e61676572466f727761726465723a205349474e415455604482015269149157d253959053125160b21b60648201526084015b60405180910390fd5b6101cb6101416020870187610870565b5f546001600160a01b031660408801358461015f60608b018b610889565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f9201919091525061023292505050565b9150505b9392505050565b5f61022a6101e38561093a565b5f54604080516020601f88018190048102820181019092528681526001600160a01b03909216919087908790819084018382808284375f9201919091525061030e92505050565b949350505050565b606061023d85610453565b5f80876001600160a01b0316866102568b8a898961047e565b60405161026391906109f5565b5f604051808303815f8787f1925050503d805f811461029d576040519150601f19603f3d011682016040523d82523d5f602084013e6102a2565b606091505b5090925090506102b3603f87610a10565b5a116102c1576102c1610a2f565b61030182826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506104ae565b9998505050505050505050565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015610352573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103769190610a43565b90505f6104238660600151805190602001208688602001516040516020016103c39392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561044957508551610449906001600160a01b031682866104e7565b9695505050505050565b5f8181526001602081905260409091205461046d91610a5a565b5f9182526001602052604090912055565b606082858560405160200161049593929190610a7f565b6040516020818303038152906040529050949350505050565b606083156104bd5750816101cf565b8251156104cd5782518084602001fd5b8160405162461bcd60e51b8152600401610128919061082c565b5f805f6104f48585610622565b90925090505f81600481111561050c5761050c610abd565b14801561052a5750856001600160a01b0316826001600160a01b0316145b1561053a576001925050506101cf565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401610561929190610ad1565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161059f91906109f5565b5f60405180830381855afa9150503d805f81146105d7576040519150601f19603f3d011682016040523d82523d5f602084013e6105dc565b606091505b50915091508180156105ef575080516020145b801561061657508051630b135d3f60e11b906106149083016020908101908401610a43565b145b98975050505050505050565b5f808251604103610656576020830151604084015160608501515f1a61064a87828585610664565b9450945050505061065d565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561069957505f90506003610740565b8460ff16601b141580156106b157508460ff16601c14155b156106c157505f90506004610740565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610712573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b03811661073a575f60019250925050610740565b91505f90505b94509492505050565b5f805f6040848603121561075b575f80fd5b833567ffffffffffffffff80821115610772575f80fd5b9085019060808288031215610785575f80fd5b9093506020850135908082111561079a575f80fd5b818601915086601f8301126107ad575f80fd5b8135818111156107bb575f80fd5b8760208285010111156107cc575f80fd5b6020830194508093505050509250925092565b5f5b838110156107f95781810151838201526020016107e1565b50505f910152565b5f81518084526108188160208601602086016107df565b601f01601f19169290920160200192915050565b602081525f6101cf6020830184610801565b5f6020828403121561084e575f80fd5b5035919050565b80356001600160a01b038116811461086b575f80fd5b919050565b5f60208284031215610880575f80fd5b6101cf82610855565b5f808335601e1984360301811261089e575f80fd5b83018035915067ffffffffffffffff8211156108b8575f80fd5b60200191503681900382131561065d575f80fd5b634e487b7160e01b5f52604160045260245ffd5b6040516080810167ffffffffffffffff81118282101715610903576109036108cc565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610932576109326108cc565b604052919050565b5f6080823603121561094a575f80fd5b6109526108e0565b61095b83610855565b81526020808401358183015260408401356040830152606084013567ffffffffffffffff8082111561098b575f80fd5b9085019036601f83011261099d575f80fd5b8135818111156109af576109af6108cc565b6109c1601f8201601f19168501610909565b915080825236848285010111156109d6575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b5f8251610a068184602087016107df565b9190910192915050565b5f82610a2a57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b5f60208284031215610a53575f80fd5b5051919050565b80820180821115610a7957634e487b7160e01b5f52601160045260245ffd5b92915050565b5f8451610a908184602089016107df565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f61022a604083018461080156fea164736f6c6343000818000a","storage":{"0x0":"0x39a27956b78d00a4e00ea8833ff0947410a2933f"}},"0x8861cdfa38838531275ce12f9e795c3b9ff29cbe":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x936188f2c3c8e8c95e425b6fe41c2ac9e701585e":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x94f57ed7e9af03a10e8eb23ce1b3c7914a182b0f":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x95f29431aeb52c0d5dbeeec36010b8e2ca69cb3d":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x9b2565a3545a1312bdcb6e7148a7f7cae8c2706b":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c806373cc48a61161008857806398d35f201161006357806398d35f2014610215578063bd7ed31a1461021d578063c327deef14610245578063d7b82ebe1461026d575f80fd5b806373cc48a6146101af5780638438dc04146101ef5780638da5cb5b14610202575f80fd5b806313af4035116100c357806313af40351461015657806328e7677d146101695780632c095cbb1461017c578063435cc1621461018f575f80fd5b8063020ed8d3146100e9578063087991bc146100fe5780630b1a249514610143575b5f80fd5b6100fc6100f73660046122ff565b610280565b005b61011161010c36600461238a565b610300565b6040805163ffffffff94851681529390921660208401526001600160601b031916908201526060015b60405180910390f35b6100fc610151366004612510565b61036c565b6100fc6101643660046125c6565b6104da565b6100fc6101773660046122ff565b610512565b6100fc61018a3660046125e1565b61058a565b6101a261019d366004612674565b610656565b60405161013a919061278c565b6101d76101bd36600461279e565b60046020525f90815260409020546001600160a01b031681565b6040516001600160a01b03909116815260200161013a565b6100fc6101fd3660046122ff565b6106d2565b6001546101d7906001600160a01b031681565b6101a261074a565b6101d761022b36600461279e565b60056020525f90815260409020546001600160a01b031681565b6101d761025336600461279e565b60036020525f90815260409020546001600160a01b031681565b6101a261027b3660046127b7565b6107d5565b6001546001600160a01b03163314610296575f80fd5b60ff82165f8181526003602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527ff73c3c226af96b7f1ba666a21b3ceaf2be3ee6a365e3178fd9cd1eaae0075aa891015b60405180910390a15050565b5f805f8060025f8787604051610317929190612817565b604080519182900390912082526020808301939093529081015f90812061ffff8b16825290925290205463ffffffff80821695506401000000008204169350600160401b900460601b91505093509350939050565b83516020808601919091205f90815260028252604080822061ffff891683529092529081205463ffffffff16906103a385846107ea565b90506103b0818784610889565b6103b8612239565b845151156103d7576103ca85856107ea565b90506103d7818885610889565b5f6103e1836108cc565b602081015190915060fe16156103f5575f80fd5b61040081602761092a565b158015610425575061041381600261092a565b1580610425575061042581600661092a565b61042d575f80fd5b61043e89898561012001518461093a565b156104795787516020808a01919091205f90815260028252604080822061ffff8d1683529092522080546001600160e01b03191690556104cf565b6104988884610120015183856101200151610493876108cc565b610968565b156100e55787516020808a01919091205f90815260028252604080822061ffff8d1683529092522080546001600160e01b03191690555b505050505050505050565b6001546001600160a01b031633146104f0575f80fd5b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6001546001600160a01b03163314610528575f80fd5b60ff82165f8181526004602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527f2fcc274c3b72dd483ab201bfa87295e3817e8b9b10693219873b722ca1af00c791016102f4565b610592612239565b61059c83836107ea565b805190915061ffff16602f146105b0575f80fd5b60a081015184516020808701919091205f90815260028252604080822061ffff8a16835290925220546105e9919063ffffffff16610a7c565b6105f1575f80fd5b5f6105fb82610a94565b9050805151602082015110156100e55761061c818361012001518789610aab565b505082516020808501919091205f90815260028252604080822061ffff881683529092522080546001600160e01b03191690555b50505050565b60605f83838080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201829052509394505050505b85518110156106c7576106bd8682815181106106af576106af612826565b602002602001015183610c4a565b9150600101610691565b5090505b9392505050565b6001546001600160a01b031633146106e8575f80fd5b60ff82165f8181526005602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527fc7eec866a7a1386188cc3ca20ffea75b71bd3e90a60b6791b1d3f0971145118d91016102f4565b5f80546107569061283a565b80601f01602080910402602001604051908101604052809291908181526020018280546107829061283a565b80156107cd5780601f106107a4576101008083540402835291602001916107cd565b820191905f5260205f20905b8154815290600101906020018083116107b057829003601f168201915b505050505081565b60606107e18383610c4a565b90505b92915050565b6107f2612239565b82516107fd90610dc6565b905061080d8160e0015183610ebf565b610815575f80fd5b5f61082382835f0151610f25565b604083015190915060ff16610838825f610fcc565b14610841575f80fd5b610120820181905260808201516108589042610a7c565b610860575f80fd5b61086e428360a00151610a7c565b610876575f80fd5b61088281838686611026565b5092915050565b6108978360a0015182610a7c565b61089f575f80fd5b825161ffff166032146108b0575f80fd5b6108bf83610120015183611106565b6108c7575f80fd5b505050565b6040805160c0810182525f8082526020820181905291810182905260608082018190526080820183905260a08201529061090583610a94565b60a081015160c08201519192506106cb91610921908290612880565b83519190611172565b5f6107e18360a001515f846112b4565b5f6109468284866113c1565b1561095d57610955828661092a565b159050610960565b505f5b949350505050565b60208101515f9060fe161561097b575f80fd5b5f610985866113e6565b90505f610991856113e6565b90505f8061099f8a82611401565b6109aa906001612893565b60ff1690505b8951811015610a6b57836109dc896109d784858f516109cf9190612880565b8f9190611424565b6114a4565b03610a3f575f6109f7876109d785868f516109cf9190612880565b90508660800151841015610a23578381118015610a175750866080015181105b95505050505050610a73565b83811180610a1757508660800151811095505050505050610a73565b905080610a4c8a82611401565b610a57906001612893565b610a649060ff16826128ac565b90506109b0565b505f93505050505b95945050505050565b5f80610a8883856128bf565b60030b12159392505050565b610a9c61228e565b6107e48261010001515f61152d565b60a084015184515f90610abe9083611548565b90505f8660a001518760c00151610ad59190612880565b9050818111610ae2575f80fd5b5f610aed868861159f565b9050805f03610b1a57610b0c610b0384866128ac565b895190876112b4565b15610b15575f80fd5b610b5b565b87515f90610b29908686611424565b90505f8213610b36575f80fd5b5f610b41898361159f565b12156104cf575f610b52888361159f565b126104cf575f80fd5b5050505050505050565b60c08101516020820181905281515111610b7c5750565b5f610b8e825f01518360200151611548565b8260200151610b9d91906128ac565b8251909150610bac90826116ec565b61ffff166040830152610bc06002826128ac565b8251909150610bcf90826116ec565b61ffff166060830152610be36002826128ac565b8251909150610bf29082611712565b63ffffffff166080830152610c086004826128ac565b82519091505f90610c1990836116ec565b61ffff169050610c2a6002836128ac565b60a084018190529150610c3d81836128ac565b60c0909301929092525050565b6060610c54612239565b610c5e84846107ea565b61012081015180516020918201205f908152600282526040808220845161ffff16835290925220805491925090600160401b900460601b6001600160601b03191615610cc35760a08201518154610cbb919063ffffffff16610a7c565b610cc3575f80fd5b604080516060808201835260a085015163ffffffff9081168352608086015181166020808501918252610100880180518051908301206001600160601b0319168688019081526101208a0180518051908501205f908152600285528981208c5161ffff16825290945292889020965187549451915190961c600160401b0268010000000000000000600160e01b03199186166401000000000267ffffffffffffffff19909516969095169590951792909217939093169190911790925551905191517f55ced933cdd5a34dd03eb5d4bef19ec6ebb251dcd7a988eee0c1b9a13baaa88b92610db192916128e6565b60405180910390a15061010001519392505050565b610dce612239565b610dd8825f6116ec565b61ffff168152610de9826002611401565b60ff166020820152610dfc826003611401565b60ff166040820152610e0f826004611712565b63ffffffff9081166060830152610e2b90839060089061171216565b63ffffffff9081166080830152610e47908390600c9061171216565b63ffffffff90811660a0830152610e639083906010906116ec16565b61ffff1660c0820152610e7782601261173a565b60e0820181905251610eb490610e8e9060126128ac565b8260e001515160128551610ea29190612880565b610eac9190612880565b849190611424565b610100820152919050565b5f80610ed5610ece8483611548565b84906116ec565b83516020808601919091208651878301205f90815260028352604080822061ffff90951682529390925291902054600160401b900460601b6001600160601b031990811691161491505092915050565b60605f610f3184610a94565b90505b8051516020820151101561088257606081015161ffff16600114610f56575f80fd5b81515f03610f6e57610f6781611754565b9150610fa7565b60208101518151610f7e91611548565b825114610f89575f80fd5b805160208201518351610f9f9285925f92611775565b610fa7575f80fd5b8261ffff16816040015161ffff1614610fbe575f80fd5b610fc781610b65565b610f34565b5f805b83518310610fdf57610fdf61290a565b5f610fea8585611401565b60ff169050610ffa8160016128ac565b61100490856128ac565b9350805f0361101357506107e1565b61101e6001836128ac565b915050610fcf565b83518360e00151511115611038575f80fd5b61105c5f858560e0015151875161104f9190612880565b60e0870151929190611797565b611064575f80fd5b5f61106f828261152d565b9050602b61ffff16816040015161ffff160361109d576110908484836117cb565b611098575f80fd5b6110ff565b603061ffff16816040015161ffff16036110bc5761109084848361185f565b60405162461bcd60e51b8152602060048201526014602482015273139bc81d985b1a59081c1c9bdbd988199bdd5b9960621b604482015260640160405180910390fd5b5050505050565b5f806111128482611401565b61111d906001612893565b60ff1690505f5b835181101561095d5761113984828785611797565b15611149576001925050506107e4565b6111538482611401565b61115e906001612893565b61116b9060ff16826128ac565b9050611124565b6040805160c0810182525f8082526020820181905291810182905260608082018190526080820183905260a0820152906111ac83856128ac565b90506111c26111bb5f866128ac565b8690611401565b60ff1682526111d56111bb6001866128ac565b60ff1660208301526111f26111eb6002866128ac565b86906116ec565b61ffff1660408301525f61121161120a6004876128ac565b8790611401565b905061121e6005866128ac565b945061122e868660ff8416611424565b606084015261124060ff8216866128ac565b94505f61124d8787611401565b905060208160ff16111561125f575f80fd5b61126a6001876128ac565b955061127a878760ff8416611900565b608085015261128c60ff8216876128ac565b95506112a48661129c8186612880565b899190611424565b60a0850152509195945050505050565b5f60ff600883811c82169183916112cc918616612932565b90505f6112dd600780871690612952565b600160ff919091161b9050855b87518110156113b4575f6112fe8983611401565b90505f61131661130f8460016128ac565b8b90611401565b90508160ff168660ff161015611334575f96505050505050506106cb565b8160ff168660ff1603611393578460ff168160ff161161135c575f96505050505050506106cb565b8361137f61136d60ff8816866128ac565b6113789060026128ac565b8c90611401565b1660ff165f141596505050505050506106cb565b61139e816002612893565b6113ab9060ff16846128ac565b925050506112ea565b505f979650505050505050565b5f806113cd85846114a4565b90505f6113d9856113e6565b9190911495945050505050565b5f6107e460016113f68484611401565b84919060ff1661193d565b5f82828151811061141457611414612826565b016020015160f81c905092915050565b825160609061143383856128ac565b111561143d575f80fd5b5f8267ffffffffffffffff811115611457576114576123d9565b6040519080825280601f01601f191660200182016040528015611481576020820181803683370190505b50905060208082019086860101611499828287611b43565b509095945050505050565b815160ff165f9081526005602052604080822054606085015182860151925163347ced5960e11b81526001600160a01b03909216926368f9dab2926114ee9291879160040161296b565b602060405180830381865afa158015611509573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107e191906129a4565b61153561228e565b82815260c081018290526107e481610b65565b5f815b8351811061155b5761155b61290a565b5f6115668583611401565b60ff1690506115768160016128ac565b61158090836128ac565b9150805f0361158f5750611595565b5061154b565b6109608382612880565b5f6115aa8383611b98565b156115b657505f6107e4565b5f805f805f6115c5885f610fcc565b90505f6115d2885f610fcc565b90505b808211156115fe578593506115ea8987611bb3565b9550816115f6816129bb565b9250506115d5565b81811115611627578492506116138886611bb3565b94508061161f816129bb565b9150506115fe565b5f8211801561163f575061163d89878a88611797565b155b15611674578593506116518987611bb3565b95508492506116608886611bb3565b945061166d600183612880565b9150611627565b855f0361168a575f1996505050505050506107e4565b845f036116a057600196505050505050506107e4565b6116df6116ae8560016128ac565b6116b88b87611401565b60ff168a6116c78760016128ac565b6116d18d89611401565b8e949392919060ff16611bd6565b9998505050505050505050565b81515f906116fb8360026128ac565b1115611705575f80fd5b50016002015161ffff1690565b81515f906117218360046128ac565b111561172b575f80fd5b50016004015163ffffffff1690565b60605f6117478484611548565b9050610960848483611424565b602081015181516060916107e49161176c9082611548565b84519190611424565b5f611781848484611cc6565b61178c878785611cc6565b149695505050505050565b5f6117af83838486516117aa9190612880565b611cc6565b6117c186868789516117aa9190612880565b1495945050505050565b5f806117d685610a94565b90505b8051516020820151101561095d57604081015161ffff166030146117fb575f80fd5b5f61180582611ce8565b90505f61181e5f835184611d049092919063ffffffff16565b905061182c81838989611da0565b1561184f5761184561183d84611754565b868385611e9b565b93505050506106cb565b505061185a81610b65565b6117d9565b5f6118778460e0015161187184611754565b90611b98565b61187f575f80fd5b815151602083015110156118f75761189e8460e0015161187184611754565b6118a6575f80fd5b5f6118b083611ce8565b90505f6118c95f835184611d049092919063ffffffff16565b90506118d781838888611da0565b156118e7576001925050506106cb565b50506118f282610b65565b61187f565b505f9392505050565b5f602082111561190e575f80fd5b835161191a83856128ac565b1115611924575f80fd5b506020919092018101519190036101000a5f1901191690565b5f603482111561194b575f80fd5b5f80805b84811015611a29575f8761196383896128ac565b8151811061197357611973612826565b01602001516001600160f81b0319169050600360fc1b81108015906119a65750603d60f91b6001600160f81b0319821611155b6119ae575f80fd5b604051806080016040528060478152602001612b5c604791396119d6603060f884901c612880565b815181106119e6576119e6612826565b0160209081015160f81c93508311156119fd575f80fd5b611a08600187612880565b8203611a145750611a29565b5060059290921b60ff8216179160010161194f565b505f611a368560056129d0565b9050611a436008866129e7565b5f03611a5a578160ff16600584901b179250611b29565b611a656008866129e7565b600203611a935760028260ff16901c60ff16600384901b179250600281611a8c9190612880565b9050611b29565b611a9e6008866129e7565b600403611ac55760048260ff16901c60ff16600184901b179250600481611a8c9190612880565b611ad06008866129e7565b600503611af75760018260ff16901c60ff16600484901b179250600181611a8c9190612880565b611b026008866129e7565b6007036100e55760038260ff16901c60ff16600284901b179250600381611a8c9190612880565b611b3581610100612880565b9290921b9695505050505050565b60208110611b7b5781518352611b5a6020846128ac565b9250611b676020836128ac565b9150611b74602082612880565b9050611b43565b905182516020929092036101000a5f190180199091169116179052565b5f815183511480156107e157506107e1835f845f8751611775565b5f611bbe8383611401565b60ff16611bcc8360016128ac565b6107e191906128ac565b5f8480831015611be35750815b6020878901810190858701015f5b83811015611cab5782518251808214611c7b575f6020871115611c1657505f19611c52565b600184611c24896020612880565b611c2e91906128ac565b611c399060086129d0565b611c44906002612ada565b611c4e9190612880565b1990505b5f611c61838316858416612ae5565b90508015611c78579750611cbc9650505050505050565b50505b611c866020866128ac565b9450611c936020856128ac565b93505050602081611ca491906128ac565b9050611bf1565b50611cb68589612ae5565b93505050505b9695505050505050565b82515f90611cd483856128ac565b1115611cde575f80fd5b5091016020012090565b60a081015160c08201516060916107e49161176c908290612880565b604080516080810182525f8082526020820181905291810191909152606080820152611d3a611d335f856128ac565b85906116ec565b61ffff168152611d55611d4e6002856128ac565b8590611401565b60ff166020820152611d6b611d4e6003856128ac565b60ff166040820152611d94611d816004856128ac565b611d8c600485612880565b869190611424565b60608201529392505050565b5f846020015160ff16600314611db757505f610960565b826020015160ff16856040015160ff1614611dd357505f610960565b5f611ddd85611f96565b90508360c0015161ffff168161ffff1614611dfb575f915050610960565b8551610100165f03611e10575f915050610960565b60408087015160ff165f908152600360209081529082902054855191860151925163de8f50a160e01b81526001600160a01b039091169263de8f50a192611e5c928a9290600401612b04565b602060405180830381865afa158015611e77573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611cbc9190612b3c565b5f80611ea683611f96565b90505b84515160208601511015611f8b5760a085015160c08601515f91611edb91611ed2908290612880565b88519190611d04565b90508161ffff16815f015161ffff1614611ef55750611f7d565b846040015160ff16816020015160ff1614611f105750611f7d565b60408051808201909152606081525f6020820152611f3c85518951611f3591906128ac565b8290611ff7565b50611f47818961205a565b50611f52818661205a565b50611f698260400151825f0151846060015161207f565b15611f7a5760019350505050610960565b50505b611f8685610b65565b611ea9565b505f95945050505050565b5f805f5b8351811015611fe8576001811615611fbe57611fb68482611401565b60ff16611fd0565b6008611fca8583611401565b60ff16901b5b611fde9061ffff16836128ac565b9150600101611f9a565b506106cb601082901c826128ac565b60408051808201909152606081525f60208201526120166020836129e7565b1561203e576120266020836129e7565b612031906020612880565b61203b90836128ac565b91505b506020828101829052604080518085525f815290920101905290565b60408051808201909152606081525f60208201526107e183845f015151848551612126565b60ff83165f908152600460205260408120546001600160a01b03166120a557505f6106cb565b60ff84165f90815260046020819052604091829020549151637bf41d7760e11b81526001600160a01b039092169163f7e83aee916120e79187918791016128e6565b602060405180830381865afa158015612102573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109609190612b3c565b60408051808201909152606081525f60208201528251821115612147575f80fd5b602085015161215683866128ac565b111561218957612189856121798760200151878661217491906128ac565b61220c565b6121849060026129d0565b612222565b5f808651805187602083010193508088870111156121a75787860182525b505050602084015b602084106121e757805182526121c66020836128ac565b91506121d36020826128ac565b90506121e0602085612880565b93506121af565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b5f8183111561221c5750816107e4565b50919050565b815161222e8383611ff7565b50610650838261205a565b60408051610140810182525f8082526020820181905291810182905260608082018390526080820183905260a0820183905260c082019290925260e08101829052610100810182905261012081019190915290565b6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b803560ff811681146122e3575f80fd5b919050565b6001600160a01b03811681146122fc575f80fd5b50565b5f8060408385031215612310575f80fd5b612319836122d3565b91506020830135612329816122e8565b809150509250929050565b803561ffff811681146122e3575f80fd5b5f8083601f840112612355575f80fd5b50813567ffffffffffffffff81111561236c575f80fd5b602083019150836020828501011115612383575f80fd5b9250929050565b5f805f6040848603121561239c575f80fd5b6123a584612334565b9250602084013567ffffffffffffffff8111156123c0575f80fd5b6123cc86828701612345565b9497909650939450505050565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff81118282101715612416576124166123d9565b604052919050565b5f82601f83011261242d575f80fd5b813567ffffffffffffffff811115612447576124476123d9565b61245a601f8201601f19166020016123ed565b81815284602083860101111561246e575f80fd5b816020850160208301375f918101602001919091529392505050565b5f6040828403121561249a575f80fd5b6040516040810167ffffffffffffffff82821081831117156124be576124be6123d9565b8160405282935084359150808211156124d5575f80fd5b6124e18683870161241e565b835260208501359150808211156124f6575f80fd5b506125038582860161241e565b6020830152505092915050565b5f805f805f60a08688031215612524575f80fd5b61252d86612334565b9450602086013567ffffffffffffffff80821115612549575f80fd5b61255589838a0161241e565b9550604088013591508082111561256a575f80fd5b61257689838a0161248a565b9450606088013591508082111561258b575f80fd5b61259789838a0161248a565b935060808801359150808211156125ac575f80fd5b506125b98882890161241e565b9150509295509295909350565b5f602082840312156125d6575f80fd5b81356107e1816122e8565b5f805f80608085870312156125f4575f80fd5b6125fd85612334565b9350602085013567ffffffffffffffff80821115612619575f80fd5b6126258883890161241e565b9450604087013591508082111561263a575f80fd5b6126468883890161248a565b9350606087013591508082111561265b575f80fd5b506126688782880161241e565b91505092959194509250565b5f805f60408486031215612686575f80fd5b833567ffffffffffffffff8082111561269d575f80fd5b818601915086601f8301126126b0575f80fd5b81356020828211156126c4576126c46123d9565b8160051b6126d38282016123ed565b928352848101820192828101908b8511156126ec575f80fd5b83870192505b8483101561272657823586811115612708575f80fd5b6127168d86838b010161248a565b83525091830191908301906126f2565b985050508701359250508082111561273c575f80fd5b506123cc86828701612345565b5f81518084525f5b8181101561276d57602081850181015186830182015201612751565b505f602082860101526020601f19601f83011685010191505092915050565b602081525f6107e16020830184612749565b5f602082840312156127ae575f80fd5b6107e1826122d3565b5f80604083850312156127c8575f80fd5b823567ffffffffffffffff808211156127df575f80fd5b6127eb8683870161248a565b93506020850135915080821115612800575f80fd5b5061280d8582860161241e565b9150509250929050565b818382375f9101908152919050565b634e487b7160e01b5f52603260045260245ffd5b600181811c9082168061284e57607f821691505b60208210810361221c57634e487b7160e01b5f52602260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b818103818111156107e4576107e461286c565b60ff81811683821601908111156107e4576107e461286c565b808201808211156107e4576107e461286c565b600382810b9082900b03637fffffff198112637fffffff821317156107e4576107e461286c565b604081525f6128f86040830185612749565b8281036020840152610a738185612749565b634e487b7160e01b5f52600160045260245ffd5b634e487b7160e01b5f52601260045260245ffd5b5f61ffff808416806129465761294661291e565b92169190910492915050565b60ff82811682821603908111156107e4576107e461286c565b606081525f61297d6060830186612749565b828103602084015261298f8186612749565b91505061ffff83166040830152949350505050565b5f602082840312156129b4575f80fd5b5051919050565b5f816129c9576129c961286c565b505f190190565b80820281158282048414176107e4576107e461286c565b5f826129f5576129f561291e565b500690565b600181815b80851115612a3457815f1904821115612a1a57612a1a61286c565b80851615612a2757918102915b93841c93908002906129ff565b509250929050565b5f82612a4a575060016107e4565b81612a5657505f6107e4565b8160018114612a6c5760028114612a7657612a92565b60019150506107e4565b60ff841115612a8757612a8761286c565b50506001821b6107e4565b5060208310610133831016604e8410600b8410161715612ab5575081810a6107e4565b612abf83836129fa565b805f1904821115612ad257612ad261286c565b029392505050565b5f6107e18383612a3c565b8181035f8312801583831316838312821617156108825761088261286c565b606081525f612b166060830186612749565b8281036020840152612b288186612749565b90508281036040840152611cbc8185612749565b5f60208284031215612b4c575f80fd5b815180151581146107e1575f80fdfe00010203040506070809ffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fffffffffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fa164736f6c6343000818000a","storage":{"0x0":"0xbd","0x1":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1471eb6eb2c5e789fc3de43f8ce62938c7d1836ec861730447e2ada8fd81017b":"0x17cda4e23f7237277952e075b1c48467aabfacc0","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563":"0x2b000100000e1000244a5c080249aac11d7b6f6446702e54a1607371607a","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e564":"0x1a41855200fd2ce1cdde32f24e8fb500002b000100000e1000244f660802e06d","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e565":"0x44b80b8f1d39a95c0b0d7c65d08458e880409bbc683457104237c7f8ec8d0000","0x3617319a054d772f909f7c479a2cebe5066e836a939412e32403c99029b92eff":"0x5155f5627bdf9795b3dbb8887001ada1eeba93f2","0x85aaa47b6dc46495bb8824fad4583769726fea36efd831a35556690b830a8fbe":"0x6e2822b8856749ed179c77140dbc5f5a27410a4","0x91da3fd0782e51c6b3986e9e672fd566868e71f3dbc2d6c2cd6fbb3e361af2a7":"0x49da8861c65460639925febe1fb4b5b59b443082","0x95c6356c1b7a542b884d2484ef785c9c7224e77e1016c20007bddc15c23b452f":"0x3f9151d3fd1a82dcc5091909589900fd60ee767ee090bba000000000","0xabd6e7cb50984ff9c2f3e18a2660c3353dadf4e3291deeb275dae2cd1e44fe05":"0x458f653495fb8d9bd0e7df468c2bf76d26c7bd9"}},"0x9dc64b2558b458a15c7f01c192d874ef460f0a29":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x9df67c91f1bfcb4d966cf764e9218685e7c59e8a":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101d1575f3560e01c80638b95dd71116100fe578063c86902331161009e578063e32954eb1161006e578063e32954eb146104f2578063e59d895d14610505578063e985e9c514610518578063f1cb7e0614610553575f80fd5b8063c869023314610435578063ce3decdc1461048c578063d5fa2b001461049f578063d700ff33146104b2575f80fd5b8063a8fa5682116100d9578063a8fa5682146103ac578063a9784b3e146103bf578063ac9650d814610402578063bc1c58d114610422575f80fd5b80638b95dd7114610373578063a22cb46514610386578063a4b91a0114610399575f80fd5b80633603d758116101745780635c98042b116101445780635c98042b14610327578063623195b01461033a578063691f34311461034d5780637737221314610360575f80fd5b80633603d758146102975780633b3b57de146102aa5780634cbf6ba4146102bd57806359d1d43c14610307575f80fd5b8063124a319c116101af578063124a319c146102255780632203ab561461025057806329cd62ea14610271578063304e6ade14610284575f80fd5b806301ffc9a7146101d55780630af179d7146101fd57806310f13a8c14610212575b5f80fd5b6101e86101e3366004612267565b610566565b60405190151581526020015b60405180910390f35b61021061020b3660046122bd565b610576565b005b610210610220366004612304565b610778565b610238610233366004612377565b610842565b6040516001600160a01b0390911681526020016101f4565b61026361025e3660046123a1565b610a87565b6040516101f492919061240e565b61021061027f366004612426565b610bb5565b6102106102923660046122bd565b610c4d565b6102106102a536600461244f565b610cc6565b6102386102b836600461244f565b610d64565b6101e86102cb3660046123a1565b5f82815260208181526040808320546001600160401b031683526006825280832094835293815283822092825291909152205461ffff16151590565b61031a6103153660046122bd565b610d93565b6040516101f49190612466565b61031a61033536600461244f565b610e6f565b610210610348366004612478565b610f2a565b61031a61035b36600461244f565b610fc2565b61021061036e3660046122bd565b610ffa565b6102106103813660046124da565b611073565b6102106103943660046125b9565b611150565b6102106103a73660046125e3565b61122a565b61031a6103ba36600461261e565b6112f6565b6101e86103cd36600461265a565b6001600160a01b039283165f908152600c60209081526040808320948352938152838220929094168152925290205460ff1690565b6104156104103660046126ce565b611342565b6040516101f4919061270c565b61031a61043036600461244f565b61134f565b61047761044336600461244f565b5f81815260208181526040808320546001600160401b03168352600982528083209383529290522080546001909101549091565b604080519283526020830191909152016101f4565b61021061049a3660046122bd565b611387565b6102106104ad36600461276e565b6114c3565b6104da6104c036600461244f565b5f602081905290815260409020546001600160401b031681565b6040516001600160401b0390911681526020016101f4565b61041561050036600461279c565b6114e9565b6102106105133660046127d6565b6114fe565b6101e8610526366004612808565b6001600160a01b039182165f908152600b6020908152604080832093909416825291909152205460ff1690565b61031a6105613660046123a1565b6115a2565b5f61057082611666565b92915050565b826105808161168a565b610588575f80fd5b5f84815260208181526040808320548151601f87018490048402810184019092528582528392606092839285926001600160401b039091169183916105eb9183918d908d90819084018382808284375f9201919091525092939250506118b79050565b90505b80515160208201511015610712578661ffff165f03610652578060400151965061061781611912565b94508460405160200161062a9190612834565b60405160208183030381529060405280519060200120925061064b81611933565b9350610704565b5f61065c82611912565b9050816040015161ffff168861ffff16141580610680575061067e868261194f565b155b15610702576106db8c878a8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250505060208801518d91506106d2908290612863565b8b51158a61196a565b8160400151975081602001519650809550858051906020012093506106ff82611933565b94505b505b61070d81611bc9565b6105ee565b5083511561076c5761076c8a85888c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c925061076391508290508f612863565b8951158861196a565b50505050505050505050565b846107828161168a565b61078a575f80fd5b5f86815260208181526040808320546001600160401b03168352600a8252808320898452909152908190209051849184916107c89089908990612876565b908152602001604051809103902091826107e3929190612901565b5084846040516107f4929190612876565b6040518091039020867f448bc014f1536726cf8d54ff3d6481ed3cbc683c2591ca204274009afa09b1a18787878760405161083294939291906129e2565b60405180910390a3505050505050565b5f82815260208181526040808320546001600160401b031683526007825280832085845282528083206001600160e01b0319851684529091528120546001600160a01b03168015610894579050610570565b5f61089e85610d64565b90506001600160a01b0381166108b8575f92505050610570565b6040516301ffc9a760e01b60248201525f9081906001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b1790525161090f9190612834565b5f60405180830381855afa9150503d805f8114610947576040519150601f19603f3d011682016040523d82523d5f602084013e61094c565b606091505b509150915081158061095f575060208151105b80610989575080601f8151811061097857610978612a13565b01602001516001600160f81b031916155b1561099a575f945050505050610570565b6040516001600160e01b0319871660248201526001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b179052516109f09190612834565b5f60405180830381855afa9150503d805f8114610a28576040519150601f19603f3d011682016040523d82523d5f602084013e610a2d565b606091505b509092509050811580610a41575060208151105b80610a6b575080601f81518110610a5a57610a5a612a13565b01602001516001600160f81b031916155b15610a7c575f945050505050610570565b509095945050505050565b5f82815260208181526040808320546001600160401b03168352600180835281842086855290925282206060915b848111610b975780851615801590610ae457505f8181526020839052604081208054610ae090612885565b9050115b15610b8f5780825f8381526020019081526020015f20808054610b0690612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610b3290612885565b8015610b7d5780601f10610b5457610100808354040283529160200191610b7d565b820191905f5260205f20905b815481529060010190602001808311610b6057829003601f168201915b50505050509050935093505050610bae565b60011b610ab5565b505f60405180602001604052805f81525092509250505b9250929050565b82610bbf8161168a565b610bc7575f80fd5b60408051808201825284815260208082018581525f888152808352848120546001600160401b031681526009835284812089825283528490209251835551600190920191909155815185815290810184905285917f1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e4691015b60405180910390a250505050565b82610c578161168a565b610c5f575f80fd5b5f84815260208181526040808320546001600160401b03168352600382528083208784529091529020610c93838583612901565b50837fe379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d75788484604051610c3f929190612a27565b80610cd08161168a565b610cd8575f80fd5b5f82815260208190526040812080546001600160401b031691610cfa83612a3a565b82546101009290920a6001600160401b038181021990931691831602179091555f84815260208181526040918290205491519190921681528492507fc6621ccb8f3f5a04bb6502154b2caf6adf5983fe76dfef1cfc9c42e3579db444910160405180910390a25050565b5f80610d7183603c6115a2565b905080515f03610d8357505f92915050565b610d8c81611cae565b9392505050565b5f83815260208181526040808320546001600160401b03168352600a825280832086845290915290819020905160609190610dd19085908590612876565b90815260200160405180910390208054610dea90612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610e1690612885565b8015610e615780601f10610e3857610100808354040283529160200191610e61565b820191905f5260205f20905b815481529060010190602001808311610e4457829003601f168201915b505050505090509392505050565b5f81815260208181526040808320546001600160401b03168352600482528083208484529091529020805460609190610ea790612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610ed390612885565b8015610f1e5780601f10610ef557610100808354040283529160200191610f1e565b820191905f5260205f20905b815481529060010190602001808311610f0157829003601f168201915b50505050509050919050565b83610f348161168a565b610f3c575f80fd5b83610f48600182612863565b1615610f52575f80fd5b5f85815260208181526040808320546001600160401b031683526001825280832088845282528083208784529091529020610f8e838583612901565b50604051849086907faa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe3905f90a35050505050565b5f81815260208181526040808320546001600160401b03168352600882528083208484529091529020805460609190610ea790612885565b826110048161168a565b61100c575f80fd5b5f84815260208181526040808320546001600160401b03168352600882528083208784529091529020611040838583612901565b50837fb7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f78484604051610c3f929190612a27565b8261107d8161168a565b611085575f80fd5b837f65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af75284846040516110b792919061240e565b60405180910390a2603c830361110e57837f52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd26110f284611cae565b6040516001600160a01b03909116815260200160405180910390a25b5f84815260208181526040808320546001600160401b0316835260028252808320878452825280832086845290915290206111498382612a5f565b5050505050565b6001600160a01b03821633036111bf5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084015b60405180910390fd5b335f818152600b602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6001600160a01b03821633036112825760405162461bcd60e51b815260206004820181905260248201527f53657474696e672064656c65676174652073746174757320666f722073656c6660448201526064016111b6565b335f818152600c6020908152604080832087845282528083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519384529286917ff0ddb3b04746704017f9aa8bd728fcc2c1d11675041205350018915f5e4750a0910160405180910390a4505050565b5f83815260208181526040808320546001600160401b03168352600582528083208684528252808320858452825280832061ffff851684529091529020805460609190610dea90612885565b6060610d8c5f8484611ccb565b5f81815260208181526040808320546001600160401b03168352600382528083208484529091529020805460609190610ea790612885565b826113918161168a565b611399575f80fd5b5f84815260208181526040808320546001600160401b031680845260048352818420888552909252822080549192916113d190612885565b80601f01602080910402602001604051908101604052809291908181526020018280546113fd90612885565b80156114485780601f1061141f57610100808354040283529160200191611448565b820191905f5260205f20905b81548152906001019060200180831161142b57829003601f168201915b505050506001600160401b0384165f9081526004602090815260408083208b8452909152902091925061147e9050858783612901565b50857f8f15ed4b723ef428f250961da8315675b507046737e19319fc1a4d81bfe87f858287876040516114b393929190612b1e565b60405180910390a2505050505050565b816114cd8161168a565b6114d5575f80fd5b6114e483603c61038185611e88565b505050565b60606114f6848484611ccb565b949350505050565b826115088161168a565b611510575f80fd5b5f84815260208181526040808320546001600160401b031683526007825280832087845282528083206001600160e01b031987168085529083529281902080546001600160a01b0319166001600160a01b038716908117909155905190815286917f7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa910160405180910390a350505050565b5f82815260208181526040808320546001600160401b0316835260028252808320858452825280832084845290915290208054606091906115e290612885565b80601f016020809104026020016040519081016040528092919081815260200182805461160e90612885565b80156116595780601f1061163057610100808354040283529160200191611659565b820191905f5260205f20905b81548152906001019060200180831161163c57829003601f168201915b5050505050905092915050565b5f6001600160e01b03198216631674750f60e21b1480610570575061057082611eb8565b5f336001600160a01b037f0000000000000000000000004fbf7b2f171336958be5d15ff762a5cff53635681614806116ea5750336001600160a01b037f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5616145b156116f757506001919050565b6040516302571be360e01b8152600481018390525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa15801561175c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117809190612b4d565b90507f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b0316816001600160a01b031603611845576040516331a9108f60e11b8152600481018490527f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b031690636352211e90602401602060405180830381865afa15801561181e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118429190612b4d565b90505b6001600160a01b03811633148061187e57506001600160a01b0381165f908152600b6020908152604080832033845290915290205460ff165b80610d8c57506001600160a01b0381165f908152600c60209081526040808320868452825280832033845290915290205460ff16610d8c565b6118ff6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261057081611bc9565b602081015181516060916105709161192a9082611edc565b84519190611f33565b60a081015160c08201516060916105709161192a908290612863565b5f81518351148015610d8c5750610d8c835f845f8751611fa7565b865160208801205f61197d878787611f33565b90508315611aa1576001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c168452909152902080546119c690612885565b159050611a23576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611a0783612b68565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091528120611a62916121f9565b897f03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a12078a8a604051611a94929190612b84565b60405180910390a261076c565b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c16845290915290208054611ae290612885565b90505f03611b40576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611b2483612ba9565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091529020611b808282612a5f565b50897f52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b8a8a84604051611bb593929190612bbf565b60405180910390a250505050505050505050565b60c08101516020820181905281515111611be05750565b5f611bf2825f01518360200151611edc565b8260200151611c019190612bed565b8251909150611c109082611fc9565b61ffff166040830152611c24600282612bed565b8251909150611c339082611fc9565b61ffff166060830152611c47600282612bed565b8251909150611c569082611fef565b63ffffffff166080830152611c6c600482612bed565b82519091505f90611c7d9083611fc9565b61ffff169050611c8e600283612bed565b60a084018190529150611ca18183612bed565b60c0909301929092525050565b5f8151601414611cbc575f80fd5b5060200151600160601b900490565b6060816001600160401b03811115611ce557611ce56124c6565b604051908082528060200260200182016040528015611d1857816020015b6060815260200190600190039081611d035790505b5090505f5b82811015611e80578415611dd8575f848483818110611d3e57611d3e612a13565b9050602002810190611d509190612c00565b611d5f91602491600491612c42565b611d6891612c69565b9050858114611dd65760405162461bcd60e51b815260206004820152603460248201527f6d756c746963616c6c3a20416c6c207265636f726473206d7573742068617665604482015273040c240dac2e8c6d0d2dcce40dcc2dacad0c2e6d60631b60648201526084016111b6565b505b5f8030868685818110611ded57611ded612a13565b9050602002810190611dff9190612c00565b604051611e0d929190612876565b5f60405180830381855af49150503d805f8114611e45576040519150601f19603f3d011682016040523d82523d5f602084013e611e4a565b606091505b509150915081611e58575f80fd5b80848481518110611e6b57611e6b612a13565b60209081029190910101525050600101611d1d565b509392505050565b604080516014808252818301909252606091602082018180368337505050600160601b9290920260208301525090565b5f6001600160e01b0319821663c869023360e01b1480610570575061057082612017565b5f815b83518110611eef57611eef612c86565b5f611efa858361203b565b60ff169050611f0a816001612bed565b611f149083612bed565b9150805f03611f235750611f29565b50611edf565b6114f68382612863565b8251606090611f428385612bed565b1115611f4c575f80fd5b5f826001600160401b03811115611f6557611f656124c6565b6040519080825280601f01601f191660200182016040528015611f8f576020820181803683370190505b50905060208082019086860101610a7c82828761205e565b5f611fb38484846120b3565b611fbe8787856120b3565b149695505050505050565b81515f90611fd8836002612bed565b1115611fe2575f80fd5b50016002015161ffff1690565b81515f90611ffe836004612bed565b1115612008575f80fd5b50016004015163ffffffff1690565b5f6001600160e01b0319821663691f343160e01b14806105705750610570826120d5565b5f82828151811061204e5761204e612a13565b016020015160f81c905092915050565b602081106120965781518352612075602084612bed565b9250612082602083612bed565b915061208f602082612863565b905061205e565b905182516020929092036101000a5f190180199091169116179052565b82515f906120c18385612bed565b11156120cb575f80fd5b5091016020012090565b5f6001600160e01b031982166304928c6760e21b14806105705750610570825f6001600160e01b0319821663547d2b4160e11b148061212457506001600160e01b03198216635c98042b60e01b145b806105705750610570825f6001600160e01b0319821663bc1c58d160e01b14806105705750610570825f6001600160e01b03198216631d9dabef60e11b148061217d57506001600160e01b031982166378e5bf0360e11b145b806105705750610570825f6001600160e01b03198216631101d5ab60e11b14806105705750610570825f6001600160e01b0319821663d700ff3360e01b14806105705750610570825f6001600160e01b03198216634fbf043360e01b148061057057506301ffc9a760e01b6001600160e01b0319831614610570565b50805461220590612885565b5f825580601f10612214575050565b601f0160209004905f5260205f20908101906122309190612233565b50565b5b80821115612247575f8155600101612234565b5090565b80356001600160e01b031981168114612262575f80fd5b919050565b5f60208284031215612277575f80fd5b610d8c8261224b565b5f8083601f840112612290575f80fd5b5081356001600160401b038111156122a6575f80fd5b602083019150836020828501011115610bae575f80fd5b5f805f604084860312156122cf575f80fd5b8335925060208401356001600160401b038111156122eb575f80fd5b6122f786828701612280565b9497909650939450505050565b5f805f805f60608688031215612318575f80fd5b8535945060208601356001600160401b0380821115612335575f80fd5b61234189838a01612280565b90965094506040880135915080821115612359575f80fd5b5061236688828901612280565b969995985093965092949392505050565b5f8060408385031215612388575f80fd5b823591506123986020840161224b565b90509250929050565b5f80604083850312156123b2575f80fd5b50508035926020909101359150565b5f5b838110156123db5781810151838201526020016123c3565b50505f910152565b5f81518084526123fa8160208601602086016123c1565b601f01601f19169290920160200192915050565b828152604060208201525f6114f660408301846123e3565b5f805f60608486031215612438575f80fd5b505081359360208301359350604090920135919050565b5f6020828403121561245f575f80fd5b5035919050565b602081525f610d8c60208301846123e3565b5f805f806060858703121561248b575f80fd5b843593506020850135925060408501356001600160401b038111156124ae575f80fd5b6124ba87828801612280565b95989497509550505050565b634e487b7160e01b5f52604160045260245ffd5b5f805f606084860312156124ec575f80fd5b833592506020840135915060408401356001600160401b0380821115612510575f80fd5b818601915086601f830112612523575f80fd5b813581811115612535576125356124c6565b604051601f8201601f19908116603f0116810190838211818310171561255d5761255d6124c6565b81604052828152896020848701011115612575575f80fd5b826020860160208301375f6020848301015280955050505050509250925092565b6001600160a01b0381168114612230575f80fd5b80358015158114612262575f80fd5b5f80604083850312156125ca575f80fd5b82356125d581612596565b9150612398602084016125aa565b5f805f606084860312156125f5575f80fd5b83359250602084013561260781612596565b9150612615604085016125aa565b90509250925092565b5f805f60608486031215612630575f80fd5b8335925060208401359150604084013561ffff8116811461264f575f80fd5b809150509250925092565b5f805f6060848603121561266c575f80fd5b833561267781612596565b925060208401359150604084013561264f81612596565b5f8083601f84011261269e575f80fd5b5081356001600160401b038111156126b4575f80fd5b6020830191508360208260051b8501011115610bae575f80fd5b5f80602083850312156126df575f80fd5b82356001600160401b038111156126f4575f80fd5b6127008582860161268e565b90969095509350505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b8281101561276157603f1988860301845261274f8583516123e3565b94509285019290850190600101612733565b5092979650505050505050565b5f806040838503121561277f575f80fd5b82359150602083013561279181612596565b809150509250929050565b5f805f604084860312156127ae575f80fd5b8335925060208401356001600160401b038111156127ca575f80fd5b6122f78682870161268e565b5f805f606084860312156127e8575f80fd5b833592506127f86020850161224b565b9150604084013561264f81612596565b5f8060408385031215612819575f80fd5b823561282481612596565b9150602083013561279181612596565b5f82516128458184602087016123c1565b9190910192915050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156105705761057061284f565b818382375f9101908152919050565b600181811c9082168061289957607f821691505b6020821081036128b757634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156114e457805f5260205f20601f840160051c810160208510156128e25750805b601f840160051c820191505b81811015611149575f81556001016128ee565b6001600160401b03831115612918576129186124c6565b61292c836129268354612885565b836128bd565b5f601f84116001811461295d575f85156129465750838201355b5f19600387901b1c1916600186901b178355611149565b5f83815260208120601f198716915b8281101561298c578685013582556020948501946001909201910161296c565b50868210156129a8575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b604081525f6129f56040830186886129ba565b8281036020840152612a088185876129ba565b979650505050505050565b634e487b7160e01b5f52603260045260245ffd5b602081525f6114f66020830184866129ba565b5f6001600160401b03808316818103612a5557612a5561284f565b6001019392505050565b81516001600160401b03811115612a7857612a786124c6565b612a8c81612a868454612885565b846128bd565b602080601f831160018114612abf575f8415612aa85750858301515b5f19600386901b1c1916600185901b178555612b16565b5f85815260208120601f198616915b82811015612aed57888601518255948401946001909101908401612ace565b5085821015612b0a57878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b604081525f612b3060408301866123e3565b8281036020840152612b438185876129ba565b9695505050505050565b5f60208284031215612b5d575f80fd5b8151610d8c81612596565b5f61ffff821680612b7b57612b7b61284f565b5f190192915050565b604081525f612b9660408301856123e3565b905061ffff831660208301529392505050565b5f61ffff808316818103612a5557612a5561284f565b606081525f612bd160608301866123e3565b61ffff851660208401528281036040840152612b4381856123e3565b808201808211156105705761057061284f565b5f808335601e19843603018112612c15575f80fd5b8301803591506001600160401b03821115612c2e575f80fd5b602001915036819003821315610bae575f80fd5b5f8085851115612c50575f80fd5b83861115612c5c575f80fd5b5050820193919092039150565b80356020831015610570575f19602084900360031b1b1692915050565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{}},"0xa06a63155145b7f2fda96d9658ec7fef3b9dcf76":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b506004361061004a575f3560e01c80634ce34aa21461004e578063899e104c1461007e5780638df25d9214610091578063c4e8fcb5146100a4575b5f80fd5b61006161005c366004610834565b6100b9565b6040516001600160e01b0319909116815260200160405180910390f35b61006161008c3660046108b4565b610121565b61006161009f36600461091b565b61018a565b6100b76100b2366004610969565b6101c7565b005b5f335f525f60205260405f20546100dd576349ed56f960e11b5f523360045260245ffd5b815f5b81811015610110576101088585838181106100fd576100fd6109a2565b905060c002016102c4565b6001016100e0565b50632671a55160e11b949350505050565b5f335f525f60205260405f2054610145576349ed56f960e11b5f523360045260245ffd5b835f5b8181101561016d576101658787838181106100fd576100fd6109a2565b600101610148565b506101788484610436565b50632267841360e21b95945050505050565b5f335f525f60205260405f20546101ae576349ed56f960e11b5f523360045260245ffd5b6101b88383610436565b506346f92ec960e11b92915050565b336001600160a01b037f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c1614610210576040516336abb4df60e11b815260040160405180910390fd5b6001600160a01b0382165f9081526020819052604090205481151560ff909116151503610268576040516349271a0f60e11b81526001600160a01b038316600482015281151560248201526044015b60405180910390fd5b6001600160a01b0382165f8181526020818152604091829020805460ff191685151590811790915591519182527fae63067d43ac07563b7eb8db6595635fc77f1578a2a5ea06ba91b63e2afa37e2910160405180910390a25050565b60016102d360208301836109ca565b60038111156102e4576102e46109b6565b03610329576103266102fc60408301602084016109ef565b61030c60608401604085016109ef565b61031c60808501606086016109ef565b8460a0013561056c565b50565b600261033860208301836109ca565b6003811115610349576103496109b6565b036103b6578060a00135600114610379576040516369f9582760e01b815260a0820135600482015260240161025f565b61032661038c60408301602084016109ef565b61039c60608401604085016109ef565b6103ac60808501606086016109ef565b8460800135610660565b60036103c560208301836109ca565b60038111156103d6576103d66109b6565b0361041d576103266103ee60408301602084016109ef565b6103fe60608401604085016109ef565b61040e60808501606086016109ef565b84608001358560a00135610715565b604051631e4cbc7f60e21b815260040160405180910390fd5b808280631759616b60e11b6020525f5b8381101561055f57823582018035803b61046b57635f15d6725f52806020526024601cfd5b60a08201358060051b60c0018060808501351460a0606086013514168185013583141615905080156104a657633ae8821360e21b5f5260045ffd5b506020860195506080602084016024378060061b60400190508060a00160a4525f8160c401528060c4018160a0850160c4375f808260205f875af1935083610550573d1561053057601f3d0160051c91508060051c826003028184111561051a578184036003028280028580020360091c01015b5a60208201101561052d573d5f803e3d5ffd5b50505b6357e222f160e11b5f528260045260c0606452608451602001608452805ffd5b50505050600181019050610446565b5050505060806040525050565b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166106515780873b15151661065157806106405781610623573d1561060257601f3d0160051c8360051c81600302818311156105eb578183036003028280028480020360091c01015b5a6020820110156105fe573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b833b61067757635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af180610707573d156106e557601f3d0160051c8260051c81600302818311156106ce578183036003028280028480020360091c01015b5a6020820110156106e1573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b61072c57635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af1806107d1573d156107b057601f3d0160051c8560051c8160030281831115610799578183036003028280028480020360091c01015b5a6020820110156107ac573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b5f8083601f8401126107fc575f80fd5b50813567ffffffffffffffff811115610813575f80fd5b60208301915083602060c08302850101111561082d575f80fd5b9250929050565b5f8060208385031215610845575f80fd5b823567ffffffffffffffff81111561085b575f80fd5b610867858286016107ec565b90969095509350505050565b5f8083601f840112610883575f80fd5b50813567ffffffffffffffff81111561089a575f80fd5b6020830191508360208260051b850101111561082d575f80fd5b5f805f80604085870312156108c7575f80fd5b843567ffffffffffffffff808211156108de575f80fd5b6108ea888389016107ec565b90965094506020870135915080821115610902575f80fd5b5061090f87828801610873565b95989497509550505050565b5f806020838503121561092c575f80fd5b823567ffffffffffffffff811115610942575f80fd5b61086785828601610873565b80356001600160a01b0381168114610964575f80fd5b919050565b5f806040838503121561097a575f80fd5b6109838361094e565b915060208301358015158114610997575f80fd5b809150509250929050565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52602160045260245ffd5b5f602082840312156109da575f80fd5b8135600481106109e8575f80fd5b9392505050565b5f602082840312156109ff575f80fd5b6109e88261094e56fea164736f6c6343000818000a","storage":{}},"0xaa33d7188eb4b4a51c37199eaad2f73cf2bf0204":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0xac52f68f31577e44ae0c7e95a42dc9eb574b9383":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a424740014610090575b600080fd5b610059610054366004610cac565b6100b3565b6040516100669190610d9b565b60405180910390f35b61008261007d366004610dae565b610162565b604051908152602001610066565b6100a361009e366004610cac565b6101d6565b6040519015158152602001610066565b606060005a90506101576100ca6020870187610ddc565b6001546001600160a01b03166040880135846100e960608b018b610df9565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061023592505050565b9150505b9392505050565b600154604051636ccbae5f60e01b8152600481018390526000916001600160a01b031690636ccbae5f90602401602060405180830381865afa1580156101ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d09190610e40565b92915050565b600061022d6101e485610ef1565b600154604080516020601f88018190048102820181019092528681526001600160a01b039092169190879087908190840183828082843760009201919091525061030d92505050565b949350505050565b6060600080876001600160a01b0316866102518b8a8989610355565b60405161025e9190610f9b565b60006040518083038160008787f1925050503d806000811461029c576040519150601f19603f3d011682016040523d82523d6000602084013e6102a1565b606091505b5090925090506102b2603f87610fb7565b5a116102c0576102c0610fd9565b61030082826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061040a565b9998505050505050505050565b600061031a848484610443565b801561022d575060608401516020908101516001600160e01b031990811660009081529182905260409091205460e01b16151561022d565b50565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036103e75760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526103ff82828661058c565b979650505050505050565b6060831561041957508161015b565b8251156104295782518084602001fd5b8160405162461bcd60e51b81526004016103de9190610d9b565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561048a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104ae9190610e40565b9050600061055c8660600151805190602001208688602001516040516020016104fc9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561058257508551610582906001600160a01b03168286610a38565b9695505050505050565b60606001600160e01b03198416631de5861160e31b0361061a576000806000858060200190518101906105bf9190610fef565b92509250925086838383886040516024016105dd9493929190611032565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152935061015b92505050565b6001600160e01b03198416636debcb8d60e01b0361064b576000806000858060200190518101906105bf9190610fef565b6001600160e01b0319841663280d9b0560e01b036106dd576000806000808680602001905181019061067d91906110aa565b935093509350935087848484848a60405160240161069f959493929190611118565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152945061015b9350505050565b6001600160e01b031984166361603dd960e01b0361075c5760008380602001905181019061070b9190610e40565b905084818460405160240161072192919061115d565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152915061015b9050565b6001600160e01b0319841663b34f33c560e01b036107ab5760008060008580602001905181019061078d9190611176565b92509250925086838383886040516024016105dd94939291906111d0565b6001600160e01b03198416633013529360e01b036107dc5760008060008580602001905181019061078d9190611176565b6001600160e01b031984166307eca39560e01b03610830576000806000808680602001905181019061080e9190611209565b935093509350935087848484848a60405160240161069f95949392919061127e565b6001600160e01b031984166368b6154f60e01b03610862576000806000808680602001905181019061067d91906110aa565b6001600160e01b0319841663341de35b60e21b03610894576000806000808680602001905181019061067d91906110aa565b6001600160e01b03198416637a84860f60e11b0361092d576000806000806000878060200190518101906108c891906112cb565b945094509450945094508885858585858c6040516024016108ee96959493929190611360565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152955061015b945050505050565b6001600160e01b03198416636fab95b360e01b036109b2576000808480602001905181019061095c91906113b9565b915091508582828660405160240161097693929190611400565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925061015b915050565b6001600160e01b0319841663288f888960e11b0361015b57600080848060200190518101906109e1919061142b565b91509150858282866040516024016109fb93929190611459565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925050509392505050565b6000806000610a478585610b7a565b90925090506000816004811115610a6057610a60611489565b148015610a7e5750856001600160a01b0316826001600160a01b0316145b15610a8e5760019250505061015b565b600080876001600160a01b0316631626ba7e60e01b8888604051602401610ab692919061115d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051610af49190610f9b565b600060405180830381855afa9150503d8060008114610b2f576040519150601f19603f3d011682016040523d82523d6000602084013e610b34565b606091505b5091509150818015610b47575080516020145b8015610b6e57508051630b135d3f60e11b90610b6c9083016020908101908401610e40565b145b98975050505050505050565b6000808251604103610bb05760208301516040840151606085015160001a610ba487828585610bbf565b94509450505050610bb8565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610bf65750600090506003610ca3565b8460ff16601b14158015610c0e57508460ff16601c14155b15610c1f5750600090506004610ca3565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610c73573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610c9c57600060019250925050610ca3565b9150600090505b94509492505050565b600080600060408486031215610cc157600080fd5b833567ffffffffffffffff80821115610cd957600080fd5b9085019060808288031215610ced57600080fd5b90935060208501359080821115610d0357600080fd5b818601915086601f830112610d1757600080fd5b813581811115610d2657600080fd5b876020828501011115610d3857600080fd5b6020830194508093505050509250925092565b60005b83811015610d66578181015183820152602001610d4e565b50506000910152565b60008151808452610d87816020860160208601610d4b565b601f01601f19169290920160200192915050565b60208152600061015b6020830184610d6f565b600060208284031215610dc057600080fd5b5035919050565b6001600160a01b038116811461035257600080fd5b600060208284031215610dee57600080fd5b813561015b81610dc7565b6000808335601e19843603018112610e1057600080fd5b83018035915067ffffffffffffffff821115610e2b57600080fd5b602001915036819003821315610bb857600080fd5b600060208284031215610e5257600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610e9257610e92610e59565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ec157610ec1610e59565b604052919050565b600067ffffffffffffffff821115610ee357610ee3610e59565b50601f01601f191660200190565b600060808236031215610f0357600080fd5b610f0b610e6f565b8235610f1681610dc7565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610f4657600080fd5b840136601f820112610f5757600080fd5b8035610f6a610f6582610ec9565b610e98565b8181523684838501011115610f7e57600080fd5b818484018583013760009181019093015250606082015292915050565b60008251610fad818460208701610d4b565b9190910192915050565b600082610fd457634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b60008060006060848603121561100457600080fd5b835161100f81610dc7565b602085015190935061102081610dc7565b80925050604084015190509250925092565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061058290830184610d6f565b600082601f83011261107657600080fd5b8151611084610f6582610ec9565b81815284602083860101111561109957600080fd5b61022d826020830160208701610d4b565b600080600080608085870312156110c057600080fd5b84516110cb81610dc7565b60208601519094506110dc81610dc7565b60408601516060870151919450925067ffffffffffffffff81111561110057600080fd5b61110c87828801611065565b91505092959194509250565b6001600160a01b038681168252851660208201526040810184905260a06060820181905260009061114b90830185610d6f565b8281036080840152610b6e8185610d6f565b82815260406020820152600061022d6040830184610d6f565b60008060006060848603121561118b57600080fd5b835161119681610dc7565b60208501516040860151919450925067ffffffffffffffff8111156111ba57600080fd5b6111c686828701611065565b9150509250925092565b60018060a01b03851681528360208201526080604082015260006111f76080830185610d6f565b82810360608401526103ff8185610d6f565b6000806000806080858703121561121f57600080fd5b845161122a81610dc7565b60208601516040870151919550935067ffffffffffffffff8082111561124f57600080fd5b61125b88838901611065565b9350606087015191508082111561127157600080fd5b5061110c87828801611065565b60018060a01b038616815284602082015260a0604082015260006112a560a0830186610d6f565b82810360608401526112b78186610d6f565b90508281036080840152610b6e8185610d6f565b600080600080600060a086880312156112e357600080fd5b85516112ee81610dc7565b60208701519095506112ff81610dc7565b60408701516060880151919550935067ffffffffffffffff8082111561132457600080fd5b61133089838a01611065565b9350608088015191508082111561134657600080fd5b5061135388828901611065565b9150509295509295909350565b6001600160a01b038781168252861660208201526040810185905260c06060820181905260009061139390830186610d6f565b82810360808401526113a58186610d6f565b905082810360a08401526103008185610d6f565b600080604083850312156113cc57600080fd5b82519150602083015167ffffffffffffffff8111156113ea57600080fd5b6113f685828601611065565b9150509250929050565b8381526060602082015260006114196060830185610d6f565b82810360408401526105828185610d6f565b6000806040838503121561143e57600080fd5b825161144981610dc7565b6020939093015192949293505050565b60018060a01b03841681528260208201526060604082015260006114806060830184610d6f565b95945050505050565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a","storage":{"0x1":"0x7bb6cd9be29fab783c0b494a06fed8b2e2596b7a","0xd8b896d609e853134f3f02ce62d8049b2fdfe9356134f6d548fb1beda30db79":"0x30135293","0x4f457f36b92dc6b16c281e5877e2d8d39630135c1b7246fa9174035e1efcefbd":"0x6fab95b3","0x6b7ba3fe9941e089de60543da4a1deaef065baa963222951b2f9a138f9960820":"0x6debcb8d","0x70cff8e4ee4af5aa154324d45bcf258212c235bbe79f0707bb6273110ef4e13a":"0xf5090c1e","0x73efb0e44094dbabc6bbeecd3be1d81f272157c2dae2d647e6315f150b0b1dd2":"0xd0778d6c","0x8b1c4edded6644848281eab03ac2c319242d62b2057cffa3dd4540715bbc155e":"0xef2c3088","0xbeb5ea8fc2aeae43b7170220434aa4429fb067f0866ae25514b29f647641ca8c":"0x511f1112","0xca659f6eb372ce950e69d4d474290a6a4285f6a06a6128ca9f45419371a1e997":"0xb34f33c5","0xd12e300b5f35ba5198dd81dab97a512a154a0ad0e2cda788abdc22deba64f2a7":"0x280d9b05","0xd5453e7f4fff276a1d42f717d1db50865c284ae707a15bd6a590a3895656f27c":"0x7eca395","0xea2575ae4056f10294a848ca5ed6d215dffd1b80838142770bc441f7df607d71":"0x61603dd9","0xf8ca3ef1e3d09a0d88e209301f12626c90bec3ea586d4bce2c7a58e7eae8278f":"0x68b6154f"}},"0xb17aae5b3a7815433fc82cfd67ea245767894f03":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061012a5760003560e01c80638d839ffe116100ab578063aeb8ce9b1161006f578063aeb8ce9b146105d7578063ce1e09c014610688578063f14fcbc81461069d578063f2fde38b146106c7578063f49826be146106fa578063f7a16963146107b95761012a565b80638d839ffe1461045d5780638da5cb5b146104725780638f32d59b146104a35780639791c097146104b8578063acf1a841146105695761012a565b80637e324479116100f25780637e324479146102b8578063839df945146102e857806383e7f6ff1461031257806385f6d155146103c55780638a95b09f146104485761012a565b806301ffc9a71461012f5780633ccfd60b146101775780633d86c52f1461018e578063530e784f14610270578063715018a6146102a3575b600080fd5b34801561013b57600080fd5b506101636004803603602081101561015257600080fd5b50356001600160e01b031916610881565b604080519115158252519081900360200190f35b34801561018357600080fd5b5061018c610a12565b005b34801561019a57600080fd5b5061025e600480360360a08110156101b157600080fd5b810190602081018135600160201b8111156101cb57600080fd5b8201836020820111156101dd57600080fd5b803590602001918460018302840111600160201b831117156101fe57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b0383358116945060208401359360408101358216935060600135169050610a53565b60408051918252519081900360200190f35b34801561027c57600080fd5b5061018c6004803603602081101561029357600080fd5b50356001600160a01b0316610b42565b3480156102af57600080fd5b5061018c610ba3565b3480156102c457600080fd5b5061018c600480360360408110156102db57600080fd5b5080359060200135610bfe565b3480156102f457600080fd5b5061025e6004803603602081101561030b57600080fd5b5035610c1a565b34801561031e57600080fd5b5061025e6004803603604081101561033557600080fd5b810190602081018135600160201b81111561034f57600080fd5b82018360208201111561036157600080fd5b803590602001918460018302840111600160201b8311171561038257600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505091359250610c2c915050565b61018c600480360360808110156103db57600080fd5b810190602081018135600160201b8111156103f557600080fd5b82018360208201111561040757600080fd5b803590602001918460018302840111600160201b8311171561042857600080fd5b91935091506001600160a01b038135169060208101359060400135610d9e565b34801561045457600080fd5b5061025e610de9565b34801561046957600080fd5b5061025e610df0565b34801561047e57600080fd5b50610487610df6565b604080516001600160a01b039092168252519081900360200190f35b3480156104af57600080fd5b50610163610e05565b3480156104c457600080fd5b50610163600480360360208110156104db57600080fd5b810190602081018135600160201b8111156104f557600080fd5b82018360208201111561050757600080fd5b803590602001918460018302840111600160201b8311171561052857600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610e16945050505050565b61018c6004803603604081101561057f57600080fd5b810190602081018135600160201b81111561059957600080fd5b8201836020820111156105ab57600080fd5b803590602001918460018302840111600160201b831117156105cc57600080fd5b919350915035610e2b565b3480156105e357600080fd5b50610163600480360360208110156105fa57600080fd5b810190602081018135600160201b81111561061457600080fd5b82018360208201111561062657600080fd5b803590602001918460018302840111600160201b8311171561064757600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610fcf945050505050565b34801561069457600080fd5b5061025e611069565b3480156106a957600080fd5b5061018c600480360360208110156106c057600080fd5b503561106f565b3480156106d357600080fd5b5061018c600480360360208110156106ea57600080fd5b50356001600160a01b03166110a1565b34801561070657600080fd5b5061025e6004803603606081101561071d57600080fd5b810190602081018135600160201b81111561073757600080fd5b82018360208201111561074957600080fd5b803590602001918460018302840111600160201b8311171561076a57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b0383351693505050602001356110bb565b61018c600480360360c08110156107cf57600080fd5b810190602081018135600160201b8111156107e957600080fd5b8201836020820111156107fb57600080fd5b803590602001918460018302840111600160201b8311171561081c57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b038335811694506020840135936040810135935060608101358216925060800135166110d3565b604080517f737570706f727473496e74657266616365286279746573342900000000000000815290519081900360190190206000906001600160e01b0319838116911614806109c05750604080517472656e657728737472696e672c75696e743235362960581b815290519081900360150181209080602861186a8239604080519182900360280182206e636f6d6d697428627974657333322960881b8352905191829003600f01822090925090806026611892823960260190506040518091039020604051808070617661696c61626c6528737472696e672960781b8152506011019050604051809103902060405180807f72656e74507269636528737472696e672c75696e7432353629000000000000008152506019019050604051809103902018181818186001600160e01b031916826001600160e01b031916145b80610a0c5750604051808061182a60409139604080519182900301812091508060426118b8823960420190506040518091039020186001600160e01b031916826001600160e01b031916145b92915050565b610a1a610e05565b610a2357600080fd5b6040513390303180156108fc02916000818181858888f19350505050158015610a50573d6000803e3d6000fd5b50565b845160208601206000906001600160a01b038416158015610a7b57506001600160a01b038316155b15610acb57604080516020808201939093526bffffffffffffffffffffffff19606089901b1681830152605480820188905282518083039091018152607490910190915280519101209050610b39565b6001600160a01b038416610ade57600080fd5b604080516020808201939093526bffffffffffffffffffffffff19606089811b82168385015287811b8216605484015286901b166068820152607c80820188905282518083039091018152609c909101909152805191012090505b95945050505050565b610b4a610e05565b610b5357600080fd5b600280546001600160a01b0319166001600160a01b0383811691909117918290556040519116907ff261845a790fe29bbd6631e2ca4a5bdc83e6eed7c3271d9590d97287e00e912390600090a250565b610bab610e05565b610bb457600080fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b610c06610e05565b610c0f57600080fd5b600391909155600455565b60056020526000908152604090205481565b815160208084019190912060025460015460408051636b727d4360e11b81526004810185905290516000956001600160a01b03948516946350e9a715948a9491169263d6e4fa8692602480840193919291829003018186803b158015610c9157600080fd5b505afa158015610ca5573d6000803e3d6000fd5b505050506040513d6020811015610cbb57600080fd5b50516040516001600160e01b031960e085901b168152602481018290526044810188905260606004820190815283516064830152835189928291608490910190602087019080838360005b83811015610d1e578181015183820152602001610d06565b50505050905090810190601f168015610d4b5780820380516001836020036101000a031916815260200191505b5094505050505060206040518083038186803b158015610d6a57600080fd5b505afa158015610d7e573d6000803e3d6000fd5b505050506040513d6020811015610d9457600080fd5b5051949350505050565b610de285858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250889350879250869150806110d3565b5050505050565b6224ea0081565b60035481565b6000546001600160a01b031690565b6000546001600160a01b0316331490565b60006003610e2383611646565b101592915050565b6000610e6e84848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250869250610c2c915050565b905080341015610e7d57600080fd5b60008484604051808383808284376040805193909101839003832060015463c475abff60e01b855260048501829052602485018b90529151909750600096506001600160a01b03909116945063c475abff93506044808401936020935082900301818787803b158015610eef57600080fd5b505af1158015610f03573d6000803e3d6000fd5b505050506040513d6020811015610f1957600080fd5b5051905034831015610f565760405133903485900380156108fc02916000818181858888f19350505050158015610f54573d6000803e3d6000fd5b505b817f3da24c024582931cfaf8267d8ed24d13a82a8068d5bd337d30ec45cea4e506ae8787868560405180806020018481526020018381526020018281038252868682818152602001925080828437600083820152604051601f909101601f191690920182900397509095505050505050a2505050505050565b80516020820120600090610fe283610e16565b80156110625750600154604080516312dc929d60e31b81526004810184905290516001600160a01b03909216916396e494e891602480820192602092909190829003018186803b15801561103557600080fd5b505afa158015611049573d6000803e3d6000fd5b505050506040513d602081101561105f57600080fd5b50515b9392505050565b60045481565b6004546000828152600560205260409020544291011061108e57600080fd5b6000908152600560205260409020429055565b6110a9610e05565b6110b257600080fd5b610a508161172e565b60006110cb848484600080610a53565b949350505050565b60006110e28787868686610a53565b905060006110f188878461179c565b885160208a01209091508060006001600160a01b038716156114ac5760015460408051633f2891eb60e21b815260048101859052306024820152604481018c905290516001600160a01b039092169163fca247ac916064808201926020929091908290030181600087803b15801561116857600080fd5b505af115801561117c573d6000803e3d6000fd5b505050506040513d602081101561119257600080fd5b505160015460408051630ddf7fcb60e41b815290519293506000926001600160a01b039092169163ddf7fcb091600480820192602092909190829003018186803b1580156111df57600080fd5b505afa1580156111f3573d6000803e3d6000fd5b505050506040513d602081101561120957600080fd5b50516040805160208181019390935280820187905281518082038301815260608201808452815191850191909120600154633f15457f60e01b90925292519294506001600160a01b031692633f15457f92606480840193829003018186803b15801561127457600080fd5b505afa158015611288573d6000803e3d6000fd5b505050506040513d602081101561129e57600080fd5b505160408051630c4b7b8560e11b8152600481018490526001600160a01b038b8116602483015291519190921691631896f70a91604480830192600092919082900301818387803b1580156112f257600080fd5b505af1158015611306573d6000803e3d6000fd5b505050506001600160a01b0387161561139257876001600160a01b031663d5fa2b0082896040518363ffffffff1660e01b815260040180838152602001826001600160a01b03166001600160a01b0316815260200192505050600060405180830381600087803b15801561137957600080fd5b505af115801561138d573d6000803e3d6000fd5b505050505b60015460408051630a3b53db60e21b8152600481018690526001600160a01b038e81166024830152915191909216916328ed4f6c91604480830192600092919082900301818387803b1580156113e757600080fd5b505af11580156113fb573d6000803e3d6000fd5b50505050600160009054906101000a90046001600160a01b03166001600160a01b03166323b872dd308d866040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050600060405180830381600087803b15801561148e57600080fd5b505af11580156114a2573d6000803e3d6000fd5b505050505061154c565b6001600160a01b038616156114c057600080fd5b60015460408051633f2891eb60e21b8152600481018590526001600160a01b038d81166024830152604482018d90529151919092169163fca247ac9160648083019260209291908290030181600087803b15801561151d57600080fd5b505af1158015611531573d6000803e3d6000fd5b505050506040513d602081101561154757600080fd5b505190505b896001600160a01b0316837fca6abbe9d7f11422cb6ca7629fbf6fe9efb1c621f71ce8f02b9f2a230097404f8d87856040518080602001848152602001838152602001828103825285818151815260200191508051906020019080838360005b838110156115c45781810151838201526020016115ac565b50505050905090810190601f1680156115f15780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a3833411156116395760405133903486900380156108fc02916000818181858888f19350505050158015611637573d6000803e3d6000fd5b505b5050505050505050505050565b8051600090819081905b8082101561172557600085838151811061166657fe5b01602001516001600160f81b0319169050600160ff1b81101561168e57600183019250611719565b600760fd1b6001600160f81b0319821610156116af57600283019250611719565b600f60fc1b6001600160f81b0319821610156116d057600383019250611719565b601f60fb1b6001600160f81b0319821610156116f157600483019250611719565b603f60fa1b6001600160f81b03198216101561171257600583019250611719565b6006830192505b50600190920191611650565b50909392505050565b6001600160a01b03811661174157600080fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b600354600082815260056020526040812054909142910111156117be57600080fd5b600454600083815260056020526040902054429101116117dd57600080fd5b6117e684610fcf565b6117ef57600080fd5b600082815260056020526040812081905561180a8585610c2c565b90506224ea0084101561181c57600080fd5b803410156110cb57600080fdfe6d616b65436f6d6d69746d656e7457697468436f6e66696728737472696e672c616464726573732c627974657333322c616464726573732c6164647265737329726567697374657228737472696e672c616464726573732c75696e743235362c62797465733332296d616b65436f6d6d69746d656e7428737472696e672c616464726573732c6279746573333229726567697374657257697468436f6e66696728737472696e672c616464726573732c75696e743235362c627974657333322c616464726573732c6164647265737329a265627a7a72315820ba74b4e49afb22de09a9ebda5d073d93e2a2a7b2530ce50def390c32cac92ea064736f6c634300050c0032","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1":"0xc965345edac823d56812cd20a10316233916a605","0x2":"0xec71e4e674fe0f432693dc2b935c34bd2774c003","0x3":"0x258","0x4":"0x15180"}},"0xbdefcf6429d0ac68236a6beb321cbd2ce66b463c":{"nonce":2,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c80636d435421116100885780637b37e561116100635780637b37e561146102435780638b9e028b14610256578063906c87cc1461027657806393790f4414610289575f80fd5b80636d435421146101eb5780636e9bfd9f146101fe578063794593bc14610230575f80fd5b806314afd79e116100c357806314afd79e1461018157806333bc8572146101945780634e3f9580146101b757806351710e45146101d8575f80fd5b8063027cc764146100e95780630a96ad391461011957806313ad9cab1461016c575b5f80fd5b6100fc6100f7366004610c39565b61029c565b6040516001600160a01b0390911681526020015b60405180910390f35b604080517f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f81527fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167602082015201610110565b61017f61017a366004610c61565b610339565b005b6100fc61018f366004610ca9565b610531565b6101a76101a2366004610cc9565b61055c565b6040519015158152602001610110565b6101ca6101c5366004610ca9565b610595565b604051908152602001610110565b61017f6101e6366004610ca9565b6105bd565b61017f6101f9366004610cc9565b6106be565b61021161020c366004610cfa565b6107ae565b604080516001600160a01b039093168352901515602083015201610110565b6100fc61023e366004610d11565b610838565b61017f610251366004610ca9565b610a0a565b610269610264366004610ca9565b610aab565b6040516101109190610d32565b6100fc610284366004610ca9565b610b28565b6101ca610297366004610ca9565b610b53565b5f6102a683610b8e565b6001600160a01b0383165f908152602081905260409020600301548083106102f157604051636ceb340b60e01b81526001600160a01b03851660048201526024015b60405180910390fd5b6001600160a01b0384165f90815260208190526040902060030180548490811061031d5761031d610d7e565b5f918252602090912001546001600160a01b0316949350505050565b61034283610bc6565b60405163c4e8fcb560e01b81526001600160a01b038381166004830152821515602483015284169063c4e8fcb5906044015f604051808303815f87803b15801561038a575f80fd5b505af115801561039c573d5f803e3d5ffd5b505050506001600160a01b038381165f908152602081815260408083209386168352600484019091529020548015158380156103d6575080155b15610425576003830180546001810182555f828152602080822090920180546001600160a01b0319166001600160a01b038a169081179091559254928152600486019091526040902055610529565b831580156104305750805b156105295760038301545f198301905f9061044d90600190610d92565b90508181146104d8575f85600301828154811061046c5761046c610d7e565b5f918252602090912001546003870180546001600160a01b03909216925082918590811061049c5761049c610d7e565b5f91825260208083209190910180546001600160a01b0319166001600160a01b0394851617905592909116815260048701909152604090208490555b846003018054806104eb576104eb610db7565b5f828152602080822083015f1990810180546001600160a01b03191690559092019092556001600160a01b0389168252600487019052604081205550505b505050505050565b5f61053b82610b8e565b506001600160a01b039081165f908152602081905260409020600101541690565b5f61056683610b8e565b506001600160a01b039182165f9081526020818152604080832093909416825260049092019091522054151590565b5f61059f82610b8e565b506001600160a01b03165f9081526020819052604090206003015490565b6105c681610b8e565b6001600160a01b038181165f9081526020819052604090206002015416331461060d576040516388c3a11560e01b81526001600160a01b03821660048201526024016102e8565b6040515f907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da908290a26001600160a01b038082165f818152602081905260408082206002810180546001600160a01b031916905560010154905133949190911692917fc8894f26f396ce8c004245c8b7cd1b92103a6e4302fcbab883987149ac01b7ec91a46001600160a01b03165f90815260208190526040902060010180546001600160a01b03191633179055565b6106c782610bc6565b6001600160a01b0381166106f95760405163a388d26360e01b81526001600160a01b03831660048201526024016102e8565b6001600160a01b038083165f9081526020819052604090206002015481169082160361074b576040516365e0406560e11b81526001600160a01b038084166004830152821660248201526044016102e8565b6040516001600160a01b038216907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da905f90a26001600160a01b039182165f90815260208190526040902060020180546001600160a01b03191691909216179055565b5f8060ff60f81b30847f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f6040516020016107eb9493929190610dcb565b60408051601f198184030181529190528051602090910120936001600160a01b0385163f7fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167149350915050565b5f6001600160a01b0382166108605760405163267eaa8160e21b815260040160405180910390fd5b606083901c3314610884576040516332db94d160e21b815260040160405180910390fd5b6040516108c3906001600160f81b031990309086907f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f90602001610dcb565b604051602081830303815290604052805190602001205f1c90507fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167816001600160a01b03163f0361093257604051633194665960e11b81526001600160a01b03821660048201526024016102e8565b8260405161093f90610c16565b8190604051809103905ff590508015801561095c573d5f803e3d5ffd5b50506001600160a01b038181165f81815260208181526040918290206001810180546001600160a01b03191695881695909517909455868455815192835282018690527f4397af6128d529b8ae0442f99db1296d5136062597a15bbc61c1b2a6431a7d15910160405180910390a16040516001600160a01b03808516915f918516907fc8894f26f396ce8c004245c8b7cd1b92103a6e4302fcbab883987149ac01b7ec908390a45092915050565b610a1381610bc6565b6001600160a01b038181165f9081526020819052604090206002015416610a58576040516335809b0b60e11b81526001600160a01b03821660048201526024016102e8565b6040515f907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da908290a26001600160a01b03165f90815260208190526040902060020180546001600160a01b0319169055565b6060610ab682610b8e565b6001600160a01b0382165f908152602081815260409182902060030180548351818402810184019094528084529091830182828015610b1c57602002820191905f5260205f20905b81546001600160a01b03168152600190910190602001808311610afe575b50505050509050919050565b5f610b3282610b8e565b506001600160a01b039081165f908152602081905260409020600201541690565b6001600160a01b0381165f9081526020819052604090205480610b89576040516304ca820960e41b815260040160405180910390fd5b919050565b6001600160a01b0381165f90815260208190526040902054610bc3576040516304ca820960e41b815260040160405180910390fd5b50565b610bcf81610b8e565b6001600160a01b038181165f90815260208190526040902060010154163314610bc35760405163d4ed9a1760e01b81526001600160a01b03821660048201526024016102e8565b610a4180610e0583390190565b80356001600160a01b0381168114610b89575f80fd5b5f8060408385031215610c4a575f80fd5b610c5383610c23565b946020939093013593505050565b5f805f60608486031215610c73575f80fd5b610c7c84610c23565b9250610c8a60208501610c23565b915060408401358015158114610c9e575f80fd5b809150509250925092565b5f60208284031215610cb9575f80fd5b610cc282610c23565b9392505050565b5f8060408385031215610cda575f80fd5b610ce383610c23565b9150610cf160208401610c23565b90509250929050565b5f60208284031215610d0a575f80fd5b5035919050565b5f8060408385031215610d22575f80fd5b82359150610cf160208401610c23565b602080825282518282018190525f9190848201906040850190845b81811015610d725783516001600160a01b031683529284019291840191600101610d4d565b50909695505050505050565b634e487b7160e01b5f52603260045260245ffd5b81810381811115610db157634e487b7160e01b5f52601160045260245ffd5b92915050565b634e487b7160e01b5f52603160045260245ffd5b6001600160f81b031994909416845260609290921b6bffffffffffffffffffffffff19166001840152601583015260358201526055019056fe60a060405234801561000f575f80fd5b5033608052608051610a1561002c5f395f6101d20152610a155ff3fe608060405234801561000f575f80fd5b506004361061004a575f3560e01c80634ce34aa21461004e578063899e104c1461007e5780638df25d9214610091578063c4e8fcb5146100a4575b5f80fd5b61006161005c366004610834565b6100b9565b6040516001600160e01b0319909116815260200160405180910390f35b61006161008c3660046108b4565b610121565b61006161009f36600461091b565b61018a565b6100b76100b2366004610969565b6101c7565b005b5f335f525f60205260405f20546100dd576349ed56f960e11b5f523360045260245ffd5b815f5b81811015610110576101088585838181106100fd576100fd6109a2565b905060c002016102c4565b6001016100e0565b50632671a55160e11b949350505050565b5f335f525f60205260405f2054610145576349ed56f960e11b5f523360045260245ffd5b835f5b8181101561016d576101658787838181106100fd576100fd6109a2565b600101610148565b506101788484610436565b50632267841360e21b95945050505050565b5f335f525f60205260405f20546101ae576349ed56f960e11b5f523360045260245ffd5b6101b88383610436565b506346f92ec960e11b92915050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610210576040516336abb4df60e11b815260040160405180910390fd5b6001600160a01b0382165f9081526020819052604090205481151560ff909116151503610268576040516349271a0f60e11b81526001600160a01b038316600482015281151560248201526044015b60405180910390fd5b6001600160a01b0382165f8181526020818152604091829020805460ff191685151590811790915591519182527fae63067d43ac07563b7eb8db6595635fc77f1578a2a5ea06ba91b63e2afa37e2910160405180910390a25050565b60016102d360208301836109ca565b60038111156102e4576102e46109b6565b03610329576103266102fc60408301602084016109ef565b61030c60608401604085016109ef565b61031c60808501606086016109ef565b8460a0013561056c565b50565b600261033860208301836109ca565b6003811115610349576103496109b6565b036103b6578060a00135600114610379576040516369f9582760e01b815260a0820135600482015260240161025f565b61032661038c60408301602084016109ef565b61039c60608401604085016109ef565b6103ac60808501606086016109ef565b8460800135610660565b60036103c560208301836109ca565b60038111156103d6576103d66109b6565b0361041d576103266103ee60408301602084016109ef565b6103fe60608401604085016109ef565b61040e60808501606086016109ef565b84608001358560a00135610715565b604051631e4cbc7f60e21b815260040160405180910390fd5b808280631759616b60e11b6020525f5b8381101561055f57823582018035803b61046b57635f15d6725f52806020526024601cfd5b60a08201358060051b60c0018060808501351460a0606086013514168185013583141615905080156104a657633ae8821360e21b5f5260045ffd5b506020860195506080602084016024378060061b60400190508060a00160a4525f8160c401528060c4018160a0850160c4375f808260205f875af1935083610550573d1561053057601f3d0160051c91508060051c826003028184111561051a578184036003028280028580020360091c01015b5a60208201101561052d573d5f803e3d5ffd5b50505b6357e222f160e11b5f528260045260c0606452608451602001608452805ffd5b50505050600181019050610446565b5050505060806040525050565b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166106515780873b15151661065157806106405781610623573d1561060257601f3d0160051c8360051c81600302818311156105eb578183036003028280028480020360091c01015b5a6020820110156105fe573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b833b61067757635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af180610707573d156106e557601f3d0160051c8260051c81600302818311156106ce578183036003028280028480020360091c01015b5a6020820110156106e1573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b61072c57635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af1806107d1573d156107b057601f3d0160051c8560051c8160030281831115610799578183036003028280028480020360091c01015b5a6020820110156107ac573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b5f8083601f8401126107fc575f80fd5b50813567ffffffffffffffff811115610813575f80fd5b60208301915083602060c08302850101111561082d575f80fd5b9250929050565b5f8060208385031215610845575f80fd5b823567ffffffffffffffff81111561085b575f80fd5b610867858286016107ec565b90969095509350505050565b5f8083601f840112610883575f80fd5b50813567ffffffffffffffff81111561089a575f80fd5b6020830191508360208260051b850101111561082d575f80fd5b5f805f80604085870312156108c7575f80fd5b843567ffffffffffffffff808211156108de575f80fd5b6108ea888389016107ec565b90965094506020870135915080821115610902575f80fd5b5061090f87828801610873565b95989497509550505050565b5f806020838503121561092c575f80fd5b823567ffffffffffffffff811115610942575f80fd5b61086785828601610873565b80356001600160a01b0381168114610964575f80fd5b919050565b5f806040838503121561097a575f80fd5b6109838361094e565b915060208301358015158114610997575f80fd5b809150509250929050565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52602160045260245ffd5b5f602082840312156109da575f80fd5b8135600481106109e8575f80fd5b9392505050565b5f602082840312156109ff575f80fd5b6109e88261094e56fea164736f6c6343000818000aa164736f6c6343000818000a","storage":{}},"0xbe5deac45dd1ca4ee18dc2d585d84d3d3cb82b0d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c806341539d4a146100465780634d5505d314610097578063afa764d7146100b1575b600080fd5b6100636004803603602081101561005c57600080fd5b50356100dc565b6040805195865260208601949094528484019290925260608401526001600160a01b03166080830152519081900360a00190f35b61009f610114565b60408051918252519081900360200190f35b6100da600480360360608110156100c757600080fd5b508035906020810135906040013561011a565b005b60006020819052908152604090208054600182015460028301546003840154600490940154929391929091906001600160a01b031685565b60015481565b6101226101eb565b506040805160a0810182528481526020808201858152828401858152426060808601918252336080870181815260018054810180825560009081528089528a81208a518155975188830155955160028801559351600387015551600490950180546001600160a01b0319166001600160a01b0390961695909517909455905486518981529485018890528487018a905295519495919491937fba5de06d22af2685c6c7765f60067f7d2b08c2d29f53cdf14d67f6d1c9bfb527929081900390910190a450505050565b6040518060a001604052806000801916815260200160008152602001600081526020016000815260200160006001600160a01b03168152509056fea164736f6c6343000606000a","storage":{"0x1":"0x0"}},"0xbe92182cab5b84fd18b34881a0c32771e84f5b8b":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061021c5760003560e01c80638da5cb5b11610125578063bebec6b4116100ad578063e985e9c51161007c578063e985e9c514610540578063f059235914610553578063f2fde38b14610566578063ffa1ad7414610579578063ffad6f551461059d57600080fd5b8063bebec6b4146104e7578063bfc5429b146104fa578063c15ae7cf1461050d578063c87b56dd1461052d57600080fd5b8063a81ce6f9116100f4578063a81ce6f91461046d578063ac9650d814610480578063b3f9e4cb146104a0578063b85afd28146104b3578063b98b3526146104d457600080fd5b80638da5cb5b146103f157806391015f6b146103f9578063933c051d1461041b578063a3f4df7e1461043d57600080fd5b80634bd79ed0116101a857806370a082311161017757806370a082311461038d578063715018a6146103a05780637e37479e146103a857806383caffbe146103bb578063869b8884146103ce57600080fd5b80634bd79ed0146103335780634f558e79146103465780636352211e14610359578063672b9f811461036c57600080fd5b80631bd8cc1a116101ef5780631bd8cc1a146102ac5780631be5e7ed146102cc578063276fabb1146102ec578063430c20811461030d578063485cc9551461032057600080fd5b806301ffc9a7146102215780630328075514610249578063081812fc1461026c57806313af403514610297575b600080fd5b61023461022f366004612c9d565b6105b0565b60405190151581526020015b60405180910390f35b61025c610257366004612d0b565b610638565b6040516102409493929190612dfe565b61027f61027a366004612e3c565b61065b565b6040516001600160a01b039091168152602001610240565b6102aa6102a5366004612e6a565b610760565b005b6102bf6102ba366004612d0b565b6107d1565b6040516102409190612e87565b6102df6102da366004612edb565b6107f0565b6040516102409190612f12565b6102ff6102fa366004612f25565b61091b565b604051908152602001610240565b61023461031b366004612f66565b61098f565b6102aa61032e366004612f92565b610aa2565b6102aa610341366004612fcb565b610bf5565b610234610354366004612e3c565b610e51565b61027f610367366004612e3c565b610e5c565b61037f61037a366004613036565b610e67565b604051610240929190613058565b6102ff61039b366004612e6a565b610f97565b6102aa611095565b6102ff6103b6366004612e6a565b6110a9565b6102bf6103c936600461307d565b611118565b6103e16103dc366004612fcb565b6114f0565b60405161024094939291906131bb565b61027f6116e6565b61040c610407366004612d0b565b611714565b60405161024093929190613208565b61042e610429366004612fcb565b611734565b60405161024093929190613234565b6102df604051806040016040528060118152602001702aa7299d10283937bc3c902932b0b232b960791b81525081565b61027f61047b366004612e3c565b6118bd565b61049361048e366004612f25565b61198b565b6040516102409190613277565b61027f6104ae366004612e3c565b611a7f565b6104c66104c1366004612d0b565b611b05565b6040516102409291906132d9565b6102df6104e23660046132fe565b611ce1565b6102df6104f5366004612e6a565b611cfb565b6102df6105083660046132fe565b611d6f565b61052061051b366004612f25565b611d89565b6040516102409190613371565b6102df61053b366004612e3c565b611e37565b61023461054e366004612f92565b611f09565b6102aa610561366004612fcb565b611f54565b6102aa610574366004612e6a565b612018565b6102df604051806040016040528060058152602001640302e352e360dc1b81525081565b6102aa6105ab366004613384565b612085565b60006001600160e01b031982166362526e6360e01b14806105e157506001600160e01b03198216636fa624af60e11b145b806105fc57506001600160e01b031982166308da864d60e31b145b8061061757506001600160e01b03198216638584880360e01b145b8061063257506301ffc9a760e01b6001600160e01b03198316145b92915050565b6000806060806106498787876120d8565b93509350935093505b93509350935093565b60006106668261233a565b61067257506000919050565b61067b826123d2565b6106f25760665460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa1580156106c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106ed91906133bd565b610632565b60655460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa15801561073c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061063291906133bd565b600061076a6116e6565b6001600160a01b0316146107c55760405162461bcd60e51b815260206004820152601e60248201527f50726f78795265616465723a204f574e45525f414c52454144595f534554000060448201526064015b60405180910390fd5b6107ce81612419565b50565b60606107e66107e0848661346a565b83612495565b90505b9392505050565b60606107fb826123d2565b1561088057606554604051631be5e7ed60e01b81526001600160a01b0390911690631be5e7ed9061083490879087908790600401613547565b600060405180830381865afa158015610851573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261087991908101906135b0565b90506107e9565b600061088b83612617565b90506001600160a01b0381163b1561091357604051631be5e7ed60e01b81526001600160a01b03821690631be5e7ed906108cd90889088908890600401613547565b600060405180830381865afa92505050801561090b57506040513d6000823e601f3d908101601f1916820160405261090891908101906135b0565b60015b156109135791505b509392505050565b60655460405163276fabb160e01b81526000916001600160a01b03169063276fabb19061094e908690869060040161366c565b602060405180830381865afa15801561096b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613680565b600061099a8261233a565b6109a657506000610632565b6109af826123d2565b610a2d5760665460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a04573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a289190613699565b6107e9565b60655460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a7e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613699565b600054610100900460ff1615808015610ac25750600054600160ff909116105b80610adc5750303b158015610adc575060005460ff166001145b610b3f5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107bc565b6000805460ff191660011790558015610b62576000805461ff0019166101001790555b606580546001600160a01b038086166001600160a01b0319928316179092556066805492851692909116919091179055610b9a61268a565b610ba261268a565b610baa6126b1565b8015610bf0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b610bfd6126e1565b828114610c4c5760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107bc565b60005b83811015610e4a5760006068868684818110610c6d57610c6d6136bb565b9050602002810190610c7f91906136d1565b604051610c8d929190613717565b908152604051908190036020019020541115610cf1576068858583818110610cb757610cb76136bb565b9050602002810190610cc991906136d1565b604051610cd7929190613717565b90815260200160405180910390206000610cf19190612c18565b60005b838383818110610d0657610d066136bb565b9050602002810190610d189190613727565b9050811015610ddc576068868684818110610d3557610d356136bb565b9050602002810190610d4791906136d1565b604051610d55929190613717565b9081526020016040518091039020848484818110610d7557610d756136bb565b9050602002810190610d879190613727565b83818110610d9757610d976136bb565b9050602002810190610da991906136d1565b82546001810184556000938452602090932090920191610dc991836137f8565b5080610dd4816138cd565b915050610cf4565b507fb2b57b54285120d17f49f2490a39ef791441fd0ad1e6b6818c23262bf91f061c858583818110610e1057610e106136bb565b9050602002810190610e2291906136d1565b604051610e309291906138e6565b60405180910390a180610e42816138cd565b915050610c4f565b5050505050565b60006106328261233a565b600061063282612740565b606080610e73836123d2565b15610ef95760655460405163672b9f8160e01b815260048101869052602481018590526001600160a01b039091169063672b9f8190604401600060405180830381865afa158015610ec8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610ef091908101906138fa565b91509150610f90565b6000610f0484612617565b90506001600160a01b0381163b15610f8e5760405163672b9f8160e01b815260048101869052602481018590526001600160a01b0382169063672b9f8190604401600060405180830381865afa925050508015610f8357506040513d6000823e601f3d908101601f19168201604052610f8091908101906138fa565b60015b15610f8e5790935091505b505b9250929050565b6065546040516370a0823160e01b81526001600160a01b03838116600483015260009283929116906370a0823190602401602060405180830381865afa158015610fe5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110099190613680565b6066549091506001600160a01b031615610632576066546040516370a0823160e01b81526001600160a01b038581166004830152909116906370a0823190602401602060405180830381865afa158015611067573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061108b9190613680565b6107e9908261395d565b61109d6126e1565b6110a76000612419565b565b606554604051633f1ba3cf60e11b81526001600160a01b0383811660048301526000921690637e37479e90602401602060405180830381865afa1580156110f4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190613680565b606060006067868660405161112e929190613717565b9081526020016040518091039020805461114790613770565b80601f016020809104026020016040519081016040528092919081815260200182805461117390613770565b80156111c05780601f10611195576101008083540402835291602001916111c0565b820191906000526020600020905b8154815290600101906020018083116111a357829003601f168201915b5050505050905080516000036111d657506114e8565b6000604051806040016040528060068152602001653a37b5b2b71760d11b81525090506000604051806040016040528060088152602001672e6164647265737360c01b81525090506000604051806040016040528060018152602001601760f91b815250905060008385838c8c868d8d8a60405160200161125f99989796959493929190613970565b6040516020818303038152906040529050600060688260405161128291906139f3565b9081526020016040518091039020805480602002602001604051908101604052809291908181526020016000905b8282101561135c5783829060005260206000200180546112cf90613770565b80601f01602080910402602001604051908101604052809291908181526020018280546112fb90613770565b80156113485780601f1061131d57610100808354040283529160200191611348565b820191906000526020600020905b81548152906001019060200180831161132b57829003601f168201915b5050505050815260200190600101906112b0565b50505050905080516003611370919061395d565b6001600160401b03811115611387576113876133da565b6040519080825280602002602001820160405280156113ba57816020015b60608152602001906001900390816113a55790505b50965081876000815181106113d1576113d16136bb565b602002602001018190525060005b815181101561143e578181815181106113fa576113fa6136bb565b602002602001015188826001611410919061395d565b81518110611420576114206136bb565b60200260200101819052508080611436906138cd565b9150506113df565b508486848d8d8860405160200161145a96959493929190613a0f565b6040516020818303038152906040528782516001611478919061395d565b81518110611488576114886136bb565b60200260200101819052508486856040516020016114a893929190613a72565b60405160208183030381529060405287825160026114c6919061395d565b815181106114d6576114d66136bb565b60200260200101819052505050505050505b949350505050565b6060808080846001600160401b0381111561150d5761150d6133da565b604051908082528060200260200182016040528015611536578160200160208202803683370190505b509350846001600160401b03811115611551576115516133da565b60405190808252806020026020018201604052801561157a578160200160208202803683370190505b509250846001600160401b03811115611595576115956133da565b6040519080825280602002602001820160405280156115c857816020015b60608152602001906001900390816115b35790505b509150846001600160401b038111156115e3576115e36133da565b60405190808252806020026020018201604052801561161657816020015b60608152602001906001900390816116015790505b50905060005b858110156116da57611647898989898581811061163b5761163b6136bb565b905060200201356120d8565b888581518110611659576116596136bb565b60200260200101888681518110611672576116726136bb565b6020026020010188878151811061168b5761168b6136bb565b602002602001018888815181106116a4576116a46136bb565b6020908102919091010193909352929091526001600160a01b0392831690915291169052806116d2816138cd565b91505061161c565b50945094509450949050565b7fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c8121905546001600160a01b031690565b6000806060611724868686612761565b9250925092505b93509350939050565b60608080836001600160401b03811115611750576117506133da565b604051908082528060200260200182016040528015611779578160200160208202803683370190505b509250836001600160401b03811115611794576117946133da565b6040519080825280602002602001820160405280156117bd578160200160208202803683370190505b509150836001600160401b038111156117d8576117d86133da565b60405190808252806020026020018201604052801561180b57816020015b60608152602001906001900390816117f65790505b50905060005b848110156118b25761183c8888888885818110611830576118306136bb565b90506020020135612761565b86848151811061184e5761184e6136bb565b60200260200101868581518110611867576118676136bb565b60200260200101868681518110611880576118806136bb565b60209081029190910101929092526001600160a01b0392831690915291169052806118aa816138cd565b915050611811565b509450945094915050565b606554604051634f558e7960e01b8152600481018390526000916001600160a01b031690634f558e7990602401602060405180830381865afa158015611907573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061192b9190613699565b156119415750506065546001600160a01b031690565b6066546001600160a01b03161580159061196d575060006119618361296c565b6001600160a01b031614155b156119835750506066546001600160a01b031690565b506000919050565b6060816001600160401b038111156119a5576119a56133da565b6040519080825280602002602001820160405280156119d857816020015b60608152602001906001900390816119c35790505b50905060005b82811015611a7857611a48308585848181106119fc576119fc6136bb565b9050602002810190611a0e91906136d1565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061299e92505050565b828281518110611a5a57611a5a6136bb565b60200260200101819052508080611a70906138cd565b9150506119de565b5092915050565b6000611a8a8261233a565b611a9657506000919050565b611a9f826123d2565b611ad45760665460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb906024016106ac565b60655460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb9060240161071f565b606080836001600160401b03811115611b2057611b206133da565b604051908082528060200260200182016040528015611b5357816020015b6060815260200190600190039081611b3e5790505b509150836001600160401b03811115611b6e57611b6e6133da565b604051908082528060200260200182016040528015611ba157816020015b6060815260200190600190039081611b8c5790505b509050611bad836123d2565b15611c345760655460405163170b5fa560e31b81526001600160a01b039091169063b85afd2890611be690889088908890600401613ab5565b600060405180830381865afa158015611c03573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611c2b9190810190613b72565b91509150611cd9565b6000611c3f84612617565b90506001600160a01b0381163b15158015611c5957508415155b15611cd75760405163170b5fa560e31b81526001600160a01b0382169063b85afd2890611c8e90899089908990600401613ab5565b600060405180830381865afa925050508015611ccc57506040513d6000823e601f3d908101601f19168201604052611cc99190810190613b72565b60015b15611cd75790935091505b505b935093915050565b6060611cf08686868686612a92565b979650505050505050565b606554604051632fafb1ad60e21b81526001600160a01b038381166004830152606092169063bebec6b4906024015b600060405180830381865afa158015611d47573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261063291908101906135b0565b6060611d7e8686868686612a92565b509695505050505050565b6060816001600160401b03811115611da357611da36133da565b604051908082528060200260200182016040528015611dcc578160200160208202803683370190505b50905060005b82811015611a7857611dfb848483818110611def57611def6136bb565b90506020020135612740565b828281518110611e0d57611e0d6136bb565b6001600160a01b039092166020928302919091019091015280611e2f816138cd565b915050611dd2565b6060611e428261233a565b611e5a57505060408051602081019091526000815290565b611e63826123d2565b611ed85760665460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401600060405180830381865afa158015611eb0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106ed91908101906135b0565b60655460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401611d2a565b60405162461bcd60e51b815260206004820152601f60248201527f50726f78795265616465723a20554e535550504f525445445f4d4554484f440060448201526000906064016107bc565b611f5c6126e1565b828114611fab5760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107bc565b60005b83811015610e4a57612006858583818110611fcb57611fcb6136bb565b9050602002810190611fdd91906136d1565b858585818110611fef57611fef6136bb565b905060200281019061200191906136d1565b612b3e565b80612010816138cd565b915050611fae565b6120206126e1565b6001600160a01b0381166107c55760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107bc565b61208d6126e1565b60005b83811015610e4a576120c68585838181106120ad576120ad6136bb565b90506020028101906120bf91906136d1565b8585612b3e565b806120d0816138cd565b915050612090565b600080606080856001600160401b038111156120f6576120f66133da565b60405190808252806020026020018201604052801561212957816020015b60608152602001906001900390816121145790505b509150856001600160401b03811115612144576121446133da565b60405190808252806020026020018201604052801561217757816020015b60608152602001906001900390816121625790505b509050612183856123d2565b156122845760655460405163b3f9e4cb60e01b8152600481018790526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa1580156121d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121f591906133bd565b935061220085612bad565b60655460405163170b5fa560e31b81529194506001600160a01b03169063b85afd2890612235908a908a908a90600401613ab5565b600060405180830381865afa158015612252573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261227a9190810190613b72565b9092509050610652565b61228d85612617565b93506122988561296c565b92506001600160a01b0384163b151580156122b4575060008251115b156106525760405163170b5fa560e31b81526001600160a01b0385169063b85afd28906122e9908a908a908a90600401613ab5565b600060405180830381865afa92505050801561232757506040513d6000823e601f3d908101601f191682016040526123249190810190613b72565b60015b1561065257909250905093509350935093565b6000612345826123d2565b6123645760006123548361296c565b6001600160a01b03161415610632565b606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e79906024015b602060405180830381865afa1580156123ae573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190613699565b6066546000906001600160a01b031615806106325750606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401612391565b60006124236116e6565b9050817fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c812190580546001600160a01b0319166001600160a01b03928316179055604051838216918316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b606082516001600160401b038111156124b0576124b06133da565b6040519080825280602002602001820160405280156124e357816020015b60608152602001906001900390816124ce5790505b5090506124ef826123d2565b1561257257606554604051630dec660d60e11b81526001600160a01b0390911690631bd8cc1a906125269086908690600401613bcb565b600060405180830381865afa158015612543573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261256b9190810190613bed565b9050610632565b600061257d83612617565b90506001600160a01b0381163b15158015612599575060008451115b15611a7857604051630dec660d60e11b81526001600160a01b03821690631bd8cc1a906125cc9087908790600401613bcb565b600060405180830381865afa92505050801561260a57506040513d6000823e601f3d908101601f191682016040526126079190810190613bed565b60015b15611a7857949350505050565b60665460405163b3f9e4cb60e01b8152600481018390526000916001600160a01b03169063b3f9e4cb906024015b602060405180830381865afa92505050801561267e575060408051601f3d908101601f1916820190925261267b918101906133bd565b60015b61063257506000919050565b600054610100900460ff166110a75760405162461bcd60e51b81526004016107bc90613c21565b600054610100900460ff166126d85760405162461bcd60e51b81526004016107bc90613c21565b6110a733612419565b336126ea6116e6565b6001600160a01b0316146110a75760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107bc565b600061274b826123d2565b612758576106ed8261296c565b61063282612bad565b6000806060846001600160401b0381111561277e5761277e6133da565b6040519080825280602002602001820160405280156127b157816020015b606081526020019060019003908161279c5790505b5090506127bd846123d2565b156128bb5760655460405163b3f9e4cb60e01b8152600481018690526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561280b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061282f91906133bd565b925061283a84612bad565b606554604051630dec660d60e11b81529193506001600160a01b031690631bd8cc1a9061286f90899089908990600401613c6c565b600060405180830381865afa15801561288c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526128b49190810190613bed565b905061172b565b6128c484612617565b92506128cf8461296c565b91506001600160a01b0383163b151580156128e957508415155b1561172b57604051630dec660d60e11b81526001600160a01b03841690631bd8cc1a9061291e90899089908990600401613c6c565b600060405180830381865afa92505050801561295c57506040513d6000823e601f3d908101601f191682016040526129599190810190613bed565b60015b1561172b57905093509350939050565b6066546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401612645565b60606001600160a01b0383163b612a065760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b60648201526084016107bc565b600080846001600160a01b031684604051612a2191906139f3565b600060405180830381855af49150503d8060008114612a5c576040519150601f19603f3d011682016040523d82523d6000602084013e612a61565b606091505b5091509150612a898282604051806060016040528060278152602001613c8160279139612bdf565b95945050505050565b6060806000612aa388888888611118565b90506000612ab18286612495565b905060005b8151811015612b31576000828281518110612ad357612ad36136bb565b6020026020010151511115612b1f57828181518110612af457612af46136bb565b60200260200101519350818181518110612b1057612b106136bb565b60200260200101519450612b31565b80612b29816138cd565b915050612ab6565b5050509550959350505050565b818160678686604051612b52929190613717565b90815260200160405180910390209182612b6d9291906137f8565b507f0bf4b04a0f6d7d0800284e1abb0f58f795c0a25b9088634b6ab847be51001dec8484604051612b9f9291906138e6565b60405180910390a150505050565b6065546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401612645565b60608315612bee5750816107e9565b825115612bfe5782518084602001fd5b8160405162461bcd60e51b81526004016107bc9190612f12565b50805460008255906000526020600020908101906107ce91905b80821115612c4f576000612c468282612c53565b50600101612c32565b5090565b508054612c5f90613770565b6000825580601f10612c6f575050565b601f0160209004906000526020600020908101906107ce91905b80821115612c4f5760008155600101612c89565b600060208284031215612caf57600080fd5b81356001600160e01b0319811681146107e957600080fd5b60008083601f840112612cd957600080fd5b5081356001600160401b03811115612cf057600080fd5b6020830191508360208260051b8501011115610f9057600080fd5b600080600060408486031215612d2057600080fd5b83356001600160401b03811115612d3657600080fd5b612d4286828701612cc7565b909790965060209590950135949350505050565b60005b83811015612d71578181015183820152602001612d59565b50506000910152565b60008151808452612d92816020860160208601612d56565b601f01601f19169290920160200192915050565b600082825180855260208086019550808260051b84010181860160005b84811015612df157601f19868403018952612ddf838351612d7a565b98840198925090830190600101612dc3565b5090979650505050505050565b6001600160a01b03858116825284166020820152608060408201819052600090612e2a90830185612da6565b8281036060840152611cf08185612da6565b600060208284031215612e4e57600080fd5b5035919050565b6001600160a01b03811681146107ce57600080fd5b600060208284031215612e7c57600080fd5b81356107e981612e55565b6020815260006107e96020830184612da6565b60008083601f840112612eac57600080fd5b5081356001600160401b03811115612ec357600080fd5b602083019150836020828501011115610f9057600080fd5b600080600060408486031215612ef057600080fd5b83356001600160401b03811115612f0657600080fd5b612d4286828701612e9a565b6020815260006107e96020830184612d7a565b60008060208385031215612f3857600080fd5b82356001600160401b03811115612f4e57600080fd5b612f5a85828601612cc7565b90969095509350505050565b60008060408385031215612f7957600080fd5b8235612f8481612e55565b946020939093013593505050565b60008060408385031215612fa557600080fd5b8235612fb081612e55565b91506020830135612fc081612e55565b809150509250929050565b60008060008060408587031215612fe157600080fd5b84356001600160401b0380821115612ff857600080fd5b61300488838901612cc7565b9096509450602087013591508082111561301d57600080fd5b5061302a87828801612cc7565b95989497509550505050565b6000806040838503121561304957600080fd5b50508035926020909101359150565b60408152600061306b6040830185612d7a565b8281036020840152612a898185612d7a565b6000806000806040858703121561309357600080fd5b84356001600160401b03808211156130aa57600080fd5b6130b688838901612e9a565b909650945060208701359150808211156130cf57600080fd5b5061302a87828801612e9a565b600081518084526020808501945080840160005b838110156131155781516001600160a01b0316875295820195908201906001016130f0565b509495945050505050565b60008282518085526020808601955060058183821b8501018287016000805b868110156131ac57601f1988850381018c5283518051808752908801908887019080891b88018a01865b8281101561319557858a8303018452613183828651612d7a565b948c0194938c01939150600101613169565b509e8a019e9750505093870193505060010161313f565b50919998505050505050505050565b6080815260006131ce60808301876130dc565b82810360208401526131e081876130dc565b905082810360408401526131f48186613120565b90508281036060840152611cf08185613120565b6001600160a01b03848116825283166020820152606060408201819052600090612a8990830184612da6565b60608152600061324760608301866130dc565b828103602084015261325981866130dc565b9050828103604084015261326d8185613120565b9695505050505050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156132cc57603f198886030184526132ba858351612d7a565b9450928501929085019060010161329e565b5092979650505050505050565b6040815260006132ec6040830185612da6565b8281036020840152612a898185612da6565b60008060008060006060868803121561331657600080fd5b85356001600160401b038082111561332d57600080fd5b61333989838a01612e9a565b9097509550602088013591508082111561335257600080fd5b5061335f88828901612e9a565b96999598509660400135949350505050565b6020815260006107e960208301846130dc565b6000806000806040858703121561339a57600080fd5b84356001600160401b03808211156133b157600080fd5b6130b688838901612cc7565b6000602082840312156133cf57600080fd5b81516107e981612e55565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715613418576134186133da565b604052919050565b60006001600160401b03821115613439576134396133da565b5060051b60200190565b60006001600160401b0382111561345c5761345c6133da565b50601f01601f191660200190565b600061347d61347884613420565b6133f0565b80848252602080830192508560051b85013681111561349b57600080fd5b855b818110156135125780356001600160401b038111156134bc5760008081fd5b870136601f8201126134ce5760008081fd5b80356134dc61347882613443565b81815236868385010111156134f15760008081fd5b8186840187830137600091810186019190915286525093820193820161349d565b50919695505050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60408152600061355b60408301858761351e565b9050826020830152949350505050565b600082601f83011261357c57600080fd5b815161358a61347882613443565b81815284602083860101111561359f57600080fd5b6114e8826020830160208701612d56565b6000602082840312156135c257600080fd5b81516001600160401b038111156135d857600080fd5b6114e88482850161356b565b60008383855260208086019550808560051b8301018460005b87811015612df157848303601f19018952813536889003601e1901811261362357600080fd5b870184810190356001600160401b0381111561363e57600080fd5b80360382131561364d57600080fd5b61365885828461351e565b9a86019a94505050908301906001016135fd565b6020815260006107e66020830184866135e4565b60006020828403121561369257600080fd5b5051919050565b6000602082840312156136ab57600080fd5b815180151581146107e957600080fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e198436030181126136e857600080fd5b8301803591506001600160401b0382111561370257600080fd5b602001915036819003821315610f9057600080fd5b8183823760009101908152919050565b6000808335601e1984360301811261373e57600080fd5b8301803591506001600160401b0382111561375857600080fd5b6020019150600581901b3603821315610f9057600080fd5b600181811c9082168061378457607f821691505b6020821081036137a457634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115610bf057600081815260208120601f850160051c810160208610156137d15750805b601f850160051c820191505b818110156137f0578281556001016137dd565b505050505050565b6001600160401b0383111561380f5761380f6133da565b6138238361381d8354613770565b836137aa565b6000601f841160018114613857576000851561383f5750838201355b600019600387901b1c1916600186901b178355610e4a565b600083815260209020601f19861690835b828110156138885786850135825560209485019460019092019101613868565b50868210156138a55760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b634e487b7160e01b600052601160045260246000fd5b6000600182016138df576138df6138b7565b5060010190565b6020815260006107e660208301848661351e565b6000806040838503121561390d57600080fd5b82516001600160401b038082111561392457600080fd5b6139308683870161356b565b9350602085015191508082111561394657600080fd5b506139538582860161356b565b9150509250929050565b80820180821115610632576106326138b7565b60008a51613982818460208f01612d56565b8a5190830190613996818360208f01612d56565b8a519101906139a9818360208e01612d56565b0187898237600090880190815286516139c6818360208b01612d56565b0184868237600090850190815283516139e3818360208801612d56565b019b9a5050505050505050505050565b60008251613a05818460208701612d56565b9190910192915050565b60008751613a21818460208c01612d56565b875190830190613a35818360208c01612d56565b8751910190613a48818360208b01612d56565b018486823760009085019081528351613a65818360208801612d56565b0198975050505050505050565b60008451613a84818460208901612d56565b845190830190613a98818360208901612d56565b8451910190613aab818360208801612d56565b0195945050505050565b6040808252810183905260006001600160fb1b03841115613ad557600080fd5b8360051b808660608501376020830193909352500160600192915050565b600082601f830112613b0457600080fd5b81516020613b1461347883613420565b82815260059290921b84018101918181019086841115613b3357600080fd5b8286015b84811015611d7e5780516001600160401b03811115613b565760008081fd5b613b648986838b010161356b565b845250918301918301613b37565b60008060408385031215613b8557600080fd5b82516001600160401b0380821115613b9c57600080fd5b613ba886838701613af3565b93506020850151915080821115613bbe57600080fd5b5061395385828601613af3565b604081526000613bde6040830185612da6565b90508260208301529392505050565b600060208284031215613bff57600080fd5b81516001600160401b03811115613c1557600080fd5b6114e884828501613af3565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60408152600061355b6040830185876135e456fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a","storage":{}},"0xc2110388dd54228ae0a834119457ede938bf0b57":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061021e5760003560e01c80638da5cb5b11610123578063acf1a841116100ab578063d547741f1161006f578063d547741f14610682578063f14fcbc8146106a2578063f23a6e61146106c2578063f2fde38b146106e2578063ffa1ad741461070257600080fd5b8063acf1a841146105e0578063bc197c8114610600578063c0c53b8b14610620578063cf01585314610640578063d53913931461066057600080fd5b8063a0e3aef1116100f2578063a0e3aef114610534578063a217fddf14610554578063a3f4df7e14610569578063a4247400146105a0578063aa271e1a146105c057600080fd5b80638da5cb5b146104c157806391d14854146104df578063983b2d56146104ff578063986502751461051f57600080fd5b80635fc1964f116101a65780636ccbae5f116101755780636ccbae5f14610439578063715018a61461045957806371e2a6571461046e57806381c81d351461048e57806383e7f6ff146104a157600080fd5b80635fc1964f146103ae578063634486da146103ce5780636352211e146103e15780636a8be89e1461041957600080fd5b80632f2ff15d116101ed5780632f2ff15d146103035780633092afd51461032557806336568abe14610345578063423f6cef14610365578063572b6c051461038557600080fd5b806301ffc9a71461022a578063150b7a021461025f5780631bf7e13e14610298578063248a9ca3146102c557600080fd5b3661022557005b600080fd5b34801561023657600080fd5b5061024a6102453660046125f2565b610733565b60405190151581526020015b60405180910390f35b34801561026b57600080fd5b5061027f61027a366004612672565b610779565b6040516001600160e01b03199091168152602001610256565b3480156102a457600080fd5b506102b86102b33660046126e4565b6108cb565b60405161025691906127a4565b3480156102d157600080fd5b506102f56102e03660046127b7565b600090815260fb602052604090206001015490565b604051908152602001610256565b34801561030f57600080fd5b5061032361031e3660046127d0565b610997565b005b34801561033157600080fd5b50610323610340366004612800565b6109c1565b34801561035157600080fd5b506103236103603660046127d0565b6109d5565b34801561037157600080fd5b5061032361038036600461281d565b610a68565b34801561039157600080fd5b5061024a6103a0366004612800565b6001600160a01b0316301490565b3480156103ba57600080fd5b506103236103c936600461288f565b610bd9565b6103236103dc366004612800565b610c21565b3480156103ed57600080fd5b506104016103fc3660046127b7565b610ce4565b6040516001600160a01b039091168152602001610256565b34801561042557600080fd5b50610323610434366004612800565b610cef565b34801561044557600080fd5b506102f56104543660046127b7565b610d38565b34801561046557600080fd5b50610323610d7e565b34801561047a57600080fd5b5061032361048936600461288f565b610d92565b61032361049c366004612800565b610dda565b3480156104ad57600080fd5b506102f56104bc366004612934565b610e57565b3480156104cd57600080fd5b506097546001600160a01b0316610401565b3480156104eb57600080fd5b5061024a6104fa3660046127d0565b610efa565b34801561050b57600080fd5b5061032361051a366004612800565b610f25565b34801561052b57600080fd5b50610323610f36565b34801561054057600080fd5b506102f561054f366004612a5c565b610f50565b34801561056057600080fd5b506102f5600081565b34801561057557600080fd5b506102b86040518060400160405280600b81526020016a454e5320437573746f647960a81b81525081565b3480156105ac57600080fd5b5061024a6105bb3660046126e4565b610ffc565b3480156105cc57600080fd5b5061024a6105db366004612800565b61104f565b3480156105ec57600080fd5b506103236105fb366004612934565b611069565b34801561060c57600080fd5b5061027f61061b366004612b35565b611222565b34801561062c57600080fd5b5061032361063b366004612bf3565b6112db565b34801561064c57600080fd5b5061032361065b366004612c3e565b611485565b34801561066c57600080fd5b506102f56000805160206133f583398151915281565b34801561068e57600080fd5b5061032361069d3660046127d0565b611592565b3480156106ae57600080fd5b506103236106bd3660046127b7565b6115b7565b3480156106ce57600080fd5b5061027f6106dd366004612d20565b61162b565b3480156106ee57600080fd5b506103236106fd366004612800565b6116bc565b34801561070e57600080fd5b506102b860405180604001604052806005815260200164302e312e3360d81b81525081565b60006001600160e01b03198216630a85bd0160e11b148061076457506001600160e01b03198216630271189760e51b145b806107735750610773826116d8565b92915050565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004546000906001600160a01b0316806107b061170d565b6001600160a01b0316036108a957600080806107ce86880188612d9b565b9250925092506107dd8361171c565b6001600160a01b03841663b88d4fde30600080516020613415833981519152546040516001600160a01b03909116908c9061082390879030906000908b90602001612dfc565b6040516020818303038152906040526040518563ffffffff1660e01b81526004016108519493929190612e3c565b600060405180830381600087803b15801561086b57600080fd5b505af115801561087f573d6000803e3d6000fd5b5050505061089561088f8261174e565b846117d3565b50630a85bd0160e11b93506108c292505050565b6040516344e7d94960e01b815260040160405180910390fd5b95945050505050565b606060005a90506108dd858585610ffc565b6108fa57604051638baa579f60e01b815260040160405180910390fd5b61098c61090a6020870187612800565b3060408801358461091e60608b018b612e6f565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061185e92505050565b9150505b9392505050565b600082815260fb60205260409020600101546109b28161193f565b6109bc8383611950565b505050565b6109c96119d7565b6109d281611a50565b50565b6109dd61170d565b6001600160a01b0316816001600160a01b031614610a5a5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b610a648282611a68565b5050565b80610a7161170d565b6001600160a01b0316610a8382611aed565b6001600160a01b031614610ac55780610a9a61170d565b604051637ea58b1160e01b815260048101929092526001600160a01b03166024820152604401610a51565b610ace82611c03565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052600090610b22906060015b6040516020818303038152906040528051906020012090565b80546001600160a01b0319166001600160a01b0392909216919091179055600060008051602061341583398151915254604051637921219560e11b81523060048201526001600160a01b038681166024830152604482018690526001606483015260a06084830152600060a48301529091169150819063f242432a9060c401600060405180830381600087803b158015610bbb57600080fd5b505af1158015610bcf573d6000803e3d6000fd5b5050505050505050565b610be16119d7565b60005b8151811015610a6457610c0f828281518110610c0257610c02612eb5565b6020026020010151611a50565b80610c1981612ee1565b915050610be4565b610c2c6105db61170d565b610c485760405162461bcd60e51b8152600401610a5190612efa565b6001600160a01b038116610c9e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a51565b610ca781611c1c565b610caf610f36565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610a64573d6000803e3d6000fd5b600061077382611aed565b610cf76119d7565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c500480546001600160a01b0319166001600160a01b0392909216919091179055565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a838156020820152908101829052600090610d7790606001610b09565b5492915050565b610d866119d7565b610d906000611c34565b565b610d9a6119d7565b60005b8151811015610a6457610dc8828281518110610dbb57610dbb612eb5565b6020026020010151611c1c565b80610dd281612ee1565b915050610d9d565b610de56105db61170d565b610e015760405162461bcd60e51b8152600401610a5190612efa565b6001600160a01b038116610ca75760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a51565b6000805160206133d5833981519152546040516383e7f6ff60e01b81526000916001600160a01b031690829082906383e7f6ff90610e9d90899089908990600401612f58565b6040805180830381865afa158015610eb9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610edd9190612f7c565b60208101518151919250610ef091612fca565b9695505050505050565b600091825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610f2d6119d7565b6109d281611c1c565b610d906000805160206133f583398151915261036061170d565b6000805160206133d5833981519152546000906001600160a01b0316806365a69dcf8d85610f7e5730610f80565b8d5b8d8d8d8d8d8d8d6040518a63ffffffff1660e01b8152600401610fab9998979695949392919061306e565b602060405180830381865afa158015610fc8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fec91906130de565b9c9b505050505050505050505050565b600061104761100a856130f7565b3085858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611c8692505050565b949350505050565b60006107736000805160206133f583398151915283610efa565b6110746105db61170d565b6110905760405162461bcd60e51b8152600401610a5190612efa565b6002603354036110e25760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a51565b60026033556000805160206133d5833981519152546040516383e7f6ff60e01b81526001600160a01b039091169060009082906383e7f6ff9061112d90889088908890600401612f58565b6040805180830381865afa158015611149573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061116d9190612f7c565b6020810151815191925061118091612fca565b4710156111a05760405163050205f960e01b815260040160405180910390fd5b816001600160a01b031663acf1a841826020015183600001516111c39190612fca565b8787876040518563ffffffff1660e01b81526004016111e493929190612f58565b6000604051808303818588803b1580156111fd57600080fd5b505af1158015611211573d6000803e3d6000fd5b505060016033555050505050505050565b6000600080516020613415833981519152546001600160a01b031661124561170d565b6001600160a01b03161461126c576040516344e7d94960e01b815260040160405180910390fd5b600061127a83850185612800565b90506112858161171c565b60005b878110156112c4576112b28989838181106112a5576112a5612eb5565b90506020020135836117d3565b806112bc81612ee1565b915050611288565b5063bc197c8160e01b9a9950505050505050505050565b600054610100900460ff16158080156112fb5750600054600160ff909116105b806113155750303b158015611315575060005460ff166001145b6113785760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610a51565b6000805460ff19166001179055801561139b576000805461ff0019166101001790555b6000805160206133d583398151915280546001600160a01b038087166001600160a01b03199283161790925560008051602061341583398151915280548684169083161790557ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004805492851692909116919091179055611419611dc5565b611421611df3565b611429611df3565b611431611e1a565b611439611e51565b801561147f576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6114906105db61170d565b6114ac5760405162461bcd60e51b8152600401610a5190612efa565b6002603354036114fe5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a51565b600260338190555060006115478c8c8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061174e92505050565b905061155281611c03565b6115708c8c846115625730611564565b8c5b8c8c8c8c8c8c8c611e8a565b8161157f5761157f818b6117d3565b5050600160335550505050505050505050565b600082815260fb60205260409020600101546115ad8161193f565b6109bc8383611a68565b60006000805160206133d583398151915254604051631e29f97960e31b8152600481018490526001600160a01b039091169150819063f14fcbc890602401600060405180830381600087803b15801561160f57600080fd5b505af1158015611623573d6000803e3d6000fd5b505050505050565b6000600080516020613415833981519152546001600160a01b031661164e61170d565b6001600160a01b031614611675576040516344e7d94960e01b815260040160405180910390fd5b6001600160a01b038616156116a957600061169283850185612800565b905061169d8161171c565b6116a786826117d3565b505b5063f23a6e6160e01b9695505050505050565b6116c46119d7565b6116cd81611fd5565b6109d260008261204b565b60006001600160e01b03198216637965db0b60e01b148061077357506301ffc9a760e01b6001600160e01b0319831614610773565b6000611717612055565b905090565b6001600160a01b0381166109d25760405163b20f76e360e01b81526001600160a01b0382166004820152602401610a51565b60007f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae60001b826040516020016117859190613195565b604051602081830303815290604052805190602001206040516020016117b5929190918252602082015260400190565b60408051601f19818403018152919052805160209091012092915050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052819061181190606001610b09565b80546001600160a01b0319166001600160a01b039283161790556040519082169083907f45aa97e368889fb3527c1db60c59c2ae91e82f21778613449e46d4208c1c4b1290600090a35050565b606061186985612073565b600080876001600160a01b0316866118838b8a89896120d9565b6040516118909190613195565b60006040518083038160008787f1925050503d80600081146118ce576040519150601f19603f3d011682016040523d82523d6000602084013e6118d3565b606091505b5090925090506118e4603f876131b1565b5a116118f2576118f26131d3565b61193282826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c4544000000000000815250612109565b9998505050505050505050565b6109d28161194b61170d565b612142565b61195a8282610efa565b610a6457600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff1916600117905561199361170d565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6119df61170d565b6001600160a01b03166119fa6097546001600160a01b031690565b6001600160a01b031614610d905760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a51565b6109d26000805160206133f583398151915282611592565b611a728282610efa565b15610a6457600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff19169055611aa961170d565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101829052600090611b2c90606001610b09565b546001600160a01b0316905080611b595760405163124bad6360e31b815260048101839052602401610a51565b30600080516020613415833981519152546040516331a9108f60e11b8152600481018590526001600160a01b0390911690636352211e90602401602060405180830381865afa158015611bb0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bd491906131e9565b6001600160a01b031614611bfe576040516303b673fd60e21b815260048101839052602401610a51565b919050565b303303611c13576109d2816121a6565b6109d281612073565b6109d26000805160206133f58339815191528261204b565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015611ccd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cf191906130de565b90506000611d9f866060015180519060200120868860200151604051602001611d3f9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b9050818660200151148015610ef057508551610ef0906001600160a01b031682866121d0565b600054610100900460ff16611dec5760405162461bcd60e51b8152600401610a5190613206565b6001603355565b600054610100900460ff16610d905760405162461bcd60e51b8152600401610a5190613206565b600054610100900460ff16611e415760405162461bcd60e51b8152600401610a5190613206565b610d90611e4c61170d565b611c34565b600054610100900460ff16611e785760405162461bcd60e51b8152600401610a5190613206565b610d906000611e8561170d565b61204b565b6000805160206133d5833981519152546040516383e7f6ff60e01b81526001600160a01b039091169060009082906383e7f6ff90611ed0908f908f908e90600401612f58565b6040805180830381865afa158015611eec573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f109190612f7c565b60208101518151919250611f2391612fca565b471015611f435760405163050205f960e01b815260040160405180910390fd5b816001600160a01b03166374694a2b82602001518360000151611f669190612fca565b8e8e8e8e8e8e8e8e8e8e6040518c63ffffffff1660e01b8152600401611f959a99989796959493929190613251565b6000604051808303818588803b158015611fae57600080fd5b505af1158015611fc2573d6000803e3d6000fd5b5050505050505050505050505050505050565b611fdd6119d7565b6001600160a01b0381166120425760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610a51565b6109d281611c34565b610a648282611950565b600030330361206b575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290526000906060016040516020818303038152906040528051906020012090506120c88190565b546120d4906001612fca565b905550565b60608285856040516020016120f0939291906132c3565b6040516020818303038152906040529050949350505050565b60608315612118575081610990565b8251156121285782518084602001fd5b8160405162461bcd60e51b8152600401610a5191906127a4565b61214c8282610efa565b610a6457612164816001600160a01b03166014612312565b61216f836020612312565b604051602001612180929190613302565b60408051601f198184030181529082905262461bcd60e51b8252610a51916004016127a4565b6121ae6124ad565b81146109d257604051635637b6af60e11b815260048101829052602401610a51565b60008060006121df85856124c0565b909250905060008160048111156121f8576121f8613377565b1480156122165750856001600160a01b0316826001600160a01b0316145b1561222657600192505050610990565b600080876001600160a01b0316631626ba7e60e01b888860405160240161224e92919061338d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161228c9190613195565b600060405180830381855afa9150503d80600081146122c7576040519150601f19603f3d011682016040523d82523d6000602084013e6122cc565b606091505b50915091508180156122df575080516020145b801561230657508051630b135d3f60e11b9061230490830160209081019084016130de565b145b98975050505050505050565b606060006123218360026133a6565b61232c906002612fca565b6001600160401b0381111561234357612343612849565b6040519080825280601f01601f19166020018201604052801561236d576020820181803683370190505b509050600360fc1b8160008151811061238857612388612eb5565b60200101906001600160f81b031916908160001a905350600f60fb1b816001815181106123b7576123b7612eb5565b60200101906001600160f81b031916908160001a90535060006123db8460026133a6565b6123e6906001612fca565b90505b600181111561245e576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061241a5761241a612eb5565b1a60f81b82828151811061243057612430612eb5565b60200101906001600160f81b031916908160001a90535060049490941c93612457816133bd565b90506123e9565b5083156109905760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610a51565b60003033036120705750601f1936013590565b60008082516041036124f65760208301516040840151606085015160001a6124ea87828585612505565b945094505050506124fe565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561253c57506000905060036125e9565b8460ff16601b1415801561255457508460ff16601c14155b1561256557506000905060046125e9565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156125b9573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166125e2576000600192509250506125e9565b9150600090505b94509492505050565b60006020828403121561260457600080fd5b81356001600160e01b03198116811461099057600080fd5b6001600160a01b03811681146109d257600080fd5b60008083601f84011261264357600080fd5b5081356001600160401b0381111561265a57600080fd5b6020830191508360208285010111156124fe57600080fd5b60008060008060006080868803121561268a57600080fd5b85356126958161261c565b945060208601356126a58161261c565b93506040860135925060608601356001600160401b038111156126c757600080fd5b6126d388828901612631565b969995985093965092949392505050565b6000806000604084860312156126f957600080fd5b83356001600160401b038082111561271057600080fd5b908501906080828803121561272457600080fd5b9093506020850135908082111561273a57600080fd5b5061274786828701612631565b9497909650939450505050565b60005b8381101561276f578181015183820152602001612757565b50506000910152565b60008151808452612790816020860160208601612754565b601f01601f19169290920160200192915050565b6020815260006109906020830184612778565b6000602082840312156127c957600080fd5b5035919050565b600080604083850312156127e357600080fd5b8235915060208301356127f58161261c565b809150509250929050565b60006020828403121561281257600080fd5b81356109908161261c565b6000806040838503121561283057600080fd5b823561283b8161261c565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561288757612887612849565b604052919050565b600060208083850312156128a257600080fd5b82356001600160401b03808211156128b957600080fd5b818501915085601f8301126128cd57600080fd5b8135818111156128df576128df612849565b8060051b91506128f084830161285f565b818152918301840191848101908884111561290a57600080fd5b938501935b8385101561230657843592506129248361261c565b828252938501939085019061290f565b60008060006040848603121561294957600080fd5b83356001600160401b0381111561295f57600080fd5b61296b86828701612631565b909790965060209590950135949350505050565b60006001600160401b0383111561299857612998612849565b6129ab601f8401601f191660200161285f565b90508281528383830111156129bf57600080fd5b828260208301376000602084830101529392505050565b600082601f8301126129e757600080fd5b6109908383356020850161297f565b60008083601f840112612a0857600080fd5b5081356001600160401b03811115612a1f57600080fd5b6020830191508360208260051b85010111156124fe57600080fd5b80358015158114611bfe57600080fd5b803561ffff81168114611bfe57600080fd5b6000806000806000806000806000806101208b8d031215612a7c57600080fd5b8a356001600160401b0380821115612a9357600080fd5b612a9f8e838f016129d6565b9b5060208d01359150612ab18261261c565b90995060408c0135985060608c0135975060808c013590612ad18261261c565b90965060a08c01359080821115612ae757600080fd5b50612af48d828e016129f6565b9096509450612b07905060c08c01612a3a565b9250612b1560e08c01612a4a565b9150612b246101008c01612a3a565b90509295989b9194979a5092959850565b60008060008060008060008060a0898b031215612b5157600080fd5b8835612b5c8161261c565b97506020890135612b6c8161261c565b965060408901356001600160401b0380821115612b8857600080fd5b612b948c838d016129f6565b909850965060608b0135915080821115612bad57600080fd5b612bb98c838d016129f6565b909650945060808b0135915080821115612bd257600080fd5b50612bdf8b828c01612631565b999c989b5096995094979396929594505050565b600080600060608486031215612c0857600080fd5b8335612c138161261c565b92506020840135612c238161261c565b91506040840135612c338161261c565b809150509250925092565b60008060008060008060008060008060006101208c8e031215612c6057600080fd5b6001600160401b03808d351115612c7657600080fd5b612c838e8e358f01612631565b909c509a50612c9560208e013561261c565b60208d0135995060408d0135985060608d01359750612cb760808e013561261c565b60808d013596508060a08e01351115612ccf57600080fd5b50612ce08d60a08e01358e016129f6565b9095509350612cf160c08d01612a3a565b9250612cff60e08d01612a4a565b9150612d0e6101008d01612a3a565b90509295989b509295989b9093969950565b60008060008060008060a08789031215612d3957600080fd5b8635612d448161261c565b95506020870135612d548161261c565b9450604087013593506060870135925060808701356001600160401b03811115612d7d57600080fd5b612d8989828a01612631565b979a9699509497509295939492505050565b600080600060608486031215612db057600080fd5b8335612dbb8161261c565b92506020840135612dcb8161261c565b915060408401356001600160401b03811115612de657600080fd5b612df2868287016129d6565b9150509250925092565b608081526000612e0f6080830187612778565b6001600160a01b03958616602084015261ffff949094166040830152509216606090920191909152919050565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090610ef090830184612778565b6000808335601e19843603018112612e8657600080fd5b8301803591506001600160401b03821115612ea057600080fd5b6020019150368190038213156124fe57600080fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201612ef357612ef3612ecb565b5060010190565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b604081526000612f6c604083018587612f2f565b9050826020830152949350505050565b600060408284031215612f8e57600080fd5b604051604081018181106001600160401b0382111715612fb057612fb0612849565b604052825181526020928301519281019290925250919050565b8082018082111561077357610773612ecb565b81835260006020808501808196508560051b810191508460005b878110156130615782840389528135601e1988360301811261301857600080fd5b870185810190356001600160401b0381111561303357600080fd5b80360382131561304257600080fd5b61304d868284612f2f565b9a87019a9550505090840190600101612ff7565b5091979650505050505050565b60006101008083526130828184018d612778565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a085015290506130bc818789612fdd565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b6000602082840312156130f057600080fd5b5051919050565b60006080823603121561310957600080fd5b604051608081016001600160401b03828210818311171561312c5761312c612849565b816040528435915061313d8261261c565b8183526020850135602084015260408501356040840152606085013591508082111561316857600080fd5b50830136601f82011261317a57600080fd5b6131893682356020840161297f565b60608301525092915050565b600082516131a7818460208701612754565b9190910192915050565b6000826131ce57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b6000602082840312156131fb57600080fd5b81516109908161261c565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60006101008083526132668184018d8f612f2f565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a085015290506132a0818789612fdd565b94151560c0840152505061ffff9190911660e09091015298975050505050505050565b600084516132d5818460208901612754565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081526000835161333a816017850160208801612754565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835161336b816028840160208801612754565b01602801949350505050565b634e487b7160e01b600052602160045260246000fd5b8281526040602082015260006110476040830184612778565b808202811582820484141761077357610773612ecb565b6000816133cc576133cc612ecb565b50600019019056fe412386de53449251cbf7ce1f4c6a038bf9c0746e62d331b08ef0c3fa7d0ab6729f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a660793a5062d506d35cc8f1beda67ee5028c16bfcd9c923d5bfc439c04bd929b1a164736f6c6343000811000a","storage":{"0x0":"0xff"}},"0xc58206842e4030a3b2cabc78780ae7635173c533":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106102325760003560e01c80637c69eae211610130578063b5466669116100b8578063d284d97a1161007c578063d284d97a14610d4e578063d8d3cc6e14610dbc578063e67ca8a314610e3f578063e985e9c514610e5c578063ebf0c71714610e8a57610232565b8063b5466669146109ce578063b88d4fde14610a51578063c29b52f914610b15578063c87b56dd14610c5e578063ce9fb82b14610c7b57610232565b8063a22cb465116100ff578063a22cb4651461090b578063a7fc7a0714610939578063ab3b87fe1461095f578063b3f9e4cb1461098b578063b429afeb146109a857610232565b80637c69eae21461076457806395d89b41146107e75780639d743989146107ef5780639e5be9a51461087d57610232565b806342842e0e116101be5780635cbe1112116101825780635cbe11121461061d5780636352211e1461069257806366ac3b68146106af57806368b62d32146106b757806370a082311461073e57610232565b806342842e0e146104ed57806342966c6814610523578063430c208114610540578063538361a71461056c57806357aac5741461058f57610232565b8063081812fc11610205578063081812fc146103fa578063095ea7b3146104335780632392c1891461045f57806323b872dd1461048b5780632525d06a146104c157610232565b806301ffc9a71461023757806302759c37146102725780630467e014146102aa57806306fdde031461037d575b600080fd5b61025e6004803603602081101561024d57600080fd5b50356001600160e01b031916610e92565b604080519115158252519081900360200190f35b6102a86004803603606081101561028857600080fd5b506001600160a01b03813581169160208101359091169060400135610eb1565b005b6102a8600480360360808110156102c057600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156102ef57600080fd5b82018360208201111561030157600080fd5b803590602001918460018302840111600160201b8311171561032257600080fd5b919390929091602081019035600160201b81111561033f57600080fd5b82018360208201111561035157600080fd5b803590602001918460018302840111600160201b8311171561037257600080fd5b509092509050610ed3565b610385610f62565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103bf5781810151838201526020016103a7565b50505050905090810190601f1680156103ec5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6104176004803603602081101561041057600080fd5b5035610f84565b604080516001600160a01b039092168252519081900360200190f35b6102a86004803603604081101561044957600080fd5b506001600160a01b038135169060200135610fe6565b6102a86004803603604081101561047557600080fd5b506001600160a01b0381351690602001356110f7565b6102a8600480360360608110156104a157600080fd5b506001600160a01b03813581169160208101359091169060400135611115565b6102a8600480360360408110156104d757600080fd5b506001600160a01b03813516906020013561115a565b6102a86004803603606081101561050357600080fd5b506001600160a01b0381358116916020810135909116906040013561117a565b6102a86004803603602081101561053957600080fd5b5035611195565b61025e6004803603604081101561055657600080fd5b506001600160a01b0381351690602001356111e6565b6102a86004803603604081101561058257600080fd5b50803590602001356111f9565b6102a8600480360360808110156105a557600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156105df57600080fd5b8201836020820111156105f157600080fd5b803590602001918460018302840111600160201b8311171561061257600080fd5b50909250905061124f565b6102a86004803603604081101561063357600080fd5b81359190810190604081016020820135600160201b81111561065457600080fd5b82018360208201111561066657600080fd5b803590602001918460018302840111600160201b8311171561068757600080fd5b5090925090506112be565b610417600480360360208110156106a857600080fd5b5035611320565b6102a861137a565b61072c600480360360408110156106cd57600080fd5b81359190810190604081016020820135600160201b8111156106ee57600080fd5b82018360208201111561070057600080fd5b803590602001918460018302840111600160201b8311171561072157600080fd5b509092509050611385565b60408051918252519081900360200190f35b61072c6004803603602081101561075457600080fd5b50356001600160a01b03166113cf565b6102a86004803603606081101561077a57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156107a957600080fd5b8201836020820111156107bb57600080fd5b803590602001918460018302840111600160201b831117156107dc57600080fd5b509092509050611437565b61038561149a565b6102a86004803603608081101561080557600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561083f57600080fd5b82018360208201111561085157600080fd5b803590602001918460018302840111600160201b8311171561087257600080fd5b5090925090506114b6565b6102a86004803603608081101561089357600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156108cd57600080fd5b8201836020820111156108df57600080fd5b803590602001918460018302840111600160201b8311171561090057600080fd5b509092509050611506565b6102a86004803603604081101561092157600080fd5b506001600160a01b0381351690602001351515611564565b6102a86004803603602081101561094f57600080fd5b50356001600160a01b0316611630565b6102a86004803603604081101561097557600080fd5b506001600160a01b03813516906020013561164b565b610417600480360360208110156109a157600080fd5b5035611672565b61025e600480360360208110156109be57600080fd5b50356001600160a01b0316611694565b6102a8600480360360608110156109e457600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610a1357600080fd5b820183602082011115610a2557600080fd5b803590602001918460018302840111600160201b83111715610a4657600080fd5b5090925090506116a7565b6102a860048036036080811015610a6757600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b811115610aa157600080fd5b820183602082011115610ab357600080fd5b803590602001918460018302840111600160201b83111715610ad457600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506116fa945050505050565b6102a8600480360360a0811015610b2b57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b811115610b6557600080fd5b820183602082011115610b7757600080fd5b803590602001918460018302840111600160201b83111715610b9857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b811115610bea57600080fd5b820183602082011115610bfc57600080fd5b803590602001918460018302840111600160201b83111715610c1d57600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061174c945050505050565b61038560048036036020811015610c7457600080fd5b5035611797565b6102a860048036036080811015610c9157600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610cc057600080fd5b820183602082011115610cd257600080fd5b803590602001918460018302840111600160201b83111715610cf357600080fd5b919390929091602081019035600160201b811115610d1057600080fd5b820183602082011115610d2257600080fd5b803590602001918460018302840111600160201b83111715610d4357600080fd5b509092509050611892565b6102a860048036036020811015610d6457600080fd5b810190602081018135600160201b811115610d7e57600080fd5b820183602082011115610d9057600080fd5b803590602001918460018302840111600160201b83111715610db157600080fd5b50909250905061191b565b6102a860048036036060811015610dd257600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610e0157600080fd5b820183602082011115610e1357600080fd5b803590602001918460018302840111600160201b83111715610e3457600080fd5b50909250905061199e565b6102a860048036036020811015610e5557600080fd5b50356119f3565b61025e60048036036040811015610e7257600080fd5b506001600160a01b0381358116916020013516611a05565b61072c611a33565b6001600160e01b03191660009081526020819052604090205460ff1690565b610eba33611694565b610ec357600080fd5b610ece838383611a57565b505050565b610edc33611694565b610ee557600080fd5b610f5a868686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8a018190048102820181019092528881529250889150879081908401838280828437600092019190915250611a9f92505050565b505050505050565b6040805180820190915260078152662e63727970746f60c81b60208201525b90565b6000610f8f82611ac9565b610fca5760405162461bcd60e51b815260040180806020018281038252602c815260200180612848602c913960400191505060405180910390fd5b506000908152600360205260409020546001600160a01b031690565b6000610ff182611320565b9050806001600160a01b0316836001600160a01b031614156110445760405162461bcd60e51b81526004018080602001828103825260218152602001806128bf6021913960400191505060405180910390fd5b336001600160a01b038216148061106057506110608133611a05565b61109b5760405162461bcd60e51b815260040180806020018281038252603881526020018061279c6038913960400191505060405180910390fd5b60008281526003602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b806111023382611ae6565b61110b57600080fd5b610ece8383611b82565b61111f3382611ae6565b610ec35760405162461bcd60e51b81526004018080602001828103825260318152602001806128e06031913960400191505060405180910390fd5b61116333611694565b61116c57600080fd5b6111768282611b82565b5050565b610ece838383604051806020016040528060008152506116fa565b61119f3382611ae6565b6111da5760405162461bcd60e51b81526004018080602001828103825260308152602001806129366030913960400191505060405180910390fd5b6111e381611bf8565b50565b60006111f28383611ae6565b9392505050565b6000828152600860205260409020546001600160a01b0316331461121c57600080fd5b6040518290829033907ff10fc780c78f994a214c79a2ae8d8b7bfe7cc3f0f935a8f05a29525e71d7f12790600090a45050565b61125833611694565b61126157600080fd5b61126c858585611a57565b6112ae85858585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611c7992505050565b6112b757600080fd5b5050505050565b826112c93382611ae6565b6112d257600080fd5b61131a6113158585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b611bf8565b50505050565b6000818152600260205260408120546001600160a01b0316806113745760405162461bcd60e51b81526004018080602001828103825260298152602001806127fe6029913960400191505060405180910390fd5b92915050565b61138333611e64565b565b60006113c78484848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b949350505050565b60006001600160a01b0382166114165760405162461bcd60e51b815260040180806020018281038252602a8152602001806127d4602a913960400191505060405180910390fd5b6001600160a01b038216600090815260046020526040902061137490611e75565b826114423382611ae6565b61144b57600080fd5b6112b7858585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250611a9f915050565b604080518082019091526002815261155160f21b602082015290565b6112b785858585858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201829052506040805160208101909152908152925061174c915050565b826115113382611ae6565b61151a57600080fd5b610f5a868661155f8787878080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b611a57565b6001600160a01b0382163314156115c2576040805162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604482015290519081900360640190fd5b3360008181526005602090815260408083206001600160a01b03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b61163933611694565b61164257600080fd5b6111e381611e79565b806116563382611ae6565b61165f57600080fd5b610ece61166b83611320565b8484611e8a565b6000818152600860205260408120546001600160a01b03168061137457600080fd5b600061137460018363ffffffff611fce16565b6116b033611694565b6116b957600080fd5b61131a848484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061203592505050565b611705848484611115565b61171184848484611c79565b61131a5760405162461bcd60e51b815260040180806020018281038252603281526020018061271a6032913960400191505060405180910390fd5b826117573382611ae6565b61176057600080fd5b600061176c8585611dac565b9050611779878783611a57565b61178587878386611c79565b61178e57600080fd5b50505050505050565b60606117a282611ac9565b6117ab57600080fd5b600760066000848152602001908152602001600020604051602001808380546001816001161561010002031660029004801561181e5780601f106117fc57610100808354040283529182019161181e565b820191906000526020600020905b81548152906001019060200180831161180a575b5050828054600181600116156101000203166002900480156118775780601f10611855576101008083540402835291820191611877565b820191906000526020600020905b815481529060010190602001808311611863575b505060408051601f1981840301815291905295945050505050565b8461189d3382611ae6565b6118a657600080fd5b61178e878787878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b018190048102820181019092528981529250899150889081908401838280828437600092019190915250611a9f92505050565b61192433611694565b61192d57600080fd5b611939600783836125cf565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b828260405180806020018281038252848482818152602001925080828437600083820152604051601f909101601f19169092018290039550909350505050a15050565b826119a93382611ae6565b6119b257600080fd5b6112b7858585858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061203592505050565b6119fc33611694565b6111da57600080fd5b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b7f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f90565b611a62838383611e8a565b6000818152600860205260409020546001600160a01b031615610ece57600090815260086020526040902080546001600160a01b03191690555050565b611aaa848484612035565b611ac0600085611aba8686611dac565b84611c79565b61131a57600080fd5b6000908152600260205260409020546001600160a01b0316151590565b6000611af182611ac9565b611b2c5760405162461bcd60e51b815260040180806020018281038252602c815260200180612770602c913960400191505060405180910390fd5b6000611b3783611320565b9050806001600160a01b0316846001600160a01b03161480611b725750836001600160a01b0316611b6784610f84565b6001600160a01b0316145b806113c757506113c78185611a05565b611b8b81611ac9565b611b9457600080fd5b6040516001600160a01b0383169082907fb1b34e6d89e1c584527d447f4b29ffad55635a37edeeb564939a6483401b31a590600090a3600090815260086020526040902080546001600160a01b0319166001600160a01b0392909216919091179055565b611c018161220f565b6000818152600860205260409020546001600160a01b031615611c3b57600081815260086020526040902080546001600160a01b03191690555b60008181526006602052604090205460026000196101006001841615020190911604156111e35760008181526006602052604081206111e39161264d565b6000611c8d846001600160a01b0316612221565b611c99575060016113c7565b604051630a85bd0160e11b815233600482018181526001600160a01b03888116602485015260448401879052608060648501908152865160848601528651600095928a169463150b7a029490938c938b938b939260a4019060208501908083838e5b83811015611d13578181015183820152602001611cfb565b50505050905090810190601f168015611d405780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015611d6257600080fd5b505af1158015611d76573d6000803e3d6000fd5b505050506040513d6020811015611d8c57600080fd5b50516001600160e01b031916630a85bd0160e11b14915050949350505050565b6000815160001415611dbd57600080fd5b82826040516020018082805190602001908083835b60208310611df15780518252601f199092019160209182019101611dd2565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040528051906020012060405160200180838152602001828152602001925050506040516020818303038152906040528051906020012060001c905092915050565b6111e360018263ffffffff61222716565b5490565b6111e360018263ffffffff61228e16565b826001600160a01b0316611e9d82611320565b6001600160a01b031614611ee25760405162461bcd60e51b81526004018080602001828103825260298152602001806128966029913960400191505060405180910390fd5b6001600160a01b038216611f275760405162461bcd60e51b815260040180806020018281038252602481526020018061274c6024913960400191505060405180910390fd5b611f308161230f565b6001600160a01b0383166000908152600460205260409020611f519061234a565b6001600160a01b0382166000908152600460205260409020611f7290612361565b60008181526002602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60006001600160a01b0382166120155760405162461bcd60e51b81526004018080602001828103825260228152602001806128746022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b60006120418383611dac565b905061204d848261236a565b815161205857600080fd5b61206181611ac9565b61206a57600080fd5b606082600660008681526020019081526020016000206040516020018083805190602001908083835b602083106120b25780518252601f199092019160209182019101612093565b6001836020036101000a03801982511681845116808217855250505050505090500180601760f91b815250600101828054600181600116156101000203166002900480156121375780601f10612115576101008083540402835291820191612137565b820191906000526020600020905b815481529060010190602001808311612123575b505060408051601f19818403018152918152600087815260066020908152919020825192965061216d9550935085019150612691565b50817fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952826040518080602001828103825283818151815260200191508051906020019080838360005b838110156121ce5781810151838201526020016121b6565b50505050905090810190601f1680156121fb5780820380516001836020036101000a031916815260200191505b509250505060405180910390a25050505050565b6111e361221b82611320565b8261249b565b3b151590565b6122318282611fce565b61226c5760405162461bcd60e51b81526004018080602001828103825260218152602001806128276021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff19169055565b6122988282611fce565b156122ea576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b6000818152600360205260409020546001600160a01b0316156111e357600090815260036020526040902080546001600160a01b0319169055565b805461235d90600163ffffffff61257216565b9055565b80546001019055565b6001600160a01b0382166123c5576040805162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f2061646472657373604482015290519081900360640190fd5b6123ce81611ac9565b15612420576040805162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000604482015290519081900360640190fd5b600081815260026020908152604080832080546001600160a01b0319166001600160a01b03871690811790915583526004909152902061245f90612361565b60405181906001600160a01b038416906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b816001600160a01b03166124ae82611320565b6001600160a01b0316146124f35760405162461bcd60e51b81526004018080602001828103825260258152602001806129116025913960400191505060405180910390fd5b6124fc8161230f565b6001600160a01b038216600090815260046020526040902061251d9061234a565b60008181526002602052604080822080546001600160a01b0319169055518291906001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6000828211156125c9576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106126105782800160ff1982351617855561263d565b8280016001018555821561263d579182015b8281111561263d578235825591602001919060010190612622565b506126499291506126ff565b5090565b50805460018160011615610100020316600290046000825580601f1061267357506111e3565b601f0160209004906000526020600020908101906111e391906126ff565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106126d257805160ff191683800117855561263d565b8280016001018555821561263d579182015b8281111561263d5782518255916020019190600101906126e4565b610f8191905b80821115612649576000815560010161270556fe4552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c654552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e526f6c65733a206163636f756e7420697320746865207a65726f20616464726573734552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f7665644552433732313a206275726e206f6620746f6b656e2074686174206973206e6f74206f776e4552433732314275726e61626c653a2063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564a265627a7a72315820fb6a1b26cc352dbb05e6627fd530bbb44114ac3a349f30d1f071136c656d20dc64736f6c634300050c0032","storage":{"0x7":"0x68747470733a2f2f6578616d706c652e636f6d2f000000000000000000000028","0xbdf39e9e65b2355b1b0b06df799c09159f0ab90f06a9bb2153f5de7d9b0ea81":"0x1","0x1a306d3e9bf29128dee78d8d16c9f378a11bbdf917a9caf986fc6e60846e37e7":"0x63727970746f000000000000000000000000000000000000000000000000000c","0x42c63635470f1fb1d6d4b6441c413cb435b1ebb6fedd1896dd5e25d1399147dd":"0x1","0x605d7a0bb2b20c4004d356eb969ff104dcca62360aa356247072f5e0df6472e3":"0xdead","0x67be87c3ff9960ca1e9cfac5cab2ff4747269cf9ed20c9b7306235ac35a491c5":"0x1","0x70f464f95f9ab7aba03264fd4cac1711d774d3703ce74217180264d4efc2105f":"0x1","0x76a72f26a108e6f3f687141f5f42d21d65857c03cb1b01aa1284f9a9ccd085da":"0x1","0x9562381dfbc2d8b8b66e765249f330164b73e329e5f01670660643571d1974df":"0x1","0x9f23d2403fb64167582d316b1bc5b35a6ed48524341ab24947c71df77304b29e":"0x1","0xf7815fccbf112960a73756e185887fedcb9fc64ca0a16cc5923b7960ed780800":"0x1"}},"0xc965345edac823d56812cd20a10316233916a605":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101c6575f3560e01c806395d89b41116100fe578063c87b56dd1161009e578063e985e9c51161006e578063e985e9c5146103d4578063f2fde38b1461040f578063f6a74ed714610422578063fca247ac14610435575f80fd5b8063c87b56dd14610377578063d6e4fa861461038a578063da8c229e146103a9578063ddf7fcb0146103cb575f80fd5b8063a7fc7a07116100d9578063a7fc7a0714610334578063b88d4fde14610347578063c1a287e21461035a578063c475abff14610364575f80fd5b806395d89b411461030657806396e494e81461030e578063a22cb46514610321575f80fd5b80633f15457f116101695780636352211e116101445780636352211e146102c757806370a08231146102da578063715018a6146102ed5780638da5cb5b146102f5575f80fd5b80633f15457f1461028e57806342842e0e146102a15780634e543b26146102b4575f80fd5b8063095ea7b3116101a4578063095ea7b3146102325780630e297b451461024757806323b872dd1461026857806328ed4f6c1461027b575f80fd5b806301ffc9a7146101ca57806306fdde03146101f2578063081812fc14610207575b5f80fd5b6101dd6101d83660046117dd565b610448565b60405190151581526020015b60405180910390f35b6101fa610499565b6040516101e99190611845565b61021a610215366004611857565b610528565b6040516001600160a01b0390911681526020016101e9565b610245610240366004611882565b61054d565b005b61025a6102553660046118ac565b610666565b6040519081526020016101e9565b6102456102763660046118e1565b61067b565b61024561028936600461190e565b6106ac565b60085461021a906001600160a01b031681565b6102456102af3660046118e1565b6107be565b6102456102c236600461193c565b6107d8565b61021a6102d5366004611857565b610848565b61025a6102e836600461193c565b610869565b6102456108ed565b6006546001600160a01b031661021a565b6101fa610900565b6101dd61031c366004611857565b61090f565b61024561032f366004611957565b610934565b61024561034236600461193c565b610943565b61024561035536600461199b565b610996565b61025a6276a70081565b61025a610372366004611a74565b6109ce565b6101fa610385366004611857565b610b52565b61025a610398366004611857565b5f9081526007602052604090205490565b6101dd6103b736600461193c565b600a6020525f908152604090205460ff1681565b61025a60095481565b6101dd6103e2366004611a94565b6001600160a01b039182165f90815260056020908152604080832093909416825291909152205460ff1690565b61024561041d36600461193c565b610bc2565b61024561043036600461193c565b610c3b565b61025a6104433660046118ac565b610c8b565b5f6001600160e01b031982166301ffc9a760e01b148061047857506001600160e01b031982166380ac58cd60e01b145b8061049357506001600160e01b03198216630a3b53db60e21b145b92915050565b60605f80546104a790611ac0565b80601f01602080910402602001604051908101604052809291908181526020018280546104d390611ac0565b801561051e5780601f106104f55761010080835404028352916020019161051e565b820191905f5260205f20905b81548152906001019060200180831161050157829003601f168201915b5050505050905090565b5f61053282610c99565b505f908152600460205260409020546001600160a01b031690565b5f61055782610cf7565b9050806001600160a01b0316836001600160a01b0316036105c95760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084015b60405180910390fd5b336001600160a01b03821614806105e557506105e581336103e2565b6106575760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016105c0565b6106618383610d56565b505050565b5f6106738484845f610dc3565b949350505050565b6106853382610fc7565b6106a15760405162461bcd60e51b81526004016105c090611af8565b610661838383611040565b6008546009546040516302571be360e01b8152600481019190915230916001600160a01b0316906302571be390602401602060405180830381865afa1580156106f7573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061071b9190611b45565b6001600160a01b03161461072d575f80fd5b6107373383610fc7565b61073f575f80fd5b6008546009546040516306ab592360e01b81526004810191909152602481018490526001600160a01b038381166044830152909116906306ab5923906064016020604051808303815f875af115801561079a573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106619190611b60565b61066183838360405180602001604052805f815250610996565b6107e06111a2565b600854600954604051630c4b7b8560e11b815260048101919091526001600160a01b03838116602483015290911690631896f70a906044015f604051808303815f87803b15801561082f575f80fd5b505af1158015610841573d5f803e3d5ffd5b5050505050565b5f818152600760205260408120544210610860575f80fd5b61049382610cf7565b5f6001600160a01b0382166108d25760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b60648201526084016105c0565b506001600160a01b03165f9081526003602052604090205490565b6108f56111a2565b6108fe5f6111fc565b565b6060600180546104a790611ac0565b5f81815260076020526040812054429061092d906276a70090611b77565b1092915050565b61093f33838361124d565b5050565b61094b6111a2565b6001600160a01b0381165f818152600a6020526040808220805460ff19166001179055517f0a8bb31534c0ed46f380cb867bd5c803a189ced9a764e30b3a4991a9901d74749190a250565b6109a03383610fc7565b6109bc5760405162461bcd60e51b81526004016105c090611af8565b6109c88484848461131a565b50505050565b6008546009546040516302571be360e01b815260048101919091525f9130916001600160a01b03909116906302571be390602401602060405180830381865afa158015610a1d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a419190611b45565b6001600160a01b031614610a53575f80fd5b335f908152600a602052604090205460ff16610a6d575f80fd5b5f838152600760205260409020544290610a8b906276a70090611b77565b1015610a95575f80fd5b610aa26276a70083611b77565b5f848152600760205260409020546276a70090610ac0908590611b77565b610aca9190611b77565b11610ad3575f80fd5b5f8381526007602052604081208054849290610af0908490611b77565b90915550505f838152600760205260409081902054905184917f9b87a00e30f1ac65d898f070f8a3488fe60517182d0a2098e1b4b93a54aa9bd691610b3791815260200190565b60405180910390a250505f9081526007602052604090205490565b6060610b5d82610c99565b5f610b7260408051602081019091525f815290565b90505f815111610b905760405180602001604052805f815250610bbb565b80610b9a8461134d565b604051602001610bab929190611b96565b6040516020818303038152906040525b9392505050565b610bca6111a2565b6001600160a01b038116610c2f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016105c0565b610c38816111fc565b50565b610c436111a2565b6001600160a01b0381165f818152600a6020526040808220805460ff19169055517f33d83959be2573f5453b12eb9d43b3499bc57d96bd2f067ba44803c859e811139190a250565b5f6106738484846001610dc3565b5f818152600260205260409020546001600160a01b0316610c385760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105c0565b5f818152600260205260408120546001600160a01b0316806104935760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105c0565b5f81815260046020526040902080546001600160a01b0319166001600160a01b0384169081179091558190610d8a82610cf7565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6008546009546040516302571be360e01b815260048101919091525f9130916001600160a01b03909116906302571be390602401602060405180830381865afa158015610e12573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e369190611b45565b6001600160a01b031614610e48575f80fd5b335f908152600a602052604090205460ff16610e62575f80fd5b610e6b8561090f565b610e73575f80fd5b610e806276a70042611b77565b6276a700610e8e8542611b77565b610e989190611b77565b11610ea1575f80fd5b610eab8342611b77565b5f868152600760209081526040808320939093556002905220546001600160a01b031615610edc57610edc856113dd565b610ee6848661146f565b8115610f6d576008546009546040516306ab592360e01b81526004810191909152602481018790526001600160a01b038681166044830152909116906306ab5923906064016020604051808303815f875af1158015610f47573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f6b9190611b60565b505b6001600160a01b038416857fb3d987963d01b2f68493b4bdb130988f157ea43070d4ad840fee0466ed9370d9610fa38642611b77565b60405190815260200160405180910390a3610fbe8342611b77565b95945050505050565b5f80610fd283610848565b9050806001600160a01b0316846001600160a01b0316148061100d5750836001600160a01b031661100284610528565b6001600160a01b0316145b8061067357506001600160a01b038082165f9081526005602090815260408083209388168352929052205460ff16610673565b826001600160a01b031661105382610cf7565b6001600160a01b0316146110795760405162461bcd60e51b81526004016105c090611bc4565b6001600160a01b0382166110db5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b60648201526084016105c0565b826001600160a01b03166110ee82610cf7565b6001600160a01b0316146111145760405162461bcd60e51b81526004016105c090611bc4565b5f81815260046020908152604080832080546001600160a01b03199081169091556001600160a01b038781168086526003855283862080545f1901905590871680865283862080546001019055868652600290945282852080549092168417909155905184937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6006546001600160a01b031633146108fe5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016105c0565b600680546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b816001600160a01b0316836001600160a01b0316036112ae5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c65720000000000000060448201526064016105c0565b6001600160a01b038381165f81815260056020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b611325848484611040565b611331848484846115f7565b6109c85760405162461bcd60e51b81526004016105c090611c09565b60605f611359836116f1565b60010190505f8167ffffffffffffffff81111561137857611378611987565b6040519080825280601f01601f1916602001820160405280156113a2576020820181803683370190505b5090508181016020015b5f19016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a85049450846113ac57509392505050565b5f6113e782610cf7565b90506113f282610cf7565b5f83815260046020908152604080832080546001600160a01b03199081169091556001600160a01b0385168085526003845282852080545f190190558785526002909352818420805490911690555192935084927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6001600160a01b0382166114c55760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f206164647265737360448201526064016105c0565b5f818152600260205260409020546001600160a01b0316156115295760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105c0565b5f818152600260205260409020546001600160a01b03161561158d5760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105c0565b6001600160a01b0382165f81815260036020908152604080832080546001019055848352600290915280822080546001600160a01b0319168417905551839291907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b5f6001600160a01b0384163b156116e957604051630a85bd0160e11b81526001600160a01b0385169063150b7a029061163a903390899088908890600401611c5b565b6020604051808303815f875af1925050508015611674575060408051601f3d908101601f1916820190925261167191810190611c97565b60015b6116cf573d8080156116a1576040519150601f19603f3d011682016040523d82523d5f602084013e6116a6565b606091505b5080515f036116c75760405162461bcd60e51b81526004016105c090611c09565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610673565b506001610673565b5f8072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b831061172f5772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef8100000000831061175b576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc10000831061177957662386f26fc10000830492506010015b6305f5e1008310611791576305f5e100830492506008015b61271083106117a557612710830492506004015b606483106117b7576064830492506002015b600a83106104935760010192915050565b6001600160e01b031981168114610c38575f80fd5b5f602082840312156117ed575f80fd5b8135610bbb816117c8565b5f5b838110156118125781810151838201526020016117fa565b50505f910152565b5f81518084526118318160208601602086016117f8565b601f01601f19169290920160200192915050565b602081525f610bbb602083018461181a565b5f60208284031215611867575f80fd5b5035919050565b6001600160a01b0381168114610c38575f80fd5b5f8060408385031215611893575f80fd5b823561189e8161186e565b946020939093013593505050565b5f805f606084860312156118be575f80fd5b8335925060208401356118d08161186e565b929592945050506040919091013590565b5f805f606084860312156118f3575f80fd5b83356118fe8161186e565b925060208401356118d08161186e565b5f806040838503121561191f575f80fd5b8235915060208301356119318161186e565b809150509250929050565b5f6020828403121561194c575f80fd5b8135610bbb8161186e565b5f8060408385031215611968575f80fd5b82356119738161186e565b915060208301358015158114611931575f80fd5b634e487b7160e01b5f52604160045260245ffd5b5f805f80608085870312156119ae575f80fd5b84356119b98161186e565b935060208501356119c98161186e565b925060408501359150606085013567ffffffffffffffff808211156119ec575f80fd5b818701915087601f8301126119ff575f80fd5b813581811115611a1157611a11611987565b604051601f8201601f19908116603f01168101908382118183101715611a3957611a39611987565b816040528281528a6020848701011115611a51575f80fd5b826020860160208301375f60208483010152809550505050505092959194509250565b5f8060408385031215611a85575f80fd5b50508035926020909101359150565b5f8060408385031215611aa5575f80fd5b8235611ab08161186e565b915060208301356119318161186e565b600181811c90821680611ad457607f821691505b602082108103611af257634e487b7160e01b5f52602260045260245ffd5b50919050565b6020808252602d908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526c1c881bdc88185c1c1c9bdd9959609a1b606082015260800190565b5f60208284031215611b55575f80fd5b8151610bbb8161186e565b5f60208284031215611b70575f80fd5b5051919050565b8082018082111561049357634e487b7160e01b5f52601160045260245ffd5b5f8351611ba78184602088016117f8565b835190830190611bbb8183602088016117f8565b01949350505050565b60208082526025908201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060408201526437bbb732b960d91b606082015260800190565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6001600160a01b03858116825284166020820152604081018390526080606082018190525f90611c8d9083018461181a565b9695505050505050565b5f60208284031215611ca7575f80fd5b8151610bbb816117c856fea164736f6c6343000818000a","storage":{"0x0":"0x0","0x1":"0x0","0x6":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x8":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0x9":"0x93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae","0x9b8bc185dce56a7ea1b27d35e40ac15dcdf9144303dfd4d8880220078bf21a2c":"0x1","0xdb5e6a17df8534b92b0c8de590f14b4fb4b5eb2c62ef1bf7a05555e354797508":"0x1","0xe1a982900207b619cb6c39be8cb5e60da1370171412fb65b5efc25e2dce3c34c":"0x1"}},"0xce4bb7dc1eb9dce75743de6a4b48534fd427ef51":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xe85541865bbb62a05064ce5c9f41cc293a8ea996","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0xd178b720229c39de617846f84cf9c8d32a63a23d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610106575f3560e01c806371017a541161009e5780639e32d3641161006e5780639e32d3641461025a578063a424740014610281578063dd6b9e2214610294578063e1c4b65a146102a7578063e35a14e5146102ba575f80fd5b806371017a541461020e5780637b103999146102215780638f0dbd25146102345780639810b69514610247575f80fd5b8063485cc955116100d9578063485cc95514610191578063572b6c05146101a457806358884432146101d05780636ccbae5f146101fb575f80fd5b8063150b7a021461010a5780631694116d1461013b5780631bf7e13e146101505780631c351a9d14610170575b5f80fd5b61011d610118366004611434565b6102e2565b6040516001600160e01b031990911681526020015b60405180910390f35b61014e6101493660046114e3565b610372565b005b61016361015e366004611549565b61040d565b6040516101329190611601565b61018361017e366004611613565b6104d6565b604051908152602001610132565b61014e61019f366004611666565b6105c3565b6101c06101b236600461169d565b6001600160a01b0316301490565b6040519015158152602001610132565b6067546101e3906001600160a01b031681565b6040516001600160a01b039091168152602001610132565b6101836102093660046116b8565b6106f8565b6101e361021c3660046116cf565b610751565b6066546101e3906001600160a01b031681565b61014e6102423660046116ef565b610791565b6101e36102553660046116cf565b610806565b6101837fd81bbfcee722494b885e891546eeac23d0eedcd44038d7a2f6ef9ec2f9e0d23981565b6101c061028f366004611549565b61085f565b6101c06102a236600461172d565b6108a8565b61014e6102b5366004611771565b61091d565b6101e36102c83660046116b8565b5f908152606560205260409020546001600160a01b031690565b6066545f906001600160a01b03166102f8610a43565b6001600160a01b031614158061032257505f848152606560205260409020546001600160a01b0316155b156103605783610330610a43565b60405163634afa0d60e01b815260048101929092526001600160a01b031660248201526044015b60405180910390fd5b50630a85bd0160e11b95945050505050565b828261037e8282610751565b6001600160a01b031661038f610a43565b6001600160a01b0316146103c057604051632cd9b44d60e11b81526004810183905260248101829052604401610357565b5f6103cb8686610806565b90505f5b87811015610402576103fa8989838181106103ec576103ec6117b0565b905060200201358387610a51565b6001016103cf565b505050505050505050565b60605f5a905061041e85858561085f565b61043b57604051638baa579f60e01b815260040160405180910390fd5b6104cb61044b602087018761169d565b3060408801358461045f60608b018b6117c4565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f92019190915250610b8492505050565b9150505b9392505050565b6067545f906001600160a01b031663aa271e1a6104f1610a43565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015610533573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105579190611807565b1580610572575030610567610a43565b6001600160a01b0316145b156105a45761057f610a43565b60405163e2c8c9d560e01b81526001600160a01b039091166004820152602401610357565b5f6105b0858585610c60565b90506105bb81610e73565b949350505050565b5f54610100900460ff16158080156105e157505f54600160ff909116105b806105fa5750303b1580156105fa57505f5460ff166001145b61065d5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610357565b5f805460ff19166001179055801561067e575f805461ff0019166101001790555b606680546001600160a01b038086166001600160a01b031992831617909255606780549285169290911691909117905580156106f3575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f9061074a906060016040516020818303038152906040528051906020012090565b5492915050565b5f80838360405160200161076f929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209150505b92915050565b828261079d8282610751565b6001600160a01b03166107ae610a43565b6001600160a01b0316146107df57604051632cd9b44d60e11b81526004810183905260248101829052604401610357565b856107e981610e73565b6107fd876107f78889610806565b86610a51565b50505050505050565b5f8060026108148585610e8f565b6040516108219190611826565b602060405180830381855afa15801561083c573d5f803e3d5ffd5b5050506040513d601f19601f820116820180604052508101906105bb9190611841565b5f6105bb61086c856118c6565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250610f1492505050565b5f805b8281101561091257846001600160a01b03166108f38585848181106108d2576108d26117b0565b905060200201355f908152606560205260409020546001600160a01b031690565b6001600160a01b03161461090a575f9150506104cf565b6001016108ab565b506001949350505050565b6067546001600160a01b031663aa271e1a610936610a43565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015610978573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061099c9190611807565b15806109b75750306109ac610a43565b6001600160a01b0316145b156109c45761057f610a43565b5f5b818110156106f357610a3a8383838181106109e3576109e36117b0565b90506020028101906109f59190611983565b610a039060208101906117c4565b858585818110610a1557610a156117b0565b9050602002810190610a279190611983565b610a3590602081019061169d565b610c60565b506001016109c6565b5f610a4c611059565b905090565b5f838152606560205260409020546001600160a01b03838116911614610ab4575f83815260656020526040908190205490516326995d8360e11b8152600481018590526001600160a01b0391821660248201529083166044820152606401610357565b5f838152606560205260409081902080546001600160a01b03191690556066549051632142170760e11b81523060048201526001600160a01b03838116602483015260448201869052909116906342842e0e906064015f604051808303815f87803b158015610b21575f80fd5b505af1158015610b33573d5f803e3d5ffd5b50505050806001600160a01b0316610b49610a43565b6001600160a01b0316847f9a471856befea1cabcd7fc8a1c4d70ea07b8ed2ee205cc361f932433542ef3fe60405160405180910390a4505050565b6060610b8f85611076565b5f80876001600160a01b031686610ba88b8a89896110db565b604051610bb59190611826565b5f604051808303815f8787f1925050503d805f8114610bef576040519150601f19603f3d011682016040523d82523d5f602084013e610bf4565b606091505b509092509050610c05603f876119bf565b5a11610c1357610c136119d2565b610c5382826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061110b565b9998505050505050505050565b5f60605f7fd81bbfcee722494b885e891546eeac23d0eedcd44038d7a2f6ef9ec2f9e0d2398686604051602001610c989291906119e6565b60405160208183030381529060405280519060200120604051602001610cc8929190918252602082015260400190565b60408051808303601f19018152828252805160209091012060028084526060840190925292505f9190816020015b6060815260200190600190039081610cf657905050905086868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920182905250855186945090925015159050610d5657610d566117b0565b6020026020010181905250604051806040016040528060038152602001621e9a5b60ea1b81525081600181518110610d9057610d906117b0565b6020908102919091018101919091525f8381526065909152604080822080546001600160a01b0319166001600160a01b03898116919091179091556067549151635cd7e3b360e01b8152911691635cd7e3b391610df891309186918991829190600401611a4d565b5f604051808303815f87803b158015610e0f575f80fd5b505af1158015610e21573d5f803e3d5ffd5b50505050846001600160a01b0316827f08717469d38a4b02325ea6637978c7952f94d3d8fc7848994f618ddbf4d637f18989604051610e61929190611aab565b60405180910390a35095945050505050565b303303610e8657610e8381611144565b50565b610e8381611076565b60605f82610e9f60016020611ad9565b60ff1660208110610eb257610eb26117b0565b1a9050610ec0600282611af2565b60ff1615610ecf576003610ed2565b60025b84604051602001610efc92919060f89290921b6001600160f81b0319168252600182015260210190565b60405160208183030381529060405291505092915050565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015610f58573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f7c9190611841565b90505f611029866060015180519060200120868860200151604051602001610fc99392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561104f5750855161104f906001600160a01b0316828661116e565b9695505050505050565b5f30330361106e575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f906060016040516020818303038152906040528051906020012090506110ca8190565b546110d6906001611b13565b905550565b60608285856040516020016110f293929190611b26565b6040516020818303038152906040529050949350505050565b6060831561111a5750816104cf565b82511561112a5782518084602001fd5b8160405162461bcd60e51b81526004016103579190611601565b61114c6112a9565b8114610e8357604051635637b6af60e11b815260048101829052602401610357565b5f805f61117b85856112bb565b90925090505f81600481111561119357611193611b64565b1480156111b15750856001600160a01b0316826001600160a01b0316145b156111c1576001925050506104cf565b5f80876001600160a01b0316631626ba7e60e01b88886040516024016111e8929190611b78565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516112269190611826565b5f60405180830381855afa9150503d805f811461125e576040519150601f19603f3d011682016040523d82523d5f602084013e611263565b606091505b5091509150818015611276575080516020145b801561129d57508051630b135d3f60e11b9061129b9083016020908101908401611841565b145b98975050505050505050565b5f3033036110735750601f1936013590565b5f8082516041036112ef576020830151604084015160608501515f1a6112e3878285856112fd565b945094505050506112f6565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561133257505f905060036113d9565b8460ff16601b1415801561134a57508460ff16601c14155b1561135a57505f905060046113d9565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156113ab573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b0381166113d3575f600192509250506113d9565b91505f90505b94509492505050565b6001600160a01b0381168114610e83575f80fd5b5f8083601f840112611406575f80fd5b50813567ffffffffffffffff81111561141d575f80fd5b6020830191508360208285010111156112f6575f80fd5b5f805f805f60808688031215611448575f80fd5b8535611453816113e2565b94506020860135611463816113e2565b935060408601359250606086013567ffffffffffffffff811115611485575f80fd5b611491888289016113f6565b969995985093965092949392505050565b5f8083601f8401126114b2575f80fd5b50813567ffffffffffffffff8111156114c9575f80fd5b6020830191508360208260051b85010111156112f6575f80fd5b5f805f805f608086880312156114f7575f80fd5b853567ffffffffffffffff81111561150d575f80fd5b611519888289016114a2565b9096509450506020860135925060408601359150606086013561153b816113e2565b809150509295509295909350565b5f805f6040848603121561155b575f80fd5b833567ffffffffffffffff80821115611572575f80fd5b9085019060808288031215611585575f80fd5b9093506020850135908082111561159a575f80fd5b506115a7868287016113f6565b9497909650939450505050565b5f5b838110156115ce5781810151838201526020016115b6565b50505f910152565b5f81518084526115ed8160208601602086016115b4565b601f01601f19169290920160200192915050565b602081525f6104cf60208301846115d6565b5f805f60408486031215611625575f80fd5b833567ffffffffffffffff81111561163b575f80fd5b611647868287016113f6565b909450925050602084013561165b816113e2565b809150509250925092565b5f8060408385031215611677575f80fd5b8235611682816113e2565b91506020830135611692816113e2565b809150509250929050565b5f602082840312156116ad575f80fd5b81356104cf816113e2565b5f602082840312156116c8575f80fd5b5035919050565b5f80604083850312156116e0575f80fd5b50508035926020909101359150565b5f805f8060808587031215611702575f80fd5b8435935060208501359250604085013591506060850135611722816113e2565b939692955090935050565b5f805f6040848603121561173f575f80fd5b833561174a816113e2565b9250602084013567ffffffffffffffff811115611765575f80fd5b6115a7868287016114a2565b5f8060208385031215611782575f80fd5b823567ffffffffffffffff811115611798575f80fd5b6117a4858286016114a2565b90969095509350505050565b634e487b7160e01b5f52603260045260245ffd5b5f808335601e198436030181126117d9575f80fd5b83018035915067ffffffffffffffff8211156117f3575f80fd5b6020019150368190038213156112f6575f80fd5b5f60208284031215611817575f80fd5b815180151581146104cf575f80fd5b5f82516118378184602087016115b4565b9190910192915050565b5f60208284031215611851575f80fd5b5051919050565b634e487b7160e01b5f52604160045260245ffd5b6040516080810167ffffffffffffffff8111828210171561188f5761188f611858565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156118be576118be611858565b604052919050565b5f608082360312156118d6575f80fd5b6118de61186c565b82356118e9816113e2565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff80821115611919575f80fd5b9085019036601f83011261192b575f80fd5b81358181111561193d5761193d611858565b61194f601f8201601f19168501611895565b91508082523684828501011115611964575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b5f8235603e19833603018112611837575f80fd5b634e487b7160e01b5f52601260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b5f826119cd576119cd611997565b500490565b634e487b7160e01b5f52600160045260245ffd5b818382375f9101908152919050565b5f8282518085526020808601955060208260051b840101602086015f5b84811015611a4057601f19868403018952611a2e8383516115d6565b98840198925090830190600101611a12565b5090979650505050505050565b6001600160a01b038616815260a0602082018190525f90611a70908301876119f5565b8281036040840152611a8281876119f5565b90508281036060840152611a9681866119f5565b91505082151560808301529695505050505050565b60208152816020820152818360408301375f818301604090810191909152601f909201601f19160101919050565b60ff828116828216039081111561078b5761078b6119ab565b5f60ff831680611b0457611b04611997565b8060ff84160691505092915050565b8082018082111561078b5761078b6119ab565b5f8451611b378184602089016115b4565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f6105bb60408301846115d656fea164736f6c6343000818000a","storage":{"0x0":"0xff"}},"0xda9e1b3e395bfb0a45f03c7f615146b9d896c959":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100b1575f3560e01c806340c10f191161006e57806340c10f191461013d57806370a082311461015257806395d89b411461017a578063a457c2d714610182578063a9059cbb14610195578063dd62ed3e146101a8575f80fd5b806306fdde03146100b5578063095ea7b3146100d357806318160ddd146100f657806323b872dd14610108578063313ce5671461011b578063395093511461012a575b5f80fd5b6100bd6101bb565b6040516100ca9190610775565b60405180910390f35b6100e66100e13660046107dc565b61024b565b60405190151581526020016100ca565b6002545b6040519081526020016100ca565b6100e6610116366004610804565b610264565b604051601281526020016100ca565b6100e66101383660046107dc565b610287565b61015061014b3660046107dc565b6102a8565b005b6100fa61016036600461083d565b6001600160a01b03165f9081526020819052604090205490565b6100bd6102b6565b6100e66101903660046107dc565b6102c5565b6100e66101a33660046107dc565b610344565b6100fa6101b636600461085d565b610351565b6060600380546101ca9061088e565b80601f01602080910402602001604051908101604052809291908181526020018280546101f69061088e565b80156102415780601f1061021857610100808354040283529160200191610241565b820191905f5260205f20905b81548152906001019060200180831161022457829003601f168201915b5050505050905090565b5f3361025881858561037b565b60019150505b92915050565b5f3361027185828561049e565b61027c858585610516565b506001949350505050565b5f336102588185856102998383610351565b6102a391906108c6565b61037b565b6102b282826106b8565b5050565b6060600480546101ca9061088e565b5f33816102d28286610351565b9050838110156103375760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b61027c828686840361037b565b5f33610258818585610516565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b6001600160a01b0383166103dd5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161032e565b6001600160a01b03821661043e5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161032e565b6001600160a01b038381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b5f6104a98484610351565b90505f19811461051057818110156105035760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161032e565b610510848484840361037b565b50505050565b6001600160a01b03831661057a5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161032e565b6001600160a01b0382166105dc5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161032e565b6001600160a01b0383165f90815260208190526040902054818110156106535760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161032e565b6001600160a01b038481165f81815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3610510565b6001600160a01b03821661070e5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640161032e565b8060025f82825461071f91906108c6565b90915550506001600160a01b0382165f81815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b5f602080835283518060208501525f5b818110156107a157858101830151858201604001528201610785565b505f604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146107d7575f80fd5b919050565b5f80604083850312156107ed575f80fd5b6107f6836107c1565b946020939093013593505050565b5f805f60608486031215610816575f80fd5b61081f846107c1565b925061082d602085016107c1565b9150604084013590509250925092565b5f6020828403121561084d575f80fd5b610856826107c1565b9392505050565b5f806040838503121561086e575f80fd5b610877836107c1565b9150610885602084016107c1565b90509250929050565b600181811c908216806108a257607f821691505b6020821081036108c057634e487b7160e01b5f52602260045260245ffd5b50919050565b8082018082111561025e57634e487b7160e01b5f52601160045260245ffdfea164736f6c6343000818000a","storage":{"0x2":"0xe8d4a51000","0x3":"0x0","0x4":"0x0","0x47668262eb76f3aa61b856a0c078f33a11f46671cf1466c3616ba74a22fcdd92":"0xe8d4a51000","0x9cc83e833a69122bf7773b58c082655d780ae469ab7cdf5d1047a30229e55875":"0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"}},"0xe0afc4e9e03e4aa67257df7a2eca77454309789d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061002b5760003560e01c806316f1983114610030575b600080fd5b6100b06004803603604081101561004657600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561007157600080fd5b82018360208201111561008357600080fd5b803590602001918460018302840111640100000000831117156100a557600080fd5b5090925090506100b2565b005b826001600160a01b031660017f103fed9db65eac19c4d870f49ab7520fe03b99f1838e5996caf47e9e43308392848460405180806020018281038252848482818152602001925080828437600083820152604051601f909101601f19169092018290039550909350505050a350505056fea164736f6c6343000606000a","storage":{}},"0xe4fdf45c2f8d198854f8823809c7a988eeaaa493":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100a6575f3560e01c80638cb8ecec1161006e5780638cb8ecec1461013e5780638da5cb5b14610151578063cbe9e76414610161578063da8c229e14610183578063e0dba60f146101a5578063f2fde38b146101b8575f80fd5b806301670ba9146100aa57806301ffc9a7146100bf5780633f15457f146100f85780634e543b2614610123578063715018a614610136575b5f80fd5b6100bd6100b8366004610529565b6101cb565b005b6100e36100cd366004610540565b6001600160e01b0319166301ffc9a760e01b1490565b60405190151581526020015b60405180910390f35b60025461010b906001600160a01b031681565b6040516001600160a01b0390911681526020016100ef565b6100bd610131366004610589565b610217565b6100bd610282565b6100bd61014c3660046105a2565b610295565b5f546001600160a01b031661010b565b6100e361016f366004610529565b60036020525f908152604090205460ff1681565b6100e3610191366004610589565b60016020525f908152604090205460ff1681565b6100bd6101b33660046105cc565b6103a2565b6100bd6101c6366004610589565b610408565b6101d3610481565b60405181907f1764176cfa565853ba1ded547a830a9f9bff95231ef6fd228b3ddd6175777569905f90a25f908152600360205260409020805460ff19166001179055565b61021f610481565b600254604051630c4b7b8560e11b81525f60048201526001600160a01b03838116602483015290911690631896f70a906044015f604051808303815f87803b158015610269575f80fd5b505af115801561027b573d5f803e3d5ffd5b5050505050565b61028a610481565b6102935f6104da565b565b335f9081526001602052604090205460ff166103095760405162461bcd60e51b815260206004820152602860248201527f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f604482015267373a3937b63632b960c11b60648201526084015b60405180910390fd5b5f8281526003602052604090205460ff1615610323575f80fd5b6002546040516306ab592360e01b81525f6004820152602481018490526001600160a01b038381166044830152909116906306ab5923906064016020604051808303815f875af1158015610379573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061039d9190610605565b505050565b6103aa610481565b6001600160a01b0382165f81815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b610410610481565b6001600160a01b0381166104755760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610300565b61047e816104da565b50565b5f546001600160a01b031633146102935760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610300565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f60208284031215610539575f80fd5b5035919050565b5f60208284031215610550575f80fd5b81356001600160e01b031981168114610567575f80fd5b9392505050565b80356001600160a01b0381168114610584575f80fd5b919050565b5f60208284031215610599575f80fd5b6105678261056e565b5f80604083850312156105b3575f80fd5b823591506105c36020840161056e565b90509250929050565b5f80604083850312156105dd575f80fd5b6105e68361056e565b9150602083013580151581146105fa575f80fd5b809150509250929050565b5f60208284031215610615575f80fd5b505191905056fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0xbdf39e9e65b2355b1b0b06df799c09159f0ab90f06a9bb2153f5de7d9b0ea81":"0x1","0x97b771283c9c769f7b9399fef71d92816f2bd31de10203b676671b01eb920966":"0x1"}},"0xe85541865bbb62a05064ce5c9f41cc293a8ea996":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610060575f3560e01c8063715018a6146100645780638129fc1c1461006e5780638da5cb5b14610076578063a3f4df7e14610096578063f2fde38b146100cf578063ffa1ad74146100e2575b5f80fd5b61006c610106565b005b61006c610119565b6033546040516001600160a01b0390911681526020015b60405180910390f35b6100c26040518060400160405280600d81526020016c2aa7299d1027b832b930ba37b960991b81525081565b60405161008d91906103bd565b61006c6100dd366004610409565b610229565b6100c2604051806040016040528060058152602001640302e312e360dc1b81525081565b61010e61029f565b6101175f6102f9565b565b5f54610100900460ff161580801561013757505f54600160ff909116105b806101505750303b15801561015057505f5460ff166001145b6101b85760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b5f805460ff1916600117905580156101d9575f805461ff0019166101001790555b6101e161034a565b8015610226575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50565b61023161029f565b6001600160a01b0381166102965760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016101af565b610226816102f9565b6033546001600160a01b031633146101175760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016101af565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff166103b45760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016101af565b610117336102f9565b5f602080835283518060208501525f5b818110156103e9578581018301518582016040015282016103cd565b505f604082860101526040601f19601f8301168501019250505092915050565b5f60208284031215610419575f80fd5b81356001600160a01b038116811461042f575f80fd5b939250505056fea164736f6c6343000818000a","storage":{}},"0xead34b583404e3cb0c9b97c2d1c486be67be9f30":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0xec71e4e674fe0f432693dc2b935c34bd2774c003":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610090575f3560e01c8063a200e15311610063578063a200e15314610146578063a34e35961461016d578063c8a4271f14610180578063cd5d2c74146101bf578063d820ed42146101e6575f80fd5b806301ffc9a7146100945780632c0fd74c146100bc57806350e9a715146100f157806359b6b86c1461011f575b5f80fd5b6100a76100a2366004610600565b61020d565b60405190151581526020015b60405180910390f35b6100e37f000000000000000000000000000000000000000000000000000000000000000081565b6040519081526020016100b3565b6101046100ff366004610627565b610243565b604080518251815260209283015192810192909252016100b3565b6100e37f000000000000000000000000000000000000000000000000000000000000000181565b6100e37f000000000000000000000000000000000000000000000000000000000000000481565b6100e361017b366004610627565b610404565b6101a77f000000000000000000000000f3810eb7d64d1c11ae12727d957c6202b24492f581565b6040516001600160a01b0390911681526020016100b3565b6100e37f000000000000000000000000000000000000000000000000000000000000000081565b6100e37f000000000000000000000000000000000000000000000000000000000000000281565b5f6001600160e01b031982166301ffc9a760e01b148061023d57506001600160e01b031982166350e9a71560e01b145b92915050565b604080518082019091525f80825260208201525f61029586868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061045392505050565b90505f600582106102d1576102ca847f00000000000000000000000000000000000000000000000000000000000000016106b3565b9050610394565b81600403610303576102ca847f00000000000000000000000000000000000000000000000000000000000000026106b3565b81600303610335576102ca847f00000000000000000000000000000000000000000000000000000000000000046106b3565b81600203610367576102ca847f00000000000000000000000000000000000000000000000000000000000000006106b3565b610391847f00000000000000000000000000000000000000000000000000000000000000006106b3565b90505b60405180604001604052806103a883610554565b81526020016103f76103f28a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c92508b91506105f89050565b610554565b9052979650505050505050565b5f61044a6103f286868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508892508791506105f89050565b95945050505050565b80515f90819081905b8082101561054b575f858381518110610477576104776106ca565b01602001516001600160f81b0319169050600160ff1b8110156104a65761049f6001846106de565b9250610538565b600760fd1b6001600160f81b0319821610156104c75761049f6002846106de565b600f60fc1b6001600160f81b0319821610156104e85761049f6003846106de565b601f60fb1b6001600160f81b0319821610156105095761049f6004846106de565b603f60fa1b6001600160f81b03198216101561052a5761049f6005846106de565b6105356006846106de565b92505b5082610543816106f1565b93505061045c565b50909392505050565b5f807f000000000000000000000000f3810eb7d64d1c11ae12727d957c6202b24492f56001600160a01b03166350d25bcd6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105b2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105d69190610709565b9050806105e7846305f5e1006106b3565b6105f19190610720565b9392505050565b5f9392505050565b5f60208284031215610610575f80fd5b81356001600160e01b0319811681146105f1575f80fd5b5f805f806060858703121561063a575f80fd5b843567ffffffffffffffff80821115610651575f80fd5b818701915087601f830112610664575f80fd5b813581811115610672575f80fd5b886020828501011115610683575f80fd5b6020928301999098509187013596604001359550909350505050565b634e487b7160e01b5f52601160045260245ffd5b808202811582820484141761023d5761023d61069f565b634e487b7160e01b5f52603260045260245ffd5b8082018082111561023d5761023d61069f565b5f600182016107025761070261069f565b5060010190565b5f60208284031215610719575f80fd5b5051919050565b5f8261073a57634e487b7160e01b5f52601260045260245ffd5b50049056fea164736f6c6343000818000a","storage":{}},"0xf1ad43dc647f27c2366ab4742d68d21282f7d50e":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101d1575f3560e01c80638b95dd71116100fe578063c86902331161009e578063e32954eb1161006e578063e32954eb146104f2578063e59d895d14610505578063e985e9c514610518578063f1cb7e0614610553575f80fd5b8063c869023314610435578063ce3decdc1461048c578063d5fa2b001461049f578063d700ff33146104b2575f80fd5b8063a8fa5682116100d9578063a8fa5682146103ac578063a9784b3e146103bf578063ac9650d814610402578063bc1c58d114610422575f80fd5b80638b95dd7114610373578063a22cb46514610386578063a4b91a0114610399575f80fd5b80633603d758116101745780635c98042b116101445780635c98042b14610327578063623195b01461033a578063691f34311461034d5780637737221314610360575f80fd5b80633603d758146102975780633b3b57de146102aa5780634cbf6ba4146102bd57806359d1d43c14610307575f80fd5b8063124a319c116101af578063124a319c146102255780632203ab561461025057806329cd62ea14610271578063304e6ade14610284575f80fd5b806301ffc9a7146101d55780630af179d7146101fd57806310f13a8c14610212575b5f80fd5b6101e86101e3366004612267565b610566565b60405190151581526020015b60405180910390f35b61021061020b3660046122bd565b610576565b005b610210610220366004612304565b610778565b610238610233366004612377565b610842565b6040516001600160a01b0390911681526020016101f4565b61026361025e3660046123a1565b610a87565b6040516101f492919061240e565b61021061027f366004612426565b610bb5565b6102106102923660046122bd565b610c4d565b6102106102a536600461244f565b610cc6565b6102386102b836600461244f565b610d64565b6101e86102cb3660046123a1565b5f82815260208181526040808320546001600160401b031683526006825280832094835293815283822092825291909152205461ffff16151590565b61031a6103153660046122bd565b610d93565b6040516101f49190612466565b61031a61033536600461244f565b610e6f565b610210610348366004612478565b610f2a565b61031a61035b36600461244f565b610fc2565b61021061036e3660046122bd565b610ffa565b6102106103813660046124da565b611073565b6102106103943660046125b9565b611150565b6102106103a73660046125e3565b61122a565b61031a6103ba36600461261e565b6112f6565b6101e86103cd36600461265a565b6001600160a01b039283165f908152600c60209081526040808320948352938152838220929094168152925290205460ff1690565b6104156104103660046126ce565b611342565b6040516101f4919061270c565b61031a61043036600461244f565b61134f565b61047761044336600461244f565b5f81815260208181526040808320546001600160401b03168352600982528083209383529290522080546001909101549091565b604080519283526020830191909152016101f4565b61021061049a3660046122bd565b611387565b6102106104ad36600461276e565b6114c3565b6104da6104c036600461244f565b5f602081905290815260409020546001600160401b031681565b6040516001600160401b0390911681526020016101f4565b61041561050036600461279c565b6114e9565b6102106105133660046127d6565b6114fe565b6101e8610526366004612808565b6001600160a01b039182165f908152600b6020908152604080832093909416825291909152205460ff1690565b61031a6105613660046123a1565b6115a2565b5f61057082611666565b92915050565b826105808161168a565b610588575f80fd5b5f84815260208181526040808320548151601f87018490048402810184019092528582528392606092839285926001600160401b039091169183916105eb9183918d908d90819084018382808284375f9201919091525092939250506118b79050565b90505b80515160208201511015610712578661ffff165f03610652578060400151965061061781611912565b94508460405160200161062a9190612834565b60405160208183030381529060405280519060200120925061064b81611933565b9350610704565b5f61065c82611912565b9050816040015161ffff168861ffff16141580610680575061067e868261194f565b155b15610702576106db8c878a8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250505060208801518d91506106d2908290612863565b8b51158a61196a565b8160400151975081602001519650809550858051906020012093506106ff82611933565b94505b505b61070d81611bc9565b6105ee565b5083511561076c5761076c8a85888c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c925061076391508290508f612863565b8951158861196a565b50505050505050505050565b846107828161168a565b61078a575f80fd5b5f86815260208181526040808320546001600160401b03168352600a8252808320898452909152908190209051849184916107c89089908990612876565b908152602001604051809103902091826107e3929190612901565b5084846040516107f4929190612876565b6040518091039020867f448bc014f1536726cf8d54ff3d6481ed3cbc683c2591ca204274009afa09b1a18787878760405161083294939291906129e2565b60405180910390a3505050505050565b5f82815260208181526040808320546001600160401b031683526007825280832085845282528083206001600160e01b0319851684529091528120546001600160a01b03168015610894579050610570565b5f61089e85610d64565b90506001600160a01b0381166108b8575f92505050610570565b6040516301ffc9a760e01b60248201525f9081906001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b1790525161090f9190612834565b5f60405180830381855afa9150503d805f8114610947576040519150601f19603f3d011682016040523d82523d5f602084013e61094c565b606091505b509150915081158061095f575060208151105b80610989575080601f8151811061097857610978612a13565b01602001516001600160f81b031916155b1561099a575f945050505050610570565b6040516001600160e01b0319871660248201526001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b179052516109f09190612834565b5f60405180830381855afa9150503d805f8114610a28576040519150601f19603f3d011682016040523d82523d5f602084013e610a2d565b606091505b509092509050811580610a41575060208151105b80610a6b575080601f81518110610a5a57610a5a612a13565b01602001516001600160f81b031916155b15610a7c575f945050505050610570565b509095945050505050565b5f82815260208181526040808320546001600160401b03168352600180835281842086855290925282206060915b848111610b975780851615801590610ae457505f8181526020839052604081208054610ae090612885565b9050115b15610b8f5780825f8381526020019081526020015f20808054610b0690612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610b3290612885565b8015610b7d5780601f10610b5457610100808354040283529160200191610b7d565b820191905f5260205f20905b815481529060010190602001808311610b6057829003601f168201915b50505050509050935093505050610bae565b60011b610ab5565b505f60405180602001604052805f81525092509250505b9250929050565b82610bbf8161168a565b610bc7575f80fd5b60408051808201825284815260208082018581525f888152808352848120546001600160401b031681526009835284812089825283528490209251835551600190920191909155815185815290810184905285917f1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e4691015b60405180910390a250505050565b82610c578161168a565b610c5f575f80fd5b5f84815260208181526040808320546001600160401b03168352600382528083208784529091529020610c93838583612901565b50837fe379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d75788484604051610c3f929190612a27565b80610cd08161168a565b610cd8575f80fd5b5f82815260208190526040812080546001600160401b031691610cfa83612a3a565b82546101009290920a6001600160401b038181021990931691831602179091555f84815260208181526040918290205491519190921681528492507fc6621ccb8f3f5a04bb6502154b2caf6adf5983fe76dfef1cfc9c42e3579db444910160405180910390a25050565b5f80610d7183603c6115a2565b905080515f03610d8357505f92915050565b610d8c81611cae565b9392505050565b5f83815260208181526040808320546001600160401b03168352600a825280832086845290915290819020905160609190610dd19085908590612876565b90815260200160405180910390208054610dea90612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610e1690612885565b8015610e615780601f10610e3857610100808354040283529160200191610e61565b820191905f5260205f20905b815481529060010190602001808311610e4457829003601f168201915b505050505090509392505050565b5f81815260208181526040808320546001600160401b03168352600482528083208484529091529020805460609190610ea790612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610ed390612885565b8015610f1e5780601f10610ef557610100808354040283529160200191610f1e565b820191905f5260205f20905b815481529060010190602001808311610f0157829003601f168201915b50505050509050919050565b83610f348161168a565b610f3c575f80fd5b83610f48600182612863565b1615610f52575f80fd5b5f85815260208181526040808320546001600160401b031683526001825280832088845282528083208784529091529020610f8e838583612901565b50604051849086907faa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe3905f90a35050505050565b5f81815260208181526040808320546001600160401b03168352600882528083208484529091529020805460609190610ea790612885565b826110048161168a565b61100c575f80fd5b5f84815260208181526040808320546001600160401b03168352600882528083208784529091529020611040838583612901565b50837fb7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f78484604051610c3f929190612a27565b8261107d8161168a565b611085575f80fd5b837f65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af75284846040516110b792919061240e565b60405180910390a2603c830361110e57837f52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd26110f284611cae565b6040516001600160a01b03909116815260200160405180910390a25b5f84815260208181526040808320546001600160401b0316835260028252808320878452825280832086845290915290206111498382612a5f565b5050505050565b6001600160a01b03821633036111bf5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084015b60405180910390fd5b335f818152600b602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6001600160a01b03821633036112825760405162461bcd60e51b815260206004820181905260248201527f53657474696e672064656c65676174652073746174757320666f722073656c6660448201526064016111b6565b335f818152600c6020908152604080832087845282528083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519384529286917ff0ddb3b04746704017f9aa8bd728fcc2c1d11675041205350018915f5e4750a0910160405180910390a4505050565b5f83815260208181526040808320546001600160401b03168352600582528083208684528252808320858452825280832061ffff851684529091529020805460609190610dea90612885565b6060610d8c5f8484611ccb565b5f81815260208181526040808320546001600160401b03168352600382528083208484529091529020805460609190610ea790612885565b826113918161168a565b611399575f80fd5b5f84815260208181526040808320546001600160401b031680845260048352818420888552909252822080549192916113d190612885565b80601f01602080910402602001604051908101604052809291908181526020018280546113fd90612885565b80156114485780601f1061141f57610100808354040283529160200191611448565b820191905f5260205f20905b81548152906001019060200180831161142b57829003601f168201915b505050506001600160401b0384165f9081526004602090815260408083208b8452909152902091925061147e9050858783612901565b50857f8f15ed4b723ef428f250961da8315675b507046737e19319fc1a4d81bfe87f858287876040516114b393929190612b1e565b60405180910390a2505050505050565b816114cd8161168a565b6114d5575f80fd5b6114e483603c61038185611e88565b505050565b60606114f6848484611ccb565b949350505050565b826115088161168a565b611510575f80fd5b5f84815260208181526040808320546001600160401b031683526007825280832087845282528083206001600160e01b031987168085529083529281902080546001600160a01b0319166001600160a01b038716908117909155905190815286917f7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa910160405180910390a350505050565b5f82815260208181526040808320546001600160401b0316835260028252808320858452825280832084845290915290208054606091906115e290612885565b80601f016020809104026020016040519081016040528092919081815260200182805461160e90612885565b80156116595780601f1061163057610100808354040283529160200191611659565b820191905f5260205f20905b81548152906001019060200180831161163c57829003601f168201915b5050505050905092915050565b5f6001600160e01b03198216631674750f60e21b1480610570575061057082611eb8565b5f336001600160a01b037f0000000000000000000000004fbf7b2f171336958be5d15ff762a5cff53635681614806116ea5750336001600160a01b037f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5616145b156116f757506001919050565b6040516302571be360e01b8152600481018390525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa15801561175c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117809190612b4d565b90507f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b0316816001600160a01b031603611845576040516331a9108f60e11b8152600481018490527f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b031690636352211e90602401602060405180830381865afa15801561181e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118429190612b4d565b90505b6001600160a01b03811633148061187e57506001600160a01b0381165f908152600b6020908152604080832033845290915290205460ff165b80610d8c57506001600160a01b0381165f908152600c60209081526040808320868452825280832033845290915290205460ff16610d8c565b6118ff6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261057081611bc9565b602081015181516060916105709161192a9082611edc565b84519190611f33565b60a081015160c08201516060916105709161192a908290612863565b5f81518351148015610d8c5750610d8c835f845f8751611fa7565b865160208801205f61197d878787611f33565b90508315611aa1576001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c168452909152902080546119c690612885565b159050611a23576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611a0783612b68565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091528120611a62916121f9565b897f03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a12078a8a604051611a94929190612b84565b60405180910390a261076c565b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c16845290915290208054611ae290612885565b90505f03611b40576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611b2483612ba9565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091529020611b808282612a5f565b50897f52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b8a8a84604051611bb593929190612bbf565b60405180910390a250505050505050505050565b60c08101516020820181905281515111611be05750565b5f611bf2825f01518360200151611edc565b8260200151611c019190612bed565b8251909150611c109082611fc9565b61ffff166040830152611c24600282612bed565b8251909150611c339082611fc9565b61ffff166060830152611c47600282612bed565b8251909150611c569082611fef565b63ffffffff166080830152611c6c600482612bed565b82519091505f90611c7d9083611fc9565b61ffff169050611c8e600283612bed565b60a084018190529150611ca18183612bed565b60c0909301929092525050565b5f8151601414611cbc575f80fd5b5060200151600160601b900490565b6060816001600160401b03811115611ce557611ce56124c6565b604051908082528060200260200182016040528015611d1857816020015b6060815260200190600190039081611d035790505b5090505f5b82811015611e80578415611dd8575f848483818110611d3e57611d3e612a13565b9050602002810190611d509190612c00565b611d5f91602491600491612c42565b611d6891612c69565b9050858114611dd65760405162461bcd60e51b815260206004820152603460248201527f6d756c746963616c6c3a20416c6c207265636f726473206d7573742068617665604482015273040c240dac2e8c6d0d2dcce40dcc2dacad0c2e6d60631b60648201526084016111b6565b505b5f8030868685818110611ded57611ded612a13565b9050602002810190611dff9190612c00565b604051611e0d929190612876565b5f60405180830381855af49150503d805f8114611e45576040519150601f19603f3d011682016040523d82523d5f602084013e611e4a565b606091505b509150915081611e58575f80fd5b80848481518110611e6b57611e6b612a13565b60209081029190910101525050600101611d1d565b509392505050565b604080516014808252818301909252606091602082018180368337505050600160601b9290920260208301525090565b5f6001600160e01b0319821663c869023360e01b1480610570575061057082612017565b5f815b83518110611eef57611eef612c86565b5f611efa858361203b565b60ff169050611f0a816001612bed565b611f149083612bed565b9150805f03611f235750611f29565b50611edf565b6114f68382612863565b8251606090611f428385612bed565b1115611f4c575f80fd5b5f826001600160401b03811115611f6557611f656124c6565b6040519080825280601f01601f191660200182016040528015611f8f576020820181803683370190505b50905060208082019086860101610a7c82828761205e565b5f611fb38484846120b3565b611fbe8787856120b3565b149695505050505050565b81515f90611fd8836002612bed565b1115611fe2575f80fd5b50016002015161ffff1690565b81515f90611ffe836004612bed565b1115612008575f80fd5b50016004015163ffffffff1690565b5f6001600160e01b0319821663691f343160e01b14806105705750610570826120d5565b5f82828151811061204e5761204e612a13565b016020015160f81c905092915050565b602081106120965781518352612075602084612bed565b9250612082602083612bed565b915061208f602082612863565b905061205e565b905182516020929092036101000a5f190180199091169116179052565b82515f906120c18385612bed565b11156120cb575f80fd5b5091016020012090565b5f6001600160e01b031982166304928c6760e21b14806105705750610570825f6001600160e01b0319821663547d2b4160e11b148061212457506001600160e01b03198216635c98042b60e01b145b806105705750610570825f6001600160e01b0319821663bc1c58d160e01b14806105705750610570825f6001600160e01b03198216631d9dabef60e11b148061217d57506001600160e01b031982166378e5bf0360e11b145b806105705750610570825f6001600160e01b03198216631101d5ab60e11b14806105705750610570825f6001600160e01b0319821663d700ff3360e01b14806105705750610570825f6001600160e01b03198216634fbf043360e01b148061057057506301ffc9a760e01b6001600160e01b0319831614610570565b50805461220590612885565b5f825580601f10612214575050565b601f0160209004905f5260205f20908101906122309190612233565b50565b5b80821115612247575f8155600101612234565b5090565b80356001600160e01b031981168114612262575f80fd5b919050565b5f60208284031215612277575f80fd5b610d8c8261224b565b5f8083601f840112612290575f80fd5b5081356001600160401b038111156122a6575f80fd5b602083019150836020828501011115610bae575f80fd5b5f805f604084860312156122cf575f80fd5b8335925060208401356001600160401b038111156122eb575f80fd5b6122f786828701612280565b9497909650939450505050565b5f805f805f60608688031215612318575f80fd5b8535945060208601356001600160401b0380821115612335575f80fd5b61234189838a01612280565b90965094506040880135915080821115612359575f80fd5b5061236688828901612280565b969995985093965092949392505050565b5f8060408385031215612388575f80fd5b823591506123986020840161224b565b90509250929050565b5f80604083850312156123b2575f80fd5b50508035926020909101359150565b5f5b838110156123db5781810151838201526020016123c3565b50505f910152565b5f81518084526123fa8160208601602086016123c1565b601f01601f19169290920160200192915050565b828152604060208201525f6114f660408301846123e3565b5f805f60608486031215612438575f80fd5b505081359360208301359350604090920135919050565b5f6020828403121561245f575f80fd5b5035919050565b602081525f610d8c60208301846123e3565b5f805f806060858703121561248b575f80fd5b843593506020850135925060408501356001600160401b038111156124ae575f80fd5b6124ba87828801612280565b95989497509550505050565b634e487b7160e01b5f52604160045260245ffd5b5f805f606084860312156124ec575f80fd5b833592506020840135915060408401356001600160401b0380821115612510575f80fd5b818601915086601f830112612523575f80fd5b813581811115612535576125356124c6565b604051601f8201601f19908116603f0116810190838211818310171561255d5761255d6124c6565b81604052828152896020848701011115612575575f80fd5b826020860160208301375f6020848301015280955050505050509250925092565b6001600160a01b0381168114612230575f80fd5b80358015158114612262575f80fd5b5f80604083850312156125ca575f80fd5b82356125d581612596565b9150612398602084016125aa565b5f805f606084860312156125f5575f80fd5b83359250602084013561260781612596565b9150612615604085016125aa565b90509250925092565b5f805f60608486031215612630575f80fd5b8335925060208401359150604084013561ffff8116811461264f575f80fd5b809150509250925092565b5f805f6060848603121561266c575f80fd5b833561267781612596565b925060208401359150604084013561264f81612596565b5f8083601f84011261269e575f80fd5b5081356001600160401b038111156126b4575f80fd5b6020830191508360208260051b8501011115610bae575f80fd5b5f80602083850312156126df575f80fd5b82356001600160401b038111156126f4575f80fd5b6127008582860161268e565b90969095509350505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b8281101561276157603f1988860301845261274f8583516123e3565b94509285019290850190600101612733565b5092979650505050505050565b5f806040838503121561277f575f80fd5b82359150602083013561279181612596565b809150509250929050565b5f805f604084860312156127ae575f80fd5b8335925060208401356001600160401b038111156127ca575f80fd5b6122f78682870161268e565b5f805f606084860312156127e8575f80fd5b833592506127f86020850161224b565b9150604084013561264f81612596565b5f8060408385031215612819575f80fd5b823561282481612596565b9150602083013561279181612596565b5f82516128458184602087016123c1565b9190910192915050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156105705761057061284f565b818382375f9101908152919050565b600181811c9082168061289957607f821691505b6020821081036128b757634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156114e457805f5260205f20601f840160051c810160208510156128e25750805b601f840160051c820191505b81811015611149575f81556001016128ee565b6001600160401b03831115612918576129186124c6565b61292c836129268354612885565b836128bd565b5f601f84116001811461295d575f85156129465750838201355b5f19600387901b1c1916600186901b178355611149565b5f83815260208120601f198716915b8281101561298c578685013582556020948501946001909201910161296c565b50868210156129a8575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b604081525f6129f56040830186886129ba565b8281036020840152612a088185876129ba565b979650505050505050565b634e487b7160e01b5f52603260045260245ffd5b602081525f6114f66020830184866129ba565b5f6001600160401b03808316818103612a5557612a5561284f565b6001019392505050565b81516001600160401b03811115612a7857612a786124c6565b612a8c81612a868454612885565b846128bd565b602080601f831160018114612abf575f8415612aa85750858301515b5f19600386901b1c1916600185901b178555612b16565b5f85815260208120601f198616915b82811015612aed57888601518255948401946001909101908401612ace565b5085821015612b0a57878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b604081525f612b3060408301866123e3565b8281036020840152612b438185876129ba565b9695505050505050565b5f60208284031215612b5d575f80fd5b8151610d8c81612596565b5f61ffff821680612b7b57612b7b61284f565b5f190192915050565b604081525f612b9660408301856123e3565b905061ffff831660208301529392505050565b5f61ffff808316818103612a5557612a5561284f565b606081525f612bd160608301866123e3565b61ffff851660208401528281036040840152612b4381856123e3565b808201808211156105705761057061284f565b5f808335601e19843603018112612c15575f80fd5b8301803591506001600160401b03821115612c2e575f80fd5b602001915036819003821315610bae575f80fd5b5f8085851115612c50575f80fd5b83861115612c5c575f80fd5b5050820193919092039150565b80356020831015610570575f19602084900360031b1b1692915050565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{}},"0xf3810eb7d64d1c11ae12727d957c6202b24492f5":{"nonce":1,"balance":"0x0","code":"0x6080604052348015600e575f80fd5b50600436106030575f3560e01c806350d25bcd146034578063e5c19b2d146048575b5f80fd5b5f5460405190815260200160405180910390f35b605760533660046059565b5f55565b005b5f602082840312156068575f80fd5b503591905056fea164736f6c6343000818000a","storage":{"0x0":"0x5f5e100"}},"0xf670681605efc4efc804f5a9b97ee89520473d56":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c80638da5cb5b11610088578063c66485b211610063578063c66485b2146101da578063da8c229e146101ed578063e0dba60f1461021f578063f2fde38b14610232575f80fd5b80638da5cb5b146101a4578063bffbe61c146101b4578063c47f0027146101c7575f80fd5b806365669631116100c35780636566963114610161578063715018a6146101745780637a806d6b1461017e578063828eab0e14610191575f80fd5b80630f5a5466146100e95780631e83409a1461010f5780633f15457f14610122575b5f80fd5b6100fc6100f7366004610958565b610245565b6040519081526020015b60405180910390f35b6100fc61011d36600461098f565b610258565b6101497f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a981565b6040516001600160a01b039091168152602001610106565b6100fc61016f3660046109aa565b610279565b61017c610526565b005b6100fc61018c366004610a8f565b610539565b600254610149906001600160a01b031681565b5f546001600160a01b0316610149565b6100fc6101c236600461098f565b6105ae565b6100fc6101d5366004610b00565b610608565b61017c6101e836600461098f565b610624565b61020f6101fb36600461098f565b60016020525f908152604090205460ff1681565b6040519015158152602001610106565b61017c61022d366004610b47565b6106e4565b61017c61024036600461098f565b61074a565b5f610251338484610279565b9392505050565b6002545f9061027390339084906001600160a01b0316610279565b92915050565b5f836001600160a01b0381163314806102a05750335f9081526001602052604090205460ff165b80610334575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063e985e9c590604401602060405180830381865afa158015610310573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103349190610b73565b806103435750610343816107c3565b6103e05760405162461bcd60e51b815260206004820152605b60248201527f526576657273655265676973747261723a2043616c6c6572206973206e6f742060448201527f6120636f6e74726f6c6c6572206f7220617574686f726973656420627920616460648201527f6472657373206f7220746865206164647265737320697473656c660000000000608482015260a4015b60405180910390fd5b5f6103ea8661083a565b604080517f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e2602080830191909152818301849052825180830384018152606090920192839052815191012091925081906001600160a01b038916907f6ada868dd3058cf77a48a74489fd7963688e5464b2b0fa957ace976243270e92905f90a36040516305ef2c7f60e41b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26004820152602481018390526001600160a01b03878116604483015286811660648301525f60848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610505575f80fd5b505af1158015610517573d5f803e3d5ffd5b50929998505050505050505050565b61052e61089c565b6105375f6108f5565b565b5f80610546868686610279565b604051637737221360e01b81529091506001600160a01b038516906377372213906105779084908790600401610b8e565b5f604051808303815f87803b15801561058e575f80fd5b505af11580156105a0573d5f803e3d5ffd5b509298975050505050505050565b5f7f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26105d98361083a565b604080516020810193909352820152606001604051602081830303815290604052805190602001209050919050565b6002545f9061027390339081906001600160a01b031685610539565b61062c61089c565b6001600160a01b03811661069b5760405162461bcd60e51b815260206004820152603060248201527f526576657273655265676973747261723a205265736f6c76657220616464726560448201526f07373206d757374206e6f7420626520360841b60648201526084016103d7565b600280546001600160a01b0319166001600160a01b0383169081179091556040517feae17a84d9eb83d8c8eb317f9e7d64857bc363fa51674d996c023f4340c577cf905f90a250565b6106ec61089c565b6001600160a01b0382165f81815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b61075261089c565b6001600160a01b0381166107b75760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016103d7565b6107c0816108f5565b50565b5f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801561081e575060408051601f3d908101601f1916820190925261081b91810190610be2565b60015b61082957505f919050565b6001600160a01b0316331492915050565b5f60285b8015610891575f19016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a81536010909204915f19016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a815360108304925061083e565b505060285f20919050565b5f546001600160a01b031633146105375760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016103d7565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146107c0575f80fd5b5f8060408385031215610969575f80fd5b823561097481610944565b9150602083013561098481610944565b809150509250929050565b5f6020828403121561099f575f80fd5b813561025181610944565b5f805f606084860312156109bc575f80fd5b83356109c781610944565b925060208401356109d781610944565b915060408401356109e781610944565b809150509250925092565b634e487b7160e01b5f52604160045260245ffd5b5f82601f830112610a15575f80fd5b813567ffffffffffffffff80821115610a3057610a306109f2565b604051601f8301601f19908116603f01168101908282118183101715610a5857610a586109f2565b81604052838152866020858801011115610a70575f80fd5b836020870160208301375f602085830101528094505050505092915050565b5f805f8060808587031215610aa2575f80fd5b8435610aad81610944565b93506020850135610abd81610944565b92506040850135610acd81610944565b9150606085013567ffffffffffffffff811115610ae8575f80fd5b610af487828801610a06565b91505092959194509250565b5f60208284031215610b10575f80fd5b813567ffffffffffffffff811115610b26575f80fd5b610b3284828501610a06565b949350505050565b80151581146107c0575f80fd5b5f8060408385031215610b58575f80fd5b8235610b6381610944565b9150602083013561098481610b3a565b5f60208284031215610b83575f80fd5b815161025181610b3a565b8281525f60206040602084015283518060408501525f5b81811015610bc157858101830151858201606001528201610ba5565b505f606082860101526060601f19601f830116850101925050509392505050565b5f60208284031215610bf2575f80fd5b81516102518161094456fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2":"0x9df67c91f1bfcb4d966cf764e9218685e7c59e8a","0x1f5b7623941da966ad7183d9cbb6db584f6d4add26919ac31a2d3f19a164e7e1":"0x1","0xbe5de2149ce76ca5934fa63455cd675fd52e2d30f3328985d298a627ca0f05e9":"0x1"}},"0xf8c26340c1eaea6c7ff1760b25005e1306953572":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061010b5760003560e01c80638c87a4ea116100a2578063b87abc1111610071578063b87abc1114610244578063c597407314610257578063ce92b33e1461026a578063e837ae741461027d578063ec129eea146102905761010b565b80638c87a4ea146101ea5780638f69c188146101fd578063a3557e6c14610210578063b85afd28146102235761010b565b806347c81699116100de57806347c8169914610181578063672b9f81146101945780636ccbae5f146101b55780637b103999146101d55761010b565b80631bd8cc1a146101105780631be5e7ed146101395780632c3d376d14610159578063310bd74b1461016c575b600080fd5b61012361011e3660046117b4565b6102a3565b6040516101309190611eee565b60405180910390f35b61014c610147366004611aec565b6104f2565b6040516101309190611fd6565b61014c610167366004611b21565b610673565b61017f61017a366004611b21565b610714565b005b61017f61018f3660046119b5565b6107c0565b6101a76101a2366004611b94565b6108ef565b604051610130929190611fe7565b6101c86101c3366004611b21565b6109c3565b604051610130919061204c565b6101dd6109d5565b6040516101309190611ea9565b6101236101f836600461191d565b6109e5565b61017f61020b366004611878565b610a74565b61017f61021e366004611878565b610af0565b610236610231366004611951565b610b1b565b604051610130929190611eff565b61017f610252366004611b3f565b610ca9565b61017f610265366004611a39565b610d43565b61017f610278366004611808565b610df9565b61017f61028b366004611808565b610e97565b61017f61029e366004611808565b610f4e565b60015460405163b3f9e4cb60e01b815260609183916001600160a01b039091169063b3f9e4cb906102d890849060040161204c565b60206040518083038186803b1580156102f057600080fd5b505afa158015610304573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610328919081019061178e565b6001600160a01b0316306001600160a01b0316146103615760405162461bcd60e51b81526004016103589061201c565b60405180910390fd5b604080518581526020808702820101909152849060609082801561039957816020015b60608152602001906001900390816103845790505b506000868152600360205260408120549192505b838110156104e557600087815260026020908152604080832085845290915290208989838181106103da57fe5b602002820190508035601e19368490030181126103f657600080fd5b909101602081019150356001600160401b0381111561041457600080fd5b3681900382131561042457600080fd5b604051610432929190611e70565b9081526040805160209281900383018120805460026001821615610100026000190190911604601f810185900485028301850190935282825290929091908301828280156104c15780601f10610496576101008083540402835291602001916104c1565b820191906000526020600020905b8154815290600101906020018083116104a457829003601f168201915b50505050508382815181106104d257fe5b60209081029190910101526001016103ad565b5090979650505050505050565b60015460405163b3f9e4cb60e01b815260609183916001600160a01b039091169063b3f9e4cb9061052790849060040161204c565b60206040518083038186803b15801561053f57600080fd5b505afa158015610553573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610577919081019061178e565b6001600160a01b0316306001600160a01b0316146105a75760405162461bcd60e51b81526004016103589061201c565b6000838152600260209081526040808320600383528184205484529091529081902090516105d6908690611e7d565b9081526040805160209281900383018120805460026001821615610100026000190190911604601f810185900485028301850190935282825290929091908301828280156106655780601f1061063a57610100808354040283529160200191610665565b820191906000526020600020905b81548152906001019060200180831161064857829003601f168201915b505050505091505092915050565b60008181526004602090815260409182902080548351601f60026000196101006001861615020190931692909204918201849004840281018401909452808452606093928301828280156107085780601f106106dd57610100808354040283529160200191610708565b820191906000526020600020905b8154815290600101906020018083116106eb57829003601f168201915b50505050509050919050565b60015460405163430c208160e01b815282916001600160a01b03169063430c2081906107469033908590600401611ec5565b60206040518083038186803b15801561075e57600080fd5b505afa158015610772573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506107969190810190611997565b6107b25760405162461bcd60e51b81526004016103589061202c565b6107bc4283610fec565b5050565b60015460405163430c208160e01b815282916001600160a01b03169063430c2081906107f29033908590600401611ec5565b60206040518083038186803b15801561080a57600080fd5b505afa15801561081e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506108429190810190611997565b61085e5760405162461bcd60e51b81526004016103589061202c565b6108e7600360008481526020019081526020016000205487878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061108e915050565b505050505050565b60015460405163b3f9e4cb60e01b8152606091829184916001600160a01b03169063b3f9e4cb9061092490849060040161204c565b60206040518083038186803b15801561093c57600080fd5b505afa158015610950573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610974919081019061178e565b6001600160a01b0316306001600160a01b0316146109a45760405162461bcd60e51b81526004016103589061201c565b6109ad85610673565b92506109b983856104f2565b9150509250929050565b60009081526020819052604090205490565b6001546001600160a01b03165b90565b6060600082519050606081604051908082528060200260200182016040528015610a2357816020015b6060815260200190600190039081610a0e5790505b50905060005b82811015610a6c57610a4d858281518110610a4057fe5b6020026020010151610673565b828281518110610a5957fe5b6020908102919091010152600101610a29565b509392505050565b610acf63ce92b33e60e01b858585604051602401610a9493929190611f24565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092178252519020838361129f565b600082815260036020526040902054610aea908585856113c3565b50505050565b610b1063ec129eea60e01b858585604051602401610a9493929190611f24565b610aea84848461140a565b60015460405163b3f9e4cb60e01b8152606091829184916001600160a01b03169063b3f9e4cb90610b5090849060040161204c565b60206040518083038186803b158015610b6857600080fd5b505afa158015610b7c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610ba0919081019061178e565b6001600160a01b0316306001600160a01b031614610bd05760405162461bcd60e51b81526004016103589061201c565b8451604080518281526020808402820101909152818015610c0557816020015b6060815260200190600190039081610bf05790505b50935080604051908082528060200260200182016040528015610c3c57816020015b6060815260200190600190039081610c275790505b50925060005b81811015610c9f57610c67878281518110610c5957fe5b6020026020010151876108ef565b8651879084908110610c7557fe5b60200260200101868481518110610c8857fe5b602090810291909101019190915252600101610c42565b5050509250929050565b610d3463310bd74b60e01b84604051602401610cc5919061204c565b60408051601f19818403018152918152602080830180516001600160e01b03166001600160e01b031990951694909417845291519092208251601f8601839004830281018301909352848352918691869086908190840183828082843760009201919091525061129f92505050565b610d3e4284610fec565b505050565b610d676347c8169960e01b8888888888604051602401610cc5959493929190611f96565b610df0600360008581526020019081526020016000205488888080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8c018190048102820181019092528a815292508a915089908190840183828082843760009201919091525089925061108e915050565b50505050505050565b60015460405163430c208160e01b815282916001600160a01b03169063430c208190610e2b9033908590600401611ec5565b60206040518083038186803b158015610e4357600080fd5b505afa158015610e57573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610e7b9190810190611997565b610acf5760405162461bcd60e51b81526004016103589061202c565b6005546040516355138f0d60e11b81526001600160a01b039091169063aa271e1a90610ec7903390600401611eb7565b60206040518083038186803b158015610edf57600080fd5b505afa158015610ef3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610f179190810190611997565b610f335760405162461bcd60e51b81526004016103589061203c565b600081815260036020526040902054610d3e908484846113c3565b60015460405163430c208160e01b815282916001600160a01b03169063430c208190610f809033908590600401611ec5565b60206040518083038186803b158015610f9857600080fd5b505afa158015610fac573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610fd09190810190611997565b610b105760405162461bcd60e51b81526004016103589061202c565b600081815260036020526040808220849055600154905163538361a760e01b81526001600160a01b039091169163538361a79161102d91859160040161205a565b600060405180830381600087803b15801561104757600080fd5b505af115801561105b573d6000803e3d6000fd5b50506040518392507f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9150600090a25050565b825160208085019190912060008381526002835260408082208883529093528281209251919290916110c1908790611e7d565b908152604051602091819003919091018120546001805463538361a760e01b84526002918316156101000260001901909216041592506001600160a01b03169063538361a7906111179086908690600401612075565b600060405180830381600087803b15801561113157600080fd5b505af1158015611145573d6000803e3d6000fd5b50505060008481526002602090815260408083208a8452909152908190209051869250611173908890611e7d565b90815260200160405180910390209080519060200190611194929190611521565b50600082815260046020526040902054600260001961010060018416150201909116046111dc57600082815260046020908152604090912086516111da92880190611521565b505b801561123157846040516111f09190611e7d565b6040518091039020837f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f86876040516112289190611fd6565b60405180910390a35b8360405161123f9190611e7d565b6040518091039020856040516112559190611e7d565b6040518091039020847f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d92888860405161128f929190611fe7565b60405180910390a4505050505050565b6000828152602081815260408083205490519092916112f59185916112e9916112ce918a913091899101611e39565b60405160208183030381529060405280519060200120611414565b9063ffffffff61144416565b90506001600160a01b0381161580159061138c575060015460405163430c208160e01b81526001600160a01b039091169063430c20819061133c9084908890600401611ee0565b60206040518083038186803b15801561135457600080fd5b505afa158015611368573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061138c9190810190611997565b6113a85760405162461bcd60e51b81526004016103589061200c565b50505060009081526020819052604090208054600101905550565b825160005b818110156108e757611402868683815181106113e057fe5b60200260200101518684815181106113f457fe5b60200260200101518661108e565b6001016113c8565b610f334282610fec565b6000816040516020016114279190611e89565b604051602081830303815290604052805190602001209050919050565b600081516041146114575750600061151b565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a082111561149d576000935050505061151b565b8060ff16601b141580156114b557508060ff16601c14155b156114c6576000935050505061151b565b600186828585604051600081526020016040526040516114e99493929190611f58565b6020604051602081039080840390855afa15801561150b573d6000803e3d6000fd5b5050506020604051035193505050505b92915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061156257805160ff191683800117855561158f565b8280016001018555821561158f579182015b8281111561158f578251825591602001919060010190611574565b5061159b92915061159f565b5090565b6109e291905b8082111561159b57600081556001016115a5565b805161151b816121a4565b60008083601f8401126115d657600080fd5b5081356001600160401b038111156115ed57600080fd5b60208301915083602082028301111561160557600080fd5b9250929050565b600082601f83011261161d57600080fd5b813561163061162b826120a9565b612083565b81815260209384019390925082018360005b8381101561166e57813586016116588882611734565b8452506020928301929190910190600101611642565b5050505092915050565b600082601f83011261168957600080fd5b813561169761162b826120a9565b915081818352602084019350602081019050838560208402820111156116bc57600080fd5b60005b8381101561166e57816116d28882611783565b84525060209283019291909101906001016116bf565b805161151b816121bb565b60008083601f84011261170557600080fd5b5081356001600160401b0381111561171c57600080fd5b60208301915083600182028301111561160557600080fd5b600082601f83011261174557600080fd5b813561175361162b826120c9565b9150808252602083016020830185838301111561176f57600080fd5b61177a83828461214b565b50505092915050565b803561151b816121c4565b6000602082840312156117a057600080fd5b60006117ac84846115b9565b949350505050565b6000806000604084860312156117c957600080fd5b83356001600160401b038111156117df57600080fd5b6117eb868287016115c4565b935093505060206117fe86828701611783565b9150509250925092565b60008060006060848603121561181d57600080fd5b83356001600160401b0381111561183357600080fd5b61183f8682870161160c565b93505060208401356001600160401b0381111561185b57600080fd5b6118678682870161160c565b92505060406117fe86828701611783565b6000806000806080858703121561188e57600080fd5b84356001600160401b038111156118a457600080fd5b6118b08782880161160c565b94505060208501356001600160401b038111156118cc57600080fd5b6118d88782880161160c565b93505060406118e987828801611783565b92505060608501356001600160401b0381111561190557600080fd5b61191187828801611734565b91505092959194509250565b60006020828403121561192f57600080fd5b81356001600160401b0381111561194557600080fd5b6117ac84828501611678565b6000806040838503121561196457600080fd5b82356001600160401b0381111561197a57600080fd5b61198685828601611678565b92505060206109b985828601611783565b6000602082840312156119a957600080fd5b60006117ac84846116e8565b6000806000806000606086880312156119cd57600080fd5b85356001600160401b038111156119e357600080fd5b6119ef888289016116f3565b955095505060208601356001600160401b03811115611a0d57600080fd5b611a19888289016116f3565b93509350506040611a2c88828901611783565b9150509295509295909350565b60008060008060008060006080888a031215611a5457600080fd5b87356001600160401b03811115611a6a57600080fd5b611a768a828b016116f3565b975097505060208801356001600160401b03811115611a9457600080fd5b611aa08a828b016116f3565b95509550506040611ab38a828b01611783565b93505060608801356001600160401b03811115611acf57600080fd5b611adb8a828b016116f3565b925092505092959891949750929550565b60008060408385031215611aff57600080fd5b82356001600160401b03811115611b1557600080fd5b61198685828601611734565b600060208284031215611b3357600080fd5b60006117ac8484611783565b600080600060408486031215611b5457600080fd5b6000611b608686611783565b93505060208401356001600160401b03811115611b7c57600080fd5b611b88868287016116f3565b92509250509250925092565b60008060408385031215611ba757600080fd5b60006119868585611783565b6000611bbf8383611ccb565b9392505050565b611bcf8161212a565b82525050565b611bcf81612108565b611bcf611bea82612108565b612183565b6000611bfa826120f6565b611c0481856120fa565b935083602082028501611c16856120f0565b8060005b85811015611c505784840389528151611c338582611bb3565b9450611c3e836120f0565b60209a909a0199925050600101611c1a565b5091979650505050505050565b611bcf816109e2565b611bcf611c72826109e2565b6109e2565b611bcf81612135565b6000611c8c83856120fa565b9350611c9983858461214b565b611ca283612194565b9093019392505050565b6000611cb88385612103565b9350611cc583858461214b565b50500190565b6000611cd6826120f6565b611ce081856120fa565b9350611cf0818560208601612157565b611ca281612194565b6000611d04826120f6565b611d0e8185612103565b9350611d1e818560208601612157565b9290920192915050565b6000611d35601c83612103565b7f19457468657265756d205369676e6564204d6573736167653a0a3332000000008152601c0192915050565b6000611d6e6011836120fa565b70494e56414c49445f5349474e415455524560781b815260200192915050565b6000611d9b601d836120fa565b7f5245534f4c5645525f44455441434845445f46524f4d5f444f4d41494e000000815260200192915050565b6000611dd4601f836120fa565b7f53454e4445525f49535f4e4f545f415050524f5645445f4f525f4f574e455200815260200192915050565b6000611e0d6014836120fa565b7329a2a72222a92fa4a9afa727aa2fa6a4a72a22a960611b815260200192915050565b611bcf81612124565b6000611e458286611c66565b602082019150611e558285611bde565b601482019150611e658284611c66565b506020019392505050565b60006117ac828486611cac565b6000611bbf8284611cf9565b6000611e9482611d28565b9150611ea08284611c66565b50602001919050565b6020810161151b8284611bd5565b6020810161151b8284611bc6565b60408101611ed38285611bc6565b611bbf6020830184611c5d565b60408101611ed38285611bd5565b60208082528101611bbf8184611bef565b60408082528101611f108185611bef565b905081810360208301526117ac8184611bef565b60608082528101611f358186611bef565b90508181036020830152611f498185611bef565b90506117ac6040830184611c5d565b60808101611f668287611c5d565b611f736020830186611e30565b611f806040830185611c5d565b611f8d6060830184611c5d565b95945050505050565b60608082528101611fa8818789611c80565b90508181036020830152611fbd818587611c80565b9050611fcc6040830184611c5d565b9695505050505050565b60208082528101611bbf8184611ccb565b60408082528101611ff88185611ccb565b905081810360208301526117ac8184611ccb565b6020808252810161151b81611d61565b6020808252810161151b81611d8e565b6020808252810161151b81611dc7565b6020808252810161151b81611e00565b6020810161151b8284611c5d565b604081016120688285611c5d565b611bbf6020830184611c77565b60408101611ed38285611c5d565b6040518181016001600160401b03811182821017156120a157600080fd5b604052919050565b60006001600160401b038211156120bf57600080fd5b5060209081020190565b60006001600160401b038211156120df57600080fd5b506020601f91909101601f19160190565b60200190565b5190565b90815260200190565b919050565b600061151b82612118565b151590565b6001600160a01b031690565b60ff1690565b600061151b82612140565b600061151b826109e2565b600061151b82612108565b82818337506000910152565b60005b8381101561217257818101518382015260200161215a565b83811115610aea5750506000910152565b600061151b82600061151b8261219e565b601f01601f191690565b60601b90565b6121ad81612108565b81146121b857600080fd5b50565b6121ad81612113565b6121ad816109e256fea365627a7a723158207a1d8dfd286d14fcafd1812a4c44813691ac746a5a23fa711ac5551c9509654d6c6578706572696d656e74616cf564736f6c634300050c0040","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x5":"0x4a3c194eb88966178bfdd81744dddafed611b830"}},"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa":{"nonce":93,"balance":"0x35aac60bbae01d424b","code":"0x","storage":{}}},"best_block_number":"0x5d"} \ No newline at end of file +{"block":{"number":"0x5d","coinbase":"0x0000000000000000000000000000000000000000","timestamp":"0x664cd4c7","gas_limit":"0x6691b7","basefee":"0x1b818","difficulty":"0x0","prevrandao":"0x0000000000000000000000000000000000000000000000000000000000000000","blob_excess_gas_and_price":{"excess_blob_gas":0,"blob_gasprice":1}},"accounts":{"0x0000000000000000000000000000000000000000":{"nonce":0,"balance":"0xc968d22370860","code":"0x","storage":{}},"0x00e39a5004299871ab3b00fed5a39a715f181d02":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x66":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x67":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xd178b720229c39de617846f84cf9c8d32a63a23d","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0x0458f653495fb8d9bd0e7df468c2bf76d26c7bd9":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f7e83aee1461002d575b5f80fd5b61004061003b3660046105ba565b610054565b604051901515815260200160405180910390f35b5f601482146100a95760405162461bcd60e51b815260206004820152601860248201527f496e76616c696420736861312068617368206c656e6774680000000000000000604482015260640160405180910390fd5b5f6100ec5f85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101599050565b6bffffffffffffffffffffffff191690505f61013c87878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061018a92505050565b6bffffffffffffffffffffffff1916919091149695505050505050565b81515f90610168836014610621565b1115610172575f80fd5b5001602001516bffffffffffffffffffffffff191690565b5f6040518251602084019350604067ffffffffffffffc0600183011601600982820310600181036101bc576040820191505b50776745230100efcdab890098badcfe001032547600c3d2e1f061020d565b5f8383101561020657508082015192829003926020841015610206575f1960208590036101000a0119165b9392505050565b5f5b82811015610514576102228482896101db565b85526102328460208301896101db565b60208601526040818503106001810361024e5760808286038701535b506040830381146001810361026b57602086018051600887021790525b5060405b60808110156102f357858101603f19810151603719820151601f19830151600b198401516002911891909218189081027ffffffffefffffffefffffffefffffffefffffffefffffffefffffffefffffffe1663800000009091047c010000000100000001000000010000000100000001000000010000000116179052600c0161026f565b5060805b61014081101561037c57858101607f19810151606f19820151603f198301516017198401516004911891909218189081027ffffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffc1663400000009091047c0300000003000000030000000300000003000000030000000300000003161790526018016102f7565b50815f805f5b60508110156104ea576014810480156103b257600181146103d957600281146103fe576003811461042857610449565b600160281b8504600160501b86048118600160781b870416189350635a8279999250610449565b600160281b8504600160781b8604600160501b870418189350636ed9eba19250610449565b600160501b8504600160781b8604818117600160281b8804169116179350638f1bbcdc9250610449565b600160281b8504600160781b8604600160501b87041818935063ca62c1d692505b50601f600160bb1b8504168063ffffffe06001609b1b87041617905080840190508063ffffffff8616019050808301905080600160e01b600484028c015104019050600160a01b8102600160281b860417945050600160501b633fffffff600160521b86041663c00000006604000000000000870416170277ffffffff00ffffffff000000000000ffffffff00ffffffff8516179350600181019050610382565b5050509190910177ffffffff00ffffffff00ffffffff00ffffffff00ffffffff169060400161020f565b50600160601b63ffffffff821667ffffffff000000006101008404166bffffffff00000000000000006201000085041663ffffffff60601b630100000086041663ffffffff60801b6401000000008704161717171702945050505050919050565b5f8083601f840112610585575f80fd5b50813567ffffffffffffffff81111561059c575f80fd5b6020830191508360208285010111156105b3575f80fd5b9250929050565b5f805f80604085870312156105cd575f80fd5b843567ffffffffffffffff808211156105e4575f80fd5b6105f088838901610575565b90965094506020870135915080821115610608575f80fd5b5061061587828801610575565b95989497509550505050565b8082018082111561064057634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x06e2822b8856749ed179c77140dbc5f5a27410a4":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063de8f50a11461002d575b5f80fd5b61004061003b36600461051c565b610054565b604051901515815260200160405180910390f35b5f6060805f61009c60048b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506102e79050565b60ff1690508015610166576100f060058261ffff168c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b925061015f6101008260056105c3565b61ffff908116906005906101169085168d6105e5565b61012091906105e5565b8c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b915061021d565b6101a960058b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250929392505061038b9050565b90506101f460078261ffff168c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b925061021a6102048260076105c3565b61ffff908116906007906101169085168d6105e5565b91505b5f606061026084868a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152506103b192505050565b90925090508180156102d757506102856020825161027e91906105e5565b82906103cb565b60028b8b6040516102979291906105f8565b602060405180830381855afa1580156102b2573d5f803e3d5ffd5b5050506040513d601f19601f820116820180604052508101906102d59190610607565b145b9c9b505050505050505050505050565b5f8282815181106102fa576102fa61061e565b016020015160f81c90505b92915050565b825160609061031a8385610632565b1115610324575f80fd5b5f8267ffffffffffffffff81111561033e5761033e610645565b6040519080825280601f01601f191660200182016040528015610368576020820181803683370190505b509050602080820190868601016103808282876103ed565b509095945050505050565b81515f9061039a836002610632565b11156103a4575f80fd5b50016002015161ffff1690565b5f60606103bf838587610442565b91509150935093915050565b81515f906103da836020610632565b11156103e4575f80fd5b50016020015190565b602081106104255781518352610404602084610632565b9250610411602083610632565b915061041e6020826105e5565b90506103ed565b905182516020929092036101000a5f190180199091169116179052565b5f60605f85518551855188888860405160200161046496959493929190610686565b6040516020818303038152906040529050835167ffffffffffffffff81111561048f5761048f610645565b6040519080825280601f01601f1916602001820160405280156104b9576020820181803683370190505b50915083516020830182516020840160055afa925050935093915050565b5f8083601f8401126104e7575f80fd5b50813567ffffffffffffffff8111156104fe575f80fd5b602083019150836020828501011115610515575f80fd5b9250929050565b5f805f805f8060608789031215610531575f80fd5b863567ffffffffffffffff80821115610548575f80fd5b6105548a838b016104d7565b9098509650602089013591508082111561056c575f80fd5b6105788a838b016104d7565b90965094506040890135915080821115610590575f80fd5b5061059d89828a016104d7565b979a9699509497509295939492505050565b634e487b7160e01b5f52601160045260245ffd5b61ffff8181168382160190808211156105de576105de6105af565b5092915050565b81810381811115610305576103056105af565b818382375f9101908152919050565b5f60208284031215610617575f80fd5b5051919050565b634e487b7160e01b5f52603260045260245ffd5b80820180821115610305576103056105af565b634e487b7160e01b5f52604160045260245ffd5b5f81515f5b81811015610678576020818501810151868301520161065e565b505f93019283525090919050565b8681528560208201528460408201525f6106b56106af6106a96060850188610659565b86610659565b84610659565b9897505050505050505056fea164736f6c6343000818000a","storage":{}},"0x0712e8e819712c3bfdb098ce51c87a4ac0296fd8":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x0930ffb2c192b0c9a9dd2372cf7f2845ef39cbb6":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x65":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x66":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xbe92182cab5b84fd18b34881a0c32771e84f5b8b","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c8121905":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x107733fed96c4cd390c944a31f5425a7fb98ae5e":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x65":"0x556e73746f707061626c6520446f6d61696e7300000000000000000000000026","0x66":"0x5544000000000000000000000000000000000000000000000000000000000004","0x133":"0x68747470733a2f2f6578616d706c652e636f6d2f000000000000000000000028","0x134":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x9c74364589a7bce52d7a232f90c98b979577d9ab711dbe7e9fb985471178bff":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf29a433ca043c2d5f13825944af9d019209f338df87172c6b8012dce3044881":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf319a2ef598111826b455194189a27454a0286226eb066e1116f605e0373b37":"0x0","0x1257bbdf5bed452b3eda1d974a9839972d4d54d7fb1cde6a652e653346cc29b8":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x12c033f2252861b1bd15e9b5c71ef1cf26ca53de15eabc3b49e06f596e8755ec":"0x0","0x1348552952ac59b1c2522e84f684e36775420b449eddcdbd28f217183ed58b09":"0x0","0x149026695ebdd2bd6be0a7006aec5d10ddffbe46be181e4468980ea83c004fe9":"0x0","0x14c854a78d51371251661a408306c75d2515b5d509b295a58205e48267082bdc":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x18f06622a1abedc7bb78fcc98b2375188aef6c03b9247beee780b0b095d60285":"0x0","0x201ef5e312d372e2aeac4cf173b46ad2985127c7381f4f9acae5ebbd3a5e3861":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x2215c0abaeffcb5feae8a439b3185f8fba5dd6d97529a56c7609cd41fafdf5f1":"0x1","0x23513200931f98893f46373666c13964c7a821c5b40da7951b921629acf02735":"0x0","0x23f87654b79c6db28828f317e47d0c8deb9eaa2ea4e213fef901836c85036bf3":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x2e4566d865f2e159531492d7643e25e502917762b29082282ab9dfee8fbf54c7":"0x0","0x31fc31c15d389c5908095d314bb8b258352d51e18ac8a2f7fe15f3a0af519145":"0x0","0x3467fdbb447be3074b11c625b56e54d7ab44f3804bef205b07dd436d707d06d5":"0x0","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x62b11ad5f582a5c5d378fb310125b030042554f1","0x3cd80e7291e5f6dffa9af6eb70d47145a8fdd40acb8d09dfd0cf374e8c239b37":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x3f86c4990e663ffa5011ed38824fca68af7e0592eb22f41aebdec0ce84ee672e":"0x0","0x406aa3bf31381c8a323679af48792dfa2e7aa09dd0eb919e307dc4bf84216ff6":"0x0","0x47ce17acd30cc86e021ac7b23be8138ea767f6da503362aac5888a0679270eed":"0x0","0x4a7983c36f64e6df4d467cf706c128c273d30c24bbb172e251a5740624cc0bd3":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x4c42d98041cda7cb7d56b5d04731bd436366eb9f05c30f43671f1d1e2c0b0fa4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x55926eed7087c8cbfa1492f6d367f5e4c14c8d8cd59e2918c37184091369efb1":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x5b20f40cb5e9e634a90df9a72b516c11cc52281a4d1b7b67e672e2fe544ff22f":"0x0","0x6dac3e1cfae338e10c9c2f5000f6256d09afa83708761042001cea734f470ac1":"0x0","0x6defc32a546a6fb1b745bd1bb04e27085e94f01d7ef79587aee2c80853c43a53":"0x0","0x760b245be050a725a39b4fc089ad474a5fd40efa17101e112d30195d590779b4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x7bee59fcac76da32acb23def57eaaf959a4372a4fc180978fbd54f7a4c4b2f3d":"0x0","0x804aee9448e0b539a009ee7c6dd57e686c72e7b182e9622a42922b245a97e61e":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x825f7f8567cfd669c3beab41edff07d4aa51436123deeb0d3623b6a8fdec893c":"0x0","0x8717a3236e6a948df94444f035834fa8f7c5ee663a29f3580f3ef43ab051d6bd":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8a34e37883baf84417a33bb02eec8d1e43e363f617029800ff166614df3f112f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8bd1acdc45b63f1edf5db0b1444f1c4a6f82bf0a5a0a7231c2dd7b76a2b1e35c":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87":"0x0","0x8ed4e9fbdf86edd9f3eb1c8d4fbfc53a2eb863faf4cf5e0d2b307c0b33030091":"0x0","0x8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x90d72780b77edcd0c8daffbac0b21264679e851b734cb090e2b144eb3a28bb98":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x93fc964857984ff804a65eaceac4062669948f2b651ddc6b71373ad142bf45e0":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x9770fa903e700367e0306ab8fd70a2bb4f049417d341a2f8a2409d8d6a2218d1":"0x0","0xb1016fe231c2ed9dba8c95d2658191823b4b9ffa61a7aea530802c6b2ff27c41":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xbe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafe":"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f","0xbe7c5c707db1c91bd2c84880bb1e177b65886d295d9a62df8edfe38f8066cc81":"0x0","0xc3cd64a46de7309013ddb93a16a3024c2e46fb931e4744edf2610fb119f716f5":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xc563f9d3175978a619bae1a8175d3ea4be91d3890345085c5eb16f83b678a3d9":"0x0","0xc5b5cdb7b939f9d661f58f28c37e10cf71d45dacfea2581c88ae4a17aaf55e6e":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xd386775169d9e0716e9b5b08561984726edaa9febd0ca8e5468ecffa112078c7":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xe3b736cdcc6a09d7e3a05ffb63b11f11c91958d861443c3409d3fd863e8217bd":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xe3e5b75e3dff543bfbfe5b494e4e3243b4d9d0b3d794725cea46c28fe6be50e4":"0x0","0xe7d61626cac95282d296ee7ab5958e3e72e32eb959a7cab1d37c0f9d6d69c18a":"0x1a","0xeca5e1ccaa645ce2be97a867a1f8aeeb63ea833aeb009c0df0553b42b30c683f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf08305746cdba1d0eaa65036694838a3db122973267ffc57739d605c320c680a":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf0d566acc03395f71b37890f455d51d93197adf754ea72aba21427dc66b437df":"0x0","0xf230898ba4fe40c52f958d03013d995f822e25a5d4fae43bbdc6e92623cea0bd":"0x0","0xf245a9962043f44f4af98f9952a3bd29d91eb05418e4bb567b9de8f27e239b13":"0x0","0xf2a19ade13962e8675aecf2fbe51913877912f9e48e899806b6e06e82f9a980f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf2fab50b0b53245ddfa1bcfcdf4c73e209d6921dad704d173cf04cbbadc8e346":"0x0","0xfa6f3ee10d719cb3457d10c539ff3d77b8e56852ea62f68b2f9f85ad691ed6b4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xfff3abb219acc6ef4eed6e93a5682023229370196f352cdf3a71a88d881e3487":"0x0"}},"0x11dd97b7ca847dfb6504e61b7b9eb30f55e554a0":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a424740014610090575b600080fd5b610059610054366004610ba9565b6100b3565b6040516100669190610c98565b60405180910390f35b61008261007d366004610cab565b6101ce565b604051908152602001610066565b6100a361009e366004610ba9565b610332565b6040519015158152602001610066565b606060005a6001546040805163b3f9e4cb60e01b81529088013560048201529192506000916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561010a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061012e9190610cd9565b90506101c26101406020880188610cf6565b8260408901358561015460608c018c610d13565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8f018190048102820181019092528d815292508d91508c90819084018382808284376000920191909152506103fb92505050565b925050505b9392505050565b60025460015460405163b3f9e4cb60e01b8152600481018490526000926001600160a01b0390811692169063b3f9e4cb90602401602060405180830381865afa92505050801561023b575060408051601f3d908101601f1916820190925261023891810190610cd9565b60015b156102435790505b6001600160a01b0381163b156102c557604051636ccbae5f60e01b81526004810184905281906001600160a01b03821690636ccbae5f90602401602060405180830381865afa9250505080156102b6575060408051601f3d908101601f191682019092526102b391810190610d5a565b60015b156102c357949350505050565b505b600254604051636ccbae5f60e01b8152600481018590526001600160a01b0390911690636ccbae5f90602401602060405180830381865afa15801561030e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101c79190610d5a565b6001546040805163b3f9e4cb60e01b815290850135600482015260009182916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa158015610383573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103a79190610cd9565b90506103f26103b586610e0b565b8286868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506104d392505050565b95945050505050565b6060600080876001600160a01b0316866104178b8a898961051f565b6040516104249190610eb5565b60006040518083038160008787f1925050503d8060008114610462576040519150601f19603f3d011682016040523d82523d6000602084013e610467565b606091505b509092509050610478603f87610ed1565b5a1161048657610486610ef3565b6104c682826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506105d4565b9998505050505050505050565b60006104e084848461060d565b8015610514575060608401516020908101516001600160e01b031990811660009081529182905260409091205460e01b1615155b949350505050565b50565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036105b15760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526105c982828661074c565b979650505050505050565b606083156105e35750816101c7565b8251156105f35782518084602001fd5b8160405162461bcd60e51b81526004016105a89190610c98565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015610654573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106789190610d5a565b905060006107268660600151805190602001208688602001516040516020016106c69392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156101c2575085516101c2906001600160a01b03168286610935565b60606001600160e01b0319841663b87abc1160e01b036107cd5760008380602001905181019061077c9190610d5a565b9050848184604051602401610792929190610f09565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915291506101c79050565b6001600160e01b0319841663c597407360e01b03610859576000806000858060200190518101906107fe9190610f67565b925092509250868383838860405160240161081c9493929190610fd4565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293506101c792505050565b6001600160e01b031984166311ed383160e31b036108a85760008060008580602001905181019061088a91906110a6565b925092509250868383838860405160240161081c9493929190611157565b6001600160e01b031984166328d55f9b60e21b036101c7576000806000858060200190518101906108d991906110a6565b92509250925086838383886040516024016108f79493929190611157565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293505050509392505050565b60008060006109448585610a77565b9092509050600081600481111561095d5761095d61117c565b14801561097b5750856001600160a01b0316826001600160a01b0316145b1561098b576001925050506101c7565b600080876001600160a01b0316631626ba7e60e01b88886040516024016109b3929190610f09565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516109f19190610eb5565b600060405180830381855afa9150503d8060008114610a2c576040519150601f19603f3d011682016040523d82523d6000602084013e610a31565b606091505b5091509150818015610a44575080516020145b8015610a6b57508051630b135d3f60e11b90610a699083016020908101908401610d5a565b145b98975050505050505050565b6000808251604103610aad5760208301516040840151606085015160001a610aa187828585610abc565b94509450505050610ab5565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610af35750600090506003610ba0565b8460ff16601b14158015610b0b57508460ff16601c14155b15610b1c5750600090506004610ba0565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610b70573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610b9957600060019250925050610ba0565b9150600090505b94509492505050565b600080600060408486031215610bbe57600080fd5b833567ffffffffffffffff80821115610bd657600080fd5b9085019060808288031215610bea57600080fd5b90935060208501359080821115610c0057600080fd5b818601915086601f830112610c1457600080fd5b813581811115610c2357600080fd5b876020828501011115610c3557600080fd5b6020830194508093505050509250925092565b60005b83811015610c63578181015183820152602001610c4b565b50506000910152565b60008151808452610c84816020860160208601610c48565b601f01601f19169290920160200192915050565b6020815260006101c76020830184610c6c565b600060208284031215610cbd57600080fd5b5035919050565b6001600160a01b038116811461051c57600080fd5b600060208284031215610ceb57600080fd5b81516101c781610cc4565b600060208284031215610d0857600080fd5b81356101c781610cc4565b6000808335601e19843603018112610d2a57600080fd5b83018035915067ffffffffffffffff821115610d4557600080fd5b602001915036819003821315610ab557600080fd5b600060208284031215610d6c57600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610dac57610dac610d73565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ddb57610ddb610d73565b604052919050565b600067ffffffffffffffff821115610dfd57610dfd610d73565b50601f01601f191660200190565b600060808236031215610e1d57600080fd5b610e25610d89565b8235610e3081610cc4565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610e6057600080fd5b840136601f820112610e7157600080fd5b8035610e84610e7f82610de3565b610db2565b8181523684838501011115610e9857600080fd5b818484018583013760009181019093015250606082015292915050565b60008251610ec7818460208701610c48565b9190910192915050565b600082610eee57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b8281526040602082015260006105146040830184610c6c565b600082601f830112610f3357600080fd5b8151610f41610e7f82610de3565b818152846020838601011115610f5657600080fd5b610514826020830160208701610c48565b600080600060608486031215610f7c57600080fd5b835167ffffffffffffffff80821115610f9457600080fd5b610fa087838801610f22565b94506020860151915080821115610fb657600080fd5b50610fc386828701610f22565b925050604084015190509250925092565b608081526000610fe76080830187610c6c565b8281036020840152610ff98187610c6c565b905084604084015282810360608401526105c98185610c6c565b600082601f83011261102457600080fd5b8151602067ffffffffffffffff8083111561104157611041610d73565b8260051b611050838201610db2565b938452858101830193838101908886111561106a57600080fd5b84880192505b85831015610a6b578251848111156110885760008081fd5b6110968a87838c0101610f22565b8352509184019190840190611070565b6000806000606084860312156110bb57600080fd5b835167ffffffffffffffff808211156110d357600080fd5b6110df87838801611013565b945060208601519150808211156110f557600080fd5b50610fc386828701611013565b600081518084526020808501808196508360051b8101915082860160005b8581101561114a578284038952611138848351610c6c565b98850198935090840190600101611120565b5091979650505050505050565b60808152600061116a6080830187611102565b8281036020840152610ff98187611102565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x2":"0xf8c26340c1eaea6c7ff1760b25005e1306953572","0x1e74f978992d7d64ddac400bd4aae9eefd60fa0b8456650273f5f50148803323":"0xa3557e6c","0x23c84c23be8f829809d1b1502c647c6c59fb6b2345b163a2ca3e7d4f9855975c":"0x8f69c188","0xa0286316c9d3cb00f4f54a9f1096cefaa1748bb5a5395e7fa1563568ebb3e6c3":"0xb87abc11","0xdc138de224807be243ee38fe9e746cce5d437a256b87be90b80240e0811ad043":"0xc5974073"}},"0x145908bbcfc7b258e4d4d9a586f6e3249ae80216":{"nonce":1,"balance":"0x0","code":"0x3d5c","storage":{}},"0x17cda4e23f7237277952e075b1c48467aabfacc0":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c806368f9dab21461002d575b5f80fd5b61004061003b36600461088b565b610052565b60405190815260200160405180910390f35b5f61006f6040518060400160405280606081526020015f81525090565b61008e61007c858861090d565b61008790601061090d565b82906101d1565b506100d085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250859392505061023a9050565b5061011287878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250859392505061023a9050565b505f610120825f0151610266565b905083156101bc5760408051808201909152606081525f602090910181905282515261014c825f610650565b5061018e88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250869392505061023a9050565b505f5b848110156101ba576101a4835f8461067f565b5082516101b090610266565b9150600101610191565b505b6001600160601b031916979650505050505050565b60408051808201909152606081525f60208201526101f0602083610920565b1561021857610200602083610920565b61020b90602061093f565b610215908361090d565b91505b506020808301829052604080518085525f815283019091019052815b92915050565b60408051808201909152606081525f602082015261025f83845f0151518485516106b2565b9392505050565b5f6040518251602084019350604067ffffffffffffffc060018301160160098282031060018103610298576040820191505b50776745230100efcdab890098badcfe001032547600c3d2e1f06102e8565b5f8383101561025f5750808201519282900392602084101561025f575f1960208590036101000a0119169392505050565b5f5b828110156105ef576102fd8482896102b7565b855261030d8460208301896102b7565b6020860152604081850310600181036103295760808286038701535b506040830381146001810361034657602086018051600887021790525b5060405b60808110156103ce57858101603f19810151603719820151601f19830151600b198401516002911891909218189081027ffffffffefffffffefffffffefffffffefffffffefffffffefffffffefffffffe1663800000009091047c010000000100000001000000010000000100000001000000010000000116179052600c0161034a565b5060805b61014081101561045757858101607f19810151606f19820151603f198301516017198401516004911891909218189081027ffffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffc1663400000009091047c0300000003000000030000000300000003000000030000000300000003161790526018016103d2565b50815f805f5b60508110156105c55760148104801561048d57600181146104b457600281146104d9576003811461050357610524565b600160281b8504600160501b86048118600160781b870416189350635a8279999250610524565b600160281b8504600160781b8604600160501b870418189350636ed9eba19250610524565b600160501b8504600160781b8604818117600160281b8804169116179350638f1bbcdc9250610524565b600160281b8504600160781b8604600160501b87041818935063ca62c1d692505b50601f600160bb1b8504168063ffffffe06001609b1b87041617905080840190508063ffffffff8616019050808301905080600160e01b600484028c015104019050600160a01b8102600160281b860417945050600160501b633fffffff600160521b86041663c00000006604000000000000870416170277ffffffff00ffffffff000000000000ffffffff00ffffffff851617935060018101905061045d565b5050509190910177ffffffff00ffffffff00ffffffff00ffffffff00ffffffff16906040016102ea565b50600160601b63ffffffff821667ffffffff000000006101008404166bffffffff00000000000000006201000085041663ffffffff60601b630100000086041663ffffffff60801b6401000000008704161717171702945050505050919050565b60408051808201909152606081525f602082015282515161025f9084906001600160601b031985166014610798565b60408051808201909152606081525f60208201526106aa84846001600160601b031985166014610798565b949350505050565b60408051808201909152606081525f602082015282518211156106d3575f80fd5b60208501516106e2838661090d565b1115610715576107158561070587602001518786610700919061090d565b610813565b610710906002610952565b610829565b5f808651805187602083010193508088870111156107335787860182525b505050602084015b60208410610773578051825261075260208361090d565b915061075f60208261090d565b905061076c60208561093f565b935061073b565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b60408051808201909152606081525f602082015260208501516107bb858461090d565b11156107cf576107cf85610705868561090d565b5f6001836101000a0390508260200360080284901c93508551838682010185831982511617815250805184870111156108085783860181525b509495945050505050565b5f81831115610823575081610234565b50919050565b815161083583836101d1565b50610840838261023a565b50505050565b5f8083601f840112610856575f80fd5b50813567ffffffffffffffff81111561086d575f80fd5b602083019150836020828501011115610884575f80fd5b9250929050565b5f805f805f6060868803121561089f575f80fd5b853567ffffffffffffffff808211156108b6575f80fd5b6108c289838a01610846565b909750955060208801359150808211156108da575f80fd5b506108e788828901610846565b96999598509660400135949350505050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610234576102346108f9565b5f8261093a57634e487b7160e01b5f52601260045260245ffd5b500690565b81810381811115610234576102346108f9565b8082028115828204841417610234576102346108f956fea164736f6c6343000818000a","storage":{}},"0x19356cc2300833e690088a5a09a2044a3cc2a1e2":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x229c56b7805ab5935a883207f6a6bd5847e65aee":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106102ae5760003560e01c8063906cecc111610175578063b9998a24116100dc578063d547741f11610095578063f2fde38b1161006f578063f2fde38b14610892578063f5243bc4146108b2578063f940e385146108d2578063ffa1ad74146108f257600080fd5b8063d547741f1461083f578063d7db74c71461085f578063ec5273891461087257600080fd5b8063b9998a241461077d578063cc2a9a5b1461079d578063cc2c3fc4146107bd578063ceeb4f50146107dd578063d1f5692c146107fd578063d53913931461081d57600080fd5b8063a3a3f7f61161012e578063a3a3f7f614610690578063a3f4df7e146106b0578063a849d65c146106fd578063aa271e1a1461071d578063b0aa98c71461073d578063b3ab15fb1461075d57600080fd5b8063906cecc1146105e657806391d1485414610606578063983b2d5614610626578063986502751461064657806399e0dd7c1461065b578063a217fddf1461067b57600080fd5b80635b6fa8db11610219578063715018a6116101d2578063715018a61461054b57806371e2a6571461056057806377a2a5891461058057806381c81d35146105a05780638456cb59146105b35780638da5cb5b146105c857600080fd5b80635b6fa8db146104a35780635c975abb146104c35780635cd7e3b3146104d85780635e22cd86146104f85780635fc1964f14610518578063634486da1461053857600080fd5b80633092afd51161026b5780633092afd5146103a857806336568abe146103c85780633f41b614146103e85780633f4ba83a1461042057806351cff8d914610435578063572b6c051461045557600080fd5b806301ffc9a7146102b35780631edb948e146102e857806320c5429b1461030a578063248a9ca31461032a578063268b15ed146103685780632f2ff15d14610388575b600080fd5b3480156102bf57600080fd5b506102d36102ce366004613dc4565b610923565b60405190151581526020015b60405180910390f35b3480156102f457600080fd5b50610308610303366004613e13565b61095a565b005b34801561031657600080fd5b50610308610325366004613e3f565b610b03565b34801561033657600080fd5b5061035a610345366004613e3f565b60009081526097602052604090206001015490565b6040519081526020016102df565b34801561037457600080fd5b50610308610383366004613e99565b610c26565b34801561039457600080fd5b506103086103a3366004613f04565b610cb9565b3480156103b457600080fd5b506103086103c3366004613f34565b610ce3565b3480156103d457600080fd5b506103086103e3366004613f04565b610cf7565b3480156103f457600080fd5b5060c954610408906001600160a01b031681565b6040516001600160a01b0390911681526020016102df565b34801561042c57600080fd5b50610308610d85565b34801561044157600080fd5b50610308610450366004613f34565b610d97565b34801561046157600080fd5b506102d3610470366004613f34565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546001600160a01b0390811691161490565b3480156104af57600080fd5b5060cc54610408906001600160a01b031681565b3480156104cf57600080fd5b506102d3610e37565b3480156104e457600080fd5b506103086104f3366004613fa3565b610e4d565b34801561050457600080fd5b50610308610513366004614062565b6110b1565b34801561052457600080fd5b5061030861053336600461419c565b6112f6565b610308610546366004613f34565b61133e565b34801561055757600080fd5b50610308611401565b34801561056c57600080fd5b5061030861057b36600461419c565b611413565b34801561058c57600080fd5b5060ce54610408906001600160a01b031681565b6103086105ae366004613f34565b61145b565b3480156105bf57600080fd5b506103086114d8565b3480156105d457600080fd5b506033546001600160a01b0316610408565b3480156105f257600080fd5b5061030861060136600461423a565b6114e8565b34801561061257600080fd5b506102d3610621366004613f04565b61156e565b34801561063257600080fd5b50610308610641366004613f34565b611599565b34801561065257600080fd5b506103086115aa565b34801561066757600080fd5b50610308610676366004614295565b6115c4565b34801561068757600080fd5b5061035a600081565b34801561069c57600080fd5b506103086106ab3660046142d6565b6116ab565b3480156106bc57600080fd5b506106f0604051806040016040528060148152602001732aa7299d1026b4b73a34b7339026b0b730b3b2b960611b81525081565b6040516102df919061437c565b34801561070957600080fd5b5060cb54610408906001600160a01b031681565b34801561072957600080fd5b506102d3610738366004613f34565b6116f4565b34801561074957600080fd5b506102d3610758366004613e3f565b61170e565b34801561076957600080fd5b50610308610778366004613f34565b61176c565b34801561078957600080fd5b50610308610798366004613f34565b611796565b3480156107a957600080fd5b506103086107b836600461438f565b6117db565b3480156107c957600080fd5b5060ca54610408906001600160a01b031681565b3480156107e957600080fd5b506103086107f8366004614411565b611cd2565b34801561080957600080fd5b506103086108183660046144c6565b611d76565b34801561082957600080fd5b5061035a600080516020614ef483398151915281565b34801561084b57600080fd5b5061030861085a366004613f04565b611e2d565b61030861086d3660046144fb565b611e52565b34801561087e57600080fd5b5061030861088d366004613e3f565b611fe2565b34801561089e57600080fd5b506103086108ad366004613f34565b612054565b3480156108be57600080fd5b506103086108cd3660046145f0565b612070565b3480156108de57600080fd5b506103086108ed366004614708565b612222565b3480156108fe57600080fd5b506106f060405180604001604052806005815260200164302e352e3160d81b81525081565b60006001600160e01b03198216637965db0b60e01b148061095457506301ffc9a760e01b6001600160e01b03198316145b92915050565b61096561073861239e565b61098a5760405162461bcd60e51b815260040161098190614736565b60405180910390fd5b60c95460405163baef73e960e01b8152600481018390526000916001600160a01b03169063baef73e990602401602060405180830381865afa1580156109d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109f8919061476b565b9050806001600160401b0316600003610a235760405162461bcd60e51b815260040161098190614788565b806001600160401b0316836001600160401b031611610a905760405162461bcd60e51b815260206004820152602360248201527f4d696e74696e674d616e616765723a204558504952595f4e4f545f455854454e60448201526211115160ea1b6064820152608401610981565b60c954604051631fb9763760e11b81526001600160401b0385166004820152602481018490526001600160a01b0390911690633f72ec6e906044015b600060405180830381600087803b158015610ae657600080fd5b505af1158015610afa573d6000803e3d6000fd5b50505050505050565b610b0e61073861239e565b610b2a5760405162461bcd60e51b815260040161098190614736565b60c95460405163baef73e960e01b8152600481018390526001600160a01b039091169063baef73e990602401602060405180830381865afa158015610b73573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b97919061476b565b6001600160401b0316600003610bbf5760405162461bcd60e51b815260040161098190614788565b60c954604051637eee288d60e01b8152306004820152602481018390526001600160a01b0390911690637eee288d90604401600060405180830381600087803b158015610c0b57600080fd5b505af1158015610c1f573d6000803e3d6000fd5b5050505050565b8282828080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250610c6993508592508491506123ad565b610c71610e37565b15610c8e5760405162461bcd60e51b8152600401610981906147cb565b6060610afa610c9b61239e565b610cae88610ca98989612584565b6125b0565b8384600060016126c1565b600082815260976020526040902060010154610cd481612c15565b610cde8383612c26565b505050565b610ceb612cad565b610cf481612d26565b50565b610cff61239e565b6001600160a01b0316816001600160a01b031614610d775760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610981565b610d818282612d3e565b5050565b610d8d612cad565b610d95612dc3565b565b610d9f612cad565b6001600160a01b038116610db257600080fd5b60405147906001600160a01b0383169082156108fc029083906000818181858888f19350505050158015610dea573d6000803e3d6000fd5b50604080516001600160a01b03841681526020810183905260008183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a15050565b600080516020614ed48339815191525460ff1690565b610e5786886147f5565b8051600203610e8c57610e6b61073861239e565b610e875760405162461bcd60e51b8152600401610981906148bf565b610fd1565b6000610e9782612e6b565b60c9549092506001600160a01b0316905063430c2081610eb561239e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015610f00573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f249190614903565b80610fb3575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa158015610f7d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fa19190614903565b8015610fb35750610fb361073861239e565b610fcf5760405162461bcd60e51b815260040161098190614920565b505b610fdb87896147f5565b6000600282511015610fff5760405162461bcd60e51b81526004016109819061496f565b6110546110336000846001865161101691906149ca565b81518110611026576110266149dd565b6020026020010151612ea6565b83600081518110611046576110466149dd565b6020026020010151836123ad565b61105c610e37565b156110795760405162461bcd60e51b8152600401610981906147cb565b6110a38b6110878b8d6147f5565b6110918a8c6147f5565b61109b898b6147f5565b6000896126c1565b505050505050505050505050565b6110bb87896147f5565b80516002036110f0576110cf61073861239e565b6110eb5760405162461bcd60e51b8152600401610981906148bf565b611235565b60006110fb82612e6b565b60c9549092506001600160a01b0316905063430c208161111961239e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015611164573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111889190614903565b80611217575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa1580156111e1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112059190614903565b8015611217575061121761073861239e565b6112335760405162461bcd60e51b815260040161098190614920565b505b61123f888a6147f5565b836002825110156112625760405162461bcd60e51b81526004016109819061496f565b6112796110336000846001865161101691906149ca565b611281610e37565b1561129e5760405162461bcd60e51b8152600401610981906147cb565b60028a146112be5760405162461bcd60e51b8152600401610981906149f3565b6112e78c6112cc8c8e6147f5565b6112d68b8d6147f5565b6112e08a8c6147f5565b89896126c1565b50505050505050505050505050565b6112fe612cad565b60005b8151811015610d815761132c82828151811061131f5761131f6149dd565b6020026020010151612d26565b8061133681614a39565b915050611301565b61134961073861239e565b6113655760405162461bcd60e51b815260040161098190614736565b6001600160a01b0381166113bb5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610981565b6113c481612f5a565b6113cc6115aa565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610d81573d6000803e3d6000fd5b611409612cad565b610d956000612f72565b61141b612cad565b60005b8151811015610d815761144982828151811061143c5761143c6149dd565b6020026020010151612f5a565b8061145381614a39565b91505061141e565b61146661073861239e565b6114825760405162461bcd60e51b815260040161098190614736565b6001600160a01b0381166113c45760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610981565b6114e0612cad565b610d95612fc4565b8282828080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525061152b93508592508491506123ad565b611533610e37565b156115505760405162461bcd60e51b8152600401610981906147cb565b606061156487610cae88610ca98989612584565b5050505050505050565b60009182526097602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6115a1612cad565b610cf481612f5a565b610d95600080516020614ef48339815191526103e361239e565b6115cc612cad565b60c954604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906115fe9085908590600401614a52565b600060405180830381600087803b15801561161857600080fd5b505af115801561162c573d6000803e3d6000fd5b505060cb546001600160a01b0316159150610d8190505760cb54604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906116759085908590600401614a52565b600060405180830381600087803b15801561168f57600080fd5b505af11580156116a3573d6000803e3d6000fd5b505050505050565b6116b3612cad565b610cde83838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525085925061302c915050565b6000610954600080516020614ef48339815191528361156e565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd696020820152908101829052600090611762906060015b6040516020818303038152906040528051906020012090565b5460ff1692915050565b611774612cad565b60ce80546001600160a01b0319166001600160a01b0392909216919091179055565b61179e612cad565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e80546001600160a01b0319166001600160a01b03831617905550565b600054610100900460ff16158080156117fb5750600054600160ff909116105b806118155750303b158015611815575060005460ff166001145b6118785760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610981565b6000805460ff19166001179055801561189b576000805461ff0019166101001790555b60c980546001600160a01b03199081166001600160a01b038a81169190911790925560ca8054821689841617905560cb8054821688841617905560cc8054821687841617905560ce80549091169185169190911790556118f961314c565b611901613183565b61190a826131bc565b6119126131e3565b6040805161036081018252600661032082018181526563727970746f60d01b610340840152825282518084018452818152651dd85b1b195d60d21b602082810191909152808401919091528351808501855260018152600f60fb1b8183015283850152835180850185526003808252621b999d60ea1b82840152606085019190915284518086018652600a815269313637b1b5b1b430b4b760b11b818401526080850152845180860186526007808252663134ba31b7b4b760c91b8285015260a0860191909152855180870187528281526207070760eb1b8185015260c0860152855180870187528281526264616f60e81b8185015260e086015285518087018752828152621e9a5b60ea1b8185015261010086015285518087018752908152663837b63cb3b7b760c91b8184015261012085015284518086018652600b81526a756e73746f707061626c6560a81b81840152610140850152845180860186528381526535b632bb32b960d11b8184015261016085015284518086018652600280825261686960f01b8285015261018086019190915285518087018752848152656b726573757360d01b818501526101a086015285518087018752600580825264616e696d6560d81b828601526101c087019190915286518088018852818152646d616e676160d81b818601526101e087015286518088018852600981526862696e616e6365757360b81b8186015261020087015286518088018852818152647265616c6d60d81b818601526102208701528651808801885291825261676f60f01b82850152610240860191909152855180870187526008815267185b1d1a5b5a5cdd60c21b818501526102608601528551808701875290815264707564677960d81b81840152610280850152845180860186528381526530bab9ba34b760d11b818401526102a08501528451808601865292835265189a5d19d95d60d21b838301526102c08401929092528351808501855291825262706f6760e81b828201526102e083019190915282518084019093526004835263636c617960e01b9083015261030081019190915260005b6019811015611c5c57611c4a828260198110611c3e57611c3e6149dd565b6020020151600061302c565b80611c5481614a39565b915050611c20565b50611c8360405180604001604052806003815260200162636f6d60e81b815250600161302c565b508015610afa576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050505050565b8686868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250611d1593508592508491506123ad565b611d1d610e37565b15611d3a5760405162461bcd60e51b8152600401610981906147cb565b611d698a611d4c8b610ca98c8c612584565b611d56888a6147f5565b611d6087896147f5565b600060016126c1565b5050505050505050505050565b611d7e612cad565b60005b81811015610cde5760c9546001600160a01b03166350960239848484818110611dac57611dac6149dd565b9050602002016020810190611dc19190613f34565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401600060405180830381600087803b158015611e0257600080fd5b505af1158015611e16573d6000803e3d6000fd5b505050508080611e2590614a39565b915050611d81565b600082815260976020526040902060010154611e4881612c15565b610cde8383612d3e565b611e5c898b6147f5565b6000600282511015611e805760405162461bcd60e51b81526004016109819061496f565b611e976110336000846001865161101691906149ca565b611e9f610e37565b15611ebc5760405162461bcd60e51b8152600401610981906147cb565b60028b14611edc5760405162461bcd60e51b8152600401610981906149f3565b611f228d8d8d898960008a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061322392505050565b84341015611f725760405162461bcd60e51b815260206004820181905260248201527f4d696e74696e674d616e616765723a204e4f545f454e4f5547485f46554e44536044820152606401610981565b611f848d8d8d8d8d8d8d8c60006133e3565b843411156112e757611f9461239e565b6001600160a01b03166108fc611faa87346149ca565b6040518115909202916000818181858888f19350505050158015611fd2573d6000803e3d6000fd5b5050505050505050505050505050565b611fea612cad565b611ff38161349f565b61200f5760405162461bcd60e51b815260040161098190614a81565b600081815260cd6020526040812061202691613d76565b60405181907f0aa1aff0f830e739d86baf0e6624d6763da02f7733575e0e463886cd062dea6a90600090a250565b61205c612cad565b612065816134c5565b610cf460008261353b565b61207a8a8c6147f5565b600060028251101561209e5760405162461bcd60e51b81526004016109819061496f565b6120b56110336000846001865161101691906149ca565b6120bd610e37565b156120da5760405162461bcd60e51b8152600401610981906147cb565b60028c146120fa5760405162461bcd60e51b8152600401610981906149f3565b61213f8e8e8e8a898b8a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061322392505050565b856001600160a01b03166323b872dd61215661239e565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152306024820152604481018890526064016020604051808303816000875af11580156121a9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121cd9190614903565b6122115760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610981565b611fd28e8e8e8e8e8e8e8c8e6133e3565b61222a612cad565b6040516370a0823160e01b81523060048201526000906001600160a01b038416906370a0823190602401602060405180830381865afa158015612271573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122959190614ac3565b60405163a9059cbb60e01b81526001600160a01b038481166004830152602482018390529192509084169063a9059cbb906044016020604051808303816000875af11580156122e8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061230c9190614903565b6123505760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610981565b604080516001600160a01b0384811682526020820184905285168183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a1505050565b60006123a8613545565b905090565b6123b68361349f565b6123d25760405162461bcd60e51b815260040161098190614a81565b600083815260cf602052604090205460ff1615156001600160401b03821615151461244e5760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544c445f455850495241424c455f4d496044820152650a69a82a886960d31b6064820152608401610981565b60006124818360408051808201825260008082526020918201528151808301909252825182529182019181019190915290565b9050600a81600001511115612529576124ac6124a0826000600a61358b565b80516020909101512090565b7fb551e0305c8163b812374b8e78b577c77f226f6f10c5ad03e52699578fbc34b8036125295760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544f4b454e5f4c4142454c5f50524f4860448201526512509255115160d21b6064820152608401610981565b612532836135ca565b61257e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a204c4142454c5f494e56414c49440000006044820152606401610981565b50505050565b60608282604051602001612599929190614adc565b604051602081830303815290604052905092915050565b604080516002808252606082810190935260009190816020015b60608152602001906001900390816125ca57905050905082816000815181106125f5576125f56149dd565b602002602001018190525060cd6000858152602001908152602001600020805461261e90614b04565b80601f016020809104026020016040519081016040528092919081815260200182805461264a90614b04565b80156126975780601f1061266c57610100808354040283529160200191612697565b820191906000526020600020905b81548152906001019060200180831161267a57829003601f168201915b5050505050816001815181106126af576126af6149dd565b60209081029190910101529392505050565b60008060006126cf88612e6b565b915091508380156126e1575060028851115b8015612763575060c9546040516331a9108f60e11b8152600481018390526001600160a01b038b8116921690636352211e90602401602060405180830381865afa158015612733573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127579190614b3e565b6001600160a01b031614155b156127c35760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e616765723a20524556455253455f5245434f52445f4e60448201526913d517d0531313d5d15160b21b6064820152608401610981565b60c954604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401602060405180830381865afa15801561280c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128309190614903565b8015612921575060c9546040516331a9108f60e11b81526004810184905230916001600160a01b031690636352211e90602401602060405180830381865afa158015612880573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128a49190614b3e565b6001600160a01b03161480612921575060c95460405163d9548e5360e01b8152600481018490526001600160a01b039091169063d9548e5390602401602060405180830381865afa1580156128fd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129219190614903565b15612a12576001600160401b038516156129a35760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b15801561298a57600080fd5b505af115801561299e573d6000803e3d6000fd5b505050505b60c954604051630fb8df0360e11b81526001600160a01b0390911690631f71be06906129db908c908c908c908c908b90600401614bb0565b600060405180830381600087803b1580156129f557600080fd5b505af1158015612a09573d6000803e3d6000fd5b50505050612c09565b612a1b8261372e565b612a248861378d565b8015612a31575087516002145b8015612a4457506001600160401b038516155b15612b225760ca5488516001600160a01b039091169063c36c2125908b908b90600090612a7357612a736149dd565b602090810291909101015160cc546040516001600160e01b031960e086901b168152612aad9392916001600160a01b031690600401614c0f565b600060405180830381600087803b158015612ac757600080fd5b505af1158015612adb573d6000803e3d6000fd5b50505050600087511115612b1d5760cc54604051633a0deb9d60e21b81526001600160a01b039091169063e837ae74906129db908a908a908790600401614c44565b612c09565b60c95460405163ba5d40b760e01b81526001600160a01b039091169063ba5d40b790612b5a908c908c908c908c908b90600401614bb0565b600060405180830381600087803b158015612b7457600080fd5b505af1158015612b88573d6000803e3d6000fd5b505050506001600160401b03851615612c095760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b158015612bf057600080fd5b505af1158015612c04573d6000803e3d6000fd5b505050505b50979650505050505050565b610cf481612c2161239e565b6137e7565b612c30828261156e565b610d815760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19166001179055612c6961239e565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b612cb561239e565b6001600160a01b0316612cd06033546001600160a01b031690565b6001600160a01b031614610d955760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610981565b610cf4600080516020614ef483398151915282611e2d565b612d48828261156e565b15610d815760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19169055612d7f61239e565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612dcb610e37565b612e0e5760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881393d517d4105554d15160621b6044820152606401610981565b600080516020614ed4833981519152805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa612e4e61239e565b6040516001600160a01b03909116815260200160405180910390a1565b805160009081905b8015612ea057829150612e8c82856110166001856149ca565b925080612e9881614c7a565b915050612e73565b50915091565b60008151600003612ef95760405162461bcd60e51b815260206004820152601b60248201527f4d696e74696e674d616e616765723a204c4142454c5f454d50545900000000006044820152606401610981565b8282604051602001612f0b9190614c91565b60405160208183030381529060405280519060200120604051602001612f3b929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b610cf4600080516020614ef48339815191528261353b565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b612fcc610e37565b15612fe95760405162461bcd60e51b8152600401610981906147cb565b600080516020614ed4833981519152805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258612e4e61239e565b6000613039600084612ea6565b600081815260cd602052604090209091506130548482614cf3565b50600081815260cf602052604090819020805460ff19168415151790555181907f4fce6f6e172b04eaa80325d8e3b0180a34945000f3e214605039e8420fdf8980906130a190869061437c565b60405180910390a260c954604051634f558e7960e01b8152600481018390526001600160a01b0390911690634f558e7990602401602060405180830381865afa1580156130f2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131169190614903565b610cde5760c9546040516307befae360e51b81526001600160a01b039091169063f7df5c6090610acc9084908790600401614db2565b600054610100900460ff166131735760405162461bcd60e51b815260040161098190614dd3565b610d9561317e61239e565b612f72565b600054610100900460ff166131aa5760405162461bcd60e51b815260040161098190614dd3565b610d9560006131b761239e565b61353b565b600054610100900460ff1661179e5760405162461bcd60e51b815260040161098190614dd3565b600054610100900460ff1661320a5760405162461bcd60e51b815260040161098190614dd3565b600080516020614ed4833981519152805460ff19169055565b600061323761323287896147f5565b612e6b565b506040516bffffffffffffffffffffffff1930606090811b821660208401524660348401528b811b82166054840152606883018490526001600160c01b031960c08a901b1660888401526090830188905286901b1660b082015290915060009061331390849061330d9060c401604051602081830303815290604052805190602001206040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c8101829052600090605c01604051602081830303815290604052805190602001209050919050565b9061384b565b905061331e816116f4565b6133765760405162461bcd60e51b8152602060048201526024808201527f4d696e74696e674d616e616765723a205349474e45525f49535f4e4f545f4d49604482015263272a22a960e11b6064820152608401610981565b42866001600160401b0316116133d85760405162461bcd60e51b815260206004820152602160248201527f4d696e74696e674d616e616765723a20455850495245445f5349474e415455526044820152604560f81b6064820152608401610981565b505050505050505050565b600061342a8a6133f38a8c6147f5565b6133fd898b6147f5565b613407888a6147f5565b60008f6001600160a01b031661341b61239e565b6001600160a01b0316146126c1565b9050896001600160a01b031661343e61239e565b6001600160a01b0316827fa545b6fd3355e8d57f8c8147bafe740545bd3ea1f94bef2576a6d532a7c3b605868660405161348b9291909182526001600160a01b0316602082015260400190565b60405180910390a450505050505050505050565b600081815260cd6020526040812080548291906134bb90614b04565b9050119050919050565b6134cd612cad565b6001600160a01b0381166135325760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610981565b610cf481612f72565b610d818282612c26565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546000906001600160a01b03163303613586575060331936013560601c90565b503390565b604080518082019091526000808252602082015260405180604001604052808381526020018486602001516135c09190614e1e565b9052949350505050565b600081516000036135dd57506000919050565b60208201805160f81c603081108015906135fb575060398160ff1611155b15801561361d575060618160ff161015801561361b5750607a8160ff1611155b155b1561362c575060009392505050565b8351600181111561369a5761364e836136466001846149ca565b015160f81c90565b915060308260ff1610158015613668575060398260ff1611155b15801561368a575060618260ff16101580156136885750607a8260ff1611155b155b1561369a57506000949350505050565b60015b6136a86001836149ca565b811015613722578381015160f81c9250602d83148015906136de575060308360ff16101580156136dc575060398360ff1611155b155b80156136ff575060618360ff16101580156136fd5750607a8360ff1611155b155b156137105750600095945050505050565b8061371a81614a39565b91505061369d565b50600195945050505050565b6137378161170e565b156137845760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a20544f4b454e5f424c4f434b45440000006044820152606401610981565b610cf48161386f565b6000806137a46000846001865161101691906149ca565b60ca549091506001600160a01b0316158015906137e05750807f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f145b9392505050565b6137f1828261156e565b610d8157613809816001600160a01b031660146138f3565b6138148360206138f3565b604051602001613825929190614e31565b60408051601f198184030181529082905262461bcd60e51b82526109819160040161437c565b600080600061385a8585613a8e565b9150915061386781613ad3565b509392505050565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd6960208201529081018290526001906138ae90606001611749565b805460ff19169115159190911790556040518181527f2ce5d9351b1d590d5a066db0d2dc7602d55f092506a83a7ee8c4d78ee357d75a9060200160405180910390a150565b60606000613902836002614ea6565b61390d906002614e1e565b6001600160401b0381111561392457613924614133565b6040519080825280601f01601f19166020018201604052801561394e576020820181803683370190505b509050600360fc1b81600081518110613969576139696149dd565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110613998576139986149dd565b60200101906001600160f81b031916908160001a90535060006139bc846002614ea6565b6139c7906001614e1e565b90505b6001811115613a3f576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106139fb576139fb6149dd565b1a60f81b828281518110613a1157613a116149dd565b60200101906001600160f81b031916908160001a90535060049490941c93613a3881614c7a565b90506139ca565b5083156137e05760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610981565b6000808251604103613ac45760208301516040840151606085015160001a613ab887828585613c89565b94509450505050613acc565b506000905060025b9250929050565b6000816004811115613ae757613ae7614ebd565b03613aef5750565b6001816004811115613b0357613b03614ebd565b03613b505760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152606401610981565b6002816004811115613b6457613b64614ebd565b03613bb15760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610981565b6003816004811115613bc557613bc5614ebd565b03613c1d5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b6064820152608401610981565b6004816004811115613c3157613c31614ebd565b03610cf45760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c604482015261756560f01b6064820152608401610981565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613cc05750600090506003613d6d565b8460ff16601b14158015613cd857508460ff16601c14155b15613ce95750600090506004613d6d565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613d3d573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613d6657600060019250925050613d6d565b9150600090505b94509492505050565b508054613d8290614b04565b6000825580601f10613d92575050565b601f016020900490600052602060002090810190610cf491905b80821115613dc05760008155600101613dac565b5090565b600060208284031215613dd657600080fd5b81356001600160e01b0319811681146137e057600080fd5b6001600160401b0381168114610cf457600080fd5b8035613e0e81613dee565b919050565b60008060408385031215613e2657600080fd5b8235613e3181613dee565b946020939093013593505050565b600060208284031215613e5157600080fd5b5035919050565b60008083601f840112613e6a57600080fd5b5081356001600160401b03811115613e8157600080fd5b602083019150836020828501011115613acc57600080fd5b600080600060408486031215613eae57600080fd5b8335925060208401356001600160401b03811115613ecb57600080fd5b613ed786828701613e58565b9497909650939450505050565b6001600160a01b0381168114610cf457600080fd5b8035613e0e81613ee4565b60008060408385031215613f1757600080fd5b823591506020830135613f2981613ee4565b809150509250929050565b600060208284031215613f4657600080fd5b81356137e081613ee4565b60008083601f840112613f6357600080fd5b5081356001600160401b03811115613f7a57600080fd5b6020830191508360208260051b8501011115613acc57600080fd5b8015158114610cf457600080fd5b60008060008060008060008060a0898b031215613fbf57600080fd5b8835613fca81613ee4565b975060208901356001600160401b0380821115613fe657600080fd5b613ff28c838d01613f51565b909950975060408b013591508082111561400b57600080fd5b6140178c838d01613f51565b909750955060608b013591508082111561403057600080fd5b5061403d8b828c01613f51565b909450925050608089013561405181613f95565b809150509295985092959890939650565b600080600080600080600080600060c08a8c03121561408057600080fd5b893561408b81613ee4565b985060208a01356001600160401b03808211156140a757600080fd5b6140b38d838e01613f51565b909a50985060408c01359150808211156140cc57600080fd5b6140d88d838e01613f51565b909850965060608c01359150808211156140f157600080fd5b506140fe8c828d01613f51565b90955093505060808a013561411281613dee565b915060a08a013561412281613f95565b809150509295985092959850929598565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561417157614171614133565b604052919050565b60006001600160401b0382111561419257614192614133565b5060051b60200190565b600060208083850312156141af57600080fd5b82356001600160401b038111156141c557600080fd5b8301601f810185136141d657600080fd5b80356141e96141e482614179565b614149565b81815260059190911b8201830190838101908783111561420857600080fd5b928401925b8284101561422f57833561422081613ee4565b8252928401929084019061420d565b979650505050505050565b6000806000806060858703121561425057600080fd5b843561425b81613ee4565b93506020850135925060408501356001600160401b0381111561427d57600080fd5b61428987828801613e58565b95989497509550505050565b600080602083850312156142a857600080fd5b82356001600160401b038111156142be57600080fd5b6142ca85828601613e58565b90969095509350505050565b6000806000604084860312156142eb57600080fd5b83356001600160401b0381111561430157600080fd5b61430d86828701613e58565b909450925050602084013561432181613f95565b809150509250925092565b60005b8381101561434757818101518382015260200161432f565b50506000910152565b6000815180845261436881602086016020860161432c565b601f01601f19169290920160200192915050565b6020815260006137e06020830184614350565b60008060008060008060c087890312156143a857600080fd5b86356143b381613ee4565b955060208701356143c381613ee4565b945060408701356143d381613ee4565b935060608701356143e381613ee4565b925060808701356143f381613ee4565b915060a087013561440381613ee4565b809150509295509295509295565b60008060008060008060008060a0898b03121561442d57600080fd5b883561443881613ee4565b97506020890135965060408901356001600160401b038082111561445b57600080fd5b6144678c838d01613e58565b909850965060608b013591508082111561448057600080fd5b61448c8c838d01613f51565b909650945060808b01359150808211156144a557600080fd5b506144b28b828c01613f51565b999c989b5096995094979396929594505050565b600080602083850312156144d957600080fd5b82356001600160401b038111156144ef57600080fd5b6142ca85828601613f51565b600080600080600080600080600080600060e08c8e03121561451c57600080fd5b6145258c613ef9565b9a506001600160401b038060208e0135111561454057600080fd5b6145508e60208f01358f01613f51565b909b50995060408d013581101561456657600080fd5b6145768e60408f01358f01613f51565b909950975060608d013581101561458c57600080fd5b61459c8e60608f01358f01613f51565b90975095506145ad60808e01613e03565b945060a08d013593508060c08e013511156145c757600080fd5b506145d88d60c08e01358e01613e58565b81935080925050509295989b509295989b9093969950565b6000806000806000806000806000806000806101008d8f03121561461357600080fd5b61461c8d613ef9565b9b506001600160401b0360208e0135111561463657600080fd5b6146468e60208f01358f01613f51565b909b5099506001600160401b0360408e0135111561466357600080fd5b6146738e60408f01358f01613f51565b90995097506001600160401b0360608e0135111561469057600080fd5b6146a08e60608f01358f01613f51565b90975095506146b160808e01613e03565b94506146bf60a08e01613ef9565b935060c08d013592506001600160401b0360e08e013511156146e057600080fd5b6146f08e60e08f01358f01613e58565b81935080925050509295989b509295989b509295989b565b6000806040838503121561471b57600080fd5b823561472681613ee4565b91506020830135613f2981613ee4565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b60006020828403121561477d57600080fd5b81516137e081613dee565b60208082526023908201527f4d696e74696e674d616e616765723a20544f4b454e5f4e4f545f455850495241604082015262424c4560e81b606082015260800190565b60208082526010908201526f14185d5cd8589b194e8814105554d15160821b604082015260600190565b60006148036141e484614179565b80848252602080830192508560051b85013681111561482157600080fd5b855b818110156148b35780356001600160401b03808211156148435760008081fd5b90880190601f36818401126148585760008081fd5b82358281111561486a5761486a614133565b61487b818301601f19168801614149565b9250808352368782860101111561489457600091508182fd5b8087850188850137600090830187015250865250938201938201614823565b50919695505050505050565b60208082526024908201527f4d696e74696e674d616e616765723a2043414c4c45525f49535f4e4f545f4d49604082015263272a22a960e11b606082015260800190565b60006020828403121561491557600080fd5b81516137e081613f95565b6020808252602f908201527f4d696e74696e674d616e616765723a2053454e4445525f49535f4e4f545f415060408201526e282927ab22a22fa7a92fa7aba722a960891b606082015260800190565b60208082526025908201527f4d696e74696e674d616e616765723a204c4142454c535f4c454e4754485f42456040820152642627abaf9960d91b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b81810381811115610954576109546149b4565b634e487b7160e01b600052603260045260246000fd5b60208082526026908201527f4d696e74696e674d616e616765723a20535542444f4d41494e535f4e4f545f41604082015265131313d5d15160d21b606082015260800190565b600060018201614a4b57614a4b6149b4565b5060010190565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b60208082526022908201527f4d696e74696e674d616e616765723a20544c445f4e4f545f5245474953544552604082015261115160f21b606082015260800190565b600060208284031215614ad557600080fd5b5051919050565b6b756e732d646576746573742d60a01b81528183600c83013760009101600c01908152919050565b600181811c90821680614b1857607f821691505b602082108103614b3857634e487b7160e01b600052602260045260246000fd5b50919050565b600060208284031215614b5057600080fd5b81516137e081613ee4565b600081518084526020808501808196508360051b8101915082860160005b85811015614ba3578284038952614b91848351614350565b98850198935090840190600101614b79565b5091979650505050505050565b6001600160a01b038616815260a060208201819052600090614bd490830187614b5b565b8281036040840152614be68187614b5b565b90508281036060840152614bfa8186614b5b565b91505082151560808301529695505050505050565b600060018060a01b03808616835260606020840152614c316060840186614350565b9150808416604084015250949350505050565b606081526000614c576060830186614b5b565b8281036020840152614c698186614b5b565b915050826040830152949350505050565b600081614c8957614c896149b4565b506000190190565b60008251614ca381846020870161432c565b9190910192915050565b601f821115610cde57600081815260208120601f850160051c81016020861015614cd45750805b601f850160051c820191505b818110156116a357828155600101614ce0565b81516001600160401b03811115614d0c57614d0c614133565b614d2081614d1a8454614b04565b84614cad565b602080601f831160018114614d555760008415614d3d5750858301515b600019600386901b1c1916600185901b1785556116a3565b600085815260208120601f198616915b82811015614d8457888601518255948401946001909101908401614d65565b5085821015614da25787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b828152604060208201526000614dcb6040830184614350565b949350505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b80820180821115610954576109546149b4565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351614e6981601785016020880161432c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351614e9a81602884016020880161432c565b01602801949350505050565b8082028115828204841417610954576109546149b4565b634e487b7160e01b600052602160045260246000fdfe5496787fc1ebdfeba375028c1865f13fbb1d63c0caa356ccc1b29a80f3ebd6229f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000811000a","storage":{}},"0x24f45688d421f46cca60734bdc648ad192db0f2e":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0x1","0x97":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x12d":"0x0","0x15f":"0x5cc819c9915eadfcebd76952b8c1bc36cadd7376","0x13cf90498be59d359caa5b6092b365feab4610605d7107d1f05f8e94ac955652":"0x1","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x54563a9e1cd2dcbd0bca90d3cfa4a647e02c404a","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106102295760003560e01c8063886a69ba11610123578063cf1d21c0116100ab578063e2c49de11161006f578063e2c49de11461091d578063e3dec8fb14610932578063e43009a6146109c8578063e66f9603146109fb578063ea60c7c414610a2557610240565b8063cf1d21c014610844578063d233a3c714610859578063d547741f1461089c578063d81c8e52146108d5578063dc993a23146108ea57610240565b8063a217fddf116100f2578063a217fddf1461078a578063b4b4f63e1461079f578063bc08452b146107b4578063c4d66de8146107e7578063ca15c8731461081a57610240565b8063886a69ba146106c95780639010d07c146106de5780639173b1391461070e57806391d148541461075157610240565b80633138b6f1116101b1578063568b80b511610175578063568b80b5146105fb578063607f2d4214610610578063630fcbfb1461064e5780636cb136b0146106635780636e86b7701461069657610240565b80633138b6f1146104f55780633408e4701461050a57806336568abe1461051f5780633805550f146105585780634faa8a26146105d557610240565b80630f7e5970116101f85780630f7e59701461042357806320379ee514610438578063248a9ca31461045f5780632d0335ab146104895780632f2ff15d146104bc57610240565b806304967702146102455780630c3894bb146102765780630c53c51c146102b15780630c598220146103ea57610240565b366102405761023e610239610a58565b610a68565b005b600080fd5b34801561025157600080fd5b5061025a610b69565b604080516001600160a01b039092168252519081900360200190f35b34801561028257600080fd5b5061023e6004803603604081101561029957600080fd5b506001600160a01b0381358116916020013516610b78565b610375600480360360a08110156102c757600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156102f257600080fd5b82018360208201111561030457600080fd5b8035906020019184600183028401116401000000008311171561032657600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550508235935050506020810135906040013560ff16610cc9565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103af578181015183820152602001610397565b50505050905090810190601f1680156103dc5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156103f657600080fd5b5061023e6004803603604081101561040d57600080fd5b50803590602001356001600160a01b0316610fcc565b34801561042f57600080fd5b506103756110b9565b34801561044457600080fd5b5061044d6110d6565b60408051918252519081900360200190f35b34801561046b57600080fd5b5061044d6004803603602081101561048257600080fd5b50356110dc565b34801561049557600080fd5b5061044d600480360360208110156104ac57600080fd5b50356001600160a01b03166110f4565b3480156104c857600080fd5b5061023e600480360360408110156104df57600080fd5b50803590602001356001600160a01b031661110f565b34801561050157600080fd5b5061025a611176565b34801561051657600080fd5b5061044d611185565b34801561052b57600080fd5b5061023e6004803603604081101561054257600080fd5b50803590602001356001600160a01b0316611189565b34801561056457600080fd5b5061023e6004803603602081101561057b57600080fd5b81019060208101813564010000000081111561059657600080fd5b8201836020820111156105a857600080fd5b803590602001918460018302840111640100000000831117156105ca57600080fd5b5090925090506111ea565b61023e600480360360208110156105eb57600080fd5b50356001600160a01b03166116ec565b34801561060757600080fd5b5061044d6116f8565b34801561061c57600080fd5b5061063a6004803603602081101561063357600080fd5b503561171b565b604080519115158252519081900360200190f35b34801561065a57600080fd5b5061023e611730565b34801561066f57600080fd5b5061023e6004803603602081101561068657600080fd5b50356001600160a01b03166117d6565b3480156106a257600080fd5b5061025a600480360360208110156106b957600080fd5b50356001600160a01b031661186e565b3480156106d557600080fd5b5061044d611889565b3480156106ea57600080fd5b5061025a6004803603604081101561070157600080fd5b50803590602001356118aa565b34801561071a57600080fd5b5061023e6004803603606081101561073157600080fd5b506001600160a01b038135811691602081013590911690604001356118d1565b34801561075d57600080fd5b5061063a6004803603604081101561077457600080fd5b50803590602001356001600160a01b0316611a06565b34801561079657600080fd5b5061044d611a24565b3480156107ab57600080fd5b5061023e611a29565b3480156107c057600080fd5b5061023e600480360360208110156107d757600080fd5b50356001600160a01b0316611acf565b3480156107f357600080fd5b5061023e6004803603602081101561080a57600080fd5b50356001600160a01b0316611b67565b34801561082657600080fd5b5061044d6004803603602081101561083d57600080fd5b5035611c57565b34801561085057600080fd5b5061025a611c6e565b34801561086557600080fd5b5061023e6004803603606081101561087c57600080fd5b506001600160a01b03813581169160208101359091169060400135611c86565b3480156108a857600080fd5b5061023e600480360360408110156108bf57600080fd5b50803590602001356001600160a01b0316611de8565b3480156108e157600080fd5b5061044d611e41565b3480156108f657600080fd5b5061023e6004803603602081101561090d57600080fd5b50356001600160a01b0316611e60565b34801561092957600080fd5b5061025a611f3d565b34801561093e57600080fd5b5061023e6004803603606081101561095557600080fd5b6001600160a01b03823581169260208101359091169181019060608101604082013564010000000081111561098957600080fd5b82018360208201111561099b57600080fd5b803590602001918460018302840111640100000000831117156109bd57600080fd5b509092509050611f4c565b3480156109d457600080fd5b5061044d600480360360208110156109eb57600080fd5b50356001600160a01b0316611fe9565b348015610a0757600080fd5b5061025a60048036036020811015610a1e57600080fd5b5035611ffb565b348015610a3157600080fd5b5061025a60048036036020811015610a4857600080fd5b50356001600160a01b0316612016565b6000610a62612031565b90505b90565b604080513460208083019190915282518083039091018152908201909152610aa58273eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee8361208e565b7fa1829a9003092132f585b6ccdd167c19fe9774dbdea4260287e8a8e8ca8185d7546000908152600260205260408082205490516001600160a01b039091169034908381818185875af1925050503d8060008114610b1f576040519150601f19603f3d011682016040523d82523d6000602084013e610b24565b606091505b5050905080610b645760405162461bcd60e51b815260040180806020018281038252602781526020018061419d6027913960400191505060405180910390fd5b505050565b6009546001600160a01b031681565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020610ba981610ba4610a58565b611a06565b600a90610c495760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b820191906000526020600020905b815481529060010190602001808311610c1d57829003601f168201915b50509250505060405180910390fd5b506001600160a01b03808416600081815260036020908152604080832080546001600160a01b0319908116909155948716808452600483528184208054909616909555838352600590915280822082905551909291907f9e651a8866fbea043e911d816ec254b0e3c992c06fff32d605e72362d6023bd9908490a4505050565b6060610cd3613e2a565b50604080516060810182526001600160a01b0388166000818152600c602090815290849020548352820152908101869052610d118782878787612508565b610d4c5760405162461bcd60e51b81526004018080602001828103825260218152602001806141c46021913960400191505060405180910390fd5b6001600160a01b0387166000908152600c6020526040902054610d7690600163ffffffff6125e516565b6001600160a01b0388166000818152600c602090815260408083209490945583519283523383820181905260609484018581528b51958501959095528a517f5845892132946850460bff5a0083f71031bc5bf9aadcd40f1de79423eac9b10b958d9592948d94919260808501928601918190849084905b83811015610e05578181015183820152602001610ded565b50505050905090810190601f168015610e325780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a160006060306001600160a01b0316888a6040516020018083805190602001908083835b60208310610e835780518252601f199092019160209182019101610e64565b6001836020036101000a038019825116818451168082178552505050505050905001826001600160a01b03166001600160a01b031660601b8152601401925050506040516020818303038152906040526040518082805190602001908083835b60208310610f025780518252601f199092019160209182019101610ee3565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610f64576040519150601f19603f3d011682016040523d82523d6000602084013e610f69565b606091505b509150915081610fc0576040805162461bcd60e51b815260206004820152601c60248201527f46756e6374696f6e2063616c6c206e6f74207375636365737366756c00000000604482015290519081900360640190fd5b98975050505050505050565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020610ff881610ba4610a58565b600a9061105e5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5060008381526002602052604080822080546001600160a01b0319166001600160a01b0386169081179091559051909185917f8643692ae1c12ec91fa18e50b82ed93fa314f580999a236824db6de9ae0d839b9190a3505050565b604051806040016040528060018152602001603160f81b81525081565b600b5490565b6000818152600160205260409020600201545b919050565b6001600160a01b03166000908152600c602052604090205490565b60008281526001602052604090206002015461112d90610ba4610a58565b6111685760405162461bcd60e51b815260040180806020018281038252602f815260200180613f78602f913960400191505060405180910390fd5b611172828261263f565b5050565b6008546001600160a01b031690565b4690565b611191610a58565b6001600160a01b0316816001600160a01b0316146111e05760405162461bcd60e51b815260040180806020018281038252602f815260200180614286602f913960400191505060405180910390fd5b61117282826126ae565b606061123361122e84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061271d92505050565b612798565b905060006112548260028151811061124757fe5b602002602001015161291a565b6112796112748460088151811061126757fe5b6020026020010151612a62565b612b2c565b6112898460098151811061124757fe5b6040516020018084815260200183805190602001908083835b602083106112c15780518252601f1990920191602091820191016112a2565b51815160209384036101000a6000190180199092169116179052920193845250604080518085038152938201815283519382019390932060008181526006909252929020549194505060ff1615915061134d90505760405162461bcd60e51b81526004018080602001828103825260288152602001806142096028913960400191505060405180910390fd5b6000818152600660208190526040909120805460ff19166001179055825160609161138a9161122e9161138591879190811061126757fe5b61271d565b9050611394613e54565b6113b1826003815181106113a457fe5b6020026020010151612798565b6113c18560098151811061124757fe5b815181106113cb57fe5b6020026020010151905060006113fc6113e383612798565b6000815181106113ef57fe5b6020026020010151612c9f565b6001600160a01b0380821660009081526004602052604090205491925016806114565760405162461bcd60e51b81526004018080602001828103825260228152602001806140af6022913960400191505060405180910390fd5b6001600160a01b03808216600090815260056020908152604080832054835260029091529020548751911690611493908890600890811061124757fe5b63ffffffff1916156114d65760405162461bcd60e51b815260040180806020018281038252602581526020018061408a6025913960400191505060405180910390fd5b61151e6114e98860068151811061126757fe5b6114f98960088151811061126757fe5b6115098a60078151811061126757fe5b6115198b60058151811061124757fe5b612d2f565b61156f576040805162461bcd60e51b815260206004820152601f60248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f50524f4f4600604482015290519081900360640190fd5b6115dd6115828860028151811061124757fe5b6115928960038151811061124757fe5b6115a28a60048151811061124757fe5b60001b6115b58b60058151811061124757fe5b60001b6115c88c60008151811061124757fe5b6115d88d60018151811061126757fe5b612f76565b50806001600160a01b0316638274664f6115f5610a58565b846115ff886130bf565b6040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561167b578181015183820152602001611663565b50505050905090810190601f1680156116a85780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b1580156116c957600080fd5b505af11580156116dd573d6000803e3d6000fd5b50505050505050505050505050565b6116f581610a68565b50565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b01902081565b60066020526000908152604090205460ff1681565b600061173e81610ba4610a58565b600a906117a45760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506116f56040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b81525061312d565b60006117e481610ba4610a58565b600a9061184a5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5050600780546001600160a01b0319166001600160a01b0392909216919091179055565b6004602052600090815260409020546001600160a01b031681565b604080516826a0a82faa27a5a2a760b91b8152905190819003600901902081565b60008281526001602052604081206118c8908363ffffffff6131e916565b90505b92915050565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b0190206118fd81610ba4610a58565b600a906119635760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b03848116600090815260036020526040902054161580156119a457506001600160a01b0383811660009081526004602052604090205416155b6119f5576040805162461bcd60e51b815260206004820181905260248201527f526f6f74436861696e4d616e616765723a20414c52454144595f4d4150504544604482015290519081900360640190fd5b611a008484846131f5565b50505050565b60008281526001602052604081206118c8908363ffffffff61348416565b600081565b6000611a3781610ba4610a58565b600a90611a9d5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506116f56040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613499565b6000611add81610ba4610a58565b600a90611b435760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5050600880546001600160a01b0319166001600160a01b0392909216919091179055565b60005460ff1615611bb0576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b611be16040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613537565b611c126040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613499565b611c1d600082611168565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020611c479082611168565b506000805460ff19166001179055565b60008181526001602052604081206118cb90613589565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020611cb281610ba4610a58565b600a90611d185760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b0380851660009081526003602081815260408084205488861685526004835281852054861680865293909252909220549183169290911615611d8e576001600160a01b038116600090815260036020908152604080832080546001600160a01b031916905560059091528120555b6001600160a01b038281166000908152600460205260409020541615611dd5576001600160a01b038216600090815260046020526040902080546001600160a01b03191690555b611de08686866131f5565b505050505050565b600082815260016020526040902060020154611e0690610ba4610a58565b6111e05760405162461bcd60e51b81526004018080602001828103825260308152602001806140f96030913960400191505060405180910390fd5b604080516611115413d4d25560ca1b8152905190819003600701902081565b6000611e6e81610ba4610a58565b600a90611ed45760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b038216611f1a5760405162461bcd60e51b815260040180806020018281038252602d815260200180613fa7602d913960400191505060405180910390fd5b50600980546001600160a01b0319166001600160a01b0392909216919091179055565b6007546001600160a01b031690565b6001600160a01b03831673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee1415611fa85760405162461bcd60e51b81526004018080602001828103825260248152602001806141e56024913960400191505060405180910390fd5b611a00848484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061208e92505050565b60056020526000908152604090205481565b6002602052600090815260409020546001600160a01b031681565b6003602052600090815260409020546001600160a01b031681565b6000333014156120895760606000368080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505050503601516001600160a01b03169150610a659050565b503390565b6001600160a01b03808316600090815260056020908152604080832054600390925290912054909116158015906120c457508015155b6120ff5760405162461bcd60e51b81526004018080602001828103825260228152602001806140af6022913960400191505060405180910390fd5b6000818152600260205260409020546001600160a01b0316806121535760405162461bcd60e51b81526004018080602001828103825260248152602001806140176024913960400191505060405180910390fd5b6001600160a01b0385166121ae576040805162461bcd60e51b815260206004820152601e60248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f555345520000604482015290519081900360640190fd5b806001600160a01b031663e375b64e6121c5610a58565b8787876040518563ffffffff1660e01b815260040180856001600160a01b03166001600160a01b03168152602001846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561225c578181015183820152602001612244565b50505050905090810190601f1680156122895780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b1580156122ab57600080fd5b505af11580156122bf573d6000803e3d6000fd5b50505050606085858560405160200180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015612338578181015183820152602001612320565b50505050905090810190601f1680156123655780820380516001836020036101000a031916815260200191505b5060408051808303601f19018152828252600780546009546611115413d4d25560ca1b865284519586900390920185206020808701828152878701968752855160608901528551959d506001600160a01b039384169c506316f198319b5092909316985096508a955093608001919085019080838360005b838110156123f55781810151838201526020016123dd565b50505050905090810190601f1680156124225780820380516001836020036101000a031916815260200191505b5093505050506040516020818303038152906040526040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561249b578181015183820152602001612483565b50505050905090810190601f1680156124c85780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b1580156124e857600080fd5b505af11580156124fc573d6000803e3d6000fd5b50505050505050505050565b60006001600160a01b03861661254f5760405162461bcd60e51b81526004018080602001828103825260258152602001806141296025913960400191505060405180910390fd5b600161256261255d87613594565b613620565b83868660405160008152602001604052604051808581526020018460ff1660ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa1580156125bc573d6000803e3d6000fd5b505050602060405103516001600160a01b0316866001600160a01b031614905095945050505050565b6000828201838110156118c8576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600082815260016020526040902061265d908263ffffffff61366c16565b156111725761266a610a58565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b60008281526001602052604090206126cc908263ffffffff61368116565b15611172576126d9610a58565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612725613e54565b600082511161277b576040805162461bcd60e51b815260206004820152601f60248201527f524c505265616465723a20494e56414c49445f42595445535f4c454e47544800604482015290519081900360640190fd5b506040805180820190915281518152602082810190820152919050565b60606127a382613696565b6127f4576040805162461bcd60e51b815260206004820152601860248201527f524c505265616465723a204954454d5f4e4f545f4c4953540000000000000000604482015290519081900360640190fd5b60006127ff836136c2565b905060608167ffffffffffffffff8111801561281a57600080fd5b5060405190808252806020026020018201604052801561285457816020015b612841613e54565b8152602001906001900390816128395790505b5090506000612866856020015161374e565b855190915081146128a85760405162461bcd60e51b81526004018080602001828103825260278152602001806142316027913960400191505060405180910390fd5b60006128b786602001516137e2565b60208701510190506000805b8581101561290e576128d48361374e565b91506040518060400160405280838152602001848152508582815181106128f757fe5b6020908102919091010152918101916001016128c3565b50929695505050505050565b600061292582613696565b15612977576040805162461bcd60e51b815260206004820181905260248201527f524c505265616465723a204445434f44494e475f4c4953545f41535f55494e54604482015290519081900360640190fd5b8151602110156129ce576040805162461bcd60e51b815260206004820152601e60248201527f524c505265616465723a20494e56414c49445f55494e545f4c454e4754480000604482015290519081900360640190fd5b60006129dd836020015161374e565b83519091508114612a1f5760405162461bcd60e51b81526004018080602001828103825260278152602001806142b56027913960400191505060405180910390fd5b6000612a2e84602001516137e2565b84516020808701518301805193945091849003929190831015612a5857826020036101000a820491505b5095945050505050565b60606000612a73836020015161374e565b83519091508114612ab55760405162461bcd60e51b81526004018080602001828103825260288152602001806140d16028913960400191505060405180910390fd5b6000612ac484602001516137e2565b845190915081900360608167ffffffffffffffff81118015612ae557600080fd5b506040519080825280601f01601f191660200182016040528015612b10576020820181803683370190505b5090506000816020019050612a58848860200151018285613845565b604080516020810190915260008152815160609190156118cb57600080612b54600086613890565b60f81c90506001811480612b6b57508060ff166003145b15612bfa57600185516002020367ffffffffffffffff81118015612b8e57600080fd5b506040519080825280601f01601f191660200182016040528015612bb9576020820181803683370190505b5092506000612bc9600187613890565b90508084600081518110612bd957fe5b60200101906001600160f81b031916908160001a9053506001925050612c4b565b600285516002020367ffffffffffffffff81118015612c1857600080fd5b506040519080825280601f01601f191660200182016040528015612c43576020820181803683370190505b509250600091505b60ff82165b8351811015612c9657612c6b8360ff16820360020187613890565b848281518110612c7757fe5b60200101906001600160f81b031916908160001a905350600101612c50565b50505092915050565b6000612caa82613696565b15612ce65760405162461bcd60e51b815260040180806020018281038252602381526020018061417a6023913960400191505060405180910390fd5b8151601514612d265760405162461bcd60e51b81526004018080602001828103825260218152602001806142dc6021913960400191505060405180910390fd5b6118cb8261291a565b6000612d39613e54565b612d428461271d565b90506060612d4f82612798565b905060608085600082612d618b612b2c565b9050805160001415612d7d576000975050505050505050612f6e565b60005b8651811015612f65578151831115612da357600098505050505050505050612f6e565b612dbf878281518110612db257fe5b60200260200101516130bf565b955085805190602001208414612de057600098505050505050505050612f6e565b612def8782815181106113a457fe5b9450845160111415612eac578151831415612e4b578c80519060200120612e1c8660108151811061126757fe5b805190602001201415612e3a57600198505050505050505050612f6e565b600098505050505050505050612f6e565b6000828481518110612e5957fe5b016020015160f81c90506010811115612e7e5760009950505050505050505050612f6e565b612e9d868260ff1681518110612e9057fe5b60200260200101516138ed565b94505060019290920191612f5d565b845160021415612e3a576000612ed2612ecb8760008151811061126757fe5b848661398c565b905082518185011415612f28578d80519060200120612ef78760018151811061126757fe5b805190602001201415612f165760019950505050505050505050612f6e565b60009950505050505050505050612f6e565b80612f3f5760009950505050505050505050612f6e565b8084019350612f5486600181518110612e9057fe5b9450612f5d9050565b600101612d80565b50505050505050505b949350505050565b600854604080516320a9cea560e11b81526004810185905290516000928392839283926001600160a01b0316916341539d4a9160248083019260a0929190829003018186803b158015612fc857600080fd5b505afa158015612fdc573d6000803e3d6000fd5b505050506040513d60a0811015612ff257600080fd5b5080516020820151606090920151909450909250905061306161301b8b8463ffffffff613a6b16565b6040805160208082018f90528183018e9052606082018d905260808083018d90528351808403909101815260a0909201909252805191012090858863ffffffff613aad16565b6130b2576040805162461bcd60e51b815260206004820181905260248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f484541444552604482015290519081900360640190fd5b9998505050505050505050565b606080826000015167ffffffffffffffff811180156130dd57600080fd5b506040519080825280601f01601f191660200182016040528015613108576020820181803683370190505b50905060008160200190506131268460200151828660000151613845565b5092915050565b6040518060800160405280604f815260200161403b604f913980516020918201208251838301206040805180820190915260018152603160f81b930192909252907fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc630613198611185565b604080516020808201979097528082019590955260608501939093526001600160a01b03909116608084015260a0808401919091528151808403909101815260c090920190528051910120600b5550565b60006118c88383613c03565b6000818152600260205260409020546001600160a01b03166132485760405162461bcd60e51b815260040180806020018281038252602a815260200180613f07602a913960400191505060405180910390fd5b6001600160a01b03808416600081815260036020908152604080832080549588166001600160a01b031996871681179091558084526004835281842080549096168517909555838352600590915280822085905551849392917f9e651a8866fbea043e911d816ec254b0e3c992c06fff32d605e72362d6023bd991a4604080516001600160a01b0380861660208084019190915281861683850152606083810186905284518085038201815260808086018088526007546009546826a0a82faa27a5a2a760b91b9092528851978890036089018820888701818152898b019a8b528551968a019690965284519499918816986316f1983198939093169690958a9590949293909201919085019080838360005b8381101561337357818101518382015260200161335b565b50505050905090810190601f1680156133a05780820380516001836020036101000a031916815260200191505b5093505050506040516020818303038152906040526040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015613419578181015183820152602001613401565b50505050905090810190601f1680156134465780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b15801561346657600080fd5b505af115801561347a573d6000803e3d6000fd5b5050505050505050565b60006118c8836001600160a01b038416613c67565b806040516020018082805190602001908083835b602083106134cc5780518252601f1990920191602091820191016134ad565b51815160209384036101000a60001901801990921691161790527f3a20494e53554646494349454e545f5045524d495353494f4e530000000000009190930190815260408051808303600519018152601a909201905280516111729550600a94509201919050613e6e565b60005460ff1615613580576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b611c478161312d565b60006118cb82613c7f565b6000604051806080016040528060438152602001613fd460439139805190602001208260000151836020015184604001518051906020012060405160200180858152602001848152602001836001600160a01b03166001600160a01b03168152602001828152602001945050505050604051602081830303815290604052805190602001209050919050565b600061362a6110d6565b82604051602001808061190160f01b81525060020183815260200182815260200192505050604051602081830303815290604052805190602001209050919050565b60006118c8836001600160a01b038416613c83565b60006118c8836001600160a01b038416613ccd565b6020810151805160009190821a9060c08210156136b8576000925050506110ef565b5060019392505050565b6000806000905060006136d884602001516137e2565b602085015185519181019250015b80821015613745576136f78261374e565b820191508082111561373a5760405162461bcd60e51b815260040180806020018281038252602c81526020018061414e602c913960400191505060405180910390fd5b6001909201916136e6565b50909392505050565b80516000908190811a60808110156137695760019150613126565b60b881101561377e57607e1981019150613126565b60c08110156137ab5760b78103600185019450806020036101000a85510460018201810193505050613126565b60f88110156137c05760be1981019150613126565b60019390930151602084900360f7016101000a900490920160f5190192915050565b8051600090811a60808110156137fc5760009150506110ef565b60b8811080613817575060c08110801590613817575060f881105b156138265760019150506110ef565b60c081101561383a5760b5190190506110ef565b60f5190190506110ef565b8061384f57610b64565b5b6020811061386f578251825260209283019290910190601f1901613850565b915181516020939093036101000a6000190180199091169216919091179052565b600060028306156138c15760108260028504815181106138ac57fe5b016020015160f81c816138bb57fe5b066138e3565b60108260028504815181106138d257fe5b016020015160f81c816138e157fe5b045b60f81b9392505050565b6000806138fd836020015161374e565b8351909150811461393f5760405162461bcd60e51b815260040180806020018281038252602e815260200180614258602e913960400191505060405180910390fd5b825160211461397f5760405162461bcd60e51b8152600401808060200182810382526025815260200180613f536025913960400191505060405180910390fd5b5050602001516001015190565b600080606061399a86612b2c565b90506060815167ffffffffffffffff811180156139b657600080fd5b506040519080825280601f01601f1916602001820160405280156139e1576020820181803683370190505b509050845b82518601811015613a3b5760008782815181106139ff57fe5b602001015160f81c60f81b9050808388840381518110613a1b57fe5b60200101906001600160f81b031916908160001a905350506001016139e6565b50808051906020012082805190602001201415613a5b5781519250613a60565b600092505b509095945050505050565b60006118c883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250613d93565b60006020825181613aba57fe5b0615613b04576040805162461bcd60e51b8152602060048201526014602482015273092dcecc2d8d2c840e0e4dedecc40d8cadccee8d60631b604482015290519081900360640190fd5b60006020835181613b1157fe5b0490508060020a8510613b63576040805162461bcd60e51b81526020600482015260156024820152744c65616620696e64657820697320746f6f2062696760581b604482015290519081900360640190fd5b60008660205b85518111613bf55785810151925060028806613bb55781836040516020018083815260200182815260200192505050604051602081830303815290604052805190602001209150613be7565b828260405160200180838152602001828152602001925050506040516020818303038152906040528051906020012091505b600288049750602001613b69565b509094149695505050505050565b81546000908210613c455760405162461bcd60e51b8152600401808060200182810382526022815260200180613f316022913960400191505060405180910390fd5b826000018281548110613c5457fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000613c8f8383613c67565b613cc5575081546001818101845560008481526020808220909301849055845484825282860190935260409020919091556118cb565b5060006118cb565b60008181526001830160205260408120548015613d895783546000198083019190810190600090879083908110613d0057fe5b9060005260206000200154905080876000018481548110613d1d57fe5b600091825260208083209091019290925582815260018981019092526040902090840190558654879080613d4d57fe5b600190038181906000526020600020016000905590558660010160008781526020019081526020016000206000905560019450505050506118cb565b60009150506118cb565b60008184841115613e225760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015613de7578181015183820152602001613dcf565b50505050905090810190601f168015613e145780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60405180606001604052806000815260200160006001600160a01b03168152602001606081525090565b604051806040016040528060008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10613eaf57805160ff1916838001178555613edc565b82800160010185558215613edc579182015b82811115613edc578251825591602001919060010190613ec1565b50613ee8929150613eec565b5090565b610a6591905b80821115613ee85760008155600101613ef256fe526f6f74436861696e4d616e616765723a20544f4b454e5f545950455f4e4f545f535550504f52544544456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473524c505265616465723a20494e56414c49445f55494e545f5354524943545f4c454e475448416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e74526f6f74436861696e4d616e616765723a20494e56414c49445f4348494c445f434841494e5f414444524553534d6574615472616e73616374696f6e2875696e74323536206e6f6e63652c616464726573732066726f6d2c62797465732066756e6374696f6e5369676e617475726529526f6f74436861696e4d616e616765723a20494e56414c49445f544f4b454e5f54595045454950373132446f6d61696e28737472696e67206e616d652c737472696e672076657273696f6e2c6164647265737320766572696679696e67436f6e74726163742c627974657333322073616c7429526f6f74436861696e4d616e616765723a20494e56414c49445f4252414e43485f4d41534b526f6f74436861696e4d616e616765723a20544f4b454e5f4e4f545f4d4150504544524c505265616465723a2042595445535f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b654e61746976654d6574615472616e73616374696f6e3a20494e56414c49445f5349474e4552524c505265616465723a204e554d5f4954454d535f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a204445434f44494e475f4c4953545f41535f41444452455353526f6f74436861696e4d616e616765723a2045544845525f5452414e534645525f4641494c45445369676e657220616e64207369676e617475726520646f206e6f74206d61746368526f6f74436861696e4d616e616765723a20494e56414c49445f524f4f545f544f4b454e526f6f74436861696e4d616e616765723a20455849545f414c52454144595f50524f434553534544524c505265616465723a204c4953545f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a2055494e545f5354524943545f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66524c505265616465723a2055494e545f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a20494e56414c49445f414444524553535f4c454e475448a164736f6c6343000606000a","storage":{"0x0":"0x1","0x7":"0xe0afc4e9e03e4aa67257df7a2eca77454309789d","0x8":"0xbe5deac45dd1ca4ee18dc2d585d84d3d3cb82b0d","0x9":"0x0","0xa":"0x55","0xb":"0x2603903cfd8895fdde3da4d607d44203e86098073e351022fd12745d3436e93a","0xeb5be412f275a18f6e4d622aee4ff40b21467c926224771b782d4c095d1444b":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x162b27a30e878e20728deaa5c9814fd57ccf962b998b8733ce65749bc61c552f":"0x58a175bebc8ec21a94ea63aa5a28743945940ee6","0x1a93463c7bbb7215968307c7cd357c2009c10df2a511dd62c1189098e4f3249b":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x415fec6a4fd7706b96d3a0a30121284bc5e2b28b978c20486c9f5e20d44fc781":"0x1","0x4dc1f0160d96279adc262db20edcc15527e32cb28eda582becc5ac0bc453be34":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x5fc73aa2ab567caef8745f0709fae506c01972ffb297bd9225bc262d6e87746f":"0x1","0x6ce1cd05966f090b8daa7b2ee7f80930bbb39d19b693045725fbae5fa44fda90":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0xa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb49":"0x1","0xc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a8":"0x526f6f74436861696e4d616e616765723a20494e53554646494349454e545f50","0xc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a9":"0x45524d495353494f4e5300000000000000000000000000000000000000000000","0xd61ba0007bb57e62613f82f528c06ba46d36349cf5be567b12f878ef04849a7d":"0x1","0xf960df71fab73e593428c10f56f55e7ea46985963177def0458b97f1afec9576":"0xcf4e755f204163e9213ba8b1305036e386579ccc70731c25c62a101197811f48"}},"0x287dee389caaa49edc112888f2bcfd927b472e25":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c80634f89059e1461002d575b5f80fd5b61004061003b366004610125565b610054565b604051901515815260200160405180910390f35b5f806100985f85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101029050565b60ff1690505f811180156100f857506100f36100b5826001610191565b85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101029050565b60ff16155b9150505b92915050565b5f828281518110610115576101156101b0565b016020015160f81c905092915050565b5f8060208385031215610136575f80fd5b823567ffffffffffffffff8082111561014d575f80fd5b818501915085601f830112610160575f80fd5b81358181111561016e575f80fd5b86602082850101111561017f575f80fd5b60209290920196919550909350505050565b808201808211156100fc57634e487b7160e01b5f52601160045260245ffd5b634e487b7160e01b5f52603260045260245ffdfea164736f6c6343000818000a","storage":{}},"0x3198fc981626687f4b5bdf0fbeabb0a5e0489c03":{"nonce":1,"balance":"0x8ac7230489e80000","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0x1","0x97":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x13cf90498be59d359caa5b6092b365feab4610605d7107d1f05f8e94ac955652":"0x1","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xc2110388dd54228ae0a834119457ede938bf0b57","0x412386de53449251cbf7ce1f4c6a038bf9c0746e62d331b08ef0c3fa7d0ab672":"0x4fbf7b2f171336958be5d15ff762a5cff5363568","0x60793a5062d506d35cc8f1beda67ee5028c16bfcd9c923d5bfc439c04bd929b1":"0x6ac8f19d1e0f81147cdf2a1e53cb1f4e18417204","0x75df8b43665bf2e4996a686913c4c278ca7aed85444740ca40355b1c9a94b504":"0x1","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xf851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004":"0xc965345edac823d56812cd20a10316233916a605"}},"0x39a27956b78d00a4e00ea8833ff0947410a2933f":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xc9":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0xca":"0x4a3c194eb88966178bfdd81744dddafed611b830","0xcb":"0x4872cc1be60a9db9c880a0a437da7a6af134f08f","0xcc":"0xf8c26340c1eaea6c7ff1760b25005e1306953572","0xce":"0xce4bb7dc1eb9dce75743de6a4b48534fd427ef51","0xc6892776bb3da1e1199a03e0d3131aea089754b59c557b750c478ebc85ccaa":"0x6e66740000000000000000000000000000000000000000000000000000000006","0x6cb37a6d512a1e227e627eddc133023e6d00bfedff31a600abb75aa93e9a4a0":"0x6b7265737573000000000000000000000000000000000000000000000000000c","0x8e966fe8b9b43d48017ba1eb562ced91049de778396aaa438773698b3fa8fb6":"0x0","0x94a32b1c7b189ce7293f7ae444cdcab6800d858454022d15355d5ecc5b32b26":"0x0","0xa4b2d73a9f36ca5eed107f7c3d2ba877fb7537d447256726bcde9bac9e9aaee":"0x0","0xe0e3ab102c26f13da20123aa517b31e99cf65b7b720ba0dd7138012fd23eff2":"0x0","0x1203b5e51c7d5be6da42b83f22878d3583e53123857d27fc3cff3df46fb9126c":"0x0","0x13477730039a04f4290adf0e48e98b233579c040281545e4446ce662ba56a9be":"0x7800000000000000000000000000000000000000000000000000000000000002","0x1e06d49ce7b00846691778f302e94a3ac9c2633d745ebe73d68353c941e68dee":"0x626974636f696e0000000000000000000000000000000000000000000000000e","0x1e99199375610ffe00d28ee5827c616cf6469be3de2a2f738d955eb6b62127e8":"0x1","0x21e80eded1b2e1c5d976c85e89dde60bd4e99a8d66346af0e359ac854bceba44":"0x0","0x254d9ade81439f29723741d6ff407eab1fe03caffb042bd85e53955e41fb9792":"0x616c74696d697374000000000000000000000000000000000000000000000010","0x269db12b2cd2aeb7d5f52eda16edb1d211ccbea12da1ebfa60ed5f8f396c1d04":"0x0","0x2a3f03435eedee01de7e1c4386b04ca8469edd8df00408cd6d2b058bce1cecfa":"0x0","0x323a3cb169499006d6635c58232c8c58e23c20bf9e1d309d6b3bc6fb2c7a093d":"0x0","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x229c56b7805ab5935a883207f6a6bd5847e65aee","0x37aac864d4715a975bd45cae6be99de9f7968cf995917cc7f8192940fb62acbf":"0x0","0x3f69f26894a7ae0f7a7aa6c2d77935589dabbff6435aee960da15064dea7cd59":"0x64616f0000000000000000000000000000000000000000000000000000000006","0x467a68fda3230ce33f64703ebdbd91caccf235403282ae9fe390675ef39e9c94":"0x0","0x50ae8c017c4c1fddbe9509bd2b916f5dd9da11ddb639f2a4230322f49a41ac87":"0x1","0x5496787fc1ebdfeba375028c1865f13fbb1d63c0caa356ccc1b29a80f3ebd622":"0x0","0x576dd8d1a7b74aba0a99a213f50d74aa642a2c80bd5a854b24aac7568afea0f7":"0x626974676574000000000000000000000000000000000000000000000000000c","0x5b54338c052ce22ec334b6c5a19c4b122701c5fd4d3a2a5f5890f57050e0aafa":"0x626c6f636b636861696e00000000000000000000000000000000000000000014","0x5d9de30f0e5e02628e726fd23e310ee9e64489866fa6959825148a25d40e4c83":"0x0","0x5e2d99ab4a1a153039a4b2e068d64802da8735071a2d018ee9d04297945bed00":"0x0","0x670006c4193123492fb25db465ed52e62aff2f076289f4f1a5f167237f5e579d":"0x6d616e676100000000000000000000000000000000000000000000000000000a","0x6deac161c541001c0d79afaf7b809418785fa5ca6533d86bcf312e7213ee08fc":"0x0","0x6eaa0db35203bc0d58aff54ca630dd125b27758aa6204f7a11c0617f7c2fa776":"0x706f670000000000000000000000000000000000000000000000000000000006","0x732abe4661f55132b7f119cab9a9985be6630299dfc92870cc910f147795bc44":"0x0","0x743eb517f46c12bb593097087a972028308ce2e819a76cfb5488751f9d1ca34a":"0x7265616c6d00000000000000000000000000000000000000000000000000000a","0x750dfb39c9afc828c341e1a8e8fdca0b3914baf43303e1ef21fbfe8ec8ee016a":"0x0","0x7cbf647b96a1d1a533ea4bc3a4a8a78f166bd91e6a96afb12f063fef0e9cb960":"0x0","0x7dc972254779cfb51850c0eaccfcb71207822b3c10d4840567bec3dfbf0dff13":"0x636f6d0000000000000000000000000000000000000000000000000000000006","0x7dfa160584f41570c33e8e6c42c5314a7b45ddc162f99fd101ccc10c7b5b3dd3":"0x77616c6c6574000000000000000000000000000000000000000000000000000c","0x868a5f38a2d46181ffad442d7bc5b337b3c349a58e4979f2901786c6123b996c":"0x6b6c65766572000000000000000000000000000000000000000000000000000c","0x87b2c647061aef22ef1aba96c67f440d471dfac27e9873ff4a03793b402d32ee":"0x706f6c79676f6e0000000000000000000000000000000000000000000000000e","0x893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e":"0x7c3c91245769c8b7450ad522792dec4bd4bf797f","0x91e744007b4b3621bec7c01ea851c3f48cf196b9cc6c566a48cec8c5faac6e62":"0x0","0x92c5a28dd4caaa50e0a8370243a5c600f64349e8b03604b403cbe111b50f1f7b":"0x3838380000000000000000000000000000000000000000000000000000000006","0x947936973a3a21b10c8980e1a8939a55c7339d302161884a3de05cf090e812f0":"0x1","0x9535d3ea47c5e1398d3405b4fadc73de6b1b1e6a66f674a8886ab7a6c873a390":"0x63727970746f000000000000000000000000000000000000000000000000000c","0x9956a4e94676c45844be3667f17e077c7cb53aa4e87e5a71d65e56b291232715":"0x676f000000000000000000000000000000000000000000000000000000000004","0x9c6ba1ddff1ffbc14dcdc1f97db867554a42a39e00e892c7e882dbb3dca89ebf":"0x6869000000000000000000000000000000000000000000000000000000000004","0x9f836a0f81651f597cee678b440ba8c853c633e6654809efb83d4b22aff06fb2":"0x616e696d6500000000000000000000000000000000000000000000000000000a","0x9fecf1e12f4b8ec337da992721a0f27526ddbd6be1e77885ab963c09afcf0fc1":"0x0","0xab129a0f8c6cf8d160116a28abc7369c2f8a098fc023f00f07dc3e1d5798e47a":"0x0","0xb04c0eb6f034d9a3179a4e6f953bdf8afc78ba2cdcfbc775076e1c2a0bb67818":"0x0","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xbe51b53bc2060a7a6419622b5a9adc00b50a57e6aa741882f2f60f95d4580078":"0x636c617900000000000000000000000000000000000000000000000000000008","0xbf350522e335b8ab3da1d099c93cdc09179f1e15ea6aa1acfaa4afb1ef87eabf":"0x756e73746f707061626c65000000000000000000000000000000000000000016","0xcbf7a3d53e0851ac15a415b99c2ba95a2497dd9dd44068ac261bcbdafdfe8472":"0x707564677900000000000000000000000000000000000000000000000000000a","0xcf4411216f3fdf787d1cfe037bbcfa0d5293d83a8082f8e4141266399e2a784b":"0x61757374696e000000000000000000000000000000000000000000000000000c","0xcfdbac664139565f92cce149a345e5f19355d25b3eb8a70c549d5da3283a15b8":"0x7a696c0000000000000000000000000000000000000000000000000000000006","0xcfeb64c30a93ecd7224f854b09be57bb6b3962e739fa8e3ea3a1851502474c07":"0x1","0xe03c9c593ce8661bd39f77653f7ca6c43f093aa7f3b95890f309f67b57f39e74":"0x0","0xe50c62c16d12655dfdbd61c232155e5c3a1cf61977d2d8e7449cb88611b73832":"0x0","0xeeb0b17d77f2c9069ad443f3927c0802d98d5553e52b17c985d45d4a10b79566":"0x62696e616e636575730000000000000000000000000000000000000000000012","0xf562ef0db022f25a957fb6e49aa07004f14a50ed5b23279e9ac25b4632f7bf1c":"0x0","0xf6776268d6c5847a771099280c742d684a4b22bac609ba615de51f7f893ff2bc":"0x0"}},"0x3f1194b9019002863ad0dbbe295294547c0d36a9":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100b1575f3560e01c80635b0fc9c31161006e5780635b0fc9c3146101a55780635ef2c7f0146101b8578063a22cb465146101cb578063cf408823146101de578063e985e9c5146101f1578063f79fe5381461023c575f80fd5b80630178b8bf146100b557806302571be3146100fd57806306ab59231461011057806314ab90381461013157806316a25cbd146101465780631896f70a14610192575b5f80fd5b6100e06100c3366004610785565b5f908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100e061010b366004610785565b610266565b61012361011e3660046107b7565b610292565b6040519081526020016100f4565b61014461013f366004610800565b61035f565b005b610179610154366004610785565b5f90815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100f4565b6101446101a036600461082a565b61042e565b6101446101b336600461082a565b6104ef565b6101446101c636600461084b565b61058e565b6101446101d936600461089e565b6105af565b6101446101ec3660046108d7565b61061a565b61022c6101ff366004610921565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205460ff1690565b60405190151581526020016100f4565b61022c61024a366004610785565b5f908152602081905260409020546001600160a01b0316151590565b5f818152602081905260408120546001600160a01b031630810361028c57505f92915050565b92915050565b5f8381526020819052604081205484906001600160a01b0316338114806102db57506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b6102e3575f80fd5b604080516020808201899052818301889052825180830384018152606090920190925280519101206103158186610635565b6040516001600160a01b0386168152869088907fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829060200160405180910390a39695505050505050565b5f8281526020819052604090205482906001600160a01b0316338114806103a857506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b6103b0575f80fd5b60405167ffffffffffffffff8416815284907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a250505f91825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b5f8281526020819052604090205482906001600160a01b03163381148061047757506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b61047f575f80fd5b6040516001600160a01b038416815284907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a250505f9182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b5f8281526020819052604090205482906001600160a01b03163381148061053857506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b610540575f80fd5b61054a8484610635565b6040516001600160a01b038416815284907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a250505050565b5f61059a868686610292565b90506105a7818484610662565b505050505050565b335f8181526001602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b61062484846104ef565b61062f848383610662565b50505050565b5f9182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b5f838152602081905260409020600101546001600160a01b038381169116146106e6575f838152602081815260409182902060010180546001600160a01b0319166001600160a01b038616908117909155915191825284917f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a0910160405180910390a25b5f8381526020819052604090206001015467ffffffffffffffff828116600160a01b9092041614610780575f8381526020818152604091829020600101805467ffffffffffffffff60a01b1916600160a01b67ffffffffffffffff861690810291909117909155915191825284917f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa68910160405180910390a25b505050565b5f60208284031215610795575f80fd5b5035919050565b80356001600160a01b03811681146107b2575f80fd5b919050565b5f805f606084860312156107c9575f80fd5b83359250602084013591506107e06040850161079c565b90509250925092565b803567ffffffffffffffff811681146107b2575f80fd5b5f8060408385031215610811575f80fd5b82359150610821602084016107e9565b90509250929050565b5f806040838503121561083b575f80fd5b823591506108216020840161079c565b5f805f805f60a0868803121561085f575f80fd5b85359450602086013593506108766040870161079c565b92506108846060870161079c565b9150610892608087016107e9565b90509295509295909350565b5f80604083850312156108af575f80fd5b6108b88361079c565b9150602083013580151581146108cc575f80fd5b809150509250929050565b5f805f80608085870312156108ea575f80fd5b843593506108fa6020860161079c565b92506109086040860161079c565b9150610916606086016107e9565b905092959194509250565b5f8060408385031215610932575f80fd5b61093b8361079c565b91506108216020840161079c56fea164736f6c6343000818000a","storage":{"0xdd4f47a3b6f87903b728feed7a23273bd8de58e4fa257d37a74a5881e5d92ff":"0xf670681605efc4efc804f5a9b97ee89520473d56","0x14ce109f1cffdc11aa7355660be720f902291be09fb159b4c578958cd0f533bc":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x14ce109f1cffdc11aa7355660be720f902291be09fb159b4c578958cd0f533bd":"0x0","0x1e2c8528d7e8e90443ad0a4e37b6f2b1daed719a574ce3a0c347063e8d839d50":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1e2c8528d7e8e90443ad0a4e37b6f2b1daed719a574ce3a0c347063e8d839d51":"0x0","0x2fb4213711fd985fc1fb1ea2bfa660b0b37fd50c6c74ab531d9b54b29dd5177e":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2fb4213711fd985fc1fb1ea2bfa660b0b37fd50c6c74ab531d9b54b29dd5177f":"0x0","0x859ecef2e168dc10231b000bd53493b42bc9d944cac29d94582c1e1d43592131":"0xc965345edac823d56812cd20a10316233916a605","0x8878c6daefcfc78c7f181d00d719b4a0612dd3e65cafeb72507d15c036a9f690":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0xe4fdf45c2f8d198854f8823809c7a988eeaaa493","0xfb5568c6845cf0d5915af088a5d8ba90a5ff735e102c9a79609ef7d043f1108c":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xfb5568c6845cf0d5915af088a5d8ba90a5ff735e102c9a79609ef7d043f1108d":"0x0"}},"0x4872cc1be60a9db9c880a0a437da7a6af134f08f":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100935760003560e01c80637362d9c8116100665780637362d9c8146101285780637b1039991461014e57806399e0dd7c14610172578063bb5f747b146101e2578063d6cd94731461020857610093565b806310154bad14610098578063291d9549146100c05780633af32abf146100e65780634c5a628c14610120575b600080fd5b6100be600480360360208110156100ae57600080fd5b50356001600160a01b0316610210565b005b6100be600480360360208110156100d657600080fd5b50356001600160a01b0316610260565b61010c600480360360208110156100fc57600080fd5b50356001600160a01b03166102ad565b604080519115158252519081900360200190f35b6100be6102c6565b6100be6004803603602081101561013e57600080fd5b50356001600160a01b03166102d1565b61015661031e565b604080516001600160a01b039092168252519081900360200190f35b6100be6004803603602081101561018857600080fd5b8101906020810181356401000000008111156101a357600080fd5b8201836020820111156101b557600080fd5b803590602001918460018302840111640100000000831117156101d757600080fd5b50909250905061032d565b61010c600480360360208110156101f857600080fd5b50356001600160a01b0316610404565b6100be610416565b61021933610404565b6102545760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d8161041f565b50565b61026933610404565b6102a45760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d81610467565b60006102c060018363ffffffff6104af16565b92915050565b6102cf33610516565b565b6102da33610404565b6103155760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d8161055e565b6002546001600160a01b031690565b610336336102ad565b6103715760405162461bcd60e51b815260040180806020018281038252603a815260200180610712603a913960400191505060405180910390fd5b6002546040516369426cbd60e11b8152602060048201908152602482018490526001600160a01b039092169163d284d97a91859185918190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b1580156103e857600080fd5b505af11580156103fc573d6000803e3d6000fd5b505050505050565b60006102c0818363ffffffff6104af16565b6102cf33610467565b61043060018263ffffffff6105a616565b6040516001600160a01b038216907fee1504a83b6d4a361f4c1dc78ab59bfa30d6a3b6612c403e86bb01ef2984295f90600090a250565b61047860018263ffffffff61062716565b6040516001600160a01b038216907f270d9b30cf5b0793bbfd54c9d5b94aeb49462b8148399000265144a8722da6b690600090a250565b60006001600160a01b0382166104f65760405162461bcd60e51b81526004018080602001828103825260228152602001806106b06022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b61052760008263ffffffff61062716565b6040516001600160a01b038216907f0a8eb35e5ca14b3d6f28e4abf2f128dbab231a58b56e89beb5d636115001e16590600090a250565b61056f60008263ffffffff6105a616565b6040516001600160a01b038216907f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129990600090a250565b6105b082826104af565b15610602576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b61063182826104af565b61066c5760405162461bcd60e51b815260040180806020018281038252602181526020018061068f6021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f206164647265737357686974656c69737441646d696e526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c69737441646d696e20726f6c6557686974656c6973746564526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c697374656420726f6c65a265627a7a72315820debca60946c0819dc5b5c2756c5c1dd8dd8a46f2429fa8a43a4f4362af3030c164736f6c634300050c0032","storage":{"0x2":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x5ac40fcee41fb0272a935f6e51e963102fba5db6f20e897e9361f0347eb2cae6":"0x1","0xdc4aeb95a779c8b92b845e3a94044db8ff2e43acc37da18c4b35a6bbad7c122f":"0x1"}},"0x49da8861c65460639925febe1fb4b5b59b443082":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f7e83aee1461002d575b5f80fd5b61004061003b3660046101ac565b610054565b604051901515815260200160405180910390f35b5f602082146100a95760405162461bcd60e51b815260206004820152601a60248201527f496e76616c6964207368613235362068617368206c656e677468000000000000604482015260640160405180910390fd5b6100eb5f84848080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101459050565b600286866040516100fd929190610213565b602060405180830381855afa158015610118573d5f803e3d5ffd5b5050506040513d601f19601f8201168201806040525081019061013b9190610222565b1495945050505050565b81515f90610154836020610239565b111561015e575f80fd5b50016020015190565b5f8083601f840112610177575f80fd5b50813567ffffffffffffffff81111561018e575f80fd5b6020830191508360208285010111156101a5575f80fd5b9250929050565b5f805f80604085870312156101bf575f80fd5b843567ffffffffffffffff808211156101d6575f80fd5b6101e288838901610167565b909650945060208701359150808211156101fa575f80fd5b5061020787828801610167565b95989497509550505050565b818382375f9101908152919050565b5f60208284031215610232575f80fd5b5051919050565b8082018082111561025857634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x4a3c194eb88966178bfdd81744dddafed611b830":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061009e5760003560e01c806398650275116100665780639865027514610305578063aa271e1a1461030d578063b2da297914610347578063be362e2e146103c5578063c36c2125146104fe5761009e565b80634c0b0ed2146100a35780637b103999146101595780637caf3ad81461017d5780638ad364f814610258578063983b2d56146102df575b600080fd5b610157600480360360408110156100b957600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156100e357600080fd5b8201836020820111156100f557600080fd5b803590602001918460018302840111600160201b8311171561011657600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506105bd945050505050565b005b61016161074c565b604080516001600160a01b039092168252519081900360200190f35b6101576004803603608081101561019357600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156101bd57600080fd5b8201836020820111156101cf57600080fd5b803590602001918460018302840111600160201b831117156101f057600080fd5b919390926001600160a01b0383351692604081019060200135600160201b81111561021a57600080fd5b82018360208201111561022c57600080fd5b803590602001918460018302840111600160201b8311171561024d57600080fd5b50909250905061075b565b6101576004803603606081101561026e57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561029857600080fd5b8201836020820111156102aa57600080fd5b803590602001918460018302840111600160201b831117156102cb57600080fd5b9193509150356001600160a01b0316610957565b610157600480360360208110156102f557600080fd5b50356001600160a01b0316610b2b565b610157610b7b565b6103336004803603602081101561032357600080fd5b50356001600160a01b0316610b86565b604080519115158252519081900360200190f35b6101576004803603604081101561035d57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561038757600080fd5b82018360208201111561039957600080fd5b803590602001918460018302840111600160201b831117156103ba57600080fd5b509092509050610b9e565b610157600480360360608110156103db57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561040557600080fd5b82018360208201111561041757600080fd5b803590602001918460018302840111600160201b8311171561043857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b81111561048a57600080fd5b82018360208201111561049c57600080fd5b803590602001918460018302840111600160201b831117156104bd57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610bf1945050505050565b6101576004803603606081101561051457600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561053e57600080fd5b82018360208201111561055057600080fd5b803590602001918460018302840111600160201b8311171561057157600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550505090356001600160a01b03169150610dec9050565b6105c633610b86565b6106015760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b039092169163b5466669918591849163ebf0c717916004808301926020929190829003018186803b15801561064f57600080fd5b505afa158015610663573d6000803e3d6000fd5b505050506040513d602081101561067957600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052606060448301908152875160648401528751889360840190602085019080838360005b838110156106e25781810151838201526020016106ca565b50505050905090810190601f16801561070f5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15801561073057600080fd5b505af1158015610744573d6000803e3d6000fd5b505050505050565b6001546001600160a01b031690565b6107cf8686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f89018190048102820181019092528781529250879150869081908401838280828437600092019190915250610bf192505050565b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691632525d06a91869184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b15801561082557600080fd5b505afa158015610839573d6000803e3d6000fd5b505050506040513d602081101561084f57600080fd5b5051604080516001600160e01b031960e085901b1681526004810183815260248201928352604482018d90528d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b1580156108bd57600080fd5b505afa1580156108d1573d6000803e3d6000fd5b505050506040513d60208110156108e757600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b15801561093757600080fd5b505af115801561094b573d6000803e3d6000fd5b50505050505050505050565b6109a58484848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250610bf1915050565b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691632525d06a91849184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b1580156109fb57600080fd5b505afa158015610a0f573d6000803e3d6000fd5b505050506040513d6020811015610a2557600080fd5b5051604080516001600160e01b031960e085901b1681526004810183815260248201928352604482018b90528b928b92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b158015610a9357600080fd5b505afa158015610aa7573d6000803e3d6000fd5b505050506040513d6020811015610abd57600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b158015610b0d57600080fd5b505af1158015610b21573d6000803e3d6000fd5b5050505050505050565b610b3433610b86565b610b6f5760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b610b7881611115565b50565b610b843361115d565b565b6000610b98818363ffffffff6111a516565b92915050565b610bec8383838080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250610bf1915050565b505050565b610bfa33610b86565b610c355760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691630467e014918691849163ebf0c717916004808301926020929190829003018186803b158015610c8357600080fd5b505afa158015610c97573d6000803e3d6000fd5b505050506040513d6020811015610cad57600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052608060448301908152885160848401528851899389939291606482019160a40190602087019080838360005b83811015610d1f578181015183820152602001610d07565b50505050905090810190601f168015610d4c5780820380516001836020036101000a031916815260200191505b50838103825284518152845160209182019186019080838360005b83811015610d7f578181015183820152602001610d67565b50505050905090810190601f168015610dac5780820380516001836020036101000a031916815260200191505b509650505050505050600060405180830381600087803b158015610dcf57600080fd5b505af1158015610de3573d6000803e3d6000fd5b50505050505050565b610df533610b86565b610e305760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b039092169163b5466669918691849163ebf0c717916004808301926020929190829003018186803b158015610e7e57600080fd5b505afa158015610e92573d6000803e3d6000fd5b505050506040513d6020811015610ea857600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052606060448301908152885160648401528851899360840190602085019080838360005b83811015610f11578181015183820152602001610ef9565b50505050905090810190601f168015610f3e5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015610f5f57600080fd5b505af1158015610f73573d6000803e3d6000fd5b50506001546040805163ebf0c71760e01b815290516001600160a01b039092169350632525d06a9250849184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b158015610fcd57600080fd5b505afa158015610fe1573d6000803e3d6000fd5b505050506040513d6020811015610ff757600080fd5b5051604080516001600160e01b031960e085901b16815260048101838152602482019283528a5160448301528a518b93919260640190602085019080838360005b83811015611050578181015183820152602001611038565b50505050905090810190601f16801561107d5780820380516001836020036101000a031916815260200191505b50935050505060206040518083038186803b15801561109b57600080fd5b505afa1580156110af573d6000803e3d6000fd5b505050506040513d60208110156110c557600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b158015610dcf57600080fd5b61112660008263ffffffff61120c16565b6040516001600160a01b038216907f6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f690600090a250565b61116e60008263ffffffff61128d16565b6040516001600160a01b038216907fe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb6669290600090a250565b60006001600160a01b0382166111ec5760405162461bcd60e51b81526004018080602001828103825260228152602001806113466022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b61121682826111a5565b15611268576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b61129782826111a5565b6112d25760405162461bcd60e51b81526004018080602001828103825260218152602001806113256021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe4d696e746572526f6c653a2063616c6c657220646f6573206e6f74206861766520746865204d696e74657220726f6c65526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f2061646472657373a265627a7a72315820c058d70355f7d37ff6b3b61cd850cc4a41893e30048389698c062148bf3d2ff464736f6c634300050c0032","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x789b49055833748af4eaa9affbcd84118ce8770f7e4385b5a3f428626b1f0aff":"0x1","0xdc4aeb95a779c8b92b845e3a94044db8ff2e43acc37da18c4b35a6bbad7c122f":"0x1"}},"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061007b5760003560e01c80639623609d1161004e5780639623609d1461011157806399a88ec414610124578063f2fde38b14610144578063f3b7dead1461016457600080fd5b8063204e1c7a14610080578063715018a6146100bc5780637eff275e146100d35780638da5cb5b146100f3575b600080fd5b34801561008c57600080fd5b506100a061009b366004610499565b610184565b6040516001600160a01b03909116815260200160405180910390f35b3480156100c857600080fd5b506100d1610215565b005b3480156100df57600080fd5b506100d16100ee3660046104bd565b610229565b3480156100ff57600080fd5b506000546001600160a01b03166100a0565b6100d161011f36600461050c565b610291565b34801561013057600080fd5b506100d161013f3660046104bd565b610300565b34801561015057600080fd5b506100d161015f366004610499565b610336565b34801561017057600080fd5b506100a061017f366004610499565b6103b4565b6000806000836001600160a01b03166040516101aa90635c60da1b60e01b815260040190565b600060405180830381855afa9150503d80600081146101e5576040519150601f19603f3d011682016040523d82523d6000602084013e6101ea565b606091505b5091509150816101f957600080fd5b8080602001905181019061020d91906105e2565b949350505050565b61021d6103da565b6102276000610434565b565b6102316103da565b6040516308f2839760e41b81526001600160a01b038281166004830152831690638f283970906024015b600060405180830381600087803b15801561027557600080fd5b505af1158015610289573d6000803e3d6000fd5b505050505050565b6102996103da565b60405163278f794360e11b81526001600160a01b03841690634f1ef2869034906102c990869086906004016105ff565b6000604051808303818588803b1580156102e257600080fd5b505af11580156102f6573d6000803e3d6000fd5b5050505050505050565b6103086103da565b604051631b2ce7f360e11b81526001600160a01b038281166004830152831690633659cfe69060240161025b565b61033e6103da565b6001600160a01b0381166103a85760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b6103b181610434565b50565b6000806000836001600160a01b03166040516101aa906303e1469160e61b815260040190565b6000546001600160a01b031633146102275760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161039f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146103b157600080fd5b6000602082840312156104ab57600080fd5b81356104b681610484565b9392505050565b600080604083850312156104d057600080fd5b82356104db81610484565b915060208301356104eb81610484565b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561052157600080fd5b833561052c81610484565b9250602084013561053c81610484565b9150604084013567ffffffffffffffff8082111561055957600080fd5b818601915086601f83011261056d57600080fd5b81358181111561057f5761057f6104f6565b604051601f8201601f19908116603f011681019083821181831017156105a7576105a76104f6565b816040528281528960208487010111156105c057600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000602082840312156105f457600080fd5b81516104b681610484565b60018060a01b038316815260006020604081840152835180604085015260005b8181101561063b5785810183015185820160600152820161061f565b8181111561064d576000606083870101525b50601f01601f19169290920160600194935050505056fea26469706673582212207ad53e1008cce369999f6b5f2f77109510b404ff1de9b47b639981fd68e6239264736f6c63430008090033","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x4e59b44847b379578588920ca78fbf26c0b4956c":{"nonce":0,"balance":"0x0","code":"0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe03601600081602082378035828234f58015156039578182fd5b8082525050506014600cf3","storage":{}},"0x4eb9de1fc0d800e941f326d6699e9e11969557ea":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063100cdd911461002d575b5f80fd5b61004061003b3660046102cd565b610042565b005b5f5b818110156101b8575f7f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e28484848181106100805761008061033c565b905060200201356040516020016100a1929190918252602082015260400190565b60408051808303601f190181529082905280516020909101206331a9108f60e11b82526004820181905291507f000000000000000000000000107733fed96c4cd390c944a31f5425a7fb98ae5e6001600160a01b0316906323b872dd908290636352211e90602401602060405180830381865afa158015610124573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101489190610350565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015261dead6024820152604481018490526064015f604051808303815f87803b158015610195575f80fd5b505af11580156101a7573d5f803e3d5ffd5b505060019093019250610044915050565b5080156102c9577f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e282826101ed60018261037d565b8181106101fc576101fc61033c565b9050602002013560405160200161021d929190918252602082015260400190565b604051602081830303815290604052805190602001205f1c7f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e283835f8181106102685761026861033c565b90506020020135604051602001610289929190918252602082015260400190565b60408051601f19818403018152908290528051602090910120907fdf423376f9b0ab363b1b4d6f0b4cb6821921ec30f491555a97236a8a38ce095a905f90a35b5050565b5f80602083850312156102de575f80fd5b823567ffffffffffffffff808211156102f5575f80fd5b818501915085601f830112610308575f80fd5b813581811115610316575f80fd5b8660208260051b850101111561032a575f80fd5b60209290920196919550909350505050565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215610360575f80fd5b81516001600160a01b0381168114610376575f80fd5b9392505050565b8181038181111561039c57634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x4fbf7b2f171336958be5d15ff762a5cff5363568":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061011b575f3560e01c80638d839ffe1161009d578063aeb8ce9b11610062578063aeb8ce9b14610356578063ce1e09c014610375578063d3419bf3146103a8578063f14fcbc8146103db578063f2fde38b146103fa575f80fd5b80638d839ffe146102a25780638da5cb5b146102d55780639791c097146102f1578063a8e5fbc014610310578063acf1a84114610343575f80fd5b806374694a2b116100e357806374694a2b146101c957806380869853146101dc578063839df9451461022757806383e7f6ff146102525780638a95b09f1461028c575f80fd5b806301ffc9a71461011f5780633ccfd60b146101535780635d3590d51461016957806365a69dcf14610188578063715018a6146101b5575b5f80fd5b34801561012a575f80fd5b5061013e610139366004611145565b610419565b60405190151581526020015b60405180910390f35b34801561015e575f80fd5b5061016761044f565b005b348015610174575f80fd5b50610167610183366004611187565b610489565b348015610193575f80fd5b506101a76101a23660046112e4565b610507565b60405190815260200161014a565b3480156101c0575f80fd5b5061016761058b565b6101676101d73660046113db565b61059e565b3480156101e7575f80fd5b5061020f7f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5681565b6040516001600160a01b03909116815260200161014a565b348015610232575f80fd5b506101a761024136600461149d565b60016020525f908152604090205481565b34801561025d575f80fd5b5061027161026c3660046114b4565b610894565b6040805182518152602092830151928101929092520161014a565b348015610297575f80fd5b506101a76224ea0081565b3480156102ad575f80fd5b506101a77f000000000000000000000000000000000000000000000000000000000000025881565b3480156102e0575f80fd5b505f546001600160a01b031661020f565b3480156102fc575f80fd5b5061013e61030b3660046114f6565b6109c9565b34801561031b575f80fd5b5061020f7f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e1841720481565b610167610351366004611528565b6109dd565b348015610361575f80fd5b5061013e6103703660046114f6565b610b7b565b348015610380575f80fd5b506101a77f000000000000000000000000000000000000000000000000000000000001518081565b3480156103b3575f80fd5b5061020f7f000000000000000000000000ec71e4e674fe0f432693dc2b935c34bd2774c00381565b3480156103e6575f80fd5b506101676103f536600461149d565b610c22565b348015610405575f80fd5b50610167610414366004611570565b610c95565b5f6001600160e01b031982166301ffc9a760e01b148061044957506001600160e01b0319821663612e8c0960e01b145b92915050565b5f80546040516001600160a01b03909116914780156108fc02929091818181858888f19350505050158015610486573d5f803e3d5ffd5b50565b610491610d0b565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af11580156104dd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105019190611589565b50505050565b885160208a01205f90841580159061052657506001600160a01b038716155b15610544576040516334fd817160e21b815260040160405180910390fd5b808a8a8a8a8a8a8a8a6040516020016105659998979695949392919061165e565b604051602081830303815290604052805190602001209150509998505050505050505050565b610593610d0b565b61059c5f610d64565b565b5f6105df8b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c9250610894915050565b602081015181519192506105f2916116d5565b3410156106125760405163044044a560e21b815260040160405180910390fd5b6106b38b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f82011690508083019250505050505050896106ae8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f820116905080830192505050505050508d8d8d8d8d8d8d8d610507565b610db3565b604051635200a4c160e11b81525f906001600160a01b037f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e18417204169063a40149829061070b908f908f908f908f908e908b906004016116e8565b6020604051808303815f875af1158015610727573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061074b9190611732565b9050841561077657610776878d8d604051610767929190611749565b60405180910390208888610ece565b83156107be576107be8c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508b9250339150610f939050565b896001600160a01b03168c8c6040516107d8929190611749565b60405180910390207f69e37f151eb98a09618ddaa80c8cfaf1ce5996867c489f45b555b412271ebf278e8e865f015187602001518760405161081e959493929190611758565b60405180910390a36020820151825161083791906116d5565b341115610886576020820151825133916108fc9161085591906116d5565b61085f9034611788565b6040518115909202915f818181858888f19350505050158015610884573d5f803e3d5ffd5b505b505050505050505050505050565b604080518082019091525f808252602082015282516020840120604051636b727d4360e11b8152600481018290527f000000000000000000000000ec71e4e674fe0f432693dc2b935c34bd2774c0036001600160a01b03908116916350e9a7159187917f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063d6e4fa8690602401602060405180830381865afa158015610940573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109649190611732565b866040518463ffffffff1660e01b8152600401610983939291906117e8565b6040805180830381865afa15801561099d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109c1919061180c565b949350505050565b5f60036109d583611044565b101592915050565b5f83836040516109ee929190611749565b604080519182900382206020601f8701819004810284018101909252858352925082915f91610a39919088908890819084018382808284375f92019190915250889250610894915050565b8051909150341015610a5e5760405163044044a560e21b815260040160405180910390fd5b60405163c475abff60e01b815260048101839052602481018590525f907f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b03169063c475abff906044016020604051808303815f875af1158015610acb573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610aef9190611732565b8251909150341115610b3457815133906108fc90610b0d9034611788565b6040518115909202915f818181858888f19350505050158015610b32573d5f803e3d5ffd5b505b837f3da24c024582931cfaf8267d8ed24d13a82a8068d5bd337d30ec45cea4e506ae88883485604051610b6a9493929190611859565b60405180910390a250505050505050565b805160208201205f90610b8d836109c9565b8015610c1b57506040516312dc929d60e31b8152600481018290527f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b0316906396e494e890602401602060405180830381865afa158015610bf7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c1b9190611589565b9392505050565b5f818152600160205260409020544290610c5d907f0000000000000000000000000000000000000000000000000000000000015180906116d5565b10610c8357604051630a059d7160e01b8152600481018290526024015b60405180910390fd5b5f908152600160205260409020429055565b610c9d610d0b565b6001600160a01b038116610d025760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610c7a565b61048681610d64565b5f546001600160a01b0316331461059c5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610c7a565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f818152600160205260409020544290610dee907f0000000000000000000000000000000000000000000000000000000000000258906116d5565b1115610e1057604051635320bcf960e01b815260048101829052602401610c7a565b5f818152600160205260409020544290610e4b907f0000000000000000000000000000000000000000000000000000000000015180906116d5565b11610e6c5760405163cb7690d760e01b815260048101829052602401610c7a565b610e7583610b7b565b610e9457826040516308eee0fd60e31b8152600401610c7a919061187f565b5f818152600160205260408120556224ea00821015610ec957604051639a71997b60e01b815260048101839052602401610c7a565b505050565b604080517f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae6020808301919091528183018690528251808303840181526060830193849052805191012063e32954eb60e01b90925285906001600160a01b0382169063e32954eb90610f4890859088908890606401611891565b5f604051808303815f875af1158015610f63573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052610f8a91908101906118b3565b50505050505050565b7f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d566001600160a01b0316637a806d6b33838587604051602001610fd691906119a7565b6040516020818303038152906040526040518563ffffffff1660e01b815260040161100494939291906119ce565b6020604051808303815f875af1158015611020573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105019190611732565b80515f90819081905b8082101561113c575f85838151811061106857611068611a0b565b01602001516001600160f81b0319169050600160ff1b811015611097576110906001846116d5565b9250611129565b600760fd1b6001600160f81b0319821610156110b8576110906002846116d5565b600f60fc1b6001600160f81b0319821610156110d9576110906003846116d5565b601f60fb1b6001600160f81b0319821610156110fa576110906004846116d5565b603f60fa1b6001600160f81b03198216101561111b576110906005846116d5565b6111266006846116d5565b92505b508261113481611a1f565b93505061104d565b50909392505050565b5f60208284031215611155575f80fd5b81356001600160e01b031981168114610c1b575f80fd5b80356001600160a01b0381168114611182575f80fd5b919050565b5f805f60608486031215611199575f80fd5b6111a28461116c565b92506111b06020850161116c565b9150604084013590509250925092565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff811182821017156111fd576111fd6111c0565b604052919050565b5f67ffffffffffffffff82111561121e5761121e6111c0565b50601f01601f191660200190565b5f82601f83011261123b575f80fd5b813561124e61124982611205565b6111d4565b818152846020838601011115611262575f80fd5b816020850160208301375f918101602001919091529392505050565b5f8083601f84011261128e575f80fd5b50813567ffffffffffffffff8111156112a5575f80fd5b6020830191508360208260051b85010111156112bf575f80fd5b9250929050565b8015158114610486575f80fd5b803561ffff81168114611182575f80fd5b5f805f805f805f805f6101008a8c0312156112fd575f80fd5b893567ffffffffffffffff80821115611314575f80fd5b6113208d838e0161122c565b9a5061132e60208d0161116c565b995060408c0135985060608c0135975061134a60808d0161116c565b965060a08c013591508082111561135f575f80fd5b5061136c8c828d0161127e565b90955093505060c08a0135611380816112c6565b915061138e60e08b016112d3565b90509295985092959850929598565b5f8083601f8401126113ad575f80fd5b50813567ffffffffffffffff8111156113c4575f80fd5b6020830191508360208285010111156112bf575f80fd5b5f805f805f805f805f806101008b8d0312156113f5575f80fd5b8a3567ffffffffffffffff8082111561140c575f80fd5b6114188e838f0161139d565b909c509a508a915061142c60208e0161116c565b995060408d0135985060608d0135975061144860808e0161116c565b965060a08d013591508082111561145d575f80fd5b5061146a8d828e0161127e565b90955093505060c08b013561147e816112c6565b915061148c60e08c016112d3565b90509295989b9194979a5092959850565b5f602082840312156114ad575f80fd5b5035919050565b5f80604083850312156114c5575f80fd5b823567ffffffffffffffff8111156114db575f80fd5b6114e78582860161122c565b95602094909401359450505050565b5f60208284031215611506575f80fd5b813567ffffffffffffffff81111561151c575f80fd5b6109c18482850161122c565b5f805f6040848603121561153a575f80fd5b833567ffffffffffffffff811115611550575f80fd5b61155c8682870161139d565b909790965060209590950135949350505050565b5f60208284031215611580575f80fd5b610c1b8261116c565b5f60208284031215611599575f80fd5b8151610c1b816112c6565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b5f838385526020808601955060208560051b830101845f5b8781101561165157848303601f19018952813536889003601e19018112611609575f80fd5b8701848101903567ffffffffffffffff811115611624575f80fd5b803603821315611632575f80fd5b61163d8582846115a4565b9a86019a94505050908301906001016115e4565b5090979650505050505050565b8981526001600160a01b03898116602083015260408201899052606082018890528616608082015261010060a082018190525f9061169f83820187896115cc565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610449576104496116c1565b60a081525f6116fb60a08301888a6115a4565b6001600160a01b03968716602084015260408301959095525091909316606082015261ffff90921660809092019190915292915050565b5f60208284031215611742575f80fd5b5051919050565b818382375f9101908152919050565b608081525f61176b6080830187896115a4565b602083019590955250604081019290925260609091015292915050565b81810381811115610449576104496116c1565b5f5b838110156117b557818101518382015260200161179d565b50505f910152565b5f81518084526117d481602086016020860161179b565b601f01601f19169290920160200192915050565b606081525f6117fa60608301866117bd565b60208301949094525060400152919050565b5f6040828403121561181c575f80fd5b6040516040810181811067ffffffffffffffff8211171561183f5761183f6111c0565b604052825181526020928301519281019290925250919050565b606081525f61186c6060830186886115a4565b6020830194909452506040015292915050565b602081525f610c1b60208301846117bd565b838152604060208201525f6118aa6040830184866115cc565b95945050505050565b5f60208083850312156118c4575f80fd5b825167ffffffffffffffff808211156118db575f80fd5b818501915085601f8301126118ee575f80fd5b815181811115611900576119006111c0565b8060051b61190f8582016111d4565b9182528381018501918581019089841115611928575f80fd5b86860192505b8383101561199a57825185811115611944575f80fd5b8601603f81018b13611954575f80fd5b87810151604061196661124983611205565b8281528d82848601011115611979575f80fd5b611988838c830184870161179b565b8552505050918601919086019061192e565b9998505050505050505050565b5f82516119b881846020870161179b565b6305ccae8d60e31b920191825250600401919050565b6001600160a01b0385811682528481166020830152831660408201526080606082018190525f90611a01908301846117bd565b9695505050505050565b634e487b7160e01b5f52603260045260245ffd5b5f60018201611a3057611a306116c1565b506001019056fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x5155f5627bdf9795b3dbb8887001ada1eeba93f2":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063de8f50a11461002d575b5f80fd5b61004761003b3660046100a0565b60019695505050505050565b604051901515815260200160405180910390f35b5f8083601f84011261006b575f80fd5b50813567ffffffffffffffff811115610082575f80fd5b602083019150836020828501011115610099575f80fd5b9250929050565b5f805f805f80606087890312156100b5575f80fd5b863567ffffffffffffffff808211156100cc575f80fd5b6100d88a838b0161005b565b909850965060208901359150808211156100f0575f80fd5b6100fc8a838b0161005b565b90965094506040890135915080821115610114575f80fd5b5061012189828a0161005b565b979a969950949750929593949250505056fea164736f6c6343000818000a","storage":{}},"0x54563a9e1cd2dcbd0bca90d3cfa4a647e02c404a":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106101db575f3560e01c80638da5cb5b116100fd578063c4d66de811610092578063daea85c511610062578063daea85c51461055e578063e7acab241461057d578063f2fde38b1461059c578063ffa1ad74146105bb575f80fd5b8063c4d66de8146104e1578063d539139314610500578063d547741f14610520578063d9caed121461053f575f80fd5b8063a217fddf116100cd578063a217fddf14610452578063a3f4df7e14610465578063a4247400146104a3578063aa271e1a146104c2575f80fd5b80638da5cb5b146103d957806391d1485414610400578063983b2d561461041f578063986502751461043e575f80fd5b80635c975abb11610173578063715018a611610143578063715018a61461037f57806371e2a6571461039357806381c81d35146103b25780638456cb59146103c5575f80fd5b80635c975abb146103165780635fc1964f1461032e578063634486da1461034d5780636ccbae5f14610360575f80fd5b80633092afd5116101ae5780633092afd51461029c57806336568abe146102bb5780633f4ba83a146102da578063572b6c05146102ee575f80fd5b806301ffc9a7146101df5780631bf7e13e14610213578063248a9ca31461023f5780632f2ff15d1461027b575b5f80fd5b3480156101ea575f80fd5b506101fe6101f9366004611ee0565b6105eb565b60405190151581526020015b60405180910390f35b34801561021e575f80fd5b5061023261022d366004611f07565b610621565b60405161020a9190611fe9565b34801561024a575f80fd5b5061026d610259366004611ffb565b5f90815260fb602052604090206001015490565b60405190815260200161020a565b348015610286575f80fd5b5061029a610295366004612036565b6106ea565b005b3480156102a7575f80fd5b5061029a6102b6366004612064565b610713565b3480156102c6575f80fd5b5061029a6102d5366004612036565b610727565b3480156102e5575f80fd5b5061029a6107ba565b3480156102f9575f80fd5b506101fe610308366004612064565b6001600160a01b0316301490565b348015610321575f80fd5b5061012d5460ff166101fe565b348015610339575f80fd5b5061029a6103483660046120eb565b6107d4565b61029a61035b366004612064565b610811565b34801561036b575f80fd5b5061026d61037a366004611ffb565b6108d1565b34801561038a575f80fd5b5061029a61092a565b34801561039e575f80fd5b5061029a6103ad3660046120eb565b61093b565b61029a6103c0366004612064565b610978565b3480156103d0575f80fd5b5061029a6109f5565b3480156103e4575f80fd5b506097546040516001600160a01b03909116815260200161020a565b34801561040b575f80fd5b506101fe61041a366004612036565b610a0d565b34801561042a575f80fd5b5061029a610439366004612064565b610a37565b348015610449575f80fd5b5061029a610a48565b34801561045d575f80fd5b5061026d5f81565b348015610470575f80fd5b506102326040518060400160405280601381526020017229b2b0b837b93a10283937bc3c90213abcb2b960691b81525081565b3480156104ae575f80fd5b506101fe6104bd366004611f07565b610a61565b3480156104cd575f80fd5b506101fe6104dc366004612064565b610ab2565b3480156104ec575f80fd5b5061029a6104fb366004612064565b610aca565b34801561050b575f80fd5b5061026d5f80516020612ea783398151915281565b34801561052b575f80fd5b5061029a61053a366004612036565b610c21565b34801561054a575f80fd5b5061029a61055936600461218b565b610c45565b348015610569575f80fd5b5061029a610578366004612064565b610cf7565b348015610588575f80fd5b506101fe6105973660046121c9565b610dac565b3480156105a7575f80fd5b5061029a6105b6366004612064565b6111db565b3480156105c6575f80fd5b5061023260405180604001604052806005815260200164302e302e3160d81b81525081565b5f6001600160e01b03198216637965db0b60e01b148061061b57506301ffc9a760e01b6001600160e01b03198316145b92915050565b60605f5a9050610632858585610a61565b61064f57604051638baa579f60e01b815260040160405180910390fd5b6106df61065f6020870187612064565b3060408801358461067360608b018b61227b565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f920191909152506111f692505050565b9150505b9392505050565b5f82815260fb6020526040902060010154610704816112d4565b61070e83836112e5565b505050565b61071b61136b565b610724816113e4565b50565b61072f6113fb565b6001600160a01b0316816001600160a01b0316146107ac5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6107b68282611409565b5050565b6107c261136b565b6107ca61148d565b6107d26114d7565b565b6107dc61136b565b5f5b81518110156107b6576108098282815181106107fc576107fc6122bd565b60200260200101516113e4565b6001016107de565b61081c6104dc6113fb565b6108385760405162461bcd60e51b81526004016107a3906122d1565b6001600160a01b03811661088e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016107a3565b61089781611530565b61089f610a48565b6040516001600160a01b038216903480156108fc02915f818181858888f193505050501580156107b6573d5f803e3d5ffd5b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f90610923906060016040516020818303038152906040528051906020012090565b5492915050565b61093261136b565b6107d25f611547565b61094361136b565b5f5b81518110156107b657610970828281518110610963576109636122bd565b6020026020010151611530565b600101610945565b6109836104dc6113fb565b61099f5760405162461bcd60e51b81526004016107a3906122d1565b6001600160a01b0381166108975760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016107a3565b6109fd61136b565b610a05611598565b6107d26115df565b5f91825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610a3f61136b565b61072481611530565b6107d25f80516020612ea78339815191526102d56113fb565b5f610aaa610a6e85612306565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061161e92505050565b949350505050565b5f61061b5f80516020612ea783398151915283610a0d565b5f54610100900460ff1615808015610ae857505f54600160ff909116105b80610b015750303b158015610b0157505f5460ff166001145b610b645760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107a3565b5f805460ff191660011790558015610b85575f805461ff0019166101001790555b61015f80546001600160a01b0319166001600160a01b038416179055610ba9611759565b610bb1611786565b610bb9611786565b610bc1611786565b610bc96117ac565b610bd16117e2565b610bd9611819565b80156107b6575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b5f82815260fb6020526040902060010154610c3b816112d4565b61070e8383611409565b610c4d61136b565b600260335403610c6f5760405162461bcd60e51b81526004016107a3906123c2565b6002603355610c7c611598565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af1158015610cc8573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cec91906123f9565b505060016033555050565b610cff61136b565b600260335403610d215760405162461bcd60e51b81526004016107a3906123c2565b6002603355610d2e611598565b61015f5460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529082169063095ea7b3906044016020604051808303815f875af1158015610d7f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610da391906123f9565b50506001603355565b5f610db86104dc6113fb565b610dd45760405162461bcd60e51b81526004016107a3906122d1565b600260335403610df65760405162461bcd60e51b81526004016107a3906123c2565b6002603355610e03611598565b6001600160a01b038216610e2a576040516311d000e160e31b815260040160405180910390fd5b30610e358780612418565b610e46906040810190602001612064565b6001600160a01b031614610e6d57604051639d3c586b60e01b815260040160405180910390fd5b610e75611e67565b610e7f8780612418565b610e8d906020810190612064565b6001600160a01b03168152610ea28780612418565b610eb3906040810190602001612064565b6001600160a01b03166020820152610ecb8780612418565b610ed9906040810190612437565b808060200260200160405190810160405280939291908181526020015f905b82821015610f2457610f1560a08302860136819003810190612489565b81526020019060010190610ef8565b50505050506040820152610f388780612418565b610f46906060810190612506565b808060200260200160405190810160405280939291908181526020015f905b82821015610f9157610f8260c0830286013681900381019061254a565b81526020019060010190610f65565b50505050506060820152610fa58780612418565b610fb69060a08101906080016125e5565b81608001906004811115610fcc57610fcc6125fe565b90816004811115610fdf57610fdf6125fe565b905250610fec8780612418565b60a090810135908201526110008780612418565b60c090810135908201526110148780612418565b60e090810135908201526110288780612418565b610100908101359082015261103d8780612418565b610120908101359082015261015f54815160405163f07ec37360e01b81526001600160a01b03918216600482015291169063f07ec37390602401602060405180830381865afa158015611092573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110b69190612612565b61014082015261015f546040516379df72bd60e01b8152611133916001600160a01b0316906379df72bd906110ef908590600401612737565b602060405180830381865afa15801561110a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061112e9190612612565b61184c565b61015f546040516339eb2ac960e21b81526001600160a01b039091169063e7acab249061116c908a908a908a908a908a90600401612b24565b6020604051808303815f875af1158015611188573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111ac91906123f9565b9150816111cc57604051636725093760e01b815260040160405180910390fd5b50600160335595945050505050565b6111e361136b565b6111ec81611865565b6107245f826118db565b6060611201856118e5565b5f80876001600160a01b03168661121a8b8a898961194a565b6040516112279190612cfa565b5f604051808303815f8787f1925050503d805f8114611261576040519150601f19603f3d011682016040523d82523d5f602084013e611266565b606091505b509092509050611277603f87612d1f565b5a1161128557611285612d3e565b6112c582826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061197a565b925050505b9695505050505050565b610724816112e06113fb565b6119b3565b6112ef8282610a0d565b6107b6575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191660011790556113276113fb565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6113736113fb565b6001600160a01b031661138e6097546001600160a01b031690565b6001600160a01b0316146107d25760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107a3565b6107245f80516020612ea783398151915282610c21565b5f611404611a17565b905090565b6114138282610a0d565b156107b6575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191690556114496113fb565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b61012d5460ff166107d25760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b60448201526064016107a3565b6114df61148d565b61012d805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6115136113fb565b6040516001600160a01b03909116815260200160405180910390a1565b6107245f80516020612ea7833981519152826118db565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b61012d5460ff16156107d25760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b60448201526064016107a3565b6115e7611598565b61012d805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586115136113fb565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015611662573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116869190612612565b90505f6117338660600151805190602001208688602001516040516020016116d39392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156112ca575085516112ca906001600160a01b03168286611a34565b5f54610100900460ff1661177f5760405162461bcd60e51b81526004016107a390612d52565b6001603355565b5f54610100900460ff166107d25760405162461bcd60e51b81526004016107a390612d52565b5f54610100900460ff166117d25760405162461bcd60e51b81526004016107a390612d52565b6107d26117dd6113fb565b611547565b5f54610100900460ff166118085760405162461bcd60e51b81526004016107a390612d52565b6107d25f6118146113fb565b6118db565b5f54610100900460ff1661183f5760405162461bcd60e51b81526004016107a390612d52565b61012d805460ff19169055565b30330361185c5761072481611b6f565b610724816118e5565b61186d61136b565b6001600160a01b0381166118d25760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107a3565b61072481611547565b6107b682826112e5565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f906060016040516020818303038152906040528051906020012090506119398190565b54611945906001612d9d565b905550565b606082858560405160200161196193929190612db0565b6040516020818303038152906040529050949350505050565b606083156119895750816106e3565b8251156119995782518084602001fd5b8160405162461bcd60e51b81526004016107a39190611fe9565b6119bd8282610a0d565b6107b6576119d5816001600160a01b03166014611b99565b6119e0836020611b99565b6040516020016119f1929190612dee565b60408051601f198184030181529082905262461bcd60e51b82526107a391600401611fe9565b5f303303611a2c575060331936013560601c90565b503390565b90565b5f805f611a418585611d2e565b90925090505f816004811115611a5957611a596125fe565b148015611a775750856001600160a01b0316826001600160a01b0316145b15611a87576001925050506106e3565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401611aae929190612e62565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051611aec9190612cfa565b5f60405180830381855afa9150503d805f8114611b24576040519150601f19603f3d011682016040523d82523d5f602084013e611b29565b606091505b5091509150818015611b3c575080516020145b8015611b6357508051630b135d3f60e11b90611b619083016020908101908401612612565b145b98975050505050505050565b611b77611d70565b811461072457604051635637b6af60e11b8152600481018290526024016107a3565b60605f611ba7836002612e7a565b611bb2906002612d9d565b6001600160401b03811115611bc957611bc961207f565b6040519080825280601f01601f191660200182016040528015611bf3576020820181803683370190505b509050600360fc1b815f81518110611c0d57611c0d6122bd565b60200101906001600160f81b03191690815f1a905350600f60fb1b81600181518110611c3b57611c3b6122bd565b60200101906001600160f81b03191690815f1a9053505f611c5d846002612e7a565b611c68906001612d9d565b90505b6001811115611cdf576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611c9c57611c9c6122bd565b1a60f81b828281518110611cb257611cb26122bd565b60200101906001600160f81b03191690815f1a90535060049490941c93611cd881612e91565b9050611c6b565b5083156106e35760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016107a3565b5f808251604103611d62576020830151604084015160608501515f1a611d5687828585611d82565b94509450505050611d69565b505f905060025b9250929050565b5f303303611a315750601f1936013590565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115611db757505f90506003611e5e565b8460ff16601b14158015611dcf57508460ff16601c14155b15611ddf57505f90506004611e5e565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015611e30573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b038116611e58575f60019250925050611e5e565b91505f90505b94509492505050565b6040518061016001604052805f6001600160a01b031681526020015f6001600160a01b0316815260200160608152602001606081526020015f6004811115611eb157611eb16125fe565b81525f6020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b5f60208284031215611ef0575f80fd5b81356001600160e01b0319811681146106e3575f80fd5b5f805f60408486031215611f19575f80fd5b83356001600160401b0380821115611f2f575f80fd5b9085019060808288031215611f42575f80fd5b90935060208501359080821115611f57575f80fd5b818601915086601f830112611f6a575f80fd5b813581811115611f78575f80fd5b876020828501011115611f89575f80fd5b6020830194508093505050509250925092565b5f5b83811015611fb6578181015183820152602001611f9e565b50505f910152565b5f8151808452611fd5816020860160208601611f9c565b601f01601f19169290920160200192915050565b602081525f6106e36020830184611fbe565b5f6020828403121561200b575f80fd5b5035919050565b6001600160a01b0381168114610724575f80fd5b803561203181612012565b919050565b5f8060408385031215612047575f80fd5b82359150602083013561205981612012565b809150509250929050565b5f60208284031215612074575f80fd5b81356106e381612012565b634e487b7160e01b5f52604160045260245ffd5b604051608081016001600160401b03811182821017156120b5576120b561207f565b60405290565b604051601f8201601f191681016001600160401b03811182821017156120e3576120e361207f565b604052919050565b5f60208083850312156120fc575f80fd5b82356001600160401b0380821115612112575f80fd5b818501915085601f830112612125575f80fd5b8135818111156121375761213761207f565b8060051b91506121488483016120bb565b8181529183018401918481019088841115612161575f80fd5b938501935b83851015611b63578435925061217b83612012565b8282529385019390850190612166565b5f805f6060848603121561219d575f80fd5b83356121a881612012565b925060208401356121b881612012565b929592945050506040919091013590565b5f805f805f608086880312156121dd575f80fd5b85356001600160401b03808211156121f3575f80fd5b9087019060a0828a031215612206575f80fd5b9095506020870135908082111561221b575f80fd5b818801915088601f83011261222e575f80fd5b81358181111561223c575f80fd5b8960208260051b8501011115612250575f80fd5b6020830196508095505050506040860135915061226f60608701612026565b90509295509295909350565b5f808335601e19843603018112612290575f80fd5b8301803591506001600160401b038211156122a9575f80fd5b602001915036819003821315611d69575f80fd5b634e487b7160e01b5f52603260045260245ffd5b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b5f60808236031215612316575f80fd5b61231e612093565b823561232981612012565b8152602083810135818301526040808501359083015260608401356001600160401b0380821115612358575f80fd5b9085019036601f83011261236a575f80fd5b81358181111561237c5761237c61207f565b61238e601f8201601f191685016120bb565b915080825236848285010111156123a3575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b5f60208284031215612409575f80fd5b815180151581146106e3575f80fd5b5f823561015e1983360301811261242d575f80fd5b9190910192915050565b5f808335601e1984360301811261244c575f80fd5b8301803591506001600160401b03821115612465575f80fd5b602001915060a081023603821315611d69575f80fd5b803560068110612031575f80fd5b5f60a08284031215612499575f80fd5b60405160a081018181106001600160401b03821117156124bb576124bb61207f565b6040526124c78361247b565b815260208301356124d781612012565b806020830152506040830135604082015260608301356060820152608083013560808201528091505092915050565b5f808335601e1984360301811261251b575f80fd5b8301803591506001600160401b03821115612534575f80fd5b602001915060c081023603821315611d69575f80fd5b5f60c0828403121561255a575f80fd5b60405160c081018181106001600160401b038211171561257c5761257c61207f565b6040526125888361247b565b8152602083013561259881612012565b8060208301525060408301356040820152606083013560608201526080830135608082015260a08301356125cb81612012565b60a08201529392505050565b803560058110612031575f80fd5b5f602082840312156125f5575f80fd5b6106e3826125d7565b634e487b7160e01b5f52602160045260245ffd5b5f60208284031215612622575f80fd5b5051919050565b60068110612639576126396125fe565b9052565b5f815180845260208085019450602084015f5b838110156126a6578151612665888251612629565b838101516001600160a01b03168885015260408082015190890152606080820151908901526080908101519088015260a09096019590820190600101612650565b509495945050505050565b5f815180845260208085019450602084015f5b838110156126a65781516126d9888251612629565b808401516001600160a01b0390811689860152604080830151908a0152606080830151908a0152608080830151908a015260a091820151169088015260c090960195908201906001016126c4565b60058110612639576126396125fe565b602081526127516020820183516001600160a01b03169052565b5f602083015161276c60408401826001600160a01b03169052565b50604083015161016080606085015261278961018085018361263d565b91506060850151601f198584030160808601526127a683826126b1565b92505060808501516127bb60a0860182612727565b5060a085015160c085015260c085015160e085015260e0850151610100818187015280870151915050610120818187015280870151915050610140818187015280870151838701525050508091505092915050565b5f808335601e19843603018112612825575f80fd5b83016020810192503590506001600160401b03811115612843575f80fd5b60a081023603821315611d69575f80fd5b8183525f60208085019450825f5b858110156126a65761287c876128778461247b565b612629565b8282013561288981612012565b6001600160a01b03168388015260408281013590880152606080830135908801526080808301359088015260a09687019690910190600101612862565b5f808335601e198436030181126128db575f80fd5b83016020810192503590506001600160401b038111156128f9575f80fd5b60c081023603821315611d69575f80fd5b8183525f60208085019450825f5b858110156126a65761292d876128778461247b565b8282013561293a81612012565b6001600160a01b039081168885015260408381013590890152606080840135908901526080808401359089015260a0908382013561297781612012565b169088015260c0968701969190910190600101612918565b80356001600160781b0381168114612031575f80fd5b5f808335601e198436030181126129ba575f80fd5b83016020810192503590506001600160401b038111156129d8575f80fd5b803603821315611d69575f80fd5b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b8183525f6001600160fb1b03831115612a25575f80fd5b8260051b80836020870137939093016020019392505050565b8183526020808401935f91600585811b8301820185855b88811015612b1657858303601f19018a52813536899003609e19018112612a7a575f80fd5b88018035845260a08682013560028110612a92575f80fd5b85880152604082810135908601526060808301359086015260808083013536849003601e19018112612ac2575f80fd5b9092018781019290356001600160401b03811115612ade575f80fd5b80881b3603841315612aee575f80fd5b8282880152612b008388018286612a0e565b9d89019d96505050928601925050600101612a55565b509098975050505050505050565b608081525f610120873561015e19893603018112612b40575f80fd5b60a060808501528801612b65828501612b5883612026565b6001600160a01b03169052565b612b7160208201612026565b610140612b88818701836001600160a01b03169052565b612b956040840184612810565b610160888101529250612bad61028088018483612854565b925050612bbd60608401846128c6565b87840361011f1901610180890152612bd684828461290a565b93505050612be6608084016125d7565b612bf46101a0880182612727565b5060a08301356101c087015260c08301356101e087015260e0830135610200870152610100808401356102208801528484013561024088015281840135610260880152612c4360208d0161298f565b6001600160781b03811660a08901529450612c6060408d0161298f565b6001600160781b03811660c08901529450612c7e60608d018d6129a5565b95509350607f199150818784030160e0880152612c9c8386866129e6565b9450612cab60808d018d6129a5565b945092508187860301818801525050612cc58383836129e6565b925050508281036020840152612cdc818789612a3e565b9150508360408301526112ca60608301846001600160a01b03169052565b5f825161242d818460208701611f9c565b634e487b7160e01b5f52601160045260245ffd5b5f82612d3957634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b8082018082111561061b5761061b612d0b565b5f8451612dc1818460208901611f9c565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081525f8351612e25816017850160208801611f9c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351612e56816028840160208801611f9c565b01602801949350505050565b828152604060208201525f610aaa6040830184611fbe565b808202811582820484141761061b5761061b612d0b565b5f81612e9f57612e9f612d0b565b505f19019056fe9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000818000a","storage":{"0x0":"0xff"}},"0x58a175bebc8ec21a94ea63aa5a28743945940ee6":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106101165760003560e01c806391d14854116100a2578063c4d66de811610071578063c4d66de8146103bb578063ca15c873146103e1578063d547741f146103fe578063e375b64e1461042a578063ec87621c146104b957610116565b806391d14854146103635780639559c0bd146103a3578063a217fddf146103ab578063b017a30f146103b357610116565b80634794b430116100e95780634794b4301461024f57806349f5124b14610257578063609c92b81461025f5780638274664f146102675780639010d07c1461032457610116565b8063150b7a021461011b578063248a9ca3146101c65780632f2ff15d146101f557806336568abe14610223575b600080fd5b6101a96004803603608081101561013157600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561016b57600080fd5b82018360208201111561017d57600080fd5b803590602001918460018302840111600160201b8311171561019e57600080fd5b5090925090506104c1565b604080516001600160e01b03199092168252519081900360200190f35b6101e3600480360360208110156101dc57600080fd5b50356104d2565b60408051918252519081900360200190f35b6102216004803603604081101561020b57600080fd5b50803590602001356001600160a01b03166104ea565b005b6102216004803603604081101561023957600080fd5b50803590602001356001600160a01b0316610556565b6101e36105b7565b6101e36105db565b6101e36105ff565b6102216004803603606081101561027d57600080fd5b6001600160a01b038235811692602081013590911691810190606081016040820135600160201b8111156102b057600080fd5b8201836020820111156102c257600080fd5b803590602001918460018302840111600160201b831117156102e357600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610623945050505050565b6103476004803603604081101561033a57600080fd5b5080359060200135610fa2565b604080516001600160a01b039092168252519081900360200190f35b61038f6004803603604081101561037957600080fd5b50803590602001356001600160a01b0316610fc9565b604080519115158252519081900360200190f35b6101e3610fe7565b6101e3610fec565b6101e3610ff1565b610221600480360360208110156103d157600080fd5b50356001600160a01b0316611015565b6101e3600480360360208110156103f757600080fd5b50356110cf565b6102216004803603604081101561041457600080fd5b50803590602001356001600160a01b03166110e6565b6102216004803603608081101561044057600080fd5b6001600160a01b0382358116926020810135821692604082013590921691810190608081016060820135600160201b81111561047b57600080fd5b82018360208201111561048d57600080fd5b803590602001918460018302840111600160201b831117156104ae57600080fd5b50909250905061113f565b6101e36114e6565b630a85bd0160e11b95945050505050565b6000818152602081905260409020600201545b919050565b60008281526020819052604090206002015461050d906105086114f8565b610fc9565b6105485760405162461bcd60e51b815260040180806020018281038252602f815260200180611f42602f913960400191505060405180910390fd5b61055282826114fd565b5050565b61055e6114f8565b6001600160a01b0316816001600160a01b0316146105ad5760405162461bcd60e51b815260040180806020018281038252602f8152602001806120bb602f913960400191505060405180910390fd5b610552828261156c565b7ff871896b17e9cb7a64941c62c188a4f5c621b86800e3d15452ece01ce56073df81565b7ff94915c6d1fd521cee85359239227480c7e8776d7caf1fc3bacad5c269b66a1481565b7fd4392723c111fcb98b073fe55873efb447bcd23cd3e49ec9ea2581930cd01ddc81565b60008051602061204b83398151915261063e816105086114f8565b6001906106de5760405162461bcd60e51b81526020600482019081528254600260001961010060018416150201909116046024830181905290918291604490910190849080156106cf5780601f106106a4576101008083540402835291602001916106cf565b820191906000526020600020905b8154815290600101906020018083116106b257829003601f168201915b50509250505060405180910390fd5b5060606106f26106ed846115db565b611656565b905060606107138260018151811061070657fe5b6020026020010151611656565b90507fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60001b6107568260008151811061074957fe5b60200260200101516117d8565b141561095457600061076e8260018151811061074957fe5b905060006001600160a01b031661078b8360028151811061074957fe5b6001600160a01b0316146107d05760405162461bcd60e51b815260040180806020018281038252602981526020018061206b6029913960400191505060405180910390fd5b600086905060006107e78460038151811061074957fe5b9050816001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b15801561082d57600080fd5b505afa158015610841573d6000803e3d6000fd5b505050506040513d602081101561085757600080fd5b5051156108d35760408051632142170760e11b81523060048201526001600160a01b038581166024830152604482018490529151918416916342842e0e9160648082019260009290919082900301818387803b1580156108b657600080fd5b505af11580156108ca573d6000803e3d6000fd5b5050505061094c565b816001600160a01b03166340c10f1984836040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b15801561093357600080fd5b505af1158015610947573d6000803e3d6000fd5b505050505b505050610f9a565b7ff871896b17e9cb7a64941c62c188a4f5c621b86800e3d15452ece01ce56073df60001b6109888260008151811061074957fe5b1415610c085760006109a08260018151811061074957fe5b905060606109c1846002815181106109b457fe5b6020026020010151611920565b905060608180602001905160208110156109da57600080fd5b8101908080516040519392919084600160201b8211156109f957600080fd5b908301906020820185811115610a0e57600080fd5b82518660208202830111600160201b82111715610a2a57600080fd5b82525081516020918201928201910280838360005b83811015610a57578181015183820152602001610a3f565b5050505091909101604052505082519293508a9150600090505b82811015610bfd576000848281518110610a8757fe5b60200260200101519050826001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610ad557600080fd5b505afa158015610ae9573d6000803e3d6000fd5b505050506040513d6020811015610aff57600080fd5b505115610b7b5760408051632142170760e11b81523060048201526001600160a01b038981166024830152604482018490529151918516916342842e0e9160648082019260009290919082900301818387803b158015610b5e57600080fd5b505af1158015610b72573d6000803e3d6000fd5b50505050610bf4565b826001600160a01b03166340c10f1988836040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b158015610bdb57600080fd5b505af1158015610bef573d6000803e3d6000fd5b505050505b50600101610a71565b505050505050610f9a565b7ff94915c6d1fd521cee85359239227480c7e8776d7caf1fc3bacad5c269b66a1460001b610c3c8260008151811061074957fe5b1415610f63576000610c548260018151811061074957fe5b905060006001600160a01b0316610c718360028151811061074957fe5b6001600160a01b031614610cb65760405162461bcd60e51b815260040180806020018281038252602981526020018061206b6029913960400191505060405180910390fd5b60008690506000610ccd8460038151811061074957fe5b9050816001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610d1357600080fd5b505afa158015610d27573d6000803e3d6000fd5b505050506040513d6020811015610d3d57600080fd5b505115610d9c5760408051632142170760e11b81523060048201526001600160a01b038581166024830152604482018490529151918416916342842e0e9160648082019260009290919082900301818387803b1580156108b657600080fd5b6060610dae866002815181106109b457fe5b90506060818060200190516020811015610dc757600080fd5b8101908080516040519392919084600160201b821115610de657600080fd5b908301906020820185811115610dfb57600080fd5b8251600160201b811182820188101715610e1457600080fd5b82525081516020918201929091019080838360005b83811015610e41578181015183820152602001610e29565b50505050905090810190601f168015610e6e5780820380516001836020036101000a031916815260200191505b506040525050509050836001600160a01b03166394d008ef8685846040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b0316815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610ef3578181015183820152602001610edb565b50505050905090810190601f168015610f205780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015610f4157600080fd5b505af1158015610f55573d6000803e3d6000fd5b505050505050505050610f9a565b60405162461bcd60e51b815260040180806020018281038252602a815260200180611f71602a913960400191505060405180910390fd5b505050505050565b6000828152602081905260408120610fc0908363ffffffff6119ea16565b90505b92915050565b6000828152602081905260408120610fc0908363ffffffff6119f616565b601481565b600081565b7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef81565b60025460ff161561105e576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b61109c6040518060400160405280601781526020017f4d696e7461626c65455243373231507265646963617465000000000000000000815250611a0b565b6110a7600082610548565b6110bf60008051602061204b83398151915282610548565b506002805460ff19166001179055565b6000818152602081905260408120610fc390611aa9565b600082815260208190526040902060020154611104906105086114f8565b6105ad5760405162461bcd60e51b8152600401808060200182810382526030815260200180611fc36030913960400191505060405180910390fd5b60008051602061204b83398151915261115a816105086114f8565b6001906111c05760405162461bcd60e51b81526020600482019081528254600260001961010060018416150201909116046024830181905290918291604490910190849080156106cf5780601f106106a4576101008083540402835291602001916106cf565b50602082141561129f576000838360208110156111dc57600080fd5b5060408051913580835290519092506001600160a01b038088169289821692918b16917fe13244aa06bdc79480ed5fdc6ebe2bb37202fcdf33ecf45dc449f4201f3dc0879181900360200190a460408051632142170760e11b81526001600160a01b038981166004830152306024830152604482018490529151918716916342842e0e9160648082019260009290919082900301818387803b15801561128157600080fd5b505af1158015611295573d6000803e3d6000fd5b5050505050610f9a565b6060838360208110156112b157600080fd5b810190602081018135600160201b8111156112cb57600080fd5b8201836020820111156112dd57600080fd5b803590602001918460208302840111600160201b831117156112fe57600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f8201169050808301925050505050505091929192905050509050846001600160a01b0316866001600160a01b0316886001600160a01b03167fdb55e3a0ae817693fd7b07170d81eab0eb2c239f36fcecbc98b6b58ac5667e7a846040518080602001828103825283818151815260200191508051906020019060200280838360005b838110156113ca5781810151838201526020016113b2565b505050509050019250505060405180910390a48051601481111561141f5760405162461bcd60e51b815260040180806020018281038252602c81526020018061201f602c913960400191505060405180910390fd5b60005b818110156114db57866001600160a01b03166342842e0e8a3086858151811061144757fe5b60200260200101516040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050600060405180830381600087803b1580156114b757600080fd5b505af11580156114cb573d6000803e3d6000fd5b5050600190920191506114229050565b505050505050505050565b60008051602061204b83398151915281565b335b90565b600082815260208190526040902061151b908263ffffffff611ab416565b15610552576115286114f8565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b600082815260208190526040902061158a908263ffffffff611ac916565b15610552576115976114f8565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b6115e3611e6d565b6000825111611639576040805162461bcd60e51b815260206004820152601f60248201527f524c505265616465723a20494e56414c49445f42595445535f4c454e47544800604482015290519081900360640190fd5b506040805180820190915281518152602082810190820152919050565b606061166182611ade565b6116b2576040805162461bcd60e51b815260206004820152601860248201527f524c505265616465723a204954454d5f4e4f545f4c4953540000000000000000604482015290519081900360640190fd5b60006116bd83611b0a565b905060608167ffffffffffffffff811180156116d857600080fd5b5060405190808252806020026020018201604052801561171257816020015b6116ff611e6d565b8152602001906001900390816116f75790505b50905060006117248560200151611b96565b855190915081146117665760405162461bcd60e51b81526004018080602001828103825260278152602001806120946027913960400191505060405180910390fd5b60006117758660200151611c2f565b60208701510190506000805b858110156117cc5761179283611b96565b91506040518060400160405280838152602001848152508582815181106117b557fe5b602090810291909101015291810191600101611781565b50929695505050505050565b60006117e382611ade565b15611835576040805162461bcd60e51b815260206004820181905260248201527f524c505265616465723a204445434f44494e475f4c4953545f41535f55494e54604482015290519081900360640190fd5b81516021101561188c576040805162461bcd60e51b815260206004820152601e60248201527f524c505265616465723a20494e56414c49445f55494e545f4c454e4754480000604482015290519081900360640190fd5b600061189b8360200151611b96565b835190915081146118dd5760405162461bcd60e51b81526004018080602001828103825260278152602001806120ea6027913960400191505060405180910390fd5b60006118ec8460200151611c2f565b8451602080870151830180519394509184900392919083101561191657826020036101000a820491505b5095945050505050565b606060006119318360200151611b96565b835190915081146119735760405162461bcd60e51b8152600401808060200182810382526028815260200180611f9b6028913960400191505060405180910390fd5b60006119828460200151611c2f565b845190915081900360608167ffffffffffffffff811180156119a357600080fd5b506040519080825280601f01601f1916602001820160405280156119ce576020820181803683370190505b5090506000816020019050611916848860200151018285611c92565b6000610fc08383611cdd565b6000610fc0836001600160a01b038416611d41565b806040516020018082805190602001908083835b60208310611a3e5780518252601f199092019160209182019101611a1f565b51815160209384036101000a60001901801990921691161790527f3a20494e53554646494349454e545f5045524d495353494f4e530000000000009190930190815260408051808303600519018152601a909201905280516105529550600194509201919050611e87565b6000610fc382611d59565b6000610fc0836001600160a01b038416611d5d565b6000610fc0836001600160a01b038416611da7565b6020810151805160009190821a9060c0821015611b00576000925050506104e5565b5060019392505050565b600080600090506000611b208460200151611c2f565b602085015185519181019250015b80821015611b8d57611b3f82611b96565b8201915080821115611b825760405162461bcd60e51b815260040180806020018281038252602c815260200180611ff3602c913960400191505060405180910390fd5b600190920191611b2e565b50909392505050565b80516000908190811a6080811015611bb15760019150611c28565b60b8811015611bc657607e1981019150611c28565b60c0811015611bf35760b78103600185019450806020036101000a85510460018201810193505050611c28565b60f8811015611c085760be1981019150611c28565b60f78103600185019450806020036101000a855104600182018101935050505b5092915050565b8051600090811a6080811015611c495760009150506104e5565b60b8811080611c64575060c08110801590611c64575060f881105b15611c735760019150506104e5565b60c0811015611c875760b5190190506104e5565b60f5190190506104e5565b80611c9c57611cd8565b5b60208110611cbc578251825260209283019290910190601f1901611c9d565b8251825160208390036101000a60001901801990921691161782525b505050565b81546000908210611d1f5760405162461bcd60e51b8152600401808060200182810382526022815260200180611f206022913960400191505060405180910390fd5b826000018281548110611d2e57fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000611d698383611d41565b611d9f57508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610fc3565b506000610fc3565b60008181526001830160205260408120548015611e635783546000198083019190810190600090879083908110611dda57fe5b9060005260206000200154905080876000018481548110611df757fe5b600091825260208083209091019290925582815260018981019092526040902090840190558654879080611e2757fe5b60019003818190600052602060002001600090559055866001016000878152602001908152602001600020600090556001945050505050610fc3565b6000915050610fc3565b604051806040016040528060008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611ec857805160ff1916838001178555611ef5565b82800160010185558215611ef5579182015b82811115611ef5578251825591602001919060010190611eda565b50611f01929150611f05565b5090565b6114fa91905b80821115611f015760008155600101611f0b56fe456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e744d696e7461626c654552433732315072656469636174653a20494e56414c49445f5349474e4154555245524c505265616465723a2042595445535f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b65524c505265616465723a204e554d5f4954454d535f4445434f4445445f4c454e4754485f4d49534d415443484d696e7461626c654552433732315072656469636174653a20455843454544535f42415443485f4c494d4954241ecf16d79d0f8dbfb92cbc07fe17840425976cf0667f022fe9877caa831b084d696e7461626c654552433732315072656469636174653a20494e56414c49445f5245434549564552524c505265616465723a204c4953545f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66524c505265616465723a2055494e545f4445434f4445445f4c454e4754485f4d49534d41544348a164736f6c6343000606000a","storage":{"0x1":"0x63","0x2":"0x1","0x73d5d1a274bdea1400ad3ea4d982f594abdfd528cde1486b6c617faa3ec116":"0x1","0x89011777cfe6194dd982545e7eb24725dfe9a1aacae299c76fc48ef5017ae650":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x89011777cfe6194dd982545e7eb24725dfe9a1aacae299c76fc48ef5017ae651":"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0x1","0xb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6":"0x4d696e7461626c654552433732315072656469636174653a20494e5355464649","0xb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf7":"0x4349454e545f5045524d495353494f4e53000000000000000000000000000000","0xba75a66b8132bebab85d36fd3638083da57ae3d78fbcd8cc41f73514287dadaf":"0x1","0xe6c7d8231a06d7cb67831aeabcbd43ba24e5e4c6569cf23405f1e558de8580e0":"0x2","0xe84508f2c7fa9c351146748b3025cb78b45df37d868e48c6a75102fecdeee645":"0x2","0xe84508f2c7fa9c351146748b3025cb78b45df37d868e48c6a75102fecdeee647":"0x0","0xf0df3dcda05b4fbd9c655cde3d5ceb211e019e72ec816e127a59e7195f2cd7f5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x5cc819c9915eadfcebd76952b8c1bc36cadd7376":{"nonce":2,"balance":"0x0","code":"0x608060405260043610610103575f3560e01c8063a900866b11610092578063f07ec37311610062578063f07ec373146102f7578063f2d12b1214610316578063f47b774014610329578063fb0f3ee114610116578063fd9f1e101461034c575f80fd5b8063a900866b1461028a578063b3a34c4c146102be578063e7acab24146102d1578063ed98a574146102e4575f80fd5b80637423eb3c116100d85780637423eb3c146101f757806379df72bd1461020b57806387201b411461022a578063881477321461024b578063a81744041461026a575f80fd5b801561011657806306fdde031461013e57806346423aa71461015f5780635b34b966146101d5575f80fd5b366101125761011061036b565b005b5f80fd5b610129610124366004615115565b6103f9565b60405190151581526020015b60405180910390f35b348015610149575f80fd5b50610152610408565b604051610135919061518f565b34801561016a575f80fd5b506101b36101793660046151a1565b5f9081526001602052604090205460ff808216926101008304909116916001600160781b03620100008204811692600160881b9092041690565b6040805194151585529215156020850152918301526060820152608001610135565b3480156101e0575f80fd5b506101e9610417565b604051908152602001610135565b348015610202575f80fd5b50610110610420565b348015610216575f80fd5b506101e96102253660046151b8565b6104c1565b61023d61023836600461524c565b6104f8565b6040516101359291906153f0565b348015610256575f80fd5b5061012961026536600461543f565b610571565b61027d61027836600461547d565b61058f565b60405161013591906154e3565b348015610295575f80fd5b506101e96102a43660046154f5565b6001600160a01b03165f9081526002602052604090205490565b6101296102cc36600461550e565b61062a565b6101296102df366004615553565b6106a3565b61023d6102f23660046155d7565b6106e1565b348015610302575f80fd5b506101e96103113660046154f5565b610784565b61027d610324366004615677565b6107a1565b348015610334575f80fd5b5061033d6107ea565b60405161013593929190615719565b348015610357575f80fd5b5061012961036636600461543f565b610801565b7f000000000000000000000000000000000000000000000000000000000000000180156103b357600263929eee145c146103b05763a61be9f05f52346020526024601cfd5b50565b63929eee1454806103e057600263929eee145c146103dc5763a61be9f05f52346020526024601cfd5b5050565b600381146103dc5763a61be9f05f52346020526024601cfd5b5f61040261080c565b92915050565b60606104126109c0565b905090565b5f6104126109d8565b63929eee14546001147f000000000000000000000000000000000000000000000000000000000000000180610453575080155b1561047157604051630f45b98b60e41b815260040160405180910390fd5b61049a7f000000000000000000000000145908bbcfc7b258e4d4d9a586f6e3249ae80216610a45565b6104b7576040516370a4078f60e01b815260040160405180910390fd5b5f63929eee145550565b5f806104cd6004610aa3565b90506104f16104e282610ab35b63ffffffff16565b610140830135610b30565b3590565b9392505050565b60608061055d61051361050b6004610aa3565b610c746104da565b61052a61052260046020610cdc565b610cfa6104da565b61054161053960046040610cdc565b610d526104da565b61055061053960046060610cdc565b89338a15028a0189610daa565b915091509b509b9950505050505050505050565b5f6104f161058a6105826004610aa3565b610de46104da565b610e3c565b606061061f6105a96105a16004610aa3565b610f5d6104da565b604080515f8082526020820190925290610601565b6105ee6040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816105be5790505b5061061961061160046020610cdc565b610fb56104da565b3361100d565b90505b949350505050565b5f6104f161064361063b6004610aa3565b61104b6104da565b604080515f808252602082019092529061069b565b6106886040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816106585790505b5084336110c1565b5f6106d76106bc6106b46004610aa3565b6112406104da565b6106cb61052260046020610cdc565b853386150286016110c1565b9695505050505050565b6060806107736106f46105a16004610aa3565b604080515f808252602082019092529061074c565b6107396040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816107095790505b5061075c61053960046020610cdc565b61076b61053960046040610cdc565b883389610daa565b915091509850989650505050505050565b6001600160a01b0381165f90815260208190526040812054610402565b60606107dc6107b361050b6004610aa3565b6107c261052260046020610cdc565b6107d161061160046040610cdc565b33861502860161100d565b90505b979650505050505050565b60605f806107f661129c565b925092509250909192565b5f6104f183836112e8565b5f61012435600281901c90600316600182118334158214806108315761083134611423565b506003841160a0810260240135906502030203010160d01b861a905f630101020360d01b881a6108648882898888611434565b9096509150506101c4600583901b01355f87600581111561088757610887615329565b036108bc5760443560243517156108a557636ab37ce75f526004601cfd5b6108af8482611751565b6108b7611809565b61099d565b6040805160208082528183019092525f9160208201818036833701905050905060028a60058111156108f0576108f0615329565b036109135761090e60c4356084353360e435610104355b8787611889565b610988565b60038a600581111561092757610927615329565b036109455761090e60c4356084353360e435610104355b87876118d4565b60048a600581111561095957610959615329565b036109735761090e60243533608435604435606435610907565b6109886024353360843560443560643561093e565b610992848261190a565b61099b816119c4565b505b6109a88689846119e8565b6109b0611a5e565b6001995050505050505050505090565b6060602080526707536561706f727460475260606020f35b5f6109e1611ab1565b600143034060801c335f525f60205260405f208054820192508281555050336001600160a01b03167f721c20121297512b72821b97f5326877ea8ecf4bb9948fea5bfcb6453074d37f82604051610a3a91815260200190565b60405180910390a290565b5f816001600160a01b0316600a5a610a5d9190615773565b6040515f8181818686fa925050503d805f8114610a95576040519150601f19603f3d011682016040523d82523d5f602084013e610a9a565b606091505b50909392505050565b5f813563ffffffff168201610402565b5f610ac661016060408051918201905290565b9050610ad58282610140611b28565b610af2610aeb610ae6846040610cdc565b611b31565b6040830152565b5f610b06610b01846060610cdc565b611b84565b9050610b13816060840152565b610b26610b1e825190565b610140840152565b50919050565b0190565b610140820151604080519084015180515f939284927fa66999307ad1bb4fde44d13a5d710bd7718e0c87c1eef68a571629fbf5b93d0292602090910190845b81811015610b9c578251601f1901805186825260c082208652905260209384019390920191600101610b6f565b508060051b6040512094505050505f7f42d81c6929ffdc4eb27a0808e40e82516ad42296c166065de7f812492304ff6e915060405160206060890151015f5b86811015610c08578151601f1901805186825260e082208552905260209283019290910190600101610bdb565b505060408051600587901b9020601f198a0180517ffa445660b7e21515a59617fcd68910b487aa5808b8abda3d78bc85df364b2c2f8252928b01805197815260608c018051938152610140909c019a8b5261018082209390915295909552939097525050925250919050565b5f8063ffffffff8335169050600581901b610c986020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610cca610cc4610cbf8484610cdc565b611240565b82850152565b602001610ca7565b5050505050919050565b5f6104f163ffffffff610cf46104ed8686610b2c8516565b16840190565b5f8063ffffffff8335169050600581901b610d1e6020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610d4a610cc4610d458484610cdc565b611bc7565b602001610d2d565b5f8063ffffffff8335169050600581901b610d766020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610da2610cc4610d9d8484610cdc565b611c09565b602001610d85565b60608036155f80610dbe8c8c85898b611c4c565b91509150610dd18c8b8b8b8b8787612029565b9450945050505097509795505050505050565b5f8063ffffffff8335169050600581901b610e086020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610e34610cc4610e2f8484610cdc565b61215b565b602001610e17565b5f610e45611ab1565b5f805f80855190505f5b81811015610f50575f878281518110610e6a57610e6a615792565b60209081029190910101518051909150600481608001516004811115610e9257610e92615329565b03610e9e575050610f48565b80519450610eab8161219e565b5f8181526001602052604081209850909650610ecd90879089903615156121d7565b50865460ff16610f455780610140015181606001515114610ef057610ef0612265565b610eff85878460200151612272565b865460ff191660011787556040517ff280791efe782edcf06ce15c8f4dff17601db3b88eb3805a0db7d77faf757f0490610f3c9088908490615895565b60405180910390a15b50505b600101610e4f565b5060019695505050505050565b5f8063ffffffff8335169050600581901b610f816020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610fad610cc4610fa88484610cdc565b61104b565b602001610f90565b5f8063ffffffff8335169050600581901b610fd96020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257611005610cc46110008484610cdc565b61230e565b602001610fe8565b60605f36151590505f806110258888858b5189611c4c565b9150915061103282612341565b61103f8887848885612380565b98975050505050505050565b5f61105e61020060408051918201905290565b60a0810180825290915061107a61107484610aa3565b82612453565b61108660016020840152565b61109260016040840152565b6110af6110a86110a3856020610cdc565b612489565b6060840152565b610b266110ba6124b1565b6080840152565b835160808101515f91906110e860048260048111156110e2576110e2615329565b146124cb565b5f80806110f78a36151561256c565b60408051600180825281830190925293965091945092505f9190816020015b61111e615027565b8152602001906001900390816111165790505090508a815f8151811061114657611146615792565b602002602001018190525061115b818b612764565b6111678684848b6128dd565b6040805160018082528183019092525f91602080830190803683375091925050503615156004878181111561119e5761119e615329565b146111c1576111af8d83885f6129dd565b6111bb86868684612a2f565b506111d3565b6111d0888e6080015183612b33565b95505b6111de888c8c612c03565b85825f815181106111f1576111f1615792565b6020026020010181815250506112088d8388612d26565b61122586895f01518a602001518d8c604001518d60600151612df3565b61122d611a5e565b5060019c9b505050505050505050505050565b5f61125361020060408051918201905290565b905061126760208381019083016040611b28565b60a0810180825261127a61107484610aa3565b61128b6110a86110a3856060610cdc565b610b266110ba6110a3856080610cdc565b60605f805f6112a9612e58565b90505f7f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c905060605f5281602052806040526303312e3660635260a05ff35b5f6112f1611ab1565b5f8083815b81811015611408573687878381811061131157611311615792565b90506020028101906113239190615977565b90505f61133360208301836154f5565b90505f61134660408401602085016154f5565b90505f61135960a0850160808601615996565b905081331483331417156004821417871796505f61138d61138261137a8790565b610ab36104da565b866101400135610b30565b5f8181526001602052604090819020805461ffff19166101001781559051909a509091506001600160a01b0380851691908616907f6bacc01dbe442496068f7d234edd811f1a5f833243e0aec824f86ab861f3c90d906113f09085815260200190565b60405180910390a385600101955050505050506112f6565b5050801561141857611418612f35565b506001949350505050565b63a61be9f05f52806020526024601cfd5b5f8061143f5f6124cb565b611447612f42565b426101643511154261014435111715611475576321ccfeb75f5261014435602052610164356040526044601cfd5b610204356102643510156114905763466aa6165f526004601cfd5b7f42d81c6929ffdc4eb27a0808e40e82516ad42296c166065de7f812492304ff6e608081905260a08790526060602460c037604060646101203760e060802061016052610264356102043560051b6102a0016001820181526020810190508881526080602460208301376101608860a0528760c0525f60e0525f6102043593505f5b84811015611566578060400261028401602081610100376040816101203760208101358317925060208401935060e0608020845260a0850194508b85528a6020860152604081606087013750600101611512565b6001850160051b610160206060526102643594505b848110156115b6578060400261028401925060a0840193508a845289602085015260408360608601376020830135919091179060010161157b565b506001600160a01b038111156115d3576339f3e3fd5f526004601cfd5b50505050505f7fa66999307ad1bb4fde44d13a5d710bd7718e0c87c1eef68a571629fbf5b93d029050806080528360a052606060c460c0376020610104610120375060c06080205f9081526020812060e05260843590611647826001600160a01b03165f9081526020819052604090205490565b7ffa445660b7e21515a59617fcd68910b487aa5808b8abda3d78bc85df364b2c2f60808190529091506040608460a03760605161010052896101205260a061014461014037816101e05261018060802094505050506102043560051b61018001828152336020820152608060408201526101206060820152600160808201528360a0820152606060c460c083013760a061026435026101e00160a4356084357f9d9af8e38d66c62e2c12f0225249fd9d721c54b83f48d9352c97c6cacdcb6f318385a35f60605260608101820160405250505f61172383612f8d565b905061172f8389612fde565b7101000000000000000000000000000001000182559150509550959350505050565b60c43560843560e4356101043584156117b9575f6040519050632671a55160e11b815260206004820152600160248201528660448201528460648201528360848201523360a48201528260c48201528160e48201526117b38682610104613033565b50611801565b60028660058111156117cd576117cd615329565b036117f457806001146117e3576117e3816130ea565b6117ef848433856130fb565b611801565b61180184843385856131b0565b505050505050565b346064356084356102643560061b5f80805b8381101561185a5761028481013592506102a481013591508683111561184357611843613287565b82870396506118528284613294565b60400161181b565b508585111561186b5761186b613287565b6118758486613294565b848611156118015761180133868803613294565b61189381836132ca565b816118ba57826001146118a9576118a9836130ea565b6118b5878787876130fb565b6118cb565b6118cb828260028a8a8a8a8a6132e8565b50505050505050565b6118dd83613367565b6118e781836132ca565b816118f9576118b587878787876131b0565b6118cb828260038a8a8a8a8a6132e8565b5f805f805f861561192f57505060843592503391505060c4356101043560e435611944565b50339350506084359150506024356064356044355b801561195257611952613379565b50600586901b6101e403356102643560061b5f80805b838110156119a95761028481013592506102a481013591508a156119935761199083876159b4565b95505b6119a1878a8486898f613386565b604001611968565b506119b886898988888e613386565b50505050505050505050565b60408151146119d05750565b5f6119dc826020015190565b90506103dc81836133bb565b611a048260a4355b331415600182116004909210919091161690565b15611a5957805f611a13825190565b9050608081901c63ffffffff8216611a3484826317b1f94282526001905250565b601c840163fb5014fc6060529350611a5060a4358886856133df565b5f6060526118cb565b505050565b7f00000000000000000000000000000000000000000000000000000000000000018015611a8f575f63929eee145d50565b63929eee145480611aa5575f63929eee145d5050565b50600163929eee145550565b7f00000000000000000000000000000000000000000000000000000000000000018015611af05763929eee145c156103b057637fa8a9875f526004601cfd5b63929eee145480611b135763929eee145c156103dc57637fa8a9875f526004601cfd5b600181146103dc57637fa8a9875f526004601cfd5b80838337505050565b5f63ffffffff8235166040519150808252602082018160051b81018060a084026020870183378293505b81841015611b745780845260209093019260a001611b5b565b60405250919392505050565b9052565b5f63ffffffff8235166040519150808252602082018160051b81018060c084026020870183378293505b81841015611b745780845260209093019260c001611bae565b5f611bd960a060408051918201905290565b9050611be782826080611b28565b611c04611bfd611bf8846080610cdc565b613427565b6080830152565b919050565b5f63ffffffff8235166040519150808252602082018160051b8101808360061b6020870183378293505b81841015611b7457808452602090930192604001611c33565b60605f611c5960016124cb565b86515f90600160e61b82351690806001600160401b03811115611c7e57611c7e61574b565b604051908082528060200260200182016040528015611ca7578160200160208202803683370190505b50945060010160051b91505f60205b83811015611ea8575f611ccc8c83613cce6104da565b90505f805f611cdb848e61256c565b6001600160781b0382166020880152919450925090505f829003611d025750505050611ea0565b6001600160781b0381166040808601919091528a8601849052845160a081015160c0820151608083015192909301518051600184119d909d179c600490931099509092915f5b81811015611dea575f838281518110611d6357611d63615792565b602002602001015190508b8151108d179c505f611d858989846080015161345e565b90508160800151826060015103611da25760608201819052611db7565b611db18989846060015161345e565b60608301525b5f611dd08360600151838a8a611dcb361590565b61349a565b606084018190526080909301929092525050600101611d48565b5087516060015180515f5b81811015611e94575f838281518110611e1057611e10615792565b602002602001015190505f611e2a8b8b846080015161345e565b90508160800151826060015103611e475760608201819052611e5c565b611e568b8b846060015161345e565b60608301525b5f611e718360600151838c8c611dcb36151590565b6060840181905260a0840180516080909501949094529092525050600101611df5565b50505050505050505050505b602001611cb6565b50506001600160e61b018103611ec057611ec06134ed565b50611ecb8888612764565b5f8060205b8381101561200e578581015192508215612006575f611ef28c83613cce6104da565b9050885f03611f0d575f878301819052602090910152612006565b60048151608001516004811115611f2657611f26615329565b14611fa957611f3f8188866001600587901c038e6134fa565b611f55575f878301819052602090910152612006565b602080820151604083015183516080810151930151611f8e9388936001600160781b039081169316913314156001909111168e17612a2f565b611fa4575f878301819052602090910152612006565b611fd4565b611fbb815f015182608001518c612b33565b878301819052935083611fd4575f602090910152612006565b886001900398505f815f01519050611fff85825f015183602001518c85604001518660600151612df3565b6001935050505b602001611ed0565b508061201c5761201c613555565b5050509550959350505050565b85518551606091829161203c81836159c7565b6001600160401b038111156120535761205361574b565b60405190808252806020026020018201604052801561208c57816020015b61207961505a565b8152602001906001900390816120715790505b5092505f5b828110156120e4576120bf8c5f8d84815181106120b0576120b0615792565b60200260200101518c8c613562565b8482815181106120d1576120d1615792565b6020908102919091010152600101612091565b505f5b8181101561213d576121168c60018c848151811061210757612107615792565b60200260200101518c5f613562565b848483018151811061212a5761212a615792565b60209081029190910101526001016120e7565b5061214b8b84888a896135b1565b9350505097509795505050505050565b5f61216c6040808051918201905290565b905061218661218261217d84610aa3565b61389a565b8252565b611c046121976110a3846020610cdc565b6020830152565b5f6121b38260600151518361014001516138b9565b81516001600160a01b03165f90815260208190526040902054610402908390610b30565b82545f90610100900460ff16156121fe5781156121f7576121f7856138c9565b505f610622565b83546201000090046001600160781b0316801561225957831561222957612224866138da565b612259565b8454600160881b90046001600160781b0316811061225957821561225057612250866138eb565b5f915050610622565b50600195945050505050565b632165628a5f526004601cfd5b33831480156122815750505050565b5f61228a612e58565b61190160f01b5f9081526002828152602287815260428320908390528651939450929190601f601d840116106102e260621984011016156122f4576122cf86886138fc565b61190160f01b5f908152600286905260228281526042822091905290975090506122f7565b50815b612304888285858a613992565b5050505050505050565b5f61231f6040808051918201905290565b9050612330612182610d9d84610aa3565b611c04612197610d9d846020610cdc565b80518060051b6040019050602082038051602082527f4b9f2d36e1b4c93de62cc077b00b1a91d84b6c31b4a14e012718dcca230689e78383a190525050565b8351606090806001600160401b0381111561239d5761239d61574b565b6040519080825280602002602001820160405280156123d657816020015b6123c361505a565b8152602001906001900390816123bb5790505b5091505f5b81811015612439575f8782815181106123f6576123f6615792565b6020026020010151905061241389825f0151836020015185613adb565b84838151811061242557612425615792565b6020908102919091010152506001016123db565b5061244787838787876135b1565b50505b95945050505050565b6124608282610160611b28565b612471610aeb610ae6846040610cdc565b6103dc612482610b01846060610cdc565b6060830152565b6040518135601f0163ffffffe01660200180838337913563ffffffff16815290810160405290565b5f6124c3602060408051918201905290565b5f8152905090565b7f000000000000000000000000000000000000000000000000000000000000000180156125185763929eee145c1561250a57637fa8a9875f526004601cfd5b8160010163929eee145d5050565b63929eee14548061254a5763929eee145c1561253b57637fa8a9875f526004601cfd5b8260010163929eee145d505050565b6001811461255f57637fa8a9875f526004601cfd5b505060020163929eee1455565b5f805f80855f015190506125898160a001518260c0015187613c80565b61259c57505f925082915081905061275d565b602086015160408701516001600160781b0391821694501691505f6004826080015160048111156125cf576125cf615329565b036125fc57600183850218905080156125ea576125ea613ca3565b506001935083925082915061275d9050565b50818311831517801561261157612611613ca3565b608082015160011615848411161561262b5761262b613cb0565b6126348261219e565b5f81815260016020526040812091965061265290879083908a6121d7565b61266557505f935083925061275d915050565b805460ff1661268057612680835f0151878a60600151612272565b8054608881901c8061269457869150612757565b6001600160781b038260101c169150600186036126b8578181039650809550612757565b8086036126d357908601858103868211029096039590612757565b80860296810291909502810186810387821102918290039695919003906001600160781b0386111561275757612717565b5f5b8215610b2657908290069190612706565b61272a6127248784612704565b88612704565b8015019687900496909504946001600160781b0386111561275757634e487b715f5260116020526024601cfd5b50505050505b9250925092565b805182515f5b82811015612853575f84828151811061278557612785615792565b602002602001015190505f815f015190508381106127aa576127aa8260200151613cbd565b5f8782815181106127bd576127bd615792565b6020026020010151905080602001516001600160781b03165f036127e35750505061284b565b80516040808201519085015163bfb3f8ce5f8760200151600181111561280b5761280b615329565b14612827575f61281c856060613cce565b9350636088d7de9150505b8251821061283857805f526004601cfd5b612843838389613cd9565b505050505050505b60010161276a565b505f5b818110156128d6575f85828151811061287157612871615792565b6020026020010151905080602001516001600160781b03165f0361289557506128ce565b8051608081015160608201516128b29085908363a8930e9a613d8c565b6128ca8483604001518363d69293326104da613d8c90565b5050505b600101612856565b5050505050565b60a084015160c08501516040860151515f805b8281101561295a575f8960400151828151811061290f5761290f615792565b602002602001015190505f815f01519050801584179350505f612946826060015183608001518c8c8b8b612941361590565b613df3565b6060830152506080018690526001016128f0565b5060808801516004811082168015612974576129746134ed565b505050506060860151515f5b81811015612304575f8860600151828151811061299f5761299f615792565b602002602001015190505f6129c4826060015183608001518b8b8a8a61294136151590565b60608301525060a0810151608090910152600101612980565b8351608081015160208201513314156001821160049092109190911616156128d6575f80612a12858489608001518988613e2e565b63fb5014fc6060529092509050611a5083602001518684846133df565b5f848152600160205260408120805482908290608881901c80612a5457889150612adc565b6001600160781b038260101c169150808803612a7857908801878111935090612adc565b97880297808802979190910288018781119350906001600160781b038083119089111715612adc57612aaa8883612704565b8015019788900497909104906001600160781b038083119089111715612adc57634e487b715f5260116020526024601cfd5b508215612b15578515612b09576040516310fda3e160e01b8152600481018a905260240160405180910390fd5b5f945050505050610622565b8660881b8160101b1760011782556001945050505050949350505050565b5f83610140015184606001515114612b4d57612b4d612265565b83515f8080612b5c8888613fac565b915091505f8082845f885af16001600160a01b0385165f908152600260205260409020805460018101909155606086901b189550925082612bbb578515612bae57612ba5614056565b612bae8561409d565b505f93506104f192505050565b505050505f805f612bd8876040015188606001516104da6140ae90565b925092509250825f14612bee57612bee8461409d565b60408701919091526060860152509392505050565b6040805160208082528183019092525f916020820181803683375050506040850151519091505f5b81811015612c7b575f86604001518281518110612c4a57612c4a615792565b60200260200101519050846080820152612c7281885f0151896101200151876104da61432790565b50600101612c2b565b50506060840151515f90815b81811015612d09575f87606001518281518110612ca657612ca6615792565b602002602001015190505f6005811115612cc257612cc2615329565b81516005811115612cd557612cd5615329565b03612cf1574793508381606001511115612cf157612cf1613287565b612d00813389886143276104da565b50600101612c87565b5050612d14826119c4565b504780156128d6576128d63382613294565b8251608081015160208201515f92839283928392916004811060019091111633909114151615612d8857612d69612d6361010083015190565b5190565b8861441c565b9093509150612d7a60208201612d5f565b945063fb5014fc9350612dd4565b600481608001516004811115612da057612da0615329565b0361230457805194505f8560601b9050612dc187838b608001518b8561445d565b639397928596509094509250612dd49050565b612dde6060859052565b612dea858785856133df565b5f606052612304565b60608290506060829050856001600160a01b0316876001600160a01b03167f9d9af8e38d66c62e2c12f0225249fd9d721c54b83f48d9352c97c6cacdcb6f318a888686604051612e469493929190615a13565b60405180910390a35050505050505050565b5f7f00000000000000000000000000000000000000000000000000000000000005394614612f10575060408051608080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f5f9081527f32b5c112df393a49218d7552f96b2eeb829dfb4272f4f24eef510a586b85feef6020527f95f740a33d720b7cd93c75d515ac95ca3bbaa2594cce46ea48e00974ea8fcd14855246606090815230845260a08220949095529093529190915290565b507f8bebed3dbe91a82da0dc94c8d370c160ad6db1b32164303e65b8544bae7e2f5590565b63fed398fc5f526004601cfd5b600435602014610224356102401416610244356102606102643560061b01141660186101243510600160a01b60843560a4351760c4356024351717101616806103b0576103b0614528565b5f8181526001602081905260409091209060843590612fb290849084903615156121d7565b50815460ff16610b2657610b268184612fd9602463ffffffff6102443516016124896104da565b612272565b5f612feb8260a4356119f0565b15610402575f805f612ffc86614535565b63fb5014fc6060529194509250905061301c60a43587601c8601856133df565b5f60605260209190910160801b1781529392505050565b604080517f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c60ff60a01b175f90815260208690527f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f83526055600b20919092526001600160a01b031690505f805f805260205f85875f875af191505f519050816130c8576130bf614056565b6130c8836145ed565b6001600160e01b03198116632671a55160e11b146118015761180186846145fe565b6369f958275f52806020526024601cfd5b833b61311257635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af1806131a2573d1561318057601f3d0160051c8260051c8160030281831115613169578183036003028280028480020360091c01015b5a60208201101561317c573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b6131c757635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af18061326c573d1561324b57601f3d0160051c8560051c8160030281831115613234578183036003028280028480020360091c01015b5a602082011015613247573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b638ffff9805f526004601cfd5b61329d81613367565b5f805f805f85875af1905080611a59576132b5614056565b63bc806b965f5282602052816040526044601cfd5b5f6132d6836020015190565b9050818114611a5957611a59836119c4565b5f60208851036133225750604080885260208089018a9052632671a55160e11b918901919091526044880152600160648801819052613331565b50606487018051600101908190525b603c60c082028901038781528660208201528560408201528460608201528360808201528260a082015250505050505050505050565b806103b0576391b3e5145f526004601cfd5b636ab37ce75f526004601cfd5b61338f83613367565b61339981836132ca565b816133aa576117ef86868686614613565b611801828260018989895f8a6132e8565b6064810151604082019060c0026044016133d6848383613033565b50506020905250565b5f806001600160e01b03198451165f805260205f85875f8b5af15f51909350149050816134185761340e614056565b846080526024607cfd5b8061180157846080526024607cfd5b5f8063ffffffff83351690506001810160051b61344a8160408051918201905290565b9250613457848483611b28565b5050919050565b5f82840361346d5750806104f1565b82848309156134835763c63cf0895f526004601cfd5b5f61348e8584615aaf565b93909304949350505050565b5f8486146134e357838303428590038082035f6134b7838a615aaf565b6134c1838c615aaf565b6134cb91906159c7565b9050858487830304018115150294505050505061244a565b5092949350505050565b6312d3f5a35f526004601cfd5b8451608081015160208201515f92916004811060019091111633909114151615610f50575f8061353187848b608001518b8a613e2e565b9150915061354b836020015188848463fb5014fc8a614707565b935050505061244a565b63d5da9a1b5f526004601cfd5b61356a61505a565b83515f0361357b5761357b85614774565b5f85600181111561358e5761358e615329565b036135a45761359f86858385614785565b61244a565b61244a86858333876148f5565b84516060905f816001600160401b038111156135cf576135cf61574b565b6040519080825280602002602001820160405280156135f8578160200160208202803683370190505b506040805160208082528183019092529192505f9190602082018180368337505089519192505060010160051b60205b81811015613687575f61363e8b83613cce6104da565b8051606081015191925090801561367c57478111825115161561366857638ffff9805f526004601cfd5b61367c828460200151856040015189614327565b505050602001613628565b50505f5b838110156137f3575f8a82815181106136a6576136a6615792565b6020026020010151905080602001516001600160781b03165f036136ed575f8483815181106136d7576136d7615792565b91151560209283029190910190910152506137eb565b600184838151811061370157613701615792565b911515602092830291909101909101528051604081015180515f5b81811015613786575f83828151811061373757613737615792565b6020026020010151905080606001515f1461377357608081018051908e9052855161012087015161376d9184918c6143276104da565b60808201525b608081015160609091015260010161371c565b505050606081015180515f5b818110156137e5575f8382815181106137ad576137ad615792565b602002602001015190505f81606001519050805f146137d1576137d1888483614a2c565b5060a0810151606090910152600101613792565b50505050505b60010161368b565b506137fd816119c4565b47801561380e5761380e3382613294565b8515613884575f5b848110156138825783818151811061383057613830615792565b60200260200101511561387a5761387a8b828151811061385257613852615792565b60200260200101518a8b848151811061386d5761386d615792565b6020026020010151612d26565b600101613816565b505b61388c611a5e565b509098975050505050505050565b5f6138ad61016060408051918201905290565b9050611c048282612453565b808210156103dc576103dc614a45565b631a5155745f52806020526024601cfd5b63ee9e0e635f52806020526024601cfd5b6310fda3e15f52806020526024601cfd5b5f805f84516001811660410380820360051c9250808752806020018701915050805160e81c6003820191506001811660051b868152825160208218525060015b838110156139685760405f2082821c60051b60209081169182529384018051919094185260010161393c565b50505060405f2091505f61397b82614a52565b5f9081526020939093525050604090209392505050565b5f805f528151602083038051826041035f600182116139f557604087015160608801515f1a83156139d657601b8260ff1c0190506001600160ff1b03821660408a01525b88528a855260205f60808760015afa508385528588526040880152505f515b8a148a1515169450849050613abe57858552604082526044850380516040870351630b135d3f60e11b835289604089035260205f60648b01858f5afa96508615613ab257630b135d3f60e11b5f5114613ab2578b3b15613a5c57634f7fb80d5f526004601cfd5b6001866041031115613a7557638baa579f5f526004601cfd5b64010100000060608901515f1a1a15604187141615613aa557631f003d0a5f5260608801515f1a6020526024601cfd5b63815e1d645f526004601cfd5b8385529152603f198601525b5050508061180157613ace614056565b634f7fb80d5f526004601cfd5b613ae361505a565b8251158451151715613afc576398e9db6e5f526004601cfd5b613b0461505a565b613b118685835f806148f5565b805160608101515f03613b2657509050610622565b613b368787858460800151614785565b82516040828101519082015160208085015190840151855185511891181791181715613b6d5763bced929d5f52846020526024601cfd5b806060015182606001511115613bf4575f865f81518110613b9057613b90615792565b60200260200101519050816060015183606001510389825f015181518110613bba57613bba615792565b60200260200101515f015160600151826020015181518110613bde57613bde615792565b6020026020010151606001818152505050613c75565b5f875f81518110613c0757613c07615792565b60200260200101519050826060015182606001510389825f015181518110613c3157613c31615792565b60200260200101515f015160400151826020015181518110613c5557613c55615792565b602002602001015160600181815250508260600151826060018181525050505b505050949350505050565b428084111590831116818015613c94575080155b156104f1576104f18484614e61565b635a052b325f526004601cfd5b63a11b63ff5f526004601cfd5b63133c37c65f52806020526024601cfd5b5f6104f18284015190565b5f838381518110613cec57613cec615792565b602002602001015190505f815f01519050613d078160031090565b613d1357613d13614e76565b60408201518015613d3657613d318460600151828660800151614e83565b613d49565b60808401515115613d4957613d49614ecd565b6004821460030383816005811115613d6357613d63615329565b90816005811115613d7657613d76615329565b9052505050606090920151604090910152505050565b82515f5b81811015611801575f858281518110613dab57613dab615792565b60209081029190910101518051604082015191925090600382116004881415821515171615613de557855f5288602052836040526044601cfd5b505050806001019050613d90565b5f868803613e0d57613e0686868961345e565b90506107df565b6107dc613e1b87878b61345e565b613e2688888b61345e565b86868661349a565b5f805f613e39614eda565b6301e4d72a815260208082015260408101898152336060830152601c820194509091508751604082015287613e79613e7260a083015190565b60e0840152565b613e8f613e8760c083015190565b610100840152565b613ea5613e9d60e083015190565b610120840152565b610140613eb3816060850152565b5f613ebf604084015190565b90505f613ece82848701614ee4565b928301929050613edf836080870152565b5f613eeb606086015190565b90505f613efa82868901614f4a565b948501949050613f0b8560a0890152565b5f613f188e878a01614faf565b959095019450613f298560c0890152565b8685015f613f378e83614fce565b602497019687019a50613f539050613f4e8c8c0190565b614ffe565b8060408b901b60808b901b17178f610100018181525050613f7d8c82611b8090919063ffffffff16565b60058c8e51613f8c91906159b4565b613f97911b8b6159b4565b99505050505050505050509550959350505050565b5f8083613fb7614eda565b639891976581523360208201908152608060408301819052601c9092019450905f613fe3604085015190565b90505f613ff282848601614ee4565b928301929050614003836040860152565b5f61400f606087015190565b90505f61401e82868801614ee4565b94850194905061402f856060880152565b895f61403d82898901614faf565b9a9d96909a016004019b50949950505050505050505050565b3d1561409b57601f3d0160051c60405160051c8160030281831115614088578183036003028280028480020360091c01015b5a602082011015611a59573d5f803e3d5ffd5b565b63939792855f52806020526024601cfd5b60603d105f8080808080866141205760405f803e5f51935060205192503d60208501113d60208501118082179850505086614120576020845f3e5f51915060208360203e60205190508160071b60208501018160a0026020850101803d10823d101761ffff8486171117985050505f80525b86614152575f8061413584602088018d61415b565b9250975061414783602087018c61423b565b929092179850909550505b5050505061275d565b5f806040519150825160c08602602001830160405285835260208660010160051b8085018360010160051b8701614199858b81811090829003020190565b60010160051b8a861196505b808510156141f957828589015260808a843e6060830151955085608084015260608201518681116141d685856142e2565b17881797505060808a01995060a08301925060a0820191506020850194506141a5565b50505b8183101561422f578083870152608088823e6060810151608082015260808801975060a0810190506020830192506141fc565b50505050935093915050565b604051815180851190808603818710028101602060e08202850181016040528185526001928301600590811b87019390920190911b908185015b8282101561422f57808287015260a088823e60206060890160a083013e606081015160608501516142b26080840151608088015180159114171590565b818311176142c084886142e2565b60a09b909b019a179690961795505060c0938401936020929092019101614275565b5f81516040830151801560038311161561430457506040840151600119909101905b604085015181148551831460208701516020870151141616159250505092915050565b5f8451600581111561433b5761433b615329565b0361437857604084015160208501516001600160a01b0316171561436157614361613379565b61437384608001518560600151613294565b614416565b60018451600581111561438d5761438d615329565b036143be576040840151156143a4576143a4613379565b614373846020015184866080015187606001518686613386565b6002845160058111156143d3576143d3615329565b036143f7576143738460200151848660800151876040015188606001518787611889565b61441684602001518486608001518760400151886060015187876118d4565b50505050565b608082901c63ffffffff604084901c811690808516906144449084906317b1f94290611b8016565b601c830192506144548482614fce565b50509250929050565b5f80614467614eda565b63f4dd92ce815287841860a0820152601c8101925060200160a0808252875f614491604083015190565b90505f6144a082858701614ee4565b9384019390506144b1846020870152565b5f6144bd606085015190565b90505f6144cc82878901614f4a565b9586019590506144dd866040890152565b5f6144ea8d888a01614faf565b9687019690506144fb8760608a0152565b5f6145088d898b01614fce565b905080880197508760040199505050505050505050509550959350505050565b6339f3e3fd5f526004601cfd5b6301e4d72a6102043560051b6080019081525f808260208082015260408101858152336060830152601c919091019061456f608435610aeb565b61458061014460e083016060611b28565b61014061458e816060840152565b61459c60a082016080840152565b61016060a06102643581029290920101906145b8908290840152565b6145c25f82840152565b6020016145d08160c0840152565b5f9181019182526020820196909652939560449095019492505050565b63d13d53d45f52806020526024601cfd5b631cf99b265f5281602052806040526044601cfd5b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166146f85780873b1515166146f857806146e757816146ca573d156146a957601f3d0160051c8360051c8160030281831115614692578183036003028280028480020360091c01015b5a6020820110156146a5573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b5f805f6001600160e01b03198751165f805260205f888a5f8e5af15f5190935014905081614753578361473e575f925050506106d7565b614746614056565b845f52876020526024601cfd5b8061476557845f52876020526024601cfd5b50600198975050505050505050565b63375c24c15f52806020526024601cfd5b5f805f85865160051b87015b808210156148a2576020820191508851825151106147b1576147b16148d6565b81515160051b60208a01015180516020845101515f6040830151602085015115815184101517156147e6575050505050614791565b8260051b60208201015191505060608101935083518901915083511589831060011b17881797508198505f84528a51935086156001811461484f5760608220881860408d01516101208601511860208e015186511817171561484a5761484a6148d6565b614898565b8151855260208201516020860152604082015160408601528a6080860152835160208d015261012084015160408d015260608520975060208d0192508683181561489857865183525b5050505050614791565b5050508160608551015280156148cf57600181036148c7576391b3e5145f526004601cfd5b6148cf6148e3565b5050614416565b637fda72795f526004601cfd5b634e487b715f5260116020526024601cfd5b5f805f86875160051b88015b808210156149f7576020820191508151518a518110614922576149226148d6565b8060051b60208c01015190506020835101515f606083510151602084015115815184101517156149555750505050614901565b8260051b60208201015191505060608101925082518801915082511588831060011b17871796508197505f83528a5192508515600181146149a75760a0822087146149a2576149a26148d6565b6149ee565b815184526020820151602085015260408201516040850152608082015160808501528a60208d01528960408d015260a08220965060208d019250858318156149ee57855183525b50505050614901565b50508551606001839052508015614a255760018103614a1d576391b3e5145f526004601cfd5b614a256148e3565b50506128d6565b63a5f542085f528260205281604052806060526064601cfd5b63466aa6165f526004601cfd5b5f614e58565b5f6009821015614bb1576005821015614b0e576003821015614ac1577f832c58a5b611aadcfa6a082ac9d04bace53d8278387f10040347b7e98eb5b30260018314027fbf8e29b89f29ed9b529c154a63038ffca562f8d7cd1e2545dda53a1b582dde3018610402565b7ff3e8417a785f980bdaf134fa0274a6bf891eeb8195cd94b09d2aa651046e28bc60038314027fa02eb7ff164c884e5e2c336dc85f81c6a93329d8e9adf214b32729b894de2af118610402565b6007821015614b64577f25d02425402d882d211a7ab774c0ed6eca048c4d03d9af40132475744753b2a360058314027f1c19f71958cdd8f081b4c31f7caf5c010b29d12950be2fa1c95070dc47e30b5518610402565b7fb58d772fb09b426b9dece637f61ca9065f2b994f1464b51e9207f55f7c8f594860078314027f7ff98d9d4e55d876c5cfac10b43c04039522f3ddfb0ea9bfe70c68cfb5c7cc1418610402565b6011821015614d0957600d821015614c6657600b821015614c19577f6f0ec38c21f6f583ab7f3c5413c773ffd5344c34fde1d390958e438bf667448f60098314027fd1d97d1ef5eaa37a4ee5fbf234e6f6d64eb511eb562221cd7edfbdde0848da0518610402565b7f32f4e7485d6485f9f6c255929b9905c62ba919758bbe231f231eaeecf33d810c600b8314027fbb98d87cc12922b83759626c5f07d72266da9702d19ffad6a514c73a89002f5f18610402565b600f821015614cbc577f8df51df98847160517f5b1186b4bc3f418d98b8a7f17f1292f392d79d600d79e600d8314027f6b5b04cbae4fcb1a9d78e7b2dfc51a36933d023cf6e347e03d517b472a85259018610402565b7fcc4886e37eedd9aacd6c1c2c9247197a621a71282e87a7cbc673f3736d9aa141600f8314027f1da3eed3ecef6ebaa6e5023c057ec2c75150693fd0dac5c90f4a142f9879fde818610402565b6015821015614db5576013821015614d68577f2d7a3ed6dab270fdb8e054b2ad525f0ce2a8b89cc76c17f0965434740f673a5560118314027fc3939feff011e53ab8c35ca3370aad54c5df1fc2938cd62543174fa6e7d8587718610402565b7f54b3212a178782f104e0d514b41a9a5c4ca9c980bf6597c3cecbf280917e202a60138314027f5a4f867d3d458dabecad65f6201ceeaba0096df2d0c491cc32e6ea4e6435001718610402565b6017821015614e0b577fbb40bf8cea3a5a716e2b6eb08bbdac8ec159f82f380783db3c56904f15a43d0460158314027f3bd8cff538aba49a9c374c806d277181e9651624b3e31111bc0624574f8bca1d18610402565b7f403be09941a31d05cfc2f896505811353d45d38743288b016630cce39435476a60178314027f1d51df90cba8de7637ca3e8fe1e3511d1dc2f23487d05dbdecb781860c21ac1c18610402565b61040282614a58565b6321ccfeb75f5281602052806040526044601cfd5b6394eb6af65f526004601cfd5b5f835f5260205f2060208301835160051b81015b80821015614ebe57815180841160051b93845260209384185260405f209290910190614e97565b50508314905080614416576144165b6309bde3395f526004601cfd5b5f61041260405190565b5f825180835260208401602084018260051b82015b80831015614f375782518051835260208101516020840152604081015160408401526060810151606084015250602083019250608082019150614ef9565b5050508060071b60200191505092915050565b5f80614f54845190565b8084529050602084810190600583901b860181019085015b82821115614f9c575f614f7e84615008565b9050614f8c818360a0615011565b506020929092019160a001614f6c565b60a0840260200194505050505092915050565b5f63ffffffe0603f614fbf855190565b01169050610402838383615011565b5f80614fd8845190565b8084529050600581901b614ff3602086810190860183615011565b602001949350505050565b6103b06040829052565b5f610402825190565b8082828560045afa80153d151715614416575f80fd5b6040518060a0016040528061503a61509c565b81525f602082018190526040820152606080820181905260809091015290565b60408051610100810182525f606082018181526080830182905260a0830182905260c0830182905260e083018290528252602082018190529181019190915290565b6040518061016001604052805f6001600160a01b031681526020015f6001600160a01b0316815260200160608152602001606081526020015f60048111156150e6576150e6615329565b81525f6020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b5f60208284031215615125575f80fd5b81356001600160401b0381111561513a575f80fd5b820161024081850312156104f1575f80fd5b5f81518084525f5b8181101561517057602081850181015186830182015201615154565b505f602082860101526020601f19601f83011685010191505092915050565b602081525f6104f1602083018461514c565b5f602082840312156151b1575f80fd5b5035919050565b5f602082840312156151c8575f80fd5b81356001600160401b038111156151dd575f80fd5b820161016081850312156104f1575f80fd5b5f8083601f8401126151ff575f80fd5b5081356001600160401b03811115615215575f80fd5b6020830191508360208260051b850101111561522f575f80fd5b9250929050565b80356001600160a01b0381168114611c04575f80fd5b5f805f805f805f805f805f60e08c8e031215615266575f80fd5b6001600160401b03808d35111561527b575f80fd5b6152888e8e358f016151ef565b909c509a5060208d013581101561529d575f80fd5b6152ad8e60208f01358f016151ef565b909a50985060408d01358110156152c2575f80fd5b6152d28e60408f01358f016151ef565b909850965060608d01358110156152e7575f80fd5b506152f88d60608e01358e016151ef565b909550935060808c0135925061531060a08d01615236565b915060c08c013590509295989b509295989b9093969950565b634e487b7160e01b5f52602160045260245ffd5b60068110611b8057611b80615329565b61535882825161533d565b6020818101516001600160a01b0390811691840191909152604080830151908401526060808301519084015260809182015116910152565b5f815180845260208085019450602084015f5b838110156153e55781516153b888825161534d565b808401516001600160a01b031660a08901526040015160c088015260e090960195908201906001016153a3565b509495945050505050565b604080825283519082018190525f906020906060840190828701845b8281101561542a57815115158452928401929084019060010161540c565b50505083810360208501526106d78186615390565b5f8060208385031215615450575f80fd5b82356001600160401b03811115615465575f80fd5b615471858286016151ef565b90969095509350505050565b5f805f8060408587031215615490575f80fd5b84356001600160401b03808211156154a6575f80fd5b6154b2888389016151ef565b909650945060208701359150808211156154ca575f80fd5b506154d7878288016151ef565b95989497509550505050565b602081525f6104f16020830184615390565b5f60208284031215615505575f80fd5b6104f182615236565b5f806040838503121561551f575f80fd5b82356001600160401b03811115615534575f80fd5b830160408186031215615545575f80fd5b946020939093013593505050565b5f805f805f60808688031215615567575f80fd5b85356001600160401b038082111561557d575f80fd5b9087019060a0828a031215615590575f80fd5b909550602087013590808211156155a5575f80fd5b506155b2888289016151ef565b909550935050604086013591506155cb60608701615236565b90509295509295909350565b5f805f805f805f8060a0898b0312156155ee575f80fd5b88356001600160401b0380821115615604575f80fd5b6156108c838d016151ef565b909a50985060208b0135915080821115615628575f80fd5b6156348c838d016151ef565b909850965060408b013591508082111561564c575f80fd5b506156598b828c016151ef565b999c989b509699959896976060870135966080013595509350505050565b5f805f805f805f6080888a03121561568d575f80fd5b87356001600160401b03808211156156a3575f80fd5b6156af8b838c016151ef565b909950975060208a01359150808211156156c7575f80fd5b6156d38b838c016151ef565b909750955060408a01359150808211156156eb575f80fd5b506156f88a828b016151ef565b909450925061570b905060608901615236565b905092959891949750929550565b606081525f61572b606083018661514c565b6020830194909452506001600160a01b0391909116604090910152919050565b634e487b7160e01b5f52604160045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b5f8261578d57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f815180845260208085019450602084015f5b838110156153e55781516157ce88825161533d565b838101516001600160a01b03168885015260408082015190890152606080820151908901526080908101519088015260a090960195908201906001016157b9565b5f815180845260208085019450602084015f5b838110156153e557815161583788825161533d565b808401516001600160a01b0390811689860152604080830151908a0152606080830151908a0152608080830151908a015260a091820151169088015260c09096019590820190600101615822565b60058110611b8057611b80615329565b828152604060208201526158b56040820183516001600160a01b03169052565b5f60208301516158d060608401826001600160a01b03169052565b5060408301516101608060808501526158ed6101a08501836157a6565b91506060850151603f198584030160a086015261590a838261580f565b925050608085015161591f60c0860182615885565b5060a085015160e085015260c0850151610100818187015260e0870151915061012082818801528188015192506101409150828288015280880151848801525080870151610180870152505050809150509392505050565b5f823561015e1983360301811261598c575f80fd5b9190910192915050565b5f602082840312156159a6575f80fd5b8135600581106104f1575f80fd5b818103818111156104025761040261575f565b808201808211156104025761040261575f565b5f815180845260208085019450602084015f5b838110156153e557615a0087835161534d565b60a09690960195908201906001016159ed565b5f6080808301878452602060018060a01b03808916602087015260406080604088015283895180865260a08901915060208b0195505f5b81811015615a8b578651615a5f84825161533d565b808701518616848801528481015185850152606090810151908401529585019591870191600101615a4a565b50508781036060890152615a9f818a6159da565b9c9b505050505050505050505050565b80820281158282048414176104025761040261575f56fea164736f6c6343000818000a","storage":{}},"0x6265cc8d1b28edfd4d76c80bf774c0d446fffbde":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610090575f3560e01c80633f15457f116100635780633f15457f1461010f5780637adbf973146101225780637dc0d1d0146101355780638bbedf7514610147578063be27b22c1461015a575f80fd5b806301ffc9a7146100945780631ecfc411146100bc578063224199c2146100d157806330349ebe146100e4575b5f80fd5b6100a76100a23660046115b1565b61016d565b60405190151581526020015b60405180910390f35b6100cf6100ca3660046115ef565b6101a3565b005b6100cf6100df3660046117e0565b6102de565b6002546100f7906001600160a01b031681565b6040516001600160a01b0390911681526020016100b3565b6001546100f7906001600160a01b031681565b6100cf6101303660046115ef565b61063c565b5f546100f7906001600160a01b031681565b6100cf610155366004611889565b61076d565b6100cf61016836600461190b565b6107f1565b5f6001600160e01b031982166301ffc9a760e01b148061019d57506001600160e01b031982166317d8f49b60e01b145b92915050565b6001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa1580156101ea573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061020e919061196b565b90505f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561024d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610271919061196b565b9050336001600160a01b03821614610287575f80fd5b600280546001600160a01b0319166001600160a01b0385169081179091556040519081527f9176b7f47e4504df5e5516c99d90d82ac7cbd49cc77e7f22ba2ac2f2e3a3eba8906020015b60405180910390a1505050565b5f546040516321ae60b160e11b81526001600160a01b039091169063435cc1629061030f90879087906004016119d3565b5f604051808303815f875af115801561032a573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526103519190810190611a6b565b92505f805f610360888761088b565b91945092509050336001600160a01b038216146103da5760405162461bcd60e51b815260206004820152602d60248201527f4f6e6c79206f776e65722063616e2063616c6c2070726f7665416e64436c616960448201526c36abb4ba342932b9b7b63b32b960991b60648201526084015b60405180910390fd5b6001600160a01b038416156105bb576001600160a01b03851661044e5760405162461bcd60e51b815260206004820152602660248201527f43616e6e6f74207365742061646472206966207265736f6c766572206973206e6044820152651bdd081cd95d60d21b60648201526084016103d1565b6001546040516305ef2c7f60e41b815260048101859052602481018490523060448201526001600160a01b0387811660648301525f608483015290911690635ef2c7f09060a4015f604051808303815f87803b1580156104ac575f80fd5b505af11580156104be573d5f803e3d5ffd5b505050505f83836040516020016104df929190918252602082015260400190565b60408051808303601f1901815290829052805160209091012062d5fa2b60e81b8252600482018190526001600160a01b03878116602484015290925087169063d5fa2b00906044015f604051808303815f87803b15801561053e575f80fd5b505af1158015610550573d5f803e3d5ffd5b5050600154604051635b0fc9c360e01b8152600481018590526001600160a01b0386811660248301529091169250635b0fc9c391506044015f604051808303815f87803b15801561059f575f80fd5b505af11580156105b1573d5f803e3d5ffd5b5050505050610632565b6001546040516305ef2c7f60e41b815260048101859052602481018490526001600160a01b03838116604483015287811660648301525f608483015290911690635ef2c7f09060a4015f604051808303815f87803b15801561061b575f80fd5b505af115801561062d573d5f803e3d5ffd5b505050505b5050505050505050565b6001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa158015610683573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106a7919061196b565b90505f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106e6573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061070a919061196b565b9050336001600160a01b03821614610720575f80fd5b5f80546001600160a01b0319166001600160a01b0385169081179091556040519081527fb3eacd0e351fafdfefdec84e1cd19679b38dbcd63ea7c2c24da17fd2bc3b3c0e906020016102d1565b5f546040516321ae60b160e11b81526001600160a01b039091169063435cc1629061079e90859085906004016119d3565b5f604051808303815f875af11580156107b9573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526107e09190810190611a6b565b90506107ec83826107f1565b505050565b5f805f6107fe858561088b565b6001546040516306ab592360e01b815260048101859052602481018490526001600160a01b03808416604483015294975092955090935091909116906306ab5923906064016020604051808303815f875af115801561085f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108839190611add565b505050505050565b5f8080806108998682610a40565b60ff1690506108aa86600183610a63565b92505f6108dc6108bb836001611b08565b6001848a516108ca9190611b1b565b6108d49190611b1b565b899190610a85565b6002546040516327c482cf60e11b81529192506001600160a01b031690634f89059e9061090d908490600401611b2e565b602060405180830381865afa158015610928573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061094c9190611b40565b6109a45760405162461bcd60e51b815260206004820152602360248201527f506172656e74206e616d65206d7573742062652061207075626c6963207375666044820152620ccd2f60eb1b60648201526084016103d1565b6109ae815f610b05565b5f549095506109c7906001600160a01b03168888610de3565b5060408051602081018890529081018690529093506001600160a01b03841690606001604051602081830303815290604052805190602001207fa2e66ce20e6fb2c4f61339c364ad79f15160cf5307230c8bc4d628adbca2ba3989604051610a2f9190611b2e565b60405180910390a350509250925092565b5f828281518110610a5357610a53611b5f565b016020015160f81c905092915050565b82515f90610a718385611b08565b1115610a7b575f80fd5b5091016020012090565b8251606090610a948385611b08565b1115610a9e575f80fd5b5f8267ffffffffffffffff811115610ab857610ab861160a565b6040519080825280601f01601f191660200182016040528015610ae2576020820181803683370190505b50905060208082019086860101610afa82828761100b565b509095945050505050565b5f80610b118484610a40565b60ff169050805f03610b2657505f905061019d565b5f610b4585610b358487611b08565b610b40906001611b08565b610b05565b90505f610b5e610b56866001611b08565b879085610a63565b604080516020810185905290810182905290915060600160408051808303601f190181529082905280516020909101206001546302571be360e01b8352600483018290529095505f916001600160a01b03909116906302571be390602401602060405180830381865afa158015610bd7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bfb919061196b565b90506001600160a01b0381161580610c1b57506001600160a01b03811630145b610c7a5760405162461bcd60e51b815260206004820152602a60248201527f43616e6e6f7420656e61626c652061206e616d65206f776e656420627920736f6044820152696d656f6e6520656c736560b01b60648201526084016103d1565b6001600160a01b0381163014610dd95782610d5e576001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa158015610cd6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cfa919061196b565b60405163232e3b3b60e21b8152600481018590523060248201529091506001600160a01b03821690638cb8ecec906044015f604051808303815f87803b158015610d42575f80fd5b505af1158015610d54573d5f803e3d5ffd5b5050505050610dd9565b6001546040516306ab592360e01b815260048101859052602481018490523060448201526001600160a01b03909116906306ab5923906064016020604051808303815f875af1158015610db3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610dd79190611add565b505b5050505092915050565b5f80610e016040518060400160405280606081526020015f81525090565b610e1985516005610e129190611b08565b8290611060565b50604080518082019091526005815264045f656e7360d81b6020820152610e419082906110c3565b50610e4c81866110c3565b50805160405163021e646f60e21b81525f9182916001600160a01b038a169163087991bc91610e8091601091600401611b73565b606060405180830381865afa158015610e9b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ebf9190611ba7565b93509150506bffffffffffffffffffffffff198216158015610ee057508551155b15610ef3575f8094509450505050611003565b855160208701206bffffffffffffffffffffffff19838116911614610f16575f80fd5b5f610f2187826110ef565b90505b80515160208201511015610ff857610f4b816080015183610f459190611bfc565b4261114a565b610fbd5760405162461bcd60e51b815260206004820152603c60248201527f444e53207265636f7264206973207374616c653b2072656672657368206f722060448201527f64656c657465206974206265666f72652070726f63656564696e672e0000000060648201526084016103d1565b5f80610fcd898460a00151611162565b925090508115610fe857965060019550611003945050505050565b5050610ff3816111d1565b610f24565b505f80945094505050505b935093915050565b602081106110435781518352611022602084611b08565b925061102f602083611b08565b915061103c602082611b1b565b905061100b565b905182516020929092036101000a5f190180199091169116179052565b60408051808201909152606081525f602082015261107f602083611c20565b156110a75761108f602083611c20565b61109a906020611b1b565b6110a49083611b08565b91505b506020828101829052604080518085525f815290920101905290565b60408051808201909152606081525f60208201526110e883845f0151518485516112b6565b9392505050565b6111376040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261019d816111d1565b5f806111568385611c3f565b60030b12159392505050565b5f805b83518310156111c4575f6111798585610a40565b60ff169050611189600185611b08565b93505f8061119887878561139c565b9250905081156111b0579350600192506111ca915050565b6111ba8387611b08565b9550505050611165565b505f9050805b9250929050565b60c081015160208201819052815151116111e85750565b5f6111fa825f015183602001516113f5565b82602001516112099190611b08565b82519091506112189082611454565b61ffff16604083015261122c600282611b08565b825190915061123b9082611454565b61ffff16606083015261124f600282611b08565b825190915061125e908261147a565b63ffffffff166080830152611274600482611b08565b82519091505f906112859083611454565b61ffff169050611296600283611b08565b60a0840181905291506112a98183611b08565b60c0909301929092525050565b60408051808201909152606081525f602082015282518211156112d7575f80fd5b60208501516112e68386611b08565b11156113195761131985611309876020015187866113049190611b08565b6114a2565b611314906002611c66565b6114b8565b5f808651805187602083010193508088870111156113375787860182525b505050602084015b602084106113775780518252611356602083611b08565b9150611363602082611b08565b9050611370602085611b1b565b935061133f565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b5f806113a8858561147a565b63ffffffff1663613d3078146113c257505f905080611003565b602c8310156113d557505f905080611003565b6113e9856113e4866004611b08565b6114d5565b91509150935093915050565b5f815b8351811061140857611408611c7d565b5f6114138583610a40565b60ff169050611423816001611b08565b61142d9083611b08565b9150805f0361143c5750611442565b506113f8565b61144c8382611b1b565b949350505050565b81515f90611463836002611b08565b111561146d575f80fd5b50016002015161ffff1690565b81515f90611489836004611b08565b1115611493575f80fd5b50016004015163ffffffff1690565b5f818311156114b257508161019d565b50919050565b81516114c48383611060565b506114cf83826110c3565b50505050565b5f8060288385516114e69190611b1b565b10156114f657505f9050806111ca565b5f835b611504856028611b08565b8110156115a55760049190911b905f61151d8783610a40565b60ff169050603081101580156115335750603a81105b1561154c57611543603082611b1b565b8317925061159c565b6041811015801561155d5750604781105b1561156d57611543603782611b1b565b6061811015801561157e5750606781105b1561158e57611543605782611b1b565b5f80945094505050506111ca565b506001016114f9565b50946001945092505050565b5f602082840312156115c1575f80fd5b81356001600160e01b0319811681146110e8575f80fd5b6001600160a01b03811681146115ec575f80fd5b50565b5f602082840312156115ff575f80fd5b81356110e8816115d8565b634e487b7160e01b5f52604160045260245ffd5b6040805190810167ffffffffffffffff811182821017156116415761164161160a565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156116705761167061160a565b604052919050565b5f67ffffffffffffffff8211156116915761169161160a565b50601f01601f191660200190565b5f82601f8301126116ae575f80fd5b81356116c16116bc82611678565b611647565b8181528460208386010111156116d5575f80fd5b816020850160208301375f918101602001919091529392505050565b5f82601f830112611700575f80fd5b8135602067ffffffffffffffff8083111561171d5761171d61160a565b8260051b61172c838201611647565b9384528581018301938381019088861115611745575f80fd5b84880192505b858310156117d457823584811115611761575f80fd5b88016040818b03601f1901811315611777575f80fd5b61177f61161e565b878301358781111561178f575f80fd5b61179d8d8a8387010161169f565b8252509082013590868211156117b1575f80fd5b6117bf8c898486010161169f565b8189015284525050918401919084019061174b565b98975050505050505050565b5f805f805f60a086880312156117f4575f80fd5b853567ffffffffffffffff8082111561180b575f80fd5b61181789838a0161169f565b9650602088013591508082111561182c575f80fd5b61183889838a016116f1565b9550604088013591508082111561184d575f80fd5b5061185a8882890161169f565b935050606086013561186b816115d8565b9150608086013561187b816115d8565b809150509295509295909350565b5f805f6060848603121561189b575f80fd5b833567ffffffffffffffff808211156118b2575f80fd5b6118be8783880161169f565b945060208601359150808211156118d3575f80fd5b6118df878388016116f1565b935060408601359150808211156118f4575f80fd5b506119018682870161169f565b9150509250925092565b5f806040838503121561191c575f80fd5b823567ffffffffffffffff80821115611933575f80fd5b61193f8683870161169f565b93506020850135915080821115611954575f80fd5b506119618582860161169f565b9150509250929050565b5f6020828403121561197b575f80fd5b81516110e8816115d8565b5f5b838110156119a0578181015183820152602001611988565b50505f910152565b5f81518084526119bf816020860160208601611986565b601f01601f19169290920160200192915050565b5f60408083016040845280865180835260608601915060608160051b870101925060208089015f5b83811015611a4b57888603605f1901855281518051888852611a1f898901826119a8565b9185015188830389870152919050611a3781836119a8565b9750505093820193908201906001016119fb565b505086840381880152505050611a6181866119a8565b9695505050505050565b5f60208284031215611a7b575f80fd5b815167ffffffffffffffff811115611a91575f80fd5b8201601f81018413611aa1575f80fd5b8051611aaf6116bc82611678565b818152856020838501011115611ac3575f80fd5b611ad4826020830160208601611986565b95945050505050565b5f60208284031215611aed575f80fd5b5051919050565b634e487b7160e01b5f52601160045260245ffd5b8082018082111561019d5761019d611af4565b8181038181111561019d5761019d611af4565b602081525f6110e860208301846119a8565b5f60208284031215611b50575f80fd5b815180151581146110e8575f80fd5b634e487b7160e01b5f52603260045260245ffd5b61ffff83168152604060208201525f61144c60408301846119a8565b805163ffffffff81168114611ba2575f80fd5b919050565b5f805f60608486031215611bb9575f80fd5b611bc284611b8f565b9250611bd060208501611b8f565b915060408401516bffffffffffffffffffffffff1981168114611bf1575f80fd5b809150509250925092565b63ffffffff818116838216019080821115611c1957611c19611af4565b5092915050565b5f82611c3a57634e487b7160e01b5f52601260045260245ffd5b500690565b600382810b9082900b03637fffffff198112637fffffff8213171561019d5761019d611af4565b808202811582820484141761019d5761019d611af4565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{"0x0":"0x9b2565a3545a1312bdcb6e7148a7f7cae8c2706b","0x1":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0x2":"0x287dee389caaa49edc112888f2bcfd927b472e25"}},"0x62b11ad5f582a5c5d378fb310125b030042554f1":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106103af5760003560e01c80637e37479e116101f4578063ba5d40b71161011a578063e985e9c5116100ad578063f5c1f76e1161007c578063f5c1f76e146108d8578063f7df5c60146108eb578063f8c8765e146108fe578063ffa1ad741461091157600080fd5b8063e985e9c51461087a578063ebf0c717146108b6578063ec129eea146108bd578063f25eb5c1146108d057600080fd5b8063c87b56dd116100e9578063c87b56dd1461082e578063ce92b33e14610841578063cf2c52cb14610854578063d9548e531461086757600080fd5b8063ba5d40b7146107b3578063baef73e9146107c6578063bb5b27e114610808578063bebec6b41461081b57600080fd5b8063a22cb46511610192578063ac9650d811610161578063ac9650d81461074c578063b3f9e4cb1461076c578063b85afd281461077f578063b88d4fde146107a057600080fd5b8063a22cb465146106e7578063a3f4df7e146106fa578063a424740014610726578063ab3b87fe1461073957600080fd5b80639508b1c4116101ce5780639508b1c4146106b15780639559c0bd146106c457806395d89b41146106cc57806399e0dd7c146106d457600080fd5b80637e37479e146106785780637eee288d1461068b57806394d008ef1461069e57600080fd5b806342842e0e116102d95780635096023911610277578063663f7b2a11610246578063663f7b2a14610610578063672b9f81146106235780636ccbae5f1461064457806370a082311461066557600080fd5b806350960239146105bb578063572b6c05146105ce5780636352211e146105ea578063638e5c78146105fd57600080fd5b806347c81699116102b357806347c816991461056f5780634a72584d146105825780634f558e791461059557806350382c1a146105a857600080fd5b806342842e0e1461053657806342966c6814610549578063430c20811461055c57600080fd5b80631bf7e13e1161035157806327f189751161032057806327f18975146104ea578063310bd74b146104fd5780633f72ec6e1461051057806340c10f191461052357600080fd5b80631bf7e13e146104905780631f71be06146104a357806323b872dd146104b6578063276fabb1146104c957600080fd5b8063095ea7b31161038d578063095ea7b31461041c578063150b7a02146104315780631bd8cc1a1461045d5780631be5e7ed1461047d57600080fd5b806301ffc9a7146103b457806306fdde03146103dc578063081812fc146103f1575b600080fd5b6103c76103c2366004613f0b565b610935565b60405190151581526020015b60405180910390f35b6103e4610946565b6040516103d39190613f78565b6104046103ff366004613f8b565b6109d8565b6040516001600160a01b0390911681526020016103d3565b61042f61042a366004613fb9565b6109ff565b005b61044461043f366004614026565b610a18565b6040516001600160e01b031990911681526020016103d3565b61047061046b3660046140dc565b610b72565b6040516103d3919061417f565b6103e461048b366004614192565b610c68565b6103e461049e3660046141c9565b610cb3565b61042f6104b1366004614249565b610dbe565b61042f6104c4366004614305565b610e54565b6104dc6104d7366004614346565b610ea7565b6040519081526020016103d3565b61042f6104f8366004614387565b610eb6565b61042f61050b366004613f8b565b610efe565b61042f61051e3660046143fa565b610f39565b61042f610531366004613fb9565b61103b565b61042f610544366004614305565b611088565b61042f610557366004613f8b565b6110a3565b6103c761056a366004613fb9565b6110e7565b61042f61057d366004614424565b6110f3565b61042f610590366004614485565b611132565b6103c76105a3366004613f8b565b611178565b61042f6105b636600461458c565b611197565b61042f6105c93660046145c0565b6111cd565b6103c76105dc3660046145c0565b6001600160a01b0316301490565b6104046105f8366004613f8b565b61122d565b61042f61060b366004613f8b565b61124a565b61042f61061e366004614678565b611295565b6106366106313660046146c0565b611336565b6040516103d39291906146e2565b6104dc610652366004613f8b565b6000908152610100602052604090205490565b6104dc6106733660046145c0565b61134e565b6104dc6106863660046145c0565b6113d4565b61042f610699366004613fb9565b611405565b61042f6106ac366004614707565b61145c565b61042f6106bf366004614762565b6114ab565b6104dc601481565b6103e4611532565b61042f6106e2366004614805565b611541565b61042f6106f536600461483a565b6115c8565b6103e46040518060400160405280600d81526020016c554e533a20526567697374727960981b81525081565b6103c76107343660046141c9565b6115da565b61042f610747366004613fb9565b611625565b61075f61075a366004614346565b61166a565b6040516103d39190614866565b61040461077a366004613f8b565b611746565b61079261078d3660046140dc565b611770565b6040516103d39291906148c8565b61042f6107ae3660046148ed565b611892565b61042f6107c1366004614249565b6118d9565b6107f06107d4366004613f8b565b600090815261013960205260409020546001600160401b031690565b6040516001600160401b0390911681526020016103d3565b6103e4610816366004613f8b565b611962565b6103e46108293660046145c0565b611a04565b6103e461083c366004613f8b565b611ace565b61042f61084f366004614387565b611b34565b61042f610862366004614958565b611b73565b6103c7610875366004613f8b565b611c42565b6103c761088836600461499f565b6001600160a01b039182166000908152606a6020908152604080832093909416825291909152205460ff1690565b60006104dc565b61042f6108cb366004614387565b611c85565b61042f611cc4565b6104706108e6366004614346565b611d4b565b61042f6108f93660046149d8565b611dfe565b61042f61090c366004614a0a565b611e8f565b6103e460405180604001604052806005815260200164302e392e3160d81b81525081565b600061094082612065565b92915050565b60606065805461095590614a66565b80601f016020809104026020016040519081016040528092919081815260200182805461098190614a66565b80156109ce5780601f106109a3576101008083540402835291602001916109ce565b820191906000526020600020905b8154815290600101906020018083116109b157829003601f168201915b5050505050905090565b60006109e3826120b5565b506000908152606960205260409020546001600160a01b031690565b80610a0981612114565b610a13838361217a565b505050565b60007f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378546001600160a01b0316610a4d61229c565b6001600160a01b031603610b0e57610a6361229c565b6001600160a01b03166342966c68856040518263ffffffff1660e01b8152600401610a9091815260200190565b600060405180830381600087803b158015610aaa57600080fd5b505af1158015610abe573d6000803e3d6000fd5b505050821580159150610ad85750610ad882840184614a9a565b15610af657610ae730856122ab565b610af185856123f9565b610b00565b610b0085856122ab565b50630a85bd0160e11b610b69565b60405162461bcd60e51b815260206004820152602560248201527f52656769737472793a204552433732315f524543454956494e475f50524f4849604482015264109255115160da1b60648201526084015b60405180910390fd5b95945050505050565b6060826001600160401b03811115610b8c57610b8c6144d7565b604051908082528060200260200182016040528015610bbf57816020015b6060815260200190600190039081610baa5790505b50905060005b83811015610c6057610c30858583818110610be257610be2614ab5565b9050602002810190610bf49190614acb565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508792506124a4915050565b828281518110610c4257610c42614ab5565b60200260200101819052508080610c5890614b27565b915050610bc5565b509392505050565b6060610cab84848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508692506124a4915050565b949350505050565b606060005a9050610cc58585856115da565b610d215760405162461bcd60e51b815260206004820152602760248201527f554e535265676973747279466f727761726465723a205349474e41545552455f6044820152661253959053125160ca1b6064820152608401610b60565b610db3610d3160208701876145c0565b30604088013584610d4560608b018b614acb565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284376000920191909152506124d992505050565b9150505b9392505050565b610134546001600160a01b0316610dd361229c565b6001600160a01b031614610df95760405162461bcd60e51b8152600401610b6090614b40565b6000610e0d610e08888a614b87565b6125ba565b509050610e1a8982611405565b610e278686868685612612565b8115610e4957610e498982610e44610e3f8b8d614b87565b612680565b612701565b505050505050505050565b80610e66610e6061229c565b82612743565b610e825760405162461bcd60e51b8152600401610b6090614b94565b81610e8c81612114565b610e95836127d4565b610ea0858585612841565b5050505050565b6000610c60610e088385614b87565b80610ec2610e6061229c565b610ede5760405162461bcd60e51b8152600401610b6090614b94565b81610ee881612114565b610ef587878787876129e8565b50505050505050565b80610f0a610e6061229c565b610f265760405162461bcd60e51b8152600401610b6090614b94565b81610f3081612114565b610a13836127d4565b610134546001600160a01b0316610f4e61229c565b6001600160a01b031614610f745760405162461bcd60e51b8152600401610b6090614b40565b610f7d816120b5565b42826001600160401b031611610fd55760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a204558504952595f494e5f5041535400000000000000006044820152606401610b60565b60008181526101396020908152604091829020805467ffffffffffffffff19166001600160401b038616908117909155915191825282917f93feabb03ab84f47fc85bf0c298103fca21d8c8bc376eae0c1e1c56b9d4f7789910160405180910390a25050565b611043612a4b565b6001600160a01b031661105461229c565b6001600160a01b03161461107a5760405162461bcd60e51b8152600401610b6090614bdd565b61108482826122ab565b5050565b610a1383838360405180602001604052806000815250611892565b806110af610e6061229c565b6110cb5760405162461bcd60e51b8152600401610b6090614b94565b816110d581612114565b6110de836127d4565b610a1383612b4c565b6000610db78383612743565b806110ff610e6061229c565b61111b5760405162461bcd60e51b8152600401610b6090614b94565b8161112581612114565b610ef58787878787612bf3565b8061113e610e6061229c565b61115a5760405162461bcd60e51b8152600401610b6090614b94565b8161116481612114565b61117086868686612cd2565b505050505050565b6000818152606760205260408120546001600160a01b03161515610940565b6111ca816040516020016111ab9190614c1f565b6040516020818303038152906040528051906020012060001c82612d72565b50565b610134546001600160a01b03166111e261229c565b6001600160a01b0316146112085760405162461bcd60e51b8152600401610b6090614b40565b6001600160a01b0316600090815261013660205260409020805460ff19166001179055565b600061123882611c42565b6112455761094082612d97565b919050565b80611256610e6061229c565b6112725760405162461bcd60e51b8152600401610b6090614b94565b61128461127d61229c565b3084612841565b61108461128f61229c565b836123f9565b60006112a0826125ba565b5090506112ab61229c565b6001600160a01b03166112bd8261122d565b6001600160a01b0316146113135760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b60565b61131c81612114565b61108461132761229c565b8261133185612680565b612df7565b6060806113438484612e7e565b909590945092505050565b60006001600160a01b0382166113b85760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b6064820152608401610b60565b506001600160a01b031660009081526068602052604090205490565b6001600160a01b038116600090815261013560205260408120546113f781612e9f565b6113ff578091505b50919050565b610134546001600160a01b031661141a61229c565b6001600160a01b0316146114405760405162461bcd60e51b8152600401610b6090614b40565b611449816127d4565b61108461145582612d97565b8383612841565b611464612a4b565b6001600160a01b031661147561229c565b6001600160a01b03161461149b5760405162461bcd60e51b8152600401610b6090614bdd565b6114a584846122ab565b50505050565b6114b58787612ee9565b6114bd61229c565b6001600160a01b03166114cf8661122d565b6001600160a01b0316146115255760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b60565b610ef58484848489612612565b60606066805461095590614a66565b610134546001600160a01b031661155661229c565b6001600160a01b03161461157c5760405162461bcd60e51b8152600401610b6090614b40565b61013361158a828483614c81565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b82826040516115bc929190614d69565b60405180910390a15050565b6110846115d361229c565b8383612f58565b6000610cab6115e885614d7d565b3085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061302692505050565b80611631610e6061229c565b61164d5760405162461bcd60e51b8152600401610b6090614b94565b8161165781612114565b6114a561166384612d97565b8585612841565b606060006116788385614e07565b905030330361173d5760005b8381101561173b5761170b61169761229c565b61169f61316f565b8787858181106116b1576116b1614ab5565b90506020028101906116c39190614acb565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250613183915050565b82828151811061171d5761171d614ab5565b6020026020010181905250808061173390614b27565b915050611684565b505b610cab816131b3565b6000818152606760205260408120546001600160a01b0316611769576000610940565b3092915050565b606080836001600160401b0381111561178b5761178b6144d7565b6040519080825280602002602001820160405280156117be57816020015b60608152602001906001900390816117a95790505b509150836001600160401b038111156117d9576117d96144d7565b60405190808252806020026020018201604052801561180c57816020015b60608152602001906001900390816117f75790505b50905060005b848110156118895761183c86868381811061182f5761182f614ab5565b9050602002013585612e7e565b84838151811061184e5761184e614ab5565b6020026020010184848151811061186757611867614ab5565b602002602001018290528290525050808061188190614b27565b915050611812565b50935093915050565b8161189e610e6061229c565b6118ba5760405162461bcd60e51b8152600401610b6090614b94565b826118c481612114565b6118cd846127d4565b611170868686866132de565b610134546001600160a01b03166118ee61229c565b6001600160a01b0316146119145760405162461bcd60e51b8152600401610b6090614b40565b600080611924610e08898b614b87565b9150915061193181613311565b6119498a83611943610e3f8c8e614b87565b86613371565b6119568787878786612612565b50505050505050505050565b600081815260c96020526040902080546060919061197f90614a66565b80601f01602080910402602001604051908101604052809291908181526020018280546119ab90614a66565b80156119f85780601f106119cd576101008083540402835291602001916119f8565b820191906000526020600020905b8154815290600101906020018083116119db57829003601f168201915b50505050509050919050565b6001600160a01b03811660009081526101356020526040902054606090611a2a81612e9f565b6113ff576000818152610138602052604090208054611a4890614a66565b80601f0160208091040260200160405190810160405280929190818152602001828054611a7490614a66565b8015611ac15780601f10611a9657610100808354040283529160200191611ac1565b820191906000526020600020905b815481529060010190602001808311611aa457829003601f168201915b5050505050915050919050565b6060611ad9826120b5565b6000611ae36133c4565b90506000815111611b035760405180602001604052806000815250610db7565b80611b0d846133d4565b604051602001611b1e929190614e7a565b6040516020818303038152906040529392505050565b80611b40610e6061229c565b611b5c5760405162461bcd60e51b8152600401610b6090614b94565b81611b6681612114565b610ef58787878787612612565b7f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87546001600160a01b0316611ba661229c565b6001600160a01b031614611bcc5760405162461bcd60e51b8152600401610b6090614bdd565b6020819003611bef576000611be382840184613f8b565b90506114a584826122ab565b6000611bfd82840184614ea9565b805190915060005b8181101561117057611c3086848381518110611c2357611c23614ab5565b60200260200101516122ab565b80611c3a81614b27565b915050611c05565b600081815261013960205260408120546001600160401b03161580159061094057505060009081526101396020526040902054426001600160401b039091161090565b80611c91610e6061229c565b611cad5760405162461bcd60e51b8152600401610b6090614b94565b81611cb781612114565b610ef587878787876134d4565b6000611cce61229c565b6001600160a01b0381166000908152610135602052604081205491925003611d425760405162461bcd60e51b815260206004820152602160248201527f52656769737472793a20524556455253455f5245434f52445f49535f454d50546044820152605960f81b6064820152608401610b60565b6111ca816134ea565b6060816001600160401b03811115611d6557611d656144d7565b604051908082528060200260200182016040528015611d9857816020015b6060815260200190600190039081611d835790505b50905060005b82811015611df757611dc7848483818110611dbb57611dbb614ab5565b90506020020135611962565b828281518110611dd957611dd9614ab5565b60200260200101819052508080611def90614b27565b915050611d9e565b5092915050565b610134546001600160a01b0316611e1361229c565b6001600160a01b031614611e395760405162461bcd60e51b8152600401610b6090614b40565b61013454611e50906001600160a01b0316846122ab565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c39528383604051611e82929190614d69565b60405180910390a2505050565b600054610100900460ff1615808015611eaf5750600054600160ff909116105b80611ec95750303b158015611ec9575060005460ff166001145b611f2c5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610b60565b6000805460ff191660011790558015611f4f576000805461ff0019166101001790555b61013480546001600160a01b0319166001600160a01b038716179055837f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec9237880546001600160a01b0319166001600160a01b03929092169190911790556040805180820182526013815272556e73746f707061626c6520446f6d61696e7360681b60208083019190915282518084019093526002835261155160f21b90830152611ff79161352f565b611fff61356f565b61200761356f565b61201083613598565b612019826135c8565b8015610ea0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b60006001600160e01b031982166380ac58cd60e01b148061209657506001600160e01b03198216635b5e139f60e01b145b8061094057506301ffc9a760e01b6001600160e01b0319831614610940565b6000818152606760205260409020546001600160a01b03166111ca5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b60565b3033036121715761212361316f565b81146111ca5760405162461bcd60e51b815260206004820152601760248201527f52656769737472793a20544f4b454e5f494e56414c49440000000000000000006044820152606401610b60565b6111ca816135f8565b600061218582612d97565b9050806001600160a01b0316836001600160a01b0316036121f25760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b6064820152608401610b60565b806001600160a01b031661220461229c565b6001600160a01b0316148061222057506122208161088861229c565b6122925760405162461bcd60e51b815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c00006064820152608401610b60565b610a138383613626565b60006122a6613694565b905090565b6001600160a01b0382166123015760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610b60565b6000818152606760205260409020546001600160a01b0316156123665760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610b60565b612372600083836136af565b6001600160a01b038216600090815260686020526040812080546001929061239b908490614f39565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b03861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b6000612403612a4b565b905061240f8183613626565b60008051602061529383398151915254604080516020808201869052825180830390910181528183019283905263e3dec8fb60e01b9092526001600160a01b0390921691829163e3dec8fb9161246c918891309190604401614f4c565b600060405180830381600087803b15801561248657600080fd5b505af115801561249a573d6000803e3d6000fd5b5050505050505050565b6060610db7836040516020016124ba9190614c1f565b6040516020818303038152906040528051906020012060001c8361378b565b60606124e4856135f8565b600080876001600160a01b0316866124fe8b8a8989613183565b60405161250b9190614c1f565b60006040518083038160008787f1925050503d8060008114612549576040519150601f19603f3d011682016040523d82523d6000602084013e61254e565b606091505b50909250905061255f603f87614f8e565b5a1161256d5761256d614fa2565b6125ad82826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061386d565b9998505050505050505050565b805160009081905b801561260c578291506125f882856125db600185614fb8565b815181106125eb576125eb614ab5565b60200260200101516138a6565b92508061260481614fcb565b9150506125c2565b50915091565b60005b848110156111705761266e86868381811061263257612632614ab5565b90506020028101906126449190614acb565b86868581811061265657612656614ab5565b90506020028101906126689190614acb565b86612bf3565b8061267881614b27565b915050612615565b606060008260008151811061269757612697614ab5565b602002602001015190506000600190505b8351811015611df757818482815181106126c4576126c4614ab5565b60200260200101516040516020016126dd929190614fe2565b604051602081830303815290604052915080806126f990614b27565b9150506126a8565b61dead6001600160a01b0384161480159061273357506001600160a01b03831660009081526101356020526040902054155b15610a1357610a13838383612df7565b60008061274f8361122d565b90506001600160a01b03811615801590610cab5750806001600160a01b0316846001600160a01b031614806127a957506001600160a01b038082166000908152606a602090815260408083209388168352929052205460ff165b80610cab5750836001600160a01b03166127c2846109d8565b6001600160a01b031614949350505050565b6127dd81613952565b6040516020016127ef91815260200190565b60408051601f198184030181528282528051602091820120600085815260cb9092529181209190915582917f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9190a250565b826001600160a01b031661285482612d97565b6001600160a01b0316146128b85760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b6064820152608401610b60565b6001600160a01b03821661291a5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610b60565b6129258383836136af565b612930600082613626565b6001600160a01b0383166000908152606860205260408120805460019290612959908490614fb8565b90915550506001600160a01b0382166000908152606860205260408120805460019290612987908490614f39565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60005b8481101561117057612a39868683818110612a0857612a08614ab5565b90506020020135858584818110612a2157612a21614ab5565b9050602002810190612a339190614acb565b85612cd2565b80612a4381614b27565b9150506129eb565b600080516020615293833981519152546000906001600160a01b03168015612b485760405163721804d360e11b81523060048201526000906001600160a01b0383169063e43009a690602401602060405180830381865afa158015612ab4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ad8919061501e565b60405163e66f960360e01b8152600481018290529091506001600160a01b0383169063e66f960390602401602060405180830381865afa158015612b20573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b449190615037565b9250505b5090565b6000612b5782612d97565b9050612b65816000846136af565b612b70600083613626565b6001600160a01b0381166000908152606860205260408120805460019290612b99908490614fb8565b909155505060008281526067602052604080822080546001600160a01b0319169055518391906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b60008585604051602001612c08929190615054565b60408051601f198184030181528282528051602091820120601f8901829004820284018201909252878352909250612c5c9183918990899081908401838280828437600092019190915250612d7292505050565b6111708187878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061397a915050565b612cdb84613aaf565b612d275760405162461bcd60e51b815260206004820152601c60248201527f5265636f726453746f726167653a204b45595f4e4f545f464f554e44000000006044820152606401610b60565b6114a584612d3486611962565b85858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525087925061397a915050565b612d7b82613aaf565b61108457600082815260c960205260409020610a138282615064565b6000818152606760205260408120546001600160a01b0316806109405760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b60565b6000828152610138602052604090208054612e1190614a66565b9050600003612e3557600082815261013860205260409020612e338282615064565b505b6001600160a01b03831660008181526101356020526040808220859055518492917feb76a21470988c474a21f690cc28fee1ed511bd812dc3c21fd0f49c5e5d4708a91a3505050565b606080612e8a84611962565b9150612e96848461378b565b90509250929050565b6000818152610137602052604081205460ff16801561094057506101366000612ec661229c565b6001600160a01b0316815260208101919091526040016000205460ff1692915050565b60008051602061529383398151915254604051633805550f60e01b81526001600160a01b03909116908190633805550f90612f2a9086908690600401614d69565b600060405180830381600087803b158015612f4457600080fd5b505af1158015610ef5573d6000803e3d6000fd5b816001600160a01b0316836001600160a01b031603612fb95760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610b60565b6001600160a01b038381166000818152606a6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561306d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613091919061501e565b9050600061313f8660600151805190602001208688602001516040516020016130df9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561316557508551613165906001600160a01b03168286613ad5565b9695505050505050565b60003033036131805750601f193601355b90565b606082858560405160200161319a93929190615123565b6040516020818303038152906040529050949350505050565b606081516001600160401b038111156131ce576131ce6144d7565b60405190808252806020026020018201604052801561320157816020015b60608152602001906001900390816131ec5790505b50905060005b82518110156113ff57600080306001600160a01b031685848151811061322f5761322f614ab5565b60200260200101516040516132449190614c1f565b600060405180830381855af49150503d806000811461327f576040519150601f19603f3d011682016040523d82523d6000602084013e613284565b606091505b50915091506132ac82826040518060600160405280602781526020016152b36027913961386d565b8484815181106132be576132be614ab5565b6020026020010181905250505080806132d690614b27565b915050613207565b6132e9848484612841565b6132f584848484613c17565b6114a55760405162461bcd60e51b8152600401610b6090615162565b6000818152610137602052604090205460ff16156111ca5760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a20544f4b454e5f555047524144454400000000000000006044820152606401610b60565b61337b84846122ab565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952836040516133ab9190613f78565b60405180910390a280156114a5576114a5848484612701565b6060610133805461095590614a66565b6060816000036133fb5750506040805180820190915260018152600360fc1b602082015290565b8160005b8115613425578061340f81614b27565b915061341e9050600a83614f8e565b91506133ff565b6000816001600160401b0381111561343f5761343f6144d7565b6040519080825280601f01601f191660200182016040528015613469576020820181803683370190505b5090505b8415610cab5761347e600183614fb8565b915061348b600a866151b4565b613496906030614f39565b60f81b8183815181106134ab576134ab614ab5565b60200101906001600160f81b031916908160001a9053506134cd600a86614f8e565b945061346d565b6134dd816127d4565b610ea08585858585612612565b6001600160a01b03811660008181526101356020526040808220829055517ffcf5eec0cfa3e6332f5f0e63ec242d71f866a61d121d6cdf5c2eb3b668a26c4f9190a250565b600054610100900460ff166135565760405162461bcd60e51b8152600401610b60906151c8565b60656135628382615064565b506066610a138282615064565b600054610100900460ff166135965760405162461bcd60e51b8152600401610b60906151c8565b565b600054610100900460ff166135bf5760405162461bcd60e51b8152600401610b60906151c8565b6111ca81613d1c565b600054610100900460ff166135ef5760405162461bcd60e51b8152600401610b60906151c8565b6111ca81613d75565b60008181526101006020526040902054613613906001614f39565b6000918252610100602052604090912055565b600081815260696020526040902080546001600160a01b0319166001600160a01b038416908117909155819061365b82612d97565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60003033036136aa575060331936013560601c90565b503390565b6001600160a01b0382166136c6576136c681613311565b600081815261013960205260409020546001600160401b031615613761576001600160a01b0382161580159061371557506136ff612a4b565b6001600160a01b0316826001600160a01b031614155b6137615760405162461bcd60e51b815260206004820152601960248201527f52656769737472793a20544f4b454e5f455850495241424c45000000000000006044820152606401610b60565b6001600160a01b03831660009081526101356020526040902054819003610a1357610a13836134ea565b606061379682612e9f565b156137b05750604080516020810190915260008152610940565b60ca60006137bd84613952565b8152602001908152602001600020600084815260200190815260200160002080546137e790614a66565b80601f016020809104026020016040519081016040528092919081815260200182805461381390614a66565b80156138605780601f1061383557610100808354040283529160200191613860565b820191906000526020600020905b81548152906001019060200180831161384357829003601f168201915b5050505050905092915050565b6060831561387c575081610db7565b82511561388c5782518084602001fd5b8160405162461bcd60e51b8152600401610b609190613f78565b600081516000036138f15760405162461bcd60e51b815260206004820152601560248201527452656769737472793a204c4142454c5f454d50545960581b6044820152606401610b60565b82826040516020016139039190614c1f565b60405160208183030381529060405280519060200120604051602001613933929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b600081815260cb602052604081205415612b4857600082815260cb6020526040902054610940565b60ca600061398783613952565b8152602001908152602001600020600085815260200190815260200160002080546139b190614a66565b9050600003613a0957826040516139c89190614c1f565b6040518091039020817f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f8685604051613a009190613f78565b60405180910390a35b8160ca6000613a1784613952565b815260200190815260200160002060008681526020019081526020016000209081613a429190615064565b5081604051613a519190614c1f565b604051809103902083604051613a679190614c1f565b6040518091039020827f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d928686604051613aa19291906146e2565b60405180910390a450505050565b600081815260c9602052604081208054829190613acb90614a66565b9050119050919050565b6000806000613ae48585613dc3565b90925090506000816004811115613afd57613afd615213565b148015613b1b5750856001600160a01b0316826001600160a01b0316145b15613b2b57600192505050610db7565b600080876001600160a01b0316631626ba7e60e01b8888604051602401613b53929190615229565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051613b919190614c1f565b600060405180830381855afa9150503d8060008114613bcc576040519150601f19603f3d011682016040523d82523d6000602084013e613bd1565b606091505b5091509150818015613be4575080516020145b8015613c0b57508051630b135d3f60e11b90613c09908301602090810190840161501e565b145b98975050505050505050565b60006001600160a01b0384163b15613d1457836001600160a01b031663150b7a02613c4061229c565b8786866040518563ffffffff1660e01b8152600401613c629493929190615242565b6020604051808303816000875af1925050508015613c9d575060408051601f3d908101601f19168201909252613c9a91810190615275565b60015b613cfa573d808015613ccb576040519150601f19603f3d011682016040523d82523d6000602084013e613cd0565b606091505b508051600003613cf25760405162461bcd60e51b8152600401610b6090615162565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610cab565b506001610cab565b600054610100900460ff16613d435760405162461bcd60e51b8152600401610b60906151c8565b806000805160206152938339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b600054610100900460ff16613d9c5760405162461bcd60e51b8152600401610b60906151c8565b807f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87613d54565b6000808251604103613df95760208301516040840151606085015160001a613ded87828585613e08565b94509450505050613e01565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613e3f5750600090506003613eec565b8460ff16601b14158015613e5757508460ff16601c14155b15613e685750600090506004613eec565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613ebc573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613ee557600060019250925050613eec565b9150600090505b94509492505050565b6001600160e01b0319811681146111ca57600080fd5b600060208284031215613f1d57600080fd5b8135610db781613ef5565b60005b83811015613f43578181015183820152602001613f2b565b50506000910152565b60008151808452613f64816020860160208601613f28565b601f01601f19169290920160200192915050565b602081526000610db76020830184613f4c565b600060208284031215613f9d57600080fd5b5035919050565b6001600160a01b03811681146111ca57600080fd5b60008060408385031215613fcc57600080fd5b8235613fd781613fa4565b946020939093013593505050565b60008083601f840112613ff757600080fd5b5081356001600160401b0381111561400e57600080fd5b602083019150836020828501011115613e0157600080fd5b60008060008060006080868803121561403e57600080fd5b853561404981613fa4565b9450602086013561405981613fa4565b93506040860135925060608601356001600160401b0381111561407b57600080fd5b61408788828901613fe5565b969995985093965092949392505050565b60008083601f8401126140aa57600080fd5b5081356001600160401b038111156140c157600080fd5b6020830191508360208260051b8501011115613e0157600080fd5b6000806000604084860312156140f157600080fd5b83356001600160401b0381111561410757600080fd5b61411386828701614098565b909790965060209590950135949350505050565b600082825180855260208086019550808260051b84010181860160005b8481101561417257601f19868403018952614160838351613f4c565b98840198925090830190600101614144565b5090979650505050505050565b602081526000610db76020830184614127565b6000806000604084860312156141a757600080fd5b83356001600160401b038111156141bd57600080fd5b61411386828701613fe5565b6000806000604084860312156141de57600080fd5b83356001600160401b03808211156141f557600080fd5b908501906080828803121561420957600080fd5b9093506020850135908082111561421f57600080fd5b5061422c86828701613fe5565b9497909650939450505050565b8035801515811461124557600080fd5b60008060008060008060008060a0898b03121561426557600080fd5b883561427081613fa4565b975060208901356001600160401b038082111561428c57600080fd5b6142988c838d01614098565b909950975060408b01359150808211156142b157600080fd5b6142bd8c838d01614098565b909750955060608b01359150808211156142d657600080fd5b506142e38b828c01614098565b90945092506142f6905060808a01614239565b90509295985092959890939650565b60008060006060848603121561431a57600080fd5b833561432581613fa4565b9250602084013561433581613fa4565b929592945050506040919091013590565b6000806020838503121561435957600080fd5b82356001600160401b0381111561436f57600080fd5b61437b85828601614098565b90969095509350505050565b60008060008060006060868803121561439f57600080fd5b85356001600160401b03808211156143b657600080fd5b6143c289838a01614098565b909750955060208801359150808211156143db57600080fd5b506143e888828901614098565b96999598509660400135949350505050565b6000806040838503121561440d57600080fd5b82356001600160401b0381168114613fd757600080fd5b60008060008060006060868803121561443c57600080fd5b85356001600160401b038082111561445357600080fd5b61445f89838a01613fe5565b9097509550602088013591508082111561447857600080fd5b506143e888828901613fe5565b6000806000806060858703121561449b57600080fd5b8435935060208501356001600160401b038111156144b857600080fd5b6144c487828801613fe5565b9598909750949560400135949350505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715614515576145156144d7565b604052919050565b600082601f83011261452e57600080fd5b81356001600160401b03811115614547576145476144d7565b61455a601f8201601f19166020016144ed565b81815284602083860101111561456f57600080fd5b816020850160208301376000918101602001919091529392505050565b60006020828403121561459e57600080fd5b81356001600160401b038111156145b457600080fd5b610cab8482850161451d565b6000602082840312156145d257600080fd5b8135610db781613fa4565b60006001600160401b038211156145f6576145f66144d7565b5060051b60200190565b600061461361460e846145dd565b6144ed565b8381529050602080820190600585901b84018681111561463257600080fd5b845b8181101561466d5780356001600160401b038111156146535760008081fd5b61465f8982890161451d565b855250928201928201614634565b505050509392505050565b60006020828403121561468a57600080fd5b81356001600160401b038111156146a057600080fd5b8201601f810184136146b157600080fd5b610cab84823560208401614600565b600080604083850312156146d357600080fd5b50508035926020909101359150565b6040815260006146f56040830185613f4c565b8281036020840152610db38185613f4c565b6000806000806060858703121561471d57600080fd5b843561472881613fa4565b93506020850135925060408501356001600160401b0381111561474a57600080fd5b61475687828801613fe5565b95989497509550505050565b60008060008060008060006080888a03121561477d57600080fd5b87356001600160401b038082111561479457600080fd5b6147a08b838c01613fe5565b909950975060208a0135965060408a01359150808211156147c057600080fd5b6147cc8b838c01614098565b909650945060608a01359150808211156147e557600080fd5b506147f28a828b01614098565b989b979a50959850939692959293505050565b6000806020838503121561481857600080fd5b82356001600160401b0381111561482e57600080fd5b61437b85828601613fe5565b6000806040838503121561484d57600080fd5b823561485881613fa4565b9150612e9660208401614239565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156148bb57603f198886030184526148a9858351613f4c565b9450928501929085019060010161488d565b5092979650505050505050565b6040815260006148db6040830185614127565b8281036020840152610db38185614127565b6000806000806080858703121561490357600080fd5b843561490e81613fa4565b9350602085013561491e81613fa4565b92506040850135915060608501356001600160401b0381111561494057600080fd5b61494c8782880161451d565b91505092959194509250565b60008060006040848603121561496d57600080fd5b833561497881613fa4565b925060208401356001600160401b0381111561499357600080fd5b61422c86828701613fe5565b600080604083850312156149b257600080fd5b82356149bd81613fa4565b915060208301356149cd81613fa4565b809150509250929050565b6000806000604084860312156149ed57600080fd5b8335925060208401356001600160401b0381111561499357600080fd5b60008060008060808587031215614a2057600080fd5b8435614a2b81613fa4565b93506020850135614a3b81613fa4565b92506040850135614a4b81613fa4565b91506060850135614a5b81613fa4565b939692955090935050565b600181811c90821680614a7a57607f821691505b6020821081036113ff57634e487b7160e01b600052602260045260246000fd5b600060208284031215614aac57600080fd5b610db782614239565b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112614ae257600080fd5b8301803591506001600160401b03821115614afc57600080fd5b602001915036819003821315613e0157600080fd5b634e487b7160e01b600052601160045260246000fd5b600060018201614b3957614b39614b11565b5060010190565b60208082526027908201527f52656769737472793a2053454e4445525f49535f4e4f545f4d494e54494e475f60408201526626a0a720a3a2a960c91b606082015260800190565b6000610db7368484614600565b60208082526029908201527f52656769737472793a2053454e4445525f49535f4e4f545f415050524f5645446040820152682fa7a92fa7aba722a960b91b606082015260800190565b60208082526022908201527f52656769737472793a20494e53554646494349454e545f5045524d495353494f6040820152614e5360f01b606082015260800190565b60008251614c31818460208701613f28565b9190910192915050565b601f821115610a1357600081815260208120601f850160051c81016020861015614c625750805b601f850160051c820191505b8181101561117057828155600101614c6e565b6001600160401b03831115614c9857614c986144d7565b614cac83614ca68354614a66565b83614c3b565b6000601f841160018114614ce05760008515614cc85750838201355b600019600387901b1c1916600186901b178355610ea0565b600083815260209020601f19861690835b82811015614d115786850135825560209485019460019092019101614cf1565b5086821015614d2e5760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b602081526000610cab602083018486614d40565b600060808236031215614d8f57600080fd5b604051608081016001600160401b038282108183111715614db257614db26144d7565b8160405284359150614dc382613fa4565b81835260208501356020840152604085013560408401526060850135915080821115614dee57600080fd5b50614dfb3682860161451d565b60608301525092915050565b6000614e1561460e846145dd565b80848252602080830192508560051b850136811115614e3357600080fd5b855b81811015614e6e5780356001600160401b03811115614e545760008081fd5b614e6036828a0161451d565b865250938201938201614e35565b50919695505050505050565b60008351614e8c818460208801613f28565b835190830190614ea0818360208801613f28565b01949350505050565b60006020808385031215614ebc57600080fd5b82356001600160401b03811115614ed257600080fd5b8301601f81018513614ee357600080fd5b8035614ef161460e826145dd565b81815260059190911b82018301908381019087831115614f1057600080fd5b928401925b82841015614f2e57833582529284019290840190614f15565b979650505050505050565b8082018082111561094057610940614b11565b6001600160a01b03848116825283166020820152606060408201819052600090610b6990830184613f4c565b634e487b7160e01b600052601260045260246000fd5b600082614f9d57614f9d614f78565b500490565b634e487b7160e01b600052600160045260246000fd5b8181038181111561094057610940614b11565b600081614fda57614fda614b11565b506000190190565b60008351614ff4818460208801613f28565b601760f91b9083019081528351615012816001840160208801613f28565b01600101949350505050565b60006020828403121561503057600080fd5b5051919050565b60006020828403121561504957600080fd5b8151610db781613fa4565b8183823760009101908152919050565b81516001600160401b0381111561507d5761507d6144d7565b6150918161508b8454614a66565b84614c3b565b602080601f8311600181146150c657600084156150ae5750858301515b600019600386901b1c1916600185901b178555611170565b600085815260208120601f198616915b828110156150f5578886015182559484019460019091019084016150d6565b50858210156151135787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60008451615135818460208901613f28565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6000826151c3576151c3614f78565b500690565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b634e487b7160e01b600052602160045260246000fd5b828152604060208201526000610cab6040830184613f4c565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061316590830184613f4c565b60006020828403121561528757600080fd5b8151610db781613ef556febe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a","storage":{}},"0x6ac8f19d1e0f81147cdf2a1e53cb1f4e18417204":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610296575f3560e01c80636352211e11610161578063c93ab3fd116100ca578063e985e9c511610084578063e985e9c5146106c8578063eb8ae530146106db578063ed70554d146106ee578063f242432a1461070d578063f2fde38b14610720578063fd0cd0d914610733575f80fd5b8063c93ab3fd14610647578063cf4088231461065a578063d8c9921a1461066d578063d9a50c1214610680578063da8c229e14610693578063e0dba60f146106b5575f80fd5b8063a22cb4651161011b578063a22cb465146105d5578063a4014982146105e8578063adf4960a146105fb578063b6bcad261461060e578063c475abff14610621578063c658e08614610634575f80fd5b80636352211e146105595780636e5d6ad21461056c578063715018a6146105975780638b4dfa751461059f5780638cf8b41e146105b25780638da5cb5b146105c5575f80fd5b80631f4e1504116102035780633f15457f116101bd5780633f15457f146104b1578063402906fc146104d857806341415eab146105005780634e1273f41461051357806353095467146105335780635d3590d514610546575f80fd5b80631f4e15041461042b57806320c38e2b1461043e57806324c1af44146104515780632b20e397146104645780632eb2c2d61461048b57806333c69ea91461049e575f80fd5b80630e4cd725116102545780630e4cd725146103a05780630e89341c146103b357806314ab9038146103c6578063150b7a02146103d95780631534e177146104055780631896f70a14610418575f80fd5b8062fdd58e1461029a5780630178fe3f146102c057806301ffc9a71461030657806306fdde0314610329578063081812fc14610360578063095ea7b31461038b575b5f80fd5b6102ad6102a8366004614316565b610746565b6040519081526020015b60405180910390f35b6102d36102ce366004614340565b6107f0565b604080516001600160a01b03909416845263ffffffff90921660208401526001600160401b0316908201526060016102b7565b61031961031436600461436c565b61081f565b60405190151581526020016102b7565b6103536040518060400160405280600b81526020016a2730b6b2abb930b83832b960a91b81525081565b6040516102b791906143d4565b61037361036e366004614340565b61085e565b6040516001600160a01b0390911681526020016102b7565b61039e610399366004614316565b6108a0565b005b6103196103ae3660046143e6565b6108e5565b6103536103c1366004614340565b61095e565b61039e6103d436600461442f565b6109cc565b6103ec6103e736600461449d565b610ac0565b6040516001600160e01b031990911681526020016102b7565b61039e61041336600461450a565b610c96565b61039e6104263660046143e6565b610cc0565b600754610373906001600160a01b031681565b61035361044c366004614340565b610d75565b6102ad61045f3660046145f6565b610e0c565b6103737f000000000000000000000000c965345edac823d56812cd20a10316233916a60581565b61039e610499366004614717565b610fe7565b61039e6104ac3660046147bd565b61121a565b6103737f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a981565b6104eb6104e6366004614811565b6113e6565b60405163ffffffff90911681526020016102b7565b61031961050e3660046143e6565b611480565b610526610521366004614832565b6114b8565b6040516102b79190614928565b600554610373906001600160a01b031681565b61039e61055436600461493a565b6115d7565b610373610567366004614340565b611655565b61057f61057a366004614978565b61165f565b6040516001600160401b0390911681526020016102b7565b61039e61178e565b61039e6105ad3660046149aa565b6117a1565b61057f6105c03660046149e9565b6118c0565b5f546001600160a01b0316610373565b61039e6105e3366004614a6b565b611c28565b6102ad6105f6366004614a97565b611cfd565b610319610609366004614b12565b611e38565b61039e61061c36600461450a565b611e5c565b6102ad61062f366004614b33565b61209e565b6102ad610642366004614b53565b6122fd565b61039e610655366004614bc0565b6124bd565b61039e610668366004614c26565b612605565b61039e61067b366004614c5b565b612794565b61031961068e366004614b33565b61285d565b6103196106a136600461450a565b60046020525f908152604090205460ff1681565b61039e6106c3366004614a6b565b612938565b6103196106d6366004614c86565b61299f565b61039e6106e9366004614cb2565b6129cc565b6102ad6106fc366004614340565b60016020525f908152604090205481565b61039e61071b366004614d15565b612d59565b61039e61072e36600461450a565b612e06565b610319610741366004614340565b612e7c565b5f6001600160a01b0383166107b65760405162461bcd60e51b815260206004820152602b60248201527f455243313135353a2062616c616e636520717565727920666f7220746865207a60448201526a65726f206164647265737360a81b60648201526084015b60405180910390fd5b5f6107c083611655565b9050836001600160a01b0316816001600160a01b0316036107e55760019150506107ea565b5f9150505b92915050565b5f8181526001602052604090205460a081901c60c082901c610813838383612f4d565b90959094509092509050565b5f6001600160e01b03198216631b05885b60e31b148061084f57506001600160e01b03198216630a85bd0160e11b145b806107ea57506107ea82612f80565b5f8061086983611655565b90506001600160a01b03811661088157505f92915050565b5f838152600360205260409020546001600160a01b03165b9392505050565b5f6108aa826107f0565b50915050603f1960408216016108d65760405163a2a7201360e01b8152600481018390526024016107ad565b6108e08383612fcf565b505050565b5f8080806108f2866107f0565b925092509250846001600160a01b0316836001600160a01b0316148061091d575061091d838661299f565b8061094157506001600160a01b0385166109368761085e565b6001600160a01b0316145b8015610954575061095282826130de565b155b9695505050505050565b6005546040516303a24d0760e21b8152600481018390526060916001600160a01b031690630e89341c906024015f60405180830381865afa1580156109a5573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526107ea9190810190614d78565b816109d78133611480565b6109f857803360405163168ab55d60e31b81526004016107ad929190614dea565b8260105f610a05836107f0565b5091505063ffffffff8282161615610a335760405163a2a7201360e01b8152600481018490526024016107ad565b604051630295720760e31b8152600481018790526001600160401b03861660248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906314ab9038906044015b5f604051808303815f87803b158015610aa2575f80fd5b505af1158015610ab4573d5f803e3d5ffd5b50505050505050505050565b5f336001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a6051614610b0a5760405163032634a760e31b815260040160405180910390fd5b5f808080610b1a86880188614e01565b83516020850120939750919550935091508890808214610b57576040516331970f3360e21b815260048101829052602481018390526044016107ad565b604051630a3b53db60e21b81526001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906328ed4f6c90610ba59085903090600401614dea565b5f604051808303815f87803b158015610bbc575f80fd5b505af1158015610bce573d5f803e3d5ffd5b5050604051636b727d4360e11b8152600481018d90525f92506276a70091506001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063d6e4fa8690602401602060405180830381865afa158015610c3c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c609190614e64565b610c6a9190614e8f565b9050610c7d87878761ffff16848861310d565b50630a85bd0160e11b9c9b505050505050505050505050565b610c9e613215565b600580546001600160a01b0319166001600160a01b0392909216919091179055565b81610ccb8133611480565b610cec57803360405163168ab55d60e31b81526004016107ad929190614dea565b8260085f610cf9836107f0565b5091505063ffffffff8282161615610d275760405163a2a7201360e01b8152600481018490526024016107ad565b604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a90610a8b9089908990600401614dea565b60066020525f908152604090208054610d8d90614eb6565b80601f0160208091040260200160405190810160405280929190818152602001828054610db990614eb6565b8015610e045780601f10610ddb57610100808354040283529160200191610e04565b820191905f5260205f20905b815481529060010190602001808311610de757829003601f168201915b505050505081565b5f87610e188133611480565b610e3957803360405163168ab55d60e31b81526004016107ad929190614dea565b87516020890120610e4a8a8261326e565b9250610e568a8461329a565b610e6083866133d3565b610e6b8a848b613406565b50610e788a8487876134cd565b9350610e8383613510565b610f33576040516305ef2c7f60e41b8152600481018b9052602481018290523060448201526001600160a01b0388811660648301526001600160401b03881660848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610f0a575f80fd5b505af1158015610f1c573d5f803e3d5ffd5b50505050610f2e8a848b8b89896135c6565b610fda565b6040516305ef2c7f60e41b8152600481018b9052602481018290523060448201526001600160a01b0388811660648301526001600160401b03881660848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610fb6575f80fd5b505af1158015610fc8573d5f803e3d5ffd5b50505050610fda8a848b8b89896135fc565b5050979650505050505050565b81518351146110495760405162461bcd60e51b815260206004820152602860248201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206044820152670dad2e6dac2e8c6d60c31b60648201526084016107ad565b6001600160a01b03841661106f5760405162461bcd60e51b81526004016107ad90614eee565b6001600160a01b03851633148061108b575061108b853361299f565b6110f25760405162461bcd60e51b815260206004820152603260248201527f455243313135353a207472616e736665722063616c6c6572206973206e6f74206044820152711bdddb995c881b9bdc88185c1c1c9bdd995960721b60648201526084016107ad565b5f5b83518110156111ad575f84828151811061111057611110614f33565b602002602001015190505f84838151811061112d5761112d614f33565b602002602001015190505f805f611143856107f0565b9250925092506111548583836136b6565b83600114801561117557508a6001600160a01b0316836001600160a01b0316145b6111915760405162461bcd60e51b81526004016107ad90614f47565b61119d858b848461375d565b50505050508060010190506110f4565b50836001600160a01b0316856001600160a01b0316336001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516111fd929190614f91565b60405180910390a461121333868686868661379d565b5050505050565b5f611225858561326e565b905061123181846133d3565b5f808061123d846107f0565b919450925090506001600160a01b03831615806112ea57506040516302571be360e01b81526004810185905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa1580156112ba573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112de9190614fbe565b6001600160a01b031614155b1561130857604051635374b59960e01b815260040160405180910390fd5b5f806113138a6107f0565b90935091508a905061134f576113298633611480565b61134a57853360405163168ab55d60e31b81526004016107ad929190614dea565b61137a565b6113598a33611480565b61137a57893360405163168ab55d60e31b81526004016107ad929190614dea565b6113858689846138f7565b611390878483613932565b9650620100008416158015906113b457508363ffffffff1688851763ffffffff1614155b156113d55760405163a2a7201360e01b8152600481018790526024016107ad565b96831796610ab486868a868b613977565b5f826113f28133611480565b61141357803360405163168ab55d60e31b81526004016107ad929190614dea565b8360025f611420836107f0565b5091505063ffffffff828216161561144e5760405163a2a7201360e01b8152600481018490526024016107ad565b5f808061145a8a6107f0565b9250925092506114738a84848c61ffff16178485613977565b5098975050505050505050565b5f80808061148d866107f0565b925092509250846001600160a01b0316836001600160a01b031614806109415750610941838661299f565b6060815183511461151d5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b60648201526084016107ad565b5f83516001600160401b0381111561153757611537614525565b604051908082528060200260200182016040528015611560578160200160208202803683370190505b5090505f5b84518110156115cf576115aa85828151811061158357611583614f33565b602002602001015185838151811061159d5761159d614f33565b6020026020010151610746565b8282815181106115bc576115bc614f33565b6020908102919091010152600101611565565b509392505050565b6115df613215565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af115801561162b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061164f9190614fd9565b50505050565b5f6107ea82613a1e565b5f8061166b858561326e565b905061167681613510565b61169357604051635374b59960e01b815260040160405180910390fd5b5f61169e86336108e5565b9050801580156116b557506116b38233611480565b155b156116d757813360405163168ab55d60e31b81526004016107ad929190614dea565b5f80806116e3856107f0565b925092509250831580156116fa5750620400008216155b1561171b5760405163a2a7201360e01b8152600481018690526024016107ad565b5f6117258a6107f0565b92505050611734888383613932565b97506117428685858b613a33565b6040516001600160401b038916815286907ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b1329060200160405180910390a2509598975050505050505050565b611796613215565b61179f5f613a49565b565b6117b85f805160206154fc8339815191528461326e565b6117c28133611480565b6117e357803360405163168ab55d60e31b81526004016107ad929190614dea565b306001600160a01b0384160361181757604051632ca49b0d60e11b81526001600160a01b03841660048201526024016107ad565b6118376118315f805160206154fc8339815191528661326e565b83613a98565b604051632142170760e11b81523060048201526001600160a01b038481166024830152604482018690527f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906342842e0e906064015f604051808303815f87803b1580156118a4575f80fd5b505af11580156118b6573d5f803e3d5ffd5b5050505050505050565b5f8086866040516118d2929190614ff4565b6040519081900381206331a9108f60e11b82526004820181905291505f907f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa15801561193f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119639190614fbe565b90506001600160a01b0381163314801590611a09575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063e985e9c590604401602060405180830381865afa1580156119e3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a079190614fd9565b155b15611a4157611a255f805160206154fc8339815191528361326e565b3360405163168ab55d60e31b81526004016107ad929190614dea565b6040516323b872dd60e01b81526001600160a01b038281166004830152306024830152604482018490527f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906323b872dd906064015f604051808303815f87803b158015611aae575f80fd5b505af1158015611ac0573d5f803e3d5ffd5b5050604051630a3b53db60e21b81526001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a6051692506328ed4f6c9150611b129085903090600401614dea565b5f604051808303815f87803b158015611b29575f80fd5b505af1158015611b3b573d5f803e3d5ffd5b5050604051636b727d4360e11b8152600481018590526276a70092507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b0316915063d6e4fa8690602401602060405180830381865afa158015611ba7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611bcb9190614e64565b611bd59190614e8f565b9250611c1d88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508a9250505061ffff8816868861310d565b505095945050505050565b6001600160a01b0382163303611c925760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084016107ad565b335f8181526002602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b335f9081526004602052604081205460ff16611d2b5760405162461bcd60e51b81526004016107ad90615003565b5f8787604051611d3c929190614ff4565b604051908190038120633f2891eb60e21b8252600482018190523060248301526044820187905291507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b03169063fca247ac906064016020604051808303815f875af1158015611db5573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611dd99190614e64565b9150611e2d88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508a9250505061ffff8616611e276276a70087614e8f565b8861310d565b509695505050505050565b5f80611e43846107f0565b50841663ffffffff908116908516149250505092915050565b611e64613215565b6007546001600160a01b031615611f785760075460405163a22cb46560e01b81526001600160a01b0391821660048201525f60248201527f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063a22cb465906044015f604051808303815f87803b158015611ee0575f80fd5b505af1158015611ef2573d5f803e3d5ffd5b505060075460405163a22cb46560e01b81526001600160a01b0391821660048201525f60248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9909116925063a22cb46591506044015f604051808303815f87803b158015611f61575f80fd5b505af1158015611f73573d5f803e3d5ffd5b505050505b600780546001600160a01b0319166001600160a01b0383169081179091551561209b5760075460405163a22cb46560e01b81526001600160a01b039182166004820152600160248201527f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063a22cb465906044015f604051808303815f87803b158015612007575f80fd5b505af1158015612019573d5f803e3d5ffd5b505060075460405163a22cb46560e01b81526001600160a01b039182166004820152600160248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9909116925063a22cb46591506044015f604051808303815f87803b158015612089575f80fd5b505af1158015611213573d5f803e3d5ffd5b50565b335f9081526004602052604081205460ff166120cc5760405162461bcd60e51b81526004016107ad90615003565b5f6120e45f805160206154fc8339815191528561326e565b60405163c475abff60e01b815260048101869052602481018590529091505f906001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063c475abff906044016020604051808303815f875af1158015612154573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906121789190614e64565b6040516331a9108f60e11b8152600481018790529091507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa9250505080156121fc575060408051601f3d908101601f191682019092526121f991810190614fbe565b60015b6122095791506107ea9050565b6001600160a01b038116301415806122b157506040516302571be360e01b81526004810184905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015612281573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906122a59190614fbe565b6001600160a01b031614155b156122c0575091506107ea9050565b505f6122cf6276a70083614e8f565b5f8481526001602052604090205490915060a081901c6122f185838386613a33565b50919695505050505050565b5f866123098133611480565b61232a57803360405163168ab55d60e31b81526004016107ad929190614dea565b5f878760405161233b929190614ff4565b6040518091039020905061234f898261326e565b925061235b898461329a565b61236583866133d3565b5f6123a68a858b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061340692505050565b90506123b48a8588886134cd565b94506123bf84613510565b61246b576040516306ab592360e01b8152600481018b9052602481018390523060448201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906306ab5923906064016020604051808303815f875af1158015612434573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906124589190614e64565b506124668482898989613b83565b6124b0565b6124b08a858b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508d92508c91508b90506135fc565b5050509695505050505050565b5f6125005f86868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613bc59050565b6007549091506001600160a01b031661252c5760405163093075b560e21b815260040160405180910390fd5b6125368133611480565b61255757803360405163168ab55d60e31b81526004016107ad929190614dea565b5f8080612563846107f0565b919450925090505f6125748561085e565b905061257f85613c81565b60075f9054906101000a90046001600160a01b03166001600160a01b0316639198c2768a8a878787878e8e6040518963ffffffff1660e01b81526004016125cd989796959493929190615073565b5f604051808303815f87803b1580156125e4575f80fd5b505af11580156125f6573d5f803e3d5ffd5b50505050505050505050505050565b836126108133611480565b61263157803360405163168ab55d60e31b81526004016107ad929190614dea565b84601c5f61263e836107f0565b5091505063ffffffff828216161561266c5760405163a2a7201360e01b8152600481018490526024016107ad565b60405163cf40882360e01b8152600481018990523060248201526001600160a01b0387811660448301526001600160401b03871660648301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063cf408823906084015f604051808303815f87803b1580156126e8575f80fd5b505af11580156126fa573d5f803e3d5ffd5b5050506001600160a01b038816905061275f575f612717896107f0565b509150506201ffff196202000082160161274f57604051632ca49b0d60e11b81526001600160a01b03891660048201526024016107ad565b612759895f613a98565b506118b6565b5f61276989611655565b905061278981898b5f1c600160405180602001604052805f815250613d1e565b505050505050505050565b61279e838361326e565b6127a88133611480565b6127c957803360405163168ab55d60e31b81526004016107ad929190614dea565b7f6c32148f748aba23997146d7fe89e962e3cc30271290fb96f5f4337756c03b5284016128095760405163615a470360e01b815260040160405180910390fd5b6001600160a01b038216158061282757506001600160a01b03821630145b1561285057604051632ca49b0d60e11b81526001600160a01b03831660048201526024016107ad565b61164f611831858561326e565b5f80612869848461326e565b90505f61287582613510565b90505f805160206154fc83398151915285146128945791506107ea9050565b6040516331a9108f60e11b8152600481018590527f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa925050508015612915575060408051601f3d908101601f1916820190925261291291810190614fbe565b60015b612923575f925050506107ea565b6001600160a01b0316301492506107ea915050565b612940613215565b6001600160a01b0382165f81815260046020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf8791015b60405180910390a25050565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205460ff1690565b5f80612a105f87878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613dfe9050565b915091505f612a578288888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613bc59050565b90505f612a64828561326e565b5f818152600660205260409020909150612a7f888a8361511e565b507f6c32148f748aba23997146d7fe89e962e3cc30271290fb96f5f4337756c03b528201612ac05760405163615a470360e01b815260040160405180910390fd5b6040516302571be360e01b8152600481018290525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa158015612b25573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612b499190614fbe565b90506001600160a01b0381163314801590612bef575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063e985e9c590604401602060405180830381865afa158015612bc9573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612bed9190614fd9565b155b15612c1157813360405163168ab55d60e31b81526004016107ad929190614dea565b6001600160a01b03861615612c9c57604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a90612c6e9085908a90600401614dea565b5f604051808303815f87803b158015612c85575f80fd5b505af1158015612c97573d5f803e3d5ffd5b505050505b604051635b0fc9c360e01b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635b0fc9c390612cea9085903090600401614dea565b5f604051808303815f87803b158015612d01575f80fd5b505af1158015612d13573d5f803e3d5ffd5b50505050612789828a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201829052508d93509150819050613b83565b6001600160a01b038416612d7f5760405162461bcd60e51b81526004016107ad90614eee565b6001600160a01b038516331480612d9b5750612d9b853361299f565b612df95760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2063616c6c6572206973206e6f74206f776e6572206e6f7260448201526808185c1c1c9bdd995960ba1b60648201526084016107ad565b6112138585858585613d1e565b612e0e613215565b6001600160a01b038116612e735760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107ad565b61209b81613a49565b5f8181526006602052604081208054829190612e9790614eb6565b80601f0160208091040260200160405190810160405280929190818152602001828054612ec390614eb6565b8015612f0e5780601f10612ee557610100808354040283529160200191612f0e565b820191905f5260205f20905b815481529060010190602001808311612ef157829003601f168201915b5050505050905080515f03612f2557505f92915050565b5f80612f318382613dfe565b90925090505f612f418483613bc5565b9050610954818461285d565b5f8042836001600160401b03161015612f775761ffff1962010000851601612f73575f94505b5f93505b50929391925050565b5f6001600160e01b03198216636cdb3d1360e11b1480612fb057506001600160e01b031982166303a24d0760e21b145b806107ea57506301ffc9a760e01b6001600160e01b03198316146107ea565b5f612fd982611655565b9050806001600160a01b0316836001600160a01b0316036130465760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084016107ad565b336001600160a01b03821614806130625750613062813361299f565b6130d45760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016107ad565b6108e08383613eb2565b5f620200008381161480156108995750426130fc6276a700846151d7565b6001600160401b0316109392505050565b845160208601205f61312c5f805160206154fc8339815191528361326e565b90505f61315488604051806040016040528060058152602001626cae8d60e31b815250613f1f565b5f83815260066020526040902090915061316e82826151f7565b50613181828289620300008a1789613b83565b6001600160a01b038416156118b657604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a906131de9085908890600401614dea565b5f604051808303815f87803b1580156131f5575f80fd5b505af1158015613207573d5f803e3d5ffd5b505050505050505050505050565b5f546001600160a01b0316331461179f5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107ad565b604080516020808201949094528082019290925280518083038201815260609092019052805191012090565b5f80806132a6846107f0565b91945092509050426001600160401b0382161080801561336657506001600160a01b038416158061336657506040516302571be360e01b8152600481018690525f906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015613337573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061335b9190614fbe565b6001600160a01b0316145b156133a4575f613375876107f0565b50915050602081161561339e5760405163a2a7201360e01b8152600481018790526024016107ad565b506133cb565b620100008316156133cb5760405163a2a7201360e01b8152600481018690526024016107ad565b505050505050565b63fffdffff81811763ffffffff16146134025760405163a2a7201360e01b8152600481018390526024016107ad565b5050565b60605f6134aa8360065f8881526020019081526020015f20805461342990614eb6565b80601f016020809104026020016040519081016040528092919081815260200182805461345590614eb6565b80156134a05780601f10613477576101008083540402835291602001916134a0565b820191905f5260205f20905b81548152906001019060200180831161348357829003601f168201915b5050505050613f1f565b5f8581526006602052604090209091506134c482826151f7565b50949350505050565b5f806134d8856107f0565b925050505f806134e9885f1c6107f0565b92509250506134f98787846138f7565b613504858483613932565b98975050505050505050565b5f8061351b83611655565b6001600160a01b0316141580156107ea57506040516302571be360e01b81526004810183905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015613592573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906135b69190614fbe565b6001600160a01b03161492915050565b5f86815260066020526040812080546135e491879161342990614eb6565b90506135f38682868686613b83565b50505050505050565b5f8080613608886107f0565b9250925092505f61362f8860065f8d81526020019081526020015f20805461342990614eb6565b5f8a815260066020526040902080549192509061364b90614eb6565b90505f0361366c575f89815260066020526040902061366a82826151f7565b505b61367b89858886178589613977565b6001600160a01b03871661369857613693895f613a98565b610ab4565b610ab484888b5f1c600160405180602001604052805f815250613d1e565b6201ffff19620200008316016136d6576136d36276a700826151d7565b90505b42816001600160401b0316101561370f576201000082161561370a5760405162461bcd60e51b81526004016107ad90614f47565b613734565b60048216156137345760405163a2a7201360e01b8152600481018490526024016107ad565b604082165f036108e05750505f90815260036020526040902080546001600160a01b0319169055565b60c0816001600160401b0316901b60a08363ffffffff16901b846001600160a01b0316171760015f8681526020019081526020015f208190555050505050565b6001600160a01b0384163b156133cb5760405163bc197c8160e01b81526001600160a01b0385169063bc197c81906137e190899089908890889088906004016152b2565b6020604051808303815f875af192505050801561381b575060408051601f3d908101601f1916820190925261381891810190615303565b60015b6138c75761382761531e565b806308c379a003613860575061383b615337565b806138465750613862565b8060405162461bcd60e51b81526004016107ad91906143d4565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e20455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b60648201526084016107ad565b6001600160e01b0319811663bc197c8160e01b146135f35760405162461bcd60e51b81526004016107ad906153bf565b63ffff000082161580159060018316159082906139115750805b156112135760405163a2a7201360e01b8152600481018690526024016107ad565b5f816001600160401b0316846001600160401b03161115613951578193505b826001600160401b0316846001600160401b0316101561396f578293505b509192915050565b61398385858584613a33565b60405163ffffffff8416815285907f39873f00c80f4f94b7bd1594aebcf650f003545b74824d57ddf4939e3ff3a34b9060200160405180910390a2816001600160401b0316816001600160401b03161115611213576040516001600160401b038216815285907ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b132906020015b60405180910390a25050505050565b5f80613a29836107f0565b5090949350505050565b613a3d8483613f96565b61164f8484848461375d565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b613aa3826001611e38565b15613ac45760405163a2a7201360e01b8152600481018390526024016107ad565b613acd82613c81565b604051635b0fc9c360e01b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635b0fc9c390613b1b9085908590600401614dea565b5f604051808303815f87803b158015613b32575f80fd5b505af1158015613b44573d5f803e3d5ffd5b50506040516001600160a01b03841681528492507fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c49150602001612993565b613b8f85848484613fcf565b847f8ce7013e8abebc55c3890a68f5a27c67c3f7efa64e584de5fb22363c606fd34085858585604051613a0f9493929190615407565b5f805f613bd28585613dfe565b909250905081613c435760018551613bea919061544d565b8414613c385760405162461bcd60e51b815260206004820152601d60248201527f6e616d65686173683a204a756e6b20617420656e64206f66206e616d6500000060448201526064016107ad565b505f91506107ea9050565b613c4d8582613bc5565b6040805160208101929092528101839052606001604051602081830303815290604052805190602001209250505092915050565b5f8181526001602052604090205460a081901c60c082901c613ca4838383612f4d565b5f86815260036020526040812080546001600160a01b0319169055909350613cd091508590848461375d565b60408051858152600160208201525f916001600160a01b0386169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b5f805f613d2a866107f0565b925092509250613d3b8683836136b6565b846001148015613d5c5750876001600160a01b0316836001600160a01b0316145b613d785760405162461bcd60e51b81526004016107ad90614f47565b866001600160a01b0316836001600160a01b031603613d9957505050611213565b613da58688848461375d565b60408051878152602081018790526001600160a01b03808a1692908b169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46118b6338989898989614041565b5f8083518310613e505760405162461bcd60e51b815260206004820152601e60248201527f726561644c6162656c3a20496e646578206f7574206f6620626f756e6473000060448201526064016107ad565b5f848481518110613e6357613e63614f33565b016020015160f81c90508015613e8f57613e8885613e82866001615460565b836140fb565b9250613e93565b5f92505b613e9d8185615460565b613ea8906001615460565b9150509250929050565b5f81815260036020526040902080546001600160a01b0319166001600160a01b0384169081179091558190613ee682611655565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6060600183511015613f4457604051631406d65b60e11b815260040160405180910390fd5b60ff83511115613f69578260405163e3ba295f60e01b81526004016107ad91906143d4565b82518383604051602001613f7f93929190615473565b604051602081830303815290604052905092915050565b61ffff811615801590613fae57506201000181811614155b156134025760405163a2a7201360e01b8152600481018390526024016107ad565b613fd98483613f96565b5f848152600160205260409020546001600160a01b0381161561403557613fff85613c81565b6040515f815285907fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c49060200160405180910390a25b6112138585858561411d565b6001600160a01b0384163b156133cb5760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e619061408590899089908890889088906004016154b7565b6020604051808303815f875af19250505080156140bf575060408051601f3d908101601f191682019092526140bc91810190615303565b60015b6140cb5761382761531e565b6001600160e01b0319811663f23a6e6160e01b146135f35760405162461bcd60e51b81526004016107ad906153bf565b82515f906141098385615460565b1115614113575f80fd5b5091016020012090565b835f808061412a846107f0565b9194509250905063ffff000082166001600160401b038087169083161115614150578195505b42826001600160401b03161061416557958617955b6001600160a01b038416156141bc5760405162461bcd60e51b815260206004820152601f60248201527f455243313135353a206d696e74206f66206578697374696e6720746f6b656e0060448201526064016107ad565b6001600160a01b03881661421c5760405162461bcd60e51b815260206004820152602160248201527f455243313135353a206d696e7420746f20746865207a65726f206164647265736044820152607360f81b60648201526084016107ad565b306001600160a01b038916036142915760405162461bcd60e51b815260206004820152603460248201527f455243313135353a206e65774f776e65722063616e6e6f74206265207468652060448201527313985b5955dc985c1c195c8818dbdb9d1c9858dd60621b60648201526084016107ad565b61429d8589898961375d565b60408051868152600160208201526001600160a01b038a16915f9133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4612789335f8a88600160405180602001604052805f815250614041565b6001600160a01b038116811461209b575f80fd5b5f8060408385031215614327575f80fd5b823561433281614302565b946020939093013593505050565b5f60208284031215614350575f80fd5b5035919050565b6001600160e01b03198116811461209b575f80fd5b5f6020828403121561437c575f80fd5b813561089981614357565b5f5b838110156143a1578181015183820152602001614389565b50505f910152565b5f81518084526143c0816020860160208601614387565b601f01601f19169290920160200192915050565b602081525f61089960208301846143a9565b5f80604083850312156143f7575f80fd5b82359150602083013561440981614302565b809150509250929050565b80356001600160401b038116811461442a575f80fd5b919050565b5f8060408385031215614440575f80fd5b8235915061445060208401614414565b90509250929050565b5f8083601f840112614469575f80fd5b5081356001600160401b0381111561447f575f80fd5b602083019150836020828501011115614496575f80fd5b9250929050565b5f805f805f608086880312156144b1575f80fd5b85356144bc81614302565b945060208601356144cc81614302565b93506040860135925060608601356001600160401b038111156144ed575f80fd5b6144f988828901614459565b969995985093965092949392505050565b5f6020828403121561451a575f80fd5b813561089981614302565b634e487b7160e01b5f52604160045260245ffd5b601f8201601f191681016001600160401b038111828210171561455e5761455e614525565b6040525050565b5f6001600160401b0382111561457d5761457d614525565b50601f01601f191660200190565b5f82601f83011261459a575f80fd5b81356145a581614565565b6040516145b28282614539565b8281528560208487010111156145c6575f80fd5b826020860160208301375f92810160200192909252509392505050565b803563ffffffff8116811461442a575f80fd5b5f805f805f805f60e0888a03121561460c575f80fd5b8735965060208801356001600160401b03811115614628575f80fd5b6146348a828b0161458b565b965050604088013561464581614302565b9450606088013561465581614302565b935061466360808901614414565b925061467160a089016145e3565b915061467f60c08901614414565b905092959891949750929550565b5f6001600160401b038211156146a5576146a5614525565b5060051b60200190565b5f82601f8301126146be575f80fd5b813560206146cb8261468d565b6040516146d88282614539565b80915083815260208101915060208460051b8701019350868411156146fb575f80fd5b602086015b84811015611e2d5780358352918301918301614700565b5f805f805f60a0868803121561472b575f80fd5b853561473681614302565b9450602086013561474681614302565b935060408601356001600160401b0380821115614761575f80fd5b61476d89838a016146af565b94506060880135915080821115614782575f80fd5b61478e89838a016146af565b935060808801359150808211156147a3575f80fd5b506147b08882890161458b565b9150509295509295909350565b5f805f80608085870312156147d0575f80fd5b84359350602085013592506147e7604086016145e3565b91506147f560608601614414565b905092959194509250565b803561ffff8116811461442a575f80fd5b5f8060408385031215614822575f80fd5b8235915061445060208401614800565b5f8060408385031215614843575f80fd5b82356001600160401b0380821115614859575f80fd5b818501915085601f83011261486c575f80fd5b813560206148798261468d565b6040516148868282614539565b83815260059390931b85018201928281019150898411156148a5575f80fd5b948201945b838610156148cc5785356148bd81614302565b825294820194908201906148aa565b965050860135925050808211156148e1575f80fd5b50613ea8858286016146af565b5f815180845260208085019450602084015f5b8381101561491d57815187529582019590820190600101614901565b509495945050505050565b602081525f61089960208301846148ee565b5f805f6060848603121561494c575f80fd5b833561495781614302565b9250602084013561496781614302565b929592945050506040919091013590565b5f805f6060848603121561498a575f80fd5b83359250602084013591506149a160408501614414565b90509250925092565b5f805f606084860312156149bc575f80fd5b8335925060208401356149ce81614302565b915060408401356149de81614302565b809150509250925092565b5f805f805f608086880312156149fd575f80fd5b85356001600160401b03811115614a12575f80fd5b614a1e88828901614459565b9096509450506020860135614a3281614302565b9250614a4060408701614800565b91506060860135614a5081614302565b809150509295509295909350565b801515811461209b575f80fd5b5f8060408385031215614a7c575f80fd5b8235614a8781614302565b9150602083013561440981614a5e565b5f805f805f8060a08789031215614aac575f80fd5b86356001600160401b03811115614ac1575f80fd5b614acd89828a01614459565b9097509550506020870135614ae181614302565b9350604087013592506060870135614af881614302565b9150614b0660808801614800565b90509295509295509295565b5f8060408385031215614b23575f80fd5b82359150614450602084016145e3565b5f8060408385031215614b44575f80fd5b50508035926020909101359150565b5f805f805f8060a08789031215614b68575f80fd5b8635955060208701356001600160401b03811115614b84575f80fd5b614b9089828a01614459565b9096509450506040870135614ba481614302565b9250614bb2606088016145e3565b9150614b0660808801614414565b5f805f8060408587031215614bd3575f80fd5b84356001600160401b0380821115614be9575f80fd5b614bf588838901614459565b90965094506020870135915080821115614c0d575f80fd5b50614c1a87828801614459565b95989497509550505050565b5f805f8060808587031215614c39575f80fd5b843593506020850135614c4b81614302565b925060408501356147e781614302565b5f805f60608486031215614c6d575f80fd5b833592506020840135915060408401356149de81614302565b5f8060408385031215614c97575f80fd5b8235614ca281614302565b9150602083013561440981614302565b5f805f8060608587031215614cc5575f80fd5b84356001600160401b03811115614cda575f80fd5b614ce687828801614459565b9095509350506020850135614cfa81614302565b91506040850135614d0a81614302565b939692955090935050565b5f805f805f60a08688031215614d29575f80fd5b8535614d3481614302565b94506020860135614d4481614302565b9350604086013592506060860135915060808601356001600160401b03811115614d6c575f80fd5b6147b08882890161458b565b5f60208284031215614d88575f80fd5b81516001600160401b03811115614d9d575f80fd5b8201601f81018413614dad575f80fd5b8051614db881614565565b604051614dc58282614539565b828152866020848601011115614dd9575f80fd5b610954836020830160208701614387565b9182526001600160a01b0316602082015260400190565b5f805f8060808587031215614e14575f80fd5b84356001600160401b03811115614e29575f80fd5b614e358782880161458b565b9450506020850135614e4681614302565b9250614e5460408601614800565b91506060850135614d0a81614302565b5f60208284031215614e74575f80fd5b5051919050565b634e487b7160e01b5f52601160045260245ffd5b6001600160401b03818116838216019080821115614eaf57614eaf614e7b565b5092915050565b600181811c90821680614eca57607f821691505b602082108103614ee857634e487b7160e01b5f52602260045260245ffd5b50919050565b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b634e487b7160e01b5f52603260045260245ffd5b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b604081525f614fa360408301856148ee565b8281036020840152614fb581856148ee565b95945050505050565b5f60208284031215614fce575f80fd5b815161089981614302565b5f60208284031215614fe9575f80fd5b815161089981614a5e565b818382375f9101908152919050565b60208082526028908201527f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f604082015267373a3937b63632b960c11b606082015260800190565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b60c081525f61508660c083018a8c61504b565b6001600160a01b03898116602085015263ffffffff891660408501526001600160401b03881660608501528616608084015282810360a08401526150cb81858761504b565b9b9a5050505050505050505050565b601f8211156108e057805f5260205f20601f840160051c810160208510156150ff5750805b601f840160051c820191505b81811015611213575f815560010161510b565b6001600160401b0383111561513557615135614525565b615149836151438354614eb6565b836150da565b5f601f84116001811461517a575f85156151635750838201355b5f19600387901b1c1916600186901b178355611213565b5f83815260208120601f198716915b828110156151a95786850135825560209485019460019092019101615189565b50868210156151c5575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b6001600160401b03828116828216039080821115614eaf57614eaf614e7b565b81516001600160401b0381111561521057615210614525565b6152248161521e8454614eb6565b846150da565b602080601f831160018114615257575f84156152405750858301515b5f19600386901b1c1916600185901b1785556133cb565b5f85815260208120601f198616915b8281101561528557888601518255948401946001909101908401615266565b50858210156152a257878501515f19600388901b60f8161c191681555b5050505050600190811b01905550565b6001600160a01b0386811682528516602082015260a0604082018190525f906152dd908301866148ee565b82810360608401526152ef81866148ee565b9050828103608084015261350481856143a9565b5f60208284031215615313575f80fd5b815161089981614357565b5f60033d11156153345760045f803e505f5160e01c5b90565b5f60443d10156153445790565b6040516003193d81016004833e81513d6001600160401b03816024840111818411171561537357505050505090565b828501915081518181111561538b5750505050505090565b843d87010160208285010111156153a55750505050505090565b6153b460208286010187614539565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b608081525f61541960808301876143a9565b6001600160a01b039590951660208301525063ffffffff9290921660408301526001600160401b0316606090910152919050565b818103818111156107ea576107ea614e7b565b808201808211156107ea576107ea614e7b565b60ff60f81b8460f81b1681525f8351615493816001850160208801614387565b8351908301906154aa816001840160208801614387565b0160010195945050505050565b6001600160a01b03868116825285166020820152604081018490526060810183905260a0608082018190525f906154f0908301846143a9565b97965050505050505056fe93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4aea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2a68925cf5169f28586095d5b5b9933b3008f4c793a48be4f59b8b2bc62aa60a":"0x1","0x54cdd369e4e8a8515e52ca72ec816c2101831ad1f18bf44102ed171459c9b4f8":"0x2","0xa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb49":"0xffffffffffffffff000100010000000000000000000000000000000000000000","0xafa26c20e8b3d9a2853d642cfe1021dae26242ffedfac91c97aab212c1a4b93b":"0xffffffffffffffff000100010000000000000000000000000000000000000000","0xef5b11c47ebee44618abc22110e10e3b408ea5e799056d2b38461aa7b97c5a97":"0x1","0xfb9e8e321b8a5ec48f12a7b41f22c6e595d761285c9eb19d8dda7c99edf1b54f":"0x36574680000000000000000000000000000000000000000000000000000000a"}},"0x6e1eb616c7d69491f9a880f815ff5574768cba20":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b506004361061007a575f3560e01c806314ab90381161005857806314ab90381461010357806316a25cbd146101165780631896f70a146101625780635b0fc9c314610175575f80fd5b80630178b8bf1461007e57806302571be3146100c657806306ab5923146100ee575b5f80fd5b6100a961008c366004610403565b5f908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100a96100d4366004610403565b5f908152602081905260409020546001600160a01b031690565b6101016100fc366004610435565b610188565b005b610101610111366004610467565b610242565b610149610124366004610403565b5f90815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100bd565b6101016101703660046104a1565b6102e2565b6101016101833660046104a1565b610374565b5f8381526020819052604090205483906001600160a01b031633146101ab575f80fd5b60408051602080820187905281830186905282518083038401815260608301808552815191909201206001600160a01b0386169091529151859187917fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829181900360800190a35f90815260208190526040902080546001600160a01b0319166001600160a01b039390931692909217909155505050565b5f8281526020819052604090205482906001600160a01b03163314610265575f80fd5b60405167ffffffffffffffff8316815283907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a2505f91825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b5f8281526020819052604090205482906001600160a01b03163314610305575f80fd5b6040516001600160a01b038316815283907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a2505f9182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b5f8281526020819052604090205482906001600160a01b03163314610397575f80fd5b6040516001600160a01b038316815283907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a2505f9182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b5f60208284031215610413575f80fd5b5035919050565b80356001600160a01b0381168114610430575f80fd5b919050565b5f805f60608486031215610447575f80fd5b833592506020840135915061045e6040850161041a565b90509250925092565b5f8060408385031215610478575f80fd5b82359150602083013567ffffffffffffffff81168114610496575f80fd5b809150509250929050565b5f80604083850312156104b2575f80fd5b823591506104c26020840161041a565b9050925092905056fea164736f6c6343000818000a","storage":{"0x859ecef2e168dc10231b000bd53493b42bc9d944cac29d94582c1e1d43592131":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x7bb6cd9be29fab783c0b494a06fed8b2e2596b7a":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100ea5760003560e01c80636debcb8d1161008c578063b34f33c511610066578063b34f33c514610741578063d0778d6c14610814578063ef2c3088146108f2578063f5090c1e14610980576100ea565b80636debcb8d146105ca5780636fab95b3146106585780637b1039991461071d576100ea565b8063511f1112116100c8578063511f1112146103c557806361603dd91461044857806368b6154f146104bd5780636ccbae5f1461059b576100ea565b806307eca395146100ef578063280d9b051461021457806330135293146102f2575b600080fd5b610212600480360360a081101561010557600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561013457600080fd5b82018360208201111561014657600080fd5b803590602001918460018302840111600160201b8311171561016757600080fd5b919390929091602081019035600160201b81111561018457600080fd5b82018360208201111561019657600080fd5b803590602001918460018302840111600160201b831117156101b757600080fd5b919390929091602081019035600160201b8111156101d457600080fd5b8201836020820111156101e657600080fd5b803590602001918460018302840111600160201b8311171561020757600080fd5b509092509050610aae565b005b610212600480360360a081101561022a57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561026457600080fd5b82018360208201111561027657600080fd5b803590602001918460018302840111600160201b8311171561029757600080fd5b919390929091602081019035600160201b8111156102b457600080fd5b8201836020820111156102c657600080fd5b803590602001918460018302840111600160201b831117156102e757600080fd5b509092509050610c92565b6102126004803603608081101561030857600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561033757600080fd5b82018360208201111561034957600080fd5b803590602001918460018302840111600160201b8311171561036a57600080fd5b919390929091602081019035600160201b81111561038757600080fd5b82018360208201111561039957600080fd5b803590602001918460018302840111600160201b831117156103ba57600080fd5b509092509050610e3d565b610212600480360360608110156103db57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561040a57600080fd5b82018360208201111561041c57600080fd5b803590602001918460018302840111600160201b8311171561043d57600080fd5b509092509050610fcc565b6102126004803603604081101561045e57600080fd5b81359190810190604081016020820135600160201b81111561047f57600080fd5b82018360208201111561049157600080fd5b803590602001918460018302840111600160201b831117156104b257600080fd5b5090925090506110c9565b610212600480360360a08110156104d357600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561050d57600080fd5b82018360208201111561051f57600080fd5b803590602001918460018302840111600160201b8311171561054057600080fd5b919390929091602081019035600160201b81111561055d57600080fd5b82018360208201111561056f57600080fd5b803590602001918460018302840111600160201b8311171561059057600080fd5b5090925090506111ae565b6105b8600480360360208110156105b157600080fd5b50356113a8565b60408051918252519081900360200190f35b610212600480360360808110156105e057600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561061a57600080fd5b82018360208201111561062c57600080fd5b803590602001918460018302840111600160201b8311171561064d57600080fd5b5090925090506113ba565b6102126004803603606081101561066e57600080fd5b81359190810190604081016020820135600160201b81111561068f57600080fd5b8201836020820111156106a157600080fd5b803590602001918460018302840111600160201b831117156106c257600080fd5b919390929091602081019035600160201b8111156106df57600080fd5b8201836020820111156106f157600080fd5b803590602001918460018302840111600160201b8311171561071257600080fd5b5090925090506114d4565b610725611675565b604080516001600160a01b039092168252519081900360200190f35b6102126004803603608081101561075757600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561078657600080fd5b82018360208201111561079857600080fd5b803590602001918460018302840111600160201b831117156107b957600080fd5b919390929091602081019035600160201b8111156107d657600080fd5b8201836020820111156107e857600080fd5b803590602001918460018302840111600160201b8311171561080957600080fd5b509092509050611684565b610212600480360360a081101561082a57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561086457600080fd5b82018360208201111561087657600080fd5b803590602001918460018302840111600160201b8311171561089757600080fd5b919390929091602081019035600160201b8111156108b457600080fd5b8201836020820111156108c657600080fd5b803590602001918460018302840111600160201b831117156108e757600080fd5b5090925090506117de565b6102126004803603608081101561090857600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561094257600080fd5b82018360208201111561095457600080fd5b803590602001918460018302840111600160201b8311171561097557600080fd5b5090925090506119e4565b610212600480360360c081101561099657600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156109d057600080fd5b8201836020820111156109e257600080fd5b803590602001918460018302840111600160201b83111715610a0357600080fd5b919390929091602081019035600160201b811115610a2057600080fd5b820183602082011115610a3257600080fd5b803590602001918460018302840111600160201b83111715610a5357600080fd5b919390929091602081019035600160201b811115610a7057600080fd5b820183602082011115610a8257600080fd5b803590602001918460018302840111600160201b83111715610aa357600080fd5b509092509050611ad3565b610bb163ce9fb82b89898989898960405160240180876001600160a01b03166001600160a01b0316815260200186815260200180602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f820116905080830192505050985050505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208884848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b600154604051630119f80560e21b81526001600160a01b038a811660048301908152602483018b9052608060448401908152608484018a90529190931692630467e014928c928c928c928c928c928c92909190606481019060a401878780828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f82011690508083019250505098505050505050505050600060405180830381600087803b158015610c7057600080fd5b505af1158015610c84573d6000803e3d6000fd5b505050505050505050505050565b610d8363b88d4fde888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040516315eab15d60e21b81526001600160a01b03898116600483019081528982166024840152604483018990526080606484019081526084840188905291909316926357aac574928b928b928b928b928b929160a401848480828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b158015610e1c57600080fd5b505af1158015610e30573d6000803e3d6000fd5b5050505050505050505050565b610f09637c69eae28787878760405160240180856001600160a01b03166001600160a01b0316815260200184815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09d909d1b9c909c178c529351909a208a51918d01849004840282018401909a528b81528f985096508b95508a94508493505085019050838280828437600092019190915250611d5492505050565b600154604051630119f80560e21b81526001600160a01b038881166004830190815260248301899052608060448401908152608484018890529190931692630467e014928a928a928a928a9290606481019060a401858580828437600081840152601f19601f8201169050808301925050508381038252600081526020016020019650505050505050600060405180830381600087803b158015610fac57600080fd5b505af1158015610fc0573d6000803e3d6000fd5b50505050505050505050565b604080516001600160a01b038616602482015260448082018690528251808303909101815260649091018252602081810180516001600160e01b0316632392c18960e01b17815291519091208251601f85018390048302810183019093528383526110569290918691908690869081908401838280828437600092019190915250611d5492505050565b60015460408051631292e83560e11b81526001600160a01b0387811660048301526024820187905291519190921691632525d06a91604480830192600092919082900301818387803b1580156110ab57600080fd5b505af11580156110bf573d6000803e3d6000fd5b5050505050505050565b6040805160248082018690528251808303909101815260449091018252602081810180516001600160e01b0316630852cd8d60e31b17815291519091208251601f85018390048302810183019093528383526111449290918691908690869081908401838280828437600092019190915250611d5492505050565b6001546040805163e67ca8a360e01b81526004810186905290516001600160a01b039092169163e67ca8a39160248082019260009290919082900301818387803b15801561119157600080fd5b505af11580156111a5573d6000803e3d6000fd5b50505050505050565b61129f639e5be9a5888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b03909316926302759c37928b928b9286926368b62d32928d928d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561132757600080fd5b505afa15801561133b573d6000803e3d6000fd5b505050506040513d602081101561135157600080fd5b5051604080516001600160e01b031960e087901b1681526001600160a01b03948516600482015292909316602483015260448201529051606480830192600092919082900301818387803b158015610e1c57600080fd5b60009081526020819052604090205490565b604080516001600160a01b0380881660248301528616604482015260648082018690528251808303909101815260849091018252602081810180516001600160e01b0316632142170760e11b17815291519091208251601f850183900483028101830190935283835261144c9290918691908690869081908401838280828437600092019190915250611d5492505050565b600154604080516315eab15d60e21b81526001600160a01b0388811660048301528781166024830152604482018790526080606483015260006084830181905292519316926357aac5749260c48084019391929182900301818387803b1580156114b557600080fd5b505af11580156114c9573d6000803e3d6000fd5b505050505050505050565b611585635cbe11128686866040516024018084815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09c909c1b9b909b178b5293519099208951918c018490048402820184019099528a81528e975095508a9450899350839250508401838280828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b039093169263e67ca8a39284926368b62d32928b928b928b929190606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561160b57600080fd5b505afa15801561161f573d6000803e3d6000fd5b505050506040513d602081101561163557600080fd5b5051604080516001600160e01b031960e085901b168152600481019290925251602480830192600092919082900301818387803b1580156114b557600080fd5b6001546001600160a01b031690565b61175063d8d3cc6e8787878760405160240180856001600160a01b03166001600160a01b0316815260200184815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09d909d1b9c909c178c529351909a208a51918d01849004840282018401909a528b81528f985096508b95508a94508493505085019050838280828437600092019190915250611d5492505050565b60015460405163b546666960e01b81526001600160a01b03888116600483019081526024830189905260606044840190815260648401889052919093169263b5466669928a928a928a928a9290608401848480828437600081840152601f19601f82011690508083019250505095505050505050600060405180830381600087803b158015610fac57600080fd5b6118cf639d743989888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b03909316926357aac574928b928b9286926368b62d32928d928d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561195757600080fd5b505afa15801561196b573d6000803e3d6000fd5b505050506040513d602081101561198157600080fd5b5051604080516001600160e01b031960e087901b1681526001600160a01b039485166004820152929093166024830152604482015260806064820152600060848201819052915160c4808301939282900301818387803b158015610e1c57600080fd5b604080516001600160a01b0380881660248301528616604482015260648082018690528251808303909101815260849091018252602081810180516001600160e01b03166323b872dd60e01b17815291519091208251601f8501839004830281018301909352838352611a769290918691908690869081908401838280828437600092019190915250611d5492505050565b600154604080516302759c3760e01b81526001600160a01b038881166004830152878116602483015260448201879052915191909216916302759c3791606480830192600092919082900301818387803b1580156114b557600080fd5b611bf063c29b52f98a8a8a8a8a8a8a60405160240180886001600160a01b03166001600160a01b03168152602001876001600160a01b03166001600160a01b0316815260200186815260200180602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f82011690508083019250505099505050505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208884848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b8152600481018a815260248201928352604482018990526001600160a01b03909316926357aac574928d928d9286926368b62d32928f928f928f92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b158015611c7857600080fd5b505afa158015611c8c573d6000803e3d6000fd5b505050506040513d6020811015611ca257600080fd5b50516040516001600160e01b031960e086901b1681526001600160a01b0380851660048301908152908416602483015260448201839052608060648301908152608483018b90528b928b92919060a401848480828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b158015611d3157600080fd5b505af1158015611d45573d6000803e3d6000fd5b50505050505050505050505050565b6000828152602081815260408083205481518084018890523060601b81840152605480820183905283518083039091018152607490910190925281519190920120909190611db3908490611da790611ea9565b9063ffffffff611efa16565b90506001600160a01b03811615801590611e4957506001546040805163430c208160e01b81526001600160a01b038481166004830152602482018890529151919092169163430c2081916044808301926020929190829003018186803b158015611e1c57600080fd5b505afa158015611e30573d6000803e3d6000fd5b505050506040513d6020811015611e4657600080fd5b50515b611e8e576040805162461bcd60e51b8152602060048201526011602482015270494e56414c49445f5349474e415455524560781b604482015290519081900360640190fd5b50505060009081526020819052604090208054600101905550565b604080517f19457468657265756d205369676e6564204d6573736167653a0a333200000000602080830191909152603c8083019490945282518083039094018452605c909101909152815191012090565b60008151604114611f0d57506000611fe3565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0821115611f535760009350505050611fe3565b8060ff16601b14158015611f6b57508060ff16601c14155b15611f7c5760009350505050611fe3565b6040805160008152602080820180845289905260ff8416828401526060820186905260808201859052915160019260a0808401939192601f1981019281900390910190855afa158015611fd3573d6000803e3d6000fd5b5050506020604051035193505050505b9291505056fea265627a7a7231582014816bfd0c1519ce8c4cf272eb0526ffdba3abef0df7f17deb0da40bd8abb77f64736f6c634300050c0032","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533"}},"0x7c3c91245769c8b7450ad522792dec4bd4bf797f":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b506004361061003f575f3560e01c80631bf7e13e146100435780636ccbae5f1461006c578063a424740014610099575b5f80fd5b610056610051366004610749565b6100bc565b604051610063919061082c565b60405180910390f35b61008b61007a36600461083e565b5f9081526001602052604090205490565b604051908152602001610063565b6100ac6100a7366004610749565b6101d6565b6040519015158152602001610063565b60605f5a90506100cd8585856101d6565b6101315760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e61676572466f727761726465723a205349474e415455604482015269149157d253959053125160b21b60648201526084015b60405180910390fd5b6101cb6101416020870187610870565b5f546001600160a01b031660408801358461015f60608b018b610889565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f9201919091525061023292505050565b9150505b9392505050565b5f61022a6101e38561093a565b5f54604080516020601f88018190048102820181019092528681526001600160a01b03909216919087908790819084018382808284375f9201919091525061030e92505050565b949350505050565b606061023d85610453565b5f80876001600160a01b0316866102568b8a898961047e565b60405161026391906109f5565b5f604051808303815f8787f1925050503d805f811461029d576040519150601f19603f3d011682016040523d82523d5f602084013e6102a2565b606091505b5090925090506102b3603f87610a10565b5a116102c1576102c1610a2f565b61030182826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506104ae565b9998505050505050505050565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015610352573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103769190610a43565b90505f6104238660600151805190602001208688602001516040516020016103c39392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561044957508551610449906001600160a01b031682866104e7565b9695505050505050565b5f8181526001602081905260409091205461046d91610a5a565b5f9182526001602052604090912055565b606082858560405160200161049593929190610a7f565b6040516020818303038152906040529050949350505050565b606083156104bd5750816101cf565b8251156104cd5782518084602001fd5b8160405162461bcd60e51b8152600401610128919061082c565b5f805f6104f48585610622565b90925090505f81600481111561050c5761050c610abd565b14801561052a5750856001600160a01b0316826001600160a01b0316145b1561053a576001925050506101cf565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401610561929190610ad1565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161059f91906109f5565b5f60405180830381855afa9150503d805f81146105d7576040519150601f19603f3d011682016040523d82523d5f602084013e6105dc565b606091505b50915091508180156105ef575080516020145b801561061657508051630b135d3f60e11b906106149083016020908101908401610a43565b145b98975050505050505050565b5f808251604103610656576020830151604084015160608501515f1a61064a87828585610664565b9450945050505061065d565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561069957505f90506003610740565b8460ff16601b141580156106b157508460ff16601c14155b156106c157505f90506004610740565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610712573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b03811661073a575f60019250925050610740565b91505f90505b94509492505050565b5f805f6040848603121561075b575f80fd5b833567ffffffffffffffff80821115610772575f80fd5b9085019060808288031215610785575f80fd5b9093506020850135908082111561079a575f80fd5b818601915086601f8301126107ad575f80fd5b8135818111156107bb575f80fd5b8760208285010111156107cc575f80fd5b6020830194508093505050509250925092565b5f5b838110156107f95781810151838201526020016107e1565b50505f910152565b5f81518084526108188160208601602086016107df565b601f01601f19169290920160200192915050565b602081525f6101cf6020830184610801565b5f6020828403121561084e575f80fd5b5035919050565b80356001600160a01b038116811461086b575f80fd5b919050565b5f60208284031215610880575f80fd5b6101cf82610855565b5f808335601e1984360301811261089e575f80fd5b83018035915067ffffffffffffffff8211156108b8575f80fd5b60200191503681900382131561065d575f80fd5b634e487b7160e01b5f52604160045260245ffd5b6040516080810167ffffffffffffffff81118282101715610903576109036108cc565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610932576109326108cc565b604052919050565b5f6080823603121561094a575f80fd5b6109526108e0565b61095b83610855565b81526020808401358183015260408401356040830152606084013567ffffffffffffffff8082111561098b575f80fd5b9085019036601f83011261099d575f80fd5b8135818111156109af576109af6108cc565b6109c1601f8201601f19168501610909565b915080825236848285010111156109d6575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b5f8251610a068184602087016107df565b9190910192915050565b5f82610a2a57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b5f60208284031215610a53575f80fd5b5051919050565b80820180821115610a7957634e487b7160e01b5f52601160045260245ffd5b92915050565b5f8451610a908184602089016107df565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f61022a604083018461080156fea164736f6c6343000818000a","storage":{"0x0":"0x39a27956b78d00a4e00ea8833ff0947410a2933f"}},"0x8861cdfa38838531275ce12f9e795c3b9ff29cbe":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x936188f2c3c8e8c95e425b6fe41c2ac9e701585e":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x94f57ed7e9af03a10e8eb23ce1b3c7914a182b0f":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x95f29431aeb52c0d5dbeeec36010b8e2ca69cb3d":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x9b2565a3545a1312bdcb6e7148a7f7cae8c2706b":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c806373cc48a61161008857806398d35f201161006357806398d35f2014610215578063bd7ed31a1461021d578063c327deef14610245578063d7b82ebe1461026d575f80fd5b806373cc48a6146101af5780638438dc04146101ef5780638da5cb5b14610202575f80fd5b806313af4035116100c357806313af40351461015657806328e7677d146101695780632c095cbb1461017c578063435cc1621461018f575f80fd5b8063020ed8d3146100e9578063087991bc146100fe5780630b1a249514610143575b5f80fd5b6100fc6100f73660046122ff565b610280565b005b61011161010c36600461238a565b610300565b6040805163ffffffff94851681529390921660208401526001600160601b031916908201526060015b60405180910390f35b6100fc610151366004612510565b61036c565b6100fc6101643660046125c6565b6104da565b6100fc6101773660046122ff565b610512565b6100fc61018a3660046125e1565b61058a565b6101a261019d366004612674565b610656565b60405161013a919061278c565b6101d76101bd36600461279e565b60046020525f90815260409020546001600160a01b031681565b6040516001600160a01b03909116815260200161013a565b6100fc6101fd3660046122ff565b6106d2565b6001546101d7906001600160a01b031681565b6101a261074a565b6101d761022b36600461279e565b60056020525f90815260409020546001600160a01b031681565b6101d761025336600461279e565b60036020525f90815260409020546001600160a01b031681565b6101a261027b3660046127b7565b6107d5565b6001546001600160a01b03163314610296575f80fd5b60ff82165f8181526003602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527ff73c3c226af96b7f1ba666a21b3ceaf2be3ee6a365e3178fd9cd1eaae0075aa891015b60405180910390a15050565b5f805f8060025f8787604051610317929190612817565b604080519182900390912082526020808301939093529081015f90812061ffff8b16825290925290205463ffffffff80821695506401000000008204169350600160401b900460601b91505093509350939050565b83516020808601919091205f90815260028252604080822061ffff891683529092529081205463ffffffff16906103a385846107ea565b90506103b0818784610889565b6103b8612239565b845151156103d7576103ca85856107ea565b90506103d7818885610889565b5f6103e1836108cc565b602081015190915060fe16156103f5575f80fd5b61040081602761092a565b158015610425575061041381600261092a565b1580610425575061042581600661092a565b61042d575f80fd5b61043e89898561012001518461093a565b156104795787516020808a01919091205f90815260028252604080822061ffff8d1683529092522080546001600160e01b03191690556104cf565b6104988884610120015183856101200151610493876108cc565b610968565b156100e55787516020808a01919091205f90815260028252604080822061ffff8d1683529092522080546001600160e01b03191690555b505050505050505050565b6001546001600160a01b031633146104f0575f80fd5b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6001546001600160a01b03163314610528575f80fd5b60ff82165f8181526004602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527f2fcc274c3b72dd483ab201bfa87295e3817e8b9b10693219873b722ca1af00c791016102f4565b610592612239565b61059c83836107ea565b805190915061ffff16602f146105b0575f80fd5b60a081015184516020808701919091205f90815260028252604080822061ffff8a16835290925220546105e9919063ffffffff16610a7c565b6105f1575f80fd5b5f6105fb82610a94565b9050805151602082015110156100e55761061c818361012001518789610aab565b505082516020808501919091205f90815260028252604080822061ffff881683529092522080546001600160e01b03191690555b50505050565b60605f83838080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201829052509394505050505b85518110156106c7576106bd8682815181106106af576106af612826565b602002602001015183610c4a565b9150600101610691565b5090505b9392505050565b6001546001600160a01b031633146106e8575f80fd5b60ff82165f8181526005602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527fc7eec866a7a1386188cc3ca20ffea75b71bd3e90a60b6791b1d3f0971145118d91016102f4565b5f80546107569061283a565b80601f01602080910402602001604051908101604052809291908181526020018280546107829061283a565b80156107cd5780601f106107a4576101008083540402835291602001916107cd565b820191905f5260205f20905b8154815290600101906020018083116107b057829003601f168201915b505050505081565b60606107e18383610c4a565b90505b92915050565b6107f2612239565b82516107fd90610dc6565b905061080d8160e0015183610ebf565b610815575f80fd5b5f61082382835f0151610f25565b604083015190915060ff16610838825f610fcc565b14610841575f80fd5b610120820181905260808201516108589042610a7c565b610860575f80fd5b61086e428360a00151610a7c565b610876575f80fd5b61088281838686611026565b5092915050565b6108978360a0015182610a7c565b61089f575f80fd5b825161ffff166032146108b0575f80fd5b6108bf83610120015183611106565b6108c7575f80fd5b505050565b6040805160c0810182525f8082526020820181905291810182905260608082018190526080820183905260a08201529061090583610a94565b60a081015160c08201519192506106cb91610921908290612880565b83519190611172565b5f6107e18360a001515f846112b4565b5f6109468284866113c1565b1561095d57610955828661092a565b159050610960565b505f5b949350505050565b60208101515f9060fe161561097b575f80fd5b5f610985866113e6565b90505f610991856113e6565b90505f8061099f8a82611401565b6109aa906001612893565b60ff1690505b8951811015610a6b57836109dc896109d784858f516109cf9190612880565b8f9190611424565b6114a4565b03610a3f575f6109f7876109d785868f516109cf9190612880565b90508660800151841015610a23578381118015610a175750866080015181105b95505050505050610a73565b83811180610a1757508660800151811095505050505050610a73565b905080610a4c8a82611401565b610a57906001612893565b610a649060ff16826128ac565b90506109b0565b505f93505050505b95945050505050565b5f80610a8883856128bf565b60030b12159392505050565b610a9c61228e565b6107e48261010001515f61152d565b60a084015184515f90610abe9083611548565b90505f8660a001518760c00151610ad59190612880565b9050818111610ae2575f80fd5b5f610aed868861159f565b9050805f03610b1a57610b0c610b0384866128ac565b895190876112b4565b15610b15575f80fd5b610b5b565b87515f90610b29908686611424565b90505f8213610b36575f80fd5b5f610b41898361159f565b12156104cf575f610b52888361159f565b126104cf575f80fd5b5050505050505050565b60c08101516020820181905281515111610b7c5750565b5f610b8e825f01518360200151611548565b8260200151610b9d91906128ac565b8251909150610bac90826116ec565b61ffff166040830152610bc06002826128ac565b8251909150610bcf90826116ec565b61ffff166060830152610be36002826128ac565b8251909150610bf29082611712565b63ffffffff166080830152610c086004826128ac565b82519091505f90610c1990836116ec565b61ffff169050610c2a6002836128ac565b60a084018190529150610c3d81836128ac565b60c0909301929092525050565b6060610c54612239565b610c5e84846107ea565b61012081015180516020918201205f908152600282526040808220845161ffff16835290925220805491925090600160401b900460601b6001600160601b03191615610cc35760a08201518154610cbb919063ffffffff16610a7c565b610cc3575f80fd5b604080516060808201835260a085015163ffffffff9081168352608086015181166020808501918252610100880180518051908301206001600160601b0319168688019081526101208a0180518051908501205f908152600285528981208c5161ffff16825290945292889020965187549451915190961c600160401b0268010000000000000000600160e01b03199186166401000000000267ffffffffffffffff19909516969095169590951792909217939093169190911790925551905191517f55ced933cdd5a34dd03eb5d4bef19ec6ebb251dcd7a988eee0c1b9a13baaa88b92610db192916128e6565b60405180910390a15061010001519392505050565b610dce612239565b610dd8825f6116ec565b61ffff168152610de9826002611401565b60ff166020820152610dfc826003611401565b60ff166040820152610e0f826004611712565b63ffffffff9081166060830152610e2b90839060089061171216565b63ffffffff9081166080830152610e47908390600c9061171216565b63ffffffff90811660a0830152610e639083906010906116ec16565b61ffff1660c0820152610e7782601261173a565b60e0820181905251610eb490610e8e9060126128ac565b8260e001515160128551610ea29190612880565b610eac9190612880565b849190611424565b610100820152919050565b5f80610ed5610ece8483611548565b84906116ec565b83516020808601919091208651878301205f90815260028352604080822061ffff90951682529390925291902054600160401b900460601b6001600160601b031990811691161491505092915050565b60605f610f3184610a94565b90505b8051516020820151101561088257606081015161ffff16600114610f56575f80fd5b81515f03610f6e57610f6781611754565b9150610fa7565b60208101518151610f7e91611548565b825114610f89575f80fd5b805160208201518351610f9f9285925f92611775565b610fa7575f80fd5b8261ffff16816040015161ffff1614610fbe575f80fd5b610fc781610b65565b610f34565b5f805b83518310610fdf57610fdf61290a565b5f610fea8585611401565b60ff169050610ffa8160016128ac565b61100490856128ac565b9350805f0361101357506107e1565b61101e6001836128ac565b915050610fcf565b83518360e00151511115611038575f80fd5b61105c5f858560e0015151875161104f9190612880565b60e0870151929190611797565b611064575f80fd5b5f61106f828261152d565b9050602b61ffff16816040015161ffff160361109d576110908484836117cb565b611098575f80fd5b6110ff565b603061ffff16816040015161ffff16036110bc5761109084848361185f565b60405162461bcd60e51b8152602060048201526014602482015273139bc81d985b1a59081c1c9bdbd988199bdd5b9960621b604482015260640160405180910390fd5b5050505050565b5f806111128482611401565b61111d906001612893565b60ff1690505f5b835181101561095d5761113984828785611797565b15611149576001925050506107e4565b6111538482611401565b61115e906001612893565b61116b9060ff16826128ac565b9050611124565b6040805160c0810182525f8082526020820181905291810182905260608082018190526080820183905260a0820152906111ac83856128ac565b90506111c26111bb5f866128ac565b8690611401565b60ff1682526111d56111bb6001866128ac565b60ff1660208301526111f26111eb6002866128ac565b86906116ec565b61ffff1660408301525f61121161120a6004876128ac565b8790611401565b905061121e6005866128ac565b945061122e868660ff8416611424565b606084015261124060ff8216866128ac565b94505f61124d8787611401565b905060208160ff16111561125f575f80fd5b61126a6001876128ac565b955061127a878760ff8416611900565b608085015261128c60ff8216876128ac565b95506112a48661129c8186612880565b899190611424565b60a0850152509195945050505050565b5f60ff600883811c82169183916112cc918616612932565b90505f6112dd600780871690612952565b600160ff919091161b9050855b87518110156113b4575f6112fe8983611401565b90505f61131661130f8460016128ac565b8b90611401565b90508160ff168660ff161015611334575f96505050505050506106cb565b8160ff168660ff1603611393578460ff168160ff161161135c575f96505050505050506106cb565b8361137f61136d60ff8816866128ac565b6113789060026128ac565b8c90611401565b1660ff165f141596505050505050506106cb565b61139e816002612893565b6113ab9060ff16846128ac565b925050506112ea565b505f979650505050505050565b5f806113cd85846114a4565b90505f6113d9856113e6565b9190911495945050505050565b5f6107e460016113f68484611401565b84919060ff1661193d565b5f82828151811061141457611414612826565b016020015160f81c905092915050565b825160609061143383856128ac565b111561143d575f80fd5b5f8267ffffffffffffffff811115611457576114576123d9565b6040519080825280601f01601f191660200182016040528015611481576020820181803683370190505b50905060208082019086860101611499828287611b43565b509095945050505050565b815160ff165f9081526005602052604080822054606085015182860151925163347ced5960e11b81526001600160a01b03909216926368f9dab2926114ee9291879160040161296b565b602060405180830381865afa158015611509573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107e191906129a4565b61153561228e565b82815260c081018290526107e481610b65565b5f815b8351811061155b5761155b61290a565b5f6115668583611401565b60ff1690506115768160016128ac565b61158090836128ac565b9150805f0361158f5750611595565b5061154b565b6109608382612880565b5f6115aa8383611b98565b156115b657505f6107e4565b5f805f805f6115c5885f610fcc565b90505f6115d2885f610fcc565b90505b808211156115fe578593506115ea8987611bb3565b9550816115f6816129bb565b9250506115d5565b81811115611627578492506116138886611bb3565b94508061161f816129bb565b9150506115fe565b5f8211801561163f575061163d89878a88611797565b155b15611674578593506116518987611bb3565b95508492506116608886611bb3565b945061166d600183612880565b9150611627565b855f0361168a575f1996505050505050506107e4565b845f036116a057600196505050505050506107e4565b6116df6116ae8560016128ac565b6116b88b87611401565b60ff168a6116c78760016128ac565b6116d18d89611401565b8e949392919060ff16611bd6565b9998505050505050505050565b81515f906116fb8360026128ac565b1115611705575f80fd5b50016002015161ffff1690565b81515f906117218360046128ac565b111561172b575f80fd5b50016004015163ffffffff1690565b60605f6117478484611548565b9050610960848483611424565b602081015181516060916107e49161176c9082611548565b84519190611424565b5f611781848484611cc6565b61178c878785611cc6565b149695505050505050565b5f6117af83838486516117aa9190612880565b611cc6565b6117c186868789516117aa9190612880565b1495945050505050565b5f806117d685610a94565b90505b8051516020820151101561095d57604081015161ffff166030146117fb575f80fd5b5f61180582611ce8565b90505f61181e5f835184611d049092919063ffffffff16565b905061182c81838989611da0565b1561184f5761184561183d84611754565b868385611e9b565b93505050506106cb565b505061185a81610b65565b6117d9565b5f6118778460e0015161187184611754565b90611b98565b61187f575f80fd5b815151602083015110156118f75761189e8460e0015161187184611754565b6118a6575f80fd5b5f6118b083611ce8565b90505f6118c95f835184611d049092919063ffffffff16565b90506118d781838888611da0565b156118e7576001925050506106cb565b50506118f282610b65565b61187f565b505f9392505050565b5f602082111561190e575f80fd5b835161191a83856128ac565b1115611924575f80fd5b506020919092018101519190036101000a5f1901191690565b5f603482111561194b575f80fd5b5f80805b84811015611a29575f8761196383896128ac565b8151811061197357611973612826565b01602001516001600160f81b0319169050600360fc1b81108015906119a65750603d60f91b6001600160f81b0319821611155b6119ae575f80fd5b604051806080016040528060478152602001612b5c604791396119d6603060f884901c612880565b815181106119e6576119e6612826565b0160209081015160f81c93508311156119fd575f80fd5b611a08600187612880565b8203611a145750611a29565b5060059290921b60ff8216179160010161194f565b505f611a368560056129d0565b9050611a436008866129e7565b5f03611a5a578160ff16600584901b179250611b29565b611a656008866129e7565b600203611a935760028260ff16901c60ff16600384901b179250600281611a8c9190612880565b9050611b29565b611a9e6008866129e7565b600403611ac55760048260ff16901c60ff16600184901b179250600481611a8c9190612880565b611ad06008866129e7565b600503611af75760018260ff16901c60ff16600484901b179250600181611a8c9190612880565b611b026008866129e7565b6007036100e55760038260ff16901c60ff16600284901b179250600381611a8c9190612880565b611b3581610100612880565b9290921b9695505050505050565b60208110611b7b5781518352611b5a6020846128ac565b9250611b676020836128ac565b9150611b74602082612880565b9050611b43565b905182516020929092036101000a5f190180199091169116179052565b5f815183511480156107e157506107e1835f845f8751611775565b5f611bbe8383611401565b60ff16611bcc8360016128ac565b6107e191906128ac565b5f8480831015611be35750815b6020878901810190858701015f5b83811015611cab5782518251808214611c7b575f6020871115611c1657505f19611c52565b600184611c24896020612880565b611c2e91906128ac565b611c399060086129d0565b611c44906002612ada565b611c4e9190612880565b1990505b5f611c61838316858416612ae5565b90508015611c78579750611cbc9650505050505050565b50505b611c866020866128ac565b9450611c936020856128ac565b93505050602081611ca491906128ac565b9050611bf1565b50611cb68589612ae5565b93505050505b9695505050505050565b82515f90611cd483856128ac565b1115611cde575f80fd5b5091016020012090565b60a081015160c08201516060916107e49161176c908290612880565b604080516080810182525f8082526020820181905291810191909152606080820152611d3a611d335f856128ac565b85906116ec565b61ffff168152611d55611d4e6002856128ac565b8590611401565b60ff166020820152611d6b611d4e6003856128ac565b60ff166040820152611d94611d816004856128ac565b611d8c600485612880565b869190611424565b60608201529392505050565b5f846020015160ff16600314611db757505f610960565b826020015160ff16856040015160ff1614611dd357505f610960565b5f611ddd85611f96565b90508360c0015161ffff168161ffff1614611dfb575f915050610960565b8551610100165f03611e10575f915050610960565b60408087015160ff165f908152600360209081529082902054855191860151925163de8f50a160e01b81526001600160a01b039091169263de8f50a192611e5c928a9290600401612b04565b602060405180830381865afa158015611e77573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611cbc9190612b3c565b5f80611ea683611f96565b90505b84515160208601511015611f8b5760a085015160c08601515f91611edb91611ed2908290612880565b88519190611d04565b90508161ffff16815f015161ffff1614611ef55750611f7d565b846040015160ff16816020015160ff1614611f105750611f7d565b60408051808201909152606081525f6020820152611f3c85518951611f3591906128ac565b8290611ff7565b50611f47818961205a565b50611f52818661205a565b50611f698260400151825f0151846060015161207f565b15611f7a5760019350505050610960565b50505b611f8685610b65565b611ea9565b505f95945050505050565b5f805f5b8351811015611fe8576001811615611fbe57611fb68482611401565b60ff16611fd0565b6008611fca8583611401565b60ff16901b5b611fde9061ffff16836128ac565b9150600101611f9a565b506106cb601082901c826128ac565b60408051808201909152606081525f60208201526120166020836129e7565b1561203e576120266020836129e7565b612031906020612880565b61203b90836128ac565b91505b506020828101829052604080518085525f815290920101905290565b60408051808201909152606081525f60208201526107e183845f015151848551612126565b60ff83165f908152600460205260408120546001600160a01b03166120a557505f6106cb565b60ff84165f90815260046020819052604091829020549151637bf41d7760e11b81526001600160a01b039092169163f7e83aee916120e79187918791016128e6565b602060405180830381865afa158015612102573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109609190612b3c565b60408051808201909152606081525f60208201528251821115612147575f80fd5b602085015161215683866128ac565b111561218957612189856121798760200151878661217491906128ac565b61220c565b6121849060026129d0565b612222565b5f808651805187602083010193508088870111156121a75787860182525b505050602084015b602084106121e757805182526121c66020836128ac565b91506121d36020826128ac565b90506121e0602085612880565b93506121af565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b5f8183111561221c5750816107e4565b50919050565b815161222e8383611ff7565b50610650838261205a565b60408051610140810182525f8082526020820181905291810182905260608082018390526080820183905260a0820183905260c082019290925260e08101829052610100810182905261012081019190915290565b6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b803560ff811681146122e3575f80fd5b919050565b6001600160a01b03811681146122fc575f80fd5b50565b5f8060408385031215612310575f80fd5b612319836122d3565b91506020830135612329816122e8565b809150509250929050565b803561ffff811681146122e3575f80fd5b5f8083601f840112612355575f80fd5b50813567ffffffffffffffff81111561236c575f80fd5b602083019150836020828501011115612383575f80fd5b9250929050565b5f805f6040848603121561239c575f80fd5b6123a584612334565b9250602084013567ffffffffffffffff8111156123c0575f80fd5b6123cc86828701612345565b9497909650939450505050565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff81118282101715612416576124166123d9565b604052919050565b5f82601f83011261242d575f80fd5b813567ffffffffffffffff811115612447576124476123d9565b61245a601f8201601f19166020016123ed565b81815284602083860101111561246e575f80fd5b816020850160208301375f918101602001919091529392505050565b5f6040828403121561249a575f80fd5b6040516040810167ffffffffffffffff82821081831117156124be576124be6123d9565b8160405282935084359150808211156124d5575f80fd5b6124e18683870161241e565b835260208501359150808211156124f6575f80fd5b506125038582860161241e565b6020830152505092915050565b5f805f805f60a08688031215612524575f80fd5b61252d86612334565b9450602086013567ffffffffffffffff80821115612549575f80fd5b61255589838a0161241e565b9550604088013591508082111561256a575f80fd5b61257689838a0161248a565b9450606088013591508082111561258b575f80fd5b61259789838a0161248a565b935060808801359150808211156125ac575f80fd5b506125b98882890161241e565b9150509295509295909350565b5f602082840312156125d6575f80fd5b81356107e1816122e8565b5f805f80608085870312156125f4575f80fd5b6125fd85612334565b9350602085013567ffffffffffffffff80821115612619575f80fd5b6126258883890161241e565b9450604087013591508082111561263a575f80fd5b6126468883890161248a565b9350606087013591508082111561265b575f80fd5b506126688782880161241e565b91505092959194509250565b5f805f60408486031215612686575f80fd5b833567ffffffffffffffff8082111561269d575f80fd5b818601915086601f8301126126b0575f80fd5b81356020828211156126c4576126c46123d9565b8160051b6126d38282016123ed565b928352848101820192828101908b8511156126ec575f80fd5b83870192505b8483101561272657823586811115612708575f80fd5b6127168d86838b010161248a565b83525091830191908301906126f2565b985050508701359250508082111561273c575f80fd5b506123cc86828701612345565b5f81518084525f5b8181101561276d57602081850181015186830182015201612751565b505f602082860101526020601f19601f83011685010191505092915050565b602081525f6107e16020830184612749565b5f602082840312156127ae575f80fd5b6107e1826122d3565b5f80604083850312156127c8575f80fd5b823567ffffffffffffffff808211156127df575f80fd5b6127eb8683870161248a565b93506020850135915080821115612800575f80fd5b5061280d8582860161241e565b9150509250929050565b818382375f9101908152919050565b634e487b7160e01b5f52603260045260245ffd5b600181811c9082168061284e57607f821691505b60208210810361221c57634e487b7160e01b5f52602260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b818103818111156107e4576107e461286c565b60ff81811683821601908111156107e4576107e461286c565b808201808211156107e4576107e461286c565b600382810b9082900b03637fffffff198112637fffffff821317156107e4576107e461286c565b604081525f6128f86040830185612749565b8281036020840152610a738185612749565b634e487b7160e01b5f52600160045260245ffd5b634e487b7160e01b5f52601260045260245ffd5b5f61ffff808416806129465761294661291e565b92169190910492915050565b60ff82811682821603908111156107e4576107e461286c565b606081525f61297d6060830186612749565b828103602084015261298f8186612749565b91505061ffff83166040830152949350505050565b5f602082840312156129b4575f80fd5b5051919050565b5f816129c9576129c961286c565b505f190190565b80820281158282048414176107e4576107e461286c565b5f826129f5576129f561291e565b500690565b600181815b80851115612a3457815f1904821115612a1a57612a1a61286c565b80851615612a2757918102915b93841c93908002906129ff565b509250929050565b5f82612a4a575060016107e4565b81612a5657505f6107e4565b8160018114612a6c5760028114612a7657612a92565b60019150506107e4565b60ff841115612a8757612a8761286c565b50506001821b6107e4565b5060208310610133831016604e8410600b8410161715612ab5575081810a6107e4565b612abf83836129fa565b805f1904821115612ad257612ad261286c565b029392505050565b5f6107e18383612a3c565b8181035f8312801583831316838312821617156108825761088261286c565b606081525f612b166060830186612749565b8281036020840152612b288186612749565b90508281036040840152611cbc8185612749565b5f60208284031215612b4c575f80fd5b815180151581146107e1575f80fdfe00010203040506070809ffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fffffffffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fa164736f6c6343000818000a","storage":{"0x0":"0xbd","0x1":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1471eb6eb2c5e789fc3de43f8ce62938c7d1836ec861730447e2ada8fd81017b":"0x17cda4e23f7237277952e075b1c48467aabfacc0","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563":"0x2b000100000e1000244a5c080249aac11d7b6f6446702e54a1607371607a","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e564":"0x1a41855200fd2ce1cdde32f24e8fb500002b000100000e1000244f660802e06d","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e565":"0x44b80b8f1d39a95c0b0d7c65d08458e880409bbc683457104237c7f8ec8d0000","0x3617319a054d772f909f7c479a2cebe5066e836a939412e32403c99029b92eff":"0x5155f5627bdf9795b3dbb8887001ada1eeba93f2","0x85aaa47b6dc46495bb8824fad4583769726fea36efd831a35556690b830a8fbe":"0x6e2822b8856749ed179c77140dbc5f5a27410a4","0x91da3fd0782e51c6b3986e9e672fd566868e71f3dbc2d6c2cd6fbb3e361af2a7":"0x49da8861c65460639925febe1fb4b5b59b443082","0x95c6356c1b7a542b884d2484ef785c9c7224e77e1016c20007bddc15c23b452f":"0x3f9151d3fd1a82dcc5091909589900fd60ee767ee090bba000000000","0xabd6e7cb50984ff9c2f3e18a2660c3353dadf4e3291deeb275dae2cd1e44fe05":"0x458f653495fb8d9bd0e7df468c2bf76d26c7bd9"}},"0x9dc64b2558b458a15c7f01c192d874ef460f0a29":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x9df67c91f1bfcb4d966cf764e9218685e7c59e8a":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101d1575f3560e01c80638b95dd71116100fe578063c86902331161009e578063e32954eb1161006e578063e32954eb146104f2578063e59d895d14610505578063e985e9c514610518578063f1cb7e0614610553575f80fd5b8063c869023314610435578063ce3decdc1461048c578063d5fa2b001461049f578063d700ff33146104b2575f80fd5b8063a8fa5682116100d9578063a8fa5682146103ac578063a9784b3e146103bf578063ac9650d814610402578063bc1c58d114610422575f80fd5b80638b95dd7114610373578063a22cb46514610386578063a4b91a0114610399575f80fd5b80633603d758116101745780635c98042b116101445780635c98042b14610327578063623195b01461033a578063691f34311461034d5780637737221314610360575f80fd5b80633603d758146102975780633b3b57de146102aa5780634cbf6ba4146102bd57806359d1d43c14610307575f80fd5b8063124a319c116101af578063124a319c146102255780632203ab561461025057806329cd62ea14610271578063304e6ade14610284575f80fd5b806301ffc9a7146101d55780630af179d7146101fd57806310f13a8c14610212575b5f80fd5b6101e86101e3366004612267565b610566565b60405190151581526020015b60405180910390f35b61021061020b3660046122bd565b610576565b005b610210610220366004612304565b610778565b610238610233366004612377565b610842565b6040516001600160a01b0390911681526020016101f4565b61026361025e3660046123a1565b610a87565b6040516101f492919061240e565b61021061027f366004612426565b610bb5565b6102106102923660046122bd565b610c4d565b6102106102a536600461244f565b610cc6565b6102386102b836600461244f565b610d64565b6101e86102cb3660046123a1565b5f82815260208181526040808320546001600160401b031683526006825280832094835293815283822092825291909152205461ffff16151590565b61031a6103153660046122bd565b610d93565b6040516101f49190612466565b61031a61033536600461244f565b610e6f565b610210610348366004612478565b610f2a565b61031a61035b36600461244f565b610fc2565b61021061036e3660046122bd565b610ffa565b6102106103813660046124da565b611073565b6102106103943660046125b9565b611150565b6102106103a73660046125e3565b61122a565b61031a6103ba36600461261e565b6112f6565b6101e86103cd36600461265a565b6001600160a01b039283165f908152600c60209081526040808320948352938152838220929094168152925290205460ff1690565b6104156104103660046126ce565b611342565b6040516101f4919061270c565b61031a61043036600461244f565b61134f565b61047761044336600461244f565b5f81815260208181526040808320546001600160401b03168352600982528083209383529290522080546001909101549091565b604080519283526020830191909152016101f4565b61021061049a3660046122bd565b611387565b6102106104ad36600461276e565b6114c3565b6104da6104c036600461244f565b5f602081905290815260409020546001600160401b031681565b6040516001600160401b0390911681526020016101f4565b61041561050036600461279c565b6114e9565b6102106105133660046127d6565b6114fe565b6101e8610526366004612808565b6001600160a01b039182165f908152600b6020908152604080832093909416825291909152205460ff1690565b61031a6105613660046123a1565b6115a2565b5f61057082611666565b92915050565b826105808161168a565b610588575f80fd5b5f84815260208181526040808320548151601f87018490048402810184019092528582528392606092839285926001600160401b039091169183916105eb9183918d908d90819084018382808284375f9201919091525092939250506118b79050565b90505b80515160208201511015610712578661ffff165f03610652578060400151965061061781611912565b94508460405160200161062a9190612834565b60405160208183030381529060405280519060200120925061064b81611933565b9350610704565b5f61065c82611912565b9050816040015161ffff168861ffff16141580610680575061067e868261194f565b155b15610702576106db8c878a8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250505060208801518d91506106d2908290612863565b8b51158a61196a565b8160400151975081602001519650809550858051906020012093506106ff82611933565b94505b505b61070d81611bc9565b6105ee565b5083511561076c5761076c8a85888c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c925061076391508290508f612863565b8951158861196a565b50505050505050505050565b846107828161168a565b61078a575f80fd5b5f86815260208181526040808320546001600160401b03168352600a8252808320898452909152908190209051849184916107c89089908990612876565b908152602001604051809103902091826107e3929190612901565b5084846040516107f4929190612876565b6040518091039020867f448bc014f1536726cf8d54ff3d6481ed3cbc683c2591ca204274009afa09b1a18787878760405161083294939291906129e2565b60405180910390a3505050505050565b5f82815260208181526040808320546001600160401b031683526007825280832085845282528083206001600160e01b0319851684529091528120546001600160a01b03168015610894579050610570565b5f61089e85610d64565b90506001600160a01b0381166108b8575f92505050610570565b6040516301ffc9a760e01b60248201525f9081906001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b1790525161090f9190612834565b5f60405180830381855afa9150503d805f8114610947576040519150601f19603f3d011682016040523d82523d5f602084013e61094c565b606091505b509150915081158061095f575060208151105b80610989575080601f8151811061097857610978612a13565b01602001516001600160f81b031916155b1561099a575f945050505050610570565b6040516001600160e01b0319871660248201526001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b179052516109f09190612834565b5f60405180830381855afa9150503d805f8114610a28576040519150601f19603f3d011682016040523d82523d5f602084013e610a2d565b606091505b509092509050811580610a41575060208151105b80610a6b575080601f81518110610a5a57610a5a612a13565b01602001516001600160f81b031916155b15610a7c575f945050505050610570565b509095945050505050565b5f82815260208181526040808320546001600160401b03168352600180835281842086855290925282206060915b848111610b975780851615801590610ae457505f8181526020839052604081208054610ae090612885565b9050115b15610b8f5780825f8381526020019081526020015f20808054610b0690612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610b3290612885565b8015610b7d5780601f10610b5457610100808354040283529160200191610b7d565b820191905f5260205f20905b815481529060010190602001808311610b6057829003601f168201915b50505050509050935093505050610bae565b60011b610ab5565b505f60405180602001604052805f81525092509250505b9250929050565b82610bbf8161168a565b610bc7575f80fd5b60408051808201825284815260208082018581525f888152808352848120546001600160401b031681526009835284812089825283528490209251835551600190920191909155815185815290810184905285917f1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e4691015b60405180910390a250505050565b82610c578161168a565b610c5f575f80fd5b5f84815260208181526040808320546001600160401b03168352600382528083208784529091529020610c93838583612901565b50837fe379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d75788484604051610c3f929190612a27565b80610cd08161168a565b610cd8575f80fd5b5f82815260208190526040812080546001600160401b031691610cfa83612a3a565b82546101009290920a6001600160401b038181021990931691831602179091555f84815260208181526040918290205491519190921681528492507fc6621ccb8f3f5a04bb6502154b2caf6adf5983fe76dfef1cfc9c42e3579db444910160405180910390a25050565b5f80610d7183603c6115a2565b905080515f03610d8357505f92915050565b610d8c81611cae565b9392505050565b5f83815260208181526040808320546001600160401b03168352600a825280832086845290915290819020905160609190610dd19085908590612876565b90815260200160405180910390208054610dea90612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610e1690612885565b8015610e615780601f10610e3857610100808354040283529160200191610e61565b820191905f5260205f20905b815481529060010190602001808311610e4457829003601f168201915b505050505090509392505050565b5f81815260208181526040808320546001600160401b03168352600482528083208484529091529020805460609190610ea790612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610ed390612885565b8015610f1e5780601f10610ef557610100808354040283529160200191610f1e565b820191905f5260205f20905b815481529060010190602001808311610f0157829003601f168201915b50505050509050919050565b83610f348161168a565b610f3c575f80fd5b83610f48600182612863565b1615610f52575f80fd5b5f85815260208181526040808320546001600160401b031683526001825280832088845282528083208784529091529020610f8e838583612901565b50604051849086907faa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe3905f90a35050505050565b5f81815260208181526040808320546001600160401b03168352600882528083208484529091529020805460609190610ea790612885565b826110048161168a565b61100c575f80fd5b5f84815260208181526040808320546001600160401b03168352600882528083208784529091529020611040838583612901565b50837fb7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f78484604051610c3f929190612a27565b8261107d8161168a565b611085575f80fd5b837f65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af75284846040516110b792919061240e565b60405180910390a2603c830361110e57837f52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd26110f284611cae565b6040516001600160a01b03909116815260200160405180910390a25b5f84815260208181526040808320546001600160401b0316835260028252808320878452825280832086845290915290206111498382612a5f565b5050505050565b6001600160a01b03821633036111bf5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084015b60405180910390fd5b335f818152600b602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6001600160a01b03821633036112825760405162461bcd60e51b815260206004820181905260248201527f53657474696e672064656c65676174652073746174757320666f722073656c6660448201526064016111b6565b335f818152600c6020908152604080832087845282528083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519384529286917ff0ddb3b04746704017f9aa8bd728fcc2c1d11675041205350018915f5e4750a0910160405180910390a4505050565b5f83815260208181526040808320546001600160401b03168352600582528083208684528252808320858452825280832061ffff851684529091529020805460609190610dea90612885565b6060610d8c5f8484611ccb565b5f81815260208181526040808320546001600160401b03168352600382528083208484529091529020805460609190610ea790612885565b826113918161168a565b611399575f80fd5b5f84815260208181526040808320546001600160401b031680845260048352818420888552909252822080549192916113d190612885565b80601f01602080910402602001604051908101604052809291908181526020018280546113fd90612885565b80156114485780601f1061141f57610100808354040283529160200191611448565b820191905f5260205f20905b81548152906001019060200180831161142b57829003601f168201915b505050506001600160401b0384165f9081526004602090815260408083208b8452909152902091925061147e9050858783612901565b50857f8f15ed4b723ef428f250961da8315675b507046737e19319fc1a4d81bfe87f858287876040516114b393929190612b1e565b60405180910390a2505050505050565b816114cd8161168a565b6114d5575f80fd5b6114e483603c61038185611e88565b505050565b60606114f6848484611ccb565b949350505050565b826115088161168a565b611510575f80fd5b5f84815260208181526040808320546001600160401b031683526007825280832087845282528083206001600160e01b031987168085529083529281902080546001600160a01b0319166001600160a01b038716908117909155905190815286917f7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa910160405180910390a350505050565b5f82815260208181526040808320546001600160401b0316835260028252808320858452825280832084845290915290208054606091906115e290612885565b80601f016020809104026020016040519081016040528092919081815260200182805461160e90612885565b80156116595780601f1061163057610100808354040283529160200191611659565b820191905f5260205f20905b81548152906001019060200180831161163c57829003601f168201915b5050505050905092915050565b5f6001600160e01b03198216631674750f60e21b1480610570575061057082611eb8565b5f336001600160a01b037f0000000000000000000000004fbf7b2f171336958be5d15ff762a5cff53635681614806116ea5750336001600160a01b037f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5616145b156116f757506001919050565b6040516302571be360e01b8152600481018390525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa15801561175c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117809190612b4d565b90507f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b0316816001600160a01b031603611845576040516331a9108f60e11b8152600481018490527f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b031690636352211e90602401602060405180830381865afa15801561181e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118429190612b4d565b90505b6001600160a01b03811633148061187e57506001600160a01b0381165f908152600b6020908152604080832033845290915290205460ff165b80610d8c57506001600160a01b0381165f908152600c60209081526040808320868452825280832033845290915290205460ff16610d8c565b6118ff6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261057081611bc9565b602081015181516060916105709161192a9082611edc565b84519190611f33565b60a081015160c08201516060916105709161192a908290612863565b5f81518351148015610d8c5750610d8c835f845f8751611fa7565b865160208801205f61197d878787611f33565b90508315611aa1576001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c168452909152902080546119c690612885565b159050611a23576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611a0783612b68565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091528120611a62916121f9565b897f03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a12078a8a604051611a94929190612b84565b60405180910390a261076c565b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c16845290915290208054611ae290612885565b90505f03611b40576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611b2483612ba9565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091529020611b808282612a5f565b50897f52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b8a8a84604051611bb593929190612bbf565b60405180910390a250505050505050505050565b60c08101516020820181905281515111611be05750565b5f611bf2825f01518360200151611edc565b8260200151611c019190612bed565b8251909150611c109082611fc9565b61ffff166040830152611c24600282612bed565b8251909150611c339082611fc9565b61ffff166060830152611c47600282612bed565b8251909150611c569082611fef565b63ffffffff166080830152611c6c600482612bed565b82519091505f90611c7d9083611fc9565b61ffff169050611c8e600283612bed565b60a084018190529150611ca18183612bed565b60c0909301929092525050565b5f8151601414611cbc575f80fd5b5060200151600160601b900490565b6060816001600160401b03811115611ce557611ce56124c6565b604051908082528060200260200182016040528015611d1857816020015b6060815260200190600190039081611d035790505b5090505f5b82811015611e80578415611dd8575f848483818110611d3e57611d3e612a13565b9050602002810190611d509190612c00565b611d5f91602491600491612c42565b611d6891612c69565b9050858114611dd65760405162461bcd60e51b815260206004820152603460248201527f6d756c746963616c6c3a20416c6c207265636f726473206d7573742068617665604482015273040c240dac2e8c6d0d2dcce40dcc2dacad0c2e6d60631b60648201526084016111b6565b505b5f8030868685818110611ded57611ded612a13565b9050602002810190611dff9190612c00565b604051611e0d929190612876565b5f60405180830381855af49150503d805f8114611e45576040519150601f19603f3d011682016040523d82523d5f602084013e611e4a565b606091505b509150915081611e58575f80fd5b80848481518110611e6b57611e6b612a13565b60209081029190910101525050600101611d1d565b509392505050565b604080516014808252818301909252606091602082018180368337505050600160601b9290920260208301525090565b5f6001600160e01b0319821663c869023360e01b1480610570575061057082612017565b5f815b83518110611eef57611eef612c86565b5f611efa858361203b565b60ff169050611f0a816001612bed565b611f149083612bed565b9150805f03611f235750611f29565b50611edf565b6114f68382612863565b8251606090611f428385612bed565b1115611f4c575f80fd5b5f826001600160401b03811115611f6557611f656124c6565b6040519080825280601f01601f191660200182016040528015611f8f576020820181803683370190505b50905060208082019086860101610a7c82828761205e565b5f611fb38484846120b3565b611fbe8787856120b3565b149695505050505050565b81515f90611fd8836002612bed565b1115611fe2575f80fd5b50016002015161ffff1690565b81515f90611ffe836004612bed565b1115612008575f80fd5b50016004015163ffffffff1690565b5f6001600160e01b0319821663691f343160e01b14806105705750610570826120d5565b5f82828151811061204e5761204e612a13565b016020015160f81c905092915050565b602081106120965781518352612075602084612bed565b9250612082602083612bed565b915061208f602082612863565b905061205e565b905182516020929092036101000a5f190180199091169116179052565b82515f906120c18385612bed565b11156120cb575f80fd5b5091016020012090565b5f6001600160e01b031982166304928c6760e21b14806105705750610570825f6001600160e01b0319821663547d2b4160e11b148061212457506001600160e01b03198216635c98042b60e01b145b806105705750610570825f6001600160e01b0319821663bc1c58d160e01b14806105705750610570825f6001600160e01b03198216631d9dabef60e11b148061217d57506001600160e01b031982166378e5bf0360e11b145b806105705750610570825f6001600160e01b03198216631101d5ab60e11b14806105705750610570825f6001600160e01b0319821663d700ff3360e01b14806105705750610570825f6001600160e01b03198216634fbf043360e01b148061057057506301ffc9a760e01b6001600160e01b0319831614610570565b50805461220590612885565b5f825580601f10612214575050565b601f0160209004905f5260205f20908101906122309190612233565b50565b5b80821115612247575f8155600101612234565b5090565b80356001600160e01b031981168114612262575f80fd5b919050565b5f60208284031215612277575f80fd5b610d8c8261224b565b5f8083601f840112612290575f80fd5b5081356001600160401b038111156122a6575f80fd5b602083019150836020828501011115610bae575f80fd5b5f805f604084860312156122cf575f80fd5b8335925060208401356001600160401b038111156122eb575f80fd5b6122f786828701612280565b9497909650939450505050565b5f805f805f60608688031215612318575f80fd5b8535945060208601356001600160401b0380821115612335575f80fd5b61234189838a01612280565b90965094506040880135915080821115612359575f80fd5b5061236688828901612280565b969995985093965092949392505050565b5f8060408385031215612388575f80fd5b823591506123986020840161224b565b90509250929050565b5f80604083850312156123b2575f80fd5b50508035926020909101359150565b5f5b838110156123db5781810151838201526020016123c3565b50505f910152565b5f81518084526123fa8160208601602086016123c1565b601f01601f19169290920160200192915050565b828152604060208201525f6114f660408301846123e3565b5f805f60608486031215612438575f80fd5b505081359360208301359350604090920135919050565b5f6020828403121561245f575f80fd5b5035919050565b602081525f610d8c60208301846123e3565b5f805f806060858703121561248b575f80fd5b843593506020850135925060408501356001600160401b038111156124ae575f80fd5b6124ba87828801612280565b95989497509550505050565b634e487b7160e01b5f52604160045260245ffd5b5f805f606084860312156124ec575f80fd5b833592506020840135915060408401356001600160401b0380821115612510575f80fd5b818601915086601f830112612523575f80fd5b813581811115612535576125356124c6565b604051601f8201601f19908116603f0116810190838211818310171561255d5761255d6124c6565b81604052828152896020848701011115612575575f80fd5b826020860160208301375f6020848301015280955050505050509250925092565b6001600160a01b0381168114612230575f80fd5b80358015158114612262575f80fd5b5f80604083850312156125ca575f80fd5b82356125d581612596565b9150612398602084016125aa565b5f805f606084860312156125f5575f80fd5b83359250602084013561260781612596565b9150612615604085016125aa565b90509250925092565b5f805f60608486031215612630575f80fd5b8335925060208401359150604084013561ffff8116811461264f575f80fd5b809150509250925092565b5f805f6060848603121561266c575f80fd5b833561267781612596565b925060208401359150604084013561264f81612596565b5f8083601f84011261269e575f80fd5b5081356001600160401b038111156126b4575f80fd5b6020830191508360208260051b8501011115610bae575f80fd5b5f80602083850312156126df575f80fd5b82356001600160401b038111156126f4575f80fd5b6127008582860161268e565b90969095509350505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b8281101561276157603f1988860301845261274f8583516123e3565b94509285019290850190600101612733565b5092979650505050505050565b5f806040838503121561277f575f80fd5b82359150602083013561279181612596565b809150509250929050565b5f805f604084860312156127ae575f80fd5b8335925060208401356001600160401b038111156127ca575f80fd5b6122f78682870161268e565b5f805f606084860312156127e8575f80fd5b833592506127f86020850161224b565b9150604084013561264f81612596565b5f8060408385031215612819575f80fd5b823561282481612596565b9150602083013561279181612596565b5f82516128458184602087016123c1565b9190910192915050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156105705761057061284f565b818382375f9101908152919050565b600181811c9082168061289957607f821691505b6020821081036128b757634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156114e457805f5260205f20601f840160051c810160208510156128e25750805b601f840160051c820191505b81811015611149575f81556001016128ee565b6001600160401b03831115612918576129186124c6565b61292c836129268354612885565b836128bd565b5f601f84116001811461295d575f85156129465750838201355b5f19600387901b1c1916600186901b178355611149565b5f83815260208120601f198716915b8281101561298c578685013582556020948501946001909201910161296c565b50868210156129a8575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b604081525f6129f56040830186886129ba565b8281036020840152612a088185876129ba565b979650505050505050565b634e487b7160e01b5f52603260045260245ffd5b602081525f6114f66020830184866129ba565b5f6001600160401b03808316818103612a5557612a5561284f565b6001019392505050565b81516001600160401b03811115612a7857612a786124c6565b612a8c81612a868454612885565b846128bd565b602080601f831160018114612abf575f8415612aa85750858301515b5f19600386901b1c1916600185901b178555612b16565b5f85815260208120601f198616915b82811015612aed57888601518255948401946001909101908401612ace565b5085821015612b0a57878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b604081525f612b3060408301866123e3565b8281036020840152612b438185876129ba565b9695505050505050565b5f60208284031215612b5d575f80fd5b8151610d8c81612596565b5f61ffff821680612b7b57612b7b61284f565b5f190192915050565b604081525f612b9660408301856123e3565b905061ffff831660208301529392505050565b5f61ffff808316818103612a5557612a5561284f565b606081525f612bd160608301866123e3565b61ffff851660208401528281036040840152612b4381856123e3565b808201808211156105705761057061284f565b5f808335601e19843603018112612c15575f80fd5b8301803591506001600160401b03821115612c2e575f80fd5b602001915036819003821315610bae575f80fd5b5f8085851115612c50575f80fd5b83861115612c5c575f80fd5b5050820193919092039150565b80356020831015610570575f19602084900360031b1b1692915050565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{}},"0xa06a63155145b7f2fda96d9658ec7fef3b9dcf76":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b506004361061004a575f3560e01c80634ce34aa21461004e578063899e104c1461007e5780638df25d9214610091578063c4e8fcb5146100a4575b5f80fd5b61006161005c366004610834565b6100b9565b6040516001600160e01b0319909116815260200160405180910390f35b61006161008c3660046108b4565b610121565b61006161009f36600461091b565b61018a565b6100b76100b2366004610969565b6101c7565b005b5f335f525f60205260405f20546100dd576349ed56f960e11b5f523360045260245ffd5b815f5b81811015610110576101088585838181106100fd576100fd6109a2565b905060c002016102c4565b6001016100e0565b50632671a55160e11b949350505050565b5f335f525f60205260405f2054610145576349ed56f960e11b5f523360045260245ffd5b835f5b8181101561016d576101658787838181106100fd576100fd6109a2565b600101610148565b506101788484610436565b50632267841360e21b95945050505050565b5f335f525f60205260405f20546101ae576349ed56f960e11b5f523360045260245ffd5b6101b88383610436565b506346f92ec960e11b92915050565b336001600160a01b037f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c1614610210576040516336abb4df60e11b815260040160405180910390fd5b6001600160a01b0382165f9081526020819052604090205481151560ff909116151503610268576040516349271a0f60e11b81526001600160a01b038316600482015281151560248201526044015b60405180910390fd5b6001600160a01b0382165f8181526020818152604091829020805460ff191685151590811790915591519182527fae63067d43ac07563b7eb8db6595635fc77f1578a2a5ea06ba91b63e2afa37e2910160405180910390a25050565b60016102d360208301836109ca565b60038111156102e4576102e46109b6565b03610329576103266102fc60408301602084016109ef565b61030c60608401604085016109ef565b61031c60808501606086016109ef565b8460a0013561056c565b50565b600261033860208301836109ca565b6003811115610349576103496109b6565b036103b6578060a00135600114610379576040516369f9582760e01b815260a0820135600482015260240161025f565b61032661038c60408301602084016109ef565b61039c60608401604085016109ef565b6103ac60808501606086016109ef565b8460800135610660565b60036103c560208301836109ca565b60038111156103d6576103d66109b6565b0361041d576103266103ee60408301602084016109ef565b6103fe60608401604085016109ef565b61040e60808501606086016109ef565b84608001358560a00135610715565b604051631e4cbc7f60e21b815260040160405180910390fd5b808280631759616b60e11b6020525f5b8381101561055f57823582018035803b61046b57635f15d6725f52806020526024601cfd5b60a08201358060051b60c0018060808501351460a0606086013514168185013583141615905080156104a657633ae8821360e21b5f5260045ffd5b506020860195506080602084016024378060061b60400190508060a00160a4525f8160c401528060c4018160a0850160c4375f808260205f875af1935083610550573d1561053057601f3d0160051c91508060051c826003028184111561051a578184036003028280028580020360091c01015b5a60208201101561052d573d5f803e3d5ffd5b50505b6357e222f160e11b5f528260045260c0606452608451602001608452805ffd5b50505050600181019050610446565b5050505060806040525050565b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166106515780873b15151661065157806106405781610623573d1561060257601f3d0160051c8360051c81600302818311156105eb578183036003028280028480020360091c01015b5a6020820110156105fe573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b833b61067757635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af180610707573d156106e557601f3d0160051c8260051c81600302818311156106ce578183036003028280028480020360091c01015b5a6020820110156106e1573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b61072c57635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af1806107d1573d156107b057601f3d0160051c8560051c8160030281831115610799578183036003028280028480020360091c01015b5a6020820110156107ac573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b5f8083601f8401126107fc575f80fd5b50813567ffffffffffffffff811115610813575f80fd5b60208301915083602060c08302850101111561082d575f80fd5b9250929050565b5f8060208385031215610845575f80fd5b823567ffffffffffffffff81111561085b575f80fd5b610867858286016107ec565b90969095509350505050565b5f8083601f840112610883575f80fd5b50813567ffffffffffffffff81111561089a575f80fd5b6020830191508360208260051b850101111561082d575f80fd5b5f805f80604085870312156108c7575f80fd5b843567ffffffffffffffff808211156108de575f80fd5b6108ea888389016107ec565b90965094506020870135915080821115610902575f80fd5b5061090f87828801610873565b95989497509550505050565b5f806020838503121561092c575f80fd5b823567ffffffffffffffff811115610942575f80fd5b61086785828601610873565b80356001600160a01b0381168114610964575f80fd5b919050565b5f806040838503121561097a575f80fd5b6109838361094e565b915060208301358015158114610997575f80fd5b809150509250929050565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52602160045260245ffd5b5f602082840312156109da575f80fd5b8135600481106109e8575f80fd5b9392505050565b5f602082840312156109ff575f80fd5b6109e88261094e56fea164736f6c6343000818000a","storage":{}},"0xaa33d7188eb4b4a51c37199eaad2f73cf2bf0204":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0xac52f68f31577e44ae0c7e95a42dc9eb574b9383":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a424740014610090575b600080fd5b610059610054366004610cac565b6100b3565b6040516100669190610d9b565b60405180910390f35b61008261007d366004610dae565b610162565b604051908152602001610066565b6100a361009e366004610cac565b6101d6565b6040519015158152602001610066565b606060005a90506101576100ca6020870187610ddc565b6001546001600160a01b03166040880135846100e960608b018b610df9565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061023592505050565b9150505b9392505050565b600154604051636ccbae5f60e01b8152600481018390526000916001600160a01b031690636ccbae5f90602401602060405180830381865afa1580156101ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d09190610e40565b92915050565b600061022d6101e485610ef1565b600154604080516020601f88018190048102820181019092528681526001600160a01b039092169190879087908190840183828082843760009201919091525061030d92505050565b949350505050565b6060600080876001600160a01b0316866102518b8a8989610355565b60405161025e9190610f9b565b60006040518083038160008787f1925050503d806000811461029c576040519150601f19603f3d011682016040523d82523d6000602084013e6102a1565b606091505b5090925090506102b2603f87610fb7565b5a116102c0576102c0610fd9565b61030082826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061040a565b9998505050505050505050565b600061031a848484610443565b801561022d575060608401516020908101516001600160e01b031990811660009081529182905260409091205460e01b16151561022d565b50565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036103e75760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526103ff82828661058c565b979650505050505050565b6060831561041957508161015b565b8251156104295782518084602001fd5b8160405162461bcd60e51b81526004016103de9190610d9b565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561048a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104ae9190610e40565b9050600061055c8660600151805190602001208688602001516040516020016104fc9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561058257508551610582906001600160a01b03168286610a38565b9695505050505050565b60606001600160e01b03198416631de5861160e31b0361061a576000806000858060200190518101906105bf9190610fef565b92509250925086838383886040516024016105dd9493929190611032565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152935061015b92505050565b6001600160e01b03198416636debcb8d60e01b0361064b576000806000858060200190518101906105bf9190610fef565b6001600160e01b0319841663280d9b0560e01b036106dd576000806000808680602001905181019061067d91906110aa565b935093509350935087848484848a60405160240161069f959493929190611118565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152945061015b9350505050565b6001600160e01b031984166361603dd960e01b0361075c5760008380602001905181019061070b9190610e40565b905084818460405160240161072192919061115d565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152915061015b9050565b6001600160e01b0319841663b34f33c560e01b036107ab5760008060008580602001905181019061078d9190611176565b92509250925086838383886040516024016105dd94939291906111d0565b6001600160e01b03198416633013529360e01b036107dc5760008060008580602001905181019061078d9190611176565b6001600160e01b031984166307eca39560e01b03610830576000806000808680602001905181019061080e9190611209565b935093509350935087848484848a60405160240161069f95949392919061127e565b6001600160e01b031984166368b6154f60e01b03610862576000806000808680602001905181019061067d91906110aa565b6001600160e01b0319841663341de35b60e21b03610894576000806000808680602001905181019061067d91906110aa565b6001600160e01b03198416637a84860f60e11b0361092d576000806000806000878060200190518101906108c891906112cb565b945094509450945094508885858585858c6040516024016108ee96959493929190611360565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152955061015b945050505050565b6001600160e01b03198416636fab95b360e01b036109b2576000808480602001905181019061095c91906113b9565b915091508582828660405160240161097693929190611400565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925061015b915050565b6001600160e01b0319841663288f888960e11b0361015b57600080848060200190518101906109e1919061142b565b91509150858282866040516024016109fb93929190611459565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925050509392505050565b6000806000610a478585610b7a565b90925090506000816004811115610a6057610a60611489565b148015610a7e5750856001600160a01b0316826001600160a01b0316145b15610a8e5760019250505061015b565b600080876001600160a01b0316631626ba7e60e01b8888604051602401610ab692919061115d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051610af49190610f9b565b600060405180830381855afa9150503d8060008114610b2f576040519150601f19603f3d011682016040523d82523d6000602084013e610b34565b606091505b5091509150818015610b47575080516020145b8015610b6e57508051630b135d3f60e11b90610b6c9083016020908101908401610e40565b145b98975050505050505050565b6000808251604103610bb05760208301516040840151606085015160001a610ba487828585610bbf565b94509450505050610bb8565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610bf65750600090506003610ca3565b8460ff16601b14158015610c0e57508460ff16601c14155b15610c1f5750600090506004610ca3565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610c73573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610c9c57600060019250925050610ca3565b9150600090505b94509492505050565b600080600060408486031215610cc157600080fd5b833567ffffffffffffffff80821115610cd957600080fd5b9085019060808288031215610ced57600080fd5b90935060208501359080821115610d0357600080fd5b818601915086601f830112610d1757600080fd5b813581811115610d2657600080fd5b876020828501011115610d3857600080fd5b6020830194508093505050509250925092565b60005b83811015610d66578181015183820152602001610d4e565b50506000910152565b60008151808452610d87816020860160208601610d4b565b601f01601f19169290920160200192915050565b60208152600061015b6020830184610d6f565b600060208284031215610dc057600080fd5b5035919050565b6001600160a01b038116811461035257600080fd5b600060208284031215610dee57600080fd5b813561015b81610dc7565b6000808335601e19843603018112610e1057600080fd5b83018035915067ffffffffffffffff821115610e2b57600080fd5b602001915036819003821315610bb857600080fd5b600060208284031215610e5257600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610e9257610e92610e59565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ec157610ec1610e59565b604052919050565b600067ffffffffffffffff821115610ee357610ee3610e59565b50601f01601f191660200190565b600060808236031215610f0357600080fd5b610f0b610e6f565b8235610f1681610dc7565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610f4657600080fd5b840136601f820112610f5757600080fd5b8035610f6a610f6582610ec9565b610e98565b8181523684838501011115610f7e57600080fd5b818484018583013760009181019093015250606082015292915050565b60008251610fad818460208701610d4b565b9190910192915050565b600082610fd457634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b60008060006060848603121561100457600080fd5b835161100f81610dc7565b602085015190935061102081610dc7565b80925050604084015190509250925092565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061058290830184610d6f565b600082601f83011261107657600080fd5b8151611084610f6582610ec9565b81815284602083860101111561109957600080fd5b61022d826020830160208701610d4b565b600080600080608085870312156110c057600080fd5b84516110cb81610dc7565b60208601519094506110dc81610dc7565b60408601516060870151919450925067ffffffffffffffff81111561110057600080fd5b61110c87828801611065565b91505092959194509250565b6001600160a01b038681168252851660208201526040810184905260a06060820181905260009061114b90830185610d6f565b8281036080840152610b6e8185610d6f565b82815260406020820152600061022d6040830184610d6f565b60008060006060848603121561118b57600080fd5b835161119681610dc7565b60208501516040860151919450925067ffffffffffffffff8111156111ba57600080fd5b6111c686828701611065565b9150509250925092565b60018060a01b03851681528360208201526080604082015260006111f76080830185610d6f565b82810360608401526103ff8185610d6f565b6000806000806080858703121561121f57600080fd5b845161122a81610dc7565b60208601516040870151919550935067ffffffffffffffff8082111561124f57600080fd5b61125b88838901611065565b9350606087015191508082111561127157600080fd5b5061110c87828801611065565b60018060a01b038616815284602082015260a0604082015260006112a560a0830186610d6f565b82810360608401526112b78186610d6f565b90508281036080840152610b6e8185610d6f565b600080600080600060a086880312156112e357600080fd5b85516112ee81610dc7565b60208701519095506112ff81610dc7565b60408701516060880151919550935067ffffffffffffffff8082111561132457600080fd5b61133089838a01611065565b9350608088015191508082111561134657600080fd5b5061135388828901611065565b9150509295509295909350565b6001600160a01b038781168252861660208201526040810185905260c06060820181905260009061139390830186610d6f565b82810360808401526113a58186610d6f565b905082810360a08401526103008185610d6f565b600080604083850312156113cc57600080fd5b82519150602083015167ffffffffffffffff8111156113ea57600080fd5b6113f685828601611065565b9150509250929050565b8381526060602082015260006114196060830185610d6f565b82810360408401526105828185610d6f565b6000806040838503121561143e57600080fd5b825161144981610dc7565b6020939093015192949293505050565b60018060a01b03841681528260208201526060604082015260006114806060830184610d6f565b95945050505050565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a","storage":{"0x1":"0x7bb6cd9be29fab783c0b494a06fed8b2e2596b7a","0xd8b896d609e853134f3f02ce62d8049b2fdfe9356134f6d548fb1beda30db79":"0x30135293","0x4f457f36b92dc6b16c281e5877e2d8d39630135c1b7246fa9174035e1efcefbd":"0x6fab95b3","0x6b7ba3fe9941e089de60543da4a1deaef065baa963222951b2f9a138f9960820":"0x6debcb8d","0x70cff8e4ee4af5aa154324d45bcf258212c235bbe79f0707bb6273110ef4e13a":"0xf5090c1e","0x73efb0e44094dbabc6bbeecd3be1d81f272157c2dae2d647e6315f150b0b1dd2":"0xd0778d6c","0x8b1c4edded6644848281eab03ac2c319242d62b2057cffa3dd4540715bbc155e":"0xef2c3088","0xbeb5ea8fc2aeae43b7170220434aa4429fb067f0866ae25514b29f647641ca8c":"0x511f1112","0xca659f6eb372ce950e69d4d474290a6a4285f6a06a6128ca9f45419371a1e997":"0xb34f33c5","0xd12e300b5f35ba5198dd81dab97a512a154a0ad0e2cda788abdc22deba64f2a7":"0x280d9b05","0xd5453e7f4fff276a1d42f717d1db50865c284ae707a15bd6a590a3895656f27c":"0x7eca395","0xea2575ae4056f10294a848ca5ed6d215dffd1b80838142770bc441f7df607d71":"0x61603dd9","0xf8ca3ef1e3d09a0d88e209301f12626c90bec3ea586d4bce2c7a58e7eae8278f":"0x68b6154f"}},"0xb17aae5b3a7815433fc82cfd67ea245767894f03":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061012a5760003560e01c80638d839ffe116100ab578063aeb8ce9b1161006f578063aeb8ce9b146105d7578063ce1e09c014610688578063f14fcbc81461069d578063f2fde38b146106c7578063f49826be146106fa578063f7a16963146107b95761012a565b80638d839ffe1461045d5780638da5cb5b146104725780638f32d59b146104a35780639791c097146104b8578063acf1a841146105695761012a565b80637e324479116100f25780637e324479146102b8578063839df945146102e857806383e7f6ff1461031257806385f6d155146103c55780638a95b09f146104485761012a565b806301ffc9a71461012f5780633ccfd60b146101775780633d86c52f1461018e578063530e784f14610270578063715018a6146102a3575b600080fd5b34801561013b57600080fd5b506101636004803603602081101561015257600080fd5b50356001600160e01b031916610881565b604080519115158252519081900360200190f35b34801561018357600080fd5b5061018c610a12565b005b34801561019a57600080fd5b5061025e600480360360a08110156101b157600080fd5b810190602081018135600160201b8111156101cb57600080fd5b8201836020820111156101dd57600080fd5b803590602001918460018302840111600160201b831117156101fe57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b0383358116945060208401359360408101358216935060600135169050610a53565b60408051918252519081900360200190f35b34801561027c57600080fd5b5061018c6004803603602081101561029357600080fd5b50356001600160a01b0316610b42565b3480156102af57600080fd5b5061018c610ba3565b3480156102c457600080fd5b5061018c600480360360408110156102db57600080fd5b5080359060200135610bfe565b3480156102f457600080fd5b5061025e6004803603602081101561030b57600080fd5b5035610c1a565b34801561031e57600080fd5b5061025e6004803603604081101561033557600080fd5b810190602081018135600160201b81111561034f57600080fd5b82018360208201111561036157600080fd5b803590602001918460018302840111600160201b8311171561038257600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505091359250610c2c915050565b61018c600480360360808110156103db57600080fd5b810190602081018135600160201b8111156103f557600080fd5b82018360208201111561040757600080fd5b803590602001918460018302840111600160201b8311171561042857600080fd5b91935091506001600160a01b038135169060208101359060400135610d9e565b34801561045457600080fd5b5061025e610de9565b34801561046957600080fd5b5061025e610df0565b34801561047e57600080fd5b50610487610df6565b604080516001600160a01b039092168252519081900360200190f35b3480156104af57600080fd5b50610163610e05565b3480156104c457600080fd5b50610163600480360360208110156104db57600080fd5b810190602081018135600160201b8111156104f557600080fd5b82018360208201111561050757600080fd5b803590602001918460018302840111600160201b8311171561052857600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610e16945050505050565b61018c6004803603604081101561057f57600080fd5b810190602081018135600160201b81111561059957600080fd5b8201836020820111156105ab57600080fd5b803590602001918460018302840111600160201b831117156105cc57600080fd5b919350915035610e2b565b3480156105e357600080fd5b50610163600480360360208110156105fa57600080fd5b810190602081018135600160201b81111561061457600080fd5b82018360208201111561062657600080fd5b803590602001918460018302840111600160201b8311171561064757600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610fcf945050505050565b34801561069457600080fd5b5061025e611069565b3480156106a957600080fd5b5061018c600480360360208110156106c057600080fd5b503561106f565b3480156106d357600080fd5b5061018c600480360360208110156106ea57600080fd5b50356001600160a01b03166110a1565b34801561070657600080fd5b5061025e6004803603606081101561071d57600080fd5b810190602081018135600160201b81111561073757600080fd5b82018360208201111561074957600080fd5b803590602001918460018302840111600160201b8311171561076a57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b0383351693505050602001356110bb565b61018c600480360360c08110156107cf57600080fd5b810190602081018135600160201b8111156107e957600080fd5b8201836020820111156107fb57600080fd5b803590602001918460018302840111600160201b8311171561081c57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b038335811694506020840135936040810135935060608101358216925060800135166110d3565b604080517f737570706f727473496e74657266616365286279746573342900000000000000815290519081900360190190206000906001600160e01b0319838116911614806109c05750604080517472656e657728737472696e672c75696e743235362960581b815290519081900360150181209080602861186a8239604080519182900360280182206e636f6d6d697428627974657333322960881b8352905191829003600f01822090925090806026611892823960260190506040518091039020604051808070617661696c61626c6528737472696e672960781b8152506011019050604051809103902060405180807f72656e74507269636528737472696e672c75696e7432353629000000000000008152506019019050604051809103902018181818186001600160e01b031916826001600160e01b031916145b80610a0c5750604051808061182a60409139604080519182900301812091508060426118b8823960420190506040518091039020186001600160e01b031916826001600160e01b031916145b92915050565b610a1a610e05565b610a2357600080fd5b6040513390303180156108fc02916000818181858888f19350505050158015610a50573d6000803e3d6000fd5b50565b845160208601206000906001600160a01b038416158015610a7b57506001600160a01b038316155b15610acb57604080516020808201939093526bffffffffffffffffffffffff19606089901b1681830152605480820188905282518083039091018152607490910190915280519101209050610b39565b6001600160a01b038416610ade57600080fd5b604080516020808201939093526bffffffffffffffffffffffff19606089811b82168385015287811b8216605484015286901b166068820152607c80820188905282518083039091018152609c909101909152805191012090505b95945050505050565b610b4a610e05565b610b5357600080fd5b600280546001600160a01b0319166001600160a01b0383811691909117918290556040519116907ff261845a790fe29bbd6631e2ca4a5bdc83e6eed7c3271d9590d97287e00e912390600090a250565b610bab610e05565b610bb457600080fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b610c06610e05565b610c0f57600080fd5b600391909155600455565b60056020526000908152604090205481565b815160208084019190912060025460015460408051636b727d4360e11b81526004810185905290516000956001600160a01b03948516946350e9a715948a9491169263d6e4fa8692602480840193919291829003018186803b158015610c9157600080fd5b505afa158015610ca5573d6000803e3d6000fd5b505050506040513d6020811015610cbb57600080fd5b50516040516001600160e01b031960e085901b168152602481018290526044810188905260606004820190815283516064830152835189928291608490910190602087019080838360005b83811015610d1e578181015183820152602001610d06565b50505050905090810190601f168015610d4b5780820380516001836020036101000a031916815260200191505b5094505050505060206040518083038186803b158015610d6a57600080fd5b505afa158015610d7e573d6000803e3d6000fd5b505050506040513d6020811015610d9457600080fd5b5051949350505050565b610de285858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250889350879250869150806110d3565b5050505050565b6224ea0081565b60035481565b6000546001600160a01b031690565b6000546001600160a01b0316331490565b60006003610e2383611646565b101592915050565b6000610e6e84848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250869250610c2c915050565b905080341015610e7d57600080fd5b60008484604051808383808284376040805193909101839003832060015463c475abff60e01b855260048501829052602485018b90529151909750600096506001600160a01b03909116945063c475abff93506044808401936020935082900301818787803b158015610eef57600080fd5b505af1158015610f03573d6000803e3d6000fd5b505050506040513d6020811015610f1957600080fd5b5051905034831015610f565760405133903485900380156108fc02916000818181858888f19350505050158015610f54573d6000803e3d6000fd5b505b817f3da24c024582931cfaf8267d8ed24d13a82a8068d5bd337d30ec45cea4e506ae8787868560405180806020018481526020018381526020018281038252868682818152602001925080828437600083820152604051601f909101601f191690920182900397509095505050505050a2505050505050565b80516020820120600090610fe283610e16565b80156110625750600154604080516312dc929d60e31b81526004810184905290516001600160a01b03909216916396e494e891602480820192602092909190829003018186803b15801561103557600080fd5b505afa158015611049573d6000803e3d6000fd5b505050506040513d602081101561105f57600080fd5b50515b9392505050565b60045481565b6004546000828152600560205260409020544291011061108e57600080fd5b6000908152600560205260409020429055565b6110a9610e05565b6110b257600080fd5b610a508161172e565b60006110cb848484600080610a53565b949350505050565b60006110e28787868686610a53565b905060006110f188878461179c565b885160208a01209091508060006001600160a01b038716156114ac5760015460408051633f2891eb60e21b815260048101859052306024820152604481018c905290516001600160a01b039092169163fca247ac916064808201926020929091908290030181600087803b15801561116857600080fd5b505af115801561117c573d6000803e3d6000fd5b505050506040513d602081101561119257600080fd5b505160015460408051630ddf7fcb60e41b815290519293506000926001600160a01b039092169163ddf7fcb091600480820192602092909190829003018186803b1580156111df57600080fd5b505afa1580156111f3573d6000803e3d6000fd5b505050506040513d602081101561120957600080fd5b50516040805160208181019390935280820187905281518082038301815260608201808452815191850191909120600154633f15457f60e01b90925292519294506001600160a01b031692633f15457f92606480840193829003018186803b15801561127457600080fd5b505afa158015611288573d6000803e3d6000fd5b505050506040513d602081101561129e57600080fd5b505160408051630c4b7b8560e11b8152600481018490526001600160a01b038b8116602483015291519190921691631896f70a91604480830192600092919082900301818387803b1580156112f257600080fd5b505af1158015611306573d6000803e3d6000fd5b505050506001600160a01b0387161561139257876001600160a01b031663d5fa2b0082896040518363ffffffff1660e01b815260040180838152602001826001600160a01b03166001600160a01b0316815260200192505050600060405180830381600087803b15801561137957600080fd5b505af115801561138d573d6000803e3d6000fd5b505050505b60015460408051630a3b53db60e21b8152600481018690526001600160a01b038e81166024830152915191909216916328ed4f6c91604480830192600092919082900301818387803b1580156113e757600080fd5b505af11580156113fb573d6000803e3d6000fd5b50505050600160009054906101000a90046001600160a01b03166001600160a01b03166323b872dd308d866040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050600060405180830381600087803b15801561148e57600080fd5b505af11580156114a2573d6000803e3d6000fd5b505050505061154c565b6001600160a01b038616156114c057600080fd5b60015460408051633f2891eb60e21b8152600481018590526001600160a01b038d81166024830152604482018d90529151919092169163fca247ac9160648083019260209291908290030181600087803b15801561151d57600080fd5b505af1158015611531573d6000803e3d6000fd5b505050506040513d602081101561154757600080fd5b505190505b896001600160a01b0316837fca6abbe9d7f11422cb6ca7629fbf6fe9efb1c621f71ce8f02b9f2a230097404f8d87856040518080602001848152602001838152602001828103825285818151815260200191508051906020019080838360005b838110156115c45781810151838201526020016115ac565b50505050905090810190601f1680156115f15780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a3833411156116395760405133903486900380156108fc02916000818181858888f19350505050158015611637573d6000803e3d6000fd5b505b5050505050505050505050565b8051600090819081905b8082101561172557600085838151811061166657fe5b01602001516001600160f81b0319169050600160ff1b81101561168e57600183019250611719565b600760fd1b6001600160f81b0319821610156116af57600283019250611719565b600f60fc1b6001600160f81b0319821610156116d057600383019250611719565b601f60fb1b6001600160f81b0319821610156116f157600483019250611719565b603f60fa1b6001600160f81b03198216101561171257600583019250611719565b6006830192505b50600190920191611650565b50909392505050565b6001600160a01b03811661174157600080fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b600354600082815260056020526040812054909142910111156117be57600080fd5b600454600083815260056020526040902054429101116117dd57600080fd5b6117e684610fcf565b6117ef57600080fd5b600082815260056020526040812081905561180a8585610c2c565b90506224ea0084101561181c57600080fd5b803410156110cb57600080fdfe6d616b65436f6d6d69746d656e7457697468436f6e66696728737472696e672c616464726573732c627974657333322c616464726573732c6164647265737329726567697374657228737472696e672c616464726573732c75696e743235362c62797465733332296d616b65436f6d6d69746d656e7428737472696e672c616464726573732c6279746573333229726567697374657257697468436f6e66696728737472696e672c616464726573732c75696e743235362c627974657333322c616464726573732c6164647265737329a265627a7a72315820ba74b4e49afb22de09a9ebda5d073d93e2a2a7b2530ce50def390c32cac92ea064736f6c634300050c0032","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1":"0xc965345edac823d56812cd20a10316233916a605","0x2":"0xec71e4e674fe0f432693dc2b935c34bd2774c003","0x3":"0x258","0x4":"0x15180"}},"0xbdefcf6429d0ac68236a6beb321cbd2ce66b463c":{"nonce":2,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c80636d435421116100885780637b37e561116100635780637b37e561146102435780638b9e028b14610256578063906c87cc1461027657806393790f4414610289575f80fd5b80636d435421146101eb5780636e9bfd9f146101fe578063794593bc14610230575f80fd5b806314afd79e116100c357806314afd79e1461018157806333bc8572146101945780634e3f9580146101b757806351710e45146101d8575f80fd5b8063027cc764146100e95780630a96ad391461011957806313ad9cab1461016c575b5f80fd5b6100fc6100f7366004610c39565b61029c565b6040516001600160a01b0390911681526020015b60405180910390f35b604080517f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f81527fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167602082015201610110565b61017f61017a366004610c61565b610339565b005b6100fc61018f366004610ca9565b610531565b6101a76101a2366004610cc9565b61055c565b6040519015158152602001610110565b6101ca6101c5366004610ca9565b610595565b604051908152602001610110565b61017f6101e6366004610ca9565b6105bd565b61017f6101f9366004610cc9565b6106be565b61021161020c366004610cfa565b6107ae565b604080516001600160a01b039093168352901515602083015201610110565b6100fc61023e366004610d11565b610838565b61017f610251366004610ca9565b610a0a565b610269610264366004610ca9565b610aab565b6040516101109190610d32565b6100fc610284366004610ca9565b610b28565b6101ca610297366004610ca9565b610b53565b5f6102a683610b8e565b6001600160a01b0383165f908152602081905260409020600301548083106102f157604051636ceb340b60e01b81526001600160a01b03851660048201526024015b60405180910390fd5b6001600160a01b0384165f90815260208190526040902060030180548490811061031d5761031d610d7e565b5f918252602090912001546001600160a01b0316949350505050565b61034283610bc6565b60405163c4e8fcb560e01b81526001600160a01b038381166004830152821515602483015284169063c4e8fcb5906044015f604051808303815f87803b15801561038a575f80fd5b505af115801561039c573d5f803e3d5ffd5b505050506001600160a01b038381165f908152602081815260408083209386168352600484019091529020548015158380156103d6575080155b15610425576003830180546001810182555f828152602080822090920180546001600160a01b0319166001600160a01b038a169081179091559254928152600486019091526040902055610529565b831580156104305750805b156105295760038301545f198301905f9061044d90600190610d92565b90508181146104d8575f85600301828154811061046c5761046c610d7e565b5f918252602090912001546003870180546001600160a01b03909216925082918590811061049c5761049c610d7e565b5f91825260208083209190910180546001600160a01b0319166001600160a01b0394851617905592909116815260048701909152604090208490555b846003018054806104eb576104eb610db7565b5f828152602080822083015f1990810180546001600160a01b03191690559092019092556001600160a01b0389168252600487019052604081205550505b505050505050565b5f61053b82610b8e565b506001600160a01b039081165f908152602081905260409020600101541690565b5f61056683610b8e565b506001600160a01b039182165f9081526020818152604080832093909416825260049092019091522054151590565b5f61059f82610b8e565b506001600160a01b03165f9081526020819052604090206003015490565b6105c681610b8e565b6001600160a01b038181165f9081526020819052604090206002015416331461060d576040516388c3a11560e01b81526001600160a01b03821660048201526024016102e8565b6040515f907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da908290a26001600160a01b038082165f818152602081905260408082206002810180546001600160a01b031916905560010154905133949190911692917fc8894f26f396ce8c004245c8b7cd1b92103a6e4302fcbab883987149ac01b7ec91a46001600160a01b03165f90815260208190526040902060010180546001600160a01b03191633179055565b6106c782610bc6565b6001600160a01b0381166106f95760405163a388d26360e01b81526001600160a01b03831660048201526024016102e8565b6001600160a01b038083165f9081526020819052604090206002015481169082160361074b576040516365e0406560e11b81526001600160a01b038084166004830152821660248201526044016102e8565b6040516001600160a01b038216907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da905f90a26001600160a01b039182165f90815260208190526040902060020180546001600160a01b03191691909216179055565b5f8060ff60f81b30847f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f6040516020016107eb9493929190610dcb565b60408051601f198184030181529190528051602090910120936001600160a01b0385163f7fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167149350915050565b5f6001600160a01b0382166108605760405163267eaa8160e21b815260040160405180910390fd5b606083901c3314610884576040516332db94d160e21b815260040160405180910390fd5b6040516108c3906001600160f81b031990309086907f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f90602001610dcb565b604051602081830303815290604052805190602001205f1c90507fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167816001600160a01b03163f0361093257604051633194665960e11b81526001600160a01b03821660048201526024016102e8565b8260405161093f90610c16565b8190604051809103905ff590508015801561095c573d5f803e3d5ffd5b50506001600160a01b038181165f81815260208181526040918290206001810180546001600160a01b03191695881695909517909455868455815192835282018690527f4397af6128d529b8ae0442f99db1296d5136062597a15bbc61c1b2a6431a7d15910160405180910390a16040516001600160a01b03808516915f918516907fc8894f26f396ce8c004245c8b7cd1b92103a6e4302fcbab883987149ac01b7ec908390a45092915050565b610a1381610bc6565b6001600160a01b038181165f9081526020819052604090206002015416610a58576040516335809b0b60e11b81526001600160a01b03821660048201526024016102e8565b6040515f907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da908290a26001600160a01b03165f90815260208190526040902060020180546001600160a01b0319169055565b6060610ab682610b8e565b6001600160a01b0382165f908152602081815260409182902060030180548351818402810184019094528084529091830182828015610b1c57602002820191905f5260205f20905b81546001600160a01b03168152600190910190602001808311610afe575b50505050509050919050565b5f610b3282610b8e565b506001600160a01b039081165f908152602081905260409020600201541690565b6001600160a01b0381165f9081526020819052604090205480610b89576040516304ca820960e41b815260040160405180910390fd5b919050565b6001600160a01b0381165f90815260208190526040902054610bc3576040516304ca820960e41b815260040160405180910390fd5b50565b610bcf81610b8e565b6001600160a01b038181165f90815260208190526040902060010154163314610bc35760405163d4ed9a1760e01b81526001600160a01b03821660048201526024016102e8565b610a4180610e0583390190565b80356001600160a01b0381168114610b89575f80fd5b5f8060408385031215610c4a575f80fd5b610c5383610c23565b946020939093013593505050565b5f805f60608486031215610c73575f80fd5b610c7c84610c23565b9250610c8a60208501610c23565b915060408401358015158114610c9e575f80fd5b809150509250925092565b5f60208284031215610cb9575f80fd5b610cc282610c23565b9392505050565b5f8060408385031215610cda575f80fd5b610ce383610c23565b9150610cf160208401610c23565b90509250929050565b5f60208284031215610d0a575f80fd5b5035919050565b5f8060408385031215610d22575f80fd5b82359150610cf160208401610c23565b602080825282518282018190525f9190848201906040850190845b81811015610d725783516001600160a01b031683529284019291840191600101610d4d565b50909695505050505050565b634e487b7160e01b5f52603260045260245ffd5b81810381811115610db157634e487b7160e01b5f52601160045260245ffd5b92915050565b634e487b7160e01b5f52603160045260245ffd5b6001600160f81b031994909416845260609290921b6bffffffffffffffffffffffff19166001840152601583015260358201526055019056fe60a060405234801561000f575f80fd5b5033608052608051610a1561002c5f395f6101d20152610a155ff3fe608060405234801561000f575f80fd5b506004361061004a575f3560e01c80634ce34aa21461004e578063899e104c1461007e5780638df25d9214610091578063c4e8fcb5146100a4575b5f80fd5b61006161005c366004610834565b6100b9565b6040516001600160e01b0319909116815260200160405180910390f35b61006161008c3660046108b4565b610121565b61006161009f36600461091b565b61018a565b6100b76100b2366004610969565b6101c7565b005b5f335f525f60205260405f20546100dd576349ed56f960e11b5f523360045260245ffd5b815f5b81811015610110576101088585838181106100fd576100fd6109a2565b905060c002016102c4565b6001016100e0565b50632671a55160e11b949350505050565b5f335f525f60205260405f2054610145576349ed56f960e11b5f523360045260245ffd5b835f5b8181101561016d576101658787838181106100fd576100fd6109a2565b600101610148565b506101788484610436565b50632267841360e21b95945050505050565b5f335f525f60205260405f20546101ae576349ed56f960e11b5f523360045260245ffd5b6101b88383610436565b506346f92ec960e11b92915050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610210576040516336abb4df60e11b815260040160405180910390fd5b6001600160a01b0382165f9081526020819052604090205481151560ff909116151503610268576040516349271a0f60e11b81526001600160a01b038316600482015281151560248201526044015b60405180910390fd5b6001600160a01b0382165f8181526020818152604091829020805460ff191685151590811790915591519182527fae63067d43ac07563b7eb8db6595635fc77f1578a2a5ea06ba91b63e2afa37e2910160405180910390a25050565b60016102d360208301836109ca565b60038111156102e4576102e46109b6565b03610329576103266102fc60408301602084016109ef565b61030c60608401604085016109ef565b61031c60808501606086016109ef565b8460a0013561056c565b50565b600261033860208301836109ca565b6003811115610349576103496109b6565b036103b6578060a00135600114610379576040516369f9582760e01b815260a0820135600482015260240161025f565b61032661038c60408301602084016109ef565b61039c60608401604085016109ef565b6103ac60808501606086016109ef565b8460800135610660565b60036103c560208301836109ca565b60038111156103d6576103d66109b6565b0361041d576103266103ee60408301602084016109ef565b6103fe60608401604085016109ef565b61040e60808501606086016109ef565b84608001358560a00135610715565b604051631e4cbc7f60e21b815260040160405180910390fd5b808280631759616b60e11b6020525f5b8381101561055f57823582018035803b61046b57635f15d6725f52806020526024601cfd5b60a08201358060051b60c0018060808501351460a0606086013514168185013583141615905080156104a657633ae8821360e21b5f5260045ffd5b506020860195506080602084016024378060061b60400190508060a00160a4525f8160c401528060c4018160a0850160c4375f808260205f875af1935083610550573d1561053057601f3d0160051c91508060051c826003028184111561051a578184036003028280028580020360091c01015b5a60208201101561052d573d5f803e3d5ffd5b50505b6357e222f160e11b5f528260045260c0606452608451602001608452805ffd5b50505050600181019050610446565b5050505060806040525050565b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166106515780873b15151661065157806106405781610623573d1561060257601f3d0160051c8360051c81600302818311156105eb578183036003028280028480020360091c01015b5a6020820110156105fe573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b833b61067757635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af180610707573d156106e557601f3d0160051c8260051c81600302818311156106ce578183036003028280028480020360091c01015b5a6020820110156106e1573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b61072c57635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af1806107d1573d156107b057601f3d0160051c8560051c8160030281831115610799578183036003028280028480020360091c01015b5a6020820110156107ac573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b5f8083601f8401126107fc575f80fd5b50813567ffffffffffffffff811115610813575f80fd5b60208301915083602060c08302850101111561082d575f80fd5b9250929050565b5f8060208385031215610845575f80fd5b823567ffffffffffffffff81111561085b575f80fd5b610867858286016107ec565b90969095509350505050565b5f8083601f840112610883575f80fd5b50813567ffffffffffffffff81111561089a575f80fd5b6020830191508360208260051b850101111561082d575f80fd5b5f805f80604085870312156108c7575f80fd5b843567ffffffffffffffff808211156108de575f80fd5b6108ea888389016107ec565b90965094506020870135915080821115610902575f80fd5b5061090f87828801610873565b95989497509550505050565b5f806020838503121561092c575f80fd5b823567ffffffffffffffff811115610942575f80fd5b61086785828601610873565b80356001600160a01b0381168114610964575f80fd5b919050565b5f806040838503121561097a575f80fd5b6109838361094e565b915060208301358015158114610997575f80fd5b809150509250929050565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52602160045260245ffd5b5f602082840312156109da575f80fd5b8135600481106109e8575f80fd5b9392505050565b5f602082840312156109ff575f80fd5b6109e88261094e56fea164736f6c6343000818000aa164736f6c6343000818000a","storage":{}},"0xbe5deac45dd1ca4ee18dc2d585d84d3d3cb82b0d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c806341539d4a146100465780634d5505d314610097578063afa764d7146100b1575b600080fd5b6100636004803603602081101561005c57600080fd5b50356100dc565b6040805195865260208601949094528484019290925260608401526001600160a01b03166080830152519081900360a00190f35b61009f610114565b60408051918252519081900360200190f35b6100da600480360360608110156100c757600080fd5b508035906020810135906040013561011a565b005b60006020819052908152604090208054600182015460028301546003840154600490940154929391929091906001600160a01b031685565b60015481565b6101226101eb565b506040805160a0810182528481526020808201858152828401858152426060808601918252336080870181815260018054810180825560009081528089528a81208a518155975188830155955160028801559351600387015551600490950180546001600160a01b0319166001600160a01b0390961695909517909455905486518981529485018890528487018a905295519495919491937fba5de06d22af2685c6c7765f60067f7d2b08c2d29f53cdf14d67f6d1c9bfb527929081900390910190a450505050565b6040518060a001604052806000801916815260200160008152602001600081526020016000815260200160006001600160a01b03168152509056fea164736f6c6343000606000a","storage":{"0x1":"0x0"}},"0xbe92182cab5b84fd18b34881a0c32771e84f5b8b":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061021c5760003560e01c80638da5cb5b11610125578063bebec6b4116100ad578063e985e9c51161007c578063e985e9c514610540578063f059235914610553578063f2fde38b14610566578063ffa1ad7414610579578063ffad6f551461059d57600080fd5b8063bebec6b4146104e7578063bfc5429b146104fa578063c15ae7cf1461050d578063c87b56dd1461052d57600080fd5b8063a81ce6f9116100f4578063a81ce6f91461046d578063ac9650d814610480578063b3f9e4cb146104a0578063b85afd28146104b3578063b98b3526146104d457600080fd5b80638da5cb5b146103f157806391015f6b146103f9578063933c051d1461041b578063a3f4df7e1461043d57600080fd5b80634bd79ed0116101a857806370a082311161017757806370a082311461038d578063715018a6146103a05780637e37479e146103a857806383caffbe146103bb578063869b8884146103ce57600080fd5b80634bd79ed0146103335780634f558e79146103465780636352211e14610359578063672b9f811461036c57600080fd5b80631bd8cc1a116101ef5780631bd8cc1a146102ac5780631be5e7ed146102cc578063276fabb1146102ec578063430c20811461030d578063485cc9551461032057600080fd5b806301ffc9a7146102215780630328075514610249578063081812fc1461026c57806313af403514610297575b600080fd5b61023461022f366004612c9d565b6105b0565b60405190151581526020015b60405180910390f35b61025c610257366004612d0b565b610638565b6040516102409493929190612dfe565b61027f61027a366004612e3c565b61065b565b6040516001600160a01b039091168152602001610240565b6102aa6102a5366004612e6a565b610760565b005b6102bf6102ba366004612d0b565b6107d1565b6040516102409190612e87565b6102df6102da366004612edb565b6107f0565b6040516102409190612f12565b6102ff6102fa366004612f25565b61091b565b604051908152602001610240565b61023461031b366004612f66565b61098f565b6102aa61032e366004612f92565b610aa2565b6102aa610341366004612fcb565b610bf5565b610234610354366004612e3c565b610e51565b61027f610367366004612e3c565b610e5c565b61037f61037a366004613036565b610e67565b604051610240929190613058565b6102ff61039b366004612e6a565b610f97565b6102aa611095565b6102ff6103b6366004612e6a565b6110a9565b6102bf6103c936600461307d565b611118565b6103e16103dc366004612fcb565b6114f0565b60405161024094939291906131bb565b61027f6116e6565b61040c610407366004612d0b565b611714565b60405161024093929190613208565b61042e610429366004612fcb565b611734565b60405161024093929190613234565b6102df604051806040016040528060118152602001702aa7299d10283937bc3c902932b0b232b960791b81525081565b61027f61047b366004612e3c565b6118bd565b61049361048e366004612f25565b61198b565b6040516102409190613277565b61027f6104ae366004612e3c565b611a7f565b6104c66104c1366004612d0b565b611b05565b6040516102409291906132d9565b6102df6104e23660046132fe565b611ce1565b6102df6104f5366004612e6a565b611cfb565b6102df6105083660046132fe565b611d6f565b61052061051b366004612f25565b611d89565b6040516102409190613371565b6102df61053b366004612e3c565b611e37565b61023461054e366004612f92565b611f09565b6102aa610561366004612fcb565b611f54565b6102aa610574366004612e6a565b612018565b6102df604051806040016040528060058152602001640302e352e360dc1b81525081565b6102aa6105ab366004613384565b612085565b60006001600160e01b031982166362526e6360e01b14806105e157506001600160e01b03198216636fa624af60e11b145b806105fc57506001600160e01b031982166308da864d60e31b145b8061061757506001600160e01b03198216638584880360e01b145b8061063257506301ffc9a760e01b6001600160e01b03198316145b92915050565b6000806060806106498787876120d8565b93509350935093505b93509350935093565b60006106668261233a565b61067257506000919050565b61067b826123d2565b6106f25760665460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa1580156106c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106ed91906133bd565b610632565b60655460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa15801561073c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061063291906133bd565b600061076a6116e6565b6001600160a01b0316146107c55760405162461bcd60e51b815260206004820152601e60248201527f50726f78795265616465723a204f574e45525f414c52454144595f534554000060448201526064015b60405180910390fd5b6107ce81612419565b50565b60606107e66107e0848661346a565b83612495565b90505b9392505050565b60606107fb826123d2565b1561088057606554604051631be5e7ed60e01b81526001600160a01b0390911690631be5e7ed9061083490879087908790600401613547565b600060405180830381865afa158015610851573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261087991908101906135b0565b90506107e9565b600061088b83612617565b90506001600160a01b0381163b1561091357604051631be5e7ed60e01b81526001600160a01b03821690631be5e7ed906108cd90889088908890600401613547565b600060405180830381865afa92505050801561090b57506040513d6000823e601f3d908101601f1916820160405261090891908101906135b0565b60015b156109135791505b509392505050565b60655460405163276fabb160e01b81526000916001600160a01b03169063276fabb19061094e908690869060040161366c565b602060405180830381865afa15801561096b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613680565b600061099a8261233a565b6109a657506000610632565b6109af826123d2565b610a2d5760665460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a04573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a289190613699565b6107e9565b60655460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a7e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613699565b600054610100900460ff1615808015610ac25750600054600160ff909116105b80610adc5750303b158015610adc575060005460ff166001145b610b3f5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107bc565b6000805460ff191660011790558015610b62576000805461ff0019166101001790555b606580546001600160a01b038086166001600160a01b0319928316179092556066805492851692909116919091179055610b9a61268a565b610ba261268a565b610baa6126b1565b8015610bf0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b610bfd6126e1565b828114610c4c5760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107bc565b60005b83811015610e4a5760006068868684818110610c6d57610c6d6136bb565b9050602002810190610c7f91906136d1565b604051610c8d929190613717565b908152604051908190036020019020541115610cf1576068858583818110610cb757610cb76136bb565b9050602002810190610cc991906136d1565b604051610cd7929190613717565b90815260200160405180910390206000610cf19190612c18565b60005b838383818110610d0657610d066136bb565b9050602002810190610d189190613727565b9050811015610ddc576068868684818110610d3557610d356136bb565b9050602002810190610d4791906136d1565b604051610d55929190613717565b9081526020016040518091039020848484818110610d7557610d756136bb565b9050602002810190610d879190613727565b83818110610d9757610d976136bb565b9050602002810190610da991906136d1565b82546001810184556000938452602090932090920191610dc991836137f8565b5080610dd4816138cd565b915050610cf4565b507fb2b57b54285120d17f49f2490a39ef791441fd0ad1e6b6818c23262bf91f061c858583818110610e1057610e106136bb565b9050602002810190610e2291906136d1565b604051610e309291906138e6565b60405180910390a180610e42816138cd565b915050610c4f565b5050505050565b60006106328261233a565b600061063282612740565b606080610e73836123d2565b15610ef95760655460405163672b9f8160e01b815260048101869052602481018590526001600160a01b039091169063672b9f8190604401600060405180830381865afa158015610ec8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610ef091908101906138fa565b91509150610f90565b6000610f0484612617565b90506001600160a01b0381163b15610f8e5760405163672b9f8160e01b815260048101869052602481018590526001600160a01b0382169063672b9f8190604401600060405180830381865afa925050508015610f8357506040513d6000823e601f3d908101601f19168201604052610f8091908101906138fa565b60015b15610f8e5790935091505b505b9250929050565b6065546040516370a0823160e01b81526001600160a01b03838116600483015260009283929116906370a0823190602401602060405180830381865afa158015610fe5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110099190613680565b6066549091506001600160a01b031615610632576066546040516370a0823160e01b81526001600160a01b038581166004830152909116906370a0823190602401602060405180830381865afa158015611067573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061108b9190613680565b6107e9908261395d565b61109d6126e1565b6110a76000612419565b565b606554604051633f1ba3cf60e11b81526001600160a01b0383811660048301526000921690637e37479e90602401602060405180830381865afa1580156110f4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190613680565b606060006067868660405161112e929190613717565b9081526020016040518091039020805461114790613770565b80601f016020809104026020016040519081016040528092919081815260200182805461117390613770565b80156111c05780601f10611195576101008083540402835291602001916111c0565b820191906000526020600020905b8154815290600101906020018083116111a357829003601f168201915b5050505050905080516000036111d657506114e8565b6000604051806040016040528060068152602001653a37b5b2b71760d11b81525090506000604051806040016040528060088152602001672e6164647265737360c01b81525090506000604051806040016040528060018152602001601760f91b815250905060008385838c8c868d8d8a60405160200161125f99989796959493929190613970565b6040516020818303038152906040529050600060688260405161128291906139f3565b9081526020016040518091039020805480602002602001604051908101604052809291908181526020016000905b8282101561135c5783829060005260206000200180546112cf90613770565b80601f01602080910402602001604051908101604052809291908181526020018280546112fb90613770565b80156113485780601f1061131d57610100808354040283529160200191611348565b820191906000526020600020905b81548152906001019060200180831161132b57829003601f168201915b5050505050815260200190600101906112b0565b50505050905080516003611370919061395d565b6001600160401b03811115611387576113876133da565b6040519080825280602002602001820160405280156113ba57816020015b60608152602001906001900390816113a55790505b50965081876000815181106113d1576113d16136bb565b602002602001018190525060005b815181101561143e578181815181106113fa576113fa6136bb565b602002602001015188826001611410919061395d565b81518110611420576114206136bb565b60200260200101819052508080611436906138cd565b9150506113df565b508486848d8d8860405160200161145a96959493929190613a0f565b6040516020818303038152906040528782516001611478919061395d565b81518110611488576114886136bb565b60200260200101819052508486856040516020016114a893929190613a72565b60405160208183030381529060405287825160026114c6919061395d565b815181106114d6576114d66136bb565b60200260200101819052505050505050505b949350505050565b6060808080846001600160401b0381111561150d5761150d6133da565b604051908082528060200260200182016040528015611536578160200160208202803683370190505b509350846001600160401b03811115611551576115516133da565b60405190808252806020026020018201604052801561157a578160200160208202803683370190505b509250846001600160401b03811115611595576115956133da565b6040519080825280602002602001820160405280156115c857816020015b60608152602001906001900390816115b35790505b509150846001600160401b038111156115e3576115e36133da565b60405190808252806020026020018201604052801561161657816020015b60608152602001906001900390816116015790505b50905060005b858110156116da57611647898989898581811061163b5761163b6136bb565b905060200201356120d8565b888581518110611659576116596136bb565b60200260200101888681518110611672576116726136bb565b6020026020010188878151811061168b5761168b6136bb565b602002602001018888815181106116a4576116a46136bb565b6020908102919091010193909352929091526001600160a01b0392831690915291169052806116d2816138cd565b91505061161c565b50945094509450949050565b7fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c8121905546001600160a01b031690565b6000806060611724868686612761565b9250925092505b93509350939050565b60608080836001600160401b03811115611750576117506133da565b604051908082528060200260200182016040528015611779578160200160208202803683370190505b509250836001600160401b03811115611794576117946133da565b6040519080825280602002602001820160405280156117bd578160200160208202803683370190505b509150836001600160401b038111156117d8576117d86133da565b60405190808252806020026020018201604052801561180b57816020015b60608152602001906001900390816117f65790505b50905060005b848110156118b25761183c8888888885818110611830576118306136bb565b90506020020135612761565b86848151811061184e5761184e6136bb565b60200260200101868581518110611867576118676136bb565b60200260200101868681518110611880576118806136bb565b60209081029190910101929092526001600160a01b0392831690915291169052806118aa816138cd565b915050611811565b509450945094915050565b606554604051634f558e7960e01b8152600481018390526000916001600160a01b031690634f558e7990602401602060405180830381865afa158015611907573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061192b9190613699565b156119415750506065546001600160a01b031690565b6066546001600160a01b03161580159061196d575060006119618361296c565b6001600160a01b031614155b156119835750506066546001600160a01b031690565b506000919050565b6060816001600160401b038111156119a5576119a56133da565b6040519080825280602002602001820160405280156119d857816020015b60608152602001906001900390816119c35790505b50905060005b82811015611a7857611a48308585848181106119fc576119fc6136bb565b9050602002810190611a0e91906136d1565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061299e92505050565b828281518110611a5a57611a5a6136bb565b60200260200101819052508080611a70906138cd565b9150506119de565b5092915050565b6000611a8a8261233a565b611a9657506000919050565b611a9f826123d2565b611ad45760665460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb906024016106ac565b60655460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb9060240161071f565b606080836001600160401b03811115611b2057611b206133da565b604051908082528060200260200182016040528015611b5357816020015b6060815260200190600190039081611b3e5790505b509150836001600160401b03811115611b6e57611b6e6133da565b604051908082528060200260200182016040528015611ba157816020015b6060815260200190600190039081611b8c5790505b509050611bad836123d2565b15611c345760655460405163170b5fa560e31b81526001600160a01b039091169063b85afd2890611be690889088908890600401613ab5565b600060405180830381865afa158015611c03573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611c2b9190810190613b72565b91509150611cd9565b6000611c3f84612617565b90506001600160a01b0381163b15158015611c5957508415155b15611cd75760405163170b5fa560e31b81526001600160a01b0382169063b85afd2890611c8e90899089908990600401613ab5565b600060405180830381865afa925050508015611ccc57506040513d6000823e601f3d908101601f19168201604052611cc99190810190613b72565b60015b15611cd75790935091505b505b935093915050565b6060611cf08686868686612a92565b979650505050505050565b606554604051632fafb1ad60e21b81526001600160a01b038381166004830152606092169063bebec6b4906024015b600060405180830381865afa158015611d47573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261063291908101906135b0565b6060611d7e8686868686612a92565b509695505050505050565b6060816001600160401b03811115611da357611da36133da565b604051908082528060200260200182016040528015611dcc578160200160208202803683370190505b50905060005b82811015611a7857611dfb848483818110611def57611def6136bb565b90506020020135612740565b828281518110611e0d57611e0d6136bb565b6001600160a01b039092166020928302919091019091015280611e2f816138cd565b915050611dd2565b6060611e428261233a565b611e5a57505060408051602081019091526000815290565b611e63826123d2565b611ed85760665460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401600060405180830381865afa158015611eb0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106ed91908101906135b0565b60655460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401611d2a565b60405162461bcd60e51b815260206004820152601f60248201527f50726f78795265616465723a20554e535550504f525445445f4d4554484f440060448201526000906064016107bc565b611f5c6126e1565b828114611fab5760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107bc565b60005b83811015610e4a57612006858583818110611fcb57611fcb6136bb565b9050602002810190611fdd91906136d1565b858585818110611fef57611fef6136bb565b905060200281019061200191906136d1565b612b3e565b80612010816138cd565b915050611fae565b6120206126e1565b6001600160a01b0381166107c55760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107bc565b61208d6126e1565b60005b83811015610e4a576120c68585838181106120ad576120ad6136bb565b90506020028101906120bf91906136d1565b8585612b3e565b806120d0816138cd565b915050612090565b600080606080856001600160401b038111156120f6576120f66133da565b60405190808252806020026020018201604052801561212957816020015b60608152602001906001900390816121145790505b509150856001600160401b03811115612144576121446133da565b60405190808252806020026020018201604052801561217757816020015b60608152602001906001900390816121625790505b509050612183856123d2565b156122845760655460405163b3f9e4cb60e01b8152600481018790526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa1580156121d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121f591906133bd565b935061220085612bad565b60655460405163170b5fa560e31b81529194506001600160a01b03169063b85afd2890612235908a908a908a90600401613ab5565b600060405180830381865afa158015612252573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261227a9190810190613b72565b9092509050610652565b61228d85612617565b93506122988561296c565b92506001600160a01b0384163b151580156122b4575060008251115b156106525760405163170b5fa560e31b81526001600160a01b0385169063b85afd28906122e9908a908a908a90600401613ab5565b600060405180830381865afa92505050801561232757506040513d6000823e601f3d908101601f191682016040526123249190810190613b72565b60015b1561065257909250905093509350935093565b6000612345826123d2565b6123645760006123548361296c565b6001600160a01b03161415610632565b606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e79906024015b602060405180830381865afa1580156123ae573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190613699565b6066546000906001600160a01b031615806106325750606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401612391565b60006124236116e6565b9050817fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c812190580546001600160a01b0319166001600160a01b03928316179055604051838216918316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b606082516001600160401b038111156124b0576124b06133da565b6040519080825280602002602001820160405280156124e357816020015b60608152602001906001900390816124ce5790505b5090506124ef826123d2565b1561257257606554604051630dec660d60e11b81526001600160a01b0390911690631bd8cc1a906125269086908690600401613bcb565b600060405180830381865afa158015612543573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261256b9190810190613bed565b9050610632565b600061257d83612617565b90506001600160a01b0381163b15158015612599575060008451115b15611a7857604051630dec660d60e11b81526001600160a01b03821690631bd8cc1a906125cc9087908790600401613bcb565b600060405180830381865afa92505050801561260a57506040513d6000823e601f3d908101601f191682016040526126079190810190613bed565b60015b15611a7857949350505050565b60665460405163b3f9e4cb60e01b8152600481018390526000916001600160a01b03169063b3f9e4cb906024015b602060405180830381865afa92505050801561267e575060408051601f3d908101601f1916820190925261267b918101906133bd565b60015b61063257506000919050565b600054610100900460ff166110a75760405162461bcd60e51b81526004016107bc90613c21565b600054610100900460ff166126d85760405162461bcd60e51b81526004016107bc90613c21565b6110a733612419565b336126ea6116e6565b6001600160a01b0316146110a75760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107bc565b600061274b826123d2565b612758576106ed8261296c565b61063282612bad565b6000806060846001600160401b0381111561277e5761277e6133da565b6040519080825280602002602001820160405280156127b157816020015b606081526020019060019003908161279c5790505b5090506127bd846123d2565b156128bb5760655460405163b3f9e4cb60e01b8152600481018690526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561280b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061282f91906133bd565b925061283a84612bad565b606554604051630dec660d60e11b81529193506001600160a01b031690631bd8cc1a9061286f90899089908990600401613c6c565b600060405180830381865afa15801561288c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526128b49190810190613bed565b905061172b565b6128c484612617565b92506128cf8461296c565b91506001600160a01b0383163b151580156128e957508415155b1561172b57604051630dec660d60e11b81526001600160a01b03841690631bd8cc1a9061291e90899089908990600401613c6c565b600060405180830381865afa92505050801561295c57506040513d6000823e601f3d908101601f191682016040526129599190810190613bed565b60015b1561172b57905093509350939050565b6066546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401612645565b60606001600160a01b0383163b612a065760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b60648201526084016107bc565b600080846001600160a01b031684604051612a2191906139f3565b600060405180830381855af49150503d8060008114612a5c576040519150601f19603f3d011682016040523d82523d6000602084013e612a61565b606091505b5091509150612a898282604051806060016040528060278152602001613c8160279139612bdf565b95945050505050565b6060806000612aa388888888611118565b90506000612ab18286612495565b905060005b8151811015612b31576000828281518110612ad357612ad36136bb565b6020026020010151511115612b1f57828181518110612af457612af46136bb565b60200260200101519350818181518110612b1057612b106136bb565b60200260200101519450612b31565b80612b29816138cd565b915050612ab6565b5050509550959350505050565b818160678686604051612b52929190613717565b90815260200160405180910390209182612b6d9291906137f8565b507f0bf4b04a0f6d7d0800284e1abb0f58f795c0a25b9088634b6ab847be51001dec8484604051612b9f9291906138e6565b60405180910390a150505050565b6065546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401612645565b60608315612bee5750816107e9565b825115612bfe5782518084602001fd5b8160405162461bcd60e51b81526004016107bc9190612f12565b50805460008255906000526020600020908101906107ce91905b80821115612c4f576000612c468282612c53565b50600101612c32565b5090565b508054612c5f90613770565b6000825580601f10612c6f575050565b601f0160209004906000526020600020908101906107ce91905b80821115612c4f5760008155600101612c89565b600060208284031215612caf57600080fd5b81356001600160e01b0319811681146107e957600080fd5b60008083601f840112612cd957600080fd5b5081356001600160401b03811115612cf057600080fd5b6020830191508360208260051b8501011115610f9057600080fd5b600080600060408486031215612d2057600080fd5b83356001600160401b03811115612d3657600080fd5b612d4286828701612cc7565b909790965060209590950135949350505050565b60005b83811015612d71578181015183820152602001612d59565b50506000910152565b60008151808452612d92816020860160208601612d56565b601f01601f19169290920160200192915050565b600082825180855260208086019550808260051b84010181860160005b84811015612df157601f19868403018952612ddf838351612d7a565b98840198925090830190600101612dc3565b5090979650505050505050565b6001600160a01b03858116825284166020820152608060408201819052600090612e2a90830185612da6565b8281036060840152611cf08185612da6565b600060208284031215612e4e57600080fd5b5035919050565b6001600160a01b03811681146107ce57600080fd5b600060208284031215612e7c57600080fd5b81356107e981612e55565b6020815260006107e96020830184612da6565b60008083601f840112612eac57600080fd5b5081356001600160401b03811115612ec357600080fd5b602083019150836020828501011115610f9057600080fd5b600080600060408486031215612ef057600080fd5b83356001600160401b03811115612f0657600080fd5b612d4286828701612e9a565b6020815260006107e96020830184612d7a565b60008060208385031215612f3857600080fd5b82356001600160401b03811115612f4e57600080fd5b612f5a85828601612cc7565b90969095509350505050565b60008060408385031215612f7957600080fd5b8235612f8481612e55565b946020939093013593505050565b60008060408385031215612fa557600080fd5b8235612fb081612e55565b91506020830135612fc081612e55565b809150509250929050565b60008060008060408587031215612fe157600080fd5b84356001600160401b0380821115612ff857600080fd5b61300488838901612cc7565b9096509450602087013591508082111561301d57600080fd5b5061302a87828801612cc7565b95989497509550505050565b6000806040838503121561304957600080fd5b50508035926020909101359150565b60408152600061306b6040830185612d7a565b8281036020840152612a898185612d7a565b6000806000806040858703121561309357600080fd5b84356001600160401b03808211156130aa57600080fd5b6130b688838901612e9a565b909650945060208701359150808211156130cf57600080fd5b5061302a87828801612e9a565b600081518084526020808501945080840160005b838110156131155781516001600160a01b0316875295820195908201906001016130f0565b509495945050505050565b60008282518085526020808601955060058183821b8501018287016000805b868110156131ac57601f1988850381018c5283518051808752908801908887019080891b88018a01865b8281101561319557858a8303018452613183828651612d7a565b948c0194938c01939150600101613169565b509e8a019e9750505093870193505060010161313f565b50919998505050505050505050565b6080815260006131ce60808301876130dc565b82810360208401526131e081876130dc565b905082810360408401526131f48186613120565b90508281036060840152611cf08185613120565b6001600160a01b03848116825283166020820152606060408201819052600090612a8990830184612da6565b60608152600061324760608301866130dc565b828103602084015261325981866130dc565b9050828103604084015261326d8185613120565b9695505050505050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156132cc57603f198886030184526132ba858351612d7a565b9450928501929085019060010161329e565b5092979650505050505050565b6040815260006132ec6040830185612da6565b8281036020840152612a898185612da6565b60008060008060006060868803121561331657600080fd5b85356001600160401b038082111561332d57600080fd5b61333989838a01612e9a565b9097509550602088013591508082111561335257600080fd5b5061335f88828901612e9a565b96999598509660400135949350505050565b6020815260006107e960208301846130dc565b6000806000806040858703121561339a57600080fd5b84356001600160401b03808211156133b157600080fd5b6130b688838901612cc7565b6000602082840312156133cf57600080fd5b81516107e981612e55565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715613418576134186133da565b604052919050565b60006001600160401b03821115613439576134396133da565b5060051b60200190565b60006001600160401b0382111561345c5761345c6133da565b50601f01601f191660200190565b600061347d61347884613420565b6133f0565b80848252602080830192508560051b85013681111561349b57600080fd5b855b818110156135125780356001600160401b038111156134bc5760008081fd5b870136601f8201126134ce5760008081fd5b80356134dc61347882613443565b81815236868385010111156134f15760008081fd5b8186840187830137600091810186019190915286525093820193820161349d565b50919695505050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60408152600061355b60408301858761351e565b9050826020830152949350505050565b600082601f83011261357c57600080fd5b815161358a61347882613443565b81815284602083860101111561359f57600080fd5b6114e8826020830160208701612d56565b6000602082840312156135c257600080fd5b81516001600160401b038111156135d857600080fd5b6114e88482850161356b565b60008383855260208086019550808560051b8301018460005b87811015612df157848303601f19018952813536889003601e1901811261362357600080fd5b870184810190356001600160401b0381111561363e57600080fd5b80360382131561364d57600080fd5b61365885828461351e565b9a86019a94505050908301906001016135fd565b6020815260006107e66020830184866135e4565b60006020828403121561369257600080fd5b5051919050565b6000602082840312156136ab57600080fd5b815180151581146107e957600080fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e198436030181126136e857600080fd5b8301803591506001600160401b0382111561370257600080fd5b602001915036819003821315610f9057600080fd5b8183823760009101908152919050565b6000808335601e1984360301811261373e57600080fd5b8301803591506001600160401b0382111561375857600080fd5b6020019150600581901b3603821315610f9057600080fd5b600181811c9082168061378457607f821691505b6020821081036137a457634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115610bf057600081815260208120601f850160051c810160208610156137d15750805b601f850160051c820191505b818110156137f0578281556001016137dd565b505050505050565b6001600160401b0383111561380f5761380f6133da565b6138238361381d8354613770565b836137aa565b6000601f841160018114613857576000851561383f5750838201355b600019600387901b1c1916600186901b178355610e4a565b600083815260209020601f19861690835b828110156138885786850135825560209485019460019092019101613868565b50868210156138a55760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b634e487b7160e01b600052601160045260246000fd5b6000600182016138df576138df6138b7565b5060010190565b6020815260006107e660208301848661351e565b6000806040838503121561390d57600080fd5b82516001600160401b038082111561392457600080fd5b6139308683870161356b565b9350602085015191508082111561394657600080fd5b506139538582860161356b565b9150509250929050565b80820180821115610632576106326138b7565b60008a51613982818460208f01612d56565b8a5190830190613996818360208f01612d56565b8a519101906139a9818360208e01612d56565b0187898237600090880190815286516139c6818360208b01612d56565b0184868237600090850190815283516139e3818360208801612d56565b019b9a5050505050505050505050565b60008251613a05818460208701612d56565b9190910192915050565b60008751613a21818460208c01612d56565b875190830190613a35818360208c01612d56565b8751910190613a48818360208b01612d56565b018486823760009085019081528351613a65818360208801612d56565b0198975050505050505050565b60008451613a84818460208901612d56565b845190830190613a98818360208901612d56565b8451910190613aab818360208801612d56565b0195945050505050565b6040808252810183905260006001600160fb1b03841115613ad557600080fd5b8360051b808660608501376020830193909352500160600192915050565b600082601f830112613b0457600080fd5b81516020613b1461347883613420565b82815260059290921b84018101918181019086841115613b3357600080fd5b8286015b84811015611d7e5780516001600160401b03811115613b565760008081fd5b613b648986838b010161356b565b845250918301918301613b37565b60008060408385031215613b8557600080fd5b82516001600160401b0380821115613b9c57600080fd5b613ba886838701613af3565b93506020850151915080821115613bbe57600080fd5b5061395385828601613af3565b604081526000613bde6040830185612da6565b90508260208301529392505050565b600060208284031215613bff57600080fd5b81516001600160401b03811115613c1557600080fd5b6114e884828501613af3565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60408152600061355b6040830185876135e456fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a","storage":{}},"0xc2110388dd54228ae0a834119457ede938bf0b57":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061021e5760003560e01c80638da5cb5b11610123578063acf1a841116100ab578063d547741f1161006f578063d547741f14610682578063f14fcbc8146106a2578063f23a6e61146106c2578063f2fde38b146106e2578063ffa1ad741461070257600080fd5b8063acf1a841146105e0578063bc197c8114610600578063c0c53b8b14610620578063cf01585314610640578063d53913931461066057600080fd5b8063a0e3aef1116100f2578063a0e3aef114610534578063a217fddf14610554578063a3f4df7e14610569578063a4247400146105a0578063aa271e1a146105c057600080fd5b80638da5cb5b146104c157806391d14854146104df578063983b2d56146104ff578063986502751461051f57600080fd5b80635fc1964f116101a65780636ccbae5f116101755780636ccbae5f14610439578063715018a61461045957806371e2a6571461046e57806381c81d351461048e57806383e7f6ff146104a157600080fd5b80635fc1964f146103ae578063634486da146103ce5780636352211e146103e15780636a8be89e1461041957600080fd5b80632f2ff15d116101ed5780632f2ff15d146103035780633092afd51461032557806336568abe14610345578063423f6cef14610365578063572b6c051461038557600080fd5b806301ffc9a71461022a578063150b7a021461025f5780631bf7e13e14610298578063248a9ca3146102c557600080fd5b3661022557005b600080fd5b34801561023657600080fd5b5061024a6102453660046125f2565b610733565b60405190151581526020015b60405180910390f35b34801561026b57600080fd5b5061027f61027a366004612672565b610779565b6040516001600160e01b03199091168152602001610256565b3480156102a457600080fd5b506102b86102b33660046126e4565b6108cb565b60405161025691906127a4565b3480156102d157600080fd5b506102f56102e03660046127b7565b600090815260fb602052604090206001015490565b604051908152602001610256565b34801561030f57600080fd5b5061032361031e3660046127d0565b610997565b005b34801561033157600080fd5b50610323610340366004612800565b6109c1565b34801561035157600080fd5b506103236103603660046127d0565b6109d5565b34801561037157600080fd5b5061032361038036600461281d565b610a68565b34801561039157600080fd5b5061024a6103a0366004612800565b6001600160a01b0316301490565b3480156103ba57600080fd5b506103236103c936600461288f565b610bd9565b6103236103dc366004612800565b610c21565b3480156103ed57600080fd5b506104016103fc3660046127b7565b610ce4565b6040516001600160a01b039091168152602001610256565b34801561042557600080fd5b50610323610434366004612800565b610cef565b34801561044557600080fd5b506102f56104543660046127b7565b610d38565b34801561046557600080fd5b50610323610d7e565b34801561047a57600080fd5b5061032361048936600461288f565b610d92565b61032361049c366004612800565b610dda565b3480156104ad57600080fd5b506102f56104bc366004612934565b610e57565b3480156104cd57600080fd5b506097546001600160a01b0316610401565b3480156104eb57600080fd5b5061024a6104fa3660046127d0565b610efa565b34801561050b57600080fd5b5061032361051a366004612800565b610f25565b34801561052b57600080fd5b50610323610f36565b34801561054057600080fd5b506102f561054f366004612a5c565b610f50565b34801561056057600080fd5b506102f5600081565b34801561057557600080fd5b506102b86040518060400160405280600b81526020016a454e5320437573746f647960a81b81525081565b3480156105ac57600080fd5b5061024a6105bb3660046126e4565b610ffc565b3480156105cc57600080fd5b5061024a6105db366004612800565b61104f565b3480156105ec57600080fd5b506103236105fb366004612934565b611069565b34801561060c57600080fd5b5061027f61061b366004612b35565b611222565b34801561062c57600080fd5b5061032361063b366004612bf3565b6112db565b34801561064c57600080fd5b5061032361065b366004612c3e565b611485565b34801561066c57600080fd5b506102f56000805160206133f583398151915281565b34801561068e57600080fd5b5061032361069d3660046127d0565b611592565b3480156106ae57600080fd5b506103236106bd3660046127b7565b6115b7565b3480156106ce57600080fd5b5061027f6106dd366004612d20565b61162b565b3480156106ee57600080fd5b506103236106fd366004612800565b6116bc565b34801561070e57600080fd5b506102b860405180604001604052806005815260200164302e312e3360d81b81525081565b60006001600160e01b03198216630a85bd0160e11b148061076457506001600160e01b03198216630271189760e51b145b806107735750610773826116d8565b92915050565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004546000906001600160a01b0316806107b061170d565b6001600160a01b0316036108a957600080806107ce86880188612d9b565b9250925092506107dd8361171c565b6001600160a01b03841663b88d4fde30600080516020613415833981519152546040516001600160a01b03909116908c9061082390879030906000908b90602001612dfc565b6040516020818303038152906040526040518563ffffffff1660e01b81526004016108519493929190612e3c565b600060405180830381600087803b15801561086b57600080fd5b505af115801561087f573d6000803e3d6000fd5b5050505061089561088f8261174e565b846117d3565b50630a85bd0160e11b93506108c292505050565b6040516344e7d94960e01b815260040160405180910390fd5b95945050505050565b606060005a90506108dd858585610ffc565b6108fa57604051638baa579f60e01b815260040160405180910390fd5b61098c61090a6020870187612800565b3060408801358461091e60608b018b612e6f565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061185e92505050565b9150505b9392505050565b600082815260fb60205260409020600101546109b28161193f565b6109bc8383611950565b505050565b6109c96119d7565b6109d281611a50565b50565b6109dd61170d565b6001600160a01b0316816001600160a01b031614610a5a5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b610a648282611a68565b5050565b80610a7161170d565b6001600160a01b0316610a8382611aed565b6001600160a01b031614610ac55780610a9a61170d565b604051637ea58b1160e01b815260048101929092526001600160a01b03166024820152604401610a51565b610ace82611c03565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052600090610b22906060015b6040516020818303038152906040528051906020012090565b80546001600160a01b0319166001600160a01b0392909216919091179055600060008051602061341583398151915254604051637921219560e11b81523060048201526001600160a01b038681166024830152604482018690526001606483015260a06084830152600060a48301529091169150819063f242432a9060c401600060405180830381600087803b158015610bbb57600080fd5b505af1158015610bcf573d6000803e3d6000fd5b5050505050505050565b610be16119d7565b60005b8151811015610a6457610c0f828281518110610c0257610c02612eb5565b6020026020010151611a50565b80610c1981612ee1565b915050610be4565b610c2c6105db61170d565b610c485760405162461bcd60e51b8152600401610a5190612efa565b6001600160a01b038116610c9e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a51565b610ca781611c1c565b610caf610f36565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610a64573d6000803e3d6000fd5b600061077382611aed565b610cf76119d7565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c500480546001600160a01b0319166001600160a01b0392909216919091179055565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a838156020820152908101829052600090610d7790606001610b09565b5492915050565b610d866119d7565b610d906000611c34565b565b610d9a6119d7565b60005b8151811015610a6457610dc8828281518110610dbb57610dbb612eb5565b6020026020010151611c1c565b80610dd281612ee1565b915050610d9d565b610de56105db61170d565b610e015760405162461bcd60e51b8152600401610a5190612efa565b6001600160a01b038116610ca75760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a51565b6000805160206133d5833981519152546040516383e7f6ff60e01b81526000916001600160a01b031690829082906383e7f6ff90610e9d90899089908990600401612f58565b6040805180830381865afa158015610eb9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610edd9190612f7c565b60208101518151919250610ef091612fca565b9695505050505050565b600091825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610f2d6119d7565b6109d281611c1c565b610d906000805160206133f583398151915261036061170d565b6000805160206133d5833981519152546000906001600160a01b0316806365a69dcf8d85610f7e5730610f80565b8d5b8d8d8d8d8d8d8d6040518a63ffffffff1660e01b8152600401610fab9998979695949392919061306e565b602060405180830381865afa158015610fc8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fec91906130de565b9c9b505050505050505050505050565b600061104761100a856130f7565b3085858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611c8692505050565b949350505050565b60006107736000805160206133f583398151915283610efa565b6110746105db61170d565b6110905760405162461bcd60e51b8152600401610a5190612efa565b6002603354036110e25760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a51565b60026033556000805160206133d5833981519152546040516383e7f6ff60e01b81526001600160a01b039091169060009082906383e7f6ff9061112d90889088908890600401612f58565b6040805180830381865afa158015611149573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061116d9190612f7c565b6020810151815191925061118091612fca565b4710156111a05760405163050205f960e01b815260040160405180910390fd5b816001600160a01b031663acf1a841826020015183600001516111c39190612fca565b8787876040518563ffffffff1660e01b81526004016111e493929190612f58565b6000604051808303818588803b1580156111fd57600080fd5b505af1158015611211573d6000803e3d6000fd5b505060016033555050505050505050565b6000600080516020613415833981519152546001600160a01b031661124561170d565b6001600160a01b03161461126c576040516344e7d94960e01b815260040160405180910390fd5b600061127a83850185612800565b90506112858161171c565b60005b878110156112c4576112b28989838181106112a5576112a5612eb5565b90506020020135836117d3565b806112bc81612ee1565b915050611288565b5063bc197c8160e01b9a9950505050505050505050565b600054610100900460ff16158080156112fb5750600054600160ff909116105b806113155750303b158015611315575060005460ff166001145b6113785760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610a51565b6000805460ff19166001179055801561139b576000805461ff0019166101001790555b6000805160206133d583398151915280546001600160a01b038087166001600160a01b03199283161790925560008051602061341583398151915280548684169083161790557ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004805492851692909116919091179055611419611dc5565b611421611df3565b611429611df3565b611431611e1a565b611439611e51565b801561147f576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6114906105db61170d565b6114ac5760405162461bcd60e51b8152600401610a5190612efa565b6002603354036114fe5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a51565b600260338190555060006115478c8c8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061174e92505050565b905061155281611c03565b6115708c8c846115625730611564565b8c5b8c8c8c8c8c8c8c611e8a565b8161157f5761157f818b6117d3565b5050600160335550505050505050505050565b600082815260fb60205260409020600101546115ad8161193f565b6109bc8383611a68565b60006000805160206133d583398151915254604051631e29f97960e31b8152600481018490526001600160a01b039091169150819063f14fcbc890602401600060405180830381600087803b15801561160f57600080fd5b505af1158015611623573d6000803e3d6000fd5b505050505050565b6000600080516020613415833981519152546001600160a01b031661164e61170d565b6001600160a01b031614611675576040516344e7d94960e01b815260040160405180910390fd5b6001600160a01b038616156116a957600061169283850185612800565b905061169d8161171c565b6116a786826117d3565b505b5063f23a6e6160e01b9695505050505050565b6116c46119d7565b6116cd81611fd5565b6109d260008261204b565b60006001600160e01b03198216637965db0b60e01b148061077357506301ffc9a760e01b6001600160e01b0319831614610773565b6000611717612055565b905090565b6001600160a01b0381166109d25760405163b20f76e360e01b81526001600160a01b0382166004820152602401610a51565b60007f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae60001b826040516020016117859190613195565b604051602081830303815290604052805190602001206040516020016117b5929190918252602082015260400190565b60408051601f19818403018152919052805160209091012092915050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052819061181190606001610b09565b80546001600160a01b0319166001600160a01b039283161790556040519082169083907f45aa97e368889fb3527c1db60c59c2ae91e82f21778613449e46d4208c1c4b1290600090a35050565b606061186985612073565b600080876001600160a01b0316866118838b8a89896120d9565b6040516118909190613195565b60006040518083038160008787f1925050503d80600081146118ce576040519150601f19603f3d011682016040523d82523d6000602084013e6118d3565b606091505b5090925090506118e4603f876131b1565b5a116118f2576118f26131d3565b61193282826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c4544000000000000815250612109565b9998505050505050505050565b6109d28161194b61170d565b612142565b61195a8282610efa565b610a6457600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff1916600117905561199361170d565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6119df61170d565b6001600160a01b03166119fa6097546001600160a01b031690565b6001600160a01b031614610d905760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a51565b6109d26000805160206133f583398151915282611592565b611a728282610efa565b15610a6457600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff19169055611aa961170d565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101829052600090611b2c90606001610b09565b546001600160a01b0316905080611b595760405163124bad6360e31b815260048101839052602401610a51565b30600080516020613415833981519152546040516331a9108f60e11b8152600481018590526001600160a01b0390911690636352211e90602401602060405180830381865afa158015611bb0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bd491906131e9565b6001600160a01b031614611bfe576040516303b673fd60e21b815260048101839052602401610a51565b919050565b303303611c13576109d2816121a6565b6109d281612073565b6109d26000805160206133f58339815191528261204b565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015611ccd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cf191906130de565b90506000611d9f866060015180519060200120868860200151604051602001611d3f9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b9050818660200151148015610ef057508551610ef0906001600160a01b031682866121d0565b600054610100900460ff16611dec5760405162461bcd60e51b8152600401610a5190613206565b6001603355565b600054610100900460ff16610d905760405162461bcd60e51b8152600401610a5190613206565b600054610100900460ff16611e415760405162461bcd60e51b8152600401610a5190613206565b610d90611e4c61170d565b611c34565b600054610100900460ff16611e785760405162461bcd60e51b8152600401610a5190613206565b610d906000611e8561170d565b61204b565b6000805160206133d5833981519152546040516383e7f6ff60e01b81526001600160a01b039091169060009082906383e7f6ff90611ed0908f908f908e90600401612f58565b6040805180830381865afa158015611eec573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f109190612f7c565b60208101518151919250611f2391612fca565b471015611f435760405163050205f960e01b815260040160405180910390fd5b816001600160a01b03166374694a2b82602001518360000151611f669190612fca565b8e8e8e8e8e8e8e8e8e8e6040518c63ffffffff1660e01b8152600401611f959a99989796959493929190613251565b6000604051808303818588803b158015611fae57600080fd5b505af1158015611fc2573d6000803e3d6000fd5b5050505050505050505050505050505050565b611fdd6119d7565b6001600160a01b0381166120425760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610a51565b6109d281611c34565b610a648282611950565b600030330361206b575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290526000906060016040516020818303038152906040528051906020012090506120c88190565b546120d4906001612fca565b905550565b60608285856040516020016120f0939291906132c3565b6040516020818303038152906040529050949350505050565b60608315612118575081610990565b8251156121285782518084602001fd5b8160405162461bcd60e51b8152600401610a5191906127a4565b61214c8282610efa565b610a6457612164816001600160a01b03166014612312565b61216f836020612312565b604051602001612180929190613302565b60408051601f198184030181529082905262461bcd60e51b8252610a51916004016127a4565b6121ae6124ad565b81146109d257604051635637b6af60e11b815260048101829052602401610a51565b60008060006121df85856124c0565b909250905060008160048111156121f8576121f8613377565b1480156122165750856001600160a01b0316826001600160a01b0316145b1561222657600192505050610990565b600080876001600160a01b0316631626ba7e60e01b888860405160240161224e92919061338d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161228c9190613195565b600060405180830381855afa9150503d80600081146122c7576040519150601f19603f3d011682016040523d82523d6000602084013e6122cc565b606091505b50915091508180156122df575080516020145b801561230657508051630b135d3f60e11b9061230490830160209081019084016130de565b145b98975050505050505050565b606060006123218360026133a6565b61232c906002612fca565b6001600160401b0381111561234357612343612849565b6040519080825280601f01601f19166020018201604052801561236d576020820181803683370190505b509050600360fc1b8160008151811061238857612388612eb5565b60200101906001600160f81b031916908160001a905350600f60fb1b816001815181106123b7576123b7612eb5565b60200101906001600160f81b031916908160001a90535060006123db8460026133a6565b6123e6906001612fca565b90505b600181111561245e576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061241a5761241a612eb5565b1a60f81b82828151811061243057612430612eb5565b60200101906001600160f81b031916908160001a90535060049490941c93612457816133bd565b90506123e9565b5083156109905760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610a51565b60003033036120705750601f1936013590565b60008082516041036124f65760208301516040840151606085015160001a6124ea87828585612505565b945094505050506124fe565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561253c57506000905060036125e9565b8460ff16601b1415801561255457508460ff16601c14155b1561256557506000905060046125e9565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156125b9573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166125e2576000600192509250506125e9565b9150600090505b94509492505050565b60006020828403121561260457600080fd5b81356001600160e01b03198116811461099057600080fd5b6001600160a01b03811681146109d257600080fd5b60008083601f84011261264357600080fd5b5081356001600160401b0381111561265a57600080fd5b6020830191508360208285010111156124fe57600080fd5b60008060008060006080868803121561268a57600080fd5b85356126958161261c565b945060208601356126a58161261c565b93506040860135925060608601356001600160401b038111156126c757600080fd5b6126d388828901612631565b969995985093965092949392505050565b6000806000604084860312156126f957600080fd5b83356001600160401b038082111561271057600080fd5b908501906080828803121561272457600080fd5b9093506020850135908082111561273a57600080fd5b5061274786828701612631565b9497909650939450505050565b60005b8381101561276f578181015183820152602001612757565b50506000910152565b60008151808452612790816020860160208601612754565b601f01601f19169290920160200192915050565b6020815260006109906020830184612778565b6000602082840312156127c957600080fd5b5035919050565b600080604083850312156127e357600080fd5b8235915060208301356127f58161261c565b809150509250929050565b60006020828403121561281257600080fd5b81356109908161261c565b6000806040838503121561283057600080fd5b823561283b8161261c565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561288757612887612849565b604052919050565b600060208083850312156128a257600080fd5b82356001600160401b03808211156128b957600080fd5b818501915085601f8301126128cd57600080fd5b8135818111156128df576128df612849565b8060051b91506128f084830161285f565b818152918301840191848101908884111561290a57600080fd5b938501935b8385101561230657843592506129248361261c565b828252938501939085019061290f565b60008060006040848603121561294957600080fd5b83356001600160401b0381111561295f57600080fd5b61296b86828701612631565b909790965060209590950135949350505050565b60006001600160401b0383111561299857612998612849565b6129ab601f8401601f191660200161285f565b90508281528383830111156129bf57600080fd5b828260208301376000602084830101529392505050565b600082601f8301126129e757600080fd5b6109908383356020850161297f565b60008083601f840112612a0857600080fd5b5081356001600160401b03811115612a1f57600080fd5b6020830191508360208260051b85010111156124fe57600080fd5b80358015158114611bfe57600080fd5b803561ffff81168114611bfe57600080fd5b6000806000806000806000806000806101208b8d031215612a7c57600080fd5b8a356001600160401b0380821115612a9357600080fd5b612a9f8e838f016129d6565b9b5060208d01359150612ab18261261c565b90995060408c0135985060608c0135975060808c013590612ad18261261c565b90965060a08c01359080821115612ae757600080fd5b50612af48d828e016129f6565b9096509450612b07905060c08c01612a3a565b9250612b1560e08c01612a4a565b9150612b246101008c01612a3a565b90509295989b9194979a5092959850565b60008060008060008060008060a0898b031215612b5157600080fd5b8835612b5c8161261c565b97506020890135612b6c8161261c565b965060408901356001600160401b0380821115612b8857600080fd5b612b948c838d016129f6565b909850965060608b0135915080821115612bad57600080fd5b612bb98c838d016129f6565b909650945060808b0135915080821115612bd257600080fd5b50612bdf8b828c01612631565b999c989b5096995094979396929594505050565b600080600060608486031215612c0857600080fd5b8335612c138161261c565b92506020840135612c238161261c565b91506040840135612c338161261c565b809150509250925092565b60008060008060008060008060008060006101208c8e031215612c6057600080fd5b6001600160401b03808d351115612c7657600080fd5b612c838e8e358f01612631565b909c509a50612c9560208e013561261c565b60208d0135995060408d0135985060608d01359750612cb760808e013561261c565b60808d013596508060a08e01351115612ccf57600080fd5b50612ce08d60a08e01358e016129f6565b9095509350612cf160c08d01612a3a565b9250612cff60e08d01612a4a565b9150612d0e6101008d01612a3a565b90509295989b509295989b9093969950565b60008060008060008060a08789031215612d3957600080fd5b8635612d448161261c565b95506020870135612d548161261c565b9450604087013593506060870135925060808701356001600160401b03811115612d7d57600080fd5b612d8989828a01612631565b979a9699509497509295939492505050565b600080600060608486031215612db057600080fd5b8335612dbb8161261c565b92506020840135612dcb8161261c565b915060408401356001600160401b03811115612de657600080fd5b612df2868287016129d6565b9150509250925092565b608081526000612e0f6080830187612778565b6001600160a01b03958616602084015261ffff949094166040830152509216606090920191909152919050565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090610ef090830184612778565b6000808335601e19843603018112612e8657600080fd5b8301803591506001600160401b03821115612ea057600080fd5b6020019150368190038213156124fe57600080fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201612ef357612ef3612ecb565b5060010190565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b604081526000612f6c604083018587612f2f565b9050826020830152949350505050565b600060408284031215612f8e57600080fd5b604051604081018181106001600160401b0382111715612fb057612fb0612849565b604052825181526020928301519281019290925250919050565b8082018082111561077357610773612ecb565b81835260006020808501808196508560051b810191508460005b878110156130615782840389528135601e1988360301811261301857600080fd5b870185810190356001600160401b0381111561303357600080fd5b80360382131561304257600080fd5b61304d868284612f2f565b9a87019a9550505090840190600101612ff7565b5091979650505050505050565b60006101008083526130828184018d612778565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a085015290506130bc818789612fdd565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b6000602082840312156130f057600080fd5b5051919050565b60006080823603121561310957600080fd5b604051608081016001600160401b03828210818311171561312c5761312c612849565b816040528435915061313d8261261c565b8183526020850135602084015260408501356040840152606085013591508082111561316857600080fd5b50830136601f82011261317a57600080fd5b6131893682356020840161297f565b60608301525092915050565b600082516131a7818460208701612754565b9190910192915050565b6000826131ce57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b6000602082840312156131fb57600080fd5b81516109908161261c565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60006101008083526132668184018d8f612f2f565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a085015290506132a0818789612fdd565b94151560c0840152505061ffff9190911660e09091015298975050505050505050565b600084516132d5818460208901612754565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081526000835161333a816017850160208801612754565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835161336b816028840160208801612754565b01602801949350505050565b634e487b7160e01b600052602160045260246000fd5b8281526040602082015260006110476040830184612778565b808202811582820484141761077357610773612ecb565b6000816133cc576133cc612ecb565b50600019019056fe412386de53449251cbf7ce1f4c6a038bf9c0746e62d331b08ef0c3fa7d0ab6729f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a660793a5062d506d35cc8f1beda67ee5028c16bfcd9c923d5bfc439c04bd929b1a164736f6c6343000811000a","storage":{"0x0":"0xff"}},"0xc58206842e4030a3b2cabc78780ae7635173c533":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106102325760003560e01c80637c69eae211610130578063b5466669116100b8578063d284d97a1161007c578063d284d97a14610d4e578063d8d3cc6e14610dbc578063e67ca8a314610e3f578063e985e9c514610e5c578063ebf0c71714610e8a57610232565b8063b5466669146109ce578063b88d4fde14610a51578063c29b52f914610b15578063c87b56dd14610c5e578063ce9fb82b14610c7b57610232565b8063a22cb465116100ff578063a22cb4651461090b578063a7fc7a0714610939578063ab3b87fe1461095f578063b3f9e4cb1461098b578063b429afeb146109a857610232565b80637c69eae21461076457806395d89b41146107e75780639d743989146107ef5780639e5be9a51461087d57610232565b806342842e0e116101be5780635cbe1112116101825780635cbe11121461061d5780636352211e1461069257806366ac3b68146106af57806368b62d32146106b757806370a082311461073e57610232565b806342842e0e146104ed57806342966c6814610523578063430c208114610540578063538361a71461056c57806357aac5741461058f57610232565b8063081812fc11610205578063081812fc146103fa578063095ea7b3146104335780632392c1891461045f57806323b872dd1461048b5780632525d06a146104c157610232565b806301ffc9a71461023757806302759c37146102725780630467e014146102aa57806306fdde031461037d575b600080fd5b61025e6004803603602081101561024d57600080fd5b50356001600160e01b031916610e92565b604080519115158252519081900360200190f35b6102a86004803603606081101561028857600080fd5b506001600160a01b03813581169160208101359091169060400135610eb1565b005b6102a8600480360360808110156102c057600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156102ef57600080fd5b82018360208201111561030157600080fd5b803590602001918460018302840111600160201b8311171561032257600080fd5b919390929091602081019035600160201b81111561033f57600080fd5b82018360208201111561035157600080fd5b803590602001918460018302840111600160201b8311171561037257600080fd5b509092509050610ed3565b610385610f62565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103bf5781810151838201526020016103a7565b50505050905090810190601f1680156103ec5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6104176004803603602081101561041057600080fd5b5035610f84565b604080516001600160a01b039092168252519081900360200190f35b6102a86004803603604081101561044957600080fd5b506001600160a01b038135169060200135610fe6565b6102a86004803603604081101561047557600080fd5b506001600160a01b0381351690602001356110f7565b6102a8600480360360608110156104a157600080fd5b506001600160a01b03813581169160208101359091169060400135611115565b6102a8600480360360408110156104d757600080fd5b506001600160a01b03813516906020013561115a565b6102a86004803603606081101561050357600080fd5b506001600160a01b0381358116916020810135909116906040013561117a565b6102a86004803603602081101561053957600080fd5b5035611195565b61025e6004803603604081101561055657600080fd5b506001600160a01b0381351690602001356111e6565b6102a86004803603604081101561058257600080fd5b50803590602001356111f9565b6102a8600480360360808110156105a557600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156105df57600080fd5b8201836020820111156105f157600080fd5b803590602001918460018302840111600160201b8311171561061257600080fd5b50909250905061124f565b6102a86004803603604081101561063357600080fd5b81359190810190604081016020820135600160201b81111561065457600080fd5b82018360208201111561066657600080fd5b803590602001918460018302840111600160201b8311171561068757600080fd5b5090925090506112be565b610417600480360360208110156106a857600080fd5b5035611320565b6102a861137a565b61072c600480360360408110156106cd57600080fd5b81359190810190604081016020820135600160201b8111156106ee57600080fd5b82018360208201111561070057600080fd5b803590602001918460018302840111600160201b8311171561072157600080fd5b509092509050611385565b60408051918252519081900360200190f35b61072c6004803603602081101561075457600080fd5b50356001600160a01b03166113cf565b6102a86004803603606081101561077a57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156107a957600080fd5b8201836020820111156107bb57600080fd5b803590602001918460018302840111600160201b831117156107dc57600080fd5b509092509050611437565b61038561149a565b6102a86004803603608081101561080557600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561083f57600080fd5b82018360208201111561085157600080fd5b803590602001918460018302840111600160201b8311171561087257600080fd5b5090925090506114b6565b6102a86004803603608081101561089357600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156108cd57600080fd5b8201836020820111156108df57600080fd5b803590602001918460018302840111600160201b8311171561090057600080fd5b509092509050611506565b6102a86004803603604081101561092157600080fd5b506001600160a01b0381351690602001351515611564565b6102a86004803603602081101561094f57600080fd5b50356001600160a01b0316611630565b6102a86004803603604081101561097557600080fd5b506001600160a01b03813516906020013561164b565b610417600480360360208110156109a157600080fd5b5035611672565b61025e600480360360208110156109be57600080fd5b50356001600160a01b0316611694565b6102a8600480360360608110156109e457600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610a1357600080fd5b820183602082011115610a2557600080fd5b803590602001918460018302840111600160201b83111715610a4657600080fd5b5090925090506116a7565b6102a860048036036080811015610a6757600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b811115610aa157600080fd5b820183602082011115610ab357600080fd5b803590602001918460018302840111600160201b83111715610ad457600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506116fa945050505050565b6102a8600480360360a0811015610b2b57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b811115610b6557600080fd5b820183602082011115610b7757600080fd5b803590602001918460018302840111600160201b83111715610b9857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b811115610bea57600080fd5b820183602082011115610bfc57600080fd5b803590602001918460018302840111600160201b83111715610c1d57600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061174c945050505050565b61038560048036036020811015610c7457600080fd5b5035611797565b6102a860048036036080811015610c9157600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610cc057600080fd5b820183602082011115610cd257600080fd5b803590602001918460018302840111600160201b83111715610cf357600080fd5b919390929091602081019035600160201b811115610d1057600080fd5b820183602082011115610d2257600080fd5b803590602001918460018302840111600160201b83111715610d4357600080fd5b509092509050611892565b6102a860048036036020811015610d6457600080fd5b810190602081018135600160201b811115610d7e57600080fd5b820183602082011115610d9057600080fd5b803590602001918460018302840111600160201b83111715610db157600080fd5b50909250905061191b565b6102a860048036036060811015610dd257600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610e0157600080fd5b820183602082011115610e1357600080fd5b803590602001918460018302840111600160201b83111715610e3457600080fd5b50909250905061199e565b6102a860048036036020811015610e5557600080fd5b50356119f3565b61025e60048036036040811015610e7257600080fd5b506001600160a01b0381358116916020013516611a05565b61072c611a33565b6001600160e01b03191660009081526020819052604090205460ff1690565b610eba33611694565b610ec357600080fd5b610ece838383611a57565b505050565b610edc33611694565b610ee557600080fd5b610f5a868686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8a018190048102820181019092528881529250889150879081908401838280828437600092019190915250611a9f92505050565b505050505050565b6040805180820190915260078152662e63727970746f60c81b60208201525b90565b6000610f8f82611ac9565b610fca5760405162461bcd60e51b815260040180806020018281038252602c815260200180612848602c913960400191505060405180910390fd5b506000908152600360205260409020546001600160a01b031690565b6000610ff182611320565b9050806001600160a01b0316836001600160a01b031614156110445760405162461bcd60e51b81526004018080602001828103825260218152602001806128bf6021913960400191505060405180910390fd5b336001600160a01b038216148061106057506110608133611a05565b61109b5760405162461bcd60e51b815260040180806020018281038252603881526020018061279c6038913960400191505060405180910390fd5b60008281526003602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b806111023382611ae6565b61110b57600080fd5b610ece8383611b82565b61111f3382611ae6565b610ec35760405162461bcd60e51b81526004018080602001828103825260318152602001806128e06031913960400191505060405180910390fd5b61116333611694565b61116c57600080fd5b6111768282611b82565b5050565b610ece838383604051806020016040528060008152506116fa565b61119f3382611ae6565b6111da5760405162461bcd60e51b81526004018080602001828103825260308152602001806129366030913960400191505060405180910390fd5b6111e381611bf8565b50565b60006111f28383611ae6565b9392505050565b6000828152600860205260409020546001600160a01b0316331461121c57600080fd5b6040518290829033907ff10fc780c78f994a214c79a2ae8d8b7bfe7cc3f0f935a8f05a29525e71d7f12790600090a45050565b61125833611694565b61126157600080fd5b61126c858585611a57565b6112ae85858585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611c7992505050565b6112b757600080fd5b5050505050565b826112c93382611ae6565b6112d257600080fd5b61131a6113158585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b611bf8565b50505050565b6000818152600260205260408120546001600160a01b0316806113745760405162461bcd60e51b81526004018080602001828103825260298152602001806127fe6029913960400191505060405180910390fd5b92915050565b61138333611e64565b565b60006113c78484848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b949350505050565b60006001600160a01b0382166114165760405162461bcd60e51b815260040180806020018281038252602a8152602001806127d4602a913960400191505060405180910390fd5b6001600160a01b038216600090815260046020526040902061137490611e75565b826114423382611ae6565b61144b57600080fd5b6112b7858585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250611a9f915050565b604080518082019091526002815261155160f21b602082015290565b6112b785858585858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201829052506040805160208101909152908152925061174c915050565b826115113382611ae6565b61151a57600080fd5b610f5a868661155f8787878080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b611a57565b6001600160a01b0382163314156115c2576040805162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604482015290519081900360640190fd5b3360008181526005602090815260408083206001600160a01b03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b61163933611694565b61164257600080fd5b6111e381611e79565b806116563382611ae6565b61165f57600080fd5b610ece61166b83611320565b8484611e8a565b6000818152600860205260408120546001600160a01b03168061137457600080fd5b600061137460018363ffffffff611fce16565b6116b033611694565b6116b957600080fd5b61131a848484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061203592505050565b611705848484611115565b61171184848484611c79565b61131a5760405162461bcd60e51b815260040180806020018281038252603281526020018061271a6032913960400191505060405180910390fd5b826117573382611ae6565b61176057600080fd5b600061176c8585611dac565b9050611779878783611a57565b61178587878386611c79565b61178e57600080fd5b50505050505050565b60606117a282611ac9565b6117ab57600080fd5b600760066000848152602001908152602001600020604051602001808380546001816001161561010002031660029004801561181e5780601f106117fc57610100808354040283529182019161181e565b820191906000526020600020905b81548152906001019060200180831161180a575b5050828054600181600116156101000203166002900480156118775780601f10611855576101008083540402835291820191611877565b820191906000526020600020905b815481529060010190602001808311611863575b505060408051601f1981840301815291905295945050505050565b8461189d3382611ae6565b6118a657600080fd5b61178e878787878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b018190048102820181019092528981529250899150889081908401838280828437600092019190915250611a9f92505050565b61192433611694565b61192d57600080fd5b611939600783836125cf565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b828260405180806020018281038252848482818152602001925080828437600083820152604051601f909101601f19169092018290039550909350505050a15050565b826119a93382611ae6565b6119b257600080fd5b6112b7858585858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061203592505050565b6119fc33611694565b6111da57600080fd5b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b7f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f90565b611a62838383611e8a565b6000818152600860205260409020546001600160a01b031615610ece57600090815260086020526040902080546001600160a01b03191690555050565b611aaa848484612035565b611ac0600085611aba8686611dac565b84611c79565b61131a57600080fd5b6000908152600260205260409020546001600160a01b0316151590565b6000611af182611ac9565b611b2c5760405162461bcd60e51b815260040180806020018281038252602c815260200180612770602c913960400191505060405180910390fd5b6000611b3783611320565b9050806001600160a01b0316846001600160a01b03161480611b725750836001600160a01b0316611b6784610f84565b6001600160a01b0316145b806113c757506113c78185611a05565b611b8b81611ac9565b611b9457600080fd5b6040516001600160a01b0383169082907fb1b34e6d89e1c584527d447f4b29ffad55635a37edeeb564939a6483401b31a590600090a3600090815260086020526040902080546001600160a01b0319166001600160a01b0392909216919091179055565b611c018161220f565b6000818152600860205260409020546001600160a01b031615611c3b57600081815260086020526040902080546001600160a01b03191690555b60008181526006602052604090205460026000196101006001841615020190911604156111e35760008181526006602052604081206111e39161264d565b6000611c8d846001600160a01b0316612221565b611c99575060016113c7565b604051630a85bd0160e11b815233600482018181526001600160a01b03888116602485015260448401879052608060648501908152865160848601528651600095928a169463150b7a029490938c938b938b939260a4019060208501908083838e5b83811015611d13578181015183820152602001611cfb565b50505050905090810190601f168015611d405780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015611d6257600080fd5b505af1158015611d76573d6000803e3d6000fd5b505050506040513d6020811015611d8c57600080fd5b50516001600160e01b031916630a85bd0160e11b14915050949350505050565b6000815160001415611dbd57600080fd5b82826040516020018082805190602001908083835b60208310611df15780518252601f199092019160209182019101611dd2565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040528051906020012060405160200180838152602001828152602001925050506040516020818303038152906040528051906020012060001c905092915050565b6111e360018263ffffffff61222716565b5490565b6111e360018263ffffffff61228e16565b826001600160a01b0316611e9d82611320565b6001600160a01b031614611ee25760405162461bcd60e51b81526004018080602001828103825260298152602001806128966029913960400191505060405180910390fd5b6001600160a01b038216611f275760405162461bcd60e51b815260040180806020018281038252602481526020018061274c6024913960400191505060405180910390fd5b611f308161230f565b6001600160a01b0383166000908152600460205260409020611f519061234a565b6001600160a01b0382166000908152600460205260409020611f7290612361565b60008181526002602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60006001600160a01b0382166120155760405162461bcd60e51b81526004018080602001828103825260228152602001806128746022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b60006120418383611dac565b905061204d848261236a565b815161205857600080fd5b61206181611ac9565b61206a57600080fd5b606082600660008681526020019081526020016000206040516020018083805190602001908083835b602083106120b25780518252601f199092019160209182019101612093565b6001836020036101000a03801982511681845116808217855250505050505090500180601760f91b815250600101828054600181600116156101000203166002900480156121375780601f10612115576101008083540402835291820191612137565b820191906000526020600020905b815481529060010190602001808311612123575b505060408051601f19818403018152918152600087815260066020908152919020825192965061216d9550935085019150612691565b50817fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952826040518080602001828103825283818151815260200191508051906020019080838360005b838110156121ce5781810151838201526020016121b6565b50505050905090810190601f1680156121fb5780820380516001836020036101000a031916815260200191505b509250505060405180910390a25050505050565b6111e361221b82611320565b8261249b565b3b151590565b6122318282611fce565b61226c5760405162461bcd60e51b81526004018080602001828103825260218152602001806128276021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff19169055565b6122988282611fce565b156122ea576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b6000818152600360205260409020546001600160a01b0316156111e357600090815260036020526040902080546001600160a01b0319169055565b805461235d90600163ffffffff61257216565b9055565b80546001019055565b6001600160a01b0382166123c5576040805162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f2061646472657373604482015290519081900360640190fd5b6123ce81611ac9565b15612420576040805162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000604482015290519081900360640190fd5b600081815260026020908152604080832080546001600160a01b0319166001600160a01b03871690811790915583526004909152902061245f90612361565b60405181906001600160a01b038416906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b816001600160a01b03166124ae82611320565b6001600160a01b0316146124f35760405162461bcd60e51b81526004018080602001828103825260258152602001806129116025913960400191505060405180910390fd5b6124fc8161230f565b6001600160a01b038216600090815260046020526040902061251d9061234a565b60008181526002602052604080822080546001600160a01b0319169055518291906001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6000828211156125c9576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106126105782800160ff1982351617855561263d565b8280016001018555821561263d579182015b8281111561263d578235825591602001919060010190612622565b506126499291506126ff565b5090565b50805460018160011615610100020316600290046000825580601f1061267357506111e3565b601f0160209004906000526020600020908101906111e391906126ff565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106126d257805160ff191683800117855561263d565b8280016001018555821561263d579182015b8281111561263d5782518255916020019190600101906126e4565b610f8191905b80821115612649576000815560010161270556fe4552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c654552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e526f6c65733a206163636f756e7420697320746865207a65726f20616464726573734552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f7665644552433732313a206275726e206f6620746f6b656e2074686174206973206e6f74206f776e4552433732314275726e61626c653a2063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564a265627a7a72315820fb6a1b26cc352dbb05e6627fd530bbb44114ac3a349f30d1f071136c656d20dc64736f6c634300050c0032","storage":{"0x7":"0x68747470733a2f2f6578616d706c652e636f6d2f000000000000000000000028","0xbdf39e9e65b2355b1b0b06df799c09159f0ab90f06a9bb2153f5de7d9b0ea81":"0x1","0x1a306d3e9bf29128dee78d8d16c9f378a11bbdf917a9caf986fc6e60846e37e7":"0x63727970746f000000000000000000000000000000000000000000000000000c","0x42c63635470f1fb1d6d4b6441c413cb435b1ebb6fedd1896dd5e25d1399147dd":"0x1","0x605d7a0bb2b20c4004d356eb969ff104dcca62360aa356247072f5e0df6472e3":"0xdead","0x67be87c3ff9960ca1e9cfac5cab2ff4747269cf9ed20c9b7306235ac35a491c5":"0x1","0x70f464f95f9ab7aba03264fd4cac1711d774d3703ce74217180264d4efc2105f":"0x1","0x76a72f26a108e6f3f687141f5f42d21d65857c03cb1b01aa1284f9a9ccd085da":"0x1","0x9562381dfbc2d8b8b66e765249f330164b73e329e5f01670660643571d1974df":"0x1","0x9f23d2403fb64167582d316b1bc5b35a6ed48524341ab24947c71df77304b29e":"0x1","0xf7815fccbf112960a73756e185887fedcb9fc64ca0a16cc5923b7960ed780800":"0x1"}},"0xc965345edac823d56812cd20a10316233916a605":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101c6575f3560e01c806395d89b41116100fe578063c87b56dd1161009e578063e985e9c51161006e578063e985e9c5146103d4578063f2fde38b1461040f578063f6a74ed714610422578063fca247ac14610435575f80fd5b8063c87b56dd14610377578063d6e4fa861461038a578063da8c229e146103a9578063ddf7fcb0146103cb575f80fd5b8063a7fc7a07116100d9578063a7fc7a0714610334578063b88d4fde14610347578063c1a287e21461035a578063c475abff14610364575f80fd5b806395d89b411461030657806396e494e81461030e578063a22cb46514610321575f80fd5b80633f15457f116101695780636352211e116101445780636352211e146102c757806370a08231146102da578063715018a6146102ed5780638da5cb5b146102f5575f80fd5b80633f15457f1461028e57806342842e0e146102a15780634e543b26146102b4575f80fd5b8063095ea7b3116101a4578063095ea7b3146102325780630e297b451461024757806323b872dd1461026857806328ed4f6c1461027b575f80fd5b806301ffc9a7146101ca57806306fdde03146101f2578063081812fc14610207575b5f80fd5b6101dd6101d83660046117dd565b610448565b60405190151581526020015b60405180910390f35b6101fa610499565b6040516101e99190611845565b61021a610215366004611857565b610528565b6040516001600160a01b0390911681526020016101e9565b610245610240366004611882565b61054d565b005b61025a6102553660046118ac565b610666565b6040519081526020016101e9565b6102456102763660046118e1565b61067b565b61024561028936600461190e565b6106ac565b60085461021a906001600160a01b031681565b6102456102af3660046118e1565b6107be565b6102456102c236600461193c565b6107d8565b61021a6102d5366004611857565b610848565b61025a6102e836600461193c565b610869565b6102456108ed565b6006546001600160a01b031661021a565b6101fa610900565b6101dd61031c366004611857565b61090f565b61024561032f366004611957565b610934565b61024561034236600461193c565b610943565b61024561035536600461199b565b610996565b61025a6276a70081565b61025a610372366004611a74565b6109ce565b6101fa610385366004611857565b610b52565b61025a610398366004611857565b5f9081526007602052604090205490565b6101dd6103b736600461193c565b600a6020525f908152604090205460ff1681565b61025a60095481565b6101dd6103e2366004611a94565b6001600160a01b039182165f90815260056020908152604080832093909416825291909152205460ff1690565b61024561041d36600461193c565b610bc2565b61024561043036600461193c565b610c3b565b61025a6104433660046118ac565b610c8b565b5f6001600160e01b031982166301ffc9a760e01b148061047857506001600160e01b031982166380ac58cd60e01b145b8061049357506001600160e01b03198216630a3b53db60e21b145b92915050565b60605f80546104a790611ac0565b80601f01602080910402602001604051908101604052809291908181526020018280546104d390611ac0565b801561051e5780601f106104f55761010080835404028352916020019161051e565b820191905f5260205f20905b81548152906001019060200180831161050157829003601f168201915b5050505050905090565b5f61053282610c99565b505f908152600460205260409020546001600160a01b031690565b5f61055782610cf7565b9050806001600160a01b0316836001600160a01b0316036105c95760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084015b60405180910390fd5b336001600160a01b03821614806105e557506105e581336103e2565b6106575760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016105c0565b6106618383610d56565b505050565b5f6106738484845f610dc3565b949350505050565b6106853382610fc7565b6106a15760405162461bcd60e51b81526004016105c090611af8565b610661838383611040565b6008546009546040516302571be360e01b8152600481019190915230916001600160a01b0316906302571be390602401602060405180830381865afa1580156106f7573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061071b9190611b45565b6001600160a01b03161461072d575f80fd5b6107373383610fc7565b61073f575f80fd5b6008546009546040516306ab592360e01b81526004810191909152602481018490526001600160a01b038381166044830152909116906306ab5923906064016020604051808303815f875af115801561079a573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106619190611b60565b61066183838360405180602001604052805f815250610996565b6107e06111a2565b600854600954604051630c4b7b8560e11b815260048101919091526001600160a01b03838116602483015290911690631896f70a906044015f604051808303815f87803b15801561082f575f80fd5b505af1158015610841573d5f803e3d5ffd5b5050505050565b5f818152600760205260408120544210610860575f80fd5b61049382610cf7565b5f6001600160a01b0382166108d25760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b60648201526084016105c0565b506001600160a01b03165f9081526003602052604090205490565b6108f56111a2565b6108fe5f6111fc565b565b6060600180546104a790611ac0565b5f81815260076020526040812054429061092d906276a70090611b77565b1092915050565b61093f33838361124d565b5050565b61094b6111a2565b6001600160a01b0381165f818152600a6020526040808220805460ff19166001179055517f0a8bb31534c0ed46f380cb867bd5c803a189ced9a764e30b3a4991a9901d74749190a250565b6109a03383610fc7565b6109bc5760405162461bcd60e51b81526004016105c090611af8565b6109c88484848461131a565b50505050565b6008546009546040516302571be360e01b815260048101919091525f9130916001600160a01b03909116906302571be390602401602060405180830381865afa158015610a1d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a419190611b45565b6001600160a01b031614610a53575f80fd5b335f908152600a602052604090205460ff16610a6d575f80fd5b5f838152600760205260409020544290610a8b906276a70090611b77565b1015610a95575f80fd5b610aa26276a70083611b77565b5f848152600760205260409020546276a70090610ac0908590611b77565b610aca9190611b77565b11610ad3575f80fd5b5f8381526007602052604081208054849290610af0908490611b77565b90915550505f838152600760205260409081902054905184917f9b87a00e30f1ac65d898f070f8a3488fe60517182d0a2098e1b4b93a54aa9bd691610b3791815260200190565b60405180910390a250505f9081526007602052604090205490565b6060610b5d82610c99565b5f610b7260408051602081019091525f815290565b90505f815111610b905760405180602001604052805f815250610bbb565b80610b9a8461134d565b604051602001610bab929190611b96565b6040516020818303038152906040525b9392505050565b610bca6111a2565b6001600160a01b038116610c2f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016105c0565b610c38816111fc565b50565b610c436111a2565b6001600160a01b0381165f818152600a6020526040808220805460ff19169055517f33d83959be2573f5453b12eb9d43b3499bc57d96bd2f067ba44803c859e811139190a250565b5f6106738484846001610dc3565b5f818152600260205260409020546001600160a01b0316610c385760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105c0565b5f818152600260205260408120546001600160a01b0316806104935760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105c0565b5f81815260046020526040902080546001600160a01b0319166001600160a01b0384169081179091558190610d8a82610cf7565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6008546009546040516302571be360e01b815260048101919091525f9130916001600160a01b03909116906302571be390602401602060405180830381865afa158015610e12573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e369190611b45565b6001600160a01b031614610e48575f80fd5b335f908152600a602052604090205460ff16610e62575f80fd5b610e6b8561090f565b610e73575f80fd5b610e806276a70042611b77565b6276a700610e8e8542611b77565b610e989190611b77565b11610ea1575f80fd5b610eab8342611b77565b5f868152600760209081526040808320939093556002905220546001600160a01b031615610edc57610edc856113dd565b610ee6848661146f565b8115610f6d576008546009546040516306ab592360e01b81526004810191909152602481018790526001600160a01b038681166044830152909116906306ab5923906064016020604051808303815f875af1158015610f47573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f6b9190611b60565b505b6001600160a01b038416857fb3d987963d01b2f68493b4bdb130988f157ea43070d4ad840fee0466ed9370d9610fa38642611b77565b60405190815260200160405180910390a3610fbe8342611b77565b95945050505050565b5f80610fd283610848565b9050806001600160a01b0316846001600160a01b0316148061100d5750836001600160a01b031661100284610528565b6001600160a01b0316145b8061067357506001600160a01b038082165f9081526005602090815260408083209388168352929052205460ff16610673565b826001600160a01b031661105382610cf7565b6001600160a01b0316146110795760405162461bcd60e51b81526004016105c090611bc4565b6001600160a01b0382166110db5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b60648201526084016105c0565b826001600160a01b03166110ee82610cf7565b6001600160a01b0316146111145760405162461bcd60e51b81526004016105c090611bc4565b5f81815260046020908152604080832080546001600160a01b03199081169091556001600160a01b038781168086526003855283862080545f1901905590871680865283862080546001019055868652600290945282852080549092168417909155905184937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6006546001600160a01b031633146108fe5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016105c0565b600680546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b816001600160a01b0316836001600160a01b0316036112ae5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c65720000000000000060448201526064016105c0565b6001600160a01b038381165f81815260056020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b611325848484611040565b611331848484846115f7565b6109c85760405162461bcd60e51b81526004016105c090611c09565b60605f611359836116f1565b60010190505f8167ffffffffffffffff81111561137857611378611987565b6040519080825280601f01601f1916602001820160405280156113a2576020820181803683370190505b5090508181016020015b5f19016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a85049450846113ac57509392505050565b5f6113e782610cf7565b90506113f282610cf7565b5f83815260046020908152604080832080546001600160a01b03199081169091556001600160a01b0385168085526003845282852080545f190190558785526002909352818420805490911690555192935084927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6001600160a01b0382166114c55760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f206164647265737360448201526064016105c0565b5f818152600260205260409020546001600160a01b0316156115295760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105c0565b5f818152600260205260409020546001600160a01b03161561158d5760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105c0565b6001600160a01b0382165f81815260036020908152604080832080546001019055848352600290915280822080546001600160a01b0319168417905551839291907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b5f6001600160a01b0384163b156116e957604051630a85bd0160e11b81526001600160a01b0385169063150b7a029061163a903390899088908890600401611c5b565b6020604051808303815f875af1925050508015611674575060408051601f3d908101601f1916820190925261167191810190611c97565b60015b6116cf573d8080156116a1576040519150601f19603f3d011682016040523d82523d5f602084013e6116a6565b606091505b5080515f036116c75760405162461bcd60e51b81526004016105c090611c09565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610673565b506001610673565b5f8072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b831061172f5772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef8100000000831061175b576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc10000831061177957662386f26fc10000830492506010015b6305f5e1008310611791576305f5e100830492506008015b61271083106117a557612710830492506004015b606483106117b7576064830492506002015b600a83106104935760010192915050565b6001600160e01b031981168114610c38575f80fd5b5f602082840312156117ed575f80fd5b8135610bbb816117c8565b5f5b838110156118125781810151838201526020016117fa565b50505f910152565b5f81518084526118318160208601602086016117f8565b601f01601f19169290920160200192915050565b602081525f610bbb602083018461181a565b5f60208284031215611867575f80fd5b5035919050565b6001600160a01b0381168114610c38575f80fd5b5f8060408385031215611893575f80fd5b823561189e8161186e565b946020939093013593505050565b5f805f606084860312156118be575f80fd5b8335925060208401356118d08161186e565b929592945050506040919091013590565b5f805f606084860312156118f3575f80fd5b83356118fe8161186e565b925060208401356118d08161186e565b5f806040838503121561191f575f80fd5b8235915060208301356119318161186e565b809150509250929050565b5f6020828403121561194c575f80fd5b8135610bbb8161186e565b5f8060408385031215611968575f80fd5b82356119738161186e565b915060208301358015158114611931575f80fd5b634e487b7160e01b5f52604160045260245ffd5b5f805f80608085870312156119ae575f80fd5b84356119b98161186e565b935060208501356119c98161186e565b925060408501359150606085013567ffffffffffffffff808211156119ec575f80fd5b818701915087601f8301126119ff575f80fd5b813581811115611a1157611a11611987565b604051601f8201601f19908116603f01168101908382118183101715611a3957611a39611987565b816040528281528a6020848701011115611a51575f80fd5b826020860160208301375f60208483010152809550505050505092959194509250565b5f8060408385031215611a85575f80fd5b50508035926020909101359150565b5f8060408385031215611aa5575f80fd5b8235611ab08161186e565b915060208301356119318161186e565b600181811c90821680611ad457607f821691505b602082108103611af257634e487b7160e01b5f52602260045260245ffd5b50919050565b6020808252602d908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526c1c881bdc88185c1c1c9bdd9959609a1b606082015260800190565b5f60208284031215611b55575f80fd5b8151610bbb8161186e565b5f60208284031215611b70575f80fd5b5051919050565b8082018082111561049357634e487b7160e01b5f52601160045260245ffd5b5f8351611ba78184602088016117f8565b835190830190611bbb8183602088016117f8565b01949350505050565b60208082526025908201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060408201526437bbb732b960d91b606082015260800190565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6001600160a01b03858116825284166020820152604081018390526080606082018190525f90611c8d9083018461181a565b9695505050505050565b5f60208284031215611ca7575f80fd5b8151610bbb816117c856fea164736f6c6343000818000a","storage":{"0x0":"0x0","0x1":"0x0","0x6":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x8":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0x9":"0x93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae","0x9b8bc185dce56a7ea1b27d35e40ac15dcdf9144303dfd4d8880220078bf21a2c":"0x1","0xdb5e6a17df8534b92b0c8de590f14b4fb4b5eb2c62ef1bf7a05555e354797508":"0x1","0xe1a982900207b619cb6c39be8cb5e60da1370171412fb65b5efc25e2dce3c34c":"0x1"}},"0xce4bb7dc1eb9dce75743de6a4b48534fd427ef51":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xe85541865bbb62a05064ce5c9f41cc293a8ea996","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0xd178b720229c39de617846f84cf9c8d32a63a23d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610106575f3560e01c806371017a541161009e5780639e32d3641161006e5780639e32d3641461025a578063a424740014610281578063dd6b9e2214610294578063e1c4b65a146102a7578063e35a14e5146102ba575f80fd5b806371017a541461020e5780637b103999146102215780638f0dbd25146102345780639810b69514610247575f80fd5b8063485cc955116100d9578063485cc95514610191578063572b6c05146101a457806358884432146101d05780636ccbae5f146101fb575f80fd5b8063150b7a021461010a5780631694116d1461013b5780631bf7e13e146101505780631c351a9d14610170575b5f80fd5b61011d610118366004611434565b6102e2565b6040516001600160e01b031990911681526020015b60405180910390f35b61014e6101493660046114e3565b610372565b005b61016361015e366004611549565b61040d565b6040516101329190611601565b61018361017e366004611613565b6104d6565b604051908152602001610132565b61014e61019f366004611666565b6105c3565b6101c06101b236600461169d565b6001600160a01b0316301490565b6040519015158152602001610132565b6067546101e3906001600160a01b031681565b6040516001600160a01b039091168152602001610132565b6101836102093660046116b8565b6106f8565b6101e361021c3660046116cf565b610751565b6066546101e3906001600160a01b031681565b61014e6102423660046116ef565b610791565b6101e36102553660046116cf565b610806565b6101837fd81bbfcee722494b885e891546eeac23d0eedcd44038d7a2f6ef9ec2f9e0d23981565b6101c061028f366004611549565b61085f565b6101c06102a236600461172d565b6108a8565b61014e6102b5366004611771565b61091d565b6101e36102c83660046116b8565b5f908152606560205260409020546001600160a01b031690565b6066545f906001600160a01b03166102f8610a43565b6001600160a01b031614158061032257505f848152606560205260409020546001600160a01b0316155b156103605783610330610a43565b60405163634afa0d60e01b815260048101929092526001600160a01b031660248201526044015b60405180910390fd5b50630a85bd0160e11b95945050505050565b828261037e8282610751565b6001600160a01b031661038f610a43565b6001600160a01b0316146103c057604051632cd9b44d60e11b81526004810183905260248101829052604401610357565b5f6103cb8686610806565b90505f5b87811015610402576103fa8989838181106103ec576103ec6117b0565b905060200201358387610a51565b6001016103cf565b505050505050505050565b60605f5a905061041e85858561085f565b61043b57604051638baa579f60e01b815260040160405180910390fd5b6104cb61044b602087018761169d565b3060408801358461045f60608b018b6117c4565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f92019190915250610b8492505050565b9150505b9392505050565b6067545f906001600160a01b031663aa271e1a6104f1610a43565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015610533573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105579190611807565b1580610572575030610567610a43565b6001600160a01b0316145b156105a45761057f610a43565b60405163e2c8c9d560e01b81526001600160a01b039091166004820152602401610357565b5f6105b0858585610c60565b90506105bb81610e73565b949350505050565b5f54610100900460ff16158080156105e157505f54600160ff909116105b806105fa5750303b1580156105fa57505f5460ff166001145b61065d5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610357565b5f805460ff19166001179055801561067e575f805461ff0019166101001790555b606680546001600160a01b038086166001600160a01b031992831617909255606780549285169290911691909117905580156106f3575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f9061074a906060016040516020818303038152906040528051906020012090565b5492915050565b5f80838360405160200161076f929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209150505b92915050565b828261079d8282610751565b6001600160a01b03166107ae610a43565b6001600160a01b0316146107df57604051632cd9b44d60e11b81526004810183905260248101829052604401610357565b856107e981610e73565b6107fd876107f78889610806565b86610a51565b50505050505050565b5f8060026108148585610e8f565b6040516108219190611826565b602060405180830381855afa15801561083c573d5f803e3d5ffd5b5050506040513d601f19601f820116820180604052508101906105bb9190611841565b5f6105bb61086c856118c6565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250610f1492505050565b5f805b8281101561091257846001600160a01b03166108f38585848181106108d2576108d26117b0565b905060200201355f908152606560205260409020546001600160a01b031690565b6001600160a01b03161461090a575f9150506104cf565b6001016108ab565b506001949350505050565b6067546001600160a01b031663aa271e1a610936610a43565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015610978573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061099c9190611807565b15806109b75750306109ac610a43565b6001600160a01b0316145b156109c45761057f610a43565b5f5b818110156106f357610a3a8383838181106109e3576109e36117b0565b90506020028101906109f59190611983565b610a039060208101906117c4565b858585818110610a1557610a156117b0565b9050602002810190610a279190611983565b610a3590602081019061169d565b610c60565b506001016109c6565b5f610a4c611059565b905090565b5f838152606560205260409020546001600160a01b03838116911614610ab4575f83815260656020526040908190205490516326995d8360e11b8152600481018590526001600160a01b0391821660248201529083166044820152606401610357565b5f838152606560205260409081902080546001600160a01b03191690556066549051632142170760e11b81523060048201526001600160a01b03838116602483015260448201869052909116906342842e0e906064015f604051808303815f87803b158015610b21575f80fd5b505af1158015610b33573d5f803e3d5ffd5b50505050806001600160a01b0316610b49610a43565b6001600160a01b0316847f9a471856befea1cabcd7fc8a1c4d70ea07b8ed2ee205cc361f932433542ef3fe60405160405180910390a4505050565b6060610b8f85611076565b5f80876001600160a01b031686610ba88b8a89896110db565b604051610bb59190611826565b5f604051808303815f8787f1925050503d805f8114610bef576040519150601f19603f3d011682016040523d82523d5f602084013e610bf4565b606091505b509092509050610c05603f876119bf565b5a11610c1357610c136119d2565b610c5382826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061110b565b9998505050505050505050565b5f60605f7fd81bbfcee722494b885e891546eeac23d0eedcd44038d7a2f6ef9ec2f9e0d2398686604051602001610c989291906119e6565b60405160208183030381529060405280519060200120604051602001610cc8929190918252602082015260400190565b60408051808303601f19018152828252805160209091012060028084526060840190925292505f9190816020015b6060815260200190600190039081610cf657905050905086868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920182905250855186945090925015159050610d5657610d566117b0565b6020026020010181905250604051806040016040528060038152602001621e9a5b60ea1b81525081600181518110610d9057610d906117b0565b6020908102919091018101919091525f8381526065909152604080822080546001600160a01b0319166001600160a01b03898116919091179091556067549151635cd7e3b360e01b8152911691635cd7e3b391610df891309186918991829190600401611a4d565b5f604051808303815f87803b158015610e0f575f80fd5b505af1158015610e21573d5f803e3d5ffd5b50505050846001600160a01b0316827f08717469d38a4b02325ea6637978c7952f94d3d8fc7848994f618ddbf4d637f18989604051610e61929190611aab565b60405180910390a35095945050505050565b303303610e8657610e8381611144565b50565b610e8381611076565b60605f82610e9f60016020611ad9565b60ff1660208110610eb257610eb26117b0565b1a9050610ec0600282611af2565b60ff1615610ecf576003610ed2565b60025b84604051602001610efc92919060f89290921b6001600160f81b0319168252600182015260210190565b60405160208183030381529060405291505092915050565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015610f58573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f7c9190611841565b90505f611029866060015180519060200120868860200151604051602001610fc99392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561104f5750855161104f906001600160a01b0316828661116e565b9695505050505050565b5f30330361106e575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f906060016040516020818303038152906040528051906020012090506110ca8190565b546110d6906001611b13565b905550565b60608285856040516020016110f293929190611b26565b6040516020818303038152906040529050949350505050565b6060831561111a5750816104cf565b82511561112a5782518084602001fd5b8160405162461bcd60e51b81526004016103579190611601565b61114c6112a9565b8114610e8357604051635637b6af60e11b815260048101829052602401610357565b5f805f61117b85856112bb565b90925090505f81600481111561119357611193611b64565b1480156111b15750856001600160a01b0316826001600160a01b0316145b156111c1576001925050506104cf565b5f80876001600160a01b0316631626ba7e60e01b88886040516024016111e8929190611b78565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516112269190611826565b5f60405180830381855afa9150503d805f811461125e576040519150601f19603f3d011682016040523d82523d5f602084013e611263565b606091505b5091509150818015611276575080516020145b801561129d57508051630b135d3f60e11b9061129b9083016020908101908401611841565b145b98975050505050505050565b5f3033036110735750601f1936013590565b5f8082516041036112ef576020830151604084015160608501515f1a6112e3878285856112fd565b945094505050506112f6565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561133257505f905060036113d9565b8460ff16601b1415801561134a57508460ff16601c14155b1561135a57505f905060046113d9565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156113ab573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b0381166113d3575f600192509250506113d9565b91505f90505b94509492505050565b6001600160a01b0381168114610e83575f80fd5b5f8083601f840112611406575f80fd5b50813567ffffffffffffffff81111561141d575f80fd5b6020830191508360208285010111156112f6575f80fd5b5f805f805f60808688031215611448575f80fd5b8535611453816113e2565b94506020860135611463816113e2565b935060408601359250606086013567ffffffffffffffff811115611485575f80fd5b611491888289016113f6565b969995985093965092949392505050565b5f8083601f8401126114b2575f80fd5b50813567ffffffffffffffff8111156114c9575f80fd5b6020830191508360208260051b85010111156112f6575f80fd5b5f805f805f608086880312156114f7575f80fd5b853567ffffffffffffffff81111561150d575f80fd5b611519888289016114a2565b9096509450506020860135925060408601359150606086013561153b816113e2565b809150509295509295909350565b5f805f6040848603121561155b575f80fd5b833567ffffffffffffffff80821115611572575f80fd5b9085019060808288031215611585575f80fd5b9093506020850135908082111561159a575f80fd5b506115a7868287016113f6565b9497909650939450505050565b5f5b838110156115ce5781810151838201526020016115b6565b50505f910152565b5f81518084526115ed8160208601602086016115b4565b601f01601f19169290920160200192915050565b602081525f6104cf60208301846115d6565b5f805f60408486031215611625575f80fd5b833567ffffffffffffffff81111561163b575f80fd5b611647868287016113f6565b909450925050602084013561165b816113e2565b809150509250925092565b5f8060408385031215611677575f80fd5b8235611682816113e2565b91506020830135611692816113e2565b809150509250929050565b5f602082840312156116ad575f80fd5b81356104cf816113e2565b5f602082840312156116c8575f80fd5b5035919050565b5f80604083850312156116e0575f80fd5b50508035926020909101359150565b5f805f8060808587031215611702575f80fd5b8435935060208501359250604085013591506060850135611722816113e2565b939692955090935050565b5f805f6040848603121561173f575f80fd5b833561174a816113e2565b9250602084013567ffffffffffffffff811115611765575f80fd5b6115a7868287016114a2565b5f8060208385031215611782575f80fd5b823567ffffffffffffffff811115611798575f80fd5b6117a4858286016114a2565b90969095509350505050565b634e487b7160e01b5f52603260045260245ffd5b5f808335601e198436030181126117d9575f80fd5b83018035915067ffffffffffffffff8211156117f3575f80fd5b6020019150368190038213156112f6575f80fd5b5f60208284031215611817575f80fd5b815180151581146104cf575f80fd5b5f82516118378184602087016115b4565b9190910192915050565b5f60208284031215611851575f80fd5b5051919050565b634e487b7160e01b5f52604160045260245ffd5b6040516080810167ffffffffffffffff8111828210171561188f5761188f611858565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156118be576118be611858565b604052919050565b5f608082360312156118d6575f80fd5b6118de61186c565b82356118e9816113e2565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff80821115611919575f80fd5b9085019036601f83011261192b575f80fd5b81358181111561193d5761193d611858565b61194f601f8201601f19168501611895565b91508082523684828501011115611964575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b5f8235603e19833603018112611837575f80fd5b634e487b7160e01b5f52601260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b5f826119cd576119cd611997565b500490565b634e487b7160e01b5f52600160045260245ffd5b818382375f9101908152919050565b5f8282518085526020808601955060208260051b840101602086015f5b84811015611a4057601f19868403018952611a2e8383516115d6565b98840198925090830190600101611a12565b5090979650505050505050565b6001600160a01b038616815260a0602082018190525f90611a70908301876119f5565b8281036040840152611a8281876119f5565b90508281036060840152611a9681866119f5565b91505082151560808301529695505050505050565b60208152816020820152818360408301375f818301604090810191909152601f909201601f19160101919050565b60ff828116828216039081111561078b5761078b6119ab565b5f60ff831680611b0457611b04611997565b8060ff84160691505092915050565b8082018082111561078b5761078b6119ab565b5f8451611b378184602089016115b4565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f6105bb60408301846115d656fea164736f6c6343000818000a","storage":{"0x0":"0xff"}},"0xda9e1b3e395bfb0a45f03c7f615146b9d896c959":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100b1575f3560e01c806340c10f191161006e57806340c10f191461013d57806370a082311461015257806395d89b411461017a578063a457c2d714610182578063a9059cbb14610195578063dd62ed3e146101a8575f80fd5b806306fdde03146100b5578063095ea7b3146100d357806318160ddd146100f657806323b872dd14610108578063313ce5671461011b578063395093511461012a575b5f80fd5b6100bd6101bb565b6040516100ca9190610775565b60405180910390f35b6100e66100e13660046107dc565b61024b565b60405190151581526020016100ca565b6002545b6040519081526020016100ca565b6100e6610116366004610804565b610264565b604051601281526020016100ca565b6100e66101383660046107dc565b610287565b61015061014b3660046107dc565b6102a8565b005b6100fa61016036600461083d565b6001600160a01b03165f9081526020819052604090205490565b6100bd6102b6565b6100e66101903660046107dc565b6102c5565b6100e66101a33660046107dc565b610344565b6100fa6101b636600461085d565b610351565b6060600380546101ca9061088e565b80601f01602080910402602001604051908101604052809291908181526020018280546101f69061088e565b80156102415780601f1061021857610100808354040283529160200191610241565b820191905f5260205f20905b81548152906001019060200180831161022457829003601f168201915b5050505050905090565b5f3361025881858561037b565b60019150505b92915050565b5f3361027185828561049e565b61027c858585610516565b506001949350505050565b5f336102588185856102998383610351565b6102a391906108c6565b61037b565b6102b282826106b8565b5050565b6060600480546101ca9061088e565b5f33816102d28286610351565b9050838110156103375760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b61027c828686840361037b565b5f33610258818585610516565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b6001600160a01b0383166103dd5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161032e565b6001600160a01b03821661043e5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161032e565b6001600160a01b038381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b5f6104a98484610351565b90505f19811461051057818110156105035760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161032e565b610510848484840361037b565b50505050565b6001600160a01b03831661057a5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161032e565b6001600160a01b0382166105dc5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161032e565b6001600160a01b0383165f90815260208190526040902054818110156106535760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161032e565b6001600160a01b038481165f81815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3610510565b6001600160a01b03821661070e5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640161032e565b8060025f82825461071f91906108c6565b90915550506001600160a01b0382165f81815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b5f602080835283518060208501525f5b818110156107a157858101830151858201604001528201610785565b505f604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146107d7575f80fd5b919050565b5f80604083850312156107ed575f80fd5b6107f6836107c1565b946020939093013593505050565b5f805f60608486031215610816575f80fd5b61081f846107c1565b925061082d602085016107c1565b9150604084013590509250925092565b5f6020828403121561084d575f80fd5b610856826107c1565b9392505050565b5f806040838503121561086e575f80fd5b610877836107c1565b9150610885602084016107c1565b90509250929050565b600181811c908216806108a257607f821691505b6020821081036108c057634e487b7160e01b5f52602260045260245ffd5b50919050565b8082018082111561025e57634e487b7160e01b5f52601160045260245ffdfea164736f6c6343000818000a","storage":{"0x2":"0xe8d4a51000","0x3":"0x0","0x4":"0x0","0x47668262eb76f3aa61b856a0c078f33a11f46671cf1466c3616ba74a22fcdd92":"0xe8d4a51000","0x9cc83e833a69122bf7773b58c082655d780ae469ab7cdf5d1047a30229e55875":"0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"}},"0xe0afc4e9e03e4aa67257df7a2eca77454309789d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061002b5760003560e01c806316f1983114610030575b600080fd5b6100b06004803603604081101561004657600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561007157600080fd5b82018360208201111561008357600080fd5b803590602001918460018302840111640100000000831117156100a557600080fd5b5090925090506100b2565b005b826001600160a01b031660017f103fed9db65eac19c4d870f49ab7520fe03b99f1838e5996caf47e9e43308392848460405180806020018281038252848482818152602001925080828437600083820152604051601f909101601f19169092018290039550909350505050a350505056fea164736f6c6343000606000a","storage":{}},"0xe4fdf45c2f8d198854f8823809c7a988eeaaa493":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100a6575f3560e01c80638cb8ecec1161006e5780638cb8ecec1461013e5780638da5cb5b14610151578063cbe9e76414610161578063da8c229e14610183578063e0dba60f146101a5578063f2fde38b146101b8575f80fd5b806301670ba9146100aa57806301ffc9a7146100bf5780633f15457f146100f85780634e543b2614610123578063715018a614610136575b5f80fd5b6100bd6100b8366004610529565b6101cb565b005b6100e36100cd366004610540565b6001600160e01b0319166301ffc9a760e01b1490565b60405190151581526020015b60405180910390f35b60025461010b906001600160a01b031681565b6040516001600160a01b0390911681526020016100ef565b6100bd610131366004610589565b610217565b6100bd610282565b6100bd61014c3660046105a2565b610295565b5f546001600160a01b031661010b565b6100e361016f366004610529565b60036020525f908152604090205460ff1681565b6100e3610191366004610589565b60016020525f908152604090205460ff1681565b6100bd6101b33660046105cc565b6103a2565b6100bd6101c6366004610589565b610408565b6101d3610481565b60405181907f1764176cfa565853ba1ded547a830a9f9bff95231ef6fd228b3ddd6175777569905f90a25f908152600360205260409020805460ff19166001179055565b61021f610481565b600254604051630c4b7b8560e11b81525f60048201526001600160a01b03838116602483015290911690631896f70a906044015f604051808303815f87803b158015610269575f80fd5b505af115801561027b573d5f803e3d5ffd5b5050505050565b61028a610481565b6102935f6104da565b565b335f9081526001602052604090205460ff166103095760405162461bcd60e51b815260206004820152602860248201527f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f604482015267373a3937b63632b960c11b60648201526084015b60405180910390fd5b5f8281526003602052604090205460ff1615610323575f80fd5b6002546040516306ab592360e01b81525f6004820152602481018490526001600160a01b038381166044830152909116906306ab5923906064016020604051808303815f875af1158015610379573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061039d9190610605565b505050565b6103aa610481565b6001600160a01b0382165f81815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b610410610481565b6001600160a01b0381166104755760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610300565b61047e816104da565b50565b5f546001600160a01b031633146102935760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610300565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f60208284031215610539575f80fd5b5035919050565b5f60208284031215610550575f80fd5b81356001600160e01b031981168114610567575f80fd5b9392505050565b80356001600160a01b0381168114610584575f80fd5b919050565b5f60208284031215610599575f80fd5b6105678261056e565b5f80604083850312156105b3575f80fd5b823591506105c36020840161056e565b90509250929050565b5f80604083850312156105dd575f80fd5b6105e68361056e565b9150602083013580151581146105fa575f80fd5b809150509250929050565b5f60208284031215610615575f80fd5b505191905056fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0xbdf39e9e65b2355b1b0b06df799c09159f0ab90f06a9bb2153f5de7d9b0ea81":"0x1","0x97b771283c9c769f7b9399fef71d92816f2bd31de10203b676671b01eb920966":"0x1"}},"0xe85541865bbb62a05064ce5c9f41cc293a8ea996":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610060575f3560e01c8063715018a6146100645780638129fc1c1461006e5780638da5cb5b14610076578063a3f4df7e14610096578063f2fde38b146100cf578063ffa1ad74146100e2575b5f80fd5b61006c610106565b005b61006c610119565b6033546040516001600160a01b0390911681526020015b60405180910390f35b6100c26040518060400160405280600d81526020016c2aa7299d1027b832b930ba37b960991b81525081565b60405161008d91906103bd565b61006c6100dd366004610409565b610229565b6100c2604051806040016040528060058152602001640302e312e360dc1b81525081565b61010e61029f565b6101175f6102f9565b565b5f54610100900460ff161580801561013757505f54600160ff909116105b806101505750303b15801561015057505f5460ff166001145b6101b85760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b5f805460ff1916600117905580156101d9575f805461ff0019166101001790555b6101e161034a565b8015610226575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50565b61023161029f565b6001600160a01b0381166102965760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016101af565b610226816102f9565b6033546001600160a01b031633146101175760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016101af565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff166103b45760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016101af565b610117336102f9565b5f602080835283518060208501525f5b818110156103e9578581018301518582016040015282016103cd565b505f604082860101526040601f19601f8301168501019250505092915050565b5f60208284031215610419575f80fd5b81356001600160a01b038116811461042f575f80fd5b939250505056fea164736f6c6343000818000a","storage":{}},"0xead34b583404e3cb0c9b97c2d1c486be67be9f30":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0xec71e4e674fe0f432693dc2b935c34bd2774c003":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610090575f3560e01c8063a200e15311610063578063a200e15314610146578063a34e35961461016d578063c8a4271f14610180578063cd5d2c74146101bf578063d820ed42146101e6575f80fd5b806301ffc9a7146100945780632c0fd74c146100bc57806350e9a715146100f157806359b6b86c1461011f575b5f80fd5b6100a76100a2366004610600565b61020d565b60405190151581526020015b60405180910390f35b6100e37f000000000000000000000000000000000000000000000000000000000000000081565b6040519081526020016100b3565b6101046100ff366004610627565b610243565b604080518251815260209283015192810192909252016100b3565b6100e37f000000000000000000000000000000000000000000000000000000000000000181565b6100e37f000000000000000000000000000000000000000000000000000000000000000481565b6100e361017b366004610627565b610404565b6101a77f000000000000000000000000f3810eb7d64d1c11ae12727d957c6202b24492f581565b6040516001600160a01b0390911681526020016100b3565b6100e37f000000000000000000000000000000000000000000000000000000000000000081565b6100e37f000000000000000000000000000000000000000000000000000000000000000281565b5f6001600160e01b031982166301ffc9a760e01b148061023d57506001600160e01b031982166350e9a71560e01b145b92915050565b604080518082019091525f80825260208201525f61029586868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061045392505050565b90505f600582106102d1576102ca847f00000000000000000000000000000000000000000000000000000000000000016106b3565b9050610394565b81600403610303576102ca847f00000000000000000000000000000000000000000000000000000000000000026106b3565b81600303610335576102ca847f00000000000000000000000000000000000000000000000000000000000000046106b3565b81600203610367576102ca847f00000000000000000000000000000000000000000000000000000000000000006106b3565b610391847f00000000000000000000000000000000000000000000000000000000000000006106b3565b90505b60405180604001604052806103a883610554565b81526020016103f76103f28a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c92508b91506105f89050565b610554565b9052979650505050505050565b5f61044a6103f286868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508892508791506105f89050565b95945050505050565b80515f90819081905b8082101561054b575f858381518110610477576104776106ca565b01602001516001600160f81b0319169050600160ff1b8110156104a65761049f6001846106de565b9250610538565b600760fd1b6001600160f81b0319821610156104c75761049f6002846106de565b600f60fc1b6001600160f81b0319821610156104e85761049f6003846106de565b601f60fb1b6001600160f81b0319821610156105095761049f6004846106de565b603f60fa1b6001600160f81b03198216101561052a5761049f6005846106de565b6105356006846106de565b92505b5082610543816106f1565b93505061045c565b50909392505050565b5f807f000000000000000000000000f3810eb7d64d1c11ae12727d957c6202b24492f56001600160a01b03166350d25bcd6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105b2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105d69190610709565b9050806105e7846305f5e1006106b3565b6105f19190610720565b9392505050565b5f9392505050565b5f60208284031215610610575f80fd5b81356001600160e01b0319811681146105f1575f80fd5b5f805f806060858703121561063a575f80fd5b843567ffffffffffffffff80821115610651575f80fd5b818701915087601f830112610664575f80fd5b813581811115610672575f80fd5b886020828501011115610683575f80fd5b6020928301999098509187013596604001359550909350505050565b634e487b7160e01b5f52601160045260245ffd5b808202811582820484141761023d5761023d61069f565b634e487b7160e01b5f52603260045260245ffd5b8082018082111561023d5761023d61069f565b5f600182016107025761070261069f565b5060010190565b5f60208284031215610719575f80fd5b5051919050565b5f8261073a57634e487b7160e01b5f52601260045260245ffd5b50049056fea164736f6c6343000818000a","storage":{}},"0xf1ad43dc647f27c2366ab4742d68d21282f7d50e":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101d1575f3560e01c80638b95dd71116100fe578063c86902331161009e578063e32954eb1161006e578063e32954eb146104f2578063e59d895d14610505578063e985e9c514610518578063f1cb7e0614610553575f80fd5b8063c869023314610435578063ce3decdc1461048c578063d5fa2b001461049f578063d700ff33146104b2575f80fd5b8063a8fa5682116100d9578063a8fa5682146103ac578063a9784b3e146103bf578063ac9650d814610402578063bc1c58d114610422575f80fd5b80638b95dd7114610373578063a22cb46514610386578063a4b91a0114610399575f80fd5b80633603d758116101745780635c98042b116101445780635c98042b14610327578063623195b01461033a578063691f34311461034d5780637737221314610360575f80fd5b80633603d758146102975780633b3b57de146102aa5780634cbf6ba4146102bd57806359d1d43c14610307575f80fd5b8063124a319c116101af578063124a319c146102255780632203ab561461025057806329cd62ea14610271578063304e6ade14610284575f80fd5b806301ffc9a7146101d55780630af179d7146101fd57806310f13a8c14610212575b5f80fd5b6101e86101e3366004612267565b610566565b60405190151581526020015b60405180910390f35b61021061020b3660046122bd565b610576565b005b610210610220366004612304565b610778565b610238610233366004612377565b610842565b6040516001600160a01b0390911681526020016101f4565b61026361025e3660046123a1565b610a87565b6040516101f492919061240e565b61021061027f366004612426565b610bb5565b6102106102923660046122bd565b610c4d565b6102106102a536600461244f565b610cc6565b6102386102b836600461244f565b610d64565b6101e86102cb3660046123a1565b5f82815260208181526040808320546001600160401b031683526006825280832094835293815283822092825291909152205461ffff16151590565b61031a6103153660046122bd565b610d93565b6040516101f49190612466565b61031a61033536600461244f565b610e6f565b610210610348366004612478565b610f2a565b61031a61035b36600461244f565b610fc2565b61021061036e3660046122bd565b610ffa565b6102106103813660046124da565b611073565b6102106103943660046125b9565b611150565b6102106103a73660046125e3565b61122a565b61031a6103ba36600461261e565b6112f6565b6101e86103cd36600461265a565b6001600160a01b039283165f908152600c60209081526040808320948352938152838220929094168152925290205460ff1690565b6104156104103660046126ce565b611342565b6040516101f4919061270c565b61031a61043036600461244f565b61134f565b61047761044336600461244f565b5f81815260208181526040808320546001600160401b03168352600982528083209383529290522080546001909101549091565b604080519283526020830191909152016101f4565b61021061049a3660046122bd565b611387565b6102106104ad36600461276e565b6114c3565b6104da6104c036600461244f565b5f602081905290815260409020546001600160401b031681565b6040516001600160401b0390911681526020016101f4565b61041561050036600461279c565b6114e9565b6102106105133660046127d6565b6114fe565b6101e8610526366004612808565b6001600160a01b039182165f908152600b6020908152604080832093909416825291909152205460ff1690565b61031a6105613660046123a1565b6115a2565b5f61057082611666565b92915050565b826105808161168a565b610588575f80fd5b5f84815260208181526040808320548151601f87018490048402810184019092528582528392606092839285926001600160401b039091169183916105eb9183918d908d90819084018382808284375f9201919091525092939250506118b79050565b90505b80515160208201511015610712578661ffff165f03610652578060400151965061061781611912565b94508460405160200161062a9190612834565b60405160208183030381529060405280519060200120925061064b81611933565b9350610704565b5f61065c82611912565b9050816040015161ffff168861ffff16141580610680575061067e868261194f565b155b15610702576106db8c878a8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250505060208801518d91506106d2908290612863565b8b51158a61196a565b8160400151975081602001519650809550858051906020012093506106ff82611933565b94505b505b61070d81611bc9565b6105ee565b5083511561076c5761076c8a85888c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c925061076391508290508f612863565b8951158861196a565b50505050505050505050565b846107828161168a565b61078a575f80fd5b5f86815260208181526040808320546001600160401b03168352600a8252808320898452909152908190209051849184916107c89089908990612876565b908152602001604051809103902091826107e3929190612901565b5084846040516107f4929190612876565b6040518091039020867f448bc014f1536726cf8d54ff3d6481ed3cbc683c2591ca204274009afa09b1a18787878760405161083294939291906129e2565b60405180910390a3505050505050565b5f82815260208181526040808320546001600160401b031683526007825280832085845282528083206001600160e01b0319851684529091528120546001600160a01b03168015610894579050610570565b5f61089e85610d64565b90506001600160a01b0381166108b8575f92505050610570565b6040516301ffc9a760e01b60248201525f9081906001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b1790525161090f9190612834565b5f60405180830381855afa9150503d805f8114610947576040519150601f19603f3d011682016040523d82523d5f602084013e61094c565b606091505b509150915081158061095f575060208151105b80610989575080601f8151811061097857610978612a13565b01602001516001600160f81b031916155b1561099a575f945050505050610570565b6040516001600160e01b0319871660248201526001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b179052516109f09190612834565b5f60405180830381855afa9150503d805f8114610a28576040519150601f19603f3d011682016040523d82523d5f602084013e610a2d565b606091505b509092509050811580610a41575060208151105b80610a6b575080601f81518110610a5a57610a5a612a13565b01602001516001600160f81b031916155b15610a7c575f945050505050610570565b509095945050505050565b5f82815260208181526040808320546001600160401b03168352600180835281842086855290925282206060915b848111610b975780851615801590610ae457505f8181526020839052604081208054610ae090612885565b9050115b15610b8f5780825f8381526020019081526020015f20808054610b0690612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610b3290612885565b8015610b7d5780601f10610b5457610100808354040283529160200191610b7d565b820191905f5260205f20905b815481529060010190602001808311610b6057829003601f168201915b50505050509050935093505050610bae565b60011b610ab5565b505f60405180602001604052805f81525092509250505b9250929050565b82610bbf8161168a565b610bc7575f80fd5b60408051808201825284815260208082018581525f888152808352848120546001600160401b031681526009835284812089825283528490209251835551600190920191909155815185815290810184905285917f1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e4691015b60405180910390a250505050565b82610c578161168a565b610c5f575f80fd5b5f84815260208181526040808320546001600160401b03168352600382528083208784529091529020610c93838583612901565b50837fe379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d75788484604051610c3f929190612a27565b80610cd08161168a565b610cd8575f80fd5b5f82815260208190526040812080546001600160401b031691610cfa83612a3a565b82546101009290920a6001600160401b038181021990931691831602179091555f84815260208181526040918290205491519190921681528492507fc6621ccb8f3f5a04bb6502154b2caf6adf5983fe76dfef1cfc9c42e3579db444910160405180910390a25050565b5f80610d7183603c6115a2565b905080515f03610d8357505f92915050565b610d8c81611cae565b9392505050565b5f83815260208181526040808320546001600160401b03168352600a825280832086845290915290819020905160609190610dd19085908590612876565b90815260200160405180910390208054610dea90612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610e1690612885565b8015610e615780601f10610e3857610100808354040283529160200191610e61565b820191905f5260205f20905b815481529060010190602001808311610e4457829003601f168201915b505050505090509392505050565b5f81815260208181526040808320546001600160401b03168352600482528083208484529091529020805460609190610ea790612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610ed390612885565b8015610f1e5780601f10610ef557610100808354040283529160200191610f1e565b820191905f5260205f20905b815481529060010190602001808311610f0157829003601f168201915b50505050509050919050565b83610f348161168a565b610f3c575f80fd5b83610f48600182612863565b1615610f52575f80fd5b5f85815260208181526040808320546001600160401b031683526001825280832088845282528083208784529091529020610f8e838583612901565b50604051849086907faa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe3905f90a35050505050565b5f81815260208181526040808320546001600160401b03168352600882528083208484529091529020805460609190610ea790612885565b826110048161168a565b61100c575f80fd5b5f84815260208181526040808320546001600160401b03168352600882528083208784529091529020611040838583612901565b50837fb7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f78484604051610c3f929190612a27565b8261107d8161168a565b611085575f80fd5b837f65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af75284846040516110b792919061240e565b60405180910390a2603c830361110e57837f52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd26110f284611cae565b6040516001600160a01b03909116815260200160405180910390a25b5f84815260208181526040808320546001600160401b0316835260028252808320878452825280832086845290915290206111498382612a5f565b5050505050565b6001600160a01b03821633036111bf5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084015b60405180910390fd5b335f818152600b602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6001600160a01b03821633036112825760405162461bcd60e51b815260206004820181905260248201527f53657474696e672064656c65676174652073746174757320666f722073656c6660448201526064016111b6565b335f818152600c6020908152604080832087845282528083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519384529286917ff0ddb3b04746704017f9aa8bd728fcc2c1d11675041205350018915f5e4750a0910160405180910390a4505050565b5f83815260208181526040808320546001600160401b03168352600582528083208684528252808320858452825280832061ffff851684529091529020805460609190610dea90612885565b6060610d8c5f8484611ccb565b5f81815260208181526040808320546001600160401b03168352600382528083208484529091529020805460609190610ea790612885565b826113918161168a565b611399575f80fd5b5f84815260208181526040808320546001600160401b031680845260048352818420888552909252822080549192916113d190612885565b80601f01602080910402602001604051908101604052809291908181526020018280546113fd90612885565b80156114485780601f1061141f57610100808354040283529160200191611448565b820191905f5260205f20905b81548152906001019060200180831161142b57829003601f168201915b505050506001600160401b0384165f9081526004602090815260408083208b8452909152902091925061147e9050858783612901565b50857f8f15ed4b723ef428f250961da8315675b507046737e19319fc1a4d81bfe87f858287876040516114b393929190612b1e565b60405180910390a2505050505050565b816114cd8161168a565b6114d5575f80fd5b6114e483603c61038185611e88565b505050565b60606114f6848484611ccb565b949350505050565b826115088161168a565b611510575f80fd5b5f84815260208181526040808320546001600160401b031683526007825280832087845282528083206001600160e01b031987168085529083529281902080546001600160a01b0319166001600160a01b038716908117909155905190815286917f7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa910160405180910390a350505050565b5f82815260208181526040808320546001600160401b0316835260028252808320858452825280832084845290915290208054606091906115e290612885565b80601f016020809104026020016040519081016040528092919081815260200182805461160e90612885565b80156116595780601f1061163057610100808354040283529160200191611659565b820191905f5260205f20905b81548152906001019060200180831161163c57829003601f168201915b5050505050905092915050565b5f6001600160e01b03198216631674750f60e21b1480610570575061057082611eb8565b5f336001600160a01b037f0000000000000000000000004fbf7b2f171336958be5d15ff762a5cff53635681614806116ea5750336001600160a01b037f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5616145b156116f757506001919050565b6040516302571be360e01b8152600481018390525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa15801561175c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117809190612b4d565b90507f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b0316816001600160a01b031603611845576040516331a9108f60e11b8152600481018490527f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b031690636352211e90602401602060405180830381865afa15801561181e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118429190612b4d565b90505b6001600160a01b03811633148061187e57506001600160a01b0381165f908152600b6020908152604080832033845290915290205460ff165b80610d8c57506001600160a01b0381165f908152600c60209081526040808320868452825280832033845290915290205460ff16610d8c565b6118ff6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261057081611bc9565b602081015181516060916105709161192a9082611edc565b84519190611f33565b60a081015160c08201516060916105709161192a908290612863565b5f81518351148015610d8c5750610d8c835f845f8751611fa7565b865160208801205f61197d878787611f33565b90508315611aa1576001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c168452909152902080546119c690612885565b159050611a23576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611a0783612b68565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091528120611a62916121f9565b897f03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a12078a8a604051611a94929190612b84565b60405180910390a261076c565b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c16845290915290208054611ae290612885565b90505f03611b40576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611b2483612ba9565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091529020611b808282612a5f565b50897f52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b8a8a84604051611bb593929190612bbf565b60405180910390a250505050505050505050565b60c08101516020820181905281515111611be05750565b5f611bf2825f01518360200151611edc565b8260200151611c019190612bed565b8251909150611c109082611fc9565b61ffff166040830152611c24600282612bed565b8251909150611c339082611fc9565b61ffff166060830152611c47600282612bed565b8251909150611c569082611fef565b63ffffffff166080830152611c6c600482612bed565b82519091505f90611c7d9083611fc9565b61ffff169050611c8e600283612bed565b60a084018190529150611ca18183612bed565b60c0909301929092525050565b5f8151601414611cbc575f80fd5b5060200151600160601b900490565b6060816001600160401b03811115611ce557611ce56124c6565b604051908082528060200260200182016040528015611d1857816020015b6060815260200190600190039081611d035790505b5090505f5b82811015611e80578415611dd8575f848483818110611d3e57611d3e612a13565b9050602002810190611d509190612c00565b611d5f91602491600491612c42565b611d6891612c69565b9050858114611dd65760405162461bcd60e51b815260206004820152603460248201527f6d756c746963616c6c3a20416c6c207265636f726473206d7573742068617665604482015273040c240dac2e8c6d0d2dcce40dcc2dacad0c2e6d60631b60648201526084016111b6565b505b5f8030868685818110611ded57611ded612a13565b9050602002810190611dff9190612c00565b604051611e0d929190612876565b5f60405180830381855af49150503d805f8114611e45576040519150601f19603f3d011682016040523d82523d5f602084013e611e4a565b606091505b509150915081611e58575f80fd5b80848481518110611e6b57611e6b612a13565b60209081029190910101525050600101611d1d565b509392505050565b604080516014808252818301909252606091602082018180368337505050600160601b9290920260208301525090565b5f6001600160e01b0319821663c869023360e01b1480610570575061057082612017565b5f815b83518110611eef57611eef612c86565b5f611efa858361203b565b60ff169050611f0a816001612bed565b611f149083612bed565b9150805f03611f235750611f29565b50611edf565b6114f68382612863565b8251606090611f428385612bed565b1115611f4c575f80fd5b5f826001600160401b03811115611f6557611f656124c6565b6040519080825280601f01601f191660200182016040528015611f8f576020820181803683370190505b50905060208082019086860101610a7c82828761205e565b5f611fb38484846120b3565b611fbe8787856120b3565b149695505050505050565b81515f90611fd8836002612bed565b1115611fe2575f80fd5b50016002015161ffff1690565b81515f90611ffe836004612bed565b1115612008575f80fd5b50016004015163ffffffff1690565b5f6001600160e01b0319821663691f343160e01b14806105705750610570826120d5565b5f82828151811061204e5761204e612a13565b016020015160f81c905092915050565b602081106120965781518352612075602084612bed565b9250612082602083612bed565b915061208f602082612863565b905061205e565b905182516020929092036101000a5f190180199091169116179052565b82515f906120c18385612bed565b11156120cb575f80fd5b5091016020012090565b5f6001600160e01b031982166304928c6760e21b14806105705750610570825f6001600160e01b0319821663547d2b4160e11b148061212457506001600160e01b03198216635c98042b60e01b145b806105705750610570825f6001600160e01b0319821663bc1c58d160e01b14806105705750610570825f6001600160e01b03198216631d9dabef60e11b148061217d57506001600160e01b031982166378e5bf0360e11b145b806105705750610570825f6001600160e01b03198216631101d5ab60e11b14806105705750610570825f6001600160e01b0319821663d700ff3360e01b14806105705750610570825f6001600160e01b03198216634fbf043360e01b148061057057506301ffc9a760e01b6001600160e01b0319831614610570565b50805461220590612885565b5f825580601f10612214575050565b601f0160209004905f5260205f20908101906122309190612233565b50565b5b80821115612247575f8155600101612234565b5090565b80356001600160e01b031981168114612262575f80fd5b919050565b5f60208284031215612277575f80fd5b610d8c8261224b565b5f8083601f840112612290575f80fd5b5081356001600160401b038111156122a6575f80fd5b602083019150836020828501011115610bae575f80fd5b5f805f604084860312156122cf575f80fd5b8335925060208401356001600160401b038111156122eb575f80fd5b6122f786828701612280565b9497909650939450505050565b5f805f805f60608688031215612318575f80fd5b8535945060208601356001600160401b0380821115612335575f80fd5b61234189838a01612280565b90965094506040880135915080821115612359575f80fd5b5061236688828901612280565b969995985093965092949392505050565b5f8060408385031215612388575f80fd5b823591506123986020840161224b565b90509250929050565b5f80604083850312156123b2575f80fd5b50508035926020909101359150565b5f5b838110156123db5781810151838201526020016123c3565b50505f910152565b5f81518084526123fa8160208601602086016123c1565b601f01601f19169290920160200192915050565b828152604060208201525f6114f660408301846123e3565b5f805f60608486031215612438575f80fd5b505081359360208301359350604090920135919050565b5f6020828403121561245f575f80fd5b5035919050565b602081525f610d8c60208301846123e3565b5f805f806060858703121561248b575f80fd5b843593506020850135925060408501356001600160401b038111156124ae575f80fd5b6124ba87828801612280565b95989497509550505050565b634e487b7160e01b5f52604160045260245ffd5b5f805f606084860312156124ec575f80fd5b833592506020840135915060408401356001600160401b0380821115612510575f80fd5b818601915086601f830112612523575f80fd5b813581811115612535576125356124c6565b604051601f8201601f19908116603f0116810190838211818310171561255d5761255d6124c6565b81604052828152896020848701011115612575575f80fd5b826020860160208301375f6020848301015280955050505050509250925092565b6001600160a01b0381168114612230575f80fd5b80358015158114612262575f80fd5b5f80604083850312156125ca575f80fd5b82356125d581612596565b9150612398602084016125aa565b5f805f606084860312156125f5575f80fd5b83359250602084013561260781612596565b9150612615604085016125aa565b90509250925092565b5f805f60608486031215612630575f80fd5b8335925060208401359150604084013561ffff8116811461264f575f80fd5b809150509250925092565b5f805f6060848603121561266c575f80fd5b833561267781612596565b925060208401359150604084013561264f81612596565b5f8083601f84011261269e575f80fd5b5081356001600160401b038111156126b4575f80fd5b6020830191508360208260051b8501011115610bae575f80fd5b5f80602083850312156126df575f80fd5b82356001600160401b038111156126f4575f80fd5b6127008582860161268e565b90969095509350505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b8281101561276157603f1988860301845261274f8583516123e3565b94509285019290850190600101612733565b5092979650505050505050565b5f806040838503121561277f575f80fd5b82359150602083013561279181612596565b809150509250929050565b5f805f604084860312156127ae575f80fd5b8335925060208401356001600160401b038111156127ca575f80fd5b6122f78682870161268e565b5f805f606084860312156127e8575f80fd5b833592506127f86020850161224b565b9150604084013561264f81612596565b5f8060408385031215612819575f80fd5b823561282481612596565b9150602083013561279181612596565b5f82516128458184602087016123c1565b9190910192915050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156105705761057061284f565b818382375f9101908152919050565b600181811c9082168061289957607f821691505b6020821081036128b757634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156114e457805f5260205f20601f840160051c810160208510156128e25750805b601f840160051c820191505b81811015611149575f81556001016128ee565b6001600160401b03831115612918576129186124c6565b61292c836129268354612885565b836128bd565b5f601f84116001811461295d575f85156129465750838201355b5f19600387901b1c1916600186901b178355611149565b5f83815260208120601f198716915b8281101561298c578685013582556020948501946001909201910161296c565b50868210156129a8575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b604081525f6129f56040830186886129ba565b8281036020840152612a088185876129ba565b979650505050505050565b634e487b7160e01b5f52603260045260245ffd5b602081525f6114f66020830184866129ba565b5f6001600160401b03808316818103612a5557612a5561284f565b6001019392505050565b81516001600160401b03811115612a7857612a786124c6565b612a8c81612a868454612885565b846128bd565b602080601f831160018114612abf575f8415612aa85750858301515b5f19600386901b1c1916600185901b178555612b16565b5f85815260208120601f198616915b82811015612aed57888601518255948401946001909101908401612ace565b5085821015612b0a57878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b604081525f612b3060408301866123e3565b8281036020840152612b438185876129ba565b9695505050505050565b5f60208284031215612b5d575f80fd5b8151610d8c81612596565b5f61ffff821680612b7b57612b7b61284f565b5f190192915050565b604081525f612b9660408301856123e3565b905061ffff831660208301529392505050565b5f61ffff808316818103612a5557612a5561284f565b606081525f612bd160608301866123e3565b61ffff851660208401528281036040840152612b4381856123e3565b808201808211156105705761057061284f565b5f808335601e19843603018112612c15575f80fd5b8301803591506001600160401b03821115612c2e575f80fd5b602001915036819003821315610bae575f80fd5b5f8085851115612c50575f80fd5b83861115612c5c575f80fd5b5050820193919092039150565b80356020831015610570575f19602084900360031b1b1692915050565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{}},"0xf3810eb7d64d1c11ae12727d957c6202b24492f5":{"nonce":1,"balance":"0x0","code":"0x6080604052348015600e575f80fd5b50600436106030575f3560e01c806350d25bcd146034578063e5c19b2d146048575b5f80fd5b5f5460405190815260200160405180910390f35b605760533660046059565b5f55565b005b5f602082840312156068575f80fd5b503591905056fea164736f6c6343000818000a","storage":{"0x0":"0x5f5e100"}},"0xf670681605efc4efc804f5a9b97ee89520473d56":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c80638da5cb5b11610088578063c66485b211610063578063c66485b2146101da578063da8c229e146101ed578063e0dba60f1461021f578063f2fde38b14610232575f80fd5b80638da5cb5b146101a4578063bffbe61c146101b4578063c47f0027146101c7575f80fd5b806365669631116100c35780636566963114610161578063715018a6146101745780637a806d6b1461017e578063828eab0e14610191575f80fd5b80630f5a5466146100e95780631e83409a1461010f5780633f15457f14610122575b5f80fd5b6100fc6100f7366004610958565b610245565b6040519081526020015b60405180910390f35b6100fc61011d36600461098f565b610258565b6101497f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a981565b6040516001600160a01b039091168152602001610106565b6100fc61016f3660046109aa565b610279565b61017c610526565b005b6100fc61018c366004610a8f565b610539565b600254610149906001600160a01b031681565b5f546001600160a01b0316610149565b6100fc6101c236600461098f565b6105ae565b6100fc6101d5366004610b00565b610608565b61017c6101e836600461098f565b610624565b61020f6101fb36600461098f565b60016020525f908152604090205460ff1681565b6040519015158152602001610106565b61017c61022d366004610b47565b6106e4565b61017c61024036600461098f565b61074a565b5f610251338484610279565b9392505050565b6002545f9061027390339084906001600160a01b0316610279565b92915050565b5f836001600160a01b0381163314806102a05750335f9081526001602052604090205460ff165b80610334575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063e985e9c590604401602060405180830381865afa158015610310573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103349190610b73565b806103435750610343816107c3565b6103e05760405162461bcd60e51b815260206004820152605b60248201527f526576657273655265676973747261723a2043616c6c6572206973206e6f742060448201527f6120636f6e74726f6c6c6572206f7220617574686f726973656420627920616460648201527f6472657373206f7220746865206164647265737320697473656c660000000000608482015260a4015b60405180910390fd5b5f6103ea8661083a565b604080517f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e2602080830191909152818301849052825180830384018152606090920192839052815191012091925081906001600160a01b038916907f6ada868dd3058cf77a48a74489fd7963688e5464b2b0fa957ace976243270e92905f90a36040516305ef2c7f60e41b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26004820152602481018390526001600160a01b03878116604483015286811660648301525f60848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610505575f80fd5b505af1158015610517573d5f803e3d5ffd5b50929998505050505050505050565b61052e61089c565b6105375f6108f5565b565b5f80610546868686610279565b604051637737221360e01b81529091506001600160a01b038516906377372213906105779084908790600401610b8e565b5f604051808303815f87803b15801561058e575f80fd5b505af11580156105a0573d5f803e3d5ffd5b509298975050505050505050565b5f7f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26105d98361083a565b604080516020810193909352820152606001604051602081830303815290604052805190602001209050919050565b6002545f9061027390339081906001600160a01b031685610539565b61062c61089c565b6001600160a01b03811661069b5760405162461bcd60e51b815260206004820152603060248201527f526576657273655265676973747261723a205265736f6c76657220616464726560448201526f07373206d757374206e6f7420626520360841b60648201526084016103d7565b600280546001600160a01b0319166001600160a01b0383169081179091556040517feae17a84d9eb83d8c8eb317f9e7d64857bc363fa51674d996c023f4340c577cf905f90a250565b6106ec61089c565b6001600160a01b0382165f81815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b61075261089c565b6001600160a01b0381166107b75760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016103d7565b6107c0816108f5565b50565b5f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801561081e575060408051601f3d908101601f1916820190925261081b91810190610be2565b60015b61082957505f919050565b6001600160a01b0316331492915050565b5f60285b8015610891575f19016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a81536010909204915f19016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a815360108304925061083e565b505060285f20919050565b5f546001600160a01b031633146105375760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016103d7565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146107c0575f80fd5b5f8060408385031215610969575f80fd5b823561097481610944565b9150602083013561098481610944565b809150509250929050565b5f6020828403121561099f575f80fd5b813561025181610944565b5f805f606084860312156109bc575f80fd5b83356109c781610944565b925060208401356109d781610944565b915060408401356109e781610944565b809150509250925092565b634e487b7160e01b5f52604160045260245ffd5b5f82601f830112610a15575f80fd5b813567ffffffffffffffff80821115610a3057610a306109f2565b604051601f8301601f19908116603f01168101908282118183101715610a5857610a586109f2565b81604052838152866020858801011115610a70575f80fd5b836020870160208301375f602085830101528094505050505092915050565b5f805f8060808587031215610aa2575f80fd5b8435610aad81610944565b93506020850135610abd81610944565b92506040850135610acd81610944565b9150606085013567ffffffffffffffff811115610ae8575f80fd5b610af487828801610a06565b91505092959194509250565b5f60208284031215610b10575f80fd5b813567ffffffffffffffff811115610b26575f80fd5b610b3284828501610a06565b949350505050565b80151581146107c0575f80fd5b5f8060408385031215610b58575f80fd5b8235610b6381610944565b9150602083013561098481610b3a565b5f60208284031215610b83575f80fd5b815161025181610b3a565b8281525f60206040602084015283518060408501525f5b81811015610bc157858101830151858201606001528201610ba5565b505f606082860101526060601f19601f830116850101925050509392505050565b5f60208284031215610bf2575f80fd5b81516102518161094456fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2":"0x9df67c91f1bfcb4d966cf764e9218685e7c59e8a","0x1f5b7623941da966ad7183d9cbb6db584f6d4add26919ac31a2d3f19a164e7e1":"0x1","0xbe5de2149ce76ca5934fa63455cd675fd52e2d30f3328985d298a627ca0f05e9":"0x1"}},"0xf8c26340c1eaea6c7ff1760b25005e1306953572":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061010b5760003560e01c80638c87a4ea116100a2578063b87abc1111610071578063b87abc1114610244578063c597407314610257578063ce92b33e1461026a578063e837ae741461027d578063ec129eea146102905761010b565b80638c87a4ea146101ea5780638f69c188146101fd578063a3557e6c14610210578063b85afd28146102235761010b565b806347c81699116100de57806347c8169914610181578063672b9f81146101945780636ccbae5f146101b55780637b103999146101d55761010b565b80631bd8cc1a146101105780631be5e7ed146101395780632c3d376d14610159578063310bd74b1461016c575b600080fd5b61012361011e3660046117b4565b6102a3565b6040516101309190611eee565b60405180910390f35b61014c610147366004611aec565b6104f2565b6040516101309190611fd6565b61014c610167366004611b21565b610673565b61017f61017a366004611b21565b610714565b005b61017f61018f3660046119b5565b6107c0565b6101a76101a2366004611b94565b6108ef565b604051610130929190611fe7565b6101c86101c3366004611b21565b6109c3565b604051610130919061204c565b6101dd6109d5565b6040516101309190611ea9565b6101236101f836600461191d565b6109e5565b61017f61020b366004611878565b610a74565b61017f61021e366004611878565b610af0565b610236610231366004611951565b610b1b565b604051610130929190611eff565b61017f610252366004611b3f565b610ca9565b61017f610265366004611a39565b610d43565b61017f610278366004611808565b610df9565b61017f61028b366004611808565b610e97565b61017f61029e366004611808565b610f4e565b60015460405163b3f9e4cb60e01b815260609183916001600160a01b039091169063b3f9e4cb906102d890849060040161204c565b60206040518083038186803b1580156102f057600080fd5b505afa158015610304573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610328919081019061178e565b6001600160a01b0316306001600160a01b0316146103615760405162461bcd60e51b81526004016103589061201c565b60405180910390fd5b604080518581526020808702820101909152849060609082801561039957816020015b60608152602001906001900390816103845790505b506000868152600360205260408120549192505b838110156104e557600087815260026020908152604080832085845290915290208989838181106103da57fe5b602002820190508035601e19368490030181126103f657600080fd5b909101602081019150356001600160401b0381111561041457600080fd5b3681900382131561042457600080fd5b604051610432929190611e70565b9081526040805160209281900383018120805460026001821615610100026000190190911604601f810185900485028301850190935282825290929091908301828280156104c15780601f10610496576101008083540402835291602001916104c1565b820191906000526020600020905b8154815290600101906020018083116104a457829003601f168201915b50505050508382815181106104d257fe5b60209081029190910101526001016103ad565b5090979650505050505050565b60015460405163b3f9e4cb60e01b815260609183916001600160a01b039091169063b3f9e4cb9061052790849060040161204c565b60206040518083038186803b15801561053f57600080fd5b505afa158015610553573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610577919081019061178e565b6001600160a01b0316306001600160a01b0316146105a75760405162461bcd60e51b81526004016103589061201c565b6000838152600260209081526040808320600383528184205484529091529081902090516105d6908690611e7d565b9081526040805160209281900383018120805460026001821615610100026000190190911604601f810185900485028301850190935282825290929091908301828280156106655780601f1061063a57610100808354040283529160200191610665565b820191906000526020600020905b81548152906001019060200180831161064857829003601f168201915b505050505091505092915050565b60008181526004602090815260409182902080548351601f60026000196101006001861615020190931692909204918201849004840281018401909452808452606093928301828280156107085780601f106106dd57610100808354040283529160200191610708565b820191906000526020600020905b8154815290600101906020018083116106eb57829003601f168201915b50505050509050919050565b60015460405163430c208160e01b815282916001600160a01b03169063430c2081906107469033908590600401611ec5565b60206040518083038186803b15801561075e57600080fd5b505afa158015610772573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506107969190810190611997565b6107b25760405162461bcd60e51b81526004016103589061202c565b6107bc4283610fec565b5050565b60015460405163430c208160e01b815282916001600160a01b03169063430c2081906107f29033908590600401611ec5565b60206040518083038186803b15801561080a57600080fd5b505afa15801561081e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506108429190810190611997565b61085e5760405162461bcd60e51b81526004016103589061202c565b6108e7600360008481526020019081526020016000205487878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061108e915050565b505050505050565b60015460405163b3f9e4cb60e01b8152606091829184916001600160a01b03169063b3f9e4cb9061092490849060040161204c565b60206040518083038186803b15801561093c57600080fd5b505afa158015610950573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610974919081019061178e565b6001600160a01b0316306001600160a01b0316146109a45760405162461bcd60e51b81526004016103589061201c565b6109ad85610673565b92506109b983856104f2565b9150509250929050565b60009081526020819052604090205490565b6001546001600160a01b03165b90565b6060600082519050606081604051908082528060200260200182016040528015610a2357816020015b6060815260200190600190039081610a0e5790505b50905060005b82811015610a6c57610a4d858281518110610a4057fe5b6020026020010151610673565b828281518110610a5957fe5b6020908102919091010152600101610a29565b509392505050565b610acf63ce92b33e60e01b858585604051602401610a9493929190611f24565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092178252519020838361129f565b600082815260036020526040902054610aea908585856113c3565b50505050565b610b1063ec129eea60e01b858585604051602401610a9493929190611f24565b610aea84848461140a565b60015460405163b3f9e4cb60e01b8152606091829184916001600160a01b03169063b3f9e4cb90610b5090849060040161204c565b60206040518083038186803b158015610b6857600080fd5b505afa158015610b7c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610ba0919081019061178e565b6001600160a01b0316306001600160a01b031614610bd05760405162461bcd60e51b81526004016103589061201c565b8451604080518281526020808402820101909152818015610c0557816020015b6060815260200190600190039081610bf05790505b50935080604051908082528060200260200182016040528015610c3c57816020015b6060815260200190600190039081610c275790505b50925060005b81811015610c9f57610c67878281518110610c5957fe5b6020026020010151876108ef565b8651879084908110610c7557fe5b60200260200101868481518110610c8857fe5b602090810291909101019190915252600101610c42565b5050509250929050565b610d3463310bd74b60e01b84604051602401610cc5919061204c565b60408051601f19818403018152918152602080830180516001600160e01b03166001600160e01b031990951694909417845291519092208251601f8601839004830281018301909352848352918691869086908190840183828082843760009201919091525061129f92505050565b610d3e4284610fec565b505050565b610d676347c8169960e01b8888888888604051602401610cc5959493929190611f96565b610df0600360008581526020019081526020016000205488888080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8c018190048102820181019092528a815292508a915089908190840183828082843760009201919091525089925061108e915050565b50505050505050565b60015460405163430c208160e01b815282916001600160a01b03169063430c208190610e2b9033908590600401611ec5565b60206040518083038186803b158015610e4357600080fd5b505afa158015610e57573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610e7b9190810190611997565b610acf5760405162461bcd60e51b81526004016103589061202c565b6005546040516355138f0d60e11b81526001600160a01b039091169063aa271e1a90610ec7903390600401611eb7565b60206040518083038186803b158015610edf57600080fd5b505afa158015610ef3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610f179190810190611997565b610f335760405162461bcd60e51b81526004016103589061203c565b600081815260036020526040902054610d3e908484846113c3565b60015460405163430c208160e01b815282916001600160a01b03169063430c208190610f809033908590600401611ec5565b60206040518083038186803b158015610f9857600080fd5b505afa158015610fac573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610fd09190810190611997565b610b105760405162461bcd60e51b81526004016103589061202c565b600081815260036020526040808220849055600154905163538361a760e01b81526001600160a01b039091169163538361a79161102d91859160040161205a565b600060405180830381600087803b15801561104757600080fd5b505af115801561105b573d6000803e3d6000fd5b50506040518392507f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9150600090a25050565b825160208085019190912060008381526002835260408082208883529093528281209251919290916110c1908790611e7d565b908152604051602091819003919091018120546001805463538361a760e01b84526002918316156101000260001901909216041592506001600160a01b03169063538361a7906111179086908690600401612075565b600060405180830381600087803b15801561113157600080fd5b505af1158015611145573d6000803e3d6000fd5b50505060008481526002602090815260408083208a8452909152908190209051869250611173908890611e7d565b90815260200160405180910390209080519060200190611194929190611521565b50600082815260046020526040902054600260001961010060018416150201909116046111dc57600082815260046020908152604090912086516111da92880190611521565b505b801561123157846040516111f09190611e7d565b6040518091039020837f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f86876040516112289190611fd6565b60405180910390a35b8360405161123f9190611e7d565b6040518091039020856040516112559190611e7d565b6040518091039020847f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d92888860405161128f929190611fe7565b60405180910390a4505050505050565b6000828152602081815260408083205490519092916112f59185916112e9916112ce918a913091899101611e39565b60405160208183030381529060405280519060200120611414565b9063ffffffff61144416565b90506001600160a01b0381161580159061138c575060015460405163430c208160e01b81526001600160a01b039091169063430c20819061133c9084908890600401611ee0565b60206040518083038186803b15801561135457600080fd5b505afa158015611368573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061138c9190810190611997565b6113a85760405162461bcd60e51b81526004016103589061200c565b50505060009081526020819052604090208054600101905550565b825160005b818110156108e757611402868683815181106113e057fe5b60200260200101518684815181106113f457fe5b60200260200101518661108e565b6001016113c8565b610f334282610fec565b6000816040516020016114279190611e89565b604051602081830303815290604052805190602001209050919050565b600081516041146114575750600061151b565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a082111561149d576000935050505061151b565b8060ff16601b141580156114b557508060ff16601c14155b156114c6576000935050505061151b565b600186828585604051600081526020016040526040516114e99493929190611f58565b6020604051602081039080840390855afa15801561150b573d6000803e3d6000fd5b5050506020604051035193505050505b92915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061156257805160ff191683800117855561158f565b8280016001018555821561158f579182015b8281111561158f578251825591602001919060010190611574565b5061159b92915061159f565b5090565b6109e291905b8082111561159b57600081556001016115a5565b805161151b816121a4565b60008083601f8401126115d657600080fd5b5081356001600160401b038111156115ed57600080fd5b60208301915083602082028301111561160557600080fd5b9250929050565b600082601f83011261161d57600080fd5b813561163061162b826120a9565b612083565b81815260209384019390925082018360005b8381101561166e57813586016116588882611734565b8452506020928301929190910190600101611642565b5050505092915050565b600082601f83011261168957600080fd5b813561169761162b826120a9565b915081818352602084019350602081019050838560208402820111156116bc57600080fd5b60005b8381101561166e57816116d28882611783565b84525060209283019291909101906001016116bf565b805161151b816121bb565b60008083601f84011261170557600080fd5b5081356001600160401b0381111561171c57600080fd5b60208301915083600182028301111561160557600080fd5b600082601f83011261174557600080fd5b813561175361162b826120c9565b9150808252602083016020830185838301111561176f57600080fd5b61177a83828461214b565b50505092915050565b803561151b816121c4565b6000602082840312156117a057600080fd5b60006117ac84846115b9565b949350505050565b6000806000604084860312156117c957600080fd5b83356001600160401b038111156117df57600080fd5b6117eb868287016115c4565b935093505060206117fe86828701611783565b9150509250925092565b60008060006060848603121561181d57600080fd5b83356001600160401b0381111561183357600080fd5b61183f8682870161160c565b93505060208401356001600160401b0381111561185b57600080fd5b6118678682870161160c565b92505060406117fe86828701611783565b6000806000806080858703121561188e57600080fd5b84356001600160401b038111156118a457600080fd5b6118b08782880161160c565b94505060208501356001600160401b038111156118cc57600080fd5b6118d88782880161160c565b93505060406118e987828801611783565b92505060608501356001600160401b0381111561190557600080fd5b61191187828801611734565b91505092959194509250565b60006020828403121561192f57600080fd5b81356001600160401b0381111561194557600080fd5b6117ac84828501611678565b6000806040838503121561196457600080fd5b82356001600160401b0381111561197a57600080fd5b61198685828601611678565b92505060206109b985828601611783565b6000602082840312156119a957600080fd5b60006117ac84846116e8565b6000806000806000606086880312156119cd57600080fd5b85356001600160401b038111156119e357600080fd5b6119ef888289016116f3565b955095505060208601356001600160401b03811115611a0d57600080fd5b611a19888289016116f3565b93509350506040611a2c88828901611783565b9150509295509295909350565b60008060008060008060006080888a031215611a5457600080fd5b87356001600160401b03811115611a6a57600080fd5b611a768a828b016116f3565b975097505060208801356001600160401b03811115611a9457600080fd5b611aa08a828b016116f3565b95509550506040611ab38a828b01611783565b93505060608801356001600160401b03811115611acf57600080fd5b611adb8a828b016116f3565b925092505092959891949750929550565b60008060408385031215611aff57600080fd5b82356001600160401b03811115611b1557600080fd5b61198685828601611734565b600060208284031215611b3357600080fd5b60006117ac8484611783565b600080600060408486031215611b5457600080fd5b6000611b608686611783565b93505060208401356001600160401b03811115611b7c57600080fd5b611b88868287016116f3565b92509250509250925092565b60008060408385031215611ba757600080fd5b60006119868585611783565b6000611bbf8383611ccb565b9392505050565b611bcf8161212a565b82525050565b611bcf81612108565b611bcf611bea82612108565b612183565b6000611bfa826120f6565b611c0481856120fa565b935083602082028501611c16856120f0565b8060005b85811015611c505784840389528151611c338582611bb3565b9450611c3e836120f0565b60209a909a0199925050600101611c1a565b5091979650505050505050565b611bcf816109e2565b611bcf611c72826109e2565b6109e2565b611bcf81612135565b6000611c8c83856120fa565b9350611c9983858461214b565b611ca283612194565b9093019392505050565b6000611cb88385612103565b9350611cc583858461214b565b50500190565b6000611cd6826120f6565b611ce081856120fa565b9350611cf0818560208601612157565b611ca281612194565b6000611d04826120f6565b611d0e8185612103565b9350611d1e818560208601612157565b9290920192915050565b6000611d35601c83612103565b7f19457468657265756d205369676e6564204d6573736167653a0a3332000000008152601c0192915050565b6000611d6e6011836120fa565b70494e56414c49445f5349474e415455524560781b815260200192915050565b6000611d9b601d836120fa565b7f5245534f4c5645525f44455441434845445f46524f4d5f444f4d41494e000000815260200192915050565b6000611dd4601f836120fa565b7f53454e4445525f49535f4e4f545f415050524f5645445f4f525f4f574e455200815260200192915050565b6000611e0d6014836120fa565b7329a2a72222a92fa4a9afa727aa2fa6a4a72a22a960611b815260200192915050565b611bcf81612124565b6000611e458286611c66565b602082019150611e558285611bde565b601482019150611e658284611c66565b506020019392505050565b60006117ac828486611cac565b6000611bbf8284611cf9565b6000611e9482611d28565b9150611ea08284611c66565b50602001919050565b6020810161151b8284611bd5565b6020810161151b8284611bc6565b60408101611ed38285611bc6565b611bbf6020830184611c5d565b60408101611ed38285611bd5565b60208082528101611bbf8184611bef565b60408082528101611f108185611bef565b905081810360208301526117ac8184611bef565b60608082528101611f358186611bef565b90508181036020830152611f498185611bef565b90506117ac6040830184611c5d565b60808101611f668287611c5d565b611f736020830186611e30565b611f806040830185611c5d565b611f8d6060830184611c5d565b95945050505050565b60608082528101611fa8818789611c80565b90508181036020830152611fbd818587611c80565b9050611fcc6040830184611c5d565b9695505050505050565b60208082528101611bbf8184611ccb565b60408082528101611ff88185611ccb565b905081810360208301526117ac8184611ccb565b6020808252810161151b81611d61565b6020808252810161151b81611d8e565b6020808252810161151b81611dc7565b6020808252810161151b81611e00565b6020810161151b8284611c5d565b604081016120688285611c5d565b611bbf6020830184611c77565b60408101611ed38285611c5d565b6040518181016001600160401b03811182821017156120a157600080fd5b604052919050565b60006001600160401b038211156120bf57600080fd5b5060209081020190565b60006001600160401b038211156120df57600080fd5b506020601f91909101601f19160190565b60200190565b5190565b90815260200190565b919050565b600061151b82612118565b151590565b6001600160a01b031690565b60ff1690565b600061151b82612140565b600061151b826109e2565b600061151b82612108565b82818337506000910152565b60005b8381101561217257818101518382015260200161215a565b83811115610aea5750506000910152565b600061151b82600061151b8261219e565b601f01601f191690565b60601b90565b6121ad81612108565b81146121b857600080fd5b50565b6121ad81612113565b6121ad816109e256fea365627a7a723158207a1d8dfd286d14fcafd1812a4c44813691ac746a5a23fa711ac5551c9509654d6c6578706572696d656e74616cf564736f6c634300050c0040","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x5":"0x4a3c194eb88966178bfdd81744dddafed611b830"}},"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa":{"nonce":93,"balance":"0x35aac60bbae01d424b","code":"0x","storage":{}}},"best_block_number":"0x5d"} \ No newline at end of file From 4ffae0ca8c9ea040ac02872fef8ac8340870ac79 Mon Sep 17 00:00:00 2001 From: derain Date: Tue, 21 May 2024 20:10:00 +0300 Subject: [PATCH 07/21] [REG-1273] - Remove old sandbox db from dist --- dist/sandbox/db.tgz | Bin 548070 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 dist/sandbox/db.tgz diff --git a/dist/sandbox/db.tgz b/dist/sandbox/db.tgz deleted file mode 100644 index bac527ed4728642940e1c00f0160847f1e2cb663..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 548070 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

Ol_Dul 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

gx(Kla``Ad2JtAHU^5K>;au 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
p+qWYIj-~WHdaV5g_yUK4o>y5F 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¥>uf|GG^XMW$m(JShF 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 From 455511084a039296362406e3d2af29f283ca67f0 Mon Sep 17 00:00:00 2001 From: derain Date: Tue, 21 May 2024 20:17:51 +0300 Subject: [PATCH 08/21] [REG-1273] - Update package version --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index ef850195..77dabe3d 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "uns", - "version": "0.9.14", + "version": "0.9.15", "description": "UNS contracts and tools", "repository": "https://github.com/unstoppabledomains/uns.git", "main": "./dist/index.js", From e0fcc99967c58aecc2f39ec726f1a3de3beeb5ac Mon Sep 17 00:00:00 2001 From: derain Date: Tue, 21 May 2024 20:20:38 +0300 Subject: [PATCH 09/21] [REG-1273] - Update UNS and ENS configs versions --- ens-config.json | 2 +- uns-config.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/ens-config.json b/ens-config.json index 91b1b1b2..7f8894e6 100644 --- a/ens-config.json +++ b/ens-config.json @@ -1,5 +1,5 @@ { - "version": "0.2.0", + "version": "0.2.1", "networks": { "1": { "contracts": { diff --git a/uns-config.json b/uns-config.json index e6c2de7d..487b6b90 100644 --- a/uns-config.json +++ b/uns-config.json @@ -1,5 +1,5 @@ { - "version": "0.9.2", + "version": "0.9.3", "networks": { "1": { "contracts": { From ff1d829ac2a099645660b742a00018ce71ce2b1e Mon Sep 17 00:00:00 2001 From: derain Date: Tue, 21 May 2024 20:49:55 +0300 Subject: [PATCH 10/21] [REG-1273] - Fix foundry installer for CI --- package.json | 1 - sandbox/anvil-server.ts | 6 +- sandbox/foundry-cli.ts | 224 ++++++++++++++++++++++++++++++++++++++++ sandbox/state.json | 2 +- yarn.lock | 20 +--- 5 files changed, 229 insertions(+), 24 deletions(-) create mode 100644 sandbox/foundry-cli.ts diff --git a/package.json b/package.json index 77dabe3d..dfa4151f 100644 --- a/package.json +++ b/package.json @@ -100,7 +100,6 @@ }, "dependencies": { "@ensdomains/address-encoder": "^0.2.22", - "@foundry-rs/easy-foundryup": "^0.1.3", "bip39": "^3.0.0", "bip44-constants": "^243.0.0", "hdkey": "^2.0.1", diff --git a/sandbox/anvil-server.ts b/sandbox/anvil-server.ts index 07a42c78..136775e7 100644 --- a/sandbox/anvil-server.ts +++ b/sandbox/anvil-server.ts @@ -1,8 +1,8 @@ import { spawn, ChildProcessWithoutNullStreams } from 'child_process'; import debug from 'debug'; -import { getAnvilCommand } from '@foundry-rs/easy-foundryup'; -import { run as installFoundry } from '@foundry-rs/easy-foundryup/dist/binary'; import _ from 'lodash'; +import { getAnvilCommand, checkAnvil } from './foundry-cli'; +import { run as installFoundry } from './foundry-cli'; const log = debug('UNS:sandbox'); @@ -50,7 +50,7 @@ export class AnvilServer { public static async launch (options: Partial, inherit = false): Promise { try { - if (!(await getAnvilCommand())) { + if (!(await checkAnvil())) { throw new Error('Foundry not found'); } } catch (e) { diff --git a/sandbox/foundry-cli.ts b/sandbox/foundry-cli.ts new file mode 100644 index 00000000..cd4a728b --- /dev/null +++ b/sandbox/foundry-cli.ts @@ -0,0 +1,224 @@ +import { exec, execSync, spawn } from 'child_process'; + +import os from 'os'; +import path from 'path'; +import commandExists from 'command-exists'; + +const FOUNDRYUP_INSTALLER = 'curl -L "https://foundry.paradigm.xyz" | bash'; + +/** + * @returns the path to the anvil path to use, if `anvil` is in path then this will be returned + * + */ +export async function getAnvilCommand (): Promise { + try { + return commandExists('anvil'); + } catch (e) { + const cmd = foundryAnvilBinPath(); + await checkCommand(`${cmd} --version`); + return cmd; + } +} + +/** + * @returns the path to the cast path to use, if `cast` is in path then this will be returned + * + */ +export async function getCastCommand (): Promise { + try { + return commandExists('cast'); + } catch (e) { + const cmd = foundryCastBinPath(); + await checkCommand(`${cmd} --version`); + return cmd; + } +} + +/** + * @returns the path to the forge path to use, if `forge` is in path then this will be returned + * + */ +export async function getForgeCommand (): Promise { + try { + return commandExists('forge'); + } catch (e) { + const cmd = foundryForgeBinPath(); + await checkCommand(`${cmd} --version`); + return cmd; + } +} + +/** + * @returns the path to the forge path to use, if `forge` is in path then this will be returned + * + */ +export function getForgeCommandSync (): string { + if (commandExists.sync('forge')) { + return 'forge'; + } else { + const cmd = foundryForgeBinPath(); + checkCommandSync(`${cmd} --version`); + return cmd; + } +} + +/** + * @returns the path to the foundry directory: `$HOME/.foundry` + */ +export function foundryDir (): string { + return path.join(os.homedir(), '.foundry'); +} + +/** + * @returns the path to the foundry directory that stores the tool binaries: `$HOME/.foundry/bin` + */ +export function foundryBinDir (): string { + return path.join(foundryDir(), 'bin'); +} + +/** + * @returns the path to the anvil binary in the foundry dir: `$HOME/.foundry/bin/anvil` + */ +export function foundryAnvilBinPath (): string { + return path.join(foundryDir(), 'anvil'); +} + +/** + * @returns the path to the cast binary in the foundry dir: `$HOME/.foundry/bin/cast` + */ +export function foundryCastBinPath (): string { + return path.join(foundryDir(), 'cast'); +} + +/** + * @returns the path to the anvil forge in the foundry dir: `$HOME/.foundry/bin/forge` + */ +export function foundryForgeBinPath (): string { + return path.join(foundryDir(), 'forge'); +} + +/** + * Installs foundryup via subprocess + */ +export async function selfInstall (): Promise { + return new Promise((resolve) => { + const process = spawn('/bin/bash', ['-c', FOUNDRYUP_INSTALLER], { + stdio: 'inherit', + }); + process.on('exit', (code) => { + resolve(code === 0); + }); + }); +} + +/** + * Optional target location `foundryup` accepts + */ +export interface FoundryupTarget { + branch?: string; + commit?: string; + repo?: string; + path?: string; +} + +/** + * Executes `foundryup` + * + * @param install whether to install `foundryup` itself + * @param _target additional `foundryup` params + */ +export async function run (install = true, _target: FoundryupTarget = {}): Promise { + if (install) { + if (!(await checkFoundryUp())) { + if (!(await selfInstall())) { + return false; + } + } + } + return checkCommand('foundryup'); +} + +/** + * Checks if foundryup exists + * + * @return true if `foundryup` exists + */ +export async function checkFoundryUp (): Promise { + return checkCommand('foundryup --version'); +} + +/** + * Checks if anvil exists + * + * @return true if `anvil` exists + */ +export async function checkAnvil (): Promise { + return checkCommand('anvil --version'); +} + +/** + * Checks if cast exists + * + * @return true if `cast` exists + */ +export async function checkCast (): Promise { + return checkCommand('cast --version'); +} + +/** + * Checks if cast exists + * + * @return true if `cast` exists + */ +export async function checkForge (): Promise { + return checkCommand('forge --version'); +} + +/** + * Executes the given command + * + * @param cmd the command to run + * @return returns true if the command succeeded, false otherwise + */ +async function checkCommand (cmd: string): Promise { + return new Promise((resolve) => { + const process = exec(cmd); + process.on('exit', (code) => { + if (code !== 0) { + console.error( + 'Command failed. Is Foundry not installed? Consider installing ' + + 'via `curl -L https://foundry.paradigm.xyz | bash` and then running' + + ' `foundryup` on a new terminal. ' + + 'For more context, check the installation instructions ' + + 'in the book: https://book.getfoundry.sh/getting-started/installation.html.', + ); + } + resolve(code === 0); + }); + }); +} + +/** + * Executes the given command + * + * @param cmd the command to run + * @return returns true if the command succeeded, false otherwise + */ +function checkCommandSync (cmd: string): boolean { + try { + execSync(cmd); + return true; + } catch (error) { + const status = (error as any).status === 0; + if (!status) { + console.error( + 'Command failed. Is Foundry not installed? ' + + 'Consider installing via `curl -L https://foundry.paradigm.xyz | bash` ' + + 'and then running `foundryup` on a new terminal. ' + + 'For more context, check the installation instructions ' + + 'in the book: https://book.getfoundry.sh/getting-started/installation.html.', + ); + } + return status; + } +} diff --git a/sandbox/state.json b/sandbox/state.json index c47c2241..230764fe 100644 --- a/sandbox/state.json +++ b/sandbox/state.json @@ -1 +1 @@ -{"block":{"number":"0x5d","coinbase":"0x0000000000000000000000000000000000000000","timestamp":"0x664cd4c7","gas_limit":"0x6691b7","basefee":"0x1b818","difficulty":"0x0","prevrandao":"0x0000000000000000000000000000000000000000000000000000000000000000","blob_excess_gas_and_price":{"excess_blob_gas":0,"blob_gasprice":1}},"accounts":{"0x0000000000000000000000000000000000000000":{"nonce":0,"balance":"0xc968d22370860","code":"0x","storage":{}},"0x00e39a5004299871ab3b00fed5a39a715f181d02":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x66":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x67":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xd178b720229c39de617846f84cf9c8d32a63a23d","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0x0458f653495fb8d9bd0e7df468c2bf76d26c7bd9":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f7e83aee1461002d575b5f80fd5b61004061003b3660046105ba565b610054565b604051901515815260200160405180910390f35b5f601482146100a95760405162461bcd60e51b815260206004820152601860248201527f496e76616c696420736861312068617368206c656e6774680000000000000000604482015260640160405180910390fd5b5f6100ec5f85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101599050565b6bffffffffffffffffffffffff191690505f61013c87878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061018a92505050565b6bffffffffffffffffffffffff1916919091149695505050505050565b81515f90610168836014610621565b1115610172575f80fd5b5001602001516bffffffffffffffffffffffff191690565b5f6040518251602084019350604067ffffffffffffffc0600183011601600982820310600181036101bc576040820191505b50776745230100efcdab890098badcfe001032547600c3d2e1f061020d565b5f8383101561020657508082015192829003926020841015610206575f1960208590036101000a0119165b9392505050565b5f5b82811015610514576102228482896101db565b85526102328460208301896101db565b60208601526040818503106001810361024e5760808286038701535b506040830381146001810361026b57602086018051600887021790525b5060405b60808110156102f357858101603f19810151603719820151601f19830151600b198401516002911891909218189081027ffffffffefffffffefffffffefffffffefffffffefffffffefffffffefffffffe1663800000009091047c010000000100000001000000010000000100000001000000010000000116179052600c0161026f565b5060805b61014081101561037c57858101607f19810151606f19820151603f198301516017198401516004911891909218189081027ffffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffc1663400000009091047c0300000003000000030000000300000003000000030000000300000003161790526018016102f7565b50815f805f5b60508110156104ea576014810480156103b257600181146103d957600281146103fe576003811461042857610449565b600160281b8504600160501b86048118600160781b870416189350635a8279999250610449565b600160281b8504600160781b8604600160501b870418189350636ed9eba19250610449565b600160501b8504600160781b8604818117600160281b8804169116179350638f1bbcdc9250610449565b600160281b8504600160781b8604600160501b87041818935063ca62c1d692505b50601f600160bb1b8504168063ffffffe06001609b1b87041617905080840190508063ffffffff8616019050808301905080600160e01b600484028c015104019050600160a01b8102600160281b860417945050600160501b633fffffff600160521b86041663c00000006604000000000000870416170277ffffffff00ffffffff000000000000ffffffff00ffffffff8516179350600181019050610382565b5050509190910177ffffffff00ffffffff00ffffffff00ffffffff00ffffffff169060400161020f565b50600160601b63ffffffff821667ffffffff000000006101008404166bffffffff00000000000000006201000085041663ffffffff60601b630100000086041663ffffffff60801b6401000000008704161717171702945050505050919050565b5f8083601f840112610585575f80fd5b50813567ffffffffffffffff81111561059c575f80fd5b6020830191508360208285010111156105b3575f80fd5b9250929050565b5f805f80604085870312156105cd575f80fd5b843567ffffffffffffffff808211156105e4575f80fd5b6105f088838901610575565b90965094506020870135915080821115610608575f80fd5b5061061587828801610575565b95989497509550505050565b8082018082111561064057634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x06e2822b8856749ed179c77140dbc5f5a27410a4":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063de8f50a11461002d575b5f80fd5b61004061003b36600461051c565b610054565b604051901515815260200160405180910390f35b5f6060805f61009c60048b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506102e79050565b60ff1690508015610166576100f060058261ffff168c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b925061015f6101008260056105c3565b61ffff908116906005906101169085168d6105e5565b61012091906105e5565b8c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b915061021d565b6101a960058b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250929392505061038b9050565b90506101f460078261ffff168c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b925061021a6102048260076105c3565b61ffff908116906007906101169085168d6105e5565b91505b5f606061026084868a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152506103b192505050565b90925090508180156102d757506102856020825161027e91906105e5565b82906103cb565b60028b8b6040516102979291906105f8565b602060405180830381855afa1580156102b2573d5f803e3d5ffd5b5050506040513d601f19601f820116820180604052508101906102d59190610607565b145b9c9b505050505050505050505050565b5f8282815181106102fa576102fa61061e565b016020015160f81c90505b92915050565b825160609061031a8385610632565b1115610324575f80fd5b5f8267ffffffffffffffff81111561033e5761033e610645565b6040519080825280601f01601f191660200182016040528015610368576020820181803683370190505b509050602080820190868601016103808282876103ed565b509095945050505050565b81515f9061039a836002610632565b11156103a4575f80fd5b50016002015161ffff1690565b5f60606103bf838587610442565b91509150935093915050565b81515f906103da836020610632565b11156103e4575f80fd5b50016020015190565b602081106104255781518352610404602084610632565b9250610411602083610632565b915061041e6020826105e5565b90506103ed565b905182516020929092036101000a5f190180199091169116179052565b5f60605f85518551855188888860405160200161046496959493929190610686565b6040516020818303038152906040529050835167ffffffffffffffff81111561048f5761048f610645565b6040519080825280601f01601f1916602001820160405280156104b9576020820181803683370190505b50915083516020830182516020840160055afa925050935093915050565b5f8083601f8401126104e7575f80fd5b50813567ffffffffffffffff8111156104fe575f80fd5b602083019150836020828501011115610515575f80fd5b9250929050565b5f805f805f8060608789031215610531575f80fd5b863567ffffffffffffffff80821115610548575f80fd5b6105548a838b016104d7565b9098509650602089013591508082111561056c575f80fd5b6105788a838b016104d7565b90965094506040890135915080821115610590575f80fd5b5061059d89828a016104d7565b979a9699509497509295939492505050565b634e487b7160e01b5f52601160045260245ffd5b61ffff8181168382160190808211156105de576105de6105af565b5092915050565b81810381811115610305576103056105af565b818382375f9101908152919050565b5f60208284031215610617575f80fd5b5051919050565b634e487b7160e01b5f52603260045260245ffd5b80820180821115610305576103056105af565b634e487b7160e01b5f52604160045260245ffd5b5f81515f5b81811015610678576020818501810151868301520161065e565b505f93019283525090919050565b8681528560208201528460408201525f6106b56106af6106a96060850188610659565b86610659565b84610659565b9897505050505050505056fea164736f6c6343000818000a","storage":{}},"0x0712e8e819712c3bfdb098ce51c87a4ac0296fd8":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x0930ffb2c192b0c9a9dd2372cf7f2845ef39cbb6":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x65":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x66":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xbe92182cab5b84fd18b34881a0c32771e84f5b8b","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c8121905":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x107733fed96c4cd390c944a31f5425a7fb98ae5e":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x65":"0x556e73746f707061626c6520446f6d61696e7300000000000000000000000026","0x66":"0x5544000000000000000000000000000000000000000000000000000000000004","0x133":"0x68747470733a2f2f6578616d706c652e636f6d2f000000000000000000000028","0x134":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x9c74364589a7bce52d7a232f90c98b979577d9ab711dbe7e9fb985471178bff":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf29a433ca043c2d5f13825944af9d019209f338df87172c6b8012dce3044881":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf319a2ef598111826b455194189a27454a0286226eb066e1116f605e0373b37":"0x0","0x1257bbdf5bed452b3eda1d974a9839972d4d54d7fb1cde6a652e653346cc29b8":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x12c033f2252861b1bd15e9b5c71ef1cf26ca53de15eabc3b49e06f596e8755ec":"0x0","0x1348552952ac59b1c2522e84f684e36775420b449eddcdbd28f217183ed58b09":"0x0","0x149026695ebdd2bd6be0a7006aec5d10ddffbe46be181e4468980ea83c004fe9":"0x0","0x14c854a78d51371251661a408306c75d2515b5d509b295a58205e48267082bdc":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x18f06622a1abedc7bb78fcc98b2375188aef6c03b9247beee780b0b095d60285":"0x0","0x201ef5e312d372e2aeac4cf173b46ad2985127c7381f4f9acae5ebbd3a5e3861":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x2215c0abaeffcb5feae8a439b3185f8fba5dd6d97529a56c7609cd41fafdf5f1":"0x1","0x23513200931f98893f46373666c13964c7a821c5b40da7951b921629acf02735":"0x0","0x23f87654b79c6db28828f317e47d0c8deb9eaa2ea4e213fef901836c85036bf3":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x2e4566d865f2e159531492d7643e25e502917762b29082282ab9dfee8fbf54c7":"0x0","0x31fc31c15d389c5908095d314bb8b258352d51e18ac8a2f7fe15f3a0af519145":"0x0","0x3467fdbb447be3074b11c625b56e54d7ab44f3804bef205b07dd436d707d06d5":"0x0","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x62b11ad5f582a5c5d378fb310125b030042554f1","0x3cd80e7291e5f6dffa9af6eb70d47145a8fdd40acb8d09dfd0cf374e8c239b37":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x3f86c4990e663ffa5011ed38824fca68af7e0592eb22f41aebdec0ce84ee672e":"0x0","0x406aa3bf31381c8a323679af48792dfa2e7aa09dd0eb919e307dc4bf84216ff6":"0x0","0x47ce17acd30cc86e021ac7b23be8138ea767f6da503362aac5888a0679270eed":"0x0","0x4a7983c36f64e6df4d467cf706c128c273d30c24bbb172e251a5740624cc0bd3":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x4c42d98041cda7cb7d56b5d04731bd436366eb9f05c30f43671f1d1e2c0b0fa4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x55926eed7087c8cbfa1492f6d367f5e4c14c8d8cd59e2918c37184091369efb1":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x5b20f40cb5e9e634a90df9a72b516c11cc52281a4d1b7b67e672e2fe544ff22f":"0x0","0x6dac3e1cfae338e10c9c2f5000f6256d09afa83708761042001cea734f470ac1":"0x0","0x6defc32a546a6fb1b745bd1bb04e27085e94f01d7ef79587aee2c80853c43a53":"0x0","0x760b245be050a725a39b4fc089ad474a5fd40efa17101e112d30195d590779b4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x7bee59fcac76da32acb23def57eaaf959a4372a4fc180978fbd54f7a4c4b2f3d":"0x0","0x804aee9448e0b539a009ee7c6dd57e686c72e7b182e9622a42922b245a97e61e":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x825f7f8567cfd669c3beab41edff07d4aa51436123deeb0d3623b6a8fdec893c":"0x0","0x8717a3236e6a948df94444f035834fa8f7c5ee663a29f3580f3ef43ab051d6bd":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8a34e37883baf84417a33bb02eec8d1e43e363f617029800ff166614df3f112f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8bd1acdc45b63f1edf5db0b1444f1c4a6f82bf0a5a0a7231c2dd7b76a2b1e35c":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87":"0x0","0x8ed4e9fbdf86edd9f3eb1c8d4fbfc53a2eb863faf4cf5e0d2b307c0b33030091":"0x0","0x8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x90d72780b77edcd0c8daffbac0b21264679e851b734cb090e2b144eb3a28bb98":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x93fc964857984ff804a65eaceac4062669948f2b651ddc6b71373ad142bf45e0":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x9770fa903e700367e0306ab8fd70a2bb4f049417d341a2f8a2409d8d6a2218d1":"0x0","0xb1016fe231c2ed9dba8c95d2658191823b4b9ffa61a7aea530802c6b2ff27c41":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xbe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafe":"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f","0xbe7c5c707db1c91bd2c84880bb1e177b65886d295d9a62df8edfe38f8066cc81":"0x0","0xc3cd64a46de7309013ddb93a16a3024c2e46fb931e4744edf2610fb119f716f5":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xc563f9d3175978a619bae1a8175d3ea4be91d3890345085c5eb16f83b678a3d9":"0x0","0xc5b5cdb7b939f9d661f58f28c37e10cf71d45dacfea2581c88ae4a17aaf55e6e":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xd386775169d9e0716e9b5b08561984726edaa9febd0ca8e5468ecffa112078c7":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xe3b736cdcc6a09d7e3a05ffb63b11f11c91958d861443c3409d3fd863e8217bd":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xe3e5b75e3dff543bfbfe5b494e4e3243b4d9d0b3d794725cea46c28fe6be50e4":"0x0","0xe7d61626cac95282d296ee7ab5958e3e72e32eb959a7cab1d37c0f9d6d69c18a":"0x1a","0xeca5e1ccaa645ce2be97a867a1f8aeeb63ea833aeb009c0df0553b42b30c683f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf08305746cdba1d0eaa65036694838a3db122973267ffc57739d605c320c680a":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf0d566acc03395f71b37890f455d51d93197adf754ea72aba21427dc66b437df":"0x0","0xf230898ba4fe40c52f958d03013d995f822e25a5d4fae43bbdc6e92623cea0bd":"0x0","0xf245a9962043f44f4af98f9952a3bd29d91eb05418e4bb567b9de8f27e239b13":"0x0","0xf2a19ade13962e8675aecf2fbe51913877912f9e48e899806b6e06e82f9a980f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf2fab50b0b53245ddfa1bcfcdf4c73e209d6921dad704d173cf04cbbadc8e346":"0x0","0xfa6f3ee10d719cb3457d10c539ff3d77b8e56852ea62f68b2f9f85ad691ed6b4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xfff3abb219acc6ef4eed6e93a5682023229370196f352cdf3a71a88d881e3487":"0x0"}},"0x11dd97b7ca847dfb6504e61b7b9eb30f55e554a0":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a424740014610090575b600080fd5b610059610054366004610ba9565b6100b3565b6040516100669190610c98565b60405180910390f35b61008261007d366004610cab565b6101ce565b604051908152602001610066565b6100a361009e366004610ba9565b610332565b6040519015158152602001610066565b606060005a6001546040805163b3f9e4cb60e01b81529088013560048201529192506000916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561010a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061012e9190610cd9565b90506101c26101406020880188610cf6565b8260408901358561015460608c018c610d13565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8f018190048102820181019092528d815292508d91508c90819084018382808284376000920191909152506103fb92505050565b925050505b9392505050565b60025460015460405163b3f9e4cb60e01b8152600481018490526000926001600160a01b0390811692169063b3f9e4cb90602401602060405180830381865afa92505050801561023b575060408051601f3d908101601f1916820190925261023891810190610cd9565b60015b156102435790505b6001600160a01b0381163b156102c557604051636ccbae5f60e01b81526004810184905281906001600160a01b03821690636ccbae5f90602401602060405180830381865afa9250505080156102b6575060408051601f3d908101601f191682019092526102b391810190610d5a565b60015b156102c357949350505050565b505b600254604051636ccbae5f60e01b8152600481018590526001600160a01b0390911690636ccbae5f90602401602060405180830381865afa15801561030e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101c79190610d5a565b6001546040805163b3f9e4cb60e01b815290850135600482015260009182916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa158015610383573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103a79190610cd9565b90506103f26103b586610e0b565b8286868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506104d392505050565b95945050505050565b6060600080876001600160a01b0316866104178b8a898961051f565b6040516104249190610eb5565b60006040518083038160008787f1925050503d8060008114610462576040519150601f19603f3d011682016040523d82523d6000602084013e610467565b606091505b509092509050610478603f87610ed1565b5a1161048657610486610ef3565b6104c682826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506105d4565b9998505050505050505050565b60006104e084848461060d565b8015610514575060608401516020908101516001600160e01b031990811660009081529182905260409091205460e01b1615155b949350505050565b50565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036105b15760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526105c982828661074c565b979650505050505050565b606083156105e35750816101c7565b8251156105f35782518084602001fd5b8160405162461bcd60e51b81526004016105a89190610c98565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015610654573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106789190610d5a565b905060006107268660600151805190602001208688602001516040516020016106c69392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156101c2575085516101c2906001600160a01b03168286610935565b60606001600160e01b0319841663b87abc1160e01b036107cd5760008380602001905181019061077c9190610d5a565b9050848184604051602401610792929190610f09565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915291506101c79050565b6001600160e01b0319841663c597407360e01b03610859576000806000858060200190518101906107fe9190610f67565b925092509250868383838860405160240161081c9493929190610fd4565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293506101c792505050565b6001600160e01b031984166311ed383160e31b036108a85760008060008580602001905181019061088a91906110a6565b925092509250868383838860405160240161081c9493929190611157565b6001600160e01b031984166328d55f9b60e21b036101c7576000806000858060200190518101906108d991906110a6565b92509250925086838383886040516024016108f79493929190611157565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293505050509392505050565b60008060006109448585610a77565b9092509050600081600481111561095d5761095d61117c565b14801561097b5750856001600160a01b0316826001600160a01b0316145b1561098b576001925050506101c7565b600080876001600160a01b0316631626ba7e60e01b88886040516024016109b3929190610f09565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516109f19190610eb5565b600060405180830381855afa9150503d8060008114610a2c576040519150601f19603f3d011682016040523d82523d6000602084013e610a31565b606091505b5091509150818015610a44575080516020145b8015610a6b57508051630b135d3f60e11b90610a699083016020908101908401610d5a565b145b98975050505050505050565b6000808251604103610aad5760208301516040840151606085015160001a610aa187828585610abc565b94509450505050610ab5565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610af35750600090506003610ba0565b8460ff16601b14158015610b0b57508460ff16601c14155b15610b1c5750600090506004610ba0565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610b70573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610b9957600060019250925050610ba0565b9150600090505b94509492505050565b600080600060408486031215610bbe57600080fd5b833567ffffffffffffffff80821115610bd657600080fd5b9085019060808288031215610bea57600080fd5b90935060208501359080821115610c0057600080fd5b818601915086601f830112610c1457600080fd5b813581811115610c2357600080fd5b876020828501011115610c3557600080fd5b6020830194508093505050509250925092565b60005b83811015610c63578181015183820152602001610c4b565b50506000910152565b60008151808452610c84816020860160208601610c48565b601f01601f19169290920160200192915050565b6020815260006101c76020830184610c6c565b600060208284031215610cbd57600080fd5b5035919050565b6001600160a01b038116811461051c57600080fd5b600060208284031215610ceb57600080fd5b81516101c781610cc4565b600060208284031215610d0857600080fd5b81356101c781610cc4565b6000808335601e19843603018112610d2a57600080fd5b83018035915067ffffffffffffffff821115610d4557600080fd5b602001915036819003821315610ab557600080fd5b600060208284031215610d6c57600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610dac57610dac610d73565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ddb57610ddb610d73565b604052919050565b600067ffffffffffffffff821115610dfd57610dfd610d73565b50601f01601f191660200190565b600060808236031215610e1d57600080fd5b610e25610d89565b8235610e3081610cc4565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610e6057600080fd5b840136601f820112610e7157600080fd5b8035610e84610e7f82610de3565b610db2565b8181523684838501011115610e9857600080fd5b818484018583013760009181019093015250606082015292915050565b60008251610ec7818460208701610c48565b9190910192915050565b600082610eee57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b8281526040602082015260006105146040830184610c6c565b600082601f830112610f3357600080fd5b8151610f41610e7f82610de3565b818152846020838601011115610f5657600080fd5b610514826020830160208701610c48565b600080600060608486031215610f7c57600080fd5b835167ffffffffffffffff80821115610f9457600080fd5b610fa087838801610f22565b94506020860151915080821115610fb657600080fd5b50610fc386828701610f22565b925050604084015190509250925092565b608081526000610fe76080830187610c6c565b8281036020840152610ff98187610c6c565b905084604084015282810360608401526105c98185610c6c565b600082601f83011261102457600080fd5b8151602067ffffffffffffffff8083111561104157611041610d73565b8260051b611050838201610db2565b938452858101830193838101908886111561106a57600080fd5b84880192505b85831015610a6b578251848111156110885760008081fd5b6110968a87838c0101610f22565b8352509184019190840190611070565b6000806000606084860312156110bb57600080fd5b835167ffffffffffffffff808211156110d357600080fd5b6110df87838801611013565b945060208601519150808211156110f557600080fd5b50610fc386828701611013565b600081518084526020808501808196508360051b8101915082860160005b8581101561114a578284038952611138848351610c6c565b98850198935090840190600101611120565b5091979650505050505050565b60808152600061116a6080830187611102565b8281036020840152610ff98187611102565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x2":"0xf8c26340c1eaea6c7ff1760b25005e1306953572","0x1e74f978992d7d64ddac400bd4aae9eefd60fa0b8456650273f5f50148803323":"0xa3557e6c","0x23c84c23be8f829809d1b1502c647c6c59fb6b2345b163a2ca3e7d4f9855975c":"0x8f69c188","0xa0286316c9d3cb00f4f54a9f1096cefaa1748bb5a5395e7fa1563568ebb3e6c3":"0xb87abc11","0xdc138de224807be243ee38fe9e746cce5d437a256b87be90b80240e0811ad043":"0xc5974073"}},"0x145908bbcfc7b258e4d4d9a586f6e3249ae80216":{"nonce":1,"balance":"0x0","code":"0x3d5c","storage":{}},"0x17cda4e23f7237277952e075b1c48467aabfacc0":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c806368f9dab21461002d575b5f80fd5b61004061003b36600461088b565b610052565b60405190815260200160405180910390f35b5f61006f6040518060400160405280606081526020015f81525090565b61008e61007c858861090d565b61008790601061090d565b82906101d1565b506100d085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250859392505061023a9050565b5061011287878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250859392505061023a9050565b505f610120825f0151610266565b905083156101bc5760408051808201909152606081525f602090910181905282515261014c825f610650565b5061018e88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250869392505061023a9050565b505f5b848110156101ba576101a4835f8461067f565b5082516101b090610266565b9150600101610191565b505b6001600160601b031916979650505050505050565b60408051808201909152606081525f60208201526101f0602083610920565b1561021857610200602083610920565b61020b90602061093f565b610215908361090d565b91505b506020808301829052604080518085525f815283019091019052815b92915050565b60408051808201909152606081525f602082015261025f83845f0151518485516106b2565b9392505050565b5f6040518251602084019350604067ffffffffffffffc060018301160160098282031060018103610298576040820191505b50776745230100efcdab890098badcfe001032547600c3d2e1f06102e8565b5f8383101561025f5750808201519282900392602084101561025f575f1960208590036101000a0119169392505050565b5f5b828110156105ef576102fd8482896102b7565b855261030d8460208301896102b7565b6020860152604081850310600181036103295760808286038701535b506040830381146001810361034657602086018051600887021790525b5060405b60808110156103ce57858101603f19810151603719820151601f19830151600b198401516002911891909218189081027ffffffffefffffffefffffffefffffffefffffffefffffffefffffffefffffffe1663800000009091047c010000000100000001000000010000000100000001000000010000000116179052600c0161034a565b5060805b61014081101561045757858101607f19810151606f19820151603f198301516017198401516004911891909218189081027ffffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffc1663400000009091047c0300000003000000030000000300000003000000030000000300000003161790526018016103d2565b50815f805f5b60508110156105c55760148104801561048d57600181146104b457600281146104d9576003811461050357610524565b600160281b8504600160501b86048118600160781b870416189350635a8279999250610524565b600160281b8504600160781b8604600160501b870418189350636ed9eba19250610524565b600160501b8504600160781b8604818117600160281b8804169116179350638f1bbcdc9250610524565b600160281b8504600160781b8604600160501b87041818935063ca62c1d692505b50601f600160bb1b8504168063ffffffe06001609b1b87041617905080840190508063ffffffff8616019050808301905080600160e01b600484028c015104019050600160a01b8102600160281b860417945050600160501b633fffffff600160521b86041663c00000006604000000000000870416170277ffffffff00ffffffff000000000000ffffffff00ffffffff851617935060018101905061045d565b5050509190910177ffffffff00ffffffff00ffffffff00ffffffff00ffffffff16906040016102ea565b50600160601b63ffffffff821667ffffffff000000006101008404166bffffffff00000000000000006201000085041663ffffffff60601b630100000086041663ffffffff60801b6401000000008704161717171702945050505050919050565b60408051808201909152606081525f602082015282515161025f9084906001600160601b031985166014610798565b60408051808201909152606081525f60208201526106aa84846001600160601b031985166014610798565b949350505050565b60408051808201909152606081525f602082015282518211156106d3575f80fd5b60208501516106e2838661090d565b1115610715576107158561070587602001518786610700919061090d565b610813565b610710906002610952565b610829565b5f808651805187602083010193508088870111156107335787860182525b505050602084015b60208410610773578051825261075260208361090d565b915061075f60208261090d565b905061076c60208561093f565b935061073b565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b60408051808201909152606081525f602082015260208501516107bb858461090d565b11156107cf576107cf85610705868561090d565b5f6001836101000a0390508260200360080284901c93508551838682010185831982511617815250805184870111156108085783860181525b509495945050505050565b5f81831115610823575081610234565b50919050565b815161083583836101d1565b50610840838261023a565b50505050565b5f8083601f840112610856575f80fd5b50813567ffffffffffffffff81111561086d575f80fd5b602083019150836020828501011115610884575f80fd5b9250929050565b5f805f805f6060868803121561089f575f80fd5b853567ffffffffffffffff808211156108b6575f80fd5b6108c289838a01610846565b909750955060208801359150808211156108da575f80fd5b506108e788828901610846565b96999598509660400135949350505050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610234576102346108f9565b5f8261093a57634e487b7160e01b5f52601260045260245ffd5b500690565b81810381811115610234576102346108f9565b8082028115828204841417610234576102346108f956fea164736f6c6343000818000a","storage":{}},"0x19356cc2300833e690088a5a09a2044a3cc2a1e2":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x229c56b7805ab5935a883207f6a6bd5847e65aee":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106102ae5760003560e01c8063906cecc111610175578063b9998a24116100dc578063d547741f11610095578063f2fde38b1161006f578063f2fde38b14610892578063f5243bc4146108b2578063f940e385146108d2578063ffa1ad74146108f257600080fd5b8063d547741f1461083f578063d7db74c71461085f578063ec5273891461087257600080fd5b8063b9998a241461077d578063cc2a9a5b1461079d578063cc2c3fc4146107bd578063ceeb4f50146107dd578063d1f5692c146107fd578063d53913931461081d57600080fd5b8063a3a3f7f61161012e578063a3a3f7f614610690578063a3f4df7e146106b0578063a849d65c146106fd578063aa271e1a1461071d578063b0aa98c71461073d578063b3ab15fb1461075d57600080fd5b8063906cecc1146105e657806391d1485414610606578063983b2d5614610626578063986502751461064657806399e0dd7c1461065b578063a217fddf1461067b57600080fd5b80635b6fa8db11610219578063715018a6116101d2578063715018a61461054b57806371e2a6571461056057806377a2a5891461058057806381c81d35146105a05780638456cb59146105b35780638da5cb5b146105c857600080fd5b80635b6fa8db146104a35780635c975abb146104c35780635cd7e3b3146104d85780635e22cd86146104f85780635fc1964f14610518578063634486da1461053857600080fd5b80633092afd51161026b5780633092afd5146103a857806336568abe146103c85780633f41b614146103e85780633f4ba83a1461042057806351cff8d914610435578063572b6c051461045557600080fd5b806301ffc9a7146102b35780631edb948e146102e857806320c5429b1461030a578063248a9ca31461032a578063268b15ed146103685780632f2ff15d14610388575b600080fd5b3480156102bf57600080fd5b506102d36102ce366004613dc4565b610923565b60405190151581526020015b60405180910390f35b3480156102f457600080fd5b50610308610303366004613e13565b61095a565b005b34801561031657600080fd5b50610308610325366004613e3f565b610b03565b34801561033657600080fd5b5061035a610345366004613e3f565b60009081526097602052604090206001015490565b6040519081526020016102df565b34801561037457600080fd5b50610308610383366004613e99565b610c26565b34801561039457600080fd5b506103086103a3366004613f04565b610cb9565b3480156103b457600080fd5b506103086103c3366004613f34565b610ce3565b3480156103d457600080fd5b506103086103e3366004613f04565b610cf7565b3480156103f457600080fd5b5060c954610408906001600160a01b031681565b6040516001600160a01b0390911681526020016102df565b34801561042c57600080fd5b50610308610d85565b34801561044157600080fd5b50610308610450366004613f34565b610d97565b34801561046157600080fd5b506102d3610470366004613f34565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546001600160a01b0390811691161490565b3480156104af57600080fd5b5060cc54610408906001600160a01b031681565b3480156104cf57600080fd5b506102d3610e37565b3480156104e457600080fd5b506103086104f3366004613fa3565b610e4d565b34801561050457600080fd5b50610308610513366004614062565b6110b1565b34801561052457600080fd5b5061030861053336600461419c565b6112f6565b610308610546366004613f34565b61133e565b34801561055757600080fd5b50610308611401565b34801561056c57600080fd5b5061030861057b36600461419c565b611413565b34801561058c57600080fd5b5060ce54610408906001600160a01b031681565b6103086105ae366004613f34565b61145b565b3480156105bf57600080fd5b506103086114d8565b3480156105d457600080fd5b506033546001600160a01b0316610408565b3480156105f257600080fd5b5061030861060136600461423a565b6114e8565b34801561061257600080fd5b506102d3610621366004613f04565b61156e565b34801561063257600080fd5b50610308610641366004613f34565b611599565b34801561065257600080fd5b506103086115aa565b34801561066757600080fd5b50610308610676366004614295565b6115c4565b34801561068757600080fd5b5061035a600081565b34801561069c57600080fd5b506103086106ab3660046142d6565b6116ab565b3480156106bc57600080fd5b506106f0604051806040016040528060148152602001732aa7299d1026b4b73a34b7339026b0b730b3b2b960611b81525081565b6040516102df919061437c565b34801561070957600080fd5b5060cb54610408906001600160a01b031681565b34801561072957600080fd5b506102d3610738366004613f34565b6116f4565b34801561074957600080fd5b506102d3610758366004613e3f565b61170e565b34801561076957600080fd5b50610308610778366004613f34565b61176c565b34801561078957600080fd5b50610308610798366004613f34565b611796565b3480156107a957600080fd5b506103086107b836600461438f565b6117db565b3480156107c957600080fd5b5060ca54610408906001600160a01b031681565b3480156107e957600080fd5b506103086107f8366004614411565b611cd2565b34801561080957600080fd5b506103086108183660046144c6565b611d76565b34801561082957600080fd5b5061035a600080516020614ef483398151915281565b34801561084b57600080fd5b5061030861085a366004613f04565b611e2d565b61030861086d3660046144fb565b611e52565b34801561087e57600080fd5b5061030861088d366004613e3f565b611fe2565b34801561089e57600080fd5b506103086108ad366004613f34565b612054565b3480156108be57600080fd5b506103086108cd3660046145f0565b612070565b3480156108de57600080fd5b506103086108ed366004614708565b612222565b3480156108fe57600080fd5b506106f060405180604001604052806005815260200164302e352e3160d81b81525081565b60006001600160e01b03198216637965db0b60e01b148061095457506301ffc9a760e01b6001600160e01b03198316145b92915050565b61096561073861239e565b61098a5760405162461bcd60e51b815260040161098190614736565b60405180910390fd5b60c95460405163baef73e960e01b8152600481018390526000916001600160a01b03169063baef73e990602401602060405180830381865afa1580156109d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109f8919061476b565b9050806001600160401b0316600003610a235760405162461bcd60e51b815260040161098190614788565b806001600160401b0316836001600160401b031611610a905760405162461bcd60e51b815260206004820152602360248201527f4d696e74696e674d616e616765723a204558504952595f4e4f545f455854454e60448201526211115160ea1b6064820152608401610981565b60c954604051631fb9763760e11b81526001600160401b0385166004820152602481018490526001600160a01b0390911690633f72ec6e906044015b600060405180830381600087803b158015610ae657600080fd5b505af1158015610afa573d6000803e3d6000fd5b50505050505050565b610b0e61073861239e565b610b2a5760405162461bcd60e51b815260040161098190614736565b60c95460405163baef73e960e01b8152600481018390526001600160a01b039091169063baef73e990602401602060405180830381865afa158015610b73573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b97919061476b565b6001600160401b0316600003610bbf5760405162461bcd60e51b815260040161098190614788565b60c954604051637eee288d60e01b8152306004820152602481018390526001600160a01b0390911690637eee288d90604401600060405180830381600087803b158015610c0b57600080fd5b505af1158015610c1f573d6000803e3d6000fd5b5050505050565b8282828080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250610c6993508592508491506123ad565b610c71610e37565b15610c8e5760405162461bcd60e51b8152600401610981906147cb565b6060610afa610c9b61239e565b610cae88610ca98989612584565b6125b0565b8384600060016126c1565b600082815260976020526040902060010154610cd481612c15565b610cde8383612c26565b505050565b610ceb612cad565b610cf481612d26565b50565b610cff61239e565b6001600160a01b0316816001600160a01b031614610d775760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610981565b610d818282612d3e565b5050565b610d8d612cad565b610d95612dc3565b565b610d9f612cad565b6001600160a01b038116610db257600080fd5b60405147906001600160a01b0383169082156108fc029083906000818181858888f19350505050158015610dea573d6000803e3d6000fd5b50604080516001600160a01b03841681526020810183905260008183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a15050565b600080516020614ed48339815191525460ff1690565b610e5786886147f5565b8051600203610e8c57610e6b61073861239e565b610e875760405162461bcd60e51b8152600401610981906148bf565b610fd1565b6000610e9782612e6b565b60c9549092506001600160a01b0316905063430c2081610eb561239e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015610f00573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f249190614903565b80610fb3575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa158015610f7d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fa19190614903565b8015610fb35750610fb361073861239e565b610fcf5760405162461bcd60e51b815260040161098190614920565b505b610fdb87896147f5565b6000600282511015610fff5760405162461bcd60e51b81526004016109819061496f565b6110546110336000846001865161101691906149ca565b81518110611026576110266149dd565b6020026020010151612ea6565b83600081518110611046576110466149dd565b6020026020010151836123ad565b61105c610e37565b156110795760405162461bcd60e51b8152600401610981906147cb565b6110a38b6110878b8d6147f5565b6110918a8c6147f5565b61109b898b6147f5565b6000896126c1565b505050505050505050505050565b6110bb87896147f5565b80516002036110f0576110cf61073861239e565b6110eb5760405162461bcd60e51b8152600401610981906148bf565b611235565b60006110fb82612e6b565b60c9549092506001600160a01b0316905063430c208161111961239e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015611164573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111889190614903565b80611217575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa1580156111e1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112059190614903565b8015611217575061121761073861239e565b6112335760405162461bcd60e51b815260040161098190614920565b505b61123f888a6147f5565b836002825110156112625760405162461bcd60e51b81526004016109819061496f565b6112796110336000846001865161101691906149ca565b611281610e37565b1561129e5760405162461bcd60e51b8152600401610981906147cb565b60028a146112be5760405162461bcd60e51b8152600401610981906149f3565b6112e78c6112cc8c8e6147f5565b6112d68b8d6147f5565b6112e08a8c6147f5565b89896126c1565b50505050505050505050505050565b6112fe612cad565b60005b8151811015610d815761132c82828151811061131f5761131f6149dd565b6020026020010151612d26565b8061133681614a39565b915050611301565b61134961073861239e565b6113655760405162461bcd60e51b815260040161098190614736565b6001600160a01b0381166113bb5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610981565b6113c481612f5a565b6113cc6115aa565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610d81573d6000803e3d6000fd5b611409612cad565b610d956000612f72565b61141b612cad565b60005b8151811015610d815761144982828151811061143c5761143c6149dd565b6020026020010151612f5a565b8061145381614a39565b91505061141e565b61146661073861239e565b6114825760405162461bcd60e51b815260040161098190614736565b6001600160a01b0381166113c45760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610981565b6114e0612cad565b610d95612fc4565b8282828080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525061152b93508592508491506123ad565b611533610e37565b156115505760405162461bcd60e51b8152600401610981906147cb565b606061156487610cae88610ca98989612584565b5050505050505050565b60009182526097602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6115a1612cad565b610cf481612f5a565b610d95600080516020614ef48339815191526103e361239e565b6115cc612cad565b60c954604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906115fe9085908590600401614a52565b600060405180830381600087803b15801561161857600080fd5b505af115801561162c573d6000803e3d6000fd5b505060cb546001600160a01b0316159150610d8190505760cb54604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906116759085908590600401614a52565b600060405180830381600087803b15801561168f57600080fd5b505af11580156116a3573d6000803e3d6000fd5b505050505050565b6116b3612cad565b610cde83838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525085925061302c915050565b6000610954600080516020614ef48339815191528361156e565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd696020820152908101829052600090611762906060015b6040516020818303038152906040528051906020012090565b5460ff1692915050565b611774612cad565b60ce80546001600160a01b0319166001600160a01b0392909216919091179055565b61179e612cad565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e80546001600160a01b0319166001600160a01b03831617905550565b600054610100900460ff16158080156117fb5750600054600160ff909116105b806118155750303b158015611815575060005460ff166001145b6118785760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610981565b6000805460ff19166001179055801561189b576000805461ff0019166101001790555b60c980546001600160a01b03199081166001600160a01b038a81169190911790925560ca8054821689841617905560cb8054821688841617905560cc8054821687841617905560ce80549091169185169190911790556118f961314c565b611901613183565b61190a826131bc565b6119126131e3565b6040805161036081018252600661032082018181526563727970746f60d01b610340840152825282518084018452818152651dd85b1b195d60d21b602082810191909152808401919091528351808501855260018152600f60fb1b8183015283850152835180850185526003808252621b999d60ea1b82840152606085019190915284518086018652600a815269313637b1b5b1b430b4b760b11b818401526080850152845180860186526007808252663134ba31b7b4b760c91b8285015260a0860191909152855180870187528281526207070760eb1b8185015260c0860152855180870187528281526264616f60e81b8185015260e086015285518087018752828152621e9a5b60ea1b8185015261010086015285518087018752908152663837b63cb3b7b760c91b8184015261012085015284518086018652600b81526a756e73746f707061626c6560a81b81840152610140850152845180860186528381526535b632bb32b960d11b8184015261016085015284518086018652600280825261686960f01b8285015261018086019190915285518087018752848152656b726573757360d01b818501526101a086015285518087018752600580825264616e696d6560d81b828601526101c087019190915286518088018852818152646d616e676160d81b818601526101e087015286518088018852600981526862696e616e6365757360b81b8186015261020087015286518088018852818152647265616c6d60d81b818601526102208701528651808801885291825261676f60f01b82850152610240860191909152855180870187526008815267185b1d1a5b5a5cdd60c21b818501526102608601528551808701875290815264707564677960d81b81840152610280850152845180860186528381526530bab9ba34b760d11b818401526102a08501528451808601865292835265189a5d19d95d60d21b838301526102c08401929092528351808501855291825262706f6760e81b828201526102e083019190915282518084019093526004835263636c617960e01b9083015261030081019190915260005b6019811015611c5c57611c4a828260198110611c3e57611c3e6149dd565b6020020151600061302c565b80611c5481614a39565b915050611c20565b50611c8360405180604001604052806003815260200162636f6d60e81b815250600161302c565b508015610afa576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050505050565b8686868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250611d1593508592508491506123ad565b611d1d610e37565b15611d3a5760405162461bcd60e51b8152600401610981906147cb565b611d698a611d4c8b610ca98c8c612584565b611d56888a6147f5565b611d6087896147f5565b600060016126c1565b5050505050505050505050565b611d7e612cad565b60005b81811015610cde5760c9546001600160a01b03166350960239848484818110611dac57611dac6149dd565b9050602002016020810190611dc19190613f34565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401600060405180830381600087803b158015611e0257600080fd5b505af1158015611e16573d6000803e3d6000fd5b505050508080611e2590614a39565b915050611d81565b600082815260976020526040902060010154611e4881612c15565b610cde8383612d3e565b611e5c898b6147f5565b6000600282511015611e805760405162461bcd60e51b81526004016109819061496f565b611e976110336000846001865161101691906149ca565b611e9f610e37565b15611ebc5760405162461bcd60e51b8152600401610981906147cb565b60028b14611edc5760405162461bcd60e51b8152600401610981906149f3565b611f228d8d8d898960008a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061322392505050565b84341015611f725760405162461bcd60e51b815260206004820181905260248201527f4d696e74696e674d616e616765723a204e4f545f454e4f5547485f46554e44536044820152606401610981565b611f848d8d8d8d8d8d8d8c60006133e3565b843411156112e757611f9461239e565b6001600160a01b03166108fc611faa87346149ca565b6040518115909202916000818181858888f19350505050158015611fd2573d6000803e3d6000fd5b5050505050505050505050505050565b611fea612cad565b611ff38161349f565b61200f5760405162461bcd60e51b815260040161098190614a81565b600081815260cd6020526040812061202691613d76565b60405181907f0aa1aff0f830e739d86baf0e6624d6763da02f7733575e0e463886cd062dea6a90600090a250565b61205c612cad565b612065816134c5565b610cf460008261353b565b61207a8a8c6147f5565b600060028251101561209e5760405162461bcd60e51b81526004016109819061496f565b6120b56110336000846001865161101691906149ca565b6120bd610e37565b156120da5760405162461bcd60e51b8152600401610981906147cb565b60028c146120fa5760405162461bcd60e51b8152600401610981906149f3565b61213f8e8e8e8a898b8a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061322392505050565b856001600160a01b03166323b872dd61215661239e565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152306024820152604481018890526064016020604051808303816000875af11580156121a9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121cd9190614903565b6122115760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610981565b611fd28e8e8e8e8e8e8e8c8e6133e3565b61222a612cad565b6040516370a0823160e01b81523060048201526000906001600160a01b038416906370a0823190602401602060405180830381865afa158015612271573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122959190614ac3565b60405163a9059cbb60e01b81526001600160a01b038481166004830152602482018390529192509084169063a9059cbb906044016020604051808303816000875af11580156122e8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061230c9190614903565b6123505760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610981565b604080516001600160a01b0384811682526020820184905285168183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a1505050565b60006123a8613545565b905090565b6123b68361349f565b6123d25760405162461bcd60e51b815260040161098190614a81565b600083815260cf602052604090205460ff1615156001600160401b03821615151461244e5760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544c445f455850495241424c455f4d496044820152650a69a82a886960d31b6064820152608401610981565b60006124818360408051808201825260008082526020918201528151808301909252825182529182019181019190915290565b9050600a81600001511115612529576124ac6124a0826000600a61358b565b80516020909101512090565b7fb551e0305c8163b812374b8e78b577c77f226f6f10c5ad03e52699578fbc34b8036125295760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544f4b454e5f4c4142454c5f50524f4860448201526512509255115160d21b6064820152608401610981565b612532836135ca565b61257e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a204c4142454c5f494e56414c49440000006044820152606401610981565b50505050565b60608282604051602001612599929190614adc565b604051602081830303815290604052905092915050565b604080516002808252606082810190935260009190816020015b60608152602001906001900390816125ca57905050905082816000815181106125f5576125f56149dd565b602002602001018190525060cd6000858152602001908152602001600020805461261e90614b04565b80601f016020809104026020016040519081016040528092919081815260200182805461264a90614b04565b80156126975780601f1061266c57610100808354040283529160200191612697565b820191906000526020600020905b81548152906001019060200180831161267a57829003601f168201915b5050505050816001815181106126af576126af6149dd565b60209081029190910101529392505050565b60008060006126cf88612e6b565b915091508380156126e1575060028851115b8015612763575060c9546040516331a9108f60e11b8152600481018390526001600160a01b038b8116921690636352211e90602401602060405180830381865afa158015612733573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127579190614b3e565b6001600160a01b031614155b156127c35760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e616765723a20524556455253455f5245434f52445f4e60448201526913d517d0531313d5d15160b21b6064820152608401610981565b60c954604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401602060405180830381865afa15801561280c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128309190614903565b8015612921575060c9546040516331a9108f60e11b81526004810184905230916001600160a01b031690636352211e90602401602060405180830381865afa158015612880573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128a49190614b3e565b6001600160a01b03161480612921575060c95460405163d9548e5360e01b8152600481018490526001600160a01b039091169063d9548e5390602401602060405180830381865afa1580156128fd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129219190614903565b15612a12576001600160401b038516156129a35760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b15801561298a57600080fd5b505af115801561299e573d6000803e3d6000fd5b505050505b60c954604051630fb8df0360e11b81526001600160a01b0390911690631f71be06906129db908c908c908c908c908b90600401614bb0565b600060405180830381600087803b1580156129f557600080fd5b505af1158015612a09573d6000803e3d6000fd5b50505050612c09565b612a1b8261372e565b612a248861378d565b8015612a31575087516002145b8015612a4457506001600160401b038516155b15612b225760ca5488516001600160a01b039091169063c36c2125908b908b90600090612a7357612a736149dd565b602090810291909101015160cc546040516001600160e01b031960e086901b168152612aad9392916001600160a01b031690600401614c0f565b600060405180830381600087803b158015612ac757600080fd5b505af1158015612adb573d6000803e3d6000fd5b50505050600087511115612b1d5760cc54604051633a0deb9d60e21b81526001600160a01b039091169063e837ae74906129db908a908a908790600401614c44565b612c09565b60c95460405163ba5d40b760e01b81526001600160a01b039091169063ba5d40b790612b5a908c908c908c908c908b90600401614bb0565b600060405180830381600087803b158015612b7457600080fd5b505af1158015612b88573d6000803e3d6000fd5b505050506001600160401b03851615612c095760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b158015612bf057600080fd5b505af1158015612c04573d6000803e3d6000fd5b505050505b50979650505050505050565b610cf481612c2161239e565b6137e7565b612c30828261156e565b610d815760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19166001179055612c6961239e565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b612cb561239e565b6001600160a01b0316612cd06033546001600160a01b031690565b6001600160a01b031614610d955760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610981565b610cf4600080516020614ef483398151915282611e2d565b612d48828261156e565b15610d815760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19169055612d7f61239e565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612dcb610e37565b612e0e5760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881393d517d4105554d15160621b6044820152606401610981565b600080516020614ed4833981519152805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa612e4e61239e565b6040516001600160a01b03909116815260200160405180910390a1565b805160009081905b8015612ea057829150612e8c82856110166001856149ca565b925080612e9881614c7a565b915050612e73565b50915091565b60008151600003612ef95760405162461bcd60e51b815260206004820152601b60248201527f4d696e74696e674d616e616765723a204c4142454c5f454d50545900000000006044820152606401610981565b8282604051602001612f0b9190614c91565b60405160208183030381529060405280519060200120604051602001612f3b929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b610cf4600080516020614ef48339815191528261353b565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b612fcc610e37565b15612fe95760405162461bcd60e51b8152600401610981906147cb565b600080516020614ed4833981519152805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258612e4e61239e565b6000613039600084612ea6565b600081815260cd602052604090209091506130548482614cf3565b50600081815260cf602052604090819020805460ff19168415151790555181907f4fce6f6e172b04eaa80325d8e3b0180a34945000f3e214605039e8420fdf8980906130a190869061437c565b60405180910390a260c954604051634f558e7960e01b8152600481018390526001600160a01b0390911690634f558e7990602401602060405180830381865afa1580156130f2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131169190614903565b610cde5760c9546040516307befae360e51b81526001600160a01b039091169063f7df5c6090610acc9084908790600401614db2565b600054610100900460ff166131735760405162461bcd60e51b815260040161098190614dd3565b610d9561317e61239e565b612f72565b600054610100900460ff166131aa5760405162461bcd60e51b815260040161098190614dd3565b610d9560006131b761239e565b61353b565b600054610100900460ff1661179e5760405162461bcd60e51b815260040161098190614dd3565b600054610100900460ff1661320a5760405162461bcd60e51b815260040161098190614dd3565b600080516020614ed4833981519152805460ff19169055565b600061323761323287896147f5565b612e6b565b506040516bffffffffffffffffffffffff1930606090811b821660208401524660348401528b811b82166054840152606883018490526001600160c01b031960c08a901b1660888401526090830188905286901b1660b082015290915060009061331390849061330d9060c401604051602081830303815290604052805190602001206040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c8101829052600090605c01604051602081830303815290604052805190602001209050919050565b9061384b565b905061331e816116f4565b6133765760405162461bcd60e51b8152602060048201526024808201527f4d696e74696e674d616e616765723a205349474e45525f49535f4e4f545f4d49604482015263272a22a960e11b6064820152608401610981565b42866001600160401b0316116133d85760405162461bcd60e51b815260206004820152602160248201527f4d696e74696e674d616e616765723a20455850495245445f5349474e415455526044820152604560f81b6064820152608401610981565b505050505050505050565b600061342a8a6133f38a8c6147f5565b6133fd898b6147f5565b613407888a6147f5565b60008f6001600160a01b031661341b61239e565b6001600160a01b0316146126c1565b9050896001600160a01b031661343e61239e565b6001600160a01b0316827fa545b6fd3355e8d57f8c8147bafe740545bd3ea1f94bef2576a6d532a7c3b605868660405161348b9291909182526001600160a01b0316602082015260400190565b60405180910390a450505050505050505050565b600081815260cd6020526040812080548291906134bb90614b04565b9050119050919050565b6134cd612cad565b6001600160a01b0381166135325760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610981565b610cf481612f72565b610d818282612c26565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546000906001600160a01b03163303613586575060331936013560601c90565b503390565b604080518082019091526000808252602082015260405180604001604052808381526020018486602001516135c09190614e1e565b9052949350505050565b600081516000036135dd57506000919050565b60208201805160f81c603081108015906135fb575060398160ff1611155b15801561361d575060618160ff161015801561361b5750607a8160ff1611155b155b1561362c575060009392505050565b8351600181111561369a5761364e836136466001846149ca565b015160f81c90565b915060308260ff1610158015613668575060398260ff1611155b15801561368a575060618260ff16101580156136885750607a8260ff1611155b155b1561369a57506000949350505050565b60015b6136a86001836149ca565b811015613722578381015160f81c9250602d83148015906136de575060308360ff16101580156136dc575060398360ff1611155b155b80156136ff575060618360ff16101580156136fd5750607a8360ff1611155b155b156137105750600095945050505050565b8061371a81614a39565b91505061369d565b50600195945050505050565b6137378161170e565b156137845760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a20544f4b454e5f424c4f434b45440000006044820152606401610981565b610cf48161386f565b6000806137a46000846001865161101691906149ca565b60ca549091506001600160a01b0316158015906137e05750807f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f145b9392505050565b6137f1828261156e565b610d8157613809816001600160a01b031660146138f3565b6138148360206138f3565b604051602001613825929190614e31565b60408051601f198184030181529082905262461bcd60e51b82526109819160040161437c565b600080600061385a8585613a8e565b9150915061386781613ad3565b509392505050565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd6960208201529081018290526001906138ae90606001611749565b805460ff19169115159190911790556040518181527f2ce5d9351b1d590d5a066db0d2dc7602d55f092506a83a7ee8c4d78ee357d75a9060200160405180910390a150565b60606000613902836002614ea6565b61390d906002614e1e565b6001600160401b0381111561392457613924614133565b6040519080825280601f01601f19166020018201604052801561394e576020820181803683370190505b509050600360fc1b81600081518110613969576139696149dd565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110613998576139986149dd565b60200101906001600160f81b031916908160001a90535060006139bc846002614ea6565b6139c7906001614e1e565b90505b6001811115613a3f576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106139fb576139fb6149dd565b1a60f81b828281518110613a1157613a116149dd565b60200101906001600160f81b031916908160001a90535060049490941c93613a3881614c7a565b90506139ca565b5083156137e05760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610981565b6000808251604103613ac45760208301516040840151606085015160001a613ab887828585613c89565b94509450505050613acc565b506000905060025b9250929050565b6000816004811115613ae757613ae7614ebd565b03613aef5750565b6001816004811115613b0357613b03614ebd565b03613b505760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152606401610981565b6002816004811115613b6457613b64614ebd565b03613bb15760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610981565b6003816004811115613bc557613bc5614ebd565b03613c1d5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b6064820152608401610981565b6004816004811115613c3157613c31614ebd565b03610cf45760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c604482015261756560f01b6064820152608401610981565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613cc05750600090506003613d6d565b8460ff16601b14158015613cd857508460ff16601c14155b15613ce95750600090506004613d6d565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613d3d573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613d6657600060019250925050613d6d565b9150600090505b94509492505050565b508054613d8290614b04565b6000825580601f10613d92575050565b601f016020900490600052602060002090810190610cf491905b80821115613dc05760008155600101613dac565b5090565b600060208284031215613dd657600080fd5b81356001600160e01b0319811681146137e057600080fd5b6001600160401b0381168114610cf457600080fd5b8035613e0e81613dee565b919050565b60008060408385031215613e2657600080fd5b8235613e3181613dee565b946020939093013593505050565b600060208284031215613e5157600080fd5b5035919050565b60008083601f840112613e6a57600080fd5b5081356001600160401b03811115613e8157600080fd5b602083019150836020828501011115613acc57600080fd5b600080600060408486031215613eae57600080fd5b8335925060208401356001600160401b03811115613ecb57600080fd5b613ed786828701613e58565b9497909650939450505050565b6001600160a01b0381168114610cf457600080fd5b8035613e0e81613ee4565b60008060408385031215613f1757600080fd5b823591506020830135613f2981613ee4565b809150509250929050565b600060208284031215613f4657600080fd5b81356137e081613ee4565b60008083601f840112613f6357600080fd5b5081356001600160401b03811115613f7a57600080fd5b6020830191508360208260051b8501011115613acc57600080fd5b8015158114610cf457600080fd5b60008060008060008060008060a0898b031215613fbf57600080fd5b8835613fca81613ee4565b975060208901356001600160401b0380821115613fe657600080fd5b613ff28c838d01613f51565b909950975060408b013591508082111561400b57600080fd5b6140178c838d01613f51565b909750955060608b013591508082111561403057600080fd5b5061403d8b828c01613f51565b909450925050608089013561405181613f95565b809150509295985092959890939650565b600080600080600080600080600060c08a8c03121561408057600080fd5b893561408b81613ee4565b985060208a01356001600160401b03808211156140a757600080fd5b6140b38d838e01613f51565b909a50985060408c01359150808211156140cc57600080fd5b6140d88d838e01613f51565b909850965060608c01359150808211156140f157600080fd5b506140fe8c828d01613f51565b90955093505060808a013561411281613dee565b915060a08a013561412281613f95565b809150509295985092959850929598565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561417157614171614133565b604052919050565b60006001600160401b0382111561419257614192614133565b5060051b60200190565b600060208083850312156141af57600080fd5b82356001600160401b038111156141c557600080fd5b8301601f810185136141d657600080fd5b80356141e96141e482614179565b614149565b81815260059190911b8201830190838101908783111561420857600080fd5b928401925b8284101561422f57833561422081613ee4565b8252928401929084019061420d565b979650505050505050565b6000806000806060858703121561425057600080fd5b843561425b81613ee4565b93506020850135925060408501356001600160401b0381111561427d57600080fd5b61428987828801613e58565b95989497509550505050565b600080602083850312156142a857600080fd5b82356001600160401b038111156142be57600080fd5b6142ca85828601613e58565b90969095509350505050565b6000806000604084860312156142eb57600080fd5b83356001600160401b0381111561430157600080fd5b61430d86828701613e58565b909450925050602084013561432181613f95565b809150509250925092565b60005b8381101561434757818101518382015260200161432f565b50506000910152565b6000815180845261436881602086016020860161432c565b601f01601f19169290920160200192915050565b6020815260006137e06020830184614350565b60008060008060008060c087890312156143a857600080fd5b86356143b381613ee4565b955060208701356143c381613ee4565b945060408701356143d381613ee4565b935060608701356143e381613ee4565b925060808701356143f381613ee4565b915060a087013561440381613ee4565b809150509295509295509295565b60008060008060008060008060a0898b03121561442d57600080fd5b883561443881613ee4565b97506020890135965060408901356001600160401b038082111561445b57600080fd5b6144678c838d01613e58565b909850965060608b013591508082111561448057600080fd5b61448c8c838d01613f51565b909650945060808b01359150808211156144a557600080fd5b506144b28b828c01613f51565b999c989b5096995094979396929594505050565b600080602083850312156144d957600080fd5b82356001600160401b038111156144ef57600080fd5b6142ca85828601613f51565b600080600080600080600080600080600060e08c8e03121561451c57600080fd5b6145258c613ef9565b9a506001600160401b038060208e0135111561454057600080fd5b6145508e60208f01358f01613f51565b909b50995060408d013581101561456657600080fd5b6145768e60408f01358f01613f51565b909950975060608d013581101561458c57600080fd5b61459c8e60608f01358f01613f51565b90975095506145ad60808e01613e03565b945060a08d013593508060c08e013511156145c757600080fd5b506145d88d60c08e01358e01613e58565b81935080925050509295989b509295989b9093969950565b6000806000806000806000806000806000806101008d8f03121561461357600080fd5b61461c8d613ef9565b9b506001600160401b0360208e0135111561463657600080fd5b6146468e60208f01358f01613f51565b909b5099506001600160401b0360408e0135111561466357600080fd5b6146738e60408f01358f01613f51565b90995097506001600160401b0360608e0135111561469057600080fd5b6146a08e60608f01358f01613f51565b90975095506146b160808e01613e03565b94506146bf60a08e01613ef9565b935060c08d013592506001600160401b0360e08e013511156146e057600080fd5b6146f08e60e08f01358f01613e58565b81935080925050509295989b509295989b509295989b565b6000806040838503121561471b57600080fd5b823561472681613ee4565b91506020830135613f2981613ee4565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b60006020828403121561477d57600080fd5b81516137e081613dee565b60208082526023908201527f4d696e74696e674d616e616765723a20544f4b454e5f4e4f545f455850495241604082015262424c4560e81b606082015260800190565b60208082526010908201526f14185d5cd8589b194e8814105554d15160821b604082015260600190565b60006148036141e484614179565b80848252602080830192508560051b85013681111561482157600080fd5b855b818110156148b35780356001600160401b03808211156148435760008081fd5b90880190601f36818401126148585760008081fd5b82358281111561486a5761486a614133565b61487b818301601f19168801614149565b9250808352368782860101111561489457600091508182fd5b8087850188850137600090830187015250865250938201938201614823565b50919695505050505050565b60208082526024908201527f4d696e74696e674d616e616765723a2043414c4c45525f49535f4e4f545f4d49604082015263272a22a960e11b606082015260800190565b60006020828403121561491557600080fd5b81516137e081613f95565b6020808252602f908201527f4d696e74696e674d616e616765723a2053454e4445525f49535f4e4f545f415060408201526e282927ab22a22fa7a92fa7aba722a960891b606082015260800190565b60208082526025908201527f4d696e74696e674d616e616765723a204c4142454c535f4c454e4754485f42456040820152642627abaf9960d91b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b81810381811115610954576109546149b4565b634e487b7160e01b600052603260045260246000fd5b60208082526026908201527f4d696e74696e674d616e616765723a20535542444f4d41494e535f4e4f545f41604082015265131313d5d15160d21b606082015260800190565b600060018201614a4b57614a4b6149b4565b5060010190565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b60208082526022908201527f4d696e74696e674d616e616765723a20544c445f4e4f545f5245474953544552604082015261115160f21b606082015260800190565b600060208284031215614ad557600080fd5b5051919050565b6b756e732d646576746573742d60a01b81528183600c83013760009101600c01908152919050565b600181811c90821680614b1857607f821691505b602082108103614b3857634e487b7160e01b600052602260045260246000fd5b50919050565b600060208284031215614b5057600080fd5b81516137e081613ee4565b600081518084526020808501808196508360051b8101915082860160005b85811015614ba3578284038952614b91848351614350565b98850198935090840190600101614b79565b5091979650505050505050565b6001600160a01b038616815260a060208201819052600090614bd490830187614b5b565b8281036040840152614be68187614b5b565b90508281036060840152614bfa8186614b5b565b91505082151560808301529695505050505050565b600060018060a01b03808616835260606020840152614c316060840186614350565b9150808416604084015250949350505050565b606081526000614c576060830186614b5b565b8281036020840152614c698186614b5b565b915050826040830152949350505050565b600081614c8957614c896149b4565b506000190190565b60008251614ca381846020870161432c565b9190910192915050565b601f821115610cde57600081815260208120601f850160051c81016020861015614cd45750805b601f850160051c820191505b818110156116a357828155600101614ce0565b81516001600160401b03811115614d0c57614d0c614133565b614d2081614d1a8454614b04565b84614cad565b602080601f831160018114614d555760008415614d3d5750858301515b600019600386901b1c1916600185901b1785556116a3565b600085815260208120601f198616915b82811015614d8457888601518255948401946001909101908401614d65565b5085821015614da25787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b828152604060208201526000614dcb6040830184614350565b949350505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b80820180821115610954576109546149b4565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351614e6981601785016020880161432c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351614e9a81602884016020880161432c565b01602801949350505050565b8082028115828204841417610954576109546149b4565b634e487b7160e01b600052602160045260246000fdfe5496787fc1ebdfeba375028c1865f13fbb1d63c0caa356ccc1b29a80f3ebd6229f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000811000a","storage":{}},"0x24f45688d421f46cca60734bdc648ad192db0f2e":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0x1","0x97":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x12d":"0x0","0x15f":"0x5cc819c9915eadfcebd76952b8c1bc36cadd7376","0x13cf90498be59d359caa5b6092b365feab4610605d7107d1f05f8e94ac955652":"0x1","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x54563a9e1cd2dcbd0bca90d3cfa4a647e02c404a","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106102295760003560e01c8063886a69ba11610123578063cf1d21c0116100ab578063e2c49de11161006f578063e2c49de11461091d578063e3dec8fb14610932578063e43009a6146109c8578063e66f9603146109fb578063ea60c7c414610a2557610240565b8063cf1d21c014610844578063d233a3c714610859578063d547741f1461089c578063d81c8e52146108d5578063dc993a23146108ea57610240565b8063a217fddf116100f2578063a217fddf1461078a578063b4b4f63e1461079f578063bc08452b146107b4578063c4d66de8146107e7578063ca15c8731461081a57610240565b8063886a69ba146106c95780639010d07c146106de5780639173b1391461070e57806391d148541461075157610240565b80633138b6f1116101b1578063568b80b511610175578063568b80b5146105fb578063607f2d4214610610578063630fcbfb1461064e5780636cb136b0146106635780636e86b7701461069657610240565b80633138b6f1146104f55780633408e4701461050a57806336568abe1461051f5780633805550f146105585780634faa8a26146105d557610240565b80630f7e5970116101f85780630f7e59701461042357806320379ee514610438578063248a9ca31461045f5780632d0335ab146104895780632f2ff15d146104bc57610240565b806304967702146102455780630c3894bb146102765780630c53c51c146102b15780630c598220146103ea57610240565b366102405761023e610239610a58565b610a68565b005b600080fd5b34801561025157600080fd5b5061025a610b69565b604080516001600160a01b039092168252519081900360200190f35b34801561028257600080fd5b5061023e6004803603604081101561029957600080fd5b506001600160a01b0381358116916020013516610b78565b610375600480360360a08110156102c757600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156102f257600080fd5b82018360208201111561030457600080fd5b8035906020019184600183028401116401000000008311171561032657600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550508235935050506020810135906040013560ff16610cc9565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103af578181015183820152602001610397565b50505050905090810190601f1680156103dc5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156103f657600080fd5b5061023e6004803603604081101561040d57600080fd5b50803590602001356001600160a01b0316610fcc565b34801561042f57600080fd5b506103756110b9565b34801561044457600080fd5b5061044d6110d6565b60408051918252519081900360200190f35b34801561046b57600080fd5b5061044d6004803603602081101561048257600080fd5b50356110dc565b34801561049557600080fd5b5061044d600480360360208110156104ac57600080fd5b50356001600160a01b03166110f4565b3480156104c857600080fd5b5061023e600480360360408110156104df57600080fd5b50803590602001356001600160a01b031661110f565b34801561050157600080fd5b5061025a611176565b34801561051657600080fd5b5061044d611185565b34801561052b57600080fd5b5061023e6004803603604081101561054257600080fd5b50803590602001356001600160a01b0316611189565b34801561056457600080fd5b5061023e6004803603602081101561057b57600080fd5b81019060208101813564010000000081111561059657600080fd5b8201836020820111156105a857600080fd5b803590602001918460018302840111640100000000831117156105ca57600080fd5b5090925090506111ea565b61023e600480360360208110156105eb57600080fd5b50356001600160a01b03166116ec565b34801561060757600080fd5b5061044d6116f8565b34801561061c57600080fd5b5061063a6004803603602081101561063357600080fd5b503561171b565b604080519115158252519081900360200190f35b34801561065a57600080fd5b5061023e611730565b34801561066f57600080fd5b5061023e6004803603602081101561068657600080fd5b50356001600160a01b03166117d6565b3480156106a257600080fd5b5061025a600480360360208110156106b957600080fd5b50356001600160a01b031661186e565b3480156106d557600080fd5b5061044d611889565b3480156106ea57600080fd5b5061025a6004803603604081101561070157600080fd5b50803590602001356118aa565b34801561071a57600080fd5b5061023e6004803603606081101561073157600080fd5b506001600160a01b038135811691602081013590911690604001356118d1565b34801561075d57600080fd5b5061063a6004803603604081101561077457600080fd5b50803590602001356001600160a01b0316611a06565b34801561079657600080fd5b5061044d611a24565b3480156107ab57600080fd5b5061023e611a29565b3480156107c057600080fd5b5061023e600480360360208110156107d757600080fd5b50356001600160a01b0316611acf565b3480156107f357600080fd5b5061023e6004803603602081101561080a57600080fd5b50356001600160a01b0316611b67565b34801561082657600080fd5b5061044d6004803603602081101561083d57600080fd5b5035611c57565b34801561085057600080fd5b5061025a611c6e565b34801561086557600080fd5b5061023e6004803603606081101561087c57600080fd5b506001600160a01b03813581169160208101359091169060400135611c86565b3480156108a857600080fd5b5061023e600480360360408110156108bf57600080fd5b50803590602001356001600160a01b0316611de8565b3480156108e157600080fd5b5061044d611e41565b3480156108f657600080fd5b5061023e6004803603602081101561090d57600080fd5b50356001600160a01b0316611e60565b34801561092957600080fd5b5061025a611f3d565b34801561093e57600080fd5b5061023e6004803603606081101561095557600080fd5b6001600160a01b03823581169260208101359091169181019060608101604082013564010000000081111561098957600080fd5b82018360208201111561099b57600080fd5b803590602001918460018302840111640100000000831117156109bd57600080fd5b509092509050611f4c565b3480156109d457600080fd5b5061044d600480360360208110156109eb57600080fd5b50356001600160a01b0316611fe9565b348015610a0757600080fd5b5061025a60048036036020811015610a1e57600080fd5b5035611ffb565b348015610a3157600080fd5b5061025a60048036036020811015610a4857600080fd5b50356001600160a01b0316612016565b6000610a62612031565b90505b90565b604080513460208083019190915282518083039091018152908201909152610aa58273eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee8361208e565b7fa1829a9003092132f585b6ccdd167c19fe9774dbdea4260287e8a8e8ca8185d7546000908152600260205260408082205490516001600160a01b039091169034908381818185875af1925050503d8060008114610b1f576040519150601f19603f3d011682016040523d82523d6000602084013e610b24565b606091505b5050905080610b645760405162461bcd60e51b815260040180806020018281038252602781526020018061419d6027913960400191505060405180910390fd5b505050565b6009546001600160a01b031681565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020610ba981610ba4610a58565b611a06565b600a90610c495760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b820191906000526020600020905b815481529060010190602001808311610c1d57829003601f168201915b50509250505060405180910390fd5b506001600160a01b03808416600081815260036020908152604080832080546001600160a01b0319908116909155948716808452600483528184208054909616909555838352600590915280822082905551909291907f9e651a8866fbea043e911d816ec254b0e3c992c06fff32d605e72362d6023bd9908490a4505050565b6060610cd3613e2a565b50604080516060810182526001600160a01b0388166000818152600c602090815290849020548352820152908101869052610d118782878787612508565b610d4c5760405162461bcd60e51b81526004018080602001828103825260218152602001806141c46021913960400191505060405180910390fd5b6001600160a01b0387166000908152600c6020526040902054610d7690600163ffffffff6125e516565b6001600160a01b0388166000818152600c602090815260408083209490945583519283523383820181905260609484018581528b51958501959095528a517f5845892132946850460bff5a0083f71031bc5bf9aadcd40f1de79423eac9b10b958d9592948d94919260808501928601918190849084905b83811015610e05578181015183820152602001610ded565b50505050905090810190601f168015610e325780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a160006060306001600160a01b0316888a6040516020018083805190602001908083835b60208310610e835780518252601f199092019160209182019101610e64565b6001836020036101000a038019825116818451168082178552505050505050905001826001600160a01b03166001600160a01b031660601b8152601401925050506040516020818303038152906040526040518082805190602001908083835b60208310610f025780518252601f199092019160209182019101610ee3565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610f64576040519150601f19603f3d011682016040523d82523d6000602084013e610f69565b606091505b509150915081610fc0576040805162461bcd60e51b815260206004820152601c60248201527f46756e6374696f6e2063616c6c206e6f74207375636365737366756c00000000604482015290519081900360640190fd5b98975050505050505050565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020610ff881610ba4610a58565b600a9061105e5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5060008381526002602052604080822080546001600160a01b0319166001600160a01b0386169081179091559051909185917f8643692ae1c12ec91fa18e50b82ed93fa314f580999a236824db6de9ae0d839b9190a3505050565b604051806040016040528060018152602001603160f81b81525081565b600b5490565b6000818152600160205260409020600201545b919050565b6001600160a01b03166000908152600c602052604090205490565b60008281526001602052604090206002015461112d90610ba4610a58565b6111685760405162461bcd60e51b815260040180806020018281038252602f815260200180613f78602f913960400191505060405180910390fd5b611172828261263f565b5050565b6008546001600160a01b031690565b4690565b611191610a58565b6001600160a01b0316816001600160a01b0316146111e05760405162461bcd60e51b815260040180806020018281038252602f815260200180614286602f913960400191505060405180910390fd5b61117282826126ae565b606061123361122e84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061271d92505050565b612798565b905060006112548260028151811061124757fe5b602002602001015161291a565b6112796112748460088151811061126757fe5b6020026020010151612a62565b612b2c565b6112898460098151811061124757fe5b6040516020018084815260200183805190602001908083835b602083106112c15780518252601f1990920191602091820191016112a2565b51815160209384036101000a6000190180199092169116179052920193845250604080518085038152938201815283519382019390932060008181526006909252929020549194505060ff1615915061134d90505760405162461bcd60e51b81526004018080602001828103825260288152602001806142096028913960400191505060405180910390fd5b6000818152600660208190526040909120805460ff19166001179055825160609161138a9161122e9161138591879190811061126757fe5b61271d565b9050611394613e54565b6113b1826003815181106113a457fe5b6020026020010151612798565b6113c18560098151811061124757fe5b815181106113cb57fe5b6020026020010151905060006113fc6113e383612798565b6000815181106113ef57fe5b6020026020010151612c9f565b6001600160a01b0380821660009081526004602052604090205491925016806114565760405162461bcd60e51b81526004018080602001828103825260228152602001806140af6022913960400191505060405180910390fd5b6001600160a01b03808216600090815260056020908152604080832054835260029091529020548751911690611493908890600890811061124757fe5b63ffffffff1916156114d65760405162461bcd60e51b815260040180806020018281038252602581526020018061408a6025913960400191505060405180910390fd5b61151e6114e98860068151811061126757fe5b6114f98960088151811061126757fe5b6115098a60078151811061126757fe5b6115198b60058151811061124757fe5b612d2f565b61156f576040805162461bcd60e51b815260206004820152601f60248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f50524f4f4600604482015290519081900360640190fd5b6115dd6115828860028151811061124757fe5b6115928960038151811061124757fe5b6115a28a60048151811061124757fe5b60001b6115b58b60058151811061124757fe5b60001b6115c88c60008151811061124757fe5b6115d88d60018151811061126757fe5b612f76565b50806001600160a01b0316638274664f6115f5610a58565b846115ff886130bf565b6040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561167b578181015183820152602001611663565b50505050905090810190601f1680156116a85780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b1580156116c957600080fd5b505af11580156116dd573d6000803e3d6000fd5b50505050505050505050505050565b6116f581610a68565b50565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b01902081565b60066020526000908152604090205460ff1681565b600061173e81610ba4610a58565b600a906117a45760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506116f56040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b81525061312d565b60006117e481610ba4610a58565b600a9061184a5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5050600780546001600160a01b0319166001600160a01b0392909216919091179055565b6004602052600090815260409020546001600160a01b031681565b604080516826a0a82faa27a5a2a760b91b8152905190819003600901902081565b60008281526001602052604081206118c8908363ffffffff6131e916565b90505b92915050565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b0190206118fd81610ba4610a58565b600a906119635760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b03848116600090815260036020526040902054161580156119a457506001600160a01b0383811660009081526004602052604090205416155b6119f5576040805162461bcd60e51b815260206004820181905260248201527f526f6f74436861696e4d616e616765723a20414c52454144595f4d4150504544604482015290519081900360640190fd5b611a008484846131f5565b50505050565b60008281526001602052604081206118c8908363ffffffff61348416565b600081565b6000611a3781610ba4610a58565b600a90611a9d5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506116f56040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613499565b6000611add81610ba4610a58565b600a90611b435760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5050600880546001600160a01b0319166001600160a01b0392909216919091179055565b60005460ff1615611bb0576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b611be16040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613537565b611c126040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613499565b611c1d600082611168565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020611c479082611168565b506000805460ff19166001179055565b60008181526001602052604081206118cb90613589565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020611cb281610ba4610a58565b600a90611d185760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b0380851660009081526003602081815260408084205488861685526004835281852054861680865293909252909220549183169290911615611d8e576001600160a01b038116600090815260036020908152604080832080546001600160a01b031916905560059091528120555b6001600160a01b038281166000908152600460205260409020541615611dd5576001600160a01b038216600090815260046020526040902080546001600160a01b03191690555b611de08686866131f5565b505050505050565b600082815260016020526040902060020154611e0690610ba4610a58565b6111e05760405162461bcd60e51b81526004018080602001828103825260308152602001806140f96030913960400191505060405180910390fd5b604080516611115413d4d25560ca1b8152905190819003600701902081565b6000611e6e81610ba4610a58565b600a90611ed45760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b038216611f1a5760405162461bcd60e51b815260040180806020018281038252602d815260200180613fa7602d913960400191505060405180910390fd5b50600980546001600160a01b0319166001600160a01b0392909216919091179055565b6007546001600160a01b031690565b6001600160a01b03831673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee1415611fa85760405162461bcd60e51b81526004018080602001828103825260248152602001806141e56024913960400191505060405180910390fd5b611a00848484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061208e92505050565b60056020526000908152604090205481565b6002602052600090815260409020546001600160a01b031681565b6003602052600090815260409020546001600160a01b031681565b6000333014156120895760606000368080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505050503601516001600160a01b03169150610a659050565b503390565b6001600160a01b03808316600090815260056020908152604080832054600390925290912054909116158015906120c457508015155b6120ff5760405162461bcd60e51b81526004018080602001828103825260228152602001806140af6022913960400191505060405180910390fd5b6000818152600260205260409020546001600160a01b0316806121535760405162461bcd60e51b81526004018080602001828103825260248152602001806140176024913960400191505060405180910390fd5b6001600160a01b0385166121ae576040805162461bcd60e51b815260206004820152601e60248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f555345520000604482015290519081900360640190fd5b806001600160a01b031663e375b64e6121c5610a58565b8787876040518563ffffffff1660e01b815260040180856001600160a01b03166001600160a01b03168152602001846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561225c578181015183820152602001612244565b50505050905090810190601f1680156122895780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b1580156122ab57600080fd5b505af11580156122bf573d6000803e3d6000fd5b50505050606085858560405160200180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015612338578181015183820152602001612320565b50505050905090810190601f1680156123655780820380516001836020036101000a031916815260200191505b5060408051808303601f19018152828252600780546009546611115413d4d25560ca1b865284519586900390920185206020808701828152878701968752855160608901528551959d506001600160a01b039384169c506316f198319b5092909316985096508a955093608001919085019080838360005b838110156123f55781810151838201526020016123dd565b50505050905090810190601f1680156124225780820380516001836020036101000a031916815260200191505b5093505050506040516020818303038152906040526040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561249b578181015183820152602001612483565b50505050905090810190601f1680156124c85780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b1580156124e857600080fd5b505af11580156124fc573d6000803e3d6000fd5b50505050505050505050565b60006001600160a01b03861661254f5760405162461bcd60e51b81526004018080602001828103825260258152602001806141296025913960400191505060405180910390fd5b600161256261255d87613594565b613620565b83868660405160008152602001604052604051808581526020018460ff1660ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa1580156125bc573d6000803e3d6000fd5b505050602060405103516001600160a01b0316866001600160a01b031614905095945050505050565b6000828201838110156118c8576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600082815260016020526040902061265d908263ffffffff61366c16565b156111725761266a610a58565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b60008281526001602052604090206126cc908263ffffffff61368116565b15611172576126d9610a58565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612725613e54565b600082511161277b576040805162461bcd60e51b815260206004820152601f60248201527f524c505265616465723a20494e56414c49445f42595445535f4c454e47544800604482015290519081900360640190fd5b506040805180820190915281518152602082810190820152919050565b60606127a382613696565b6127f4576040805162461bcd60e51b815260206004820152601860248201527f524c505265616465723a204954454d5f4e4f545f4c4953540000000000000000604482015290519081900360640190fd5b60006127ff836136c2565b905060608167ffffffffffffffff8111801561281a57600080fd5b5060405190808252806020026020018201604052801561285457816020015b612841613e54565b8152602001906001900390816128395790505b5090506000612866856020015161374e565b855190915081146128a85760405162461bcd60e51b81526004018080602001828103825260278152602001806142316027913960400191505060405180910390fd5b60006128b786602001516137e2565b60208701510190506000805b8581101561290e576128d48361374e565b91506040518060400160405280838152602001848152508582815181106128f757fe5b6020908102919091010152918101916001016128c3565b50929695505050505050565b600061292582613696565b15612977576040805162461bcd60e51b815260206004820181905260248201527f524c505265616465723a204445434f44494e475f4c4953545f41535f55494e54604482015290519081900360640190fd5b8151602110156129ce576040805162461bcd60e51b815260206004820152601e60248201527f524c505265616465723a20494e56414c49445f55494e545f4c454e4754480000604482015290519081900360640190fd5b60006129dd836020015161374e565b83519091508114612a1f5760405162461bcd60e51b81526004018080602001828103825260278152602001806142b56027913960400191505060405180910390fd5b6000612a2e84602001516137e2565b84516020808701518301805193945091849003929190831015612a5857826020036101000a820491505b5095945050505050565b60606000612a73836020015161374e565b83519091508114612ab55760405162461bcd60e51b81526004018080602001828103825260288152602001806140d16028913960400191505060405180910390fd5b6000612ac484602001516137e2565b845190915081900360608167ffffffffffffffff81118015612ae557600080fd5b506040519080825280601f01601f191660200182016040528015612b10576020820181803683370190505b5090506000816020019050612a58848860200151018285613845565b604080516020810190915260008152815160609190156118cb57600080612b54600086613890565b60f81c90506001811480612b6b57508060ff166003145b15612bfa57600185516002020367ffffffffffffffff81118015612b8e57600080fd5b506040519080825280601f01601f191660200182016040528015612bb9576020820181803683370190505b5092506000612bc9600187613890565b90508084600081518110612bd957fe5b60200101906001600160f81b031916908160001a9053506001925050612c4b565b600285516002020367ffffffffffffffff81118015612c1857600080fd5b506040519080825280601f01601f191660200182016040528015612c43576020820181803683370190505b509250600091505b60ff82165b8351811015612c9657612c6b8360ff16820360020187613890565b848281518110612c7757fe5b60200101906001600160f81b031916908160001a905350600101612c50565b50505092915050565b6000612caa82613696565b15612ce65760405162461bcd60e51b815260040180806020018281038252602381526020018061417a6023913960400191505060405180910390fd5b8151601514612d265760405162461bcd60e51b81526004018080602001828103825260218152602001806142dc6021913960400191505060405180910390fd5b6118cb8261291a565b6000612d39613e54565b612d428461271d565b90506060612d4f82612798565b905060608085600082612d618b612b2c565b9050805160001415612d7d576000975050505050505050612f6e565b60005b8651811015612f65578151831115612da357600098505050505050505050612f6e565b612dbf878281518110612db257fe5b60200260200101516130bf565b955085805190602001208414612de057600098505050505050505050612f6e565b612def8782815181106113a457fe5b9450845160111415612eac578151831415612e4b578c80519060200120612e1c8660108151811061126757fe5b805190602001201415612e3a57600198505050505050505050612f6e565b600098505050505050505050612f6e565b6000828481518110612e5957fe5b016020015160f81c90506010811115612e7e5760009950505050505050505050612f6e565b612e9d868260ff1681518110612e9057fe5b60200260200101516138ed565b94505060019290920191612f5d565b845160021415612e3a576000612ed2612ecb8760008151811061126757fe5b848661398c565b905082518185011415612f28578d80519060200120612ef78760018151811061126757fe5b805190602001201415612f165760019950505050505050505050612f6e565b60009950505050505050505050612f6e565b80612f3f5760009950505050505050505050612f6e565b8084019350612f5486600181518110612e9057fe5b9450612f5d9050565b600101612d80565b50505050505050505b949350505050565b600854604080516320a9cea560e11b81526004810185905290516000928392839283926001600160a01b0316916341539d4a9160248083019260a0929190829003018186803b158015612fc857600080fd5b505afa158015612fdc573d6000803e3d6000fd5b505050506040513d60a0811015612ff257600080fd5b5080516020820151606090920151909450909250905061306161301b8b8463ffffffff613a6b16565b6040805160208082018f90528183018e9052606082018d905260808083018d90528351808403909101815260a0909201909252805191012090858863ffffffff613aad16565b6130b2576040805162461bcd60e51b815260206004820181905260248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f484541444552604482015290519081900360640190fd5b9998505050505050505050565b606080826000015167ffffffffffffffff811180156130dd57600080fd5b506040519080825280601f01601f191660200182016040528015613108576020820181803683370190505b50905060008160200190506131268460200151828660000151613845565b5092915050565b6040518060800160405280604f815260200161403b604f913980516020918201208251838301206040805180820190915260018152603160f81b930192909252907fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc630613198611185565b604080516020808201979097528082019590955260608501939093526001600160a01b03909116608084015260a0808401919091528151808403909101815260c090920190528051910120600b5550565b60006118c88383613c03565b6000818152600260205260409020546001600160a01b03166132485760405162461bcd60e51b815260040180806020018281038252602a815260200180613f07602a913960400191505060405180910390fd5b6001600160a01b03808416600081815260036020908152604080832080549588166001600160a01b031996871681179091558084526004835281842080549096168517909555838352600590915280822085905551849392917f9e651a8866fbea043e911d816ec254b0e3c992c06fff32d605e72362d6023bd991a4604080516001600160a01b0380861660208084019190915281861683850152606083810186905284518085038201815260808086018088526007546009546826a0a82faa27a5a2a760b91b9092528851978890036089018820888701818152898b019a8b528551968a019690965284519499918816986316f1983198939093169690958a9590949293909201919085019080838360005b8381101561337357818101518382015260200161335b565b50505050905090810190601f1680156133a05780820380516001836020036101000a031916815260200191505b5093505050506040516020818303038152906040526040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015613419578181015183820152602001613401565b50505050905090810190601f1680156134465780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b15801561346657600080fd5b505af115801561347a573d6000803e3d6000fd5b5050505050505050565b60006118c8836001600160a01b038416613c67565b806040516020018082805190602001908083835b602083106134cc5780518252601f1990920191602091820191016134ad565b51815160209384036101000a60001901801990921691161790527f3a20494e53554646494349454e545f5045524d495353494f4e530000000000009190930190815260408051808303600519018152601a909201905280516111729550600a94509201919050613e6e565b60005460ff1615613580576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b611c478161312d565b60006118cb82613c7f565b6000604051806080016040528060438152602001613fd460439139805190602001208260000151836020015184604001518051906020012060405160200180858152602001848152602001836001600160a01b03166001600160a01b03168152602001828152602001945050505050604051602081830303815290604052805190602001209050919050565b600061362a6110d6565b82604051602001808061190160f01b81525060020183815260200182815260200192505050604051602081830303815290604052805190602001209050919050565b60006118c8836001600160a01b038416613c83565b60006118c8836001600160a01b038416613ccd565b6020810151805160009190821a9060c08210156136b8576000925050506110ef565b5060019392505050565b6000806000905060006136d884602001516137e2565b602085015185519181019250015b80821015613745576136f78261374e565b820191508082111561373a5760405162461bcd60e51b815260040180806020018281038252602c81526020018061414e602c913960400191505060405180910390fd5b6001909201916136e6565b50909392505050565b80516000908190811a60808110156137695760019150613126565b60b881101561377e57607e1981019150613126565b60c08110156137ab5760b78103600185019450806020036101000a85510460018201810193505050613126565b60f88110156137c05760be1981019150613126565b60019390930151602084900360f7016101000a900490920160f5190192915050565b8051600090811a60808110156137fc5760009150506110ef565b60b8811080613817575060c08110801590613817575060f881105b156138265760019150506110ef565b60c081101561383a5760b5190190506110ef565b60f5190190506110ef565b8061384f57610b64565b5b6020811061386f578251825260209283019290910190601f1901613850565b915181516020939093036101000a6000190180199091169216919091179052565b600060028306156138c15760108260028504815181106138ac57fe5b016020015160f81c816138bb57fe5b066138e3565b60108260028504815181106138d257fe5b016020015160f81c816138e157fe5b045b60f81b9392505050565b6000806138fd836020015161374e565b8351909150811461393f5760405162461bcd60e51b815260040180806020018281038252602e815260200180614258602e913960400191505060405180910390fd5b825160211461397f5760405162461bcd60e51b8152600401808060200182810382526025815260200180613f536025913960400191505060405180910390fd5b5050602001516001015190565b600080606061399a86612b2c565b90506060815167ffffffffffffffff811180156139b657600080fd5b506040519080825280601f01601f1916602001820160405280156139e1576020820181803683370190505b509050845b82518601811015613a3b5760008782815181106139ff57fe5b602001015160f81c60f81b9050808388840381518110613a1b57fe5b60200101906001600160f81b031916908160001a905350506001016139e6565b50808051906020012082805190602001201415613a5b5781519250613a60565b600092505b509095945050505050565b60006118c883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250613d93565b60006020825181613aba57fe5b0615613b04576040805162461bcd60e51b8152602060048201526014602482015273092dcecc2d8d2c840e0e4dedecc40d8cadccee8d60631b604482015290519081900360640190fd5b60006020835181613b1157fe5b0490508060020a8510613b63576040805162461bcd60e51b81526020600482015260156024820152744c65616620696e64657820697320746f6f2062696760581b604482015290519081900360640190fd5b60008660205b85518111613bf55785810151925060028806613bb55781836040516020018083815260200182815260200192505050604051602081830303815290604052805190602001209150613be7565b828260405160200180838152602001828152602001925050506040516020818303038152906040528051906020012091505b600288049750602001613b69565b509094149695505050505050565b81546000908210613c455760405162461bcd60e51b8152600401808060200182810382526022815260200180613f316022913960400191505060405180910390fd5b826000018281548110613c5457fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000613c8f8383613c67565b613cc5575081546001818101845560008481526020808220909301849055845484825282860190935260409020919091556118cb565b5060006118cb565b60008181526001830160205260408120548015613d895783546000198083019190810190600090879083908110613d0057fe5b9060005260206000200154905080876000018481548110613d1d57fe5b600091825260208083209091019290925582815260018981019092526040902090840190558654879080613d4d57fe5b600190038181906000526020600020016000905590558660010160008781526020019081526020016000206000905560019450505050506118cb565b60009150506118cb565b60008184841115613e225760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015613de7578181015183820152602001613dcf565b50505050905090810190601f168015613e145780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60405180606001604052806000815260200160006001600160a01b03168152602001606081525090565b604051806040016040528060008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10613eaf57805160ff1916838001178555613edc565b82800160010185558215613edc579182015b82811115613edc578251825591602001919060010190613ec1565b50613ee8929150613eec565b5090565b610a6591905b80821115613ee85760008155600101613ef256fe526f6f74436861696e4d616e616765723a20544f4b454e5f545950455f4e4f545f535550504f52544544456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473524c505265616465723a20494e56414c49445f55494e545f5354524943545f4c454e475448416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e74526f6f74436861696e4d616e616765723a20494e56414c49445f4348494c445f434841494e5f414444524553534d6574615472616e73616374696f6e2875696e74323536206e6f6e63652c616464726573732066726f6d2c62797465732066756e6374696f6e5369676e617475726529526f6f74436861696e4d616e616765723a20494e56414c49445f544f4b454e5f54595045454950373132446f6d61696e28737472696e67206e616d652c737472696e672076657273696f6e2c6164647265737320766572696679696e67436f6e74726163742c627974657333322073616c7429526f6f74436861696e4d616e616765723a20494e56414c49445f4252414e43485f4d41534b526f6f74436861696e4d616e616765723a20544f4b454e5f4e4f545f4d4150504544524c505265616465723a2042595445535f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b654e61746976654d6574615472616e73616374696f6e3a20494e56414c49445f5349474e4552524c505265616465723a204e554d5f4954454d535f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a204445434f44494e475f4c4953545f41535f41444452455353526f6f74436861696e4d616e616765723a2045544845525f5452414e534645525f4641494c45445369676e657220616e64207369676e617475726520646f206e6f74206d61746368526f6f74436861696e4d616e616765723a20494e56414c49445f524f4f545f544f4b454e526f6f74436861696e4d616e616765723a20455849545f414c52454144595f50524f434553534544524c505265616465723a204c4953545f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a2055494e545f5354524943545f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66524c505265616465723a2055494e545f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a20494e56414c49445f414444524553535f4c454e475448a164736f6c6343000606000a","storage":{"0x0":"0x1","0x7":"0xe0afc4e9e03e4aa67257df7a2eca77454309789d","0x8":"0xbe5deac45dd1ca4ee18dc2d585d84d3d3cb82b0d","0x9":"0x0","0xa":"0x55","0xb":"0x2603903cfd8895fdde3da4d607d44203e86098073e351022fd12745d3436e93a","0xeb5be412f275a18f6e4d622aee4ff40b21467c926224771b782d4c095d1444b":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x162b27a30e878e20728deaa5c9814fd57ccf962b998b8733ce65749bc61c552f":"0x58a175bebc8ec21a94ea63aa5a28743945940ee6","0x1a93463c7bbb7215968307c7cd357c2009c10df2a511dd62c1189098e4f3249b":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x415fec6a4fd7706b96d3a0a30121284bc5e2b28b978c20486c9f5e20d44fc781":"0x1","0x4dc1f0160d96279adc262db20edcc15527e32cb28eda582becc5ac0bc453be34":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x5fc73aa2ab567caef8745f0709fae506c01972ffb297bd9225bc262d6e87746f":"0x1","0x6ce1cd05966f090b8daa7b2ee7f80930bbb39d19b693045725fbae5fa44fda90":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0xa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb49":"0x1","0xc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a8":"0x526f6f74436861696e4d616e616765723a20494e53554646494349454e545f50","0xc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a9":"0x45524d495353494f4e5300000000000000000000000000000000000000000000","0xd61ba0007bb57e62613f82f528c06ba46d36349cf5be567b12f878ef04849a7d":"0x1","0xf960df71fab73e593428c10f56f55e7ea46985963177def0458b97f1afec9576":"0xcf4e755f204163e9213ba8b1305036e386579ccc70731c25c62a101197811f48"}},"0x287dee389caaa49edc112888f2bcfd927b472e25":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c80634f89059e1461002d575b5f80fd5b61004061003b366004610125565b610054565b604051901515815260200160405180910390f35b5f806100985f85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101029050565b60ff1690505f811180156100f857506100f36100b5826001610191565b85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101029050565b60ff16155b9150505b92915050565b5f828281518110610115576101156101b0565b016020015160f81c905092915050565b5f8060208385031215610136575f80fd5b823567ffffffffffffffff8082111561014d575f80fd5b818501915085601f830112610160575f80fd5b81358181111561016e575f80fd5b86602082850101111561017f575f80fd5b60209290920196919550909350505050565b808201808211156100fc57634e487b7160e01b5f52601160045260245ffd5b634e487b7160e01b5f52603260045260245ffdfea164736f6c6343000818000a","storage":{}},"0x3198fc981626687f4b5bdf0fbeabb0a5e0489c03":{"nonce":1,"balance":"0x8ac7230489e80000","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0x1","0x97":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x13cf90498be59d359caa5b6092b365feab4610605d7107d1f05f8e94ac955652":"0x1","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xc2110388dd54228ae0a834119457ede938bf0b57","0x412386de53449251cbf7ce1f4c6a038bf9c0746e62d331b08ef0c3fa7d0ab672":"0x4fbf7b2f171336958be5d15ff762a5cff5363568","0x60793a5062d506d35cc8f1beda67ee5028c16bfcd9c923d5bfc439c04bd929b1":"0x6ac8f19d1e0f81147cdf2a1e53cb1f4e18417204","0x75df8b43665bf2e4996a686913c4c278ca7aed85444740ca40355b1c9a94b504":"0x1","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xf851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004":"0xc965345edac823d56812cd20a10316233916a605"}},"0x39a27956b78d00a4e00ea8833ff0947410a2933f":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xc9":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0xca":"0x4a3c194eb88966178bfdd81744dddafed611b830","0xcb":"0x4872cc1be60a9db9c880a0a437da7a6af134f08f","0xcc":"0xf8c26340c1eaea6c7ff1760b25005e1306953572","0xce":"0xce4bb7dc1eb9dce75743de6a4b48534fd427ef51","0xc6892776bb3da1e1199a03e0d3131aea089754b59c557b750c478ebc85ccaa":"0x6e66740000000000000000000000000000000000000000000000000000000006","0x6cb37a6d512a1e227e627eddc133023e6d00bfedff31a600abb75aa93e9a4a0":"0x6b7265737573000000000000000000000000000000000000000000000000000c","0x8e966fe8b9b43d48017ba1eb562ced91049de778396aaa438773698b3fa8fb6":"0x0","0x94a32b1c7b189ce7293f7ae444cdcab6800d858454022d15355d5ecc5b32b26":"0x0","0xa4b2d73a9f36ca5eed107f7c3d2ba877fb7537d447256726bcde9bac9e9aaee":"0x0","0xe0e3ab102c26f13da20123aa517b31e99cf65b7b720ba0dd7138012fd23eff2":"0x0","0x1203b5e51c7d5be6da42b83f22878d3583e53123857d27fc3cff3df46fb9126c":"0x0","0x13477730039a04f4290adf0e48e98b233579c040281545e4446ce662ba56a9be":"0x7800000000000000000000000000000000000000000000000000000000000002","0x1e06d49ce7b00846691778f302e94a3ac9c2633d745ebe73d68353c941e68dee":"0x626974636f696e0000000000000000000000000000000000000000000000000e","0x1e99199375610ffe00d28ee5827c616cf6469be3de2a2f738d955eb6b62127e8":"0x1","0x21e80eded1b2e1c5d976c85e89dde60bd4e99a8d66346af0e359ac854bceba44":"0x0","0x254d9ade81439f29723741d6ff407eab1fe03caffb042bd85e53955e41fb9792":"0x616c74696d697374000000000000000000000000000000000000000000000010","0x269db12b2cd2aeb7d5f52eda16edb1d211ccbea12da1ebfa60ed5f8f396c1d04":"0x0","0x2a3f03435eedee01de7e1c4386b04ca8469edd8df00408cd6d2b058bce1cecfa":"0x0","0x323a3cb169499006d6635c58232c8c58e23c20bf9e1d309d6b3bc6fb2c7a093d":"0x0","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x229c56b7805ab5935a883207f6a6bd5847e65aee","0x37aac864d4715a975bd45cae6be99de9f7968cf995917cc7f8192940fb62acbf":"0x0","0x3f69f26894a7ae0f7a7aa6c2d77935589dabbff6435aee960da15064dea7cd59":"0x64616f0000000000000000000000000000000000000000000000000000000006","0x467a68fda3230ce33f64703ebdbd91caccf235403282ae9fe390675ef39e9c94":"0x0","0x50ae8c017c4c1fddbe9509bd2b916f5dd9da11ddb639f2a4230322f49a41ac87":"0x1","0x5496787fc1ebdfeba375028c1865f13fbb1d63c0caa356ccc1b29a80f3ebd622":"0x0","0x576dd8d1a7b74aba0a99a213f50d74aa642a2c80bd5a854b24aac7568afea0f7":"0x626974676574000000000000000000000000000000000000000000000000000c","0x5b54338c052ce22ec334b6c5a19c4b122701c5fd4d3a2a5f5890f57050e0aafa":"0x626c6f636b636861696e00000000000000000000000000000000000000000014","0x5d9de30f0e5e02628e726fd23e310ee9e64489866fa6959825148a25d40e4c83":"0x0","0x5e2d99ab4a1a153039a4b2e068d64802da8735071a2d018ee9d04297945bed00":"0x0","0x670006c4193123492fb25db465ed52e62aff2f076289f4f1a5f167237f5e579d":"0x6d616e676100000000000000000000000000000000000000000000000000000a","0x6deac161c541001c0d79afaf7b809418785fa5ca6533d86bcf312e7213ee08fc":"0x0","0x6eaa0db35203bc0d58aff54ca630dd125b27758aa6204f7a11c0617f7c2fa776":"0x706f670000000000000000000000000000000000000000000000000000000006","0x732abe4661f55132b7f119cab9a9985be6630299dfc92870cc910f147795bc44":"0x0","0x743eb517f46c12bb593097087a972028308ce2e819a76cfb5488751f9d1ca34a":"0x7265616c6d00000000000000000000000000000000000000000000000000000a","0x750dfb39c9afc828c341e1a8e8fdca0b3914baf43303e1ef21fbfe8ec8ee016a":"0x0","0x7cbf647b96a1d1a533ea4bc3a4a8a78f166bd91e6a96afb12f063fef0e9cb960":"0x0","0x7dc972254779cfb51850c0eaccfcb71207822b3c10d4840567bec3dfbf0dff13":"0x636f6d0000000000000000000000000000000000000000000000000000000006","0x7dfa160584f41570c33e8e6c42c5314a7b45ddc162f99fd101ccc10c7b5b3dd3":"0x77616c6c6574000000000000000000000000000000000000000000000000000c","0x868a5f38a2d46181ffad442d7bc5b337b3c349a58e4979f2901786c6123b996c":"0x6b6c65766572000000000000000000000000000000000000000000000000000c","0x87b2c647061aef22ef1aba96c67f440d471dfac27e9873ff4a03793b402d32ee":"0x706f6c79676f6e0000000000000000000000000000000000000000000000000e","0x893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e":"0x7c3c91245769c8b7450ad522792dec4bd4bf797f","0x91e744007b4b3621bec7c01ea851c3f48cf196b9cc6c566a48cec8c5faac6e62":"0x0","0x92c5a28dd4caaa50e0a8370243a5c600f64349e8b03604b403cbe111b50f1f7b":"0x3838380000000000000000000000000000000000000000000000000000000006","0x947936973a3a21b10c8980e1a8939a55c7339d302161884a3de05cf090e812f0":"0x1","0x9535d3ea47c5e1398d3405b4fadc73de6b1b1e6a66f674a8886ab7a6c873a390":"0x63727970746f000000000000000000000000000000000000000000000000000c","0x9956a4e94676c45844be3667f17e077c7cb53aa4e87e5a71d65e56b291232715":"0x676f000000000000000000000000000000000000000000000000000000000004","0x9c6ba1ddff1ffbc14dcdc1f97db867554a42a39e00e892c7e882dbb3dca89ebf":"0x6869000000000000000000000000000000000000000000000000000000000004","0x9f836a0f81651f597cee678b440ba8c853c633e6654809efb83d4b22aff06fb2":"0x616e696d6500000000000000000000000000000000000000000000000000000a","0x9fecf1e12f4b8ec337da992721a0f27526ddbd6be1e77885ab963c09afcf0fc1":"0x0","0xab129a0f8c6cf8d160116a28abc7369c2f8a098fc023f00f07dc3e1d5798e47a":"0x0","0xb04c0eb6f034d9a3179a4e6f953bdf8afc78ba2cdcfbc775076e1c2a0bb67818":"0x0","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xbe51b53bc2060a7a6419622b5a9adc00b50a57e6aa741882f2f60f95d4580078":"0x636c617900000000000000000000000000000000000000000000000000000008","0xbf350522e335b8ab3da1d099c93cdc09179f1e15ea6aa1acfaa4afb1ef87eabf":"0x756e73746f707061626c65000000000000000000000000000000000000000016","0xcbf7a3d53e0851ac15a415b99c2ba95a2497dd9dd44068ac261bcbdafdfe8472":"0x707564677900000000000000000000000000000000000000000000000000000a","0xcf4411216f3fdf787d1cfe037bbcfa0d5293d83a8082f8e4141266399e2a784b":"0x61757374696e000000000000000000000000000000000000000000000000000c","0xcfdbac664139565f92cce149a345e5f19355d25b3eb8a70c549d5da3283a15b8":"0x7a696c0000000000000000000000000000000000000000000000000000000006","0xcfeb64c30a93ecd7224f854b09be57bb6b3962e739fa8e3ea3a1851502474c07":"0x1","0xe03c9c593ce8661bd39f77653f7ca6c43f093aa7f3b95890f309f67b57f39e74":"0x0","0xe50c62c16d12655dfdbd61c232155e5c3a1cf61977d2d8e7449cb88611b73832":"0x0","0xeeb0b17d77f2c9069ad443f3927c0802d98d5553e52b17c985d45d4a10b79566":"0x62696e616e636575730000000000000000000000000000000000000000000012","0xf562ef0db022f25a957fb6e49aa07004f14a50ed5b23279e9ac25b4632f7bf1c":"0x0","0xf6776268d6c5847a771099280c742d684a4b22bac609ba615de51f7f893ff2bc":"0x0"}},"0x3f1194b9019002863ad0dbbe295294547c0d36a9":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100b1575f3560e01c80635b0fc9c31161006e5780635b0fc9c3146101a55780635ef2c7f0146101b8578063a22cb465146101cb578063cf408823146101de578063e985e9c5146101f1578063f79fe5381461023c575f80fd5b80630178b8bf146100b557806302571be3146100fd57806306ab59231461011057806314ab90381461013157806316a25cbd146101465780631896f70a14610192575b5f80fd5b6100e06100c3366004610785565b5f908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100e061010b366004610785565b610266565b61012361011e3660046107b7565b610292565b6040519081526020016100f4565b61014461013f366004610800565b61035f565b005b610179610154366004610785565b5f90815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100f4565b6101446101a036600461082a565b61042e565b6101446101b336600461082a565b6104ef565b6101446101c636600461084b565b61058e565b6101446101d936600461089e565b6105af565b6101446101ec3660046108d7565b61061a565b61022c6101ff366004610921565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205460ff1690565b60405190151581526020016100f4565b61022c61024a366004610785565b5f908152602081905260409020546001600160a01b0316151590565b5f818152602081905260408120546001600160a01b031630810361028c57505f92915050565b92915050565b5f8381526020819052604081205484906001600160a01b0316338114806102db57506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b6102e3575f80fd5b604080516020808201899052818301889052825180830384018152606090920190925280519101206103158186610635565b6040516001600160a01b0386168152869088907fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829060200160405180910390a39695505050505050565b5f8281526020819052604090205482906001600160a01b0316338114806103a857506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b6103b0575f80fd5b60405167ffffffffffffffff8416815284907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a250505f91825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b5f8281526020819052604090205482906001600160a01b03163381148061047757506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b61047f575f80fd5b6040516001600160a01b038416815284907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a250505f9182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b5f8281526020819052604090205482906001600160a01b03163381148061053857506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b610540575f80fd5b61054a8484610635565b6040516001600160a01b038416815284907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a250505050565b5f61059a868686610292565b90506105a7818484610662565b505050505050565b335f8181526001602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b61062484846104ef565b61062f848383610662565b50505050565b5f9182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b5f838152602081905260409020600101546001600160a01b038381169116146106e6575f838152602081815260409182902060010180546001600160a01b0319166001600160a01b038616908117909155915191825284917f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a0910160405180910390a25b5f8381526020819052604090206001015467ffffffffffffffff828116600160a01b9092041614610780575f8381526020818152604091829020600101805467ffffffffffffffff60a01b1916600160a01b67ffffffffffffffff861690810291909117909155915191825284917f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa68910160405180910390a25b505050565b5f60208284031215610795575f80fd5b5035919050565b80356001600160a01b03811681146107b2575f80fd5b919050565b5f805f606084860312156107c9575f80fd5b83359250602084013591506107e06040850161079c565b90509250925092565b803567ffffffffffffffff811681146107b2575f80fd5b5f8060408385031215610811575f80fd5b82359150610821602084016107e9565b90509250929050565b5f806040838503121561083b575f80fd5b823591506108216020840161079c565b5f805f805f60a0868803121561085f575f80fd5b85359450602086013593506108766040870161079c565b92506108846060870161079c565b9150610892608087016107e9565b90509295509295909350565b5f80604083850312156108af575f80fd5b6108b88361079c565b9150602083013580151581146108cc575f80fd5b809150509250929050565b5f805f80608085870312156108ea575f80fd5b843593506108fa6020860161079c565b92506109086040860161079c565b9150610916606086016107e9565b905092959194509250565b5f8060408385031215610932575f80fd5b61093b8361079c565b91506108216020840161079c56fea164736f6c6343000818000a","storage":{"0xdd4f47a3b6f87903b728feed7a23273bd8de58e4fa257d37a74a5881e5d92ff":"0xf670681605efc4efc804f5a9b97ee89520473d56","0x14ce109f1cffdc11aa7355660be720f902291be09fb159b4c578958cd0f533bc":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x14ce109f1cffdc11aa7355660be720f902291be09fb159b4c578958cd0f533bd":"0x0","0x1e2c8528d7e8e90443ad0a4e37b6f2b1daed719a574ce3a0c347063e8d839d50":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1e2c8528d7e8e90443ad0a4e37b6f2b1daed719a574ce3a0c347063e8d839d51":"0x0","0x2fb4213711fd985fc1fb1ea2bfa660b0b37fd50c6c74ab531d9b54b29dd5177e":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2fb4213711fd985fc1fb1ea2bfa660b0b37fd50c6c74ab531d9b54b29dd5177f":"0x0","0x859ecef2e168dc10231b000bd53493b42bc9d944cac29d94582c1e1d43592131":"0xc965345edac823d56812cd20a10316233916a605","0x8878c6daefcfc78c7f181d00d719b4a0612dd3e65cafeb72507d15c036a9f690":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0xe4fdf45c2f8d198854f8823809c7a988eeaaa493","0xfb5568c6845cf0d5915af088a5d8ba90a5ff735e102c9a79609ef7d043f1108c":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xfb5568c6845cf0d5915af088a5d8ba90a5ff735e102c9a79609ef7d043f1108d":"0x0"}},"0x4872cc1be60a9db9c880a0a437da7a6af134f08f":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100935760003560e01c80637362d9c8116100665780637362d9c8146101285780637b1039991461014e57806399e0dd7c14610172578063bb5f747b146101e2578063d6cd94731461020857610093565b806310154bad14610098578063291d9549146100c05780633af32abf146100e65780634c5a628c14610120575b600080fd5b6100be600480360360208110156100ae57600080fd5b50356001600160a01b0316610210565b005b6100be600480360360208110156100d657600080fd5b50356001600160a01b0316610260565b61010c600480360360208110156100fc57600080fd5b50356001600160a01b03166102ad565b604080519115158252519081900360200190f35b6100be6102c6565b6100be6004803603602081101561013e57600080fd5b50356001600160a01b03166102d1565b61015661031e565b604080516001600160a01b039092168252519081900360200190f35b6100be6004803603602081101561018857600080fd5b8101906020810181356401000000008111156101a357600080fd5b8201836020820111156101b557600080fd5b803590602001918460018302840111640100000000831117156101d757600080fd5b50909250905061032d565b61010c600480360360208110156101f857600080fd5b50356001600160a01b0316610404565b6100be610416565b61021933610404565b6102545760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d8161041f565b50565b61026933610404565b6102a45760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d81610467565b60006102c060018363ffffffff6104af16565b92915050565b6102cf33610516565b565b6102da33610404565b6103155760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d8161055e565b6002546001600160a01b031690565b610336336102ad565b6103715760405162461bcd60e51b815260040180806020018281038252603a815260200180610712603a913960400191505060405180910390fd5b6002546040516369426cbd60e11b8152602060048201908152602482018490526001600160a01b039092169163d284d97a91859185918190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b1580156103e857600080fd5b505af11580156103fc573d6000803e3d6000fd5b505050505050565b60006102c0818363ffffffff6104af16565b6102cf33610467565b61043060018263ffffffff6105a616565b6040516001600160a01b038216907fee1504a83b6d4a361f4c1dc78ab59bfa30d6a3b6612c403e86bb01ef2984295f90600090a250565b61047860018263ffffffff61062716565b6040516001600160a01b038216907f270d9b30cf5b0793bbfd54c9d5b94aeb49462b8148399000265144a8722da6b690600090a250565b60006001600160a01b0382166104f65760405162461bcd60e51b81526004018080602001828103825260228152602001806106b06022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b61052760008263ffffffff61062716565b6040516001600160a01b038216907f0a8eb35e5ca14b3d6f28e4abf2f128dbab231a58b56e89beb5d636115001e16590600090a250565b61056f60008263ffffffff6105a616565b6040516001600160a01b038216907f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129990600090a250565b6105b082826104af565b15610602576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b61063182826104af565b61066c5760405162461bcd60e51b815260040180806020018281038252602181526020018061068f6021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f206164647265737357686974656c69737441646d696e526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c69737441646d696e20726f6c6557686974656c6973746564526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c697374656420726f6c65a265627a7a72315820debca60946c0819dc5b5c2756c5c1dd8dd8a46f2429fa8a43a4f4362af3030c164736f6c634300050c0032","storage":{"0x2":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x5ac40fcee41fb0272a935f6e51e963102fba5db6f20e897e9361f0347eb2cae6":"0x1","0xdc4aeb95a779c8b92b845e3a94044db8ff2e43acc37da18c4b35a6bbad7c122f":"0x1"}},"0x49da8861c65460639925febe1fb4b5b59b443082":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f7e83aee1461002d575b5f80fd5b61004061003b3660046101ac565b610054565b604051901515815260200160405180910390f35b5f602082146100a95760405162461bcd60e51b815260206004820152601a60248201527f496e76616c6964207368613235362068617368206c656e677468000000000000604482015260640160405180910390fd5b6100eb5f84848080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101459050565b600286866040516100fd929190610213565b602060405180830381855afa158015610118573d5f803e3d5ffd5b5050506040513d601f19601f8201168201806040525081019061013b9190610222565b1495945050505050565b81515f90610154836020610239565b111561015e575f80fd5b50016020015190565b5f8083601f840112610177575f80fd5b50813567ffffffffffffffff81111561018e575f80fd5b6020830191508360208285010111156101a5575f80fd5b9250929050565b5f805f80604085870312156101bf575f80fd5b843567ffffffffffffffff808211156101d6575f80fd5b6101e288838901610167565b909650945060208701359150808211156101fa575f80fd5b5061020787828801610167565b95989497509550505050565b818382375f9101908152919050565b5f60208284031215610232575f80fd5b5051919050565b8082018082111561025857634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x4a3c194eb88966178bfdd81744dddafed611b830":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061009e5760003560e01c806398650275116100665780639865027514610305578063aa271e1a1461030d578063b2da297914610347578063be362e2e146103c5578063c36c2125146104fe5761009e565b80634c0b0ed2146100a35780637b103999146101595780637caf3ad81461017d5780638ad364f814610258578063983b2d56146102df575b600080fd5b610157600480360360408110156100b957600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156100e357600080fd5b8201836020820111156100f557600080fd5b803590602001918460018302840111600160201b8311171561011657600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506105bd945050505050565b005b61016161074c565b604080516001600160a01b039092168252519081900360200190f35b6101576004803603608081101561019357600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156101bd57600080fd5b8201836020820111156101cf57600080fd5b803590602001918460018302840111600160201b831117156101f057600080fd5b919390926001600160a01b0383351692604081019060200135600160201b81111561021a57600080fd5b82018360208201111561022c57600080fd5b803590602001918460018302840111600160201b8311171561024d57600080fd5b50909250905061075b565b6101576004803603606081101561026e57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561029857600080fd5b8201836020820111156102aa57600080fd5b803590602001918460018302840111600160201b831117156102cb57600080fd5b9193509150356001600160a01b0316610957565b610157600480360360208110156102f557600080fd5b50356001600160a01b0316610b2b565b610157610b7b565b6103336004803603602081101561032357600080fd5b50356001600160a01b0316610b86565b604080519115158252519081900360200190f35b6101576004803603604081101561035d57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561038757600080fd5b82018360208201111561039957600080fd5b803590602001918460018302840111600160201b831117156103ba57600080fd5b509092509050610b9e565b610157600480360360608110156103db57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561040557600080fd5b82018360208201111561041757600080fd5b803590602001918460018302840111600160201b8311171561043857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b81111561048a57600080fd5b82018360208201111561049c57600080fd5b803590602001918460018302840111600160201b831117156104bd57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610bf1945050505050565b6101576004803603606081101561051457600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561053e57600080fd5b82018360208201111561055057600080fd5b803590602001918460018302840111600160201b8311171561057157600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550505090356001600160a01b03169150610dec9050565b6105c633610b86565b6106015760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b039092169163b5466669918591849163ebf0c717916004808301926020929190829003018186803b15801561064f57600080fd5b505afa158015610663573d6000803e3d6000fd5b505050506040513d602081101561067957600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052606060448301908152875160648401528751889360840190602085019080838360005b838110156106e25781810151838201526020016106ca565b50505050905090810190601f16801561070f5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15801561073057600080fd5b505af1158015610744573d6000803e3d6000fd5b505050505050565b6001546001600160a01b031690565b6107cf8686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f89018190048102820181019092528781529250879150869081908401838280828437600092019190915250610bf192505050565b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691632525d06a91869184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b15801561082557600080fd5b505afa158015610839573d6000803e3d6000fd5b505050506040513d602081101561084f57600080fd5b5051604080516001600160e01b031960e085901b1681526004810183815260248201928352604482018d90528d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b1580156108bd57600080fd5b505afa1580156108d1573d6000803e3d6000fd5b505050506040513d60208110156108e757600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b15801561093757600080fd5b505af115801561094b573d6000803e3d6000fd5b50505050505050505050565b6109a58484848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250610bf1915050565b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691632525d06a91849184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b1580156109fb57600080fd5b505afa158015610a0f573d6000803e3d6000fd5b505050506040513d6020811015610a2557600080fd5b5051604080516001600160e01b031960e085901b1681526004810183815260248201928352604482018b90528b928b92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b158015610a9357600080fd5b505afa158015610aa7573d6000803e3d6000fd5b505050506040513d6020811015610abd57600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b158015610b0d57600080fd5b505af1158015610b21573d6000803e3d6000fd5b5050505050505050565b610b3433610b86565b610b6f5760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b610b7881611115565b50565b610b843361115d565b565b6000610b98818363ffffffff6111a516565b92915050565b610bec8383838080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250610bf1915050565b505050565b610bfa33610b86565b610c355760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691630467e014918691849163ebf0c717916004808301926020929190829003018186803b158015610c8357600080fd5b505afa158015610c97573d6000803e3d6000fd5b505050506040513d6020811015610cad57600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052608060448301908152885160848401528851899389939291606482019160a40190602087019080838360005b83811015610d1f578181015183820152602001610d07565b50505050905090810190601f168015610d4c5780820380516001836020036101000a031916815260200191505b50838103825284518152845160209182019186019080838360005b83811015610d7f578181015183820152602001610d67565b50505050905090810190601f168015610dac5780820380516001836020036101000a031916815260200191505b509650505050505050600060405180830381600087803b158015610dcf57600080fd5b505af1158015610de3573d6000803e3d6000fd5b50505050505050565b610df533610b86565b610e305760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b039092169163b5466669918691849163ebf0c717916004808301926020929190829003018186803b158015610e7e57600080fd5b505afa158015610e92573d6000803e3d6000fd5b505050506040513d6020811015610ea857600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052606060448301908152885160648401528851899360840190602085019080838360005b83811015610f11578181015183820152602001610ef9565b50505050905090810190601f168015610f3e5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015610f5f57600080fd5b505af1158015610f73573d6000803e3d6000fd5b50506001546040805163ebf0c71760e01b815290516001600160a01b039092169350632525d06a9250849184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b158015610fcd57600080fd5b505afa158015610fe1573d6000803e3d6000fd5b505050506040513d6020811015610ff757600080fd5b5051604080516001600160e01b031960e085901b16815260048101838152602482019283528a5160448301528a518b93919260640190602085019080838360005b83811015611050578181015183820152602001611038565b50505050905090810190601f16801561107d5780820380516001836020036101000a031916815260200191505b50935050505060206040518083038186803b15801561109b57600080fd5b505afa1580156110af573d6000803e3d6000fd5b505050506040513d60208110156110c557600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b158015610dcf57600080fd5b61112660008263ffffffff61120c16565b6040516001600160a01b038216907f6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f690600090a250565b61116e60008263ffffffff61128d16565b6040516001600160a01b038216907fe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb6669290600090a250565b60006001600160a01b0382166111ec5760405162461bcd60e51b81526004018080602001828103825260228152602001806113466022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b61121682826111a5565b15611268576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b61129782826111a5565b6112d25760405162461bcd60e51b81526004018080602001828103825260218152602001806113256021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe4d696e746572526f6c653a2063616c6c657220646f6573206e6f74206861766520746865204d696e74657220726f6c65526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f2061646472657373a265627a7a72315820c058d70355f7d37ff6b3b61cd850cc4a41893e30048389698c062148bf3d2ff464736f6c634300050c0032","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x789b49055833748af4eaa9affbcd84118ce8770f7e4385b5a3f428626b1f0aff":"0x1","0xdc4aeb95a779c8b92b845e3a94044db8ff2e43acc37da18c4b35a6bbad7c122f":"0x1"}},"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061007b5760003560e01c80639623609d1161004e5780639623609d1461011157806399a88ec414610124578063f2fde38b14610144578063f3b7dead1461016457600080fd5b8063204e1c7a14610080578063715018a6146100bc5780637eff275e146100d35780638da5cb5b146100f3575b600080fd5b34801561008c57600080fd5b506100a061009b366004610499565b610184565b6040516001600160a01b03909116815260200160405180910390f35b3480156100c857600080fd5b506100d1610215565b005b3480156100df57600080fd5b506100d16100ee3660046104bd565b610229565b3480156100ff57600080fd5b506000546001600160a01b03166100a0565b6100d161011f36600461050c565b610291565b34801561013057600080fd5b506100d161013f3660046104bd565b610300565b34801561015057600080fd5b506100d161015f366004610499565b610336565b34801561017057600080fd5b506100a061017f366004610499565b6103b4565b6000806000836001600160a01b03166040516101aa90635c60da1b60e01b815260040190565b600060405180830381855afa9150503d80600081146101e5576040519150601f19603f3d011682016040523d82523d6000602084013e6101ea565b606091505b5091509150816101f957600080fd5b8080602001905181019061020d91906105e2565b949350505050565b61021d6103da565b6102276000610434565b565b6102316103da565b6040516308f2839760e41b81526001600160a01b038281166004830152831690638f283970906024015b600060405180830381600087803b15801561027557600080fd5b505af1158015610289573d6000803e3d6000fd5b505050505050565b6102996103da565b60405163278f794360e11b81526001600160a01b03841690634f1ef2869034906102c990869086906004016105ff565b6000604051808303818588803b1580156102e257600080fd5b505af11580156102f6573d6000803e3d6000fd5b5050505050505050565b6103086103da565b604051631b2ce7f360e11b81526001600160a01b038281166004830152831690633659cfe69060240161025b565b61033e6103da565b6001600160a01b0381166103a85760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b6103b181610434565b50565b6000806000836001600160a01b03166040516101aa906303e1469160e61b815260040190565b6000546001600160a01b031633146102275760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161039f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146103b157600080fd5b6000602082840312156104ab57600080fd5b81356104b681610484565b9392505050565b600080604083850312156104d057600080fd5b82356104db81610484565b915060208301356104eb81610484565b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561052157600080fd5b833561052c81610484565b9250602084013561053c81610484565b9150604084013567ffffffffffffffff8082111561055957600080fd5b818601915086601f83011261056d57600080fd5b81358181111561057f5761057f6104f6565b604051601f8201601f19908116603f011681019083821181831017156105a7576105a76104f6565b816040528281528960208487010111156105c057600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000602082840312156105f457600080fd5b81516104b681610484565b60018060a01b038316815260006020604081840152835180604085015260005b8181101561063b5785810183015185820160600152820161061f565b8181111561064d576000606083870101525b50601f01601f19169290920160600194935050505056fea26469706673582212207ad53e1008cce369999f6b5f2f77109510b404ff1de9b47b639981fd68e6239264736f6c63430008090033","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x4e59b44847b379578588920ca78fbf26c0b4956c":{"nonce":0,"balance":"0x0","code":"0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe03601600081602082378035828234f58015156039578182fd5b8082525050506014600cf3","storage":{}},"0x4eb9de1fc0d800e941f326d6699e9e11969557ea":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063100cdd911461002d575b5f80fd5b61004061003b3660046102cd565b610042565b005b5f5b818110156101b8575f7f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e28484848181106100805761008061033c565b905060200201356040516020016100a1929190918252602082015260400190565b60408051808303601f190181529082905280516020909101206331a9108f60e11b82526004820181905291507f000000000000000000000000107733fed96c4cd390c944a31f5425a7fb98ae5e6001600160a01b0316906323b872dd908290636352211e90602401602060405180830381865afa158015610124573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101489190610350565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015261dead6024820152604481018490526064015f604051808303815f87803b158015610195575f80fd5b505af11580156101a7573d5f803e3d5ffd5b505060019093019250610044915050565b5080156102c9577f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e282826101ed60018261037d565b8181106101fc576101fc61033c565b9050602002013560405160200161021d929190918252602082015260400190565b604051602081830303815290604052805190602001205f1c7f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e283835f8181106102685761026861033c565b90506020020135604051602001610289929190918252602082015260400190565b60408051601f19818403018152908290528051602090910120907fdf423376f9b0ab363b1b4d6f0b4cb6821921ec30f491555a97236a8a38ce095a905f90a35b5050565b5f80602083850312156102de575f80fd5b823567ffffffffffffffff808211156102f5575f80fd5b818501915085601f830112610308575f80fd5b813581811115610316575f80fd5b8660208260051b850101111561032a575f80fd5b60209290920196919550909350505050565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215610360575f80fd5b81516001600160a01b0381168114610376575f80fd5b9392505050565b8181038181111561039c57634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x4fbf7b2f171336958be5d15ff762a5cff5363568":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061011b575f3560e01c80638d839ffe1161009d578063aeb8ce9b11610062578063aeb8ce9b14610356578063ce1e09c014610375578063d3419bf3146103a8578063f14fcbc8146103db578063f2fde38b146103fa575f80fd5b80638d839ffe146102a25780638da5cb5b146102d55780639791c097146102f1578063a8e5fbc014610310578063acf1a84114610343575f80fd5b806374694a2b116100e357806374694a2b146101c957806380869853146101dc578063839df9451461022757806383e7f6ff146102525780638a95b09f1461028c575f80fd5b806301ffc9a71461011f5780633ccfd60b146101535780635d3590d51461016957806365a69dcf14610188578063715018a6146101b5575b5f80fd5b34801561012a575f80fd5b5061013e610139366004611145565b610419565b60405190151581526020015b60405180910390f35b34801561015e575f80fd5b5061016761044f565b005b348015610174575f80fd5b50610167610183366004611187565b610489565b348015610193575f80fd5b506101a76101a23660046112e4565b610507565b60405190815260200161014a565b3480156101c0575f80fd5b5061016761058b565b6101676101d73660046113db565b61059e565b3480156101e7575f80fd5b5061020f7f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5681565b6040516001600160a01b03909116815260200161014a565b348015610232575f80fd5b506101a761024136600461149d565b60016020525f908152604090205481565b34801561025d575f80fd5b5061027161026c3660046114b4565b610894565b6040805182518152602092830151928101929092520161014a565b348015610297575f80fd5b506101a76224ea0081565b3480156102ad575f80fd5b506101a77f000000000000000000000000000000000000000000000000000000000000025881565b3480156102e0575f80fd5b505f546001600160a01b031661020f565b3480156102fc575f80fd5b5061013e61030b3660046114f6565b6109c9565b34801561031b575f80fd5b5061020f7f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e1841720481565b610167610351366004611528565b6109dd565b348015610361575f80fd5b5061013e6103703660046114f6565b610b7b565b348015610380575f80fd5b506101a77f000000000000000000000000000000000000000000000000000000000001518081565b3480156103b3575f80fd5b5061020f7f000000000000000000000000ec71e4e674fe0f432693dc2b935c34bd2774c00381565b3480156103e6575f80fd5b506101676103f536600461149d565b610c22565b348015610405575f80fd5b50610167610414366004611570565b610c95565b5f6001600160e01b031982166301ffc9a760e01b148061044957506001600160e01b0319821663612e8c0960e01b145b92915050565b5f80546040516001600160a01b03909116914780156108fc02929091818181858888f19350505050158015610486573d5f803e3d5ffd5b50565b610491610d0b565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af11580156104dd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105019190611589565b50505050565b885160208a01205f90841580159061052657506001600160a01b038716155b15610544576040516334fd817160e21b815260040160405180910390fd5b808a8a8a8a8a8a8a8a6040516020016105659998979695949392919061165e565b604051602081830303815290604052805190602001209150509998505050505050505050565b610593610d0b565b61059c5f610d64565b565b5f6105df8b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c9250610894915050565b602081015181519192506105f2916116d5565b3410156106125760405163044044a560e21b815260040160405180910390fd5b6106b38b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f82011690508083019250505050505050896106ae8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f820116905080830192505050505050508d8d8d8d8d8d8d8d610507565b610db3565b604051635200a4c160e11b81525f906001600160a01b037f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e18417204169063a40149829061070b908f908f908f908f908e908b906004016116e8565b6020604051808303815f875af1158015610727573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061074b9190611732565b9050841561077657610776878d8d604051610767929190611749565b60405180910390208888610ece565b83156107be576107be8c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508b9250339150610f939050565b896001600160a01b03168c8c6040516107d8929190611749565b60405180910390207f69e37f151eb98a09618ddaa80c8cfaf1ce5996867c489f45b555b412271ebf278e8e865f015187602001518760405161081e959493929190611758565b60405180910390a36020820151825161083791906116d5565b341115610886576020820151825133916108fc9161085591906116d5565b61085f9034611788565b6040518115909202915f818181858888f19350505050158015610884573d5f803e3d5ffd5b505b505050505050505050505050565b604080518082019091525f808252602082015282516020840120604051636b727d4360e11b8152600481018290527f000000000000000000000000ec71e4e674fe0f432693dc2b935c34bd2774c0036001600160a01b03908116916350e9a7159187917f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063d6e4fa8690602401602060405180830381865afa158015610940573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109649190611732565b866040518463ffffffff1660e01b8152600401610983939291906117e8565b6040805180830381865afa15801561099d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109c1919061180c565b949350505050565b5f60036109d583611044565b101592915050565b5f83836040516109ee929190611749565b604080519182900382206020601f8701819004810284018101909252858352925082915f91610a39919088908890819084018382808284375f92019190915250889250610894915050565b8051909150341015610a5e5760405163044044a560e21b815260040160405180910390fd5b60405163c475abff60e01b815260048101839052602481018590525f907f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b03169063c475abff906044016020604051808303815f875af1158015610acb573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610aef9190611732565b8251909150341115610b3457815133906108fc90610b0d9034611788565b6040518115909202915f818181858888f19350505050158015610b32573d5f803e3d5ffd5b505b837f3da24c024582931cfaf8267d8ed24d13a82a8068d5bd337d30ec45cea4e506ae88883485604051610b6a9493929190611859565b60405180910390a250505050505050565b805160208201205f90610b8d836109c9565b8015610c1b57506040516312dc929d60e31b8152600481018290527f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b0316906396e494e890602401602060405180830381865afa158015610bf7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c1b9190611589565b9392505050565b5f818152600160205260409020544290610c5d907f0000000000000000000000000000000000000000000000000000000000015180906116d5565b10610c8357604051630a059d7160e01b8152600481018290526024015b60405180910390fd5b5f908152600160205260409020429055565b610c9d610d0b565b6001600160a01b038116610d025760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610c7a565b61048681610d64565b5f546001600160a01b0316331461059c5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610c7a565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f818152600160205260409020544290610dee907f0000000000000000000000000000000000000000000000000000000000000258906116d5565b1115610e1057604051635320bcf960e01b815260048101829052602401610c7a565b5f818152600160205260409020544290610e4b907f0000000000000000000000000000000000000000000000000000000000015180906116d5565b11610e6c5760405163cb7690d760e01b815260048101829052602401610c7a565b610e7583610b7b565b610e9457826040516308eee0fd60e31b8152600401610c7a919061187f565b5f818152600160205260408120556224ea00821015610ec957604051639a71997b60e01b815260048101839052602401610c7a565b505050565b604080517f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae6020808301919091528183018690528251808303840181526060830193849052805191012063e32954eb60e01b90925285906001600160a01b0382169063e32954eb90610f4890859088908890606401611891565b5f604051808303815f875af1158015610f63573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052610f8a91908101906118b3565b50505050505050565b7f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d566001600160a01b0316637a806d6b33838587604051602001610fd691906119a7565b6040516020818303038152906040526040518563ffffffff1660e01b815260040161100494939291906119ce565b6020604051808303815f875af1158015611020573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105019190611732565b80515f90819081905b8082101561113c575f85838151811061106857611068611a0b565b01602001516001600160f81b0319169050600160ff1b811015611097576110906001846116d5565b9250611129565b600760fd1b6001600160f81b0319821610156110b8576110906002846116d5565b600f60fc1b6001600160f81b0319821610156110d9576110906003846116d5565b601f60fb1b6001600160f81b0319821610156110fa576110906004846116d5565b603f60fa1b6001600160f81b03198216101561111b576110906005846116d5565b6111266006846116d5565b92505b508261113481611a1f565b93505061104d565b50909392505050565b5f60208284031215611155575f80fd5b81356001600160e01b031981168114610c1b575f80fd5b80356001600160a01b0381168114611182575f80fd5b919050565b5f805f60608486031215611199575f80fd5b6111a28461116c565b92506111b06020850161116c565b9150604084013590509250925092565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff811182821017156111fd576111fd6111c0565b604052919050565b5f67ffffffffffffffff82111561121e5761121e6111c0565b50601f01601f191660200190565b5f82601f83011261123b575f80fd5b813561124e61124982611205565b6111d4565b818152846020838601011115611262575f80fd5b816020850160208301375f918101602001919091529392505050565b5f8083601f84011261128e575f80fd5b50813567ffffffffffffffff8111156112a5575f80fd5b6020830191508360208260051b85010111156112bf575f80fd5b9250929050565b8015158114610486575f80fd5b803561ffff81168114611182575f80fd5b5f805f805f805f805f6101008a8c0312156112fd575f80fd5b893567ffffffffffffffff80821115611314575f80fd5b6113208d838e0161122c565b9a5061132e60208d0161116c565b995060408c0135985060608c0135975061134a60808d0161116c565b965060a08c013591508082111561135f575f80fd5b5061136c8c828d0161127e565b90955093505060c08a0135611380816112c6565b915061138e60e08b016112d3565b90509295985092959850929598565b5f8083601f8401126113ad575f80fd5b50813567ffffffffffffffff8111156113c4575f80fd5b6020830191508360208285010111156112bf575f80fd5b5f805f805f805f805f806101008b8d0312156113f5575f80fd5b8a3567ffffffffffffffff8082111561140c575f80fd5b6114188e838f0161139d565b909c509a508a915061142c60208e0161116c565b995060408d0135985060608d0135975061144860808e0161116c565b965060a08d013591508082111561145d575f80fd5b5061146a8d828e0161127e565b90955093505060c08b013561147e816112c6565b915061148c60e08c016112d3565b90509295989b9194979a5092959850565b5f602082840312156114ad575f80fd5b5035919050565b5f80604083850312156114c5575f80fd5b823567ffffffffffffffff8111156114db575f80fd5b6114e78582860161122c565b95602094909401359450505050565b5f60208284031215611506575f80fd5b813567ffffffffffffffff81111561151c575f80fd5b6109c18482850161122c565b5f805f6040848603121561153a575f80fd5b833567ffffffffffffffff811115611550575f80fd5b61155c8682870161139d565b909790965060209590950135949350505050565b5f60208284031215611580575f80fd5b610c1b8261116c565b5f60208284031215611599575f80fd5b8151610c1b816112c6565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b5f838385526020808601955060208560051b830101845f5b8781101561165157848303601f19018952813536889003601e19018112611609575f80fd5b8701848101903567ffffffffffffffff811115611624575f80fd5b803603821315611632575f80fd5b61163d8582846115a4565b9a86019a94505050908301906001016115e4565b5090979650505050505050565b8981526001600160a01b03898116602083015260408201899052606082018890528616608082015261010060a082018190525f9061169f83820187896115cc565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610449576104496116c1565b60a081525f6116fb60a08301888a6115a4565b6001600160a01b03968716602084015260408301959095525091909316606082015261ffff90921660809092019190915292915050565b5f60208284031215611742575f80fd5b5051919050565b818382375f9101908152919050565b608081525f61176b6080830187896115a4565b602083019590955250604081019290925260609091015292915050565b81810381811115610449576104496116c1565b5f5b838110156117b557818101518382015260200161179d565b50505f910152565b5f81518084526117d481602086016020860161179b565b601f01601f19169290920160200192915050565b606081525f6117fa60608301866117bd565b60208301949094525060400152919050565b5f6040828403121561181c575f80fd5b6040516040810181811067ffffffffffffffff8211171561183f5761183f6111c0565b604052825181526020928301519281019290925250919050565b606081525f61186c6060830186886115a4565b6020830194909452506040015292915050565b602081525f610c1b60208301846117bd565b838152604060208201525f6118aa6040830184866115cc565b95945050505050565b5f60208083850312156118c4575f80fd5b825167ffffffffffffffff808211156118db575f80fd5b818501915085601f8301126118ee575f80fd5b815181811115611900576119006111c0565b8060051b61190f8582016111d4565b9182528381018501918581019089841115611928575f80fd5b86860192505b8383101561199a57825185811115611944575f80fd5b8601603f81018b13611954575f80fd5b87810151604061196661124983611205565b8281528d82848601011115611979575f80fd5b611988838c830184870161179b565b8552505050918601919086019061192e565b9998505050505050505050565b5f82516119b881846020870161179b565b6305ccae8d60e31b920191825250600401919050565b6001600160a01b0385811682528481166020830152831660408201526080606082018190525f90611a01908301846117bd565b9695505050505050565b634e487b7160e01b5f52603260045260245ffd5b5f60018201611a3057611a306116c1565b506001019056fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x5155f5627bdf9795b3dbb8887001ada1eeba93f2":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063de8f50a11461002d575b5f80fd5b61004761003b3660046100a0565b60019695505050505050565b604051901515815260200160405180910390f35b5f8083601f84011261006b575f80fd5b50813567ffffffffffffffff811115610082575f80fd5b602083019150836020828501011115610099575f80fd5b9250929050565b5f805f805f80606087890312156100b5575f80fd5b863567ffffffffffffffff808211156100cc575f80fd5b6100d88a838b0161005b565b909850965060208901359150808211156100f0575f80fd5b6100fc8a838b0161005b565b90965094506040890135915080821115610114575f80fd5b5061012189828a0161005b565b979a969950949750929593949250505056fea164736f6c6343000818000a","storage":{}},"0x54563a9e1cd2dcbd0bca90d3cfa4a647e02c404a":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106101db575f3560e01c80638da5cb5b116100fd578063c4d66de811610092578063daea85c511610062578063daea85c51461055e578063e7acab241461057d578063f2fde38b1461059c578063ffa1ad74146105bb575f80fd5b8063c4d66de8146104e1578063d539139314610500578063d547741f14610520578063d9caed121461053f575f80fd5b8063a217fddf116100cd578063a217fddf14610452578063a3f4df7e14610465578063a4247400146104a3578063aa271e1a146104c2575f80fd5b80638da5cb5b146103d957806391d1485414610400578063983b2d561461041f578063986502751461043e575f80fd5b80635c975abb11610173578063715018a611610143578063715018a61461037f57806371e2a6571461039357806381c81d35146103b25780638456cb59146103c5575f80fd5b80635c975abb146103165780635fc1964f1461032e578063634486da1461034d5780636ccbae5f14610360575f80fd5b80633092afd5116101ae5780633092afd51461029c57806336568abe146102bb5780633f4ba83a146102da578063572b6c05146102ee575f80fd5b806301ffc9a7146101df5780631bf7e13e14610213578063248a9ca31461023f5780632f2ff15d1461027b575b5f80fd5b3480156101ea575f80fd5b506101fe6101f9366004611ee0565b6105eb565b60405190151581526020015b60405180910390f35b34801561021e575f80fd5b5061023261022d366004611f07565b610621565b60405161020a9190611fe9565b34801561024a575f80fd5b5061026d610259366004611ffb565b5f90815260fb602052604090206001015490565b60405190815260200161020a565b348015610286575f80fd5b5061029a610295366004612036565b6106ea565b005b3480156102a7575f80fd5b5061029a6102b6366004612064565b610713565b3480156102c6575f80fd5b5061029a6102d5366004612036565b610727565b3480156102e5575f80fd5b5061029a6107ba565b3480156102f9575f80fd5b506101fe610308366004612064565b6001600160a01b0316301490565b348015610321575f80fd5b5061012d5460ff166101fe565b348015610339575f80fd5b5061029a6103483660046120eb565b6107d4565b61029a61035b366004612064565b610811565b34801561036b575f80fd5b5061026d61037a366004611ffb565b6108d1565b34801561038a575f80fd5b5061029a61092a565b34801561039e575f80fd5b5061029a6103ad3660046120eb565b61093b565b61029a6103c0366004612064565b610978565b3480156103d0575f80fd5b5061029a6109f5565b3480156103e4575f80fd5b506097546040516001600160a01b03909116815260200161020a565b34801561040b575f80fd5b506101fe61041a366004612036565b610a0d565b34801561042a575f80fd5b5061029a610439366004612064565b610a37565b348015610449575f80fd5b5061029a610a48565b34801561045d575f80fd5b5061026d5f81565b348015610470575f80fd5b506102326040518060400160405280601381526020017229b2b0b837b93a10283937bc3c90213abcb2b960691b81525081565b3480156104ae575f80fd5b506101fe6104bd366004611f07565b610a61565b3480156104cd575f80fd5b506101fe6104dc366004612064565b610ab2565b3480156104ec575f80fd5b5061029a6104fb366004612064565b610aca565b34801561050b575f80fd5b5061026d5f80516020612ea783398151915281565b34801561052b575f80fd5b5061029a61053a366004612036565b610c21565b34801561054a575f80fd5b5061029a61055936600461218b565b610c45565b348015610569575f80fd5b5061029a610578366004612064565b610cf7565b348015610588575f80fd5b506101fe6105973660046121c9565b610dac565b3480156105a7575f80fd5b5061029a6105b6366004612064565b6111db565b3480156105c6575f80fd5b5061023260405180604001604052806005815260200164302e302e3160d81b81525081565b5f6001600160e01b03198216637965db0b60e01b148061061b57506301ffc9a760e01b6001600160e01b03198316145b92915050565b60605f5a9050610632858585610a61565b61064f57604051638baa579f60e01b815260040160405180910390fd5b6106df61065f6020870187612064565b3060408801358461067360608b018b61227b565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f920191909152506111f692505050565b9150505b9392505050565b5f82815260fb6020526040902060010154610704816112d4565b61070e83836112e5565b505050565b61071b61136b565b610724816113e4565b50565b61072f6113fb565b6001600160a01b0316816001600160a01b0316146107ac5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6107b68282611409565b5050565b6107c261136b565b6107ca61148d565b6107d26114d7565b565b6107dc61136b565b5f5b81518110156107b6576108098282815181106107fc576107fc6122bd565b60200260200101516113e4565b6001016107de565b61081c6104dc6113fb565b6108385760405162461bcd60e51b81526004016107a3906122d1565b6001600160a01b03811661088e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016107a3565b61089781611530565b61089f610a48565b6040516001600160a01b038216903480156108fc02915f818181858888f193505050501580156107b6573d5f803e3d5ffd5b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f90610923906060016040516020818303038152906040528051906020012090565b5492915050565b61093261136b565b6107d25f611547565b61094361136b565b5f5b81518110156107b657610970828281518110610963576109636122bd565b6020026020010151611530565b600101610945565b6109836104dc6113fb565b61099f5760405162461bcd60e51b81526004016107a3906122d1565b6001600160a01b0381166108975760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016107a3565b6109fd61136b565b610a05611598565b6107d26115df565b5f91825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610a3f61136b565b61072481611530565b6107d25f80516020612ea78339815191526102d56113fb565b5f610aaa610a6e85612306565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061161e92505050565b949350505050565b5f61061b5f80516020612ea783398151915283610a0d565b5f54610100900460ff1615808015610ae857505f54600160ff909116105b80610b015750303b158015610b0157505f5460ff166001145b610b645760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107a3565b5f805460ff191660011790558015610b85575f805461ff0019166101001790555b61015f80546001600160a01b0319166001600160a01b038416179055610ba9611759565b610bb1611786565b610bb9611786565b610bc1611786565b610bc96117ac565b610bd16117e2565b610bd9611819565b80156107b6575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b5f82815260fb6020526040902060010154610c3b816112d4565b61070e8383611409565b610c4d61136b565b600260335403610c6f5760405162461bcd60e51b81526004016107a3906123c2565b6002603355610c7c611598565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af1158015610cc8573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cec91906123f9565b505060016033555050565b610cff61136b565b600260335403610d215760405162461bcd60e51b81526004016107a3906123c2565b6002603355610d2e611598565b61015f5460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529082169063095ea7b3906044016020604051808303815f875af1158015610d7f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610da391906123f9565b50506001603355565b5f610db86104dc6113fb565b610dd45760405162461bcd60e51b81526004016107a3906122d1565b600260335403610df65760405162461bcd60e51b81526004016107a3906123c2565b6002603355610e03611598565b6001600160a01b038216610e2a576040516311d000e160e31b815260040160405180910390fd5b30610e358780612418565b610e46906040810190602001612064565b6001600160a01b031614610e6d57604051639d3c586b60e01b815260040160405180910390fd5b610e75611e67565b610e7f8780612418565b610e8d906020810190612064565b6001600160a01b03168152610ea28780612418565b610eb3906040810190602001612064565b6001600160a01b03166020820152610ecb8780612418565b610ed9906040810190612437565b808060200260200160405190810160405280939291908181526020015f905b82821015610f2457610f1560a08302860136819003810190612489565b81526020019060010190610ef8565b50505050506040820152610f388780612418565b610f46906060810190612506565b808060200260200160405190810160405280939291908181526020015f905b82821015610f9157610f8260c0830286013681900381019061254a565b81526020019060010190610f65565b50505050506060820152610fa58780612418565b610fb69060a08101906080016125e5565b81608001906004811115610fcc57610fcc6125fe565b90816004811115610fdf57610fdf6125fe565b905250610fec8780612418565b60a090810135908201526110008780612418565b60c090810135908201526110148780612418565b60e090810135908201526110288780612418565b610100908101359082015261103d8780612418565b610120908101359082015261015f54815160405163f07ec37360e01b81526001600160a01b03918216600482015291169063f07ec37390602401602060405180830381865afa158015611092573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110b69190612612565b61014082015261015f546040516379df72bd60e01b8152611133916001600160a01b0316906379df72bd906110ef908590600401612737565b602060405180830381865afa15801561110a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061112e9190612612565b61184c565b61015f546040516339eb2ac960e21b81526001600160a01b039091169063e7acab249061116c908a908a908a908a908a90600401612b24565b6020604051808303815f875af1158015611188573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111ac91906123f9565b9150816111cc57604051636725093760e01b815260040160405180910390fd5b50600160335595945050505050565b6111e361136b565b6111ec81611865565b6107245f826118db565b6060611201856118e5565b5f80876001600160a01b03168661121a8b8a898961194a565b6040516112279190612cfa565b5f604051808303815f8787f1925050503d805f8114611261576040519150601f19603f3d011682016040523d82523d5f602084013e611266565b606091505b509092509050611277603f87612d1f565b5a1161128557611285612d3e565b6112c582826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061197a565b925050505b9695505050505050565b610724816112e06113fb565b6119b3565b6112ef8282610a0d565b6107b6575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191660011790556113276113fb565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6113736113fb565b6001600160a01b031661138e6097546001600160a01b031690565b6001600160a01b0316146107d25760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107a3565b6107245f80516020612ea783398151915282610c21565b5f611404611a17565b905090565b6114138282610a0d565b156107b6575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191690556114496113fb565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b61012d5460ff166107d25760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b60448201526064016107a3565b6114df61148d565b61012d805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6115136113fb565b6040516001600160a01b03909116815260200160405180910390a1565b6107245f80516020612ea7833981519152826118db565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b61012d5460ff16156107d25760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b60448201526064016107a3565b6115e7611598565b61012d805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586115136113fb565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015611662573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116869190612612565b90505f6117338660600151805190602001208688602001516040516020016116d39392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156112ca575085516112ca906001600160a01b03168286611a34565b5f54610100900460ff1661177f5760405162461bcd60e51b81526004016107a390612d52565b6001603355565b5f54610100900460ff166107d25760405162461bcd60e51b81526004016107a390612d52565b5f54610100900460ff166117d25760405162461bcd60e51b81526004016107a390612d52565b6107d26117dd6113fb565b611547565b5f54610100900460ff166118085760405162461bcd60e51b81526004016107a390612d52565b6107d25f6118146113fb565b6118db565b5f54610100900460ff1661183f5760405162461bcd60e51b81526004016107a390612d52565b61012d805460ff19169055565b30330361185c5761072481611b6f565b610724816118e5565b61186d61136b565b6001600160a01b0381166118d25760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107a3565b61072481611547565b6107b682826112e5565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f906060016040516020818303038152906040528051906020012090506119398190565b54611945906001612d9d565b905550565b606082858560405160200161196193929190612db0565b6040516020818303038152906040529050949350505050565b606083156119895750816106e3565b8251156119995782518084602001fd5b8160405162461bcd60e51b81526004016107a39190611fe9565b6119bd8282610a0d565b6107b6576119d5816001600160a01b03166014611b99565b6119e0836020611b99565b6040516020016119f1929190612dee565b60408051601f198184030181529082905262461bcd60e51b82526107a391600401611fe9565b5f303303611a2c575060331936013560601c90565b503390565b90565b5f805f611a418585611d2e565b90925090505f816004811115611a5957611a596125fe565b148015611a775750856001600160a01b0316826001600160a01b0316145b15611a87576001925050506106e3565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401611aae929190612e62565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051611aec9190612cfa565b5f60405180830381855afa9150503d805f8114611b24576040519150601f19603f3d011682016040523d82523d5f602084013e611b29565b606091505b5091509150818015611b3c575080516020145b8015611b6357508051630b135d3f60e11b90611b619083016020908101908401612612565b145b98975050505050505050565b611b77611d70565b811461072457604051635637b6af60e11b8152600481018290526024016107a3565b60605f611ba7836002612e7a565b611bb2906002612d9d565b6001600160401b03811115611bc957611bc961207f565b6040519080825280601f01601f191660200182016040528015611bf3576020820181803683370190505b509050600360fc1b815f81518110611c0d57611c0d6122bd565b60200101906001600160f81b03191690815f1a905350600f60fb1b81600181518110611c3b57611c3b6122bd565b60200101906001600160f81b03191690815f1a9053505f611c5d846002612e7a565b611c68906001612d9d565b90505b6001811115611cdf576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611c9c57611c9c6122bd565b1a60f81b828281518110611cb257611cb26122bd565b60200101906001600160f81b03191690815f1a90535060049490941c93611cd881612e91565b9050611c6b565b5083156106e35760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016107a3565b5f808251604103611d62576020830151604084015160608501515f1a611d5687828585611d82565b94509450505050611d69565b505f905060025b9250929050565b5f303303611a315750601f1936013590565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115611db757505f90506003611e5e565b8460ff16601b14158015611dcf57508460ff16601c14155b15611ddf57505f90506004611e5e565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015611e30573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b038116611e58575f60019250925050611e5e565b91505f90505b94509492505050565b6040518061016001604052805f6001600160a01b031681526020015f6001600160a01b0316815260200160608152602001606081526020015f6004811115611eb157611eb16125fe565b81525f6020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b5f60208284031215611ef0575f80fd5b81356001600160e01b0319811681146106e3575f80fd5b5f805f60408486031215611f19575f80fd5b83356001600160401b0380821115611f2f575f80fd5b9085019060808288031215611f42575f80fd5b90935060208501359080821115611f57575f80fd5b818601915086601f830112611f6a575f80fd5b813581811115611f78575f80fd5b876020828501011115611f89575f80fd5b6020830194508093505050509250925092565b5f5b83811015611fb6578181015183820152602001611f9e565b50505f910152565b5f8151808452611fd5816020860160208601611f9c565b601f01601f19169290920160200192915050565b602081525f6106e36020830184611fbe565b5f6020828403121561200b575f80fd5b5035919050565b6001600160a01b0381168114610724575f80fd5b803561203181612012565b919050565b5f8060408385031215612047575f80fd5b82359150602083013561205981612012565b809150509250929050565b5f60208284031215612074575f80fd5b81356106e381612012565b634e487b7160e01b5f52604160045260245ffd5b604051608081016001600160401b03811182821017156120b5576120b561207f565b60405290565b604051601f8201601f191681016001600160401b03811182821017156120e3576120e361207f565b604052919050565b5f60208083850312156120fc575f80fd5b82356001600160401b0380821115612112575f80fd5b818501915085601f830112612125575f80fd5b8135818111156121375761213761207f565b8060051b91506121488483016120bb565b8181529183018401918481019088841115612161575f80fd5b938501935b83851015611b63578435925061217b83612012565b8282529385019390850190612166565b5f805f6060848603121561219d575f80fd5b83356121a881612012565b925060208401356121b881612012565b929592945050506040919091013590565b5f805f805f608086880312156121dd575f80fd5b85356001600160401b03808211156121f3575f80fd5b9087019060a0828a031215612206575f80fd5b9095506020870135908082111561221b575f80fd5b818801915088601f83011261222e575f80fd5b81358181111561223c575f80fd5b8960208260051b8501011115612250575f80fd5b6020830196508095505050506040860135915061226f60608701612026565b90509295509295909350565b5f808335601e19843603018112612290575f80fd5b8301803591506001600160401b038211156122a9575f80fd5b602001915036819003821315611d69575f80fd5b634e487b7160e01b5f52603260045260245ffd5b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b5f60808236031215612316575f80fd5b61231e612093565b823561232981612012565b8152602083810135818301526040808501359083015260608401356001600160401b0380821115612358575f80fd5b9085019036601f83011261236a575f80fd5b81358181111561237c5761237c61207f565b61238e601f8201601f191685016120bb565b915080825236848285010111156123a3575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b5f60208284031215612409575f80fd5b815180151581146106e3575f80fd5b5f823561015e1983360301811261242d575f80fd5b9190910192915050565b5f808335601e1984360301811261244c575f80fd5b8301803591506001600160401b03821115612465575f80fd5b602001915060a081023603821315611d69575f80fd5b803560068110612031575f80fd5b5f60a08284031215612499575f80fd5b60405160a081018181106001600160401b03821117156124bb576124bb61207f565b6040526124c78361247b565b815260208301356124d781612012565b806020830152506040830135604082015260608301356060820152608083013560808201528091505092915050565b5f808335601e1984360301811261251b575f80fd5b8301803591506001600160401b03821115612534575f80fd5b602001915060c081023603821315611d69575f80fd5b5f60c0828403121561255a575f80fd5b60405160c081018181106001600160401b038211171561257c5761257c61207f565b6040526125888361247b565b8152602083013561259881612012565b8060208301525060408301356040820152606083013560608201526080830135608082015260a08301356125cb81612012565b60a08201529392505050565b803560058110612031575f80fd5b5f602082840312156125f5575f80fd5b6106e3826125d7565b634e487b7160e01b5f52602160045260245ffd5b5f60208284031215612622575f80fd5b5051919050565b60068110612639576126396125fe565b9052565b5f815180845260208085019450602084015f5b838110156126a6578151612665888251612629565b838101516001600160a01b03168885015260408082015190890152606080820151908901526080908101519088015260a09096019590820190600101612650565b509495945050505050565b5f815180845260208085019450602084015f5b838110156126a65781516126d9888251612629565b808401516001600160a01b0390811689860152604080830151908a0152606080830151908a0152608080830151908a015260a091820151169088015260c090960195908201906001016126c4565b60058110612639576126396125fe565b602081526127516020820183516001600160a01b03169052565b5f602083015161276c60408401826001600160a01b03169052565b50604083015161016080606085015261278961018085018361263d565b91506060850151601f198584030160808601526127a683826126b1565b92505060808501516127bb60a0860182612727565b5060a085015160c085015260c085015160e085015260e0850151610100818187015280870151915050610120818187015280870151915050610140818187015280870151838701525050508091505092915050565b5f808335601e19843603018112612825575f80fd5b83016020810192503590506001600160401b03811115612843575f80fd5b60a081023603821315611d69575f80fd5b8183525f60208085019450825f5b858110156126a65761287c876128778461247b565b612629565b8282013561288981612012565b6001600160a01b03168388015260408281013590880152606080830135908801526080808301359088015260a09687019690910190600101612862565b5f808335601e198436030181126128db575f80fd5b83016020810192503590506001600160401b038111156128f9575f80fd5b60c081023603821315611d69575f80fd5b8183525f60208085019450825f5b858110156126a65761292d876128778461247b565b8282013561293a81612012565b6001600160a01b039081168885015260408381013590890152606080840135908901526080808401359089015260a0908382013561297781612012565b169088015260c0968701969190910190600101612918565b80356001600160781b0381168114612031575f80fd5b5f808335601e198436030181126129ba575f80fd5b83016020810192503590506001600160401b038111156129d8575f80fd5b803603821315611d69575f80fd5b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b8183525f6001600160fb1b03831115612a25575f80fd5b8260051b80836020870137939093016020019392505050565b8183526020808401935f91600585811b8301820185855b88811015612b1657858303601f19018a52813536899003609e19018112612a7a575f80fd5b88018035845260a08682013560028110612a92575f80fd5b85880152604082810135908601526060808301359086015260808083013536849003601e19018112612ac2575f80fd5b9092018781019290356001600160401b03811115612ade575f80fd5b80881b3603841315612aee575f80fd5b8282880152612b008388018286612a0e565b9d89019d96505050928601925050600101612a55565b509098975050505050505050565b608081525f610120873561015e19893603018112612b40575f80fd5b60a060808501528801612b65828501612b5883612026565b6001600160a01b03169052565b612b7160208201612026565b610140612b88818701836001600160a01b03169052565b612b956040840184612810565b610160888101529250612bad61028088018483612854565b925050612bbd60608401846128c6565b87840361011f1901610180890152612bd684828461290a565b93505050612be6608084016125d7565b612bf46101a0880182612727565b5060a08301356101c087015260c08301356101e087015260e0830135610200870152610100808401356102208801528484013561024088015281840135610260880152612c4360208d0161298f565b6001600160781b03811660a08901529450612c6060408d0161298f565b6001600160781b03811660c08901529450612c7e60608d018d6129a5565b95509350607f199150818784030160e0880152612c9c8386866129e6565b9450612cab60808d018d6129a5565b945092508187860301818801525050612cc58383836129e6565b925050508281036020840152612cdc818789612a3e565b9150508360408301526112ca60608301846001600160a01b03169052565b5f825161242d818460208701611f9c565b634e487b7160e01b5f52601160045260245ffd5b5f82612d3957634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b8082018082111561061b5761061b612d0b565b5f8451612dc1818460208901611f9c565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081525f8351612e25816017850160208801611f9c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351612e56816028840160208801611f9c565b01602801949350505050565b828152604060208201525f610aaa6040830184611fbe565b808202811582820484141761061b5761061b612d0b565b5f81612e9f57612e9f612d0b565b505f19019056fe9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000818000a","storage":{"0x0":"0xff"}},"0x58a175bebc8ec21a94ea63aa5a28743945940ee6":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106101165760003560e01c806391d14854116100a2578063c4d66de811610071578063c4d66de8146103bb578063ca15c873146103e1578063d547741f146103fe578063e375b64e1461042a578063ec87621c146104b957610116565b806391d14854146103635780639559c0bd146103a3578063a217fddf146103ab578063b017a30f146103b357610116565b80634794b430116100e95780634794b4301461024f57806349f5124b14610257578063609c92b81461025f5780638274664f146102675780639010d07c1461032457610116565b8063150b7a021461011b578063248a9ca3146101c65780632f2ff15d146101f557806336568abe14610223575b600080fd5b6101a96004803603608081101561013157600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561016b57600080fd5b82018360208201111561017d57600080fd5b803590602001918460018302840111600160201b8311171561019e57600080fd5b5090925090506104c1565b604080516001600160e01b03199092168252519081900360200190f35b6101e3600480360360208110156101dc57600080fd5b50356104d2565b60408051918252519081900360200190f35b6102216004803603604081101561020b57600080fd5b50803590602001356001600160a01b03166104ea565b005b6102216004803603604081101561023957600080fd5b50803590602001356001600160a01b0316610556565b6101e36105b7565b6101e36105db565b6101e36105ff565b6102216004803603606081101561027d57600080fd5b6001600160a01b038235811692602081013590911691810190606081016040820135600160201b8111156102b057600080fd5b8201836020820111156102c257600080fd5b803590602001918460018302840111600160201b831117156102e357600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610623945050505050565b6103476004803603604081101561033a57600080fd5b5080359060200135610fa2565b604080516001600160a01b039092168252519081900360200190f35b61038f6004803603604081101561037957600080fd5b50803590602001356001600160a01b0316610fc9565b604080519115158252519081900360200190f35b6101e3610fe7565b6101e3610fec565b6101e3610ff1565b610221600480360360208110156103d157600080fd5b50356001600160a01b0316611015565b6101e3600480360360208110156103f757600080fd5b50356110cf565b6102216004803603604081101561041457600080fd5b50803590602001356001600160a01b03166110e6565b6102216004803603608081101561044057600080fd5b6001600160a01b0382358116926020810135821692604082013590921691810190608081016060820135600160201b81111561047b57600080fd5b82018360208201111561048d57600080fd5b803590602001918460018302840111600160201b831117156104ae57600080fd5b50909250905061113f565b6101e36114e6565b630a85bd0160e11b95945050505050565b6000818152602081905260409020600201545b919050565b60008281526020819052604090206002015461050d906105086114f8565b610fc9565b6105485760405162461bcd60e51b815260040180806020018281038252602f815260200180611f42602f913960400191505060405180910390fd5b61055282826114fd565b5050565b61055e6114f8565b6001600160a01b0316816001600160a01b0316146105ad5760405162461bcd60e51b815260040180806020018281038252602f8152602001806120bb602f913960400191505060405180910390fd5b610552828261156c565b7ff871896b17e9cb7a64941c62c188a4f5c621b86800e3d15452ece01ce56073df81565b7ff94915c6d1fd521cee85359239227480c7e8776d7caf1fc3bacad5c269b66a1481565b7fd4392723c111fcb98b073fe55873efb447bcd23cd3e49ec9ea2581930cd01ddc81565b60008051602061204b83398151915261063e816105086114f8565b6001906106de5760405162461bcd60e51b81526020600482019081528254600260001961010060018416150201909116046024830181905290918291604490910190849080156106cf5780601f106106a4576101008083540402835291602001916106cf565b820191906000526020600020905b8154815290600101906020018083116106b257829003601f168201915b50509250505060405180910390fd5b5060606106f26106ed846115db565b611656565b905060606107138260018151811061070657fe5b6020026020010151611656565b90507fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60001b6107568260008151811061074957fe5b60200260200101516117d8565b141561095457600061076e8260018151811061074957fe5b905060006001600160a01b031661078b8360028151811061074957fe5b6001600160a01b0316146107d05760405162461bcd60e51b815260040180806020018281038252602981526020018061206b6029913960400191505060405180910390fd5b600086905060006107e78460038151811061074957fe5b9050816001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b15801561082d57600080fd5b505afa158015610841573d6000803e3d6000fd5b505050506040513d602081101561085757600080fd5b5051156108d35760408051632142170760e11b81523060048201526001600160a01b038581166024830152604482018490529151918416916342842e0e9160648082019260009290919082900301818387803b1580156108b657600080fd5b505af11580156108ca573d6000803e3d6000fd5b5050505061094c565b816001600160a01b03166340c10f1984836040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b15801561093357600080fd5b505af1158015610947573d6000803e3d6000fd5b505050505b505050610f9a565b7ff871896b17e9cb7a64941c62c188a4f5c621b86800e3d15452ece01ce56073df60001b6109888260008151811061074957fe5b1415610c085760006109a08260018151811061074957fe5b905060606109c1846002815181106109b457fe5b6020026020010151611920565b905060608180602001905160208110156109da57600080fd5b8101908080516040519392919084600160201b8211156109f957600080fd5b908301906020820185811115610a0e57600080fd5b82518660208202830111600160201b82111715610a2a57600080fd5b82525081516020918201928201910280838360005b83811015610a57578181015183820152602001610a3f565b5050505091909101604052505082519293508a9150600090505b82811015610bfd576000848281518110610a8757fe5b60200260200101519050826001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610ad557600080fd5b505afa158015610ae9573d6000803e3d6000fd5b505050506040513d6020811015610aff57600080fd5b505115610b7b5760408051632142170760e11b81523060048201526001600160a01b038981166024830152604482018490529151918516916342842e0e9160648082019260009290919082900301818387803b158015610b5e57600080fd5b505af1158015610b72573d6000803e3d6000fd5b50505050610bf4565b826001600160a01b03166340c10f1988836040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b158015610bdb57600080fd5b505af1158015610bef573d6000803e3d6000fd5b505050505b50600101610a71565b505050505050610f9a565b7ff94915c6d1fd521cee85359239227480c7e8776d7caf1fc3bacad5c269b66a1460001b610c3c8260008151811061074957fe5b1415610f63576000610c548260018151811061074957fe5b905060006001600160a01b0316610c718360028151811061074957fe5b6001600160a01b031614610cb65760405162461bcd60e51b815260040180806020018281038252602981526020018061206b6029913960400191505060405180910390fd5b60008690506000610ccd8460038151811061074957fe5b9050816001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610d1357600080fd5b505afa158015610d27573d6000803e3d6000fd5b505050506040513d6020811015610d3d57600080fd5b505115610d9c5760408051632142170760e11b81523060048201526001600160a01b038581166024830152604482018490529151918416916342842e0e9160648082019260009290919082900301818387803b1580156108b657600080fd5b6060610dae866002815181106109b457fe5b90506060818060200190516020811015610dc757600080fd5b8101908080516040519392919084600160201b821115610de657600080fd5b908301906020820185811115610dfb57600080fd5b8251600160201b811182820188101715610e1457600080fd5b82525081516020918201929091019080838360005b83811015610e41578181015183820152602001610e29565b50505050905090810190601f168015610e6e5780820380516001836020036101000a031916815260200191505b506040525050509050836001600160a01b03166394d008ef8685846040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b0316815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610ef3578181015183820152602001610edb565b50505050905090810190601f168015610f205780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015610f4157600080fd5b505af1158015610f55573d6000803e3d6000fd5b505050505050505050610f9a565b60405162461bcd60e51b815260040180806020018281038252602a815260200180611f71602a913960400191505060405180910390fd5b505050505050565b6000828152602081905260408120610fc0908363ffffffff6119ea16565b90505b92915050565b6000828152602081905260408120610fc0908363ffffffff6119f616565b601481565b600081565b7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef81565b60025460ff161561105e576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b61109c6040518060400160405280601781526020017f4d696e7461626c65455243373231507265646963617465000000000000000000815250611a0b565b6110a7600082610548565b6110bf60008051602061204b83398151915282610548565b506002805460ff19166001179055565b6000818152602081905260408120610fc390611aa9565b600082815260208190526040902060020154611104906105086114f8565b6105ad5760405162461bcd60e51b8152600401808060200182810382526030815260200180611fc36030913960400191505060405180910390fd5b60008051602061204b83398151915261115a816105086114f8565b6001906111c05760405162461bcd60e51b81526020600482019081528254600260001961010060018416150201909116046024830181905290918291604490910190849080156106cf5780601f106106a4576101008083540402835291602001916106cf565b50602082141561129f576000838360208110156111dc57600080fd5b5060408051913580835290519092506001600160a01b038088169289821692918b16917fe13244aa06bdc79480ed5fdc6ebe2bb37202fcdf33ecf45dc449f4201f3dc0879181900360200190a460408051632142170760e11b81526001600160a01b038981166004830152306024830152604482018490529151918716916342842e0e9160648082019260009290919082900301818387803b15801561128157600080fd5b505af1158015611295573d6000803e3d6000fd5b5050505050610f9a565b6060838360208110156112b157600080fd5b810190602081018135600160201b8111156112cb57600080fd5b8201836020820111156112dd57600080fd5b803590602001918460208302840111600160201b831117156112fe57600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f8201169050808301925050505050505091929192905050509050846001600160a01b0316866001600160a01b0316886001600160a01b03167fdb55e3a0ae817693fd7b07170d81eab0eb2c239f36fcecbc98b6b58ac5667e7a846040518080602001828103825283818151815260200191508051906020019060200280838360005b838110156113ca5781810151838201526020016113b2565b505050509050019250505060405180910390a48051601481111561141f5760405162461bcd60e51b815260040180806020018281038252602c81526020018061201f602c913960400191505060405180910390fd5b60005b818110156114db57866001600160a01b03166342842e0e8a3086858151811061144757fe5b60200260200101516040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050600060405180830381600087803b1580156114b757600080fd5b505af11580156114cb573d6000803e3d6000fd5b5050600190920191506114229050565b505050505050505050565b60008051602061204b83398151915281565b335b90565b600082815260208190526040902061151b908263ffffffff611ab416565b15610552576115286114f8565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b600082815260208190526040902061158a908263ffffffff611ac916565b15610552576115976114f8565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b6115e3611e6d565b6000825111611639576040805162461bcd60e51b815260206004820152601f60248201527f524c505265616465723a20494e56414c49445f42595445535f4c454e47544800604482015290519081900360640190fd5b506040805180820190915281518152602082810190820152919050565b606061166182611ade565b6116b2576040805162461bcd60e51b815260206004820152601860248201527f524c505265616465723a204954454d5f4e4f545f4c4953540000000000000000604482015290519081900360640190fd5b60006116bd83611b0a565b905060608167ffffffffffffffff811180156116d857600080fd5b5060405190808252806020026020018201604052801561171257816020015b6116ff611e6d565b8152602001906001900390816116f75790505b50905060006117248560200151611b96565b855190915081146117665760405162461bcd60e51b81526004018080602001828103825260278152602001806120946027913960400191505060405180910390fd5b60006117758660200151611c2f565b60208701510190506000805b858110156117cc5761179283611b96565b91506040518060400160405280838152602001848152508582815181106117b557fe5b602090810291909101015291810191600101611781565b50929695505050505050565b60006117e382611ade565b15611835576040805162461bcd60e51b815260206004820181905260248201527f524c505265616465723a204445434f44494e475f4c4953545f41535f55494e54604482015290519081900360640190fd5b81516021101561188c576040805162461bcd60e51b815260206004820152601e60248201527f524c505265616465723a20494e56414c49445f55494e545f4c454e4754480000604482015290519081900360640190fd5b600061189b8360200151611b96565b835190915081146118dd5760405162461bcd60e51b81526004018080602001828103825260278152602001806120ea6027913960400191505060405180910390fd5b60006118ec8460200151611c2f565b8451602080870151830180519394509184900392919083101561191657826020036101000a820491505b5095945050505050565b606060006119318360200151611b96565b835190915081146119735760405162461bcd60e51b8152600401808060200182810382526028815260200180611f9b6028913960400191505060405180910390fd5b60006119828460200151611c2f565b845190915081900360608167ffffffffffffffff811180156119a357600080fd5b506040519080825280601f01601f1916602001820160405280156119ce576020820181803683370190505b5090506000816020019050611916848860200151018285611c92565b6000610fc08383611cdd565b6000610fc0836001600160a01b038416611d41565b806040516020018082805190602001908083835b60208310611a3e5780518252601f199092019160209182019101611a1f565b51815160209384036101000a60001901801990921691161790527f3a20494e53554646494349454e545f5045524d495353494f4e530000000000009190930190815260408051808303600519018152601a909201905280516105529550600194509201919050611e87565b6000610fc382611d59565b6000610fc0836001600160a01b038416611d5d565b6000610fc0836001600160a01b038416611da7565b6020810151805160009190821a9060c0821015611b00576000925050506104e5565b5060019392505050565b600080600090506000611b208460200151611c2f565b602085015185519181019250015b80821015611b8d57611b3f82611b96565b8201915080821115611b825760405162461bcd60e51b815260040180806020018281038252602c815260200180611ff3602c913960400191505060405180910390fd5b600190920191611b2e565b50909392505050565b80516000908190811a6080811015611bb15760019150611c28565b60b8811015611bc657607e1981019150611c28565b60c0811015611bf35760b78103600185019450806020036101000a85510460018201810193505050611c28565b60f8811015611c085760be1981019150611c28565b60f78103600185019450806020036101000a855104600182018101935050505b5092915050565b8051600090811a6080811015611c495760009150506104e5565b60b8811080611c64575060c08110801590611c64575060f881105b15611c735760019150506104e5565b60c0811015611c875760b5190190506104e5565b60f5190190506104e5565b80611c9c57611cd8565b5b60208110611cbc578251825260209283019290910190601f1901611c9d565b8251825160208390036101000a60001901801990921691161782525b505050565b81546000908210611d1f5760405162461bcd60e51b8152600401808060200182810382526022815260200180611f206022913960400191505060405180910390fd5b826000018281548110611d2e57fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000611d698383611d41565b611d9f57508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610fc3565b506000610fc3565b60008181526001830160205260408120548015611e635783546000198083019190810190600090879083908110611dda57fe5b9060005260206000200154905080876000018481548110611df757fe5b600091825260208083209091019290925582815260018981019092526040902090840190558654879080611e2757fe5b60019003818190600052602060002001600090559055866001016000878152602001908152602001600020600090556001945050505050610fc3565b6000915050610fc3565b604051806040016040528060008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611ec857805160ff1916838001178555611ef5565b82800160010185558215611ef5579182015b82811115611ef5578251825591602001919060010190611eda565b50611f01929150611f05565b5090565b6114fa91905b80821115611f015760008155600101611f0b56fe456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e744d696e7461626c654552433732315072656469636174653a20494e56414c49445f5349474e4154555245524c505265616465723a2042595445535f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b65524c505265616465723a204e554d5f4954454d535f4445434f4445445f4c454e4754485f4d49534d415443484d696e7461626c654552433732315072656469636174653a20455843454544535f42415443485f4c494d4954241ecf16d79d0f8dbfb92cbc07fe17840425976cf0667f022fe9877caa831b084d696e7461626c654552433732315072656469636174653a20494e56414c49445f5245434549564552524c505265616465723a204c4953545f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66524c505265616465723a2055494e545f4445434f4445445f4c454e4754485f4d49534d41544348a164736f6c6343000606000a","storage":{"0x1":"0x63","0x2":"0x1","0x73d5d1a274bdea1400ad3ea4d982f594abdfd528cde1486b6c617faa3ec116":"0x1","0x89011777cfe6194dd982545e7eb24725dfe9a1aacae299c76fc48ef5017ae650":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x89011777cfe6194dd982545e7eb24725dfe9a1aacae299c76fc48ef5017ae651":"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0x1","0xb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6":"0x4d696e7461626c654552433732315072656469636174653a20494e5355464649","0xb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf7":"0x4349454e545f5045524d495353494f4e53000000000000000000000000000000","0xba75a66b8132bebab85d36fd3638083da57ae3d78fbcd8cc41f73514287dadaf":"0x1","0xe6c7d8231a06d7cb67831aeabcbd43ba24e5e4c6569cf23405f1e558de8580e0":"0x2","0xe84508f2c7fa9c351146748b3025cb78b45df37d868e48c6a75102fecdeee645":"0x2","0xe84508f2c7fa9c351146748b3025cb78b45df37d868e48c6a75102fecdeee647":"0x0","0xf0df3dcda05b4fbd9c655cde3d5ceb211e019e72ec816e127a59e7195f2cd7f5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x5cc819c9915eadfcebd76952b8c1bc36cadd7376":{"nonce":2,"balance":"0x0","code":"0x608060405260043610610103575f3560e01c8063a900866b11610092578063f07ec37311610062578063f07ec373146102f7578063f2d12b1214610316578063f47b774014610329578063fb0f3ee114610116578063fd9f1e101461034c575f80fd5b8063a900866b1461028a578063b3a34c4c146102be578063e7acab24146102d1578063ed98a574146102e4575f80fd5b80637423eb3c116100d85780637423eb3c146101f757806379df72bd1461020b57806387201b411461022a578063881477321461024b578063a81744041461026a575f80fd5b801561011657806306fdde031461013e57806346423aa71461015f5780635b34b966146101d5575f80fd5b366101125761011061036b565b005b5f80fd5b610129610124366004615115565b6103f9565b60405190151581526020015b60405180910390f35b348015610149575f80fd5b50610152610408565b604051610135919061518f565b34801561016a575f80fd5b506101b36101793660046151a1565b5f9081526001602052604090205460ff808216926101008304909116916001600160781b03620100008204811692600160881b9092041690565b6040805194151585529215156020850152918301526060820152608001610135565b3480156101e0575f80fd5b506101e9610417565b604051908152602001610135565b348015610202575f80fd5b50610110610420565b348015610216575f80fd5b506101e96102253660046151b8565b6104c1565b61023d61023836600461524c565b6104f8565b6040516101359291906153f0565b348015610256575f80fd5b5061012961026536600461543f565b610571565b61027d61027836600461547d565b61058f565b60405161013591906154e3565b348015610295575f80fd5b506101e96102a43660046154f5565b6001600160a01b03165f9081526002602052604090205490565b6101296102cc36600461550e565b61062a565b6101296102df366004615553565b6106a3565b61023d6102f23660046155d7565b6106e1565b348015610302575f80fd5b506101e96103113660046154f5565b610784565b61027d610324366004615677565b6107a1565b348015610334575f80fd5b5061033d6107ea565b60405161013593929190615719565b348015610357575f80fd5b5061012961036636600461543f565b610801565b7f000000000000000000000000000000000000000000000000000000000000000180156103b357600263929eee145c146103b05763a61be9f05f52346020526024601cfd5b50565b63929eee1454806103e057600263929eee145c146103dc5763a61be9f05f52346020526024601cfd5b5050565b600381146103dc5763a61be9f05f52346020526024601cfd5b5f61040261080c565b92915050565b60606104126109c0565b905090565b5f6104126109d8565b63929eee14546001147f000000000000000000000000000000000000000000000000000000000000000180610453575080155b1561047157604051630f45b98b60e41b815260040160405180910390fd5b61049a7f000000000000000000000000145908bbcfc7b258e4d4d9a586f6e3249ae80216610a45565b6104b7576040516370a4078f60e01b815260040160405180910390fd5b5f63929eee145550565b5f806104cd6004610aa3565b90506104f16104e282610ab35b63ffffffff16565b610140830135610b30565b3590565b9392505050565b60608061055d61051361050b6004610aa3565b610c746104da565b61052a61052260046020610cdc565b610cfa6104da565b61054161053960046040610cdc565b610d526104da565b61055061053960046060610cdc565b89338a15028a0189610daa565b915091509b509b9950505050505050505050565b5f6104f161058a6105826004610aa3565b610de46104da565b610e3c565b606061061f6105a96105a16004610aa3565b610f5d6104da565b604080515f8082526020820190925290610601565b6105ee6040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816105be5790505b5061061961061160046020610cdc565b610fb56104da565b3361100d565b90505b949350505050565b5f6104f161064361063b6004610aa3565b61104b6104da565b604080515f808252602082019092529061069b565b6106886040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816106585790505b5084336110c1565b5f6106d76106bc6106b46004610aa3565b6112406104da565b6106cb61052260046020610cdc565b853386150286016110c1565b9695505050505050565b6060806107736106f46105a16004610aa3565b604080515f808252602082019092529061074c565b6107396040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816107095790505b5061075c61053960046020610cdc565b61076b61053960046040610cdc565b883389610daa565b915091509850989650505050505050565b6001600160a01b0381165f90815260208190526040812054610402565b60606107dc6107b361050b6004610aa3565b6107c261052260046020610cdc565b6107d161061160046040610cdc565b33861502860161100d565b90505b979650505050505050565b60605f806107f661129c565b925092509250909192565b5f6104f183836112e8565b5f61012435600281901c90600316600182118334158214806108315761083134611423565b506003841160a0810260240135906502030203010160d01b861a905f630101020360d01b881a6108648882898888611434565b9096509150506101c4600583901b01355f87600581111561088757610887615329565b036108bc5760443560243517156108a557636ab37ce75f526004601cfd5b6108af8482611751565b6108b7611809565b61099d565b6040805160208082528183019092525f9160208201818036833701905050905060028a60058111156108f0576108f0615329565b036109135761090e60c4356084353360e435610104355b8787611889565b610988565b60038a600581111561092757610927615329565b036109455761090e60c4356084353360e435610104355b87876118d4565b60048a600581111561095957610959615329565b036109735761090e60243533608435604435606435610907565b6109886024353360843560443560643561093e565b610992848261190a565b61099b816119c4565b505b6109a88689846119e8565b6109b0611a5e565b6001995050505050505050505090565b6060602080526707536561706f727460475260606020f35b5f6109e1611ab1565b600143034060801c335f525f60205260405f208054820192508281555050336001600160a01b03167f721c20121297512b72821b97f5326877ea8ecf4bb9948fea5bfcb6453074d37f82604051610a3a91815260200190565b60405180910390a290565b5f816001600160a01b0316600a5a610a5d9190615773565b6040515f8181818686fa925050503d805f8114610a95576040519150601f19603f3d011682016040523d82523d5f602084013e610a9a565b606091505b50909392505050565b5f813563ffffffff168201610402565b5f610ac661016060408051918201905290565b9050610ad58282610140611b28565b610af2610aeb610ae6846040610cdc565b611b31565b6040830152565b5f610b06610b01846060610cdc565b611b84565b9050610b13816060840152565b610b26610b1e825190565b610140840152565b50919050565b0190565b610140820151604080519084015180515f939284927fa66999307ad1bb4fde44d13a5d710bd7718e0c87c1eef68a571629fbf5b93d0292602090910190845b81811015610b9c578251601f1901805186825260c082208652905260209384019390920191600101610b6f565b508060051b6040512094505050505f7f42d81c6929ffdc4eb27a0808e40e82516ad42296c166065de7f812492304ff6e915060405160206060890151015f5b86811015610c08578151601f1901805186825260e082208552905260209283019290910190600101610bdb565b505060408051600587901b9020601f198a0180517ffa445660b7e21515a59617fcd68910b487aa5808b8abda3d78bc85df364b2c2f8252928b01805197815260608c018051938152610140909c019a8b5261018082209390915295909552939097525050925250919050565b5f8063ffffffff8335169050600581901b610c986020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610cca610cc4610cbf8484610cdc565b611240565b82850152565b602001610ca7565b5050505050919050565b5f6104f163ffffffff610cf46104ed8686610b2c8516565b16840190565b5f8063ffffffff8335169050600581901b610d1e6020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610d4a610cc4610d458484610cdc565b611bc7565b602001610d2d565b5f8063ffffffff8335169050600581901b610d766020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610da2610cc4610d9d8484610cdc565b611c09565b602001610d85565b60608036155f80610dbe8c8c85898b611c4c565b91509150610dd18c8b8b8b8b8787612029565b9450945050505097509795505050505050565b5f8063ffffffff8335169050600581901b610e086020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610e34610cc4610e2f8484610cdc565b61215b565b602001610e17565b5f610e45611ab1565b5f805f80855190505f5b81811015610f50575f878281518110610e6a57610e6a615792565b60209081029190910101518051909150600481608001516004811115610e9257610e92615329565b03610e9e575050610f48565b80519450610eab8161219e565b5f8181526001602052604081209850909650610ecd90879089903615156121d7565b50865460ff16610f455780610140015181606001515114610ef057610ef0612265565b610eff85878460200151612272565b865460ff191660011787556040517ff280791efe782edcf06ce15c8f4dff17601db3b88eb3805a0db7d77faf757f0490610f3c9088908490615895565b60405180910390a15b50505b600101610e4f565b5060019695505050505050565b5f8063ffffffff8335169050600581901b610f816020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610fad610cc4610fa88484610cdc565b61104b565b602001610f90565b5f8063ffffffff8335169050600581901b610fd96020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257611005610cc46110008484610cdc565b61230e565b602001610fe8565b60605f36151590505f806110258888858b5189611c4c565b9150915061103282612341565b61103f8887848885612380565b98975050505050505050565b5f61105e61020060408051918201905290565b60a0810180825290915061107a61107484610aa3565b82612453565b61108660016020840152565b61109260016040840152565b6110af6110a86110a3856020610cdc565b612489565b6060840152565b610b266110ba6124b1565b6080840152565b835160808101515f91906110e860048260048111156110e2576110e2615329565b146124cb565b5f80806110f78a36151561256c565b60408051600180825281830190925293965091945092505f9190816020015b61111e615027565b8152602001906001900390816111165790505090508a815f8151811061114657611146615792565b602002602001018190525061115b818b612764565b6111678684848b6128dd565b6040805160018082528183019092525f91602080830190803683375091925050503615156004878181111561119e5761119e615329565b146111c1576111af8d83885f6129dd565b6111bb86868684612a2f565b506111d3565b6111d0888e6080015183612b33565b95505b6111de888c8c612c03565b85825f815181106111f1576111f1615792565b6020026020010181815250506112088d8388612d26565b61122586895f01518a602001518d8c604001518d60600151612df3565b61122d611a5e565b5060019c9b505050505050505050505050565b5f61125361020060408051918201905290565b905061126760208381019083016040611b28565b60a0810180825261127a61107484610aa3565b61128b6110a86110a3856060610cdc565b610b266110ba6110a3856080610cdc565b60605f805f6112a9612e58565b90505f7f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c905060605f5281602052806040526303312e3660635260a05ff35b5f6112f1611ab1565b5f8083815b81811015611408573687878381811061131157611311615792565b90506020028101906113239190615977565b90505f61133360208301836154f5565b90505f61134660408401602085016154f5565b90505f61135960a0850160808601615996565b905081331483331417156004821417871796505f61138d61138261137a8790565b610ab36104da565b866101400135610b30565b5f8181526001602052604090819020805461ffff19166101001781559051909a509091506001600160a01b0380851691908616907f6bacc01dbe442496068f7d234edd811f1a5f833243e0aec824f86ab861f3c90d906113f09085815260200190565b60405180910390a385600101955050505050506112f6565b5050801561141857611418612f35565b506001949350505050565b63a61be9f05f52806020526024601cfd5b5f8061143f5f6124cb565b611447612f42565b426101643511154261014435111715611475576321ccfeb75f5261014435602052610164356040526044601cfd5b610204356102643510156114905763466aa6165f526004601cfd5b7f42d81c6929ffdc4eb27a0808e40e82516ad42296c166065de7f812492304ff6e608081905260a08790526060602460c037604060646101203760e060802061016052610264356102043560051b6102a0016001820181526020810190508881526080602460208301376101608860a0528760c0525f60e0525f6102043593505f5b84811015611566578060400261028401602081610100376040816101203760208101358317925060208401935060e0608020845260a0850194508b85528a6020860152604081606087013750600101611512565b6001850160051b610160206060526102643594505b848110156115b6578060400261028401925060a0840193508a845289602085015260408360608601376020830135919091179060010161157b565b506001600160a01b038111156115d3576339f3e3fd5f526004601cfd5b50505050505f7fa66999307ad1bb4fde44d13a5d710bd7718e0c87c1eef68a571629fbf5b93d029050806080528360a052606060c460c0376020610104610120375060c06080205f9081526020812060e05260843590611647826001600160a01b03165f9081526020819052604090205490565b7ffa445660b7e21515a59617fcd68910b487aa5808b8abda3d78bc85df364b2c2f60808190529091506040608460a03760605161010052896101205260a061014461014037816101e05261018060802094505050506102043560051b61018001828152336020820152608060408201526101206060820152600160808201528360a0820152606060c460c083013760a061026435026101e00160a4356084357f9d9af8e38d66c62e2c12f0225249fd9d721c54b83f48d9352c97c6cacdcb6f318385a35f60605260608101820160405250505f61172383612f8d565b905061172f8389612fde565b7101000000000000000000000000000001000182559150509550959350505050565b60c43560843560e4356101043584156117b9575f6040519050632671a55160e11b815260206004820152600160248201528660448201528460648201528360848201523360a48201528260c48201528160e48201526117b38682610104613033565b50611801565b60028660058111156117cd576117cd615329565b036117f457806001146117e3576117e3816130ea565b6117ef848433856130fb565b611801565b61180184843385856131b0565b505050505050565b346064356084356102643560061b5f80805b8381101561185a5761028481013592506102a481013591508683111561184357611843613287565b82870396506118528284613294565b60400161181b565b508585111561186b5761186b613287565b6118758486613294565b848611156118015761180133868803613294565b61189381836132ca565b816118ba57826001146118a9576118a9836130ea565b6118b5878787876130fb565b6118cb565b6118cb828260028a8a8a8a8a6132e8565b50505050505050565b6118dd83613367565b6118e781836132ca565b816118f9576118b587878787876131b0565b6118cb828260038a8a8a8a8a6132e8565b5f805f805f861561192f57505060843592503391505060c4356101043560e435611944565b50339350506084359150506024356064356044355b801561195257611952613379565b50600586901b6101e403356102643560061b5f80805b838110156119a95761028481013592506102a481013591508a156119935761199083876159b4565b95505b6119a1878a8486898f613386565b604001611968565b506119b886898988888e613386565b50505050505050505050565b60408151146119d05750565b5f6119dc826020015190565b90506103dc81836133bb565b611a048260a4355b331415600182116004909210919091161690565b15611a5957805f611a13825190565b9050608081901c63ffffffff8216611a3484826317b1f94282526001905250565b601c840163fb5014fc6060529350611a5060a4358886856133df565b5f6060526118cb565b505050565b7f00000000000000000000000000000000000000000000000000000000000000018015611a8f575f63929eee145d50565b63929eee145480611aa5575f63929eee145d5050565b50600163929eee145550565b7f00000000000000000000000000000000000000000000000000000000000000018015611af05763929eee145c156103b057637fa8a9875f526004601cfd5b63929eee145480611b135763929eee145c156103dc57637fa8a9875f526004601cfd5b600181146103dc57637fa8a9875f526004601cfd5b80838337505050565b5f63ffffffff8235166040519150808252602082018160051b81018060a084026020870183378293505b81841015611b745780845260209093019260a001611b5b565b60405250919392505050565b9052565b5f63ffffffff8235166040519150808252602082018160051b81018060c084026020870183378293505b81841015611b745780845260209093019260c001611bae565b5f611bd960a060408051918201905290565b9050611be782826080611b28565b611c04611bfd611bf8846080610cdc565b613427565b6080830152565b919050565b5f63ffffffff8235166040519150808252602082018160051b8101808360061b6020870183378293505b81841015611b7457808452602090930192604001611c33565b60605f611c5960016124cb565b86515f90600160e61b82351690806001600160401b03811115611c7e57611c7e61574b565b604051908082528060200260200182016040528015611ca7578160200160208202803683370190505b50945060010160051b91505f60205b83811015611ea8575f611ccc8c83613cce6104da565b90505f805f611cdb848e61256c565b6001600160781b0382166020880152919450925090505f829003611d025750505050611ea0565b6001600160781b0381166040808601919091528a8601849052845160a081015160c0820151608083015192909301518051600184119d909d179c600490931099509092915f5b81811015611dea575f838281518110611d6357611d63615792565b602002602001015190508b8151108d179c505f611d858989846080015161345e565b90508160800151826060015103611da25760608201819052611db7565b611db18989846060015161345e565b60608301525b5f611dd08360600151838a8a611dcb361590565b61349a565b606084018190526080909301929092525050600101611d48565b5087516060015180515f5b81811015611e94575f838281518110611e1057611e10615792565b602002602001015190505f611e2a8b8b846080015161345e565b90508160800151826060015103611e475760608201819052611e5c565b611e568b8b846060015161345e565b60608301525b5f611e718360600151838c8c611dcb36151590565b6060840181905260a0840180516080909501949094529092525050600101611df5565b50505050505050505050505b602001611cb6565b50506001600160e61b018103611ec057611ec06134ed565b50611ecb8888612764565b5f8060205b8381101561200e578581015192508215612006575f611ef28c83613cce6104da565b9050885f03611f0d575f878301819052602090910152612006565b60048151608001516004811115611f2657611f26615329565b14611fa957611f3f8188866001600587901c038e6134fa565b611f55575f878301819052602090910152612006565b602080820151604083015183516080810151930151611f8e9388936001600160781b039081169316913314156001909111168e17612a2f565b611fa4575f878301819052602090910152612006565b611fd4565b611fbb815f015182608001518c612b33565b878301819052935083611fd4575f602090910152612006565b886001900398505f815f01519050611fff85825f015183602001518c85604001518660600151612df3565b6001935050505b602001611ed0565b508061201c5761201c613555565b5050509550959350505050565b85518551606091829161203c81836159c7565b6001600160401b038111156120535761205361574b565b60405190808252806020026020018201604052801561208c57816020015b61207961505a565b8152602001906001900390816120715790505b5092505f5b828110156120e4576120bf8c5f8d84815181106120b0576120b0615792565b60200260200101518c8c613562565b8482815181106120d1576120d1615792565b6020908102919091010152600101612091565b505f5b8181101561213d576121168c60018c848151811061210757612107615792565b60200260200101518c5f613562565b848483018151811061212a5761212a615792565b60209081029190910101526001016120e7565b5061214b8b84888a896135b1565b9350505097509795505050505050565b5f61216c6040808051918201905290565b905061218661218261217d84610aa3565b61389a565b8252565b611c046121976110a3846020610cdc565b6020830152565b5f6121b38260600151518361014001516138b9565b81516001600160a01b03165f90815260208190526040902054610402908390610b30565b82545f90610100900460ff16156121fe5781156121f7576121f7856138c9565b505f610622565b83546201000090046001600160781b0316801561225957831561222957612224866138da565b612259565b8454600160881b90046001600160781b0316811061225957821561225057612250866138eb565b5f915050610622565b50600195945050505050565b632165628a5f526004601cfd5b33831480156122815750505050565b5f61228a612e58565b61190160f01b5f9081526002828152602287815260428320908390528651939450929190601f601d840116106102e260621984011016156122f4576122cf86886138fc565b61190160f01b5f908152600286905260228281526042822091905290975090506122f7565b50815b612304888285858a613992565b5050505050505050565b5f61231f6040808051918201905290565b9050612330612182610d9d84610aa3565b611c04612197610d9d846020610cdc565b80518060051b6040019050602082038051602082527f4b9f2d36e1b4c93de62cc077b00b1a91d84b6c31b4a14e012718dcca230689e78383a190525050565b8351606090806001600160401b0381111561239d5761239d61574b565b6040519080825280602002602001820160405280156123d657816020015b6123c361505a565b8152602001906001900390816123bb5790505b5091505f5b81811015612439575f8782815181106123f6576123f6615792565b6020026020010151905061241389825f0151836020015185613adb565b84838151811061242557612425615792565b6020908102919091010152506001016123db565b5061244787838787876135b1565b50505b95945050505050565b6124608282610160611b28565b612471610aeb610ae6846040610cdc565b6103dc612482610b01846060610cdc565b6060830152565b6040518135601f0163ffffffe01660200180838337913563ffffffff16815290810160405290565b5f6124c3602060408051918201905290565b5f8152905090565b7f000000000000000000000000000000000000000000000000000000000000000180156125185763929eee145c1561250a57637fa8a9875f526004601cfd5b8160010163929eee145d5050565b63929eee14548061254a5763929eee145c1561253b57637fa8a9875f526004601cfd5b8260010163929eee145d505050565b6001811461255f57637fa8a9875f526004601cfd5b505060020163929eee1455565b5f805f80855f015190506125898160a001518260c0015187613c80565b61259c57505f925082915081905061275d565b602086015160408701516001600160781b0391821694501691505f6004826080015160048111156125cf576125cf615329565b036125fc57600183850218905080156125ea576125ea613ca3565b506001935083925082915061275d9050565b50818311831517801561261157612611613ca3565b608082015160011615848411161561262b5761262b613cb0565b6126348261219e565b5f81815260016020526040812091965061265290879083908a6121d7565b61266557505f935083925061275d915050565b805460ff1661268057612680835f0151878a60600151612272565b8054608881901c8061269457869150612757565b6001600160781b038260101c169150600186036126b8578181039650809550612757565b8086036126d357908601858103868211029096039590612757565b80860296810291909502810186810387821102918290039695919003906001600160781b0386111561275757612717565b5f5b8215610b2657908290069190612706565b61272a6127248784612704565b88612704565b8015019687900496909504946001600160781b0386111561275757634e487b715f5260116020526024601cfd5b50505050505b9250925092565b805182515f5b82811015612853575f84828151811061278557612785615792565b602002602001015190505f815f015190508381106127aa576127aa8260200151613cbd565b5f8782815181106127bd576127bd615792565b6020026020010151905080602001516001600160781b03165f036127e35750505061284b565b80516040808201519085015163bfb3f8ce5f8760200151600181111561280b5761280b615329565b14612827575f61281c856060613cce565b9350636088d7de9150505b8251821061283857805f526004601cfd5b612843838389613cd9565b505050505050505b60010161276a565b505f5b818110156128d6575f85828151811061287157612871615792565b6020026020010151905080602001516001600160781b03165f0361289557506128ce565b8051608081015160608201516128b29085908363a8930e9a613d8c565b6128ca8483604001518363d69293326104da613d8c90565b5050505b600101612856565b5050505050565b60a084015160c08501516040860151515f805b8281101561295a575f8960400151828151811061290f5761290f615792565b602002602001015190505f815f01519050801584179350505f612946826060015183608001518c8c8b8b612941361590565b613df3565b6060830152506080018690526001016128f0565b5060808801516004811082168015612974576129746134ed565b505050506060860151515f5b81811015612304575f8860600151828151811061299f5761299f615792565b602002602001015190505f6129c4826060015183608001518b8b8a8a61294136151590565b60608301525060a0810151608090910152600101612980565b8351608081015160208201513314156001821160049092109190911616156128d6575f80612a12858489608001518988613e2e565b63fb5014fc6060529092509050611a5083602001518684846133df565b5f848152600160205260408120805482908290608881901c80612a5457889150612adc565b6001600160781b038260101c169150808803612a7857908801878111935090612adc565b97880297808802979190910288018781119350906001600160781b038083119089111715612adc57612aaa8883612704565b8015019788900497909104906001600160781b038083119089111715612adc57634e487b715f5260116020526024601cfd5b508215612b15578515612b09576040516310fda3e160e01b8152600481018a905260240160405180910390fd5b5f945050505050610622565b8660881b8160101b1760011782556001945050505050949350505050565b5f83610140015184606001515114612b4d57612b4d612265565b83515f8080612b5c8888613fac565b915091505f8082845f885af16001600160a01b0385165f908152600260205260409020805460018101909155606086901b189550925082612bbb578515612bae57612ba5614056565b612bae8561409d565b505f93506104f192505050565b505050505f805f612bd8876040015188606001516104da6140ae90565b925092509250825f14612bee57612bee8461409d565b60408701919091526060860152509392505050565b6040805160208082528183019092525f916020820181803683375050506040850151519091505f5b81811015612c7b575f86604001518281518110612c4a57612c4a615792565b60200260200101519050846080820152612c7281885f0151896101200151876104da61432790565b50600101612c2b565b50506060840151515f90815b81811015612d09575f87606001518281518110612ca657612ca6615792565b602002602001015190505f6005811115612cc257612cc2615329565b81516005811115612cd557612cd5615329565b03612cf1574793508381606001511115612cf157612cf1613287565b612d00813389886143276104da565b50600101612c87565b5050612d14826119c4565b504780156128d6576128d63382613294565b8251608081015160208201515f92839283928392916004811060019091111633909114151615612d8857612d69612d6361010083015190565b5190565b8861441c565b9093509150612d7a60208201612d5f565b945063fb5014fc9350612dd4565b600481608001516004811115612da057612da0615329565b0361230457805194505f8560601b9050612dc187838b608001518b8561445d565b639397928596509094509250612dd49050565b612dde6060859052565b612dea858785856133df565b5f606052612304565b60608290506060829050856001600160a01b0316876001600160a01b03167f9d9af8e38d66c62e2c12f0225249fd9d721c54b83f48d9352c97c6cacdcb6f318a888686604051612e469493929190615a13565b60405180910390a35050505050505050565b5f7f00000000000000000000000000000000000000000000000000000000000005394614612f10575060408051608080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f5f9081527f32b5c112df393a49218d7552f96b2eeb829dfb4272f4f24eef510a586b85feef6020527f95f740a33d720b7cd93c75d515ac95ca3bbaa2594cce46ea48e00974ea8fcd14855246606090815230845260a08220949095529093529190915290565b507f8bebed3dbe91a82da0dc94c8d370c160ad6db1b32164303e65b8544bae7e2f5590565b63fed398fc5f526004601cfd5b600435602014610224356102401416610244356102606102643560061b01141660186101243510600160a01b60843560a4351760c4356024351717101616806103b0576103b0614528565b5f8181526001602081905260409091209060843590612fb290849084903615156121d7565b50815460ff16610b2657610b268184612fd9602463ffffffff6102443516016124896104da565b612272565b5f612feb8260a4356119f0565b15610402575f805f612ffc86614535565b63fb5014fc6060529194509250905061301c60a43587601c8601856133df565b5f60605260209190910160801b1781529392505050565b604080517f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c60ff60a01b175f90815260208690527f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f83526055600b20919092526001600160a01b031690505f805f805260205f85875f875af191505f519050816130c8576130bf614056565b6130c8836145ed565b6001600160e01b03198116632671a55160e11b146118015761180186846145fe565b6369f958275f52806020526024601cfd5b833b61311257635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af1806131a2573d1561318057601f3d0160051c8260051c8160030281831115613169578183036003028280028480020360091c01015b5a60208201101561317c573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b6131c757635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af18061326c573d1561324b57601f3d0160051c8560051c8160030281831115613234578183036003028280028480020360091c01015b5a602082011015613247573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b638ffff9805f526004601cfd5b61329d81613367565b5f805f805f85875af1905080611a59576132b5614056565b63bc806b965f5282602052816040526044601cfd5b5f6132d6836020015190565b9050818114611a5957611a59836119c4565b5f60208851036133225750604080885260208089018a9052632671a55160e11b918901919091526044880152600160648801819052613331565b50606487018051600101908190525b603c60c082028901038781528660208201528560408201528460608201528360808201528260a082015250505050505050505050565b806103b0576391b3e5145f526004601cfd5b636ab37ce75f526004601cfd5b61338f83613367565b61339981836132ca565b816133aa576117ef86868686614613565b611801828260018989895f8a6132e8565b6064810151604082019060c0026044016133d6848383613033565b50506020905250565b5f806001600160e01b03198451165f805260205f85875f8b5af15f51909350149050816134185761340e614056565b846080526024607cfd5b8061180157846080526024607cfd5b5f8063ffffffff83351690506001810160051b61344a8160408051918201905290565b9250613457848483611b28565b5050919050565b5f82840361346d5750806104f1565b82848309156134835763c63cf0895f526004601cfd5b5f61348e8584615aaf565b93909304949350505050565b5f8486146134e357838303428590038082035f6134b7838a615aaf565b6134c1838c615aaf565b6134cb91906159c7565b9050858487830304018115150294505050505061244a565b5092949350505050565b6312d3f5a35f526004601cfd5b8451608081015160208201515f92916004811060019091111633909114151615610f50575f8061353187848b608001518b8a613e2e565b9150915061354b836020015188848463fb5014fc8a614707565b935050505061244a565b63d5da9a1b5f526004601cfd5b61356a61505a565b83515f0361357b5761357b85614774565b5f85600181111561358e5761358e615329565b036135a45761359f86858385614785565b61244a565b61244a86858333876148f5565b84516060905f816001600160401b038111156135cf576135cf61574b565b6040519080825280602002602001820160405280156135f8578160200160208202803683370190505b506040805160208082528183019092529192505f9190602082018180368337505089519192505060010160051b60205b81811015613687575f61363e8b83613cce6104da565b8051606081015191925090801561367c57478111825115161561366857638ffff9805f526004601cfd5b61367c828460200151856040015189614327565b505050602001613628565b50505f5b838110156137f3575f8a82815181106136a6576136a6615792565b6020026020010151905080602001516001600160781b03165f036136ed575f8483815181106136d7576136d7615792565b91151560209283029190910190910152506137eb565b600184838151811061370157613701615792565b911515602092830291909101909101528051604081015180515f5b81811015613786575f83828151811061373757613737615792565b6020026020010151905080606001515f1461377357608081018051908e9052855161012087015161376d9184918c6143276104da565b60808201525b608081015160609091015260010161371c565b505050606081015180515f5b818110156137e5575f8382815181106137ad576137ad615792565b602002602001015190505f81606001519050805f146137d1576137d1888483614a2c565b5060a0810151606090910152600101613792565b50505050505b60010161368b565b506137fd816119c4565b47801561380e5761380e3382613294565b8515613884575f5b848110156138825783818151811061383057613830615792565b60200260200101511561387a5761387a8b828151811061385257613852615792565b60200260200101518a8b848151811061386d5761386d615792565b6020026020010151612d26565b600101613816565b505b61388c611a5e565b509098975050505050505050565b5f6138ad61016060408051918201905290565b9050611c048282612453565b808210156103dc576103dc614a45565b631a5155745f52806020526024601cfd5b63ee9e0e635f52806020526024601cfd5b6310fda3e15f52806020526024601cfd5b5f805f84516001811660410380820360051c9250808752806020018701915050805160e81c6003820191506001811660051b868152825160208218525060015b838110156139685760405f2082821c60051b60209081169182529384018051919094185260010161393c565b50505060405f2091505f61397b82614a52565b5f9081526020939093525050604090209392505050565b5f805f528151602083038051826041035f600182116139f557604087015160608801515f1a83156139d657601b8260ff1c0190506001600160ff1b03821660408a01525b88528a855260205f60808760015afa508385528588526040880152505f515b8a148a1515169450849050613abe57858552604082526044850380516040870351630b135d3f60e11b835289604089035260205f60648b01858f5afa96508615613ab257630b135d3f60e11b5f5114613ab2578b3b15613a5c57634f7fb80d5f526004601cfd5b6001866041031115613a7557638baa579f5f526004601cfd5b64010100000060608901515f1a1a15604187141615613aa557631f003d0a5f5260608801515f1a6020526024601cfd5b63815e1d645f526004601cfd5b8385529152603f198601525b5050508061180157613ace614056565b634f7fb80d5f526004601cfd5b613ae361505a565b8251158451151715613afc576398e9db6e5f526004601cfd5b613b0461505a565b613b118685835f806148f5565b805160608101515f03613b2657509050610622565b613b368787858460800151614785565b82516040828101519082015160208085015190840151855185511891181791181715613b6d5763bced929d5f52846020526024601cfd5b806060015182606001511115613bf4575f865f81518110613b9057613b90615792565b60200260200101519050816060015183606001510389825f015181518110613bba57613bba615792565b60200260200101515f015160600151826020015181518110613bde57613bde615792565b6020026020010151606001818152505050613c75565b5f875f81518110613c0757613c07615792565b60200260200101519050826060015182606001510389825f015181518110613c3157613c31615792565b60200260200101515f015160400151826020015181518110613c5557613c55615792565b602002602001015160600181815250508260600151826060018181525050505b505050949350505050565b428084111590831116818015613c94575080155b156104f1576104f18484614e61565b635a052b325f526004601cfd5b63a11b63ff5f526004601cfd5b63133c37c65f52806020526024601cfd5b5f6104f18284015190565b5f838381518110613cec57613cec615792565b602002602001015190505f815f01519050613d078160031090565b613d1357613d13614e76565b60408201518015613d3657613d318460600151828660800151614e83565b613d49565b60808401515115613d4957613d49614ecd565b6004821460030383816005811115613d6357613d63615329565b90816005811115613d7657613d76615329565b9052505050606090920151604090910152505050565b82515f5b81811015611801575f858281518110613dab57613dab615792565b60209081029190910101518051604082015191925090600382116004881415821515171615613de557855f5288602052836040526044601cfd5b505050806001019050613d90565b5f868803613e0d57613e0686868961345e565b90506107df565b6107dc613e1b87878b61345e565b613e2688888b61345e565b86868661349a565b5f805f613e39614eda565b6301e4d72a815260208082015260408101898152336060830152601c820194509091508751604082015287613e79613e7260a083015190565b60e0840152565b613e8f613e8760c083015190565b610100840152565b613ea5613e9d60e083015190565b610120840152565b610140613eb3816060850152565b5f613ebf604084015190565b90505f613ece82848701614ee4565b928301929050613edf836080870152565b5f613eeb606086015190565b90505f613efa82868901614f4a565b948501949050613f0b8560a0890152565b5f613f188e878a01614faf565b959095019450613f298560c0890152565b8685015f613f378e83614fce565b602497019687019a50613f539050613f4e8c8c0190565b614ffe565b8060408b901b60808b901b17178f610100018181525050613f7d8c82611b8090919063ffffffff16565b60058c8e51613f8c91906159b4565b613f97911b8b6159b4565b99505050505050505050509550959350505050565b5f8083613fb7614eda565b639891976581523360208201908152608060408301819052601c9092019450905f613fe3604085015190565b90505f613ff282848601614ee4565b928301929050614003836040860152565b5f61400f606087015190565b90505f61401e82868801614ee4565b94850194905061402f856060880152565b895f61403d82898901614faf565b9a9d96909a016004019b50949950505050505050505050565b3d1561409b57601f3d0160051c60405160051c8160030281831115614088578183036003028280028480020360091c01015b5a602082011015611a59573d5f803e3d5ffd5b565b63939792855f52806020526024601cfd5b60603d105f8080808080866141205760405f803e5f51935060205192503d60208501113d60208501118082179850505086614120576020845f3e5f51915060208360203e60205190508160071b60208501018160a0026020850101803d10823d101761ffff8486171117985050505f80525b86614152575f8061413584602088018d61415b565b9250975061414783602087018c61423b565b929092179850909550505b5050505061275d565b5f806040519150825160c08602602001830160405285835260208660010160051b8085018360010160051b8701614199858b81811090829003020190565b60010160051b8a861196505b808510156141f957828589015260808a843e6060830151955085608084015260608201518681116141d685856142e2565b17881797505060808a01995060a08301925060a0820191506020850194506141a5565b50505b8183101561422f578083870152608088823e6060810151608082015260808801975060a0810190506020830192506141fc565b50505050935093915050565b604051815180851190808603818710028101602060e08202850181016040528185526001928301600590811b87019390920190911b908185015b8282101561422f57808287015260a088823e60206060890160a083013e606081015160608501516142b26080840151608088015180159114171590565b818311176142c084886142e2565b60a09b909b019a179690961795505060c0938401936020929092019101614275565b5f81516040830151801560038311161561430457506040840151600119909101905b604085015181148551831460208701516020870151141616159250505092915050565b5f8451600581111561433b5761433b615329565b0361437857604084015160208501516001600160a01b0316171561436157614361613379565b61437384608001518560600151613294565b614416565b60018451600581111561438d5761438d615329565b036143be576040840151156143a4576143a4613379565b614373846020015184866080015187606001518686613386565b6002845160058111156143d3576143d3615329565b036143f7576143738460200151848660800151876040015188606001518787611889565b61441684602001518486608001518760400151886060015187876118d4565b50505050565b608082901c63ffffffff604084901c811690808516906144449084906317b1f94290611b8016565b601c830192506144548482614fce565b50509250929050565b5f80614467614eda565b63f4dd92ce815287841860a0820152601c8101925060200160a0808252875f614491604083015190565b90505f6144a082858701614ee4565b9384019390506144b1846020870152565b5f6144bd606085015190565b90505f6144cc82878901614f4a565b9586019590506144dd866040890152565b5f6144ea8d888a01614faf565b9687019690506144fb8760608a0152565b5f6145088d898b01614fce565b905080880197508760040199505050505050505050509550959350505050565b6339f3e3fd5f526004601cfd5b6301e4d72a6102043560051b6080019081525f808260208082015260408101858152336060830152601c919091019061456f608435610aeb565b61458061014460e083016060611b28565b61014061458e816060840152565b61459c60a082016080840152565b61016060a06102643581029290920101906145b8908290840152565b6145c25f82840152565b6020016145d08160c0840152565b5f9181019182526020820196909652939560449095019492505050565b63d13d53d45f52806020526024601cfd5b631cf99b265f5281602052806040526044601cfd5b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166146f85780873b1515166146f857806146e757816146ca573d156146a957601f3d0160051c8360051c8160030281831115614692578183036003028280028480020360091c01015b5a6020820110156146a5573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b5f805f6001600160e01b03198751165f805260205f888a5f8e5af15f5190935014905081614753578361473e575f925050506106d7565b614746614056565b845f52876020526024601cfd5b8061476557845f52876020526024601cfd5b50600198975050505050505050565b63375c24c15f52806020526024601cfd5b5f805f85865160051b87015b808210156148a2576020820191508851825151106147b1576147b16148d6565b81515160051b60208a01015180516020845101515f6040830151602085015115815184101517156147e6575050505050614791565b8260051b60208201015191505060608101935083518901915083511589831060011b17881797508198505f84528a51935086156001811461484f5760608220881860408d01516101208601511860208e015186511817171561484a5761484a6148d6565b614898565b8151855260208201516020860152604082015160408601528a6080860152835160208d015261012084015160408d015260608520975060208d0192508683181561489857865183525b5050505050614791565b5050508160608551015280156148cf57600181036148c7576391b3e5145f526004601cfd5b6148cf6148e3565b5050614416565b637fda72795f526004601cfd5b634e487b715f5260116020526024601cfd5b5f805f86875160051b88015b808210156149f7576020820191508151518a518110614922576149226148d6565b8060051b60208c01015190506020835101515f606083510151602084015115815184101517156149555750505050614901565b8260051b60208201015191505060608101925082518801915082511588831060011b17871796508197505f83528a5192508515600181146149a75760a0822087146149a2576149a26148d6565b6149ee565b815184526020820151602085015260408201516040850152608082015160808501528a60208d01528960408d015260a08220965060208d019250858318156149ee57855183525b50505050614901565b50508551606001839052508015614a255760018103614a1d576391b3e5145f526004601cfd5b614a256148e3565b50506128d6565b63a5f542085f528260205281604052806060526064601cfd5b63466aa6165f526004601cfd5b5f614e58565b5f6009821015614bb1576005821015614b0e576003821015614ac1577f832c58a5b611aadcfa6a082ac9d04bace53d8278387f10040347b7e98eb5b30260018314027fbf8e29b89f29ed9b529c154a63038ffca562f8d7cd1e2545dda53a1b582dde3018610402565b7ff3e8417a785f980bdaf134fa0274a6bf891eeb8195cd94b09d2aa651046e28bc60038314027fa02eb7ff164c884e5e2c336dc85f81c6a93329d8e9adf214b32729b894de2af118610402565b6007821015614b64577f25d02425402d882d211a7ab774c0ed6eca048c4d03d9af40132475744753b2a360058314027f1c19f71958cdd8f081b4c31f7caf5c010b29d12950be2fa1c95070dc47e30b5518610402565b7fb58d772fb09b426b9dece637f61ca9065f2b994f1464b51e9207f55f7c8f594860078314027f7ff98d9d4e55d876c5cfac10b43c04039522f3ddfb0ea9bfe70c68cfb5c7cc1418610402565b6011821015614d0957600d821015614c6657600b821015614c19577f6f0ec38c21f6f583ab7f3c5413c773ffd5344c34fde1d390958e438bf667448f60098314027fd1d97d1ef5eaa37a4ee5fbf234e6f6d64eb511eb562221cd7edfbdde0848da0518610402565b7f32f4e7485d6485f9f6c255929b9905c62ba919758bbe231f231eaeecf33d810c600b8314027fbb98d87cc12922b83759626c5f07d72266da9702d19ffad6a514c73a89002f5f18610402565b600f821015614cbc577f8df51df98847160517f5b1186b4bc3f418d98b8a7f17f1292f392d79d600d79e600d8314027f6b5b04cbae4fcb1a9d78e7b2dfc51a36933d023cf6e347e03d517b472a85259018610402565b7fcc4886e37eedd9aacd6c1c2c9247197a621a71282e87a7cbc673f3736d9aa141600f8314027f1da3eed3ecef6ebaa6e5023c057ec2c75150693fd0dac5c90f4a142f9879fde818610402565b6015821015614db5576013821015614d68577f2d7a3ed6dab270fdb8e054b2ad525f0ce2a8b89cc76c17f0965434740f673a5560118314027fc3939feff011e53ab8c35ca3370aad54c5df1fc2938cd62543174fa6e7d8587718610402565b7f54b3212a178782f104e0d514b41a9a5c4ca9c980bf6597c3cecbf280917e202a60138314027f5a4f867d3d458dabecad65f6201ceeaba0096df2d0c491cc32e6ea4e6435001718610402565b6017821015614e0b577fbb40bf8cea3a5a716e2b6eb08bbdac8ec159f82f380783db3c56904f15a43d0460158314027f3bd8cff538aba49a9c374c806d277181e9651624b3e31111bc0624574f8bca1d18610402565b7f403be09941a31d05cfc2f896505811353d45d38743288b016630cce39435476a60178314027f1d51df90cba8de7637ca3e8fe1e3511d1dc2f23487d05dbdecb781860c21ac1c18610402565b61040282614a58565b6321ccfeb75f5281602052806040526044601cfd5b6394eb6af65f526004601cfd5b5f835f5260205f2060208301835160051b81015b80821015614ebe57815180841160051b93845260209384185260405f209290910190614e97565b50508314905080614416576144165b6309bde3395f526004601cfd5b5f61041260405190565b5f825180835260208401602084018260051b82015b80831015614f375782518051835260208101516020840152604081015160408401526060810151606084015250602083019250608082019150614ef9565b5050508060071b60200191505092915050565b5f80614f54845190565b8084529050602084810190600583901b860181019085015b82821115614f9c575f614f7e84615008565b9050614f8c818360a0615011565b506020929092019160a001614f6c565b60a0840260200194505050505092915050565b5f63ffffffe0603f614fbf855190565b01169050610402838383615011565b5f80614fd8845190565b8084529050600581901b614ff3602086810190860183615011565b602001949350505050565b6103b06040829052565b5f610402825190565b8082828560045afa80153d151715614416575f80fd5b6040518060a0016040528061503a61509c565b81525f602082018190526040820152606080820181905260809091015290565b60408051610100810182525f606082018181526080830182905260a0830182905260c0830182905260e083018290528252602082018190529181019190915290565b6040518061016001604052805f6001600160a01b031681526020015f6001600160a01b0316815260200160608152602001606081526020015f60048111156150e6576150e6615329565b81525f6020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b5f60208284031215615125575f80fd5b81356001600160401b0381111561513a575f80fd5b820161024081850312156104f1575f80fd5b5f81518084525f5b8181101561517057602081850181015186830182015201615154565b505f602082860101526020601f19601f83011685010191505092915050565b602081525f6104f1602083018461514c565b5f602082840312156151b1575f80fd5b5035919050565b5f602082840312156151c8575f80fd5b81356001600160401b038111156151dd575f80fd5b820161016081850312156104f1575f80fd5b5f8083601f8401126151ff575f80fd5b5081356001600160401b03811115615215575f80fd5b6020830191508360208260051b850101111561522f575f80fd5b9250929050565b80356001600160a01b0381168114611c04575f80fd5b5f805f805f805f805f805f60e08c8e031215615266575f80fd5b6001600160401b03808d35111561527b575f80fd5b6152888e8e358f016151ef565b909c509a5060208d013581101561529d575f80fd5b6152ad8e60208f01358f016151ef565b909a50985060408d01358110156152c2575f80fd5b6152d28e60408f01358f016151ef565b909850965060608d01358110156152e7575f80fd5b506152f88d60608e01358e016151ef565b909550935060808c0135925061531060a08d01615236565b915060c08c013590509295989b509295989b9093969950565b634e487b7160e01b5f52602160045260245ffd5b60068110611b8057611b80615329565b61535882825161533d565b6020818101516001600160a01b0390811691840191909152604080830151908401526060808301519084015260809182015116910152565b5f815180845260208085019450602084015f5b838110156153e55781516153b888825161534d565b808401516001600160a01b031660a08901526040015160c088015260e090960195908201906001016153a3565b509495945050505050565b604080825283519082018190525f906020906060840190828701845b8281101561542a57815115158452928401929084019060010161540c565b50505083810360208501526106d78186615390565b5f8060208385031215615450575f80fd5b82356001600160401b03811115615465575f80fd5b615471858286016151ef565b90969095509350505050565b5f805f8060408587031215615490575f80fd5b84356001600160401b03808211156154a6575f80fd5b6154b2888389016151ef565b909650945060208701359150808211156154ca575f80fd5b506154d7878288016151ef565b95989497509550505050565b602081525f6104f16020830184615390565b5f60208284031215615505575f80fd5b6104f182615236565b5f806040838503121561551f575f80fd5b82356001600160401b03811115615534575f80fd5b830160408186031215615545575f80fd5b946020939093013593505050565b5f805f805f60808688031215615567575f80fd5b85356001600160401b038082111561557d575f80fd5b9087019060a0828a031215615590575f80fd5b909550602087013590808211156155a5575f80fd5b506155b2888289016151ef565b909550935050604086013591506155cb60608701615236565b90509295509295909350565b5f805f805f805f8060a0898b0312156155ee575f80fd5b88356001600160401b0380821115615604575f80fd5b6156108c838d016151ef565b909a50985060208b0135915080821115615628575f80fd5b6156348c838d016151ef565b909850965060408b013591508082111561564c575f80fd5b506156598b828c016151ef565b999c989b509699959896976060870135966080013595509350505050565b5f805f805f805f6080888a03121561568d575f80fd5b87356001600160401b03808211156156a3575f80fd5b6156af8b838c016151ef565b909950975060208a01359150808211156156c7575f80fd5b6156d38b838c016151ef565b909750955060408a01359150808211156156eb575f80fd5b506156f88a828b016151ef565b909450925061570b905060608901615236565b905092959891949750929550565b606081525f61572b606083018661514c565b6020830194909452506001600160a01b0391909116604090910152919050565b634e487b7160e01b5f52604160045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b5f8261578d57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f815180845260208085019450602084015f5b838110156153e55781516157ce88825161533d565b838101516001600160a01b03168885015260408082015190890152606080820151908901526080908101519088015260a090960195908201906001016157b9565b5f815180845260208085019450602084015f5b838110156153e557815161583788825161533d565b808401516001600160a01b0390811689860152604080830151908a0152606080830151908a0152608080830151908a015260a091820151169088015260c09096019590820190600101615822565b60058110611b8057611b80615329565b828152604060208201526158b56040820183516001600160a01b03169052565b5f60208301516158d060608401826001600160a01b03169052565b5060408301516101608060808501526158ed6101a08501836157a6565b91506060850151603f198584030160a086015261590a838261580f565b925050608085015161591f60c0860182615885565b5060a085015160e085015260c0850151610100818187015260e0870151915061012082818801528188015192506101409150828288015280880151848801525080870151610180870152505050809150509392505050565b5f823561015e1983360301811261598c575f80fd5b9190910192915050565b5f602082840312156159a6575f80fd5b8135600581106104f1575f80fd5b818103818111156104025761040261575f565b808201808211156104025761040261575f565b5f815180845260208085019450602084015f5b838110156153e557615a0087835161534d565b60a09690960195908201906001016159ed565b5f6080808301878452602060018060a01b03808916602087015260406080604088015283895180865260a08901915060208b0195505f5b81811015615a8b578651615a5f84825161533d565b808701518616848801528481015185850152606090810151908401529585019591870191600101615a4a565b50508781036060890152615a9f818a6159da565b9c9b505050505050505050505050565b80820281158282048414176104025761040261575f56fea164736f6c6343000818000a","storage":{}},"0x6265cc8d1b28edfd4d76c80bf774c0d446fffbde":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610090575f3560e01c80633f15457f116100635780633f15457f1461010f5780637adbf973146101225780637dc0d1d0146101355780638bbedf7514610147578063be27b22c1461015a575f80fd5b806301ffc9a7146100945780631ecfc411146100bc578063224199c2146100d157806330349ebe146100e4575b5f80fd5b6100a76100a23660046115b1565b61016d565b60405190151581526020015b60405180910390f35b6100cf6100ca3660046115ef565b6101a3565b005b6100cf6100df3660046117e0565b6102de565b6002546100f7906001600160a01b031681565b6040516001600160a01b0390911681526020016100b3565b6001546100f7906001600160a01b031681565b6100cf6101303660046115ef565b61063c565b5f546100f7906001600160a01b031681565b6100cf610155366004611889565b61076d565b6100cf61016836600461190b565b6107f1565b5f6001600160e01b031982166301ffc9a760e01b148061019d57506001600160e01b031982166317d8f49b60e01b145b92915050565b6001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa1580156101ea573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061020e919061196b565b90505f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561024d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610271919061196b565b9050336001600160a01b03821614610287575f80fd5b600280546001600160a01b0319166001600160a01b0385169081179091556040519081527f9176b7f47e4504df5e5516c99d90d82ac7cbd49cc77e7f22ba2ac2f2e3a3eba8906020015b60405180910390a1505050565b5f546040516321ae60b160e11b81526001600160a01b039091169063435cc1629061030f90879087906004016119d3565b5f604051808303815f875af115801561032a573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526103519190810190611a6b565b92505f805f610360888761088b565b91945092509050336001600160a01b038216146103da5760405162461bcd60e51b815260206004820152602d60248201527f4f6e6c79206f776e65722063616e2063616c6c2070726f7665416e64436c616960448201526c36abb4ba342932b9b7b63b32b960991b60648201526084015b60405180910390fd5b6001600160a01b038416156105bb576001600160a01b03851661044e5760405162461bcd60e51b815260206004820152602660248201527f43616e6e6f74207365742061646472206966207265736f6c766572206973206e6044820152651bdd081cd95d60d21b60648201526084016103d1565b6001546040516305ef2c7f60e41b815260048101859052602481018490523060448201526001600160a01b0387811660648301525f608483015290911690635ef2c7f09060a4015f604051808303815f87803b1580156104ac575f80fd5b505af11580156104be573d5f803e3d5ffd5b505050505f83836040516020016104df929190918252602082015260400190565b60408051808303601f1901815290829052805160209091012062d5fa2b60e81b8252600482018190526001600160a01b03878116602484015290925087169063d5fa2b00906044015f604051808303815f87803b15801561053e575f80fd5b505af1158015610550573d5f803e3d5ffd5b5050600154604051635b0fc9c360e01b8152600481018590526001600160a01b0386811660248301529091169250635b0fc9c391506044015f604051808303815f87803b15801561059f575f80fd5b505af11580156105b1573d5f803e3d5ffd5b5050505050610632565b6001546040516305ef2c7f60e41b815260048101859052602481018490526001600160a01b03838116604483015287811660648301525f608483015290911690635ef2c7f09060a4015f604051808303815f87803b15801561061b575f80fd5b505af115801561062d573d5f803e3d5ffd5b505050505b5050505050505050565b6001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa158015610683573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106a7919061196b565b90505f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106e6573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061070a919061196b565b9050336001600160a01b03821614610720575f80fd5b5f80546001600160a01b0319166001600160a01b0385169081179091556040519081527fb3eacd0e351fafdfefdec84e1cd19679b38dbcd63ea7c2c24da17fd2bc3b3c0e906020016102d1565b5f546040516321ae60b160e11b81526001600160a01b039091169063435cc1629061079e90859085906004016119d3565b5f604051808303815f875af11580156107b9573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526107e09190810190611a6b565b90506107ec83826107f1565b505050565b5f805f6107fe858561088b565b6001546040516306ab592360e01b815260048101859052602481018490526001600160a01b03808416604483015294975092955090935091909116906306ab5923906064016020604051808303815f875af115801561085f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108839190611add565b505050505050565b5f8080806108998682610a40565b60ff1690506108aa86600183610a63565b92505f6108dc6108bb836001611b08565b6001848a516108ca9190611b1b565b6108d49190611b1b565b899190610a85565b6002546040516327c482cf60e11b81529192506001600160a01b031690634f89059e9061090d908490600401611b2e565b602060405180830381865afa158015610928573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061094c9190611b40565b6109a45760405162461bcd60e51b815260206004820152602360248201527f506172656e74206e616d65206d7573742062652061207075626c6963207375666044820152620ccd2f60eb1b60648201526084016103d1565b6109ae815f610b05565b5f549095506109c7906001600160a01b03168888610de3565b5060408051602081018890529081018690529093506001600160a01b03841690606001604051602081830303815290604052805190602001207fa2e66ce20e6fb2c4f61339c364ad79f15160cf5307230c8bc4d628adbca2ba3989604051610a2f9190611b2e565b60405180910390a350509250925092565b5f828281518110610a5357610a53611b5f565b016020015160f81c905092915050565b82515f90610a718385611b08565b1115610a7b575f80fd5b5091016020012090565b8251606090610a948385611b08565b1115610a9e575f80fd5b5f8267ffffffffffffffff811115610ab857610ab861160a565b6040519080825280601f01601f191660200182016040528015610ae2576020820181803683370190505b50905060208082019086860101610afa82828761100b565b509095945050505050565b5f80610b118484610a40565b60ff169050805f03610b2657505f905061019d565b5f610b4585610b358487611b08565b610b40906001611b08565b610b05565b90505f610b5e610b56866001611b08565b879085610a63565b604080516020810185905290810182905290915060600160408051808303601f190181529082905280516020909101206001546302571be360e01b8352600483018290529095505f916001600160a01b03909116906302571be390602401602060405180830381865afa158015610bd7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bfb919061196b565b90506001600160a01b0381161580610c1b57506001600160a01b03811630145b610c7a5760405162461bcd60e51b815260206004820152602a60248201527f43616e6e6f7420656e61626c652061206e616d65206f776e656420627920736f6044820152696d656f6e6520656c736560b01b60648201526084016103d1565b6001600160a01b0381163014610dd95782610d5e576001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa158015610cd6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cfa919061196b565b60405163232e3b3b60e21b8152600481018590523060248201529091506001600160a01b03821690638cb8ecec906044015f604051808303815f87803b158015610d42575f80fd5b505af1158015610d54573d5f803e3d5ffd5b5050505050610dd9565b6001546040516306ab592360e01b815260048101859052602481018490523060448201526001600160a01b03909116906306ab5923906064016020604051808303815f875af1158015610db3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610dd79190611add565b505b5050505092915050565b5f80610e016040518060400160405280606081526020015f81525090565b610e1985516005610e129190611b08565b8290611060565b50604080518082019091526005815264045f656e7360d81b6020820152610e419082906110c3565b50610e4c81866110c3565b50805160405163021e646f60e21b81525f9182916001600160a01b038a169163087991bc91610e8091601091600401611b73565b606060405180830381865afa158015610e9b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ebf9190611ba7565b93509150506bffffffffffffffffffffffff198216158015610ee057508551155b15610ef3575f8094509450505050611003565b855160208701206bffffffffffffffffffffffff19838116911614610f16575f80fd5b5f610f2187826110ef565b90505b80515160208201511015610ff857610f4b816080015183610f459190611bfc565b4261114a565b610fbd5760405162461bcd60e51b815260206004820152603c60248201527f444e53207265636f7264206973207374616c653b2072656672657368206f722060448201527f64656c657465206974206265666f72652070726f63656564696e672e0000000060648201526084016103d1565b5f80610fcd898460a00151611162565b925090508115610fe857965060019550611003945050505050565b5050610ff3816111d1565b610f24565b505f80945094505050505b935093915050565b602081106110435781518352611022602084611b08565b925061102f602083611b08565b915061103c602082611b1b565b905061100b565b905182516020929092036101000a5f190180199091169116179052565b60408051808201909152606081525f602082015261107f602083611c20565b156110a75761108f602083611c20565b61109a906020611b1b565b6110a49083611b08565b91505b506020828101829052604080518085525f815290920101905290565b60408051808201909152606081525f60208201526110e883845f0151518485516112b6565b9392505050565b6111376040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261019d816111d1565b5f806111568385611c3f565b60030b12159392505050565b5f805b83518310156111c4575f6111798585610a40565b60ff169050611189600185611b08565b93505f8061119887878561139c565b9250905081156111b0579350600192506111ca915050565b6111ba8387611b08565b9550505050611165565b505f9050805b9250929050565b60c081015160208201819052815151116111e85750565b5f6111fa825f015183602001516113f5565b82602001516112099190611b08565b82519091506112189082611454565b61ffff16604083015261122c600282611b08565b825190915061123b9082611454565b61ffff16606083015261124f600282611b08565b825190915061125e908261147a565b63ffffffff166080830152611274600482611b08565b82519091505f906112859083611454565b61ffff169050611296600283611b08565b60a0840181905291506112a98183611b08565b60c0909301929092525050565b60408051808201909152606081525f602082015282518211156112d7575f80fd5b60208501516112e68386611b08565b11156113195761131985611309876020015187866113049190611b08565b6114a2565b611314906002611c66565b6114b8565b5f808651805187602083010193508088870111156113375787860182525b505050602084015b602084106113775780518252611356602083611b08565b9150611363602082611b08565b9050611370602085611b1b565b935061133f565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b5f806113a8858561147a565b63ffffffff1663613d3078146113c257505f905080611003565b602c8310156113d557505f905080611003565b6113e9856113e4866004611b08565b6114d5565b91509150935093915050565b5f815b8351811061140857611408611c7d565b5f6114138583610a40565b60ff169050611423816001611b08565b61142d9083611b08565b9150805f0361143c5750611442565b506113f8565b61144c8382611b1b565b949350505050565b81515f90611463836002611b08565b111561146d575f80fd5b50016002015161ffff1690565b81515f90611489836004611b08565b1115611493575f80fd5b50016004015163ffffffff1690565b5f818311156114b257508161019d565b50919050565b81516114c48383611060565b506114cf83826110c3565b50505050565b5f8060288385516114e69190611b1b565b10156114f657505f9050806111ca565b5f835b611504856028611b08565b8110156115a55760049190911b905f61151d8783610a40565b60ff169050603081101580156115335750603a81105b1561154c57611543603082611b1b565b8317925061159c565b6041811015801561155d5750604781105b1561156d57611543603782611b1b565b6061811015801561157e5750606781105b1561158e57611543605782611b1b565b5f80945094505050506111ca565b506001016114f9565b50946001945092505050565b5f602082840312156115c1575f80fd5b81356001600160e01b0319811681146110e8575f80fd5b6001600160a01b03811681146115ec575f80fd5b50565b5f602082840312156115ff575f80fd5b81356110e8816115d8565b634e487b7160e01b5f52604160045260245ffd5b6040805190810167ffffffffffffffff811182821017156116415761164161160a565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156116705761167061160a565b604052919050565b5f67ffffffffffffffff8211156116915761169161160a565b50601f01601f191660200190565b5f82601f8301126116ae575f80fd5b81356116c16116bc82611678565b611647565b8181528460208386010111156116d5575f80fd5b816020850160208301375f918101602001919091529392505050565b5f82601f830112611700575f80fd5b8135602067ffffffffffffffff8083111561171d5761171d61160a565b8260051b61172c838201611647565b9384528581018301938381019088861115611745575f80fd5b84880192505b858310156117d457823584811115611761575f80fd5b88016040818b03601f1901811315611777575f80fd5b61177f61161e565b878301358781111561178f575f80fd5b61179d8d8a8387010161169f565b8252509082013590868211156117b1575f80fd5b6117bf8c898486010161169f565b8189015284525050918401919084019061174b565b98975050505050505050565b5f805f805f60a086880312156117f4575f80fd5b853567ffffffffffffffff8082111561180b575f80fd5b61181789838a0161169f565b9650602088013591508082111561182c575f80fd5b61183889838a016116f1565b9550604088013591508082111561184d575f80fd5b5061185a8882890161169f565b935050606086013561186b816115d8565b9150608086013561187b816115d8565b809150509295509295909350565b5f805f6060848603121561189b575f80fd5b833567ffffffffffffffff808211156118b2575f80fd5b6118be8783880161169f565b945060208601359150808211156118d3575f80fd5b6118df878388016116f1565b935060408601359150808211156118f4575f80fd5b506119018682870161169f565b9150509250925092565b5f806040838503121561191c575f80fd5b823567ffffffffffffffff80821115611933575f80fd5b61193f8683870161169f565b93506020850135915080821115611954575f80fd5b506119618582860161169f565b9150509250929050565b5f6020828403121561197b575f80fd5b81516110e8816115d8565b5f5b838110156119a0578181015183820152602001611988565b50505f910152565b5f81518084526119bf816020860160208601611986565b601f01601f19169290920160200192915050565b5f60408083016040845280865180835260608601915060608160051b870101925060208089015f5b83811015611a4b57888603605f1901855281518051888852611a1f898901826119a8565b9185015188830389870152919050611a3781836119a8565b9750505093820193908201906001016119fb565b505086840381880152505050611a6181866119a8565b9695505050505050565b5f60208284031215611a7b575f80fd5b815167ffffffffffffffff811115611a91575f80fd5b8201601f81018413611aa1575f80fd5b8051611aaf6116bc82611678565b818152856020838501011115611ac3575f80fd5b611ad4826020830160208601611986565b95945050505050565b5f60208284031215611aed575f80fd5b5051919050565b634e487b7160e01b5f52601160045260245ffd5b8082018082111561019d5761019d611af4565b8181038181111561019d5761019d611af4565b602081525f6110e860208301846119a8565b5f60208284031215611b50575f80fd5b815180151581146110e8575f80fd5b634e487b7160e01b5f52603260045260245ffd5b61ffff83168152604060208201525f61144c60408301846119a8565b805163ffffffff81168114611ba2575f80fd5b919050565b5f805f60608486031215611bb9575f80fd5b611bc284611b8f565b9250611bd060208501611b8f565b915060408401516bffffffffffffffffffffffff1981168114611bf1575f80fd5b809150509250925092565b63ffffffff818116838216019080821115611c1957611c19611af4565b5092915050565b5f82611c3a57634e487b7160e01b5f52601260045260245ffd5b500690565b600382810b9082900b03637fffffff198112637fffffff8213171561019d5761019d611af4565b808202811582820484141761019d5761019d611af4565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{"0x0":"0x9b2565a3545a1312bdcb6e7148a7f7cae8c2706b","0x1":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0x2":"0x287dee389caaa49edc112888f2bcfd927b472e25"}},"0x62b11ad5f582a5c5d378fb310125b030042554f1":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106103af5760003560e01c80637e37479e116101f4578063ba5d40b71161011a578063e985e9c5116100ad578063f5c1f76e1161007c578063f5c1f76e146108d8578063f7df5c60146108eb578063f8c8765e146108fe578063ffa1ad741461091157600080fd5b8063e985e9c51461087a578063ebf0c717146108b6578063ec129eea146108bd578063f25eb5c1146108d057600080fd5b8063c87b56dd116100e9578063c87b56dd1461082e578063ce92b33e14610841578063cf2c52cb14610854578063d9548e531461086757600080fd5b8063ba5d40b7146107b3578063baef73e9146107c6578063bb5b27e114610808578063bebec6b41461081b57600080fd5b8063a22cb46511610192578063ac9650d811610161578063ac9650d81461074c578063b3f9e4cb1461076c578063b85afd281461077f578063b88d4fde146107a057600080fd5b8063a22cb465146106e7578063a3f4df7e146106fa578063a424740014610726578063ab3b87fe1461073957600080fd5b80639508b1c4116101ce5780639508b1c4146106b15780639559c0bd146106c457806395d89b41146106cc57806399e0dd7c146106d457600080fd5b80637e37479e146106785780637eee288d1461068b57806394d008ef1461069e57600080fd5b806342842e0e116102d95780635096023911610277578063663f7b2a11610246578063663f7b2a14610610578063672b9f81146106235780636ccbae5f1461064457806370a082311461066557600080fd5b806350960239146105bb578063572b6c05146105ce5780636352211e146105ea578063638e5c78146105fd57600080fd5b806347c81699116102b357806347c816991461056f5780634a72584d146105825780634f558e791461059557806350382c1a146105a857600080fd5b806342842e0e1461053657806342966c6814610549578063430c20811461055c57600080fd5b80631bf7e13e1161035157806327f189751161032057806327f18975146104ea578063310bd74b146104fd5780633f72ec6e1461051057806340c10f191461052357600080fd5b80631bf7e13e146104905780631f71be06146104a357806323b872dd146104b6578063276fabb1146104c957600080fd5b8063095ea7b31161038d578063095ea7b31461041c578063150b7a02146104315780631bd8cc1a1461045d5780631be5e7ed1461047d57600080fd5b806301ffc9a7146103b457806306fdde03146103dc578063081812fc146103f1575b600080fd5b6103c76103c2366004613f0b565b610935565b60405190151581526020015b60405180910390f35b6103e4610946565b6040516103d39190613f78565b6104046103ff366004613f8b565b6109d8565b6040516001600160a01b0390911681526020016103d3565b61042f61042a366004613fb9565b6109ff565b005b61044461043f366004614026565b610a18565b6040516001600160e01b031990911681526020016103d3565b61047061046b3660046140dc565b610b72565b6040516103d3919061417f565b6103e461048b366004614192565b610c68565b6103e461049e3660046141c9565b610cb3565b61042f6104b1366004614249565b610dbe565b61042f6104c4366004614305565b610e54565b6104dc6104d7366004614346565b610ea7565b6040519081526020016103d3565b61042f6104f8366004614387565b610eb6565b61042f61050b366004613f8b565b610efe565b61042f61051e3660046143fa565b610f39565b61042f610531366004613fb9565b61103b565b61042f610544366004614305565b611088565b61042f610557366004613f8b565b6110a3565b6103c761056a366004613fb9565b6110e7565b61042f61057d366004614424565b6110f3565b61042f610590366004614485565b611132565b6103c76105a3366004613f8b565b611178565b61042f6105b636600461458c565b611197565b61042f6105c93660046145c0565b6111cd565b6103c76105dc3660046145c0565b6001600160a01b0316301490565b6104046105f8366004613f8b565b61122d565b61042f61060b366004613f8b565b61124a565b61042f61061e366004614678565b611295565b6106366106313660046146c0565b611336565b6040516103d39291906146e2565b6104dc610652366004613f8b565b6000908152610100602052604090205490565b6104dc6106733660046145c0565b61134e565b6104dc6106863660046145c0565b6113d4565b61042f610699366004613fb9565b611405565b61042f6106ac366004614707565b61145c565b61042f6106bf366004614762565b6114ab565b6104dc601481565b6103e4611532565b61042f6106e2366004614805565b611541565b61042f6106f536600461483a565b6115c8565b6103e46040518060400160405280600d81526020016c554e533a20526567697374727960981b81525081565b6103c76107343660046141c9565b6115da565b61042f610747366004613fb9565b611625565b61075f61075a366004614346565b61166a565b6040516103d39190614866565b61040461077a366004613f8b565b611746565b61079261078d3660046140dc565b611770565b6040516103d39291906148c8565b61042f6107ae3660046148ed565b611892565b61042f6107c1366004614249565b6118d9565b6107f06107d4366004613f8b565b600090815261013960205260409020546001600160401b031690565b6040516001600160401b0390911681526020016103d3565b6103e4610816366004613f8b565b611962565b6103e46108293660046145c0565b611a04565b6103e461083c366004613f8b565b611ace565b61042f61084f366004614387565b611b34565b61042f610862366004614958565b611b73565b6103c7610875366004613f8b565b611c42565b6103c761088836600461499f565b6001600160a01b039182166000908152606a6020908152604080832093909416825291909152205460ff1690565b60006104dc565b61042f6108cb366004614387565b611c85565b61042f611cc4565b6104706108e6366004614346565b611d4b565b61042f6108f93660046149d8565b611dfe565b61042f61090c366004614a0a565b611e8f565b6103e460405180604001604052806005815260200164302e392e3160d81b81525081565b600061094082612065565b92915050565b60606065805461095590614a66565b80601f016020809104026020016040519081016040528092919081815260200182805461098190614a66565b80156109ce5780601f106109a3576101008083540402835291602001916109ce565b820191906000526020600020905b8154815290600101906020018083116109b157829003601f168201915b5050505050905090565b60006109e3826120b5565b506000908152606960205260409020546001600160a01b031690565b80610a0981612114565b610a13838361217a565b505050565b60007f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378546001600160a01b0316610a4d61229c565b6001600160a01b031603610b0e57610a6361229c565b6001600160a01b03166342966c68856040518263ffffffff1660e01b8152600401610a9091815260200190565b600060405180830381600087803b158015610aaa57600080fd5b505af1158015610abe573d6000803e3d6000fd5b505050821580159150610ad85750610ad882840184614a9a565b15610af657610ae730856122ab565b610af185856123f9565b610b00565b610b0085856122ab565b50630a85bd0160e11b610b69565b60405162461bcd60e51b815260206004820152602560248201527f52656769737472793a204552433732315f524543454956494e475f50524f4849604482015264109255115160da1b60648201526084015b60405180910390fd5b95945050505050565b6060826001600160401b03811115610b8c57610b8c6144d7565b604051908082528060200260200182016040528015610bbf57816020015b6060815260200190600190039081610baa5790505b50905060005b83811015610c6057610c30858583818110610be257610be2614ab5565b9050602002810190610bf49190614acb565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508792506124a4915050565b828281518110610c4257610c42614ab5565b60200260200101819052508080610c5890614b27565b915050610bc5565b509392505050565b6060610cab84848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508692506124a4915050565b949350505050565b606060005a9050610cc58585856115da565b610d215760405162461bcd60e51b815260206004820152602760248201527f554e535265676973747279466f727761726465723a205349474e41545552455f6044820152661253959053125160ca1b6064820152608401610b60565b610db3610d3160208701876145c0565b30604088013584610d4560608b018b614acb565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284376000920191909152506124d992505050565b9150505b9392505050565b610134546001600160a01b0316610dd361229c565b6001600160a01b031614610df95760405162461bcd60e51b8152600401610b6090614b40565b6000610e0d610e08888a614b87565b6125ba565b509050610e1a8982611405565b610e278686868685612612565b8115610e4957610e498982610e44610e3f8b8d614b87565b612680565b612701565b505050505050505050565b80610e66610e6061229c565b82612743565b610e825760405162461bcd60e51b8152600401610b6090614b94565b81610e8c81612114565b610e95836127d4565b610ea0858585612841565b5050505050565b6000610c60610e088385614b87565b80610ec2610e6061229c565b610ede5760405162461bcd60e51b8152600401610b6090614b94565b81610ee881612114565b610ef587878787876129e8565b50505050505050565b80610f0a610e6061229c565b610f265760405162461bcd60e51b8152600401610b6090614b94565b81610f3081612114565b610a13836127d4565b610134546001600160a01b0316610f4e61229c565b6001600160a01b031614610f745760405162461bcd60e51b8152600401610b6090614b40565b610f7d816120b5565b42826001600160401b031611610fd55760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a204558504952595f494e5f5041535400000000000000006044820152606401610b60565b60008181526101396020908152604091829020805467ffffffffffffffff19166001600160401b038616908117909155915191825282917f93feabb03ab84f47fc85bf0c298103fca21d8c8bc376eae0c1e1c56b9d4f7789910160405180910390a25050565b611043612a4b565b6001600160a01b031661105461229c565b6001600160a01b03161461107a5760405162461bcd60e51b8152600401610b6090614bdd565b61108482826122ab565b5050565b610a1383838360405180602001604052806000815250611892565b806110af610e6061229c565b6110cb5760405162461bcd60e51b8152600401610b6090614b94565b816110d581612114565b6110de836127d4565b610a1383612b4c565b6000610db78383612743565b806110ff610e6061229c565b61111b5760405162461bcd60e51b8152600401610b6090614b94565b8161112581612114565b610ef58787878787612bf3565b8061113e610e6061229c565b61115a5760405162461bcd60e51b8152600401610b6090614b94565b8161116481612114565b61117086868686612cd2565b505050505050565b6000818152606760205260408120546001600160a01b03161515610940565b6111ca816040516020016111ab9190614c1f565b6040516020818303038152906040528051906020012060001c82612d72565b50565b610134546001600160a01b03166111e261229c565b6001600160a01b0316146112085760405162461bcd60e51b8152600401610b6090614b40565b6001600160a01b0316600090815261013660205260409020805460ff19166001179055565b600061123882611c42565b6112455761094082612d97565b919050565b80611256610e6061229c565b6112725760405162461bcd60e51b8152600401610b6090614b94565b61128461127d61229c565b3084612841565b61108461128f61229c565b836123f9565b60006112a0826125ba565b5090506112ab61229c565b6001600160a01b03166112bd8261122d565b6001600160a01b0316146113135760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b60565b61131c81612114565b61108461132761229c565b8261133185612680565b612df7565b6060806113438484612e7e565b909590945092505050565b60006001600160a01b0382166113b85760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b6064820152608401610b60565b506001600160a01b031660009081526068602052604090205490565b6001600160a01b038116600090815261013560205260408120546113f781612e9f565b6113ff578091505b50919050565b610134546001600160a01b031661141a61229c565b6001600160a01b0316146114405760405162461bcd60e51b8152600401610b6090614b40565b611449816127d4565b61108461145582612d97565b8383612841565b611464612a4b565b6001600160a01b031661147561229c565b6001600160a01b03161461149b5760405162461bcd60e51b8152600401610b6090614bdd565b6114a584846122ab565b50505050565b6114b58787612ee9565b6114bd61229c565b6001600160a01b03166114cf8661122d565b6001600160a01b0316146115255760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b60565b610ef58484848489612612565b60606066805461095590614a66565b610134546001600160a01b031661155661229c565b6001600160a01b03161461157c5760405162461bcd60e51b8152600401610b6090614b40565b61013361158a828483614c81565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b82826040516115bc929190614d69565b60405180910390a15050565b6110846115d361229c565b8383612f58565b6000610cab6115e885614d7d565b3085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061302692505050565b80611631610e6061229c565b61164d5760405162461bcd60e51b8152600401610b6090614b94565b8161165781612114565b6114a561166384612d97565b8585612841565b606060006116788385614e07565b905030330361173d5760005b8381101561173b5761170b61169761229c565b61169f61316f565b8787858181106116b1576116b1614ab5565b90506020028101906116c39190614acb565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250613183915050565b82828151811061171d5761171d614ab5565b6020026020010181905250808061173390614b27565b915050611684565b505b610cab816131b3565b6000818152606760205260408120546001600160a01b0316611769576000610940565b3092915050565b606080836001600160401b0381111561178b5761178b6144d7565b6040519080825280602002602001820160405280156117be57816020015b60608152602001906001900390816117a95790505b509150836001600160401b038111156117d9576117d96144d7565b60405190808252806020026020018201604052801561180c57816020015b60608152602001906001900390816117f75790505b50905060005b848110156118895761183c86868381811061182f5761182f614ab5565b9050602002013585612e7e565b84838151811061184e5761184e614ab5565b6020026020010184848151811061186757611867614ab5565b602002602001018290528290525050808061188190614b27565b915050611812565b50935093915050565b8161189e610e6061229c565b6118ba5760405162461bcd60e51b8152600401610b6090614b94565b826118c481612114565b6118cd846127d4565b611170868686866132de565b610134546001600160a01b03166118ee61229c565b6001600160a01b0316146119145760405162461bcd60e51b8152600401610b6090614b40565b600080611924610e08898b614b87565b9150915061193181613311565b6119498a83611943610e3f8c8e614b87565b86613371565b6119568787878786612612565b50505050505050505050565b600081815260c96020526040902080546060919061197f90614a66565b80601f01602080910402602001604051908101604052809291908181526020018280546119ab90614a66565b80156119f85780601f106119cd576101008083540402835291602001916119f8565b820191906000526020600020905b8154815290600101906020018083116119db57829003601f168201915b50505050509050919050565b6001600160a01b03811660009081526101356020526040902054606090611a2a81612e9f565b6113ff576000818152610138602052604090208054611a4890614a66565b80601f0160208091040260200160405190810160405280929190818152602001828054611a7490614a66565b8015611ac15780601f10611a9657610100808354040283529160200191611ac1565b820191906000526020600020905b815481529060010190602001808311611aa457829003601f168201915b5050505050915050919050565b6060611ad9826120b5565b6000611ae36133c4565b90506000815111611b035760405180602001604052806000815250610db7565b80611b0d846133d4565b604051602001611b1e929190614e7a565b6040516020818303038152906040529392505050565b80611b40610e6061229c565b611b5c5760405162461bcd60e51b8152600401610b6090614b94565b81611b6681612114565b610ef58787878787612612565b7f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87546001600160a01b0316611ba661229c565b6001600160a01b031614611bcc5760405162461bcd60e51b8152600401610b6090614bdd565b6020819003611bef576000611be382840184613f8b565b90506114a584826122ab565b6000611bfd82840184614ea9565b805190915060005b8181101561117057611c3086848381518110611c2357611c23614ab5565b60200260200101516122ab565b80611c3a81614b27565b915050611c05565b600081815261013960205260408120546001600160401b03161580159061094057505060009081526101396020526040902054426001600160401b039091161090565b80611c91610e6061229c565b611cad5760405162461bcd60e51b8152600401610b6090614b94565b81611cb781612114565b610ef587878787876134d4565b6000611cce61229c565b6001600160a01b0381166000908152610135602052604081205491925003611d425760405162461bcd60e51b815260206004820152602160248201527f52656769737472793a20524556455253455f5245434f52445f49535f454d50546044820152605960f81b6064820152608401610b60565b6111ca816134ea565b6060816001600160401b03811115611d6557611d656144d7565b604051908082528060200260200182016040528015611d9857816020015b6060815260200190600190039081611d835790505b50905060005b82811015611df757611dc7848483818110611dbb57611dbb614ab5565b90506020020135611962565b828281518110611dd957611dd9614ab5565b60200260200101819052508080611def90614b27565b915050611d9e565b5092915050565b610134546001600160a01b0316611e1361229c565b6001600160a01b031614611e395760405162461bcd60e51b8152600401610b6090614b40565b61013454611e50906001600160a01b0316846122ab565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c39528383604051611e82929190614d69565b60405180910390a2505050565b600054610100900460ff1615808015611eaf5750600054600160ff909116105b80611ec95750303b158015611ec9575060005460ff166001145b611f2c5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610b60565b6000805460ff191660011790558015611f4f576000805461ff0019166101001790555b61013480546001600160a01b0319166001600160a01b038716179055837f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec9237880546001600160a01b0319166001600160a01b03929092169190911790556040805180820182526013815272556e73746f707061626c6520446f6d61696e7360681b60208083019190915282518084019093526002835261155160f21b90830152611ff79161352f565b611fff61356f565b61200761356f565b61201083613598565b612019826135c8565b8015610ea0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b60006001600160e01b031982166380ac58cd60e01b148061209657506001600160e01b03198216635b5e139f60e01b145b8061094057506301ffc9a760e01b6001600160e01b0319831614610940565b6000818152606760205260409020546001600160a01b03166111ca5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b60565b3033036121715761212361316f565b81146111ca5760405162461bcd60e51b815260206004820152601760248201527f52656769737472793a20544f4b454e5f494e56414c49440000000000000000006044820152606401610b60565b6111ca816135f8565b600061218582612d97565b9050806001600160a01b0316836001600160a01b0316036121f25760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b6064820152608401610b60565b806001600160a01b031661220461229c565b6001600160a01b0316148061222057506122208161088861229c565b6122925760405162461bcd60e51b815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c00006064820152608401610b60565b610a138383613626565b60006122a6613694565b905090565b6001600160a01b0382166123015760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610b60565b6000818152606760205260409020546001600160a01b0316156123665760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610b60565b612372600083836136af565b6001600160a01b038216600090815260686020526040812080546001929061239b908490614f39565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b03861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b6000612403612a4b565b905061240f8183613626565b60008051602061529383398151915254604080516020808201869052825180830390910181528183019283905263e3dec8fb60e01b9092526001600160a01b0390921691829163e3dec8fb9161246c918891309190604401614f4c565b600060405180830381600087803b15801561248657600080fd5b505af115801561249a573d6000803e3d6000fd5b5050505050505050565b6060610db7836040516020016124ba9190614c1f565b6040516020818303038152906040528051906020012060001c8361378b565b60606124e4856135f8565b600080876001600160a01b0316866124fe8b8a8989613183565b60405161250b9190614c1f565b60006040518083038160008787f1925050503d8060008114612549576040519150601f19603f3d011682016040523d82523d6000602084013e61254e565b606091505b50909250905061255f603f87614f8e565b5a1161256d5761256d614fa2565b6125ad82826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061386d565b9998505050505050505050565b805160009081905b801561260c578291506125f882856125db600185614fb8565b815181106125eb576125eb614ab5565b60200260200101516138a6565b92508061260481614fcb565b9150506125c2565b50915091565b60005b848110156111705761266e86868381811061263257612632614ab5565b90506020028101906126449190614acb565b86868581811061265657612656614ab5565b90506020028101906126689190614acb565b86612bf3565b8061267881614b27565b915050612615565b606060008260008151811061269757612697614ab5565b602002602001015190506000600190505b8351811015611df757818482815181106126c4576126c4614ab5565b60200260200101516040516020016126dd929190614fe2565b604051602081830303815290604052915080806126f990614b27565b9150506126a8565b61dead6001600160a01b0384161480159061273357506001600160a01b03831660009081526101356020526040902054155b15610a1357610a13838383612df7565b60008061274f8361122d565b90506001600160a01b03811615801590610cab5750806001600160a01b0316846001600160a01b031614806127a957506001600160a01b038082166000908152606a602090815260408083209388168352929052205460ff165b80610cab5750836001600160a01b03166127c2846109d8565b6001600160a01b031614949350505050565b6127dd81613952565b6040516020016127ef91815260200190565b60408051601f198184030181528282528051602091820120600085815260cb9092529181209190915582917f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9190a250565b826001600160a01b031661285482612d97565b6001600160a01b0316146128b85760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b6064820152608401610b60565b6001600160a01b03821661291a5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610b60565b6129258383836136af565b612930600082613626565b6001600160a01b0383166000908152606860205260408120805460019290612959908490614fb8565b90915550506001600160a01b0382166000908152606860205260408120805460019290612987908490614f39565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60005b8481101561117057612a39868683818110612a0857612a08614ab5565b90506020020135858584818110612a2157612a21614ab5565b9050602002810190612a339190614acb565b85612cd2565b80612a4381614b27565b9150506129eb565b600080516020615293833981519152546000906001600160a01b03168015612b485760405163721804d360e11b81523060048201526000906001600160a01b0383169063e43009a690602401602060405180830381865afa158015612ab4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ad8919061501e565b60405163e66f960360e01b8152600481018290529091506001600160a01b0383169063e66f960390602401602060405180830381865afa158015612b20573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b449190615037565b9250505b5090565b6000612b5782612d97565b9050612b65816000846136af565b612b70600083613626565b6001600160a01b0381166000908152606860205260408120805460019290612b99908490614fb8565b909155505060008281526067602052604080822080546001600160a01b0319169055518391906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b60008585604051602001612c08929190615054565b60408051601f198184030181528282528051602091820120601f8901829004820284018201909252878352909250612c5c9183918990899081908401838280828437600092019190915250612d7292505050565b6111708187878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061397a915050565b612cdb84613aaf565b612d275760405162461bcd60e51b815260206004820152601c60248201527f5265636f726453746f726167653a204b45595f4e4f545f464f554e44000000006044820152606401610b60565b6114a584612d3486611962565b85858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525087925061397a915050565b612d7b82613aaf565b61108457600082815260c960205260409020610a138282615064565b6000818152606760205260408120546001600160a01b0316806109405760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b60565b6000828152610138602052604090208054612e1190614a66565b9050600003612e3557600082815261013860205260409020612e338282615064565b505b6001600160a01b03831660008181526101356020526040808220859055518492917feb76a21470988c474a21f690cc28fee1ed511bd812dc3c21fd0f49c5e5d4708a91a3505050565b606080612e8a84611962565b9150612e96848461378b565b90509250929050565b6000818152610137602052604081205460ff16801561094057506101366000612ec661229c565b6001600160a01b0316815260208101919091526040016000205460ff1692915050565b60008051602061529383398151915254604051633805550f60e01b81526001600160a01b03909116908190633805550f90612f2a9086908690600401614d69565b600060405180830381600087803b158015612f4457600080fd5b505af1158015610ef5573d6000803e3d6000fd5b816001600160a01b0316836001600160a01b031603612fb95760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610b60565b6001600160a01b038381166000818152606a6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561306d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613091919061501e565b9050600061313f8660600151805190602001208688602001516040516020016130df9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561316557508551613165906001600160a01b03168286613ad5565b9695505050505050565b60003033036131805750601f193601355b90565b606082858560405160200161319a93929190615123565b6040516020818303038152906040529050949350505050565b606081516001600160401b038111156131ce576131ce6144d7565b60405190808252806020026020018201604052801561320157816020015b60608152602001906001900390816131ec5790505b50905060005b82518110156113ff57600080306001600160a01b031685848151811061322f5761322f614ab5565b60200260200101516040516132449190614c1f565b600060405180830381855af49150503d806000811461327f576040519150601f19603f3d011682016040523d82523d6000602084013e613284565b606091505b50915091506132ac82826040518060600160405280602781526020016152b36027913961386d565b8484815181106132be576132be614ab5565b6020026020010181905250505080806132d690614b27565b915050613207565b6132e9848484612841565b6132f584848484613c17565b6114a55760405162461bcd60e51b8152600401610b6090615162565b6000818152610137602052604090205460ff16156111ca5760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a20544f4b454e5f555047524144454400000000000000006044820152606401610b60565b61337b84846122ab565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952836040516133ab9190613f78565b60405180910390a280156114a5576114a5848484612701565b6060610133805461095590614a66565b6060816000036133fb5750506040805180820190915260018152600360fc1b602082015290565b8160005b8115613425578061340f81614b27565b915061341e9050600a83614f8e565b91506133ff565b6000816001600160401b0381111561343f5761343f6144d7565b6040519080825280601f01601f191660200182016040528015613469576020820181803683370190505b5090505b8415610cab5761347e600183614fb8565b915061348b600a866151b4565b613496906030614f39565b60f81b8183815181106134ab576134ab614ab5565b60200101906001600160f81b031916908160001a9053506134cd600a86614f8e565b945061346d565b6134dd816127d4565b610ea08585858585612612565b6001600160a01b03811660008181526101356020526040808220829055517ffcf5eec0cfa3e6332f5f0e63ec242d71f866a61d121d6cdf5c2eb3b668a26c4f9190a250565b600054610100900460ff166135565760405162461bcd60e51b8152600401610b60906151c8565b60656135628382615064565b506066610a138282615064565b600054610100900460ff166135965760405162461bcd60e51b8152600401610b60906151c8565b565b600054610100900460ff166135bf5760405162461bcd60e51b8152600401610b60906151c8565b6111ca81613d1c565b600054610100900460ff166135ef5760405162461bcd60e51b8152600401610b60906151c8565b6111ca81613d75565b60008181526101006020526040902054613613906001614f39565b6000918252610100602052604090912055565b600081815260696020526040902080546001600160a01b0319166001600160a01b038416908117909155819061365b82612d97565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60003033036136aa575060331936013560601c90565b503390565b6001600160a01b0382166136c6576136c681613311565b600081815261013960205260409020546001600160401b031615613761576001600160a01b0382161580159061371557506136ff612a4b565b6001600160a01b0316826001600160a01b031614155b6137615760405162461bcd60e51b815260206004820152601960248201527f52656769737472793a20544f4b454e5f455850495241424c45000000000000006044820152606401610b60565b6001600160a01b03831660009081526101356020526040902054819003610a1357610a13836134ea565b606061379682612e9f565b156137b05750604080516020810190915260008152610940565b60ca60006137bd84613952565b8152602001908152602001600020600084815260200190815260200160002080546137e790614a66565b80601f016020809104026020016040519081016040528092919081815260200182805461381390614a66565b80156138605780601f1061383557610100808354040283529160200191613860565b820191906000526020600020905b81548152906001019060200180831161384357829003601f168201915b5050505050905092915050565b6060831561387c575081610db7565b82511561388c5782518084602001fd5b8160405162461bcd60e51b8152600401610b609190613f78565b600081516000036138f15760405162461bcd60e51b815260206004820152601560248201527452656769737472793a204c4142454c5f454d50545960581b6044820152606401610b60565b82826040516020016139039190614c1f565b60405160208183030381529060405280519060200120604051602001613933929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b600081815260cb602052604081205415612b4857600082815260cb6020526040902054610940565b60ca600061398783613952565b8152602001908152602001600020600085815260200190815260200160002080546139b190614a66565b9050600003613a0957826040516139c89190614c1f565b6040518091039020817f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f8685604051613a009190613f78565b60405180910390a35b8160ca6000613a1784613952565b815260200190815260200160002060008681526020019081526020016000209081613a429190615064565b5081604051613a519190614c1f565b604051809103902083604051613a679190614c1f565b6040518091039020827f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d928686604051613aa19291906146e2565b60405180910390a450505050565b600081815260c9602052604081208054829190613acb90614a66565b9050119050919050565b6000806000613ae48585613dc3565b90925090506000816004811115613afd57613afd615213565b148015613b1b5750856001600160a01b0316826001600160a01b0316145b15613b2b57600192505050610db7565b600080876001600160a01b0316631626ba7e60e01b8888604051602401613b53929190615229565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051613b919190614c1f565b600060405180830381855afa9150503d8060008114613bcc576040519150601f19603f3d011682016040523d82523d6000602084013e613bd1565b606091505b5091509150818015613be4575080516020145b8015613c0b57508051630b135d3f60e11b90613c09908301602090810190840161501e565b145b98975050505050505050565b60006001600160a01b0384163b15613d1457836001600160a01b031663150b7a02613c4061229c565b8786866040518563ffffffff1660e01b8152600401613c629493929190615242565b6020604051808303816000875af1925050508015613c9d575060408051601f3d908101601f19168201909252613c9a91810190615275565b60015b613cfa573d808015613ccb576040519150601f19603f3d011682016040523d82523d6000602084013e613cd0565b606091505b508051600003613cf25760405162461bcd60e51b8152600401610b6090615162565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610cab565b506001610cab565b600054610100900460ff16613d435760405162461bcd60e51b8152600401610b60906151c8565b806000805160206152938339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b600054610100900460ff16613d9c5760405162461bcd60e51b8152600401610b60906151c8565b807f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87613d54565b6000808251604103613df95760208301516040840151606085015160001a613ded87828585613e08565b94509450505050613e01565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613e3f5750600090506003613eec565b8460ff16601b14158015613e5757508460ff16601c14155b15613e685750600090506004613eec565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613ebc573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613ee557600060019250925050613eec565b9150600090505b94509492505050565b6001600160e01b0319811681146111ca57600080fd5b600060208284031215613f1d57600080fd5b8135610db781613ef5565b60005b83811015613f43578181015183820152602001613f2b565b50506000910152565b60008151808452613f64816020860160208601613f28565b601f01601f19169290920160200192915050565b602081526000610db76020830184613f4c565b600060208284031215613f9d57600080fd5b5035919050565b6001600160a01b03811681146111ca57600080fd5b60008060408385031215613fcc57600080fd5b8235613fd781613fa4565b946020939093013593505050565b60008083601f840112613ff757600080fd5b5081356001600160401b0381111561400e57600080fd5b602083019150836020828501011115613e0157600080fd5b60008060008060006080868803121561403e57600080fd5b853561404981613fa4565b9450602086013561405981613fa4565b93506040860135925060608601356001600160401b0381111561407b57600080fd5b61408788828901613fe5565b969995985093965092949392505050565b60008083601f8401126140aa57600080fd5b5081356001600160401b038111156140c157600080fd5b6020830191508360208260051b8501011115613e0157600080fd5b6000806000604084860312156140f157600080fd5b83356001600160401b0381111561410757600080fd5b61411386828701614098565b909790965060209590950135949350505050565b600082825180855260208086019550808260051b84010181860160005b8481101561417257601f19868403018952614160838351613f4c565b98840198925090830190600101614144565b5090979650505050505050565b602081526000610db76020830184614127565b6000806000604084860312156141a757600080fd5b83356001600160401b038111156141bd57600080fd5b61411386828701613fe5565b6000806000604084860312156141de57600080fd5b83356001600160401b03808211156141f557600080fd5b908501906080828803121561420957600080fd5b9093506020850135908082111561421f57600080fd5b5061422c86828701613fe5565b9497909650939450505050565b8035801515811461124557600080fd5b60008060008060008060008060a0898b03121561426557600080fd5b883561427081613fa4565b975060208901356001600160401b038082111561428c57600080fd5b6142988c838d01614098565b909950975060408b01359150808211156142b157600080fd5b6142bd8c838d01614098565b909750955060608b01359150808211156142d657600080fd5b506142e38b828c01614098565b90945092506142f6905060808a01614239565b90509295985092959890939650565b60008060006060848603121561431a57600080fd5b833561432581613fa4565b9250602084013561433581613fa4565b929592945050506040919091013590565b6000806020838503121561435957600080fd5b82356001600160401b0381111561436f57600080fd5b61437b85828601614098565b90969095509350505050565b60008060008060006060868803121561439f57600080fd5b85356001600160401b03808211156143b657600080fd5b6143c289838a01614098565b909750955060208801359150808211156143db57600080fd5b506143e888828901614098565b96999598509660400135949350505050565b6000806040838503121561440d57600080fd5b82356001600160401b0381168114613fd757600080fd5b60008060008060006060868803121561443c57600080fd5b85356001600160401b038082111561445357600080fd5b61445f89838a01613fe5565b9097509550602088013591508082111561447857600080fd5b506143e888828901613fe5565b6000806000806060858703121561449b57600080fd5b8435935060208501356001600160401b038111156144b857600080fd5b6144c487828801613fe5565b9598909750949560400135949350505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715614515576145156144d7565b604052919050565b600082601f83011261452e57600080fd5b81356001600160401b03811115614547576145476144d7565b61455a601f8201601f19166020016144ed565b81815284602083860101111561456f57600080fd5b816020850160208301376000918101602001919091529392505050565b60006020828403121561459e57600080fd5b81356001600160401b038111156145b457600080fd5b610cab8482850161451d565b6000602082840312156145d257600080fd5b8135610db781613fa4565b60006001600160401b038211156145f6576145f66144d7565b5060051b60200190565b600061461361460e846145dd565b6144ed565b8381529050602080820190600585901b84018681111561463257600080fd5b845b8181101561466d5780356001600160401b038111156146535760008081fd5b61465f8982890161451d565b855250928201928201614634565b505050509392505050565b60006020828403121561468a57600080fd5b81356001600160401b038111156146a057600080fd5b8201601f810184136146b157600080fd5b610cab84823560208401614600565b600080604083850312156146d357600080fd5b50508035926020909101359150565b6040815260006146f56040830185613f4c565b8281036020840152610db38185613f4c565b6000806000806060858703121561471d57600080fd5b843561472881613fa4565b93506020850135925060408501356001600160401b0381111561474a57600080fd5b61475687828801613fe5565b95989497509550505050565b60008060008060008060006080888a03121561477d57600080fd5b87356001600160401b038082111561479457600080fd5b6147a08b838c01613fe5565b909950975060208a0135965060408a01359150808211156147c057600080fd5b6147cc8b838c01614098565b909650945060608a01359150808211156147e557600080fd5b506147f28a828b01614098565b989b979a50959850939692959293505050565b6000806020838503121561481857600080fd5b82356001600160401b0381111561482e57600080fd5b61437b85828601613fe5565b6000806040838503121561484d57600080fd5b823561485881613fa4565b9150612e9660208401614239565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156148bb57603f198886030184526148a9858351613f4c565b9450928501929085019060010161488d565b5092979650505050505050565b6040815260006148db6040830185614127565b8281036020840152610db38185614127565b6000806000806080858703121561490357600080fd5b843561490e81613fa4565b9350602085013561491e81613fa4565b92506040850135915060608501356001600160401b0381111561494057600080fd5b61494c8782880161451d565b91505092959194509250565b60008060006040848603121561496d57600080fd5b833561497881613fa4565b925060208401356001600160401b0381111561499357600080fd5b61422c86828701613fe5565b600080604083850312156149b257600080fd5b82356149bd81613fa4565b915060208301356149cd81613fa4565b809150509250929050565b6000806000604084860312156149ed57600080fd5b8335925060208401356001600160401b0381111561499357600080fd5b60008060008060808587031215614a2057600080fd5b8435614a2b81613fa4565b93506020850135614a3b81613fa4565b92506040850135614a4b81613fa4565b91506060850135614a5b81613fa4565b939692955090935050565b600181811c90821680614a7a57607f821691505b6020821081036113ff57634e487b7160e01b600052602260045260246000fd5b600060208284031215614aac57600080fd5b610db782614239565b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112614ae257600080fd5b8301803591506001600160401b03821115614afc57600080fd5b602001915036819003821315613e0157600080fd5b634e487b7160e01b600052601160045260246000fd5b600060018201614b3957614b39614b11565b5060010190565b60208082526027908201527f52656769737472793a2053454e4445525f49535f4e4f545f4d494e54494e475f60408201526626a0a720a3a2a960c91b606082015260800190565b6000610db7368484614600565b60208082526029908201527f52656769737472793a2053454e4445525f49535f4e4f545f415050524f5645446040820152682fa7a92fa7aba722a960b91b606082015260800190565b60208082526022908201527f52656769737472793a20494e53554646494349454e545f5045524d495353494f6040820152614e5360f01b606082015260800190565b60008251614c31818460208701613f28565b9190910192915050565b601f821115610a1357600081815260208120601f850160051c81016020861015614c625750805b601f850160051c820191505b8181101561117057828155600101614c6e565b6001600160401b03831115614c9857614c986144d7565b614cac83614ca68354614a66565b83614c3b565b6000601f841160018114614ce05760008515614cc85750838201355b600019600387901b1c1916600186901b178355610ea0565b600083815260209020601f19861690835b82811015614d115786850135825560209485019460019092019101614cf1565b5086821015614d2e5760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b602081526000610cab602083018486614d40565b600060808236031215614d8f57600080fd5b604051608081016001600160401b038282108183111715614db257614db26144d7565b8160405284359150614dc382613fa4565b81835260208501356020840152604085013560408401526060850135915080821115614dee57600080fd5b50614dfb3682860161451d565b60608301525092915050565b6000614e1561460e846145dd565b80848252602080830192508560051b850136811115614e3357600080fd5b855b81811015614e6e5780356001600160401b03811115614e545760008081fd5b614e6036828a0161451d565b865250938201938201614e35565b50919695505050505050565b60008351614e8c818460208801613f28565b835190830190614ea0818360208801613f28565b01949350505050565b60006020808385031215614ebc57600080fd5b82356001600160401b03811115614ed257600080fd5b8301601f81018513614ee357600080fd5b8035614ef161460e826145dd565b81815260059190911b82018301908381019087831115614f1057600080fd5b928401925b82841015614f2e57833582529284019290840190614f15565b979650505050505050565b8082018082111561094057610940614b11565b6001600160a01b03848116825283166020820152606060408201819052600090610b6990830184613f4c565b634e487b7160e01b600052601260045260246000fd5b600082614f9d57614f9d614f78565b500490565b634e487b7160e01b600052600160045260246000fd5b8181038181111561094057610940614b11565b600081614fda57614fda614b11565b506000190190565b60008351614ff4818460208801613f28565b601760f91b9083019081528351615012816001840160208801613f28565b01600101949350505050565b60006020828403121561503057600080fd5b5051919050565b60006020828403121561504957600080fd5b8151610db781613fa4565b8183823760009101908152919050565b81516001600160401b0381111561507d5761507d6144d7565b6150918161508b8454614a66565b84614c3b565b602080601f8311600181146150c657600084156150ae5750858301515b600019600386901b1c1916600185901b178555611170565b600085815260208120601f198616915b828110156150f5578886015182559484019460019091019084016150d6565b50858210156151135787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60008451615135818460208901613f28565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6000826151c3576151c3614f78565b500690565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b634e487b7160e01b600052602160045260246000fd5b828152604060208201526000610cab6040830184613f4c565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061316590830184613f4c565b60006020828403121561528757600080fd5b8151610db781613ef556febe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a","storage":{}},"0x6ac8f19d1e0f81147cdf2a1e53cb1f4e18417204":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610296575f3560e01c80636352211e11610161578063c93ab3fd116100ca578063e985e9c511610084578063e985e9c5146106c8578063eb8ae530146106db578063ed70554d146106ee578063f242432a1461070d578063f2fde38b14610720578063fd0cd0d914610733575f80fd5b8063c93ab3fd14610647578063cf4088231461065a578063d8c9921a1461066d578063d9a50c1214610680578063da8c229e14610693578063e0dba60f146106b5575f80fd5b8063a22cb4651161011b578063a22cb465146105d5578063a4014982146105e8578063adf4960a146105fb578063b6bcad261461060e578063c475abff14610621578063c658e08614610634575f80fd5b80636352211e146105595780636e5d6ad21461056c578063715018a6146105975780638b4dfa751461059f5780638cf8b41e146105b25780638da5cb5b146105c5575f80fd5b80631f4e1504116102035780633f15457f116101bd5780633f15457f146104b1578063402906fc146104d857806341415eab146105005780634e1273f41461051357806353095467146105335780635d3590d514610546575f80fd5b80631f4e15041461042b57806320c38e2b1461043e57806324c1af44146104515780632b20e397146104645780632eb2c2d61461048b57806333c69ea91461049e575f80fd5b80630e4cd725116102545780630e4cd725146103a05780630e89341c146103b357806314ab9038146103c6578063150b7a02146103d95780631534e177146104055780631896f70a14610418575f80fd5b8062fdd58e1461029a5780630178fe3f146102c057806301ffc9a71461030657806306fdde0314610329578063081812fc14610360578063095ea7b31461038b575b5f80fd5b6102ad6102a8366004614316565b610746565b6040519081526020015b60405180910390f35b6102d36102ce366004614340565b6107f0565b604080516001600160a01b03909416845263ffffffff90921660208401526001600160401b0316908201526060016102b7565b61031961031436600461436c565b61081f565b60405190151581526020016102b7565b6103536040518060400160405280600b81526020016a2730b6b2abb930b83832b960a91b81525081565b6040516102b791906143d4565b61037361036e366004614340565b61085e565b6040516001600160a01b0390911681526020016102b7565b61039e610399366004614316565b6108a0565b005b6103196103ae3660046143e6565b6108e5565b6103536103c1366004614340565b61095e565b61039e6103d436600461442f565b6109cc565b6103ec6103e736600461449d565b610ac0565b6040516001600160e01b031990911681526020016102b7565b61039e61041336600461450a565b610c96565b61039e6104263660046143e6565b610cc0565b600754610373906001600160a01b031681565b61035361044c366004614340565b610d75565b6102ad61045f3660046145f6565b610e0c565b6103737f000000000000000000000000c965345edac823d56812cd20a10316233916a60581565b61039e610499366004614717565b610fe7565b61039e6104ac3660046147bd565b61121a565b6103737f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a981565b6104eb6104e6366004614811565b6113e6565b60405163ffffffff90911681526020016102b7565b61031961050e3660046143e6565b611480565b610526610521366004614832565b6114b8565b6040516102b79190614928565b600554610373906001600160a01b031681565b61039e61055436600461493a565b6115d7565b610373610567366004614340565b611655565b61057f61057a366004614978565b61165f565b6040516001600160401b0390911681526020016102b7565b61039e61178e565b61039e6105ad3660046149aa565b6117a1565b61057f6105c03660046149e9565b6118c0565b5f546001600160a01b0316610373565b61039e6105e3366004614a6b565b611c28565b6102ad6105f6366004614a97565b611cfd565b610319610609366004614b12565b611e38565b61039e61061c36600461450a565b611e5c565b6102ad61062f366004614b33565b61209e565b6102ad610642366004614b53565b6122fd565b61039e610655366004614bc0565b6124bd565b61039e610668366004614c26565b612605565b61039e61067b366004614c5b565b612794565b61031961068e366004614b33565b61285d565b6103196106a136600461450a565b60046020525f908152604090205460ff1681565b61039e6106c3366004614a6b565b612938565b6103196106d6366004614c86565b61299f565b61039e6106e9366004614cb2565b6129cc565b6102ad6106fc366004614340565b60016020525f908152604090205481565b61039e61071b366004614d15565b612d59565b61039e61072e36600461450a565b612e06565b610319610741366004614340565b612e7c565b5f6001600160a01b0383166107b65760405162461bcd60e51b815260206004820152602b60248201527f455243313135353a2062616c616e636520717565727920666f7220746865207a60448201526a65726f206164647265737360a81b60648201526084015b60405180910390fd5b5f6107c083611655565b9050836001600160a01b0316816001600160a01b0316036107e55760019150506107ea565b5f9150505b92915050565b5f8181526001602052604090205460a081901c60c082901c610813838383612f4d565b90959094509092509050565b5f6001600160e01b03198216631b05885b60e31b148061084f57506001600160e01b03198216630a85bd0160e11b145b806107ea57506107ea82612f80565b5f8061086983611655565b90506001600160a01b03811661088157505f92915050565b5f838152600360205260409020546001600160a01b03165b9392505050565b5f6108aa826107f0565b50915050603f1960408216016108d65760405163a2a7201360e01b8152600481018390526024016107ad565b6108e08383612fcf565b505050565b5f8080806108f2866107f0565b925092509250846001600160a01b0316836001600160a01b0316148061091d575061091d838661299f565b8061094157506001600160a01b0385166109368761085e565b6001600160a01b0316145b8015610954575061095282826130de565b155b9695505050505050565b6005546040516303a24d0760e21b8152600481018390526060916001600160a01b031690630e89341c906024015f60405180830381865afa1580156109a5573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526107ea9190810190614d78565b816109d78133611480565b6109f857803360405163168ab55d60e31b81526004016107ad929190614dea565b8260105f610a05836107f0565b5091505063ffffffff8282161615610a335760405163a2a7201360e01b8152600481018490526024016107ad565b604051630295720760e31b8152600481018790526001600160401b03861660248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906314ab9038906044015b5f604051808303815f87803b158015610aa2575f80fd5b505af1158015610ab4573d5f803e3d5ffd5b50505050505050505050565b5f336001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a6051614610b0a5760405163032634a760e31b815260040160405180910390fd5b5f808080610b1a86880188614e01565b83516020850120939750919550935091508890808214610b57576040516331970f3360e21b815260048101829052602481018390526044016107ad565b604051630a3b53db60e21b81526001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906328ed4f6c90610ba59085903090600401614dea565b5f604051808303815f87803b158015610bbc575f80fd5b505af1158015610bce573d5f803e3d5ffd5b5050604051636b727d4360e11b8152600481018d90525f92506276a70091506001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063d6e4fa8690602401602060405180830381865afa158015610c3c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c609190614e64565b610c6a9190614e8f565b9050610c7d87878761ffff16848861310d565b50630a85bd0160e11b9c9b505050505050505050505050565b610c9e613215565b600580546001600160a01b0319166001600160a01b0392909216919091179055565b81610ccb8133611480565b610cec57803360405163168ab55d60e31b81526004016107ad929190614dea565b8260085f610cf9836107f0565b5091505063ffffffff8282161615610d275760405163a2a7201360e01b8152600481018490526024016107ad565b604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a90610a8b9089908990600401614dea565b60066020525f908152604090208054610d8d90614eb6565b80601f0160208091040260200160405190810160405280929190818152602001828054610db990614eb6565b8015610e045780601f10610ddb57610100808354040283529160200191610e04565b820191905f5260205f20905b815481529060010190602001808311610de757829003601f168201915b505050505081565b5f87610e188133611480565b610e3957803360405163168ab55d60e31b81526004016107ad929190614dea565b87516020890120610e4a8a8261326e565b9250610e568a8461329a565b610e6083866133d3565b610e6b8a848b613406565b50610e788a8487876134cd565b9350610e8383613510565b610f33576040516305ef2c7f60e41b8152600481018b9052602481018290523060448201526001600160a01b0388811660648301526001600160401b03881660848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610f0a575f80fd5b505af1158015610f1c573d5f803e3d5ffd5b50505050610f2e8a848b8b89896135c6565b610fda565b6040516305ef2c7f60e41b8152600481018b9052602481018290523060448201526001600160a01b0388811660648301526001600160401b03881660848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610fb6575f80fd5b505af1158015610fc8573d5f803e3d5ffd5b50505050610fda8a848b8b89896135fc565b5050979650505050505050565b81518351146110495760405162461bcd60e51b815260206004820152602860248201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206044820152670dad2e6dac2e8c6d60c31b60648201526084016107ad565b6001600160a01b03841661106f5760405162461bcd60e51b81526004016107ad90614eee565b6001600160a01b03851633148061108b575061108b853361299f565b6110f25760405162461bcd60e51b815260206004820152603260248201527f455243313135353a207472616e736665722063616c6c6572206973206e6f74206044820152711bdddb995c881b9bdc88185c1c1c9bdd995960721b60648201526084016107ad565b5f5b83518110156111ad575f84828151811061111057611110614f33565b602002602001015190505f84838151811061112d5761112d614f33565b602002602001015190505f805f611143856107f0565b9250925092506111548583836136b6565b83600114801561117557508a6001600160a01b0316836001600160a01b0316145b6111915760405162461bcd60e51b81526004016107ad90614f47565b61119d858b848461375d565b50505050508060010190506110f4565b50836001600160a01b0316856001600160a01b0316336001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516111fd929190614f91565b60405180910390a461121333868686868661379d565b5050505050565b5f611225858561326e565b905061123181846133d3565b5f808061123d846107f0565b919450925090506001600160a01b03831615806112ea57506040516302571be360e01b81526004810185905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa1580156112ba573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112de9190614fbe565b6001600160a01b031614155b1561130857604051635374b59960e01b815260040160405180910390fd5b5f806113138a6107f0565b90935091508a905061134f576113298633611480565b61134a57853360405163168ab55d60e31b81526004016107ad929190614dea565b61137a565b6113598a33611480565b61137a57893360405163168ab55d60e31b81526004016107ad929190614dea565b6113858689846138f7565b611390878483613932565b9650620100008416158015906113b457508363ffffffff1688851763ffffffff1614155b156113d55760405163a2a7201360e01b8152600481018790526024016107ad565b96831796610ab486868a868b613977565b5f826113f28133611480565b61141357803360405163168ab55d60e31b81526004016107ad929190614dea565b8360025f611420836107f0565b5091505063ffffffff828216161561144e5760405163a2a7201360e01b8152600481018490526024016107ad565b5f808061145a8a6107f0565b9250925092506114738a84848c61ffff16178485613977565b5098975050505050505050565b5f80808061148d866107f0565b925092509250846001600160a01b0316836001600160a01b031614806109415750610941838661299f565b6060815183511461151d5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b60648201526084016107ad565b5f83516001600160401b0381111561153757611537614525565b604051908082528060200260200182016040528015611560578160200160208202803683370190505b5090505f5b84518110156115cf576115aa85828151811061158357611583614f33565b602002602001015185838151811061159d5761159d614f33565b6020026020010151610746565b8282815181106115bc576115bc614f33565b6020908102919091010152600101611565565b509392505050565b6115df613215565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af115801561162b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061164f9190614fd9565b50505050565b5f6107ea82613a1e565b5f8061166b858561326e565b905061167681613510565b61169357604051635374b59960e01b815260040160405180910390fd5b5f61169e86336108e5565b9050801580156116b557506116b38233611480565b155b156116d757813360405163168ab55d60e31b81526004016107ad929190614dea565b5f80806116e3856107f0565b925092509250831580156116fa5750620400008216155b1561171b5760405163a2a7201360e01b8152600481018690526024016107ad565b5f6117258a6107f0565b92505050611734888383613932565b97506117428685858b613a33565b6040516001600160401b038916815286907ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b1329060200160405180910390a2509598975050505050505050565b611796613215565b61179f5f613a49565b565b6117b85f805160206154fc8339815191528461326e565b6117c28133611480565b6117e357803360405163168ab55d60e31b81526004016107ad929190614dea565b306001600160a01b0384160361181757604051632ca49b0d60e11b81526001600160a01b03841660048201526024016107ad565b6118376118315f805160206154fc8339815191528661326e565b83613a98565b604051632142170760e11b81523060048201526001600160a01b038481166024830152604482018690527f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906342842e0e906064015f604051808303815f87803b1580156118a4575f80fd5b505af11580156118b6573d5f803e3d5ffd5b5050505050505050565b5f8086866040516118d2929190614ff4565b6040519081900381206331a9108f60e11b82526004820181905291505f907f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa15801561193f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119639190614fbe565b90506001600160a01b0381163314801590611a09575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063e985e9c590604401602060405180830381865afa1580156119e3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a079190614fd9565b155b15611a4157611a255f805160206154fc8339815191528361326e565b3360405163168ab55d60e31b81526004016107ad929190614dea565b6040516323b872dd60e01b81526001600160a01b038281166004830152306024830152604482018490527f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906323b872dd906064015f604051808303815f87803b158015611aae575f80fd5b505af1158015611ac0573d5f803e3d5ffd5b5050604051630a3b53db60e21b81526001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a6051692506328ed4f6c9150611b129085903090600401614dea565b5f604051808303815f87803b158015611b29575f80fd5b505af1158015611b3b573d5f803e3d5ffd5b5050604051636b727d4360e11b8152600481018590526276a70092507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b0316915063d6e4fa8690602401602060405180830381865afa158015611ba7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611bcb9190614e64565b611bd59190614e8f565b9250611c1d88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508a9250505061ffff8816868861310d565b505095945050505050565b6001600160a01b0382163303611c925760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084016107ad565b335f8181526002602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b335f9081526004602052604081205460ff16611d2b5760405162461bcd60e51b81526004016107ad90615003565b5f8787604051611d3c929190614ff4565b604051908190038120633f2891eb60e21b8252600482018190523060248301526044820187905291507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b03169063fca247ac906064016020604051808303815f875af1158015611db5573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611dd99190614e64565b9150611e2d88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508a9250505061ffff8616611e276276a70087614e8f565b8861310d565b509695505050505050565b5f80611e43846107f0565b50841663ffffffff908116908516149250505092915050565b611e64613215565b6007546001600160a01b031615611f785760075460405163a22cb46560e01b81526001600160a01b0391821660048201525f60248201527f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063a22cb465906044015f604051808303815f87803b158015611ee0575f80fd5b505af1158015611ef2573d5f803e3d5ffd5b505060075460405163a22cb46560e01b81526001600160a01b0391821660048201525f60248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9909116925063a22cb46591506044015f604051808303815f87803b158015611f61575f80fd5b505af1158015611f73573d5f803e3d5ffd5b505050505b600780546001600160a01b0319166001600160a01b0383169081179091551561209b5760075460405163a22cb46560e01b81526001600160a01b039182166004820152600160248201527f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063a22cb465906044015f604051808303815f87803b158015612007575f80fd5b505af1158015612019573d5f803e3d5ffd5b505060075460405163a22cb46560e01b81526001600160a01b039182166004820152600160248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9909116925063a22cb46591506044015f604051808303815f87803b158015612089575f80fd5b505af1158015611213573d5f803e3d5ffd5b50565b335f9081526004602052604081205460ff166120cc5760405162461bcd60e51b81526004016107ad90615003565b5f6120e45f805160206154fc8339815191528561326e565b60405163c475abff60e01b815260048101869052602481018590529091505f906001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063c475abff906044016020604051808303815f875af1158015612154573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906121789190614e64565b6040516331a9108f60e11b8152600481018790529091507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa9250505080156121fc575060408051601f3d908101601f191682019092526121f991810190614fbe565b60015b6122095791506107ea9050565b6001600160a01b038116301415806122b157506040516302571be360e01b81526004810184905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015612281573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906122a59190614fbe565b6001600160a01b031614155b156122c0575091506107ea9050565b505f6122cf6276a70083614e8f565b5f8481526001602052604090205490915060a081901c6122f185838386613a33565b50919695505050505050565b5f866123098133611480565b61232a57803360405163168ab55d60e31b81526004016107ad929190614dea565b5f878760405161233b929190614ff4565b6040518091039020905061234f898261326e565b925061235b898461329a565b61236583866133d3565b5f6123a68a858b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061340692505050565b90506123b48a8588886134cd565b94506123bf84613510565b61246b576040516306ab592360e01b8152600481018b9052602481018390523060448201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906306ab5923906064016020604051808303815f875af1158015612434573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906124589190614e64565b506124668482898989613b83565b6124b0565b6124b08a858b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508d92508c91508b90506135fc565b5050509695505050505050565b5f6125005f86868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613bc59050565b6007549091506001600160a01b031661252c5760405163093075b560e21b815260040160405180910390fd5b6125368133611480565b61255757803360405163168ab55d60e31b81526004016107ad929190614dea565b5f8080612563846107f0565b919450925090505f6125748561085e565b905061257f85613c81565b60075f9054906101000a90046001600160a01b03166001600160a01b0316639198c2768a8a878787878e8e6040518963ffffffff1660e01b81526004016125cd989796959493929190615073565b5f604051808303815f87803b1580156125e4575f80fd5b505af11580156125f6573d5f803e3d5ffd5b50505050505050505050505050565b836126108133611480565b61263157803360405163168ab55d60e31b81526004016107ad929190614dea565b84601c5f61263e836107f0565b5091505063ffffffff828216161561266c5760405163a2a7201360e01b8152600481018490526024016107ad565b60405163cf40882360e01b8152600481018990523060248201526001600160a01b0387811660448301526001600160401b03871660648301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063cf408823906084015f604051808303815f87803b1580156126e8575f80fd5b505af11580156126fa573d5f803e3d5ffd5b5050506001600160a01b038816905061275f575f612717896107f0565b509150506201ffff196202000082160161274f57604051632ca49b0d60e11b81526001600160a01b03891660048201526024016107ad565b612759895f613a98565b506118b6565b5f61276989611655565b905061278981898b5f1c600160405180602001604052805f815250613d1e565b505050505050505050565b61279e838361326e565b6127a88133611480565b6127c957803360405163168ab55d60e31b81526004016107ad929190614dea565b7f6c32148f748aba23997146d7fe89e962e3cc30271290fb96f5f4337756c03b5284016128095760405163615a470360e01b815260040160405180910390fd5b6001600160a01b038216158061282757506001600160a01b03821630145b1561285057604051632ca49b0d60e11b81526001600160a01b03831660048201526024016107ad565b61164f611831858561326e565b5f80612869848461326e565b90505f61287582613510565b90505f805160206154fc83398151915285146128945791506107ea9050565b6040516331a9108f60e11b8152600481018590527f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa925050508015612915575060408051601f3d908101601f1916820190925261291291810190614fbe565b60015b612923575f925050506107ea565b6001600160a01b0316301492506107ea915050565b612940613215565b6001600160a01b0382165f81815260046020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf8791015b60405180910390a25050565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205460ff1690565b5f80612a105f87878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613dfe9050565b915091505f612a578288888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613bc59050565b90505f612a64828561326e565b5f818152600660205260409020909150612a7f888a8361511e565b507f6c32148f748aba23997146d7fe89e962e3cc30271290fb96f5f4337756c03b528201612ac05760405163615a470360e01b815260040160405180910390fd5b6040516302571be360e01b8152600481018290525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa158015612b25573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612b499190614fbe565b90506001600160a01b0381163314801590612bef575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063e985e9c590604401602060405180830381865afa158015612bc9573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612bed9190614fd9565b155b15612c1157813360405163168ab55d60e31b81526004016107ad929190614dea565b6001600160a01b03861615612c9c57604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a90612c6e9085908a90600401614dea565b5f604051808303815f87803b158015612c85575f80fd5b505af1158015612c97573d5f803e3d5ffd5b505050505b604051635b0fc9c360e01b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635b0fc9c390612cea9085903090600401614dea565b5f604051808303815f87803b158015612d01575f80fd5b505af1158015612d13573d5f803e3d5ffd5b50505050612789828a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201829052508d93509150819050613b83565b6001600160a01b038416612d7f5760405162461bcd60e51b81526004016107ad90614eee565b6001600160a01b038516331480612d9b5750612d9b853361299f565b612df95760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2063616c6c6572206973206e6f74206f776e6572206e6f7260448201526808185c1c1c9bdd995960ba1b60648201526084016107ad565b6112138585858585613d1e565b612e0e613215565b6001600160a01b038116612e735760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107ad565b61209b81613a49565b5f8181526006602052604081208054829190612e9790614eb6565b80601f0160208091040260200160405190810160405280929190818152602001828054612ec390614eb6565b8015612f0e5780601f10612ee557610100808354040283529160200191612f0e565b820191905f5260205f20905b815481529060010190602001808311612ef157829003601f168201915b5050505050905080515f03612f2557505f92915050565b5f80612f318382613dfe565b90925090505f612f418483613bc5565b9050610954818461285d565b5f8042836001600160401b03161015612f775761ffff1962010000851601612f73575f94505b5f93505b50929391925050565b5f6001600160e01b03198216636cdb3d1360e11b1480612fb057506001600160e01b031982166303a24d0760e21b145b806107ea57506301ffc9a760e01b6001600160e01b03198316146107ea565b5f612fd982611655565b9050806001600160a01b0316836001600160a01b0316036130465760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084016107ad565b336001600160a01b03821614806130625750613062813361299f565b6130d45760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016107ad565b6108e08383613eb2565b5f620200008381161480156108995750426130fc6276a700846151d7565b6001600160401b0316109392505050565b845160208601205f61312c5f805160206154fc8339815191528361326e565b90505f61315488604051806040016040528060058152602001626cae8d60e31b815250613f1f565b5f83815260066020526040902090915061316e82826151f7565b50613181828289620300008a1789613b83565b6001600160a01b038416156118b657604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a906131de9085908890600401614dea565b5f604051808303815f87803b1580156131f5575f80fd5b505af1158015613207573d5f803e3d5ffd5b505050505050505050505050565b5f546001600160a01b0316331461179f5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107ad565b604080516020808201949094528082019290925280518083038201815260609092019052805191012090565b5f80806132a6846107f0565b91945092509050426001600160401b0382161080801561336657506001600160a01b038416158061336657506040516302571be360e01b8152600481018690525f906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015613337573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061335b9190614fbe565b6001600160a01b0316145b156133a4575f613375876107f0565b50915050602081161561339e5760405163a2a7201360e01b8152600481018790526024016107ad565b506133cb565b620100008316156133cb5760405163a2a7201360e01b8152600481018690526024016107ad565b505050505050565b63fffdffff81811763ffffffff16146134025760405163a2a7201360e01b8152600481018390526024016107ad565b5050565b60605f6134aa8360065f8881526020019081526020015f20805461342990614eb6565b80601f016020809104026020016040519081016040528092919081815260200182805461345590614eb6565b80156134a05780601f10613477576101008083540402835291602001916134a0565b820191905f5260205f20905b81548152906001019060200180831161348357829003601f168201915b5050505050613f1f565b5f8581526006602052604090209091506134c482826151f7565b50949350505050565b5f806134d8856107f0565b925050505f806134e9885f1c6107f0565b92509250506134f98787846138f7565b613504858483613932565b98975050505050505050565b5f8061351b83611655565b6001600160a01b0316141580156107ea57506040516302571be360e01b81526004810183905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015613592573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906135b69190614fbe565b6001600160a01b03161492915050565b5f86815260066020526040812080546135e491879161342990614eb6565b90506135f38682868686613b83565b50505050505050565b5f8080613608886107f0565b9250925092505f61362f8860065f8d81526020019081526020015f20805461342990614eb6565b5f8a815260066020526040902080549192509061364b90614eb6565b90505f0361366c575f89815260066020526040902061366a82826151f7565b505b61367b89858886178589613977565b6001600160a01b03871661369857613693895f613a98565b610ab4565b610ab484888b5f1c600160405180602001604052805f815250613d1e565b6201ffff19620200008316016136d6576136d36276a700826151d7565b90505b42816001600160401b0316101561370f576201000082161561370a5760405162461bcd60e51b81526004016107ad90614f47565b613734565b60048216156137345760405163a2a7201360e01b8152600481018490526024016107ad565b604082165f036108e05750505f90815260036020526040902080546001600160a01b0319169055565b60c0816001600160401b0316901b60a08363ffffffff16901b846001600160a01b0316171760015f8681526020019081526020015f208190555050505050565b6001600160a01b0384163b156133cb5760405163bc197c8160e01b81526001600160a01b0385169063bc197c81906137e190899089908890889088906004016152b2565b6020604051808303815f875af192505050801561381b575060408051601f3d908101601f1916820190925261381891810190615303565b60015b6138c75761382761531e565b806308c379a003613860575061383b615337565b806138465750613862565b8060405162461bcd60e51b81526004016107ad91906143d4565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e20455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b60648201526084016107ad565b6001600160e01b0319811663bc197c8160e01b146135f35760405162461bcd60e51b81526004016107ad906153bf565b63ffff000082161580159060018316159082906139115750805b156112135760405163a2a7201360e01b8152600481018690526024016107ad565b5f816001600160401b0316846001600160401b03161115613951578193505b826001600160401b0316846001600160401b0316101561396f578293505b509192915050565b61398385858584613a33565b60405163ffffffff8416815285907f39873f00c80f4f94b7bd1594aebcf650f003545b74824d57ddf4939e3ff3a34b9060200160405180910390a2816001600160401b0316816001600160401b03161115611213576040516001600160401b038216815285907ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b132906020015b60405180910390a25050505050565b5f80613a29836107f0565b5090949350505050565b613a3d8483613f96565b61164f8484848461375d565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b613aa3826001611e38565b15613ac45760405163a2a7201360e01b8152600481018390526024016107ad565b613acd82613c81565b604051635b0fc9c360e01b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635b0fc9c390613b1b9085908590600401614dea565b5f604051808303815f87803b158015613b32575f80fd5b505af1158015613b44573d5f803e3d5ffd5b50506040516001600160a01b03841681528492507fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c49150602001612993565b613b8f85848484613fcf565b847f8ce7013e8abebc55c3890a68f5a27c67c3f7efa64e584de5fb22363c606fd34085858585604051613a0f9493929190615407565b5f805f613bd28585613dfe565b909250905081613c435760018551613bea919061544d565b8414613c385760405162461bcd60e51b815260206004820152601d60248201527f6e616d65686173683a204a756e6b20617420656e64206f66206e616d6500000060448201526064016107ad565b505f91506107ea9050565b613c4d8582613bc5565b6040805160208101929092528101839052606001604051602081830303815290604052805190602001209250505092915050565b5f8181526001602052604090205460a081901c60c082901c613ca4838383612f4d565b5f86815260036020526040812080546001600160a01b0319169055909350613cd091508590848461375d565b60408051858152600160208201525f916001600160a01b0386169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b5f805f613d2a866107f0565b925092509250613d3b8683836136b6565b846001148015613d5c5750876001600160a01b0316836001600160a01b0316145b613d785760405162461bcd60e51b81526004016107ad90614f47565b866001600160a01b0316836001600160a01b031603613d9957505050611213565b613da58688848461375d565b60408051878152602081018790526001600160a01b03808a1692908b169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46118b6338989898989614041565b5f8083518310613e505760405162461bcd60e51b815260206004820152601e60248201527f726561644c6162656c3a20496e646578206f7574206f6620626f756e6473000060448201526064016107ad565b5f848481518110613e6357613e63614f33565b016020015160f81c90508015613e8f57613e8885613e82866001615460565b836140fb565b9250613e93565b5f92505b613e9d8185615460565b613ea8906001615460565b9150509250929050565b5f81815260036020526040902080546001600160a01b0319166001600160a01b0384169081179091558190613ee682611655565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6060600183511015613f4457604051631406d65b60e11b815260040160405180910390fd5b60ff83511115613f69578260405163e3ba295f60e01b81526004016107ad91906143d4565b82518383604051602001613f7f93929190615473565b604051602081830303815290604052905092915050565b61ffff811615801590613fae57506201000181811614155b156134025760405163a2a7201360e01b8152600481018390526024016107ad565b613fd98483613f96565b5f848152600160205260409020546001600160a01b0381161561403557613fff85613c81565b6040515f815285907fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c49060200160405180910390a25b6112138585858561411d565b6001600160a01b0384163b156133cb5760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e619061408590899089908890889088906004016154b7565b6020604051808303815f875af19250505080156140bf575060408051601f3d908101601f191682019092526140bc91810190615303565b60015b6140cb5761382761531e565b6001600160e01b0319811663f23a6e6160e01b146135f35760405162461bcd60e51b81526004016107ad906153bf565b82515f906141098385615460565b1115614113575f80fd5b5091016020012090565b835f808061412a846107f0565b9194509250905063ffff000082166001600160401b038087169083161115614150578195505b42826001600160401b03161061416557958617955b6001600160a01b038416156141bc5760405162461bcd60e51b815260206004820152601f60248201527f455243313135353a206d696e74206f66206578697374696e6720746f6b656e0060448201526064016107ad565b6001600160a01b03881661421c5760405162461bcd60e51b815260206004820152602160248201527f455243313135353a206d696e7420746f20746865207a65726f206164647265736044820152607360f81b60648201526084016107ad565b306001600160a01b038916036142915760405162461bcd60e51b815260206004820152603460248201527f455243313135353a206e65774f776e65722063616e6e6f74206265207468652060448201527313985b5955dc985c1c195c8818dbdb9d1c9858dd60621b60648201526084016107ad565b61429d8589898961375d565b60408051868152600160208201526001600160a01b038a16915f9133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4612789335f8a88600160405180602001604052805f815250614041565b6001600160a01b038116811461209b575f80fd5b5f8060408385031215614327575f80fd5b823561433281614302565b946020939093013593505050565b5f60208284031215614350575f80fd5b5035919050565b6001600160e01b03198116811461209b575f80fd5b5f6020828403121561437c575f80fd5b813561089981614357565b5f5b838110156143a1578181015183820152602001614389565b50505f910152565b5f81518084526143c0816020860160208601614387565b601f01601f19169290920160200192915050565b602081525f61089960208301846143a9565b5f80604083850312156143f7575f80fd5b82359150602083013561440981614302565b809150509250929050565b80356001600160401b038116811461442a575f80fd5b919050565b5f8060408385031215614440575f80fd5b8235915061445060208401614414565b90509250929050565b5f8083601f840112614469575f80fd5b5081356001600160401b0381111561447f575f80fd5b602083019150836020828501011115614496575f80fd5b9250929050565b5f805f805f608086880312156144b1575f80fd5b85356144bc81614302565b945060208601356144cc81614302565b93506040860135925060608601356001600160401b038111156144ed575f80fd5b6144f988828901614459565b969995985093965092949392505050565b5f6020828403121561451a575f80fd5b813561089981614302565b634e487b7160e01b5f52604160045260245ffd5b601f8201601f191681016001600160401b038111828210171561455e5761455e614525565b6040525050565b5f6001600160401b0382111561457d5761457d614525565b50601f01601f191660200190565b5f82601f83011261459a575f80fd5b81356145a581614565565b6040516145b28282614539565b8281528560208487010111156145c6575f80fd5b826020860160208301375f92810160200192909252509392505050565b803563ffffffff8116811461442a575f80fd5b5f805f805f805f60e0888a03121561460c575f80fd5b8735965060208801356001600160401b03811115614628575f80fd5b6146348a828b0161458b565b965050604088013561464581614302565b9450606088013561465581614302565b935061466360808901614414565b925061467160a089016145e3565b915061467f60c08901614414565b905092959891949750929550565b5f6001600160401b038211156146a5576146a5614525565b5060051b60200190565b5f82601f8301126146be575f80fd5b813560206146cb8261468d565b6040516146d88282614539565b80915083815260208101915060208460051b8701019350868411156146fb575f80fd5b602086015b84811015611e2d5780358352918301918301614700565b5f805f805f60a0868803121561472b575f80fd5b853561473681614302565b9450602086013561474681614302565b935060408601356001600160401b0380821115614761575f80fd5b61476d89838a016146af565b94506060880135915080821115614782575f80fd5b61478e89838a016146af565b935060808801359150808211156147a3575f80fd5b506147b08882890161458b565b9150509295509295909350565b5f805f80608085870312156147d0575f80fd5b84359350602085013592506147e7604086016145e3565b91506147f560608601614414565b905092959194509250565b803561ffff8116811461442a575f80fd5b5f8060408385031215614822575f80fd5b8235915061445060208401614800565b5f8060408385031215614843575f80fd5b82356001600160401b0380821115614859575f80fd5b818501915085601f83011261486c575f80fd5b813560206148798261468d565b6040516148868282614539565b83815260059390931b85018201928281019150898411156148a5575f80fd5b948201945b838610156148cc5785356148bd81614302565b825294820194908201906148aa565b965050860135925050808211156148e1575f80fd5b50613ea8858286016146af565b5f815180845260208085019450602084015f5b8381101561491d57815187529582019590820190600101614901565b509495945050505050565b602081525f61089960208301846148ee565b5f805f6060848603121561494c575f80fd5b833561495781614302565b9250602084013561496781614302565b929592945050506040919091013590565b5f805f6060848603121561498a575f80fd5b83359250602084013591506149a160408501614414565b90509250925092565b5f805f606084860312156149bc575f80fd5b8335925060208401356149ce81614302565b915060408401356149de81614302565b809150509250925092565b5f805f805f608086880312156149fd575f80fd5b85356001600160401b03811115614a12575f80fd5b614a1e88828901614459565b9096509450506020860135614a3281614302565b9250614a4060408701614800565b91506060860135614a5081614302565b809150509295509295909350565b801515811461209b575f80fd5b5f8060408385031215614a7c575f80fd5b8235614a8781614302565b9150602083013561440981614a5e565b5f805f805f8060a08789031215614aac575f80fd5b86356001600160401b03811115614ac1575f80fd5b614acd89828a01614459565b9097509550506020870135614ae181614302565b9350604087013592506060870135614af881614302565b9150614b0660808801614800565b90509295509295509295565b5f8060408385031215614b23575f80fd5b82359150614450602084016145e3565b5f8060408385031215614b44575f80fd5b50508035926020909101359150565b5f805f805f8060a08789031215614b68575f80fd5b8635955060208701356001600160401b03811115614b84575f80fd5b614b9089828a01614459565b9096509450506040870135614ba481614302565b9250614bb2606088016145e3565b9150614b0660808801614414565b5f805f8060408587031215614bd3575f80fd5b84356001600160401b0380821115614be9575f80fd5b614bf588838901614459565b90965094506020870135915080821115614c0d575f80fd5b50614c1a87828801614459565b95989497509550505050565b5f805f8060808587031215614c39575f80fd5b843593506020850135614c4b81614302565b925060408501356147e781614302565b5f805f60608486031215614c6d575f80fd5b833592506020840135915060408401356149de81614302565b5f8060408385031215614c97575f80fd5b8235614ca281614302565b9150602083013561440981614302565b5f805f8060608587031215614cc5575f80fd5b84356001600160401b03811115614cda575f80fd5b614ce687828801614459565b9095509350506020850135614cfa81614302565b91506040850135614d0a81614302565b939692955090935050565b5f805f805f60a08688031215614d29575f80fd5b8535614d3481614302565b94506020860135614d4481614302565b9350604086013592506060860135915060808601356001600160401b03811115614d6c575f80fd5b6147b08882890161458b565b5f60208284031215614d88575f80fd5b81516001600160401b03811115614d9d575f80fd5b8201601f81018413614dad575f80fd5b8051614db881614565565b604051614dc58282614539565b828152866020848601011115614dd9575f80fd5b610954836020830160208701614387565b9182526001600160a01b0316602082015260400190565b5f805f8060808587031215614e14575f80fd5b84356001600160401b03811115614e29575f80fd5b614e358782880161458b565b9450506020850135614e4681614302565b9250614e5460408601614800565b91506060850135614d0a81614302565b5f60208284031215614e74575f80fd5b5051919050565b634e487b7160e01b5f52601160045260245ffd5b6001600160401b03818116838216019080821115614eaf57614eaf614e7b565b5092915050565b600181811c90821680614eca57607f821691505b602082108103614ee857634e487b7160e01b5f52602260045260245ffd5b50919050565b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b634e487b7160e01b5f52603260045260245ffd5b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b604081525f614fa360408301856148ee565b8281036020840152614fb581856148ee565b95945050505050565b5f60208284031215614fce575f80fd5b815161089981614302565b5f60208284031215614fe9575f80fd5b815161089981614a5e565b818382375f9101908152919050565b60208082526028908201527f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f604082015267373a3937b63632b960c11b606082015260800190565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b60c081525f61508660c083018a8c61504b565b6001600160a01b03898116602085015263ffffffff891660408501526001600160401b03881660608501528616608084015282810360a08401526150cb81858761504b565b9b9a5050505050505050505050565b601f8211156108e057805f5260205f20601f840160051c810160208510156150ff5750805b601f840160051c820191505b81811015611213575f815560010161510b565b6001600160401b0383111561513557615135614525565b615149836151438354614eb6565b836150da565b5f601f84116001811461517a575f85156151635750838201355b5f19600387901b1c1916600186901b178355611213565b5f83815260208120601f198716915b828110156151a95786850135825560209485019460019092019101615189565b50868210156151c5575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b6001600160401b03828116828216039080821115614eaf57614eaf614e7b565b81516001600160401b0381111561521057615210614525565b6152248161521e8454614eb6565b846150da565b602080601f831160018114615257575f84156152405750858301515b5f19600386901b1c1916600185901b1785556133cb565b5f85815260208120601f198616915b8281101561528557888601518255948401946001909101908401615266565b50858210156152a257878501515f19600388901b60f8161c191681555b5050505050600190811b01905550565b6001600160a01b0386811682528516602082015260a0604082018190525f906152dd908301866148ee565b82810360608401526152ef81866148ee565b9050828103608084015261350481856143a9565b5f60208284031215615313575f80fd5b815161089981614357565b5f60033d11156153345760045f803e505f5160e01c5b90565b5f60443d10156153445790565b6040516003193d81016004833e81513d6001600160401b03816024840111818411171561537357505050505090565b828501915081518181111561538b5750505050505090565b843d87010160208285010111156153a55750505050505090565b6153b460208286010187614539565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b608081525f61541960808301876143a9565b6001600160a01b039590951660208301525063ffffffff9290921660408301526001600160401b0316606090910152919050565b818103818111156107ea576107ea614e7b565b808201808211156107ea576107ea614e7b565b60ff60f81b8460f81b1681525f8351615493816001850160208801614387565b8351908301906154aa816001840160208801614387565b0160010195945050505050565b6001600160a01b03868116825285166020820152604081018490526060810183905260a0608082018190525f906154f0908301846143a9565b97965050505050505056fe93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4aea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2a68925cf5169f28586095d5b5b9933b3008f4c793a48be4f59b8b2bc62aa60a":"0x1","0x54cdd369e4e8a8515e52ca72ec816c2101831ad1f18bf44102ed171459c9b4f8":"0x2","0xa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb49":"0xffffffffffffffff000100010000000000000000000000000000000000000000","0xafa26c20e8b3d9a2853d642cfe1021dae26242ffedfac91c97aab212c1a4b93b":"0xffffffffffffffff000100010000000000000000000000000000000000000000","0xef5b11c47ebee44618abc22110e10e3b408ea5e799056d2b38461aa7b97c5a97":"0x1","0xfb9e8e321b8a5ec48f12a7b41f22c6e595d761285c9eb19d8dda7c99edf1b54f":"0x36574680000000000000000000000000000000000000000000000000000000a"}},"0x6e1eb616c7d69491f9a880f815ff5574768cba20":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b506004361061007a575f3560e01c806314ab90381161005857806314ab90381461010357806316a25cbd146101165780631896f70a146101625780635b0fc9c314610175575f80fd5b80630178b8bf1461007e57806302571be3146100c657806306ab5923146100ee575b5f80fd5b6100a961008c366004610403565b5f908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100a96100d4366004610403565b5f908152602081905260409020546001600160a01b031690565b6101016100fc366004610435565b610188565b005b610101610111366004610467565b610242565b610149610124366004610403565b5f90815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100bd565b6101016101703660046104a1565b6102e2565b6101016101833660046104a1565b610374565b5f8381526020819052604090205483906001600160a01b031633146101ab575f80fd5b60408051602080820187905281830186905282518083038401815260608301808552815191909201206001600160a01b0386169091529151859187917fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829181900360800190a35f90815260208190526040902080546001600160a01b0319166001600160a01b039390931692909217909155505050565b5f8281526020819052604090205482906001600160a01b03163314610265575f80fd5b60405167ffffffffffffffff8316815283907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a2505f91825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b5f8281526020819052604090205482906001600160a01b03163314610305575f80fd5b6040516001600160a01b038316815283907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a2505f9182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b5f8281526020819052604090205482906001600160a01b03163314610397575f80fd5b6040516001600160a01b038316815283907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a2505f9182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b5f60208284031215610413575f80fd5b5035919050565b80356001600160a01b0381168114610430575f80fd5b919050565b5f805f60608486031215610447575f80fd5b833592506020840135915061045e6040850161041a565b90509250925092565b5f8060408385031215610478575f80fd5b82359150602083013567ffffffffffffffff81168114610496575f80fd5b809150509250929050565b5f80604083850312156104b2575f80fd5b823591506104c26020840161041a565b9050925092905056fea164736f6c6343000818000a","storage":{"0x859ecef2e168dc10231b000bd53493b42bc9d944cac29d94582c1e1d43592131":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x7bb6cd9be29fab783c0b494a06fed8b2e2596b7a":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100ea5760003560e01c80636debcb8d1161008c578063b34f33c511610066578063b34f33c514610741578063d0778d6c14610814578063ef2c3088146108f2578063f5090c1e14610980576100ea565b80636debcb8d146105ca5780636fab95b3146106585780637b1039991461071d576100ea565b8063511f1112116100c8578063511f1112146103c557806361603dd91461044857806368b6154f146104bd5780636ccbae5f1461059b576100ea565b806307eca395146100ef578063280d9b051461021457806330135293146102f2575b600080fd5b610212600480360360a081101561010557600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561013457600080fd5b82018360208201111561014657600080fd5b803590602001918460018302840111600160201b8311171561016757600080fd5b919390929091602081019035600160201b81111561018457600080fd5b82018360208201111561019657600080fd5b803590602001918460018302840111600160201b831117156101b757600080fd5b919390929091602081019035600160201b8111156101d457600080fd5b8201836020820111156101e657600080fd5b803590602001918460018302840111600160201b8311171561020757600080fd5b509092509050610aae565b005b610212600480360360a081101561022a57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561026457600080fd5b82018360208201111561027657600080fd5b803590602001918460018302840111600160201b8311171561029757600080fd5b919390929091602081019035600160201b8111156102b457600080fd5b8201836020820111156102c657600080fd5b803590602001918460018302840111600160201b831117156102e757600080fd5b509092509050610c92565b6102126004803603608081101561030857600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561033757600080fd5b82018360208201111561034957600080fd5b803590602001918460018302840111600160201b8311171561036a57600080fd5b919390929091602081019035600160201b81111561038757600080fd5b82018360208201111561039957600080fd5b803590602001918460018302840111600160201b831117156103ba57600080fd5b509092509050610e3d565b610212600480360360608110156103db57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561040a57600080fd5b82018360208201111561041c57600080fd5b803590602001918460018302840111600160201b8311171561043d57600080fd5b509092509050610fcc565b6102126004803603604081101561045e57600080fd5b81359190810190604081016020820135600160201b81111561047f57600080fd5b82018360208201111561049157600080fd5b803590602001918460018302840111600160201b831117156104b257600080fd5b5090925090506110c9565b610212600480360360a08110156104d357600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561050d57600080fd5b82018360208201111561051f57600080fd5b803590602001918460018302840111600160201b8311171561054057600080fd5b919390929091602081019035600160201b81111561055d57600080fd5b82018360208201111561056f57600080fd5b803590602001918460018302840111600160201b8311171561059057600080fd5b5090925090506111ae565b6105b8600480360360208110156105b157600080fd5b50356113a8565b60408051918252519081900360200190f35b610212600480360360808110156105e057600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561061a57600080fd5b82018360208201111561062c57600080fd5b803590602001918460018302840111600160201b8311171561064d57600080fd5b5090925090506113ba565b6102126004803603606081101561066e57600080fd5b81359190810190604081016020820135600160201b81111561068f57600080fd5b8201836020820111156106a157600080fd5b803590602001918460018302840111600160201b831117156106c257600080fd5b919390929091602081019035600160201b8111156106df57600080fd5b8201836020820111156106f157600080fd5b803590602001918460018302840111600160201b8311171561071257600080fd5b5090925090506114d4565b610725611675565b604080516001600160a01b039092168252519081900360200190f35b6102126004803603608081101561075757600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561078657600080fd5b82018360208201111561079857600080fd5b803590602001918460018302840111600160201b831117156107b957600080fd5b919390929091602081019035600160201b8111156107d657600080fd5b8201836020820111156107e857600080fd5b803590602001918460018302840111600160201b8311171561080957600080fd5b509092509050611684565b610212600480360360a081101561082a57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561086457600080fd5b82018360208201111561087657600080fd5b803590602001918460018302840111600160201b8311171561089757600080fd5b919390929091602081019035600160201b8111156108b457600080fd5b8201836020820111156108c657600080fd5b803590602001918460018302840111600160201b831117156108e757600080fd5b5090925090506117de565b6102126004803603608081101561090857600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561094257600080fd5b82018360208201111561095457600080fd5b803590602001918460018302840111600160201b8311171561097557600080fd5b5090925090506119e4565b610212600480360360c081101561099657600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156109d057600080fd5b8201836020820111156109e257600080fd5b803590602001918460018302840111600160201b83111715610a0357600080fd5b919390929091602081019035600160201b811115610a2057600080fd5b820183602082011115610a3257600080fd5b803590602001918460018302840111600160201b83111715610a5357600080fd5b919390929091602081019035600160201b811115610a7057600080fd5b820183602082011115610a8257600080fd5b803590602001918460018302840111600160201b83111715610aa357600080fd5b509092509050611ad3565b610bb163ce9fb82b89898989898960405160240180876001600160a01b03166001600160a01b0316815260200186815260200180602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f820116905080830192505050985050505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208884848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b600154604051630119f80560e21b81526001600160a01b038a811660048301908152602483018b9052608060448401908152608484018a90529190931692630467e014928c928c928c928c928c928c92909190606481019060a401878780828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f82011690508083019250505098505050505050505050600060405180830381600087803b158015610c7057600080fd5b505af1158015610c84573d6000803e3d6000fd5b505050505050505050505050565b610d8363b88d4fde888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040516315eab15d60e21b81526001600160a01b03898116600483019081528982166024840152604483018990526080606484019081526084840188905291909316926357aac574928b928b928b928b928b929160a401848480828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b158015610e1c57600080fd5b505af1158015610e30573d6000803e3d6000fd5b5050505050505050505050565b610f09637c69eae28787878760405160240180856001600160a01b03166001600160a01b0316815260200184815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09d909d1b9c909c178c529351909a208a51918d01849004840282018401909a528b81528f985096508b95508a94508493505085019050838280828437600092019190915250611d5492505050565b600154604051630119f80560e21b81526001600160a01b038881166004830190815260248301899052608060448401908152608484018890529190931692630467e014928a928a928a928a9290606481019060a401858580828437600081840152601f19601f8201169050808301925050508381038252600081526020016020019650505050505050600060405180830381600087803b158015610fac57600080fd5b505af1158015610fc0573d6000803e3d6000fd5b50505050505050505050565b604080516001600160a01b038616602482015260448082018690528251808303909101815260649091018252602081810180516001600160e01b0316632392c18960e01b17815291519091208251601f85018390048302810183019093528383526110569290918691908690869081908401838280828437600092019190915250611d5492505050565b60015460408051631292e83560e11b81526001600160a01b0387811660048301526024820187905291519190921691632525d06a91604480830192600092919082900301818387803b1580156110ab57600080fd5b505af11580156110bf573d6000803e3d6000fd5b5050505050505050565b6040805160248082018690528251808303909101815260449091018252602081810180516001600160e01b0316630852cd8d60e31b17815291519091208251601f85018390048302810183019093528383526111449290918691908690869081908401838280828437600092019190915250611d5492505050565b6001546040805163e67ca8a360e01b81526004810186905290516001600160a01b039092169163e67ca8a39160248082019260009290919082900301818387803b15801561119157600080fd5b505af11580156111a5573d6000803e3d6000fd5b50505050505050565b61129f639e5be9a5888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b03909316926302759c37928b928b9286926368b62d32928d928d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561132757600080fd5b505afa15801561133b573d6000803e3d6000fd5b505050506040513d602081101561135157600080fd5b5051604080516001600160e01b031960e087901b1681526001600160a01b03948516600482015292909316602483015260448201529051606480830192600092919082900301818387803b158015610e1c57600080fd5b60009081526020819052604090205490565b604080516001600160a01b0380881660248301528616604482015260648082018690528251808303909101815260849091018252602081810180516001600160e01b0316632142170760e11b17815291519091208251601f850183900483028101830190935283835261144c9290918691908690869081908401838280828437600092019190915250611d5492505050565b600154604080516315eab15d60e21b81526001600160a01b0388811660048301528781166024830152604482018790526080606483015260006084830181905292519316926357aac5749260c48084019391929182900301818387803b1580156114b557600080fd5b505af11580156114c9573d6000803e3d6000fd5b505050505050505050565b611585635cbe11128686866040516024018084815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09c909c1b9b909b178b5293519099208951918c018490048402820184019099528a81528e975095508a9450899350839250508401838280828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b039093169263e67ca8a39284926368b62d32928b928b928b929190606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561160b57600080fd5b505afa15801561161f573d6000803e3d6000fd5b505050506040513d602081101561163557600080fd5b5051604080516001600160e01b031960e085901b168152600481019290925251602480830192600092919082900301818387803b1580156114b557600080fd5b6001546001600160a01b031690565b61175063d8d3cc6e8787878760405160240180856001600160a01b03166001600160a01b0316815260200184815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09d909d1b9c909c178c529351909a208a51918d01849004840282018401909a528b81528f985096508b95508a94508493505085019050838280828437600092019190915250611d5492505050565b60015460405163b546666960e01b81526001600160a01b03888116600483019081526024830189905260606044840190815260648401889052919093169263b5466669928a928a928a928a9290608401848480828437600081840152601f19601f82011690508083019250505095505050505050600060405180830381600087803b158015610fac57600080fd5b6118cf639d743989888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b03909316926357aac574928b928b9286926368b62d32928d928d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561195757600080fd5b505afa15801561196b573d6000803e3d6000fd5b505050506040513d602081101561198157600080fd5b5051604080516001600160e01b031960e087901b1681526001600160a01b039485166004820152929093166024830152604482015260806064820152600060848201819052915160c4808301939282900301818387803b158015610e1c57600080fd5b604080516001600160a01b0380881660248301528616604482015260648082018690528251808303909101815260849091018252602081810180516001600160e01b03166323b872dd60e01b17815291519091208251601f8501839004830281018301909352838352611a769290918691908690869081908401838280828437600092019190915250611d5492505050565b600154604080516302759c3760e01b81526001600160a01b038881166004830152878116602483015260448201879052915191909216916302759c3791606480830192600092919082900301818387803b1580156114b557600080fd5b611bf063c29b52f98a8a8a8a8a8a8a60405160240180886001600160a01b03166001600160a01b03168152602001876001600160a01b03166001600160a01b0316815260200186815260200180602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f82011690508083019250505099505050505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208884848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b8152600481018a815260248201928352604482018990526001600160a01b03909316926357aac574928d928d9286926368b62d32928f928f928f92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b158015611c7857600080fd5b505afa158015611c8c573d6000803e3d6000fd5b505050506040513d6020811015611ca257600080fd5b50516040516001600160e01b031960e086901b1681526001600160a01b0380851660048301908152908416602483015260448201839052608060648301908152608483018b90528b928b92919060a401848480828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b158015611d3157600080fd5b505af1158015611d45573d6000803e3d6000fd5b50505050505050505050505050565b6000828152602081815260408083205481518084018890523060601b81840152605480820183905283518083039091018152607490910190925281519190920120909190611db3908490611da790611ea9565b9063ffffffff611efa16565b90506001600160a01b03811615801590611e4957506001546040805163430c208160e01b81526001600160a01b038481166004830152602482018890529151919092169163430c2081916044808301926020929190829003018186803b158015611e1c57600080fd5b505afa158015611e30573d6000803e3d6000fd5b505050506040513d6020811015611e4657600080fd5b50515b611e8e576040805162461bcd60e51b8152602060048201526011602482015270494e56414c49445f5349474e415455524560781b604482015290519081900360640190fd5b50505060009081526020819052604090208054600101905550565b604080517f19457468657265756d205369676e6564204d6573736167653a0a333200000000602080830191909152603c8083019490945282518083039094018452605c909101909152815191012090565b60008151604114611f0d57506000611fe3565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0821115611f535760009350505050611fe3565b8060ff16601b14158015611f6b57508060ff16601c14155b15611f7c5760009350505050611fe3565b6040805160008152602080820180845289905260ff8416828401526060820186905260808201859052915160019260a0808401939192601f1981019281900390910190855afa158015611fd3573d6000803e3d6000fd5b5050506020604051035193505050505b9291505056fea265627a7a7231582014816bfd0c1519ce8c4cf272eb0526ffdba3abef0df7f17deb0da40bd8abb77f64736f6c634300050c0032","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533"}},"0x7c3c91245769c8b7450ad522792dec4bd4bf797f":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b506004361061003f575f3560e01c80631bf7e13e146100435780636ccbae5f1461006c578063a424740014610099575b5f80fd5b610056610051366004610749565b6100bc565b604051610063919061082c565b60405180910390f35b61008b61007a36600461083e565b5f9081526001602052604090205490565b604051908152602001610063565b6100ac6100a7366004610749565b6101d6565b6040519015158152602001610063565b60605f5a90506100cd8585856101d6565b6101315760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e61676572466f727761726465723a205349474e415455604482015269149157d253959053125160b21b60648201526084015b60405180910390fd5b6101cb6101416020870187610870565b5f546001600160a01b031660408801358461015f60608b018b610889565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f9201919091525061023292505050565b9150505b9392505050565b5f61022a6101e38561093a565b5f54604080516020601f88018190048102820181019092528681526001600160a01b03909216919087908790819084018382808284375f9201919091525061030e92505050565b949350505050565b606061023d85610453565b5f80876001600160a01b0316866102568b8a898961047e565b60405161026391906109f5565b5f604051808303815f8787f1925050503d805f811461029d576040519150601f19603f3d011682016040523d82523d5f602084013e6102a2565b606091505b5090925090506102b3603f87610a10565b5a116102c1576102c1610a2f565b61030182826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506104ae565b9998505050505050505050565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015610352573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103769190610a43565b90505f6104238660600151805190602001208688602001516040516020016103c39392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561044957508551610449906001600160a01b031682866104e7565b9695505050505050565b5f8181526001602081905260409091205461046d91610a5a565b5f9182526001602052604090912055565b606082858560405160200161049593929190610a7f565b6040516020818303038152906040529050949350505050565b606083156104bd5750816101cf565b8251156104cd5782518084602001fd5b8160405162461bcd60e51b8152600401610128919061082c565b5f805f6104f48585610622565b90925090505f81600481111561050c5761050c610abd565b14801561052a5750856001600160a01b0316826001600160a01b0316145b1561053a576001925050506101cf565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401610561929190610ad1565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161059f91906109f5565b5f60405180830381855afa9150503d805f81146105d7576040519150601f19603f3d011682016040523d82523d5f602084013e6105dc565b606091505b50915091508180156105ef575080516020145b801561061657508051630b135d3f60e11b906106149083016020908101908401610a43565b145b98975050505050505050565b5f808251604103610656576020830151604084015160608501515f1a61064a87828585610664565b9450945050505061065d565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561069957505f90506003610740565b8460ff16601b141580156106b157508460ff16601c14155b156106c157505f90506004610740565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610712573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b03811661073a575f60019250925050610740565b91505f90505b94509492505050565b5f805f6040848603121561075b575f80fd5b833567ffffffffffffffff80821115610772575f80fd5b9085019060808288031215610785575f80fd5b9093506020850135908082111561079a575f80fd5b818601915086601f8301126107ad575f80fd5b8135818111156107bb575f80fd5b8760208285010111156107cc575f80fd5b6020830194508093505050509250925092565b5f5b838110156107f95781810151838201526020016107e1565b50505f910152565b5f81518084526108188160208601602086016107df565b601f01601f19169290920160200192915050565b602081525f6101cf6020830184610801565b5f6020828403121561084e575f80fd5b5035919050565b80356001600160a01b038116811461086b575f80fd5b919050565b5f60208284031215610880575f80fd5b6101cf82610855565b5f808335601e1984360301811261089e575f80fd5b83018035915067ffffffffffffffff8211156108b8575f80fd5b60200191503681900382131561065d575f80fd5b634e487b7160e01b5f52604160045260245ffd5b6040516080810167ffffffffffffffff81118282101715610903576109036108cc565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610932576109326108cc565b604052919050565b5f6080823603121561094a575f80fd5b6109526108e0565b61095b83610855565b81526020808401358183015260408401356040830152606084013567ffffffffffffffff8082111561098b575f80fd5b9085019036601f83011261099d575f80fd5b8135818111156109af576109af6108cc565b6109c1601f8201601f19168501610909565b915080825236848285010111156109d6575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b5f8251610a068184602087016107df565b9190910192915050565b5f82610a2a57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b5f60208284031215610a53575f80fd5b5051919050565b80820180821115610a7957634e487b7160e01b5f52601160045260245ffd5b92915050565b5f8451610a908184602089016107df565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f61022a604083018461080156fea164736f6c6343000818000a","storage":{"0x0":"0x39a27956b78d00a4e00ea8833ff0947410a2933f"}},"0x8861cdfa38838531275ce12f9e795c3b9ff29cbe":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x936188f2c3c8e8c95e425b6fe41c2ac9e701585e":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x94f57ed7e9af03a10e8eb23ce1b3c7914a182b0f":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x95f29431aeb52c0d5dbeeec36010b8e2ca69cb3d":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x9b2565a3545a1312bdcb6e7148a7f7cae8c2706b":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c806373cc48a61161008857806398d35f201161006357806398d35f2014610215578063bd7ed31a1461021d578063c327deef14610245578063d7b82ebe1461026d575f80fd5b806373cc48a6146101af5780638438dc04146101ef5780638da5cb5b14610202575f80fd5b806313af4035116100c357806313af40351461015657806328e7677d146101695780632c095cbb1461017c578063435cc1621461018f575f80fd5b8063020ed8d3146100e9578063087991bc146100fe5780630b1a249514610143575b5f80fd5b6100fc6100f73660046122ff565b610280565b005b61011161010c36600461238a565b610300565b6040805163ffffffff94851681529390921660208401526001600160601b031916908201526060015b60405180910390f35b6100fc610151366004612510565b61036c565b6100fc6101643660046125c6565b6104da565b6100fc6101773660046122ff565b610512565b6100fc61018a3660046125e1565b61058a565b6101a261019d366004612674565b610656565b60405161013a919061278c565b6101d76101bd36600461279e565b60046020525f90815260409020546001600160a01b031681565b6040516001600160a01b03909116815260200161013a565b6100fc6101fd3660046122ff565b6106d2565b6001546101d7906001600160a01b031681565b6101a261074a565b6101d761022b36600461279e565b60056020525f90815260409020546001600160a01b031681565b6101d761025336600461279e565b60036020525f90815260409020546001600160a01b031681565b6101a261027b3660046127b7565b6107d5565b6001546001600160a01b03163314610296575f80fd5b60ff82165f8181526003602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527ff73c3c226af96b7f1ba666a21b3ceaf2be3ee6a365e3178fd9cd1eaae0075aa891015b60405180910390a15050565b5f805f8060025f8787604051610317929190612817565b604080519182900390912082526020808301939093529081015f90812061ffff8b16825290925290205463ffffffff80821695506401000000008204169350600160401b900460601b91505093509350939050565b83516020808601919091205f90815260028252604080822061ffff891683529092529081205463ffffffff16906103a385846107ea565b90506103b0818784610889565b6103b8612239565b845151156103d7576103ca85856107ea565b90506103d7818885610889565b5f6103e1836108cc565b602081015190915060fe16156103f5575f80fd5b61040081602761092a565b158015610425575061041381600261092a565b1580610425575061042581600661092a565b61042d575f80fd5b61043e89898561012001518461093a565b156104795787516020808a01919091205f90815260028252604080822061ffff8d1683529092522080546001600160e01b03191690556104cf565b6104988884610120015183856101200151610493876108cc565b610968565b156100e55787516020808a01919091205f90815260028252604080822061ffff8d1683529092522080546001600160e01b03191690555b505050505050505050565b6001546001600160a01b031633146104f0575f80fd5b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6001546001600160a01b03163314610528575f80fd5b60ff82165f8181526004602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527f2fcc274c3b72dd483ab201bfa87295e3817e8b9b10693219873b722ca1af00c791016102f4565b610592612239565b61059c83836107ea565b805190915061ffff16602f146105b0575f80fd5b60a081015184516020808701919091205f90815260028252604080822061ffff8a16835290925220546105e9919063ffffffff16610a7c565b6105f1575f80fd5b5f6105fb82610a94565b9050805151602082015110156100e55761061c818361012001518789610aab565b505082516020808501919091205f90815260028252604080822061ffff881683529092522080546001600160e01b03191690555b50505050565b60605f83838080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201829052509394505050505b85518110156106c7576106bd8682815181106106af576106af612826565b602002602001015183610c4a565b9150600101610691565b5090505b9392505050565b6001546001600160a01b031633146106e8575f80fd5b60ff82165f8181526005602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527fc7eec866a7a1386188cc3ca20ffea75b71bd3e90a60b6791b1d3f0971145118d91016102f4565b5f80546107569061283a565b80601f01602080910402602001604051908101604052809291908181526020018280546107829061283a565b80156107cd5780601f106107a4576101008083540402835291602001916107cd565b820191905f5260205f20905b8154815290600101906020018083116107b057829003601f168201915b505050505081565b60606107e18383610c4a565b90505b92915050565b6107f2612239565b82516107fd90610dc6565b905061080d8160e0015183610ebf565b610815575f80fd5b5f61082382835f0151610f25565b604083015190915060ff16610838825f610fcc565b14610841575f80fd5b610120820181905260808201516108589042610a7c565b610860575f80fd5b61086e428360a00151610a7c565b610876575f80fd5b61088281838686611026565b5092915050565b6108978360a0015182610a7c565b61089f575f80fd5b825161ffff166032146108b0575f80fd5b6108bf83610120015183611106565b6108c7575f80fd5b505050565b6040805160c0810182525f8082526020820181905291810182905260608082018190526080820183905260a08201529061090583610a94565b60a081015160c08201519192506106cb91610921908290612880565b83519190611172565b5f6107e18360a001515f846112b4565b5f6109468284866113c1565b1561095d57610955828661092a565b159050610960565b505f5b949350505050565b60208101515f9060fe161561097b575f80fd5b5f610985866113e6565b90505f610991856113e6565b90505f8061099f8a82611401565b6109aa906001612893565b60ff1690505b8951811015610a6b57836109dc896109d784858f516109cf9190612880565b8f9190611424565b6114a4565b03610a3f575f6109f7876109d785868f516109cf9190612880565b90508660800151841015610a23578381118015610a175750866080015181105b95505050505050610a73565b83811180610a1757508660800151811095505050505050610a73565b905080610a4c8a82611401565b610a57906001612893565b610a649060ff16826128ac565b90506109b0565b505f93505050505b95945050505050565b5f80610a8883856128bf565b60030b12159392505050565b610a9c61228e565b6107e48261010001515f61152d565b60a084015184515f90610abe9083611548565b90505f8660a001518760c00151610ad59190612880565b9050818111610ae2575f80fd5b5f610aed868861159f565b9050805f03610b1a57610b0c610b0384866128ac565b895190876112b4565b15610b15575f80fd5b610b5b565b87515f90610b29908686611424565b90505f8213610b36575f80fd5b5f610b41898361159f565b12156104cf575f610b52888361159f565b126104cf575f80fd5b5050505050505050565b60c08101516020820181905281515111610b7c5750565b5f610b8e825f01518360200151611548565b8260200151610b9d91906128ac565b8251909150610bac90826116ec565b61ffff166040830152610bc06002826128ac565b8251909150610bcf90826116ec565b61ffff166060830152610be36002826128ac565b8251909150610bf29082611712565b63ffffffff166080830152610c086004826128ac565b82519091505f90610c1990836116ec565b61ffff169050610c2a6002836128ac565b60a084018190529150610c3d81836128ac565b60c0909301929092525050565b6060610c54612239565b610c5e84846107ea565b61012081015180516020918201205f908152600282526040808220845161ffff16835290925220805491925090600160401b900460601b6001600160601b03191615610cc35760a08201518154610cbb919063ffffffff16610a7c565b610cc3575f80fd5b604080516060808201835260a085015163ffffffff9081168352608086015181166020808501918252610100880180518051908301206001600160601b0319168688019081526101208a0180518051908501205f908152600285528981208c5161ffff16825290945292889020965187549451915190961c600160401b0268010000000000000000600160e01b03199186166401000000000267ffffffffffffffff19909516969095169590951792909217939093169190911790925551905191517f55ced933cdd5a34dd03eb5d4bef19ec6ebb251dcd7a988eee0c1b9a13baaa88b92610db192916128e6565b60405180910390a15061010001519392505050565b610dce612239565b610dd8825f6116ec565b61ffff168152610de9826002611401565b60ff166020820152610dfc826003611401565b60ff166040820152610e0f826004611712565b63ffffffff9081166060830152610e2b90839060089061171216565b63ffffffff9081166080830152610e47908390600c9061171216565b63ffffffff90811660a0830152610e639083906010906116ec16565b61ffff1660c0820152610e7782601261173a565b60e0820181905251610eb490610e8e9060126128ac565b8260e001515160128551610ea29190612880565b610eac9190612880565b849190611424565b610100820152919050565b5f80610ed5610ece8483611548565b84906116ec565b83516020808601919091208651878301205f90815260028352604080822061ffff90951682529390925291902054600160401b900460601b6001600160601b031990811691161491505092915050565b60605f610f3184610a94565b90505b8051516020820151101561088257606081015161ffff16600114610f56575f80fd5b81515f03610f6e57610f6781611754565b9150610fa7565b60208101518151610f7e91611548565b825114610f89575f80fd5b805160208201518351610f9f9285925f92611775565b610fa7575f80fd5b8261ffff16816040015161ffff1614610fbe575f80fd5b610fc781610b65565b610f34565b5f805b83518310610fdf57610fdf61290a565b5f610fea8585611401565b60ff169050610ffa8160016128ac565b61100490856128ac565b9350805f0361101357506107e1565b61101e6001836128ac565b915050610fcf565b83518360e00151511115611038575f80fd5b61105c5f858560e0015151875161104f9190612880565b60e0870151929190611797565b611064575f80fd5b5f61106f828261152d565b9050602b61ffff16816040015161ffff160361109d576110908484836117cb565b611098575f80fd5b6110ff565b603061ffff16816040015161ffff16036110bc5761109084848361185f565b60405162461bcd60e51b8152602060048201526014602482015273139bc81d985b1a59081c1c9bdbd988199bdd5b9960621b604482015260640160405180910390fd5b5050505050565b5f806111128482611401565b61111d906001612893565b60ff1690505f5b835181101561095d5761113984828785611797565b15611149576001925050506107e4565b6111538482611401565b61115e906001612893565b61116b9060ff16826128ac565b9050611124565b6040805160c0810182525f8082526020820181905291810182905260608082018190526080820183905260a0820152906111ac83856128ac565b90506111c26111bb5f866128ac565b8690611401565b60ff1682526111d56111bb6001866128ac565b60ff1660208301526111f26111eb6002866128ac565b86906116ec565b61ffff1660408301525f61121161120a6004876128ac565b8790611401565b905061121e6005866128ac565b945061122e868660ff8416611424565b606084015261124060ff8216866128ac565b94505f61124d8787611401565b905060208160ff16111561125f575f80fd5b61126a6001876128ac565b955061127a878760ff8416611900565b608085015261128c60ff8216876128ac565b95506112a48661129c8186612880565b899190611424565b60a0850152509195945050505050565b5f60ff600883811c82169183916112cc918616612932565b90505f6112dd600780871690612952565b600160ff919091161b9050855b87518110156113b4575f6112fe8983611401565b90505f61131661130f8460016128ac565b8b90611401565b90508160ff168660ff161015611334575f96505050505050506106cb565b8160ff168660ff1603611393578460ff168160ff161161135c575f96505050505050506106cb565b8361137f61136d60ff8816866128ac565b6113789060026128ac565b8c90611401565b1660ff165f141596505050505050506106cb565b61139e816002612893565b6113ab9060ff16846128ac565b925050506112ea565b505f979650505050505050565b5f806113cd85846114a4565b90505f6113d9856113e6565b9190911495945050505050565b5f6107e460016113f68484611401565b84919060ff1661193d565b5f82828151811061141457611414612826565b016020015160f81c905092915050565b825160609061143383856128ac565b111561143d575f80fd5b5f8267ffffffffffffffff811115611457576114576123d9565b6040519080825280601f01601f191660200182016040528015611481576020820181803683370190505b50905060208082019086860101611499828287611b43565b509095945050505050565b815160ff165f9081526005602052604080822054606085015182860151925163347ced5960e11b81526001600160a01b03909216926368f9dab2926114ee9291879160040161296b565b602060405180830381865afa158015611509573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107e191906129a4565b61153561228e565b82815260c081018290526107e481610b65565b5f815b8351811061155b5761155b61290a565b5f6115668583611401565b60ff1690506115768160016128ac565b61158090836128ac565b9150805f0361158f5750611595565b5061154b565b6109608382612880565b5f6115aa8383611b98565b156115b657505f6107e4565b5f805f805f6115c5885f610fcc565b90505f6115d2885f610fcc565b90505b808211156115fe578593506115ea8987611bb3565b9550816115f6816129bb565b9250506115d5565b81811115611627578492506116138886611bb3565b94508061161f816129bb565b9150506115fe565b5f8211801561163f575061163d89878a88611797565b155b15611674578593506116518987611bb3565b95508492506116608886611bb3565b945061166d600183612880565b9150611627565b855f0361168a575f1996505050505050506107e4565b845f036116a057600196505050505050506107e4565b6116df6116ae8560016128ac565b6116b88b87611401565b60ff168a6116c78760016128ac565b6116d18d89611401565b8e949392919060ff16611bd6565b9998505050505050505050565b81515f906116fb8360026128ac565b1115611705575f80fd5b50016002015161ffff1690565b81515f906117218360046128ac565b111561172b575f80fd5b50016004015163ffffffff1690565b60605f6117478484611548565b9050610960848483611424565b602081015181516060916107e49161176c9082611548565b84519190611424565b5f611781848484611cc6565b61178c878785611cc6565b149695505050505050565b5f6117af83838486516117aa9190612880565b611cc6565b6117c186868789516117aa9190612880565b1495945050505050565b5f806117d685610a94565b90505b8051516020820151101561095d57604081015161ffff166030146117fb575f80fd5b5f61180582611ce8565b90505f61181e5f835184611d049092919063ffffffff16565b905061182c81838989611da0565b1561184f5761184561183d84611754565b868385611e9b565b93505050506106cb565b505061185a81610b65565b6117d9565b5f6118778460e0015161187184611754565b90611b98565b61187f575f80fd5b815151602083015110156118f75761189e8460e0015161187184611754565b6118a6575f80fd5b5f6118b083611ce8565b90505f6118c95f835184611d049092919063ffffffff16565b90506118d781838888611da0565b156118e7576001925050506106cb565b50506118f282610b65565b61187f565b505f9392505050565b5f602082111561190e575f80fd5b835161191a83856128ac565b1115611924575f80fd5b506020919092018101519190036101000a5f1901191690565b5f603482111561194b575f80fd5b5f80805b84811015611a29575f8761196383896128ac565b8151811061197357611973612826565b01602001516001600160f81b0319169050600360fc1b81108015906119a65750603d60f91b6001600160f81b0319821611155b6119ae575f80fd5b604051806080016040528060478152602001612b5c604791396119d6603060f884901c612880565b815181106119e6576119e6612826565b0160209081015160f81c93508311156119fd575f80fd5b611a08600187612880565b8203611a145750611a29565b5060059290921b60ff8216179160010161194f565b505f611a368560056129d0565b9050611a436008866129e7565b5f03611a5a578160ff16600584901b179250611b29565b611a656008866129e7565b600203611a935760028260ff16901c60ff16600384901b179250600281611a8c9190612880565b9050611b29565b611a9e6008866129e7565b600403611ac55760048260ff16901c60ff16600184901b179250600481611a8c9190612880565b611ad06008866129e7565b600503611af75760018260ff16901c60ff16600484901b179250600181611a8c9190612880565b611b026008866129e7565b6007036100e55760038260ff16901c60ff16600284901b179250600381611a8c9190612880565b611b3581610100612880565b9290921b9695505050505050565b60208110611b7b5781518352611b5a6020846128ac565b9250611b676020836128ac565b9150611b74602082612880565b9050611b43565b905182516020929092036101000a5f190180199091169116179052565b5f815183511480156107e157506107e1835f845f8751611775565b5f611bbe8383611401565b60ff16611bcc8360016128ac565b6107e191906128ac565b5f8480831015611be35750815b6020878901810190858701015f5b83811015611cab5782518251808214611c7b575f6020871115611c1657505f19611c52565b600184611c24896020612880565b611c2e91906128ac565b611c399060086129d0565b611c44906002612ada565b611c4e9190612880565b1990505b5f611c61838316858416612ae5565b90508015611c78579750611cbc9650505050505050565b50505b611c866020866128ac565b9450611c936020856128ac565b93505050602081611ca491906128ac565b9050611bf1565b50611cb68589612ae5565b93505050505b9695505050505050565b82515f90611cd483856128ac565b1115611cde575f80fd5b5091016020012090565b60a081015160c08201516060916107e49161176c908290612880565b604080516080810182525f8082526020820181905291810191909152606080820152611d3a611d335f856128ac565b85906116ec565b61ffff168152611d55611d4e6002856128ac565b8590611401565b60ff166020820152611d6b611d4e6003856128ac565b60ff166040820152611d94611d816004856128ac565b611d8c600485612880565b869190611424565b60608201529392505050565b5f846020015160ff16600314611db757505f610960565b826020015160ff16856040015160ff1614611dd357505f610960565b5f611ddd85611f96565b90508360c0015161ffff168161ffff1614611dfb575f915050610960565b8551610100165f03611e10575f915050610960565b60408087015160ff165f908152600360209081529082902054855191860151925163de8f50a160e01b81526001600160a01b039091169263de8f50a192611e5c928a9290600401612b04565b602060405180830381865afa158015611e77573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611cbc9190612b3c565b5f80611ea683611f96565b90505b84515160208601511015611f8b5760a085015160c08601515f91611edb91611ed2908290612880565b88519190611d04565b90508161ffff16815f015161ffff1614611ef55750611f7d565b846040015160ff16816020015160ff1614611f105750611f7d565b60408051808201909152606081525f6020820152611f3c85518951611f3591906128ac565b8290611ff7565b50611f47818961205a565b50611f52818661205a565b50611f698260400151825f0151846060015161207f565b15611f7a5760019350505050610960565b50505b611f8685610b65565b611ea9565b505f95945050505050565b5f805f5b8351811015611fe8576001811615611fbe57611fb68482611401565b60ff16611fd0565b6008611fca8583611401565b60ff16901b5b611fde9061ffff16836128ac565b9150600101611f9a565b506106cb601082901c826128ac565b60408051808201909152606081525f60208201526120166020836129e7565b1561203e576120266020836129e7565b612031906020612880565b61203b90836128ac565b91505b506020828101829052604080518085525f815290920101905290565b60408051808201909152606081525f60208201526107e183845f015151848551612126565b60ff83165f908152600460205260408120546001600160a01b03166120a557505f6106cb565b60ff84165f90815260046020819052604091829020549151637bf41d7760e11b81526001600160a01b039092169163f7e83aee916120e79187918791016128e6565b602060405180830381865afa158015612102573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109609190612b3c565b60408051808201909152606081525f60208201528251821115612147575f80fd5b602085015161215683866128ac565b111561218957612189856121798760200151878661217491906128ac565b61220c565b6121849060026129d0565b612222565b5f808651805187602083010193508088870111156121a75787860182525b505050602084015b602084106121e757805182526121c66020836128ac565b91506121d36020826128ac565b90506121e0602085612880565b93506121af565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b5f8183111561221c5750816107e4565b50919050565b815161222e8383611ff7565b50610650838261205a565b60408051610140810182525f8082526020820181905291810182905260608082018390526080820183905260a0820183905260c082019290925260e08101829052610100810182905261012081019190915290565b6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b803560ff811681146122e3575f80fd5b919050565b6001600160a01b03811681146122fc575f80fd5b50565b5f8060408385031215612310575f80fd5b612319836122d3565b91506020830135612329816122e8565b809150509250929050565b803561ffff811681146122e3575f80fd5b5f8083601f840112612355575f80fd5b50813567ffffffffffffffff81111561236c575f80fd5b602083019150836020828501011115612383575f80fd5b9250929050565b5f805f6040848603121561239c575f80fd5b6123a584612334565b9250602084013567ffffffffffffffff8111156123c0575f80fd5b6123cc86828701612345565b9497909650939450505050565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff81118282101715612416576124166123d9565b604052919050565b5f82601f83011261242d575f80fd5b813567ffffffffffffffff811115612447576124476123d9565b61245a601f8201601f19166020016123ed565b81815284602083860101111561246e575f80fd5b816020850160208301375f918101602001919091529392505050565b5f6040828403121561249a575f80fd5b6040516040810167ffffffffffffffff82821081831117156124be576124be6123d9565b8160405282935084359150808211156124d5575f80fd5b6124e18683870161241e565b835260208501359150808211156124f6575f80fd5b506125038582860161241e565b6020830152505092915050565b5f805f805f60a08688031215612524575f80fd5b61252d86612334565b9450602086013567ffffffffffffffff80821115612549575f80fd5b61255589838a0161241e565b9550604088013591508082111561256a575f80fd5b61257689838a0161248a565b9450606088013591508082111561258b575f80fd5b61259789838a0161248a565b935060808801359150808211156125ac575f80fd5b506125b98882890161241e565b9150509295509295909350565b5f602082840312156125d6575f80fd5b81356107e1816122e8565b5f805f80608085870312156125f4575f80fd5b6125fd85612334565b9350602085013567ffffffffffffffff80821115612619575f80fd5b6126258883890161241e565b9450604087013591508082111561263a575f80fd5b6126468883890161248a565b9350606087013591508082111561265b575f80fd5b506126688782880161241e565b91505092959194509250565b5f805f60408486031215612686575f80fd5b833567ffffffffffffffff8082111561269d575f80fd5b818601915086601f8301126126b0575f80fd5b81356020828211156126c4576126c46123d9565b8160051b6126d38282016123ed565b928352848101820192828101908b8511156126ec575f80fd5b83870192505b8483101561272657823586811115612708575f80fd5b6127168d86838b010161248a565b83525091830191908301906126f2565b985050508701359250508082111561273c575f80fd5b506123cc86828701612345565b5f81518084525f5b8181101561276d57602081850181015186830182015201612751565b505f602082860101526020601f19601f83011685010191505092915050565b602081525f6107e16020830184612749565b5f602082840312156127ae575f80fd5b6107e1826122d3565b5f80604083850312156127c8575f80fd5b823567ffffffffffffffff808211156127df575f80fd5b6127eb8683870161248a565b93506020850135915080821115612800575f80fd5b5061280d8582860161241e565b9150509250929050565b818382375f9101908152919050565b634e487b7160e01b5f52603260045260245ffd5b600181811c9082168061284e57607f821691505b60208210810361221c57634e487b7160e01b5f52602260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b818103818111156107e4576107e461286c565b60ff81811683821601908111156107e4576107e461286c565b808201808211156107e4576107e461286c565b600382810b9082900b03637fffffff198112637fffffff821317156107e4576107e461286c565b604081525f6128f86040830185612749565b8281036020840152610a738185612749565b634e487b7160e01b5f52600160045260245ffd5b634e487b7160e01b5f52601260045260245ffd5b5f61ffff808416806129465761294661291e565b92169190910492915050565b60ff82811682821603908111156107e4576107e461286c565b606081525f61297d6060830186612749565b828103602084015261298f8186612749565b91505061ffff83166040830152949350505050565b5f602082840312156129b4575f80fd5b5051919050565b5f816129c9576129c961286c565b505f190190565b80820281158282048414176107e4576107e461286c565b5f826129f5576129f561291e565b500690565b600181815b80851115612a3457815f1904821115612a1a57612a1a61286c565b80851615612a2757918102915b93841c93908002906129ff565b509250929050565b5f82612a4a575060016107e4565b81612a5657505f6107e4565b8160018114612a6c5760028114612a7657612a92565b60019150506107e4565b60ff841115612a8757612a8761286c565b50506001821b6107e4565b5060208310610133831016604e8410600b8410161715612ab5575081810a6107e4565b612abf83836129fa565b805f1904821115612ad257612ad261286c565b029392505050565b5f6107e18383612a3c565b8181035f8312801583831316838312821617156108825761088261286c565b606081525f612b166060830186612749565b8281036020840152612b288186612749565b90508281036040840152611cbc8185612749565b5f60208284031215612b4c575f80fd5b815180151581146107e1575f80fdfe00010203040506070809ffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fffffffffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fa164736f6c6343000818000a","storage":{"0x0":"0xbd","0x1":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1471eb6eb2c5e789fc3de43f8ce62938c7d1836ec861730447e2ada8fd81017b":"0x17cda4e23f7237277952e075b1c48467aabfacc0","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563":"0x2b000100000e1000244a5c080249aac11d7b6f6446702e54a1607371607a","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e564":"0x1a41855200fd2ce1cdde32f24e8fb500002b000100000e1000244f660802e06d","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e565":"0x44b80b8f1d39a95c0b0d7c65d08458e880409bbc683457104237c7f8ec8d0000","0x3617319a054d772f909f7c479a2cebe5066e836a939412e32403c99029b92eff":"0x5155f5627bdf9795b3dbb8887001ada1eeba93f2","0x85aaa47b6dc46495bb8824fad4583769726fea36efd831a35556690b830a8fbe":"0x6e2822b8856749ed179c77140dbc5f5a27410a4","0x91da3fd0782e51c6b3986e9e672fd566868e71f3dbc2d6c2cd6fbb3e361af2a7":"0x49da8861c65460639925febe1fb4b5b59b443082","0x95c6356c1b7a542b884d2484ef785c9c7224e77e1016c20007bddc15c23b452f":"0x3f9151d3fd1a82dcc5091909589900fd60ee767ee090bba000000000","0xabd6e7cb50984ff9c2f3e18a2660c3353dadf4e3291deeb275dae2cd1e44fe05":"0x458f653495fb8d9bd0e7df468c2bf76d26c7bd9"}},"0x9dc64b2558b458a15c7f01c192d874ef460f0a29":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x9df67c91f1bfcb4d966cf764e9218685e7c59e8a":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101d1575f3560e01c80638b95dd71116100fe578063c86902331161009e578063e32954eb1161006e578063e32954eb146104f2578063e59d895d14610505578063e985e9c514610518578063f1cb7e0614610553575f80fd5b8063c869023314610435578063ce3decdc1461048c578063d5fa2b001461049f578063d700ff33146104b2575f80fd5b8063a8fa5682116100d9578063a8fa5682146103ac578063a9784b3e146103bf578063ac9650d814610402578063bc1c58d114610422575f80fd5b80638b95dd7114610373578063a22cb46514610386578063a4b91a0114610399575f80fd5b80633603d758116101745780635c98042b116101445780635c98042b14610327578063623195b01461033a578063691f34311461034d5780637737221314610360575f80fd5b80633603d758146102975780633b3b57de146102aa5780634cbf6ba4146102bd57806359d1d43c14610307575f80fd5b8063124a319c116101af578063124a319c146102255780632203ab561461025057806329cd62ea14610271578063304e6ade14610284575f80fd5b806301ffc9a7146101d55780630af179d7146101fd57806310f13a8c14610212575b5f80fd5b6101e86101e3366004612267565b610566565b60405190151581526020015b60405180910390f35b61021061020b3660046122bd565b610576565b005b610210610220366004612304565b610778565b610238610233366004612377565b610842565b6040516001600160a01b0390911681526020016101f4565b61026361025e3660046123a1565b610a87565b6040516101f492919061240e565b61021061027f366004612426565b610bb5565b6102106102923660046122bd565b610c4d565b6102106102a536600461244f565b610cc6565b6102386102b836600461244f565b610d64565b6101e86102cb3660046123a1565b5f82815260208181526040808320546001600160401b031683526006825280832094835293815283822092825291909152205461ffff16151590565b61031a6103153660046122bd565b610d93565b6040516101f49190612466565b61031a61033536600461244f565b610e6f565b610210610348366004612478565b610f2a565b61031a61035b36600461244f565b610fc2565b61021061036e3660046122bd565b610ffa565b6102106103813660046124da565b611073565b6102106103943660046125b9565b611150565b6102106103a73660046125e3565b61122a565b61031a6103ba36600461261e565b6112f6565b6101e86103cd36600461265a565b6001600160a01b039283165f908152600c60209081526040808320948352938152838220929094168152925290205460ff1690565b6104156104103660046126ce565b611342565b6040516101f4919061270c565b61031a61043036600461244f565b61134f565b61047761044336600461244f565b5f81815260208181526040808320546001600160401b03168352600982528083209383529290522080546001909101549091565b604080519283526020830191909152016101f4565b61021061049a3660046122bd565b611387565b6102106104ad36600461276e565b6114c3565b6104da6104c036600461244f565b5f602081905290815260409020546001600160401b031681565b6040516001600160401b0390911681526020016101f4565b61041561050036600461279c565b6114e9565b6102106105133660046127d6565b6114fe565b6101e8610526366004612808565b6001600160a01b039182165f908152600b6020908152604080832093909416825291909152205460ff1690565b61031a6105613660046123a1565b6115a2565b5f61057082611666565b92915050565b826105808161168a565b610588575f80fd5b5f84815260208181526040808320548151601f87018490048402810184019092528582528392606092839285926001600160401b039091169183916105eb9183918d908d90819084018382808284375f9201919091525092939250506118b79050565b90505b80515160208201511015610712578661ffff165f03610652578060400151965061061781611912565b94508460405160200161062a9190612834565b60405160208183030381529060405280519060200120925061064b81611933565b9350610704565b5f61065c82611912565b9050816040015161ffff168861ffff16141580610680575061067e868261194f565b155b15610702576106db8c878a8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250505060208801518d91506106d2908290612863565b8b51158a61196a565b8160400151975081602001519650809550858051906020012093506106ff82611933565b94505b505b61070d81611bc9565b6105ee565b5083511561076c5761076c8a85888c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c925061076391508290508f612863565b8951158861196a565b50505050505050505050565b846107828161168a565b61078a575f80fd5b5f86815260208181526040808320546001600160401b03168352600a8252808320898452909152908190209051849184916107c89089908990612876565b908152602001604051809103902091826107e3929190612901565b5084846040516107f4929190612876565b6040518091039020867f448bc014f1536726cf8d54ff3d6481ed3cbc683c2591ca204274009afa09b1a18787878760405161083294939291906129e2565b60405180910390a3505050505050565b5f82815260208181526040808320546001600160401b031683526007825280832085845282528083206001600160e01b0319851684529091528120546001600160a01b03168015610894579050610570565b5f61089e85610d64565b90506001600160a01b0381166108b8575f92505050610570565b6040516301ffc9a760e01b60248201525f9081906001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b1790525161090f9190612834565b5f60405180830381855afa9150503d805f8114610947576040519150601f19603f3d011682016040523d82523d5f602084013e61094c565b606091505b509150915081158061095f575060208151105b80610989575080601f8151811061097857610978612a13565b01602001516001600160f81b031916155b1561099a575f945050505050610570565b6040516001600160e01b0319871660248201526001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b179052516109f09190612834565b5f60405180830381855afa9150503d805f8114610a28576040519150601f19603f3d011682016040523d82523d5f602084013e610a2d565b606091505b509092509050811580610a41575060208151105b80610a6b575080601f81518110610a5a57610a5a612a13565b01602001516001600160f81b031916155b15610a7c575f945050505050610570565b509095945050505050565b5f82815260208181526040808320546001600160401b03168352600180835281842086855290925282206060915b848111610b975780851615801590610ae457505f8181526020839052604081208054610ae090612885565b9050115b15610b8f5780825f8381526020019081526020015f20808054610b0690612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610b3290612885565b8015610b7d5780601f10610b5457610100808354040283529160200191610b7d565b820191905f5260205f20905b815481529060010190602001808311610b6057829003601f168201915b50505050509050935093505050610bae565b60011b610ab5565b505f60405180602001604052805f81525092509250505b9250929050565b82610bbf8161168a565b610bc7575f80fd5b60408051808201825284815260208082018581525f888152808352848120546001600160401b031681526009835284812089825283528490209251835551600190920191909155815185815290810184905285917f1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e4691015b60405180910390a250505050565b82610c578161168a565b610c5f575f80fd5b5f84815260208181526040808320546001600160401b03168352600382528083208784529091529020610c93838583612901565b50837fe379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d75788484604051610c3f929190612a27565b80610cd08161168a565b610cd8575f80fd5b5f82815260208190526040812080546001600160401b031691610cfa83612a3a565b82546101009290920a6001600160401b038181021990931691831602179091555f84815260208181526040918290205491519190921681528492507fc6621ccb8f3f5a04bb6502154b2caf6adf5983fe76dfef1cfc9c42e3579db444910160405180910390a25050565b5f80610d7183603c6115a2565b905080515f03610d8357505f92915050565b610d8c81611cae565b9392505050565b5f83815260208181526040808320546001600160401b03168352600a825280832086845290915290819020905160609190610dd19085908590612876565b90815260200160405180910390208054610dea90612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610e1690612885565b8015610e615780601f10610e3857610100808354040283529160200191610e61565b820191905f5260205f20905b815481529060010190602001808311610e4457829003601f168201915b505050505090509392505050565b5f81815260208181526040808320546001600160401b03168352600482528083208484529091529020805460609190610ea790612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610ed390612885565b8015610f1e5780601f10610ef557610100808354040283529160200191610f1e565b820191905f5260205f20905b815481529060010190602001808311610f0157829003601f168201915b50505050509050919050565b83610f348161168a565b610f3c575f80fd5b83610f48600182612863565b1615610f52575f80fd5b5f85815260208181526040808320546001600160401b031683526001825280832088845282528083208784529091529020610f8e838583612901565b50604051849086907faa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe3905f90a35050505050565b5f81815260208181526040808320546001600160401b03168352600882528083208484529091529020805460609190610ea790612885565b826110048161168a565b61100c575f80fd5b5f84815260208181526040808320546001600160401b03168352600882528083208784529091529020611040838583612901565b50837fb7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f78484604051610c3f929190612a27565b8261107d8161168a565b611085575f80fd5b837f65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af75284846040516110b792919061240e565b60405180910390a2603c830361110e57837f52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd26110f284611cae565b6040516001600160a01b03909116815260200160405180910390a25b5f84815260208181526040808320546001600160401b0316835260028252808320878452825280832086845290915290206111498382612a5f565b5050505050565b6001600160a01b03821633036111bf5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084015b60405180910390fd5b335f818152600b602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6001600160a01b03821633036112825760405162461bcd60e51b815260206004820181905260248201527f53657474696e672064656c65676174652073746174757320666f722073656c6660448201526064016111b6565b335f818152600c6020908152604080832087845282528083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519384529286917ff0ddb3b04746704017f9aa8bd728fcc2c1d11675041205350018915f5e4750a0910160405180910390a4505050565b5f83815260208181526040808320546001600160401b03168352600582528083208684528252808320858452825280832061ffff851684529091529020805460609190610dea90612885565b6060610d8c5f8484611ccb565b5f81815260208181526040808320546001600160401b03168352600382528083208484529091529020805460609190610ea790612885565b826113918161168a565b611399575f80fd5b5f84815260208181526040808320546001600160401b031680845260048352818420888552909252822080549192916113d190612885565b80601f01602080910402602001604051908101604052809291908181526020018280546113fd90612885565b80156114485780601f1061141f57610100808354040283529160200191611448565b820191905f5260205f20905b81548152906001019060200180831161142b57829003601f168201915b505050506001600160401b0384165f9081526004602090815260408083208b8452909152902091925061147e9050858783612901565b50857f8f15ed4b723ef428f250961da8315675b507046737e19319fc1a4d81bfe87f858287876040516114b393929190612b1e565b60405180910390a2505050505050565b816114cd8161168a565b6114d5575f80fd5b6114e483603c61038185611e88565b505050565b60606114f6848484611ccb565b949350505050565b826115088161168a565b611510575f80fd5b5f84815260208181526040808320546001600160401b031683526007825280832087845282528083206001600160e01b031987168085529083529281902080546001600160a01b0319166001600160a01b038716908117909155905190815286917f7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa910160405180910390a350505050565b5f82815260208181526040808320546001600160401b0316835260028252808320858452825280832084845290915290208054606091906115e290612885565b80601f016020809104026020016040519081016040528092919081815260200182805461160e90612885565b80156116595780601f1061163057610100808354040283529160200191611659565b820191905f5260205f20905b81548152906001019060200180831161163c57829003601f168201915b5050505050905092915050565b5f6001600160e01b03198216631674750f60e21b1480610570575061057082611eb8565b5f336001600160a01b037f0000000000000000000000004fbf7b2f171336958be5d15ff762a5cff53635681614806116ea5750336001600160a01b037f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5616145b156116f757506001919050565b6040516302571be360e01b8152600481018390525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa15801561175c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117809190612b4d565b90507f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b0316816001600160a01b031603611845576040516331a9108f60e11b8152600481018490527f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b031690636352211e90602401602060405180830381865afa15801561181e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118429190612b4d565b90505b6001600160a01b03811633148061187e57506001600160a01b0381165f908152600b6020908152604080832033845290915290205460ff165b80610d8c57506001600160a01b0381165f908152600c60209081526040808320868452825280832033845290915290205460ff16610d8c565b6118ff6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261057081611bc9565b602081015181516060916105709161192a9082611edc565b84519190611f33565b60a081015160c08201516060916105709161192a908290612863565b5f81518351148015610d8c5750610d8c835f845f8751611fa7565b865160208801205f61197d878787611f33565b90508315611aa1576001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c168452909152902080546119c690612885565b159050611a23576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611a0783612b68565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091528120611a62916121f9565b897f03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a12078a8a604051611a94929190612b84565b60405180910390a261076c565b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c16845290915290208054611ae290612885565b90505f03611b40576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611b2483612ba9565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091529020611b808282612a5f565b50897f52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b8a8a84604051611bb593929190612bbf565b60405180910390a250505050505050505050565b60c08101516020820181905281515111611be05750565b5f611bf2825f01518360200151611edc565b8260200151611c019190612bed565b8251909150611c109082611fc9565b61ffff166040830152611c24600282612bed565b8251909150611c339082611fc9565b61ffff166060830152611c47600282612bed565b8251909150611c569082611fef565b63ffffffff166080830152611c6c600482612bed565b82519091505f90611c7d9083611fc9565b61ffff169050611c8e600283612bed565b60a084018190529150611ca18183612bed565b60c0909301929092525050565b5f8151601414611cbc575f80fd5b5060200151600160601b900490565b6060816001600160401b03811115611ce557611ce56124c6565b604051908082528060200260200182016040528015611d1857816020015b6060815260200190600190039081611d035790505b5090505f5b82811015611e80578415611dd8575f848483818110611d3e57611d3e612a13565b9050602002810190611d509190612c00565b611d5f91602491600491612c42565b611d6891612c69565b9050858114611dd65760405162461bcd60e51b815260206004820152603460248201527f6d756c746963616c6c3a20416c6c207265636f726473206d7573742068617665604482015273040c240dac2e8c6d0d2dcce40dcc2dacad0c2e6d60631b60648201526084016111b6565b505b5f8030868685818110611ded57611ded612a13565b9050602002810190611dff9190612c00565b604051611e0d929190612876565b5f60405180830381855af49150503d805f8114611e45576040519150601f19603f3d011682016040523d82523d5f602084013e611e4a565b606091505b509150915081611e58575f80fd5b80848481518110611e6b57611e6b612a13565b60209081029190910101525050600101611d1d565b509392505050565b604080516014808252818301909252606091602082018180368337505050600160601b9290920260208301525090565b5f6001600160e01b0319821663c869023360e01b1480610570575061057082612017565b5f815b83518110611eef57611eef612c86565b5f611efa858361203b565b60ff169050611f0a816001612bed565b611f149083612bed565b9150805f03611f235750611f29565b50611edf565b6114f68382612863565b8251606090611f428385612bed565b1115611f4c575f80fd5b5f826001600160401b03811115611f6557611f656124c6565b6040519080825280601f01601f191660200182016040528015611f8f576020820181803683370190505b50905060208082019086860101610a7c82828761205e565b5f611fb38484846120b3565b611fbe8787856120b3565b149695505050505050565b81515f90611fd8836002612bed565b1115611fe2575f80fd5b50016002015161ffff1690565b81515f90611ffe836004612bed565b1115612008575f80fd5b50016004015163ffffffff1690565b5f6001600160e01b0319821663691f343160e01b14806105705750610570826120d5565b5f82828151811061204e5761204e612a13565b016020015160f81c905092915050565b602081106120965781518352612075602084612bed565b9250612082602083612bed565b915061208f602082612863565b905061205e565b905182516020929092036101000a5f190180199091169116179052565b82515f906120c18385612bed565b11156120cb575f80fd5b5091016020012090565b5f6001600160e01b031982166304928c6760e21b14806105705750610570825f6001600160e01b0319821663547d2b4160e11b148061212457506001600160e01b03198216635c98042b60e01b145b806105705750610570825f6001600160e01b0319821663bc1c58d160e01b14806105705750610570825f6001600160e01b03198216631d9dabef60e11b148061217d57506001600160e01b031982166378e5bf0360e11b145b806105705750610570825f6001600160e01b03198216631101d5ab60e11b14806105705750610570825f6001600160e01b0319821663d700ff3360e01b14806105705750610570825f6001600160e01b03198216634fbf043360e01b148061057057506301ffc9a760e01b6001600160e01b0319831614610570565b50805461220590612885565b5f825580601f10612214575050565b601f0160209004905f5260205f20908101906122309190612233565b50565b5b80821115612247575f8155600101612234565b5090565b80356001600160e01b031981168114612262575f80fd5b919050565b5f60208284031215612277575f80fd5b610d8c8261224b565b5f8083601f840112612290575f80fd5b5081356001600160401b038111156122a6575f80fd5b602083019150836020828501011115610bae575f80fd5b5f805f604084860312156122cf575f80fd5b8335925060208401356001600160401b038111156122eb575f80fd5b6122f786828701612280565b9497909650939450505050565b5f805f805f60608688031215612318575f80fd5b8535945060208601356001600160401b0380821115612335575f80fd5b61234189838a01612280565b90965094506040880135915080821115612359575f80fd5b5061236688828901612280565b969995985093965092949392505050565b5f8060408385031215612388575f80fd5b823591506123986020840161224b565b90509250929050565b5f80604083850312156123b2575f80fd5b50508035926020909101359150565b5f5b838110156123db5781810151838201526020016123c3565b50505f910152565b5f81518084526123fa8160208601602086016123c1565b601f01601f19169290920160200192915050565b828152604060208201525f6114f660408301846123e3565b5f805f60608486031215612438575f80fd5b505081359360208301359350604090920135919050565b5f6020828403121561245f575f80fd5b5035919050565b602081525f610d8c60208301846123e3565b5f805f806060858703121561248b575f80fd5b843593506020850135925060408501356001600160401b038111156124ae575f80fd5b6124ba87828801612280565b95989497509550505050565b634e487b7160e01b5f52604160045260245ffd5b5f805f606084860312156124ec575f80fd5b833592506020840135915060408401356001600160401b0380821115612510575f80fd5b818601915086601f830112612523575f80fd5b813581811115612535576125356124c6565b604051601f8201601f19908116603f0116810190838211818310171561255d5761255d6124c6565b81604052828152896020848701011115612575575f80fd5b826020860160208301375f6020848301015280955050505050509250925092565b6001600160a01b0381168114612230575f80fd5b80358015158114612262575f80fd5b5f80604083850312156125ca575f80fd5b82356125d581612596565b9150612398602084016125aa565b5f805f606084860312156125f5575f80fd5b83359250602084013561260781612596565b9150612615604085016125aa565b90509250925092565b5f805f60608486031215612630575f80fd5b8335925060208401359150604084013561ffff8116811461264f575f80fd5b809150509250925092565b5f805f6060848603121561266c575f80fd5b833561267781612596565b925060208401359150604084013561264f81612596565b5f8083601f84011261269e575f80fd5b5081356001600160401b038111156126b4575f80fd5b6020830191508360208260051b8501011115610bae575f80fd5b5f80602083850312156126df575f80fd5b82356001600160401b038111156126f4575f80fd5b6127008582860161268e565b90969095509350505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b8281101561276157603f1988860301845261274f8583516123e3565b94509285019290850190600101612733565b5092979650505050505050565b5f806040838503121561277f575f80fd5b82359150602083013561279181612596565b809150509250929050565b5f805f604084860312156127ae575f80fd5b8335925060208401356001600160401b038111156127ca575f80fd5b6122f78682870161268e565b5f805f606084860312156127e8575f80fd5b833592506127f86020850161224b565b9150604084013561264f81612596565b5f8060408385031215612819575f80fd5b823561282481612596565b9150602083013561279181612596565b5f82516128458184602087016123c1565b9190910192915050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156105705761057061284f565b818382375f9101908152919050565b600181811c9082168061289957607f821691505b6020821081036128b757634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156114e457805f5260205f20601f840160051c810160208510156128e25750805b601f840160051c820191505b81811015611149575f81556001016128ee565b6001600160401b03831115612918576129186124c6565b61292c836129268354612885565b836128bd565b5f601f84116001811461295d575f85156129465750838201355b5f19600387901b1c1916600186901b178355611149565b5f83815260208120601f198716915b8281101561298c578685013582556020948501946001909201910161296c565b50868210156129a8575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b604081525f6129f56040830186886129ba565b8281036020840152612a088185876129ba565b979650505050505050565b634e487b7160e01b5f52603260045260245ffd5b602081525f6114f66020830184866129ba565b5f6001600160401b03808316818103612a5557612a5561284f565b6001019392505050565b81516001600160401b03811115612a7857612a786124c6565b612a8c81612a868454612885565b846128bd565b602080601f831160018114612abf575f8415612aa85750858301515b5f19600386901b1c1916600185901b178555612b16565b5f85815260208120601f198616915b82811015612aed57888601518255948401946001909101908401612ace565b5085821015612b0a57878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b604081525f612b3060408301866123e3565b8281036020840152612b438185876129ba565b9695505050505050565b5f60208284031215612b5d575f80fd5b8151610d8c81612596565b5f61ffff821680612b7b57612b7b61284f565b5f190192915050565b604081525f612b9660408301856123e3565b905061ffff831660208301529392505050565b5f61ffff808316818103612a5557612a5561284f565b606081525f612bd160608301866123e3565b61ffff851660208401528281036040840152612b4381856123e3565b808201808211156105705761057061284f565b5f808335601e19843603018112612c15575f80fd5b8301803591506001600160401b03821115612c2e575f80fd5b602001915036819003821315610bae575f80fd5b5f8085851115612c50575f80fd5b83861115612c5c575f80fd5b5050820193919092039150565b80356020831015610570575f19602084900360031b1b1692915050565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{}},"0xa06a63155145b7f2fda96d9658ec7fef3b9dcf76":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b506004361061004a575f3560e01c80634ce34aa21461004e578063899e104c1461007e5780638df25d9214610091578063c4e8fcb5146100a4575b5f80fd5b61006161005c366004610834565b6100b9565b6040516001600160e01b0319909116815260200160405180910390f35b61006161008c3660046108b4565b610121565b61006161009f36600461091b565b61018a565b6100b76100b2366004610969565b6101c7565b005b5f335f525f60205260405f20546100dd576349ed56f960e11b5f523360045260245ffd5b815f5b81811015610110576101088585838181106100fd576100fd6109a2565b905060c002016102c4565b6001016100e0565b50632671a55160e11b949350505050565b5f335f525f60205260405f2054610145576349ed56f960e11b5f523360045260245ffd5b835f5b8181101561016d576101658787838181106100fd576100fd6109a2565b600101610148565b506101788484610436565b50632267841360e21b95945050505050565b5f335f525f60205260405f20546101ae576349ed56f960e11b5f523360045260245ffd5b6101b88383610436565b506346f92ec960e11b92915050565b336001600160a01b037f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c1614610210576040516336abb4df60e11b815260040160405180910390fd5b6001600160a01b0382165f9081526020819052604090205481151560ff909116151503610268576040516349271a0f60e11b81526001600160a01b038316600482015281151560248201526044015b60405180910390fd5b6001600160a01b0382165f8181526020818152604091829020805460ff191685151590811790915591519182527fae63067d43ac07563b7eb8db6595635fc77f1578a2a5ea06ba91b63e2afa37e2910160405180910390a25050565b60016102d360208301836109ca565b60038111156102e4576102e46109b6565b03610329576103266102fc60408301602084016109ef565b61030c60608401604085016109ef565b61031c60808501606086016109ef565b8460a0013561056c565b50565b600261033860208301836109ca565b6003811115610349576103496109b6565b036103b6578060a00135600114610379576040516369f9582760e01b815260a0820135600482015260240161025f565b61032661038c60408301602084016109ef565b61039c60608401604085016109ef565b6103ac60808501606086016109ef565b8460800135610660565b60036103c560208301836109ca565b60038111156103d6576103d66109b6565b0361041d576103266103ee60408301602084016109ef565b6103fe60608401604085016109ef565b61040e60808501606086016109ef565b84608001358560a00135610715565b604051631e4cbc7f60e21b815260040160405180910390fd5b808280631759616b60e11b6020525f5b8381101561055f57823582018035803b61046b57635f15d6725f52806020526024601cfd5b60a08201358060051b60c0018060808501351460a0606086013514168185013583141615905080156104a657633ae8821360e21b5f5260045ffd5b506020860195506080602084016024378060061b60400190508060a00160a4525f8160c401528060c4018160a0850160c4375f808260205f875af1935083610550573d1561053057601f3d0160051c91508060051c826003028184111561051a578184036003028280028580020360091c01015b5a60208201101561052d573d5f803e3d5ffd5b50505b6357e222f160e11b5f528260045260c0606452608451602001608452805ffd5b50505050600181019050610446565b5050505060806040525050565b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166106515780873b15151661065157806106405781610623573d1561060257601f3d0160051c8360051c81600302818311156105eb578183036003028280028480020360091c01015b5a6020820110156105fe573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b833b61067757635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af180610707573d156106e557601f3d0160051c8260051c81600302818311156106ce578183036003028280028480020360091c01015b5a6020820110156106e1573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b61072c57635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af1806107d1573d156107b057601f3d0160051c8560051c8160030281831115610799578183036003028280028480020360091c01015b5a6020820110156107ac573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b5f8083601f8401126107fc575f80fd5b50813567ffffffffffffffff811115610813575f80fd5b60208301915083602060c08302850101111561082d575f80fd5b9250929050565b5f8060208385031215610845575f80fd5b823567ffffffffffffffff81111561085b575f80fd5b610867858286016107ec565b90969095509350505050565b5f8083601f840112610883575f80fd5b50813567ffffffffffffffff81111561089a575f80fd5b6020830191508360208260051b850101111561082d575f80fd5b5f805f80604085870312156108c7575f80fd5b843567ffffffffffffffff808211156108de575f80fd5b6108ea888389016107ec565b90965094506020870135915080821115610902575f80fd5b5061090f87828801610873565b95989497509550505050565b5f806020838503121561092c575f80fd5b823567ffffffffffffffff811115610942575f80fd5b61086785828601610873565b80356001600160a01b0381168114610964575f80fd5b919050565b5f806040838503121561097a575f80fd5b6109838361094e565b915060208301358015158114610997575f80fd5b809150509250929050565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52602160045260245ffd5b5f602082840312156109da575f80fd5b8135600481106109e8575f80fd5b9392505050565b5f602082840312156109ff575f80fd5b6109e88261094e56fea164736f6c6343000818000a","storage":{}},"0xaa33d7188eb4b4a51c37199eaad2f73cf2bf0204":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0xac52f68f31577e44ae0c7e95a42dc9eb574b9383":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a424740014610090575b600080fd5b610059610054366004610cac565b6100b3565b6040516100669190610d9b565b60405180910390f35b61008261007d366004610dae565b610162565b604051908152602001610066565b6100a361009e366004610cac565b6101d6565b6040519015158152602001610066565b606060005a90506101576100ca6020870187610ddc565b6001546001600160a01b03166040880135846100e960608b018b610df9565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061023592505050565b9150505b9392505050565b600154604051636ccbae5f60e01b8152600481018390526000916001600160a01b031690636ccbae5f90602401602060405180830381865afa1580156101ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d09190610e40565b92915050565b600061022d6101e485610ef1565b600154604080516020601f88018190048102820181019092528681526001600160a01b039092169190879087908190840183828082843760009201919091525061030d92505050565b949350505050565b6060600080876001600160a01b0316866102518b8a8989610355565b60405161025e9190610f9b565b60006040518083038160008787f1925050503d806000811461029c576040519150601f19603f3d011682016040523d82523d6000602084013e6102a1565b606091505b5090925090506102b2603f87610fb7565b5a116102c0576102c0610fd9565b61030082826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061040a565b9998505050505050505050565b600061031a848484610443565b801561022d575060608401516020908101516001600160e01b031990811660009081529182905260409091205460e01b16151561022d565b50565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036103e75760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526103ff82828661058c565b979650505050505050565b6060831561041957508161015b565b8251156104295782518084602001fd5b8160405162461bcd60e51b81526004016103de9190610d9b565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561048a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104ae9190610e40565b9050600061055c8660600151805190602001208688602001516040516020016104fc9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561058257508551610582906001600160a01b03168286610a38565b9695505050505050565b60606001600160e01b03198416631de5861160e31b0361061a576000806000858060200190518101906105bf9190610fef565b92509250925086838383886040516024016105dd9493929190611032565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152935061015b92505050565b6001600160e01b03198416636debcb8d60e01b0361064b576000806000858060200190518101906105bf9190610fef565b6001600160e01b0319841663280d9b0560e01b036106dd576000806000808680602001905181019061067d91906110aa565b935093509350935087848484848a60405160240161069f959493929190611118565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152945061015b9350505050565b6001600160e01b031984166361603dd960e01b0361075c5760008380602001905181019061070b9190610e40565b905084818460405160240161072192919061115d565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152915061015b9050565b6001600160e01b0319841663b34f33c560e01b036107ab5760008060008580602001905181019061078d9190611176565b92509250925086838383886040516024016105dd94939291906111d0565b6001600160e01b03198416633013529360e01b036107dc5760008060008580602001905181019061078d9190611176565b6001600160e01b031984166307eca39560e01b03610830576000806000808680602001905181019061080e9190611209565b935093509350935087848484848a60405160240161069f95949392919061127e565b6001600160e01b031984166368b6154f60e01b03610862576000806000808680602001905181019061067d91906110aa565b6001600160e01b0319841663341de35b60e21b03610894576000806000808680602001905181019061067d91906110aa565b6001600160e01b03198416637a84860f60e11b0361092d576000806000806000878060200190518101906108c891906112cb565b945094509450945094508885858585858c6040516024016108ee96959493929190611360565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152955061015b945050505050565b6001600160e01b03198416636fab95b360e01b036109b2576000808480602001905181019061095c91906113b9565b915091508582828660405160240161097693929190611400565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925061015b915050565b6001600160e01b0319841663288f888960e11b0361015b57600080848060200190518101906109e1919061142b565b91509150858282866040516024016109fb93929190611459565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925050509392505050565b6000806000610a478585610b7a565b90925090506000816004811115610a6057610a60611489565b148015610a7e5750856001600160a01b0316826001600160a01b0316145b15610a8e5760019250505061015b565b600080876001600160a01b0316631626ba7e60e01b8888604051602401610ab692919061115d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051610af49190610f9b565b600060405180830381855afa9150503d8060008114610b2f576040519150601f19603f3d011682016040523d82523d6000602084013e610b34565b606091505b5091509150818015610b47575080516020145b8015610b6e57508051630b135d3f60e11b90610b6c9083016020908101908401610e40565b145b98975050505050505050565b6000808251604103610bb05760208301516040840151606085015160001a610ba487828585610bbf565b94509450505050610bb8565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610bf65750600090506003610ca3565b8460ff16601b14158015610c0e57508460ff16601c14155b15610c1f5750600090506004610ca3565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610c73573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610c9c57600060019250925050610ca3565b9150600090505b94509492505050565b600080600060408486031215610cc157600080fd5b833567ffffffffffffffff80821115610cd957600080fd5b9085019060808288031215610ced57600080fd5b90935060208501359080821115610d0357600080fd5b818601915086601f830112610d1757600080fd5b813581811115610d2657600080fd5b876020828501011115610d3857600080fd5b6020830194508093505050509250925092565b60005b83811015610d66578181015183820152602001610d4e565b50506000910152565b60008151808452610d87816020860160208601610d4b565b601f01601f19169290920160200192915050565b60208152600061015b6020830184610d6f565b600060208284031215610dc057600080fd5b5035919050565b6001600160a01b038116811461035257600080fd5b600060208284031215610dee57600080fd5b813561015b81610dc7565b6000808335601e19843603018112610e1057600080fd5b83018035915067ffffffffffffffff821115610e2b57600080fd5b602001915036819003821315610bb857600080fd5b600060208284031215610e5257600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610e9257610e92610e59565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ec157610ec1610e59565b604052919050565b600067ffffffffffffffff821115610ee357610ee3610e59565b50601f01601f191660200190565b600060808236031215610f0357600080fd5b610f0b610e6f565b8235610f1681610dc7565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610f4657600080fd5b840136601f820112610f5757600080fd5b8035610f6a610f6582610ec9565b610e98565b8181523684838501011115610f7e57600080fd5b818484018583013760009181019093015250606082015292915050565b60008251610fad818460208701610d4b565b9190910192915050565b600082610fd457634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b60008060006060848603121561100457600080fd5b835161100f81610dc7565b602085015190935061102081610dc7565b80925050604084015190509250925092565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061058290830184610d6f565b600082601f83011261107657600080fd5b8151611084610f6582610ec9565b81815284602083860101111561109957600080fd5b61022d826020830160208701610d4b565b600080600080608085870312156110c057600080fd5b84516110cb81610dc7565b60208601519094506110dc81610dc7565b60408601516060870151919450925067ffffffffffffffff81111561110057600080fd5b61110c87828801611065565b91505092959194509250565b6001600160a01b038681168252851660208201526040810184905260a06060820181905260009061114b90830185610d6f565b8281036080840152610b6e8185610d6f565b82815260406020820152600061022d6040830184610d6f565b60008060006060848603121561118b57600080fd5b835161119681610dc7565b60208501516040860151919450925067ffffffffffffffff8111156111ba57600080fd5b6111c686828701611065565b9150509250925092565b60018060a01b03851681528360208201526080604082015260006111f76080830185610d6f565b82810360608401526103ff8185610d6f565b6000806000806080858703121561121f57600080fd5b845161122a81610dc7565b60208601516040870151919550935067ffffffffffffffff8082111561124f57600080fd5b61125b88838901611065565b9350606087015191508082111561127157600080fd5b5061110c87828801611065565b60018060a01b038616815284602082015260a0604082015260006112a560a0830186610d6f565b82810360608401526112b78186610d6f565b90508281036080840152610b6e8185610d6f565b600080600080600060a086880312156112e357600080fd5b85516112ee81610dc7565b60208701519095506112ff81610dc7565b60408701516060880151919550935067ffffffffffffffff8082111561132457600080fd5b61133089838a01611065565b9350608088015191508082111561134657600080fd5b5061135388828901611065565b9150509295509295909350565b6001600160a01b038781168252861660208201526040810185905260c06060820181905260009061139390830186610d6f565b82810360808401526113a58186610d6f565b905082810360a08401526103008185610d6f565b600080604083850312156113cc57600080fd5b82519150602083015167ffffffffffffffff8111156113ea57600080fd5b6113f685828601611065565b9150509250929050565b8381526060602082015260006114196060830185610d6f565b82810360408401526105828185610d6f565b6000806040838503121561143e57600080fd5b825161144981610dc7565b6020939093015192949293505050565b60018060a01b03841681528260208201526060604082015260006114806060830184610d6f565b95945050505050565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a","storage":{"0x1":"0x7bb6cd9be29fab783c0b494a06fed8b2e2596b7a","0xd8b896d609e853134f3f02ce62d8049b2fdfe9356134f6d548fb1beda30db79":"0x30135293","0x4f457f36b92dc6b16c281e5877e2d8d39630135c1b7246fa9174035e1efcefbd":"0x6fab95b3","0x6b7ba3fe9941e089de60543da4a1deaef065baa963222951b2f9a138f9960820":"0x6debcb8d","0x70cff8e4ee4af5aa154324d45bcf258212c235bbe79f0707bb6273110ef4e13a":"0xf5090c1e","0x73efb0e44094dbabc6bbeecd3be1d81f272157c2dae2d647e6315f150b0b1dd2":"0xd0778d6c","0x8b1c4edded6644848281eab03ac2c319242d62b2057cffa3dd4540715bbc155e":"0xef2c3088","0xbeb5ea8fc2aeae43b7170220434aa4429fb067f0866ae25514b29f647641ca8c":"0x511f1112","0xca659f6eb372ce950e69d4d474290a6a4285f6a06a6128ca9f45419371a1e997":"0xb34f33c5","0xd12e300b5f35ba5198dd81dab97a512a154a0ad0e2cda788abdc22deba64f2a7":"0x280d9b05","0xd5453e7f4fff276a1d42f717d1db50865c284ae707a15bd6a590a3895656f27c":"0x7eca395","0xea2575ae4056f10294a848ca5ed6d215dffd1b80838142770bc441f7df607d71":"0x61603dd9","0xf8ca3ef1e3d09a0d88e209301f12626c90bec3ea586d4bce2c7a58e7eae8278f":"0x68b6154f"}},"0xb17aae5b3a7815433fc82cfd67ea245767894f03":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061012a5760003560e01c80638d839ffe116100ab578063aeb8ce9b1161006f578063aeb8ce9b146105d7578063ce1e09c014610688578063f14fcbc81461069d578063f2fde38b146106c7578063f49826be146106fa578063f7a16963146107b95761012a565b80638d839ffe1461045d5780638da5cb5b146104725780638f32d59b146104a35780639791c097146104b8578063acf1a841146105695761012a565b80637e324479116100f25780637e324479146102b8578063839df945146102e857806383e7f6ff1461031257806385f6d155146103c55780638a95b09f146104485761012a565b806301ffc9a71461012f5780633ccfd60b146101775780633d86c52f1461018e578063530e784f14610270578063715018a6146102a3575b600080fd5b34801561013b57600080fd5b506101636004803603602081101561015257600080fd5b50356001600160e01b031916610881565b604080519115158252519081900360200190f35b34801561018357600080fd5b5061018c610a12565b005b34801561019a57600080fd5b5061025e600480360360a08110156101b157600080fd5b810190602081018135600160201b8111156101cb57600080fd5b8201836020820111156101dd57600080fd5b803590602001918460018302840111600160201b831117156101fe57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b0383358116945060208401359360408101358216935060600135169050610a53565b60408051918252519081900360200190f35b34801561027c57600080fd5b5061018c6004803603602081101561029357600080fd5b50356001600160a01b0316610b42565b3480156102af57600080fd5b5061018c610ba3565b3480156102c457600080fd5b5061018c600480360360408110156102db57600080fd5b5080359060200135610bfe565b3480156102f457600080fd5b5061025e6004803603602081101561030b57600080fd5b5035610c1a565b34801561031e57600080fd5b5061025e6004803603604081101561033557600080fd5b810190602081018135600160201b81111561034f57600080fd5b82018360208201111561036157600080fd5b803590602001918460018302840111600160201b8311171561038257600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505091359250610c2c915050565b61018c600480360360808110156103db57600080fd5b810190602081018135600160201b8111156103f557600080fd5b82018360208201111561040757600080fd5b803590602001918460018302840111600160201b8311171561042857600080fd5b91935091506001600160a01b038135169060208101359060400135610d9e565b34801561045457600080fd5b5061025e610de9565b34801561046957600080fd5b5061025e610df0565b34801561047e57600080fd5b50610487610df6565b604080516001600160a01b039092168252519081900360200190f35b3480156104af57600080fd5b50610163610e05565b3480156104c457600080fd5b50610163600480360360208110156104db57600080fd5b810190602081018135600160201b8111156104f557600080fd5b82018360208201111561050757600080fd5b803590602001918460018302840111600160201b8311171561052857600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610e16945050505050565b61018c6004803603604081101561057f57600080fd5b810190602081018135600160201b81111561059957600080fd5b8201836020820111156105ab57600080fd5b803590602001918460018302840111600160201b831117156105cc57600080fd5b919350915035610e2b565b3480156105e357600080fd5b50610163600480360360208110156105fa57600080fd5b810190602081018135600160201b81111561061457600080fd5b82018360208201111561062657600080fd5b803590602001918460018302840111600160201b8311171561064757600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610fcf945050505050565b34801561069457600080fd5b5061025e611069565b3480156106a957600080fd5b5061018c600480360360208110156106c057600080fd5b503561106f565b3480156106d357600080fd5b5061018c600480360360208110156106ea57600080fd5b50356001600160a01b03166110a1565b34801561070657600080fd5b5061025e6004803603606081101561071d57600080fd5b810190602081018135600160201b81111561073757600080fd5b82018360208201111561074957600080fd5b803590602001918460018302840111600160201b8311171561076a57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b0383351693505050602001356110bb565b61018c600480360360c08110156107cf57600080fd5b810190602081018135600160201b8111156107e957600080fd5b8201836020820111156107fb57600080fd5b803590602001918460018302840111600160201b8311171561081c57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b038335811694506020840135936040810135935060608101358216925060800135166110d3565b604080517f737570706f727473496e74657266616365286279746573342900000000000000815290519081900360190190206000906001600160e01b0319838116911614806109c05750604080517472656e657728737472696e672c75696e743235362960581b815290519081900360150181209080602861186a8239604080519182900360280182206e636f6d6d697428627974657333322960881b8352905191829003600f01822090925090806026611892823960260190506040518091039020604051808070617661696c61626c6528737472696e672960781b8152506011019050604051809103902060405180807f72656e74507269636528737472696e672c75696e7432353629000000000000008152506019019050604051809103902018181818186001600160e01b031916826001600160e01b031916145b80610a0c5750604051808061182a60409139604080519182900301812091508060426118b8823960420190506040518091039020186001600160e01b031916826001600160e01b031916145b92915050565b610a1a610e05565b610a2357600080fd5b6040513390303180156108fc02916000818181858888f19350505050158015610a50573d6000803e3d6000fd5b50565b845160208601206000906001600160a01b038416158015610a7b57506001600160a01b038316155b15610acb57604080516020808201939093526bffffffffffffffffffffffff19606089901b1681830152605480820188905282518083039091018152607490910190915280519101209050610b39565b6001600160a01b038416610ade57600080fd5b604080516020808201939093526bffffffffffffffffffffffff19606089811b82168385015287811b8216605484015286901b166068820152607c80820188905282518083039091018152609c909101909152805191012090505b95945050505050565b610b4a610e05565b610b5357600080fd5b600280546001600160a01b0319166001600160a01b0383811691909117918290556040519116907ff261845a790fe29bbd6631e2ca4a5bdc83e6eed7c3271d9590d97287e00e912390600090a250565b610bab610e05565b610bb457600080fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b610c06610e05565b610c0f57600080fd5b600391909155600455565b60056020526000908152604090205481565b815160208084019190912060025460015460408051636b727d4360e11b81526004810185905290516000956001600160a01b03948516946350e9a715948a9491169263d6e4fa8692602480840193919291829003018186803b158015610c9157600080fd5b505afa158015610ca5573d6000803e3d6000fd5b505050506040513d6020811015610cbb57600080fd5b50516040516001600160e01b031960e085901b168152602481018290526044810188905260606004820190815283516064830152835189928291608490910190602087019080838360005b83811015610d1e578181015183820152602001610d06565b50505050905090810190601f168015610d4b5780820380516001836020036101000a031916815260200191505b5094505050505060206040518083038186803b158015610d6a57600080fd5b505afa158015610d7e573d6000803e3d6000fd5b505050506040513d6020811015610d9457600080fd5b5051949350505050565b610de285858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250889350879250869150806110d3565b5050505050565b6224ea0081565b60035481565b6000546001600160a01b031690565b6000546001600160a01b0316331490565b60006003610e2383611646565b101592915050565b6000610e6e84848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250869250610c2c915050565b905080341015610e7d57600080fd5b60008484604051808383808284376040805193909101839003832060015463c475abff60e01b855260048501829052602485018b90529151909750600096506001600160a01b03909116945063c475abff93506044808401936020935082900301818787803b158015610eef57600080fd5b505af1158015610f03573d6000803e3d6000fd5b505050506040513d6020811015610f1957600080fd5b5051905034831015610f565760405133903485900380156108fc02916000818181858888f19350505050158015610f54573d6000803e3d6000fd5b505b817f3da24c024582931cfaf8267d8ed24d13a82a8068d5bd337d30ec45cea4e506ae8787868560405180806020018481526020018381526020018281038252868682818152602001925080828437600083820152604051601f909101601f191690920182900397509095505050505050a2505050505050565b80516020820120600090610fe283610e16565b80156110625750600154604080516312dc929d60e31b81526004810184905290516001600160a01b03909216916396e494e891602480820192602092909190829003018186803b15801561103557600080fd5b505afa158015611049573d6000803e3d6000fd5b505050506040513d602081101561105f57600080fd5b50515b9392505050565b60045481565b6004546000828152600560205260409020544291011061108e57600080fd5b6000908152600560205260409020429055565b6110a9610e05565b6110b257600080fd5b610a508161172e565b60006110cb848484600080610a53565b949350505050565b60006110e28787868686610a53565b905060006110f188878461179c565b885160208a01209091508060006001600160a01b038716156114ac5760015460408051633f2891eb60e21b815260048101859052306024820152604481018c905290516001600160a01b039092169163fca247ac916064808201926020929091908290030181600087803b15801561116857600080fd5b505af115801561117c573d6000803e3d6000fd5b505050506040513d602081101561119257600080fd5b505160015460408051630ddf7fcb60e41b815290519293506000926001600160a01b039092169163ddf7fcb091600480820192602092909190829003018186803b1580156111df57600080fd5b505afa1580156111f3573d6000803e3d6000fd5b505050506040513d602081101561120957600080fd5b50516040805160208181019390935280820187905281518082038301815260608201808452815191850191909120600154633f15457f60e01b90925292519294506001600160a01b031692633f15457f92606480840193829003018186803b15801561127457600080fd5b505afa158015611288573d6000803e3d6000fd5b505050506040513d602081101561129e57600080fd5b505160408051630c4b7b8560e11b8152600481018490526001600160a01b038b8116602483015291519190921691631896f70a91604480830192600092919082900301818387803b1580156112f257600080fd5b505af1158015611306573d6000803e3d6000fd5b505050506001600160a01b0387161561139257876001600160a01b031663d5fa2b0082896040518363ffffffff1660e01b815260040180838152602001826001600160a01b03166001600160a01b0316815260200192505050600060405180830381600087803b15801561137957600080fd5b505af115801561138d573d6000803e3d6000fd5b505050505b60015460408051630a3b53db60e21b8152600481018690526001600160a01b038e81166024830152915191909216916328ed4f6c91604480830192600092919082900301818387803b1580156113e757600080fd5b505af11580156113fb573d6000803e3d6000fd5b50505050600160009054906101000a90046001600160a01b03166001600160a01b03166323b872dd308d866040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050600060405180830381600087803b15801561148e57600080fd5b505af11580156114a2573d6000803e3d6000fd5b505050505061154c565b6001600160a01b038616156114c057600080fd5b60015460408051633f2891eb60e21b8152600481018590526001600160a01b038d81166024830152604482018d90529151919092169163fca247ac9160648083019260209291908290030181600087803b15801561151d57600080fd5b505af1158015611531573d6000803e3d6000fd5b505050506040513d602081101561154757600080fd5b505190505b896001600160a01b0316837fca6abbe9d7f11422cb6ca7629fbf6fe9efb1c621f71ce8f02b9f2a230097404f8d87856040518080602001848152602001838152602001828103825285818151815260200191508051906020019080838360005b838110156115c45781810151838201526020016115ac565b50505050905090810190601f1680156115f15780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a3833411156116395760405133903486900380156108fc02916000818181858888f19350505050158015611637573d6000803e3d6000fd5b505b5050505050505050505050565b8051600090819081905b8082101561172557600085838151811061166657fe5b01602001516001600160f81b0319169050600160ff1b81101561168e57600183019250611719565b600760fd1b6001600160f81b0319821610156116af57600283019250611719565b600f60fc1b6001600160f81b0319821610156116d057600383019250611719565b601f60fb1b6001600160f81b0319821610156116f157600483019250611719565b603f60fa1b6001600160f81b03198216101561171257600583019250611719565b6006830192505b50600190920191611650565b50909392505050565b6001600160a01b03811661174157600080fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b600354600082815260056020526040812054909142910111156117be57600080fd5b600454600083815260056020526040902054429101116117dd57600080fd5b6117e684610fcf565b6117ef57600080fd5b600082815260056020526040812081905561180a8585610c2c565b90506224ea0084101561181c57600080fd5b803410156110cb57600080fdfe6d616b65436f6d6d69746d656e7457697468436f6e66696728737472696e672c616464726573732c627974657333322c616464726573732c6164647265737329726567697374657228737472696e672c616464726573732c75696e743235362c62797465733332296d616b65436f6d6d69746d656e7428737472696e672c616464726573732c6279746573333229726567697374657257697468436f6e66696728737472696e672c616464726573732c75696e743235362c627974657333322c616464726573732c6164647265737329a265627a7a72315820ba74b4e49afb22de09a9ebda5d073d93e2a2a7b2530ce50def390c32cac92ea064736f6c634300050c0032","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1":"0xc965345edac823d56812cd20a10316233916a605","0x2":"0xec71e4e674fe0f432693dc2b935c34bd2774c003","0x3":"0x258","0x4":"0x15180"}},"0xbdefcf6429d0ac68236a6beb321cbd2ce66b463c":{"nonce":2,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c80636d435421116100885780637b37e561116100635780637b37e561146102435780638b9e028b14610256578063906c87cc1461027657806393790f4414610289575f80fd5b80636d435421146101eb5780636e9bfd9f146101fe578063794593bc14610230575f80fd5b806314afd79e116100c357806314afd79e1461018157806333bc8572146101945780634e3f9580146101b757806351710e45146101d8575f80fd5b8063027cc764146100e95780630a96ad391461011957806313ad9cab1461016c575b5f80fd5b6100fc6100f7366004610c39565b61029c565b6040516001600160a01b0390911681526020015b60405180910390f35b604080517f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f81527fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167602082015201610110565b61017f61017a366004610c61565b610339565b005b6100fc61018f366004610ca9565b610531565b6101a76101a2366004610cc9565b61055c565b6040519015158152602001610110565b6101ca6101c5366004610ca9565b610595565b604051908152602001610110565b61017f6101e6366004610ca9565b6105bd565b61017f6101f9366004610cc9565b6106be565b61021161020c366004610cfa565b6107ae565b604080516001600160a01b039093168352901515602083015201610110565b6100fc61023e366004610d11565b610838565b61017f610251366004610ca9565b610a0a565b610269610264366004610ca9565b610aab565b6040516101109190610d32565b6100fc610284366004610ca9565b610b28565b6101ca610297366004610ca9565b610b53565b5f6102a683610b8e565b6001600160a01b0383165f908152602081905260409020600301548083106102f157604051636ceb340b60e01b81526001600160a01b03851660048201526024015b60405180910390fd5b6001600160a01b0384165f90815260208190526040902060030180548490811061031d5761031d610d7e565b5f918252602090912001546001600160a01b0316949350505050565b61034283610bc6565b60405163c4e8fcb560e01b81526001600160a01b038381166004830152821515602483015284169063c4e8fcb5906044015f604051808303815f87803b15801561038a575f80fd5b505af115801561039c573d5f803e3d5ffd5b505050506001600160a01b038381165f908152602081815260408083209386168352600484019091529020548015158380156103d6575080155b15610425576003830180546001810182555f828152602080822090920180546001600160a01b0319166001600160a01b038a169081179091559254928152600486019091526040902055610529565b831580156104305750805b156105295760038301545f198301905f9061044d90600190610d92565b90508181146104d8575f85600301828154811061046c5761046c610d7e565b5f918252602090912001546003870180546001600160a01b03909216925082918590811061049c5761049c610d7e565b5f91825260208083209190910180546001600160a01b0319166001600160a01b0394851617905592909116815260048701909152604090208490555b846003018054806104eb576104eb610db7565b5f828152602080822083015f1990810180546001600160a01b03191690559092019092556001600160a01b0389168252600487019052604081205550505b505050505050565b5f61053b82610b8e565b506001600160a01b039081165f908152602081905260409020600101541690565b5f61056683610b8e565b506001600160a01b039182165f9081526020818152604080832093909416825260049092019091522054151590565b5f61059f82610b8e565b506001600160a01b03165f9081526020819052604090206003015490565b6105c681610b8e565b6001600160a01b038181165f9081526020819052604090206002015416331461060d576040516388c3a11560e01b81526001600160a01b03821660048201526024016102e8565b6040515f907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da908290a26001600160a01b038082165f818152602081905260408082206002810180546001600160a01b031916905560010154905133949190911692917fc8894f26f396ce8c004245c8b7cd1b92103a6e4302fcbab883987149ac01b7ec91a46001600160a01b03165f90815260208190526040902060010180546001600160a01b03191633179055565b6106c782610bc6565b6001600160a01b0381166106f95760405163a388d26360e01b81526001600160a01b03831660048201526024016102e8565b6001600160a01b038083165f9081526020819052604090206002015481169082160361074b576040516365e0406560e11b81526001600160a01b038084166004830152821660248201526044016102e8565b6040516001600160a01b038216907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da905f90a26001600160a01b039182165f90815260208190526040902060020180546001600160a01b03191691909216179055565b5f8060ff60f81b30847f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f6040516020016107eb9493929190610dcb565b60408051601f198184030181529190528051602090910120936001600160a01b0385163f7fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167149350915050565b5f6001600160a01b0382166108605760405163267eaa8160e21b815260040160405180910390fd5b606083901c3314610884576040516332db94d160e21b815260040160405180910390fd5b6040516108c3906001600160f81b031990309086907f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f90602001610dcb565b604051602081830303815290604052805190602001205f1c90507fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167816001600160a01b03163f0361093257604051633194665960e11b81526001600160a01b03821660048201526024016102e8565b8260405161093f90610c16565b8190604051809103905ff590508015801561095c573d5f803e3d5ffd5b50506001600160a01b038181165f81815260208181526040918290206001810180546001600160a01b03191695881695909517909455868455815192835282018690527f4397af6128d529b8ae0442f99db1296d5136062597a15bbc61c1b2a6431a7d15910160405180910390a16040516001600160a01b03808516915f918516907fc8894f26f396ce8c004245c8b7cd1b92103a6e4302fcbab883987149ac01b7ec908390a45092915050565b610a1381610bc6565b6001600160a01b038181165f9081526020819052604090206002015416610a58576040516335809b0b60e11b81526001600160a01b03821660048201526024016102e8565b6040515f907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da908290a26001600160a01b03165f90815260208190526040902060020180546001600160a01b0319169055565b6060610ab682610b8e565b6001600160a01b0382165f908152602081815260409182902060030180548351818402810184019094528084529091830182828015610b1c57602002820191905f5260205f20905b81546001600160a01b03168152600190910190602001808311610afe575b50505050509050919050565b5f610b3282610b8e565b506001600160a01b039081165f908152602081905260409020600201541690565b6001600160a01b0381165f9081526020819052604090205480610b89576040516304ca820960e41b815260040160405180910390fd5b919050565b6001600160a01b0381165f90815260208190526040902054610bc3576040516304ca820960e41b815260040160405180910390fd5b50565b610bcf81610b8e565b6001600160a01b038181165f90815260208190526040902060010154163314610bc35760405163d4ed9a1760e01b81526001600160a01b03821660048201526024016102e8565b610a4180610e0583390190565b80356001600160a01b0381168114610b89575f80fd5b5f8060408385031215610c4a575f80fd5b610c5383610c23565b946020939093013593505050565b5f805f60608486031215610c73575f80fd5b610c7c84610c23565b9250610c8a60208501610c23565b915060408401358015158114610c9e575f80fd5b809150509250925092565b5f60208284031215610cb9575f80fd5b610cc282610c23565b9392505050565b5f8060408385031215610cda575f80fd5b610ce383610c23565b9150610cf160208401610c23565b90509250929050565b5f60208284031215610d0a575f80fd5b5035919050565b5f8060408385031215610d22575f80fd5b82359150610cf160208401610c23565b602080825282518282018190525f9190848201906040850190845b81811015610d725783516001600160a01b031683529284019291840191600101610d4d565b50909695505050505050565b634e487b7160e01b5f52603260045260245ffd5b81810381811115610db157634e487b7160e01b5f52601160045260245ffd5b92915050565b634e487b7160e01b5f52603160045260245ffd5b6001600160f81b031994909416845260609290921b6bffffffffffffffffffffffff19166001840152601583015260358201526055019056fe60a060405234801561000f575f80fd5b5033608052608051610a1561002c5f395f6101d20152610a155ff3fe608060405234801561000f575f80fd5b506004361061004a575f3560e01c80634ce34aa21461004e578063899e104c1461007e5780638df25d9214610091578063c4e8fcb5146100a4575b5f80fd5b61006161005c366004610834565b6100b9565b6040516001600160e01b0319909116815260200160405180910390f35b61006161008c3660046108b4565b610121565b61006161009f36600461091b565b61018a565b6100b76100b2366004610969565b6101c7565b005b5f335f525f60205260405f20546100dd576349ed56f960e11b5f523360045260245ffd5b815f5b81811015610110576101088585838181106100fd576100fd6109a2565b905060c002016102c4565b6001016100e0565b50632671a55160e11b949350505050565b5f335f525f60205260405f2054610145576349ed56f960e11b5f523360045260245ffd5b835f5b8181101561016d576101658787838181106100fd576100fd6109a2565b600101610148565b506101788484610436565b50632267841360e21b95945050505050565b5f335f525f60205260405f20546101ae576349ed56f960e11b5f523360045260245ffd5b6101b88383610436565b506346f92ec960e11b92915050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610210576040516336abb4df60e11b815260040160405180910390fd5b6001600160a01b0382165f9081526020819052604090205481151560ff909116151503610268576040516349271a0f60e11b81526001600160a01b038316600482015281151560248201526044015b60405180910390fd5b6001600160a01b0382165f8181526020818152604091829020805460ff191685151590811790915591519182527fae63067d43ac07563b7eb8db6595635fc77f1578a2a5ea06ba91b63e2afa37e2910160405180910390a25050565b60016102d360208301836109ca565b60038111156102e4576102e46109b6565b03610329576103266102fc60408301602084016109ef565b61030c60608401604085016109ef565b61031c60808501606086016109ef565b8460a0013561056c565b50565b600261033860208301836109ca565b6003811115610349576103496109b6565b036103b6578060a00135600114610379576040516369f9582760e01b815260a0820135600482015260240161025f565b61032661038c60408301602084016109ef565b61039c60608401604085016109ef565b6103ac60808501606086016109ef565b8460800135610660565b60036103c560208301836109ca565b60038111156103d6576103d66109b6565b0361041d576103266103ee60408301602084016109ef565b6103fe60608401604085016109ef565b61040e60808501606086016109ef565b84608001358560a00135610715565b604051631e4cbc7f60e21b815260040160405180910390fd5b808280631759616b60e11b6020525f5b8381101561055f57823582018035803b61046b57635f15d6725f52806020526024601cfd5b60a08201358060051b60c0018060808501351460a0606086013514168185013583141615905080156104a657633ae8821360e21b5f5260045ffd5b506020860195506080602084016024378060061b60400190508060a00160a4525f8160c401528060c4018160a0850160c4375f808260205f875af1935083610550573d1561053057601f3d0160051c91508060051c826003028184111561051a578184036003028280028580020360091c01015b5a60208201101561052d573d5f803e3d5ffd5b50505b6357e222f160e11b5f528260045260c0606452608451602001608452805ffd5b50505050600181019050610446565b5050505060806040525050565b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166106515780873b15151661065157806106405781610623573d1561060257601f3d0160051c8360051c81600302818311156105eb578183036003028280028480020360091c01015b5a6020820110156105fe573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b833b61067757635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af180610707573d156106e557601f3d0160051c8260051c81600302818311156106ce578183036003028280028480020360091c01015b5a6020820110156106e1573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b61072c57635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af1806107d1573d156107b057601f3d0160051c8560051c8160030281831115610799578183036003028280028480020360091c01015b5a6020820110156107ac573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b5f8083601f8401126107fc575f80fd5b50813567ffffffffffffffff811115610813575f80fd5b60208301915083602060c08302850101111561082d575f80fd5b9250929050565b5f8060208385031215610845575f80fd5b823567ffffffffffffffff81111561085b575f80fd5b610867858286016107ec565b90969095509350505050565b5f8083601f840112610883575f80fd5b50813567ffffffffffffffff81111561089a575f80fd5b6020830191508360208260051b850101111561082d575f80fd5b5f805f80604085870312156108c7575f80fd5b843567ffffffffffffffff808211156108de575f80fd5b6108ea888389016107ec565b90965094506020870135915080821115610902575f80fd5b5061090f87828801610873565b95989497509550505050565b5f806020838503121561092c575f80fd5b823567ffffffffffffffff811115610942575f80fd5b61086785828601610873565b80356001600160a01b0381168114610964575f80fd5b919050565b5f806040838503121561097a575f80fd5b6109838361094e565b915060208301358015158114610997575f80fd5b809150509250929050565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52602160045260245ffd5b5f602082840312156109da575f80fd5b8135600481106109e8575f80fd5b9392505050565b5f602082840312156109ff575f80fd5b6109e88261094e56fea164736f6c6343000818000aa164736f6c6343000818000a","storage":{}},"0xbe5deac45dd1ca4ee18dc2d585d84d3d3cb82b0d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c806341539d4a146100465780634d5505d314610097578063afa764d7146100b1575b600080fd5b6100636004803603602081101561005c57600080fd5b50356100dc565b6040805195865260208601949094528484019290925260608401526001600160a01b03166080830152519081900360a00190f35b61009f610114565b60408051918252519081900360200190f35b6100da600480360360608110156100c757600080fd5b508035906020810135906040013561011a565b005b60006020819052908152604090208054600182015460028301546003840154600490940154929391929091906001600160a01b031685565b60015481565b6101226101eb565b506040805160a0810182528481526020808201858152828401858152426060808601918252336080870181815260018054810180825560009081528089528a81208a518155975188830155955160028801559351600387015551600490950180546001600160a01b0319166001600160a01b0390961695909517909455905486518981529485018890528487018a905295519495919491937fba5de06d22af2685c6c7765f60067f7d2b08c2d29f53cdf14d67f6d1c9bfb527929081900390910190a450505050565b6040518060a001604052806000801916815260200160008152602001600081526020016000815260200160006001600160a01b03168152509056fea164736f6c6343000606000a","storage":{"0x1":"0x0"}},"0xbe92182cab5b84fd18b34881a0c32771e84f5b8b":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061021c5760003560e01c80638da5cb5b11610125578063bebec6b4116100ad578063e985e9c51161007c578063e985e9c514610540578063f059235914610553578063f2fde38b14610566578063ffa1ad7414610579578063ffad6f551461059d57600080fd5b8063bebec6b4146104e7578063bfc5429b146104fa578063c15ae7cf1461050d578063c87b56dd1461052d57600080fd5b8063a81ce6f9116100f4578063a81ce6f91461046d578063ac9650d814610480578063b3f9e4cb146104a0578063b85afd28146104b3578063b98b3526146104d457600080fd5b80638da5cb5b146103f157806391015f6b146103f9578063933c051d1461041b578063a3f4df7e1461043d57600080fd5b80634bd79ed0116101a857806370a082311161017757806370a082311461038d578063715018a6146103a05780637e37479e146103a857806383caffbe146103bb578063869b8884146103ce57600080fd5b80634bd79ed0146103335780634f558e79146103465780636352211e14610359578063672b9f811461036c57600080fd5b80631bd8cc1a116101ef5780631bd8cc1a146102ac5780631be5e7ed146102cc578063276fabb1146102ec578063430c20811461030d578063485cc9551461032057600080fd5b806301ffc9a7146102215780630328075514610249578063081812fc1461026c57806313af403514610297575b600080fd5b61023461022f366004612c9d565b6105b0565b60405190151581526020015b60405180910390f35b61025c610257366004612d0b565b610638565b6040516102409493929190612dfe565b61027f61027a366004612e3c565b61065b565b6040516001600160a01b039091168152602001610240565b6102aa6102a5366004612e6a565b610760565b005b6102bf6102ba366004612d0b565b6107d1565b6040516102409190612e87565b6102df6102da366004612edb565b6107f0565b6040516102409190612f12565b6102ff6102fa366004612f25565b61091b565b604051908152602001610240565b61023461031b366004612f66565b61098f565b6102aa61032e366004612f92565b610aa2565b6102aa610341366004612fcb565b610bf5565b610234610354366004612e3c565b610e51565b61027f610367366004612e3c565b610e5c565b61037f61037a366004613036565b610e67565b604051610240929190613058565b6102ff61039b366004612e6a565b610f97565b6102aa611095565b6102ff6103b6366004612e6a565b6110a9565b6102bf6103c936600461307d565b611118565b6103e16103dc366004612fcb565b6114f0565b60405161024094939291906131bb565b61027f6116e6565b61040c610407366004612d0b565b611714565b60405161024093929190613208565b61042e610429366004612fcb565b611734565b60405161024093929190613234565b6102df604051806040016040528060118152602001702aa7299d10283937bc3c902932b0b232b960791b81525081565b61027f61047b366004612e3c565b6118bd565b61049361048e366004612f25565b61198b565b6040516102409190613277565b61027f6104ae366004612e3c565b611a7f565b6104c66104c1366004612d0b565b611b05565b6040516102409291906132d9565b6102df6104e23660046132fe565b611ce1565b6102df6104f5366004612e6a565b611cfb565b6102df6105083660046132fe565b611d6f565b61052061051b366004612f25565b611d89565b6040516102409190613371565b6102df61053b366004612e3c565b611e37565b61023461054e366004612f92565b611f09565b6102aa610561366004612fcb565b611f54565b6102aa610574366004612e6a565b612018565b6102df604051806040016040528060058152602001640302e352e360dc1b81525081565b6102aa6105ab366004613384565b612085565b60006001600160e01b031982166362526e6360e01b14806105e157506001600160e01b03198216636fa624af60e11b145b806105fc57506001600160e01b031982166308da864d60e31b145b8061061757506001600160e01b03198216638584880360e01b145b8061063257506301ffc9a760e01b6001600160e01b03198316145b92915050565b6000806060806106498787876120d8565b93509350935093505b93509350935093565b60006106668261233a565b61067257506000919050565b61067b826123d2565b6106f25760665460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa1580156106c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106ed91906133bd565b610632565b60655460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa15801561073c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061063291906133bd565b600061076a6116e6565b6001600160a01b0316146107c55760405162461bcd60e51b815260206004820152601e60248201527f50726f78795265616465723a204f574e45525f414c52454144595f534554000060448201526064015b60405180910390fd5b6107ce81612419565b50565b60606107e66107e0848661346a565b83612495565b90505b9392505050565b60606107fb826123d2565b1561088057606554604051631be5e7ed60e01b81526001600160a01b0390911690631be5e7ed9061083490879087908790600401613547565b600060405180830381865afa158015610851573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261087991908101906135b0565b90506107e9565b600061088b83612617565b90506001600160a01b0381163b1561091357604051631be5e7ed60e01b81526001600160a01b03821690631be5e7ed906108cd90889088908890600401613547565b600060405180830381865afa92505050801561090b57506040513d6000823e601f3d908101601f1916820160405261090891908101906135b0565b60015b156109135791505b509392505050565b60655460405163276fabb160e01b81526000916001600160a01b03169063276fabb19061094e908690869060040161366c565b602060405180830381865afa15801561096b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613680565b600061099a8261233a565b6109a657506000610632565b6109af826123d2565b610a2d5760665460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a04573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a289190613699565b6107e9565b60655460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a7e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613699565b600054610100900460ff1615808015610ac25750600054600160ff909116105b80610adc5750303b158015610adc575060005460ff166001145b610b3f5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107bc565b6000805460ff191660011790558015610b62576000805461ff0019166101001790555b606580546001600160a01b038086166001600160a01b0319928316179092556066805492851692909116919091179055610b9a61268a565b610ba261268a565b610baa6126b1565b8015610bf0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b610bfd6126e1565b828114610c4c5760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107bc565b60005b83811015610e4a5760006068868684818110610c6d57610c6d6136bb565b9050602002810190610c7f91906136d1565b604051610c8d929190613717565b908152604051908190036020019020541115610cf1576068858583818110610cb757610cb76136bb565b9050602002810190610cc991906136d1565b604051610cd7929190613717565b90815260200160405180910390206000610cf19190612c18565b60005b838383818110610d0657610d066136bb565b9050602002810190610d189190613727565b9050811015610ddc576068868684818110610d3557610d356136bb565b9050602002810190610d4791906136d1565b604051610d55929190613717565b9081526020016040518091039020848484818110610d7557610d756136bb565b9050602002810190610d879190613727565b83818110610d9757610d976136bb565b9050602002810190610da991906136d1565b82546001810184556000938452602090932090920191610dc991836137f8565b5080610dd4816138cd565b915050610cf4565b507fb2b57b54285120d17f49f2490a39ef791441fd0ad1e6b6818c23262bf91f061c858583818110610e1057610e106136bb565b9050602002810190610e2291906136d1565b604051610e309291906138e6565b60405180910390a180610e42816138cd565b915050610c4f565b5050505050565b60006106328261233a565b600061063282612740565b606080610e73836123d2565b15610ef95760655460405163672b9f8160e01b815260048101869052602481018590526001600160a01b039091169063672b9f8190604401600060405180830381865afa158015610ec8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610ef091908101906138fa565b91509150610f90565b6000610f0484612617565b90506001600160a01b0381163b15610f8e5760405163672b9f8160e01b815260048101869052602481018590526001600160a01b0382169063672b9f8190604401600060405180830381865afa925050508015610f8357506040513d6000823e601f3d908101601f19168201604052610f8091908101906138fa565b60015b15610f8e5790935091505b505b9250929050565b6065546040516370a0823160e01b81526001600160a01b03838116600483015260009283929116906370a0823190602401602060405180830381865afa158015610fe5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110099190613680565b6066549091506001600160a01b031615610632576066546040516370a0823160e01b81526001600160a01b038581166004830152909116906370a0823190602401602060405180830381865afa158015611067573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061108b9190613680565b6107e9908261395d565b61109d6126e1565b6110a76000612419565b565b606554604051633f1ba3cf60e11b81526001600160a01b0383811660048301526000921690637e37479e90602401602060405180830381865afa1580156110f4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190613680565b606060006067868660405161112e929190613717565b9081526020016040518091039020805461114790613770565b80601f016020809104026020016040519081016040528092919081815260200182805461117390613770565b80156111c05780601f10611195576101008083540402835291602001916111c0565b820191906000526020600020905b8154815290600101906020018083116111a357829003601f168201915b5050505050905080516000036111d657506114e8565b6000604051806040016040528060068152602001653a37b5b2b71760d11b81525090506000604051806040016040528060088152602001672e6164647265737360c01b81525090506000604051806040016040528060018152602001601760f91b815250905060008385838c8c868d8d8a60405160200161125f99989796959493929190613970565b6040516020818303038152906040529050600060688260405161128291906139f3565b9081526020016040518091039020805480602002602001604051908101604052809291908181526020016000905b8282101561135c5783829060005260206000200180546112cf90613770565b80601f01602080910402602001604051908101604052809291908181526020018280546112fb90613770565b80156113485780601f1061131d57610100808354040283529160200191611348565b820191906000526020600020905b81548152906001019060200180831161132b57829003601f168201915b5050505050815260200190600101906112b0565b50505050905080516003611370919061395d565b6001600160401b03811115611387576113876133da565b6040519080825280602002602001820160405280156113ba57816020015b60608152602001906001900390816113a55790505b50965081876000815181106113d1576113d16136bb565b602002602001018190525060005b815181101561143e578181815181106113fa576113fa6136bb565b602002602001015188826001611410919061395d565b81518110611420576114206136bb565b60200260200101819052508080611436906138cd565b9150506113df565b508486848d8d8860405160200161145a96959493929190613a0f565b6040516020818303038152906040528782516001611478919061395d565b81518110611488576114886136bb565b60200260200101819052508486856040516020016114a893929190613a72565b60405160208183030381529060405287825160026114c6919061395d565b815181106114d6576114d66136bb565b60200260200101819052505050505050505b949350505050565b6060808080846001600160401b0381111561150d5761150d6133da565b604051908082528060200260200182016040528015611536578160200160208202803683370190505b509350846001600160401b03811115611551576115516133da565b60405190808252806020026020018201604052801561157a578160200160208202803683370190505b509250846001600160401b03811115611595576115956133da565b6040519080825280602002602001820160405280156115c857816020015b60608152602001906001900390816115b35790505b509150846001600160401b038111156115e3576115e36133da565b60405190808252806020026020018201604052801561161657816020015b60608152602001906001900390816116015790505b50905060005b858110156116da57611647898989898581811061163b5761163b6136bb565b905060200201356120d8565b888581518110611659576116596136bb565b60200260200101888681518110611672576116726136bb565b6020026020010188878151811061168b5761168b6136bb565b602002602001018888815181106116a4576116a46136bb565b6020908102919091010193909352929091526001600160a01b0392831690915291169052806116d2816138cd565b91505061161c565b50945094509450949050565b7fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c8121905546001600160a01b031690565b6000806060611724868686612761565b9250925092505b93509350939050565b60608080836001600160401b03811115611750576117506133da565b604051908082528060200260200182016040528015611779578160200160208202803683370190505b509250836001600160401b03811115611794576117946133da565b6040519080825280602002602001820160405280156117bd578160200160208202803683370190505b509150836001600160401b038111156117d8576117d86133da565b60405190808252806020026020018201604052801561180b57816020015b60608152602001906001900390816117f65790505b50905060005b848110156118b25761183c8888888885818110611830576118306136bb565b90506020020135612761565b86848151811061184e5761184e6136bb565b60200260200101868581518110611867576118676136bb565b60200260200101868681518110611880576118806136bb565b60209081029190910101929092526001600160a01b0392831690915291169052806118aa816138cd565b915050611811565b509450945094915050565b606554604051634f558e7960e01b8152600481018390526000916001600160a01b031690634f558e7990602401602060405180830381865afa158015611907573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061192b9190613699565b156119415750506065546001600160a01b031690565b6066546001600160a01b03161580159061196d575060006119618361296c565b6001600160a01b031614155b156119835750506066546001600160a01b031690565b506000919050565b6060816001600160401b038111156119a5576119a56133da565b6040519080825280602002602001820160405280156119d857816020015b60608152602001906001900390816119c35790505b50905060005b82811015611a7857611a48308585848181106119fc576119fc6136bb565b9050602002810190611a0e91906136d1565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061299e92505050565b828281518110611a5a57611a5a6136bb565b60200260200101819052508080611a70906138cd565b9150506119de565b5092915050565b6000611a8a8261233a565b611a9657506000919050565b611a9f826123d2565b611ad45760665460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb906024016106ac565b60655460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb9060240161071f565b606080836001600160401b03811115611b2057611b206133da565b604051908082528060200260200182016040528015611b5357816020015b6060815260200190600190039081611b3e5790505b509150836001600160401b03811115611b6e57611b6e6133da565b604051908082528060200260200182016040528015611ba157816020015b6060815260200190600190039081611b8c5790505b509050611bad836123d2565b15611c345760655460405163170b5fa560e31b81526001600160a01b039091169063b85afd2890611be690889088908890600401613ab5565b600060405180830381865afa158015611c03573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611c2b9190810190613b72565b91509150611cd9565b6000611c3f84612617565b90506001600160a01b0381163b15158015611c5957508415155b15611cd75760405163170b5fa560e31b81526001600160a01b0382169063b85afd2890611c8e90899089908990600401613ab5565b600060405180830381865afa925050508015611ccc57506040513d6000823e601f3d908101601f19168201604052611cc99190810190613b72565b60015b15611cd75790935091505b505b935093915050565b6060611cf08686868686612a92565b979650505050505050565b606554604051632fafb1ad60e21b81526001600160a01b038381166004830152606092169063bebec6b4906024015b600060405180830381865afa158015611d47573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261063291908101906135b0565b6060611d7e8686868686612a92565b509695505050505050565b6060816001600160401b03811115611da357611da36133da565b604051908082528060200260200182016040528015611dcc578160200160208202803683370190505b50905060005b82811015611a7857611dfb848483818110611def57611def6136bb565b90506020020135612740565b828281518110611e0d57611e0d6136bb565b6001600160a01b039092166020928302919091019091015280611e2f816138cd565b915050611dd2565b6060611e428261233a565b611e5a57505060408051602081019091526000815290565b611e63826123d2565b611ed85760665460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401600060405180830381865afa158015611eb0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106ed91908101906135b0565b60655460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401611d2a565b60405162461bcd60e51b815260206004820152601f60248201527f50726f78795265616465723a20554e535550504f525445445f4d4554484f440060448201526000906064016107bc565b611f5c6126e1565b828114611fab5760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107bc565b60005b83811015610e4a57612006858583818110611fcb57611fcb6136bb565b9050602002810190611fdd91906136d1565b858585818110611fef57611fef6136bb565b905060200281019061200191906136d1565b612b3e565b80612010816138cd565b915050611fae565b6120206126e1565b6001600160a01b0381166107c55760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107bc565b61208d6126e1565b60005b83811015610e4a576120c68585838181106120ad576120ad6136bb565b90506020028101906120bf91906136d1565b8585612b3e565b806120d0816138cd565b915050612090565b600080606080856001600160401b038111156120f6576120f66133da565b60405190808252806020026020018201604052801561212957816020015b60608152602001906001900390816121145790505b509150856001600160401b03811115612144576121446133da565b60405190808252806020026020018201604052801561217757816020015b60608152602001906001900390816121625790505b509050612183856123d2565b156122845760655460405163b3f9e4cb60e01b8152600481018790526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa1580156121d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121f591906133bd565b935061220085612bad565b60655460405163170b5fa560e31b81529194506001600160a01b03169063b85afd2890612235908a908a908a90600401613ab5565b600060405180830381865afa158015612252573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261227a9190810190613b72565b9092509050610652565b61228d85612617565b93506122988561296c565b92506001600160a01b0384163b151580156122b4575060008251115b156106525760405163170b5fa560e31b81526001600160a01b0385169063b85afd28906122e9908a908a908a90600401613ab5565b600060405180830381865afa92505050801561232757506040513d6000823e601f3d908101601f191682016040526123249190810190613b72565b60015b1561065257909250905093509350935093565b6000612345826123d2565b6123645760006123548361296c565b6001600160a01b03161415610632565b606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e79906024015b602060405180830381865afa1580156123ae573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190613699565b6066546000906001600160a01b031615806106325750606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401612391565b60006124236116e6565b9050817fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c812190580546001600160a01b0319166001600160a01b03928316179055604051838216918316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b606082516001600160401b038111156124b0576124b06133da565b6040519080825280602002602001820160405280156124e357816020015b60608152602001906001900390816124ce5790505b5090506124ef826123d2565b1561257257606554604051630dec660d60e11b81526001600160a01b0390911690631bd8cc1a906125269086908690600401613bcb565b600060405180830381865afa158015612543573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261256b9190810190613bed565b9050610632565b600061257d83612617565b90506001600160a01b0381163b15158015612599575060008451115b15611a7857604051630dec660d60e11b81526001600160a01b03821690631bd8cc1a906125cc9087908790600401613bcb565b600060405180830381865afa92505050801561260a57506040513d6000823e601f3d908101601f191682016040526126079190810190613bed565b60015b15611a7857949350505050565b60665460405163b3f9e4cb60e01b8152600481018390526000916001600160a01b03169063b3f9e4cb906024015b602060405180830381865afa92505050801561267e575060408051601f3d908101601f1916820190925261267b918101906133bd565b60015b61063257506000919050565b600054610100900460ff166110a75760405162461bcd60e51b81526004016107bc90613c21565b600054610100900460ff166126d85760405162461bcd60e51b81526004016107bc90613c21565b6110a733612419565b336126ea6116e6565b6001600160a01b0316146110a75760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107bc565b600061274b826123d2565b612758576106ed8261296c565b61063282612bad565b6000806060846001600160401b0381111561277e5761277e6133da565b6040519080825280602002602001820160405280156127b157816020015b606081526020019060019003908161279c5790505b5090506127bd846123d2565b156128bb5760655460405163b3f9e4cb60e01b8152600481018690526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561280b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061282f91906133bd565b925061283a84612bad565b606554604051630dec660d60e11b81529193506001600160a01b031690631bd8cc1a9061286f90899089908990600401613c6c565b600060405180830381865afa15801561288c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526128b49190810190613bed565b905061172b565b6128c484612617565b92506128cf8461296c565b91506001600160a01b0383163b151580156128e957508415155b1561172b57604051630dec660d60e11b81526001600160a01b03841690631bd8cc1a9061291e90899089908990600401613c6c565b600060405180830381865afa92505050801561295c57506040513d6000823e601f3d908101601f191682016040526129599190810190613bed565b60015b1561172b57905093509350939050565b6066546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401612645565b60606001600160a01b0383163b612a065760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b60648201526084016107bc565b600080846001600160a01b031684604051612a2191906139f3565b600060405180830381855af49150503d8060008114612a5c576040519150601f19603f3d011682016040523d82523d6000602084013e612a61565b606091505b5091509150612a898282604051806060016040528060278152602001613c8160279139612bdf565b95945050505050565b6060806000612aa388888888611118565b90506000612ab18286612495565b905060005b8151811015612b31576000828281518110612ad357612ad36136bb565b6020026020010151511115612b1f57828181518110612af457612af46136bb565b60200260200101519350818181518110612b1057612b106136bb565b60200260200101519450612b31565b80612b29816138cd565b915050612ab6565b5050509550959350505050565b818160678686604051612b52929190613717565b90815260200160405180910390209182612b6d9291906137f8565b507f0bf4b04a0f6d7d0800284e1abb0f58f795c0a25b9088634b6ab847be51001dec8484604051612b9f9291906138e6565b60405180910390a150505050565b6065546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401612645565b60608315612bee5750816107e9565b825115612bfe5782518084602001fd5b8160405162461bcd60e51b81526004016107bc9190612f12565b50805460008255906000526020600020908101906107ce91905b80821115612c4f576000612c468282612c53565b50600101612c32565b5090565b508054612c5f90613770565b6000825580601f10612c6f575050565b601f0160209004906000526020600020908101906107ce91905b80821115612c4f5760008155600101612c89565b600060208284031215612caf57600080fd5b81356001600160e01b0319811681146107e957600080fd5b60008083601f840112612cd957600080fd5b5081356001600160401b03811115612cf057600080fd5b6020830191508360208260051b8501011115610f9057600080fd5b600080600060408486031215612d2057600080fd5b83356001600160401b03811115612d3657600080fd5b612d4286828701612cc7565b909790965060209590950135949350505050565b60005b83811015612d71578181015183820152602001612d59565b50506000910152565b60008151808452612d92816020860160208601612d56565b601f01601f19169290920160200192915050565b600082825180855260208086019550808260051b84010181860160005b84811015612df157601f19868403018952612ddf838351612d7a565b98840198925090830190600101612dc3565b5090979650505050505050565b6001600160a01b03858116825284166020820152608060408201819052600090612e2a90830185612da6565b8281036060840152611cf08185612da6565b600060208284031215612e4e57600080fd5b5035919050565b6001600160a01b03811681146107ce57600080fd5b600060208284031215612e7c57600080fd5b81356107e981612e55565b6020815260006107e96020830184612da6565b60008083601f840112612eac57600080fd5b5081356001600160401b03811115612ec357600080fd5b602083019150836020828501011115610f9057600080fd5b600080600060408486031215612ef057600080fd5b83356001600160401b03811115612f0657600080fd5b612d4286828701612e9a565b6020815260006107e96020830184612d7a565b60008060208385031215612f3857600080fd5b82356001600160401b03811115612f4e57600080fd5b612f5a85828601612cc7565b90969095509350505050565b60008060408385031215612f7957600080fd5b8235612f8481612e55565b946020939093013593505050565b60008060408385031215612fa557600080fd5b8235612fb081612e55565b91506020830135612fc081612e55565b809150509250929050565b60008060008060408587031215612fe157600080fd5b84356001600160401b0380821115612ff857600080fd5b61300488838901612cc7565b9096509450602087013591508082111561301d57600080fd5b5061302a87828801612cc7565b95989497509550505050565b6000806040838503121561304957600080fd5b50508035926020909101359150565b60408152600061306b6040830185612d7a565b8281036020840152612a898185612d7a565b6000806000806040858703121561309357600080fd5b84356001600160401b03808211156130aa57600080fd5b6130b688838901612e9a565b909650945060208701359150808211156130cf57600080fd5b5061302a87828801612e9a565b600081518084526020808501945080840160005b838110156131155781516001600160a01b0316875295820195908201906001016130f0565b509495945050505050565b60008282518085526020808601955060058183821b8501018287016000805b868110156131ac57601f1988850381018c5283518051808752908801908887019080891b88018a01865b8281101561319557858a8303018452613183828651612d7a565b948c0194938c01939150600101613169565b509e8a019e9750505093870193505060010161313f565b50919998505050505050505050565b6080815260006131ce60808301876130dc565b82810360208401526131e081876130dc565b905082810360408401526131f48186613120565b90508281036060840152611cf08185613120565b6001600160a01b03848116825283166020820152606060408201819052600090612a8990830184612da6565b60608152600061324760608301866130dc565b828103602084015261325981866130dc565b9050828103604084015261326d8185613120565b9695505050505050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156132cc57603f198886030184526132ba858351612d7a565b9450928501929085019060010161329e565b5092979650505050505050565b6040815260006132ec6040830185612da6565b8281036020840152612a898185612da6565b60008060008060006060868803121561331657600080fd5b85356001600160401b038082111561332d57600080fd5b61333989838a01612e9a565b9097509550602088013591508082111561335257600080fd5b5061335f88828901612e9a565b96999598509660400135949350505050565b6020815260006107e960208301846130dc565b6000806000806040858703121561339a57600080fd5b84356001600160401b03808211156133b157600080fd5b6130b688838901612cc7565b6000602082840312156133cf57600080fd5b81516107e981612e55565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715613418576134186133da565b604052919050565b60006001600160401b03821115613439576134396133da565b5060051b60200190565b60006001600160401b0382111561345c5761345c6133da565b50601f01601f191660200190565b600061347d61347884613420565b6133f0565b80848252602080830192508560051b85013681111561349b57600080fd5b855b818110156135125780356001600160401b038111156134bc5760008081fd5b870136601f8201126134ce5760008081fd5b80356134dc61347882613443565b81815236868385010111156134f15760008081fd5b8186840187830137600091810186019190915286525093820193820161349d565b50919695505050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60408152600061355b60408301858761351e565b9050826020830152949350505050565b600082601f83011261357c57600080fd5b815161358a61347882613443565b81815284602083860101111561359f57600080fd5b6114e8826020830160208701612d56565b6000602082840312156135c257600080fd5b81516001600160401b038111156135d857600080fd5b6114e88482850161356b565b60008383855260208086019550808560051b8301018460005b87811015612df157848303601f19018952813536889003601e1901811261362357600080fd5b870184810190356001600160401b0381111561363e57600080fd5b80360382131561364d57600080fd5b61365885828461351e565b9a86019a94505050908301906001016135fd565b6020815260006107e66020830184866135e4565b60006020828403121561369257600080fd5b5051919050565b6000602082840312156136ab57600080fd5b815180151581146107e957600080fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e198436030181126136e857600080fd5b8301803591506001600160401b0382111561370257600080fd5b602001915036819003821315610f9057600080fd5b8183823760009101908152919050565b6000808335601e1984360301811261373e57600080fd5b8301803591506001600160401b0382111561375857600080fd5b6020019150600581901b3603821315610f9057600080fd5b600181811c9082168061378457607f821691505b6020821081036137a457634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115610bf057600081815260208120601f850160051c810160208610156137d15750805b601f850160051c820191505b818110156137f0578281556001016137dd565b505050505050565b6001600160401b0383111561380f5761380f6133da565b6138238361381d8354613770565b836137aa565b6000601f841160018114613857576000851561383f5750838201355b600019600387901b1c1916600186901b178355610e4a565b600083815260209020601f19861690835b828110156138885786850135825560209485019460019092019101613868565b50868210156138a55760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b634e487b7160e01b600052601160045260246000fd5b6000600182016138df576138df6138b7565b5060010190565b6020815260006107e660208301848661351e565b6000806040838503121561390d57600080fd5b82516001600160401b038082111561392457600080fd5b6139308683870161356b565b9350602085015191508082111561394657600080fd5b506139538582860161356b565b9150509250929050565b80820180821115610632576106326138b7565b60008a51613982818460208f01612d56565b8a5190830190613996818360208f01612d56565b8a519101906139a9818360208e01612d56565b0187898237600090880190815286516139c6818360208b01612d56565b0184868237600090850190815283516139e3818360208801612d56565b019b9a5050505050505050505050565b60008251613a05818460208701612d56565b9190910192915050565b60008751613a21818460208c01612d56565b875190830190613a35818360208c01612d56565b8751910190613a48818360208b01612d56565b018486823760009085019081528351613a65818360208801612d56565b0198975050505050505050565b60008451613a84818460208901612d56565b845190830190613a98818360208901612d56565b8451910190613aab818360208801612d56565b0195945050505050565b6040808252810183905260006001600160fb1b03841115613ad557600080fd5b8360051b808660608501376020830193909352500160600192915050565b600082601f830112613b0457600080fd5b81516020613b1461347883613420565b82815260059290921b84018101918181019086841115613b3357600080fd5b8286015b84811015611d7e5780516001600160401b03811115613b565760008081fd5b613b648986838b010161356b565b845250918301918301613b37565b60008060408385031215613b8557600080fd5b82516001600160401b0380821115613b9c57600080fd5b613ba886838701613af3565b93506020850151915080821115613bbe57600080fd5b5061395385828601613af3565b604081526000613bde6040830185612da6565b90508260208301529392505050565b600060208284031215613bff57600080fd5b81516001600160401b03811115613c1557600080fd5b6114e884828501613af3565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60408152600061355b6040830185876135e456fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a","storage":{}},"0xc2110388dd54228ae0a834119457ede938bf0b57":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061021e5760003560e01c80638da5cb5b11610123578063acf1a841116100ab578063d547741f1161006f578063d547741f14610682578063f14fcbc8146106a2578063f23a6e61146106c2578063f2fde38b146106e2578063ffa1ad741461070257600080fd5b8063acf1a841146105e0578063bc197c8114610600578063c0c53b8b14610620578063cf01585314610640578063d53913931461066057600080fd5b8063a0e3aef1116100f2578063a0e3aef114610534578063a217fddf14610554578063a3f4df7e14610569578063a4247400146105a0578063aa271e1a146105c057600080fd5b80638da5cb5b146104c157806391d14854146104df578063983b2d56146104ff578063986502751461051f57600080fd5b80635fc1964f116101a65780636ccbae5f116101755780636ccbae5f14610439578063715018a61461045957806371e2a6571461046e57806381c81d351461048e57806383e7f6ff146104a157600080fd5b80635fc1964f146103ae578063634486da146103ce5780636352211e146103e15780636a8be89e1461041957600080fd5b80632f2ff15d116101ed5780632f2ff15d146103035780633092afd51461032557806336568abe14610345578063423f6cef14610365578063572b6c051461038557600080fd5b806301ffc9a71461022a578063150b7a021461025f5780631bf7e13e14610298578063248a9ca3146102c557600080fd5b3661022557005b600080fd5b34801561023657600080fd5b5061024a6102453660046125f2565b610733565b60405190151581526020015b60405180910390f35b34801561026b57600080fd5b5061027f61027a366004612672565b610779565b6040516001600160e01b03199091168152602001610256565b3480156102a457600080fd5b506102b86102b33660046126e4565b6108cb565b60405161025691906127a4565b3480156102d157600080fd5b506102f56102e03660046127b7565b600090815260fb602052604090206001015490565b604051908152602001610256565b34801561030f57600080fd5b5061032361031e3660046127d0565b610997565b005b34801561033157600080fd5b50610323610340366004612800565b6109c1565b34801561035157600080fd5b506103236103603660046127d0565b6109d5565b34801561037157600080fd5b5061032361038036600461281d565b610a68565b34801561039157600080fd5b5061024a6103a0366004612800565b6001600160a01b0316301490565b3480156103ba57600080fd5b506103236103c936600461288f565b610bd9565b6103236103dc366004612800565b610c21565b3480156103ed57600080fd5b506104016103fc3660046127b7565b610ce4565b6040516001600160a01b039091168152602001610256565b34801561042557600080fd5b50610323610434366004612800565b610cef565b34801561044557600080fd5b506102f56104543660046127b7565b610d38565b34801561046557600080fd5b50610323610d7e565b34801561047a57600080fd5b5061032361048936600461288f565b610d92565b61032361049c366004612800565b610dda565b3480156104ad57600080fd5b506102f56104bc366004612934565b610e57565b3480156104cd57600080fd5b506097546001600160a01b0316610401565b3480156104eb57600080fd5b5061024a6104fa3660046127d0565b610efa565b34801561050b57600080fd5b5061032361051a366004612800565b610f25565b34801561052b57600080fd5b50610323610f36565b34801561054057600080fd5b506102f561054f366004612a5c565b610f50565b34801561056057600080fd5b506102f5600081565b34801561057557600080fd5b506102b86040518060400160405280600b81526020016a454e5320437573746f647960a81b81525081565b3480156105ac57600080fd5b5061024a6105bb3660046126e4565b610ffc565b3480156105cc57600080fd5b5061024a6105db366004612800565b61104f565b3480156105ec57600080fd5b506103236105fb366004612934565b611069565b34801561060c57600080fd5b5061027f61061b366004612b35565b611222565b34801561062c57600080fd5b5061032361063b366004612bf3565b6112db565b34801561064c57600080fd5b5061032361065b366004612c3e565b611485565b34801561066c57600080fd5b506102f56000805160206133f583398151915281565b34801561068e57600080fd5b5061032361069d3660046127d0565b611592565b3480156106ae57600080fd5b506103236106bd3660046127b7565b6115b7565b3480156106ce57600080fd5b5061027f6106dd366004612d20565b61162b565b3480156106ee57600080fd5b506103236106fd366004612800565b6116bc565b34801561070e57600080fd5b506102b860405180604001604052806005815260200164302e312e3360d81b81525081565b60006001600160e01b03198216630a85bd0160e11b148061076457506001600160e01b03198216630271189760e51b145b806107735750610773826116d8565b92915050565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004546000906001600160a01b0316806107b061170d565b6001600160a01b0316036108a957600080806107ce86880188612d9b565b9250925092506107dd8361171c565b6001600160a01b03841663b88d4fde30600080516020613415833981519152546040516001600160a01b03909116908c9061082390879030906000908b90602001612dfc565b6040516020818303038152906040526040518563ffffffff1660e01b81526004016108519493929190612e3c565b600060405180830381600087803b15801561086b57600080fd5b505af115801561087f573d6000803e3d6000fd5b5050505061089561088f8261174e565b846117d3565b50630a85bd0160e11b93506108c292505050565b6040516344e7d94960e01b815260040160405180910390fd5b95945050505050565b606060005a90506108dd858585610ffc565b6108fa57604051638baa579f60e01b815260040160405180910390fd5b61098c61090a6020870187612800565b3060408801358461091e60608b018b612e6f565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061185e92505050565b9150505b9392505050565b600082815260fb60205260409020600101546109b28161193f565b6109bc8383611950565b505050565b6109c96119d7565b6109d281611a50565b50565b6109dd61170d565b6001600160a01b0316816001600160a01b031614610a5a5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b610a648282611a68565b5050565b80610a7161170d565b6001600160a01b0316610a8382611aed565b6001600160a01b031614610ac55780610a9a61170d565b604051637ea58b1160e01b815260048101929092526001600160a01b03166024820152604401610a51565b610ace82611c03565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052600090610b22906060015b6040516020818303038152906040528051906020012090565b80546001600160a01b0319166001600160a01b0392909216919091179055600060008051602061341583398151915254604051637921219560e11b81523060048201526001600160a01b038681166024830152604482018690526001606483015260a06084830152600060a48301529091169150819063f242432a9060c401600060405180830381600087803b158015610bbb57600080fd5b505af1158015610bcf573d6000803e3d6000fd5b5050505050505050565b610be16119d7565b60005b8151811015610a6457610c0f828281518110610c0257610c02612eb5565b6020026020010151611a50565b80610c1981612ee1565b915050610be4565b610c2c6105db61170d565b610c485760405162461bcd60e51b8152600401610a5190612efa565b6001600160a01b038116610c9e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a51565b610ca781611c1c565b610caf610f36565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610a64573d6000803e3d6000fd5b600061077382611aed565b610cf76119d7565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c500480546001600160a01b0319166001600160a01b0392909216919091179055565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a838156020820152908101829052600090610d7790606001610b09565b5492915050565b610d866119d7565b610d906000611c34565b565b610d9a6119d7565b60005b8151811015610a6457610dc8828281518110610dbb57610dbb612eb5565b6020026020010151611c1c565b80610dd281612ee1565b915050610d9d565b610de56105db61170d565b610e015760405162461bcd60e51b8152600401610a5190612efa565b6001600160a01b038116610ca75760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a51565b6000805160206133d5833981519152546040516383e7f6ff60e01b81526000916001600160a01b031690829082906383e7f6ff90610e9d90899089908990600401612f58565b6040805180830381865afa158015610eb9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610edd9190612f7c565b60208101518151919250610ef091612fca565b9695505050505050565b600091825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610f2d6119d7565b6109d281611c1c565b610d906000805160206133f583398151915261036061170d565b6000805160206133d5833981519152546000906001600160a01b0316806365a69dcf8d85610f7e5730610f80565b8d5b8d8d8d8d8d8d8d6040518a63ffffffff1660e01b8152600401610fab9998979695949392919061306e565b602060405180830381865afa158015610fc8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fec91906130de565b9c9b505050505050505050505050565b600061104761100a856130f7565b3085858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611c8692505050565b949350505050565b60006107736000805160206133f583398151915283610efa565b6110746105db61170d565b6110905760405162461bcd60e51b8152600401610a5190612efa565b6002603354036110e25760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a51565b60026033556000805160206133d5833981519152546040516383e7f6ff60e01b81526001600160a01b039091169060009082906383e7f6ff9061112d90889088908890600401612f58565b6040805180830381865afa158015611149573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061116d9190612f7c565b6020810151815191925061118091612fca565b4710156111a05760405163050205f960e01b815260040160405180910390fd5b816001600160a01b031663acf1a841826020015183600001516111c39190612fca565b8787876040518563ffffffff1660e01b81526004016111e493929190612f58565b6000604051808303818588803b1580156111fd57600080fd5b505af1158015611211573d6000803e3d6000fd5b505060016033555050505050505050565b6000600080516020613415833981519152546001600160a01b031661124561170d565b6001600160a01b03161461126c576040516344e7d94960e01b815260040160405180910390fd5b600061127a83850185612800565b90506112858161171c565b60005b878110156112c4576112b28989838181106112a5576112a5612eb5565b90506020020135836117d3565b806112bc81612ee1565b915050611288565b5063bc197c8160e01b9a9950505050505050505050565b600054610100900460ff16158080156112fb5750600054600160ff909116105b806113155750303b158015611315575060005460ff166001145b6113785760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610a51565b6000805460ff19166001179055801561139b576000805461ff0019166101001790555b6000805160206133d583398151915280546001600160a01b038087166001600160a01b03199283161790925560008051602061341583398151915280548684169083161790557ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004805492851692909116919091179055611419611dc5565b611421611df3565b611429611df3565b611431611e1a565b611439611e51565b801561147f576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6114906105db61170d565b6114ac5760405162461bcd60e51b8152600401610a5190612efa565b6002603354036114fe5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a51565b600260338190555060006115478c8c8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061174e92505050565b905061155281611c03565b6115708c8c846115625730611564565b8c5b8c8c8c8c8c8c8c611e8a565b8161157f5761157f818b6117d3565b5050600160335550505050505050505050565b600082815260fb60205260409020600101546115ad8161193f565b6109bc8383611a68565b60006000805160206133d583398151915254604051631e29f97960e31b8152600481018490526001600160a01b039091169150819063f14fcbc890602401600060405180830381600087803b15801561160f57600080fd5b505af1158015611623573d6000803e3d6000fd5b505050505050565b6000600080516020613415833981519152546001600160a01b031661164e61170d565b6001600160a01b031614611675576040516344e7d94960e01b815260040160405180910390fd5b6001600160a01b038616156116a957600061169283850185612800565b905061169d8161171c565b6116a786826117d3565b505b5063f23a6e6160e01b9695505050505050565b6116c46119d7565b6116cd81611fd5565b6109d260008261204b565b60006001600160e01b03198216637965db0b60e01b148061077357506301ffc9a760e01b6001600160e01b0319831614610773565b6000611717612055565b905090565b6001600160a01b0381166109d25760405163b20f76e360e01b81526001600160a01b0382166004820152602401610a51565b60007f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae60001b826040516020016117859190613195565b604051602081830303815290604052805190602001206040516020016117b5929190918252602082015260400190565b60408051601f19818403018152919052805160209091012092915050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052819061181190606001610b09565b80546001600160a01b0319166001600160a01b039283161790556040519082169083907f45aa97e368889fb3527c1db60c59c2ae91e82f21778613449e46d4208c1c4b1290600090a35050565b606061186985612073565b600080876001600160a01b0316866118838b8a89896120d9565b6040516118909190613195565b60006040518083038160008787f1925050503d80600081146118ce576040519150601f19603f3d011682016040523d82523d6000602084013e6118d3565b606091505b5090925090506118e4603f876131b1565b5a116118f2576118f26131d3565b61193282826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c4544000000000000815250612109565b9998505050505050505050565b6109d28161194b61170d565b612142565b61195a8282610efa565b610a6457600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff1916600117905561199361170d565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6119df61170d565b6001600160a01b03166119fa6097546001600160a01b031690565b6001600160a01b031614610d905760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a51565b6109d26000805160206133f583398151915282611592565b611a728282610efa565b15610a6457600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff19169055611aa961170d565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101829052600090611b2c90606001610b09565b546001600160a01b0316905080611b595760405163124bad6360e31b815260048101839052602401610a51565b30600080516020613415833981519152546040516331a9108f60e11b8152600481018590526001600160a01b0390911690636352211e90602401602060405180830381865afa158015611bb0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bd491906131e9565b6001600160a01b031614611bfe576040516303b673fd60e21b815260048101839052602401610a51565b919050565b303303611c13576109d2816121a6565b6109d281612073565b6109d26000805160206133f58339815191528261204b565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015611ccd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cf191906130de565b90506000611d9f866060015180519060200120868860200151604051602001611d3f9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b9050818660200151148015610ef057508551610ef0906001600160a01b031682866121d0565b600054610100900460ff16611dec5760405162461bcd60e51b8152600401610a5190613206565b6001603355565b600054610100900460ff16610d905760405162461bcd60e51b8152600401610a5190613206565b600054610100900460ff16611e415760405162461bcd60e51b8152600401610a5190613206565b610d90611e4c61170d565b611c34565b600054610100900460ff16611e785760405162461bcd60e51b8152600401610a5190613206565b610d906000611e8561170d565b61204b565b6000805160206133d5833981519152546040516383e7f6ff60e01b81526001600160a01b039091169060009082906383e7f6ff90611ed0908f908f908e90600401612f58565b6040805180830381865afa158015611eec573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f109190612f7c565b60208101518151919250611f2391612fca565b471015611f435760405163050205f960e01b815260040160405180910390fd5b816001600160a01b03166374694a2b82602001518360000151611f669190612fca565b8e8e8e8e8e8e8e8e8e8e6040518c63ffffffff1660e01b8152600401611f959a99989796959493929190613251565b6000604051808303818588803b158015611fae57600080fd5b505af1158015611fc2573d6000803e3d6000fd5b5050505050505050505050505050505050565b611fdd6119d7565b6001600160a01b0381166120425760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610a51565b6109d281611c34565b610a648282611950565b600030330361206b575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290526000906060016040516020818303038152906040528051906020012090506120c88190565b546120d4906001612fca565b905550565b60608285856040516020016120f0939291906132c3565b6040516020818303038152906040529050949350505050565b60608315612118575081610990565b8251156121285782518084602001fd5b8160405162461bcd60e51b8152600401610a5191906127a4565b61214c8282610efa565b610a6457612164816001600160a01b03166014612312565b61216f836020612312565b604051602001612180929190613302565b60408051601f198184030181529082905262461bcd60e51b8252610a51916004016127a4565b6121ae6124ad565b81146109d257604051635637b6af60e11b815260048101829052602401610a51565b60008060006121df85856124c0565b909250905060008160048111156121f8576121f8613377565b1480156122165750856001600160a01b0316826001600160a01b0316145b1561222657600192505050610990565b600080876001600160a01b0316631626ba7e60e01b888860405160240161224e92919061338d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161228c9190613195565b600060405180830381855afa9150503d80600081146122c7576040519150601f19603f3d011682016040523d82523d6000602084013e6122cc565b606091505b50915091508180156122df575080516020145b801561230657508051630b135d3f60e11b9061230490830160209081019084016130de565b145b98975050505050505050565b606060006123218360026133a6565b61232c906002612fca565b6001600160401b0381111561234357612343612849565b6040519080825280601f01601f19166020018201604052801561236d576020820181803683370190505b509050600360fc1b8160008151811061238857612388612eb5565b60200101906001600160f81b031916908160001a905350600f60fb1b816001815181106123b7576123b7612eb5565b60200101906001600160f81b031916908160001a90535060006123db8460026133a6565b6123e6906001612fca565b90505b600181111561245e576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061241a5761241a612eb5565b1a60f81b82828151811061243057612430612eb5565b60200101906001600160f81b031916908160001a90535060049490941c93612457816133bd565b90506123e9565b5083156109905760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610a51565b60003033036120705750601f1936013590565b60008082516041036124f65760208301516040840151606085015160001a6124ea87828585612505565b945094505050506124fe565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561253c57506000905060036125e9565b8460ff16601b1415801561255457508460ff16601c14155b1561256557506000905060046125e9565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156125b9573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166125e2576000600192509250506125e9565b9150600090505b94509492505050565b60006020828403121561260457600080fd5b81356001600160e01b03198116811461099057600080fd5b6001600160a01b03811681146109d257600080fd5b60008083601f84011261264357600080fd5b5081356001600160401b0381111561265a57600080fd5b6020830191508360208285010111156124fe57600080fd5b60008060008060006080868803121561268a57600080fd5b85356126958161261c565b945060208601356126a58161261c565b93506040860135925060608601356001600160401b038111156126c757600080fd5b6126d388828901612631565b969995985093965092949392505050565b6000806000604084860312156126f957600080fd5b83356001600160401b038082111561271057600080fd5b908501906080828803121561272457600080fd5b9093506020850135908082111561273a57600080fd5b5061274786828701612631565b9497909650939450505050565b60005b8381101561276f578181015183820152602001612757565b50506000910152565b60008151808452612790816020860160208601612754565b601f01601f19169290920160200192915050565b6020815260006109906020830184612778565b6000602082840312156127c957600080fd5b5035919050565b600080604083850312156127e357600080fd5b8235915060208301356127f58161261c565b809150509250929050565b60006020828403121561281257600080fd5b81356109908161261c565b6000806040838503121561283057600080fd5b823561283b8161261c565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561288757612887612849565b604052919050565b600060208083850312156128a257600080fd5b82356001600160401b03808211156128b957600080fd5b818501915085601f8301126128cd57600080fd5b8135818111156128df576128df612849565b8060051b91506128f084830161285f565b818152918301840191848101908884111561290a57600080fd5b938501935b8385101561230657843592506129248361261c565b828252938501939085019061290f565b60008060006040848603121561294957600080fd5b83356001600160401b0381111561295f57600080fd5b61296b86828701612631565b909790965060209590950135949350505050565b60006001600160401b0383111561299857612998612849565b6129ab601f8401601f191660200161285f565b90508281528383830111156129bf57600080fd5b828260208301376000602084830101529392505050565b600082601f8301126129e757600080fd5b6109908383356020850161297f565b60008083601f840112612a0857600080fd5b5081356001600160401b03811115612a1f57600080fd5b6020830191508360208260051b85010111156124fe57600080fd5b80358015158114611bfe57600080fd5b803561ffff81168114611bfe57600080fd5b6000806000806000806000806000806101208b8d031215612a7c57600080fd5b8a356001600160401b0380821115612a9357600080fd5b612a9f8e838f016129d6565b9b5060208d01359150612ab18261261c565b90995060408c0135985060608c0135975060808c013590612ad18261261c565b90965060a08c01359080821115612ae757600080fd5b50612af48d828e016129f6565b9096509450612b07905060c08c01612a3a565b9250612b1560e08c01612a4a565b9150612b246101008c01612a3a565b90509295989b9194979a5092959850565b60008060008060008060008060a0898b031215612b5157600080fd5b8835612b5c8161261c565b97506020890135612b6c8161261c565b965060408901356001600160401b0380821115612b8857600080fd5b612b948c838d016129f6565b909850965060608b0135915080821115612bad57600080fd5b612bb98c838d016129f6565b909650945060808b0135915080821115612bd257600080fd5b50612bdf8b828c01612631565b999c989b5096995094979396929594505050565b600080600060608486031215612c0857600080fd5b8335612c138161261c565b92506020840135612c238161261c565b91506040840135612c338161261c565b809150509250925092565b60008060008060008060008060008060006101208c8e031215612c6057600080fd5b6001600160401b03808d351115612c7657600080fd5b612c838e8e358f01612631565b909c509a50612c9560208e013561261c565b60208d0135995060408d0135985060608d01359750612cb760808e013561261c565b60808d013596508060a08e01351115612ccf57600080fd5b50612ce08d60a08e01358e016129f6565b9095509350612cf160c08d01612a3a565b9250612cff60e08d01612a4a565b9150612d0e6101008d01612a3a565b90509295989b509295989b9093969950565b60008060008060008060a08789031215612d3957600080fd5b8635612d448161261c565b95506020870135612d548161261c565b9450604087013593506060870135925060808701356001600160401b03811115612d7d57600080fd5b612d8989828a01612631565b979a9699509497509295939492505050565b600080600060608486031215612db057600080fd5b8335612dbb8161261c565b92506020840135612dcb8161261c565b915060408401356001600160401b03811115612de657600080fd5b612df2868287016129d6565b9150509250925092565b608081526000612e0f6080830187612778565b6001600160a01b03958616602084015261ffff949094166040830152509216606090920191909152919050565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090610ef090830184612778565b6000808335601e19843603018112612e8657600080fd5b8301803591506001600160401b03821115612ea057600080fd5b6020019150368190038213156124fe57600080fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201612ef357612ef3612ecb565b5060010190565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b604081526000612f6c604083018587612f2f565b9050826020830152949350505050565b600060408284031215612f8e57600080fd5b604051604081018181106001600160401b0382111715612fb057612fb0612849565b604052825181526020928301519281019290925250919050565b8082018082111561077357610773612ecb565b81835260006020808501808196508560051b810191508460005b878110156130615782840389528135601e1988360301811261301857600080fd5b870185810190356001600160401b0381111561303357600080fd5b80360382131561304257600080fd5b61304d868284612f2f565b9a87019a9550505090840190600101612ff7565b5091979650505050505050565b60006101008083526130828184018d612778565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a085015290506130bc818789612fdd565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b6000602082840312156130f057600080fd5b5051919050565b60006080823603121561310957600080fd5b604051608081016001600160401b03828210818311171561312c5761312c612849565b816040528435915061313d8261261c565b8183526020850135602084015260408501356040840152606085013591508082111561316857600080fd5b50830136601f82011261317a57600080fd5b6131893682356020840161297f565b60608301525092915050565b600082516131a7818460208701612754565b9190910192915050565b6000826131ce57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b6000602082840312156131fb57600080fd5b81516109908161261c565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60006101008083526132668184018d8f612f2f565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a085015290506132a0818789612fdd565b94151560c0840152505061ffff9190911660e09091015298975050505050505050565b600084516132d5818460208901612754565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081526000835161333a816017850160208801612754565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835161336b816028840160208801612754565b01602801949350505050565b634e487b7160e01b600052602160045260246000fd5b8281526040602082015260006110476040830184612778565b808202811582820484141761077357610773612ecb565b6000816133cc576133cc612ecb565b50600019019056fe412386de53449251cbf7ce1f4c6a038bf9c0746e62d331b08ef0c3fa7d0ab6729f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a660793a5062d506d35cc8f1beda67ee5028c16bfcd9c923d5bfc439c04bd929b1a164736f6c6343000811000a","storage":{"0x0":"0xff"}},"0xc58206842e4030a3b2cabc78780ae7635173c533":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106102325760003560e01c80637c69eae211610130578063b5466669116100b8578063d284d97a1161007c578063d284d97a14610d4e578063d8d3cc6e14610dbc578063e67ca8a314610e3f578063e985e9c514610e5c578063ebf0c71714610e8a57610232565b8063b5466669146109ce578063b88d4fde14610a51578063c29b52f914610b15578063c87b56dd14610c5e578063ce9fb82b14610c7b57610232565b8063a22cb465116100ff578063a22cb4651461090b578063a7fc7a0714610939578063ab3b87fe1461095f578063b3f9e4cb1461098b578063b429afeb146109a857610232565b80637c69eae21461076457806395d89b41146107e75780639d743989146107ef5780639e5be9a51461087d57610232565b806342842e0e116101be5780635cbe1112116101825780635cbe11121461061d5780636352211e1461069257806366ac3b68146106af57806368b62d32146106b757806370a082311461073e57610232565b806342842e0e146104ed57806342966c6814610523578063430c208114610540578063538361a71461056c57806357aac5741461058f57610232565b8063081812fc11610205578063081812fc146103fa578063095ea7b3146104335780632392c1891461045f57806323b872dd1461048b5780632525d06a146104c157610232565b806301ffc9a71461023757806302759c37146102725780630467e014146102aa57806306fdde031461037d575b600080fd5b61025e6004803603602081101561024d57600080fd5b50356001600160e01b031916610e92565b604080519115158252519081900360200190f35b6102a86004803603606081101561028857600080fd5b506001600160a01b03813581169160208101359091169060400135610eb1565b005b6102a8600480360360808110156102c057600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156102ef57600080fd5b82018360208201111561030157600080fd5b803590602001918460018302840111600160201b8311171561032257600080fd5b919390929091602081019035600160201b81111561033f57600080fd5b82018360208201111561035157600080fd5b803590602001918460018302840111600160201b8311171561037257600080fd5b509092509050610ed3565b610385610f62565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103bf5781810151838201526020016103a7565b50505050905090810190601f1680156103ec5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6104176004803603602081101561041057600080fd5b5035610f84565b604080516001600160a01b039092168252519081900360200190f35b6102a86004803603604081101561044957600080fd5b506001600160a01b038135169060200135610fe6565b6102a86004803603604081101561047557600080fd5b506001600160a01b0381351690602001356110f7565b6102a8600480360360608110156104a157600080fd5b506001600160a01b03813581169160208101359091169060400135611115565b6102a8600480360360408110156104d757600080fd5b506001600160a01b03813516906020013561115a565b6102a86004803603606081101561050357600080fd5b506001600160a01b0381358116916020810135909116906040013561117a565b6102a86004803603602081101561053957600080fd5b5035611195565b61025e6004803603604081101561055657600080fd5b506001600160a01b0381351690602001356111e6565b6102a86004803603604081101561058257600080fd5b50803590602001356111f9565b6102a8600480360360808110156105a557600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156105df57600080fd5b8201836020820111156105f157600080fd5b803590602001918460018302840111600160201b8311171561061257600080fd5b50909250905061124f565b6102a86004803603604081101561063357600080fd5b81359190810190604081016020820135600160201b81111561065457600080fd5b82018360208201111561066657600080fd5b803590602001918460018302840111600160201b8311171561068757600080fd5b5090925090506112be565b610417600480360360208110156106a857600080fd5b5035611320565b6102a861137a565b61072c600480360360408110156106cd57600080fd5b81359190810190604081016020820135600160201b8111156106ee57600080fd5b82018360208201111561070057600080fd5b803590602001918460018302840111600160201b8311171561072157600080fd5b509092509050611385565b60408051918252519081900360200190f35b61072c6004803603602081101561075457600080fd5b50356001600160a01b03166113cf565b6102a86004803603606081101561077a57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156107a957600080fd5b8201836020820111156107bb57600080fd5b803590602001918460018302840111600160201b831117156107dc57600080fd5b509092509050611437565b61038561149a565b6102a86004803603608081101561080557600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561083f57600080fd5b82018360208201111561085157600080fd5b803590602001918460018302840111600160201b8311171561087257600080fd5b5090925090506114b6565b6102a86004803603608081101561089357600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156108cd57600080fd5b8201836020820111156108df57600080fd5b803590602001918460018302840111600160201b8311171561090057600080fd5b509092509050611506565b6102a86004803603604081101561092157600080fd5b506001600160a01b0381351690602001351515611564565b6102a86004803603602081101561094f57600080fd5b50356001600160a01b0316611630565b6102a86004803603604081101561097557600080fd5b506001600160a01b03813516906020013561164b565b610417600480360360208110156109a157600080fd5b5035611672565b61025e600480360360208110156109be57600080fd5b50356001600160a01b0316611694565b6102a8600480360360608110156109e457600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610a1357600080fd5b820183602082011115610a2557600080fd5b803590602001918460018302840111600160201b83111715610a4657600080fd5b5090925090506116a7565b6102a860048036036080811015610a6757600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b811115610aa157600080fd5b820183602082011115610ab357600080fd5b803590602001918460018302840111600160201b83111715610ad457600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506116fa945050505050565b6102a8600480360360a0811015610b2b57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b811115610b6557600080fd5b820183602082011115610b7757600080fd5b803590602001918460018302840111600160201b83111715610b9857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b811115610bea57600080fd5b820183602082011115610bfc57600080fd5b803590602001918460018302840111600160201b83111715610c1d57600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061174c945050505050565b61038560048036036020811015610c7457600080fd5b5035611797565b6102a860048036036080811015610c9157600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610cc057600080fd5b820183602082011115610cd257600080fd5b803590602001918460018302840111600160201b83111715610cf357600080fd5b919390929091602081019035600160201b811115610d1057600080fd5b820183602082011115610d2257600080fd5b803590602001918460018302840111600160201b83111715610d4357600080fd5b509092509050611892565b6102a860048036036020811015610d6457600080fd5b810190602081018135600160201b811115610d7e57600080fd5b820183602082011115610d9057600080fd5b803590602001918460018302840111600160201b83111715610db157600080fd5b50909250905061191b565b6102a860048036036060811015610dd257600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610e0157600080fd5b820183602082011115610e1357600080fd5b803590602001918460018302840111600160201b83111715610e3457600080fd5b50909250905061199e565b6102a860048036036020811015610e5557600080fd5b50356119f3565b61025e60048036036040811015610e7257600080fd5b506001600160a01b0381358116916020013516611a05565b61072c611a33565b6001600160e01b03191660009081526020819052604090205460ff1690565b610eba33611694565b610ec357600080fd5b610ece838383611a57565b505050565b610edc33611694565b610ee557600080fd5b610f5a868686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8a018190048102820181019092528881529250889150879081908401838280828437600092019190915250611a9f92505050565b505050505050565b6040805180820190915260078152662e63727970746f60c81b60208201525b90565b6000610f8f82611ac9565b610fca5760405162461bcd60e51b815260040180806020018281038252602c815260200180612848602c913960400191505060405180910390fd5b506000908152600360205260409020546001600160a01b031690565b6000610ff182611320565b9050806001600160a01b0316836001600160a01b031614156110445760405162461bcd60e51b81526004018080602001828103825260218152602001806128bf6021913960400191505060405180910390fd5b336001600160a01b038216148061106057506110608133611a05565b61109b5760405162461bcd60e51b815260040180806020018281038252603881526020018061279c6038913960400191505060405180910390fd5b60008281526003602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b806111023382611ae6565b61110b57600080fd5b610ece8383611b82565b61111f3382611ae6565b610ec35760405162461bcd60e51b81526004018080602001828103825260318152602001806128e06031913960400191505060405180910390fd5b61116333611694565b61116c57600080fd5b6111768282611b82565b5050565b610ece838383604051806020016040528060008152506116fa565b61119f3382611ae6565b6111da5760405162461bcd60e51b81526004018080602001828103825260308152602001806129366030913960400191505060405180910390fd5b6111e381611bf8565b50565b60006111f28383611ae6565b9392505050565b6000828152600860205260409020546001600160a01b0316331461121c57600080fd5b6040518290829033907ff10fc780c78f994a214c79a2ae8d8b7bfe7cc3f0f935a8f05a29525e71d7f12790600090a45050565b61125833611694565b61126157600080fd5b61126c858585611a57565b6112ae85858585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611c7992505050565b6112b757600080fd5b5050505050565b826112c93382611ae6565b6112d257600080fd5b61131a6113158585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b611bf8565b50505050565b6000818152600260205260408120546001600160a01b0316806113745760405162461bcd60e51b81526004018080602001828103825260298152602001806127fe6029913960400191505060405180910390fd5b92915050565b61138333611e64565b565b60006113c78484848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b949350505050565b60006001600160a01b0382166114165760405162461bcd60e51b815260040180806020018281038252602a8152602001806127d4602a913960400191505060405180910390fd5b6001600160a01b038216600090815260046020526040902061137490611e75565b826114423382611ae6565b61144b57600080fd5b6112b7858585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250611a9f915050565b604080518082019091526002815261155160f21b602082015290565b6112b785858585858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201829052506040805160208101909152908152925061174c915050565b826115113382611ae6565b61151a57600080fd5b610f5a868661155f8787878080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b611a57565b6001600160a01b0382163314156115c2576040805162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604482015290519081900360640190fd5b3360008181526005602090815260408083206001600160a01b03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b61163933611694565b61164257600080fd5b6111e381611e79565b806116563382611ae6565b61165f57600080fd5b610ece61166b83611320565b8484611e8a565b6000818152600860205260408120546001600160a01b03168061137457600080fd5b600061137460018363ffffffff611fce16565b6116b033611694565b6116b957600080fd5b61131a848484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061203592505050565b611705848484611115565b61171184848484611c79565b61131a5760405162461bcd60e51b815260040180806020018281038252603281526020018061271a6032913960400191505060405180910390fd5b826117573382611ae6565b61176057600080fd5b600061176c8585611dac565b9050611779878783611a57565b61178587878386611c79565b61178e57600080fd5b50505050505050565b60606117a282611ac9565b6117ab57600080fd5b600760066000848152602001908152602001600020604051602001808380546001816001161561010002031660029004801561181e5780601f106117fc57610100808354040283529182019161181e565b820191906000526020600020905b81548152906001019060200180831161180a575b5050828054600181600116156101000203166002900480156118775780601f10611855576101008083540402835291820191611877565b820191906000526020600020905b815481529060010190602001808311611863575b505060408051601f1981840301815291905295945050505050565b8461189d3382611ae6565b6118a657600080fd5b61178e878787878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b018190048102820181019092528981529250899150889081908401838280828437600092019190915250611a9f92505050565b61192433611694565b61192d57600080fd5b611939600783836125cf565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b828260405180806020018281038252848482818152602001925080828437600083820152604051601f909101601f19169092018290039550909350505050a15050565b826119a93382611ae6565b6119b257600080fd5b6112b7858585858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061203592505050565b6119fc33611694565b6111da57600080fd5b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b7f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f90565b611a62838383611e8a565b6000818152600860205260409020546001600160a01b031615610ece57600090815260086020526040902080546001600160a01b03191690555050565b611aaa848484612035565b611ac0600085611aba8686611dac565b84611c79565b61131a57600080fd5b6000908152600260205260409020546001600160a01b0316151590565b6000611af182611ac9565b611b2c5760405162461bcd60e51b815260040180806020018281038252602c815260200180612770602c913960400191505060405180910390fd5b6000611b3783611320565b9050806001600160a01b0316846001600160a01b03161480611b725750836001600160a01b0316611b6784610f84565b6001600160a01b0316145b806113c757506113c78185611a05565b611b8b81611ac9565b611b9457600080fd5b6040516001600160a01b0383169082907fb1b34e6d89e1c584527d447f4b29ffad55635a37edeeb564939a6483401b31a590600090a3600090815260086020526040902080546001600160a01b0319166001600160a01b0392909216919091179055565b611c018161220f565b6000818152600860205260409020546001600160a01b031615611c3b57600081815260086020526040902080546001600160a01b03191690555b60008181526006602052604090205460026000196101006001841615020190911604156111e35760008181526006602052604081206111e39161264d565b6000611c8d846001600160a01b0316612221565b611c99575060016113c7565b604051630a85bd0160e11b815233600482018181526001600160a01b03888116602485015260448401879052608060648501908152865160848601528651600095928a169463150b7a029490938c938b938b939260a4019060208501908083838e5b83811015611d13578181015183820152602001611cfb565b50505050905090810190601f168015611d405780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015611d6257600080fd5b505af1158015611d76573d6000803e3d6000fd5b505050506040513d6020811015611d8c57600080fd5b50516001600160e01b031916630a85bd0160e11b14915050949350505050565b6000815160001415611dbd57600080fd5b82826040516020018082805190602001908083835b60208310611df15780518252601f199092019160209182019101611dd2565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040528051906020012060405160200180838152602001828152602001925050506040516020818303038152906040528051906020012060001c905092915050565b6111e360018263ffffffff61222716565b5490565b6111e360018263ffffffff61228e16565b826001600160a01b0316611e9d82611320565b6001600160a01b031614611ee25760405162461bcd60e51b81526004018080602001828103825260298152602001806128966029913960400191505060405180910390fd5b6001600160a01b038216611f275760405162461bcd60e51b815260040180806020018281038252602481526020018061274c6024913960400191505060405180910390fd5b611f308161230f565b6001600160a01b0383166000908152600460205260409020611f519061234a565b6001600160a01b0382166000908152600460205260409020611f7290612361565b60008181526002602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60006001600160a01b0382166120155760405162461bcd60e51b81526004018080602001828103825260228152602001806128746022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b60006120418383611dac565b905061204d848261236a565b815161205857600080fd5b61206181611ac9565b61206a57600080fd5b606082600660008681526020019081526020016000206040516020018083805190602001908083835b602083106120b25780518252601f199092019160209182019101612093565b6001836020036101000a03801982511681845116808217855250505050505090500180601760f91b815250600101828054600181600116156101000203166002900480156121375780601f10612115576101008083540402835291820191612137565b820191906000526020600020905b815481529060010190602001808311612123575b505060408051601f19818403018152918152600087815260066020908152919020825192965061216d9550935085019150612691565b50817fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952826040518080602001828103825283818151815260200191508051906020019080838360005b838110156121ce5781810151838201526020016121b6565b50505050905090810190601f1680156121fb5780820380516001836020036101000a031916815260200191505b509250505060405180910390a25050505050565b6111e361221b82611320565b8261249b565b3b151590565b6122318282611fce565b61226c5760405162461bcd60e51b81526004018080602001828103825260218152602001806128276021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff19169055565b6122988282611fce565b156122ea576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b6000818152600360205260409020546001600160a01b0316156111e357600090815260036020526040902080546001600160a01b0319169055565b805461235d90600163ffffffff61257216565b9055565b80546001019055565b6001600160a01b0382166123c5576040805162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f2061646472657373604482015290519081900360640190fd5b6123ce81611ac9565b15612420576040805162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000604482015290519081900360640190fd5b600081815260026020908152604080832080546001600160a01b0319166001600160a01b03871690811790915583526004909152902061245f90612361565b60405181906001600160a01b038416906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b816001600160a01b03166124ae82611320565b6001600160a01b0316146124f35760405162461bcd60e51b81526004018080602001828103825260258152602001806129116025913960400191505060405180910390fd5b6124fc8161230f565b6001600160a01b038216600090815260046020526040902061251d9061234a565b60008181526002602052604080822080546001600160a01b0319169055518291906001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6000828211156125c9576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106126105782800160ff1982351617855561263d565b8280016001018555821561263d579182015b8281111561263d578235825591602001919060010190612622565b506126499291506126ff565b5090565b50805460018160011615610100020316600290046000825580601f1061267357506111e3565b601f0160209004906000526020600020908101906111e391906126ff565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106126d257805160ff191683800117855561263d565b8280016001018555821561263d579182015b8281111561263d5782518255916020019190600101906126e4565b610f8191905b80821115612649576000815560010161270556fe4552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c654552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e526f6c65733a206163636f756e7420697320746865207a65726f20616464726573734552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f7665644552433732313a206275726e206f6620746f6b656e2074686174206973206e6f74206f776e4552433732314275726e61626c653a2063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564a265627a7a72315820fb6a1b26cc352dbb05e6627fd530bbb44114ac3a349f30d1f071136c656d20dc64736f6c634300050c0032","storage":{"0x7":"0x68747470733a2f2f6578616d706c652e636f6d2f000000000000000000000028","0xbdf39e9e65b2355b1b0b06df799c09159f0ab90f06a9bb2153f5de7d9b0ea81":"0x1","0x1a306d3e9bf29128dee78d8d16c9f378a11bbdf917a9caf986fc6e60846e37e7":"0x63727970746f000000000000000000000000000000000000000000000000000c","0x42c63635470f1fb1d6d4b6441c413cb435b1ebb6fedd1896dd5e25d1399147dd":"0x1","0x605d7a0bb2b20c4004d356eb969ff104dcca62360aa356247072f5e0df6472e3":"0xdead","0x67be87c3ff9960ca1e9cfac5cab2ff4747269cf9ed20c9b7306235ac35a491c5":"0x1","0x70f464f95f9ab7aba03264fd4cac1711d774d3703ce74217180264d4efc2105f":"0x1","0x76a72f26a108e6f3f687141f5f42d21d65857c03cb1b01aa1284f9a9ccd085da":"0x1","0x9562381dfbc2d8b8b66e765249f330164b73e329e5f01670660643571d1974df":"0x1","0x9f23d2403fb64167582d316b1bc5b35a6ed48524341ab24947c71df77304b29e":"0x1","0xf7815fccbf112960a73756e185887fedcb9fc64ca0a16cc5923b7960ed780800":"0x1"}},"0xc965345edac823d56812cd20a10316233916a605":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101c6575f3560e01c806395d89b41116100fe578063c87b56dd1161009e578063e985e9c51161006e578063e985e9c5146103d4578063f2fde38b1461040f578063f6a74ed714610422578063fca247ac14610435575f80fd5b8063c87b56dd14610377578063d6e4fa861461038a578063da8c229e146103a9578063ddf7fcb0146103cb575f80fd5b8063a7fc7a07116100d9578063a7fc7a0714610334578063b88d4fde14610347578063c1a287e21461035a578063c475abff14610364575f80fd5b806395d89b411461030657806396e494e81461030e578063a22cb46514610321575f80fd5b80633f15457f116101695780636352211e116101445780636352211e146102c757806370a08231146102da578063715018a6146102ed5780638da5cb5b146102f5575f80fd5b80633f15457f1461028e57806342842e0e146102a15780634e543b26146102b4575f80fd5b8063095ea7b3116101a4578063095ea7b3146102325780630e297b451461024757806323b872dd1461026857806328ed4f6c1461027b575f80fd5b806301ffc9a7146101ca57806306fdde03146101f2578063081812fc14610207575b5f80fd5b6101dd6101d83660046117dd565b610448565b60405190151581526020015b60405180910390f35b6101fa610499565b6040516101e99190611845565b61021a610215366004611857565b610528565b6040516001600160a01b0390911681526020016101e9565b610245610240366004611882565b61054d565b005b61025a6102553660046118ac565b610666565b6040519081526020016101e9565b6102456102763660046118e1565b61067b565b61024561028936600461190e565b6106ac565b60085461021a906001600160a01b031681565b6102456102af3660046118e1565b6107be565b6102456102c236600461193c565b6107d8565b61021a6102d5366004611857565b610848565b61025a6102e836600461193c565b610869565b6102456108ed565b6006546001600160a01b031661021a565b6101fa610900565b6101dd61031c366004611857565b61090f565b61024561032f366004611957565b610934565b61024561034236600461193c565b610943565b61024561035536600461199b565b610996565b61025a6276a70081565b61025a610372366004611a74565b6109ce565b6101fa610385366004611857565b610b52565b61025a610398366004611857565b5f9081526007602052604090205490565b6101dd6103b736600461193c565b600a6020525f908152604090205460ff1681565b61025a60095481565b6101dd6103e2366004611a94565b6001600160a01b039182165f90815260056020908152604080832093909416825291909152205460ff1690565b61024561041d36600461193c565b610bc2565b61024561043036600461193c565b610c3b565b61025a6104433660046118ac565b610c8b565b5f6001600160e01b031982166301ffc9a760e01b148061047857506001600160e01b031982166380ac58cd60e01b145b8061049357506001600160e01b03198216630a3b53db60e21b145b92915050565b60605f80546104a790611ac0565b80601f01602080910402602001604051908101604052809291908181526020018280546104d390611ac0565b801561051e5780601f106104f55761010080835404028352916020019161051e565b820191905f5260205f20905b81548152906001019060200180831161050157829003601f168201915b5050505050905090565b5f61053282610c99565b505f908152600460205260409020546001600160a01b031690565b5f61055782610cf7565b9050806001600160a01b0316836001600160a01b0316036105c95760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084015b60405180910390fd5b336001600160a01b03821614806105e557506105e581336103e2565b6106575760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016105c0565b6106618383610d56565b505050565b5f6106738484845f610dc3565b949350505050565b6106853382610fc7565b6106a15760405162461bcd60e51b81526004016105c090611af8565b610661838383611040565b6008546009546040516302571be360e01b8152600481019190915230916001600160a01b0316906302571be390602401602060405180830381865afa1580156106f7573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061071b9190611b45565b6001600160a01b03161461072d575f80fd5b6107373383610fc7565b61073f575f80fd5b6008546009546040516306ab592360e01b81526004810191909152602481018490526001600160a01b038381166044830152909116906306ab5923906064016020604051808303815f875af115801561079a573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106619190611b60565b61066183838360405180602001604052805f815250610996565b6107e06111a2565b600854600954604051630c4b7b8560e11b815260048101919091526001600160a01b03838116602483015290911690631896f70a906044015f604051808303815f87803b15801561082f575f80fd5b505af1158015610841573d5f803e3d5ffd5b5050505050565b5f818152600760205260408120544210610860575f80fd5b61049382610cf7565b5f6001600160a01b0382166108d25760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b60648201526084016105c0565b506001600160a01b03165f9081526003602052604090205490565b6108f56111a2565b6108fe5f6111fc565b565b6060600180546104a790611ac0565b5f81815260076020526040812054429061092d906276a70090611b77565b1092915050565b61093f33838361124d565b5050565b61094b6111a2565b6001600160a01b0381165f818152600a6020526040808220805460ff19166001179055517f0a8bb31534c0ed46f380cb867bd5c803a189ced9a764e30b3a4991a9901d74749190a250565b6109a03383610fc7565b6109bc5760405162461bcd60e51b81526004016105c090611af8565b6109c88484848461131a565b50505050565b6008546009546040516302571be360e01b815260048101919091525f9130916001600160a01b03909116906302571be390602401602060405180830381865afa158015610a1d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a419190611b45565b6001600160a01b031614610a53575f80fd5b335f908152600a602052604090205460ff16610a6d575f80fd5b5f838152600760205260409020544290610a8b906276a70090611b77565b1015610a95575f80fd5b610aa26276a70083611b77565b5f848152600760205260409020546276a70090610ac0908590611b77565b610aca9190611b77565b11610ad3575f80fd5b5f8381526007602052604081208054849290610af0908490611b77565b90915550505f838152600760205260409081902054905184917f9b87a00e30f1ac65d898f070f8a3488fe60517182d0a2098e1b4b93a54aa9bd691610b3791815260200190565b60405180910390a250505f9081526007602052604090205490565b6060610b5d82610c99565b5f610b7260408051602081019091525f815290565b90505f815111610b905760405180602001604052805f815250610bbb565b80610b9a8461134d565b604051602001610bab929190611b96565b6040516020818303038152906040525b9392505050565b610bca6111a2565b6001600160a01b038116610c2f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016105c0565b610c38816111fc565b50565b610c436111a2565b6001600160a01b0381165f818152600a6020526040808220805460ff19169055517f33d83959be2573f5453b12eb9d43b3499bc57d96bd2f067ba44803c859e811139190a250565b5f6106738484846001610dc3565b5f818152600260205260409020546001600160a01b0316610c385760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105c0565b5f818152600260205260408120546001600160a01b0316806104935760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105c0565b5f81815260046020526040902080546001600160a01b0319166001600160a01b0384169081179091558190610d8a82610cf7565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6008546009546040516302571be360e01b815260048101919091525f9130916001600160a01b03909116906302571be390602401602060405180830381865afa158015610e12573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e369190611b45565b6001600160a01b031614610e48575f80fd5b335f908152600a602052604090205460ff16610e62575f80fd5b610e6b8561090f565b610e73575f80fd5b610e806276a70042611b77565b6276a700610e8e8542611b77565b610e989190611b77565b11610ea1575f80fd5b610eab8342611b77565b5f868152600760209081526040808320939093556002905220546001600160a01b031615610edc57610edc856113dd565b610ee6848661146f565b8115610f6d576008546009546040516306ab592360e01b81526004810191909152602481018790526001600160a01b038681166044830152909116906306ab5923906064016020604051808303815f875af1158015610f47573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f6b9190611b60565b505b6001600160a01b038416857fb3d987963d01b2f68493b4bdb130988f157ea43070d4ad840fee0466ed9370d9610fa38642611b77565b60405190815260200160405180910390a3610fbe8342611b77565b95945050505050565b5f80610fd283610848565b9050806001600160a01b0316846001600160a01b0316148061100d5750836001600160a01b031661100284610528565b6001600160a01b0316145b8061067357506001600160a01b038082165f9081526005602090815260408083209388168352929052205460ff16610673565b826001600160a01b031661105382610cf7565b6001600160a01b0316146110795760405162461bcd60e51b81526004016105c090611bc4565b6001600160a01b0382166110db5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b60648201526084016105c0565b826001600160a01b03166110ee82610cf7565b6001600160a01b0316146111145760405162461bcd60e51b81526004016105c090611bc4565b5f81815260046020908152604080832080546001600160a01b03199081169091556001600160a01b038781168086526003855283862080545f1901905590871680865283862080546001019055868652600290945282852080549092168417909155905184937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6006546001600160a01b031633146108fe5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016105c0565b600680546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b816001600160a01b0316836001600160a01b0316036112ae5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c65720000000000000060448201526064016105c0565b6001600160a01b038381165f81815260056020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b611325848484611040565b611331848484846115f7565b6109c85760405162461bcd60e51b81526004016105c090611c09565b60605f611359836116f1565b60010190505f8167ffffffffffffffff81111561137857611378611987565b6040519080825280601f01601f1916602001820160405280156113a2576020820181803683370190505b5090508181016020015b5f19016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a85049450846113ac57509392505050565b5f6113e782610cf7565b90506113f282610cf7565b5f83815260046020908152604080832080546001600160a01b03199081169091556001600160a01b0385168085526003845282852080545f190190558785526002909352818420805490911690555192935084927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6001600160a01b0382166114c55760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f206164647265737360448201526064016105c0565b5f818152600260205260409020546001600160a01b0316156115295760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105c0565b5f818152600260205260409020546001600160a01b03161561158d5760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105c0565b6001600160a01b0382165f81815260036020908152604080832080546001019055848352600290915280822080546001600160a01b0319168417905551839291907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b5f6001600160a01b0384163b156116e957604051630a85bd0160e11b81526001600160a01b0385169063150b7a029061163a903390899088908890600401611c5b565b6020604051808303815f875af1925050508015611674575060408051601f3d908101601f1916820190925261167191810190611c97565b60015b6116cf573d8080156116a1576040519150601f19603f3d011682016040523d82523d5f602084013e6116a6565b606091505b5080515f036116c75760405162461bcd60e51b81526004016105c090611c09565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610673565b506001610673565b5f8072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b831061172f5772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef8100000000831061175b576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc10000831061177957662386f26fc10000830492506010015b6305f5e1008310611791576305f5e100830492506008015b61271083106117a557612710830492506004015b606483106117b7576064830492506002015b600a83106104935760010192915050565b6001600160e01b031981168114610c38575f80fd5b5f602082840312156117ed575f80fd5b8135610bbb816117c8565b5f5b838110156118125781810151838201526020016117fa565b50505f910152565b5f81518084526118318160208601602086016117f8565b601f01601f19169290920160200192915050565b602081525f610bbb602083018461181a565b5f60208284031215611867575f80fd5b5035919050565b6001600160a01b0381168114610c38575f80fd5b5f8060408385031215611893575f80fd5b823561189e8161186e565b946020939093013593505050565b5f805f606084860312156118be575f80fd5b8335925060208401356118d08161186e565b929592945050506040919091013590565b5f805f606084860312156118f3575f80fd5b83356118fe8161186e565b925060208401356118d08161186e565b5f806040838503121561191f575f80fd5b8235915060208301356119318161186e565b809150509250929050565b5f6020828403121561194c575f80fd5b8135610bbb8161186e565b5f8060408385031215611968575f80fd5b82356119738161186e565b915060208301358015158114611931575f80fd5b634e487b7160e01b5f52604160045260245ffd5b5f805f80608085870312156119ae575f80fd5b84356119b98161186e565b935060208501356119c98161186e565b925060408501359150606085013567ffffffffffffffff808211156119ec575f80fd5b818701915087601f8301126119ff575f80fd5b813581811115611a1157611a11611987565b604051601f8201601f19908116603f01168101908382118183101715611a3957611a39611987565b816040528281528a6020848701011115611a51575f80fd5b826020860160208301375f60208483010152809550505050505092959194509250565b5f8060408385031215611a85575f80fd5b50508035926020909101359150565b5f8060408385031215611aa5575f80fd5b8235611ab08161186e565b915060208301356119318161186e565b600181811c90821680611ad457607f821691505b602082108103611af257634e487b7160e01b5f52602260045260245ffd5b50919050565b6020808252602d908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526c1c881bdc88185c1c1c9bdd9959609a1b606082015260800190565b5f60208284031215611b55575f80fd5b8151610bbb8161186e565b5f60208284031215611b70575f80fd5b5051919050565b8082018082111561049357634e487b7160e01b5f52601160045260245ffd5b5f8351611ba78184602088016117f8565b835190830190611bbb8183602088016117f8565b01949350505050565b60208082526025908201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060408201526437bbb732b960d91b606082015260800190565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6001600160a01b03858116825284166020820152604081018390526080606082018190525f90611c8d9083018461181a565b9695505050505050565b5f60208284031215611ca7575f80fd5b8151610bbb816117c856fea164736f6c6343000818000a","storage":{"0x0":"0x0","0x1":"0x0","0x6":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x8":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0x9":"0x93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae","0x9b8bc185dce56a7ea1b27d35e40ac15dcdf9144303dfd4d8880220078bf21a2c":"0x1","0xdb5e6a17df8534b92b0c8de590f14b4fb4b5eb2c62ef1bf7a05555e354797508":"0x1","0xe1a982900207b619cb6c39be8cb5e60da1370171412fb65b5efc25e2dce3c34c":"0x1"}},"0xce4bb7dc1eb9dce75743de6a4b48534fd427ef51":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xe85541865bbb62a05064ce5c9f41cc293a8ea996","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0xd178b720229c39de617846f84cf9c8d32a63a23d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610106575f3560e01c806371017a541161009e5780639e32d3641161006e5780639e32d3641461025a578063a424740014610281578063dd6b9e2214610294578063e1c4b65a146102a7578063e35a14e5146102ba575f80fd5b806371017a541461020e5780637b103999146102215780638f0dbd25146102345780639810b69514610247575f80fd5b8063485cc955116100d9578063485cc95514610191578063572b6c05146101a457806358884432146101d05780636ccbae5f146101fb575f80fd5b8063150b7a021461010a5780631694116d1461013b5780631bf7e13e146101505780631c351a9d14610170575b5f80fd5b61011d610118366004611434565b6102e2565b6040516001600160e01b031990911681526020015b60405180910390f35b61014e6101493660046114e3565b610372565b005b61016361015e366004611549565b61040d565b6040516101329190611601565b61018361017e366004611613565b6104d6565b604051908152602001610132565b61014e61019f366004611666565b6105c3565b6101c06101b236600461169d565b6001600160a01b0316301490565b6040519015158152602001610132565b6067546101e3906001600160a01b031681565b6040516001600160a01b039091168152602001610132565b6101836102093660046116b8565b6106f8565b6101e361021c3660046116cf565b610751565b6066546101e3906001600160a01b031681565b61014e6102423660046116ef565b610791565b6101e36102553660046116cf565b610806565b6101837fd81bbfcee722494b885e891546eeac23d0eedcd44038d7a2f6ef9ec2f9e0d23981565b6101c061028f366004611549565b61085f565b6101c06102a236600461172d565b6108a8565b61014e6102b5366004611771565b61091d565b6101e36102c83660046116b8565b5f908152606560205260409020546001600160a01b031690565b6066545f906001600160a01b03166102f8610a43565b6001600160a01b031614158061032257505f848152606560205260409020546001600160a01b0316155b156103605783610330610a43565b60405163634afa0d60e01b815260048101929092526001600160a01b031660248201526044015b60405180910390fd5b50630a85bd0160e11b95945050505050565b828261037e8282610751565b6001600160a01b031661038f610a43565b6001600160a01b0316146103c057604051632cd9b44d60e11b81526004810183905260248101829052604401610357565b5f6103cb8686610806565b90505f5b87811015610402576103fa8989838181106103ec576103ec6117b0565b905060200201358387610a51565b6001016103cf565b505050505050505050565b60605f5a905061041e85858561085f565b61043b57604051638baa579f60e01b815260040160405180910390fd5b6104cb61044b602087018761169d565b3060408801358461045f60608b018b6117c4565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f92019190915250610b8492505050565b9150505b9392505050565b6067545f906001600160a01b031663aa271e1a6104f1610a43565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015610533573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105579190611807565b1580610572575030610567610a43565b6001600160a01b0316145b156105a45761057f610a43565b60405163e2c8c9d560e01b81526001600160a01b039091166004820152602401610357565b5f6105b0858585610c60565b90506105bb81610e73565b949350505050565b5f54610100900460ff16158080156105e157505f54600160ff909116105b806105fa5750303b1580156105fa57505f5460ff166001145b61065d5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610357565b5f805460ff19166001179055801561067e575f805461ff0019166101001790555b606680546001600160a01b038086166001600160a01b031992831617909255606780549285169290911691909117905580156106f3575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f9061074a906060016040516020818303038152906040528051906020012090565b5492915050565b5f80838360405160200161076f929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209150505b92915050565b828261079d8282610751565b6001600160a01b03166107ae610a43565b6001600160a01b0316146107df57604051632cd9b44d60e11b81526004810183905260248101829052604401610357565b856107e981610e73565b6107fd876107f78889610806565b86610a51565b50505050505050565b5f8060026108148585610e8f565b6040516108219190611826565b602060405180830381855afa15801561083c573d5f803e3d5ffd5b5050506040513d601f19601f820116820180604052508101906105bb9190611841565b5f6105bb61086c856118c6565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250610f1492505050565b5f805b8281101561091257846001600160a01b03166108f38585848181106108d2576108d26117b0565b905060200201355f908152606560205260409020546001600160a01b031690565b6001600160a01b03161461090a575f9150506104cf565b6001016108ab565b506001949350505050565b6067546001600160a01b031663aa271e1a610936610a43565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015610978573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061099c9190611807565b15806109b75750306109ac610a43565b6001600160a01b0316145b156109c45761057f610a43565b5f5b818110156106f357610a3a8383838181106109e3576109e36117b0565b90506020028101906109f59190611983565b610a039060208101906117c4565b858585818110610a1557610a156117b0565b9050602002810190610a279190611983565b610a3590602081019061169d565b610c60565b506001016109c6565b5f610a4c611059565b905090565b5f838152606560205260409020546001600160a01b03838116911614610ab4575f83815260656020526040908190205490516326995d8360e11b8152600481018590526001600160a01b0391821660248201529083166044820152606401610357565b5f838152606560205260409081902080546001600160a01b03191690556066549051632142170760e11b81523060048201526001600160a01b03838116602483015260448201869052909116906342842e0e906064015f604051808303815f87803b158015610b21575f80fd5b505af1158015610b33573d5f803e3d5ffd5b50505050806001600160a01b0316610b49610a43565b6001600160a01b0316847f9a471856befea1cabcd7fc8a1c4d70ea07b8ed2ee205cc361f932433542ef3fe60405160405180910390a4505050565b6060610b8f85611076565b5f80876001600160a01b031686610ba88b8a89896110db565b604051610bb59190611826565b5f604051808303815f8787f1925050503d805f8114610bef576040519150601f19603f3d011682016040523d82523d5f602084013e610bf4565b606091505b509092509050610c05603f876119bf565b5a11610c1357610c136119d2565b610c5382826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061110b565b9998505050505050505050565b5f60605f7fd81bbfcee722494b885e891546eeac23d0eedcd44038d7a2f6ef9ec2f9e0d2398686604051602001610c989291906119e6565b60405160208183030381529060405280519060200120604051602001610cc8929190918252602082015260400190565b60408051808303601f19018152828252805160209091012060028084526060840190925292505f9190816020015b6060815260200190600190039081610cf657905050905086868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920182905250855186945090925015159050610d5657610d566117b0565b6020026020010181905250604051806040016040528060038152602001621e9a5b60ea1b81525081600181518110610d9057610d906117b0565b6020908102919091018101919091525f8381526065909152604080822080546001600160a01b0319166001600160a01b03898116919091179091556067549151635cd7e3b360e01b8152911691635cd7e3b391610df891309186918991829190600401611a4d565b5f604051808303815f87803b158015610e0f575f80fd5b505af1158015610e21573d5f803e3d5ffd5b50505050846001600160a01b0316827f08717469d38a4b02325ea6637978c7952f94d3d8fc7848994f618ddbf4d637f18989604051610e61929190611aab565b60405180910390a35095945050505050565b303303610e8657610e8381611144565b50565b610e8381611076565b60605f82610e9f60016020611ad9565b60ff1660208110610eb257610eb26117b0565b1a9050610ec0600282611af2565b60ff1615610ecf576003610ed2565b60025b84604051602001610efc92919060f89290921b6001600160f81b0319168252600182015260210190565b60405160208183030381529060405291505092915050565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015610f58573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f7c9190611841565b90505f611029866060015180519060200120868860200151604051602001610fc99392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561104f5750855161104f906001600160a01b0316828661116e565b9695505050505050565b5f30330361106e575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f906060016040516020818303038152906040528051906020012090506110ca8190565b546110d6906001611b13565b905550565b60608285856040516020016110f293929190611b26565b6040516020818303038152906040529050949350505050565b6060831561111a5750816104cf565b82511561112a5782518084602001fd5b8160405162461bcd60e51b81526004016103579190611601565b61114c6112a9565b8114610e8357604051635637b6af60e11b815260048101829052602401610357565b5f805f61117b85856112bb565b90925090505f81600481111561119357611193611b64565b1480156111b15750856001600160a01b0316826001600160a01b0316145b156111c1576001925050506104cf565b5f80876001600160a01b0316631626ba7e60e01b88886040516024016111e8929190611b78565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516112269190611826565b5f60405180830381855afa9150503d805f811461125e576040519150601f19603f3d011682016040523d82523d5f602084013e611263565b606091505b5091509150818015611276575080516020145b801561129d57508051630b135d3f60e11b9061129b9083016020908101908401611841565b145b98975050505050505050565b5f3033036110735750601f1936013590565b5f8082516041036112ef576020830151604084015160608501515f1a6112e3878285856112fd565b945094505050506112f6565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561133257505f905060036113d9565b8460ff16601b1415801561134a57508460ff16601c14155b1561135a57505f905060046113d9565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156113ab573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b0381166113d3575f600192509250506113d9565b91505f90505b94509492505050565b6001600160a01b0381168114610e83575f80fd5b5f8083601f840112611406575f80fd5b50813567ffffffffffffffff81111561141d575f80fd5b6020830191508360208285010111156112f6575f80fd5b5f805f805f60808688031215611448575f80fd5b8535611453816113e2565b94506020860135611463816113e2565b935060408601359250606086013567ffffffffffffffff811115611485575f80fd5b611491888289016113f6565b969995985093965092949392505050565b5f8083601f8401126114b2575f80fd5b50813567ffffffffffffffff8111156114c9575f80fd5b6020830191508360208260051b85010111156112f6575f80fd5b5f805f805f608086880312156114f7575f80fd5b853567ffffffffffffffff81111561150d575f80fd5b611519888289016114a2565b9096509450506020860135925060408601359150606086013561153b816113e2565b809150509295509295909350565b5f805f6040848603121561155b575f80fd5b833567ffffffffffffffff80821115611572575f80fd5b9085019060808288031215611585575f80fd5b9093506020850135908082111561159a575f80fd5b506115a7868287016113f6565b9497909650939450505050565b5f5b838110156115ce5781810151838201526020016115b6565b50505f910152565b5f81518084526115ed8160208601602086016115b4565b601f01601f19169290920160200192915050565b602081525f6104cf60208301846115d6565b5f805f60408486031215611625575f80fd5b833567ffffffffffffffff81111561163b575f80fd5b611647868287016113f6565b909450925050602084013561165b816113e2565b809150509250925092565b5f8060408385031215611677575f80fd5b8235611682816113e2565b91506020830135611692816113e2565b809150509250929050565b5f602082840312156116ad575f80fd5b81356104cf816113e2565b5f602082840312156116c8575f80fd5b5035919050565b5f80604083850312156116e0575f80fd5b50508035926020909101359150565b5f805f8060808587031215611702575f80fd5b8435935060208501359250604085013591506060850135611722816113e2565b939692955090935050565b5f805f6040848603121561173f575f80fd5b833561174a816113e2565b9250602084013567ffffffffffffffff811115611765575f80fd5b6115a7868287016114a2565b5f8060208385031215611782575f80fd5b823567ffffffffffffffff811115611798575f80fd5b6117a4858286016114a2565b90969095509350505050565b634e487b7160e01b5f52603260045260245ffd5b5f808335601e198436030181126117d9575f80fd5b83018035915067ffffffffffffffff8211156117f3575f80fd5b6020019150368190038213156112f6575f80fd5b5f60208284031215611817575f80fd5b815180151581146104cf575f80fd5b5f82516118378184602087016115b4565b9190910192915050565b5f60208284031215611851575f80fd5b5051919050565b634e487b7160e01b5f52604160045260245ffd5b6040516080810167ffffffffffffffff8111828210171561188f5761188f611858565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156118be576118be611858565b604052919050565b5f608082360312156118d6575f80fd5b6118de61186c565b82356118e9816113e2565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff80821115611919575f80fd5b9085019036601f83011261192b575f80fd5b81358181111561193d5761193d611858565b61194f601f8201601f19168501611895565b91508082523684828501011115611964575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b5f8235603e19833603018112611837575f80fd5b634e487b7160e01b5f52601260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b5f826119cd576119cd611997565b500490565b634e487b7160e01b5f52600160045260245ffd5b818382375f9101908152919050565b5f8282518085526020808601955060208260051b840101602086015f5b84811015611a4057601f19868403018952611a2e8383516115d6565b98840198925090830190600101611a12565b5090979650505050505050565b6001600160a01b038616815260a0602082018190525f90611a70908301876119f5565b8281036040840152611a8281876119f5565b90508281036060840152611a9681866119f5565b91505082151560808301529695505050505050565b60208152816020820152818360408301375f818301604090810191909152601f909201601f19160101919050565b60ff828116828216039081111561078b5761078b6119ab565b5f60ff831680611b0457611b04611997565b8060ff84160691505092915050565b8082018082111561078b5761078b6119ab565b5f8451611b378184602089016115b4565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f6105bb60408301846115d656fea164736f6c6343000818000a","storage":{"0x0":"0xff"}},"0xda9e1b3e395bfb0a45f03c7f615146b9d896c959":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100b1575f3560e01c806340c10f191161006e57806340c10f191461013d57806370a082311461015257806395d89b411461017a578063a457c2d714610182578063a9059cbb14610195578063dd62ed3e146101a8575f80fd5b806306fdde03146100b5578063095ea7b3146100d357806318160ddd146100f657806323b872dd14610108578063313ce5671461011b578063395093511461012a575b5f80fd5b6100bd6101bb565b6040516100ca9190610775565b60405180910390f35b6100e66100e13660046107dc565b61024b565b60405190151581526020016100ca565b6002545b6040519081526020016100ca565b6100e6610116366004610804565b610264565b604051601281526020016100ca565b6100e66101383660046107dc565b610287565b61015061014b3660046107dc565b6102a8565b005b6100fa61016036600461083d565b6001600160a01b03165f9081526020819052604090205490565b6100bd6102b6565b6100e66101903660046107dc565b6102c5565b6100e66101a33660046107dc565b610344565b6100fa6101b636600461085d565b610351565b6060600380546101ca9061088e565b80601f01602080910402602001604051908101604052809291908181526020018280546101f69061088e565b80156102415780601f1061021857610100808354040283529160200191610241565b820191905f5260205f20905b81548152906001019060200180831161022457829003601f168201915b5050505050905090565b5f3361025881858561037b565b60019150505b92915050565b5f3361027185828561049e565b61027c858585610516565b506001949350505050565b5f336102588185856102998383610351565b6102a391906108c6565b61037b565b6102b282826106b8565b5050565b6060600480546101ca9061088e565b5f33816102d28286610351565b9050838110156103375760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b61027c828686840361037b565b5f33610258818585610516565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b6001600160a01b0383166103dd5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161032e565b6001600160a01b03821661043e5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161032e565b6001600160a01b038381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b5f6104a98484610351565b90505f19811461051057818110156105035760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161032e565b610510848484840361037b565b50505050565b6001600160a01b03831661057a5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161032e565b6001600160a01b0382166105dc5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161032e565b6001600160a01b0383165f90815260208190526040902054818110156106535760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161032e565b6001600160a01b038481165f81815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3610510565b6001600160a01b03821661070e5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640161032e565b8060025f82825461071f91906108c6565b90915550506001600160a01b0382165f81815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b5f602080835283518060208501525f5b818110156107a157858101830151858201604001528201610785565b505f604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146107d7575f80fd5b919050565b5f80604083850312156107ed575f80fd5b6107f6836107c1565b946020939093013593505050565b5f805f60608486031215610816575f80fd5b61081f846107c1565b925061082d602085016107c1565b9150604084013590509250925092565b5f6020828403121561084d575f80fd5b610856826107c1565b9392505050565b5f806040838503121561086e575f80fd5b610877836107c1565b9150610885602084016107c1565b90509250929050565b600181811c908216806108a257607f821691505b6020821081036108c057634e487b7160e01b5f52602260045260245ffd5b50919050565b8082018082111561025e57634e487b7160e01b5f52601160045260245ffdfea164736f6c6343000818000a","storage":{"0x2":"0xe8d4a51000","0x3":"0x0","0x4":"0x0","0x47668262eb76f3aa61b856a0c078f33a11f46671cf1466c3616ba74a22fcdd92":"0xe8d4a51000","0x9cc83e833a69122bf7773b58c082655d780ae469ab7cdf5d1047a30229e55875":"0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"}},"0xe0afc4e9e03e4aa67257df7a2eca77454309789d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061002b5760003560e01c806316f1983114610030575b600080fd5b6100b06004803603604081101561004657600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561007157600080fd5b82018360208201111561008357600080fd5b803590602001918460018302840111640100000000831117156100a557600080fd5b5090925090506100b2565b005b826001600160a01b031660017f103fed9db65eac19c4d870f49ab7520fe03b99f1838e5996caf47e9e43308392848460405180806020018281038252848482818152602001925080828437600083820152604051601f909101601f19169092018290039550909350505050a350505056fea164736f6c6343000606000a","storage":{}},"0xe4fdf45c2f8d198854f8823809c7a988eeaaa493":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100a6575f3560e01c80638cb8ecec1161006e5780638cb8ecec1461013e5780638da5cb5b14610151578063cbe9e76414610161578063da8c229e14610183578063e0dba60f146101a5578063f2fde38b146101b8575f80fd5b806301670ba9146100aa57806301ffc9a7146100bf5780633f15457f146100f85780634e543b2614610123578063715018a614610136575b5f80fd5b6100bd6100b8366004610529565b6101cb565b005b6100e36100cd366004610540565b6001600160e01b0319166301ffc9a760e01b1490565b60405190151581526020015b60405180910390f35b60025461010b906001600160a01b031681565b6040516001600160a01b0390911681526020016100ef565b6100bd610131366004610589565b610217565b6100bd610282565b6100bd61014c3660046105a2565b610295565b5f546001600160a01b031661010b565b6100e361016f366004610529565b60036020525f908152604090205460ff1681565b6100e3610191366004610589565b60016020525f908152604090205460ff1681565b6100bd6101b33660046105cc565b6103a2565b6100bd6101c6366004610589565b610408565b6101d3610481565b60405181907f1764176cfa565853ba1ded547a830a9f9bff95231ef6fd228b3ddd6175777569905f90a25f908152600360205260409020805460ff19166001179055565b61021f610481565b600254604051630c4b7b8560e11b81525f60048201526001600160a01b03838116602483015290911690631896f70a906044015f604051808303815f87803b158015610269575f80fd5b505af115801561027b573d5f803e3d5ffd5b5050505050565b61028a610481565b6102935f6104da565b565b335f9081526001602052604090205460ff166103095760405162461bcd60e51b815260206004820152602860248201527f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f604482015267373a3937b63632b960c11b60648201526084015b60405180910390fd5b5f8281526003602052604090205460ff1615610323575f80fd5b6002546040516306ab592360e01b81525f6004820152602481018490526001600160a01b038381166044830152909116906306ab5923906064016020604051808303815f875af1158015610379573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061039d9190610605565b505050565b6103aa610481565b6001600160a01b0382165f81815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b610410610481565b6001600160a01b0381166104755760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610300565b61047e816104da565b50565b5f546001600160a01b031633146102935760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610300565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f60208284031215610539575f80fd5b5035919050565b5f60208284031215610550575f80fd5b81356001600160e01b031981168114610567575f80fd5b9392505050565b80356001600160a01b0381168114610584575f80fd5b919050565b5f60208284031215610599575f80fd5b6105678261056e565b5f80604083850312156105b3575f80fd5b823591506105c36020840161056e565b90509250929050565b5f80604083850312156105dd575f80fd5b6105e68361056e565b9150602083013580151581146105fa575f80fd5b809150509250929050565b5f60208284031215610615575f80fd5b505191905056fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0xbdf39e9e65b2355b1b0b06df799c09159f0ab90f06a9bb2153f5de7d9b0ea81":"0x1","0x97b771283c9c769f7b9399fef71d92816f2bd31de10203b676671b01eb920966":"0x1"}},"0xe85541865bbb62a05064ce5c9f41cc293a8ea996":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610060575f3560e01c8063715018a6146100645780638129fc1c1461006e5780638da5cb5b14610076578063a3f4df7e14610096578063f2fde38b146100cf578063ffa1ad74146100e2575b5f80fd5b61006c610106565b005b61006c610119565b6033546040516001600160a01b0390911681526020015b60405180910390f35b6100c26040518060400160405280600d81526020016c2aa7299d1027b832b930ba37b960991b81525081565b60405161008d91906103bd565b61006c6100dd366004610409565b610229565b6100c2604051806040016040528060058152602001640302e312e360dc1b81525081565b61010e61029f565b6101175f6102f9565b565b5f54610100900460ff161580801561013757505f54600160ff909116105b806101505750303b15801561015057505f5460ff166001145b6101b85760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b5f805460ff1916600117905580156101d9575f805461ff0019166101001790555b6101e161034a565b8015610226575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50565b61023161029f565b6001600160a01b0381166102965760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016101af565b610226816102f9565b6033546001600160a01b031633146101175760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016101af565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff166103b45760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016101af565b610117336102f9565b5f602080835283518060208501525f5b818110156103e9578581018301518582016040015282016103cd565b505f604082860101526040601f19601f8301168501019250505092915050565b5f60208284031215610419575f80fd5b81356001600160a01b038116811461042f575f80fd5b939250505056fea164736f6c6343000818000a","storage":{}},"0xead34b583404e3cb0c9b97c2d1c486be67be9f30":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0xec71e4e674fe0f432693dc2b935c34bd2774c003":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610090575f3560e01c8063a200e15311610063578063a200e15314610146578063a34e35961461016d578063c8a4271f14610180578063cd5d2c74146101bf578063d820ed42146101e6575f80fd5b806301ffc9a7146100945780632c0fd74c146100bc57806350e9a715146100f157806359b6b86c1461011f575b5f80fd5b6100a76100a2366004610600565b61020d565b60405190151581526020015b60405180910390f35b6100e37f000000000000000000000000000000000000000000000000000000000000000081565b6040519081526020016100b3565b6101046100ff366004610627565b610243565b604080518251815260209283015192810192909252016100b3565b6100e37f000000000000000000000000000000000000000000000000000000000000000181565b6100e37f000000000000000000000000000000000000000000000000000000000000000481565b6100e361017b366004610627565b610404565b6101a77f000000000000000000000000f3810eb7d64d1c11ae12727d957c6202b24492f581565b6040516001600160a01b0390911681526020016100b3565b6100e37f000000000000000000000000000000000000000000000000000000000000000081565b6100e37f000000000000000000000000000000000000000000000000000000000000000281565b5f6001600160e01b031982166301ffc9a760e01b148061023d57506001600160e01b031982166350e9a71560e01b145b92915050565b604080518082019091525f80825260208201525f61029586868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061045392505050565b90505f600582106102d1576102ca847f00000000000000000000000000000000000000000000000000000000000000016106b3565b9050610394565b81600403610303576102ca847f00000000000000000000000000000000000000000000000000000000000000026106b3565b81600303610335576102ca847f00000000000000000000000000000000000000000000000000000000000000046106b3565b81600203610367576102ca847f00000000000000000000000000000000000000000000000000000000000000006106b3565b610391847f00000000000000000000000000000000000000000000000000000000000000006106b3565b90505b60405180604001604052806103a883610554565b81526020016103f76103f28a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c92508b91506105f89050565b610554565b9052979650505050505050565b5f61044a6103f286868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508892508791506105f89050565b95945050505050565b80515f90819081905b8082101561054b575f858381518110610477576104776106ca565b01602001516001600160f81b0319169050600160ff1b8110156104a65761049f6001846106de565b9250610538565b600760fd1b6001600160f81b0319821610156104c75761049f6002846106de565b600f60fc1b6001600160f81b0319821610156104e85761049f6003846106de565b601f60fb1b6001600160f81b0319821610156105095761049f6004846106de565b603f60fa1b6001600160f81b03198216101561052a5761049f6005846106de565b6105356006846106de565b92505b5082610543816106f1565b93505061045c565b50909392505050565b5f807f000000000000000000000000f3810eb7d64d1c11ae12727d957c6202b24492f56001600160a01b03166350d25bcd6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105b2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105d69190610709565b9050806105e7846305f5e1006106b3565b6105f19190610720565b9392505050565b5f9392505050565b5f60208284031215610610575f80fd5b81356001600160e01b0319811681146105f1575f80fd5b5f805f806060858703121561063a575f80fd5b843567ffffffffffffffff80821115610651575f80fd5b818701915087601f830112610664575f80fd5b813581811115610672575f80fd5b886020828501011115610683575f80fd5b6020928301999098509187013596604001359550909350505050565b634e487b7160e01b5f52601160045260245ffd5b808202811582820484141761023d5761023d61069f565b634e487b7160e01b5f52603260045260245ffd5b8082018082111561023d5761023d61069f565b5f600182016107025761070261069f565b5060010190565b5f60208284031215610719575f80fd5b5051919050565b5f8261073a57634e487b7160e01b5f52601260045260245ffd5b50049056fea164736f6c6343000818000a","storage":{}},"0xf1ad43dc647f27c2366ab4742d68d21282f7d50e":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101d1575f3560e01c80638b95dd71116100fe578063c86902331161009e578063e32954eb1161006e578063e32954eb146104f2578063e59d895d14610505578063e985e9c514610518578063f1cb7e0614610553575f80fd5b8063c869023314610435578063ce3decdc1461048c578063d5fa2b001461049f578063d700ff33146104b2575f80fd5b8063a8fa5682116100d9578063a8fa5682146103ac578063a9784b3e146103bf578063ac9650d814610402578063bc1c58d114610422575f80fd5b80638b95dd7114610373578063a22cb46514610386578063a4b91a0114610399575f80fd5b80633603d758116101745780635c98042b116101445780635c98042b14610327578063623195b01461033a578063691f34311461034d5780637737221314610360575f80fd5b80633603d758146102975780633b3b57de146102aa5780634cbf6ba4146102bd57806359d1d43c14610307575f80fd5b8063124a319c116101af578063124a319c146102255780632203ab561461025057806329cd62ea14610271578063304e6ade14610284575f80fd5b806301ffc9a7146101d55780630af179d7146101fd57806310f13a8c14610212575b5f80fd5b6101e86101e3366004612267565b610566565b60405190151581526020015b60405180910390f35b61021061020b3660046122bd565b610576565b005b610210610220366004612304565b610778565b610238610233366004612377565b610842565b6040516001600160a01b0390911681526020016101f4565b61026361025e3660046123a1565b610a87565b6040516101f492919061240e565b61021061027f366004612426565b610bb5565b6102106102923660046122bd565b610c4d565b6102106102a536600461244f565b610cc6565b6102386102b836600461244f565b610d64565b6101e86102cb3660046123a1565b5f82815260208181526040808320546001600160401b031683526006825280832094835293815283822092825291909152205461ffff16151590565b61031a6103153660046122bd565b610d93565b6040516101f49190612466565b61031a61033536600461244f565b610e6f565b610210610348366004612478565b610f2a565b61031a61035b36600461244f565b610fc2565b61021061036e3660046122bd565b610ffa565b6102106103813660046124da565b611073565b6102106103943660046125b9565b611150565b6102106103a73660046125e3565b61122a565b61031a6103ba36600461261e565b6112f6565b6101e86103cd36600461265a565b6001600160a01b039283165f908152600c60209081526040808320948352938152838220929094168152925290205460ff1690565b6104156104103660046126ce565b611342565b6040516101f4919061270c565b61031a61043036600461244f565b61134f565b61047761044336600461244f565b5f81815260208181526040808320546001600160401b03168352600982528083209383529290522080546001909101549091565b604080519283526020830191909152016101f4565b61021061049a3660046122bd565b611387565b6102106104ad36600461276e565b6114c3565b6104da6104c036600461244f565b5f602081905290815260409020546001600160401b031681565b6040516001600160401b0390911681526020016101f4565b61041561050036600461279c565b6114e9565b6102106105133660046127d6565b6114fe565b6101e8610526366004612808565b6001600160a01b039182165f908152600b6020908152604080832093909416825291909152205460ff1690565b61031a6105613660046123a1565b6115a2565b5f61057082611666565b92915050565b826105808161168a565b610588575f80fd5b5f84815260208181526040808320548151601f87018490048402810184019092528582528392606092839285926001600160401b039091169183916105eb9183918d908d90819084018382808284375f9201919091525092939250506118b79050565b90505b80515160208201511015610712578661ffff165f03610652578060400151965061061781611912565b94508460405160200161062a9190612834565b60405160208183030381529060405280519060200120925061064b81611933565b9350610704565b5f61065c82611912565b9050816040015161ffff168861ffff16141580610680575061067e868261194f565b155b15610702576106db8c878a8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250505060208801518d91506106d2908290612863565b8b51158a61196a565b8160400151975081602001519650809550858051906020012093506106ff82611933565b94505b505b61070d81611bc9565b6105ee565b5083511561076c5761076c8a85888c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c925061076391508290508f612863565b8951158861196a565b50505050505050505050565b846107828161168a565b61078a575f80fd5b5f86815260208181526040808320546001600160401b03168352600a8252808320898452909152908190209051849184916107c89089908990612876565b908152602001604051809103902091826107e3929190612901565b5084846040516107f4929190612876565b6040518091039020867f448bc014f1536726cf8d54ff3d6481ed3cbc683c2591ca204274009afa09b1a18787878760405161083294939291906129e2565b60405180910390a3505050505050565b5f82815260208181526040808320546001600160401b031683526007825280832085845282528083206001600160e01b0319851684529091528120546001600160a01b03168015610894579050610570565b5f61089e85610d64565b90506001600160a01b0381166108b8575f92505050610570565b6040516301ffc9a760e01b60248201525f9081906001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b1790525161090f9190612834565b5f60405180830381855afa9150503d805f8114610947576040519150601f19603f3d011682016040523d82523d5f602084013e61094c565b606091505b509150915081158061095f575060208151105b80610989575080601f8151811061097857610978612a13565b01602001516001600160f81b031916155b1561099a575f945050505050610570565b6040516001600160e01b0319871660248201526001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b179052516109f09190612834565b5f60405180830381855afa9150503d805f8114610a28576040519150601f19603f3d011682016040523d82523d5f602084013e610a2d565b606091505b509092509050811580610a41575060208151105b80610a6b575080601f81518110610a5a57610a5a612a13565b01602001516001600160f81b031916155b15610a7c575f945050505050610570565b509095945050505050565b5f82815260208181526040808320546001600160401b03168352600180835281842086855290925282206060915b848111610b975780851615801590610ae457505f8181526020839052604081208054610ae090612885565b9050115b15610b8f5780825f8381526020019081526020015f20808054610b0690612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610b3290612885565b8015610b7d5780601f10610b5457610100808354040283529160200191610b7d565b820191905f5260205f20905b815481529060010190602001808311610b6057829003601f168201915b50505050509050935093505050610bae565b60011b610ab5565b505f60405180602001604052805f81525092509250505b9250929050565b82610bbf8161168a565b610bc7575f80fd5b60408051808201825284815260208082018581525f888152808352848120546001600160401b031681526009835284812089825283528490209251835551600190920191909155815185815290810184905285917f1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e4691015b60405180910390a250505050565b82610c578161168a565b610c5f575f80fd5b5f84815260208181526040808320546001600160401b03168352600382528083208784529091529020610c93838583612901565b50837fe379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d75788484604051610c3f929190612a27565b80610cd08161168a565b610cd8575f80fd5b5f82815260208190526040812080546001600160401b031691610cfa83612a3a565b82546101009290920a6001600160401b038181021990931691831602179091555f84815260208181526040918290205491519190921681528492507fc6621ccb8f3f5a04bb6502154b2caf6adf5983fe76dfef1cfc9c42e3579db444910160405180910390a25050565b5f80610d7183603c6115a2565b905080515f03610d8357505f92915050565b610d8c81611cae565b9392505050565b5f83815260208181526040808320546001600160401b03168352600a825280832086845290915290819020905160609190610dd19085908590612876565b90815260200160405180910390208054610dea90612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610e1690612885565b8015610e615780601f10610e3857610100808354040283529160200191610e61565b820191905f5260205f20905b815481529060010190602001808311610e4457829003601f168201915b505050505090509392505050565b5f81815260208181526040808320546001600160401b03168352600482528083208484529091529020805460609190610ea790612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610ed390612885565b8015610f1e5780601f10610ef557610100808354040283529160200191610f1e565b820191905f5260205f20905b815481529060010190602001808311610f0157829003601f168201915b50505050509050919050565b83610f348161168a565b610f3c575f80fd5b83610f48600182612863565b1615610f52575f80fd5b5f85815260208181526040808320546001600160401b031683526001825280832088845282528083208784529091529020610f8e838583612901565b50604051849086907faa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe3905f90a35050505050565b5f81815260208181526040808320546001600160401b03168352600882528083208484529091529020805460609190610ea790612885565b826110048161168a565b61100c575f80fd5b5f84815260208181526040808320546001600160401b03168352600882528083208784529091529020611040838583612901565b50837fb7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f78484604051610c3f929190612a27565b8261107d8161168a565b611085575f80fd5b837f65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af75284846040516110b792919061240e565b60405180910390a2603c830361110e57837f52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd26110f284611cae565b6040516001600160a01b03909116815260200160405180910390a25b5f84815260208181526040808320546001600160401b0316835260028252808320878452825280832086845290915290206111498382612a5f565b5050505050565b6001600160a01b03821633036111bf5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084015b60405180910390fd5b335f818152600b602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6001600160a01b03821633036112825760405162461bcd60e51b815260206004820181905260248201527f53657474696e672064656c65676174652073746174757320666f722073656c6660448201526064016111b6565b335f818152600c6020908152604080832087845282528083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519384529286917ff0ddb3b04746704017f9aa8bd728fcc2c1d11675041205350018915f5e4750a0910160405180910390a4505050565b5f83815260208181526040808320546001600160401b03168352600582528083208684528252808320858452825280832061ffff851684529091529020805460609190610dea90612885565b6060610d8c5f8484611ccb565b5f81815260208181526040808320546001600160401b03168352600382528083208484529091529020805460609190610ea790612885565b826113918161168a565b611399575f80fd5b5f84815260208181526040808320546001600160401b031680845260048352818420888552909252822080549192916113d190612885565b80601f01602080910402602001604051908101604052809291908181526020018280546113fd90612885565b80156114485780601f1061141f57610100808354040283529160200191611448565b820191905f5260205f20905b81548152906001019060200180831161142b57829003601f168201915b505050506001600160401b0384165f9081526004602090815260408083208b8452909152902091925061147e9050858783612901565b50857f8f15ed4b723ef428f250961da8315675b507046737e19319fc1a4d81bfe87f858287876040516114b393929190612b1e565b60405180910390a2505050505050565b816114cd8161168a565b6114d5575f80fd5b6114e483603c61038185611e88565b505050565b60606114f6848484611ccb565b949350505050565b826115088161168a565b611510575f80fd5b5f84815260208181526040808320546001600160401b031683526007825280832087845282528083206001600160e01b031987168085529083529281902080546001600160a01b0319166001600160a01b038716908117909155905190815286917f7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa910160405180910390a350505050565b5f82815260208181526040808320546001600160401b0316835260028252808320858452825280832084845290915290208054606091906115e290612885565b80601f016020809104026020016040519081016040528092919081815260200182805461160e90612885565b80156116595780601f1061163057610100808354040283529160200191611659565b820191905f5260205f20905b81548152906001019060200180831161163c57829003601f168201915b5050505050905092915050565b5f6001600160e01b03198216631674750f60e21b1480610570575061057082611eb8565b5f336001600160a01b037f0000000000000000000000004fbf7b2f171336958be5d15ff762a5cff53635681614806116ea5750336001600160a01b037f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5616145b156116f757506001919050565b6040516302571be360e01b8152600481018390525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa15801561175c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117809190612b4d565b90507f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b0316816001600160a01b031603611845576040516331a9108f60e11b8152600481018490527f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b031690636352211e90602401602060405180830381865afa15801561181e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118429190612b4d565b90505b6001600160a01b03811633148061187e57506001600160a01b0381165f908152600b6020908152604080832033845290915290205460ff165b80610d8c57506001600160a01b0381165f908152600c60209081526040808320868452825280832033845290915290205460ff16610d8c565b6118ff6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261057081611bc9565b602081015181516060916105709161192a9082611edc565b84519190611f33565b60a081015160c08201516060916105709161192a908290612863565b5f81518351148015610d8c5750610d8c835f845f8751611fa7565b865160208801205f61197d878787611f33565b90508315611aa1576001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c168452909152902080546119c690612885565b159050611a23576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611a0783612b68565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091528120611a62916121f9565b897f03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a12078a8a604051611a94929190612b84565b60405180910390a261076c565b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c16845290915290208054611ae290612885565b90505f03611b40576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611b2483612ba9565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091529020611b808282612a5f565b50897f52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b8a8a84604051611bb593929190612bbf565b60405180910390a250505050505050505050565b60c08101516020820181905281515111611be05750565b5f611bf2825f01518360200151611edc565b8260200151611c019190612bed565b8251909150611c109082611fc9565b61ffff166040830152611c24600282612bed565b8251909150611c339082611fc9565b61ffff166060830152611c47600282612bed565b8251909150611c569082611fef565b63ffffffff166080830152611c6c600482612bed565b82519091505f90611c7d9083611fc9565b61ffff169050611c8e600283612bed565b60a084018190529150611ca18183612bed565b60c0909301929092525050565b5f8151601414611cbc575f80fd5b5060200151600160601b900490565b6060816001600160401b03811115611ce557611ce56124c6565b604051908082528060200260200182016040528015611d1857816020015b6060815260200190600190039081611d035790505b5090505f5b82811015611e80578415611dd8575f848483818110611d3e57611d3e612a13565b9050602002810190611d509190612c00565b611d5f91602491600491612c42565b611d6891612c69565b9050858114611dd65760405162461bcd60e51b815260206004820152603460248201527f6d756c746963616c6c3a20416c6c207265636f726473206d7573742068617665604482015273040c240dac2e8c6d0d2dcce40dcc2dacad0c2e6d60631b60648201526084016111b6565b505b5f8030868685818110611ded57611ded612a13565b9050602002810190611dff9190612c00565b604051611e0d929190612876565b5f60405180830381855af49150503d805f8114611e45576040519150601f19603f3d011682016040523d82523d5f602084013e611e4a565b606091505b509150915081611e58575f80fd5b80848481518110611e6b57611e6b612a13565b60209081029190910101525050600101611d1d565b509392505050565b604080516014808252818301909252606091602082018180368337505050600160601b9290920260208301525090565b5f6001600160e01b0319821663c869023360e01b1480610570575061057082612017565b5f815b83518110611eef57611eef612c86565b5f611efa858361203b565b60ff169050611f0a816001612bed565b611f149083612bed565b9150805f03611f235750611f29565b50611edf565b6114f68382612863565b8251606090611f428385612bed565b1115611f4c575f80fd5b5f826001600160401b03811115611f6557611f656124c6565b6040519080825280601f01601f191660200182016040528015611f8f576020820181803683370190505b50905060208082019086860101610a7c82828761205e565b5f611fb38484846120b3565b611fbe8787856120b3565b149695505050505050565b81515f90611fd8836002612bed565b1115611fe2575f80fd5b50016002015161ffff1690565b81515f90611ffe836004612bed565b1115612008575f80fd5b50016004015163ffffffff1690565b5f6001600160e01b0319821663691f343160e01b14806105705750610570826120d5565b5f82828151811061204e5761204e612a13565b016020015160f81c905092915050565b602081106120965781518352612075602084612bed565b9250612082602083612bed565b915061208f602082612863565b905061205e565b905182516020929092036101000a5f190180199091169116179052565b82515f906120c18385612bed565b11156120cb575f80fd5b5091016020012090565b5f6001600160e01b031982166304928c6760e21b14806105705750610570825f6001600160e01b0319821663547d2b4160e11b148061212457506001600160e01b03198216635c98042b60e01b145b806105705750610570825f6001600160e01b0319821663bc1c58d160e01b14806105705750610570825f6001600160e01b03198216631d9dabef60e11b148061217d57506001600160e01b031982166378e5bf0360e11b145b806105705750610570825f6001600160e01b03198216631101d5ab60e11b14806105705750610570825f6001600160e01b0319821663d700ff3360e01b14806105705750610570825f6001600160e01b03198216634fbf043360e01b148061057057506301ffc9a760e01b6001600160e01b0319831614610570565b50805461220590612885565b5f825580601f10612214575050565b601f0160209004905f5260205f20908101906122309190612233565b50565b5b80821115612247575f8155600101612234565b5090565b80356001600160e01b031981168114612262575f80fd5b919050565b5f60208284031215612277575f80fd5b610d8c8261224b565b5f8083601f840112612290575f80fd5b5081356001600160401b038111156122a6575f80fd5b602083019150836020828501011115610bae575f80fd5b5f805f604084860312156122cf575f80fd5b8335925060208401356001600160401b038111156122eb575f80fd5b6122f786828701612280565b9497909650939450505050565b5f805f805f60608688031215612318575f80fd5b8535945060208601356001600160401b0380821115612335575f80fd5b61234189838a01612280565b90965094506040880135915080821115612359575f80fd5b5061236688828901612280565b969995985093965092949392505050565b5f8060408385031215612388575f80fd5b823591506123986020840161224b565b90509250929050565b5f80604083850312156123b2575f80fd5b50508035926020909101359150565b5f5b838110156123db5781810151838201526020016123c3565b50505f910152565b5f81518084526123fa8160208601602086016123c1565b601f01601f19169290920160200192915050565b828152604060208201525f6114f660408301846123e3565b5f805f60608486031215612438575f80fd5b505081359360208301359350604090920135919050565b5f6020828403121561245f575f80fd5b5035919050565b602081525f610d8c60208301846123e3565b5f805f806060858703121561248b575f80fd5b843593506020850135925060408501356001600160401b038111156124ae575f80fd5b6124ba87828801612280565b95989497509550505050565b634e487b7160e01b5f52604160045260245ffd5b5f805f606084860312156124ec575f80fd5b833592506020840135915060408401356001600160401b0380821115612510575f80fd5b818601915086601f830112612523575f80fd5b813581811115612535576125356124c6565b604051601f8201601f19908116603f0116810190838211818310171561255d5761255d6124c6565b81604052828152896020848701011115612575575f80fd5b826020860160208301375f6020848301015280955050505050509250925092565b6001600160a01b0381168114612230575f80fd5b80358015158114612262575f80fd5b5f80604083850312156125ca575f80fd5b82356125d581612596565b9150612398602084016125aa565b5f805f606084860312156125f5575f80fd5b83359250602084013561260781612596565b9150612615604085016125aa565b90509250925092565b5f805f60608486031215612630575f80fd5b8335925060208401359150604084013561ffff8116811461264f575f80fd5b809150509250925092565b5f805f6060848603121561266c575f80fd5b833561267781612596565b925060208401359150604084013561264f81612596565b5f8083601f84011261269e575f80fd5b5081356001600160401b038111156126b4575f80fd5b6020830191508360208260051b8501011115610bae575f80fd5b5f80602083850312156126df575f80fd5b82356001600160401b038111156126f4575f80fd5b6127008582860161268e565b90969095509350505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b8281101561276157603f1988860301845261274f8583516123e3565b94509285019290850190600101612733565b5092979650505050505050565b5f806040838503121561277f575f80fd5b82359150602083013561279181612596565b809150509250929050565b5f805f604084860312156127ae575f80fd5b8335925060208401356001600160401b038111156127ca575f80fd5b6122f78682870161268e565b5f805f606084860312156127e8575f80fd5b833592506127f86020850161224b565b9150604084013561264f81612596565b5f8060408385031215612819575f80fd5b823561282481612596565b9150602083013561279181612596565b5f82516128458184602087016123c1565b9190910192915050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156105705761057061284f565b818382375f9101908152919050565b600181811c9082168061289957607f821691505b6020821081036128b757634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156114e457805f5260205f20601f840160051c810160208510156128e25750805b601f840160051c820191505b81811015611149575f81556001016128ee565b6001600160401b03831115612918576129186124c6565b61292c836129268354612885565b836128bd565b5f601f84116001811461295d575f85156129465750838201355b5f19600387901b1c1916600186901b178355611149565b5f83815260208120601f198716915b8281101561298c578685013582556020948501946001909201910161296c565b50868210156129a8575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b604081525f6129f56040830186886129ba565b8281036020840152612a088185876129ba565b979650505050505050565b634e487b7160e01b5f52603260045260245ffd5b602081525f6114f66020830184866129ba565b5f6001600160401b03808316818103612a5557612a5561284f565b6001019392505050565b81516001600160401b03811115612a7857612a786124c6565b612a8c81612a868454612885565b846128bd565b602080601f831160018114612abf575f8415612aa85750858301515b5f19600386901b1c1916600185901b178555612b16565b5f85815260208120601f198616915b82811015612aed57888601518255948401946001909101908401612ace565b5085821015612b0a57878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b604081525f612b3060408301866123e3565b8281036020840152612b438185876129ba565b9695505050505050565b5f60208284031215612b5d575f80fd5b8151610d8c81612596565b5f61ffff821680612b7b57612b7b61284f565b5f190192915050565b604081525f612b9660408301856123e3565b905061ffff831660208301529392505050565b5f61ffff808316818103612a5557612a5561284f565b606081525f612bd160608301866123e3565b61ffff851660208401528281036040840152612b4381856123e3565b808201808211156105705761057061284f565b5f808335601e19843603018112612c15575f80fd5b8301803591506001600160401b03821115612c2e575f80fd5b602001915036819003821315610bae575f80fd5b5f8085851115612c50575f80fd5b83861115612c5c575f80fd5b5050820193919092039150565b80356020831015610570575f19602084900360031b1b1692915050565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{}},"0xf3810eb7d64d1c11ae12727d957c6202b24492f5":{"nonce":1,"balance":"0x0","code":"0x6080604052348015600e575f80fd5b50600436106030575f3560e01c806350d25bcd146034578063e5c19b2d146048575b5f80fd5b5f5460405190815260200160405180910390f35b605760533660046059565b5f55565b005b5f602082840312156068575f80fd5b503591905056fea164736f6c6343000818000a","storage":{"0x0":"0x5f5e100"}},"0xf670681605efc4efc804f5a9b97ee89520473d56":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c80638da5cb5b11610088578063c66485b211610063578063c66485b2146101da578063da8c229e146101ed578063e0dba60f1461021f578063f2fde38b14610232575f80fd5b80638da5cb5b146101a4578063bffbe61c146101b4578063c47f0027146101c7575f80fd5b806365669631116100c35780636566963114610161578063715018a6146101745780637a806d6b1461017e578063828eab0e14610191575f80fd5b80630f5a5466146100e95780631e83409a1461010f5780633f15457f14610122575b5f80fd5b6100fc6100f7366004610958565b610245565b6040519081526020015b60405180910390f35b6100fc61011d36600461098f565b610258565b6101497f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a981565b6040516001600160a01b039091168152602001610106565b6100fc61016f3660046109aa565b610279565b61017c610526565b005b6100fc61018c366004610a8f565b610539565b600254610149906001600160a01b031681565b5f546001600160a01b0316610149565b6100fc6101c236600461098f565b6105ae565b6100fc6101d5366004610b00565b610608565b61017c6101e836600461098f565b610624565b61020f6101fb36600461098f565b60016020525f908152604090205460ff1681565b6040519015158152602001610106565b61017c61022d366004610b47565b6106e4565b61017c61024036600461098f565b61074a565b5f610251338484610279565b9392505050565b6002545f9061027390339084906001600160a01b0316610279565b92915050565b5f836001600160a01b0381163314806102a05750335f9081526001602052604090205460ff165b80610334575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063e985e9c590604401602060405180830381865afa158015610310573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103349190610b73565b806103435750610343816107c3565b6103e05760405162461bcd60e51b815260206004820152605b60248201527f526576657273655265676973747261723a2043616c6c6572206973206e6f742060448201527f6120636f6e74726f6c6c6572206f7220617574686f726973656420627920616460648201527f6472657373206f7220746865206164647265737320697473656c660000000000608482015260a4015b60405180910390fd5b5f6103ea8661083a565b604080517f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e2602080830191909152818301849052825180830384018152606090920192839052815191012091925081906001600160a01b038916907f6ada868dd3058cf77a48a74489fd7963688e5464b2b0fa957ace976243270e92905f90a36040516305ef2c7f60e41b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26004820152602481018390526001600160a01b03878116604483015286811660648301525f60848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610505575f80fd5b505af1158015610517573d5f803e3d5ffd5b50929998505050505050505050565b61052e61089c565b6105375f6108f5565b565b5f80610546868686610279565b604051637737221360e01b81529091506001600160a01b038516906377372213906105779084908790600401610b8e565b5f604051808303815f87803b15801561058e575f80fd5b505af11580156105a0573d5f803e3d5ffd5b509298975050505050505050565b5f7f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26105d98361083a565b604080516020810193909352820152606001604051602081830303815290604052805190602001209050919050565b6002545f9061027390339081906001600160a01b031685610539565b61062c61089c565b6001600160a01b03811661069b5760405162461bcd60e51b815260206004820152603060248201527f526576657273655265676973747261723a205265736f6c76657220616464726560448201526f07373206d757374206e6f7420626520360841b60648201526084016103d7565b600280546001600160a01b0319166001600160a01b0383169081179091556040517feae17a84d9eb83d8c8eb317f9e7d64857bc363fa51674d996c023f4340c577cf905f90a250565b6106ec61089c565b6001600160a01b0382165f81815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b61075261089c565b6001600160a01b0381166107b75760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016103d7565b6107c0816108f5565b50565b5f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801561081e575060408051601f3d908101601f1916820190925261081b91810190610be2565b60015b61082957505f919050565b6001600160a01b0316331492915050565b5f60285b8015610891575f19016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a81536010909204915f19016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a815360108304925061083e565b505060285f20919050565b5f546001600160a01b031633146105375760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016103d7565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146107c0575f80fd5b5f8060408385031215610969575f80fd5b823561097481610944565b9150602083013561098481610944565b809150509250929050565b5f6020828403121561099f575f80fd5b813561025181610944565b5f805f606084860312156109bc575f80fd5b83356109c781610944565b925060208401356109d781610944565b915060408401356109e781610944565b809150509250925092565b634e487b7160e01b5f52604160045260245ffd5b5f82601f830112610a15575f80fd5b813567ffffffffffffffff80821115610a3057610a306109f2565b604051601f8301601f19908116603f01168101908282118183101715610a5857610a586109f2565b81604052838152866020858801011115610a70575f80fd5b836020870160208301375f602085830101528094505050505092915050565b5f805f8060808587031215610aa2575f80fd5b8435610aad81610944565b93506020850135610abd81610944565b92506040850135610acd81610944565b9150606085013567ffffffffffffffff811115610ae8575f80fd5b610af487828801610a06565b91505092959194509250565b5f60208284031215610b10575f80fd5b813567ffffffffffffffff811115610b26575f80fd5b610b3284828501610a06565b949350505050565b80151581146107c0575f80fd5b5f8060408385031215610b58575f80fd5b8235610b6381610944565b9150602083013561098481610b3a565b5f60208284031215610b83575f80fd5b815161025181610b3a565b8281525f60206040602084015283518060408501525f5b81811015610bc157858101830151858201606001528201610ba5565b505f606082860101526060601f19601f830116850101925050509392505050565b5f60208284031215610bf2575f80fd5b81516102518161094456fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2":"0x9df67c91f1bfcb4d966cf764e9218685e7c59e8a","0x1f5b7623941da966ad7183d9cbb6db584f6d4add26919ac31a2d3f19a164e7e1":"0x1","0xbe5de2149ce76ca5934fa63455cd675fd52e2d30f3328985d298a627ca0f05e9":"0x1"}},"0xf8c26340c1eaea6c7ff1760b25005e1306953572":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061010b5760003560e01c80638c87a4ea116100a2578063b87abc1111610071578063b87abc1114610244578063c597407314610257578063ce92b33e1461026a578063e837ae741461027d578063ec129eea146102905761010b565b80638c87a4ea146101ea5780638f69c188146101fd578063a3557e6c14610210578063b85afd28146102235761010b565b806347c81699116100de57806347c8169914610181578063672b9f81146101945780636ccbae5f146101b55780637b103999146101d55761010b565b80631bd8cc1a146101105780631be5e7ed146101395780632c3d376d14610159578063310bd74b1461016c575b600080fd5b61012361011e3660046117b4565b6102a3565b6040516101309190611eee565b60405180910390f35b61014c610147366004611aec565b6104f2565b6040516101309190611fd6565b61014c610167366004611b21565b610673565b61017f61017a366004611b21565b610714565b005b61017f61018f3660046119b5565b6107c0565b6101a76101a2366004611b94565b6108ef565b604051610130929190611fe7565b6101c86101c3366004611b21565b6109c3565b604051610130919061204c565b6101dd6109d5565b6040516101309190611ea9565b6101236101f836600461191d565b6109e5565b61017f61020b366004611878565b610a74565b61017f61021e366004611878565b610af0565b610236610231366004611951565b610b1b565b604051610130929190611eff565b61017f610252366004611b3f565b610ca9565b61017f610265366004611a39565b610d43565b61017f610278366004611808565b610df9565b61017f61028b366004611808565b610e97565b61017f61029e366004611808565b610f4e565b60015460405163b3f9e4cb60e01b815260609183916001600160a01b039091169063b3f9e4cb906102d890849060040161204c565b60206040518083038186803b1580156102f057600080fd5b505afa158015610304573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610328919081019061178e565b6001600160a01b0316306001600160a01b0316146103615760405162461bcd60e51b81526004016103589061201c565b60405180910390fd5b604080518581526020808702820101909152849060609082801561039957816020015b60608152602001906001900390816103845790505b506000868152600360205260408120549192505b838110156104e557600087815260026020908152604080832085845290915290208989838181106103da57fe5b602002820190508035601e19368490030181126103f657600080fd5b909101602081019150356001600160401b0381111561041457600080fd5b3681900382131561042457600080fd5b604051610432929190611e70565b9081526040805160209281900383018120805460026001821615610100026000190190911604601f810185900485028301850190935282825290929091908301828280156104c15780601f10610496576101008083540402835291602001916104c1565b820191906000526020600020905b8154815290600101906020018083116104a457829003601f168201915b50505050508382815181106104d257fe5b60209081029190910101526001016103ad565b5090979650505050505050565b60015460405163b3f9e4cb60e01b815260609183916001600160a01b039091169063b3f9e4cb9061052790849060040161204c565b60206040518083038186803b15801561053f57600080fd5b505afa158015610553573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610577919081019061178e565b6001600160a01b0316306001600160a01b0316146105a75760405162461bcd60e51b81526004016103589061201c565b6000838152600260209081526040808320600383528184205484529091529081902090516105d6908690611e7d565b9081526040805160209281900383018120805460026001821615610100026000190190911604601f810185900485028301850190935282825290929091908301828280156106655780601f1061063a57610100808354040283529160200191610665565b820191906000526020600020905b81548152906001019060200180831161064857829003601f168201915b505050505091505092915050565b60008181526004602090815260409182902080548351601f60026000196101006001861615020190931692909204918201849004840281018401909452808452606093928301828280156107085780601f106106dd57610100808354040283529160200191610708565b820191906000526020600020905b8154815290600101906020018083116106eb57829003601f168201915b50505050509050919050565b60015460405163430c208160e01b815282916001600160a01b03169063430c2081906107469033908590600401611ec5565b60206040518083038186803b15801561075e57600080fd5b505afa158015610772573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506107969190810190611997565b6107b25760405162461bcd60e51b81526004016103589061202c565b6107bc4283610fec565b5050565b60015460405163430c208160e01b815282916001600160a01b03169063430c2081906107f29033908590600401611ec5565b60206040518083038186803b15801561080a57600080fd5b505afa15801561081e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506108429190810190611997565b61085e5760405162461bcd60e51b81526004016103589061202c565b6108e7600360008481526020019081526020016000205487878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061108e915050565b505050505050565b60015460405163b3f9e4cb60e01b8152606091829184916001600160a01b03169063b3f9e4cb9061092490849060040161204c565b60206040518083038186803b15801561093c57600080fd5b505afa158015610950573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610974919081019061178e565b6001600160a01b0316306001600160a01b0316146109a45760405162461bcd60e51b81526004016103589061201c565b6109ad85610673565b92506109b983856104f2565b9150509250929050565b60009081526020819052604090205490565b6001546001600160a01b03165b90565b6060600082519050606081604051908082528060200260200182016040528015610a2357816020015b6060815260200190600190039081610a0e5790505b50905060005b82811015610a6c57610a4d858281518110610a4057fe5b6020026020010151610673565b828281518110610a5957fe5b6020908102919091010152600101610a29565b509392505050565b610acf63ce92b33e60e01b858585604051602401610a9493929190611f24565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092178252519020838361129f565b600082815260036020526040902054610aea908585856113c3565b50505050565b610b1063ec129eea60e01b858585604051602401610a9493929190611f24565b610aea84848461140a565b60015460405163b3f9e4cb60e01b8152606091829184916001600160a01b03169063b3f9e4cb90610b5090849060040161204c565b60206040518083038186803b158015610b6857600080fd5b505afa158015610b7c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610ba0919081019061178e565b6001600160a01b0316306001600160a01b031614610bd05760405162461bcd60e51b81526004016103589061201c565b8451604080518281526020808402820101909152818015610c0557816020015b6060815260200190600190039081610bf05790505b50935080604051908082528060200260200182016040528015610c3c57816020015b6060815260200190600190039081610c275790505b50925060005b81811015610c9f57610c67878281518110610c5957fe5b6020026020010151876108ef565b8651879084908110610c7557fe5b60200260200101868481518110610c8857fe5b602090810291909101019190915252600101610c42565b5050509250929050565b610d3463310bd74b60e01b84604051602401610cc5919061204c565b60408051601f19818403018152918152602080830180516001600160e01b03166001600160e01b031990951694909417845291519092208251601f8601839004830281018301909352848352918691869086908190840183828082843760009201919091525061129f92505050565b610d3e4284610fec565b505050565b610d676347c8169960e01b8888888888604051602401610cc5959493929190611f96565b610df0600360008581526020019081526020016000205488888080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8c018190048102820181019092528a815292508a915089908190840183828082843760009201919091525089925061108e915050565b50505050505050565b60015460405163430c208160e01b815282916001600160a01b03169063430c208190610e2b9033908590600401611ec5565b60206040518083038186803b158015610e4357600080fd5b505afa158015610e57573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610e7b9190810190611997565b610acf5760405162461bcd60e51b81526004016103589061202c565b6005546040516355138f0d60e11b81526001600160a01b039091169063aa271e1a90610ec7903390600401611eb7565b60206040518083038186803b158015610edf57600080fd5b505afa158015610ef3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610f179190810190611997565b610f335760405162461bcd60e51b81526004016103589061203c565b600081815260036020526040902054610d3e908484846113c3565b60015460405163430c208160e01b815282916001600160a01b03169063430c208190610f809033908590600401611ec5565b60206040518083038186803b158015610f9857600080fd5b505afa158015610fac573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610fd09190810190611997565b610b105760405162461bcd60e51b81526004016103589061202c565b600081815260036020526040808220849055600154905163538361a760e01b81526001600160a01b039091169163538361a79161102d91859160040161205a565b600060405180830381600087803b15801561104757600080fd5b505af115801561105b573d6000803e3d6000fd5b50506040518392507f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9150600090a25050565b825160208085019190912060008381526002835260408082208883529093528281209251919290916110c1908790611e7d565b908152604051602091819003919091018120546001805463538361a760e01b84526002918316156101000260001901909216041592506001600160a01b03169063538361a7906111179086908690600401612075565b600060405180830381600087803b15801561113157600080fd5b505af1158015611145573d6000803e3d6000fd5b50505060008481526002602090815260408083208a8452909152908190209051869250611173908890611e7d565b90815260200160405180910390209080519060200190611194929190611521565b50600082815260046020526040902054600260001961010060018416150201909116046111dc57600082815260046020908152604090912086516111da92880190611521565b505b801561123157846040516111f09190611e7d565b6040518091039020837f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f86876040516112289190611fd6565b60405180910390a35b8360405161123f9190611e7d565b6040518091039020856040516112559190611e7d565b6040518091039020847f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d92888860405161128f929190611fe7565b60405180910390a4505050505050565b6000828152602081815260408083205490519092916112f59185916112e9916112ce918a913091899101611e39565b60405160208183030381529060405280519060200120611414565b9063ffffffff61144416565b90506001600160a01b0381161580159061138c575060015460405163430c208160e01b81526001600160a01b039091169063430c20819061133c9084908890600401611ee0565b60206040518083038186803b15801561135457600080fd5b505afa158015611368573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061138c9190810190611997565b6113a85760405162461bcd60e51b81526004016103589061200c565b50505060009081526020819052604090208054600101905550565b825160005b818110156108e757611402868683815181106113e057fe5b60200260200101518684815181106113f457fe5b60200260200101518661108e565b6001016113c8565b610f334282610fec565b6000816040516020016114279190611e89565b604051602081830303815290604052805190602001209050919050565b600081516041146114575750600061151b565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a082111561149d576000935050505061151b565b8060ff16601b141580156114b557508060ff16601c14155b156114c6576000935050505061151b565b600186828585604051600081526020016040526040516114e99493929190611f58565b6020604051602081039080840390855afa15801561150b573d6000803e3d6000fd5b5050506020604051035193505050505b92915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061156257805160ff191683800117855561158f565b8280016001018555821561158f579182015b8281111561158f578251825591602001919060010190611574565b5061159b92915061159f565b5090565b6109e291905b8082111561159b57600081556001016115a5565b805161151b816121a4565b60008083601f8401126115d657600080fd5b5081356001600160401b038111156115ed57600080fd5b60208301915083602082028301111561160557600080fd5b9250929050565b600082601f83011261161d57600080fd5b813561163061162b826120a9565b612083565b81815260209384019390925082018360005b8381101561166e57813586016116588882611734565b8452506020928301929190910190600101611642565b5050505092915050565b600082601f83011261168957600080fd5b813561169761162b826120a9565b915081818352602084019350602081019050838560208402820111156116bc57600080fd5b60005b8381101561166e57816116d28882611783565b84525060209283019291909101906001016116bf565b805161151b816121bb565b60008083601f84011261170557600080fd5b5081356001600160401b0381111561171c57600080fd5b60208301915083600182028301111561160557600080fd5b600082601f83011261174557600080fd5b813561175361162b826120c9565b9150808252602083016020830185838301111561176f57600080fd5b61177a83828461214b565b50505092915050565b803561151b816121c4565b6000602082840312156117a057600080fd5b60006117ac84846115b9565b949350505050565b6000806000604084860312156117c957600080fd5b83356001600160401b038111156117df57600080fd5b6117eb868287016115c4565b935093505060206117fe86828701611783565b9150509250925092565b60008060006060848603121561181d57600080fd5b83356001600160401b0381111561183357600080fd5b61183f8682870161160c565b93505060208401356001600160401b0381111561185b57600080fd5b6118678682870161160c565b92505060406117fe86828701611783565b6000806000806080858703121561188e57600080fd5b84356001600160401b038111156118a457600080fd5b6118b08782880161160c565b94505060208501356001600160401b038111156118cc57600080fd5b6118d88782880161160c565b93505060406118e987828801611783565b92505060608501356001600160401b0381111561190557600080fd5b61191187828801611734565b91505092959194509250565b60006020828403121561192f57600080fd5b81356001600160401b0381111561194557600080fd5b6117ac84828501611678565b6000806040838503121561196457600080fd5b82356001600160401b0381111561197a57600080fd5b61198685828601611678565b92505060206109b985828601611783565b6000602082840312156119a957600080fd5b60006117ac84846116e8565b6000806000806000606086880312156119cd57600080fd5b85356001600160401b038111156119e357600080fd5b6119ef888289016116f3565b955095505060208601356001600160401b03811115611a0d57600080fd5b611a19888289016116f3565b93509350506040611a2c88828901611783565b9150509295509295909350565b60008060008060008060006080888a031215611a5457600080fd5b87356001600160401b03811115611a6a57600080fd5b611a768a828b016116f3565b975097505060208801356001600160401b03811115611a9457600080fd5b611aa08a828b016116f3565b95509550506040611ab38a828b01611783565b93505060608801356001600160401b03811115611acf57600080fd5b611adb8a828b016116f3565b925092505092959891949750929550565b60008060408385031215611aff57600080fd5b82356001600160401b03811115611b1557600080fd5b61198685828601611734565b600060208284031215611b3357600080fd5b60006117ac8484611783565b600080600060408486031215611b5457600080fd5b6000611b608686611783565b93505060208401356001600160401b03811115611b7c57600080fd5b611b88868287016116f3565b92509250509250925092565b60008060408385031215611ba757600080fd5b60006119868585611783565b6000611bbf8383611ccb565b9392505050565b611bcf8161212a565b82525050565b611bcf81612108565b611bcf611bea82612108565b612183565b6000611bfa826120f6565b611c0481856120fa565b935083602082028501611c16856120f0565b8060005b85811015611c505784840389528151611c338582611bb3565b9450611c3e836120f0565b60209a909a0199925050600101611c1a565b5091979650505050505050565b611bcf816109e2565b611bcf611c72826109e2565b6109e2565b611bcf81612135565b6000611c8c83856120fa565b9350611c9983858461214b565b611ca283612194565b9093019392505050565b6000611cb88385612103565b9350611cc583858461214b565b50500190565b6000611cd6826120f6565b611ce081856120fa565b9350611cf0818560208601612157565b611ca281612194565b6000611d04826120f6565b611d0e8185612103565b9350611d1e818560208601612157565b9290920192915050565b6000611d35601c83612103565b7f19457468657265756d205369676e6564204d6573736167653a0a3332000000008152601c0192915050565b6000611d6e6011836120fa565b70494e56414c49445f5349474e415455524560781b815260200192915050565b6000611d9b601d836120fa565b7f5245534f4c5645525f44455441434845445f46524f4d5f444f4d41494e000000815260200192915050565b6000611dd4601f836120fa565b7f53454e4445525f49535f4e4f545f415050524f5645445f4f525f4f574e455200815260200192915050565b6000611e0d6014836120fa565b7329a2a72222a92fa4a9afa727aa2fa6a4a72a22a960611b815260200192915050565b611bcf81612124565b6000611e458286611c66565b602082019150611e558285611bde565b601482019150611e658284611c66565b506020019392505050565b60006117ac828486611cac565b6000611bbf8284611cf9565b6000611e9482611d28565b9150611ea08284611c66565b50602001919050565b6020810161151b8284611bd5565b6020810161151b8284611bc6565b60408101611ed38285611bc6565b611bbf6020830184611c5d565b60408101611ed38285611bd5565b60208082528101611bbf8184611bef565b60408082528101611f108185611bef565b905081810360208301526117ac8184611bef565b60608082528101611f358186611bef565b90508181036020830152611f498185611bef565b90506117ac6040830184611c5d565b60808101611f668287611c5d565b611f736020830186611e30565b611f806040830185611c5d565b611f8d6060830184611c5d565b95945050505050565b60608082528101611fa8818789611c80565b90508181036020830152611fbd818587611c80565b9050611fcc6040830184611c5d565b9695505050505050565b60208082528101611bbf8184611ccb565b60408082528101611ff88185611ccb565b905081810360208301526117ac8184611ccb565b6020808252810161151b81611d61565b6020808252810161151b81611d8e565b6020808252810161151b81611dc7565b6020808252810161151b81611e00565b6020810161151b8284611c5d565b604081016120688285611c5d565b611bbf6020830184611c77565b60408101611ed38285611c5d565b6040518181016001600160401b03811182821017156120a157600080fd5b604052919050565b60006001600160401b038211156120bf57600080fd5b5060209081020190565b60006001600160401b038211156120df57600080fd5b506020601f91909101601f19160190565b60200190565b5190565b90815260200190565b919050565b600061151b82612118565b151590565b6001600160a01b031690565b60ff1690565b600061151b82612140565b600061151b826109e2565b600061151b82612108565b82818337506000910152565b60005b8381101561217257818101518382015260200161215a565b83811115610aea5750506000910152565b600061151b82600061151b8261219e565b601f01601f191690565b60601b90565b6121ad81612108565b81146121b857600080fd5b50565b6121ad81612113565b6121ad816109e256fea365627a7a723158207a1d8dfd286d14fcafd1812a4c44813691ac746a5a23fa711ac5551c9509654d6c6578706572696d656e74616cf564736f6c634300050c0040","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x5":"0x4a3c194eb88966178bfdd81744dddafed611b830"}},"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa":{"nonce":93,"balance":"0x35aac60bbae01d424b","code":"0x","storage":{}}},"best_block_number":"0x5d"} \ No newline at end of file +{"block":{"number":"0x5d","coinbase":"0x0000000000000000000000000000000000000000","timestamp":"0x664cdeb4","gas_limit":"0x6691b7","basefee":"0x1b818","difficulty":"0x0","prevrandao":"0x0000000000000000000000000000000000000000000000000000000000000000","blob_excess_gas_and_price":{"excess_blob_gas":0,"blob_gasprice":1}},"accounts":{"0x0000000000000000000000000000000000000000":{"nonce":0,"balance":"0xc968d22370860","code":"0x","storage":{}},"0x00e39a5004299871ab3b00fed5a39a715f181d02":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x66":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x67":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xd178b720229c39de617846f84cf9c8d32a63a23d","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0x0458f653495fb8d9bd0e7df468c2bf76d26c7bd9":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f7e83aee1461002d575b5f80fd5b61004061003b3660046105ba565b610054565b604051901515815260200160405180910390f35b5f601482146100a95760405162461bcd60e51b815260206004820152601860248201527f496e76616c696420736861312068617368206c656e6774680000000000000000604482015260640160405180910390fd5b5f6100ec5f85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101599050565b6bffffffffffffffffffffffff191690505f61013c87878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061018a92505050565b6bffffffffffffffffffffffff1916919091149695505050505050565b81515f90610168836014610621565b1115610172575f80fd5b5001602001516bffffffffffffffffffffffff191690565b5f6040518251602084019350604067ffffffffffffffc0600183011601600982820310600181036101bc576040820191505b50776745230100efcdab890098badcfe001032547600c3d2e1f061020d565b5f8383101561020657508082015192829003926020841015610206575f1960208590036101000a0119165b9392505050565b5f5b82811015610514576102228482896101db565b85526102328460208301896101db565b60208601526040818503106001810361024e5760808286038701535b506040830381146001810361026b57602086018051600887021790525b5060405b60808110156102f357858101603f19810151603719820151601f19830151600b198401516002911891909218189081027ffffffffefffffffefffffffefffffffefffffffefffffffefffffffefffffffe1663800000009091047c010000000100000001000000010000000100000001000000010000000116179052600c0161026f565b5060805b61014081101561037c57858101607f19810151606f19820151603f198301516017198401516004911891909218189081027ffffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffc1663400000009091047c0300000003000000030000000300000003000000030000000300000003161790526018016102f7565b50815f805f5b60508110156104ea576014810480156103b257600181146103d957600281146103fe576003811461042857610449565b600160281b8504600160501b86048118600160781b870416189350635a8279999250610449565b600160281b8504600160781b8604600160501b870418189350636ed9eba19250610449565b600160501b8504600160781b8604818117600160281b8804169116179350638f1bbcdc9250610449565b600160281b8504600160781b8604600160501b87041818935063ca62c1d692505b50601f600160bb1b8504168063ffffffe06001609b1b87041617905080840190508063ffffffff8616019050808301905080600160e01b600484028c015104019050600160a01b8102600160281b860417945050600160501b633fffffff600160521b86041663c00000006604000000000000870416170277ffffffff00ffffffff000000000000ffffffff00ffffffff8516179350600181019050610382565b5050509190910177ffffffff00ffffffff00ffffffff00ffffffff00ffffffff169060400161020f565b50600160601b63ffffffff821667ffffffff000000006101008404166bffffffff00000000000000006201000085041663ffffffff60601b630100000086041663ffffffff60801b6401000000008704161717171702945050505050919050565b5f8083601f840112610585575f80fd5b50813567ffffffffffffffff81111561059c575f80fd5b6020830191508360208285010111156105b3575f80fd5b9250929050565b5f805f80604085870312156105cd575f80fd5b843567ffffffffffffffff808211156105e4575f80fd5b6105f088838901610575565b90965094506020870135915080821115610608575f80fd5b5061061587828801610575565b95989497509550505050565b8082018082111561064057634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x06e2822b8856749ed179c77140dbc5f5a27410a4":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063de8f50a11461002d575b5f80fd5b61004061003b36600461051c565b610054565b604051901515815260200160405180910390f35b5f6060805f61009c60048b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506102e79050565b60ff1690508015610166576100f060058261ffff168c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b925061015f6101008260056105c3565b61ffff908116906005906101169085168d6105e5565b61012091906105e5565b8c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b915061021d565b6101a960058b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250929392505061038b9050565b90506101f460078261ffff168c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b925061021a6102048260076105c3565b61ffff908116906007906101169085168d6105e5565b91505b5f606061026084868a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152506103b192505050565b90925090508180156102d757506102856020825161027e91906105e5565b82906103cb565b60028b8b6040516102979291906105f8565b602060405180830381855afa1580156102b2573d5f803e3d5ffd5b5050506040513d601f19601f820116820180604052508101906102d59190610607565b145b9c9b505050505050505050505050565b5f8282815181106102fa576102fa61061e565b016020015160f81c90505b92915050565b825160609061031a8385610632565b1115610324575f80fd5b5f8267ffffffffffffffff81111561033e5761033e610645565b6040519080825280601f01601f191660200182016040528015610368576020820181803683370190505b509050602080820190868601016103808282876103ed565b509095945050505050565b81515f9061039a836002610632565b11156103a4575f80fd5b50016002015161ffff1690565b5f60606103bf838587610442565b91509150935093915050565b81515f906103da836020610632565b11156103e4575f80fd5b50016020015190565b602081106104255781518352610404602084610632565b9250610411602083610632565b915061041e6020826105e5565b90506103ed565b905182516020929092036101000a5f190180199091169116179052565b5f60605f85518551855188888860405160200161046496959493929190610686565b6040516020818303038152906040529050835167ffffffffffffffff81111561048f5761048f610645565b6040519080825280601f01601f1916602001820160405280156104b9576020820181803683370190505b50915083516020830182516020840160055afa925050935093915050565b5f8083601f8401126104e7575f80fd5b50813567ffffffffffffffff8111156104fe575f80fd5b602083019150836020828501011115610515575f80fd5b9250929050565b5f805f805f8060608789031215610531575f80fd5b863567ffffffffffffffff80821115610548575f80fd5b6105548a838b016104d7565b9098509650602089013591508082111561056c575f80fd5b6105788a838b016104d7565b90965094506040890135915080821115610590575f80fd5b5061059d89828a016104d7565b979a9699509497509295939492505050565b634e487b7160e01b5f52601160045260245ffd5b61ffff8181168382160190808211156105de576105de6105af565b5092915050565b81810381811115610305576103056105af565b818382375f9101908152919050565b5f60208284031215610617575f80fd5b5051919050565b634e487b7160e01b5f52603260045260245ffd5b80820180821115610305576103056105af565b634e487b7160e01b5f52604160045260245ffd5b5f81515f5b81811015610678576020818501810151868301520161065e565b505f93019283525090919050565b8681528560208201528460408201525f6106b56106af6106a96060850188610659565b86610659565b84610659565b9897505050505050505056fea164736f6c6343000818000a","storage":{}},"0x0712e8e819712c3bfdb098ce51c87a4ac0296fd8":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x0930ffb2c192b0c9a9dd2372cf7f2845ef39cbb6":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x65":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x66":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xbe92182cab5b84fd18b34881a0c32771e84f5b8b","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c8121905":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x107733fed96c4cd390c944a31f5425a7fb98ae5e":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x65":"0x556e73746f707061626c6520446f6d61696e7300000000000000000000000026","0x66":"0x5544000000000000000000000000000000000000000000000000000000000004","0x133":"0x68747470733a2f2f6578616d706c652e636f6d2f000000000000000000000028","0x134":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x9c74364589a7bce52d7a232f90c98b979577d9ab711dbe7e9fb985471178bff":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf29a433ca043c2d5f13825944af9d019209f338df87172c6b8012dce3044881":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf319a2ef598111826b455194189a27454a0286226eb066e1116f605e0373b37":"0x0","0x1257bbdf5bed452b3eda1d974a9839972d4d54d7fb1cde6a652e653346cc29b8":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x12c033f2252861b1bd15e9b5c71ef1cf26ca53de15eabc3b49e06f596e8755ec":"0x0","0x1348552952ac59b1c2522e84f684e36775420b449eddcdbd28f217183ed58b09":"0x0","0x149026695ebdd2bd6be0a7006aec5d10ddffbe46be181e4468980ea83c004fe9":"0x0","0x14c854a78d51371251661a408306c75d2515b5d509b295a58205e48267082bdc":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x18f06622a1abedc7bb78fcc98b2375188aef6c03b9247beee780b0b095d60285":"0x0","0x201ef5e312d372e2aeac4cf173b46ad2985127c7381f4f9acae5ebbd3a5e3861":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x2215c0abaeffcb5feae8a439b3185f8fba5dd6d97529a56c7609cd41fafdf5f1":"0x1","0x23513200931f98893f46373666c13964c7a821c5b40da7951b921629acf02735":"0x0","0x23f87654b79c6db28828f317e47d0c8deb9eaa2ea4e213fef901836c85036bf3":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x2e4566d865f2e159531492d7643e25e502917762b29082282ab9dfee8fbf54c7":"0x0","0x31fc31c15d389c5908095d314bb8b258352d51e18ac8a2f7fe15f3a0af519145":"0x0","0x3467fdbb447be3074b11c625b56e54d7ab44f3804bef205b07dd436d707d06d5":"0x0","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x62b11ad5f582a5c5d378fb310125b030042554f1","0x3cd80e7291e5f6dffa9af6eb70d47145a8fdd40acb8d09dfd0cf374e8c239b37":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x3f86c4990e663ffa5011ed38824fca68af7e0592eb22f41aebdec0ce84ee672e":"0x0","0x406aa3bf31381c8a323679af48792dfa2e7aa09dd0eb919e307dc4bf84216ff6":"0x0","0x47ce17acd30cc86e021ac7b23be8138ea767f6da503362aac5888a0679270eed":"0x0","0x4a7983c36f64e6df4d467cf706c128c273d30c24bbb172e251a5740624cc0bd3":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x4c42d98041cda7cb7d56b5d04731bd436366eb9f05c30f43671f1d1e2c0b0fa4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x55926eed7087c8cbfa1492f6d367f5e4c14c8d8cd59e2918c37184091369efb1":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x5b20f40cb5e9e634a90df9a72b516c11cc52281a4d1b7b67e672e2fe544ff22f":"0x0","0x6dac3e1cfae338e10c9c2f5000f6256d09afa83708761042001cea734f470ac1":"0x0","0x6defc32a546a6fb1b745bd1bb04e27085e94f01d7ef79587aee2c80853c43a53":"0x0","0x760b245be050a725a39b4fc089ad474a5fd40efa17101e112d30195d590779b4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x7bee59fcac76da32acb23def57eaaf959a4372a4fc180978fbd54f7a4c4b2f3d":"0x0","0x804aee9448e0b539a009ee7c6dd57e686c72e7b182e9622a42922b245a97e61e":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x825f7f8567cfd669c3beab41edff07d4aa51436123deeb0d3623b6a8fdec893c":"0x0","0x8717a3236e6a948df94444f035834fa8f7c5ee663a29f3580f3ef43ab051d6bd":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8a34e37883baf84417a33bb02eec8d1e43e363f617029800ff166614df3f112f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8bd1acdc45b63f1edf5db0b1444f1c4a6f82bf0a5a0a7231c2dd7b76a2b1e35c":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87":"0x0","0x8ed4e9fbdf86edd9f3eb1c8d4fbfc53a2eb863faf4cf5e0d2b307c0b33030091":"0x0","0x8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x90d72780b77edcd0c8daffbac0b21264679e851b734cb090e2b144eb3a28bb98":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x93fc964857984ff804a65eaceac4062669948f2b651ddc6b71373ad142bf45e0":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x9770fa903e700367e0306ab8fd70a2bb4f049417d341a2f8a2409d8d6a2218d1":"0x0","0xb1016fe231c2ed9dba8c95d2658191823b4b9ffa61a7aea530802c6b2ff27c41":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xbe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafe":"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f","0xbe7c5c707db1c91bd2c84880bb1e177b65886d295d9a62df8edfe38f8066cc81":"0x0","0xc3cd64a46de7309013ddb93a16a3024c2e46fb931e4744edf2610fb119f716f5":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xc563f9d3175978a619bae1a8175d3ea4be91d3890345085c5eb16f83b678a3d9":"0x0","0xc5b5cdb7b939f9d661f58f28c37e10cf71d45dacfea2581c88ae4a17aaf55e6e":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xd386775169d9e0716e9b5b08561984726edaa9febd0ca8e5468ecffa112078c7":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xe3b736cdcc6a09d7e3a05ffb63b11f11c91958d861443c3409d3fd863e8217bd":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xe3e5b75e3dff543bfbfe5b494e4e3243b4d9d0b3d794725cea46c28fe6be50e4":"0x0","0xe7d61626cac95282d296ee7ab5958e3e72e32eb959a7cab1d37c0f9d6d69c18a":"0x1a","0xeca5e1ccaa645ce2be97a867a1f8aeeb63ea833aeb009c0df0553b42b30c683f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf08305746cdba1d0eaa65036694838a3db122973267ffc57739d605c320c680a":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf0d566acc03395f71b37890f455d51d93197adf754ea72aba21427dc66b437df":"0x0","0xf230898ba4fe40c52f958d03013d995f822e25a5d4fae43bbdc6e92623cea0bd":"0x0","0xf245a9962043f44f4af98f9952a3bd29d91eb05418e4bb567b9de8f27e239b13":"0x0","0xf2a19ade13962e8675aecf2fbe51913877912f9e48e899806b6e06e82f9a980f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf2fab50b0b53245ddfa1bcfcdf4c73e209d6921dad704d173cf04cbbadc8e346":"0x0","0xfa6f3ee10d719cb3457d10c539ff3d77b8e56852ea62f68b2f9f85ad691ed6b4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xfff3abb219acc6ef4eed6e93a5682023229370196f352cdf3a71a88d881e3487":"0x0"}},"0x11dd97b7ca847dfb6504e61b7b9eb30f55e554a0":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a424740014610090575b600080fd5b610059610054366004610ba9565b6100b3565b6040516100669190610c98565b60405180910390f35b61008261007d366004610cab565b6101ce565b604051908152602001610066565b6100a361009e366004610ba9565b610332565b6040519015158152602001610066565b606060005a6001546040805163b3f9e4cb60e01b81529088013560048201529192506000916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561010a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061012e9190610cd9565b90506101c26101406020880188610cf6565b8260408901358561015460608c018c610d13565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8f018190048102820181019092528d815292508d91508c90819084018382808284376000920191909152506103fb92505050565b925050505b9392505050565b60025460015460405163b3f9e4cb60e01b8152600481018490526000926001600160a01b0390811692169063b3f9e4cb90602401602060405180830381865afa92505050801561023b575060408051601f3d908101601f1916820190925261023891810190610cd9565b60015b156102435790505b6001600160a01b0381163b156102c557604051636ccbae5f60e01b81526004810184905281906001600160a01b03821690636ccbae5f90602401602060405180830381865afa9250505080156102b6575060408051601f3d908101601f191682019092526102b391810190610d5a565b60015b156102c357949350505050565b505b600254604051636ccbae5f60e01b8152600481018590526001600160a01b0390911690636ccbae5f90602401602060405180830381865afa15801561030e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101c79190610d5a565b6001546040805163b3f9e4cb60e01b815290850135600482015260009182916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa158015610383573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103a79190610cd9565b90506103f26103b586610e0b565b8286868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506104d392505050565b95945050505050565b6060600080876001600160a01b0316866104178b8a898961051f565b6040516104249190610eb5565b60006040518083038160008787f1925050503d8060008114610462576040519150601f19603f3d011682016040523d82523d6000602084013e610467565b606091505b509092509050610478603f87610ed1565b5a1161048657610486610ef3565b6104c682826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506105d4565b9998505050505050505050565b60006104e084848461060d565b8015610514575060608401516020908101516001600160e01b031990811660009081529182905260409091205460e01b1615155b949350505050565b50565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036105b15760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526105c982828661074c565b979650505050505050565b606083156105e35750816101c7565b8251156105f35782518084602001fd5b8160405162461bcd60e51b81526004016105a89190610c98565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015610654573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106789190610d5a565b905060006107268660600151805190602001208688602001516040516020016106c69392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156101c2575085516101c2906001600160a01b03168286610935565b60606001600160e01b0319841663b87abc1160e01b036107cd5760008380602001905181019061077c9190610d5a565b9050848184604051602401610792929190610f09565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915291506101c79050565b6001600160e01b0319841663c597407360e01b03610859576000806000858060200190518101906107fe9190610f67565b925092509250868383838860405160240161081c9493929190610fd4565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293506101c792505050565b6001600160e01b031984166311ed383160e31b036108a85760008060008580602001905181019061088a91906110a6565b925092509250868383838860405160240161081c9493929190611157565b6001600160e01b031984166328d55f9b60e21b036101c7576000806000858060200190518101906108d991906110a6565b92509250925086838383886040516024016108f79493929190611157565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293505050509392505050565b60008060006109448585610a77565b9092509050600081600481111561095d5761095d61117c565b14801561097b5750856001600160a01b0316826001600160a01b0316145b1561098b576001925050506101c7565b600080876001600160a01b0316631626ba7e60e01b88886040516024016109b3929190610f09565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516109f19190610eb5565b600060405180830381855afa9150503d8060008114610a2c576040519150601f19603f3d011682016040523d82523d6000602084013e610a31565b606091505b5091509150818015610a44575080516020145b8015610a6b57508051630b135d3f60e11b90610a699083016020908101908401610d5a565b145b98975050505050505050565b6000808251604103610aad5760208301516040840151606085015160001a610aa187828585610abc565b94509450505050610ab5565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610af35750600090506003610ba0565b8460ff16601b14158015610b0b57508460ff16601c14155b15610b1c5750600090506004610ba0565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610b70573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610b9957600060019250925050610ba0565b9150600090505b94509492505050565b600080600060408486031215610bbe57600080fd5b833567ffffffffffffffff80821115610bd657600080fd5b9085019060808288031215610bea57600080fd5b90935060208501359080821115610c0057600080fd5b818601915086601f830112610c1457600080fd5b813581811115610c2357600080fd5b876020828501011115610c3557600080fd5b6020830194508093505050509250925092565b60005b83811015610c63578181015183820152602001610c4b565b50506000910152565b60008151808452610c84816020860160208601610c48565b601f01601f19169290920160200192915050565b6020815260006101c76020830184610c6c565b600060208284031215610cbd57600080fd5b5035919050565b6001600160a01b038116811461051c57600080fd5b600060208284031215610ceb57600080fd5b81516101c781610cc4565b600060208284031215610d0857600080fd5b81356101c781610cc4565b6000808335601e19843603018112610d2a57600080fd5b83018035915067ffffffffffffffff821115610d4557600080fd5b602001915036819003821315610ab557600080fd5b600060208284031215610d6c57600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610dac57610dac610d73565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ddb57610ddb610d73565b604052919050565b600067ffffffffffffffff821115610dfd57610dfd610d73565b50601f01601f191660200190565b600060808236031215610e1d57600080fd5b610e25610d89565b8235610e3081610cc4565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610e6057600080fd5b840136601f820112610e7157600080fd5b8035610e84610e7f82610de3565b610db2565b8181523684838501011115610e9857600080fd5b818484018583013760009181019093015250606082015292915050565b60008251610ec7818460208701610c48565b9190910192915050565b600082610eee57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b8281526040602082015260006105146040830184610c6c565b600082601f830112610f3357600080fd5b8151610f41610e7f82610de3565b818152846020838601011115610f5657600080fd5b610514826020830160208701610c48565b600080600060608486031215610f7c57600080fd5b835167ffffffffffffffff80821115610f9457600080fd5b610fa087838801610f22565b94506020860151915080821115610fb657600080fd5b50610fc386828701610f22565b925050604084015190509250925092565b608081526000610fe76080830187610c6c565b8281036020840152610ff98187610c6c565b905084604084015282810360608401526105c98185610c6c565b600082601f83011261102457600080fd5b8151602067ffffffffffffffff8083111561104157611041610d73565b8260051b611050838201610db2565b938452858101830193838101908886111561106a57600080fd5b84880192505b85831015610a6b578251848111156110885760008081fd5b6110968a87838c0101610f22565b8352509184019190840190611070565b6000806000606084860312156110bb57600080fd5b835167ffffffffffffffff808211156110d357600080fd5b6110df87838801611013565b945060208601519150808211156110f557600080fd5b50610fc386828701611013565b600081518084526020808501808196508360051b8101915082860160005b8581101561114a578284038952611138848351610c6c565b98850198935090840190600101611120565b5091979650505050505050565b60808152600061116a6080830187611102565b8281036020840152610ff98187611102565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x2":"0xf8c26340c1eaea6c7ff1760b25005e1306953572","0x1e74f978992d7d64ddac400bd4aae9eefd60fa0b8456650273f5f50148803323":"0xa3557e6c","0x23c84c23be8f829809d1b1502c647c6c59fb6b2345b163a2ca3e7d4f9855975c":"0x8f69c188","0xa0286316c9d3cb00f4f54a9f1096cefaa1748bb5a5395e7fa1563568ebb3e6c3":"0xb87abc11","0xdc138de224807be243ee38fe9e746cce5d437a256b87be90b80240e0811ad043":"0xc5974073"}},"0x145908bbcfc7b258e4d4d9a586f6e3249ae80216":{"nonce":1,"balance":"0x0","code":"0x3d5c","storage":{}},"0x17cda4e23f7237277952e075b1c48467aabfacc0":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c806368f9dab21461002d575b5f80fd5b61004061003b36600461088b565b610052565b60405190815260200160405180910390f35b5f61006f6040518060400160405280606081526020015f81525090565b61008e61007c858861090d565b61008790601061090d565b82906101d1565b506100d085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250859392505061023a9050565b5061011287878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250859392505061023a9050565b505f610120825f0151610266565b905083156101bc5760408051808201909152606081525f602090910181905282515261014c825f610650565b5061018e88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250869392505061023a9050565b505f5b848110156101ba576101a4835f8461067f565b5082516101b090610266565b9150600101610191565b505b6001600160601b031916979650505050505050565b60408051808201909152606081525f60208201526101f0602083610920565b1561021857610200602083610920565b61020b90602061093f565b610215908361090d565b91505b506020808301829052604080518085525f815283019091019052815b92915050565b60408051808201909152606081525f602082015261025f83845f0151518485516106b2565b9392505050565b5f6040518251602084019350604067ffffffffffffffc060018301160160098282031060018103610298576040820191505b50776745230100efcdab890098badcfe001032547600c3d2e1f06102e8565b5f8383101561025f5750808201519282900392602084101561025f575f1960208590036101000a0119169392505050565b5f5b828110156105ef576102fd8482896102b7565b855261030d8460208301896102b7565b6020860152604081850310600181036103295760808286038701535b506040830381146001810361034657602086018051600887021790525b5060405b60808110156103ce57858101603f19810151603719820151601f19830151600b198401516002911891909218189081027ffffffffefffffffefffffffefffffffefffffffefffffffefffffffefffffffe1663800000009091047c010000000100000001000000010000000100000001000000010000000116179052600c0161034a565b5060805b61014081101561045757858101607f19810151606f19820151603f198301516017198401516004911891909218189081027ffffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffc1663400000009091047c0300000003000000030000000300000003000000030000000300000003161790526018016103d2565b50815f805f5b60508110156105c55760148104801561048d57600181146104b457600281146104d9576003811461050357610524565b600160281b8504600160501b86048118600160781b870416189350635a8279999250610524565b600160281b8504600160781b8604600160501b870418189350636ed9eba19250610524565b600160501b8504600160781b8604818117600160281b8804169116179350638f1bbcdc9250610524565b600160281b8504600160781b8604600160501b87041818935063ca62c1d692505b50601f600160bb1b8504168063ffffffe06001609b1b87041617905080840190508063ffffffff8616019050808301905080600160e01b600484028c015104019050600160a01b8102600160281b860417945050600160501b633fffffff600160521b86041663c00000006604000000000000870416170277ffffffff00ffffffff000000000000ffffffff00ffffffff851617935060018101905061045d565b5050509190910177ffffffff00ffffffff00ffffffff00ffffffff00ffffffff16906040016102ea565b50600160601b63ffffffff821667ffffffff000000006101008404166bffffffff00000000000000006201000085041663ffffffff60601b630100000086041663ffffffff60801b6401000000008704161717171702945050505050919050565b60408051808201909152606081525f602082015282515161025f9084906001600160601b031985166014610798565b60408051808201909152606081525f60208201526106aa84846001600160601b031985166014610798565b949350505050565b60408051808201909152606081525f602082015282518211156106d3575f80fd5b60208501516106e2838661090d565b1115610715576107158561070587602001518786610700919061090d565b610813565b610710906002610952565b610829565b5f808651805187602083010193508088870111156107335787860182525b505050602084015b60208410610773578051825261075260208361090d565b915061075f60208261090d565b905061076c60208561093f565b935061073b565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b60408051808201909152606081525f602082015260208501516107bb858461090d565b11156107cf576107cf85610705868561090d565b5f6001836101000a0390508260200360080284901c93508551838682010185831982511617815250805184870111156108085783860181525b509495945050505050565b5f81831115610823575081610234565b50919050565b815161083583836101d1565b50610840838261023a565b50505050565b5f8083601f840112610856575f80fd5b50813567ffffffffffffffff81111561086d575f80fd5b602083019150836020828501011115610884575f80fd5b9250929050565b5f805f805f6060868803121561089f575f80fd5b853567ffffffffffffffff808211156108b6575f80fd5b6108c289838a01610846565b909750955060208801359150808211156108da575f80fd5b506108e788828901610846565b96999598509660400135949350505050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610234576102346108f9565b5f8261093a57634e487b7160e01b5f52601260045260245ffd5b500690565b81810381811115610234576102346108f9565b8082028115828204841417610234576102346108f956fea164736f6c6343000818000a","storage":{}},"0x19356cc2300833e690088a5a09a2044a3cc2a1e2":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x229c56b7805ab5935a883207f6a6bd5847e65aee":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106102ae5760003560e01c8063906cecc111610175578063b9998a24116100dc578063d547741f11610095578063f2fde38b1161006f578063f2fde38b14610892578063f5243bc4146108b2578063f940e385146108d2578063ffa1ad74146108f257600080fd5b8063d547741f1461083f578063d7db74c71461085f578063ec5273891461087257600080fd5b8063b9998a241461077d578063cc2a9a5b1461079d578063cc2c3fc4146107bd578063ceeb4f50146107dd578063d1f5692c146107fd578063d53913931461081d57600080fd5b8063a3a3f7f61161012e578063a3a3f7f614610690578063a3f4df7e146106b0578063a849d65c146106fd578063aa271e1a1461071d578063b0aa98c71461073d578063b3ab15fb1461075d57600080fd5b8063906cecc1146105e657806391d1485414610606578063983b2d5614610626578063986502751461064657806399e0dd7c1461065b578063a217fddf1461067b57600080fd5b80635b6fa8db11610219578063715018a6116101d2578063715018a61461054b57806371e2a6571461056057806377a2a5891461058057806381c81d35146105a05780638456cb59146105b35780638da5cb5b146105c857600080fd5b80635b6fa8db146104a35780635c975abb146104c35780635cd7e3b3146104d85780635e22cd86146104f85780635fc1964f14610518578063634486da1461053857600080fd5b80633092afd51161026b5780633092afd5146103a857806336568abe146103c85780633f41b614146103e85780633f4ba83a1461042057806351cff8d914610435578063572b6c051461045557600080fd5b806301ffc9a7146102b35780631edb948e146102e857806320c5429b1461030a578063248a9ca31461032a578063268b15ed146103685780632f2ff15d14610388575b600080fd5b3480156102bf57600080fd5b506102d36102ce366004613dc4565b610923565b60405190151581526020015b60405180910390f35b3480156102f457600080fd5b50610308610303366004613e13565b61095a565b005b34801561031657600080fd5b50610308610325366004613e3f565b610b03565b34801561033657600080fd5b5061035a610345366004613e3f565b60009081526097602052604090206001015490565b6040519081526020016102df565b34801561037457600080fd5b50610308610383366004613e99565b610c26565b34801561039457600080fd5b506103086103a3366004613f04565b610cb9565b3480156103b457600080fd5b506103086103c3366004613f34565b610ce3565b3480156103d457600080fd5b506103086103e3366004613f04565b610cf7565b3480156103f457600080fd5b5060c954610408906001600160a01b031681565b6040516001600160a01b0390911681526020016102df565b34801561042c57600080fd5b50610308610d85565b34801561044157600080fd5b50610308610450366004613f34565b610d97565b34801561046157600080fd5b506102d3610470366004613f34565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546001600160a01b0390811691161490565b3480156104af57600080fd5b5060cc54610408906001600160a01b031681565b3480156104cf57600080fd5b506102d3610e37565b3480156104e457600080fd5b506103086104f3366004613fa3565b610e4d565b34801561050457600080fd5b50610308610513366004614062565b6110b1565b34801561052457600080fd5b5061030861053336600461419c565b6112f6565b610308610546366004613f34565b61133e565b34801561055757600080fd5b50610308611401565b34801561056c57600080fd5b5061030861057b36600461419c565b611413565b34801561058c57600080fd5b5060ce54610408906001600160a01b031681565b6103086105ae366004613f34565b61145b565b3480156105bf57600080fd5b506103086114d8565b3480156105d457600080fd5b506033546001600160a01b0316610408565b3480156105f257600080fd5b5061030861060136600461423a565b6114e8565b34801561061257600080fd5b506102d3610621366004613f04565b61156e565b34801561063257600080fd5b50610308610641366004613f34565b611599565b34801561065257600080fd5b506103086115aa565b34801561066757600080fd5b50610308610676366004614295565b6115c4565b34801561068757600080fd5b5061035a600081565b34801561069c57600080fd5b506103086106ab3660046142d6565b6116ab565b3480156106bc57600080fd5b506106f0604051806040016040528060148152602001732aa7299d1026b4b73a34b7339026b0b730b3b2b960611b81525081565b6040516102df919061437c565b34801561070957600080fd5b5060cb54610408906001600160a01b031681565b34801561072957600080fd5b506102d3610738366004613f34565b6116f4565b34801561074957600080fd5b506102d3610758366004613e3f565b61170e565b34801561076957600080fd5b50610308610778366004613f34565b61176c565b34801561078957600080fd5b50610308610798366004613f34565b611796565b3480156107a957600080fd5b506103086107b836600461438f565b6117db565b3480156107c957600080fd5b5060ca54610408906001600160a01b031681565b3480156107e957600080fd5b506103086107f8366004614411565b611cd2565b34801561080957600080fd5b506103086108183660046144c6565b611d76565b34801561082957600080fd5b5061035a600080516020614ef483398151915281565b34801561084b57600080fd5b5061030861085a366004613f04565b611e2d565b61030861086d3660046144fb565b611e52565b34801561087e57600080fd5b5061030861088d366004613e3f565b611fe2565b34801561089e57600080fd5b506103086108ad366004613f34565b612054565b3480156108be57600080fd5b506103086108cd3660046145f0565b612070565b3480156108de57600080fd5b506103086108ed366004614708565b612222565b3480156108fe57600080fd5b506106f060405180604001604052806005815260200164302e352e3160d81b81525081565b60006001600160e01b03198216637965db0b60e01b148061095457506301ffc9a760e01b6001600160e01b03198316145b92915050565b61096561073861239e565b61098a5760405162461bcd60e51b815260040161098190614736565b60405180910390fd5b60c95460405163baef73e960e01b8152600481018390526000916001600160a01b03169063baef73e990602401602060405180830381865afa1580156109d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109f8919061476b565b9050806001600160401b0316600003610a235760405162461bcd60e51b815260040161098190614788565b806001600160401b0316836001600160401b031611610a905760405162461bcd60e51b815260206004820152602360248201527f4d696e74696e674d616e616765723a204558504952595f4e4f545f455854454e60448201526211115160ea1b6064820152608401610981565b60c954604051631fb9763760e11b81526001600160401b0385166004820152602481018490526001600160a01b0390911690633f72ec6e906044015b600060405180830381600087803b158015610ae657600080fd5b505af1158015610afa573d6000803e3d6000fd5b50505050505050565b610b0e61073861239e565b610b2a5760405162461bcd60e51b815260040161098190614736565b60c95460405163baef73e960e01b8152600481018390526001600160a01b039091169063baef73e990602401602060405180830381865afa158015610b73573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b97919061476b565b6001600160401b0316600003610bbf5760405162461bcd60e51b815260040161098190614788565b60c954604051637eee288d60e01b8152306004820152602481018390526001600160a01b0390911690637eee288d90604401600060405180830381600087803b158015610c0b57600080fd5b505af1158015610c1f573d6000803e3d6000fd5b5050505050565b8282828080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250610c6993508592508491506123ad565b610c71610e37565b15610c8e5760405162461bcd60e51b8152600401610981906147cb565b6060610afa610c9b61239e565b610cae88610ca98989612584565b6125b0565b8384600060016126c1565b600082815260976020526040902060010154610cd481612c15565b610cde8383612c26565b505050565b610ceb612cad565b610cf481612d26565b50565b610cff61239e565b6001600160a01b0316816001600160a01b031614610d775760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610981565b610d818282612d3e565b5050565b610d8d612cad565b610d95612dc3565b565b610d9f612cad565b6001600160a01b038116610db257600080fd5b60405147906001600160a01b0383169082156108fc029083906000818181858888f19350505050158015610dea573d6000803e3d6000fd5b50604080516001600160a01b03841681526020810183905260008183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a15050565b600080516020614ed48339815191525460ff1690565b610e5786886147f5565b8051600203610e8c57610e6b61073861239e565b610e875760405162461bcd60e51b8152600401610981906148bf565b610fd1565b6000610e9782612e6b565b60c9549092506001600160a01b0316905063430c2081610eb561239e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015610f00573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f249190614903565b80610fb3575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa158015610f7d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fa19190614903565b8015610fb35750610fb361073861239e565b610fcf5760405162461bcd60e51b815260040161098190614920565b505b610fdb87896147f5565b6000600282511015610fff5760405162461bcd60e51b81526004016109819061496f565b6110546110336000846001865161101691906149ca565b81518110611026576110266149dd565b6020026020010151612ea6565b83600081518110611046576110466149dd565b6020026020010151836123ad565b61105c610e37565b156110795760405162461bcd60e51b8152600401610981906147cb565b6110a38b6110878b8d6147f5565b6110918a8c6147f5565b61109b898b6147f5565b6000896126c1565b505050505050505050505050565b6110bb87896147f5565b80516002036110f0576110cf61073861239e565b6110eb5760405162461bcd60e51b8152600401610981906148bf565b611235565b60006110fb82612e6b565b60c9549092506001600160a01b0316905063430c208161111961239e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015611164573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111889190614903565b80611217575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa1580156111e1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112059190614903565b8015611217575061121761073861239e565b6112335760405162461bcd60e51b815260040161098190614920565b505b61123f888a6147f5565b836002825110156112625760405162461bcd60e51b81526004016109819061496f565b6112796110336000846001865161101691906149ca565b611281610e37565b1561129e5760405162461bcd60e51b8152600401610981906147cb565b60028a146112be5760405162461bcd60e51b8152600401610981906149f3565b6112e78c6112cc8c8e6147f5565b6112d68b8d6147f5565b6112e08a8c6147f5565b89896126c1565b50505050505050505050505050565b6112fe612cad565b60005b8151811015610d815761132c82828151811061131f5761131f6149dd565b6020026020010151612d26565b8061133681614a39565b915050611301565b61134961073861239e565b6113655760405162461bcd60e51b815260040161098190614736565b6001600160a01b0381166113bb5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610981565b6113c481612f5a565b6113cc6115aa565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610d81573d6000803e3d6000fd5b611409612cad565b610d956000612f72565b61141b612cad565b60005b8151811015610d815761144982828151811061143c5761143c6149dd565b6020026020010151612f5a565b8061145381614a39565b91505061141e565b61146661073861239e565b6114825760405162461bcd60e51b815260040161098190614736565b6001600160a01b0381166113c45760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610981565b6114e0612cad565b610d95612fc4565b8282828080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525061152b93508592508491506123ad565b611533610e37565b156115505760405162461bcd60e51b8152600401610981906147cb565b606061156487610cae88610ca98989612584565b5050505050505050565b60009182526097602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6115a1612cad565b610cf481612f5a565b610d95600080516020614ef48339815191526103e361239e565b6115cc612cad565b60c954604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906115fe9085908590600401614a52565b600060405180830381600087803b15801561161857600080fd5b505af115801561162c573d6000803e3d6000fd5b505060cb546001600160a01b0316159150610d8190505760cb54604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906116759085908590600401614a52565b600060405180830381600087803b15801561168f57600080fd5b505af11580156116a3573d6000803e3d6000fd5b505050505050565b6116b3612cad565b610cde83838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525085925061302c915050565b6000610954600080516020614ef48339815191528361156e565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd696020820152908101829052600090611762906060015b6040516020818303038152906040528051906020012090565b5460ff1692915050565b611774612cad565b60ce80546001600160a01b0319166001600160a01b0392909216919091179055565b61179e612cad565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e80546001600160a01b0319166001600160a01b03831617905550565b600054610100900460ff16158080156117fb5750600054600160ff909116105b806118155750303b158015611815575060005460ff166001145b6118785760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610981565b6000805460ff19166001179055801561189b576000805461ff0019166101001790555b60c980546001600160a01b03199081166001600160a01b038a81169190911790925560ca8054821689841617905560cb8054821688841617905560cc8054821687841617905560ce80549091169185169190911790556118f961314c565b611901613183565b61190a826131bc565b6119126131e3565b6040805161036081018252600661032082018181526563727970746f60d01b610340840152825282518084018452818152651dd85b1b195d60d21b602082810191909152808401919091528351808501855260018152600f60fb1b8183015283850152835180850185526003808252621b999d60ea1b82840152606085019190915284518086018652600a815269313637b1b5b1b430b4b760b11b818401526080850152845180860186526007808252663134ba31b7b4b760c91b8285015260a0860191909152855180870187528281526207070760eb1b8185015260c0860152855180870187528281526264616f60e81b8185015260e086015285518087018752828152621e9a5b60ea1b8185015261010086015285518087018752908152663837b63cb3b7b760c91b8184015261012085015284518086018652600b81526a756e73746f707061626c6560a81b81840152610140850152845180860186528381526535b632bb32b960d11b8184015261016085015284518086018652600280825261686960f01b8285015261018086019190915285518087018752848152656b726573757360d01b818501526101a086015285518087018752600580825264616e696d6560d81b828601526101c087019190915286518088018852818152646d616e676160d81b818601526101e087015286518088018852600981526862696e616e6365757360b81b8186015261020087015286518088018852818152647265616c6d60d81b818601526102208701528651808801885291825261676f60f01b82850152610240860191909152855180870187526008815267185b1d1a5b5a5cdd60c21b818501526102608601528551808701875290815264707564677960d81b81840152610280850152845180860186528381526530bab9ba34b760d11b818401526102a08501528451808601865292835265189a5d19d95d60d21b838301526102c08401929092528351808501855291825262706f6760e81b828201526102e083019190915282518084019093526004835263636c617960e01b9083015261030081019190915260005b6019811015611c5c57611c4a828260198110611c3e57611c3e6149dd565b6020020151600061302c565b80611c5481614a39565b915050611c20565b50611c8360405180604001604052806003815260200162636f6d60e81b815250600161302c565b508015610afa576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050505050565b8686868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250611d1593508592508491506123ad565b611d1d610e37565b15611d3a5760405162461bcd60e51b8152600401610981906147cb565b611d698a611d4c8b610ca98c8c612584565b611d56888a6147f5565b611d6087896147f5565b600060016126c1565b5050505050505050505050565b611d7e612cad565b60005b81811015610cde5760c9546001600160a01b03166350960239848484818110611dac57611dac6149dd565b9050602002016020810190611dc19190613f34565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401600060405180830381600087803b158015611e0257600080fd5b505af1158015611e16573d6000803e3d6000fd5b505050508080611e2590614a39565b915050611d81565b600082815260976020526040902060010154611e4881612c15565b610cde8383612d3e565b611e5c898b6147f5565b6000600282511015611e805760405162461bcd60e51b81526004016109819061496f565b611e976110336000846001865161101691906149ca565b611e9f610e37565b15611ebc5760405162461bcd60e51b8152600401610981906147cb565b60028b14611edc5760405162461bcd60e51b8152600401610981906149f3565b611f228d8d8d898960008a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061322392505050565b84341015611f725760405162461bcd60e51b815260206004820181905260248201527f4d696e74696e674d616e616765723a204e4f545f454e4f5547485f46554e44536044820152606401610981565b611f848d8d8d8d8d8d8d8c60006133e3565b843411156112e757611f9461239e565b6001600160a01b03166108fc611faa87346149ca565b6040518115909202916000818181858888f19350505050158015611fd2573d6000803e3d6000fd5b5050505050505050505050505050565b611fea612cad565b611ff38161349f565b61200f5760405162461bcd60e51b815260040161098190614a81565b600081815260cd6020526040812061202691613d76565b60405181907f0aa1aff0f830e739d86baf0e6624d6763da02f7733575e0e463886cd062dea6a90600090a250565b61205c612cad565b612065816134c5565b610cf460008261353b565b61207a8a8c6147f5565b600060028251101561209e5760405162461bcd60e51b81526004016109819061496f565b6120b56110336000846001865161101691906149ca565b6120bd610e37565b156120da5760405162461bcd60e51b8152600401610981906147cb565b60028c146120fa5760405162461bcd60e51b8152600401610981906149f3565b61213f8e8e8e8a898b8a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061322392505050565b856001600160a01b03166323b872dd61215661239e565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152306024820152604481018890526064016020604051808303816000875af11580156121a9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121cd9190614903565b6122115760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610981565b611fd28e8e8e8e8e8e8e8c8e6133e3565b61222a612cad565b6040516370a0823160e01b81523060048201526000906001600160a01b038416906370a0823190602401602060405180830381865afa158015612271573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122959190614ac3565b60405163a9059cbb60e01b81526001600160a01b038481166004830152602482018390529192509084169063a9059cbb906044016020604051808303816000875af11580156122e8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061230c9190614903565b6123505760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610981565b604080516001600160a01b0384811682526020820184905285168183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a1505050565b60006123a8613545565b905090565b6123b68361349f565b6123d25760405162461bcd60e51b815260040161098190614a81565b600083815260cf602052604090205460ff1615156001600160401b03821615151461244e5760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544c445f455850495241424c455f4d496044820152650a69a82a886960d31b6064820152608401610981565b60006124818360408051808201825260008082526020918201528151808301909252825182529182019181019190915290565b9050600a81600001511115612529576124ac6124a0826000600a61358b565b80516020909101512090565b7fb551e0305c8163b812374b8e78b577c77f226f6f10c5ad03e52699578fbc34b8036125295760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544f4b454e5f4c4142454c5f50524f4860448201526512509255115160d21b6064820152608401610981565b612532836135ca565b61257e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a204c4142454c5f494e56414c49440000006044820152606401610981565b50505050565b60608282604051602001612599929190614adc565b604051602081830303815290604052905092915050565b604080516002808252606082810190935260009190816020015b60608152602001906001900390816125ca57905050905082816000815181106125f5576125f56149dd565b602002602001018190525060cd6000858152602001908152602001600020805461261e90614b04565b80601f016020809104026020016040519081016040528092919081815260200182805461264a90614b04565b80156126975780601f1061266c57610100808354040283529160200191612697565b820191906000526020600020905b81548152906001019060200180831161267a57829003601f168201915b5050505050816001815181106126af576126af6149dd565b60209081029190910101529392505050565b60008060006126cf88612e6b565b915091508380156126e1575060028851115b8015612763575060c9546040516331a9108f60e11b8152600481018390526001600160a01b038b8116921690636352211e90602401602060405180830381865afa158015612733573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127579190614b3e565b6001600160a01b031614155b156127c35760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e616765723a20524556455253455f5245434f52445f4e60448201526913d517d0531313d5d15160b21b6064820152608401610981565b60c954604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401602060405180830381865afa15801561280c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128309190614903565b8015612921575060c9546040516331a9108f60e11b81526004810184905230916001600160a01b031690636352211e90602401602060405180830381865afa158015612880573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128a49190614b3e565b6001600160a01b03161480612921575060c95460405163d9548e5360e01b8152600481018490526001600160a01b039091169063d9548e5390602401602060405180830381865afa1580156128fd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129219190614903565b15612a12576001600160401b038516156129a35760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b15801561298a57600080fd5b505af115801561299e573d6000803e3d6000fd5b505050505b60c954604051630fb8df0360e11b81526001600160a01b0390911690631f71be06906129db908c908c908c908c908b90600401614bb0565b600060405180830381600087803b1580156129f557600080fd5b505af1158015612a09573d6000803e3d6000fd5b50505050612c09565b612a1b8261372e565b612a248861378d565b8015612a31575087516002145b8015612a4457506001600160401b038516155b15612b225760ca5488516001600160a01b039091169063c36c2125908b908b90600090612a7357612a736149dd565b602090810291909101015160cc546040516001600160e01b031960e086901b168152612aad9392916001600160a01b031690600401614c0f565b600060405180830381600087803b158015612ac757600080fd5b505af1158015612adb573d6000803e3d6000fd5b50505050600087511115612b1d5760cc54604051633a0deb9d60e21b81526001600160a01b039091169063e837ae74906129db908a908a908790600401614c44565b612c09565b60c95460405163ba5d40b760e01b81526001600160a01b039091169063ba5d40b790612b5a908c908c908c908c908b90600401614bb0565b600060405180830381600087803b158015612b7457600080fd5b505af1158015612b88573d6000803e3d6000fd5b505050506001600160401b03851615612c095760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b158015612bf057600080fd5b505af1158015612c04573d6000803e3d6000fd5b505050505b50979650505050505050565b610cf481612c2161239e565b6137e7565b612c30828261156e565b610d815760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19166001179055612c6961239e565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b612cb561239e565b6001600160a01b0316612cd06033546001600160a01b031690565b6001600160a01b031614610d955760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610981565b610cf4600080516020614ef483398151915282611e2d565b612d48828261156e565b15610d815760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19169055612d7f61239e565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612dcb610e37565b612e0e5760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881393d517d4105554d15160621b6044820152606401610981565b600080516020614ed4833981519152805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa612e4e61239e565b6040516001600160a01b03909116815260200160405180910390a1565b805160009081905b8015612ea057829150612e8c82856110166001856149ca565b925080612e9881614c7a565b915050612e73565b50915091565b60008151600003612ef95760405162461bcd60e51b815260206004820152601b60248201527f4d696e74696e674d616e616765723a204c4142454c5f454d50545900000000006044820152606401610981565b8282604051602001612f0b9190614c91565b60405160208183030381529060405280519060200120604051602001612f3b929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b610cf4600080516020614ef48339815191528261353b565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b612fcc610e37565b15612fe95760405162461bcd60e51b8152600401610981906147cb565b600080516020614ed4833981519152805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258612e4e61239e565b6000613039600084612ea6565b600081815260cd602052604090209091506130548482614cf3565b50600081815260cf602052604090819020805460ff19168415151790555181907f4fce6f6e172b04eaa80325d8e3b0180a34945000f3e214605039e8420fdf8980906130a190869061437c565b60405180910390a260c954604051634f558e7960e01b8152600481018390526001600160a01b0390911690634f558e7990602401602060405180830381865afa1580156130f2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131169190614903565b610cde5760c9546040516307befae360e51b81526001600160a01b039091169063f7df5c6090610acc9084908790600401614db2565b600054610100900460ff166131735760405162461bcd60e51b815260040161098190614dd3565b610d9561317e61239e565b612f72565b600054610100900460ff166131aa5760405162461bcd60e51b815260040161098190614dd3565b610d9560006131b761239e565b61353b565b600054610100900460ff1661179e5760405162461bcd60e51b815260040161098190614dd3565b600054610100900460ff1661320a5760405162461bcd60e51b815260040161098190614dd3565b600080516020614ed4833981519152805460ff19169055565b600061323761323287896147f5565b612e6b565b506040516bffffffffffffffffffffffff1930606090811b821660208401524660348401528b811b82166054840152606883018490526001600160c01b031960c08a901b1660888401526090830188905286901b1660b082015290915060009061331390849061330d9060c401604051602081830303815290604052805190602001206040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c8101829052600090605c01604051602081830303815290604052805190602001209050919050565b9061384b565b905061331e816116f4565b6133765760405162461bcd60e51b8152602060048201526024808201527f4d696e74696e674d616e616765723a205349474e45525f49535f4e4f545f4d49604482015263272a22a960e11b6064820152608401610981565b42866001600160401b0316116133d85760405162461bcd60e51b815260206004820152602160248201527f4d696e74696e674d616e616765723a20455850495245445f5349474e415455526044820152604560f81b6064820152608401610981565b505050505050505050565b600061342a8a6133f38a8c6147f5565b6133fd898b6147f5565b613407888a6147f5565b60008f6001600160a01b031661341b61239e565b6001600160a01b0316146126c1565b9050896001600160a01b031661343e61239e565b6001600160a01b0316827fa545b6fd3355e8d57f8c8147bafe740545bd3ea1f94bef2576a6d532a7c3b605868660405161348b9291909182526001600160a01b0316602082015260400190565b60405180910390a450505050505050505050565b600081815260cd6020526040812080548291906134bb90614b04565b9050119050919050565b6134cd612cad565b6001600160a01b0381166135325760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610981565b610cf481612f72565b610d818282612c26565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546000906001600160a01b03163303613586575060331936013560601c90565b503390565b604080518082019091526000808252602082015260405180604001604052808381526020018486602001516135c09190614e1e565b9052949350505050565b600081516000036135dd57506000919050565b60208201805160f81c603081108015906135fb575060398160ff1611155b15801561361d575060618160ff161015801561361b5750607a8160ff1611155b155b1561362c575060009392505050565b8351600181111561369a5761364e836136466001846149ca565b015160f81c90565b915060308260ff1610158015613668575060398260ff1611155b15801561368a575060618260ff16101580156136885750607a8260ff1611155b155b1561369a57506000949350505050565b60015b6136a86001836149ca565b811015613722578381015160f81c9250602d83148015906136de575060308360ff16101580156136dc575060398360ff1611155b155b80156136ff575060618360ff16101580156136fd5750607a8360ff1611155b155b156137105750600095945050505050565b8061371a81614a39565b91505061369d565b50600195945050505050565b6137378161170e565b156137845760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a20544f4b454e5f424c4f434b45440000006044820152606401610981565b610cf48161386f565b6000806137a46000846001865161101691906149ca565b60ca549091506001600160a01b0316158015906137e05750807f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f145b9392505050565b6137f1828261156e565b610d8157613809816001600160a01b031660146138f3565b6138148360206138f3565b604051602001613825929190614e31565b60408051601f198184030181529082905262461bcd60e51b82526109819160040161437c565b600080600061385a8585613a8e565b9150915061386781613ad3565b509392505050565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd6960208201529081018290526001906138ae90606001611749565b805460ff19169115159190911790556040518181527f2ce5d9351b1d590d5a066db0d2dc7602d55f092506a83a7ee8c4d78ee357d75a9060200160405180910390a150565b60606000613902836002614ea6565b61390d906002614e1e565b6001600160401b0381111561392457613924614133565b6040519080825280601f01601f19166020018201604052801561394e576020820181803683370190505b509050600360fc1b81600081518110613969576139696149dd565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110613998576139986149dd565b60200101906001600160f81b031916908160001a90535060006139bc846002614ea6565b6139c7906001614e1e565b90505b6001811115613a3f576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106139fb576139fb6149dd565b1a60f81b828281518110613a1157613a116149dd565b60200101906001600160f81b031916908160001a90535060049490941c93613a3881614c7a565b90506139ca565b5083156137e05760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610981565b6000808251604103613ac45760208301516040840151606085015160001a613ab887828585613c89565b94509450505050613acc565b506000905060025b9250929050565b6000816004811115613ae757613ae7614ebd565b03613aef5750565b6001816004811115613b0357613b03614ebd565b03613b505760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152606401610981565b6002816004811115613b6457613b64614ebd565b03613bb15760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610981565b6003816004811115613bc557613bc5614ebd565b03613c1d5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b6064820152608401610981565b6004816004811115613c3157613c31614ebd565b03610cf45760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c604482015261756560f01b6064820152608401610981565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613cc05750600090506003613d6d565b8460ff16601b14158015613cd857508460ff16601c14155b15613ce95750600090506004613d6d565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613d3d573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613d6657600060019250925050613d6d565b9150600090505b94509492505050565b508054613d8290614b04565b6000825580601f10613d92575050565b601f016020900490600052602060002090810190610cf491905b80821115613dc05760008155600101613dac565b5090565b600060208284031215613dd657600080fd5b81356001600160e01b0319811681146137e057600080fd5b6001600160401b0381168114610cf457600080fd5b8035613e0e81613dee565b919050565b60008060408385031215613e2657600080fd5b8235613e3181613dee565b946020939093013593505050565b600060208284031215613e5157600080fd5b5035919050565b60008083601f840112613e6a57600080fd5b5081356001600160401b03811115613e8157600080fd5b602083019150836020828501011115613acc57600080fd5b600080600060408486031215613eae57600080fd5b8335925060208401356001600160401b03811115613ecb57600080fd5b613ed786828701613e58565b9497909650939450505050565b6001600160a01b0381168114610cf457600080fd5b8035613e0e81613ee4565b60008060408385031215613f1757600080fd5b823591506020830135613f2981613ee4565b809150509250929050565b600060208284031215613f4657600080fd5b81356137e081613ee4565b60008083601f840112613f6357600080fd5b5081356001600160401b03811115613f7a57600080fd5b6020830191508360208260051b8501011115613acc57600080fd5b8015158114610cf457600080fd5b60008060008060008060008060a0898b031215613fbf57600080fd5b8835613fca81613ee4565b975060208901356001600160401b0380821115613fe657600080fd5b613ff28c838d01613f51565b909950975060408b013591508082111561400b57600080fd5b6140178c838d01613f51565b909750955060608b013591508082111561403057600080fd5b5061403d8b828c01613f51565b909450925050608089013561405181613f95565b809150509295985092959890939650565b600080600080600080600080600060c08a8c03121561408057600080fd5b893561408b81613ee4565b985060208a01356001600160401b03808211156140a757600080fd5b6140b38d838e01613f51565b909a50985060408c01359150808211156140cc57600080fd5b6140d88d838e01613f51565b909850965060608c01359150808211156140f157600080fd5b506140fe8c828d01613f51565b90955093505060808a013561411281613dee565b915060a08a013561412281613f95565b809150509295985092959850929598565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561417157614171614133565b604052919050565b60006001600160401b0382111561419257614192614133565b5060051b60200190565b600060208083850312156141af57600080fd5b82356001600160401b038111156141c557600080fd5b8301601f810185136141d657600080fd5b80356141e96141e482614179565b614149565b81815260059190911b8201830190838101908783111561420857600080fd5b928401925b8284101561422f57833561422081613ee4565b8252928401929084019061420d565b979650505050505050565b6000806000806060858703121561425057600080fd5b843561425b81613ee4565b93506020850135925060408501356001600160401b0381111561427d57600080fd5b61428987828801613e58565b95989497509550505050565b600080602083850312156142a857600080fd5b82356001600160401b038111156142be57600080fd5b6142ca85828601613e58565b90969095509350505050565b6000806000604084860312156142eb57600080fd5b83356001600160401b0381111561430157600080fd5b61430d86828701613e58565b909450925050602084013561432181613f95565b809150509250925092565b60005b8381101561434757818101518382015260200161432f565b50506000910152565b6000815180845261436881602086016020860161432c565b601f01601f19169290920160200192915050565b6020815260006137e06020830184614350565b60008060008060008060c087890312156143a857600080fd5b86356143b381613ee4565b955060208701356143c381613ee4565b945060408701356143d381613ee4565b935060608701356143e381613ee4565b925060808701356143f381613ee4565b915060a087013561440381613ee4565b809150509295509295509295565b60008060008060008060008060a0898b03121561442d57600080fd5b883561443881613ee4565b97506020890135965060408901356001600160401b038082111561445b57600080fd5b6144678c838d01613e58565b909850965060608b013591508082111561448057600080fd5b61448c8c838d01613f51565b909650945060808b01359150808211156144a557600080fd5b506144b28b828c01613f51565b999c989b5096995094979396929594505050565b600080602083850312156144d957600080fd5b82356001600160401b038111156144ef57600080fd5b6142ca85828601613f51565b600080600080600080600080600080600060e08c8e03121561451c57600080fd5b6145258c613ef9565b9a506001600160401b038060208e0135111561454057600080fd5b6145508e60208f01358f01613f51565b909b50995060408d013581101561456657600080fd5b6145768e60408f01358f01613f51565b909950975060608d013581101561458c57600080fd5b61459c8e60608f01358f01613f51565b90975095506145ad60808e01613e03565b945060a08d013593508060c08e013511156145c757600080fd5b506145d88d60c08e01358e01613e58565b81935080925050509295989b509295989b9093969950565b6000806000806000806000806000806000806101008d8f03121561461357600080fd5b61461c8d613ef9565b9b506001600160401b0360208e0135111561463657600080fd5b6146468e60208f01358f01613f51565b909b5099506001600160401b0360408e0135111561466357600080fd5b6146738e60408f01358f01613f51565b90995097506001600160401b0360608e0135111561469057600080fd5b6146a08e60608f01358f01613f51565b90975095506146b160808e01613e03565b94506146bf60a08e01613ef9565b935060c08d013592506001600160401b0360e08e013511156146e057600080fd5b6146f08e60e08f01358f01613e58565b81935080925050509295989b509295989b509295989b565b6000806040838503121561471b57600080fd5b823561472681613ee4565b91506020830135613f2981613ee4565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b60006020828403121561477d57600080fd5b81516137e081613dee565b60208082526023908201527f4d696e74696e674d616e616765723a20544f4b454e5f4e4f545f455850495241604082015262424c4560e81b606082015260800190565b60208082526010908201526f14185d5cd8589b194e8814105554d15160821b604082015260600190565b60006148036141e484614179565b80848252602080830192508560051b85013681111561482157600080fd5b855b818110156148b35780356001600160401b03808211156148435760008081fd5b90880190601f36818401126148585760008081fd5b82358281111561486a5761486a614133565b61487b818301601f19168801614149565b9250808352368782860101111561489457600091508182fd5b8087850188850137600090830187015250865250938201938201614823565b50919695505050505050565b60208082526024908201527f4d696e74696e674d616e616765723a2043414c4c45525f49535f4e4f545f4d49604082015263272a22a960e11b606082015260800190565b60006020828403121561491557600080fd5b81516137e081613f95565b6020808252602f908201527f4d696e74696e674d616e616765723a2053454e4445525f49535f4e4f545f415060408201526e282927ab22a22fa7a92fa7aba722a960891b606082015260800190565b60208082526025908201527f4d696e74696e674d616e616765723a204c4142454c535f4c454e4754485f42456040820152642627abaf9960d91b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b81810381811115610954576109546149b4565b634e487b7160e01b600052603260045260246000fd5b60208082526026908201527f4d696e74696e674d616e616765723a20535542444f4d41494e535f4e4f545f41604082015265131313d5d15160d21b606082015260800190565b600060018201614a4b57614a4b6149b4565b5060010190565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b60208082526022908201527f4d696e74696e674d616e616765723a20544c445f4e4f545f5245474953544552604082015261115160f21b606082015260800190565b600060208284031215614ad557600080fd5b5051919050565b6b756e732d646576746573742d60a01b81528183600c83013760009101600c01908152919050565b600181811c90821680614b1857607f821691505b602082108103614b3857634e487b7160e01b600052602260045260246000fd5b50919050565b600060208284031215614b5057600080fd5b81516137e081613ee4565b600081518084526020808501808196508360051b8101915082860160005b85811015614ba3578284038952614b91848351614350565b98850198935090840190600101614b79565b5091979650505050505050565b6001600160a01b038616815260a060208201819052600090614bd490830187614b5b565b8281036040840152614be68187614b5b565b90508281036060840152614bfa8186614b5b565b91505082151560808301529695505050505050565b600060018060a01b03808616835260606020840152614c316060840186614350565b9150808416604084015250949350505050565b606081526000614c576060830186614b5b565b8281036020840152614c698186614b5b565b915050826040830152949350505050565b600081614c8957614c896149b4565b506000190190565b60008251614ca381846020870161432c565b9190910192915050565b601f821115610cde57600081815260208120601f850160051c81016020861015614cd45750805b601f850160051c820191505b818110156116a357828155600101614ce0565b81516001600160401b03811115614d0c57614d0c614133565b614d2081614d1a8454614b04565b84614cad565b602080601f831160018114614d555760008415614d3d5750858301515b600019600386901b1c1916600185901b1785556116a3565b600085815260208120601f198616915b82811015614d8457888601518255948401946001909101908401614d65565b5085821015614da25787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b828152604060208201526000614dcb6040830184614350565b949350505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b80820180821115610954576109546149b4565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351614e6981601785016020880161432c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351614e9a81602884016020880161432c565b01602801949350505050565b8082028115828204841417610954576109546149b4565b634e487b7160e01b600052602160045260246000fdfe5496787fc1ebdfeba375028c1865f13fbb1d63c0caa356ccc1b29a80f3ebd6229f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000811000a","storage":{}},"0x24f45688d421f46cca60734bdc648ad192db0f2e":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0x1","0x97":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x12d":"0x0","0x15f":"0x5cc819c9915eadfcebd76952b8c1bc36cadd7376","0x13cf90498be59d359caa5b6092b365feab4610605d7107d1f05f8e94ac955652":"0x1","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x54563a9e1cd2dcbd0bca90d3cfa4a647e02c404a","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106102295760003560e01c8063886a69ba11610123578063cf1d21c0116100ab578063e2c49de11161006f578063e2c49de11461091d578063e3dec8fb14610932578063e43009a6146109c8578063e66f9603146109fb578063ea60c7c414610a2557610240565b8063cf1d21c014610844578063d233a3c714610859578063d547741f1461089c578063d81c8e52146108d5578063dc993a23146108ea57610240565b8063a217fddf116100f2578063a217fddf1461078a578063b4b4f63e1461079f578063bc08452b146107b4578063c4d66de8146107e7578063ca15c8731461081a57610240565b8063886a69ba146106c95780639010d07c146106de5780639173b1391461070e57806391d148541461075157610240565b80633138b6f1116101b1578063568b80b511610175578063568b80b5146105fb578063607f2d4214610610578063630fcbfb1461064e5780636cb136b0146106635780636e86b7701461069657610240565b80633138b6f1146104f55780633408e4701461050a57806336568abe1461051f5780633805550f146105585780634faa8a26146105d557610240565b80630f7e5970116101f85780630f7e59701461042357806320379ee514610438578063248a9ca31461045f5780632d0335ab146104895780632f2ff15d146104bc57610240565b806304967702146102455780630c3894bb146102765780630c53c51c146102b15780630c598220146103ea57610240565b366102405761023e610239610a58565b610a68565b005b600080fd5b34801561025157600080fd5b5061025a610b69565b604080516001600160a01b039092168252519081900360200190f35b34801561028257600080fd5b5061023e6004803603604081101561029957600080fd5b506001600160a01b0381358116916020013516610b78565b610375600480360360a08110156102c757600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156102f257600080fd5b82018360208201111561030457600080fd5b8035906020019184600183028401116401000000008311171561032657600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550508235935050506020810135906040013560ff16610cc9565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103af578181015183820152602001610397565b50505050905090810190601f1680156103dc5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156103f657600080fd5b5061023e6004803603604081101561040d57600080fd5b50803590602001356001600160a01b0316610fcc565b34801561042f57600080fd5b506103756110b9565b34801561044457600080fd5b5061044d6110d6565b60408051918252519081900360200190f35b34801561046b57600080fd5b5061044d6004803603602081101561048257600080fd5b50356110dc565b34801561049557600080fd5b5061044d600480360360208110156104ac57600080fd5b50356001600160a01b03166110f4565b3480156104c857600080fd5b5061023e600480360360408110156104df57600080fd5b50803590602001356001600160a01b031661110f565b34801561050157600080fd5b5061025a611176565b34801561051657600080fd5b5061044d611185565b34801561052b57600080fd5b5061023e6004803603604081101561054257600080fd5b50803590602001356001600160a01b0316611189565b34801561056457600080fd5b5061023e6004803603602081101561057b57600080fd5b81019060208101813564010000000081111561059657600080fd5b8201836020820111156105a857600080fd5b803590602001918460018302840111640100000000831117156105ca57600080fd5b5090925090506111ea565b61023e600480360360208110156105eb57600080fd5b50356001600160a01b03166116ec565b34801561060757600080fd5b5061044d6116f8565b34801561061c57600080fd5b5061063a6004803603602081101561063357600080fd5b503561171b565b604080519115158252519081900360200190f35b34801561065a57600080fd5b5061023e611730565b34801561066f57600080fd5b5061023e6004803603602081101561068657600080fd5b50356001600160a01b03166117d6565b3480156106a257600080fd5b5061025a600480360360208110156106b957600080fd5b50356001600160a01b031661186e565b3480156106d557600080fd5b5061044d611889565b3480156106ea57600080fd5b5061025a6004803603604081101561070157600080fd5b50803590602001356118aa565b34801561071a57600080fd5b5061023e6004803603606081101561073157600080fd5b506001600160a01b038135811691602081013590911690604001356118d1565b34801561075d57600080fd5b5061063a6004803603604081101561077457600080fd5b50803590602001356001600160a01b0316611a06565b34801561079657600080fd5b5061044d611a24565b3480156107ab57600080fd5b5061023e611a29565b3480156107c057600080fd5b5061023e600480360360208110156107d757600080fd5b50356001600160a01b0316611acf565b3480156107f357600080fd5b5061023e6004803603602081101561080a57600080fd5b50356001600160a01b0316611b67565b34801561082657600080fd5b5061044d6004803603602081101561083d57600080fd5b5035611c57565b34801561085057600080fd5b5061025a611c6e565b34801561086557600080fd5b5061023e6004803603606081101561087c57600080fd5b506001600160a01b03813581169160208101359091169060400135611c86565b3480156108a857600080fd5b5061023e600480360360408110156108bf57600080fd5b50803590602001356001600160a01b0316611de8565b3480156108e157600080fd5b5061044d611e41565b3480156108f657600080fd5b5061023e6004803603602081101561090d57600080fd5b50356001600160a01b0316611e60565b34801561092957600080fd5b5061025a611f3d565b34801561093e57600080fd5b5061023e6004803603606081101561095557600080fd5b6001600160a01b03823581169260208101359091169181019060608101604082013564010000000081111561098957600080fd5b82018360208201111561099b57600080fd5b803590602001918460018302840111640100000000831117156109bd57600080fd5b509092509050611f4c565b3480156109d457600080fd5b5061044d600480360360208110156109eb57600080fd5b50356001600160a01b0316611fe9565b348015610a0757600080fd5b5061025a60048036036020811015610a1e57600080fd5b5035611ffb565b348015610a3157600080fd5b5061025a60048036036020811015610a4857600080fd5b50356001600160a01b0316612016565b6000610a62612031565b90505b90565b604080513460208083019190915282518083039091018152908201909152610aa58273eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee8361208e565b7fa1829a9003092132f585b6ccdd167c19fe9774dbdea4260287e8a8e8ca8185d7546000908152600260205260408082205490516001600160a01b039091169034908381818185875af1925050503d8060008114610b1f576040519150601f19603f3d011682016040523d82523d6000602084013e610b24565b606091505b5050905080610b645760405162461bcd60e51b815260040180806020018281038252602781526020018061419d6027913960400191505060405180910390fd5b505050565b6009546001600160a01b031681565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020610ba981610ba4610a58565b611a06565b600a90610c495760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b820191906000526020600020905b815481529060010190602001808311610c1d57829003601f168201915b50509250505060405180910390fd5b506001600160a01b03808416600081815260036020908152604080832080546001600160a01b0319908116909155948716808452600483528184208054909616909555838352600590915280822082905551909291907f9e651a8866fbea043e911d816ec254b0e3c992c06fff32d605e72362d6023bd9908490a4505050565b6060610cd3613e2a565b50604080516060810182526001600160a01b0388166000818152600c602090815290849020548352820152908101869052610d118782878787612508565b610d4c5760405162461bcd60e51b81526004018080602001828103825260218152602001806141c46021913960400191505060405180910390fd5b6001600160a01b0387166000908152600c6020526040902054610d7690600163ffffffff6125e516565b6001600160a01b0388166000818152600c602090815260408083209490945583519283523383820181905260609484018581528b51958501959095528a517f5845892132946850460bff5a0083f71031bc5bf9aadcd40f1de79423eac9b10b958d9592948d94919260808501928601918190849084905b83811015610e05578181015183820152602001610ded565b50505050905090810190601f168015610e325780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a160006060306001600160a01b0316888a6040516020018083805190602001908083835b60208310610e835780518252601f199092019160209182019101610e64565b6001836020036101000a038019825116818451168082178552505050505050905001826001600160a01b03166001600160a01b031660601b8152601401925050506040516020818303038152906040526040518082805190602001908083835b60208310610f025780518252601f199092019160209182019101610ee3565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610f64576040519150601f19603f3d011682016040523d82523d6000602084013e610f69565b606091505b509150915081610fc0576040805162461bcd60e51b815260206004820152601c60248201527f46756e6374696f6e2063616c6c206e6f74207375636365737366756c00000000604482015290519081900360640190fd5b98975050505050505050565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020610ff881610ba4610a58565b600a9061105e5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5060008381526002602052604080822080546001600160a01b0319166001600160a01b0386169081179091559051909185917f8643692ae1c12ec91fa18e50b82ed93fa314f580999a236824db6de9ae0d839b9190a3505050565b604051806040016040528060018152602001603160f81b81525081565b600b5490565b6000818152600160205260409020600201545b919050565b6001600160a01b03166000908152600c602052604090205490565b60008281526001602052604090206002015461112d90610ba4610a58565b6111685760405162461bcd60e51b815260040180806020018281038252602f815260200180613f78602f913960400191505060405180910390fd5b611172828261263f565b5050565b6008546001600160a01b031690565b4690565b611191610a58565b6001600160a01b0316816001600160a01b0316146111e05760405162461bcd60e51b815260040180806020018281038252602f815260200180614286602f913960400191505060405180910390fd5b61117282826126ae565b606061123361122e84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061271d92505050565b612798565b905060006112548260028151811061124757fe5b602002602001015161291a565b6112796112748460088151811061126757fe5b6020026020010151612a62565b612b2c565b6112898460098151811061124757fe5b6040516020018084815260200183805190602001908083835b602083106112c15780518252601f1990920191602091820191016112a2565b51815160209384036101000a6000190180199092169116179052920193845250604080518085038152938201815283519382019390932060008181526006909252929020549194505060ff1615915061134d90505760405162461bcd60e51b81526004018080602001828103825260288152602001806142096028913960400191505060405180910390fd5b6000818152600660208190526040909120805460ff19166001179055825160609161138a9161122e9161138591879190811061126757fe5b61271d565b9050611394613e54565b6113b1826003815181106113a457fe5b6020026020010151612798565b6113c18560098151811061124757fe5b815181106113cb57fe5b6020026020010151905060006113fc6113e383612798565b6000815181106113ef57fe5b6020026020010151612c9f565b6001600160a01b0380821660009081526004602052604090205491925016806114565760405162461bcd60e51b81526004018080602001828103825260228152602001806140af6022913960400191505060405180910390fd5b6001600160a01b03808216600090815260056020908152604080832054835260029091529020548751911690611493908890600890811061124757fe5b63ffffffff1916156114d65760405162461bcd60e51b815260040180806020018281038252602581526020018061408a6025913960400191505060405180910390fd5b61151e6114e98860068151811061126757fe5b6114f98960088151811061126757fe5b6115098a60078151811061126757fe5b6115198b60058151811061124757fe5b612d2f565b61156f576040805162461bcd60e51b815260206004820152601f60248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f50524f4f4600604482015290519081900360640190fd5b6115dd6115828860028151811061124757fe5b6115928960038151811061124757fe5b6115a28a60048151811061124757fe5b60001b6115b58b60058151811061124757fe5b60001b6115c88c60008151811061124757fe5b6115d88d60018151811061126757fe5b612f76565b50806001600160a01b0316638274664f6115f5610a58565b846115ff886130bf565b6040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561167b578181015183820152602001611663565b50505050905090810190601f1680156116a85780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b1580156116c957600080fd5b505af11580156116dd573d6000803e3d6000fd5b50505050505050505050505050565b6116f581610a68565b50565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b01902081565b60066020526000908152604090205460ff1681565b600061173e81610ba4610a58565b600a906117a45760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506116f56040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b81525061312d565b60006117e481610ba4610a58565b600a9061184a5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5050600780546001600160a01b0319166001600160a01b0392909216919091179055565b6004602052600090815260409020546001600160a01b031681565b604080516826a0a82faa27a5a2a760b91b8152905190819003600901902081565b60008281526001602052604081206118c8908363ffffffff6131e916565b90505b92915050565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b0190206118fd81610ba4610a58565b600a906119635760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b03848116600090815260036020526040902054161580156119a457506001600160a01b0383811660009081526004602052604090205416155b6119f5576040805162461bcd60e51b815260206004820181905260248201527f526f6f74436861696e4d616e616765723a20414c52454144595f4d4150504544604482015290519081900360640190fd5b611a008484846131f5565b50505050565b60008281526001602052604081206118c8908363ffffffff61348416565b600081565b6000611a3781610ba4610a58565b600a90611a9d5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506116f56040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613499565b6000611add81610ba4610a58565b600a90611b435760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5050600880546001600160a01b0319166001600160a01b0392909216919091179055565b60005460ff1615611bb0576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b611be16040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613537565b611c126040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613499565b611c1d600082611168565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020611c479082611168565b506000805460ff19166001179055565b60008181526001602052604081206118cb90613589565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020611cb281610ba4610a58565b600a90611d185760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b0380851660009081526003602081815260408084205488861685526004835281852054861680865293909252909220549183169290911615611d8e576001600160a01b038116600090815260036020908152604080832080546001600160a01b031916905560059091528120555b6001600160a01b038281166000908152600460205260409020541615611dd5576001600160a01b038216600090815260046020526040902080546001600160a01b03191690555b611de08686866131f5565b505050505050565b600082815260016020526040902060020154611e0690610ba4610a58565b6111e05760405162461bcd60e51b81526004018080602001828103825260308152602001806140f96030913960400191505060405180910390fd5b604080516611115413d4d25560ca1b8152905190819003600701902081565b6000611e6e81610ba4610a58565b600a90611ed45760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b038216611f1a5760405162461bcd60e51b815260040180806020018281038252602d815260200180613fa7602d913960400191505060405180910390fd5b50600980546001600160a01b0319166001600160a01b0392909216919091179055565b6007546001600160a01b031690565b6001600160a01b03831673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee1415611fa85760405162461bcd60e51b81526004018080602001828103825260248152602001806141e56024913960400191505060405180910390fd5b611a00848484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061208e92505050565b60056020526000908152604090205481565b6002602052600090815260409020546001600160a01b031681565b6003602052600090815260409020546001600160a01b031681565b6000333014156120895760606000368080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505050503601516001600160a01b03169150610a659050565b503390565b6001600160a01b03808316600090815260056020908152604080832054600390925290912054909116158015906120c457508015155b6120ff5760405162461bcd60e51b81526004018080602001828103825260228152602001806140af6022913960400191505060405180910390fd5b6000818152600260205260409020546001600160a01b0316806121535760405162461bcd60e51b81526004018080602001828103825260248152602001806140176024913960400191505060405180910390fd5b6001600160a01b0385166121ae576040805162461bcd60e51b815260206004820152601e60248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f555345520000604482015290519081900360640190fd5b806001600160a01b031663e375b64e6121c5610a58565b8787876040518563ffffffff1660e01b815260040180856001600160a01b03166001600160a01b03168152602001846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561225c578181015183820152602001612244565b50505050905090810190601f1680156122895780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b1580156122ab57600080fd5b505af11580156122bf573d6000803e3d6000fd5b50505050606085858560405160200180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015612338578181015183820152602001612320565b50505050905090810190601f1680156123655780820380516001836020036101000a031916815260200191505b5060408051808303601f19018152828252600780546009546611115413d4d25560ca1b865284519586900390920185206020808701828152878701968752855160608901528551959d506001600160a01b039384169c506316f198319b5092909316985096508a955093608001919085019080838360005b838110156123f55781810151838201526020016123dd565b50505050905090810190601f1680156124225780820380516001836020036101000a031916815260200191505b5093505050506040516020818303038152906040526040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561249b578181015183820152602001612483565b50505050905090810190601f1680156124c85780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b1580156124e857600080fd5b505af11580156124fc573d6000803e3d6000fd5b50505050505050505050565b60006001600160a01b03861661254f5760405162461bcd60e51b81526004018080602001828103825260258152602001806141296025913960400191505060405180910390fd5b600161256261255d87613594565b613620565b83868660405160008152602001604052604051808581526020018460ff1660ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa1580156125bc573d6000803e3d6000fd5b505050602060405103516001600160a01b0316866001600160a01b031614905095945050505050565b6000828201838110156118c8576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600082815260016020526040902061265d908263ffffffff61366c16565b156111725761266a610a58565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b60008281526001602052604090206126cc908263ffffffff61368116565b15611172576126d9610a58565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612725613e54565b600082511161277b576040805162461bcd60e51b815260206004820152601f60248201527f524c505265616465723a20494e56414c49445f42595445535f4c454e47544800604482015290519081900360640190fd5b506040805180820190915281518152602082810190820152919050565b60606127a382613696565b6127f4576040805162461bcd60e51b815260206004820152601860248201527f524c505265616465723a204954454d5f4e4f545f4c4953540000000000000000604482015290519081900360640190fd5b60006127ff836136c2565b905060608167ffffffffffffffff8111801561281a57600080fd5b5060405190808252806020026020018201604052801561285457816020015b612841613e54565b8152602001906001900390816128395790505b5090506000612866856020015161374e565b855190915081146128a85760405162461bcd60e51b81526004018080602001828103825260278152602001806142316027913960400191505060405180910390fd5b60006128b786602001516137e2565b60208701510190506000805b8581101561290e576128d48361374e565b91506040518060400160405280838152602001848152508582815181106128f757fe5b6020908102919091010152918101916001016128c3565b50929695505050505050565b600061292582613696565b15612977576040805162461bcd60e51b815260206004820181905260248201527f524c505265616465723a204445434f44494e475f4c4953545f41535f55494e54604482015290519081900360640190fd5b8151602110156129ce576040805162461bcd60e51b815260206004820152601e60248201527f524c505265616465723a20494e56414c49445f55494e545f4c454e4754480000604482015290519081900360640190fd5b60006129dd836020015161374e565b83519091508114612a1f5760405162461bcd60e51b81526004018080602001828103825260278152602001806142b56027913960400191505060405180910390fd5b6000612a2e84602001516137e2565b84516020808701518301805193945091849003929190831015612a5857826020036101000a820491505b5095945050505050565b60606000612a73836020015161374e565b83519091508114612ab55760405162461bcd60e51b81526004018080602001828103825260288152602001806140d16028913960400191505060405180910390fd5b6000612ac484602001516137e2565b845190915081900360608167ffffffffffffffff81118015612ae557600080fd5b506040519080825280601f01601f191660200182016040528015612b10576020820181803683370190505b5090506000816020019050612a58848860200151018285613845565b604080516020810190915260008152815160609190156118cb57600080612b54600086613890565b60f81c90506001811480612b6b57508060ff166003145b15612bfa57600185516002020367ffffffffffffffff81118015612b8e57600080fd5b506040519080825280601f01601f191660200182016040528015612bb9576020820181803683370190505b5092506000612bc9600187613890565b90508084600081518110612bd957fe5b60200101906001600160f81b031916908160001a9053506001925050612c4b565b600285516002020367ffffffffffffffff81118015612c1857600080fd5b506040519080825280601f01601f191660200182016040528015612c43576020820181803683370190505b509250600091505b60ff82165b8351811015612c9657612c6b8360ff16820360020187613890565b848281518110612c7757fe5b60200101906001600160f81b031916908160001a905350600101612c50565b50505092915050565b6000612caa82613696565b15612ce65760405162461bcd60e51b815260040180806020018281038252602381526020018061417a6023913960400191505060405180910390fd5b8151601514612d265760405162461bcd60e51b81526004018080602001828103825260218152602001806142dc6021913960400191505060405180910390fd5b6118cb8261291a565b6000612d39613e54565b612d428461271d565b90506060612d4f82612798565b905060608085600082612d618b612b2c565b9050805160001415612d7d576000975050505050505050612f6e565b60005b8651811015612f65578151831115612da357600098505050505050505050612f6e565b612dbf878281518110612db257fe5b60200260200101516130bf565b955085805190602001208414612de057600098505050505050505050612f6e565b612def8782815181106113a457fe5b9450845160111415612eac578151831415612e4b578c80519060200120612e1c8660108151811061126757fe5b805190602001201415612e3a57600198505050505050505050612f6e565b600098505050505050505050612f6e565b6000828481518110612e5957fe5b016020015160f81c90506010811115612e7e5760009950505050505050505050612f6e565b612e9d868260ff1681518110612e9057fe5b60200260200101516138ed565b94505060019290920191612f5d565b845160021415612e3a576000612ed2612ecb8760008151811061126757fe5b848661398c565b905082518185011415612f28578d80519060200120612ef78760018151811061126757fe5b805190602001201415612f165760019950505050505050505050612f6e565b60009950505050505050505050612f6e565b80612f3f5760009950505050505050505050612f6e565b8084019350612f5486600181518110612e9057fe5b9450612f5d9050565b600101612d80565b50505050505050505b949350505050565b600854604080516320a9cea560e11b81526004810185905290516000928392839283926001600160a01b0316916341539d4a9160248083019260a0929190829003018186803b158015612fc857600080fd5b505afa158015612fdc573d6000803e3d6000fd5b505050506040513d60a0811015612ff257600080fd5b5080516020820151606090920151909450909250905061306161301b8b8463ffffffff613a6b16565b6040805160208082018f90528183018e9052606082018d905260808083018d90528351808403909101815260a0909201909252805191012090858863ffffffff613aad16565b6130b2576040805162461bcd60e51b815260206004820181905260248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f484541444552604482015290519081900360640190fd5b9998505050505050505050565b606080826000015167ffffffffffffffff811180156130dd57600080fd5b506040519080825280601f01601f191660200182016040528015613108576020820181803683370190505b50905060008160200190506131268460200151828660000151613845565b5092915050565b6040518060800160405280604f815260200161403b604f913980516020918201208251838301206040805180820190915260018152603160f81b930192909252907fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc630613198611185565b604080516020808201979097528082019590955260608501939093526001600160a01b03909116608084015260a0808401919091528151808403909101815260c090920190528051910120600b5550565b60006118c88383613c03565b6000818152600260205260409020546001600160a01b03166132485760405162461bcd60e51b815260040180806020018281038252602a815260200180613f07602a913960400191505060405180910390fd5b6001600160a01b03808416600081815260036020908152604080832080549588166001600160a01b031996871681179091558084526004835281842080549096168517909555838352600590915280822085905551849392917f9e651a8866fbea043e911d816ec254b0e3c992c06fff32d605e72362d6023bd991a4604080516001600160a01b0380861660208084019190915281861683850152606083810186905284518085038201815260808086018088526007546009546826a0a82faa27a5a2a760b91b9092528851978890036089018820888701818152898b019a8b528551968a019690965284519499918816986316f1983198939093169690958a9590949293909201919085019080838360005b8381101561337357818101518382015260200161335b565b50505050905090810190601f1680156133a05780820380516001836020036101000a031916815260200191505b5093505050506040516020818303038152906040526040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015613419578181015183820152602001613401565b50505050905090810190601f1680156134465780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b15801561346657600080fd5b505af115801561347a573d6000803e3d6000fd5b5050505050505050565b60006118c8836001600160a01b038416613c67565b806040516020018082805190602001908083835b602083106134cc5780518252601f1990920191602091820191016134ad565b51815160209384036101000a60001901801990921691161790527f3a20494e53554646494349454e545f5045524d495353494f4e530000000000009190930190815260408051808303600519018152601a909201905280516111729550600a94509201919050613e6e565b60005460ff1615613580576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b611c478161312d565b60006118cb82613c7f565b6000604051806080016040528060438152602001613fd460439139805190602001208260000151836020015184604001518051906020012060405160200180858152602001848152602001836001600160a01b03166001600160a01b03168152602001828152602001945050505050604051602081830303815290604052805190602001209050919050565b600061362a6110d6565b82604051602001808061190160f01b81525060020183815260200182815260200192505050604051602081830303815290604052805190602001209050919050565b60006118c8836001600160a01b038416613c83565b60006118c8836001600160a01b038416613ccd565b6020810151805160009190821a9060c08210156136b8576000925050506110ef565b5060019392505050565b6000806000905060006136d884602001516137e2565b602085015185519181019250015b80821015613745576136f78261374e565b820191508082111561373a5760405162461bcd60e51b815260040180806020018281038252602c81526020018061414e602c913960400191505060405180910390fd5b6001909201916136e6565b50909392505050565b80516000908190811a60808110156137695760019150613126565b60b881101561377e57607e1981019150613126565b60c08110156137ab5760b78103600185019450806020036101000a85510460018201810193505050613126565b60f88110156137c05760be1981019150613126565b60019390930151602084900360f7016101000a900490920160f5190192915050565b8051600090811a60808110156137fc5760009150506110ef565b60b8811080613817575060c08110801590613817575060f881105b156138265760019150506110ef565b60c081101561383a5760b5190190506110ef565b60f5190190506110ef565b8061384f57610b64565b5b6020811061386f578251825260209283019290910190601f1901613850565b915181516020939093036101000a6000190180199091169216919091179052565b600060028306156138c15760108260028504815181106138ac57fe5b016020015160f81c816138bb57fe5b066138e3565b60108260028504815181106138d257fe5b016020015160f81c816138e157fe5b045b60f81b9392505050565b6000806138fd836020015161374e565b8351909150811461393f5760405162461bcd60e51b815260040180806020018281038252602e815260200180614258602e913960400191505060405180910390fd5b825160211461397f5760405162461bcd60e51b8152600401808060200182810382526025815260200180613f536025913960400191505060405180910390fd5b5050602001516001015190565b600080606061399a86612b2c565b90506060815167ffffffffffffffff811180156139b657600080fd5b506040519080825280601f01601f1916602001820160405280156139e1576020820181803683370190505b509050845b82518601811015613a3b5760008782815181106139ff57fe5b602001015160f81c60f81b9050808388840381518110613a1b57fe5b60200101906001600160f81b031916908160001a905350506001016139e6565b50808051906020012082805190602001201415613a5b5781519250613a60565b600092505b509095945050505050565b60006118c883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250613d93565b60006020825181613aba57fe5b0615613b04576040805162461bcd60e51b8152602060048201526014602482015273092dcecc2d8d2c840e0e4dedecc40d8cadccee8d60631b604482015290519081900360640190fd5b60006020835181613b1157fe5b0490508060020a8510613b63576040805162461bcd60e51b81526020600482015260156024820152744c65616620696e64657820697320746f6f2062696760581b604482015290519081900360640190fd5b60008660205b85518111613bf55785810151925060028806613bb55781836040516020018083815260200182815260200192505050604051602081830303815290604052805190602001209150613be7565b828260405160200180838152602001828152602001925050506040516020818303038152906040528051906020012091505b600288049750602001613b69565b509094149695505050505050565b81546000908210613c455760405162461bcd60e51b8152600401808060200182810382526022815260200180613f316022913960400191505060405180910390fd5b826000018281548110613c5457fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000613c8f8383613c67565b613cc5575081546001818101845560008481526020808220909301849055845484825282860190935260409020919091556118cb565b5060006118cb565b60008181526001830160205260408120548015613d895783546000198083019190810190600090879083908110613d0057fe5b9060005260206000200154905080876000018481548110613d1d57fe5b600091825260208083209091019290925582815260018981019092526040902090840190558654879080613d4d57fe5b600190038181906000526020600020016000905590558660010160008781526020019081526020016000206000905560019450505050506118cb565b60009150506118cb565b60008184841115613e225760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015613de7578181015183820152602001613dcf565b50505050905090810190601f168015613e145780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60405180606001604052806000815260200160006001600160a01b03168152602001606081525090565b604051806040016040528060008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10613eaf57805160ff1916838001178555613edc565b82800160010185558215613edc579182015b82811115613edc578251825591602001919060010190613ec1565b50613ee8929150613eec565b5090565b610a6591905b80821115613ee85760008155600101613ef256fe526f6f74436861696e4d616e616765723a20544f4b454e5f545950455f4e4f545f535550504f52544544456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473524c505265616465723a20494e56414c49445f55494e545f5354524943545f4c454e475448416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e74526f6f74436861696e4d616e616765723a20494e56414c49445f4348494c445f434841494e5f414444524553534d6574615472616e73616374696f6e2875696e74323536206e6f6e63652c616464726573732066726f6d2c62797465732066756e6374696f6e5369676e617475726529526f6f74436861696e4d616e616765723a20494e56414c49445f544f4b454e5f54595045454950373132446f6d61696e28737472696e67206e616d652c737472696e672076657273696f6e2c6164647265737320766572696679696e67436f6e74726163742c627974657333322073616c7429526f6f74436861696e4d616e616765723a20494e56414c49445f4252414e43485f4d41534b526f6f74436861696e4d616e616765723a20544f4b454e5f4e4f545f4d4150504544524c505265616465723a2042595445535f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b654e61746976654d6574615472616e73616374696f6e3a20494e56414c49445f5349474e4552524c505265616465723a204e554d5f4954454d535f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a204445434f44494e475f4c4953545f41535f41444452455353526f6f74436861696e4d616e616765723a2045544845525f5452414e534645525f4641494c45445369676e657220616e64207369676e617475726520646f206e6f74206d61746368526f6f74436861696e4d616e616765723a20494e56414c49445f524f4f545f544f4b454e526f6f74436861696e4d616e616765723a20455849545f414c52454144595f50524f434553534544524c505265616465723a204c4953545f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a2055494e545f5354524943545f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66524c505265616465723a2055494e545f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a20494e56414c49445f414444524553535f4c454e475448a164736f6c6343000606000a","storage":{"0x0":"0x1","0x7":"0xe0afc4e9e03e4aa67257df7a2eca77454309789d","0x8":"0xbe5deac45dd1ca4ee18dc2d585d84d3d3cb82b0d","0x9":"0x0","0xa":"0x55","0xb":"0x2603903cfd8895fdde3da4d607d44203e86098073e351022fd12745d3436e93a","0xeb5be412f275a18f6e4d622aee4ff40b21467c926224771b782d4c095d1444b":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x162b27a30e878e20728deaa5c9814fd57ccf962b998b8733ce65749bc61c552f":"0x58a175bebc8ec21a94ea63aa5a28743945940ee6","0x1a93463c7bbb7215968307c7cd357c2009c10df2a511dd62c1189098e4f3249b":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x415fec6a4fd7706b96d3a0a30121284bc5e2b28b978c20486c9f5e20d44fc781":"0x1","0x4dc1f0160d96279adc262db20edcc15527e32cb28eda582becc5ac0bc453be34":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x5fc73aa2ab567caef8745f0709fae506c01972ffb297bd9225bc262d6e87746f":"0x1","0x6ce1cd05966f090b8daa7b2ee7f80930bbb39d19b693045725fbae5fa44fda90":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0xa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb49":"0x1","0xc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a8":"0x526f6f74436861696e4d616e616765723a20494e53554646494349454e545f50","0xc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a9":"0x45524d495353494f4e5300000000000000000000000000000000000000000000","0xd61ba0007bb57e62613f82f528c06ba46d36349cf5be567b12f878ef04849a7d":"0x1","0xf960df71fab73e593428c10f56f55e7ea46985963177def0458b97f1afec9576":"0xcf4e755f204163e9213ba8b1305036e386579ccc70731c25c62a101197811f48"}},"0x287dee389caaa49edc112888f2bcfd927b472e25":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c80634f89059e1461002d575b5f80fd5b61004061003b366004610125565b610054565b604051901515815260200160405180910390f35b5f806100985f85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101029050565b60ff1690505f811180156100f857506100f36100b5826001610191565b85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101029050565b60ff16155b9150505b92915050565b5f828281518110610115576101156101b0565b016020015160f81c905092915050565b5f8060208385031215610136575f80fd5b823567ffffffffffffffff8082111561014d575f80fd5b818501915085601f830112610160575f80fd5b81358181111561016e575f80fd5b86602082850101111561017f575f80fd5b60209290920196919550909350505050565b808201808211156100fc57634e487b7160e01b5f52601160045260245ffd5b634e487b7160e01b5f52603260045260245ffdfea164736f6c6343000818000a","storage":{}},"0x3198fc981626687f4b5bdf0fbeabb0a5e0489c03":{"nonce":1,"balance":"0x8ac7230489e80000","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0x1","0x97":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x13cf90498be59d359caa5b6092b365feab4610605d7107d1f05f8e94ac955652":"0x1","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xc2110388dd54228ae0a834119457ede938bf0b57","0x412386de53449251cbf7ce1f4c6a038bf9c0746e62d331b08ef0c3fa7d0ab672":"0x4fbf7b2f171336958be5d15ff762a5cff5363568","0x60793a5062d506d35cc8f1beda67ee5028c16bfcd9c923d5bfc439c04bd929b1":"0x6ac8f19d1e0f81147cdf2a1e53cb1f4e18417204","0x75df8b43665bf2e4996a686913c4c278ca7aed85444740ca40355b1c9a94b504":"0x1","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xf851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004":"0xc965345edac823d56812cd20a10316233916a605"}},"0x39a27956b78d00a4e00ea8833ff0947410a2933f":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xc9":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0xca":"0x4a3c194eb88966178bfdd81744dddafed611b830","0xcb":"0x4872cc1be60a9db9c880a0a437da7a6af134f08f","0xcc":"0xf8c26340c1eaea6c7ff1760b25005e1306953572","0xce":"0xce4bb7dc1eb9dce75743de6a4b48534fd427ef51","0xc6892776bb3da1e1199a03e0d3131aea089754b59c557b750c478ebc85ccaa":"0x6e66740000000000000000000000000000000000000000000000000000000006","0x6cb37a6d512a1e227e627eddc133023e6d00bfedff31a600abb75aa93e9a4a0":"0x6b7265737573000000000000000000000000000000000000000000000000000c","0x8e966fe8b9b43d48017ba1eb562ced91049de778396aaa438773698b3fa8fb6":"0x0","0x94a32b1c7b189ce7293f7ae444cdcab6800d858454022d15355d5ecc5b32b26":"0x0","0xa4b2d73a9f36ca5eed107f7c3d2ba877fb7537d447256726bcde9bac9e9aaee":"0x0","0xe0e3ab102c26f13da20123aa517b31e99cf65b7b720ba0dd7138012fd23eff2":"0x0","0x1203b5e51c7d5be6da42b83f22878d3583e53123857d27fc3cff3df46fb9126c":"0x0","0x13477730039a04f4290adf0e48e98b233579c040281545e4446ce662ba56a9be":"0x7800000000000000000000000000000000000000000000000000000000000002","0x1e06d49ce7b00846691778f302e94a3ac9c2633d745ebe73d68353c941e68dee":"0x626974636f696e0000000000000000000000000000000000000000000000000e","0x1e99199375610ffe00d28ee5827c616cf6469be3de2a2f738d955eb6b62127e8":"0x1","0x21e80eded1b2e1c5d976c85e89dde60bd4e99a8d66346af0e359ac854bceba44":"0x0","0x254d9ade81439f29723741d6ff407eab1fe03caffb042bd85e53955e41fb9792":"0x616c74696d697374000000000000000000000000000000000000000000000010","0x269db12b2cd2aeb7d5f52eda16edb1d211ccbea12da1ebfa60ed5f8f396c1d04":"0x0","0x2a3f03435eedee01de7e1c4386b04ca8469edd8df00408cd6d2b058bce1cecfa":"0x0","0x323a3cb169499006d6635c58232c8c58e23c20bf9e1d309d6b3bc6fb2c7a093d":"0x0","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x229c56b7805ab5935a883207f6a6bd5847e65aee","0x37aac864d4715a975bd45cae6be99de9f7968cf995917cc7f8192940fb62acbf":"0x0","0x3f69f26894a7ae0f7a7aa6c2d77935589dabbff6435aee960da15064dea7cd59":"0x64616f0000000000000000000000000000000000000000000000000000000006","0x467a68fda3230ce33f64703ebdbd91caccf235403282ae9fe390675ef39e9c94":"0x0","0x50ae8c017c4c1fddbe9509bd2b916f5dd9da11ddb639f2a4230322f49a41ac87":"0x1","0x5496787fc1ebdfeba375028c1865f13fbb1d63c0caa356ccc1b29a80f3ebd622":"0x0","0x576dd8d1a7b74aba0a99a213f50d74aa642a2c80bd5a854b24aac7568afea0f7":"0x626974676574000000000000000000000000000000000000000000000000000c","0x5b54338c052ce22ec334b6c5a19c4b122701c5fd4d3a2a5f5890f57050e0aafa":"0x626c6f636b636861696e00000000000000000000000000000000000000000014","0x5d9de30f0e5e02628e726fd23e310ee9e64489866fa6959825148a25d40e4c83":"0x0","0x5e2d99ab4a1a153039a4b2e068d64802da8735071a2d018ee9d04297945bed00":"0x0","0x670006c4193123492fb25db465ed52e62aff2f076289f4f1a5f167237f5e579d":"0x6d616e676100000000000000000000000000000000000000000000000000000a","0x6deac161c541001c0d79afaf7b809418785fa5ca6533d86bcf312e7213ee08fc":"0x0","0x6eaa0db35203bc0d58aff54ca630dd125b27758aa6204f7a11c0617f7c2fa776":"0x706f670000000000000000000000000000000000000000000000000000000006","0x732abe4661f55132b7f119cab9a9985be6630299dfc92870cc910f147795bc44":"0x0","0x743eb517f46c12bb593097087a972028308ce2e819a76cfb5488751f9d1ca34a":"0x7265616c6d00000000000000000000000000000000000000000000000000000a","0x750dfb39c9afc828c341e1a8e8fdca0b3914baf43303e1ef21fbfe8ec8ee016a":"0x0","0x7cbf647b96a1d1a533ea4bc3a4a8a78f166bd91e6a96afb12f063fef0e9cb960":"0x0","0x7dc972254779cfb51850c0eaccfcb71207822b3c10d4840567bec3dfbf0dff13":"0x636f6d0000000000000000000000000000000000000000000000000000000006","0x7dfa160584f41570c33e8e6c42c5314a7b45ddc162f99fd101ccc10c7b5b3dd3":"0x77616c6c6574000000000000000000000000000000000000000000000000000c","0x868a5f38a2d46181ffad442d7bc5b337b3c349a58e4979f2901786c6123b996c":"0x6b6c65766572000000000000000000000000000000000000000000000000000c","0x87b2c647061aef22ef1aba96c67f440d471dfac27e9873ff4a03793b402d32ee":"0x706f6c79676f6e0000000000000000000000000000000000000000000000000e","0x893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e":"0x7c3c91245769c8b7450ad522792dec4bd4bf797f","0x91e744007b4b3621bec7c01ea851c3f48cf196b9cc6c566a48cec8c5faac6e62":"0x0","0x92c5a28dd4caaa50e0a8370243a5c600f64349e8b03604b403cbe111b50f1f7b":"0x3838380000000000000000000000000000000000000000000000000000000006","0x947936973a3a21b10c8980e1a8939a55c7339d302161884a3de05cf090e812f0":"0x1","0x9535d3ea47c5e1398d3405b4fadc73de6b1b1e6a66f674a8886ab7a6c873a390":"0x63727970746f000000000000000000000000000000000000000000000000000c","0x9956a4e94676c45844be3667f17e077c7cb53aa4e87e5a71d65e56b291232715":"0x676f000000000000000000000000000000000000000000000000000000000004","0x9c6ba1ddff1ffbc14dcdc1f97db867554a42a39e00e892c7e882dbb3dca89ebf":"0x6869000000000000000000000000000000000000000000000000000000000004","0x9f836a0f81651f597cee678b440ba8c853c633e6654809efb83d4b22aff06fb2":"0x616e696d6500000000000000000000000000000000000000000000000000000a","0x9fecf1e12f4b8ec337da992721a0f27526ddbd6be1e77885ab963c09afcf0fc1":"0x0","0xab129a0f8c6cf8d160116a28abc7369c2f8a098fc023f00f07dc3e1d5798e47a":"0x0","0xb04c0eb6f034d9a3179a4e6f953bdf8afc78ba2cdcfbc775076e1c2a0bb67818":"0x0","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xbe51b53bc2060a7a6419622b5a9adc00b50a57e6aa741882f2f60f95d4580078":"0x636c617900000000000000000000000000000000000000000000000000000008","0xbf350522e335b8ab3da1d099c93cdc09179f1e15ea6aa1acfaa4afb1ef87eabf":"0x756e73746f707061626c65000000000000000000000000000000000000000016","0xcbf7a3d53e0851ac15a415b99c2ba95a2497dd9dd44068ac261bcbdafdfe8472":"0x707564677900000000000000000000000000000000000000000000000000000a","0xcf4411216f3fdf787d1cfe037bbcfa0d5293d83a8082f8e4141266399e2a784b":"0x61757374696e000000000000000000000000000000000000000000000000000c","0xcfdbac664139565f92cce149a345e5f19355d25b3eb8a70c549d5da3283a15b8":"0x7a696c0000000000000000000000000000000000000000000000000000000006","0xcfeb64c30a93ecd7224f854b09be57bb6b3962e739fa8e3ea3a1851502474c07":"0x1","0xe03c9c593ce8661bd39f77653f7ca6c43f093aa7f3b95890f309f67b57f39e74":"0x0","0xe50c62c16d12655dfdbd61c232155e5c3a1cf61977d2d8e7449cb88611b73832":"0x0","0xeeb0b17d77f2c9069ad443f3927c0802d98d5553e52b17c985d45d4a10b79566":"0x62696e616e636575730000000000000000000000000000000000000000000012","0xf562ef0db022f25a957fb6e49aa07004f14a50ed5b23279e9ac25b4632f7bf1c":"0x0","0xf6776268d6c5847a771099280c742d684a4b22bac609ba615de51f7f893ff2bc":"0x0"}},"0x3f1194b9019002863ad0dbbe295294547c0d36a9":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100b1575f3560e01c80635b0fc9c31161006e5780635b0fc9c3146101a55780635ef2c7f0146101b8578063a22cb465146101cb578063cf408823146101de578063e985e9c5146101f1578063f79fe5381461023c575f80fd5b80630178b8bf146100b557806302571be3146100fd57806306ab59231461011057806314ab90381461013157806316a25cbd146101465780631896f70a14610192575b5f80fd5b6100e06100c3366004610785565b5f908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100e061010b366004610785565b610266565b61012361011e3660046107b7565b610292565b6040519081526020016100f4565b61014461013f366004610800565b61035f565b005b610179610154366004610785565b5f90815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100f4565b6101446101a036600461082a565b61042e565b6101446101b336600461082a565b6104ef565b6101446101c636600461084b565b61058e565b6101446101d936600461089e565b6105af565b6101446101ec3660046108d7565b61061a565b61022c6101ff366004610921565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205460ff1690565b60405190151581526020016100f4565b61022c61024a366004610785565b5f908152602081905260409020546001600160a01b0316151590565b5f818152602081905260408120546001600160a01b031630810361028c57505f92915050565b92915050565b5f8381526020819052604081205484906001600160a01b0316338114806102db57506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b6102e3575f80fd5b604080516020808201899052818301889052825180830384018152606090920190925280519101206103158186610635565b6040516001600160a01b0386168152869088907fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829060200160405180910390a39695505050505050565b5f8281526020819052604090205482906001600160a01b0316338114806103a857506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b6103b0575f80fd5b60405167ffffffffffffffff8416815284907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a250505f91825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b5f8281526020819052604090205482906001600160a01b03163381148061047757506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b61047f575f80fd5b6040516001600160a01b038416815284907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a250505f9182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b5f8281526020819052604090205482906001600160a01b03163381148061053857506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b610540575f80fd5b61054a8484610635565b6040516001600160a01b038416815284907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a250505050565b5f61059a868686610292565b90506105a7818484610662565b505050505050565b335f8181526001602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b61062484846104ef565b61062f848383610662565b50505050565b5f9182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b5f838152602081905260409020600101546001600160a01b038381169116146106e6575f838152602081815260409182902060010180546001600160a01b0319166001600160a01b038616908117909155915191825284917f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a0910160405180910390a25b5f8381526020819052604090206001015467ffffffffffffffff828116600160a01b9092041614610780575f8381526020818152604091829020600101805467ffffffffffffffff60a01b1916600160a01b67ffffffffffffffff861690810291909117909155915191825284917f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa68910160405180910390a25b505050565b5f60208284031215610795575f80fd5b5035919050565b80356001600160a01b03811681146107b2575f80fd5b919050565b5f805f606084860312156107c9575f80fd5b83359250602084013591506107e06040850161079c565b90509250925092565b803567ffffffffffffffff811681146107b2575f80fd5b5f8060408385031215610811575f80fd5b82359150610821602084016107e9565b90509250929050565b5f806040838503121561083b575f80fd5b823591506108216020840161079c565b5f805f805f60a0868803121561085f575f80fd5b85359450602086013593506108766040870161079c565b92506108846060870161079c565b9150610892608087016107e9565b90509295509295909350565b5f80604083850312156108af575f80fd5b6108b88361079c565b9150602083013580151581146108cc575f80fd5b809150509250929050565b5f805f80608085870312156108ea575f80fd5b843593506108fa6020860161079c565b92506109086040860161079c565b9150610916606086016107e9565b905092959194509250565b5f8060408385031215610932575f80fd5b61093b8361079c565b91506108216020840161079c56fea164736f6c6343000818000a","storage":{"0xdd4f47a3b6f87903b728feed7a23273bd8de58e4fa257d37a74a5881e5d92ff":"0xf670681605efc4efc804f5a9b97ee89520473d56","0x14ce109f1cffdc11aa7355660be720f902291be09fb159b4c578958cd0f533bc":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x14ce109f1cffdc11aa7355660be720f902291be09fb159b4c578958cd0f533bd":"0x0","0x1e2c8528d7e8e90443ad0a4e37b6f2b1daed719a574ce3a0c347063e8d839d50":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1e2c8528d7e8e90443ad0a4e37b6f2b1daed719a574ce3a0c347063e8d839d51":"0x0","0x2fb4213711fd985fc1fb1ea2bfa660b0b37fd50c6c74ab531d9b54b29dd5177e":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2fb4213711fd985fc1fb1ea2bfa660b0b37fd50c6c74ab531d9b54b29dd5177f":"0x0","0x859ecef2e168dc10231b000bd53493b42bc9d944cac29d94582c1e1d43592131":"0xc965345edac823d56812cd20a10316233916a605","0x8878c6daefcfc78c7f181d00d719b4a0612dd3e65cafeb72507d15c036a9f690":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0xe4fdf45c2f8d198854f8823809c7a988eeaaa493","0xfb5568c6845cf0d5915af088a5d8ba90a5ff735e102c9a79609ef7d043f1108c":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xfb5568c6845cf0d5915af088a5d8ba90a5ff735e102c9a79609ef7d043f1108d":"0x0"}},"0x4872cc1be60a9db9c880a0a437da7a6af134f08f":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100935760003560e01c80637362d9c8116100665780637362d9c8146101285780637b1039991461014e57806399e0dd7c14610172578063bb5f747b146101e2578063d6cd94731461020857610093565b806310154bad14610098578063291d9549146100c05780633af32abf146100e65780634c5a628c14610120575b600080fd5b6100be600480360360208110156100ae57600080fd5b50356001600160a01b0316610210565b005b6100be600480360360208110156100d657600080fd5b50356001600160a01b0316610260565b61010c600480360360208110156100fc57600080fd5b50356001600160a01b03166102ad565b604080519115158252519081900360200190f35b6100be6102c6565b6100be6004803603602081101561013e57600080fd5b50356001600160a01b03166102d1565b61015661031e565b604080516001600160a01b039092168252519081900360200190f35b6100be6004803603602081101561018857600080fd5b8101906020810181356401000000008111156101a357600080fd5b8201836020820111156101b557600080fd5b803590602001918460018302840111640100000000831117156101d757600080fd5b50909250905061032d565b61010c600480360360208110156101f857600080fd5b50356001600160a01b0316610404565b6100be610416565b61021933610404565b6102545760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d8161041f565b50565b61026933610404565b6102a45760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d81610467565b60006102c060018363ffffffff6104af16565b92915050565b6102cf33610516565b565b6102da33610404565b6103155760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d8161055e565b6002546001600160a01b031690565b610336336102ad565b6103715760405162461bcd60e51b815260040180806020018281038252603a815260200180610712603a913960400191505060405180910390fd5b6002546040516369426cbd60e11b8152602060048201908152602482018490526001600160a01b039092169163d284d97a91859185918190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b1580156103e857600080fd5b505af11580156103fc573d6000803e3d6000fd5b505050505050565b60006102c0818363ffffffff6104af16565b6102cf33610467565b61043060018263ffffffff6105a616565b6040516001600160a01b038216907fee1504a83b6d4a361f4c1dc78ab59bfa30d6a3b6612c403e86bb01ef2984295f90600090a250565b61047860018263ffffffff61062716565b6040516001600160a01b038216907f270d9b30cf5b0793bbfd54c9d5b94aeb49462b8148399000265144a8722da6b690600090a250565b60006001600160a01b0382166104f65760405162461bcd60e51b81526004018080602001828103825260228152602001806106b06022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b61052760008263ffffffff61062716565b6040516001600160a01b038216907f0a8eb35e5ca14b3d6f28e4abf2f128dbab231a58b56e89beb5d636115001e16590600090a250565b61056f60008263ffffffff6105a616565b6040516001600160a01b038216907f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129990600090a250565b6105b082826104af565b15610602576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b61063182826104af565b61066c5760405162461bcd60e51b815260040180806020018281038252602181526020018061068f6021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f206164647265737357686974656c69737441646d696e526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c69737441646d696e20726f6c6557686974656c6973746564526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c697374656420726f6c65a265627a7a72315820debca60946c0819dc5b5c2756c5c1dd8dd8a46f2429fa8a43a4f4362af3030c164736f6c634300050c0032","storage":{"0x2":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x5ac40fcee41fb0272a935f6e51e963102fba5db6f20e897e9361f0347eb2cae6":"0x1","0xdc4aeb95a779c8b92b845e3a94044db8ff2e43acc37da18c4b35a6bbad7c122f":"0x1"}},"0x49da8861c65460639925febe1fb4b5b59b443082":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f7e83aee1461002d575b5f80fd5b61004061003b3660046101ac565b610054565b604051901515815260200160405180910390f35b5f602082146100a95760405162461bcd60e51b815260206004820152601a60248201527f496e76616c6964207368613235362068617368206c656e677468000000000000604482015260640160405180910390fd5b6100eb5f84848080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101459050565b600286866040516100fd929190610213565b602060405180830381855afa158015610118573d5f803e3d5ffd5b5050506040513d601f19601f8201168201806040525081019061013b9190610222565b1495945050505050565b81515f90610154836020610239565b111561015e575f80fd5b50016020015190565b5f8083601f840112610177575f80fd5b50813567ffffffffffffffff81111561018e575f80fd5b6020830191508360208285010111156101a5575f80fd5b9250929050565b5f805f80604085870312156101bf575f80fd5b843567ffffffffffffffff808211156101d6575f80fd5b6101e288838901610167565b909650945060208701359150808211156101fa575f80fd5b5061020787828801610167565b95989497509550505050565b818382375f9101908152919050565b5f60208284031215610232575f80fd5b5051919050565b8082018082111561025857634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x4a3c194eb88966178bfdd81744dddafed611b830":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061009e5760003560e01c806398650275116100665780639865027514610305578063aa271e1a1461030d578063b2da297914610347578063be362e2e146103c5578063c36c2125146104fe5761009e565b80634c0b0ed2146100a35780637b103999146101595780637caf3ad81461017d5780638ad364f814610258578063983b2d56146102df575b600080fd5b610157600480360360408110156100b957600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156100e357600080fd5b8201836020820111156100f557600080fd5b803590602001918460018302840111600160201b8311171561011657600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506105bd945050505050565b005b61016161074c565b604080516001600160a01b039092168252519081900360200190f35b6101576004803603608081101561019357600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156101bd57600080fd5b8201836020820111156101cf57600080fd5b803590602001918460018302840111600160201b831117156101f057600080fd5b919390926001600160a01b0383351692604081019060200135600160201b81111561021a57600080fd5b82018360208201111561022c57600080fd5b803590602001918460018302840111600160201b8311171561024d57600080fd5b50909250905061075b565b6101576004803603606081101561026e57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561029857600080fd5b8201836020820111156102aa57600080fd5b803590602001918460018302840111600160201b831117156102cb57600080fd5b9193509150356001600160a01b0316610957565b610157600480360360208110156102f557600080fd5b50356001600160a01b0316610b2b565b610157610b7b565b6103336004803603602081101561032357600080fd5b50356001600160a01b0316610b86565b604080519115158252519081900360200190f35b6101576004803603604081101561035d57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561038757600080fd5b82018360208201111561039957600080fd5b803590602001918460018302840111600160201b831117156103ba57600080fd5b509092509050610b9e565b610157600480360360608110156103db57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561040557600080fd5b82018360208201111561041757600080fd5b803590602001918460018302840111600160201b8311171561043857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b81111561048a57600080fd5b82018360208201111561049c57600080fd5b803590602001918460018302840111600160201b831117156104bd57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610bf1945050505050565b6101576004803603606081101561051457600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561053e57600080fd5b82018360208201111561055057600080fd5b803590602001918460018302840111600160201b8311171561057157600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550505090356001600160a01b03169150610dec9050565b6105c633610b86565b6106015760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b039092169163b5466669918591849163ebf0c717916004808301926020929190829003018186803b15801561064f57600080fd5b505afa158015610663573d6000803e3d6000fd5b505050506040513d602081101561067957600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052606060448301908152875160648401528751889360840190602085019080838360005b838110156106e25781810151838201526020016106ca565b50505050905090810190601f16801561070f5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15801561073057600080fd5b505af1158015610744573d6000803e3d6000fd5b505050505050565b6001546001600160a01b031690565b6107cf8686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f89018190048102820181019092528781529250879150869081908401838280828437600092019190915250610bf192505050565b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691632525d06a91869184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b15801561082557600080fd5b505afa158015610839573d6000803e3d6000fd5b505050506040513d602081101561084f57600080fd5b5051604080516001600160e01b031960e085901b1681526004810183815260248201928352604482018d90528d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b1580156108bd57600080fd5b505afa1580156108d1573d6000803e3d6000fd5b505050506040513d60208110156108e757600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b15801561093757600080fd5b505af115801561094b573d6000803e3d6000fd5b50505050505050505050565b6109a58484848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250610bf1915050565b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691632525d06a91849184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b1580156109fb57600080fd5b505afa158015610a0f573d6000803e3d6000fd5b505050506040513d6020811015610a2557600080fd5b5051604080516001600160e01b031960e085901b1681526004810183815260248201928352604482018b90528b928b92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b158015610a9357600080fd5b505afa158015610aa7573d6000803e3d6000fd5b505050506040513d6020811015610abd57600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b158015610b0d57600080fd5b505af1158015610b21573d6000803e3d6000fd5b5050505050505050565b610b3433610b86565b610b6f5760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b610b7881611115565b50565b610b843361115d565b565b6000610b98818363ffffffff6111a516565b92915050565b610bec8383838080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250610bf1915050565b505050565b610bfa33610b86565b610c355760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691630467e014918691849163ebf0c717916004808301926020929190829003018186803b158015610c8357600080fd5b505afa158015610c97573d6000803e3d6000fd5b505050506040513d6020811015610cad57600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052608060448301908152885160848401528851899389939291606482019160a40190602087019080838360005b83811015610d1f578181015183820152602001610d07565b50505050905090810190601f168015610d4c5780820380516001836020036101000a031916815260200191505b50838103825284518152845160209182019186019080838360005b83811015610d7f578181015183820152602001610d67565b50505050905090810190601f168015610dac5780820380516001836020036101000a031916815260200191505b509650505050505050600060405180830381600087803b158015610dcf57600080fd5b505af1158015610de3573d6000803e3d6000fd5b50505050505050565b610df533610b86565b610e305760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b039092169163b5466669918691849163ebf0c717916004808301926020929190829003018186803b158015610e7e57600080fd5b505afa158015610e92573d6000803e3d6000fd5b505050506040513d6020811015610ea857600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052606060448301908152885160648401528851899360840190602085019080838360005b83811015610f11578181015183820152602001610ef9565b50505050905090810190601f168015610f3e5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015610f5f57600080fd5b505af1158015610f73573d6000803e3d6000fd5b50506001546040805163ebf0c71760e01b815290516001600160a01b039092169350632525d06a9250849184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b158015610fcd57600080fd5b505afa158015610fe1573d6000803e3d6000fd5b505050506040513d6020811015610ff757600080fd5b5051604080516001600160e01b031960e085901b16815260048101838152602482019283528a5160448301528a518b93919260640190602085019080838360005b83811015611050578181015183820152602001611038565b50505050905090810190601f16801561107d5780820380516001836020036101000a031916815260200191505b50935050505060206040518083038186803b15801561109b57600080fd5b505afa1580156110af573d6000803e3d6000fd5b505050506040513d60208110156110c557600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b158015610dcf57600080fd5b61112660008263ffffffff61120c16565b6040516001600160a01b038216907f6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f690600090a250565b61116e60008263ffffffff61128d16565b6040516001600160a01b038216907fe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb6669290600090a250565b60006001600160a01b0382166111ec5760405162461bcd60e51b81526004018080602001828103825260228152602001806113466022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b61121682826111a5565b15611268576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b61129782826111a5565b6112d25760405162461bcd60e51b81526004018080602001828103825260218152602001806113256021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe4d696e746572526f6c653a2063616c6c657220646f6573206e6f74206861766520746865204d696e74657220726f6c65526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f2061646472657373a265627a7a72315820c058d70355f7d37ff6b3b61cd850cc4a41893e30048389698c062148bf3d2ff464736f6c634300050c0032","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x789b49055833748af4eaa9affbcd84118ce8770f7e4385b5a3f428626b1f0aff":"0x1","0xdc4aeb95a779c8b92b845e3a94044db8ff2e43acc37da18c4b35a6bbad7c122f":"0x1"}},"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061007b5760003560e01c80639623609d1161004e5780639623609d1461011157806399a88ec414610124578063f2fde38b14610144578063f3b7dead1461016457600080fd5b8063204e1c7a14610080578063715018a6146100bc5780637eff275e146100d35780638da5cb5b146100f3575b600080fd5b34801561008c57600080fd5b506100a061009b366004610499565b610184565b6040516001600160a01b03909116815260200160405180910390f35b3480156100c857600080fd5b506100d1610215565b005b3480156100df57600080fd5b506100d16100ee3660046104bd565b610229565b3480156100ff57600080fd5b506000546001600160a01b03166100a0565b6100d161011f36600461050c565b610291565b34801561013057600080fd5b506100d161013f3660046104bd565b610300565b34801561015057600080fd5b506100d161015f366004610499565b610336565b34801561017057600080fd5b506100a061017f366004610499565b6103b4565b6000806000836001600160a01b03166040516101aa90635c60da1b60e01b815260040190565b600060405180830381855afa9150503d80600081146101e5576040519150601f19603f3d011682016040523d82523d6000602084013e6101ea565b606091505b5091509150816101f957600080fd5b8080602001905181019061020d91906105e2565b949350505050565b61021d6103da565b6102276000610434565b565b6102316103da565b6040516308f2839760e41b81526001600160a01b038281166004830152831690638f283970906024015b600060405180830381600087803b15801561027557600080fd5b505af1158015610289573d6000803e3d6000fd5b505050505050565b6102996103da565b60405163278f794360e11b81526001600160a01b03841690634f1ef2869034906102c990869086906004016105ff565b6000604051808303818588803b1580156102e257600080fd5b505af11580156102f6573d6000803e3d6000fd5b5050505050505050565b6103086103da565b604051631b2ce7f360e11b81526001600160a01b038281166004830152831690633659cfe69060240161025b565b61033e6103da565b6001600160a01b0381166103a85760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b6103b181610434565b50565b6000806000836001600160a01b03166040516101aa906303e1469160e61b815260040190565b6000546001600160a01b031633146102275760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161039f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146103b157600080fd5b6000602082840312156104ab57600080fd5b81356104b681610484565b9392505050565b600080604083850312156104d057600080fd5b82356104db81610484565b915060208301356104eb81610484565b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561052157600080fd5b833561052c81610484565b9250602084013561053c81610484565b9150604084013567ffffffffffffffff8082111561055957600080fd5b818601915086601f83011261056d57600080fd5b81358181111561057f5761057f6104f6565b604051601f8201601f19908116603f011681019083821181831017156105a7576105a76104f6565b816040528281528960208487010111156105c057600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000602082840312156105f457600080fd5b81516104b681610484565b60018060a01b038316815260006020604081840152835180604085015260005b8181101561063b5785810183015185820160600152820161061f565b8181111561064d576000606083870101525b50601f01601f19169290920160600194935050505056fea26469706673582212207ad53e1008cce369999f6b5f2f77109510b404ff1de9b47b639981fd68e6239264736f6c63430008090033","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x4e59b44847b379578588920ca78fbf26c0b4956c":{"nonce":0,"balance":"0x0","code":"0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe03601600081602082378035828234f58015156039578182fd5b8082525050506014600cf3","storage":{}},"0x4eb9de1fc0d800e941f326d6699e9e11969557ea":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063100cdd911461002d575b5f80fd5b61004061003b3660046102cd565b610042565b005b5f5b818110156101b8575f7f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e28484848181106100805761008061033c565b905060200201356040516020016100a1929190918252602082015260400190565b60408051808303601f190181529082905280516020909101206331a9108f60e11b82526004820181905291507f000000000000000000000000107733fed96c4cd390c944a31f5425a7fb98ae5e6001600160a01b0316906323b872dd908290636352211e90602401602060405180830381865afa158015610124573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101489190610350565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015261dead6024820152604481018490526064015f604051808303815f87803b158015610195575f80fd5b505af11580156101a7573d5f803e3d5ffd5b505060019093019250610044915050565b5080156102c9577f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e282826101ed60018261037d565b8181106101fc576101fc61033c565b9050602002013560405160200161021d929190918252602082015260400190565b604051602081830303815290604052805190602001205f1c7f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e283835f8181106102685761026861033c565b90506020020135604051602001610289929190918252602082015260400190565b60408051601f19818403018152908290528051602090910120907fdf423376f9b0ab363b1b4d6f0b4cb6821921ec30f491555a97236a8a38ce095a905f90a35b5050565b5f80602083850312156102de575f80fd5b823567ffffffffffffffff808211156102f5575f80fd5b818501915085601f830112610308575f80fd5b813581811115610316575f80fd5b8660208260051b850101111561032a575f80fd5b60209290920196919550909350505050565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215610360575f80fd5b81516001600160a01b0381168114610376575f80fd5b9392505050565b8181038181111561039c57634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x4fbf7b2f171336958be5d15ff762a5cff5363568":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061011b575f3560e01c80638d839ffe1161009d578063aeb8ce9b11610062578063aeb8ce9b14610356578063ce1e09c014610375578063d3419bf3146103a8578063f14fcbc8146103db578063f2fde38b146103fa575f80fd5b80638d839ffe146102a25780638da5cb5b146102d55780639791c097146102f1578063a8e5fbc014610310578063acf1a84114610343575f80fd5b806374694a2b116100e357806374694a2b146101c957806380869853146101dc578063839df9451461022757806383e7f6ff146102525780638a95b09f1461028c575f80fd5b806301ffc9a71461011f5780633ccfd60b146101535780635d3590d51461016957806365a69dcf14610188578063715018a6146101b5575b5f80fd5b34801561012a575f80fd5b5061013e610139366004611145565b610419565b60405190151581526020015b60405180910390f35b34801561015e575f80fd5b5061016761044f565b005b348015610174575f80fd5b50610167610183366004611187565b610489565b348015610193575f80fd5b506101a76101a23660046112e4565b610507565b60405190815260200161014a565b3480156101c0575f80fd5b5061016761058b565b6101676101d73660046113db565b61059e565b3480156101e7575f80fd5b5061020f7f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5681565b6040516001600160a01b03909116815260200161014a565b348015610232575f80fd5b506101a761024136600461149d565b60016020525f908152604090205481565b34801561025d575f80fd5b5061027161026c3660046114b4565b610894565b6040805182518152602092830151928101929092520161014a565b348015610297575f80fd5b506101a76224ea0081565b3480156102ad575f80fd5b506101a77f000000000000000000000000000000000000000000000000000000000000025881565b3480156102e0575f80fd5b505f546001600160a01b031661020f565b3480156102fc575f80fd5b5061013e61030b3660046114f6565b6109c9565b34801561031b575f80fd5b5061020f7f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e1841720481565b610167610351366004611528565b6109dd565b348015610361575f80fd5b5061013e6103703660046114f6565b610b7b565b348015610380575f80fd5b506101a77f000000000000000000000000000000000000000000000000000000000001518081565b3480156103b3575f80fd5b5061020f7f000000000000000000000000ec71e4e674fe0f432693dc2b935c34bd2774c00381565b3480156103e6575f80fd5b506101676103f536600461149d565b610c22565b348015610405575f80fd5b50610167610414366004611570565b610c95565b5f6001600160e01b031982166301ffc9a760e01b148061044957506001600160e01b0319821663612e8c0960e01b145b92915050565b5f80546040516001600160a01b03909116914780156108fc02929091818181858888f19350505050158015610486573d5f803e3d5ffd5b50565b610491610d0b565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af11580156104dd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105019190611589565b50505050565b885160208a01205f90841580159061052657506001600160a01b038716155b15610544576040516334fd817160e21b815260040160405180910390fd5b808a8a8a8a8a8a8a8a6040516020016105659998979695949392919061165e565b604051602081830303815290604052805190602001209150509998505050505050505050565b610593610d0b565b61059c5f610d64565b565b5f6105df8b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c9250610894915050565b602081015181519192506105f2916116d5565b3410156106125760405163044044a560e21b815260040160405180910390fd5b6106b38b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f82011690508083019250505050505050896106ae8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f820116905080830192505050505050508d8d8d8d8d8d8d8d610507565b610db3565b604051635200a4c160e11b81525f906001600160a01b037f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e18417204169063a40149829061070b908f908f908f908f908e908b906004016116e8565b6020604051808303815f875af1158015610727573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061074b9190611732565b9050841561077657610776878d8d604051610767929190611749565b60405180910390208888610ece565b83156107be576107be8c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508b9250339150610f939050565b896001600160a01b03168c8c6040516107d8929190611749565b60405180910390207f69e37f151eb98a09618ddaa80c8cfaf1ce5996867c489f45b555b412271ebf278e8e865f015187602001518760405161081e959493929190611758565b60405180910390a36020820151825161083791906116d5565b341115610886576020820151825133916108fc9161085591906116d5565b61085f9034611788565b6040518115909202915f818181858888f19350505050158015610884573d5f803e3d5ffd5b505b505050505050505050505050565b604080518082019091525f808252602082015282516020840120604051636b727d4360e11b8152600481018290527f000000000000000000000000ec71e4e674fe0f432693dc2b935c34bd2774c0036001600160a01b03908116916350e9a7159187917f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063d6e4fa8690602401602060405180830381865afa158015610940573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109649190611732565b866040518463ffffffff1660e01b8152600401610983939291906117e8565b6040805180830381865afa15801561099d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109c1919061180c565b949350505050565b5f60036109d583611044565b101592915050565b5f83836040516109ee929190611749565b604080519182900382206020601f8701819004810284018101909252858352925082915f91610a39919088908890819084018382808284375f92019190915250889250610894915050565b8051909150341015610a5e5760405163044044a560e21b815260040160405180910390fd5b60405163c475abff60e01b815260048101839052602481018590525f907f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b03169063c475abff906044016020604051808303815f875af1158015610acb573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610aef9190611732565b8251909150341115610b3457815133906108fc90610b0d9034611788565b6040518115909202915f818181858888f19350505050158015610b32573d5f803e3d5ffd5b505b837f3da24c024582931cfaf8267d8ed24d13a82a8068d5bd337d30ec45cea4e506ae88883485604051610b6a9493929190611859565b60405180910390a250505050505050565b805160208201205f90610b8d836109c9565b8015610c1b57506040516312dc929d60e31b8152600481018290527f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b0316906396e494e890602401602060405180830381865afa158015610bf7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c1b9190611589565b9392505050565b5f818152600160205260409020544290610c5d907f0000000000000000000000000000000000000000000000000000000000015180906116d5565b10610c8357604051630a059d7160e01b8152600481018290526024015b60405180910390fd5b5f908152600160205260409020429055565b610c9d610d0b565b6001600160a01b038116610d025760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610c7a565b61048681610d64565b5f546001600160a01b0316331461059c5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610c7a565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f818152600160205260409020544290610dee907f0000000000000000000000000000000000000000000000000000000000000258906116d5565b1115610e1057604051635320bcf960e01b815260048101829052602401610c7a565b5f818152600160205260409020544290610e4b907f0000000000000000000000000000000000000000000000000000000000015180906116d5565b11610e6c5760405163cb7690d760e01b815260048101829052602401610c7a565b610e7583610b7b565b610e9457826040516308eee0fd60e31b8152600401610c7a919061187f565b5f818152600160205260408120556224ea00821015610ec957604051639a71997b60e01b815260048101839052602401610c7a565b505050565b604080517f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae6020808301919091528183018690528251808303840181526060830193849052805191012063e32954eb60e01b90925285906001600160a01b0382169063e32954eb90610f4890859088908890606401611891565b5f604051808303815f875af1158015610f63573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052610f8a91908101906118b3565b50505050505050565b7f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d566001600160a01b0316637a806d6b33838587604051602001610fd691906119a7565b6040516020818303038152906040526040518563ffffffff1660e01b815260040161100494939291906119ce565b6020604051808303815f875af1158015611020573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105019190611732565b80515f90819081905b8082101561113c575f85838151811061106857611068611a0b565b01602001516001600160f81b0319169050600160ff1b811015611097576110906001846116d5565b9250611129565b600760fd1b6001600160f81b0319821610156110b8576110906002846116d5565b600f60fc1b6001600160f81b0319821610156110d9576110906003846116d5565b601f60fb1b6001600160f81b0319821610156110fa576110906004846116d5565b603f60fa1b6001600160f81b03198216101561111b576110906005846116d5565b6111266006846116d5565b92505b508261113481611a1f565b93505061104d565b50909392505050565b5f60208284031215611155575f80fd5b81356001600160e01b031981168114610c1b575f80fd5b80356001600160a01b0381168114611182575f80fd5b919050565b5f805f60608486031215611199575f80fd5b6111a28461116c565b92506111b06020850161116c565b9150604084013590509250925092565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff811182821017156111fd576111fd6111c0565b604052919050565b5f67ffffffffffffffff82111561121e5761121e6111c0565b50601f01601f191660200190565b5f82601f83011261123b575f80fd5b813561124e61124982611205565b6111d4565b818152846020838601011115611262575f80fd5b816020850160208301375f918101602001919091529392505050565b5f8083601f84011261128e575f80fd5b50813567ffffffffffffffff8111156112a5575f80fd5b6020830191508360208260051b85010111156112bf575f80fd5b9250929050565b8015158114610486575f80fd5b803561ffff81168114611182575f80fd5b5f805f805f805f805f6101008a8c0312156112fd575f80fd5b893567ffffffffffffffff80821115611314575f80fd5b6113208d838e0161122c565b9a5061132e60208d0161116c565b995060408c0135985060608c0135975061134a60808d0161116c565b965060a08c013591508082111561135f575f80fd5b5061136c8c828d0161127e565b90955093505060c08a0135611380816112c6565b915061138e60e08b016112d3565b90509295985092959850929598565b5f8083601f8401126113ad575f80fd5b50813567ffffffffffffffff8111156113c4575f80fd5b6020830191508360208285010111156112bf575f80fd5b5f805f805f805f805f806101008b8d0312156113f5575f80fd5b8a3567ffffffffffffffff8082111561140c575f80fd5b6114188e838f0161139d565b909c509a508a915061142c60208e0161116c565b995060408d0135985060608d0135975061144860808e0161116c565b965060a08d013591508082111561145d575f80fd5b5061146a8d828e0161127e565b90955093505060c08b013561147e816112c6565b915061148c60e08c016112d3565b90509295989b9194979a5092959850565b5f602082840312156114ad575f80fd5b5035919050565b5f80604083850312156114c5575f80fd5b823567ffffffffffffffff8111156114db575f80fd5b6114e78582860161122c565b95602094909401359450505050565b5f60208284031215611506575f80fd5b813567ffffffffffffffff81111561151c575f80fd5b6109c18482850161122c565b5f805f6040848603121561153a575f80fd5b833567ffffffffffffffff811115611550575f80fd5b61155c8682870161139d565b909790965060209590950135949350505050565b5f60208284031215611580575f80fd5b610c1b8261116c565b5f60208284031215611599575f80fd5b8151610c1b816112c6565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b5f838385526020808601955060208560051b830101845f5b8781101561165157848303601f19018952813536889003601e19018112611609575f80fd5b8701848101903567ffffffffffffffff811115611624575f80fd5b803603821315611632575f80fd5b61163d8582846115a4565b9a86019a94505050908301906001016115e4565b5090979650505050505050565b8981526001600160a01b03898116602083015260408201899052606082018890528616608082015261010060a082018190525f9061169f83820187896115cc565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610449576104496116c1565b60a081525f6116fb60a08301888a6115a4565b6001600160a01b03968716602084015260408301959095525091909316606082015261ffff90921660809092019190915292915050565b5f60208284031215611742575f80fd5b5051919050565b818382375f9101908152919050565b608081525f61176b6080830187896115a4565b602083019590955250604081019290925260609091015292915050565b81810381811115610449576104496116c1565b5f5b838110156117b557818101518382015260200161179d565b50505f910152565b5f81518084526117d481602086016020860161179b565b601f01601f19169290920160200192915050565b606081525f6117fa60608301866117bd565b60208301949094525060400152919050565b5f6040828403121561181c575f80fd5b6040516040810181811067ffffffffffffffff8211171561183f5761183f6111c0565b604052825181526020928301519281019290925250919050565b606081525f61186c6060830186886115a4565b6020830194909452506040015292915050565b602081525f610c1b60208301846117bd565b838152604060208201525f6118aa6040830184866115cc565b95945050505050565b5f60208083850312156118c4575f80fd5b825167ffffffffffffffff808211156118db575f80fd5b818501915085601f8301126118ee575f80fd5b815181811115611900576119006111c0565b8060051b61190f8582016111d4565b9182528381018501918581019089841115611928575f80fd5b86860192505b8383101561199a57825185811115611944575f80fd5b8601603f81018b13611954575f80fd5b87810151604061196661124983611205565b8281528d82848601011115611979575f80fd5b611988838c830184870161179b565b8552505050918601919086019061192e565b9998505050505050505050565b5f82516119b881846020870161179b565b6305ccae8d60e31b920191825250600401919050565b6001600160a01b0385811682528481166020830152831660408201526080606082018190525f90611a01908301846117bd565b9695505050505050565b634e487b7160e01b5f52603260045260245ffd5b5f60018201611a3057611a306116c1565b506001019056fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x5155f5627bdf9795b3dbb8887001ada1eeba93f2":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063de8f50a11461002d575b5f80fd5b61004761003b3660046100a0565b60019695505050505050565b604051901515815260200160405180910390f35b5f8083601f84011261006b575f80fd5b50813567ffffffffffffffff811115610082575f80fd5b602083019150836020828501011115610099575f80fd5b9250929050565b5f805f805f80606087890312156100b5575f80fd5b863567ffffffffffffffff808211156100cc575f80fd5b6100d88a838b0161005b565b909850965060208901359150808211156100f0575f80fd5b6100fc8a838b0161005b565b90965094506040890135915080821115610114575f80fd5b5061012189828a0161005b565b979a969950949750929593949250505056fea164736f6c6343000818000a","storage":{}},"0x54563a9e1cd2dcbd0bca90d3cfa4a647e02c404a":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106101db575f3560e01c80638da5cb5b116100fd578063c4d66de811610092578063daea85c511610062578063daea85c51461055e578063e7acab241461057d578063f2fde38b1461059c578063ffa1ad74146105bb575f80fd5b8063c4d66de8146104e1578063d539139314610500578063d547741f14610520578063d9caed121461053f575f80fd5b8063a217fddf116100cd578063a217fddf14610452578063a3f4df7e14610465578063a4247400146104a3578063aa271e1a146104c2575f80fd5b80638da5cb5b146103d957806391d1485414610400578063983b2d561461041f578063986502751461043e575f80fd5b80635c975abb11610173578063715018a611610143578063715018a61461037f57806371e2a6571461039357806381c81d35146103b25780638456cb59146103c5575f80fd5b80635c975abb146103165780635fc1964f1461032e578063634486da1461034d5780636ccbae5f14610360575f80fd5b80633092afd5116101ae5780633092afd51461029c57806336568abe146102bb5780633f4ba83a146102da578063572b6c05146102ee575f80fd5b806301ffc9a7146101df5780631bf7e13e14610213578063248a9ca31461023f5780632f2ff15d1461027b575b5f80fd5b3480156101ea575f80fd5b506101fe6101f9366004611ee0565b6105eb565b60405190151581526020015b60405180910390f35b34801561021e575f80fd5b5061023261022d366004611f07565b610621565b60405161020a9190611fe9565b34801561024a575f80fd5b5061026d610259366004611ffb565b5f90815260fb602052604090206001015490565b60405190815260200161020a565b348015610286575f80fd5b5061029a610295366004612036565b6106ea565b005b3480156102a7575f80fd5b5061029a6102b6366004612064565b610713565b3480156102c6575f80fd5b5061029a6102d5366004612036565b610727565b3480156102e5575f80fd5b5061029a6107ba565b3480156102f9575f80fd5b506101fe610308366004612064565b6001600160a01b0316301490565b348015610321575f80fd5b5061012d5460ff166101fe565b348015610339575f80fd5b5061029a6103483660046120eb565b6107d4565b61029a61035b366004612064565b610811565b34801561036b575f80fd5b5061026d61037a366004611ffb565b6108d1565b34801561038a575f80fd5b5061029a61092a565b34801561039e575f80fd5b5061029a6103ad3660046120eb565b61093b565b61029a6103c0366004612064565b610978565b3480156103d0575f80fd5b5061029a6109f5565b3480156103e4575f80fd5b506097546040516001600160a01b03909116815260200161020a565b34801561040b575f80fd5b506101fe61041a366004612036565b610a0d565b34801561042a575f80fd5b5061029a610439366004612064565b610a37565b348015610449575f80fd5b5061029a610a48565b34801561045d575f80fd5b5061026d5f81565b348015610470575f80fd5b506102326040518060400160405280601381526020017229b2b0b837b93a10283937bc3c90213abcb2b960691b81525081565b3480156104ae575f80fd5b506101fe6104bd366004611f07565b610a61565b3480156104cd575f80fd5b506101fe6104dc366004612064565b610ab2565b3480156104ec575f80fd5b5061029a6104fb366004612064565b610aca565b34801561050b575f80fd5b5061026d5f80516020612ea783398151915281565b34801561052b575f80fd5b5061029a61053a366004612036565b610c21565b34801561054a575f80fd5b5061029a61055936600461218b565b610c45565b348015610569575f80fd5b5061029a610578366004612064565b610cf7565b348015610588575f80fd5b506101fe6105973660046121c9565b610dac565b3480156105a7575f80fd5b5061029a6105b6366004612064565b6111db565b3480156105c6575f80fd5b5061023260405180604001604052806005815260200164302e302e3160d81b81525081565b5f6001600160e01b03198216637965db0b60e01b148061061b57506301ffc9a760e01b6001600160e01b03198316145b92915050565b60605f5a9050610632858585610a61565b61064f57604051638baa579f60e01b815260040160405180910390fd5b6106df61065f6020870187612064565b3060408801358461067360608b018b61227b565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f920191909152506111f692505050565b9150505b9392505050565b5f82815260fb6020526040902060010154610704816112d4565b61070e83836112e5565b505050565b61071b61136b565b610724816113e4565b50565b61072f6113fb565b6001600160a01b0316816001600160a01b0316146107ac5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6107b68282611409565b5050565b6107c261136b565b6107ca61148d565b6107d26114d7565b565b6107dc61136b565b5f5b81518110156107b6576108098282815181106107fc576107fc6122bd565b60200260200101516113e4565b6001016107de565b61081c6104dc6113fb565b6108385760405162461bcd60e51b81526004016107a3906122d1565b6001600160a01b03811661088e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016107a3565b61089781611530565b61089f610a48565b6040516001600160a01b038216903480156108fc02915f818181858888f193505050501580156107b6573d5f803e3d5ffd5b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f90610923906060016040516020818303038152906040528051906020012090565b5492915050565b61093261136b565b6107d25f611547565b61094361136b565b5f5b81518110156107b657610970828281518110610963576109636122bd565b6020026020010151611530565b600101610945565b6109836104dc6113fb565b61099f5760405162461bcd60e51b81526004016107a3906122d1565b6001600160a01b0381166108975760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016107a3565b6109fd61136b565b610a05611598565b6107d26115df565b5f91825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610a3f61136b565b61072481611530565b6107d25f80516020612ea78339815191526102d56113fb565b5f610aaa610a6e85612306565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061161e92505050565b949350505050565b5f61061b5f80516020612ea783398151915283610a0d565b5f54610100900460ff1615808015610ae857505f54600160ff909116105b80610b015750303b158015610b0157505f5460ff166001145b610b645760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107a3565b5f805460ff191660011790558015610b85575f805461ff0019166101001790555b61015f80546001600160a01b0319166001600160a01b038416179055610ba9611759565b610bb1611786565b610bb9611786565b610bc1611786565b610bc96117ac565b610bd16117e2565b610bd9611819565b80156107b6575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b5f82815260fb6020526040902060010154610c3b816112d4565b61070e8383611409565b610c4d61136b565b600260335403610c6f5760405162461bcd60e51b81526004016107a3906123c2565b6002603355610c7c611598565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af1158015610cc8573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cec91906123f9565b505060016033555050565b610cff61136b565b600260335403610d215760405162461bcd60e51b81526004016107a3906123c2565b6002603355610d2e611598565b61015f5460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529082169063095ea7b3906044016020604051808303815f875af1158015610d7f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610da391906123f9565b50506001603355565b5f610db86104dc6113fb565b610dd45760405162461bcd60e51b81526004016107a3906122d1565b600260335403610df65760405162461bcd60e51b81526004016107a3906123c2565b6002603355610e03611598565b6001600160a01b038216610e2a576040516311d000e160e31b815260040160405180910390fd5b30610e358780612418565b610e46906040810190602001612064565b6001600160a01b031614610e6d57604051639d3c586b60e01b815260040160405180910390fd5b610e75611e67565b610e7f8780612418565b610e8d906020810190612064565b6001600160a01b03168152610ea28780612418565b610eb3906040810190602001612064565b6001600160a01b03166020820152610ecb8780612418565b610ed9906040810190612437565b808060200260200160405190810160405280939291908181526020015f905b82821015610f2457610f1560a08302860136819003810190612489565b81526020019060010190610ef8565b50505050506040820152610f388780612418565b610f46906060810190612506565b808060200260200160405190810160405280939291908181526020015f905b82821015610f9157610f8260c0830286013681900381019061254a565b81526020019060010190610f65565b50505050506060820152610fa58780612418565b610fb69060a08101906080016125e5565b81608001906004811115610fcc57610fcc6125fe565b90816004811115610fdf57610fdf6125fe565b905250610fec8780612418565b60a090810135908201526110008780612418565b60c090810135908201526110148780612418565b60e090810135908201526110288780612418565b610100908101359082015261103d8780612418565b610120908101359082015261015f54815160405163f07ec37360e01b81526001600160a01b03918216600482015291169063f07ec37390602401602060405180830381865afa158015611092573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110b69190612612565b61014082015261015f546040516379df72bd60e01b8152611133916001600160a01b0316906379df72bd906110ef908590600401612737565b602060405180830381865afa15801561110a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061112e9190612612565b61184c565b61015f546040516339eb2ac960e21b81526001600160a01b039091169063e7acab249061116c908a908a908a908a908a90600401612b24565b6020604051808303815f875af1158015611188573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111ac91906123f9565b9150816111cc57604051636725093760e01b815260040160405180910390fd5b50600160335595945050505050565b6111e361136b565b6111ec81611865565b6107245f826118db565b6060611201856118e5565b5f80876001600160a01b03168661121a8b8a898961194a565b6040516112279190612cfa565b5f604051808303815f8787f1925050503d805f8114611261576040519150601f19603f3d011682016040523d82523d5f602084013e611266565b606091505b509092509050611277603f87612d1f565b5a1161128557611285612d3e565b6112c582826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061197a565b925050505b9695505050505050565b610724816112e06113fb565b6119b3565b6112ef8282610a0d565b6107b6575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191660011790556113276113fb565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6113736113fb565b6001600160a01b031661138e6097546001600160a01b031690565b6001600160a01b0316146107d25760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107a3565b6107245f80516020612ea783398151915282610c21565b5f611404611a17565b905090565b6114138282610a0d565b156107b6575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191690556114496113fb565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b61012d5460ff166107d25760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b60448201526064016107a3565b6114df61148d565b61012d805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6115136113fb565b6040516001600160a01b03909116815260200160405180910390a1565b6107245f80516020612ea7833981519152826118db565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b61012d5460ff16156107d25760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b60448201526064016107a3565b6115e7611598565b61012d805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586115136113fb565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015611662573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116869190612612565b90505f6117338660600151805190602001208688602001516040516020016116d39392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156112ca575085516112ca906001600160a01b03168286611a34565b5f54610100900460ff1661177f5760405162461bcd60e51b81526004016107a390612d52565b6001603355565b5f54610100900460ff166107d25760405162461bcd60e51b81526004016107a390612d52565b5f54610100900460ff166117d25760405162461bcd60e51b81526004016107a390612d52565b6107d26117dd6113fb565b611547565b5f54610100900460ff166118085760405162461bcd60e51b81526004016107a390612d52565b6107d25f6118146113fb565b6118db565b5f54610100900460ff1661183f5760405162461bcd60e51b81526004016107a390612d52565b61012d805460ff19169055565b30330361185c5761072481611b6f565b610724816118e5565b61186d61136b565b6001600160a01b0381166118d25760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107a3565b61072481611547565b6107b682826112e5565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f906060016040516020818303038152906040528051906020012090506119398190565b54611945906001612d9d565b905550565b606082858560405160200161196193929190612db0565b6040516020818303038152906040529050949350505050565b606083156119895750816106e3565b8251156119995782518084602001fd5b8160405162461bcd60e51b81526004016107a39190611fe9565b6119bd8282610a0d565b6107b6576119d5816001600160a01b03166014611b99565b6119e0836020611b99565b6040516020016119f1929190612dee565b60408051601f198184030181529082905262461bcd60e51b82526107a391600401611fe9565b5f303303611a2c575060331936013560601c90565b503390565b90565b5f805f611a418585611d2e565b90925090505f816004811115611a5957611a596125fe565b148015611a775750856001600160a01b0316826001600160a01b0316145b15611a87576001925050506106e3565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401611aae929190612e62565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051611aec9190612cfa565b5f60405180830381855afa9150503d805f8114611b24576040519150601f19603f3d011682016040523d82523d5f602084013e611b29565b606091505b5091509150818015611b3c575080516020145b8015611b6357508051630b135d3f60e11b90611b619083016020908101908401612612565b145b98975050505050505050565b611b77611d70565b811461072457604051635637b6af60e11b8152600481018290526024016107a3565b60605f611ba7836002612e7a565b611bb2906002612d9d565b6001600160401b03811115611bc957611bc961207f565b6040519080825280601f01601f191660200182016040528015611bf3576020820181803683370190505b509050600360fc1b815f81518110611c0d57611c0d6122bd565b60200101906001600160f81b03191690815f1a905350600f60fb1b81600181518110611c3b57611c3b6122bd565b60200101906001600160f81b03191690815f1a9053505f611c5d846002612e7a565b611c68906001612d9d565b90505b6001811115611cdf576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611c9c57611c9c6122bd565b1a60f81b828281518110611cb257611cb26122bd565b60200101906001600160f81b03191690815f1a90535060049490941c93611cd881612e91565b9050611c6b565b5083156106e35760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016107a3565b5f808251604103611d62576020830151604084015160608501515f1a611d5687828585611d82565b94509450505050611d69565b505f905060025b9250929050565b5f303303611a315750601f1936013590565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115611db757505f90506003611e5e565b8460ff16601b14158015611dcf57508460ff16601c14155b15611ddf57505f90506004611e5e565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015611e30573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b038116611e58575f60019250925050611e5e565b91505f90505b94509492505050565b6040518061016001604052805f6001600160a01b031681526020015f6001600160a01b0316815260200160608152602001606081526020015f6004811115611eb157611eb16125fe565b81525f6020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b5f60208284031215611ef0575f80fd5b81356001600160e01b0319811681146106e3575f80fd5b5f805f60408486031215611f19575f80fd5b83356001600160401b0380821115611f2f575f80fd5b9085019060808288031215611f42575f80fd5b90935060208501359080821115611f57575f80fd5b818601915086601f830112611f6a575f80fd5b813581811115611f78575f80fd5b876020828501011115611f89575f80fd5b6020830194508093505050509250925092565b5f5b83811015611fb6578181015183820152602001611f9e565b50505f910152565b5f8151808452611fd5816020860160208601611f9c565b601f01601f19169290920160200192915050565b602081525f6106e36020830184611fbe565b5f6020828403121561200b575f80fd5b5035919050565b6001600160a01b0381168114610724575f80fd5b803561203181612012565b919050565b5f8060408385031215612047575f80fd5b82359150602083013561205981612012565b809150509250929050565b5f60208284031215612074575f80fd5b81356106e381612012565b634e487b7160e01b5f52604160045260245ffd5b604051608081016001600160401b03811182821017156120b5576120b561207f565b60405290565b604051601f8201601f191681016001600160401b03811182821017156120e3576120e361207f565b604052919050565b5f60208083850312156120fc575f80fd5b82356001600160401b0380821115612112575f80fd5b818501915085601f830112612125575f80fd5b8135818111156121375761213761207f565b8060051b91506121488483016120bb565b8181529183018401918481019088841115612161575f80fd5b938501935b83851015611b63578435925061217b83612012565b8282529385019390850190612166565b5f805f6060848603121561219d575f80fd5b83356121a881612012565b925060208401356121b881612012565b929592945050506040919091013590565b5f805f805f608086880312156121dd575f80fd5b85356001600160401b03808211156121f3575f80fd5b9087019060a0828a031215612206575f80fd5b9095506020870135908082111561221b575f80fd5b818801915088601f83011261222e575f80fd5b81358181111561223c575f80fd5b8960208260051b8501011115612250575f80fd5b6020830196508095505050506040860135915061226f60608701612026565b90509295509295909350565b5f808335601e19843603018112612290575f80fd5b8301803591506001600160401b038211156122a9575f80fd5b602001915036819003821315611d69575f80fd5b634e487b7160e01b5f52603260045260245ffd5b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b5f60808236031215612316575f80fd5b61231e612093565b823561232981612012565b8152602083810135818301526040808501359083015260608401356001600160401b0380821115612358575f80fd5b9085019036601f83011261236a575f80fd5b81358181111561237c5761237c61207f565b61238e601f8201601f191685016120bb565b915080825236848285010111156123a3575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b5f60208284031215612409575f80fd5b815180151581146106e3575f80fd5b5f823561015e1983360301811261242d575f80fd5b9190910192915050565b5f808335601e1984360301811261244c575f80fd5b8301803591506001600160401b03821115612465575f80fd5b602001915060a081023603821315611d69575f80fd5b803560068110612031575f80fd5b5f60a08284031215612499575f80fd5b60405160a081018181106001600160401b03821117156124bb576124bb61207f565b6040526124c78361247b565b815260208301356124d781612012565b806020830152506040830135604082015260608301356060820152608083013560808201528091505092915050565b5f808335601e1984360301811261251b575f80fd5b8301803591506001600160401b03821115612534575f80fd5b602001915060c081023603821315611d69575f80fd5b5f60c0828403121561255a575f80fd5b60405160c081018181106001600160401b038211171561257c5761257c61207f565b6040526125888361247b565b8152602083013561259881612012565b8060208301525060408301356040820152606083013560608201526080830135608082015260a08301356125cb81612012565b60a08201529392505050565b803560058110612031575f80fd5b5f602082840312156125f5575f80fd5b6106e3826125d7565b634e487b7160e01b5f52602160045260245ffd5b5f60208284031215612622575f80fd5b5051919050565b60068110612639576126396125fe565b9052565b5f815180845260208085019450602084015f5b838110156126a6578151612665888251612629565b838101516001600160a01b03168885015260408082015190890152606080820151908901526080908101519088015260a09096019590820190600101612650565b509495945050505050565b5f815180845260208085019450602084015f5b838110156126a65781516126d9888251612629565b808401516001600160a01b0390811689860152604080830151908a0152606080830151908a0152608080830151908a015260a091820151169088015260c090960195908201906001016126c4565b60058110612639576126396125fe565b602081526127516020820183516001600160a01b03169052565b5f602083015161276c60408401826001600160a01b03169052565b50604083015161016080606085015261278961018085018361263d565b91506060850151601f198584030160808601526127a683826126b1565b92505060808501516127bb60a0860182612727565b5060a085015160c085015260c085015160e085015260e0850151610100818187015280870151915050610120818187015280870151915050610140818187015280870151838701525050508091505092915050565b5f808335601e19843603018112612825575f80fd5b83016020810192503590506001600160401b03811115612843575f80fd5b60a081023603821315611d69575f80fd5b8183525f60208085019450825f5b858110156126a65761287c876128778461247b565b612629565b8282013561288981612012565b6001600160a01b03168388015260408281013590880152606080830135908801526080808301359088015260a09687019690910190600101612862565b5f808335601e198436030181126128db575f80fd5b83016020810192503590506001600160401b038111156128f9575f80fd5b60c081023603821315611d69575f80fd5b8183525f60208085019450825f5b858110156126a65761292d876128778461247b565b8282013561293a81612012565b6001600160a01b039081168885015260408381013590890152606080840135908901526080808401359089015260a0908382013561297781612012565b169088015260c0968701969190910190600101612918565b80356001600160781b0381168114612031575f80fd5b5f808335601e198436030181126129ba575f80fd5b83016020810192503590506001600160401b038111156129d8575f80fd5b803603821315611d69575f80fd5b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b8183525f6001600160fb1b03831115612a25575f80fd5b8260051b80836020870137939093016020019392505050565b8183526020808401935f91600585811b8301820185855b88811015612b1657858303601f19018a52813536899003609e19018112612a7a575f80fd5b88018035845260a08682013560028110612a92575f80fd5b85880152604082810135908601526060808301359086015260808083013536849003601e19018112612ac2575f80fd5b9092018781019290356001600160401b03811115612ade575f80fd5b80881b3603841315612aee575f80fd5b8282880152612b008388018286612a0e565b9d89019d96505050928601925050600101612a55565b509098975050505050505050565b608081525f610120873561015e19893603018112612b40575f80fd5b60a060808501528801612b65828501612b5883612026565b6001600160a01b03169052565b612b7160208201612026565b610140612b88818701836001600160a01b03169052565b612b956040840184612810565b610160888101529250612bad61028088018483612854565b925050612bbd60608401846128c6565b87840361011f1901610180890152612bd684828461290a565b93505050612be6608084016125d7565b612bf46101a0880182612727565b5060a08301356101c087015260c08301356101e087015260e0830135610200870152610100808401356102208801528484013561024088015281840135610260880152612c4360208d0161298f565b6001600160781b03811660a08901529450612c6060408d0161298f565b6001600160781b03811660c08901529450612c7e60608d018d6129a5565b95509350607f199150818784030160e0880152612c9c8386866129e6565b9450612cab60808d018d6129a5565b945092508187860301818801525050612cc58383836129e6565b925050508281036020840152612cdc818789612a3e565b9150508360408301526112ca60608301846001600160a01b03169052565b5f825161242d818460208701611f9c565b634e487b7160e01b5f52601160045260245ffd5b5f82612d3957634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b8082018082111561061b5761061b612d0b565b5f8451612dc1818460208901611f9c565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081525f8351612e25816017850160208801611f9c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351612e56816028840160208801611f9c565b01602801949350505050565b828152604060208201525f610aaa6040830184611fbe565b808202811582820484141761061b5761061b612d0b565b5f81612e9f57612e9f612d0b565b505f19019056fe9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000818000a","storage":{"0x0":"0xff"}},"0x58a175bebc8ec21a94ea63aa5a28743945940ee6":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106101165760003560e01c806391d14854116100a2578063c4d66de811610071578063c4d66de8146103bb578063ca15c873146103e1578063d547741f146103fe578063e375b64e1461042a578063ec87621c146104b957610116565b806391d14854146103635780639559c0bd146103a3578063a217fddf146103ab578063b017a30f146103b357610116565b80634794b430116100e95780634794b4301461024f57806349f5124b14610257578063609c92b81461025f5780638274664f146102675780639010d07c1461032457610116565b8063150b7a021461011b578063248a9ca3146101c65780632f2ff15d146101f557806336568abe14610223575b600080fd5b6101a96004803603608081101561013157600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561016b57600080fd5b82018360208201111561017d57600080fd5b803590602001918460018302840111600160201b8311171561019e57600080fd5b5090925090506104c1565b604080516001600160e01b03199092168252519081900360200190f35b6101e3600480360360208110156101dc57600080fd5b50356104d2565b60408051918252519081900360200190f35b6102216004803603604081101561020b57600080fd5b50803590602001356001600160a01b03166104ea565b005b6102216004803603604081101561023957600080fd5b50803590602001356001600160a01b0316610556565b6101e36105b7565b6101e36105db565b6101e36105ff565b6102216004803603606081101561027d57600080fd5b6001600160a01b038235811692602081013590911691810190606081016040820135600160201b8111156102b057600080fd5b8201836020820111156102c257600080fd5b803590602001918460018302840111600160201b831117156102e357600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610623945050505050565b6103476004803603604081101561033a57600080fd5b5080359060200135610fa2565b604080516001600160a01b039092168252519081900360200190f35b61038f6004803603604081101561037957600080fd5b50803590602001356001600160a01b0316610fc9565b604080519115158252519081900360200190f35b6101e3610fe7565b6101e3610fec565b6101e3610ff1565b610221600480360360208110156103d157600080fd5b50356001600160a01b0316611015565b6101e3600480360360208110156103f757600080fd5b50356110cf565b6102216004803603604081101561041457600080fd5b50803590602001356001600160a01b03166110e6565b6102216004803603608081101561044057600080fd5b6001600160a01b0382358116926020810135821692604082013590921691810190608081016060820135600160201b81111561047b57600080fd5b82018360208201111561048d57600080fd5b803590602001918460018302840111600160201b831117156104ae57600080fd5b50909250905061113f565b6101e36114e6565b630a85bd0160e11b95945050505050565b6000818152602081905260409020600201545b919050565b60008281526020819052604090206002015461050d906105086114f8565b610fc9565b6105485760405162461bcd60e51b815260040180806020018281038252602f815260200180611f42602f913960400191505060405180910390fd5b61055282826114fd565b5050565b61055e6114f8565b6001600160a01b0316816001600160a01b0316146105ad5760405162461bcd60e51b815260040180806020018281038252602f8152602001806120bb602f913960400191505060405180910390fd5b610552828261156c565b7ff871896b17e9cb7a64941c62c188a4f5c621b86800e3d15452ece01ce56073df81565b7ff94915c6d1fd521cee85359239227480c7e8776d7caf1fc3bacad5c269b66a1481565b7fd4392723c111fcb98b073fe55873efb447bcd23cd3e49ec9ea2581930cd01ddc81565b60008051602061204b83398151915261063e816105086114f8565b6001906106de5760405162461bcd60e51b81526020600482019081528254600260001961010060018416150201909116046024830181905290918291604490910190849080156106cf5780601f106106a4576101008083540402835291602001916106cf565b820191906000526020600020905b8154815290600101906020018083116106b257829003601f168201915b50509250505060405180910390fd5b5060606106f26106ed846115db565b611656565b905060606107138260018151811061070657fe5b6020026020010151611656565b90507fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60001b6107568260008151811061074957fe5b60200260200101516117d8565b141561095457600061076e8260018151811061074957fe5b905060006001600160a01b031661078b8360028151811061074957fe5b6001600160a01b0316146107d05760405162461bcd60e51b815260040180806020018281038252602981526020018061206b6029913960400191505060405180910390fd5b600086905060006107e78460038151811061074957fe5b9050816001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b15801561082d57600080fd5b505afa158015610841573d6000803e3d6000fd5b505050506040513d602081101561085757600080fd5b5051156108d35760408051632142170760e11b81523060048201526001600160a01b038581166024830152604482018490529151918416916342842e0e9160648082019260009290919082900301818387803b1580156108b657600080fd5b505af11580156108ca573d6000803e3d6000fd5b5050505061094c565b816001600160a01b03166340c10f1984836040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b15801561093357600080fd5b505af1158015610947573d6000803e3d6000fd5b505050505b505050610f9a565b7ff871896b17e9cb7a64941c62c188a4f5c621b86800e3d15452ece01ce56073df60001b6109888260008151811061074957fe5b1415610c085760006109a08260018151811061074957fe5b905060606109c1846002815181106109b457fe5b6020026020010151611920565b905060608180602001905160208110156109da57600080fd5b8101908080516040519392919084600160201b8211156109f957600080fd5b908301906020820185811115610a0e57600080fd5b82518660208202830111600160201b82111715610a2a57600080fd5b82525081516020918201928201910280838360005b83811015610a57578181015183820152602001610a3f565b5050505091909101604052505082519293508a9150600090505b82811015610bfd576000848281518110610a8757fe5b60200260200101519050826001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610ad557600080fd5b505afa158015610ae9573d6000803e3d6000fd5b505050506040513d6020811015610aff57600080fd5b505115610b7b5760408051632142170760e11b81523060048201526001600160a01b038981166024830152604482018490529151918516916342842e0e9160648082019260009290919082900301818387803b158015610b5e57600080fd5b505af1158015610b72573d6000803e3d6000fd5b50505050610bf4565b826001600160a01b03166340c10f1988836040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b158015610bdb57600080fd5b505af1158015610bef573d6000803e3d6000fd5b505050505b50600101610a71565b505050505050610f9a565b7ff94915c6d1fd521cee85359239227480c7e8776d7caf1fc3bacad5c269b66a1460001b610c3c8260008151811061074957fe5b1415610f63576000610c548260018151811061074957fe5b905060006001600160a01b0316610c718360028151811061074957fe5b6001600160a01b031614610cb65760405162461bcd60e51b815260040180806020018281038252602981526020018061206b6029913960400191505060405180910390fd5b60008690506000610ccd8460038151811061074957fe5b9050816001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610d1357600080fd5b505afa158015610d27573d6000803e3d6000fd5b505050506040513d6020811015610d3d57600080fd5b505115610d9c5760408051632142170760e11b81523060048201526001600160a01b038581166024830152604482018490529151918416916342842e0e9160648082019260009290919082900301818387803b1580156108b657600080fd5b6060610dae866002815181106109b457fe5b90506060818060200190516020811015610dc757600080fd5b8101908080516040519392919084600160201b821115610de657600080fd5b908301906020820185811115610dfb57600080fd5b8251600160201b811182820188101715610e1457600080fd5b82525081516020918201929091019080838360005b83811015610e41578181015183820152602001610e29565b50505050905090810190601f168015610e6e5780820380516001836020036101000a031916815260200191505b506040525050509050836001600160a01b03166394d008ef8685846040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b0316815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610ef3578181015183820152602001610edb565b50505050905090810190601f168015610f205780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015610f4157600080fd5b505af1158015610f55573d6000803e3d6000fd5b505050505050505050610f9a565b60405162461bcd60e51b815260040180806020018281038252602a815260200180611f71602a913960400191505060405180910390fd5b505050505050565b6000828152602081905260408120610fc0908363ffffffff6119ea16565b90505b92915050565b6000828152602081905260408120610fc0908363ffffffff6119f616565b601481565b600081565b7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef81565b60025460ff161561105e576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b61109c6040518060400160405280601781526020017f4d696e7461626c65455243373231507265646963617465000000000000000000815250611a0b565b6110a7600082610548565b6110bf60008051602061204b83398151915282610548565b506002805460ff19166001179055565b6000818152602081905260408120610fc390611aa9565b600082815260208190526040902060020154611104906105086114f8565b6105ad5760405162461bcd60e51b8152600401808060200182810382526030815260200180611fc36030913960400191505060405180910390fd5b60008051602061204b83398151915261115a816105086114f8565b6001906111c05760405162461bcd60e51b81526020600482019081528254600260001961010060018416150201909116046024830181905290918291604490910190849080156106cf5780601f106106a4576101008083540402835291602001916106cf565b50602082141561129f576000838360208110156111dc57600080fd5b5060408051913580835290519092506001600160a01b038088169289821692918b16917fe13244aa06bdc79480ed5fdc6ebe2bb37202fcdf33ecf45dc449f4201f3dc0879181900360200190a460408051632142170760e11b81526001600160a01b038981166004830152306024830152604482018490529151918716916342842e0e9160648082019260009290919082900301818387803b15801561128157600080fd5b505af1158015611295573d6000803e3d6000fd5b5050505050610f9a565b6060838360208110156112b157600080fd5b810190602081018135600160201b8111156112cb57600080fd5b8201836020820111156112dd57600080fd5b803590602001918460208302840111600160201b831117156112fe57600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f8201169050808301925050505050505091929192905050509050846001600160a01b0316866001600160a01b0316886001600160a01b03167fdb55e3a0ae817693fd7b07170d81eab0eb2c239f36fcecbc98b6b58ac5667e7a846040518080602001828103825283818151815260200191508051906020019060200280838360005b838110156113ca5781810151838201526020016113b2565b505050509050019250505060405180910390a48051601481111561141f5760405162461bcd60e51b815260040180806020018281038252602c81526020018061201f602c913960400191505060405180910390fd5b60005b818110156114db57866001600160a01b03166342842e0e8a3086858151811061144757fe5b60200260200101516040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050600060405180830381600087803b1580156114b757600080fd5b505af11580156114cb573d6000803e3d6000fd5b5050600190920191506114229050565b505050505050505050565b60008051602061204b83398151915281565b335b90565b600082815260208190526040902061151b908263ffffffff611ab416565b15610552576115286114f8565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b600082815260208190526040902061158a908263ffffffff611ac916565b15610552576115976114f8565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b6115e3611e6d565b6000825111611639576040805162461bcd60e51b815260206004820152601f60248201527f524c505265616465723a20494e56414c49445f42595445535f4c454e47544800604482015290519081900360640190fd5b506040805180820190915281518152602082810190820152919050565b606061166182611ade565b6116b2576040805162461bcd60e51b815260206004820152601860248201527f524c505265616465723a204954454d5f4e4f545f4c4953540000000000000000604482015290519081900360640190fd5b60006116bd83611b0a565b905060608167ffffffffffffffff811180156116d857600080fd5b5060405190808252806020026020018201604052801561171257816020015b6116ff611e6d565b8152602001906001900390816116f75790505b50905060006117248560200151611b96565b855190915081146117665760405162461bcd60e51b81526004018080602001828103825260278152602001806120946027913960400191505060405180910390fd5b60006117758660200151611c2f565b60208701510190506000805b858110156117cc5761179283611b96565b91506040518060400160405280838152602001848152508582815181106117b557fe5b602090810291909101015291810191600101611781565b50929695505050505050565b60006117e382611ade565b15611835576040805162461bcd60e51b815260206004820181905260248201527f524c505265616465723a204445434f44494e475f4c4953545f41535f55494e54604482015290519081900360640190fd5b81516021101561188c576040805162461bcd60e51b815260206004820152601e60248201527f524c505265616465723a20494e56414c49445f55494e545f4c454e4754480000604482015290519081900360640190fd5b600061189b8360200151611b96565b835190915081146118dd5760405162461bcd60e51b81526004018080602001828103825260278152602001806120ea6027913960400191505060405180910390fd5b60006118ec8460200151611c2f565b8451602080870151830180519394509184900392919083101561191657826020036101000a820491505b5095945050505050565b606060006119318360200151611b96565b835190915081146119735760405162461bcd60e51b8152600401808060200182810382526028815260200180611f9b6028913960400191505060405180910390fd5b60006119828460200151611c2f565b845190915081900360608167ffffffffffffffff811180156119a357600080fd5b506040519080825280601f01601f1916602001820160405280156119ce576020820181803683370190505b5090506000816020019050611916848860200151018285611c92565b6000610fc08383611cdd565b6000610fc0836001600160a01b038416611d41565b806040516020018082805190602001908083835b60208310611a3e5780518252601f199092019160209182019101611a1f565b51815160209384036101000a60001901801990921691161790527f3a20494e53554646494349454e545f5045524d495353494f4e530000000000009190930190815260408051808303600519018152601a909201905280516105529550600194509201919050611e87565b6000610fc382611d59565b6000610fc0836001600160a01b038416611d5d565b6000610fc0836001600160a01b038416611da7565b6020810151805160009190821a9060c0821015611b00576000925050506104e5565b5060019392505050565b600080600090506000611b208460200151611c2f565b602085015185519181019250015b80821015611b8d57611b3f82611b96565b8201915080821115611b825760405162461bcd60e51b815260040180806020018281038252602c815260200180611ff3602c913960400191505060405180910390fd5b600190920191611b2e565b50909392505050565b80516000908190811a6080811015611bb15760019150611c28565b60b8811015611bc657607e1981019150611c28565b60c0811015611bf35760b78103600185019450806020036101000a85510460018201810193505050611c28565b60f8811015611c085760be1981019150611c28565b60f78103600185019450806020036101000a855104600182018101935050505b5092915050565b8051600090811a6080811015611c495760009150506104e5565b60b8811080611c64575060c08110801590611c64575060f881105b15611c735760019150506104e5565b60c0811015611c875760b5190190506104e5565b60f5190190506104e5565b80611c9c57611cd8565b5b60208110611cbc578251825260209283019290910190601f1901611c9d565b8251825160208390036101000a60001901801990921691161782525b505050565b81546000908210611d1f5760405162461bcd60e51b8152600401808060200182810382526022815260200180611f206022913960400191505060405180910390fd5b826000018281548110611d2e57fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000611d698383611d41565b611d9f57508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610fc3565b506000610fc3565b60008181526001830160205260408120548015611e635783546000198083019190810190600090879083908110611dda57fe5b9060005260206000200154905080876000018481548110611df757fe5b600091825260208083209091019290925582815260018981019092526040902090840190558654879080611e2757fe5b60019003818190600052602060002001600090559055866001016000878152602001908152602001600020600090556001945050505050610fc3565b6000915050610fc3565b604051806040016040528060008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611ec857805160ff1916838001178555611ef5565b82800160010185558215611ef5579182015b82811115611ef5578251825591602001919060010190611eda565b50611f01929150611f05565b5090565b6114fa91905b80821115611f015760008155600101611f0b56fe456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e744d696e7461626c654552433732315072656469636174653a20494e56414c49445f5349474e4154555245524c505265616465723a2042595445535f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b65524c505265616465723a204e554d5f4954454d535f4445434f4445445f4c454e4754485f4d49534d415443484d696e7461626c654552433732315072656469636174653a20455843454544535f42415443485f4c494d4954241ecf16d79d0f8dbfb92cbc07fe17840425976cf0667f022fe9877caa831b084d696e7461626c654552433732315072656469636174653a20494e56414c49445f5245434549564552524c505265616465723a204c4953545f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66524c505265616465723a2055494e545f4445434f4445445f4c454e4754485f4d49534d41544348a164736f6c6343000606000a","storage":{"0x1":"0x63","0x2":"0x1","0x73d5d1a274bdea1400ad3ea4d982f594abdfd528cde1486b6c617faa3ec116":"0x1","0x89011777cfe6194dd982545e7eb24725dfe9a1aacae299c76fc48ef5017ae650":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x89011777cfe6194dd982545e7eb24725dfe9a1aacae299c76fc48ef5017ae651":"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0x1","0xb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6":"0x4d696e7461626c654552433732315072656469636174653a20494e5355464649","0xb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf7":"0x4349454e545f5045524d495353494f4e53000000000000000000000000000000","0xba75a66b8132bebab85d36fd3638083da57ae3d78fbcd8cc41f73514287dadaf":"0x1","0xe6c7d8231a06d7cb67831aeabcbd43ba24e5e4c6569cf23405f1e558de8580e0":"0x2","0xe84508f2c7fa9c351146748b3025cb78b45df37d868e48c6a75102fecdeee645":"0x2","0xe84508f2c7fa9c351146748b3025cb78b45df37d868e48c6a75102fecdeee647":"0x0","0xf0df3dcda05b4fbd9c655cde3d5ceb211e019e72ec816e127a59e7195f2cd7f5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x5cc819c9915eadfcebd76952b8c1bc36cadd7376":{"nonce":2,"balance":"0x0","code":"0x608060405260043610610103575f3560e01c8063a900866b11610092578063f07ec37311610062578063f07ec373146102f7578063f2d12b1214610316578063f47b774014610329578063fb0f3ee114610116578063fd9f1e101461034c575f80fd5b8063a900866b1461028a578063b3a34c4c146102be578063e7acab24146102d1578063ed98a574146102e4575f80fd5b80637423eb3c116100d85780637423eb3c146101f757806379df72bd1461020b57806387201b411461022a578063881477321461024b578063a81744041461026a575f80fd5b801561011657806306fdde031461013e57806346423aa71461015f5780635b34b966146101d5575f80fd5b366101125761011061036b565b005b5f80fd5b610129610124366004615115565b6103f9565b60405190151581526020015b60405180910390f35b348015610149575f80fd5b50610152610408565b604051610135919061518f565b34801561016a575f80fd5b506101b36101793660046151a1565b5f9081526001602052604090205460ff808216926101008304909116916001600160781b03620100008204811692600160881b9092041690565b6040805194151585529215156020850152918301526060820152608001610135565b3480156101e0575f80fd5b506101e9610417565b604051908152602001610135565b348015610202575f80fd5b50610110610420565b348015610216575f80fd5b506101e96102253660046151b8565b6104c1565b61023d61023836600461524c565b6104f8565b6040516101359291906153f0565b348015610256575f80fd5b5061012961026536600461543f565b610571565b61027d61027836600461547d565b61058f565b60405161013591906154e3565b348015610295575f80fd5b506101e96102a43660046154f5565b6001600160a01b03165f9081526002602052604090205490565b6101296102cc36600461550e565b61062a565b6101296102df366004615553565b6106a3565b61023d6102f23660046155d7565b6106e1565b348015610302575f80fd5b506101e96103113660046154f5565b610784565b61027d610324366004615677565b6107a1565b348015610334575f80fd5b5061033d6107ea565b60405161013593929190615719565b348015610357575f80fd5b5061012961036636600461543f565b610801565b7f000000000000000000000000000000000000000000000000000000000000000180156103b357600263929eee145c146103b05763a61be9f05f52346020526024601cfd5b50565b63929eee1454806103e057600263929eee145c146103dc5763a61be9f05f52346020526024601cfd5b5050565b600381146103dc5763a61be9f05f52346020526024601cfd5b5f61040261080c565b92915050565b60606104126109c0565b905090565b5f6104126109d8565b63929eee14546001147f000000000000000000000000000000000000000000000000000000000000000180610453575080155b1561047157604051630f45b98b60e41b815260040160405180910390fd5b61049a7f000000000000000000000000145908bbcfc7b258e4d4d9a586f6e3249ae80216610a45565b6104b7576040516370a4078f60e01b815260040160405180910390fd5b5f63929eee145550565b5f806104cd6004610aa3565b90506104f16104e282610ab35b63ffffffff16565b610140830135610b30565b3590565b9392505050565b60608061055d61051361050b6004610aa3565b610c746104da565b61052a61052260046020610cdc565b610cfa6104da565b61054161053960046040610cdc565b610d526104da565b61055061053960046060610cdc565b89338a15028a0189610daa565b915091509b509b9950505050505050505050565b5f6104f161058a6105826004610aa3565b610de46104da565b610e3c565b606061061f6105a96105a16004610aa3565b610f5d6104da565b604080515f8082526020820190925290610601565b6105ee6040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816105be5790505b5061061961061160046020610cdc565b610fb56104da565b3361100d565b90505b949350505050565b5f6104f161064361063b6004610aa3565b61104b6104da565b604080515f808252602082019092529061069b565b6106886040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816106585790505b5084336110c1565b5f6106d76106bc6106b46004610aa3565b6112406104da565b6106cb61052260046020610cdc565b853386150286016110c1565b9695505050505050565b6060806107736106f46105a16004610aa3565b604080515f808252602082019092529061074c565b6107396040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816107095790505b5061075c61053960046020610cdc565b61076b61053960046040610cdc565b883389610daa565b915091509850989650505050505050565b6001600160a01b0381165f90815260208190526040812054610402565b60606107dc6107b361050b6004610aa3565b6107c261052260046020610cdc565b6107d161061160046040610cdc565b33861502860161100d565b90505b979650505050505050565b60605f806107f661129c565b925092509250909192565b5f6104f183836112e8565b5f61012435600281901c90600316600182118334158214806108315761083134611423565b506003841160a0810260240135906502030203010160d01b861a905f630101020360d01b881a6108648882898888611434565b9096509150506101c4600583901b01355f87600581111561088757610887615329565b036108bc5760443560243517156108a557636ab37ce75f526004601cfd5b6108af8482611751565b6108b7611809565b61099d565b6040805160208082528183019092525f9160208201818036833701905050905060028a60058111156108f0576108f0615329565b036109135761090e60c4356084353360e435610104355b8787611889565b610988565b60038a600581111561092757610927615329565b036109455761090e60c4356084353360e435610104355b87876118d4565b60048a600581111561095957610959615329565b036109735761090e60243533608435604435606435610907565b6109886024353360843560443560643561093e565b610992848261190a565b61099b816119c4565b505b6109a88689846119e8565b6109b0611a5e565b6001995050505050505050505090565b6060602080526707536561706f727460475260606020f35b5f6109e1611ab1565b600143034060801c335f525f60205260405f208054820192508281555050336001600160a01b03167f721c20121297512b72821b97f5326877ea8ecf4bb9948fea5bfcb6453074d37f82604051610a3a91815260200190565b60405180910390a290565b5f816001600160a01b0316600a5a610a5d9190615773565b6040515f8181818686fa925050503d805f8114610a95576040519150601f19603f3d011682016040523d82523d5f602084013e610a9a565b606091505b50909392505050565b5f813563ffffffff168201610402565b5f610ac661016060408051918201905290565b9050610ad58282610140611b28565b610af2610aeb610ae6846040610cdc565b611b31565b6040830152565b5f610b06610b01846060610cdc565b611b84565b9050610b13816060840152565b610b26610b1e825190565b610140840152565b50919050565b0190565b610140820151604080519084015180515f939284927fa66999307ad1bb4fde44d13a5d710bd7718e0c87c1eef68a571629fbf5b93d0292602090910190845b81811015610b9c578251601f1901805186825260c082208652905260209384019390920191600101610b6f565b508060051b6040512094505050505f7f42d81c6929ffdc4eb27a0808e40e82516ad42296c166065de7f812492304ff6e915060405160206060890151015f5b86811015610c08578151601f1901805186825260e082208552905260209283019290910190600101610bdb565b505060408051600587901b9020601f198a0180517ffa445660b7e21515a59617fcd68910b487aa5808b8abda3d78bc85df364b2c2f8252928b01805197815260608c018051938152610140909c019a8b5261018082209390915295909552939097525050925250919050565b5f8063ffffffff8335169050600581901b610c986020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610cca610cc4610cbf8484610cdc565b611240565b82850152565b602001610ca7565b5050505050919050565b5f6104f163ffffffff610cf46104ed8686610b2c8516565b16840190565b5f8063ffffffff8335169050600581901b610d1e6020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610d4a610cc4610d458484610cdc565b611bc7565b602001610d2d565b5f8063ffffffff8335169050600581901b610d766020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610da2610cc4610d9d8484610cdc565b611c09565b602001610d85565b60608036155f80610dbe8c8c85898b611c4c565b91509150610dd18c8b8b8b8b8787612029565b9450945050505097509795505050505050565b5f8063ffffffff8335169050600581901b610e086020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610e34610cc4610e2f8484610cdc565b61215b565b602001610e17565b5f610e45611ab1565b5f805f80855190505f5b81811015610f50575f878281518110610e6a57610e6a615792565b60209081029190910101518051909150600481608001516004811115610e9257610e92615329565b03610e9e575050610f48565b80519450610eab8161219e565b5f8181526001602052604081209850909650610ecd90879089903615156121d7565b50865460ff16610f455780610140015181606001515114610ef057610ef0612265565b610eff85878460200151612272565b865460ff191660011787556040517ff280791efe782edcf06ce15c8f4dff17601db3b88eb3805a0db7d77faf757f0490610f3c9088908490615895565b60405180910390a15b50505b600101610e4f565b5060019695505050505050565b5f8063ffffffff8335169050600581901b610f816020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610fad610cc4610fa88484610cdc565b61104b565b602001610f90565b5f8063ffffffff8335169050600581901b610fd96020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257611005610cc46110008484610cdc565b61230e565b602001610fe8565b60605f36151590505f806110258888858b5189611c4c565b9150915061103282612341565b61103f8887848885612380565b98975050505050505050565b5f61105e61020060408051918201905290565b60a0810180825290915061107a61107484610aa3565b82612453565b61108660016020840152565b61109260016040840152565b6110af6110a86110a3856020610cdc565b612489565b6060840152565b610b266110ba6124b1565b6080840152565b835160808101515f91906110e860048260048111156110e2576110e2615329565b146124cb565b5f80806110f78a36151561256c565b60408051600180825281830190925293965091945092505f9190816020015b61111e615027565b8152602001906001900390816111165790505090508a815f8151811061114657611146615792565b602002602001018190525061115b818b612764565b6111678684848b6128dd565b6040805160018082528183019092525f91602080830190803683375091925050503615156004878181111561119e5761119e615329565b146111c1576111af8d83885f6129dd565b6111bb86868684612a2f565b506111d3565b6111d0888e6080015183612b33565b95505b6111de888c8c612c03565b85825f815181106111f1576111f1615792565b6020026020010181815250506112088d8388612d26565b61122586895f01518a602001518d8c604001518d60600151612df3565b61122d611a5e565b5060019c9b505050505050505050505050565b5f61125361020060408051918201905290565b905061126760208381019083016040611b28565b60a0810180825261127a61107484610aa3565b61128b6110a86110a3856060610cdc565b610b266110ba6110a3856080610cdc565b60605f805f6112a9612e58565b90505f7f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c905060605f5281602052806040526303312e3660635260a05ff35b5f6112f1611ab1565b5f8083815b81811015611408573687878381811061131157611311615792565b90506020028101906113239190615977565b90505f61133360208301836154f5565b90505f61134660408401602085016154f5565b90505f61135960a0850160808601615996565b905081331483331417156004821417871796505f61138d61138261137a8790565b610ab36104da565b866101400135610b30565b5f8181526001602052604090819020805461ffff19166101001781559051909a509091506001600160a01b0380851691908616907f6bacc01dbe442496068f7d234edd811f1a5f833243e0aec824f86ab861f3c90d906113f09085815260200190565b60405180910390a385600101955050505050506112f6565b5050801561141857611418612f35565b506001949350505050565b63a61be9f05f52806020526024601cfd5b5f8061143f5f6124cb565b611447612f42565b426101643511154261014435111715611475576321ccfeb75f5261014435602052610164356040526044601cfd5b610204356102643510156114905763466aa6165f526004601cfd5b7f42d81c6929ffdc4eb27a0808e40e82516ad42296c166065de7f812492304ff6e608081905260a08790526060602460c037604060646101203760e060802061016052610264356102043560051b6102a0016001820181526020810190508881526080602460208301376101608860a0528760c0525f60e0525f6102043593505f5b84811015611566578060400261028401602081610100376040816101203760208101358317925060208401935060e0608020845260a0850194508b85528a6020860152604081606087013750600101611512565b6001850160051b610160206060526102643594505b848110156115b6578060400261028401925060a0840193508a845289602085015260408360608601376020830135919091179060010161157b565b506001600160a01b038111156115d3576339f3e3fd5f526004601cfd5b50505050505f7fa66999307ad1bb4fde44d13a5d710bd7718e0c87c1eef68a571629fbf5b93d029050806080528360a052606060c460c0376020610104610120375060c06080205f9081526020812060e05260843590611647826001600160a01b03165f9081526020819052604090205490565b7ffa445660b7e21515a59617fcd68910b487aa5808b8abda3d78bc85df364b2c2f60808190529091506040608460a03760605161010052896101205260a061014461014037816101e05261018060802094505050506102043560051b61018001828152336020820152608060408201526101206060820152600160808201528360a0820152606060c460c083013760a061026435026101e00160a4356084357f9d9af8e38d66c62e2c12f0225249fd9d721c54b83f48d9352c97c6cacdcb6f318385a35f60605260608101820160405250505f61172383612f8d565b905061172f8389612fde565b7101000000000000000000000000000001000182559150509550959350505050565b60c43560843560e4356101043584156117b9575f6040519050632671a55160e11b815260206004820152600160248201528660448201528460648201528360848201523360a48201528260c48201528160e48201526117b38682610104613033565b50611801565b60028660058111156117cd576117cd615329565b036117f457806001146117e3576117e3816130ea565b6117ef848433856130fb565b611801565b61180184843385856131b0565b505050505050565b346064356084356102643560061b5f80805b8381101561185a5761028481013592506102a481013591508683111561184357611843613287565b82870396506118528284613294565b60400161181b565b508585111561186b5761186b613287565b6118758486613294565b848611156118015761180133868803613294565b61189381836132ca565b816118ba57826001146118a9576118a9836130ea565b6118b5878787876130fb565b6118cb565b6118cb828260028a8a8a8a8a6132e8565b50505050505050565b6118dd83613367565b6118e781836132ca565b816118f9576118b587878787876131b0565b6118cb828260038a8a8a8a8a6132e8565b5f805f805f861561192f57505060843592503391505060c4356101043560e435611944565b50339350506084359150506024356064356044355b801561195257611952613379565b50600586901b6101e403356102643560061b5f80805b838110156119a95761028481013592506102a481013591508a156119935761199083876159b4565b95505b6119a1878a8486898f613386565b604001611968565b506119b886898988888e613386565b50505050505050505050565b60408151146119d05750565b5f6119dc826020015190565b90506103dc81836133bb565b611a048260a4355b331415600182116004909210919091161690565b15611a5957805f611a13825190565b9050608081901c63ffffffff8216611a3484826317b1f94282526001905250565b601c840163fb5014fc6060529350611a5060a4358886856133df565b5f6060526118cb565b505050565b7f00000000000000000000000000000000000000000000000000000000000000018015611a8f575f63929eee145d50565b63929eee145480611aa5575f63929eee145d5050565b50600163929eee145550565b7f00000000000000000000000000000000000000000000000000000000000000018015611af05763929eee145c156103b057637fa8a9875f526004601cfd5b63929eee145480611b135763929eee145c156103dc57637fa8a9875f526004601cfd5b600181146103dc57637fa8a9875f526004601cfd5b80838337505050565b5f63ffffffff8235166040519150808252602082018160051b81018060a084026020870183378293505b81841015611b745780845260209093019260a001611b5b565b60405250919392505050565b9052565b5f63ffffffff8235166040519150808252602082018160051b81018060c084026020870183378293505b81841015611b745780845260209093019260c001611bae565b5f611bd960a060408051918201905290565b9050611be782826080611b28565b611c04611bfd611bf8846080610cdc565b613427565b6080830152565b919050565b5f63ffffffff8235166040519150808252602082018160051b8101808360061b6020870183378293505b81841015611b7457808452602090930192604001611c33565b60605f611c5960016124cb565b86515f90600160e61b82351690806001600160401b03811115611c7e57611c7e61574b565b604051908082528060200260200182016040528015611ca7578160200160208202803683370190505b50945060010160051b91505f60205b83811015611ea8575f611ccc8c83613cce6104da565b90505f805f611cdb848e61256c565b6001600160781b0382166020880152919450925090505f829003611d025750505050611ea0565b6001600160781b0381166040808601919091528a8601849052845160a081015160c0820151608083015192909301518051600184119d909d179c600490931099509092915f5b81811015611dea575f838281518110611d6357611d63615792565b602002602001015190508b8151108d179c505f611d858989846080015161345e565b90508160800151826060015103611da25760608201819052611db7565b611db18989846060015161345e565b60608301525b5f611dd08360600151838a8a611dcb361590565b61349a565b606084018190526080909301929092525050600101611d48565b5087516060015180515f5b81811015611e94575f838281518110611e1057611e10615792565b602002602001015190505f611e2a8b8b846080015161345e565b90508160800151826060015103611e475760608201819052611e5c565b611e568b8b846060015161345e565b60608301525b5f611e718360600151838c8c611dcb36151590565b6060840181905260a0840180516080909501949094529092525050600101611df5565b50505050505050505050505b602001611cb6565b50506001600160e61b018103611ec057611ec06134ed565b50611ecb8888612764565b5f8060205b8381101561200e578581015192508215612006575f611ef28c83613cce6104da565b9050885f03611f0d575f878301819052602090910152612006565b60048151608001516004811115611f2657611f26615329565b14611fa957611f3f8188866001600587901c038e6134fa565b611f55575f878301819052602090910152612006565b602080820151604083015183516080810151930151611f8e9388936001600160781b039081169316913314156001909111168e17612a2f565b611fa4575f878301819052602090910152612006565b611fd4565b611fbb815f015182608001518c612b33565b878301819052935083611fd4575f602090910152612006565b886001900398505f815f01519050611fff85825f015183602001518c85604001518660600151612df3565b6001935050505b602001611ed0565b508061201c5761201c613555565b5050509550959350505050565b85518551606091829161203c81836159c7565b6001600160401b038111156120535761205361574b565b60405190808252806020026020018201604052801561208c57816020015b61207961505a565b8152602001906001900390816120715790505b5092505f5b828110156120e4576120bf8c5f8d84815181106120b0576120b0615792565b60200260200101518c8c613562565b8482815181106120d1576120d1615792565b6020908102919091010152600101612091565b505f5b8181101561213d576121168c60018c848151811061210757612107615792565b60200260200101518c5f613562565b848483018151811061212a5761212a615792565b60209081029190910101526001016120e7565b5061214b8b84888a896135b1565b9350505097509795505050505050565b5f61216c6040808051918201905290565b905061218661218261217d84610aa3565b61389a565b8252565b611c046121976110a3846020610cdc565b6020830152565b5f6121b38260600151518361014001516138b9565b81516001600160a01b03165f90815260208190526040902054610402908390610b30565b82545f90610100900460ff16156121fe5781156121f7576121f7856138c9565b505f610622565b83546201000090046001600160781b0316801561225957831561222957612224866138da565b612259565b8454600160881b90046001600160781b0316811061225957821561225057612250866138eb565b5f915050610622565b50600195945050505050565b632165628a5f526004601cfd5b33831480156122815750505050565b5f61228a612e58565b61190160f01b5f9081526002828152602287815260428320908390528651939450929190601f601d840116106102e260621984011016156122f4576122cf86886138fc565b61190160f01b5f908152600286905260228281526042822091905290975090506122f7565b50815b612304888285858a613992565b5050505050505050565b5f61231f6040808051918201905290565b9050612330612182610d9d84610aa3565b611c04612197610d9d846020610cdc565b80518060051b6040019050602082038051602082527f4b9f2d36e1b4c93de62cc077b00b1a91d84b6c31b4a14e012718dcca230689e78383a190525050565b8351606090806001600160401b0381111561239d5761239d61574b565b6040519080825280602002602001820160405280156123d657816020015b6123c361505a565b8152602001906001900390816123bb5790505b5091505f5b81811015612439575f8782815181106123f6576123f6615792565b6020026020010151905061241389825f0151836020015185613adb565b84838151811061242557612425615792565b6020908102919091010152506001016123db565b5061244787838787876135b1565b50505b95945050505050565b6124608282610160611b28565b612471610aeb610ae6846040610cdc565b6103dc612482610b01846060610cdc565b6060830152565b6040518135601f0163ffffffe01660200180838337913563ffffffff16815290810160405290565b5f6124c3602060408051918201905290565b5f8152905090565b7f000000000000000000000000000000000000000000000000000000000000000180156125185763929eee145c1561250a57637fa8a9875f526004601cfd5b8160010163929eee145d5050565b63929eee14548061254a5763929eee145c1561253b57637fa8a9875f526004601cfd5b8260010163929eee145d505050565b6001811461255f57637fa8a9875f526004601cfd5b505060020163929eee1455565b5f805f80855f015190506125898160a001518260c0015187613c80565b61259c57505f925082915081905061275d565b602086015160408701516001600160781b0391821694501691505f6004826080015160048111156125cf576125cf615329565b036125fc57600183850218905080156125ea576125ea613ca3565b506001935083925082915061275d9050565b50818311831517801561261157612611613ca3565b608082015160011615848411161561262b5761262b613cb0565b6126348261219e565b5f81815260016020526040812091965061265290879083908a6121d7565b61266557505f935083925061275d915050565b805460ff1661268057612680835f0151878a60600151612272565b8054608881901c8061269457869150612757565b6001600160781b038260101c169150600186036126b8578181039650809550612757565b8086036126d357908601858103868211029096039590612757565b80860296810291909502810186810387821102918290039695919003906001600160781b0386111561275757612717565b5f5b8215610b2657908290069190612706565b61272a6127248784612704565b88612704565b8015019687900496909504946001600160781b0386111561275757634e487b715f5260116020526024601cfd5b50505050505b9250925092565b805182515f5b82811015612853575f84828151811061278557612785615792565b602002602001015190505f815f015190508381106127aa576127aa8260200151613cbd565b5f8782815181106127bd576127bd615792565b6020026020010151905080602001516001600160781b03165f036127e35750505061284b565b80516040808201519085015163bfb3f8ce5f8760200151600181111561280b5761280b615329565b14612827575f61281c856060613cce565b9350636088d7de9150505b8251821061283857805f526004601cfd5b612843838389613cd9565b505050505050505b60010161276a565b505f5b818110156128d6575f85828151811061287157612871615792565b6020026020010151905080602001516001600160781b03165f0361289557506128ce565b8051608081015160608201516128b29085908363a8930e9a613d8c565b6128ca8483604001518363d69293326104da613d8c90565b5050505b600101612856565b5050505050565b60a084015160c08501516040860151515f805b8281101561295a575f8960400151828151811061290f5761290f615792565b602002602001015190505f815f01519050801584179350505f612946826060015183608001518c8c8b8b612941361590565b613df3565b6060830152506080018690526001016128f0565b5060808801516004811082168015612974576129746134ed565b505050506060860151515f5b81811015612304575f8860600151828151811061299f5761299f615792565b602002602001015190505f6129c4826060015183608001518b8b8a8a61294136151590565b60608301525060a0810151608090910152600101612980565b8351608081015160208201513314156001821160049092109190911616156128d6575f80612a12858489608001518988613e2e565b63fb5014fc6060529092509050611a5083602001518684846133df565b5f848152600160205260408120805482908290608881901c80612a5457889150612adc565b6001600160781b038260101c169150808803612a7857908801878111935090612adc565b97880297808802979190910288018781119350906001600160781b038083119089111715612adc57612aaa8883612704565b8015019788900497909104906001600160781b038083119089111715612adc57634e487b715f5260116020526024601cfd5b508215612b15578515612b09576040516310fda3e160e01b8152600481018a905260240160405180910390fd5b5f945050505050610622565b8660881b8160101b1760011782556001945050505050949350505050565b5f83610140015184606001515114612b4d57612b4d612265565b83515f8080612b5c8888613fac565b915091505f8082845f885af16001600160a01b0385165f908152600260205260409020805460018101909155606086901b189550925082612bbb578515612bae57612ba5614056565b612bae8561409d565b505f93506104f192505050565b505050505f805f612bd8876040015188606001516104da6140ae90565b925092509250825f14612bee57612bee8461409d565b60408701919091526060860152509392505050565b6040805160208082528183019092525f916020820181803683375050506040850151519091505f5b81811015612c7b575f86604001518281518110612c4a57612c4a615792565b60200260200101519050846080820152612c7281885f0151896101200151876104da61432790565b50600101612c2b565b50506060840151515f90815b81811015612d09575f87606001518281518110612ca657612ca6615792565b602002602001015190505f6005811115612cc257612cc2615329565b81516005811115612cd557612cd5615329565b03612cf1574793508381606001511115612cf157612cf1613287565b612d00813389886143276104da565b50600101612c87565b5050612d14826119c4565b504780156128d6576128d63382613294565b8251608081015160208201515f92839283928392916004811060019091111633909114151615612d8857612d69612d6361010083015190565b5190565b8861441c565b9093509150612d7a60208201612d5f565b945063fb5014fc9350612dd4565b600481608001516004811115612da057612da0615329565b0361230457805194505f8560601b9050612dc187838b608001518b8561445d565b639397928596509094509250612dd49050565b612dde6060859052565b612dea858785856133df565b5f606052612304565b60608290506060829050856001600160a01b0316876001600160a01b03167f9d9af8e38d66c62e2c12f0225249fd9d721c54b83f48d9352c97c6cacdcb6f318a888686604051612e469493929190615a13565b60405180910390a35050505050505050565b5f7f00000000000000000000000000000000000000000000000000000000000005394614612f10575060408051608080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f5f9081527f32b5c112df393a49218d7552f96b2eeb829dfb4272f4f24eef510a586b85feef6020527f95f740a33d720b7cd93c75d515ac95ca3bbaa2594cce46ea48e00974ea8fcd14855246606090815230845260a08220949095529093529190915290565b507f8bebed3dbe91a82da0dc94c8d370c160ad6db1b32164303e65b8544bae7e2f5590565b63fed398fc5f526004601cfd5b600435602014610224356102401416610244356102606102643560061b01141660186101243510600160a01b60843560a4351760c4356024351717101616806103b0576103b0614528565b5f8181526001602081905260409091209060843590612fb290849084903615156121d7565b50815460ff16610b2657610b268184612fd9602463ffffffff6102443516016124896104da565b612272565b5f612feb8260a4356119f0565b15610402575f805f612ffc86614535565b63fb5014fc6060529194509250905061301c60a43587601c8601856133df565b5f60605260209190910160801b1781529392505050565b604080517f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c60ff60a01b175f90815260208690527f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f83526055600b20919092526001600160a01b031690505f805f805260205f85875f875af191505f519050816130c8576130bf614056565b6130c8836145ed565b6001600160e01b03198116632671a55160e11b146118015761180186846145fe565b6369f958275f52806020526024601cfd5b833b61311257635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af1806131a2573d1561318057601f3d0160051c8260051c8160030281831115613169578183036003028280028480020360091c01015b5a60208201101561317c573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b6131c757635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af18061326c573d1561324b57601f3d0160051c8560051c8160030281831115613234578183036003028280028480020360091c01015b5a602082011015613247573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b638ffff9805f526004601cfd5b61329d81613367565b5f805f805f85875af1905080611a59576132b5614056565b63bc806b965f5282602052816040526044601cfd5b5f6132d6836020015190565b9050818114611a5957611a59836119c4565b5f60208851036133225750604080885260208089018a9052632671a55160e11b918901919091526044880152600160648801819052613331565b50606487018051600101908190525b603c60c082028901038781528660208201528560408201528460608201528360808201528260a082015250505050505050505050565b806103b0576391b3e5145f526004601cfd5b636ab37ce75f526004601cfd5b61338f83613367565b61339981836132ca565b816133aa576117ef86868686614613565b611801828260018989895f8a6132e8565b6064810151604082019060c0026044016133d6848383613033565b50506020905250565b5f806001600160e01b03198451165f805260205f85875f8b5af15f51909350149050816134185761340e614056565b846080526024607cfd5b8061180157846080526024607cfd5b5f8063ffffffff83351690506001810160051b61344a8160408051918201905290565b9250613457848483611b28565b5050919050565b5f82840361346d5750806104f1565b82848309156134835763c63cf0895f526004601cfd5b5f61348e8584615aaf565b93909304949350505050565b5f8486146134e357838303428590038082035f6134b7838a615aaf565b6134c1838c615aaf565b6134cb91906159c7565b9050858487830304018115150294505050505061244a565b5092949350505050565b6312d3f5a35f526004601cfd5b8451608081015160208201515f92916004811060019091111633909114151615610f50575f8061353187848b608001518b8a613e2e565b9150915061354b836020015188848463fb5014fc8a614707565b935050505061244a565b63d5da9a1b5f526004601cfd5b61356a61505a565b83515f0361357b5761357b85614774565b5f85600181111561358e5761358e615329565b036135a45761359f86858385614785565b61244a565b61244a86858333876148f5565b84516060905f816001600160401b038111156135cf576135cf61574b565b6040519080825280602002602001820160405280156135f8578160200160208202803683370190505b506040805160208082528183019092529192505f9190602082018180368337505089519192505060010160051b60205b81811015613687575f61363e8b83613cce6104da565b8051606081015191925090801561367c57478111825115161561366857638ffff9805f526004601cfd5b61367c828460200151856040015189614327565b505050602001613628565b50505f5b838110156137f3575f8a82815181106136a6576136a6615792565b6020026020010151905080602001516001600160781b03165f036136ed575f8483815181106136d7576136d7615792565b91151560209283029190910190910152506137eb565b600184838151811061370157613701615792565b911515602092830291909101909101528051604081015180515f5b81811015613786575f83828151811061373757613737615792565b6020026020010151905080606001515f1461377357608081018051908e9052855161012087015161376d9184918c6143276104da565b60808201525b608081015160609091015260010161371c565b505050606081015180515f5b818110156137e5575f8382815181106137ad576137ad615792565b602002602001015190505f81606001519050805f146137d1576137d1888483614a2c565b5060a0810151606090910152600101613792565b50505050505b60010161368b565b506137fd816119c4565b47801561380e5761380e3382613294565b8515613884575f5b848110156138825783818151811061383057613830615792565b60200260200101511561387a5761387a8b828151811061385257613852615792565b60200260200101518a8b848151811061386d5761386d615792565b6020026020010151612d26565b600101613816565b505b61388c611a5e565b509098975050505050505050565b5f6138ad61016060408051918201905290565b9050611c048282612453565b808210156103dc576103dc614a45565b631a5155745f52806020526024601cfd5b63ee9e0e635f52806020526024601cfd5b6310fda3e15f52806020526024601cfd5b5f805f84516001811660410380820360051c9250808752806020018701915050805160e81c6003820191506001811660051b868152825160208218525060015b838110156139685760405f2082821c60051b60209081169182529384018051919094185260010161393c565b50505060405f2091505f61397b82614a52565b5f9081526020939093525050604090209392505050565b5f805f528151602083038051826041035f600182116139f557604087015160608801515f1a83156139d657601b8260ff1c0190506001600160ff1b03821660408a01525b88528a855260205f60808760015afa508385528588526040880152505f515b8a148a1515169450849050613abe57858552604082526044850380516040870351630b135d3f60e11b835289604089035260205f60648b01858f5afa96508615613ab257630b135d3f60e11b5f5114613ab2578b3b15613a5c57634f7fb80d5f526004601cfd5b6001866041031115613a7557638baa579f5f526004601cfd5b64010100000060608901515f1a1a15604187141615613aa557631f003d0a5f5260608801515f1a6020526024601cfd5b63815e1d645f526004601cfd5b8385529152603f198601525b5050508061180157613ace614056565b634f7fb80d5f526004601cfd5b613ae361505a565b8251158451151715613afc576398e9db6e5f526004601cfd5b613b0461505a565b613b118685835f806148f5565b805160608101515f03613b2657509050610622565b613b368787858460800151614785565b82516040828101519082015160208085015190840151855185511891181791181715613b6d5763bced929d5f52846020526024601cfd5b806060015182606001511115613bf4575f865f81518110613b9057613b90615792565b60200260200101519050816060015183606001510389825f015181518110613bba57613bba615792565b60200260200101515f015160600151826020015181518110613bde57613bde615792565b6020026020010151606001818152505050613c75565b5f875f81518110613c0757613c07615792565b60200260200101519050826060015182606001510389825f015181518110613c3157613c31615792565b60200260200101515f015160400151826020015181518110613c5557613c55615792565b602002602001015160600181815250508260600151826060018181525050505b505050949350505050565b428084111590831116818015613c94575080155b156104f1576104f18484614e61565b635a052b325f526004601cfd5b63a11b63ff5f526004601cfd5b63133c37c65f52806020526024601cfd5b5f6104f18284015190565b5f838381518110613cec57613cec615792565b602002602001015190505f815f01519050613d078160031090565b613d1357613d13614e76565b60408201518015613d3657613d318460600151828660800151614e83565b613d49565b60808401515115613d4957613d49614ecd565b6004821460030383816005811115613d6357613d63615329565b90816005811115613d7657613d76615329565b9052505050606090920151604090910152505050565b82515f5b81811015611801575f858281518110613dab57613dab615792565b60209081029190910101518051604082015191925090600382116004881415821515171615613de557855f5288602052836040526044601cfd5b505050806001019050613d90565b5f868803613e0d57613e0686868961345e565b90506107df565b6107dc613e1b87878b61345e565b613e2688888b61345e565b86868661349a565b5f805f613e39614eda565b6301e4d72a815260208082015260408101898152336060830152601c820194509091508751604082015287613e79613e7260a083015190565b60e0840152565b613e8f613e8760c083015190565b610100840152565b613ea5613e9d60e083015190565b610120840152565b610140613eb3816060850152565b5f613ebf604084015190565b90505f613ece82848701614ee4565b928301929050613edf836080870152565b5f613eeb606086015190565b90505f613efa82868901614f4a565b948501949050613f0b8560a0890152565b5f613f188e878a01614faf565b959095019450613f298560c0890152565b8685015f613f378e83614fce565b602497019687019a50613f539050613f4e8c8c0190565b614ffe565b8060408b901b60808b901b17178f610100018181525050613f7d8c82611b8090919063ffffffff16565b60058c8e51613f8c91906159b4565b613f97911b8b6159b4565b99505050505050505050509550959350505050565b5f8083613fb7614eda565b639891976581523360208201908152608060408301819052601c9092019450905f613fe3604085015190565b90505f613ff282848601614ee4565b928301929050614003836040860152565b5f61400f606087015190565b90505f61401e82868801614ee4565b94850194905061402f856060880152565b895f61403d82898901614faf565b9a9d96909a016004019b50949950505050505050505050565b3d1561409b57601f3d0160051c60405160051c8160030281831115614088578183036003028280028480020360091c01015b5a602082011015611a59573d5f803e3d5ffd5b565b63939792855f52806020526024601cfd5b60603d105f8080808080866141205760405f803e5f51935060205192503d60208501113d60208501118082179850505086614120576020845f3e5f51915060208360203e60205190508160071b60208501018160a0026020850101803d10823d101761ffff8486171117985050505f80525b86614152575f8061413584602088018d61415b565b9250975061414783602087018c61423b565b929092179850909550505b5050505061275d565b5f806040519150825160c08602602001830160405285835260208660010160051b8085018360010160051b8701614199858b81811090829003020190565b60010160051b8a861196505b808510156141f957828589015260808a843e6060830151955085608084015260608201518681116141d685856142e2565b17881797505060808a01995060a08301925060a0820191506020850194506141a5565b50505b8183101561422f578083870152608088823e6060810151608082015260808801975060a0810190506020830192506141fc565b50505050935093915050565b604051815180851190808603818710028101602060e08202850181016040528185526001928301600590811b87019390920190911b908185015b8282101561422f57808287015260a088823e60206060890160a083013e606081015160608501516142b26080840151608088015180159114171590565b818311176142c084886142e2565b60a09b909b019a179690961795505060c0938401936020929092019101614275565b5f81516040830151801560038311161561430457506040840151600119909101905b604085015181148551831460208701516020870151141616159250505092915050565b5f8451600581111561433b5761433b615329565b0361437857604084015160208501516001600160a01b0316171561436157614361613379565b61437384608001518560600151613294565b614416565b60018451600581111561438d5761438d615329565b036143be576040840151156143a4576143a4613379565b614373846020015184866080015187606001518686613386565b6002845160058111156143d3576143d3615329565b036143f7576143738460200151848660800151876040015188606001518787611889565b61441684602001518486608001518760400151886060015187876118d4565b50505050565b608082901c63ffffffff604084901c811690808516906144449084906317b1f94290611b8016565b601c830192506144548482614fce565b50509250929050565b5f80614467614eda565b63f4dd92ce815287841860a0820152601c8101925060200160a0808252875f614491604083015190565b90505f6144a082858701614ee4565b9384019390506144b1846020870152565b5f6144bd606085015190565b90505f6144cc82878901614f4a565b9586019590506144dd866040890152565b5f6144ea8d888a01614faf565b9687019690506144fb8760608a0152565b5f6145088d898b01614fce565b905080880197508760040199505050505050505050509550959350505050565b6339f3e3fd5f526004601cfd5b6301e4d72a6102043560051b6080019081525f808260208082015260408101858152336060830152601c919091019061456f608435610aeb565b61458061014460e083016060611b28565b61014061458e816060840152565b61459c60a082016080840152565b61016060a06102643581029290920101906145b8908290840152565b6145c25f82840152565b6020016145d08160c0840152565b5f9181019182526020820196909652939560449095019492505050565b63d13d53d45f52806020526024601cfd5b631cf99b265f5281602052806040526044601cfd5b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166146f85780873b1515166146f857806146e757816146ca573d156146a957601f3d0160051c8360051c8160030281831115614692578183036003028280028480020360091c01015b5a6020820110156146a5573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b5f805f6001600160e01b03198751165f805260205f888a5f8e5af15f5190935014905081614753578361473e575f925050506106d7565b614746614056565b845f52876020526024601cfd5b8061476557845f52876020526024601cfd5b50600198975050505050505050565b63375c24c15f52806020526024601cfd5b5f805f85865160051b87015b808210156148a2576020820191508851825151106147b1576147b16148d6565b81515160051b60208a01015180516020845101515f6040830151602085015115815184101517156147e6575050505050614791565b8260051b60208201015191505060608101935083518901915083511589831060011b17881797508198505f84528a51935086156001811461484f5760608220881860408d01516101208601511860208e015186511817171561484a5761484a6148d6565b614898565b8151855260208201516020860152604082015160408601528a6080860152835160208d015261012084015160408d015260608520975060208d0192508683181561489857865183525b5050505050614791565b5050508160608551015280156148cf57600181036148c7576391b3e5145f526004601cfd5b6148cf6148e3565b5050614416565b637fda72795f526004601cfd5b634e487b715f5260116020526024601cfd5b5f805f86875160051b88015b808210156149f7576020820191508151518a518110614922576149226148d6565b8060051b60208c01015190506020835101515f606083510151602084015115815184101517156149555750505050614901565b8260051b60208201015191505060608101925082518801915082511588831060011b17871796508197505f83528a5192508515600181146149a75760a0822087146149a2576149a26148d6565b6149ee565b815184526020820151602085015260408201516040850152608082015160808501528a60208d01528960408d015260a08220965060208d019250858318156149ee57855183525b50505050614901565b50508551606001839052508015614a255760018103614a1d576391b3e5145f526004601cfd5b614a256148e3565b50506128d6565b63a5f542085f528260205281604052806060526064601cfd5b63466aa6165f526004601cfd5b5f614e58565b5f6009821015614bb1576005821015614b0e576003821015614ac1577f832c58a5b611aadcfa6a082ac9d04bace53d8278387f10040347b7e98eb5b30260018314027fbf8e29b89f29ed9b529c154a63038ffca562f8d7cd1e2545dda53a1b582dde3018610402565b7ff3e8417a785f980bdaf134fa0274a6bf891eeb8195cd94b09d2aa651046e28bc60038314027fa02eb7ff164c884e5e2c336dc85f81c6a93329d8e9adf214b32729b894de2af118610402565b6007821015614b64577f25d02425402d882d211a7ab774c0ed6eca048c4d03d9af40132475744753b2a360058314027f1c19f71958cdd8f081b4c31f7caf5c010b29d12950be2fa1c95070dc47e30b5518610402565b7fb58d772fb09b426b9dece637f61ca9065f2b994f1464b51e9207f55f7c8f594860078314027f7ff98d9d4e55d876c5cfac10b43c04039522f3ddfb0ea9bfe70c68cfb5c7cc1418610402565b6011821015614d0957600d821015614c6657600b821015614c19577f6f0ec38c21f6f583ab7f3c5413c773ffd5344c34fde1d390958e438bf667448f60098314027fd1d97d1ef5eaa37a4ee5fbf234e6f6d64eb511eb562221cd7edfbdde0848da0518610402565b7f32f4e7485d6485f9f6c255929b9905c62ba919758bbe231f231eaeecf33d810c600b8314027fbb98d87cc12922b83759626c5f07d72266da9702d19ffad6a514c73a89002f5f18610402565b600f821015614cbc577f8df51df98847160517f5b1186b4bc3f418d98b8a7f17f1292f392d79d600d79e600d8314027f6b5b04cbae4fcb1a9d78e7b2dfc51a36933d023cf6e347e03d517b472a85259018610402565b7fcc4886e37eedd9aacd6c1c2c9247197a621a71282e87a7cbc673f3736d9aa141600f8314027f1da3eed3ecef6ebaa6e5023c057ec2c75150693fd0dac5c90f4a142f9879fde818610402565b6015821015614db5576013821015614d68577f2d7a3ed6dab270fdb8e054b2ad525f0ce2a8b89cc76c17f0965434740f673a5560118314027fc3939feff011e53ab8c35ca3370aad54c5df1fc2938cd62543174fa6e7d8587718610402565b7f54b3212a178782f104e0d514b41a9a5c4ca9c980bf6597c3cecbf280917e202a60138314027f5a4f867d3d458dabecad65f6201ceeaba0096df2d0c491cc32e6ea4e6435001718610402565b6017821015614e0b577fbb40bf8cea3a5a716e2b6eb08bbdac8ec159f82f380783db3c56904f15a43d0460158314027f3bd8cff538aba49a9c374c806d277181e9651624b3e31111bc0624574f8bca1d18610402565b7f403be09941a31d05cfc2f896505811353d45d38743288b016630cce39435476a60178314027f1d51df90cba8de7637ca3e8fe1e3511d1dc2f23487d05dbdecb781860c21ac1c18610402565b61040282614a58565b6321ccfeb75f5281602052806040526044601cfd5b6394eb6af65f526004601cfd5b5f835f5260205f2060208301835160051b81015b80821015614ebe57815180841160051b93845260209384185260405f209290910190614e97565b50508314905080614416576144165b6309bde3395f526004601cfd5b5f61041260405190565b5f825180835260208401602084018260051b82015b80831015614f375782518051835260208101516020840152604081015160408401526060810151606084015250602083019250608082019150614ef9565b5050508060071b60200191505092915050565b5f80614f54845190565b8084529050602084810190600583901b860181019085015b82821115614f9c575f614f7e84615008565b9050614f8c818360a0615011565b506020929092019160a001614f6c565b60a0840260200194505050505092915050565b5f63ffffffe0603f614fbf855190565b01169050610402838383615011565b5f80614fd8845190565b8084529050600581901b614ff3602086810190860183615011565b602001949350505050565b6103b06040829052565b5f610402825190565b8082828560045afa80153d151715614416575f80fd5b6040518060a0016040528061503a61509c565b81525f602082018190526040820152606080820181905260809091015290565b60408051610100810182525f606082018181526080830182905260a0830182905260c0830182905260e083018290528252602082018190529181019190915290565b6040518061016001604052805f6001600160a01b031681526020015f6001600160a01b0316815260200160608152602001606081526020015f60048111156150e6576150e6615329565b81525f6020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b5f60208284031215615125575f80fd5b81356001600160401b0381111561513a575f80fd5b820161024081850312156104f1575f80fd5b5f81518084525f5b8181101561517057602081850181015186830182015201615154565b505f602082860101526020601f19601f83011685010191505092915050565b602081525f6104f1602083018461514c565b5f602082840312156151b1575f80fd5b5035919050565b5f602082840312156151c8575f80fd5b81356001600160401b038111156151dd575f80fd5b820161016081850312156104f1575f80fd5b5f8083601f8401126151ff575f80fd5b5081356001600160401b03811115615215575f80fd5b6020830191508360208260051b850101111561522f575f80fd5b9250929050565b80356001600160a01b0381168114611c04575f80fd5b5f805f805f805f805f805f60e08c8e031215615266575f80fd5b6001600160401b03808d35111561527b575f80fd5b6152888e8e358f016151ef565b909c509a5060208d013581101561529d575f80fd5b6152ad8e60208f01358f016151ef565b909a50985060408d01358110156152c2575f80fd5b6152d28e60408f01358f016151ef565b909850965060608d01358110156152e7575f80fd5b506152f88d60608e01358e016151ef565b909550935060808c0135925061531060a08d01615236565b915060c08c013590509295989b509295989b9093969950565b634e487b7160e01b5f52602160045260245ffd5b60068110611b8057611b80615329565b61535882825161533d565b6020818101516001600160a01b0390811691840191909152604080830151908401526060808301519084015260809182015116910152565b5f815180845260208085019450602084015f5b838110156153e55781516153b888825161534d565b808401516001600160a01b031660a08901526040015160c088015260e090960195908201906001016153a3565b509495945050505050565b604080825283519082018190525f906020906060840190828701845b8281101561542a57815115158452928401929084019060010161540c565b50505083810360208501526106d78186615390565b5f8060208385031215615450575f80fd5b82356001600160401b03811115615465575f80fd5b615471858286016151ef565b90969095509350505050565b5f805f8060408587031215615490575f80fd5b84356001600160401b03808211156154a6575f80fd5b6154b2888389016151ef565b909650945060208701359150808211156154ca575f80fd5b506154d7878288016151ef565b95989497509550505050565b602081525f6104f16020830184615390565b5f60208284031215615505575f80fd5b6104f182615236565b5f806040838503121561551f575f80fd5b82356001600160401b03811115615534575f80fd5b830160408186031215615545575f80fd5b946020939093013593505050565b5f805f805f60808688031215615567575f80fd5b85356001600160401b038082111561557d575f80fd5b9087019060a0828a031215615590575f80fd5b909550602087013590808211156155a5575f80fd5b506155b2888289016151ef565b909550935050604086013591506155cb60608701615236565b90509295509295909350565b5f805f805f805f8060a0898b0312156155ee575f80fd5b88356001600160401b0380821115615604575f80fd5b6156108c838d016151ef565b909a50985060208b0135915080821115615628575f80fd5b6156348c838d016151ef565b909850965060408b013591508082111561564c575f80fd5b506156598b828c016151ef565b999c989b509699959896976060870135966080013595509350505050565b5f805f805f805f6080888a03121561568d575f80fd5b87356001600160401b03808211156156a3575f80fd5b6156af8b838c016151ef565b909950975060208a01359150808211156156c7575f80fd5b6156d38b838c016151ef565b909750955060408a01359150808211156156eb575f80fd5b506156f88a828b016151ef565b909450925061570b905060608901615236565b905092959891949750929550565b606081525f61572b606083018661514c565b6020830194909452506001600160a01b0391909116604090910152919050565b634e487b7160e01b5f52604160045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b5f8261578d57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f815180845260208085019450602084015f5b838110156153e55781516157ce88825161533d565b838101516001600160a01b03168885015260408082015190890152606080820151908901526080908101519088015260a090960195908201906001016157b9565b5f815180845260208085019450602084015f5b838110156153e557815161583788825161533d565b808401516001600160a01b0390811689860152604080830151908a0152606080830151908a0152608080830151908a015260a091820151169088015260c09096019590820190600101615822565b60058110611b8057611b80615329565b828152604060208201526158b56040820183516001600160a01b03169052565b5f60208301516158d060608401826001600160a01b03169052565b5060408301516101608060808501526158ed6101a08501836157a6565b91506060850151603f198584030160a086015261590a838261580f565b925050608085015161591f60c0860182615885565b5060a085015160e085015260c0850151610100818187015260e0870151915061012082818801528188015192506101409150828288015280880151848801525080870151610180870152505050809150509392505050565b5f823561015e1983360301811261598c575f80fd5b9190910192915050565b5f602082840312156159a6575f80fd5b8135600581106104f1575f80fd5b818103818111156104025761040261575f565b808201808211156104025761040261575f565b5f815180845260208085019450602084015f5b838110156153e557615a0087835161534d565b60a09690960195908201906001016159ed565b5f6080808301878452602060018060a01b03808916602087015260406080604088015283895180865260a08901915060208b0195505f5b81811015615a8b578651615a5f84825161533d565b808701518616848801528481015185850152606090810151908401529585019591870191600101615a4a565b50508781036060890152615a9f818a6159da565b9c9b505050505050505050505050565b80820281158282048414176104025761040261575f56fea164736f6c6343000818000a","storage":{}},"0x6265cc8d1b28edfd4d76c80bf774c0d446fffbde":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610090575f3560e01c80633f15457f116100635780633f15457f1461010f5780637adbf973146101225780637dc0d1d0146101355780638bbedf7514610147578063be27b22c1461015a575f80fd5b806301ffc9a7146100945780631ecfc411146100bc578063224199c2146100d157806330349ebe146100e4575b5f80fd5b6100a76100a23660046115b1565b61016d565b60405190151581526020015b60405180910390f35b6100cf6100ca3660046115ef565b6101a3565b005b6100cf6100df3660046117e0565b6102de565b6002546100f7906001600160a01b031681565b6040516001600160a01b0390911681526020016100b3565b6001546100f7906001600160a01b031681565b6100cf6101303660046115ef565b61063c565b5f546100f7906001600160a01b031681565b6100cf610155366004611889565b61076d565b6100cf61016836600461190b565b6107f1565b5f6001600160e01b031982166301ffc9a760e01b148061019d57506001600160e01b031982166317d8f49b60e01b145b92915050565b6001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa1580156101ea573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061020e919061196b565b90505f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561024d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610271919061196b565b9050336001600160a01b03821614610287575f80fd5b600280546001600160a01b0319166001600160a01b0385169081179091556040519081527f9176b7f47e4504df5e5516c99d90d82ac7cbd49cc77e7f22ba2ac2f2e3a3eba8906020015b60405180910390a1505050565b5f546040516321ae60b160e11b81526001600160a01b039091169063435cc1629061030f90879087906004016119d3565b5f604051808303815f875af115801561032a573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526103519190810190611a6b565b92505f805f610360888761088b565b91945092509050336001600160a01b038216146103da5760405162461bcd60e51b815260206004820152602d60248201527f4f6e6c79206f776e65722063616e2063616c6c2070726f7665416e64436c616960448201526c36abb4ba342932b9b7b63b32b960991b60648201526084015b60405180910390fd5b6001600160a01b038416156105bb576001600160a01b03851661044e5760405162461bcd60e51b815260206004820152602660248201527f43616e6e6f74207365742061646472206966207265736f6c766572206973206e6044820152651bdd081cd95d60d21b60648201526084016103d1565b6001546040516305ef2c7f60e41b815260048101859052602481018490523060448201526001600160a01b0387811660648301525f608483015290911690635ef2c7f09060a4015f604051808303815f87803b1580156104ac575f80fd5b505af11580156104be573d5f803e3d5ffd5b505050505f83836040516020016104df929190918252602082015260400190565b60408051808303601f1901815290829052805160209091012062d5fa2b60e81b8252600482018190526001600160a01b03878116602484015290925087169063d5fa2b00906044015f604051808303815f87803b15801561053e575f80fd5b505af1158015610550573d5f803e3d5ffd5b5050600154604051635b0fc9c360e01b8152600481018590526001600160a01b0386811660248301529091169250635b0fc9c391506044015f604051808303815f87803b15801561059f575f80fd5b505af11580156105b1573d5f803e3d5ffd5b5050505050610632565b6001546040516305ef2c7f60e41b815260048101859052602481018490526001600160a01b03838116604483015287811660648301525f608483015290911690635ef2c7f09060a4015f604051808303815f87803b15801561061b575f80fd5b505af115801561062d573d5f803e3d5ffd5b505050505b5050505050505050565b6001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa158015610683573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106a7919061196b565b90505f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106e6573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061070a919061196b565b9050336001600160a01b03821614610720575f80fd5b5f80546001600160a01b0319166001600160a01b0385169081179091556040519081527fb3eacd0e351fafdfefdec84e1cd19679b38dbcd63ea7c2c24da17fd2bc3b3c0e906020016102d1565b5f546040516321ae60b160e11b81526001600160a01b039091169063435cc1629061079e90859085906004016119d3565b5f604051808303815f875af11580156107b9573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526107e09190810190611a6b565b90506107ec83826107f1565b505050565b5f805f6107fe858561088b565b6001546040516306ab592360e01b815260048101859052602481018490526001600160a01b03808416604483015294975092955090935091909116906306ab5923906064016020604051808303815f875af115801561085f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108839190611add565b505050505050565b5f8080806108998682610a40565b60ff1690506108aa86600183610a63565b92505f6108dc6108bb836001611b08565b6001848a516108ca9190611b1b565b6108d49190611b1b565b899190610a85565b6002546040516327c482cf60e11b81529192506001600160a01b031690634f89059e9061090d908490600401611b2e565b602060405180830381865afa158015610928573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061094c9190611b40565b6109a45760405162461bcd60e51b815260206004820152602360248201527f506172656e74206e616d65206d7573742062652061207075626c6963207375666044820152620ccd2f60eb1b60648201526084016103d1565b6109ae815f610b05565b5f549095506109c7906001600160a01b03168888610de3565b5060408051602081018890529081018690529093506001600160a01b03841690606001604051602081830303815290604052805190602001207fa2e66ce20e6fb2c4f61339c364ad79f15160cf5307230c8bc4d628adbca2ba3989604051610a2f9190611b2e565b60405180910390a350509250925092565b5f828281518110610a5357610a53611b5f565b016020015160f81c905092915050565b82515f90610a718385611b08565b1115610a7b575f80fd5b5091016020012090565b8251606090610a948385611b08565b1115610a9e575f80fd5b5f8267ffffffffffffffff811115610ab857610ab861160a565b6040519080825280601f01601f191660200182016040528015610ae2576020820181803683370190505b50905060208082019086860101610afa82828761100b565b509095945050505050565b5f80610b118484610a40565b60ff169050805f03610b2657505f905061019d565b5f610b4585610b358487611b08565b610b40906001611b08565b610b05565b90505f610b5e610b56866001611b08565b879085610a63565b604080516020810185905290810182905290915060600160408051808303601f190181529082905280516020909101206001546302571be360e01b8352600483018290529095505f916001600160a01b03909116906302571be390602401602060405180830381865afa158015610bd7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bfb919061196b565b90506001600160a01b0381161580610c1b57506001600160a01b03811630145b610c7a5760405162461bcd60e51b815260206004820152602a60248201527f43616e6e6f7420656e61626c652061206e616d65206f776e656420627920736f6044820152696d656f6e6520656c736560b01b60648201526084016103d1565b6001600160a01b0381163014610dd95782610d5e576001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa158015610cd6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cfa919061196b565b60405163232e3b3b60e21b8152600481018590523060248201529091506001600160a01b03821690638cb8ecec906044015f604051808303815f87803b158015610d42575f80fd5b505af1158015610d54573d5f803e3d5ffd5b5050505050610dd9565b6001546040516306ab592360e01b815260048101859052602481018490523060448201526001600160a01b03909116906306ab5923906064016020604051808303815f875af1158015610db3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610dd79190611add565b505b5050505092915050565b5f80610e016040518060400160405280606081526020015f81525090565b610e1985516005610e129190611b08565b8290611060565b50604080518082019091526005815264045f656e7360d81b6020820152610e419082906110c3565b50610e4c81866110c3565b50805160405163021e646f60e21b81525f9182916001600160a01b038a169163087991bc91610e8091601091600401611b73565b606060405180830381865afa158015610e9b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ebf9190611ba7565b93509150506bffffffffffffffffffffffff198216158015610ee057508551155b15610ef3575f8094509450505050611003565b855160208701206bffffffffffffffffffffffff19838116911614610f16575f80fd5b5f610f2187826110ef565b90505b80515160208201511015610ff857610f4b816080015183610f459190611bfc565b4261114a565b610fbd5760405162461bcd60e51b815260206004820152603c60248201527f444e53207265636f7264206973207374616c653b2072656672657368206f722060448201527f64656c657465206974206265666f72652070726f63656564696e672e0000000060648201526084016103d1565b5f80610fcd898460a00151611162565b925090508115610fe857965060019550611003945050505050565b5050610ff3816111d1565b610f24565b505f80945094505050505b935093915050565b602081106110435781518352611022602084611b08565b925061102f602083611b08565b915061103c602082611b1b565b905061100b565b905182516020929092036101000a5f190180199091169116179052565b60408051808201909152606081525f602082015261107f602083611c20565b156110a75761108f602083611c20565b61109a906020611b1b565b6110a49083611b08565b91505b506020828101829052604080518085525f815290920101905290565b60408051808201909152606081525f60208201526110e883845f0151518485516112b6565b9392505050565b6111376040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261019d816111d1565b5f806111568385611c3f565b60030b12159392505050565b5f805b83518310156111c4575f6111798585610a40565b60ff169050611189600185611b08565b93505f8061119887878561139c565b9250905081156111b0579350600192506111ca915050565b6111ba8387611b08565b9550505050611165565b505f9050805b9250929050565b60c081015160208201819052815151116111e85750565b5f6111fa825f015183602001516113f5565b82602001516112099190611b08565b82519091506112189082611454565b61ffff16604083015261122c600282611b08565b825190915061123b9082611454565b61ffff16606083015261124f600282611b08565b825190915061125e908261147a565b63ffffffff166080830152611274600482611b08565b82519091505f906112859083611454565b61ffff169050611296600283611b08565b60a0840181905291506112a98183611b08565b60c0909301929092525050565b60408051808201909152606081525f602082015282518211156112d7575f80fd5b60208501516112e68386611b08565b11156113195761131985611309876020015187866113049190611b08565b6114a2565b611314906002611c66565b6114b8565b5f808651805187602083010193508088870111156113375787860182525b505050602084015b602084106113775780518252611356602083611b08565b9150611363602082611b08565b9050611370602085611b1b565b935061133f565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b5f806113a8858561147a565b63ffffffff1663613d3078146113c257505f905080611003565b602c8310156113d557505f905080611003565b6113e9856113e4866004611b08565b6114d5565b91509150935093915050565b5f815b8351811061140857611408611c7d565b5f6114138583610a40565b60ff169050611423816001611b08565b61142d9083611b08565b9150805f0361143c5750611442565b506113f8565b61144c8382611b1b565b949350505050565b81515f90611463836002611b08565b111561146d575f80fd5b50016002015161ffff1690565b81515f90611489836004611b08565b1115611493575f80fd5b50016004015163ffffffff1690565b5f818311156114b257508161019d565b50919050565b81516114c48383611060565b506114cf83826110c3565b50505050565b5f8060288385516114e69190611b1b565b10156114f657505f9050806111ca565b5f835b611504856028611b08565b8110156115a55760049190911b905f61151d8783610a40565b60ff169050603081101580156115335750603a81105b1561154c57611543603082611b1b565b8317925061159c565b6041811015801561155d5750604781105b1561156d57611543603782611b1b565b6061811015801561157e5750606781105b1561158e57611543605782611b1b565b5f80945094505050506111ca565b506001016114f9565b50946001945092505050565b5f602082840312156115c1575f80fd5b81356001600160e01b0319811681146110e8575f80fd5b6001600160a01b03811681146115ec575f80fd5b50565b5f602082840312156115ff575f80fd5b81356110e8816115d8565b634e487b7160e01b5f52604160045260245ffd5b6040805190810167ffffffffffffffff811182821017156116415761164161160a565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156116705761167061160a565b604052919050565b5f67ffffffffffffffff8211156116915761169161160a565b50601f01601f191660200190565b5f82601f8301126116ae575f80fd5b81356116c16116bc82611678565b611647565b8181528460208386010111156116d5575f80fd5b816020850160208301375f918101602001919091529392505050565b5f82601f830112611700575f80fd5b8135602067ffffffffffffffff8083111561171d5761171d61160a565b8260051b61172c838201611647565b9384528581018301938381019088861115611745575f80fd5b84880192505b858310156117d457823584811115611761575f80fd5b88016040818b03601f1901811315611777575f80fd5b61177f61161e565b878301358781111561178f575f80fd5b61179d8d8a8387010161169f565b8252509082013590868211156117b1575f80fd5b6117bf8c898486010161169f565b8189015284525050918401919084019061174b565b98975050505050505050565b5f805f805f60a086880312156117f4575f80fd5b853567ffffffffffffffff8082111561180b575f80fd5b61181789838a0161169f565b9650602088013591508082111561182c575f80fd5b61183889838a016116f1565b9550604088013591508082111561184d575f80fd5b5061185a8882890161169f565b935050606086013561186b816115d8565b9150608086013561187b816115d8565b809150509295509295909350565b5f805f6060848603121561189b575f80fd5b833567ffffffffffffffff808211156118b2575f80fd5b6118be8783880161169f565b945060208601359150808211156118d3575f80fd5b6118df878388016116f1565b935060408601359150808211156118f4575f80fd5b506119018682870161169f565b9150509250925092565b5f806040838503121561191c575f80fd5b823567ffffffffffffffff80821115611933575f80fd5b61193f8683870161169f565b93506020850135915080821115611954575f80fd5b506119618582860161169f565b9150509250929050565b5f6020828403121561197b575f80fd5b81516110e8816115d8565b5f5b838110156119a0578181015183820152602001611988565b50505f910152565b5f81518084526119bf816020860160208601611986565b601f01601f19169290920160200192915050565b5f60408083016040845280865180835260608601915060608160051b870101925060208089015f5b83811015611a4b57888603605f1901855281518051888852611a1f898901826119a8565b9185015188830389870152919050611a3781836119a8565b9750505093820193908201906001016119fb565b505086840381880152505050611a6181866119a8565b9695505050505050565b5f60208284031215611a7b575f80fd5b815167ffffffffffffffff811115611a91575f80fd5b8201601f81018413611aa1575f80fd5b8051611aaf6116bc82611678565b818152856020838501011115611ac3575f80fd5b611ad4826020830160208601611986565b95945050505050565b5f60208284031215611aed575f80fd5b5051919050565b634e487b7160e01b5f52601160045260245ffd5b8082018082111561019d5761019d611af4565b8181038181111561019d5761019d611af4565b602081525f6110e860208301846119a8565b5f60208284031215611b50575f80fd5b815180151581146110e8575f80fd5b634e487b7160e01b5f52603260045260245ffd5b61ffff83168152604060208201525f61144c60408301846119a8565b805163ffffffff81168114611ba2575f80fd5b919050565b5f805f60608486031215611bb9575f80fd5b611bc284611b8f565b9250611bd060208501611b8f565b915060408401516bffffffffffffffffffffffff1981168114611bf1575f80fd5b809150509250925092565b63ffffffff818116838216019080821115611c1957611c19611af4565b5092915050565b5f82611c3a57634e487b7160e01b5f52601260045260245ffd5b500690565b600382810b9082900b03637fffffff198112637fffffff8213171561019d5761019d611af4565b808202811582820484141761019d5761019d611af4565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{"0x0":"0x9b2565a3545a1312bdcb6e7148a7f7cae8c2706b","0x1":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0x2":"0x287dee389caaa49edc112888f2bcfd927b472e25"}},"0x62b11ad5f582a5c5d378fb310125b030042554f1":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106103af5760003560e01c80637e37479e116101f4578063ba5d40b71161011a578063e985e9c5116100ad578063f5c1f76e1161007c578063f5c1f76e146108d8578063f7df5c60146108eb578063f8c8765e146108fe578063ffa1ad741461091157600080fd5b8063e985e9c51461087a578063ebf0c717146108b6578063ec129eea146108bd578063f25eb5c1146108d057600080fd5b8063c87b56dd116100e9578063c87b56dd1461082e578063ce92b33e14610841578063cf2c52cb14610854578063d9548e531461086757600080fd5b8063ba5d40b7146107b3578063baef73e9146107c6578063bb5b27e114610808578063bebec6b41461081b57600080fd5b8063a22cb46511610192578063ac9650d811610161578063ac9650d81461074c578063b3f9e4cb1461076c578063b85afd281461077f578063b88d4fde146107a057600080fd5b8063a22cb465146106e7578063a3f4df7e146106fa578063a424740014610726578063ab3b87fe1461073957600080fd5b80639508b1c4116101ce5780639508b1c4146106b15780639559c0bd146106c457806395d89b41146106cc57806399e0dd7c146106d457600080fd5b80637e37479e146106785780637eee288d1461068b57806394d008ef1461069e57600080fd5b806342842e0e116102d95780635096023911610277578063663f7b2a11610246578063663f7b2a14610610578063672b9f81146106235780636ccbae5f1461064457806370a082311461066557600080fd5b806350960239146105bb578063572b6c05146105ce5780636352211e146105ea578063638e5c78146105fd57600080fd5b806347c81699116102b357806347c816991461056f5780634a72584d146105825780634f558e791461059557806350382c1a146105a857600080fd5b806342842e0e1461053657806342966c6814610549578063430c20811461055c57600080fd5b80631bf7e13e1161035157806327f189751161032057806327f18975146104ea578063310bd74b146104fd5780633f72ec6e1461051057806340c10f191461052357600080fd5b80631bf7e13e146104905780631f71be06146104a357806323b872dd146104b6578063276fabb1146104c957600080fd5b8063095ea7b31161038d578063095ea7b31461041c578063150b7a02146104315780631bd8cc1a1461045d5780631be5e7ed1461047d57600080fd5b806301ffc9a7146103b457806306fdde03146103dc578063081812fc146103f1575b600080fd5b6103c76103c2366004613f0b565b610935565b60405190151581526020015b60405180910390f35b6103e4610946565b6040516103d39190613f78565b6104046103ff366004613f8b565b6109d8565b6040516001600160a01b0390911681526020016103d3565b61042f61042a366004613fb9565b6109ff565b005b61044461043f366004614026565b610a18565b6040516001600160e01b031990911681526020016103d3565b61047061046b3660046140dc565b610b72565b6040516103d3919061417f565b6103e461048b366004614192565b610c68565b6103e461049e3660046141c9565b610cb3565b61042f6104b1366004614249565b610dbe565b61042f6104c4366004614305565b610e54565b6104dc6104d7366004614346565b610ea7565b6040519081526020016103d3565b61042f6104f8366004614387565b610eb6565b61042f61050b366004613f8b565b610efe565b61042f61051e3660046143fa565b610f39565b61042f610531366004613fb9565b61103b565b61042f610544366004614305565b611088565b61042f610557366004613f8b565b6110a3565b6103c761056a366004613fb9565b6110e7565b61042f61057d366004614424565b6110f3565b61042f610590366004614485565b611132565b6103c76105a3366004613f8b565b611178565b61042f6105b636600461458c565b611197565b61042f6105c93660046145c0565b6111cd565b6103c76105dc3660046145c0565b6001600160a01b0316301490565b6104046105f8366004613f8b565b61122d565b61042f61060b366004613f8b565b61124a565b61042f61061e366004614678565b611295565b6106366106313660046146c0565b611336565b6040516103d39291906146e2565b6104dc610652366004613f8b565b6000908152610100602052604090205490565b6104dc6106733660046145c0565b61134e565b6104dc6106863660046145c0565b6113d4565b61042f610699366004613fb9565b611405565b61042f6106ac366004614707565b61145c565b61042f6106bf366004614762565b6114ab565b6104dc601481565b6103e4611532565b61042f6106e2366004614805565b611541565b61042f6106f536600461483a565b6115c8565b6103e46040518060400160405280600d81526020016c554e533a20526567697374727960981b81525081565b6103c76107343660046141c9565b6115da565b61042f610747366004613fb9565b611625565b61075f61075a366004614346565b61166a565b6040516103d39190614866565b61040461077a366004613f8b565b611746565b61079261078d3660046140dc565b611770565b6040516103d39291906148c8565b61042f6107ae3660046148ed565b611892565b61042f6107c1366004614249565b6118d9565b6107f06107d4366004613f8b565b600090815261013960205260409020546001600160401b031690565b6040516001600160401b0390911681526020016103d3565b6103e4610816366004613f8b565b611962565b6103e46108293660046145c0565b611a04565b6103e461083c366004613f8b565b611ace565b61042f61084f366004614387565b611b34565b61042f610862366004614958565b611b73565b6103c7610875366004613f8b565b611c42565b6103c761088836600461499f565b6001600160a01b039182166000908152606a6020908152604080832093909416825291909152205460ff1690565b60006104dc565b61042f6108cb366004614387565b611c85565b61042f611cc4565b6104706108e6366004614346565b611d4b565b61042f6108f93660046149d8565b611dfe565b61042f61090c366004614a0a565b611e8f565b6103e460405180604001604052806005815260200164302e392e3160d81b81525081565b600061094082612065565b92915050565b60606065805461095590614a66565b80601f016020809104026020016040519081016040528092919081815260200182805461098190614a66565b80156109ce5780601f106109a3576101008083540402835291602001916109ce565b820191906000526020600020905b8154815290600101906020018083116109b157829003601f168201915b5050505050905090565b60006109e3826120b5565b506000908152606960205260409020546001600160a01b031690565b80610a0981612114565b610a13838361217a565b505050565b60007f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378546001600160a01b0316610a4d61229c565b6001600160a01b031603610b0e57610a6361229c565b6001600160a01b03166342966c68856040518263ffffffff1660e01b8152600401610a9091815260200190565b600060405180830381600087803b158015610aaa57600080fd5b505af1158015610abe573d6000803e3d6000fd5b505050821580159150610ad85750610ad882840184614a9a565b15610af657610ae730856122ab565b610af185856123f9565b610b00565b610b0085856122ab565b50630a85bd0160e11b610b69565b60405162461bcd60e51b815260206004820152602560248201527f52656769737472793a204552433732315f524543454956494e475f50524f4849604482015264109255115160da1b60648201526084015b60405180910390fd5b95945050505050565b6060826001600160401b03811115610b8c57610b8c6144d7565b604051908082528060200260200182016040528015610bbf57816020015b6060815260200190600190039081610baa5790505b50905060005b83811015610c6057610c30858583818110610be257610be2614ab5565b9050602002810190610bf49190614acb565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508792506124a4915050565b828281518110610c4257610c42614ab5565b60200260200101819052508080610c5890614b27565b915050610bc5565b509392505050565b6060610cab84848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508692506124a4915050565b949350505050565b606060005a9050610cc58585856115da565b610d215760405162461bcd60e51b815260206004820152602760248201527f554e535265676973747279466f727761726465723a205349474e41545552455f6044820152661253959053125160ca1b6064820152608401610b60565b610db3610d3160208701876145c0565b30604088013584610d4560608b018b614acb565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284376000920191909152506124d992505050565b9150505b9392505050565b610134546001600160a01b0316610dd361229c565b6001600160a01b031614610df95760405162461bcd60e51b8152600401610b6090614b40565b6000610e0d610e08888a614b87565b6125ba565b509050610e1a8982611405565b610e278686868685612612565b8115610e4957610e498982610e44610e3f8b8d614b87565b612680565b612701565b505050505050505050565b80610e66610e6061229c565b82612743565b610e825760405162461bcd60e51b8152600401610b6090614b94565b81610e8c81612114565b610e95836127d4565b610ea0858585612841565b5050505050565b6000610c60610e088385614b87565b80610ec2610e6061229c565b610ede5760405162461bcd60e51b8152600401610b6090614b94565b81610ee881612114565b610ef587878787876129e8565b50505050505050565b80610f0a610e6061229c565b610f265760405162461bcd60e51b8152600401610b6090614b94565b81610f3081612114565b610a13836127d4565b610134546001600160a01b0316610f4e61229c565b6001600160a01b031614610f745760405162461bcd60e51b8152600401610b6090614b40565b610f7d816120b5565b42826001600160401b031611610fd55760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a204558504952595f494e5f5041535400000000000000006044820152606401610b60565b60008181526101396020908152604091829020805467ffffffffffffffff19166001600160401b038616908117909155915191825282917f93feabb03ab84f47fc85bf0c298103fca21d8c8bc376eae0c1e1c56b9d4f7789910160405180910390a25050565b611043612a4b565b6001600160a01b031661105461229c565b6001600160a01b03161461107a5760405162461bcd60e51b8152600401610b6090614bdd565b61108482826122ab565b5050565b610a1383838360405180602001604052806000815250611892565b806110af610e6061229c565b6110cb5760405162461bcd60e51b8152600401610b6090614b94565b816110d581612114565b6110de836127d4565b610a1383612b4c565b6000610db78383612743565b806110ff610e6061229c565b61111b5760405162461bcd60e51b8152600401610b6090614b94565b8161112581612114565b610ef58787878787612bf3565b8061113e610e6061229c565b61115a5760405162461bcd60e51b8152600401610b6090614b94565b8161116481612114565b61117086868686612cd2565b505050505050565b6000818152606760205260408120546001600160a01b03161515610940565b6111ca816040516020016111ab9190614c1f565b6040516020818303038152906040528051906020012060001c82612d72565b50565b610134546001600160a01b03166111e261229c565b6001600160a01b0316146112085760405162461bcd60e51b8152600401610b6090614b40565b6001600160a01b0316600090815261013660205260409020805460ff19166001179055565b600061123882611c42565b6112455761094082612d97565b919050565b80611256610e6061229c565b6112725760405162461bcd60e51b8152600401610b6090614b94565b61128461127d61229c565b3084612841565b61108461128f61229c565b836123f9565b60006112a0826125ba565b5090506112ab61229c565b6001600160a01b03166112bd8261122d565b6001600160a01b0316146113135760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b60565b61131c81612114565b61108461132761229c565b8261133185612680565b612df7565b6060806113438484612e7e565b909590945092505050565b60006001600160a01b0382166113b85760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b6064820152608401610b60565b506001600160a01b031660009081526068602052604090205490565b6001600160a01b038116600090815261013560205260408120546113f781612e9f565b6113ff578091505b50919050565b610134546001600160a01b031661141a61229c565b6001600160a01b0316146114405760405162461bcd60e51b8152600401610b6090614b40565b611449816127d4565b61108461145582612d97565b8383612841565b611464612a4b565b6001600160a01b031661147561229c565b6001600160a01b03161461149b5760405162461bcd60e51b8152600401610b6090614bdd565b6114a584846122ab565b50505050565b6114b58787612ee9565b6114bd61229c565b6001600160a01b03166114cf8661122d565b6001600160a01b0316146115255760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b60565b610ef58484848489612612565b60606066805461095590614a66565b610134546001600160a01b031661155661229c565b6001600160a01b03161461157c5760405162461bcd60e51b8152600401610b6090614b40565b61013361158a828483614c81565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b82826040516115bc929190614d69565b60405180910390a15050565b6110846115d361229c565b8383612f58565b6000610cab6115e885614d7d565b3085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061302692505050565b80611631610e6061229c565b61164d5760405162461bcd60e51b8152600401610b6090614b94565b8161165781612114565b6114a561166384612d97565b8585612841565b606060006116788385614e07565b905030330361173d5760005b8381101561173b5761170b61169761229c565b61169f61316f565b8787858181106116b1576116b1614ab5565b90506020028101906116c39190614acb565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250613183915050565b82828151811061171d5761171d614ab5565b6020026020010181905250808061173390614b27565b915050611684565b505b610cab816131b3565b6000818152606760205260408120546001600160a01b0316611769576000610940565b3092915050565b606080836001600160401b0381111561178b5761178b6144d7565b6040519080825280602002602001820160405280156117be57816020015b60608152602001906001900390816117a95790505b509150836001600160401b038111156117d9576117d96144d7565b60405190808252806020026020018201604052801561180c57816020015b60608152602001906001900390816117f75790505b50905060005b848110156118895761183c86868381811061182f5761182f614ab5565b9050602002013585612e7e565b84838151811061184e5761184e614ab5565b6020026020010184848151811061186757611867614ab5565b602002602001018290528290525050808061188190614b27565b915050611812565b50935093915050565b8161189e610e6061229c565b6118ba5760405162461bcd60e51b8152600401610b6090614b94565b826118c481612114565b6118cd846127d4565b611170868686866132de565b610134546001600160a01b03166118ee61229c565b6001600160a01b0316146119145760405162461bcd60e51b8152600401610b6090614b40565b600080611924610e08898b614b87565b9150915061193181613311565b6119498a83611943610e3f8c8e614b87565b86613371565b6119568787878786612612565b50505050505050505050565b600081815260c96020526040902080546060919061197f90614a66565b80601f01602080910402602001604051908101604052809291908181526020018280546119ab90614a66565b80156119f85780601f106119cd576101008083540402835291602001916119f8565b820191906000526020600020905b8154815290600101906020018083116119db57829003601f168201915b50505050509050919050565b6001600160a01b03811660009081526101356020526040902054606090611a2a81612e9f565b6113ff576000818152610138602052604090208054611a4890614a66565b80601f0160208091040260200160405190810160405280929190818152602001828054611a7490614a66565b8015611ac15780601f10611a9657610100808354040283529160200191611ac1565b820191906000526020600020905b815481529060010190602001808311611aa457829003601f168201915b5050505050915050919050565b6060611ad9826120b5565b6000611ae36133c4565b90506000815111611b035760405180602001604052806000815250610db7565b80611b0d846133d4565b604051602001611b1e929190614e7a565b6040516020818303038152906040529392505050565b80611b40610e6061229c565b611b5c5760405162461bcd60e51b8152600401610b6090614b94565b81611b6681612114565b610ef58787878787612612565b7f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87546001600160a01b0316611ba661229c565b6001600160a01b031614611bcc5760405162461bcd60e51b8152600401610b6090614bdd565b6020819003611bef576000611be382840184613f8b565b90506114a584826122ab565b6000611bfd82840184614ea9565b805190915060005b8181101561117057611c3086848381518110611c2357611c23614ab5565b60200260200101516122ab565b80611c3a81614b27565b915050611c05565b600081815261013960205260408120546001600160401b03161580159061094057505060009081526101396020526040902054426001600160401b039091161090565b80611c91610e6061229c565b611cad5760405162461bcd60e51b8152600401610b6090614b94565b81611cb781612114565b610ef587878787876134d4565b6000611cce61229c565b6001600160a01b0381166000908152610135602052604081205491925003611d425760405162461bcd60e51b815260206004820152602160248201527f52656769737472793a20524556455253455f5245434f52445f49535f454d50546044820152605960f81b6064820152608401610b60565b6111ca816134ea565b6060816001600160401b03811115611d6557611d656144d7565b604051908082528060200260200182016040528015611d9857816020015b6060815260200190600190039081611d835790505b50905060005b82811015611df757611dc7848483818110611dbb57611dbb614ab5565b90506020020135611962565b828281518110611dd957611dd9614ab5565b60200260200101819052508080611def90614b27565b915050611d9e565b5092915050565b610134546001600160a01b0316611e1361229c565b6001600160a01b031614611e395760405162461bcd60e51b8152600401610b6090614b40565b61013454611e50906001600160a01b0316846122ab565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c39528383604051611e82929190614d69565b60405180910390a2505050565b600054610100900460ff1615808015611eaf5750600054600160ff909116105b80611ec95750303b158015611ec9575060005460ff166001145b611f2c5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610b60565b6000805460ff191660011790558015611f4f576000805461ff0019166101001790555b61013480546001600160a01b0319166001600160a01b038716179055837f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec9237880546001600160a01b0319166001600160a01b03929092169190911790556040805180820182526013815272556e73746f707061626c6520446f6d61696e7360681b60208083019190915282518084019093526002835261155160f21b90830152611ff79161352f565b611fff61356f565b61200761356f565b61201083613598565b612019826135c8565b8015610ea0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b60006001600160e01b031982166380ac58cd60e01b148061209657506001600160e01b03198216635b5e139f60e01b145b8061094057506301ffc9a760e01b6001600160e01b0319831614610940565b6000818152606760205260409020546001600160a01b03166111ca5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b60565b3033036121715761212361316f565b81146111ca5760405162461bcd60e51b815260206004820152601760248201527f52656769737472793a20544f4b454e5f494e56414c49440000000000000000006044820152606401610b60565b6111ca816135f8565b600061218582612d97565b9050806001600160a01b0316836001600160a01b0316036121f25760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b6064820152608401610b60565b806001600160a01b031661220461229c565b6001600160a01b0316148061222057506122208161088861229c565b6122925760405162461bcd60e51b815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c00006064820152608401610b60565b610a138383613626565b60006122a6613694565b905090565b6001600160a01b0382166123015760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610b60565b6000818152606760205260409020546001600160a01b0316156123665760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610b60565b612372600083836136af565b6001600160a01b038216600090815260686020526040812080546001929061239b908490614f39565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b03861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b6000612403612a4b565b905061240f8183613626565b60008051602061529383398151915254604080516020808201869052825180830390910181528183019283905263e3dec8fb60e01b9092526001600160a01b0390921691829163e3dec8fb9161246c918891309190604401614f4c565b600060405180830381600087803b15801561248657600080fd5b505af115801561249a573d6000803e3d6000fd5b5050505050505050565b6060610db7836040516020016124ba9190614c1f565b6040516020818303038152906040528051906020012060001c8361378b565b60606124e4856135f8565b600080876001600160a01b0316866124fe8b8a8989613183565b60405161250b9190614c1f565b60006040518083038160008787f1925050503d8060008114612549576040519150601f19603f3d011682016040523d82523d6000602084013e61254e565b606091505b50909250905061255f603f87614f8e565b5a1161256d5761256d614fa2565b6125ad82826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061386d565b9998505050505050505050565b805160009081905b801561260c578291506125f882856125db600185614fb8565b815181106125eb576125eb614ab5565b60200260200101516138a6565b92508061260481614fcb565b9150506125c2565b50915091565b60005b848110156111705761266e86868381811061263257612632614ab5565b90506020028101906126449190614acb565b86868581811061265657612656614ab5565b90506020028101906126689190614acb565b86612bf3565b8061267881614b27565b915050612615565b606060008260008151811061269757612697614ab5565b602002602001015190506000600190505b8351811015611df757818482815181106126c4576126c4614ab5565b60200260200101516040516020016126dd929190614fe2565b604051602081830303815290604052915080806126f990614b27565b9150506126a8565b61dead6001600160a01b0384161480159061273357506001600160a01b03831660009081526101356020526040902054155b15610a1357610a13838383612df7565b60008061274f8361122d565b90506001600160a01b03811615801590610cab5750806001600160a01b0316846001600160a01b031614806127a957506001600160a01b038082166000908152606a602090815260408083209388168352929052205460ff165b80610cab5750836001600160a01b03166127c2846109d8565b6001600160a01b031614949350505050565b6127dd81613952565b6040516020016127ef91815260200190565b60408051601f198184030181528282528051602091820120600085815260cb9092529181209190915582917f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9190a250565b826001600160a01b031661285482612d97565b6001600160a01b0316146128b85760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b6064820152608401610b60565b6001600160a01b03821661291a5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610b60565b6129258383836136af565b612930600082613626565b6001600160a01b0383166000908152606860205260408120805460019290612959908490614fb8565b90915550506001600160a01b0382166000908152606860205260408120805460019290612987908490614f39565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60005b8481101561117057612a39868683818110612a0857612a08614ab5565b90506020020135858584818110612a2157612a21614ab5565b9050602002810190612a339190614acb565b85612cd2565b80612a4381614b27565b9150506129eb565b600080516020615293833981519152546000906001600160a01b03168015612b485760405163721804d360e11b81523060048201526000906001600160a01b0383169063e43009a690602401602060405180830381865afa158015612ab4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ad8919061501e565b60405163e66f960360e01b8152600481018290529091506001600160a01b0383169063e66f960390602401602060405180830381865afa158015612b20573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b449190615037565b9250505b5090565b6000612b5782612d97565b9050612b65816000846136af565b612b70600083613626565b6001600160a01b0381166000908152606860205260408120805460019290612b99908490614fb8565b909155505060008281526067602052604080822080546001600160a01b0319169055518391906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b60008585604051602001612c08929190615054565b60408051601f198184030181528282528051602091820120601f8901829004820284018201909252878352909250612c5c9183918990899081908401838280828437600092019190915250612d7292505050565b6111708187878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061397a915050565b612cdb84613aaf565b612d275760405162461bcd60e51b815260206004820152601c60248201527f5265636f726453746f726167653a204b45595f4e4f545f464f554e44000000006044820152606401610b60565b6114a584612d3486611962565b85858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525087925061397a915050565b612d7b82613aaf565b61108457600082815260c960205260409020610a138282615064565b6000818152606760205260408120546001600160a01b0316806109405760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b60565b6000828152610138602052604090208054612e1190614a66565b9050600003612e3557600082815261013860205260409020612e338282615064565b505b6001600160a01b03831660008181526101356020526040808220859055518492917feb76a21470988c474a21f690cc28fee1ed511bd812dc3c21fd0f49c5e5d4708a91a3505050565b606080612e8a84611962565b9150612e96848461378b565b90509250929050565b6000818152610137602052604081205460ff16801561094057506101366000612ec661229c565b6001600160a01b0316815260208101919091526040016000205460ff1692915050565b60008051602061529383398151915254604051633805550f60e01b81526001600160a01b03909116908190633805550f90612f2a9086908690600401614d69565b600060405180830381600087803b158015612f4457600080fd5b505af1158015610ef5573d6000803e3d6000fd5b816001600160a01b0316836001600160a01b031603612fb95760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610b60565b6001600160a01b038381166000818152606a6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561306d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613091919061501e565b9050600061313f8660600151805190602001208688602001516040516020016130df9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561316557508551613165906001600160a01b03168286613ad5565b9695505050505050565b60003033036131805750601f193601355b90565b606082858560405160200161319a93929190615123565b6040516020818303038152906040529050949350505050565b606081516001600160401b038111156131ce576131ce6144d7565b60405190808252806020026020018201604052801561320157816020015b60608152602001906001900390816131ec5790505b50905060005b82518110156113ff57600080306001600160a01b031685848151811061322f5761322f614ab5565b60200260200101516040516132449190614c1f565b600060405180830381855af49150503d806000811461327f576040519150601f19603f3d011682016040523d82523d6000602084013e613284565b606091505b50915091506132ac82826040518060600160405280602781526020016152b36027913961386d565b8484815181106132be576132be614ab5565b6020026020010181905250505080806132d690614b27565b915050613207565b6132e9848484612841565b6132f584848484613c17565b6114a55760405162461bcd60e51b8152600401610b6090615162565b6000818152610137602052604090205460ff16156111ca5760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a20544f4b454e5f555047524144454400000000000000006044820152606401610b60565b61337b84846122ab565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952836040516133ab9190613f78565b60405180910390a280156114a5576114a5848484612701565b6060610133805461095590614a66565b6060816000036133fb5750506040805180820190915260018152600360fc1b602082015290565b8160005b8115613425578061340f81614b27565b915061341e9050600a83614f8e565b91506133ff565b6000816001600160401b0381111561343f5761343f6144d7565b6040519080825280601f01601f191660200182016040528015613469576020820181803683370190505b5090505b8415610cab5761347e600183614fb8565b915061348b600a866151b4565b613496906030614f39565b60f81b8183815181106134ab576134ab614ab5565b60200101906001600160f81b031916908160001a9053506134cd600a86614f8e565b945061346d565b6134dd816127d4565b610ea08585858585612612565b6001600160a01b03811660008181526101356020526040808220829055517ffcf5eec0cfa3e6332f5f0e63ec242d71f866a61d121d6cdf5c2eb3b668a26c4f9190a250565b600054610100900460ff166135565760405162461bcd60e51b8152600401610b60906151c8565b60656135628382615064565b506066610a138282615064565b600054610100900460ff166135965760405162461bcd60e51b8152600401610b60906151c8565b565b600054610100900460ff166135bf5760405162461bcd60e51b8152600401610b60906151c8565b6111ca81613d1c565b600054610100900460ff166135ef5760405162461bcd60e51b8152600401610b60906151c8565b6111ca81613d75565b60008181526101006020526040902054613613906001614f39565b6000918252610100602052604090912055565b600081815260696020526040902080546001600160a01b0319166001600160a01b038416908117909155819061365b82612d97565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60003033036136aa575060331936013560601c90565b503390565b6001600160a01b0382166136c6576136c681613311565b600081815261013960205260409020546001600160401b031615613761576001600160a01b0382161580159061371557506136ff612a4b565b6001600160a01b0316826001600160a01b031614155b6137615760405162461bcd60e51b815260206004820152601960248201527f52656769737472793a20544f4b454e5f455850495241424c45000000000000006044820152606401610b60565b6001600160a01b03831660009081526101356020526040902054819003610a1357610a13836134ea565b606061379682612e9f565b156137b05750604080516020810190915260008152610940565b60ca60006137bd84613952565b8152602001908152602001600020600084815260200190815260200160002080546137e790614a66565b80601f016020809104026020016040519081016040528092919081815260200182805461381390614a66565b80156138605780601f1061383557610100808354040283529160200191613860565b820191906000526020600020905b81548152906001019060200180831161384357829003601f168201915b5050505050905092915050565b6060831561387c575081610db7565b82511561388c5782518084602001fd5b8160405162461bcd60e51b8152600401610b609190613f78565b600081516000036138f15760405162461bcd60e51b815260206004820152601560248201527452656769737472793a204c4142454c5f454d50545960581b6044820152606401610b60565b82826040516020016139039190614c1f565b60405160208183030381529060405280519060200120604051602001613933929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b600081815260cb602052604081205415612b4857600082815260cb6020526040902054610940565b60ca600061398783613952565b8152602001908152602001600020600085815260200190815260200160002080546139b190614a66565b9050600003613a0957826040516139c89190614c1f565b6040518091039020817f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f8685604051613a009190613f78565b60405180910390a35b8160ca6000613a1784613952565b815260200190815260200160002060008681526020019081526020016000209081613a429190615064565b5081604051613a519190614c1f565b604051809103902083604051613a679190614c1f565b6040518091039020827f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d928686604051613aa19291906146e2565b60405180910390a450505050565b600081815260c9602052604081208054829190613acb90614a66565b9050119050919050565b6000806000613ae48585613dc3565b90925090506000816004811115613afd57613afd615213565b148015613b1b5750856001600160a01b0316826001600160a01b0316145b15613b2b57600192505050610db7565b600080876001600160a01b0316631626ba7e60e01b8888604051602401613b53929190615229565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051613b919190614c1f565b600060405180830381855afa9150503d8060008114613bcc576040519150601f19603f3d011682016040523d82523d6000602084013e613bd1565b606091505b5091509150818015613be4575080516020145b8015613c0b57508051630b135d3f60e11b90613c09908301602090810190840161501e565b145b98975050505050505050565b60006001600160a01b0384163b15613d1457836001600160a01b031663150b7a02613c4061229c565b8786866040518563ffffffff1660e01b8152600401613c629493929190615242565b6020604051808303816000875af1925050508015613c9d575060408051601f3d908101601f19168201909252613c9a91810190615275565b60015b613cfa573d808015613ccb576040519150601f19603f3d011682016040523d82523d6000602084013e613cd0565b606091505b508051600003613cf25760405162461bcd60e51b8152600401610b6090615162565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610cab565b506001610cab565b600054610100900460ff16613d435760405162461bcd60e51b8152600401610b60906151c8565b806000805160206152938339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b600054610100900460ff16613d9c5760405162461bcd60e51b8152600401610b60906151c8565b807f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87613d54565b6000808251604103613df95760208301516040840151606085015160001a613ded87828585613e08565b94509450505050613e01565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613e3f5750600090506003613eec565b8460ff16601b14158015613e5757508460ff16601c14155b15613e685750600090506004613eec565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613ebc573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613ee557600060019250925050613eec565b9150600090505b94509492505050565b6001600160e01b0319811681146111ca57600080fd5b600060208284031215613f1d57600080fd5b8135610db781613ef5565b60005b83811015613f43578181015183820152602001613f2b565b50506000910152565b60008151808452613f64816020860160208601613f28565b601f01601f19169290920160200192915050565b602081526000610db76020830184613f4c565b600060208284031215613f9d57600080fd5b5035919050565b6001600160a01b03811681146111ca57600080fd5b60008060408385031215613fcc57600080fd5b8235613fd781613fa4565b946020939093013593505050565b60008083601f840112613ff757600080fd5b5081356001600160401b0381111561400e57600080fd5b602083019150836020828501011115613e0157600080fd5b60008060008060006080868803121561403e57600080fd5b853561404981613fa4565b9450602086013561405981613fa4565b93506040860135925060608601356001600160401b0381111561407b57600080fd5b61408788828901613fe5565b969995985093965092949392505050565b60008083601f8401126140aa57600080fd5b5081356001600160401b038111156140c157600080fd5b6020830191508360208260051b8501011115613e0157600080fd5b6000806000604084860312156140f157600080fd5b83356001600160401b0381111561410757600080fd5b61411386828701614098565b909790965060209590950135949350505050565b600082825180855260208086019550808260051b84010181860160005b8481101561417257601f19868403018952614160838351613f4c565b98840198925090830190600101614144565b5090979650505050505050565b602081526000610db76020830184614127565b6000806000604084860312156141a757600080fd5b83356001600160401b038111156141bd57600080fd5b61411386828701613fe5565b6000806000604084860312156141de57600080fd5b83356001600160401b03808211156141f557600080fd5b908501906080828803121561420957600080fd5b9093506020850135908082111561421f57600080fd5b5061422c86828701613fe5565b9497909650939450505050565b8035801515811461124557600080fd5b60008060008060008060008060a0898b03121561426557600080fd5b883561427081613fa4565b975060208901356001600160401b038082111561428c57600080fd5b6142988c838d01614098565b909950975060408b01359150808211156142b157600080fd5b6142bd8c838d01614098565b909750955060608b01359150808211156142d657600080fd5b506142e38b828c01614098565b90945092506142f6905060808a01614239565b90509295985092959890939650565b60008060006060848603121561431a57600080fd5b833561432581613fa4565b9250602084013561433581613fa4565b929592945050506040919091013590565b6000806020838503121561435957600080fd5b82356001600160401b0381111561436f57600080fd5b61437b85828601614098565b90969095509350505050565b60008060008060006060868803121561439f57600080fd5b85356001600160401b03808211156143b657600080fd5b6143c289838a01614098565b909750955060208801359150808211156143db57600080fd5b506143e888828901614098565b96999598509660400135949350505050565b6000806040838503121561440d57600080fd5b82356001600160401b0381168114613fd757600080fd5b60008060008060006060868803121561443c57600080fd5b85356001600160401b038082111561445357600080fd5b61445f89838a01613fe5565b9097509550602088013591508082111561447857600080fd5b506143e888828901613fe5565b6000806000806060858703121561449b57600080fd5b8435935060208501356001600160401b038111156144b857600080fd5b6144c487828801613fe5565b9598909750949560400135949350505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715614515576145156144d7565b604052919050565b600082601f83011261452e57600080fd5b81356001600160401b03811115614547576145476144d7565b61455a601f8201601f19166020016144ed565b81815284602083860101111561456f57600080fd5b816020850160208301376000918101602001919091529392505050565b60006020828403121561459e57600080fd5b81356001600160401b038111156145b457600080fd5b610cab8482850161451d565b6000602082840312156145d257600080fd5b8135610db781613fa4565b60006001600160401b038211156145f6576145f66144d7565b5060051b60200190565b600061461361460e846145dd565b6144ed565b8381529050602080820190600585901b84018681111561463257600080fd5b845b8181101561466d5780356001600160401b038111156146535760008081fd5b61465f8982890161451d565b855250928201928201614634565b505050509392505050565b60006020828403121561468a57600080fd5b81356001600160401b038111156146a057600080fd5b8201601f810184136146b157600080fd5b610cab84823560208401614600565b600080604083850312156146d357600080fd5b50508035926020909101359150565b6040815260006146f56040830185613f4c565b8281036020840152610db38185613f4c565b6000806000806060858703121561471d57600080fd5b843561472881613fa4565b93506020850135925060408501356001600160401b0381111561474a57600080fd5b61475687828801613fe5565b95989497509550505050565b60008060008060008060006080888a03121561477d57600080fd5b87356001600160401b038082111561479457600080fd5b6147a08b838c01613fe5565b909950975060208a0135965060408a01359150808211156147c057600080fd5b6147cc8b838c01614098565b909650945060608a01359150808211156147e557600080fd5b506147f28a828b01614098565b989b979a50959850939692959293505050565b6000806020838503121561481857600080fd5b82356001600160401b0381111561482e57600080fd5b61437b85828601613fe5565b6000806040838503121561484d57600080fd5b823561485881613fa4565b9150612e9660208401614239565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156148bb57603f198886030184526148a9858351613f4c565b9450928501929085019060010161488d565b5092979650505050505050565b6040815260006148db6040830185614127565b8281036020840152610db38185614127565b6000806000806080858703121561490357600080fd5b843561490e81613fa4565b9350602085013561491e81613fa4565b92506040850135915060608501356001600160401b0381111561494057600080fd5b61494c8782880161451d565b91505092959194509250565b60008060006040848603121561496d57600080fd5b833561497881613fa4565b925060208401356001600160401b0381111561499357600080fd5b61422c86828701613fe5565b600080604083850312156149b257600080fd5b82356149bd81613fa4565b915060208301356149cd81613fa4565b809150509250929050565b6000806000604084860312156149ed57600080fd5b8335925060208401356001600160401b0381111561499357600080fd5b60008060008060808587031215614a2057600080fd5b8435614a2b81613fa4565b93506020850135614a3b81613fa4565b92506040850135614a4b81613fa4565b91506060850135614a5b81613fa4565b939692955090935050565b600181811c90821680614a7a57607f821691505b6020821081036113ff57634e487b7160e01b600052602260045260246000fd5b600060208284031215614aac57600080fd5b610db782614239565b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112614ae257600080fd5b8301803591506001600160401b03821115614afc57600080fd5b602001915036819003821315613e0157600080fd5b634e487b7160e01b600052601160045260246000fd5b600060018201614b3957614b39614b11565b5060010190565b60208082526027908201527f52656769737472793a2053454e4445525f49535f4e4f545f4d494e54494e475f60408201526626a0a720a3a2a960c91b606082015260800190565b6000610db7368484614600565b60208082526029908201527f52656769737472793a2053454e4445525f49535f4e4f545f415050524f5645446040820152682fa7a92fa7aba722a960b91b606082015260800190565b60208082526022908201527f52656769737472793a20494e53554646494349454e545f5045524d495353494f6040820152614e5360f01b606082015260800190565b60008251614c31818460208701613f28565b9190910192915050565b601f821115610a1357600081815260208120601f850160051c81016020861015614c625750805b601f850160051c820191505b8181101561117057828155600101614c6e565b6001600160401b03831115614c9857614c986144d7565b614cac83614ca68354614a66565b83614c3b565b6000601f841160018114614ce05760008515614cc85750838201355b600019600387901b1c1916600186901b178355610ea0565b600083815260209020601f19861690835b82811015614d115786850135825560209485019460019092019101614cf1565b5086821015614d2e5760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b602081526000610cab602083018486614d40565b600060808236031215614d8f57600080fd5b604051608081016001600160401b038282108183111715614db257614db26144d7565b8160405284359150614dc382613fa4565b81835260208501356020840152604085013560408401526060850135915080821115614dee57600080fd5b50614dfb3682860161451d565b60608301525092915050565b6000614e1561460e846145dd565b80848252602080830192508560051b850136811115614e3357600080fd5b855b81811015614e6e5780356001600160401b03811115614e545760008081fd5b614e6036828a0161451d565b865250938201938201614e35565b50919695505050505050565b60008351614e8c818460208801613f28565b835190830190614ea0818360208801613f28565b01949350505050565b60006020808385031215614ebc57600080fd5b82356001600160401b03811115614ed257600080fd5b8301601f81018513614ee357600080fd5b8035614ef161460e826145dd565b81815260059190911b82018301908381019087831115614f1057600080fd5b928401925b82841015614f2e57833582529284019290840190614f15565b979650505050505050565b8082018082111561094057610940614b11565b6001600160a01b03848116825283166020820152606060408201819052600090610b6990830184613f4c565b634e487b7160e01b600052601260045260246000fd5b600082614f9d57614f9d614f78565b500490565b634e487b7160e01b600052600160045260246000fd5b8181038181111561094057610940614b11565b600081614fda57614fda614b11565b506000190190565b60008351614ff4818460208801613f28565b601760f91b9083019081528351615012816001840160208801613f28565b01600101949350505050565b60006020828403121561503057600080fd5b5051919050565b60006020828403121561504957600080fd5b8151610db781613fa4565b8183823760009101908152919050565b81516001600160401b0381111561507d5761507d6144d7565b6150918161508b8454614a66565b84614c3b565b602080601f8311600181146150c657600084156150ae5750858301515b600019600386901b1c1916600185901b178555611170565b600085815260208120601f198616915b828110156150f5578886015182559484019460019091019084016150d6565b50858210156151135787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60008451615135818460208901613f28565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6000826151c3576151c3614f78565b500690565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b634e487b7160e01b600052602160045260246000fd5b828152604060208201526000610cab6040830184613f4c565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061316590830184613f4c565b60006020828403121561528757600080fd5b8151610db781613ef556febe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a","storage":{}},"0x6ac8f19d1e0f81147cdf2a1e53cb1f4e18417204":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610296575f3560e01c80636352211e11610161578063c93ab3fd116100ca578063e985e9c511610084578063e985e9c5146106c8578063eb8ae530146106db578063ed70554d146106ee578063f242432a1461070d578063f2fde38b14610720578063fd0cd0d914610733575f80fd5b8063c93ab3fd14610647578063cf4088231461065a578063d8c9921a1461066d578063d9a50c1214610680578063da8c229e14610693578063e0dba60f146106b5575f80fd5b8063a22cb4651161011b578063a22cb465146105d5578063a4014982146105e8578063adf4960a146105fb578063b6bcad261461060e578063c475abff14610621578063c658e08614610634575f80fd5b80636352211e146105595780636e5d6ad21461056c578063715018a6146105975780638b4dfa751461059f5780638cf8b41e146105b25780638da5cb5b146105c5575f80fd5b80631f4e1504116102035780633f15457f116101bd5780633f15457f146104b1578063402906fc146104d857806341415eab146105005780634e1273f41461051357806353095467146105335780635d3590d514610546575f80fd5b80631f4e15041461042b57806320c38e2b1461043e57806324c1af44146104515780632b20e397146104645780632eb2c2d61461048b57806333c69ea91461049e575f80fd5b80630e4cd725116102545780630e4cd725146103a05780630e89341c146103b357806314ab9038146103c6578063150b7a02146103d95780631534e177146104055780631896f70a14610418575f80fd5b8062fdd58e1461029a5780630178fe3f146102c057806301ffc9a71461030657806306fdde0314610329578063081812fc14610360578063095ea7b31461038b575b5f80fd5b6102ad6102a8366004614316565b610746565b6040519081526020015b60405180910390f35b6102d36102ce366004614340565b6107f0565b604080516001600160a01b03909416845263ffffffff90921660208401526001600160401b0316908201526060016102b7565b61031961031436600461436c565b61081f565b60405190151581526020016102b7565b6103536040518060400160405280600b81526020016a2730b6b2abb930b83832b960a91b81525081565b6040516102b791906143d4565b61037361036e366004614340565b61085e565b6040516001600160a01b0390911681526020016102b7565b61039e610399366004614316565b6108a0565b005b6103196103ae3660046143e6565b6108e5565b6103536103c1366004614340565b61095e565b61039e6103d436600461442f565b6109cc565b6103ec6103e736600461449d565b610ac0565b6040516001600160e01b031990911681526020016102b7565b61039e61041336600461450a565b610c96565b61039e6104263660046143e6565b610cc0565b600754610373906001600160a01b031681565b61035361044c366004614340565b610d75565b6102ad61045f3660046145f6565b610e0c565b6103737f000000000000000000000000c965345edac823d56812cd20a10316233916a60581565b61039e610499366004614717565b610fe7565b61039e6104ac3660046147bd565b61121a565b6103737f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a981565b6104eb6104e6366004614811565b6113e6565b60405163ffffffff90911681526020016102b7565b61031961050e3660046143e6565b611480565b610526610521366004614832565b6114b8565b6040516102b79190614928565b600554610373906001600160a01b031681565b61039e61055436600461493a565b6115d7565b610373610567366004614340565b611655565b61057f61057a366004614978565b61165f565b6040516001600160401b0390911681526020016102b7565b61039e61178e565b61039e6105ad3660046149aa565b6117a1565b61057f6105c03660046149e9565b6118c0565b5f546001600160a01b0316610373565b61039e6105e3366004614a6b565b611c28565b6102ad6105f6366004614a97565b611cfd565b610319610609366004614b12565b611e38565b61039e61061c36600461450a565b611e5c565b6102ad61062f366004614b33565b61209e565b6102ad610642366004614b53565b6122fd565b61039e610655366004614bc0565b6124bd565b61039e610668366004614c26565b612605565b61039e61067b366004614c5b565b612794565b61031961068e366004614b33565b61285d565b6103196106a136600461450a565b60046020525f908152604090205460ff1681565b61039e6106c3366004614a6b565b612938565b6103196106d6366004614c86565b61299f565b61039e6106e9366004614cb2565b6129cc565b6102ad6106fc366004614340565b60016020525f908152604090205481565b61039e61071b366004614d15565b612d59565b61039e61072e36600461450a565b612e06565b610319610741366004614340565b612e7c565b5f6001600160a01b0383166107b65760405162461bcd60e51b815260206004820152602b60248201527f455243313135353a2062616c616e636520717565727920666f7220746865207a60448201526a65726f206164647265737360a81b60648201526084015b60405180910390fd5b5f6107c083611655565b9050836001600160a01b0316816001600160a01b0316036107e55760019150506107ea565b5f9150505b92915050565b5f8181526001602052604090205460a081901c60c082901c610813838383612f4d565b90959094509092509050565b5f6001600160e01b03198216631b05885b60e31b148061084f57506001600160e01b03198216630a85bd0160e11b145b806107ea57506107ea82612f80565b5f8061086983611655565b90506001600160a01b03811661088157505f92915050565b5f838152600360205260409020546001600160a01b03165b9392505050565b5f6108aa826107f0565b50915050603f1960408216016108d65760405163a2a7201360e01b8152600481018390526024016107ad565b6108e08383612fcf565b505050565b5f8080806108f2866107f0565b925092509250846001600160a01b0316836001600160a01b0316148061091d575061091d838661299f565b8061094157506001600160a01b0385166109368761085e565b6001600160a01b0316145b8015610954575061095282826130de565b155b9695505050505050565b6005546040516303a24d0760e21b8152600481018390526060916001600160a01b031690630e89341c906024015f60405180830381865afa1580156109a5573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526107ea9190810190614d78565b816109d78133611480565b6109f857803360405163168ab55d60e31b81526004016107ad929190614dea565b8260105f610a05836107f0565b5091505063ffffffff8282161615610a335760405163a2a7201360e01b8152600481018490526024016107ad565b604051630295720760e31b8152600481018790526001600160401b03861660248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906314ab9038906044015b5f604051808303815f87803b158015610aa2575f80fd5b505af1158015610ab4573d5f803e3d5ffd5b50505050505050505050565b5f336001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a6051614610b0a5760405163032634a760e31b815260040160405180910390fd5b5f808080610b1a86880188614e01565b83516020850120939750919550935091508890808214610b57576040516331970f3360e21b815260048101829052602481018390526044016107ad565b604051630a3b53db60e21b81526001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906328ed4f6c90610ba59085903090600401614dea565b5f604051808303815f87803b158015610bbc575f80fd5b505af1158015610bce573d5f803e3d5ffd5b5050604051636b727d4360e11b8152600481018d90525f92506276a70091506001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063d6e4fa8690602401602060405180830381865afa158015610c3c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c609190614e64565b610c6a9190614e8f565b9050610c7d87878761ffff16848861310d565b50630a85bd0160e11b9c9b505050505050505050505050565b610c9e613215565b600580546001600160a01b0319166001600160a01b0392909216919091179055565b81610ccb8133611480565b610cec57803360405163168ab55d60e31b81526004016107ad929190614dea565b8260085f610cf9836107f0565b5091505063ffffffff8282161615610d275760405163a2a7201360e01b8152600481018490526024016107ad565b604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a90610a8b9089908990600401614dea565b60066020525f908152604090208054610d8d90614eb6565b80601f0160208091040260200160405190810160405280929190818152602001828054610db990614eb6565b8015610e045780601f10610ddb57610100808354040283529160200191610e04565b820191905f5260205f20905b815481529060010190602001808311610de757829003601f168201915b505050505081565b5f87610e188133611480565b610e3957803360405163168ab55d60e31b81526004016107ad929190614dea565b87516020890120610e4a8a8261326e565b9250610e568a8461329a565b610e6083866133d3565b610e6b8a848b613406565b50610e788a8487876134cd565b9350610e8383613510565b610f33576040516305ef2c7f60e41b8152600481018b9052602481018290523060448201526001600160a01b0388811660648301526001600160401b03881660848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610f0a575f80fd5b505af1158015610f1c573d5f803e3d5ffd5b50505050610f2e8a848b8b89896135c6565b610fda565b6040516305ef2c7f60e41b8152600481018b9052602481018290523060448201526001600160a01b0388811660648301526001600160401b03881660848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610fb6575f80fd5b505af1158015610fc8573d5f803e3d5ffd5b50505050610fda8a848b8b89896135fc565b5050979650505050505050565b81518351146110495760405162461bcd60e51b815260206004820152602860248201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206044820152670dad2e6dac2e8c6d60c31b60648201526084016107ad565b6001600160a01b03841661106f5760405162461bcd60e51b81526004016107ad90614eee565b6001600160a01b03851633148061108b575061108b853361299f565b6110f25760405162461bcd60e51b815260206004820152603260248201527f455243313135353a207472616e736665722063616c6c6572206973206e6f74206044820152711bdddb995c881b9bdc88185c1c1c9bdd995960721b60648201526084016107ad565b5f5b83518110156111ad575f84828151811061111057611110614f33565b602002602001015190505f84838151811061112d5761112d614f33565b602002602001015190505f805f611143856107f0565b9250925092506111548583836136b6565b83600114801561117557508a6001600160a01b0316836001600160a01b0316145b6111915760405162461bcd60e51b81526004016107ad90614f47565b61119d858b848461375d565b50505050508060010190506110f4565b50836001600160a01b0316856001600160a01b0316336001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516111fd929190614f91565b60405180910390a461121333868686868661379d565b5050505050565b5f611225858561326e565b905061123181846133d3565b5f808061123d846107f0565b919450925090506001600160a01b03831615806112ea57506040516302571be360e01b81526004810185905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa1580156112ba573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112de9190614fbe565b6001600160a01b031614155b1561130857604051635374b59960e01b815260040160405180910390fd5b5f806113138a6107f0565b90935091508a905061134f576113298633611480565b61134a57853360405163168ab55d60e31b81526004016107ad929190614dea565b61137a565b6113598a33611480565b61137a57893360405163168ab55d60e31b81526004016107ad929190614dea565b6113858689846138f7565b611390878483613932565b9650620100008416158015906113b457508363ffffffff1688851763ffffffff1614155b156113d55760405163a2a7201360e01b8152600481018790526024016107ad565b96831796610ab486868a868b613977565b5f826113f28133611480565b61141357803360405163168ab55d60e31b81526004016107ad929190614dea565b8360025f611420836107f0565b5091505063ffffffff828216161561144e5760405163a2a7201360e01b8152600481018490526024016107ad565b5f808061145a8a6107f0565b9250925092506114738a84848c61ffff16178485613977565b5098975050505050505050565b5f80808061148d866107f0565b925092509250846001600160a01b0316836001600160a01b031614806109415750610941838661299f565b6060815183511461151d5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b60648201526084016107ad565b5f83516001600160401b0381111561153757611537614525565b604051908082528060200260200182016040528015611560578160200160208202803683370190505b5090505f5b84518110156115cf576115aa85828151811061158357611583614f33565b602002602001015185838151811061159d5761159d614f33565b6020026020010151610746565b8282815181106115bc576115bc614f33565b6020908102919091010152600101611565565b509392505050565b6115df613215565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af115801561162b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061164f9190614fd9565b50505050565b5f6107ea82613a1e565b5f8061166b858561326e565b905061167681613510565b61169357604051635374b59960e01b815260040160405180910390fd5b5f61169e86336108e5565b9050801580156116b557506116b38233611480565b155b156116d757813360405163168ab55d60e31b81526004016107ad929190614dea565b5f80806116e3856107f0565b925092509250831580156116fa5750620400008216155b1561171b5760405163a2a7201360e01b8152600481018690526024016107ad565b5f6117258a6107f0565b92505050611734888383613932565b97506117428685858b613a33565b6040516001600160401b038916815286907ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b1329060200160405180910390a2509598975050505050505050565b611796613215565b61179f5f613a49565b565b6117b85f805160206154fc8339815191528461326e565b6117c28133611480565b6117e357803360405163168ab55d60e31b81526004016107ad929190614dea565b306001600160a01b0384160361181757604051632ca49b0d60e11b81526001600160a01b03841660048201526024016107ad565b6118376118315f805160206154fc8339815191528661326e565b83613a98565b604051632142170760e11b81523060048201526001600160a01b038481166024830152604482018690527f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906342842e0e906064015f604051808303815f87803b1580156118a4575f80fd5b505af11580156118b6573d5f803e3d5ffd5b5050505050505050565b5f8086866040516118d2929190614ff4565b6040519081900381206331a9108f60e11b82526004820181905291505f907f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa15801561193f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119639190614fbe565b90506001600160a01b0381163314801590611a09575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063e985e9c590604401602060405180830381865afa1580156119e3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a079190614fd9565b155b15611a4157611a255f805160206154fc8339815191528361326e565b3360405163168ab55d60e31b81526004016107ad929190614dea565b6040516323b872dd60e01b81526001600160a01b038281166004830152306024830152604482018490527f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906323b872dd906064015f604051808303815f87803b158015611aae575f80fd5b505af1158015611ac0573d5f803e3d5ffd5b5050604051630a3b53db60e21b81526001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a6051692506328ed4f6c9150611b129085903090600401614dea565b5f604051808303815f87803b158015611b29575f80fd5b505af1158015611b3b573d5f803e3d5ffd5b5050604051636b727d4360e11b8152600481018590526276a70092507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b0316915063d6e4fa8690602401602060405180830381865afa158015611ba7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611bcb9190614e64565b611bd59190614e8f565b9250611c1d88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508a9250505061ffff8816868861310d565b505095945050505050565b6001600160a01b0382163303611c925760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084016107ad565b335f8181526002602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b335f9081526004602052604081205460ff16611d2b5760405162461bcd60e51b81526004016107ad90615003565b5f8787604051611d3c929190614ff4565b604051908190038120633f2891eb60e21b8252600482018190523060248301526044820187905291507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b03169063fca247ac906064016020604051808303815f875af1158015611db5573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611dd99190614e64565b9150611e2d88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508a9250505061ffff8616611e276276a70087614e8f565b8861310d565b509695505050505050565b5f80611e43846107f0565b50841663ffffffff908116908516149250505092915050565b611e64613215565b6007546001600160a01b031615611f785760075460405163a22cb46560e01b81526001600160a01b0391821660048201525f60248201527f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063a22cb465906044015f604051808303815f87803b158015611ee0575f80fd5b505af1158015611ef2573d5f803e3d5ffd5b505060075460405163a22cb46560e01b81526001600160a01b0391821660048201525f60248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9909116925063a22cb46591506044015f604051808303815f87803b158015611f61575f80fd5b505af1158015611f73573d5f803e3d5ffd5b505050505b600780546001600160a01b0319166001600160a01b0383169081179091551561209b5760075460405163a22cb46560e01b81526001600160a01b039182166004820152600160248201527f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063a22cb465906044015f604051808303815f87803b158015612007575f80fd5b505af1158015612019573d5f803e3d5ffd5b505060075460405163a22cb46560e01b81526001600160a01b039182166004820152600160248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9909116925063a22cb46591506044015f604051808303815f87803b158015612089575f80fd5b505af1158015611213573d5f803e3d5ffd5b50565b335f9081526004602052604081205460ff166120cc5760405162461bcd60e51b81526004016107ad90615003565b5f6120e45f805160206154fc8339815191528561326e565b60405163c475abff60e01b815260048101869052602481018590529091505f906001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063c475abff906044016020604051808303815f875af1158015612154573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906121789190614e64565b6040516331a9108f60e11b8152600481018790529091507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa9250505080156121fc575060408051601f3d908101601f191682019092526121f991810190614fbe565b60015b6122095791506107ea9050565b6001600160a01b038116301415806122b157506040516302571be360e01b81526004810184905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015612281573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906122a59190614fbe565b6001600160a01b031614155b156122c0575091506107ea9050565b505f6122cf6276a70083614e8f565b5f8481526001602052604090205490915060a081901c6122f185838386613a33565b50919695505050505050565b5f866123098133611480565b61232a57803360405163168ab55d60e31b81526004016107ad929190614dea565b5f878760405161233b929190614ff4565b6040518091039020905061234f898261326e565b925061235b898461329a565b61236583866133d3565b5f6123a68a858b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061340692505050565b90506123b48a8588886134cd565b94506123bf84613510565b61246b576040516306ab592360e01b8152600481018b9052602481018390523060448201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906306ab5923906064016020604051808303815f875af1158015612434573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906124589190614e64565b506124668482898989613b83565b6124b0565b6124b08a858b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508d92508c91508b90506135fc565b5050509695505050505050565b5f6125005f86868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613bc59050565b6007549091506001600160a01b031661252c5760405163093075b560e21b815260040160405180910390fd5b6125368133611480565b61255757803360405163168ab55d60e31b81526004016107ad929190614dea565b5f8080612563846107f0565b919450925090505f6125748561085e565b905061257f85613c81565b60075f9054906101000a90046001600160a01b03166001600160a01b0316639198c2768a8a878787878e8e6040518963ffffffff1660e01b81526004016125cd989796959493929190615073565b5f604051808303815f87803b1580156125e4575f80fd5b505af11580156125f6573d5f803e3d5ffd5b50505050505050505050505050565b836126108133611480565b61263157803360405163168ab55d60e31b81526004016107ad929190614dea565b84601c5f61263e836107f0565b5091505063ffffffff828216161561266c5760405163a2a7201360e01b8152600481018490526024016107ad565b60405163cf40882360e01b8152600481018990523060248201526001600160a01b0387811660448301526001600160401b03871660648301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063cf408823906084015f604051808303815f87803b1580156126e8575f80fd5b505af11580156126fa573d5f803e3d5ffd5b5050506001600160a01b038816905061275f575f612717896107f0565b509150506201ffff196202000082160161274f57604051632ca49b0d60e11b81526001600160a01b03891660048201526024016107ad565b612759895f613a98565b506118b6565b5f61276989611655565b905061278981898b5f1c600160405180602001604052805f815250613d1e565b505050505050505050565b61279e838361326e565b6127a88133611480565b6127c957803360405163168ab55d60e31b81526004016107ad929190614dea565b7f6c32148f748aba23997146d7fe89e962e3cc30271290fb96f5f4337756c03b5284016128095760405163615a470360e01b815260040160405180910390fd5b6001600160a01b038216158061282757506001600160a01b03821630145b1561285057604051632ca49b0d60e11b81526001600160a01b03831660048201526024016107ad565b61164f611831858561326e565b5f80612869848461326e565b90505f61287582613510565b90505f805160206154fc83398151915285146128945791506107ea9050565b6040516331a9108f60e11b8152600481018590527f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa925050508015612915575060408051601f3d908101601f1916820190925261291291810190614fbe565b60015b612923575f925050506107ea565b6001600160a01b0316301492506107ea915050565b612940613215565b6001600160a01b0382165f81815260046020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf8791015b60405180910390a25050565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205460ff1690565b5f80612a105f87878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613dfe9050565b915091505f612a578288888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613bc59050565b90505f612a64828561326e565b5f818152600660205260409020909150612a7f888a8361511e565b507f6c32148f748aba23997146d7fe89e962e3cc30271290fb96f5f4337756c03b528201612ac05760405163615a470360e01b815260040160405180910390fd5b6040516302571be360e01b8152600481018290525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa158015612b25573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612b499190614fbe565b90506001600160a01b0381163314801590612bef575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063e985e9c590604401602060405180830381865afa158015612bc9573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612bed9190614fd9565b155b15612c1157813360405163168ab55d60e31b81526004016107ad929190614dea565b6001600160a01b03861615612c9c57604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a90612c6e9085908a90600401614dea565b5f604051808303815f87803b158015612c85575f80fd5b505af1158015612c97573d5f803e3d5ffd5b505050505b604051635b0fc9c360e01b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635b0fc9c390612cea9085903090600401614dea565b5f604051808303815f87803b158015612d01575f80fd5b505af1158015612d13573d5f803e3d5ffd5b50505050612789828a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201829052508d93509150819050613b83565b6001600160a01b038416612d7f5760405162461bcd60e51b81526004016107ad90614eee565b6001600160a01b038516331480612d9b5750612d9b853361299f565b612df95760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2063616c6c6572206973206e6f74206f776e6572206e6f7260448201526808185c1c1c9bdd995960ba1b60648201526084016107ad565b6112138585858585613d1e565b612e0e613215565b6001600160a01b038116612e735760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107ad565b61209b81613a49565b5f8181526006602052604081208054829190612e9790614eb6565b80601f0160208091040260200160405190810160405280929190818152602001828054612ec390614eb6565b8015612f0e5780601f10612ee557610100808354040283529160200191612f0e565b820191905f5260205f20905b815481529060010190602001808311612ef157829003601f168201915b5050505050905080515f03612f2557505f92915050565b5f80612f318382613dfe565b90925090505f612f418483613bc5565b9050610954818461285d565b5f8042836001600160401b03161015612f775761ffff1962010000851601612f73575f94505b5f93505b50929391925050565b5f6001600160e01b03198216636cdb3d1360e11b1480612fb057506001600160e01b031982166303a24d0760e21b145b806107ea57506301ffc9a760e01b6001600160e01b03198316146107ea565b5f612fd982611655565b9050806001600160a01b0316836001600160a01b0316036130465760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084016107ad565b336001600160a01b03821614806130625750613062813361299f565b6130d45760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016107ad565b6108e08383613eb2565b5f620200008381161480156108995750426130fc6276a700846151d7565b6001600160401b0316109392505050565b845160208601205f61312c5f805160206154fc8339815191528361326e565b90505f61315488604051806040016040528060058152602001626cae8d60e31b815250613f1f565b5f83815260066020526040902090915061316e82826151f7565b50613181828289620300008a1789613b83565b6001600160a01b038416156118b657604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a906131de9085908890600401614dea565b5f604051808303815f87803b1580156131f5575f80fd5b505af1158015613207573d5f803e3d5ffd5b505050505050505050505050565b5f546001600160a01b0316331461179f5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107ad565b604080516020808201949094528082019290925280518083038201815260609092019052805191012090565b5f80806132a6846107f0565b91945092509050426001600160401b0382161080801561336657506001600160a01b038416158061336657506040516302571be360e01b8152600481018690525f906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015613337573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061335b9190614fbe565b6001600160a01b0316145b156133a4575f613375876107f0565b50915050602081161561339e5760405163a2a7201360e01b8152600481018790526024016107ad565b506133cb565b620100008316156133cb5760405163a2a7201360e01b8152600481018690526024016107ad565b505050505050565b63fffdffff81811763ffffffff16146134025760405163a2a7201360e01b8152600481018390526024016107ad565b5050565b60605f6134aa8360065f8881526020019081526020015f20805461342990614eb6565b80601f016020809104026020016040519081016040528092919081815260200182805461345590614eb6565b80156134a05780601f10613477576101008083540402835291602001916134a0565b820191905f5260205f20905b81548152906001019060200180831161348357829003601f168201915b5050505050613f1f565b5f8581526006602052604090209091506134c482826151f7565b50949350505050565b5f806134d8856107f0565b925050505f806134e9885f1c6107f0565b92509250506134f98787846138f7565b613504858483613932565b98975050505050505050565b5f8061351b83611655565b6001600160a01b0316141580156107ea57506040516302571be360e01b81526004810183905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015613592573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906135b69190614fbe565b6001600160a01b03161492915050565b5f86815260066020526040812080546135e491879161342990614eb6565b90506135f38682868686613b83565b50505050505050565b5f8080613608886107f0565b9250925092505f61362f8860065f8d81526020019081526020015f20805461342990614eb6565b5f8a815260066020526040902080549192509061364b90614eb6565b90505f0361366c575f89815260066020526040902061366a82826151f7565b505b61367b89858886178589613977565b6001600160a01b03871661369857613693895f613a98565b610ab4565b610ab484888b5f1c600160405180602001604052805f815250613d1e565b6201ffff19620200008316016136d6576136d36276a700826151d7565b90505b42816001600160401b0316101561370f576201000082161561370a5760405162461bcd60e51b81526004016107ad90614f47565b613734565b60048216156137345760405163a2a7201360e01b8152600481018490526024016107ad565b604082165f036108e05750505f90815260036020526040902080546001600160a01b0319169055565b60c0816001600160401b0316901b60a08363ffffffff16901b846001600160a01b0316171760015f8681526020019081526020015f208190555050505050565b6001600160a01b0384163b156133cb5760405163bc197c8160e01b81526001600160a01b0385169063bc197c81906137e190899089908890889088906004016152b2565b6020604051808303815f875af192505050801561381b575060408051601f3d908101601f1916820190925261381891810190615303565b60015b6138c75761382761531e565b806308c379a003613860575061383b615337565b806138465750613862565b8060405162461bcd60e51b81526004016107ad91906143d4565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e20455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b60648201526084016107ad565b6001600160e01b0319811663bc197c8160e01b146135f35760405162461bcd60e51b81526004016107ad906153bf565b63ffff000082161580159060018316159082906139115750805b156112135760405163a2a7201360e01b8152600481018690526024016107ad565b5f816001600160401b0316846001600160401b03161115613951578193505b826001600160401b0316846001600160401b0316101561396f578293505b509192915050565b61398385858584613a33565b60405163ffffffff8416815285907f39873f00c80f4f94b7bd1594aebcf650f003545b74824d57ddf4939e3ff3a34b9060200160405180910390a2816001600160401b0316816001600160401b03161115611213576040516001600160401b038216815285907ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b132906020015b60405180910390a25050505050565b5f80613a29836107f0565b5090949350505050565b613a3d8483613f96565b61164f8484848461375d565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b613aa3826001611e38565b15613ac45760405163a2a7201360e01b8152600481018390526024016107ad565b613acd82613c81565b604051635b0fc9c360e01b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635b0fc9c390613b1b9085908590600401614dea565b5f604051808303815f87803b158015613b32575f80fd5b505af1158015613b44573d5f803e3d5ffd5b50506040516001600160a01b03841681528492507fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c49150602001612993565b613b8f85848484613fcf565b847f8ce7013e8abebc55c3890a68f5a27c67c3f7efa64e584de5fb22363c606fd34085858585604051613a0f9493929190615407565b5f805f613bd28585613dfe565b909250905081613c435760018551613bea919061544d565b8414613c385760405162461bcd60e51b815260206004820152601d60248201527f6e616d65686173683a204a756e6b20617420656e64206f66206e616d6500000060448201526064016107ad565b505f91506107ea9050565b613c4d8582613bc5565b6040805160208101929092528101839052606001604051602081830303815290604052805190602001209250505092915050565b5f8181526001602052604090205460a081901c60c082901c613ca4838383612f4d565b5f86815260036020526040812080546001600160a01b0319169055909350613cd091508590848461375d565b60408051858152600160208201525f916001600160a01b0386169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b5f805f613d2a866107f0565b925092509250613d3b8683836136b6565b846001148015613d5c5750876001600160a01b0316836001600160a01b0316145b613d785760405162461bcd60e51b81526004016107ad90614f47565b866001600160a01b0316836001600160a01b031603613d9957505050611213565b613da58688848461375d565b60408051878152602081018790526001600160a01b03808a1692908b169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46118b6338989898989614041565b5f8083518310613e505760405162461bcd60e51b815260206004820152601e60248201527f726561644c6162656c3a20496e646578206f7574206f6620626f756e6473000060448201526064016107ad565b5f848481518110613e6357613e63614f33565b016020015160f81c90508015613e8f57613e8885613e82866001615460565b836140fb565b9250613e93565b5f92505b613e9d8185615460565b613ea8906001615460565b9150509250929050565b5f81815260036020526040902080546001600160a01b0319166001600160a01b0384169081179091558190613ee682611655565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6060600183511015613f4457604051631406d65b60e11b815260040160405180910390fd5b60ff83511115613f69578260405163e3ba295f60e01b81526004016107ad91906143d4565b82518383604051602001613f7f93929190615473565b604051602081830303815290604052905092915050565b61ffff811615801590613fae57506201000181811614155b156134025760405163a2a7201360e01b8152600481018390526024016107ad565b613fd98483613f96565b5f848152600160205260409020546001600160a01b0381161561403557613fff85613c81565b6040515f815285907fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c49060200160405180910390a25b6112138585858561411d565b6001600160a01b0384163b156133cb5760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e619061408590899089908890889088906004016154b7565b6020604051808303815f875af19250505080156140bf575060408051601f3d908101601f191682019092526140bc91810190615303565b60015b6140cb5761382761531e565b6001600160e01b0319811663f23a6e6160e01b146135f35760405162461bcd60e51b81526004016107ad906153bf565b82515f906141098385615460565b1115614113575f80fd5b5091016020012090565b835f808061412a846107f0565b9194509250905063ffff000082166001600160401b038087169083161115614150578195505b42826001600160401b03161061416557958617955b6001600160a01b038416156141bc5760405162461bcd60e51b815260206004820152601f60248201527f455243313135353a206d696e74206f66206578697374696e6720746f6b656e0060448201526064016107ad565b6001600160a01b03881661421c5760405162461bcd60e51b815260206004820152602160248201527f455243313135353a206d696e7420746f20746865207a65726f206164647265736044820152607360f81b60648201526084016107ad565b306001600160a01b038916036142915760405162461bcd60e51b815260206004820152603460248201527f455243313135353a206e65774f776e65722063616e6e6f74206265207468652060448201527313985b5955dc985c1c195c8818dbdb9d1c9858dd60621b60648201526084016107ad565b61429d8589898961375d565b60408051868152600160208201526001600160a01b038a16915f9133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4612789335f8a88600160405180602001604052805f815250614041565b6001600160a01b038116811461209b575f80fd5b5f8060408385031215614327575f80fd5b823561433281614302565b946020939093013593505050565b5f60208284031215614350575f80fd5b5035919050565b6001600160e01b03198116811461209b575f80fd5b5f6020828403121561437c575f80fd5b813561089981614357565b5f5b838110156143a1578181015183820152602001614389565b50505f910152565b5f81518084526143c0816020860160208601614387565b601f01601f19169290920160200192915050565b602081525f61089960208301846143a9565b5f80604083850312156143f7575f80fd5b82359150602083013561440981614302565b809150509250929050565b80356001600160401b038116811461442a575f80fd5b919050565b5f8060408385031215614440575f80fd5b8235915061445060208401614414565b90509250929050565b5f8083601f840112614469575f80fd5b5081356001600160401b0381111561447f575f80fd5b602083019150836020828501011115614496575f80fd5b9250929050565b5f805f805f608086880312156144b1575f80fd5b85356144bc81614302565b945060208601356144cc81614302565b93506040860135925060608601356001600160401b038111156144ed575f80fd5b6144f988828901614459565b969995985093965092949392505050565b5f6020828403121561451a575f80fd5b813561089981614302565b634e487b7160e01b5f52604160045260245ffd5b601f8201601f191681016001600160401b038111828210171561455e5761455e614525565b6040525050565b5f6001600160401b0382111561457d5761457d614525565b50601f01601f191660200190565b5f82601f83011261459a575f80fd5b81356145a581614565565b6040516145b28282614539565b8281528560208487010111156145c6575f80fd5b826020860160208301375f92810160200192909252509392505050565b803563ffffffff8116811461442a575f80fd5b5f805f805f805f60e0888a03121561460c575f80fd5b8735965060208801356001600160401b03811115614628575f80fd5b6146348a828b0161458b565b965050604088013561464581614302565b9450606088013561465581614302565b935061466360808901614414565b925061467160a089016145e3565b915061467f60c08901614414565b905092959891949750929550565b5f6001600160401b038211156146a5576146a5614525565b5060051b60200190565b5f82601f8301126146be575f80fd5b813560206146cb8261468d565b6040516146d88282614539565b80915083815260208101915060208460051b8701019350868411156146fb575f80fd5b602086015b84811015611e2d5780358352918301918301614700565b5f805f805f60a0868803121561472b575f80fd5b853561473681614302565b9450602086013561474681614302565b935060408601356001600160401b0380821115614761575f80fd5b61476d89838a016146af565b94506060880135915080821115614782575f80fd5b61478e89838a016146af565b935060808801359150808211156147a3575f80fd5b506147b08882890161458b565b9150509295509295909350565b5f805f80608085870312156147d0575f80fd5b84359350602085013592506147e7604086016145e3565b91506147f560608601614414565b905092959194509250565b803561ffff8116811461442a575f80fd5b5f8060408385031215614822575f80fd5b8235915061445060208401614800565b5f8060408385031215614843575f80fd5b82356001600160401b0380821115614859575f80fd5b818501915085601f83011261486c575f80fd5b813560206148798261468d565b6040516148868282614539565b83815260059390931b85018201928281019150898411156148a5575f80fd5b948201945b838610156148cc5785356148bd81614302565b825294820194908201906148aa565b965050860135925050808211156148e1575f80fd5b50613ea8858286016146af565b5f815180845260208085019450602084015f5b8381101561491d57815187529582019590820190600101614901565b509495945050505050565b602081525f61089960208301846148ee565b5f805f6060848603121561494c575f80fd5b833561495781614302565b9250602084013561496781614302565b929592945050506040919091013590565b5f805f6060848603121561498a575f80fd5b83359250602084013591506149a160408501614414565b90509250925092565b5f805f606084860312156149bc575f80fd5b8335925060208401356149ce81614302565b915060408401356149de81614302565b809150509250925092565b5f805f805f608086880312156149fd575f80fd5b85356001600160401b03811115614a12575f80fd5b614a1e88828901614459565b9096509450506020860135614a3281614302565b9250614a4060408701614800565b91506060860135614a5081614302565b809150509295509295909350565b801515811461209b575f80fd5b5f8060408385031215614a7c575f80fd5b8235614a8781614302565b9150602083013561440981614a5e565b5f805f805f8060a08789031215614aac575f80fd5b86356001600160401b03811115614ac1575f80fd5b614acd89828a01614459565b9097509550506020870135614ae181614302565b9350604087013592506060870135614af881614302565b9150614b0660808801614800565b90509295509295509295565b5f8060408385031215614b23575f80fd5b82359150614450602084016145e3565b5f8060408385031215614b44575f80fd5b50508035926020909101359150565b5f805f805f8060a08789031215614b68575f80fd5b8635955060208701356001600160401b03811115614b84575f80fd5b614b9089828a01614459565b9096509450506040870135614ba481614302565b9250614bb2606088016145e3565b9150614b0660808801614414565b5f805f8060408587031215614bd3575f80fd5b84356001600160401b0380821115614be9575f80fd5b614bf588838901614459565b90965094506020870135915080821115614c0d575f80fd5b50614c1a87828801614459565b95989497509550505050565b5f805f8060808587031215614c39575f80fd5b843593506020850135614c4b81614302565b925060408501356147e781614302565b5f805f60608486031215614c6d575f80fd5b833592506020840135915060408401356149de81614302565b5f8060408385031215614c97575f80fd5b8235614ca281614302565b9150602083013561440981614302565b5f805f8060608587031215614cc5575f80fd5b84356001600160401b03811115614cda575f80fd5b614ce687828801614459565b9095509350506020850135614cfa81614302565b91506040850135614d0a81614302565b939692955090935050565b5f805f805f60a08688031215614d29575f80fd5b8535614d3481614302565b94506020860135614d4481614302565b9350604086013592506060860135915060808601356001600160401b03811115614d6c575f80fd5b6147b08882890161458b565b5f60208284031215614d88575f80fd5b81516001600160401b03811115614d9d575f80fd5b8201601f81018413614dad575f80fd5b8051614db881614565565b604051614dc58282614539565b828152866020848601011115614dd9575f80fd5b610954836020830160208701614387565b9182526001600160a01b0316602082015260400190565b5f805f8060808587031215614e14575f80fd5b84356001600160401b03811115614e29575f80fd5b614e358782880161458b565b9450506020850135614e4681614302565b9250614e5460408601614800565b91506060850135614d0a81614302565b5f60208284031215614e74575f80fd5b5051919050565b634e487b7160e01b5f52601160045260245ffd5b6001600160401b03818116838216019080821115614eaf57614eaf614e7b565b5092915050565b600181811c90821680614eca57607f821691505b602082108103614ee857634e487b7160e01b5f52602260045260245ffd5b50919050565b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b634e487b7160e01b5f52603260045260245ffd5b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b604081525f614fa360408301856148ee565b8281036020840152614fb581856148ee565b95945050505050565b5f60208284031215614fce575f80fd5b815161089981614302565b5f60208284031215614fe9575f80fd5b815161089981614a5e565b818382375f9101908152919050565b60208082526028908201527f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f604082015267373a3937b63632b960c11b606082015260800190565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b60c081525f61508660c083018a8c61504b565b6001600160a01b03898116602085015263ffffffff891660408501526001600160401b03881660608501528616608084015282810360a08401526150cb81858761504b565b9b9a5050505050505050505050565b601f8211156108e057805f5260205f20601f840160051c810160208510156150ff5750805b601f840160051c820191505b81811015611213575f815560010161510b565b6001600160401b0383111561513557615135614525565b615149836151438354614eb6565b836150da565b5f601f84116001811461517a575f85156151635750838201355b5f19600387901b1c1916600186901b178355611213565b5f83815260208120601f198716915b828110156151a95786850135825560209485019460019092019101615189565b50868210156151c5575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b6001600160401b03828116828216039080821115614eaf57614eaf614e7b565b81516001600160401b0381111561521057615210614525565b6152248161521e8454614eb6565b846150da565b602080601f831160018114615257575f84156152405750858301515b5f19600386901b1c1916600185901b1785556133cb565b5f85815260208120601f198616915b8281101561528557888601518255948401946001909101908401615266565b50858210156152a257878501515f19600388901b60f8161c191681555b5050505050600190811b01905550565b6001600160a01b0386811682528516602082015260a0604082018190525f906152dd908301866148ee565b82810360608401526152ef81866148ee565b9050828103608084015261350481856143a9565b5f60208284031215615313575f80fd5b815161089981614357565b5f60033d11156153345760045f803e505f5160e01c5b90565b5f60443d10156153445790565b6040516003193d81016004833e81513d6001600160401b03816024840111818411171561537357505050505090565b828501915081518181111561538b5750505050505090565b843d87010160208285010111156153a55750505050505090565b6153b460208286010187614539565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b608081525f61541960808301876143a9565b6001600160a01b039590951660208301525063ffffffff9290921660408301526001600160401b0316606090910152919050565b818103818111156107ea576107ea614e7b565b808201808211156107ea576107ea614e7b565b60ff60f81b8460f81b1681525f8351615493816001850160208801614387565b8351908301906154aa816001840160208801614387565b0160010195945050505050565b6001600160a01b03868116825285166020820152604081018490526060810183905260a0608082018190525f906154f0908301846143a9565b97965050505050505056fe93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4aea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2a68925cf5169f28586095d5b5b9933b3008f4c793a48be4f59b8b2bc62aa60a":"0x1","0x54cdd369e4e8a8515e52ca72ec816c2101831ad1f18bf44102ed171459c9b4f8":"0x2","0xa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb49":"0xffffffffffffffff000100010000000000000000000000000000000000000000","0xafa26c20e8b3d9a2853d642cfe1021dae26242ffedfac91c97aab212c1a4b93b":"0xffffffffffffffff000100010000000000000000000000000000000000000000","0xef5b11c47ebee44618abc22110e10e3b408ea5e799056d2b38461aa7b97c5a97":"0x1","0xfb9e8e321b8a5ec48f12a7b41f22c6e595d761285c9eb19d8dda7c99edf1b54f":"0x36574680000000000000000000000000000000000000000000000000000000a"}},"0x6e1eb616c7d69491f9a880f815ff5574768cba20":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b506004361061007a575f3560e01c806314ab90381161005857806314ab90381461010357806316a25cbd146101165780631896f70a146101625780635b0fc9c314610175575f80fd5b80630178b8bf1461007e57806302571be3146100c657806306ab5923146100ee575b5f80fd5b6100a961008c366004610403565b5f908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100a96100d4366004610403565b5f908152602081905260409020546001600160a01b031690565b6101016100fc366004610435565b610188565b005b610101610111366004610467565b610242565b610149610124366004610403565b5f90815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100bd565b6101016101703660046104a1565b6102e2565b6101016101833660046104a1565b610374565b5f8381526020819052604090205483906001600160a01b031633146101ab575f80fd5b60408051602080820187905281830186905282518083038401815260608301808552815191909201206001600160a01b0386169091529151859187917fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829181900360800190a35f90815260208190526040902080546001600160a01b0319166001600160a01b039390931692909217909155505050565b5f8281526020819052604090205482906001600160a01b03163314610265575f80fd5b60405167ffffffffffffffff8316815283907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a2505f91825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b5f8281526020819052604090205482906001600160a01b03163314610305575f80fd5b6040516001600160a01b038316815283907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a2505f9182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b5f8281526020819052604090205482906001600160a01b03163314610397575f80fd5b6040516001600160a01b038316815283907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a2505f9182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b5f60208284031215610413575f80fd5b5035919050565b80356001600160a01b0381168114610430575f80fd5b919050565b5f805f60608486031215610447575f80fd5b833592506020840135915061045e6040850161041a565b90509250925092565b5f8060408385031215610478575f80fd5b82359150602083013567ffffffffffffffff81168114610496575f80fd5b809150509250929050565b5f80604083850312156104b2575f80fd5b823591506104c26020840161041a565b9050925092905056fea164736f6c6343000818000a","storage":{"0x859ecef2e168dc10231b000bd53493b42bc9d944cac29d94582c1e1d43592131":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x7bb6cd9be29fab783c0b494a06fed8b2e2596b7a":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100ea5760003560e01c80636debcb8d1161008c578063b34f33c511610066578063b34f33c514610741578063d0778d6c14610814578063ef2c3088146108f2578063f5090c1e14610980576100ea565b80636debcb8d146105ca5780636fab95b3146106585780637b1039991461071d576100ea565b8063511f1112116100c8578063511f1112146103c557806361603dd91461044857806368b6154f146104bd5780636ccbae5f1461059b576100ea565b806307eca395146100ef578063280d9b051461021457806330135293146102f2575b600080fd5b610212600480360360a081101561010557600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561013457600080fd5b82018360208201111561014657600080fd5b803590602001918460018302840111600160201b8311171561016757600080fd5b919390929091602081019035600160201b81111561018457600080fd5b82018360208201111561019657600080fd5b803590602001918460018302840111600160201b831117156101b757600080fd5b919390929091602081019035600160201b8111156101d457600080fd5b8201836020820111156101e657600080fd5b803590602001918460018302840111600160201b8311171561020757600080fd5b509092509050610aae565b005b610212600480360360a081101561022a57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561026457600080fd5b82018360208201111561027657600080fd5b803590602001918460018302840111600160201b8311171561029757600080fd5b919390929091602081019035600160201b8111156102b457600080fd5b8201836020820111156102c657600080fd5b803590602001918460018302840111600160201b831117156102e757600080fd5b509092509050610c92565b6102126004803603608081101561030857600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561033757600080fd5b82018360208201111561034957600080fd5b803590602001918460018302840111600160201b8311171561036a57600080fd5b919390929091602081019035600160201b81111561038757600080fd5b82018360208201111561039957600080fd5b803590602001918460018302840111600160201b831117156103ba57600080fd5b509092509050610e3d565b610212600480360360608110156103db57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561040a57600080fd5b82018360208201111561041c57600080fd5b803590602001918460018302840111600160201b8311171561043d57600080fd5b509092509050610fcc565b6102126004803603604081101561045e57600080fd5b81359190810190604081016020820135600160201b81111561047f57600080fd5b82018360208201111561049157600080fd5b803590602001918460018302840111600160201b831117156104b257600080fd5b5090925090506110c9565b610212600480360360a08110156104d357600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561050d57600080fd5b82018360208201111561051f57600080fd5b803590602001918460018302840111600160201b8311171561054057600080fd5b919390929091602081019035600160201b81111561055d57600080fd5b82018360208201111561056f57600080fd5b803590602001918460018302840111600160201b8311171561059057600080fd5b5090925090506111ae565b6105b8600480360360208110156105b157600080fd5b50356113a8565b60408051918252519081900360200190f35b610212600480360360808110156105e057600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561061a57600080fd5b82018360208201111561062c57600080fd5b803590602001918460018302840111600160201b8311171561064d57600080fd5b5090925090506113ba565b6102126004803603606081101561066e57600080fd5b81359190810190604081016020820135600160201b81111561068f57600080fd5b8201836020820111156106a157600080fd5b803590602001918460018302840111600160201b831117156106c257600080fd5b919390929091602081019035600160201b8111156106df57600080fd5b8201836020820111156106f157600080fd5b803590602001918460018302840111600160201b8311171561071257600080fd5b5090925090506114d4565b610725611675565b604080516001600160a01b039092168252519081900360200190f35b6102126004803603608081101561075757600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561078657600080fd5b82018360208201111561079857600080fd5b803590602001918460018302840111600160201b831117156107b957600080fd5b919390929091602081019035600160201b8111156107d657600080fd5b8201836020820111156107e857600080fd5b803590602001918460018302840111600160201b8311171561080957600080fd5b509092509050611684565b610212600480360360a081101561082a57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561086457600080fd5b82018360208201111561087657600080fd5b803590602001918460018302840111600160201b8311171561089757600080fd5b919390929091602081019035600160201b8111156108b457600080fd5b8201836020820111156108c657600080fd5b803590602001918460018302840111600160201b831117156108e757600080fd5b5090925090506117de565b6102126004803603608081101561090857600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561094257600080fd5b82018360208201111561095457600080fd5b803590602001918460018302840111600160201b8311171561097557600080fd5b5090925090506119e4565b610212600480360360c081101561099657600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156109d057600080fd5b8201836020820111156109e257600080fd5b803590602001918460018302840111600160201b83111715610a0357600080fd5b919390929091602081019035600160201b811115610a2057600080fd5b820183602082011115610a3257600080fd5b803590602001918460018302840111600160201b83111715610a5357600080fd5b919390929091602081019035600160201b811115610a7057600080fd5b820183602082011115610a8257600080fd5b803590602001918460018302840111600160201b83111715610aa357600080fd5b509092509050611ad3565b610bb163ce9fb82b89898989898960405160240180876001600160a01b03166001600160a01b0316815260200186815260200180602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f820116905080830192505050985050505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208884848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b600154604051630119f80560e21b81526001600160a01b038a811660048301908152602483018b9052608060448401908152608484018a90529190931692630467e014928c928c928c928c928c928c92909190606481019060a401878780828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f82011690508083019250505098505050505050505050600060405180830381600087803b158015610c7057600080fd5b505af1158015610c84573d6000803e3d6000fd5b505050505050505050505050565b610d8363b88d4fde888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040516315eab15d60e21b81526001600160a01b03898116600483019081528982166024840152604483018990526080606484019081526084840188905291909316926357aac574928b928b928b928b928b929160a401848480828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b158015610e1c57600080fd5b505af1158015610e30573d6000803e3d6000fd5b5050505050505050505050565b610f09637c69eae28787878760405160240180856001600160a01b03166001600160a01b0316815260200184815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09d909d1b9c909c178c529351909a208a51918d01849004840282018401909a528b81528f985096508b95508a94508493505085019050838280828437600092019190915250611d5492505050565b600154604051630119f80560e21b81526001600160a01b038881166004830190815260248301899052608060448401908152608484018890529190931692630467e014928a928a928a928a9290606481019060a401858580828437600081840152601f19601f8201169050808301925050508381038252600081526020016020019650505050505050600060405180830381600087803b158015610fac57600080fd5b505af1158015610fc0573d6000803e3d6000fd5b50505050505050505050565b604080516001600160a01b038616602482015260448082018690528251808303909101815260649091018252602081810180516001600160e01b0316632392c18960e01b17815291519091208251601f85018390048302810183019093528383526110569290918691908690869081908401838280828437600092019190915250611d5492505050565b60015460408051631292e83560e11b81526001600160a01b0387811660048301526024820187905291519190921691632525d06a91604480830192600092919082900301818387803b1580156110ab57600080fd5b505af11580156110bf573d6000803e3d6000fd5b5050505050505050565b6040805160248082018690528251808303909101815260449091018252602081810180516001600160e01b0316630852cd8d60e31b17815291519091208251601f85018390048302810183019093528383526111449290918691908690869081908401838280828437600092019190915250611d5492505050565b6001546040805163e67ca8a360e01b81526004810186905290516001600160a01b039092169163e67ca8a39160248082019260009290919082900301818387803b15801561119157600080fd5b505af11580156111a5573d6000803e3d6000fd5b50505050505050565b61129f639e5be9a5888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b03909316926302759c37928b928b9286926368b62d32928d928d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561132757600080fd5b505afa15801561133b573d6000803e3d6000fd5b505050506040513d602081101561135157600080fd5b5051604080516001600160e01b031960e087901b1681526001600160a01b03948516600482015292909316602483015260448201529051606480830192600092919082900301818387803b158015610e1c57600080fd5b60009081526020819052604090205490565b604080516001600160a01b0380881660248301528616604482015260648082018690528251808303909101815260849091018252602081810180516001600160e01b0316632142170760e11b17815291519091208251601f850183900483028101830190935283835261144c9290918691908690869081908401838280828437600092019190915250611d5492505050565b600154604080516315eab15d60e21b81526001600160a01b0388811660048301528781166024830152604482018790526080606483015260006084830181905292519316926357aac5749260c48084019391929182900301818387803b1580156114b557600080fd5b505af11580156114c9573d6000803e3d6000fd5b505050505050505050565b611585635cbe11128686866040516024018084815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09c909c1b9b909b178b5293519099208951918c018490048402820184019099528a81528e975095508a9450899350839250508401838280828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b039093169263e67ca8a39284926368b62d32928b928b928b929190606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561160b57600080fd5b505afa15801561161f573d6000803e3d6000fd5b505050506040513d602081101561163557600080fd5b5051604080516001600160e01b031960e085901b168152600481019290925251602480830192600092919082900301818387803b1580156114b557600080fd5b6001546001600160a01b031690565b61175063d8d3cc6e8787878760405160240180856001600160a01b03166001600160a01b0316815260200184815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09d909d1b9c909c178c529351909a208a51918d01849004840282018401909a528b81528f985096508b95508a94508493505085019050838280828437600092019190915250611d5492505050565b60015460405163b546666960e01b81526001600160a01b03888116600483019081526024830189905260606044840190815260648401889052919093169263b5466669928a928a928a928a9290608401848480828437600081840152601f19601f82011690508083019250505095505050505050600060405180830381600087803b158015610fac57600080fd5b6118cf639d743989888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b03909316926357aac574928b928b9286926368b62d32928d928d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561195757600080fd5b505afa15801561196b573d6000803e3d6000fd5b505050506040513d602081101561198157600080fd5b5051604080516001600160e01b031960e087901b1681526001600160a01b039485166004820152929093166024830152604482015260806064820152600060848201819052915160c4808301939282900301818387803b158015610e1c57600080fd5b604080516001600160a01b0380881660248301528616604482015260648082018690528251808303909101815260849091018252602081810180516001600160e01b03166323b872dd60e01b17815291519091208251601f8501839004830281018301909352838352611a769290918691908690869081908401838280828437600092019190915250611d5492505050565b600154604080516302759c3760e01b81526001600160a01b038881166004830152878116602483015260448201879052915191909216916302759c3791606480830192600092919082900301818387803b1580156114b557600080fd5b611bf063c29b52f98a8a8a8a8a8a8a60405160240180886001600160a01b03166001600160a01b03168152602001876001600160a01b03166001600160a01b0316815260200186815260200180602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f82011690508083019250505099505050505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208884848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b8152600481018a815260248201928352604482018990526001600160a01b03909316926357aac574928d928d9286926368b62d32928f928f928f92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b158015611c7857600080fd5b505afa158015611c8c573d6000803e3d6000fd5b505050506040513d6020811015611ca257600080fd5b50516040516001600160e01b031960e086901b1681526001600160a01b0380851660048301908152908416602483015260448201839052608060648301908152608483018b90528b928b92919060a401848480828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b158015611d3157600080fd5b505af1158015611d45573d6000803e3d6000fd5b50505050505050505050505050565b6000828152602081815260408083205481518084018890523060601b81840152605480820183905283518083039091018152607490910190925281519190920120909190611db3908490611da790611ea9565b9063ffffffff611efa16565b90506001600160a01b03811615801590611e4957506001546040805163430c208160e01b81526001600160a01b038481166004830152602482018890529151919092169163430c2081916044808301926020929190829003018186803b158015611e1c57600080fd5b505afa158015611e30573d6000803e3d6000fd5b505050506040513d6020811015611e4657600080fd5b50515b611e8e576040805162461bcd60e51b8152602060048201526011602482015270494e56414c49445f5349474e415455524560781b604482015290519081900360640190fd5b50505060009081526020819052604090208054600101905550565b604080517f19457468657265756d205369676e6564204d6573736167653a0a333200000000602080830191909152603c8083019490945282518083039094018452605c909101909152815191012090565b60008151604114611f0d57506000611fe3565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0821115611f535760009350505050611fe3565b8060ff16601b14158015611f6b57508060ff16601c14155b15611f7c5760009350505050611fe3565b6040805160008152602080820180845289905260ff8416828401526060820186905260808201859052915160019260a0808401939192601f1981019281900390910190855afa158015611fd3573d6000803e3d6000fd5b5050506020604051035193505050505b9291505056fea265627a7a7231582014816bfd0c1519ce8c4cf272eb0526ffdba3abef0df7f17deb0da40bd8abb77f64736f6c634300050c0032","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533"}},"0x7c3c91245769c8b7450ad522792dec4bd4bf797f":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b506004361061003f575f3560e01c80631bf7e13e146100435780636ccbae5f1461006c578063a424740014610099575b5f80fd5b610056610051366004610749565b6100bc565b604051610063919061082c565b60405180910390f35b61008b61007a36600461083e565b5f9081526001602052604090205490565b604051908152602001610063565b6100ac6100a7366004610749565b6101d6565b6040519015158152602001610063565b60605f5a90506100cd8585856101d6565b6101315760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e61676572466f727761726465723a205349474e415455604482015269149157d253959053125160b21b60648201526084015b60405180910390fd5b6101cb6101416020870187610870565b5f546001600160a01b031660408801358461015f60608b018b610889565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f9201919091525061023292505050565b9150505b9392505050565b5f61022a6101e38561093a565b5f54604080516020601f88018190048102820181019092528681526001600160a01b03909216919087908790819084018382808284375f9201919091525061030e92505050565b949350505050565b606061023d85610453565b5f80876001600160a01b0316866102568b8a898961047e565b60405161026391906109f5565b5f604051808303815f8787f1925050503d805f811461029d576040519150601f19603f3d011682016040523d82523d5f602084013e6102a2565b606091505b5090925090506102b3603f87610a10565b5a116102c1576102c1610a2f565b61030182826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506104ae565b9998505050505050505050565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015610352573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103769190610a43565b90505f6104238660600151805190602001208688602001516040516020016103c39392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561044957508551610449906001600160a01b031682866104e7565b9695505050505050565b5f8181526001602081905260409091205461046d91610a5a565b5f9182526001602052604090912055565b606082858560405160200161049593929190610a7f565b6040516020818303038152906040529050949350505050565b606083156104bd5750816101cf565b8251156104cd5782518084602001fd5b8160405162461bcd60e51b8152600401610128919061082c565b5f805f6104f48585610622565b90925090505f81600481111561050c5761050c610abd565b14801561052a5750856001600160a01b0316826001600160a01b0316145b1561053a576001925050506101cf565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401610561929190610ad1565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161059f91906109f5565b5f60405180830381855afa9150503d805f81146105d7576040519150601f19603f3d011682016040523d82523d5f602084013e6105dc565b606091505b50915091508180156105ef575080516020145b801561061657508051630b135d3f60e11b906106149083016020908101908401610a43565b145b98975050505050505050565b5f808251604103610656576020830151604084015160608501515f1a61064a87828585610664565b9450945050505061065d565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561069957505f90506003610740565b8460ff16601b141580156106b157508460ff16601c14155b156106c157505f90506004610740565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610712573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b03811661073a575f60019250925050610740565b91505f90505b94509492505050565b5f805f6040848603121561075b575f80fd5b833567ffffffffffffffff80821115610772575f80fd5b9085019060808288031215610785575f80fd5b9093506020850135908082111561079a575f80fd5b818601915086601f8301126107ad575f80fd5b8135818111156107bb575f80fd5b8760208285010111156107cc575f80fd5b6020830194508093505050509250925092565b5f5b838110156107f95781810151838201526020016107e1565b50505f910152565b5f81518084526108188160208601602086016107df565b601f01601f19169290920160200192915050565b602081525f6101cf6020830184610801565b5f6020828403121561084e575f80fd5b5035919050565b80356001600160a01b038116811461086b575f80fd5b919050565b5f60208284031215610880575f80fd5b6101cf82610855565b5f808335601e1984360301811261089e575f80fd5b83018035915067ffffffffffffffff8211156108b8575f80fd5b60200191503681900382131561065d575f80fd5b634e487b7160e01b5f52604160045260245ffd5b6040516080810167ffffffffffffffff81118282101715610903576109036108cc565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610932576109326108cc565b604052919050565b5f6080823603121561094a575f80fd5b6109526108e0565b61095b83610855565b81526020808401358183015260408401356040830152606084013567ffffffffffffffff8082111561098b575f80fd5b9085019036601f83011261099d575f80fd5b8135818111156109af576109af6108cc565b6109c1601f8201601f19168501610909565b915080825236848285010111156109d6575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b5f8251610a068184602087016107df565b9190910192915050565b5f82610a2a57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b5f60208284031215610a53575f80fd5b5051919050565b80820180821115610a7957634e487b7160e01b5f52601160045260245ffd5b92915050565b5f8451610a908184602089016107df565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f61022a604083018461080156fea164736f6c6343000818000a","storage":{"0x0":"0x39a27956b78d00a4e00ea8833ff0947410a2933f"}},"0x8861cdfa38838531275ce12f9e795c3b9ff29cbe":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x936188f2c3c8e8c95e425b6fe41c2ac9e701585e":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x94f57ed7e9af03a10e8eb23ce1b3c7914a182b0f":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x95f29431aeb52c0d5dbeeec36010b8e2ca69cb3d":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x9b2565a3545a1312bdcb6e7148a7f7cae8c2706b":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c806373cc48a61161008857806398d35f201161006357806398d35f2014610215578063bd7ed31a1461021d578063c327deef14610245578063d7b82ebe1461026d575f80fd5b806373cc48a6146101af5780638438dc04146101ef5780638da5cb5b14610202575f80fd5b806313af4035116100c357806313af40351461015657806328e7677d146101695780632c095cbb1461017c578063435cc1621461018f575f80fd5b8063020ed8d3146100e9578063087991bc146100fe5780630b1a249514610143575b5f80fd5b6100fc6100f73660046122ff565b610280565b005b61011161010c36600461238a565b610300565b6040805163ffffffff94851681529390921660208401526001600160601b031916908201526060015b60405180910390f35b6100fc610151366004612510565b61036c565b6100fc6101643660046125c6565b6104da565b6100fc6101773660046122ff565b610512565b6100fc61018a3660046125e1565b61058a565b6101a261019d366004612674565b610656565b60405161013a919061278c565b6101d76101bd36600461279e565b60046020525f90815260409020546001600160a01b031681565b6040516001600160a01b03909116815260200161013a565b6100fc6101fd3660046122ff565b6106d2565b6001546101d7906001600160a01b031681565b6101a261074a565b6101d761022b36600461279e565b60056020525f90815260409020546001600160a01b031681565b6101d761025336600461279e565b60036020525f90815260409020546001600160a01b031681565b6101a261027b3660046127b7565b6107d5565b6001546001600160a01b03163314610296575f80fd5b60ff82165f8181526003602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527ff73c3c226af96b7f1ba666a21b3ceaf2be3ee6a365e3178fd9cd1eaae0075aa891015b60405180910390a15050565b5f805f8060025f8787604051610317929190612817565b604080519182900390912082526020808301939093529081015f90812061ffff8b16825290925290205463ffffffff80821695506401000000008204169350600160401b900460601b91505093509350939050565b83516020808601919091205f90815260028252604080822061ffff891683529092529081205463ffffffff16906103a385846107ea565b90506103b0818784610889565b6103b8612239565b845151156103d7576103ca85856107ea565b90506103d7818885610889565b5f6103e1836108cc565b602081015190915060fe16156103f5575f80fd5b61040081602761092a565b158015610425575061041381600261092a565b1580610425575061042581600661092a565b61042d575f80fd5b61043e89898561012001518461093a565b156104795787516020808a01919091205f90815260028252604080822061ffff8d1683529092522080546001600160e01b03191690556104cf565b6104988884610120015183856101200151610493876108cc565b610968565b156100e55787516020808a01919091205f90815260028252604080822061ffff8d1683529092522080546001600160e01b03191690555b505050505050505050565b6001546001600160a01b031633146104f0575f80fd5b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6001546001600160a01b03163314610528575f80fd5b60ff82165f8181526004602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527f2fcc274c3b72dd483ab201bfa87295e3817e8b9b10693219873b722ca1af00c791016102f4565b610592612239565b61059c83836107ea565b805190915061ffff16602f146105b0575f80fd5b60a081015184516020808701919091205f90815260028252604080822061ffff8a16835290925220546105e9919063ffffffff16610a7c565b6105f1575f80fd5b5f6105fb82610a94565b9050805151602082015110156100e55761061c818361012001518789610aab565b505082516020808501919091205f90815260028252604080822061ffff881683529092522080546001600160e01b03191690555b50505050565b60605f83838080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201829052509394505050505b85518110156106c7576106bd8682815181106106af576106af612826565b602002602001015183610c4a565b9150600101610691565b5090505b9392505050565b6001546001600160a01b031633146106e8575f80fd5b60ff82165f8181526005602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527fc7eec866a7a1386188cc3ca20ffea75b71bd3e90a60b6791b1d3f0971145118d91016102f4565b5f80546107569061283a565b80601f01602080910402602001604051908101604052809291908181526020018280546107829061283a565b80156107cd5780601f106107a4576101008083540402835291602001916107cd565b820191905f5260205f20905b8154815290600101906020018083116107b057829003601f168201915b505050505081565b60606107e18383610c4a565b90505b92915050565b6107f2612239565b82516107fd90610dc6565b905061080d8160e0015183610ebf565b610815575f80fd5b5f61082382835f0151610f25565b604083015190915060ff16610838825f610fcc565b14610841575f80fd5b610120820181905260808201516108589042610a7c565b610860575f80fd5b61086e428360a00151610a7c565b610876575f80fd5b61088281838686611026565b5092915050565b6108978360a0015182610a7c565b61089f575f80fd5b825161ffff166032146108b0575f80fd5b6108bf83610120015183611106565b6108c7575f80fd5b505050565b6040805160c0810182525f8082526020820181905291810182905260608082018190526080820183905260a08201529061090583610a94565b60a081015160c08201519192506106cb91610921908290612880565b83519190611172565b5f6107e18360a001515f846112b4565b5f6109468284866113c1565b1561095d57610955828661092a565b159050610960565b505f5b949350505050565b60208101515f9060fe161561097b575f80fd5b5f610985866113e6565b90505f610991856113e6565b90505f8061099f8a82611401565b6109aa906001612893565b60ff1690505b8951811015610a6b57836109dc896109d784858f516109cf9190612880565b8f9190611424565b6114a4565b03610a3f575f6109f7876109d785868f516109cf9190612880565b90508660800151841015610a23578381118015610a175750866080015181105b95505050505050610a73565b83811180610a1757508660800151811095505050505050610a73565b905080610a4c8a82611401565b610a57906001612893565b610a649060ff16826128ac565b90506109b0565b505f93505050505b95945050505050565b5f80610a8883856128bf565b60030b12159392505050565b610a9c61228e565b6107e48261010001515f61152d565b60a084015184515f90610abe9083611548565b90505f8660a001518760c00151610ad59190612880565b9050818111610ae2575f80fd5b5f610aed868861159f565b9050805f03610b1a57610b0c610b0384866128ac565b895190876112b4565b15610b15575f80fd5b610b5b565b87515f90610b29908686611424565b90505f8213610b36575f80fd5b5f610b41898361159f565b12156104cf575f610b52888361159f565b126104cf575f80fd5b5050505050505050565b60c08101516020820181905281515111610b7c5750565b5f610b8e825f01518360200151611548565b8260200151610b9d91906128ac565b8251909150610bac90826116ec565b61ffff166040830152610bc06002826128ac565b8251909150610bcf90826116ec565b61ffff166060830152610be36002826128ac565b8251909150610bf29082611712565b63ffffffff166080830152610c086004826128ac565b82519091505f90610c1990836116ec565b61ffff169050610c2a6002836128ac565b60a084018190529150610c3d81836128ac565b60c0909301929092525050565b6060610c54612239565b610c5e84846107ea565b61012081015180516020918201205f908152600282526040808220845161ffff16835290925220805491925090600160401b900460601b6001600160601b03191615610cc35760a08201518154610cbb919063ffffffff16610a7c565b610cc3575f80fd5b604080516060808201835260a085015163ffffffff9081168352608086015181166020808501918252610100880180518051908301206001600160601b0319168688019081526101208a0180518051908501205f908152600285528981208c5161ffff16825290945292889020965187549451915190961c600160401b0268010000000000000000600160e01b03199186166401000000000267ffffffffffffffff19909516969095169590951792909217939093169190911790925551905191517f55ced933cdd5a34dd03eb5d4bef19ec6ebb251dcd7a988eee0c1b9a13baaa88b92610db192916128e6565b60405180910390a15061010001519392505050565b610dce612239565b610dd8825f6116ec565b61ffff168152610de9826002611401565b60ff166020820152610dfc826003611401565b60ff166040820152610e0f826004611712565b63ffffffff9081166060830152610e2b90839060089061171216565b63ffffffff9081166080830152610e47908390600c9061171216565b63ffffffff90811660a0830152610e639083906010906116ec16565b61ffff1660c0820152610e7782601261173a565b60e0820181905251610eb490610e8e9060126128ac565b8260e001515160128551610ea29190612880565b610eac9190612880565b849190611424565b610100820152919050565b5f80610ed5610ece8483611548565b84906116ec565b83516020808601919091208651878301205f90815260028352604080822061ffff90951682529390925291902054600160401b900460601b6001600160601b031990811691161491505092915050565b60605f610f3184610a94565b90505b8051516020820151101561088257606081015161ffff16600114610f56575f80fd5b81515f03610f6e57610f6781611754565b9150610fa7565b60208101518151610f7e91611548565b825114610f89575f80fd5b805160208201518351610f9f9285925f92611775565b610fa7575f80fd5b8261ffff16816040015161ffff1614610fbe575f80fd5b610fc781610b65565b610f34565b5f805b83518310610fdf57610fdf61290a565b5f610fea8585611401565b60ff169050610ffa8160016128ac565b61100490856128ac565b9350805f0361101357506107e1565b61101e6001836128ac565b915050610fcf565b83518360e00151511115611038575f80fd5b61105c5f858560e0015151875161104f9190612880565b60e0870151929190611797565b611064575f80fd5b5f61106f828261152d565b9050602b61ffff16816040015161ffff160361109d576110908484836117cb565b611098575f80fd5b6110ff565b603061ffff16816040015161ffff16036110bc5761109084848361185f565b60405162461bcd60e51b8152602060048201526014602482015273139bc81d985b1a59081c1c9bdbd988199bdd5b9960621b604482015260640160405180910390fd5b5050505050565b5f806111128482611401565b61111d906001612893565b60ff1690505f5b835181101561095d5761113984828785611797565b15611149576001925050506107e4565b6111538482611401565b61115e906001612893565b61116b9060ff16826128ac565b9050611124565b6040805160c0810182525f8082526020820181905291810182905260608082018190526080820183905260a0820152906111ac83856128ac565b90506111c26111bb5f866128ac565b8690611401565b60ff1682526111d56111bb6001866128ac565b60ff1660208301526111f26111eb6002866128ac565b86906116ec565b61ffff1660408301525f61121161120a6004876128ac565b8790611401565b905061121e6005866128ac565b945061122e868660ff8416611424565b606084015261124060ff8216866128ac565b94505f61124d8787611401565b905060208160ff16111561125f575f80fd5b61126a6001876128ac565b955061127a878760ff8416611900565b608085015261128c60ff8216876128ac565b95506112a48661129c8186612880565b899190611424565b60a0850152509195945050505050565b5f60ff600883811c82169183916112cc918616612932565b90505f6112dd600780871690612952565b600160ff919091161b9050855b87518110156113b4575f6112fe8983611401565b90505f61131661130f8460016128ac565b8b90611401565b90508160ff168660ff161015611334575f96505050505050506106cb565b8160ff168660ff1603611393578460ff168160ff161161135c575f96505050505050506106cb565b8361137f61136d60ff8816866128ac565b6113789060026128ac565b8c90611401565b1660ff165f141596505050505050506106cb565b61139e816002612893565b6113ab9060ff16846128ac565b925050506112ea565b505f979650505050505050565b5f806113cd85846114a4565b90505f6113d9856113e6565b9190911495945050505050565b5f6107e460016113f68484611401565b84919060ff1661193d565b5f82828151811061141457611414612826565b016020015160f81c905092915050565b825160609061143383856128ac565b111561143d575f80fd5b5f8267ffffffffffffffff811115611457576114576123d9565b6040519080825280601f01601f191660200182016040528015611481576020820181803683370190505b50905060208082019086860101611499828287611b43565b509095945050505050565b815160ff165f9081526005602052604080822054606085015182860151925163347ced5960e11b81526001600160a01b03909216926368f9dab2926114ee9291879160040161296b565b602060405180830381865afa158015611509573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107e191906129a4565b61153561228e565b82815260c081018290526107e481610b65565b5f815b8351811061155b5761155b61290a565b5f6115668583611401565b60ff1690506115768160016128ac565b61158090836128ac565b9150805f0361158f5750611595565b5061154b565b6109608382612880565b5f6115aa8383611b98565b156115b657505f6107e4565b5f805f805f6115c5885f610fcc565b90505f6115d2885f610fcc565b90505b808211156115fe578593506115ea8987611bb3565b9550816115f6816129bb565b9250506115d5565b81811115611627578492506116138886611bb3565b94508061161f816129bb565b9150506115fe565b5f8211801561163f575061163d89878a88611797565b155b15611674578593506116518987611bb3565b95508492506116608886611bb3565b945061166d600183612880565b9150611627565b855f0361168a575f1996505050505050506107e4565b845f036116a057600196505050505050506107e4565b6116df6116ae8560016128ac565b6116b88b87611401565b60ff168a6116c78760016128ac565b6116d18d89611401565b8e949392919060ff16611bd6565b9998505050505050505050565b81515f906116fb8360026128ac565b1115611705575f80fd5b50016002015161ffff1690565b81515f906117218360046128ac565b111561172b575f80fd5b50016004015163ffffffff1690565b60605f6117478484611548565b9050610960848483611424565b602081015181516060916107e49161176c9082611548565b84519190611424565b5f611781848484611cc6565b61178c878785611cc6565b149695505050505050565b5f6117af83838486516117aa9190612880565b611cc6565b6117c186868789516117aa9190612880565b1495945050505050565b5f806117d685610a94565b90505b8051516020820151101561095d57604081015161ffff166030146117fb575f80fd5b5f61180582611ce8565b90505f61181e5f835184611d049092919063ffffffff16565b905061182c81838989611da0565b1561184f5761184561183d84611754565b868385611e9b565b93505050506106cb565b505061185a81610b65565b6117d9565b5f6118778460e0015161187184611754565b90611b98565b61187f575f80fd5b815151602083015110156118f75761189e8460e0015161187184611754565b6118a6575f80fd5b5f6118b083611ce8565b90505f6118c95f835184611d049092919063ffffffff16565b90506118d781838888611da0565b156118e7576001925050506106cb565b50506118f282610b65565b61187f565b505f9392505050565b5f602082111561190e575f80fd5b835161191a83856128ac565b1115611924575f80fd5b506020919092018101519190036101000a5f1901191690565b5f603482111561194b575f80fd5b5f80805b84811015611a29575f8761196383896128ac565b8151811061197357611973612826565b01602001516001600160f81b0319169050600360fc1b81108015906119a65750603d60f91b6001600160f81b0319821611155b6119ae575f80fd5b604051806080016040528060478152602001612b5c604791396119d6603060f884901c612880565b815181106119e6576119e6612826565b0160209081015160f81c93508311156119fd575f80fd5b611a08600187612880565b8203611a145750611a29565b5060059290921b60ff8216179160010161194f565b505f611a368560056129d0565b9050611a436008866129e7565b5f03611a5a578160ff16600584901b179250611b29565b611a656008866129e7565b600203611a935760028260ff16901c60ff16600384901b179250600281611a8c9190612880565b9050611b29565b611a9e6008866129e7565b600403611ac55760048260ff16901c60ff16600184901b179250600481611a8c9190612880565b611ad06008866129e7565b600503611af75760018260ff16901c60ff16600484901b179250600181611a8c9190612880565b611b026008866129e7565b6007036100e55760038260ff16901c60ff16600284901b179250600381611a8c9190612880565b611b3581610100612880565b9290921b9695505050505050565b60208110611b7b5781518352611b5a6020846128ac565b9250611b676020836128ac565b9150611b74602082612880565b9050611b43565b905182516020929092036101000a5f190180199091169116179052565b5f815183511480156107e157506107e1835f845f8751611775565b5f611bbe8383611401565b60ff16611bcc8360016128ac565b6107e191906128ac565b5f8480831015611be35750815b6020878901810190858701015f5b83811015611cab5782518251808214611c7b575f6020871115611c1657505f19611c52565b600184611c24896020612880565b611c2e91906128ac565b611c399060086129d0565b611c44906002612ada565b611c4e9190612880565b1990505b5f611c61838316858416612ae5565b90508015611c78579750611cbc9650505050505050565b50505b611c866020866128ac565b9450611c936020856128ac565b93505050602081611ca491906128ac565b9050611bf1565b50611cb68589612ae5565b93505050505b9695505050505050565b82515f90611cd483856128ac565b1115611cde575f80fd5b5091016020012090565b60a081015160c08201516060916107e49161176c908290612880565b604080516080810182525f8082526020820181905291810191909152606080820152611d3a611d335f856128ac565b85906116ec565b61ffff168152611d55611d4e6002856128ac565b8590611401565b60ff166020820152611d6b611d4e6003856128ac565b60ff166040820152611d94611d816004856128ac565b611d8c600485612880565b869190611424565b60608201529392505050565b5f846020015160ff16600314611db757505f610960565b826020015160ff16856040015160ff1614611dd357505f610960565b5f611ddd85611f96565b90508360c0015161ffff168161ffff1614611dfb575f915050610960565b8551610100165f03611e10575f915050610960565b60408087015160ff165f908152600360209081529082902054855191860151925163de8f50a160e01b81526001600160a01b039091169263de8f50a192611e5c928a9290600401612b04565b602060405180830381865afa158015611e77573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611cbc9190612b3c565b5f80611ea683611f96565b90505b84515160208601511015611f8b5760a085015160c08601515f91611edb91611ed2908290612880565b88519190611d04565b90508161ffff16815f015161ffff1614611ef55750611f7d565b846040015160ff16816020015160ff1614611f105750611f7d565b60408051808201909152606081525f6020820152611f3c85518951611f3591906128ac565b8290611ff7565b50611f47818961205a565b50611f52818661205a565b50611f698260400151825f0151846060015161207f565b15611f7a5760019350505050610960565b50505b611f8685610b65565b611ea9565b505f95945050505050565b5f805f5b8351811015611fe8576001811615611fbe57611fb68482611401565b60ff16611fd0565b6008611fca8583611401565b60ff16901b5b611fde9061ffff16836128ac565b9150600101611f9a565b506106cb601082901c826128ac565b60408051808201909152606081525f60208201526120166020836129e7565b1561203e576120266020836129e7565b612031906020612880565b61203b90836128ac565b91505b506020828101829052604080518085525f815290920101905290565b60408051808201909152606081525f60208201526107e183845f015151848551612126565b60ff83165f908152600460205260408120546001600160a01b03166120a557505f6106cb565b60ff84165f90815260046020819052604091829020549151637bf41d7760e11b81526001600160a01b039092169163f7e83aee916120e79187918791016128e6565b602060405180830381865afa158015612102573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109609190612b3c565b60408051808201909152606081525f60208201528251821115612147575f80fd5b602085015161215683866128ac565b111561218957612189856121798760200151878661217491906128ac565b61220c565b6121849060026129d0565b612222565b5f808651805187602083010193508088870111156121a75787860182525b505050602084015b602084106121e757805182526121c66020836128ac565b91506121d36020826128ac565b90506121e0602085612880565b93506121af565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b5f8183111561221c5750816107e4565b50919050565b815161222e8383611ff7565b50610650838261205a565b60408051610140810182525f8082526020820181905291810182905260608082018390526080820183905260a0820183905260c082019290925260e08101829052610100810182905261012081019190915290565b6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b803560ff811681146122e3575f80fd5b919050565b6001600160a01b03811681146122fc575f80fd5b50565b5f8060408385031215612310575f80fd5b612319836122d3565b91506020830135612329816122e8565b809150509250929050565b803561ffff811681146122e3575f80fd5b5f8083601f840112612355575f80fd5b50813567ffffffffffffffff81111561236c575f80fd5b602083019150836020828501011115612383575f80fd5b9250929050565b5f805f6040848603121561239c575f80fd5b6123a584612334565b9250602084013567ffffffffffffffff8111156123c0575f80fd5b6123cc86828701612345565b9497909650939450505050565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff81118282101715612416576124166123d9565b604052919050565b5f82601f83011261242d575f80fd5b813567ffffffffffffffff811115612447576124476123d9565b61245a601f8201601f19166020016123ed565b81815284602083860101111561246e575f80fd5b816020850160208301375f918101602001919091529392505050565b5f6040828403121561249a575f80fd5b6040516040810167ffffffffffffffff82821081831117156124be576124be6123d9565b8160405282935084359150808211156124d5575f80fd5b6124e18683870161241e565b835260208501359150808211156124f6575f80fd5b506125038582860161241e565b6020830152505092915050565b5f805f805f60a08688031215612524575f80fd5b61252d86612334565b9450602086013567ffffffffffffffff80821115612549575f80fd5b61255589838a0161241e565b9550604088013591508082111561256a575f80fd5b61257689838a0161248a565b9450606088013591508082111561258b575f80fd5b61259789838a0161248a565b935060808801359150808211156125ac575f80fd5b506125b98882890161241e565b9150509295509295909350565b5f602082840312156125d6575f80fd5b81356107e1816122e8565b5f805f80608085870312156125f4575f80fd5b6125fd85612334565b9350602085013567ffffffffffffffff80821115612619575f80fd5b6126258883890161241e565b9450604087013591508082111561263a575f80fd5b6126468883890161248a565b9350606087013591508082111561265b575f80fd5b506126688782880161241e565b91505092959194509250565b5f805f60408486031215612686575f80fd5b833567ffffffffffffffff8082111561269d575f80fd5b818601915086601f8301126126b0575f80fd5b81356020828211156126c4576126c46123d9565b8160051b6126d38282016123ed565b928352848101820192828101908b8511156126ec575f80fd5b83870192505b8483101561272657823586811115612708575f80fd5b6127168d86838b010161248a565b83525091830191908301906126f2565b985050508701359250508082111561273c575f80fd5b506123cc86828701612345565b5f81518084525f5b8181101561276d57602081850181015186830182015201612751565b505f602082860101526020601f19601f83011685010191505092915050565b602081525f6107e16020830184612749565b5f602082840312156127ae575f80fd5b6107e1826122d3565b5f80604083850312156127c8575f80fd5b823567ffffffffffffffff808211156127df575f80fd5b6127eb8683870161248a565b93506020850135915080821115612800575f80fd5b5061280d8582860161241e565b9150509250929050565b818382375f9101908152919050565b634e487b7160e01b5f52603260045260245ffd5b600181811c9082168061284e57607f821691505b60208210810361221c57634e487b7160e01b5f52602260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b818103818111156107e4576107e461286c565b60ff81811683821601908111156107e4576107e461286c565b808201808211156107e4576107e461286c565b600382810b9082900b03637fffffff198112637fffffff821317156107e4576107e461286c565b604081525f6128f86040830185612749565b8281036020840152610a738185612749565b634e487b7160e01b5f52600160045260245ffd5b634e487b7160e01b5f52601260045260245ffd5b5f61ffff808416806129465761294661291e565b92169190910492915050565b60ff82811682821603908111156107e4576107e461286c565b606081525f61297d6060830186612749565b828103602084015261298f8186612749565b91505061ffff83166040830152949350505050565b5f602082840312156129b4575f80fd5b5051919050565b5f816129c9576129c961286c565b505f190190565b80820281158282048414176107e4576107e461286c565b5f826129f5576129f561291e565b500690565b600181815b80851115612a3457815f1904821115612a1a57612a1a61286c565b80851615612a2757918102915b93841c93908002906129ff565b509250929050565b5f82612a4a575060016107e4565b81612a5657505f6107e4565b8160018114612a6c5760028114612a7657612a92565b60019150506107e4565b60ff841115612a8757612a8761286c565b50506001821b6107e4565b5060208310610133831016604e8410600b8410161715612ab5575081810a6107e4565b612abf83836129fa565b805f1904821115612ad257612ad261286c565b029392505050565b5f6107e18383612a3c565b8181035f8312801583831316838312821617156108825761088261286c565b606081525f612b166060830186612749565b8281036020840152612b288186612749565b90508281036040840152611cbc8185612749565b5f60208284031215612b4c575f80fd5b815180151581146107e1575f80fdfe00010203040506070809ffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fffffffffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fa164736f6c6343000818000a","storage":{"0x0":"0xbd","0x1":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1471eb6eb2c5e789fc3de43f8ce62938c7d1836ec861730447e2ada8fd81017b":"0x17cda4e23f7237277952e075b1c48467aabfacc0","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563":"0x2b000100000e1000244a5c080249aac11d7b6f6446702e54a1607371607a","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e564":"0x1a41855200fd2ce1cdde32f24e8fb500002b000100000e1000244f660802e06d","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e565":"0x44b80b8f1d39a95c0b0d7c65d08458e880409bbc683457104237c7f8ec8d0000","0x3617319a054d772f909f7c479a2cebe5066e836a939412e32403c99029b92eff":"0x5155f5627bdf9795b3dbb8887001ada1eeba93f2","0x85aaa47b6dc46495bb8824fad4583769726fea36efd831a35556690b830a8fbe":"0x6e2822b8856749ed179c77140dbc5f5a27410a4","0x91da3fd0782e51c6b3986e9e672fd566868e71f3dbc2d6c2cd6fbb3e361af2a7":"0x49da8861c65460639925febe1fb4b5b59b443082","0x95c6356c1b7a542b884d2484ef785c9c7224e77e1016c20007bddc15c23b452f":"0x3f9151d3fd1a82dcc5091909589900fd60ee767ee090bba000000000","0xabd6e7cb50984ff9c2f3e18a2660c3353dadf4e3291deeb275dae2cd1e44fe05":"0x458f653495fb8d9bd0e7df468c2bf76d26c7bd9"}},"0x9dc64b2558b458a15c7f01c192d874ef460f0a29":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x9df67c91f1bfcb4d966cf764e9218685e7c59e8a":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101d1575f3560e01c80638b95dd71116100fe578063c86902331161009e578063e32954eb1161006e578063e32954eb146104f2578063e59d895d14610505578063e985e9c514610518578063f1cb7e0614610553575f80fd5b8063c869023314610435578063ce3decdc1461048c578063d5fa2b001461049f578063d700ff33146104b2575f80fd5b8063a8fa5682116100d9578063a8fa5682146103ac578063a9784b3e146103bf578063ac9650d814610402578063bc1c58d114610422575f80fd5b80638b95dd7114610373578063a22cb46514610386578063a4b91a0114610399575f80fd5b80633603d758116101745780635c98042b116101445780635c98042b14610327578063623195b01461033a578063691f34311461034d5780637737221314610360575f80fd5b80633603d758146102975780633b3b57de146102aa5780634cbf6ba4146102bd57806359d1d43c14610307575f80fd5b8063124a319c116101af578063124a319c146102255780632203ab561461025057806329cd62ea14610271578063304e6ade14610284575f80fd5b806301ffc9a7146101d55780630af179d7146101fd57806310f13a8c14610212575b5f80fd5b6101e86101e3366004612267565b610566565b60405190151581526020015b60405180910390f35b61021061020b3660046122bd565b610576565b005b610210610220366004612304565b610778565b610238610233366004612377565b610842565b6040516001600160a01b0390911681526020016101f4565b61026361025e3660046123a1565b610a87565b6040516101f492919061240e565b61021061027f366004612426565b610bb5565b6102106102923660046122bd565b610c4d565b6102106102a536600461244f565b610cc6565b6102386102b836600461244f565b610d64565b6101e86102cb3660046123a1565b5f82815260208181526040808320546001600160401b031683526006825280832094835293815283822092825291909152205461ffff16151590565b61031a6103153660046122bd565b610d93565b6040516101f49190612466565b61031a61033536600461244f565b610e6f565b610210610348366004612478565b610f2a565b61031a61035b36600461244f565b610fc2565b61021061036e3660046122bd565b610ffa565b6102106103813660046124da565b611073565b6102106103943660046125b9565b611150565b6102106103a73660046125e3565b61122a565b61031a6103ba36600461261e565b6112f6565b6101e86103cd36600461265a565b6001600160a01b039283165f908152600c60209081526040808320948352938152838220929094168152925290205460ff1690565b6104156104103660046126ce565b611342565b6040516101f4919061270c565b61031a61043036600461244f565b61134f565b61047761044336600461244f565b5f81815260208181526040808320546001600160401b03168352600982528083209383529290522080546001909101549091565b604080519283526020830191909152016101f4565b61021061049a3660046122bd565b611387565b6102106104ad36600461276e565b6114c3565b6104da6104c036600461244f565b5f602081905290815260409020546001600160401b031681565b6040516001600160401b0390911681526020016101f4565b61041561050036600461279c565b6114e9565b6102106105133660046127d6565b6114fe565b6101e8610526366004612808565b6001600160a01b039182165f908152600b6020908152604080832093909416825291909152205460ff1690565b61031a6105613660046123a1565b6115a2565b5f61057082611666565b92915050565b826105808161168a565b610588575f80fd5b5f84815260208181526040808320548151601f87018490048402810184019092528582528392606092839285926001600160401b039091169183916105eb9183918d908d90819084018382808284375f9201919091525092939250506118b79050565b90505b80515160208201511015610712578661ffff165f03610652578060400151965061061781611912565b94508460405160200161062a9190612834565b60405160208183030381529060405280519060200120925061064b81611933565b9350610704565b5f61065c82611912565b9050816040015161ffff168861ffff16141580610680575061067e868261194f565b155b15610702576106db8c878a8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250505060208801518d91506106d2908290612863565b8b51158a61196a565b8160400151975081602001519650809550858051906020012093506106ff82611933565b94505b505b61070d81611bc9565b6105ee565b5083511561076c5761076c8a85888c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c925061076391508290508f612863565b8951158861196a565b50505050505050505050565b846107828161168a565b61078a575f80fd5b5f86815260208181526040808320546001600160401b03168352600a8252808320898452909152908190209051849184916107c89089908990612876565b908152602001604051809103902091826107e3929190612901565b5084846040516107f4929190612876565b6040518091039020867f448bc014f1536726cf8d54ff3d6481ed3cbc683c2591ca204274009afa09b1a18787878760405161083294939291906129e2565b60405180910390a3505050505050565b5f82815260208181526040808320546001600160401b031683526007825280832085845282528083206001600160e01b0319851684529091528120546001600160a01b03168015610894579050610570565b5f61089e85610d64565b90506001600160a01b0381166108b8575f92505050610570565b6040516301ffc9a760e01b60248201525f9081906001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b1790525161090f9190612834565b5f60405180830381855afa9150503d805f8114610947576040519150601f19603f3d011682016040523d82523d5f602084013e61094c565b606091505b509150915081158061095f575060208151105b80610989575080601f8151811061097857610978612a13565b01602001516001600160f81b031916155b1561099a575f945050505050610570565b6040516001600160e01b0319871660248201526001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b179052516109f09190612834565b5f60405180830381855afa9150503d805f8114610a28576040519150601f19603f3d011682016040523d82523d5f602084013e610a2d565b606091505b509092509050811580610a41575060208151105b80610a6b575080601f81518110610a5a57610a5a612a13565b01602001516001600160f81b031916155b15610a7c575f945050505050610570565b509095945050505050565b5f82815260208181526040808320546001600160401b03168352600180835281842086855290925282206060915b848111610b975780851615801590610ae457505f8181526020839052604081208054610ae090612885565b9050115b15610b8f5780825f8381526020019081526020015f20808054610b0690612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610b3290612885565b8015610b7d5780601f10610b5457610100808354040283529160200191610b7d565b820191905f5260205f20905b815481529060010190602001808311610b6057829003601f168201915b50505050509050935093505050610bae565b60011b610ab5565b505f60405180602001604052805f81525092509250505b9250929050565b82610bbf8161168a565b610bc7575f80fd5b60408051808201825284815260208082018581525f888152808352848120546001600160401b031681526009835284812089825283528490209251835551600190920191909155815185815290810184905285917f1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e4691015b60405180910390a250505050565b82610c578161168a565b610c5f575f80fd5b5f84815260208181526040808320546001600160401b03168352600382528083208784529091529020610c93838583612901565b50837fe379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d75788484604051610c3f929190612a27565b80610cd08161168a565b610cd8575f80fd5b5f82815260208190526040812080546001600160401b031691610cfa83612a3a565b82546101009290920a6001600160401b038181021990931691831602179091555f84815260208181526040918290205491519190921681528492507fc6621ccb8f3f5a04bb6502154b2caf6adf5983fe76dfef1cfc9c42e3579db444910160405180910390a25050565b5f80610d7183603c6115a2565b905080515f03610d8357505f92915050565b610d8c81611cae565b9392505050565b5f83815260208181526040808320546001600160401b03168352600a825280832086845290915290819020905160609190610dd19085908590612876565b90815260200160405180910390208054610dea90612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610e1690612885565b8015610e615780601f10610e3857610100808354040283529160200191610e61565b820191905f5260205f20905b815481529060010190602001808311610e4457829003601f168201915b505050505090509392505050565b5f81815260208181526040808320546001600160401b03168352600482528083208484529091529020805460609190610ea790612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610ed390612885565b8015610f1e5780601f10610ef557610100808354040283529160200191610f1e565b820191905f5260205f20905b815481529060010190602001808311610f0157829003601f168201915b50505050509050919050565b83610f348161168a565b610f3c575f80fd5b83610f48600182612863565b1615610f52575f80fd5b5f85815260208181526040808320546001600160401b031683526001825280832088845282528083208784529091529020610f8e838583612901565b50604051849086907faa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe3905f90a35050505050565b5f81815260208181526040808320546001600160401b03168352600882528083208484529091529020805460609190610ea790612885565b826110048161168a565b61100c575f80fd5b5f84815260208181526040808320546001600160401b03168352600882528083208784529091529020611040838583612901565b50837fb7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f78484604051610c3f929190612a27565b8261107d8161168a565b611085575f80fd5b837f65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af75284846040516110b792919061240e565b60405180910390a2603c830361110e57837f52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd26110f284611cae565b6040516001600160a01b03909116815260200160405180910390a25b5f84815260208181526040808320546001600160401b0316835260028252808320878452825280832086845290915290206111498382612a5f565b5050505050565b6001600160a01b03821633036111bf5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084015b60405180910390fd5b335f818152600b602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6001600160a01b03821633036112825760405162461bcd60e51b815260206004820181905260248201527f53657474696e672064656c65676174652073746174757320666f722073656c6660448201526064016111b6565b335f818152600c6020908152604080832087845282528083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519384529286917ff0ddb3b04746704017f9aa8bd728fcc2c1d11675041205350018915f5e4750a0910160405180910390a4505050565b5f83815260208181526040808320546001600160401b03168352600582528083208684528252808320858452825280832061ffff851684529091529020805460609190610dea90612885565b6060610d8c5f8484611ccb565b5f81815260208181526040808320546001600160401b03168352600382528083208484529091529020805460609190610ea790612885565b826113918161168a565b611399575f80fd5b5f84815260208181526040808320546001600160401b031680845260048352818420888552909252822080549192916113d190612885565b80601f01602080910402602001604051908101604052809291908181526020018280546113fd90612885565b80156114485780601f1061141f57610100808354040283529160200191611448565b820191905f5260205f20905b81548152906001019060200180831161142b57829003601f168201915b505050506001600160401b0384165f9081526004602090815260408083208b8452909152902091925061147e9050858783612901565b50857f8f15ed4b723ef428f250961da8315675b507046737e19319fc1a4d81bfe87f858287876040516114b393929190612b1e565b60405180910390a2505050505050565b816114cd8161168a565b6114d5575f80fd5b6114e483603c61038185611e88565b505050565b60606114f6848484611ccb565b949350505050565b826115088161168a565b611510575f80fd5b5f84815260208181526040808320546001600160401b031683526007825280832087845282528083206001600160e01b031987168085529083529281902080546001600160a01b0319166001600160a01b038716908117909155905190815286917f7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa910160405180910390a350505050565b5f82815260208181526040808320546001600160401b0316835260028252808320858452825280832084845290915290208054606091906115e290612885565b80601f016020809104026020016040519081016040528092919081815260200182805461160e90612885565b80156116595780601f1061163057610100808354040283529160200191611659565b820191905f5260205f20905b81548152906001019060200180831161163c57829003601f168201915b5050505050905092915050565b5f6001600160e01b03198216631674750f60e21b1480610570575061057082611eb8565b5f336001600160a01b037f0000000000000000000000004fbf7b2f171336958be5d15ff762a5cff53635681614806116ea5750336001600160a01b037f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5616145b156116f757506001919050565b6040516302571be360e01b8152600481018390525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa15801561175c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117809190612b4d565b90507f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b0316816001600160a01b031603611845576040516331a9108f60e11b8152600481018490527f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b031690636352211e90602401602060405180830381865afa15801561181e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118429190612b4d565b90505b6001600160a01b03811633148061187e57506001600160a01b0381165f908152600b6020908152604080832033845290915290205460ff165b80610d8c57506001600160a01b0381165f908152600c60209081526040808320868452825280832033845290915290205460ff16610d8c565b6118ff6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261057081611bc9565b602081015181516060916105709161192a9082611edc565b84519190611f33565b60a081015160c08201516060916105709161192a908290612863565b5f81518351148015610d8c5750610d8c835f845f8751611fa7565b865160208801205f61197d878787611f33565b90508315611aa1576001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c168452909152902080546119c690612885565b159050611a23576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611a0783612b68565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091528120611a62916121f9565b897f03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a12078a8a604051611a94929190612b84565b60405180910390a261076c565b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c16845290915290208054611ae290612885565b90505f03611b40576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611b2483612ba9565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091529020611b808282612a5f565b50897f52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b8a8a84604051611bb593929190612bbf565b60405180910390a250505050505050505050565b60c08101516020820181905281515111611be05750565b5f611bf2825f01518360200151611edc565b8260200151611c019190612bed565b8251909150611c109082611fc9565b61ffff166040830152611c24600282612bed565b8251909150611c339082611fc9565b61ffff166060830152611c47600282612bed565b8251909150611c569082611fef565b63ffffffff166080830152611c6c600482612bed565b82519091505f90611c7d9083611fc9565b61ffff169050611c8e600283612bed565b60a084018190529150611ca18183612bed565b60c0909301929092525050565b5f8151601414611cbc575f80fd5b5060200151600160601b900490565b6060816001600160401b03811115611ce557611ce56124c6565b604051908082528060200260200182016040528015611d1857816020015b6060815260200190600190039081611d035790505b5090505f5b82811015611e80578415611dd8575f848483818110611d3e57611d3e612a13565b9050602002810190611d509190612c00565b611d5f91602491600491612c42565b611d6891612c69565b9050858114611dd65760405162461bcd60e51b815260206004820152603460248201527f6d756c746963616c6c3a20416c6c207265636f726473206d7573742068617665604482015273040c240dac2e8c6d0d2dcce40dcc2dacad0c2e6d60631b60648201526084016111b6565b505b5f8030868685818110611ded57611ded612a13565b9050602002810190611dff9190612c00565b604051611e0d929190612876565b5f60405180830381855af49150503d805f8114611e45576040519150601f19603f3d011682016040523d82523d5f602084013e611e4a565b606091505b509150915081611e58575f80fd5b80848481518110611e6b57611e6b612a13565b60209081029190910101525050600101611d1d565b509392505050565b604080516014808252818301909252606091602082018180368337505050600160601b9290920260208301525090565b5f6001600160e01b0319821663c869023360e01b1480610570575061057082612017565b5f815b83518110611eef57611eef612c86565b5f611efa858361203b565b60ff169050611f0a816001612bed565b611f149083612bed565b9150805f03611f235750611f29565b50611edf565b6114f68382612863565b8251606090611f428385612bed565b1115611f4c575f80fd5b5f826001600160401b03811115611f6557611f656124c6565b6040519080825280601f01601f191660200182016040528015611f8f576020820181803683370190505b50905060208082019086860101610a7c82828761205e565b5f611fb38484846120b3565b611fbe8787856120b3565b149695505050505050565b81515f90611fd8836002612bed565b1115611fe2575f80fd5b50016002015161ffff1690565b81515f90611ffe836004612bed565b1115612008575f80fd5b50016004015163ffffffff1690565b5f6001600160e01b0319821663691f343160e01b14806105705750610570826120d5565b5f82828151811061204e5761204e612a13565b016020015160f81c905092915050565b602081106120965781518352612075602084612bed565b9250612082602083612bed565b915061208f602082612863565b905061205e565b905182516020929092036101000a5f190180199091169116179052565b82515f906120c18385612bed565b11156120cb575f80fd5b5091016020012090565b5f6001600160e01b031982166304928c6760e21b14806105705750610570825f6001600160e01b0319821663547d2b4160e11b148061212457506001600160e01b03198216635c98042b60e01b145b806105705750610570825f6001600160e01b0319821663bc1c58d160e01b14806105705750610570825f6001600160e01b03198216631d9dabef60e11b148061217d57506001600160e01b031982166378e5bf0360e11b145b806105705750610570825f6001600160e01b03198216631101d5ab60e11b14806105705750610570825f6001600160e01b0319821663d700ff3360e01b14806105705750610570825f6001600160e01b03198216634fbf043360e01b148061057057506301ffc9a760e01b6001600160e01b0319831614610570565b50805461220590612885565b5f825580601f10612214575050565b601f0160209004905f5260205f20908101906122309190612233565b50565b5b80821115612247575f8155600101612234565b5090565b80356001600160e01b031981168114612262575f80fd5b919050565b5f60208284031215612277575f80fd5b610d8c8261224b565b5f8083601f840112612290575f80fd5b5081356001600160401b038111156122a6575f80fd5b602083019150836020828501011115610bae575f80fd5b5f805f604084860312156122cf575f80fd5b8335925060208401356001600160401b038111156122eb575f80fd5b6122f786828701612280565b9497909650939450505050565b5f805f805f60608688031215612318575f80fd5b8535945060208601356001600160401b0380821115612335575f80fd5b61234189838a01612280565b90965094506040880135915080821115612359575f80fd5b5061236688828901612280565b969995985093965092949392505050565b5f8060408385031215612388575f80fd5b823591506123986020840161224b565b90509250929050565b5f80604083850312156123b2575f80fd5b50508035926020909101359150565b5f5b838110156123db5781810151838201526020016123c3565b50505f910152565b5f81518084526123fa8160208601602086016123c1565b601f01601f19169290920160200192915050565b828152604060208201525f6114f660408301846123e3565b5f805f60608486031215612438575f80fd5b505081359360208301359350604090920135919050565b5f6020828403121561245f575f80fd5b5035919050565b602081525f610d8c60208301846123e3565b5f805f806060858703121561248b575f80fd5b843593506020850135925060408501356001600160401b038111156124ae575f80fd5b6124ba87828801612280565b95989497509550505050565b634e487b7160e01b5f52604160045260245ffd5b5f805f606084860312156124ec575f80fd5b833592506020840135915060408401356001600160401b0380821115612510575f80fd5b818601915086601f830112612523575f80fd5b813581811115612535576125356124c6565b604051601f8201601f19908116603f0116810190838211818310171561255d5761255d6124c6565b81604052828152896020848701011115612575575f80fd5b826020860160208301375f6020848301015280955050505050509250925092565b6001600160a01b0381168114612230575f80fd5b80358015158114612262575f80fd5b5f80604083850312156125ca575f80fd5b82356125d581612596565b9150612398602084016125aa565b5f805f606084860312156125f5575f80fd5b83359250602084013561260781612596565b9150612615604085016125aa565b90509250925092565b5f805f60608486031215612630575f80fd5b8335925060208401359150604084013561ffff8116811461264f575f80fd5b809150509250925092565b5f805f6060848603121561266c575f80fd5b833561267781612596565b925060208401359150604084013561264f81612596565b5f8083601f84011261269e575f80fd5b5081356001600160401b038111156126b4575f80fd5b6020830191508360208260051b8501011115610bae575f80fd5b5f80602083850312156126df575f80fd5b82356001600160401b038111156126f4575f80fd5b6127008582860161268e565b90969095509350505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b8281101561276157603f1988860301845261274f8583516123e3565b94509285019290850190600101612733565b5092979650505050505050565b5f806040838503121561277f575f80fd5b82359150602083013561279181612596565b809150509250929050565b5f805f604084860312156127ae575f80fd5b8335925060208401356001600160401b038111156127ca575f80fd5b6122f78682870161268e565b5f805f606084860312156127e8575f80fd5b833592506127f86020850161224b565b9150604084013561264f81612596565b5f8060408385031215612819575f80fd5b823561282481612596565b9150602083013561279181612596565b5f82516128458184602087016123c1565b9190910192915050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156105705761057061284f565b818382375f9101908152919050565b600181811c9082168061289957607f821691505b6020821081036128b757634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156114e457805f5260205f20601f840160051c810160208510156128e25750805b601f840160051c820191505b81811015611149575f81556001016128ee565b6001600160401b03831115612918576129186124c6565b61292c836129268354612885565b836128bd565b5f601f84116001811461295d575f85156129465750838201355b5f19600387901b1c1916600186901b178355611149565b5f83815260208120601f198716915b8281101561298c578685013582556020948501946001909201910161296c565b50868210156129a8575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b604081525f6129f56040830186886129ba565b8281036020840152612a088185876129ba565b979650505050505050565b634e487b7160e01b5f52603260045260245ffd5b602081525f6114f66020830184866129ba565b5f6001600160401b03808316818103612a5557612a5561284f565b6001019392505050565b81516001600160401b03811115612a7857612a786124c6565b612a8c81612a868454612885565b846128bd565b602080601f831160018114612abf575f8415612aa85750858301515b5f19600386901b1c1916600185901b178555612b16565b5f85815260208120601f198616915b82811015612aed57888601518255948401946001909101908401612ace565b5085821015612b0a57878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b604081525f612b3060408301866123e3565b8281036020840152612b438185876129ba565b9695505050505050565b5f60208284031215612b5d575f80fd5b8151610d8c81612596565b5f61ffff821680612b7b57612b7b61284f565b5f190192915050565b604081525f612b9660408301856123e3565b905061ffff831660208301529392505050565b5f61ffff808316818103612a5557612a5561284f565b606081525f612bd160608301866123e3565b61ffff851660208401528281036040840152612b4381856123e3565b808201808211156105705761057061284f565b5f808335601e19843603018112612c15575f80fd5b8301803591506001600160401b03821115612c2e575f80fd5b602001915036819003821315610bae575f80fd5b5f8085851115612c50575f80fd5b83861115612c5c575f80fd5b5050820193919092039150565b80356020831015610570575f19602084900360031b1b1692915050565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{}},"0xa06a63155145b7f2fda96d9658ec7fef3b9dcf76":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b506004361061004a575f3560e01c80634ce34aa21461004e578063899e104c1461007e5780638df25d9214610091578063c4e8fcb5146100a4575b5f80fd5b61006161005c366004610834565b6100b9565b6040516001600160e01b0319909116815260200160405180910390f35b61006161008c3660046108b4565b610121565b61006161009f36600461091b565b61018a565b6100b76100b2366004610969565b6101c7565b005b5f335f525f60205260405f20546100dd576349ed56f960e11b5f523360045260245ffd5b815f5b81811015610110576101088585838181106100fd576100fd6109a2565b905060c002016102c4565b6001016100e0565b50632671a55160e11b949350505050565b5f335f525f60205260405f2054610145576349ed56f960e11b5f523360045260245ffd5b835f5b8181101561016d576101658787838181106100fd576100fd6109a2565b600101610148565b506101788484610436565b50632267841360e21b95945050505050565b5f335f525f60205260405f20546101ae576349ed56f960e11b5f523360045260245ffd5b6101b88383610436565b506346f92ec960e11b92915050565b336001600160a01b037f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c1614610210576040516336abb4df60e11b815260040160405180910390fd5b6001600160a01b0382165f9081526020819052604090205481151560ff909116151503610268576040516349271a0f60e11b81526001600160a01b038316600482015281151560248201526044015b60405180910390fd5b6001600160a01b0382165f8181526020818152604091829020805460ff191685151590811790915591519182527fae63067d43ac07563b7eb8db6595635fc77f1578a2a5ea06ba91b63e2afa37e2910160405180910390a25050565b60016102d360208301836109ca565b60038111156102e4576102e46109b6565b03610329576103266102fc60408301602084016109ef565b61030c60608401604085016109ef565b61031c60808501606086016109ef565b8460a0013561056c565b50565b600261033860208301836109ca565b6003811115610349576103496109b6565b036103b6578060a00135600114610379576040516369f9582760e01b815260a0820135600482015260240161025f565b61032661038c60408301602084016109ef565b61039c60608401604085016109ef565b6103ac60808501606086016109ef565b8460800135610660565b60036103c560208301836109ca565b60038111156103d6576103d66109b6565b0361041d576103266103ee60408301602084016109ef565b6103fe60608401604085016109ef565b61040e60808501606086016109ef565b84608001358560a00135610715565b604051631e4cbc7f60e21b815260040160405180910390fd5b808280631759616b60e11b6020525f5b8381101561055f57823582018035803b61046b57635f15d6725f52806020526024601cfd5b60a08201358060051b60c0018060808501351460a0606086013514168185013583141615905080156104a657633ae8821360e21b5f5260045ffd5b506020860195506080602084016024378060061b60400190508060a00160a4525f8160c401528060c4018160a0850160c4375f808260205f875af1935083610550573d1561053057601f3d0160051c91508060051c826003028184111561051a578184036003028280028580020360091c01015b5a60208201101561052d573d5f803e3d5ffd5b50505b6357e222f160e11b5f528260045260c0606452608451602001608452805ffd5b50505050600181019050610446565b5050505060806040525050565b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166106515780873b15151661065157806106405781610623573d1561060257601f3d0160051c8360051c81600302818311156105eb578183036003028280028480020360091c01015b5a6020820110156105fe573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b833b61067757635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af180610707573d156106e557601f3d0160051c8260051c81600302818311156106ce578183036003028280028480020360091c01015b5a6020820110156106e1573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b61072c57635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af1806107d1573d156107b057601f3d0160051c8560051c8160030281831115610799578183036003028280028480020360091c01015b5a6020820110156107ac573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b5f8083601f8401126107fc575f80fd5b50813567ffffffffffffffff811115610813575f80fd5b60208301915083602060c08302850101111561082d575f80fd5b9250929050565b5f8060208385031215610845575f80fd5b823567ffffffffffffffff81111561085b575f80fd5b610867858286016107ec565b90969095509350505050565b5f8083601f840112610883575f80fd5b50813567ffffffffffffffff81111561089a575f80fd5b6020830191508360208260051b850101111561082d575f80fd5b5f805f80604085870312156108c7575f80fd5b843567ffffffffffffffff808211156108de575f80fd5b6108ea888389016107ec565b90965094506020870135915080821115610902575f80fd5b5061090f87828801610873565b95989497509550505050565b5f806020838503121561092c575f80fd5b823567ffffffffffffffff811115610942575f80fd5b61086785828601610873565b80356001600160a01b0381168114610964575f80fd5b919050565b5f806040838503121561097a575f80fd5b6109838361094e565b915060208301358015158114610997575f80fd5b809150509250929050565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52602160045260245ffd5b5f602082840312156109da575f80fd5b8135600481106109e8575f80fd5b9392505050565b5f602082840312156109ff575f80fd5b6109e88261094e56fea164736f6c6343000818000a","storage":{}},"0xaa33d7188eb4b4a51c37199eaad2f73cf2bf0204":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0xac52f68f31577e44ae0c7e95a42dc9eb574b9383":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a424740014610090575b600080fd5b610059610054366004610cac565b6100b3565b6040516100669190610d9b565b60405180910390f35b61008261007d366004610dae565b610162565b604051908152602001610066565b6100a361009e366004610cac565b6101d6565b6040519015158152602001610066565b606060005a90506101576100ca6020870187610ddc565b6001546001600160a01b03166040880135846100e960608b018b610df9565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061023592505050565b9150505b9392505050565b600154604051636ccbae5f60e01b8152600481018390526000916001600160a01b031690636ccbae5f90602401602060405180830381865afa1580156101ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d09190610e40565b92915050565b600061022d6101e485610ef1565b600154604080516020601f88018190048102820181019092528681526001600160a01b039092169190879087908190840183828082843760009201919091525061030d92505050565b949350505050565b6060600080876001600160a01b0316866102518b8a8989610355565b60405161025e9190610f9b565b60006040518083038160008787f1925050503d806000811461029c576040519150601f19603f3d011682016040523d82523d6000602084013e6102a1565b606091505b5090925090506102b2603f87610fb7565b5a116102c0576102c0610fd9565b61030082826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061040a565b9998505050505050505050565b600061031a848484610443565b801561022d575060608401516020908101516001600160e01b031990811660009081529182905260409091205460e01b16151561022d565b50565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036103e75760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526103ff82828661058c565b979650505050505050565b6060831561041957508161015b565b8251156104295782518084602001fd5b8160405162461bcd60e51b81526004016103de9190610d9b565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561048a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104ae9190610e40565b9050600061055c8660600151805190602001208688602001516040516020016104fc9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561058257508551610582906001600160a01b03168286610a38565b9695505050505050565b60606001600160e01b03198416631de5861160e31b0361061a576000806000858060200190518101906105bf9190610fef565b92509250925086838383886040516024016105dd9493929190611032565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152935061015b92505050565b6001600160e01b03198416636debcb8d60e01b0361064b576000806000858060200190518101906105bf9190610fef565b6001600160e01b0319841663280d9b0560e01b036106dd576000806000808680602001905181019061067d91906110aa565b935093509350935087848484848a60405160240161069f959493929190611118565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152945061015b9350505050565b6001600160e01b031984166361603dd960e01b0361075c5760008380602001905181019061070b9190610e40565b905084818460405160240161072192919061115d565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152915061015b9050565b6001600160e01b0319841663b34f33c560e01b036107ab5760008060008580602001905181019061078d9190611176565b92509250925086838383886040516024016105dd94939291906111d0565b6001600160e01b03198416633013529360e01b036107dc5760008060008580602001905181019061078d9190611176565b6001600160e01b031984166307eca39560e01b03610830576000806000808680602001905181019061080e9190611209565b935093509350935087848484848a60405160240161069f95949392919061127e565b6001600160e01b031984166368b6154f60e01b03610862576000806000808680602001905181019061067d91906110aa565b6001600160e01b0319841663341de35b60e21b03610894576000806000808680602001905181019061067d91906110aa565b6001600160e01b03198416637a84860f60e11b0361092d576000806000806000878060200190518101906108c891906112cb565b945094509450945094508885858585858c6040516024016108ee96959493929190611360565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152955061015b945050505050565b6001600160e01b03198416636fab95b360e01b036109b2576000808480602001905181019061095c91906113b9565b915091508582828660405160240161097693929190611400565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925061015b915050565b6001600160e01b0319841663288f888960e11b0361015b57600080848060200190518101906109e1919061142b565b91509150858282866040516024016109fb93929190611459565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925050509392505050565b6000806000610a478585610b7a565b90925090506000816004811115610a6057610a60611489565b148015610a7e5750856001600160a01b0316826001600160a01b0316145b15610a8e5760019250505061015b565b600080876001600160a01b0316631626ba7e60e01b8888604051602401610ab692919061115d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051610af49190610f9b565b600060405180830381855afa9150503d8060008114610b2f576040519150601f19603f3d011682016040523d82523d6000602084013e610b34565b606091505b5091509150818015610b47575080516020145b8015610b6e57508051630b135d3f60e11b90610b6c9083016020908101908401610e40565b145b98975050505050505050565b6000808251604103610bb05760208301516040840151606085015160001a610ba487828585610bbf565b94509450505050610bb8565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610bf65750600090506003610ca3565b8460ff16601b14158015610c0e57508460ff16601c14155b15610c1f5750600090506004610ca3565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610c73573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610c9c57600060019250925050610ca3565b9150600090505b94509492505050565b600080600060408486031215610cc157600080fd5b833567ffffffffffffffff80821115610cd957600080fd5b9085019060808288031215610ced57600080fd5b90935060208501359080821115610d0357600080fd5b818601915086601f830112610d1757600080fd5b813581811115610d2657600080fd5b876020828501011115610d3857600080fd5b6020830194508093505050509250925092565b60005b83811015610d66578181015183820152602001610d4e565b50506000910152565b60008151808452610d87816020860160208601610d4b565b601f01601f19169290920160200192915050565b60208152600061015b6020830184610d6f565b600060208284031215610dc057600080fd5b5035919050565b6001600160a01b038116811461035257600080fd5b600060208284031215610dee57600080fd5b813561015b81610dc7565b6000808335601e19843603018112610e1057600080fd5b83018035915067ffffffffffffffff821115610e2b57600080fd5b602001915036819003821315610bb857600080fd5b600060208284031215610e5257600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610e9257610e92610e59565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ec157610ec1610e59565b604052919050565b600067ffffffffffffffff821115610ee357610ee3610e59565b50601f01601f191660200190565b600060808236031215610f0357600080fd5b610f0b610e6f565b8235610f1681610dc7565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610f4657600080fd5b840136601f820112610f5757600080fd5b8035610f6a610f6582610ec9565b610e98565b8181523684838501011115610f7e57600080fd5b818484018583013760009181019093015250606082015292915050565b60008251610fad818460208701610d4b565b9190910192915050565b600082610fd457634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b60008060006060848603121561100457600080fd5b835161100f81610dc7565b602085015190935061102081610dc7565b80925050604084015190509250925092565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061058290830184610d6f565b600082601f83011261107657600080fd5b8151611084610f6582610ec9565b81815284602083860101111561109957600080fd5b61022d826020830160208701610d4b565b600080600080608085870312156110c057600080fd5b84516110cb81610dc7565b60208601519094506110dc81610dc7565b60408601516060870151919450925067ffffffffffffffff81111561110057600080fd5b61110c87828801611065565b91505092959194509250565b6001600160a01b038681168252851660208201526040810184905260a06060820181905260009061114b90830185610d6f565b8281036080840152610b6e8185610d6f565b82815260406020820152600061022d6040830184610d6f565b60008060006060848603121561118b57600080fd5b835161119681610dc7565b60208501516040860151919450925067ffffffffffffffff8111156111ba57600080fd5b6111c686828701611065565b9150509250925092565b60018060a01b03851681528360208201526080604082015260006111f76080830185610d6f565b82810360608401526103ff8185610d6f565b6000806000806080858703121561121f57600080fd5b845161122a81610dc7565b60208601516040870151919550935067ffffffffffffffff8082111561124f57600080fd5b61125b88838901611065565b9350606087015191508082111561127157600080fd5b5061110c87828801611065565b60018060a01b038616815284602082015260a0604082015260006112a560a0830186610d6f565b82810360608401526112b78186610d6f565b90508281036080840152610b6e8185610d6f565b600080600080600060a086880312156112e357600080fd5b85516112ee81610dc7565b60208701519095506112ff81610dc7565b60408701516060880151919550935067ffffffffffffffff8082111561132457600080fd5b61133089838a01611065565b9350608088015191508082111561134657600080fd5b5061135388828901611065565b9150509295509295909350565b6001600160a01b038781168252861660208201526040810185905260c06060820181905260009061139390830186610d6f565b82810360808401526113a58186610d6f565b905082810360a08401526103008185610d6f565b600080604083850312156113cc57600080fd5b82519150602083015167ffffffffffffffff8111156113ea57600080fd5b6113f685828601611065565b9150509250929050565b8381526060602082015260006114196060830185610d6f565b82810360408401526105828185610d6f565b6000806040838503121561143e57600080fd5b825161144981610dc7565b6020939093015192949293505050565b60018060a01b03841681528260208201526060604082015260006114806060830184610d6f565b95945050505050565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a","storage":{"0x1":"0x7bb6cd9be29fab783c0b494a06fed8b2e2596b7a","0xd8b896d609e853134f3f02ce62d8049b2fdfe9356134f6d548fb1beda30db79":"0x30135293","0x4f457f36b92dc6b16c281e5877e2d8d39630135c1b7246fa9174035e1efcefbd":"0x6fab95b3","0x6b7ba3fe9941e089de60543da4a1deaef065baa963222951b2f9a138f9960820":"0x6debcb8d","0x70cff8e4ee4af5aa154324d45bcf258212c235bbe79f0707bb6273110ef4e13a":"0xf5090c1e","0x73efb0e44094dbabc6bbeecd3be1d81f272157c2dae2d647e6315f150b0b1dd2":"0xd0778d6c","0x8b1c4edded6644848281eab03ac2c319242d62b2057cffa3dd4540715bbc155e":"0xef2c3088","0xbeb5ea8fc2aeae43b7170220434aa4429fb067f0866ae25514b29f647641ca8c":"0x511f1112","0xca659f6eb372ce950e69d4d474290a6a4285f6a06a6128ca9f45419371a1e997":"0xb34f33c5","0xd12e300b5f35ba5198dd81dab97a512a154a0ad0e2cda788abdc22deba64f2a7":"0x280d9b05","0xd5453e7f4fff276a1d42f717d1db50865c284ae707a15bd6a590a3895656f27c":"0x7eca395","0xea2575ae4056f10294a848ca5ed6d215dffd1b80838142770bc441f7df607d71":"0x61603dd9","0xf8ca3ef1e3d09a0d88e209301f12626c90bec3ea586d4bce2c7a58e7eae8278f":"0x68b6154f"}},"0xb17aae5b3a7815433fc82cfd67ea245767894f03":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061012a5760003560e01c80638d839ffe116100ab578063aeb8ce9b1161006f578063aeb8ce9b146105d7578063ce1e09c014610688578063f14fcbc81461069d578063f2fde38b146106c7578063f49826be146106fa578063f7a16963146107b95761012a565b80638d839ffe1461045d5780638da5cb5b146104725780638f32d59b146104a35780639791c097146104b8578063acf1a841146105695761012a565b80637e324479116100f25780637e324479146102b8578063839df945146102e857806383e7f6ff1461031257806385f6d155146103c55780638a95b09f146104485761012a565b806301ffc9a71461012f5780633ccfd60b146101775780633d86c52f1461018e578063530e784f14610270578063715018a6146102a3575b600080fd5b34801561013b57600080fd5b506101636004803603602081101561015257600080fd5b50356001600160e01b031916610881565b604080519115158252519081900360200190f35b34801561018357600080fd5b5061018c610a12565b005b34801561019a57600080fd5b5061025e600480360360a08110156101b157600080fd5b810190602081018135600160201b8111156101cb57600080fd5b8201836020820111156101dd57600080fd5b803590602001918460018302840111600160201b831117156101fe57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b0383358116945060208401359360408101358216935060600135169050610a53565b60408051918252519081900360200190f35b34801561027c57600080fd5b5061018c6004803603602081101561029357600080fd5b50356001600160a01b0316610b42565b3480156102af57600080fd5b5061018c610ba3565b3480156102c457600080fd5b5061018c600480360360408110156102db57600080fd5b5080359060200135610bfe565b3480156102f457600080fd5b5061025e6004803603602081101561030b57600080fd5b5035610c1a565b34801561031e57600080fd5b5061025e6004803603604081101561033557600080fd5b810190602081018135600160201b81111561034f57600080fd5b82018360208201111561036157600080fd5b803590602001918460018302840111600160201b8311171561038257600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505091359250610c2c915050565b61018c600480360360808110156103db57600080fd5b810190602081018135600160201b8111156103f557600080fd5b82018360208201111561040757600080fd5b803590602001918460018302840111600160201b8311171561042857600080fd5b91935091506001600160a01b038135169060208101359060400135610d9e565b34801561045457600080fd5b5061025e610de9565b34801561046957600080fd5b5061025e610df0565b34801561047e57600080fd5b50610487610df6565b604080516001600160a01b039092168252519081900360200190f35b3480156104af57600080fd5b50610163610e05565b3480156104c457600080fd5b50610163600480360360208110156104db57600080fd5b810190602081018135600160201b8111156104f557600080fd5b82018360208201111561050757600080fd5b803590602001918460018302840111600160201b8311171561052857600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610e16945050505050565b61018c6004803603604081101561057f57600080fd5b810190602081018135600160201b81111561059957600080fd5b8201836020820111156105ab57600080fd5b803590602001918460018302840111600160201b831117156105cc57600080fd5b919350915035610e2b565b3480156105e357600080fd5b50610163600480360360208110156105fa57600080fd5b810190602081018135600160201b81111561061457600080fd5b82018360208201111561062657600080fd5b803590602001918460018302840111600160201b8311171561064757600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610fcf945050505050565b34801561069457600080fd5b5061025e611069565b3480156106a957600080fd5b5061018c600480360360208110156106c057600080fd5b503561106f565b3480156106d357600080fd5b5061018c600480360360208110156106ea57600080fd5b50356001600160a01b03166110a1565b34801561070657600080fd5b5061025e6004803603606081101561071d57600080fd5b810190602081018135600160201b81111561073757600080fd5b82018360208201111561074957600080fd5b803590602001918460018302840111600160201b8311171561076a57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b0383351693505050602001356110bb565b61018c600480360360c08110156107cf57600080fd5b810190602081018135600160201b8111156107e957600080fd5b8201836020820111156107fb57600080fd5b803590602001918460018302840111600160201b8311171561081c57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b038335811694506020840135936040810135935060608101358216925060800135166110d3565b604080517f737570706f727473496e74657266616365286279746573342900000000000000815290519081900360190190206000906001600160e01b0319838116911614806109c05750604080517472656e657728737472696e672c75696e743235362960581b815290519081900360150181209080602861186a8239604080519182900360280182206e636f6d6d697428627974657333322960881b8352905191829003600f01822090925090806026611892823960260190506040518091039020604051808070617661696c61626c6528737472696e672960781b8152506011019050604051809103902060405180807f72656e74507269636528737472696e672c75696e7432353629000000000000008152506019019050604051809103902018181818186001600160e01b031916826001600160e01b031916145b80610a0c5750604051808061182a60409139604080519182900301812091508060426118b8823960420190506040518091039020186001600160e01b031916826001600160e01b031916145b92915050565b610a1a610e05565b610a2357600080fd5b6040513390303180156108fc02916000818181858888f19350505050158015610a50573d6000803e3d6000fd5b50565b845160208601206000906001600160a01b038416158015610a7b57506001600160a01b038316155b15610acb57604080516020808201939093526bffffffffffffffffffffffff19606089901b1681830152605480820188905282518083039091018152607490910190915280519101209050610b39565b6001600160a01b038416610ade57600080fd5b604080516020808201939093526bffffffffffffffffffffffff19606089811b82168385015287811b8216605484015286901b166068820152607c80820188905282518083039091018152609c909101909152805191012090505b95945050505050565b610b4a610e05565b610b5357600080fd5b600280546001600160a01b0319166001600160a01b0383811691909117918290556040519116907ff261845a790fe29bbd6631e2ca4a5bdc83e6eed7c3271d9590d97287e00e912390600090a250565b610bab610e05565b610bb457600080fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b610c06610e05565b610c0f57600080fd5b600391909155600455565b60056020526000908152604090205481565b815160208084019190912060025460015460408051636b727d4360e11b81526004810185905290516000956001600160a01b03948516946350e9a715948a9491169263d6e4fa8692602480840193919291829003018186803b158015610c9157600080fd5b505afa158015610ca5573d6000803e3d6000fd5b505050506040513d6020811015610cbb57600080fd5b50516040516001600160e01b031960e085901b168152602481018290526044810188905260606004820190815283516064830152835189928291608490910190602087019080838360005b83811015610d1e578181015183820152602001610d06565b50505050905090810190601f168015610d4b5780820380516001836020036101000a031916815260200191505b5094505050505060206040518083038186803b158015610d6a57600080fd5b505afa158015610d7e573d6000803e3d6000fd5b505050506040513d6020811015610d9457600080fd5b5051949350505050565b610de285858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250889350879250869150806110d3565b5050505050565b6224ea0081565b60035481565b6000546001600160a01b031690565b6000546001600160a01b0316331490565b60006003610e2383611646565b101592915050565b6000610e6e84848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250869250610c2c915050565b905080341015610e7d57600080fd5b60008484604051808383808284376040805193909101839003832060015463c475abff60e01b855260048501829052602485018b90529151909750600096506001600160a01b03909116945063c475abff93506044808401936020935082900301818787803b158015610eef57600080fd5b505af1158015610f03573d6000803e3d6000fd5b505050506040513d6020811015610f1957600080fd5b5051905034831015610f565760405133903485900380156108fc02916000818181858888f19350505050158015610f54573d6000803e3d6000fd5b505b817f3da24c024582931cfaf8267d8ed24d13a82a8068d5bd337d30ec45cea4e506ae8787868560405180806020018481526020018381526020018281038252868682818152602001925080828437600083820152604051601f909101601f191690920182900397509095505050505050a2505050505050565b80516020820120600090610fe283610e16565b80156110625750600154604080516312dc929d60e31b81526004810184905290516001600160a01b03909216916396e494e891602480820192602092909190829003018186803b15801561103557600080fd5b505afa158015611049573d6000803e3d6000fd5b505050506040513d602081101561105f57600080fd5b50515b9392505050565b60045481565b6004546000828152600560205260409020544291011061108e57600080fd5b6000908152600560205260409020429055565b6110a9610e05565b6110b257600080fd5b610a508161172e565b60006110cb848484600080610a53565b949350505050565b60006110e28787868686610a53565b905060006110f188878461179c565b885160208a01209091508060006001600160a01b038716156114ac5760015460408051633f2891eb60e21b815260048101859052306024820152604481018c905290516001600160a01b039092169163fca247ac916064808201926020929091908290030181600087803b15801561116857600080fd5b505af115801561117c573d6000803e3d6000fd5b505050506040513d602081101561119257600080fd5b505160015460408051630ddf7fcb60e41b815290519293506000926001600160a01b039092169163ddf7fcb091600480820192602092909190829003018186803b1580156111df57600080fd5b505afa1580156111f3573d6000803e3d6000fd5b505050506040513d602081101561120957600080fd5b50516040805160208181019390935280820187905281518082038301815260608201808452815191850191909120600154633f15457f60e01b90925292519294506001600160a01b031692633f15457f92606480840193829003018186803b15801561127457600080fd5b505afa158015611288573d6000803e3d6000fd5b505050506040513d602081101561129e57600080fd5b505160408051630c4b7b8560e11b8152600481018490526001600160a01b038b8116602483015291519190921691631896f70a91604480830192600092919082900301818387803b1580156112f257600080fd5b505af1158015611306573d6000803e3d6000fd5b505050506001600160a01b0387161561139257876001600160a01b031663d5fa2b0082896040518363ffffffff1660e01b815260040180838152602001826001600160a01b03166001600160a01b0316815260200192505050600060405180830381600087803b15801561137957600080fd5b505af115801561138d573d6000803e3d6000fd5b505050505b60015460408051630a3b53db60e21b8152600481018690526001600160a01b038e81166024830152915191909216916328ed4f6c91604480830192600092919082900301818387803b1580156113e757600080fd5b505af11580156113fb573d6000803e3d6000fd5b50505050600160009054906101000a90046001600160a01b03166001600160a01b03166323b872dd308d866040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050600060405180830381600087803b15801561148e57600080fd5b505af11580156114a2573d6000803e3d6000fd5b505050505061154c565b6001600160a01b038616156114c057600080fd5b60015460408051633f2891eb60e21b8152600481018590526001600160a01b038d81166024830152604482018d90529151919092169163fca247ac9160648083019260209291908290030181600087803b15801561151d57600080fd5b505af1158015611531573d6000803e3d6000fd5b505050506040513d602081101561154757600080fd5b505190505b896001600160a01b0316837fca6abbe9d7f11422cb6ca7629fbf6fe9efb1c621f71ce8f02b9f2a230097404f8d87856040518080602001848152602001838152602001828103825285818151815260200191508051906020019080838360005b838110156115c45781810151838201526020016115ac565b50505050905090810190601f1680156115f15780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a3833411156116395760405133903486900380156108fc02916000818181858888f19350505050158015611637573d6000803e3d6000fd5b505b5050505050505050505050565b8051600090819081905b8082101561172557600085838151811061166657fe5b01602001516001600160f81b0319169050600160ff1b81101561168e57600183019250611719565b600760fd1b6001600160f81b0319821610156116af57600283019250611719565b600f60fc1b6001600160f81b0319821610156116d057600383019250611719565b601f60fb1b6001600160f81b0319821610156116f157600483019250611719565b603f60fa1b6001600160f81b03198216101561171257600583019250611719565b6006830192505b50600190920191611650565b50909392505050565b6001600160a01b03811661174157600080fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b600354600082815260056020526040812054909142910111156117be57600080fd5b600454600083815260056020526040902054429101116117dd57600080fd5b6117e684610fcf565b6117ef57600080fd5b600082815260056020526040812081905561180a8585610c2c565b90506224ea0084101561181c57600080fd5b803410156110cb57600080fdfe6d616b65436f6d6d69746d656e7457697468436f6e66696728737472696e672c616464726573732c627974657333322c616464726573732c6164647265737329726567697374657228737472696e672c616464726573732c75696e743235362c62797465733332296d616b65436f6d6d69746d656e7428737472696e672c616464726573732c6279746573333229726567697374657257697468436f6e66696728737472696e672c616464726573732c75696e743235362c627974657333322c616464726573732c6164647265737329a265627a7a72315820ba74b4e49afb22de09a9ebda5d073d93e2a2a7b2530ce50def390c32cac92ea064736f6c634300050c0032","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1":"0xc965345edac823d56812cd20a10316233916a605","0x2":"0xec71e4e674fe0f432693dc2b935c34bd2774c003","0x3":"0x258","0x4":"0x15180"}},"0xbdefcf6429d0ac68236a6beb321cbd2ce66b463c":{"nonce":2,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c80636d435421116100885780637b37e561116100635780637b37e561146102435780638b9e028b14610256578063906c87cc1461027657806393790f4414610289575f80fd5b80636d435421146101eb5780636e9bfd9f146101fe578063794593bc14610230575f80fd5b806314afd79e116100c357806314afd79e1461018157806333bc8572146101945780634e3f9580146101b757806351710e45146101d8575f80fd5b8063027cc764146100e95780630a96ad391461011957806313ad9cab1461016c575b5f80fd5b6100fc6100f7366004610c39565b61029c565b6040516001600160a01b0390911681526020015b60405180910390f35b604080517f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f81527fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167602082015201610110565b61017f61017a366004610c61565b610339565b005b6100fc61018f366004610ca9565b610531565b6101a76101a2366004610cc9565b61055c565b6040519015158152602001610110565b6101ca6101c5366004610ca9565b610595565b604051908152602001610110565b61017f6101e6366004610ca9565b6105bd565b61017f6101f9366004610cc9565b6106be565b61021161020c366004610cfa565b6107ae565b604080516001600160a01b039093168352901515602083015201610110565b6100fc61023e366004610d11565b610838565b61017f610251366004610ca9565b610a0a565b610269610264366004610ca9565b610aab565b6040516101109190610d32565b6100fc610284366004610ca9565b610b28565b6101ca610297366004610ca9565b610b53565b5f6102a683610b8e565b6001600160a01b0383165f908152602081905260409020600301548083106102f157604051636ceb340b60e01b81526001600160a01b03851660048201526024015b60405180910390fd5b6001600160a01b0384165f90815260208190526040902060030180548490811061031d5761031d610d7e565b5f918252602090912001546001600160a01b0316949350505050565b61034283610bc6565b60405163c4e8fcb560e01b81526001600160a01b038381166004830152821515602483015284169063c4e8fcb5906044015f604051808303815f87803b15801561038a575f80fd5b505af115801561039c573d5f803e3d5ffd5b505050506001600160a01b038381165f908152602081815260408083209386168352600484019091529020548015158380156103d6575080155b15610425576003830180546001810182555f828152602080822090920180546001600160a01b0319166001600160a01b038a169081179091559254928152600486019091526040902055610529565b831580156104305750805b156105295760038301545f198301905f9061044d90600190610d92565b90508181146104d8575f85600301828154811061046c5761046c610d7e565b5f918252602090912001546003870180546001600160a01b03909216925082918590811061049c5761049c610d7e565b5f91825260208083209190910180546001600160a01b0319166001600160a01b0394851617905592909116815260048701909152604090208490555b846003018054806104eb576104eb610db7565b5f828152602080822083015f1990810180546001600160a01b03191690559092019092556001600160a01b0389168252600487019052604081205550505b505050505050565b5f61053b82610b8e565b506001600160a01b039081165f908152602081905260409020600101541690565b5f61056683610b8e565b506001600160a01b039182165f9081526020818152604080832093909416825260049092019091522054151590565b5f61059f82610b8e565b506001600160a01b03165f9081526020819052604090206003015490565b6105c681610b8e565b6001600160a01b038181165f9081526020819052604090206002015416331461060d576040516388c3a11560e01b81526001600160a01b03821660048201526024016102e8565b6040515f907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da908290a26001600160a01b038082165f818152602081905260408082206002810180546001600160a01b031916905560010154905133949190911692917fc8894f26f396ce8c004245c8b7cd1b92103a6e4302fcbab883987149ac01b7ec91a46001600160a01b03165f90815260208190526040902060010180546001600160a01b03191633179055565b6106c782610bc6565b6001600160a01b0381166106f95760405163a388d26360e01b81526001600160a01b03831660048201526024016102e8565b6001600160a01b038083165f9081526020819052604090206002015481169082160361074b576040516365e0406560e11b81526001600160a01b038084166004830152821660248201526044016102e8565b6040516001600160a01b038216907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da905f90a26001600160a01b039182165f90815260208190526040902060020180546001600160a01b03191691909216179055565b5f8060ff60f81b30847f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f6040516020016107eb9493929190610dcb565b60408051601f198184030181529190528051602090910120936001600160a01b0385163f7fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167149350915050565b5f6001600160a01b0382166108605760405163267eaa8160e21b815260040160405180910390fd5b606083901c3314610884576040516332db94d160e21b815260040160405180910390fd5b6040516108c3906001600160f81b031990309086907f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f90602001610dcb565b604051602081830303815290604052805190602001205f1c90507fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167816001600160a01b03163f0361093257604051633194665960e11b81526001600160a01b03821660048201526024016102e8565b8260405161093f90610c16565b8190604051809103905ff590508015801561095c573d5f803e3d5ffd5b50506001600160a01b038181165f81815260208181526040918290206001810180546001600160a01b03191695881695909517909455868455815192835282018690527f4397af6128d529b8ae0442f99db1296d5136062597a15bbc61c1b2a6431a7d15910160405180910390a16040516001600160a01b03808516915f918516907fc8894f26f396ce8c004245c8b7cd1b92103a6e4302fcbab883987149ac01b7ec908390a45092915050565b610a1381610bc6565b6001600160a01b038181165f9081526020819052604090206002015416610a58576040516335809b0b60e11b81526001600160a01b03821660048201526024016102e8565b6040515f907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da908290a26001600160a01b03165f90815260208190526040902060020180546001600160a01b0319169055565b6060610ab682610b8e565b6001600160a01b0382165f908152602081815260409182902060030180548351818402810184019094528084529091830182828015610b1c57602002820191905f5260205f20905b81546001600160a01b03168152600190910190602001808311610afe575b50505050509050919050565b5f610b3282610b8e565b506001600160a01b039081165f908152602081905260409020600201541690565b6001600160a01b0381165f9081526020819052604090205480610b89576040516304ca820960e41b815260040160405180910390fd5b919050565b6001600160a01b0381165f90815260208190526040902054610bc3576040516304ca820960e41b815260040160405180910390fd5b50565b610bcf81610b8e565b6001600160a01b038181165f90815260208190526040902060010154163314610bc35760405163d4ed9a1760e01b81526001600160a01b03821660048201526024016102e8565b610a4180610e0583390190565b80356001600160a01b0381168114610b89575f80fd5b5f8060408385031215610c4a575f80fd5b610c5383610c23565b946020939093013593505050565b5f805f60608486031215610c73575f80fd5b610c7c84610c23565b9250610c8a60208501610c23565b915060408401358015158114610c9e575f80fd5b809150509250925092565b5f60208284031215610cb9575f80fd5b610cc282610c23565b9392505050565b5f8060408385031215610cda575f80fd5b610ce383610c23565b9150610cf160208401610c23565b90509250929050565b5f60208284031215610d0a575f80fd5b5035919050565b5f8060408385031215610d22575f80fd5b82359150610cf160208401610c23565b602080825282518282018190525f9190848201906040850190845b81811015610d725783516001600160a01b031683529284019291840191600101610d4d565b50909695505050505050565b634e487b7160e01b5f52603260045260245ffd5b81810381811115610db157634e487b7160e01b5f52601160045260245ffd5b92915050565b634e487b7160e01b5f52603160045260245ffd5b6001600160f81b031994909416845260609290921b6bffffffffffffffffffffffff19166001840152601583015260358201526055019056fe60a060405234801561000f575f80fd5b5033608052608051610a1561002c5f395f6101d20152610a155ff3fe608060405234801561000f575f80fd5b506004361061004a575f3560e01c80634ce34aa21461004e578063899e104c1461007e5780638df25d9214610091578063c4e8fcb5146100a4575b5f80fd5b61006161005c366004610834565b6100b9565b6040516001600160e01b0319909116815260200160405180910390f35b61006161008c3660046108b4565b610121565b61006161009f36600461091b565b61018a565b6100b76100b2366004610969565b6101c7565b005b5f335f525f60205260405f20546100dd576349ed56f960e11b5f523360045260245ffd5b815f5b81811015610110576101088585838181106100fd576100fd6109a2565b905060c002016102c4565b6001016100e0565b50632671a55160e11b949350505050565b5f335f525f60205260405f2054610145576349ed56f960e11b5f523360045260245ffd5b835f5b8181101561016d576101658787838181106100fd576100fd6109a2565b600101610148565b506101788484610436565b50632267841360e21b95945050505050565b5f335f525f60205260405f20546101ae576349ed56f960e11b5f523360045260245ffd5b6101b88383610436565b506346f92ec960e11b92915050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610210576040516336abb4df60e11b815260040160405180910390fd5b6001600160a01b0382165f9081526020819052604090205481151560ff909116151503610268576040516349271a0f60e11b81526001600160a01b038316600482015281151560248201526044015b60405180910390fd5b6001600160a01b0382165f8181526020818152604091829020805460ff191685151590811790915591519182527fae63067d43ac07563b7eb8db6595635fc77f1578a2a5ea06ba91b63e2afa37e2910160405180910390a25050565b60016102d360208301836109ca565b60038111156102e4576102e46109b6565b03610329576103266102fc60408301602084016109ef565b61030c60608401604085016109ef565b61031c60808501606086016109ef565b8460a0013561056c565b50565b600261033860208301836109ca565b6003811115610349576103496109b6565b036103b6578060a00135600114610379576040516369f9582760e01b815260a0820135600482015260240161025f565b61032661038c60408301602084016109ef565b61039c60608401604085016109ef565b6103ac60808501606086016109ef565b8460800135610660565b60036103c560208301836109ca565b60038111156103d6576103d66109b6565b0361041d576103266103ee60408301602084016109ef565b6103fe60608401604085016109ef565b61040e60808501606086016109ef565b84608001358560a00135610715565b604051631e4cbc7f60e21b815260040160405180910390fd5b808280631759616b60e11b6020525f5b8381101561055f57823582018035803b61046b57635f15d6725f52806020526024601cfd5b60a08201358060051b60c0018060808501351460a0606086013514168185013583141615905080156104a657633ae8821360e21b5f5260045ffd5b506020860195506080602084016024378060061b60400190508060a00160a4525f8160c401528060c4018160a0850160c4375f808260205f875af1935083610550573d1561053057601f3d0160051c91508060051c826003028184111561051a578184036003028280028580020360091c01015b5a60208201101561052d573d5f803e3d5ffd5b50505b6357e222f160e11b5f528260045260c0606452608451602001608452805ffd5b50505050600181019050610446565b5050505060806040525050565b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166106515780873b15151661065157806106405781610623573d1561060257601f3d0160051c8360051c81600302818311156105eb578183036003028280028480020360091c01015b5a6020820110156105fe573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b833b61067757635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af180610707573d156106e557601f3d0160051c8260051c81600302818311156106ce578183036003028280028480020360091c01015b5a6020820110156106e1573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b61072c57635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af1806107d1573d156107b057601f3d0160051c8560051c8160030281831115610799578183036003028280028480020360091c01015b5a6020820110156107ac573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b5f8083601f8401126107fc575f80fd5b50813567ffffffffffffffff811115610813575f80fd5b60208301915083602060c08302850101111561082d575f80fd5b9250929050565b5f8060208385031215610845575f80fd5b823567ffffffffffffffff81111561085b575f80fd5b610867858286016107ec565b90969095509350505050565b5f8083601f840112610883575f80fd5b50813567ffffffffffffffff81111561089a575f80fd5b6020830191508360208260051b850101111561082d575f80fd5b5f805f80604085870312156108c7575f80fd5b843567ffffffffffffffff808211156108de575f80fd5b6108ea888389016107ec565b90965094506020870135915080821115610902575f80fd5b5061090f87828801610873565b95989497509550505050565b5f806020838503121561092c575f80fd5b823567ffffffffffffffff811115610942575f80fd5b61086785828601610873565b80356001600160a01b0381168114610964575f80fd5b919050565b5f806040838503121561097a575f80fd5b6109838361094e565b915060208301358015158114610997575f80fd5b809150509250929050565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52602160045260245ffd5b5f602082840312156109da575f80fd5b8135600481106109e8575f80fd5b9392505050565b5f602082840312156109ff575f80fd5b6109e88261094e56fea164736f6c6343000818000aa164736f6c6343000818000a","storage":{}},"0xbe5deac45dd1ca4ee18dc2d585d84d3d3cb82b0d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c806341539d4a146100465780634d5505d314610097578063afa764d7146100b1575b600080fd5b6100636004803603602081101561005c57600080fd5b50356100dc565b6040805195865260208601949094528484019290925260608401526001600160a01b03166080830152519081900360a00190f35b61009f610114565b60408051918252519081900360200190f35b6100da600480360360608110156100c757600080fd5b508035906020810135906040013561011a565b005b60006020819052908152604090208054600182015460028301546003840154600490940154929391929091906001600160a01b031685565b60015481565b6101226101eb565b506040805160a0810182528481526020808201858152828401858152426060808601918252336080870181815260018054810180825560009081528089528a81208a518155975188830155955160028801559351600387015551600490950180546001600160a01b0319166001600160a01b0390961695909517909455905486518981529485018890528487018a905295519495919491937fba5de06d22af2685c6c7765f60067f7d2b08c2d29f53cdf14d67f6d1c9bfb527929081900390910190a450505050565b6040518060a001604052806000801916815260200160008152602001600081526020016000815260200160006001600160a01b03168152509056fea164736f6c6343000606000a","storage":{"0x1":"0x0"}},"0xbe92182cab5b84fd18b34881a0c32771e84f5b8b":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061021c5760003560e01c80638da5cb5b11610125578063bebec6b4116100ad578063e985e9c51161007c578063e985e9c514610540578063f059235914610553578063f2fde38b14610566578063ffa1ad7414610579578063ffad6f551461059d57600080fd5b8063bebec6b4146104e7578063bfc5429b146104fa578063c15ae7cf1461050d578063c87b56dd1461052d57600080fd5b8063a81ce6f9116100f4578063a81ce6f91461046d578063ac9650d814610480578063b3f9e4cb146104a0578063b85afd28146104b3578063b98b3526146104d457600080fd5b80638da5cb5b146103f157806391015f6b146103f9578063933c051d1461041b578063a3f4df7e1461043d57600080fd5b80634bd79ed0116101a857806370a082311161017757806370a082311461038d578063715018a6146103a05780637e37479e146103a857806383caffbe146103bb578063869b8884146103ce57600080fd5b80634bd79ed0146103335780634f558e79146103465780636352211e14610359578063672b9f811461036c57600080fd5b80631bd8cc1a116101ef5780631bd8cc1a146102ac5780631be5e7ed146102cc578063276fabb1146102ec578063430c20811461030d578063485cc9551461032057600080fd5b806301ffc9a7146102215780630328075514610249578063081812fc1461026c57806313af403514610297575b600080fd5b61023461022f366004612c9d565b6105b0565b60405190151581526020015b60405180910390f35b61025c610257366004612d0b565b610638565b6040516102409493929190612dfe565b61027f61027a366004612e3c565b61065b565b6040516001600160a01b039091168152602001610240565b6102aa6102a5366004612e6a565b610760565b005b6102bf6102ba366004612d0b565b6107d1565b6040516102409190612e87565b6102df6102da366004612edb565b6107f0565b6040516102409190612f12565b6102ff6102fa366004612f25565b61091b565b604051908152602001610240565b61023461031b366004612f66565b61098f565b6102aa61032e366004612f92565b610aa2565b6102aa610341366004612fcb565b610bf5565b610234610354366004612e3c565b610e51565b61027f610367366004612e3c565b610e5c565b61037f61037a366004613036565b610e67565b604051610240929190613058565b6102ff61039b366004612e6a565b610f97565b6102aa611095565b6102ff6103b6366004612e6a565b6110a9565b6102bf6103c936600461307d565b611118565b6103e16103dc366004612fcb565b6114f0565b60405161024094939291906131bb565b61027f6116e6565b61040c610407366004612d0b565b611714565b60405161024093929190613208565b61042e610429366004612fcb565b611734565b60405161024093929190613234565b6102df604051806040016040528060118152602001702aa7299d10283937bc3c902932b0b232b960791b81525081565b61027f61047b366004612e3c565b6118bd565b61049361048e366004612f25565b61198b565b6040516102409190613277565b61027f6104ae366004612e3c565b611a7f565b6104c66104c1366004612d0b565b611b05565b6040516102409291906132d9565b6102df6104e23660046132fe565b611ce1565b6102df6104f5366004612e6a565b611cfb565b6102df6105083660046132fe565b611d6f565b61052061051b366004612f25565b611d89565b6040516102409190613371565b6102df61053b366004612e3c565b611e37565b61023461054e366004612f92565b611f09565b6102aa610561366004612fcb565b611f54565b6102aa610574366004612e6a565b612018565b6102df604051806040016040528060058152602001640302e352e360dc1b81525081565b6102aa6105ab366004613384565b612085565b60006001600160e01b031982166362526e6360e01b14806105e157506001600160e01b03198216636fa624af60e11b145b806105fc57506001600160e01b031982166308da864d60e31b145b8061061757506001600160e01b03198216638584880360e01b145b8061063257506301ffc9a760e01b6001600160e01b03198316145b92915050565b6000806060806106498787876120d8565b93509350935093505b93509350935093565b60006106668261233a565b61067257506000919050565b61067b826123d2565b6106f25760665460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa1580156106c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106ed91906133bd565b610632565b60655460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa15801561073c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061063291906133bd565b600061076a6116e6565b6001600160a01b0316146107c55760405162461bcd60e51b815260206004820152601e60248201527f50726f78795265616465723a204f574e45525f414c52454144595f534554000060448201526064015b60405180910390fd5b6107ce81612419565b50565b60606107e66107e0848661346a565b83612495565b90505b9392505050565b60606107fb826123d2565b1561088057606554604051631be5e7ed60e01b81526001600160a01b0390911690631be5e7ed9061083490879087908790600401613547565b600060405180830381865afa158015610851573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261087991908101906135b0565b90506107e9565b600061088b83612617565b90506001600160a01b0381163b1561091357604051631be5e7ed60e01b81526001600160a01b03821690631be5e7ed906108cd90889088908890600401613547565b600060405180830381865afa92505050801561090b57506040513d6000823e601f3d908101601f1916820160405261090891908101906135b0565b60015b156109135791505b509392505050565b60655460405163276fabb160e01b81526000916001600160a01b03169063276fabb19061094e908690869060040161366c565b602060405180830381865afa15801561096b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613680565b600061099a8261233a565b6109a657506000610632565b6109af826123d2565b610a2d5760665460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a04573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a289190613699565b6107e9565b60655460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a7e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613699565b600054610100900460ff1615808015610ac25750600054600160ff909116105b80610adc5750303b158015610adc575060005460ff166001145b610b3f5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107bc565b6000805460ff191660011790558015610b62576000805461ff0019166101001790555b606580546001600160a01b038086166001600160a01b0319928316179092556066805492851692909116919091179055610b9a61268a565b610ba261268a565b610baa6126b1565b8015610bf0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b610bfd6126e1565b828114610c4c5760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107bc565b60005b83811015610e4a5760006068868684818110610c6d57610c6d6136bb565b9050602002810190610c7f91906136d1565b604051610c8d929190613717565b908152604051908190036020019020541115610cf1576068858583818110610cb757610cb76136bb565b9050602002810190610cc991906136d1565b604051610cd7929190613717565b90815260200160405180910390206000610cf19190612c18565b60005b838383818110610d0657610d066136bb565b9050602002810190610d189190613727565b9050811015610ddc576068868684818110610d3557610d356136bb565b9050602002810190610d4791906136d1565b604051610d55929190613717565b9081526020016040518091039020848484818110610d7557610d756136bb565b9050602002810190610d879190613727565b83818110610d9757610d976136bb565b9050602002810190610da991906136d1565b82546001810184556000938452602090932090920191610dc991836137f8565b5080610dd4816138cd565b915050610cf4565b507fb2b57b54285120d17f49f2490a39ef791441fd0ad1e6b6818c23262bf91f061c858583818110610e1057610e106136bb565b9050602002810190610e2291906136d1565b604051610e309291906138e6565b60405180910390a180610e42816138cd565b915050610c4f565b5050505050565b60006106328261233a565b600061063282612740565b606080610e73836123d2565b15610ef95760655460405163672b9f8160e01b815260048101869052602481018590526001600160a01b039091169063672b9f8190604401600060405180830381865afa158015610ec8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610ef091908101906138fa565b91509150610f90565b6000610f0484612617565b90506001600160a01b0381163b15610f8e5760405163672b9f8160e01b815260048101869052602481018590526001600160a01b0382169063672b9f8190604401600060405180830381865afa925050508015610f8357506040513d6000823e601f3d908101601f19168201604052610f8091908101906138fa565b60015b15610f8e5790935091505b505b9250929050565b6065546040516370a0823160e01b81526001600160a01b03838116600483015260009283929116906370a0823190602401602060405180830381865afa158015610fe5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110099190613680565b6066549091506001600160a01b031615610632576066546040516370a0823160e01b81526001600160a01b038581166004830152909116906370a0823190602401602060405180830381865afa158015611067573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061108b9190613680565b6107e9908261395d565b61109d6126e1565b6110a76000612419565b565b606554604051633f1ba3cf60e11b81526001600160a01b0383811660048301526000921690637e37479e90602401602060405180830381865afa1580156110f4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190613680565b606060006067868660405161112e929190613717565b9081526020016040518091039020805461114790613770565b80601f016020809104026020016040519081016040528092919081815260200182805461117390613770565b80156111c05780601f10611195576101008083540402835291602001916111c0565b820191906000526020600020905b8154815290600101906020018083116111a357829003601f168201915b5050505050905080516000036111d657506114e8565b6000604051806040016040528060068152602001653a37b5b2b71760d11b81525090506000604051806040016040528060088152602001672e6164647265737360c01b81525090506000604051806040016040528060018152602001601760f91b815250905060008385838c8c868d8d8a60405160200161125f99989796959493929190613970565b6040516020818303038152906040529050600060688260405161128291906139f3565b9081526020016040518091039020805480602002602001604051908101604052809291908181526020016000905b8282101561135c5783829060005260206000200180546112cf90613770565b80601f01602080910402602001604051908101604052809291908181526020018280546112fb90613770565b80156113485780601f1061131d57610100808354040283529160200191611348565b820191906000526020600020905b81548152906001019060200180831161132b57829003601f168201915b5050505050815260200190600101906112b0565b50505050905080516003611370919061395d565b6001600160401b03811115611387576113876133da565b6040519080825280602002602001820160405280156113ba57816020015b60608152602001906001900390816113a55790505b50965081876000815181106113d1576113d16136bb565b602002602001018190525060005b815181101561143e578181815181106113fa576113fa6136bb565b602002602001015188826001611410919061395d565b81518110611420576114206136bb565b60200260200101819052508080611436906138cd565b9150506113df565b508486848d8d8860405160200161145a96959493929190613a0f565b6040516020818303038152906040528782516001611478919061395d565b81518110611488576114886136bb565b60200260200101819052508486856040516020016114a893929190613a72565b60405160208183030381529060405287825160026114c6919061395d565b815181106114d6576114d66136bb565b60200260200101819052505050505050505b949350505050565b6060808080846001600160401b0381111561150d5761150d6133da565b604051908082528060200260200182016040528015611536578160200160208202803683370190505b509350846001600160401b03811115611551576115516133da565b60405190808252806020026020018201604052801561157a578160200160208202803683370190505b509250846001600160401b03811115611595576115956133da565b6040519080825280602002602001820160405280156115c857816020015b60608152602001906001900390816115b35790505b509150846001600160401b038111156115e3576115e36133da565b60405190808252806020026020018201604052801561161657816020015b60608152602001906001900390816116015790505b50905060005b858110156116da57611647898989898581811061163b5761163b6136bb565b905060200201356120d8565b888581518110611659576116596136bb565b60200260200101888681518110611672576116726136bb565b6020026020010188878151811061168b5761168b6136bb565b602002602001018888815181106116a4576116a46136bb565b6020908102919091010193909352929091526001600160a01b0392831690915291169052806116d2816138cd565b91505061161c565b50945094509450949050565b7fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c8121905546001600160a01b031690565b6000806060611724868686612761565b9250925092505b93509350939050565b60608080836001600160401b03811115611750576117506133da565b604051908082528060200260200182016040528015611779578160200160208202803683370190505b509250836001600160401b03811115611794576117946133da565b6040519080825280602002602001820160405280156117bd578160200160208202803683370190505b509150836001600160401b038111156117d8576117d86133da565b60405190808252806020026020018201604052801561180b57816020015b60608152602001906001900390816117f65790505b50905060005b848110156118b25761183c8888888885818110611830576118306136bb565b90506020020135612761565b86848151811061184e5761184e6136bb565b60200260200101868581518110611867576118676136bb565b60200260200101868681518110611880576118806136bb565b60209081029190910101929092526001600160a01b0392831690915291169052806118aa816138cd565b915050611811565b509450945094915050565b606554604051634f558e7960e01b8152600481018390526000916001600160a01b031690634f558e7990602401602060405180830381865afa158015611907573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061192b9190613699565b156119415750506065546001600160a01b031690565b6066546001600160a01b03161580159061196d575060006119618361296c565b6001600160a01b031614155b156119835750506066546001600160a01b031690565b506000919050565b6060816001600160401b038111156119a5576119a56133da565b6040519080825280602002602001820160405280156119d857816020015b60608152602001906001900390816119c35790505b50905060005b82811015611a7857611a48308585848181106119fc576119fc6136bb565b9050602002810190611a0e91906136d1565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061299e92505050565b828281518110611a5a57611a5a6136bb565b60200260200101819052508080611a70906138cd565b9150506119de565b5092915050565b6000611a8a8261233a565b611a9657506000919050565b611a9f826123d2565b611ad45760665460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb906024016106ac565b60655460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb9060240161071f565b606080836001600160401b03811115611b2057611b206133da565b604051908082528060200260200182016040528015611b5357816020015b6060815260200190600190039081611b3e5790505b509150836001600160401b03811115611b6e57611b6e6133da565b604051908082528060200260200182016040528015611ba157816020015b6060815260200190600190039081611b8c5790505b509050611bad836123d2565b15611c345760655460405163170b5fa560e31b81526001600160a01b039091169063b85afd2890611be690889088908890600401613ab5565b600060405180830381865afa158015611c03573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611c2b9190810190613b72565b91509150611cd9565b6000611c3f84612617565b90506001600160a01b0381163b15158015611c5957508415155b15611cd75760405163170b5fa560e31b81526001600160a01b0382169063b85afd2890611c8e90899089908990600401613ab5565b600060405180830381865afa925050508015611ccc57506040513d6000823e601f3d908101601f19168201604052611cc99190810190613b72565b60015b15611cd75790935091505b505b935093915050565b6060611cf08686868686612a92565b979650505050505050565b606554604051632fafb1ad60e21b81526001600160a01b038381166004830152606092169063bebec6b4906024015b600060405180830381865afa158015611d47573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261063291908101906135b0565b6060611d7e8686868686612a92565b509695505050505050565b6060816001600160401b03811115611da357611da36133da565b604051908082528060200260200182016040528015611dcc578160200160208202803683370190505b50905060005b82811015611a7857611dfb848483818110611def57611def6136bb565b90506020020135612740565b828281518110611e0d57611e0d6136bb565b6001600160a01b039092166020928302919091019091015280611e2f816138cd565b915050611dd2565b6060611e428261233a565b611e5a57505060408051602081019091526000815290565b611e63826123d2565b611ed85760665460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401600060405180830381865afa158015611eb0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106ed91908101906135b0565b60655460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401611d2a565b60405162461bcd60e51b815260206004820152601f60248201527f50726f78795265616465723a20554e535550504f525445445f4d4554484f440060448201526000906064016107bc565b611f5c6126e1565b828114611fab5760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107bc565b60005b83811015610e4a57612006858583818110611fcb57611fcb6136bb565b9050602002810190611fdd91906136d1565b858585818110611fef57611fef6136bb565b905060200281019061200191906136d1565b612b3e565b80612010816138cd565b915050611fae565b6120206126e1565b6001600160a01b0381166107c55760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107bc565b61208d6126e1565b60005b83811015610e4a576120c68585838181106120ad576120ad6136bb565b90506020028101906120bf91906136d1565b8585612b3e565b806120d0816138cd565b915050612090565b600080606080856001600160401b038111156120f6576120f66133da565b60405190808252806020026020018201604052801561212957816020015b60608152602001906001900390816121145790505b509150856001600160401b03811115612144576121446133da565b60405190808252806020026020018201604052801561217757816020015b60608152602001906001900390816121625790505b509050612183856123d2565b156122845760655460405163b3f9e4cb60e01b8152600481018790526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa1580156121d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121f591906133bd565b935061220085612bad565b60655460405163170b5fa560e31b81529194506001600160a01b03169063b85afd2890612235908a908a908a90600401613ab5565b600060405180830381865afa158015612252573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261227a9190810190613b72565b9092509050610652565b61228d85612617565b93506122988561296c565b92506001600160a01b0384163b151580156122b4575060008251115b156106525760405163170b5fa560e31b81526001600160a01b0385169063b85afd28906122e9908a908a908a90600401613ab5565b600060405180830381865afa92505050801561232757506040513d6000823e601f3d908101601f191682016040526123249190810190613b72565b60015b1561065257909250905093509350935093565b6000612345826123d2565b6123645760006123548361296c565b6001600160a01b03161415610632565b606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e79906024015b602060405180830381865afa1580156123ae573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190613699565b6066546000906001600160a01b031615806106325750606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401612391565b60006124236116e6565b9050817fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c812190580546001600160a01b0319166001600160a01b03928316179055604051838216918316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b606082516001600160401b038111156124b0576124b06133da565b6040519080825280602002602001820160405280156124e357816020015b60608152602001906001900390816124ce5790505b5090506124ef826123d2565b1561257257606554604051630dec660d60e11b81526001600160a01b0390911690631bd8cc1a906125269086908690600401613bcb565b600060405180830381865afa158015612543573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261256b9190810190613bed565b9050610632565b600061257d83612617565b90506001600160a01b0381163b15158015612599575060008451115b15611a7857604051630dec660d60e11b81526001600160a01b03821690631bd8cc1a906125cc9087908790600401613bcb565b600060405180830381865afa92505050801561260a57506040513d6000823e601f3d908101601f191682016040526126079190810190613bed565b60015b15611a7857949350505050565b60665460405163b3f9e4cb60e01b8152600481018390526000916001600160a01b03169063b3f9e4cb906024015b602060405180830381865afa92505050801561267e575060408051601f3d908101601f1916820190925261267b918101906133bd565b60015b61063257506000919050565b600054610100900460ff166110a75760405162461bcd60e51b81526004016107bc90613c21565b600054610100900460ff166126d85760405162461bcd60e51b81526004016107bc90613c21565b6110a733612419565b336126ea6116e6565b6001600160a01b0316146110a75760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107bc565b600061274b826123d2565b612758576106ed8261296c565b61063282612bad565b6000806060846001600160401b0381111561277e5761277e6133da565b6040519080825280602002602001820160405280156127b157816020015b606081526020019060019003908161279c5790505b5090506127bd846123d2565b156128bb5760655460405163b3f9e4cb60e01b8152600481018690526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561280b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061282f91906133bd565b925061283a84612bad565b606554604051630dec660d60e11b81529193506001600160a01b031690631bd8cc1a9061286f90899089908990600401613c6c565b600060405180830381865afa15801561288c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526128b49190810190613bed565b905061172b565b6128c484612617565b92506128cf8461296c565b91506001600160a01b0383163b151580156128e957508415155b1561172b57604051630dec660d60e11b81526001600160a01b03841690631bd8cc1a9061291e90899089908990600401613c6c565b600060405180830381865afa92505050801561295c57506040513d6000823e601f3d908101601f191682016040526129599190810190613bed565b60015b1561172b57905093509350939050565b6066546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401612645565b60606001600160a01b0383163b612a065760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b60648201526084016107bc565b600080846001600160a01b031684604051612a2191906139f3565b600060405180830381855af49150503d8060008114612a5c576040519150601f19603f3d011682016040523d82523d6000602084013e612a61565b606091505b5091509150612a898282604051806060016040528060278152602001613c8160279139612bdf565b95945050505050565b6060806000612aa388888888611118565b90506000612ab18286612495565b905060005b8151811015612b31576000828281518110612ad357612ad36136bb565b6020026020010151511115612b1f57828181518110612af457612af46136bb565b60200260200101519350818181518110612b1057612b106136bb565b60200260200101519450612b31565b80612b29816138cd565b915050612ab6565b5050509550959350505050565b818160678686604051612b52929190613717565b90815260200160405180910390209182612b6d9291906137f8565b507f0bf4b04a0f6d7d0800284e1abb0f58f795c0a25b9088634b6ab847be51001dec8484604051612b9f9291906138e6565b60405180910390a150505050565b6065546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401612645565b60608315612bee5750816107e9565b825115612bfe5782518084602001fd5b8160405162461bcd60e51b81526004016107bc9190612f12565b50805460008255906000526020600020908101906107ce91905b80821115612c4f576000612c468282612c53565b50600101612c32565b5090565b508054612c5f90613770565b6000825580601f10612c6f575050565b601f0160209004906000526020600020908101906107ce91905b80821115612c4f5760008155600101612c89565b600060208284031215612caf57600080fd5b81356001600160e01b0319811681146107e957600080fd5b60008083601f840112612cd957600080fd5b5081356001600160401b03811115612cf057600080fd5b6020830191508360208260051b8501011115610f9057600080fd5b600080600060408486031215612d2057600080fd5b83356001600160401b03811115612d3657600080fd5b612d4286828701612cc7565b909790965060209590950135949350505050565b60005b83811015612d71578181015183820152602001612d59565b50506000910152565b60008151808452612d92816020860160208601612d56565b601f01601f19169290920160200192915050565b600082825180855260208086019550808260051b84010181860160005b84811015612df157601f19868403018952612ddf838351612d7a565b98840198925090830190600101612dc3565b5090979650505050505050565b6001600160a01b03858116825284166020820152608060408201819052600090612e2a90830185612da6565b8281036060840152611cf08185612da6565b600060208284031215612e4e57600080fd5b5035919050565b6001600160a01b03811681146107ce57600080fd5b600060208284031215612e7c57600080fd5b81356107e981612e55565b6020815260006107e96020830184612da6565b60008083601f840112612eac57600080fd5b5081356001600160401b03811115612ec357600080fd5b602083019150836020828501011115610f9057600080fd5b600080600060408486031215612ef057600080fd5b83356001600160401b03811115612f0657600080fd5b612d4286828701612e9a565b6020815260006107e96020830184612d7a565b60008060208385031215612f3857600080fd5b82356001600160401b03811115612f4e57600080fd5b612f5a85828601612cc7565b90969095509350505050565b60008060408385031215612f7957600080fd5b8235612f8481612e55565b946020939093013593505050565b60008060408385031215612fa557600080fd5b8235612fb081612e55565b91506020830135612fc081612e55565b809150509250929050565b60008060008060408587031215612fe157600080fd5b84356001600160401b0380821115612ff857600080fd5b61300488838901612cc7565b9096509450602087013591508082111561301d57600080fd5b5061302a87828801612cc7565b95989497509550505050565b6000806040838503121561304957600080fd5b50508035926020909101359150565b60408152600061306b6040830185612d7a565b8281036020840152612a898185612d7a565b6000806000806040858703121561309357600080fd5b84356001600160401b03808211156130aa57600080fd5b6130b688838901612e9a565b909650945060208701359150808211156130cf57600080fd5b5061302a87828801612e9a565b600081518084526020808501945080840160005b838110156131155781516001600160a01b0316875295820195908201906001016130f0565b509495945050505050565b60008282518085526020808601955060058183821b8501018287016000805b868110156131ac57601f1988850381018c5283518051808752908801908887019080891b88018a01865b8281101561319557858a8303018452613183828651612d7a565b948c0194938c01939150600101613169565b509e8a019e9750505093870193505060010161313f565b50919998505050505050505050565b6080815260006131ce60808301876130dc565b82810360208401526131e081876130dc565b905082810360408401526131f48186613120565b90508281036060840152611cf08185613120565b6001600160a01b03848116825283166020820152606060408201819052600090612a8990830184612da6565b60608152600061324760608301866130dc565b828103602084015261325981866130dc565b9050828103604084015261326d8185613120565b9695505050505050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156132cc57603f198886030184526132ba858351612d7a565b9450928501929085019060010161329e565b5092979650505050505050565b6040815260006132ec6040830185612da6565b8281036020840152612a898185612da6565b60008060008060006060868803121561331657600080fd5b85356001600160401b038082111561332d57600080fd5b61333989838a01612e9a565b9097509550602088013591508082111561335257600080fd5b5061335f88828901612e9a565b96999598509660400135949350505050565b6020815260006107e960208301846130dc565b6000806000806040858703121561339a57600080fd5b84356001600160401b03808211156133b157600080fd5b6130b688838901612cc7565b6000602082840312156133cf57600080fd5b81516107e981612e55565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715613418576134186133da565b604052919050565b60006001600160401b03821115613439576134396133da565b5060051b60200190565b60006001600160401b0382111561345c5761345c6133da565b50601f01601f191660200190565b600061347d61347884613420565b6133f0565b80848252602080830192508560051b85013681111561349b57600080fd5b855b818110156135125780356001600160401b038111156134bc5760008081fd5b870136601f8201126134ce5760008081fd5b80356134dc61347882613443565b81815236868385010111156134f15760008081fd5b8186840187830137600091810186019190915286525093820193820161349d565b50919695505050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60408152600061355b60408301858761351e565b9050826020830152949350505050565b600082601f83011261357c57600080fd5b815161358a61347882613443565b81815284602083860101111561359f57600080fd5b6114e8826020830160208701612d56565b6000602082840312156135c257600080fd5b81516001600160401b038111156135d857600080fd5b6114e88482850161356b565b60008383855260208086019550808560051b8301018460005b87811015612df157848303601f19018952813536889003601e1901811261362357600080fd5b870184810190356001600160401b0381111561363e57600080fd5b80360382131561364d57600080fd5b61365885828461351e565b9a86019a94505050908301906001016135fd565b6020815260006107e66020830184866135e4565b60006020828403121561369257600080fd5b5051919050565b6000602082840312156136ab57600080fd5b815180151581146107e957600080fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e198436030181126136e857600080fd5b8301803591506001600160401b0382111561370257600080fd5b602001915036819003821315610f9057600080fd5b8183823760009101908152919050565b6000808335601e1984360301811261373e57600080fd5b8301803591506001600160401b0382111561375857600080fd5b6020019150600581901b3603821315610f9057600080fd5b600181811c9082168061378457607f821691505b6020821081036137a457634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115610bf057600081815260208120601f850160051c810160208610156137d15750805b601f850160051c820191505b818110156137f0578281556001016137dd565b505050505050565b6001600160401b0383111561380f5761380f6133da565b6138238361381d8354613770565b836137aa565b6000601f841160018114613857576000851561383f5750838201355b600019600387901b1c1916600186901b178355610e4a565b600083815260209020601f19861690835b828110156138885786850135825560209485019460019092019101613868565b50868210156138a55760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b634e487b7160e01b600052601160045260246000fd5b6000600182016138df576138df6138b7565b5060010190565b6020815260006107e660208301848661351e565b6000806040838503121561390d57600080fd5b82516001600160401b038082111561392457600080fd5b6139308683870161356b565b9350602085015191508082111561394657600080fd5b506139538582860161356b565b9150509250929050565b80820180821115610632576106326138b7565b60008a51613982818460208f01612d56565b8a5190830190613996818360208f01612d56565b8a519101906139a9818360208e01612d56565b0187898237600090880190815286516139c6818360208b01612d56565b0184868237600090850190815283516139e3818360208801612d56565b019b9a5050505050505050505050565b60008251613a05818460208701612d56565b9190910192915050565b60008751613a21818460208c01612d56565b875190830190613a35818360208c01612d56565b8751910190613a48818360208b01612d56565b018486823760009085019081528351613a65818360208801612d56565b0198975050505050505050565b60008451613a84818460208901612d56565b845190830190613a98818360208901612d56565b8451910190613aab818360208801612d56565b0195945050505050565b6040808252810183905260006001600160fb1b03841115613ad557600080fd5b8360051b808660608501376020830193909352500160600192915050565b600082601f830112613b0457600080fd5b81516020613b1461347883613420565b82815260059290921b84018101918181019086841115613b3357600080fd5b8286015b84811015611d7e5780516001600160401b03811115613b565760008081fd5b613b648986838b010161356b565b845250918301918301613b37565b60008060408385031215613b8557600080fd5b82516001600160401b0380821115613b9c57600080fd5b613ba886838701613af3565b93506020850151915080821115613bbe57600080fd5b5061395385828601613af3565b604081526000613bde6040830185612da6565b90508260208301529392505050565b600060208284031215613bff57600080fd5b81516001600160401b03811115613c1557600080fd5b6114e884828501613af3565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60408152600061355b6040830185876135e456fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a","storage":{}},"0xc2110388dd54228ae0a834119457ede938bf0b57":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061021e5760003560e01c80638da5cb5b11610123578063acf1a841116100ab578063d547741f1161006f578063d547741f14610682578063f14fcbc8146106a2578063f23a6e61146106c2578063f2fde38b146106e2578063ffa1ad741461070257600080fd5b8063acf1a841146105e0578063bc197c8114610600578063c0c53b8b14610620578063cf01585314610640578063d53913931461066057600080fd5b8063a0e3aef1116100f2578063a0e3aef114610534578063a217fddf14610554578063a3f4df7e14610569578063a4247400146105a0578063aa271e1a146105c057600080fd5b80638da5cb5b146104c157806391d14854146104df578063983b2d56146104ff578063986502751461051f57600080fd5b80635fc1964f116101a65780636ccbae5f116101755780636ccbae5f14610439578063715018a61461045957806371e2a6571461046e57806381c81d351461048e57806383e7f6ff146104a157600080fd5b80635fc1964f146103ae578063634486da146103ce5780636352211e146103e15780636a8be89e1461041957600080fd5b80632f2ff15d116101ed5780632f2ff15d146103035780633092afd51461032557806336568abe14610345578063423f6cef14610365578063572b6c051461038557600080fd5b806301ffc9a71461022a578063150b7a021461025f5780631bf7e13e14610298578063248a9ca3146102c557600080fd5b3661022557005b600080fd5b34801561023657600080fd5b5061024a6102453660046125f2565b610733565b60405190151581526020015b60405180910390f35b34801561026b57600080fd5b5061027f61027a366004612672565b610779565b6040516001600160e01b03199091168152602001610256565b3480156102a457600080fd5b506102b86102b33660046126e4565b6108cb565b60405161025691906127a4565b3480156102d157600080fd5b506102f56102e03660046127b7565b600090815260fb602052604090206001015490565b604051908152602001610256565b34801561030f57600080fd5b5061032361031e3660046127d0565b610997565b005b34801561033157600080fd5b50610323610340366004612800565b6109c1565b34801561035157600080fd5b506103236103603660046127d0565b6109d5565b34801561037157600080fd5b5061032361038036600461281d565b610a68565b34801561039157600080fd5b5061024a6103a0366004612800565b6001600160a01b0316301490565b3480156103ba57600080fd5b506103236103c936600461288f565b610bd9565b6103236103dc366004612800565b610c21565b3480156103ed57600080fd5b506104016103fc3660046127b7565b610ce4565b6040516001600160a01b039091168152602001610256565b34801561042557600080fd5b50610323610434366004612800565b610cef565b34801561044557600080fd5b506102f56104543660046127b7565b610d38565b34801561046557600080fd5b50610323610d7e565b34801561047a57600080fd5b5061032361048936600461288f565b610d92565b61032361049c366004612800565b610dda565b3480156104ad57600080fd5b506102f56104bc366004612934565b610e57565b3480156104cd57600080fd5b506097546001600160a01b0316610401565b3480156104eb57600080fd5b5061024a6104fa3660046127d0565b610efa565b34801561050b57600080fd5b5061032361051a366004612800565b610f25565b34801561052b57600080fd5b50610323610f36565b34801561054057600080fd5b506102f561054f366004612a5c565b610f50565b34801561056057600080fd5b506102f5600081565b34801561057557600080fd5b506102b86040518060400160405280600b81526020016a454e5320437573746f647960a81b81525081565b3480156105ac57600080fd5b5061024a6105bb3660046126e4565b610ffc565b3480156105cc57600080fd5b5061024a6105db366004612800565b61104f565b3480156105ec57600080fd5b506103236105fb366004612934565b611069565b34801561060c57600080fd5b5061027f61061b366004612b35565b611222565b34801561062c57600080fd5b5061032361063b366004612bf3565b6112db565b34801561064c57600080fd5b5061032361065b366004612c3e565b611485565b34801561066c57600080fd5b506102f56000805160206133f583398151915281565b34801561068e57600080fd5b5061032361069d3660046127d0565b611592565b3480156106ae57600080fd5b506103236106bd3660046127b7565b6115b7565b3480156106ce57600080fd5b5061027f6106dd366004612d20565b61162b565b3480156106ee57600080fd5b506103236106fd366004612800565b6116bc565b34801561070e57600080fd5b506102b860405180604001604052806005815260200164302e312e3360d81b81525081565b60006001600160e01b03198216630a85bd0160e11b148061076457506001600160e01b03198216630271189760e51b145b806107735750610773826116d8565b92915050565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004546000906001600160a01b0316806107b061170d565b6001600160a01b0316036108a957600080806107ce86880188612d9b565b9250925092506107dd8361171c565b6001600160a01b03841663b88d4fde30600080516020613415833981519152546040516001600160a01b03909116908c9061082390879030906000908b90602001612dfc565b6040516020818303038152906040526040518563ffffffff1660e01b81526004016108519493929190612e3c565b600060405180830381600087803b15801561086b57600080fd5b505af115801561087f573d6000803e3d6000fd5b5050505061089561088f8261174e565b846117d3565b50630a85bd0160e11b93506108c292505050565b6040516344e7d94960e01b815260040160405180910390fd5b95945050505050565b606060005a90506108dd858585610ffc565b6108fa57604051638baa579f60e01b815260040160405180910390fd5b61098c61090a6020870187612800565b3060408801358461091e60608b018b612e6f565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061185e92505050565b9150505b9392505050565b600082815260fb60205260409020600101546109b28161193f565b6109bc8383611950565b505050565b6109c96119d7565b6109d281611a50565b50565b6109dd61170d565b6001600160a01b0316816001600160a01b031614610a5a5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b610a648282611a68565b5050565b80610a7161170d565b6001600160a01b0316610a8382611aed565b6001600160a01b031614610ac55780610a9a61170d565b604051637ea58b1160e01b815260048101929092526001600160a01b03166024820152604401610a51565b610ace82611c03565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052600090610b22906060015b6040516020818303038152906040528051906020012090565b80546001600160a01b0319166001600160a01b0392909216919091179055600060008051602061341583398151915254604051637921219560e11b81523060048201526001600160a01b038681166024830152604482018690526001606483015260a06084830152600060a48301529091169150819063f242432a9060c401600060405180830381600087803b158015610bbb57600080fd5b505af1158015610bcf573d6000803e3d6000fd5b5050505050505050565b610be16119d7565b60005b8151811015610a6457610c0f828281518110610c0257610c02612eb5565b6020026020010151611a50565b80610c1981612ee1565b915050610be4565b610c2c6105db61170d565b610c485760405162461bcd60e51b8152600401610a5190612efa565b6001600160a01b038116610c9e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a51565b610ca781611c1c565b610caf610f36565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610a64573d6000803e3d6000fd5b600061077382611aed565b610cf76119d7565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c500480546001600160a01b0319166001600160a01b0392909216919091179055565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a838156020820152908101829052600090610d7790606001610b09565b5492915050565b610d866119d7565b610d906000611c34565b565b610d9a6119d7565b60005b8151811015610a6457610dc8828281518110610dbb57610dbb612eb5565b6020026020010151611c1c565b80610dd281612ee1565b915050610d9d565b610de56105db61170d565b610e015760405162461bcd60e51b8152600401610a5190612efa565b6001600160a01b038116610ca75760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a51565b6000805160206133d5833981519152546040516383e7f6ff60e01b81526000916001600160a01b031690829082906383e7f6ff90610e9d90899089908990600401612f58565b6040805180830381865afa158015610eb9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610edd9190612f7c565b60208101518151919250610ef091612fca565b9695505050505050565b600091825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610f2d6119d7565b6109d281611c1c565b610d906000805160206133f583398151915261036061170d565b6000805160206133d5833981519152546000906001600160a01b0316806365a69dcf8d85610f7e5730610f80565b8d5b8d8d8d8d8d8d8d6040518a63ffffffff1660e01b8152600401610fab9998979695949392919061306e565b602060405180830381865afa158015610fc8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fec91906130de565b9c9b505050505050505050505050565b600061104761100a856130f7565b3085858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611c8692505050565b949350505050565b60006107736000805160206133f583398151915283610efa565b6110746105db61170d565b6110905760405162461bcd60e51b8152600401610a5190612efa565b6002603354036110e25760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a51565b60026033556000805160206133d5833981519152546040516383e7f6ff60e01b81526001600160a01b039091169060009082906383e7f6ff9061112d90889088908890600401612f58565b6040805180830381865afa158015611149573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061116d9190612f7c565b6020810151815191925061118091612fca565b4710156111a05760405163050205f960e01b815260040160405180910390fd5b816001600160a01b031663acf1a841826020015183600001516111c39190612fca565b8787876040518563ffffffff1660e01b81526004016111e493929190612f58565b6000604051808303818588803b1580156111fd57600080fd5b505af1158015611211573d6000803e3d6000fd5b505060016033555050505050505050565b6000600080516020613415833981519152546001600160a01b031661124561170d565b6001600160a01b03161461126c576040516344e7d94960e01b815260040160405180910390fd5b600061127a83850185612800565b90506112858161171c565b60005b878110156112c4576112b28989838181106112a5576112a5612eb5565b90506020020135836117d3565b806112bc81612ee1565b915050611288565b5063bc197c8160e01b9a9950505050505050505050565b600054610100900460ff16158080156112fb5750600054600160ff909116105b806113155750303b158015611315575060005460ff166001145b6113785760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610a51565b6000805460ff19166001179055801561139b576000805461ff0019166101001790555b6000805160206133d583398151915280546001600160a01b038087166001600160a01b03199283161790925560008051602061341583398151915280548684169083161790557ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004805492851692909116919091179055611419611dc5565b611421611df3565b611429611df3565b611431611e1a565b611439611e51565b801561147f576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6114906105db61170d565b6114ac5760405162461bcd60e51b8152600401610a5190612efa565b6002603354036114fe5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a51565b600260338190555060006115478c8c8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061174e92505050565b905061155281611c03565b6115708c8c846115625730611564565b8c5b8c8c8c8c8c8c8c611e8a565b8161157f5761157f818b6117d3565b5050600160335550505050505050505050565b600082815260fb60205260409020600101546115ad8161193f565b6109bc8383611a68565b60006000805160206133d583398151915254604051631e29f97960e31b8152600481018490526001600160a01b039091169150819063f14fcbc890602401600060405180830381600087803b15801561160f57600080fd5b505af1158015611623573d6000803e3d6000fd5b505050505050565b6000600080516020613415833981519152546001600160a01b031661164e61170d565b6001600160a01b031614611675576040516344e7d94960e01b815260040160405180910390fd5b6001600160a01b038616156116a957600061169283850185612800565b905061169d8161171c565b6116a786826117d3565b505b5063f23a6e6160e01b9695505050505050565b6116c46119d7565b6116cd81611fd5565b6109d260008261204b565b60006001600160e01b03198216637965db0b60e01b148061077357506301ffc9a760e01b6001600160e01b0319831614610773565b6000611717612055565b905090565b6001600160a01b0381166109d25760405163b20f76e360e01b81526001600160a01b0382166004820152602401610a51565b60007f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae60001b826040516020016117859190613195565b604051602081830303815290604052805190602001206040516020016117b5929190918252602082015260400190565b60408051601f19818403018152919052805160209091012092915050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052819061181190606001610b09565b80546001600160a01b0319166001600160a01b039283161790556040519082169083907f45aa97e368889fb3527c1db60c59c2ae91e82f21778613449e46d4208c1c4b1290600090a35050565b606061186985612073565b600080876001600160a01b0316866118838b8a89896120d9565b6040516118909190613195565b60006040518083038160008787f1925050503d80600081146118ce576040519150601f19603f3d011682016040523d82523d6000602084013e6118d3565b606091505b5090925090506118e4603f876131b1565b5a116118f2576118f26131d3565b61193282826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c4544000000000000815250612109565b9998505050505050505050565b6109d28161194b61170d565b612142565b61195a8282610efa565b610a6457600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff1916600117905561199361170d565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6119df61170d565b6001600160a01b03166119fa6097546001600160a01b031690565b6001600160a01b031614610d905760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a51565b6109d26000805160206133f583398151915282611592565b611a728282610efa565b15610a6457600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff19169055611aa961170d565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101829052600090611b2c90606001610b09565b546001600160a01b0316905080611b595760405163124bad6360e31b815260048101839052602401610a51565b30600080516020613415833981519152546040516331a9108f60e11b8152600481018590526001600160a01b0390911690636352211e90602401602060405180830381865afa158015611bb0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bd491906131e9565b6001600160a01b031614611bfe576040516303b673fd60e21b815260048101839052602401610a51565b919050565b303303611c13576109d2816121a6565b6109d281612073565b6109d26000805160206133f58339815191528261204b565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015611ccd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cf191906130de565b90506000611d9f866060015180519060200120868860200151604051602001611d3f9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b9050818660200151148015610ef057508551610ef0906001600160a01b031682866121d0565b600054610100900460ff16611dec5760405162461bcd60e51b8152600401610a5190613206565b6001603355565b600054610100900460ff16610d905760405162461bcd60e51b8152600401610a5190613206565b600054610100900460ff16611e415760405162461bcd60e51b8152600401610a5190613206565b610d90611e4c61170d565b611c34565b600054610100900460ff16611e785760405162461bcd60e51b8152600401610a5190613206565b610d906000611e8561170d565b61204b565b6000805160206133d5833981519152546040516383e7f6ff60e01b81526001600160a01b039091169060009082906383e7f6ff90611ed0908f908f908e90600401612f58565b6040805180830381865afa158015611eec573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f109190612f7c565b60208101518151919250611f2391612fca565b471015611f435760405163050205f960e01b815260040160405180910390fd5b816001600160a01b03166374694a2b82602001518360000151611f669190612fca565b8e8e8e8e8e8e8e8e8e8e6040518c63ffffffff1660e01b8152600401611f959a99989796959493929190613251565b6000604051808303818588803b158015611fae57600080fd5b505af1158015611fc2573d6000803e3d6000fd5b5050505050505050505050505050505050565b611fdd6119d7565b6001600160a01b0381166120425760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610a51565b6109d281611c34565b610a648282611950565b600030330361206b575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290526000906060016040516020818303038152906040528051906020012090506120c88190565b546120d4906001612fca565b905550565b60608285856040516020016120f0939291906132c3565b6040516020818303038152906040529050949350505050565b60608315612118575081610990565b8251156121285782518084602001fd5b8160405162461bcd60e51b8152600401610a5191906127a4565b61214c8282610efa565b610a6457612164816001600160a01b03166014612312565b61216f836020612312565b604051602001612180929190613302565b60408051601f198184030181529082905262461bcd60e51b8252610a51916004016127a4565b6121ae6124ad565b81146109d257604051635637b6af60e11b815260048101829052602401610a51565b60008060006121df85856124c0565b909250905060008160048111156121f8576121f8613377565b1480156122165750856001600160a01b0316826001600160a01b0316145b1561222657600192505050610990565b600080876001600160a01b0316631626ba7e60e01b888860405160240161224e92919061338d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161228c9190613195565b600060405180830381855afa9150503d80600081146122c7576040519150601f19603f3d011682016040523d82523d6000602084013e6122cc565b606091505b50915091508180156122df575080516020145b801561230657508051630b135d3f60e11b9061230490830160209081019084016130de565b145b98975050505050505050565b606060006123218360026133a6565b61232c906002612fca565b6001600160401b0381111561234357612343612849565b6040519080825280601f01601f19166020018201604052801561236d576020820181803683370190505b509050600360fc1b8160008151811061238857612388612eb5565b60200101906001600160f81b031916908160001a905350600f60fb1b816001815181106123b7576123b7612eb5565b60200101906001600160f81b031916908160001a90535060006123db8460026133a6565b6123e6906001612fca565b90505b600181111561245e576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061241a5761241a612eb5565b1a60f81b82828151811061243057612430612eb5565b60200101906001600160f81b031916908160001a90535060049490941c93612457816133bd565b90506123e9565b5083156109905760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610a51565b60003033036120705750601f1936013590565b60008082516041036124f65760208301516040840151606085015160001a6124ea87828585612505565b945094505050506124fe565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561253c57506000905060036125e9565b8460ff16601b1415801561255457508460ff16601c14155b1561256557506000905060046125e9565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156125b9573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166125e2576000600192509250506125e9565b9150600090505b94509492505050565b60006020828403121561260457600080fd5b81356001600160e01b03198116811461099057600080fd5b6001600160a01b03811681146109d257600080fd5b60008083601f84011261264357600080fd5b5081356001600160401b0381111561265a57600080fd5b6020830191508360208285010111156124fe57600080fd5b60008060008060006080868803121561268a57600080fd5b85356126958161261c565b945060208601356126a58161261c565b93506040860135925060608601356001600160401b038111156126c757600080fd5b6126d388828901612631565b969995985093965092949392505050565b6000806000604084860312156126f957600080fd5b83356001600160401b038082111561271057600080fd5b908501906080828803121561272457600080fd5b9093506020850135908082111561273a57600080fd5b5061274786828701612631565b9497909650939450505050565b60005b8381101561276f578181015183820152602001612757565b50506000910152565b60008151808452612790816020860160208601612754565b601f01601f19169290920160200192915050565b6020815260006109906020830184612778565b6000602082840312156127c957600080fd5b5035919050565b600080604083850312156127e357600080fd5b8235915060208301356127f58161261c565b809150509250929050565b60006020828403121561281257600080fd5b81356109908161261c565b6000806040838503121561283057600080fd5b823561283b8161261c565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561288757612887612849565b604052919050565b600060208083850312156128a257600080fd5b82356001600160401b03808211156128b957600080fd5b818501915085601f8301126128cd57600080fd5b8135818111156128df576128df612849565b8060051b91506128f084830161285f565b818152918301840191848101908884111561290a57600080fd5b938501935b8385101561230657843592506129248361261c565b828252938501939085019061290f565b60008060006040848603121561294957600080fd5b83356001600160401b0381111561295f57600080fd5b61296b86828701612631565b909790965060209590950135949350505050565b60006001600160401b0383111561299857612998612849565b6129ab601f8401601f191660200161285f565b90508281528383830111156129bf57600080fd5b828260208301376000602084830101529392505050565b600082601f8301126129e757600080fd5b6109908383356020850161297f565b60008083601f840112612a0857600080fd5b5081356001600160401b03811115612a1f57600080fd5b6020830191508360208260051b85010111156124fe57600080fd5b80358015158114611bfe57600080fd5b803561ffff81168114611bfe57600080fd5b6000806000806000806000806000806101208b8d031215612a7c57600080fd5b8a356001600160401b0380821115612a9357600080fd5b612a9f8e838f016129d6565b9b5060208d01359150612ab18261261c565b90995060408c0135985060608c0135975060808c013590612ad18261261c565b90965060a08c01359080821115612ae757600080fd5b50612af48d828e016129f6565b9096509450612b07905060c08c01612a3a565b9250612b1560e08c01612a4a565b9150612b246101008c01612a3a565b90509295989b9194979a5092959850565b60008060008060008060008060a0898b031215612b5157600080fd5b8835612b5c8161261c565b97506020890135612b6c8161261c565b965060408901356001600160401b0380821115612b8857600080fd5b612b948c838d016129f6565b909850965060608b0135915080821115612bad57600080fd5b612bb98c838d016129f6565b909650945060808b0135915080821115612bd257600080fd5b50612bdf8b828c01612631565b999c989b5096995094979396929594505050565b600080600060608486031215612c0857600080fd5b8335612c138161261c565b92506020840135612c238161261c565b91506040840135612c338161261c565b809150509250925092565b60008060008060008060008060008060006101208c8e031215612c6057600080fd5b6001600160401b03808d351115612c7657600080fd5b612c838e8e358f01612631565b909c509a50612c9560208e013561261c565b60208d0135995060408d0135985060608d01359750612cb760808e013561261c565b60808d013596508060a08e01351115612ccf57600080fd5b50612ce08d60a08e01358e016129f6565b9095509350612cf160c08d01612a3a565b9250612cff60e08d01612a4a565b9150612d0e6101008d01612a3a565b90509295989b509295989b9093969950565b60008060008060008060a08789031215612d3957600080fd5b8635612d448161261c565b95506020870135612d548161261c565b9450604087013593506060870135925060808701356001600160401b03811115612d7d57600080fd5b612d8989828a01612631565b979a9699509497509295939492505050565b600080600060608486031215612db057600080fd5b8335612dbb8161261c565b92506020840135612dcb8161261c565b915060408401356001600160401b03811115612de657600080fd5b612df2868287016129d6565b9150509250925092565b608081526000612e0f6080830187612778565b6001600160a01b03958616602084015261ffff949094166040830152509216606090920191909152919050565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090610ef090830184612778565b6000808335601e19843603018112612e8657600080fd5b8301803591506001600160401b03821115612ea057600080fd5b6020019150368190038213156124fe57600080fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201612ef357612ef3612ecb565b5060010190565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b604081526000612f6c604083018587612f2f565b9050826020830152949350505050565b600060408284031215612f8e57600080fd5b604051604081018181106001600160401b0382111715612fb057612fb0612849565b604052825181526020928301519281019290925250919050565b8082018082111561077357610773612ecb565b81835260006020808501808196508560051b810191508460005b878110156130615782840389528135601e1988360301811261301857600080fd5b870185810190356001600160401b0381111561303357600080fd5b80360382131561304257600080fd5b61304d868284612f2f565b9a87019a9550505090840190600101612ff7565b5091979650505050505050565b60006101008083526130828184018d612778565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a085015290506130bc818789612fdd565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b6000602082840312156130f057600080fd5b5051919050565b60006080823603121561310957600080fd5b604051608081016001600160401b03828210818311171561312c5761312c612849565b816040528435915061313d8261261c565b8183526020850135602084015260408501356040840152606085013591508082111561316857600080fd5b50830136601f82011261317a57600080fd5b6131893682356020840161297f565b60608301525092915050565b600082516131a7818460208701612754565b9190910192915050565b6000826131ce57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b6000602082840312156131fb57600080fd5b81516109908161261c565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60006101008083526132668184018d8f612f2f565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a085015290506132a0818789612fdd565b94151560c0840152505061ffff9190911660e09091015298975050505050505050565b600084516132d5818460208901612754565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081526000835161333a816017850160208801612754565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835161336b816028840160208801612754565b01602801949350505050565b634e487b7160e01b600052602160045260246000fd5b8281526040602082015260006110476040830184612778565b808202811582820484141761077357610773612ecb565b6000816133cc576133cc612ecb565b50600019019056fe412386de53449251cbf7ce1f4c6a038bf9c0746e62d331b08ef0c3fa7d0ab6729f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a660793a5062d506d35cc8f1beda67ee5028c16bfcd9c923d5bfc439c04bd929b1a164736f6c6343000811000a","storage":{"0x0":"0xff"}},"0xc58206842e4030a3b2cabc78780ae7635173c533":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106102325760003560e01c80637c69eae211610130578063b5466669116100b8578063d284d97a1161007c578063d284d97a14610d4e578063d8d3cc6e14610dbc578063e67ca8a314610e3f578063e985e9c514610e5c578063ebf0c71714610e8a57610232565b8063b5466669146109ce578063b88d4fde14610a51578063c29b52f914610b15578063c87b56dd14610c5e578063ce9fb82b14610c7b57610232565b8063a22cb465116100ff578063a22cb4651461090b578063a7fc7a0714610939578063ab3b87fe1461095f578063b3f9e4cb1461098b578063b429afeb146109a857610232565b80637c69eae21461076457806395d89b41146107e75780639d743989146107ef5780639e5be9a51461087d57610232565b806342842e0e116101be5780635cbe1112116101825780635cbe11121461061d5780636352211e1461069257806366ac3b68146106af57806368b62d32146106b757806370a082311461073e57610232565b806342842e0e146104ed57806342966c6814610523578063430c208114610540578063538361a71461056c57806357aac5741461058f57610232565b8063081812fc11610205578063081812fc146103fa578063095ea7b3146104335780632392c1891461045f57806323b872dd1461048b5780632525d06a146104c157610232565b806301ffc9a71461023757806302759c37146102725780630467e014146102aa57806306fdde031461037d575b600080fd5b61025e6004803603602081101561024d57600080fd5b50356001600160e01b031916610e92565b604080519115158252519081900360200190f35b6102a86004803603606081101561028857600080fd5b506001600160a01b03813581169160208101359091169060400135610eb1565b005b6102a8600480360360808110156102c057600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156102ef57600080fd5b82018360208201111561030157600080fd5b803590602001918460018302840111600160201b8311171561032257600080fd5b919390929091602081019035600160201b81111561033f57600080fd5b82018360208201111561035157600080fd5b803590602001918460018302840111600160201b8311171561037257600080fd5b509092509050610ed3565b610385610f62565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103bf5781810151838201526020016103a7565b50505050905090810190601f1680156103ec5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6104176004803603602081101561041057600080fd5b5035610f84565b604080516001600160a01b039092168252519081900360200190f35b6102a86004803603604081101561044957600080fd5b506001600160a01b038135169060200135610fe6565b6102a86004803603604081101561047557600080fd5b506001600160a01b0381351690602001356110f7565b6102a8600480360360608110156104a157600080fd5b506001600160a01b03813581169160208101359091169060400135611115565b6102a8600480360360408110156104d757600080fd5b506001600160a01b03813516906020013561115a565b6102a86004803603606081101561050357600080fd5b506001600160a01b0381358116916020810135909116906040013561117a565b6102a86004803603602081101561053957600080fd5b5035611195565b61025e6004803603604081101561055657600080fd5b506001600160a01b0381351690602001356111e6565b6102a86004803603604081101561058257600080fd5b50803590602001356111f9565b6102a8600480360360808110156105a557600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156105df57600080fd5b8201836020820111156105f157600080fd5b803590602001918460018302840111600160201b8311171561061257600080fd5b50909250905061124f565b6102a86004803603604081101561063357600080fd5b81359190810190604081016020820135600160201b81111561065457600080fd5b82018360208201111561066657600080fd5b803590602001918460018302840111600160201b8311171561068757600080fd5b5090925090506112be565b610417600480360360208110156106a857600080fd5b5035611320565b6102a861137a565b61072c600480360360408110156106cd57600080fd5b81359190810190604081016020820135600160201b8111156106ee57600080fd5b82018360208201111561070057600080fd5b803590602001918460018302840111600160201b8311171561072157600080fd5b509092509050611385565b60408051918252519081900360200190f35b61072c6004803603602081101561075457600080fd5b50356001600160a01b03166113cf565b6102a86004803603606081101561077a57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156107a957600080fd5b8201836020820111156107bb57600080fd5b803590602001918460018302840111600160201b831117156107dc57600080fd5b509092509050611437565b61038561149a565b6102a86004803603608081101561080557600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561083f57600080fd5b82018360208201111561085157600080fd5b803590602001918460018302840111600160201b8311171561087257600080fd5b5090925090506114b6565b6102a86004803603608081101561089357600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156108cd57600080fd5b8201836020820111156108df57600080fd5b803590602001918460018302840111600160201b8311171561090057600080fd5b509092509050611506565b6102a86004803603604081101561092157600080fd5b506001600160a01b0381351690602001351515611564565b6102a86004803603602081101561094f57600080fd5b50356001600160a01b0316611630565b6102a86004803603604081101561097557600080fd5b506001600160a01b03813516906020013561164b565b610417600480360360208110156109a157600080fd5b5035611672565b61025e600480360360208110156109be57600080fd5b50356001600160a01b0316611694565b6102a8600480360360608110156109e457600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610a1357600080fd5b820183602082011115610a2557600080fd5b803590602001918460018302840111600160201b83111715610a4657600080fd5b5090925090506116a7565b6102a860048036036080811015610a6757600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b811115610aa157600080fd5b820183602082011115610ab357600080fd5b803590602001918460018302840111600160201b83111715610ad457600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506116fa945050505050565b6102a8600480360360a0811015610b2b57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b811115610b6557600080fd5b820183602082011115610b7757600080fd5b803590602001918460018302840111600160201b83111715610b9857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b811115610bea57600080fd5b820183602082011115610bfc57600080fd5b803590602001918460018302840111600160201b83111715610c1d57600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061174c945050505050565b61038560048036036020811015610c7457600080fd5b5035611797565b6102a860048036036080811015610c9157600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610cc057600080fd5b820183602082011115610cd257600080fd5b803590602001918460018302840111600160201b83111715610cf357600080fd5b919390929091602081019035600160201b811115610d1057600080fd5b820183602082011115610d2257600080fd5b803590602001918460018302840111600160201b83111715610d4357600080fd5b509092509050611892565b6102a860048036036020811015610d6457600080fd5b810190602081018135600160201b811115610d7e57600080fd5b820183602082011115610d9057600080fd5b803590602001918460018302840111600160201b83111715610db157600080fd5b50909250905061191b565b6102a860048036036060811015610dd257600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610e0157600080fd5b820183602082011115610e1357600080fd5b803590602001918460018302840111600160201b83111715610e3457600080fd5b50909250905061199e565b6102a860048036036020811015610e5557600080fd5b50356119f3565b61025e60048036036040811015610e7257600080fd5b506001600160a01b0381358116916020013516611a05565b61072c611a33565b6001600160e01b03191660009081526020819052604090205460ff1690565b610eba33611694565b610ec357600080fd5b610ece838383611a57565b505050565b610edc33611694565b610ee557600080fd5b610f5a868686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8a018190048102820181019092528881529250889150879081908401838280828437600092019190915250611a9f92505050565b505050505050565b6040805180820190915260078152662e63727970746f60c81b60208201525b90565b6000610f8f82611ac9565b610fca5760405162461bcd60e51b815260040180806020018281038252602c815260200180612848602c913960400191505060405180910390fd5b506000908152600360205260409020546001600160a01b031690565b6000610ff182611320565b9050806001600160a01b0316836001600160a01b031614156110445760405162461bcd60e51b81526004018080602001828103825260218152602001806128bf6021913960400191505060405180910390fd5b336001600160a01b038216148061106057506110608133611a05565b61109b5760405162461bcd60e51b815260040180806020018281038252603881526020018061279c6038913960400191505060405180910390fd5b60008281526003602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b806111023382611ae6565b61110b57600080fd5b610ece8383611b82565b61111f3382611ae6565b610ec35760405162461bcd60e51b81526004018080602001828103825260318152602001806128e06031913960400191505060405180910390fd5b61116333611694565b61116c57600080fd5b6111768282611b82565b5050565b610ece838383604051806020016040528060008152506116fa565b61119f3382611ae6565b6111da5760405162461bcd60e51b81526004018080602001828103825260308152602001806129366030913960400191505060405180910390fd5b6111e381611bf8565b50565b60006111f28383611ae6565b9392505050565b6000828152600860205260409020546001600160a01b0316331461121c57600080fd5b6040518290829033907ff10fc780c78f994a214c79a2ae8d8b7bfe7cc3f0f935a8f05a29525e71d7f12790600090a45050565b61125833611694565b61126157600080fd5b61126c858585611a57565b6112ae85858585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611c7992505050565b6112b757600080fd5b5050505050565b826112c93382611ae6565b6112d257600080fd5b61131a6113158585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b611bf8565b50505050565b6000818152600260205260408120546001600160a01b0316806113745760405162461bcd60e51b81526004018080602001828103825260298152602001806127fe6029913960400191505060405180910390fd5b92915050565b61138333611e64565b565b60006113c78484848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b949350505050565b60006001600160a01b0382166114165760405162461bcd60e51b815260040180806020018281038252602a8152602001806127d4602a913960400191505060405180910390fd5b6001600160a01b038216600090815260046020526040902061137490611e75565b826114423382611ae6565b61144b57600080fd5b6112b7858585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250611a9f915050565b604080518082019091526002815261155160f21b602082015290565b6112b785858585858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201829052506040805160208101909152908152925061174c915050565b826115113382611ae6565b61151a57600080fd5b610f5a868661155f8787878080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b611a57565b6001600160a01b0382163314156115c2576040805162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604482015290519081900360640190fd5b3360008181526005602090815260408083206001600160a01b03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b61163933611694565b61164257600080fd5b6111e381611e79565b806116563382611ae6565b61165f57600080fd5b610ece61166b83611320565b8484611e8a565b6000818152600860205260408120546001600160a01b03168061137457600080fd5b600061137460018363ffffffff611fce16565b6116b033611694565b6116b957600080fd5b61131a848484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061203592505050565b611705848484611115565b61171184848484611c79565b61131a5760405162461bcd60e51b815260040180806020018281038252603281526020018061271a6032913960400191505060405180910390fd5b826117573382611ae6565b61176057600080fd5b600061176c8585611dac565b9050611779878783611a57565b61178587878386611c79565b61178e57600080fd5b50505050505050565b60606117a282611ac9565b6117ab57600080fd5b600760066000848152602001908152602001600020604051602001808380546001816001161561010002031660029004801561181e5780601f106117fc57610100808354040283529182019161181e565b820191906000526020600020905b81548152906001019060200180831161180a575b5050828054600181600116156101000203166002900480156118775780601f10611855576101008083540402835291820191611877565b820191906000526020600020905b815481529060010190602001808311611863575b505060408051601f1981840301815291905295945050505050565b8461189d3382611ae6565b6118a657600080fd5b61178e878787878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b018190048102820181019092528981529250899150889081908401838280828437600092019190915250611a9f92505050565b61192433611694565b61192d57600080fd5b611939600783836125cf565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b828260405180806020018281038252848482818152602001925080828437600083820152604051601f909101601f19169092018290039550909350505050a15050565b826119a93382611ae6565b6119b257600080fd5b6112b7858585858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061203592505050565b6119fc33611694565b6111da57600080fd5b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b7f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f90565b611a62838383611e8a565b6000818152600860205260409020546001600160a01b031615610ece57600090815260086020526040902080546001600160a01b03191690555050565b611aaa848484612035565b611ac0600085611aba8686611dac565b84611c79565b61131a57600080fd5b6000908152600260205260409020546001600160a01b0316151590565b6000611af182611ac9565b611b2c5760405162461bcd60e51b815260040180806020018281038252602c815260200180612770602c913960400191505060405180910390fd5b6000611b3783611320565b9050806001600160a01b0316846001600160a01b03161480611b725750836001600160a01b0316611b6784610f84565b6001600160a01b0316145b806113c757506113c78185611a05565b611b8b81611ac9565b611b9457600080fd5b6040516001600160a01b0383169082907fb1b34e6d89e1c584527d447f4b29ffad55635a37edeeb564939a6483401b31a590600090a3600090815260086020526040902080546001600160a01b0319166001600160a01b0392909216919091179055565b611c018161220f565b6000818152600860205260409020546001600160a01b031615611c3b57600081815260086020526040902080546001600160a01b03191690555b60008181526006602052604090205460026000196101006001841615020190911604156111e35760008181526006602052604081206111e39161264d565b6000611c8d846001600160a01b0316612221565b611c99575060016113c7565b604051630a85bd0160e11b815233600482018181526001600160a01b03888116602485015260448401879052608060648501908152865160848601528651600095928a169463150b7a029490938c938b938b939260a4019060208501908083838e5b83811015611d13578181015183820152602001611cfb565b50505050905090810190601f168015611d405780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015611d6257600080fd5b505af1158015611d76573d6000803e3d6000fd5b505050506040513d6020811015611d8c57600080fd5b50516001600160e01b031916630a85bd0160e11b14915050949350505050565b6000815160001415611dbd57600080fd5b82826040516020018082805190602001908083835b60208310611df15780518252601f199092019160209182019101611dd2565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040528051906020012060405160200180838152602001828152602001925050506040516020818303038152906040528051906020012060001c905092915050565b6111e360018263ffffffff61222716565b5490565b6111e360018263ffffffff61228e16565b826001600160a01b0316611e9d82611320565b6001600160a01b031614611ee25760405162461bcd60e51b81526004018080602001828103825260298152602001806128966029913960400191505060405180910390fd5b6001600160a01b038216611f275760405162461bcd60e51b815260040180806020018281038252602481526020018061274c6024913960400191505060405180910390fd5b611f308161230f565b6001600160a01b0383166000908152600460205260409020611f519061234a565b6001600160a01b0382166000908152600460205260409020611f7290612361565b60008181526002602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60006001600160a01b0382166120155760405162461bcd60e51b81526004018080602001828103825260228152602001806128746022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b60006120418383611dac565b905061204d848261236a565b815161205857600080fd5b61206181611ac9565b61206a57600080fd5b606082600660008681526020019081526020016000206040516020018083805190602001908083835b602083106120b25780518252601f199092019160209182019101612093565b6001836020036101000a03801982511681845116808217855250505050505090500180601760f91b815250600101828054600181600116156101000203166002900480156121375780601f10612115576101008083540402835291820191612137565b820191906000526020600020905b815481529060010190602001808311612123575b505060408051601f19818403018152918152600087815260066020908152919020825192965061216d9550935085019150612691565b50817fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952826040518080602001828103825283818151815260200191508051906020019080838360005b838110156121ce5781810151838201526020016121b6565b50505050905090810190601f1680156121fb5780820380516001836020036101000a031916815260200191505b509250505060405180910390a25050505050565b6111e361221b82611320565b8261249b565b3b151590565b6122318282611fce565b61226c5760405162461bcd60e51b81526004018080602001828103825260218152602001806128276021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff19169055565b6122988282611fce565b156122ea576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b6000818152600360205260409020546001600160a01b0316156111e357600090815260036020526040902080546001600160a01b0319169055565b805461235d90600163ffffffff61257216565b9055565b80546001019055565b6001600160a01b0382166123c5576040805162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f2061646472657373604482015290519081900360640190fd5b6123ce81611ac9565b15612420576040805162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000604482015290519081900360640190fd5b600081815260026020908152604080832080546001600160a01b0319166001600160a01b03871690811790915583526004909152902061245f90612361565b60405181906001600160a01b038416906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b816001600160a01b03166124ae82611320565b6001600160a01b0316146124f35760405162461bcd60e51b81526004018080602001828103825260258152602001806129116025913960400191505060405180910390fd5b6124fc8161230f565b6001600160a01b038216600090815260046020526040902061251d9061234a565b60008181526002602052604080822080546001600160a01b0319169055518291906001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6000828211156125c9576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106126105782800160ff1982351617855561263d565b8280016001018555821561263d579182015b8281111561263d578235825591602001919060010190612622565b506126499291506126ff565b5090565b50805460018160011615610100020316600290046000825580601f1061267357506111e3565b601f0160209004906000526020600020908101906111e391906126ff565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106126d257805160ff191683800117855561263d565b8280016001018555821561263d579182015b8281111561263d5782518255916020019190600101906126e4565b610f8191905b80821115612649576000815560010161270556fe4552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c654552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e526f6c65733a206163636f756e7420697320746865207a65726f20616464726573734552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f7665644552433732313a206275726e206f6620746f6b656e2074686174206973206e6f74206f776e4552433732314275726e61626c653a2063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564a265627a7a72315820fb6a1b26cc352dbb05e6627fd530bbb44114ac3a349f30d1f071136c656d20dc64736f6c634300050c0032","storage":{"0x7":"0x68747470733a2f2f6578616d706c652e636f6d2f000000000000000000000028","0xbdf39e9e65b2355b1b0b06df799c09159f0ab90f06a9bb2153f5de7d9b0ea81":"0x1","0x1a306d3e9bf29128dee78d8d16c9f378a11bbdf917a9caf986fc6e60846e37e7":"0x63727970746f000000000000000000000000000000000000000000000000000c","0x42c63635470f1fb1d6d4b6441c413cb435b1ebb6fedd1896dd5e25d1399147dd":"0x1","0x605d7a0bb2b20c4004d356eb969ff104dcca62360aa356247072f5e0df6472e3":"0xdead","0x67be87c3ff9960ca1e9cfac5cab2ff4747269cf9ed20c9b7306235ac35a491c5":"0x1","0x70f464f95f9ab7aba03264fd4cac1711d774d3703ce74217180264d4efc2105f":"0x1","0x76a72f26a108e6f3f687141f5f42d21d65857c03cb1b01aa1284f9a9ccd085da":"0x1","0x9562381dfbc2d8b8b66e765249f330164b73e329e5f01670660643571d1974df":"0x1","0x9f23d2403fb64167582d316b1bc5b35a6ed48524341ab24947c71df77304b29e":"0x1","0xf7815fccbf112960a73756e185887fedcb9fc64ca0a16cc5923b7960ed780800":"0x1"}},"0xc965345edac823d56812cd20a10316233916a605":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101c6575f3560e01c806395d89b41116100fe578063c87b56dd1161009e578063e985e9c51161006e578063e985e9c5146103d4578063f2fde38b1461040f578063f6a74ed714610422578063fca247ac14610435575f80fd5b8063c87b56dd14610377578063d6e4fa861461038a578063da8c229e146103a9578063ddf7fcb0146103cb575f80fd5b8063a7fc7a07116100d9578063a7fc7a0714610334578063b88d4fde14610347578063c1a287e21461035a578063c475abff14610364575f80fd5b806395d89b411461030657806396e494e81461030e578063a22cb46514610321575f80fd5b80633f15457f116101695780636352211e116101445780636352211e146102c757806370a08231146102da578063715018a6146102ed5780638da5cb5b146102f5575f80fd5b80633f15457f1461028e57806342842e0e146102a15780634e543b26146102b4575f80fd5b8063095ea7b3116101a4578063095ea7b3146102325780630e297b451461024757806323b872dd1461026857806328ed4f6c1461027b575f80fd5b806301ffc9a7146101ca57806306fdde03146101f2578063081812fc14610207575b5f80fd5b6101dd6101d83660046117dd565b610448565b60405190151581526020015b60405180910390f35b6101fa610499565b6040516101e99190611845565b61021a610215366004611857565b610528565b6040516001600160a01b0390911681526020016101e9565b610245610240366004611882565b61054d565b005b61025a6102553660046118ac565b610666565b6040519081526020016101e9565b6102456102763660046118e1565b61067b565b61024561028936600461190e565b6106ac565b60085461021a906001600160a01b031681565b6102456102af3660046118e1565b6107be565b6102456102c236600461193c565b6107d8565b61021a6102d5366004611857565b610848565b61025a6102e836600461193c565b610869565b6102456108ed565b6006546001600160a01b031661021a565b6101fa610900565b6101dd61031c366004611857565b61090f565b61024561032f366004611957565b610934565b61024561034236600461193c565b610943565b61024561035536600461199b565b610996565b61025a6276a70081565b61025a610372366004611a74565b6109ce565b6101fa610385366004611857565b610b52565b61025a610398366004611857565b5f9081526007602052604090205490565b6101dd6103b736600461193c565b600a6020525f908152604090205460ff1681565b61025a60095481565b6101dd6103e2366004611a94565b6001600160a01b039182165f90815260056020908152604080832093909416825291909152205460ff1690565b61024561041d36600461193c565b610bc2565b61024561043036600461193c565b610c3b565b61025a6104433660046118ac565b610c8b565b5f6001600160e01b031982166301ffc9a760e01b148061047857506001600160e01b031982166380ac58cd60e01b145b8061049357506001600160e01b03198216630a3b53db60e21b145b92915050565b60605f80546104a790611ac0565b80601f01602080910402602001604051908101604052809291908181526020018280546104d390611ac0565b801561051e5780601f106104f55761010080835404028352916020019161051e565b820191905f5260205f20905b81548152906001019060200180831161050157829003601f168201915b5050505050905090565b5f61053282610c99565b505f908152600460205260409020546001600160a01b031690565b5f61055782610cf7565b9050806001600160a01b0316836001600160a01b0316036105c95760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084015b60405180910390fd5b336001600160a01b03821614806105e557506105e581336103e2565b6106575760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016105c0565b6106618383610d56565b505050565b5f6106738484845f610dc3565b949350505050565b6106853382610fc7565b6106a15760405162461bcd60e51b81526004016105c090611af8565b610661838383611040565b6008546009546040516302571be360e01b8152600481019190915230916001600160a01b0316906302571be390602401602060405180830381865afa1580156106f7573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061071b9190611b45565b6001600160a01b03161461072d575f80fd5b6107373383610fc7565b61073f575f80fd5b6008546009546040516306ab592360e01b81526004810191909152602481018490526001600160a01b038381166044830152909116906306ab5923906064016020604051808303815f875af115801561079a573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106619190611b60565b61066183838360405180602001604052805f815250610996565b6107e06111a2565b600854600954604051630c4b7b8560e11b815260048101919091526001600160a01b03838116602483015290911690631896f70a906044015f604051808303815f87803b15801561082f575f80fd5b505af1158015610841573d5f803e3d5ffd5b5050505050565b5f818152600760205260408120544210610860575f80fd5b61049382610cf7565b5f6001600160a01b0382166108d25760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b60648201526084016105c0565b506001600160a01b03165f9081526003602052604090205490565b6108f56111a2565b6108fe5f6111fc565b565b6060600180546104a790611ac0565b5f81815260076020526040812054429061092d906276a70090611b77565b1092915050565b61093f33838361124d565b5050565b61094b6111a2565b6001600160a01b0381165f818152600a6020526040808220805460ff19166001179055517f0a8bb31534c0ed46f380cb867bd5c803a189ced9a764e30b3a4991a9901d74749190a250565b6109a03383610fc7565b6109bc5760405162461bcd60e51b81526004016105c090611af8565b6109c88484848461131a565b50505050565b6008546009546040516302571be360e01b815260048101919091525f9130916001600160a01b03909116906302571be390602401602060405180830381865afa158015610a1d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a419190611b45565b6001600160a01b031614610a53575f80fd5b335f908152600a602052604090205460ff16610a6d575f80fd5b5f838152600760205260409020544290610a8b906276a70090611b77565b1015610a95575f80fd5b610aa26276a70083611b77565b5f848152600760205260409020546276a70090610ac0908590611b77565b610aca9190611b77565b11610ad3575f80fd5b5f8381526007602052604081208054849290610af0908490611b77565b90915550505f838152600760205260409081902054905184917f9b87a00e30f1ac65d898f070f8a3488fe60517182d0a2098e1b4b93a54aa9bd691610b3791815260200190565b60405180910390a250505f9081526007602052604090205490565b6060610b5d82610c99565b5f610b7260408051602081019091525f815290565b90505f815111610b905760405180602001604052805f815250610bbb565b80610b9a8461134d565b604051602001610bab929190611b96565b6040516020818303038152906040525b9392505050565b610bca6111a2565b6001600160a01b038116610c2f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016105c0565b610c38816111fc565b50565b610c436111a2565b6001600160a01b0381165f818152600a6020526040808220805460ff19169055517f33d83959be2573f5453b12eb9d43b3499bc57d96bd2f067ba44803c859e811139190a250565b5f6106738484846001610dc3565b5f818152600260205260409020546001600160a01b0316610c385760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105c0565b5f818152600260205260408120546001600160a01b0316806104935760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105c0565b5f81815260046020526040902080546001600160a01b0319166001600160a01b0384169081179091558190610d8a82610cf7565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6008546009546040516302571be360e01b815260048101919091525f9130916001600160a01b03909116906302571be390602401602060405180830381865afa158015610e12573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e369190611b45565b6001600160a01b031614610e48575f80fd5b335f908152600a602052604090205460ff16610e62575f80fd5b610e6b8561090f565b610e73575f80fd5b610e806276a70042611b77565b6276a700610e8e8542611b77565b610e989190611b77565b11610ea1575f80fd5b610eab8342611b77565b5f868152600760209081526040808320939093556002905220546001600160a01b031615610edc57610edc856113dd565b610ee6848661146f565b8115610f6d576008546009546040516306ab592360e01b81526004810191909152602481018790526001600160a01b038681166044830152909116906306ab5923906064016020604051808303815f875af1158015610f47573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f6b9190611b60565b505b6001600160a01b038416857fb3d987963d01b2f68493b4bdb130988f157ea43070d4ad840fee0466ed9370d9610fa38642611b77565b60405190815260200160405180910390a3610fbe8342611b77565b95945050505050565b5f80610fd283610848565b9050806001600160a01b0316846001600160a01b0316148061100d5750836001600160a01b031661100284610528565b6001600160a01b0316145b8061067357506001600160a01b038082165f9081526005602090815260408083209388168352929052205460ff16610673565b826001600160a01b031661105382610cf7565b6001600160a01b0316146110795760405162461bcd60e51b81526004016105c090611bc4565b6001600160a01b0382166110db5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b60648201526084016105c0565b826001600160a01b03166110ee82610cf7565b6001600160a01b0316146111145760405162461bcd60e51b81526004016105c090611bc4565b5f81815260046020908152604080832080546001600160a01b03199081169091556001600160a01b038781168086526003855283862080545f1901905590871680865283862080546001019055868652600290945282852080549092168417909155905184937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6006546001600160a01b031633146108fe5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016105c0565b600680546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b816001600160a01b0316836001600160a01b0316036112ae5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c65720000000000000060448201526064016105c0565b6001600160a01b038381165f81815260056020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b611325848484611040565b611331848484846115f7565b6109c85760405162461bcd60e51b81526004016105c090611c09565b60605f611359836116f1565b60010190505f8167ffffffffffffffff81111561137857611378611987565b6040519080825280601f01601f1916602001820160405280156113a2576020820181803683370190505b5090508181016020015b5f19016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a85049450846113ac57509392505050565b5f6113e782610cf7565b90506113f282610cf7565b5f83815260046020908152604080832080546001600160a01b03199081169091556001600160a01b0385168085526003845282852080545f190190558785526002909352818420805490911690555192935084927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6001600160a01b0382166114c55760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f206164647265737360448201526064016105c0565b5f818152600260205260409020546001600160a01b0316156115295760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105c0565b5f818152600260205260409020546001600160a01b03161561158d5760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105c0565b6001600160a01b0382165f81815260036020908152604080832080546001019055848352600290915280822080546001600160a01b0319168417905551839291907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b5f6001600160a01b0384163b156116e957604051630a85bd0160e11b81526001600160a01b0385169063150b7a029061163a903390899088908890600401611c5b565b6020604051808303815f875af1925050508015611674575060408051601f3d908101601f1916820190925261167191810190611c97565b60015b6116cf573d8080156116a1576040519150601f19603f3d011682016040523d82523d5f602084013e6116a6565b606091505b5080515f036116c75760405162461bcd60e51b81526004016105c090611c09565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610673565b506001610673565b5f8072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b831061172f5772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef8100000000831061175b576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc10000831061177957662386f26fc10000830492506010015b6305f5e1008310611791576305f5e100830492506008015b61271083106117a557612710830492506004015b606483106117b7576064830492506002015b600a83106104935760010192915050565b6001600160e01b031981168114610c38575f80fd5b5f602082840312156117ed575f80fd5b8135610bbb816117c8565b5f5b838110156118125781810151838201526020016117fa565b50505f910152565b5f81518084526118318160208601602086016117f8565b601f01601f19169290920160200192915050565b602081525f610bbb602083018461181a565b5f60208284031215611867575f80fd5b5035919050565b6001600160a01b0381168114610c38575f80fd5b5f8060408385031215611893575f80fd5b823561189e8161186e565b946020939093013593505050565b5f805f606084860312156118be575f80fd5b8335925060208401356118d08161186e565b929592945050506040919091013590565b5f805f606084860312156118f3575f80fd5b83356118fe8161186e565b925060208401356118d08161186e565b5f806040838503121561191f575f80fd5b8235915060208301356119318161186e565b809150509250929050565b5f6020828403121561194c575f80fd5b8135610bbb8161186e565b5f8060408385031215611968575f80fd5b82356119738161186e565b915060208301358015158114611931575f80fd5b634e487b7160e01b5f52604160045260245ffd5b5f805f80608085870312156119ae575f80fd5b84356119b98161186e565b935060208501356119c98161186e565b925060408501359150606085013567ffffffffffffffff808211156119ec575f80fd5b818701915087601f8301126119ff575f80fd5b813581811115611a1157611a11611987565b604051601f8201601f19908116603f01168101908382118183101715611a3957611a39611987565b816040528281528a6020848701011115611a51575f80fd5b826020860160208301375f60208483010152809550505050505092959194509250565b5f8060408385031215611a85575f80fd5b50508035926020909101359150565b5f8060408385031215611aa5575f80fd5b8235611ab08161186e565b915060208301356119318161186e565b600181811c90821680611ad457607f821691505b602082108103611af257634e487b7160e01b5f52602260045260245ffd5b50919050565b6020808252602d908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526c1c881bdc88185c1c1c9bdd9959609a1b606082015260800190565b5f60208284031215611b55575f80fd5b8151610bbb8161186e565b5f60208284031215611b70575f80fd5b5051919050565b8082018082111561049357634e487b7160e01b5f52601160045260245ffd5b5f8351611ba78184602088016117f8565b835190830190611bbb8183602088016117f8565b01949350505050565b60208082526025908201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060408201526437bbb732b960d91b606082015260800190565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6001600160a01b03858116825284166020820152604081018390526080606082018190525f90611c8d9083018461181a565b9695505050505050565b5f60208284031215611ca7575f80fd5b8151610bbb816117c856fea164736f6c6343000818000a","storage":{"0x0":"0x0","0x1":"0x0","0x6":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x8":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0x9":"0x93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae","0x9b8bc185dce56a7ea1b27d35e40ac15dcdf9144303dfd4d8880220078bf21a2c":"0x1","0xdb5e6a17df8534b92b0c8de590f14b4fb4b5eb2c62ef1bf7a05555e354797508":"0x1","0xe1a982900207b619cb6c39be8cb5e60da1370171412fb65b5efc25e2dce3c34c":"0x1"}},"0xce4bb7dc1eb9dce75743de6a4b48534fd427ef51":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xe85541865bbb62a05064ce5c9f41cc293a8ea996","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0xd178b720229c39de617846f84cf9c8d32a63a23d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610106575f3560e01c806371017a541161009e5780639e32d3641161006e5780639e32d3641461025a578063a424740014610281578063dd6b9e2214610294578063e1c4b65a146102a7578063e35a14e5146102ba575f80fd5b806371017a541461020e5780637b103999146102215780638f0dbd25146102345780639810b69514610247575f80fd5b8063485cc955116100d9578063485cc95514610191578063572b6c05146101a457806358884432146101d05780636ccbae5f146101fb575f80fd5b8063150b7a021461010a5780631694116d1461013b5780631bf7e13e146101505780631c351a9d14610170575b5f80fd5b61011d610118366004611434565b6102e2565b6040516001600160e01b031990911681526020015b60405180910390f35b61014e6101493660046114e3565b610372565b005b61016361015e366004611549565b61040d565b6040516101329190611601565b61018361017e366004611613565b6104d6565b604051908152602001610132565b61014e61019f366004611666565b6105c3565b6101c06101b236600461169d565b6001600160a01b0316301490565b6040519015158152602001610132565b6067546101e3906001600160a01b031681565b6040516001600160a01b039091168152602001610132565b6101836102093660046116b8565b6106f8565b6101e361021c3660046116cf565b610751565b6066546101e3906001600160a01b031681565b61014e6102423660046116ef565b610791565b6101e36102553660046116cf565b610806565b6101837fd81bbfcee722494b885e891546eeac23d0eedcd44038d7a2f6ef9ec2f9e0d23981565b6101c061028f366004611549565b61085f565b6101c06102a236600461172d565b6108a8565b61014e6102b5366004611771565b61091d565b6101e36102c83660046116b8565b5f908152606560205260409020546001600160a01b031690565b6066545f906001600160a01b03166102f8610a43565b6001600160a01b031614158061032257505f848152606560205260409020546001600160a01b0316155b156103605783610330610a43565b60405163634afa0d60e01b815260048101929092526001600160a01b031660248201526044015b60405180910390fd5b50630a85bd0160e11b95945050505050565b828261037e8282610751565b6001600160a01b031661038f610a43565b6001600160a01b0316146103c057604051632cd9b44d60e11b81526004810183905260248101829052604401610357565b5f6103cb8686610806565b90505f5b87811015610402576103fa8989838181106103ec576103ec6117b0565b905060200201358387610a51565b6001016103cf565b505050505050505050565b60605f5a905061041e85858561085f565b61043b57604051638baa579f60e01b815260040160405180910390fd5b6104cb61044b602087018761169d565b3060408801358461045f60608b018b6117c4565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f92019190915250610b8492505050565b9150505b9392505050565b6067545f906001600160a01b031663aa271e1a6104f1610a43565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015610533573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105579190611807565b1580610572575030610567610a43565b6001600160a01b0316145b156105a45761057f610a43565b60405163e2c8c9d560e01b81526001600160a01b039091166004820152602401610357565b5f6105b0858585610c60565b90506105bb81610e73565b949350505050565b5f54610100900460ff16158080156105e157505f54600160ff909116105b806105fa5750303b1580156105fa57505f5460ff166001145b61065d5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610357565b5f805460ff19166001179055801561067e575f805461ff0019166101001790555b606680546001600160a01b038086166001600160a01b031992831617909255606780549285169290911691909117905580156106f3575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f9061074a906060016040516020818303038152906040528051906020012090565b5492915050565b5f80838360405160200161076f929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209150505b92915050565b828261079d8282610751565b6001600160a01b03166107ae610a43565b6001600160a01b0316146107df57604051632cd9b44d60e11b81526004810183905260248101829052604401610357565b856107e981610e73565b6107fd876107f78889610806565b86610a51565b50505050505050565b5f8060026108148585610e8f565b6040516108219190611826565b602060405180830381855afa15801561083c573d5f803e3d5ffd5b5050506040513d601f19601f820116820180604052508101906105bb9190611841565b5f6105bb61086c856118c6565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250610f1492505050565b5f805b8281101561091257846001600160a01b03166108f38585848181106108d2576108d26117b0565b905060200201355f908152606560205260409020546001600160a01b031690565b6001600160a01b03161461090a575f9150506104cf565b6001016108ab565b506001949350505050565b6067546001600160a01b031663aa271e1a610936610a43565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015610978573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061099c9190611807565b15806109b75750306109ac610a43565b6001600160a01b0316145b156109c45761057f610a43565b5f5b818110156106f357610a3a8383838181106109e3576109e36117b0565b90506020028101906109f59190611983565b610a039060208101906117c4565b858585818110610a1557610a156117b0565b9050602002810190610a279190611983565b610a3590602081019061169d565b610c60565b506001016109c6565b5f610a4c611059565b905090565b5f838152606560205260409020546001600160a01b03838116911614610ab4575f83815260656020526040908190205490516326995d8360e11b8152600481018590526001600160a01b0391821660248201529083166044820152606401610357565b5f838152606560205260409081902080546001600160a01b03191690556066549051632142170760e11b81523060048201526001600160a01b03838116602483015260448201869052909116906342842e0e906064015f604051808303815f87803b158015610b21575f80fd5b505af1158015610b33573d5f803e3d5ffd5b50505050806001600160a01b0316610b49610a43565b6001600160a01b0316847f9a471856befea1cabcd7fc8a1c4d70ea07b8ed2ee205cc361f932433542ef3fe60405160405180910390a4505050565b6060610b8f85611076565b5f80876001600160a01b031686610ba88b8a89896110db565b604051610bb59190611826565b5f604051808303815f8787f1925050503d805f8114610bef576040519150601f19603f3d011682016040523d82523d5f602084013e610bf4565b606091505b509092509050610c05603f876119bf565b5a11610c1357610c136119d2565b610c5382826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061110b565b9998505050505050505050565b5f60605f7fd81bbfcee722494b885e891546eeac23d0eedcd44038d7a2f6ef9ec2f9e0d2398686604051602001610c989291906119e6565b60405160208183030381529060405280519060200120604051602001610cc8929190918252602082015260400190565b60408051808303601f19018152828252805160209091012060028084526060840190925292505f9190816020015b6060815260200190600190039081610cf657905050905086868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920182905250855186945090925015159050610d5657610d566117b0565b6020026020010181905250604051806040016040528060038152602001621e9a5b60ea1b81525081600181518110610d9057610d906117b0565b6020908102919091018101919091525f8381526065909152604080822080546001600160a01b0319166001600160a01b03898116919091179091556067549151635cd7e3b360e01b8152911691635cd7e3b391610df891309186918991829190600401611a4d565b5f604051808303815f87803b158015610e0f575f80fd5b505af1158015610e21573d5f803e3d5ffd5b50505050846001600160a01b0316827f08717469d38a4b02325ea6637978c7952f94d3d8fc7848994f618ddbf4d637f18989604051610e61929190611aab565b60405180910390a35095945050505050565b303303610e8657610e8381611144565b50565b610e8381611076565b60605f82610e9f60016020611ad9565b60ff1660208110610eb257610eb26117b0565b1a9050610ec0600282611af2565b60ff1615610ecf576003610ed2565b60025b84604051602001610efc92919060f89290921b6001600160f81b0319168252600182015260210190565b60405160208183030381529060405291505092915050565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015610f58573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f7c9190611841565b90505f611029866060015180519060200120868860200151604051602001610fc99392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561104f5750855161104f906001600160a01b0316828661116e565b9695505050505050565b5f30330361106e575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f906060016040516020818303038152906040528051906020012090506110ca8190565b546110d6906001611b13565b905550565b60608285856040516020016110f293929190611b26565b6040516020818303038152906040529050949350505050565b6060831561111a5750816104cf565b82511561112a5782518084602001fd5b8160405162461bcd60e51b81526004016103579190611601565b61114c6112a9565b8114610e8357604051635637b6af60e11b815260048101829052602401610357565b5f805f61117b85856112bb565b90925090505f81600481111561119357611193611b64565b1480156111b15750856001600160a01b0316826001600160a01b0316145b156111c1576001925050506104cf565b5f80876001600160a01b0316631626ba7e60e01b88886040516024016111e8929190611b78565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516112269190611826565b5f60405180830381855afa9150503d805f811461125e576040519150601f19603f3d011682016040523d82523d5f602084013e611263565b606091505b5091509150818015611276575080516020145b801561129d57508051630b135d3f60e11b9061129b9083016020908101908401611841565b145b98975050505050505050565b5f3033036110735750601f1936013590565b5f8082516041036112ef576020830151604084015160608501515f1a6112e3878285856112fd565b945094505050506112f6565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561133257505f905060036113d9565b8460ff16601b1415801561134a57508460ff16601c14155b1561135a57505f905060046113d9565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156113ab573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b0381166113d3575f600192509250506113d9565b91505f90505b94509492505050565b6001600160a01b0381168114610e83575f80fd5b5f8083601f840112611406575f80fd5b50813567ffffffffffffffff81111561141d575f80fd5b6020830191508360208285010111156112f6575f80fd5b5f805f805f60808688031215611448575f80fd5b8535611453816113e2565b94506020860135611463816113e2565b935060408601359250606086013567ffffffffffffffff811115611485575f80fd5b611491888289016113f6565b969995985093965092949392505050565b5f8083601f8401126114b2575f80fd5b50813567ffffffffffffffff8111156114c9575f80fd5b6020830191508360208260051b85010111156112f6575f80fd5b5f805f805f608086880312156114f7575f80fd5b853567ffffffffffffffff81111561150d575f80fd5b611519888289016114a2565b9096509450506020860135925060408601359150606086013561153b816113e2565b809150509295509295909350565b5f805f6040848603121561155b575f80fd5b833567ffffffffffffffff80821115611572575f80fd5b9085019060808288031215611585575f80fd5b9093506020850135908082111561159a575f80fd5b506115a7868287016113f6565b9497909650939450505050565b5f5b838110156115ce5781810151838201526020016115b6565b50505f910152565b5f81518084526115ed8160208601602086016115b4565b601f01601f19169290920160200192915050565b602081525f6104cf60208301846115d6565b5f805f60408486031215611625575f80fd5b833567ffffffffffffffff81111561163b575f80fd5b611647868287016113f6565b909450925050602084013561165b816113e2565b809150509250925092565b5f8060408385031215611677575f80fd5b8235611682816113e2565b91506020830135611692816113e2565b809150509250929050565b5f602082840312156116ad575f80fd5b81356104cf816113e2565b5f602082840312156116c8575f80fd5b5035919050565b5f80604083850312156116e0575f80fd5b50508035926020909101359150565b5f805f8060808587031215611702575f80fd5b8435935060208501359250604085013591506060850135611722816113e2565b939692955090935050565b5f805f6040848603121561173f575f80fd5b833561174a816113e2565b9250602084013567ffffffffffffffff811115611765575f80fd5b6115a7868287016114a2565b5f8060208385031215611782575f80fd5b823567ffffffffffffffff811115611798575f80fd5b6117a4858286016114a2565b90969095509350505050565b634e487b7160e01b5f52603260045260245ffd5b5f808335601e198436030181126117d9575f80fd5b83018035915067ffffffffffffffff8211156117f3575f80fd5b6020019150368190038213156112f6575f80fd5b5f60208284031215611817575f80fd5b815180151581146104cf575f80fd5b5f82516118378184602087016115b4565b9190910192915050565b5f60208284031215611851575f80fd5b5051919050565b634e487b7160e01b5f52604160045260245ffd5b6040516080810167ffffffffffffffff8111828210171561188f5761188f611858565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156118be576118be611858565b604052919050565b5f608082360312156118d6575f80fd5b6118de61186c565b82356118e9816113e2565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff80821115611919575f80fd5b9085019036601f83011261192b575f80fd5b81358181111561193d5761193d611858565b61194f601f8201601f19168501611895565b91508082523684828501011115611964575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b5f8235603e19833603018112611837575f80fd5b634e487b7160e01b5f52601260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b5f826119cd576119cd611997565b500490565b634e487b7160e01b5f52600160045260245ffd5b818382375f9101908152919050565b5f8282518085526020808601955060208260051b840101602086015f5b84811015611a4057601f19868403018952611a2e8383516115d6565b98840198925090830190600101611a12565b5090979650505050505050565b6001600160a01b038616815260a0602082018190525f90611a70908301876119f5565b8281036040840152611a8281876119f5565b90508281036060840152611a9681866119f5565b91505082151560808301529695505050505050565b60208152816020820152818360408301375f818301604090810191909152601f909201601f19160101919050565b60ff828116828216039081111561078b5761078b6119ab565b5f60ff831680611b0457611b04611997565b8060ff84160691505092915050565b8082018082111561078b5761078b6119ab565b5f8451611b378184602089016115b4565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f6105bb60408301846115d656fea164736f6c6343000818000a","storage":{"0x0":"0xff"}},"0xda9e1b3e395bfb0a45f03c7f615146b9d896c959":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100b1575f3560e01c806340c10f191161006e57806340c10f191461013d57806370a082311461015257806395d89b411461017a578063a457c2d714610182578063a9059cbb14610195578063dd62ed3e146101a8575f80fd5b806306fdde03146100b5578063095ea7b3146100d357806318160ddd146100f657806323b872dd14610108578063313ce5671461011b578063395093511461012a575b5f80fd5b6100bd6101bb565b6040516100ca9190610775565b60405180910390f35b6100e66100e13660046107dc565b61024b565b60405190151581526020016100ca565b6002545b6040519081526020016100ca565b6100e6610116366004610804565b610264565b604051601281526020016100ca565b6100e66101383660046107dc565b610287565b61015061014b3660046107dc565b6102a8565b005b6100fa61016036600461083d565b6001600160a01b03165f9081526020819052604090205490565b6100bd6102b6565b6100e66101903660046107dc565b6102c5565b6100e66101a33660046107dc565b610344565b6100fa6101b636600461085d565b610351565b6060600380546101ca9061088e565b80601f01602080910402602001604051908101604052809291908181526020018280546101f69061088e565b80156102415780601f1061021857610100808354040283529160200191610241565b820191905f5260205f20905b81548152906001019060200180831161022457829003601f168201915b5050505050905090565b5f3361025881858561037b565b60019150505b92915050565b5f3361027185828561049e565b61027c858585610516565b506001949350505050565b5f336102588185856102998383610351565b6102a391906108c6565b61037b565b6102b282826106b8565b5050565b6060600480546101ca9061088e565b5f33816102d28286610351565b9050838110156103375760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b61027c828686840361037b565b5f33610258818585610516565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b6001600160a01b0383166103dd5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161032e565b6001600160a01b03821661043e5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161032e565b6001600160a01b038381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b5f6104a98484610351565b90505f19811461051057818110156105035760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161032e565b610510848484840361037b565b50505050565b6001600160a01b03831661057a5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161032e565b6001600160a01b0382166105dc5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161032e565b6001600160a01b0383165f90815260208190526040902054818110156106535760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161032e565b6001600160a01b038481165f81815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3610510565b6001600160a01b03821661070e5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640161032e565b8060025f82825461071f91906108c6565b90915550506001600160a01b0382165f81815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b5f602080835283518060208501525f5b818110156107a157858101830151858201604001528201610785565b505f604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146107d7575f80fd5b919050565b5f80604083850312156107ed575f80fd5b6107f6836107c1565b946020939093013593505050565b5f805f60608486031215610816575f80fd5b61081f846107c1565b925061082d602085016107c1565b9150604084013590509250925092565b5f6020828403121561084d575f80fd5b610856826107c1565b9392505050565b5f806040838503121561086e575f80fd5b610877836107c1565b9150610885602084016107c1565b90509250929050565b600181811c908216806108a257607f821691505b6020821081036108c057634e487b7160e01b5f52602260045260245ffd5b50919050565b8082018082111561025e57634e487b7160e01b5f52601160045260245ffdfea164736f6c6343000818000a","storage":{"0x2":"0xe8d4a51000","0x3":"0x0","0x4":"0x0","0x47668262eb76f3aa61b856a0c078f33a11f46671cf1466c3616ba74a22fcdd92":"0xe8d4a51000","0x9cc83e833a69122bf7773b58c082655d780ae469ab7cdf5d1047a30229e55875":"0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"}},"0xe0afc4e9e03e4aa67257df7a2eca77454309789d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061002b5760003560e01c806316f1983114610030575b600080fd5b6100b06004803603604081101561004657600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561007157600080fd5b82018360208201111561008357600080fd5b803590602001918460018302840111640100000000831117156100a557600080fd5b5090925090506100b2565b005b826001600160a01b031660017f103fed9db65eac19c4d870f49ab7520fe03b99f1838e5996caf47e9e43308392848460405180806020018281038252848482818152602001925080828437600083820152604051601f909101601f19169092018290039550909350505050a350505056fea164736f6c6343000606000a","storage":{}},"0xe4fdf45c2f8d198854f8823809c7a988eeaaa493":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100a6575f3560e01c80638cb8ecec1161006e5780638cb8ecec1461013e5780638da5cb5b14610151578063cbe9e76414610161578063da8c229e14610183578063e0dba60f146101a5578063f2fde38b146101b8575f80fd5b806301670ba9146100aa57806301ffc9a7146100bf5780633f15457f146100f85780634e543b2614610123578063715018a614610136575b5f80fd5b6100bd6100b8366004610529565b6101cb565b005b6100e36100cd366004610540565b6001600160e01b0319166301ffc9a760e01b1490565b60405190151581526020015b60405180910390f35b60025461010b906001600160a01b031681565b6040516001600160a01b0390911681526020016100ef565b6100bd610131366004610589565b610217565b6100bd610282565b6100bd61014c3660046105a2565b610295565b5f546001600160a01b031661010b565b6100e361016f366004610529565b60036020525f908152604090205460ff1681565b6100e3610191366004610589565b60016020525f908152604090205460ff1681565b6100bd6101b33660046105cc565b6103a2565b6100bd6101c6366004610589565b610408565b6101d3610481565b60405181907f1764176cfa565853ba1ded547a830a9f9bff95231ef6fd228b3ddd6175777569905f90a25f908152600360205260409020805460ff19166001179055565b61021f610481565b600254604051630c4b7b8560e11b81525f60048201526001600160a01b03838116602483015290911690631896f70a906044015f604051808303815f87803b158015610269575f80fd5b505af115801561027b573d5f803e3d5ffd5b5050505050565b61028a610481565b6102935f6104da565b565b335f9081526001602052604090205460ff166103095760405162461bcd60e51b815260206004820152602860248201527f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f604482015267373a3937b63632b960c11b60648201526084015b60405180910390fd5b5f8281526003602052604090205460ff1615610323575f80fd5b6002546040516306ab592360e01b81525f6004820152602481018490526001600160a01b038381166044830152909116906306ab5923906064016020604051808303815f875af1158015610379573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061039d9190610605565b505050565b6103aa610481565b6001600160a01b0382165f81815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b610410610481565b6001600160a01b0381166104755760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610300565b61047e816104da565b50565b5f546001600160a01b031633146102935760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610300565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f60208284031215610539575f80fd5b5035919050565b5f60208284031215610550575f80fd5b81356001600160e01b031981168114610567575f80fd5b9392505050565b80356001600160a01b0381168114610584575f80fd5b919050565b5f60208284031215610599575f80fd5b6105678261056e565b5f80604083850312156105b3575f80fd5b823591506105c36020840161056e565b90509250929050565b5f80604083850312156105dd575f80fd5b6105e68361056e565b9150602083013580151581146105fa575f80fd5b809150509250929050565b5f60208284031215610615575f80fd5b505191905056fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0xbdf39e9e65b2355b1b0b06df799c09159f0ab90f06a9bb2153f5de7d9b0ea81":"0x1","0x97b771283c9c769f7b9399fef71d92816f2bd31de10203b676671b01eb920966":"0x1"}},"0xe85541865bbb62a05064ce5c9f41cc293a8ea996":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610060575f3560e01c8063715018a6146100645780638129fc1c1461006e5780638da5cb5b14610076578063a3f4df7e14610096578063f2fde38b146100cf578063ffa1ad74146100e2575b5f80fd5b61006c610106565b005b61006c610119565b6033546040516001600160a01b0390911681526020015b60405180910390f35b6100c26040518060400160405280600d81526020016c2aa7299d1027b832b930ba37b960991b81525081565b60405161008d91906103bd565b61006c6100dd366004610409565b610229565b6100c2604051806040016040528060058152602001640302e312e360dc1b81525081565b61010e61029f565b6101175f6102f9565b565b5f54610100900460ff161580801561013757505f54600160ff909116105b806101505750303b15801561015057505f5460ff166001145b6101b85760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b5f805460ff1916600117905580156101d9575f805461ff0019166101001790555b6101e161034a565b8015610226575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50565b61023161029f565b6001600160a01b0381166102965760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016101af565b610226816102f9565b6033546001600160a01b031633146101175760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016101af565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff166103b45760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016101af565b610117336102f9565b5f602080835283518060208501525f5b818110156103e9578581018301518582016040015282016103cd565b505f604082860101526040601f19601f8301168501019250505092915050565b5f60208284031215610419575f80fd5b81356001600160a01b038116811461042f575f80fd5b939250505056fea164736f6c6343000818000a","storage":{}},"0xead34b583404e3cb0c9b97c2d1c486be67be9f30":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0xec71e4e674fe0f432693dc2b935c34bd2774c003":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610090575f3560e01c8063a200e15311610063578063a200e15314610146578063a34e35961461016d578063c8a4271f14610180578063cd5d2c74146101bf578063d820ed42146101e6575f80fd5b806301ffc9a7146100945780632c0fd74c146100bc57806350e9a715146100f157806359b6b86c1461011f575b5f80fd5b6100a76100a2366004610600565b61020d565b60405190151581526020015b60405180910390f35b6100e37f000000000000000000000000000000000000000000000000000000000000000081565b6040519081526020016100b3565b6101046100ff366004610627565b610243565b604080518251815260209283015192810192909252016100b3565b6100e37f000000000000000000000000000000000000000000000000000000000000000181565b6100e37f000000000000000000000000000000000000000000000000000000000000000481565b6100e361017b366004610627565b610404565b6101a77f000000000000000000000000f3810eb7d64d1c11ae12727d957c6202b24492f581565b6040516001600160a01b0390911681526020016100b3565b6100e37f000000000000000000000000000000000000000000000000000000000000000081565b6100e37f000000000000000000000000000000000000000000000000000000000000000281565b5f6001600160e01b031982166301ffc9a760e01b148061023d57506001600160e01b031982166350e9a71560e01b145b92915050565b604080518082019091525f80825260208201525f61029586868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061045392505050565b90505f600582106102d1576102ca847f00000000000000000000000000000000000000000000000000000000000000016106b3565b9050610394565b81600403610303576102ca847f00000000000000000000000000000000000000000000000000000000000000026106b3565b81600303610335576102ca847f00000000000000000000000000000000000000000000000000000000000000046106b3565b81600203610367576102ca847f00000000000000000000000000000000000000000000000000000000000000006106b3565b610391847f00000000000000000000000000000000000000000000000000000000000000006106b3565b90505b60405180604001604052806103a883610554565b81526020016103f76103f28a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c92508b91506105f89050565b610554565b9052979650505050505050565b5f61044a6103f286868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508892508791506105f89050565b95945050505050565b80515f90819081905b8082101561054b575f858381518110610477576104776106ca565b01602001516001600160f81b0319169050600160ff1b8110156104a65761049f6001846106de565b9250610538565b600760fd1b6001600160f81b0319821610156104c75761049f6002846106de565b600f60fc1b6001600160f81b0319821610156104e85761049f6003846106de565b601f60fb1b6001600160f81b0319821610156105095761049f6004846106de565b603f60fa1b6001600160f81b03198216101561052a5761049f6005846106de565b6105356006846106de565b92505b5082610543816106f1565b93505061045c565b50909392505050565b5f807f000000000000000000000000f3810eb7d64d1c11ae12727d957c6202b24492f56001600160a01b03166350d25bcd6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105b2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105d69190610709565b9050806105e7846305f5e1006106b3565b6105f19190610720565b9392505050565b5f9392505050565b5f60208284031215610610575f80fd5b81356001600160e01b0319811681146105f1575f80fd5b5f805f806060858703121561063a575f80fd5b843567ffffffffffffffff80821115610651575f80fd5b818701915087601f830112610664575f80fd5b813581811115610672575f80fd5b886020828501011115610683575f80fd5b6020928301999098509187013596604001359550909350505050565b634e487b7160e01b5f52601160045260245ffd5b808202811582820484141761023d5761023d61069f565b634e487b7160e01b5f52603260045260245ffd5b8082018082111561023d5761023d61069f565b5f600182016107025761070261069f565b5060010190565b5f60208284031215610719575f80fd5b5051919050565b5f8261073a57634e487b7160e01b5f52601260045260245ffd5b50049056fea164736f6c6343000818000a","storage":{}},"0xf1ad43dc647f27c2366ab4742d68d21282f7d50e":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101d1575f3560e01c80638b95dd71116100fe578063c86902331161009e578063e32954eb1161006e578063e32954eb146104f2578063e59d895d14610505578063e985e9c514610518578063f1cb7e0614610553575f80fd5b8063c869023314610435578063ce3decdc1461048c578063d5fa2b001461049f578063d700ff33146104b2575f80fd5b8063a8fa5682116100d9578063a8fa5682146103ac578063a9784b3e146103bf578063ac9650d814610402578063bc1c58d114610422575f80fd5b80638b95dd7114610373578063a22cb46514610386578063a4b91a0114610399575f80fd5b80633603d758116101745780635c98042b116101445780635c98042b14610327578063623195b01461033a578063691f34311461034d5780637737221314610360575f80fd5b80633603d758146102975780633b3b57de146102aa5780634cbf6ba4146102bd57806359d1d43c14610307575f80fd5b8063124a319c116101af578063124a319c146102255780632203ab561461025057806329cd62ea14610271578063304e6ade14610284575f80fd5b806301ffc9a7146101d55780630af179d7146101fd57806310f13a8c14610212575b5f80fd5b6101e86101e3366004612267565b610566565b60405190151581526020015b60405180910390f35b61021061020b3660046122bd565b610576565b005b610210610220366004612304565b610778565b610238610233366004612377565b610842565b6040516001600160a01b0390911681526020016101f4565b61026361025e3660046123a1565b610a87565b6040516101f492919061240e565b61021061027f366004612426565b610bb5565b6102106102923660046122bd565b610c4d565b6102106102a536600461244f565b610cc6565b6102386102b836600461244f565b610d64565b6101e86102cb3660046123a1565b5f82815260208181526040808320546001600160401b031683526006825280832094835293815283822092825291909152205461ffff16151590565b61031a6103153660046122bd565b610d93565b6040516101f49190612466565b61031a61033536600461244f565b610e6f565b610210610348366004612478565b610f2a565b61031a61035b36600461244f565b610fc2565b61021061036e3660046122bd565b610ffa565b6102106103813660046124da565b611073565b6102106103943660046125b9565b611150565b6102106103a73660046125e3565b61122a565b61031a6103ba36600461261e565b6112f6565b6101e86103cd36600461265a565b6001600160a01b039283165f908152600c60209081526040808320948352938152838220929094168152925290205460ff1690565b6104156104103660046126ce565b611342565b6040516101f4919061270c565b61031a61043036600461244f565b61134f565b61047761044336600461244f565b5f81815260208181526040808320546001600160401b03168352600982528083209383529290522080546001909101549091565b604080519283526020830191909152016101f4565b61021061049a3660046122bd565b611387565b6102106104ad36600461276e565b6114c3565b6104da6104c036600461244f565b5f602081905290815260409020546001600160401b031681565b6040516001600160401b0390911681526020016101f4565b61041561050036600461279c565b6114e9565b6102106105133660046127d6565b6114fe565b6101e8610526366004612808565b6001600160a01b039182165f908152600b6020908152604080832093909416825291909152205460ff1690565b61031a6105613660046123a1565b6115a2565b5f61057082611666565b92915050565b826105808161168a565b610588575f80fd5b5f84815260208181526040808320548151601f87018490048402810184019092528582528392606092839285926001600160401b039091169183916105eb9183918d908d90819084018382808284375f9201919091525092939250506118b79050565b90505b80515160208201511015610712578661ffff165f03610652578060400151965061061781611912565b94508460405160200161062a9190612834565b60405160208183030381529060405280519060200120925061064b81611933565b9350610704565b5f61065c82611912565b9050816040015161ffff168861ffff16141580610680575061067e868261194f565b155b15610702576106db8c878a8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250505060208801518d91506106d2908290612863565b8b51158a61196a565b8160400151975081602001519650809550858051906020012093506106ff82611933565b94505b505b61070d81611bc9565b6105ee565b5083511561076c5761076c8a85888c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c925061076391508290508f612863565b8951158861196a565b50505050505050505050565b846107828161168a565b61078a575f80fd5b5f86815260208181526040808320546001600160401b03168352600a8252808320898452909152908190209051849184916107c89089908990612876565b908152602001604051809103902091826107e3929190612901565b5084846040516107f4929190612876565b6040518091039020867f448bc014f1536726cf8d54ff3d6481ed3cbc683c2591ca204274009afa09b1a18787878760405161083294939291906129e2565b60405180910390a3505050505050565b5f82815260208181526040808320546001600160401b031683526007825280832085845282528083206001600160e01b0319851684529091528120546001600160a01b03168015610894579050610570565b5f61089e85610d64565b90506001600160a01b0381166108b8575f92505050610570565b6040516301ffc9a760e01b60248201525f9081906001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b1790525161090f9190612834565b5f60405180830381855afa9150503d805f8114610947576040519150601f19603f3d011682016040523d82523d5f602084013e61094c565b606091505b509150915081158061095f575060208151105b80610989575080601f8151811061097857610978612a13565b01602001516001600160f81b031916155b1561099a575f945050505050610570565b6040516001600160e01b0319871660248201526001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b179052516109f09190612834565b5f60405180830381855afa9150503d805f8114610a28576040519150601f19603f3d011682016040523d82523d5f602084013e610a2d565b606091505b509092509050811580610a41575060208151105b80610a6b575080601f81518110610a5a57610a5a612a13565b01602001516001600160f81b031916155b15610a7c575f945050505050610570565b509095945050505050565b5f82815260208181526040808320546001600160401b03168352600180835281842086855290925282206060915b848111610b975780851615801590610ae457505f8181526020839052604081208054610ae090612885565b9050115b15610b8f5780825f8381526020019081526020015f20808054610b0690612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610b3290612885565b8015610b7d5780601f10610b5457610100808354040283529160200191610b7d565b820191905f5260205f20905b815481529060010190602001808311610b6057829003601f168201915b50505050509050935093505050610bae565b60011b610ab5565b505f60405180602001604052805f81525092509250505b9250929050565b82610bbf8161168a565b610bc7575f80fd5b60408051808201825284815260208082018581525f888152808352848120546001600160401b031681526009835284812089825283528490209251835551600190920191909155815185815290810184905285917f1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e4691015b60405180910390a250505050565b82610c578161168a565b610c5f575f80fd5b5f84815260208181526040808320546001600160401b03168352600382528083208784529091529020610c93838583612901565b50837fe379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d75788484604051610c3f929190612a27565b80610cd08161168a565b610cd8575f80fd5b5f82815260208190526040812080546001600160401b031691610cfa83612a3a565b82546101009290920a6001600160401b038181021990931691831602179091555f84815260208181526040918290205491519190921681528492507fc6621ccb8f3f5a04bb6502154b2caf6adf5983fe76dfef1cfc9c42e3579db444910160405180910390a25050565b5f80610d7183603c6115a2565b905080515f03610d8357505f92915050565b610d8c81611cae565b9392505050565b5f83815260208181526040808320546001600160401b03168352600a825280832086845290915290819020905160609190610dd19085908590612876565b90815260200160405180910390208054610dea90612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610e1690612885565b8015610e615780601f10610e3857610100808354040283529160200191610e61565b820191905f5260205f20905b815481529060010190602001808311610e4457829003601f168201915b505050505090509392505050565b5f81815260208181526040808320546001600160401b03168352600482528083208484529091529020805460609190610ea790612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610ed390612885565b8015610f1e5780601f10610ef557610100808354040283529160200191610f1e565b820191905f5260205f20905b815481529060010190602001808311610f0157829003601f168201915b50505050509050919050565b83610f348161168a565b610f3c575f80fd5b83610f48600182612863565b1615610f52575f80fd5b5f85815260208181526040808320546001600160401b031683526001825280832088845282528083208784529091529020610f8e838583612901565b50604051849086907faa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe3905f90a35050505050565b5f81815260208181526040808320546001600160401b03168352600882528083208484529091529020805460609190610ea790612885565b826110048161168a565b61100c575f80fd5b5f84815260208181526040808320546001600160401b03168352600882528083208784529091529020611040838583612901565b50837fb7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f78484604051610c3f929190612a27565b8261107d8161168a565b611085575f80fd5b837f65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af75284846040516110b792919061240e565b60405180910390a2603c830361110e57837f52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd26110f284611cae565b6040516001600160a01b03909116815260200160405180910390a25b5f84815260208181526040808320546001600160401b0316835260028252808320878452825280832086845290915290206111498382612a5f565b5050505050565b6001600160a01b03821633036111bf5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084015b60405180910390fd5b335f818152600b602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6001600160a01b03821633036112825760405162461bcd60e51b815260206004820181905260248201527f53657474696e672064656c65676174652073746174757320666f722073656c6660448201526064016111b6565b335f818152600c6020908152604080832087845282528083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519384529286917ff0ddb3b04746704017f9aa8bd728fcc2c1d11675041205350018915f5e4750a0910160405180910390a4505050565b5f83815260208181526040808320546001600160401b03168352600582528083208684528252808320858452825280832061ffff851684529091529020805460609190610dea90612885565b6060610d8c5f8484611ccb565b5f81815260208181526040808320546001600160401b03168352600382528083208484529091529020805460609190610ea790612885565b826113918161168a565b611399575f80fd5b5f84815260208181526040808320546001600160401b031680845260048352818420888552909252822080549192916113d190612885565b80601f01602080910402602001604051908101604052809291908181526020018280546113fd90612885565b80156114485780601f1061141f57610100808354040283529160200191611448565b820191905f5260205f20905b81548152906001019060200180831161142b57829003601f168201915b505050506001600160401b0384165f9081526004602090815260408083208b8452909152902091925061147e9050858783612901565b50857f8f15ed4b723ef428f250961da8315675b507046737e19319fc1a4d81bfe87f858287876040516114b393929190612b1e565b60405180910390a2505050505050565b816114cd8161168a565b6114d5575f80fd5b6114e483603c61038185611e88565b505050565b60606114f6848484611ccb565b949350505050565b826115088161168a565b611510575f80fd5b5f84815260208181526040808320546001600160401b031683526007825280832087845282528083206001600160e01b031987168085529083529281902080546001600160a01b0319166001600160a01b038716908117909155905190815286917f7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa910160405180910390a350505050565b5f82815260208181526040808320546001600160401b0316835260028252808320858452825280832084845290915290208054606091906115e290612885565b80601f016020809104026020016040519081016040528092919081815260200182805461160e90612885565b80156116595780601f1061163057610100808354040283529160200191611659565b820191905f5260205f20905b81548152906001019060200180831161163c57829003601f168201915b5050505050905092915050565b5f6001600160e01b03198216631674750f60e21b1480610570575061057082611eb8565b5f336001600160a01b037f0000000000000000000000004fbf7b2f171336958be5d15ff762a5cff53635681614806116ea5750336001600160a01b037f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5616145b156116f757506001919050565b6040516302571be360e01b8152600481018390525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa15801561175c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117809190612b4d565b90507f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b0316816001600160a01b031603611845576040516331a9108f60e11b8152600481018490527f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b031690636352211e90602401602060405180830381865afa15801561181e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118429190612b4d565b90505b6001600160a01b03811633148061187e57506001600160a01b0381165f908152600b6020908152604080832033845290915290205460ff165b80610d8c57506001600160a01b0381165f908152600c60209081526040808320868452825280832033845290915290205460ff16610d8c565b6118ff6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261057081611bc9565b602081015181516060916105709161192a9082611edc565b84519190611f33565b60a081015160c08201516060916105709161192a908290612863565b5f81518351148015610d8c5750610d8c835f845f8751611fa7565b865160208801205f61197d878787611f33565b90508315611aa1576001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c168452909152902080546119c690612885565b159050611a23576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611a0783612b68565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091528120611a62916121f9565b897f03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a12078a8a604051611a94929190612b84565b60405180910390a261076c565b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c16845290915290208054611ae290612885565b90505f03611b40576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611b2483612ba9565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091529020611b808282612a5f565b50897f52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b8a8a84604051611bb593929190612bbf565b60405180910390a250505050505050505050565b60c08101516020820181905281515111611be05750565b5f611bf2825f01518360200151611edc565b8260200151611c019190612bed565b8251909150611c109082611fc9565b61ffff166040830152611c24600282612bed565b8251909150611c339082611fc9565b61ffff166060830152611c47600282612bed565b8251909150611c569082611fef565b63ffffffff166080830152611c6c600482612bed565b82519091505f90611c7d9083611fc9565b61ffff169050611c8e600283612bed565b60a084018190529150611ca18183612bed565b60c0909301929092525050565b5f8151601414611cbc575f80fd5b5060200151600160601b900490565b6060816001600160401b03811115611ce557611ce56124c6565b604051908082528060200260200182016040528015611d1857816020015b6060815260200190600190039081611d035790505b5090505f5b82811015611e80578415611dd8575f848483818110611d3e57611d3e612a13565b9050602002810190611d509190612c00565b611d5f91602491600491612c42565b611d6891612c69565b9050858114611dd65760405162461bcd60e51b815260206004820152603460248201527f6d756c746963616c6c3a20416c6c207265636f726473206d7573742068617665604482015273040c240dac2e8c6d0d2dcce40dcc2dacad0c2e6d60631b60648201526084016111b6565b505b5f8030868685818110611ded57611ded612a13565b9050602002810190611dff9190612c00565b604051611e0d929190612876565b5f60405180830381855af49150503d805f8114611e45576040519150601f19603f3d011682016040523d82523d5f602084013e611e4a565b606091505b509150915081611e58575f80fd5b80848481518110611e6b57611e6b612a13565b60209081029190910101525050600101611d1d565b509392505050565b604080516014808252818301909252606091602082018180368337505050600160601b9290920260208301525090565b5f6001600160e01b0319821663c869023360e01b1480610570575061057082612017565b5f815b83518110611eef57611eef612c86565b5f611efa858361203b565b60ff169050611f0a816001612bed565b611f149083612bed565b9150805f03611f235750611f29565b50611edf565b6114f68382612863565b8251606090611f428385612bed565b1115611f4c575f80fd5b5f826001600160401b03811115611f6557611f656124c6565b6040519080825280601f01601f191660200182016040528015611f8f576020820181803683370190505b50905060208082019086860101610a7c82828761205e565b5f611fb38484846120b3565b611fbe8787856120b3565b149695505050505050565b81515f90611fd8836002612bed565b1115611fe2575f80fd5b50016002015161ffff1690565b81515f90611ffe836004612bed565b1115612008575f80fd5b50016004015163ffffffff1690565b5f6001600160e01b0319821663691f343160e01b14806105705750610570826120d5565b5f82828151811061204e5761204e612a13565b016020015160f81c905092915050565b602081106120965781518352612075602084612bed565b9250612082602083612bed565b915061208f602082612863565b905061205e565b905182516020929092036101000a5f190180199091169116179052565b82515f906120c18385612bed565b11156120cb575f80fd5b5091016020012090565b5f6001600160e01b031982166304928c6760e21b14806105705750610570825f6001600160e01b0319821663547d2b4160e11b148061212457506001600160e01b03198216635c98042b60e01b145b806105705750610570825f6001600160e01b0319821663bc1c58d160e01b14806105705750610570825f6001600160e01b03198216631d9dabef60e11b148061217d57506001600160e01b031982166378e5bf0360e11b145b806105705750610570825f6001600160e01b03198216631101d5ab60e11b14806105705750610570825f6001600160e01b0319821663d700ff3360e01b14806105705750610570825f6001600160e01b03198216634fbf043360e01b148061057057506301ffc9a760e01b6001600160e01b0319831614610570565b50805461220590612885565b5f825580601f10612214575050565b601f0160209004905f5260205f20908101906122309190612233565b50565b5b80821115612247575f8155600101612234565b5090565b80356001600160e01b031981168114612262575f80fd5b919050565b5f60208284031215612277575f80fd5b610d8c8261224b565b5f8083601f840112612290575f80fd5b5081356001600160401b038111156122a6575f80fd5b602083019150836020828501011115610bae575f80fd5b5f805f604084860312156122cf575f80fd5b8335925060208401356001600160401b038111156122eb575f80fd5b6122f786828701612280565b9497909650939450505050565b5f805f805f60608688031215612318575f80fd5b8535945060208601356001600160401b0380821115612335575f80fd5b61234189838a01612280565b90965094506040880135915080821115612359575f80fd5b5061236688828901612280565b969995985093965092949392505050565b5f8060408385031215612388575f80fd5b823591506123986020840161224b565b90509250929050565b5f80604083850312156123b2575f80fd5b50508035926020909101359150565b5f5b838110156123db5781810151838201526020016123c3565b50505f910152565b5f81518084526123fa8160208601602086016123c1565b601f01601f19169290920160200192915050565b828152604060208201525f6114f660408301846123e3565b5f805f60608486031215612438575f80fd5b505081359360208301359350604090920135919050565b5f6020828403121561245f575f80fd5b5035919050565b602081525f610d8c60208301846123e3565b5f805f806060858703121561248b575f80fd5b843593506020850135925060408501356001600160401b038111156124ae575f80fd5b6124ba87828801612280565b95989497509550505050565b634e487b7160e01b5f52604160045260245ffd5b5f805f606084860312156124ec575f80fd5b833592506020840135915060408401356001600160401b0380821115612510575f80fd5b818601915086601f830112612523575f80fd5b813581811115612535576125356124c6565b604051601f8201601f19908116603f0116810190838211818310171561255d5761255d6124c6565b81604052828152896020848701011115612575575f80fd5b826020860160208301375f6020848301015280955050505050509250925092565b6001600160a01b0381168114612230575f80fd5b80358015158114612262575f80fd5b5f80604083850312156125ca575f80fd5b82356125d581612596565b9150612398602084016125aa565b5f805f606084860312156125f5575f80fd5b83359250602084013561260781612596565b9150612615604085016125aa565b90509250925092565b5f805f60608486031215612630575f80fd5b8335925060208401359150604084013561ffff8116811461264f575f80fd5b809150509250925092565b5f805f6060848603121561266c575f80fd5b833561267781612596565b925060208401359150604084013561264f81612596565b5f8083601f84011261269e575f80fd5b5081356001600160401b038111156126b4575f80fd5b6020830191508360208260051b8501011115610bae575f80fd5b5f80602083850312156126df575f80fd5b82356001600160401b038111156126f4575f80fd5b6127008582860161268e565b90969095509350505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b8281101561276157603f1988860301845261274f8583516123e3565b94509285019290850190600101612733565b5092979650505050505050565b5f806040838503121561277f575f80fd5b82359150602083013561279181612596565b809150509250929050565b5f805f604084860312156127ae575f80fd5b8335925060208401356001600160401b038111156127ca575f80fd5b6122f78682870161268e565b5f805f606084860312156127e8575f80fd5b833592506127f86020850161224b565b9150604084013561264f81612596565b5f8060408385031215612819575f80fd5b823561282481612596565b9150602083013561279181612596565b5f82516128458184602087016123c1565b9190910192915050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156105705761057061284f565b818382375f9101908152919050565b600181811c9082168061289957607f821691505b6020821081036128b757634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156114e457805f5260205f20601f840160051c810160208510156128e25750805b601f840160051c820191505b81811015611149575f81556001016128ee565b6001600160401b03831115612918576129186124c6565b61292c836129268354612885565b836128bd565b5f601f84116001811461295d575f85156129465750838201355b5f19600387901b1c1916600186901b178355611149565b5f83815260208120601f198716915b8281101561298c578685013582556020948501946001909201910161296c565b50868210156129a8575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b604081525f6129f56040830186886129ba565b8281036020840152612a088185876129ba565b979650505050505050565b634e487b7160e01b5f52603260045260245ffd5b602081525f6114f66020830184866129ba565b5f6001600160401b03808316818103612a5557612a5561284f565b6001019392505050565b81516001600160401b03811115612a7857612a786124c6565b612a8c81612a868454612885565b846128bd565b602080601f831160018114612abf575f8415612aa85750858301515b5f19600386901b1c1916600185901b178555612b16565b5f85815260208120601f198616915b82811015612aed57888601518255948401946001909101908401612ace565b5085821015612b0a57878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b604081525f612b3060408301866123e3565b8281036020840152612b438185876129ba565b9695505050505050565b5f60208284031215612b5d575f80fd5b8151610d8c81612596565b5f61ffff821680612b7b57612b7b61284f565b5f190192915050565b604081525f612b9660408301856123e3565b905061ffff831660208301529392505050565b5f61ffff808316818103612a5557612a5561284f565b606081525f612bd160608301866123e3565b61ffff851660208401528281036040840152612b4381856123e3565b808201808211156105705761057061284f565b5f808335601e19843603018112612c15575f80fd5b8301803591506001600160401b03821115612c2e575f80fd5b602001915036819003821315610bae575f80fd5b5f8085851115612c50575f80fd5b83861115612c5c575f80fd5b5050820193919092039150565b80356020831015610570575f19602084900360031b1b1692915050565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{}},"0xf3810eb7d64d1c11ae12727d957c6202b24492f5":{"nonce":1,"balance":"0x0","code":"0x6080604052348015600e575f80fd5b50600436106030575f3560e01c806350d25bcd146034578063e5c19b2d146048575b5f80fd5b5f5460405190815260200160405180910390f35b605760533660046059565b5f55565b005b5f602082840312156068575f80fd5b503591905056fea164736f6c6343000818000a","storage":{"0x0":"0x5f5e100"}},"0xf670681605efc4efc804f5a9b97ee89520473d56":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c80638da5cb5b11610088578063c66485b211610063578063c66485b2146101da578063da8c229e146101ed578063e0dba60f1461021f578063f2fde38b14610232575f80fd5b80638da5cb5b146101a4578063bffbe61c146101b4578063c47f0027146101c7575f80fd5b806365669631116100c35780636566963114610161578063715018a6146101745780637a806d6b1461017e578063828eab0e14610191575f80fd5b80630f5a5466146100e95780631e83409a1461010f5780633f15457f14610122575b5f80fd5b6100fc6100f7366004610958565b610245565b6040519081526020015b60405180910390f35b6100fc61011d36600461098f565b610258565b6101497f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a981565b6040516001600160a01b039091168152602001610106565b6100fc61016f3660046109aa565b610279565b61017c610526565b005b6100fc61018c366004610a8f565b610539565b600254610149906001600160a01b031681565b5f546001600160a01b0316610149565b6100fc6101c236600461098f565b6105ae565b6100fc6101d5366004610b00565b610608565b61017c6101e836600461098f565b610624565b61020f6101fb36600461098f565b60016020525f908152604090205460ff1681565b6040519015158152602001610106565b61017c61022d366004610b47565b6106e4565b61017c61024036600461098f565b61074a565b5f610251338484610279565b9392505050565b6002545f9061027390339084906001600160a01b0316610279565b92915050565b5f836001600160a01b0381163314806102a05750335f9081526001602052604090205460ff165b80610334575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063e985e9c590604401602060405180830381865afa158015610310573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103349190610b73565b806103435750610343816107c3565b6103e05760405162461bcd60e51b815260206004820152605b60248201527f526576657273655265676973747261723a2043616c6c6572206973206e6f742060448201527f6120636f6e74726f6c6c6572206f7220617574686f726973656420627920616460648201527f6472657373206f7220746865206164647265737320697473656c660000000000608482015260a4015b60405180910390fd5b5f6103ea8661083a565b604080517f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e2602080830191909152818301849052825180830384018152606090920192839052815191012091925081906001600160a01b038916907f6ada868dd3058cf77a48a74489fd7963688e5464b2b0fa957ace976243270e92905f90a36040516305ef2c7f60e41b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26004820152602481018390526001600160a01b03878116604483015286811660648301525f60848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610505575f80fd5b505af1158015610517573d5f803e3d5ffd5b50929998505050505050505050565b61052e61089c565b6105375f6108f5565b565b5f80610546868686610279565b604051637737221360e01b81529091506001600160a01b038516906377372213906105779084908790600401610b8e565b5f604051808303815f87803b15801561058e575f80fd5b505af11580156105a0573d5f803e3d5ffd5b509298975050505050505050565b5f7f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26105d98361083a565b604080516020810193909352820152606001604051602081830303815290604052805190602001209050919050565b6002545f9061027390339081906001600160a01b031685610539565b61062c61089c565b6001600160a01b03811661069b5760405162461bcd60e51b815260206004820152603060248201527f526576657273655265676973747261723a205265736f6c76657220616464726560448201526f07373206d757374206e6f7420626520360841b60648201526084016103d7565b600280546001600160a01b0319166001600160a01b0383169081179091556040517feae17a84d9eb83d8c8eb317f9e7d64857bc363fa51674d996c023f4340c577cf905f90a250565b6106ec61089c565b6001600160a01b0382165f81815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b61075261089c565b6001600160a01b0381166107b75760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016103d7565b6107c0816108f5565b50565b5f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801561081e575060408051601f3d908101601f1916820190925261081b91810190610be2565b60015b61082957505f919050565b6001600160a01b0316331492915050565b5f60285b8015610891575f19016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a81536010909204915f19016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a815360108304925061083e565b505060285f20919050565b5f546001600160a01b031633146105375760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016103d7565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146107c0575f80fd5b5f8060408385031215610969575f80fd5b823561097481610944565b9150602083013561098481610944565b809150509250929050565b5f6020828403121561099f575f80fd5b813561025181610944565b5f805f606084860312156109bc575f80fd5b83356109c781610944565b925060208401356109d781610944565b915060408401356109e781610944565b809150509250925092565b634e487b7160e01b5f52604160045260245ffd5b5f82601f830112610a15575f80fd5b813567ffffffffffffffff80821115610a3057610a306109f2565b604051601f8301601f19908116603f01168101908282118183101715610a5857610a586109f2565b81604052838152866020858801011115610a70575f80fd5b836020870160208301375f602085830101528094505050505092915050565b5f805f8060808587031215610aa2575f80fd5b8435610aad81610944565b93506020850135610abd81610944565b92506040850135610acd81610944565b9150606085013567ffffffffffffffff811115610ae8575f80fd5b610af487828801610a06565b91505092959194509250565b5f60208284031215610b10575f80fd5b813567ffffffffffffffff811115610b26575f80fd5b610b3284828501610a06565b949350505050565b80151581146107c0575f80fd5b5f8060408385031215610b58575f80fd5b8235610b6381610944565b9150602083013561098481610b3a565b5f60208284031215610b83575f80fd5b815161025181610b3a565b8281525f60206040602084015283518060408501525f5b81811015610bc157858101830151858201606001528201610ba5565b505f606082860101526060601f19601f830116850101925050509392505050565b5f60208284031215610bf2575f80fd5b81516102518161094456fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2":"0x9df67c91f1bfcb4d966cf764e9218685e7c59e8a","0x1f5b7623941da966ad7183d9cbb6db584f6d4add26919ac31a2d3f19a164e7e1":"0x1","0xbe5de2149ce76ca5934fa63455cd675fd52e2d30f3328985d298a627ca0f05e9":"0x1"}},"0xf8c26340c1eaea6c7ff1760b25005e1306953572":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061010b5760003560e01c80638c87a4ea116100a2578063b87abc1111610071578063b87abc1114610244578063c597407314610257578063ce92b33e1461026a578063e837ae741461027d578063ec129eea146102905761010b565b80638c87a4ea146101ea5780638f69c188146101fd578063a3557e6c14610210578063b85afd28146102235761010b565b806347c81699116100de57806347c8169914610181578063672b9f81146101945780636ccbae5f146101b55780637b103999146101d55761010b565b80631bd8cc1a146101105780631be5e7ed146101395780632c3d376d14610159578063310bd74b1461016c575b600080fd5b61012361011e3660046117b4565b6102a3565b6040516101309190611eee565b60405180910390f35b61014c610147366004611aec565b6104f2565b6040516101309190611fd6565b61014c610167366004611b21565b610673565b61017f61017a366004611b21565b610714565b005b61017f61018f3660046119b5565b6107c0565b6101a76101a2366004611b94565b6108ef565b604051610130929190611fe7565b6101c86101c3366004611b21565b6109c3565b604051610130919061204c565b6101dd6109d5565b6040516101309190611ea9565b6101236101f836600461191d565b6109e5565b61017f61020b366004611878565b610a74565b61017f61021e366004611878565b610af0565b610236610231366004611951565b610b1b565b604051610130929190611eff565b61017f610252366004611b3f565b610ca9565b61017f610265366004611a39565b610d43565b61017f610278366004611808565b610df9565b61017f61028b366004611808565b610e97565b61017f61029e366004611808565b610f4e565b60015460405163b3f9e4cb60e01b815260609183916001600160a01b039091169063b3f9e4cb906102d890849060040161204c565b60206040518083038186803b1580156102f057600080fd5b505afa158015610304573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610328919081019061178e565b6001600160a01b0316306001600160a01b0316146103615760405162461bcd60e51b81526004016103589061201c565b60405180910390fd5b604080518581526020808702820101909152849060609082801561039957816020015b60608152602001906001900390816103845790505b506000868152600360205260408120549192505b838110156104e557600087815260026020908152604080832085845290915290208989838181106103da57fe5b602002820190508035601e19368490030181126103f657600080fd5b909101602081019150356001600160401b0381111561041457600080fd5b3681900382131561042457600080fd5b604051610432929190611e70565b9081526040805160209281900383018120805460026001821615610100026000190190911604601f810185900485028301850190935282825290929091908301828280156104c15780601f10610496576101008083540402835291602001916104c1565b820191906000526020600020905b8154815290600101906020018083116104a457829003601f168201915b50505050508382815181106104d257fe5b60209081029190910101526001016103ad565b5090979650505050505050565b60015460405163b3f9e4cb60e01b815260609183916001600160a01b039091169063b3f9e4cb9061052790849060040161204c565b60206040518083038186803b15801561053f57600080fd5b505afa158015610553573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610577919081019061178e565b6001600160a01b0316306001600160a01b0316146105a75760405162461bcd60e51b81526004016103589061201c565b6000838152600260209081526040808320600383528184205484529091529081902090516105d6908690611e7d565b9081526040805160209281900383018120805460026001821615610100026000190190911604601f810185900485028301850190935282825290929091908301828280156106655780601f1061063a57610100808354040283529160200191610665565b820191906000526020600020905b81548152906001019060200180831161064857829003601f168201915b505050505091505092915050565b60008181526004602090815260409182902080548351601f60026000196101006001861615020190931692909204918201849004840281018401909452808452606093928301828280156107085780601f106106dd57610100808354040283529160200191610708565b820191906000526020600020905b8154815290600101906020018083116106eb57829003601f168201915b50505050509050919050565b60015460405163430c208160e01b815282916001600160a01b03169063430c2081906107469033908590600401611ec5565b60206040518083038186803b15801561075e57600080fd5b505afa158015610772573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506107969190810190611997565b6107b25760405162461bcd60e51b81526004016103589061202c565b6107bc4283610fec565b5050565b60015460405163430c208160e01b815282916001600160a01b03169063430c2081906107f29033908590600401611ec5565b60206040518083038186803b15801561080a57600080fd5b505afa15801561081e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506108429190810190611997565b61085e5760405162461bcd60e51b81526004016103589061202c565b6108e7600360008481526020019081526020016000205487878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061108e915050565b505050505050565b60015460405163b3f9e4cb60e01b8152606091829184916001600160a01b03169063b3f9e4cb9061092490849060040161204c565b60206040518083038186803b15801561093c57600080fd5b505afa158015610950573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610974919081019061178e565b6001600160a01b0316306001600160a01b0316146109a45760405162461bcd60e51b81526004016103589061201c565b6109ad85610673565b92506109b983856104f2565b9150509250929050565b60009081526020819052604090205490565b6001546001600160a01b03165b90565b6060600082519050606081604051908082528060200260200182016040528015610a2357816020015b6060815260200190600190039081610a0e5790505b50905060005b82811015610a6c57610a4d858281518110610a4057fe5b6020026020010151610673565b828281518110610a5957fe5b6020908102919091010152600101610a29565b509392505050565b610acf63ce92b33e60e01b858585604051602401610a9493929190611f24565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092178252519020838361129f565b600082815260036020526040902054610aea908585856113c3565b50505050565b610b1063ec129eea60e01b858585604051602401610a9493929190611f24565b610aea84848461140a565b60015460405163b3f9e4cb60e01b8152606091829184916001600160a01b03169063b3f9e4cb90610b5090849060040161204c565b60206040518083038186803b158015610b6857600080fd5b505afa158015610b7c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610ba0919081019061178e565b6001600160a01b0316306001600160a01b031614610bd05760405162461bcd60e51b81526004016103589061201c565b8451604080518281526020808402820101909152818015610c0557816020015b6060815260200190600190039081610bf05790505b50935080604051908082528060200260200182016040528015610c3c57816020015b6060815260200190600190039081610c275790505b50925060005b81811015610c9f57610c67878281518110610c5957fe5b6020026020010151876108ef565b8651879084908110610c7557fe5b60200260200101868481518110610c8857fe5b602090810291909101019190915252600101610c42565b5050509250929050565b610d3463310bd74b60e01b84604051602401610cc5919061204c565b60408051601f19818403018152918152602080830180516001600160e01b03166001600160e01b031990951694909417845291519092208251601f8601839004830281018301909352848352918691869086908190840183828082843760009201919091525061129f92505050565b610d3e4284610fec565b505050565b610d676347c8169960e01b8888888888604051602401610cc5959493929190611f96565b610df0600360008581526020019081526020016000205488888080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8c018190048102820181019092528a815292508a915089908190840183828082843760009201919091525089925061108e915050565b50505050505050565b60015460405163430c208160e01b815282916001600160a01b03169063430c208190610e2b9033908590600401611ec5565b60206040518083038186803b158015610e4357600080fd5b505afa158015610e57573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610e7b9190810190611997565b610acf5760405162461bcd60e51b81526004016103589061202c565b6005546040516355138f0d60e11b81526001600160a01b039091169063aa271e1a90610ec7903390600401611eb7565b60206040518083038186803b158015610edf57600080fd5b505afa158015610ef3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610f179190810190611997565b610f335760405162461bcd60e51b81526004016103589061203c565b600081815260036020526040902054610d3e908484846113c3565b60015460405163430c208160e01b815282916001600160a01b03169063430c208190610f809033908590600401611ec5565b60206040518083038186803b158015610f9857600080fd5b505afa158015610fac573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610fd09190810190611997565b610b105760405162461bcd60e51b81526004016103589061202c565b600081815260036020526040808220849055600154905163538361a760e01b81526001600160a01b039091169163538361a79161102d91859160040161205a565b600060405180830381600087803b15801561104757600080fd5b505af115801561105b573d6000803e3d6000fd5b50506040518392507f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9150600090a25050565b825160208085019190912060008381526002835260408082208883529093528281209251919290916110c1908790611e7d565b908152604051602091819003919091018120546001805463538361a760e01b84526002918316156101000260001901909216041592506001600160a01b03169063538361a7906111179086908690600401612075565b600060405180830381600087803b15801561113157600080fd5b505af1158015611145573d6000803e3d6000fd5b50505060008481526002602090815260408083208a8452909152908190209051869250611173908890611e7d565b90815260200160405180910390209080519060200190611194929190611521565b50600082815260046020526040902054600260001961010060018416150201909116046111dc57600082815260046020908152604090912086516111da92880190611521565b505b801561123157846040516111f09190611e7d565b6040518091039020837f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f86876040516112289190611fd6565b60405180910390a35b8360405161123f9190611e7d565b6040518091039020856040516112559190611e7d565b6040518091039020847f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d92888860405161128f929190611fe7565b60405180910390a4505050505050565b6000828152602081815260408083205490519092916112f59185916112e9916112ce918a913091899101611e39565b60405160208183030381529060405280519060200120611414565b9063ffffffff61144416565b90506001600160a01b0381161580159061138c575060015460405163430c208160e01b81526001600160a01b039091169063430c20819061133c9084908890600401611ee0565b60206040518083038186803b15801561135457600080fd5b505afa158015611368573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061138c9190810190611997565b6113a85760405162461bcd60e51b81526004016103589061200c565b50505060009081526020819052604090208054600101905550565b825160005b818110156108e757611402868683815181106113e057fe5b60200260200101518684815181106113f457fe5b60200260200101518661108e565b6001016113c8565b610f334282610fec565b6000816040516020016114279190611e89565b604051602081830303815290604052805190602001209050919050565b600081516041146114575750600061151b565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a082111561149d576000935050505061151b565b8060ff16601b141580156114b557508060ff16601c14155b156114c6576000935050505061151b565b600186828585604051600081526020016040526040516114e99493929190611f58565b6020604051602081039080840390855afa15801561150b573d6000803e3d6000fd5b5050506020604051035193505050505b92915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061156257805160ff191683800117855561158f565b8280016001018555821561158f579182015b8281111561158f578251825591602001919060010190611574565b5061159b92915061159f565b5090565b6109e291905b8082111561159b57600081556001016115a5565b805161151b816121a4565b60008083601f8401126115d657600080fd5b5081356001600160401b038111156115ed57600080fd5b60208301915083602082028301111561160557600080fd5b9250929050565b600082601f83011261161d57600080fd5b813561163061162b826120a9565b612083565b81815260209384019390925082018360005b8381101561166e57813586016116588882611734565b8452506020928301929190910190600101611642565b5050505092915050565b600082601f83011261168957600080fd5b813561169761162b826120a9565b915081818352602084019350602081019050838560208402820111156116bc57600080fd5b60005b8381101561166e57816116d28882611783565b84525060209283019291909101906001016116bf565b805161151b816121bb565b60008083601f84011261170557600080fd5b5081356001600160401b0381111561171c57600080fd5b60208301915083600182028301111561160557600080fd5b600082601f83011261174557600080fd5b813561175361162b826120c9565b9150808252602083016020830185838301111561176f57600080fd5b61177a83828461214b565b50505092915050565b803561151b816121c4565b6000602082840312156117a057600080fd5b60006117ac84846115b9565b949350505050565b6000806000604084860312156117c957600080fd5b83356001600160401b038111156117df57600080fd5b6117eb868287016115c4565b935093505060206117fe86828701611783565b9150509250925092565b60008060006060848603121561181d57600080fd5b83356001600160401b0381111561183357600080fd5b61183f8682870161160c565b93505060208401356001600160401b0381111561185b57600080fd5b6118678682870161160c565b92505060406117fe86828701611783565b6000806000806080858703121561188e57600080fd5b84356001600160401b038111156118a457600080fd5b6118b08782880161160c565b94505060208501356001600160401b038111156118cc57600080fd5b6118d88782880161160c565b93505060406118e987828801611783565b92505060608501356001600160401b0381111561190557600080fd5b61191187828801611734565b91505092959194509250565b60006020828403121561192f57600080fd5b81356001600160401b0381111561194557600080fd5b6117ac84828501611678565b6000806040838503121561196457600080fd5b82356001600160401b0381111561197a57600080fd5b61198685828601611678565b92505060206109b985828601611783565b6000602082840312156119a957600080fd5b60006117ac84846116e8565b6000806000806000606086880312156119cd57600080fd5b85356001600160401b038111156119e357600080fd5b6119ef888289016116f3565b955095505060208601356001600160401b03811115611a0d57600080fd5b611a19888289016116f3565b93509350506040611a2c88828901611783565b9150509295509295909350565b60008060008060008060006080888a031215611a5457600080fd5b87356001600160401b03811115611a6a57600080fd5b611a768a828b016116f3565b975097505060208801356001600160401b03811115611a9457600080fd5b611aa08a828b016116f3565b95509550506040611ab38a828b01611783565b93505060608801356001600160401b03811115611acf57600080fd5b611adb8a828b016116f3565b925092505092959891949750929550565b60008060408385031215611aff57600080fd5b82356001600160401b03811115611b1557600080fd5b61198685828601611734565b600060208284031215611b3357600080fd5b60006117ac8484611783565b600080600060408486031215611b5457600080fd5b6000611b608686611783565b93505060208401356001600160401b03811115611b7c57600080fd5b611b88868287016116f3565b92509250509250925092565b60008060408385031215611ba757600080fd5b60006119868585611783565b6000611bbf8383611ccb565b9392505050565b611bcf8161212a565b82525050565b611bcf81612108565b611bcf611bea82612108565b612183565b6000611bfa826120f6565b611c0481856120fa565b935083602082028501611c16856120f0565b8060005b85811015611c505784840389528151611c338582611bb3565b9450611c3e836120f0565b60209a909a0199925050600101611c1a565b5091979650505050505050565b611bcf816109e2565b611bcf611c72826109e2565b6109e2565b611bcf81612135565b6000611c8c83856120fa565b9350611c9983858461214b565b611ca283612194565b9093019392505050565b6000611cb88385612103565b9350611cc583858461214b565b50500190565b6000611cd6826120f6565b611ce081856120fa565b9350611cf0818560208601612157565b611ca281612194565b6000611d04826120f6565b611d0e8185612103565b9350611d1e818560208601612157565b9290920192915050565b6000611d35601c83612103565b7f19457468657265756d205369676e6564204d6573736167653a0a3332000000008152601c0192915050565b6000611d6e6011836120fa565b70494e56414c49445f5349474e415455524560781b815260200192915050565b6000611d9b601d836120fa565b7f5245534f4c5645525f44455441434845445f46524f4d5f444f4d41494e000000815260200192915050565b6000611dd4601f836120fa565b7f53454e4445525f49535f4e4f545f415050524f5645445f4f525f4f574e455200815260200192915050565b6000611e0d6014836120fa565b7329a2a72222a92fa4a9afa727aa2fa6a4a72a22a960611b815260200192915050565b611bcf81612124565b6000611e458286611c66565b602082019150611e558285611bde565b601482019150611e658284611c66565b506020019392505050565b60006117ac828486611cac565b6000611bbf8284611cf9565b6000611e9482611d28565b9150611ea08284611c66565b50602001919050565b6020810161151b8284611bd5565b6020810161151b8284611bc6565b60408101611ed38285611bc6565b611bbf6020830184611c5d565b60408101611ed38285611bd5565b60208082528101611bbf8184611bef565b60408082528101611f108185611bef565b905081810360208301526117ac8184611bef565b60608082528101611f358186611bef565b90508181036020830152611f498185611bef565b90506117ac6040830184611c5d565b60808101611f668287611c5d565b611f736020830186611e30565b611f806040830185611c5d565b611f8d6060830184611c5d565b95945050505050565b60608082528101611fa8818789611c80565b90508181036020830152611fbd818587611c80565b9050611fcc6040830184611c5d565b9695505050505050565b60208082528101611bbf8184611ccb565b60408082528101611ff88185611ccb565b905081810360208301526117ac8184611ccb565b6020808252810161151b81611d61565b6020808252810161151b81611d8e565b6020808252810161151b81611dc7565b6020808252810161151b81611e00565b6020810161151b8284611c5d565b604081016120688285611c5d565b611bbf6020830184611c77565b60408101611ed38285611c5d565b6040518181016001600160401b03811182821017156120a157600080fd5b604052919050565b60006001600160401b038211156120bf57600080fd5b5060209081020190565b60006001600160401b038211156120df57600080fd5b506020601f91909101601f19160190565b60200190565b5190565b90815260200190565b919050565b600061151b82612118565b151590565b6001600160a01b031690565b60ff1690565b600061151b82612140565b600061151b826109e2565b600061151b82612108565b82818337506000910152565b60005b8381101561217257818101518382015260200161215a565b83811115610aea5750506000910152565b600061151b82600061151b8261219e565b601f01601f191690565b60601b90565b6121ad81612108565b81146121b857600080fd5b50565b6121ad81612113565b6121ad816109e256fea365627a7a723158207a1d8dfd286d14fcafd1812a4c44813691ac746a5a23fa711ac5551c9509654d6c6578706572696d656e74616cf564736f6c634300050c0040","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x5":"0x4a3c194eb88966178bfdd81744dddafed611b830"}},"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa":{"nonce":93,"balance":"0x35aac60bbae01d424b","code":"0x","storage":{}}},"best_block_number":"0x5d"} \ No newline at end of file diff --git a/yarn.lock b/yarn.lock index 8bd55f24..a69505ad 100644 --- a/yarn.lock +++ b/yarn.lock @@ -669,16 +669,6 @@ __metadata: languageName: node linkType: hard -"@foundry-rs/easy-foundryup@npm:^0.1.3": - version: 0.1.3 - resolution: "@foundry-rs/easy-foundryup@npm:0.1.3" - dependencies: - command-exists: ^1.2.9 - ts-interface-checker: ^0.1.9 - checksum: 479af448f079f588dda2a693ef70cebeacd98ccd53b6bf2636eb6eb4dd5cdbdc70ee09ac48c76bf58846bc0c07692931765c9fbd6974e20c91b70e25467de0cb - languageName: node - linkType: hard - "@gar/promisify@npm:^1.1.3": version: 1.1.3 resolution: "@gar/promisify@npm:1.1.3" @@ -3618,7 +3608,7 @@ __metadata: languageName: node linkType: hard -"command-exists@npm:^1.2.8, command-exists@npm:^1.2.9": +"command-exists@npm:^1.2.8": version: 1.2.9 resolution: "command-exists@npm:1.2.9" checksum: 729ae3d88a2058c93c58840f30341b7f82688a573019535d198b57a4d8cb0135ced0ad7f52b591e5b28a90feb2c675080ce916e56254a0f7c15cb2395277cac3 @@ -11079,13 +11069,6 @@ __metadata: languageName: node linkType: hard -"ts-interface-checker@npm:^0.1.9": - version: 0.1.13 - resolution: "ts-interface-checker@npm:0.1.13" - checksum: 20c29189c2dd6067a8775e07823ddf8d59a33e2ffc47a1bd59a5cb28bb0121a2969a816d5e77eda2ed85b18171aa5d1c4005a6b88ae8499ec7cc49f78571cb5e - languageName: node - linkType: hard - "ts-mocha@npm:^10.0.0": version: 10.0.0 resolution: "ts-mocha@npm:10.0.0" @@ -11524,7 +11507,6 @@ __metadata: "@ensdomains/address-encoder": ^0.2.22 "@ensdomains/ens-contracts": ^0.0.21 "@ethereumjs/tx": ^4.0.1 - "@foundry-rs/easy-foundryup": ^0.1.3 "@nomicfoundation/hardhat-chai-matchers": ^2.0.6 "@nomicfoundation/hardhat-ethers": ^3.0.0 "@nomicfoundation/hardhat-verify": ^1.1.0 From d17b541d7681c8c23dfa0d0760081d13df162d06 Mon Sep 17 00:00:00 2001 From: derain Date: Tue, 21 May 2024 21:29:25 +0300 Subject: [PATCH 11/21] [REG-1273] - Fix foundry installer for CI --- sandbox/anvil-server.ts | 4 ++-- sandbox/rebuild.ts | 1 - sandbox/state.json | 2 +- 3 files changed, 3 insertions(+), 4 deletions(-) diff --git a/sandbox/anvil-server.ts b/sandbox/anvil-server.ts index 136775e7..27e39432 100644 --- a/sandbox/anvil-server.ts +++ b/sandbox/anvil-server.ts @@ -1,7 +1,7 @@ import { spawn, ChildProcessWithoutNullStreams } from 'child_process'; import debug from 'debug'; import _ from 'lodash'; -import { getAnvilCommand, checkAnvil } from './foundry-cli'; +import { getAnvilCommand } from './foundry-cli'; import { run as installFoundry } from './foundry-cli'; const log = debug('UNS:sandbox'); @@ -50,7 +50,7 @@ export class AnvilServer { public static async launch (options: Partial, inherit = false): Promise { try { - if (!(await checkAnvil())) { + if (!(await getAnvilCommand())) { throw new Error('Foundry not found'); } } catch (e) { diff --git a/sandbox/rebuild.ts b/sandbox/rebuild.ts index dc06a1d7..53971366 100644 --- a/sandbox/rebuild.ts +++ b/sandbox/rebuild.ts @@ -1,4 +1,3 @@ -import { getAnvilCommand, run as installFoundry } from '@foundry-rs/easy-foundryup'; import { NameService, mergeNetworkConfig } from '../src/config'; import { Deployer } from '../src/deployer'; import { Sandbox } from './index'; diff --git a/sandbox/state.json b/sandbox/state.json index 230764fe..eb0a8818 100644 --- a/sandbox/state.json +++ b/sandbox/state.json @@ -1 +1 @@ -{"block":{"number":"0x5d","coinbase":"0x0000000000000000000000000000000000000000","timestamp":"0x664cdeb4","gas_limit":"0x6691b7","basefee":"0x1b818","difficulty":"0x0","prevrandao":"0x0000000000000000000000000000000000000000000000000000000000000000","blob_excess_gas_and_price":{"excess_blob_gas":0,"blob_gasprice":1}},"accounts":{"0x0000000000000000000000000000000000000000":{"nonce":0,"balance":"0xc968d22370860","code":"0x","storage":{}},"0x00e39a5004299871ab3b00fed5a39a715f181d02":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x66":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x67":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xd178b720229c39de617846f84cf9c8d32a63a23d","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0x0458f653495fb8d9bd0e7df468c2bf76d26c7bd9":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f7e83aee1461002d575b5f80fd5b61004061003b3660046105ba565b610054565b604051901515815260200160405180910390f35b5f601482146100a95760405162461bcd60e51b815260206004820152601860248201527f496e76616c696420736861312068617368206c656e6774680000000000000000604482015260640160405180910390fd5b5f6100ec5f85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101599050565b6bffffffffffffffffffffffff191690505f61013c87878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061018a92505050565b6bffffffffffffffffffffffff1916919091149695505050505050565b81515f90610168836014610621565b1115610172575f80fd5b5001602001516bffffffffffffffffffffffff191690565b5f6040518251602084019350604067ffffffffffffffc0600183011601600982820310600181036101bc576040820191505b50776745230100efcdab890098badcfe001032547600c3d2e1f061020d565b5f8383101561020657508082015192829003926020841015610206575f1960208590036101000a0119165b9392505050565b5f5b82811015610514576102228482896101db565b85526102328460208301896101db565b60208601526040818503106001810361024e5760808286038701535b506040830381146001810361026b57602086018051600887021790525b5060405b60808110156102f357858101603f19810151603719820151601f19830151600b198401516002911891909218189081027ffffffffefffffffefffffffefffffffefffffffefffffffefffffffefffffffe1663800000009091047c010000000100000001000000010000000100000001000000010000000116179052600c0161026f565b5060805b61014081101561037c57858101607f19810151606f19820151603f198301516017198401516004911891909218189081027ffffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffc1663400000009091047c0300000003000000030000000300000003000000030000000300000003161790526018016102f7565b50815f805f5b60508110156104ea576014810480156103b257600181146103d957600281146103fe576003811461042857610449565b600160281b8504600160501b86048118600160781b870416189350635a8279999250610449565b600160281b8504600160781b8604600160501b870418189350636ed9eba19250610449565b600160501b8504600160781b8604818117600160281b8804169116179350638f1bbcdc9250610449565b600160281b8504600160781b8604600160501b87041818935063ca62c1d692505b50601f600160bb1b8504168063ffffffe06001609b1b87041617905080840190508063ffffffff8616019050808301905080600160e01b600484028c015104019050600160a01b8102600160281b860417945050600160501b633fffffff600160521b86041663c00000006604000000000000870416170277ffffffff00ffffffff000000000000ffffffff00ffffffff8516179350600181019050610382565b5050509190910177ffffffff00ffffffff00ffffffff00ffffffff00ffffffff169060400161020f565b50600160601b63ffffffff821667ffffffff000000006101008404166bffffffff00000000000000006201000085041663ffffffff60601b630100000086041663ffffffff60801b6401000000008704161717171702945050505050919050565b5f8083601f840112610585575f80fd5b50813567ffffffffffffffff81111561059c575f80fd5b6020830191508360208285010111156105b3575f80fd5b9250929050565b5f805f80604085870312156105cd575f80fd5b843567ffffffffffffffff808211156105e4575f80fd5b6105f088838901610575565b90965094506020870135915080821115610608575f80fd5b5061061587828801610575565b95989497509550505050565b8082018082111561064057634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x06e2822b8856749ed179c77140dbc5f5a27410a4":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063de8f50a11461002d575b5f80fd5b61004061003b36600461051c565b610054565b604051901515815260200160405180910390f35b5f6060805f61009c60048b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506102e79050565b60ff1690508015610166576100f060058261ffff168c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b925061015f6101008260056105c3565b61ffff908116906005906101169085168d6105e5565b61012091906105e5565b8c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b915061021d565b6101a960058b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250929392505061038b9050565b90506101f460078261ffff168c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b925061021a6102048260076105c3565b61ffff908116906007906101169085168d6105e5565b91505b5f606061026084868a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152506103b192505050565b90925090508180156102d757506102856020825161027e91906105e5565b82906103cb565b60028b8b6040516102979291906105f8565b602060405180830381855afa1580156102b2573d5f803e3d5ffd5b5050506040513d601f19601f820116820180604052508101906102d59190610607565b145b9c9b505050505050505050505050565b5f8282815181106102fa576102fa61061e565b016020015160f81c90505b92915050565b825160609061031a8385610632565b1115610324575f80fd5b5f8267ffffffffffffffff81111561033e5761033e610645565b6040519080825280601f01601f191660200182016040528015610368576020820181803683370190505b509050602080820190868601016103808282876103ed565b509095945050505050565b81515f9061039a836002610632565b11156103a4575f80fd5b50016002015161ffff1690565b5f60606103bf838587610442565b91509150935093915050565b81515f906103da836020610632565b11156103e4575f80fd5b50016020015190565b602081106104255781518352610404602084610632565b9250610411602083610632565b915061041e6020826105e5565b90506103ed565b905182516020929092036101000a5f190180199091169116179052565b5f60605f85518551855188888860405160200161046496959493929190610686565b6040516020818303038152906040529050835167ffffffffffffffff81111561048f5761048f610645565b6040519080825280601f01601f1916602001820160405280156104b9576020820181803683370190505b50915083516020830182516020840160055afa925050935093915050565b5f8083601f8401126104e7575f80fd5b50813567ffffffffffffffff8111156104fe575f80fd5b602083019150836020828501011115610515575f80fd5b9250929050565b5f805f805f8060608789031215610531575f80fd5b863567ffffffffffffffff80821115610548575f80fd5b6105548a838b016104d7565b9098509650602089013591508082111561056c575f80fd5b6105788a838b016104d7565b90965094506040890135915080821115610590575f80fd5b5061059d89828a016104d7565b979a9699509497509295939492505050565b634e487b7160e01b5f52601160045260245ffd5b61ffff8181168382160190808211156105de576105de6105af565b5092915050565b81810381811115610305576103056105af565b818382375f9101908152919050565b5f60208284031215610617575f80fd5b5051919050565b634e487b7160e01b5f52603260045260245ffd5b80820180821115610305576103056105af565b634e487b7160e01b5f52604160045260245ffd5b5f81515f5b81811015610678576020818501810151868301520161065e565b505f93019283525090919050565b8681528560208201528460408201525f6106b56106af6106a96060850188610659565b86610659565b84610659565b9897505050505050505056fea164736f6c6343000818000a","storage":{}},"0x0712e8e819712c3bfdb098ce51c87a4ac0296fd8":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x0930ffb2c192b0c9a9dd2372cf7f2845ef39cbb6":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x65":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x66":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xbe92182cab5b84fd18b34881a0c32771e84f5b8b","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c8121905":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x107733fed96c4cd390c944a31f5425a7fb98ae5e":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x65":"0x556e73746f707061626c6520446f6d61696e7300000000000000000000000026","0x66":"0x5544000000000000000000000000000000000000000000000000000000000004","0x133":"0x68747470733a2f2f6578616d706c652e636f6d2f000000000000000000000028","0x134":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x9c74364589a7bce52d7a232f90c98b979577d9ab711dbe7e9fb985471178bff":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf29a433ca043c2d5f13825944af9d019209f338df87172c6b8012dce3044881":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf319a2ef598111826b455194189a27454a0286226eb066e1116f605e0373b37":"0x0","0x1257bbdf5bed452b3eda1d974a9839972d4d54d7fb1cde6a652e653346cc29b8":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x12c033f2252861b1bd15e9b5c71ef1cf26ca53de15eabc3b49e06f596e8755ec":"0x0","0x1348552952ac59b1c2522e84f684e36775420b449eddcdbd28f217183ed58b09":"0x0","0x149026695ebdd2bd6be0a7006aec5d10ddffbe46be181e4468980ea83c004fe9":"0x0","0x14c854a78d51371251661a408306c75d2515b5d509b295a58205e48267082bdc":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x18f06622a1abedc7bb78fcc98b2375188aef6c03b9247beee780b0b095d60285":"0x0","0x201ef5e312d372e2aeac4cf173b46ad2985127c7381f4f9acae5ebbd3a5e3861":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x2215c0abaeffcb5feae8a439b3185f8fba5dd6d97529a56c7609cd41fafdf5f1":"0x1","0x23513200931f98893f46373666c13964c7a821c5b40da7951b921629acf02735":"0x0","0x23f87654b79c6db28828f317e47d0c8deb9eaa2ea4e213fef901836c85036bf3":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x2e4566d865f2e159531492d7643e25e502917762b29082282ab9dfee8fbf54c7":"0x0","0x31fc31c15d389c5908095d314bb8b258352d51e18ac8a2f7fe15f3a0af519145":"0x0","0x3467fdbb447be3074b11c625b56e54d7ab44f3804bef205b07dd436d707d06d5":"0x0","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x62b11ad5f582a5c5d378fb310125b030042554f1","0x3cd80e7291e5f6dffa9af6eb70d47145a8fdd40acb8d09dfd0cf374e8c239b37":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x3f86c4990e663ffa5011ed38824fca68af7e0592eb22f41aebdec0ce84ee672e":"0x0","0x406aa3bf31381c8a323679af48792dfa2e7aa09dd0eb919e307dc4bf84216ff6":"0x0","0x47ce17acd30cc86e021ac7b23be8138ea767f6da503362aac5888a0679270eed":"0x0","0x4a7983c36f64e6df4d467cf706c128c273d30c24bbb172e251a5740624cc0bd3":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x4c42d98041cda7cb7d56b5d04731bd436366eb9f05c30f43671f1d1e2c0b0fa4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x55926eed7087c8cbfa1492f6d367f5e4c14c8d8cd59e2918c37184091369efb1":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x5b20f40cb5e9e634a90df9a72b516c11cc52281a4d1b7b67e672e2fe544ff22f":"0x0","0x6dac3e1cfae338e10c9c2f5000f6256d09afa83708761042001cea734f470ac1":"0x0","0x6defc32a546a6fb1b745bd1bb04e27085e94f01d7ef79587aee2c80853c43a53":"0x0","0x760b245be050a725a39b4fc089ad474a5fd40efa17101e112d30195d590779b4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x7bee59fcac76da32acb23def57eaaf959a4372a4fc180978fbd54f7a4c4b2f3d":"0x0","0x804aee9448e0b539a009ee7c6dd57e686c72e7b182e9622a42922b245a97e61e":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x825f7f8567cfd669c3beab41edff07d4aa51436123deeb0d3623b6a8fdec893c":"0x0","0x8717a3236e6a948df94444f035834fa8f7c5ee663a29f3580f3ef43ab051d6bd":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8a34e37883baf84417a33bb02eec8d1e43e363f617029800ff166614df3f112f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8bd1acdc45b63f1edf5db0b1444f1c4a6f82bf0a5a0a7231c2dd7b76a2b1e35c":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87":"0x0","0x8ed4e9fbdf86edd9f3eb1c8d4fbfc53a2eb863faf4cf5e0d2b307c0b33030091":"0x0","0x8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x90d72780b77edcd0c8daffbac0b21264679e851b734cb090e2b144eb3a28bb98":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x93fc964857984ff804a65eaceac4062669948f2b651ddc6b71373ad142bf45e0":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x9770fa903e700367e0306ab8fd70a2bb4f049417d341a2f8a2409d8d6a2218d1":"0x0","0xb1016fe231c2ed9dba8c95d2658191823b4b9ffa61a7aea530802c6b2ff27c41":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xbe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafe":"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f","0xbe7c5c707db1c91bd2c84880bb1e177b65886d295d9a62df8edfe38f8066cc81":"0x0","0xc3cd64a46de7309013ddb93a16a3024c2e46fb931e4744edf2610fb119f716f5":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xc563f9d3175978a619bae1a8175d3ea4be91d3890345085c5eb16f83b678a3d9":"0x0","0xc5b5cdb7b939f9d661f58f28c37e10cf71d45dacfea2581c88ae4a17aaf55e6e":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xd386775169d9e0716e9b5b08561984726edaa9febd0ca8e5468ecffa112078c7":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xe3b736cdcc6a09d7e3a05ffb63b11f11c91958d861443c3409d3fd863e8217bd":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xe3e5b75e3dff543bfbfe5b494e4e3243b4d9d0b3d794725cea46c28fe6be50e4":"0x0","0xe7d61626cac95282d296ee7ab5958e3e72e32eb959a7cab1d37c0f9d6d69c18a":"0x1a","0xeca5e1ccaa645ce2be97a867a1f8aeeb63ea833aeb009c0df0553b42b30c683f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf08305746cdba1d0eaa65036694838a3db122973267ffc57739d605c320c680a":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf0d566acc03395f71b37890f455d51d93197adf754ea72aba21427dc66b437df":"0x0","0xf230898ba4fe40c52f958d03013d995f822e25a5d4fae43bbdc6e92623cea0bd":"0x0","0xf245a9962043f44f4af98f9952a3bd29d91eb05418e4bb567b9de8f27e239b13":"0x0","0xf2a19ade13962e8675aecf2fbe51913877912f9e48e899806b6e06e82f9a980f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf2fab50b0b53245ddfa1bcfcdf4c73e209d6921dad704d173cf04cbbadc8e346":"0x0","0xfa6f3ee10d719cb3457d10c539ff3d77b8e56852ea62f68b2f9f85ad691ed6b4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xfff3abb219acc6ef4eed6e93a5682023229370196f352cdf3a71a88d881e3487":"0x0"}},"0x11dd97b7ca847dfb6504e61b7b9eb30f55e554a0":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a424740014610090575b600080fd5b610059610054366004610ba9565b6100b3565b6040516100669190610c98565b60405180910390f35b61008261007d366004610cab565b6101ce565b604051908152602001610066565b6100a361009e366004610ba9565b610332565b6040519015158152602001610066565b606060005a6001546040805163b3f9e4cb60e01b81529088013560048201529192506000916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561010a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061012e9190610cd9565b90506101c26101406020880188610cf6565b8260408901358561015460608c018c610d13565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8f018190048102820181019092528d815292508d91508c90819084018382808284376000920191909152506103fb92505050565b925050505b9392505050565b60025460015460405163b3f9e4cb60e01b8152600481018490526000926001600160a01b0390811692169063b3f9e4cb90602401602060405180830381865afa92505050801561023b575060408051601f3d908101601f1916820190925261023891810190610cd9565b60015b156102435790505b6001600160a01b0381163b156102c557604051636ccbae5f60e01b81526004810184905281906001600160a01b03821690636ccbae5f90602401602060405180830381865afa9250505080156102b6575060408051601f3d908101601f191682019092526102b391810190610d5a565b60015b156102c357949350505050565b505b600254604051636ccbae5f60e01b8152600481018590526001600160a01b0390911690636ccbae5f90602401602060405180830381865afa15801561030e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101c79190610d5a565b6001546040805163b3f9e4cb60e01b815290850135600482015260009182916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa158015610383573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103a79190610cd9565b90506103f26103b586610e0b565b8286868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506104d392505050565b95945050505050565b6060600080876001600160a01b0316866104178b8a898961051f565b6040516104249190610eb5565b60006040518083038160008787f1925050503d8060008114610462576040519150601f19603f3d011682016040523d82523d6000602084013e610467565b606091505b509092509050610478603f87610ed1565b5a1161048657610486610ef3565b6104c682826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506105d4565b9998505050505050505050565b60006104e084848461060d565b8015610514575060608401516020908101516001600160e01b031990811660009081529182905260409091205460e01b1615155b949350505050565b50565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036105b15760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526105c982828661074c565b979650505050505050565b606083156105e35750816101c7565b8251156105f35782518084602001fd5b8160405162461bcd60e51b81526004016105a89190610c98565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015610654573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106789190610d5a565b905060006107268660600151805190602001208688602001516040516020016106c69392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156101c2575085516101c2906001600160a01b03168286610935565b60606001600160e01b0319841663b87abc1160e01b036107cd5760008380602001905181019061077c9190610d5a565b9050848184604051602401610792929190610f09565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915291506101c79050565b6001600160e01b0319841663c597407360e01b03610859576000806000858060200190518101906107fe9190610f67565b925092509250868383838860405160240161081c9493929190610fd4565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293506101c792505050565b6001600160e01b031984166311ed383160e31b036108a85760008060008580602001905181019061088a91906110a6565b925092509250868383838860405160240161081c9493929190611157565b6001600160e01b031984166328d55f9b60e21b036101c7576000806000858060200190518101906108d991906110a6565b92509250925086838383886040516024016108f79493929190611157565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293505050509392505050565b60008060006109448585610a77565b9092509050600081600481111561095d5761095d61117c565b14801561097b5750856001600160a01b0316826001600160a01b0316145b1561098b576001925050506101c7565b600080876001600160a01b0316631626ba7e60e01b88886040516024016109b3929190610f09565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516109f19190610eb5565b600060405180830381855afa9150503d8060008114610a2c576040519150601f19603f3d011682016040523d82523d6000602084013e610a31565b606091505b5091509150818015610a44575080516020145b8015610a6b57508051630b135d3f60e11b90610a699083016020908101908401610d5a565b145b98975050505050505050565b6000808251604103610aad5760208301516040840151606085015160001a610aa187828585610abc565b94509450505050610ab5565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610af35750600090506003610ba0565b8460ff16601b14158015610b0b57508460ff16601c14155b15610b1c5750600090506004610ba0565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610b70573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610b9957600060019250925050610ba0565b9150600090505b94509492505050565b600080600060408486031215610bbe57600080fd5b833567ffffffffffffffff80821115610bd657600080fd5b9085019060808288031215610bea57600080fd5b90935060208501359080821115610c0057600080fd5b818601915086601f830112610c1457600080fd5b813581811115610c2357600080fd5b876020828501011115610c3557600080fd5b6020830194508093505050509250925092565b60005b83811015610c63578181015183820152602001610c4b565b50506000910152565b60008151808452610c84816020860160208601610c48565b601f01601f19169290920160200192915050565b6020815260006101c76020830184610c6c565b600060208284031215610cbd57600080fd5b5035919050565b6001600160a01b038116811461051c57600080fd5b600060208284031215610ceb57600080fd5b81516101c781610cc4565b600060208284031215610d0857600080fd5b81356101c781610cc4565b6000808335601e19843603018112610d2a57600080fd5b83018035915067ffffffffffffffff821115610d4557600080fd5b602001915036819003821315610ab557600080fd5b600060208284031215610d6c57600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610dac57610dac610d73565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ddb57610ddb610d73565b604052919050565b600067ffffffffffffffff821115610dfd57610dfd610d73565b50601f01601f191660200190565b600060808236031215610e1d57600080fd5b610e25610d89565b8235610e3081610cc4565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610e6057600080fd5b840136601f820112610e7157600080fd5b8035610e84610e7f82610de3565b610db2565b8181523684838501011115610e9857600080fd5b818484018583013760009181019093015250606082015292915050565b60008251610ec7818460208701610c48565b9190910192915050565b600082610eee57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b8281526040602082015260006105146040830184610c6c565b600082601f830112610f3357600080fd5b8151610f41610e7f82610de3565b818152846020838601011115610f5657600080fd5b610514826020830160208701610c48565b600080600060608486031215610f7c57600080fd5b835167ffffffffffffffff80821115610f9457600080fd5b610fa087838801610f22565b94506020860151915080821115610fb657600080fd5b50610fc386828701610f22565b925050604084015190509250925092565b608081526000610fe76080830187610c6c565b8281036020840152610ff98187610c6c565b905084604084015282810360608401526105c98185610c6c565b600082601f83011261102457600080fd5b8151602067ffffffffffffffff8083111561104157611041610d73565b8260051b611050838201610db2565b938452858101830193838101908886111561106a57600080fd5b84880192505b85831015610a6b578251848111156110885760008081fd5b6110968a87838c0101610f22565b8352509184019190840190611070565b6000806000606084860312156110bb57600080fd5b835167ffffffffffffffff808211156110d357600080fd5b6110df87838801611013565b945060208601519150808211156110f557600080fd5b50610fc386828701611013565b600081518084526020808501808196508360051b8101915082860160005b8581101561114a578284038952611138848351610c6c565b98850198935090840190600101611120565b5091979650505050505050565b60808152600061116a6080830187611102565b8281036020840152610ff98187611102565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x2":"0xf8c26340c1eaea6c7ff1760b25005e1306953572","0x1e74f978992d7d64ddac400bd4aae9eefd60fa0b8456650273f5f50148803323":"0xa3557e6c","0x23c84c23be8f829809d1b1502c647c6c59fb6b2345b163a2ca3e7d4f9855975c":"0x8f69c188","0xa0286316c9d3cb00f4f54a9f1096cefaa1748bb5a5395e7fa1563568ebb3e6c3":"0xb87abc11","0xdc138de224807be243ee38fe9e746cce5d437a256b87be90b80240e0811ad043":"0xc5974073"}},"0x145908bbcfc7b258e4d4d9a586f6e3249ae80216":{"nonce":1,"balance":"0x0","code":"0x3d5c","storage":{}},"0x17cda4e23f7237277952e075b1c48467aabfacc0":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c806368f9dab21461002d575b5f80fd5b61004061003b36600461088b565b610052565b60405190815260200160405180910390f35b5f61006f6040518060400160405280606081526020015f81525090565b61008e61007c858861090d565b61008790601061090d565b82906101d1565b506100d085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250859392505061023a9050565b5061011287878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250859392505061023a9050565b505f610120825f0151610266565b905083156101bc5760408051808201909152606081525f602090910181905282515261014c825f610650565b5061018e88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250869392505061023a9050565b505f5b848110156101ba576101a4835f8461067f565b5082516101b090610266565b9150600101610191565b505b6001600160601b031916979650505050505050565b60408051808201909152606081525f60208201526101f0602083610920565b1561021857610200602083610920565b61020b90602061093f565b610215908361090d565b91505b506020808301829052604080518085525f815283019091019052815b92915050565b60408051808201909152606081525f602082015261025f83845f0151518485516106b2565b9392505050565b5f6040518251602084019350604067ffffffffffffffc060018301160160098282031060018103610298576040820191505b50776745230100efcdab890098badcfe001032547600c3d2e1f06102e8565b5f8383101561025f5750808201519282900392602084101561025f575f1960208590036101000a0119169392505050565b5f5b828110156105ef576102fd8482896102b7565b855261030d8460208301896102b7565b6020860152604081850310600181036103295760808286038701535b506040830381146001810361034657602086018051600887021790525b5060405b60808110156103ce57858101603f19810151603719820151601f19830151600b198401516002911891909218189081027ffffffffefffffffefffffffefffffffefffffffefffffffefffffffefffffffe1663800000009091047c010000000100000001000000010000000100000001000000010000000116179052600c0161034a565b5060805b61014081101561045757858101607f19810151606f19820151603f198301516017198401516004911891909218189081027ffffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffc1663400000009091047c0300000003000000030000000300000003000000030000000300000003161790526018016103d2565b50815f805f5b60508110156105c55760148104801561048d57600181146104b457600281146104d9576003811461050357610524565b600160281b8504600160501b86048118600160781b870416189350635a8279999250610524565b600160281b8504600160781b8604600160501b870418189350636ed9eba19250610524565b600160501b8504600160781b8604818117600160281b8804169116179350638f1bbcdc9250610524565b600160281b8504600160781b8604600160501b87041818935063ca62c1d692505b50601f600160bb1b8504168063ffffffe06001609b1b87041617905080840190508063ffffffff8616019050808301905080600160e01b600484028c015104019050600160a01b8102600160281b860417945050600160501b633fffffff600160521b86041663c00000006604000000000000870416170277ffffffff00ffffffff000000000000ffffffff00ffffffff851617935060018101905061045d565b5050509190910177ffffffff00ffffffff00ffffffff00ffffffff00ffffffff16906040016102ea565b50600160601b63ffffffff821667ffffffff000000006101008404166bffffffff00000000000000006201000085041663ffffffff60601b630100000086041663ffffffff60801b6401000000008704161717171702945050505050919050565b60408051808201909152606081525f602082015282515161025f9084906001600160601b031985166014610798565b60408051808201909152606081525f60208201526106aa84846001600160601b031985166014610798565b949350505050565b60408051808201909152606081525f602082015282518211156106d3575f80fd5b60208501516106e2838661090d565b1115610715576107158561070587602001518786610700919061090d565b610813565b610710906002610952565b610829565b5f808651805187602083010193508088870111156107335787860182525b505050602084015b60208410610773578051825261075260208361090d565b915061075f60208261090d565b905061076c60208561093f565b935061073b565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b60408051808201909152606081525f602082015260208501516107bb858461090d565b11156107cf576107cf85610705868561090d565b5f6001836101000a0390508260200360080284901c93508551838682010185831982511617815250805184870111156108085783860181525b509495945050505050565b5f81831115610823575081610234565b50919050565b815161083583836101d1565b50610840838261023a565b50505050565b5f8083601f840112610856575f80fd5b50813567ffffffffffffffff81111561086d575f80fd5b602083019150836020828501011115610884575f80fd5b9250929050565b5f805f805f6060868803121561089f575f80fd5b853567ffffffffffffffff808211156108b6575f80fd5b6108c289838a01610846565b909750955060208801359150808211156108da575f80fd5b506108e788828901610846565b96999598509660400135949350505050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610234576102346108f9565b5f8261093a57634e487b7160e01b5f52601260045260245ffd5b500690565b81810381811115610234576102346108f9565b8082028115828204841417610234576102346108f956fea164736f6c6343000818000a","storage":{}},"0x19356cc2300833e690088a5a09a2044a3cc2a1e2":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x229c56b7805ab5935a883207f6a6bd5847e65aee":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106102ae5760003560e01c8063906cecc111610175578063b9998a24116100dc578063d547741f11610095578063f2fde38b1161006f578063f2fde38b14610892578063f5243bc4146108b2578063f940e385146108d2578063ffa1ad74146108f257600080fd5b8063d547741f1461083f578063d7db74c71461085f578063ec5273891461087257600080fd5b8063b9998a241461077d578063cc2a9a5b1461079d578063cc2c3fc4146107bd578063ceeb4f50146107dd578063d1f5692c146107fd578063d53913931461081d57600080fd5b8063a3a3f7f61161012e578063a3a3f7f614610690578063a3f4df7e146106b0578063a849d65c146106fd578063aa271e1a1461071d578063b0aa98c71461073d578063b3ab15fb1461075d57600080fd5b8063906cecc1146105e657806391d1485414610606578063983b2d5614610626578063986502751461064657806399e0dd7c1461065b578063a217fddf1461067b57600080fd5b80635b6fa8db11610219578063715018a6116101d2578063715018a61461054b57806371e2a6571461056057806377a2a5891461058057806381c81d35146105a05780638456cb59146105b35780638da5cb5b146105c857600080fd5b80635b6fa8db146104a35780635c975abb146104c35780635cd7e3b3146104d85780635e22cd86146104f85780635fc1964f14610518578063634486da1461053857600080fd5b80633092afd51161026b5780633092afd5146103a857806336568abe146103c85780633f41b614146103e85780633f4ba83a1461042057806351cff8d914610435578063572b6c051461045557600080fd5b806301ffc9a7146102b35780631edb948e146102e857806320c5429b1461030a578063248a9ca31461032a578063268b15ed146103685780632f2ff15d14610388575b600080fd5b3480156102bf57600080fd5b506102d36102ce366004613dc4565b610923565b60405190151581526020015b60405180910390f35b3480156102f457600080fd5b50610308610303366004613e13565b61095a565b005b34801561031657600080fd5b50610308610325366004613e3f565b610b03565b34801561033657600080fd5b5061035a610345366004613e3f565b60009081526097602052604090206001015490565b6040519081526020016102df565b34801561037457600080fd5b50610308610383366004613e99565b610c26565b34801561039457600080fd5b506103086103a3366004613f04565b610cb9565b3480156103b457600080fd5b506103086103c3366004613f34565b610ce3565b3480156103d457600080fd5b506103086103e3366004613f04565b610cf7565b3480156103f457600080fd5b5060c954610408906001600160a01b031681565b6040516001600160a01b0390911681526020016102df565b34801561042c57600080fd5b50610308610d85565b34801561044157600080fd5b50610308610450366004613f34565b610d97565b34801561046157600080fd5b506102d3610470366004613f34565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546001600160a01b0390811691161490565b3480156104af57600080fd5b5060cc54610408906001600160a01b031681565b3480156104cf57600080fd5b506102d3610e37565b3480156104e457600080fd5b506103086104f3366004613fa3565b610e4d565b34801561050457600080fd5b50610308610513366004614062565b6110b1565b34801561052457600080fd5b5061030861053336600461419c565b6112f6565b610308610546366004613f34565b61133e565b34801561055757600080fd5b50610308611401565b34801561056c57600080fd5b5061030861057b36600461419c565b611413565b34801561058c57600080fd5b5060ce54610408906001600160a01b031681565b6103086105ae366004613f34565b61145b565b3480156105bf57600080fd5b506103086114d8565b3480156105d457600080fd5b506033546001600160a01b0316610408565b3480156105f257600080fd5b5061030861060136600461423a565b6114e8565b34801561061257600080fd5b506102d3610621366004613f04565b61156e565b34801561063257600080fd5b50610308610641366004613f34565b611599565b34801561065257600080fd5b506103086115aa565b34801561066757600080fd5b50610308610676366004614295565b6115c4565b34801561068757600080fd5b5061035a600081565b34801561069c57600080fd5b506103086106ab3660046142d6565b6116ab565b3480156106bc57600080fd5b506106f0604051806040016040528060148152602001732aa7299d1026b4b73a34b7339026b0b730b3b2b960611b81525081565b6040516102df919061437c565b34801561070957600080fd5b5060cb54610408906001600160a01b031681565b34801561072957600080fd5b506102d3610738366004613f34565b6116f4565b34801561074957600080fd5b506102d3610758366004613e3f565b61170e565b34801561076957600080fd5b50610308610778366004613f34565b61176c565b34801561078957600080fd5b50610308610798366004613f34565b611796565b3480156107a957600080fd5b506103086107b836600461438f565b6117db565b3480156107c957600080fd5b5060ca54610408906001600160a01b031681565b3480156107e957600080fd5b506103086107f8366004614411565b611cd2565b34801561080957600080fd5b506103086108183660046144c6565b611d76565b34801561082957600080fd5b5061035a600080516020614ef483398151915281565b34801561084b57600080fd5b5061030861085a366004613f04565b611e2d565b61030861086d3660046144fb565b611e52565b34801561087e57600080fd5b5061030861088d366004613e3f565b611fe2565b34801561089e57600080fd5b506103086108ad366004613f34565b612054565b3480156108be57600080fd5b506103086108cd3660046145f0565b612070565b3480156108de57600080fd5b506103086108ed366004614708565b612222565b3480156108fe57600080fd5b506106f060405180604001604052806005815260200164302e352e3160d81b81525081565b60006001600160e01b03198216637965db0b60e01b148061095457506301ffc9a760e01b6001600160e01b03198316145b92915050565b61096561073861239e565b61098a5760405162461bcd60e51b815260040161098190614736565b60405180910390fd5b60c95460405163baef73e960e01b8152600481018390526000916001600160a01b03169063baef73e990602401602060405180830381865afa1580156109d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109f8919061476b565b9050806001600160401b0316600003610a235760405162461bcd60e51b815260040161098190614788565b806001600160401b0316836001600160401b031611610a905760405162461bcd60e51b815260206004820152602360248201527f4d696e74696e674d616e616765723a204558504952595f4e4f545f455854454e60448201526211115160ea1b6064820152608401610981565b60c954604051631fb9763760e11b81526001600160401b0385166004820152602481018490526001600160a01b0390911690633f72ec6e906044015b600060405180830381600087803b158015610ae657600080fd5b505af1158015610afa573d6000803e3d6000fd5b50505050505050565b610b0e61073861239e565b610b2a5760405162461bcd60e51b815260040161098190614736565b60c95460405163baef73e960e01b8152600481018390526001600160a01b039091169063baef73e990602401602060405180830381865afa158015610b73573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b97919061476b565b6001600160401b0316600003610bbf5760405162461bcd60e51b815260040161098190614788565b60c954604051637eee288d60e01b8152306004820152602481018390526001600160a01b0390911690637eee288d90604401600060405180830381600087803b158015610c0b57600080fd5b505af1158015610c1f573d6000803e3d6000fd5b5050505050565b8282828080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250610c6993508592508491506123ad565b610c71610e37565b15610c8e5760405162461bcd60e51b8152600401610981906147cb565b6060610afa610c9b61239e565b610cae88610ca98989612584565b6125b0565b8384600060016126c1565b600082815260976020526040902060010154610cd481612c15565b610cde8383612c26565b505050565b610ceb612cad565b610cf481612d26565b50565b610cff61239e565b6001600160a01b0316816001600160a01b031614610d775760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610981565b610d818282612d3e565b5050565b610d8d612cad565b610d95612dc3565b565b610d9f612cad565b6001600160a01b038116610db257600080fd5b60405147906001600160a01b0383169082156108fc029083906000818181858888f19350505050158015610dea573d6000803e3d6000fd5b50604080516001600160a01b03841681526020810183905260008183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a15050565b600080516020614ed48339815191525460ff1690565b610e5786886147f5565b8051600203610e8c57610e6b61073861239e565b610e875760405162461bcd60e51b8152600401610981906148bf565b610fd1565b6000610e9782612e6b565b60c9549092506001600160a01b0316905063430c2081610eb561239e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015610f00573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f249190614903565b80610fb3575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa158015610f7d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fa19190614903565b8015610fb35750610fb361073861239e565b610fcf5760405162461bcd60e51b815260040161098190614920565b505b610fdb87896147f5565b6000600282511015610fff5760405162461bcd60e51b81526004016109819061496f565b6110546110336000846001865161101691906149ca565b81518110611026576110266149dd565b6020026020010151612ea6565b83600081518110611046576110466149dd565b6020026020010151836123ad565b61105c610e37565b156110795760405162461bcd60e51b8152600401610981906147cb565b6110a38b6110878b8d6147f5565b6110918a8c6147f5565b61109b898b6147f5565b6000896126c1565b505050505050505050505050565b6110bb87896147f5565b80516002036110f0576110cf61073861239e565b6110eb5760405162461bcd60e51b8152600401610981906148bf565b611235565b60006110fb82612e6b565b60c9549092506001600160a01b0316905063430c208161111961239e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015611164573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111889190614903565b80611217575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa1580156111e1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112059190614903565b8015611217575061121761073861239e565b6112335760405162461bcd60e51b815260040161098190614920565b505b61123f888a6147f5565b836002825110156112625760405162461bcd60e51b81526004016109819061496f565b6112796110336000846001865161101691906149ca565b611281610e37565b1561129e5760405162461bcd60e51b8152600401610981906147cb565b60028a146112be5760405162461bcd60e51b8152600401610981906149f3565b6112e78c6112cc8c8e6147f5565b6112d68b8d6147f5565b6112e08a8c6147f5565b89896126c1565b50505050505050505050505050565b6112fe612cad565b60005b8151811015610d815761132c82828151811061131f5761131f6149dd565b6020026020010151612d26565b8061133681614a39565b915050611301565b61134961073861239e565b6113655760405162461bcd60e51b815260040161098190614736565b6001600160a01b0381166113bb5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610981565b6113c481612f5a565b6113cc6115aa565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610d81573d6000803e3d6000fd5b611409612cad565b610d956000612f72565b61141b612cad565b60005b8151811015610d815761144982828151811061143c5761143c6149dd565b6020026020010151612f5a565b8061145381614a39565b91505061141e565b61146661073861239e565b6114825760405162461bcd60e51b815260040161098190614736565b6001600160a01b0381166113c45760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610981565b6114e0612cad565b610d95612fc4565b8282828080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525061152b93508592508491506123ad565b611533610e37565b156115505760405162461bcd60e51b8152600401610981906147cb565b606061156487610cae88610ca98989612584565b5050505050505050565b60009182526097602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6115a1612cad565b610cf481612f5a565b610d95600080516020614ef48339815191526103e361239e565b6115cc612cad565b60c954604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906115fe9085908590600401614a52565b600060405180830381600087803b15801561161857600080fd5b505af115801561162c573d6000803e3d6000fd5b505060cb546001600160a01b0316159150610d8190505760cb54604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906116759085908590600401614a52565b600060405180830381600087803b15801561168f57600080fd5b505af11580156116a3573d6000803e3d6000fd5b505050505050565b6116b3612cad565b610cde83838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525085925061302c915050565b6000610954600080516020614ef48339815191528361156e565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd696020820152908101829052600090611762906060015b6040516020818303038152906040528051906020012090565b5460ff1692915050565b611774612cad565b60ce80546001600160a01b0319166001600160a01b0392909216919091179055565b61179e612cad565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e80546001600160a01b0319166001600160a01b03831617905550565b600054610100900460ff16158080156117fb5750600054600160ff909116105b806118155750303b158015611815575060005460ff166001145b6118785760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610981565b6000805460ff19166001179055801561189b576000805461ff0019166101001790555b60c980546001600160a01b03199081166001600160a01b038a81169190911790925560ca8054821689841617905560cb8054821688841617905560cc8054821687841617905560ce80549091169185169190911790556118f961314c565b611901613183565b61190a826131bc565b6119126131e3565b6040805161036081018252600661032082018181526563727970746f60d01b610340840152825282518084018452818152651dd85b1b195d60d21b602082810191909152808401919091528351808501855260018152600f60fb1b8183015283850152835180850185526003808252621b999d60ea1b82840152606085019190915284518086018652600a815269313637b1b5b1b430b4b760b11b818401526080850152845180860186526007808252663134ba31b7b4b760c91b8285015260a0860191909152855180870187528281526207070760eb1b8185015260c0860152855180870187528281526264616f60e81b8185015260e086015285518087018752828152621e9a5b60ea1b8185015261010086015285518087018752908152663837b63cb3b7b760c91b8184015261012085015284518086018652600b81526a756e73746f707061626c6560a81b81840152610140850152845180860186528381526535b632bb32b960d11b8184015261016085015284518086018652600280825261686960f01b8285015261018086019190915285518087018752848152656b726573757360d01b818501526101a086015285518087018752600580825264616e696d6560d81b828601526101c087019190915286518088018852818152646d616e676160d81b818601526101e087015286518088018852600981526862696e616e6365757360b81b8186015261020087015286518088018852818152647265616c6d60d81b818601526102208701528651808801885291825261676f60f01b82850152610240860191909152855180870187526008815267185b1d1a5b5a5cdd60c21b818501526102608601528551808701875290815264707564677960d81b81840152610280850152845180860186528381526530bab9ba34b760d11b818401526102a08501528451808601865292835265189a5d19d95d60d21b838301526102c08401929092528351808501855291825262706f6760e81b828201526102e083019190915282518084019093526004835263636c617960e01b9083015261030081019190915260005b6019811015611c5c57611c4a828260198110611c3e57611c3e6149dd565b6020020151600061302c565b80611c5481614a39565b915050611c20565b50611c8360405180604001604052806003815260200162636f6d60e81b815250600161302c565b508015610afa576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050505050565b8686868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250611d1593508592508491506123ad565b611d1d610e37565b15611d3a5760405162461bcd60e51b8152600401610981906147cb565b611d698a611d4c8b610ca98c8c612584565b611d56888a6147f5565b611d6087896147f5565b600060016126c1565b5050505050505050505050565b611d7e612cad565b60005b81811015610cde5760c9546001600160a01b03166350960239848484818110611dac57611dac6149dd565b9050602002016020810190611dc19190613f34565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401600060405180830381600087803b158015611e0257600080fd5b505af1158015611e16573d6000803e3d6000fd5b505050508080611e2590614a39565b915050611d81565b600082815260976020526040902060010154611e4881612c15565b610cde8383612d3e565b611e5c898b6147f5565b6000600282511015611e805760405162461bcd60e51b81526004016109819061496f565b611e976110336000846001865161101691906149ca565b611e9f610e37565b15611ebc5760405162461bcd60e51b8152600401610981906147cb565b60028b14611edc5760405162461bcd60e51b8152600401610981906149f3565b611f228d8d8d898960008a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061322392505050565b84341015611f725760405162461bcd60e51b815260206004820181905260248201527f4d696e74696e674d616e616765723a204e4f545f454e4f5547485f46554e44536044820152606401610981565b611f848d8d8d8d8d8d8d8c60006133e3565b843411156112e757611f9461239e565b6001600160a01b03166108fc611faa87346149ca565b6040518115909202916000818181858888f19350505050158015611fd2573d6000803e3d6000fd5b5050505050505050505050505050565b611fea612cad565b611ff38161349f565b61200f5760405162461bcd60e51b815260040161098190614a81565b600081815260cd6020526040812061202691613d76565b60405181907f0aa1aff0f830e739d86baf0e6624d6763da02f7733575e0e463886cd062dea6a90600090a250565b61205c612cad565b612065816134c5565b610cf460008261353b565b61207a8a8c6147f5565b600060028251101561209e5760405162461bcd60e51b81526004016109819061496f565b6120b56110336000846001865161101691906149ca565b6120bd610e37565b156120da5760405162461bcd60e51b8152600401610981906147cb565b60028c146120fa5760405162461bcd60e51b8152600401610981906149f3565b61213f8e8e8e8a898b8a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061322392505050565b856001600160a01b03166323b872dd61215661239e565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152306024820152604481018890526064016020604051808303816000875af11580156121a9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121cd9190614903565b6122115760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610981565b611fd28e8e8e8e8e8e8e8c8e6133e3565b61222a612cad565b6040516370a0823160e01b81523060048201526000906001600160a01b038416906370a0823190602401602060405180830381865afa158015612271573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122959190614ac3565b60405163a9059cbb60e01b81526001600160a01b038481166004830152602482018390529192509084169063a9059cbb906044016020604051808303816000875af11580156122e8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061230c9190614903565b6123505760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610981565b604080516001600160a01b0384811682526020820184905285168183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a1505050565b60006123a8613545565b905090565b6123b68361349f565b6123d25760405162461bcd60e51b815260040161098190614a81565b600083815260cf602052604090205460ff1615156001600160401b03821615151461244e5760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544c445f455850495241424c455f4d496044820152650a69a82a886960d31b6064820152608401610981565b60006124818360408051808201825260008082526020918201528151808301909252825182529182019181019190915290565b9050600a81600001511115612529576124ac6124a0826000600a61358b565b80516020909101512090565b7fb551e0305c8163b812374b8e78b577c77f226f6f10c5ad03e52699578fbc34b8036125295760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544f4b454e5f4c4142454c5f50524f4860448201526512509255115160d21b6064820152608401610981565b612532836135ca565b61257e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a204c4142454c5f494e56414c49440000006044820152606401610981565b50505050565b60608282604051602001612599929190614adc565b604051602081830303815290604052905092915050565b604080516002808252606082810190935260009190816020015b60608152602001906001900390816125ca57905050905082816000815181106125f5576125f56149dd565b602002602001018190525060cd6000858152602001908152602001600020805461261e90614b04565b80601f016020809104026020016040519081016040528092919081815260200182805461264a90614b04565b80156126975780601f1061266c57610100808354040283529160200191612697565b820191906000526020600020905b81548152906001019060200180831161267a57829003601f168201915b5050505050816001815181106126af576126af6149dd565b60209081029190910101529392505050565b60008060006126cf88612e6b565b915091508380156126e1575060028851115b8015612763575060c9546040516331a9108f60e11b8152600481018390526001600160a01b038b8116921690636352211e90602401602060405180830381865afa158015612733573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127579190614b3e565b6001600160a01b031614155b156127c35760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e616765723a20524556455253455f5245434f52445f4e60448201526913d517d0531313d5d15160b21b6064820152608401610981565b60c954604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401602060405180830381865afa15801561280c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128309190614903565b8015612921575060c9546040516331a9108f60e11b81526004810184905230916001600160a01b031690636352211e90602401602060405180830381865afa158015612880573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128a49190614b3e565b6001600160a01b03161480612921575060c95460405163d9548e5360e01b8152600481018490526001600160a01b039091169063d9548e5390602401602060405180830381865afa1580156128fd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129219190614903565b15612a12576001600160401b038516156129a35760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b15801561298a57600080fd5b505af115801561299e573d6000803e3d6000fd5b505050505b60c954604051630fb8df0360e11b81526001600160a01b0390911690631f71be06906129db908c908c908c908c908b90600401614bb0565b600060405180830381600087803b1580156129f557600080fd5b505af1158015612a09573d6000803e3d6000fd5b50505050612c09565b612a1b8261372e565b612a248861378d565b8015612a31575087516002145b8015612a4457506001600160401b038516155b15612b225760ca5488516001600160a01b039091169063c36c2125908b908b90600090612a7357612a736149dd565b602090810291909101015160cc546040516001600160e01b031960e086901b168152612aad9392916001600160a01b031690600401614c0f565b600060405180830381600087803b158015612ac757600080fd5b505af1158015612adb573d6000803e3d6000fd5b50505050600087511115612b1d5760cc54604051633a0deb9d60e21b81526001600160a01b039091169063e837ae74906129db908a908a908790600401614c44565b612c09565b60c95460405163ba5d40b760e01b81526001600160a01b039091169063ba5d40b790612b5a908c908c908c908c908b90600401614bb0565b600060405180830381600087803b158015612b7457600080fd5b505af1158015612b88573d6000803e3d6000fd5b505050506001600160401b03851615612c095760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b158015612bf057600080fd5b505af1158015612c04573d6000803e3d6000fd5b505050505b50979650505050505050565b610cf481612c2161239e565b6137e7565b612c30828261156e565b610d815760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19166001179055612c6961239e565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b612cb561239e565b6001600160a01b0316612cd06033546001600160a01b031690565b6001600160a01b031614610d955760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610981565b610cf4600080516020614ef483398151915282611e2d565b612d48828261156e565b15610d815760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19169055612d7f61239e565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612dcb610e37565b612e0e5760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881393d517d4105554d15160621b6044820152606401610981565b600080516020614ed4833981519152805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa612e4e61239e565b6040516001600160a01b03909116815260200160405180910390a1565b805160009081905b8015612ea057829150612e8c82856110166001856149ca565b925080612e9881614c7a565b915050612e73565b50915091565b60008151600003612ef95760405162461bcd60e51b815260206004820152601b60248201527f4d696e74696e674d616e616765723a204c4142454c5f454d50545900000000006044820152606401610981565b8282604051602001612f0b9190614c91565b60405160208183030381529060405280519060200120604051602001612f3b929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b610cf4600080516020614ef48339815191528261353b565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b612fcc610e37565b15612fe95760405162461bcd60e51b8152600401610981906147cb565b600080516020614ed4833981519152805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258612e4e61239e565b6000613039600084612ea6565b600081815260cd602052604090209091506130548482614cf3565b50600081815260cf602052604090819020805460ff19168415151790555181907f4fce6f6e172b04eaa80325d8e3b0180a34945000f3e214605039e8420fdf8980906130a190869061437c565b60405180910390a260c954604051634f558e7960e01b8152600481018390526001600160a01b0390911690634f558e7990602401602060405180830381865afa1580156130f2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131169190614903565b610cde5760c9546040516307befae360e51b81526001600160a01b039091169063f7df5c6090610acc9084908790600401614db2565b600054610100900460ff166131735760405162461bcd60e51b815260040161098190614dd3565b610d9561317e61239e565b612f72565b600054610100900460ff166131aa5760405162461bcd60e51b815260040161098190614dd3565b610d9560006131b761239e565b61353b565b600054610100900460ff1661179e5760405162461bcd60e51b815260040161098190614dd3565b600054610100900460ff1661320a5760405162461bcd60e51b815260040161098190614dd3565b600080516020614ed4833981519152805460ff19169055565b600061323761323287896147f5565b612e6b565b506040516bffffffffffffffffffffffff1930606090811b821660208401524660348401528b811b82166054840152606883018490526001600160c01b031960c08a901b1660888401526090830188905286901b1660b082015290915060009061331390849061330d9060c401604051602081830303815290604052805190602001206040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c8101829052600090605c01604051602081830303815290604052805190602001209050919050565b9061384b565b905061331e816116f4565b6133765760405162461bcd60e51b8152602060048201526024808201527f4d696e74696e674d616e616765723a205349474e45525f49535f4e4f545f4d49604482015263272a22a960e11b6064820152608401610981565b42866001600160401b0316116133d85760405162461bcd60e51b815260206004820152602160248201527f4d696e74696e674d616e616765723a20455850495245445f5349474e415455526044820152604560f81b6064820152608401610981565b505050505050505050565b600061342a8a6133f38a8c6147f5565b6133fd898b6147f5565b613407888a6147f5565b60008f6001600160a01b031661341b61239e565b6001600160a01b0316146126c1565b9050896001600160a01b031661343e61239e565b6001600160a01b0316827fa545b6fd3355e8d57f8c8147bafe740545bd3ea1f94bef2576a6d532a7c3b605868660405161348b9291909182526001600160a01b0316602082015260400190565b60405180910390a450505050505050505050565b600081815260cd6020526040812080548291906134bb90614b04565b9050119050919050565b6134cd612cad565b6001600160a01b0381166135325760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610981565b610cf481612f72565b610d818282612c26565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546000906001600160a01b03163303613586575060331936013560601c90565b503390565b604080518082019091526000808252602082015260405180604001604052808381526020018486602001516135c09190614e1e565b9052949350505050565b600081516000036135dd57506000919050565b60208201805160f81c603081108015906135fb575060398160ff1611155b15801561361d575060618160ff161015801561361b5750607a8160ff1611155b155b1561362c575060009392505050565b8351600181111561369a5761364e836136466001846149ca565b015160f81c90565b915060308260ff1610158015613668575060398260ff1611155b15801561368a575060618260ff16101580156136885750607a8260ff1611155b155b1561369a57506000949350505050565b60015b6136a86001836149ca565b811015613722578381015160f81c9250602d83148015906136de575060308360ff16101580156136dc575060398360ff1611155b155b80156136ff575060618360ff16101580156136fd5750607a8360ff1611155b155b156137105750600095945050505050565b8061371a81614a39565b91505061369d565b50600195945050505050565b6137378161170e565b156137845760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a20544f4b454e5f424c4f434b45440000006044820152606401610981565b610cf48161386f565b6000806137a46000846001865161101691906149ca565b60ca549091506001600160a01b0316158015906137e05750807f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f145b9392505050565b6137f1828261156e565b610d8157613809816001600160a01b031660146138f3565b6138148360206138f3565b604051602001613825929190614e31565b60408051601f198184030181529082905262461bcd60e51b82526109819160040161437c565b600080600061385a8585613a8e565b9150915061386781613ad3565b509392505050565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd6960208201529081018290526001906138ae90606001611749565b805460ff19169115159190911790556040518181527f2ce5d9351b1d590d5a066db0d2dc7602d55f092506a83a7ee8c4d78ee357d75a9060200160405180910390a150565b60606000613902836002614ea6565b61390d906002614e1e565b6001600160401b0381111561392457613924614133565b6040519080825280601f01601f19166020018201604052801561394e576020820181803683370190505b509050600360fc1b81600081518110613969576139696149dd565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110613998576139986149dd565b60200101906001600160f81b031916908160001a90535060006139bc846002614ea6565b6139c7906001614e1e565b90505b6001811115613a3f576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106139fb576139fb6149dd565b1a60f81b828281518110613a1157613a116149dd565b60200101906001600160f81b031916908160001a90535060049490941c93613a3881614c7a565b90506139ca565b5083156137e05760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610981565b6000808251604103613ac45760208301516040840151606085015160001a613ab887828585613c89565b94509450505050613acc565b506000905060025b9250929050565b6000816004811115613ae757613ae7614ebd565b03613aef5750565b6001816004811115613b0357613b03614ebd565b03613b505760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152606401610981565b6002816004811115613b6457613b64614ebd565b03613bb15760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610981565b6003816004811115613bc557613bc5614ebd565b03613c1d5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b6064820152608401610981565b6004816004811115613c3157613c31614ebd565b03610cf45760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c604482015261756560f01b6064820152608401610981565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613cc05750600090506003613d6d565b8460ff16601b14158015613cd857508460ff16601c14155b15613ce95750600090506004613d6d565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613d3d573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613d6657600060019250925050613d6d565b9150600090505b94509492505050565b508054613d8290614b04565b6000825580601f10613d92575050565b601f016020900490600052602060002090810190610cf491905b80821115613dc05760008155600101613dac565b5090565b600060208284031215613dd657600080fd5b81356001600160e01b0319811681146137e057600080fd5b6001600160401b0381168114610cf457600080fd5b8035613e0e81613dee565b919050565b60008060408385031215613e2657600080fd5b8235613e3181613dee565b946020939093013593505050565b600060208284031215613e5157600080fd5b5035919050565b60008083601f840112613e6a57600080fd5b5081356001600160401b03811115613e8157600080fd5b602083019150836020828501011115613acc57600080fd5b600080600060408486031215613eae57600080fd5b8335925060208401356001600160401b03811115613ecb57600080fd5b613ed786828701613e58565b9497909650939450505050565b6001600160a01b0381168114610cf457600080fd5b8035613e0e81613ee4565b60008060408385031215613f1757600080fd5b823591506020830135613f2981613ee4565b809150509250929050565b600060208284031215613f4657600080fd5b81356137e081613ee4565b60008083601f840112613f6357600080fd5b5081356001600160401b03811115613f7a57600080fd5b6020830191508360208260051b8501011115613acc57600080fd5b8015158114610cf457600080fd5b60008060008060008060008060a0898b031215613fbf57600080fd5b8835613fca81613ee4565b975060208901356001600160401b0380821115613fe657600080fd5b613ff28c838d01613f51565b909950975060408b013591508082111561400b57600080fd5b6140178c838d01613f51565b909750955060608b013591508082111561403057600080fd5b5061403d8b828c01613f51565b909450925050608089013561405181613f95565b809150509295985092959890939650565b600080600080600080600080600060c08a8c03121561408057600080fd5b893561408b81613ee4565b985060208a01356001600160401b03808211156140a757600080fd5b6140b38d838e01613f51565b909a50985060408c01359150808211156140cc57600080fd5b6140d88d838e01613f51565b909850965060608c01359150808211156140f157600080fd5b506140fe8c828d01613f51565b90955093505060808a013561411281613dee565b915060a08a013561412281613f95565b809150509295985092959850929598565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561417157614171614133565b604052919050565b60006001600160401b0382111561419257614192614133565b5060051b60200190565b600060208083850312156141af57600080fd5b82356001600160401b038111156141c557600080fd5b8301601f810185136141d657600080fd5b80356141e96141e482614179565b614149565b81815260059190911b8201830190838101908783111561420857600080fd5b928401925b8284101561422f57833561422081613ee4565b8252928401929084019061420d565b979650505050505050565b6000806000806060858703121561425057600080fd5b843561425b81613ee4565b93506020850135925060408501356001600160401b0381111561427d57600080fd5b61428987828801613e58565b95989497509550505050565b600080602083850312156142a857600080fd5b82356001600160401b038111156142be57600080fd5b6142ca85828601613e58565b90969095509350505050565b6000806000604084860312156142eb57600080fd5b83356001600160401b0381111561430157600080fd5b61430d86828701613e58565b909450925050602084013561432181613f95565b809150509250925092565b60005b8381101561434757818101518382015260200161432f565b50506000910152565b6000815180845261436881602086016020860161432c565b601f01601f19169290920160200192915050565b6020815260006137e06020830184614350565b60008060008060008060c087890312156143a857600080fd5b86356143b381613ee4565b955060208701356143c381613ee4565b945060408701356143d381613ee4565b935060608701356143e381613ee4565b925060808701356143f381613ee4565b915060a087013561440381613ee4565b809150509295509295509295565b60008060008060008060008060a0898b03121561442d57600080fd5b883561443881613ee4565b97506020890135965060408901356001600160401b038082111561445b57600080fd5b6144678c838d01613e58565b909850965060608b013591508082111561448057600080fd5b61448c8c838d01613f51565b909650945060808b01359150808211156144a557600080fd5b506144b28b828c01613f51565b999c989b5096995094979396929594505050565b600080602083850312156144d957600080fd5b82356001600160401b038111156144ef57600080fd5b6142ca85828601613f51565b600080600080600080600080600080600060e08c8e03121561451c57600080fd5b6145258c613ef9565b9a506001600160401b038060208e0135111561454057600080fd5b6145508e60208f01358f01613f51565b909b50995060408d013581101561456657600080fd5b6145768e60408f01358f01613f51565b909950975060608d013581101561458c57600080fd5b61459c8e60608f01358f01613f51565b90975095506145ad60808e01613e03565b945060a08d013593508060c08e013511156145c757600080fd5b506145d88d60c08e01358e01613e58565b81935080925050509295989b509295989b9093969950565b6000806000806000806000806000806000806101008d8f03121561461357600080fd5b61461c8d613ef9565b9b506001600160401b0360208e0135111561463657600080fd5b6146468e60208f01358f01613f51565b909b5099506001600160401b0360408e0135111561466357600080fd5b6146738e60408f01358f01613f51565b90995097506001600160401b0360608e0135111561469057600080fd5b6146a08e60608f01358f01613f51565b90975095506146b160808e01613e03565b94506146bf60a08e01613ef9565b935060c08d013592506001600160401b0360e08e013511156146e057600080fd5b6146f08e60e08f01358f01613e58565b81935080925050509295989b509295989b509295989b565b6000806040838503121561471b57600080fd5b823561472681613ee4565b91506020830135613f2981613ee4565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b60006020828403121561477d57600080fd5b81516137e081613dee565b60208082526023908201527f4d696e74696e674d616e616765723a20544f4b454e5f4e4f545f455850495241604082015262424c4560e81b606082015260800190565b60208082526010908201526f14185d5cd8589b194e8814105554d15160821b604082015260600190565b60006148036141e484614179565b80848252602080830192508560051b85013681111561482157600080fd5b855b818110156148b35780356001600160401b03808211156148435760008081fd5b90880190601f36818401126148585760008081fd5b82358281111561486a5761486a614133565b61487b818301601f19168801614149565b9250808352368782860101111561489457600091508182fd5b8087850188850137600090830187015250865250938201938201614823565b50919695505050505050565b60208082526024908201527f4d696e74696e674d616e616765723a2043414c4c45525f49535f4e4f545f4d49604082015263272a22a960e11b606082015260800190565b60006020828403121561491557600080fd5b81516137e081613f95565b6020808252602f908201527f4d696e74696e674d616e616765723a2053454e4445525f49535f4e4f545f415060408201526e282927ab22a22fa7a92fa7aba722a960891b606082015260800190565b60208082526025908201527f4d696e74696e674d616e616765723a204c4142454c535f4c454e4754485f42456040820152642627abaf9960d91b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b81810381811115610954576109546149b4565b634e487b7160e01b600052603260045260246000fd5b60208082526026908201527f4d696e74696e674d616e616765723a20535542444f4d41494e535f4e4f545f41604082015265131313d5d15160d21b606082015260800190565b600060018201614a4b57614a4b6149b4565b5060010190565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b60208082526022908201527f4d696e74696e674d616e616765723a20544c445f4e4f545f5245474953544552604082015261115160f21b606082015260800190565b600060208284031215614ad557600080fd5b5051919050565b6b756e732d646576746573742d60a01b81528183600c83013760009101600c01908152919050565b600181811c90821680614b1857607f821691505b602082108103614b3857634e487b7160e01b600052602260045260246000fd5b50919050565b600060208284031215614b5057600080fd5b81516137e081613ee4565b600081518084526020808501808196508360051b8101915082860160005b85811015614ba3578284038952614b91848351614350565b98850198935090840190600101614b79565b5091979650505050505050565b6001600160a01b038616815260a060208201819052600090614bd490830187614b5b565b8281036040840152614be68187614b5b565b90508281036060840152614bfa8186614b5b565b91505082151560808301529695505050505050565b600060018060a01b03808616835260606020840152614c316060840186614350565b9150808416604084015250949350505050565b606081526000614c576060830186614b5b565b8281036020840152614c698186614b5b565b915050826040830152949350505050565b600081614c8957614c896149b4565b506000190190565b60008251614ca381846020870161432c565b9190910192915050565b601f821115610cde57600081815260208120601f850160051c81016020861015614cd45750805b601f850160051c820191505b818110156116a357828155600101614ce0565b81516001600160401b03811115614d0c57614d0c614133565b614d2081614d1a8454614b04565b84614cad565b602080601f831160018114614d555760008415614d3d5750858301515b600019600386901b1c1916600185901b1785556116a3565b600085815260208120601f198616915b82811015614d8457888601518255948401946001909101908401614d65565b5085821015614da25787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b828152604060208201526000614dcb6040830184614350565b949350505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b80820180821115610954576109546149b4565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351614e6981601785016020880161432c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351614e9a81602884016020880161432c565b01602801949350505050565b8082028115828204841417610954576109546149b4565b634e487b7160e01b600052602160045260246000fdfe5496787fc1ebdfeba375028c1865f13fbb1d63c0caa356ccc1b29a80f3ebd6229f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000811000a","storage":{}},"0x24f45688d421f46cca60734bdc648ad192db0f2e":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0x1","0x97":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x12d":"0x0","0x15f":"0x5cc819c9915eadfcebd76952b8c1bc36cadd7376","0x13cf90498be59d359caa5b6092b365feab4610605d7107d1f05f8e94ac955652":"0x1","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x54563a9e1cd2dcbd0bca90d3cfa4a647e02c404a","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106102295760003560e01c8063886a69ba11610123578063cf1d21c0116100ab578063e2c49de11161006f578063e2c49de11461091d578063e3dec8fb14610932578063e43009a6146109c8578063e66f9603146109fb578063ea60c7c414610a2557610240565b8063cf1d21c014610844578063d233a3c714610859578063d547741f1461089c578063d81c8e52146108d5578063dc993a23146108ea57610240565b8063a217fddf116100f2578063a217fddf1461078a578063b4b4f63e1461079f578063bc08452b146107b4578063c4d66de8146107e7578063ca15c8731461081a57610240565b8063886a69ba146106c95780639010d07c146106de5780639173b1391461070e57806391d148541461075157610240565b80633138b6f1116101b1578063568b80b511610175578063568b80b5146105fb578063607f2d4214610610578063630fcbfb1461064e5780636cb136b0146106635780636e86b7701461069657610240565b80633138b6f1146104f55780633408e4701461050a57806336568abe1461051f5780633805550f146105585780634faa8a26146105d557610240565b80630f7e5970116101f85780630f7e59701461042357806320379ee514610438578063248a9ca31461045f5780632d0335ab146104895780632f2ff15d146104bc57610240565b806304967702146102455780630c3894bb146102765780630c53c51c146102b15780630c598220146103ea57610240565b366102405761023e610239610a58565b610a68565b005b600080fd5b34801561025157600080fd5b5061025a610b69565b604080516001600160a01b039092168252519081900360200190f35b34801561028257600080fd5b5061023e6004803603604081101561029957600080fd5b506001600160a01b0381358116916020013516610b78565b610375600480360360a08110156102c757600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156102f257600080fd5b82018360208201111561030457600080fd5b8035906020019184600183028401116401000000008311171561032657600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550508235935050506020810135906040013560ff16610cc9565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103af578181015183820152602001610397565b50505050905090810190601f1680156103dc5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156103f657600080fd5b5061023e6004803603604081101561040d57600080fd5b50803590602001356001600160a01b0316610fcc565b34801561042f57600080fd5b506103756110b9565b34801561044457600080fd5b5061044d6110d6565b60408051918252519081900360200190f35b34801561046b57600080fd5b5061044d6004803603602081101561048257600080fd5b50356110dc565b34801561049557600080fd5b5061044d600480360360208110156104ac57600080fd5b50356001600160a01b03166110f4565b3480156104c857600080fd5b5061023e600480360360408110156104df57600080fd5b50803590602001356001600160a01b031661110f565b34801561050157600080fd5b5061025a611176565b34801561051657600080fd5b5061044d611185565b34801561052b57600080fd5b5061023e6004803603604081101561054257600080fd5b50803590602001356001600160a01b0316611189565b34801561056457600080fd5b5061023e6004803603602081101561057b57600080fd5b81019060208101813564010000000081111561059657600080fd5b8201836020820111156105a857600080fd5b803590602001918460018302840111640100000000831117156105ca57600080fd5b5090925090506111ea565b61023e600480360360208110156105eb57600080fd5b50356001600160a01b03166116ec565b34801561060757600080fd5b5061044d6116f8565b34801561061c57600080fd5b5061063a6004803603602081101561063357600080fd5b503561171b565b604080519115158252519081900360200190f35b34801561065a57600080fd5b5061023e611730565b34801561066f57600080fd5b5061023e6004803603602081101561068657600080fd5b50356001600160a01b03166117d6565b3480156106a257600080fd5b5061025a600480360360208110156106b957600080fd5b50356001600160a01b031661186e565b3480156106d557600080fd5b5061044d611889565b3480156106ea57600080fd5b5061025a6004803603604081101561070157600080fd5b50803590602001356118aa565b34801561071a57600080fd5b5061023e6004803603606081101561073157600080fd5b506001600160a01b038135811691602081013590911690604001356118d1565b34801561075d57600080fd5b5061063a6004803603604081101561077457600080fd5b50803590602001356001600160a01b0316611a06565b34801561079657600080fd5b5061044d611a24565b3480156107ab57600080fd5b5061023e611a29565b3480156107c057600080fd5b5061023e600480360360208110156107d757600080fd5b50356001600160a01b0316611acf565b3480156107f357600080fd5b5061023e6004803603602081101561080a57600080fd5b50356001600160a01b0316611b67565b34801561082657600080fd5b5061044d6004803603602081101561083d57600080fd5b5035611c57565b34801561085057600080fd5b5061025a611c6e565b34801561086557600080fd5b5061023e6004803603606081101561087c57600080fd5b506001600160a01b03813581169160208101359091169060400135611c86565b3480156108a857600080fd5b5061023e600480360360408110156108bf57600080fd5b50803590602001356001600160a01b0316611de8565b3480156108e157600080fd5b5061044d611e41565b3480156108f657600080fd5b5061023e6004803603602081101561090d57600080fd5b50356001600160a01b0316611e60565b34801561092957600080fd5b5061025a611f3d565b34801561093e57600080fd5b5061023e6004803603606081101561095557600080fd5b6001600160a01b03823581169260208101359091169181019060608101604082013564010000000081111561098957600080fd5b82018360208201111561099b57600080fd5b803590602001918460018302840111640100000000831117156109bd57600080fd5b509092509050611f4c565b3480156109d457600080fd5b5061044d600480360360208110156109eb57600080fd5b50356001600160a01b0316611fe9565b348015610a0757600080fd5b5061025a60048036036020811015610a1e57600080fd5b5035611ffb565b348015610a3157600080fd5b5061025a60048036036020811015610a4857600080fd5b50356001600160a01b0316612016565b6000610a62612031565b90505b90565b604080513460208083019190915282518083039091018152908201909152610aa58273eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee8361208e565b7fa1829a9003092132f585b6ccdd167c19fe9774dbdea4260287e8a8e8ca8185d7546000908152600260205260408082205490516001600160a01b039091169034908381818185875af1925050503d8060008114610b1f576040519150601f19603f3d011682016040523d82523d6000602084013e610b24565b606091505b5050905080610b645760405162461bcd60e51b815260040180806020018281038252602781526020018061419d6027913960400191505060405180910390fd5b505050565b6009546001600160a01b031681565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020610ba981610ba4610a58565b611a06565b600a90610c495760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b820191906000526020600020905b815481529060010190602001808311610c1d57829003601f168201915b50509250505060405180910390fd5b506001600160a01b03808416600081815260036020908152604080832080546001600160a01b0319908116909155948716808452600483528184208054909616909555838352600590915280822082905551909291907f9e651a8866fbea043e911d816ec254b0e3c992c06fff32d605e72362d6023bd9908490a4505050565b6060610cd3613e2a565b50604080516060810182526001600160a01b0388166000818152600c602090815290849020548352820152908101869052610d118782878787612508565b610d4c5760405162461bcd60e51b81526004018080602001828103825260218152602001806141c46021913960400191505060405180910390fd5b6001600160a01b0387166000908152600c6020526040902054610d7690600163ffffffff6125e516565b6001600160a01b0388166000818152600c602090815260408083209490945583519283523383820181905260609484018581528b51958501959095528a517f5845892132946850460bff5a0083f71031bc5bf9aadcd40f1de79423eac9b10b958d9592948d94919260808501928601918190849084905b83811015610e05578181015183820152602001610ded565b50505050905090810190601f168015610e325780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a160006060306001600160a01b0316888a6040516020018083805190602001908083835b60208310610e835780518252601f199092019160209182019101610e64565b6001836020036101000a038019825116818451168082178552505050505050905001826001600160a01b03166001600160a01b031660601b8152601401925050506040516020818303038152906040526040518082805190602001908083835b60208310610f025780518252601f199092019160209182019101610ee3565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610f64576040519150601f19603f3d011682016040523d82523d6000602084013e610f69565b606091505b509150915081610fc0576040805162461bcd60e51b815260206004820152601c60248201527f46756e6374696f6e2063616c6c206e6f74207375636365737366756c00000000604482015290519081900360640190fd5b98975050505050505050565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020610ff881610ba4610a58565b600a9061105e5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5060008381526002602052604080822080546001600160a01b0319166001600160a01b0386169081179091559051909185917f8643692ae1c12ec91fa18e50b82ed93fa314f580999a236824db6de9ae0d839b9190a3505050565b604051806040016040528060018152602001603160f81b81525081565b600b5490565b6000818152600160205260409020600201545b919050565b6001600160a01b03166000908152600c602052604090205490565b60008281526001602052604090206002015461112d90610ba4610a58565b6111685760405162461bcd60e51b815260040180806020018281038252602f815260200180613f78602f913960400191505060405180910390fd5b611172828261263f565b5050565b6008546001600160a01b031690565b4690565b611191610a58565b6001600160a01b0316816001600160a01b0316146111e05760405162461bcd60e51b815260040180806020018281038252602f815260200180614286602f913960400191505060405180910390fd5b61117282826126ae565b606061123361122e84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061271d92505050565b612798565b905060006112548260028151811061124757fe5b602002602001015161291a565b6112796112748460088151811061126757fe5b6020026020010151612a62565b612b2c565b6112898460098151811061124757fe5b6040516020018084815260200183805190602001908083835b602083106112c15780518252601f1990920191602091820191016112a2565b51815160209384036101000a6000190180199092169116179052920193845250604080518085038152938201815283519382019390932060008181526006909252929020549194505060ff1615915061134d90505760405162461bcd60e51b81526004018080602001828103825260288152602001806142096028913960400191505060405180910390fd5b6000818152600660208190526040909120805460ff19166001179055825160609161138a9161122e9161138591879190811061126757fe5b61271d565b9050611394613e54565b6113b1826003815181106113a457fe5b6020026020010151612798565b6113c18560098151811061124757fe5b815181106113cb57fe5b6020026020010151905060006113fc6113e383612798565b6000815181106113ef57fe5b6020026020010151612c9f565b6001600160a01b0380821660009081526004602052604090205491925016806114565760405162461bcd60e51b81526004018080602001828103825260228152602001806140af6022913960400191505060405180910390fd5b6001600160a01b03808216600090815260056020908152604080832054835260029091529020548751911690611493908890600890811061124757fe5b63ffffffff1916156114d65760405162461bcd60e51b815260040180806020018281038252602581526020018061408a6025913960400191505060405180910390fd5b61151e6114e98860068151811061126757fe5b6114f98960088151811061126757fe5b6115098a60078151811061126757fe5b6115198b60058151811061124757fe5b612d2f565b61156f576040805162461bcd60e51b815260206004820152601f60248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f50524f4f4600604482015290519081900360640190fd5b6115dd6115828860028151811061124757fe5b6115928960038151811061124757fe5b6115a28a60048151811061124757fe5b60001b6115b58b60058151811061124757fe5b60001b6115c88c60008151811061124757fe5b6115d88d60018151811061126757fe5b612f76565b50806001600160a01b0316638274664f6115f5610a58565b846115ff886130bf565b6040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561167b578181015183820152602001611663565b50505050905090810190601f1680156116a85780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b1580156116c957600080fd5b505af11580156116dd573d6000803e3d6000fd5b50505050505050505050505050565b6116f581610a68565b50565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b01902081565b60066020526000908152604090205460ff1681565b600061173e81610ba4610a58565b600a906117a45760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506116f56040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b81525061312d565b60006117e481610ba4610a58565b600a9061184a5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5050600780546001600160a01b0319166001600160a01b0392909216919091179055565b6004602052600090815260409020546001600160a01b031681565b604080516826a0a82faa27a5a2a760b91b8152905190819003600901902081565b60008281526001602052604081206118c8908363ffffffff6131e916565b90505b92915050565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b0190206118fd81610ba4610a58565b600a906119635760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b03848116600090815260036020526040902054161580156119a457506001600160a01b0383811660009081526004602052604090205416155b6119f5576040805162461bcd60e51b815260206004820181905260248201527f526f6f74436861696e4d616e616765723a20414c52454144595f4d4150504544604482015290519081900360640190fd5b611a008484846131f5565b50505050565b60008281526001602052604081206118c8908363ffffffff61348416565b600081565b6000611a3781610ba4610a58565b600a90611a9d5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506116f56040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613499565b6000611add81610ba4610a58565b600a90611b435760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5050600880546001600160a01b0319166001600160a01b0392909216919091179055565b60005460ff1615611bb0576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b611be16040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613537565b611c126040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613499565b611c1d600082611168565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020611c479082611168565b506000805460ff19166001179055565b60008181526001602052604081206118cb90613589565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020611cb281610ba4610a58565b600a90611d185760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b0380851660009081526003602081815260408084205488861685526004835281852054861680865293909252909220549183169290911615611d8e576001600160a01b038116600090815260036020908152604080832080546001600160a01b031916905560059091528120555b6001600160a01b038281166000908152600460205260409020541615611dd5576001600160a01b038216600090815260046020526040902080546001600160a01b03191690555b611de08686866131f5565b505050505050565b600082815260016020526040902060020154611e0690610ba4610a58565b6111e05760405162461bcd60e51b81526004018080602001828103825260308152602001806140f96030913960400191505060405180910390fd5b604080516611115413d4d25560ca1b8152905190819003600701902081565b6000611e6e81610ba4610a58565b600a90611ed45760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b038216611f1a5760405162461bcd60e51b815260040180806020018281038252602d815260200180613fa7602d913960400191505060405180910390fd5b50600980546001600160a01b0319166001600160a01b0392909216919091179055565b6007546001600160a01b031690565b6001600160a01b03831673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee1415611fa85760405162461bcd60e51b81526004018080602001828103825260248152602001806141e56024913960400191505060405180910390fd5b611a00848484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061208e92505050565b60056020526000908152604090205481565b6002602052600090815260409020546001600160a01b031681565b6003602052600090815260409020546001600160a01b031681565b6000333014156120895760606000368080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505050503601516001600160a01b03169150610a659050565b503390565b6001600160a01b03808316600090815260056020908152604080832054600390925290912054909116158015906120c457508015155b6120ff5760405162461bcd60e51b81526004018080602001828103825260228152602001806140af6022913960400191505060405180910390fd5b6000818152600260205260409020546001600160a01b0316806121535760405162461bcd60e51b81526004018080602001828103825260248152602001806140176024913960400191505060405180910390fd5b6001600160a01b0385166121ae576040805162461bcd60e51b815260206004820152601e60248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f555345520000604482015290519081900360640190fd5b806001600160a01b031663e375b64e6121c5610a58565b8787876040518563ffffffff1660e01b815260040180856001600160a01b03166001600160a01b03168152602001846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561225c578181015183820152602001612244565b50505050905090810190601f1680156122895780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b1580156122ab57600080fd5b505af11580156122bf573d6000803e3d6000fd5b50505050606085858560405160200180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015612338578181015183820152602001612320565b50505050905090810190601f1680156123655780820380516001836020036101000a031916815260200191505b5060408051808303601f19018152828252600780546009546611115413d4d25560ca1b865284519586900390920185206020808701828152878701968752855160608901528551959d506001600160a01b039384169c506316f198319b5092909316985096508a955093608001919085019080838360005b838110156123f55781810151838201526020016123dd565b50505050905090810190601f1680156124225780820380516001836020036101000a031916815260200191505b5093505050506040516020818303038152906040526040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561249b578181015183820152602001612483565b50505050905090810190601f1680156124c85780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b1580156124e857600080fd5b505af11580156124fc573d6000803e3d6000fd5b50505050505050505050565b60006001600160a01b03861661254f5760405162461bcd60e51b81526004018080602001828103825260258152602001806141296025913960400191505060405180910390fd5b600161256261255d87613594565b613620565b83868660405160008152602001604052604051808581526020018460ff1660ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa1580156125bc573d6000803e3d6000fd5b505050602060405103516001600160a01b0316866001600160a01b031614905095945050505050565b6000828201838110156118c8576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600082815260016020526040902061265d908263ffffffff61366c16565b156111725761266a610a58565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b60008281526001602052604090206126cc908263ffffffff61368116565b15611172576126d9610a58565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612725613e54565b600082511161277b576040805162461bcd60e51b815260206004820152601f60248201527f524c505265616465723a20494e56414c49445f42595445535f4c454e47544800604482015290519081900360640190fd5b506040805180820190915281518152602082810190820152919050565b60606127a382613696565b6127f4576040805162461bcd60e51b815260206004820152601860248201527f524c505265616465723a204954454d5f4e4f545f4c4953540000000000000000604482015290519081900360640190fd5b60006127ff836136c2565b905060608167ffffffffffffffff8111801561281a57600080fd5b5060405190808252806020026020018201604052801561285457816020015b612841613e54565b8152602001906001900390816128395790505b5090506000612866856020015161374e565b855190915081146128a85760405162461bcd60e51b81526004018080602001828103825260278152602001806142316027913960400191505060405180910390fd5b60006128b786602001516137e2565b60208701510190506000805b8581101561290e576128d48361374e565b91506040518060400160405280838152602001848152508582815181106128f757fe5b6020908102919091010152918101916001016128c3565b50929695505050505050565b600061292582613696565b15612977576040805162461bcd60e51b815260206004820181905260248201527f524c505265616465723a204445434f44494e475f4c4953545f41535f55494e54604482015290519081900360640190fd5b8151602110156129ce576040805162461bcd60e51b815260206004820152601e60248201527f524c505265616465723a20494e56414c49445f55494e545f4c454e4754480000604482015290519081900360640190fd5b60006129dd836020015161374e565b83519091508114612a1f5760405162461bcd60e51b81526004018080602001828103825260278152602001806142b56027913960400191505060405180910390fd5b6000612a2e84602001516137e2565b84516020808701518301805193945091849003929190831015612a5857826020036101000a820491505b5095945050505050565b60606000612a73836020015161374e565b83519091508114612ab55760405162461bcd60e51b81526004018080602001828103825260288152602001806140d16028913960400191505060405180910390fd5b6000612ac484602001516137e2565b845190915081900360608167ffffffffffffffff81118015612ae557600080fd5b506040519080825280601f01601f191660200182016040528015612b10576020820181803683370190505b5090506000816020019050612a58848860200151018285613845565b604080516020810190915260008152815160609190156118cb57600080612b54600086613890565b60f81c90506001811480612b6b57508060ff166003145b15612bfa57600185516002020367ffffffffffffffff81118015612b8e57600080fd5b506040519080825280601f01601f191660200182016040528015612bb9576020820181803683370190505b5092506000612bc9600187613890565b90508084600081518110612bd957fe5b60200101906001600160f81b031916908160001a9053506001925050612c4b565b600285516002020367ffffffffffffffff81118015612c1857600080fd5b506040519080825280601f01601f191660200182016040528015612c43576020820181803683370190505b509250600091505b60ff82165b8351811015612c9657612c6b8360ff16820360020187613890565b848281518110612c7757fe5b60200101906001600160f81b031916908160001a905350600101612c50565b50505092915050565b6000612caa82613696565b15612ce65760405162461bcd60e51b815260040180806020018281038252602381526020018061417a6023913960400191505060405180910390fd5b8151601514612d265760405162461bcd60e51b81526004018080602001828103825260218152602001806142dc6021913960400191505060405180910390fd5b6118cb8261291a565b6000612d39613e54565b612d428461271d565b90506060612d4f82612798565b905060608085600082612d618b612b2c565b9050805160001415612d7d576000975050505050505050612f6e565b60005b8651811015612f65578151831115612da357600098505050505050505050612f6e565b612dbf878281518110612db257fe5b60200260200101516130bf565b955085805190602001208414612de057600098505050505050505050612f6e565b612def8782815181106113a457fe5b9450845160111415612eac578151831415612e4b578c80519060200120612e1c8660108151811061126757fe5b805190602001201415612e3a57600198505050505050505050612f6e565b600098505050505050505050612f6e565b6000828481518110612e5957fe5b016020015160f81c90506010811115612e7e5760009950505050505050505050612f6e565b612e9d868260ff1681518110612e9057fe5b60200260200101516138ed565b94505060019290920191612f5d565b845160021415612e3a576000612ed2612ecb8760008151811061126757fe5b848661398c565b905082518185011415612f28578d80519060200120612ef78760018151811061126757fe5b805190602001201415612f165760019950505050505050505050612f6e565b60009950505050505050505050612f6e565b80612f3f5760009950505050505050505050612f6e565b8084019350612f5486600181518110612e9057fe5b9450612f5d9050565b600101612d80565b50505050505050505b949350505050565b600854604080516320a9cea560e11b81526004810185905290516000928392839283926001600160a01b0316916341539d4a9160248083019260a0929190829003018186803b158015612fc857600080fd5b505afa158015612fdc573d6000803e3d6000fd5b505050506040513d60a0811015612ff257600080fd5b5080516020820151606090920151909450909250905061306161301b8b8463ffffffff613a6b16565b6040805160208082018f90528183018e9052606082018d905260808083018d90528351808403909101815260a0909201909252805191012090858863ffffffff613aad16565b6130b2576040805162461bcd60e51b815260206004820181905260248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f484541444552604482015290519081900360640190fd5b9998505050505050505050565b606080826000015167ffffffffffffffff811180156130dd57600080fd5b506040519080825280601f01601f191660200182016040528015613108576020820181803683370190505b50905060008160200190506131268460200151828660000151613845565b5092915050565b6040518060800160405280604f815260200161403b604f913980516020918201208251838301206040805180820190915260018152603160f81b930192909252907fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc630613198611185565b604080516020808201979097528082019590955260608501939093526001600160a01b03909116608084015260a0808401919091528151808403909101815260c090920190528051910120600b5550565b60006118c88383613c03565b6000818152600260205260409020546001600160a01b03166132485760405162461bcd60e51b815260040180806020018281038252602a815260200180613f07602a913960400191505060405180910390fd5b6001600160a01b03808416600081815260036020908152604080832080549588166001600160a01b031996871681179091558084526004835281842080549096168517909555838352600590915280822085905551849392917f9e651a8866fbea043e911d816ec254b0e3c992c06fff32d605e72362d6023bd991a4604080516001600160a01b0380861660208084019190915281861683850152606083810186905284518085038201815260808086018088526007546009546826a0a82faa27a5a2a760b91b9092528851978890036089018820888701818152898b019a8b528551968a019690965284519499918816986316f1983198939093169690958a9590949293909201919085019080838360005b8381101561337357818101518382015260200161335b565b50505050905090810190601f1680156133a05780820380516001836020036101000a031916815260200191505b5093505050506040516020818303038152906040526040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015613419578181015183820152602001613401565b50505050905090810190601f1680156134465780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b15801561346657600080fd5b505af115801561347a573d6000803e3d6000fd5b5050505050505050565b60006118c8836001600160a01b038416613c67565b806040516020018082805190602001908083835b602083106134cc5780518252601f1990920191602091820191016134ad565b51815160209384036101000a60001901801990921691161790527f3a20494e53554646494349454e545f5045524d495353494f4e530000000000009190930190815260408051808303600519018152601a909201905280516111729550600a94509201919050613e6e565b60005460ff1615613580576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b611c478161312d565b60006118cb82613c7f565b6000604051806080016040528060438152602001613fd460439139805190602001208260000151836020015184604001518051906020012060405160200180858152602001848152602001836001600160a01b03166001600160a01b03168152602001828152602001945050505050604051602081830303815290604052805190602001209050919050565b600061362a6110d6565b82604051602001808061190160f01b81525060020183815260200182815260200192505050604051602081830303815290604052805190602001209050919050565b60006118c8836001600160a01b038416613c83565b60006118c8836001600160a01b038416613ccd565b6020810151805160009190821a9060c08210156136b8576000925050506110ef565b5060019392505050565b6000806000905060006136d884602001516137e2565b602085015185519181019250015b80821015613745576136f78261374e565b820191508082111561373a5760405162461bcd60e51b815260040180806020018281038252602c81526020018061414e602c913960400191505060405180910390fd5b6001909201916136e6565b50909392505050565b80516000908190811a60808110156137695760019150613126565b60b881101561377e57607e1981019150613126565b60c08110156137ab5760b78103600185019450806020036101000a85510460018201810193505050613126565b60f88110156137c05760be1981019150613126565b60019390930151602084900360f7016101000a900490920160f5190192915050565b8051600090811a60808110156137fc5760009150506110ef565b60b8811080613817575060c08110801590613817575060f881105b156138265760019150506110ef565b60c081101561383a5760b5190190506110ef565b60f5190190506110ef565b8061384f57610b64565b5b6020811061386f578251825260209283019290910190601f1901613850565b915181516020939093036101000a6000190180199091169216919091179052565b600060028306156138c15760108260028504815181106138ac57fe5b016020015160f81c816138bb57fe5b066138e3565b60108260028504815181106138d257fe5b016020015160f81c816138e157fe5b045b60f81b9392505050565b6000806138fd836020015161374e565b8351909150811461393f5760405162461bcd60e51b815260040180806020018281038252602e815260200180614258602e913960400191505060405180910390fd5b825160211461397f5760405162461bcd60e51b8152600401808060200182810382526025815260200180613f536025913960400191505060405180910390fd5b5050602001516001015190565b600080606061399a86612b2c565b90506060815167ffffffffffffffff811180156139b657600080fd5b506040519080825280601f01601f1916602001820160405280156139e1576020820181803683370190505b509050845b82518601811015613a3b5760008782815181106139ff57fe5b602001015160f81c60f81b9050808388840381518110613a1b57fe5b60200101906001600160f81b031916908160001a905350506001016139e6565b50808051906020012082805190602001201415613a5b5781519250613a60565b600092505b509095945050505050565b60006118c883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250613d93565b60006020825181613aba57fe5b0615613b04576040805162461bcd60e51b8152602060048201526014602482015273092dcecc2d8d2c840e0e4dedecc40d8cadccee8d60631b604482015290519081900360640190fd5b60006020835181613b1157fe5b0490508060020a8510613b63576040805162461bcd60e51b81526020600482015260156024820152744c65616620696e64657820697320746f6f2062696760581b604482015290519081900360640190fd5b60008660205b85518111613bf55785810151925060028806613bb55781836040516020018083815260200182815260200192505050604051602081830303815290604052805190602001209150613be7565b828260405160200180838152602001828152602001925050506040516020818303038152906040528051906020012091505b600288049750602001613b69565b509094149695505050505050565b81546000908210613c455760405162461bcd60e51b8152600401808060200182810382526022815260200180613f316022913960400191505060405180910390fd5b826000018281548110613c5457fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000613c8f8383613c67565b613cc5575081546001818101845560008481526020808220909301849055845484825282860190935260409020919091556118cb565b5060006118cb565b60008181526001830160205260408120548015613d895783546000198083019190810190600090879083908110613d0057fe5b9060005260206000200154905080876000018481548110613d1d57fe5b600091825260208083209091019290925582815260018981019092526040902090840190558654879080613d4d57fe5b600190038181906000526020600020016000905590558660010160008781526020019081526020016000206000905560019450505050506118cb565b60009150506118cb565b60008184841115613e225760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015613de7578181015183820152602001613dcf565b50505050905090810190601f168015613e145780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60405180606001604052806000815260200160006001600160a01b03168152602001606081525090565b604051806040016040528060008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10613eaf57805160ff1916838001178555613edc565b82800160010185558215613edc579182015b82811115613edc578251825591602001919060010190613ec1565b50613ee8929150613eec565b5090565b610a6591905b80821115613ee85760008155600101613ef256fe526f6f74436861696e4d616e616765723a20544f4b454e5f545950455f4e4f545f535550504f52544544456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473524c505265616465723a20494e56414c49445f55494e545f5354524943545f4c454e475448416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e74526f6f74436861696e4d616e616765723a20494e56414c49445f4348494c445f434841494e5f414444524553534d6574615472616e73616374696f6e2875696e74323536206e6f6e63652c616464726573732066726f6d2c62797465732066756e6374696f6e5369676e617475726529526f6f74436861696e4d616e616765723a20494e56414c49445f544f4b454e5f54595045454950373132446f6d61696e28737472696e67206e616d652c737472696e672076657273696f6e2c6164647265737320766572696679696e67436f6e74726163742c627974657333322073616c7429526f6f74436861696e4d616e616765723a20494e56414c49445f4252414e43485f4d41534b526f6f74436861696e4d616e616765723a20544f4b454e5f4e4f545f4d4150504544524c505265616465723a2042595445535f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b654e61746976654d6574615472616e73616374696f6e3a20494e56414c49445f5349474e4552524c505265616465723a204e554d5f4954454d535f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a204445434f44494e475f4c4953545f41535f41444452455353526f6f74436861696e4d616e616765723a2045544845525f5452414e534645525f4641494c45445369676e657220616e64207369676e617475726520646f206e6f74206d61746368526f6f74436861696e4d616e616765723a20494e56414c49445f524f4f545f544f4b454e526f6f74436861696e4d616e616765723a20455849545f414c52454144595f50524f434553534544524c505265616465723a204c4953545f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a2055494e545f5354524943545f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66524c505265616465723a2055494e545f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a20494e56414c49445f414444524553535f4c454e475448a164736f6c6343000606000a","storage":{"0x0":"0x1","0x7":"0xe0afc4e9e03e4aa67257df7a2eca77454309789d","0x8":"0xbe5deac45dd1ca4ee18dc2d585d84d3d3cb82b0d","0x9":"0x0","0xa":"0x55","0xb":"0x2603903cfd8895fdde3da4d607d44203e86098073e351022fd12745d3436e93a","0xeb5be412f275a18f6e4d622aee4ff40b21467c926224771b782d4c095d1444b":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x162b27a30e878e20728deaa5c9814fd57ccf962b998b8733ce65749bc61c552f":"0x58a175bebc8ec21a94ea63aa5a28743945940ee6","0x1a93463c7bbb7215968307c7cd357c2009c10df2a511dd62c1189098e4f3249b":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x415fec6a4fd7706b96d3a0a30121284bc5e2b28b978c20486c9f5e20d44fc781":"0x1","0x4dc1f0160d96279adc262db20edcc15527e32cb28eda582becc5ac0bc453be34":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x5fc73aa2ab567caef8745f0709fae506c01972ffb297bd9225bc262d6e87746f":"0x1","0x6ce1cd05966f090b8daa7b2ee7f80930bbb39d19b693045725fbae5fa44fda90":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0xa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb49":"0x1","0xc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a8":"0x526f6f74436861696e4d616e616765723a20494e53554646494349454e545f50","0xc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a9":"0x45524d495353494f4e5300000000000000000000000000000000000000000000","0xd61ba0007bb57e62613f82f528c06ba46d36349cf5be567b12f878ef04849a7d":"0x1","0xf960df71fab73e593428c10f56f55e7ea46985963177def0458b97f1afec9576":"0xcf4e755f204163e9213ba8b1305036e386579ccc70731c25c62a101197811f48"}},"0x287dee389caaa49edc112888f2bcfd927b472e25":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c80634f89059e1461002d575b5f80fd5b61004061003b366004610125565b610054565b604051901515815260200160405180910390f35b5f806100985f85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101029050565b60ff1690505f811180156100f857506100f36100b5826001610191565b85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101029050565b60ff16155b9150505b92915050565b5f828281518110610115576101156101b0565b016020015160f81c905092915050565b5f8060208385031215610136575f80fd5b823567ffffffffffffffff8082111561014d575f80fd5b818501915085601f830112610160575f80fd5b81358181111561016e575f80fd5b86602082850101111561017f575f80fd5b60209290920196919550909350505050565b808201808211156100fc57634e487b7160e01b5f52601160045260245ffd5b634e487b7160e01b5f52603260045260245ffdfea164736f6c6343000818000a","storage":{}},"0x3198fc981626687f4b5bdf0fbeabb0a5e0489c03":{"nonce":1,"balance":"0x8ac7230489e80000","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0x1","0x97":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x13cf90498be59d359caa5b6092b365feab4610605d7107d1f05f8e94ac955652":"0x1","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xc2110388dd54228ae0a834119457ede938bf0b57","0x412386de53449251cbf7ce1f4c6a038bf9c0746e62d331b08ef0c3fa7d0ab672":"0x4fbf7b2f171336958be5d15ff762a5cff5363568","0x60793a5062d506d35cc8f1beda67ee5028c16bfcd9c923d5bfc439c04bd929b1":"0x6ac8f19d1e0f81147cdf2a1e53cb1f4e18417204","0x75df8b43665bf2e4996a686913c4c278ca7aed85444740ca40355b1c9a94b504":"0x1","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xf851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004":"0xc965345edac823d56812cd20a10316233916a605"}},"0x39a27956b78d00a4e00ea8833ff0947410a2933f":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xc9":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0xca":"0x4a3c194eb88966178bfdd81744dddafed611b830","0xcb":"0x4872cc1be60a9db9c880a0a437da7a6af134f08f","0xcc":"0xf8c26340c1eaea6c7ff1760b25005e1306953572","0xce":"0xce4bb7dc1eb9dce75743de6a4b48534fd427ef51","0xc6892776bb3da1e1199a03e0d3131aea089754b59c557b750c478ebc85ccaa":"0x6e66740000000000000000000000000000000000000000000000000000000006","0x6cb37a6d512a1e227e627eddc133023e6d00bfedff31a600abb75aa93e9a4a0":"0x6b7265737573000000000000000000000000000000000000000000000000000c","0x8e966fe8b9b43d48017ba1eb562ced91049de778396aaa438773698b3fa8fb6":"0x0","0x94a32b1c7b189ce7293f7ae444cdcab6800d858454022d15355d5ecc5b32b26":"0x0","0xa4b2d73a9f36ca5eed107f7c3d2ba877fb7537d447256726bcde9bac9e9aaee":"0x0","0xe0e3ab102c26f13da20123aa517b31e99cf65b7b720ba0dd7138012fd23eff2":"0x0","0x1203b5e51c7d5be6da42b83f22878d3583e53123857d27fc3cff3df46fb9126c":"0x0","0x13477730039a04f4290adf0e48e98b233579c040281545e4446ce662ba56a9be":"0x7800000000000000000000000000000000000000000000000000000000000002","0x1e06d49ce7b00846691778f302e94a3ac9c2633d745ebe73d68353c941e68dee":"0x626974636f696e0000000000000000000000000000000000000000000000000e","0x1e99199375610ffe00d28ee5827c616cf6469be3de2a2f738d955eb6b62127e8":"0x1","0x21e80eded1b2e1c5d976c85e89dde60bd4e99a8d66346af0e359ac854bceba44":"0x0","0x254d9ade81439f29723741d6ff407eab1fe03caffb042bd85e53955e41fb9792":"0x616c74696d697374000000000000000000000000000000000000000000000010","0x269db12b2cd2aeb7d5f52eda16edb1d211ccbea12da1ebfa60ed5f8f396c1d04":"0x0","0x2a3f03435eedee01de7e1c4386b04ca8469edd8df00408cd6d2b058bce1cecfa":"0x0","0x323a3cb169499006d6635c58232c8c58e23c20bf9e1d309d6b3bc6fb2c7a093d":"0x0","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x229c56b7805ab5935a883207f6a6bd5847e65aee","0x37aac864d4715a975bd45cae6be99de9f7968cf995917cc7f8192940fb62acbf":"0x0","0x3f69f26894a7ae0f7a7aa6c2d77935589dabbff6435aee960da15064dea7cd59":"0x64616f0000000000000000000000000000000000000000000000000000000006","0x467a68fda3230ce33f64703ebdbd91caccf235403282ae9fe390675ef39e9c94":"0x0","0x50ae8c017c4c1fddbe9509bd2b916f5dd9da11ddb639f2a4230322f49a41ac87":"0x1","0x5496787fc1ebdfeba375028c1865f13fbb1d63c0caa356ccc1b29a80f3ebd622":"0x0","0x576dd8d1a7b74aba0a99a213f50d74aa642a2c80bd5a854b24aac7568afea0f7":"0x626974676574000000000000000000000000000000000000000000000000000c","0x5b54338c052ce22ec334b6c5a19c4b122701c5fd4d3a2a5f5890f57050e0aafa":"0x626c6f636b636861696e00000000000000000000000000000000000000000014","0x5d9de30f0e5e02628e726fd23e310ee9e64489866fa6959825148a25d40e4c83":"0x0","0x5e2d99ab4a1a153039a4b2e068d64802da8735071a2d018ee9d04297945bed00":"0x0","0x670006c4193123492fb25db465ed52e62aff2f076289f4f1a5f167237f5e579d":"0x6d616e676100000000000000000000000000000000000000000000000000000a","0x6deac161c541001c0d79afaf7b809418785fa5ca6533d86bcf312e7213ee08fc":"0x0","0x6eaa0db35203bc0d58aff54ca630dd125b27758aa6204f7a11c0617f7c2fa776":"0x706f670000000000000000000000000000000000000000000000000000000006","0x732abe4661f55132b7f119cab9a9985be6630299dfc92870cc910f147795bc44":"0x0","0x743eb517f46c12bb593097087a972028308ce2e819a76cfb5488751f9d1ca34a":"0x7265616c6d00000000000000000000000000000000000000000000000000000a","0x750dfb39c9afc828c341e1a8e8fdca0b3914baf43303e1ef21fbfe8ec8ee016a":"0x0","0x7cbf647b96a1d1a533ea4bc3a4a8a78f166bd91e6a96afb12f063fef0e9cb960":"0x0","0x7dc972254779cfb51850c0eaccfcb71207822b3c10d4840567bec3dfbf0dff13":"0x636f6d0000000000000000000000000000000000000000000000000000000006","0x7dfa160584f41570c33e8e6c42c5314a7b45ddc162f99fd101ccc10c7b5b3dd3":"0x77616c6c6574000000000000000000000000000000000000000000000000000c","0x868a5f38a2d46181ffad442d7bc5b337b3c349a58e4979f2901786c6123b996c":"0x6b6c65766572000000000000000000000000000000000000000000000000000c","0x87b2c647061aef22ef1aba96c67f440d471dfac27e9873ff4a03793b402d32ee":"0x706f6c79676f6e0000000000000000000000000000000000000000000000000e","0x893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e":"0x7c3c91245769c8b7450ad522792dec4bd4bf797f","0x91e744007b4b3621bec7c01ea851c3f48cf196b9cc6c566a48cec8c5faac6e62":"0x0","0x92c5a28dd4caaa50e0a8370243a5c600f64349e8b03604b403cbe111b50f1f7b":"0x3838380000000000000000000000000000000000000000000000000000000006","0x947936973a3a21b10c8980e1a8939a55c7339d302161884a3de05cf090e812f0":"0x1","0x9535d3ea47c5e1398d3405b4fadc73de6b1b1e6a66f674a8886ab7a6c873a390":"0x63727970746f000000000000000000000000000000000000000000000000000c","0x9956a4e94676c45844be3667f17e077c7cb53aa4e87e5a71d65e56b291232715":"0x676f000000000000000000000000000000000000000000000000000000000004","0x9c6ba1ddff1ffbc14dcdc1f97db867554a42a39e00e892c7e882dbb3dca89ebf":"0x6869000000000000000000000000000000000000000000000000000000000004","0x9f836a0f81651f597cee678b440ba8c853c633e6654809efb83d4b22aff06fb2":"0x616e696d6500000000000000000000000000000000000000000000000000000a","0x9fecf1e12f4b8ec337da992721a0f27526ddbd6be1e77885ab963c09afcf0fc1":"0x0","0xab129a0f8c6cf8d160116a28abc7369c2f8a098fc023f00f07dc3e1d5798e47a":"0x0","0xb04c0eb6f034d9a3179a4e6f953bdf8afc78ba2cdcfbc775076e1c2a0bb67818":"0x0","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xbe51b53bc2060a7a6419622b5a9adc00b50a57e6aa741882f2f60f95d4580078":"0x636c617900000000000000000000000000000000000000000000000000000008","0xbf350522e335b8ab3da1d099c93cdc09179f1e15ea6aa1acfaa4afb1ef87eabf":"0x756e73746f707061626c65000000000000000000000000000000000000000016","0xcbf7a3d53e0851ac15a415b99c2ba95a2497dd9dd44068ac261bcbdafdfe8472":"0x707564677900000000000000000000000000000000000000000000000000000a","0xcf4411216f3fdf787d1cfe037bbcfa0d5293d83a8082f8e4141266399e2a784b":"0x61757374696e000000000000000000000000000000000000000000000000000c","0xcfdbac664139565f92cce149a345e5f19355d25b3eb8a70c549d5da3283a15b8":"0x7a696c0000000000000000000000000000000000000000000000000000000006","0xcfeb64c30a93ecd7224f854b09be57bb6b3962e739fa8e3ea3a1851502474c07":"0x1","0xe03c9c593ce8661bd39f77653f7ca6c43f093aa7f3b95890f309f67b57f39e74":"0x0","0xe50c62c16d12655dfdbd61c232155e5c3a1cf61977d2d8e7449cb88611b73832":"0x0","0xeeb0b17d77f2c9069ad443f3927c0802d98d5553e52b17c985d45d4a10b79566":"0x62696e616e636575730000000000000000000000000000000000000000000012","0xf562ef0db022f25a957fb6e49aa07004f14a50ed5b23279e9ac25b4632f7bf1c":"0x0","0xf6776268d6c5847a771099280c742d684a4b22bac609ba615de51f7f893ff2bc":"0x0"}},"0x3f1194b9019002863ad0dbbe295294547c0d36a9":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100b1575f3560e01c80635b0fc9c31161006e5780635b0fc9c3146101a55780635ef2c7f0146101b8578063a22cb465146101cb578063cf408823146101de578063e985e9c5146101f1578063f79fe5381461023c575f80fd5b80630178b8bf146100b557806302571be3146100fd57806306ab59231461011057806314ab90381461013157806316a25cbd146101465780631896f70a14610192575b5f80fd5b6100e06100c3366004610785565b5f908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100e061010b366004610785565b610266565b61012361011e3660046107b7565b610292565b6040519081526020016100f4565b61014461013f366004610800565b61035f565b005b610179610154366004610785565b5f90815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100f4565b6101446101a036600461082a565b61042e565b6101446101b336600461082a565b6104ef565b6101446101c636600461084b565b61058e565b6101446101d936600461089e565b6105af565b6101446101ec3660046108d7565b61061a565b61022c6101ff366004610921565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205460ff1690565b60405190151581526020016100f4565b61022c61024a366004610785565b5f908152602081905260409020546001600160a01b0316151590565b5f818152602081905260408120546001600160a01b031630810361028c57505f92915050565b92915050565b5f8381526020819052604081205484906001600160a01b0316338114806102db57506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b6102e3575f80fd5b604080516020808201899052818301889052825180830384018152606090920190925280519101206103158186610635565b6040516001600160a01b0386168152869088907fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829060200160405180910390a39695505050505050565b5f8281526020819052604090205482906001600160a01b0316338114806103a857506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b6103b0575f80fd5b60405167ffffffffffffffff8416815284907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a250505f91825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b5f8281526020819052604090205482906001600160a01b03163381148061047757506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b61047f575f80fd5b6040516001600160a01b038416815284907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a250505f9182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b5f8281526020819052604090205482906001600160a01b03163381148061053857506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b610540575f80fd5b61054a8484610635565b6040516001600160a01b038416815284907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a250505050565b5f61059a868686610292565b90506105a7818484610662565b505050505050565b335f8181526001602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b61062484846104ef565b61062f848383610662565b50505050565b5f9182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b5f838152602081905260409020600101546001600160a01b038381169116146106e6575f838152602081815260409182902060010180546001600160a01b0319166001600160a01b038616908117909155915191825284917f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a0910160405180910390a25b5f8381526020819052604090206001015467ffffffffffffffff828116600160a01b9092041614610780575f8381526020818152604091829020600101805467ffffffffffffffff60a01b1916600160a01b67ffffffffffffffff861690810291909117909155915191825284917f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa68910160405180910390a25b505050565b5f60208284031215610795575f80fd5b5035919050565b80356001600160a01b03811681146107b2575f80fd5b919050565b5f805f606084860312156107c9575f80fd5b83359250602084013591506107e06040850161079c565b90509250925092565b803567ffffffffffffffff811681146107b2575f80fd5b5f8060408385031215610811575f80fd5b82359150610821602084016107e9565b90509250929050565b5f806040838503121561083b575f80fd5b823591506108216020840161079c565b5f805f805f60a0868803121561085f575f80fd5b85359450602086013593506108766040870161079c565b92506108846060870161079c565b9150610892608087016107e9565b90509295509295909350565b5f80604083850312156108af575f80fd5b6108b88361079c565b9150602083013580151581146108cc575f80fd5b809150509250929050565b5f805f80608085870312156108ea575f80fd5b843593506108fa6020860161079c565b92506109086040860161079c565b9150610916606086016107e9565b905092959194509250565b5f8060408385031215610932575f80fd5b61093b8361079c565b91506108216020840161079c56fea164736f6c6343000818000a","storage":{"0xdd4f47a3b6f87903b728feed7a23273bd8de58e4fa257d37a74a5881e5d92ff":"0xf670681605efc4efc804f5a9b97ee89520473d56","0x14ce109f1cffdc11aa7355660be720f902291be09fb159b4c578958cd0f533bc":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x14ce109f1cffdc11aa7355660be720f902291be09fb159b4c578958cd0f533bd":"0x0","0x1e2c8528d7e8e90443ad0a4e37b6f2b1daed719a574ce3a0c347063e8d839d50":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1e2c8528d7e8e90443ad0a4e37b6f2b1daed719a574ce3a0c347063e8d839d51":"0x0","0x2fb4213711fd985fc1fb1ea2bfa660b0b37fd50c6c74ab531d9b54b29dd5177e":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2fb4213711fd985fc1fb1ea2bfa660b0b37fd50c6c74ab531d9b54b29dd5177f":"0x0","0x859ecef2e168dc10231b000bd53493b42bc9d944cac29d94582c1e1d43592131":"0xc965345edac823d56812cd20a10316233916a605","0x8878c6daefcfc78c7f181d00d719b4a0612dd3e65cafeb72507d15c036a9f690":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0xe4fdf45c2f8d198854f8823809c7a988eeaaa493","0xfb5568c6845cf0d5915af088a5d8ba90a5ff735e102c9a79609ef7d043f1108c":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xfb5568c6845cf0d5915af088a5d8ba90a5ff735e102c9a79609ef7d043f1108d":"0x0"}},"0x4872cc1be60a9db9c880a0a437da7a6af134f08f":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100935760003560e01c80637362d9c8116100665780637362d9c8146101285780637b1039991461014e57806399e0dd7c14610172578063bb5f747b146101e2578063d6cd94731461020857610093565b806310154bad14610098578063291d9549146100c05780633af32abf146100e65780634c5a628c14610120575b600080fd5b6100be600480360360208110156100ae57600080fd5b50356001600160a01b0316610210565b005b6100be600480360360208110156100d657600080fd5b50356001600160a01b0316610260565b61010c600480360360208110156100fc57600080fd5b50356001600160a01b03166102ad565b604080519115158252519081900360200190f35b6100be6102c6565b6100be6004803603602081101561013e57600080fd5b50356001600160a01b03166102d1565b61015661031e565b604080516001600160a01b039092168252519081900360200190f35b6100be6004803603602081101561018857600080fd5b8101906020810181356401000000008111156101a357600080fd5b8201836020820111156101b557600080fd5b803590602001918460018302840111640100000000831117156101d757600080fd5b50909250905061032d565b61010c600480360360208110156101f857600080fd5b50356001600160a01b0316610404565b6100be610416565b61021933610404565b6102545760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d8161041f565b50565b61026933610404565b6102a45760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d81610467565b60006102c060018363ffffffff6104af16565b92915050565b6102cf33610516565b565b6102da33610404565b6103155760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d8161055e565b6002546001600160a01b031690565b610336336102ad565b6103715760405162461bcd60e51b815260040180806020018281038252603a815260200180610712603a913960400191505060405180910390fd5b6002546040516369426cbd60e11b8152602060048201908152602482018490526001600160a01b039092169163d284d97a91859185918190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b1580156103e857600080fd5b505af11580156103fc573d6000803e3d6000fd5b505050505050565b60006102c0818363ffffffff6104af16565b6102cf33610467565b61043060018263ffffffff6105a616565b6040516001600160a01b038216907fee1504a83b6d4a361f4c1dc78ab59bfa30d6a3b6612c403e86bb01ef2984295f90600090a250565b61047860018263ffffffff61062716565b6040516001600160a01b038216907f270d9b30cf5b0793bbfd54c9d5b94aeb49462b8148399000265144a8722da6b690600090a250565b60006001600160a01b0382166104f65760405162461bcd60e51b81526004018080602001828103825260228152602001806106b06022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b61052760008263ffffffff61062716565b6040516001600160a01b038216907f0a8eb35e5ca14b3d6f28e4abf2f128dbab231a58b56e89beb5d636115001e16590600090a250565b61056f60008263ffffffff6105a616565b6040516001600160a01b038216907f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129990600090a250565b6105b082826104af565b15610602576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b61063182826104af565b61066c5760405162461bcd60e51b815260040180806020018281038252602181526020018061068f6021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f206164647265737357686974656c69737441646d696e526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c69737441646d696e20726f6c6557686974656c6973746564526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c697374656420726f6c65a265627a7a72315820debca60946c0819dc5b5c2756c5c1dd8dd8a46f2429fa8a43a4f4362af3030c164736f6c634300050c0032","storage":{"0x2":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x5ac40fcee41fb0272a935f6e51e963102fba5db6f20e897e9361f0347eb2cae6":"0x1","0xdc4aeb95a779c8b92b845e3a94044db8ff2e43acc37da18c4b35a6bbad7c122f":"0x1"}},"0x49da8861c65460639925febe1fb4b5b59b443082":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f7e83aee1461002d575b5f80fd5b61004061003b3660046101ac565b610054565b604051901515815260200160405180910390f35b5f602082146100a95760405162461bcd60e51b815260206004820152601a60248201527f496e76616c6964207368613235362068617368206c656e677468000000000000604482015260640160405180910390fd5b6100eb5f84848080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101459050565b600286866040516100fd929190610213565b602060405180830381855afa158015610118573d5f803e3d5ffd5b5050506040513d601f19601f8201168201806040525081019061013b9190610222565b1495945050505050565b81515f90610154836020610239565b111561015e575f80fd5b50016020015190565b5f8083601f840112610177575f80fd5b50813567ffffffffffffffff81111561018e575f80fd5b6020830191508360208285010111156101a5575f80fd5b9250929050565b5f805f80604085870312156101bf575f80fd5b843567ffffffffffffffff808211156101d6575f80fd5b6101e288838901610167565b909650945060208701359150808211156101fa575f80fd5b5061020787828801610167565b95989497509550505050565b818382375f9101908152919050565b5f60208284031215610232575f80fd5b5051919050565b8082018082111561025857634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x4a3c194eb88966178bfdd81744dddafed611b830":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061009e5760003560e01c806398650275116100665780639865027514610305578063aa271e1a1461030d578063b2da297914610347578063be362e2e146103c5578063c36c2125146104fe5761009e565b80634c0b0ed2146100a35780637b103999146101595780637caf3ad81461017d5780638ad364f814610258578063983b2d56146102df575b600080fd5b610157600480360360408110156100b957600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156100e357600080fd5b8201836020820111156100f557600080fd5b803590602001918460018302840111600160201b8311171561011657600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506105bd945050505050565b005b61016161074c565b604080516001600160a01b039092168252519081900360200190f35b6101576004803603608081101561019357600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156101bd57600080fd5b8201836020820111156101cf57600080fd5b803590602001918460018302840111600160201b831117156101f057600080fd5b919390926001600160a01b0383351692604081019060200135600160201b81111561021a57600080fd5b82018360208201111561022c57600080fd5b803590602001918460018302840111600160201b8311171561024d57600080fd5b50909250905061075b565b6101576004803603606081101561026e57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561029857600080fd5b8201836020820111156102aa57600080fd5b803590602001918460018302840111600160201b831117156102cb57600080fd5b9193509150356001600160a01b0316610957565b610157600480360360208110156102f557600080fd5b50356001600160a01b0316610b2b565b610157610b7b565b6103336004803603602081101561032357600080fd5b50356001600160a01b0316610b86565b604080519115158252519081900360200190f35b6101576004803603604081101561035d57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561038757600080fd5b82018360208201111561039957600080fd5b803590602001918460018302840111600160201b831117156103ba57600080fd5b509092509050610b9e565b610157600480360360608110156103db57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561040557600080fd5b82018360208201111561041757600080fd5b803590602001918460018302840111600160201b8311171561043857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b81111561048a57600080fd5b82018360208201111561049c57600080fd5b803590602001918460018302840111600160201b831117156104bd57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610bf1945050505050565b6101576004803603606081101561051457600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561053e57600080fd5b82018360208201111561055057600080fd5b803590602001918460018302840111600160201b8311171561057157600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550505090356001600160a01b03169150610dec9050565b6105c633610b86565b6106015760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b039092169163b5466669918591849163ebf0c717916004808301926020929190829003018186803b15801561064f57600080fd5b505afa158015610663573d6000803e3d6000fd5b505050506040513d602081101561067957600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052606060448301908152875160648401528751889360840190602085019080838360005b838110156106e25781810151838201526020016106ca565b50505050905090810190601f16801561070f5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15801561073057600080fd5b505af1158015610744573d6000803e3d6000fd5b505050505050565b6001546001600160a01b031690565b6107cf8686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f89018190048102820181019092528781529250879150869081908401838280828437600092019190915250610bf192505050565b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691632525d06a91869184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b15801561082557600080fd5b505afa158015610839573d6000803e3d6000fd5b505050506040513d602081101561084f57600080fd5b5051604080516001600160e01b031960e085901b1681526004810183815260248201928352604482018d90528d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b1580156108bd57600080fd5b505afa1580156108d1573d6000803e3d6000fd5b505050506040513d60208110156108e757600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b15801561093757600080fd5b505af115801561094b573d6000803e3d6000fd5b50505050505050505050565b6109a58484848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250610bf1915050565b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691632525d06a91849184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b1580156109fb57600080fd5b505afa158015610a0f573d6000803e3d6000fd5b505050506040513d6020811015610a2557600080fd5b5051604080516001600160e01b031960e085901b1681526004810183815260248201928352604482018b90528b928b92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b158015610a9357600080fd5b505afa158015610aa7573d6000803e3d6000fd5b505050506040513d6020811015610abd57600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b158015610b0d57600080fd5b505af1158015610b21573d6000803e3d6000fd5b5050505050505050565b610b3433610b86565b610b6f5760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b610b7881611115565b50565b610b843361115d565b565b6000610b98818363ffffffff6111a516565b92915050565b610bec8383838080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250610bf1915050565b505050565b610bfa33610b86565b610c355760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691630467e014918691849163ebf0c717916004808301926020929190829003018186803b158015610c8357600080fd5b505afa158015610c97573d6000803e3d6000fd5b505050506040513d6020811015610cad57600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052608060448301908152885160848401528851899389939291606482019160a40190602087019080838360005b83811015610d1f578181015183820152602001610d07565b50505050905090810190601f168015610d4c5780820380516001836020036101000a031916815260200191505b50838103825284518152845160209182019186019080838360005b83811015610d7f578181015183820152602001610d67565b50505050905090810190601f168015610dac5780820380516001836020036101000a031916815260200191505b509650505050505050600060405180830381600087803b158015610dcf57600080fd5b505af1158015610de3573d6000803e3d6000fd5b50505050505050565b610df533610b86565b610e305760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b039092169163b5466669918691849163ebf0c717916004808301926020929190829003018186803b158015610e7e57600080fd5b505afa158015610e92573d6000803e3d6000fd5b505050506040513d6020811015610ea857600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052606060448301908152885160648401528851899360840190602085019080838360005b83811015610f11578181015183820152602001610ef9565b50505050905090810190601f168015610f3e5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015610f5f57600080fd5b505af1158015610f73573d6000803e3d6000fd5b50506001546040805163ebf0c71760e01b815290516001600160a01b039092169350632525d06a9250849184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b158015610fcd57600080fd5b505afa158015610fe1573d6000803e3d6000fd5b505050506040513d6020811015610ff757600080fd5b5051604080516001600160e01b031960e085901b16815260048101838152602482019283528a5160448301528a518b93919260640190602085019080838360005b83811015611050578181015183820152602001611038565b50505050905090810190601f16801561107d5780820380516001836020036101000a031916815260200191505b50935050505060206040518083038186803b15801561109b57600080fd5b505afa1580156110af573d6000803e3d6000fd5b505050506040513d60208110156110c557600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b158015610dcf57600080fd5b61112660008263ffffffff61120c16565b6040516001600160a01b038216907f6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f690600090a250565b61116e60008263ffffffff61128d16565b6040516001600160a01b038216907fe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb6669290600090a250565b60006001600160a01b0382166111ec5760405162461bcd60e51b81526004018080602001828103825260228152602001806113466022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b61121682826111a5565b15611268576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b61129782826111a5565b6112d25760405162461bcd60e51b81526004018080602001828103825260218152602001806113256021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe4d696e746572526f6c653a2063616c6c657220646f6573206e6f74206861766520746865204d696e74657220726f6c65526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f2061646472657373a265627a7a72315820c058d70355f7d37ff6b3b61cd850cc4a41893e30048389698c062148bf3d2ff464736f6c634300050c0032","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x789b49055833748af4eaa9affbcd84118ce8770f7e4385b5a3f428626b1f0aff":"0x1","0xdc4aeb95a779c8b92b845e3a94044db8ff2e43acc37da18c4b35a6bbad7c122f":"0x1"}},"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061007b5760003560e01c80639623609d1161004e5780639623609d1461011157806399a88ec414610124578063f2fde38b14610144578063f3b7dead1461016457600080fd5b8063204e1c7a14610080578063715018a6146100bc5780637eff275e146100d35780638da5cb5b146100f3575b600080fd5b34801561008c57600080fd5b506100a061009b366004610499565b610184565b6040516001600160a01b03909116815260200160405180910390f35b3480156100c857600080fd5b506100d1610215565b005b3480156100df57600080fd5b506100d16100ee3660046104bd565b610229565b3480156100ff57600080fd5b506000546001600160a01b03166100a0565b6100d161011f36600461050c565b610291565b34801561013057600080fd5b506100d161013f3660046104bd565b610300565b34801561015057600080fd5b506100d161015f366004610499565b610336565b34801561017057600080fd5b506100a061017f366004610499565b6103b4565b6000806000836001600160a01b03166040516101aa90635c60da1b60e01b815260040190565b600060405180830381855afa9150503d80600081146101e5576040519150601f19603f3d011682016040523d82523d6000602084013e6101ea565b606091505b5091509150816101f957600080fd5b8080602001905181019061020d91906105e2565b949350505050565b61021d6103da565b6102276000610434565b565b6102316103da565b6040516308f2839760e41b81526001600160a01b038281166004830152831690638f283970906024015b600060405180830381600087803b15801561027557600080fd5b505af1158015610289573d6000803e3d6000fd5b505050505050565b6102996103da565b60405163278f794360e11b81526001600160a01b03841690634f1ef2869034906102c990869086906004016105ff565b6000604051808303818588803b1580156102e257600080fd5b505af11580156102f6573d6000803e3d6000fd5b5050505050505050565b6103086103da565b604051631b2ce7f360e11b81526001600160a01b038281166004830152831690633659cfe69060240161025b565b61033e6103da565b6001600160a01b0381166103a85760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b6103b181610434565b50565b6000806000836001600160a01b03166040516101aa906303e1469160e61b815260040190565b6000546001600160a01b031633146102275760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161039f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146103b157600080fd5b6000602082840312156104ab57600080fd5b81356104b681610484565b9392505050565b600080604083850312156104d057600080fd5b82356104db81610484565b915060208301356104eb81610484565b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561052157600080fd5b833561052c81610484565b9250602084013561053c81610484565b9150604084013567ffffffffffffffff8082111561055957600080fd5b818601915086601f83011261056d57600080fd5b81358181111561057f5761057f6104f6565b604051601f8201601f19908116603f011681019083821181831017156105a7576105a76104f6565b816040528281528960208487010111156105c057600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000602082840312156105f457600080fd5b81516104b681610484565b60018060a01b038316815260006020604081840152835180604085015260005b8181101561063b5785810183015185820160600152820161061f565b8181111561064d576000606083870101525b50601f01601f19169290920160600194935050505056fea26469706673582212207ad53e1008cce369999f6b5f2f77109510b404ff1de9b47b639981fd68e6239264736f6c63430008090033","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x4e59b44847b379578588920ca78fbf26c0b4956c":{"nonce":0,"balance":"0x0","code":"0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe03601600081602082378035828234f58015156039578182fd5b8082525050506014600cf3","storage":{}},"0x4eb9de1fc0d800e941f326d6699e9e11969557ea":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063100cdd911461002d575b5f80fd5b61004061003b3660046102cd565b610042565b005b5f5b818110156101b8575f7f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e28484848181106100805761008061033c565b905060200201356040516020016100a1929190918252602082015260400190565b60408051808303601f190181529082905280516020909101206331a9108f60e11b82526004820181905291507f000000000000000000000000107733fed96c4cd390c944a31f5425a7fb98ae5e6001600160a01b0316906323b872dd908290636352211e90602401602060405180830381865afa158015610124573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101489190610350565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015261dead6024820152604481018490526064015f604051808303815f87803b158015610195575f80fd5b505af11580156101a7573d5f803e3d5ffd5b505060019093019250610044915050565b5080156102c9577f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e282826101ed60018261037d565b8181106101fc576101fc61033c565b9050602002013560405160200161021d929190918252602082015260400190565b604051602081830303815290604052805190602001205f1c7f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e283835f8181106102685761026861033c565b90506020020135604051602001610289929190918252602082015260400190565b60408051601f19818403018152908290528051602090910120907fdf423376f9b0ab363b1b4d6f0b4cb6821921ec30f491555a97236a8a38ce095a905f90a35b5050565b5f80602083850312156102de575f80fd5b823567ffffffffffffffff808211156102f5575f80fd5b818501915085601f830112610308575f80fd5b813581811115610316575f80fd5b8660208260051b850101111561032a575f80fd5b60209290920196919550909350505050565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215610360575f80fd5b81516001600160a01b0381168114610376575f80fd5b9392505050565b8181038181111561039c57634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x4fbf7b2f171336958be5d15ff762a5cff5363568":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061011b575f3560e01c80638d839ffe1161009d578063aeb8ce9b11610062578063aeb8ce9b14610356578063ce1e09c014610375578063d3419bf3146103a8578063f14fcbc8146103db578063f2fde38b146103fa575f80fd5b80638d839ffe146102a25780638da5cb5b146102d55780639791c097146102f1578063a8e5fbc014610310578063acf1a84114610343575f80fd5b806374694a2b116100e357806374694a2b146101c957806380869853146101dc578063839df9451461022757806383e7f6ff146102525780638a95b09f1461028c575f80fd5b806301ffc9a71461011f5780633ccfd60b146101535780635d3590d51461016957806365a69dcf14610188578063715018a6146101b5575b5f80fd5b34801561012a575f80fd5b5061013e610139366004611145565b610419565b60405190151581526020015b60405180910390f35b34801561015e575f80fd5b5061016761044f565b005b348015610174575f80fd5b50610167610183366004611187565b610489565b348015610193575f80fd5b506101a76101a23660046112e4565b610507565b60405190815260200161014a565b3480156101c0575f80fd5b5061016761058b565b6101676101d73660046113db565b61059e565b3480156101e7575f80fd5b5061020f7f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5681565b6040516001600160a01b03909116815260200161014a565b348015610232575f80fd5b506101a761024136600461149d565b60016020525f908152604090205481565b34801561025d575f80fd5b5061027161026c3660046114b4565b610894565b6040805182518152602092830151928101929092520161014a565b348015610297575f80fd5b506101a76224ea0081565b3480156102ad575f80fd5b506101a77f000000000000000000000000000000000000000000000000000000000000025881565b3480156102e0575f80fd5b505f546001600160a01b031661020f565b3480156102fc575f80fd5b5061013e61030b3660046114f6565b6109c9565b34801561031b575f80fd5b5061020f7f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e1841720481565b610167610351366004611528565b6109dd565b348015610361575f80fd5b5061013e6103703660046114f6565b610b7b565b348015610380575f80fd5b506101a77f000000000000000000000000000000000000000000000000000000000001518081565b3480156103b3575f80fd5b5061020f7f000000000000000000000000ec71e4e674fe0f432693dc2b935c34bd2774c00381565b3480156103e6575f80fd5b506101676103f536600461149d565b610c22565b348015610405575f80fd5b50610167610414366004611570565b610c95565b5f6001600160e01b031982166301ffc9a760e01b148061044957506001600160e01b0319821663612e8c0960e01b145b92915050565b5f80546040516001600160a01b03909116914780156108fc02929091818181858888f19350505050158015610486573d5f803e3d5ffd5b50565b610491610d0b565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af11580156104dd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105019190611589565b50505050565b885160208a01205f90841580159061052657506001600160a01b038716155b15610544576040516334fd817160e21b815260040160405180910390fd5b808a8a8a8a8a8a8a8a6040516020016105659998979695949392919061165e565b604051602081830303815290604052805190602001209150509998505050505050505050565b610593610d0b565b61059c5f610d64565b565b5f6105df8b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c9250610894915050565b602081015181519192506105f2916116d5565b3410156106125760405163044044a560e21b815260040160405180910390fd5b6106b38b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f82011690508083019250505050505050896106ae8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f820116905080830192505050505050508d8d8d8d8d8d8d8d610507565b610db3565b604051635200a4c160e11b81525f906001600160a01b037f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e18417204169063a40149829061070b908f908f908f908f908e908b906004016116e8565b6020604051808303815f875af1158015610727573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061074b9190611732565b9050841561077657610776878d8d604051610767929190611749565b60405180910390208888610ece565b83156107be576107be8c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508b9250339150610f939050565b896001600160a01b03168c8c6040516107d8929190611749565b60405180910390207f69e37f151eb98a09618ddaa80c8cfaf1ce5996867c489f45b555b412271ebf278e8e865f015187602001518760405161081e959493929190611758565b60405180910390a36020820151825161083791906116d5565b341115610886576020820151825133916108fc9161085591906116d5565b61085f9034611788565b6040518115909202915f818181858888f19350505050158015610884573d5f803e3d5ffd5b505b505050505050505050505050565b604080518082019091525f808252602082015282516020840120604051636b727d4360e11b8152600481018290527f000000000000000000000000ec71e4e674fe0f432693dc2b935c34bd2774c0036001600160a01b03908116916350e9a7159187917f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063d6e4fa8690602401602060405180830381865afa158015610940573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109649190611732565b866040518463ffffffff1660e01b8152600401610983939291906117e8565b6040805180830381865afa15801561099d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109c1919061180c565b949350505050565b5f60036109d583611044565b101592915050565b5f83836040516109ee929190611749565b604080519182900382206020601f8701819004810284018101909252858352925082915f91610a39919088908890819084018382808284375f92019190915250889250610894915050565b8051909150341015610a5e5760405163044044a560e21b815260040160405180910390fd5b60405163c475abff60e01b815260048101839052602481018590525f907f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b03169063c475abff906044016020604051808303815f875af1158015610acb573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610aef9190611732565b8251909150341115610b3457815133906108fc90610b0d9034611788565b6040518115909202915f818181858888f19350505050158015610b32573d5f803e3d5ffd5b505b837f3da24c024582931cfaf8267d8ed24d13a82a8068d5bd337d30ec45cea4e506ae88883485604051610b6a9493929190611859565b60405180910390a250505050505050565b805160208201205f90610b8d836109c9565b8015610c1b57506040516312dc929d60e31b8152600481018290527f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b0316906396e494e890602401602060405180830381865afa158015610bf7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c1b9190611589565b9392505050565b5f818152600160205260409020544290610c5d907f0000000000000000000000000000000000000000000000000000000000015180906116d5565b10610c8357604051630a059d7160e01b8152600481018290526024015b60405180910390fd5b5f908152600160205260409020429055565b610c9d610d0b565b6001600160a01b038116610d025760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610c7a565b61048681610d64565b5f546001600160a01b0316331461059c5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610c7a565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f818152600160205260409020544290610dee907f0000000000000000000000000000000000000000000000000000000000000258906116d5565b1115610e1057604051635320bcf960e01b815260048101829052602401610c7a565b5f818152600160205260409020544290610e4b907f0000000000000000000000000000000000000000000000000000000000015180906116d5565b11610e6c5760405163cb7690d760e01b815260048101829052602401610c7a565b610e7583610b7b565b610e9457826040516308eee0fd60e31b8152600401610c7a919061187f565b5f818152600160205260408120556224ea00821015610ec957604051639a71997b60e01b815260048101839052602401610c7a565b505050565b604080517f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae6020808301919091528183018690528251808303840181526060830193849052805191012063e32954eb60e01b90925285906001600160a01b0382169063e32954eb90610f4890859088908890606401611891565b5f604051808303815f875af1158015610f63573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052610f8a91908101906118b3565b50505050505050565b7f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d566001600160a01b0316637a806d6b33838587604051602001610fd691906119a7565b6040516020818303038152906040526040518563ffffffff1660e01b815260040161100494939291906119ce565b6020604051808303815f875af1158015611020573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105019190611732565b80515f90819081905b8082101561113c575f85838151811061106857611068611a0b565b01602001516001600160f81b0319169050600160ff1b811015611097576110906001846116d5565b9250611129565b600760fd1b6001600160f81b0319821610156110b8576110906002846116d5565b600f60fc1b6001600160f81b0319821610156110d9576110906003846116d5565b601f60fb1b6001600160f81b0319821610156110fa576110906004846116d5565b603f60fa1b6001600160f81b03198216101561111b576110906005846116d5565b6111266006846116d5565b92505b508261113481611a1f565b93505061104d565b50909392505050565b5f60208284031215611155575f80fd5b81356001600160e01b031981168114610c1b575f80fd5b80356001600160a01b0381168114611182575f80fd5b919050565b5f805f60608486031215611199575f80fd5b6111a28461116c565b92506111b06020850161116c565b9150604084013590509250925092565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff811182821017156111fd576111fd6111c0565b604052919050565b5f67ffffffffffffffff82111561121e5761121e6111c0565b50601f01601f191660200190565b5f82601f83011261123b575f80fd5b813561124e61124982611205565b6111d4565b818152846020838601011115611262575f80fd5b816020850160208301375f918101602001919091529392505050565b5f8083601f84011261128e575f80fd5b50813567ffffffffffffffff8111156112a5575f80fd5b6020830191508360208260051b85010111156112bf575f80fd5b9250929050565b8015158114610486575f80fd5b803561ffff81168114611182575f80fd5b5f805f805f805f805f6101008a8c0312156112fd575f80fd5b893567ffffffffffffffff80821115611314575f80fd5b6113208d838e0161122c565b9a5061132e60208d0161116c565b995060408c0135985060608c0135975061134a60808d0161116c565b965060a08c013591508082111561135f575f80fd5b5061136c8c828d0161127e565b90955093505060c08a0135611380816112c6565b915061138e60e08b016112d3565b90509295985092959850929598565b5f8083601f8401126113ad575f80fd5b50813567ffffffffffffffff8111156113c4575f80fd5b6020830191508360208285010111156112bf575f80fd5b5f805f805f805f805f806101008b8d0312156113f5575f80fd5b8a3567ffffffffffffffff8082111561140c575f80fd5b6114188e838f0161139d565b909c509a508a915061142c60208e0161116c565b995060408d0135985060608d0135975061144860808e0161116c565b965060a08d013591508082111561145d575f80fd5b5061146a8d828e0161127e565b90955093505060c08b013561147e816112c6565b915061148c60e08c016112d3565b90509295989b9194979a5092959850565b5f602082840312156114ad575f80fd5b5035919050565b5f80604083850312156114c5575f80fd5b823567ffffffffffffffff8111156114db575f80fd5b6114e78582860161122c565b95602094909401359450505050565b5f60208284031215611506575f80fd5b813567ffffffffffffffff81111561151c575f80fd5b6109c18482850161122c565b5f805f6040848603121561153a575f80fd5b833567ffffffffffffffff811115611550575f80fd5b61155c8682870161139d565b909790965060209590950135949350505050565b5f60208284031215611580575f80fd5b610c1b8261116c565b5f60208284031215611599575f80fd5b8151610c1b816112c6565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b5f838385526020808601955060208560051b830101845f5b8781101561165157848303601f19018952813536889003601e19018112611609575f80fd5b8701848101903567ffffffffffffffff811115611624575f80fd5b803603821315611632575f80fd5b61163d8582846115a4565b9a86019a94505050908301906001016115e4565b5090979650505050505050565b8981526001600160a01b03898116602083015260408201899052606082018890528616608082015261010060a082018190525f9061169f83820187896115cc565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610449576104496116c1565b60a081525f6116fb60a08301888a6115a4565b6001600160a01b03968716602084015260408301959095525091909316606082015261ffff90921660809092019190915292915050565b5f60208284031215611742575f80fd5b5051919050565b818382375f9101908152919050565b608081525f61176b6080830187896115a4565b602083019590955250604081019290925260609091015292915050565b81810381811115610449576104496116c1565b5f5b838110156117b557818101518382015260200161179d565b50505f910152565b5f81518084526117d481602086016020860161179b565b601f01601f19169290920160200192915050565b606081525f6117fa60608301866117bd565b60208301949094525060400152919050565b5f6040828403121561181c575f80fd5b6040516040810181811067ffffffffffffffff8211171561183f5761183f6111c0565b604052825181526020928301519281019290925250919050565b606081525f61186c6060830186886115a4565b6020830194909452506040015292915050565b602081525f610c1b60208301846117bd565b838152604060208201525f6118aa6040830184866115cc565b95945050505050565b5f60208083850312156118c4575f80fd5b825167ffffffffffffffff808211156118db575f80fd5b818501915085601f8301126118ee575f80fd5b815181811115611900576119006111c0565b8060051b61190f8582016111d4565b9182528381018501918581019089841115611928575f80fd5b86860192505b8383101561199a57825185811115611944575f80fd5b8601603f81018b13611954575f80fd5b87810151604061196661124983611205565b8281528d82848601011115611979575f80fd5b611988838c830184870161179b565b8552505050918601919086019061192e565b9998505050505050505050565b5f82516119b881846020870161179b565b6305ccae8d60e31b920191825250600401919050565b6001600160a01b0385811682528481166020830152831660408201526080606082018190525f90611a01908301846117bd565b9695505050505050565b634e487b7160e01b5f52603260045260245ffd5b5f60018201611a3057611a306116c1565b506001019056fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x5155f5627bdf9795b3dbb8887001ada1eeba93f2":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063de8f50a11461002d575b5f80fd5b61004761003b3660046100a0565b60019695505050505050565b604051901515815260200160405180910390f35b5f8083601f84011261006b575f80fd5b50813567ffffffffffffffff811115610082575f80fd5b602083019150836020828501011115610099575f80fd5b9250929050565b5f805f805f80606087890312156100b5575f80fd5b863567ffffffffffffffff808211156100cc575f80fd5b6100d88a838b0161005b565b909850965060208901359150808211156100f0575f80fd5b6100fc8a838b0161005b565b90965094506040890135915080821115610114575f80fd5b5061012189828a0161005b565b979a969950949750929593949250505056fea164736f6c6343000818000a","storage":{}},"0x54563a9e1cd2dcbd0bca90d3cfa4a647e02c404a":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106101db575f3560e01c80638da5cb5b116100fd578063c4d66de811610092578063daea85c511610062578063daea85c51461055e578063e7acab241461057d578063f2fde38b1461059c578063ffa1ad74146105bb575f80fd5b8063c4d66de8146104e1578063d539139314610500578063d547741f14610520578063d9caed121461053f575f80fd5b8063a217fddf116100cd578063a217fddf14610452578063a3f4df7e14610465578063a4247400146104a3578063aa271e1a146104c2575f80fd5b80638da5cb5b146103d957806391d1485414610400578063983b2d561461041f578063986502751461043e575f80fd5b80635c975abb11610173578063715018a611610143578063715018a61461037f57806371e2a6571461039357806381c81d35146103b25780638456cb59146103c5575f80fd5b80635c975abb146103165780635fc1964f1461032e578063634486da1461034d5780636ccbae5f14610360575f80fd5b80633092afd5116101ae5780633092afd51461029c57806336568abe146102bb5780633f4ba83a146102da578063572b6c05146102ee575f80fd5b806301ffc9a7146101df5780631bf7e13e14610213578063248a9ca31461023f5780632f2ff15d1461027b575b5f80fd5b3480156101ea575f80fd5b506101fe6101f9366004611ee0565b6105eb565b60405190151581526020015b60405180910390f35b34801561021e575f80fd5b5061023261022d366004611f07565b610621565b60405161020a9190611fe9565b34801561024a575f80fd5b5061026d610259366004611ffb565b5f90815260fb602052604090206001015490565b60405190815260200161020a565b348015610286575f80fd5b5061029a610295366004612036565b6106ea565b005b3480156102a7575f80fd5b5061029a6102b6366004612064565b610713565b3480156102c6575f80fd5b5061029a6102d5366004612036565b610727565b3480156102e5575f80fd5b5061029a6107ba565b3480156102f9575f80fd5b506101fe610308366004612064565b6001600160a01b0316301490565b348015610321575f80fd5b5061012d5460ff166101fe565b348015610339575f80fd5b5061029a6103483660046120eb565b6107d4565b61029a61035b366004612064565b610811565b34801561036b575f80fd5b5061026d61037a366004611ffb565b6108d1565b34801561038a575f80fd5b5061029a61092a565b34801561039e575f80fd5b5061029a6103ad3660046120eb565b61093b565b61029a6103c0366004612064565b610978565b3480156103d0575f80fd5b5061029a6109f5565b3480156103e4575f80fd5b506097546040516001600160a01b03909116815260200161020a565b34801561040b575f80fd5b506101fe61041a366004612036565b610a0d565b34801561042a575f80fd5b5061029a610439366004612064565b610a37565b348015610449575f80fd5b5061029a610a48565b34801561045d575f80fd5b5061026d5f81565b348015610470575f80fd5b506102326040518060400160405280601381526020017229b2b0b837b93a10283937bc3c90213abcb2b960691b81525081565b3480156104ae575f80fd5b506101fe6104bd366004611f07565b610a61565b3480156104cd575f80fd5b506101fe6104dc366004612064565b610ab2565b3480156104ec575f80fd5b5061029a6104fb366004612064565b610aca565b34801561050b575f80fd5b5061026d5f80516020612ea783398151915281565b34801561052b575f80fd5b5061029a61053a366004612036565b610c21565b34801561054a575f80fd5b5061029a61055936600461218b565b610c45565b348015610569575f80fd5b5061029a610578366004612064565b610cf7565b348015610588575f80fd5b506101fe6105973660046121c9565b610dac565b3480156105a7575f80fd5b5061029a6105b6366004612064565b6111db565b3480156105c6575f80fd5b5061023260405180604001604052806005815260200164302e302e3160d81b81525081565b5f6001600160e01b03198216637965db0b60e01b148061061b57506301ffc9a760e01b6001600160e01b03198316145b92915050565b60605f5a9050610632858585610a61565b61064f57604051638baa579f60e01b815260040160405180910390fd5b6106df61065f6020870187612064565b3060408801358461067360608b018b61227b565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f920191909152506111f692505050565b9150505b9392505050565b5f82815260fb6020526040902060010154610704816112d4565b61070e83836112e5565b505050565b61071b61136b565b610724816113e4565b50565b61072f6113fb565b6001600160a01b0316816001600160a01b0316146107ac5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6107b68282611409565b5050565b6107c261136b565b6107ca61148d565b6107d26114d7565b565b6107dc61136b565b5f5b81518110156107b6576108098282815181106107fc576107fc6122bd565b60200260200101516113e4565b6001016107de565b61081c6104dc6113fb565b6108385760405162461bcd60e51b81526004016107a3906122d1565b6001600160a01b03811661088e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016107a3565b61089781611530565b61089f610a48565b6040516001600160a01b038216903480156108fc02915f818181858888f193505050501580156107b6573d5f803e3d5ffd5b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f90610923906060016040516020818303038152906040528051906020012090565b5492915050565b61093261136b565b6107d25f611547565b61094361136b565b5f5b81518110156107b657610970828281518110610963576109636122bd565b6020026020010151611530565b600101610945565b6109836104dc6113fb565b61099f5760405162461bcd60e51b81526004016107a3906122d1565b6001600160a01b0381166108975760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016107a3565b6109fd61136b565b610a05611598565b6107d26115df565b5f91825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610a3f61136b565b61072481611530565b6107d25f80516020612ea78339815191526102d56113fb565b5f610aaa610a6e85612306565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061161e92505050565b949350505050565b5f61061b5f80516020612ea783398151915283610a0d565b5f54610100900460ff1615808015610ae857505f54600160ff909116105b80610b015750303b158015610b0157505f5460ff166001145b610b645760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107a3565b5f805460ff191660011790558015610b85575f805461ff0019166101001790555b61015f80546001600160a01b0319166001600160a01b038416179055610ba9611759565b610bb1611786565b610bb9611786565b610bc1611786565b610bc96117ac565b610bd16117e2565b610bd9611819565b80156107b6575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b5f82815260fb6020526040902060010154610c3b816112d4565b61070e8383611409565b610c4d61136b565b600260335403610c6f5760405162461bcd60e51b81526004016107a3906123c2565b6002603355610c7c611598565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af1158015610cc8573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cec91906123f9565b505060016033555050565b610cff61136b565b600260335403610d215760405162461bcd60e51b81526004016107a3906123c2565b6002603355610d2e611598565b61015f5460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529082169063095ea7b3906044016020604051808303815f875af1158015610d7f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610da391906123f9565b50506001603355565b5f610db86104dc6113fb565b610dd45760405162461bcd60e51b81526004016107a3906122d1565b600260335403610df65760405162461bcd60e51b81526004016107a3906123c2565b6002603355610e03611598565b6001600160a01b038216610e2a576040516311d000e160e31b815260040160405180910390fd5b30610e358780612418565b610e46906040810190602001612064565b6001600160a01b031614610e6d57604051639d3c586b60e01b815260040160405180910390fd5b610e75611e67565b610e7f8780612418565b610e8d906020810190612064565b6001600160a01b03168152610ea28780612418565b610eb3906040810190602001612064565b6001600160a01b03166020820152610ecb8780612418565b610ed9906040810190612437565b808060200260200160405190810160405280939291908181526020015f905b82821015610f2457610f1560a08302860136819003810190612489565b81526020019060010190610ef8565b50505050506040820152610f388780612418565b610f46906060810190612506565b808060200260200160405190810160405280939291908181526020015f905b82821015610f9157610f8260c0830286013681900381019061254a565b81526020019060010190610f65565b50505050506060820152610fa58780612418565b610fb69060a08101906080016125e5565b81608001906004811115610fcc57610fcc6125fe565b90816004811115610fdf57610fdf6125fe565b905250610fec8780612418565b60a090810135908201526110008780612418565b60c090810135908201526110148780612418565b60e090810135908201526110288780612418565b610100908101359082015261103d8780612418565b610120908101359082015261015f54815160405163f07ec37360e01b81526001600160a01b03918216600482015291169063f07ec37390602401602060405180830381865afa158015611092573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110b69190612612565b61014082015261015f546040516379df72bd60e01b8152611133916001600160a01b0316906379df72bd906110ef908590600401612737565b602060405180830381865afa15801561110a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061112e9190612612565b61184c565b61015f546040516339eb2ac960e21b81526001600160a01b039091169063e7acab249061116c908a908a908a908a908a90600401612b24565b6020604051808303815f875af1158015611188573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111ac91906123f9565b9150816111cc57604051636725093760e01b815260040160405180910390fd5b50600160335595945050505050565b6111e361136b565b6111ec81611865565b6107245f826118db565b6060611201856118e5565b5f80876001600160a01b03168661121a8b8a898961194a565b6040516112279190612cfa565b5f604051808303815f8787f1925050503d805f8114611261576040519150601f19603f3d011682016040523d82523d5f602084013e611266565b606091505b509092509050611277603f87612d1f565b5a1161128557611285612d3e565b6112c582826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061197a565b925050505b9695505050505050565b610724816112e06113fb565b6119b3565b6112ef8282610a0d565b6107b6575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191660011790556113276113fb565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6113736113fb565b6001600160a01b031661138e6097546001600160a01b031690565b6001600160a01b0316146107d25760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107a3565b6107245f80516020612ea783398151915282610c21565b5f611404611a17565b905090565b6114138282610a0d565b156107b6575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191690556114496113fb565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b61012d5460ff166107d25760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b60448201526064016107a3565b6114df61148d565b61012d805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6115136113fb565b6040516001600160a01b03909116815260200160405180910390a1565b6107245f80516020612ea7833981519152826118db565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b61012d5460ff16156107d25760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b60448201526064016107a3565b6115e7611598565b61012d805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586115136113fb565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015611662573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116869190612612565b90505f6117338660600151805190602001208688602001516040516020016116d39392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156112ca575085516112ca906001600160a01b03168286611a34565b5f54610100900460ff1661177f5760405162461bcd60e51b81526004016107a390612d52565b6001603355565b5f54610100900460ff166107d25760405162461bcd60e51b81526004016107a390612d52565b5f54610100900460ff166117d25760405162461bcd60e51b81526004016107a390612d52565b6107d26117dd6113fb565b611547565b5f54610100900460ff166118085760405162461bcd60e51b81526004016107a390612d52565b6107d25f6118146113fb565b6118db565b5f54610100900460ff1661183f5760405162461bcd60e51b81526004016107a390612d52565b61012d805460ff19169055565b30330361185c5761072481611b6f565b610724816118e5565b61186d61136b565b6001600160a01b0381166118d25760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107a3565b61072481611547565b6107b682826112e5565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f906060016040516020818303038152906040528051906020012090506119398190565b54611945906001612d9d565b905550565b606082858560405160200161196193929190612db0565b6040516020818303038152906040529050949350505050565b606083156119895750816106e3565b8251156119995782518084602001fd5b8160405162461bcd60e51b81526004016107a39190611fe9565b6119bd8282610a0d565b6107b6576119d5816001600160a01b03166014611b99565b6119e0836020611b99565b6040516020016119f1929190612dee565b60408051601f198184030181529082905262461bcd60e51b82526107a391600401611fe9565b5f303303611a2c575060331936013560601c90565b503390565b90565b5f805f611a418585611d2e565b90925090505f816004811115611a5957611a596125fe565b148015611a775750856001600160a01b0316826001600160a01b0316145b15611a87576001925050506106e3565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401611aae929190612e62565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051611aec9190612cfa565b5f60405180830381855afa9150503d805f8114611b24576040519150601f19603f3d011682016040523d82523d5f602084013e611b29565b606091505b5091509150818015611b3c575080516020145b8015611b6357508051630b135d3f60e11b90611b619083016020908101908401612612565b145b98975050505050505050565b611b77611d70565b811461072457604051635637b6af60e11b8152600481018290526024016107a3565b60605f611ba7836002612e7a565b611bb2906002612d9d565b6001600160401b03811115611bc957611bc961207f565b6040519080825280601f01601f191660200182016040528015611bf3576020820181803683370190505b509050600360fc1b815f81518110611c0d57611c0d6122bd565b60200101906001600160f81b03191690815f1a905350600f60fb1b81600181518110611c3b57611c3b6122bd565b60200101906001600160f81b03191690815f1a9053505f611c5d846002612e7a565b611c68906001612d9d565b90505b6001811115611cdf576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611c9c57611c9c6122bd565b1a60f81b828281518110611cb257611cb26122bd565b60200101906001600160f81b03191690815f1a90535060049490941c93611cd881612e91565b9050611c6b565b5083156106e35760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016107a3565b5f808251604103611d62576020830151604084015160608501515f1a611d5687828585611d82565b94509450505050611d69565b505f905060025b9250929050565b5f303303611a315750601f1936013590565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115611db757505f90506003611e5e565b8460ff16601b14158015611dcf57508460ff16601c14155b15611ddf57505f90506004611e5e565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015611e30573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b038116611e58575f60019250925050611e5e565b91505f90505b94509492505050565b6040518061016001604052805f6001600160a01b031681526020015f6001600160a01b0316815260200160608152602001606081526020015f6004811115611eb157611eb16125fe565b81525f6020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b5f60208284031215611ef0575f80fd5b81356001600160e01b0319811681146106e3575f80fd5b5f805f60408486031215611f19575f80fd5b83356001600160401b0380821115611f2f575f80fd5b9085019060808288031215611f42575f80fd5b90935060208501359080821115611f57575f80fd5b818601915086601f830112611f6a575f80fd5b813581811115611f78575f80fd5b876020828501011115611f89575f80fd5b6020830194508093505050509250925092565b5f5b83811015611fb6578181015183820152602001611f9e565b50505f910152565b5f8151808452611fd5816020860160208601611f9c565b601f01601f19169290920160200192915050565b602081525f6106e36020830184611fbe565b5f6020828403121561200b575f80fd5b5035919050565b6001600160a01b0381168114610724575f80fd5b803561203181612012565b919050565b5f8060408385031215612047575f80fd5b82359150602083013561205981612012565b809150509250929050565b5f60208284031215612074575f80fd5b81356106e381612012565b634e487b7160e01b5f52604160045260245ffd5b604051608081016001600160401b03811182821017156120b5576120b561207f565b60405290565b604051601f8201601f191681016001600160401b03811182821017156120e3576120e361207f565b604052919050565b5f60208083850312156120fc575f80fd5b82356001600160401b0380821115612112575f80fd5b818501915085601f830112612125575f80fd5b8135818111156121375761213761207f565b8060051b91506121488483016120bb565b8181529183018401918481019088841115612161575f80fd5b938501935b83851015611b63578435925061217b83612012565b8282529385019390850190612166565b5f805f6060848603121561219d575f80fd5b83356121a881612012565b925060208401356121b881612012565b929592945050506040919091013590565b5f805f805f608086880312156121dd575f80fd5b85356001600160401b03808211156121f3575f80fd5b9087019060a0828a031215612206575f80fd5b9095506020870135908082111561221b575f80fd5b818801915088601f83011261222e575f80fd5b81358181111561223c575f80fd5b8960208260051b8501011115612250575f80fd5b6020830196508095505050506040860135915061226f60608701612026565b90509295509295909350565b5f808335601e19843603018112612290575f80fd5b8301803591506001600160401b038211156122a9575f80fd5b602001915036819003821315611d69575f80fd5b634e487b7160e01b5f52603260045260245ffd5b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b5f60808236031215612316575f80fd5b61231e612093565b823561232981612012565b8152602083810135818301526040808501359083015260608401356001600160401b0380821115612358575f80fd5b9085019036601f83011261236a575f80fd5b81358181111561237c5761237c61207f565b61238e601f8201601f191685016120bb565b915080825236848285010111156123a3575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b5f60208284031215612409575f80fd5b815180151581146106e3575f80fd5b5f823561015e1983360301811261242d575f80fd5b9190910192915050565b5f808335601e1984360301811261244c575f80fd5b8301803591506001600160401b03821115612465575f80fd5b602001915060a081023603821315611d69575f80fd5b803560068110612031575f80fd5b5f60a08284031215612499575f80fd5b60405160a081018181106001600160401b03821117156124bb576124bb61207f565b6040526124c78361247b565b815260208301356124d781612012565b806020830152506040830135604082015260608301356060820152608083013560808201528091505092915050565b5f808335601e1984360301811261251b575f80fd5b8301803591506001600160401b03821115612534575f80fd5b602001915060c081023603821315611d69575f80fd5b5f60c0828403121561255a575f80fd5b60405160c081018181106001600160401b038211171561257c5761257c61207f565b6040526125888361247b565b8152602083013561259881612012565b8060208301525060408301356040820152606083013560608201526080830135608082015260a08301356125cb81612012565b60a08201529392505050565b803560058110612031575f80fd5b5f602082840312156125f5575f80fd5b6106e3826125d7565b634e487b7160e01b5f52602160045260245ffd5b5f60208284031215612622575f80fd5b5051919050565b60068110612639576126396125fe565b9052565b5f815180845260208085019450602084015f5b838110156126a6578151612665888251612629565b838101516001600160a01b03168885015260408082015190890152606080820151908901526080908101519088015260a09096019590820190600101612650565b509495945050505050565b5f815180845260208085019450602084015f5b838110156126a65781516126d9888251612629565b808401516001600160a01b0390811689860152604080830151908a0152606080830151908a0152608080830151908a015260a091820151169088015260c090960195908201906001016126c4565b60058110612639576126396125fe565b602081526127516020820183516001600160a01b03169052565b5f602083015161276c60408401826001600160a01b03169052565b50604083015161016080606085015261278961018085018361263d565b91506060850151601f198584030160808601526127a683826126b1565b92505060808501516127bb60a0860182612727565b5060a085015160c085015260c085015160e085015260e0850151610100818187015280870151915050610120818187015280870151915050610140818187015280870151838701525050508091505092915050565b5f808335601e19843603018112612825575f80fd5b83016020810192503590506001600160401b03811115612843575f80fd5b60a081023603821315611d69575f80fd5b8183525f60208085019450825f5b858110156126a65761287c876128778461247b565b612629565b8282013561288981612012565b6001600160a01b03168388015260408281013590880152606080830135908801526080808301359088015260a09687019690910190600101612862565b5f808335601e198436030181126128db575f80fd5b83016020810192503590506001600160401b038111156128f9575f80fd5b60c081023603821315611d69575f80fd5b8183525f60208085019450825f5b858110156126a65761292d876128778461247b565b8282013561293a81612012565b6001600160a01b039081168885015260408381013590890152606080840135908901526080808401359089015260a0908382013561297781612012565b169088015260c0968701969190910190600101612918565b80356001600160781b0381168114612031575f80fd5b5f808335601e198436030181126129ba575f80fd5b83016020810192503590506001600160401b038111156129d8575f80fd5b803603821315611d69575f80fd5b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b8183525f6001600160fb1b03831115612a25575f80fd5b8260051b80836020870137939093016020019392505050565b8183526020808401935f91600585811b8301820185855b88811015612b1657858303601f19018a52813536899003609e19018112612a7a575f80fd5b88018035845260a08682013560028110612a92575f80fd5b85880152604082810135908601526060808301359086015260808083013536849003601e19018112612ac2575f80fd5b9092018781019290356001600160401b03811115612ade575f80fd5b80881b3603841315612aee575f80fd5b8282880152612b008388018286612a0e565b9d89019d96505050928601925050600101612a55565b509098975050505050505050565b608081525f610120873561015e19893603018112612b40575f80fd5b60a060808501528801612b65828501612b5883612026565b6001600160a01b03169052565b612b7160208201612026565b610140612b88818701836001600160a01b03169052565b612b956040840184612810565b610160888101529250612bad61028088018483612854565b925050612bbd60608401846128c6565b87840361011f1901610180890152612bd684828461290a565b93505050612be6608084016125d7565b612bf46101a0880182612727565b5060a08301356101c087015260c08301356101e087015260e0830135610200870152610100808401356102208801528484013561024088015281840135610260880152612c4360208d0161298f565b6001600160781b03811660a08901529450612c6060408d0161298f565b6001600160781b03811660c08901529450612c7e60608d018d6129a5565b95509350607f199150818784030160e0880152612c9c8386866129e6565b9450612cab60808d018d6129a5565b945092508187860301818801525050612cc58383836129e6565b925050508281036020840152612cdc818789612a3e565b9150508360408301526112ca60608301846001600160a01b03169052565b5f825161242d818460208701611f9c565b634e487b7160e01b5f52601160045260245ffd5b5f82612d3957634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b8082018082111561061b5761061b612d0b565b5f8451612dc1818460208901611f9c565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081525f8351612e25816017850160208801611f9c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351612e56816028840160208801611f9c565b01602801949350505050565b828152604060208201525f610aaa6040830184611fbe565b808202811582820484141761061b5761061b612d0b565b5f81612e9f57612e9f612d0b565b505f19019056fe9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000818000a","storage":{"0x0":"0xff"}},"0x58a175bebc8ec21a94ea63aa5a28743945940ee6":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106101165760003560e01c806391d14854116100a2578063c4d66de811610071578063c4d66de8146103bb578063ca15c873146103e1578063d547741f146103fe578063e375b64e1461042a578063ec87621c146104b957610116565b806391d14854146103635780639559c0bd146103a3578063a217fddf146103ab578063b017a30f146103b357610116565b80634794b430116100e95780634794b4301461024f57806349f5124b14610257578063609c92b81461025f5780638274664f146102675780639010d07c1461032457610116565b8063150b7a021461011b578063248a9ca3146101c65780632f2ff15d146101f557806336568abe14610223575b600080fd5b6101a96004803603608081101561013157600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561016b57600080fd5b82018360208201111561017d57600080fd5b803590602001918460018302840111600160201b8311171561019e57600080fd5b5090925090506104c1565b604080516001600160e01b03199092168252519081900360200190f35b6101e3600480360360208110156101dc57600080fd5b50356104d2565b60408051918252519081900360200190f35b6102216004803603604081101561020b57600080fd5b50803590602001356001600160a01b03166104ea565b005b6102216004803603604081101561023957600080fd5b50803590602001356001600160a01b0316610556565b6101e36105b7565b6101e36105db565b6101e36105ff565b6102216004803603606081101561027d57600080fd5b6001600160a01b038235811692602081013590911691810190606081016040820135600160201b8111156102b057600080fd5b8201836020820111156102c257600080fd5b803590602001918460018302840111600160201b831117156102e357600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610623945050505050565b6103476004803603604081101561033a57600080fd5b5080359060200135610fa2565b604080516001600160a01b039092168252519081900360200190f35b61038f6004803603604081101561037957600080fd5b50803590602001356001600160a01b0316610fc9565b604080519115158252519081900360200190f35b6101e3610fe7565b6101e3610fec565b6101e3610ff1565b610221600480360360208110156103d157600080fd5b50356001600160a01b0316611015565b6101e3600480360360208110156103f757600080fd5b50356110cf565b6102216004803603604081101561041457600080fd5b50803590602001356001600160a01b03166110e6565b6102216004803603608081101561044057600080fd5b6001600160a01b0382358116926020810135821692604082013590921691810190608081016060820135600160201b81111561047b57600080fd5b82018360208201111561048d57600080fd5b803590602001918460018302840111600160201b831117156104ae57600080fd5b50909250905061113f565b6101e36114e6565b630a85bd0160e11b95945050505050565b6000818152602081905260409020600201545b919050565b60008281526020819052604090206002015461050d906105086114f8565b610fc9565b6105485760405162461bcd60e51b815260040180806020018281038252602f815260200180611f42602f913960400191505060405180910390fd5b61055282826114fd565b5050565b61055e6114f8565b6001600160a01b0316816001600160a01b0316146105ad5760405162461bcd60e51b815260040180806020018281038252602f8152602001806120bb602f913960400191505060405180910390fd5b610552828261156c565b7ff871896b17e9cb7a64941c62c188a4f5c621b86800e3d15452ece01ce56073df81565b7ff94915c6d1fd521cee85359239227480c7e8776d7caf1fc3bacad5c269b66a1481565b7fd4392723c111fcb98b073fe55873efb447bcd23cd3e49ec9ea2581930cd01ddc81565b60008051602061204b83398151915261063e816105086114f8565b6001906106de5760405162461bcd60e51b81526020600482019081528254600260001961010060018416150201909116046024830181905290918291604490910190849080156106cf5780601f106106a4576101008083540402835291602001916106cf565b820191906000526020600020905b8154815290600101906020018083116106b257829003601f168201915b50509250505060405180910390fd5b5060606106f26106ed846115db565b611656565b905060606107138260018151811061070657fe5b6020026020010151611656565b90507fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60001b6107568260008151811061074957fe5b60200260200101516117d8565b141561095457600061076e8260018151811061074957fe5b905060006001600160a01b031661078b8360028151811061074957fe5b6001600160a01b0316146107d05760405162461bcd60e51b815260040180806020018281038252602981526020018061206b6029913960400191505060405180910390fd5b600086905060006107e78460038151811061074957fe5b9050816001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b15801561082d57600080fd5b505afa158015610841573d6000803e3d6000fd5b505050506040513d602081101561085757600080fd5b5051156108d35760408051632142170760e11b81523060048201526001600160a01b038581166024830152604482018490529151918416916342842e0e9160648082019260009290919082900301818387803b1580156108b657600080fd5b505af11580156108ca573d6000803e3d6000fd5b5050505061094c565b816001600160a01b03166340c10f1984836040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b15801561093357600080fd5b505af1158015610947573d6000803e3d6000fd5b505050505b505050610f9a565b7ff871896b17e9cb7a64941c62c188a4f5c621b86800e3d15452ece01ce56073df60001b6109888260008151811061074957fe5b1415610c085760006109a08260018151811061074957fe5b905060606109c1846002815181106109b457fe5b6020026020010151611920565b905060608180602001905160208110156109da57600080fd5b8101908080516040519392919084600160201b8211156109f957600080fd5b908301906020820185811115610a0e57600080fd5b82518660208202830111600160201b82111715610a2a57600080fd5b82525081516020918201928201910280838360005b83811015610a57578181015183820152602001610a3f565b5050505091909101604052505082519293508a9150600090505b82811015610bfd576000848281518110610a8757fe5b60200260200101519050826001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610ad557600080fd5b505afa158015610ae9573d6000803e3d6000fd5b505050506040513d6020811015610aff57600080fd5b505115610b7b5760408051632142170760e11b81523060048201526001600160a01b038981166024830152604482018490529151918516916342842e0e9160648082019260009290919082900301818387803b158015610b5e57600080fd5b505af1158015610b72573d6000803e3d6000fd5b50505050610bf4565b826001600160a01b03166340c10f1988836040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b158015610bdb57600080fd5b505af1158015610bef573d6000803e3d6000fd5b505050505b50600101610a71565b505050505050610f9a565b7ff94915c6d1fd521cee85359239227480c7e8776d7caf1fc3bacad5c269b66a1460001b610c3c8260008151811061074957fe5b1415610f63576000610c548260018151811061074957fe5b905060006001600160a01b0316610c718360028151811061074957fe5b6001600160a01b031614610cb65760405162461bcd60e51b815260040180806020018281038252602981526020018061206b6029913960400191505060405180910390fd5b60008690506000610ccd8460038151811061074957fe5b9050816001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610d1357600080fd5b505afa158015610d27573d6000803e3d6000fd5b505050506040513d6020811015610d3d57600080fd5b505115610d9c5760408051632142170760e11b81523060048201526001600160a01b038581166024830152604482018490529151918416916342842e0e9160648082019260009290919082900301818387803b1580156108b657600080fd5b6060610dae866002815181106109b457fe5b90506060818060200190516020811015610dc757600080fd5b8101908080516040519392919084600160201b821115610de657600080fd5b908301906020820185811115610dfb57600080fd5b8251600160201b811182820188101715610e1457600080fd5b82525081516020918201929091019080838360005b83811015610e41578181015183820152602001610e29565b50505050905090810190601f168015610e6e5780820380516001836020036101000a031916815260200191505b506040525050509050836001600160a01b03166394d008ef8685846040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b0316815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610ef3578181015183820152602001610edb565b50505050905090810190601f168015610f205780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015610f4157600080fd5b505af1158015610f55573d6000803e3d6000fd5b505050505050505050610f9a565b60405162461bcd60e51b815260040180806020018281038252602a815260200180611f71602a913960400191505060405180910390fd5b505050505050565b6000828152602081905260408120610fc0908363ffffffff6119ea16565b90505b92915050565b6000828152602081905260408120610fc0908363ffffffff6119f616565b601481565b600081565b7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef81565b60025460ff161561105e576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b61109c6040518060400160405280601781526020017f4d696e7461626c65455243373231507265646963617465000000000000000000815250611a0b565b6110a7600082610548565b6110bf60008051602061204b83398151915282610548565b506002805460ff19166001179055565b6000818152602081905260408120610fc390611aa9565b600082815260208190526040902060020154611104906105086114f8565b6105ad5760405162461bcd60e51b8152600401808060200182810382526030815260200180611fc36030913960400191505060405180910390fd5b60008051602061204b83398151915261115a816105086114f8565b6001906111c05760405162461bcd60e51b81526020600482019081528254600260001961010060018416150201909116046024830181905290918291604490910190849080156106cf5780601f106106a4576101008083540402835291602001916106cf565b50602082141561129f576000838360208110156111dc57600080fd5b5060408051913580835290519092506001600160a01b038088169289821692918b16917fe13244aa06bdc79480ed5fdc6ebe2bb37202fcdf33ecf45dc449f4201f3dc0879181900360200190a460408051632142170760e11b81526001600160a01b038981166004830152306024830152604482018490529151918716916342842e0e9160648082019260009290919082900301818387803b15801561128157600080fd5b505af1158015611295573d6000803e3d6000fd5b5050505050610f9a565b6060838360208110156112b157600080fd5b810190602081018135600160201b8111156112cb57600080fd5b8201836020820111156112dd57600080fd5b803590602001918460208302840111600160201b831117156112fe57600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f8201169050808301925050505050505091929192905050509050846001600160a01b0316866001600160a01b0316886001600160a01b03167fdb55e3a0ae817693fd7b07170d81eab0eb2c239f36fcecbc98b6b58ac5667e7a846040518080602001828103825283818151815260200191508051906020019060200280838360005b838110156113ca5781810151838201526020016113b2565b505050509050019250505060405180910390a48051601481111561141f5760405162461bcd60e51b815260040180806020018281038252602c81526020018061201f602c913960400191505060405180910390fd5b60005b818110156114db57866001600160a01b03166342842e0e8a3086858151811061144757fe5b60200260200101516040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050600060405180830381600087803b1580156114b757600080fd5b505af11580156114cb573d6000803e3d6000fd5b5050600190920191506114229050565b505050505050505050565b60008051602061204b83398151915281565b335b90565b600082815260208190526040902061151b908263ffffffff611ab416565b15610552576115286114f8565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b600082815260208190526040902061158a908263ffffffff611ac916565b15610552576115976114f8565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b6115e3611e6d565b6000825111611639576040805162461bcd60e51b815260206004820152601f60248201527f524c505265616465723a20494e56414c49445f42595445535f4c454e47544800604482015290519081900360640190fd5b506040805180820190915281518152602082810190820152919050565b606061166182611ade565b6116b2576040805162461bcd60e51b815260206004820152601860248201527f524c505265616465723a204954454d5f4e4f545f4c4953540000000000000000604482015290519081900360640190fd5b60006116bd83611b0a565b905060608167ffffffffffffffff811180156116d857600080fd5b5060405190808252806020026020018201604052801561171257816020015b6116ff611e6d565b8152602001906001900390816116f75790505b50905060006117248560200151611b96565b855190915081146117665760405162461bcd60e51b81526004018080602001828103825260278152602001806120946027913960400191505060405180910390fd5b60006117758660200151611c2f565b60208701510190506000805b858110156117cc5761179283611b96565b91506040518060400160405280838152602001848152508582815181106117b557fe5b602090810291909101015291810191600101611781565b50929695505050505050565b60006117e382611ade565b15611835576040805162461bcd60e51b815260206004820181905260248201527f524c505265616465723a204445434f44494e475f4c4953545f41535f55494e54604482015290519081900360640190fd5b81516021101561188c576040805162461bcd60e51b815260206004820152601e60248201527f524c505265616465723a20494e56414c49445f55494e545f4c454e4754480000604482015290519081900360640190fd5b600061189b8360200151611b96565b835190915081146118dd5760405162461bcd60e51b81526004018080602001828103825260278152602001806120ea6027913960400191505060405180910390fd5b60006118ec8460200151611c2f565b8451602080870151830180519394509184900392919083101561191657826020036101000a820491505b5095945050505050565b606060006119318360200151611b96565b835190915081146119735760405162461bcd60e51b8152600401808060200182810382526028815260200180611f9b6028913960400191505060405180910390fd5b60006119828460200151611c2f565b845190915081900360608167ffffffffffffffff811180156119a357600080fd5b506040519080825280601f01601f1916602001820160405280156119ce576020820181803683370190505b5090506000816020019050611916848860200151018285611c92565b6000610fc08383611cdd565b6000610fc0836001600160a01b038416611d41565b806040516020018082805190602001908083835b60208310611a3e5780518252601f199092019160209182019101611a1f565b51815160209384036101000a60001901801990921691161790527f3a20494e53554646494349454e545f5045524d495353494f4e530000000000009190930190815260408051808303600519018152601a909201905280516105529550600194509201919050611e87565b6000610fc382611d59565b6000610fc0836001600160a01b038416611d5d565b6000610fc0836001600160a01b038416611da7565b6020810151805160009190821a9060c0821015611b00576000925050506104e5565b5060019392505050565b600080600090506000611b208460200151611c2f565b602085015185519181019250015b80821015611b8d57611b3f82611b96565b8201915080821115611b825760405162461bcd60e51b815260040180806020018281038252602c815260200180611ff3602c913960400191505060405180910390fd5b600190920191611b2e565b50909392505050565b80516000908190811a6080811015611bb15760019150611c28565b60b8811015611bc657607e1981019150611c28565b60c0811015611bf35760b78103600185019450806020036101000a85510460018201810193505050611c28565b60f8811015611c085760be1981019150611c28565b60f78103600185019450806020036101000a855104600182018101935050505b5092915050565b8051600090811a6080811015611c495760009150506104e5565b60b8811080611c64575060c08110801590611c64575060f881105b15611c735760019150506104e5565b60c0811015611c875760b5190190506104e5565b60f5190190506104e5565b80611c9c57611cd8565b5b60208110611cbc578251825260209283019290910190601f1901611c9d565b8251825160208390036101000a60001901801990921691161782525b505050565b81546000908210611d1f5760405162461bcd60e51b8152600401808060200182810382526022815260200180611f206022913960400191505060405180910390fd5b826000018281548110611d2e57fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000611d698383611d41565b611d9f57508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610fc3565b506000610fc3565b60008181526001830160205260408120548015611e635783546000198083019190810190600090879083908110611dda57fe5b9060005260206000200154905080876000018481548110611df757fe5b600091825260208083209091019290925582815260018981019092526040902090840190558654879080611e2757fe5b60019003818190600052602060002001600090559055866001016000878152602001908152602001600020600090556001945050505050610fc3565b6000915050610fc3565b604051806040016040528060008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611ec857805160ff1916838001178555611ef5565b82800160010185558215611ef5579182015b82811115611ef5578251825591602001919060010190611eda565b50611f01929150611f05565b5090565b6114fa91905b80821115611f015760008155600101611f0b56fe456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e744d696e7461626c654552433732315072656469636174653a20494e56414c49445f5349474e4154555245524c505265616465723a2042595445535f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b65524c505265616465723a204e554d5f4954454d535f4445434f4445445f4c454e4754485f4d49534d415443484d696e7461626c654552433732315072656469636174653a20455843454544535f42415443485f4c494d4954241ecf16d79d0f8dbfb92cbc07fe17840425976cf0667f022fe9877caa831b084d696e7461626c654552433732315072656469636174653a20494e56414c49445f5245434549564552524c505265616465723a204c4953545f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66524c505265616465723a2055494e545f4445434f4445445f4c454e4754485f4d49534d41544348a164736f6c6343000606000a","storage":{"0x1":"0x63","0x2":"0x1","0x73d5d1a274bdea1400ad3ea4d982f594abdfd528cde1486b6c617faa3ec116":"0x1","0x89011777cfe6194dd982545e7eb24725dfe9a1aacae299c76fc48ef5017ae650":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x89011777cfe6194dd982545e7eb24725dfe9a1aacae299c76fc48ef5017ae651":"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0x1","0xb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6":"0x4d696e7461626c654552433732315072656469636174653a20494e5355464649","0xb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf7":"0x4349454e545f5045524d495353494f4e53000000000000000000000000000000","0xba75a66b8132bebab85d36fd3638083da57ae3d78fbcd8cc41f73514287dadaf":"0x1","0xe6c7d8231a06d7cb67831aeabcbd43ba24e5e4c6569cf23405f1e558de8580e0":"0x2","0xe84508f2c7fa9c351146748b3025cb78b45df37d868e48c6a75102fecdeee645":"0x2","0xe84508f2c7fa9c351146748b3025cb78b45df37d868e48c6a75102fecdeee647":"0x0","0xf0df3dcda05b4fbd9c655cde3d5ceb211e019e72ec816e127a59e7195f2cd7f5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x5cc819c9915eadfcebd76952b8c1bc36cadd7376":{"nonce":2,"balance":"0x0","code":"0x608060405260043610610103575f3560e01c8063a900866b11610092578063f07ec37311610062578063f07ec373146102f7578063f2d12b1214610316578063f47b774014610329578063fb0f3ee114610116578063fd9f1e101461034c575f80fd5b8063a900866b1461028a578063b3a34c4c146102be578063e7acab24146102d1578063ed98a574146102e4575f80fd5b80637423eb3c116100d85780637423eb3c146101f757806379df72bd1461020b57806387201b411461022a578063881477321461024b578063a81744041461026a575f80fd5b801561011657806306fdde031461013e57806346423aa71461015f5780635b34b966146101d5575f80fd5b366101125761011061036b565b005b5f80fd5b610129610124366004615115565b6103f9565b60405190151581526020015b60405180910390f35b348015610149575f80fd5b50610152610408565b604051610135919061518f565b34801561016a575f80fd5b506101b36101793660046151a1565b5f9081526001602052604090205460ff808216926101008304909116916001600160781b03620100008204811692600160881b9092041690565b6040805194151585529215156020850152918301526060820152608001610135565b3480156101e0575f80fd5b506101e9610417565b604051908152602001610135565b348015610202575f80fd5b50610110610420565b348015610216575f80fd5b506101e96102253660046151b8565b6104c1565b61023d61023836600461524c565b6104f8565b6040516101359291906153f0565b348015610256575f80fd5b5061012961026536600461543f565b610571565b61027d61027836600461547d565b61058f565b60405161013591906154e3565b348015610295575f80fd5b506101e96102a43660046154f5565b6001600160a01b03165f9081526002602052604090205490565b6101296102cc36600461550e565b61062a565b6101296102df366004615553565b6106a3565b61023d6102f23660046155d7565b6106e1565b348015610302575f80fd5b506101e96103113660046154f5565b610784565b61027d610324366004615677565b6107a1565b348015610334575f80fd5b5061033d6107ea565b60405161013593929190615719565b348015610357575f80fd5b5061012961036636600461543f565b610801565b7f000000000000000000000000000000000000000000000000000000000000000180156103b357600263929eee145c146103b05763a61be9f05f52346020526024601cfd5b50565b63929eee1454806103e057600263929eee145c146103dc5763a61be9f05f52346020526024601cfd5b5050565b600381146103dc5763a61be9f05f52346020526024601cfd5b5f61040261080c565b92915050565b60606104126109c0565b905090565b5f6104126109d8565b63929eee14546001147f000000000000000000000000000000000000000000000000000000000000000180610453575080155b1561047157604051630f45b98b60e41b815260040160405180910390fd5b61049a7f000000000000000000000000145908bbcfc7b258e4d4d9a586f6e3249ae80216610a45565b6104b7576040516370a4078f60e01b815260040160405180910390fd5b5f63929eee145550565b5f806104cd6004610aa3565b90506104f16104e282610ab35b63ffffffff16565b610140830135610b30565b3590565b9392505050565b60608061055d61051361050b6004610aa3565b610c746104da565b61052a61052260046020610cdc565b610cfa6104da565b61054161053960046040610cdc565b610d526104da565b61055061053960046060610cdc565b89338a15028a0189610daa565b915091509b509b9950505050505050505050565b5f6104f161058a6105826004610aa3565b610de46104da565b610e3c565b606061061f6105a96105a16004610aa3565b610f5d6104da565b604080515f8082526020820190925290610601565b6105ee6040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816105be5790505b5061061961061160046020610cdc565b610fb56104da565b3361100d565b90505b949350505050565b5f6104f161064361063b6004610aa3565b61104b6104da565b604080515f808252602082019092529061069b565b6106886040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816106585790505b5084336110c1565b5f6106d76106bc6106b46004610aa3565b6112406104da565b6106cb61052260046020610cdc565b853386150286016110c1565b9695505050505050565b6060806107736106f46105a16004610aa3565b604080515f808252602082019092529061074c565b6107396040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816107095790505b5061075c61053960046020610cdc565b61076b61053960046040610cdc565b883389610daa565b915091509850989650505050505050565b6001600160a01b0381165f90815260208190526040812054610402565b60606107dc6107b361050b6004610aa3565b6107c261052260046020610cdc565b6107d161061160046040610cdc565b33861502860161100d565b90505b979650505050505050565b60605f806107f661129c565b925092509250909192565b5f6104f183836112e8565b5f61012435600281901c90600316600182118334158214806108315761083134611423565b506003841160a0810260240135906502030203010160d01b861a905f630101020360d01b881a6108648882898888611434565b9096509150506101c4600583901b01355f87600581111561088757610887615329565b036108bc5760443560243517156108a557636ab37ce75f526004601cfd5b6108af8482611751565b6108b7611809565b61099d565b6040805160208082528183019092525f9160208201818036833701905050905060028a60058111156108f0576108f0615329565b036109135761090e60c4356084353360e435610104355b8787611889565b610988565b60038a600581111561092757610927615329565b036109455761090e60c4356084353360e435610104355b87876118d4565b60048a600581111561095957610959615329565b036109735761090e60243533608435604435606435610907565b6109886024353360843560443560643561093e565b610992848261190a565b61099b816119c4565b505b6109a88689846119e8565b6109b0611a5e565b6001995050505050505050505090565b6060602080526707536561706f727460475260606020f35b5f6109e1611ab1565b600143034060801c335f525f60205260405f208054820192508281555050336001600160a01b03167f721c20121297512b72821b97f5326877ea8ecf4bb9948fea5bfcb6453074d37f82604051610a3a91815260200190565b60405180910390a290565b5f816001600160a01b0316600a5a610a5d9190615773565b6040515f8181818686fa925050503d805f8114610a95576040519150601f19603f3d011682016040523d82523d5f602084013e610a9a565b606091505b50909392505050565b5f813563ffffffff168201610402565b5f610ac661016060408051918201905290565b9050610ad58282610140611b28565b610af2610aeb610ae6846040610cdc565b611b31565b6040830152565b5f610b06610b01846060610cdc565b611b84565b9050610b13816060840152565b610b26610b1e825190565b610140840152565b50919050565b0190565b610140820151604080519084015180515f939284927fa66999307ad1bb4fde44d13a5d710bd7718e0c87c1eef68a571629fbf5b93d0292602090910190845b81811015610b9c578251601f1901805186825260c082208652905260209384019390920191600101610b6f565b508060051b6040512094505050505f7f42d81c6929ffdc4eb27a0808e40e82516ad42296c166065de7f812492304ff6e915060405160206060890151015f5b86811015610c08578151601f1901805186825260e082208552905260209283019290910190600101610bdb565b505060408051600587901b9020601f198a0180517ffa445660b7e21515a59617fcd68910b487aa5808b8abda3d78bc85df364b2c2f8252928b01805197815260608c018051938152610140909c019a8b5261018082209390915295909552939097525050925250919050565b5f8063ffffffff8335169050600581901b610c986020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610cca610cc4610cbf8484610cdc565b611240565b82850152565b602001610ca7565b5050505050919050565b5f6104f163ffffffff610cf46104ed8686610b2c8516565b16840190565b5f8063ffffffff8335169050600581901b610d1e6020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610d4a610cc4610d458484610cdc565b611bc7565b602001610d2d565b5f8063ffffffff8335169050600581901b610d766020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610da2610cc4610d9d8484610cdc565b611c09565b602001610d85565b60608036155f80610dbe8c8c85898b611c4c565b91509150610dd18c8b8b8b8b8787612029565b9450945050505097509795505050505050565b5f8063ffffffff8335169050600581901b610e086020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610e34610cc4610e2f8484610cdc565b61215b565b602001610e17565b5f610e45611ab1565b5f805f80855190505f5b81811015610f50575f878281518110610e6a57610e6a615792565b60209081029190910101518051909150600481608001516004811115610e9257610e92615329565b03610e9e575050610f48565b80519450610eab8161219e565b5f8181526001602052604081209850909650610ecd90879089903615156121d7565b50865460ff16610f455780610140015181606001515114610ef057610ef0612265565b610eff85878460200151612272565b865460ff191660011787556040517ff280791efe782edcf06ce15c8f4dff17601db3b88eb3805a0db7d77faf757f0490610f3c9088908490615895565b60405180910390a15b50505b600101610e4f565b5060019695505050505050565b5f8063ffffffff8335169050600581901b610f816020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610fad610cc4610fa88484610cdc565b61104b565b602001610f90565b5f8063ffffffff8335169050600581901b610fd96020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257611005610cc46110008484610cdc565b61230e565b602001610fe8565b60605f36151590505f806110258888858b5189611c4c565b9150915061103282612341565b61103f8887848885612380565b98975050505050505050565b5f61105e61020060408051918201905290565b60a0810180825290915061107a61107484610aa3565b82612453565b61108660016020840152565b61109260016040840152565b6110af6110a86110a3856020610cdc565b612489565b6060840152565b610b266110ba6124b1565b6080840152565b835160808101515f91906110e860048260048111156110e2576110e2615329565b146124cb565b5f80806110f78a36151561256c565b60408051600180825281830190925293965091945092505f9190816020015b61111e615027565b8152602001906001900390816111165790505090508a815f8151811061114657611146615792565b602002602001018190525061115b818b612764565b6111678684848b6128dd565b6040805160018082528183019092525f91602080830190803683375091925050503615156004878181111561119e5761119e615329565b146111c1576111af8d83885f6129dd565b6111bb86868684612a2f565b506111d3565b6111d0888e6080015183612b33565b95505b6111de888c8c612c03565b85825f815181106111f1576111f1615792565b6020026020010181815250506112088d8388612d26565b61122586895f01518a602001518d8c604001518d60600151612df3565b61122d611a5e565b5060019c9b505050505050505050505050565b5f61125361020060408051918201905290565b905061126760208381019083016040611b28565b60a0810180825261127a61107484610aa3565b61128b6110a86110a3856060610cdc565b610b266110ba6110a3856080610cdc565b60605f805f6112a9612e58565b90505f7f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c905060605f5281602052806040526303312e3660635260a05ff35b5f6112f1611ab1565b5f8083815b81811015611408573687878381811061131157611311615792565b90506020028101906113239190615977565b90505f61133360208301836154f5565b90505f61134660408401602085016154f5565b90505f61135960a0850160808601615996565b905081331483331417156004821417871796505f61138d61138261137a8790565b610ab36104da565b866101400135610b30565b5f8181526001602052604090819020805461ffff19166101001781559051909a509091506001600160a01b0380851691908616907f6bacc01dbe442496068f7d234edd811f1a5f833243e0aec824f86ab861f3c90d906113f09085815260200190565b60405180910390a385600101955050505050506112f6565b5050801561141857611418612f35565b506001949350505050565b63a61be9f05f52806020526024601cfd5b5f8061143f5f6124cb565b611447612f42565b426101643511154261014435111715611475576321ccfeb75f5261014435602052610164356040526044601cfd5b610204356102643510156114905763466aa6165f526004601cfd5b7f42d81c6929ffdc4eb27a0808e40e82516ad42296c166065de7f812492304ff6e608081905260a08790526060602460c037604060646101203760e060802061016052610264356102043560051b6102a0016001820181526020810190508881526080602460208301376101608860a0528760c0525f60e0525f6102043593505f5b84811015611566578060400261028401602081610100376040816101203760208101358317925060208401935060e0608020845260a0850194508b85528a6020860152604081606087013750600101611512565b6001850160051b610160206060526102643594505b848110156115b6578060400261028401925060a0840193508a845289602085015260408360608601376020830135919091179060010161157b565b506001600160a01b038111156115d3576339f3e3fd5f526004601cfd5b50505050505f7fa66999307ad1bb4fde44d13a5d710bd7718e0c87c1eef68a571629fbf5b93d029050806080528360a052606060c460c0376020610104610120375060c06080205f9081526020812060e05260843590611647826001600160a01b03165f9081526020819052604090205490565b7ffa445660b7e21515a59617fcd68910b487aa5808b8abda3d78bc85df364b2c2f60808190529091506040608460a03760605161010052896101205260a061014461014037816101e05261018060802094505050506102043560051b61018001828152336020820152608060408201526101206060820152600160808201528360a0820152606060c460c083013760a061026435026101e00160a4356084357f9d9af8e38d66c62e2c12f0225249fd9d721c54b83f48d9352c97c6cacdcb6f318385a35f60605260608101820160405250505f61172383612f8d565b905061172f8389612fde565b7101000000000000000000000000000001000182559150509550959350505050565b60c43560843560e4356101043584156117b9575f6040519050632671a55160e11b815260206004820152600160248201528660448201528460648201528360848201523360a48201528260c48201528160e48201526117b38682610104613033565b50611801565b60028660058111156117cd576117cd615329565b036117f457806001146117e3576117e3816130ea565b6117ef848433856130fb565b611801565b61180184843385856131b0565b505050505050565b346064356084356102643560061b5f80805b8381101561185a5761028481013592506102a481013591508683111561184357611843613287565b82870396506118528284613294565b60400161181b565b508585111561186b5761186b613287565b6118758486613294565b848611156118015761180133868803613294565b61189381836132ca565b816118ba57826001146118a9576118a9836130ea565b6118b5878787876130fb565b6118cb565b6118cb828260028a8a8a8a8a6132e8565b50505050505050565b6118dd83613367565b6118e781836132ca565b816118f9576118b587878787876131b0565b6118cb828260038a8a8a8a8a6132e8565b5f805f805f861561192f57505060843592503391505060c4356101043560e435611944565b50339350506084359150506024356064356044355b801561195257611952613379565b50600586901b6101e403356102643560061b5f80805b838110156119a95761028481013592506102a481013591508a156119935761199083876159b4565b95505b6119a1878a8486898f613386565b604001611968565b506119b886898988888e613386565b50505050505050505050565b60408151146119d05750565b5f6119dc826020015190565b90506103dc81836133bb565b611a048260a4355b331415600182116004909210919091161690565b15611a5957805f611a13825190565b9050608081901c63ffffffff8216611a3484826317b1f94282526001905250565b601c840163fb5014fc6060529350611a5060a4358886856133df565b5f6060526118cb565b505050565b7f00000000000000000000000000000000000000000000000000000000000000018015611a8f575f63929eee145d50565b63929eee145480611aa5575f63929eee145d5050565b50600163929eee145550565b7f00000000000000000000000000000000000000000000000000000000000000018015611af05763929eee145c156103b057637fa8a9875f526004601cfd5b63929eee145480611b135763929eee145c156103dc57637fa8a9875f526004601cfd5b600181146103dc57637fa8a9875f526004601cfd5b80838337505050565b5f63ffffffff8235166040519150808252602082018160051b81018060a084026020870183378293505b81841015611b745780845260209093019260a001611b5b565b60405250919392505050565b9052565b5f63ffffffff8235166040519150808252602082018160051b81018060c084026020870183378293505b81841015611b745780845260209093019260c001611bae565b5f611bd960a060408051918201905290565b9050611be782826080611b28565b611c04611bfd611bf8846080610cdc565b613427565b6080830152565b919050565b5f63ffffffff8235166040519150808252602082018160051b8101808360061b6020870183378293505b81841015611b7457808452602090930192604001611c33565b60605f611c5960016124cb565b86515f90600160e61b82351690806001600160401b03811115611c7e57611c7e61574b565b604051908082528060200260200182016040528015611ca7578160200160208202803683370190505b50945060010160051b91505f60205b83811015611ea8575f611ccc8c83613cce6104da565b90505f805f611cdb848e61256c565b6001600160781b0382166020880152919450925090505f829003611d025750505050611ea0565b6001600160781b0381166040808601919091528a8601849052845160a081015160c0820151608083015192909301518051600184119d909d179c600490931099509092915f5b81811015611dea575f838281518110611d6357611d63615792565b602002602001015190508b8151108d179c505f611d858989846080015161345e565b90508160800151826060015103611da25760608201819052611db7565b611db18989846060015161345e565b60608301525b5f611dd08360600151838a8a611dcb361590565b61349a565b606084018190526080909301929092525050600101611d48565b5087516060015180515f5b81811015611e94575f838281518110611e1057611e10615792565b602002602001015190505f611e2a8b8b846080015161345e565b90508160800151826060015103611e475760608201819052611e5c565b611e568b8b846060015161345e565b60608301525b5f611e718360600151838c8c611dcb36151590565b6060840181905260a0840180516080909501949094529092525050600101611df5565b50505050505050505050505b602001611cb6565b50506001600160e61b018103611ec057611ec06134ed565b50611ecb8888612764565b5f8060205b8381101561200e578581015192508215612006575f611ef28c83613cce6104da565b9050885f03611f0d575f878301819052602090910152612006565b60048151608001516004811115611f2657611f26615329565b14611fa957611f3f8188866001600587901c038e6134fa565b611f55575f878301819052602090910152612006565b602080820151604083015183516080810151930151611f8e9388936001600160781b039081169316913314156001909111168e17612a2f565b611fa4575f878301819052602090910152612006565b611fd4565b611fbb815f015182608001518c612b33565b878301819052935083611fd4575f602090910152612006565b886001900398505f815f01519050611fff85825f015183602001518c85604001518660600151612df3565b6001935050505b602001611ed0565b508061201c5761201c613555565b5050509550959350505050565b85518551606091829161203c81836159c7565b6001600160401b038111156120535761205361574b565b60405190808252806020026020018201604052801561208c57816020015b61207961505a565b8152602001906001900390816120715790505b5092505f5b828110156120e4576120bf8c5f8d84815181106120b0576120b0615792565b60200260200101518c8c613562565b8482815181106120d1576120d1615792565b6020908102919091010152600101612091565b505f5b8181101561213d576121168c60018c848151811061210757612107615792565b60200260200101518c5f613562565b848483018151811061212a5761212a615792565b60209081029190910101526001016120e7565b5061214b8b84888a896135b1565b9350505097509795505050505050565b5f61216c6040808051918201905290565b905061218661218261217d84610aa3565b61389a565b8252565b611c046121976110a3846020610cdc565b6020830152565b5f6121b38260600151518361014001516138b9565b81516001600160a01b03165f90815260208190526040902054610402908390610b30565b82545f90610100900460ff16156121fe5781156121f7576121f7856138c9565b505f610622565b83546201000090046001600160781b0316801561225957831561222957612224866138da565b612259565b8454600160881b90046001600160781b0316811061225957821561225057612250866138eb565b5f915050610622565b50600195945050505050565b632165628a5f526004601cfd5b33831480156122815750505050565b5f61228a612e58565b61190160f01b5f9081526002828152602287815260428320908390528651939450929190601f601d840116106102e260621984011016156122f4576122cf86886138fc565b61190160f01b5f908152600286905260228281526042822091905290975090506122f7565b50815b612304888285858a613992565b5050505050505050565b5f61231f6040808051918201905290565b9050612330612182610d9d84610aa3565b611c04612197610d9d846020610cdc565b80518060051b6040019050602082038051602082527f4b9f2d36e1b4c93de62cc077b00b1a91d84b6c31b4a14e012718dcca230689e78383a190525050565b8351606090806001600160401b0381111561239d5761239d61574b565b6040519080825280602002602001820160405280156123d657816020015b6123c361505a565b8152602001906001900390816123bb5790505b5091505f5b81811015612439575f8782815181106123f6576123f6615792565b6020026020010151905061241389825f0151836020015185613adb565b84838151811061242557612425615792565b6020908102919091010152506001016123db565b5061244787838787876135b1565b50505b95945050505050565b6124608282610160611b28565b612471610aeb610ae6846040610cdc565b6103dc612482610b01846060610cdc565b6060830152565b6040518135601f0163ffffffe01660200180838337913563ffffffff16815290810160405290565b5f6124c3602060408051918201905290565b5f8152905090565b7f000000000000000000000000000000000000000000000000000000000000000180156125185763929eee145c1561250a57637fa8a9875f526004601cfd5b8160010163929eee145d5050565b63929eee14548061254a5763929eee145c1561253b57637fa8a9875f526004601cfd5b8260010163929eee145d505050565b6001811461255f57637fa8a9875f526004601cfd5b505060020163929eee1455565b5f805f80855f015190506125898160a001518260c0015187613c80565b61259c57505f925082915081905061275d565b602086015160408701516001600160781b0391821694501691505f6004826080015160048111156125cf576125cf615329565b036125fc57600183850218905080156125ea576125ea613ca3565b506001935083925082915061275d9050565b50818311831517801561261157612611613ca3565b608082015160011615848411161561262b5761262b613cb0565b6126348261219e565b5f81815260016020526040812091965061265290879083908a6121d7565b61266557505f935083925061275d915050565b805460ff1661268057612680835f0151878a60600151612272565b8054608881901c8061269457869150612757565b6001600160781b038260101c169150600186036126b8578181039650809550612757565b8086036126d357908601858103868211029096039590612757565b80860296810291909502810186810387821102918290039695919003906001600160781b0386111561275757612717565b5f5b8215610b2657908290069190612706565b61272a6127248784612704565b88612704565b8015019687900496909504946001600160781b0386111561275757634e487b715f5260116020526024601cfd5b50505050505b9250925092565b805182515f5b82811015612853575f84828151811061278557612785615792565b602002602001015190505f815f015190508381106127aa576127aa8260200151613cbd565b5f8782815181106127bd576127bd615792565b6020026020010151905080602001516001600160781b03165f036127e35750505061284b565b80516040808201519085015163bfb3f8ce5f8760200151600181111561280b5761280b615329565b14612827575f61281c856060613cce565b9350636088d7de9150505b8251821061283857805f526004601cfd5b612843838389613cd9565b505050505050505b60010161276a565b505f5b818110156128d6575f85828151811061287157612871615792565b6020026020010151905080602001516001600160781b03165f0361289557506128ce565b8051608081015160608201516128b29085908363a8930e9a613d8c565b6128ca8483604001518363d69293326104da613d8c90565b5050505b600101612856565b5050505050565b60a084015160c08501516040860151515f805b8281101561295a575f8960400151828151811061290f5761290f615792565b602002602001015190505f815f01519050801584179350505f612946826060015183608001518c8c8b8b612941361590565b613df3565b6060830152506080018690526001016128f0565b5060808801516004811082168015612974576129746134ed565b505050506060860151515f5b81811015612304575f8860600151828151811061299f5761299f615792565b602002602001015190505f6129c4826060015183608001518b8b8a8a61294136151590565b60608301525060a0810151608090910152600101612980565b8351608081015160208201513314156001821160049092109190911616156128d6575f80612a12858489608001518988613e2e565b63fb5014fc6060529092509050611a5083602001518684846133df565b5f848152600160205260408120805482908290608881901c80612a5457889150612adc565b6001600160781b038260101c169150808803612a7857908801878111935090612adc565b97880297808802979190910288018781119350906001600160781b038083119089111715612adc57612aaa8883612704565b8015019788900497909104906001600160781b038083119089111715612adc57634e487b715f5260116020526024601cfd5b508215612b15578515612b09576040516310fda3e160e01b8152600481018a905260240160405180910390fd5b5f945050505050610622565b8660881b8160101b1760011782556001945050505050949350505050565b5f83610140015184606001515114612b4d57612b4d612265565b83515f8080612b5c8888613fac565b915091505f8082845f885af16001600160a01b0385165f908152600260205260409020805460018101909155606086901b189550925082612bbb578515612bae57612ba5614056565b612bae8561409d565b505f93506104f192505050565b505050505f805f612bd8876040015188606001516104da6140ae90565b925092509250825f14612bee57612bee8461409d565b60408701919091526060860152509392505050565b6040805160208082528183019092525f916020820181803683375050506040850151519091505f5b81811015612c7b575f86604001518281518110612c4a57612c4a615792565b60200260200101519050846080820152612c7281885f0151896101200151876104da61432790565b50600101612c2b565b50506060840151515f90815b81811015612d09575f87606001518281518110612ca657612ca6615792565b602002602001015190505f6005811115612cc257612cc2615329565b81516005811115612cd557612cd5615329565b03612cf1574793508381606001511115612cf157612cf1613287565b612d00813389886143276104da565b50600101612c87565b5050612d14826119c4565b504780156128d6576128d63382613294565b8251608081015160208201515f92839283928392916004811060019091111633909114151615612d8857612d69612d6361010083015190565b5190565b8861441c565b9093509150612d7a60208201612d5f565b945063fb5014fc9350612dd4565b600481608001516004811115612da057612da0615329565b0361230457805194505f8560601b9050612dc187838b608001518b8561445d565b639397928596509094509250612dd49050565b612dde6060859052565b612dea858785856133df565b5f606052612304565b60608290506060829050856001600160a01b0316876001600160a01b03167f9d9af8e38d66c62e2c12f0225249fd9d721c54b83f48d9352c97c6cacdcb6f318a888686604051612e469493929190615a13565b60405180910390a35050505050505050565b5f7f00000000000000000000000000000000000000000000000000000000000005394614612f10575060408051608080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f5f9081527f32b5c112df393a49218d7552f96b2eeb829dfb4272f4f24eef510a586b85feef6020527f95f740a33d720b7cd93c75d515ac95ca3bbaa2594cce46ea48e00974ea8fcd14855246606090815230845260a08220949095529093529190915290565b507f8bebed3dbe91a82da0dc94c8d370c160ad6db1b32164303e65b8544bae7e2f5590565b63fed398fc5f526004601cfd5b600435602014610224356102401416610244356102606102643560061b01141660186101243510600160a01b60843560a4351760c4356024351717101616806103b0576103b0614528565b5f8181526001602081905260409091209060843590612fb290849084903615156121d7565b50815460ff16610b2657610b268184612fd9602463ffffffff6102443516016124896104da565b612272565b5f612feb8260a4356119f0565b15610402575f805f612ffc86614535565b63fb5014fc6060529194509250905061301c60a43587601c8601856133df565b5f60605260209190910160801b1781529392505050565b604080517f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c60ff60a01b175f90815260208690527f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f83526055600b20919092526001600160a01b031690505f805f805260205f85875f875af191505f519050816130c8576130bf614056565b6130c8836145ed565b6001600160e01b03198116632671a55160e11b146118015761180186846145fe565b6369f958275f52806020526024601cfd5b833b61311257635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af1806131a2573d1561318057601f3d0160051c8260051c8160030281831115613169578183036003028280028480020360091c01015b5a60208201101561317c573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b6131c757635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af18061326c573d1561324b57601f3d0160051c8560051c8160030281831115613234578183036003028280028480020360091c01015b5a602082011015613247573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b638ffff9805f526004601cfd5b61329d81613367565b5f805f805f85875af1905080611a59576132b5614056565b63bc806b965f5282602052816040526044601cfd5b5f6132d6836020015190565b9050818114611a5957611a59836119c4565b5f60208851036133225750604080885260208089018a9052632671a55160e11b918901919091526044880152600160648801819052613331565b50606487018051600101908190525b603c60c082028901038781528660208201528560408201528460608201528360808201528260a082015250505050505050505050565b806103b0576391b3e5145f526004601cfd5b636ab37ce75f526004601cfd5b61338f83613367565b61339981836132ca565b816133aa576117ef86868686614613565b611801828260018989895f8a6132e8565b6064810151604082019060c0026044016133d6848383613033565b50506020905250565b5f806001600160e01b03198451165f805260205f85875f8b5af15f51909350149050816134185761340e614056565b846080526024607cfd5b8061180157846080526024607cfd5b5f8063ffffffff83351690506001810160051b61344a8160408051918201905290565b9250613457848483611b28565b5050919050565b5f82840361346d5750806104f1565b82848309156134835763c63cf0895f526004601cfd5b5f61348e8584615aaf565b93909304949350505050565b5f8486146134e357838303428590038082035f6134b7838a615aaf565b6134c1838c615aaf565b6134cb91906159c7565b9050858487830304018115150294505050505061244a565b5092949350505050565b6312d3f5a35f526004601cfd5b8451608081015160208201515f92916004811060019091111633909114151615610f50575f8061353187848b608001518b8a613e2e565b9150915061354b836020015188848463fb5014fc8a614707565b935050505061244a565b63d5da9a1b5f526004601cfd5b61356a61505a565b83515f0361357b5761357b85614774565b5f85600181111561358e5761358e615329565b036135a45761359f86858385614785565b61244a565b61244a86858333876148f5565b84516060905f816001600160401b038111156135cf576135cf61574b565b6040519080825280602002602001820160405280156135f8578160200160208202803683370190505b506040805160208082528183019092529192505f9190602082018180368337505089519192505060010160051b60205b81811015613687575f61363e8b83613cce6104da565b8051606081015191925090801561367c57478111825115161561366857638ffff9805f526004601cfd5b61367c828460200151856040015189614327565b505050602001613628565b50505f5b838110156137f3575f8a82815181106136a6576136a6615792565b6020026020010151905080602001516001600160781b03165f036136ed575f8483815181106136d7576136d7615792565b91151560209283029190910190910152506137eb565b600184838151811061370157613701615792565b911515602092830291909101909101528051604081015180515f5b81811015613786575f83828151811061373757613737615792565b6020026020010151905080606001515f1461377357608081018051908e9052855161012087015161376d9184918c6143276104da565b60808201525b608081015160609091015260010161371c565b505050606081015180515f5b818110156137e5575f8382815181106137ad576137ad615792565b602002602001015190505f81606001519050805f146137d1576137d1888483614a2c565b5060a0810151606090910152600101613792565b50505050505b60010161368b565b506137fd816119c4565b47801561380e5761380e3382613294565b8515613884575f5b848110156138825783818151811061383057613830615792565b60200260200101511561387a5761387a8b828151811061385257613852615792565b60200260200101518a8b848151811061386d5761386d615792565b6020026020010151612d26565b600101613816565b505b61388c611a5e565b509098975050505050505050565b5f6138ad61016060408051918201905290565b9050611c048282612453565b808210156103dc576103dc614a45565b631a5155745f52806020526024601cfd5b63ee9e0e635f52806020526024601cfd5b6310fda3e15f52806020526024601cfd5b5f805f84516001811660410380820360051c9250808752806020018701915050805160e81c6003820191506001811660051b868152825160208218525060015b838110156139685760405f2082821c60051b60209081169182529384018051919094185260010161393c565b50505060405f2091505f61397b82614a52565b5f9081526020939093525050604090209392505050565b5f805f528151602083038051826041035f600182116139f557604087015160608801515f1a83156139d657601b8260ff1c0190506001600160ff1b03821660408a01525b88528a855260205f60808760015afa508385528588526040880152505f515b8a148a1515169450849050613abe57858552604082526044850380516040870351630b135d3f60e11b835289604089035260205f60648b01858f5afa96508615613ab257630b135d3f60e11b5f5114613ab2578b3b15613a5c57634f7fb80d5f526004601cfd5b6001866041031115613a7557638baa579f5f526004601cfd5b64010100000060608901515f1a1a15604187141615613aa557631f003d0a5f5260608801515f1a6020526024601cfd5b63815e1d645f526004601cfd5b8385529152603f198601525b5050508061180157613ace614056565b634f7fb80d5f526004601cfd5b613ae361505a565b8251158451151715613afc576398e9db6e5f526004601cfd5b613b0461505a565b613b118685835f806148f5565b805160608101515f03613b2657509050610622565b613b368787858460800151614785565b82516040828101519082015160208085015190840151855185511891181791181715613b6d5763bced929d5f52846020526024601cfd5b806060015182606001511115613bf4575f865f81518110613b9057613b90615792565b60200260200101519050816060015183606001510389825f015181518110613bba57613bba615792565b60200260200101515f015160600151826020015181518110613bde57613bde615792565b6020026020010151606001818152505050613c75565b5f875f81518110613c0757613c07615792565b60200260200101519050826060015182606001510389825f015181518110613c3157613c31615792565b60200260200101515f015160400151826020015181518110613c5557613c55615792565b602002602001015160600181815250508260600151826060018181525050505b505050949350505050565b428084111590831116818015613c94575080155b156104f1576104f18484614e61565b635a052b325f526004601cfd5b63a11b63ff5f526004601cfd5b63133c37c65f52806020526024601cfd5b5f6104f18284015190565b5f838381518110613cec57613cec615792565b602002602001015190505f815f01519050613d078160031090565b613d1357613d13614e76565b60408201518015613d3657613d318460600151828660800151614e83565b613d49565b60808401515115613d4957613d49614ecd565b6004821460030383816005811115613d6357613d63615329565b90816005811115613d7657613d76615329565b9052505050606090920151604090910152505050565b82515f5b81811015611801575f858281518110613dab57613dab615792565b60209081029190910101518051604082015191925090600382116004881415821515171615613de557855f5288602052836040526044601cfd5b505050806001019050613d90565b5f868803613e0d57613e0686868961345e565b90506107df565b6107dc613e1b87878b61345e565b613e2688888b61345e565b86868661349a565b5f805f613e39614eda565b6301e4d72a815260208082015260408101898152336060830152601c820194509091508751604082015287613e79613e7260a083015190565b60e0840152565b613e8f613e8760c083015190565b610100840152565b613ea5613e9d60e083015190565b610120840152565b610140613eb3816060850152565b5f613ebf604084015190565b90505f613ece82848701614ee4565b928301929050613edf836080870152565b5f613eeb606086015190565b90505f613efa82868901614f4a565b948501949050613f0b8560a0890152565b5f613f188e878a01614faf565b959095019450613f298560c0890152565b8685015f613f378e83614fce565b602497019687019a50613f539050613f4e8c8c0190565b614ffe565b8060408b901b60808b901b17178f610100018181525050613f7d8c82611b8090919063ffffffff16565b60058c8e51613f8c91906159b4565b613f97911b8b6159b4565b99505050505050505050509550959350505050565b5f8083613fb7614eda565b639891976581523360208201908152608060408301819052601c9092019450905f613fe3604085015190565b90505f613ff282848601614ee4565b928301929050614003836040860152565b5f61400f606087015190565b90505f61401e82868801614ee4565b94850194905061402f856060880152565b895f61403d82898901614faf565b9a9d96909a016004019b50949950505050505050505050565b3d1561409b57601f3d0160051c60405160051c8160030281831115614088578183036003028280028480020360091c01015b5a602082011015611a59573d5f803e3d5ffd5b565b63939792855f52806020526024601cfd5b60603d105f8080808080866141205760405f803e5f51935060205192503d60208501113d60208501118082179850505086614120576020845f3e5f51915060208360203e60205190508160071b60208501018160a0026020850101803d10823d101761ffff8486171117985050505f80525b86614152575f8061413584602088018d61415b565b9250975061414783602087018c61423b565b929092179850909550505b5050505061275d565b5f806040519150825160c08602602001830160405285835260208660010160051b8085018360010160051b8701614199858b81811090829003020190565b60010160051b8a861196505b808510156141f957828589015260808a843e6060830151955085608084015260608201518681116141d685856142e2565b17881797505060808a01995060a08301925060a0820191506020850194506141a5565b50505b8183101561422f578083870152608088823e6060810151608082015260808801975060a0810190506020830192506141fc565b50505050935093915050565b604051815180851190808603818710028101602060e08202850181016040528185526001928301600590811b87019390920190911b908185015b8282101561422f57808287015260a088823e60206060890160a083013e606081015160608501516142b26080840151608088015180159114171590565b818311176142c084886142e2565b60a09b909b019a179690961795505060c0938401936020929092019101614275565b5f81516040830151801560038311161561430457506040840151600119909101905b604085015181148551831460208701516020870151141616159250505092915050565b5f8451600581111561433b5761433b615329565b0361437857604084015160208501516001600160a01b0316171561436157614361613379565b61437384608001518560600151613294565b614416565b60018451600581111561438d5761438d615329565b036143be576040840151156143a4576143a4613379565b614373846020015184866080015187606001518686613386565b6002845160058111156143d3576143d3615329565b036143f7576143738460200151848660800151876040015188606001518787611889565b61441684602001518486608001518760400151886060015187876118d4565b50505050565b608082901c63ffffffff604084901c811690808516906144449084906317b1f94290611b8016565b601c830192506144548482614fce565b50509250929050565b5f80614467614eda565b63f4dd92ce815287841860a0820152601c8101925060200160a0808252875f614491604083015190565b90505f6144a082858701614ee4565b9384019390506144b1846020870152565b5f6144bd606085015190565b90505f6144cc82878901614f4a565b9586019590506144dd866040890152565b5f6144ea8d888a01614faf565b9687019690506144fb8760608a0152565b5f6145088d898b01614fce565b905080880197508760040199505050505050505050509550959350505050565b6339f3e3fd5f526004601cfd5b6301e4d72a6102043560051b6080019081525f808260208082015260408101858152336060830152601c919091019061456f608435610aeb565b61458061014460e083016060611b28565b61014061458e816060840152565b61459c60a082016080840152565b61016060a06102643581029290920101906145b8908290840152565b6145c25f82840152565b6020016145d08160c0840152565b5f9181019182526020820196909652939560449095019492505050565b63d13d53d45f52806020526024601cfd5b631cf99b265f5281602052806040526044601cfd5b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166146f85780873b1515166146f857806146e757816146ca573d156146a957601f3d0160051c8360051c8160030281831115614692578183036003028280028480020360091c01015b5a6020820110156146a5573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b5f805f6001600160e01b03198751165f805260205f888a5f8e5af15f5190935014905081614753578361473e575f925050506106d7565b614746614056565b845f52876020526024601cfd5b8061476557845f52876020526024601cfd5b50600198975050505050505050565b63375c24c15f52806020526024601cfd5b5f805f85865160051b87015b808210156148a2576020820191508851825151106147b1576147b16148d6565b81515160051b60208a01015180516020845101515f6040830151602085015115815184101517156147e6575050505050614791565b8260051b60208201015191505060608101935083518901915083511589831060011b17881797508198505f84528a51935086156001811461484f5760608220881860408d01516101208601511860208e015186511817171561484a5761484a6148d6565b614898565b8151855260208201516020860152604082015160408601528a6080860152835160208d015261012084015160408d015260608520975060208d0192508683181561489857865183525b5050505050614791565b5050508160608551015280156148cf57600181036148c7576391b3e5145f526004601cfd5b6148cf6148e3565b5050614416565b637fda72795f526004601cfd5b634e487b715f5260116020526024601cfd5b5f805f86875160051b88015b808210156149f7576020820191508151518a518110614922576149226148d6565b8060051b60208c01015190506020835101515f606083510151602084015115815184101517156149555750505050614901565b8260051b60208201015191505060608101925082518801915082511588831060011b17871796508197505f83528a5192508515600181146149a75760a0822087146149a2576149a26148d6565b6149ee565b815184526020820151602085015260408201516040850152608082015160808501528a60208d01528960408d015260a08220965060208d019250858318156149ee57855183525b50505050614901565b50508551606001839052508015614a255760018103614a1d576391b3e5145f526004601cfd5b614a256148e3565b50506128d6565b63a5f542085f528260205281604052806060526064601cfd5b63466aa6165f526004601cfd5b5f614e58565b5f6009821015614bb1576005821015614b0e576003821015614ac1577f832c58a5b611aadcfa6a082ac9d04bace53d8278387f10040347b7e98eb5b30260018314027fbf8e29b89f29ed9b529c154a63038ffca562f8d7cd1e2545dda53a1b582dde3018610402565b7ff3e8417a785f980bdaf134fa0274a6bf891eeb8195cd94b09d2aa651046e28bc60038314027fa02eb7ff164c884e5e2c336dc85f81c6a93329d8e9adf214b32729b894de2af118610402565b6007821015614b64577f25d02425402d882d211a7ab774c0ed6eca048c4d03d9af40132475744753b2a360058314027f1c19f71958cdd8f081b4c31f7caf5c010b29d12950be2fa1c95070dc47e30b5518610402565b7fb58d772fb09b426b9dece637f61ca9065f2b994f1464b51e9207f55f7c8f594860078314027f7ff98d9d4e55d876c5cfac10b43c04039522f3ddfb0ea9bfe70c68cfb5c7cc1418610402565b6011821015614d0957600d821015614c6657600b821015614c19577f6f0ec38c21f6f583ab7f3c5413c773ffd5344c34fde1d390958e438bf667448f60098314027fd1d97d1ef5eaa37a4ee5fbf234e6f6d64eb511eb562221cd7edfbdde0848da0518610402565b7f32f4e7485d6485f9f6c255929b9905c62ba919758bbe231f231eaeecf33d810c600b8314027fbb98d87cc12922b83759626c5f07d72266da9702d19ffad6a514c73a89002f5f18610402565b600f821015614cbc577f8df51df98847160517f5b1186b4bc3f418d98b8a7f17f1292f392d79d600d79e600d8314027f6b5b04cbae4fcb1a9d78e7b2dfc51a36933d023cf6e347e03d517b472a85259018610402565b7fcc4886e37eedd9aacd6c1c2c9247197a621a71282e87a7cbc673f3736d9aa141600f8314027f1da3eed3ecef6ebaa6e5023c057ec2c75150693fd0dac5c90f4a142f9879fde818610402565b6015821015614db5576013821015614d68577f2d7a3ed6dab270fdb8e054b2ad525f0ce2a8b89cc76c17f0965434740f673a5560118314027fc3939feff011e53ab8c35ca3370aad54c5df1fc2938cd62543174fa6e7d8587718610402565b7f54b3212a178782f104e0d514b41a9a5c4ca9c980bf6597c3cecbf280917e202a60138314027f5a4f867d3d458dabecad65f6201ceeaba0096df2d0c491cc32e6ea4e6435001718610402565b6017821015614e0b577fbb40bf8cea3a5a716e2b6eb08bbdac8ec159f82f380783db3c56904f15a43d0460158314027f3bd8cff538aba49a9c374c806d277181e9651624b3e31111bc0624574f8bca1d18610402565b7f403be09941a31d05cfc2f896505811353d45d38743288b016630cce39435476a60178314027f1d51df90cba8de7637ca3e8fe1e3511d1dc2f23487d05dbdecb781860c21ac1c18610402565b61040282614a58565b6321ccfeb75f5281602052806040526044601cfd5b6394eb6af65f526004601cfd5b5f835f5260205f2060208301835160051b81015b80821015614ebe57815180841160051b93845260209384185260405f209290910190614e97565b50508314905080614416576144165b6309bde3395f526004601cfd5b5f61041260405190565b5f825180835260208401602084018260051b82015b80831015614f375782518051835260208101516020840152604081015160408401526060810151606084015250602083019250608082019150614ef9565b5050508060071b60200191505092915050565b5f80614f54845190565b8084529050602084810190600583901b860181019085015b82821115614f9c575f614f7e84615008565b9050614f8c818360a0615011565b506020929092019160a001614f6c565b60a0840260200194505050505092915050565b5f63ffffffe0603f614fbf855190565b01169050610402838383615011565b5f80614fd8845190565b8084529050600581901b614ff3602086810190860183615011565b602001949350505050565b6103b06040829052565b5f610402825190565b8082828560045afa80153d151715614416575f80fd5b6040518060a0016040528061503a61509c565b81525f602082018190526040820152606080820181905260809091015290565b60408051610100810182525f606082018181526080830182905260a0830182905260c0830182905260e083018290528252602082018190529181019190915290565b6040518061016001604052805f6001600160a01b031681526020015f6001600160a01b0316815260200160608152602001606081526020015f60048111156150e6576150e6615329565b81525f6020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b5f60208284031215615125575f80fd5b81356001600160401b0381111561513a575f80fd5b820161024081850312156104f1575f80fd5b5f81518084525f5b8181101561517057602081850181015186830182015201615154565b505f602082860101526020601f19601f83011685010191505092915050565b602081525f6104f1602083018461514c565b5f602082840312156151b1575f80fd5b5035919050565b5f602082840312156151c8575f80fd5b81356001600160401b038111156151dd575f80fd5b820161016081850312156104f1575f80fd5b5f8083601f8401126151ff575f80fd5b5081356001600160401b03811115615215575f80fd5b6020830191508360208260051b850101111561522f575f80fd5b9250929050565b80356001600160a01b0381168114611c04575f80fd5b5f805f805f805f805f805f60e08c8e031215615266575f80fd5b6001600160401b03808d35111561527b575f80fd5b6152888e8e358f016151ef565b909c509a5060208d013581101561529d575f80fd5b6152ad8e60208f01358f016151ef565b909a50985060408d01358110156152c2575f80fd5b6152d28e60408f01358f016151ef565b909850965060608d01358110156152e7575f80fd5b506152f88d60608e01358e016151ef565b909550935060808c0135925061531060a08d01615236565b915060c08c013590509295989b509295989b9093969950565b634e487b7160e01b5f52602160045260245ffd5b60068110611b8057611b80615329565b61535882825161533d565b6020818101516001600160a01b0390811691840191909152604080830151908401526060808301519084015260809182015116910152565b5f815180845260208085019450602084015f5b838110156153e55781516153b888825161534d565b808401516001600160a01b031660a08901526040015160c088015260e090960195908201906001016153a3565b509495945050505050565b604080825283519082018190525f906020906060840190828701845b8281101561542a57815115158452928401929084019060010161540c565b50505083810360208501526106d78186615390565b5f8060208385031215615450575f80fd5b82356001600160401b03811115615465575f80fd5b615471858286016151ef565b90969095509350505050565b5f805f8060408587031215615490575f80fd5b84356001600160401b03808211156154a6575f80fd5b6154b2888389016151ef565b909650945060208701359150808211156154ca575f80fd5b506154d7878288016151ef565b95989497509550505050565b602081525f6104f16020830184615390565b5f60208284031215615505575f80fd5b6104f182615236565b5f806040838503121561551f575f80fd5b82356001600160401b03811115615534575f80fd5b830160408186031215615545575f80fd5b946020939093013593505050565b5f805f805f60808688031215615567575f80fd5b85356001600160401b038082111561557d575f80fd5b9087019060a0828a031215615590575f80fd5b909550602087013590808211156155a5575f80fd5b506155b2888289016151ef565b909550935050604086013591506155cb60608701615236565b90509295509295909350565b5f805f805f805f8060a0898b0312156155ee575f80fd5b88356001600160401b0380821115615604575f80fd5b6156108c838d016151ef565b909a50985060208b0135915080821115615628575f80fd5b6156348c838d016151ef565b909850965060408b013591508082111561564c575f80fd5b506156598b828c016151ef565b999c989b509699959896976060870135966080013595509350505050565b5f805f805f805f6080888a03121561568d575f80fd5b87356001600160401b03808211156156a3575f80fd5b6156af8b838c016151ef565b909950975060208a01359150808211156156c7575f80fd5b6156d38b838c016151ef565b909750955060408a01359150808211156156eb575f80fd5b506156f88a828b016151ef565b909450925061570b905060608901615236565b905092959891949750929550565b606081525f61572b606083018661514c565b6020830194909452506001600160a01b0391909116604090910152919050565b634e487b7160e01b5f52604160045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b5f8261578d57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f815180845260208085019450602084015f5b838110156153e55781516157ce88825161533d565b838101516001600160a01b03168885015260408082015190890152606080820151908901526080908101519088015260a090960195908201906001016157b9565b5f815180845260208085019450602084015f5b838110156153e557815161583788825161533d565b808401516001600160a01b0390811689860152604080830151908a0152606080830151908a0152608080830151908a015260a091820151169088015260c09096019590820190600101615822565b60058110611b8057611b80615329565b828152604060208201526158b56040820183516001600160a01b03169052565b5f60208301516158d060608401826001600160a01b03169052565b5060408301516101608060808501526158ed6101a08501836157a6565b91506060850151603f198584030160a086015261590a838261580f565b925050608085015161591f60c0860182615885565b5060a085015160e085015260c0850151610100818187015260e0870151915061012082818801528188015192506101409150828288015280880151848801525080870151610180870152505050809150509392505050565b5f823561015e1983360301811261598c575f80fd5b9190910192915050565b5f602082840312156159a6575f80fd5b8135600581106104f1575f80fd5b818103818111156104025761040261575f565b808201808211156104025761040261575f565b5f815180845260208085019450602084015f5b838110156153e557615a0087835161534d565b60a09690960195908201906001016159ed565b5f6080808301878452602060018060a01b03808916602087015260406080604088015283895180865260a08901915060208b0195505f5b81811015615a8b578651615a5f84825161533d565b808701518616848801528481015185850152606090810151908401529585019591870191600101615a4a565b50508781036060890152615a9f818a6159da565b9c9b505050505050505050505050565b80820281158282048414176104025761040261575f56fea164736f6c6343000818000a","storage":{}},"0x6265cc8d1b28edfd4d76c80bf774c0d446fffbde":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610090575f3560e01c80633f15457f116100635780633f15457f1461010f5780637adbf973146101225780637dc0d1d0146101355780638bbedf7514610147578063be27b22c1461015a575f80fd5b806301ffc9a7146100945780631ecfc411146100bc578063224199c2146100d157806330349ebe146100e4575b5f80fd5b6100a76100a23660046115b1565b61016d565b60405190151581526020015b60405180910390f35b6100cf6100ca3660046115ef565b6101a3565b005b6100cf6100df3660046117e0565b6102de565b6002546100f7906001600160a01b031681565b6040516001600160a01b0390911681526020016100b3565b6001546100f7906001600160a01b031681565b6100cf6101303660046115ef565b61063c565b5f546100f7906001600160a01b031681565b6100cf610155366004611889565b61076d565b6100cf61016836600461190b565b6107f1565b5f6001600160e01b031982166301ffc9a760e01b148061019d57506001600160e01b031982166317d8f49b60e01b145b92915050565b6001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa1580156101ea573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061020e919061196b565b90505f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561024d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610271919061196b565b9050336001600160a01b03821614610287575f80fd5b600280546001600160a01b0319166001600160a01b0385169081179091556040519081527f9176b7f47e4504df5e5516c99d90d82ac7cbd49cc77e7f22ba2ac2f2e3a3eba8906020015b60405180910390a1505050565b5f546040516321ae60b160e11b81526001600160a01b039091169063435cc1629061030f90879087906004016119d3565b5f604051808303815f875af115801561032a573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526103519190810190611a6b565b92505f805f610360888761088b565b91945092509050336001600160a01b038216146103da5760405162461bcd60e51b815260206004820152602d60248201527f4f6e6c79206f776e65722063616e2063616c6c2070726f7665416e64436c616960448201526c36abb4ba342932b9b7b63b32b960991b60648201526084015b60405180910390fd5b6001600160a01b038416156105bb576001600160a01b03851661044e5760405162461bcd60e51b815260206004820152602660248201527f43616e6e6f74207365742061646472206966207265736f6c766572206973206e6044820152651bdd081cd95d60d21b60648201526084016103d1565b6001546040516305ef2c7f60e41b815260048101859052602481018490523060448201526001600160a01b0387811660648301525f608483015290911690635ef2c7f09060a4015f604051808303815f87803b1580156104ac575f80fd5b505af11580156104be573d5f803e3d5ffd5b505050505f83836040516020016104df929190918252602082015260400190565b60408051808303601f1901815290829052805160209091012062d5fa2b60e81b8252600482018190526001600160a01b03878116602484015290925087169063d5fa2b00906044015f604051808303815f87803b15801561053e575f80fd5b505af1158015610550573d5f803e3d5ffd5b5050600154604051635b0fc9c360e01b8152600481018590526001600160a01b0386811660248301529091169250635b0fc9c391506044015f604051808303815f87803b15801561059f575f80fd5b505af11580156105b1573d5f803e3d5ffd5b5050505050610632565b6001546040516305ef2c7f60e41b815260048101859052602481018490526001600160a01b03838116604483015287811660648301525f608483015290911690635ef2c7f09060a4015f604051808303815f87803b15801561061b575f80fd5b505af115801561062d573d5f803e3d5ffd5b505050505b5050505050505050565b6001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa158015610683573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106a7919061196b565b90505f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106e6573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061070a919061196b565b9050336001600160a01b03821614610720575f80fd5b5f80546001600160a01b0319166001600160a01b0385169081179091556040519081527fb3eacd0e351fafdfefdec84e1cd19679b38dbcd63ea7c2c24da17fd2bc3b3c0e906020016102d1565b5f546040516321ae60b160e11b81526001600160a01b039091169063435cc1629061079e90859085906004016119d3565b5f604051808303815f875af11580156107b9573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526107e09190810190611a6b565b90506107ec83826107f1565b505050565b5f805f6107fe858561088b565b6001546040516306ab592360e01b815260048101859052602481018490526001600160a01b03808416604483015294975092955090935091909116906306ab5923906064016020604051808303815f875af115801561085f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108839190611add565b505050505050565b5f8080806108998682610a40565b60ff1690506108aa86600183610a63565b92505f6108dc6108bb836001611b08565b6001848a516108ca9190611b1b565b6108d49190611b1b565b899190610a85565b6002546040516327c482cf60e11b81529192506001600160a01b031690634f89059e9061090d908490600401611b2e565b602060405180830381865afa158015610928573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061094c9190611b40565b6109a45760405162461bcd60e51b815260206004820152602360248201527f506172656e74206e616d65206d7573742062652061207075626c6963207375666044820152620ccd2f60eb1b60648201526084016103d1565b6109ae815f610b05565b5f549095506109c7906001600160a01b03168888610de3565b5060408051602081018890529081018690529093506001600160a01b03841690606001604051602081830303815290604052805190602001207fa2e66ce20e6fb2c4f61339c364ad79f15160cf5307230c8bc4d628adbca2ba3989604051610a2f9190611b2e565b60405180910390a350509250925092565b5f828281518110610a5357610a53611b5f565b016020015160f81c905092915050565b82515f90610a718385611b08565b1115610a7b575f80fd5b5091016020012090565b8251606090610a948385611b08565b1115610a9e575f80fd5b5f8267ffffffffffffffff811115610ab857610ab861160a565b6040519080825280601f01601f191660200182016040528015610ae2576020820181803683370190505b50905060208082019086860101610afa82828761100b565b509095945050505050565b5f80610b118484610a40565b60ff169050805f03610b2657505f905061019d565b5f610b4585610b358487611b08565b610b40906001611b08565b610b05565b90505f610b5e610b56866001611b08565b879085610a63565b604080516020810185905290810182905290915060600160408051808303601f190181529082905280516020909101206001546302571be360e01b8352600483018290529095505f916001600160a01b03909116906302571be390602401602060405180830381865afa158015610bd7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bfb919061196b565b90506001600160a01b0381161580610c1b57506001600160a01b03811630145b610c7a5760405162461bcd60e51b815260206004820152602a60248201527f43616e6e6f7420656e61626c652061206e616d65206f776e656420627920736f6044820152696d656f6e6520656c736560b01b60648201526084016103d1565b6001600160a01b0381163014610dd95782610d5e576001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa158015610cd6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cfa919061196b565b60405163232e3b3b60e21b8152600481018590523060248201529091506001600160a01b03821690638cb8ecec906044015f604051808303815f87803b158015610d42575f80fd5b505af1158015610d54573d5f803e3d5ffd5b5050505050610dd9565b6001546040516306ab592360e01b815260048101859052602481018490523060448201526001600160a01b03909116906306ab5923906064016020604051808303815f875af1158015610db3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610dd79190611add565b505b5050505092915050565b5f80610e016040518060400160405280606081526020015f81525090565b610e1985516005610e129190611b08565b8290611060565b50604080518082019091526005815264045f656e7360d81b6020820152610e419082906110c3565b50610e4c81866110c3565b50805160405163021e646f60e21b81525f9182916001600160a01b038a169163087991bc91610e8091601091600401611b73565b606060405180830381865afa158015610e9b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ebf9190611ba7565b93509150506bffffffffffffffffffffffff198216158015610ee057508551155b15610ef3575f8094509450505050611003565b855160208701206bffffffffffffffffffffffff19838116911614610f16575f80fd5b5f610f2187826110ef565b90505b80515160208201511015610ff857610f4b816080015183610f459190611bfc565b4261114a565b610fbd5760405162461bcd60e51b815260206004820152603c60248201527f444e53207265636f7264206973207374616c653b2072656672657368206f722060448201527f64656c657465206974206265666f72652070726f63656564696e672e0000000060648201526084016103d1565b5f80610fcd898460a00151611162565b925090508115610fe857965060019550611003945050505050565b5050610ff3816111d1565b610f24565b505f80945094505050505b935093915050565b602081106110435781518352611022602084611b08565b925061102f602083611b08565b915061103c602082611b1b565b905061100b565b905182516020929092036101000a5f190180199091169116179052565b60408051808201909152606081525f602082015261107f602083611c20565b156110a75761108f602083611c20565b61109a906020611b1b565b6110a49083611b08565b91505b506020828101829052604080518085525f815290920101905290565b60408051808201909152606081525f60208201526110e883845f0151518485516112b6565b9392505050565b6111376040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261019d816111d1565b5f806111568385611c3f565b60030b12159392505050565b5f805b83518310156111c4575f6111798585610a40565b60ff169050611189600185611b08565b93505f8061119887878561139c565b9250905081156111b0579350600192506111ca915050565b6111ba8387611b08565b9550505050611165565b505f9050805b9250929050565b60c081015160208201819052815151116111e85750565b5f6111fa825f015183602001516113f5565b82602001516112099190611b08565b82519091506112189082611454565b61ffff16604083015261122c600282611b08565b825190915061123b9082611454565b61ffff16606083015261124f600282611b08565b825190915061125e908261147a565b63ffffffff166080830152611274600482611b08565b82519091505f906112859083611454565b61ffff169050611296600283611b08565b60a0840181905291506112a98183611b08565b60c0909301929092525050565b60408051808201909152606081525f602082015282518211156112d7575f80fd5b60208501516112e68386611b08565b11156113195761131985611309876020015187866113049190611b08565b6114a2565b611314906002611c66565b6114b8565b5f808651805187602083010193508088870111156113375787860182525b505050602084015b602084106113775780518252611356602083611b08565b9150611363602082611b08565b9050611370602085611b1b565b935061133f565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b5f806113a8858561147a565b63ffffffff1663613d3078146113c257505f905080611003565b602c8310156113d557505f905080611003565b6113e9856113e4866004611b08565b6114d5565b91509150935093915050565b5f815b8351811061140857611408611c7d565b5f6114138583610a40565b60ff169050611423816001611b08565b61142d9083611b08565b9150805f0361143c5750611442565b506113f8565b61144c8382611b1b565b949350505050565b81515f90611463836002611b08565b111561146d575f80fd5b50016002015161ffff1690565b81515f90611489836004611b08565b1115611493575f80fd5b50016004015163ffffffff1690565b5f818311156114b257508161019d565b50919050565b81516114c48383611060565b506114cf83826110c3565b50505050565b5f8060288385516114e69190611b1b565b10156114f657505f9050806111ca565b5f835b611504856028611b08565b8110156115a55760049190911b905f61151d8783610a40565b60ff169050603081101580156115335750603a81105b1561154c57611543603082611b1b565b8317925061159c565b6041811015801561155d5750604781105b1561156d57611543603782611b1b565b6061811015801561157e5750606781105b1561158e57611543605782611b1b565b5f80945094505050506111ca565b506001016114f9565b50946001945092505050565b5f602082840312156115c1575f80fd5b81356001600160e01b0319811681146110e8575f80fd5b6001600160a01b03811681146115ec575f80fd5b50565b5f602082840312156115ff575f80fd5b81356110e8816115d8565b634e487b7160e01b5f52604160045260245ffd5b6040805190810167ffffffffffffffff811182821017156116415761164161160a565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156116705761167061160a565b604052919050565b5f67ffffffffffffffff8211156116915761169161160a565b50601f01601f191660200190565b5f82601f8301126116ae575f80fd5b81356116c16116bc82611678565b611647565b8181528460208386010111156116d5575f80fd5b816020850160208301375f918101602001919091529392505050565b5f82601f830112611700575f80fd5b8135602067ffffffffffffffff8083111561171d5761171d61160a565b8260051b61172c838201611647565b9384528581018301938381019088861115611745575f80fd5b84880192505b858310156117d457823584811115611761575f80fd5b88016040818b03601f1901811315611777575f80fd5b61177f61161e565b878301358781111561178f575f80fd5b61179d8d8a8387010161169f565b8252509082013590868211156117b1575f80fd5b6117bf8c898486010161169f565b8189015284525050918401919084019061174b565b98975050505050505050565b5f805f805f60a086880312156117f4575f80fd5b853567ffffffffffffffff8082111561180b575f80fd5b61181789838a0161169f565b9650602088013591508082111561182c575f80fd5b61183889838a016116f1565b9550604088013591508082111561184d575f80fd5b5061185a8882890161169f565b935050606086013561186b816115d8565b9150608086013561187b816115d8565b809150509295509295909350565b5f805f6060848603121561189b575f80fd5b833567ffffffffffffffff808211156118b2575f80fd5b6118be8783880161169f565b945060208601359150808211156118d3575f80fd5b6118df878388016116f1565b935060408601359150808211156118f4575f80fd5b506119018682870161169f565b9150509250925092565b5f806040838503121561191c575f80fd5b823567ffffffffffffffff80821115611933575f80fd5b61193f8683870161169f565b93506020850135915080821115611954575f80fd5b506119618582860161169f565b9150509250929050565b5f6020828403121561197b575f80fd5b81516110e8816115d8565b5f5b838110156119a0578181015183820152602001611988565b50505f910152565b5f81518084526119bf816020860160208601611986565b601f01601f19169290920160200192915050565b5f60408083016040845280865180835260608601915060608160051b870101925060208089015f5b83811015611a4b57888603605f1901855281518051888852611a1f898901826119a8565b9185015188830389870152919050611a3781836119a8565b9750505093820193908201906001016119fb565b505086840381880152505050611a6181866119a8565b9695505050505050565b5f60208284031215611a7b575f80fd5b815167ffffffffffffffff811115611a91575f80fd5b8201601f81018413611aa1575f80fd5b8051611aaf6116bc82611678565b818152856020838501011115611ac3575f80fd5b611ad4826020830160208601611986565b95945050505050565b5f60208284031215611aed575f80fd5b5051919050565b634e487b7160e01b5f52601160045260245ffd5b8082018082111561019d5761019d611af4565b8181038181111561019d5761019d611af4565b602081525f6110e860208301846119a8565b5f60208284031215611b50575f80fd5b815180151581146110e8575f80fd5b634e487b7160e01b5f52603260045260245ffd5b61ffff83168152604060208201525f61144c60408301846119a8565b805163ffffffff81168114611ba2575f80fd5b919050565b5f805f60608486031215611bb9575f80fd5b611bc284611b8f565b9250611bd060208501611b8f565b915060408401516bffffffffffffffffffffffff1981168114611bf1575f80fd5b809150509250925092565b63ffffffff818116838216019080821115611c1957611c19611af4565b5092915050565b5f82611c3a57634e487b7160e01b5f52601260045260245ffd5b500690565b600382810b9082900b03637fffffff198112637fffffff8213171561019d5761019d611af4565b808202811582820484141761019d5761019d611af4565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{"0x0":"0x9b2565a3545a1312bdcb6e7148a7f7cae8c2706b","0x1":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0x2":"0x287dee389caaa49edc112888f2bcfd927b472e25"}},"0x62b11ad5f582a5c5d378fb310125b030042554f1":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106103af5760003560e01c80637e37479e116101f4578063ba5d40b71161011a578063e985e9c5116100ad578063f5c1f76e1161007c578063f5c1f76e146108d8578063f7df5c60146108eb578063f8c8765e146108fe578063ffa1ad741461091157600080fd5b8063e985e9c51461087a578063ebf0c717146108b6578063ec129eea146108bd578063f25eb5c1146108d057600080fd5b8063c87b56dd116100e9578063c87b56dd1461082e578063ce92b33e14610841578063cf2c52cb14610854578063d9548e531461086757600080fd5b8063ba5d40b7146107b3578063baef73e9146107c6578063bb5b27e114610808578063bebec6b41461081b57600080fd5b8063a22cb46511610192578063ac9650d811610161578063ac9650d81461074c578063b3f9e4cb1461076c578063b85afd281461077f578063b88d4fde146107a057600080fd5b8063a22cb465146106e7578063a3f4df7e146106fa578063a424740014610726578063ab3b87fe1461073957600080fd5b80639508b1c4116101ce5780639508b1c4146106b15780639559c0bd146106c457806395d89b41146106cc57806399e0dd7c146106d457600080fd5b80637e37479e146106785780637eee288d1461068b57806394d008ef1461069e57600080fd5b806342842e0e116102d95780635096023911610277578063663f7b2a11610246578063663f7b2a14610610578063672b9f81146106235780636ccbae5f1461064457806370a082311461066557600080fd5b806350960239146105bb578063572b6c05146105ce5780636352211e146105ea578063638e5c78146105fd57600080fd5b806347c81699116102b357806347c816991461056f5780634a72584d146105825780634f558e791461059557806350382c1a146105a857600080fd5b806342842e0e1461053657806342966c6814610549578063430c20811461055c57600080fd5b80631bf7e13e1161035157806327f189751161032057806327f18975146104ea578063310bd74b146104fd5780633f72ec6e1461051057806340c10f191461052357600080fd5b80631bf7e13e146104905780631f71be06146104a357806323b872dd146104b6578063276fabb1146104c957600080fd5b8063095ea7b31161038d578063095ea7b31461041c578063150b7a02146104315780631bd8cc1a1461045d5780631be5e7ed1461047d57600080fd5b806301ffc9a7146103b457806306fdde03146103dc578063081812fc146103f1575b600080fd5b6103c76103c2366004613f0b565b610935565b60405190151581526020015b60405180910390f35b6103e4610946565b6040516103d39190613f78565b6104046103ff366004613f8b565b6109d8565b6040516001600160a01b0390911681526020016103d3565b61042f61042a366004613fb9565b6109ff565b005b61044461043f366004614026565b610a18565b6040516001600160e01b031990911681526020016103d3565b61047061046b3660046140dc565b610b72565b6040516103d3919061417f565b6103e461048b366004614192565b610c68565b6103e461049e3660046141c9565b610cb3565b61042f6104b1366004614249565b610dbe565b61042f6104c4366004614305565b610e54565b6104dc6104d7366004614346565b610ea7565b6040519081526020016103d3565b61042f6104f8366004614387565b610eb6565b61042f61050b366004613f8b565b610efe565b61042f61051e3660046143fa565b610f39565b61042f610531366004613fb9565b61103b565b61042f610544366004614305565b611088565b61042f610557366004613f8b565b6110a3565b6103c761056a366004613fb9565b6110e7565b61042f61057d366004614424565b6110f3565b61042f610590366004614485565b611132565b6103c76105a3366004613f8b565b611178565b61042f6105b636600461458c565b611197565b61042f6105c93660046145c0565b6111cd565b6103c76105dc3660046145c0565b6001600160a01b0316301490565b6104046105f8366004613f8b565b61122d565b61042f61060b366004613f8b565b61124a565b61042f61061e366004614678565b611295565b6106366106313660046146c0565b611336565b6040516103d39291906146e2565b6104dc610652366004613f8b565b6000908152610100602052604090205490565b6104dc6106733660046145c0565b61134e565b6104dc6106863660046145c0565b6113d4565b61042f610699366004613fb9565b611405565b61042f6106ac366004614707565b61145c565b61042f6106bf366004614762565b6114ab565b6104dc601481565b6103e4611532565b61042f6106e2366004614805565b611541565b61042f6106f536600461483a565b6115c8565b6103e46040518060400160405280600d81526020016c554e533a20526567697374727960981b81525081565b6103c76107343660046141c9565b6115da565b61042f610747366004613fb9565b611625565b61075f61075a366004614346565b61166a565b6040516103d39190614866565b61040461077a366004613f8b565b611746565b61079261078d3660046140dc565b611770565b6040516103d39291906148c8565b61042f6107ae3660046148ed565b611892565b61042f6107c1366004614249565b6118d9565b6107f06107d4366004613f8b565b600090815261013960205260409020546001600160401b031690565b6040516001600160401b0390911681526020016103d3565b6103e4610816366004613f8b565b611962565b6103e46108293660046145c0565b611a04565b6103e461083c366004613f8b565b611ace565b61042f61084f366004614387565b611b34565b61042f610862366004614958565b611b73565b6103c7610875366004613f8b565b611c42565b6103c761088836600461499f565b6001600160a01b039182166000908152606a6020908152604080832093909416825291909152205460ff1690565b60006104dc565b61042f6108cb366004614387565b611c85565b61042f611cc4565b6104706108e6366004614346565b611d4b565b61042f6108f93660046149d8565b611dfe565b61042f61090c366004614a0a565b611e8f565b6103e460405180604001604052806005815260200164302e392e3160d81b81525081565b600061094082612065565b92915050565b60606065805461095590614a66565b80601f016020809104026020016040519081016040528092919081815260200182805461098190614a66565b80156109ce5780601f106109a3576101008083540402835291602001916109ce565b820191906000526020600020905b8154815290600101906020018083116109b157829003601f168201915b5050505050905090565b60006109e3826120b5565b506000908152606960205260409020546001600160a01b031690565b80610a0981612114565b610a13838361217a565b505050565b60007f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378546001600160a01b0316610a4d61229c565b6001600160a01b031603610b0e57610a6361229c565b6001600160a01b03166342966c68856040518263ffffffff1660e01b8152600401610a9091815260200190565b600060405180830381600087803b158015610aaa57600080fd5b505af1158015610abe573d6000803e3d6000fd5b505050821580159150610ad85750610ad882840184614a9a565b15610af657610ae730856122ab565b610af185856123f9565b610b00565b610b0085856122ab565b50630a85bd0160e11b610b69565b60405162461bcd60e51b815260206004820152602560248201527f52656769737472793a204552433732315f524543454956494e475f50524f4849604482015264109255115160da1b60648201526084015b60405180910390fd5b95945050505050565b6060826001600160401b03811115610b8c57610b8c6144d7565b604051908082528060200260200182016040528015610bbf57816020015b6060815260200190600190039081610baa5790505b50905060005b83811015610c6057610c30858583818110610be257610be2614ab5565b9050602002810190610bf49190614acb565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508792506124a4915050565b828281518110610c4257610c42614ab5565b60200260200101819052508080610c5890614b27565b915050610bc5565b509392505050565b6060610cab84848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508692506124a4915050565b949350505050565b606060005a9050610cc58585856115da565b610d215760405162461bcd60e51b815260206004820152602760248201527f554e535265676973747279466f727761726465723a205349474e41545552455f6044820152661253959053125160ca1b6064820152608401610b60565b610db3610d3160208701876145c0565b30604088013584610d4560608b018b614acb565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284376000920191909152506124d992505050565b9150505b9392505050565b610134546001600160a01b0316610dd361229c565b6001600160a01b031614610df95760405162461bcd60e51b8152600401610b6090614b40565b6000610e0d610e08888a614b87565b6125ba565b509050610e1a8982611405565b610e278686868685612612565b8115610e4957610e498982610e44610e3f8b8d614b87565b612680565b612701565b505050505050505050565b80610e66610e6061229c565b82612743565b610e825760405162461bcd60e51b8152600401610b6090614b94565b81610e8c81612114565b610e95836127d4565b610ea0858585612841565b5050505050565b6000610c60610e088385614b87565b80610ec2610e6061229c565b610ede5760405162461bcd60e51b8152600401610b6090614b94565b81610ee881612114565b610ef587878787876129e8565b50505050505050565b80610f0a610e6061229c565b610f265760405162461bcd60e51b8152600401610b6090614b94565b81610f3081612114565b610a13836127d4565b610134546001600160a01b0316610f4e61229c565b6001600160a01b031614610f745760405162461bcd60e51b8152600401610b6090614b40565b610f7d816120b5565b42826001600160401b031611610fd55760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a204558504952595f494e5f5041535400000000000000006044820152606401610b60565b60008181526101396020908152604091829020805467ffffffffffffffff19166001600160401b038616908117909155915191825282917f93feabb03ab84f47fc85bf0c298103fca21d8c8bc376eae0c1e1c56b9d4f7789910160405180910390a25050565b611043612a4b565b6001600160a01b031661105461229c565b6001600160a01b03161461107a5760405162461bcd60e51b8152600401610b6090614bdd565b61108482826122ab565b5050565b610a1383838360405180602001604052806000815250611892565b806110af610e6061229c565b6110cb5760405162461bcd60e51b8152600401610b6090614b94565b816110d581612114565b6110de836127d4565b610a1383612b4c565b6000610db78383612743565b806110ff610e6061229c565b61111b5760405162461bcd60e51b8152600401610b6090614b94565b8161112581612114565b610ef58787878787612bf3565b8061113e610e6061229c565b61115a5760405162461bcd60e51b8152600401610b6090614b94565b8161116481612114565b61117086868686612cd2565b505050505050565b6000818152606760205260408120546001600160a01b03161515610940565b6111ca816040516020016111ab9190614c1f565b6040516020818303038152906040528051906020012060001c82612d72565b50565b610134546001600160a01b03166111e261229c565b6001600160a01b0316146112085760405162461bcd60e51b8152600401610b6090614b40565b6001600160a01b0316600090815261013660205260409020805460ff19166001179055565b600061123882611c42565b6112455761094082612d97565b919050565b80611256610e6061229c565b6112725760405162461bcd60e51b8152600401610b6090614b94565b61128461127d61229c565b3084612841565b61108461128f61229c565b836123f9565b60006112a0826125ba565b5090506112ab61229c565b6001600160a01b03166112bd8261122d565b6001600160a01b0316146113135760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b60565b61131c81612114565b61108461132761229c565b8261133185612680565b612df7565b6060806113438484612e7e565b909590945092505050565b60006001600160a01b0382166113b85760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b6064820152608401610b60565b506001600160a01b031660009081526068602052604090205490565b6001600160a01b038116600090815261013560205260408120546113f781612e9f565b6113ff578091505b50919050565b610134546001600160a01b031661141a61229c565b6001600160a01b0316146114405760405162461bcd60e51b8152600401610b6090614b40565b611449816127d4565b61108461145582612d97565b8383612841565b611464612a4b565b6001600160a01b031661147561229c565b6001600160a01b03161461149b5760405162461bcd60e51b8152600401610b6090614bdd565b6114a584846122ab565b50505050565b6114b58787612ee9565b6114bd61229c565b6001600160a01b03166114cf8661122d565b6001600160a01b0316146115255760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b60565b610ef58484848489612612565b60606066805461095590614a66565b610134546001600160a01b031661155661229c565b6001600160a01b03161461157c5760405162461bcd60e51b8152600401610b6090614b40565b61013361158a828483614c81565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b82826040516115bc929190614d69565b60405180910390a15050565b6110846115d361229c565b8383612f58565b6000610cab6115e885614d7d565b3085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061302692505050565b80611631610e6061229c565b61164d5760405162461bcd60e51b8152600401610b6090614b94565b8161165781612114565b6114a561166384612d97565b8585612841565b606060006116788385614e07565b905030330361173d5760005b8381101561173b5761170b61169761229c565b61169f61316f565b8787858181106116b1576116b1614ab5565b90506020028101906116c39190614acb565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250613183915050565b82828151811061171d5761171d614ab5565b6020026020010181905250808061173390614b27565b915050611684565b505b610cab816131b3565b6000818152606760205260408120546001600160a01b0316611769576000610940565b3092915050565b606080836001600160401b0381111561178b5761178b6144d7565b6040519080825280602002602001820160405280156117be57816020015b60608152602001906001900390816117a95790505b509150836001600160401b038111156117d9576117d96144d7565b60405190808252806020026020018201604052801561180c57816020015b60608152602001906001900390816117f75790505b50905060005b848110156118895761183c86868381811061182f5761182f614ab5565b9050602002013585612e7e565b84838151811061184e5761184e614ab5565b6020026020010184848151811061186757611867614ab5565b602002602001018290528290525050808061188190614b27565b915050611812565b50935093915050565b8161189e610e6061229c565b6118ba5760405162461bcd60e51b8152600401610b6090614b94565b826118c481612114565b6118cd846127d4565b611170868686866132de565b610134546001600160a01b03166118ee61229c565b6001600160a01b0316146119145760405162461bcd60e51b8152600401610b6090614b40565b600080611924610e08898b614b87565b9150915061193181613311565b6119498a83611943610e3f8c8e614b87565b86613371565b6119568787878786612612565b50505050505050505050565b600081815260c96020526040902080546060919061197f90614a66565b80601f01602080910402602001604051908101604052809291908181526020018280546119ab90614a66565b80156119f85780601f106119cd576101008083540402835291602001916119f8565b820191906000526020600020905b8154815290600101906020018083116119db57829003601f168201915b50505050509050919050565b6001600160a01b03811660009081526101356020526040902054606090611a2a81612e9f565b6113ff576000818152610138602052604090208054611a4890614a66565b80601f0160208091040260200160405190810160405280929190818152602001828054611a7490614a66565b8015611ac15780601f10611a9657610100808354040283529160200191611ac1565b820191906000526020600020905b815481529060010190602001808311611aa457829003601f168201915b5050505050915050919050565b6060611ad9826120b5565b6000611ae36133c4565b90506000815111611b035760405180602001604052806000815250610db7565b80611b0d846133d4565b604051602001611b1e929190614e7a565b6040516020818303038152906040529392505050565b80611b40610e6061229c565b611b5c5760405162461bcd60e51b8152600401610b6090614b94565b81611b6681612114565b610ef58787878787612612565b7f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87546001600160a01b0316611ba661229c565b6001600160a01b031614611bcc5760405162461bcd60e51b8152600401610b6090614bdd565b6020819003611bef576000611be382840184613f8b565b90506114a584826122ab565b6000611bfd82840184614ea9565b805190915060005b8181101561117057611c3086848381518110611c2357611c23614ab5565b60200260200101516122ab565b80611c3a81614b27565b915050611c05565b600081815261013960205260408120546001600160401b03161580159061094057505060009081526101396020526040902054426001600160401b039091161090565b80611c91610e6061229c565b611cad5760405162461bcd60e51b8152600401610b6090614b94565b81611cb781612114565b610ef587878787876134d4565b6000611cce61229c565b6001600160a01b0381166000908152610135602052604081205491925003611d425760405162461bcd60e51b815260206004820152602160248201527f52656769737472793a20524556455253455f5245434f52445f49535f454d50546044820152605960f81b6064820152608401610b60565b6111ca816134ea565b6060816001600160401b03811115611d6557611d656144d7565b604051908082528060200260200182016040528015611d9857816020015b6060815260200190600190039081611d835790505b50905060005b82811015611df757611dc7848483818110611dbb57611dbb614ab5565b90506020020135611962565b828281518110611dd957611dd9614ab5565b60200260200101819052508080611def90614b27565b915050611d9e565b5092915050565b610134546001600160a01b0316611e1361229c565b6001600160a01b031614611e395760405162461bcd60e51b8152600401610b6090614b40565b61013454611e50906001600160a01b0316846122ab565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c39528383604051611e82929190614d69565b60405180910390a2505050565b600054610100900460ff1615808015611eaf5750600054600160ff909116105b80611ec95750303b158015611ec9575060005460ff166001145b611f2c5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610b60565b6000805460ff191660011790558015611f4f576000805461ff0019166101001790555b61013480546001600160a01b0319166001600160a01b038716179055837f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec9237880546001600160a01b0319166001600160a01b03929092169190911790556040805180820182526013815272556e73746f707061626c6520446f6d61696e7360681b60208083019190915282518084019093526002835261155160f21b90830152611ff79161352f565b611fff61356f565b61200761356f565b61201083613598565b612019826135c8565b8015610ea0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b60006001600160e01b031982166380ac58cd60e01b148061209657506001600160e01b03198216635b5e139f60e01b145b8061094057506301ffc9a760e01b6001600160e01b0319831614610940565b6000818152606760205260409020546001600160a01b03166111ca5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b60565b3033036121715761212361316f565b81146111ca5760405162461bcd60e51b815260206004820152601760248201527f52656769737472793a20544f4b454e5f494e56414c49440000000000000000006044820152606401610b60565b6111ca816135f8565b600061218582612d97565b9050806001600160a01b0316836001600160a01b0316036121f25760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b6064820152608401610b60565b806001600160a01b031661220461229c565b6001600160a01b0316148061222057506122208161088861229c565b6122925760405162461bcd60e51b815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c00006064820152608401610b60565b610a138383613626565b60006122a6613694565b905090565b6001600160a01b0382166123015760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610b60565b6000818152606760205260409020546001600160a01b0316156123665760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610b60565b612372600083836136af565b6001600160a01b038216600090815260686020526040812080546001929061239b908490614f39565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b03861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b6000612403612a4b565b905061240f8183613626565b60008051602061529383398151915254604080516020808201869052825180830390910181528183019283905263e3dec8fb60e01b9092526001600160a01b0390921691829163e3dec8fb9161246c918891309190604401614f4c565b600060405180830381600087803b15801561248657600080fd5b505af115801561249a573d6000803e3d6000fd5b5050505050505050565b6060610db7836040516020016124ba9190614c1f565b6040516020818303038152906040528051906020012060001c8361378b565b60606124e4856135f8565b600080876001600160a01b0316866124fe8b8a8989613183565b60405161250b9190614c1f565b60006040518083038160008787f1925050503d8060008114612549576040519150601f19603f3d011682016040523d82523d6000602084013e61254e565b606091505b50909250905061255f603f87614f8e565b5a1161256d5761256d614fa2565b6125ad82826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061386d565b9998505050505050505050565b805160009081905b801561260c578291506125f882856125db600185614fb8565b815181106125eb576125eb614ab5565b60200260200101516138a6565b92508061260481614fcb565b9150506125c2565b50915091565b60005b848110156111705761266e86868381811061263257612632614ab5565b90506020028101906126449190614acb565b86868581811061265657612656614ab5565b90506020028101906126689190614acb565b86612bf3565b8061267881614b27565b915050612615565b606060008260008151811061269757612697614ab5565b602002602001015190506000600190505b8351811015611df757818482815181106126c4576126c4614ab5565b60200260200101516040516020016126dd929190614fe2565b604051602081830303815290604052915080806126f990614b27565b9150506126a8565b61dead6001600160a01b0384161480159061273357506001600160a01b03831660009081526101356020526040902054155b15610a1357610a13838383612df7565b60008061274f8361122d565b90506001600160a01b03811615801590610cab5750806001600160a01b0316846001600160a01b031614806127a957506001600160a01b038082166000908152606a602090815260408083209388168352929052205460ff165b80610cab5750836001600160a01b03166127c2846109d8565b6001600160a01b031614949350505050565b6127dd81613952565b6040516020016127ef91815260200190565b60408051601f198184030181528282528051602091820120600085815260cb9092529181209190915582917f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9190a250565b826001600160a01b031661285482612d97565b6001600160a01b0316146128b85760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b6064820152608401610b60565b6001600160a01b03821661291a5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610b60565b6129258383836136af565b612930600082613626565b6001600160a01b0383166000908152606860205260408120805460019290612959908490614fb8565b90915550506001600160a01b0382166000908152606860205260408120805460019290612987908490614f39565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60005b8481101561117057612a39868683818110612a0857612a08614ab5565b90506020020135858584818110612a2157612a21614ab5565b9050602002810190612a339190614acb565b85612cd2565b80612a4381614b27565b9150506129eb565b600080516020615293833981519152546000906001600160a01b03168015612b485760405163721804d360e11b81523060048201526000906001600160a01b0383169063e43009a690602401602060405180830381865afa158015612ab4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ad8919061501e565b60405163e66f960360e01b8152600481018290529091506001600160a01b0383169063e66f960390602401602060405180830381865afa158015612b20573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b449190615037565b9250505b5090565b6000612b5782612d97565b9050612b65816000846136af565b612b70600083613626565b6001600160a01b0381166000908152606860205260408120805460019290612b99908490614fb8565b909155505060008281526067602052604080822080546001600160a01b0319169055518391906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b60008585604051602001612c08929190615054565b60408051601f198184030181528282528051602091820120601f8901829004820284018201909252878352909250612c5c9183918990899081908401838280828437600092019190915250612d7292505050565b6111708187878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061397a915050565b612cdb84613aaf565b612d275760405162461bcd60e51b815260206004820152601c60248201527f5265636f726453746f726167653a204b45595f4e4f545f464f554e44000000006044820152606401610b60565b6114a584612d3486611962565b85858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525087925061397a915050565b612d7b82613aaf565b61108457600082815260c960205260409020610a138282615064565b6000818152606760205260408120546001600160a01b0316806109405760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b60565b6000828152610138602052604090208054612e1190614a66565b9050600003612e3557600082815261013860205260409020612e338282615064565b505b6001600160a01b03831660008181526101356020526040808220859055518492917feb76a21470988c474a21f690cc28fee1ed511bd812dc3c21fd0f49c5e5d4708a91a3505050565b606080612e8a84611962565b9150612e96848461378b565b90509250929050565b6000818152610137602052604081205460ff16801561094057506101366000612ec661229c565b6001600160a01b0316815260208101919091526040016000205460ff1692915050565b60008051602061529383398151915254604051633805550f60e01b81526001600160a01b03909116908190633805550f90612f2a9086908690600401614d69565b600060405180830381600087803b158015612f4457600080fd5b505af1158015610ef5573d6000803e3d6000fd5b816001600160a01b0316836001600160a01b031603612fb95760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610b60565b6001600160a01b038381166000818152606a6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561306d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613091919061501e565b9050600061313f8660600151805190602001208688602001516040516020016130df9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561316557508551613165906001600160a01b03168286613ad5565b9695505050505050565b60003033036131805750601f193601355b90565b606082858560405160200161319a93929190615123565b6040516020818303038152906040529050949350505050565b606081516001600160401b038111156131ce576131ce6144d7565b60405190808252806020026020018201604052801561320157816020015b60608152602001906001900390816131ec5790505b50905060005b82518110156113ff57600080306001600160a01b031685848151811061322f5761322f614ab5565b60200260200101516040516132449190614c1f565b600060405180830381855af49150503d806000811461327f576040519150601f19603f3d011682016040523d82523d6000602084013e613284565b606091505b50915091506132ac82826040518060600160405280602781526020016152b36027913961386d565b8484815181106132be576132be614ab5565b6020026020010181905250505080806132d690614b27565b915050613207565b6132e9848484612841565b6132f584848484613c17565b6114a55760405162461bcd60e51b8152600401610b6090615162565b6000818152610137602052604090205460ff16156111ca5760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a20544f4b454e5f555047524144454400000000000000006044820152606401610b60565b61337b84846122ab565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952836040516133ab9190613f78565b60405180910390a280156114a5576114a5848484612701565b6060610133805461095590614a66565b6060816000036133fb5750506040805180820190915260018152600360fc1b602082015290565b8160005b8115613425578061340f81614b27565b915061341e9050600a83614f8e565b91506133ff565b6000816001600160401b0381111561343f5761343f6144d7565b6040519080825280601f01601f191660200182016040528015613469576020820181803683370190505b5090505b8415610cab5761347e600183614fb8565b915061348b600a866151b4565b613496906030614f39565b60f81b8183815181106134ab576134ab614ab5565b60200101906001600160f81b031916908160001a9053506134cd600a86614f8e565b945061346d565b6134dd816127d4565b610ea08585858585612612565b6001600160a01b03811660008181526101356020526040808220829055517ffcf5eec0cfa3e6332f5f0e63ec242d71f866a61d121d6cdf5c2eb3b668a26c4f9190a250565b600054610100900460ff166135565760405162461bcd60e51b8152600401610b60906151c8565b60656135628382615064565b506066610a138282615064565b600054610100900460ff166135965760405162461bcd60e51b8152600401610b60906151c8565b565b600054610100900460ff166135bf5760405162461bcd60e51b8152600401610b60906151c8565b6111ca81613d1c565b600054610100900460ff166135ef5760405162461bcd60e51b8152600401610b60906151c8565b6111ca81613d75565b60008181526101006020526040902054613613906001614f39565b6000918252610100602052604090912055565b600081815260696020526040902080546001600160a01b0319166001600160a01b038416908117909155819061365b82612d97565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60003033036136aa575060331936013560601c90565b503390565b6001600160a01b0382166136c6576136c681613311565b600081815261013960205260409020546001600160401b031615613761576001600160a01b0382161580159061371557506136ff612a4b565b6001600160a01b0316826001600160a01b031614155b6137615760405162461bcd60e51b815260206004820152601960248201527f52656769737472793a20544f4b454e5f455850495241424c45000000000000006044820152606401610b60565b6001600160a01b03831660009081526101356020526040902054819003610a1357610a13836134ea565b606061379682612e9f565b156137b05750604080516020810190915260008152610940565b60ca60006137bd84613952565b8152602001908152602001600020600084815260200190815260200160002080546137e790614a66565b80601f016020809104026020016040519081016040528092919081815260200182805461381390614a66565b80156138605780601f1061383557610100808354040283529160200191613860565b820191906000526020600020905b81548152906001019060200180831161384357829003601f168201915b5050505050905092915050565b6060831561387c575081610db7565b82511561388c5782518084602001fd5b8160405162461bcd60e51b8152600401610b609190613f78565b600081516000036138f15760405162461bcd60e51b815260206004820152601560248201527452656769737472793a204c4142454c5f454d50545960581b6044820152606401610b60565b82826040516020016139039190614c1f565b60405160208183030381529060405280519060200120604051602001613933929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b600081815260cb602052604081205415612b4857600082815260cb6020526040902054610940565b60ca600061398783613952565b8152602001908152602001600020600085815260200190815260200160002080546139b190614a66565b9050600003613a0957826040516139c89190614c1f565b6040518091039020817f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f8685604051613a009190613f78565b60405180910390a35b8160ca6000613a1784613952565b815260200190815260200160002060008681526020019081526020016000209081613a429190615064565b5081604051613a519190614c1f565b604051809103902083604051613a679190614c1f565b6040518091039020827f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d928686604051613aa19291906146e2565b60405180910390a450505050565b600081815260c9602052604081208054829190613acb90614a66565b9050119050919050565b6000806000613ae48585613dc3565b90925090506000816004811115613afd57613afd615213565b148015613b1b5750856001600160a01b0316826001600160a01b0316145b15613b2b57600192505050610db7565b600080876001600160a01b0316631626ba7e60e01b8888604051602401613b53929190615229565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051613b919190614c1f565b600060405180830381855afa9150503d8060008114613bcc576040519150601f19603f3d011682016040523d82523d6000602084013e613bd1565b606091505b5091509150818015613be4575080516020145b8015613c0b57508051630b135d3f60e11b90613c09908301602090810190840161501e565b145b98975050505050505050565b60006001600160a01b0384163b15613d1457836001600160a01b031663150b7a02613c4061229c565b8786866040518563ffffffff1660e01b8152600401613c629493929190615242565b6020604051808303816000875af1925050508015613c9d575060408051601f3d908101601f19168201909252613c9a91810190615275565b60015b613cfa573d808015613ccb576040519150601f19603f3d011682016040523d82523d6000602084013e613cd0565b606091505b508051600003613cf25760405162461bcd60e51b8152600401610b6090615162565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610cab565b506001610cab565b600054610100900460ff16613d435760405162461bcd60e51b8152600401610b60906151c8565b806000805160206152938339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b600054610100900460ff16613d9c5760405162461bcd60e51b8152600401610b60906151c8565b807f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87613d54565b6000808251604103613df95760208301516040840151606085015160001a613ded87828585613e08565b94509450505050613e01565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613e3f5750600090506003613eec565b8460ff16601b14158015613e5757508460ff16601c14155b15613e685750600090506004613eec565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613ebc573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613ee557600060019250925050613eec565b9150600090505b94509492505050565b6001600160e01b0319811681146111ca57600080fd5b600060208284031215613f1d57600080fd5b8135610db781613ef5565b60005b83811015613f43578181015183820152602001613f2b565b50506000910152565b60008151808452613f64816020860160208601613f28565b601f01601f19169290920160200192915050565b602081526000610db76020830184613f4c565b600060208284031215613f9d57600080fd5b5035919050565b6001600160a01b03811681146111ca57600080fd5b60008060408385031215613fcc57600080fd5b8235613fd781613fa4565b946020939093013593505050565b60008083601f840112613ff757600080fd5b5081356001600160401b0381111561400e57600080fd5b602083019150836020828501011115613e0157600080fd5b60008060008060006080868803121561403e57600080fd5b853561404981613fa4565b9450602086013561405981613fa4565b93506040860135925060608601356001600160401b0381111561407b57600080fd5b61408788828901613fe5565b969995985093965092949392505050565b60008083601f8401126140aa57600080fd5b5081356001600160401b038111156140c157600080fd5b6020830191508360208260051b8501011115613e0157600080fd5b6000806000604084860312156140f157600080fd5b83356001600160401b0381111561410757600080fd5b61411386828701614098565b909790965060209590950135949350505050565b600082825180855260208086019550808260051b84010181860160005b8481101561417257601f19868403018952614160838351613f4c565b98840198925090830190600101614144565b5090979650505050505050565b602081526000610db76020830184614127565b6000806000604084860312156141a757600080fd5b83356001600160401b038111156141bd57600080fd5b61411386828701613fe5565b6000806000604084860312156141de57600080fd5b83356001600160401b03808211156141f557600080fd5b908501906080828803121561420957600080fd5b9093506020850135908082111561421f57600080fd5b5061422c86828701613fe5565b9497909650939450505050565b8035801515811461124557600080fd5b60008060008060008060008060a0898b03121561426557600080fd5b883561427081613fa4565b975060208901356001600160401b038082111561428c57600080fd5b6142988c838d01614098565b909950975060408b01359150808211156142b157600080fd5b6142bd8c838d01614098565b909750955060608b01359150808211156142d657600080fd5b506142e38b828c01614098565b90945092506142f6905060808a01614239565b90509295985092959890939650565b60008060006060848603121561431a57600080fd5b833561432581613fa4565b9250602084013561433581613fa4565b929592945050506040919091013590565b6000806020838503121561435957600080fd5b82356001600160401b0381111561436f57600080fd5b61437b85828601614098565b90969095509350505050565b60008060008060006060868803121561439f57600080fd5b85356001600160401b03808211156143b657600080fd5b6143c289838a01614098565b909750955060208801359150808211156143db57600080fd5b506143e888828901614098565b96999598509660400135949350505050565b6000806040838503121561440d57600080fd5b82356001600160401b0381168114613fd757600080fd5b60008060008060006060868803121561443c57600080fd5b85356001600160401b038082111561445357600080fd5b61445f89838a01613fe5565b9097509550602088013591508082111561447857600080fd5b506143e888828901613fe5565b6000806000806060858703121561449b57600080fd5b8435935060208501356001600160401b038111156144b857600080fd5b6144c487828801613fe5565b9598909750949560400135949350505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715614515576145156144d7565b604052919050565b600082601f83011261452e57600080fd5b81356001600160401b03811115614547576145476144d7565b61455a601f8201601f19166020016144ed565b81815284602083860101111561456f57600080fd5b816020850160208301376000918101602001919091529392505050565b60006020828403121561459e57600080fd5b81356001600160401b038111156145b457600080fd5b610cab8482850161451d565b6000602082840312156145d257600080fd5b8135610db781613fa4565b60006001600160401b038211156145f6576145f66144d7565b5060051b60200190565b600061461361460e846145dd565b6144ed565b8381529050602080820190600585901b84018681111561463257600080fd5b845b8181101561466d5780356001600160401b038111156146535760008081fd5b61465f8982890161451d565b855250928201928201614634565b505050509392505050565b60006020828403121561468a57600080fd5b81356001600160401b038111156146a057600080fd5b8201601f810184136146b157600080fd5b610cab84823560208401614600565b600080604083850312156146d357600080fd5b50508035926020909101359150565b6040815260006146f56040830185613f4c565b8281036020840152610db38185613f4c565b6000806000806060858703121561471d57600080fd5b843561472881613fa4565b93506020850135925060408501356001600160401b0381111561474a57600080fd5b61475687828801613fe5565b95989497509550505050565b60008060008060008060006080888a03121561477d57600080fd5b87356001600160401b038082111561479457600080fd5b6147a08b838c01613fe5565b909950975060208a0135965060408a01359150808211156147c057600080fd5b6147cc8b838c01614098565b909650945060608a01359150808211156147e557600080fd5b506147f28a828b01614098565b989b979a50959850939692959293505050565b6000806020838503121561481857600080fd5b82356001600160401b0381111561482e57600080fd5b61437b85828601613fe5565b6000806040838503121561484d57600080fd5b823561485881613fa4565b9150612e9660208401614239565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156148bb57603f198886030184526148a9858351613f4c565b9450928501929085019060010161488d565b5092979650505050505050565b6040815260006148db6040830185614127565b8281036020840152610db38185614127565b6000806000806080858703121561490357600080fd5b843561490e81613fa4565b9350602085013561491e81613fa4565b92506040850135915060608501356001600160401b0381111561494057600080fd5b61494c8782880161451d565b91505092959194509250565b60008060006040848603121561496d57600080fd5b833561497881613fa4565b925060208401356001600160401b0381111561499357600080fd5b61422c86828701613fe5565b600080604083850312156149b257600080fd5b82356149bd81613fa4565b915060208301356149cd81613fa4565b809150509250929050565b6000806000604084860312156149ed57600080fd5b8335925060208401356001600160401b0381111561499357600080fd5b60008060008060808587031215614a2057600080fd5b8435614a2b81613fa4565b93506020850135614a3b81613fa4565b92506040850135614a4b81613fa4565b91506060850135614a5b81613fa4565b939692955090935050565b600181811c90821680614a7a57607f821691505b6020821081036113ff57634e487b7160e01b600052602260045260246000fd5b600060208284031215614aac57600080fd5b610db782614239565b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112614ae257600080fd5b8301803591506001600160401b03821115614afc57600080fd5b602001915036819003821315613e0157600080fd5b634e487b7160e01b600052601160045260246000fd5b600060018201614b3957614b39614b11565b5060010190565b60208082526027908201527f52656769737472793a2053454e4445525f49535f4e4f545f4d494e54494e475f60408201526626a0a720a3a2a960c91b606082015260800190565b6000610db7368484614600565b60208082526029908201527f52656769737472793a2053454e4445525f49535f4e4f545f415050524f5645446040820152682fa7a92fa7aba722a960b91b606082015260800190565b60208082526022908201527f52656769737472793a20494e53554646494349454e545f5045524d495353494f6040820152614e5360f01b606082015260800190565b60008251614c31818460208701613f28565b9190910192915050565b601f821115610a1357600081815260208120601f850160051c81016020861015614c625750805b601f850160051c820191505b8181101561117057828155600101614c6e565b6001600160401b03831115614c9857614c986144d7565b614cac83614ca68354614a66565b83614c3b565b6000601f841160018114614ce05760008515614cc85750838201355b600019600387901b1c1916600186901b178355610ea0565b600083815260209020601f19861690835b82811015614d115786850135825560209485019460019092019101614cf1565b5086821015614d2e5760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b602081526000610cab602083018486614d40565b600060808236031215614d8f57600080fd5b604051608081016001600160401b038282108183111715614db257614db26144d7565b8160405284359150614dc382613fa4565b81835260208501356020840152604085013560408401526060850135915080821115614dee57600080fd5b50614dfb3682860161451d565b60608301525092915050565b6000614e1561460e846145dd565b80848252602080830192508560051b850136811115614e3357600080fd5b855b81811015614e6e5780356001600160401b03811115614e545760008081fd5b614e6036828a0161451d565b865250938201938201614e35565b50919695505050505050565b60008351614e8c818460208801613f28565b835190830190614ea0818360208801613f28565b01949350505050565b60006020808385031215614ebc57600080fd5b82356001600160401b03811115614ed257600080fd5b8301601f81018513614ee357600080fd5b8035614ef161460e826145dd565b81815260059190911b82018301908381019087831115614f1057600080fd5b928401925b82841015614f2e57833582529284019290840190614f15565b979650505050505050565b8082018082111561094057610940614b11565b6001600160a01b03848116825283166020820152606060408201819052600090610b6990830184613f4c565b634e487b7160e01b600052601260045260246000fd5b600082614f9d57614f9d614f78565b500490565b634e487b7160e01b600052600160045260246000fd5b8181038181111561094057610940614b11565b600081614fda57614fda614b11565b506000190190565b60008351614ff4818460208801613f28565b601760f91b9083019081528351615012816001840160208801613f28565b01600101949350505050565b60006020828403121561503057600080fd5b5051919050565b60006020828403121561504957600080fd5b8151610db781613fa4565b8183823760009101908152919050565b81516001600160401b0381111561507d5761507d6144d7565b6150918161508b8454614a66565b84614c3b565b602080601f8311600181146150c657600084156150ae5750858301515b600019600386901b1c1916600185901b178555611170565b600085815260208120601f198616915b828110156150f5578886015182559484019460019091019084016150d6565b50858210156151135787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60008451615135818460208901613f28565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6000826151c3576151c3614f78565b500690565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b634e487b7160e01b600052602160045260246000fd5b828152604060208201526000610cab6040830184613f4c565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061316590830184613f4c565b60006020828403121561528757600080fd5b8151610db781613ef556febe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a","storage":{}},"0x6ac8f19d1e0f81147cdf2a1e53cb1f4e18417204":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610296575f3560e01c80636352211e11610161578063c93ab3fd116100ca578063e985e9c511610084578063e985e9c5146106c8578063eb8ae530146106db578063ed70554d146106ee578063f242432a1461070d578063f2fde38b14610720578063fd0cd0d914610733575f80fd5b8063c93ab3fd14610647578063cf4088231461065a578063d8c9921a1461066d578063d9a50c1214610680578063da8c229e14610693578063e0dba60f146106b5575f80fd5b8063a22cb4651161011b578063a22cb465146105d5578063a4014982146105e8578063adf4960a146105fb578063b6bcad261461060e578063c475abff14610621578063c658e08614610634575f80fd5b80636352211e146105595780636e5d6ad21461056c578063715018a6146105975780638b4dfa751461059f5780638cf8b41e146105b25780638da5cb5b146105c5575f80fd5b80631f4e1504116102035780633f15457f116101bd5780633f15457f146104b1578063402906fc146104d857806341415eab146105005780634e1273f41461051357806353095467146105335780635d3590d514610546575f80fd5b80631f4e15041461042b57806320c38e2b1461043e57806324c1af44146104515780632b20e397146104645780632eb2c2d61461048b57806333c69ea91461049e575f80fd5b80630e4cd725116102545780630e4cd725146103a05780630e89341c146103b357806314ab9038146103c6578063150b7a02146103d95780631534e177146104055780631896f70a14610418575f80fd5b8062fdd58e1461029a5780630178fe3f146102c057806301ffc9a71461030657806306fdde0314610329578063081812fc14610360578063095ea7b31461038b575b5f80fd5b6102ad6102a8366004614316565b610746565b6040519081526020015b60405180910390f35b6102d36102ce366004614340565b6107f0565b604080516001600160a01b03909416845263ffffffff90921660208401526001600160401b0316908201526060016102b7565b61031961031436600461436c565b61081f565b60405190151581526020016102b7565b6103536040518060400160405280600b81526020016a2730b6b2abb930b83832b960a91b81525081565b6040516102b791906143d4565b61037361036e366004614340565b61085e565b6040516001600160a01b0390911681526020016102b7565b61039e610399366004614316565b6108a0565b005b6103196103ae3660046143e6565b6108e5565b6103536103c1366004614340565b61095e565b61039e6103d436600461442f565b6109cc565b6103ec6103e736600461449d565b610ac0565b6040516001600160e01b031990911681526020016102b7565b61039e61041336600461450a565b610c96565b61039e6104263660046143e6565b610cc0565b600754610373906001600160a01b031681565b61035361044c366004614340565b610d75565b6102ad61045f3660046145f6565b610e0c565b6103737f000000000000000000000000c965345edac823d56812cd20a10316233916a60581565b61039e610499366004614717565b610fe7565b61039e6104ac3660046147bd565b61121a565b6103737f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a981565b6104eb6104e6366004614811565b6113e6565b60405163ffffffff90911681526020016102b7565b61031961050e3660046143e6565b611480565b610526610521366004614832565b6114b8565b6040516102b79190614928565b600554610373906001600160a01b031681565b61039e61055436600461493a565b6115d7565b610373610567366004614340565b611655565b61057f61057a366004614978565b61165f565b6040516001600160401b0390911681526020016102b7565b61039e61178e565b61039e6105ad3660046149aa565b6117a1565b61057f6105c03660046149e9565b6118c0565b5f546001600160a01b0316610373565b61039e6105e3366004614a6b565b611c28565b6102ad6105f6366004614a97565b611cfd565b610319610609366004614b12565b611e38565b61039e61061c36600461450a565b611e5c565b6102ad61062f366004614b33565b61209e565b6102ad610642366004614b53565b6122fd565b61039e610655366004614bc0565b6124bd565b61039e610668366004614c26565b612605565b61039e61067b366004614c5b565b612794565b61031961068e366004614b33565b61285d565b6103196106a136600461450a565b60046020525f908152604090205460ff1681565b61039e6106c3366004614a6b565b612938565b6103196106d6366004614c86565b61299f565b61039e6106e9366004614cb2565b6129cc565b6102ad6106fc366004614340565b60016020525f908152604090205481565b61039e61071b366004614d15565b612d59565b61039e61072e36600461450a565b612e06565b610319610741366004614340565b612e7c565b5f6001600160a01b0383166107b65760405162461bcd60e51b815260206004820152602b60248201527f455243313135353a2062616c616e636520717565727920666f7220746865207a60448201526a65726f206164647265737360a81b60648201526084015b60405180910390fd5b5f6107c083611655565b9050836001600160a01b0316816001600160a01b0316036107e55760019150506107ea565b5f9150505b92915050565b5f8181526001602052604090205460a081901c60c082901c610813838383612f4d565b90959094509092509050565b5f6001600160e01b03198216631b05885b60e31b148061084f57506001600160e01b03198216630a85bd0160e11b145b806107ea57506107ea82612f80565b5f8061086983611655565b90506001600160a01b03811661088157505f92915050565b5f838152600360205260409020546001600160a01b03165b9392505050565b5f6108aa826107f0565b50915050603f1960408216016108d65760405163a2a7201360e01b8152600481018390526024016107ad565b6108e08383612fcf565b505050565b5f8080806108f2866107f0565b925092509250846001600160a01b0316836001600160a01b0316148061091d575061091d838661299f565b8061094157506001600160a01b0385166109368761085e565b6001600160a01b0316145b8015610954575061095282826130de565b155b9695505050505050565b6005546040516303a24d0760e21b8152600481018390526060916001600160a01b031690630e89341c906024015f60405180830381865afa1580156109a5573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526107ea9190810190614d78565b816109d78133611480565b6109f857803360405163168ab55d60e31b81526004016107ad929190614dea565b8260105f610a05836107f0565b5091505063ffffffff8282161615610a335760405163a2a7201360e01b8152600481018490526024016107ad565b604051630295720760e31b8152600481018790526001600160401b03861660248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906314ab9038906044015b5f604051808303815f87803b158015610aa2575f80fd5b505af1158015610ab4573d5f803e3d5ffd5b50505050505050505050565b5f336001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a6051614610b0a5760405163032634a760e31b815260040160405180910390fd5b5f808080610b1a86880188614e01565b83516020850120939750919550935091508890808214610b57576040516331970f3360e21b815260048101829052602481018390526044016107ad565b604051630a3b53db60e21b81526001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906328ed4f6c90610ba59085903090600401614dea565b5f604051808303815f87803b158015610bbc575f80fd5b505af1158015610bce573d5f803e3d5ffd5b5050604051636b727d4360e11b8152600481018d90525f92506276a70091506001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063d6e4fa8690602401602060405180830381865afa158015610c3c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c609190614e64565b610c6a9190614e8f565b9050610c7d87878761ffff16848861310d565b50630a85bd0160e11b9c9b505050505050505050505050565b610c9e613215565b600580546001600160a01b0319166001600160a01b0392909216919091179055565b81610ccb8133611480565b610cec57803360405163168ab55d60e31b81526004016107ad929190614dea565b8260085f610cf9836107f0565b5091505063ffffffff8282161615610d275760405163a2a7201360e01b8152600481018490526024016107ad565b604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a90610a8b9089908990600401614dea565b60066020525f908152604090208054610d8d90614eb6565b80601f0160208091040260200160405190810160405280929190818152602001828054610db990614eb6565b8015610e045780601f10610ddb57610100808354040283529160200191610e04565b820191905f5260205f20905b815481529060010190602001808311610de757829003601f168201915b505050505081565b5f87610e188133611480565b610e3957803360405163168ab55d60e31b81526004016107ad929190614dea565b87516020890120610e4a8a8261326e565b9250610e568a8461329a565b610e6083866133d3565b610e6b8a848b613406565b50610e788a8487876134cd565b9350610e8383613510565b610f33576040516305ef2c7f60e41b8152600481018b9052602481018290523060448201526001600160a01b0388811660648301526001600160401b03881660848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610f0a575f80fd5b505af1158015610f1c573d5f803e3d5ffd5b50505050610f2e8a848b8b89896135c6565b610fda565b6040516305ef2c7f60e41b8152600481018b9052602481018290523060448201526001600160a01b0388811660648301526001600160401b03881660848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610fb6575f80fd5b505af1158015610fc8573d5f803e3d5ffd5b50505050610fda8a848b8b89896135fc565b5050979650505050505050565b81518351146110495760405162461bcd60e51b815260206004820152602860248201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206044820152670dad2e6dac2e8c6d60c31b60648201526084016107ad565b6001600160a01b03841661106f5760405162461bcd60e51b81526004016107ad90614eee565b6001600160a01b03851633148061108b575061108b853361299f565b6110f25760405162461bcd60e51b815260206004820152603260248201527f455243313135353a207472616e736665722063616c6c6572206973206e6f74206044820152711bdddb995c881b9bdc88185c1c1c9bdd995960721b60648201526084016107ad565b5f5b83518110156111ad575f84828151811061111057611110614f33565b602002602001015190505f84838151811061112d5761112d614f33565b602002602001015190505f805f611143856107f0565b9250925092506111548583836136b6565b83600114801561117557508a6001600160a01b0316836001600160a01b0316145b6111915760405162461bcd60e51b81526004016107ad90614f47565b61119d858b848461375d565b50505050508060010190506110f4565b50836001600160a01b0316856001600160a01b0316336001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516111fd929190614f91565b60405180910390a461121333868686868661379d565b5050505050565b5f611225858561326e565b905061123181846133d3565b5f808061123d846107f0565b919450925090506001600160a01b03831615806112ea57506040516302571be360e01b81526004810185905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa1580156112ba573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112de9190614fbe565b6001600160a01b031614155b1561130857604051635374b59960e01b815260040160405180910390fd5b5f806113138a6107f0565b90935091508a905061134f576113298633611480565b61134a57853360405163168ab55d60e31b81526004016107ad929190614dea565b61137a565b6113598a33611480565b61137a57893360405163168ab55d60e31b81526004016107ad929190614dea565b6113858689846138f7565b611390878483613932565b9650620100008416158015906113b457508363ffffffff1688851763ffffffff1614155b156113d55760405163a2a7201360e01b8152600481018790526024016107ad565b96831796610ab486868a868b613977565b5f826113f28133611480565b61141357803360405163168ab55d60e31b81526004016107ad929190614dea565b8360025f611420836107f0565b5091505063ffffffff828216161561144e5760405163a2a7201360e01b8152600481018490526024016107ad565b5f808061145a8a6107f0565b9250925092506114738a84848c61ffff16178485613977565b5098975050505050505050565b5f80808061148d866107f0565b925092509250846001600160a01b0316836001600160a01b031614806109415750610941838661299f565b6060815183511461151d5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b60648201526084016107ad565b5f83516001600160401b0381111561153757611537614525565b604051908082528060200260200182016040528015611560578160200160208202803683370190505b5090505f5b84518110156115cf576115aa85828151811061158357611583614f33565b602002602001015185838151811061159d5761159d614f33565b6020026020010151610746565b8282815181106115bc576115bc614f33565b6020908102919091010152600101611565565b509392505050565b6115df613215565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af115801561162b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061164f9190614fd9565b50505050565b5f6107ea82613a1e565b5f8061166b858561326e565b905061167681613510565b61169357604051635374b59960e01b815260040160405180910390fd5b5f61169e86336108e5565b9050801580156116b557506116b38233611480565b155b156116d757813360405163168ab55d60e31b81526004016107ad929190614dea565b5f80806116e3856107f0565b925092509250831580156116fa5750620400008216155b1561171b5760405163a2a7201360e01b8152600481018690526024016107ad565b5f6117258a6107f0565b92505050611734888383613932565b97506117428685858b613a33565b6040516001600160401b038916815286907ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b1329060200160405180910390a2509598975050505050505050565b611796613215565b61179f5f613a49565b565b6117b85f805160206154fc8339815191528461326e565b6117c28133611480565b6117e357803360405163168ab55d60e31b81526004016107ad929190614dea565b306001600160a01b0384160361181757604051632ca49b0d60e11b81526001600160a01b03841660048201526024016107ad565b6118376118315f805160206154fc8339815191528661326e565b83613a98565b604051632142170760e11b81523060048201526001600160a01b038481166024830152604482018690527f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906342842e0e906064015f604051808303815f87803b1580156118a4575f80fd5b505af11580156118b6573d5f803e3d5ffd5b5050505050505050565b5f8086866040516118d2929190614ff4565b6040519081900381206331a9108f60e11b82526004820181905291505f907f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa15801561193f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119639190614fbe565b90506001600160a01b0381163314801590611a09575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063e985e9c590604401602060405180830381865afa1580156119e3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a079190614fd9565b155b15611a4157611a255f805160206154fc8339815191528361326e565b3360405163168ab55d60e31b81526004016107ad929190614dea565b6040516323b872dd60e01b81526001600160a01b038281166004830152306024830152604482018490527f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906323b872dd906064015f604051808303815f87803b158015611aae575f80fd5b505af1158015611ac0573d5f803e3d5ffd5b5050604051630a3b53db60e21b81526001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a6051692506328ed4f6c9150611b129085903090600401614dea565b5f604051808303815f87803b158015611b29575f80fd5b505af1158015611b3b573d5f803e3d5ffd5b5050604051636b727d4360e11b8152600481018590526276a70092507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b0316915063d6e4fa8690602401602060405180830381865afa158015611ba7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611bcb9190614e64565b611bd59190614e8f565b9250611c1d88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508a9250505061ffff8816868861310d565b505095945050505050565b6001600160a01b0382163303611c925760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084016107ad565b335f8181526002602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b335f9081526004602052604081205460ff16611d2b5760405162461bcd60e51b81526004016107ad90615003565b5f8787604051611d3c929190614ff4565b604051908190038120633f2891eb60e21b8252600482018190523060248301526044820187905291507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b03169063fca247ac906064016020604051808303815f875af1158015611db5573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611dd99190614e64565b9150611e2d88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508a9250505061ffff8616611e276276a70087614e8f565b8861310d565b509695505050505050565b5f80611e43846107f0565b50841663ffffffff908116908516149250505092915050565b611e64613215565b6007546001600160a01b031615611f785760075460405163a22cb46560e01b81526001600160a01b0391821660048201525f60248201527f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063a22cb465906044015f604051808303815f87803b158015611ee0575f80fd5b505af1158015611ef2573d5f803e3d5ffd5b505060075460405163a22cb46560e01b81526001600160a01b0391821660048201525f60248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9909116925063a22cb46591506044015f604051808303815f87803b158015611f61575f80fd5b505af1158015611f73573d5f803e3d5ffd5b505050505b600780546001600160a01b0319166001600160a01b0383169081179091551561209b5760075460405163a22cb46560e01b81526001600160a01b039182166004820152600160248201527f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063a22cb465906044015f604051808303815f87803b158015612007575f80fd5b505af1158015612019573d5f803e3d5ffd5b505060075460405163a22cb46560e01b81526001600160a01b039182166004820152600160248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9909116925063a22cb46591506044015f604051808303815f87803b158015612089575f80fd5b505af1158015611213573d5f803e3d5ffd5b50565b335f9081526004602052604081205460ff166120cc5760405162461bcd60e51b81526004016107ad90615003565b5f6120e45f805160206154fc8339815191528561326e565b60405163c475abff60e01b815260048101869052602481018590529091505f906001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063c475abff906044016020604051808303815f875af1158015612154573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906121789190614e64565b6040516331a9108f60e11b8152600481018790529091507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa9250505080156121fc575060408051601f3d908101601f191682019092526121f991810190614fbe565b60015b6122095791506107ea9050565b6001600160a01b038116301415806122b157506040516302571be360e01b81526004810184905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015612281573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906122a59190614fbe565b6001600160a01b031614155b156122c0575091506107ea9050565b505f6122cf6276a70083614e8f565b5f8481526001602052604090205490915060a081901c6122f185838386613a33565b50919695505050505050565b5f866123098133611480565b61232a57803360405163168ab55d60e31b81526004016107ad929190614dea565b5f878760405161233b929190614ff4565b6040518091039020905061234f898261326e565b925061235b898461329a565b61236583866133d3565b5f6123a68a858b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061340692505050565b90506123b48a8588886134cd565b94506123bf84613510565b61246b576040516306ab592360e01b8152600481018b9052602481018390523060448201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906306ab5923906064016020604051808303815f875af1158015612434573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906124589190614e64565b506124668482898989613b83565b6124b0565b6124b08a858b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508d92508c91508b90506135fc565b5050509695505050505050565b5f6125005f86868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613bc59050565b6007549091506001600160a01b031661252c5760405163093075b560e21b815260040160405180910390fd5b6125368133611480565b61255757803360405163168ab55d60e31b81526004016107ad929190614dea565b5f8080612563846107f0565b919450925090505f6125748561085e565b905061257f85613c81565b60075f9054906101000a90046001600160a01b03166001600160a01b0316639198c2768a8a878787878e8e6040518963ffffffff1660e01b81526004016125cd989796959493929190615073565b5f604051808303815f87803b1580156125e4575f80fd5b505af11580156125f6573d5f803e3d5ffd5b50505050505050505050505050565b836126108133611480565b61263157803360405163168ab55d60e31b81526004016107ad929190614dea565b84601c5f61263e836107f0565b5091505063ffffffff828216161561266c5760405163a2a7201360e01b8152600481018490526024016107ad565b60405163cf40882360e01b8152600481018990523060248201526001600160a01b0387811660448301526001600160401b03871660648301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063cf408823906084015f604051808303815f87803b1580156126e8575f80fd5b505af11580156126fa573d5f803e3d5ffd5b5050506001600160a01b038816905061275f575f612717896107f0565b509150506201ffff196202000082160161274f57604051632ca49b0d60e11b81526001600160a01b03891660048201526024016107ad565b612759895f613a98565b506118b6565b5f61276989611655565b905061278981898b5f1c600160405180602001604052805f815250613d1e565b505050505050505050565b61279e838361326e565b6127a88133611480565b6127c957803360405163168ab55d60e31b81526004016107ad929190614dea565b7f6c32148f748aba23997146d7fe89e962e3cc30271290fb96f5f4337756c03b5284016128095760405163615a470360e01b815260040160405180910390fd5b6001600160a01b038216158061282757506001600160a01b03821630145b1561285057604051632ca49b0d60e11b81526001600160a01b03831660048201526024016107ad565b61164f611831858561326e565b5f80612869848461326e565b90505f61287582613510565b90505f805160206154fc83398151915285146128945791506107ea9050565b6040516331a9108f60e11b8152600481018590527f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa925050508015612915575060408051601f3d908101601f1916820190925261291291810190614fbe565b60015b612923575f925050506107ea565b6001600160a01b0316301492506107ea915050565b612940613215565b6001600160a01b0382165f81815260046020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf8791015b60405180910390a25050565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205460ff1690565b5f80612a105f87878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613dfe9050565b915091505f612a578288888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613bc59050565b90505f612a64828561326e565b5f818152600660205260409020909150612a7f888a8361511e565b507f6c32148f748aba23997146d7fe89e962e3cc30271290fb96f5f4337756c03b528201612ac05760405163615a470360e01b815260040160405180910390fd5b6040516302571be360e01b8152600481018290525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa158015612b25573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612b499190614fbe565b90506001600160a01b0381163314801590612bef575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063e985e9c590604401602060405180830381865afa158015612bc9573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612bed9190614fd9565b155b15612c1157813360405163168ab55d60e31b81526004016107ad929190614dea565b6001600160a01b03861615612c9c57604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a90612c6e9085908a90600401614dea565b5f604051808303815f87803b158015612c85575f80fd5b505af1158015612c97573d5f803e3d5ffd5b505050505b604051635b0fc9c360e01b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635b0fc9c390612cea9085903090600401614dea565b5f604051808303815f87803b158015612d01575f80fd5b505af1158015612d13573d5f803e3d5ffd5b50505050612789828a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201829052508d93509150819050613b83565b6001600160a01b038416612d7f5760405162461bcd60e51b81526004016107ad90614eee565b6001600160a01b038516331480612d9b5750612d9b853361299f565b612df95760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2063616c6c6572206973206e6f74206f776e6572206e6f7260448201526808185c1c1c9bdd995960ba1b60648201526084016107ad565b6112138585858585613d1e565b612e0e613215565b6001600160a01b038116612e735760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107ad565b61209b81613a49565b5f8181526006602052604081208054829190612e9790614eb6565b80601f0160208091040260200160405190810160405280929190818152602001828054612ec390614eb6565b8015612f0e5780601f10612ee557610100808354040283529160200191612f0e565b820191905f5260205f20905b815481529060010190602001808311612ef157829003601f168201915b5050505050905080515f03612f2557505f92915050565b5f80612f318382613dfe565b90925090505f612f418483613bc5565b9050610954818461285d565b5f8042836001600160401b03161015612f775761ffff1962010000851601612f73575f94505b5f93505b50929391925050565b5f6001600160e01b03198216636cdb3d1360e11b1480612fb057506001600160e01b031982166303a24d0760e21b145b806107ea57506301ffc9a760e01b6001600160e01b03198316146107ea565b5f612fd982611655565b9050806001600160a01b0316836001600160a01b0316036130465760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084016107ad565b336001600160a01b03821614806130625750613062813361299f565b6130d45760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016107ad565b6108e08383613eb2565b5f620200008381161480156108995750426130fc6276a700846151d7565b6001600160401b0316109392505050565b845160208601205f61312c5f805160206154fc8339815191528361326e565b90505f61315488604051806040016040528060058152602001626cae8d60e31b815250613f1f565b5f83815260066020526040902090915061316e82826151f7565b50613181828289620300008a1789613b83565b6001600160a01b038416156118b657604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a906131de9085908890600401614dea565b5f604051808303815f87803b1580156131f5575f80fd5b505af1158015613207573d5f803e3d5ffd5b505050505050505050505050565b5f546001600160a01b0316331461179f5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107ad565b604080516020808201949094528082019290925280518083038201815260609092019052805191012090565b5f80806132a6846107f0565b91945092509050426001600160401b0382161080801561336657506001600160a01b038416158061336657506040516302571be360e01b8152600481018690525f906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015613337573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061335b9190614fbe565b6001600160a01b0316145b156133a4575f613375876107f0565b50915050602081161561339e5760405163a2a7201360e01b8152600481018790526024016107ad565b506133cb565b620100008316156133cb5760405163a2a7201360e01b8152600481018690526024016107ad565b505050505050565b63fffdffff81811763ffffffff16146134025760405163a2a7201360e01b8152600481018390526024016107ad565b5050565b60605f6134aa8360065f8881526020019081526020015f20805461342990614eb6565b80601f016020809104026020016040519081016040528092919081815260200182805461345590614eb6565b80156134a05780601f10613477576101008083540402835291602001916134a0565b820191905f5260205f20905b81548152906001019060200180831161348357829003601f168201915b5050505050613f1f565b5f8581526006602052604090209091506134c482826151f7565b50949350505050565b5f806134d8856107f0565b925050505f806134e9885f1c6107f0565b92509250506134f98787846138f7565b613504858483613932565b98975050505050505050565b5f8061351b83611655565b6001600160a01b0316141580156107ea57506040516302571be360e01b81526004810183905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015613592573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906135b69190614fbe565b6001600160a01b03161492915050565b5f86815260066020526040812080546135e491879161342990614eb6565b90506135f38682868686613b83565b50505050505050565b5f8080613608886107f0565b9250925092505f61362f8860065f8d81526020019081526020015f20805461342990614eb6565b5f8a815260066020526040902080549192509061364b90614eb6565b90505f0361366c575f89815260066020526040902061366a82826151f7565b505b61367b89858886178589613977565b6001600160a01b03871661369857613693895f613a98565b610ab4565b610ab484888b5f1c600160405180602001604052805f815250613d1e565b6201ffff19620200008316016136d6576136d36276a700826151d7565b90505b42816001600160401b0316101561370f576201000082161561370a5760405162461bcd60e51b81526004016107ad90614f47565b613734565b60048216156137345760405163a2a7201360e01b8152600481018490526024016107ad565b604082165f036108e05750505f90815260036020526040902080546001600160a01b0319169055565b60c0816001600160401b0316901b60a08363ffffffff16901b846001600160a01b0316171760015f8681526020019081526020015f208190555050505050565b6001600160a01b0384163b156133cb5760405163bc197c8160e01b81526001600160a01b0385169063bc197c81906137e190899089908890889088906004016152b2565b6020604051808303815f875af192505050801561381b575060408051601f3d908101601f1916820190925261381891810190615303565b60015b6138c75761382761531e565b806308c379a003613860575061383b615337565b806138465750613862565b8060405162461bcd60e51b81526004016107ad91906143d4565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e20455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b60648201526084016107ad565b6001600160e01b0319811663bc197c8160e01b146135f35760405162461bcd60e51b81526004016107ad906153bf565b63ffff000082161580159060018316159082906139115750805b156112135760405163a2a7201360e01b8152600481018690526024016107ad565b5f816001600160401b0316846001600160401b03161115613951578193505b826001600160401b0316846001600160401b0316101561396f578293505b509192915050565b61398385858584613a33565b60405163ffffffff8416815285907f39873f00c80f4f94b7bd1594aebcf650f003545b74824d57ddf4939e3ff3a34b9060200160405180910390a2816001600160401b0316816001600160401b03161115611213576040516001600160401b038216815285907ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b132906020015b60405180910390a25050505050565b5f80613a29836107f0565b5090949350505050565b613a3d8483613f96565b61164f8484848461375d565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b613aa3826001611e38565b15613ac45760405163a2a7201360e01b8152600481018390526024016107ad565b613acd82613c81565b604051635b0fc9c360e01b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635b0fc9c390613b1b9085908590600401614dea565b5f604051808303815f87803b158015613b32575f80fd5b505af1158015613b44573d5f803e3d5ffd5b50506040516001600160a01b03841681528492507fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c49150602001612993565b613b8f85848484613fcf565b847f8ce7013e8abebc55c3890a68f5a27c67c3f7efa64e584de5fb22363c606fd34085858585604051613a0f9493929190615407565b5f805f613bd28585613dfe565b909250905081613c435760018551613bea919061544d565b8414613c385760405162461bcd60e51b815260206004820152601d60248201527f6e616d65686173683a204a756e6b20617420656e64206f66206e616d6500000060448201526064016107ad565b505f91506107ea9050565b613c4d8582613bc5565b6040805160208101929092528101839052606001604051602081830303815290604052805190602001209250505092915050565b5f8181526001602052604090205460a081901c60c082901c613ca4838383612f4d565b5f86815260036020526040812080546001600160a01b0319169055909350613cd091508590848461375d565b60408051858152600160208201525f916001600160a01b0386169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b5f805f613d2a866107f0565b925092509250613d3b8683836136b6565b846001148015613d5c5750876001600160a01b0316836001600160a01b0316145b613d785760405162461bcd60e51b81526004016107ad90614f47565b866001600160a01b0316836001600160a01b031603613d9957505050611213565b613da58688848461375d565b60408051878152602081018790526001600160a01b03808a1692908b169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46118b6338989898989614041565b5f8083518310613e505760405162461bcd60e51b815260206004820152601e60248201527f726561644c6162656c3a20496e646578206f7574206f6620626f756e6473000060448201526064016107ad565b5f848481518110613e6357613e63614f33565b016020015160f81c90508015613e8f57613e8885613e82866001615460565b836140fb565b9250613e93565b5f92505b613e9d8185615460565b613ea8906001615460565b9150509250929050565b5f81815260036020526040902080546001600160a01b0319166001600160a01b0384169081179091558190613ee682611655565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6060600183511015613f4457604051631406d65b60e11b815260040160405180910390fd5b60ff83511115613f69578260405163e3ba295f60e01b81526004016107ad91906143d4565b82518383604051602001613f7f93929190615473565b604051602081830303815290604052905092915050565b61ffff811615801590613fae57506201000181811614155b156134025760405163a2a7201360e01b8152600481018390526024016107ad565b613fd98483613f96565b5f848152600160205260409020546001600160a01b0381161561403557613fff85613c81565b6040515f815285907fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c49060200160405180910390a25b6112138585858561411d565b6001600160a01b0384163b156133cb5760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e619061408590899089908890889088906004016154b7565b6020604051808303815f875af19250505080156140bf575060408051601f3d908101601f191682019092526140bc91810190615303565b60015b6140cb5761382761531e565b6001600160e01b0319811663f23a6e6160e01b146135f35760405162461bcd60e51b81526004016107ad906153bf565b82515f906141098385615460565b1115614113575f80fd5b5091016020012090565b835f808061412a846107f0565b9194509250905063ffff000082166001600160401b038087169083161115614150578195505b42826001600160401b03161061416557958617955b6001600160a01b038416156141bc5760405162461bcd60e51b815260206004820152601f60248201527f455243313135353a206d696e74206f66206578697374696e6720746f6b656e0060448201526064016107ad565b6001600160a01b03881661421c5760405162461bcd60e51b815260206004820152602160248201527f455243313135353a206d696e7420746f20746865207a65726f206164647265736044820152607360f81b60648201526084016107ad565b306001600160a01b038916036142915760405162461bcd60e51b815260206004820152603460248201527f455243313135353a206e65774f776e65722063616e6e6f74206265207468652060448201527313985b5955dc985c1c195c8818dbdb9d1c9858dd60621b60648201526084016107ad565b61429d8589898961375d565b60408051868152600160208201526001600160a01b038a16915f9133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4612789335f8a88600160405180602001604052805f815250614041565b6001600160a01b038116811461209b575f80fd5b5f8060408385031215614327575f80fd5b823561433281614302565b946020939093013593505050565b5f60208284031215614350575f80fd5b5035919050565b6001600160e01b03198116811461209b575f80fd5b5f6020828403121561437c575f80fd5b813561089981614357565b5f5b838110156143a1578181015183820152602001614389565b50505f910152565b5f81518084526143c0816020860160208601614387565b601f01601f19169290920160200192915050565b602081525f61089960208301846143a9565b5f80604083850312156143f7575f80fd5b82359150602083013561440981614302565b809150509250929050565b80356001600160401b038116811461442a575f80fd5b919050565b5f8060408385031215614440575f80fd5b8235915061445060208401614414565b90509250929050565b5f8083601f840112614469575f80fd5b5081356001600160401b0381111561447f575f80fd5b602083019150836020828501011115614496575f80fd5b9250929050565b5f805f805f608086880312156144b1575f80fd5b85356144bc81614302565b945060208601356144cc81614302565b93506040860135925060608601356001600160401b038111156144ed575f80fd5b6144f988828901614459565b969995985093965092949392505050565b5f6020828403121561451a575f80fd5b813561089981614302565b634e487b7160e01b5f52604160045260245ffd5b601f8201601f191681016001600160401b038111828210171561455e5761455e614525565b6040525050565b5f6001600160401b0382111561457d5761457d614525565b50601f01601f191660200190565b5f82601f83011261459a575f80fd5b81356145a581614565565b6040516145b28282614539565b8281528560208487010111156145c6575f80fd5b826020860160208301375f92810160200192909252509392505050565b803563ffffffff8116811461442a575f80fd5b5f805f805f805f60e0888a03121561460c575f80fd5b8735965060208801356001600160401b03811115614628575f80fd5b6146348a828b0161458b565b965050604088013561464581614302565b9450606088013561465581614302565b935061466360808901614414565b925061467160a089016145e3565b915061467f60c08901614414565b905092959891949750929550565b5f6001600160401b038211156146a5576146a5614525565b5060051b60200190565b5f82601f8301126146be575f80fd5b813560206146cb8261468d565b6040516146d88282614539565b80915083815260208101915060208460051b8701019350868411156146fb575f80fd5b602086015b84811015611e2d5780358352918301918301614700565b5f805f805f60a0868803121561472b575f80fd5b853561473681614302565b9450602086013561474681614302565b935060408601356001600160401b0380821115614761575f80fd5b61476d89838a016146af565b94506060880135915080821115614782575f80fd5b61478e89838a016146af565b935060808801359150808211156147a3575f80fd5b506147b08882890161458b565b9150509295509295909350565b5f805f80608085870312156147d0575f80fd5b84359350602085013592506147e7604086016145e3565b91506147f560608601614414565b905092959194509250565b803561ffff8116811461442a575f80fd5b5f8060408385031215614822575f80fd5b8235915061445060208401614800565b5f8060408385031215614843575f80fd5b82356001600160401b0380821115614859575f80fd5b818501915085601f83011261486c575f80fd5b813560206148798261468d565b6040516148868282614539565b83815260059390931b85018201928281019150898411156148a5575f80fd5b948201945b838610156148cc5785356148bd81614302565b825294820194908201906148aa565b965050860135925050808211156148e1575f80fd5b50613ea8858286016146af565b5f815180845260208085019450602084015f5b8381101561491d57815187529582019590820190600101614901565b509495945050505050565b602081525f61089960208301846148ee565b5f805f6060848603121561494c575f80fd5b833561495781614302565b9250602084013561496781614302565b929592945050506040919091013590565b5f805f6060848603121561498a575f80fd5b83359250602084013591506149a160408501614414565b90509250925092565b5f805f606084860312156149bc575f80fd5b8335925060208401356149ce81614302565b915060408401356149de81614302565b809150509250925092565b5f805f805f608086880312156149fd575f80fd5b85356001600160401b03811115614a12575f80fd5b614a1e88828901614459565b9096509450506020860135614a3281614302565b9250614a4060408701614800565b91506060860135614a5081614302565b809150509295509295909350565b801515811461209b575f80fd5b5f8060408385031215614a7c575f80fd5b8235614a8781614302565b9150602083013561440981614a5e565b5f805f805f8060a08789031215614aac575f80fd5b86356001600160401b03811115614ac1575f80fd5b614acd89828a01614459565b9097509550506020870135614ae181614302565b9350604087013592506060870135614af881614302565b9150614b0660808801614800565b90509295509295509295565b5f8060408385031215614b23575f80fd5b82359150614450602084016145e3565b5f8060408385031215614b44575f80fd5b50508035926020909101359150565b5f805f805f8060a08789031215614b68575f80fd5b8635955060208701356001600160401b03811115614b84575f80fd5b614b9089828a01614459565b9096509450506040870135614ba481614302565b9250614bb2606088016145e3565b9150614b0660808801614414565b5f805f8060408587031215614bd3575f80fd5b84356001600160401b0380821115614be9575f80fd5b614bf588838901614459565b90965094506020870135915080821115614c0d575f80fd5b50614c1a87828801614459565b95989497509550505050565b5f805f8060808587031215614c39575f80fd5b843593506020850135614c4b81614302565b925060408501356147e781614302565b5f805f60608486031215614c6d575f80fd5b833592506020840135915060408401356149de81614302565b5f8060408385031215614c97575f80fd5b8235614ca281614302565b9150602083013561440981614302565b5f805f8060608587031215614cc5575f80fd5b84356001600160401b03811115614cda575f80fd5b614ce687828801614459565b9095509350506020850135614cfa81614302565b91506040850135614d0a81614302565b939692955090935050565b5f805f805f60a08688031215614d29575f80fd5b8535614d3481614302565b94506020860135614d4481614302565b9350604086013592506060860135915060808601356001600160401b03811115614d6c575f80fd5b6147b08882890161458b565b5f60208284031215614d88575f80fd5b81516001600160401b03811115614d9d575f80fd5b8201601f81018413614dad575f80fd5b8051614db881614565565b604051614dc58282614539565b828152866020848601011115614dd9575f80fd5b610954836020830160208701614387565b9182526001600160a01b0316602082015260400190565b5f805f8060808587031215614e14575f80fd5b84356001600160401b03811115614e29575f80fd5b614e358782880161458b565b9450506020850135614e4681614302565b9250614e5460408601614800565b91506060850135614d0a81614302565b5f60208284031215614e74575f80fd5b5051919050565b634e487b7160e01b5f52601160045260245ffd5b6001600160401b03818116838216019080821115614eaf57614eaf614e7b565b5092915050565b600181811c90821680614eca57607f821691505b602082108103614ee857634e487b7160e01b5f52602260045260245ffd5b50919050565b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b634e487b7160e01b5f52603260045260245ffd5b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b604081525f614fa360408301856148ee565b8281036020840152614fb581856148ee565b95945050505050565b5f60208284031215614fce575f80fd5b815161089981614302565b5f60208284031215614fe9575f80fd5b815161089981614a5e565b818382375f9101908152919050565b60208082526028908201527f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f604082015267373a3937b63632b960c11b606082015260800190565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b60c081525f61508660c083018a8c61504b565b6001600160a01b03898116602085015263ffffffff891660408501526001600160401b03881660608501528616608084015282810360a08401526150cb81858761504b565b9b9a5050505050505050505050565b601f8211156108e057805f5260205f20601f840160051c810160208510156150ff5750805b601f840160051c820191505b81811015611213575f815560010161510b565b6001600160401b0383111561513557615135614525565b615149836151438354614eb6565b836150da565b5f601f84116001811461517a575f85156151635750838201355b5f19600387901b1c1916600186901b178355611213565b5f83815260208120601f198716915b828110156151a95786850135825560209485019460019092019101615189565b50868210156151c5575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b6001600160401b03828116828216039080821115614eaf57614eaf614e7b565b81516001600160401b0381111561521057615210614525565b6152248161521e8454614eb6565b846150da565b602080601f831160018114615257575f84156152405750858301515b5f19600386901b1c1916600185901b1785556133cb565b5f85815260208120601f198616915b8281101561528557888601518255948401946001909101908401615266565b50858210156152a257878501515f19600388901b60f8161c191681555b5050505050600190811b01905550565b6001600160a01b0386811682528516602082015260a0604082018190525f906152dd908301866148ee565b82810360608401526152ef81866148ee565b9050828103608084015261350481856143a9565b5f60208284031215615313575f80fd5b815161089981614357565b5f60033d11156153345760045f803e505f5160e01c5b90565b5f60443d10156153445790565b6040516003193d81016004833e81513d6001600160401b03816024840111818411171561537357505050505090565b828501915081518181111561538b5750505050505090565b843d87010160208285010111156153a55750505050505090565b6153b460208286010187614539565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b608081525f61541960808301876143a9565b6001600160a01b039590951660208301525063ffffffff9290921660408301526001600160401b0316606090910152919050565b818103818111156107ea576107ea614e7b565b808201808211156107ea576107ea614e7b565b60ff60f81b8460f81b1681525f8351615493816001850160208801614387565b8351908301906154aa816001840160208801614387565b0160010195945050505050565b6001600160a01b03868116825285166020820152604081018490526060810183905260a0608082018190525f906154f0908301846143a9565b97965050505050505056fe93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4aea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2a68925cf5169f28586095d5b5b9933b3008f4c793a48be4f59b8b2bc62aa60a":"0x1","0x54cdd369e4e8a8515e52ca72ec816c2101831ad1f18bf44102ed171459c9b4f8":"0x2","0xa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb49":"0xffffffffffffffff000100010000000000000000000000000000000000000000","0xafa26c20e8b3d9a2853d642cfe1021dae26242ffedfac91c97aab212c1a4b93b":"0xffffffffffffffff000100010000000000000000000000000000000000000000","0xef5b11c47ebee44618abc22110e10e3b408ea5e799056d2b38461aa7b97c5a97":"0x1","0xfb9e8e321b8a5ec48f12a7b41f22c6e595d761285c9eb19d8dda7c99edf1b54f":"0x36574680000000000000000000000000000000000000000000000000000000a"}},"0x6e1eb616c7d69491f9a880f815ff5574768cba20":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b506004361061007a575f3560e01c806314ab90381161005857806314ab90381461010357806316a25cbd146101165780631896f70a146101625780635b0fc9c314610175575f80fd5b80630178b8bf1461007e57806302571be3146100c657806306ab5923146100ee575b5f80fd5b6100a961008c366004610403565b5f908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100a96100d4366004610403565b5f908152602081905260409020546001600160a01b031690565b6101016100fc366004610435565b610188565b005b610101610111366004610467565b610242565b610149610124366004610403565b5f90815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100bd565b6101016101703660046104a1565b6102e2565b6101016101833660046104a1565b610374565b5f8381526020819052604090205483906001600160a01b031633146101ab575f80fd5b60408051602080820187905281830186905282518083038401815260608301808552815191909201206001600160a01b0386169091529151859187917fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829181900360800190a35f90815260208190526040902080546001600160a01b0319166001600160a01b039390931692909217909155505050565b5f8281526020819052604090205482906001600160a01b03163314610265575f80fd5b60405167ffffffffffffffff8316815283907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a2505f91825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b5f8281526020819052604090205482906001600160a01b03163314610305575f80fd5b6040516001600160a01b038316815283907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a2505f9182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b5f8281526020819052604090205482906001600160a01b03163314610397575f80fd5b6040516001600160a01b038316815283907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a2505f9182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b5f60208284031215610413575f80fd5b5035919050565b80356001600160a01b0381168114610430575f80fd5b919050565b5f805f60608486031215610447575f80fd5b833592506020840135915061045e6040850161041a565b90509250925092565b5f8060408385031215610478575f80fd5b82359150602083013567ffffffffffffffff81168114610496575f80fd5b809150509250929050565b5f80604083850312156104b2575f80fd5b823591506104c26020840161041a565b9050925092905056fea164736f6c6343000818000a","storage":{"0x859ecef2e168dc10231b000bd53493b42bc9d944cac29d94582c1e1d43592131":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x7bb6cd9be29fab783c0b494a06fed8b2e2596b7a":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100ea5760003560e01c80636debcb8d1161008c578063b34f33c511610066578063b34f33c514610741578063d0778d6c14610814578063ef2c3088146108f2578063f5090c1e14610980576100ea565b80636debcb8d146105ca5780636fab95b3146106585780637b1039991461071d576100ea565b8063511f1112116100c8578063511f1112146103c557806361603dd91461044857806368b6154f146104bd5780636ccbae5f1461059b576100ea565b806307eca395146100ef578063280d9b051461021457806330135293146102f2575b600080fd5b610212600480360360a081101561010557600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561013457600080fd5b82018360208201111561014657600080fd5b803590602001918460018302840111600160201b8311171561016757600080fd5b919390929091602081019035600160201b81111561018457600080fd5b82018360208201111561019657600080fd5b803590602001918460018302840111600160201b831117156101b757600080fd5b919390929091602081019035600160201b8111156101d457600080fd5b8201836020820111156101e657600080fd5b803590602001918460018302840111600160201b8311171561020757600080fd5b509092509050610aae565b005b610212600480360360a081101561022a57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561026457600080fd5b82018360208201111561027657600080fd5b803590602001918460018302840111600160201b8311171561029757600080fd5b919390929091602081019035600160201b8111156102b457600080fd5b8201836020820111156102c657600080fd5b803590602001918460018302840111600160201b831117156102e757600080fd5b509092509050610c92565b6102126004803603608081101561030857600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561033757600080fd5b82018360208201111561034957600080fd5b803590602001918460018302840111600160201b8311171561036a57600080fd5b919390929091602081019035600160201b81111561038757600080fd5b82018360208201111561039957600080fd5b803590602001918460018302840111600160201b831117156103ba57600080fd5b509092509050610e3d565b610212600480360360608110156103db57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561040a57600080fd5b82018360208201111561041c57600080fd5b803590602001918460018302840111600160201b8311171561043d57600080fd5b509092509050610fcc565b6102126004803603604081101561045e57600080fd5b81359190810190604081016020820135600160201b81111561047f57600080fd5b82018360208201111561049157600080fd5b803590602001918460018302840111600160201b831117156104b257600080fd5b5090925090506110c9565b610212600480360360a08110156104d357600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561050d57600080fd5b82018360208201111561051f57600080fd5b803590602001918460018302840111600160201b8311171561054057600080fd5b919390929091602081019035600160201b81111561055d57600080fd5b82018360208201111561056f57600080fd5b803590602001918460018302840111600160201b8311171561059057600080fd5b5090925090506111ae565b6105b8600480360360208110156105b157600080fd5b50356113a8565b60408051918252519081900360200190f35b610212600480360360808110156105e057600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561061a57600080fd5b82018360208201111561062c57600080fd5b803590602001918460018302840111600160201b8311171561064d57600080fd5b5090925090506113ba565b6102126004803603606081101561066e57600080fd5b81359190810190604081016020820135600160201b81111561068f57600080fd5b8201836020820111156106a157600080fd5b803590602001918460018302840111600160201b831117156106c257600080fd5b919390929091602081019035600160201b8111156106df57600080fd5b8201836020820111156106f157600080fd5b803590602001918460018302840111600160201b8311171561071257600080fd5b5090925090506114d4565b610725611675565b604080516001600160a01b039092168252519081900360200190f35b6102126004803603608081101561075757600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561078657600080fd5b82018360208201111561079857600080fd5b803590602001918460018302840111600160201b831117156107b957600080fd5b919390929091602081019035600160201b8111156107d657600080fd5b8201836020820111156107e857600080fd5b803590602001918460018302840111600160201b8311171561080957600080fd5b509092509050611684565b610212600480360360a081101561082a57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561086457600080fd5b82018360208201111561087657600080fd5b803590602001918460018302840111600160201b8311171561089757600080fd5b919390929091602081019035600160201b8111156108b457600080fd5b8201836020820111156108c657600080fd5b803590602001918460018302840111600160201b831117156108e757600080fd5b5090925090506117de565b6102126004803603608081101561090857600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561094257600080fd5b82018360208201111561095457600080fd5b803590602001918460018302840111600160201b8311171561097557600080fd5b5090925090506119e4565b610212600480360360c081101561099657600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156109d057600080fd5b8201836020820111156109e257600080fd5b803590602001918460018302840111600160201b83111715610a0357600080fd5b919390929091602081019035600160201b811115610a2057600080fd5b820183602082011115610a3257600080fd5b803590602001918460018302840111600160201b83111715610a5357600080fd5b919390929091602081019035600160201b811115610a7057600080fd5b820183602082011115610a8257600080fd5b803590602001918460018302840111600160201b83111715610aa357600080fd5b509092509050611ad3565b610bb163ce9fb82b89898989898960405160240180876001600160a01b03166001600160a01b0316815260200186815260200180602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f820116905080830192505050985050505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208884848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b600154604051630119f80560e21b81526001600160a01b038a811660048301908152602483018b9052608060448401908152608484018a90529190931692630467e014928c928c928c928c928c928c92909190606481019060a401878780828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f82011690508083019250505098505050505050505050600060405180830381600087803b158015610c7057600080fd5b505af1158015610c84573d6000803e3d6000fd5b505050505050505050505050565b610d8363b88d4fde888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040516315eab15d60e21b81526001600160a01b03898116600483019081528982166024840152604483018990526080606484019081526084840188905291909316926357aac574928b928b928b928b928b929160a401848480828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b158015610e1c57600080fd5b505af1158015610e30573d6000803e3d6000fd5b5050505050505050505050565b610f09637c69eae28787878760405160240180856001600160a01b03166001600160a01b0316815260200184815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09d909d1b9c909c178c529351909a208a51918d01849004840282018401909a528b81528f985096508b95508a94508493505085019050838280828437600092019190915250611d5492505050565b600154604051630119f80560e21b81526001600160a01b038881166004830190815260248301899052608060448401908152608484018890529190931692630467e014928a928a928a928a9290606481019060a401858580828437600081840152601f19601f8201169050808301925050508381038252600081526020016020019650505050505050600060405180830381600087803b158015610fac57600080fd5b505af1158015610fc0573d6000803e3d6000fd5b50505050505050505050565b604080516001600160a01b038616602482015260448082018690528251808303909101815260649091018252602081810180516001600160e01b0316632392c18960e01b17815291519091208251601f85018390048302810183019093528383526110569290918691908690869081908401838280828437600092019190915250611d5492505050565b60015460408051631292e83560e11b81526001600160a01b0387811660048301526024820187905291519190921691632525d06a91604480830192600092919082900301818387803b1580156110ab57600080fd5b505af11580156110bf573d6000803e3d6000fd5b5050505050505050565b6040805160248082018690528251808303909101815260449091018252602081810180516001600160e01b0316630852cd8d60e31b17815291519091208251601f85018390048302810183019093528383526111449290918691908690869081908401838280828437600092019190915250611d5492505050565b6001546040805163e67ca8a360e01b81526004810186905290516001600160a01b039092169163e67ca8a39160248082019260009290919082900301818387803b15801561119157600080fd5b505af11580156111a5573d6000803e3d6000fd5b50505050505050565b61129f639e5be9a5888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b03909316926302759c37928b928b9286926368b62d32928d928d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561132757600080fd5b505afa15801561133b573d6000803e3d6000fd5b505050506040513d602081101561135157600080fd5b5051604080516001600160e01b031960e087901b1681526001600160a01b03948516600482015292909316602483015260448201529051606480830192600092919082900301818387803b158015610e1c57600080fd5b60009081526020819052604090205490565b604080516001600160a01b0380881660248301528616604482015260648082018690528251808303909101815260849091018252602081810180516001600160e01b0316632142170760e11b17815291519091208251601f850183900483028101830190935283835261144c9290918691908690869081908401838280828437600092019190915250611d5492505050565b600154604080516315eab15d60e21b81526001600160a01b0388811660048301528781166024830152604482018790526080606483015260006084830181905292519316926357aac5749260c48084019391929182900301818387803b1580156114b557600080fd5b505af11580156114c9573d6000803e3d6000fd5b505050505050505050565b611585635cbe11128686866040516024018084815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09c909c1b9b909b178b5293519099208951918c018490048402820184019099528a81528e975095508a9450899350839250508401838280828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b039093169263e67ca8a39284926368b62d32928b928b928b929190606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561160b57600080fd5b505afa15801561161f573d6000803e3d6000fd5b505050506040513d602081101561163557600080fd5b5051604080516001600160e01b031960e085901b168152600481019290925251602480830192600092919082900301818387803b1580156114b557600080fd5b6001546001600160a01b031690565b61175063d8d3cc6e8787878760405160240180856001600160a01b03166001600160a01b0316815260200184815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09d909d1b9c909c178c529351909a208a51918d01849004840282018401909a528b81528f985096508b95508a94508493505085019050838280828437600092019190915250611d5492505050565b60015460405163b546666960e01b81526001600160a01b03888116600483019081526024830189905260606044840190815260648401889052919093169263b5466669928a928a928a928a9290608401848480828437600081840152601f19601f82011690508083019250505095505050505050600060405180830381600087803b158015610fac57600080fd5b6118cf639d743989888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b03909316926357aac574928b928b9286926368b62d32928d928d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561195757600080fd5b505afa15801561196b573d6000803e3d6000fd5b505050506040513d602081101561198157600080fd5b5051604080516001600160e01b031960e087901b1681526001600160a01b039485166004820152929093166024830152604482015260806064820152600060848201819052915160c4808301939282900301818387803b158015610e1c57600080fd5b604080516001600160a01b0380881660248301528616604482015260648082018690528251808303909101815260849091018252602081810180516001600160e01b03166323b872dd60e01b17815291519091208251601f8501839004830281018301909352838352611a769290918691908690869081908401838280828437600092019190915250611d5492505050565b600154604080516302759c3760e01b81526001600160a01b038881166004830152878116602483015260448201879052915191909216916302759c3791606480830192600092919082900301818387803b1580156114b557600080fd5b611bf063c29b52f98a8a8a8a8a8a8a60405160240180886001600160a01b03166001600160a01b03168152602001876001600160a01b03166001600160a01b0316815260200186815260200180602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f82011690508083019250505099505050505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208884848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b8152600481018a815260248201928352604482018990526001600160a01b03909316926357aac574928d928d9286926368b62d32928f928f928f92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b158015611c7857600080fd5b505afa158015611c8c573d6000803e3d6000fd5b505050506040513d6020811015611ca257600080fd5b50516040516001600160e01b031960e086901b1681526001600160a01b0380851660048301908152908416602483015260448201839052608060648301908152608483018b90528b928b92919060a401848480828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b158015611d3157600080fd5b505af1158015611d45573d6000803e3d6000fd5b50505050505050505050505050565b6000828152602081815260408083205481518084018890523060601b81840152605480820183905283518083039091018152607490910190925281519190920120909190611db3908490611da790611ea9565b9063ffffffff611efa16565b90506001600160a01b03811615801590611e4957506001546040805163430c208160e01b81526001600160a01b038481166004830152602482018890529151919092169163430c2081916044808301926020929190829003018186803b158015611e1c57600080fd5b505afa158015611e30573d6000803e3d6000fd5b505050506040513d6020811015611e4657600080fd5b50515b611e8e576040805162461bcd60e51b8152602060048201526011602482015270494e56414c49445f5349474e415455524560781b604482015290519081900360640190fd5b50505060009081526020819052604090208054600101905550565b604080517f19457468657265756d205369676e6564204d6573736167653a0a333200000000602080830191909152603c8083019490945282518083039094018452605c909101909152815191012090565b60008151604114611f0d57506000611fe3565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0821115611f535760009350505050611fe3565b8060ff16601b14158015611f6b57508060ff16601c14155b15611f7c5760009350505050611fe3565b6040805160008152602080820180845289905260ff8416828401526060820186905260808201859052915160019260a0808401939192601f1981019281900390910190855afa158015611fd3573d6000803e3d6000fd5b5050506020604051035193505050505b9291505056fea265627a7a7231582014816bfd0c1519ce8c4cf272eb0526ffdba3abef0df7f17deb0da40bd8abb77f64736f6c634300050c0032","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533"}},"0x7c3c91245769c8b7450ad522792dec4bd4bf797f":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b506004361061003f575f3560e01c80631bf7e13e146100435780636ccbae5f1461006c578063a424740014610099575b5f80fd5b610056610051366004610749565b6100bc565b604051610063919061082c565b60405180910390f35b61008b61007a36600461083e565b5f9081526001602052604090205490565b604051908152602001610063565b6100ac6100a7366004610749565b6101d6565b6040519015158152602001610063565b60605f5a90506100cd8585856101d6565b6101315760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e61676572466f727761726465723a205349474e415455604482015269149157d253959053125160b21b60648201526084015b60405180910390fd5b6101cb6101416020870187610870565b5f546001600160a01b031660408801358461015f60608b018b610889565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f9201919091525061023292505050565b9150505b9392505050565b5f61022a6101e38561093a565b5f54604080516020601f88018190048102820181019092528681526001600160a01b03909216919087908790819084018382808284375f9201919091525061030e92505050565b949350505050565b606061023d85610453565b5f80876001600160a01b0316866102568b8a898961047e565b60405161026391906109f5565b5f604051808303815f8787f1925050503d805f811461029d576040519150601f19603f3d011682016040523d82523d5f602084013e6102a2565b606091505b5090925090506102b3603f87610a10565b5a116102c1576102c1610a2f565b61030182826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506104ae565b9998505050505050505050565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015610352573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103769190610a43565b90505f6104238660600151805190602001208688602001516040516020016103c39392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561044957508551610449906001600160a01b031682866104e7565b9695505050505050565b5f8181526001602081905260409091205461046d91610a5a565b5f9182526001602052604090912055565b606082858560405160200161049593929190610a7f565b6040516020818303038152906040529050949350505050565b606083156104bd5750816101cf565b8251156104cd5782518084602001fd5b8160405162461bcd60e51b8152600401610128919061082c565b5f805f6104f48585610622565b90925090505f81600481111561050c5761050c610abd565b14801561052a5750856001600160a01b0316826001600160a01b0316145b1561053a576001925050506101cf565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401610561929190610ad1565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161059f91906109f5565b5f60405180830381855afa9150503d805f81146105d7576040519150601f19603f3d011682016040523d82523d5f602084013e6105dc565b606091505b50915091508180156105ef575080516020145b801561061657508051630b135d3f60e11b906106149083016020908101908401610a43565b145b98975050505050505050565b5f808251604103610656576020830151604084015160608501515f1a61064a87828585610664565b9450945050505061065d565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561069957505f90506003610740565b8460ff16601b141580156106b157508460ff16601c14155b156106c157505f90506004610740565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610712573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b03811661073a575f60019250925050610740565b91505f90505b94509492505050565b5f805f6040848603121561075b575f80fd5b833567ffffffffffffffff80821115610772575f80fd5b9085019060808288031215610785575f80fd5b9093506020850135908082111561079a575f80fd5b818601915086601f8301126107ad575f80fd5b8135818111156107bb575f80fd5b8760208285010111156107cc575f80fd5b6020830194508093505050509250925092565b5f5b838110156107f95781810151838201526020016107e1565b50505f910152565b5f81518084526108188160208601602086016107df565b601f01601f19169290920160200192915050565b602081525f6101cf6020830184610801565b5f6020828403121561084e575f80fd5b5035919050565b80356001600160a01b038116811461086b575f80fd5b919050565b5f60208284031215610880575f80fd5b6101cf82610855565b5f808335601e1984360301811261089e575f80fd5b83018035915067ffffffffffffffff8211156108b8575f80fd5b60200191503681900382131561065d575f80fd5b634e487b7160e01b5f52604160045260245ffd5b6040516080810167ffffffffffffffff81118282101715610903576109036108cc565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610932576109326108cc565b604052919050565b5f6080823603121561094a575f80fd5b6109526108e0565b61095b83610855565b81526020808401358183015260408401356040830152606084013567ffffffffffffffff8082111561098b575f80fd5b9085019036601f83011261099d575f80fd5b8135818111156109af576109af6108cc565b6109c1601f8201601f19168501610909565b915080825236848285010111156109d6575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b5f8251610a068184602087016107df565b9190910192915050565b5f82610a2a57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b5f60208284031215610a53575f80fd5b5051919050565b80820180821115610a7957634e487b7160e01b5f52601160045260245ffd5b92915050565b5f8451610a908184602089016107df565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f61022a604083018461080156fea164736f6c6343000818000a","storage":{"0x0":"0x39a27956b78d00a4e00ea8833ff0947410a2933f"}},"0x8861cdfa38838531275ce12f9e795c3b9ff29cbe":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x936188f2c3c8e8c95e425b6fe41c2ac9e701585e":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x94f57ed7e9af03a10e8eb23ce1b3c7914a182b0f":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x95f29431aeb52c0d5dbeeec36010b8e2ca69cb3d":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x9b2565a3545a1312bdcb6e7148a7f7cae8c2706b":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c806373cc48a61161008857806398d35f201161006357806398d35f2014610215578063bd7ed31a1461021d578063c327deef14610245578063d7b82ebe1461026d575f80fd5b806373cc48a6146101af5780638438dc04146101ef5780638da5cb5b14610202575f80fd5b806313af4035116100c357806313af40351461015657806328e7677d146101695780632c095cbb1461017c578063435cc1621461018f575f80fd5b8063020ed8d3146100e9578063087991bc146100fe5780630b1a249514610143575b5f80fd5b6100fc6100f73660046122ff565b610280565b005b61011161010c36600461238a565b610300565b6040805163ffffffff94851681529390921660208401526001600160601b031916908201526060015b60405180910390f35b6100fc610151366004612510565b61036c565b6100fc6101643660046125c6565b6104da565b6100fc6101773660046122ff565b610512565b6100fc61018a3660046125e1565b61058a565b6101a261019d366004612674565b610656565b60405161013a919061278c565b6101d76101bd36600461279e565b60046020525f90815260409020546001600160a01b031681565b6040516001600160a01b03909116815260200161013a565b6100fc6101fd3660046122ff565b6106d2565b6001546101d7906001600160a01b031681565b6101a261074a565b6101d761022b36600461279e565b60056020525f90815260409020546001600160a01b031681565b6101d761025336600461279e565b60036020525f90815260409020546001600160a01b031681565b6101a261027b3660046127b7565b6107d5565b6001546001600160a01b03163314610296575f80fd5b60ff82165f8181526003602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527ff73c3c226af96b7f1ba666a21b3ceaf2be3ee6a365e3178fd9cd1eaae0075aa891015b60405180910390a15050565b5f805f8060025f8787604051610317929190612817565b604080519182900390912082526020808301939093529081015f90812061ffff8b16825290925290205463ffffffff80821695506401000000008204169350600160401b900460601b91505093509350939050565b83516020808601919091205f90815260028252604080822061ffff891683529092529081205463ffffffff16906103a385846107ea565b90506103b0818784610889565b6103b8612239565b845151156103d7576103ca85856107ea565b90506103d7818885610889565b5f6103e1836108cc565b602081015190915060fe16156103f5575f80fd5b61040081602761092a565b158015610425575061041381600261092a565b1580610425575061042581600661092a565b61042d575f80fd5b61043e89898561012001518461093a565b156104795787516020808a01919091205f90815260028252604080822061ffff8d1683529092522080546001600160e01b03191690556104cf565b6104988884610120015183856101200151610493876108cc565b610968565b156100e55787516020808a01919091205f90815260028252604080822061ffff8d1683529092522080546001600160e01b03191690555b505050505050505050565b6001546001600160a01b031633146104f0575f80fd5b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6001546001600160a01b03163314610528575f80fd5b60ff82165f8181526004602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527f2fcc274c3b72dd483ab201bfa87295e3817e8b9b10693219873b722ca1af00c791016102f4565b610592612239565b61059c83836107ea565b805190915061ffff16602f146105b0575f80fd5b60a081015184516020808701919091205f90815260028252604080822061ffff8a16835290925220546105e9919063ffffffff16610a7c565b6105f1575f80fd5b5f6105fb82610a94565b9050805151602082015110156100e55761061c818361012001518789610aab565b505082516020808501919091205f90815260028252604080822061ffff881683529092522080546001600160e01b03191690555b50505050565b60605f83838080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201829052509394505050505b85518110156106c7576106bd8682815181106106af576106af612826565b602002602001015183610c4a565b9150600101610691565b5090505b9392505050565b6001546001600160a01b031633146106e8575f80fd5b60ff82165f8181526005602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527fc7eec866a7a1386188cc3ca20ffea75b71bd3e90a60b6791b1d3f0971145118d91016102f4565b5f80546107569061283a565b80601f01602080910402602001604051908101604052809291908181526020018280546107829061283a565b80156107cd5780601f106107a4576101008083540402835291602001916107cd565b820191905f5260205f20905b8154815290600101906020018083116107b057829003601f168201915b505050505081565b60606107e18383610c4a565b90505b92915050565b6107f2612239565b82516107fd90610dc6565b905061080d8160e0015183610ebf565b610815575f80fd5b5f61082382835f0151610f25565b604083015190915060ff16610838825f610fcc565b14610841575f80fd5b610120820181905260808201516108589042610a7c565b610860575f80fd5b61086e428360a00151610a7c565b610876575f80fd5b61088281838686611026565b5092915050565b6108978360a0015182610a7c565b61089f575f80fd5b825161ffff166032146108b0575f80fd5b6108bf83610120015183611106565b6108c7575f80fd5b505050565b6040805160c0810182525f8082526020820181905291810182905260608082018190526080820183905260a08201529061090583610a94565b60a081015160c08201519192506106cb91610921908290612880565b83519190611172565b5f6107e18360a001515f846112b4565b5f6109468284866113c1565b1561095d57610955828661092a565b159050610960565b505f5b949350505050565b60208101515f9060fe161561097b575f80fd5b5f610985866113e6565b90505f610991856113e6565b90505f8061099f8a82611401565b6109aa906001612893565b60ff1690505b8951811015610a6b57836109dc896109d784858f516109cf9190612880565b8f9190611424565b6114a4565b03610a3f575f6109f7876109d785868f516109cf9190612880565b90508660800151841015610a23578381118015610a175750866080015181105b95505050505050610a73565b83811180610a1757508660800151811095505050505050610a73565b905080610a4c8a82611401565b610a57906001612893565b610a649060ff16826128ac565b90506109b0565b505f93505050505b95945050505050565b5f80610a8883856128bf565b60030b12159392505050565b610a9c61228e565b6107e48261010001515f61152d565b60a084015184515f90610abe9083611548565b90505f8660a001518760c00151610ad59190612880565b9050818111610ae2575f80fd5b5f610aed868861159f565b9050805f03610b1a57610b0c610b0384866128ac565b895190876112b4565b15610b15575f80fd5b610b5b565b87515f90610b29908686611424565b90505f8213610b36575f80fd5b5f610b41898361159f565b12156104cf575f610b52888361159f565b126104cf575f80fd5b5050505050505050565b60c08101516020820181905281515111610b7c5750565b5f610b8e825f01518360200151611548565b8260200151610b9d91906128ac565b8251909150610bac90826116ec565b61ffff166040830152610bc06002826128ac565b8251909150610bcf90826116ec565b61ffff166060830152610be36002826128ac565b8251909150610bf29082611712565b63ffffffff166080830152610c086004826128ac565b82519091505f90610c1990836116ec565b61ffff169050610c2a6002836128ac565b60a084018190529150610c3d81836128ac565b60c0909301929092525050565b6060610c54612239565b610c5e84846107ea565b61012081015180516020918201205f908152600282526040808220845161ffff16835290925220805491925090600160401b900460601b6001600160601b03191615610cc35760a08201518154610cbb919063ffffffff16610a7c565b610cc3575f80fd5b604080516060808201835260a085015163ffffffff9081168352608086015181166020808501918252610100880180518051908301206001600160601b0319168688019081526101208a0180518051908501205f908152600285528981208c5161ffff16825290945292889020965187549451915190961c600160401b0268010000000000000000600160e01b03199186166401000000000267ffffffffffffffff19909516969095169590951792909217939093169190911790925551905191517f55ced933cdd5a34dd03eb5d4bef19ec6ebb251dcd7a988eee0c1b9a13baaa88b92610db192916128e6565b60405180910390a15061010001519392505050565b610dce612239565b610dd8825f6116ec565b61ffff168152610de9826002611401565b60ff166020820152610dfc826003611401565b60ff166040820152610e0f826004611712565b63ffffffff9081166060830152610e2b90839060089061171216565b63ffffffff9081166080830152610e47908390600c9061171216565b63ffffffff90811660a0830152610e639083906010906116ec16565b61ffff1660c0820152610e7782601261173a565b60e0820181905251610eb490610e8e9060126128ac565b8260e001515160128551610ea29190612880565b610eac9190612880565b849190611424565b610100820152919050565b5f80610ed5610ece8483611548565b84906116ec565b83516020808601919091208651878301205f90815260028352604080822061ffff90951682529390925291902054600160401b900460601b6001600160601b031990811691161491505092915050565b60605f610f3184610a94565b90505b8051516020820151101561088257606081015161ffff16600114610f56575f80fd5b81515f03610f6e57610f6781611754565b9150610fa7565b60208101518151610f7e91611548565b825114610f89575f80fd5b805160208201518351610f9f9285925f92611775565b610fa7575f80fd5b8261ffff16816040015161ffff1614610fbe575f80fd5b610fc781610b65565b610f34565b5f805b83518310610fdf57610fdf61290a565b5f610fea8585611401565b60ff169050610ffa8160016128ac565b61100490856128ac565b9350805f0361101357506107e1565b61101e6001836128ac565b915050610fcf565b83518360e00151511115611038575f80fd5b61105c5f858560e0015151875161104f9190612880565b60e0870151929190611797565b611064575f80fd5b5f61106f828261152d565b9050602b61ffff16816040015161ffff160361109d576110908484836117cb565b611098575f80fd5b6110ff565b603061ffff16816040015161ffff16036110bc5761109084848361185f565b60405162461bcd60e51b8152602060048201526014602482015273139bc81d985b1a59081c1c9bdbd988199bdd5b9960621b604482015260640160405180910390fd5b5050505050565b5f806111128482611401565b61111d906001612893565b60ff1690505f5b835181101561095d5761113984828785611797565b15611149576001925050506107e4565b6111538482611401565b61115e906001612893565b61116b9060ff16826128ac565b9050611124565b6040805160c0810182525f8082526020820181905291810182905260608082018190526080820183905260a0820152906111ac83856128ac565b90506111c26111bb5f866128ac565b8690611401565b60ff1682526111d56111bb6001866128ac565b60ff1660208301526111f26111eb6002866128ac565b86906116ec565b61ffff1660408301525f61121161120a6004876128ac565b8790611401565b905061121e6005866128ac565b945061122e868660ff8416611424565b606084015261124060ff8216866128ac565b94505f61124d8787611401565b905060208160ff16111561125f575f80fd5b61126a6001876128ac565b955061127a878760ff8416611900565b608085015261128c60ff8216876128ac565b95506112a48661129c8186612880565b899190611424565b60a0850152509195945050505050565b5f60ff600883811c82169183916112cc918616612932565b90505f6112dd600780871690612952565b600160ff919091161b9050855b87518110156113b4575f6112fe8983611401565b90505f61131661130f8460016128ac565b8b90611401565b90508160ff168660ff161015611334575f96505050505050506106cb565b8160ff168660ff1603611393578460ff168160ff161161135c575f96505050505050506106cb565b8361137f61136d60ff8816866128ac565b6113789060026128ac565b8c90611401565b1660ff165f141596505050505050506106cb565b61139e816002612893565b6113ab9060ff16846128ac565b925050506112ea565b505f979650505050505050565b5f806113cd85846114a4565b90505f6113d9856113e6565b9190911495945050505050565b5f6107e460016113f68484611401565b84919060ff1661193d565b5f82828151811061141457611414612826565b016020015160f81c905092915050565b825160609061143383856128ac565b111561143d575f80fd5b5f8267ffffffffffffffff811115611457576114576123d9565b6040519080825280601f01601f191660200182016040528015611481576020820181803683370190505b50905060208082019086860101611499828287611b43565b509095945050505050565b815160ff165f9081526005602052604080822054606085015182860151925163347ced5960e11b81526001600160a01b03909216926368f9dab2926114ee9291879160040161296b565b602060405180830381865afa158015611509573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107e191906129a4565b61153561228e565b82815260c081018290526107e481610b65565b5f815b8351811061155b5761155b61290a565b5f6115668583611401565b60ff1690506115768160016128ac565b61158090836128ac565b9150805f0361158f5750611595565b5061154b565b6109608382612880565b5f6115aa8383611b98565b156115b657505f6107e4565b5f805f805f6115c5885f610fcc565b90505f6115d2885f610fcc565b90505b808211156115fe578593506115ea8987611bb3565b9550816115f6816129bb565b9250506115d5565b81811115611627578492506116138886611bb3565b94508061161f816129bb565b9150506115fe565b5f8211801561163f575061163d89878a88611797565b155b15611674578593506116518987611bb3565b95508492506116608886611bb3565b945061166d600183612880565b9150611627565b855f0361168a575f1996505050505050506107e4565b845f036116a057600196505050505050506107e4565b6116df6116ae8560016128ac565b6116b88b87611401565b60ff168a6116c78760016128ac565b6116d18d89611401565b8e949392919060ff16611bd6565b9998505050505050505050565b81515f906116fb8360026128ac565b1115611705575f80fd5b50016002015161ffff1690565b81515f906117218360046128ac565b111561172b575f80fd5b50016004015163ffffffff1690565b60605f6117478484611548565b9050610960848483611424565b602081015181516060916107e49161176c9082611548565b84519190611424565b5f611781848484611cc6565b61178c878785611cc6565b149695505050505050565b5f6117af83838486516117aa9190612880565b611cc6565b6117c186868789516117aa9190612880565b1495945050505050565b5f806117d685610a94565b90505b8051516020820151101561095d57604081015161ffff166030146117fb575f80fd5b5f61180582611ce8565b90505f61181e5f835184611d049092919063ffffffff16565b905061182c81838989611da0565b1561184f5761184561183d84611754565b868385611e9b565b93505050506106cb565b505061185a81610b65565b6117d9565b5f6118778460e0015161187184611754565b90611b98565b61187f575f80fd5b815151602083015110156118f75761189e8460e0015161187184611754565b6118a6575f80fd5b5f6118b083611ce8565b90505f6118c95f835184611d049092919063ffffffff16565b90506118d781838888611da0565b156118e7576001925050506106cb565b50506118f282610b65565b61187f565b505f9392505050565b5f602082111561190e575f80fd5b835161191a83856128ac565b1115611924575f80fd5b506020919092018101519190036101000a5f1901191690565b5f603482111561194b575f80fd5b5f80805b84811015611a29575f8761196383896128ac565b8151811061197357611973612826565b01602001516001600160f81b0319169050600360fc1b81108015906119a65750603d60f91b6001600160f81b0319821611155b6119ae575f80fd5b604051806080016040528060478152602001612b5c604791396119d6603060f884901c612880565b815181106119e6576119e6612826565b0160209081015160f81c93508311156119fd575f80fd5b611a08600187612880565b8203611a145750611a29565b5060059290921b60ff8216179160010161194f565b505f611a368560056129d0565b9050611a436008866129e7565b5f03611a5a578160ff16600584901b179250611b29565b611a656008866129e7565b600203611a935760028260ff16901c60ff16600384901b179250600281611a8c9190612880565b9050611b29565b611a9e6008866129e7565b600403611ac55760048260ff16901c60ff16600184901b179250600481611a8c9190612880565b611ad06008866129e7565b600503611af75760018260ff16901c60ff16600484901b179250600181611a8c9190612880565b611b026008866129e7565b6007036100e55760038260ff16901c60ff16600284901b179250600381611a8c9190612880565b611b3581610100612880565b9290921b9695505050505050565b60208110611b7b5781518352611b5a6020846128ac565b9250611b676020836128ac565b9150611b74602082612880565b9050611b43565b905182516020929092036101000a5f190180199091169116179052565b5f815183511480156107e157506107e1835f845f8751611775565b5f611bbe8383611401565b60ff16611bcc8360016128ac565b6107e191906128ac565b5f8480831015611be35750815b6020878901810190858701015f5b83811015611cab5782518251808214611c7b575f6020871115611c1657505f19611c52565b600184611c24896020612880565b611c2e91906128ac565b611c399060086129d0565b611c44906002612ada565b611c4e9190612880565b1990505b5f611c61838316858416612ae5565b90508015611c78579750611cbc9650505050505050565b50505b611c866020866128ac565b9450611c936020856128ac565b93505050602081611ca491906128ac565b9050611bf1565b50611cb68589612ae5565b93505050505b9695505050505050565b82515f90611cd483856128ac565b1115611cde575f80fd5b5091016020012090565b60a081015160c08201516060916107e49161176c908290612880565b604080516080810182525f8082526020820181905291810191909152606080820152611d3a611d335f856128ac565b85906116ec565b61ffff168152611d55611d4e6002856128ac565b8590611401565b60ff166020820152611d6b611d4e6003856128ac565b60ff166040820152611d94611d816004856128ac565b611d8c600485612880565b869190611424565b60608201529392505050565b5f846020015160ff16600314611db757505f610960565b826020015160ff16856040015160ff1614611dd357505f610960565b5f611ddd85611f96565b90508360c0015161ffff168161ffff1614611dfb575f915050610960565b8551610100165f03611e10575f915050610960565b60408087015160ff165f908152600360209081529082902054855191860151925163de8f50a160e01b81526001600160a01b039091169263de8f50a192611e5c928a9290600401612b04565b602060405180830381865afa158015611e77573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611cbc9190612b3c565b5f80611ea683611f96565b90505b84515160208601511015611f8b5760a085015160c08601515f91611edb91611ed2908290612880565b88519190611d04565b90508161ffff16815f015161ffff1614611ef55750611f7d565b846040015160ff16816020015160ff1614611f105750611f7d565b60408051808201909152606081525f6020820152611f3c85518951611f3591906128ac565b8290611ff7565b50611f47818961205a565b50611f52818661205a565b50611f698260400151825f0151846060015161207f565b15611f7a5760019350505050610960565b50505b611f8685610b65565b611ea9565b505f95945050505050565b5f805f5b8351811015611fe8576001811615611fbe57611fb68482611401565b60ff16611fd0565b6008611fca8583611401565b60ff16901b5b611fde9061ffff16836128ac565b9150600101611f9a565b506106cb601082901c826128ac565b60408051808201909152606081525f60208201526120166020836129e7565b1561203e576120266020836129e7565b612031906020612880565b61203b90836128ac565b91505b506020828101829052604080518085525f815290920101905290565b60408051808201909152606081525f60208201526107e183845f015151848551612126565b60ff83165f908152600460205260408120546001600160a01b03166120a557505f6106cb565b60ff84165f90815260046020819052604091829020549151637bf41d7760e11b81526001600160a01b039092169163f7e83aee916120e79187918791016128e6565b602060405180830381865afa158015612102573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109609190612b3c565b60408051808201909152606081525f60208201528251821115612147575f80fd5b602085015161215683866128ac565b111561218957612189856121798760200151878661217491906128ac565b61220c565b6121849060026129d0565b612222565b5f808651805187602083010193508088870111156121a75787860182525b505050602084015b602084106121e757805182526121c66020836128ac565b91506121d36020826128ac565b90506121e0602085612880565b93506121af565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b5f8183111561221c5750816107e4565b50919050565b815161222e8383611ff7565b50610650838261205a565b60408051610140810182525f8082526020820181905291810182905260608082018390526080820183905260a0820183905260c082019290925260e08101829052610100810182905261012081019190915290565b6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b803560ff811681146122e3575f80fd5b919050565b6001600160a01b03811681146122fc575f80fd5b50565b5f8060408385031215612310575f80fd5b612319836122d3565b91506020830135612329816122e8565b809150509250929050565b803561ffff811681146122e3575f80fd5b5f8083601f840112612355575f80fd5b50813567ffffffffffffffff81111561236c575f80fd5b602083019150836020828501011115612383575f80fd5b9250929050565b5f805f6040848603121561239c575f80fd5b6123a584612334565b9250602084013567ffffffffffffffff8111156123c0575f80fd5b6123cc86828701612345565b9497909650939450505050565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff81118282101715612416576124166123d9565b604052919050565b5f82601f83011261242d575f80fd5b813567ffffffffffffffff811115612447576124476123d9565b61245a601f8201601f19166020016123ed565b81815284602083860101111561246e575f80fd5b816020850160208301375f918101602001919091529392505050565b5f6040828403121561249a575f80fd5b6040516040810167ffffffffffffffff82821081831117156124be576124be6123d9565b8160405282935084359150808211156124d5575f80fd5b6124e18683870161241e565b835260208501359150808211156124f6575f80fd5b506125038582860161241e565b6020830152505092915050565b5f805f805f60a08688031215612524575f80fd5b61252d86612334565b9450602086013567ffffffffffffffff80821115612549575f80fd5b61255589838a0161241e565b9550604088013591508082111561256a575f80fd5b61257689838a0161248a565b9450606088013591508082111561258b575f80fd5b61259789838a0161248a565b935060808801359150808211156125ac575f80fd5b506125b98882890161241e565b9150509295509295909350565b5f602082840312156125d6575f80fd5b81356107e1816122e8565b5f805f80608085870312156125f4575f80fd5b6125fd85612334565b9350602085013567ffffffffffffffff80821115612619575f80fd5b6126258883890161241e565b9450604087013591508082111561263a575f80fd5b6126468883890161248a565b9350606087013591508082111561265b575f80fd5b506126688782880161241e565b91505092959194509250565b5f805f60408486031215612686575f80fd5b833567ffffffffffffffff8082111561269d575f80fd5b818601915086601f8301126126b0575f80fd5b81356020828211156126c4576126c46123d9565b8160051b6126d38282016123ed565b928352848101820192828101908b8511156126ec575f80fd5b83870192505b8483101561272657823586811115612708575f80fd5b6127168d86838b010161248a565b83525091830191908301906126f2565b985050508701359250508082111561273c575f80fd5b506123cc86828701612345565b5f81518084525f5b8181101561276d57602081850181015186830182015201612751565b505f602082860101526020601f19601f83011685010191505092915050565b602081525f6107e16020830184612749565b5f602082840312156127ae575f80fd5b6107e1826122d3565b5f80604083850312156127c8575f80fd5b823567ffffffffffffffff808211156127df575f80fd5b6127eb8683870161248a565b93506020850135915080821115612800575f80fd5b5061280d8582860161241e565b9150509250929050565b818382375f9101908152919050565b634e487b7160e01b5f52603260045260245ffd5b600181811c9082168061284e57607f821691505b60208210810361221c57634e487b7160e01b5f52602260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b818103818111156107e4576107e461286c565b60ff81811683821601908111156107e4576107e461286c565b808201808211156107e4576107e461286c565b600382810b9082900b03637fffffff198112637fffffff821317156107e4576107e461286c565b604081525f6128f86040830185612749565b8281036020840152610a738185612749565b634e487b7160e01b5f52600160045260245ffd5b634e487b7160e01b5f52601260045260245ffd5b5f61ffff808416806129465761294661291e565b92169190910492915050565b60ff82811682821603908111156107e4576107e461286c565b606081525f61297d6060830186612749565b828103602084015261298f8186612749565b91505061ffff83166040830152949350505050565b5f602082840312156129b4575f80fd5b5051919050565b5f816129c9576129c961286c565b505f190190565b80820281158282048414176107e4576107e461286c565b5f826129f5576129f561291e565b500690565b600181815b80851115612a3457815f1904821115612a1a57612a1a61286c565b80851615612a2757918102915b93841c93908002906129ff565b509250929050565b5f82612a4a575060016107e4565b81612a5657505f6107e4565b8160018114612a6c5760028114612a7657612a92565b60019150506107e4565b60ff841115612a8757612a8761286c565b50506001821b6107e4565b5060208310610133831016604e8410600b8410161715612ab5575081810a6107e4565b612abf83836129fa565b805f1904821115612ad257612ad261286c565b029392505050565b5f6107e18383612a3c565b8181035f8312801583831316838312821617156108825761088261286c565b606081525f612b166060830186612749565b8281036020840152612b288186612749565b90508281036040840152611cbc8185612749565b5f60208284031215612b4c575f80fd5b815180151581146107e1575f80fdfe00010203040506070809ffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fffffffffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fa164736f6c6343000818000a","storage":{"0x0":"0xbd","0x1":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1471eb6eb2c5e789fc3de43f8ce62938c7d1836ec861730447e2ada8fd81017b":"0x17cda4e23f7237277952e075b1c48467aabfacc0","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563":"0x2b000100000e1000244a5c080249aac11d7b6f6446702e54a1607371607a","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e564":"0x1a41855200fd2ce1cdde32f24e8fb500002b000100000e1000244f660802e06d","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e565":"0x44b80b8f1d39a95c0b0d7c65d08458e880409bbc683457104237c7f8ec8d0000","0x3617319a054d772f909f7c479a2cebe5066e836a939412e32403c99029b92eff":"0x5155f5627bdf9795b3dbb8887001ada1eeba93f2","0x85aaa47b6dc46495bb8824fad4583769726fea36efd831a35556690b830a8fbe":"0x6e2822b8856749ed179c77140dbc5f5a27410a4","0x91da3fd0782e51c6b3986e9e672fd566868e71f3dbc2d6c2cd6fbb3e361af2a7":"0x49da8861c65460639925febe1fb4b5b59b443082","0x95c6356c1b7a542b884d2484ef785c9c7224e77e1016c20007bddc15c23b452f":"0x3f9151d3fd1a82dcc5091909589900fd60ee767ee090bba000000000","0xabd6e7cb50984ff9c2f3e18a2660c3353dadf4e3291deeb275dae2cd1e44fe05":"0x458f653495fb8d9bd0e7df468c2bf76d26c7bd9"}},"0x9dc64b2558b458a15c7f01c192d874ef460f0a29":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x9df67c91f1bfcb4d966cf764e9218685e7c59e8a":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101d1575f3560e01c80638b95dd71116100fe578063c86902331161009e578063e32954eb1161006e578063e32954eb146104f2578063e59d895d14610505578063e985e9c514610518578063f1cb7e0614610553575f80fd5b8063c869023314610435578063ce3decdc1461048c578063d5fa2b001461049f578063d700ff33146104b2575f80fd5b8063a8fa5682116100d9578063a8fa5682146103ac578063a9784b3e146103bf578063ac9650d814610402578063bc1c58d114610422575f80fd5b80638b95dd7114610373578063a22cb46514610386578063a4b91a0114610399575f80fd5b80633603d758116101745780635c98042b116101445780635c98042b14610327578063623195b01461033a578063691f34311461034d5780637737221314610360575f80fd5b80633603d758146102975780633b3b57de146102aa5780634cbf6ba4146102bd57806359d1d43c14610307575f80fd5b8063124a319c116101af578063124a319c146102255780632203ab561461025057806329cd62ea14610271578063304e6ade14610284575f80fd5b806301ffc9a7146101d55780630af179d7146101fd57806310f13a8c14610212575b5f80fd5b6101e86101e3366004612267565b610566565b60405190151581526020015b60405180910390f35b61021061020b3660046122bd565b610576565b005b610210610220366004612304565b610778565b610238610233366004612377565b610842565b6040516001600160a01b0390911681526020016101f4565b61026361025e3660046123a1565b610a87565b6040516101f492919061240e565b61021061027f366004612426565b610bb5565b6102106102923660046122bd565b610c4d565b6102106102a536600461244f565b610cc6565b6102386102b836600461244f565b610d64565b6101e86102cb3660046123a1565b5f82815260208181526040808320546001600160401b031683526006825280832094835293815283822092825291909152205461ffff16151590565b61031a6103153660046122bd565b610d93565b6040516101f49190612466565b61031a61033536600461244f565b610e6f565b610210610348366004612478565b610f2a565b61031a61035b36600461244f565b610fc2565b61021061036e3660046122bd565b610ffa565b6102106103813660046124da565b611073565b6102106103943660046125b9565b611150565b6102106103a73660046125e3565b61122a565b61031a6103ba36600461261e565b6112f6565b6101e86103cd36600461265a565b6001600160a01b039283165f908152600c60209081526040808320948352938152838220929094168152925290205460ff1690565b6104156104103660046126ce565b611342565b6040516101f4919061270c565b61031a61043036600461244f565b61134f565b61047761044336600461244f565b5f81815260208181526040808320546001600160401b03168352600982528083209383529290522080546001909101549091565b604080519283526020830191909152016101f4565b61021061049a3660046122bd565b611387565b6102106104ad36600461276e565b6114c3565b6104da6104c036600461244f565b5f602081905290815260409020546001600160401b031681565b6040516001600160401b0390911681526020016101f4565b61041561050036600461279c565b6114e9565b6102106105133660046127d6565b6114fe565b6101e8610526366004612808565b6001600160a01b039182165f908152600b6020908152604080832093909416825291909152205460ff1690565b61031a6105613660046123a1565b6115a2565b5f61057082611666565b92915050565b826105808161168a565b610588575f80fd5b5f84815260208181526040808320548151601f87018490048402810184019092528582528392606092839285926001600160401b039091169183916105eb9183918d908d90819084018382808284375f9201919091525092939250506118b79050565b90505b80515160208201511015610712578661ffff165f03610652578060400151965061061781611912565b94508460405160200161062a9190612834565b60405160208183030381529060405280519060200120925061064b81611933565b9350610704565b5f61065c82611912565b9050816040015161ffff168861ffff16141580610680575061067e868261194f565b155b15610702576106db8c878a8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250505060208801518d91506106d2908290612863565b8b51158a61196a565b8160400151975081602001519650809550858051906020012093506106ff82611933565b94505b505b61070d81611bc9565b6105ee565b5083511561076c5761076c8a85888c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c925061076391508290508f612863565b8951158861196a565b50505050505050505050565b846107828161168a565b61078a575f80fd5b5f86815260208181526040808320546001600160401b03168352600a8252808320898452909152908190209051849184916107c89089908990612876565b908152602001604051809103902091826107e3929190612901565b5084846040516107f4929190612876565b6040518091039020867f448bc014f1536726cf8d54ff3d6481ed3cbc683c2591ca204274009afa09b1a18787878760405161083294939291906129e2565b60405180910390a3505050505050565b5f82815260208181526040808320546001600160401b031683526007825280832085845282528083206001600160e01b0319851684529091528120546001600160a01b03168015610894579050610570565b5f61089e85610d64565b90506001600160a01b0381166108b8575f92505050610570565b6040516301ffc9a760e01b60248201525f9081906001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b1790525161090f9190612834565b5f60405180830381855afa9150503d805f8114610947576040519150601f19603f3d011682016040523d82523d5f602084013e61094c565b606091505b509150915081158061095f575060208151105b80610989575080601f8151811061097857610978612a13565b01602001516001600160f81b031916155b1561099a575f945050505050610570565b6040516001600160e01b0319871660248201526001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b179052516109f09190612834565b5f60405180830381855afa9150503d805f8114610a28576040519150601f19603f3d011682016040523d82523d5f602084013e610a2d565b606091505b509092509050811580610a41575060208151105b80610a6b575080601f81518110610a5a57610a5a612a13565b01602001516001600160f81b031916155b15610a7c575f945050505050610570565b509095945050505050565b5f82815260208181526040808320546001600160401b03168352600180835281842086855290925282206060915b848111610b975780851615801590610ae457505f8181526020839052604081208054610ae090612885565b9050115b15610b8f5780825f8381526020019081526020015f20808054610b0690612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610b3290612885565b8015610b7d5780601f10610b5457610100808354040283529160200191610b7d565b820191905f5260205f20905b815481529060010190602001808311610b6057829003601f168201915b50505050509050935093505050610bae565b60011b610ab5565b505f60405180602001604052805f81525092509250505b9250929050565b82610bbf8161168a565b610bc7575f80fd5b60408051808201825284815260208082018581525f888152808352848120546001600160401b031681526009835284812089825283528490209251835551600190920191909155815185815290810184905285917f1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e4691015b60405180910390a250505050565b82610c578161168a565b610c5f575f80fd5b5f84815260208181526040808320546001600160401b03168352600382528083208784529091529020610c93838583612901565b50837fe379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d75788484604051610c3f929190612a27565b80610cd08161168a565b610cd8575f80fd5b5f82815260208190526040812080546001600160401b031691610cfa83612a3a565b82546101009290920a6001600160401b038181021990931691831602179091555f84815260208181526040918290205491519190921681528492507fc6621ccb8f3f5a04bb6502154b2caf6adf5983fe76dfef1cfc9c42e3579db444910160405180910390a25050565b5f80610d7183603c6115a2565b905080515f03610d8357505f92915050565b610d8c81611cae565b9392505050565b5f83815260208181526040808320546001600160401b03168352600a825280832086845290915290819020905160609190610dd19085908590612876565b90815260200160405180910390208054610dea90612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610e1690612885565b8015610e615780601f10610e3857610100808354040283529160200191610e61565b820191905f5260205f20905b815481529060010190602001808311610e4457829003601f168201915b505050505090509392505050565b5f81815260208181526040808320546001600160401b03168352600482528083208484529091529020805460609190610ea790612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610ed390612885565b8015610f1e5780601f10610ef557610100808354040283529160200191610f1e565b820191905f5260205f20905b815481529060010190602001808311610f0157829003601f168201915b50505050509050919050565b83610f348161168a565b610f3c575f80fd5b83610f48600182612863565b1615610f52575f80fd5b5f85815260208181526040808320546001600160401b031683526001825280832088845282528083208784529091529020610f8e838583612901565b50604051849086907faa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe3905f90a35050505050565b5f81815260208181526040808320546001600160401b03168352600882528083208484529091529020805460609190610ea790612885565b826110048161168a565b61100c575f80fd5b5f84815260208181526040808320546001600160401b03168352600882528083208784529091529020611040838583612901565b50837fb7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f78484604051610c3f929190612a27565b8261107d8161168a565b611085575f80fd5b837f65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af75284846040516110b792919061240e565b60405180910390a2603c830361110e57837f52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd26110f284611cae565b6040516001600160a01b03909116815260200160405180910390a25b5f84815260208181526040808320546001600160401b0316835260028252808320878452825280832086845290915290206111498382612a5f565b5050505050565b6001600160a01b03821633036111bf5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084015b60405180910390fd5b335f818152600b602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6001600160a01b03821633036112825760405162461bcd60e51b815260206004820181905260248201527f53657474696e672064656c65676174652073746174757320666f722073656c6660448201526064016111b6565b335f818152600c6020908152604080832087845282528083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519384529286917ff0ddb3b04746704017f9aa8bd728fcc2c1d11675041205350018915f5e4750a0910160405180910390a4505050565b5f83815260208181526040808320546001600160401b03168352600582528083208684528252808320858452825280832061ffff851684529091529020805460609190610dea90612885565b6060610d8c5f8484611ccb565b5f81815260208181526040808320546001600160401b03168352600382528083208484529091529020805460609190610ea790612885565b826113918161168a565b611399575f80fd5b5f84815260208181526040808320546001600160401b031680845260048352818420888552909252822080549192916113d190612885565b80601f01602080910402602001604051908101604052809291908181526020018280546113fd90612885565b80156114485780601f1061141f57610100808354040283529160200191611448565b820191905f5260205f20905b81548152906001019060200180831161142b57829003601f168201915b505050506001600160401b0384165f9081526004602090815260408083208b8452909152902091925061147e9050858783612901565b50857f8f15ed4b723ef428f250961da8315675b507046737e19319fc1a4d81bfe87f858287876040516114b393929190612b1e565b60405180910390a2505050505050565b816114cd8161168a565b6114d5575f80fd5b6114e483603c61038185611e88565b505050565b60606114f6848484611ccb565b949350505050565b826115088161168a565b611510575f80fd5b5f84815260208181526040808320546001600160401b031683526007825280832087845282528083206001600160e01b031987168085529083529281902080546001600160a01b0319166001600160a01b038716908117909155905190815286917f7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa910160405180910390a350505050565b5f82815260208181526040808320546001600160401b0316835260028252808320858452825280832084845290915290208054606091906115e290612885565b80601f016020809104026020016040519081016040528092919081815260200182805461160e90612885565b80156116595780601f1061163057610100808354040283529160200191611659565b820191905f5260205f20905b81548152906001019060200180831161163c57829003601f168201915b5050505050905092915050565b5f6001600160e01b03198216631674750f60e21b1480610570575061057082611eb8565b5f336001600160a01b037f0000000000000000000000004fbf7b2f171336958be5d15ff762a5cff53635681614806116ea5750336001600160a01b037f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5616145b156116f757506001919050565b6040516302571be360e01b8152600481018390525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa15801561175c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117809190612b4d565b90507f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b0316816001600160a01b031603611845576040516331a9108f60e11b8152600481018490527f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b031690636352211e90602401602060405180830381865afa15801561181e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118429190612b4d565b90505b6001600160a01b03811633148061187e57506001600160a01b0381165f908152600b6020908152604080832033845290915290205460ff165b80610d8c57506001600160a01b0381165f908152600c60209081526040808320868452825280832033845290915290205460ff16610d8c565b6118ff6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261057081611bc9565b602081015181516060916105709161192a9082611edc565b84519190611f33565b60a081015160c08201516060916105709161192a908290612863565b5f81518351148015610d8c5750610d8c835f845f8751611fa7565b865160208801205f61197d878787611f33565b90508315611aa1576001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c168452909152902080546119c690612885565b159050611a23576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611a0783612b68565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091528120611a62916121f9565b897f03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a12078a8a604051611a94929190612b84565b60405180910390a261076c565b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c16845290915290208054611ae290612885565b90505f03611b40576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611b2483612ba9565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091529020611b808282612a5f565b50897f52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b8a8a84604051611bb593929190612bbf565b60405180910390a250505050505050505050565b60c08101516020820181905281515111611be05750565b5f611bf2825f01518360200151611edc565b8260200151611c019190612bed565b8251909150611c109082611fc9565b61ffff166040830152611c24600282612bed565b8251909150611c339082611fc9565b61ffff166060830152611c47600282612bed565b8251909150611c569082611fef565b63ffffffff166080830152611c6c600482612bed565b82519091505f90611c7d9083611fc9565b61ffff169050611c8e600283612bed565b60a084018190529150611ca18183612bed565b60c0909301929092525050565b5f8151601414611cbc575f80fd5b5060200151600160601b900490565b6060816001600160401b03811115611ce557611ce56124c6565b604051908082528060200260200182016040528015611d1857816020015b6060815260200190600190039081611d035790505b5090505f5b82811015611e80578415611dd8575f848483818110611d3e57611d3e612a13565b9050602002810190611d509190612c00565b611d5f91602491600491612c42565b611d6891612c69565b9050858114611dd65760405162461bcd60e51b815260206004820152603460248201527f6d756c746963616c6c3a20416c6c207265636f726473206d7573742068617665604482015273040c240dac2e8c6d0d2dcce40dcc2dacad0c2e6d60631b60648201526084016111b6565b505b5f8030868685818110611ded57611ded612a13565b9050602002810190611dff9190612c00565b604051611e0d929190612876565b5f60405180830381855af49150503d805f8114611e45576040519150601f19603f3d011682016040523d82523d5f602084013e611e4a565b606091505b509150915081611e58575f80fd5b80848481518110611e6b57611e6b612a13565b60209081029190910101525050600101611d1d565b509392505050565b604080516014808252818301909252606091602082018180368337505050600160601b9290920260208301525090565b5f6001600160e01b0319821663c869023360e01b1480610570575061057082612017565b5f815b83518110611eef57611eef612c86565b5f611efa858361203b565b60ff169050611f0a816001612bed565b611f149083612bed565b9150805f03611f235750611f29565b50611edf565b6114f68382612863565b8251606090611f428385612bed565b1115611f4c575f80fd5b5f826001600160401b03811115611f6557611f656124c6565b6040519080825280601f01601f191660200182016040528015611f8f576020820181803683370190505b50905060208082019086860101610a7c82828761205e565b5f611fb38484846120b3565b611fbe8787856120b3565b149695505050505050565b81515f90611fd8836002612bed565b1115611fe2575f80fd5b50016002015161ffff1690565b81515f90611ffe836004612bed565b1115612008575f80fd5b50016004015163ffffffff1690565b5f6001600160e01b0319821663691f343160e01b14806105705750610570826120d5565b5f82828151811061204e5761204e612a13565b016020015160f81c905092915050565b602081106120965781518352612075602084612bed565b9250612082602083612bed565b915061208f602082612863565b905061205e565b905182516020929092036101000a5f190180199091169116179052565b82515f906120c18385612bed565b11156120cb575f80fd5b5091016020012090565b5f6001600160e01b031982166304928c6760e21b14806105705750610570825f6001600160e01b0319821663547d2b4160e11b148061212457506001600160e01b03198216635c98042b60e01b145b806105705750610570825f6001600160e01b0319821663bc1c58d160e01b14806105705750610570825f6001600160e01b03198216631d9dabef60e11b148061217d57506001600160e01b031982166378e5bf0360e11b145b806105705750610570825f6001600160e01b03198216631101d5ab60e11b14806105705750610570825f6001600160e01b0319821663d700ff3360e01b14806105705750610570825f6001600160e01b03198216634fbf043360e01b148061057057506301ffc9a760e01b6001600160e01b0319831614610570565b50805461220590612885565b5f825580601f10612214575050565b601f0160209004905f5260205f20908101906122309190612233565b50565b5b80821115612247575f8155600101612234565b5090565b80356001600160e01b031981168114612262575f80fd5b919050565b5f60208284031215612277575f80fd5b610d8c8261224b565b5f8083601f840112612290575f80fd5b5081356001600160401b038111156122a6575f80fd5b602083019150836020828501011115610bae575f80fd5b5f805f604084860312156122cf575f80fd5b8335925060208401356001600160401b038111156122eb575f80fd5b6122f786828701612280565b9497909650939450505050565b5f805f805f60608688031215612318575f80fd5b8535945060208601356001600160401b0380821115612335575f80fd5b61234189838a01612280565b90965094506040880135915080821115612359575f80fd5b5061236688828901612280565b969995985093965092949392505050565b5f8060408385031215612388575f80fd5b823591506123986020840161224b565b90509250929050565b5f80604083850312156123b2575f80fd5b50508035926020909101359150565b5f5b838110156123db5781810151838201526020016123c3565b50505f910152565b5f81518084526123fa8160208601602086016123c1565b601f01601f19169290920160200192915050565b828152604060208201525f6114f660408301846123e3565b5f805f60608486031215612438575f80fd5b505081359360208301359350604090920135919050565b5f6020828403121561245f575f80fd5b5035919050565b602081525f610d8c60208301846123e3565b5f805f806060858703121561248b575f80fd5b843593506020850135925060408501356001600160401b038111156124ae575f80fd5b6124ba87828801612280565b95989497509550505050565b634e487b7160e01b5f52604160045260245ffd5b5f805f606084860312156124ec575f80fd5b833592506020840135915060408401356001600160401b0380821115612510575f80fd5b818601915086601f830112612523575f80fd5b813581811115612535576125356124c6565b604051601f8201601f19908116603f0116810190838211818310171561255d5761255d6124c6565b81604052828152896020848701011115612575575f80fd5b826020860160208301375f6020848301015280955050505050509250925092565b6001600160a01b0381168114612230575f80fd5b80358015158114612262575f80fd5b5f80604083850312156125ca575f80fd5b82356125d581612596565b9150612398602084016125aa565b5f805f606084860312156125f5575f80fd5b83359250602084013561260781612596565b9150612615604085016125aa565b90509250925092565b5f805f60608486031215612630575f80fd5b8335925060208401359150604084013561ffff8116811461264f575f80fd5b809150509250925092565b5f805f6060848603121561266c575f80fd5b833561267781612596565b925060208401359150604084013561264f81612596565b5f8083601f84011261269e575f80fd5b5081356001600160401b038111156126b4575f80fd5b6020830191508360208260051b8501011115610bae575f80fd5b5f80602083850312156126df575f80fd5b82356001600160401b038111156126f4575f80fd5b6127008582860161268e565b90969095509350505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b8281101561276157603f1988860301845261274f8583516123e3565b94509285019290850190600101612733565b5092979650505050505050565b5f806040838503121561277f575f80fd5b82359150602083013561279181612596565b809150509250929050565b5f805f604084860312156127ae575f80fd5b8335925060208401356001600160401b038111156127ca575f80fd5b6122f78682870161268e565b5f805f606084860312156127e8575f80fd5b833592506127f86020850161224b565b9150604084013561264f81612596565b5f8060408385031215612819575f80fd5b823561282481612596565b9150602083013561279181612596565b5f82516128458184602087016123c1565b9190910192915050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156105705761057061284f565b818382375f9101908152919050565b600181811c9082168061289957607f821691505b6020821081036128b757634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156114e457805f5260205f20601f840160051c810160208510156128e25750805b601f840160051c820191505b81811015611149575f81556001016128ee565b6001600160401b03831115612918576129186124c6565b61292c836129268354612885565b836128bd565b5f601f84116001811461295d575f85156129465750838201355b5f19600387901b1c1916600186901b178355611149565b5f83815260208120601f198716915b8281101561298c578685013582556020948501946001909201910161296c565b50868210156129a8575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b604081525f6129f56040830186886129ba565b8281036020840152612a088185876129ba565b979650505050505050565b634e487b7160e01b5f52603260045260245ffd5b602081525f6114f66020830184866129ba565b5f6001600160401b03808316818103612a5557612a5561284f565b6001019392505050565b81516001600160401b03811115612a7857612a786124c6565b612a8c81612a868454612885565b846128bd565b602080601f831160018114612abf575f8415612aa85750858301515b5f19600386901b1c1916600185901b178555612b16565b5f85815260208120601f198616915b82811015612aed57888601518255948401946001909101908401612ace565b5085821015612b0a57878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b604081525f612b3060408301866123e3565b8281036020840152612b438185876129ba565b9695505050505050565b5f60208284031215612b5d575f80fd5b8151610d8c81612596565b5f61ffff821680612b7b57612b7b61284f565b5f190192915050565b604081525f612b9660408301856123e3565b905061ffff831660208301529392505050565b5f61ffff808316818103612a5557612a5561284f565b606081525f612bd160608301866123e3565b61ffff851660208401528281036040840152612b4381856123e3565b808201808211156105705761057061284f565b5f808335601e19843603018112612c15575f80fd5b8301803591506001600160401b03821115612c2e575f80fd5b602001915036819003821315610bae575f80fd5b5f8085851115612c50575f80fd5b83861115612c5c575f80fd5b5050820193919092039150565b80356020831015610570575f19602084900360031b1b1692915050565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{}},"0xa06a63155145b7f2fda96d9658ec7fef3b9dcf76":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b506004361061004a575f3560e01c80634ce34aa21461004e578063899e104c1461007e5780638df25d9214610091578063c4e8fcb5146100a4575b5f80fd5b61006161005c366004610834565b6100b9565b6040516001600160e01b0319909116815260200160405180910390f35b61006161008c3660046108b4565b610121565b61006161009f36600461091b565b61018a565b6100b76100b2366004610969565b6101c7565b005b5f335f525f60205260405f20546100dd576349ed56f960e11b5f523360045260245ffd5b815f5b81811015610110576101088585838181106100fd576100fd6109a2565b905060c002016102c4565b6001016100e0565b50632671a55160e11b949350505050565b5f335f525f60205260405f2054610145576349ed56f960e11b5f523360045260245ffd5b835f5b8181101561016d576101658787838181106100fd576100fd6109a2565b600101610148565b506101788484610436565b50632267841360e21b95945050505050565b5f335f525f60205260405f20546101ae576349ed56f960e11b5f523360045260245ffd5b6101b88383610436565b506346f92ec960e11b92915050565b336001600160a01b037f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c1614610210576040516336abb4df60e11b815260040160405180910390fd5b6001600160a01b0382165f9081526020819052604090205481151560ff909116151503610268576040516349271a0f60e11b81526001600160a01b038316600482015281151560248201526044015b60405180910390fd5b6001600160a01b0382165f8181526020818152604091829020805460ff191685151590811790915591519182527fae63067d43ac07563b7eb8db6595635fc77f1578a2a5ea06ba91b63e2afa37e2910160405180910390a25050565b60016102d360208301836109ca565b60038111156102e4576102e46109b6565b03610329576103266102fc60408301602084016109ef565b61030c60608401604085016109ef565b61031c60808501606086016109ef565b8460a0013561056c565b50565b600261033860208301836109ca565b6003811115610349576103496109b6565b036103b6578060a00135600114610379576040516369f9582760e01b815260a0820135600482015260240161025f565b61032661038c60408301602084016109ef565b61039c60608401604085016109ef565b6103ac60808501606086016109ef565b8460800135610660565b60036103c560208301836109ca565b60038111156103d6576103d66109b6565b0361041d576103266103ee60408301602084016109ef565b6103fe60608401604085016109ef565b61040e60808501606086016109ef565b84608001358560a00135610715565b604051631e4cbc7f60e21b815260040160405180910390fd5b808280631759616b60e11b6020525f5b8381101561055f57823582018035803b61046b57635f15d6725f52806020526024601cfd5b60a08201358060051b60c0018060808501351460a0606086013514168185013583141615905080156104a657633ae8821360e21b5f5260045ffd5b506020860195506080602084016024378060061b60400190508060a00160a4525f8160c401528060c4018160a0850160c4375f808260205f875af1935083610550573d1561053057601f3d0160051c91508060051c826003028184111561051a578184036003028280028580020360091c01015b5a60208201101561052d573d5f803e3d5ffd5b50505b6357e222f160e11b5f528260045260c0606452608451602001608452805ffd5b50505050600181019050610446565b5050505060806040525050565b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166106515780873b15151661065157806106405781610623573d1561060257601f3d0160051c8360051c81600302818311156105eb578183036003028280028480020360091c01015b5a6020820110156105fe573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b833b61067757635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af180610707573d156106e557601f3d0160051c8260051c81600302818311156106ce578183036003028280028480020360091c01015b5a6020820110156106e1573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b61072c57635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af1806107d1573d156107b057601f3d0160051c8560051c8160030281831115610799578183036003028280028480020360091c01015b5a6020820110156107ac573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b5f8083601f8401126107fc575f80fd5b50813567ffffffffffffffff811115610813575f80fd5b60208301915083602060c08302850101111561082d575f80fd5b9250929050565b5f8060208385031215610845575f80fd5b823567ffffffffffffffff81111561085b575f80fd5b610867858286016107ec565b90969095509350505050565b5f8083601f840112610883575f80fd5b50813567ffffffffffffffff81111561089a575f80fd5b6020830191508360208260051b850101111561082d575f80fd5b5f805f80604085870312156108c7575f80fd5b843567ffffffffffffffff808211156108de575f80fd5b6108ea888389016107ec565b90965094506020870135915080821115610902575f80fd5b5061090f87828801610873565b95989497509550505050565b5f806020838503121561092c575f80fd5b823567ffffffffffffffff811115610942575f80fd5b61086785828601610873565b80356001600160a01b0381168114610964575f80fd5b919050565b5f806040838503121561097a575f80fd5b6109838361094e565b915060208301358015158114610997575f80fd5b809150509250929050565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52602160045260245ffd5b5f602082840312156109da575f80fd5b8135600481106109e8575f80fd5b9392505050565b5f602082840312156109ff575f80fd5b6109e88261094e56fea164736f6c6343000818000a","storage":{}},"0xaa33d7188eb4b4a51c37199eaad2f73cf2bf0204":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0xac52f68f31577e44ae0c7e95a42dc9eb574b9383":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a424740014610090575b600080fd5b610059610054366004610cac565b6100b3565b6040516100669190610d9b565b60405180910390f35b61008261007d366004610dae565b610162565b604051908152602001610066565b6100a361009e366004610cac565b6101d6565b6040519015158152602001610066565b606060005a90506101576100ca6020870187610ddc565b6001546001600160a01b03166040880135846100e960608b018b610df9565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061023592505050565b9150505b9392505050565b600154604051636ccbae5f60e01b8152600481018390526000916001600160a01b031690636ccbae5f90602401602060405180830381865afa1580156101ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d09190610e40565b92915050565b600061022d6101e485610ef1565b600154604080516020601f88018190048102820181019092528681526001600160a01b039092169190879087908190840183828082843760009201919091525061030d92505050565b949350505050565b6060600080876001600160a01b0316866102518b8a8989610355565b60405161025e9190610f9b565b60006040518083038160008787f1925050503d806000811461029c576040519150601f19603f3d011682016040523d82523d6000602084013e6102a1565b606091505b5090925090506102b2603f87610fb7565b5a116102c0576102c0610fd9565b61030082826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061040a565b9998505050505050505050565b600061031a848484610443565b801561022d575060608401516020908101516001600160e01b031990811660009081529182905260409091205460e01b16151561022d565b50565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036103e75760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526103ff82828661058c565b979650505050505050565b6060831561041957508161015b565b8251156104295782518084602001fd5b8160405162461bcd60e51b81526004016103de9190610d9b565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561048a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104ae9190610e40565b9050600061055c8660600151805190602001208688602001516040516020016104fc9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561058257508551610582906001600160a01b03168286610a38565b9695505050505050565b60606001600160e01b03198416631de5861160e31b0361061a576000806000858060200190518101906105bf9190610fef565b92509250925086838383886040516024016105dd9493929190611032565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152935061015b92505050565b6001600160e01b03198416636debcb8d60e01b0361064b576000806000858060200190518101906105bf9190610fef565b6001600160e01b0319841663280d9b0560e01b036106dd576000806000808680602001905181019061067d91906110aa565b935093509350935087848484848a60405160240161069f959493929190611118565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152945061015b9350505050565b6001600160e01b031984166361603dd960e01b0361075c5760008380602001905181019061070b9190610e40565b905084818460405160240161072192919061115d565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152915061015b9050565b6001600160e01b0319841663b34f33c560e01b036107ab5760008060008580602001905181019061078d9190611176565b92509250925086838383886040516024016105dd94939291906111d0565b6001600160e01b03198416633013529360e01b036107dc5760008060008580602001905181019061078d9190611176565b6001600160e01b031984166307eca39560e01b03610830576000806000808680602001905181019061080e9190611209565b935093509350935087848484848a60405160240161069f95949392919061127e565b6001600160e01b031984166368b6154f60e01b03610862576000806000808680602001905181019061067d91906110aa565b6001600160e01b0319841663341de35b60e21b03610894576000806000808680602001905181019061067d91906110aa565b6001600160e01b03198416637a84860f60e11b0361092d576000806000806000878060200190518101906108c891906112cb565b945094509450945094508885858585858c6040516024016108ee96959493929190611360565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152955061015b945050505050565b6001600160e01b03198416636fab95b360e01b036109b2576000808480602001905181019061095c91906113b9565b915091508582828660405160240161097693929190611400565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925061015b915050565b6001600160e01b0319841663288f888960e11b0361015b57600080848060200190518101906109e1919061142b565b91509150858282866040516024016109fb93929190611459565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925050509392505050565b6000806000610a478585610b7a565b90925090506000816004811115610a6057610a60611489565b148015610a7e5750856001600160a01b0316826001600160a01b0316145b15610a8e5760019250505061015b565b600080876001600160a01b0316631626ba7e60e01b8888604051602401610ab692919061115d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051610af49190610f9b565b600060405180830381855afa9150503d8060008114610b2f576040519150601f19603f3d011682016040523d82523d6000602084013e610b34565b606091505b5091509150818015610b47575080516020145b8015610b6e57508051630b135d3f60e11b90610b6c9083016020908101908401610e40565b145b98975050505050505050565b6000808251604103610bb05760208301516040840151606085015160001a610ba487828585610bbf565b94509450505050610bb8565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610bf65750600090506003610ca3565b8460ff16601b14158015610c0e57508460ff16601c14155b15610c1f5750600090506004610ca3565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610c73573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610c9c57600060019250925050610ca3565b9150600090505b94509492505050565b600080600060408486031215610cc157600080fd5b833567ffffffffffffffff80821115610cd957600080fd5b9085019060808288031215610ced57600080fd5b90935060208501359080821115610d0357600080fd5b818601915086601f830112610d1757600080fd5b813581811115610d2657600080fd5b876020828501011115610d3857600080fd5b6020830194508093505050509250925092565b60005b83811015610d66578181015183820152602001610d4e565b50506000910152565b60008151808452610d87816020860160208601610d4b565b601f01601f19169290920160200192915050565b60208152600061015b6020830184610d6f565b600060208284031215610dc057600080fd5b5035919050565b6001600160a01b038116811461035257600080fd5b600060208284031215610dee57600080fd5b813561015b81610dc7565b6000808335601e19843603018112610e1057600080fd5b83018035915067ffffffffffffffff821115610e2b57600080fd5b602001915036819003821315610bb857600080fd5b600060208284031215610e5257600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610e9257610e92610e59565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ec157610ec1610e59565b604052919050565b600067ffffffffffffffff821115610ee357610ee3610e59565b50601f01601f191660200190565b600060808236031215610f0357600080fd5b610f0b610e6f565b8235610f1681610dc7565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610f4657600080fd5b840136601f820112610f5757600080fd5b8035610f6a610f6582610ec9565b610e98565b8181523684838501011115610f7e57600080fd5b818484018583013760009181019093015250606082015292915050565b60008251610fad818460208701610d4b565b9190910192915050565b600082610fd457634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b60008060006060848603121561100457600080fd5b835161100f81610dc7565b602085015190935061102081610dc7565b80925050604084015190509250925092565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061058290830184610d6f565b600082601f83011261107657600080fd5b8151611084610f6582610ec9565b81815284602083860101111561109957600080fd5b61022d826020830160208701610d4b565b600080600080608085870312156110c057600080fd5b84516110cb81610dc7565b60208601519094506110dc81610dc7565b60408601516060870151919450925067ffffffffffffffff81111561110057600080fd5b61110c87828801611065565b91505092959194509250565b6001600160a01b038681168252851660208201526040810184905260a06060820181905260009061114b90830185610d6f565b8281036080840152610b6e8185610d6f565b82815260406020820152600061022d6040830184610d6f565b60008060006060848603121561118b57600080fd5b835161119681610dc7565b60208501516040860151919450925067ffffffffffffffff8111156111ba57600080fd5b6111c686828701611065565b9150509250925092565b60018060a01b03851681528360208201526080604082015260006111f76080830185610d6f565b82810360608401526103ff8185610d6f565b6000806000806080858703121561121f57600080fd5b845161122a81610dc7565b60208601516040870151919550935067ffffffffffffffff8082111561124f57600080fd5b61125b88838901611065565b9350606087015191508082111561127157600080fd5b5061110c87828801611065565b60018060a01b038616815284602082015260a0604082015260006112a560a0830186610d6f565b82810360608401526112b78186610d6f565b90508281036080840152610b6e8185610d6f565b600080600080600060a086880312156112e357600080fd5b85516112ee81610dc7565b60208701519095506112ff81610dc7565b60408701516060880151919550935067ffffffffffffffff8082111561132457600080fd5b61133089838a01611065565b9350608088015191508082111561134657600080fd5b5061135388828901611065565b9150509295509295909350565b6001600160a01b038781168252861660208201526040810185905260c06060820181905260009061139390830186610d6f565b82810360808401526113a58186610d6f565b905082810360a08401526103008185610d6f565b600080604083850312156113cc57600080fd5b82519150602083015167ffffffffffffffff8111156113ea57600080fd5b6113f685828601611065565b9150509250929050565b8381526060602082015260006114196060830185610d6f565b82810360408401526105828185610d6f565b6000806040838503121561143e57600080fd5b825161144981610dc7565b6020939093015192949293505050565b60018060a01b03841681528260208201526060604082015260006114806060830184610d6f565b95945050505050565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a","storage":{"0x1":"0x7bb6cd9be29fab783c0b494a06fed8b2e2596b7a","0xd8b896d609e853134f3f02ce62d8049b2fdfe9356134f6d548fb1beda30db79":"0x30135293","0x4f457f36b92dc6b16c281e5877e2d8d39630135c1b7246fa9174035e1efcefbd":"0x6fab95b3","0x6b7ba3fe9941e089de60543da4a1deaef065baa963222951b2f9a138f9960820":"0x6debcb8d","0x70cff8e4ee4af5aa154324d45bcf258212c235bbe79f0707bb6273110ef4e13a":"0xf5090c1e","0x73efb0e44094dbabc6bbeecd3be1d81f272157c2dae2d647e6315f150b0b1dd2":"0xd0778d6c","0x8b1c4edded6644848281eab03ac2c319242d62b2057cffa3dd4540715bbc155e":"0xef2c3088","0xbeb5ea8fc2aeae43b7170220434aa4429fb067f0866ae25514b29f647641ca8c":"0x511f1112","0xca659f6eb372ce950e69d4d474290a6a4285f6a06a6128ca9f45419371a1e997":"0xb34f33c5","0xd12e300b5f35ba5198dd81dab97a512a154a0ad0e2cda788abdc22deba64f2a7":"0x280d9b05","0xd5453e7f4fff276a1d42f717d1db50865c284ae707a15bd6a590a3895656f27c":"0x7eca395","0xea2575ae4056f10294a848ca5ed6d215dffd1b80838142770bc441f7df607d71":"0x61603dd9","0xf8ca3ef1e3d09a0d88e209301f12626c90bec3ea586d4bce2c7a58e7eae8278f":"0x68b6154f"}},"0xb17aae5b3a7815433fc82cfd67ea245767894f03":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061012a5760003560e01c80638d839ffe116100ab578063aeb8ce9b1161006f578063aeb8ce9b146105d7578063ce1e09c014610688578063f14fcbc81461069d578063f2fde38b146106c7578063f49826be146106fa578063f7a16963146107b95761012a565b80638d839ffe1461045d5780638da5cb5b146104725780638f32d59b146104a35780639791c097146104b8578063acf1a841146105695761012a565b80637e324479116100f25780637e324479146102b8578063839df945146102e857806383e7f6ff1461031257806385f6d155146103c55780638a95b09f146104485761012a565b806301ffc9a71461012f5780633ccfd60b146101775780633d86c52f1461018e578063530e784f14610270578063715018a6146102a3575b600080fd5b34801561013b57600080fd5b506101636004803603602081101561015257600080fd5b50356001600160e01b031916610881565b604080519115158252519081900360200190f35b34801561018357600080fd5b5061018c610a12565b005b34801561019a57600080fd5b5061025e600480360360a08110156101b157600080fd5b810190602081018135600160201b8111156101cb57600080fd5b8201836020820111156101dd57600080fd5b803590602001918460018302840111600160201b831117156101fe57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b0383358116945060208401359360408101358216935060600135169050610a53565b60408051918252519081900360200190f35b34801561027c57600080fd5b5061018c6004803603602081101561029357600080fd5b50356001600160a01b0316610b42565b3480156102af57600080fd5b5061018c610ba3565b3480156102c457600080fd5b5061018c600480360360408110156102db57600080fd5b5080359060200135610bfe565b3480156102f457600080fd5b5061025e6004803603602081101561030b57600080fd5b5035610c1a565b34801561031e57600080fd5b5061025e6004803603604081101561033557600080fd5b810190602081018135600160201b81111561034f57600080fd5b82018360208201111561036157600080fd5b803590602001918460018302840111600160201b8311171561038257600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505091359250610c2c915050565b61018c600480360360808110156103db57600080fd5b810190602081018135600160201b8111156103f557600080fd5b82018360208201111561040757600080fd5b803590602001918460018302840111600160201b8311171561042857600080fd5b91935091506001600160a01b038135169060208101359060400135610d9e565b34801561045457600080fd5b5061025e610de9565b34801561046957600080fd5b5061025e610df0565b34801561047e57600080fd5b50610487610df6565b604080516001600160a01b039092168252519081900360200190f35b3480156104af57600080fd5b50610163610e05565b3480156104c457600080fd5b50610163600480360360208110156104db57600080fd5b810190602081018135600160201b8111156104f557600080fd5b82018360208201111561050757600080fd5b803590602001918460018302840111600160201b8311171561052857600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610e16945050505050565b61018c6004803603604081101561057f57600080fd5b810190602081018135600160201b81111561059957600080fd5b8201836020820111156105ab57600080fd5b803590602001918460018302840111600160201b831117156105cc57600080fd5b919350915035610e2b565b3480156105e357600080fd5b50610163600480360360208110156105fa57600080fd5b810190602081018135600160201b81111561061457600080fd5b82018360208201111561062657600080fd5b803590602001918460018302840111600160201b8311171561064757600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610fcf945050505050565b34801561069457600080fd5b5061025e611069565b3480156106a957600080fd5b5061018c600480360360208110156106c057600080fd5b503561106f565b3480156106d357600080fd5b5061018c600480360360208110156106ea57600080fd5b50356001600160a01b03166110a1565b34801561070657600080fd5b5061025e6004803603606081101561071d57600080fd5b810190602081018135600160201b81111561073757600080fd5b82018360208201111561074957600080fd5b803590602001918460018302840111600160201b8311171561076a57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b0383351693505050602001356110bb565b61018c600480360360c08110156107cf57600080fd5b810190602081018135600160201b8111156107e957600080fd5b8201836020820111156107fb57600080fd5b803590602001918460018302840111600160201b8311171561081c57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b038335811694506020840135936040810135935060608101358216925060800135166110d3565b604080517f737570706f727473496e74657266616365286279746573342900000000000000815290519081900360190190206000906001600160e01b0319838116911614806109c05750604080517472656e657728737472696e672c75696e743235362960581b815290519081900360150181209080602861186a8239604080519182900360280182206e636f6d6d697428627974657333322960881b8352905191829003600f01822090925090806026611892823960260190506040518091039020604051808070617661696c61626c6528737472696e672960781b8152506011019050604051809103902060405180807f72656e74507269636528737472696e672c75696e7432353629000000000000008152506019019050604051809103902018181818186001600160e01b031916826001600160e01b031916145b80610a0c5750604051808061182a60409139604080519182900301812091508060426118b8823960420190506040518091039020186001600160e01b031916826001600160e01b031916145b92915050565b610a1a610e05565b610a2357600080fd5b6040513390303180156108fc02916000818181858888f19350505050158015610a50573d6000803e3d6000fd5b50565b845160208601206000906001600160a01b038416158015610a7b57506001600160a01b038316155b15610acb57604080516020808201939093526bffffffffffffffffffffffff19606089901b1681830152605480820188905282518083039091018152607490910190915280519101209050610b39565b6001600160a01b038416610ade57600080fd5b604080516020808201939093526bffffffffffffffffffffffff19606089811b82168385015287811b8216605484015286901b166068820152607c80820188905282518083039091018152609c909101909152805191012090505b95945050505050565b610b4a610e05565b610b5357600080fd5b600280546001600160a01b0319166001600160a01b0383811691909117918290556040519116907ff261845a790fe29bbd6631e2ca4a5bdc83e6eed7c3271d9590d97287e00e912390600090a250565b610bab610e05565b610bb457600080fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b610c06610e05565b610c0f57600080fd5b600391909155600455565b60056020526000908152604090205481565b815160208084019190912060025460015460408051636b727d4360e11b81526004810185905290516000956001600160a01b03948516946350e9a715948a9491169263d6e4fa8692602480840193919291829003018186803b158015610c9157600080fd5b505afa158015610ca5573d6000803e3d6000fd5b505050506040513d6020811015610cbb57600080fd5b50516040516001600160e01b031960e085901b168152602481018290526044810188905260606004820190815283516064830152835189928291608490910190602087019080838360005b83811015610d1e578181015183820152602001610d06565b50505050905090810190601f168015610d4b5780820380516001836020036101000a031916815260200191505b5094505050505060206040518083038186803b158015610d6a57600080fd5b505afa158015610d7e573d6000803e3d6000fd5b505050506040513d6020811015610d9457600080fd5b5051949350505050565b610de285858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250889350879250869150806110d3565b5050505050565b6224ea0081565b60035481565b6000546001600160a01b031690565b6000546001600160a01b0316331490565b60006003610e2383611646565b101592915050565b6000610e6e84848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250869250610c2c915050565b905080341015610e7d57600080fd5b60008484604051808383808284376040805193909101839003832060015463c475abff60e01b855260048501829052602485018b90529151909750600096506001600160a01b03909116945063c475abff93506044808401936020935082900301818787803b158015610eef57600080fd5b505af1158015610f03573d6000803e3d6000fd5b505050506040513d6020811015610f1957600080fd5b5051905034831015610f565760405133903485900380156108fc02916000818181858888f19350505050158015610f54573d6000803e3d6000fd5b505b817f3da24c024582931cfaf8267d8ed24d13a82a8068d5bd337d30ec45cea4e506ae8787868560405180806020018481526020018381526020018281038252868682818152602001925080828437600083820152604051601f909101601f191690920182900397509095505050505050a2505050505050565b80516020820120600090610fe283610e16565b80156110625750600154604080516312dc929d60e31b81526004810184905290516001600160a01b03909216916396e494e891602480820192602092909190829003018186803b15801561103557600080fd5b505afa158015611049573d6000803e3d6000fd5b505050506040513d602081101561105f57600080fd5b50515b9392505050565b60045481565b6004546000828152600560205260409020544291011061108e57600080fd5b6000908152600560205260409020429055565b6110a9610e05565b6110b257600080fd5b610a508161172e565b60006110cb848484600080610a53565b949350505050565b60006110e28787868686610a53565b905060006110f188878461179c565b885160208a01209091508060006001600160a01b038716156114ac5760015460408051633f2891eb60e21b815260048101859052306024820152604481018c905290516001600160a01b039092169163fca247ac916064808201926020929091908290030181600087803b15801561116857600080fd5b505af115801561117c573d6000803e3d6000fd5b505050506040513d602081101561119257600080fd5b505160015460408051630ddf7fcb60e41b815290519293506000926001600160a01b039092169163ddf7fcb091600480820192602092909190829003018186803b1580156111df57600080fd5b505afa1580156111f3573d6000803e3d6000fd5b505050506040513d602081101561120957600080fd5b50516040805160208181019390935280820187905281518082038301815260608201808452815191850191909120600154633f15457f60e01b90925292519294506001600160a01b031692633f15457f92606480840193829003018186803b15801561127457600080fd5b505afa158015611288573d6000803e3d6000fd5b505050506040513d602081101561129e57600080fd5b505160408051630c4b7b8560e11b8152600481018490526001600160a01b038b8116602483015291519190921691631896f70a91604480830192600092919082900301818387803b1580156112f257600080fd5b505af1158015611306573d6000803e3d6000fd5b505050506001600160a01b0387161561139257876001600160a01b031663d5fa2b0082896040518363ffffffff1660e01b815260040180838152602001826001600160a01b03166001600160a01b0316815260200192505050600060405180830381600087803b15801561137957600080fd5b505af115801561138d573d6000803e3d6000fd5b505050505b60015460408051630a3b53db60e21b8152600481018690526001600160a01b038e81166024830152915191909216916328ed4f6c91604480830192600092919082900301818387803b1580156113e757600080fd5b505af11580156113fb573d6000803e3d6000fd5b50505050600160009054906101000a90046001600160a01b03166001600160a01b03166323b872dd308d866040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050600060405180830381600087803b15801561148e57600080fd5b505af11580156114a2573d6000803e3d6000fd5b505050505061154c565b6001600160a01b038616156114c057600080fd5b60015460408051633f2891eb60e21b8152600481018590526001600160a01b038d81166024830152604482018d90529151919092169163fca247ac9160648083019260209291908290030181600087803b15801561151d57600080fd5b505af1158015611531573d6000803e3d6000fd5b505050506040513d602081101561154757600080fd5b505190505b896001600160a01b0316837fca6abbe9d7f11422cb6ca7629fbf6fe9efb1c621f71ce8f02b9f2a230097404f8d87856040518080602001848152602001838152602001828103825285818151815260200191508051906020019080838360005b838110156115c45781810151838201526020016115ac565b50505050905090810190601f1680156115f15780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a3833411156116395760405133903486900380156108fc02916000818181858888f19350505050158015611637573d6000803e3d6000fd5b505b5050505050505050505050565b8051600090819081905b8082101561172557600085838151811061166657fe5b01602001516001600160f81b0319169050600160ff1b81101561168e57600183019250611719565b600760fd1b6001600160f81b0319821610156116af57600283019250611719565b600f60fc1b6001600160f81b0319821610156116d057600383019250611719565b601f60fb1b6001600160f81b0319821610156116f157600483019250611719565b603f60fa1b6001600160f81b03198216101561171257600583019250611719565b6006830192505b50600190920191611650565b50909392505050565b6001600160a01b03811661174157600080fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b600354600082815260056020526040812054909142910111156117be57600080fd5b600454600083815260056020526040902054429101116117dd57600080fd5b6117e684610fcf565b6117ef57600080fd5b600082815260056020526040812081905561180a8585610c2c565b90506224ea0084101561181c57600080fd5b803410156110cb57600080fdfe6d616b65436f6d6d69746d656e7457697468436f6e66696728737472696e672c616464726573732c627974657333322c616464726573732c6164647265737329726567697374657228737472696e672c616464726573732c75696e743235362c62797465733332296d616b65436f6d6d69746d656e7428737472696e672c616464726573732c6279746573333229726567697374657257697468436f6e66696728737472696e672c616464726573732c75696e743235362c627974657333322c616464726573732c6164647265737329a265627a7a72315820ba74b4e49afb22de09a9ebda5d073d93e2a2a7b2530ce50def390c32cac92ea064736f6c634300050c0032","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1":"0xc965345edac823d56812cd20a10316233916a605","0x2":"0xec71e4e674fe0f432693dc2b935c34bd2774c003","0x3":"0x258","0x4":"0x15180"}},"0xbdefcf6429d0ac68236a6beb321cbd2ce66b463c":{"nonce":2,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c80636d435421116100885780637b37e561116100635780637b37e561146102435780638b9e028b14610256578063906c87cc1461027657806393790f4414610289575f80fd5b80636d435421146101eb5780636e9bfd9f146101fe578063794593bc14610230575f80fd5b806314afd79e116100c357806314afd79e1461018157806333bc8572146101945780634e3f9580146101b757806351710e45146101d8575f80fd5b8063027cc764146100e95780630a96ad391461011957806313ad9cab1461016c575b5f80fd5b6100fc6100f7366004610c39565b61029c565b6040516001600160a01b0390911681526020015b60405180910390f35b604080517f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f81527fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167602082015201610110565b61017f61017a366004610c61565b610339565b005b6100fc61018f366004610ca9565b610531565b6101a76101a2366004610cc9565b61055c565b6040519015158152602001610110565b6101ca6101c5366004610ca9565b610595565b604051908152602001610110565b61017f6101e6366004610ca9565b6105bd565b61017f6101f9366004610cc9565b6106be565b61021161020c366004610cfa565b6107ae565b604080516001600160a01b039093168352901515602083015201610110565b6100fc61023e366004610d11565b610838565b61017f610251366004610ca9565b610a0a565b610269610264366004610ca9565b610aab565b6040516101109190610d32565b6100fc610284366004610ca9565b610b28565b6101ca610297366004610ca9565b610b53565b5f6102a683610b8e565b6001600160a01b0383165f908152602081905260409020600301548083106102f157604051636ceb340b60e01b81526001600160a01b03851660048201526024015b60405180910390fd5b6001600160a01b0384165f90815260208190526040902060030180548490811061031d5761031d610d7e565b5f918252602090912001546001600160a01b0316949350505050565b61034283610bc6565b60405163c4e8fcb560e01b81526001600160a01b038381166004830152821515602483015284169063c4e8fcb5906044015f604051808303815f87803b15801561038a575f80fd5b505af115801561039c573d5f803e3d5ffd5b505050506001600160a01b038381165f908152602081815260408083209386168352600484019091529020548015158380156103d6575080155b15610425576003830180546001810182555f828152602080822090920180546001600160a01b0319166001600160a01b038a169081179091559254928152600486019091526040902055610529565b831580156104305750805b156105295760038301545f198301905f9061044d90600190610d92565b90508181146104d8575f85600301828154811061046c5761046c610d7e565b5f918252602090912001546003870180546001600160a01b03909216925082918590811061049c5761049c610d7e565b5f91825260208083209190910180546001600160a01b0319166001600160a01b0394851617905592909116815260048701909152604090208490555b846003018054806104eb576104eb610db7565b5f828152602080822083015f1990810180546001600160a01b03191690559092019092556001600160a01b0389168252600487019052604081205550505b505050505050565b5f61053b82610b8e565b506001600160a01b039081165f908152602081905260409020600101541690565b5f61056683610b8e565b506001600160a01b039182165f9081526020818152604080832093909416825260049092019091522054151590565b5f61059f82610b8e565b506001600160a01b03165f9081526020819052604090206003015490565b6105c681610b8e565b6001600160a01b038181165f9081526020819052604090206002015416331461060d576040516388c3a11560e01b81526001600160a01b03821660048201526024016102e8565b6040515f907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da908290a26001600160a01b038082165f818152602081905260408082206002810180546001600160a01b031916905560010154905133949190911692917fc8894f26f396ce8c004245c8b7cd1b92103a6e4302fcbab883987149ac01b7ec91a46001600160a01b03165f90815260208190526040902060010180546001600160a01b03191633179055565b6106c782610bc6565b6001600160a01b0381166106f95760405163a388d26360e01b81526001600160a01b03831660048201526024016102e8565b6001600160a01b038083165f9081526020819052604090206002015481169082160361074b576040516365e0406560e11b81526001600160a01b038084166004830152821660248201526044016102e8565b6040516001600160a01b038216907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da905f90a26001600160a01b039182165f90815260208190526040902060020180546001600160a01b03191691909216179055565b5f8060ff60f81b30847f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f6040516020016107eb9493929190610dcb565b60408051601f198184030181529190528051602090910120936001600160a01b0385163f7fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167149350915050565b5f6001600160a01b0382166108605760405163267eaa8160e21b815260040160405180910390fd5b606083901c3314610884576040516332db94d160e21b815260040160405180910390fd5b6040516108c3906001600160f81b031990309086907f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f90602001610dcb565b604051602081830303815290604052805190602001205f1c90507fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167816001600160a01b03163f0361093257604051633194665960e11b81526001600160a01b03821660048201526024016102e8565b8260405161093f90610c16565b8190604051809103905ff590508015801561095c573d5f803e3d5ffd5b50506001600160a01b038181165f81815260208181526040918290206001810180546001600160a01b03191695881695909517909455868455815192835282018690527f4397af6128d529b8ae0442f99db1296d5136062597a15bbc61c1b2a6431a7d15910160405180910390a16040516001600160a01b03808516915f918516907fc8894f26f396ce8c004245c8b7cd1b92103a6e4302fcbab883987149ac01b7ec908390a45092915050565b610a1381610bc6565b6001600160a01b038181165f9081526020819052604090206002015416610a58576040516335809b0b60e11b81526001600160a01b03821660048201526024016102e8565b6040515f907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da908290a26001600160a01b03165f90815260208190526040902060020180546001600160a01b0319169055565b6060610ab682610b8e565b6001600160a01b0382165f908152602081815260409182902060030180548351818402810184019094528084529091830182828015610b1c57602002820191905f5260205f20905b81546001600160a01b03168152600190910190602001808311610afe575b50505050509050919050565b5f610b3282610b8e565b506001600160a01b039081165f908152602081905260409020600201541690565b6001600160a01b0381165f9081526020819052604090205480610b89576040516304ca820960e41b815260040160405180910390fd5b919050565b6001600160a01b0381165f90815260208190526040902054610bc3576040516304ca820960e41b815260040160405180910390fd5b50565b610bcf81610b8e565b6001600160a01b038181165f90815260208190526040902060010154163314610bc35760405163d4ed9a1760e01b81526001600160a01b03821660048201526024016102e8565b610a4180610e0583390190565b80356001600160a01b0381168114610b89575f80fd5b5f8060408385031215610c4a575f80fd5b610c5383610c23565b946020939093013593505050565b5f805f60608486031215610c73575f80fd5b610c7c84610c23565b9250610c8a60208501610c23565b915060408401358015158114610c9e575f80fd5b809150509250925092565b5f60208284031215610cb9575f80fd5b610cc282610c23565b9392505050565b5f8060408385031215610cda575f80fd5b610ce383610c23565b9150610cf160208401610c23565b90509250929050565b5f60208284031215610d0a575f80fd5b5035919050565b5f8060408385031215610d22575f80fd5b82359150610cf160208401610c23565b602080825282518282018190525f9190848201906040850190845b81811015610d725783516001600160a01b031683529284019291840191600101610d4d565b50909695505050505050565b634e487b7160e01b5f52603260045260245ffd5b81810381811115610db157634e487b7160e01b5f52601160045260245ffd5b92915050565b634e487b7160e01b5f52603160045260245ffd5b6001600160f81b031994909416845260609290921b6bffffffffffffffffffffffff19166001840152601583015260358201526055019056fe60a060405234801561000f575f80fd5b5033608052608051610a1561002c5f395f6101d20152610a155ff3fe608060405234801561000f575f80fd5b506004361061004a575f3560e01c80634ce34aa21461004e578063899e104c1461007e5780638df25d9214610091578063c4e8fcb5146100a4575b5f80fd5b61006161005c366004610834565b6100b9565b6040516001600160e01b0319909116815260200160405180910390f35b61006161008c3660046108b4565b610121565b61006161009f36600461091b565b61018a565b6100b76100b2366004610969565b6101c7565b005b5f335f525f60205260405f20546100dd576349ed56f960e11b5f523360045260245ffd5b815f5b81811015610110576101088585838181106100fd576100fd6109a2565b905060c002016102c4565b6001016100e0565b50632671a55160e11b949350505050565b5f335f525f60205260405f2054610145576349ed56f960e11b5f523360045260245ffd5b835f5b8181101561016d576101658787838181106100fd576100fd6109a2565b600101610148565b506101788484610436565b50632267841360e21b95945050505050565b5f335f525f60205260405f20546101ae576349ed56f960e11b5f523360045260245ffd5b6101b88383610436565b506346f92ec960e11b92915050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610210576040516336abb4df60e11b815260040160405180910390fd5b6001600160a01b0382165f9081526020819052604090205481151560ff909116151503610268576040516349271a0f60e11b81526001600160a01b038316600482015281151560248201526044015b60405180910390fd5b6001600160a01b0382165f8181526020818152604091829020805460ff191685151590811790915591519182527fae63067d43ac07563b7eb8db6595635fc77f1578a2a5ea06ba91b63e2afa37e2910160405180910390a25050565b60016102d360208301836109ca565b60038111156102e4576102e46109b6565b03610329576103266102fc60408301602084016109ef565b61030c60608401604085016109ef565b61031c60808501606086016109ef565b8460a0013561056c565b50565b600261033860208301836109ca565b6003811115610349576103496109b6565b036103b6578060a00135600114610379576040516369f9582760e01b815260a0820135600482015260240161025f565b61032661038c60408301602084016109ef565b61039c60608401604085016109ef565b6103ac60808501606086016109ef565b8460800135610660565b60036103c560208301836109ca565b60038111156103d6576103d66109b6565b0361041d576103266103ee60408301602084016109ef565b6103fe60608401604085016109ef565b61040e60808501606086016109ef565b84608001358560a00135610715565b604051631e4cbc7f60e21b815260040160405180910390fd5b808280631759616b60e11b6020525f5b8381101561055f57823582018035803b61046b57635f15d6725f52806020526024601cfd5b60a08201358060051b60c0018060808501351460a0606086013514168185013583141615905080156104a657633ae8821360e21b5f5260045ffd5b506020860195506080602084016024378060061b60400190508060a00160a4525f8160c401528060c4018160a0850160c4375f808260205f875af1935083610550573d1561053057601f3d0160051c91508060051c826003028184111561051a578184036003028280028580020360091c01015b5a60208201101561052d573d5f803e3d5ffd5b50505b6357e222f160e11b5f528260045260c0606452608451602001608452805ffd5b50505050600181019050610446565b5050505060806040525050565b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166106515780873b15151661065157806106405781610623573d1561060257601f3d0160051c8360051c81600302818311156105eb578183036003028280028480020360091c01015b5a6020820110156105fe573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b833b61067757635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af180610707573d156106e557601f3d0160051c8260051c81600302818311156106ce578183036003028280028480020360091c01015b5a6020820110156106e1573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b61072c57635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af1806107d1573d156107b057601f3d0160051c8560051c8160030281831115610799578183036003028280028480020360091c01015b5a6020820110156107ac573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b5f8083601f8401126107fc575f80fd5b50813567ffffffffffffffff811115610813575f80fd5b60208301915083602060c08302850101111561082d575f80fd5b9250929050565b5f8060208385031215610845575f80fd5b823567ffffffffffffffff81111561085b575f80fd5b610867858286016107ec565b90969095509350505050565b5f8083601f840112610883575f80fd5b50813567ffffffffffffffff81111561089a575f80fd5b6020830191508360208260051b850101111561082d575f80fd5b5f805f80604085870312156108c7575f80fd5b843567ffffffffffffffff808211156108de575f80fd5b6108ea888389016107ec565b90965094506020870135915080821115610902575f80fd5b5061090f87828801610873565b95989497509550505050565b5f806020838503121561092c575f80fd5b823567ffffffffffffffff811115610942575f80fd5b61086785828601610873565b80356001600160a01b0381168114610964575f80fd5b919050565b5f806040838503121561097a575f80fd5b6109838361094e565b915060208301358015158114610997575f80fd5b809150509250929050565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52602160045260245ffd5b5f602082840312156109da575f80fd5b8135600481106109e8575f80fd5b9392505050565b5f602082840312156109ff575f80fd5b6109e88261094e56fea164736f6c6343000818000aa164736f6c6343000818000a","storage":{}},"0xbe5deac45dd1ca4ee18dc2d585d84d3d3cb82b0d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c806341539d4a146100465780634d5505d314610097578063afa764d7146100b1575b600080fd5b6100636004803603602081101561005c57600080fd5b50356100dc565b6040805195865260208601949094528484019290925260608401526001600160a01b03166080830152519081900360a00190f35b61009f610114565b60408051918252519081900360200190f35b6100da600480360360608110156100c757600080fd5b508035906020810135906040013561011a565b005b60006020819052908152604090208054600182015460028301546003840154600490940154929391929091906001600160a01b031685565b60015481565b6101226101eb565b506040805160a0810182528481526020808201858152828401858152426060808601918252336080870181815260018054810180825560009081528089528a81208a518155975188830155955160028801559351600387015551600490950180546001600160a01b0319166001600160a01b0390961695909517909455905486518981529485018890528487018a905295519495919491937fba5de06d22af2685c6c7765f60067f7d2b08c2d29f53cdf14d67f6d1c9bfb527929081900390910190a450505050565b6040518060a001604052806000801916815260200160008152602001600081526020016000815260200160006001600160a01b03168152509056fea164736f6c6343000606000a","storage":{"0x1":"0x0"}},"0xbe92182cab5b84fd18b34881a0c32771e84f5b8b":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061021c5760003560e01c80638da5cb5b11610125578063bebec6b4116100ad578063e985e9c51161007c578063e985e9c514610540578063f059235914610553578063f2fde38b14610566578063ffa1ad7414610579578063ffad6f551461059d57600080fd5b8063bebec6b4146104e7578063bfc5429b146104fa578063c15ae7cf1461050d578063c87b56dd1461052d57600080fd5b8063a81ce6f9116100f4578063a81ce6f91461046d578063ac9650d814610480578063b3f9e4cb146104a0578063b85afd28146104b3578063b98b3526146104d457600080fd5b80638da5cb5b146103f157806391015f6b146103f9578063933c051d1461041b578063a3f4df7e1461043d57600080fd5b80634bd79ed0116101a857806370a082311161017757806370a082311461038d578063715018a6146103a05780637e37479e146103a857806383caffbe146103bb578063869b8884146103ce57600080fd5b80634bd79ed0146103335780634f558e79146103465780636352211e14610359578063672b9f811461036c57600080fd5b80631bd8cc1a116101ef5780631bd8cc1a146102ac5780631be5e7ed146102cc578063276fabb1146102ec578063430c20811461030d578063485cc9551461032057600080fd5b806301ffc9a7146102215780630328075514610249578063081812fc1461026c57806313af403514610297575b600080fd5b61023461022f366004612c9d565b6105b0565b60405190151581526020015b60405180910390f35b61025c610257366004612d0b565b610638565b6040516102409493929190612dfe565b61027f61027a366004612e3c565b61065b565b6040516001600160a01b039091168152602001610240565b6102aa6102a5366004612e6a565b610760565b005b6102bf6102ba366004612d0b565b6107d1565b6040516102409190612e87565b6102df6102da366004612edb565b6107f0565b6040516102409190612f12565b6102ff6102fa366004612f25565b61091b565b604051908152602001610240565b61023461031b366004612f66565b61098f565b6102aa61032e366004612f92565b610aa2565b6102aa610341366004612fcb565b610bf5565b610234610354366004612e3c565b610e51565b61027f610367366004612e3c565b610e5c565b61037f61037a366004613036565b610e67565b604051610240929190613058565b6102ff61039b366004612e6a565b610f97565b6102aa611095565b6102ff6103b6366004612e6a565b6110a9565b6102bf6103c936600461307d565b611118565b6103e16103dc366004612fcb565b6114f0565b60405161024094939291906131bb565b61027f6116e6565b61040c610407366004612d0b565b611714565b60405161024093929190613208565b61042e610429366004612fcb565b611734565b60405161024093929190613234565b6102df604051806040016040528060118152602001702aa7299d10283937bc3c902932b0b232b960791b81525081565b61027f61047b366004612e3c565b6118bd565b61049361048e366004612f25565b61198b565b6040516102409190613277565b61027f6104ae366004612e3c565b611a7f565b6104c66104c1366004612d0b565b611b05565b6040516102409291906132d9565b6102df6104e23660046132fe565b611ce1565b6102df6104f5366004612e6a565b611cfb565b6102df6105083660046132fe565b611d6f565b61052061051b366004612f25565b611d89565b6040516102409190613371565b6102df61053b366004612e3c565b611e37565b61023461054e366004612f92565b611f09565b6102aa610561366004612fcb565b611f54565b6102aa610574366004612e6a565b612018565b6102df604051806040016040528060058152602001640302e352e360dc1b81525081565b6102aa6105ab366004613384565b612085565b60006001600160e01b031982166362526e6360e01b14806105e157506001600160e01b03198216636fa624af60e11b145b806105fc57506001600160e01b031982166308da864d60e31b145b8061061757506001600160e01b03198216638584880360e01b145b8061063257506301ffc9a760e01b6001600160e01b03198316145b92915050565b6000806060806106498787876120d8565b93509350935093505b93509350935093565b60006106668261233a565b61067257506000919050565b61067b826123d2565b6106f25760665460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa1580156106c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106ed91906133bd565b610632565b60655460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa15801561073c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061063291906133bd565b600061076a6116e6565b6001600160a01b0316146107c55760405162461bcd60e51b815260206004820152601e60248201527f50726f78795265616465723a204f574e45525f414c52454144595f534554000060448201526064015b60405180910390fd5b6107ce81612419565b50565b60606107e66107e0848661346a565b83612495565b90505b9392505050565b60606107fb826123d2565b1561088057606554604051631be5e7ed60e01b81526001600160a01b0390911690631be5e7ed9061083490879087908790600401613547565b600060405180830381865afa158015610851573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261087991908101906135b0565b90506107e9565b600061088b83612617565b90506001600160a01b0381163b1561091357604051631be5e7ed60e01b81526001600160a01b03821690631be5e7ed906108cd90889088908890600401613547565b600060405180830381865afa92505050801561090b57506040513d6000823e601f3d908101601f1916820160405261090891908101906135b0565b60015b156109135791505b509392505050565b60655460405163276fabb160e01b81526000916001600160a01b03169063276fabb19061094e908690869060040161366c565b602060405180830381865afa15801561096b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613680565b600061099a8261233a565b6109a657506000610632565b6109af826123d2565b610a2d5760665460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a04573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a289190613699565b6107e9565b60655460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a7e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613699565b600054610100900460ff1615808015610ac25750600054600160ff909116105b80610adc5750303b158015610adc575060005460ff166001145b610b3f5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107bc565b6000805460ff191660011790558015610b62576000805461ff0019166101001790555b606580546001600160a01b038086166001600160a01b0319928316179092556066805492851692909116919091179055610b9a61268a565b610ba261268a565b610baa6126b1565b8015610bf0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b610bfd6126e1565b828114610c4c5760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107bc565b60005b83811015610e4a5760006068868684818110610c6d57610c6d6136bb565b9050602002810190610c7f91906136d1565b604051610c8d929190613717565b908152604051908190036020019020541115610cf1576068858583818110610cb757610cb76136bb565b9050602002810190610cc991906136d1565b604051610cd7929190613717565b90815260200160405180910390206000610cf19190612c18565b60005b838383818110610d0657610d066136bb565b9050602002810190610d189190613727565b9050811015610ddc576068868684818110610d3557610d356136bb565b9050602002810190610d4791906136d1565b604051610d55929190613717565b9081526020016040518091039020848484818110610d7557610d756136bb565b9050602002810190610d879190613727565b83818110610d9757610d976136bb565b9050602002810190610da991906136d1565b82546001810184556000938452602090932090920191610dc991836137f8565b5080610dd4816138cd565b915050610cf4565b507fb2b57b54285120d17f49f2490a39ef791441fd0ad1e6b6818c23262bf91f061c858583818110610e1057610e106136bb565b9050602002810190610e2291906136d1565b604051610e309291906138e6565b60405180910390a180610e42816138cd565b915050610c4f565b5050505050565b60006106328261233a565b600061063282612740565b606080610e73836123d2565b15610ef95760655460405163672b9f8160e01b815260048101869052602481018590526001600160a01b039091169063672b9f8190604401600060405180830381865afa158015610ec8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610ef091908101906138fa565b91509150610f90565b6000610f0484612617565b90506001600160a01b0381163b15610f8e5760405163672b9f8160e01b815260048101869052602481018590526001600160a01b0382169063672b9f8190604401600060405180830381865afa925050508015610f8357506040513d6000823e601f3d908101601f19168201604052610f8091908101906138fa565b60015b15610f8e5790935091505b505b9250929050565b6065546040516370a0823160e01b81526001600160a01b03838116600483015260009283929116906370a0823190602401602060405180830381865afa158015610fe5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110099190613680565b6066549091506001600160a01b031615610632576066546040516370a0823160e01b81526001600160a01b038581166004830152909116906370a0823190602401602060405180830381865afa158015611067573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061108b9190613680565b6107e9908261395d565b61109d6126e1565b6110a76000612419565b565b606554604051633f1ba3cf60e11b81526001600160a01b0383811660048301526000921690637e37479e90602401602060405180830381865afa1580156110f4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190613680565b606060006067868660405161112e929190613717565b9081526020016040518091039020805461114790613770565b80601f016020809104026020016040519081016040528092919081815260200182805461117390613770565b80156111c05780601f10611195576101008083540402835291602001916111c0565b820191906000526020600020905b8154815290600101906020018083116111a357829003601f168201915b5050505050905080516000036111d657506114e8565b6000604051806040016040528060068152602001653a37b5b2b71760d11b81525090506000604051806040016040528060088152602001672e6164647265737360c01b81525090506000604051806040016040528060018152602001601760f91b815250905060008385838c8c868d8d8a60405160200161125f99989796959493929190613970565b6040516020818303038152906040529050600060688260405161128291906139f3565b9081526020016040518091039020805480602002602001604051908101604052809291908181526020016000905b8282101561135c5783829060005260206000200180546112cf90613770565b80601f01602080910402602001604051908101604052809291908181526020018280546112fb90613770565b80156113485780601f1061131d57610100808354040283529160200191611348565b820191906000526020600020905b81548152906001019060200180831161132b57829003601f168201915b5050505050815260200190600101906112b0565b50505050905080516003611370919061395d565b6001600160401b03811115611387576113876133da565b6040519080825280602002602001820160405280156113ba57816020015b60608152602001906001900390816113a55790505b50965081876000815181106113d1576113d16136bb565b602002602001018190525060005b815181101561143e578181815181106113fa576113fa6136bb565b602002602001015188826001611410919061395d565b81518110611420576114206136bb565b60200260200101819052508080611436906138cd565b9150506113df565b508486848d8d8860405160200161145a96959493929190613a0f565b6040516020818303038152906040528782516001611478919061395d565b81518110611488576114886136bb565b60200260200101819052508486856040516020016114a893929190613a72565b60405160208183030381529060405287825160026114c6919061395d565b815181106114d6576114d66136bb565b60200260200101819052505050505050505b949350505050565b6060808080846001600160401b0381111561150d5761150d6133da565b604051908082528060200260200182016040528015611536578160200160208202803683370190505b509350846001600160401b03811115611551576115516133da565b60405190808252806020026020018201604052801561157a578160200160208202803683370190505b509250846001600160401b03811115611595576115956133da565b6040519080825280602002602001820160405280156115c857816020015b60608152602001906001900390816115b35790505b509150846001600160401b038111156115e3576115e36133da565b60405190808252806020026020018201604052801561161657816020015b60608152602001906001900390816116015790505b50905060005b858110156116da57611647898989898581811061163b5761163b6136bb565b905060200201356120d8565b888581518110611659576116596136bb565b60200260200101888681518110611672576116726136bb565b6020026020010188878151811061168b5761168b6136bb565b602002602001018888815181106116a4576116a46136bb565b6020908102919091010193909352929091526001600160a01b0392831690915291169052806116d2816138cd565b91505061161c565b50945094509450949050565b7fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c8121905546001600160a01b031690565b6000806060611724868686612761565b9250925092505b93509350939050565b60608080836001600160401b03811115611750576117506133da565b604051908082528060200260200182016040528015611779578160200160208202803683370190505b509250836001600160401b03811115611794576117946133da565b6040519080825280602002602001820160405280156117bd578160200160208202803683370190505b509150836001600160401b038111156117d8576117d86133da565b60405190808252806020026020018201604052801561180b57816020015b60608152602001906001900390816117f65790505b50905060005b848110156118b25761183c8888888885818110611830576118306136bb565b90506020020135612761565b86848151811061184e5761184e6136bb565b60200260200101868581518110611867576118676136bb565b60200260200101868681518110611880576118806136bb565b60209081029190910101929092526001600160a01b0392831690915291169052806118aa816138cd565b915050611811565b509450945094915050565b606554604051634f558e7960e01b8152600481018390526000916001600160a01b031690634f558e7990602401602060405180830381865afa158015611907573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061192b9190613699565b156119415750506065546001600160a01b031690565b6066546001600160a01b03161580159061196d575060006119618361296c565b6001600160a01b031614155b156119835750506066546001600160a01b031690565b506000919050565b6060816001600160401b038111156119a5576119a56133da565b6040519080825280602002602001820160405280156119d857816020015b60608152602001906001900390816119c35790505b50905060005b82811015611a7857611a48308585848181106119fc576119fc6136bb565b9050602002810190611a0e91906136d1565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061299e92505050565b828281518110611a5a57611a5a6136bb565b60200260200101819052508080611a70906138cd565b9150506119de565b5092915050565b6000611a8a8261233a565b611a9657506000919050565b611a9f826123d2565b611ad45760665460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb906024016106ac565b60655460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb9060240161071f565b606080836001600160401b03811115611b2057611b206133da565b604051908082528060200260200182016040528015611b5357816020015b6060815260200190600190039081611b3e5790505b509150836001600160401b03811115611b6e57611b6e6133da565b604051908082528060200260200182016040528015611ba157816020015b6060815260200190600190039081611b8c5790505b509050611bad836123d2565b15611c345760655460405163170b5fa560e31b81526001600160a01b039091169063b85afd2890611be690889088908890600401613ab5565b600060405180830381865afa158015611c03573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611c2b9190810190613b72565b91509150611cd9565b6000611c3f84612617565b90506001600160a01b0381163b15158015611c5957508415155b15611cd75760405163170b5fa560e31b81526001600160a01b0382169063b85afd2890611c8e90899089908990600401613ab5565b600060405180830381865afa925050508015611ccc57506040513d6000823e601f3d908101601f19168201604052611cc99190810190613b72565b60015b15611cd75790935091505b505b935093915050565b6060611cf08686868686612a92565b979650505050505050565b606554604051632fafb1ad60e21b81526001600160a01b038381166004830152606092169063bebec6b4906024015b600060405180830381865afa158015611d47573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261063291908101906135b0565b6060611d7e8686868686612a92565b509695505050505050565b6060816001600160401b03811115611da357611da36133da565b604051908082528060200260200182016040528015611dcc578160200160208202803683370190505b50905060005b82811015611a7857611dfb848483818110611def57611def6136bb565b90506020020135612740565b828281518110611e0d57611e0d6136bb565b6001600160a01b039092166020928302919091019091015280611e2f816138cd565b915050611dd2565b6060611e428261233a565b611e5a57505060408051602081019091526000815290565b611e63826123d2565b611ed85760665460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401600060405180830381865afa158015611eb0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106ed91908101906135b0565b60655460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401611d2a565b60405162461bcd60e51b815260206004820152601f60248201527f50726f78795265616465723a20554e535550504f525445445f4d4554484f440060448201526000906064016107bc565b611f5c6126e1565b828114611fab5760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107bc565b60005b83811015610e4a57612006858583818110611fcb57611fcb6136bb565b9050602002810190611fdd91906136d1565b858585818110611fef57611fef6136bb565b905060200281019061200191906136d1565b612b3e565b80612010816138cd565b915050611fae565b6120206126e1565b6001600160a01b0381166107c55760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107bc565b61208d6126e1565b60005b83811015610e4a576120c68585838181106120ad576120ad6136bb565b90506020028101906120bf91906136d1565b8585612b3e565b806120d0816138cd565b915050612090565b600080606080856001600160401b038111156120f6576120f66133da565b60405190808252806020026020018201604052801561212957816020015b60608152602001906001900390816121145790505b509150856001600160401b03811115612144576121446133da565b60405190808252806020026020018201604052801561217757816020015b60608152602001906001900390816121625790505b509050612183856123d2565b156122845760655460405163b3f9e4cb60e01b8152600481018790526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa1580156121d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121f591906133bd565b935061220085612bad565b60655460405163170b5fa560e31b81529194506001600160a01b03169063b85afd2890612235908a908a908a90600401613ab5565b600060405180830381865afa158015612252573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261227a9190810190613b72565b9092509050610652565b61228d85612617565b93506122988561296c565b92506001600160a01b0384163b151580156122b4575060008251115b156106525760405163170b5fa560e31b81526001600160a01b0385169063b85afd28906122e9908a908a908a90600401613ab5565b600060405180830381865afa92505050801561232757506040513d6000823e601f3d908101601f191682016040526123249190810190613b72565b60015b1561065257909250905093509350935093565b6000612345826123d2565b6123645760006123548361296c565b6001600160a01b03161415610632565b606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e79906024015b602060405180830381865afa1580156123ae573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190613699565b6066546000906001600160a01b031615806106325750606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401612391565b60006124236116e6565b9050817fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c812190580546001600160a01b0319166001600160a01b03928316179055604051838216918316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b606082516001600160401b038111156124b0576124b06133da565b6040519080825280602002602001820160405280156124e357816020015b60608152602001906001900390816124ce5790505b5090506124ef826123d2565b1561257257606554604051630dec660d60e11b81526001600160a01b0390911690631bd8cc1a906125269086908690600401613bcb565b600060405180830381865afa158015612543573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261256b9190810190613bed565b9050610632565b600061257d83612617565b90506001600160a01b0381163b15158015612599575060008451115b15611a7857604051630dec660d60e11b81526001600160a01b03821690631bd8cc1a906125cc9087908790600401613bcb565b600060405180830381865afa92505050801561260a57506040513d6000823e601f3d908101601f191682016040526126079190810190613bed565b60015b15611a7857949350505050565b60665460405163b3f9e4cb60e01b8152600481018390526000916001600160a01b03169063b3f9e4cb906024015b602060405180830381865afa92505050801561267e575060408051601f3d908101601f1916820190925261267b918101906133bd565b60015b61063257506000919050565b600054610100900460ff166110a75760405162461bcd60e51b81526004016107bc90613c21565b600054610100900460ff166126d85760405162461bcd60e51b81526004016107bc90613c21565b6110a733612419565b336126ea6116e6565b6001600160a01b0316146110a75760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107bc565b600061274b826123d2565b612758576106ed8261296c565b61063282612bad565b6000806060846001600160401b0381111561277e5761277e6133da565b6040519080825280602002602001820160405280156127b157816020015b606081526020019060019003908161279c5790505b5090506127bd846123d2565b156128bb5760655460405163b3f9e4cb60e01b8152600481018690526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561280b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061282f91906133bd565b925061283a84612bad565b606554604051630dec660d60e11b81529193506001600160a01b031690631bd8cc1a9061286f90899089908990600401613c6c565b600060405180830381865afa15801561288c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526128b49190810190613bed565b905061172b565b6128c484612617565b92506128cf8461296c565b91506001600160a01b0383163b151580156128e957508415155b1561172b57604051630dec660d60e11b81526001600160a01b03841690631bd8cc1a9061291e90899089908990600401613c6c565b600060405180830381865afa92505050801561295c57506040513d6000823e601f3d908101601f191682016040526129599190810190613bed565b60015b1561172b57905093509350939050565b6066546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401612645565b60606001600160a01b0383163b612a065760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b60648201526084016107bc565b600080846001600160a01b031684604051612a2191906139f3565b600060405180830381855af49150503d8060008114612a5c576040519150601f19603f3d011682016040523d82523d6000602084013e612a61565b606091505b5091509150612a898282604051806060016040528060278152602001613c8160279139612bdf565b95945050505050565b6060806000612aa388888888611118565b90506000612ab18286612495565b905060005b8151811015612b31576000828281518110612ad357612ad36136bb565b6020026020010151511115612b1f57828181518110612af457612af46136bb565b60200260200101519350818181518110612b1057612b106136bb565b60200260200101519450612b31565b80612b29816138cd565b915050612ab6565b5050509550959350505050565b818160678686604051612b52929190613717565b90815260200160405180910390209182612b6d9291906137f8565b507f0bf4b04a0f6d7d0800284e1abb0f58f795c0a25b9088634b6ab847be51001dec8484604051612b9f9291906138e6565b60405180910390a150505050565b6065546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401612645565b60608315612bee5750816107e9565b825115612bfe5782518084602001fd5b8160405162461bcd60e51b81526004016107bc9190612f12565b50805460008255906000526020600020908101906107ce91905b80821115612c4f576000612c468282612c53565b50600101612c32565b5090565b508054612c5f90613770565b6000825580601f10612c6f575050565b601f0160209004906000526020600020908101906107ce91905b80821115612c4f5760008155600101612c89565b600060208284031215612caf57600080fd5b81356001600160e01b0319811681146107e957600080fd5b60008083601f840112612cd957600080fd5b5081356001600160401b03811115612cf057600080fd5b6020830191508360208260051b8501011115610f9057600080fd5b600080600060408486031215612d2057600080fd5b83356001600160401b03811115612d3657600080fd5b612d4286828701612cc7565b909790965060209590950135949350505050565b60005b83811015612d71578181015183820152602001612d59565b50506000910152565b60008151808452612d92816020860160208601612d56565b601f01601f19169290920160200192915050565b600082825180855260208086019550808260051b84010181860160005b84811015612df157601f19868403018952612ddf838351612d7a565b98840198925090830190600101612dc3565b5090979650505050505050565b6001600160a01b03858116825284166020820152608060408201819052600090612e2a90830185612da6565b8281036060840152611cf08185612da6565b600060208284031215612e4e57600080fd5b5035919050565b6001600160a01b03811681146107ce57600080fd5b600060208284031215612e7c57600080fd5b81356107e981612e55565b6020815260006107e96020830184612da6565b60008083601f840112612eac57600080fd5b5081356001600160401b03811115612ec357600080fd5b602083019150836020828501011115610f9057600080fd5b600080600060408486031215612ef057600080fd5b83356001600160401b03811115612f0657600080fd5b612d4286828701612e9a565b6020815260006107e96020830184612d7a565b60008060208385031215612f3857600080fd5b82356001600160401b03811115612f4e57600080fd5b612f5a85828601612cc7565b90969095509350505050565b60008060408385031215612f7957600080fd5b8235612f8481612e55565b946020939093013593505050565b60008060408385031215612fa557600080fd5b8235612fb081612e55565b91506020830135612fc081612e55565b809150509250929050565b60008060008060408587031215612fe157600080fd5b84356001600160401b0380821115612ff857600080fd5b61300488838901612cc7565b9096509450602087013591508082111561301d57600080fd5b5061302a87828801612cc7565b95989497509550505050565b6000806040838503121561304957600080fd5b50508035926020909101359150565b60408152600061306b6040830185612d7a565b8281036020840152612a898185612d7a565b6000806000806040858703121561309357600080fd5b84356001600160401b03808211156130aa57600080fd5b6130b688838901612e9a565b909650945060208701359150808211156130cf57600080fd5b5061302a87828801612e9a565b600081518084526020808501945080840160005b838110156131155781516001600160a01b0316875295820195908201906001016130f0565b509495945050505050565b60008282518085526020808601955060058183821b8501018287016000805b868110156131ac57601f1988850381018c5283518051808752908801908887019080891b88018a01865b8281101561319557858a8303018452613183828651612d7a565b948c0194938c01939150600101613169565b509e8a019e9750505093870193505060010161313f565b50919998505050505050505050565b6080815260006131ce60808301876130dc565b82810360208401526131e081876130dc565b905082810360408401526131f48186613120565b90508281036060840152611cf08185613120565b6001600160a01b03848116825283166020820152606060408201819052600090612a8990830184612da6565b60608152600061324760608301866130dc565b828103602084015261325981866130dc565b9050828103604084015261326d8185613120565b9695505050505050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156132cc57603f198886030184526132ba858351612d7a565b9450928501929085019060010161329e565b5092979650505050505050565b6040815260006132ec6040830185612da6565b8281036020840152612a898185612da6565b60008060008060006060868803121561331657600080fd5b85356001600160401b038082111561332d57600080fd5b61333989838a01612e9a565b9097509550602088013591508082111561335257600080fd5b5061335f88828901612e9a565b96999598509660400135949350505050565b6020815260006107e960208301846130dc565b6000806000806040858703121561339a57600080fd5b84356001600160401b03808211156133b157600080fd5b6130b688838901612cc7565b6000602082840312156133cf57600080fd5b81516107e981612e55565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715613418576134186133da565b604052919050565b60006001600160401b03821115613439576134396133da565b5060051b60200190565b60006001600160401b0382111561345c5761345c6133da565b50601f01601f191660200190565b600061347d61347884613420565b6133f0565b80848252602080830192508560051b85013681111561349b57600080fd5b855b818110156135125780356001600160401b038111156134bc5760008081fd5b870136601f8201126134ce5760008081fd5b80356134dc61347882613443565b81815236868385010111156134f15760008081fd5b8186840187830137600091810186019190915286525093820193820161349d565b50919695505050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60408152600061355b60408301858761351e565b9050826020830152949350505050565b600082601f83011261357c57600080fd5b815161358a61347882613443565b81815284602083860101111561359f57600080fd5b6114e8826020830160208701612d56565b6000602082840312156135c257600080fd5b81516001600160401b038111156135d857600080fd5b6114e88482850161356b565b60008383855260208086019550808560051b8301018460005b87811015612df157848303601f19018952813536889003601e1901811261362357600080fd5b870184810190356001600160401b0381111561363e57600080fd5b80360382131561364d57600080fd5b61365885828461351e565b9a86019a94505050908301906001016135fd565b6020815260006107e66020830184866135e4565b60006020828403121561369257600080fd5b5051919050565b6000602082840312156136ab57600080fd5b815180151581146107e957600080fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e198436030181126136e857600080fd5b8301803591506001600160401b0382111561370257600080fd5b602001915036819003821315610f9057600080fd5b8183823760009101908152919050565b6000808335601e1984360301811261373e57600080fd5b8301803591506001600160401b0382111561375857600080fd5b6020019150600581901b3603821315610f9057600080fd5b600181811c9082168061378457607f821691505b6020821081036137a457634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115610bf057600081815260208120601f850160051c810160208610156137d15750805b601f850160051c820191505b818110156137f0578281556001016137dd565b505050505050565b6001600160401b0383111561380f5761380f6133da565b6138238361381d8354613770565b836137aa565b6000601f841160018114613857576000851561383f5750838201355b600019600387901b1c1916600186901b178355610e4a565b600083815260209020601f19861690835b828110156138885786850135825560209485019460019092019101613868565b50868210156138a55760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b634e487b7160e01b600052601160045260246000fd5b6000600182016138df576138df6138b7565b5060010190565b6020815260006107e660208301848661351e565b6000806040838503121561390d57600080fd5b82516001600160401b038082111561392457600080fd5b6139308683870161356b565b9350602085015191508082111561394657600080fd5b506139538582860161356b565b9150509250929050565b80820180821115610632576106326138b7565b60008a51613982818460208f01612d56565b8a5190830190613996818360208f01612d56565b8a519101906139a9818360208e01612d56565b0187898237600090880190815286516139c6818360208b01612d56565b0184868237600090850190815283516139e3818360208801612d56565b019b9a5050505050505050505050565b60008251613a05818460208701612d56565b9190910192915050565b60008751613a21818460208c01612d56565b875190830190613a35818360208c01612d56565b8751910190613a48818360208b01612d56565b018486823760009085019081528351613a65818360208801612d56565b0198975050505050505050565b60008451613a84818460208901612d56565b845190830190613a98818360208901612d56565b8451910190613aab818360208801612d56565b0195945050505050565b6040808252810183905260006001600160fb1b03841115613ad557600080fd5b8360051b808660608501376020830193909352500160600192915050565b600082601f830112613b0457600080fd5b81516020613b1461347883613420565b82815260059290921b84018101918181019086841115613b3357600080fd5b8286015b84811015611d7e5780516001600160401b03811115613b565760008081fd5b613b648986838b010161356b565b845250918301918301613b37565b60008060408385031215613b8557600080fd5b82516001600160401b0380821115613b9c57600080fd5b613ba886838701613af3565b93506020850151915080821115613bbe57600080fd5b5061395385828601613af3565b604081526000613bde6040830185612da6565b90508260208301529392505050565b600060208284031215613bff57600080fd5b81516001600160401b03811115613c1557600080fd5b6114e884828501613af3565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60408152600061355b6040830185876135e456fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a","storage":{}},"0xc2110388dd54228ae0a834119457ede938bf0b57":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061021e5760003560e01c80638da5cb5b11610123578063acf1a841116100ab578063d547741f1161006f578063d547741f14610682578063f14fcbc8146106a2578063f23a6e61146106c2578063f2fde38b146106e2578063ffa1ad741461070257600080fd5b8063acf1a841146105e0578063bc197c8114610600578063c0c53b8b14610620578063cf01585314610640578063d53913931461066057600080fd5b8063a0e3aef1116100f2578063a0e3aef114610534578063a217fddf14610554578063a3f4df7e14610569578063a4247400146105a0578063aa271e1a146105c057600080fd5b80638da5cb5b146104c157806391d14854146104df578063983b2d56146104ff578063986502751461051f57600080fd5b80635fc1964f116101a65780636ccbae5f116101755780636ccbae5f14610439578063715018a61461045957806371e2a6571461046e57806381c81d351461048e57806383e7f6ff146104a157600080fd5b80635fc1964f146103ae578063634486da146103ce5780636352211e146103e15780636a8be89e1461041957600080fd5b80632f2ff15d116101ed5780632f2ff15d146103035780633092afd51461032557806336568abe14610345578063423f6cef14610365578063572b6c051461038557600080fd5b806301ffc9a71461022a578063150b7a021461025f5780631bf7e13e14610298578063248a9ca3146102c557600080fd5b3661022557005b600080fd5b34801561023657600080fd5b5061024a6102453660046125f2565b610733565b60405190151581526020015b60405180910390f35b34801561026b57600080fd5b5061027f61027a366004612672565b610779565b6040516001600160e01b03199091168152602001610256565b3480156102a457600080fd5b506102b86102b33660046126e4565b6108cb565b60405161025691906127a4565b3480156102d157600080fd5b506102f56102e03660046127b7565b600090815260fb602052604090206001015490565b604051908152602001610256565b34801561030f57600080fd5b5061032361031e3660046127d0565b610997565b005b34801561033157600080fd5b50610323610340366004612800565b6109c1565b34801561035157600080fd5b506103236103603660046127d0565b6109d5565b34801561037157600080fd5b5061032361038036600461281d565b610a68565b34801561039157600080fd5b5061024a6103a0366004612800565b6001600160a01b0316301490565b3480156103ba57600080fd5b506103236103c936600461288f565b610bd9565b6103236103dc366004612800565b610c21565b3480156103ed57600080fd5b506104016103fc3660046127b7565b610ce4565b6040516001600160a01b039091168152602001610256565b34801561042557600080fd5b50610323610434366004612800565b610cef565b34801561044557600080fd5b506102f56104543660046127b7565b610d38565b34801561046557600080fd5b50610323610d7e565b34801561047a57600080fd5b5061032361048936600461288f565b610d92565b61032361049c366004612800565b610dda565b3480156104ad57600080fd5b506102f56104bc366004612934565b610e57565b3480156104cd57600080fd5b506097546001600160a01b0316610401565b3480156104eb57600080fd5b5061024a6104fa3660046127d0565b610efa565b34801561050b57600080fd5b5061032361051a366004612800565b610f25565b34801561052b57600080fd5b50610323610f36565b34801561054057600080fd5b506102f561054f366004612a5c565b610f50565b34801561056057600080fd5b506102f5600081565b34801561057557600080fd5b506102b86040518060400160405280600b81526020016a454e5320437573746f647960a81b81525081565b3480156105ac57600080fd5b5061024a6105bb3660046126e4565b610ffc565b3480156105cc57600080fd5b5061024a6105db366004612800565b61104f565b3480156105ec57600080fd5b506103236105fb366004612934565b611069565b34801561060c57600080fd5b5061027f61061b366004612b35565b611222565b34801561062c57600080fd5b5061032361063b366004612bf3565b6112db565b34801561064c57600080fd5b5061032361065b366004612c3e565b611485565b34801561066c57600080fd5b506102f56000805160206133f583398151915281565b34801561068e57600080fd5b5061032361069d3660046127d0565b611592565b3480156106ae57600080fd5b506103236106bd3660046127b7565b6115b7565b3480156106ce57600080fd5b5061027f6106dd366004612d20565b61162b565b3480156106ee57600080fd5b506103236106fd366004612800565b6116bc565b34801561070e57600080fd5b506102b860405180604001604052806005815260200164302e312e3360d81b81525081565b60006001600160e01b03198216630a85bd0160e11b148061076457506001600160e01b03198216630271189760e51b145b806107735750610773826116d8565b92915050565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004546000906001600160a01b0316806107b061170d565b6001600160a01b0316036108a957600080806107ce86880188612d9b565b9250925092506107dd8361171c565b6001600160a01b03841663b88d4fde30600080516020613415833981519152546040516001600160a01b03909116908c9061082390879030906000908b90602001612dfc565b6040516020818303038152906040526040518563ffffffff1660e01b81526004016108519493929190612e3c565b600060405180830381600087803b15801561086b57600080fd5b505af115801561087f573d6000803e3d6000fd5b5050505061089561088f8261174e565b846117d3565b50630a85bd0160e11b93506108c292505050565b6040516344e7d94960e01b815260040160405180910390fd5b95945050505050565b606060005a90506108dd858585610ffc565b6108fa57604051638baa579f60e01b815260040160405180910390fd5b61098c61090a6020870187612800565b3060408801358461091e60608b018b612e6f565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061185e92505050565b9150505b9392505050565b600082815260fb60205260409020600101546109b28161193f565b6109bc8383611950565b505050565b6109c96119d7565b6109d281611a50565b50565b6109dd61170d565b6001600160a01b0316816001600160a01b031614610a5a5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b610a648282611a68565b5050565b80610a7161170d565b6001600160a01b0316610a8382611aed565b6001600160a01b031614610ac55780610a9a61170d565b604051637ea58b1160e01b815260048101929092526001600160a01b03166024820152604401610a51565b610ace82611c03565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052600090610b22906060015b6040516020818303038152906040528051906020012090565b80546001600160a01b0319166001600160a01b0392909216919091179055600060008051602061341583398151915254604051637921219560e11b81523060048201526001600160a01b038681166024830152604482018690526001606483015260a06084830152600060a48301529091169150819063f242432a9060c401600060405180830381600087803b158015610bbb57600080fd5b505af1158015610bcf573d6000803e3d6000fd5b5050505050505050565b610be16119d7565b60005b8151811015610a6457610c0f828281518110610c0257610c02612eb5565b6020026020010151611a50565b80610c1981612ee1565b915050610be4565b610c2c6105db61170d565b610c485760405162461bcd60e51b8152600401610a5190612efa565b6001600160a01b038116610c9e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a51565b610ca781611c1c565b610caf610f36565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610a64573d6000803e3d6000fd5b600061077382611aed565b610cf76119d7565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c500480546001600160a01b0319166001600160a01b0392909216919091179055565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a838156020820152908101829052600090610d7790606001610b09565b5492915050565b610d866119d7565b610d906000611c34565b565b610d9a6119d7565b60005b8151811015610a6457610dc8828281518110610dbb57610dbb612eb5565b6020026020010151611c1c565b80610dd281612ee1565b915050610d9d565b610de56105db61170d565b610e015760405162461bcd60e51b8152600401610a5190612efa565b6001600160a01b038116610ca75760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a51565b6000805160206133d5833981519152546040516383e7f6ff60e01b81526000916001600160a01b031690829082906383e7f6ff90610e9d90899089908990600401612f58565b6040805180830381865afa158015610eb9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610edd9190612f7c565b60208101518151919250610ef091612fca565b9695505050505050565b600091825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610f2d6119d7565b6109d281611c1c565b610d906000805160206133f583398151915261036061170d565b6000805160206133d5833981519152546000906001600160a01b0316806365a69dcf8d85610f7e5730610f80565b8d5b8d8d8d8d8d8d8d6040518a63ffffffff1660e01b8152600401610fab9998979695949392919061306e565b602060405180830381865afa158015610fc8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fec91906130de565b9c9b505050505050505050505050565b600061104761100a856130f7565b3085858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611c8692505050565b949350505050565b60006107736000805160206133f583398151915283610efa565b6110746105db61170d565b6110905760405162461bcd60e51b8152600401610a5190612efa565b6002603354036110e25760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a51565b60026033556000805160206133d5833981519152546040516383e7f6ff60e01b81526001600160a01b039091169060009082906383e7f6ff9061112d90889088908890600401612f58565b6040805180830381865afa158015611149573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061116d9190612f7c565b6020810151815191925061118091612fca565b4710156111a05760405163050205f960e01b815260040160405180910390fd5b816001600160a01b031663acf1a841826020015183600001516111c39190612fca565b8787876040518563ffffffff1660e01b81526004016111e493929190612f58565b6000604051808303818588803b1580156111fd57600080fd5b505af1158015611211573d6000803e3d6000fd5b505060016033555050505050505050565b6000600080516020613415833981519152546001600160a01b031661124561170d565b6001600160a01b03161461126c576040516344e7d94960e01b815260040160405180910390fd5b600061127a83850185612800565b90506112858161171c565b60005b878110156112c4576112b28989838181106112a5576112a5612eb5565b90506020020135836117d3565b806112bc81612ee1565b915050611288565b5063bc197c8160e01b9a9950505050505050505050565b600054610100900460ff16158080156112fb5750600054600160ff909116105b806113155750303b158015611315575060005460ff166001145b6113785760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610a51565b6000805460ff19166001179055801561139b576000805461ff0019166101001790555b6000805160206133d583398151915280546001600160a01b038087166001600160a01b03199283161790925560008051602061341583398151915280548684169083161790557ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004805492851692909116919091179055611419611dc5565b611421611df3565b611429611df3565b611431611e1a565b611439611e51565b801561147f576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6114906105db61170d565b6114ac5760405162461bcd60e51b8152600401610a5190612efa565b6002603354036114fe5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a51565b600260338190555060006115478c8c8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061174e92505050565b905061155281611c03565b6115708c8c846115625730611564565b8c5b8c8c8c8c8c8c8c611e8a565b8161157f5761157f818b6117d3565b5050600160335550505050505050505050565b600082815260fb60205260409020600101546115ad8161193f565b6109bc8383611a68565b60006000805160206133d583398151915254604051631e29f97960e31b8152600481018490526001600160a01b039091169150819063f14fcbc890602401600060405180830381600087803b15801561160f57600080fd5b505af1158015611623573d6000803e3d6000fd5b505050505050565b6000600080516020613415833981519152546001600160a01b031661164e61170d565b6001600160a01b031614611675576040516344e7d94960e01b815260040160405180910390fd5b6001600160a01b038616156116a957600061169283850185612800565b905061169d8161171c565b6116a786826117d3565b505b5063f23a6e6160e01b9695505050505050565b6116c46119d7565b6116cd81611fd5565b6109d260008261204b565b60006001600160e01b03198216637965db0b60e01b148061077357506301ffc9a760e01b6001600160e01b0319831614610773565b6000611717612055565b905090565b6001600160a01b0381166109d25760405163b20f76e360e01b81526001600160a01b0382166004820152602401610a51565b60007f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae60001b826040516020016117859190613195565b604051602081830303815290604052805190602001206040516020016117b5929190918252602082015260400190565b60408051601f19818403018152919052805160209091012092915050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052819061181190606001610b09565b80546001600160a01b0319166001600160a01b039283161790556040519082169083907f45aa97e368889fb3527c1db60c59c2ae91e82f21778613449e46d4208c1c4b1290600090a35050565b606061186985612073565b600080876001600160a01b0316866118838b8a89896120d9565b6040516118909190613195565b60006040518083038160008787f1925050503d80600081146118ce576040519150601f19603f3d011682016040523d82523d6000602084013e6118d3565b606091505b5090925090506118e4603f876131b1565b5a116118f2576118f26131d3565b61193282826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c4544000000000000815250612109565b9998505050505050505050565b6109d28161194b61170d565b612142565b61195a8282610efa565b610a6457600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff1916600117905561199361170d565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6119df61170d565b6001600160a01b03166119fa6097546001600160a01b031690565b6001600160a01b031614610d905760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a51565b6109d26000805160206133f583398151915282611592565b611a728282610efa565b15610a6457600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff19169055611aa961170d565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101829052600090611b2c90606001610b09565b546001600160a01b0316905080611b595760405163124bad6360e31b815260048101839052602401610a51565b30600080516020613415833981519152546040516331a9108f60e11b8152600481018590526001600160a01b0390911690636352211e90602401602060405180830381865afa158015611bb0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bd491906131e9565b6001600160a01b031614611bfe576040516303b673fd60e21b815260048101839052602401610a51565b919050565b303303611c13576109d2816121a6565b6109d281612073565b6109d26000805160206133f58339815191528261204b565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015611ccd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cf191906130de565b90506000611d9f866060015180519060200120868860200151604051602001611d3f9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b9050818660200151148015610ef057508551610ef0906001600160a01b031682866121d0565b600054610100900460ff16611dec5760405162461bcd60e51b8152600401610a5190613206565b6001603355565b600054610100900460ff16610d905760405162461bcd60e51b8152600401610a5190613206565b600054610100900460ff16611e415760405162461bcd60e51b8152600401610a5190613206565b610d90611e4c61170d565b611c34565b600054610100900460ff16611e785760405162461bcd60e51b8152600401610a5190613206565b610d906000611e8561170d565b61204b565b6000805160206133d5833981519152546040516383e7f6ff60e01b81526001600160a01b039091169060009082906383e7f6ff90611ed0908f908f908e90600401612f58565b6040805180830381865afa158015611eec573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f109190612f7c565b60208101518151919250611f2391612fca565b471015611f435760405163050205f960e01b815260040160405180910390fd5b816001600160a01b03166374694a2b82602001518360000151611f669190612fca565b8e8e8e8e8e8e8e8e8e8e6040518c63ffffffff1660e01b8152600401611f959a99989796959493929190613251565b6000604051808303818588803b158015611fae57600080fd5b505af1158015611fc2573d6000803e3d6000fd5b5050505050505050505050505050505050565b611fdd6119d7565b6001600160a01b0381166120425760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610a51565b6109d281611c34565b610a648282611950565b600030330361206b575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290526000906060016040516020818303038152906040528051906020012090506120c88190565b546120d4906001612fca565b905550565b60608285856040516020016120f0939291906132c3565b6040516020818303038152906040529050949350505050565b60608315612118575081610990565b8251156121285782518084602001fd5b8160405162461bcd60e51b8152600401610a5191906127a4565b61214c8282610efa565b610a6457612164816001600160a01b03166014612312565b61216f836020612312565b604051602001612180929190613302565b60408051601f198184030181529082905262461bcd60e51b8252610a51916004016127a4565b6121ae6124ad565b81146109d257604051635637b6af60e11b815260048101829052602401610a51565b60008060006121df85856124c0565b909250905060008160048111156121f8576121f8613377565b1480156122165750856001600160a01b0316826001600160a01b0316145b1561222657600192505050610990565b600080876001600160a01b0316631626ba7e60e01b888860405160240161224e92919061338d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161228c9190613195565b600060405180830381855afa9150503d80600081146122c7576040519150601f19603f3d011682016040523d82523d6000602084013e6122cc565b606091505b50915091508180156122df575080516020145b801561230657508051630b135d3f60e11b9061230490830160209081019084016130de565b145b98975050505050505050565b606060006123218360026133a6565b61232c906002612fca565b6001600160401b0381111561234357612343612849565b6040519080825280601f01601f19166020018201604052801561236d576020820181803683370190505b509050600360fc1b8160008151811061238857612388612eb5565b60200101906001600160f81b031916908160001a905350600f60fb1b816001815181106123b7576123b7612eb5565b60200101906001600160f81b031916908160001a90535060006123db8460026133a6565b6123e6906001612fca565b90505b600181111561245e576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061241a5761241a612eb5565b1a60f81b82828151811061243057612430612eb5565b60200101906001600160f81b031916908160001a90535060049490941c93612457816133bd565b90506123e9565b5083156109905760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610a51565b60003033036120705750601f1936013590565b60008082516041036124f65760208301516040840151606085015160001a6124ea87828585612505565b945094505050506124fe565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561253c57506000905060036125e9565b8460ff16601b1415801561255457508460ff16601c14155b1561256557506000905060046125e9565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156125b9573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166125e2576000600192509250506125e9565b9150600090505b94509492505050565b60006020828403121561260457600080fd5b81356001600160e01b03198116811461099057600080fd5b6001600160a01b03811681146109d257600080fd5b60008083601f84011261264357600080fd5b5081356001600160401b0381111561265a57600080fd5b6020830191508360208285010111156124fe57600080fd5b60008060008060006080868803121561268a57600080fd5b85356126958161261c565b945060208601356126a58161261c565b93506040860135925060608601356001600160401b038111156126c757600080fd5b6126d388828901612631565b969995985093965092949392505050565b6000806000604084860312156126f957600080fd5b83356001600160401b038082111561271057600080fd5b908501906080828803121561272457600080fd5b9093506020850135908082111561273a57600080fd5b5061274786828701612631565b9497909650939450505050565b60005b8381101561276f578181015183820152602001612757565b50506000910152565b60008151808452612790816020860160208601612754565b601f01601f19169290920160200192915050565b6020815260006109906020830184612778565b6000602082840312156127c957600080fd5b5035919050565b600080604083850312156127e357600080fd5b8235915060208301356127f58161261c565b809150509250929050565b60006020828403121561281257600080fd5b81356109908161261c565b6000806040838503121561283057600080fd5b823561283b8161261c565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561288757612887612849565b604052919050565b600060208083850312156128a257600080fd5b82356001600160401b03808211156128b957600080fd5b818501915085601f8301126128cd57600080fd5b8135818111156128df576128df612849565b8060051b91506128f084830161285f565b818152918301840191848101908884111561290a57600080fd5b938501935b8385101561230657843592506129248361261c565b828252938501939085019061290f565b60008060006040848603121561294957600080fd5b83356001600160401b0381111561295f57600080fd5b61296b86828701612631565b909790965060209590950135949350505050565b60006001600160401b0383111561299857612998612849565b6129ab601f8401601f191660200161285f565b90508281528383830111156129bf57600080fd5b828260208301376000602084830101529392505050565b600082601f8301126129e757600080fd5b6109908383356020850161297f565b60008083601f840112612a0857600080fd5b5081356001600160401b03811115612a1f57600080fd5b6020830191508360208260051b85010111156124fe57600080fd5b80358015158114611bfe57600080fd5b803561ffff81168114611bfe57600080fd5b6000806000806000806000806000806101208b8d031215612a7c57600080fd5b8a356001600160401b0380821115612a9357600080fd5b612a9f8e838f016129d6565b9b5060208d01359150612ab18261261c565b90995060408c0135985060608c0135975060808c013590612ad18261261c565b90965060a08c01359080821115612ae757600080fd5b50612af48d828e016129f6565b9096509450612b07905060c08c01612a3a565b9250612b1560e08c01612a4a565b9150612b246101008c01612a3a565b90509295989b9194979a5092959850565b60008060008060008060008060a0898b031215612b5157600080fd5b8835612b5c8161261c565b97506020890135612b6c8161261c565b965060408901356001600160401b0380821115612b8857600080fd5b612b948c838d016129f6565b909850965060608b0135915080821115612bad57600080fd5b612bb98c838d016129f6565b909650945060808b0135915080821115612bd257600080fd5b50612bdf8b828c01612631565b999c989b5096995094979396929594505050565b600080600060608486031215612c0857600080fd5b8335612c138161261c565b92506020840135612c238161261c565b91506040840135612c338161261c565b809150509250925092565b60008060008060008060008060008060006101208c8e031215612c6057600080fd5b6001600160401b03808d351115612c7657600080fd5b612c838e8e358f01612631565b909c509a50612c9560208e013561261c565b60208d0135995060408d0135985060608d01359750612cb760808e013561261c565b60808d013596508060a08e01351115612ccf57600080fd5b50612ce08d60a08e01358e016129f6565b9095509350612cf160c08d01612a3a565b9250612cff60e08d01612a4a565b9150612d0e6101008d01612a3a565b90509295989b509295989b9093969950565b60008060008060008060a08789031215612d3957600080fd5b8635612d448161261c565b95506020870135612d548161261c565b9450604087013593506060870135925060808701356001600160401b03811115612d7d57600080fd5b612d8989828a01612631565b979a9699509497509295939492505050565b600080600060608486031215612db057600080fd5b8335612dbb8161261c565b92506020840135612dcb8161261c565b915060408401356001600160401b03811115612de657600080fd5b612df2868287016129d6565b9150509250925092565b608081526000612e0f6080830187612778565b6001600160a01b03958616602084015261ffff949094166040830152509216606090920191909152919050565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090610ef090830184612778565b6000808335601e19843603018112612e8657600080fd5b8301803591506001600160401b03821115612ea057600080fd5b6020019150368190038213156124fe57600080fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201612ef357612ef3612ecb565b5060010190565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b604081526000612f6c604083018587612f2f565b9050826020830152949350505050565b600060408284031215612f8e57600080fd5b604051604081018181106001600160401b0382111715612fb057612fb0612849565b604052825181526020928301519281019290925250919050565b8082018082111561077357610773612ecb565b81835260006020808501808196508560051b810191508460005b878110156130615782840389528135601e1988360301811261301857600080fd5b870185810190356001600160401b0381111561303357600080fd5b80360382131561304257600080fd5b61304d868284612f2f565b9a87019a9550505090840190600101612ff7565b5091979650505050505050565b60006101008083526130828184018d612778565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a085015290506130bc818789612fdd565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b6000602082840312156130f057600080fd5b5051919050565b60006080823603121561310957600080fd5b604051608081016001600160401b03828210818311171561312c5761312c612849565b816040528435915061313d8261261c565b8183526020850135602084015260408501356040840152606085013591508082111561316857600080fd5b50830136601f82011261317a57600080fd5b6131893682356020840161297f565b60608301525092915050565b600082516131a7818460208701612754565b9190910192915050565b6000826131ce57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b6000602082840312156131fb57600080fd5b81516109908161261c565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60006101008083526132668184018d8f612f2f565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a085015290506132a0818789612fdd565b94151560c0840152505061ffff9190911660e09091015298975050505050505050565b600084516132d5818460208901612754565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081526000835161333a816017850160208801612754565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835161336b816028840160208801612754565b01602801949350505050565b634e487b7160e01b600052602160045260246000fd5b8281526040602082015260006110476040830184612778565b808202811582820484141761077357610773612ecb565b6000816133cc576133cc612ecb565b50600019019056fe412386de53449251cbf7ce1f4c6a038bf9c0746e62d331b08ef0c3fa7d0ab6729f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a660793a5062d506d35cc8f1beda67ee5028c16bfcd9c923d5bfc439c04bd929b1a164736f6c6343000811000a","storage":{"0x0":"0xff"}},"0xc58206842e4030a3b2cabc78780ae7635173c533":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106102325760003560e01c80637c69eae211610130578063b5466669116100b8578063d284d97a1161007c578063d284d97a14610d4e578063d8d3cc6e14610dbc578063e67ca8a314610e3f578063e985e9c514610e5c578063ebf0c71714610e8a57610232565b8063b5466669146109ce578063b88d4fde14610a51578063c29b52f914610b15578063c87b56dd14610c5e578063ce9fb82b14610c7b57610232565b8063a22cb465116100ff578063a22cb4651461090b578063a7fc7a0714610939578063ab3b87fe1461095f578063b3f9e4cb1461098b578063b429afeb146109a857610232565b80637c69eae21461076457806395d89b41146107e75780639d743989146107ef5780639e5be9a51461087d57610232565b806342842e0e116101be5780635cbe1112116101825780635cbe11121461061d5780636352211e1461069257806366ac3b68146106af57806368b62d32146106b757806370a082311461073e57610232565b806342842e0e146104ed57806342966c6814610523578063430c208114610540578063538361a71461056c57806357aac5741461058f57610232565b8063081812fc11610205578063081812fc146103fa578063095ea7b3146104335780632392c1891461045f57806323b872dd1461048b5780632525d06a146104c157610232565b806301ffc9a71461023757806302759c37146102725780630467e014146102aa57806306fdde031461037d575b600080fd5b61025e6004803603602081101561024d57600080fd5b50356001600160e01b031916610e92565b604080519115158252519081900360200190f35b6102a86004803603606081101561028857600080fd5b506001600160a01b03813581169160208101359091169060400135610eb1565b005b6102a8600480360360808110156102c057600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156102ef57600080fd5b82018360208201111561030157600080fd5b803590602001918460018302840111600160201b8311171561032257600080fd5b919390929091602081019035600160201b81111561033f57600080fd5b82018360208201111561035157600080fd5b803590602001918460018302840111600160201b8311171561037257600080fd5b509092509050610ed3565b610385610f62565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103bf5781810151838201526020016103a7565b50505050905090810190601f1680156103ec5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6104176004803603602081101561041057600080fd5b5035610f84565b604080516001600160a01b039092168252519081900360200190f35b6102a86004803603604081101561044957600080fd5b506001600160a01b038135169060200135610fe6565b6102a86004803603604081101561047557600080fd5b506001600160a01b0381351690602001356110f7565b6102a8600480360360608110156104a157600080fd5b506001600160a01b03813581169160208101359091169060400135611115565b6102a8600480360360408110156104d757600080fd5b506001600160a01b03813516906020013561115a565b6102a86004803603606081101561050357600080fd5b506001600160a01b0381358116916020810135909116906040013561117a565b6102a86004803603602081101561053957600080fd5b5035611195565b61025e6004803603604081101561055657600080fd5b506001600160a01b0381351690602001356111e6565b6102a86004803603604081101561058257600080fd5b50803590602001356111f9565b6102a8600480360360808110156105a557600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156105df57600080fd5b8201836020820111156105f157600080fd5b803590602001918460018302840111600160201b8311171561061257600080fd5b50909250905061124f565b6102a86004803603604081101561063357600080fd5b81359190810190604081016020820135600160201b81111561065457600080fd5b82018360208201111561066657600080fd5b803590602001918460018302840111600160201b8311171561068757600080fd5b5090925090506112be565b610417600480360360208110156106a857600080fd5b5035611320565b6102a861137a565b61072c600480360360408110156106cd57600080fd5b81359190810190604081016020820135600160201b8111156106ee57600080fd5b82018360208201111561070057600080fd5b803590602001918460018302840111600160201b8311171561072157600080fd5b509092509050611385565b60408051918252519081900360200190f35b61072c6004803603602081101561075457600080fd5b50356001600160a01b03166113cf565b6102a86004803603606081101561077a57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156107a957600080fd5b8201836020820111156107bb57600080fd5b803590602001918460018302840111600160201b831117156107dc57600080fd5b509092509050611437565b61038561149a565b6102a86004803603608081101561080557600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561083f57600080fd5b82018360208201111561085157600080fd5b803590602001918460018302840111600160201b8311171561087257600080fd5b5090925090506114b6565b6102a86004803603608081101561089357600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156108cd57600080fd5b8201836020820111156108df57600080fd5b803590602001918460018302840111600160201b8311171561090057600080fd5b509092509050611506565b6102a86004803603604081101561092157600080fd5b506001600160a01b0381351690602001351515611564565b6102a86004803603602081101561094f57600080fd5b50356001600160a01b0316611630565b6102a86004803603604081101561097557600080fd5b506001600160a01b03813516906020013561164b565b610417600480360360208110156109a157600080fd5b5035611672565b61025e600480360360208110156109be57600080fd5b50356001600160a01b0316611694565b6102a8600480360360608110156109e457600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610a1357600080fd5b820183602082011115610a2557600080fd5b803590602001918460018302840111600160201b83111715610a4657600080fd5b5090925090506116a7565b6102a860048036036080811015610a6757600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b811115610aa157600080fd5b820183602082011115610ab357600080fd5b803590602001918460018302840111600160201b83111715610ad457600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506116fa945050505050565b6102a8600480360360a0811015610b2b57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b811115610b6557600080fd5b820183602082011115610b7757600080fd5b803590602001918460018302840111600160201b83111715610b9857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b811115610bea57600080fd5b820183602082011115610bfc57600080fd5b803590602001918460018302840111600160201b83111715610c1d57600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061174c945050505050565b61038560048036036020811015610c7457600080fd5b5035611797565b6102a860048036036080811015610c9157600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610cc057600080fd5b820183602082011115610cd257600080fd5b803590602001918460018302840111600160201b83111715610cf357600080fd5b919390929091602081019035600160201b811115610d1057600080fd5b820183602082011115610d2257600080fd5b803590602001918460018302840111600160201b83111715610d4357600080fd5b509092509050611892565b6102a860048036036020811015610d6457600080fd5b810190602081018135600160201b811115610d7e57600080fd5b820183602082011115610d9057600080fd5b803590602001918460018302840111600160201b83111715610db157600080fd5b50909250905061191b565b6102a860048036036060811015610dd257600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610e0157600080fd5b820183602082011115610e1357600080fd5b803590602001918460018302840111600160201b83111715610e3457600080fd5b50909250905061199e565b6102a860048036036020811015610e5557600080fd5b50356119f3565b61025e60048036036040811015610e7257600080fd5b506001600160a01b0381358116916020013516611a05565b61072c611a33565b6001600160e01b03191660009081526020819052604090205460ff1690565b610eba33611694565b610ec357600080fd5b610ece838383611a57565b505050565b610edc33611694565b610ee557600080fd5b610f5a868686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8a018190048102820181019092528881529250889150879081908401838280828437600092019190915250611a9f92505050565b505050505050565b6040805180820190915260078152662e63727970746f60c81b60208201525b90565b6000610f8f82611ac9565b610fca5760405162461bcd60e51b815260040180806020018281038252602c815260200180612848602c913960400191505060405180910390fd5b506000908152600360205260409020546001600160a01b031690565b6000610ff182611320565b9050806001600160a01b0316836001600160a01b031614156110445760405162461bcd60e51b81526004018080602001828103825260218152602001806128bf6021913960400191505060405180910390fd5b336001600160a01b038216148061106057506110608133611a05565b61109b5760405162461bcd60e51b815260040180806020018281038252603881526020018061279c6038913960400191505060405180910390fd5b60008281526003602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b806111023382611ae6565b61110b57600080fd5b610ece8383611b82565b61111f3382611ae6565b610ec35760405162461bcd60e51b81526004018080602001828103825260318152602001806128e06031913960400191505060405180910390fd5b61116333611694565b61116c57600080fd5b6111768282611b82565b5050565b610ece838383604051806020016040528060008152506116fa565b61119f3382611ae6565b6111da5760405162461bcd60e51b81526004018080602001828103825260308152602001806129366030913960400191505060405180910390fd5b6111e381611bf8565b50565b60006111f28383611ae6565b9392505050565b6000828152600860205260409020546001600160a01b0316331461121c57600080fd5b6040518290829033907ff10fc780c78f994a214c79a2ae8d8b7bfe7cc3f0f935a8f05a29525e71d7f12790600090a45050565b61125833611694565b61126157600080fd5b61126c858585611a57565b6112ae85858585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611c7992505050565b6112b757600080fd5b5050505050565b826112c93382611ae6565b6112d257600080fd5b61131a6113158585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b611bf8565b50505050565b6000818152600260205260408120546001600160a01b0316806113745760405162461bcd60e51b81526004018080602001828103825260298152602001806127fe6029913960400191505060405180910390fd5b92915050565b61138333611e64565b565b60006113c78484848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b949350505050565b60006001600160a01b0382166114165760405162461bcd60e51b815260040180806020018281038252602a8152602001806127d4602a913960400191505060405180910390fd5b6001600160a01b038216600090815260046020526040902061137490611e75565b826114423382611ae6565b61144b57600080fd5b6112b7858585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250611a9f915050565b604080518082019091526002815261155160f21b602082015290565b6112b785858585858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201829052506040805160208101909152908152925061174c915050565b826115113382611ae6565b61151a57600080fd5b610f5a868661155f8787878080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b611a57565b6001600160a01b0382163314156115c2576040805162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604482015290519081900360640190fd5b3360008181526005602090815260408083206001600160a01b03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b61163933611694565b61164257600080fd5b6111e381611e79565b806116563382611ae6565b61165f57600080fd5b610ece61166b83611320565b8484611e8a565b6000818152600860205260408120546001600160a01b03168061137457600080fd5b600061137460018363ffffffff611fce16565b6116b033611694565b6116b957600080fd5b61131a848484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061203592505050565b611705848484611115565b61171184848484611c79565b61131a5760405162461bcd60e51b815260040180806020018281038252603281526020018061271a6032913960400191505060405180910390fd5b826117573382611ae6565b61176057600080fd5b600061176c8585611dac565b9050611779878783611a57565b61178587878386611c79565b61178e57600080fd5b50505050505050565b60606117a282611ac9565b6117ab57600080fd5b600760066000848152602001908152602001600020604051602001808380546001816001161561010002031660029004801561181e5780601f106117fc57610100808354040283529182019161181e565b820191906000526020600020905b81548152906001019060200180831161180a575b5050828054600181600116156101000203166002900480156118775780601f10611855576101008083540402835291820191611877565b820191906000526020600020905b815481529060010190602001808311611863575b505060408051601f1981840301815291905295945050505050565b8461189d3382611ae6565b6118a657600080fd5b61178e878787878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b018190048102820181019092528981529250899150889081908401838280828437600092019190915250611a9f92505050565b61192433611694565b61192d57600080fd5b611939600783836125cf565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b828260405180806020018281038252848482818152602001925080828437600083820152604051601f909101601f19169092018290039550909350505050a15050565b826119a93382611ae6565b6119b257600080fd5b6112b7858585858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061203592505050565b6119fc33611694565b6111da57600080fd5b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b7f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f90565b611a62838383611e8a565b6000818152600860205260409020546001600160a01b031615610ece57600090815260086020526040902080546001600160a01b03191690555050565b611aaa848484612035565b611ac0600085611aba8686611dac565b84611c79565b61131a57600080fd5b6000908152600260205260409020546001600160a01b0316151590565b6000611af182611ac9565b611b2c5760405162461bcd60e51b815260040180806020018281038252602c815260200180612770602c913960400191505060405180910390fd5b6000611b3783611320565b9050806001600160a01b0316846001600160a01b03161480611b725750836001600160a01b0316611b6784610f84565b6001600160a01b0316145b806113c757506113c78185611a05565b611b8b81611ac9565b611b9457600080fd5b6040516001600160a01b0383169082907fb1b34e6d89e1c584527d447f4b29ffad55635a37edeeb564939a6483401b31a590600090a3600090815260086020526040902080546001600160a01b0319166001600160a01b0392909216919091179055565b611c018161220f565b6000818152600860205260409020546001600160a01b031615611c3b57600081815260086020526040902080546001600160a01b03191690555b60008181526006602052604090205460026000196101006001841615020190911604156111e35760008181526006602052604081206111e39161264d565b6000611c8d846001600160a01b0316612221565b611c99575060016113c7565b604051630a85bd0160e11b815233600482018181526001600160a01b03888116602485015260448401879052608060648501908152865160848601528651600095928a169463150b7a029490938c938b938b939260a4019060208501908083838e5b83811015611d13578181015183820152602001611cfb565b50505050905090810190601f168015611d405780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015611d6257600080fd5b505af1158015611d76573d6000803e3d6000fd5b505050506040513d6020811015611d8c57600080fd5b50516001600160e01b031916630a85bd0160e11b14915050949350505050565b6000815160001415611dbd57600080fd5b82826040516020018082805190602001908083835b60208310611df15780518252601f199092019160209182019101611dd2565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040528051906020012060405160200180838152602001828152602001925050506040516020818303038152906040528051906020012060001c905092915050565b6111e360018263ffffffff61222716565b5490565b6111e360018263ffffffff61228e16565b826001600160a01b0316611e9d82611320565b6001600160a01b031614611ee25760405162461bcd60e51b81526004018080602001828103825260298152602001806128966029913960400191505060405180910390fd5b6001600160a01b038216611f275760405162461bcd60e51b815260040180806020018281038252602481526020018061274c6024913960400191505060405180910390fd5b611f308161230f565b6001600160a01b0383166000908152600460205260409020611f519061234a565b6001600160a01b0382166000908152600460205260409020611f7290612361565b60008181526002602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60006001600160a01b0382166120155760405162461bcd60e51b81526004018080602001828103825260228152602001806128746022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b60006120418383611dac565b905061204d848261236a565b815161205857600080fd5b61206181611ac9565b61206a57600080fd5b606082600660008681526020019081526020016000206040516020018083805190602001908083835b602083106120b25780518252601f199092019160209182019101612093565b6001836020036101000a03801982511681845116808217855250505050505090500180601760f91b815250600101828054600181600116156101000203166002900480156121375780601f10612115576101008083540402835291820191612137565b820191906000526020600020905b815481529060010190602001808311612123575b505060408051601f19818403018152918152600087815260066020908152919020825192965061216d9550935085019150612691565b50817fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952826040518080602001828103825283818151815260200191508051906020019080838360005b838110156121ce5781810151838201526020016121b6565b50505050905090810190601f1680156121fb5780820380516001836020036101000a031916815260200191505b509250505060405180910390a25050505050565b6111e361221b82611320565b8261249b565b3b151590565b6122318282611fce565b61226c5760405162461bcd60e51b81526004018080602001828103825260218152602001806128276021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff19169055565b6122988282611fce565b156122ea576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b6000818152600360205260409020546001600160a01b0316156111e357600090815260036020526040902080546001600160a01b0319169055565b805461235d90600163ffffffff61257216565b9055565b80546001019055565b6001600160a01b0382166123c5576040805162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f2061646472657373604482015290519081900360640190fd5b6123ce81611ac9565b15612420576040805162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000604482015290519081900360640190fd5b600081815260026020908152604080832080546001600160a01b0319166001600160a01b03871690811790915583526004909152902061245f90612361565b60405181906001600160a01b038416906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b816001600160a01b03166124ae82611320565b6001600160a01b0316146124f35760405162461bcd60e51b81526004018080602001828103825260258152602001806129116025913960400191505060405180910390fd5b6124fc8161230f565b6001600160a01b038216600090815260046020526040902061251d9061234a565b60008181526002602052604080822080546001600160a01b0319169055518291906001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6000828211156125c9576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106126105782800160ff1982351617855561263d565b8280016001018555821561263d579182015b8281111561263d578235825591602001919060010190612622565b506126499291506126ff565b5090565b50805460018160011615610100020316600290046000825580601f1061267357506111e3565b601f0160209004906000526020600020908101906111e391906126ff565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106126d257805160ff191683800117855561263d565b8280016001018555821561263d579182015b8281111561263d5782518255916020019190600101906126e4565b610f8191905b80821115612649576000815560010161270556fe4552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c654552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e526f6c65733a206163636f756e7420697320746865207a65726f20616464726573734552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f7665644552433732313a206275726e206f6620746f6b656e2074686174206973206e6f74206f776e4552433732314275726e61626c653a2063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564a265627a7a72315820fb6a1b26cc352dbb05e6627fd530bbb44114ac3a349f30d1f071136c656d20dc64736f6c634300050c0032","storage":{"0x7":"0x68747470733a2f2f6578616d706c652e636f6d2f000000000000000000000028","0xbdf39e9e65b2355b1b0b06df799c09159f0ab90f06a9bb2153f5de7d9b0ea81":"0x1","0x1a306d3e9bf29128dee78d8d16c9f378a11bbdf917a9caf986fc6e60846e37e7":"0x63727970746f000000000000000000000000000000000000000000000000000c","0x42c63635470f1fb1d6d4b6441c413cb435b1ebb6fedd1896dd5e25d1399147dd":"0x1","0x605d7a0bb2b20c4004d356eb969ff104dcca62360aa356247072f5e0df6472e3":"0xdead","0x67be87c3ff9960ca1e9cfac5cab2ff4747269cf9ed20c9b7306235ac35a491c5":"0x1","0x70f464f95f9ab7aba03264fd4cac1711d774d3703ce74217180264d4efc2105f":"0x1","0x76a72f26a108e6f3f687141f5f42d21d65857c03cb1b01aa1284f9a9ccd085da":"0x1","0x9562381dfbc2d8b8b66e765249f330164b73e329e5f01670660643571d1974df":"0x1","0x9f23d2403fb64167582d316b1bc5b35a6ed48524341ab24947c71df77304b29e":"0x1","0xf7815fccbf112960a73756e185887fedcb9fc64ca0a16cc5923b7960ed780800":"0x1"}},"0xc965345edac823d56812cd20a10316233916a605":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101c6575f3560e01c806395d89b41116100fe578063c87b56dd1161009e578063e985e9c51161006e578063e985e9c5146103d4578063f2fde38b1461040f578063f6a74ed714610422578063fca247ac14610435575f80fd5b8063c87b56dd14610377578063d6e4fa861461038a578063da8c229e146103a9578063ddf7fcb0146103cb575f80fd5b8063a7fc7a07116100d9578063a7fc7a0714610334578063b88d4fde14610347578063c1a287e21461035a578063c475abff14610364575f80fd5b806395d89b411461030657806396e494e81461030e578063a22cb46514610321575f80fd5b80633f15457f116101695780636352211e116101445780636352211e146102c757806370a08231146102da578063715018a6146102ed5780638da5cb5b146102f5575f80fd5b80633f15457f1461028e57806342842e0e146102a15780634e543b26146102b4575f80fd5b8063095ea7b3116101a4578063095ea7b3146102325780630e297b451461024757806323b872dd1461026857806328ed4f6c1461027b575f80fd5b806301ffc9a7146101ca57806306fdde03146101f2578063081812fc14610207575b5f80fd5b6101dd6101d83660046117dd565b610448565b60405190151581526020015b60405180910390f35b6101fa610499565b6040516101e99190611845565b61021a610215366004611857565b610528565b6040516001600160a01b0390911681526020016101e9565b610245610240366004611882565b61054d565b005b61025a6102553660046118ac565b610666565b6040519081526020016101e9565b6102456102763660046118e1565b61067b565b61024561028936600461190e565b6106ac565b60085461021a906001600160a01b031681565b6102456102af3660046118e1565b6107be565b6102456102c236600461193c565b6107d8565b61021a6102d5366004611857565b610848565b61025a6102e836600461193c565b610869565b6102456108ed565b6006546001600160a01b031661021a565b6101fa610900565b6101dd61031c366004611857565b61090f565b61024561032f366004611957565b610934565b61024561034236600461193c565b610943565b61024561035536600461199b565b610996565b61025a6276a70081565b61025a610372366004611a74565b6109ce565b6101fa610385366004611857565b610b52565b61025a610398366004611857565b5f9081526007602052604090205490565b6101dd6103b736600461193c565b600a6020525f908152604090205460ff1681565b61025a60095481565b6101dd6103e2366004611a94565b6001600160a01b039182165f90815260056020908152604080832093909416825291909152205460ff1690565b61024561041d36600461193c565b610bc2565b61024561043036600461193c565b610c3b565b61025a6104433660046118ac565b610c8b565b5f6001600160e01b031982166301ffc9a760e01b148061047857506001600160e01b031982166380ac58cd60e01b145b8061049357506001600160e01b03198216630a3b53db60e21b145b92915050565b60605f80546104a790611ac0565b80601f01602080910402602001604051908101604052809291908181526020018280546104d390611ac0565b801561051e5780601f106104f55761010080835404028352916020019161051e565b820191905f5260205f20905b81548152906001019060200180831161050157829003601f168201915b5050505050905090565b5f61053282610c99565b505f908152600460205260409020546001600160a01b031690565b5f61055782610cf7565b9050806001600160a01b0316836001600160a01b0316036105c95760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084015b60405180910390fd5b336001600160a01b03821614806105e557506105e581336103e2565b6106575760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016105c0565b6106618383610d56565b505050565b5f6106738484845f610dc3565b949350505050565b6106853382610fc7565b6106a15760405162461bcd60e51b81526004016105c090611af8565b610661838383611040565b6008546009546040516302571be360e01b8152600481019190915230916001600160a01b0316906302571be390602401602060405180830381865afa1580156106f7573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061071b9190611b45565b6001600160a01b03161461072d575f80fd5b6107373383610fc7565b61073f575f80fd5b6008546009546040516306ab592360e01b81526004810191909152602481018490526001600160a01b038381166044830152909116906306ab5923906064016020604051808303815f875af115801561079a573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106619190611b60565b61066183838360405180602001604052805f815250610996565b6107e06111a2565b600854600954604051630c4b7b8560e11b815260048101919091526001600160a01b03838116602483015290911690631896f70a906044015f604051808303815f87803b15801561082f575f80fd5b505af1158015610841573d5f803e3d5ffd5b5050505050565b5f818152600760205260408120544210610860575f80fd5b61049382610cf7565b5f6001600160a01b0382166108d25760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b60648201526084016105c0565b506001600160a01b03165f9081526003602052604090205490565b6108f56111a2565b6108fe5f6111fc565b565b6060600180546104a790611ac0565b5f81815260076020526040812054429061092d906276a70090611b77565b1092915050565b61093f33838361124d565b5050565b61094b6111a2565b6001600160a01b0381165f818152600a6020526040808220805460ff19166001179055517f0a8bb31534c0ed46f380cb867bd5c803a189ced9a764e30b3a4991a9901d74749190a250565b6109a03383610fc7565b6109bc5760405162461bcd60e51b81526004016105c090611af8565b6109c88484848461131a565b50505050565b6008546009546040516302571be360e01b815260048101919091525f9130916001600160a01b03909116906302571be390602401602060405180830381865afa158015610a1d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a419190611b45565b6001600160a01b031614610a53575f80fd5b335f908152600a602052604090205460ff16610a6d575f80fd5b5f838152600760205260409020544290610a8b906276a70090611b77565b1015610a95575f80fd5b610aa26276a70083611b77565b5f848152600760205260409020546276a70090610ac0908590611b77565b610aca9190611b77565b11610ad3575f80fd5b5f8381526007602052604081208054849290610af0908490611b77565b90915550505f838152600760205260409081902054905184917f9b87a00e30f1ac65d898f070f8a3488fe60517182d0a2098e1b4b93a54aa9bd691610b3791815260200190565b60405180910390a250505f9081526007602052604090205490565b6060610b5d82610c99565b5f610b7260408051602081019091525f815290565b90505f815111610b905760405180602001604052805f815250610bbb565b80610b9a8461134d565b604051602001610bab929190611b96565b6040516020818303038152906040525b9392505050565b610bca6111a2565b6001600160a01b038116610c2f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016105c0565b610c38816111fc565b50565b610c436111a2565b6001600160a01b0381165f818152600a6020526040808220805460ff19169055517f33d83959be2573f5453b12eb9d43b3499bc57d96bd2f067ba44803c859e811139190a250565b5f6106738484846001610dc3565b5f818152600260205260409020546001600160a01b0316610c385760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105c0565b5f818152600260205260408120546001600160a01b0316806104935760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105c0565b5f81815260046020526040902080546001600160a01b0319166001600160a01b0384169081179091558190610d8a82610cf7565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6008546009546040516302571be360e01b815260048101919091525f9130916001600160a01b03909116906302571be390602401602060405180830381865afa158015610e12573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e369190611b45565b6001600160a01b031614610e48575f80fd5b335f908152600a602052604090205460ff16610e62575f80fd5b610e6b8561090f565b610e73575f80fd5b610e806276a70042611b77565b6276a700610e8e8542611b77565b610e989190611b77565b11610ea1575f80fd5b610eab8342611b77565b5f868152600760209081526040808320939093556002905220546001600160a01b031615610edc57610edc856113dd565b610ee6848661146f565b8115610f6d576008546009546040516306ab592360e01b81526004810191909152602481018790526001600160a01b038681166044830152909116906306ab5923906064016020604051808303815f875af1158015610f47573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f6b9190611b60565b505b6001600160a01b038416857fb3d987963d01b2f68493b4bdb130988f157ea43070d4ad840fee0466ed9370d9610fa38642611b77565b60405190815260200160405180910390a3610fbe8342611b77565b95945050505050565b5f80610fd283610848565b9050806001600160a01b0316846001600160a01b0316148061100d5750836001600160a01b031661100284610528565b6001600160a01b0316145b8061067357506001600160a01b038082165f9081526005602090815260408083209388168352929052205460ff16610673565b826001600160a01b031661105382610cf7565b6001600160a01b0316146110795760405162461bcd60e51b81526004016105c090611bc4565b6001600160a01b0382166110db5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b60648201526084016105c0565b826001600160a01b03166110ee82610cf7565b6001600160a01b0316146111145760405162461bcd60e51b81526004016105c090611bc4565b5f81815260046020908152604080832080546001600160a01b03199081169091556001600160a01b038781168086526003855283862080545f1901905590871680865283862080546001019055868652600290945282852080549092168417909155905184937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6006546001600160a01b031633146108fe5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016105c0565b600680546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b816001600160a01b0316836001600160a01b0316036112ae5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c65720000000000000060448201526064016105c0565b6001600160a01b038381165f81815260056020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b611325848484611040565b611331848484846115f7565b6109c85760405162461bcd60e51b81526004016105c090611c09565b60605f611359836116f1565b60010190505f8167ffffffffffffffff81111561137857611378611987565b6040519080825280601f01601f1916602001820160405280156113a2576020820181803683370190505b5090508181016020015b5f19016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a85049450846113ac57509392505050565b5f6113e782610cf7565b90506113f282610cf7565b5f83815260046020908152604080832080546001600160a01b03199081169091556001600160a01b0385168085526003845282852080545f190190558785526002909352818420805490911690555192935084927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6001600160a01b0382166114c55760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f206164647265737360448201526064016105c0565b5f818152600260205260409020546001600160a01b0316156115295760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105c0565b5f818152600260205260409020546001600160a01b03161561158d5760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105c0565b6001600160a01b0382165f81815260036020908152604080832080546001019055848352600290915280822080546001600160a01b0319168417905551839291907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b5f6001600160a01b0384163b156116e957604051630a85bd0160e11b81526001600160a01b0385169063150b7a029061163a903390899088908890600401611c5b565b6020604051808303815f875af1925050508015611674575060408051601f3d908101601f1916820190925261167191810190611c97565b60015b6116cf573d8080156116a1576040519150601f19603f3d011682016040523d82523d5f602084013e6116a6565b606091505b5080515f036116c75760405162461bcd60e51b81526004016105c090611c09565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610673565b506001610673565b5f8072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b831061172f5772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef8100000000831061175b576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc10000831061177957662386f26fc10000830492506010015b6305f5e1008310611791576305f5e100830492506008015b61271083106117a557612710830492506004015b606483106117b7576064830492506002015b600a83106104935760010192915050565b6001600160e01b031981168114610c38575f80fd5b5f602082840312156117ed575f80fd5b8135610bbb816117c8565b5f5b838110156118125781810151838201526020016117fa565b50505f910152565b5f81518084526118318160208601602086016117f8565b601f01601f19169290920160200192915050565b602081525f610bbb602083018461181a565b5f60208284031215611867575f80fd5b5035919050565b6001600160a01b0381168114610c38575f80fd5b5f8060408385031215611893575f80fd5b823561189e8161186e565b946020939093013593505050565b5f805f606084860312156118be575f80fd5b8335925060208401356118d08161186e565b929592945050506040919091013590565b5f805f606084860312156118f3575f80fd5b83356118fe8161186e565b925060208401356118d08161186e565b5f806040838503121561191f575f80fd5b8235915060208301356119318161186e565b809150509250929050565b5f6020828403121561194c575f80fd5b8135610bbb8161186e565b5f8060408385031215611968575f80fd5b82356119738161186e565b915060208301358015158114611931575f80fd5b634e487b7160e01b5f52604160045260245ffd5b5f805f80608085870312156119ae575f80fd5b84356119b98161186e565b935060208501356119c98161186e565b925060408501359150606085013567ffffffffffffffff808211156119ec575f80fd5b818701915087601f8301126119ff575f80fd5b813581811115611a1157611a11611987565b604051601f8201601f19908116603f01168101908382118183101715611a3957611a39611987565b816040528281528a6020848701011115611a51575f80fd5b826020860160208301375f60208483010152809550505050505092959194509250565b5f8060408385031215611a85575f80fd5b50508035926020909101359150565b5f8060408385031215611aa5575f80fd5b8235611ab08161186e565b915060208301356119318161186e565b600181811c90821680611ad457607f821691505b602082108103611af257634e487b7160e01b5f52602260045260245ffd5b50919050565b6020808252602d908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526c1c881bdc88185c1c1c9bdd9959609a1b606082015260800190565b5f60208284031215611b55575f80fd5b8151610bbb8161186e565b5f60208284031215611b70575f80fd5b5051919050565b8082018082111561049357634e487b7160e01b5f52601160045260245ffd5b5f8351611ba78184602088016117f8565b835190830190611bbb8183602088016117f8565b01949350505050565b60208082526025908201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060408201526437bbb732b960d91b606082015260800190565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6001600160a01b03858116825284166020820152604081018390526080606082018190525f90611c8d9083018461181a565b9695505050505050565b5f60208284031215611ca7575f80fd5b8151610bbb816117c856fea164736f6c6343000818000a","storage":{"0x0":"0x0","0x1":"0x0","0x6":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x8":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0x9":"0x93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae","0x9b8bc185dce56a7ea1b27d35e40ac15dcdf9144303dfd4d8880220078bf21a2c":"0x1","0xdb5e6a17df8534b92b0c8de590f14b4fb4b5eb2c62ef1bf7a05555e354797508":"0x1","0xe1a982900207b619cb6c39be8cb5e60da1370171412fb65b5efc25e2dce3c34c":"0x1"}},"0xce4bb7dc1eb9dce75743de6a4b48534fd427ef51":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xe85541865bbb62a05064ce5c9f41cc293a8ea996","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0xd178b720229c39de617846f84cf9c8d32a63a23d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610106575f3560e01c806371017a541161009e5780639e32d3641161006e5780639e32d3641461025a578063a424740014610281578063dd6b9e2214610294578063e1c4b65a146102a7578063e35a14e5146102ba575f80fd5b806371017a541461020e5780637b103999146102215780638f0dbd25146102345780639810b69514610247575f80fd5b8063485cc955116100d9578063485cc95514610191578063572b6c05146101a457806358884432146101d05780636ccbae5f146101fb575f80fd5b8063150b7a021461010a5780631694116d1461013b5780631bf7e13e146101505780631c351a9d14610170575b5f80fd5b61011d610118366004611434565b6102e2565b6040516001600160e01b031990911681526020015b60405180910390f35b61014e6101493660046114e3565b610372565b005b61016361015e366004611549565b61040d565b6040516101329190611601565b61018361017e366004611613565b6104d6565b604051908152602001610132565b61014e61019f366004611666565b6105c3565b6101c06101b236600461169d565b6001600160a01b0316301490565b6040519015158152602001610132565b6067546101e3906001600160a01b031681565b6040516001600160a01b039091168152602001610132565b6101836102093660046116b8565b6106f8565b6101e361021c3660046116cf565b610751565b6066546101e3906001600160a01b031681565b61014e6102423660046116ef565b610791565b6101e36102553660046116cf565b610806565b6101837fd81bbfcee722494b885e891546eeac23d0eedcd44038d7a2f6ef9ec2f9e0d23981565b6101c061028f366004611549565b61085f565b6101c06102a236600461172d565b6108a8565b61014e6102b5366004611771565b61091d565b6101e36102c83660046116b8565b5f908152606560205260409020546001600160a01b031690565b6066545f906001600160a01b03166102f8610a43565b6001600160a01b031614158061032257505f848152606560205260409020546001600160a01b0316155b156103605783610330610a43565b60405163634afa0d60e01b815260048101929092526001600160a01b031660248201526044015b60405180910390fd5b50630a85bd0160e11b95945050505050565b828261037e8282610751565b6001600160a01b031661038f610a43565b6001600160a01b0316146103c057604051632cd9b44d60e11b81526004810183905260248101829052604401610357565b5f6103cb8686610806565b90505f5b87811015610402576103fa8989838181106103ec576103ec6117b0565b905060200201358387610a51565b6001016103cf565b505050505050505050565b60605f5a905061041e85858561085f565b61043b57604051638baa579f60e01b815260040160405180910390fd5b6104cb61044b602087018761169d565b3060408801358461045f60608b018b6117c4565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f92019190915250610b8492505050565b9150505b9392505050565b6067545f906001600160a01b031663aa271e1a6104f1610a43565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015610533573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105579190611807565b1580610572575030610567610a43565b6001600160a01b0316145b156105a45761057f610a43565b60405163e2c8c9d560e01b81526001600160a01b039091166004820152602401610357565b5f6105b0858585610c60565b90506105bb81610e73565b949350505050565b5f54610100900460ff16158080156105e157505f54600160ff909116105b806105fa5750303b1580156105fa57505f5460ff166001145b61065d5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610357565b5f805460ff19166001179055801561067e575f805461ff0019166101001790555b606680546001600160a01b038086166001600160a01b031992831617909255606780549285169290911691909117905580156106f3575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f9061074a906060016040516020818303038152906040528051906020012090565b5492915050565b5f80838360405160200161076f929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209150505b92915050565b828261079d8282610751565b6001600160a01b03166107ae610a43565b6001600160a01b0316146107df57604051632cd9b44d60e11b81526004810183905260248101829052604401610357565b856107e981610e73565b6107fd876107f78889610806565b86610a51565b50505050505050565b5f8060026108148585610e8f565b6040516108219190611826565b602060405180830381855afa15801561083c573d5f803e3d5ffd5b5050506040513d601f19601f820116820180604052508101906105bb9190611841565b5f6105bb61086c856118c6565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250610f1492505050565b5f805b8281101561091257846001600160a01b03166108f38585848181106108d2576108d26117b0565b905060200201355f908152606560205260409020546001600160a01b031690565b6001600160a01b03161461090a575f9150506104cf565b6001016108ab565b506001949350505050565b6067546001600160a01b031663aa271e1a610936610a43565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015610978573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061099c9190611807565b15806109b75750306109ac610a43565b6001600160a01b0316145b156109c45761057f610a43565b5f5b818110156106f357610a3a8383838181106109e3576109e36117b0565b90506020028101906109f59190611983565b610a039060208101906117c4565b858585818110610a1557610a156117b0565b9050602002810190610a279190611983565b610a3590602081019061169d565b610c60565b506001016109c6565b5f610a4c611059565b905090565b5f838152606560205260409020546001600160a01b03838116911614610ab4575f83815260656020526040908190205490516326995d8360e11b8152600481018590526001600160a01b0391821660248201529083166044820152606401610357565b5f838152606560205260409081902080546001600160a01b03191690556066549051632142170760e11b81523060048201526001600160a01b03838116602483015260448201869052909116906342842e0e906064015f604051808303815f87803b158015610b21575f80fd5b505af1158015610b33573d5f803e3d5ffd5b50505050806001600160a01b0316610b49610a43565b6001600160a01b0316847f9a471856befea1cabcd7fc8a1c4d70ea07b8ed2ee205cc361f932433542ef3fe60405160405180910390a4505050565b6060610b8f85611076565b5f80876001600160a01b031686610ba88b8a89896110db565b604051610bb59190611826565b5f604051808303815f8787f1925050503d805f8114610bef576040519150601f19603f3d011682016040523d82523d5f602084013e610bf4565b606091505b509092509050610c05603f876119bf565b5a11610c1357610c136119d2565b610c5382826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061110b565b9998505050505050505050565b5f60605f7fd81bbfcee722494b885e891546eeac23d0eedcd44038d7a2f6ef9ec2f9e0d2398686604051602001610c989291906119e6565b60405160208183030381529060405280519060200120604051602001610cc8929190918252602082015260400190565b60408051808303601f19018152828252805160209091012060028084526060840190925292505f9190816020015b6060815260200190600190039081610cf657905050905086868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920182905250855186945090925015159050610d5657610d566117b0565b6020026020010181905250604051806040016040528060038152602001621e9a5b60ea1b81525081600181518110610d9057610d906117b0565b6020908102919091018101919091525f8381526065909152604080822080546001600160a01b0319166001600160a01b03898116919091179091556067549151635cd7e3b360e01b8152911691635cd7e3b391610df891309186918991829190600401611a4d565b5f604051808303815f87803b158015610e0f575f80fd5b505af1158015610e21573d5f803e3d5ffd5b50505050846001600160a01b0316827f08717469d38a4b02325ea6637978c7952f94d3d8fc7848994f618ddbf4d637f18989604051610e61929190611aab565b60405180910390a35095945050505050565b303303610e8657610e8381611144565b50565b610e8381611076565b60605f82610e9f60016020611ad9565b60ff1660208110610eb257610eb26117b0565b1a9050610ec0600282611af2565b60ff1615610ecf576003610ed2565b60025b84604051602001610efc92919060f89290921b6001600160f81b0319168252600182015260210190565b60405160208183030381529060405291505092915050565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015610f58573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f7c9190611841565b90505f611029866060015180519060200120868860200151604051602001610fc99392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561104f5750855161104f906001600160a01b0316828661116e565b9695505050505050565b5f30330361106e575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f906060016040516020818303038152906040528051906020012090506110ca8190565b546110d6906001611b13565b905550565b60608285856040516020016110f293929190611b26565b6040516020818303038152906040529050949350505050565b6060831561111a5750816104cf565b82511561112a5782518084602001fd5b8160405162461bcd60e51b81526004016103579190611601565b61114c6112a9565b8114610e8357604051635637b6af60e11b815260048101829052602401610357565b5f805f61117b85856112bb565b90925090505f81600481111561119357611193611b64565b1480156111b15750856001600160a01b0316826001600160a01b0316145b156111c1576001925050506104cf565b5f80876001600160a01b0316631626ba7e60e01b88886040516024016111e8929190611b78565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516112269190611826565b5f60405180830381855afa9150503d805f811461125e576040519150601f19603f3d011682016040523d82523d5f602084013e611263565b606091505b5091509150818015611276575080516020145b801561129d57508051630b135d3f60e11b9061129b9083016020908101908401611841565b145b98975050505050505050565b5f3033036110735750601f1936013590565b5f8082516041036112ef576020830151604084015160608501515f1a6112e3878285856112fd565b945094505050506112f6565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561133257505f905060036113d9565b8460ff16601b1415801561134a57508460ff16601c14155b1561135a57505f905060046113d9565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156113ab573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b0381166113d3575f600192509250506113d9565b91505f90505b94509492505050565b6001600160a01b0381168114610e83575f80fd5b5f8083601f840112611406575f80fd5b50813567ffffffffffffffff81111561141d575f80fd5b6020830191508360208285010111156112f6575f80fd5b5f805f805f60808688031215611448575f80fd5b8535611453816113e2565b94506020860135611463816113e2565b935060408601359250606086013567ffffffffffffffff811115611485575f80fd5b611491888289016113f6565b969995985093965092949392505050565b5f8083601f8401126114b2575f80fd5b50813567ffffffffffffffff8111156114c9575f80fd5b6020830191508360208260051b85010111156112f6575f80fd5b5f805f805f608086880312156114f7575f80fd5b853567ffffffffffffffff81111561150d575f80fd5b611519888289016114a2565b9096509450506020860135925060408601359150606086013561153b816113e2565b809150509295509295909350565b5f805f6040848603121561155b575f80fd5b833567ffffffffffffffff80821115611572575f80fd5b9085019060808288031215611585575f80fd5b9093506020850135908082111561159a575f80fd5b506115a7868287016113f6565b9497909650939450505050565b5f5b838110156115ce5781810151838201526020016115b6565b50505f910152565b5f81518084526115ed8160208601602086016115b4565b601f01601f19169290920160200192915050565b602081525f6104cf60208301846115d6565b5f805f60408486031215611625575f80fd5b833567ffffffffffffffff81111561163b575f80fd5b611647868287016113f6565b909450925050602084013561165b816113e2565b809150509250925092565b5f8060408385031215611677575f80fd5b8235611682816113e2565b91506020830135611692816113e2565b809150509250929050565b5f602082840312156116ad575f80fd5b81356104cf816113e2565b5f602082840312156116c8575f80fd5b5035919050565b5f80604083850312156116e0575f80fd5b50508035926020909101359150565b5f805f8060808587031215611702575f80fd5b8435935060208501359250604085013591506060850135611722816113e2565b939692955090935050565b5f805f6040848603121561173f575f80fd5b833561174a816113e2565b9250602084013567ffffffffffffffff811115611765575f80fd5b6115a7868287016114a2565b5f8060208385031215611782575f80fd5b823567ffffffffffffffff811115611798575f80fd5b6117a4858286016114a2565b90969095509350505050565b634e487b7160e01b5f52603260045260245ffd5b5f808335601e198436030181126117d9575f80fd5b83018035915067ffffffffffffffff8211156117f3575f80fd5b6020019150368190038213156112f6575f80fd5b5f60208284031215611817575f80fd5b815180151581146104cf575f80fd5b5f82516118378184602087016115b4565b9190910192915050565b5f60208284031215611851575f80fd5b5051919050565b634e487b7160e01b5f52604160045260245ffd5b6040516080810167ffffffffffffffff8111828210171561188f5761188f611858565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156118be576118be611858565b604052919050565b5f608082360312156118d6575f80fd5b6118de61186c565b82356118e9816113e2565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff80821115611919575f80fd5b9085019036601f83011261192b575f80fd5b81358181111561193d5761193d611858565b61194f601f8201601f19168501611895565b91508082523684828501011115611964575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b5f8235603e19833603018112611837575f80fd5b634e487b7160e01b5f52601260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b5f826119cd576119cd611997565b500490565b634e487b7160e01b5f52600160045260245ffd5b818382375f9101908152919050565b5f8282518085526020808601955060208260051b840101602086015f5b84811015611a4057601f19868403018952611a2e8383516115d6565b98840198925090830190600101611a12565b5090979650505050505050565b6001600160a01b038616815260a0602082018190525f90611a70908301876119f5565b8281036040840152611a8281876119f5565b90508281036060840152611a9681866119f5565b91505082151560808301529695505050505050565b60208152816020820152818360408301375f818301604090810191909152601f909201601f19160101919050565b60ff828116828216039081111561078b5761078b6119ab565b5f60ff831680611b0457611b04611997565b8060ff84160691505092915050565b8082018082111561078b5761078b6119ab565b5f8451611b378184602089016115b4565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f6105bb60408301846115d656fea164736f6c6343000818000a","storage":{"0x0":"0xff"}},"0xda9e1b3e395bfb0a45f03c7f615146b9d896c959":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100b1575f3560e01c806340c10f191161006e57806340c10f191461013d57806370a082311461015257806395d89b411461017a578063a457c2d714610182578063a9059cbb14610195578063dd62ed3e146101a8575f80fd5b806306fdde03146100b5578063095ea7b3146100d357806318160ddd146100f657806323b872dd14610108578063313ce5671461011b578063395093511461012a575b5f80fd5b6100bd6101bb565b6040516100ca9190610775565b60405180910390f35b6100e66100e13660046107dc565b61024b565b60405190151581526020016100ca565b6002545b6040519081526020016100ca565b6100e6610116366004610804565b610264565b604051601281526020016100ca565b6100e66101383660046107dc565b610287565b61015061014b3660046107dc565b6102a8565b005b6100fa61016036600461083d565b6001600160a01b03165f9081526020819052604090205490565b6100bd6102b6565b6100e66101903660046107dc565b6102c5565b6100e66101a33660046107dc565b610344565b6100fa6101b636600461085d565b610351565b6060600380546101ca9061088e565b80601f01602080910402602001604051908101604052809291908181526020018280546101f69061088e565b80156102415780601f1061021857610100808354040283529160200191610241565b820191905f5260205f20905b81548152906001019060200180831161022457829003601f168201915b5050505050905090565b5f3361025881858561037b565b60019150505b92915050565b5f3361027185828561049e565b61027c858585610516565b506001949350505050565b5f336102588185856102998383610351565b6102a391906108c6565b61037b565b6102b282826106b8565b5050565b6060600480546101ca9061088e565b5f33816102d28286610351565b9050838110156103375760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b61027c828686840361037b565b5f33610258818585610516565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b6001600160a01b0383166103dd5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161032e565b6001600160a01b03821661043e5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161032e565b6001600160a01b038381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b5f6104a98484610351565b90505f19811461051057818110156105035760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161032e565b610510848484840361037b565b50505050565b6001600160a01b03831661057a5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161032e565b6001600160a01b0382166105dc5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161032e565b6001600160a01b0383165f90815260208190526040902054818110156106535760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161032e565b6001600160a01b038481165f81815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3610510565b6001600160a01b03821661070e5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640161032e565b8060025f82825461071f91906108c6565b90915550506001600160a01b0382165f81815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b5f602080835283518060208501525f5b818110156107a157858101830151858201604001528201610785565b505f604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146107d7575f80fd5b919050565b5f80604083850312156107ed575f80fd5b6107f6836107c1565b946020939093013593505050565b5f805f60608486031215610816575f80fd5b61081f846107c1565b925061082d602085016107c1565b9150604084013590509250925092565b5f6020828403121561084d575f80fd5b610856826107c1565b9392505050565b5f806040838503121561086e575f80fd5b610877836107c1565b9150610885602084016107c1565b90509250929050565b600181811c908216806108a257607f821691505b6020821081036108c057634e487b7160e01b5f52602260045260245ffd5b50919050565b8082018082111561025e57634e487b7160e01b5f52601160045260245ffdfea164736f6c6343000818000a","storage":{"0x2":"0xe8d4a51000","0x3":"0x0","0x4":"0x0","0x47668262eb76f3aa61b856a0c078f33a11f46671cf1466c3616ba74a22fcdd92":"0xe8d4a51000","0x9cc83e833a69122bf7773b58c082655d780ae469ab7cdf5d1047a30229e55875":"0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"}},"0xe0afc4e9e03e4aa67257df7a2eca77454309789d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061002b5760003560e01c806316f1983114610030575b600080fd5b6100b06004803603604081101561004657600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561007157600080fd5b82018360208201111561008357600080fd5b803590602001918460018302840111640100000000831117156100a557600080fd5b5090925090506100b2565b005b826001600160a01b031660017f103fed9db65eac19c4d870f49ab7520fe03b99f1838e5996caf47e9e43308392848460405180806020018281038252848482818152602001925080828437600083820152604051601f909101601f19169092018290039550909350505050a350505056fea164736f6c6343000606000a","storage":{}},"0xe4fdf45c2f8d198854f8823809c7a988eeaaa493":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100a6575f3560e01c80638cb8ecec1161006e5780638cb8ecec1461013e5780638da5cb5b14610151578063cbe9e76414610161578063da8c229e14610183578063e0dba60f146101a5578063f2fde38b146101b8575f80fd5b806301670ba9146100aa57806301ffc9a7146100bf5780633f15457f146100f85780634e543b2614610123578063715018a614610136575b5f80fd5b6100bd6100b8366004610529565b6101cb565b005b6100e36100cd366004610540565b6001600160e01b0319166301ffc9a760e01b1490565b60405190151581526020015b60405180910390f35b60025461010b906001600160a01b031681565b6040516001600160a01b0390911681526020016100ef565b6100bd610131366004610589565b610217565b6100bd610282565b6100bd61014c3660046105a2565b610295565b5f546001600160a01b031661010b565b6100e361016f366004610529565b60036020525f908152604090205460ff1681565b6100e3610191366004610589565b60016020525f908152604090205460ff1681565b6100bd6101b33660046105cc565b6103a2565b6100bd6101c6366004610589565b610408565b6101d3610481565b60405181907f1764176cfa565853ba1ded547a830a9f9bff95231ef6fd228b3ddd6175777569905f90a25f908152600360205260409020805460ff19166001179055565b61021f610481565b600254604051630c4b7b8560e11b81525f60048201526001600160a01b03838116602483015290911690631896f70a906044015f604051808303815f87803b158015610269575f80fd5b505af115801561027b573d5f803e3d5ffd5b5050505050565b61028a610481565b6102935f6104da565b565b335f9081526001602052604090205460ff166103095760405162461bcd60e51b815260206004820152602860248201527f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f604482015267373a3937b63632b960c11b60648201526084015b60405180910390fd5b5f8281526003602052604090205460ff1615610323575f80fd5b6002546040516306ab592360e01b81525f6004820152602481018490526001600160a01b038381166044830152909116906306ab5923906064016020604051808303815f875af1158015610379573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061039d9190610605565b505050565b6103aa610481565b6001600160a01b0382165f81815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b610410610481565b6001600160a01b0381166104755760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610300565b61047e816104da565b50565b5f546001600160a01b031633146102935760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610300565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f60208284031215610539575f80fd5b5035919050565b5f60208284031215610550575f80fd5b81356001600160e01b031981168114610567575f80fd5b9392505050565b80356001600160a01b0381168114610584575f80fd5b919050565b5f60208284031215610599575f80fd5b6105678261056e565b5f80604083850312156105b3575f80fd5b823591506105c36020840161056e565b90509250929050565b5f80604083850312156105dd575f80fd5b6105e68361056e565b9150602083013580151581146105fa575f80fd5b809150509250929050565b5f60208284031215610615575f80fd5b505191905056fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0xbdf39e9e65b2355b1b0b06df799c09159f0ab90f06a9bb2153f5de7d9b0ea81":"0x1","0x97b771283c9c769f7b9399fef71d92816f2bd31de10203b676671b01eb920966":"0x1"}},"0xe85541865bbb62a05064ce5c9f41cc293a8ea996":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610060575f3560e01c8063715018a6146100645780638129fc1c1461006e5780638da5cb5b14610076578063a3f4df7e14610096578063f2fde38b146100cf578063ffa1ad74146100e2575b5f80fd5b61006c610106565b005b61006c610119565b6033546040516001600160a01b0390911681526020015b60405180910390f35b6100c26040518060400160405280600d81526020016c2aa7299d1027b832b930ba37b960991b81525081565b60405161008d91906103bd565b61006c6100dd366004610409565b610229565b6100c2604051806040016040528060058152602001640302e312e360dc1b81525081565b61010e61029f565b6101175f6102f9565b565b5f54610100900460ff161580801561013757505f54600160ff909116105b806101505750303b15801561015057505f5460ff166001145b6101b85760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b5f805460ff1916600117905580156101d9575f805461ff0019166101001790555b6101e161034a565b8015610226575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50565b61023161029f565b6001600160a01b0381166102965760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016101af565b610226816102f9565b6033546001600160a01b031633146101175760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016101af565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff166103b45760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016101af565b610117336102f9565b5f602080835283518060208501525f5b818110156103e9578581018301518582016040015282016103cd565b505f604082860101526040601f19601f8301168501019250505092915050565b5f60208284031215610419575f80fd5b81356001600160a01b038116811461042f575f80fd5b939250505056fea164736f6c6343000818000a","storage":{}},"0xead34b583404e3cb0c9b97c2d1c486be67be9f30":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0xec71e4e674fe0f432693dc2b935c34bd2774c003":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610090575f3560e01c8063a200e15311610063578063a200e15314610146578063a34e35961461016d578063c8a4271f14610180578063cd5d2c74146101bf578063d820ed42146101e6575f80fd5b806301ffc9a7146100945780632c0fd74c146100bc57806350e9a715146100f157806359b6b86c1461011f575b5f80fd5b6100a76100a2366004610600565b61020d565b60405190151581526020015b60405180910390f35b6100e37f000000000000000000000000000000000000000000000000000000000000000081565b6040519081526020016100b3565b6101046100ff366004610627565b610243565b604080518251815260209283015192810192909252016100b3565b6100e37f000000000000000000000000000000000000000000000000000000000000000181565b6100e37f000000000000000000000000000000000000000000000000000000000000000481565b6100e361017b366004610627565b610404565b6101a77f000000000000000000000000f3810eb7d64d1c11ae12727d957c6202b24492f581565b6040516001600160a01b0390911681526020016100b3565b6100e37f000000000000000000000000000000000000000000000000000000000000000081565b6100e37f000000000000000000000000000000000000000000000000000000000000000281565b5f6001600160e01b031982166301ffc9a760e01b148061023d57506001600160e01b031982166350e9a71560e01b145b92915050565b604080518082019091525f80825260208201525f61029586868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061045392505050565b90505f600582106102d1576102ca847f00000000000000000000000000000000000000000000000000000000000000016106b3565b9050610394565b81600403610303576102ca847f00000000000000000000000000000000000000000000000000000000000000026106b3565b81600303610335576102ca847f00000000000000000000000000000000000000000000000000000000000000046106b3565b81600203610367576102ca847f00000000000000000000000000000000000000000000000000000000000000006106b3565b610391847f00000000000000000000000000000000000000000000000000000000000000006106b3565b90505b60405180604001604052806103a883610554565b81526020016103f76103f28a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c92508b91506105f89050565b610554565b9052979650505050505050565b5f61044a6103f286868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508892508791506105f89050565b95945050505050565b80515f90819081905b8082101561054b575f858381518110610477576104776106ca565b01602001516001600160f81b0319169050600160ff1b8110156104a65761049f6001846106de565b9250610538565b600760fd1b6001600160f81b0319821610156104c75761049f6002846106de565b600f60fc1b6001600160f81b0319821610156104e85761049f6003846106de565b601f60fb1b6001600160f81b0319821610156105095761049f6004846106de565b603f60fa1b6001600160f81b03198216101561052a5761049f6005846106de565b6105356006846106de565b92505b5082610543816106f1565b93505061045c565b50909392505050565b5f807f000000000000000000000000f3810eb7d64d1c11ae12727d957c6202b24492f56001600160a01b03166350d25bcd6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105b2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105d69190610709565b9050806105e7846305f5e1006106b3565b6105f19190610720565b9392505050565b5f9392505050565b5f60208284031215610610575f80fd5b81356001600160e01b0319811681146105f1575f80fd5b5f805f806060858703121561063a575f80fd5b843567ffffffffffffffff80821115610651575f80fd5b818701915087601f830112610664575f80fd5b813581811115610672575f80fd5b886020828501011115610683575f80fd5b6020928301999098509187013596604001359550909350505050565b634e487b7160e01b5f52601160045260245ffd5b808202811582820484141761023d5761023d61069f565b634e487b7160e01b5f52603260045260245ffd5b8082018082111561023d5761023d61069f565b5f600182016107025761070261069f565b5060010190565b5f60208284031215610719575f80fd5b5051919050565b5f8261073a57634e487b7160e01b5f52601260045260245ffd5b50049056fea164736f6c6343000818000a","storage":{}},"0xf1ad43dc647f27c2366ab4742d68d21282f7d50e":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101d1575f3560e01c80638b95dd71116100fe578063c86902331161009e578063e32954eb1161006e578063e32954eb146104f2578063e59d895d14610505578063e985e9c514610518578063f1cb7e0614610553575f80fd5b8063c869023314610435578063ce3decdc1461048c578063d5fa2b001461049f578063d700ff33146104b2575f80fd5b8063a8fa5682116100d9578063a8fa5682146103ac578063a9784b3e146103bf578063ac9650d814610402578063bc1c58d114610422575f80fd5b80638b95dd7114610373578063a22cb46514610386578063a4b91a0114610399575f80fd5b80633603d758116101745780635c98042b116101445780635c98042b14610327578063623195b01461033a578063691f34311461034d5780637737221314610360575f80fd5b80633603d758146102975780633b3b57de146102aa5780634cbf6ba4146102bd57806359d1d43c14610307575f80fd5b8063124a319c116101af578063124a319c146102255780632203ab561461025057806329cd62ea14610271578063304e6ade14610284575f80fd5b806301ffc9a7146101d55780630af179d7146101fd57806310f13a8c14610212575b5f80fd5b6101e86101e3366004612267565b610566565b60405190151581526020015b60405180910390f35b61021061020b3660046122bd565b610576565b005b610210610220366004612304565b610778565b610238610233366004612377565b610842565b6040516001600160a01b0390911681526020016101f4565b61026361025e3660046123a1565b610a87565b6040516101f492919061240e565b61021061027f366004612426565b610bb5565b6102106102923660046122bd565b610c4d565b6102106102a536600461244f565b610cc6565b6102386102b836600461244f565b610d64565b6101e86102cb3660046123a1565b5f82815260208181526040808320546001600160401b031683526006825280832094835293815283822092825291909152205461ffff16151590565b61031a6103153660046122bd565b610d93565b6040516101f49190612466565b61031a61033536600461244f565b610e6f565b610210610348366004612478565b610f2a565b61031a61035b36600461244f565b610fc2565b61021061036e3660046122bd565b610ffa565b6102106103813660046124da565b611073565b6102106103943660046125b9565b611150565b6102106103a73660046125e3565b61122a565b61031a6103ba36600461261e565b6112f6565b6101e86103cd36600461265a565b6001600160a01b039283165f908152600c60209081526040808320948352938152838220929094168152925290205460ff1690565b6104156104103660046126ce565b611342565b6040516101f4919061270c565b61031a61043036600461244f565b61134f565b61047761044336600461244f565b5f81815260208181526040808320546001600160401b03168352600982528083209383529290522080546001909101549091565b604080519283526020830191909152016101f4565b61021061049a3660046122bd565b611387565b6102106104ad36600461276e565b6114c3565b6104da6104c036600461244f565b5f602081905290815260409020546001600160401b031681565b6040516001600160401b0390911681526020016101f4565b61041561050036600461279c565b6114e9565b6102106105133660046127d6565b6114fe565b6101e8610526366004612808565b6001600160a01b039182165f908152600b6020908152604080832093909416825291909152205460ff1690565b61031a6105613660046123a1565b6115a2565b5f61057082611666565b92915050565b826105808161168a565b610588575f80fd5b5f84815260208181526040808320548151601f87018490048402810184019092528582528392606092839285926001600160401b039091169183916105eb9183918d908d90819084018382808284375f9201919091525092939250506118b79050565b90505b80515160208201511015610712578661ffff165f03610652578060400151965061061781611912565b94508460405160200161062a9190612834565b60405160208183030381529060405280519060200120925061064b81611933565b9350610704565b5f61065c82611912565b9050816040015161ffff168861ffff16141580610680575061067e868261194f565b155b15610702576106db8c878a8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250505060208801518d91506106d2908290612863565b8b51158a61196a565b8160400151975081602001519650809550858051906020012093506106ff82611933565b94505b505b61070d81611bc9565b6105ee565b5083511561076c5761076c8a85888c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c925061076391508290508f612863565b8951158861196a565b50505050505050505050565b846107828161168a565b61078a575f80fd5b5f86815260208181526040808320546001600160401b03168352600a8252808320898452909152908190209051849184916107c89089908990612876565b908152602001604051809103902091826107e3929190612901565b5084846040516107f4929190612876565b6040518091039020867f448bc014f1536726cf8d54ff3d6481ed3cbc683c2591ca204274009afa09b1a18787878760405161083294939291906129e2565b60405180910390a3505050505050565b5f82815260208181526040808320546001600160401b031683526007825280832085845282528083206001600160e01b0319851684529091528120546001600160a01b03168015610894579050610570565b5f61089e85610d64565b90506001600160a01b0381166108b8575f92505050610570565b6040516301ffc9a760e01b60248201525f9081906001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b1790525161090f9190612834565b5f60405180830381855afa9150503d805f8114610947576040519150601f19603f3d011682016040523d82523d5f602084013e61094c565b606091505b509150915081158061095f575060208151105b80610989575080601f8151811061097857610978612a13565b01602001516001600160f81b031916155b1561099a575f945050505050610570565b6040516001600160e01b0319871660248201526001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b179052516109f09190612834565b5f60405180830381855afa9150503d805f8114610a28576040519150601f19603f3d011682016040523d82523d5f602084013e610a2d565b606091505b509092509050811580610a41575060208151105b80610a6b575080601f81518110610a5a57610a5a612a13565b01602001516001600160f81b031916155b15610a7c575f945050505050610570565b509095945050505050565b5f82815260208181526040808320546001600160401b03168352600180835281842086855290925282206060915b848111610b975780851615801590610ae457505f8181526020839052604081208054610ae090612885565b9050115b15610b8f5780825f8381526020019081526020015f20808054610b0690612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610b3290612885565b8015610b7d5780601f10610b5457610100808354040283529160200191610b7d565b820191905f5260205f20905b815481529060010190602001808311610b6057829003601f168201915b50505050509050935093505050610bae565b60011b610ab5565b505f60405180602001604052805f81525092509250505b9250929050565b82610bbf8161168a565b610bc7575f80fd5b60408051808201825284815260208082018581525f888152808352848120546001600160401b031681526009835284812089825283528490209251835551600190920191909155815185815290810184905285917f1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e4691015b60405180910390a250505050565b82610c578161168a565b610c5f575f80fd5b5f84815260208181526040808320546001600160401b03168352600382528083208784529091529020610c93838583612901565b50837fe379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d75788484604051610c3f929190612a27565b80610cd08161168a565b610cd8575f80fd5b5f82815260208190526040812080546001600160401b031691610cfa83612a3a565b82546101009290920a6001600160401b038181021990931691831602179091555f84815260208181526040918290205491519190921681528492507fc6621ccb8f3f5a04bb6502154b2caf6adf5983fe76dfef1cfc9c42e3579db444910160405180910390a25050565b5f80610d7183603c6115a2565b905080515f03610d8357505f92915050565b610d8c81611cae565b9392505050565b5f83815260208181526040808320546001600160401b03168352600a825280832086845290915290819020905160609190610dd19085908590612876565b90815260200160405180910390208054610dea90612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610e1690612885565b8015610e615780601f10610e3857610100808354040283529160200191610e61565b820191905f5260205f20905b815481529060010190602001808311610e4457829003601f168201915b505050505090509392505050565b5f81815260208181526040808320546001600160401b03168352600482528083208484529091529020805460609190610ea790612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610ed390612885565b8015610f1e5780601f10610ef557610100808354040283529160200191610f1e565b820191905f5260205f20905b815481529060010190602001808311610f0157829003601f168201915b50505050509050919050565b83610f348161168a565b610f3c575f80fd5b83610f48600182612863565b1615610f52575f80fd5b5f85815260208181526040808320546001600160401b031683526001825280832088845282528083208784529091529020610f8e838583612901565b50604051849086907faa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe3905f90a35050505050565b5f81815260208181526040808320546001600160401b03168352600882528083208484529091529020805460609190610ea790612885565b826110048161168a565b61100c575f80fd5b5f84815260208181526040808320546001600160401b03168352600882528083208784529091529020611040838583612901565b50837fb7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f78484604051610c3f929190612a27565b8261107d8161168a565b611085575f80fd5b837f65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af75284846040516110b792919061240e565b60405180910390a2603c830361110e57837f52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd26110f284611cae565b6040516001600160a01b03909116815260200160405180910390a25b5f84815260208181526040808320546001600160401b0316835260028252808320878452825280832086845290915290206111498382612a5f565b5050505050565b6001600160a01b03821633036111bf5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084015b60405180910390fd5b335f818152600b602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6001600160a01b03821633036112825760405162461bcd60e51b815260206004820181905260248201527f53657474696e672064656c65676174652073746174757320666f722073656c6660448201526064016111b6565b335f818152600c6020908152604080832087845282528083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519384529286917ff0ddb3b04746704017f9aa8bd728fcc2c1d11675041205350018915f5e4750a0910160405180910390a4505050565b5f83815260208181526040808320546001600160401b03168352600582528083208684528252808320858452825280832061ffff851684529091529020805460609190610dea90612885565b6060610d8c5f8484611ccb565b5f81815260208181526040808320546001600160401b03168352600382528083208484529091529020805460609190610ea790612885565b826113918161168a565b611399575f80fd5b5f84815260208181526040808320546001600160401b031680845260048352818420888552909252822080549192916113d190612885565b80601f01602080910402602001604051908101604052809291908181526020018280546113fd90612885565b80156114485780601f1061141f57610100808354040283529160200191611448565b820191905f5260205f20905b81548152906001019060200180831161142b57829003601f168201915b505050506001600160401b0384165f9081526004602090815260408083208b8452909152902091925061147e9050858783612901565b50857f8f15ed4b723ef428f250961da8315675b507046737e19319fc1a4d81bfe87f858287876040516114b393929190612b1e565b60405180910390a2505050505050565b816114cd8161168a565b6114d5575f80fd5b6114e483603c61038185611e88565b505050565b60606114f6848484611ccb565b949350505050565b826115088161168a565b611510575f80fd5b5f84815260208181526040808320546001600160401b031683526007825280832087845282528083206001600160e01b031987168085529083529281902080546001600160a01b0319166001600160a01b038716908117909155905190815286917f7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa910160405180910390a350505050565b5f82815260208181526040808320546001600160401b0316835260028252808320858452825280832084845290915290208054606091906115e290612885565b80601f016020809104026020016040519081016040528092919081815260200182805461160e90612885565b80156116595780601f1061163057610100808354040283529160200191611659565b820191905f5260205f20905b81548152906001019060200180831161163c57829003601f168201915b5050505050905092915050565b5f6001600160e01b03198216631674750f60e21b1480610570575061057082611eb8565b5f336001600160a01b037f0000000000000000000000004fbf7b2f171336958be5d15ff762a5cff53635681614806116ea5750336001600160a01b037f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5616145b156116f757506001919050565b6040516302571be360e01b8152600481018390525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa15801561175c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117809190612b4d565b90507f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b0316816001600160a01b031603611845576040516331a9108f60e11b8152600481018490527f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b031690636352211e90602401602060405180830381865afa15801561181e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118429190612b4d565b90505b6001600160a01b03811633148061187e57506001600160a01b0381165f908152600b6020908152604080832033845290915290205460ff165b80610d8c57506001600160a01b0381165f908152600c60209081526040808320868452825280832033845290915290205460ff16610d8c565b6118ff6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261057081611bc9565b602081015181516060916105709161192a9082611edc565b84519190611f33565b60a081015160c08201516060916105709161192a908290612863565b5f81518351148015610d8c5750610d8c835f845f8751611fa7565b865160208801205f61197d878787611f33565b90508315611aa1576001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c168452909152902080546119c690612885565b159050611a23576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611a0783612b68565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091528120611a62916121f9565b897f03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a12078a8a604051611a94929190612b84565b60405180910390a261076c565b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c16845290915290208054611ae290612885565b90505f03611b40576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611b2483612ba9565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091529020611b808282612a5f565b50897f52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b8a8a84604051611bb593929190612bbf565b60405180910390a250505050505050505050565b60c08101516020820181905281515111611be05750565b5f611bf2825f01518360200151611edc565b8260200151611c019190612bed565b8251909150611c109082611fc9565b61ffff166040830152611c24600282612bed565b8251909150611c339082611fc9565b61ffff166060830152611c47600282612bed565b8251909150611c569082611fef565b63ffffffff166080830152611c6c600482612bed565b82519091505f90611c7d9083611fc9565b61ffff169050611c8e600283612bed565b60a084018190529150611ca18183612bed565b60c0909301929092525050565b5f8151601414611cbc575f80fd5b5060200151600160601b900490565b6060816001600160401b03811115611ce557611ce56124c6565b604051908082528060200260200182016040528015611d1857816020015b6060815260200190600190039081611d035790505b5090505f5b82811015611e80578415611dd8575f848483818110611d3e57611d3e612a13565b9050602002810190611d509190612c00565b611d5f91602491600491612c42565b611d6891612c69565b9050858114611dd65760405162461bcd60e51b815260206004820152603460248201527f6d756c746963616c6c3a20416c6c207265636f726473206d7573742068617665604482015273040c240dac2e8c6d0d2dcce40dcc2dacad0c2e6d60631b60648201526084016111b6565b505b5f8030868685818110611ded57611ded612a13565b9050602002810190611dff9190612c00565b604051611e0d929190612876565b5f60405180830381855af49150503d805f8114611e45576040519150601f19603f3d011682016040523d82523d5f602084013e611e4a565b606091505b509150915081611e58575f80fd5b80848481518110611e6b57611e6b612a13565b60209081029190910101525050600101611d1d565b509392505050565b604080516014808252818301909252606091602082018180368337505050600160601b9290920260208301525090565b5f6001600160e01b0319821663c869023360e01b1480610570575061057082612017565b5f815b83518110611eef57611eef612c86565b5f611efa858361203b565b60ff169050611f0a816001612bed565b611f149083612bed565b9150805f03611f235750611f29565b50611edf565b6114f68382612863565b8251606090611f428385612bed565b1115611f4c575f80fd5b5f826001600160401b03811115611f6557611f656124c6565b6040519080825280601f01601f191660200182016040528015611f8f576020820181803683370190505b50905060208082019086860101610a7c82828761205e565b5f611fb38484846120b3565b611fbe8787856120b3565b149695505050505050565b81515f90611fd8836002612bed565b1115611fe2575f80fd5b50016002015161ffff1690565b81515f90611ffe836004612bed565b1115612008575f80fd5b50016004015163ffffffff1690565b5f6001600160e01b0319821663691f343160e01b14806105705750610570826120d5565b5f82828151811061204e5761204e612a13565b016020015160f81c905092915050565b602081106120965781518352612075602084612bed565b9250612082602083612bed565b915061208f602082612863565b905061205e565b905182516020929092036101000a5f190180199091169116179052565b82515f906120c18385612bed565b11156120cb575f80fd5b5091016020012090565b5f6001600160e01b031982166304928c6760e21b14806105705750610570825f6001600160e01b0319821663547d2b4160e11b148061212457506001600160e01b03198216635c98042b60e01b145b806105705750610570825f6001600160e01b0319821663bc1c58d160e01b14806105705750610570825f6001600160e01b03198216631d9dabef60e11b148061217d57506001600160e01b031982166378e5bf0360e11b145b806105705750610570825f6001600160e01b03198216631101d5ab60e11b14806105705750610570825f6001600160e01b0319821663d700ff3360e01b14806105705750610570825f6001600160e01b03198216634fbf043360e01b148061057057506301ffc9a760e01b6001600160e01b0319831614610570565b50805461220590612885565b5f825580601f10612214575050565b601f0160209004905f5260205f20908101906122309190612233565b50565b5b80821115612247575f8155600101612234565b5090565b80356001600160e01b031981168114612262575f80fd5b919050565b5f60208284031215612277575f80fd5b610d8c8261224b565b5f8083601f840112612290575f80fd5b5081356001600160401b038111156122a6575f80fd5b602083019150836020828501011115610bae575f80fd5b5f805f604084860312156122cf575f80fd5b8335925060208401356001600160401b038111156122eb575f80fd5b6122f786828701612280565b9497909650939450505050565b5f805f805f60608688031215612318575f80fd5b8535945060208601356001600160401b0380821115612335575f80fd5b61234189838a01612280565b90965094506040880135915080821115612359575f80fd5b5061236688828901612280565b969995985093965092949392505050565b5f8060408385031215612388575f80fd5b823591506123986020840161224b565b90509250929050565b5f80604083850312156123b2575f80fd5b50508035926020909101359150565b5f5b838110156123db5781810151838201526020016123c3565b50505f910152565b5f81518084526123fa8160208601602086016123c1565b601f01601f19169290920160200192915050565b828152604060208201525f6114f660408301846123e3565b5f805f60608486031215612438575f80fd5b505081359360208301359350604090920135919050565b5f6020828403121561245f575f80fd5b5035919050565b602081525f610d8c60208301846123e3565b5f805f806060858703121561248b575f80fd5b843593506020850135925060408501356001600160401b038111156124ae575f80fd5b6124ba87828801612280565b95989497509550505050565b634e487b7160e01b5f52604160045260245ffd5b5f805f606084860312156124ec575f80fd5b833592506020840135915060408401356001600160401b0380821115612510575f80fd5b818601915086601f830112612523575f80fd5b813581811115612535576125356124c6565b604051601f8201601f19908116603f0116810190838211818310171561255d5761255d6124c6565b81604052828152896020848701011115612575575f80fd5b826020860160208301375f6020848301015280955050505050509250925092565b6001600160a01b0381168114612230575f80fd5b80358015158114612262575f80fd5b5f80604083850312156125ca575f80fd5b82356125d581612596565b9150612398602084016125aa565b5f805f606084860312156125f5575f80fd5b83359250602084013561260781612596565b9150612615604085016125aa565b90509250925092565b5f805f60608486031215612630575f80fd5b8335925060208401359150604084013561ffff8116811461264f575f80fd5b809150509250925092565b5f805f6060848603121561266c575f80fd5b833561267781612596565b925060208401359150604084013561264f81612596565b5f8083601f84011261269e575f80fd5b5081356001600160401b038111156126b4575f80fd5b6020830191508360208260051b8501011115610bae575f80fd5b5f80602083850312156126df575f80fd5b82356001600160401b038111156126f4575f80fd5b6127008582860161268e565b90969095509350505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b8281101561276157603f1988860301845261274f8583516123e3565b94509285019290850190600101612733565b5092979650505050505050565b5f806040838503121561277f575f80fd5b82359150602083013561279181612596565b809150509250929050565b5f805f604084860312156127ae575f80fd5b8335925060208401356001600160401b038111156127ca575f80fd5b6122f78682870161268e565b5f805f606084860312156127e8575f80fd5b833592506127f86020850161224b565b9150604084013561264f81612596565b5f8060408385031215612819575f80fd5b823561282481612596565b9150602083013561279181612596565b5f82516128458184602087016123c1565b9190910192915050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156105705761057061284f565b818382375f9101908152919050565b600181811c9082168061289957607f821691505b6020821081036128b757634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156114e457805f5260205f20601f840160051c810160208510156128e25750805b601f840160051c820191505b81811015611149575f81556001016128ee565b6001600160401b03831115612918576129186124c6565b61292c836129268354612885565b836128bd565b5f601f84116001811461295d575f85156129465750838201355b5f19600387901b1c1916600186901b178355611149565b5f83815260208120601f198716915b8281101561298c578685013582556020948501946001909201910161296c565b50868210156129a8575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b604081525f6129f56040830186886129ba565b8281036020840152612a088185876129ba565b979650505050505050565b634e487b7160e01b5f52603260045260245ffd5b602081525f6114f66020830184866129ba565b5f6001600160401b03808316818103612a5557612a5561284f565b6001019392505050565b81516001600160401b03811115612a7857612a786124c6565b612a8c81612a868454612885565b846128bd565b602080601f831160018114612abf575f8415612aa85750858301515b5f19600386901b1c1916600185901b178555612b16565b5f85815260208120601f198616915b82811015612aed57888601518255948401946001909101908401612ace565b5085821015612b0a57878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b604081525f612b3060408301866123e3565b8281036020840152612b438185876129ba565b9695505050505050565b5f60208284031215612b5d575f80fd5b8151610d8c81612596565b5f61ffff821680612b7b57612b7b61284f565b5f190192915050565b604081525f612b9660408301856123e3565b905061ffff831660208301529392505050565b5f61ffff808316818103612a5557612a5561284f565b606081525f612bd160608301866123e3565b61ffff851660208401528281036040840152612b4381856123e3565b808201808211156105705761057061284f565b5f808335601e19843603018112612c15575f80fd5b8301803591506001600160401b03821115612c2e575f80fd5b602001915036819003821315610bae575f80fd5b5f8085851115612c50575f80fd5b83861115612c5c575f80fd5b5050820193919092039150565b80356020831015610570575f19602084900360031b1b1692915050565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{}},"0xf3810eb7d64d1c11ae12727d957c6202b24492f5":{"nonce":1,"balance":"0x0","code":"0x6080604052348015600e575f80fd5b50600436106030575f3560e01c806350d25bcd146034578063e5c19b2d146048575b5f80fd5b5f5460405190815260200160405180910390f35b605760533660046059565b5f55565b005b5f602082840312156068575f80fd5b503591905056fea164736f6c6343000818000a","storage":{"0x0":"0x5f5e100"}},"0xf670681605efc4efc804f5a9b97ee89520473d56":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c80638da5cb5b11610088578063c66485b211610063578063c66485b2146101da578063da8c229e146101ed578063e0dba60f1461021f578063f2fde38b14610232575f80fd5b80638da5cb5b146101a4578063bffbe61c146101b4578063c47f0027146101c7575f80fd5b806365669631116100c35780636566963114610161578063715018a6146101745780637a806d6b1461017e578063828eab0e14610191575f80fd5b80630f5a5466146100e95780631e83409a1461010f5780633f15457f14610122575b5f80fd5b6100fc6100f7366004610958565b610245565b6040519081526020015b60405180910390f35b6100fc61011d36600461098f565b610258565b6101497f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a981565b6040516001600160a01b039091168152602001610106565b6100fc61016f3660046109aa565b610279565b61017c610526565b005b6100fc61018c366004610a8f565b610539565b600254610149906001600160a01b031681565b5f546001600160a01b0316610149565b6100fc6101c236600461098f565b6105ae565b6100fc6101d5366004610b00565b610608565b61017c6101e836600461098f565b610624565b61020f6101fb36600461098f565b60016020525f908152604090205460ff1681565b6040519015158152602001610106565b61017c61022d366004610b47565b6106e4565b61017c61024036600461098f565b61074a565b5f610251338484610279565b9392505050565b6002545f9061027390339084906001600160a01b0316610279565b92915050565b5f836001600160a01b0381163314806102a05750335f9081526001602052604090205460ff165b80610334575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063e985e9c590604401602060405180830381865afa158015610310573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103349190610b73565b806103435750610343816107c3565b6103e05760405162461bcd60e51b815260206004820152605b60248201527f526576657273655265676973747261723a2043616c6c6572206973206e6f742060448201527f6120636f6e74726f6c6c6572206f7220617574686f726973656420627920616460648201527f6472657373206f7220746865206164647265737320697473656c660000000000608482015260a4015b60405180910390fd5b5f6103ea8661083a565b604080517f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e2602080830191909152818301849052825180830384018152606090920192839052815191012091925081906001600160a01b038916907f6ada868dd3058cf77a48a74489fd7963688e5464b2b0fa957ace976243270e92905f90a36040516305ef2c7f60e41b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26004820152602481018390526001600160a01b03878116604483015286811660648301525f60848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610505575f80fd5b505af1158015610517573d5f803e3d5ffd5b50929998505050505050505050565b61052e61089c565b6105375f6108f5565b565b5f80610546868686610279565b604051637737221360e01b81529091506001600160a01b038516906377372213906105779084908790600401610b8e565b5f604051808303815f87803b15801561058e575f80fd5b505af11580156105a0573d5f803e3d5ffd5b509298975050505050505050565b5f7f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26105d98361083a565b604080516020810193909352820152606001604051602081830303815290604052805190602001209050919050565b6002545f9061027390339081906001600160a01b031685610539565b61062c61089c565b6001600160a01b03811661069b5760405162461bcd60e51b815260206004820152603060248201527f526576657273655265676973747261723a205265736f6c76657220616464726560448201526f07373206d757374206e6f7420626520360841b60648201526084016103d7565b600280546001600160a01b0319166001600160a01b0383169081179091556040517feae17a84d9eb83d8c8eb317f9e7d64857bc363fa51674d996c023f4340c577cf905f90a250565b6106ec61089c565b6001600160a01b0382165f81815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b61075261089c565b6001600160a01b0381166107b75760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016103d7565b6107c0816108f5565b50565b5f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801561081e575060408051601f3d908101601f1916820190925261081b91810190610be2565b60015b61082957505f919050565b6001600160a01b0316331492915050565b5f60285b8015610891575f19016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a81536010909204915f19016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a815360108304925061083e565b505060285f20919050565b5f546001600160a01b031633146105375760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016103d7565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146107c0575f80fd5b5f8060408385031215610969575f80fd5b823561097481610944565b9150602083013561098481610944565b809150509250929050565b5f6020828403121561099f575f80fd5b813561025181610944565b5f805f606084860312156109bc575f80fd5b83356109c781610944565b925060208401356109d781610944565b915060408401356109e781610944565b809150509250925092565b634e487b7160e01b5f52604160045260245ffd5b5f82601f830112610a15575f80fd5b813567ffffffffffffffff80821115610a3057610a306109f2565b604051601f8301601f19908116603f01168101908282118183101715610a5857610a586109f2565b81604052838152866020858801011115610a70575f80fd5b836020870160208301375f602085830101528094505050505092915050565b5f805f8060808587031215610aa2575f80fd5b8435610aad81610944565b93506020850135610abd81610944565b92506040850135610acd81610944565b9150606085013567ffffffffffffffff811115610ae8575f80fd5b610af487828801610a06565b91505092959194509250565b5f60208284031215610b10575f80fd5b813567ffffffffffffffff811115610b26575f80fd5b610b3284828501610a06565b949350505050565b80151581146107c0575f80fd5b5f8060408385031215610b58575f80fd5b8235610b6381610944565b9150602083013561098481610b3a565b5f60208284031215610b83575f80fd5b815161025181610b3a565b8281525f60206040602084015283518060408501525f5b81811015610bc157858101830151858201606001528201610ba5565b505f606082860101526060601f19601f830116850101925050509392505050565b5f60208284031215610bf2575f80fd5b81516102518161094456fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2":"0x9df67c91f1bfcb4d966cf764e9218685e7c59e8a","0x1f5b7623941da966ad7183d9cbb6db584f6d4add26919ac31a2d3f19a164e7e1":"0x1","0xbe5de2149ce76ca5934fa63455cd675fd52e2d30f3328985d298a627ca0f05e9":"0x1"}},"0xf8c26340c1eaea6c7ff1760b25005e1306953572":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061010b5760003560e01c80638c87a4ea116100a2578063b87abc1111610071578063b87abc1114610244578063c597407314610257578063ce92b33e1461026a578063e837ae741461027d578063ec129eea146102905761010b565b80638c87a4ea146101ea5780638f69c188146101fd578063a3557e6c14610210578063b85afd28146102235761010b565b806347c81699116100de57806347c8169914610181578063672b9f81146101945780636ccbae5f146101b55780637b103999146101d55761010b565b80631bd8cc1a146101105780631be5e7ed146101395780632c3d376d14610159578063310bd74b1461016c575b600080fd5b61012361011e3660046117b4565b6102a3565b6040516101309190611eee565b60405180910390f35b61014c610147366004611aec565b6104f2565b6040516101309190611fd6565b61014c610167366004611b21565b610673565b61017f61017a366004611b21565b610714565b005b61017f61018f3660046119b5565b6107c0565b6101a76101a2366004611b94565b6108ef565b604051610130929190611fe7565b6101c86101c3366004611b21565b6109c3565b604051610130919061204c565b6101dd6109d5565b6040516101309190611ea9565b6101236101f836600461191d565b6109e5565b61017f61020b366004611878565b610a74565b61017f61021e366004611878565b610af0565b610236610231366004611951565b610b1b565b604051610130929190611eff565b61017f610252366004611b3f565b610ca9565b61017f610265366004611a39565b610d43565b61017f610278366004611808565b610df9565b61017f61028b366004611808565b610e97565b61017f61029e366004611808565b610f4e565b60015460405163b3f9e4cb60e01b815260609183916001600160a01b039091169063b3f9e4cb906102d890849060040161204c565b60206040518083038186803b1580156102f057600080fd5b505afa158015610304573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610328919081019061178e565b6001600160a01b0316306001600160a01b0316146103615760405162461bcd60e51b81526004016103589061201c565b60405180910390fd5b604080518581526020808702820101909152849060609082801561039957816020015b60608152602001906001900390816103845790505b506000868152600360205260408120549192505b838110156104e557600087815260026020908152604080832085845290915290208989838181106103da57fe5b602002820190508035601e19368490030181126103f657600080fd5b909101602081019150356001600160401b0381111561041457600080fd5b3681900382131561042457600080fd5b604051610432929190611e70565b9081526040805160209281900383018120805460026001821615610100026000190190911604601f810185900485028301850190935282825290929091908301828280156104c15780601f10610496576101008083540402835291602001916104c1565b820191906000526020600020905b8154815290600101906020018083116104a457829003601f168201915b50505050508382815181106104d257fe5b60209081029190910101526001016103ad565b5090979650505050505050565b60015460405163b3f9e4cb60e01b815260609183916001600160a01b039091169063b3f9e4cb9061052790849060040161204c565b60206040518083038186803b15801561053f57600080fd5b505afa158015610553573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610577919081019061178e565b6001600160a01b0316306001600160a01b0316146105a75760405162461bcd60e51b81526004016103589061201c565b6000838152600260209081526040808320600383528184205484529091529081902090516105d6908690611e7d565b9081526040805160209281900383018120805460026001821615610100026000190190911604601f810185900485028301850190935282825290929091908301828280156106655780601f1061063a57610100808354040283529160200191610665565b820191906000526020600020905b81548152906001019060200180831161064857829003601f168201915b505050505091505092915050565b60008181526004602090815260409182902080548351601f60026000196101006001861615020190931692909204918201849004840281018401909452808452606093928301828280156107085780601f106106dd57610100808354040283529160200191610708565b820191906000526020600020905b8154815290600101906020018083116106eb57829003601f168201915b50505050509050919050565b60015460405163430c208160e01b815282916001600160a01b03169063430c2081906107469033908590600401611ec5565b60206040518083038186803b15801561075e57600080fd5b505afa158015610772573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506107969190810190611997565b6107b25760405162461bcd60e51b81526004016103589061202c565b6107bc4283610fec565b5050565b60015460405163430c208160e01b815282916001600160a01b03169063430c2081906107f29033908590600401611ec5565b60206040518083038186803b15801561080a57600080fd5b505afa15801561081e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506108429190810190611997565b61085e5760405162461bcd60e51b81526004016103589061202c565b6108e7600360008481526020019081526020016000205487878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061108e915050565b505050505050565b60015460405163b3f9e4cb60e01b8152606091829184916001600160a01b03169063b3f9e4cb9061092490849060040161204c565b60206040518083038186803b15801561093c57600080fd5b505afa158015610950573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610974919081019061178e565b6001600160a01b0316306001600160a01b0316146109a45760405162461bcd60e51b81526004016103589061201c565b6109ad85610673565b92506109b983856104f2565b9150509250929050565b60009081526020819052604090205490565b6001546001600160a01b03165b90565b6060600082519050606081604051908082528060200260200182016040528015610a2357816020015b6060815260200190600190039081610a0e5790505b50905060005b82811015610a6c57610a4d858281518110610a4057fe5b6020026020010151610673565b828281518110610a5957fe5b6020908102919091010152600101610a29565b509392505050565b610acf63ce92b33e60e01b858585604051602401610a9493929190611f24565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092178252519020838361129f565b600082815260036020526040902054610aea908585856113c3565b50505050565b610b1063ec129eea60e01b858585604051602401610a9493929190611f24565b610aea84848461140a565b60015460405163b3f9e4cb60e01b8152606091829184916001600160a01b03169063b3f9e4cb90610b5090849060040161204c565b60206040518083038186803b158015610b6857600080fd5b505afa158015610b7c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610ba0919081019061178e565b6001600160a01b0316306001600160a01b031614610bd05760405162461bcd60e51b81526004016103589061201c565b8451604080518281526020808402820101909152818015610c0557816020015b6060815260200190600190039081610bf05790505b50935080604051908082528060200260200182016040528015610c3c57816020015b6060815260200190600190039081610c275790505b50925060005b81811015610c9f57610c67878281518110610c5957fe5b6020026020010151876108ef565b8651879084908110610c7557fe5b60200260200101868481518110610c8857fe5b602090810291909101019190915252600101610c42565b5050509250929050565b610d3463310bd74b60e01b84604051602401610cc5919061204c565b60408051601f19818403018152918152602080830180516001600160e01b03166001600160e01b031990951694909417845291519092208251601f8601839004830281018301909352848352918691869086908190840183828082843760009201919091525061129f92505050565b610d3e4284610fec565b505050565b610d676347c8169960e01b8888888888604051602401610cc5959493929190611f96565b610df0600360008581526020019081526020016000205488888080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8c018190048102820181019092528a815292508a915089908190840183828082843760009201919091525089925061108e915050565b50505050505050565b60015460405163430c208160e01b815282916001600160a01b03169063430c208190610e2b9033908590600401611ec5565b60206040518083038186803b158015610e4357600080fd5b505afa158015610e57573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610e7b9190810190611997565b610acf5760405162461bcd60e51b81526004016103589061202c565b6005546040516355138f0d60e11b81526001600160a01b039091169063aa271e1a90610ec7903390600401611eb7565b60206040518083038186803b158015610edf57600080fd5b505afa158015610ef3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610f179190810190611997565b610f335760405162461bcd60e51b81526004016103589061203c565b600081815260036020526040902054610d3e908484846113c3565b60015460405163430c208160e01b815282916001600160a01b03169063430c208190610f809033908590600401611ec5565b60206040518083038186803b158015610f9857600080fd5b505afa158015610fac573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610fd09190810190611997565b610b105760405162461bcd60e51b81526004016103589061202c565b600081815260036020526040808220849055600154905163538361a760e01b81526001600160a01b039091169163538361a79161102d91859160040161205a565b600060405180830381600087803b15801561104757600080fd5b505af115801561105b573d6000803e3d6000fd5b50506040518392507f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9150600090a25050565b825160208085019190912060008381526002835260408082208883529093528281209251919290916110c1908790611e7d565b908152604051602091819003919091018120546001805463538361a760e01b84526002918316156101000260001901909216041592506001600160a01b03169063538361a7906111179086908690600401612075565b600060405180830381600087803b15801561113157600080fd5b505af1158015611145573d6000803e3d6000fd5b50505060008481526002602090815260408083208a8452909152908190209051869250611173908890611e7d565b90815260200160405180910390209080519060200190611194929190611521565b50600082815260046020526040902054600260001961010060018416150201909116046111dc57600082815260046020908152604090912086516111da92880190611521565b505b801561123157846040516111f09190611e7d565b6040518091039020837f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f86876040516112289190611fd6565b60405180910390a35b8360405161123f9190611e7d565b6040518091039020856040516112559190611e7d565b6040518091039020847f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d92888860405161128f929190611fe7565b60405180910390a4505050505050565b6000828152602081815260408083205490519092916112f59185916112e9916112ce918a913091899101611e39565b60405160208183030381529060405280519060200120611414565b9063ffffffff61144416565b90506001600160a01b0381161580159061138c575060015460405163430c208160e01b81526001600160a01b039091169063430c20819061133c9084908890600401611ee0565b60206040518083038186803b15801561135457600080fd5b505afa158015611368573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061138c9190810190611997565b6113a85760405162461bcd60e51b81526004016103589061200c565b50505060009081526020819052604090208054600101905550565b825160005b818110156108e757611402868683815181106113e057fe5b60200260200101518684815181106113f457fe5b60200260200101518661108e565b6001016113c8565b610f334282610fec565b6000816040516020016114279190611e89565b604051602081830303815290604052805190602001209050919050565b600081516041146114575750600061151b565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a082111561149d576000935050505061151b565b8060ff16601b141580156114b557508060ff16601c14155b156114c6576000935050505061151b565b600186828585604051600081526020016040526040516114e99493929190611f58565b6020604051602081039080840390855afa15801561150b573d6000803e3d6000fd5b5050506020604051035193505050505b92915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061156257805160ff191683800117855561158f565b8280016001018555821561158f579182015b8281111561158f578251825591602001919060010190611574565b5061159b92915061159f565b5090565b6109e291905b8082111561159b57600081556001016115a5565b805161151b816121a4565b60008083601f8401126115d657600080fd5b5081356001600160401b038111156115ed57600080fd5b60208301915083602082028301111561160557600080fd5b9250929050565b600082601f83011261161d57600080fd5b813561163061162b826120a9565b612083565b81815260209384019390925082018360005b8381101561166e57813586016116588882611734565b8452506020928301929190910190600101611642565b5050505092915050565b600082601f83011261168957600080fd5b813561169761162b826120a9565b915081818352602084019350602081019050838560208402820111156116bc57600080fd5b60005b8381101561166e57816116d28882611783565b84525060209283019291909101906001016116bf565b805161151b816121bb565b60008083601f84011261170557600080fd5b5081356001600160401b0381111561171c57600080fd5b60208301915083600182028301111561160557600080fd5b600082601f83011261174557600080fd5b813561175361162b826120c9565b9150808252602083016020830185838301111561176f57600080fd5b61177a83828461214b565b50505092915050565b803561151b816121c4565b6000602082840312156117a057600080fd5b60006117ac84846115b9565b949350505050565b6000806000604084860312156117c957600080fd5b83356001600160401b038111156117df57600080fd5b6117eb868287016115c4565b935093505060206117fe86828701611783565b9150509250925092565b60008060006060848603121561181d57600080fd5b83356001600160401b0381111561183357600080fd5b61183f8682870161160c565b93505060208401356001600160401b0381111561185b57600080fd5b6118678682870161160c565b92505060406117fe86828701611783565b6000806000806080858703121561188e57600080fd5b84356001600160401b038111156118a457600080fd5b6118b08782880161160c565b94505060208501356001600160401b038111156118cc57600080fd5b6118d88782880161160c565b93505060406118e987828801611783565b92505060608501356001600160401b0381111561190557600080fd5b61191187828801611734565b91505092959194509250565b60006020828403121561192f57600080fd5b81356001600160401b0381111561194557600080fd5b6117ac84828501611678565b6000806040838503121561196457600080fd5b82356001600160401b0381111561197a57600080fd5b61198685828601611678565b92505060206109b985828601611783565b6000602082840312156119a957600080fd5b60006117ac84846116e8565b6000806000806000606086880312156119cd57600080fd5b85356001600160401b038111156119e357600080fd5b6119ef888289016116f3565b955095505060208601356001600160401b03811115611a0d57600080fd5b611a19888289016116f3565b93509350506040611a2c88828901611783565b9150509295509295909350565b60008060008060008060006080888a031215611a5457600080fd5b87356001600160401b03811115611a6a57600080fd5b611a768a828b016116f3565b975097505060208801356001600160401b03811115611a9457600080fd5b611aa08a828b016116f3565b95509550506040611ab38a828b01611783565b93505060608801356001600160401b03811115611acf57600080fd5b611adb8a828b016116f3565b925092505092959891949750929550565b60008060408385031215611aff57600080fd5b82356001600160401b03811115611b1557600080fd5b61198685828601611734565b600060208284031215611b3357600080fd5b60006117ac8484611783565b600080600060408486031215611b5457600080fd5b6000611b608686611783565b93505060208401356001600160401b03811115611b7c57600080fd5b611b88868287016116f3565b92509250509250925092565b60008060408385031215611ba757600080fd5b60006119868585611783565b6000611bbf8383611ccb565b9392505050565b611bcf8161212a565b82525050565b611bcf81612108565b611bcf611bea82612108565b612183565b6000611bfa826120f6565b611c0481856120fa565b935083602082028501611c16856120f0565b8060005b85811015611c505784840389528151611c338582611bb3565b9450611c3e836120f0565b60209a909a0199925050600101611c1a565b5091979650505050505050565b611bcf816109e2565b611bcf611c72826109e2565b6109e2565b611bcf81612135565b6000611c8c83856120fa565b9350611c9983858461214b565b611ca283612194565b9093019392505050565b6000611cb88385612103565b9350611cc583858461214b565b50500190565b6000611cd6826120f6565b611ce081856120fa565b9350611cf0818560208601612157565b611ca281612194565b6000611d04826120f6565b611d0e8185612103565b9350611d1e818560208601612157565b9290920192915050565b6000611d35601c83612103565b7f19457468657265756d205369676e6564204d6573736167653a0a3332000000008152601c0192915050565b6000611d6e6011836120fa565b70494e56414c49445f5349474e415455524560781b815260200192915050565b6000611d9b601d836120fa565b7f5245534f4c5645525f44455441434845445f46524f4d5f444f4d41494e000000815260200192915050565b6000611dd4601f836120fa565b7f53454e4445525f49535f4e4f545f415050524f5645445f4f525f4f574e455200815260200192915050565b6000611e0d6014836120fa565b7329a2a72222a92fa4a9afa727aa2fa6a4a72a22a960611b815260200192915050565b611bcf81612124565b6000611e458286611c66565b602082019150611e558285611bde565b601482019150611e658284611c66565b506020019392505050565b60006117ac828486611cac565b6000611bbf8284611cf9565b6000611e9482611d28565b9150611ea08284611c66565b50602001919050565b6020810161151b8284611bd5565b6020810161151b8284611bc6565b60408101611ed38285611bc6565b611bbf6020830184611c5d565b60408101611ed38285611bd5565b60208082528101611bbf8184611bef565b60408082528101611f108185611bef565b905081810360208301526117ac8184611bef565b60608082528101611f358186611bef565b90508181036020830152611f498185611bef565b90506117ac6040830184611c5d565b60808101611f668287611c5d565b611f736020830186611e30565b611f806040830185611c5d565b611f8d6060830184611c5d565b95945050505050565b60608082528101611fa8818789611c80565b90508181036020830152611fbd818587611c80565b9050611fcc6040830184611c5d565b9695505050505050565b60208082528101611bbf8184611ccb565b60408082528101611ff88185611ccb565b905081810360208301526117ac8184611ccb565b6020808252810161151b81611d61565b6020808252810161151b81611d8e565b6020808252810161151b81611dc7565b6020808252810161151b81611e00565b6020810161151b8284611c5d565b604081016120688285611c5d565b611bbf6020830184611c77565b60408101611ed38285611c5d565b6040518181016001600160401b03811182821017156120a157600080fd5b604052919050565b60006001600160401b038211156120bf57600080fd5b5060209081020190565b60006001600160401b038211156120df57600080fd5b506020601f91909101601f19160190565b60200190565b5190565b90815260200190565b919050565b600061151b82612118565b151590565b6001600160a01b031690565b60ff1690565b600061151b82612140565b600061151b826109e2565b600061151b82612108565b82818337506000910152565b60005b8381101561217257818101518382015260200161215a565b83811115610aea5750506000910152565b600061151b82600061151b8261219e565b601f01601f191690565b60601b90565b6121ad81612108565b81146121b857600080fd5b50565b6121ad81612113565b6121ad816109e256fea365627a7a723158207a1d8dfd286d14fcafd1812a4c44813691ac746a5a23fa711ac5551c9509654d6c6578706572696d656e74616cf564736f6c634300050c0040","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x5":"0x4a3c194eb88966178bfdd81744dddafed611b830"}},"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa":{"nonce":93,"balance":"0x35aac60bbae01d424b","code":"0x","storage":{}}},"best_block_number":"0x5d"} \ No newline at end of file +{"block":{"number":"0x5d","coinbase":"0x0000000000000000000000000000000000000000","timestamp":"0x664ce706","gas_limit":"0x6691b7","basefee":"0x1b818","difficulty":"0x0","prevrandao":"0x0000000000000000000000000000000000000000000000000000000000000000","blob_excess_gas_and_price":{"excess_blob_gas":0,"blob_gasprice":1}},"accounts":{"0x0000000000000000000000000000000000000000":{"nonce":0,"balance":"0xc968d22370860","code":"0x","storage":{}},"0x00e39a5004299871ab3b00fed5a39a715f181d02":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x66":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x67":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xd178b720229c39de617846f84cf9c8d32a63a23d","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0x0458f653495fb8d9bd0e7df468c2bf76d26c7bd9":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f7e83aee1461002d575b5f80fd5b61004061003b3660046105ba565b610054565b604051901515815260200160405180910390f35b5f601482146100a95760405162461bcd60e51b815260206004820152601860248201527f496e76616c696420736861312068617368206c656e6774680000000000000000604482015260640160405180910390fd5b5f6100ec5f85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101599050565b6bffffffffffffffffffffffff191690505f61013c87878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061018a92505050565b6bffffffffffffffffffffffff1916919091149695505050505050565b81515f90610168836014610621565b1115610172575f80fd5b5001602001516bffffffffffffffffffffffff191690565b5f6040518251602084019350604067ffffffffffffffc0600183011601600982820310600181036101bc576040820191505b50776745230100efcdab890098badcfe001032547600c3d2e1f061020d565b5f8383101561020657508082015192829003926020841015610206575f1960208590036101000a0119165b9392505050565b5f5b82811015610514576102228482896101db565b85526102328460208301896101db565b60208601526040818503106001810361024e5760808286038701535b506040830381146001810361026b57602086018051600887021790525b5060405b60808110156102f357858101603f19810151603719820151601f19830151600b198401516002911891909218189081027ffffffffefffffffefffffffefffffffefffffffefffffffefffffffefffffffe1663800000009091047c010000000100000001000000010000000100000001000000010000000116179052600c0161026f565b5060805b61014081101561037c57858101607f19810151606f19820151603f198301516017198401516004911891909218189081027ffffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffc1663400000009091047c0300000003000000030000000300000003000000030000000300000003161790526018016102f7565b50815f805f5b60508110156104ea576014810480156103b257600181146103d957600281146103fe576003811461042857610449565b600160281b8504600160501b86048118600160781b870416189350635a8279999250610449565b600160281b8504600160781b8604600160501b870418189350636ed9eba19250610449565b600160501b8504600160781b8604818117600160281b8804169116179350638f1bbcdc9250610449565b600160281b8504600160781b8604600160501b87041818935063ca62c1d692505b50601f600160bb1b8504168063ffffffe06001609b1b87041617905080840190508063ffffffff8616019050808301905080600160e01b600484028c015104019050600160a01b8102600160281b860417945050600160501b633fffffff600160521b86041663c00000006604000000000000870416170277ffffffff00ffffffff000000000000ffffffff00ffffffff8516179350600181019050610382565b5050509190910177ffffffff00ffffffff00ffffffff00ffffffff00ffffffff169060400161020f565b50600160601b63ffffffff821667ffffffff000000006101008404166bffffffff00000000000000006201000085041663ffffffff60601b630100000086041663ffffffff60801b6401000000008704161717171702945050505050919050565b5f8083601f840112610585575f80fd5b50813567ffffffffffffffff81111561059c575f80fd5b6020830191508360208285010111156105b3575f80fd5b9250929050565b5f805f80604085870312156105cd575f80fd5b843567ffffffffffffffff808211156105e4575f80fd5b6105f088838901610575565b90965094506020870135915080821115610608575f80fd5b5061061587828801610575565b95989497509550505050565b8082018082111561064057634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x06e2822b8856749ed179c77140dbc5f5a27410a4":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063de8f50a11461002d575b5f80fd5b61004061003b36600461051c565b610054565b604051901515815260200160405180910390f35b5f6060805f61009c60048b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506102e79050565b60ff1690508015610166576100f060058261ffff168c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b925061015f6101008260056105c3565b61ffff908116906005906101169085168d6105e5565b61012091906105e5565b8c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b915061021d565b6101a960058b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250929392505061038b9050565b90506101f460078261ffff168c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b925061021a6102048260076105c3565b61ffff908116906007906101169085168d6105e5565b91505b5f606061026084868a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152506103b192505050565b90925090508180156102d757506102856020825161027e91906105e5565b82906103cb565b60028b8b6040516102979291906105f8565b602060405180830381855afa1580156102b2573d5f803e3d5ffd5b5050506040513d601f19601f820116820180604052508101906102d59190610607565b145b9c9b505050505050505050505050565b5f8282815181106102fa576102fa61061e565b016020015160f81c90505b92915050565b825160609061031a8385610632565b1115610324575f80fd5b5f8267ffffffffffffffff81111561033e5761033e610645565b6040519080825280601f01601f191660200182016040528015610368576020820181803683370190505b509050602080820190868601016103808282876103ed565b509095945050505050565b81515f9061039a836002610632565b11156103a4575f80fd5b50016002015161ffff1690565b5f60606103bf838587610442565b91509150935093915050565b81515f906103da836020610632565b11156103e4575f80fd5b50016020015190565b602081106104255781518352610404602084610632565b9250610411602083610632565b915061041e6020826105e5565b90506103ed565b905182516020929092036101000a5f190180199091169116179052565b5f60605f85518551855188888860405160200161046496959493929190610686565b6040516020818303038152906040529050835167ffffffffffffffff81111561048f5761048f610645565b6040519080825280601f01601f1916602001820160405280156104b9576020820181803683370190505b50915083516020830182516020840160055afa925050935093915050565b5f8083601f8401126104e7575f80fd5b50813567ffffffffffffffff8111156104fe575f80fd5b602083019150836020828501011115610515575f80fd5b9250929050565b5f805f805f8060608789031215610531575f80fd5b863567ffffffffffffffff80821115610548575f80fd5b6105548a838b016104d7565b9098509650602089013591508082111561056c575f80fd5b6105788a838b016104d7565b90965094506040890135915080821115610590575f80fd5b5061059d89828a016104d7565b979a9699509497509295939492505050565b634e487b7160e01b5f52601160045260245ffd5b61ffff8181168382160190808211156105de576105de6105af565b5092915050565b81810381811115610305576103056105af565b818382375f9101908152919050565b5f60208284031215610617575f80fd5b5051919050565b634e487b7160e01b5f52603260045260245ffd5b80820180821115610305576103056105af565b634e487b7160e01b5f52604160045260245ffd5b5f81515f5b81811015610678576020818501810151868301520161065e565b505f93019283525090919050565b8681528560208201528460408201525f6106b56106af6106a96060850188610659565b86610659565b84610659565b9897505050505050505056fea164736f6c6343000818000a","storage":{}},"0x0712e8e819712c3bfdb098ce51c87a4ac0296fd8":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x0930ffb2c192b0c9a9dd2372cf7f2845ef39cbb6":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x65":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x66":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xbe92182cab5b84fd18b34881a0c32771e84f5b8b","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c8121905":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x107733fed96c4cd390c944a31f5425a7fb98ae5e":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x65":"0x556e73746f707061626c6520446f6d61696e7300000000000000000000000026","0x66":"0x5544000000000000000000000000000000000000000000000000000000000004","0x133":"0x68747470733a2f2f6578616d706c652e636f6d2f000000000000000000000028","0x134":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x9c74364589a7bce52d7a232f90c98b979577d9ab711dbe7e9fb985471178bff":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf29a433ca043c2d5f13825944af9d019209f338df87172c6b8012dce3044881":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf319a2ef598111826b455194189a27454a0286226eb066e1116f605e0373b37":"0x0","0x1257bbdf5bed452b3eda1d974a9839972d4d54d7fb1cde6a652e653346cc29b8":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x12c033f2252861b1bd15e9b5c71ef1cf26ca53de15eabc3b49e06f596e8755ec":"0x0","0x1348552952ac59b1c2522e84f684e36775420b449eddcdbd28f217183ed58b09":"0x0","0x149026695ebdd2bd6be0a7006aec5d10ddffbe46be181e4468980ea83c004fe9":"0x0","0x14c854a78d51371251661a408306c75d2515b5d509b295a58205e48267082bdc":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x18f06622a1abedc7bb78fcc98b2375188aef6c03b9247beee780b0b095d60285":"0x0","0x201ef5e312d372e2aeac4cf173b46ad2985127c7381f4f9acae5ebbd3a5e3861":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x2215c0abaeffcb5feae8a439b3185f8fba5dd6d97529a56c7609cd41fafdf5f1":"0x1","0x23513200931f98893f46373666c13964c7a821c5b40da7951b921629acf02735":"0x0","0x23f87654b79c6db28828f317e47d0c8deb9eaa2ea4e213fef901836c85036bf3":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x2e4566d865f2e159531492d7643e25e502917762b29082282ab9dfee8fbf54c7":"0x0","0x31fc31c15d389c5908095d314bb8b258352d51e18ac8a2f7fe15f3a0af519145":"0x0","0x3467fdbb447be3074b11c625b56e54d7ab44f3804bef205b07dd436d707d06d5":"0x0","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x62b11ad5f582a5c5d378fb310125b030042554f1","0x3cd80e7291e5f6dffa9af6eb70d47145a8fdd40acb8d09dfd0cf374e8c239b37":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x3f86c4990e663ffa5011ed38824fca68af7e0592eb22f41aebdec0ce84ee672e":"0x0","0x406aa3bf31381c8a323679af48792dfa2e7aa09dd0eb919e307dc4bf84216ff6":"0x0","0x47ce17acd30cc86e021ac7b23be8138ea767f6da503362aac5888a0679270eed":"0x0","0x4a7983c36f64e6df4d467cf706c128c273d30c24bbb172e251a5740624cc0bd3":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x4c42d98041cda7cb7d56b5d04731bd436366eb9f05c30f43671f1d1e2c0b0fa4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x55926eed7087c8cbfa1492f6d367f5e4c14c8d8cd59e2918c37184091369efb1":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x5b20f40cb5e9e634a90df9a72b516c11cc52281a4d1b7b67e672e2fe544ff22f":"0x0","0x6dac3e1cfae338e10c9c2f5000f6256d09afa83708761042001cea734f470ac1":"0x0","0x6defc32a546a6fb1b745bd1bb04e27085e94f01d7ef79587aee2c80853c43a53":"0x0","0x760b245be050a725a39b4fc089ad474a5fd40efa17101e112d30195d590779b4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x7bee59fcac76da32acb23def57eaaf959a4372a4fc180978fbd54f7a4c4b2f3d":"0x0","0x804aee9448e0b539a009ee7c6dd57e686c72e7b182e9622a42922b245a97e61e":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x825f7f8567cfd669c3beab41edff07d4aa51436123deeb0d3623b6a8fdec893c":"0x0","0x8717a3236e6a948df94444f035834fa8f7c5ee663a29f3580f3ef43ab051d6bd":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8a34e37883baf84417a33bb02eec8d1e43e363f617029800ff166614df3f112f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8bd1acdc45b63f1edf5db0b1444f1c4a6f82bf0a5a0a7231c2dd7b76a2b1e35c":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87":"0x0","0x8ed4e9fbdf86edd9f3eb1c8d4fbfc53a2eb863faf4cf5e0d2b307c0b33030091":"0x0","0x8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x90d72780b77edcd0c8daffbac0b21264679e851b734cb090e2b144eb3a28bb98":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x93fc964857984ff804a65eaceac4062669948f2b651ddc6b71373ad142bf45e0":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x9770fa903e700367e0306ab8fd70a2bb4f049417d341a2f8a2409d8d6a2218d1":"0x0","0xb1016fe231c2ed9dba8c95d2658191823b4b9ffa61a7aea530802c6b2ff27c41":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xbe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafe":"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f","0xbe7c5c707db1c91bd2c84880bb1e177b65886d295d9a62df8edfe38f8066cc81":"0x0","0xc3cd64a46de7309013ddb93a16a3024c2e46fb931e4744edf2610fb119f716f5":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xc563f9d3175978a619bae1a8175d3ea4be91d3890345085c5eb16f83b678a3d9":"0x0","0xc5b5cdb7b939f9d661f58f28c37e10cf71d45dacfea2581c88ae4a17aaf55e6e":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xd386775169d9e0716e9b5b08561984726edaa9febd0ca8e5468ecffa112078c7":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xe3b736cdcc6a09d7e3a05ffb63b11f11c91958d861443c3409d3fd863e8217bd":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xe3e5b75e3dff543bfbfe5b494e4e3243b4d9d0b3d794725cea46c28fe6be50e4":"0x0","0xe7d61626cac95282d296ee7ab5958e3e72e32eb959a7cab1d37c0f9d6d69c18a":"0x1a","0xeca5e1ccaa645ce2be97a867a1f8aeeb63ea833aeb009c0df0553b42b30c683f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf08305746cdba1d0eaa65036694838a3db122973267ffc57739d605c320c680a":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf0d566acc03395f71b37890f455d51d93197adf754ea72aba21427dc66b437df":"0x0","0xf230898ba4fe40c52f958d03013d995f822e25a5d4fae43bbdc6e92623cea0bd":"0x0","0xf245a9962043f44f4af98f9952a3bd29d91eb05418e4bb567b9de8f27e239b13":"0x0","0xf2a19ade13962e8675aecf2fbe51913877912f9e48e899806b6e06e82f9a980f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf2fab50b0b53245ddfa1bcfcdf4c73e209d6921dad704d173cf04cbbadc8e346":"0x0","0xfa6f3ee10d719cb3457d10c539ff3d77b8e56852ea62f68b2f9f85ad691ed6b4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xfff3abb219acc6ef4eed6e93a5682023229370196f352cdf3a71a88d881e3487":"0x0"}},"0x11dd97b7ca847dfb6504e61b7b9eb30f55e554a0":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a424740014610090575b600080fd5b610059610054366004610ba9565b6100b3565b6040516100669190610c98565b60405180910390f35b61008261007d366004610cab565b6101ce565b604051908152602001610066565b6100a361009e366004610ba9565b610332565b6040519015158152602001610066565b606060005a6001546040805163b3f9e4cb60e01b81529088013560048201529192506000916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561010a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061012e9190610cd9565b90506101c26101406020880188610cf6565b8260408901358561015460608c018c610d13565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8f018190048102820181019092528d815292508d91508c90819084018382808284376000920191909152506103fb92505050565b925050505b9392505050565b60025460015460405163b3f9e4cb60e01b8152600481018490526000926001600160a01b0390811692169063b3f9e4cb90602401602060405180830381865afa92505050801561023b575060408051601f3d908101601f1916820190925261023891810190610cd9565b60015b156102435790505b6001600160a01b0381163b156102c557604051636ccbae5f60e01b81526004810184905281906001600160a01b03821690636ccbae5f90602401602060405180830381865afa9250505080156102b6575060408051601f3d908101601f191682019092526102b391810190610d5a565b60015b156102c357949350505050565b505b600254604051636ccbae5f60e01b8152600481018590526001600160a01b0390911690636ccbae5f90602401602060405180830381865afa15801561030e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101c79190610d5a565b6001546040805163b3f9e4cb60e01b815290850135600482015260009182916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa158015610383573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103a79190610cd9565b90506103f26103b586610e0b565b8286868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506104d392505050565b95945050505050565b6060600080876001600160a01b0316866104178b8a898961051f565b6040516104249190610eb5565b60006040518083038160008787f1925050503d8060008114610462576040519150601f19603f3d011682016040523d82523d6000602084013e610467565b606091505b509092509050610478603f87610ed1565b5a1161048657610486610ef3565b6104c682826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506105d4565b9998505050505050505050565b60006104e084848461060d565b8015610514575060608401516020908101516001600160e01b031990811660009081529182905260409091205460e01b1615155b949350505050565b50565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036105b15760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526105c982828661074c565b979650505050505050565b606083156105e35750816101c7565b8251156105f35782518084602001fd5b8160405162461bcd60e51b81526004016105a89190610c98565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015610654573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106789190610d5a565b905060006107268660600151805190602001208688602001516040516020016106c69392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156101c2575085516101c2906001600160a01b03168286610935565b60606001600160e01b0319841663b87abc1160e01b036107cd5760008380602001905181019061077c9190610d5a565b9050848184604051602401610792929190610f09565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915291506101c79050565b6001600160e01b0319841663c597407360e01b03610859576000806000858060200190518101906107fe9190610f67565b925092509250868383838860405160240161081c9493929190610fd4565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293506101c792505050565b6001600160e01b031984166311ed383160e31b036108a85760008060008580602001905181019061088a91906110a6565b925092509250868383838860405160240161081c9493929190611157565b6001600160e01b031984166328d55f9b60e21b036101c7576000806000858060200190518101906108d991906110a6565b92509250925086838383886040516024016108f79493929190611157565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293505050509392505050565b60008060006109448585610a77565b9092509050600081600481111561095d5761095d61117c565b14801561097b5750856001600160a01b0316826001600160a01b0316145b1561098b576001925050506101c7565b600080876001600160a01b0316631626ba7e60e01b88886040516024016109b3929190610f09565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516109f19190610eb5565b600060405180830381855afa9150503d8060008114610a2c576040519150601f19603f3d011682016040523d82523d6000602084013e610a31565b606091505b5091509150818015610a44575080516020145b8015610a6b57508051630b135d3f60e11b90610a699083016020908101908401610d5a565b145b98975050505050505050565b6000808251604103610aad5760208301516040840151606085015160001a610aa187828585610abc565b94509450505050610ab5565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610af35750600090506003610ba0565b8460ff16601b14158015610b0b57508460ff16601c14155b15610b1c5750600090506004610ba0565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610b70573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610b9957600060019250925050610ba0565b9150600090505b94509492505050565b600080600060408486031215610bbe57600080fd5b833567ffffffffffffffff80821115610bd657600080fd5b9085019060808288031215610bea57600080fd5b90935060208501359080821115610c0057600080fd5b818601915086601f830112610c1457600080fd5b813581811115610c2357600080fd5b876020828501011115610c3557600080fd5b6020830194508093505050509250925092565b60005b83811015610c63578181015183820152602001610c4b565b50506000910152565b60008151808452610c84816020860160208601610c48565b601f01601f19169290920160200192915050565b6020815260006101c76020830184610c6c565b600060208284031215610cbd57600080fd5b5035919050565b6001600160a01b038116811461051c57600080fd5b600060208284031215610ceb57600080fd5b81516101c781610cc4565b600060208284031215610d0857600080fd5b81356101c781610cc4565b6000808335601e19843603018112610d2a57600080fd5b83018035915067ffffffffffffffff821115610d4557600080fd5b602001915036819003821315610ab557600080fd5b600060208284031215610d6c57600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610dac57610dac610d73565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ddb57610ddb610d73565b604052919050565b600067ffffffffffffffff821115610dfd57610dfd610d73565b50601f01601f191660200190565b600060808236031215610e1d57600080fd5b610e25610d89565b8235610e3081610cc4565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610e6057600080fd5b840136601f820112610e7157600080fd5b8035610e84610e7f82610de3565b610db2565b8181523684838501011115610e9857600080fd5b818484018583013760009181019093015250606082015292915050565b60008251610ec7818460208701610c48565b9190910192915050565b600082610eee57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b8281526040602082015260006105146040830184610c6c565b600082601f830112610f3357600080fd5b8151610f41610e7f82610de3565b818152846020838601011115610f5657600080fd5b610514826020830160208701610c48565b600080600060608486031215610f7c57600080fd5b835167ffffffffffffffff80821115610f9457600080fd5b610fa087838801610f22565b94506020860151915080821115610fb657600080fd5b50610fc386828701610f22565b925050604084015190509250925092565b608081526000610fe76080830187610c6c565b8281036020840152610ff98187610c6c565b905084604084015282810360608401526105c98185610c6c565b600082601f83011261102457600080fd5b8151602067ffffffffffffffff8083111561104157611041610d73565b8260051b611050838201610db2565b938452858101830193838101908886111561106a57600080fd5b84880192505b85831015610a6b578251848111156110885760008081fd5b6110968a87838c0101610f22565b8352509184019190840190611070565b6000806000606084860312156110bb57600080fd5b835167ffffffffffffffff808211156110d357600080fd5b6110df87838801611013565b945060208601519150808211156110f557600080fd5b50610fc386828701611013565b600081518084526020808501808196508360051b8101915082860160005b8581101561114a578284038952611138848351610c6c565b98850198935090840190600101611120565b5091979650505050505050565b60808152600061116a6080830187611102565b8281036020840152610ff98187611102565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x2":"0xf8c26340c1eaea6c7ff1760b25005e1306953572","0x1e74f978992d7d64ddac400bd4aae9eefd60fa0b8456650273f5f50148803323":"0xa3557e6c","0x23c84c23be8f829809d1b1502c647c6c59fb6b2345b163a2ca3e7d4f9855975c":"0x8f69c188","0xa0286316c9d3cb00f4f54a9f1096cefaa1748bb5a5395e7fa1563568ebb3e6c3":"0xb87abc11","0xdc138de224807be243ee38fe9e746cce5d437a256b87be90b80240e0811ad043":"0xc5974073"}},"0x145908bbcfc7b258e4d4d9a586f6e3249ae80216":{"nonce":1,"balance":"0x0","code":"0x3d5c","storage":{}},"0x17cda4e23f7237277952e075b1c48467aabfacc0":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c806368f9dab21461002d575b5f80fd5b61004061003b36600461088b565b610052565b60405190815260200160405180910390f35b5f61006f6040518060400160405280606081526020015f81525090565b61008e61007c858861090d565b61008790601061090d565b82906101d1565b506100d085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250859392505061023a9050565b5061011287878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250859392505061023a9050565b505f610120825f0151610266565b905083156101bc5760408051808201909152606081525f602090910181905282515261014c825f610650565b5061018e88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250869392505061023a9050565b505f5b848110156101ba576101a4835f8461067f565b5082516101b090610266565b9150600101610191565b505b6001600160601b031916979650505050505050565b60408051808201909152606081525f60208201526101f0602083610920565b1561021857610200602083610920565b61020b90602061093f565b610215908361090d565b91505b506020808301829052604080518085525f815283019091019052815b92915050565b60408051808201909152606081525f602082015261025f83845f0151518485516106b2565b9392505050565b5f6040518251602084019350604067ffffffffffffffc060018301160160098282031060018103610298576040820191505b50776745230100efcdab890098badcfe001032547600c3d2e1f06102e8565b5f8383101561025f5750808201519282900392602084101561025f575f1960208590036101000a0119169392505050565b5f5b828110156105ef576102fd8482896102b7565b855261030d8460208301896102b7565b6020860152604081850310600181036103295760808286038701535b506040830381146001810361034657602086018051600887021790525b5060405b60808110156103ce57858101603f19810151603719820151601f19830151600b198401516002911891909218189081027ffffffffefffffffefffffffefffffffefffffffefffffffefffffffefffffffe1663800000009091047c010000000100000001000000010000000100000001000000010000000116179052600c0161034a565b5060805b61014081101561045757858101607f19810151606f19820151603f198301516017198401516004911891909218189081027ffffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffc1663400000009091047c0300000003000000030000000300000003000000030000000300000003161790526018016103d2565b50815f805f5b60508110156105c55760148104801561048d57600181146104b457600281146104d9576003811461050357610524565b600160281b8504600160501b86048118600160781b870416189350635a8279999250610524565b600160281b8504600160781b8604600160501b870418189350636ed9eba19250610524565b600160501b8504600160781b8604818117600160281b8804169116179350638f1bbcdc9250610524565b600160281b8504600160781b8604600160501b87041818935063ca62c1d692505b50601f600160bb1b8504168063ffffffe06001609b1b87041617905080840190508063ffffffff8616019050808301905080600160e01b600484028c015104019050600160a01b8102600160281b860417945050600160501b633fffffff600160521b86041663c00000006604000000000000870416170277ffffffff00ffffffff000000000000ffffffff00ffffffff851617935060018101905061045d565b5050509190910177ffffffff00ffffffff00ffffffff00ffffffff00ffffffff16906040016102ea565b50600160601b63ffffffff821667ffffffff000000006101008404166bffffffff00000000000000006201000085041663ffffffff60601b630100000086041663ffffffff60801b6401000000008704161717171702945050505050919050565b60408051808201909152606081525f602082015282515161025f9084906001600160601b031985166014610798565b60408051808201909152606081525f60208201526106aa84846001600160601b031985166014610798565b949350505050565b60408051808201909152606081525f602082015282518211156106d3575f80fd5b60208501516106e2838661090d565b1115610715576107158561070587602001518786610700919061090d565b610813565b610710906002610952565b610829565b5f808651805187602083010193508088870111156107335787860182525b505050602084015b60208410610773578051825261075260208361090d565b915061075f60208261090d565b905061076c60208561093f565b935061073b565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b60408051808201909152606081525f602082015260208501516107bb858461090d565b11156107cf576107cf85610705868561090d565b5f6001836101000a0390508260200360080284901c93508551838682010185831982511617815250805184870111156108085783860181525b509495945050505050565b5f81831115610823575081610234565b50919050565b815161083583836101d1565b50610840838261023a565b50505050565b5f8083601f840112610856575f80fd5b50813567ffffffffffffffff81111561086d575f80fd5b602083019150836020828501011115610884575f80fd5b9250929050565b5f805f805f6060868803121561089f575f80fd5b853567ffffffffffffffff808211156108b6575f80fd5b6108c289838a01610846565b909750955060208801359150808211156108da575f80fd5b506108e788828901610846565b96999598509660400135949350505050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610234576102346108f9565b5f8261093a57634e487b7160e01b5f52601260045260245ffd5b500690565b81810381811115610234576102346108f9565b8082028115828204841417610234576102346108f956fea164736f6c6343000818000a","storage":{}},"0x19356cc2300833e690088a5a09a2044a3cc2a1e2":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x229c56b7805ab5935a883207f6a6bd5847e65aee":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106102ae5760003560e01c8063906cecc111610175578063b9998a24116100dc578063d547741f11610095578063f2fde38b1161006f578063f2fde38b14610892578063f5243bc4146108b2578063f940e385146108d2578063ffa1ad74146108f257600080fd5b8063d547741f1461083f578063d7db74c71461085f578063ec5273891461087257600080fd5b8063b9998a241461077d578063cc2a9a5b1461079d578063cc2c3fc4146107bd578063ceeb4f50146107dd578063d1f5692c146107fd578063d53913931461081d57600080fd5b8063a3a3f7f61161012e578063a3a3f7f614610690578063a3f4df7e146106b0578063a849d65c146106fd578063aa271e1a1461071d578063b0aa98c71461073d578063b3ab15fb1461075d57600080fd5b8063906cecc1146105e657806391d1485414610606578063983b2d5614610626578063986502751461064657806399e0dd7c1461065b578063a217fddf1461067b57600080fd5b80635b6fa8db11610219578063715018a6116101d2578063715018a61461054b57806371e2a6571461056057806377a2a5891461058057806381c81d35146105a05780638456cb59146105b35780638da5cb5b146105c857600080fd5b80635b6fa8db146104a35780635c975abb146104c35780635cd7e3b3146104d85780635e22cd86146104f85780635fc1964f14610518578063634486da1461053857600080fd5b80633092afd51161026b5780633092afd5146103a857806336568abe146103c85780633f41b614146103e85780633f4ba83a1461042057806351cff8d914610435578063572b6c051461045557600080fd5b806301ffc9a7146102b35780631edb948e146102e857806320c5429b1461030a578063248a9ca31461032a578063268b15ed146103685780632f2ff15d14610388575b600080fd5b3480156102bf57600080fd5b506102d36102ce366004613dc4565b610923565b60405190151581526020015b60405180910390f35b3480156102f457600080fd5b50610308610303366004613e13565b61095a565b005b34801561031657600080fd5b50610308610325366004613e3f565b610b03565b34801561033657600080fd5b5061035a610345366004613e3f565b60009081526097602052604090206001015490565b6040519081526020016102df565b34801561037457600080fd5b50610308610383366004613e99565b610c26565b34801561039457600080fd5b506103086103a3366004613f04565b610cb9565b3480156103b457600080fd5b506103086103c3366004613f34565b610ce3565b3480156103d457600080fd5b506103086103e3366004613f04565b610cf7565b3480156103f457600080fd5b5060c954610408906001600160a01b031681565b6040516001600160a01b0390911681526020016102df565b34801561042c57600080fd5b50610308610d85565b34801561044157600080fd5b50610308610450366004613f34565b610d97565b34801561046157600080fd5b506102d3610470366004613f34565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546001600160a01b0390811691161490565b3480156104af57600080fd5b5060cc54610408906001600160a01b031681565b3480156104cf57600080fd5b506102d3610e37565b3480156104e457600080fd5b506103086104f3366004613fa3565b610e4d565b34801561050457600080fd5b50610308610513366004614062565b6110b1565b34801561052457600080fd5b5061030861053336600461419c565b6112f6565b610308610546366004613f34565b61133e565b34801561055757600080fd5b50610308611401565b34801561056c57600080fd5b5061030861057b36600461419c565b611413565b34801561058c57600080fd5b5060ce54610408906001600160a01b031681565b6103086105ae366004613f34565b61145b565b3480156105bf57600080fd5b506103086114d8565b3480156105d457600080fd5b506033546001600160a01b0316610408565b3480156105f257600080fd5b5061030861060136600461423a565b6114e8565b34801561061257600080fd5b506102d3610621366004613f04565b61156e565b34801561063257600080fd5b50610308610641366004613f34565b611599565b34801561065257600080fd5b506103086115aa565b34801561066757600080fd5b50610308610676366004614295565b6115c4565b34801561068757600080fd5b5061035a600081565b34801561069c57600080fd5b506103086106ab3660046142d6565b6116ab565b3480156106bc57600080fd5b506106f0604051806040016040528060148152602001732aa7299d1026b4b73a34b7339026b0b730b3b2b960611b81525081565b6040516102df919061437c565b34801561070957600080fd5b5060cb54610408906001600160a01b031681565b34801561072957600080fd5b506102d3610738366004613f34565b6116f4565b34801561074957600080fd5b506102d3610758366004613e3f565b61170e565b34801561076957600080fd5b50610308610778366004613f34565b61176c565b34801561078957600080fd5b50610308610798366004613f34565b611796565b3480156107a957600080fd5b506103086107b836600461438f565b6117db565b3480156107c957600080fd5b5060ca54610408906001600160a01b031681565b3480156107e957600080fd5b506103086107f8366004614411565b611cd2565b34801561080957600080fd5b506103086108183660046144c6565b611d76565b34801561082957600080fd5b5061035a600080516020614ef483398151915281565b34801561084b57600080fd5b5061030861085a366004613f04565b611e2d565b61030861086d3660046144fb565b611e52565b34801561087e57600080fd5b5061030861088d366004613e3f565b611fe2565b34801561089e57600080fd5b506103086108ad366004613f34565b612054565b3480156108be57600080fd5b506103086108cd3660046145f0565b612070565b3480156108de57600080fd5b506103086108ed366004614708565b612222565b3480156108fe57600080fd5b506106f060405180604001604052806005815260200164302e352e3160d81b81525081565b60006001600160e01b03198216637965db0b60e01b148061095457506301ffc9a760e01b6001600160e01b03198316145b92915050565b61096561073861239e565b61098a5760405162461bcd60e51b815260040161098190614736565b60405180910390fd5b60c95460405163baef73e960e01b8152600481018390526000916001600160a01b03169063baef73e990602401602060405180830381865afa1580156109d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109f8919061476b565b9050806001600160401b0316600003610a235760405162461bcd60e51b815260040161098190614788565b806001600160401b0316836001600160401b031611610a905760405162461bcd60e51b815260206004820152602360248201527f4d696e74696e674d616e616765723a204558504952595f4e4f545f455854454e60448201526211115160ea1b6064820152608401610981565b60c954604051631fb9763760e11b81526001600160401b0385166004820152602481018490526001600160a01b0390911690633f72ec6e906044015b600060405180830381600087803b158015610ae657600080fd5b505af1158015610afa573d6000803e3d6000fd5b50505050505050565b610b0e61073861239e565b610b2a5760405162461bcd60e51b815260040161098190614736565b60c95460405163baef73e960e01b8152600481018390526001600160a01b039091169063baef73e990602401602060405180830381865afa158015610b73573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b97919061476b565b6001600160401b0316600003610bbf5760405162461bcd60e51b815260040161098190614788565b60c954604051637eee288d60e01b8152306004820152602481018390526001600160a01b0390911690637eee288d90604401600060405180830381600087803b158015610c0b57600080fd5b505af1158015610c1f573d6000803e3d6000fd5b5050505050565b8282828080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250610c6993508592508491506123ad565b610c71610e37565b15610c8e5760405162461bcd60e51b8152600401610981906147cb565b6060610afa610c9b61239e565b610cae88610ca98989612584565b6125b0565b8384600060016126c1565b600082815260976020526040902060010154610cd481612c15565b610cde8383612c26565b505050565b610ceb612cad565b610cf481612d26565b50565b610cff61239e565b6001600160a01b0316816001600160a01b031614610d775760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610981565b610d818282612d3e565b5050565b610d8d612cad565b610d95612dc3565b565b610d9f612cad565b6001600160a01b038116610db257600080fd5b60405147906001600160a01b0383169082156108fc029083906000818181858888f19350505050158015610dea573d6000803e3d6000fd5b50604080516001600160a01b03841681526020810183905260008183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a15050565b600080516020614ed48339815191525460ff1690565b610e5786886147f5565b8051600203610e8c57610e6b61073861239e565b610e875760405162461bcd60e51b8152600401610981906148bf565b610fd1565b6000610e9782612e6b565b60c9549092506001600160a01b0316905063430c2081610eb561239e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015610f00573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f249190614903565b80610fb3575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa158015610f7d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fa19190614903565b8015610fb35750610fb361073861239e565b610fcf5760405162461bcd60e51b815260040161098190614920565b505b610fdb87896147f5565b6000600282511015610fff5760405162461bcd60e51b81526004016109819061496f565b6110546110336000846001865161101691906149ca565b81518110611026576110266149dd565b6020026020010151612ea6565b83600081518110611046576110466149dd565b6020026020010151836123ad565b61105c610e37565b156110795760405162461bcd60e51b8152600401610981906147cb565b6110a38b6110878b8d6147f5565b6110918a8c6147f5565b61109b898b6147f5565b6000896126c1565b505050505050505050505050565b6110bb87896147f5565b80516002036110f0576110cf61073861239e565b6110eb5760405162461bcd60e51b8152600401610981906148bf565b611235565b60006110fb82612e6b565b60c9549092506001600160a01b0316905063430c208161111961239e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015611164573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111889190614903565b80611217575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa1580156111e1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112059190614903565b8015611217575061121761073861239e565b6112335760405162461bcd60e51b815260040161098190614920565b505b61123f888a6147f5565b836002825110156112625760405162461bcd60e51b81526004016109819061496f565b6112796110336000846001865161101691906149ca565b611281610e37565b1561129e5760405162461bcd60e51b8152600401610981906147cb565b60028a146112be5760405162461bcd60e51b8152600401610981906149f3565b6112e78c6112cc8c8e6147f5565b6112d68b8d6147f5565b6112e08a8c6147f5565b89896126c1565b50505050505050505050505050565b6112fe612cad565b60005b8151811015610d815761132c82828151811061131f5761131f6149dd565b6020026020010151612d26565b8061133681614a39565b915050611301565b61134961073861239e565b6113655760405162461bcd60e51b815260040161098190614736565b6001600160a01b0381166113bb5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610981565b6113c481612f5a565b6113cc6115aa565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610d81573d6000803e3d6000fd5b611409612cad565b610d956000612f72565b61141b612cad565b60005b8151811015610d815761144982828151811061143c5761143c6149dd565b6020026020010151612f5a565b8061145381614a39565b91505061141e565b61146661073861239e565b6114825760405162461bcd60e51b815260040161098190614736565b6001600160a01b0381166113c45760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610981565b6114e0612cad565b610d95612fc4565b8282828080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525061152b93508592508491506123ad565b611533610e37565b156115505760405162461bcd60e51b8152600401610981906147cb565b606061156487610cae88610ca98989612584565b5050505050505050565b60009182526097602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6115a1612cad565b610cf481612f5a565b610d95600080516020614ef48339815191526103e361239e565b6115cc612cad565b60c954604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906115fe9085908590600401614a52565b600060405180830381600087803b15801561161857600080fd5b505af115801561162c573d6000803e3d6000fd5b505060cb546001600160a01b0316159150610d8190505760cb54604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906116759085908590600401614a52565b600060405180830381600087803b15801561168f57600080fd5b505af11580156116a3573d6000803e3d6000fd5b505050505050565b6116b3612cad565b610cde83838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525085925061302c915050565b6000610954600080516020614ef48339815191528361156e565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd696020820152908101829052600090611762906060015b6040516020818303038152906040528051906020012090565b5460ff1692915050565b611774612cad565b60ce80546001600160a01b0319166001600160a01b0392909216919091179055565b61179e612cad565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e80546001600160a01b0319166001600160a01b03831617905550565b600054610100900460ff16158080156117fb5750600054600160ff909116105b806118155750303b158015611815575060005460ff166001145b6118785760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610981565b6000805460ff19166001179055801561189b576000805461ff0019166101001790555b60c980546001600160a01b03199081166001600160a01b038a81169190911790925560ca8054821689841617905560cb8054821688841617905560cc8054821687841617905560ce80549091169185169190911790556118f961314c565b611901613183565b61190a826131bc565b6119126131e3565b6040805161036081018252600661032082018181526563727970746f60d01b610340840152825282518084018452818152651dd85b1b195d60d21b602082810191909152808401919091528351808501855260018152600f60fb1b8183015283850152835180850185526003808252621b999d60ea1b82840152606085019190915284518086018652600a815269313637b1b5b1b430b4b760b11b818401526080850152845180860186526007808252663134ba31b7b4b760c91b8285015260a0860191909152855180870187528281526207070760eb1b8185015260c0860152855180870187528281526264616f60e81b8185015260e086015285518087018752828152621e9a5b60ea1b8185015261010086015285518087018752908152663837b63cb3b7b760c91b8184015261012085015284518086018652600b81526a756e73746f707061626c6560a81b81840152610140850152845180860186528381526535b632bb32b960d11b8184015261016085015284518086018652600280825261686960f01b8285015261018086019190915285518087018752848152656b726573757360d01b818501526101a086015285518087018752600580825264616e696d6560d81b828601526101c087019190915286518088018852818152646d616e676160d81b818601526101e087015286518088018852600981526862696e616e6365757360b81b8186015261020087015286518088018852818152647265616c6d60d81b818601526102208701528651808801885291825261676f60f01b82850152610240860191909152855180870187526008815267185b1d1a5b5a5cdd60c21b818501526102608601528551808701875290815264707564677960d81b81840152610280850152845180860186528381526530bab9ba34b760d11b818401526102a08501528451808601865292835265189a5d19d95d60d21b838301526102c08401929092528351808501855291825262706f6760e81b828201526102e083019190915282518084019093526004835263636c617960e01b9083015261030081019190915260005b6019811015611c5c57611c4a828260198110611c3e57611c3e6149dd565b6020020151600061302c565b80611c5481614a39565b915050611c20565b50611c8360405180604001604052806003815260200162636f6d60e81b815250600161302c565b508015610afa576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050505050565b8686868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250611d1593508592508491506123ad565b611d1d610e37565b15611d3a5760405162461bcd60e51b8152600401610981906147cb565b611d698a611d4c8b610ca98c8c612584565b611d56888a6147f5565b611d6087896147f5565b600060016126c1565b5050505050505050505050565b611d7e612cad565b60005b81811015610cde5760c9546001600160a01b03166350960239848484818110611dac57611dac6149dd565b9050602002016020810190611dc19190613f34565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401600060405180830381600087803b158015611e0257600080fd5b505af1158015611e16573d6000803e3d6000fd5b505050508080611e2590614a39565b915050611d81565b600082815260976020526040902060010154611e4881612c15565b610cde8383612d3e565b611e5c898b6147f5565b6000600282511015611e805760405162461bcd60e51b81526004016109819061496f565b611e976110336000846001865161101691906149ca565b611e9f610e37565b15611ebc5760405162461bcd60e51b8152600401610981906147cb565b60028b14611edc5760405162461bcd60e51b8152600401610981906149f3565b611f228d8d8d898960008a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061322392505050565b84341015611f725760405162461bcd60e51b815260206004820181905260248201527f4d696e74696e674d616e616765723a204e4f545f454e4f5547485f46554e44536044820152606401610981565b611f848d8d8d8d8d8d8d8c60006133e3565b843411156112e757611f9461239e565b6001600160a01b03166108fc611faa87346149ca565b6040518115909202916000818181858888f19350505050158015611fd2573d6000803e3d6000fd5b5050505050505050505050505050565b611fea612cad565b611ff38161349f565b61200f5760405162461bcd60e51b815260040161098190614a81565b600081815260cd6020526040812061202691613d76565b60405181907f0aa1aff0f830e739d86baf0e6624d6763da02f7733575e0e463886cd062dea6a90600090a250565b61205c612cad565b612065816134c5565b610cf460008261353b565b61207a8a8c6147f5565b600060028251101561209e5760405162461bcd60e51b81526004016109819061496f565b6120b56110336000846001865161101691906149ca565b6120bd610e37565b156120da5760405162461bcd60e51b8152600401610981906147cb565b60028c146120fa5760405162461bcd60e51b8152600401610981906149f3565b61213f8e8e8e8a898b8a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061322392505050565b856001600160a01b03166323b872dd61215661239e565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152306024820152604481018890526064016020604051808303816000875af11580156121a9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121cd9190614903565b6122115760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610981565b611fd28e8e8e8e8e8e8e8c8e6133e3565b61222a612cad565b6040516370a0823160e01b81523060048201526000906001600160a01b038416906370a0823190602401602060405180830381865afa158015612271573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122959190614ac3565b60405163a9059cbb60e01b81526001600160a01b038481166004830152602482018390529192509084169063a9059cbb906044016020604051808303816000875af11580156122e8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061230c9190614903565b6123505760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610981565b604080516001600160a01b0384811682526020820184905285168183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a1505050565b60006123a8613545565b905090565b6123b68361349f565b6123d25760405162461bcd60e51b815260040161098190614a81565b600083815260cf602052604090205460ff1615156001600160401b03821615151461244e5760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544c445f455850495241424c455f4d496044820152650a69a82a886960d31b6064820152608401610981565b60006124818360408051808201825260008082526020918201528151808301909252825182529182019181019190915290565b9050600a81600001511115612529576124ac6124a0826000600a61358b565b80516020909101512090565b7fb551e0305c8163b812374b8e78b577c77f226f6f10c5ad03e52699578fbc34b8036125295760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544f4b454e5f4c4142454c5f50524f4860448201526512509255115160d21b6064820152608401610981565b612532836135ca565b61257e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a204c4142454c5f494e56414c49440000006044820152606401610981565b50505050565b60608282604051602001612599929190614adc565b604051602081830303815290604052905092915050565b604080516002808252606082810190935260009190816020015b60608152602001906001900390816125ca57905050905082816000815181106125f5576125f56149dd565b602002602001018190525060cd6000858152602001908152602001600020805461261e90614b04565b80601f016020809104026020016040519081016040528092919081815260200182805461264a90614b04565b80156126975780601f1061266c57610100808354040283529160200191612697565b820191906000526020600020905b81548152906001019060200180831161267a57829003601f168201915b5050505050816001815181106126af576126af6149dd565b60209081029190910101529392505050565b60008060006126cf88612e6b565b915091508380156126e1575060028851115b8015612763575060c9546040516331a9108f60e11b8152600481018390526001600160a01b038b8116921690636352211e90602401602060405180830381865afa158015612733573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127579190614b3e565b6001600160a01b031614155b156127c35760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e616765723a20524556455253455f5245434f52445f4e60448201526913d517d0531313d5d15160b21b6064820152608401610981565b60c954604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401602060405180830381865afa15801561280c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128309190614903565b8015612921575060c9546040516331a9108f60e11b81526004810184905230916001600160a01b031690636352211e90602401602060405180830381865afa158015612880573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128a49190614b3e565b6001600160a01b03161480612921575060c95460405163d9548e5360e01b8152600481018490526001600160a01b039091169063d9548e5390602401602060405180830381865afa1580156128fd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129219190614903565b15612a12576001600160401b038516156129a35760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b15801561298a57600080fd5b505af115801561299e573d6000803e3d6000fd5b505050505b60c954604051630fb8df0360e11b81526001600160a01b0390911690631f71be06906129db908c908c908c908c908b90600401614bb0565b600060405180830381600087803b1580156129f557600080fd5b505af1158015612a09573d6000803e3d6000fd5b50505050612c09565b612a1b8261372e565b612a248861378d565b8015612a31575087516002145b8015612a4457506001600160401b038516155b15612b225760ca5488516001600160a01b039091169063c36c2125908b908b90600090612a7357612a736149dd565b602090810291909101015160cc546040516001600160e01b031960e086901b168152612aad9392916001600160a01b031690600401614c0f565b600060405180830381600087803b158015612ac757600080fd5b505af1158015612adb573d6000803e3d6000fd5b50505050600087511115612b1d5760cc54604051633a0deb9d60e21b81526001600160a01b039091169063e837ae74906129db908a908a908790600401614c44565b612c09565b60c95460405163ba5d40b760e01b81526001600160a01b039091169063ba5d40b790612b5a908c908c908c908c908b90600401614bb0565b600060405180830381600087803b158015612b7457600080fd5b505af1158015612b88573d6000803e3d6000fd5b505050506001600160401b03851615612c095760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b158015612bf057600080fd5b505af1158015612c04573d6000803e3d6000fd5b505050505b50979650505050505050565b610cf481612c2161239e565b6137e7565b612c30828261156e565b610d815760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19166001179055612c6961239e565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b612cb561239e565b6001600160a01b0316612cd06033546001600160a01b031690565b6001600160a01b031614610d955760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610981565b610cf4600080516020614ef483398151915282611e2d565b612d48828261156e565b15610d815760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19169055612d7f61239e565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612dcb610e37565b612e0e5760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881393d517d4105554d15160621b6044820152606401610981565b600080516020614ed4833981519152805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa612e4e61239e565b6040516001600160a01b03909116815260200160405180910390a1565b805160009081905b8015612ea057829150612e8c82856110166001856149ca565b925080612e9881614c7a565b915050612e73565b50915091565b60008151600003612ef95760405162461bcd60e51b815260206004820152601b60248201527f4d696e74696e674d616e616765723a204c4142454c5f454d50545900000000006044820152606401610981565b8282604051602001612f0b9190614c91565b60405160208183030381529060405280519060200120604051602001612f3b929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b610cf4600080516020614ef48339815191528261353b565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b612fcc610e37565b15612fe95760405162461bcd60e51b8152600401610981906147cb565b600080516020614ed4833981519152805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258612e4e61239e565b6000613039600084612ea6565b600081815260cd602052604090209091506130548482614cf3565b50600081815260cf602052604090819020805460ff19168415151790555181907f4fce6f6e172b04eaa80325d8e3b0180a34945000f3e214605039e8420fdf8980906130a190869061437c565b60405180910390a260c954604051634f558e7960e01b8152600481018390526001600160a01b0390911690634f558e7990602401602060405180830381865afa1580156130f2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131169190614903565b610cde5760c9546040516307befae360e51b81526001600160a01b039091169063f7df5c6090610acc9084908790600401614db2565b600054610100900460ff166131735760405162461bcd60e51b815260040161098190614dd3565b610d9561317e61239e565b612f72565b600054610100900460ff166131aa5760405162461bcd60e51b815260040161098190614dd3565b610d9560006131b761239e565b61353b565b600054610100900460ff1661179e5760405162461bcd60e51b815260040161098190614dd3565b600054610100900460ff1661320a5760405162461bcd60e51b815260040161098190614dd3565b600080516020614ed4833981519152805460ff19169055565b600061323761323287896147f5565b612e6b565b506040516bffffffffffffffffffffffff1930606090811b821660208401524660348401528b811b82166054840152606883018490526001600160c01b031960c08a901b1660888401526090830188905286901b1660b082015290915060009061331390849061330d9060c401604051602081830303815290604052805190602001206040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c8101829052600090605c01604051602081830303815290604052805190602001209050919050565b9061384b565b905061331e816116f4565b6133765760405162461bcd60e51b8152602060048201526024808201527f4d696e74696e674d616e616765723a205349474e45525f49535f4e4f545f4d49604482015263272a22a960e11b6064820152608401610981565b42866001600160401b0316116133d85760405162461bcd60e51b815260206004820152602160248201527f4d696e74696e674d616e616765723a20455850495245445f5349474e415455526044820152604560f81b6064820152608401610981565b505050505050505050565b600061342a8a6133f38a8c6147f5565b6133fd898b6147f5565b613407888a6147f5565b60008f6001600160a01b031661341b61239e565b6001600160a01b0316146126c1565b9050896001600160a01b031661343e61239e565b6001600160a01b0316827fa545b6fd3355e8d57f8c8147bafe740545bd3ea1f94bef2576a6d532a7c3b605868660405161348b9291909182526001600160a01b0316602082015260400190565b60405180910390a450505050505050505050565b600081815260cd6020526040812080548291906134bb90614b04565b9050119050919050565b6134cd612cad565b6001600160a01b0381166135325760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610981565b610cf481612f72565b610d818282612c26565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546000906001600160a01b03163303613586575060331936013560601c90565b503390565b604080518082019091526000808252602082015260405180604001604052808381526020018486602001516135c09190614e1e565b9052949350505050565b600081516000036135dd57506000919050565b60208201805160f81c603081108015906135fb575060398160ff1611155b15801561361d575060618160ff161015801561361b5750607a8160ff1611155b155b1561362c575060009392505050565b8351600181111561369a5761364e836136466001846149ca565b015160f81c90565b915060308260ff1610158015613668575060398260ff1611155b15801561368a575060618260ff16101580156136885750607a8260ff1611155b155b1561369a57506000949350505050565b60015b6136a86001836149ca565b811015613722578381015160f81c9250602d83148015906136de575060308360ff16101580156136dc575060398360ff1611155b155b80156136ff575060618360ff16101580156136fd5750607a8360ff1611155b155b156137105750600095945050505050565b8061371a81614a39565b91505061369d565b50600195945050505050565b6137378161170e565b156137845760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a20544f4b454e5f424c4f434b45440000006044820152606401610981565b610cf48161386f565b6000806137a46000846001865161101691906149ca565b60ca549091506001600160a01b0316158015906137e05750807f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f145b9392505050565b6137f1828261156e565b610d8157613809816001600160a01b031660146138f3565b6138148360206138f3565b604051602001613825929190614e31565b60408051601f198184030181529082905262461bcd60e51b82526109819160040161437c565b600080600061385a8585613a8e565b9150915061386781613ad3565b509392505050565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd6960208201529081018290526001906138ae90606001611749565b805460ff19169115159190911790556040518181527f2ce5d9351b1d590d5a066db0d2dc7602d55f092506a83a7ee8c4d78ee357d75a9060200160405180910390a150565b60606000613902836002614ea6565b61390d906002614e1e565b6001600160401b0381111561392457613924614133565b6040519080825280601f01601f19166020018201604052801561394e576020820181803683370190505b509050600360fc1b81600081518110613969576139696149dd565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110613998576139986149dd565b60200101906001600160f81b031916908160001a90535060006139bc846002614ea6565b6139c7906001614e1e565b90505b6001811115613a3f576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106139fb576139fb6149dd565b1a60f81b828281518110613a1157613a116149dd565b60200101906001600160f81b031916908160001a90535060049490941c93613a3881614c7a565b90506139ca565b5083156137e05760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610981565b6000808251604103613ac45760208301516040840151606085015160001a613ab887828585613c89565b94509450505050613acc565b506000905060025b9250929050565b6000816004811115613ae757613ae7614ebd565b03613aef5750565b6001816004811115613b0357613b03614ebd565b03613b505760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152606401610981565b6002816004811115613b6457613b64614ebd565b03613bb15760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610981565b6003816004811115613bc557613bc5614ebd565b03613c1d5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b6064820152608401610981565b6004816004811115613c3157613c31614ebd565b03610cf45760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c604482015261756560f01b6064820152608401610981565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613cc05750600090506003613d6d565b8460ff16601b14158015613cd857508460ff16601c14155b15613ce95750600090506004613d6d565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613d3d573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613d6657600060019250925050613d6d565b9150600090505b94509492505050565b508054613d8290614b04565b6000825580601f10613d92575050565b601f016020900490600052602060002090810190610cf491905b80821115613dc05760008155600101613dac565b5090565b600060208284031215613dd657600080fd5b81356001600160e01b0319811681146137e057600080fd5b6001600160401b0381168114610cf457600080fd5b8035613e0e81613dee565b919050565b60008060408385031215613e2657600080fd5b8235613e3181613dee565b946020939093013593505050565b600060208284031215613e5157600080fd5b5035919050565b60008083601f840112613e6a57600080fd5b5081356001600160401b03811115613e8157600080fd5b602083019150836020828501011115613acc57600080fd5b600080600060408486031215613eae57600080fd5b8335925060208401356001600160401b03811115613ecb57600080fd5b613ed786828701613e58565b9497909650939450505050565b6001600160a01b0381168114610cf457600080fd5b8035613e0e81613ee4565b60008060408385031215613f1757600080fd5b823591506020830135613f2981613ee4565b809150509250929050565b600060208284031215613f4657600080fd5b81356137e081613ee4565b60008083601f840112613f6357600080fd5b5081356001600160401b03811115613f7a57600080fd5b6020830191508360208260051b8501011115613acc57600080fd5b8015158114610cf457600080fd5b60008060008060008060008060a0898b031215613fbf57600080fd5b8835613fca81613ee4565b975060208901356001600160401b0380821115613fe657600080fd5b613ff28c838d01613f51565b909950975060408b013591508082111561400b57600080fd5b6140178c838d01613f51565b909750955060608b013591508082111561403057600080fd5b5061403d8b828c01613f51565b909450925050608089013561405181613f95565b809150509295985092959890939650565b600080600080600080600080600060c08a8c03121561408057600080fd5b893561408b81613ee4565b985060208a01356001600160401b03808211156140a757600080fd5b6140b38d838e01613f51565b909a50985060408c01359150808211156140cc57600080fd5b6140d88d838e01613f51565b909850965060608c01359150808211156140f157600080fd5b506140fe8c828d01613f51565b90955093505060808a013561411281613dee565b915060a08a013561412281613f95565b809150509295985092959850929598565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561417157614171614133565b604052919050565b60006001600160401b0382111561419257614192614133565b5060051b60200190565b600060208083850312156141af57600080fd5b82356001600160401b038111156141c557600080fd5b8301601f810185136141d657600080fd5b80356141e96141e482614179565b614149565b81815260059190911b8201830190838101908783111561420857600080fd5b928401925b8284101561422f57833561422081613ee4565b8252928401929084019061420d565b979650505050505050565b6000806000806060858703121561425057600080fd5b843561425b81613ee4565b93506020850135925060408501356001600160401b0381111561427d57600080fd5b61428987828801613e58565b95989497509550505050565b600080602083850312156142a857600080fd5b82356001600160401b038111156142be57600080fd5b6142ca85828601613e58565b90969095509350505050565b6000806000604084860312156142eb57600080fd5b83356001600160401b0381111561430157600080fd5b61430d86828701613e58565b909450925050602084013561432181613f95565b809150509250925092565b60005b8381101561434757818101518382015260200161432f565b50506000910152565b6000815180845261436881602086016020860161432c565b601f01601f19169290920160200192915050565b6020815260006137e06020830184614350565b60008060008060008060c087890312156143a857600080fd5b86356143b381613ee4565b955060208701356143c381613ee4565b945060408701356143d381613ee4565b935060608701356143e381613ee4565b925060808701356143f381613ee4565b915060a087013561440381613ee4565b809150509295509295509295565b60008060008060008060008060a0898b03121561442d57600080fd5b883561443881613ee4565b97506020890135965060408901356001600160401b038082111561445b57600080fd5b6144678c838d01613e58565b909850965060608b013591508082111561448057600080fd5b61448c8c838d01613f51565b909650945060808b01359150808211156144a557600080fd5b506144b28b828c01613f51565b999c989b5096995094979396929594505050565b600080602083850312156144d957600080fd5b82356001600160401b038111156144ef57600080fd5b6142ca85828601613f51565b600080600080600080600080600080600060e08c8e03121561451c57600080fd5b6145258c613ef9565b9a506001600160401b038060208e0135111561454057600080fd5b6145508e60208f01358f01613f51565b909b50995060408d013581101561456657600080fd5b6145768e60408f01358f01613f51565b909950975060608d013581101561458c57600080fd5b61459c8e60608f01358f01613f51565b90975095506145ad60808e01613e03565b945060a08d013593508060c08e013511156145c757600080fd5b506145d88d60c08e01358e01613e58565b81935080925050509295989b509295989b9093969950565b6000806000806000806000806000806000806101008d8f03121561461357600080fd5b61461c8d613ef9565b9b506001600160401b0360208e0135111561463657600080fd5b6146468e60208f01358f01613f51565b909b5099506001600160401b0360408e0135111561466357600080fd5b6146738e60408f01358f01613f51565b90995097506001600160401b0360608e0135111561469057600080fd5b6146a08e60608f01358f01613f51565b90975095506146b160808e01613e03565b94506146bf60a08e01613ef9565b935060c08d013592506001600160401b0360e08e013511156146e057600080fd5b6146f08e60e08f01358f01613e58565b81935080925050509295989b509295989b509295989b565b6000806040838503121561471b57600080fd5b823561472681613ee4565b91506020830135613f2981613ee4565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b60006020828403121561477d57600080fd5b81516137e081613dee565b60208082526023908201527f4d696e74696e674d616e616765723a20544f4b454e5f4e4f545f455850495241604082015262424c4560e81b606082015260800190565b60208082526010908201526f14185d5cd8589b194e8814105554d15160821b604082015260600190565b60006148036141e484614179565b80848252602080830192508560051b85013681111561482157600080fd5b855b818110156148b35780356001600160401b03808211156148435760008081fd5b90880190601f36818401126148585760008081fd5b82358281111561486a5761486a614133565b61487b818301601f19168801614149565b9250808352368782860101111561489457600091508182fd5b8087850188850137600090830187015250865250938201938201614823565b50919695505050505050565b60208082526024908201527f4d696e74696e674d616e616765723a2043414c4c45525f49535f4e4f545f4d49604082015263272a22a960e11b606082015260800190565b60006020828403121561491557600080fd5b81516137e081613f95565b6020808252602f908201527f4d696e74696e674d616e616765723a2053454e4445525f49535f4e4f545f415060408201526e282927ab22a22fa7a92fa7aba722a960891b606082015260800190565b60208082526025908201527f4d696e74696e674d616e616765723a204c4142454c535f4c454e4754485f42456040820152642627abaf9960d91b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b81810381811115610954576109546149b4565b634e487b7160e01b600052603260045260246000fd5b60208082526026908201527f4d696e74696e674d616e616765723a20535542444f4d41494e535f4e4f545f41604082015265131313d5d15160d21b606082015260800190565b600060018201614a4b57614a4b6149b4565b5060010190565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b60208082526022908201527f4d696e74696e674d616e616765723a20544c445f4e4f545f5245474953544552604082015261115160f21b606082015260800190565b600060208284031215614ad557600080fd5b5051919050565b6b756e732d646576746573742d60a01b81528183600c83013760009101600c01908152919050565b600181811c90821680614b1857607f821691505b602082108103614b3857634e487b7160e01b600052602260045260246000fd5b50919050565b600060208284031215614b5057600080fd5b81516137e081613ee4565b600081518084526020808501808196508360051b8101915082860160005b85811015614ba3578284038952614b91848351614350565b98850198935090840190600101614b79565b5091979650505050505050565b6001600160a01b038616815260a060208201819052600090614bd490830187614b5b565b8281036040840152614be68187614b5b565b90508281036060840152614bfa8186614b5b565b91505082151560808301529695505050505050565b600060018060a01b03808616835260606020840152614c316060840186614350565b9150808416604084015250949350505050565b606081526000614c576060830186614b5b565b8281036020840152614c698186614b5b565b915050826040830152949350505050565b600081614c8957614c896149b4565b506000190190565b60008251614ca381846020870161432c565b9190910192915050565b601f821115610cde57600081815260208120601f850160051c81016020861015614cd45750805b601f850160051c820191505b818110156116a357828155600101614ce0565b81516001600160401b03811115614d0c57614d0c614133565b614d2081614d1a8454614b04565b84614cad565b602080601f831160018114614d555760008415614d3d5750858301515b600019600386901b1c1916600185901b1785556116a3565b600085815260208120601f198616915b82811015614d8457888601518255948401946001909101908401614d65565b5085821015614da25787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b828152604060208201526000614dcb6040830184614350565b949350505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b80820180821115610954576109546149b4565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351614e6981601785016020880161432c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351614e9a81602884016020880161432c565b01602801949350505050565b8082028115828204841417610954576109546149b4565b634e487b7160e01b600052602160045260246000fdfe5496787fc1ebdfeba375028c1865f13fbb1d63c0caa356ccc1b29a80f3ebd6229f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000811000a","storage":{}},"0x24f45688d421f46cca60734bdc648ad192db0f2e":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0x1","0x97":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x12d":"0x0","0x15f":"0x5cc819c9915eadfcebd76952b8c1bc36cadd7376","0x13cf90498be59d359caa5b6092b365feab4610605d7107d1f05f8e94ac955652":"0x1","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x54563a9e1cd2dcbd0bca90d3cfa4a647e02c404a","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106102295760003560e01c8063886a69ba11610123578063cf1d21c0116100ab578063e2c49de11161006f578063e2c49de11461091d578063e3dec8fb14610932578063e43009a6146109c8578063e66f9603146109fb578063ea60c7c414610a2557610240565b8063cf1d21c014610844578063d233a3c714610859578063d547741f1461089c578063d81c8e52146108d5578063dc993a23146108ea57610240565b8063a217fddf116100f2578063a217fddf1461078a578063b4b4f63e1461079f578063bc08452b146107b4578063c4d66de8146107e7578063ca15c8731461081a57610240565b8063886a69ba146106c95780639010d07c146106de5780639173b1391461070e57806391d148541461075157610240565b80633138b6f1116101b1578063568b80b511610175578063568b80b5146105fb578063607f2d4214610610578063630fcbfb1461064e5780636cb136b0146106635780636e86b7701461069657610240565b80633138b6f1146104f55780633408e4701461050a57806336568abe1461051f5780633805550f146105585780634faa8a26146105d557610240565b80630f7e5970116101f85780630f7e59701461042357806320379ee514610438578063248a9ca31461045f5780632d0335ab146104895780632f2ff15d146104bc57610240565b806304967702146102455780630c3894bb146102765780630c53c51c146102b15780630c598220146103ea57610240565b366102405761023e610239610a58565b610a68565b005b600080fd5b34801561025157600080fd5b5061025a610b69565b604080516001600160a01b039092168252519081900360200190f35b34801561028257600080fd5b5061023e6004803603604081101561029957600080fd5b506001600160a01b0381358116916020013516610b78565b610375600480360360a08110156102c757600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156102f257600080fd5b82018360208201111561030457600080fd5b8035906020019184600183028401116401000000008311171561032657600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550508235935050506020810135906040013560ff16610cc9565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103af578181015183820152602001610397565b50505050905090810190601f1680156103dc5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156103f657600080fd5b5061023e6004803603604081101561040d57600080fd5b50803590602001356001600160a01b0316610fcc565b34801561042f57600080fd5b506103756110b9565b34801561044457600080fd5b5061044d6110d6565b60408051918252519081900360200190f35b34801561046b57600080fd5b5061044d6004803603602081101561048257600080fd5b50356110dc565b34801561049557600080fd5b5061044d600480360360208110156104ac57600080fd5b50356001600160a01b03166110f4565b3480156104c857600080fd5b5061023e600480360360408110156104df57600080fd5b50803590602001356001600160a01b031661110f565b34801561050157600080fd5b5061025a611176565b34801561051657600080fd5b5061044d611185565b34801561052b57600080fd5b5061023e6004803603604081101561054257600080fd5b50803590602001356001600160a01b0316611189565b34801561056457600080fd5b5061023e6004803603602081101561057b57600080fd5b81019060208101813564010000000081111561059657600080fd5b8201836020820111156105a857600080fd5b803590602001918460018302840111640100000000831117156105ca57600080fd5b5090925090506111ea565b61023e600480360360208110156105eb57600080fd5b50356001600160a01b03166116ec565b34801561060757600080fd5b5061044d6116f8565b34801561061c57600080fd5b5061063a6004803603602081101561063357600080fd5b503561171b565b604080519115158252519081900360200190f35b34801561065a57600080fd5b5061023e611730565b34801561066f57600080fd5b5061023e6004803603602081101561068657600080fd5b50356001600160a01b03166117d6565b3480156106a257600080fd5b5061025a600480360360208110156106b957600080fd5b50356001600160a01b031661186e565b3480156106d557600080fd5b5061044d611889565b3480156106ea57600080fd5b5061025a6004803603604081101561070157600080fd5b50803590602001356118aa565b34801561071a57600080fd5b5061023e6004803603606081101561073157600080fd5b506001600160a01b038135811691602081013590911690604001356118d1565b34801561075d57600080fd5b5061063a6004803603604081101561077457600080fd5b50803590602001356001600160a01b0316611a06565b34801561079657600080fd5b5061044d611a24565b3480156107ab57600080fd5b5061023e611a29565b3480156107c057600080fd5b5061023e600480360360208110156107d757600080fd5b50356001600160a01b0316611acf565b3480156107f357600080fd5b5061023e6004803603602081101561080a57600080fd5b50356001600160a01b0316611b67565b34801561082657600080fd5b5061044d6004803603602081101561083d57600080fd5b5035611c57565b34801561085057600080fd5b5061025a611c6e565b34801561086557600080fd5b5061023e6004803603606081101561087c57600080fd5b506001600160a01b03813581169160208101359091169060400135611c86565b3480156108a857600080fd5b5061023e600480360360408110156108bf57600080fd5b50803590602001356001600160a01b0316611de8565b3480156108e157600080fd5b5061044d611e41565b3480156108f657600080fd5b5061023e6004803603602081101561090d57600080fd5b50356001600160a01b0316611e60565b34801561092957600080fd5b5061025a611f3d565b34801561093e57600080fd5b5061023e6004803603606081101561095557600080fd5b6001600160a01b03823581169260208101359091169181019060608101604082013564010000000081111561098957600080fd5b82018360208201111561099b57600080fd5b803590602001918460018302840111640100000000831117156109bd57600080fd5b509092509050611f4c565b3480156109d457600080fd5b5061044d600480360360208110156109eb57600080fd5b50356001600160a01b0316611fe9565b348015610a0757600080fd5b5061025a60048036036020811015610a1e57600080fd5b5035611ffb565b348015610a3157600080fd5b5061025a60048036036020811015610a4857600080fd5b50356001600160a01b0316612016565b6000610a62612031565b90505b90565b604080513460208083019190915282518083039091018152908201909152610aa58273eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee8361208e565b7fa1829a9003092132f585b6ccdd167c19fe9774dbdea4260287e8a8e8ca8185d7546000908152600260205260408082205490516001600160a01b039091169034908381818185875af1925050503d8060008114610b1f576040519150601f19603f3d011682016040523d82523d6000602084013e610b24565b606091505b5050905080610b645760405162461bcd60e51b815260040180806020018281038252602781526020018061419d6027913960400191505060405180910390fd5b505050565b6009546001600160a01b031681565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020610ba981610ba4610a58565b611a06565b600a90610c495760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b820191906000526020600020905b815481529060010190602001808311610c1d57829003601f168201915b50509250505060405180910390fd5b506001600160a01b03808416600081815260036020908152604080832080546001600160a01b0319908116909155948716808452600483528184208054909616909555838352600590915280822082905551909291907f9e651a8866fbea043e911d816ec254b0e3c992c06fff32d605e72362d6023bd9908490a4505050565b6060610cd3613e2a565b50604080516060810182526001600160a01b0388166000818152600c602090815290849020548352820152908101869052610d118782878787612508565b610d4c5760405162461bcd60e51b81526004018080602001828103825260218152602001806141c46021913960400191505060405180910390fd5b6001600160a01b0387166000908152600c6020526040902054610d7690600163ffffffff6125e516565b6001600160a01b0388166000818152600c602090815260408083209490945583519283523383820181905260609484018581528b51958501959095528a517f5845892132946850460bff5a0083f71031bc5bf9aadcd40f1de79423eac9b10b958d9592948d94919260808501928601918190849084905b83811015610e05578181015183820152602001610ded565b50505050905090810190601f168015610e325780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a160006060306001600160a01b0316888a6040516020018083805190602001908083835b60208310610e835780518252601f199092019160209182019101610e64565b6001836020036101000a038019825116818451168082178552505050505050905001826001600160a01b03166001600160a01b031660601b8152601401925050506040516020818303038152906040526040518082805190602001908083835b60208310610f025780518252601f199092019160209182019101610ee3565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610f64576040519150601f19603f3d011682016040523d82523d6000602084013e610f69565b606091505b509150915081610fc0576040805162461bcd60e51b815260206004820152601c60248201527f46756e6374696f6e2063616c6c206e6f74207375636365737366756c00000000604482015290519081900360640190fd5b98975050505050505050565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020610ff881610ba4610a58565b600a9061105e5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5060008381526002602052604080822080546001600160a01b0319166001600160a01b0386169081179091559051909185917f8643692ae1c12ec91fa18e50b82ed93fa314f580999a236824db6de9ae0d839b9190a3505050565b604051806040016040528060018152602001603160f81b81525081565b600b5490565b6000818152600160205260409020600201545b919050565b6001600160a01b03166000908152600c602052604090205490565b60008281526001602052604090206002015461112d90610ba4610a58565b6111685760405162461bcd60e51b815260040180806020018281038252602f815260200180613f78602f913960400191505060405180910390fd5b611172828261263f565b5050565b6008546001600160a01b031690565b4690565b611191610a58565b6001600160a01b0316816001600160a01b0316146111e05760405162461bcd60e51b815260040180806020018281038252602f815260200180614286602f913960400191505060405180910390fd5b61117282826126ae565b606061123361122e84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061271d92505050565b612798565b905060006112548260028151811061124757fe5b602002602001015161291a565b6112796112748460088151811061126757fe5b6020026020010151612a62565b612b2c565b6112898460098151811061124757fe5b6040516020018084815260200183805190602001908083835b602083106112c15780518252601f1990920191602091820191016112a2565b51815160209384036101000a6000190180199092169116179052920193845250604080518085038152938201815283519382019390932060008181526006909252929020549194505060ff1615915061134d90505760405162461bcd60e51b81526004018080602001828103825260288152602001806142096028913960400191505060405180910390fd5b6000818152600660208190526040909120805460ff19166001179055825160609161138a9161122e9161138591879190811061126757fe5b61271d565b9050611394613e54565b6113b1826003815181106113a457fe5b6020026020010151612798565b6113c18560098151811061124757fe5b815181106113cb57fe5b6020026020010151905060006113fc6113e383612798565b6000815181106113ef57fe5b6020026020010151612c9f565b6001600160a01b0380821660009081526004602052604090205491925016806114565760405162461bcd60e51b81526004018080602001828103825260228152602001806140af6022913960400191505060405180910390fd5b6001600160a01b03808216600090815260056020908152604080832054835260029091529020548751911690611493908890600890811061124757fe5b63ffffffff1916156114d65760405162461bcd60e51b815260040180806020018281038252602581526020018061408a6025913960400191505060405180910390fd5b61151e6114e98860068151811061126757fe5b6114f98960088151811061126757fe5b6115098a60078151811061126757fe5b6115198b60058151811061124757fe5b612d2f565b61156f576040805162461bcd60e51b815260206004820152601f60248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f50524f4f4600604482015290519081900360640190fd5b6115dd6115828860028151811061124757fe5b6115928960038151811061124757fe5b6115a28a60048151811061124757fe5b60001b6115b58b60058151811061124757fe5b60001b6115c88c60008151811061124757fe5b6115d88d60018151811061126757fe5b612f76565b50806001600160a01b0316638274664f6115f5610a58565b846115ff886130bf565b6040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561167b578181015183820152602001611663565b50505050905090810190601f1680156116a85780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b1580156116c957600080fd5b505af11580156116dd573d6000803e3d6000fd5b50505050505050505050505050565b6116f581610a68565b50565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b01902081565b60066020526000908152604090205460ff1681565b600061173e81610ba4610a58565b600a906117a45760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506116f56040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b81525061312d565b60006117e481610ba4610a58565b600a9061184a5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5050600780546001600160a01b0319166001600160a01b0392909216919091179055565b6004602052600090815260409020546001600160a01b031681565b604080516826a0a82faa27a5a2a760b91b8152905190819003600901902081565b60008281526001602052604081206118c8908363ffffffff6131e916565b90505b92915050565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b0190206118fd81610ba4610a58565b600a906119635760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b03848116600090815260036020526040902054161580156119a457506001600160a01b0383811660009081526004602052604090205416155b6119f5576040805162461bcd60e51b815260206004820181905260248201527f526f6f74436861696e4d616e616765723a20414c52454144595f4d4150504544604482015290519081900360640190fd5b611a008484846131f5565b50505050565b60008281526001602052604081206118c8908363ffffffff61348416565b600081565b6000611a3781610ba4610a58565b600a90611a9d5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506116f56040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613499565b6000611add81610ba4610a58565b600a90611b435760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5050600880546001600160a01b0319166001600160a01b0392909216919091179055565b60005460ff1615611bb0576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b611be16040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613537565b611c126040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613499565b611c1d600082611168565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020611c479082611168565b506000805460ff19166001179055565b60008181526001602052604081206118cb90613589565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020611cb281610ba4610a58565b600a90611d185760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b0380851660009081526003602081815260408084205488861685526004835281852054861680865293909252909220549183169290911615611d8e576001600160a01b038116600090815260036020908152604080832080546001600160a01b031916905560059091528120555b6001600160a01b038281166000908152600460205260409020541615611dd5576001600160a01b038216600090815260046020526040902080546001600160a01b03191690555b611de08686866131f5565b505050505050565b600082815260016020526040902060020154611e0690610ba4610a58565b6111e05760405162461bcd60e51b81526004018080602001828103825260308152602001806140f96030913960400191505060405180910390fd5b604080516611115413d4d25560ca1b8152905190819003600701902081565b6000611e6e81610ba4610a58565b600a90611ed45760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b038216611f1a5760405162461bcd60e51b815260040180806020018281038252602d815260200180613fa7602d913960400191505060405180910390fd5b50600980546001600160a01b0319166001600160a01b0392909216919091179055565b6007546001600160a01b031690565b6001600160a01b03831673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee1415611fa85760405162461bcd60e51b81526004018080602001828103825260248152602001806141e56024913960400191505060405180910390fd5b611a00848484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061208e92505050565b60056020526000908152604090205481565b6002602052600090815260409020546001600160a01b031681565b6003602052600090815260409020546001600160a01b031681565b6000333014156120895760606000368080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505050503601516001600160a01b03169150610a659050565b503390565b6001600160a01b03808316600090815260056020908152604080832054600390925290912054909116158015906120c457508015155b6120ff5760405162461bcd60e51b81526004018080602001828103825260228152602001806140af6022913960400191505060405180910390fd5b6000818152600260205260409020546001600160a01b0316806121535760405162461bcd60e51b81526004018080602001828103825260248152602001806140176024913960400191505060405180910390fd5b6001600160a01b0385166121ae576040805162461bcd60e51b815260206004820152601e60248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f555345520000604482015290519081900360640190fd5b806001600160a01b031663e375b64e6121c5610a58565b8787876040518563ffffffff1660e01b815260040180856001600160a01b03166001600160a01b03168152602001846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561225c578181015183820152602001612244565b50505050905090810190601f1680156122895780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b1580156122ab57600080fd5b505af11580156122bf573d6000803e3d6000fd5b50505050606085858560405160200180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015612338578181015183820152602001612320565b50505050905090810190601f1680156123655780820380516001836020036101000a031916815260200191505b5060408051808303601f19018152828252600780546009546611115413d4d25560ca1b865284519586900390920185206020808701828152878701968752855160608901528551959d506001600160a01b039384169c506316f198319b5092909316985096508a955093608001919085019080838360005b838110156123f55781810151838201526020016123dd565b50505050905090810190601f1680156124225780820380516001836020036101000a031916815260200191505b5093505050506040516020818303038152906040526040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561249b578181015183820152602001612483565b50505050905090810190601f1680156124c85780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b1580156124e857600080fd5b505af11580156124fc573d6000803e3d6000fd5b50505050505050505050565b60006001600160a01b03861661254f5760405162461bcd60e51b81526004018080602001828103825260258152602001806141296025913960400191505060405180910390fd5b600161256261255d87613594565b613620565b83868660405160008152602001604052604051808581526020018460ff1660ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa1580156125bc573d6000803e3d6000fd5b505050602060405103516001600160a01b0316866001600160a01b031614905095945050505050565b6000828201838110156118c8576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600082815260016020526040902061265d908263ffffffff61366c16565b156111725761266a610a58565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b60008281526001602052604090206126cc908263ffffffff61368116565b15611172576126d9610a58565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612725613e54565b600082511161277b576040805162461bcd60e51b815260206004820152601f60248201527f524c505265616465723a20494e56414c49445f42595445535f4c454e47544800604482015290519081900360640190fd5b506040805180820190915281518152602082810190820152919050565b60606127a382613696565b6127f4576040805162461bcd60e51b815260206004820152601860248201527f524c505265616465723a204954454d5f4e4f545f4c4953540000000000000000604482015290519081900360640190fd5b60006127ff836136c2565b905060608167ffffffffffffffff8111801561281a57600080fd5b5060405190808252806020026020018201604052801561285457816020015b612841613e54565b8152602001906001900390816128395790505b5090506000612866856020015161374e565b855190915081146128a85760405162461bcd60e51b81526004018080602001828103825260278152602001806142316027913960400191505060405180910390fd5b60006128b786602001516137e2565b60208701510190506000805b8581101561290e576128d48361374e565b91506040518060400160405280838152602001848152508582815181106128f757fe5b6020908102919091010152918101916001016128c3565b50929695505050505050565b600061292582613696565b15612977576040805162461bcd60e51b815260206004820181905260248201527f524c505265616465723a204445434f44494e475f4c4953545f41535f55494e54604482015290519081900360640190fd5b8151602110156129ce576040805162461bcd60e51b815260206004820152601e60248201527f524c505265616465723a20494e56414c49445f55494e545f4c454e4754480000604482015290519081900360640190fd5b60006129dd836020015161374e565b83519091508114612a1f5760405162461bcd60e51b81526004018080602001828103825260278152602001806142b56027913960400191505060405180910390fd5b6000612a2e84602001516137e2565b84516020808701518301805193945091849003929190831015612a5857826020036101000a820491505b5095945050505050565b60606000612a73836020015161374e565b83519091508114612ab55760405162461bcd60e51b81526004018080602001828103825260288152602001806140d16028913960400191505060405180910390fd5b6000612ac484602001516137e2565b845190915081900360608167ffffffffffffffff81118015612ae557600080fd5b506040519080825280601f01601f191660200182016040528015612b10576020820181803683370190505b5090506000816020019050612a58848860200151018285613845565b604080516020810190915260008152815160609190156118cb57600080612b54600086613890565b60f81c90506001811480612b6b57508060ff166003145b15612bfa57600185516002020367ffffffffffffffff81118015612b8e57600080fd5b506040519080825280601f01601f191660200182016040528015612bb9576020820181803683370190505b5092506000612bc9600187613890565b90508084600081518110612bd957fe5b60200101906001600160f81b031916908160001a9053506001925050612c4b565b600285516002020367ffffffffffffffff81118015612c1857600080fd5b506040519080825280601f01601f191660200182016040528015612c43576020820181803683370190505b509250600091505b60ff82165b8351811015612c9657612c6b8360ff16820360020187613890565b848281518110612c7757fe5b60200101906001600160f81b031916908160001a905350600101612c50565b50505092915050565b6000612caa82613696565b15612ce65760405162461bcd60e51b815260040180806020018281038252602381526020018061417a6023913960400191505060405180910390fd5b8151601514612d265760405162461bcd60e51b81526004018080602001828103825260218152602001806142dc6021913960400191505060405180910390fd5b6118cb8261291a565b6000612d39613e54565b612d428461271d565b90506060612d4f82612798565b905060608085600082612d618b612b2c565b9050805160001415612d7d576000975050505050505050612f6e565b60005b8651811015612f65578151831115612da357600098505050505050505050612f6e565b612dbf878281518110612db257fe5b60200260200101516130bf565b955085805190602001208414612de057600098505050505050505050612f6e565b612def8782815181106113a457fe5b9450845160111415612eac578151831415612e4b578c80519060200120612e1c8660108151811061126757fe5b805190602001201415612e3a57600198505050505050505050612f6e565b600098505050505050505050612f6e565b6000828481518110612e5957fe5b016020015160f81c90506010811115612e7e5760009950505050505050505050612f6e565b612e9d868260ff1681518110612e9057fe5b60200260200101516138ed565b94505060019290920191612f5d565b845160021415612e3a576000612ed2612ecb8760008151811061126757fe5b848661398c565b905082518185011415612f28578d80519060200120612ef78760018151811061126757fe5b805190602001201415612f165760019950505050505050505050612f6e565b60009950505050505050505050612f6e565b80612f3f5760009950505050505050505050612f6e565b8084019350612f5486600181518110612e9057fe5b9450612f5d9050565b600101612d80565b50505050505050505b949350505050565b600854604080516320a9cea560e11b81526004810185905290516000928392839283926001600160a01b0316916341539d4a9160248083019260a0929190829003018186803b158015612fc857600080fd5b505afa158015612fdc573d6000803e3d6000fd5b505050506040513d60a0811015612ff257600080fd5b5080516020820151606090920151909450909250905061306161301b8b8463ffffffff613a6b16565b6040805160208082018f90528183018e9052606082018d905260808083018d90528351808403909101815260a0909201909252805191012090858863ffffffff613aad16565b6130b2576040805162461bcd60e51b815260206004820181905260248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f484541444552604482015290519081900360640190fd5b9998505050505050505050565b606080826000015167ffffffffffffffff811180156130dd57600080fd5b506040519080825280601f01601f191660200182016040528015613108576020820181803683370190505b50905060008160200190506131268460200151828660000151613845565b5092915050565b6040518060800160405280604f815260200161403b604f913980516020918201208251838301206040805180820190915260018152603160f81b930192909252907fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc630613198611185565b604080516020808201979097528082019590955260608501939093526001600160a01b03909116608084015260a0808401919091528151808403909101815260c090920190528051910120600b5550565b60006118c88383613c03565b6000818152600260205260409020546001600160a01b03166132485760405162461bcd60e51b815260040180806020018281038252602a815260200180613f07602a913960400191505060405180910390fd5b6001600160a01b03808416600081815260036020908152604080832080549588166001600160a01b031996871681179091558084526004835281842080549096168517909555838352600590915280822085905551849392917f9e651a8866fbea043e911d816ec254b0e3c992c06fff32d605e72362d6023bd991a4604080516001600160a01b0380861660208084019190915281861683850152606083810186905284518085038201815260808086018088526007546009546826a0a82faa27a5a2a760b91b9092528851978890036089018820888701818152898b019a8b528551968a019690965284519499918816986316f1983198939093169690958a9590949293909201919085019080838360005b8381101561337357818101518382015260200161335b565b50505050905090810190601f1680156133a05780820380516001836020036101000a031916815260200191505b5093505050506040516020818303038152906040526040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015613419578181015183820152602001613401565b50505050905090810190601f1680156134465780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b15801561346657600080fd5b505af115801561347a573d6000803e3d6000fd5b5050505050505050565b60006118c8836001600160a01b038416613c67565b806040516020018082805190602001908083835b602083106134cc5780518252601f1990920191602091820191016134ad565b51815160209384036101000a60001901801990921691161790527f3a20494e53554646494349454e545f5045524d495353494f4e530000000000009190930190815260408051808303600519018152601a909201905280516111729550600a94509201919050613e6e565b60005460ff1615613580576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b611c478161312d565b60006118cb82613c7f565b6000604051806080016040528060438152602001613fd460439139805190602001208260000151836020015184604001518051906020012060405160200180858152602001848152602001836001600160a01b03166001600160a01b03168152602001828152602001945050505050604051602081830303815290604052805190602001209050919050565b600061362a6110d6565b82604051602001808061190160f01b81525060020183815260200182815260200192505050604051602081830303815290604052805190602001209050919050565b60006118c8836001600160a01b038416613c83565b60006118c8836001600160a01b038416613ccd565b6020810151805160009190821a9060c08210156136b8576000925050506110ef565b5060019392505050565b6000806000905060006136d884602001516137e2565b602085015185519181019250015b80821015613745576136f78261374e565b820191508082111561373a5760405162461bcd60e51b815260040180806020018281038252602c81526020018061414e602c913960400191505060405180910390fd5b6001909201916136e6565b50909392505050565b80516000908190811a60808110156137695760019150613126565b60b881101561377e57607e1981019150613126565b60c08110156137ab5760b78103600185019450806020036101000a85510460018201810193505050613126565b60f88110156137c05760be1981019150613126565b60019390930151602084900360f7016101000a900490920160f5190192915050565b8051600090811a60808110156137fc5760009150506110ef565b60b8811080613817575060c08110801590613817575060f881105b156138265760019150506110ef565b60c081101561383a5760b5190190506110ef565b60f5190190506110ef565b8061384f57610b64565b5b6020811061386f578251825260209283019290910190601f1901613850565b915181516020939093036101000a6000190180199091169216919091179052565b600060028306156138c15760108260028504815181106138ac57fe5b016020015160f81c816138bb57fe5b066138e3565b60108260028504815181106138d257fe5b016020015160f81c816138e157fe5b045b60f81b9392505050565b6000806138fd836020015161374e565b8351909150811461393f5760405162461bcd60e51b815260040180806020018281038252602e815260200180614258602e913960400191505060405180910390fd5b825160211461397f5760405162461bcd60e51b8152600401808060200182810382526025815260200180613f536025913960400191505060405180910390fd5b5050602001516001015190565b600080606061399a86612b2c565b90506060815167ffffffffffffffff811180156139b657600080fd5b506040519080825280601f01601f1916602001820160405280156139e1576020820181803683370190505b509050845b82518601811015613a3b5760008782815181106139ff57fe5b602001015160f81c60f81b9050808388840381518110613a1b57fe5b60200101906001600160f81b031916908160001a905350506001016139e6565b50808051906020012082805190602001201415613a5b5781519250613a60565b600092505b509095945050505050565b60006118c883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250613d93565b60006020825181613aba57fe5b0615613b04576040805162461bcd60e51b8152602060048201526014602482015273092dcecc2d8d2c840e0e4dedecc40d8cadccee8d60631b604482015290519081900360640190fd5b60006020835181613b1157fe5b0490508060020a8510613b63576040805162461bcd60e51b81526020600482015260156024820152744c65616620696e64657820697320746f6f2062696760581b604482015290519081900360640190fd5b60008660205b85518111613bf55785810151925060028806613bb55781836040516020018083815260200182815260200192505050604051602081830303815290604052805190602001209150613be7565b828260405160200180838152602001828152602001925050506040516020818303038152906040528051906020012091505b600288049750602001613b69565b509094149695505050505050565b81546000908210613c455760405162461bcd60e51b8152600401808060200182810382526022815260200180613f316022913960400191505060405180910390fd5b826000018281548110613c5457fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000613c8f8383613c67565b613cc5575081546001818101845560008481526020808220909301849055845484825282860190935260409020919091556118cb565b5060006118cb565b60008181526001830160205260408120548015613d895783546000198083019190810190600090879083908110613d0057fe5b9060005260206000200154905080876000018481548110613d1d57fe5b600091825260208083209091019290925582815260018981019092526040902090840190558654879080613d4d57fe5b600190038181906000526020600020016000905590558660010160008781526020019081526020016000206000905560019450505050506118cb565b60009150506118cb565b60008184841115613e225760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015613de7578181015183820152602001613dcf565b50505050905090810190601f168015613e145780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60405180606001604052806000815260200160006001600160a01b03168152602001606081525090565b604051806040016040528060008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10613eaf57805160ff1916838001178555613edc565b82800160010185558215613edc579182015b82811115613edc578251825591602001919060010190613ec1565b50613ee8929150613eec565b5090565b610a6591905b80821115613ee85760008155600101613ef256fe526f6f74436861696e4d616e616765723a20544f4b454e5f545950455f4e4f545f535550504f52544544456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473524c505265616465723a20494e56414c49445f55494e545f5354524943545f4c454e475448416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e74526f6f74436861696e4d616e616765723a20494e56414c49445f4348494c445f434841494e5f414444524553534d6574615472616e73616374696f6e2875696e74323536206e6f6e63652c616464726573732066726f6d2c62797465732066756e6374696f6e5369676e617475726529526f6f74436861696e4d616e616765723a20494e56414c49445f544f4b454e5f54595045454950373132446f6d61696e28737472696e67206e616d652c737472696e672076657273696f6e2c6164647265737320766572696679696e67436f6e74726163742c627974657333322073616c7429526f6f74436861696e4d616e616765723a20494e56414c49445f4252414e43485f4d41534b526f6f74436861696e4d616e616765723a20544f4b454e5f4e4f545f4d4150504544524c505265616465723a2042595445535f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b654e61746976654d6574615472616e73616374696f6e3a20494e56414c49445f5349474e4552524c505265616465723a204e554d5f4954454d535f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a204445434f44494e475f4c4953545f41535f41444452455353526f6f74436861696e4d616e616765723a2045544845525f5452414e534645525f4641494c45445369676e657220616e64207369676e617475726520646f206e6f74206d61746368526f6f74436861696e4d616e616765723a20494e56414c49445f524f4f545f544f4b454e526f6f74436861696e4d616e616765723a20455849545f414c52454144595f50524f434553534544524c505265616465723a204c4953545f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a2055494e545f5354524943545f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66524c505265616465723a2055494e545f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a20494e56414c49445f414444524553535f4c454e475448a164736f6c6343000606000a","storage":{"0x0":"0x1","0x7":"0xe0afc4e9e03e4aa67257df7a2eca77454309789d","0x8":"0xbe5deac45dd1ca4ee18dc2d585d84d3d3cb82b0d","0x9":"0x0","0xa":"0x55","0xb":"0x2603903cfd8895fdde3da4d607d44203e86098073e351022fd12745d3436e93a","0xeb5be412f275a18f6e4d622aee4ff40b21467c926224771b782d4c095d1444b":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x162b27a30e878e20728deaa5c9814fd57ccf962b998b8733ce65749bc61c552f":"0x58a175bebc8ec21a94ea63aa5a28743945940ee6","0x1a93463c7bbb7215968307c7cd357c2009c10df2a511dd62c1189098e4f3249b":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x415fec6a4fd7706b96d3a0a30121284bc5e2b28b978c20486c9f5e20d44fc781":"0x1","0x4dc1f0160d96279adc262db20edcc15527e32cb28eda582becc5ac0bc453be34":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x5fc73aa2ab567caef8745f0709fae506c01972ffb297bd9225bc262d6e87746f":"0x1","0x6ce1cd05966f090b8daa7b2ee7f80930bbb39d19b693045725fbae5fa44fda90":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0xa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb49":"0x1","0xc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a8":"0x526f6f74436861696e4d616e616765723a20494e53554646494349454e545f50","0xc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a9":"0x45524d495353494f4e5300000000000000000000000000000000000000000000","0xd61ba0007bb57e62613f82f528c06ba46d36349cf5be567b12f878ef04849a7d":"0x1","0xf960df71fab73e593428c10f56f55e7ea46985963177def0458b97f1afec9576":"0xcf4e755f204163e9213ba8b1305036e386579ccc70731c25c62a101197811f48"}},"0x287dee389caaa49edc112888f2bcfd927b472e25":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c80634f89059e1461002d575b5f80fd5b61004061003b366004610125565b610054565b604051901515815260200160405180910390f35b5f806100985f85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101029050565b60ff1690505f811180156100f857506100f36100b5826001610191565b85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101029050565b60ff16155b9150505b92915050565b5f828281518110610115576101156101b0565b016020015160f81c905092915050565b5f8060208385031215610136575f80fd5b823567ffffffffffffffff8082111561014d575f80fd5b818501915085601f830112610160575f80fd5b81358181111561016e575f80fd5b86602082850101111561017f575f80fd5b60209290920196919550909350505050565b808201808211156100fc57634e487b7160e01b5f52601160045260245ffd5b634e487b7160e01b5f52603260045260245ffdfea164736f6c6343000818000a","storage":{}},"0x3198fc981626687f4b5bdf0fbeabb0a5e0489c03":{"nonce":1,"balance":"0x8ac7230489e80000","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0x1","0x97":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x13cf90498be59d359caa5b6092b365feab4610605d7107d1f05f8e94ac955652":"0x1","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xc2110388dd54228ae0a834119457ede938bf0b57","0x412386de53449251cbf7ce1f4c6a038bf9c0746e62d331b08ef0c3fa7d0ab672":"0x4fbf7b2f171336958be5d15ff762a5cff5363568","0x60793a5062d506d35cc8f1beda67ee5028c16bfcd9c923d5bfc439c04bd929b1":"0x6ac8f19d1e0f81147cdf2a1e53cb1f4e18417204","0x75df8b43665bf2e4996a686913c4c278ca7aed85444740ca40355b1c9a94b504":"0x1","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xf851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004":"0xc965345edac823d56812cd20a10316233916a605"}},"0x39a27956b78d00a4e00ea8833ff0947410a2933f":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xc9":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0xca":"0x4a3c194eb88966178bfdd81744dddafed611b830","0xcb":"0x4872cc1be60a9db9c880a0a437da7a6af134f08f","0xcc":"0xf8c26340c1eaea6c7ff1760b25005e1306953572","0xce":"0xce4bb7dc1eb9dce75743de6a4b48534fd427ef51","0xc6892776bb3da1e1199a03e0d3131aea089754b59c557b750c478ebc85ccaa":"0x6e66740000000000000000000000000000000000000000000000000000000006","0x6cb37a6d512a1e227e627eddc133023e6d00bfedff31a600abb75aa93e9a4a0":"0x6b7265737573000000000000000000000000000000000000000000000000000c","0x8e966fe8b9b43d48017ba1eb562ced91049de778396aaa438773698b3fa8fb6":"0x0","0x94a32b1c7b189ce7293f7ae444cdcab6800d858454022d15355d5ecc5b32b26":"0x0","0xa4b2d73a9f36ca5eed107f7c3d2ba877fb7537d447256726bcde9bac9e9aaee":"0x0","0xe0e3ab102c26f13da20123aa517b31e99cf65b7b720ba0dd7138012fd23eff2":"0x0","0x1203b5e51c7d5be6da42b83f22878d3583e53123857d27fc3cff3df46fb9126c":"0x0","0x13477730039a04f4290adf0e48e98b233579c040281545e4446ce662ba56a9be":"0x7800000000000000000000000000000000000000000000000000000000000002","0x1e06d49ce7b00846691778f302e94a3ac9c2633d745ebe73d68353c941e68dee":"0x626974636f696e0000000000000000000000000000000000000000000000000e","0x1e99199375610ffe00d28ee5827c616cf6469be3de2a2f738d955eb6b62127e8":"0x1","0x21e80eded1b2e1c5d976c85e89dde60bd4e99a8d66346af0e359ac854bceba44":"0x0","0x254d9ade81439f29723741d6ff407eab1fe03caffb042bd85e53955e41fb9792":"0x616c74696d697374000000000000000000000000000000000000000000000010","0x269db12b2cd2aeb7d5f52eda16edb1d211ccbea12da1ebfa60ed5f8f396c1d04":"0x0","0x2a3f03435eedee01de7e1c4386b04ca8469edd8df00408cd6d2b058bce1cecfa":"0x0","0x323a3cb169499006d6635c58232c8c58e23c20bf9e1d309d6b3bc6fb2c7a093d":"0x0","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x229c56b7805ab5935a883207f6a6bd5847e65aee","0x37aac864d4715a975bd45cae6be99de9f7968cf995917cc7f8192940fb62acbf":"0x0","0x3f69f26894a7ae0f7a7aa6c2d77935589dabbff6435aee960da15064dea7cd59":"0x64616f0000000000000000000000000000000000000000000000000000000006","0x467a68fda3230ce33f64703ebdbd91caccf235403282ae9fe390675ef39e9c94":"0x0","0x50ae8c017c4c1fddbe9509bd2b916f5dd9da11ddb639f2a4230322f49a41ac87":"0x1","0x5496787fc1ebdfeba375028c1865f13fbb1d63c0caa356ccc1b29a80f3ebd622":"0x0","0x576dd8d1a7b74aba0a99a213f50d74aa642a2c80bd5a854b24aac7568afea0f7":"0x626974676574000000000000000000000000000000000000000000000000000c","0x5b54338c052ce22ec334b6c5a19c4b122701c5fd4d3a2a5f5890f57050e0aafa":"0x626c6f636b636861696e00000000000000000000000000000000000000000014","0x5d9de30f0e5e02628e726fd23e310ee9e64489866fa6959825148a25d40e4c83":"0x0","0x5e2d99ab4a1a153039a4b2e068d64802da8735071a2d018ee9d04297945bed00":"0x0","0x670006c4193123492fb25db465ed52e62aff2f076289f4f1a5f167237f5e579d":"0x6d616e676100000000000000000000000000000000000000000000000000000a","0x6deac161c541001c0d79afaf7b809418785fa5ca6533d86bcf312e7213ee08fc":"0x0","0x6eaa0db35203bc0d58aff54ca630dd125b27758aa6204f7a11c0617f7c2fa776":"0x706f670000000000000000000000000000000000000000000000000000000006","0x732abe4661f55132b7f119cab9a9985be6630299dfc92870cc910f147795bc44":"0x0","0x743eb517f46c12bb593097087a972028308ce2e819a76cfb5488751f9d1ca34a":"0x7265616c6d00000000000000000000000000000000000000000000000000000a","0x750dfb39c9afc828c341e1a8e8fdca0b3914baf43303e1ef21fbfe8ec8ee016a":"0x0","0x7cbf647b96a1d1a533ea4bc3a4a8a78f166bd91e6a96afb12f063fef0e9cb960":"0x0","0x7dc972254779cfb51850c0eaccfcb71207822b3c10d4840567bec3dfbf0dff13":"0x636f6d0000000000000000000000000000000000000000000000000000000006","0x7dfa160584f41570c33e8e6c42c5314a7b45ddc162f99fd101ccc10c7b5b3dd3":"0x77616c6c6574000000000000000000000000000000000000000000000000000c","0x868a5f38a2d46181ffad442d7bc5b337b3c349a58e4979f2901786c6123b996c":"0x6b6c65766572000000000000000000000000000000000000000000000000000c","0x87b2c647061aef22ef1aba96c67f440d471dfac27e9873ff4a03793b402d32ee":"0x706f6c79676f6e0000000000000000000000000000000000000000000000000e","0x893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e":"0x7c3c91245769c8b7450ad522792dec4bd4bf797f","0x91e744007b4b3621bec7c01ea851c3f48cf196b9cc6c566a48cec8c5faac6e62":"0x0","0x92c5a28dd4caaa50e0a8370243a5c600f64349e8b03604b403cbe111b50f1f7b":"0x3838380000000000000000000000000000000000000000000000000000000006","0x947936973a3a21b10c8980e1a8939a55c7339d302161884a3de05cf090e812f0":"0x1","0x9535d3ea47c5e1398d3405b4fadc73de6b1b1e6a66f674a8886ab7a6c873a390":"0x63727970746f000000000000000000000000000000000000000000000000000c","0x9956a4e94676c45844be3667f17e077c7cb53aa4e87e5a71d65e56b291232715":"0x676f000000000000000000000000000000000000000000000000000000000004","0x9c6ba1ddff1ffbc14dcdc1f97db867554a42a39e00e892c7e882dbb3dca89ebf":"0x6869000000000000000000000000000000000000000000000000000000000004","0x9f836a0f81651f597cee678b440ba8c853c633e6654809efb83d4b22aff06fb2":"0x616e696d6500000000000000000000000000000000000000000000000000000a","0x9fecf1e12f4b8ec337da992721a0f27526ddbd6be1e77885ab963c09afcf0fc1":"0x0","0xab129a0f8c6cf8d160116a28abc7369c2f8a098fc023f00f07dc3e1d5798e47a":"0x0","0xb04c0eb6f034d9a3179a4e6f953bdf8afc78ba2cdcfbc775076e1c2a0bb67818":"0x0","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xbe51b53bc2060a7a6419622b5a9adc00b50a57e6aa741882f2f60f95d4580078":"0x636c617900000000000000000000000000000000000000000000000000000008","0xbf350522e335b8ab3da1d099c93cdc09179f1e15ea6aa1acfaa4afb1ef87eabf":"0x756e73746f707061626c65000000000000000000000000000000000000000016","0xcbf7a3d53e0851ac15a415b99c2ba95a2497dd9dd44068ac261bcbdafdfe8472":"0x707564677900000000000000000000000000000000000000000000000000000a","0xcf4411216f3fdf787d1cfe037bbcfa0d5293d83a8082f8e4141266399e2a784b":"0x61757374696e000000000000000000000000000000000000000000000000000c","0xcfdbac664139565f92cce149a345e5f19355d25b3eb8a70c549d5da3283a15b8":"0x7a696c0000000000000000000000000000000000000000000000000000000006","0xcfeb64c30a93ecd7224f854b09be57bb6b3962e739fa8e3ea3a1851502474c07":"0x1","0xe03c9c593ce8661bd39f77653f7ca6c43f093aa7f3b95890f309f67b57f39e74":"0x0","0xe50c62c16d12655dfdbd61c232155e5c3a1cf61977d2d8e7449cb88611b73832":"0x0","0xeeb0b17d77f2c9069ad443f3927c0802d98d5553e52b17c985d45d4a10b79566":"0x62696e616e636575730000000000000000000000000000000000000000000012","0xf562ef0db022f25a957fb6e49aa07004f14a50ed5b23279e9ac25b4632f7bf1c":"0x0","0xf6776268d6c5847a771099280c742d684a4b22bac609ba615de51f7f893ff2bc":"0x0"}},"0x3f1194b9019002863ad0dbbe295294547c0d36a9":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100b1575f3560e01c80635b0fc9c31161006e5780635b0fc9c3146101a55780635ef2c7f0146101b8578063a22cb465146101cb578063cf408823146101de578063e985e9c5146101f1578063f79fe5381461023c575f80fd5b80630178b8bf146100b557806302571be3146100fd57806306ab59231461011057806314ab90381461013157806316a25cbd146101465780631896f70a14610192575b5f80fd5b6100e06100c3366004610785565b5f908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100e061010b366004610785565b610266565b61012361011e3660046107b7565b610292565b6040519081526020016100f4565b61014461013f366004610800565b61035f565b005b610179610154366004610785565b5f90815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100f4565b6101446101a036600461082a565b61042e565b6101446101b336600461082a565b6104ef565b6101446101c636600461084b565b61058e565b6101446101d936600461089e565b6105af565b6101446101ec3660046108d7565b61061a565b61022c6101ff366004610921565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205460ff1690565b60405190151581526020016100f4565b61022c61024a366004610785565b5f908152602081905260409020546001600160a01b0316151590565b5f818152602081905260408120546001600160a01b031630810361028c57505f92915050565b92915050565b5f8381526020819052604081205484906001600160a01b0316338114806102db57506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b6102e3575f80fd5b604080516020808201899052818301889052825180830384018152606090920190925280519101206103158186610635565b6040516001600160a01b0386168152869088907fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829060200160405180910390a39695505050505050565b5f8281526020819052604090205482906001600160a01b0316338114806103a857506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b6103b0575f80fd5b60405167ffffffffffffffff8416815284907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a250505f91825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b5f8281526020819052604090205482906001600160a01b03163381148061047757506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b61047f575f80fd5b6040516001600160a01b038416815284907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a250505f9182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b5f8281526020819052604090205482906001600160a01b03163381148061053857506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b610540575f80fd5b61054a8484610635565b6040516001600160a01b038416815284907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a250505050565b5f61059a868686610292565b90506105a7818484610662565b505050505050565b335f8181526001602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b61062484846104ef565b61062f848383610662565b50505050565b5f9182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b5f838152602081905260409020600101546001600160a01b038381169116146106e6575f838152602081815260409182902060010180546001600160a01b0319166001600160a01b038616908117909155915191825284917f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a0910160405180910390a25b5f8381526020819052604090206001015467ffffffffffffffff828116600160a01b9092041614610780575f8381526020818152604091829020600101805467ffffffffffffffff60a01b1916600160a01b67ffffffffffffffff861690810291909117909155915191825284917f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa68910160405180910390a25b505050565b5f60208284031215610795575f80fd5b5035919050565b80356001600160a01b03811681146107b2575f80fd5b919050565b5f805f606084860312156107c9575f80fd5b83359250602084013591506107e06040850161079c565b90509250925092565b803567ffffffffffffffff811681146107b2575f80fd5b5f8060408385031215610811575f80fd5b82359150610821602084016107e9565b90509250929050565b5f806040838503121561083b575f80fd5b823591506108216020840161079c565b5f805f805f60a0868803121561085f575f80fd5b85359450602086013593506108766040870161079c565b92506108846060870161079c565b9150610892608087016107e9565b90509295509295909350565b5f80604083850312156108af575f80fd5b6108b88361079c565b9150602083013580151581146108cc575f80fd5b809150509250929050565b5f805f80608085870312156108ea575f80fd5b843593506108fa6020860161079c565b92506109086040860161079c565b9150610916606086016107e9565b905092959194509250565b5f8060408385031215610932575f80fd5b61093b8361079c565b91506108216020840161079c56fea164736f6c6343000818000a","storage":{"0xdd4f47a3b6f87903b728feed7a23273bd8de58e4fa257d37a74a5881e5d92ff":"0xf670681605efc4efc804f5a9b97ee89520473d56","0x14ce109f1cffdc11aa7355660be720f902291be09fb159b4c578958cd0f533bc":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x14ce109f1cffdc11aa7355660be720f902291be09fb159b4c578958cd0f533bd":"0x0","0x1e2c8528d7e8e90443ad0a4e37b6f2b1daed719a574ce3a0c347063e8d839d50":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1e2c8528d7e8e90443ad0a4e37b6f2b1daed719a574ce3a0c347063e8d839d51":"0x0","0x2fb4213711fd985fc1fb1ea2bfa660b0b37fd50c6c74ab531d9b54b29dd5177e":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2fb4213711fd985fc1fb1ea2bfa660b0b37fd50c6c74ab531d9b54b29dd5177f":"0x0","0x859ecef2e168dc10231b000bd53493b42bc9d944cac29d94582c1e1d43592131":"0xc965345edac823d56812cd20a10316233916a605","0x8878c6daefcfc78c7f181d00d719b4a0612dd3e65cafeb72507d15c036a9f690":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0xe4fdf45c2f8d198854f8823809c7a988eeaaa493","0xfb5568c6845cf0d5915af088a5d8ba90a5ff735e102c9a79609ef7d043f1108c":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xfb5568c6845cf0d5915af088a5d8ba90a5ff735e102c9a79609ef7d043f1108d":"0x0"}},"0x4872cc1be60a9db9c880a0a437da7a6af134f08f":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100935760003560e01c80637362d9c8116100665780637362d9c8146101285780637b1039991461014e57806399e0dd7c14610172578063bb5f747b146101e2578063d6cd94731461020857610093565b806310154bad14610098578063291d9549146100c05780633af32abf146100e65780634c5a628c14610120575b600080fd5b6100be600480360360208110156100ae57600080fd5b50356001600160a01b0316610210565b005b6100be600480360360208110156100d657600080fd5b50356001600160a01b0316610260565b61010c600480360360208110156100fc57600080fd5b50356001600160a01b03166102ad565b604080519115158252519081900360200190f35b6100be6102c6565b6100be6004803603602081101561013e57600080fd5b50356001600160a01b03166102d1565b61015661031e565b604080516001600160a01b039092168252519081900360200190f35b6100be6004803603602081101561018857600080fd5b8101906020810181356401000000008111156101a357600080fd5b8201836020820111156101b557600080fd5b803590602001918460018302840111640100000000831117156101d757600080fd5b50909250905061032d565b61010c600480360360208110156101f857600080fd5b50356001600160a01b0316610404565b6100be610416565b61021933610404565b6102545760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d8161041f565b50565b61026933610404565b6102a45760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d81610467565b60006102c060018363ffffffff6104af16565b92915050565b6102cf33610516565b565b6102da33610404565b6103155760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d8161055e565b6002546001600160a01b031690565b610336336102ad565b6103715760405162461bcd60e51b815260040180806020018281038252603a815260200180610712603a913960400191505060405180910390fd5b6002546040516369426cbd60e11b8152602060048201908152602482018490526001600160a01b039092169163d284d97a91859185918190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b1580156103e857600080fd5b505af11580156103fc573d6000803e3d6000fd5b505050505050565b60006102c0818363ffffffff6104af16565b6102cf33610467565b61043060018263ffffffff6105a616565b6040516001600160a01b038216907fee1504a83b6d4a361f4c1dc78ab59bfa30d6a3b6612c403e86bb01ef2984295f90600090a250565b61047860018263ffffffff61062716565b6040516001600160a01b038216907f270d9b30cf5b0793bbfd54c9d5b94aeb49462b8148399000265144a8722da6b690600090a250565b60006001600160a01b0382166104f65760405162461bcd60e51b81526004018080602001828103825260228152602001806106b06022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b61052760008263ffffffff61062716565b6040516001600160a01b038216907f0a8eb35e5ca14b3d6f28e4abf2f128dbab231a58b56e89beb5d636115001e16590600090a250565b61056f60008263ffffffff6105a616565b6040516001600160a01b038216907f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129990600090a250565b6105b082826104af565b15610602576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b61063182826104af565b61066c5760405162461bcd60e51b815260040180806020018281038252602181526020018061068f6021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f206164647265737357686974656c69737441646d696e526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c69737441646d696e20726f6c6557686974656c6973746564526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c697374656420726f6c65a265627a7a72315820debca60946c0819dc5b5c2756c5c1dd8dd8a46f2429fa8a43a4f4362af3030c164736f6c634300050c0032","storage":{"0x2":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x5ac40fcee41fb0272a935f6e51e963102fba5db6f20e897e9361f0347eb2cae6":"0x1","0xdc4aeb95a779c8b92b845e3a94044db8ff2e43acc37da18c4b35a6bbad7c122f":"0x1"}},"0x49da8861c65460639925febe1fb4b5b59b443082":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f7e83aee1461002d575b5f80fd5b61004061003b3660046101ac565b610054565b604051901515815260200160405180910390f35b5f602082146100a95760405162461bcd60e51b815260206004820152601a60248201527f496e76616c6964207368613235362068617368206c656e677468000000000000604482015260640160405180910390fd5b6100eb5f84848080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101459050565b600286866040516100fd929190610213565b602060405180830381855afa158015610118573d5f803e3d5ffd5b5050506040513d601f19601f8201168201806040525081019061013b9190610222565b1495945050505050565b81515f90610154836020610239565b111561015e575f80fd5b50016020015190565b5f8083601f840112610177575f80fd5b50813567ffffffffffffffff81111561018e575f80fd5b6020830191508360208285010111156101a5575f80fd5b9250929050565b5f805f80604085870312156101bf575f80fd5b843567ffffffffffffffff808211156101d6575f80fd5b6101e288838901610167565b909650945060208701359150808211156101fa575f80fd5b5061020787828801610167565b95989497509550505050565b818382375f9101908152919050565b5f60208284031215610232575f80fd5b5051919050565b8082018082111561025857634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x4a3c194eb88966178bfdd81744dddafed611b830":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061009e5760003560e01c806398650275116100665780639865027514610305578063aa271e1a1461030d578063b2da297914610347578063be362e2e146103c5578063c36c2125146104fe5761009e565b80634c0b0ed2146100a35780637b103999146101595780637caf3ad81461017d5780638ad364f814610258578063983b2d56146102df575b600080fd5b610157600480360360408110156100b957600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156100e357600080fd5b8201836020820111156100f557600080fd5b803590602001918460018302840111600160201b8311171561011657600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506105bd945050505050565b005b61016161074c565b604080516001600160a01b039092168252519081900360200190f35b6101576004803603608081101561019357600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156101bd57600080fd5b8201836020820111156101cf57600080fd5b803590602001918460018302840111600160201b831117156101f057600080fd5b919390926001600160a01b0383351692604081019060200135600160201b81111561021a57600080fd5b82018360208201111561022c57600080fd5b803590602001918460018302840111600160201b8311171561024d57600080fd5b50909250905061075b565b6101576004803603606081101561026e57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561029857600080fd5b8201836020820111156102aa57600080fd5b803590602001918460018302840111600160201b831117156102cb57600080fd5b9193509150356001600160a01b0316610957565b610157600480360360208110156102f557600080fd5b50356001600160a01b0316610b2b565b610157610b7b565b6103336004803603602081101561032357600080fd5b50356001600160a01b0316610b86565b604080519115158252519081900360200190f35b6101576004803603604081101561035d57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561038757600080fd5b82018360208201111561039957600080fd5b803590602001918460018302840111600160201b831117156103ba57600080fd5b509092509050610b9e565b610157600480360360608110156103db57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561040557600080fd5b82018360208201111561041757600080fd5b803590602001918460018302840111600160201b8311171561043857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b81111561048a57600080fd5b82018360208201111561049c57600080fd5b803590602001918460018302840111600160201b831117156104bd57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610bf1945050505050565b6101576004803603606081101561051457600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561053e57600080fd5b82018360208201111561055057600080fd5b803590602001918460018302840111600160201b8311171561057157600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550505090356001600160a01b03169150610dec9050565b6105c633610b86565b6106015760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b039092169163b5466669918591849163ebf0c717916004808301926020929190829003018186803b15801561064f57600080fd5b505afa158015610663573d6000803e3d6000fd5b505050506040513d602081101561067957600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052606060448301908152875160648401528751889360840190602085019080838360005b838110156106e25781810151838201526020016106ca565b50505050905090810190601f16801561070f5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15801561073057600080fd5b505af1158015610744573d6000803e3d6000fd5b505050505050565b6001546001600160a01b031690565b6107cf8686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f89018190048102820181019092528781529250879150869081908401838280828437600092019190915250610bf192505050565b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691632525d06a91869184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b15801561082557600080fd5b505afa158015610839573d6000803e3d6000fd5b505050506040513d602081101561084f57600080fd5b5051604080516001600160e01b031960e085901b1681526004810183815260248201928352604482018d90528d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b1580156108bd57600080fd5b505afa1580156108d1573d6000803e3d6000fd5b505050506040513d60208110156108e757600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b15801561093757600080fd5b505af115801561094b573d6000803e3d6000fd5b50505050505050505050565b6109a58484848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250610bf1915050565b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691632525d06a91849184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b1580156109fb57600080fd5b505afa158015610a0f573d6000803e3d6000fd5b505050506040513d6020811015610a2557600080fd5b5051604080516001600160e01b031960e085901b1681526004810183815260248201928352604482018b90528b928b92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b158015610a9357600080fd5b505afa158015610aa7573d6000803e3d6000fd5b505050506040513d6020811015610abd57600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b158015610b0d57600080fd5b505af1158015610b21573d6000803e3d6000fd5b5050505050505050565b610b3433610b86565b610b6f5760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b610b7881611115565b50565b610b843361115d565b565b6000610b98818363ffffffff6111a516565b92915050565b610bec8383838080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250610bf1915050565b505050565b610bfa33610b86565b610c355760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691630467e014918691849163ebf0c717916004808301926020929190829003018186803b158015610c8357600080fd5b505afa158015610c97573d6000803e3d6000fd5b505050506040513d6020811015610cad57600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052608060448301908152885160848401528851899389939291606482019160a40190602087019080838360005b83811015610d1f578181015183820152602001610d07565b50505050905090810190601f168015610d4c5780820380516001836020036101000a031916815260200191505b50838103825284518152845160209182019186019080838360005b83811015610d7f578181015183820152602001610d67565b50505050905090810190601f168015610dac5780820380516001836020036101000a031916815260200191505b509650505050505050600060405180830381600087803b158015610dcf57600080fd5b505af1158015610de3573d6000803e3d6000fd5b50505050505050565b610df533610b86565b610e305760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b039092169163b5466669918691849163ebf0c717916004808301926020929190829003018186803b158015610e7e57600080fd5b505afa158015610e92573d6000803e3d6000fd5b505050506040513d6020811015610ea857600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052606060448301908152885160648401528851899360840190602085019080838360005b83811015610f11578181015183820152602001610ef9565b50505050905090810190601f168015610f3e5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015610f5f57600080fd5b505af1158015610f73573d6000803e3d6000fd5b50506001546040805163ebf0c71760e01b815290516001600160a01b039092169350632525d06a9250849184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b158015610fcd57600080fd5b505afa158015610fe1573d6000803e3d6000fd5b505050506040513d6020811015610ff757600080fd5b5051604080516001600160e01b031960e085901b16815260048101838152602482019283528a5160448301528a518b93919260640190602085019080838360005b83811015611050578181015183820152602001611038565b50505050905090810190601f16801561107d5780820380516001836020036101000a031916815260200191505b50935050505060206040518083038186803b15801561109b57600080fd5b505afa1580156110af573d6000803e3d6000fd5b505050506040513d60208110156110c557600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b158015610dcf57600080fd5b61112660008263ffffffff61120c16565b6040516001600160a01b038216907f6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f690600090a250565b61116e60008263ffffffff61128d16565b6040516001600160a01b038216907fe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb6669290600090a250565b60006001600160a01b0382166111ec5760405162461bcd60e51b81526004018080602001828103825260228152602001806113466022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b61121682826111a5565b15611268576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b61129782826111a5565b6112d25760405162461bcd60e51b81526004018080602001828103825260218152602001806113256021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe4d696e746572526f6c653a2063616c6c657220646f6573206e6f74206861766520746865204d696e74657220726f6c65526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f2061646472657373a265627a7a72315820c058d70355f7d37ff6b3b61cd850cc4a41893e30048389698c062148bf3d2ff464736f6c634300050c0032","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x789b49055833748af4eaa9affbcd84118ce8770f7e4385b5a3f428626b1f0aff":"0x1","0xdc4aeb95a779c8b92b845e3a94044db8ff2e43acc37da18c4b35a6bbad7c122f":"0x1"}},"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061007b5760003560e01c80639623609d1161004e5780639623609d1461011157806399a88ec414610124578063f2fde38b14610144578063f3b7dead1461016457600080fd5b8063204e1c7a14610080578063715018a6146100bc5780637eff275e146100d35780638da5cb5b146100f3575b600080fd5b34801561008c57600080fd5b506100a061009b366004610499565b610184565b6040516001600160a01b03909116815260200160405180910390f35b3480156100c857600080fd5b506100d1610215565b005b3480156100df57600080fd5b506100d16100ee3660046104bd565b610229565b3480156100ff57600080fd5b506000546001600160a01b03166100a0565b6100d161011f36600461050c565b610291565b34801561013057600080fd5b506100d161013f3660046104bd565b610300565b34801561015057600080fd5b506100d161015f366004610499565b610336565b34801561017057600080fd5b506100a061017f366004610499565b6103b4565b6000806000836001600160a01b03166040516101aa90635c60da1b60e01b815260040190565b600060405180830381855afa9150503d80600081146101e5576040519150601f19603f3d011682016040523d82523d6000602084013e6101ea565b606091505b5091509150816101f957600080fd5b8080602001905181019061020d91906105e2565b949350505050565b61021d6103da565b6102276000610434565b565b6102316103da565b6040516308f2839760e41b81526001600160a01b038281166004830152831690638f283970906024015b600060405180830381600087803b15801561027557600080fd5b505af1158015610289573d6000803e3d6000fd5b505050505050565b6102996103da565b60405163278f794360e11b81526001600160a01b03841690634f1ef2869034906102c990869086906004016105ff565b6000604051808303818588803b1580156102e257600080fd5b505af11580156102f6573d6000803e3d6000fd5b5050505050505050565b6103086103da565b604051631b2ce7f360e11b81526001600160a01b038281166004830152831690633659cfe69060240161025b565b61033e6103da565b6001600160a01b0381166103a85760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b6103b181610434565b50565b6000806000836001600160a01b03166040516101aa906303e1469160e61b815260040190565b6000546001600160a01b031633146102275760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161039f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146103b157600080fd5b6000602082840312156104ab57600080fd5b81356104b681610484565b9392505050565b600080604083850312156104d057600080fd5b82356104db81610484565b915060208301356104eb81610484565b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561052157600080fd5b833561052c81610484565b9250602084013561053c81610484565b9150604084013567ffffffffffffffff8082111561055957600080fd5b818601915086601f83011261056d57600080fd5b81358181111561057f5761057f6104f6565b604051601f8201601f19908116603f011681019083821181831017156105a7576105a76104f6565b816040528281528960208487010111156105c057600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000602082840312156105f457600080fd5b81516104b681610484565b60018060a01b038316815260006020604081840152835180604085015260005b8181101561063b5785810183015185820160600152820161061f565b8181111561064d576000606083870101525b50601f01601f19169290920160600194935050505056fea26469706673582212207ad53e1008cce369999f6b5f2f77109510b404ff1de9b47b639981fd68e6239264736f6c63430008090033","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x4e59b44847b379578588920ca78fbf26c0b4956c":{"nonce":0,"balance":"0x0","code":"0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe03601600081602082378035828234f58015156039578182fd5b8082525050506014600cf3","storage":{}},"0x4eb9de1fc0d800e941f326d6699e9e11969557ea":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063100cdd911461002d575b5f80fd5b61004061003b3660046102cd565b610042565b005b5f5b818110156101b8575f7f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e28484848181106100805761008061033c565b905060200201356040516020016100a1929190918252602082015260400190565b60408051808303601f190181529082905280516020909101206331a9108f60e11b82526004820181905291507f000000000000000000000000107733fed96c4cd390c944a31f5425a7fb98ae5e6001600160a01b0316906323b872dd908290636352211e90602401602060405180830381865afa158015610124573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101489190610350565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015261dead6024820152604481018490526064015f604051808303815f87803b158015610195575f80fd5b505af11580156101a7573d5f803e3d5ffd5b505060019093019250610044915050565b5080156102c9577f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e282826101ed60018261037d565b8181106101fc576101fc61033c565b9050602002013560405160200161021d929190918252602082015260400190565b604051602081830303815290604052805190602001205f1c7f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e283835f8181106102685761026861033c565b90506020020135604051602001610289929190918252602082015260400190565b60408051601f19818403018152908290528051602090910120907fdf423376f9b0ab363b1b4d6f0b4cb6821921ec30f491555a97236a8a38ce095a905f90a35b5050565b5f80602083850312156102de575f80fd5b823567ffffffffffffffff808211156102f5575f80fd5b818501915085601f830112610308575f80fd5b813581811115610316575f80fd5b8660208260051b850101111561032a575f80fd5b60209290920196919550909350505050565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215610360575f80fd5b81516001600160a01b0381168114610376575f80fd5b9392505050565b8181038181111561039c57634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x4fbf7b2f171336958be5d15ff762a5cff5363568":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061011b575f3560e01c80638d839ffe1161009d578063aeb8ce9b11610062578063aeb8ce9b14610356578063ce1e09c014610375578063d3419bf3146103a8578063f14fcbc8146103db578063f2fde38b146103fa575f80fd5b80638d839ffe146102a25780638da5cb5b146102d55780639791c097146102f1578063a8e5fbc014610310578063acf1a84114610343575f80fd5b806374694a2b116100e357806374694a2b146101c957806380869853146101dc578063839df9451461022757806383e7f6ff146102525780638a95b09f1461028c575f80fd5b806301ffc9a71461011f5780633ccfd60b146101535780635d3590d51461016957806365a69dcf14610188578063715018a6146101b5575b5f80fd5b34801561012a575f80fd5b5061013e610139366004611145565b610419565b60405190151581526020015b60405180910390f35b34801561015e575f80fd5b5061016761044f565b005b348015610174575f80fd5b50610167610183366004611187565b610489565b348015610193575f80fd5b506101a76101a23660046112e4565b610507565b60405190815260200161014a565b3480156101c0575f80fd5b5061016761058b565b6101676101d73660046113db565b61059e565b3480156101e7575f80fd5b5061020f7f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5681565b6040516001600160a01b03909116815260200161014a565b348015610232575f80fd5b506101a761024136600461149d565b60016020525f908152604090205481565b34801561025d575f80fd5b5061027161026c3660046114b4565b610894565b6040805182518152602092830151928101929092520161014a565b348015610297575f80fd5b506101a76224ea0081565b3480156102ad575f80fd5b506101a77f000000000000000000000000000000000000000000000000000000000000025881565b3480156102e0575f80fd5b505f546001600160a01b031661020f565b3480156102fc575f80fd5b5061013e61030b3660046114f6565b6109c9565b34801561031b575f80fd5b5061020f7f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e1841720481565b610167610351366004611528565b6109dd565b348015610361575f80fd5b5061013e6103703660046114f6565b610b7b565b348015610380575f80fd5b506101a77f000000000000000000000000000000000000000000000000000000000001518081565b3480156103b3575f80fd5b5061020f7f000000000000000000000000ec71e4e674fe0f432693dc2b935c34bd2774c00381565b3480156103e6575f80fd5b506101676103f536600461149d565b610c22565b348015610405575f80fd5b50610167610414366004611570565b610c95565b5f6001600160e01b031982166301ffc9a760e01b148061044957506001600160e01b0319821663612e8c0960e01b145b92915050565b5f80546040516001600160a01b03909116914780156108fc02929091818181858888f19350505050158015610486573d5f803e3d5ffd5b50565b610491610d0b565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af11580156104dd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105019190611589565b50505050565b885160208a01205f90841580159061052657506001600160a01b038716155b15610544576040516334fd817160e21b815260040160405180910390fd5b808a8a8a8a8a8a8a8a6040516020016105659998979695949392919061165e565b604051602081830303815290604052805190602001209150509998505050505050505050565b610593610d0b565b61059c5f610d64565b565b5f6105df8b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c9250610894915050565b602081015181519192506105f2916116d5565b3410156106125760405163044044a560e21b815260040160405180910390fd5b6106b38b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f82011690508083019250505050505050896106ae8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f820116905080830192505050505050508d8d8d8d8d8d8d8d610507565b610db3565b604051635200a4c160e11b81525f906001600160a01b037f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e18417204169063a40149829061070b908f908f908f908f908e908b906004016116e8565b6020604051808303815f875af1158015610727573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061074b9190611732565b9050841561077657610776878d8d604051610767929190611749565b60405180910390208888610ece565b83156107be576107be8c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508b9250339150610f939050565b896001600160a01b03168c8c6040516107d8929190611749565b60405180910390207f69e37f151eb98a09618ddaa80c8cfaf1ce5996867c489f45b555b412271ebf278e8e865f015187602001518760405161081e959493929190611758565b60405180910390a36020820151825161083791906116d5565b341115610886576020820151825133916108fc9161085591906116d5565b61085f9034611788565b6040518115909202915f818181858888f19350505050158015610884573d5f803e3d5ffd5b505b505050505050505050505050565b604080518082019091525f808252602082015282516020840120604051636b727d4360e11b8152600481018290527f000000000000000000000000ec71e4e674fe0f432693dc2b935c34bd2774c0036001600160a01b03908116916350e9a7159187917f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063d6e4fa8690602401602060405180830381865afa158015610940573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109649190611732565b866040518463ffffffff1660e01b8152600401610983939291906117e8565b6040805180830381865afa15801561099d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109c1919061180c565b949350505050565b5f60036109d583611044565b101592915050565b5f83836040516109ee929190611749565b604080519182900382206020601f8701819004810284018101909252858352925082915f91610a39919088908890819084018382808284375f92019190915250889250610894915050565b8051909150341015610a5e5760405163044044a560e21b815260040160405180910390fd5b60405163c475abff60e01b815260048101839052602481018590525f907f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b03169063c475abff906044016020604051808303815f875af1158015610acb573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610aef9190611732565b8251909150341115610b3457815133906108fc90610b0d9034611788565b6040518115909202915f818181858888f19350505050158015610b32573d5f803e3d5ffd5b505b837f3da24c024582931cfaf8267d8ed24d13a82a8068d5bd337d30ec45cea4e506ae88883485604051610b6a9493929190611859565b60405180910390a250505050505050565b805160208201205f90610b8d836109c9565b8015610c1b57506040516312dc929d60e31b8152600481018290527f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b0316906396e494e890602401602060405180830381865afa158015610bf7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c1b9190611589565b9392505050565b5f818152600160205260409020544290610c5d907f0000000000000000000000000000000000000000000000000000000000015180906116d5565b10610c8357604051630a059d7160e01b8152600481018290526024015b60405180910390fd5b5f908152600160205260409020429055565b610c9d610d0b565b6001600160a01b038116610d025760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610c7a565b61048681610d64565b5f546001600160a01b0316331461059c5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610c7a565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f818152600160205260409020544290610dee907f0000000000000000000000000000000000000000000000000000000000000258906116d5565b1115610e1057604051635320bcf960e01b815260048101829052602401610c7a565b5f818152600160205260409020544290610e4b907f0000000000000000000000000000000000000000000000000000000000015180906116d5565b11610e6c5760405163cb7690d760e01b815260048101829052602401610c7a565b610e7583610b7b565b610e9457826040516308eee0fd60e31b8152600401610c7a919061187f565b5f818152600160205260408120556224ea00821015610ec957604051639a71997b60e01b815260048101839052602401610c7a565b505050565b604080517f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae6020808301919091528183018690528251808303840181526060830193849052805191012063e32954eb60e01b90925285906001600160a01b0382169063e32954eb90610f4890859088908890606401611891565b5f604051808303815f875af1158015610f63573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052610f8a91908101906118b3565b50505050505050565b7f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d566001600160a01b0316637a806d6b33838587604051602001610fd691906119a7565b6040516020818303038152906040526040518563ffffffff1660e01b815260040161100494939291906119ce565b6020604051808303815f875af1158015611020573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105019190611732565b80515f90819081905b8082101561113c575f85838151811061106857611068611a0b565b01602001516001600160f81b0319169050600160ff1b811015611097576110906001846116d5565b9250611129565b600760fd1b6001600160f81b0319821610156110b8576110906002846116d5565b600f60fc1b6001600160f81b0319821610156110d9576110906003846116d5565b601f60fb1b6001600160f81b0319821610156110fa576110906004846116d5565b603f60fa1b6001600160f81b03198216101561111b576110906005846116d5565b6111266006846116d5565b92505b508261113481611a1f565b93505061104d565b50909392505050565b5f60208284031215611155575f80fd5b81356001600160e01b031981168114610c1b575f80fd5b80356001600160a01b0381168114611182575f80fd5b919050565b5f805f60608486031215611199575f80fd5b6111a28461116c565b92506111b06020850161116c565b9150604084013590509250925092565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff811182821017156111fd576111fd6111c0565b604052919050565b5f67ffffffffffffffff82111561121e5761121e6111c0565b50601f01601f191660200190565b5f82601f83011261123b575f80fd5b813561124e61124982611205565b6111d4565b818152846020838601011115611262575f80fd5b816020850160208301375f918101602001919091529392505050565b5f8083601f84011261128e575f80fd5b50813567ffffffffffffffff8111156112a5575f80fd5b6020830191508360208260051b85010111156112bf575f80fd5b9250929050565b8015158114610486575f80fd5b803561ffff81168114611182575f80fd5b5f805f805f805f805f6101008a8c0312156112fd575f80fd5b893567ffffffffffffffff80821115611314575f80fd5b6113208d838e0161122c565b9a5061132e60208d0161116c565b995060408c0135985060608c0135975061134a60808d0161116c565b965060a08c013591508082111561135f575f80fd5b5061136c8c828d0161127e565b90955093505060c08a0135611380816112c6565b915061138e60e08b016112d3565b90509295985092959850929598565b5f8083601f8401126113ad575f80fd5b50813567ffffffffffffffff8111156113c4575f80fd5b6020830191508360208285010111156112bf575f80fd5b5f805f805f805f805f806101008b8d0312156113f5575f80fd5b8a3567ffffffffffffffff8082111561140c575f80fd5b6114188e838f0161139d565b909c509a508a915061142c60208e0161116c565b995060408d0135985060608d0135975061144860808e0161116c565b965060a08d013591508082111561145d575f80fd5b5061146a8d828e0161127e565b90955093505060c08b013561147e816112c6565b915061148c60e08c016112d3565b90509295989b9194979a5092959850565b5f602082840312156114ad575f80fd5b5035919050565b5f80604083850312156114c5575f80fd5b823567ffffffffffffffff8111156114db575f80fd5b6114e78582860161122c565b95602094909401359450505050565b5f60208284031215611506575f80fd5b813567ffffffffffffffff81111561151c575f80fd5b6109c18482850161122c565b5f805f6040848603121561153a575f80fd5b833567ffffffffffffffff811115611550575f80fd5b61155c8682870161139d565b909790965060209590950135949350505050565b5f60208284031215611580575f80fd5b610c1b8261116c565b5f60208284031215611599575f80fd5b8151610c1b816112c6565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b5f838385526020808601955060208560051b830101845f5b8781101561165157848303601f19018952813536889003601e19018112611609575f80fd5b8701848101903567ffffffffffffffff811115611624575f80fd5b803603821315611632575f80fd5b61163d8582846115a4565b9a86019a94505050908301906001016115e4565b5090979650505050505050565b8981526001600160a01b03898116602083015260408201899052606082018890528616608082015261010060a082018190525f9061169f83820187896115cc565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610449576104496116c1565b60a081525f6116fb60a08301888a6115a4565b6001600160a01b03968716602084015260408301959095525091909316606082015261ffff90921660809092019190915292915050565b5f60208284031215611742575f80fd5b5051919050565b818382375f9101908152919050565b608081525f61176b6080830187896115a4565b602083019590955250604081019290925260609091015292915050565b81810381811115610449576104496116c1565b5f5b838110156117b557818101518382015260200161179d565b50505f910152565b5f81518084526117d481602086016020860161179b565b601f01601f19169290920160200192915050565b606081525f6117fa60608301866117bd565b60208301949094525060400152919050565b5f6040828403121561181c575f80fd5b6040516040810181811067ffffffffffffffff8211171561183f5761183f6111c0565b604052825181526020928301519281019290925250919050565b606081525f61186c6060830186886115a4565b6020830194909452506040015292915050565b602081525f610c1b60208301846117bd565b838152604060208201525f6118aa6040830184866115cc565b95945050505050565b5f60208083850312156118c4575f80fd5b825167ffffffffffffffff808211156118db575f80fd5b818501915085601f8301126118ee575f80fd5b815181811115611900576119006111c0565b8060051b61190f8582016111d4565b9182528381018501918581019089841115611928575f80fd5b86860192505b8383101561199a57825185811115611944575f80fd5b8601603f81018b13611954575f80fd5b87810151604061196661124983611205565b8281528d82848601011115611979575f80fd5b611988838c830184870161179b565b8552505050918601919086019061192e565b9998505050505050505050565b5f82516119b881846020870161179b565b6305ccae8d60e31b920191825250600401919050565b6001600160a01b0385811682528481166020830152831660408201526080606082018190525f90611a01908301846117bd565b9695505050505050565b634e487b7160e01b5f52603260045260245ffd5b5f60018201611a3057611a306116c1565b506001019056fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x5155f5627bdf9795b3dbb8887001ada1eeba93f2":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063de8f50a11461002d575b5f80fd5b61004761003b3660046100a0565b60019695505050505050565b604051901515815260200160405180910390f35b5f8083601f84011261006b575f80fd5b50813567ffffffffffffffff811115610082575f80fd5b602083019150836020828501011115610099575f80fd5b9250929050565b5f805f805f80606087890312156100b5575f80fd5b863567ffffffffffffffff808211156100cc575f80fd5b6100d88a838b0161005b565b909850965060208901359150808211156100f0575f80fd5b6100fc8a838b0161005b565b90965094506040890135915080821115610114575f80fd5b5061012189828a0161005b565b979a969950949750929593949250505056fea164736f6c6343000818000a","storage":{}},"0x54563a9e1cd2dcbd0bca90d3cfa4a647e02c404a":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106101db575f3560e01c80638da5cb5b116100fd578063c4d66de811610092578063daea85c511610062578063daea85c51461055e578063e7acab241461057d578063f2fde38b1461059c578063ffa1ad74146105bb575f80fd5b8063c4d66de8146104e1578063d539139314610500578063d547741f14610520578063d9caed121461053f575f80fd5b8063a217fddf116100cd578063a217fddf14610452578063a3f4df7e14610465578063a4247400146104a3578063aa271e1a146104c2575f80fd5b80638da5cb5b146103d957806391d1485414610400578063983b2d561461041f578063986502751461043e575f80fd5b80635c975abb11610173578063715018a611610143578063715018a61461037f57806371e2a6571461039357806381c81d35146103b25780638456cb59146103c5575f80fd5b80635c975abb146103165780635fc1964f1461032e578063634486da1461034d5780636ccbae5f14610360575f80fd5b80633092afd5116101ae5780633092afd51461029c57806336568abe146102bb5780633f4ba83a146102da578063572b6c05146102ee575f80fd5b806301ffc9a7146101df5780631bf7e13e14610213578063248a9ca31461023f5780632f2ff15d1461027b575b5f80fd5b3480156101ea575f80fd5b506101fe6101f9366004611ee0565b6105eb565b60405190151581526020015b60405180910390f35b34801561021e575f80fd5b5061023261022d366004611f07565b610621565b60405161020a9190611fe9565b34801561024a575f80fd5b5061026d610259366004611ffb565b5f90815260fb602052604090206001015490565b60405190815260200161020a565b348015610286575f80fd5b5061029a610295366004612036565b6106ea565b005b3480156102a7575f80fd5b5061029a6102b6366004612064565b610713565b3480156102c6575f80fd5b5061029a6102d5366004612036565b610727565b3480156102e5575f80fd5b5061029a6107ba565b3480156102f9575f80fd5b506101fe610308366004612064565b6001600160a01b0316301490565b348015610321575f80fd5b5061012d5460ff166101fe565b348015610339575f80fd5b5061029a6103483660046120eb565b6107d4565b61029a61035b366004612064565b610811565b34801561036b575f80fd5b5061026d61037a366004611ffb565b6108d1565b34801561038a575f80fd5b5061029a61092a565b34801561039e575f80fd5b5061029a6103ad3660046120eb565b61093b565b61029a6103c0366004612064565b610978565b3480156103d0575f80fd5b5061029a6109f5565b3480156103e4575f80fd5b506097546040516001600160a01b03909116815260200161020a565b34801561040b575f80fd5b506101fe61041a366004612036565b610a0d565b34801561042a575f80fd5b5061029a610439366004612064565b610a37565b348015610449575f80fd5b5061029a610a48565b34801561045d575f80fd5b5061026d5f81565b348015610470575f80fd5b506102326040518060400160405280601381526020017229b2b0b837b93a10283937bc3c90213abcb2b960691b81525081565b3480156104ae575f80fd5b506101fe6104bd366004611f07565b610a61565b3480156104cd575f80fd5b506101fe6104dc366004612064565b610ab2565b3480156104ec575f80fd5b5061029a6104fb366004612064565b610aca565b34801561050b575f80fd5b5061026d5f80516020612ea783398151915281565b34801561052b575f80fd5b5061029a61053a366004612036565b610c21565b34801561054a575f80fd5b5061029a61055936600461218b565b610c45565b348015610569575f80fd5b5061029a610578366004612064565b610cf7565b348015610588575f80fd5b506101fe6105973660046121c9565b610dac565b3480156105a7575f80fd5b5061029a6105b6366004612064565b6111db565b3480156105c6575f80fd5b5061023260405180604001604052806005815260200164302e302e3160d81b81525081565b5f6001600160e01b03198216637965db0b60e01b148061061b57506301ffc9a760e01b6001600160e01b03198316145b92915050565b60605f5a9050610632858585610a61565b61064f57604051638baa579f60e01b815260040160405180910390fd5b6106df61065f6020870187612064565b3060408801358461067360608b018b61227b565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f920191909152506111f692505050565b9150505b9392505050565b5f82815260fb6020526040902060010154610704816112d4565b61070e83836112e5565b505050565b61071b61136b565b610724816113e4565b50565b61072f6113fb565b6001600160a01b0316816001600160a01b0316146107ac5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6107b68282611409565b5050565b6107c261136b565b6107ca61148d565b6107d26114d7565b565b6107dc61136b565b5f5b81518110156107b6576108098282815181106107fc576107fc6122bd565b60200260200101516113e4565b6001016107de565b61081c6104dc6113fb565b6108385760405162461bcd60e51b81526004016107a3906122d1565b6001600160a01b03811661088e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016107a3565b61089781611530565b61089f610a48565b6040516001600160a01b038216903480156108fc02915f818181858888f193505050501580156107b6573d5f803e3d5ffd5b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f90610923906060016040516020818303038152906040528051906020012090565b5492915050565b61093261136b565b6107d25f611547565b61094361136b565b5f5b81518110156107b657610970828281518110610963576109636122bd565b6020026020010151611530565b600101610945565b6109836104dc6113fb565b61099f5760405162461bcd60e51b81526004016107a3906122d1565b6001600160a01b0381166108975760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016107a3565b6109fd61136b565b610a05611598565b6107d26115df565b5f91825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610a3f61136b565b61072481611530565b6107d25f80516020612ea78339815191526102d56113fb565b5f610aaa610a6e85612306565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061161e92505050565b949350505050565b5f61061b5f80516020612ea783398151915283610a0d565b5f54610100900460ff1615808015610ae857505f54600160ff909116105b80610b015750303b158015610b0157505f5460ff166001145b610b645760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107a3565b5f805460ff191660011790558015610b85575f805461ff0019166101001790555b61015f80546001600160a01b0319166001600160a01b038416179055610ba9611759565b610bb1611786565b610bb9611786565b610bc1611786565b610bc96117ac565b610bd16117e2565b610bd9611819565b80156107b6575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b5f82815260fb6020526040902060010154610c3b816112d4565b61070e8383611409565b610c4d61136b565b600260335403610c6f5760405162461bcd60e51b81526004016107a3906123c2565b6002603355610c7c611598565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af1158015610cc8573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cec91906123f9565b505060016033555050565b610cff61136b565b600260335403610d215760405162461bcd60e51b81526004016107a3906123c2565b6002603355610d2e611598565b61015f5460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529082169063095ea7b3906044016020604051808303815f875af1158015610d7f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610da391906123f9565b50506001603355565b5f610db86104dc6113fb565b610dd45760405162461bcd60e51b81526004016107a3906122d1565b600260335403610df65760405162461bcd60e51b81526004016107a3906123c2565b6002603355610e03611598565b6001600160a01b038216610e2a576040516311d000e160e31b815260040160405180910390fd5b30610e358780612418565b610e46906040810190602001612064565b6001600160a01b031614610e6d57604051639d3c586b60e01b815260040160405180910390fd5b610e75611e67565b610e7f8780612418565b610e8d906020810190612064565b6001600160a01b03168152610ea28780612418565b610eb3906040810190602001612064565b6001600160a01b03166020820152610ecb8780612418565b610ed9906040810190612437565b808060200260200160405190810160405280939291908181526020015f905b82821015610f2457610f1560a08302860136819003810190612489565b81526020019060010190610ef8565b50505050506040820152610f388780612418565b610f46906060810190612506565b808060200260200160405190810160405280939291908181526020015f905b82821015610f9157610f8260c0830286013681900381019061254a565b81526020019060010190610f65565b50505050506060820152610fa58780612418565b610fb69060a08101906080016125e5565b81608001906004811115610fcc57610fcc6125fe565b90816004811115610fdf57610fdf6125fe565b905250610fec8780612418565b60a090810135908201526110008780612418565b60c090810135908201526110148780612418565b60e090810135908201526110288780612418565b610100908101359082015261103d8780612418565b610120908101359082015261015f54815160405163f07ec37360e01b81526001600160a01b03918216600482015291169063f07ec37390602401602060405180830381865afa158015611092573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110b69190612612565b61014082015261015f546040516379df72bd60e01b8152611133916001600160a01b0316906379df72bd906110ef908590600401612737565b602060405180830381865afa15801561110a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061112e9190612612565b61184c565b61015f546040516339eb2ac960e21b81526001600160a01b039091169063e7acab249061116c908a908a908a908a908a90600401612b24565b6020604051808303815f875af1158015611188573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111ac91906123f9565b9150816111cc57604051636725093760e01b815260040160405180910390fd5b50600160335595945050505050565b6111e361136b565b6111ec81611865565b6107245f826118db565b6060611201856118e5565b5f80876001600160a01b03168661121a8b8a898961194a565b6040516112279190612cfa565b5f604051808303815f8787f1925050503d805f8114611261576040519150601f19603f3d011682016040523d82523d5f602084013e611266565b606091505b509092509050611277603f87612d1f565b5a1161128557611285612d3e565b6112c582826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061197a565b925050505b9695505050505050565b610724816112e06113fb565b6119b3565b6112ef8282610a0d565b6107b6575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191660011790556113276113fb565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6113736113fb565b6001600160a01b031661138e6097546001600160a01b031690565b6001600160a01b0316146107d25760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107a3565b6107245f80516020612ea783398151915282610c21565b5f611404611a17565b905090565b6114138282610a0d565b156107b6575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191690556114496113fb565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b61012d5460ff166107d25760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b60448201526064016107a3565b6114df61148d565b61012d805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6115136113fb565b6040516001600160a01b03909116815260200160405180910390a1565b6107245f80516020612ea7833981519152826118db565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b61012d5460ff16156107d25760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b60448201526064016107a3565b6115e7611598565b61012d805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586115136113fb565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015611662573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116869190612612565b90505f6117338660600151805190602001208688602001516040516020016116d39392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156112ca575085516112ca906001600160a01b03168286611a34565b5f54610100900460ff1661177f5760405162461bcd60e51b81526004016107a390612d52565b6001603355565b5f54610100900460ff166107d25760405162461bcd60e51b81526004016107a390612d52565b5f54610100900460ff166117d25760405162461bcd60e51b81526004016107a390612d52565b6107d26117dd6113fb565b611547565b5f54610100900460ff166118085760405162461bcd60e51b81526004016107a390612d52565b6107d25f6118146113fb565b6118db565b5f54610100900460ff1661183f5760405162461bcd60e51b81526004016107a390612d52565b61012d805460ff19169055565b30330361185c5761072481611b6f565b610724816118e5565b61186d61136b565b6001600160a01b0381166118d25760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107a3565b61072481611547565b6107b682826112e5565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f906060016040516020818303038152906040528051906020012090506119398190565b54611945906001612d9d565b905550565b606082858560405160200161196193929190612db0565b6040516020818303038152906040529050949350505050565b606083156119895750816106e3565b8251156119995782518084602001fd5b8160405162461bcd60e51b81526004016107a39190611fe9565b6119bd8282610a0d565b6107b6576119d5816001600160a01b03166014611b99565b6119e0836020611b99565b6040516020016119f1929190612dee565b60408051601f198184030181529082905262461bcd60e51b82526107a391600401611fe9565b5f303303611a2c575060331936013560601c90565b503390565b90565b5f805f611a418585611d2e565b90925090505f816004811115611a5957611a596125fe565b148015611a775750856001600160a01b0316826001600160a01b0316145b15611a87576001925050506106e3565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401611aae929190612e62565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051611aec9190612cfa565b5f60405180830381855afa9150503d805f8114611b24576040519150601f19603f3d011682016040523d82523d5f602084013e611b29565b606091505b5091509150818015611b3c575080516020145b8015611b6357508051630b135d3f60e11b90611b619083016020908101908401612612565b145b98975050505050505050565b611b77611d70565b811461072457604051635637b6af60e11b8152600481018290526024016107a3565b60605f611ba7836002612e7a565b611bb2906002612d9d565b6001600160401b03811115611bc957611bc961207f565b6040519080825280601f01601f191660200182016040528015611bf3576020820181803683370190505b509050600360fc1b815f81518110611c0d57611c0d6122bd565b60200101906001600160f81b03191690815f1a905350600f60fb1b81600181518110611c3b57611c3b6122bd565b60200101906001600160f81b03191690815f1a9053505f611c5d846002612e7a565b611c68906001612d9d565b90505b6001811115611cdf576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611c9c57611c9c6122bd565b1a60f81b828281518110611cb257611cb26122bd565b60200101906001600160f81b03191690815f1a90535060049490941c93611cd881612e91565b9050611c6b565b5083156106e35760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016107a3565b5f808251604103611d62576020830151604084015160608501515f1a611d5687828585611d82565b94509450505050611d69565b505f905060025b9250929050565b5f303303611a315750601f1936013590565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115611db757505f90506003611e5e565b8460ff16601b14158015611dcf57508460ff16601c14155b15611ddf57505f90506004611e5e565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015611e30573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b038116611e58575f60019250925050611e5e565b91505f90505b94509492505050565b6040518061016001604052805f6001600160a01b031681526020015f6001600160a01b0316815260200160608152602001606081526020015f6004811115611eb157611eb16125fe565b81525f6020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b5f60208284031215611ef0575f80fd5b81356001600160e01b0319811681146106e3575f80fd5b5f805f60408486031215611f19575f80fd5b83356001600160401b0380821115611f2f575f80fd5b9085019060808288031215611f42575f80fd5b90935060208501359080821115611f57575f80fd5b818601915086601f830112611f6a575f80fd5b813581811115611f78575f80fd5b876020828501011115611f89575f80fd5b6020830194508093505050509250925092565b5f5b83811015611fb6578181015183820152602001611f9e565b50505f910152565b5f8151808452611fd5816020860160208601611f9c565b601f01601f19169290920160200192915050565b602081525f6106e36020830184611fbe565b5f6020828403121561200b575f80fd5b5035919050565b6001600160a01b0381168114610724575f80fd5b803561203181612012565b919050565b5f8060408385031215612047575f80fd5b82359150602083013561205981612012565b809150509250929050565b5f60208284031215612074575f80fd5b81356106e381612012565b634e487b7160e01b5f52604160045260245ffd5b604051608081016001600160401b03811182821017156120b5576120b561207f565b60405290565b604051601f8201601f191681016001600160401b03811182821017156120e3576120e361207f565b604052919050565b5f60208083850312156120fc575f80fd5b82356001600160401b0380821115612112575f80fd5b818501915085601f830112612125575f80fd5b8135818111156121375761213761207f565b8060051b91506121488483016120bb565b8181529183018401918481019088841115612161575f80fd5b938501935b83851015611b63578435925061217b83612012565b8282529385019390850190612166565b5f805f6060848603121561219d575f80fd5b83356121a881612012565b925060208401356121b881612012565b929592945050506040919091013590565b5f805f805f608086880312156121dd575f80fd5b85356001600160401b03808211156121f3575f80fd5b9087019060a0828a031215612206575f80fd5b9095506020870135908082111561221b575f80fd5b818801915088601f83011261222e575f80fd5b81358181111561223c575f80fd5b8960208260051b8501011115612250575f80fd5b6020830196508095505050506040860135915061226f60608701612026565b90509295509295909350565b5f808335601e19843603018112612290575f80fd5b8301803591506001600160401b038211156122a9575f80fd5b602001915036819003821315611d69575f80fd5b634e487b7160e01b5f52603260045260245ffd5b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b5f60808236031215612316575f80fd5b61231e612093565b823561232981612012565b8152602083810135818301526040808501359083015260608401356001600160401b0380821115612358575f80fd5b9085019036601f83011261236a575f80fd5b81358181111561237c5761237c61207f565b61238e601f8201601f191685016120bb565b915080825236848285010111156123a3575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b5f60208284031215612409575f80fd5b815180151581146106e3575f80fd5b5f823561015e1983360301811261242d575f80fd5b9190910192915050565b5f808335601e1984360301811261244c575f80fd5b8301803591506001600160401b03821115612465575f80fd5b602001915060a081023603821315611d69575f80fd5b803560068110612031575f80fd5b5f60a08284031215612499575f80fd5b60405160a081018181106001600160401b03821117156124bb576124bb61207f565b6040526124c78361247b565b815260208301356124d781612012565b806020830152506040830135604082015260608301356060820152608083013560808201528091505092915050565b5f808335601e1984360301811261251b575f80fd5b8301803591506001600160401b03821115612534575f80fd5b602001915060c081023603821315611d69575f80fd5b5f60c0828403121561255a575f80fd5b60405160c081018181106001600160401b038211171561257c5761257c61207f565b6040526125888361247b565b8152602083013561259881612012565b8060208301525060408301356040820152606083013560608201526080830135608082015260a08301356125cb81612012565b60a08201529392505050565b803560058110612031575f80fd5b5f602082840312156125f5575f80fd5b6106e3826125d7565b634e487b7160e01b5f52602160045260245ffd5b5f60208284031215612622575f80fd5b5051919050565b60068110612639576126396125fe565b9052565b5f815180845260208085019450602084015f5b838110156126a6578151612665888251612629565b838101516001600160a01b03168885015260408082015190890152606080820151908901526080908101519088015260a09096019590820190600101612650565b509495945050505050565b5f815180845260208085019450602084015f5b838110156126a65781516126d9888251612629565b808401516001600160a01b0390811689860152604080830151908a0152606080830151908a0152608080830151908a015260a091820151169088015260c090960195908201906001016126c4565b60058110612639576126396125fe565b602081526127516020820183516001600160a01b03169052565b5f602083015161276c60408401826001600160a01b03169052565b50604083015161016080606085015261278961018085018361263d565b91506060850151601f198584030160808601526127a683826126b1565b92505060808501516127bb60a0860182612727565b5060a085015160c085015260c085015160e085015260e0850151610100818187015280870151915050610120818187015280870151915050610140818187015280870151838701525050508091505092915050565b5f808335601e19843603018112612825575f80fd5b83016020810192503590506001600160401b03811115612843575f80fd5b60a081023603821315611d69575f80fd5b8183525f60208085019450825f5b858110156126a65761287c876128778461247b565b612629565b8282013561288981612012565b6001600160a01b03168388015260408281013590880152606080830135908801526080808301359088015260a09687019690910190600101612862565b5f808335601e198436030181126128db575f80fd5b83016020810192503590506001600160401b038111156128f9575f80fd5b60c081023603821315611d69575f80fd5b8183525f60208085019450825f5b858110156126a65761292d876128778461247b565b8282013561293a81612012565b6001600160a01b039081168885015260408381013590890152606080840135908901526080808401359089015260a0908382013561297781612012565b169088015260c0968701969190910190600101612918565b80356001600160781b0381168114612031575f80fd5b5f808335601e198436030181126129ba575f80fd5b83016020810192503590506001600160401b038111156129d8575f80fd5b803603821315611d69575f80fd5b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b8183525f6001600160fb1b03831115612a25575f80fd5b8260051b80836020870137939093016020019392505050565b8183526020808401935f91600585811b8301820185855b88811015612b1657858303601f19018a52813536899003609e19018112612a7a575f80fd5b88018035845260a08682013560028110612a92575f80fd5b85880152604082810135908601526060808301359086015260808083013536849003601e19018112612ac2575f80fd5b9092018781019290356001600160401b03811115612ade575f80fd5b80881b3603841315612aee575f80fd5b8282880152612b008388018286612a0e565b9d89019d96505050928601925050600101612a55565b509098975050505050505050565b608081525f610120873561015e19893603018112612b40575f80fd5b60a060808501528801612b65828501612b5883612026565b6001600160a01b03169052565b612b7160208201612026565b610140612b88818701836001600160a01b03169052565b612b956040840184612810565b610160888101529250612bad61028088018483612854565b925050612bbd60608401846128c6565b87840361011f1901610180890152612bd684828461290a565b93505050612be6608084016125d7565b612bf46101a0880182612727565b5060a08301356101c087015260c08301356101e087015260e0830135610200870152610100808401356102208801528484013561024088015281840135610260880152612c4360208d0161298f565b6001600160781b03811660a08901529450612c6060408d0161298f565b6001600160781b03811660c08901529450612c7e60608d018d6129a5565b95509350607f199150818784030160e0880152612c9c8386866129e6565b9450612cab60808d018d6129a5565b945092508187860301818801525050612cc58383836129e6565b925050508281036020840152612cdc818789612a3e565b9150508360408301526112ca60608301846001600160a01b03169052565b5f825161242d818460208701611f9c565b634e487b7160e01b5f52601160045260245ffd5b5f82612d3957634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b8082018082111561061b5761061b612d0b565b5f8451612dc1818460208901611f9c565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081525f8351612e25816017850160208801611f9c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351612e56816028840160208801611f9c565b01602801949350505050565b828152604060208201525f610aaa6040830184611fbe565b808202811582820484141761061b5761061b612d0b565b5f81612e9f57612e9f612d0b565b505f19019056fe9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000818000a","storage":{"0x0":"0xff"}},"0x58a175bebc8ec21a94ea63aa5a28743945940ee6":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106101165760003560e01c806391d14854116100a2578063c4d66de811610071578063c4d66de8146103bb578063ca15c873146103e1578063d547741f146103fe578063e375b64e1461042a578063ec87621c146104b957610116565b806391d14854146103635780639559c0bd146103a3578063a217fddf146103ab578063b017a30f146103b357610116565b80634794b430116100e95780634794b4301461024f57806349f5124b14610257578063609c92b81461025f5780638274664f146102675780639010d07c1461032457610116565b8063150b7a021461011b578063248a9ca3146101c65780632f2ff15d146101f557806336568abe14610223575b600080fd5b6101a96004803603608081101561013157600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561016b57600080fd5b82018360208201111561017d57600080fd5b803590602001918460018302840111600160201b8311171561019e57600080fd5b5090925090506104c1565b604080516001600160e01b03199092168252519081900360200190f35b6101e3600480360360208110156101dc57600080fd5b50356104d2565b60408051918252519081900360200190f35b6102216004803603604081101561020b57600080fd5b50803590602001356001600160a01b03166104ea565b005b6102216004803603604081101561023957600080fd5b50803590602001356001600160a01b0316610556565b6101e36105b7565b6101e36105db565b6101e36105ff565b6102216004803603606081101561027d57600080fd5b6001600160a01b038235811692602081013590911691810190606081016040820135600160201b8111156102b057600080fd5b8201836020820111156102c257600080fd5b803590602001918460018302840111600160201b831117156102e357600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610623945050505050565b6103476004803603604081101561033a57600080fd5b5080359060200135610fa2565b604080516001600160a01b039092168252519081900360200190f35b61038f6004803603604081101561037957600080fd5b50803590602001356001600160a01b0316610fc9565b604080519115158252519081900360200190f35b6101e3610fe7565b6101e3610fec565b6101e3610ff1565b610221600480360360208110156103d157600080fd5b50356001600160a01b0316611015565b6101e3600480360360208110156103f757600080fd5b50356110cf565b6102216004803603604081101561041457600080fd5b50803590602001356001600160a01b03166110e6565b6102216004803603608081101561044057600080fd5b6001600160a01b0382358116926020810135821692604082013590921691810190608081016060820135600160201b81111561047b57600080fd5b82018360208201111561048d57600080fd5b803590602001918460018302840111600160201b831117156104ae57600080fd5b50909250905061113f565b6101e36114e6565b630a85bd0160e11b95945050505050565b6000818152602081905260409020600201545b919050565b60008281526020819052604090206002015461050d906105086114f8565b610fc9565b6105485760405162461bcd60e51b815260040180806020018281038252602f815260200180611f42602f913960400191505060405180910390fd5b61055282826114fd565b5050565b61055e6114f8565b6001600160a01b0316816001600160a01b0316146105ad5760405162461bcd60e51b815260040180806020018281038252602f8152602001806120bb602f913960400191505060405180910390fd5b610552828261156c565b7ff871896b17e9cb7a64941c62c188a4f5c621b86800e3d15452ece01ce56073df81565b7ff94915c6d1fd521cee85359239227480c7e8776d7caf1fc3bacad5c269b66a1481565b7fd4392723c111fcb98b073fe55873efb447bcd23cd3e49ec9ea2581930cd01ddc81565b60008051602061204b83398151915261063e816105086114f8565b6001906106de5760405162461bcd60e51b81526020600482019081528254600260001961010060018416150201909116046024830181905290918291604490910190849080156106cf5780601f106106a4576101008083540402835291602001916106cf565b820191906000526020600020905b8154815290600101906020018083116106b257829003601f168201915b50509250505060405180910390fd5b5060606106f26106ed846115db565b611656565b905060606107138260018151811061070657fe5b6020026020010151611656565b90507fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60001b6107568260008151811061074957fe5b60200260200101516117d8565b141561095457600061076e8260018151811061074957fe5b905060006001600160a01b031661078b8360028151811061074957fe5b6001600160a01b0316146107d05760405162461bcd60e51b815260040180806020018281038252602981526020018061206b6029913960400191505060405180910390fd5b600086905060006107e78460038151811061074957fe5b9050816001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b15801561082d57600080fd5b505afa158015610841573d6000803e3d6000fd5b505050506040513d602081101561085757600080fd5b5051156108d35760408051632142170760e11b81523060048201526001600160a01b038581166024830152604482018490529151918416916342842e0e9160648082019260009290919082900301818387803b1580156108b657600080fd5b505af11580156108ca573d6000803e3d6000fd5b5050505061094c565b816001600160a01b03166340c10f1984836040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b15801561093357600080fd5b505af1158015610947573d6000803e3d6000fd5b505050505b505050610f9a565b7ff871896b17e9cb7a64941c62c188a4f5c621b86800e3d15452ece01ce56073df60001b6109888260008151811061074957fe5b1415610c085760006109a08260018151811061074957fe5b905060606109c1846002815181106109b457fe5b6020026020010151611920565b905060608180602001905160208110156109da57600080fd5b8101908080516040519392919084600160201b8211156109f957600080fd5b908301906020820185811115610a0e57600080fd5b82518660208202830111600160201b82111715610a2a57600080fd5b82525081516020918201928201910280838360005b83811015610a57578181015183820152602001610a3f565b5050505091909101604052505082519293508a9150600090505b82811015610bfd576000848281518110610a8757fe5b60200260200101519050826001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610ad557600080fd5b505afa158015610ae9573d6000803e3d6000fd5b505050506040513d6020811015610aff57600080fd5b505115610b7b5760408051632142170760e11b81523060048201526001600160a01b038981166024830152604482018490529151918516916342842e0e9160648082019260009290919082900301818387803b158015610b5e57600080fd5b505af1158015610b72573d6000803e3d6000fd5b50505050610bf4565b826001600160a01b03166340c10f1988836040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b158015610bdb57600080fd5b505af1158015610bef573d6000803e3d6000fd5b505050505b50600101610a71565b505050505050610f9a565b7ff94915c6d1fd521cee85359239227480c7e8776d7caf1fc3bacad5c269b66a1460001b610c3c8260008151811061074957fe5b1415610f63576000610c548260018151811061074957fe5b905060006001600160a01b0316610c718360028151811061074957fe5b6001600160a01b031614610cb65760405162461bcd60e51b815260040180806020018281038252602981526020018061206b6029913960400191505060405180910390fd5b60008690506000610ccd8460038151811061074957fe5b9050816001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610d1357600080fd5b505afa158015610d27573d6000803e3d6000fd5b505050506040513d6020811015610d3d57600080fd5b505115610d9c5760408051632142170760e11b81523060048201526001600160a01b038581166024830152604482018490529151918416916342842e0e9160648082019260009290919082900301818387803b1580156108b657600080fd5b6060610dae866002815181106109b457fe5b90506060818060200190516020811015610dc757600080fd5b8101908080516040519392919084600160201b821115610de657600080fd5b908301906020820185811115610dfb57600080fd5b8251600160201b811182820188101715610e1457600080fd5b82525081516020918201929091019080838360005b83811015610e41578181015183820152602001610e29565b50505050905090810190601f168015610e6e5780820380516001836020036101000a031916815260200191505b506040525050509050836001600160a01b03166394d008ef8685846040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b0316815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610ef3578181015183820152602001610edb565b50505050905090810190601f168015610f205780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015610f4157600080fd5b505af1158015610f55573d6000803e3d6000fd5b505050505050505050610f9a565b60405162461bcd60e51b815260040180806020018281038252602a815260200180611f71602a913960400191505060405180910390fd5b505050505050565b6000828152602081905260408120610fc0908363ffffffff6119ea16565b90505b92915050565b6000828152602081905260408120610fc0908363ffffffff6119f616565b601481565b600081565b7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef81565b60025460ff161561105e576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b61109c6040518060400160405280601781526020017f4d696e7461626c65455243373231507265646963617465000000000000000000815250611a0b565b6110a7600082610548565b6110bf60008051602061204b83398151915282610548565b506002805460ff19166001179055565b6000818152602081905260408120610fc390611aa9565b600082815260208190526040902060020154611104906105086114f8565b6105ad5760405162461bcd60e51b8152600401808060200182810382526030815260200180611fc36030913960400191505060405180910390fd5b60008051602061204b83398151915261115a816105086114f8565b6001906111c05760405162461bcd60e51b81526020600482019081528254600260001961010060018416150201909116046024830181905290918291604490910190849080156106cf5780601f106106a4576101008083540402835291602001916106cf565b50602082141561129f576000838360208110156111dc57600080fd5b5060408051913580835290519092506001600160a01b038088169289821692918b16917fe13244aa06bdc79480ed5fdc6ebe2bb37202fcdf33ecf45dc449f4201f3dc0879181900360200190a460408051632142170760e11b81526001600160a01b038981166004830152306024830152604482018490529151918716916342842e0e9160648082019260009290919082900301818387803b15801561128157600080fd5b505af1158015611295573d6000803e3d6000fd5b5050505050610f9a565b6060838360208110156112b157600080fd5b810190602081018135600160201b8111156112cb57600080fd5b8201836020820111156112dd57600080fd5b803590602001918460208302840111600160201b831117156112fe57600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f8201169050808301925050505050505091929192905050509050846001600160a01b0316866001600160a01b0316886001600160a01b03167fdb55e3a0ae817693fd7b07170d81eab0eb2c239f36fcecbc98b6b58ac5667e7a846040518080602001828103825283818151815260200191508051906020019060200280838360005b838110156113ca5781810151838201526020016113b2565b505050509050019250505060405180910390a48051601481111561141f5760405162461bcd60e51b815260040180806020018281038252602c81526020018061201f602c913960400191505060405180910390fd5b60005b818110156114db57866001600160a01b03166342842e0e8a3086858151811061144757fe5b60200260200101516040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050600060405180830381600087803b1580156114b757600080fd5b505af11580156114cb573d6000803e3d6000fd5b5050600190920191506114229050565b505050505050505050565b60008051602061204b83398151915281565b335b90565b600082815260208190526040902061151b908263ffffffff611ab416565b15610552576115286114f8565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b600082815260208190526040902061158a908263ffffffff611ac916565b15610552576115976114f8565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b6115e3611e6d565b6000825111611639576040805162461bcd60e51b815260206004820152601f60248201527f524c505265616465723a20494e56414c49445f42595445535f4c454e47544800604482015290519081900360640190fd5b506040805180820190915281518152602082810190820152919050565b606061166182611ade565b6116b2576040805162461bcd60e51b815260206004820152601860248201527f524c505265616465723a204954454d5f4e4f545f4c4953540000000000000000604482015290519081900360640190fd5b60006116bd83611b0a565b905060608167ffffffffffffffff811180156116d857600080fd5b5060405190808252806020026020018201604052801561171257816020015b6116ff611e6d565b8152602001906001900390816116f75790505b50905060006117248560200151611b96565b855190915081146117665760405162461bcd60e51b81526004018080602001828103825260278152602001806120946027913960400191505060405180910390fd5b60006117758660200151611c2f565b60208701510190506000805b858110156117cc5761179283611b96565b91506040518060400160405280838152602001848152508582815181106117b557fe5b602090810291909101015291810191600101611781565b50929695505050505050565b60006117e382611ade565b15611835576040805162461bcd60e51b815260206004820181905260248201527f524c505265616465723a204445434f44494e475f4c4953545f41535f55494e54604482015290519081900360640190fd5b81516021101561188c576040805162461bcd60e51b815260206004820152601e60248201527f524c505265616465723a20494e56414c49445f55494e545f4c454e4754480000604482015290519081900360640190fd5b600061189b8360200151611b96565b835190915081146118dd5760405162461bcd60e51b81526004018080602001828103825260278152602001806120ea6027913960400191505060405180910390fd5b60006118ec8460200151611c2f565b8451602080870151830180519394509184900392919083101561191657826020036101000a820491505b5095945050505050565b606060006119318360200151611b96565b835190915081146119735760405162461bcd60e51b8152600401808060200182810382526028815260200180611f9b6028913960400191505060405180910390fd5b60006119828460200151611c2f565b845190915081900360608167ffffffffffffffff811180156119a357600080fd5b506040519080825280601f01601f1916602001820160405280156119ce576020820181803683370190505b5090506000816020019050611916848860200151018285611c92565b6000610fc08383611cdd565b6000610fc0836001600160a01b038416611d41565b806040516020018082805190602001908083835b60208310611a3e5780518252601f199092019160209182019101611a1f565b51815160209384036101000a60001901801990921691161790527f3a20494e53554646494349454e545f5045524d495353494f4e530000000000009190930190815260408051808303600519018152601a909201905280516105529550600194509201919050611e87565b6000610fc382611d59565b6000610fc0836001600160a01b038416611d5d565b6000610fc0836001600160a01b038416611da7565b6020810151805160009190821a9060c0821015611b00576000925050506104e5565b5060019392505050565b600080600090506000611b208460200151611c2f565b602085015185519181019250015b80821015611b8d57611b3f82611b96565b8201915080821115611b825760405162461bcd60e51b815260040180806020018281038252602c815260200180611ff3602c913960400191505060405180910390fd5b600190920191611b2e565b50909392505050565b80516000908190811a6080811015611bb15760019150611c28565b60b8811015611bc657607e1981019150611c28565b60c0811015611bf35760b78103600185019450806020036101000a85510460018201810193505050611c28565b60f8811015611c085760be1981019150611c28565b60f78103600185019450806020036101000a855104600182018101935050505b5092915050565b8051600090811a6080811015611c495760009150506104e5565b60b8811080611c64575060c08110801590611c64575060f881105b15611c735760019150506104e5565b60c0811015611c875760b5190190506104e5565b60f5190190506104e5565b80611c9c57611cd8565b5b60208110611cbc578251825260209283019290910190601f1901611c9d565b8251825160208390036101000a60001901801990921691161782525b505050565b81546000908210611d1f5760405162461bcd60e51b8152600401808060200182810382526022815260200180611f206022913960400191505060405180910390fd5b826000018281548110611d2e57fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000611d698383611d41565b611d9f57508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610fc3565b506000610fc3565b60008181526001830160205260408120548015611e635783546000198083019190810190600090879083908110611dda57fe5b9060005260206000200154905080876000018481548110611df757fe5b600091825260208083209091019290925582815260018981019092526040902090840190558654879080611e2757fe5b60019003818190600052602060002001600090559055866001016000878152602001908152602001600020600090556001945050505050610fc3565b6000915050610fc3565b604051806040016040528060008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611ec857805160ff1916838001178555611ef5565b82800160010185558215611ef5579182015b82811115611ef5578251825591602001919060010190611eda565b50611f01929150611f05565b5090565b6114fa91905b80821115611f015760008155600101611f0b56fe456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e744d696e7461626c654552433732315072656469636174653a20494e56414c49445f5349474e4154555245524c505265616465723a2042595445535f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b65524c505265616465723a204e554d5f4954454d535f4445434f4445445f4c454e4754485f4d49534d415443484d696e7461626c654552433732315072656469636174653a20455843454544535f42415443485f4c494d4954241ecf16d79d0f8dbfb92cbc07fe17840425976cf0667f022fe9877caa831b084d696e7461626c654552433732315072656469636174653a20494e56414c49445f5245434549564552524c505265616465723a204c4953545f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66524c505265616465723a2055494e545f4445434f4445445f4c454e4754485f4d49534d41544348a164736f6c6343000606000a","storage":{"0x1":"0x63","0x2":"0x1","0x73d5d1a274bdea1400ad3ea4d982f594abdfd528cde1486b6c617faa3ec116":"0x1","0x89011777cfe6194dd982545e7eb24725dfe9a1aacae299c76fc48ef5017ae650":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x89011777cfe6194dd982545e7eb24725dfe9a1aacae299c76fc48ef5017ae651":"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0x1","0xb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6":"0x4d696e7461626c654552433732315072656469636174653a20494e5355464649","0xb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf7":"0x4349454e545f5045524d495353494f4e53000000000000000000000000000000","0xba75a66b8132bebab85d36fd3638083da57ae3d78fbcd8cc41f73514287dadaf":"0x1","0xe6c7d8231a06d7cb67831aeabcbd43ba24e5e4c6569cf23405f1e558de8580e0":"0x2","0xe84508f2c7fa9c351146748b3025cb78b45df37d868e48c6a75102fecdeee645":"0x2","0xe84508f2c7fa9c351146748b3025cb78b45df37d868e48c6a75102fecdeee647":"0x0","0xf0df3dcda05b4fbd9c655cde3d5ceb211e019e72ec816e127a59e7195f2cd7f5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x5cc819c9915eadfcebd76952b8c1bc36cadd7376":{"nonce":2,"balance":"0x0","code":"0x608060405260043610610103575f3560e01c8063a900866b11610092578063f07ec37311610062578063f07ec373146102f7578063f2d12b1214610316578063f47b774014610329578063fb0f3ee114610116578063fd9f1e101461034c575f80fd5b8063a900866b1461028a578063b3a34c4c146102be578063e7acab24146102d1578063ed98a574146102e4575f80fd5b80637423eb3c116100d85780637423eb3c146101f757806379df72bd1461020b57806387201b411461022a578063881477321461024b578063a81744041461026a575f80fd5b801561011657806306fdde031461013e57806346423aa71461015f5780635b34b966146101d5575f80fd5b366101125761011061036b565b005b5f80fd5b610129610124366004615115565b6103f9565b60405190151581526020015b60405180910390f35b348015610149575f80fd5b50610152610408565b604051610135919061518f565b34801561016a575f80fd5b506101b36101793660046151a1565b5f9081526001602052604090205460ff808216926101008304909116916001600160781b03620100008204811692600160881b9092041690565b6040805194151585529215156020850152918301526060820152608001610135565b3480156101e0575f80fd5b506101e9610417565b604051908152602001610135565b348015610202575f80fd5b50610110610420565b348015610216575f80fd5b506101e96102253660046151b8565b6104c1565b61023d61023836600461524c565b6104f8565b6040516101359291906153f0565b348015610256575f80fd5b5061012961026536600461543f565b610571565b61027d61027836600461547d565b61058f565b60405161013591906154e3565b348015610295575f80fd5b506101e96102a43660046154f5565b6001600160a01b03165f9081526002602052604090205490565b6101296102cc36600461550e565b61062a565b6101296102df366004615553565b6106a3565b61023d6102f23660046155d7565b6106e1565b348015610302575f80fd5b506101e96103113660046154f5565b610784565b61027d610324366004615677565b6107a1565b348015610334575f80fd5b5061033d6107ea565b60405161013593929190615719565b348015610357575f80fd5b5061012961036636600461543f565b610801565b7f000000000000000000000000000000000000000000000000000000000000000180156103b357600263929eee145c146103b05763a61be9f05f52346020526024601cfd5b50565b63929eee1454806103e057600263929eee145c146103dc5763a61be9f05f52346020526024601cfd5b5050565b600381146103dc5763a61be9f05f52346020526024601cfd5b5f61040261080c565b92915050565b60606104126109c0565b905090565b5f6104126109d8565b63929eee14546001147f000000000000000000000000000000000000000000000000000000000000000180610453575080155b1561047157604051630f45b98b60e41b815260040160405180910390fd5b61049a7f000000000000000000000000145908bbcfc7b258e4d4d9a586f6e3249ae80216610a45565b6104b7576040516370a4078f60e01b815260040160405180910390fd5b5f63929eee145550565b5f806104cd6004610aa3565b90506104f16104e282610ab35b63ffffffff16565b610140830135610b30565b3590565b9392505050565b60608061055d61051361050b6004610aa3565b610c746104da565b61052a61052260046020610cdc565b610cfa6104da565b61054161053960046040610cdc565b610d526104da565b61055061053960046060610cdc565b89338a15028a0189610daa565b915091509b509b9950505050505050505050565b5f6104f161058a6105826004610aa3565b610de46104da565b610e3c565b606061061f6105a96105a16004610aa3565b610f5d6104da565b604080515f8082526020820190925290610601565b6105ee6040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816105be5790505b5061061961061160046020610cdc565b610fb56104da565b3361100d565b90505b949350505050565b5f6104f161064361063b6004610aa3565b61104b6104da565b604080515f808252602082019092529061069b565b6106886040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816106585790505b5084336110c1565b5f6106d76106bc6106b46004610aa3565b6112406104da565b6106cb61052260046020610cdc565b853386150286016110c1565b9695505050505050565b6060806107736106f46105a16004610aa3565b604080515f808252602082019092529061074c565b6107396040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816107095790505b5061075c61053960046020610cdc565b61076b61053960046040610cdc565b883389610daa565b915091509850989650505050505050565b6001600160a01b0381165f90815260208190526040812054610402565b60606107dc6107b361050b6004610aa3565b6107c261052260046020610cdc565b6107d161061160046040610cdc565b33861502860161100d565b90505b979650505050505050565b60605f806107f661129c565b925092509250909192565b5f6104f183836112e8565b5f61012435600281901c90600316600182118334158214806108315761083134611423565b506003841160a0810260240135906502030203010160d01b861a905f630101020360d01b881a6108648882898888611434565b9096509150506101c4600583901b01355f87600581111561088757610887615329565b036108bc5760443560243517156108a557636ab37ce75f526004601cfd5b6108af8482611751565b6108b7611809565b61099d565b6040805160208082528183019092525f9160208201818036833701905050905060028a60058111156108f0576108f0615329565b036109135761090e60c4356084353360e435610104355b8787611889565b610988565b60038a600581111561092757610927615329565b036109455761090e60c4356084353360e435610104355b87876118d4565b60048a600581111561095957610959615329565b036109735761090e60243533608435604435606435610907565b6109886024353360843560443560643561093e565b610992848261190a565b61099b816119c4565b505b6109a88689846119e8565b6109b0611a5e565b6001995050505050505050505090565b6060602080526707536561706f727460475260606020f35b5f6109e1611ab1565b600143034060801c335f525f60205260405f208054820192508281555050336001600160a01b03167f721c20121297512b72821b97f5326877ea8ecf4bb9948fea5bfcb6453074d37f82604051610a3a91815260200190565b60405180910390a290565b5f816001600160a01b0316600a5a610a5d9190615773565b6040515f8181818686fa925050503d805f8114610a95576040519150601f19603f3d011682016040523d82523d5f602084013e610a9a565b606091505b50909392505050565b5f813563ffffffff168201610402565b5f610ac661016060408051918201905290565b9050610ad58282610140611b28565b610af2610aeb610ae6846040610cdc565b611b31565b6040830152565b5f610b06610b01846060610cdc565b611b84565b9050610b13816060840152565b610b26610b1e825190565b610140840152565b50919050565b0190565b610140820151604080519084015180515f939284927fa66999307ad1bb4fde44d13a5d710bd7718e0c87c1eef68a571629fbf5b93d0292602090910190845b81811015610b9c578251601f1901805186825260c082208652905260209384019390920191600101610b6f565b508060051b6040512094505050505f7f42d81c6929ffdc4eb27a0808e40e82516ad42296c166065de7f812492304ff6e915060405160206060890151015f5b86811015610c08578151601f1901805186825260e082208552905260209283019290910190600101610bdb565b505060408051600587901b9020601f198a0180517ffa445660b7e21515a59617fcd68910b487aa5808b8abda3d78bc85df364b2c2f8252928b01805197815260608c018051938152610140909c019a8b5261018082209390915295909552939097525050925250919050565b5f8063ffffffff8335169050600581901b610c986020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610cca610cc4610cbf8484610cdc565b611240565b82850152565b602001610ca7565b5050505050919050565b5f6104f163ffffffff610cf46104ed8686610b2c8516565b16840190565b5f8063ffffffff8335169050600581901b610d1e6020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610d4a610cc4610d458484610cdc565b611bc7565b602001610d2d565b5f8063ffffffff8335169050600581901b610d766020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610da2610cc4610d9d8484610cdc565b611c09565b602001610d85565b60608036155f80610dbe8c8c85898b611c4c565b91509150610dd18c8b8b8b8b8787612029565b9450945050505097509795505050505050565b5f8063ffffffff8335169050600581901b610e086020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610e34610cc4610e2f8484610cdc565b61215b565b602001610e17565b5f610e45611ab1565b5f805f80855190505f5b81811015610f50575f878281518110610e6a57610e6a615792565b60209081029190910101518051909150600481608001516004811115610e9257610e92615329565b03610e9e575050610f48565b80519450610eab8161219e565b5f8181526001602052604081209850909650610ecd90879089903615156121d7565b50865460ff16610f455780610140015181606001515114610ef057610ef0612265565b610eff85878460200151612272565b865460ff191660011787556040517ff280791efe782edcf06ce15c8f4dff17601db3b88eb3805a0db7d77faf757f0490610f3c9088908490615895565b60405180910390a15b50505b600101610e4f565b5060019695505050505050565b5f8063ffffffff8335169050600581901b610f816020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610fad610cc4610fa88484610cdc565b61104b565b602001610f90565b5f8063ffffffff8335169050600581901b610fd96020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257611005610cc46110008484610cdc565b61230e565b602001610fe8565b60605f36151590505f806110258888858b5189611c4c565b9150915061103282612341565b61103f8887848885612380565b98975050505050505050565b5f61105e61020060408051918201905290565b60a0810180825290915061107a61107484610aa3565b82612453565b61108660016020840152565b61109260016040840152565b6110af6110a86110a3856020610cdc565b612489565b6060840152565b610b266110ba6124b1565b6080840152565b835160808101515f91906110e860048260048111156110e2576110e2615329565b146124cb565b5f80806110f78a36151561256c565b60408051600180825281830190925293965091945092505f9190816020015b61111e615027565b8152602001906001900390816111165790505090508a815f8151811061114657611146615792565b602002602001018190525061115b818b612764565b6111678684848b6128dd565b6040805160018082528183019092525f91602080830190803683375091925050503615156004878181111561119e5761119e615329565b146111c1576111af8d83885f6129dd565b6111bb86868684612a2f565b506111d3565b6111d0888e6080015183612b33565b95505b6111de888c8c612c03565b85825f815181106111f1576111f1615792565b6020026020010181815250506112088d8388612d26565b61122586895f01518a602001518d8c604001518d60600151612df3565b61122d611a5e565b5060019c9b505050505050505050505050565b5f61125361020060408051918201905290565b905061126760208381019083016040611b28565b60a0810180825261127a61107484610aa3565b61128b6110a86110a3856060610cdc565b610b266110ba6110a3856080610cdc565b60605f805f6112a9612e58565b90505f7f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c905060605f5281602052806040526303312e3660635260a05ff35b5f6112f1611ab1565b5f8083815b81811015611408573687878381811061131157611311615792565b90506020028101906113239190615977565b90505f61133360208301836154f5565b90505f61134660408401602085016154f5565b90505f61135960a0850160808601615996565b905081331483331417156004821417871796505f61138d61138261137a8790565b610ab36104da565b866101400135610b30565b5f8181526001602052604090819020805461ffff19166101001781559051909a509091506001600160a01b0380851691908616907f6bacc01dbe442496068f7d234edd811f1a5f833243e0aec824f86ab861f3c90d906113f09085815260200190565b60405180910390a385600101955050505050506112f6565b5050801561141857611418612f35565b506001949350505050565b63a61be9f05f52806020526024601cfd5b5f8061143f5f6124cb565b611447612f42565b426101643511154261014435111715611475576321ccfeb75f5261014435602052610164356040526044601cfd5b610204356102643510156114905763466aa6165f526004601cfd5b7f42d81c6929ffdc4eb27a0808e40e82516ad42296c166065de7f812492304ff6e608081905260a08790526060602460c037604060646101203760e060802061016052610264356102043560051b6102a0016001820181526020810190508881526080602460208301376101608860a0528760c0525f60e0525f6102043593505f5b84811015611566578060400261028401602081610100376040816101203760208101358317925060208401935060e0608020845260a0850194508b85528a6020860152604081606087013750600101611512565b6001850160051b610160206060526102643594505b848110156115b6578060400261028401925060a0840193508a845289602085015260408360608601376020830135919091179060010161157b565b506001600160a01b038111156115d3576339f3e3fd5f526004601cfd5b50505050505f7fa66999307ad1bb4fde44d13a5d710bd7718e0c87c1eef68a571629fbf5b93d029050806080528360a052606060c460c0376020610104610120375060c06080205f9081526020812060e05260843590611647826001600160a01b03165f9081526020819052604090205490565b7ffa445660b7e21515a59617fcd68910b487aa5808b8abda3d78bc85df364b2c2f60808190529091506040608460a03760605161010052896101205260a061014461014037816101e05261018060802094505050506102043560051b61018001828152336020820152608060408201526101206060820152600160808201528360a0820152606060c460c083013760a061026435026101e00160a4356084357f9d9af8e38d66c62e2c12f0225249fd9d721c54b83f48d9352c97c6cacdcb6f318385a35f60605260608101820160405250505f61172383612f8d565b905061172f8389612fde565b7101000000000000000000000000000001000182559150509550959350505050565b60c43560843560e4356101043584156117b9575f6040519050632671a55160e11b815260206004820152600160248201528660448201528460648201528360848201523360a48201528260c48201528160e48201526117b38682610104613033565b50611801565b60028660058111156117cd576117cd615329565b036117f457806001146117e3576117e3816130ea565b6117ef848433856130fb565b611801565b61180184843385856131b0565b505050505050565b346064356084356102643560061b5f80805b8381101561185a5761028481013592506102a481013591508683111561184357611843613287565b82870396506118528284613294565b60400161181b565b508585111561186b5761186b613287565b6118758486613294565b848611156118015761180133868803613294565b61189381836132ca565b816118ba57826001146118a9576118a9836130ea565b6118b5878787876130fb565b6118cb565b6118cb828260028a8a8a8a8a6132e8565b50505050505050565b6118dd83613367565b6118e781836132ca565b816118f9576118b587878787876131b0565b6118cb828260038a8a8a8a8a6132e8565b5f805f805f861561192f57505060843592503391505060c4356101043560e435611944565b50339350506084359150506024356064356044355b801561195257611952613379565b50600586901b6101e403356102643560061b5f80805b838110156119a95761028481013592506102a481013591508a156119935761199083876159b4565b95505b6119a1878a8486898f613386565b604001611968565b506119b886898988888e613386565b50505050505050505050565b60408151146119d05750565b5f6119dc826020015190565b90506103dc81836133bb565b611a048260a4355b331415600182116004909210919091161690565b15611a5957805f611a13825190565b9050608081901c63ffffffff8216611a3484826317b1f94282526001905250565b601c840163fb5014fc6060529350611a5060a4358886856133df565b5f6060526118cb565b505050565b7f00000000000000000000000000000000000000000000000000000000000000018015611a8f575f63929eee145d50565b63929eee145480611aa5575f63929eee145d5050565b50600163929eee145550565b7f00000000000000000000000000000000000000000000000000000000000000018015611af05763929eee145c156103b057637fa8a9875f526004601cfd5b63929eee145480611b135763929eee145c156103dc57637fa8a9875f526004601cfd5b600181146103dc57637fa8a9875f526004601cfd5b80838337505050565b5f63ffffffff8235166040519150808252602082018160051b81018060a084026020870183378293505b81841015611b745780845260209093019260a001611b5b565b60405250919392505050565b9052565b5f63ffffffff8235166040519150808252602082018160051b81018060c084026020870183378293505b81841015611b745780845260209093019260c001611bae565b5f611bd960a060408051918201905290565b9050611be782826080611b28565b611c04611bfd611bf8846080610cdc565b613427565b6080830152565b919050565b5f63ffffffff8235166040519150808252602082018160051b8101808360061b6020870183378293505b81841015611b7457808452602090930192604001611c33565b60605f611c5960016124cb565b86515f90600160e61b82351690806001600160401b03811115611c7e57611c7e61574b565b604051908082528060200260200182016040528015611ca7578160200160208202803683370190505b50945060010160051b91505f60205b83811015611ea8575f611ccc8c83613cce6104da565b90505f805f611cdb848e61256c565b6001600160781b0382166020880152919450925090505f829003611d025750505050611ea0565b6001600160781b0381166040808601919091528a8601849052845160a081015160c0820151608083015192909301518051600184119d909d179c600490931099509092915f5b81811015611dea575f838281518110611d6357611d63615792565b602002602001015190508b8151108d179c505f611d858989846080015161345e565b90508160800151826060015103611da25760608201819052611db7565b611db18989846060015161345e565b60608301525b5f611dd08360600151838a8a611dcb361590565b61349a565b606084018190526080909301929092525050600101611d48565b5087516060015180515f5b81811015611e94575f838281518110611e1057611e10615792565b602002602001015190505f611e2a8b8b846080015161345e565b90508160800151826060015103611e475760608201819052611e5c565b611e568b8b846060015161345e565b60608301525b5f611e718360600151838c8c611dcb36151590565b6060840181905260a0840180516080909501949094529092525050600101611df5565b50505050505050505050505b602001611cb6565b50506001600160e61b018103611ec057611ec06134ed565b50611ecb8888612764565b5f8060205b8381101561200e578581015192508215612006575f611ef28c83613cce6104da565b9050885f03611f0d575f878301819052602090910152612006565b60048151608001516004811115611f2657611f26615329565b14611fa957611f3f8188866001600587901c038e6134fa565b611f55575f878301819052602090910152612006565b602080820151604083015183516080810151930151611f8e9388936001600160781b039081169316913314156001909111168e17612a2f565b611fa4575f878301819052602090910152612006565b611fd4565b611fbb815f015182608001518c612b33565b878301819052935083611fd4575f602090910152612006565b886001900398505f815f01519050611fff85825f015183602001518c85604001518660600151612df3565b6001935050505b602001611ed0565b508061201c5761201c613555565b5050509550959350505050565b85518551606091829161203c81836159c7565b6001600160401b038111156120535761205361574b565b60405190808252806020026020018201604052801561208c57816020015b61207961505a565b8152602001906001900390816120715790505b5092505f5b828110156120e4576120bf8c5f8d84815181106120b0576120b0615792565b60200260200101518c8c613562565b8482815181106120d1576120d1615792565b6020908102919091010152600101612091565b505f5b8181101561213d576121168c60018c848151811061210757612107615792565b60200260200101518c5f613562565b848483018151811061212a5761212a615792565b60209081029190910101526001016120e7565b5061214b8b84888a896135b1565b9350505097509795505050505050565b5f61216c6040808051918201905290565b905061218661218261217d84610aa3565b61389a565b8252565b611c046121976110a3846020610cdc565b6020830152565b5f6121b38260600151518361014001516138b9565b81516001600160a01b03165f90815260208190526040902054610402908390610b30565b82545f90610100900460ff16156121fe5781156121f7576121f7856138c9565b505f610622565b83546201000090046001600160781b0316801561225957831561222957612224866138da565b612259565b8454600160881b90046001600160781b0316811061225957821561225057612250866138eb565b5f915050610622565b50600195945050505050565b632165628a5f526004601cfd5b33831480156122815750505050565b5f61228a612e58565b61190160f01b5f9081526002828152602287815260428320908390528651939450929190601f601d840116106102e260621984011016156122f4576122cf86886138fc565b61190160f01b5f908152600286905260228281526042822091905290975090506122f7565b50815b612304888285858a613992565b5050505050505050565b5f61231f6040808051918201905290565b9050612330612182610d9d84610aa3565b611c04612197610d9d846020610cdc565b80518060051b6040019050602082038051602082527f4b9f2d36e1b4c93de62cc077b00b1a91d84b6c31b4a14e012718dcca230689e78383a190525050565b8351606090806001600160401b0381111561239d5761239d61574b565b6040519080825280602002602001820160405280156123d657816020015b6123c361505a565b8152602001906001900390816123bb5790505b5091505f5b81811015612439575f8782815181106123f6576123f6615792565b6020026020010151905061241389825f0151836020015185613adb565b84838151811061242557612425615792565b6020908102919091010152506001016123db565b5061244787838787876135b1565b50505b95945050505050565b6124608282610160611b28565b612471610aeb610ae6846040610cdc565b6103dc612482610b01846060610cdc565b6060830152565b6040518135601f0163ffffffe01660200180838337913563ffffffff16815290810160405290565b5f6124c3602060408051918201905290565b5f8152905090565b7f000000000000000000000000000000000000000000000000000000000000000180156125185763929eee145c1561250a57637fa8a9875f526004601cfd5b8160010163929eee145d5050565b63929eee14548061254a5763929eee145c1561253b57637fa8a9875f526004601cfd5b8260010163929eee145d505050565b6001811461255f57637fa8a9875f526004601cfd5b505060020163929eee1455565b5f805f80855f015190506125898160a001518260c0015187613c80565b61259c57505f925082915081905061275d565b602086015160408701516001600160781b0391821694501691505f6004826080015160048111156125cf576125cf615329565b036125fc57600183850218905080156125ea576125ea613ca3565b506001935083925082915061275d9050565b50818311831517801561261157612611613ca3565b608082015160011615848411161561262b5761262b613cb0565b6126348261219e565b5f81815260016020526040812091965061265290879083908a6121d7565b61266557505f935083925061275d915050565b805460ff1661268057612680835f0151878a60600151612272565b8054608881901c8061269457869150612757565b6001600160781b038260101c169150600186036126b8578181039650809550612757565b8086036126d357908601858103868211029096039590612757565b80860296810291909502810186810387821102918290039695919003906001600160781b0386111561275757612717565b5f5b8215610b2657908290069190612706565b61272a6127248784612704565b88612704565b8015019687900496909504946001600160781b0386111561275757634e487b715f5260116020526024601cfd5b50505050505b9250925092565b805182515f5b82811015612853575f84828151811061278557612785615792565b602002602001015190505f815f015190508381106127aa576127aa8260200151613cbd565b5f8782815181106127bd576127bd615792565b6020026020010151905080602001516001600160781b03165f036127e35750505061284b565b80516040808201519085015163bfb3f8ce5f8760200151600181111561280b5761280b615329565b14612827575f61281c856060613cce565b9350636088d7de9150505b8251821061283857805f526004601cfd5b612843838389613cd9565b505050505050505b60010161276a565b505f5b818110156128d6575f85828151811061287157612871615792565b6020026020010151905080602001516001600160781b03165f0361289557506128ce565b8051608081015160608201516128b29085908363a8930e9a613d8c565b6128ca8483604001518363d69293326104da613d8c90565b5050505b600101612856565b5050505050565b60a084015160c08501516040860151515f805b8281101561295a575f8960400151828151811061290f5761290f615792565b602002602001015190505f815f01519050801584179350505f612946826060015183608001518c8c8b8b612941361590565b613df3565b6060830152506080018690526001016128f0565b5060808801516004811082168015612974576129746134ed565b505050506060860151515f5b81811015612304575f8860600151828151811061299f5761299f615792565b602002602001015190505f6129c4826060015183608001518b8b8a8a61294136151590565b60608301525060a0810151608090910152600101612980565b8351608081015160208201513314156001821160049092109190911616156128d6575f80612a12858489608001518988613e2e565b63fb5014fc6060529092509050611a5083602001518684846133df565b5f848152600160205260408120805482908290608881901c80612a5457889150612adc565b6001600160781b038260101c169150808803612a7857908801878111935090612adc565b97880297808802979190910288018781119350906001600160781b038083119089111715612adc57612aaa8883612704565b8015019788900497909104906001600160781b038083119089111715612adc57634e487b715f5260116020526024601cfd5b508215612b15578515612b09576040516310fda3e160e01b8152600481018a905260240160405180910390fd5b5f945050505050610622565b8660881b8160101b1760011782556001945050505050949350505050565b5f83610140015184606001515114612b4d57612b4d612265565b83515f8080612b5c8888613fac565b915091505f8082845f885af16001600160a01b0385165f908152600260205260409020805460018101909155606086901b189550925082612bbb578515612bae57612ba5614056565b612bae8561409d565b505f93506104f192505050565b505050505f805f612bd8876040015188606001516104da6140ae90565b925092509250825f14612bee57612bee8461409d565b60408701919091526060860152509392505050565b6040805160208082528183019092525f916020820181803683375050506040850151519091505f5b81811015612c7b575f86604001518281518110612c4a57612c4a615792565b60200260200101519050846080820152612c7281885f0151896101200151876104da61432790565b50600101612c2b565b50506060840151515f90815b81811015612d09575f87606001518281518110612ca657612ca6615792565b602002602001015190505f6005811115612cc257612cc2615329565b81516005811115612cd557612cd5615329565b03612cf1574793508381606001511115612cf157612cf1613287565b612d00813389886143276104da565b50600101612c87565b5050612d14826119c4565b504780156128d6576128d63382613294565b8251608081015160208201515f92839283928392916004811060019091111633909114151615612d8857612d69612d6361010083015190565b5190565b8861441c565b9093509150612d7a60208201612d5f565b945063fb5014fc9350612dd4565b600481608001516004811115612da057612da0615329565b0361230457805194505f8560601b9050612dc187838b608001518b8561445d565b639397928596509094509250612dd49050565b612dde6060859052565b612dea858785856133df565b5f606052612304565b60608290506060829050856001600160a01b0316876001600160a01b03167f9d9af8e38d66c62e2c12f0225249fd9d721c54b83f48d9352c97c6cacdcb6f318a888686604051612e469493929190615a13565b60405180910390a35050505050505050565b5f7f00000000000000000000000000000000000000000000000000000000000005394614612f10575060408051608080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f5f9081527f32b5c112df393a49218d7552f96b2eeb829dfb4272f4f24eef510a586b85feef6020527f95f740a33d720b7cd93c75d515ac95ca3bbaa2594cce46ea48e00974ea8fcd14855246606090815230845260a08220949095529093529190915290565b507f8bebed3dbe91a82da0dc94c8d370c160ad6db1b32164303e65b8544bae7e2f5590565b63fed398fc5f526004601cfd5b600435602014610224356102401416610244356102606102643560061b01141660186101243510600160a01b60843560a4351760c4356024351717101616806103b0576103b0614528565b5f8181526001602081905260409091209060843590612fb290849084903615156121d7565b50815460ff16610b2657610b268184612fd9602463ffffffff6102443516016124896104da565b612272565b5f612feb8260a4356119f0565b15610402575f805f612ffc86614535565b63fb5014fc6060529194509250905061301c60a43587601c8601856133df565b5f60605260209190910160801b1781529392505050565b604080517f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c60ff60a01b175f90815260208690527f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f83526055600b20919092526001600160a01b031690505f805f805260205f85875f875af191505f519050816130c8576130bf614056565b6130c8836145ed565b6001600160e01b03198116632671a55160e11b146118015761180186846145fe565b6369f958275f52806020526024601cfd5b833b61311257635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af1806131a2573d1561318057601f3d0160051c8260051c8160030281831115613169578183036003028280028480020360091c01015b5a60208201101561317c573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b6131c757635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af18061326c573d1561324b57601f3d0160051c8560051c8160030281831115613234578183036003028280028480020360091c01015b5a602082011015613247573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b638ffff9805f526004601cfd5b61329d81613367565b5f805f805f85875af1905080611a59576132b5614056565b63bc806b965f5282602052816040526044601cfd5b5f6132d6836020015190565b9050818114611a5957611a59836119c4565b5f60208851036133225750604080885260208089018a9052632671a55160e11b918901919091526044880152600160648801819052613331565b50606487018051600101908190525b603c60c082028901038781528660208201528560408201528460608201528360808201528260a082015250505050505050505050565b806103b0576391b3e5145f526004601cfd5b636ab37ce75f526004601cfd5b61338f83613367565b61339981836132ca565b816133aa576117ef86868686614613565b611801828260018989895f8a6132e8565b6064810151604082019060c0026044016133d6848383613033565b50506020905250565b5f806001600160e01b03198451165f805260205f85875f8b5af15f51909350149050816134185761340e614056565b846080526024607cfd5b8061180157846080526024607cfd5b5f8063ffffffff83351690506001810160051b61344a8160408051918201905290565b9250613457848483611b28565b5050919050565b5f82840361346d5750806104f1565b82848309156134835763c63cf0895f526004601cfd5b5f61348e8584615aaf565b93909304949350505050565b5f8486146134e357838303428590038082035f6134b7838a615aaf565b6134c1838c615aaf565b6134cb91906159c7565b9050858487830304018115150294505050505061244a565b5092949350505050565b6312d3f5a35f526004601cfd5b8451608081015160208201515f92916004811060019091111633909114151615610f50575f8061353187848b608001518b8a613e2e565b9150915061354b836020015188848463fb5014fc8a614707565b935050505061244a565b63d5da9a1b5f526004601cfd5b61356a61505a565b83515f0361357b5761357b85614774565b5f85600181111561358e5761358e615329565b036135a45761359f86858385614785565b61244a565b61244a86858333876148f5565b84516060905f816001600160401b038111156135cf576135cf61574b565b6040519080825280602002602001820160405280156135f8578160200160208202803683370190505b506040805160208082528183019092529192505f9190602082018180368337505089519192505060010160051b60205b81811015613687575f61363e8b83613cce6104da565b8051606081015191925090801561367c57478111825115161561366857638ffff9805f526004601cfd5b61367c828460200151856040015189614327565b505050602001613628565b50505f5b838110156137f3575f8a82815181106136a6576136a6615792565b6020026020010151905080602001516001600160781b03165f036136ed575f8483815181106136d7576136d7615792565b91151560209283029190910190910152506137eb565b600184838151811061370157613701615792565b911515602092830291909101909101528051604081015180515f5b81811015613786575f83828151811061373757613737615792565b6020026020010151905080606001515f1461377357608081018051908e9052855161012087015161376d9184918c6143276104da565b60808201525b608081015160609091015260010161371c565b505050606081015180515f5b818110156137e5575f8382815181106137ad576137ad615792565b602002602001015190505f81606001519050805f146137d1576137d1888483614a2c565b5060a0810151606090910152600101613792565b50505050505b60010161368b565b506137fd816119c4565b47801561380e5761380e3382613294565b8515613884575f5b848110156138825783818151811061383057613830615792565b60200260200101511561387a5761387a8b828151811061385257613852615792565b60200260200101518a8b848151811061386d5761386d615792565b6020026020010151612d26565b600101613816565b505b61388c611a5e565b509098975050505050505050565b5f6138ad61016060408051918201905290565b9050611c048282612453565b808210156103dc576103dc614a45565b631a5155745f52806020526024601cfd5b63ee9e0e635f52806020526024601cfd5b6310fda3e15f52806020526024601cfd5b5f805f84516001811660410380820360051c9250808752806020018701915050805160e81c6003820191506001811660051b868152825160208218525060015b838110156139685760405f2082821c60051b60209081169182529384018051919094185260010161393c565b50505060405f2091505f61397b82614a52565b5f9081526020939093525050604090209392505050565b5f805f528151602083038051826041035f600182116139f557604087015160608801515f1a83156139d657601b8260ff1c0190506001600160ff1b03821660408a01525b88528a855260205f60808760015afa508385528588526040880152505f515b8a148a1515169450849050613abe57858552604082526044850380516040870351630b135d3f60e11b835289604089035260205f60648b01858f5afa96508615613ab257630b135d3f60e11b5f5114613ab2578b3b15613a5c57634f7fb80d5f526004601cfd5b6001866041031115613a7557638baa579f5f526004601cfd5b64010100000060608901515f1a1a15604187141615613aa557631f003d0a5f5260608801515f1a6020526024601cfd5b63815e1d645f526004601cfd5b8385529152603f198601525b5050508061180157613ace614056565b634f7fb80d5f526004601cfd5b613ae361505a565b8251158451151715613afc576398e9db6e5f526004601cfd5b613b0461505a565b613b118685835f806148f5565b805160608101515f03613b2657509050610622565b613b368787858460800151614785565b82516040828101519082015160208085015190840151855185511891181791181715613b6d5763bced929d5f52846020526024601cfd5b806060015182606001511115613bf4575f865f81518110613b9057613b90615792565b60200260200101519050816060015183606001510389825f015181518110613bba57613bba615792565b60200260200101515f015160600151826020015181518110613bde57613bde615792565b6020026020010151606001818152505050613c75565b5f875f81518110613c0757613c07615792565b60200260200101519050826060015182606001510389825f015181518110613c3157613c31615792565b60200260200101515f015160400151826020015181518110613c5557613c55615792565b602002602001015160600181815250508260600151826060018181525050505b505050949350505050565b428084111590831116818015613c94575080155b156104f1576104f18484614e61565b635a052b325f526004601cfd5b63a11b63ff5f526004601cfd5b63133c37c65f52806020526024601cfd5b5f6104f18284015190565b5f838381518110613cec57613cec615792565b602002602001015190505f815f01519050613d078160031090565b613d1357613d13614e76565b60408201518015613d3657613d318460600151828660800151614e83565b613d49565b60808401515115613d4957613d49614ecd565b6004821460030383816005811115613d6357613d63615329565b90816005811115613d7657613d76615329565b9052505050606090920151604090910152505050565b82515f5b81811015611801575f858281518110613dab57613dab615792565b60209081029190910101518051604082015191925090600382116004881415821515171615613de557855f5288602052836040526044601cfd5b505050806001019050613d90565b5f868803613e0d57613e0686868961345e565b90506107df565b6107dc613e1b87878b61345e565b613e2688888b61345e565b86868661349a565b5f805f613e39614eda565b6301e4d72a815260208082015260408101898152336060830152601c820194509091508751604082015287613e79613e7260a083015190565b60e0840152565b613e8f613e8760c083015190565b610100840152565b613ea5613e9d60e083015190565b610120840152565b610140613eb3816060850152565b5f613ebf604084015190565b90505f613ece82848701614ee4565b928301929050613edf836080870152565b5f613eeb606086015190565b90505f613efa82868901614f4a565b948501949050613f0b8560a0890152565b5f613f188e878a01614faf565b959095019450613f298560c0890152565b8685015f613f378e83614fce565b602497019687019a50613f539050613f4e8c8c0190565b614ffe565b8060408b901b60808b901b17178f610100018181525050613f7d8c82611b8090919063ffffffff16565b60058c8e51613f8c91906159b4565b613f97911b8b6159b4565b99505050505050505050509550959350505050565b5f8083613fb7614eda565b639891976581523360208201908152608060408301819052601c9092019450905f613fe3604085015190565b90505f613ff282848601614ee4565b928301929050614003836040860152565b5f61400f606087015190565b90505f61401e82868801614ee4565b94850194905061402f856060880152565b895f61403d82898901614faf565b9a9d96909a016004019b50949950505050505050505050565b3d1561409b57601f3d0160051c60405160051c8160030281831115614088578183036003028280028480020360091c01015b5a602082011015611a59573d5f803e3d5ffd5b565b63939792855f52806020526024601cfd5b60603d105f8080808080866141205760405f803e5f51935060205192503d60208501113d60208501118082179850505086614120576020845f3e5f51915060208360203e60205190508160071b60208501018160a0026020850101803d10823d101761ffff8486171117985050505f80525b86614152575f8061413584602088018d61415b565b9250975061414783602087018c61423b565b929092179850909550505b5050505061275d565b5f806040519150825160c08602602001830160405285835260208660010160051b8085018360010160051b8701614199858b81811090829003020190565b60010160051b8a861196505b808510156141f957828589015260808a843e6060830151955085608084015260608201518681116141d685856142e2565b17881797505060808a01995060a08301925060a0820191506020850194506141a5565b50505b8183101561422f578083870152608088823e6060810151608082015260808801975060a0810190506020830192506141fc565b50505050935093915050565b604051815180851190808603818710028101602060e08202850181016040528185526001928301600590811b87019390920190911b908185015b8282101561422f57808287015260a088823e60206060890160a083013e606081015160608501516142b26080840151608088015180159114171590565b818311176142c084886142e2565b60a09b909b019a179690961795505060c0938401936020929092019101614275565b5f81516040830151801560038311161561430457506040840151600119909101905b604085015181148551831460208701516020870151141616159250505092915050565b5f8451600581111561433b5761433b615329565b0361437857604084015160208501516001600160a01b0316171561436157614361613379565b61437384608001518560600151613294565b614416565b60018451600581111561438d5761438d615329565b036143be576040840151156143a4576143a4613379565b614373846020015184866080015187606001518686613386565b6002845160058111156143d3576143d3615329565b036143f7576143738460200151848660800151876040015188606001518787611889565b61441684602001518486608001518760400151886060015187876118d4565b50505050565b608082901c63ffffffff604084901c811690808516906144449084906317b1f94290611b8016565b601c830192506144548482614fce565b50509250929050565b5f80614467614eda565b63f4dd92ce815287841860a0820152601c8101925060200160a0808252875f614491604083015190565b90505f6144a082858701614ee4565b9384019390506144b1846020870152565b5f6144bd606085015190565b90505f6144cc82878901614f4a565b9586019590506144dd866040890152565b5f6144ea8d888a01614faf565b9687019690506144fb8760608a0152565b5f6145088d898b01614fce565b905080880197508760040199505050505050505050509550959350505050565b6339f3e3fd5f526004601cfd5b6301e4d72a6102043560051b6080019081525f808260208082015260408101858152336060830152601c919091019061456f608435610aeb565b61458061014460e083016060611b28565b61014061458e816060840152565b61459c60a082016080840152565b61016060a06102643581029290920101906145b8908290840152565b6145c25f82840152565b6020016145d08160c0840152565b5f9181019182526020820196909652939560449095019492505050565b63d13d53d45f52806020526024601cfd5b631cf99b265f5281602052806040526044601cfd5b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166146f85780873b1515166146f857806146e757816146ca573d156146a957601f3d0160051c8360051c8160030281831115614692578183036003028280028480020360091c01015b5a6020820110156146a5573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b5f805f6001600160e01b03198751165f805260205f888a5f8e5af15f5190935014905081614753578361473e575f925050506106d7565b614746614056565b845f52876020526024601cfd5b8061476557845f52876020526024601cfd5b50600198975050505050505050565b63375c24c15f52806020526024601cfd5b5f805f85865160051b87015b808210156148a2576020820191508851825151106147b1576147b16148d6565b81515160051b60208a01015180516020845101515f6040830151602085015115815184101517156147e6575050505050614791565b8260051b60208201015191505060608101935083518901915083511589831060011b17881797508198505f84528a51935086156001811461484f5760608220881860408d01516101208601511860208e015186511817171561484a5761484a6148d6565b614898565b8151855260208201516020860152604082015160408601528a6080860152835160208d015261012084015160408d015260608520975060208d0192508683181561489857865183525b5050505050614791565b5050508160608551015280156148cf57600181036148c7576391b3e5145f526004601cfd5b6148cf6148e3565b5050614416565b637fda72795f526004601cfd5b634e487b715f5260116020526024601cfd5b5f805f86875160051b88015b808210156149f7576020820191508151518a518110614922576149226148d6565b8060051b60208c01015190506020835101515f606083510151602084015115815184101517156149555750505050614901565b8260051b60208201015191505060608101925082518801915082511588831060011b17871796508197505f83528a5192508515600181146149a75760a0822087146149a2576149a26148d6565b6149ee565b815184526020820151602085015260408201516040850152608082015160808501528a60208d01528960408d015260a08220965060208d019250858318156149ee57855183525b50505050614901565b50508551606001839052508015614a255760018103614a1d576391b3e5145f526004601cfd5b614a256148e3565b50506128d6565b63a5f542085f528260205281604052806060526064601cfd5b63466aa6165f526004601cfd5b5f614e58565b5f6009821015614bb1576005821015614b0e576003821015614ac1577f832c58a5b611aadcfa6a082ac9d04bace53d8278387f10040347b7e98eb5b30260018314027fbf8e29b89f29ed9b529c154a63038ffca562f8d7cd1e2545dda53a1b582dde3018610402565b7ff3e8417a785f980bdaf134fa0274a6bf891eeb8195cd94b09d2aa651046e28bc60038314027fa02eb7ff164c884e5e2c336dc85f81c6a93329d8e9adf214b32729b894de2af118610402565b6007821015614b64577f25d02425402d882d211a7ab774c0ed6eca048c4d03d9af40132475744753b2a360058314027f1c19f71958cdd8f081b4c31f7caf5c010b29d12950be2fa1c95070dc47e30b5518610402565b7fb58d772fb09b426b9dece637f61ca9065f2b994f1464b51e9207f55f7c8f594860078314027f7ff98d9d4e55d876c5cfac10b43c04039522f3ddfb0ea9bfe70c68cfb5c7cc1418610402565b6011821015614d0957600d821015614c6657600b821015614c19577f6f0ec38c21f6f583ab7f3c5413c773ffd5344c34fde1d390958e438bf667448f60098314027fd1d97d1ef5eaa37a4ee5fbf234e6f6d64eb511eb562221cd7edfbdde0848da0518610402565b7f32f4e7485d6485f9f6c255929b9905c62ba919758bbe231f231eaeecf33d810c600b8314027fbb98d87cc12922b83759626c5f07d72266da9702d19ffad6a514c73a89002f5f18610402565b600f821015614cbc577f8df51df98847160517f5b1186b4bc3f418d98b8a7f17f1292f392d79d600d79e600d8314027f6b5b04cbae4fcb1a9d78e7b2dfc51a36933d023cf6e347e03d517b472a85259018610402565b7fcc4886e37eedd9aacd6c1c2c9247197a621a71282e87a7cbc673f3736d9aa141600f8314027f1da3eed3ecef6ebaa6e5023c057ec2c75150693fd0dac5c90f4a142f9879fde818610402565b6015821015614db5576013821015614d68577f2d7a3ed6dab270fdb8e054b2ad525f0ce2a8b89cc76c17f0965434740f673a5560118314027fc3939feff011e53ab8c35ca3370aad54c5df1fc2938cd62543174fa6e7d8587718610402565b7f54b3212a178782f104e0d514b41a9a5c4ca9c980bf6597c3cecbf280917e202a60138314027f5a4f867d3d458dabecad65f6201ceeaba0096df2d0c491cc32e6ea4e6435001718610402565b6017821015614e0b577fbb40bf8cea3a5a716e2b6eb08bbdac8ec159f82f380783db3c56904f15a43d0460158314027f3bd8cff538aba49a9c374c806d277181e9651624b3e31111bc0624574f8bca1d18610402565b7f403be09941a31d05cfc2f896505811353d45d38743288b016630cce39435476a60178314027f1d51df90cba8de7637ca3e8fe1e3511d1dc2f23487d05dbdecb781860c21ac1c18610402565b61040282614a58565b6321ccfeb75f5281602052806040526044601cfd5b6394eb6af65f526004601cfd5b5f835f5260205f2060208301835160051b81015b80821015614ebe57815180841160051b93845260209384185260405f209290910190614e97565b50508314905080614416576144165b6309bde3395f526004601cfd5b5f61041260405190565b5f825180835260208401602084018260051b82015b80831015614f375782518051835260208101516020840152604081015160408401526060810151606084015250602083019250608082019150614ef9565b5050508060071b60200191505092915050565b5f80614f54845190565b8084529050602084810190600583901b860181019085015b82821115614f9c575f614f7e84615008565b9050614f8c818360a0615011565b506020929092019160a001614f6c565b60a0840260200194505050505092915050565b5f63ffffffe0603f614fbf855190565b01169050610402838383615011565b5f80614fd8845190565b8084529050600581901b614ff3602086810190860183615011565b602001949350505050565b6103b06040829052565b5f610402825190565b8082828560045afa80153d151715614416575f80fd5b6040518060a0016040528061503a61509c565b81525f602082018190526040820152606080820181905260809091015290565b60408051610100810182525f606082018181526080830182905260a0830182905260c0830182905260e083018290528252602082018190529181019190915290565b6040518061016001604052805f6001600160a01b031681526020015f6001600160a01b0316815260200160608152602001606081526020015f60048111156150e6576150e6615329565b81525f6020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b5f60208284031215615125575f80fd5b81356001600160401b0381111561513a575f80fd5b820161024081850312156104f1575f80fd5b5f81518084525f5b8181101561517057602081850181015186830182015201615154565b505f602082860101526020601f19601f83011685010191505092915050565b602081525f6104f1602083018461514c565b5f602082840312156151b1575f80fd5b5035919050565b5f602082840312156151c8575f80fd5b81356001600160401b038111156151dd575f80fd5b820161016081850312156104f1575f80fd5b5f8083601f8401126151ff575f80fd5b5081356001600160401b03811115615215575f80fd5b6020830191508360208260051b850101111561522f575f80fd5b9250929050565b80356001600160a01b0381168114611c04575f80fd5b5f805f805f805f805f805f60e08c8e031215615266575f80fd5b6001600160401b03808d35111561527b575f80fd5b6152888e8e358f016151ef565b909c509a5060208d013581101561529d575f80fd5b6152ad8e60208f01358f016151ef565b909a50985060408d01358110156152c2575f80fd5b6152d28e60408f01358f016151ef565b909850965060608d01358110156152e7575f80fd5b506152f88d60608e01358e016151ef565b909550935060808c0135925061531060a08d01615236565b915060c08c013590509295989b509295989b9093969950565b634e487b7160e01b5f52602160045260245ffd5b60068110611b8057611b80615329565b61535882825161533d565b6020818101516001600160a01b0390811691840191909152604080830151908401526060808301519084015260809182015116910152565b5f815180845260208085019450602084015f5b838110156153e55781516153b888825161534d565b808401516001600160a01b031660a08901526040015160c088015260e090960195908201906001016153a3565b509495945050505050565b604080825283519082018190525f906020906060840190828701845b8281101561542a57815115158452928401929084019060010161540c565b50505083810360208501526106d78186615390565b5f8060208385031215615450575f80fd5b82356001600160401b03811115615465575f80fd5b615471858286016151ef565b90969095509350505050565b5f805f8060408587031215615490575f80fd5b84356001600160401b03808211156154a6575f80fd5b6154b2888389016151ef565b909650945060208701359150808211156154ca575f80fd5b506154d7878288016151ef565b95989497509550505050565b602081525f6104f16020830184615390565b5f60208284031215615505575f80fd5b6104f182615236565b5f806040838503121561551f575f80fd5b82356001600160401b03811115615534575f80fd5b830160408186031215615545575f80fd5b946020939093013593505050565b5f805f805f60808688031215615567575f80fd5b85356001600160401b038082111561557d575f80fd5b9087019060a0828a031215615590575f80fd5b909550602087013590808211156155a5575f80fd5b506155b2888289016151ef565b909550935050604086013591506155cb60608701615236565b90509295509295909350565b5f805f805f805f8060a0898b0312156155ee575f80fd5b88356001600160401b0380821115615604575f80fd5b6156108c838d016151ef565b909a50985060208b0135915080821115615628575f80fd5b6156348c838d016151ef565b909850965060408b013591508082111561564c575f80fd5b506156598b828c016151ef565b999c989b509699959896976060870135966080013595509350505050565b5f805f805f805f6080888a03121561568d575f80fd5b87356001600160401b03808211156156a3575f80fd5b6156af8b838c016151ef565b909950975060208a01359150808211156156c7575f80fd5b6156d38b838c016151ef565b909750955060408a01359150808211156156eb575f80fd5b506156f88a828b016151ef565b909450925061570b905060608901615236565b905092959891949750929550565b606081525f61572b606083018661514c565b6020830194909452506001600160a01b0391909116604090910152919050565b634e487b7160e01b5f52604160045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b5f8261578d57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f815180845260208085019450602084015f5b838110156153e55781516157ce88825161533d565b838101516001600160a01b03168885015260408082015190890152606080820151908901526080908101519088015260a090960195908201906001016157b9565b5f815180845260208085019450602084015f5b838110156153e557815161583788825161533d565b808401516001600160a01b0390811689860152604080830151908a0152606080830151908a0152608080830151908a015260a091820151169088015260c09096019590820190600101615822565b60058110611b8057611b80615329565b828152604060208201526158b56040820183516001600160a01b03169052565b5f60208301516158d060608401826001600160a01b03169052565b5060408301516101608060808501526158ed6101a08501836157a6565b91506060850151603f198584030160a086015261590a838261580f565b925050608085015161591f60c0860182615885565b5060a085015160e085015260c0850151610100818187015260e0870151915061012082818801528188015192506101409150828288015280880151848801525080870151610180870152505050809150509392505050565b5f823561015e1983360301811261598c575f80fd5b9190910192915050565b5f602082840312156159a6575f80fd5b8135600581106104f1575f80fd5b818103818111156104025761040261575f565b808201808211156104025761040261575f565b5f815180845260208085019450602084015f5b838110156153e557615a0087835161534d565b60a09690960195908201906001016159ed565b5f6080808301878452602060018060a01b03808916602087015260406080604088015283895180865260a08901915060208b0195505f5b81811015615a8b578651615a5f84825161533d565b808701518616848801528481015185850152606090810151908401529585019591870191600101615a4a565b50508781036060890152615a9f818a6159da565b9c9b505050505050505050505050565b80820281158282048414176104025761040261575f56fea164736f6c6343000818000a","storage":{}},"0x6265cc8d1b28edfd4d76c80bf774c0d446fffbde":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610090575f3560e01c80633f15457f116100635780633f15457f1461010f5780637adbf973146101225780637dc0d1d0146101355780638bbedf7514610147578063be27b22c1461015a575f80fd5b806301ffc9a7146100945780631ecfc411146100bc578063224199c2146100d157806330349ebe146100e4575b5f80fd5b6100a76100a23660046115b1565b61016d565b60405190151581526020015b60405180910390f35b6100cf6100ca3660046115ef565b6101a3565b005b6100cf6100df3660046117e0565b6102de565b6002546100f7906001600160a01b031681565b6040516001600160a01b0390911681526020016100b3565b6001546100f7906001600160a01b031681565b6100cf6101303660046115ef565b61063c565b5f546100f7906001600160a01b031681565b6100cf610155366004611889565b61076d565b6100cf61016836600461190b565b6107f1565b5f6001600160e01b031982166301ffc9a760e01b148061019d57506001600160e01b031982166317d8f49b60e01b145b92915050565b6001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa1580156101ea573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061020e919061196b565b90505f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561024d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610271919061196b565b9050336001600160a01b03821614610287575f80fd5b600280546001600160a01b0319166001600160a01b0385169081179091556040519081527f9176b7f47e4504df5e5516c99d90d82ac7cbd49cc77e7f22ba2ac2f2e3a3eba8906020015b60405180910390a1505050565b5f546040516321ae60b160e11b81526001600160a01b039091169063435cc1629061030f90879087906004016119d3565b5f604051808303815f875af115801561032a573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526103519190810190611a6b565b92505f805f610360888761088b565b91945092509050336001600160a01b038216146103da5760405162461bcd60e51b815260206004820152602d60248201527f4f6e6c79206f776e65722063616e2063616c6c2070726f7665416e64436c616960448201526c36abb4ba342932b9b7b63b32b960991b60648201526084015b60405180910390fd5b6001600160a01b038416156105bb576001600160a01b03851661044e5760405162461bcd60e51b815260206004820152602660248201527f43616e6e6f74207365742061646472206966207265736f6c766572206973206e6044820152651bdd081cd95d60d21b60648201526084016103d1565b6001546040516305ef2c7f60e41b815260048101859052602481018490523060448201526001600160a01b0387811660648301525f608483015290911690635ef2c7f09060a4015f604051808303815f87803b1580156104ac575f80fd5b505af11580156104be573d5f803e3d5ffd5b505050505f83836040516020016104df929190918252602082015260400190565b60408051808303601f1901815290829052805160209091012062d5fa2b60e81b8252600482018190526001600160a01b03878116602484015290925087169063d5fa2b00906044015f604051808303815f87803b15801561053e575f80fd5b505af1158015610550573d5f803e3d5ffd5b5050600154604051635b0fc9c360e01b8152600481018590526001600160a01b0386811660248301529091169250635b0fc9c391506044015f604051808303815f87803b15801561059f575f80fd5b505af11580156105b1573d5f803e3d5ffd5b5050505050610632565b6001546040516305ef2c7f60e41b815260048101859052602481018490526001600160a01b03838116604483015287811660648301525f608483015290911690635ef2c7f09060a4015f604051808303815f87803b15801561061b575f80fd5b505af115801561062d573d5f803e3d5ffd5b505050505b5050505050505050565b6001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa158015610683573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106a7919061196b565b90505f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106e6573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061070a919061196b565b9050336001600160a01b03821614610720575f80fd5b5f80546001600160a01b0319166001600160a01b0385169081179091556040519081527fb3eacd0e351fafdfefdec84e1cd19679b38dbcd63ea7c2c24da17fd2bc3b3c0e906020016102d1565b5f546040516321ae60b160e11b81526001600160a01b039091169063435cc1629061079e90859085906004016119d3565b5f604051808303815f875af11580156107b9573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526107e09190810190611a6b565b90506107ec83826107f1565b505050565b5f805f6107fe858561088b565b6001546040516306ab592360e01b815260048101859052602481018490526001600160a01b03808416604483015294975092955090935091909116906306ab5923906064016020604051808303815f875af115801561085f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108839190611add565b505050505050565b5f8080806108998682610a40565b60ff1690506108aa86600183610a63565b92505f6108dc6108bb836001611b08565b6001848a516108ca9190611b1b565b6108d49190611b1b565b899190610a85565b6002546040516327c482cf60e11b81529192506001600160a01b031690634f89059e9061090d908490600401611b2e565b602060405180830381865afa158015610928573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061094c9190611b40565b6109a45760405162461bcd60e51b815260206004820152602360248201527f506172656e74206e616d65206d7573742062652061207075626c6963207375666044820152620ccd2f60eb1b60648201526084016103d1565b6109ae815f610b05565b5f549095506109c7906001600160a01b03168888610de3565b5060408051602081018890529081018690529093506001600160a01b03841690606001604051602081830303815290604052805190602001207fa2e66ce20e6fb2c4f61339c364ad79f15160cf5307230c8bc4d628adbca2ba3989604051610a2f9190611b2e565b60405180910390a350509250925092565b5f828281518110610a5357610a53611b5f565b016020015160f81c905092915050565b82515f90610a718385611b08565b1115610a7b575f80fd5b5091016020012090565b8251606090610a948385611b08565b1115610a9e575f80fd5b5f8267ffffffffffffffff811115610ab857610ab861160a565b6040519080825280601f01601f191660200182016040528015610ae2576020820181803683370190505b50905060208082019086860101610afa82828761100b565b509095945050505050565b5f80610b118484610a40565b60ff169050805f03610b2657505f905061019d565b5f610b4585610b358487611b08565b610b40906001611b08565b610b05565b90505f610b5e610b56866001611b08565b879085610a63565b604080516020810185905290810182905290915060600160408051808303601f190181529082905280516020909101206001546302571be360e01b8352600483018290529095505f916001600160a01b03909116906302571be390602401602060405180830381865afa158015610bd7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bfb919061196b565b90506001600160a01b0381161580610c1b57506001600160a01b03811630145b610c7a5760405162461bcd60e51b815260206004820152602a60248201527f43616e6e6f7420656e61626c652061206e616d65206f776e656420627920736f6044820152696d656f6e6520656c736560b01b60648201526084016103d1565b6001600160a01b0381163014610dd95782610d5e576001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa158015610cd6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cfa919061196b565b60405163232e3b3b60e21b8152600481018590523060248201529091506001600160a01b03821690638cb8ecec906044015f604051808303815f87803b158015610d42575f80fd5b505af1158015610d54573d5f803e3d5ffd5b5050505050610dd9565b6001546040516306ab592360e01b815260048101859052602481018490523060448201526001600160a01b03909116906306ab5923906064016020604051808303815f875af1158015610db3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610dd79190611add565b505b5050505092915050565b5f80610e016040518060400160405280606081526020015f81525090565b610e1985516005610e129190611b08565b8290611060565b50604080518082019091526005815264045f656e7360d81b6020820152610e419082906110c3565b50610e4c81866110c3565b50805160405163021e646f60e21b81525f9182916001600160a01b038a169163087991bc91610e8091601091600401611b73565b606060405180830381865afa158015610e9b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ebf9190611ba7565b93509150506bffffffffffffffffffffffff198216158015610ee057508551155b15610ef3575f8094509450505050611003565b855160208701206bffffffffffffffffffffffff19838116911614610f16575f80fd5b5f610f2187826110ef565b90505b80515160208201511015610ff857610f4b816080015183610f459190611bfc565b4261114a565b610fbd5760405162461bcd60e51b815260206004820152603c60248201527f444e53207265636f7264206973207374616c653b2072656672657368206f722060448201527f64656c657465206974206265666f72652070726f63656564696e672e0000000060648201526084016103d1565b5f80610fcd898460a00151611162565b925090508115610fe857965060019550611003945050505050565b5050610ff3816111d1565b610f24565b505f80945094505050505b935093915050565b602081106110435781518352611022602084611b08565b925061102f602083611b08565b915061103c602082611b1b565b905061100b565b905182516020929092036101000a5f190180199091169116179052565b60408051808201909152606081525f602082015261107f602083611c20565b156110a75761108f602083611c20565b61109a906020611b1b565b6110a49083611b08565b91505b506020828101829052604080518085525f815290920101905290565b60408051808201909152606081525f60208201526110e883845f0151518485516112b6565b9392505050565b6111376040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261019d816111d1565b5f806111568385611c3f565b60030b12159392505050565b5f805b83518310156111c4575f6111798585610a40565b60ff169050611189600185611b08565b93505f8061119887878561139c565b9250905081156111b0579350600192506111ca915050565b6111ba8387611b08565b9550505050611165565b505f9050805b9250929050565b60c081015160208201819052815151116111e85750565b5f6111fa825f015183602001516113f5565b82602001516112099190611b08565b82519091506112189082611454565b61ffff16604083015261122c600282611b08565b825190915061123b9082611454565b61ffff16606083015261124f600282611b08565b825190915061125e908261147a565b63ffffffff166080830152611274600482611b08565b82519091505f906112859083611454565b61ffff169050611296600283611b08565b60a0840181905291506112a98183611b08565b60c0909301929092525050565b60408051808201909152606081525f602082015282518211156112d7575f80fd5b60208501516112e68386611b08565b11156113195761131985611309876020015187866113049190611b08565b6114a2565b611314906002611c66565b6114b8565b5f808651805187602083010193508088870111156113375787860182525b505050602084015b602084106113775780518252611356602083611b08565b9150611363602082611b08565b9050611370602085611b1b565b935061133f565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b5f806113a8858561147a565b63ffffffff1663613d3078146113c257505f905080611003565b602c8310156113d557505f905080611003565b6113e9856113e4866004611b08565b6114d5565b91509150935093915050565b5f815b8351811061140857611408611c7d565b5f6114138583610a40565b60ff169050611423816001611b08565b61142d9083611b08565b9150805f0361143c5750611442565b506113f8565b61144c8382611b1b565b949350505050565b81515f90611463836002611b08565b111561146d575f80fd5b50016002015161ffff1690565b81515f90611489836004611b08565b1115611493575f80fd5b50016004015163ffffffff1690565b5f818311156114b257508161019d565b50919050565b81516114c48383611060565b506114cf83826110c3565b50505050565b5f8060288385516114e69190611b1b565b10156114f657505f9050806111ca565b5f835b611504856028611b08565b8110156115a55760049190911b905f61151d8783610a40565b60ff169050603081101580156115335750603a81105b1561154c57611543603082611b1b565b8317925061159c565b6041811015801561155d5750604781105b1561156d57611543603782611b1b565b6061811015801561157e5750606781105b1561158e57611543605782611b1b565b5f80945094505050506111ca565b506001016114f9565b50946001945092505050565b5f602082840312156115c1575f80fd5b81356001600160e01b0319811681146110e8575f80fd5b6001600160a01b03811681146115ec575f80fd5b50565b5f602082840312156115ff575f80fd5b81356110e8816115d8565b634e487b7160e01b5f52604160045260245ffd5b6040805190810167ffffffffffffffff811182821017156116415761164161160a565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156116705761167061160a565b604052919050565b5f67ffffffffffffffff8211156116915761169161160a565b50601f01601f191660200190565b5f82601f8301126116ae575f80fd5b81356116c16116bc82611678565b611647565b8181528460208386010111156116d5575f80fd5b816020850160208301375f918101602001919091529392505050565b5f82601f830112611700575f80fd5b8135602067ffffffffffffffff8083111561171d5761171d61160a565b8260051b61172c838201611647565b9384528581018301938381019088861115611745575f80fd5b84880192505b858310156117d457823584811115611761575f80fd5b88016040818b03601f1901811315611777575f80fd5b61177f61161e565b878301358781111561178f575f80fd5b61179d8d8a8387010161169f565b8252509082013590868211156117b1575f80fd5b6117bf8c898486010161169f565b8189015284525050918401919084019061174b565b98975050505050505050565b5f805f805f60a086880312156117f4575f80fd5b853567ffffffffffffffff8082111561180b575f80fd5b61181789838a0161169f565b9650602088013591508082111561182c575f80fd5b61183889838a016116f1565b9550604088013591508082111561184d575f80fd5b5061185a8882890161169f565b935050606086013561186b816115d8565b9150608086013561187b816115d8565b809150509295509295909350565b5f805f6060848603121561189b575f80fd5b833567ffffffffffffffff808211156118b2575f80fd5b6118be8783880161169f565b945060208601359150808211156118d3575f80fd5b6118df878388016116f1565b935060408601359150808211156118f4575f80fd5b506119018682870161169f565b9150509250925092565b5f806040838503121561191c575f80fd5b823567ffffffffffffffff80821115611933575f80fd5b61193f8683870161169f565b93506020850135915080821115611954575f80fd5b506119618582860161169f565b9150509250929050565b5f6020828403121561197b575f80fd5b81516110e8816115d8565b5f5b838110156119a0578181015183820152602001611988565b50505f910152565b5f81518084526119bf816020860160208601611986565b601f01601f19169290920160200192915050565b5f60408083016040845280865180835260608601915060608160051b870101925060208089015f5b83811015611a4b57888603605f1901855281518051888852611a1f898901826119a8565b9185015188830389870152919050611a3781836119a8565b9750505093820193908201906001016119fb565b505086840381880152505050611a6181866119a8565b9695505050505050565b5f60208284031215611a7b575f80fd5b815167ffffffffffffffff811115611a91575f80fd5b8201601f81018413611aa1575f80fd5b8051611aaf6116bc82611678565b818152856020838501011115611ac3575f80fd5b611ad4826020830160208601611986565b95945050505050565b5f60208284031215611aed575f80fd5b5051919050565b634e487b7160e01b5f52601160045260245ffd5b8082018082111561019d5761019d611af4565b8181038181111561019d5761019d611af4565b602081525f6110e860208301846119a8565b5f60208284031215611b50575f80fd5b815180151581146110e8575f80fd5b634e487b7160e01b5f52603260045260245ffd5b61ffff83168152604060208201525f61144c60408301846119a8565b805163ffffffff81168114611ba2575f80fd5b919050565b5f805f60608486031215611bb9575f80fd5b611bc284611b8f565b9250611bd060208501611b8f565b915060408401516bffffffffffffffffffffffff1981168114611bf1575f80fd5b809150509250925092565b63ffffffff818116838216019080821115611c1957611c19611af4565b5092915050565b5f82611c3a57634e487b7160e01b5f52601260045260245ffd5b500690565b600382810b9082900b03637fffffff198112637fffffff8213171561019d5761019d611af4565b808202811582820484141761019d5761019d611af4565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{"0x0":"0x9b2565a3545a1312bdcb6e7148a7f7cae8c2706b","0x1":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0x2":"0x287dee389caaa49edc112888f2bcfd927b472e25"}},"0x62b11ad5f582a5c5d378fb310125b030042554f1":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106103af5760003560e01c80637e37479e116101f4578063ba5d40b71161011a578063e985e9c5116100ad578063f5c1f76e1161007c578063f5c1f76e146108d8578063f7df5c60146108eb578063f8c8765e146108fe578063ffa1ad741461091157600080fd5b8063e985e9c51461087a578063ebf0c717146108b6578063ec129eea146108bd578063f25eb5c1146108d057600080fd5b8063c87b56dd116100e9578063c87b56dd1461082e578063ce92b33e14610841578063cf2c52cb14610854578063d9548e531461086757600080fd5b8063ba5d40b7146107b3578063baef73e9146107c6578063bb5b27e114610808578063bebec6b41461081b57600080fd5b8063a22cb46511610192578063ac9650d811610161578063ac9650d81461074c578063b3f9e4cb1461076c578063b85afd281461077f578063b88d4fde146107a057600080fd5b8063a22cb465146106e7578063a3f4df7e146106fa578063a424740014610726578063ab3b87fe1461073957600080fd5b80639508b1c4116101ce5780639508b1c4146106b15780639559c0bd146106c457806395d89b41146106cc57806399e0dd7c146106d457600080fd5b80637e37479e146106785780637eee288d1461068b57806394d008ef1461069e57600080fd5b806342842e0e116102d95780635096023911610277578063663f7b2a11610246578063663f7b2a14610610578063672b9f81146106235780636ccbae5f1461064457806370a082311461066557600080fd5b806350960239146105bb578063572b6c05146105ce5780636352211e146105ea578063638e5c78146105fd57600080fd5b806347c81699116102b357806347c816991461056f5780634a72584d146105825780634f558e791461059557806350382c1a146105a857600080fd5b806342842e0e1461053657806342966c6814610549578063430c20811461055c57600080fd5b80631bf7e13e1161035157806327f189751161032057806327f18975146104ea578063310bd74b146104fd5780633f72ec6e1461051057806340c10f191461052357600080fd5b80631bf7e13e146104905780631f71be06146104a357806323b872dd146104b6578063276fabb1146104c957600080fd5b8063095ea7b31161038d578063095ea7b31461041c578063150b7a02146104315780631bd8cc1a1461045d5780631be5e7ed1461047d57600080fd5b806301ffc9a7146103b457806306fdde03146103dc578063081812fc146103f1575b600080fd5b6103c76103c2366004613f0b565b610935565b60405190151581526020015b60405180910390f35b6103e4610946565b6040516103d39190613f78565b6104046103ff366004613f8b565b6109d8565b6040516001600160a01b0390911681526020016103d3565b61042f61042a366004613fb9565b6109ff565b005b61044461043f366004614026565b610a18565b6040516001600160e01b031990911681526020016103d3565b61047061046b3660046140dc565b610b72565b6040516103d3919061417f565b6103e461048b366004614192565b610c68565b6103e461049e3660046141c9565b610cb3565b61042f6104b1366004614249565b610dbe565b61042f6104c4366004614305565b610e54565b6104dc6104d7366004614346565b610ea7565b6040519081526020016103d3565b61042f6104f8366004614387565b610eb6565b61042f61050b366004613f8b565b610efe565b61042f61051e3660046143fa565b610f39565b61042f610531366004613fb9565b61103b565b61042f610544366004614305565b611088565b61042f610557366004613f8b565b6110a3565b6103c761056a366004613fb9565b6110e7565b61042f61057d366004614424565b6110f3565b61042f610590366004614485565b611132565b6103c76105a3366004613f8b565b611178565b61042f6105b636600461458c565b611197565b61042f6105c93660046145c0565b6111cd565b6103c76105dc3660046145c0565b6001600160a01b0316301490565b6104046105f8366004613f8b565b61122d565b61042f61060b366004613f8b565b61124a565b61042f61061e366004614678565b611295565b6106366106313660046146c0565b611336565b6040516103d39291906146e2565b6104dc610652366004613f8b565b6000908152610100602052604090205490565b6104dc6106733660046145c0565b61134e565b6104dc6106863660046145c0565b6113d4565b61042f610699366004613fb9565b611405565b61042f6106ac366004614707565b61145c565b61042f6106bf366004614762565b6114ab565b6104dc601481565b6103e4611532565b61042f6106e2366004614805565b611541565b61042f6106f536600461483a565b6115c8565b6103e46040518060400160405280600d81526020016c554e533a20526567697374727960981b81525081565b6103c76107343660046141c9565b6115da565b61042f610747366004613fb9565b611625565b61075f61075a366004614346565b61166a565b6040516103d39190614866565b61040461077a366004613f8b565b611746565b61079261078d3660046140dc565b611770565b6040516103d39291906148c8565b61042f6107ae3660046148ed565b611892565b61042f6107c1366004614249565b6118d9565b6107f06107d4366004613f8b565b600090815261013960205260409020546001600160401b031690565b6040516001600160401b0390911681526020016103d3565b6103e4610816366004613f8b565b611962565b6103e46108293660046145c0565b611a04565b6103e461083c366004613f8b565b611ace565b61042f61084f366004614387565b611b34565b61042f610862366004614958565b611b73565b6103c7610875366004613f8b565b611c42565b6103c761088836600461499f565b6001600160a01b039182166000908152606a6020908152604080832093909416825291909152205460ff1690565b60006104dc565b61042f6108cb366004614387565b611c85565b61042f611cc4565b6104706108e6366004614346565b611d4b565b61042f6108f93660046149d8565b611dfe565b61042f61090c366004614a0a565b611e8f565b6103e460405180604001604052806005815260200164302e392e3160d81b81525081565b600061094082612065565b92915050565b60606065805461095590614a66565b80601f016020809104026020016040519081016040528092919081815260200182805461098190614a66565b80156109ce5780601f106109a3576101008083540402835291602001916109ce565b820191906000526020600020905b8154815290600101906020018083116109b157829003601f168201915b5050505050905090565b60006109e3826120b5565b506000908152606960205260409020546001600160a01b031690565b80610a0981612114565b610a13838361217a565b505050565b60007f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378546001600160a01b0316610a4d61229c565b6001600160a01b031603610b0e57610a6361229c565b6001600160a01b03166342966c68856040518263ffffffff1660e01b8152600401610a9091815260200190565b600060405180830381600087803b158015610aaa57600080fd5b505af1158015610abe573d6000803e3d6000fd5b505050821580159150610ad85750610ad882840184614a9a565b15610af657610ae730856122ab565b610af185856123f9565b610b00565b610b0085856122ab565b50630a85bd0160e11b610b69565b60405162461bcd60e51b815260206004820152602560248201527f52656769737472793a204552433732315f524543454956494e475f50524f4849604482015264109255115160da1b60648201526084015b60405180910390fd5b95945050505050565b6060826001600160401b03811115610b8c57610b8c6144d7565b604051908082528060200260200182016040528015610bbf57816020015b6060815260200190600190039081610baa5790505b50905060005b83811015610c6057610c30858583818110610be257610be2614ab5565b9050602002810190610bf49190614acb565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508792506124a4915050565b828281518110610c4257610c42614ab5565b60200260200101819052508080610c5890614b27565b915050610bc5565b509392505050565b6060610cab84848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508692506124a4915050565b949350505050565b606060005a9050610cc58585856115da565b610d215760405162461bcd60e51b815260206004820152602760248201527f554e535265676973747279466f727761726465723a205349474e41545552455f6044820152661253959053125160ca1b6064820152608401610b60565b610db3610d3160208701876145c0565b30604088013584610d4560608b018b614acb565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284376000920191909152506124d992505050565b9150505b9392505050565b610134546001600160a01b0316610dd361229c565b6001600160a01b031614610df95760405162461bcd60e51b8152600401610b6090614b40565b6000610e0d610e08888a614b87565b6125ba565b509050610e1a8982611405565b610e278686868685612612565b8115610e4957610e498982610e44610e3f8b8d614b87565b612680565b612701565b505050505050505050565b80610e66610e6061229c565b82612743565b610e825760405162461bcd60e51b8152600401610b6090614b94565b81610e8c81612114565b610e95836127d4565b610ea0858585612841565b5050505050565b6000610c60610e088385614b87565b80610ec2610e6061229c565b610ede5760405162461bcd60e51b8152600401610b6090614b94565b81610ee881612114565b610ef587878787876129e8565b50505050505050565b80610f0a610e6061229c565b610f265760405162461bcd60e51b8152600401610b6090614b94565b81610f3081612114565b610a13836127d4565b610134546001600160a01b0316610f4e61229c565b6001600160a01b031614610f745760405162461bcd60e51b8152600401610b6090614b40565b610f7d816120b5565b42826001600160401b031611610fd55760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a204558504952595f494e5f5041535400000000000000006044820152606401610b60565b60008181526101396020908152604091829020805467ffffffffffffffff19166001600160401b038616908117909155915191825282917f93feabb03ab84f47fc85bf0c298103fca21d8c8bc376eae0c1e1c56b9d4f7789910160405180910390a25050565b611043612a4b565b6001600160a01b031661105461229c565b6001600160a01b03161461107a5760405162461bcd60e51b8152600401610b6090614bdd565b61108482826122ab565b5050565b610a1383838360405180602001604052806000815250611892565b806110af610e6061229c565b6110cb5760405162461bcd60e51b8152600401610b6090614b94565b816110d581612114565b6110de836127d4565b610a1383612b4c565b6000610db78383612743565b806110ff610e6061229c565b61111b5760405162461bcd60e51b8152600401610b6090614b94565b8161112581612114565b610ef58787878787612bf3565b8061113e610e6061229c565b61115a5760405162461bcd60e51b8152600401610b6090614b94565b8161116481612114565b61117086868686612cd2565b505050505050565b6000818152606760205260408120546001600160a01b03161515610940565b6111ca816040516020016111ab9190614c1f565b6040516020818303038152906040528051906020012060001c82612d72565b50565b610134546001600160a01b03166111e261229c565b6001600160a01b0316146112085760405162461bcd60e51b8152600401610b6090614b40565b6001600160a01b0316600090815261013660205260409020805460ff19166001179055565b600061123882611c42565b6112455761094082612d97565b919050565b80611256610e6061229c565b6112725760405162461bcd60e51b8152600401610b6090614b94565b61128461127d61229c565b3084612841565b61108461128f61229c565b836123f9565b60006112a0826125ba565b5090506112ab61229c565b6001600160a01b03166112bd8261122d565b6001600160a01b0316146113135760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b60565b61131c81612114565b61108461132761229c565b8261133185612680565b612df7565b6060806113438484612e7e565b909590945092505050565b60006001600160a01b0382166113b85760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b6064820152608401610b60565b506001600160a01b031660009081526068602052604090205490565b6001600160a01b038116600090815261013560205260408120546113f781612e9f565b6113ff578091505b50919050565b610134546001600160a01b031661141a61229c565b6001600160a01b0316146114405760405162461bcd60e51b8152600401610b6090614b40565b611449816127d4565b61108461145582612d97565b8383612841565b611464612a4b565b6001600160a01b031661147561229c565b6001600160a01b03161461149b5760405162461bcd60e51b8152600401610b6090614bdd565b6114a584846122ab565b50505050565b6114b58787612ee9565b6114bd61229c565b6001600160a01b03166114cf8661122d565b6001600160a01b0316146115255760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b60565b610ef58484848489612612565b60606066805461095590614a66565b610134546001600160a01b031661155661229c565b6001600160a01b03161461157c5760405162461bcd60e51b8152600401610b6090614b40565b61013361158a828483614c81565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b82826040516115bc929190614d69565b60405180910390a15050565b6110846115d361229c565b8383612f58565b6000610cab6115e885614d7d565b3085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061302692505050565b80611631610e6061229c565b61164d5760405162461bcd60e51b8152600401610b6090614b94565b8161165781612114565b6114a561166384612d97565b8585612841565b606060006116788385614e07565b905030330361173d5760005b8381101561173b5761170b61169761229c565b61169f61316f565b8787858181106116b1576116b1614ab5565b90506020028101906116c39190614acb565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250613183915050565b82828151811061171d5761171d614ab5565b6020026020010181905250808061173390614b27565b915050611684565b505b610cab816131b3565b6000818152606760205260408120546001600160a01b0316611769576000610940565b3092915050565b606080836001600160401b0381111561178b5761178b6144d7565b6040519080825280602002602001820160405280156117be57816020015b60608152602001906001900390816117a95790505b509150836001600160401b038111156117d9576117d96144d7565b60405190808252806020026020018201604052801561180c57816020015b60608152602001906001900390816117f75790505b50905060005b848110156118895761183c86868381811061182f5761182f614ab5565b9050602002013585612e7e565b84838151811061184e5761184e614ab5565b6020026020010184848151811061186757611867614ab5565b602002602001018290528290525050808061188190614b27565b915050611812565b50935093915050565b8161189e610e6061229c565b6118ba5760405162461bcd60e51b8152600401610b6090614b94565b826118c481612114565b6118cd846127d4565b611170868686866132de565b610134546001600160a01b03166118ee61229c565b6001600160a01b0316146119145760405162461bcd60e51b8152600401610b6090614b40565b600080611924610e08898b614b87565b9150915061193181613311565b6119498a83611943610e3f8c8e614b87565b86613371565b6119568787878786612612565b50505050505050505050565b600081815260c96020526040902080546060919061197f90614a66565b80601f01602080910402602001604051908101604052809291908181526020018280546119ab90614a66565b80156119f85780601f106119cd576101008083540402835291602001916119f8565b820191906000526020600020905b8154815290600101906020018083116119db57829003601f168201915b50505050509050919050565b6001600160a01b03811660009081526101356020526040902054606090611a2a81612e9f565b6113ff576000818152610138602052604090208054611a4890614a66565b80601f0160208091040260200160405190810160405280929190818152602001828054611a7490614a66565b8015611ac15780601f10611a9657610100808354040283529160200191611ac1565b820191906000526020600020905b815481529060010190602001808311611aa457829003601f168201915b5050505050915050919050565b6060611ad9826120b5565b6000611ae36133c4565b90506000815111611b035760405180602001604052806000815250610db7565b80611b0d846133d4565b604051602001611b1e929190614e7a565b6040516020818303038152906040529392505050565b80611b40610e6061229c565b611b5c5760405162461bcd60e51b8152600401610b6090614b94565b81611b6681612114565b610ef58787878787612612565b7f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87546001600160a01b0316611ba661229c565b6001600160a01b031614611bcc5760405162461bcd60e51b8152600401610b6090614bdd565b6020819003611bef576000611be382840184613f8b565b90506114a584826122ab565b6000611bfd82840184614ea9565b805190915060005b8181101561117057611c3086848381518110611c2357611c23614ab5565b60200260200101516122ab565b80611c3a81614b27565b915050611c05565b600081815261013960205260408120546001600160401b03161580159061094057505060009081526101396020526040902054426001600160401b039091161090565b80611c91610e6061229c565b611cad5760405162461bcd60e51b8152600401610b6090614b94565b81611cb781612114565b610ef587878787876134d4565b6000611cce61229c565b6001600160a01b0381166000908152610135602052604081205491925003611d425760405162461bcd60e51b815260206004820152602160248201527f52656769737472793a20524556455253455f5245434f52445f49535f454d50546044820152605960f81b6064820152608401610b60565b6111ca816134ea565b6060816001600160401b03811115611d6557611d656144d7565b604051908082528060200260200182016040528015611d9857816020015b6060815260200190600190039081611d835790505b50905060005b82811015611df757611dc7848483818110611dbb57611dbb614ab5565b90506020020135611962565b828281518110611dd957611dd9614ab5565b60200260200101819052508080611def90614b27565b915050611d9e565b5092915050565b610134546001600160a01b0316611e1361229c565b6001600160a01b031614611e395760405162461bcd60e51b8152600401610b6090614b40565b61013454611e50906001600160a01b0316846122ab565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c39528383604051611e82929190614d69565b60405180910390a2505050565b600054610100900460ff1615808015611eaf5750600054600160ff909116105b80611ec95750303b158015611ec9575060005460ff166001145b611f2c5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610b60565b6000805460ff191660011790558015611f4f576000805461ff0019166101001790555b61013480546001600160a01b0319166001600160a01b038716179055837f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec9237880546001600160a01b0319166001600160a01b03929092169190911790556040805180820182526013815272556e73746f707061626c6520446f6d61696e7360681b60208083019190915282518084019093526002835261155160f21b90830152611ff79161352f565b611fff61356f565b61200761356f565b61201083613598565b612019826135c8565b8015610ea0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b60006001600160e01b031982166380ac58cd60e01b148061209657506001600160e01b03198216635b5e139f60e01b145b8061094057506301ffc9a760e01b6001600160e01b0319831614610940565b6000818152606760205260409020546001600160a01b03166111ca5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b60565b3033036121715761212361316f565b81146111ca5760405162461bcd60e51b815260206004820152601760248201527f52656769737472793a20544f4b454e5f494e56414c49440000000000000000006044820152606401610b60565b6111ca816135f8565b600061218582612d97565b9050806001600160a01b0316836001600160a01b0316036121f25760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b6064820152608401610b60565b806001600160a01b031661220461229c565b6001600160a01b0316148061222057506122208161088861229c565b6122925760405162461bcd60e51b815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c00006064820152608401610b60565b610a138383613626565b60006122a6613694565b905090565b6001600160a01b0382166123015760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610b60565b6000818152606760205260409020546001600160a01b0316156123665760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610b60565b612372600083836136af565b6001600160a01b038216600090815260686020526040812080546001929061239b908490614f39565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b03861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b6000612403612a4b565b905061240f8183613626565b60008051602061529383398151915254604080516020808201869052825180830390910181528183019283905263e3dec8fb60e01b9092526001600160a01b0390921691829163e3dec8fb9161246c918891309190604401614f4c565b600060405180830381600087803b15801561248657600080fd5b505af115801561249a573d6000803e3d6000fd5b5050505050505050565b6060610db7836040516020016124ba9190614c1f565b6040516020818303038152906040528051906020012060001c8361378b565b60606124e4856135f8565b600080876001600160a01b0316866124fe8b8a8989613183565b60405161250b9190614c1f565b60006040518083038160008787f1925050503d8060008114612549576040519150601f19603f3d011682016040523d82523d6000602084013e61254e565b606091505b50909250905061255f603f87614f8e565b5a1161256d5761256d614fa2565b6125ad82826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061386d565b9998505050505050505050565b805160009081905b801561260c578291506125f882856125db600185614fb8565b815181106125eb576125eb614ab5565b60200260200101516138a6565b92508061260481614fcb565b9150506125c2565b50915091565b60005b848110156111705761266e86868381811061263257612632614ab5565b90506020028101906126449190614acb565b86868581811061265657612656614ab5565b90506020028101906126689190614acb565b86612bf3565b8061267881614b27565b915050612615565b606060008260008151811061269757612697614ab5565b602002602001015190506000600190505b8351811015611df757818482815181106126c4576126c4614ab5565b60200260200101516040516020016126dd929190614fe2565b604051602081830303815290604052915080806126f990614b27565b9150506126a8565b61dead6001600160a01b0384161480159061273357506001600160a01b03831660009081526101356020526040902054155b15610a1357610a13838383612df7565b60008061274f8361122d565b90506001600160a01b03811615801590610cab5750806001600160a01b0316846001600160a01b031614806127a957506001600160a01b038082166000908152606a602090815260408083209388168352929052205460ff165b80610cab5750836001600160a01b03166127c2846109d8565b6001600160a01b031614949350505050565b6127dd81613952565b6040516020016127ef91815260200190565b60408051601f198184030181528282528051602091820120600085815260cb9092529181209190915582917f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9190a250565b826001600160a01b031661285482612d97565b6001600160a01b0316146128b85760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b6064820152608401610b60565b6001600160a01b03821661291a5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610b60565b6129258383836136af565b612930600082613626565b6001600160a01b0383166000908152606860205260408120805460019290612959908490614fb8565b90915550506001600160a01b0382166000908152606860205260408120805460019290612987908490614f39565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60005b8481101561117057612a39868683818110612a0857612a08614ab5565b90506020020135858584818110612a2157612a21614ab5565b9050602002810190612a339190614acb565b85612cd2565b80612a4381614b27565b9150506129eb565b600080516020615293833981519152546000906001600160a01b03168015612b485760405163721804d360e11b81523060048201526000906001600160a01b0383169063e43009a690602401602060405180830381865afa158015612ab4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ad8919061501e565b60405163e66f960360e01b8152600481018290529091506001600160a01b0383169063e66f960390602401602060405180830381865afa158015612b20573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b449190615037565b9250505b5090565b6000612b5782612d97565b9050612b65816000846136af565b612b70600083613626565b6001600160a01b0381166000908152606860205260408120805460019290612b99908490614fb8565b909155505060008281526067602052604080822080546001600160a01b0319169055518391906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b60008585604051602001612c08929190615054565b60408051601f198184030181528282528051602091820120601f8901829004820284018201909252878352909250612c5c9183918990899081908401838280828437600092019190915250612d7292505050565b6111708187878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061397a915050565b612cdb84613aaf565b612d275760405162461bcd60e51b815260206004820152601c60248201527f5265636f726453746f726167653a204b45595f4e4f545f464f554e44000000006044820152606401610b60565b6114a584612d3486611962565b85858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525087925061397a915050565b612d7b82613aaf565b61108457600082815260c960205260409020610a138282615064565b6000818152606760205260408120546001600160a01b0316806109405760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b60565b6000828152610138602052604090208054612e1190614a66565b9050600003612e3557600082815261013860205260409020612e338282615064565b505b6001600160a01b03831660008181526101356020526040808220859055518492917feb76a21470988c474a21f690cc28fee1ed511bd812dc3c21fd0f49c5e5d4708a91a3505050565b606080612e8a84611962565b9150612e96848461378b565b90509250929050565b6000818152610137602052604081205460ff16801561094057506101366000612ec661229c565b6001600160a01b0316815260208101919091526040016000205460ff1692915050565b60008051602061529383398151915254604051633805550f60e01b81526001600160a01b03909116908190633805550f90612f2a9086908690600401614d69565b600060405180830381600087803b158015612f4457600080fd5b505af1158015610ef5573d6000803e3d6000fd5b816001600160a01b0316836001600160a01b031603612fb95760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610b60565b6001600160a01b038381166000818152606a6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561306d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613091919061501e565b9050600061313f8660600151805190602001208688602001516040516020016130df9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561316557508551613165906001600160a01b03168286613ad5565b9695505050505050565b60003033036131805750601f193601355b90565b606082858560405160200161319a93929190615123565b6040516020818303038152906040529050949350505050565b606081516001600160401b038111156131ce576131ce6144d7565b60405190808252806020026020018201604052801561320157816020015b60608152602001906001900390816131ec5790505b50905060005b82518110156113ff57600080306001600160a01b031685848151811061322f5761322f614ab5565b60200260200101516040516132449190614c1f565b600060405180830381855af49150503d806000811461327f576040519150601f19603f3d011682016040523d82523d6000602084013e613284565b606091505b50915091506132ac82826040518060600160405280602781526020016152b36027913961386d565b8484815181106132be576132be614ab5565b6020026020010181905250505080806132d690614b27565b915050613207565b6132e9848484612841565b6132f584848484613c17565b6114a55760405162461bcd60e51b8152600401610b6090615162565b6000818152610137602052604090205460ff16156111ca5760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a20544f4b454e5f555047524144454400000000000000006044820152606401610b60565b61337b84846122ab565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952836040516133ab9190613f78565b60405180910390a280156114a5576114a5848484612701565b6060610133805461095590614a66565b6060816000036133fb5750506040805180820190915260018152600360fc1b602082015290565b8160005b8115613425578061340f81614b27565b915061341e9050600a83614f8e565b91506133ff565b6000816001600160401b0381111561343f5761343f6144d7565b6040519080825280601f01601f191660200182016040528015613469576020820181803683370190505b5090505b8415610cab5761347e600183614fb8565b915061348b600a866151b4565b613496906030614f39565b60f81b8183815181106134ab576134ab614ab5565b60200101906001600160f81b031916908160001a9053506134cd600a86614f8e565b945061346d565b6134dd816127d4565b610ea08585858585612612565b6001600160a01b03811660008181526101356020526040808220829055517ffcf5eec0cfa3e6332f5f0e63ec242d71f866a61d121d6cdf5c2eb3b668a26c4f9190a250565b600054610100900460ff166135565760405162461bcd60e51b8152600401610b60906151c8565b60656135628382615064565b506066610a138282615064565b600054610100900460ff166135965760405162461bcd60e51b8152600401610b60906151c8565b565b600054610100900460ff166135bf5760405162461bcd60e51b8152600401610b60906151c8565b6111ca81613d1c565b600054610100900460ff166135ef5760405162461bcd60e51b8152600401610b60906151c8565b6111ca81613d75565b60008181526101006020526040902054613613906001614f39565b6000918252610100602052604090912055565b600081815260696020526040902080546001600160a01b0319166001600160a01b038416908117909155819061365b82612d97565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60003033036136aa575060331936013560601c90565b503390565b6001600160a01b0382166136c6576136c681613311565b600081815261013960205260409020546001600160401b031615613761576001600160a01b0382161580159061371557506136ff612a4b565b6001600160a01b0316826001600160a01b031614155b6137615760405162461bcd60e51b815260206004820152601960248201527f52656769737472793a20544f4b454e5f455850495241424c45000000000000006044820152606401610b60565b6001600160a01b03831660009081526101356020526040902054819003610a1357610a13836134ea565b606061379682612e9f565b156137b05750604080516020810190915260008152610940565b60ca60006137bd84613952565b8152602001908152602001600020600084815260200190815260200160002080546137e790614a66565b80601f016020809104026020016040519081016040528092919081815260200182805461381390614a66565b80156138605780601f1061383557610100808354040283529160200191613860565b820191906000526020600020905b81548152906001019060200180831161384357829003601f168201915b5050505050905092915050565b6060831561387c575081610db7565b82511561388c5782518084602001fd5b8160405162461bcd60e51b8152600401610b609190613f78565b600081516000036138f15760405162461bcd60e51b815260206004820152601560248201527452656769737472793a204c4142454c5f454d50545960581b6044820152606401610b60565b82826040516020016139039190614c1f565b60405160208183030381529060405280519060200120604051602001613933929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b600081815260cb602052604081205415612b4857600082815260cb6020526040902054610940565b60ca600061398783613952565b8152602001908152602001600020600085815260200190815260200160002080546139b190614a66565b9050600003613a0957826040516139c89190614c1f565b6040518091039020817f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f8685604051613a009190613f78565b60405180910390a35b8160ca6000613a1784613952565b815260200190815260200160002060008681526020019081526020016000209081613a429190615064565b5081604051613a519190614c1f565b604051809103902083604051613a679190614c1f565b6040518091039020827f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d928686604051613aa19291906146e2565b60405180910390a450505050565b600081815260c9602052604081208054829190613acb90614a66565b9050119050919050565b6000806000613ae48585613dc3565b90925090506000816004811115613afd57613afd615213565b148015613b1b5750856001600160a01b0316826001600160a01b0316145b15613b2b57600192505050610db7565b600080876001600160a01b0316631626ba7e60e01b8888604051602401613b53929190615229565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051613b919190614c1f565b600060405180830381855afa9150503d8060008114613bcc576040519150601f19603f3d011682016040523d82523d6000602084013e613bd1565b606091505b5091509150818015613be4575080516020145b8015613c0b57508051630b135d3f60e11b90613c09908301602090810190840161501e565b145b98975050505050505050565b60006001600160a01b0384163b15613d1457836001600160a01b031663150b7a02613c4061229c565b8786866040518563ffffffff1660e01b8152600401613c629493929190615242565b6020604051808303816000875af1925050508015613c9d575060408051601f3d908101601f19168201909252613c9a91810190615275565b60015b613cfa573d808015613ccb576040519150601f19603f3d011682016040523d82523d6000602084013e613cd0565b606091505b508051600003613cf25760405162461bcd60e51b8152600401610b6090615162565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610cab565b506001610cab565b600054610100900460ff16613d435760405162461bcd60e51b8152600401610b60906151c8565b806000805160206152938339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b600054610100900460ff16613d9c5760405162461bcd60e51b8152600401610b60906151c8565b807f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87613d54565b6000808251604103613df95760208301516040840151606085015160001a613ded87828585613e08565b94509450505050613e01565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613e3f5750600090506003613eec565b8460ff16601b14158015613e5757508460ff16601c14155b15613e685750600090506004613eec565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613ebc573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613ee557600060019250925050613eec565b9150600090505b94509492505050565b6001600160e01b0319811681146111ca57600080fd5b600060208284031215613f1d57600080fd5b8135610db781613ef5565b60005b83811015613f43578181015183820152602001613f2b565b50506000910152565b60008151808452613f64816020860160208601613f28565b601f01601f19169290920160200192915050565b602081526000610db76020830184613f4c565b600060208284031215613f9d57600080fd5b5035919050565b6001600160a01b03811681146111ca57600080fd5b60008060408385031215613fcc57600080fd5b8235613fd781613fa4565b946020939093013593505050565b60008083601f840112613ff757600080fd5b5081356001600160401b0381111561400e57600080fd5b602083019150836020828501011115613e0157600080fd5b60008060008060006080868803121561403e57600080fd5b853561404981613fa4565b9450602086013561405981613fa4565b93506040860135925060608601356001600160401b0381111561407b57600080fd5b61408788828901613fe5565b969995985093965092949392505050565b60008083601f8401126140aa57600080fd5b5081356001600160401b038111156140c157600080fd5b6020830191508360208260051b8501011115613e0157600080fd5b6000806000604084860312156140f157600080fd5b83356001600160401b0381111561410757600080fd5b61411386828701614098565b909790965060209590950135949350505050565b600082825180855260208086019550808260051b84010181860160005b8481101561417257601f19868403018952614160838351613f4c565b98840198925090830190600101614144565b5090979650505050505050565b602081526000610db76020830184614127565b6000806000604084860312156141a757600080fd5b83356001600160401b038111156141bd57600080fd5b61411386828701613fe5565b6000806000604084860312156141de57600080fd5b83356001600160401b03808211156141f557600080fd5b908501906080828803121561420957600080fd5b9093506020850135908082111561421f57600080fd5b5061422c86828701613fe5565b9497909650939450505050565b8035801515811461124557600080fd5b60008060008060008060008060a0898b03121561426557600080fd5b883561427081613fa4565b975060208901356001600160401b038082111561428c57600080fd5b6142988c838d01614098565b909950975060408b01359150808211156142b157600080fd5b6142bd8c838d01614098565b909750955060608b01359150808211156142d657600080fd5b506142e38b828c01614098565b90945092506142f6905060808a01614239565b90509295985092959890939650565b60008060006060848603121561431a57600080fd5b833561432581613fa4565b9250602084013561433581613fa4565b929592945050506040919091013590565b6000806020838503121561435957600080fd5b82356001600160401b0381111561436f57600080fd5b61437b85828601614098565b90969095509350505050565b60008060008060006060868803121561439f57600080fd5b85356001600160401b03808211156143b657600080fd5b6143c289838a01614098565b909750955060208801359150808211156143db57600080fd5b506143e888828901614098565b96999598509660400135949350505050565b6000806040838503121561440d57600080fd5b82356001600160401b0381168114613fd757600080fd5b60008060008060006060868803121561443c57600080fd5b85356001600160401b038082111561445357600080fd5b61445f89838a01613fe5565b9097509550602088013591508082111561447857600080fd5b506143e888828901613fe5565b6000806000806060858703121561449b57600080fd5b8435935060208501356001600160401b038111156144b857600080fd5b6144c487828801613fe5565b9598909750949560400135949350505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715614515576145156144d7565b604052919050565b600082601f83011261452e57600080fd5b81356001600160401b03811115614547576145476144d7565b61455a601f8201601f19166020016144ed565b81815284602083860101111561456f57600080fd5b816020850160208301376000918101602001919091529392505050565b60006020828403121561459e57600080fd5b81356001600160401b038111156145b457600080fd5b610cab8482850161451d565b6000602082840312156145d257600080fd5b8135610db781613fa4565b60006001600160401b038211156145f6576145f66144d7565b5060051b60200190565b600061461361460e846145dd565b6144ed565b8381529050602080820190600585901b84018681111561463257600080fd5b845b8181101561466d5780356001600160401b038111156146535760008081fd5b61465f8982890161451d565b855250928201928201614634565b505050509392505050565b60006020828403121561468a57600080fd5b81356001600160401b038111156146a057600080fd5b8201601f810184136146b157600080fd5b610cab84823560208401614600565b600080604083850312156146d357600080fd5b50508035926020909101359150565b6040815260006146f56040830185613f4c565b8281036020840152610db38185613f4c565b6000806000806060858703121561471d57600080fd5b843561472881613fa4565b93506020850135925060408501356001600160401b0381111561474a57600080fd5b61475687828801613fe5565b95989497509550505050565b60008060008060008060006080888a03121561477d57600080fd5b87356001600160401b038082111561479457600080fd5b6147a08b838c01613fe5565b909950975060208a0135965060408a01359150808211156147c057600080fd5b6147cc8b838c01614098565b909650945060608a01359150808211156147e557600080fd5b506147f28a828b01614098565b989b979a50959850939692959293505050565b6000806020838503121561481857600080fd5b82356001600160401b0381111561482e57600080fd5b61437b85828601613fe5565b6000806040838503121561484d57600080fd5b823561485881613fa4565b9150612e9660208401614239565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156148bb57603f198886030184526148a9858351613f4c565b9450928501929085019060010161488d565b5092979650505050505050565b6040815260006148db6040830185614127565b8281036020840152610db38185614127565b6000806000806080858703121561490357600080fd5b843561490e81613fa4565b9350602085013561491e81613fa4565b92506040850135915060608501356001600160401b0381111561494057600080fd5b61494c8782880161451d565b91505092959194509250565b60008060006040848603121561496d57600080fd5b833561497881613fa4565b925060208401356001600160401b0381111561499357600080fd5b61422c86828701613fe5565b600080604083850312156149b257600080fd5b82356149bd81613fa4565b915060208301356149cd81613fa4565b809150509250929050565b6000806000604084860312156149ed57600080fd5b8335925060208401356001600160401b0381111561499357600080fd5b60008060008060808587031215614a2057600080fd5b8435614a2b81613fa4565b93506020850135614a3b81613fa4565b92506040850135614a4b81613fa4565b91506060850135614a5b81613fa4565b939692955090935050565b600181811c90821680614a7a57607f821691505b6020821081036113ff57634e487b7160e01b600052602260045260246000fd5b600060208284031215614aac57600080fd5b610db782614239565b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112614ae257600080fd5b8301803591506001600160401b03821115614afc57600080fd5b602001915036819003821315613e0157600080fd5b634e487b7160e01b600052601160045260246000fd5b600060018201614b3957614b39614b11565b5060010190565b60208082526027908201527f52656769737472793a2053454e4445525f49535f4e4f545f4d494e54494e475f60408201526626a0a720a3a2a960c91b606082015260800190565b6000610db7368484614600565b60208082526029908201527f52656769737472793a2053454e4445525f49535f4e4f545f415050524f5645446040820152682fa7a92fa7aba722a960b91b606082015260800190565b60208082526022908201527f52656769737472793a20494e53554646494349454e545f5045524d495353494f6040820152614e5360f01b606082015260800190565b60008251614c31818460208701613f28565b9190910192915050565b601f821115610a1357600081815260208120601f850160051c81016020861015614c625750805b601f850160051c820191505b8181101561117057828155600101614c6e565b6001600160401b03831115614c9857614c986144d7565b614cac83614ca68354614a66565b83614c3b565b6000601f841160018114614ce05760008515614cc85750838201355b600019600387901b1c1916600186901b178355610ea0565b600083815260209020601f19861690835b82811015614d115786850135825560209485019460019092019101614cf1565b5086821015614d2e5760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b602081526000610cab602083018486614d40565b600060808236031215614d8f57600080fd5b604051608081016001600160401b038282108183111715614db257614db26144d7565b8160405284359150614dc382613fa4565b81835260208501356020840152604085013560408401526060850135915080821115614dee57600080fd5b50614dfb3682860161451d565b60608301525092915050565b6000614e1561460e846145dd565b80848252602080830192508560051b850136811115614e3357600080fd5b855b81811015614e6e5780356001600160401b03811115614e545760008081fd5b614e6036828a0161451d565b865250938201938201614e35565b50919695505050505050565b60008351614e8c818460208801613f28565b835190830190614ea0818360208801613f28565b01949350505050565b60006020808385031215614ebc57600080fd5b82356001600160401b03811115614ed257600080fd5b8301601f81018513614ee357600080fd5b8035614ef161460e826145dd565b81815260059190911b82018301908381019087831115614f1057600080fd5b928401925b82841015614f2e57833582529284019290840190614f15565b979650505050505050565b8082018082111561094057610940614b11565b6001600160a01b03848116825283166020820152606060408201819052600090610b6990830184613f4c565b634e487b7160e01b600052601260045260246000fd5b600082614f9d57614f9d614f78565b500490565b634e487b7160e01b600052600160045260246000fd5b8181038181111561094057610940614b11565b600081614fda57614fda614b11565b506000190190565b60008351614ff4818460208801613f28565b601760f91b9083019081528351615012816001840160208801613f28565b01600101949350505050565b60006020828403121561503057600080fd5b5051919050565b60006020828403121561504957600080fd5b8151610db781613fa4565b8183823760009101908152919050565b81516001600160401b0381111561507d5761507d6144d7565b6150918161508b8454614a66565b84614c3b565b602080601f8311600181146150c657600084156150ae5750858301515b600019600386901b1c1916600185901b178555611170565b600085815260208120601f198616915b828110156150f5578886015182559484019460019091019084016150d6565b50858210156151135787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60008451615135818460208901613f28565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6000826151c3576151c3614f78565b500690565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b634e487b7160e01b600052602160045260246000fd5b828152604060208201526000610cab6040830184613f4c565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061316590830184613f4c565b60006020828403121561528757600080fd5b8151610db781613ef556febe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a","storage":{}},"0x6ac8f19d1e0f81147cdf2a1e53cb1f4e18417204":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610296575f3560e01c80636352211e11610161578063c93ab3fd116100ca578063e985e9c511610084578063e985e9c5146106c8578063eb8ae530146106db578063ed70554d146106ee578063f242432a1461070d578063f2fde38b14610720578063fd0cd0d914610733575f80fd5b8063c93ab3fd14610647578063cf4088231461065a578063d8c9921a1461066d578063d9a50c1214610680578063da8c229e14610693578063e0dba60f146106b5575f80fd5b8063a22cb4651161011b578063a22cb465146105d5578063a4014982146105e8578063adf4960a146105fb578063b6bcad261461060e578063c475abff14610621578063c658e08614610634575f80fd5b80636352211e146105595780636e5d6ad21461056c578063715018a6146105975780638b4dfa751461059f5780638cf8b41e146105b25780638da5cb5b146105c5575f80fd5b80631f4e1504116102035780633f15457f116101bd5780633f15457f146104b1578063402906fc146104d857806341415eab146105005780634e1273f41461051357806353095467146105335780635d3590d514610546575f80fd5b80631f4e15041461042b57806320c38e2b1461043e57806324c1af44146104515780632b20e397146104645780632eb2c2d61461048b57806333c69ea91461049e575f80fd5b80630e4cd725116102545780630e4cd725146103a05780630e89341c146103b357806314ab9038146103c6578063150b7a02146103d95780631534e177146104055780631896f70a14610418575f80fd5b8062fdd58e1461029a5780630178fe3f146102c057806301ffc9a71461030657806306fdde0314610329578063081812fc14610360578063095ea7b31461038b575b5f80fd5b6102ad6102a8366004614316565b610746565b6040519081526020015b60405180910390f35b6102d36102ce366004614340565b6107f0565b604080516001600160a01b03909416845263ffffffff90921660208401526001600160401b0316908201526060016102b7565b61031961031436600461436c565b61081f565b60405190151581526020016102b7565b6103536040518060400160405280600b81526020016a2730b6b2abb930b83832b960a91b81525081565b6040516102b791906143d4565b61037361036e366004614340565b61085e565b6040516001600160a01b0390911681526020016102b7565b61039e610399366004614316565b6108a0565b005b6103196103ae3660046143e6565b6108e5565b6103536103c1366004614340565b61095e565b61039e6103d436600461442f565b6109cc565b6103ec6103e736600461449d565b610ac0565b6040516001600160e01b031990911681526020016102b7565b61039e61041336600461450a565b610c96565b61039e6104263660046143e6565b610cc0565b600754610373906001600160a01b031681565b61035361044c366004614340565b610d75565b6102ad61045f3660046145f6565b610e0c565b6103737f000000000000000000000000c965345edac823d56812cd20a10316233916a60581565b61039e610499366004614717565b610fe7565b61039e6104ac3660046147bd565b61121a565b6103737f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a981565b6104eb6104e6366004614811565b6113e6565b60405163ffffffff90911681526020016102b7565b61031961050e3660046143e6565b611480565b610526610521366004614832565b6114b8565b6040516102b79190614928565b600554610373906001600160a01b031681565b61039e61055436600461493a565b6115d7565b610373610567366004614340565b611655565b61057f61057a366004614978565b61165f565b6040516001600160401b0390911681526020016102b7565b61039e61178e565b61039e6105ad3660046149aa565b6117a1565b61057f6105c03660046149e9565b6118c0565b5f546001600160a01b0316610373565b61039e6105e3366004614a6b565b611c28565b6102ad6105f6366004614a97565b611cfd565b610319610609366004614b12565b611e38565b61039e61061c36600461450a565b611e5c565b6102ad61062f366004614b33565b61209e565b6102ad610642366004614b53565b6122fd565b61039e610655366004614bc0565b6124bd565b61039e610668366004614c26565b612605565b61039e61067b366004614c5b565b612794565b61031961068e366004614b33565b61285d565b6103196106a136600461450a565b60046020525f908152604090205460ff1681565b61039e6106c3366004614a6b565b612938565b6103196106d6366004614c86565b61299f565b61039e6106e9366004614cb2565b6129cc565b6102ad6106fc366004614340565b60016020525f908152604090205481565b61039e61071b366004614d15565b612d59565b61039e61072e36600461450a565b612e06565b610319610741366004614340565b612e7c565b5f6001600160a01b0383166107b65760405162461bcd60e51b815260206004820152602b60248201527f455243313135353a2062616c616e636520717565727920666f7220746865207a60448201526a65726f206164647265737360a81b60648201526084015b60405180910390fd5b5f6107c083611655565b9050836001600160a01b0316816001600160a01b0316036107e55760019150506107ea565b5f9150505b92915050565b5f8181526001602052604090205460a081901c60c082901c610813838383612f4d565b90959094509092509050565b5f6001600160e01b03198216631b05885b60e31b148061084f57506001600160e01b03198216630a85bd0160e11b145b806107ea57506107ea82612f80565b5f8061086983611655565b90506001600160a01b03811661088157505f92915050565b5f838152600360205260409020546001600160a01b03165b9392505050565b5f6108aa826107f0565b50915050603f1960408216016108d65760405163a2a7201360e01b8152600481018390526024016107ad565b6108e08383612fcf565b505050565b5f8080806108f2866107f0565b925092509250846001600160a01b0316836001600160a01b0316148061091d575061091d838661299f565b8061094157506001600160a01b0385166109368761085e565b6001600160a01b0316145b8015610954575061095282826130de565b155b9695505050505050565b6005546040516303a24d0760e21b8152600481018390526060916001600160a01b031690630e89341c906024015f60405180830381865afa1580156109a5573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526107ea9190810190614d78565b816109d78133611480565b6109f857803360405163168ab55d60e31b81526004016107ad929190614dea565b8260105f610a05836107f0565b5091505063ffffffff8282161615610a335760405163a2a7201360e01b8152600481018490526024016107ad565b604051630295720760e31b8152600481018790526001600160401b03861660248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906314ab9038906044015b5f604051808303815f87803b158015610aa2575f80fd5b505af1158015610ab4573d5f803e3d5ffd5b50505050505050505050565b5f336001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a6051614610b0a5760405163032634a760e31b815260040160405180910390fd5b5f808080610b1a86880188614e01565b83516020850120939750919550935091508890808214610b57576040516331970f3360e21b815260048101829052602481018390526044016107ad565b604051630a3b53db60e21b81526001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906328ed4f6c90610ba59085903090600401614dea565b5f604051808303815f87803b158015610bbc575f80fd5b505af1158015610bce573d5f803e3d5ffd5b5050604051636b727d4360e11b8152600481018d90525f92506276a70091506001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063d6e4fa8690602401602060405180830381865afa158015610c3c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c609190614e64565b610c6a9190614e8f565b9050610c7d87878761ffff16848861310d565b50630a85bd0160e11b9c9b505050505050505050505050565b610c9e613215565b600580546001600160a01b0319166001600160a01b0392909216919091179055565b81610ccb8133611480565b610cec57803360405163168ab55d60e31b81526004016107ad929190614dea565b8260085f610cf9836107f0565b5091505063ffffffff8282161615610d275760405163a2a7201360e01b8152600481018490526024016107ad565b604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a90610a8b9089908990600401614dea565b60066020525f908152604090208054610d8d90614eb6565b80601f0160208091040260200160405190810160405280929190818152602001828054610db990614eb6565b8015610e045780601f10610ddb57610100808354040283529160200191610e04565b820191905f5260205f20905b815481529060010190602001808311610de757829003601f168201915b505050505081565b5f87610e188133611480565b610e3957803360405163168ab55d60e31b81526004016107ad929190614dea565b87516020890120610e4a8a8261326e565b9250610e568a8461329a565b610e6083866133d3565b610e6b8a848b613406565b50610e788a8487876134cd565b9350610e8383613510565b610f33576040516305ef2c7f60e41b8152600481018b9052602481018290523060448201526001600160a01b0388811660648301526001600160401b03881660848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610f0a575f80fd5b505af1158015610f1c573d5f803e3d5ffd5b50505050610f2e8a848b8b89896135c6565b610fda565b6040516305ef2c7f60e41b8152600481018b9052602481018290523060448201526001600160a01b0388811660648301526001600160401b03881660848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610fb6575f80fd5b505af1158015610fc8573d5f803e3d5ffd5b50505050610fda8a848b8b89896135fc565b5050979650505050505050565b81518351146110495760405162461bcd60e51b815260206004820152602860248201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206044820152670dad2e6dac2e8c6d60c31b60648201526084016107ad565b6001600160a01b03841661106f5760405162461bcd60e51b81526004016107ad90614eee565b6001600160a01b03851633148061108b575061108b853361299f565b6110f25760405162461bcd60e51b815260206004820152603260248201527f455243313135353a207472616e736665722063616c6c6572206973206e6f74206044820152711bdddb995c881b9bdc88185c1c1c9bdd995960721b60648201526084016107ad565b5f5b83518110156111ad575f84828151811061111057611110614f33565b602002602001015190505f84838151811061112d5761112d614f33565b602002602001015190505f805f611143856107f0565b9250925092506111548583836136b6565b83600114801561117557508a6001600160a01b0316836001600160a01b0316145b6111915760405162461bcd60e51b81526004016107ad90614f47565b61119d858b848461375d565b50505050508060010190506110f4565b50836001600160a01b0316856001600160a01b0316336001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516111fd929190614f91565b60405180910390a461121333868686868661379d565b5050505050565b5f611225858561326e565b905061123181846133d3565b5f808061123d846107f0565b919450925090506001600160a01b03831615806112ea57506040516302571be360e01b81526004810185905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa1580156112ba573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112de9190614fbe565b6001600160a01b031614155b1561130857604051635374b59960e01b815260040160405180910390fd5b5f806113138a6107f0565b90935091508a905061134f576113298633611480565b61134a57853360405163168ab55d60e31b81526004016107ad929190614dea565b61137a565b6113598a33611480565b61137a57893360405163168ab55d60e31b81526004016107ad929190614dea565b6113858689846138f7565b611390878483613932565b9650620100008416158015906113b457508363ffffffff1688851763ffffffff1614155b156113d55760405163a2a7201360e01b8152600481018790526024016107ad565b96831796610ab486868a868b613977565b5f826113f28133611480565b61141357803360405163168ab55d60e31b81526004016107ad929190614dea565b8360025f611420836107f0565b5091505063ffffffff828216161561144e5760405163a2a7201360e01b8152600481018490526024016107ad565b5f808061145a8a6107f0565b9250925092506114738a84848c61ffff16178485613977565b5098975050505050505050565b5f80808061148d866107f0565b925092509250846001600160a01b0316836001600160a01b031614806109415750610941838661299f565b6060815183511461151d5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b60648201526084016107ad565b5f83516001600160401b0381111561153757611537614525565b604051908082528060200260200182016040528015611560578160200160208202803683370190505b5090505f5b84518110156115cf576115aa85828151811061158357611583614f33565b602002602001015185838151811061159d5761159d614f33565b6020026020010151610746565b8282815181106115bc576115bc614f33565b6020908102919091010152600101611565565b509392505050565b6115df613215565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af115801561162b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061164f9190614fd9565b50505050565b5f6107ea82613a1e565b5f8061166b858561326e565b905061167681613510565b61169357604051635374b59960e01b815260040160405180910390fd5b5f61169e86336108e5565b9050801580156116b557506116b38233611480565b155b156116d757813360405163168ab55d60e31b81526004016107ad929190614dea565b5f80806116e3856107f0565b925092509250831580156116fa5750620400008216155b1561171b5760405163a2a7201360e01b8152600481018690526024016107ad565b5f6117258a6107f0565b92505050611734888383613932565b97506117428685858b613a33565b6040516001600160401b038916815286907ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b1329060200160405180910390a2509598975050505050505050565b611796613215565b61179f5f613a49565b565b6117b85f805160206154fc8339815191528461326e565b6117c28133611480565b6117e357803360405163168ab55d60e31b81526004016107ad929190614dea565b306001600160a01b0384160361181757604051632ca49b0d60e11b81526001600160a01b03841660048201526024016107ad565b6118376118315f805160206154fc8339815191528661326e565b83613a98565b604051632142170760e11b81523060048201526001600160a01b038481166024830152604482018690527f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906342842e0e906064015f604051808303815f87803b1580156118a4575f80fd5b505af11580156118b6573d5f803e3d5ffd5b5050505050505050565b5f8086866040516118d2929190614ff4565b6040519081900381206331a9108f60e11b82526004820181905291505f907f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa15801561193f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119639190614fbe565b90506001600160a01b0381163314801590611a09575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063e985e9c590604401602060405180830381865afa1580156119e3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a079190614fd9565b155b15611a4157611a255f805160206154fc8339815191528361326e565b3360405163168ab55d60e31b81526004016107ad929190614dea565b6040516323b872dd60e01b81526001600160a01b038281166004830152306024830152604482018490527f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906323b872dd906064015f604051808303815f87803b158015611aae575f80fd5b505af1158015611ac0573d5f803e3d5ffd5b5050604051630a3b53db60e21b81526001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a6051692506328ed4f6c9150611b129085903090600401614dea565b5f604051808303815f87803b158015611b29575f80fd5b505af1158015611b3b573d5f803e3d5ffd5b5050604051636b727d4360e11b8152600481018590526276a70092507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b0316915063d6e4fa8690602401602060405180830381865afa158015611ba7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611bcb9190614e64565b611bd59190614e8f565b9250611c1d88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508a9250505061ffff8816868861310d565b505095945050505050565b6001600160a01b0382163303611c925760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084016107ad565b335f8181526002602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b335f9081526004602052604081205460ff16611d2b5760405162461bcd60e51b81526004016107ad90615003565b5f8787604051611d3c929190614ff4565b604051908190038120633f2891eb60e21b8252600482018190523060248301526044820187905291507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b03169063fca247ac906064016020604051808303815f875af1158015611db5573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611dd99190614e64565b9150611e2d88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508a9250505061ffff8616611e276276a70087614e8f565b8861310d565b509695505050505050565b5f80611e43846107f0565b50841663ffffffff908116908516149250505092915050565b611e64613215565b6007546001600160a01b031615611f785760075460405163a22cb46560e01b81526001600160a01b0391821660048201525f60248201527f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063a22cb465906044015f604051808303815f87803b158015611ee0575f80fd5b505af1158015611ef2573d5f803e3d5ffd5b505060075460405163a22cb46560e01b81526001600160a01b0391821660048201525f60248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9909116925063a22cb46591506044015f604051808303815f87803b158015611f61575f80fd5b505af1158015611f73573d5f803e3d5ffd5b505050505b600780546001600160a01b0319166001600160a01b0383169081179091551561209b5760075460405163a22cb46560e01b81526001600160a01b039182166004820152600160248201527f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063a22cb465906044015f604051808303815f87803b158015612007575f80fd5b505af1158015612019573d5f803e3d5ffd5b505060075460405163a22cb46560e01b81526001600160a01b039182166004820152600160248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9909116925063a22cb46591506044015f604051808303815f87803b158015612089575f80fd5b505af1158015611213573d5f803e3d5ffd5b50565b335f9081526004602052604081205460ff166120cc5760405162461bcd60e51b81526004016107ad90615003565b5f6120e45f805160206154fc8339815191528561326e565b60405163c475abff60e01b815260048101869052602481018590529091505f906001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063c475abff906044016020604051808303815f875af1158015612154573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906121789190614e64565b6040516331a9108f60e11b8152600481018790529091507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa9250505080156121fc575060408051601f3d908101601f191682019092526121f991810190614fbe565b60015b6122095791506107ea9050565b6001600160a01b038116301415806122b157506040516302571be360e01b81526004810184905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015612281573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906122a59190614fbe565b6001600160a01b031614155b156122c0575091506107ea9050565b505f6122cf6276a70083614e8f565b5f8481526001602052604090205490915060a081901c6122f185838386613a33565b50919695505050505050565b5f866123098133611480565b61232a57803360405163168ab55d60e31b81526004016107ad929190614dea565b5f878760405161233b929190614ff4565b6040518091039020905061234f898261326e565b925061235b898461329a565b61236583866133d3565b5f6123a68a858b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061340692505050565b90506123b48a8588886134cd565b94506123bf84613510565b61246b576040516306ab592360e01b8152600481018b9052602481018390523060448201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906306ab5923906064016020604051808303815f875af1158015612434573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906124589190614e64565b506124668482898989613b83565b6124b0565b6124b08a858b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508d92508c91508b90506135fc565b5050509695505050505050565b5f6125005f86868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613bc59050565b6007549091506001600160a01b031661252c5760405163093075b560e21b815260040160405180910390fd5b6125368133611480565b61255757803360405163168ab55d60e31b81526004016107ad929190614dea565b5f8080612563846107f0565b919450925090505f6125748561085e565b905061257f85613c81565b60075f9054906101000a90046001600160a01b03166001600160a01b0316639198c2768a8a878787878e8e6040518963ffffffff1660e01b81526004016125cd989796959493929190615073565b5f604051808303815f87803b1580156125e4575f80fd5b505af11580156125f6573d5f803e3d5ffd5b50505050505050505050505050565b836126108133611480565b61263157803360405163168ab55d60e31b81526004016107ad929190614dea565b84601c5f61263e836107f0565b5091505063ffffffff828216161561266c5760405163a2a7201360e01b8152600481018490526024016107ad565b60405163cf40882360e01b8152600481018990523060248201526001600160a01b0387811660448301526001600160401b03871660648301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063cf408823906084015f604051808303815f87803b1580156126e8575f80fd5b505af11580156126fa573d5f803e3d5ffd5b5050506001600160a01b038816905061275f575f612717896107f0565b509150506201ffff196202000082160161274f57604051632ca49b0d60e11b81526001600160a01b03891660048201526024016107ad565b612759895f613a98565b506118b6565b5f61276989611655565b905061278981898b5f1c600160405180602001604052805f815250613d1e565b505050505050505050565b61279e838361326e565b6127a88133611480565b6127c957803360405163168ab55d60e31b81526004016107ad929190614dea565b7f6c32148f748aba23997146d7fe89e962e3cc30271290fb96f5f4337756c03b5284016128095760405163615a470360e01b815260040160405180910390fd5b6001600160a01b038216158061282757506001600160a01b03821630145b1561285057604051632ca49b0d60e11b81526001600160a01b03831660048201526024016107ad565b61164f611831858561326e565b5f80612869848461326e565b90505f61287582613510565b90505f805160206154fc83398151915285146128945791506107ea9050565b6040516331a9108f60e11b8152600481018590527f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa925050508015612915575060408051601f3d908101601f1916820190925261291291810190614fbe565b60015b612923575f925050506107ea565b6001600160a01b0316301492506107ea915050565b612940613215565b6001600160a01b0382165f81815260046020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf8791015b60405180910390a25050565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205460ff1690565b5f80612a105f87878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613dfe9050565b915091505f612a578288888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613bc59050565b90505f612a64828561326e565b5f818152600660205260409020909150612a7f888a8361511e565b507f6c32148f748aba23997146d7fe89e962e3cc30271290fb96f5f4337756c03b528201612ac05760405163615a470360e01b815260040160405180910390fd5b6040516302571be360e01b8152600481018290525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa158015612b25573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612b499190614fbe565b90506001600160a01b0381163314801590612bef575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063e985e9c590604401602060405180830381865afa158015612bc9573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612bed9190614fd9565b155b15612c1157813360405163168ab55d60e31b81526004016107ad929190614dea565b6001600160a01b03861615612c9c57604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a90612c6e9085908a90600401614dea565b5f604051808303815f87803b158015612c85575f80fd5b505af1158015612c97573d5f803e3d5ffd5b505050505b604051635b0fc9c360e01b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635b0fc9c390612cea9085903090600401614dea565b5f604051808303815f87803b158015612d01575f80fd5b505af1158015612d13573d5f803e3d5ffd5b50505050612789828a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201829052508d93509150819050613b83565b6001600160a01b038416612d7f5760405162461bcd60e51b81526004016107ad90614eee565b6001600160a01b038516331480612d9b5750612d9b853361299f565b612df95760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2063616c6c6572206973206e6f74206f776e6572206e6f7260448201526808185c1c1c9bdd995960ba1b60648201526084016107ad565b6112138585858585613d1e565b612e0e613215565b6001600160a01b038116612e735760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107ad565b61209b81613a49565b5f8181526006602052604081208054829190612e9790614eb6565b80601f0160208091040260200160405190810160405280929190818152602001828054612ec390614eb6565b8015612f0e5780601f10612ee557610100808354040283529160200191612f0e565b820191905f5260205f20905b815481529060010190602001808311612ef157829003601f168201915b5050505050905080515f03612f2557505f92915050565b5f80612f318382613dfe565b90925090505f612f418483613bc5565b9050610954818461285d565b5f8042836001600160401b03161015612f775761ffff1962010000851601612f73575f94505b5f93505b50929391925050565b5f6001600160e01b03198216636cdb3d1360e11b1480612fb057506001600160e01b031982166303a24d0760e21b145b806107ea57506301ffc9a760e01b6001600160e01b03198316146107ea565b5f612fd982611655565b9050806001600160a01b0316836001600160a01b0316036130465760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084016107ad565b336001600160a01b03821614806130625750613062813361299f565b6130d45760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016107ad565b6108e08383613eb2565b5f620200008381161480156108995750426130fc6276a700846151d7565b6001600160401b0316109392505050565b845160208601205f61312c5f805160206154fc8339815191528361326e565b90505f61315488604051806040016040528060058152602001626cae8d60e31b815250613f1f565b5f83815260066020526040902090915061316e82826151f7565b50613181828289620300008a1789613b83565b6001600160a01b038416156118b657604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a906131de9085908890600401614dea565b5f604051808303815f87803b1580156131f5575f80fd5b505af1158015613207573d5f803e3d5ffd5b505050505050505050505050565b5f546001600160a01b0316331461179f5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107ad565b604080516020808201949094528082019290925280518083038201815260609092019052805191012090565b5f80806132a6846107f0565b91945092509050426001600160401b0382161080801561336657506001600160a01b038416158061336657506040516302571be360e01b8152600481018690525f906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015613337573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061335b9190614fbe565b6001600160a01b0316145b156133a4575f613375876107f0565b50915050602081161561339e5760405163a2a7201360e01b8152600481018790526024016107ad565b506133cb565b620100008316156133cb5760405163a2a7201360e01b8152600481018690526024016107ad565b505050505050565b63fffdffff81811763ffffffff16146134025760405163a2a7201360e01b8152600481018390526024016107ad565b5050565b60605f6134aa8360065f8881526020019081526020015f20805461342990614eb6565b80601f016020809104026020016040519081016040528092919081815260200182805461345590614eb6565b80156134a05780601f10613477576101008083540402835291602001916134a0565b820191905f5260205f20905b81548152906001019060200180831161348357829003601f168201915b5050505050613f1f565b5f8581526006602052604090209091506134c482826151f7565b50949350505050565b5f806134d8856107f0565b925050505f806134e9885f1c6107f0565b92509250506134f98787846138f7565b613504858483613932565b98975050505050505050565b5f8061351b83611655565b6001600160a01b0316141580156107ea57506040516302571be360e01b81526004810183905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015613592573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906135b69190614fbe565b6001600160a01b03161492915050565b5f86815260066020526040812080546135e491879161342990614eb6565b90506135f38682868686613b83565b50505050505050565b5f8080613608886107f0565b9250925092505f61362f8860065f8d81526020019081526020015f20805461342990614eb6565b5f8a815260066020526040902080549192509061364b90614eb6565b90505f0361366c575f89815260066020526040902061366a82826151f7565b505b61367b89858886178589613977565b6001600160a01b03871661369857613693895f613a98565b610ab4565b610ab484888b5f1c600160405180602001604052805f815250613d1e565b6201ffff19620200008316016136d6576136d36276a700826151d7565b90505b42816001600160401b0316101561370f576201000082161561370a5760405162461bcd60e51b81526004016107ad90614f47565b613734565b60048216156137345760405163a2a7201360e01b8152600481018490526024016107ad565b604082165f036108e05750505f90815260036020526040902080546001600160a01b0319169055565b60c0816001600160401b0316901b60a08363ffffffff16901b846001600160a01b0316171760015f8681526020019081526020015f208190555050505050565b6001600160a01b0384163b156133cb5760405163bc197c8160e01b81526001600160a01b0385169063bc197c81906137e190899089908890889088906004016152b2565b6020604051808303815f875af192505050801561381b575060408051601f3d908101601f1916820190925261381891810190615303565b60015b6138c75761382761531e565b806308c379a003613860575061383b615337565b806138465750613862565b8060405162461bcd60e51b81526004016107ad91906143d4565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e20455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b60648201526084016107ad565b6001600160e01b0319811663bc197c8160e01b146135f35760405162461bcd60e51b81526004016107ad906153bf565b63ffff000082161580159060018316159082906139115750805b156112135760405163a2a7201360e01b8152600481018690526024016107ad565b5f816001600160401b0316846001600160401b03161115613951578193505b826001600160401b0316846001600160401b0316101561396f578293505b509192915050565b61398385858584613a33565b60405163ffffffff8416815285907f39873f00c80f4f94b7bd1594aebcf650f003545b74824d57ddf4939e3ff3a34b9060200160405180910390a2816001600160401b0316816001600160401b03161115611213576040516001600160401b038216815285907ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b132906020015b60405180910390a25050505050565b5f80613a29836107f0565b5090949350505050565b613a3d8483613f96565b61164f8484848461375d565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b613aa3826001611e38565b15613ac45760405163a2a7201360e01b8152600481018390526024016107ad565b613acd82613c81565b604051635b0fc9c360e01b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635b0fc9c390613b1b9085908590600401614dea565b5f604051808303815f87803b158015613b32575f80fd5b505af1158015613b44573d5f803e3d5ffd5b50506040516001600160a01b03841681528492507fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c49150602001612993565b613b8f85848484613fcf565b847f8ce7013e8abebc55c3890a68f5a27c67c3f7efa64e584de5fb22363c606fd34085858585604051613a0f9493929190615407565b5f805f613bd28585613dfe565b909250905081613c435760018551613bea919061544d565b8414613c385760405162461bcd60e51b815260206004820152601d60248201527f6e616d65686173683a204a756e6b20617420656e64206f66206e616d6500000060448201526064016107ad565b505f91506107ea9050565b613c4d8582613bc5565b6040805160208101929092528101839052606001604051602081830303815290604052805190602001209250505092915050565b5f8181526001602052604090205460a081901c60c082901c613ca4838383612f4d565b5f86815260036020526040812080546001600160a01b0319169055909350613cd091508590848461375d565b60408051858152600160208201525f916001600160a01b0386169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b5f805f613d2a866107f0565b925092509250613d3b8683836136b6565b846001148015613d5c5750876001600160a01b0316836001600160a01b0316145b613d785760405162461bcd60e51b81526004016107ad90614f47565b866001600160a01b0316836001600160a01b031603613d9957505050611213565b613da58688848461375d565b60408051878152602081018790526001600160a01b03808a1692908b169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46118b6338989898989614041565b5f8083518310613e505760405162461bcd60e51b815260206004820152601e60248201527f726561644c6162656c3a20496e646578206f7574206f6620626f756e6473000060448201526064016107ad565b5f848481518110613e6357613e63614f33565b016020015160f81c90508015613e8f57613e8885613e82866001615460565b836140fb565b9250613e93565b5f92505b613e9d8185615460565b613ea8906001615460565b9150509250929050565b5f81815260036020526040902080546001600160a01b0319166001600160a01b0384169081179091558190613ee682611655565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6060600183511015613f4457604051631406d65b60e11b815260040160405180910390fd5b60ff83511115613f69578260405163e3ba295f60e01b81526004016107ad91906143d4565b82518383604051602001613f7f93929190615473565b604051602081830303815290604052905092915050565b61ffff811615801590613fae57506201000181811614155b156134025760405163a2a7201360e01b8152600481018390526024016107ad565b613fd98483613f96565b5f848152600160205260409020546001600160a01b0381161561403557613fff85613c81565b6040515f815285907fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c49060200160405180910390a25b6112138585858561411d565b6001600160a01b0384163b156133cb5760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e619061408590899089908890889088906004016154b7565b6020604051808303815f875af19250505080156140bf575060408051601f3d908101601f191682019092526140bc91810190615303565b60015b6140cb5761382761531e565b6001600160e01b0319811663f23a6e6160e01b146135f35760405162461bcd60e51b81526004016107ad906153bf565b82515f906141098385615460565b1115614113575f80fd5b5091016020012090565b835f808061412a846107f0565b9194509250905063ffff000082166001600160401b038087169083161115614150578195505b42826001600160401b03161061416557958617955b6001600160a01b038416156141bc5760405162461bcd60e51b815260206004820152601f60248201527f455243313135353a206d696e74206f66206578697374696e6720746f6b656e0060448201526064016107ad565b6001600160a01b03881661421c5760405162461bcd60e51b815260206004820152602160248201527f455243313135353a206d696e7420746f20746865207a65726f206164647265736044820152607360f81b60648201526084016107ad565b306001600160a01b038916036142915760405162461bcd60e51b815260206004820152603460248201527f455243313135353a206e65774f776e65722063616e6e6f74206265207468652060448201527313985b5955dc985c1c195c8818dbdb9d1c9858dd60621b60648201526084016107ad565b61429d8589898961375d565b60408051868152600160208201526001600160a01b038a16915f9133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4612789335f8a88600160405180602001604052805f815250614041565b6001600160a01b038116811461209b575f80fd5b5f8060408385031215614327575f80fd5b823561433281614302565b946020939093013593505050565b5f60208284031215614350575f80fd5b5035919050565b6001600160e01b03198116811461209b575f80fd5b5f6020828403121561437c575f80fd5b813561089981614357565b5f5b838110156143a1578181015183820152602001614389565b50505f910152565b5f81518084526143c0816020860160208601614387565b601f01601f19169290920160200192915050565b602081525f61089960208301846143a9565b5f80604083850312156143f7575f80fd5b82359150602083013561440981614302565b809150509250929050565b80356001600160401b038116811461442a575f80fd5b919050565b5f8060408385031215614440575f80fd5b8235915061445060208401614414565b90509250929050565b5f8083601f840112614469575f80fd5b5081356001600160401b0381111561447f575f80fd5b602083019150836020828501011115614496575f80fd5b9250929050565b5f805f805f608086880312156144b1575f80fd5b85356144bc81614302565b945060208601356144cc81614302565b93506040860135925060608601356001600160401b038111156144ed575f80fd5b6144f988828901614459565b969995985093965092949392505050565b5f6020828403121561451a575f80fd5b813561089981614302565b634e487b7160e01b5f52604160045260245ffd5b601f8201601f191681016001600160401b038111828210171561455e5761455e614525565b6040525050565b5f6001600160401b0382111561457d5761457d614525565b50601f01601f191660200190565b5f82601f83011261459a575f80fd5b81356145a581614565565b6040516145b28282614539565b8281528560208487010111156145c6575f80fd5b826020860160208301375f92810160200192909252509392505050565b803563ffffffff8116811461442a575f80fd5b5f805f805f805f60e0888a03121561460c575f80fd5b8735965060208801356001600160401b03811115614628575f80fd5b6146348a828b0161458b565b965050604088013561464581614302565b9450606088013561465581614302565b935061466360808901614414565b925061467160a089016145e3565b915061467f60c08901614414565b905092959891949750929550565b5f6001600160401b038211156146a5576146a5614525565b5060051b60200190565b5f82601f8301126146be575f80fd5b813560206146cb8261468d565b6040516146d88282614539565b80915083815260208101915060208460051b8701019350868411156146fb575f80fd5b602086015b84811015611e2d5780358352918301918301614700565b5f805f805f60a0868803121561472b575f80fd5b853561473681614302565b9450602086013561474681614302565b935060408601356001600160401b0380821115614761575f80fd5b61476d89838a016146af565b94506060880135915080821115614782575f80fd5b61478e89838a016146af565b935060808801359150808211156147a3575f80fd5b506147b08882890161458b565b9150509295509295909350565b5f805f80608085870312156147d0575f80fd5b84359350602085013592506147e7604086016145e3565b91506147f560608601614414565b905092959194509250565b803561ffff8116811461442a575f80fd5b5f8060408385031215614822575f80fd5b8235915061445060208401614800565b5f8060408385031215614843575f80fd5b82356001600160401b0380821115614859575f80fd5b818501915085601f83011261486c575f80fd5b813560206148798261468d565b6040516148868282614539565b83815260059390931b85018201928281019150898411156148a5575f80fd5b948201945b838610156148cc5785356148bd81614302565b825294820194908201906148aa565b965050860135925050808211156148e1575f80fd5b50613ea8858286016146af565b5f815180845260208085019450602084015f5b8381101561491d57815187529582019590820190600101614901565b509495945050505050565b602081525f61089960208301846148ee565b5f805f6060848603121561494c575f80fd5b833561495781614302565b9250602084013561496781614302565b929592945050506040919091013590565b5f805f6060848603121561498a575f80fd5b83359250602084013591506149a160408501614414565b90509250925092565b5f805f606084860312156149bc575f80fd5b8335925060208401356149ce81614302565b915060408401356149de81614302565b809150509250925092565b5f805f805f608086880312156149fd575f80fd5b85356001600160401b03811115614a12575f80fd5b614a1e88828901614459565b9096509450506020860135614a3281614302565b9250614a4060408701614800565b91506060860135614a5081614302565b809150509295509295909350565b801515811461209b575f80fd5b5f8060408385031215614a7c575f80fd5b8235614a8781614302565b9150602083013561440981614a5e565b5f805f805f8060a08789031215614aac575f80fd5b86356001600160401b03811115614ac1575f80fd5b614acd89828a01614459565b9097509550506020870135614ae181614302565b9350604087013592506060870135614af881614302565b9150614b0660808801614800565b90509295509295509295565b5f8060408385031215614b23575f80fd5b82359150614450602084016145e3565b5f8060408385031215614b44575f80fd5b50508035926020909101359150565b5f805f805f8060a08789031215614b68575f80fd5b8635955060208701356001600160401b03811115614b84575f80fd5b614b9089828a01614459565b9096509450506040870135614ba481614302565b9250614bb2606088016145e3565b9150614b0660808801614414565b5f805f8060408587031215614bd3575f80fd5b84356001600160401b0380821115614be9575f80fd5b614bf588838901614459565b90965094506020870135915080821115614c0d575f80fd5b50614c1a87828801614459565b95989497509550505050565b5f805f8060808587031215614c39575f80fd5b843593506020850135614c4b81614302565b925060408501356147e781614302565b5f805f60608486031215614c6d575f80fd5b833592506020840135915060408401356149de81614302565b5f8060408385031215614c97575f80fd5b8235614ca281614302565b9150602083013561440981614302565b5f805f8060608587031215614cc5575f80fd5b84356001600160401b03811115614cda575f80fd5b614ce687828801614459565b9095509350506020850135614cfa81614302565b91506040850135614d0a81614302565b939692955090935050565b5f805f805f60a08688031215614d29575f80fd5b8535614d3481614302565b94506020860135614d4481614302565b9350604086013592506060860135915060808601356001600160401b03811115614d6c575f80fd5b6147b08882890161458b565b5f60208284031215614d88575f80fd5b81516001600160401b03811115614d9d575f80fd5b8201601f81018413614dad575f80fd5b8051614db881614565565b604051614dc58282614539565b828152866020848601011115614dd9575f80fd5b610954836020830160208701614387565b9182526001600160a01b0316602082015260400190565b5f805f8060808587031215614e14575f80fd5b84356001600160401b03811115614e29575f80fd5b614e358782880161458b565b9450506020850135614e4681614302565b9250614e5460408601614800565b91506060850135614d0a81614302565b5f60208284031215614e74575f80fd5b5051919050565b634e487b7160e01b5f52601160045260245ffd5b6001600160401b03818116838216019080821115614eaf57614eaf614e7b565b5092915050565b600181811c90821680614eca57607f821691505b602082108103614ee857634e487b7160e01b5f52602260045260245ffd5b50919050565b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b634e487b7160e01b5f52603260045260245ffd5b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b604081525f614fa360408301856148ee565b8281036020840152614fb581856148ee565b95945050505050565b5f60208284031215614fce575f80fd5b815161089981614302565b5f60208284031215614fe9575f80fd5b815161089981614a5e565b818382375f9101908152919050565b60208082526028908201527f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f604082015267373a3937b63632b960c11b606082015260800190565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b60c081525f61508660c083018a8c61504b565b6001600160a01b03898116602085015263ffffffff891660408501526001600160401b03881660608501528616608084015282810360a08401526150cb81858761504b565b9b9a5050505050505050505050565b601f8211156108e057805f5260205f20601f840160051c810160208510156150ff5750805b601f840160051c820191505b81811015611213575f815560010161510b565b6001600160401b0383111561513557615135614525565b615149836151438354614eb6565b836150da565b5f601f84116001811461517a575f85156151635750838201355b5f19600387901b1c1916600186901b178355611213565b5f83815260208120601f198716915b828110156151a95786850135825560209485019460019092019101615189565b50868210156151c5575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b6001600160401b03828116828216039080821115614eaf57614eaf614e7b565b81516001600160401b0381111561521057615210614525565b6152248161521e8454614eb6565b846150da565b602080601f831160018114615257575f84156152405750858301515b5f19600386901b1c1916600185901b1785556133cb565b5f85815260208120601f198616915b8281101561528557888601518255948401946001909101908401615266565b50858210156152a257878501515f19600388901b60f8161c191681555b5050505050600190811b01905550565b6001600160a01b0386811682528516602082015260a0604082018190525f906152dd908301866148ee565b82810360608401526152ef81866148ee565b9050828103608084015261350481856143a9565b5f60208284031215615313575f80fd5b815161089981614357565b5f60033d11156153345760045f803e505f5160e01c5b90565b5f60443d10156153445790565b6040516003193d81016004833e81513d6001600160401b03816024840111818411171561537357505050505090565b828501915081518181111561538b5750505050505090565b843d87010160208285010111156153a55750505050505090565b6153b460208286010187614539565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b608081525f61541960808301876143a9565b6001600160a01b039590951660208301525063ffffffff9290921660408301526001600160401b0316606090910152919050565b818103818111156107ea576107ea614e7b565b808201808211156107ea576107ea614e7b565b60ff60f81b8460f81b1681525f8351615493816001850160208801614387565b8351908301906154aa816001840160208801614387565b0160010195945050505050565b6001600160a01b03868116825285166020820152604081018490526060810183905260a0608082018190525f906154f0908301846143a9565b97965050505050505056fe93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4aea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2a68925cf5169f28586095d5b5b9933b3008f4c793a48be4f59b8b2bc62aa60a":"0x1","0x54cdd369e4e8a8515e52ca72ec816c2101831ad1f18bf44102ed171459c9b4f8":"0x2","0xa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb49":"0xffffffffffffffff000100010000000000000000000000000000000000000000","0xafa26c20e8b3d9a2853d642cfe1021dae26242ffedfac91c97aab212c1a4b93b":"0xffffffffffffffff000100010000000000000000000000000000000000000000","0xef5b11c47ebee44618abc22110e10e3b408ea5e799056d2b38461aa7b97c5a97":"0x1","0xfb9e8e321b8a5ec48f12a7b41f22c6e595d761285c9eb19d8dda7c99edf1b54f":"0x36574680000000000000000000000000000000000000000000000000000000a"}},"0x6e1eb616c7d69491f9a880f815ff5574768cba20":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b506004361061007a575f3560e01c806314ab90381161005857806314ab90381461010357806316a25cbd146101165780631896f70a146101625780635b0fc9c314610175575f80fd5b80630178b8bf1461007e57806302571be3146100c657806306ab5923146100ee575b5f80fd5b6100a961008c366004610403565b5f908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100a96100d4366004610403565b5f908152602081905260409020546001600160a01b031690565b6101016100fc366004610435565b610188565b005b610101610111366004610467565b610242565b610149610124366004610403565b5f90815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100bd565b6101016101703660046104a1565b6102e2565b6101016101833660046104a1565b610374565b5f8381526020819052604090205483906001600160a01b031633146101ab575f80fd5b60408051602080820187905281830186905282518083038401815260608301808552815191909201206001600160a01b0386169091529151859187917fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829181900360800190a35f90815260208190526040902080546001600160a01b0319166001600160a01b039390931692909217909155505050565b5f8281526020819052604090205482906001600160a01b03163314610265575f80fd5b60405167ffffffffffffffff8316815283907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a2505f91825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b5f8281526020819052604090205482906001600160a01b03163314610305575f80fd5b6040516001600160a01b038316815283907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a2505f9182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b5f8281526020819052604090205482906001600160a01b03163314610397575f80fd5b6040516001600160a01b038316815283907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a2505f9182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b5f60208284031215610413575f80fd5b5035919050565b80356001600160a01b0381168114610430575f80fd5b919050565b5f805f60608486031215610447575f80fd5b833592506020840135915061045e6040850161041a565b90509250925092565b5f8060408385031215610478575f80fd5b82359150602083013567ffffffffffffffff81168114610496575f80fd5b809150509250929050565b5f80604083850312156104b2575f80fd5b823591506104c26020840161041a565b9050925092905056fea164736f6c6343000818000a","storage":{"0x859ecef2e168dc10231b000bd53493b42bc9d944cac29d94582c1e1d43592131":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x7bb6cd9be29fab783c0b494a06fed8b2e2596b7a":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100ea5760003560e01c80636debcb8d1161008c578063b34f33c511610066578063b34f33c514610741578063d0778d6c14610814578063ef2c3088146108f2578063f5090c1e14610980576100ea565b80636debcb8d146105ca5780636fab95b3146106585780637b1039991461071d576100ea565b8063511f1112116100c8578063511f1112146103c557806361603dd91461044857806368b6154f146104bd5780636ccbae5f1461059b576100ea565b806307eca395146100ef578063280d9b051461021457806330135293146102f2575b600080fd5b610212600480360360a081101561010557600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561013457600080fd5b82018360208201111561014657600080fd5b803590602001918460018302840111600160201b8311171561016757600080fd5b919390929091602081019035600160201b81111561018457600080fd5b82018360208201111561019657600080fd5b803590602001918460018302840111600160201b831117156101b757600080fd5b919390929091602081019035600160201b8111156101d457600080fd5b8201836020820111156101e657600080fd5b803590602001918460018302840111600160201b8311171561020757600080fd5b509092509050610aae565b005b610212600480360360a081101561022a57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561026457600080fd5b82018360208201111561027657600080fd5b803590602001918460018302840111600160201b8311171561029757600080fd5b919390929091602081019035600160201b8111156102b457600080fd5b8201836020820111156102c657600080fd5b803590602001918460018302840111600160201b831117156102e757600080fd5b509092509050610c92565b6102126004803603608081101561030857600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561033757600080fd5b82018360208201111561034957600080fd5b803590602001918460018302840111600160201b8311171561036a57600080fd5b919390929091602081019035600160201b81111561038757600080fd5b82018360208201111561039957600080fd5b803590602001918460018302840111600160201b831117156103ba57600080fd5b509092509050610e3d565b610212600480360360608110156103db57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561040a57600080fd5b82018360208201111561041c57600080fd5b803590602001918460018302840111600160201b8311171561043d57600080fd5b509092509050610fcc565b6102126004803603604081101561045e57600080fd5b81359190810190604081016020820135600160201b81111561047f57600080fd5b82018360208201111561049157600080fd5b803590602001918460018302840111600160201b831117156104b257600080fd5b5090925090506110c9565b610212600480360360a08110156104d357600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561050d57600080fd5b82018360208201111561051f57600080fd5b803590602001918460018302840111600160201b8311171561054057600080fd5b919390929091602081019035600160201b81111561055d57600080fd5b82018360208201111561056f57600080fd5b803590602001918460018302840111600160201b8311171561059057600080fd5b5090925090506111ae565b6105b8600480360360208110156105b157600080fd5b50356113a8565b60408051918252519081900360200190f35b610212600480360360808110156105e057600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561061a57600080fd5b82018360208201111561062c57600080fd5b803590602001918460018302840111600160201b8311171561064d57600080fd5b5090925090506113ba565b6102126004803603606081101561066e57600080fd5b81359190810190604081016020820135600160201b81111561068f57600080fd5b8201836020820111156106a157600080fd5b803590602001918460018302840111600160201b831117156106c257600080fd5b919390929091602081019035600160201b8111156106df57600080fd5b8201836020820111156106f157600080fd5b803590602001918460018302840111600160201b8311171561071257600080fd5b5090925090506114d4565b610725611675565b604080516001600160a01b039092168252519081900360200190f35b6102126004803603608081101561075757600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561078657600080fd5b82018360208201111561079857600080fd5b803590602001918460018302840111600160201b831117156107b957600080fd5b919390929091602081019035600160201b8111156107d657600080fd5b8201836020820111156107e857600080fd5b803590602001918460018302840111600160201b8311171561080957600080fd5b509092509050611684565b610212600480360360a081101561082a57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561086457600080fd5b82018360208201111561087657600080fd5b803590602001918460018302840111600160201b8311171561089757600080fd5b919390929091602081019035600160201b8111156108b457600080fd5b8201836020820111156108c657600080fd5b803590602001918460018302840111600160201b831117156108e757600080fd5b5090925090506117de565b6102126004803603608081101561090857600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561094257600080fd5b82018360208201111561095457600080fd5b803590602001918460018302840111600160201b8311171561097557600080fd5b5090925090506119e4565b610212600480360360c081101561099657600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156109d057600080fd5b8201836020820111156109e257600080fd5b803590602001918460018302840111600160201b83111715610a0357600080fd5b919390929091602081019035600160201b811115610a2057600080fd5b820183602082011115610a3257600080fd5b803590602001918460018302840111600160201b83111715610a5357600080fd5b919390929091602081019035600160201b811115610a7057600080fd5b820183602082011115610a8257600080fd5b803590602001918460018302840111600160201b83111715610aa357600080fd5b509092509050611ad3565b610bb163ce9fb82b89898989898960405160240180876001600160a01b03166001600160a01b0316815260200186815260200180602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f820116905080830192505050985050505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208884848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b600154604051630119f80560e21b81526001600160a01b038a811660048301908152602483018b9052608060448401908152608484018a90529190931692630467e014928c928c928c928c928c928c92909190606481019060a401878780828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f82011690508083019250505098505050505050505050600060405180830381600087803b158015610c7057600080fd5b505af1158015610c84573d6000803e3d6000fd5b505050505050505050505050565b610d8363b88d4fde888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040516315eab15d60e21b81526001600160a01b03898116600483019081528982166024840152604483018990526080606484019081526084840188905291909316926357aac574928b928b928b928b928b929160a401848480828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b158015610e1c57600080fd5b505af1158015610e30573d6000803e3d6000fd5b5050505050505050505050565b610f09637c69eae28787878760405160240180856001600160a01b03166001600160a01b0316815260200184815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09d909d1b9c909c178c529351909a208a51918d01849004840282018401909a528b81528f985096508b95508a94508493505085019050838280828437600092019190915250611d5492505050565b600154604051630119f80560e21b81526001600160a01b038881166004830190815260248301899052608060448401908152608484018890529190931692630467e014928a928a928a928a9290606481019060a401858580828437600081840152601f19601f8201169050808301925050508381038252600081526020016020019650505050505050600060405180830381600087803b158015610fac57600080fd5b505af1158015610fc0573d6000803e3d6000fd5b50505050505050505050565b604080516001600160a01b038616602482015260448082018690528251808303909101815260649091018252602081810180516001600160e01b0316632392c18960e01b17815291519091208251601f85018390048302810183019093528383526110569290918691908690869081908401838280828437600092019190915250611d5492505050565b60015460408051631292e83560e11b81526001600160a01b0387811660048301526024820187905291519190921691632525d06a91604480830192600092919082900301818387803b1580156110ab57600080fd5b505af11580156110bf573d6000803e3d6000fd5b5050505050505050565b6040805160248082018690528251808303909101815260449091018252602081810180516001600160e01b0316630852cd8d60e31b17815291519091208251601f85018390048302810183019093528383526111449290918691908690869081908401838280828437600092019190915250611d5492505050565b6001546040805163e67ca8a360e01b81526004810186905290516001600160a01b039092169163e67ca8a39160248082019260009290919082900301818387803b15801561119157600080fd5b505af11580156111a5573d6000803e3d6000fd5b50505050505050565b61129f639e5be9a5888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b03909316926302759c37928b928b9286926368b62d32928d928d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561132757600080fd5b505afa15801561133b573d6000803e3d6000fd5b505050506040513d602081101561135157600080fd5b5051604080516001600160e01b031960e087901b1681526001600160a01b03948516600482015292909316602483015260448201529051606480830192600092919082900301818387803b158015610e1c57600080fd5b60009081526020819052604090205490565b604080516001600160a01b0380881660248301528616604482015260648082018690528251808303909101815260849091018252602081810180516001600160e01b0316632142170760e11b17815291519091208251601f850183900483028101830190935283835261144c9290918691908690869081908401838280828437600092019190915250611d5492505050565b600154604080516315eab15d60e21b81526001600160a01b0388811660048301528781166024830152604482018790526080606483015260006084830181905292519316926357aac5749260c48084019391929182900301818387803b1580156114b557600080fd5b505af11580156114c9573d6000803e3d6000fd5b505050505050505050565b611585635cbe11128686866040516024018084815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09c909c1b9b909b178b5293519099208951918c018490048402820184019099528a81528e975095508a9450899350839250508401838280828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b039093169263e67ca8a39284926368b62d32928b928b928b929190606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561160b57600080fd5b505afa15801561161f573d6000803e3d6000fd5b505050506040513d602081101561163557600080fd5b5051604080516001600160e01b031960e085901b168152600481019290925251602480830192600092919082900301818387803b1580156114b557600080fd5b6001546001600160a01b031690565b61175063d8d3cc6e8787878760405160240180856001600160a01b03166001600160a01b0316815260200184815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09d909d1b9c909c178c529351909a208a51918d01849004840282018401909a528b81528f985096508b95508a94508493505085019050838280828437600092019190915250611d5492505050565b60015460405163b546666960e01b81526001600160a01b03888116600483019081526024830189905260606044840190815260648401889052919093169263b5466669928a928a928a928a9290608401848480828437600081840152601f19601f82011690508083019250505095505050505050600060405180830381600087803b158015610fac57600080fd5b6118cf639d743989888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b03909316926357aac574928b928b9286926368b62d32928d928d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561195757600080fd5b505afa15801561196b573d6000803e3d6000fd5b505050506040513d602081101561198157600080fd5b5051604080516001600160e01b031960e087901b1681526001600160a01b039485166004820152929093166024830152604482015260806064820152600060848201819052915160c4808301939282900301818387803b158015610e1c57600080fd5b604080516001600160a01b0380881660248301528616604482015260648082018690528251808303909101815260849091018252602081810180516001600160e01b03166323b872dd60e01b17815291519091208251601f8501839004830281018301909352838352611a769290918691908690869081908401838280828437600092019190915250611d5492505050565b600154604080516302759c3760e01b81526001600160a01b038881166004830152878116602483015260448201879052915191909216916302759c3791606480830192600092919082900301818387803b1580156114b557600080fd5b611bf063c29b52f98a8a8a8a8a8a8a60405160240180886001600160a01b03166001600160a01b03168152602001876001600160a01b03166001600160a01b0316815260200186815260200180602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f82011690508083019250505099505050505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208884848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b8152600481018a815260248201928352604482018990526001600160a01b03909316926357aac574928d928d9286926368b62d32928f928f928f92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b158015611c7857600080fd5b505afa158015611c8c573d6000803e3d6000fd5b505050506040513d6020811015611ca257600080fd5b50516040516001600160e01b031960e086901b1681526001600160a01b0380851660048301908152908416602483015260448201839052608060648301908152608483018b90528b928b92919060a401848480828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b158015611d3157600080fd5b505af1158015611d45573d6000803e3d6000fd5b50505050505050505050505050565b6000828152602081815260408083205481518084018890523060601b81840152605480820183905283518083039091018152607490910190925281519190920120909190611db3908490611da790611ea9565b9063ffffffff611efa16565b90506001600160a01b03811615801590611e4957506001546040805163430c208160e01b81526001600160a01b038481166004830152602482018890529151919092169163430c2081916044808301926020929190829003018186803b158015611e1c57600080fd5b505afa158015611e30573d6000803e3d6000fd5b505050506040513d6020811015611e4657600080fd5b50515b611e8e576040805162461bcd60e51b8152602060048201526011602482015270494e56414c49445f5349474e415455524560781b604482015290519081900360640190fd5b50505060009081526020819052604090208054600101905550565b604080517f19457468657265756d205369676e6564204d6573736167653a0a333200000000602080830191909152603c8083019490945282518083039094018452605c909101909152815191012090565b60008151604114611f0d57506000611fe3565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0821115611f535760009350505050611fe3565b8060ff16601b14158015611f6b57508060ff16601c14155b15611f7c5760009350505050611fe3565b6040805160008152602080820180845289905260ff8416828401526060820186905260808201859052915160019260a0808401939192601f1981019281900390910190855afa158015611fd3573d6000803e3d6000fd5b5050506020604051035193505050505b9291505056fea265627a7a7231582014816bfd0c1519ce8c4cf272eb0526ffdba3abef0df7f17deb0da40bd8abb77f64736f6c634300050c0032","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533"}},"0x7c3c91245769c8b7450ad522792dec4bd4bf797f":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b506004361061003f575f3560e01c80631bf7e13e146100435780636ccbae5f1461006c578063a424740014610099575b5f80fd5b610056610051366004610749565b6100bc565b604051610063919061082c565b60405180910390f35b61008b61007a36600461083e565b5f9081526001602052604090205490565b604051908152602001610063565b6100ac6100a7366004610749565b6101d6565b6040519015158152602001610063565b60605f5a90506100cd8585856101d6565b6101315760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e61676572466f727761726465723a205349474e415455604482015269149157d253959053125160b21b60648201526084015b60405180910390fd5b6101cb6101416020870187610870565b5f546001600160a01b031660408801358461015f60608b018b610889565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f9201919091525061023292505050565b9150505b9392505050565b5f61022a6101e38561093a565b5f54604080516020601f88018190048102820181019092528681526001600160a01b03909216919087908790819084018382808284375f9201919091525061030e92505050565b949350505050565b606061023d85610453565b5f80876001600160a01b0316866102568b8a898961047e565b60405161026391906109f5565b5f604051808303815f8787f1925050503d805f811461029d576040519150601f19603f3d011682016040523d82523d5f602084013e6102a2565b606091505b5090925090506102b3603f87610a10565b5a116102c1576102c1610a2f565b61030182826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506104ae565b9998505050505050505050565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015610352573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103769190610a43565b90505f6104238660600151805190602001208688602001516040516020016103c39392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561044957508551610449906001600160a01b031682866104e7565b9695505050505050565b5f8181526001602081905260409091205461046d91610a5a565b5f9182526001602052604090912055565b606082858560405160200161049593929190610a7f565b6040516020818303038152906040529050949350505050565b606083156104bd5750816101cf565b8251156104cd5782518084602001fd5b8160405162461bcd60e51b8152600401610128919061082c565b5f805f6104f48585610622565b90925090505f81600481111561050c5761050c610abd565b14801561052a5750856001600160a01b0316826001600160a01b0316145b1561053a576001925050506101cf565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401610561929190610ad1565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161059f91906109f5565b5f60405180830381855afa9150503d805f81146105d7576040519150601f19603f3d011682016040523d82523d5f602084013e6105dc565b606091505b50915091508180156105ef575080516020145b801561061657508051630b135d3f60e11b906106149083016020908101908401610a43565b145b98975050505050505050565b5f808251604103610656576020830151604084015160608501515f1a61064a87828585610664565b9450945050505061065d565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561069957505f90506003610740565b8460ff16601b141580156106b157508460ff16601c14155b156106c157505f90506004610740565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610712573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b03811661073a575f60019250925050610740565b91505f90505b94509492505050565b5f805f6040848603121561075b575f80fd5b833567ffffffffffffffff80821115610772575f80fd5b9085019060808288031215610785575f80fd5b9093506020850135908082111561079a575f80fd5b818601915086601f8301126107ad575f80fd5b8135818111156107bb575f80fd5b8760208285010111156107cc575f80fd5b6020830194508093505050509250925092565b5f5b838110156107f95781810151838201526020016107e1565b50505f910152565b5f81518084526108188160208601602086016107df565b601f01601f19169290920160200192915050565b602081525f6101cf6020830184610801565b5f6020828403121561084e575f80fd5b5035919050565b80356001600160a01b038116811461086b575f80fd5b919050565b5f60208284031215610880575f80fd5b6101cf82610855565b5f808335601e1984360301811261089e575f80fd5b83018035915067ffffffffffffffff8211156108b8575f80fd5b60200191503681900382131561065d575f80fd5b634e487b7160e01b5f52604160045260245ffd5b6040516080810167ffffffffffffffff81118282101715610903576109036108cc565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610932576109326108cc565b604052919050565b5f6080823603121561094a575f80fd5b6109526108e0565b61095b83610855565b81526020808401358183015260408401356040830152606084013567ffffffffffffffff8082111561098b575f80fd5b9085019036601f83011261099d575f80fd5b8135818111156109af576109af6108cc565b6109c1601f8201601f19168501610909565b915080825236848285010111156109d6575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b5f8251610a068184602087016107df565b9190910192915050565b5f82610a2a57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b5f60208284031215610a53575f80fd5b5051919050565b80820180821115610a7957634e487b7160e01b5f52601160045260245ffd5b92915050565b5f8451610a908184602089016107df565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f61022a604083018461080156fea164736f6c6343000818000a","storage":{"0x0":"0x39a27956b78d00a4e00ea8833ff0947410a2933f"}},"0x8861cdfa38838531275ce12f9e795c3b9ff29cbe":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x936188f2c3c8e8c95e425b6fe41c2ac9e701585e":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x94f57ed7e9af03a10e8eb23ce1b3c7914a182b0f":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x95f29431aeb52c0d5dbeeec36010b8e2ca69cb3d":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x9b2565a3545a1312bdcb6e7148a7f7cae8c2706b":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c806373cc48a61161008857806398d35f201161006357806398d35f2014610215578063bd7ed31a1461021d578063c327deef14610245578063d7b82ebe1461026d575f80fd5b806373cc48a6146101af5780638438dc04146101ef5780638da5cb5b14610202575f80fd5b806313af4035116100c357806313af40351461015657806328e7677d146101695780632c095cbb1461017c578063435cc1621461018f575f80fd5b8063020ed8d3146100e9578063087991bc146100fe5780630b1a249514610143575b5f80fd5b6100fc6100f73660046122ff565b610280565b005b61011161010c36600461238a565b610300565b6040805163ffffffff94851681529390921660208401526001600160601b031916908201526060015b60405180910390f35b6100fc610151366004612510565b61036c565b6100fc6101643660046125c6565b6104da565b6100fc6101773660046122ff565b610512565b6100fc61018a3660046125e1565b61058a565b6101a261019d366004612674565b610656565b60405161013a919061278c565b6101d76101bd36600461279e565b60046020525f90815260409020546001600160a01b031681565b6040516001600160a01b03909116815260200161013a565b6100fc6101fd3660046122ff565b6106d2565b6001546101d7906001600160a01b031681565b6101a261074a565b6101d761022b36600461279e565b60056020525f90815260409020546001600160a01b031681565b6101d761025336600461279e565b60036020525f90815260409020546001600160a01b031681565b6101a261027b3660046127b7565b6107d5565b6001546001600160a01b03163314610296575f80fd5b60ff82165f8181526003602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527ff73c3c226af96b7f1ba666a21b3ceaf2be3ee6a365e3178fd9cd1eaae0075aa891015b60405180910390a15050565b5f805f8060025f8787604051610317929190612817565b604080519182900390912082526020808301939093529081015f90812061ffff8b16825290925290205463ffffffff80821695506401000000008204169350600160401b900460601b91505093509350939050565b83516020808601919091205f90815260028252604080822061ffff891683529092529081205463ffffffff16906103a385846107ea565b90506103b0818784610889565b6103b8612239565b845151156103d7576103ca85856107ea565b90506103d7818885610889565b5f6103e1836108cc565b602081015190915060fe16156103f5575f80fd5b61040081602761092a565b158015610425575061041381600261092a565b1580610425575061042581600661092a565b61042d575f80fd5b61043e89898561012001518461093a565b156104795787516020808a01919091205f90815260028252604080822061ffff8d1683529092522080546001600160e01b03191690556104cf565b6104988884610120015183856101200151610493876108cc565b610968565b156100e55787516020808a01919091205f90815260028252604080822061ffff8d1683529092522080546001600160e01b03191690555b505050505050505050565b6001546001600160a01b031633146104f0575f80fd5b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6001546001600160a01b03163314610528575f80fd5b60ff82165f8181526004602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527f2fcc274c3b72dd483ab201bfa87295e3817e8b9b10693219873b722ca1af00c791016102f4565b610592612239565b61059c83836107ea565b805190915061ffff16602f146105b0575f80fd5b60a081015184516020808701919091205f90815260028252604080822061ffff8a16835290925220546105e9919063ffffffff16610a7c565b6105f1575f80fd5b5f6105fb82610a94565b9050805151602082015110156100e55761061c818361012001518789610aab565b505082516020808501919091205f90815260028252604080822061ffff881683529092522080546001600160e01b03191690555b50505050565b60605f83838080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201829052509394505050505b85518110156106c7576106bd8682815181106106af576106af612826565b602002602001015183610c4a565b9150600101610691565b5090505b9392505050565b6001546001600160a01b031633146106e8575f80fd5b60ff82165f8181526005602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527fc7eec866a7a1386188cc3ca20ffea75b71bd3e90a60b6791b1d3f0971145118d91016102f4565b5f80546107569061283a565b80601f01602080910402602001604051908101604052809291908181526020018280546107829061283a565b80156107cd5780601f106107a4576101008083540402835291602001916107cd565b820191905f5260205f20905b8154815290600101906020018083116107b057829003601f168201915b505050505081565b60606107e18383610c4a565b90505b92915050565b6107f2612239565b82516107fd90610dc6565b905061080d8160e0015183610ebf565b610815575f80fd5b5f61082382835f0151610f25565b604083015190915060ff16610838825f610fcc565b14610841575f80fd5b610120820181905260808201516108589042610a7c565b610860575f80fd5b61086e428360a00151610a7c565b610876575f80fd5b61088281838686611026565b5092915050565b6108978360a0015182610a7c565b61089f575f80fd5b825161ffff166032146108b0575f80fd5b6108bf83610120015183611106565b6108c7575f80fd5b505050565b6040805160c0810182525f8082526020820181905291810182905260608082018190526080820183905260a08201529061090583610a94565b60a081015160c08201519192506106cb91610921908290612880565b83519190611172565b5f6107e18360a001515f846112b4565b5f6109468284866113c1565b1561095d57610955828661092a565b159050610960565b505f5b949350505050565b60208101515f9060fe161561097b575f80fd5b5f610985866113e6565b90505f610991856113e6565b90505f8061099f8a82611401565b6109aa906001612893565b60ff1690505b8951811015610a6b57836109dc896109d784858f516109cf9190612880565b8f9190611424565b6114a4565b03610a3f575f6109f7876109d785868f516109cf9190612880565b90508660800151841015610a23578381118015610a175750866080015181105b95505050505050610a73565b83811180610a1757508660800151811095505050505050610a73565b905080610a4c8a82611401565b610a57906001612893565b610a649060ff16826128ac565b90506109b0565b505f93505050505b95945050505050565b5f80610a8883856128bf565b60030b12159392505050565b610a9c61228e565b6107e48261010001515f61152d565b60a084015184515f90610abe9083611548565b90505f8660a001518760c00151610ad59190612880565b9050818111610ae2575f80fd5b5f610aed868861159f565b9050805f03610b1a57610b0c610b0384866128ac565b895190876112b4565b15610b15575f80fd5b610b5b565b87515f90610b29908686611424565b90505f8213610b36575f80fd5b5f610b41898361159f565b12156104cf575f610b52888361159f565b126104cf575f80fd5b5050505050505050565b60c08101516020820181905281515111610b7c5750565b5f610b8e825f01518360200151611548565b8260200151610b9d91906128ac565b8251909150610bac90826116ec565b61ffff166040830152610bc06002826128ac565b8251909150610bcf90826116ec565b61ffff166060830152610be36002826128ac565b8251909150610bf29082611712565b63ffffffff166080830152610c086004826128ac565b82519091505f90610c1990836116ec565b61ffff169050610c2a6002836128ac565b60a084018190529150610c3d81836128ac565b60c0909301929092525050565b6060610c54612239565b610c5e84846107ea565b61012081015180516020918201205f908152600282526040808220845161ffff16835290925220805491925090600160401b900460601b6001600160601b03191615610cc35760a08201518154610cbb919063ffffffff16610a7c565b610cc3575f80fd5b604080516060808201835260a085015163ffffffff9081168352608086015181166020808501918252610100880180518051908301206001600160601b0319168688019081526101208a0180518051908501205f908152600285528981208c5161ffff16825290945292889020965187549451915190961c600160401b0268010000000000000000600160e01b03199186166401000000000267ffffffffffffffff19909516969095169590951792909217939093169190911790925551905191517f55ced933cdd5a34dd03eb5d4bef19ec6ebb251dcd7a988eee0c1b9a13baaa88b92610db192916128e6565b60405180910390a15061010001519392505050565b610dce612239565b610dd8825f6116ec565b61ffff168152610de9826002611401565b60ff166020820152610dfc826003611401565b60ff166040820152610e0f826004611712565b63ffffffff9081166060830152610e2b90839060089061171216565b63ffffffff9081166080830152610e47908390600c9061171216565b63ffffffff90811660a0830152610e639083906010906116ec16565b61ffff1660c0820152610e7782601261173a565b60e0820181905251610eb490610e8e9060126128ac565b8260e001515160128551610ea29190612880565b610eac9190612880565b849190611424565b610100820152919050565b5f80610ed5610ece8483611548565b84906116ec565b83516020808601919091208651878301205f90815260028352604080822061ffff90951682529390925291902054600160401b900460601b6001600160601b031990811691161491505092915050565b60605f610f3184610a94565b90505b8051516020820151101561088257606081015161ffff16600114610f56575f80fd5b81515f03610f6e57610f6781611754565b9150610fa7565b60208101518151610f7e91611548565b825114610f89575f80fd5b805160208201518351610f9f9285925f92611775565b610fa7575f80fd5b8261ffff16816040015161ffff1614610fbe575f80fd5b610fc781610b65565b610f34565b5f805b83518310610fdf57610fdf61290a565b5f610fea8585611401565b60ff169050610ffa8160016128ac565b61100490856128ac565b9350805f0361101357506107e1565b61101e6001836128ac565b915050610fcf565b83518360e00151511115611038575f80fd5b61105c5f858560e0015151875161104f9190612880565b60e0870151929190611797565b611064575f80fd5b5f61106f828261152d565b9050602b61ffff16816040015161ffff160361109d576110908484836117cb565b611098575f80fd5b6110ff565b603061ffff16816040015161ffff16036110bc5761109084848361185f565b60405162461bcd60e51b8152602060048201526014602482015273139bc81d985b1a59081c1c9bdbd988199bdd5b9960621b604482015260640160405180910390fd5b5050505050565b5f806111128482611401565b61111d906001612893565b60ff1690505f5b835181101561095d5761113984828785611797565b15611149576001925050506107e4565b6111538482611401565b61115e906001612893565b61116b9060ff16826128ac565b9050611124565b6040805160c0810182525f8082526020820181905291810182905260608082018190526080820183905260a0820152906111ac83856128ac565b90506111c26111bb5f866128ac565b8690611401565b60ff1682526111d56111bb6001866128ac565b60ff1660208301526111f26111eb6002866128ac565b86906116ec565b61ffff1660408301525f61121161120a6004876128ac565b8790611401565b905061121e6005866128ac565b945061122e868660ff8416611424565b606084015261124060ff8216866128ac565b94505f61124d8787611401565b905060208160ff16111561125f575f80fd5b61126a6001876128ac565b955061127a878760ff8416611900565b608085015261128c60ff8216876128ac565b95506112a48661129c8186612880565b899190611424565b60a0850152509195945050505050565b5f60ff600883811c82169183916112cc918616612932565b90505f6112dd600780871690612952565b600160ff919091161b9050855b87518110156113b4575f6112fe8983611401565b90505f61131661130f8460016128ac565b8b90611401565b90508160ff168660ff161015611334575f96505050505050506106cb565b8160ff168660ff1603611393578460ff168160ff161161135c575f96505050505050506106cb565b8361137f61136d60ff8816866128ac565b6113789060026128ac565b8c90611401565b1660ff165f141596505050505050506106cb565b61139e816002612893565b6113ab9060ff16846128ac565b925050506112ea565b505f979650505050505050565b5f806113cd85846114a4565b90505f6113d9856113e6565b9190911495945050505050565b5f6107e460016113f68484611401565b84919060ff1661193d565b5f82828151811061141457611414612826565b016020015160f81c905092915050565b825160609061143383856128ac565b111561143d575f80fd5b5f8267ffffffffffffffff811115611457576114576123d9565b6040519080825280601f01601f191660200182016040528015611481576020820181803683370190505b50905060208082019086860101611499828287611b43565b509095945050505050565b815160ff165f9081526005602052604080822054606085015182860151925163347ced5960e11b81526001600160a01b03909216926368f9dab2926114ee9291879160040161296b565b602060405180830381865afa158015611509573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107e191906129a4565b61153561228e565b82815260c081018290526107e481610b65565b5f815b8351811061155b5761155b61290a565b5f6115668583611401565b60ff1690506115768160016128ac565b61158090836128ac565b9150805f0361158f5750611595565b5061154b565b6109608382612880565b5f6115aa8383611b98565b156115b657505f6107e4565b5f805f805f6115c5885f610fcc565b90505f6115d2885f610fcc565b90505b808211156115fe578593506115ea8987611bb3565b9550816115f6816129bb565b9250506115d5565b81811115611627578492506116138886611bb3565b94508061161f816129bb565b9150506115fe565b5f8211801561163f575061163d89878a88611797565b155b15611674578593506116518987611bb3565b95508492506116608886611bb3565b945061166d600183612880565b9150611627565b855f0361168a575f1996505050505050506107e4565b845f036116a057600196505050505050506107e4565b6116df6116ae8560016128ac565b6116b88b87611401565b60ff168a6116c78760016128ac565b6116d18d89611401565b8e949392919060ff16611bd6565b9998505050505050505050565b81515f906116fb8360026128ac565b1115611705575f80fd5b50016002015161ffff1690565b81515f906117218360046128ac565b111561172b575f80fd5b50016004015163ffffffff1690565b60605f6117478484611548565b9050610960848483611424565b602081015181516060916107e49161176c9082611548565b84519190611424565b5f611781848484611cc6565b61178c878785611cc6565b149695505050505050565b5f6117af83838486516117aa9190612880565b611cc6565b6117c186868789516117aa9190612880565b1495945050505050565b5f806117d685610a94565b90505b8051516020820151101561095d57604081015161ffff166030146117fb575f80fd5b5f61180582611ce8565b90505f61181e5f835184611d049092919063ffffffff16565b905061182c81838989611da0565b1561184f5761184561183d84611754565b868385611e9b565b93505050506106cb565b505061185a81610b65565b6117d9565b5f6118778460e0015161187184611754565b90611b98565b61187f575f80fd5b815151602083015110156118f75761189e8460e0015161187184611754565b6118a6575f80fd5b5f6118b083611ce8565b90505f6118c95f835184611d049092919063ffffffff16565b90506118d781838888611da0565b156118e7576001925050506106cb565b50506118f282610b65565b61187f565b505f9392505050565b5f602082111561190e575f80fd5b835161191a83856128ac565b1115611924575f80fd5b506020919092018101519190036101000a5f1901191690565b5f603482111561194b575f80fd5b5f80805b84811015611a29575f8761196383896128ac565b8151811061197357611973612826565b01602001516001600160f81b0319169050600360fc1b81108015906119a65750603d60f91b6001600160f81b0319821611155b6119ae575f80fd5b604051806080016040528060478152602001612b5c604791396119d6603060f884901c612880565b815181106119e6576119e6612826565b0160209081015160f81c93508311156119fd575f80fd5b611a08600187612880565b8203611a145750611a29565b5060059290921b60ff8216179160010161194f565b505f611a368560056129d0565b9050611a436008866129e7565b5f03611a5a578160ff16600584901b179250611b29565b611a656008866129e7565b600203611a935760028260ff16901c60ff16600384901b179250600281611a8c9190612880565b9050611b29565b611a9e6008866129e7565b600403611ac55760048260ff16901c60ff16600184901b179250600481611a8c9190612880565b611ad06008866129e7565b600503611af75760018260ff16901c60ff16600484901b179250600181611a8c9190612880565b611b026008866129e7565b6007036100e55760038260ff16901c60ff16600284901b179250600381611a8c9190612880565b611b3581610100612880565b9290921b9695505050505050565b60208110611b7b5781518352611b5a6020846128ac565b9250611b676020836128ac565b9150611b74602082612880565b9050611b43565b905182516020929092036101000a5f190180199091169116179052565b5f815183511480156107e157506107e1835f845f8751611775565b5f611bbe8383611401565b60ff16611bcc8360016128ac565b6107e191906128ac565b5f8480831015611be35750815b6020878901810190858701015f5b83811015611cab5782518251808214611c7b575f6020871115611c1657505f19611c52565b600184611c24896020612880565b611c2e91906128ac565b611c399060086129d0565b611c44906002612ada565b611c4e9190612880565b1990505b5f611c61838316858416612ae5565b90508015611c78579750611cbc9650505050505050565b50505b611c866020866128ac565b9450611c936020856128ac565b93505050602081611ca491906128ac565b9050611bf1565b50611cb68589612ae5565b93505050505b9695505050505050565b82515f90611cd483856128ac565b1115611cde575f80fd5b5091016020012090565b60a081015160c08201516060916107e49161176c908290612880565b604080516080810182525f8082526020820181905291810191909152606080820152611d3a611d335f856128ac565b85906116ec565b61ffff168152611d55611d4e6002856128ac565b8590611401565b60ff166020820152611d6b611d4e6003856128ac565b60ff166040820152611d94611d816004856128ac565b611d8c600485612880565b869190611424565b60608201529392505050565b5f846020015160ff16600314611db757505f610960565b826020015160ff16856040015160ff1614611dd357505f610960565b5f611ddd85611f96565b90508360c0015161ffff168161ffff1614611dfb575f915050610960565b8551610100165f03611e10575f915050610960565b60408087015160ff165f908152600360209081529082902054855191860151925163de8f50a160e01b81526001600160a01b039091169263de8f50a192611e5c928a9290600401612b04565b602060405180830381865afa158015611e77573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611cbc9190612b3c565b5f80611ea683611f96565b90505b84515160208601511015611f8b5760a085015160c08601515f91611edb91611ed2908290612880565b88519190611d04565b90508161ffff16815f015161ffff1614611ef55750611f7d565b846040015160ff16816020015160ff1614611f105750611f7d565b60408051808201909152606081525f6020820152611f3c85518951611f3591906128ac565b8290611ff7565b50611f47818961205a565b50611f52818661205a565b50611f698260400151825f0151846060015161207f565b15611f7a5760019350505050610960565b50505b611f8685610b65565b611ea9565b505f95945050505050565b5f805f5b8351811015611fe8576001811615611fbe57611fb68482611401565b60ff16611fd0565b6008611fca8583611401565b60ff16901b5b611fde9061ffff16836128ac565b9150600101611f9a565b506106cb601082901c826128ac565b60408051808201909152606081525f60208201526120166020836129e7565b1561203e576120266020836129e7565b612031906020612880565b61203b90836128ac565b91505b506020828101829052604080518085525f815290920101905290565b60408051808201909152606081525f60208201526107e183845f015151848551612126565b60ff83165f908152600460205260408120546001600160a01b03166120a557505f6106cb565b60ff84165f90815260046020819052604091829020549151637bf41d7760e11b81526001600160a01b039092169163f7e83aee916120e79187918791016128e6565b602060405180830381865afa158015612102573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109609190612b3c565b60408051808201909152606081525f60208201528251821115612147575f80fd5b602085015161215683866128ac565b111561218957612189856121798760200151878661217491906128ac565b61220c565b6121849060026129d0565b612222565b5f808651805187602083010193508088870111156121a75787860182525b505050602084015b602084106121e757805182526121c66020836128ac565b91506121d36020826128ac565b90506121e0602085612880565b93506121af565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b5f8183111561221c5750816107e4565b50919050565b815161222e8383611ff7565b50610650838261205a565b60408051610140810182525f8082526020820181905291810182905260608082018390526080820183905260a0820183905260c082019290925260e08101829052610100810182905261012081019190915290565b6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b803560ff811681146122e3575f80fd5b919050565b6001600160a01b03811681146122fc575f80fd5b50565b5f8060408385031215612310575f80fd5b612319836122d3565b91506020830135612329816122e8565b809150509250929050565b803561ffff811681146122e3575f80fd5b5f8083601f840112612355575f80fd5b50813567ffffffffffffffff81111561236c575f80fd5b602083019150836020828501011115612383575f80fd5b9250929050565b5f805f6040848603121561239c575f80fd5b6123a584612334565b9250602084013567ffffffffffffffff8111156123c0575f80fd5b6123cc86828701612345565b9497909650939450505050565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff81118282101715612416576124166123d9565b604052919050565b5f82601f83011261242d575f80fd5b813567ffffffffffffffff811115612447576124476123d9565b61245a601f8201601f19166020016123ed565b81815284602083860101111561246e575f80fd5b816020850160208301375f918101602001919091529392505050565b5f6040828403121561249a575f80fd5b6040516040810167ffffffffffffffff82821081831117156124be576124be6123d9565b8160405282935084359150808211156124d5575f80fd5b6124e18683870161241e565b835260208501359150808211156124f6575f80fd5b506125038582860161241e565b6020830152505092915050565b5f805f805f60a08688031215612524575f80fd5b61252d86612334565b9450602086013567ffffffffffffffff80821115612549575f80fd5b61255589838a0161241e565b9550604088013591508082111561256a575f80fd5b61257689838a0161248a565b9450606088013591508082111561258b575f80fd5b61259789838a0161248a565b935060808801359150808211156125ac575f80fd5b506125b98882890161241e565b9150509295509295909350565b5f602082840312156125d6575f80fd5b81356107e1816122e8565b5f805f80608085870312156125f4575f80fd5b6125fd85612334565b9350602085013567ffffffffffffffff80821115612619575f80fd5b6126258883890161241e565b9450604087013591508082111561263a575f80fd5b6126468883890161248a565b9350606087013591508082111561265b575f80fd5b506126688782880161241e565b91505092959194509250565b5f805f60408486031215612686575f80fd5b833567ffffffffffffffff8082111561269d575f80fd5b818601915086601f8301126126b0575f80fd5b81356020828211156126c4576126c46123d9565b8160051b6126d38282016123ed565b928352848101820192828101908b8511156126ec575f80fd5b83870192505b8483101561272657823586811115612708575f80fd5b6127168d86838b010161248a565b83525091830191908301906126f2565b985050508701359250508082111561273c575f80fd5b506123cc86828701612345565b5f81518084525f5b8181101561276d57602081850181015186830182015201612751565b505f602082860101526020601f19601f83011685010191505092915050565b602081525f6107e16020830184612749565b5f602082840312156127ae575f80fd5b6107e1826122d3565b5f80604083850312156127c8575f80fd5b823567ffffffffffffffff808211156127df575f80fd5b6127eb8683870161248a565b93506020850135915080821115612800575f80fd5b5061280d8582860161241e565b9150509250929050565b818382375f9101908152919050565b634e487b7160e01b5f52603260045260245ffd5b600181811c9082168061284e57607f821691505b60208210810361221c57634e487b7160e01b5f52602260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b818103818111156107e4576107e461286c565b60ff81811683821601908111156107e4576107e461286c565b808201808211156107e4576107e461286c565b600382810b9082900b03637fffffff198112637fffffff821317156107e4576107e461286c565b604081525f6128f86040830185612749565b8281036020840152610a738185612749565b634e487b7160e01b5f52600160045260245ffd5b634e487b7160e01b5f52601260045260245ffd5b5f61ffff808416806129465761294661291e565b92169190910492915050565b60ff82811682821603908111156107e4576107e461286c565b606081525f61297d6060830186612749565b828103602084015261298f8186612749565b91505061ffff83166040830152949350505050565b5f602082840312156129b4575f80fd5b5051919050565b5f816129c9576129c961286c565b505f190190565b80820281158282048414176107e4576107e461286c565b5f826129f5576129f561291e565b500690565b600181815b80851115612a3457815f1904821115612a1a57612a1a61286c565b80851615612a2757918102915b93841c93908002906129ff565b509250929050565b5f82612a4a575060016107e4565b81612a5657505f6107e4565b8160018114612a6c5760028114612a7657612a92565b60019150506107e4565b60ff841115612a8757612a8761286c565b50506001821b6107e4565b5060208310610133831016604e8410600b8410161715612ab5575081810a6107e4565b612abf83836129fa565b805f1904821115612ad257612ad261286c565b029392505050565b5f6107e18383612a3c565b8181035f8312801583831316838312821617156108825761088261286c565b606081525f612b166060830186612749565b8281036020840152612b288186612749565b90508281036040840152611cbc8185612749565b5f60208284031215612b4c575f80fd5b815180151581146107e1575f80fdfe00010203040506070809ffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fffffffffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fa164736f6c6343000818000a","storage":{"0x0":"0xbd","0x1":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1471eb6eb2c5e789fc3de43f8ce62938c7d1836ec861730447e2ada8fd81017b":"0x17cda4e23f7237277952e075b1c48467aabfacc0","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563":"0x2b000100000e1000244a5c080249aac11d7b6f6446702e54a1607371607a","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e564":"0x1a41855200fd2ce1cdde32f24e8fb500002b000100000e1000244f660802e06d","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e565":"0x44b80b8f1d39a95c0b0d7c65d08458e880409bbc683457104237c7f8ec8d0000","0x3617319a054d772f909f7c479a2cebe5066e836a939412e32403c99029b92eff":"0x5155f5627bdf9795b3dbb8887001ada1eeba93f2","0x85aaa47b6dc46495bb8824fad4583769726fea36efd831a35556690b830a8fbe":"0x6e2822b8856749ed179c77140dbc5f5a27410a4","0x91da3fd0782e51c6b3986e9e672fd566868e71f3dbc2d6c2cd6fbb3e361af2a7":"0x49da8861c65460639925febe1fb4b5b59b443082","0x95c6356c1b7a542b884d2484ef785c9c7224e77e1016c20007bddc15c23b452f":"0x3f9151d3fd1a82dcc5091909589900fd60ee767ee090bba000000000","0xabd6e7cb50984ff9c2f3e18a2660c3353dadf4e3291deeb275dae2cd1e44fe05":"0x458f653495fb8d9bd0e7df468c2bf76d26c7bd9"}},"0x9dc64b2558b458a15c7f01c192d874ef460f0a29":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x9df67c91f1bfcb4d966cf764e9218685e7c59e8a":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101d1575f3560e01c80638b95dd71116100fe578063c86902331161009e578063e32954eb1161006e578063e32954eb146104f2578063e59d895d14610505578063e985e9c514610518578063f1cb7e0614610553575f80fd5b8063c869023314610435578063ce3decdc1461048c578063d5fa2b001461049f578063d700ff33146104b2575f80fd5b8063a8fa5682116100d9578063a8fa5682146103ac578063a9784b3e146103bf578063ac9650d814610402578063bc1c58d114610422575f80fd5b80638b95dd7114610373578063a22cb46514610386578063a4b91a0114610399575f80fd5b80633603d758116101745780635c98042b116101445780635c98042b14610327578063623195b01461033a578063691f34311461034d5780637737221314610360575f80fd5b80633603d758146102975780633b3b57de146102aa5780634cbf6ba4146102bd57806359d1d43c14610307575f80fd5b8063124a319c116101af578063124a319c146102255780632203ab561461025057806329cd62ea14610271578063304e6ade14610284575f80fd5b806301ffc9a7146101d55780630af179d7146101fd57806310f13a8c14610212575b5f80fd5b6101e86101e3366004612267565b610566565b60405190151581526020015b60405180910390f35b61021061020b3660046122bd565b610576565b005b610210610220366004612304565b610778565b610238610233366004612377565b610842565b6040516001600160a01b0390911681526020016101f4565b61026361025e3660046123a1565b610a87565b6040516101f492919061240e565b61021061027f366004612426565b610bb5565b6102106102923660046122bd565b610c4d565b6102106102a536600461244f565b610cc6565b6102386102b836600461244f565b610d64565b6101e86102cb3660046123a1565b5f82815260208181526040808320546001600160401b031683526006825280832094835293815283822092825291909152205461ffff16151590565b61031a6103153660046122bd565b610d93565b6040516101f49190612466565b61031a61033536600461244f565b610e6f565b610210610348366004612478565b610f2a565b61031a61035b36600461244f565b610fc2565b61021061036e3660046122bd565b610ffa565b6102106103813660046124da565b611073565b6102106103943660046125b9565b611150565b6102106103a73660046125e3565b61122a565b61031a6103ba36600461261e565b6112f6565b6101e86103cd36600461265a565b6001600160a01b039283165f908152600c60209081526040808320948352938152838220929094168152925290205460ff1690565b6104156104103660046126ce565b611342565b6040516101f4919061270c565b61031a61043036600461244f565b61134f565b61047761044336600461244f565b5f81815260208181526040808320546001600160401b03168352600982528083209383529290522080546001909101549091565b604080519283526020830191909152016101f4565b61021061049a3660046122bd565b611387565b6102106104ad36600461276e565b6114c3565b6104da6104c036600461244f565b5f602081905290815260409020546001600160401b031681565b6040516001600160401b0390911681526020016101f4565b61041561050036600461279c565b6114e9565b6102106105133660046127d6565b6114fe565b6101e8610526366004612808565b6001600160a01b039182165f908152600b6020908152604080832093909416825291909152205460ff1690565b61031a6105613660046123a1565b6115a2565b5f61057082611666565b92915050565b826105808161168a565b610588575f80fd5b5f84815260208181526040808320548151601f87018490048402810184019092528582528392606092839285926001600160401b039091169183916105eb9183918d908d90819084018382808284375f9201919091525092939250506118b79050565b90505b80515160208201511015610712578661ffff165f03610652578060400151965061061781611912565b94508460405160200161062a9190612834565b60405160208183030381529060405280519060200120925061064b81611933565b9350610704565b5f61065c82611912565b9050816040015161ffff168861ffff16141580610680575061067e868261194f565b155b15610702576106db8c878a8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250505060208801518d91506106d2908290612863565b8b51158a61196a565b8160400151975081602001519650809550858051906020012093506106ff82611933565b94505b505b61070d81611bc9565b6105ee565b5083511561076c5761076c8a85888c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c925061076391508290508f612863565b8951158861196a565b50505050505050505050565b846107828161168a565b61078a575f80fd5b5f86815260208181526040808320546001600160401b03168352600a8252808320898452909152908190209051849184916107c89089908990612876565b908152602001604051809103902091826107e3929190612901565b5084846040516107f4929190612876565b6040518091039020867f448bc014f1536726cf8d54ff3d6481ed3cbc683c2591ca204274009afa09b1a18787878760405161083294939291906129e2565b60405180910390a3505050505050565b5f82815260208181526040808320546001600160401b031683526007825280832085845282528083206001600160e01b0319851684529091528120546001600160a01b03168015610894579050610570565b5f61089e85610d64565b90506001600160a01b0381166108b8575f92505050610570565b6040516301ffc9a760e01b60248201525f9081906001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b1790525161090f9190612834565b5f60405180830381855afa9150503d805f8114610947576040519150601f19603f3d011682016040523d82523d5f602084013e61094c565b606091505b509150915081158061095f575060208151105b80610989575080601f8151811061097857610978612a13565b01602001516001600160f81b031916155b1561099a575f945050505050610570565b6040516001600160e01b0319871660248201526001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b179052516109f09190612834565b5f60405180830381855afa9150503d805f8114610a28576040519150601f19603f3d011682016040523d82523d5f602084013e610a2d565b606091505b509092509050811580610a41575060208151105b80610a6b575080601f81518110610a5a57610a5a612a13565b01602001516001600160f81b031916155b15610a7c575f945050505050610570565b509095945050505050565b5f82815260208181526040808320546001600160401b03168352600180835281842086855290925282206060915b848111610b975780851615801590610ae457505f8181526020839052604081208054610ae090612885565b9050115b15610b8f5780825f8381526020019081526020015f20808054610b0690612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610b3290612885565b8015610b7d5780601f10610b5457610100808354040283529160200191610b7d565b820191905f5260205f20905b815481529060010190602001808311610b6057829003601f168201915b50505050509050935093505050610bae565b60011b610ab5565b505f60405180602001604052805f81525092509250505b9250929050565b82610bbf8161168a565b610bc7575f80fd5b60408051808201825284815260208082018581525f888152808352848120546001600160401b031681526009835284812089825283528490209251835551600190920191909155815185815290810184905285917f1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e4691015b60405180910390a250505050565b82610c578161168a565b610c5f575f80fd5b5f84815260208181526040808320546001600160401b03168352600382528083208784529091529020610c93838583612901565b50837fe379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d75788484604051610c3f929190612a27565b80610cd08161168a565b610cd8575f80fd5b5f82815260208190526040812080546001600160401b031691610cfa83612a3a565b82546101009290920a6001600160401b038181021990931691831602179091555f84815260208181526040918290205491519190921681528492507fc6621ccb8f3f5a04bb6502154b2caf6adf5983fe76dfef1cfc9c42e3579db444910160405180910390a25050565b5f80610d7183603c6115a2565b905080515f03610d8357505f92915050565b610d8c81611cae565b9392505050565b5f83815260208181526040808320546001600160401b03168352600a825280832086845290915290819020905160609190610dd19085908590612876565b90815260200160405180910390208054610dea90612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610e1690612885565b8015610e615780601f10610e3857610100808354040283529160200191610e61565b820191905f5260205f20905b815481529060010190602001808311610e4457829003601f168201915b505050505090509392505050565b5f81815260208181526040808320546001600160401b03168352600482528083208484529091529020805460609190610ea790612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610ed390612885565b8015610f1e5780601f10610ef557610100808354040283529160200191610f1e565b820191905f5260205f20905b815481529060010190602001808311610f0157829003601f168201915b50505050509050919050565b83610f348161168a565b610f3c575f80fd5b83610f48600182612863565b1615610f52575f80fd5b5f85815260208181526040808320546001600160401b031683526001825280832088845282528083208784529091529020610f8e838583612901565b50604051849086907faa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe3905f90a35050505050565b5f81815260208181526040808320546001600160401b03168352600882528083208484529091529020805460609190610ea790612885565b826110048161168a565b61100c575f80fd5b5f84815260208181526040808320546001600160401b03168352600882528083208784529091529020611040838583612901565b50837fb7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f78484604051610c3f929190612a27565b8261107d8161168a565b611085575f80fd5b837f65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af75284846040516110b792919061240e565b60405180910390a2603c830361110e57837f52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd26110f284611cae565b6040516001600160a01b03909116815260200160405180910390a25b5f84815260208181526040808320546001600160401b0316835260028252808320878452825280832086845290915290206111498382612a5f565b5050505050565b6001600160a01b03821633036111bf5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084015b60405180910390fd5b335f818152600b602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6001600160a01b03821633036112825760405162461bcd60e51b815260206004820181905260248201527f53657474696e672064656c65676174652073746174757320666f722073656c6660448201526064016111b6565b335f818152600c6020908152604080832087845282528083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519384529286917ff0ddb3b04746704017f9aa8bd728fcc2c1d11675041205350018915f5e4750a0910160405180910390a4505050565b5f83815260208181526040808320546001600160401b03168352600582528083208684528252808320858452825280832061ffff851684529091529020805460609190610dea90612885565b6060610d8c5f8484611ccb565b5f81815260208181526040808320546001600160401b03168352600382528083208484529091529020805460609190610ea790612885565b826113918161168a565b611399575f80fd5b5f84815260208181526040808320546001600160401b031680845260048352818420888552909252822080549192916113d190612885565b80601f01602080910402602001604051908101604052809291908181526020018280546113fd90612885565b80156114485780601f1061141f57610100808354040283529160200191611448565b820191905f5260205f20905b81548152906001019060200180831161142b57829003601f168201915b505050506001600160401b0384165f9081526004602090815260408083208b8452909152902091925061147e9050858783612901565b50857f8f15ed4b723ef428f250961da8315675b507046737e19319fc1a4d81bfe87f858287876040516114b393929190612b1e565b60405180910390a2505050505050565b816114cd8161168a565b6114d5575f80fd5b6114e483603c61038185611e88565b505050565b60606114f6848484611ccb565b949350505050565b826115088161168a565b611510575f80fd5b5f84815260208181526040808320546001600160401b031683526007825280832087845282528083206001600160e01b031987168085529083529281902080546001600160a01b0319166001600160a01b038716908117909155905190815286917f7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa910160405180910390a350505050565b5f82815260208181526040808320546001600160401b0316835260028252808320858452825280832084845290915290208054606091906115e290612885565b80601f016020809104026020016040519081016040528092919081815260200182805461160e90612885565b80156116595780601f1061163057610100808354040283529160200191611659565b820191905f5260205f20905b81548152906001019060200180831161163c57829003601f168201915b5050505050905092915050565b5f6001600160e01b03198216631674750f60e21b1480610570575061057082611eb8565b5f336001600160a01b037f0000000000000000000000004fbf7b2f171336958be5d15ff762a5cff53635681614806116ea5750336001600160a01b037f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5616145b156116f757506001919050565b6040516302571be360e01b8152600481018390525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa15801561175c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117809190612b4d565b90507f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b0316816001600160a01b031603611845576040516331a9108f60e11b8152600481018490527f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b031690636352211e90602401602060405180830381865afa15801561181e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118429190612b4d565b90505b6001600160a01b03811633148061187e57506001600160a01b0381165f908152600b6020908152604080832033845290915290205460ff165b80610d8c57506001600160a01b0381165f908152600c60209081526040808320868452825280832033845290915290205460ff16610d8c565b6118ff6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261057081611bc9565b602081015181516060916105709161192a9082611edc565b84519190611f33565b60a081015160c08201516060916105709161192a908290612863565b5f81518351148015610d8c5750610d8c835f845f8751611fa7565b865160208801205f61197d878787611f33565b90508315611aa1576001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c168452909152902080546119c690612885565b159050611a23576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611a0783612b68565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091528120611a62916121f9565b897f03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a12078a8a604051611a94929190612b84565b60405180910390a261076c565b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c16845290915290208054611ae290612885565b90505f03611b40576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611b2483612ba9565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091529020611b808282612a5f565b50897f52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b8a8a84604051611bb593929190612bbf565b60405180910390a250505050505050505050565b60c08101516020820181905281515111611be05750565b5f611bf2825f01518360200151611edc565b8260200151611c019190612bed565b8251909150611c109082611fc9565b61ffff166040830152611c24600282612bed565b8251909150611c339082611fc9565b61ffff166060830152611c47600282612bed565b8251909150611c569082611fef565b63ffffffff166080830152611c6c600482612bed565b82519091505f90611c7d9083611fc9565b61ffff169050611c8e600283612bed565b60a084018190529150611ca18183612bed565b60c0909301929092525050565b5f8151601414611cbc575f80fd5b5060200151600160601b900490565b6060816001600160401b03811115611ce557611ce56124c6565b604051908082528060200260200182016040528015611d1857816020015b6060815260200190600190039081611d035790505b5090505f5b82811015611e80578415611dd8575f848483818110611d3e57611d3e612a13565b9050602002810190611d509190612c00565b611d5f91602491600491612c42565b611d6891612c69565b9050858114611dd65760405162461bcd60e51b815260206004820152603460248201527f6d756c746963616c6c3a20416c6c207265636f726473206d7573742068617665604482015273040c240dac2e8c6d0d2dcce40dcc2dacad0c2e6d60631b60648201526084016111b6565b505b5f8030868685818110611ded57611ded612a13565b9050602002810190611dff9190612c00565b604051611e0d929190612876565b5f60405180830381855af49150503d805f8114611e45576040519150601f19603f3d011682016040523d82523d5f602084013e611e4a565b606091505b509150915081611e58575f80fd5b80848481518110611e6b57611e6b612a13565b60209081029190910101525050600101611d1d565b509392505050565b604080516014808252818301909252606091602082018180368337505050600160601b9290920260208301525090565b5f6001600160e01b0319821663c869023360e01b1480610570575061057082612017565b5f815b83518110611eef57611eef612c86565b5f611efa858361203b565b60ff169050611f0a816001612bed565b611f149083612bed565b9150805f03611f235750611f29565b50611edf565b6114f68382612863565b8251606090611f428385612bed565b1115611f4c575f80fd5b5f826001600160401b03811115611f6557611f656124c6565b6040519080825280601f01601f191660200182016040528015611f8f576020820181803683370190505b50905060208082019086860101610a7c82828761205e565b5f611fb38484846120b3565b611fbe8787856120b3565b149695505050505050565b81515f90611fd8836002612bed565b1115611fe2575f80fd5b50016002015161ffff1690565b81515f90611ffe836004612bed565b1115612008575f80fd5b50016004015163ffffffff1690565b5f6001600160e01b0319821663691f343160e01b14806105705750610570826120d5565b5f82828151811061204e5761204e612a13565b016020015160f81c905092915050565b602081106120965781518352612075602084612bed565b9250612082602083612bed565b915061208f602082612863565b905061205e565b905182516020929092036101000a5f190180199091169116179052565b82515f906120c18385612bed565b11156120cb575f80fd5b5091016020012090565b5f6001600160e01b031982166304928c6760e21b14806105705750610570825f6001600160e01b0319821663547d2b4160e11b148061212457506001600160e01b03198216635c98042b60e01b145b806105705750610570825f6001600160e01b0319821663bc1c58d160e01b14806105705750610570825f6001600160e01b03198216631d9dabef60e11b148061217d57506001600160e01b031982166378e5bf0360e11b145b806105705750610570825f6001600160e01b03198216631101d5ab60e11b14806105705750610570825f6001600160e01b0319821663d700ff3360e01b14806105705750610570825f6001600160e01b03198216634fbf043360e01b148061057057506301ffc9a760e01b6001600160e01b0319831614610570565b50805461220590612885565b5f825580601f10612214575050565b601f0160209004905f5260205f20908101906122309190612233565b50565b5b80821115612247575f8155600101612234565b5090565b80356001600160e01b031981168114612262575f80fd5b919050565b5f60208284031215612277575f80fd5b610d8c8261224b565b5f8083601f840112612290575f80fd5b5081356001600160401b038111156122a6575f80fd5b602083019150836020828501011115610bae575f80fd5b5f805f604084860312156122cf575f80fd5b8335925060208401356001600160401b038111156122eb575f80fd5b6122f786828701612280565b9497909650939450505050565b5f805f805f60608688031215612318575f80fd5b8535945060208601356001600160401b0380821115612335575f80fd5b61234189838a01612280565b90965094506040880135915080821115612359575f80fd5b5061236688828901612280565b969995985093965092949392505050565b5f8060408385031215612388575f80fd5b823591506123986020840161224b565b90509250929050565b5f80604083850312156123b2575f80fd5b50508035926020909101359150565b5f5b838110156123db5781810151838201526020016123c3565b50505f910152565b5f81518084526123fa8160208601602086016123c1565b601f01601f19169290920160200192915050565b828152604060208201525f6114f660408301846123e3565b5f805f60608486031215612438575f80fd5b505081359360208301359350604090920135919050565b5f6020828403121561245f575f80fd5b5035919050565b602081525f610d8c60208301846123e3565b5f805f806060858703121561248b575f80fd5b843593506020850135925060408501356001600160401b038111156124ae575f80fd5b6124ba87828801612280565b95989497509550505050565b634e487b7160e01b5f52604160045260245ffd5b5f805f606084860312156124ec575f80fd5b833592506020840135915060408401356001600160401b0380821115612510575f80fd5b818601915086601f830112612523575f80fd5b813581811115612535576125356124c6565b604051601f8201601f19908116603f0116810190838211818310171561255d5761255d6124c6565b81604052828152896020848701011115612575575f80fd5b826020860160208301375f6020848301015280955050505050509250925092565b6001600160a01b0381168114612230575f80fd5b80358015158114612262575f80fd5b5f80604083850312156125ca575f80fd5b82356125d581612596565b9150612398602084016125aa565b5f805f606084860312156125f5575f80fd5b83359250602084013561260781612596565b9150612615604085016125aa565b90509250925092565b5f805f60608486031215612630575f80fd5b8335925060208401359150604084013561ffff8116811461264f575f80fd5b809150509250925092565b5f805f6060848603121561266c575f80fd5b833561267781612596565b925060208401359150604084013561264f81612596565b5f8083601f84011261269e575f80fd5b5081356001600160401b038111156126b4575f80fd5b6020830191508360208260051b8501011115610bae575f80fd5b5f80602083850312156126df575f80fd5b82356001600160401b038111156126f4575f80fd5b6127008582860161268e565b90969095509350505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b8281101561276157603f1988860301845261274f8583516123e3565b94509285019290850190600101612733565b5092979650505050505050565b5f806040838503121561277f575f80fd5b82359150602083013561279181612596565b809150509250929050565b5f805f604084860312156127ae575f80fd5b8335925060208401356001600160401b038111156127ca575f80fd5b6122f78682870161268e565b5f805f606084860312156127e8575f80fd5b833592506127f86020850161224b565b9150604084013561264f81612596565b5f8060408385031215612819575f80fd5b823561282481612596565b9150602083013561279181612596565b5f82516128458184602087016123c1565b9190910192915050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156105705761057061284f565b818382375f9101908152919050565b600181811c9082168061289957607f821691505b6020821081036128b757634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156114e457805f5260205f20601f840160051c810160208510156128e25750805b601f840160051c820191505b81811015611149575f81556001016128ee565b6001600160401b03831115612918576129186124c6565b61292c836129268354612885565b836128bd565b5f601f84116001811461295d575f85156129465750838201355b5f19600387901b1c1916600186901b178355611149565b5f83815260208120601f198716915b8281101561298c578685013582556020948501946001909201910161296c565b50868210156129a8575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b604081525f6129f56040830186886129ba565b8281036020840152612a088185876129ba565b979650505050505050565b634e487b7160e01b5f52603260045260245ffd5b602081525f6114f66020830184866129ba565b5f6001600160401b03808316818103612a5557612a5561284f565b6001019392505050565b81516001600160401b03811115612a7857612a786124c6565b612a8c81612a868454612885565b846128bd565b602080601f831160018114612abf575f8415612aa85750858301515b5f19600386901b1c1916600185901b178555612b16565b5f85815260208120601f198616915b82811015612aed57888601518255948401946001909101908401612ace565b5085821015612b0a57878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b604081525f612b3060408301866123e3565b8281036020840152612b438185876129ba565b9695505050505050565b5f60208284031215612b5d575f80fd5b8151610d8c81612596565b5f61ffff821680612b7b57612b7b61284f565b5f190192915050565b604081525f612b9660408301856123e3565b905061ffff831660208301529392505050565b5f61ffff808316818103612a5557612a5561284f565b606081525f612bd160608301866123e3565b61ffff851660208401528281036040840152612b4381856123e3565b808201808211156105705761057061284f565b5f808335601e19843603018112612c15575f80fd5b8301803591506001600160401b03821115612c2e575f80fd5b602001915036819003821315610bae575f80fd5b5f8085851115612c50575f80fd5b83861115612c5c575f80fd5b5050820193919092039150565b80356020831015610570575f19602084900360031b1b1692915050565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{}},"0xa06a63155145b7f2fda96d9658ec7fef3b9dcf76":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b506004361061004a575f3560e01c80634ce34aa21461004e578063899e104c1461007e5780638df25d9214610091578063c4e8fcb5146100a4575b5f80fd5b61006161005c366004610834565b6100b9565b6040516001600160e01b0319909116815260200160405180910390f35b61006161008c3660046108b4565b610121565b61006161009f36600461091b565b61018a565b6100b76100b2366004610969565b6101c7565b005b5f335f525f60205260405f20546100dd576349ed56f960e11b5f523360045260245ffd5b815f5b81811015610110576101088585838181106100fd576100fd6109a2565b905060c002016102c4565b6001016100e0565b50632671a55160e11b949350505050565b5f335f525f60205260405f2054610145576349ed56f960e11b5f523360045260245ffd5b835f5b8181101561016d576101658787838181106100fd576100fd6109a2565b600101610148565b506101788484610436565b50632267841360e21b95945050505050565b5f335f525f60205260405f20546101ae576349ed56f960e11b5f523360045260245ffd5b6101b88383610436565b506346f92ec960e11b92915050565b336001600160a01b037f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c1614610210576040516336abb4df60e11b815260040160405180910390fd5b6001600160a01b0382165f9081526020819052604090205481151560ff909116151503610268576040516349271a0f60e11b81526001600160a01b038316600482015281151560248201526044015b60405180910390fd5b6001600160a01b0382165f8181526020818152604091829020805460ff191685151590811790915591519182527fae63067d43ac07563b7eb8db6595635fc77f1578a2a5ea06ba91b63e2afa37e2910160405180910390a25050565b60016102d360208301836109ca565b60038111156102e4576102e46109b6565b03610329576103266102fc60408301602084016109ef565b61030c60608401604085016109ef565b61031c60808501606086016109ef565b8460a0013561056c565b50565b600261033860208301836109ca565b6003811115610349576103496109b6565b036103b6578060a00135600114610379576040516369f9582760e01b815260a0820135600482015260240161025f565b61032661038c60408301602084016109ef565b61039c60608401604085016109ef565b6103ac60808501606086016109ef565b8460800135610660565b60036103c560208301836109ca565b60038111156103d6576103d66109b6565b0361041d576103266103ee60408301602084016109ef565b6103fe60608401604085016109ef565b61040e60808501606086016109ef565b84608001358560a00135610715565b604051631e4cbc7f60e21b815260040160405180910390fd5b808280631759616b60e11b6020525f5b8381101561055f57823582018035803b61046b57635f15d6725f52806020526024601cfd5b60a08201358060051b60c0018060808501351460a0606086013514168185013583141615905080156104a657633ae8821360e21b5f5260045ffd5b506020860195506080602084016024378060061b60400190508060a00160a4525f8160c401528060c4018160a0850160c4375f808260205f875af1935083610550573d1561053057601f3d0160051c91508060051c826003028184111561051a578184036003028280028580020360091c01015b5a60208201101561052d573d5f803e3d5ffd5b50505b6357e222f160e11b5f528260045260c0606452608451602001608452805ffd5b50505050600181019050610446565b5050505060806040525050565b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166106515780873b15151661065157806106405781610623573d1561060257601f3d0160051c8360051c81600302818311156105eb578183036003028280028480020360091c01015b5a6020820110156105fe573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b833b61067757635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af180610707573d156106e557601f3d0160051c8260051c81600302818311156106ce578183036003028280028480020360091c01015b5a6020820110156106e1573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b61072c57635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af1806107d1573d156107b057601f3d0160051c8560051c8160030281831115610799578183036003028280028480020360091c01015b5a6020820110156107ac573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b5f8083601f8401126107fc575f80fd5b50813567ffffffffffffffff811115610813575f80fd5b60208301915083602060c08302850101111561082d575f80fd5b9250929050565b5f8060208385031215610845575f80fd5b823567ffffffffffffffff81111561085b575f80fd5b610867858286016107ec565b90969095509350505050565b5f8083601f840112610883575f80fd5b50813567ffffffffffffffff81111561089a575f80fd5b6020830191508360208260051b850101111561082d575f80fd5b5f805f80604085870312156108c7575f80fd5b843567ffffffffffffffff808211156108de575f80fd5b6108ea888389016107ec565b90965094506020870135915080821115610902575f80fd5b5061090f87828801610873565b95989497509550505050565b5f806020838503121561092c575f80fd5b823567ffffffffffffffff811115610942575f80fd5b61086785828601610873565b80356001600160a01b0381168114610964575f80fd5b919050565b5f806040838503121561097a575f80fd5b6109838361094e565b915060208301358015158114610997575f80fd5b809150509250929050565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52602160045260245ffd5b5f602082840312156109da575f80fd5b8135600481106109e8575f80fd5b9392505050565b5f602082840312156109ff575f80fd5b6109e88261094e56fea164736f6c6343000818000a","storage":{}},"0xaa33d7188eb4b4a51c37199eaad2f73cf2bf0204":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0xac52f68f31577e44ae0c7e95a42dc9eb574b9383":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a424740014610090575b600080fd5b610059610054366004610cac565b6100b3565b6040516100669190610d9b565b60405180910390f35b61008261007d366004610dae565b610162565b604051908152602001610066565b6100a361009e366004610cac565b6101d6565b6040519015158152602001610066565b606060005a90506101576100ca6020870187610ddc565b6001546001600160a01b03166040880135846100e960608b018b610df9565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061023592505050565b9150505b9392505050565b600154604051636ccbae5f60e01b8152600481018390526000916001600160a01b031690636ccbae5f90602401602060405180830381865afa1580156101ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d09190610e40565b92915050565b600061022d6101e485610ef1565b600154604080516020601f88018190048102820181019092528681526001600160a01b039092169190879087908190840183828082843760009201919091525061030d92505050565b949350505050565b6060600080876001600160a01b0316866102518b8a8989610355565b60405161025e9190610f9b565b60006040518083038160008787f1925050503d806000811461029c576040519150601f19603f3d011682016040523d82523d6000602084013e6102a1565b606091505b5090925090506102b2603f87610fb7565b5a116102c0576102c0610fd9565b61030082826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061040a565b9998505050505050505050565b600061031a848484610443565b801561022d575060608401516020908101516001600160e01b031990811660009081529182905260409091205460e01b16151561022d565b50565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036103e75760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526103ff82828661058c565b979650505050505050565b6060831561041957508161015b565b8251156104295782518084602001fd5b8160405162461bcd60e51b81526004016103de9190610d9b565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561048a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104ae9190610e40565b9050600061055c8660600151805190602001208688602001516040516020016104fc9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561058257508551610582906001600160a01b03168286610a38565b9695505050505050565b60606001600160e01b03198416631de5861160e31b0361061a576000806000858060200190518101906105bf9190610fef565b92509250925086838383886040516024016105dd9493929190611032565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152935061015b92505050565b6001600160e01b03198416636debcb8d60e01b0361064b576000806000858060200190518101906105bf9190610fef565b6001600160e01b0319841663280d9b0560e01b036106dd576000806000808680602001905181019061067d91906110aa565b935093509350935087848484848a60405160240161069f959493929190611118565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152945061015b9350505050565b6001600160e01b031984166361603dd960e01b0361075c5760008380602001905181019061070b9190610e40565b905084818460405160240161072192919061115d565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152915061015b9050565b6001600160e01b0319841663b34f33c560e01b036107ab5760008060008580602001905181019061078d9190611176565b92509250925086838383886040516024016105dd94939291906111d0565b6001600160e01b03198416633013529360e01b036107dc5760008060008580602001905181019061078d9190611176565b6001600160e01b031984166307eca39560e01b03610830576000806000808680602001905181019061080e9190611209565b935093509350935087848484848a60405160240161069f95949392919061127e565b6001600160e01b031984166368b6154f60e01b03610862576000806000808680602001905181019061067d91906110aa565b6001600160e01b0319841663341de35b60e21b03610894576000806000808680602001905181019061067d91906110aa565b6001600160e01b03198416637a84860f60e11b0361092d576000806000806000878060200190518101906108c891906112cb565b945094509450945094508885858585858c6040516024016108ee96959493929190611360565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152955061015b945050505050565b6001600160e01b03198416636fab95b360e01b036109b2576000808480602001905181019061095c91906113b9565b915091508582828660405160240161097693929190611400565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925061015b915050565b6001600160e01b0319841663288f888960e11b0361015b57600080848060200190518101906109e1919061142b565b91509150858282866040516024016109fb93929190611459565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925050509392505050565b6000806000610a478585610b7a565b90925090506000816004811115610a6057610a60611489565b148015610a7e5750856001600160a01b0316826001600160a01b0316145b15610a8e5760019250505061015b565b600080876001600160a01b0316631626ba7e60e01b8888604051602401610ab692919061115d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051610af49190610f9b565b600060405180830381855afa9150503d8060008114610b2f576040519150601f19603f3d011682016040523d82523d6000602084013e610b34565b606091505b5091509150818015610b47575080516020145b8015610b6e57508051630b135d3f60e11b90610b6c9083016020908101908401610e40565b145b98975050505050505050565b6000808251604103610bb05760208301516040840151606085015160001a610ba487828585610bbf565b94509450505050610bb8565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610bf65750600090506003610ca3565b8460ff16601b14158015610c0e57508460ff16601c14155b15610c1f5750600090506004610ca3565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610c73573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610c9c57600060019250925050610ca3565b9150600090505b94509492505050565b600080600060408486031215610cc157600080fd5b833567ffffffffffffffff80821115610cd957600080fd5b9085019060808288031215610ced57600080fd5b90935060208501359080821115610d0357600080fd5b818601915086601f830112610d1757600080fd5b813581811115610d2657600080fd5b876020828501011115610d3857600080fd5b6020830194508093505050509250925092565b60005b83811015610d66578181015183820152602001610d4e565b50506000910152565b60008151808452610d87816020860160208601610d4b565b601f01601f19169290920160200192915050565b60208152600061015b6020830184610d6f565b600060208284031215610dc057600080fd5b5035919050565b6001600160a01b038116811461035257600080fd5b600060208284031215610dee57600080fd5b813561015b81610dc7565b6000808335601e19843603018112610e1057600080fd5b83018035915067ffffffffffffffff821115610e2b57600080fd5b602001915036819003821315610bb857600080fd5b600060208284031215610e5257600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610e9257610e92610e59565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ec157610ec1610e59565b604052919050565b600067ffffffffffffffff821115610ee357610ee3610e59565b50601f01601f191660200190565b600060808236031215610f0357600080fd5b610f0b610e6f565b8235610f1681610dc7565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610f4657600080fd5b840136601f820112610f5757600080fd5b8035610f6a610f6582610ec9565b610e98565b8181523684838501011115610f7e57600080fd5b818484018583013760009181019093015250606082015292915050565b60008251610fad818460208701610d4b565b9190910192915050565b600082610fd457634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b60008060006060848603121561100457600080fd5b835161100f81610dc7565b602085015190935061102081610dc7565b80925050604084015190509250925092565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061058290830184610d6f565b600082601f83011261107657600080fd5b8151611084610f6582610ec9565b81815284602083860101111561109957600080fd5b61022d826020830160208701610d4b565b600080600080608085870312156110c057600080fd5b84516110cb81610dc7565b60208601519094506110dc81610dc7565b60408601516060870151919450925067ffffffffffffffff81111561110057600080fd5b61110c87828801611065565b91505092959194509250565b6001600160a01b038681168252851660208201526040810184905260a06060820181905260009061114b90830185610d6f565b8281036080840152610b6e8185610d6f565b82815260406020820152600061022d6040830184610d6f565b60008060006060848603121561118b57600080fd5b835161119681610dc7565b60208501516040860151919450925067ffffffffffffffff8111156111ba57600080fd5b6111c686828701611065565b9150509250925092565b60018060a01b03851681528360208201526080604082015260006111f76080830185610d6f565b82810360608401526103ff8185610d6f565b6000806000806080858703121561121f57600080fd5b845161122a81610dc7565b60208601516040870151919550935067ffffffffffffffff8082111561124f57600080fd5b61125b88838901611065565b9350606087015191508082111561127157600080fd5b5061110c87828801611065565b60018060a01b038616815284602082015260a0604082015260006112a560a0830186610d6f565b82810360608401526112b78186610d6f565b90508281036080840152610b6e8185610d6f565b600080600080600060a086880312156112e357600080fd5b85516112ee81610dc7565b60208701519095506112ff81610dc7565b60408701516060880151919550935067ffffffffffffffff8082111561132457600080fd5b61133089838a01611065565b9350608088015191508082111561134657600080fd5b5061135388828901611065565b9150509295509295909350565b6001600160a01b038781168252861660208201526040810185905260c06060820181905260009061139390830186610d6f565b82810360808401526113a58186610d6f565b905082810360a08401526103008185610d6f565b600080604083850312156113cc57600080fd5b82519150602083015167ffffffffffffffff8111156113ea57600080fd5b6113f685828601611065565b9150509250929050565b8381526060602082015260006114196060830185610d6f565b82810360408401526105828185610d6f565b6000806040838503121561143e57600080fd5b825161144981610dc7565b6020939093015192949293505050565b60018060a01b03841681528260208201526060604082015260006114806060830184610d6f565b95945050505050565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a","storage":{"0x1":"0x7bb6cd9be29fab783c0b494a06fed8b2e2596b7a","0xd8b896d609e853134f3f02ce62d8049b2fdfe9356134f6d548fb1beda30db79":"0x30135293","0x4f457f36b92dc6b16c281e5877e2d8d39630135c1b7246fa9174035e1efcefbd":"0x6fab95b3","0x6b7ba3fe9941e089de60543da4a1deaef065baa963222951b2f9a138f9960820":"0x6debcb8d","0x70cff8e4ee4af5aa154324d45bcf258212c235bbe79f0707bb6273110ef4e13a":"0xf5090c1e","0x73efb0e44094dbabc6bbeecd3be1d81f272157c2dae2d647e6315f150b0b1dd2":"0xd0778d6c","0x8b1c4edded6644848281eab03ac2c319242d62b2057cffa3dd4540715bbc155e":"0xef2c3088","0xbeb5ea8fc2aeae43b7170220434aa4429fb067f0866ae25514b29f647641ca8c":"0x511f1112","0xca659f6eb372ce950e69d4d474290a6a4285f6a06a6128ca9f45419371a1e997":"0xb34f33c5","0xd12e300b5f35ba5198dd81dab97a512a154a0ad0e2cda788abdc22deba64f2a7":"0x280d9b05","0xd5453e7f4fff276a1d42f717d1db50865c284ae707a15bd6a590a3895656f27c":"0x7eca395","0xea2575ae4056f10294a848ca5ed6d215dffd1b80838142770bc441f7df607d71":"0x61603dd9","0xf8ca3ef1e3d09a0d88e209301f12626c90bec3ea586d4bce2c7a58e7eae8278f":"0x68b6154f"}},"0xb17aae5b3a7815433fc82cfd67ea245767894f03":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061012a5760003560e01c80638d839ffe116100ab578063aeb8ce9b1161006f578063aeb8ce9b146105d7578063ce1e09c014610688578063f14fcbc81461069d578063f2fde38b146106c7578063f49826be146106fa578063f7a16963146107b95761012a565b80638d839ffe1461045d5780638da5cb5b146104725780638f32d59b146104a35780639791c097146104b8578063acf1a841146105695761012a565b80637e324479116100f25780637e324479146102b8578063839df945146102e857806383e7f6ff1461031257806385f6d155146103c55780638a95b09f146104485761012a565b806301ffc9a71461012f5780633ccfd60b146101775780633d86c52f1461018e578063530e784f14610270578063715018a6146102a3575b600080fd5b34801561013b57600080fd5b506101636004803603602081101561015257600080fd5b50356001600160e01b031916610881565b604080519115158252519081900360200190f35b34801561018357600080fd5b5061018c610a12565b005b34801561019a57600080fd5b5061025e600480360360a08110156101b157600080fd5b810190602081018135600160201b8111156101cb57600080fd5b8201836020820111156101dd57600080fd5b803590602001918460018302840111600160201b831117156101fe57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b0383358116945060208401359360408101358216935060600135169050610a53565b60408051918252519081900360200190f35b34801561027c57600080fd5b5061018c6004803603602081101561029357600080fd5b50356001600160a01b0316610b42565b3480156102af57600080fd5b5061018c610ba3565b3480156102c457600080fd5b5061018c600480360360408110156102db57600080fd5b5080359060200135610bfe565b3480156102f457600080fd5b5061025e6004803603602081101561030b57600080fd5b5035610c1a565b34801561031e57600080fd5b5061025e6004803603604081101561033557600080fd5b810190602081018135600160201b81111561034f57600080fd5b82018360208201111561036157600080fd5b803590602001918460018302840111600160201b8311171561038257600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505091359250610c2c915050565b61018c600480360360808110156103db57600080fd5b810190602081018135600160201b8111156103f557600080fd5b82018360208201111561040757600080fd5b803590602001918460018302840111600160201b8311171561042857600080fd5b91935091506001600160a01b038135169060208101359060400135610d9e565b34801561045457600080fd5b5061025e610de9565b34801561046957600080fd5b5061025e610df0565b34801561047e57600080fd5b50610487610df6565b604080516001600160a01b039092168252519081900360200190f35b3480156104af57600080fd5b50610163610e05565b3480156104c457600080fd5b50610163600480360360208110156104db57600080fd5b810190602081018135600160201b8111156104f557600080fd5b82018360208201111561050757600080fd5b803590602001918460018302840111600160201b8311171561052857600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610e16945050505050565b61018c6004803603604081101561057f57600080fd5b810190602081018135600160201b81111561059957600080fd5b8201836020820111156105ab57600080fd5b803590602001918460018302840111600160201b831117156105cc57600080fd5b919350915035610e2b565b3480156105e357600080fd5b50610163600480360360208110156105fa57600080fd5b810190602081018135600160201b81111561061457600080fd5b82018360208201111561062657600080fd5b803590602001918460018302840111600160201b8311171561064757600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610fcf945050505050565b34801561069457600080fd5b5061025e611069565b3480156106a957600080fd5b5061018c600480360360208110156106c057600080fd5b503561106f565b3480156106d357600080fd5b5061018c600480360360208110156106ea57600080fd5b50356001600160a01b03166110a1565b34801561070657600080fd5b5061025e6004803603606081101561071d57600080fd5b810190602081018135600160201b81111561073757600080fd5b82018360208201111561074957600080fd5b803590602001918460018302840111600160201b8311171561076a57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b0383351693505050602001356110bb565b61018c600480360360c08110156107cf57600080fd5b810190602081018135600160201b8111156107e957600080fd5b8201836020820111156107fb57600080fd5b803590602001918460018302840111600160201b8311171561081c57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b038335811694506020840135936040810135935060608101358216925060800135166110d3565b604080517f737570706f727473496e74657266616365286279746573342900000000000000815290519081900360190190206000906001600160e01b0319838116911614806109c05750604080517472656e657728737472696e672c75696e743235362960581b815290519081900360150181209080602861186a8239604080519182900360280182206e636f6d6d697428627974657333322960881b8352905191829003600f01822090925090806026611892823960260190506040518091039020604051808070617661696c61626c6528737472696e672960781b8152506011019050604051809103902060405180807f72656e74507269636528737472696e672c75696e7432353629000000000000008152506019019050604051809103902018181818186001600160e01b031916826001600160e01b031916145b80610a0c5750604051808061182a60409139604080519182900301812091508060426118b8823960420190506040518091039020186001600160e01b031916826001600160e01b031916145b92915050565b610a1a610e05565b610a2357600080fd5b6040513390303180156108fc02916000818181858888f19350505050158015610a50573d6000803e3d6000fd5b50565b845160208601206000906001600160a01b038416158015610a7b57506001600160a01b038316155b15610acb57604080516020808201939093526bffffffffffffffffffffffff19606089901b1681830152605480820188905282518083039091018152607490910190915280519101209050610b39565b6001600160a01b038416610ade57600080fd5b604080516020808201939093526bffffffffffffffffffffffff19606089811b82168385015287811b8216605484015286901b166068820152607c80820188905282518083039091018152609c909101909152805191012090505b95945050505050565b610b4a610e05565b610b5357600080fd5b600280546001600160a01b0319166001600160a01b0383811691909117918290556040519116907ff261845a790fe29bbd6631e2ca4a5bdc83e6eed7c3271d9590d97287e00e912390600090a250565b610bab610e05565b610bb457600080fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b610c06610e05565b610c0f57600080fd5b600391909155600455565b60056020526000908152604090205481565b815160208084019190912060025460015460408051636b727d4360e11b81526004810185905290516000956001600160a01b03948516946350e9a715948a9491169263d6e4fa8692602480840193919291829003018186803b158015610c9157600080fd5b505afa158015610ca5573d6000803e3d6000fd5b505050506040513d6020811015610cbb57600080fd5b50516040516001600160e01b031960e085901b168152602481018290526044810188905260606004820190815283516064830152835189928291608490910190602087019080838360005b83811015610d1e578181015183820152602001610d06565b50505050905090810190601f168015610d4b5780820380516001836020036101000a031916815260200191505b5094505050505060206040518083038186803b158015610d6a57600080fd5b505afa158015610d7e573d6000803e3d6000fd5b505050506040513d6020811015610d9457600080fd5b5051949350505050565b610de285858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250889350879250869150806110d3565b5050505050565b6224ea0081565b60035481565b6000546001600160a01b031690565b6000546001600160a01b0316331490565b60006003610e2383611646565b101592915050565b6000610e6e84848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250869250610c2c915050565b905080341015610e7d57600080fd5b60008484604051808383808284376040805193909101839003832060015463c475abff60e01b855260048501829052602485018b90529151909750600096506001600160a01b03909116945063c475abff93506044808401936020935082900301818787803b158015610eef57600080fd5b505af1158015610f03573d6000803e3d6000fd5b505050506040513d6020811015610f1957600080fd5b5051905034831015610f565760405133903485900380156108fc02916000818181858888f19350505050158015610f54573d6000803e3d6000fd5b505b817f3da24c024582931cfaf8267d8ed24d13a82a8068d5bd337d30ec45cea4e506ae8787868560405180806020018481526020018381526020018281038252868682818152602001925080828437600083820152604051601f909101601f191690920182900397509095505050505050a2505050505050565b80516020820120600090610fe283610e16565b80156110625750600154604080516312dc929d60e31b81526004810184905290516001600160a01b03909216916396e494e891602480820192602092909190829003018186803b15801561103557600080fd5b505afa158015611049573d6000803e3d6000fd5b505050506040513d602081101561105f57600080fd5b50515b9392505050565b60045481565b6004546000828152600560205260409020544291011061108e57600080fd5b6000908152600560205260409020429055565b6110a9610e05565b6110b257600080fd5b610a508161172e565b60006110cb848484600080610a53565b949350505050565b60006110e28787868686610a53565b905060006110f188878461179c565b885160208a01209091508060006001600160a01b038716156114ac5760015460408051633f2891eb60e21b815260048101859052306024820152604481018c905290516001600160a01b039092169163fca247ac916064808201926020929091908290030181600087803b15801561116857600080fd5b505af115801561117c573d6000803e3d6000fd5b505050506040513d602081101561119257600080fd5b505160015460408051630ddf7fcb60e41b815290519293506000926001600160a01b039092169163ddf7fcb091600480820192602092909190829003018186803b1580156111df57600080fd5b505afa1580156111f3573d6000803e3d6000fd5b505050506040513d602081101561120957600080fd5b50516040805160208181019390935280820187905281518082038301815260608201808452815191850191909120600154633f15457f60e01b90925292519294506001600160a01b031692633f15457f92606480840193829003018186803b15801561127457600080fd5b505afa158015611288573d6000803e3d6000fd5b505050506040513d602081101561129e57600080fd5b505160408051630c4b7b8560e11b8152600481018490526001600160a01b038b8116602483015291519190921691631896f70a91604480830192600092919082900301818387803b1580156112f257600080fd5b505af1158015611306573d6000803e3d6000fd5b505050506001600160a01b0387161561139257876001600160a01b031663d5fa2b0082896040518363ffffffff1660e01b815260040180838152602001826001600160a01b03166001600160a01b0316815260200192505050600060405180830381600087803b15801561137957600080fd5b505af115801561138d573d6000803e3d6000fd5b505050505b60015460408051630a3b53db60e21b8152600481018690526001600160a01b038e81166024830152915191909216916328ed4f6c91604480830192600092919082900301818387803b1580156113e757600080fd5b505af11580156113fb573d6000803e3d6000fd5b50505050600160009054906101000a90046001600160a01b03166001600160a01b03166323b872dd308d866040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050600060405180830381600087803b15801561148e57600080fd5b505af11580156114a2573d6000803e3d6000fd5b505050505061154c565b6001600160a01b038616156114c057600080fd5b60015460408051633f2891eb60e21b8152600481018590526001600160a01b038d81166024830152604482018d90529151919092169163fca247ac9160648083019260209291908290030181600087803b15801561151d57600080fd5b505af1158015611531573d6000803e3d6000fd5b505050506040513d602081101561154757600080fd5b505190505b896001600160a01b0316837fca6abbe9d7f11422cb6ca7629fbf6fe9efb1c621f71ce8f02b9f2a230097404f8d87856040518080602001848152602001838152602001828103825285818151815260200191508051906020019080838360005b838110156115c45781810151838201526020016115ac565b50505050905090810190601f1680156115f15780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a3833411156116395760405133903486900380156108fc02916000818181858888f19350505050158015611637573d6000803e3d6000fd5b505b5050505050505050505050565b8051600090819081905b8082101561172557600085838151811061166657fe5b01602001516001600160f81b0319169050600160ff1b81101561168e57600183019250611719565b600760fd1b6001600160f81b0319821610156116af57600283019250611719565b600f60fc1b6001600160f81b0319821610156116d057600383019250611719565b601f60fb1b6001600160f81b0319821610156116f157600483019250611719565b603f60fa1b6001600160f81b03198216101561171257600583019250611719565b6006830192505b50600190920191611650565b50909392505050565b6001600160a01b03811661174157600080fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b600354600082815260056020526040812054909142910111156117be57600080fd5b600454600083815260056020526040902054429101116117dd57600080fd5b6117e684610fcf565b6117ef57600080fd5b600082815260056020526040812081905561180a8585610c2c565b90506224ea0084101561181c57600080fd5b803410156110cb57600080fdfe6d616b65436f6d6d69746d656e7457697468436f6e66696728737472696e672c616464726573732c627974657333322c616464726573732c6164647265737329726567697374657228737472696e672c616464726573732c75696e743235362c62797465733332296d616b65436f6d6d69746d656e7428737472696e672c616464726573732c6279746573333229726567697374657257697468436f6e66696728737472696e672c616464726573732c75696e743235362c627974657333322c616464726573732c6164647265737329a265627a7a72315820ba74b4e49afb22de09a9ebda5d073d93e2a2a7b2530ce50def390c32cac92ea064736f6c634300050c0032","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1":"0xc965345edac823d56812cd20a10316233916a605","0x2":"0xec71e4e674fe0f432693dc2b935c34bd2774c003","0x3":"0x258","0x4":"0x15180"}},"0xbdefcf6429d0ac68236a6beb321cbd2ce66b463c":{"nonce":2,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c80636d435421116100885780637b37e561116100635780637b37e561146102435780638b9e028b14610256578063906c87cc1461027657806393790f4414610289575f80fd5b80636d435421146101eb5780636e9bfd9f146101fe578063794593bc14610230575f80fd5b806314afd79e116100c357806314afd79e1461018157806333bc8572146101945780634e3f9580146101b757806351710e45146101d8575f80fd5b8063027cc764146100e95780630a96ad391461011957806313ad9cab1461016c575b5f80fd5b6100fc6100f7366004610c39565b61029c565b6040516001600160a01b0390911681526020015b60405180910390f35b604080517f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f81527fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167602082015201610110565b61017f61017a366004610c61565b610339565b005b6100fc61018f366004610ca9565b610531565b6101a76101a2366004610cc9565b61055c565b6040519015158152602001610110565b6101ca6101c5366004610ca9565b610595565b604051908152602001610110565b61017f6101e6366004610ca9565b6105bd565b61017f6101f9366004610cc9565b6106be565b61021161020c366004610cfa565b6107ae565b604080516001600160a01b039093168352901515602083015201610110565b6100fc61023e366004610d11565b610838565b61017f610251366004610ca9565b610a0a565b610269610264366004610ca9565b610aab565b6040516101109190610d32565b6100fc610284366004610ca9565b610b28565b6101ca610297366004610ca9565b610b53565b5f6102a683610b8e565b6001600160a01b0383165f908152602081905260409020600301548083106102f157604051636ceb340b60e01b81526001600160a01b03851660048201526024015b60405180910390fd5b6001600160a01b0384165f90815260208190526040902060030180548490811061031d5761031d610d7e565b5f918252602090912001546001600160a01b0316949350505050565b61034283610bc6565b60405163c4e8fcb560e01b81526001600160a01b038381166004830152821515602483015284169063c4e8fcb5906044015f604051808303815f87803b15801561038a575f80fd5b505af115801561039c573d5f803e3d5ffd5b505050506001600160a01b038381165f908152602081815260408083209386168352600484019091529020548015158380156103d6575080155b15610425576003830180546001810182555f828152602080822090920180546001600160a01b0319166001600160a01b038a169081179091559254928152600486019091526040902055610529565b831580156104305750805b156105295760038301545f198301905f9061044d90600190610d92565b90508181146104d8575f85600301828154811061046c5761046c610d7e565b5f918252602090912001546003870180546001600160a01b03909216925082918590811061049c5761049c610d7e565b5f91825260208083209190910180546001600160a01b0319166001600160a01b0394851617905592909116815260048701909152604090208490555b846003018054806104eb576104eb610db7565b5f828152602080822083015f1990810180546001600160a01b03191690559092019092556001600160a01b0389168252600487019052604081205550505b505050505050565b5f61053b82610b8e565b506001600160a01b039081165f908152602081905260409020600101541690565b5f61056683610b8e565b506001600160a01b039182165f9081526020818152604080832093909416825260049092019091522054151590565b5f61059f82610b8e565b506001600160a01b03165f9081526020819052604090206003015490565b6105c681610b8e565b6001600160a01b038181165f9081526020819052604090206002015416331461060d576040516388c3a11560e01b81526001600160a01b03821660048201526024016102e8565b6040515f907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da908290a26001600160a01b038082165f818152602081905260408082206002810180546001600160a01b031916905560010154905133949190911692917fc8894f26f396ce8c004245c8b7cd1b92103a6e4302fcbab883987149ac01b7ec91a46001600160a01b03165f90815260208190526040902060010180546001600160a01b03191633179055565b6106c782610bc6565b6001600160a01b0381166106f95760405163a388d26360e01b81526001600160a01b03831660048201526024016102e8565b6001600160a01b038083165f9081526020819052604090206002015481169082160361074b576040516365e0406560e11b81526001600160a01b038084166004830152821660248201526044016102e8565b6040516001600160a01b038216907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da905f90a26001600160a01b039182165f90815260208190526040902060020180546001600160a01b03191691909216179055565b5f8060ff60f81b30847f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f6040516020016107eb9493929190610dcb565b60408051601f198184030181529190528051602090910120936001600160a01b0385163f7fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167149350915050565b5f6001600160a01b0382166108605760405163267eaa8160e21b815260040160405180910390fd5b606083901c3314610884576040516332db94d160e21b815260040160405180910390fd5b6040516108c3906001600160f81b031990309086907f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f90602001610dcb565b604051602081830303815290604052805190602001205f1c90507fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167816001600160a01b03163f0361093257604051633194665960e11b81526001600160a01b03821660048201526024016102e8565b8260405161093f90610c16565b8190604051809103905ff590508015801561095c573d5f803e3d5ffd5b50506001600160a01b038181165f81815260208181526040918290206001810180546001600160a01b03191695881695909517909455868455815192835282018690527f4397af6128d529b8ae0442f99db1296d5136062597a15bbc61c1b2a6431a7d15910160405180910390a16040516001600160a01b03808516915f918516907fc8894f26f396ce8c004245c8b7cd1b92103a6e4302fcbab883987149ac01b7ec908390a45092915050565b610a1381610bc6565b6001600160a01b038181165f9081526020819052604090206002015416610a58576040516335809b0b60e11b81526001600160a01b03821660048201526024016102e8565b6040515f907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da908290a26001600160a01b03165f90815260208190526040902060020180546001600160a01b0319169055565b6060610ab682610b8e565b6001600160a01b0382165f908152602081815260409182902060030180548351818402810184019094528084529091830182828015610b1c57602002820191905f5260205f20905b81546001600160a01b03168152600190910190602001808311610afe575b50505050509050919050565b5f610b3282610b8e565b506001600160a01b039081165f908152602081905260409020600201541690565b6001600160a01b0381165f9081526020819052604090205480610b89576040516304ca820960e41b815260040160405180910390fd5b919050565b6001600160a01b0381165f90815260208190526040902054610bc3576040516304ca820960e41b815260040160405180910390fd5b50565b610bcf81610b8e565b6001600160a01b038181165f90815260208190526040902060010154163314610bc35760405163d4ed9a1760e01b81526001600160a01b03821660048201526024016102e8565b610a4180610e0583390190565b80356001600160a01b0381168114610b89575f80fd5b5f8060408385031215610c4a575f80fd5b610c5383610c23565b946020939093013593505050565b5f805f60608486031215610c73575f80fd5b610c7c84610c23565b9250610c8a60208501610c23565b915060408401358015158114610c9e575f80fd5b809150509250925092565b5f60208284031215610cb9575f80fd5b610cc282610c23565b9392505050565b5f8060408385031215610cda575f80fd5b610ce383610c23565b9150610cf160208401610c23565b90509250929050565b5f60208284031215610d0a575f80fd5b5035919050565b5f8060408385031215610d22575f80fd5b82359150610cf160208401610c23565b602080825282518282018190525f9190848201906040850190845b81811015610d725783516001600160a01b031683529284019291840191600101610d4d565b50909695505050505050565b634e487b7160e01b5f52603260045260245ffd5b81810381811115610db157634e487b7160e01b5f52601160045260245ffd5b92915050565b634e487b7160e01b5f52603160045260245ffd5b6001600160f81b031994909416845260609290921b6bffffffffffffffffffffffff19166001840152601583015260358201526055019056fe60a060405234801561000f575f80fd5b5033608052608051610a1561002c5f395f6101d20152610a155ff3fe608060405234801561000f575f80fd5b506004361061004a575f3560e01c80634ce34aa21461004e578063899e104c1461007e5780638df25d9214610091578063c4e8fcb5146100a4575b5f80fd5b61006161005c366004610834565b6100b9565b6040516001600160e01b0319909116815260200160405180910390f35b61006161008c3660046108b4565b610121565b61006161009f36600461091b565b61018a565b6100b76100b2366004610969565b6101c7565b005b5f335f525f60205260405f20546100dd576349ed56f960e11b5f523360045260245ffd5b815f5b81811015610110576101088585838181106100fd576100fd6109a2565b905060c002016102c4565b6001016100e0565b50632671a55160e11b949350505050565b5f335f525f60205260405f2054610145576349ed56f960e11b5f523360045260245ffd5b835f5b8181101561016d576101658787838181106100fd576100fd6109a2565b600101610148565b506101788484610436565b50632267841360e21b95945050505050565b5f335f525f60205260405f20546101ae576349ed56f960e11b5f523360045260245ffd5b6101b88383610436565b506346f92ec960e11b92915050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610210576040516336abb4df60e11b815260040160405180910390fd5b6001600160a01b0382165f9081526020819052604090205481151560ff909116151503610268576040516349271a0f60e11b81526001600160a01b038316600482015281151560248201526044015b60405180910390fd5b6001600160a01b0382165f8181526020818152604091829020805460ff191685151590811790915591519182527fae63067d43ac07563b7eb8db6595635fc77f1578a2a5ea06ba91b63e2afa37e2910160405180910390a25050565b60016102d360208301836109ca565b60038111156102e4576102e46109b6565b03610329576103266102fc60408301602084016109ef565b61030c60608401604085016109ef565b61031c60808501606086016109ef565b8460a0013561056c565b50565b600261033860208301836109ca565b6003811115610349576103496109b6565b036103b6578060a00135600114610379576040516369f9582760e01b815260a0820135600482015260240161025f565b61032661038c60408301602084016109ef565b61039c60608401604085016109ef565b6103ac60808501606086016109ef565b8460800135610660565b60036103c560208301836109ca565b60038111156103d6576103d66109b6565b0361041d576103266103ee60408301602084016109ef565b6103fe60608401604085016109ef565b61040e60808501606086016109ef565b84608001358560a00135610715565b604051631e4cbc7f60e21b815260040160405180910390fd5b808280631759616b60e11b6020525f5b8381101561055f57823582018035803b61046b57635f15d6725f52806020526024601cfd5b60a08201358060051b60c0018060808501351460a0606086013514168185013583141615905080156104a657633ae8821360e21b5f5260045ffd5b506020860195506080602084016024378060061b60400190508060a00160a4525f8160c401528060c4018160a0850160c4375f808260205f875af1935083610550573d1561053057601f3d0160051c91508060051c826003028184111561051a578184036003028280028580020360091c01015b5a60208201101561052d573d5f803e3d5ffd5b50505b6357e222f160e11b5f528260045260c0606452608451602001608452805ffd5b50505050600181019050610446565b5050505060806040525050565b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166106515780873b15151661065157806106405781610623573d1561060257601f3d0160051c8360051c81600302818311156105eb578183036003028280028480020360091c01015b5a6020820110156105fe573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b833b61067757635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af180610707573d156106e557601f3d0160051c8260051c81600302818311156106ce578183036003028280028480020360091c01015b5a6020820110156106e1573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b61072c57635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af1806107d1573d156107b057601f3d0160051c8560051c8160030281831115610799578183036003028280028480020360091c01015b5a6020820110156107ac573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b5f8083601f8401126107fc575f80fd5b50813567ffffffffffffffff811115610813575f80fd5b60208301915083602060c08302850101111561082d575f80fd5b9250929050565b5f8060208385031215610845575f80fd5b823567ffffffffffffffff81111561085b575f80fd5b610867858286016107ec565b90969095509350505050565b5f8083601f840112610883575f80fd5b50813567ffffffffffffffff81111561089a575f80fd5b6020830191508360208260051b850101111561082d575f80fd5b5f805f80604085870312156108c7575f80fd5b843567ffffffffffffffff808211156108de575f80fd5b6108ea888389016107ec565b90965094506020870135915080821115610902575f80fd5b5061090f87828801610873565b95989497509550505050565b5f806020838503121561092c575f80fd5b823567ffffffffffffffff811115610942575f80fd5b61086785828601610873565b80356001600160a01b0381168114610964575f80fd5b919050565b5f806040838503121561097a575f80fd5b6109838361094e565b915060208301358015158114610997575f80fd5b809150509250929050565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52602160045260245ffd5b5f602082840312156109da575f80fd5b8135600481106109e8575f80fd5b9392505050565b5f602082840312156109ff575f80fd5b6109e88261094e56fea164736f6c6343000818000aa164736f6c6343000818000a","storage":{}},"0xbe5deac45dd1ca4ee18dc2d585d84d3d3cb82b0d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c806341539d4a146100465780634d5505d314610097578063afa764d7146100b1575b600080fd5b6100636004803603602081101561005c57600080fd5b50356100dc565b6040805195865260208601949094528484019290925260608401526001600160a01b03166080830152519081900360a00190f35b61009f610114565b60408051918252519081900360200190f35b6100da600480360360608110156100c757600080fd5b508035906020810135906040013561011a565b005b60006020819052908152604090208054600182015460028301546003840154600490940154929391929091906001600160a01b031685565b60015481565b6101226101eb565b506040805160a0810182528481526020808201858152828401858152426060808601918252336080870181815260018054810180825560009081528089528a81208a518155975188830155955160028801559351600387015551600490950180546001600160a01b0319166001600160a01b0390961695909517909455905486518981529485018890528487018a905295519495919491937fba5de06d22af2685c6c7765f60067f7d2b08c2d29f53cdf14d67f6d1c9bfb527929081900390910190a450505050565b6040518060a001604052806000801916815260200160008152602001600081526020016000815260200160006001600160a01b03168152509056fea164736f6c6343000606000a","storage":{"0x1":"0x0"}},"0xbe92182cab5b84fd18b34881a0c32771e84f5b8b":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061021c5760003560e01c80638da5cb5b11610125578063bebec6b4116100ad578063e985e9c51161007c578063e985e9c514610540578063f059235914610553578063f2fde38b14610566578063ffa1ad7414610579578063ffad6f551461059d57600080fd5b8063bebec6b4146104e7578063bfc5429b146104fa578063c15ae7cf1461050d578063c87b56dd1461052d57600080fd5b8063a81ce6f9116100f4578063a81ce6f91461046d578063ac9650d814610480578063b3f9e4cb146104a0578063b85afd28146104b3578063b98b3526146104d457600080fd5b80638da5cb5b146103f157806391015f6b146103f9578063933c051d1461041b578063a3f4df7e1461043d57600080fd5b80634bd79ed0116101a857806370a082311161017757806370a082311461038d578063715018a6146103a05780637e37479e146103a857806383caffbe146103bb578063869b8884146103ce57600080fd5b80634bd79ed0146103335780634f558e79146103465780636352211e14610359578063672b9f811461036c57600080fd5b80631bd8cc1a116101ef5780631bd8cc1a146102ac5780631be5e7ed146102cc578063276fabb1146102ec578063430c20811461030d578063485cc9551461032057600080fd5b806301ffc9a7146102215780630328075514610249578063081812fc1461026c57806313af403514610297575b600080fd5b61023461022f366004612c9d565b6105b0565b60405190151581526020015b60405180910390f35b61025c610257366004612d0b565b610638565b6040516102409493929190612dfe565b61027f61027a366004612e3c565b61065b565b6040516001600160a01b039091168152602001610240565b6102aa6102a5366004612e6a565b610760565b005b6102bf6102ba366004612d0b565b6107d1565b6040516102409190612e87565b6102df6102da366004612edb565b6107f0565b6040516102409190612f12565b6102ff6102fa366004612f25565b61091b565b604051908152602001610240565b61023461031b366004612f66565b61098f565b6102aa61032e366004612f92565b610aa2565b6102aa610341366004612fcb565b610bf5565b610234610354366004612e3c565b610e51565b61027f610367366004612e3c565b610e5c565b61037f61037a366004613036565b610e67565b604051610240929190613058565b6102ff61039b366004612e6a565b610f97565b6102aa611095565b6102ff6103b6366004612e6a565b6110a9565b6102bf6103c936600461307d565b611118565b6103e16103dc366004612fcb565b6114f0565b60405161024094939291906131bb565b61027f6116e6565b61040c610407366004612d0b565b611714565b60405161024093929190613208565b61042e610429366004612fcb565b611734565b60405161024093929190613234565b6102df604051806040016040528060118152602001702aa7299d10283937bc3c902932b0b232b960791b81525081565b61027f61047b366004612e3c565b6118bd565b61049361048e366004612f25565b61198b565b6040516102409190613277565b61027f6104ae366004612e3c565b611a7f565b6104c66104c1366004612d0b565b611b05565b6040516102409291906132d9565b6102df6104e23660046132fe565b611ce1565b6102df6104f5366004612e6a565b611cfb565b6102df6105083660046132fe565b611d6f565b61052061051b366004612f25565b611d89565b6040516102409190613371565b6102df61053b366004612e3c565b611e37565b61023461054e366004612f92565b611f09565b6102aa610561366004612fcb565b611f54565b6102aa610574366004612e6a565b612018565b6102df604051806040016040528060058152602001640302e352e360dc1b81525081565b6102aa6105ab366004613384565b612085565b60006001600160e01b031982166362526e6360e01b14806105e157506001600160e01b03198216636fa624af60e11b145b806105fc57506001600160e01b031982166308da864d60e31b145b8061061757506001600160e01b03198216638584880360e01b145b8061063257506301ffc9a760e01b6001600160e01b03198316145b92915050565b6000806060806106498787876120d8565b93509350935093505b93509350935093565b60006106668261233a565b61067257506000919050565b61067b826123d2565b6106f25760665460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa1580156106c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106ed91906133bd565b610632565b60655460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa15801561073c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061063291906133bd565b600061076a6116e6565b6001600160a01b0316146107c55760405162461bcd60e51b815260206004820152601e60248201527f50726f78795265616465723a204f574e45525f414c52454144595f534554000060448201526064015b60405180910390fd5b6107ce81612419565b50565b60606107e66107e0848661346a565b83612495565b90505b9392505050565b60606107fb826123d2565b1561088057606554604051631be5e7ed60e01b81526001600160a01b0390911690631be5e7ed9061083490879087908790600401613547565b600060405180830381865afa158015610851573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261087991908101906135b0565b90506107e9565b600061088b83612617565b90506001600160a01b0381163b1561091357604051631be5e7ed60e01b81526001600160a01b03821690631be5e7ed906108cd90889088908890600401613547565b600060405180830381865afa92505050801561090b57506040513d6000823e601f3d908101601f1916820160405261090891908101906135b0565b60015b156109135791505b509392505050565b60655460405163276fabb160e01b81526000916001600160a01b03169063276fabb19061094e908690869060040161366c565b602060405180830381865afa15801561096b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613680565b600061099a8261233a565b6109a657506000610632565b6109af826123d2565b610a2d5760665460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a04573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a289190613699565b6107e9565b60655460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a7e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613699565b600054610100900460ff1615808015610ac25750600054600160ff909116105b80610adc5750303b158015610adc575060005460ff166001145b610b3f5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107bc565b6000805460ff191660011790558015610b62576000805461ff0019166101001790555b606580546001600160a01b038086166001600160a01b0319928316179092556066805492851692909116919091179055610b9a61268a565b610ba261268a565b610baa6126b1565b8015610bf0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b610bfd6126e1565b828114610c4c5760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107bc565b60005b83811015610e4a5760006068868684818110610c6d57610c6d6136bb565b9050602002810190610c7f91906136d1565b604051610c8d929190613717565b908152604051908190036020019020541115610cf1576068858583818110610cb757610cb76136bb565b9050602002810190610cc991906136d1565b604051610cd7929190613717565b90815260200160405180910390206000610cf19190612c18565b60005b838383818110610d0657610d066136bb565b9050602002810190610d189190613727565b9050811015610ddc576068868684818110610d3557610d356136bb565b9050602002810190610d4791906136d1565b604051610d55929190613717565b9081526020016040518091039020848484818110610d7557610d756136bb565b9050602002810190610d879190613727565b83818110610d9757610d976136bb565b9050602002810190610da991906136d1565b82546001810184556000938452602090932090920191610dc991836137f8565b5080610dd4816138cd565b915050610cf4565b507fb2b57b54285120d17f49f2490a39ef791441fd0ad1e6b6818c23262bf91f061c858583818110610e1057610e106136bb565b9050602002810190610e2291906136d1565b604051610e309291906138e6565b60405180910390a180610e42816138cd565b915050610c4f565b5050505050565b60006106328261233a565b600061063282612740565b606080610e73836123d2565b15610ef95760655460405163672b9f8160e01b815260048101869052602481018590526001600160a01b039091169063672b9f8190604401600060405180830381865afa158015610ec8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610ef091908101906138fa565b91509150610f90565b6000610f0484612617565b90506001600160a01b0381163b15610f8e5760405163672b9f8160e01b815260048101869052602481018590526001600160a01b0382169063672b9f8190604401600060405180830381865afa925050508015610f8357506040513d6000823e601f3d908101601f19168201604052610f8091908101906138fa565b60015b15610f8e5790935091505b505b9250929050565b6065546040516370a0823160e01b81526001600160a01b03838116600483015260009283929116906370a0823190602401602060405180830381865afa158015610fe5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110099190613680565b6066549091506001600160a01b031615610632576066546040516370a0823160e01b81526001600160a01b038581166004830152909116906370a0823190602401602060405180830381865afa158015611067573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061108b9190613680565b6107e9908261395d565b61109d6126e1565b6110a76000612419565b565b606554604051633f1ba3cf60e11b81526001600160a01b0383811660048301526000921690637e37479e90602401602060405180830381865afa1580156110f4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190613680565b606060006067868660405161112e929190613717565b9081526020016040518091039020805461114790613770565b80601f016020809104026020016040519081016040528092919081815260200182805461117390613770565b80156111c05780601f10611195576101008083540402835291602001916111c0565b820191906000526020600020905b8154815290600101906020018083116111a357829003601f168201915b5050505050905080516000036111d657506114e8565b6000604051806040016040528060068152602001653a37b5b2b71760d11b81525090506000604051806040016040528060088152602001672e6164647265737360c01b81525090506000604051806040016040528060018152602001601760f91b815250905060008385838c8c868d8d8a60405160200161125f99989796959493929190613970565b6040516020818303038152906040529050600060688260405161128291906139f3565b9081526020016040518091039020805480602002602001604051908101604052809291908181526020016000905b8282101561135c5783829060005260206000200180546112cf90613770565b80601f01602080910402602001604051908101604052809291908181526020018280546112fb90613770565b80156113485780601f1061131d57610100808354040283529160200191611348565b820191906000526020600020905b81548152906001019060200180831161132b57829003601f168201915b5050505050815260200190600101906112b0565b50505050905080516003611370919061395d565b6001600160401b03811115611387576113876133da565b6040519080825280602002602001820160405280156113ba57816020015b60608152602001906001900390816113a55790505b50965081876000815181106113d1576113d16136bb565b602002602001018190525060005b815181101561143e578181815181106113fa576113fa6136bb565b602002602001015188826001611410919061395d565b81518110611420576114206136bb565b60200260200101819052508080611436906138cd565b9150506113df565b508486848d8d8860405160200161145a96959493929190613a0f565b6040516020818303038152906040528782516001611478919061395d565b81518110611488576114886136bb565b60200260200101819052508486856040516020016114a893929190613a72565b60405160208183030381529060405287825160026114c6919061395d565b815181106114d6576114d66136bb565b60200260200101819052505050505050505b949350505050565b6060808080846001600160401b0381111561150d5761150d6133da565b604051908082528060200260200182016040528015611536578160200160208202803683370190505b509350846001600160401b03811115611551576115516133da565b60405190808252806020026020018201604052801561157a578160200160208202803683370190505b509250846001600160401b03811115611595576115956133da565b6040519080825280602002602001820160405280156115c857816020015b60608152602001906001900390816115b35790505b509150846001600160401b038111156115e3576115e36133da565b60405190808252806020026020018201604052801561161657816020015b60608152602001906001900390816116015790505b50905060005b858110156116da57611647898989898581811061163b5761163b6136bb565b905060200201356120d8565b888581518110611659576116596136bb565b60200260200101888681518110611672576116726136bb565b6020026020010188878151811061168b5761168b6136bb565b602002602001018888815181106116a4576116a46136bb565b6020908102919091010193909352929091526001600160a01b0392831690915291169052806116d2816138cd565b91505061161c565b50945094509450949050565b7fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c8121905546001600160a01b031690565b6000806060611724868686612761565b9250925092505b93509350939050565b60608080836001600160401b03811115611750576117506133da565b604051908082528060200260200182016040528015611779578160200160208202803683370190505b509250836001600160401b03811115611794576117946133da565b6040519080825280602002602001820160405280156117bd578160200160208202803683370190505b509150836001600160401b038111156117d8576117d86133da565b60405190808252806020026020018201604052801561180b57816020015b60608152602001906001900390816117f65790505b50905060005b848110156118b25761183c8888888885818110611830576118306136bb565b90506020020135612761565b86848151811061184e5761184e6136bb565b60200260200101868581518110611867576118676136bb565b60200260200101868681518110611880576118806136bb565b60209081029190910101929092526001600160a01b0392831690915291169052806118aa816138cd565b915050611811565b509450945094915050565b606554604051634f558e7960e01b8152600481018390526000916001600160a01b031690634f558e7990602401602060405180830381865afa158015611907573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061192b9190613699565b156119415750506065546001600160a01b031690565b6066546001600160a01b03161580159061196d575060006119618361296c565b6001600160a01b031614155b156119835750506066546001600160a01b031690565b506000919050565b6060816001600160401b038111156119a5576119a56133da565b6040519080825280602002602001820160405280156119d857816020015b60608152602001906001900390816119c35790505b50905060005b82811015611a7857611a48308585848181106119fc576119fc6136bb565b9050602002810190611a0e91906136d1565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061299e92505050565b828281518110611a5a57611a5a6136bb565b60200260200101819052508080611a70906138cd565b9150506119de565b5092915050565b6000611a8a8261233a565b611a9657506000919050565b611a9f826123d2565b611ad45760665460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb906024016106ac565b60655460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb9060240161071f565b606080836001600160401b03811115611b2057611b206133da565b604051908082528060200260200182016040528015611b5357816020015b6060815260200190600190039081611b3e5790505b509150836001600160401b03811115611b6e57611b6e6133da565b604051908082528060200260200182016040528015611ba157816020015b6060815260200190600190039081611b8c5790505b509050611bad836123d2565b15611c345760655460405163170b5fa560e31b81526001600160a01b039091169063b85afd2890611be690889088908890600401613ab5565b600060405180830381865afa158015611c03573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611c2b9190810190613b72565b91509150611cd9565b6000611c3f84612617565b90506001600160a01b0381163b15158015611c5957508415155b15611cd75760405163170b5fa560e31b81526001600160a01b0382169063b85afd2890611c8e90899089908990600401613ab5565b600060405180830381865afa925050508015611ccc57506040513d6000823e601f3d908101601f19168201604052611cc99190810190613b72565b60015b15611cd75790935091505b505b935093915050565b6060611cf08686868686612a92565b979650505050505050565b606554604051632fafb1ad60e21b81526001600160a01b038381166004830152606092169063bebec6b4906024015b600060405180830381865afa158015611d47573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261063291908101906135b0565b6060611d7e8686868686612a92565b509695505050505050565b6060816001600160401b03811115611da357611da36133da565b604051908082528060200260200182016040528015611dcc578160200160208202803683370190505b50905060005b82811015611a7857611dfb848483818110611def57611def6136bb565b90506020020135612740565b828281518110611e0d57611e0d6136bb565b6001600160a01b039092166020928302919091019091015280611e2f816138cd565b915050611dd2565b6060611e428261233a565b611e5a57505060408051602081019091526000815290565b611e63826123d2565b611ed85760665460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401600060405180830381865afa158015611eb0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106ed91908101906135b0565b60655460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401611d2a565b60405162461bcd60e51b815260206004820152601f60248201527f50726f78795265616465723a20554e535550504f525445445f4d4554484f440060448201526000906064016107bc565b611f5c6126e1565b828114611fab5760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107bc565b60005b83811015610e4a57612006858583818110611fcb57611fcb6136bb565b9050602002810190611fdd91906136d1565b858585818110611fef57611fef6136bb565b905060200281019061200191906136d1565b612b3e565b80612010816138cd565b915050611fae565b6120206126e1565b6001600160a01b0381166107c55760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107bc565b61208d6126e1565b60005b83811015610e4a576120c68585838181106120ad576120ad6136bb565b90506020028101906120bf91906136d1565b8585612b3e565b806120d0816138cd565b915050612090565b600080606080856001600160401b038111156120f6576120f66133da565b60405190808252806020026020018201604052801561212957816020015b60608152602001906001900390816121145790505b509150856001600160401b03811115612144576121446133da565b60405190808252806020026020018201604052801561217757816020015b60608152602001906001900390816121625790505b509050612183856123d2565b156122845760655460405163b3f9e4cb60e01b8152600481018790526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa1580156121d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121f591906133bd565b935061220085612bad565b60655460405163170b5fa560e31b81529194506001600160a01b03169063b85afd2890612235908a908a908a90600401613ab5565b600060405180830381865afa158015612252573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261227a9190810190613b72565b9092509050610652565b61228d85612617565b93506122988561296c565b92506001600160a01b0384163b151580156122b4575060008251115b156106525760405163170b5fa560e31b81526001600160a01b0385169063b85afd28906122e9908a908a908a90600401613ab5565b600060405180830381865afa92505050801561232757506040513d6000823e601f3d908101601f191682016040526123249190810190613b72565b60015b1561065257909250905093509350935093565b6000612345826123d2565b6123645760006123548361296c565b6001600160a01b03161415610632565b606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e79906024015b602060405180830381865afa1580156123ae573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190613699565b6066546000906001600160a01b031615806106325750606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401612391565b60006124236116e6565b9050817fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c812190580546001600160a01b0319166001600160a01b03928316179055604051838216918316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b606082516001600160401b038111156124b0576124b06133da565b6040519080825280602002602001820160405280156124e357816020015b60608152602001906001900390816124ce5790505b5090506124ef826123d2565b1561257257606554604051630dec660d60e11b81526001600160a01b0390911690631bd8cc1a906125269086908690600401613bcb565b600060405180830381865afa158015612543573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261256b9190810190613bed565b9050610632565b600061257d83612617565b90506001600160a01b0381163b15158015612599575060008451115b15611a7857604051630dec660d60e11b81526001600160a01b03821690631bd8cc1a906125cc9087908790600401613bcb565b600060405180830381865afa92505050801561260a57506040513d6000823e601f3d908101601f191682016040526126079190810190613bed565b60015b15611a7857949350505050565b60665460405163b3f9e4cb60e01b8152600481018390526000916001600160a01b03169063b3f9e4cb906024015b602060405180830381865afa92505050801561267e575060408051601f3d908101601f1916820190925261267b918101906133bd565b60015b61063257506000919050565b600054610100900460ff166110a75760405162461bcd60e51b81526004016107bc90613c21565b600054610100900460ff166126d85760405162461bcd60e51b81526004016107bc90613c21565b6110a733612419565b336126ea6116e6565b6001600160a01b0316146110a75760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107bc565b600061274b826123d2565b612758576106ed8261296c565b61063282612bad565b6000806060846001600160401b0381111561277e5761277e6133da565b6040519080825280602002602001820160405280156127b157816020015b606081526020019060019003908161279c5790505b5090506127bd846123d2565b156128bb5760655460405163b3f9e4cb60e01b8152600481018690526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561280b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061282f91906133bd565b925061283a84612bad565b606554604051630dec660d60e11b81529193506001600160a01b031690631bd8cc1a9061286f90899089908990600401613c6c565b600060405180830381865afa15801561288c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526128b49190810190613bed565b905061172b565b6128c484612617565b92506128cf8461296c565b91506001600160a01b0383163b151580156128e957508415155b1561172b57604051630dec660d60e11b81526001600160a01b03841690631bd8cc1a9061291e90899089908990600401613c6c565b600060405180830381865afa92505050801561295c57506040513d6000823e601f3d908101601f191682016040526129599190810190613bed565b60015b1561172b57905093509350939050565b6066546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401612645565b60606001600160a01b0383163b612a065760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b60648201526084016107bc565b600080846001600160a01b031684604051612a2191906139f3565b600060405180830381855af49150503d8060008114612a5c576040519150601f19603f3d011682016040523d82523d6000602084013e612a61565b606091505b5091509150612a898282604051806060016040528060278152602001613c8160279139612bdf565b95945050505050565b6060806000612aa388888888611118565b90506000612ab18286612495565b905060005b8151811015612b31576000828281518110612ad357612ad36136bb565b6020026020010151511115612b1f57828181518110612af457612af46136bb565b60200260200101519350818181518110612b1057612b106136bb565b60200260200101519450612b31565b80612b29816138cd565b915050612ab6565b5050509550959350505050565b818160678686604051612b52929190613717565b90815260200160405180910390209182612b6d9291906137f8565b507f0bf4b04a0f6d7d0800284e1abb0f58f795c0a25b9088634b6ab847be51001dec8484604051612b9f9291906138e6565b60405180910390a150505050565b6065546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401612645565b60608315612bee5750816107e9565b825115612bfe5782518084602001fd5b8160405162461bcd60e51b81526004016107bc9190612f12565b50805460008255906000526020600020908101906107ce91905b80821115612c4f576000612c468282612c53565b50600101612c32565b5090565b508054612c5f90613770565b6000825580601f10612c6f575050565b601f0160209004906000526020600020908101906107ce91905b80821115612c4f5760008155600101612c89565b600060208284031215612caf57600080fd5b81356001600160e01b0319811681146107e957600080fd5b60008083601f840112612cd957600080fd5b5081356001600160401b03811115612cf057600080fd5b6020830191508360208260051b8501011115610f9057600080fd5b600080600060408486031215612d2057600080fd5b83356001600160401b03811115612d3657600080fd5b612d4286828701612cc7565b909790965060209590950135949350505050565b60005b83811015612d71578181015183820152602001612d59565b50506000910152565b60008151808452612d92816020860160208601612d56565b601f01601f19169290920160200192915050565b600082825180855260208086019550808260051b84010181860160005b84811015612df157601f19868403018952612ddf838351612d7a565b98840198925090830190600101612dc3565b5090979650505050505050565b6001600160a01b03858116825284166020820152608060408201819052600090612e2a90830185612da6565b8281036060840152611cf08185612da6565b600060208284031215612e4e57600080fd5b5035919050565b6001600160a01b03811681146107ce57600080fd5b600060208284031215612e7c57600080fd5b81356107e981612e55565b6020815260006107e96020830184612da6565b60008083601f840112612eac57600080fd5b5081356001600160401b03811115612ec357600080fd5b602083019150836020828501011115610f9057600080fd5b600080600060408486031215612ef057600080fd5b83356001600160401b03811115612f0657600080fd5b612d4286828701612e9a565b6020815260006107e96020830184612d7a565b60008060208385031215612f3857600080fd5b82356001600160401b03811115612f4e57600080fd5b612f5a85828601612cc7565b90969095509350505050565b60008060408385031215612f7957600080fd5b8235612f8481612e55565b946020939093013593505050565b60008060408385031215612fa557600080fd5b8235612fb081612e55565b91506020830135612fc081612e55565b809150509250929050565b60008060008060408587031215612fe157600080fd5b84356001600160401b0380821115612ff857600080fd5b61300488838901612cc7565b9096509450602087013591508082111561301d57600080fd5b5061302a87828801612cc7565b95989497509550505050565b6000806040838503121561304957600080fd5b50508035926020909101359150565b60408152600061306b6040830185612d7a565b8281036020840152612a898185612d7a565b6000806000806040858703121561309357600080fd5b84356001600160401b03808211156130aa57600080fd5b6130b688838901612e9a565b909650945060208701359150808211156130cf57600080fd5b5061302a87828801612e9a565b600081518084526020808501945080840160005b838110156131155781516001600160a01b0316875295820195908201906001016130f0565b509495945050505050565b60008282518085526020808601955060058183821b8501018287016000805b868110156131ac57601f1988850381018c5283518051808752908801908887019080891b88018a01865b8281101561319557858a8303018452613183828651612d7a565b948c0194938c01939150600101613169565b509e8a019e9750505093870193505060010161313f565b50919998505050505050505050565b6080815260006131ce60808301876130dc565b82810360208401526131e081876130dc565b905082810360408401526131f48186613120565b90508281036060840152611cf08185613120565b6001600160a01b03848116825283166020820152606060408201819052600090612a8990830184612da6565b60608152600061324760608301866130dc565b828103602084015261325981866130dc565b9050828103604084015261326d8185613120565b9695505050505050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156132cc57603f198886030184526132ba858351612d7a565b9450928501929085019060010161329e565b5092979650505050505050565b6040815260006132ec6040830185612da6565b8281036020840152612a898185612da6565b60008060008060006060868803121561331657600080fd5b85356001600160401b038082111561332d57600080fd5b61333989838a01612e9a565b9097509550602088013591508082111561335257600080fd5b5061335f88828901612e9a565b96999598509660400135949350505050565b6020815260006107e960208301846130dc565b6000806000806040858703121561339a57600080fd5b84356001600160401b03808211156133b157600080fd5b6130b688838901612cc7565b6000602082840312156133cf57600080fd5b81516107e981612e55565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715613418576134186133da565b604052919050565b60006001600160401b03821115613439576134396133da565b5060051b60200190565b60006001600160401b0382111561345c5761345c6133da565b50601f01601f191660200190565b600061347d61347884613420565b6133f0565b80848252602080830192508560051b85013681111561349b57600080fd5b855b818110156135125780356001600160401b038111156134bc5760008081fd5b870136601f8201126134ce5760008081fd5b80356134dc61347882613443565b81815236868385010111156134f15760008081fd5b8186840187830137600091810186019190915286525093820193820161349d565b50919695505050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60408152600061355b60408301858761351e565b9050826020830152949350505050565b600082601f83011261357c57600080fd5b815161358a61347882613443565b81815284602083860101111561359f57600080fd5b6114e8826020830160208701612d56565b6000602082840312156135c257600080fd5b81516001600160401b038111156135d857600080fd5b6114e88482850161356b565b60008383855260208086019550808560051b8301018460005b87811015612df157848303601f19018952813536889003601e1901811261362357600080fd5b870184810190356001600160401b0381111561363e57600080fd5b80360382131561364d57600080fd5b61365885828461351e565b9a86019a94505050908301906001016135fd565b6020815260006107e66020830184866135e4565b60006020828403121561369257600080fd5b5051919050565b6000602082840312156136ab57600080fd5b815180151581146107e957600080fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e198436030181126136e857600080fd5b8301803591506001600160401b0382111561370257600080fd5b602001915036819003821315610f9057600080fd5b8183823760009101908152919050565b6000808335601e1984360301811261373e57600080fd5b8301803591506001600160401b0382111561375857600080fd5b6020019150600581901b3603821315610f9057600080fd5b600181811c9082168061378457607f821691505b6020821081036137a457634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115610bf057600081815260208120601f850160051c810160208610156137d15750805b601f850160051c820191505b818110156137f0578281556001016137dd565b505050505050565b6001600160401b0383111561380f5761380f6133da565b6138238361381d8354613770565b836137aa565b6000601f841160018114613857576000851561383f5750838201355b600019600387901b1c1916600186901b178355610e4a565b600083815260209020601f19861690835b828110156138885786850135825560209485019460019092019101613868565b50868210156138a55760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b634e487b7160e01b600052601160045260246000fd5b6000600182016138df576138df6138b7565b5060010190565b6020815260006107e660208301848661351e565b6000806040838503121561390d57600080fd5b82516001600160401b038082111561392457600080fd5b6139308683870161356b565b9350602085015191508082111561394657600080fd5b506139538582860161356b565b9150509250929050565b80820180821115610632576106326138b7565b60008a51613982818460208f01612d56565b8a5190830190613996818360208f01612d56565b8a519101906139a9818360208e01612d56565b0187898237600090880190815286516139c6818360208b01612d56565b0184868237600090850190815283516139e3818360208801612d56565b019b9a5050505050505050505050565b60008251613a05818460208701612d56565b9190910192915050565b60008751613a21818460208c01612d56565b875190830190613a35818360208c01612d56565b8751910190613a48818360208b01612d56565b018486823760009085019081528351613a65818360208801612d56565b0198975050505050505050565b60008451613a84818460208901612d56565b845190830190613a98818360208901612d56565b8451910190613aab818360208801612d56565b0195945050505050565b6040808252810183905260006001600160fb1b03841115613ad557600080fd5b8360051b808660608501376020830193909352500160600192915050565b600082601f830112613b0457600080fd5b81516020613b1461347883613420565b82815260059290921b84018101918181019086841115613b3357600080fd5b8286015b84811015611d7e5780516001600160401b03811115613b565760008081fd5b613b648986838b010161356b565b845250918301918301613b37565b60008060408385031215613b8557600080fd5b82516001600160401b0380821115613b9c57600080fd5b613ba886838701613af3565b93506020850151915080821115613bbe57600080fd5b5061395385828601613af3565b604081526000613bde6040830185612da6565b90508260208301529392505050565b600060208284031215613bff57600080fd5b81516001600160401b03811115613c1557600080fd5b6114e884828501613af3565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60408152600061355b6040830185876135e456fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a","storage":{}},"0xc2110388dd54228ae0a834119457ede938bf0b57":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061021e5760003560e01c80638da5cb5b11610123578063acf1a841116100ab578063d547741f1161006f578063d547741f14610682578063f14fcbc8146106a2578063f23a6e61146106c2578063f2fde38b146106e2578063ffa1ad741461070257600080fd5b8063acf1a841146105e0578063bc197c8114610600578063c0c53b8b14610620578063cf01585314610640578063d53913931461066057600080fd5b8063a0e3aef1116100f2578063a0e3aef114610534578063a217fddf14610554578063a3f4df7e14610569578063a4247400146105a0578063aa271e1a146105c057600080fd5b80638da5cb5b146104c157806391d14854146104df578063983b2d56146104ff578063986502751461051f57600080fd5b80635fc1964f116101a65780636ccbae5f116101755780636ccbae5f14610439578063715018a61461045957806371e2a6571461046e57806381c81d351461048e57806383e7f6ff146104a157600080fd5b80635fc1964f146103ae578063634486da146103ce5780636352211e146103e15780636a8be89e1461041957600080fd5b80632f2ff15d116101ed5780632f2ff15d146103035780633092afd51461032557806336568abe14610345578063423f6cef14610365578063572b6c051461038557600080fd5b806301ffc9a71461022a578063150b7a021461025f5780631bf7e13e14610298578063248a9ca3146102c557600080fd5b3661022557005b600080fd5b34801561023657600080fd5b5061024a6102453660046125f2565b610733565b60405190151581526020015b60405180910390f35b34801561026b57600080fd5b5061027f61027a366004612672565b610779565b6040516001600160e01b03199091168152602001610256565b3480156102a457600080fd5b506102b86102b33660046126e4565b6108cb565b60405161025691906127a4565b3480156102d157600080fd5b506102f56102e03660046127b7565b600090815260fb602052604090206001015490565b604051908152602001610256565b34801561030f57600080fd5b5061032361031e3660046127d0565b610997565b005b34801561033157600080fd5b50610323610340366004612800565b6109c1565b34801561035157600080fd5b506103236103603660046127d0565b6109d5565b34801561037157600080fd5b5061032361038036600461281d565b610a68565b34801561039157600080fd5b5061024a6103a0366004612800565b6001600160a01b0316301490565b3480156103ba57600080fd5b506103236103c936600461288f565b610bd9565b6103236103dc366004612800565b610c21565b3480156103ed57600080fd5b506104016103fc3660046127b7565b610ce4565b6040516001600160a01b039091168152602001610256565b34801561042557600080fd5b50610323610434366004612800565b610cef565b34801561044557600080fd5b506102f56104543660046127b7565b610d38565b34801561046557600080fd5b50610323610d7e565b34801561047a57600080fd5b5061032361048936600461288f565b610d92565b61032361049c366004612800565b610dda565b3480156104ad57600080fd5b506102f56104bc366004612934565b610e57565b3480156104cd57600080fd5b506097546001600160a01b0316610401565b3480156104eb57600080fd5b5061024a6104fa3660046127d0565b610efa565b34801561050b57600080fd5b5061032361051a366004612800565b610f25565b34801561052b57600080fd5b50610323610f36565b34801561054057600080fd5b506102f561054f366004612a5c565b610f50565b34801561056057600080fd5b506102f5600081565b34801561057557600080fd5b506102b86040518060400160405280600b81526020016a454e5320437573746f647960a81b81525081565b3480156105ac57600080fd5b5061024a6105bb3660046126e4565b610ffc565b3480156105cc57600080fd5b5061024a6105db366004612800565b61104f565b3480156105ec57600080fd5b506103236105fb366004612934565b611069565b34801561060c57600080fd5b5061027f61061b366004612b35565b611222565b34801561062c57600080fd5b5061032361063b366004612bf3565b6112db565b34801561064c57600080fd5b5061032361065b366004612c3e565b611485565b34801561066c57600080fd5b506102f56000805160206133f583398151915281565b34801561068e57600080fd5b5061032361069d3660046127d0565b611592565b3480156106ae57600080fd5b506103236106bd3660046127b7565b6115b7565b3480156106ce57600080fd5b5061027f6106dd366004612d20565b61162b565b3480156106ee57600080fd5b506103236106fd366004612800565b6116bc565b34801561070e57600080fd5b506102b860405180604001604052806005815260200164302e312e3360d81b81525081565b60006001600160e01b03198216630a85bd0160e11b148061076457506001600160e01b03198216630271189760e51b145b806107735750610773826116d8565b92915050565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004546000906001600160a01b0316806107b061170d565b6001600160a01b0316036108a957600080806107ce86880188612d9b565b9250925092506107dd8361171c565b6001600160a01b03841663b88d4fde30600080516020613415833981519152546040516001600160a01b03909116908c9061082390879030906000908b90602001612dfc565b6040516020818303038152906040526040518563ffffffff1660e01b81526004016108519493929190612e3c565b600060405180830381600087803b15801561086b57600080fd5b505af115801561087f573d6000803e3d6000fd5b5050505061089561088f8261174e565b846117d3565b50630a85bd0160e11b93506108c292505050565b6040516344e7d94960e01b815260040160405180910390fd5b95945050505050565b606060005a90506108dd858585610ffc565b6108fa57604051638baa579f60e01b815260040160405180910390fd5b61098c61090a6020870187612800565b3060408801358461091e60608b018b612e6f565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061185e92505050565b9150505b9392505050565b600082815260fb60205260409020600101546109b28161193f565b6109bc8383611950565b505050565b6109c96119d7565b6109d281611a50565b50565b6109dd61170d565b6001600160a01b0316816001600160a01b031614610a5a5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b610a648282611a68565b5050565b80610a7161170d565b6001600160a01b0316610a8382611aed565b6001600160a01b031614610ac55780610a9a61170d565b604051637ea58b1160e01b815260048101929092526001600160a01b03166024820152604401610a51565b610ace82611c03565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052600090610b22906060015b6040516020818303038152906040528051906020012090565b80546001600160a01b0319166001600160a01b0392909216919091179055600060008051602061341583398151915254604051637921219560e11b81523060048201526001600160a01b038681166024830152604482018690526001606483015260a06084830152600060a48301529091169150819063f242432a9060c401600060405180830381600087803b158015610bbb57600080fd5b505af1158015610bcf573d6000803e3d6000fd5b5050505050505050565b610be16119d7565b60005b8151811015610a6457610c0f828281518110610c0257610c02612eb5565b6020026020010151611a50565b80610c1981612ee1565b915050610be4565b610c2c6105db61170d565b610c485760405162461bcd60e51b8152600401610a5190612efa565b6001600160a01b038116610c9e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a51565b610ca781611c1c565b610caf610f36565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610a64573d6000803e3d6000fd5b600061077382611aed565b610cf76119d7565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c500480546001600160a01b0319166001600160a01b0392909216919091179055565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a838156020820152908101829052600090610d7790606001610b09565b5492915050565b610d866119d7565b610d906000611c34565b565b610d9a6119d7565b60005b8151811015610a6457610dc8828281518110610dbb57610dbb612eb5565b6020026020010151611c1c565b80610dd281612ee1565b915050610d9d565b610de56105db61170d565b610e015760405162461bcd60e51b8152600401610a5190612efa565b6001600160a01b038116610ca75760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a51565b6000805160206133d5833981519152546040516383e7f6ff60e01b81526000916001600160a01b031690829082906383e7f6ff90610e9d90899089908990600401612f58565b6040805180830381865afa158015610eb9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610edd9190612f7c565b60208101518151919250610ef091612fca565b9695505050505050565b600091825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610f2d6119d7565b6109d281611c1c565b610d906000805160206133f583398151915261036061170d565b6000805160206133d5833981519152546000906001600160a01b0316806365a69dcf8d85610f7e5730610f80565b8d5b8d8d8d8d8d8d8d6040518a63ffffffff1660e01b8152600401610fab9998979695949392919061306e565b602060405180830381865afa158015610fc8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fec91906130de565b9c9b505050505050505050505050565b600061104761100a856130f7565b3085858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611c8692505050565b949350505050565b60006107736000805160206133f583398151915283610efa565b6110746105db61170d565b6110905760405162461bcd60e51b8152600401610a5190612efa565b6002603354036110e25760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a51565b60026033556000805160206133d5833981519152546040516383e7f6ff60e01b81526001600160a01b039091169060009082906383e7f6ff9061112d90889088908890600401612f58565b6040805180830381865afa158015611149573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061116d9190612f7c565b6020810151815191925061118091612fca565b4710156111a05760405163050205f960e01b815260040160405180910390fd5b816001600160a01b031663acf1a841826020015183600001516111c39190612fca565b8787876040518563ffffffff1660e01b81526004016111e493929190612f58565b6000604051808303818588803b1580156111fd57600080fd5b505af1158015611211573d6000803e3d6000fd5b505060016033555050505050505050565b6000600080516020613415833981519152546001600160a01b031661124561170d565b6001600160a01b03161461126c576040516344e7d94960e01b815260040160405180910390fd5b600061127a83850185612800565b90506112858161171c565b60005b878110156112c4576112b28989838181106112a5576112a5612eb5565b90506020020135836117d3565b806112bc81612ee1565b915050611288565b5063bc197c8160e01b9a9950505050505050505050565b600054610100900460ff16158080156112fb5750600054600160ff909116105b806113155750303b158015611315575060005460ff166001145b6113785760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610a51565b6000805460ff19166001179055801561139b576000805461ff0019166101001790555b6000805160206133d583398151915280546001600160a01b038087166001600160a01b03199283161790925560008051602061341583398151915280548684169083161790557ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004805492851692909116919091179055611419611dc5565b611421611df3565b611429611df3565b611431611e1a565b611439611e51565b801561147f576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6114906105db61170d565b6114ac5760405162461bcd60e51b8152600401610a5190612efa565b6002603354036114fe5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a51565b600260338190555060006115478c8c8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061174e92505050565b905061155281611c03565b6115708c8c846115625730611564565b8c5b8c8c8c8c8c8c8c611e8a565b8161157f5761157f818b6117d3565b5050600160335550505050505050505050565b600082815260fb60205260409020600101546115ad8161193f565b6109bc8383611a68565b60006000805160206133d583398151915254604051631e29f97960e31b8152600481018490526001600160a01b039091169150819063f14fcbc890602401600060405180830381600087803b15801561160f57600080fd5b505af1158015611623573d6000803e3d6000fd5b505050505050565b6000600080516020613415833981519152546001600160a01b031661164e61170d565b6001600160a01b031614611675576040516344e7d94960e01b815260040160405180910390fd5b6001600160a01b038616156116a957600061169283850185612800565b905061169d8161171c565b6116a786826117d3565b505b5063f23a6e6160e01b9695505050505050565b6116c46119d7565b6116cd81611fd5565b6109d260008261204b565b60006001600160e01b03198216637965db0b60e01b148061077357506301ffc9a760e01b6001600160e01b0319831614610773565b6000611717612055565b905090565b6001600160a01b0381166109d25760405163b20f76e360e01b81526001600160a01b0382166004820152602401610a51565b60007f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae60001b826040516020016117859190613195565b604051602081830303815290604052805190602001206040516020016117b5929190918252602082015260400190565b60408051601f19818403018152919052805160209091012092915050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052819061181190606001610b09565b80546001600160a01b0319166001600160a01b039283161790556040519082169083907f45aa97e368889fb3527c1db60c59c2ae91e82f21778613449e46d4208c1c4b1290600090a35050565b606061186985612073565b600080876001600160a01b0316866118838b8a89896120d9565b6040516118909190613195565b60006040518083038160008787f1925050503d80600081146118ce576040519150601f19603f3d011682016040523d82523d6000602084013e6118d3565b606091505b5090925090506118e4603f876131b1565b5a116118f2576118f26131d3565b61193282826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c4544000000000000815250612109565b9998505050505050505050565b6109d28161194b61170d565b612142565b61195a8282610efa565b610a6457600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff1916600117905561199361170d565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6119df61170d565b6001600160a01b03166119fa6097546001600160a01b031690565b6001600160a01b031614610d905760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a51565b6109d26000805160206133f583398151915282611592565b611a728282610efa565b15610a6457600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff19169055611aa961170d565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101829052600090611b2c90606001610b09565b546001600160a01b0316905080611b595760405163124bad6360e31b815260048101839052602401610a51565b30600080516020613415833981519152546040516331a9108f60e11b8152600481018590526001600160a01b0390911690636352211e90602401602060405180830381865afa158015611bb0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bd491906131e9565b6001600160a01b031614611bfe576040516303b673fd60e21b815260048101839052602401610a51565b919050565b303303611c13576109d2816121a6565b6109d281612073565b6109d26000805160206133f58339815191528261204b565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015611ccd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cf191906130de565b90506000611d9f866060015180519060200120868860200151604051602001611d3f9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b9050818660200151148015610ef057508551610ef0906001600160a01b031682866121d0565b600054610100900460ff16611dec5760405162461bcd60e51b8152600401610a5190613206565b6001603355565b600054610100900460ff16610d905760405162461bcd60e51b8152600401610a5190613206565b600054610100900460ff16611e415760405162461bcd60e51b8152600401610a5190613206565b610d90611e4c61170d565b611c34565b600054610100900460ff16611e785760405162461bcd60e51b8152600401610a5190613206565b610d906000611e8561170d565b61204b565b6000805160206133d5833981519152546040516383e7f6ff60e01b81526001600160a01b039091169060009082906383e7f6ff90611ed0908f908f908e90600401612f58565b6040805180830381865afa158015611eec573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f109190612f7c565b60208101518151919250611f2391612fca565b471015611f435760405163050205f960e01b815260040160405180910390fd5b816001600160a01b03166374694a2b82602001518360000151611f669190612fca565b8e8e8e8e8e8e8e8e8e8e6040518c63ffffffff1660e01b8152600401611f959a99989796959493929190613251565b6000604051808303818588803b158015611fae57600080fd5b505af1158015611fc2573d6000803e3d6000fd5b5050505050505050505050505050505050565b611fdd6119d7565b6001600160a01b0381166120425760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610a51565b6109d281611c34565b610a648282611950565b600030330361206b575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290526000906060016040516020818303038152906040528051906020012090506120c88190565b546120d4906001612fca565b905550565b60608285856040516020016120f0939291906132c3565b6040516020818303038152906040529050949350505050565b60608315612118575081610990565b8251156121285782518084602001fd5b8160405162461bcd60e51b8152600401610a5191906127a4565b61214c8282610efa565b610a6457612164816001600160a01b03166014612312565b61216f836020612312565b604051602001612180929190613302565b60408051601f198184030181529082905262461bcd60e51b8252610a51916004016127a4565b6121ae6124ad565b81146109d257604051635637b6af60e11b815260048101829052602401610a51565b60008060006121df85856124c0565b909250905060008160048111156121f8576121f8613377565b1480156122165750856001600160a01b0316826001600160a01b0316145b1561222657600192505050610990565b600080876001600160a01b0316631626ba7e60e01b888860405160240161224e92919061338d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161228c9190613195565b600060405180830381855afa9150503d80600081146122c7576040519150601f19603f3d011682016040523d82523d6000602084013e6122cc565b606091505b50915091508180156122df575080516020145b801561230657508051630b135d3f60e11b9061230490830160209081019084016130de565b145b98975050505050505050565b606060006123218360026133a6565b61232c906002612fca565b6001600160401b0381111561234357612343612849565b6040519080825280601f01601f19166020018201604052801561236d576020820181803683370190505b509050600360fc1b8160008151811061238857612388612eb5565b60200101906001600160f81b031916908160001a905350600f60fb1b816001815181106123b7576123b7612eb5565b60200101906001600160f81b031916908160001a90535060006123db8460026133a6565b6123e6906001612fca565b90505b600181111561245e576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061241a5761241a612eb5565b1a60f81b82828151811061243057612430612eb5565b60200101906001600160f81b031916908160001a90535060049490941c93612457816133bd565b90506123e9565b5083156109905760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610a51565b60003033036120705750601f1936013590565b60008082516041036124f65760208301516040840151606085015160001a6124ea87828585612505565b945094505050506124fe565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561253c57506000905060036125e9565b8460ff16601b1415801561255457508460ff16601c14155b1561256557506000905060046125e9565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156125b9573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166125e2576000600192509250506125e9565b9150600090505b94509492505050565b60006020828403121561260457600080fd5b81356001600160e01b03198116811461099057600080fd5b6001600160a01b03811681146109d257600080fd5b60008083601f84011261264357600080fd5b5081356001600160401b0381111561265a57600080fd5b6020830191508360208285010111156124fe57600080fd5b60008060008060006080868803121561268a57600080fd5b85356126958161261c565b945060208601356126a58161261c565b93506040860135925060608601356001600160401b038111156126c757600080fd5b6126d388828901612631565b969995985093965092949392505050565b6000806000604084860312156126f957600080fd5b83356001600160401b038082111561271057600080fd5b908501906080828803121561272457600080fd5b9093506020850135908082111561273a57600080fd5b5061274786828701612631565b9497909650939450505050565b60005b8381101561276f578181015183820152602001612757565b50506000910152565b60008151808452612790816020860160208601612754565b601f01601f19169290920160200192915050565b6020815260006109906020830184612778565b6000602082840312156127c957600080fd5b5035919050565b600080604083850312156127e357600080fd5b8235915060208301356127f58161261c565b809150509250929050565b60006020828403121561281257600080fd5b81356109908161261c565b6000806040838503121561283057600080fd5b823561283b8161261c565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561288757612887612849565b604052919050565b600060208083850312156128a257600080fd5b82356001600160401b03808211156128b957600080fd5b818501915085601f8301126128cd57600080fd5b8135818111156128df576128df612849565b8060051b91506128f084830161285f565b818152918301840191848101908884111561290a57600080fd5b938501935b8385101561230657843592506129248361261c565b828252938501939085019061290f565b60008060006040848603121561294957600080fd5b83356001600160401b0381111561295f57600080fd5b61296b86828701612631565b909790965060209590950135949350505050565b60006001600160401b0383111561299857612998612849565b6129ab601f8401601f191660200161285f565b90508281528383830111156129bf57600080fd5b828260208301376000602084830101529392505050565b600082601f8301126129e757600080fd5b6109908383356020850161297f565b60008083601f840112612a0857600080fd5b5081356001600160401b03811115612a1f57600080fd5b6020830191508360208260051b85010111156124fe57600080fd5b80358015158114611bfe57600080fd5b803561ffff81168114611bfe57600080fd5b6000806000806000806000806000806101208b8d031215612a7c57600080fd5b8a356001600160401b0380821115612a9357600080fd5b612a9f8e838f016129d6565b9b5060208d01359150612ab18261261c565b90995060408c0135985060608c0135975060808c013590612ad18261261c565b90965060a08c01359080821115612ae757600080fd5b50612af48d828e016129f6565b9096509450612b07905060c08c01612a3a565b9250612b1560e08c01612a4a565b9150612b246101008c01612a3a565b90509295989b9194979a5092959850565b60008060008060008060008060a0898b031215612b5157600080fd5b8835612b5c8161261c565b97506020890135612b6c8161261c565b965060408901356001600160401b0380821115612b8857600080fd5b612b948c838d016129f6565b909850965060608b0135915080821115612bad57600080fd5b612bb98c838d016129f6565b909650945060808b0135915080821115612bd257600080fd5b50612bdf8b828c01612631565b999c989b5096995094979396929594505050565b600080600060608486031215612c0857600080fd5b8335612c138161261c565b92506020840135612c238161261c565b91506040840135612c338161261c565b809150509250925092565b60008060008060008060008060008060006101208c8e031215612c6057600080fd5b6001600160401b03808d351115612c7657600080fd5b612c838e8e358f01612631565b909c509a50612c9560208e013561261c565b60208d0135995060408d0135985060608d01359750612cb760808e013561261c565b60808d013596508060a08e01351115612ccf57600080fd5b50612ce08d60a08e01358e016129f6565b9095509350612cf160c08d01612a3a565b9250612cff60e08d01612a4a565b9150612d0e6101008d01612a3a565b90509295989b509295989b9093969950565b60008060008060008060a08789031215612d3957600080fd5b8635612d448161261c565b95506020870135612d548161261c565b9450604087013593506060870135925060808701356001600160401b03811115612d7d57600080fd5b612d8989828a01612631565b979a9699509497509295939492505050565b600080600060608486031215612db057600080fd5b8335612dbb8161261c565b92506020840135612dcb8161261c565b915060408401356001600160401b03811115612de657600080fd5b612df2868287016129d6565b9150509250925092565b608081526000612e0f6080830187612778565b6001600160a01b03958616602084015261ffff949094166040830152509216606090920191909152919050565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090610ef090830184612778565b6000808335601e19843603018112612e8657600080fd5b8301803591506001600160401b03821115612ea057600080fd5b6020019150368190038213156124fe57600080fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201612ef357612ef3612ecb565b5060010190565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b604081526000612f6c604083018587612f2f565b9050826020830152949350505050565b600060408284031215612f8e57600080fd5b604051604081018181106001600160401b0382111715612fb057612fb0612849565b604052825181526020928301519281019290925250919050565b8082018082111561077357610773612ecb565b81835260006020808501808196508560051b810191508460005b878110156130615782840389528135601e1988360301811261301857600080fd5b870185810190356001600160401b0381111561303357600080fd5b80360382131561304257600080fd5b61304d868284612f2f565b9a87019a9550505090840190600101612ff7565b5091979650505050505050565b60006101008083526130828184018d612778565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a085015290506130bc818789612fdd565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b6000602082840312156130f057600080fd5b5051919050565b60006080823603121561310957600080fd5b604051608081016001600160401b03828210818311171561312c5761312c612849565b816040528435915061313d8261261c565b8183526020850135602084015260408501356040840152606085013591508082111561316857600080fd5b50830136601f82011261317a57600080fd5b6131893682356020840161297f565b60608301525092915050565b600082516131a7818460208701612754565b9190910192915050565b6000826131ce57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b6000602082840312156131fb57600080fd5b81516109908161261c565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60006101008083526132668184018d8f612f2f565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a085015290506132a0818789612fdd565b94151560c0840152505061ffff9190911660e09091015298975050505050505050565b600084516132d5818460208901612754565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081526000835161333a816017850160208801612754565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835161336b816028840160208801612754565b01602801949350505050565b634e487b7160e01b600052602160045260246000fd5b8281526040602082015260006110476040830184612778565b808202811582820484141761077357610773612ecb565b6000816133cc576133cc612ecb565b50600019019056fe412386de53449251cbf7ce1f4c6a038bf9c0746e62d331b08ef0c3fa7d0ab6729f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a660793a5062d506d35cc8f1beda67ee5028c16bfcd9c923d5bfc439c04bd929b1a164736f6c6343000811000a","storage":{"0x0":"0xff"}},"0xc58206842e4030a3b2cabc78780ae7635173c533":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106102325760003560e01c80637c69eae211610130578063b5466669116100b8578063d284d97a1161007c578063d284d97a14610d4e578063d8d3cc6e14610dbc578063e67ca8a314610e3f578063e985e9c514610e5c578063ebf0c71714610e8a57610232565b8063b5466669146109ce578063b88d4fde14610a51578063c29b52f914610b15578063c87b56dd14610c5e578063ce9fb82b14610c7b57610232565b8063a22cb465116100ff578063a22cb4651461090b578063a7fc7a0714610939578063ab3b87fe1461095f578063b3f9e4cb1461098b578063b429afeb146109a857610232565b80637c69eae21461076457806395d89b41146107e75780639d743989146107ef5780639e5be9a51461087d57610232565b806342842e0e116101be5780635cbe1112116101825780635cbe11121461061d5780636352211e1461069257806366ac3b68146106af57806368b62d32146106b757806370a082311461073e57610232565b806342842e0e146104ed57806342966c6814610523578063430c208114610540578063538361a71461056c57806357aac5741461058f57610232565b8063081812fc11610205578063081812fc146103fa578063095ea7b3146104335780632392c1891461045f57806323b872dd1461048b5780632525d06a146104c157610232565b806301ffc9a71461023757806302759c37146102725780630467e014146102aa57806306fdde031461037d575b600080fd5b61025e6004803603602081101561024d57600080fd5b50356001600160e01b031916610e92565b604080519115158252519081900360200190f35b6102a86004803603606081101561028857600080fd5b506001600160a01b03813581169160208101359091169060400135610eb1565b005b6102a8600480360360808110156102c057600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156102ef57600080fd5b82018360208201111561030157600080fd5b803590602001918460018302840111600160201b8311171561032257600080fd5b919390929091602081019035600160201b81111561033f57600080fd5b82018360208201111561035157600080fd5b803590602001918460018302840111600160201b8311171561037257600080fd5b509092509050610ed3565b610385610f62565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103bf5781810151838201526020016103a7565b50505050905090810190601f1680156103ec5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6104176004803603602081101561041057600080fd5b5035610f84565b604080516001600160a01b039092168252519081900360200190f35b6102a86004803603604081101561044957600080fd5b506001600160a01b038135169060200135610fe6565b6102a86004803603604081101561047557600080fd5b506001600160a01b0381351690602001356110f7565b6102a8600480360360608110156104a157600080fd5b506001600160a01b03813581169160208101359091169060400135611115565b6102a8600480360360408110156104d757600080fd5b506001600160a01b03813516906020013561115a565b6102a86004803603606081101561050357600080fd5b506001600160a01b0381358116916020810135909116906040013561117a565b6102a86004803603602081101561053957600080fd5b5035611195565b61025e6004803603604081101561055657600080fd5b506001600160a01b0381351690602001356111e6565b6102a86004803603604081101561058257600080fd5b50803590602001356111f9565b6102a8600480360360808110156105a557600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156105df57600080fd5b8201836020820111156105f157600080fd5b803590602001918460018302840111600160201b8311171561061257600080fd5b50909250905061124f565b6102a86004803603604081101561063357600080fd5b81359190810190604081016020820135600160201b81111561065457600080fd5b82018360208201111561066657600080fd5b803590602001918460018302840111600160201b8311171561068757600080fd5b5090925090506112be565b610417600480360360208110156106a857600080fd5b5035611320565b6102a861137a565b61072c600480360360408110156106cd57600080fd5b81359190810190604081016020820135600160201b8111156106ee57600080fd5b82018360208201111561070057600080fd5b803590602001918460018302840111600160201b8311171561072157600080fd5b509092509050611385565b60408051918252519081900360200190f35b61072c6004803603602081101561075457600080fd5b50356001600160a01b03166113cf565b6102a86004803603606081101561077a57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156107a957600080fd5b8201836020820111156107bb57600080fd5b803590602001918460018302840111600160201b831117156107dc57600080fd5b509092509050611437565b61038561149a565b6102a86004803603608081101561080557600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561083f57600080fd5b82018360208201111561085157600080fd5b803590602001918460018302840111600160201b8311171561087257600080fd5b5090925090506114b6565b6102a86004803603608081101561089357600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156108cd57600080fd5b8201836020820111156108df57600080fd5b803590602001918460018302840111600160201b8311171561090057600080fd5b509092509050611506565b6102a86004803603604081101561092157600080fd5b506001600160a01b0381351690602001351515611564565b6102a86004803603602081101561094f57600080fd5b50356001600160a01b0316611630565b6102a86004803603604081101561097557600080fd5b506001600160a01b03813516906020013561164b565b610417600480360360208110156109a157600080fd5b5035611672565b61025e600480360360208110156109be57600080fd5b50356001600160a01b0316611694565b6102a8600480360360608110156109e457600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610a1357600080fd5b820183602082011115610a2557600080fd5b803590602001918460018302840111600160201b83111715610a4657600080fd5b5090925090506116a7565b6102a860048036036080811015610a6757600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b811115610aa157600080fd5b820183602082011115610ab357600080fd5b803590602001918460018302840111600160201b83111715610ad457600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506116fa945050505050565b6102a8600480360360a0811015610b2b57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b811115610b6557600080fd5b820183602082011115610b7757600080fd5b803590602001918460018302840111600160201b83111715610b9857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b811115610bea57600080fd5b820183602082011115610bfc57600080fd5b803590602001918460018302840111600160201b83111715610c1d57600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061174c945050505050565b61038560048036036020811015610c7457600080fd5b5035611797565b6102a860048036036080811015610c9157600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610cc057600080fd5b820183602082011115610cd257600080fd5b803590602001918460018302840111600160201b83111715610cf357600080fd5b919390929091602081019035600160201b811115610d1057600080fd5b820183602082011115610d2257600080fd5b803590602001918460018302840111600160201b83111715610d4357600080fd5b509092509050611892565b6102a860048036036020811015610d6457600080fd5b810190602081018135600160201b811115610d7e57600080fd5b820183602082011115610d9057600080fd5b803590602001918460018302840111600160201b83111715610db157600080fd5b50909250905061191b565b6102a860048036036060811015610dd257600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610e0157600080fd5b820183602082011115610e1357600080fd5b803590602001918460018302840111600160201b83111715610e3457600080fd5b50909250905061199e565b6102a860048036036020811015610e5557600080fd5b50356119f3565b61025e60048036036040811015610e7257600080fd5b506001600160a01b0381358116916020013516611a05565b61072c611a33565b6001600160e01b03191660009081526020819052604090205460ff1690565b610eba33611694565b610ec357600080fd5b610ece838383611a57565b505050565b610edc33611694565b610ee557600080fd5b610f5a868686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8a018190048102820181019092528881529250889150879081908401838280828437600092019190915250611a9f92505050565b505050505050565b6040805180820190915260078152662e63727970746f60c81b60208201525b90565b6000610f8f82611ac9565b610fca5760405162461bcd60e51b815260040180806020018281038252602c815260200180612848602c913960400191505060405180910390fd5b506000908152600360205260409020546001600160a01b031690565b6000610ff182611320565b9050806001600160a01b0316836001600160a01b031614156110445760405162461bcd60e51b81526004018080602001828103825260218152602001806128bf6021913960400191505060405180910390fd5b336001600160a01b038216148061106057506110608133611a05565b61109b5760405162461bcd60e51b815260040180806020018281038252603881526020018061279c6038913960400191505060405180910390fd5b60008281526003602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b806111023382611ae6565b61110b57600080fd5b610ece8383611b82565b61111f3382611ae6565b610ec35760405162461bcd60e51b81526004018080602001828103825260318152602001806128e06031913960400191505060405180910390fd5b61116333611694565b61116c57600080fd5b6111768282611b82565b5050565b610ece838383604051806020016040528060008152506116fa565b61119f3382611ae6565b6111da5760405162461bcd60e51b81526004018080602001828103825260308152602001806129366030913960400191505060405180910390fd5b6111e381611bf8565b50565b60006111f28383611ae6565b9392505050565b6000828152600860205260409020546001600160a01b0316331461121c57600080fd5b6040518290829033907ff10fc780c78f994a214c79a2ae8d8b7bfe7cc3f0f935a8f05a29525e71d7f12790600090a45050565b61125833611694565b61126157600080fd5b61126c858585611a57565b6112ae85858585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611c7992505050565b6112b757600080fd5b5050505050565b826112c93382611ae6565b6112d257600080fd5b61131a6113158585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b611bf8565b50505050565b6000818152600260205260408120546001600160a01b0316806113745760405162461bcd60e51b81526004018080602001828103825260298152602001806127fe6029913960400191505060405180910390fd5b92915050565b61138333611e64565b565b60006113c78484848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b949350505050565b60006001600160a01b0382166114165760405162461bcd60e51b815260040180806020018281038252602a8152602001806127d4602a913960400191505060405180910390fd5b6001600160a01b038216600090815260046020526040902061137490611e75565b826114423382611ae6565b61144b57600080fd5b6112b7858585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250611a9f915050565b604080518082019091526002815261155160f21b602082015290565b6112b785858585858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201829052506040805160208101909152908152925061174c915050565b826115113382611ae6565b61151a57600080fd5b610f5a868661155f8787878080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b611a57565b6001600160a01b0382163314156115c2576040805162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604482015290519081900360640190fd5b3360008181526005602090815260408083206001600160a01b03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b61163933611694565b61164257600080fd5b6111e381611e79565b806116563382611ae6565b61165f57600080fd5b610ece61166b83611320565b8484611e8a565b6000818152600860205260408120546001600160a01b03168061137457600080fd5b600061137460018363ffffffff611fce16565b6116b033611694565b6116b957600080fd5b61131a848484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061203592505050565b611705848484611115565b61171184848484611c79565b61131a5760405162461bcd60e51b815260040180806020018281038252603281526020018061271a6032913960400191505060405180910390fd5b826117573382611ae6565b61176057600080fd5b600061176c8585611dac565b9050611779878783611a57565b61178587878386611c79565b61178e57600080fd5b50505050505050565b60606117a282611ac9565b6117ab57600080fd5b600760066000848152602001908152602001600020604051602001808380546001816001161561010002031660029004801561181e5780601f106117fc57610100808354040283529182019161181e565b820191906000526020600020905b81548152906001019060200180831161180a575b5050828054600181600116156101000203166002900480156118775780601f10611855576101008083540402835291820191611877565b820191906000526020600020905b815481529060010190602001808311611863575b505060408051601f1981840301815291905295945050505050565b8461189d3382611ae6565b6118a657600080fd5b61178e878787878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b018190048102820181019092528981529250899150889081908401838280828437600092019190915250611a9f92505050565b61192433611694565b61192d57600080fd5b611939600783836125cf565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b828260405180806020018281038252848482818152602001925080828437600083820152604051601f909101601f19169092018290039550909350505050a15050565b826119a93382611ae6565b6119b257600080fd5b6112b7858585858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061203592505050565b6119fc33611694565b6111da57600080fd5b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b7f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f90565b611a62838383611e8a565b6000818152600860205260409020546001600160a01b031615610ece57600090815260086020526040902080546001600160a01b03191690555050565b611aaa848484612035565b611ac0600085611aba8686611dac565b84611c79565b61131a57600080fd5b6000908152600260205260409020546001600160a01b0316151590565b6000611af182611ac9565b611b2c5760405162461bcd60e51b815260040180806020018281038252602c815260200180612770602c913960400191505060405180910390fd5b6000611b3783611320565b9050806001600160a01b0316846001600160a01b03161480611b725750836001600160a01b0316611b6784610f84565b6001600160a01b0316145b806113c757506113c78185611a05565b611b8b81611ac9565b611b9457600080fd5b6040516001600160a01b0383169082907fb1b34e6d89e1c584527d447f4b29ffad55635a37edeeb564939a6483401b31a590600090a3600090815260086020526040902080546001600160a01b0319166001600160a01b0392909216919091179055565b611c018161220f565b6000818152600860205260409020546001600160a01b031615611c3b57600081815260086020526040902080546001600160a01b03191690555b60008181526006602052604090205460026000196101006001841615020190911604156111e35760008181526006602052604081206111e39161264d565b6000611c8d846001600160a01b0316612221565b611c99575060016113c7565b604051630a85bd0160e11b815233600482018181526001600160a01b03888116602485015260448401879052608060648501908152865160848601528651600095928a169463150b7a029490938c938b938b939260a4019060208501908083838e5b83811015611d13578181015183820152602001611cfb565b50505050905090810190601f168015611d405780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015611d6257600080fd5b505af1158015611d76573d6000803e3d6000fd5b505050506040513d6020811015611d8c57600080fd5b50516001600160e01b031916630a85bd0160e11b14915050949350505050565b6000815160001415611dbd57600080fd5b82826040516020018082805190602001908083835b60208310611df15780518252601f199092019160209182019101611dd2565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040528051906020012060405160200180838152602001828152602001925050506040516020818303038152906040528051906020012060001c905092915050565b6111e360018263ffffffff61222716565b5490565b6111e360018263ffffffff61228e16565b826001600160a01b0316611e9d82611320565b6001600160a01b031614611ee25760405162461bcd60e51b81526004018080602001828103825260298152602001806128966029913960400191505060405180910390fd5b6001600160a01b038216611f275760405162461bcd60e51b815260040180806020018281038252602481526020018061274c6024913960400191505060405180910390fd5b611f308161230f565b6001600160a01b0383166000908152600460205260409020611f519061234a565b6001600160a01b0382166000908152600460205260409020611f7290612361565b60008181526002602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60006001600160a01b0382166120155760405162461bcd60e51b81526004018080602001828103825260228152602001806128746022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b60006120418383611dac565b905061204d848261236a565b815161205857600080fd5b61206181611ac9565b61206a57600080fd5b606082600660008681526020019081526020016000206040516020018083805190602001908083835b602083106120b25780518252601f199092019160209182019101612093565b6001836020036101000a03801982511681845116808217855250505050505090500180601760f91b815250600101828054600181600116156101000203166002900480156121375780601f10612115576101008083540402835291820191612137565b820191906000526020600020905b815481529060010190602001808311612123575b505060408051601f19818403018152918152600087815260066020908152919020825192965061216d9550935085019150612691565b50817fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952826040518080602001828103825283818151815260200191508051906020019080838360005b838110156121ce5781810151838201526020016121b6565b50505050905090810190601f1680156121fb5780820380516001836020036101000a031916815260200191505b509250505060405180910390a25050505050565b6111e361221b82611320565b8261249b565b3b151590565b6122318282611fce565b61226c5760405162461bcd60e51b81526004018080602001828103825260218152602001806128276021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff19169055565b6122988282611fce565b156122ea576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b6000818152600360205260409020546001600160a01b0316156111e357600090815260036020526040902080546001600160a01b0319169055565b805461235d90600163ffffffff61257216565b9055565b80546001019055565b6001600160a01b0382166123c5576040805162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f2061646472657373604482015290519081900360640190fd5b6123ce81611ac9565b15612420576040805162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000604482015290519081900360640190fd5b600081815260026020908152604080832080546001600160a01b0319166001600160a01b03871690811790915583526004909152902061245f90612361565b60405181906001600160a01b038416906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b816001600160a01b03166124ae82611320565b6001600160a01b0316146124f35760405162461bcd60e51b81526004018080602001828103825260258152602001806129116025913960400191505060405180910390fd5b6124fc8161230f565b6001600160a01b038216600090815260046020526040902061251d9061234a565b60008181526002602052604080822080546001600160a01b0319169055518291906001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6000828211156125c9576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106126105782800160ff1982351617855561263d565b8280016001018555821561263d579182015b8281111561263d578235825591602001919060010190612622565b506126499291506126ff565b5090565b50805460018160011615610100020316600290046000825580601f1061267357506111e3565b601f0160209004906000526020600020908101906111e391906126ff565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106126d257805160ff191683800117855561263d565b8280016001018555821561263d579182015b8281111561263d5782518255916020019190600101906126e4565b610f8191905b80821115612649576000815560010161270556fe4552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c654552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e526f6c65733a206163636f756e7420697320746865207a65726f20616464726573734552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f7665644552433732313a206275726e206f6620746f6b656e2074686174206973206e6f74206f776e4552433732314275726e61626c653a2063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564a265627a7a72315820fb6a1b26cc352dbb05e6627fd530bbb44114ac3a349f30d1f071136c656d20dc64736f6c634300050c0032","storage":{"0x7":"0x68747470733a2f2f6578616d706c652e636f6d2f000000000000000000000028","0xbdf39e9e65b2355b1b0b06df799c09159f0ab90f06a9bb2153f5de7d9b0ea81":"0x1","0x1a306d3e9bf29128dee78d8d16c9f378a11bbdf917a9caf986fc6e60846e37e7":"0x63727970746f000000000000000000000000000000000000000000000000000c","0x42c63635470f1fb1d6d4b6441c413cb435b1ebb6fedd1896dd5e25d1399147dd":"0x1","0x605d7a0bb2b20c4004d356eb969ff104dcca62360aa356247072f5e0df6472e3":"0xdead","0x67be87c3ff9960ca1e9cfac5cab2ff4747269cf9ed20c9b7306235ac35a491c5":"0x1","0x70f464f95f9ab7aba03264fd4cac1711d774d3703ce74217180264d4efc2105f":"0x1","0x76a72f26a108e6f3f687141f5f42d21d65857c03cb1b01aa1284f9a9ccd085da":"0x1","0x9562381dfbc2d8b8b66e765249f330164b73e329e5f01670660643571d1974df":"0x1","0x9f23d2403fb64167582d316b1bc5b35a6ed48524341ab24947c71df77304b29e":"0x1","0xf7815fccbf112960a73756e185887fedcb9fc64ca0a16cc5923b7960ed780800":"0x1"}},"0xc965345edac823d56812cd20a10316233916a605":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101c6575f3560e01c806395d89b41116100fe578063c87b56dd1161009e578063e985e9c51161006e578063e985e9c5146103d4578063f2fde38b1461040f578063f6a74ed714610422578063fca247ac14610435575f80fd5b8063c87b56dd14610377578063d6e4fa861461038a578063da8c229e146103a9578063ddf7fcb0146103cb575f80fd5b8063a7fc7a07116100d9578063a7fc7a0714610334578063b88d4fde14610347578063c1a287e21461035a578063c475abff14610364575f80fd5b806395d89b411461030657806396e494e81461030e578063a22cb46514610321575f80fd5b80633f15457f116101695780636352211e116101445780636352211e146102c757806370a08231146102da578063715018a6146102ed5780638da5cb5b146102f5575f80fd5b80633f15457f1461028e57806342842e0e146102a15780634e543b26146102b4575f80fd5b8063095ea7b3116101a4578063095ea7b3146102325780630e297b451461024757806323b872dd1461026857806328ed4f6c1461027b575f80fd5b806301ffc9a7146101ca57806306fdde03146101f2578063081812fc14610207575b5f80fd5b6101dd6101d83660046117dd565b610448565b60405190151581526020015b60405180910390f35b6101fa610499565b6040516101e99190611845565b61021a610215366004611857565b610528565b6040516001600160a01b0390911681526020016101e9565b610245610240366004611882565b61054d565b005b61025a6102553660046118ac565b610666565b6040519081526020016101e9565b6102456102763660046118e1565b61067b565b61024561028936600461190e565b6106ac565b60085461021a906001600160a01b031681565b6102456102af3660046118e1565b6107be565b6102456102c236600461193c565b6107d8565b61021a6102d5366004611857565b610848565b61025a6102e836600461193c565b610869565b6102456108ed565b6006546001600160a01b031661021a565b6101fa610900565b6101dd61031c366004611857565b61090f565b61024561032f366004611957565b610934565b61024561034236600461193c565b610943565b61024561035536600461199b565b610996565b61025a6276a70081565b61025a610372366004611a74565b6109ce565b6101fa610385366004611857565b610b52565b61025a610398366004611857565b5f9081526007602052604090205490565b6101dd6103b736600461193c565b600a6020525f908152604090205460ff1681565b61025a60095481565b6101dd6103e2366004611a94565b6001600160a01b039182165f90815260056020908152604080832093909416825291909152205460ff1690565b61024561041d36600461193c565b610bc2565b61024561043036600461193c565b610c3b565b61025a6104433660046118ac565b610c8b565b5f6001600160e01b031982166301ffc9a760e01b148061047857506001600160e01b031982166380ac58cd60e01b145b8061049357506001600160e01b03198216630a3b53db60e21b145b92915050565b60605f80546104a790611ac0565b80601f01602080910402602001604051908101604052809291908181526020018280546104d390611ac0565b801561051e5780601f106104f55761010080835404028352916020019161051e565b820191905f5260205f20905b81548152906001019060200180831161050157829003601f168201915b5050505050905090565b5f61053282610c99565b505f908152600460205260409020546001600160a01b031690565b5f61055782610cf7565b9050806001600160a01b0316836001600160a01b0316036105c95760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084015b60405180910390fd5b336001600160a01b03821614806105e557506105e581336103e2565b6106575760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016105c0565b6106618383610d56565b505050565b5f6106738484845f610dc3565b949350505050565b6106853382610fc7565b6106a15760405162461bcd60e51b81526004016105c090611af8565b610661838383611040565b6008546009546040516302571be360e01b8152600481019190915230916001600160a01b0316906302571be390602401602060405180830381865afa1580156106f7573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061071b9190611b45565b6001600160a01b03161461072d575f80fd5b6107373383610fc7565b61073f575f80fd5b6008546009546040516306ab592360e01b81526004810191909152602481018490526001600160a01b038381166044830152909116906306ab5923906064016020604051808303815f875af115801561079a573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106619190611b60565b61066183838360405180602001604052805f815250610996565b6107e06111a2565b600854600954604051630c4b7b8560e11b815260048101919091526001600160a01b03838116602483015290911690631896f70a906044015f604051808303815f87803b15801561082f575f80fd5b505af1158015610841573d5f803e3d5ffd5b5050505050565b5f818152600760205260408120544210610860575f80fd5b61049382610cf7565b5f6001600160a01b0382166108d25760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b60648201526084016105c0565b506001600160a01b03165f9081526003602052604090205490565b6108f56111a2565b6108fe5f6111fc565b565b6060600180546104a790611ac0565b5f81815260076020526040812054429061092d906276a70090611b77565b1092915050565b61093f33838361124d565b5050565b61094b6111a2565b6001600160a01b0381165f818152600a6020526040808220805460ff19166001179055517f0a8bb31534c0ed46f380cb867bd5c803a189ced9a764e30b3a4991a9901d74749190a250565b6109a03383610fc7565b6109bc5760405162461bcd60e51b81526004016105c090611af8565b6109c88484848461131a565b50505050565b6008546009546040516302571be360e01b815260048101919091525f9130916001600160a01b03909116906302571be390602401602060405180830381865afa158015610a1d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a419190611b45565b6001600160a01b031614610a53575f80fd5b335f908152600a602052604090205460ff16610a6d575f80fd5b5f838152600760205260409020544290610a8b906276a70090611b77565b1015610a95575f80fd5b610aa26276a70083611b77565b5f848152600760205260409020546276a70090610ac0908590611b77565b610aca9190611b77565b11610ad3575f80fd5b5f8381526007602052604081208054849290610af0908490611b77565b90915550505f838152600760205260409081902054905184917f9b87a00e30f1ac65d898f070f8a3488fe60517182d0a2098e1b4b93a54aa9bd691610b3791815260200190565b60405180910390a250505f9081526007602052604090205490565b6060610b5d82610c99565b5f610b7260408051602081019091525f815290565b90505f815111610b905760405180602001604052805f815250610bbb565b80610b9a8461134d565b604051602001610bab929190611b96565b6040516020818303038152906040525b9392505050565b610bca6111a2565b6001600160a01b038116610c2f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016105c0565b610c38816111fc565b50565b610c436111a2565b6001600160a01b0381165f818152600a6020526040808220805460ff19169055517f33d83959be2573f5453b12eb9d43b3499bc57d96bd2f067ba44803c859e811139190a250565b5f6106738484846001610dc3565b5f818152600260205260409020546001600160a01b0316610c385760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105c0565b5f818152600260205260408120546001600160a01b0316806104935760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105c0565b5f81815260046020526040902080546001600160a01b0319166001600160a01b0384169081179091558190610d8a82610cf7565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6008546009546040516302571be360e01b815260048101919091525f9130916001600160a01b03909116906302571be390602401602060405180830381865afa158015610e12573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e369190611b45565b6001600160a01b031614610e48575f80fd5b335f908152600a602052604090205460ff16610e62575f80fd5b610e6b8561090f565b610e73575f80fd5b610e806276a70042611b77565b6276a700610e8e8542611b77565b610e989190611b77565b11610ea1575f80fd5b610eab8342611b77565b5f868152600760209081526040808320939093556002905220546001600160a01b031615610edc57610edc856113dd565b610ee6848661146f565b8115610f6d576008546009546040516306ab592360e01b81526004810191909152602481018790526001600160a01b038681166044830152909116906306ab5923906064016020604051808303815f875af1158015610f47573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f6b9190611b60565b505b6001600160a01b038416857fb3d987963d01b2f68493b4bdb130988f157ea43070d4ad840fee0466ed9370d9610fa38642611b77565b60405190815260200160405180910390a3610fbe8342611b77565b95945050505050565b5f80610fd283610848565b9050806001600160a01b0316846001600160a01b0316148061100d5750836001600160a01b031661100284610528565b6001600160a01b0316145b8061067357506001600160a01b038082165f9081526005602090815260408083209388168352929052205460ff16610673565b826001600160a01b031661105382610cf7565b6001600160a01b0316146110795760405162461bcd60e51b81526004016105c090611bc4565b6001600160a01b0382166110db5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b60648201526084016105c0565b826001600160a01b03166110ee82610cf7565b6001600160a01b0316146111145760405162461bcd60e51b81526004016105c090611bc4565b5f81815260046020908152604080832080546001600160a01b03199081169091556001600160a01b038781168086526003855283862080545f1901905590871680865283862080546001019055868652600290945282852080549092168417909155905184937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6006546001600160a01b031633146108fe5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016105c0565b600680546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b816001600160a01b0316836001600160a01b0316036112ae5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c65720000000000000060448201526064016105c0565b6001600160a01b038381165f81815260056020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b611325848484611040565b611331848484846115f7565b6109c85760405162461bcd60e51b81526004016105c090611c09565b60605f611359836116f1565b60010190505f8167ffffffffffffffff81111561137857611378611987565b6040519080825280601f01601f1916602001820160405280156113a2576020820181803683370190505b5090508181016020015b5f19016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a85049450846113ac57509392505050565b5f6113e782610cf7565b90506113f282610cf7565b5f83815260046020908152604080832080546001600160a01b03199081169091556001600160a01b0385168085526003845282852080545f190190558785526002909352818420805490911690555192935084927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6001600160a01b0382166114c55760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f206164647265737360448201526064016105c0565b5f818152600260205260409020546001600160a01b0316156115295760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105c0565b5f818152600260205260409020546001600160a01b03161561158d5760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105c0565b6001600160a01b0382165f81815260036020908152604080832080546001019055848352600290915280822080546001600160a01b0319168417905551839291907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b5f6001600160a01b0384163b156116e957604051630a85bd0160e11b81526001600160a01b0385169063150b7a029061163a903390899088908890600401611c5b565b6020604051808303815f875af1925050508015611674575060408051601f3d908101601f1916820190925261167191810190611c97565b60015b6116cf573d8080156116a1576040519150601f19603f3d011682016040523d82523d5f602084013e6116a6565b606091505b5080515f036116c75760405162461bcd60e51b81526004016105c090611c09565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610673565b506001610673565b5f8072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b831061172f5772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef8100000000831061175b576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc10000831061177957662386f26fc10000830492506010015b6305f5e1008310611791576305f5e100830492506008015b61271083106117a557612710830492506004015b606483106117b7576064830492506002015b600a83106104935760010192915050565b6001600160e01b031981168114610c38575f80fd5b5f602082840312156117ed575f80fd5b8135610bbb816117c8565b5f5b838110156118125781810151838201526020016117fa565b50505f910152565b5f81518084526118318160208601602086016117f8565b601f01601f19169290920160200192915050565b602081525f610bbb602083018461181a565b5f60208284031215611867575f80fd5b5035919050565b6001600160a01b0381168114610c38575f80fd5b5f8060408385031215611893575f80fd5b823561189e8161186e565b946020939093013593505050565b5f805f606084860312156118be575f80fd5b8335925060208401356118d08161186e565b929592945050506040919091013590565b5f805f606084860312156118f3575f80fd5b83356118fe8161186e565b925060208401356118d08161186e565b5f806040838503121561191f575f80fd5b8235915060208301356119318161186e565b809150509250929050565b5f6020828403121561194c575f80fd5b8135610bbb8161186e565b5f8060408385031215611968575f80fd5b82356119738161186e565b915060208301358015158114611931575f80fd5b634e487b7160e01b5f52604160045260245ffd5b5f805f80608085870312156119ae575f80fd5b84356119b98161186e565b935060208501356119c98161186e565b925060408501359150606085013567ffffffffffffffff808211156119ec575f80fd5b818701915087601f8301126119ff575f80fd5b813581811115611a1157611a11611987565b604051601f8201601f19908116603f01168101908382118183101715611a3957611a39611987565b816040528281528a6020848701011115611a51575f80fd5b826020860160208301375f60208483010152809550505050505092959194509250565b5f8060408385031215611a85575f80fd5b50508035926020909101359150565b5f8060408385031215611aa5575f80fd5b8235611ab08161186e565b915060208301356119318161186e565b600181811c90821680611ad457607f821691505b602082108103611af257634e487b7160e01b5f52602260045260245ffd5b50919050565b6020808252602d908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526c1c881bdc88185c1c1c9bdd9959609a1b606082015260800190565b5f60208284031215611b55575f80fd5b8151610bbb8161186e565b5f60208284031215611b70575f80fd5b5051919050565b8082018082111561049357634e487b7160e01b5f52601160045260245ffd5b5f8351611ba78184602088016117f8565b835190830190611bbb8183602088016117f8565b01949350505050565b60208082526025908201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060408201526437bbb732b960d91b606082015260800190565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6001600160a01b03858116825284166020820152604081018390526080606082018190525f90611c8d9083018461181a565b9695505050505050565b5f60208284031215611ca7575f80fd5b8151610bbb816117c856fea164736f6c6343000818000a","storage":{"0x0":"0x0","0x1":"0x0","0x6":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x8":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0x9":"0x93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae","0x9b8bc185dce56a7ea1b27d35e40ac15dcdf9144303dfd4d8880220078bf21a2c":"0x1","0xdb5e6a17df8534b92b0c8de590f14b4fb4b5eb2c62ef1bf7a05555e354797508":"0x1","0xe1a982900207b619cb6c39be8cb5e60da1370171412fb65b5efc25e2dce3c34c":"0x1"}},"0xce4bb7dc1eb9dce75743de6a4b48534fd427ef51":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xe85541865bbb62a05064ce5c9f41cc293a8ea996","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0xd178b720229c39de617846f84cf9c8d32a63a23d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610106575f3560e01c806371017a541161009e5780639e32d3641161006e5780639e32d3641461025a578063a424740014610281578063dd6b9e2214610294578063e1c4b65a146102a7578063e35a14e5146102ba575f80fd5b806371017a541461020e5780637b103999146102215780638f0dbd25146102345780639810b69514610247575f80fd5b8063485cc955116100d9578063485cc95514610191578063572b6c05146101a457806358884432146101d05780636ccbae5f146101fb575f80fd5b8063150b7a021461010a5780631694116d1461013b5780631bf7e13e146101505780631c351a9d14610170575b5f80fd5b61011d610118366004611434565b6102e2565b6040516001600160e01b031990911681526020015b60405180910390f35b61014e6101493660046114e3565b610372565b005b61016361015e366004611549565b61040d565b6040516101329190611601565b61018361017e366004611613565b6104d6565b604051908152602001610132565b61014e61019f366004611666565b6105c3565b6101c06101b236600461169d565b6001600160a01b0316301490565b6040519015158152602001610132565b6067546101e3906001600160a01b031681565b6040516001600160a01b039091168152602001610132565b6101836102093660046116b8565b6106f8565b6101e361021c3660046116cf565b610751565b6066546101e3906001600160a01b031681565b61014e6102423660046116ef565b610791565b6101e36102553660046116cf565b610806565b6101837fd81bbfcee722494b885e891546eeac23d0eedcd44038d7a2f6ef9ec2f9e0d23981565b6101c061028f366004611549565b61085f565b6101c06102a236600461172d565b6108a8565b61014e6102b5366004611771565b61091d565b6101e36102c83660046116b8565b5f908152606560205260409020546001600160a01b031690565b6066545f906001600160a01b03166102f8610a43565b6001600160a01b031614158061032257505f848152606560205260409020546001600160a01b0316155b156103605783610330610a43565b60405163634afa0d60e01b815260048101929092526001600160a01b031660248201526044015b60405180910390fd5b50630a85bd0160e11b95945050505050565b828261037e8282610751565b6001600160a01b031661038f610a43565b6001600160a01b0316146103c057604051632cd9b44d60e11b81526004810183905260248101829052604401610357565b5f6103cb8686610806565b90505f5b87811015610402576103fa8989838181106103ec576103ec6117b0565b905060200201358387610a51565b6001016103cf565b505050505050505050565b60605f5a905061041e85858561085f565b61043b57604051638baa579f60e01b815260040160405180910390fd5b6104cb61044b602087018761169d565b3060408801358461045f60608b018b6117c4565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f92019190915250610b8492505050565b9150505b9392505050565b6067545f906001600160a01b031663aa271e1a6104f1610a43565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015610533573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105579190611807565b1580610572575030610567610a43565b6001600160a01b0316145b156105a45761057f610a43565b60405163e2c8c9d560e01b81526001600160a01b039091166004820152602401610357565b5f6105b0858585610c60565b90506105bb81610e73565b949350505050565b5f54610100900460ff16158080156105e157505f54600160ff909116105b806105fa5750303b1580156105fa57505f5460ff166001145b61065d5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610357565b5f805460ff19166001179055801561067e575f805461ff0019166101001790555b606680546001600160a01b038086166001600160a01b031992831617909255606780549285169290911691909117905580156106f3575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f9061074a906060016040516020818303038152906040528051906020012090565b5492915050565b5f80838360405160200161076f929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209150505b92915050565b828261079d8282610751565b6001600160a01b03166107ae610a43565b6001600160a01b0316146107df57604051632cd9b44d60e11b81526004810183905260248101829052604401610357565b856107e981610e73565b6107fd876107f78889610806565b86610a51565b50505050505050565b5f8060026108148585610e8f565b6040516108219190611826565b602060405180830381855afa15801561083c573d5f803e3d5ffd5b5050506040513d601f19601f820116820180604052508101906105bb9190611841565b5f6105bb61086c856118c6565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250610f1492505050565b5f805b8281101561091257846001600160a01b03166108f38585848181106108d2576108d26117b0565b905060200201355f908152606560205260409020546001600160a01b031690565b6001600160a01b03161461090a575f9150506104cf565b6001016108ab565b506001949350505050565b6067546001600160a01b031663aa271e1a610936610a43565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015610978573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061099c9190611807565b15806109b75750306109ac610a43565b6001600160a01b0316145b156109c45761057f610a43565b5f5b818110156106f357610a3a8383838181106109e3576109e36117b0565b90506020028101906109f59190611983565b610a039060208101906117c4565b858585818110610a1557610a156117b0565b9050602002810190610a279190611983565b610a3590602081019061169d565b610c60565b506001016109c6565b5f610a4c611059565b905090565b5f838152606560205260409020546001600160a01b03838116911614610ab4575f83815260656020526040908190205490516326995d8360e11b8152600481018590526001600160a01b0391821660248201529083166044820152606401610357565b5f838152606560205260409081902080546001600160a01b03191690556066549051632142170760e11b81523060048201526001600160a01b03838116602483015260448201869052909116906342842e0e906064015f604051808303815f87803b158015610b21575f80fd5b505af1158015610b33573d5f803e3d5ffd5b50505050806001600160a01b0316610b49610a43565b6001600160a01b0316847f9a471856befea1cabcd7fc8a1c4d70ea07b8ed2ee205cc361f932433542ef3fe60405160405180910390a4505050565b6060610b8f85611076565b5f80876001600160a01b031686610ba88b8a89896110db565b604051610bb59190611826565b5f604051808303815f8787f1925050503d805f8114610bef576040519150601f19603f3d011682016040523d82523d5f602084013e610bf4565b606091505b509092509050610c05603f876119bf565b5a11610c1357610c136119d2565b610c5382826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061110b565b9998505050505050505050565b5f60605f7fd81bbfcee722494b885e891546eeac23d0eedcd44038d7a2f6ef9ec2f9e0d2398686604051602001610c989291906119e6565b60405160208183030381529060405280519060200120604051602001610cc8929190918252602082015260400190565b60408051808303601f19018152828252805160209091012060028084526060840190925292505f9190816020015b6060815260200190600190039081610cf657905050905086868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920182905250855186945090925015159050610d5657610d566117b0565b6020026020010181905250604051806040016040528060038152602001621e9a5b60ea1b81525081600181518110610d9057610d906117b0565b6020908102919091018101919091525f8381526065909152604080822080546001600160a01b0319166001600160a01b03898116919091179091556067549151635cd7e3b360e01b8152911691635cd7e3b391610df891309186918991829190600401611a4d565b5f604051808303815f87803b158015610e0f575f80fd5b505af1158015610e21573d5f803e3d5ffd5b50505050846001600160a01b0316827f08717469d38a4b02325ea6637978c7952f94d3d8fc7848994f618ddbf4d637f18989604051610e61929190611aab565b60405180910390a35095945050505050565b303303610e8657610e8381611144565b50565b610e8381611076565b60605f82610e9f60016020611ad9565b60ff1660208110610eb257610eb26117b0565b1a9050610ec0600282611af2565b60ff1615610ecf576003610ed2565b60025b84604051602001610efc92919060f89290921b6001600160f81b0319168252600182015260210190565b60405160208183030381529060405291505092915050565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015610f58573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f7c9190611841565b90505f611029866060015180519060200120868860200151604051602001610fc99392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561104f5750855161104f906001600160a01b0316828661116e565b9695505050505050565b5f30330361106e575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f906060016040516020818303038152906040528051906020012090506110ca8190565b546110d6906001611b13565b905550565b60608285856040516020016110f293929190611b26565b6040516020818303038152906040529050949350505050565b6060831561111a5750816104cf565b82511561112a5782518084602001fd5b8160405162461bcd60e51b81526004016103579190611601565b61114c6112a9565b8114610e8357604051635637b6af60e11b815260048101829052602401610357565b5f805f61117b85856112bb565b90925090505f81600481111561119357611193611b64565b1480156111b15750856001600160a01b0316826001600160a01b0316145b156111c1576001925050506104cf565b5f80876001600160a01b0316631626ba7e60e01b88886040516024016111e8929190611b78565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516112269190611826565b5f60405180830381855afa9150503d805f811461125e576040519150601f19603f3d011682016040523d82523d5f602084013e611263565b606091505b5091509150818015611276575080516020145b801561129d57508051630b135d3f60e11b9061129b9083016020908101908401611841565b145b98975050505050505050565b5f3033036110735750601f1936013590565b5f8082516041036112ef576020830151604084015160608501515f1a6112e3878285856112fd565b945094505050506112f6565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561133257505f905060036113d9565b8460ff16601b1415801561134a57508460ff16601c14155b1561135a57505f905060046113d9565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156113ab573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b0381166113d3575f600192509250506113d9565b91505f90505b94509492505050565b6001600160a01b0381168114610e83575f80fd5b5f8083601f840112611406575f80fd5b50813567ffffffffffffffff81111561141d575f80fd5b6020830191508360208285010111156112f6575f80fd5b5f805f805f60808688031215611448575f80fd5b8535611453816113e2565b94506020860135611463816113e2565b935060408601359250606086013567ffffffffffffffff811115611485575f80fd5b611491888289016113f6565b969995985093965092949392505050565b5f8083601f8401126114b2575f80fd5b50813567ffffffffffffffff8111156114c9575f80fd5b6020830191508360208260051b85010111156112f6575f80fd5b5f805f805f608086880312156114f7575f80fd5b853567ffffffffffffffff81111561150d575f80fd5b611519888289016114a2565b9096509450506020860135925060408601359150606086013561153b816113e2565b809150509295509295909350565b5f805f6040848603121561155b575f80fd5b833567ffffffffffffffff80821115611572575f80fd5b9085019060808288031215611585575f80fd5b9093506020850135908082111561159a575f80fd5b506115a7868287016113f6565b9497909650939450505050565b5f5b838110156115ce5781810151838201526020016115b6565b50505f910152565b5f81518084526115ed8160208601602086016115b4565b601f01601f19169290920160200192915050565b602081525f6104cf60208301846115d6565b5f805f60408486031215611625575f80fd5b833567ffffffffffffffff81111561163b575f80fd5b611647868287016113f6565b909450925050602084013561165b816113e2565b809150509250925092565b5f8060408385031215611677575f80fd5b8235611682816113e2565b91506020830135611692816113e2565b809150509250929050565b5f602082840312156116ad575f80fd5b81356104cf816113e2565b5f602082840312156116c8575f80fd5b5035919050565b5f80604083850312156116e0575f80fd5b50508035926020909101359150565b5f805f8060808587031215611702575f80fd5b8435935060208501359250604085013591506060850135611722816113e2565b939692955090935050565b5f805f6040848603121561173f575f80fd5b833561174a816113e2565b9250602084013567ffffffffffffffff811115611765575f80fd5b6115a7868287016114a2565b5f8060208385031215611782575f80fd5b823567ffffffffffffffff811115611798575f80fd5b6117a4858286016114a2565b90969095509350505050565b634e487b7160e01b5f52603260045260245ffd5b5f808335601e198436030181126117d9575f80fd5b83018035915067ffffffffffffffff8211156117f3575f80fd5b6020019150368190038213156112f6575f80fd5b5f60208284031215611817575f80fd5b815180151581146104cf575f80fd5b5f82516118378184602087016115b4565b9190910192915050565b5f60208284031215611851575f80fd5b5051919050565b634e487b7160e01b5f52604160045260245ffd5b6040516080810167ffffffffffffffff8111828210171561188f5761188f611858565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156118be576118be611858565b604052919050565b5f608082360312156118d6575f80fd5b6118de61186c565b82356118e9816113e2565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff80821115611919575f80fd5b9085019036601f83011261192b575f80fd5b81358181111561193d5761193d611858565b61194f601f8201601f19168501611895565b91508082523684828501011115611964575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b5f8235603e19833603018112611837575f80fd5b634e487b7160e01b5f52601260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b5f826119cd576119cd611997565b500490565b634e487b7160e01b5f52600160045260245ffd5b818382375f9101908152919050565b5f8282518085526020808601955060208260051b840101602086015f5b84811015611a4057601f19868403018952611a2e8383516115d6565b98840198925090830190600101611a12565b5090979650505050505050565b6001600160a01b038616815260a0602082018190525f90611a70908301876119f5565b8281036040840152611a8281876119f5565b90508281036060840152611a9681866119f5565b91505082151560808301529695505050505050565b60208152816020820152818360408301375f818301604090810191909152601f909201601f19160101919050565b60ff828116828216039081111561078b5761078b6119ab565b5f60ff831680611b0457611b04611997565b8060ff84160691505092915050565b8082018082111561078b5761078b6119ab565b5f8451611b378184602089016115b4565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f6105bb60408301846115d656fea164736f6c6343000818000a","storage":{"0x0":"0xff"}},"0xda9e1b3e395bfb0a45f03c7f615146b9d896c959":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100b1575f3560e01c806340c10f191161006e57806340c10f191461013d57806370a082311461015257806395d89b411461017a578063a457c2d714610182578063a9059cbb14610195578063dd62ed3e146101a8575f80fd5b806306fdde03146100b5578063095ea7b3146100d357806318160ddd146100f657806323b872dd14610108578063313ce5671461011b578063395093511461012a575b5f80fd5b6100bd6101bb565b6040516100ca9190610775565b60405180910390f35b6100e66100e13660046107dc565b61024b565b60405190151581526020016100ca565b6002545b6040519081526020016100ca565b6100e6610116366004610804565b610264565b604051601281526020016100ca565b6100e66101383660046107dc565b610287565b61015061014b3660046107dc565b6102a8565b005b6100fa61016036600461083d565b6001600160a01b03165f9081526020819052604090205490565b6100bd6102b6565b6100e66101903660046107dc565b6102c5565b6100e66101a33660046107dc565b610344565b6100fa6101b636600461085d565b610351565b6060600380546101ca9061088e565b80601f01602080910402602001604051908101604052809291908181526020018280546101f69061088e565b80156102415780601f1061021857610100808354040283529160200191610241565b820191905f5260205f20905b81548152906001019060200180831161022457829003601f168201915b5050505050905090565b5f3361025881858561037b565b60019150505b92915050565b5f3361027185828561049e565b61027c858585610516565b506001949350505050565b5f336102588185856102998383610351565b6102a391906108c6565b61037b565b6102b282826106b8565b5050565b6060600480546101ca9061088e565b5f33816102d28286610351565b9050838110156103375760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b61027c828686840361037b565b5f33610258818585610516565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b6001600160a01b0383166103dd5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161032e565b6001600160a01b03821661043e5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161032e565b6001600160a01b038381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b5f6104a98484610351565b90505f19811461051057818110156105035760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161032e565b610510848484840361037b565b50505050565b6001600160a01b03831661057a5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161032e565b6001600160a01b0382166105dc5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161032e565b6001600160a01b0383165f90815260208190526040902054818110156106535760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161032e565b6001600160a01b038481165f81815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3610510565b6001600160a01b03821661070e5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640161032e565b8060025f82825461071f91906108c6565b90915550506001600160a01b0382165f81815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b5f602080835283518060208501525f5b818110156107a157858101830151858201604001528201610785565b505f604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146107d7575f80fd5b919050565b5f80604083850312156107ed575f80fd5b6107f6836107c1565b946020939093013593505050565b5f805f60608486031215610816575f80fd5b61081f846107c1565b925061082d602085016107c1565b9150604084013590509250925092565b5f6020828403121561084d575f80fd5b610856826107c1565b9392505050565b5f806040838503121561086e575f80fd5b610877836107c1565b9150610885602084016107c1565b90509250929050565b600181811c908216806108a257607f821691505b6020821081036108c057634e487b7160e01b5f52602260045260245ffd5b50919050565b8082018082111561025e57634e487b7160e01b5f52601160045260245ffdfea164736f6c6343000818000a","storage":{"0x2":"0xe8d4a51000","0x3":"0x0","0x4":"0x0","0x47668262eb76f3aa61b856a0c078f33a11f46671cf1466c3616ba74a22fcdd92":"0xe8d4a51000","0x9cc83e833a69122bf7773b58c082655d780ae469ab7cdf5d1047a30229e55875":"0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"}},"0xe0afc4e9e03e4aa67257df7a2eca77454309789d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061002b5760003560e01c806316f1983114610030575b600080fd5b6100b06004803603604081101561004657600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561007157600080fd5b82018360208201111561008357600080fd5b803590602001918460018302840111640100000000831117156100a557600080fd5b5090925090506100b2565b005b826001600160a01b031660017f103fed9db65eac19c4d870f49ab7520fe03b99f1838e5996caf47e9e43308392848460405180806020018281038252848482818152602001925080828437600083820152604051601f909101601f19169092018290039550909350505050a350505056fea164736f6c6343000606000a","storage":{}},"0xe4fdf45c2f8d198854f8823809c7a988eeaaa493":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100a6575f3560e01c80638cb8ecec1161006e5780638cb8ecec1461013e5780638da5cb5b14610151578063cbe9e76414610161578063da8c229e14610183578063e0dba60f146101a5578063f2fde38b146101b8575f80fd5b806301670ba9146100aa57806301ffc9a7146100bf5780633f15457f146100f85780634e543b2614610123578063715018a614610136575b5f80fd5b6100bd6100b8366004610529565b6101cb565b005b6100e36100cd366004610540565b6001600160e01b0319166301ffc9a760e01b1490565b60405190151581526020015b60405180910390f35b60025461010b906001600160a01b031681565b6040516001600160a01b0390911681526020016100ef565b6100bd610131366004610589565b610217565b6100bd610282565b6100bd61014c3660046105a2565b610295565b5f546001600160a01b031661010b565b6100e361016f366004610529565b60036020525f908152604090205460ff1681565b6100e3610191366004610589565b60016020525f908152604090205460ff1681565b6100bd6101b33660046105cc565b6103a2565b6100bd6101c6366004610589565b610408565b6101d3610481565b60405181907f1764176cfa565853ba1ded547a830a9f9bff95231ef6fd228b3ddd6175777569905f90a25f908152600360205260409020805460ff19166001179055565b61021f610481565b600254604051630c4b7b8560e11b81525f60048201526001600160a01b03838116602483015290911690631896f70a906044015f604051808303815f87803b158015610269575f80fd5b505af115801561027b573d5f803e3d5ffd5b5050505050565b61028a610481565b6102935f6104da565b565b335f9081526001602052604090205460ff166103095760405162461bcd60e51b815260206004820152602860248201527f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f604482015267373a3937b63632b960c11b60648201526084015b60405180910390fd5b5f8281526003602052604090205460ff1615610323575f80fd5b6002546040516306ab592360e01b81525f6004820152602481018490526001600160a01b038381166044830152909116906306ab5923906064016020604051808303815f875af1158015610379573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061039d9190610605565b505050565b6103aa610481565b6001600160a01b0382165f81815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b610410610481565b6001600160a01b0381166104755760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610300565b61047e816104da565b50565b5f546001600160a01b031633146102935760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610300565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f60208284031215610539575f80fd5b5035919050565b5f60208284031215610550575f80fd5b81356001600160e01b031981168114610567575f80fd5b9392505050565b80356001600160a01b0381168114610584575f80fd5b919050565b5f60208284031215610599575f80fd5b6105678261056e565b5f80604083850312156105b3575f80fd5b823591506105c36020840161056e565b90509250929050565b5f80604083850312156105dd575f80fd5b6105e68361056e565b9150602083013580151581146105fa575f80fd5b809150509250929050565b5f60208284031215610615575f80fd5b505191905056fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0xbdf39e9e65b2355b1b0b06df799c09159f0ab90f06a9bb2153f5de7d9b0ea81":"0x1","0x97b771283c9c769f7b9399fef71d92816f2bd31de10203b676671b01eb920966":"0x1"}},"0xe85541865bbb62a05064ce5c9f41cc293a8ea996":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610060575f3560e01c8063715018a6146100645780638129fc1c1461006e5780638da5cb5b14610076578063a3f4df7e14610096578063f2fde38b146100cf578063ffa1ad74146100e2575b5f80fd5b61006c610106565b005b61006c610119565b6033546040516001600160a01b0390911681526020015b60405180910390f35b6100c26040518060400160405280600d81526020016c2aa7299d1027b832b930ba37b960991b81525081565b60405161008d91906103bd565b61006c6100dd366004610409565b610229565b6100c2604051806040016040528060058152602001640302e312e360dc1b81525081565b61010e61029f565b6101175f6102f9565b565b5f54610100900460ff161580801561013757505f54600160ff909116105b806101505750303b15801561015057505f5460ff166001145b6101b85760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b5f805460ff1916600117905580156101d9575f805461ff0019166101001790555b6101e161034a565b8015610226575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50565b61023161029f565b6001600160a01b0381166102965760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016101af565b610226816102f9565b6033546001600160a01b031633146101175760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016101af565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff166103b45760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016101af565b610117336102f9565b5f602080835283518060208501525f5b818110156103e9578581018301518582016040015282016103cd565b505f604082860101526040601f19601f8301168501019250505092915050565b5f60208284031215610419575f80fd5b81356001600160a01b038116811461042f575f80fd5b939250505056fea164736f6c6343000818000a","storage":{}},"0xead34b583404e3cb0c9b97c2d1c486be67be9f30":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0xec71e4e674fe0f432693dc2b935c34bd2774c003":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610090575f3560e01c8063a200e15311610063578063a200e15314610146578063a34e35961461016d578063c8a4271f14610180578063cd5d2c74146101bf578063d820ed42146101e6575f80fd5b806301ffc9a7146100945780632c0fd74c146100bc57806350e9a715146100f157806359b6b86c1461011f575b5f80fd5b6100a76100a2366004610600565b61020d565b60405190151581526020015b60405180910390f35b6100e37f000000000000000000000000000000000000000000000000000000000000000081565b6040519081526020016100b3565b6101046100ff366004610627565b610243565b604080518251815260209283015192810192909252016100b3565b6100e37f000000000000000000000000000000000000000000000000000000000000000181565b6100e37f000000000000000000000000000000000000000000000000000000000000000481565b6100e361017b366004610627565b610404565b6101a77f000000000000000000000000f3810eb7d64d1c11ae12727d957c6202b24492f581565b6040516001600160a01b0390911681526020016100b3565b6100e37f000000000000000000000000000000000000000000000000000000000000000081565b6100e37f000000000000000000000000000000000000000000000000000000000000000281565b5f6001600160e01b031982166301ffc9a760e01b148061023d57506001600160e01b031982166350e9a71560e01b145b92915050565b604080518082019091525f80825260208201525f61029586868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061045392505050565b90505f600582106102d1576102ca847f00000000000000000000000000000000000000000000000000000000000000016106b3565b9050610394565b81600403610303576102ca847f00000000000000000000000000000000000000000000000000000000000000026106b3565b81600303610335576102ca847f00000000000000000000000000000000000000000000000000000000000000046106b3565b81600203610367576102ca847f00000000000000000000000000000000000000000000000000000000000000006106b3565b610391847f00000000000000000000000000000000000000000000000000000000000000006106b3565b90505b60405180604001604052806103a883610554565b81526020016103f76103f28a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c92508b91506105f89050565b610554565b9052979650505050505050565b5f61044a6103f286868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508892508791506105f89050565b95945050505050565b80515f90819081905b8082101561054b575f858381518110610477576104776106ca565b01602001516001600160f81b0319169050600160ff1b8110156104a65761049f6001846106de565b9250610538565b600760fd1b6001600160f81b0319821610156104c75761049f6002846106de565b600f60fc1b6001600160f81b0319821610156104e85761049f6003846106de565b601f60fb1b6001600160f81b0319821610156105095761049f6004846106de565b603f60fa1b6001600160f81b03198216101561052a5761049f6005846106de565b6105356006846106de565b92505b5082610543816106f1565b93505061045c565b50909392505050565b5f807f000000000000000000000000f3810eb7d64d1c11ae12727d957c6202b24492f56001600160a01b03166350d25bcd6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105b2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105d69190610709565b9050806105e7846305f5e1006106b3565b6105f19190610720565b9392505050565b5f9392505050565b5f60208284031215610610575f80fd5b81356001600160e01b0319811681146105f1575f80fd5b5f805f806060858703121561063a575f80fd5b843567ffffffffffffffff80821115610651575f80fd5b818701915087601f830112610664575f80fd5b813581811115610672575f80fd5b886020828501011115610683575f80fd5b6020928301999098509187013596604001359550909350505050565b634e487b7160e01b5f52601160045260245ffd5b808202811582820484141761023d5761023d61069f565b634e487b7160e01b5f52603260045260245ffd5b8082018082111561023d5761023d61069f565b5f600182016107025761070261069f565b5060010190565b5f60208284031215610719575f80fd5b5051919050565b5f8261073a57634e487b7160e01b5f52601260045260245ffd5b50049056fea164736f6c6343000818000a","storage":{}},"0xf1ad43dc647f27c2366ab4742d68d21282f7d50e":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101d1575f3560e01c80638b95dd71116100fe578063c86902331161009e578063e32954eb1161006e578063e32954eb146104f2578063e59d895d14610505578063e985e9c514610518578063f1cb7e0614610553575f80fd5b8063c869023314610435578063ce3decdc1461048c578063d5fa2b001461049f578063d700ff33146104b2575f80fd5b8063a8fa5682116100d9578063a8fa5682146103ac578063a9784b3e146103bf578063ac9650d814610402578063bc1c58d114610422575f80fd5b80638b95dd7114610373578063a22cb46514610386578063a4b91a0114610399575f80fd5b80633603d758116101745780635c98042b116101445780635c98042b14610327578063623195b01461033a578063691f34311461034d5780637737221314610360575f80fd5b80633603d758146102975780633b3b57de146102aa5780634cbf6ba4146102bd57806359d1d43c14610307575f80fd5b8063124a319c116101af578063124a319c146102255780632203ab561461025057806329cd62ea14610271578063304e6ade14610284575f80fd5b806301ffc9a7146101d55780630af179d7146101fd57806310f13a8c14610212575b5f80fd5b6101e86101e3366004612267565b610566565b60405190151581526020015b60405180910390f35b61021061020b3660046122bd565b610576565b005b610210610220366004612304565b610778565b610238610233366004612377565b610842565b6040516001600160a01b0390911681526020016101f4565b61026361025e3660046123a1565b610a87565b6040516101f492919061240e565b61021061027f366004612426565b610bb5565b6102106102923660046122bd565b610c4d565b6102106102a536600461244f565b610cc6565b6102386102b836600461244f565b610d64565b6101e86102cb3660046123a1565b5f82815260208181526040808320546001600160401b031683526006825280832094835293815283822092825291909152205461ffff16151590565b61031a6103153660046122bd565b610d93565b6040516101f49190612466565b61031a61033536600461244f565b610e6f565b610210610348366004612478565b610f2a565b61031a61035b36600461244f565b610fc2565b61021061036e3660046122bd565b610ffa565b6102106103813660046124da565b611073565b6102106103943660046125b9565b611150565b6102106103a73660046125e3565b61122a565b61031a6103ba36600461261e565b6112f6565b6101e86103cd36600461265a565b6001600160a01b039283165f908152600c60209081526040808320948352938152838220929094168152925290205460ff1690565b6104156104103660046126ce565b611342565b6040516101f4919061270c565b61031a61043036600461244f565b61134f565b61047761044336600461244f565b5f81815260208181526040808320546001600160401b03168352600982528083209383529290522080546001909101549091565b604080519283526020830191909152016101f4565b61021061049a3660046122bd565b611387565b6102106104ad36600461276e565b6114c3565b6104da6104c036600461244f565b5f602081905290815260409020546001600160401b031681565b6040516001600160401b0390911681526020016101f4565b61041561050036600461279c565b6114e9565b6102106105133660046127d6565b6114fe565b6101e8610526366004612808565b6001600160a01b039182165f908152600b6020908152604080832093909416825291909152205460ff1690565b61031a6105613660046123a1565b6115a2565b5f61057082611666565b92915050565b826105808161168a565b610588575f80fd5b5f84815260208181526040808320548151601f87018490048402810184019092528582528392606092839285926001600160401b039091169183916105eb9183918d908d90819084018382808284375f9201919091525092939250506118b79050565b90505b80515160208201511015610712578661ffff165f03610652578060400151965061061781611912565b94508460405160200161062a9190612834565b60405160208183030381529060405280519060200120925061064b81611933565b9350610704565b5f61065c82611912565b9050816040015161ffff168861ffff16141580610680575061067e868261194f565b155b15610702576106db8c878a8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250505060208801518d91506106d2908290612863565b8b51158a61196a565b8160400151975081602001519650809550858051906020012093506106ff82611933565b94505b505b61070d81611bc9565b6105ee565b5083511561076c5761076c8a85888c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c925061076391508290508f612863565b8951158861196a565b50505050505050505050565b846107828161168a565b61078a575f80fd5b5f86815260208181526040808320546001600160401b03168352600a8252808320898452909152908190209051849184916107c89089908990612876565b908152602001604051809103902091826107e3929190612901565b5084846040516107f4929190612876565b6040518091039020867f448bc014f1536726cf8d54ff3d6481ed3cbc683c2591ca204274009afa09b1a18787878760405161083294939291906129e2565b60405180910390a3505050505050565b5f82815260208181526040808320546001600160401b031683526007825280832085845282528083206001600160e01b0319851684529091528120546001600160a01b03168015610894579050610570565b5f61089e85610d64565b90506001600160a01b0381166108b8575f92505050610570565b6040516301ffc9a760e01b60248201525f9081906001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b1790525161090f9190612834565b5f60405180830381855afa9150503d805f8114610947576040519150601f19603f3d011682016040523d82523d5f602084013e61094c565b606091505b509150915081158061095f575060208151105b80610989575080601f8151811061097857610978612a13565b01602001516001600160f81b031916155b1561099a575f945050505050610570565b6040516001600160e01b0319871660248201526001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b179052516109f09190612834565b5f60405180830381855afa9150503d805f8114610a28576040519150601f19603f3d011682016040523d82523d5f602084013e610a2d565b606091505b509092509050811580610a41575060208151105b80610a6b575080601f81518110610a5a57610a5a612a13565b01602001516001600160f81b031916155b15610a7c575f945050505050610570565b509095945050505050565b5f82815260208181526040808320546001600160401b03168352600180835281842086855290925282206060915b848111610b975780851615801590610ae457505f8181526020839052604081208054610ae090612885565b9050115b15610b8f5780825f8381526020019081526020015f20808054610b0690612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610b3290612885565b8015610b7d5780601f10610b5457610100808354040283529160200191610b7d565b820191905f5260205f20905b815481529060010190602001808311610b6057829003601f168201915b50505050509050935093505050610bae565b60011b610ab5565b505f60405180602001604052805f81525092509250505b9250929050565b82610bbf8161168a565b610bc7575f80fd5b60408051808201825284815260208082018581525f888152808352848120546001600160401b031681526009835284812089825283528490209251835551600190920191909155815185815290810184905285917f1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e4691015b60405180910390a250505050565b82610c578161168a565b610c5f575f80fd5b5f84815260208181526040808320546001600160401b03168352600382528083208784529091529020610c93838583612901565b50837fe379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d75788484604051610c3f929190612a27565b80610cd08161168a565b610cd8575f80fd5b5f82815260208190526040812080546001600160401b031691610cfa83612a3a565b82546101009290920a6001600160401b038181021990931691831602179091555f84815260208181526040918290205491519190921681528492507fc6621ccb8f3f5a04bb6502154b2caf6adf5983fe76dfef1cfc9c42e3579db444910160405180910390a25050565b5f80610d7183603c6115a2565b905080515f03610d8357505f92915050565b610d8c81611cae565b9392505050565b5f83815260208181526040808320546001600160401b03168352600a825280832086845290915290819020905160609190610dd19085908590612876565b90815260200160405180910390208054610dea90612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610e1690612885565b8015610e615780601f10610e3857610100808354040283529160200191610e61565b820191905f5260205f20905b815481529060010190602001808311610e4457829003601f168201915b505050505090509392505050565b5f81815260208181526040808320546001600160401b03168352600482528083208484529091529020805460609190610ea790612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610ed390612885565b8015610f1e5780601f10610ef557610100808354040283529160200191610f1e565b820191905f5260205f20905b815481529060010190602001808311610f0157829003601f168201915b50505050509050919050565b83610f348161168a565b610f3c575f80fd5b83610f48600182612863565b1615610f52575f80fd5b5f85815260208181526040808320546001600160401b031683526001825280832088845282528083208784529091529020610f8e838583612901565b50604051849086907faa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe3905f90a35050505050565b5f81815260208181526040808320546001600160401b03168352600882528083208484529091529020805460609190610ea790612885565b826110048161168a565b61100c575f80fd5b5f84815260208181526040808320546001600160401b03168352600882528083208784529091529020611040838583612901565b50837fb7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f78484604051610c3f929190612a27565b8261107d8161168a565b611085575f80fd5b837f65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af75284846040516110b792919061240e565b60405180910390a2603c830361110e57837f52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd26110f284611cae565b6040516001600160a01b03909116815260200160405180910390a25b5f84815260208181526040808320546001600160401b0316835260028252808320878452825280832086845290915290206111498382612a5f565b5050505050565b6001600160a01b03821633036111bf5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084015b60405180910390fd5b335f818152600b602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6001600160a01b03821633036112825760405162461bcd60e51b815260206004820181905260248201527f53657474696e672064656c65676174652073746174757320666f722073656c6660448201526064016111b6565b335f818152600c6020908152604080832087845282528083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519384529286917ff0ddb3b04746704017f9aa8bd728fcc2c1d11675041205350018915f5e4750a0910160405180910390a4505050565b5f83815260208181526040808320546001600160401b03168352600582528083208684528252808320858452825280832061ffff851684529091529020805460609190610dea90612885565b6060610d8c5f8484611ccb565b5f81815260208181526040808320546001600160401b03168352600382528083208484529091529020805460609190610ea790612885565b826113918161168a565b611399575f80fd5b5f84815260208181526040808320546001600160401b031680845260048352818420888552909252822080549192916113d190612885565b80601f01602080910402602001604051908101604052809291908181526020018280546113fd90612885565b80156114485780601f1061141f57610100808354040283529160200191611448565b820191905f5260205f20905b81548152906001019060200180831161142b57829003601f168201915b505050506001600160401b0384165f9081526004602090815260408083208b8452909152902091925061147e9050858783612901565b50857f8f15ed4b723ef428f250961da8315675b507046737e19319fc1a4d81bfe87f858287876040516114b393929190612b1e565b60405180910390a2505050505050565b816114cd8161168a565b6114d5575f80fd5b6114e483603c61038185611e88565b505050565b60606114f6848484611ccb565b949350505050565b826115088161168a565b611510575f80fd5b5f84815260208181526040808320546001600160401b031683526007825280832087845282528083206001600160e01b031987168085529083529281902080546001600160a01b0319166001600160a01b038716908117909155905190815286917f7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa910160405180910390a350505050565b5f82815260208181526040808320546001600160401b0316835260028252808320858452825280832084845290915290208054606091906115e290612885565b80601f016020809104026020016040519081016040528092919081815260200182805461160e90612885565b80156116595780601f1061163057610100808354040283529160200191611659565b820191905f5260205f20905b81548152906001019060200180831161163c57829003601f168201915b5050505050905092915050565b5f6001600160e01b03198216631674750f60e21b1480610570575061057082611eb8565b5f336001600160a01b037f0000000000000000000000004fbf7b2f171336958be5d15ff762a5cff53635681614806116ea5750336001600160a01b037f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5616145b156116f757506001919050565b6040516302571be360e01b8152600481018390525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa15801561175c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117809190612b4d565b90507f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b0316816001600160a01b031603611845576040516331a9108f60e11b8152600481018490527f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b031690636352211e90602401602060405180830381865afa15801561181e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118429190612b4d565b90505b6001600160a01b03811633148061187e57506001600160a01b0381165f908152600b6020908152604080832033845290915290205460ff165b80610d8c57506001600160a01b0381165f908152600c60209081526040808320868452825280832033845290915290205460ff16610d8c565b6118ff6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261057081611bc9565b602081015181516060916105709161192a9082611edc565b84519190611f33565b60a081015160c08201516060916105709161192a908290612863565b5f81518351148015610d8c5750610d8c835f845f8751611fa7565b865160208801205f61197d878787611f33565b90508315611aa1576001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c168452909152902080546119c690612885565b159050611a23576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611a0783612b68565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091528120611a62916121f9565b897f03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a12078a8a604051611a94929190612b84565b60405180910390a261076c565b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c16845290915290208054611ae290612885565b90505f03611b40576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611b2483612ba9565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091529020611b808282612a5f565b50897f52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b8a8a84604051611bb593929190612bbf565b60405180910390a250505050505050505050565b60c08101516020820181905281515111611be05750565b5f611bf2825f01518360200151611edc565b8260200151611c019190612bed565b8251909150611c109082611fc9565b61ffff166040830152611c24600282612bed565b8251909150611c339082611fc9565b61ffff166060830152611c47600282612bed565b8251909150611c569082611fef565b63ffffffff166080830152611c6c600482612bed565b82519091505f90611c7d9083611fc9565b61ffff169050611c8e600283612bed565b60a084018190529150611ca18183612bed565b60c0909301929092525050565b5f8151601414611cbc575f80fd5b5060200151600160601b900490565b6060816001600160401b03811115611ce557611ce56124c6565b604051908082528060200260200182016040528015611d1857816020015b6060815260200190600190039081611d035790505b5090505f5b82811015611e80578415611dd8575f848483818110611d3e57611d3e612a13565b9050602002810190611d509190612c00565b611d5f91602491600491612c42565b611d6891612c69565b9050858114611dd65760405162461bcd60e51b815260206004820152603460248201527f6d756c746963616c6c3a20416c6c207265636f726473206d7573742068617665604482015273040c240dac2e8c6d0d2dcce40dcc2dacad0c2e6d60631b60648201526084016111b6565b505b5f8030868685818110611ded57611ded612a13565b9050602002810190611dff9190612c00565b604051611e0d929190612876565b5f60405180830381855af49150503d805f8114611e45576040519150601f19603f3d011682016040523d82523d5f602084013e611e4a565b606091505b509150915081611e58575f80fd5b80848481518110611e6b57611e6b612a13565b60209081029190910101525050600101611d1d565b509392505050565b604080516014808252818301909252606091602082018180368337505050600160601b9290920260208301525090565b5f6001600160e01b0319821663c869023360e01b1480610570575061057082612017565b5f815b83518110611eef57611eef612c86565b5f611efa858361203b565b60ff169050611f0a816001612bed565b611f149083612bed565b9150805f03611f235750611f29565b50611edf565b6114f68382612863565b8251606090611f428385612bed565b1115611f4c575f80fd5b5f826001600160401b03811115611f6557611f656124c6565b6040519080825280601f01601f191660200182016040528015611f8f576020820181803683370190505b50905060208082019086860101610a7c82828761205e565b5f611fb38484846120b3565b611fbe8787856120b3565b149695505050505050565b81515f90611fd8836002612bed565b1115611fe2575f80fd5b50016002015161ffff1690565b81515f90611ffe836004612bed565b1115612008575f80fd5b50016004015163ffffffff1690565b5f6001600160e01b0319821663691f343160e01b14806105705750610570826120d5565b5f82828151811061204e5761204e612a13565b016020015160f81c905092915050565b602081106120965781518352612075602084612bed565b9250612082602083612bed565b915061208f602082612863565b905061205e565b905182516020929092036101000a5f190180199091169116179052565b82515f906120c18385612bed565b11156120cb575f80fd5b5091016020012090565b5f6001600160e01b031982166304928c6760e21b14806105705750610570825f6001600160e01b0319821663547d2b4160e11b148061212457506001600160e01b03198216635c98042b60e01b145b806105705750610570825f6001600160e01b0319821663bc1c58d160e01b14806105705750610570825f6001600160e01b03198216631d9dabef60e11b148061217d57506001600160e01b031982166378e5bf0360e11b145b806105705750610570825f6001600160e01b03198216631101d5ab60e11b14806105705750610570825f6001600160e01b0319821663d700ff3360e01b14806105705750610570825f6001600160e01b03198216634fbf043360e01b148061057057506301ffc9a760e01b6001600160e01b0319831614610570565b50805461220590612885565b5f825580601f10612214575050565b601f0160209004905f5260205f20908101906122309190612233565b50565b5b80821115612247575f8155600101612234565b5090565b80356001600160e01b031981168114612262575f80fd5b919050565b5f60208284031215612277575f80fd5b610d8c8261224b565b5f8083601f840112612290575f80fd5b5081356001600160401b038111156122a6575f80fd5b602083019150836020828501011115610bae575f80fd5b5f805f604084860312156122cf575f80fd5b8335925060208401356001600160401b038111156122eb575f80fd5b6122f786828701612280565b9497909650939450505050565b5f805f805f60608688031215612318575f80fd5b8535945060208601356001600160401b0380821115612335575f80fd5b61234189838a01612280565b90965094506040880135915080821115612359575f80fd5b5061236688828901612280565b969995985093965092949392505050565b5f8060408385031215612388575f80fd5b823591506123986020840161224b565b90509250929050565b5f80604083850312156123b2575f80fd5b50508035926020909101359150565b5f5b838110156123db5781810151838201526020016123c3565b50505f910152565b5f81518084526123fa8160208601602086016123c1565b601f01601f19169290920160200192915050565b828152604060208201525f6114f660408301846123e3565b5f805f60608486031215612438575f80fd5b505081359360208301359350604090920135919050565b5f6020828403121561245f575f80fd5b5035919050565b602081525f610d8c60208301846123e3565b5f805f806060858703121561248b575f80fd5b843593506020850135925060408501356001600160401b038111156124ae575f80fd5b6124ba87828801612280565b95989497509550505050565b634e487b7160e01b5f52604160045260245ffd5b5f805f606084860312156124ec575f80fd5b833592506020840135915060408401356001600160401b0380821115612510575f80fd5b818601915086601f830112612523575f80fd5b813581811115612535576125356124c6565b604051601f8201601f19908116603f0116810190838211818310171561255d5761255d6124c6565b81604052828152896020848701011115612575575f80fd5b826020860160208301375f6020848301015280955050505050509250925092565b6001600160a01b0381168114612230575f80fd5b80358015158114612262575f80fd5b5f80604083850312156125ca575f80fd5b82356125d581612596565b9150612398602084016125aa565b5f805f606084860312156125f5575f80fd5b83359250602084013561260781612596565b9150612615604085016125aa565b90509250925092565b5f805f60608486031215612630575f80fd5b8335925060208401359150604084013561ffff8116811461264f575f80fd5b809150509250925092565b5f805f6060848603121561266c575f80fd5b833561267781612596565b925060208401359150604084013561264f81612596565b5f8083601f84011261269e575f80fd5b5081356001600160401b038111156126b4575f80fd5b6020830191508360208260051b8501011115610bae575f80fd5b5f80602083850312156126df575f80fd5b82356001600160401b038111156126f4575f80fd5b6127008582860161268e565b90969095509350505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b8281101561276157603f1988860301845261274f8583516123e3565b94509285019290850190600101612733565b5092979650505050505050565b5f806040838503121561277f575f80fd5b82359150602083013561279181612596565b809150509250929050565b5f805f604084860312156127ae575f80fd5b8335925060208401356001600160401b038111156127ca575f80fd5b6122f78682870161268e565b5f805f606084860312156127e8575f80fd5b833592506127f86020850161224b565b9150604084013561264f81612596565b5f8060408385031215612819575f80fd5b823561282481612596565b9150602083013561279181612596565b5f82516128458184602087016123c1565b9190910192915050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156105705761057061284f565b818382375f9101908152919050565b600181811c9082168061289957607f821691505b6020821081036128b757634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156114e457805f5260205f20601f840160051c810160208510156128e25750805b601f840160051c820191505b81811015611149575f81556001016128ee565b6001600160401b03831115612918576129186124c6565b61292c836129268354612885565b836128bd565b5f601f84116001811461295d575f85156129465750838201355b5f19600387901b1c1916600186901b178355611149565b5f83815260208120601f198716915b8281101561298c578685013582556020948501946001909201910161296c565b50868210156129a8575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b604081525f6129f56040830186886129ba565b8281036020840152612a088185876129ba565b979650505050505050565b634e487b7160e01b5f52603260045260245ffd5b602081525f6114f66020830184866129ba565b5f6001600160401b03808316818103612a5557612a5561284f565b6001019392505050565b81516001600160401b03811115612a7857612a786124c6565b612a8c81612a868454612885565b846128bd565b602080601f831160018114612abf575f8415612aa85750858301515b5f19600386901b1c1916600185901b178555612b16565b5f85815260208120601f198616915b82811015612aed57888601518255948401946001909101908401612ace565b5085821015612b0a57878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b604081525f612b3060408301866123e3565b8281036020840152612b438185876129ba565b9695505050505050565b5f60208284031215612b5d575f80fd5b8151610d8c81612596565b5f61ffff821680612b7b57612b7b61284f565b5f190192915050565b604081525f612b9660408301856123e3565b905061ffff831660208301529392505050565b5f61ffff808316818103612a5557612a5561284f565b606081525f612bd160608301866123e3565b61ffff851660208401528281036040840152612b4381856123e3565b808201808211156105705761057061284f565b5f808335601e19843603018112612c15575f80fd5b8301803591506001600160401b03821115612c2e575f80fd5b602001915036819003821315610bae575f80fd5b5f8085851115612c50575f80fd5b83861115612c5c575f80fd5b5050820193919092039150565b80356020831015610570575f19602084900360031b1b1692915050565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{}},"0xf3810eb7d64d1c11ae12727d957c6202b24492f5":{"nonce":1,"balance":"0x0","code":"0x6080604052348015600e575f80fd5b50600436106030575f3560e01c806350d25bcd146034578063e5c19b2d146048575b5f80fd5b5f5460405190815260200160405180910390f35b605760533660046059565b5f55565b005b5f602082840312156068575f80fd5b503591905056fea164736f6c6343000818000a","storage":{"0x0":"0x5f5e100"}},"0xf670681605efc4efc804f5a9b97ee89520473d56":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c80638da5cb5b11610088578063c66485b211610063578063c66485b2146101da578063da8c229e146101ed578063e0dba60f1461021f578063f2fde38b14610232575f80fd5b80638da5cb5b146101a4578063bffbe61c146101b4578063c47f0027146101c7575f80fd5b806365669631116100c35780636566963114610161578063715018a6146101745780637a806d6b1461017e578063828eab0e14610191575f80fd5b80630f5a5466146100e95780631e83409a1461010f5780633f15457f14610122575b5f80fd5b6100fc6100f7366004610958565b610245565b6040519081526020015b60405180910390f35b6100fc61011d36600461098f565b610258565b6101497f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a981565b6040516001600160a01b039091168152602001610106565b6100fc61016f3660046109aa565b610279565b61017c610526565b005b6100fc61018c366004610a8f565b610539565b600254610149906001600160a01b031681565b5f546001600160a01b0316610149565b6100fc6101c236600461098f565b6105ae565b6100fc6101d5366004610b00565b610608565b61017c6101e836600461098f565b610624565b61020f6101fb36600461098f565b60016020525f908152604090205460ff1681565b6040519015158152602001610106565b61017c61022d366004610b47565b6106e4565b61017c61024036600461098f565b61074a565b5f610251338484610279565b9392505050565b6002545f9061027390339084906001600160a01b0316610279565b92915050565b5f836001600160a01b0381163314806102a05750335f9081526001602052604090205460ff165b80610334575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063e985e9c590604401602060405180830381865afa158015610310573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103349190610b73565b806103435750610343816107c3565b6103e05760405162461bcd60e51b815260206004820152605b60248201527f526576657273655265676973747261723a2043616c6c6572206973206e6f742060448201527f6120636f6e74726f6c6c6572206f7220617574686f726973656420627920616460648201527f6472657373206f7220746865206164647265737320697473656c660000000000608482015260a4015b60405180910390fd5b5f6103ea8661083a565b604080517f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e2602080830191909152818301849052825180830384018152606090920192839052815191012091925081906001600160a01b038916907f6ada868dd3058cf77a48a74489fd7963688e5464b2b0fa957ace976243270e92905f90a36040516305ef2c7f60e41b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26004820152602481018390526001600160a01b03878116604483015286811660648301525f60848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610505575f80fd5b505af1158015610517573d5f803e3d5ffd5b50929998505050505050505050565b61052e61089c565b6105375f6108f5565b565b5f80610546868686610279565b604051637737221360e01b81529091506001600160a01b038516906377372213906105779084908790600401610b8e565b5f604051808303815f87803b15801561058e575f80fd5b505af11580156105a0573d5f803e3d5ffd5b509298975050505050505050565b5f7f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26105d98361083a565b604080516020810193909352820152606001604051602081830303815290604052805190602001209050919050565b6002545f9061027390339081906001600160a01b031685610539565b61062c61089c565b6001600160a01b03811661069b5760405162461bcd60e51b815260206004820152603060248201527f526576657273655265676973747261723a205265736f6c76657220616464726560448201526f07373206d757374206e6f7420626520360841b60648201526084016103d7565b600280546001600160a01b0319166001600160a01b0383169081179091556040517feae17a84d9eb83d8c8eb317f9e7d64857bc363fa51674d996c023f4340c577cf905f90a250565b6106ec61089c565b6001600160a01b0382165f81815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b61075261089c565b6001600160a01b0381166107b75760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016103d7565b6107c0816108f5565b50565b5f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801561081e575060408051601f3d908101601f1916820190925261081b91810190610be2565b60015b61082957505f919050565b6001600160a01b0316331492915050565b5f60285b8015610891575f19016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a81536010909204915f19016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a815360108304925061083e565b505060285f20919050565b5f546001600160a01b031633146105375760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016103d7565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146107c0575f80fd5b5f8060408385031215610969575f80fd5b823561097481610944565b9150602083013561098481610944565b809150509250929050565b5f6020828403121561099f575f80fd5b813561025181610944565b5f805f606084860312156109bc575f80fd5b83356109c781610944565b925060208401356109d781610944565b915060408401356109e781610944565b809150509250925092565b634e487b7160e01b5f52604160045260245ffd5b5f82601f830112610a15575f80fd5b813567ffffffffffffffff80821115610a3057610a306109f2565b604051601f8301601f19908116603f01168101908282118183101715610a5857610a586109f2565b81604052838152866020858801011115610a70575f80fd5b836020870160208301375f602085830101528094505050505092915050565b5f805f8060808587031215610aa2575f80fd5b8435610aad81610944565b93506020850135610abd81610944565b92506040850135610acd81610944565b9150606085013567ffffffffffffffff811115610ae8575f80fd5b610af487828801610a06565b91505092959194509250565b5f60208284031215610b10575f80fd5b813567ffffffffffffffff811115610b26575f80fd5b610b3284828501610a06565b949350505050565b80151581146107c0575f80fd5b5f8060408385031215610b58575f80fd5b8235610b6381610944565b9150602083013561098481610b3a565b5f60208284031215610b83575f80fd5b815161025181610b3a565b8281525f60206040602084015283518060408501525f5b81811015610bc157858101830151858201606001528201610ba5565b505f606082860101526060601f19601f830116850101925050509392505050565b5f60208284031215610bf2575f80fd5b81516102518161094456fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2":"0x9df67c91f1bfcb4d966cf764e9218685e7c59e8a","0x1f5b7623941da966ad7183d9cbb6db584f6d4add26919ac31a2d3f19a164e7e1":"0x1","0xbe5de2149ce76ca5934fa63455cd675fd52e2d30f3328985d298a627ca0f05e9":"0x1"}},"0xf8c26340c1eaea6c7ff1760b25005e1306953572":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061010b5760003560e01c80638c87a4ea116100a2578063b87abc1111610071578063b87abc1114610244578063c597407314610257578063ce92b33e1461026a578063e837ae741461027d578063ec129eea146102905761010b565b80638c87a4ea146101ea5780638f69c188146101fd578063a3557e6c14610210578063b85afd28146102235761010b565b806347c81699116100de57806347c8169914610181578063672b9f81146101945780636ccbae5f146101b55780637b103999146101d55761010b565b80631bd8cc1a146101105780631be5e7ed146101395780632c3d376d14610159578063310bd74b1461016c575b600080fd5b61012361011e3660046117b4565b6102a3565b6040516101309190611eee565b60405180910390f35b61014c610147366004611aec565b6104f2565b6040516101309190611fd6565b61014c610167366004611b21565b610673565b61017f61017a366004611b21565b610714565b005b61017f61018f3660046119b5565b6107c0565b6101a76101a2366004611b94565b6108ef565b604051610130929190611fe7565b6101c86101c3366004611b21565b6109c3565b604051610130919061204c565b6101dd6109d5565b6040516101309190611ea9565b6101236101f836600461191d565b6109e5565b61017f61020b366004611878565b610a74565b61017f61021e366004611878565b610af0565b610236610231366004611951565b610b1b565b604051610130929190611eff565b61017f610252366004611b3f565b610ca9565b61017f610265366004611a39565b610d43565b61017f610278366004611808565b610df9565b61017f61028b366004611808565b610e97565b61017f61029e366004611808565b610f4e565b60015460405163b3f9e4cb60e01b815260609183916001600160a01b039091169063b3f9e4cb906102d890849060040161204c565b60206040518083038186803b1580156102f057600080fd5b505afa158015610304573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610328919081019061178e565b6001600160a01b0316306001600160a01b0316146103615760405162461bcd60e51b81526004016103589061201c565b60405180910390fd5b604080518581526020808702820101909152849060609082801561039957816020015b60608152602001906001900390816103845790505b506000868152600360205260408120549192505b838110156104e557600087815260026020908152604080832085845290915290208989838181106103da57fe5b602002820190508035601e19368490030181126103f657600080fd5b909101602081019150356001600160401b0381111561041457600080fd5b3681900382131561042457600080fd5b604051610432929190611e70565b9081526040805160209281900383018120805460026001821615610100026000190190911604601f810185900485028301850190935282825290929091908301828280156104c15780601f10610496576101008083540402835291602001916104c1565b820191906000526020600020905b8154815290600101906020018083116104a457829003601f168201915b50505050508382815181106104d257fe5b60209081029190910101526001016103ad565b5090979650505050505050565b60015460405163b3f9e4cb60e01b815260609183916001600160a01b039091169063b3f9e4cb9061052790849060040161204c565b60206040518083038186803b15801561053f57600080fd5b505afa158015610553573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610577919081019061178e565b6001600160a01b0316306001600160a01b0316146105a75760405162461bcd60e51b81526004016103589061201c565b6000838152600260209081526040808320600383528184205484529091529081902090516105d6908690611e7d565b9081526040805160209281900383018120805460026001821615610100026000190190911604601f810185900485028301850190935282825290929091908301828280156106655780601f1061063a57610100808354040283529160200191610665565b820191906000526020600020905b81548152906001019060200180831161064857829003601f168201915b505050505091505092915050565b60008181526004602090815260409182902080548351601f60026000196101006001861615020190931692909204918201849004840281018401909452808452606093928301828280156107085780601f106106dd57610100808354040283529160200191610708565b820191906000526020600020905b8154815290600101906020018083116106eb57829003601f168201915b50505050509050919050565b60015460405163430c208160e01b815282916001600160a01b03169063430c2081906107469033908590600401611ec5565b60206040518083038186803b15801561075e57600080fd5b505afa158015610772573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506107969190810190611997565b6107b25760405162461bcd60e51b81526004016103589061202c565b6107bc4283610fec565b5050565b60015460405163430c208160e01b815282916001600160a01b03169063430c2081906107f29033908590600401611ec5565b60206040518083038186803b15801561080a57600080fd5b505afa15801561081e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506108429190810190611997565b61085e5760405162461bcd60e51b81526004016103589061202c565b6108e7600360008481526020019081526020016000205487878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061108e915050565b505050505050565b60015460405163b3f9e4cb60e01b8152606091829184916001600160a01b03169063b3f9e4cb9061092490849060040161204c565b60206040518083038186803b15801561093c57600080fd5b505afa158015610950573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610974919081019061178e565b6001600160a01b0316306001600160a01b0316146109a45760405162461bcd60e51b81526004016103589061201c565b6109ad85610673565b92506109b983856104f2565b9150509250929050565b60009081526020819052604090205490565b6001546001600160a01b03165b90565b6060600082519050606081604051908082528060200260200182016040528015610a2357816020015b6060815260200190600190039081610a0e5790505b50905060005b82811015610a6c57610a4d858281518110610a4057fe5b6020026020010151610673565b828281518110610a5957fe5b6020908102919091010152600101610a29565b509392505050565b610acf63ce92b33e60e01b858585604051602401610a9493929190611f24565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092178252519020838361129f565b600082815260036020526040902054610aea908585856113c3565b50505050565b610b1063ec129eea60e01b858585604051602401610a9493929190611f24565b610aea84848461140a565b60015460405163b3f9e4cb60e01b8152606091829184916001600160a01b03169063b3f9e4cb90610b5090849060040161204c565b60206040518083038186803b158015610b6857600080fd5b505afa158015610b7c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610ba0919081019061178e565b6001600160a01b0316306001600160a01b031614610bd05760405162461bcd60e51b81526004016103589061201c565b8451604080518281526020808402820101909152818015610c0557816020015b6060815260200190600190039081610bf05790505b50935080604051908082528060200260200182016040528015610c3c57816020015b6060815260200190600190039081610c275790505b50925060005b81811015610c9f57610c67878281518110610c5957fe5b6020026020010151876108ef565b8651879084908110610c7557fe5b60200260200101868481518110610c8857fe5b602090810291909101019190915252600101610c42565b5050509250929050565b610d3463310bd74b60e01b84604051602401610cc5919061204c565b60408051601f19818403018152918152602080830180516001600160e01b03166001600160e01b031990951694909417845291519092208251601f8601839004830281018301909352848352918691869086908190840183828082843760009201919091525061129f92505050565b610d3e4284610fec565b505050565b610d676347c8169960e01b8888888888604051602401610cc5959493929190611f96565b610df0600360008581526020019081526020016000205488888080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8c018190048102820181019092528a815292508a915089908190840183828082843760009201919091525089925061108e915050565b50505050505050565b60015460405163430c208160e01b815282916001600160a01b03169063430c208190610e2b9033908590600401611ec5565b60206040518083038186803b158015610e4357600080fd5b505afa158015610e57573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610e7b9190810190611997565b610acf5760405162461bcd60e51b81526004016103589061202c565b6005546040516355138f0d60e11b81526001600160a01b039091169063aa271e1a90610ec7903390600401611eb7565b60206040518083038186803b158015610edf57600080fd5b505afa158015610ef3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610f179190810190611997565b610f335760405162461bcd60e51b81526004016103589061203c565b600081815260036020526040902054610d3e908484846113c3565b60015460405163430c208160e01b815282916001600160a01b03169063430c208190610f809033908590600401611ec5565b60206040518083038186803b158015610f9857600080fd5b505afa158015610fac573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610fd09190810190611997565b610b105760405162461bcd60e51b81526004016103589061202c565b600081815260036020526040808220849055600154905163538361a760e01b81526001600160a01b039091169163538361a79161102d91859160040161205a565b600060405180830381600087803b15801561104757600080fd5b505af115801561105b573d6000803e3d6000fd5b50506040518392507f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9150600090a25050565b825160208085019190912060008381526002835260408082208883529093528281209251919290916110c1908790611e7d565b908152604051602091819003919091018120546001805463538361a760e01b84526002918316156101000260001901909216041592506001600160a01b03169063538361a7906111179086908690600401612075565b600060405180830381600087803b15801561113157600080fd5b505af1158015611145573d6000803e3d6000fd5b50505060008481526002602090815260408083208a8452909152908190209051869250611173908890611e7d565b90815260200160405180910390209080519060200190611194929190611521565b50600082815260046020526040902054600260001961010060018416150201909116046111dc57600082815260046020908152604090912086516111da92880190611521565b505b801561123157846040516111f09190611e7d565b6040518091039020837f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f86876040516112289190611fd6565b60405180910390a35b8360405161123f9190611e7d565b6040518091039020856040516112559190611e7d565b6040518091039020847f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d92888860405161128f929190611fe7565b60405180910390a4505050505050565b6000828152602081815260408083205490519092916112f59185916112e9916112ce918a913091899101611e39565b60405160208183030381529060405280519060200120611414565b9063ffffffff61144416565b90506001600160a01b0381161580159061138c575060015460405163430c208160e01b81526001600160a01b039091169063430c20819061133c9084908890600401611ee0565b60206040518083038186803b15801561135457600080fd5b505afa158015611368573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061138c9190810190611997565b6113a85760405162461bcd60e51b81526004016103589061200c565b50505060009081526020819052604090208054600101905550565b825160005b818110156108e757611402868683815181106113e057fe5b60200260200101518684815181106113f457fe5b60200260200101518661108e565b6001016113c8565b610f334282610fec565b6000816040516020016114279190611e89565b604051602081830303815290604052805190602001209050919050565b600081516041146114575750600061151b565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a082111561149d576000935050505061151b565b8060ff16601b141580156114b557508060ff16601c14155b156114c6576000935050505061151b565b600186828585604051600081526020016040526040516114e99493929190611f58565b6020604051602081039080840390855afa15801561150b573d6000803e3d6000fd5b5050506020604051035193505050505b92915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061156257805160ff191683800117855561158f565b8280016001018555821561158f579182015b8281111561158f578251825591602001919060010190611574565b5061159b92915061159f565b5090565b6109e291905b8082111561159b57600081556001016115a5565b805161151b816121a4565b60008083601f8401126115d657600080fd5b5081356001600160401b038111156115ed57600080fd5b60208301915083602082028301111561160557600080fd5b9250929050565b600082601f83011261161d57600080fd5b813561163061162b826120a9565b612083565b81815260209384019390925082018360005b8381101561166e57813586016116588882611734565b8452506020928301929190910190600101611642565b5050505092915050565b600082601f83011261168957600080fd5b813561169761162b826120a9565b915081818352602084019350602081019050838560208402820111156116bc57600080fd5b60005b8381101561166e57816116d28882611783565b84525060209283019291909101906001016116bf565b805161151b816121bb565b60008083601f84011261170557600080fd5b5081356001600160401b0381111561171c57600080fd5b60208301915083600182028301111561160557600080fd5b600082601f83011261174557600080fd5b813561175361162b826120c9565b9150808252602083016020830185838301111561176f57600080fd5b61177a83828461214b565b50505092915050565b803561151b816121c4565b6000602082840312156117a057600080fd5b60006117ac84846115b9565b949350505050565b6000806000604084860312156117c957600080fd5b83356001600160401b038111156117df57600080fd5b6117eb868287016115c4565b935093505060206117fe86828701611783565b9150509250925092565b60008060006060848603121561181d57600080fd5b83356001600160401b0381111561183357600080fd5b61183f8682870161160c565b93505060208401356001600160401b0381111561185b57600080fd5b6118678682870161160c565b92505060406117fe86828701611783565b6000806000806080858703121561188e57600080fd5b84356001600160401b038111156118a457600080fd5b6118b08782880161160c565b94505060208501356001600160401b038111156118cc57600080fd5b6118d88782880161160c565b93505060406118e987828801611783565b92505060608501356001600160401b0381111561190557600080fd5b61191187828801611734565b91505092959194509250565b60006020828403121561192f57600080fd5b81356001600160401b0381111561194557600080fd5b6117ac84828501611678565b6000806040838503121561196457600080fd5b82356001600160401b0381111561197a57600080fd5b61198685828601611678565b92505060206109b985828601611783565b6000602082840312156119a957600080fd5b60006117ac84846116e8565b6000806000806000606086880312156119cd57600080fd5b85356001600160401b038111156119e357600080fd5b6119ef888289016116f3565b955095505060208601356001600160401b03811115611a0d57600080fd5b611a19888289016116f3565b93509350506040611a2c88828901611783565b9150509295509295909350565b60008060008060008060006080888a031215611a5457600080fd5b87356001600160401b03811115611a6a57600080fd5b611a768a828b016116f3565b975097505060208801356001600160401b03811115611a9457600080fd5b611aa08a828b016116f3565b95509550506040611ab38a828b01611783565b93505060608801356001600160401b03811115611acf57600080fd5b611adb8a828b016116f3565b925092505092959891949750929550565b60008060408385031215611aff57600080fd5b82356001600160401b03811115611b1557600080fd5b61198685828601611734565b600060208284031215611b3357600080fd5b60006117ac8484611783565b600080600060408486031215611b5457600080fd5b6000611b608686611783565b93505060208401356001600160401b03811115611b7c57600080fd5b611b88868287016116f3565b92509250509250925092565b60008060408385031215611ba757600080fd5b60006119868585611783565b6000611bbf8383611ccb565b9392505050565b611bcf8161212a565b82525050565b611bcf81612108565b611bcf611bea82612108565b612183565b6000611bfa826120f6565b611c0481856120fa565b935083602082028501611c16856120f0565b8060005b85811015611c505784840389528151611c338582611bb3565b9450611c3e836120f0565b60209a909a0199925050600101611c1a565b5091979650505050505050565b611bcf816109e2565b611bcf611c72826109e2565b6109e2565b611bcf81612135565b6000611c8c83856120fa565b9350611c9983858461214b565b611ca283612194565b9093019392505050565b6000611cb88385612103565b9350611cc583858461214b565b50500190565b6000611cd6826120f6565b611ce081856120fa565b9350611cf0818560208601612157565b611ca281612194565b6000611d04826120f6565b611d0e8185612103565b9350611d1e818560208601612157565b9290920192915050565b6000611d35601c83612103565b7f19457468657265756d205369676e6564204d6573736167653a0a3332000000008152601c0192915050565b6000611d6e6011836120fa565b70494e56414c49445f5349474e415455524560781b815260200192915050565b6000611d9b601d836120fa565b7f5245534f4c5645525f44455441434845445f46524f4d5f444f4d41494e000000815260200192915050565b6000611dd4601f836120fa565b7f53454e4445525f49535f4e4f545f415050524f5645445f4f525f4f574e455200815260200192915050565b6000611e0d6014836120fa565b7329a2a72222a92fa4a9afa727aa2fa6a4a72a22a960611b815260200192915050565b611bcf81612124565b6000611e458286611c66565b602082019150611e558285611bde565b601482019150611e658284611c66565b506020019392505050565b60006117ac828486611cac565b6000611bbf8284611cf9565b6000611e9482611d28565b9150611ea08284611c66565b50602001919050565b6020810161151b8284611bd5565b6020810161151b8284611bc6565b60408101611ed38285611bc6565b611bbf6020830184611c5d565b60408101611ed38285611bd5565b60208082528101611bbf8184611bef565b60408082528101611f108185611bef565b905081810360208301526117ac8184611bef565b60608082528101611f358186611bef565b90508181036020830152611f498185611bef565b90506117ac6040830184611c5d565b60808101611f668287611c5d565b611f736020830186611e30565b611f806040830185611c5d565b611f8d6060830184611c5d565b95945050505050565b60608082528101611fa8818789611c80565b90508181036020830152611fbd818587611c80565b9050611fcc6040830184611c5d565b9695505050505050565b60208082528101611bbf8184611ccb565b60408082528101611ff88185611ccb565b905081810360208301526117ac8184611ccb565b6020808252810161151b81611d61565b6020808252810161151b81611d8e565b6020808252810161151b81611dc7565b6020808252810161151b81611e00565b6020810161151b8284611c5d565b604081016120688285611c5d565b611bbf6020830184611c77565b60408101611ed38285611c5d565b6040518181016001600160401b03811182821017156120a157600080fd5b604052919050565b60006001600160401b038211156120bf57600080fd5b5060209081020190565b60006001600160401b038211156120df57600080fd5b506020601f91909101601f19160190565b60200190565b5190565b90815260200190565b919050565b600061151b82612118565b151590565b6001600160a01b031690565b60ff1690565b600061151b82612140565b600061151b826109e2565b600061151b82612108565b82818337506000910152565b60005b8381101561217257818101518382015260200161215a565b83811115610aea5750506000910152565b600061151b82600061151b8261219e565b601f01601f191690565b60601b90565b6121ad81612108565b81146121b857600080fd5b50565b6121ad81612113565b6121ad816109e256fea365627a7a723158207a1d8dfd286d14fcafd1812a4c44813691ac746a5a23fa711ac5551c9509654d6c6578706572696d656e74616cf564736f6c634300050c0040","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x5":"0x4a3c194eb88966178bfdd81744dddafed611b830"}},"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa":{"nonce":93,"balance":"0x35aac60bbae01d424b","code":"0x","storage":{}}},"best_block_number":"0x5d"} \ No newline at end of file From e9c961bc2db3751bae9e758689e3eb6e8ab02017 Mon Sep 17 00:00:00 2001 From: derain Date: Tue, 21 May 2024 21:48:17 +0300 Subject: [PATCH 12/21] [REG-1273] - Rework foundry-cli --- sandbox/anvil-server.ts | 9 +- sandbox/foundry-cli.ts | 221 +++++++++------------------------------- sandbox/state.json | 2 +- 3 files changed, 52 insertions(+), 180 deletions(-) diff --git a/sandbox/anvil-server.ts b/sandbox/anvil-server.ts index 27e39432..0dc0ead2 100644 --- a/sandbox/anvil-server.ts +++ b/sandbox/anvil-server.ts @@ -1,8 +1,7 @@ import { spawn, ChildProcessWithoutNullStreams } from 'child_process'; import debug from 'debug'; import _ from 'lodash'; -import { getAnvilCommand } from './foundry-cli'; -import { run as installFoundry } from './foundry-cli'; +import { installFoundry, getAnvilCommand } from './foundry-cli'; const log = debug('UNS:sandbox'); @@ -50,11 +49,9 @@ export class AnvilServer { public static async launch (options: Partial, inherit = false): Promise { try { - if (!(await getAnvilCommand())) { - throw new Error('Foundry not found'); - } + await getAnvilCommand(); } catch (e) { - if (!(await installFoundry(true))) { + if (!(await installFoundry())) { throw new Error('Failed to install Foundry'); } } diff --git a/sandbox/foundry-cli.ts b/sandbox/foundry-cli.ts index cd4a728b..67e54fc8 100644 --- a/sandbox/foundry-cli.ts +++ b/sandbox/foundry-cli.ts @@ -1,8 +1,6 @@ -import { exec, execSync, spawn } from 'child_process'; - +import { exec, spawn } from 'child_process'; import os from 'os'; import path from 'path'; -import commandExists from 'command-exists'; const FOUNDRYUP_INSTALLER = 'curl -L "https://foundry.paradigm.xyz" | bash'; @@ -11,96 +9,57 @@ const FOUNDRYUP_INSTALLER = 'curl -L "https://foundry.paradigm.xyz" | bash'; * */ export async function getAnvilCommand (): Promise { - try { - return commandExists('anvil'); - } catch (e) { - const cmd = foundryAnvilBinPath(); - await checkCommand(`${cmd} --version`); - return cmd; - } -} - -/** - * @returns the path to the cast path to use, if `cast` is in path then this will be returned - * - */ -export async function getCastCommand (): Promise { - try { - return commandExists('cast'); - } catch (e) { - const cmd = foundryCastBinPath(); - await checkCommand(`${cmd} --version`); - return cmd; + const cmd = foundryAnvilBinPath(); + const commandExists = await checkCommand(`${cmd} --version`); + if (!commandExists) { + throw new Error('Anvil not found'); } + return cmd; } /** - * @returns the path to the forge path to use, if `forge` is in path then this will be returned - * + * Executes `foundryup` */ -export async function getForgeCommand (): Promise { - try { - return commandExists('forge'); - } catch (e) { - const cmd = foundryForgeBinPath(); - await checkCommand(`${cmd} --version`); - return cmd; +export async function installFoundry (): Promise { + const foundryUpPath = foundryUpBinPath(); + const checkCommandCli = `${foundryUpPath} --version`; + const commandExists = await checkCommand(checkCommandCli); + if (!commandExists) { + if (!(await runFoundryInstaller())) { + throw new Error('Failed to install Foundry'); + } } + return checkCommand(checkCommandCli); } /** - * @returns the path to the forge path to use, if `forge` is in path then this will be returned + * Executes the given command * + * @param cmd the command to run + * @return returns true if the command succeeded, false otherwise */ -export function getForgeCommandSync (): string { - if (commandExists.sync('forge')) { - return 'forge'; - } else { - const cmd = foundryForgeBinPath(); - checkCommandSync(`${cmd} --version`); - return cmd; - } -} - -/** - * @returns the path to the foundry directory: `$HOME/.foundry` - */ -export function foundryDir (): string { - return path.join(os.homedir(), '.foundry'); -} - -/** - * @returns the path to the foundry directory that stores the tool binaries: `$HOME/.foundry/bin` - */ -export function foundryBinDir (): string { - return path.join(foundryDir(), 'bin'); -} - -/** - * @returns the path to the anvil binary in the foundry dir: `$HOME/.foundry/bin/anvil` - */ -export function foundryAnvilBinPath (): string { - return path.join(foundryDir(), 'anvil'); -} - -/** - * @returns the path to the cast binary in the foundry dir: `$HOME/.foundry/bin/cast` - */ -export function foundryCastBinPath (): string { - return path.join(foundryDir(), 'cast'); -} - -/** - * @returns the path to the anvil forge in the foundry dir: `$HOME/.foundry/bin/forge` - */ -export function foundryForgeBinPath (): string { - return path.join(foundryDir(), 'forge'); +async function checkCommand (cmd: string): Promise { + return new Promise((resolve) => { + const process = exec(cmd); + process.on('exit', (code) => { + if (code !== 0) { + console.error( + 'Command failed. Is Foundry not installed? Consider installing ' + + 'via `curl -L https://foundry.paradigm.xyz | bash` and then running' + + ' `foundryup` on a new terminal. ' + + 'For more context, check the installation instructions ' + + 'in the book: https://book.getfoundry.sh/getting-started/installation.html.', + ); + } + resolve(code === 0); + }); + }); } /** * Installs foundryup via subprocess */ -export async function selfInstall (): Promise { +async function runFoundryInstaller (): Promise { return new Promise((resolve) => { const process = spawn('/bin/bash', ['-c', FOUNDRYUP_INSTALLER], { stdio: 'inherit', @@ -112,113 +71,29 @@ export async function selfInstall (): Promise { } /** - * Optional target location `foundryup` accepts - */ -export interface FoundryupTarget { - branch?: string; - commit?: string; - repo?: string; - path?: string; -} - -/** - * Executes `foundryup` - * - * @param install whether to install `foundryup` itself - * @param _target additional `foundryup` params - */ -export async function run (install = true, _target: FoundryupTarget = {}): Promise { - if (install) { - if (!(await checkFoundryUp())) { - if (!(await selfInstall())) { - return false; - } - } - } - return checkCommand('foundryup'); -} - -/** - * Checks if foundryup exists - * - * @return true if `foundryup` exists - */ -export async function checkFoundryUp (): Promise { - return checkCommand('foundryup --version'); -} - -/** - * Checks if anvil exists - * - * @return true if `anvil` exists - */ -export async function checkAnvil (): Promise { - return checkCommand('anvil --version'); -} - -/** - * Checks if cast exists - * - * @return true if `cast` exists + * @returns the path to the foundry directory: `$HOME/.foundry` */ -export async function checkCast (): Promise { - return checkCommand('cast --version'); +function foundryDir (): string { + return path.join(os.homedir(), '.foundry'); } /** - * Checks if cast exists - * - * @return true if `cast` exists + * @returns the path to the foundry directory that stores the tool binaries: `$HOME/.foundry/bin` */ -export async function checkForge (): Promise { - return checkCommand('forge --version'); +function foundryBinDir (): string { + return path.join(foundryDir(), 'bin'); } /** - * Executes the given command - * - * @param cmd the command to run - * @return returns true if the command succeeded, false otherwise + * @returns the path to the anvil binary in the foundry dir: `$HOME/.foundry/bin/anvil` */ -async function checkCommand (cmd: string): Promise { - return new Promise((resolve) => { - const process = exec(cmd); - process.on('exit', (code) => { - if (code !== 0) { - console.error( - 'Command failed. Is Foundry not installed? Consider installing ' + - 'via `curl -L https://foundry.paradigm.xyz | bash` and then running' + - ' `foundryup` on a new terminal. ' + - 'For more context, check the installation instructions ' + - 'in the book: https://book.getfoundry.sh/getting-started/installation.html.', - ); - } - resolve(code === 0); - }); - }); +function foundryAnvilBinPath (): string { + return path.join(foundryBinDir(), 'anvil'); } /** - * Executes the given command - * - * @param cmd the command to run - * @return returns true if the command succeeded, false otherwise + * @returns the path to the cast binary in the foundry dir: `$HOME/.foundry/bin/cast` */ -function checkCommandSync (cmd: string): boolean { - try { - execSync(cmd); - return true; - } catch (error) { - const status = (error as any).status === 0; - if (!status) { - console.error( - 'Command failed. Is Foundry not installed? ' + - 'Consider installing via `curl -L https://foundry.paradigm.xyz | bash` ' + - 'and then running `foundryup` on a new terminal. ' + - 'For more context, check the installation instructions ' + - 'in the book: https://book.getfoundry.sh/getting-started/installation.html.', - ); - } - return status; - } +function foundryUpBinPath (): string { + return path.join(foundryBinDir(), 'foundryup'); } diff --git a/sandbox/state.json b/sandbox/state.json index eb0a8818..f30eab99 100644 --- a/sandbox/state.json +++ b/sandbox/state.json @@ -1 +1 @@ -{"block":{"number":"0x5d","coinbase":"0x0000000000000000000000000000000000000000","timestamp":"0x664ce706","gas_limit":"0x6691b7","basefee":"0x1b818","difficulty":"0x0","prevrandao":"0x0000000000000000000000000000000000000000000000000000000000000000","blob_excess_gas_and_price":{"excess_blob_gas":0,"blob_gasprice":1}},"accounts":{"0x0000000000000000000000000000000000000000":{"nonce":0,"balance":"0xc968d22370860","code":"0x","storage":{}},"0x00e39a5004299871ab3b00fed5a39a715f181d02":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x66":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x67":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xd178b720229c39de617846f84cf9c8d32a63a23d","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0x0458f653495fb8d9bd0e7df468c2bf76d26c7bd9":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f7e83aee1461002d575b5f80fd5b61004061003b3660046105ba565b610054565b604051901515815260200160405180910390f35b5f601482146100a95760405162461bcd60e51b815260206004820152601860248201527f496e76616c696420736861312068617368206c656e6774680000000000000000604482015260640160405180910390fd5b5f6100ec5f85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101599050565b6bffffffffffffffffffffffff191690505f61013c87878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061018a92505050565b6bffffffffffffffffffffffff1916919091149695505050505050565b81515f90610168836014610621565b1115610172575f80fd5b5001602001516bffffffffffffffffffffffff191690565b5f6040518251602084019350604067ffffffffffffffc0600183011601600982820310600181036101bc576040820191505b50776745230100efcdab890098badcfe001032547600c3d2e1f061020d565b5f8383101561020657508082015192829003926020841015610206575f1960208590036101000a0119165b9392505050565b5f5b82811015610514576102228482896101db565b85526102328460208301896101db565b60208601526040818503106001810361024e5760808286038701535b506040830381146001810361026b57602086018051600887021790525b5060405b60808110156102f357858101603f19810151603719820151601f19830151600b198401516002911891909218189081027ffffffffefffffffefffffffefffffffefffffffefffffffefffffffefffffffe1663800000009091047c010000000100000001000000010000000100000001000000010000000116179052600c0161026f565b5060805b61014081101561037c57858101607f19810151606f19820151603f198301516017198401516004911891909218189081027ffffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffc1663400000009091047c0300000003000000030000000300000003000000030000000300000003161790526018016102f7565b50815f805f5b60508110156104ea576014810480156103b257600181146103d957600281146103fe576003811461042857610449565b600160281b8504600160501b86048118600160781b870416189350635a8279999250610449565b600160281b8504600160781b8604600160501b870418189350636ed9eba19250610449565b600160501b8504600160781b8604818117600160281b8804169116179350638f1bbcdc9250610449565b600160281b8504600160781b8604600160501b87041818935063ca62c1d692505b50601f600160bb1b8504168063ffffffe06001609b1b87041617905080840190508063ffffffff8616019050808301905080600160e01b600484028c015104019050600160a01b8102600160281b860417945050600160501b633fffffff600160521b86041663c00000006604000000000000870416170277ffffffff00ffffffff000000000000ffffffff00ffffffff8516179350600181019050610382565b5050509190910177ffffffff00ffffffff00ffffffff00ffffffff00ffffffff169060400161020f565b50600160601b63ffffffff821667ffffffff000000006101008404166bffffffff00000000000000006201000085041663ffffffff60601b630100000086041663ffffffff60801b6401000000008704161717171702945050505050919050565b5f8083601f840112610585575f80fd5b50813567ffffffffffffffff81111561059c575f80fd5b6020830191508360208285010111156105b3575f80fd5b9250929050565b5f805f80604085870312156105cd575f80fd5b843567ffffffffffffffff808211156105e4575f80fd5b6105f088838901610575565b90965094506020870135915080821115610608575f80fd5b5061061587828801610575565b95989497509550505050565b8082018082111561064057634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x06e2822b8856749ed179c77140dbc5f5a27410a4":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063de8f50a11461002d575b5f80fd5b61004061003b36600461051c565b610054565b604051901515815260200160405180910390f35b5f6060805f61009c60048b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506102e79050565b60ff1690508015610166576100f060058261ffff168c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b925061015f6101008260056105c3565b61ffff908116906005906101169085168d6105e5565b61012091906105e5565b8c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b915061021d565b6101a960058b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250929392505061038b9050565b90506101f460078261ffff168c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b925061021a6102048260076105c3565b61ffff908116906007906101169085168d6105e5565b91505b5f606061026084868a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152506103b192505050565b90925090508180156102d757506102856020825161027e91906105e5565b82906103cb565b60028b8b6040516102979291906105f8565b602060405180830381855afa1580156102b2573d5f803e3d5ffd5b5050506040513d601f19601f820116820180604052508101906102d59190610607565b145b9c9b505050505050505050505050565b5f8282815181106102fa576102fa61061e565b016020015160f81c90505b92915050565b825160609061031a8385610632565b1115610324575f80fd5b5f8267ffffffffffffffff81111561033e5761033e610645565b6040519080825280601f01601f191660200182016040528015610368576020820181803683370190505b509050602080820190868601016103808282876103ed565b509095945050505050565b81515f9061039a836002610632565b11156103a4575f80fd5b50016002015161ffff1690565b5f60606103bf838587610442565b91509150935093915050565b81515f906103da836020610632565b11156103e4575f80fd5b50016020015190565b602081106104255781518352610404602084610632565b9250610411602083610632565b915061041e6020826105e5565b90506103ed565b905182516020929092036101000a5f190180199091169116179052565b5f60605f85518551855188888860405160200161046496959493929190610686565b6040516020818303038152906040529050835167ffffffffffffffff81111561048f5761048f610645565b6040519080825280601f01601f1916602001820160405280156104b9576020820181803683370190505b50915083516020830182516020840160055afa925050935093915050565b5f8083601f8401126104e7575f80fd5b50813567ffffffffffffffff8111156104fe575f80fd5b602083019150836020828501011115610515575f80fd5b9250929050565b5f805f805f8060608789031215610531575f80fd5b863567ffffffffffffffff80821115610548575f80fd5b6105548a838b016104d7565b9098509650602089013591508082111561056c575f80fd5b6105788a838b016104d7565b90965094506040890135915080821115610590575f80fd5b5061059d89828a016104d7565b979a9699509497509295939492505050565b634e487b7160e01b5f52601160045260245ffd5b61ffff8181168382160190808211156105de576105de6105af565b5092915050565b81810381811115610305576103056105af565b818382375f9101908152919050565b5f60208284031215610617575f80fd5b5051919050565b634e487b7160e01b5f52603260045260245ffd5b80820180821115610305576103056105af565b634e487b7160e01b5f52604160045260245ffd5b5f81515f5b81811015610678576020818501810151868301520161065e565b505f93019283525090919050565b8681528560208201528460408201525f6106b56106af6106a96060850188610659565b86610659565b84610659565b9897505050505050505056fea164736f6c6343000818000a","storage":{}},"0x0712e8e819712c3bfdb098ce51c87a4ac0296fd8":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x0930ffb2c192b0c9a9dd2372cf7f2845ef39cbb6":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x65":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x66":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xbe92182cab5b84fd18b34881a0c32771e84f5b8b","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c8121905":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x107733fed96c4cd390c944a31f5425a7fb98ae5e":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x65":"0x556e73746f707061626c6520446f6d61696e7300000000000000000000000026","0x66":"0x5544000000000000000000000000000000000000000000000000000000000004","0x133":"0x68747470733a2f2f6578616d706c652e636f6d2f000000000000000000000028","0x134":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x9c74364589a7bce52d7a232f90c98b979577d9ab711dbe7e9fb985471178bff":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf29a433ca043c2d5f13825944af9d019209f338df87172c6b8012dce3044881":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf319a2ef598111826b455194189a27454a0286226eb066e1116f605e0373b37":"0x0","0x1257bbdf5bed452b3eda1d974a9839972d4d54d7fb1cde6a652e653346cc29b8":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x12c033f2252861b1bd15e9b5c71ef1cf26ca53de15eabc3b49e06f596e8755ec":"0x0","0x1348552952ac59b1c2522e84f684e36775420b449eddcdbd28f217183ed58b09":"0x0","0x149026695ebdd2bd6be0a7006aec5d10ddffbe46be181e4468980ea83c004fe9":"0x0","0x14c854a78d51371251661a408306c75d2515b5d509b295a58205e48267082bdc":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x18f06622a1abedc7bb78fcc98b2375188aef6c03b9247beee780b0b095d60285":"0x0","0x201ef5e312d372e2aeac4cf173b46ad2985127c7381f4f9acae5ebbd3a5e3861":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x2215c0abaeffcb5feae8a439b3185f8fba5dd6d97529a56c7609cd41fafdf5f1":"0x1","0x23513200931f98893f46373666c13964c7a821c5b40da7951b921629acf02735":"0x0","0x23f87654b79c6db28828f317e47d0c8deb9eaa2ea4e213fef901836c85036bf3":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x2e4566d865f2e159531492d7643e25e502917762b29082282ab9dfee8fbf54c7":"0x0","0x31fc31c15d389c5908095d314bb8b258352d51e18ac8a2f7fe15f3a0af519145":"0x0","0x3467fdbb447be3074b11c625b56e54d7ab44f3804bef205b07dd436d707d06d5":"0x0","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x62b11ad5f582a5c5d378fb310125b030042554f1","0x3cd80e7291e5f6dffa9af6eb70d47145a8fdd40acb8d09dfd0cf374e8c239b37":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x3f86c4990e663ffa5011ed38824fca68af7e0592eb22f41aebdec0ce84ee672e":"0x0","0x406aa3bf31381c8a323679af48792dfa2e7aa09dd0eb919e307dc4bf84216ff6":"0x0","0x47ce17acd30cc86e021ac7b23be8138ea767f6da503362aac5888a0679270eed":"0x0","0x4a7983c36f64e6df4d467cf706c128c273d30c24bbb172e251a5740624cc0bd3":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x4c42d98041cda7cb7d56b5d04731bd436366eb9f05c30f43671f1d1e2c0b0fa4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x55926eed7087c8cbfa1492f6d367f5e4c14c8d8cd59e2918c37184091369efb1":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x5b20f40cb5e9e634a90df9a72b516c11cc52281a4d1b7b67e672e2fe544ff22f":"0x0","0x6dac3e1cfae338e10c9c2f5000f6256d09afa83708761042001cea734f470ac1":"0x0","0x6defc32a546a6fb1b745bd1bb04e27085e94f01d7ef79587aee2c80853c43a53":"0x0","0x760b245be050a725a39b4fc089ad474a5fd40efa17101e112d30195d590779b4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x7bee59fcac76da32acb23def57eaaf959a4372a4fc180978fbd54f7a4c4b2f3d":"0x0","0x804aee9448e0b539a009ee7c6dd57e686c72e7b182e9622a42922b245a97e61e":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x825f7f8567cfd669c3beab41edff07d4aa51436123deeb0d3623b6a8fdec893c":"0x0","0x8717a3236e6a948df94444f035834fa8f7c5ee663a29f3580f3ef43ab051d6bd":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8a34e37883baf84417a33bb02eec8d1e43e363f617029800ff166614df3f112f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8bd1acdc45b63f1edf5db0b1444f1c4a6f82bf0a5a0a7231c2dd7b76a2b1e35c":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87":"0x0","0x8ed4e9fbdf86edd9f3eb1c8d4fbfc53a2eb863faf4cf5e0d2b307c0b33030091":"0x0","0x8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x90d72780b77edcd0c8daffbac0b21264679e851b734cb090e2b144eb3a28bb98":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x93fc964857984ff804a65eaceac4062669948f2b651ddc6b71373ad142bf45e0":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x9770fa903e700367e0306ab8fd70a2bb4f049417d341a2f8a2409d8d6a2218d1":"0x0","0xb1016fe231c2ed9dba8c95d2658191823b4b9ffa61a7aea530802c6b2ff27c41":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xbe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafe":"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f","0xbe7c5c707db1c91bd2c84880bb1e177b65886d295d9a62df8edfe38f8066cc81":"0x0","0xc3cd64a46de7309013ddb93a16a3024c2e46fb931e4744edf2610fb119f716f5":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xc563f9d3175978a619bae1a8175d3ea4be91d3890345085c5eb16f83b678a3d9":"0x0","0xc5b5cdb7b939f9d661f58f28c37e10cf71d45dacfea2581c88ae4a17aaf55e6e":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xd386775169d9e0716e9b5b08561984726edaa9febd0ca8e5468ecffa112078c7":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xe3b736cdcc6a09d7e3a05ffb63b11f11c91958d861443c3409d3fd863e8217bd":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xe3e5b75e3dff543bfbfe5b494e4e3243b4d9d0b3d794725cea46c28fe6be50e4":"0x0","0xe7d61626cac95282d296ee7ab5958e3e72e32eb959a7cab1d37c0f9d6d69c18a":"0x1a","0xeca5e1ccaa645ce2be97a867a1f8aeeb63ea833aeb009c0df0553b42b30c683f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf08305746cdba1d0eaa65036694838a3db122973267ffc57739d605c320c680a":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf0d566acc03395f71b37890f455d51d93197adf754ea72aba21427dc66b437df":"0x0","0xf230898ba4fe40c52f958d03013d995f822e25a5d4fae43bbdc6e92623cea0bd":"0x0","0xf245a9962043f44f4af98f9952a3bd29d91eb05418e4bb567b9de8f27e239b13":"0x0","0xf2a19ade13962e8675aecf2fbe51913877912f9e48e899806b6e06e82f9a980f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf2fab50b0b53245ddfa1bcfcdf4c73e209d6921dad704d173cf04cbbadc8e346":"0x0","0xfa6f3ee10d719cb3457d10c539ff3d77b8e56852ea62f68b2f9f85ad691ed6b4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xfff3abb219acc6ef4eed6e93a5682023229370196f352cdf3a71a88d881e3487":"0x0"}},"0x11dd97b7ca847dfb6504e61b7b9eb30f55e554a0":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a424740014610090575b600080fd5b610059610054366004610ba9565b6100b3565b6040516100669190610c98565b60405180910390f35b61008261007d366004610cab565b6101ce565b604051908152602001610066565b6100a361009e366004610ba9565b610332565b6040519015158152602001610066565b606060005a6001546040805163b3f9e4cb60e01b81529088013560048201529192506000916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561010a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061012e9190610cd9565b90506101c26101406020880188610cf6565b8260408901358561015460608c018c610d13565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8f018190048102820181019092528d815292508d91508c90819084018382808284376000920191909152506103fb92505050565b925050505b9392505050565b60025460015460405163b3f9e4cb60e01b8152600481018490526000926001600160a01b0390811692169063b3f9e4cb90602401602060405180830381865afa92505050801561023b575060408051601f3d908101601f1916820190925261023891810190610cd9565b60015b156102435790505b6001600160a01b0381163b156102c557604051636ccbae5f60e01b81526004810184905281906001600160a01b03821690636ccbae5f90602401602060405180830381865afa9250505080156102b6575060408051601f3d908101601f191682019092526102b391810190610d5a565b60015b156102c357949350505050565b505b600254604051636ccbae5f60e01b8152600481018590526001600160a01b0390911690636ccbae5f90602401602060405180830381865afa15801561030e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101c79190610d5a565b6001546040805163b3f9e4cb60e01b815290850135600482015260009182916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa158015610383573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103a79190610cd9565b90506103f26103b586610e0b565b8286868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506104d392505050565b95945050505050565b6060600080876001600160a01b0316866104178b8a898961051f565b6040516104249190610eb5565b60006040518083038160008787f1925050503d8060008114610462576040519150601f19603f3d011682016040523d82523d6000602084013e610467565b606091505b509092509050610478603f87610ed1565b5a1161048657610486610ef3565b6104c682826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506105d4565b9998505050505050505050565b60006104e084848461060d565b8015610514575060608401516020908101516001600160e01b031990811660009081529182905260409091205460e01b1615155b949350505050565b50565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036105b15760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526105c982828661074c565b979650505050505050565b606083156105e35750816101c7565b8251156105f35782518084602001fd5b8160405162461bcd60e51b81526004016105a89190610c98565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015610654573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106789190610d5a565b905060006107268660600151805190602001208688602001516040516020016106c69392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156101c2575085516101c2906001600160a01b03168286610935565b60606001600160e01b0319841663b87abc1160e01b036107cd5760008380602001905181019061077c9190610d5a565b9050848184604051602401610792929190610f09565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915291506101c79050565b6001600160e01b0319841663c597407360e01b03610859576000806000858060200190518101906107fe9190610f67565b925092509250868383838860405160240161081c9493929190610fd4565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293506101c792505050565b6001600160e01b031984166311ed383160e31b036108a85760008060008580602001905181019061088a91906110a6565b925092509250868383838860405160240161081c9493929190611157565b6001600160e01b031984166328d55f9b60e21b036101c7576000806000858060200190518101906108d991906110a6565b92509250925086838383886040516024016108f79493929190611157565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293505050509392505050565b60008060006109448585610a77565b9092509050600081600481111561095d5761095d61117c565b14801561097b5750856001600160a01b0316826001600160a01b0316145b1561098b576001925050506101c7565b600080876001600160a01b0316631626ba7e60e01b88886040516024016109b3929190610f09565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516109f19190610eb5565b600060405180830381855afa9150503d8060008114610a2c576040519150601f19603f3d011682016040523d82523d6000602084013e610a31565b606091505b5091509150818015610a44575080516020145b8015610a6b57508051630b135d3f60e11b90610a699083016020908101908401610d5a565b145b98975050505050505050565b6000808251604103610aad5760208301516040840151606085015160001a610aa187828585610abc565b94509450505050610ab5565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610af35750600090506003610ba0565b8460ff16601b14158015610b0b57508460ff16601c14155b15610b1c5750600090506004610ba0565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610b70573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610b9957600060019250925050610ba0565b9150600090505b94509492505050565b600080600060408486031215610bbe57600080fd5b833567ffffffffffffffff80821115610bd657600080fd5b9085019060808288031215610bea57600080fd5b90935060208501359080821115610c0057600080fd5b818601915086601f830112610c1457600080fd5b813581811115610c2357600080fd5b876020828501011115610c3557600080fd5b6020830194508093505050509250925092565b60005b83811015610c63578181015183820152602001610c4b565b50506000910152565b60008151808452610c84816020860160208601610c48565b601f01601f19169290920160200192915050565b6020815260006101c76020830184610c6c565b600060208284031215610cbd57600080fd5b5035919050565b6001600160a01b038116811461051c57600080fd5b600060208284031215610ceb57600080fd5b81516101c781610cc4565b600060208284031215610d0857600080fd5b81356101c781610cc4565b6000808335601e19843603018112610d2a57600080fd5b83018035915067ffffffffffffffff821115610d4557600080fd5b602001915036819003821315610ab557600080fd5b600060208284031215610d6c57600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610dac57610dac610d73565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ddb57610ddb610d73565b604052919050565b600067ffffffffffffffff821115610dfd57610dfd610d73565b50601f01601f191660200190565b600060808236031215610e1d57600080fd5b610e25610d89565b8235610e3081610cc4565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610e6057600080fd5b840136601f820112610e7157600080fd5b8035610e84610e7f82610de3565b610db2565b8181523684838501011115610e9857600080fd5b818484018583013760009181019093015250606082015292915050565b60008251610ec7818460208701610c48565b9190910192915050565b600082610eee57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b8281526040602082015260006105146040830184610c6c565b600082601f830112610f3357600080fd5b8151610f41610e7f82610de3565b818152846020838601011115610f5657600080fd5b610514826020830160208701610c48565b600080600060608486031215610f7c57600080fd5b835167ffffffffffffffff80821115610f9457600080fd5b610fa087838801610f22565b94506020860151915080821115610fb657600080fd5b50610fc386828701610f22565b925050604084015190509250925092565b608081526000610fe76080830187610c6c565b8281036020840152610ff98187610c6c565b905084604084015282810360608401526105c98185610c6c565b600082601f83011261102457600080fd5b8151602067ffffffffffffffff8083111561104157611041610d73565b8260051b611050838201610db2565b938452858101830193838101908886111561106a57600080fd5b84880192505b85831015610a6b578251848111156110885760008081fd5b6110968a87838c0101610f22565b8352509184019190840190611070565b6000806000606084860312156110bb57600080fd5b835167ffffffffffffffff808211156110d357600080fd5b6110df87838801611013565b945060208601519150808211156110f557600080fd5b50610fc386828701611013565b600081518084526020808501808196508360051b8101915082860160005b8581101561114a578284038952611138848351610c6c565b98850198935090840190600101611120565b5091979650505050505050565b60808152600061116a6080830187611102565b8281036020840152610ff98187611102565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x2":"0xf8c26340c1eaea6c7ff1760b25005e1306953572","0x1e74f978992d7d64ddac400bd4aae9eefd60fa0b8456650273f5f50148803323":"0xa3557e6c","0x23c84c23be8f829809d1b1502c647c6c59fb6b2345b163a2ca3e7d4f9855975c":"0x8f69c188","0xa0286316c9d3cb00f4f54a9f1096cefaa1748bb5a5395e7fa1563568ebb3e6c3":"0xb87abc11","0xdc138de224807be243ee38fe9e746cce5d437a256b87be90b80240e0811ad043":"0xc5974073"}},"0x145908bbcfc7b258e4d4d9a586f6e3249ae80216":{"nonce":1,"balance":"0x0","code":"0x3d5c","storage":{}},"0x17cda4e23f7237277952e075b1c48467aabfacc0":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c806368f9dab21461002d575b5f80fd5b61004061003b36600461088b565b610052565b60405190815260200160405180910390f35b5f61006f6040518060400160405280606081526020015f81525090565b61008e61007c858861090d565b61008790601061090d565b82906101d1565b506100d085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250859392505061023a9050565b5061011287878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250859392505061023a9050565b505f610120825f0151610266565b905083156101bc5760408051808201909152606081525f602090910181905282515261014c825f610650565b5061018e88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250869392505061023a9050565b505f5b848110156101ba576101a4835f8461067f565b5082516101b090610266565b9150600101610191565b505b6001600160601b031916979650505050505050565b60408051808201909152606081525f60208201526101f0602083610920565b1561021857610200602083610920565b61020b90602061093f565b610215908361090d565b91505b506020808301829052604080518085525f815283019091019052815b92915050565b60408051808201909152606081525f602082015261025f83845f0151518485516106b2565b9392505050565b5f6040518251602084019350604067ffffffffffffffc060018301160160098282031060018103610298576040820191505b50776745230100efcdab890098badcfe001032547600c3d2e1f06102e8565b5f8383101561025f5750808201519282900392602084101561025f575f1960208590036101000a0119169392505050565b5f5b828110156105ef576102fd8482896102b7565b855261030d8460208301896102b7565b6020860152604081850310600181036103295760808286038701535b506040830381146001810361034657602086018051600887021790525b5060405b60808110156103ce57858101603f19810151603719820151601f19830151600b198401516002911891909218189081027ffffffffefffffffefffffffefffffffefffffffefffffffefffffffefffffffe1663800000009091047c010000000100000001000000010000000100000001000000010000000116179052600c0161034a565b5060805b61014081101561045757858101607f19810151606f19820151603f198301516017198401516004911891909218189081027ffffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffc1663400000009091047c0300000003000000030000000300000003000000030000000300000003161790526018016103d2565b50815f805f5b60508110156105c55760148104801561048d57600181146104b457600281146104d9576003811461050357610524565b600160281b8504600160501b86048118600160781b870416189350635a8279999250610524565b600160281b8504600160781b8604600160501b870418189350636ed9eba19250610524565b600160501b8504600160781b8604818117600160281b8804169116179350638f1bbcdc9250610524565b600160281b8504600160781b8604600160501b87041818935063ca62c1d692505b50601f600160bb1b8504168063ffffffe06001609b1b87041617905080840190508063ffffffff8616019050808301905080600160e01b600484028c015104019050600160a01b8102600160281b860417945050600160501b633fffffff600160521b86041663c00000006604000000000000870416170277ffffffff00ffffffff000000000000ffffffff00ffffffff851617935060018101905061045d565b5050509190910177ffffffff00ffffffff00ffffffff00ffffffff00ffffffff16906040016102ea565b50600160601b63ffffffff821667ffffffff000000006101008404166bffffffff00000000000000006201000085041663ffffffff60601b630100000086041663ffffffff60801b6401000000008704161717171702945050505050919050565b60408051808201909152606081525f602082015282515161025f9084906001600160601b031985166014610798565b60408051808201909152606081525f60208201526106aa84846001600160601b031985166014610798565b949350505050565b60408051808201909152606081525f602082015282518211156106d3575f80fd5b60208501516106e2838661090d565b1115610715576107158561070587602001518786610700919061090d565b610813565b610710906002610952565b610829565b5f808651805187602083010193508088870111156107335787860182525b505050602084015b60208410610773578051825261075260208361090d565b915061075f60208261090d565b905061076c60208561093f565b935061073b565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b60408051808201909152606081525f602082015260208501516107bb858461090d565b11156107cf576107cf85610705868561090d565b5f6001836101000a0390508260200360080284901c93508551838682010185831982511617815250805184870111156108085783860181525b509495945050505050565b5f81831115610823575081610234565b50919050565b815161083583836101d1565b50610840838261023a565b50505050565b5f8083601f840112610856575f80fd5b50813567ffffffffffffffff81111561086d575f80fd5b602083019150836020828501011115610884575f80fd5b9250929050565b5f805f805f6060868803121561089f575f80fd5b853567ffffffffffffffff808211156108b6575f80fd5b6108c289838a01610846565b909750955060208801359150808211156108da575f80fd5b506108e788828901610846565b96999598509660400135949350505050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610234576102346108f9565b5f8261093a57634e487b7160e01b5f52601260045260245ffd5b500690565b81810381811115610234576102346108f9565b8082028115828204841417610234576102346108f956fea164736f6c6343000818000a","storage":{}},"0x19356cc2300833e690088a5a09a2044a3cc2a1e2":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x229c56b7805ab5935a883207f6a6bd5847e65aee":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106102ae5760003560e01c8063906cecc111610175578063b9998a24116100dc578063d547741f11610095578063f2fde38b1161006f578063f2fde38b14610892578063f5243bc4146108b2578063f940e385146108d2578063ffa1ad74146108f257600080fd5b8063d547741f1461083f578063d7db74c71461085f578063ec5273891461087257600080fd5b8063b9998a241461077d578063cc2a9a5b1461079d578063cc2c3fc4146107bd578063ceeb4f50146107dd578063d1f5692c146107fd578063d53913931461081d57600080fd5b8063a3a3f7f61161012e578063a3a3f7f614610690578063a3f4df7e146106b0578063a849d65c146106fd578063aa271e1a1461071d578063b0aa98c71461073d578063b3ab15fb1461075d57600080fd5b8063906cecc1146105e657806391d1485414610606578063983b2d5614610626578063986502751461064657806399e0dd7c1461065b578063a217fddf1461067b57600080fd5b80635b6fa8db11610219578063715018a6116101d2578063715018a61461054b57806371e2a6571461056057806377a2a5891461058057806381c81d35146105a05780638456cb59146105b35780638da5cb5b146105c857600080fd5b80635b6fa8db146104a35780635c975abb146104c35780635cd7e3b3146104d85780635e22cd86146104f85780635fc1964f14610518578063634486da1461053857600080fd5b80633092afd51161026b5780633092afd5146103a857806336568abe146103c85780633f41b614146103e85780633f4ba83a1461042057806351cff8d914610435578063572b6c051461045557600080fd5b806301ffc9a7146102b35780631edb948e146102e857806320c5429b1461030a578063248a9ca31461032a578063268b15ed146103685780632f2ff15d14610388575b600080fd5b3480156102bf57600080fd5b506102d36102ce366004613dc4565b610923565b60405190151581526020015b60405180910390f35b3480156102f457600080fd5b50610308610303366004613e13565b61095a565b005b34801561031657600080fd5b50610308610325366004613e3f565b610b03565b34801561033657600080fd5b5061035a610345366004613e3f565b60009081526097602052604090206001015490565b6040519081526020016102df565b34801561037457600080fd5b50610308610383366004613e99565b610c26565b34801561039457600080fd5b506103086103a3366004613f04565b610cb9565b3480156103b457600080fd5b506103086103c3366004613f34565b610ce3565b3480156103d457600080fd5b506103086103e3366004613f04565b610cf7565b3480156103f457600080fd5b5060c954610408906001600160a01b031681565b6040516001600160a01b0390911681526020016102df565b34801561042c57600080fd5b50610308610d85565b34801561044157600080fd5b50610308610450366004613f34565b610d97565b34801561046157600080fd5b506102d3610470366004613f34565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546001600160a01b0390811691161490565b3480156104af57600080fd5b5060cc54610408906001600160a01b031681565b3480156104cf57600080fd5b506102d3610e37565b3480156104e457600080fd5b506103086104f3366004613fa3565b610e4d565b34801561050457600080fd5b50610308610513366004614062565b6110b1565b34801561052457600080fd5b5061030861053336600461419c565b6112f6565b610308610546366004613f34565b61133e565b34801561055757600080fd5b50610308611401565b34801561056c57600080fd5b5061030861057b36600461419c565b611413565b34801561058c57600080fd5b5060ce54610408906001600160a01b031681565b6103086105ae366004613f34565b61145b565b3480156105bf57600080fd5b506103086114d8565b3480156105d457600080fd5b506033546001600160a01b0316610408565b3480156105f257600080fd5b5061030861060136600461423a565b6114e8565b34801561061257600080fd5b506102d3610621366004613f04565b61156e565b34801561063257600080fd5b50610308610641366004613f34565b611599565b34801561065257600080fd5b506103086115aa565b34801561066757600080fd5b50610308610676366004614295565b6115c4565b34801561068757600080fd5b5061035a600081565b34801561069c57600080fd5b506103086106ab3660046142d6565b6116ab565b3480156106bc57600080fd5b506106f0604051806040016040528060148152602001732aa7299d1026b4b73a34b7339026b0b730b3b2b960611b81525081565b6040516102df919061437c565b34801561070957600080fd5b5060cb54610408906001600160a01b031681565b34801561072957600080fd5b506102d3610738366004613f34565b6116f4565b34801561074957600080fd5b506102d3610758366004613e3f565b61170e565b34801561076957600080fd5b50610308610778366004613f34565b61176c565b34801561078957600080fd5b50610308610798366004613f34565b611796565b3480156107a957600080fd5b506103086107b836600461438f565b6117db565b3480156107c957600080fd5b5060ca54610408906001600160a01b031681565b3480156107e957600080fd5b506103086107f8366004614411565b611cd2565b34801561080957600080fd5b506103086108183660046144c6565b611d76565b34801561082957600080fd5b5061035a600080516020614ef483398151915281565b34801561084b57600080fd5b5061030861085a366004613f04565b611e2d565b61030861086d3660046144fb565b611e52565b34801561087e57600080fd5b5061030861088d366004613e3f565b611fe2565b34801561089e57600080fd5b506103086108ad366004613f34565b612054565b3480156108be57600080fd5b506103086108cd3660046145f0565b612070565b3480156108de57600080fd5b506103086108ed366004614708565b612222565b3480156108fe57600080fd5b506106f060405180604001604052806005815260200164302e352e3160d81b81525081565b60006001600160e01b03198216637965db0b60e01b148061095457506301ffc9a760e01b6001600160e01b03198316145b92915050565b61096561073861239e565b61098a5760405162461bcd60e51b815260040161098190614736565b60405180910390fd5b60c95460405163baef73e960e01b8152600481018390526000916001600160a01b03169063baef73e990602401602060405180830381865afa1580156109d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109f8919061476b565b9050806001600160401b0316600003610a235760405162461bcd60e51b815260040161098190614788565b806001600160401b0316836001600160401b031611610a905760405162461bcd60e51b815260206004820152602360248201527f4d696e74696e674d616e616765723a204558504952595f4e4f545f455854454e60448201526211115160ea1b6064820152608401610981565b60c954604051631fb9763760e11b81526001600160401b0385166004820152602481018490526001600160a01b0390911690633f72ec6e906044015b600060405180830381600087803b158015610ae657600080fd5b505af1158015610afa573d6000803e3d6000fd5b50505050505050565b610b0e61073861239e565b610b2a5760405162461bcd60e51b815260040161098190614736565b60c95460405163baef73e960e01b8152600481018390526001600160a01b039091169063baef73e990602401602060405180830381865afa158015610b73573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b97919061476b565b6001600160401b0316600003610bbf5760405162461bcd60e51b815260040161098190614788565b60c954604051637eee288d60e01b8152306004820152602481018390526001600160a01b0390911690637eee288d90604401600060405180830381600087803b158015610c0b57600080fd5b505af1158015610c1f573d6000803e3d6000fd5b5050505050565b8282828080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250610c6993508592508491506123ad565b610c71610e37565b15610c8e5760405162461bcd60e51b8152600401610981906147cb565b6060610afa610c9b61239e565b610cae88610ca98989612584565b6125b0565b8384600060016126c1565b600082815260976020526040902060010154610cd481612c15565b610cde8383612c26565b505050565b610ceb612cad565b610cf481612d26565b50565b610cff61239e565b6001600160a01b0316816001600160a01b031614610d775760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610981565b610d818282612d3e565b5050565b610d8d612cad565b610d95612dc3565b565b610d9f612cad565b6001600160a01b038116610db257600080fd5b60405147906001600160a01b0383169082156108fc029083906000818181858888f19350505050158015610dea573d6000803e3d6000fd5b50604080516001600160a01b03841681526020810183905260008183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a15050565b600080516020614ed48339815191525460ff1690565b610e5786886147f5565b8051600203610e8c57610e6b61073861239e565b610e875760405162461bcd60e51b8152600401610981906148bf565b610fd1565b6000610e9782612e6b565b60c9549092506001600160a01b0316905063430c2081610eb561239e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015610f00573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f249190614903565b80610fb3575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa158015610f7d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fa19190614903565b8015610fb35750610fb361073861239e565b610fcf5760405162461bcd60e51b815260040161098190614920565b505b610fdb87896147f5565b6000600282511015610fff5760405162461bcd60e51b81526004016109819061496f565b6110546110336000846001865161101691906149ca565b81518110611026576110266149dd565b6020026020010151612ea6565b83600081518110611046576110466149dd565b6020026020010151836123ad565b61105c610e37565b156110795760405162461bcd60e51b8152600401610981906147cb565b6110a38b6110878b8d6147f5565b6110918a8c6147f5565b61109b898b6147f5565b6000896126c1565b505050505050505050505050565b6110bb87896147f5565b80516002036110f0576110cf61073861239e565b6110eb5760405162461bcd60e51b8152600401610981906148bf565b611235565b60006110fb82612e6b565b60c9549092506001600160a01b0316905063430c208161111961239e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015611164573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111889190614903565b80611217575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa1580156111e1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112059190614903565b8015611217575061121761073861239e565b6112335760405162461bcd60e51b815260040161098190614920565b505b61123f888a6147f5565b836002825110156112625760405162461bcd60e51b81526004016109819061496f565b6112796110336000846001865161101691906149ca565b611281610e37565b1561129e5760405162461bcd60e51b8152600401610981906147cb565b60028a146112be5760405162461bcd60e51b8152600401610981906149f3565b6112e78c6112cc8c8e6147f5565b6112d68b8d6147f5565b6112e08a8c6147f5565b89896126c1565b50505050505050505050505050565b6112fe612cad565b60005b8151811015610d815761132c82828151811061131f5761131f6149dd565b6020026020010151612d26565b8061133681614a39565b915050611301565b61134961073861239e565b6113655760405162461bcd60e51b815260040161098190614736565b6001600160a01b0381166113bb5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610981565b6113c481612f5a565b6113cc6115aa565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610d81573d6000803e3d6000fd5b611409612cad565b610d956000612f72565b61141b612cad565b60005b8151811015610d815761144982828151811061143c5761143c6149dd565b6020026020010151612f5a565b8061145381614a39565b91505061141e565b61146661073861239e565b6114825760405162461bcd60e51b815260040161098190614736565b6001600160a01b0381166113c45760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610981565b6114e0612cad565b610d95612fc4565b8282828080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525061152b93508592508491506123ad565b611533610e37565b156115505760405162461bcd60e51b8152600401610981906147cb565b606061156487610cae88610ca98989612584565b5050505050505050565b60009182526097602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6115a1612cad565b610cf481612f5a565b610d95600080516020614ef48339815191526103e361239e565b6115cc612cad565b60c954604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906115fe9085908590600401614a52565b600060405180830381600087803b15801561161857600080fd5b505af115801561162c573d6000803e3d6000fd5b505060cb546001600160a01b0316159150610d8190505760cb54604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906116759085908590600401614a52565b600060405180830381600087803b15801561168f57600080fd5b505af11580156116a3573d6000803e3d6000fd5b505050505050565b6116b3612cad565b610cde83838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525085925061302c915050565b6000610954600080516020614ef48339815191528361156e565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd696020820152908101829052600090611762906060015b6040516020818303038152906040528051906020012090565b5460ff1692915050565b611774612cad565b60ce80546001600160a01b0319166001600160a01b0392909216919091179055565b61179e612cad565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e80546001600160a01b0319166001600160a01b03831617905550565b600054610100900460ff16158080156117fb5750600054600160ff909116105b806118155750303b158015611815575060005460ff166001145b6118785760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610981565b6000805460ff19166001179055801561189b576000805461ff0019166101001790555b60c980546001600160a01b03199081166001600160a01b038a81169190911790925560ca8054821689841617905560cb8054821688841617905560cc8054821687841617905560ce80549091169185169190911790556118f961314c565b611901613183565b61190a826131bc565b6119126131e3565b6040805161036081018252600661032082018181526563727970746f60d01b610340840152825282518084018452818152651dd85b1b195d60d21b602082810191909152808401919091528351808501855260018152600f60fb1b8183015283850152835180850185526003808252621b999d60ea1b82840152606085019190915284518086018652600a815269313637b1b5b1b430b4b760b11b818401526080850152845180860186526007808252663134ba31b7b4b760c91b8285015260a0860191909152855180870187528281526207070760eb1b8185015260c0860152855180870187528281526264616f60e81b8185015260e086015285518087018752828152621e9a5b60ea1b8185015261010086015285518087018752908152663837b63cb3b7b760c91b8184015261012085015284518086018652600b81526a756e73746f707061626c6560a81b81840152610140850152845180860186528381526535b632bb32b960d11b8184015261016085015284518086018652600280825261686960f01b8285015261018086019190915285518087018752848152656b726573757360d01b818501526101a086015285518087018752600580825264616e696d6560d81b828601526101c087019190915286518088018852818152646d616e676160d81b818601526101e087015286518088018852600981526862696e616e6365757360b81b8186015261020087015286518088018852818152647265616c6d60d81b818601526102208701528651808801885291825261676f60f01b82850152610240860191909152855180870187526008815267185b1d1a5b5a5cdd60c21b818501526102608601528551808701875290815264707564677960d81b81840152610280850152845180860186528381526530bab9ba34b760d11b818401526102a08501528451808601865292835265189a5d19d95d60d21b838301526102c08401929092528351808501855291825262706f6760e81b828201526102e083019190915282518084019093526004835263636c617960e01b9083015261030081019190915260005b6019811015611c5c57611c4a828260198110611c3e57611c3e6149dd565b6020020151600061302c565b80611c5481614a39565b915050611c20565b50611c8360405180604001604052806003815260200162636f6d60e81b815250600161302c565b508015610afa576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050505050565b8686868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250611d1593508592508491506123ad565b611d1d610e37565b15611d3a5760405162461bcd60e51b8152600401610981906147cb565b611d698a611d4c8b610ca98c8c612584565b611d56888a6147f5565b611d6087896147f5565b600060016126c1565b5050505050505050505050565b611d7e612cad565b60005b81811015610cde5760c9546001600160a01b03166350960239848484818110611dac57611dac6149dd565b9050602002016020810190611dc19190613f34565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401600060405180830381600087803b158015611e0257600080fd5b505af1158015611e16573d6000803e3d6000fd5b505050508080611e2590614a39565b915050611d81565b600082815260976020526040902060010154611e4881612c15565b610cde8383612d3e565b611e5c898b6147f5565b6000600282511015611e805760405162461bcd60e51b81526004016109819061496f565b611e976110336000846001865161101691906149ca565b611e9f610e37565b15611ebc5760405162461bcd60e51b8152600401610981906147cb565b60028b14611edc5760405162461bcd60e51b8152600401610981906149f3565b611f228d8d8d898960008a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061322392505050565b84341015611f725760405162461bcd60e51b815260206004820181905260248201527f4d696e74696e674d616e616765723a204e4f545f454e4f5547485f46554e44536044820152606401610981565b611f848d8d8d8d8d8d8d8c60006133e3565b843411156112e757611f9461239e565b6001600160a01b03166108fc611faa87346149ca565b6040518115909202916000818181858888f19350505050158015611fd2573d6000803e3d6000fd5b5050505050505050505050505050565b611fea612cad565b611ff38161349f565b61200f5760405162461bcd60e51b815260040161098190614a81565b600081815260cd6020526040812061202691613d76565b60405181907f0aa1aff0f830e739d86baf0e6624d6763da02f7733575e0e463886cd062dea6a90600090a250565b61205c612cad565b612065816134c5565b610cf460008261353b565b61207a8a8c6147f5565b600060028251101561209e5760405162461bcd60e51b81526004016109819061496f565b6120b56110336000846001865161101691906149ca565b6120bd610e37565b156120da5760405162461bcd60e51b8152600401610981906147cb565b60028c146120fa5760405162461bcd60e51b8152600401610981906149f3565b61213f8e8e8e8a898b8a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061322392505050565b856001600160a01b03166323b872dd61215661239e565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152306024820152604481018890526064016020604051808303816000875af11580156121a9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121cd9190614903565b6122115760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610981565b611fd28e8e8e8e8e8e8e8c8e6133e3565b61222a612cad565b6040516370a0823160e01b81523060048201526000906001600160a01b038416906370a0823190602401602060405180830381865afa158015612271573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122959190614ac3565b60405163a9059cbb60e01b81526001600160a01b038481166004830152602482018390529192509084169063a9059cbb906044016020604051808303816000875af11580156122e8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061230c9190614903565b6123505760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610981565b604080516001600160a01b0384811682526020820184905285168183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a1505050565b60006123a8613545565b905090565b6123b68361349f565b6123d25760405162461bcd60e51b815260040161098190614a81565b600083815260cf602052604090205460ff1615156001600160401b03821615151461244e5760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544c445f455850495241424c455f4d496044820152650a69a82a886960d31b6064820152608401610981565b60006124818360408051808201825260008082526020918201528151808301909252825182529182019181019190915290565b9050600a81600001511115612529576124ac6124a0826000600a61358b565b80516020909101512090565b7fb551e0305c8163b812374b8e78b577c77f226f6f10c5ad03e52699578fbc34b8036125295760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544f4b454e5f4c4142454c5f50524f4860448201526512509255115160d21b6064820152608401610981565b612532836135ca565b61257e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a204c4142454c5f494e56414c49440000006044820152606401610981565b50505050565b60608282604051602001612599929190614adc565b604051602081830303815290604052905092915050565b604080516002808252606082810190935260009190816020015b60608152602001906001900390816125ca57905050905082816000815181106125f5576125f56149dd565b602002602001018190525060cd6000858152602001908152602001600020805461261e90614b04565b80601f016020809104026020016040519081016040528092919081815260200182805461264a90614b04565b80156126975780601f1061266c57610100808354040283529160200191612697565b820191906000526020600020905b81548152906001019060200180831161267a57829003601f168201915b5050505050816001815181106126af576126af6149dd565b60209081029190910101529392505050565b60008060006126cf88612e6b565b915091508380156126e1575060028851115b8015612763575060c9546040516331a9108f60e11b8152600481018390526001600160a01b038b8116921690636352211e90602401602060405180830381865afa158015612733573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127579190614b3e565b6001600160a01b031614155b156127c35760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e616765723a20524556455253455f5245434f52445f4e60448201526913d517d0531313d5d15160b21b6064820152608401610981565b60c954604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401602060405180830381865afa15801561280c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128309190614903565b8015612921575060c9546040516331a9108f60e11b81526004810184905230916001600160a01b031690636352211e90602401602060405180830381865afa158015612880573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128a49190614b3e565b6001600160a01b03161480612921575060c95460405163d9548e5360e01b8152600481018490526001600160a01b039091169063d9548e5390602401602060405180830381865afa1580156128fd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129219190614903565b15612a12576001600160401b038516156129a35760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b15801561298a57600080fd5b505af115801561299e573d6000803e3d6000fd5b505050505b60c954604051630fb8df0360e11b81526001600160a01b0390911690631f71be06906129db908c908c908c908c908b90600401614bb0565b600060405180830381600087803b1580156129f557600080fd5b505af1158015612a09573d6000803e3d6000fd5b50505050612c09565b612a1b8261372e565b612a248861378d565b8015612a31575087516002145b8015612a4457506001600160401b038516155b15612b225760ca5488516001600160a01b039091169063c36c2125908b908b90600090612a7357612a736149dd565b602090810291909101015160cc546040516001600160e01b031960e086901b168152612aad9392916001600160a01b031690600401614c0f565b600060405180830381600087803b158015612ac757600080fd5b505af1158015612adb573d6000803e3d6000fd5b50505050600087511115612b1d5760cc54604051633a0deb9d60e21b81526001600160a01b039091169063e837ae74906129db908a908a908790600401614c44565b612c09565b60c95460405163ba5d40b760e01b81526001600160a01b039091169063ba5d40b790612b5a908c908c908c908c908b90600401614bb0565b600060405180830381600087803b158015612b7457600080fd5b505af1158015612b88573d6000803e3d6000fd5b505050506001600160401b03851615612c095760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b158015612bf057600080fd5b505af1158015612c04573d6000803e3d6000fd5b505050505b50979650505050505050565b610cf481612c2161239e565b6137e7565b612c30828261156e565b610d815760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19166001179055612c6961239e565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b612cb561239e565b6001600160a01b0316612cd06033546001600160a01b031690565b6001600160a01b031614610d955760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610981565b610cf4600080516020614ef483398151915282611e2d565b612d48828261156e565b15610d815760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19169055612d7f61239e565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612dcb610e37565b612e0e5760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881393d517d4105554d15160621b6044820152606401610981565b600080516020614ed4833981519152805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa612e4e61239e565b6040516001600160a01b03909116815260200160405180910390a1565b805160009081905b8015612ea057829150612e8c82856110166001856149ca565b925080612e9881614c7a565b915050612e73565b50915091565b60008151600003612ef95760405162461bcd60e51b815260206004820152601b60248201527f4d696e74696e674d616e616765723a204c4142454c5f454d50545900000000006044820152606401610981565b8282604051602001612f0b9190614c91565b60405160208183030381529060405280519060200120604051602001612f3b929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b610cf4600080516020614ef48339815191528261353b565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b612fcc610e37565b15612fe95760405162461bcd60e51b8152600401610981906147cb565b600080516020614ed4833981519152805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258612e4e61239e565b6000613039600084612ea6565b600081815260cd602052604090209091506130548482614cf3565b50600081815260cf602052604090819020805460ff19168415151790555181907f4fce6f6e172b04eaa80325d8e3b0180a34945000f3e214605039e8420fdf8980906130a190869061437c565b60405180910390a260c954604051634f558e7960e01b8152600481018390526001600160a01b0390911690634f558e7990602401602060405180830381865afa1580156130f2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131169190614903565b610cde5760c9546040516307befae360e51b81526001600160a01b039091169063f7df5c6090610acc9084908790600401614db2565b600054610100900460ff166131735760405162461bcd60e51b815260040161098190614dd3565b610d9561317e61239e565b612f72565b600054610100900460ff166131aa5760405162461bcd60e51b815260040161098190614dd3565b610d9560006131b761239e565b61353b565b600054610100900460ff1661179e5760405162461bcd60e51b815260040161098190614dd3565b600054610100900460ff1661320a5760405162461bcd60e51b815260040161098190614dd3565b600080516020614ed4833981519152805460ff19169055565b600061323761323287896147f5565b612e6b565b506040516bffffffffffffffffffffffff1930606090811b821660208401524660348401528b811b82166054840152606883018490526001600160c01b031960c08a901b1660888401526090830188905286901b1660b082015290915060009061331390849061330d9060c401604051602081830303815290604052805190602001206040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c8101829052600090605c01604051602081830303815290604052805190602001209050919050565b9061384b565b905061331e816116f4565b6133765760405162461bcd60e51b8152602060048201526024808201527f4d696e74696e674d616e616765723a205349474e45525f49535f4e4f545f4d49604482015263272a22a960e11b6064820152608401610981565b42866001600160401b0316116133d85760405162461bcd60e51b815260206004820152602160248201527f4d696e74696e674d616e616765723a20455850495245445f5349474e415455526044820152604560f81b6064820152608401610981565b505050505050505050565b600061342a8a6133f38a8c6147f5565b6133fd898b6147f5565b613407888a6147f5565b60008f6001600160a01b031661341b61239e565b6001600160a01b0316146126c1565b9050896001600160a01b031661343e61239e565b6001600160a01b0316827fa545b6fd3355e8d57f8c8147bafe740545bd3ea1f94bef2576a6d532a7c3b605868660405161348b9291909182526001600160a01b0316602082015260400190565b60405180910390a450505050505050505050565b600081815260cd6020526040812080548291906134bb90614b04565b9050119050919050565b6134cd612cad565b6001600160a01b0381166135325760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610981565b610cf481612f72565b610d818282612c26565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546000906001600160a01b03163303613586575060331936013560601c90565b503390565b604080518082019091526000808252602082015260405180604001604052808381526020018486602001516135c09190614e1e565b9052949350505050565b600081516000036135dd57506000919050565b60208201805160f81c603081108015906135fb575060398160ff1611155b15801561361d575060618160ff161015801561361b5750607a8160ff1611155b155b1561362c575060009392505050565b8351600181111561369a5761364e836136466001846149ca565b015160f81c90565b915060308260ff1610158015613668575060398260ff1611155b15801561368a575060618260ff16101580156136885750607a8260ff1611155b155b1561369a57506000949350505050565b60015b6136a86001836149ca565b811015613722578381015160f81c9250602d83148015906136de575060308360ff16101580156136dc575060398360ff1611155b155b80156136ff575060618360ff16101580156136fd5750607a8360ff1611155b155b156137105750600095945050505050565b8061371a81614a39565b91505061369d565b50600195945050505050565b6137378161170e565b156137845760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a20544f4b454e5f424c4f434b45440000006044820152606401610981565b610cf48161386f565b6000806137a46000846001865161101691906149ca565b60ca549091506001600160a01b0316158015906137e05750807f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f145b9392505050565b6137f1828261156e565b610d8157613809816001600160a01b031660146138f3565b6138148360206138f3565b604051602001613825929190614e31565b60408051601f198184030181529082905262461bcd60e51b82526109819160040161437c565b600080600061385a8585613a8e565b9150915061386781613ad3565b509392505050565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd6960208201529081018290526001906138ae90606001611749565b805460ff19169115159190911790556040518181527f2ce5d9351b1d590d5a066db0d2dc7602d55f092506a83a7ee8c4d78ee357d75a9060200160405180910390a150565b60606000613902836002614ea6565b61390d906002614e1e565b6001600160401b0381111561392457613924614133565b6040519080825280601f01601f19166020018201604052801561394e576020820181803683370190505b509050600360fc1b81600081518110613969576139696149dd565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110613998576139986149dd565b60200101906001600160f81b031916908160001a90535060006139bc846002614ea6565b6139c7906001614e1e565b90505b6001811115613a3f576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106139fb576139fb6149dd565b1a60f81b828281518110613a1157613a116149dd565b60200101906001600160f81b031916908160001a90535060049490941c93613a3881614c7a565b90506139ca565b5083156137e05760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610981565b6000808251604103613ac45760208301516040840151606085015160001a613ab887828585613c89565b94509450505050613acc565b506000905060025b9250929050565b6000816004811115613ae757613ae7614ebd565b03613aef5750565b6001816004811115613b0357613b03614ebd565b03613b505760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152606401610981565b6002816004811115613b6457613b64614ebd565b03613bb15760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610981565b6003816004811115613bc557613bc5614ebd565b03613c1d5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b6064820152608401610981565b6004816004811115613c3157613c31614ebd565b03610cf45760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c604482015261756560f01b6064820152608401610981565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613cc05750600090506003613d6d565b8460ff16601b14158015613cd857508460ff16601c14155b15613ce95750600090506004613d6d565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613d3d573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613d6657600060019250925050613d6d565b9150600090505b94509492505050565b508054613d8290614b04565b6000825580601f10613d92575050565b601f016020900490600052602060002090810190610cf491905b80821115613dc05760008155600101613dac565b5090565b600060208284031215613dd657600080fd5b81356001600160e01b0319811681146137e057600080fd5b6001600160401b0381168114610cf457600080fd5b8035613e0e81613dee565b919050565b60008060408385031215613e2657600080fd5b8235613e3181613dee565b946020939093013593505050565b600060208284031215613e5157600080fd5b5035919050565b60008083601f840112613e6a57600080fd5b5081356001600160401b03811115613e8157600080fd5b602083019150836020828501011115613acc57600080fd5b600080600060408486031215613eae57600080fd5b8335925060208401356001600160401b03811115613ecb57600080fd5b613ed786828701613e58565b9497909650939450505050565b6001600160a01b0381168114610cf457600080fd5b8035613e0e81613ee4565b60008060408385031215613f1757600080fd5b823591506020830135613f2981613ee4565b809150509250929050565b600060208284031215613f4657600080fd5b81356137e081613ee4565b60008083601f840112613f6357600080fd5b5081356001600160401b03811115613f7a57600080fd5b6020830191508360208260051b8501011115613acc57600080fd5b8015158114610cf457600080fd5b60008060008060008060008060a0898b031215613fbf57600080fd5b8835613fca81613ee4565b975060208901356001600160401b0380821115613fe657600080fd5b613ff28c838d01613f51565b909950975060408b013591508082111561400b57600080fd5b6140178c838d01613f51565b909750955060608b013591508082111561403057600080fd5b5061403d8b828c01613f51565b909450925050608089013561405181613f95565b809150509295985092959890939650565b600080600080600080600080600060c08a8c03121561408057600080fd5b893561408b81613ee4565b985060208a01356001600160401b03808211156140a757600080fd5b6140b38d838e01613f51565b909a50985060408c01359150808211156140cc57600080fd5b6140d88d838e01613f51565b909850965060608c01359150808211156140f157600080fd5b506140fe8c828d01613f51565b90955093505060808a013561411281613dee565b915060a08a013561412281613f95565b809150509295985092959850929598565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561417157614171614133565b604052919050565b60006001600160401b0382111561419257614192614133565b5060051b60200190565b600060208083850312156141af57600080fd5b82356001600160401b038111156141c557600080fd5b8301601f810185136141d657600080fd5b80356141e96141e482614179565b614149565b81815260059190911b8201830190838101908783111561420857600080fd5b928401925b8284101561422f57833561422081613ee4565b8252928401929084019061420d565b979650505050505050565b6000806000806060858703121561425057600080fd5b843561425b81613ee4565b93506020850135925060408501356001600160401b0381111561427d57600080fd5b61428987828801613e58565b95989497509550505050565b600080602083850312156142a857600080fd5b82356001600160401b038111156142be57600080fd5b6142ca85828601613e58565b90969095509350505050565b6000806000604084860312156142eb57600080fd5b83356001600160401b0381111561430157600080fd5b61430d86828701613e58565b909450925050602084013561432181613f95565b809150509250925092565b60005b8381101561434757818101518382015260200161432f565b50506000910152565b6000815180845261436881602086016020860161432c565b601f01601f19169290920160200192915050565b6020815260006137e06020830184614350565b60008060008060008060c087890312156143a857600080fd5b86356143b381613ee4565b955060208701356143c381613ee4565b945060408701356143d381613ee4565b935060608701356143e381613ee4565b925060808701356143f381613ee4565b915060a087013561440381613ee4565b809150509295509295509295565b60008060008060008060008060a0898b03121561442d57600080fd5b883561443881613ee4565b97506020890135965060408901356001600160401b038082111561445b57600080fd5b6144678c838d01613e58565b909850965060608b013591508082111561448057600080fd5b61448c8c838d01613f51565b909650945060808b01359150808211156144a557600080fd5b506144b28b828c01613f51565b999c989b5096995094979396929594505050565b600080602083850312156144d957600080fd5b82356001600160401b038111156144ef57600080fd5b6142ca85828601613f51565b600080600080600080600080600080600060e08c8e03121561451c57600080fd5b6145258c613ef9565b9a506001600160401b038060208e0135111561454057600080fd5b6145508e60208f01358f01613f51565b909b50995060408d013581101561456657600080fd5b6145768e60408f01358f01613f51565b909950975060608d013581101561458c57600080fd5b61459c8e60608f01358f01613f51565b90975095506145ad60808e01613e03565b945060a08d013593508060c08e013511156145c757600080fd5b506145d88d60c08e01358e01613e58565b81935080925050509295989b509295989b9093969950565b6000806000806000806000806000806000806101008d8f03121561461357600080fd5b61461c8d613ef9565b9b506001600160401b0360208e0135111561463657600080fd5b6146468e60208f01358f01613f51565b909b5099506001600160401b0360408e0135111561466357600080fd5b6146738e60408f01358f01613f51565b90995097506001600160401b0360608e0135111561469057600080fd5b6146a08e60608f01358f01613f51565b90975095506146b160808e01613e03565b94506146bf60a08e01613ef9565b935060c08d013592506001600160401b0360e08e013511156146e057600080fd5b6146f08e60e08f01358f01613e58565b81935080925050509295989b509295989b509295989b565b6000806040838503121561471b57600080fd5b823561472681613ee4565b91506020830135613f2981613ee4565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b60006020828403121561477d57600080fd5b81516137e081613dee565b60208082526023908201527f4d696e74696e674d616e616765723a20544f4b454e5f4e4f545f455850495241604082015262424c4560e81b606082015260800190565b60208082526010908201526f14185d5cd8589b194e8814105554d15160821b604082015260600190565b60006148036141e484614179565b80848252602080830192508560051b85013681111561482157600080fd5b855b818110156148b35780356001600160401b03808211156148435760008081fd5b90880190601f36818401126148585760008081fd5b82358281111561486a5761486a614133565b61487b818301601f19168801614149565b9250808352368782860101111561489457600091508182fd5b8087850188850137600090830187015250865250938201938201614823565b50919695505050505050565b60208082526024908201527f4d696e74696e674d616e616765723a2043414c4c45525f49535f4e4f545f4d49604082015263272a22a960e11b606082015260800190565b60006020828403121561491557600080fd5b81516137e081613f95565b6020808252602f908201527f4d696e74696e674d616e616765723a2053454e4445525f49535f4e4f545f415060408201526e282927ab22a22fa7a92fa7aba722a960891b606082015260800190565b60208082526025908201527f4d696e74696e674d616e616765723a204c4142454c535f4c454e4754485f42456040820152642627abaf9960d91b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b81810381811115610954576109546149b4565b634e487b7160e01b600052603260045260246000fd5b60208082526026908201527f4d696e74696e674d616e616765723a20535542444f4d41494e535f4e4f545f41604082015265131313d5d15160d21b606082015260800190565b600060018201614a4b57614a4b6149b4565b5060010190565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b60208082526022908201527f4d696e74696e674d616e616765723a20544c445f4e4f545f5245474953544552604082015261115160f21b606082015260800190565b600060208284031215614ad557600080fd5b5051919050565b6b756e732d646576746573742d60a01b81528183600c83013760009101600c01908152919050565b600181811c90821680614b1857607f821691505b602082108103614b3857634e487b7160e01b600052602260045260246000fd5b50919050565b600060208284031215614b5057600080fd5b81516137e081613ee4565b600081518084526020808501808196508360051b8101915082860160005b85811015614ba3578284038952614b91848351614350565b98850198935090840190600101614b79565b5091979650505050505050565b6001600160a01b038616815260a060208201819052600090614bd490830187614b5b565b8281036040840152614be68187614b5b565b90508281036060840152614bfa8186614b5b565b91505082151560808301529695505050505050565b600060018060a01b03808616835260606020840152614c316060840186614350565b9150808416604084015250949350505050565b606081526000614c576060830186614b5b565b8281036020840152614c698186614b5b565b915050826040830152949350505050565b600081614c8957614c896149b4565b506000190190565b60008251614ca381846020870161432c565b9190910192915050565b601f821115610cde57600081815260208120601f850160051c81016020861015614cd45750805b601f850160051c820191505b818110156116a357828155600101614ce0565b81516001600160401b03811115614d0c57614d0c614133565b614d2081614d1a8454614b04565b84614cad565b602080601f831160018114614d555760008415614d3d5750858301515b600019600386901b1c1916600185901b1785556116a3565b600085815260208120601f198616915b82811015614d8457888601518255948401946001909101908401614d65565b5085821015614da25787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b828152604060208201526000614dcb6040830184614350565b949350505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b80820180821115610954576109546149b4565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351614e6981601785016020880161432c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351614e9a81602884016020880161432c565b01602801949350505050565b8082028115828204841417610954576109546149b4565b634e487b7160e01b600052602160045260246000fdfe5496787fc1ebdfeba375028c1865f13fbb1d63c0caa356ccc1b29a80f3ebd6229f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000811000a","storage":{}},"0x24f45688d421f46cca60734bdc648ad192db0f2e":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0x1","0x97":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x12d":"0x0","0x15f":"0x5cc819c9915eadfcebd76952b8c1bc36cadd7376","0x13cf90498be59d359caa5b6092b365feab4610605d7107d1f05f8e94ac955652":"0x1","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x54563a9e1cd2dcbd0bca90d3cfa4a647e02c404a","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106102295760003560e01c8063886a69ba11610123578063cf1d21c0116100ab578063e2c49de11161006f578063e2c49de11461091d578063e3dec8fb14610932578063e43009a6146109c8578063e66f9603146109fb578063ea60c7c414610a2557610240565b8063cf1d21c014610844578063d233a3c714610859578063d547741f1461089c578063d81c8e52146108d5578063dc993a23146108ea57610240565b8063a217fddf116100f2578063a217fddf1461078a578063b4b4f63e1461079f578063bc08452b146107b4578063c4d66de8146107e7578063ca15c8731461081a57610240565b8063886a69ba146106c95780639010d07c146106de5780639173b1391461070e57806391d148541461075157610240565b80633138b6f1116101b1578063568b80b511610175578063568b80b5146105fb578063607f2d4214610610578063630fcbfb1461064e5780636cb136b0146106635780636e86b7701461069657610240565b80633138b6f1146104f55780633408e4701461050a57806336568abe1461051f5780633805550f146105585780634faa8a26146105d557610240565b80630f7e5970116101f85780630f7e59701461042357806320379ee514610438578063248a9ca31461045f5780632d0335ab146104895780632f2ff15d146104bc57610240565b806304967702146102455780630c3894bb146102765780630c53c51c146102b15780630c598220146103ea57610240565b366102405761023e610239610a58565b610a68565b005b600080fd5b34801561025157600080fd5b5061025a610b69565b604080516001600160a01b039092168252519081900360200190f35b34801561028257600080fd5b5061023e6004803603604081101561029957600080fd5b506001600160a01b0381358116916020013516610b78565b610375600480360360a08110156102c757600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156102f257600080fd5b82018360208201111561030457600080fd5b8035906020019184600183028401116401000000008311171561032657600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550508235935050506020810135906040013560ff16610cc9565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103af578181015183820152602001610397565b50505050905090810190601f1680156103dc5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156103f657600080fd5b5061023e6004803603604081101561040d57600080fd5b50803590602001356001600160a01b0316610fcc565b34801561042f57600080fd5b506103756110b9565b34801561044457600080fd5b5061044d6110d6565b60408051918252519081900360200190f35b34801561046b57600080fd5b5061044d6004803603602081101561048257600080fd5b50356110dc565b34801561049557600080fd5b5061044d600480360360208110156104ac57600080fd5b50356001600160a01b03166110f4565b3480156104c857600080fd5b5061023e600480360360408110156104df57600080fd5b50803590602001356001600160a01b031661110f565b34801561050157600080fd5b5061025a611176565b34801561051657600080fd5b5061044d611185565b34801561052b57600080fd5b5061023e6004803603604081101561054257600080fd5b50803590602001356001600160a01b0316611189565b34801561056457600080fd5b5061023e6004803603602081101561057b57600080fd5b81019060208101813564010000000081111561059657600080fd5b8201836020820111156105a857600080fd5b803590602001918460018302840111640100000000831117156105ca57600080fd5b5090925090506111ea565b61023e600480360360208110156105eb57600080fd5b50356001600160a01b03166116ec565b34801561060757600080fd5b5061044d6116f8565b34801561061c57600080fd5b5061063a6004803603602081101561063357600080fd5b503561171b565b604080519115158252519081900360200190f35b34801561065a57600080fd5b5061023e611730565b34801561066f57600080fd5b5061023e6004803603602081101561068657600080fd5b50356001600160a01b03166117d6565b3480156106a257600080fd5b5061025a600480360360208110156106b957600080fd5b50356001600160a01b031661186e565b3480156106d557600080fd5b5061044d611889565b3480156106ea57600080fd5b5061025a6004803603604081101561070157600080fd5b50803590602001356118aa565b34801561071a57600080fd5b5061023e6004803603606081101561073157600080fd5b506001600160a01b038135811691602081013590911690604001356118d1565b34801561075d57600080fd5b5061063a6004803603604081101561077457600080fd5b50803590602001356001600160a01b0316611a06565b34801561079657600080fd5b5061044d611a24565b3480156107ab57600080fd5b5061023e611a29565b3480156107c057600080fd5b5061023e600480360360208110156107d757600080fd5b50356001600160a01b0316611acf565b3480156107f357600080fd5b5061023e6004803603602081101561080a57600080fd5b50356001600160a01b0316611b67565b34801561082657600080fd5b5061044d6004803603602081101561083d57600080fd5b5035611c57565b34801561085057600080fd5b5061025a611c6e565b34801561086557600080fd5b5061023e6004803603606081101561087c57600080fd5b506001600160a01b03813581169160208101359091169060400135611c86565b3480156108a857600080fd5b5061023e600480360360408110156108bf57600080fd5b50803590602001356001600160a01b0316611de8565b3480156108e157600080fd5b5061044d611e41565b3480156108f657600080fd5b5061023e6004803603602081101561090d57600080fd5b50356001600160a01b0316611e60565b34801561092957600080fd5b5061025a611f3d565b34801561093e57600080fd5b5061023e6004803603606081101561095557600080fd5b6001600160a01b03823581169260208101359091169181019060608101604082013564010000000081111561098957600080fd5b82018360208201111561099b57600080fd5b803590602001918460018302840111640100000000831117156109bd57600080fd5b509092509050611f4c565b3480156109d457600080fd5b5061044d600480360360208110156109eb57600080fd5b50356001600160a01b0316611fe9565b348015610a0757600080fd5b5061025a60048036036020811015610a1e57600080fd5b5035611ffb565b348015610a3157600080fd5b5061025a60048036036020811015610a4857600080fd5b50356001600160a01b0316612016565b6000610a62612031565b90505b90565b604080513460208083019190915282518083039091018152908201909152610aa58273eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee8361208e565b7fa1829a9003092132f585b6ccdd167c19fe9774dbdea4260287e8a8e8ca8185d7546000908152600260205260408082205490516001600160a01b039091169034908381818185875af1925050503d8060008114610b1f576040519150601f19603f3d011682016040523d82523d6000602084013e610b24565b606091505b5050905080610b645760405162461bcd60e51b815260040180806020018281038252602781526020018061419d6027913960400191505060405180910390fd5b505050565b6009546001600160a01b031681565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020610ba981610ba4610a58565b611a06565b600a90610c495760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b820191906000526020600020905b815481529060010190602001808311610c1d57829003601f168201915b50509250505060405180910390fd5b506001600160a01b03808416600081815260036020908152604080832080546001600160a01b0319908116909155948716808452600483528184208054909616909555838352600590915280822082905551909291907f9e651a8866fbea043e911d816ec254b0e3c992c06fff32d605e72362d6023bd9908490a4505050565b6060610cd3613e2a565b50604080516060810182526001600160a01b0388166000818152600c602090815290849020548352820152908101869052610d118782878787612508565b610d4c5760405162461bcd60e51b81526004018080602001828103825260218152602001806141c46021913960400191505060405180910390fd5b6001600160a01b0387166000908152600c6020526040902054610d7690600163ffffffff6125e516565b6001600160a01b0388166000818152600c602090815260408083209490945583519283523383820181905260609484018581528b51958501959095528a517f5845892132946850460bff5a0083f71031bc5bf9aadcd40f1de79423eac9b10b958d9592948d94919260808501928601918190849084905b83811015610e05578181015183820152602001610ded565b50505050905090810190601f168015610e325780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a160006060306001600160a01b0316888a6040516020018083805190602001908083835b60208310610e835780518252601f199092019160209182019101610e64565b6001836020036101000a038019825116818451168082178552505050505050905001826001600160a01b03166001600160a01b031660601b8152601401925050506040516020818303038152906040526040518082805190602001908083835b60208310610f025780518252601f199092019160209182019101610ee3565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610f64576040519150601f19603f3d011682016040523d82523d6000602084013e610f69565b606091505b509150915081610fc0576040805162461bcd60e51b815260206004820152601c60248201527f46756e6374696f6e2063616c6c206e6f74207375636365737366756c00000000604482015290519081900360640190fd5b98975050505050505050565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020610ff881610ba4610a58565b600a9061105e5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5060008381526002602052604080822080546001600160a01b0319166001600160a01b0386169081179091559051909185917f8643692ae1c12ec91fa18e50b82ed93fa314f580999a236824db6de9ae0d839b9190a3505050565b604051806040016040528060018152602001603160f81b81525081565b600b5490565b6000818152600160205260409020600201545b919050565b6001600160a01b03166000908152600c602052604090205490565b60008281526001602052604090206002015461112d90610ba4610a58565b6111685760405162461bcd60e51b815260040180806020018281038252602f815260200180613f78602f913960400191505060405180910390fd5b611172828261263f565b5050565b6008546001600160a01b031690565b4690565b611191610a58565b6001600160a01b0316816001600160a01b0316146111e05760405162461bcd60e51b815260040180806020018281038252602f815260200180614286602f913960400191505060405180910390fd5b61117282826126ae565b606061123361122e84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061271d92505050565b612798565b905060006112548260028151811061124757fe5b602002602001015161291a565b6112796112748460088151811061126757fe5b6020026020010151612a62565b612b2c565b6112898460098151811061124757fe5b6040516020018084815260200183805190602001908083835b602083106112c15780518252601f1990920191602091820191016112a2565b51815160209384036101000a6000190180199092169116179052920193845250604080518085038152938201815283519382019390932060008181526006909252929020549194505060ff1615915061134d90505760405162461bcd60e51b81526004018080602001828103825260288152602001806142096028913960400191505060405180910390fd5b6000818152600660208190526040909120805460ff19166001179055825160609161138a9161122e9161138591879190811061126757fe5b61271d565b9050611394613e54565b6113b1826003815181106113a457fe5b6020026020010151612798565b6113c18560098151811061124757fe5b815181106113cb57fe5b6020026020010151905060006113fc6113e383612798565b6000815181106113ef57fe5b6020026020010151612c9f565b6001600160a01b0380821660009081526004602052604090205491925016806114565760405162461bcd60e51b81526004018080602001828103825260228152602001806140af6022913960400191505060405180910390fd5b6001600160a01b03808216600090815260056020908152604080832054835260029091529020548751911690611493908890600890811061124757fe5b63ffffffff1916156114d65760405162461bcd60e51b815260040180806020018281038252602581526020018061408a6025913960400191505060405180910390fd5b61151e6114e98860068151811061126757fe5b6114f98960088151811061126757fe5b6115098a60078151811061126757fe5b6115198b60058151811061124757fe5b612d2f565b61156f576040805162461bcd60e51b815260206004820152601f60248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f50524f4f4600604482015290519081900360640190fd5b6115dd6115828860028151811061124757fe5b6115928960038151811061124757fe5b6115a28a60048151811061124757fe5b60001b6115b58b60058151811061124757fe5b60001b6115c88c60008151811061124757fe5b6115d88d60018151811061126757fe5b612f76565b50806001600160a01b0316638274664f6115f5610a58565b846115ff886130bf565b6040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561167b578181015183820152602001611663565b50505050905090810190601f1680156116a85780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b1580156116c957600080fd5b505af11580156116dd573d6000803e3d6000fd5b50505050505050505050505050565b6116f581610a68565b50565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b01902081565b60066020526000908152604090205460ff1681565b600061173e81610ba4610a58565b600a906117a45760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506116f56040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b81525061312d565b60006117e481610ba4610a58565b600a9061184a5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5050600780546001600160a01b0319166001600160a01b0392909216919091179055565b6004602052600090815260409020546001600160a01b031681565b604080516826a0a82faa27a5a2a760b91b8152905190819003600901902081565b60008281526001602052604081206118c8908363ffffffff6131e916565b90505b92915050565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b0190206118fd81610ba4610a58565b600a906119635760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b03848116600090815260036020526040902054161580156119a457506001600160a01b0383811660009081526004602052604090205416155b6119f5576040805162461bcd60e51b815260206004820181905260248201527f526f6f74436861696e4d616e616765723a20414c52454144595f4d4150504544604482015290519081900360640190fd5b611a008484846131f5565b50505050565b60008281526001602052604081206118c8908363ffffffff61348416565b600081565b6000611a3781610ba4610a58565b600a90611a9d5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506116f56040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613499565b6000611add81610ba4610a58565b600a90611b435760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5050600880546001600160a01b0319166001600160a01b0392909216919091179055565b60005460ff1615611bb0576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b611be16040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613537565b611c126040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613499565b611c1d600082611168565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020611c479082611168565b506000805460ff19166001179055565b60008181526001602052604081206118cb90613589565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020611cb281610ba4610a58565b600a90611d185760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b0380851660009081526003602081815260408084205488861685526004835281852054861680865293909252909220549183169290911615611d8e576001600160a01b038116600090815260036020908152604080832080546001600160a01b031916905560059091528120555b6001600160a01b038281166000908152600460205260409020541615611dd5576001600160a01b038216600090815260046020526040902080546001600160a01b03191690555b611de08686866131f5565b505050505050565b600082815260016020526040902060020154611e0690610ba4610a58565b6111e05760405162461bcd60e51b81526004018080602001828103825260308152602001806140f96030913960400191505060405180910390fd5b604080516611115413d4d25560ca1b8152905190819003600701902081565b6000611e6e81610ba4610a58565b600a90611ed45760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b038216611f1a5760405162461bcd60e51b815260040180806020018281038252602d815260200180613fa7602d913960400191505060405180910390fd5b50600980546001600160a01b0319166001600160a01b0392909216919091179055565b6007546001600160a01b031690565b6001600160a01b03831673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee1415611fa85760405162461bcd60e51b81526004018080602001828103825260248152602001806141e56024913960400191505060405180910390fd5b611a00848484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061208e92505050565b60056020526000908152604090205481565b6002602052600090815260409020546001600160a01b031681565b6003602052600090815260409020546001600160a01b031681565b6000333014156120895760606000368080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505050503601516001600160a01b03169150610a659050565b503390565b6001600160a01b03808316600090815260056020908152604080832054600390925290912054909116158015906120c457508015155b6120ff5760405162461bcd60e51b81526004018080602001828103825260228152602001806140af6022913960400191505060405180910390fd5b6000818152600260205260409020546001600160a01b0316806121535760405162461bcd60e51b81526004018080602001828103825260248152602001806140176024913960400191505060405180910390fd5b6001600160a01b0385166121ae576040805162461bcd60e51b815260206004820152601e60248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f555345520000604482015290519081900360640190fd5b806001600160a01b031663e375b64e6121c5610a58565b8787876040518563ffffffff1660e01b815260040180856001600160a01b03166001600160a01b03168152602001846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561225c578181015183820152602001612244565b50505050905090810190601f1680156122895780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b1580156122ab57600080fd5b505af11580156122bf573d6000803e3d6000fd5b50505050606085858560405160200180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015612338578181015183820152602001612320565b50505050905090810190601f1680156123655780820380516001836020036101000a031916815260200191505b5060408051808303601f19018152828252600780546009546611115413d4d25560ca1b865284519586900390920185206020808701828152878701968752855160608901528551959d506001600160a01b039384169c506316f198319b5092909316985096508a955093608001919085019080838360005b838110156123f55781810151838201526020016123dd565b50505050905090810190601f1680156124225780820380516001836020036101000a031916815260200191505b5093505050506040516020818303038152906040526040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561249b578181015183820152602001612483565b50505050905090810190601f1680156124c85780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b1580156124e857600080fd5b505af11580156124fc573d6000803e3d6000fd5b50505050505050505050565b60006001600160a01b03861661254f5760405162461bcd60e51b81526004018080602001828103825260258152602001806141296025913960400191505060405180910390fd5b600161256261255d87613594565b613620565b83868660405160008152602001604052604051808581526020018460ff1660ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa1580156125bc573d6000803e3d6000fd5b505050602060405103516001600160a01b0316866001600160a01b031614905095945050505050565b6000828201838110156118c8576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600082815260016020526040902061265d908263ffffffff61366c16565b156111725761266a610a58565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b60008281526001602052604090206126cc908263ffffffff61368116565b15611172576126d9610a58565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612725613e54565b600082511161277b576040805162461bcd60e51b815260206004820152601f60248201527f524c505265616465723a20494e56414c49445f42595445535f4c454e47544800604482015290519081900360640190fd5b506040805180820190915281518152602082810190820152919050565b60606127a382613696565b6127f4576040805162461bcd60e51b815260206004820152601860248201527f524c505265616465723a204954454d5f4e4f545f4c4953540000000000000000604482015290519081900360640190fd5b60006127ff836136c2565b905060608167ffffffffffffffff8111801561281a57600080fd5b5060405190808252806020026020018201604052801561285457816020015b612841613e54565b8152602001906001900390816128395790505b5090506000612866856020015161374e565b855190915081146128a85760405162461bcd60e51b81526004018080602001828103825260278152602001806142316027913960400191505060405180910390fd5b60006128b786602001516137e2565b60208701510190506000805b8581101561290e576128d48361374e565b91506040518060400160405280838152602001848152508582815181106128f757fe5b6020908102919091010152918101916001016128c3565b50929695505050505050565b600061292582613696565b15612977576040805162461bcd60e51b815260206004820181905260248201527f524c505265616465723a204445434f44494e475f4c4953545f41535f55494e54604482015290519081900360640190fd5b8151602110156129ce576040805162461bcd60e51b815260206004820152601e60248201527f524c505265616465723a20494e56414c49445f55494e545f4c454e4754480000604482015290519081900360640190fd5b60006129dd836020015161374e565b83519091508114612a1f5760405162461bcd60e51b81526004018080602001828103825260278152602001806142b56027913960400191505060405180910390fd5b6000612a2e84602001516137e2565b84516020808701518301805193945091849003929190831015612a5857826020036101000a820491505b5095945050505050565b60606000612a73836020015161374e565b83519091508114612ab55760405162461bcd60e51b81526004018080602001828103825260288152602001806140d16028913960400191505060405180910390fd5b6000612ac484602001516137e2565b845190915081900360608167ffffffffffffffff81118015612ae557600080fd5b506040519080825280601f01601f191660200182016040528015612b10576020820181803683370190505b5090506000816020019050612a58848860200151018285613845565b604080516020810190915260008152815160609190156118cb57600080612b54600086613890565b60f81c90506001811480612b6b57508060ff166003145b15612bfa57600185516002020367ffffffffffffffff81118015612b8e57600080fd5b506040519080825280601f01601f191660200182016040528015612bb9576020820181803683370190505b5092506000612bc9600187613890565b90508084600081518110612bd957fe5b60200101906001600160f81b031916908160001a9053506001925050612c4b565b600285516002020367ffffffffffffffff81118015612c1857600080fd5b506040519080825280601f01601f191660200182016040528015612c43576020820181803683370190505b509250600091505b60ff82165b8351811015612c9657612c6b8360ff16820360020187613890565b848281518110612c7757fe5b60200101906001600160f81b031916908160001a905350600101612c50565b50505092915050565b6000612caa82613696565b15612ce65760405162461bcd60e51b815260040180806020018281038252602381526020018061417a6023913960400191505060405180910390fd5b8151601514612d265760405162461bcd60e51b81526004018080602001828103825260218152602001806142dc6021913960400191505060405180910390fd5b6118cb8261291a565b6000612d39613e54565b612d428461271d565b90506060612d4f82612798565b905060608085600082612d618b612b2c565b9050805160001415612d7d576000975050505050505050612f6e565b60005b8651811015612f65578151831115612da357600098505050505050505050612f6e565b612dbf878281518110612db257fe5b60200260200101516130bf565b955085805190602001208414612de057600098505050505050505050612f6e565b612def8782815181106113a457fe5b9450845160111415612eac578151831415612e4b578c80519060200120612e1c8660108151811061126757fe5b805190602001201415612e3a57600198505050505050505050612f6e565b600098505050505050505050612f6e565b6000828481518110612e5957fe5b016020015160f81c90506010811115612e7e5760009950505050505050505050612f6e565b612e9d868260ff1681518110612e9057fe5b60200260200101516138ed565b94505060019290920191612f5d565b845160021415612e3a576000612ed2612ecb8760008151811061126757fe5b848661398c565b905082518185011415612f28578d80519060200120612ef78760018151811061126757fe5b805190602001201415612f165760019950505050505050505050612f6e565b60009950505050505050505050612f6e565b80612f3f5760009950505050505050505050612f6e565b8084019350612f5486600181518110612e9057fe5b9450612f5d9050565b600101612d80565b50505050505050505b949350505050565b600854604080516320a9cea560e11b81526004810185905290516000928392839283926001600160a01b0316916341539d4a9160248083019260a0929190829003018186803b158015612fc857600080fd5b505afa158015612fdc573d6000803e3d6000fd5b505050506040513d60a0811015612ff257600080fd5b5080516020820151606090920151909450909250905061306161301b8b8463ffffffff613a6b16565b6040805160208082018f90528183018e9052606082018d905260808083018d90528351808403909101815260a0909201909252805191012090858863ffffffff613aad16565b6130b2576040805162461bcd60e51b815260206004820181905260248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f484541444552604482015290519081900360640190fd5b9998505050505050505050565b606080826000015167ffffffffffffffff811180156130dd57600080fd5b506040519080825280601f01601f191660200182016040528015613108576020820181803683370190505b50905060008160200190506131268460200151828660000151613845565b5092915050565b6040518060800160405280604f815260200161403b604f913980516020918201208251838301206040805180820190915260018152603160f81b930192909252907fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc630613198611185565b604080516020808201979097528082019590955260608501939093526001600160a01b03909116608084015260a0808401919091528151808403909101815260c090920190528051910120600b5550565b60006118c88383613c03565b6000818152600260205260409020546001600160a01b03166132485760405162461bcd60e51b815260040180806020018281038252602a815260200180613f07602a913960400191505060405180910390fd5b6001600160a01b03808416600081815260036020908152604080832080549588166001600160a01b031996871681179091558084526004835281842080549096168517909555838352600590915280822085905551849392917f9e651a8866fbea043e911d816ec254b0e3c992c06fff32d605e72362d6023bd991a4604080516001600160a01b0380861660208084019190915281861683850152606083810186905284518085038201815260808086018088526007546009546826a0a82faa27a5a2a760b91b9092528851978890036089018820888701818152898b019a8b528551968a019690965284519499918816986316f1983198939093169690958a9590949293909201919085019080838360005b8381101561337357818101518382015260200161335b565b50505050905090810190601f1680156133a05780820380516001836020036101000a031916815260200191505b5093505050506040516020818303038152906040526040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015613419578181015183820152602001613401565b50505050905090810190601f1680156134465780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b15801561346657600080fd5b505af115801561347a573d6000803e3d6000fd5b5050505050505050565b60006118c8836001600160a01b038416613c67565b806040516020018082805190602001908083835b602083106134cc5780518252601f1990920191602091820191016134ad565b51815160209384036101000a60001901801990921691161790527f3a20494e53554646494349454e545f5045524d495353494f4e530000000000009190930190815260408051808303600519018152601a909201905280516111729550600a94509201919050613e6e565b60005460ff1615613580576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b611c478161312d565b60006118cb82613c7f565b6000604051806080016040528060438152602001613fd460439139805190602001208260000151836020015184604001518051906020012060405160200180858152602001848152602001836001600160a01b03166001600160a01b03168152602001828152602001945050505050604051602081830303815290604052805190602001209050919050565b600061362a6110d6565b82604051602001808061190160f01b81525060020183815260200182815260200192505050604051602081830303815290604052805190602001209050919050565b60006118c8836001600160a01b038416613c83565b60006118c8836001600160a01b038416613ccd565b6020810151805160009190821a9060c08210156136b8576000925050506110ef565b5060019392505050565b6000806000905060006136d884602001516137e2565b602085015185519181019250015b80821015613745576136f78261374e565b820191508082111561373a5760405162461bcd60e51b815260040180806020018281038252602c81526020018061414e602c913960400191505060405180910390fd5b6001909201916136e6565b50909392505050565b80516000908190811a60808110156137695760019150613126565b60b881101561377e57607e1981019150613126565b60c08110156137ab5760b78103600185019450806020036101000a85510460018201810193505050613126565b60f88110156137c05760be1981019150613126565b60019390930151602084900360f7016101000a900490920160f5190192915050565b8051600090811a60808110156137fc5760009150506110ef565b60b8811080613817575060c08110801590613817575060f881105b156138265760019150506110ef565b60c081101561383a5760b5190190506110ef565b60f5190190506110ef565b8061384f57610b64565b5b6020811061386f578251825260209283019290910190601f1901613850565b915181516020939093036101000a6000190180199091169216919091179052565b600060028306156138c15760108260028504815181106138ac57fe5b016020015160f81c816138bb57fe5b066138e3565b60108260028504815181106138d257fe5b016020015160f81c816138e157fe5b045b60f81b9392505050565b6000806138fd836020015161374e565b8351909150811461393f5760405162461bcd60e51b815260040180806020018281038252602e815260200180614258602e913960400191505060405180910390fd5b825160211461397f5760405162461bcd60e51b8152600401808060200182810382526025815260200180613f536025913960400191505060405180910390fd5b5050602001516001015190565b600080606061399a86612b2c565b90506060815167ffffffffffffffff811180156139b657600080fd5b506040519080825280601f01601f1916602001820160405280156139e1576020820181803683370190505b509050845b82518601811015613a3b5760008782815181106139ff57fe5b602001015160f81c60f81b9050808388840381518110613a1b57fe5b60200101906001600160f81b031916908160001a905350506001016139e6565b50808051906020012082805190602001201415613a5b5781519250613a60565b600092505b509095945050505050565b60006118c883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250613d93565b60006020825181613aba57fe5b0615613b04576040805162461bcd60e51b8152602060048201526014602482015273092dcecc2d8d2c840e0e4dedecc40d8cadccee8d60631b604482015290519081900360640190fd5b60006020835181613b1157fe5b0490508060020a8510613b63576040805162461bcd60e51b81526020600482015260156024820152744c65616620696e64657820697320746f6f2062696760581b604482015290519081900360640190fd5b60008660205b85518111613bf55785810151925060028806613bb55781836040516020018083815260200182815260200192505050604051602081830303815290604052805190602001209150613be7565b828260405160200180838152602001828152602001925050506040516020818303038152906040528051906020012091505b600288049750602001613b69565b509094149695505050505050565b81546000908210613c455760405162461bcd60e51b8152600401808060200182810382526022815260200180613f316022913960400191505060405180910390fd5b826000018281548110613c5457fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000613c8f8383613c67565b613cc5575081546001818101845560008481526020808220909301849055845484825282860190935260409020919091556118cb565b5060006118cb565b60008181526001830160205260408120548015613d895783546000198083019190810190600090879083908110613d0057fe5b9060005260206000200154905080876000018481548110613d1d57fe5b600091825260208083209091019290925582815260018981019092526040902090840190558654879080613d4d57fe5b600190038181906000526020600020016000905590558660010160008781526020019081526020016000206000905560019450505050506118cb565b60009150506118cb565b60008184841115613e225760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015613de7578181015183820152602001613dcf565b50505050905090810190601f168015613e145780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60405180606001604052806000815260200160006001600160a01b03168152602001606081525090565b604051806040016040528060008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10613eaf57805160ff1916838001178555613edc565b82800160010185558215613edc579182015b82811115613edc578251825591602001919060010190613ec1565b50613ee8929150613eec565b5090565b610a6591905b80821115613ee85760008155600101613ef256fe526f6f74436861696e4d616e616765723a20544f4b454e5f545950455f4e4f545f535550504f52544544456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473524c505265616465723a20494e56414c49445f55494e545f5354524943545f4c454e475448416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e74526f6f74436861696e4d616e616765723a20494e56414c49445f4348494c445f434841494e5f414444524553534d6574615472616e73616374696f6e2875696e74323536206e6f6e63652c616464726573732066726f6d2c62797465732066756e6374696f6e5369676e617475726529526f6f74436861696e4d616e616765723a20494e56414c49445f544f4b454e5f54595045454950373132446f6d61696e28737472696e67206e616d652c737472696e672076657273696f6e2c6164647265737320766572696679696e67436f6e74726163742c627974657333322073616c7429526f6f74436861696e4d616e616765723a20494e56414c49445f4252414e43485f4d41534b526f6f74436861696e4d616e616765723a20544f4b454e5f4e4f545f4d4150504544524c505265616465723a2042595445535f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b654e61746976654d6574615472616e73616374696f6e3a20494e56414c49445f5349474e4552524c505265616465723a204e554d5f4954454d535f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a204445434f44494e475f4c4953545f41535f41444452455353526f6f74436861696e4d616e616765723a2045544845525f5452414e534645525f4641494c45445369676e657220616e64207369676e617475726520646f206e6f74206d61746368526f6f74436861696e4d616e616765723a20494e56414c49445f524f4f545f544f4b454e526f6f74436861696e4d616e616765723a20455849545f414c52454144595f50524f434553534544524c505265616465723a204c4953545f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a2055494e545f5354524943545f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66524c505265616465723a2055494e545f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a20494e56414c49445f414444524553535f4c454e475448a164736f6c6343000606000a","storage":{"0x0":"0x1","0x7":"0xe0afc4e9e03e4aa67257df7a2eca77454309789d","0x8":"0xbe5deac45dd1ca4ee18dc2d585d84d3d3cb82b0d","0x9":"0x0","0xa":"0x55","0xb":"0x2603903cfd8895fdde3da4d607d44203e86098073e351022fd12745d3436e93a","0xeb5be412f275a18f6e4d622aee4ff40b21467c926224771b782d4c095d1444b":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x162b27a30e878e20728deaa5c9814fd57ccf962b998b8733ce65749bc61c552f":"0x58a175bebc8ec21a94ea63aa5a28743945940ee6","0x1a93463c7bbb7215968307c7cd357c2009c10df2a511dd62c1189098e4f3249b":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x415fec6a4fd7706b96d3a0a30121284bc5e2b28b978c20486c9f5e20d44fc781":"0x1","0x4dc1f0160d96279adc262db20edcc15527e32cb28eda582becc5ac0bc453be34":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x5fc73aa2ab567caef8745f0709fae506c01972ffb297bd9225bc262d6e87746f":"0x1","0x6ce1cd05966f090b8daa7b2ee7f80930bbb39d19b693045725fbae5fa44fda90":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0xa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb49":"0x1","0xc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a8":"0x526f6f74436861696e4d616e616765723a20494e53554646494349454e545f50","0xc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a9":"0x45524d495353494f4e5300000000000000000000000000000000000000000000","0xd61ba0007bb57e62613f82f528c06ba46d36349cf5be567b12f878ef04849a7d":"0x1","0xf960df71fab73e593428c10f56f55e7ea46985963177def0458b97f1afec9576":"0xcf4e755f204163e9213ba8b1305036e386579ccc70731c25c62a101197811f48"}},"0x287dee389caaa49edc112888f2bcfd927b472e25":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c80634f89059e1461002d575b5f80fd5b61004061003b366004610125565b610054565b604051901515815260200160405180910390f35b5f806100985f85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101029050565b60ff1690505f811180156100f857506100f36100b5826001610191565b85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101029050565b60ff16155b9150505b92915050565b5f828281518110610115576101156101b0565b016020015160f81c905092915050565b5f8060208385031215610136575f80fd5b823567ffffffffffffffff8082111561014d575f80fd5b818501915085601f830112610160575f80fd5b81358181111561016e575f80fd5b86602082850101111561017f575f80fd5b60209290920196919550909350505050565b808201808211156100fc57634e487b7160e01b5f52601160045260245ffd5b634e487b7160e01b5f52603260045260245ffdfea164736f6c6343000818000a","storage":{}},"0x3198fc981626687f4b5bdf0fbeabb0a5e0489c03":{"nonce":1,"balance":"0x8ac7230489e80000","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0x1","0x97":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x13cf90498be59d359caa5b6092b365feab4610605d7107d1f05f8e94ac955652":"0x1","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xc2110388dd54228ae0a834119457ede938bf0b57","0x412386de53449251cbf7ce1f4c6a038bf9c0746e62d331b08ef0c3fa7d0ab672":"0x4fbf7b2f171336958be5d15ff762a5cff5363568","0x60793a5062d506d35cc8f1beda67ee5028c16bfcd9c923d5bfc439c04bd929b1":"0x6ac8f19d1e0f81147cdf2a1e53cb1f4e18417204","0x75df8b43665bf2e4996a686913c4c278ca7aed85444740ca40355b1c9a94b504":"0x1","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xf851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004":"0xc965345edac823d56812cd20a10316233916a605"}},"0x39a27956b78d00a4e00ea8833ff0947410a2933f":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xc9":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0xca":"0x4a3c194eb88966178bfdd81744dddafed611b830","0xcb":"0x4872cc1be60a9db9c880a0a437da7a6af134f08f","0xcc":"0xf8c26340c1eaea6c7ff1760b25005e1306953572","0xce":"0xce4bb7dc1eb9dce75743de6a4b48534fd427ef51","0xc6892776bb3da1e1199a03e0d3131aea089754b59c557b750c478ebc85ccaa":"0x6e66740000000000000000000000000000000000000000000000000000000006","0x6cb37a6d512a1e227e627eddc133023e6d00bfedff31a600abb75aa93e9a4a0":"0x6b7265737573000000000000000000000000000000000000000000000000000c","0x8e966fe8b9b43d48017ba1eb562ced91049de778396aaa438773698b3fa8fb6":"0x0","0x94a32b1c7b189ce7293f7ae444cdcab6800d858454022d15355d5ecc5b32b26":"0x0","0xa4b2d73a9f36ca5eed107f7c3d2ba877fb7537d447256726bcde9bac9e9aaee":"0x0","0xe0e3ab102c26f13da20123aa517b31e99cf65b7b720ba0dd7138012fd23eff2":"0x0","0x1203b5e51c7d5be6da42b83f22878d3583e53123857d27fc3cff3df46fb9126c":"0x0","0x13477730039a04f4290adf0e48e98b233579c040281545e4446ce662ba56a9be":"0x7800000000000000000000000000000000000000000000000000000000000002","0x1e06d49ce7b00846691778f302e94a3ac9c2633d745ebe73d68353c941e68dee":"0x626974636f696e0000000000000000000000000000000000000000000000000e","0x1e99199375610ffe00d28ee5827c616cf6469be3de2a2f738d955eb6b62127e8":"0x1","0x21e80eded1b2e1c5d976c85e89dde60bd4e99a8d66346af0e359ac854bceba44":"0x0","0x254d9ade81439f29723741d6ff407eab1fe03caffb042bd85e53955e41fb9792":"0x616c74696d697374000000000000000000000000000000000000000000000010","0x269db12b2cd2aeb7d5f52eda16edb1d211ccbea12da1ebfa60ed5f8f396c1d04":"0x0","0x2a3f03435eedee01de7e1c4386b04ca8469edd8df00408cd6d2b058bce1cecfa":"0x0","0x323a3cb169499006d6635c58232c8c58e23c20bf9e1d309d6b3bc6fb2c7a093d":"0x0","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x229c56b7805ab5935a883207f6a6bd5847e65aee","0x37aac864d4715a975bd45cae6be99de9f7968cf995917cc7f8192940fb62acbf":"0x0","0x3f69f26894a7ae0f7a7aa6c2d77935589dabbff6435aee960da15064dea7cd59":"0x64616f0000000000000000000000000000000000000000000000000000000006","0x467a68fda3230ce33f64703ebdbd91caccf235403282ae9fe390675ef39e9c94":"0x0","0x50ae8c017c4c1fddbe9509bd2b916f5dd9da11ddb639f2a4230322f49a41ac87":"0x1","0x5496787fc1ebdfeba375028c1865f13fbb1d63c0caa356ccc1b29a80f3ebd622":"0x0","0x576dd8d1a7b74aba0a99a213f50d74aa642a2c80bd5a854b24aac7568afea0f7":"0x626974676574000000000000000000000000000000000000000000000000000c","0x5b54338c052ce22ec334b6c5a19c4b122701c5fd4d3a2a5f5890f57050e0aafa":"0x626c6f636b636861696e00000000000000000000000000000000000000000014","0x5d9de30f0e5e02628e726fd23e310ee9e64489866fa6959825148a25d40e4c83":"0x0","0x5e2d99ab4a1a153039a4b2e068d64802da8735071a2d018ee9d04297945bed00":"0x0","0x670006c4193123492fb25db465ed52e62aff2f076289f4f1a5f167237f5e579d":"0x6d616e676100000000000000000000000000000000000000000000000000000a","0x6deac161c541001c0d79afaf7b809418785fa5ca6533d86bcf312e7213ee08fc":"0x0","0x6eaa0db35203bc0d58aff54ca630dd125b27758aa6204f7a11c0617f7c2fa776":"0x706f670000000000000000000000000000000000000000000000000000000006","0x732abe4661f55132b7f119cab9a9985be6630299dfc92870cc910f147795bc44":"0x0","0x743eb517f46c12bb593097087a972028308ce2e819a76cfb5488751f9d1ca34a":"0x7265616c6d00000000000000000000000000000000000000000000000000000a","0x750dfb39c9afc828c341e1a8e8fdca0b3914baf43303e1ef21fbfe8ec8ee016a":"0x0","0x7cbf647b96a1d1a533ea4bc3a4a8a78f166bd91e6a96afb12f063fef0e9cb960":"0x0","0x7dc972254779cfb51850c0eaccfcb71207822b3c10d4840567bec3dfbf0dff13":"0x636f6d0000000000000000000000000000000000000000000000000000000006","0x7dfa160584f41570c33e8e6c42c5314a7b45ddc162f99fd101ccc10c7b5b3dd3":"0x77616c6c6574000000000000000000000000000000000000000000000000000c","0x868a5f38a2d46181ffad442d7bc5b337b3c349a58e4979f2901786c6123b996c":"0x6b6c65766572000000000000000000000000000000000000000000000000000c","0x87b2c647061aef22ef1aba96c67f440d471dfac27e9873ff4a03793b402d32ee":"0x706f6c79676f6e0000000000000000000000000000000000000000000000000e","0x893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e":"0x7c3c91245769c8b7450ad522792dec4bd4bf797f","0x91e744007b4b3621bec7c01ea851c3f48cf196b9cc6c566a48cec8c5faac6e62":"0x0","0x92c5a28dd4caaa50e0a8370243a5c600f64349e8b03604b403cbe111b50f1f7b":"0x3838380000000000000000000000000000000000000000000000000000000006","0x947936973a3a21b10c8980e1a8939a55c7339d302161884a3de05cf090e812f0":"0x1","0x9535d3ea47c5e1398d3405b4fadc73de6b1b1e6a66f674a8886ab7a6c873a390":"0x63727970746f000000000000000000000000000000000000000000000000000c","0x9956a4e94676c45844be3667f17e077c7cb53aa4e87e5a71d65e56b291232715":"0x676f000000000000000000000000000000000000000000000000000000000004","0x9c6ba1ddff1ffbc14dcdc1f97db867554a42a39e00e892c7e882dbb3dca89ebf":"0x6869000000000000000000000000000000000000000000000000000000000004","0x9f836a0f81651f597cee678b440ba8c853c633e6654809efb83d4b22aff06fb2":"0x616e696d6500000000000000000000000000000000000000000000000000000a","0x9fecf1e12f4b8ec337da992721a0f27526ddbd6be1e77885ab963c09afcf0fc1":"0x0","0xab129a0f8c6cf8d160116a28abc7369c2f8a098fc023f00f07dc3e1d5798e47a":"0x0","0xb04c0eb6f034d9a3179a4e6f953bdf8afc78ba2cdcfbc775076e1c2a0bb67818":"0x0","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xbe51b53bc2060a7a6419622b5a9adc00b50a57e6aa741882f2f60f95d4580078":"0x636c617900000000000000000000000000000000000000000000000000000008","0xbf350522e335b8ab3da1d099c93cdc09179f1e15ea6aa1acfaa4afb1ef87eabf":"0x756e73746f707061626c65000000000000000000000000000000000000000016","0xcbf7a3d53e0851ac15a415b99c2ba95a2497dd9dd44068ac261bcbdafdfe8472":"0x707564677900000000000000000000000000000000000000000000000000000a","0xcf4411216f3fdf787d1cfe037bbcfa0d5293d83a8082f8e4141266399e2a784b":"0x61757374696e000000000000000000000000000000000000000000000000000c","0xcfdbac664139565f92cce149a345e5f19355d25b3eb8a70c549d5da3283a15b8":"0x7a696c0000000000000000000000000000000000000000000000000000000006","0xcfeb64c30a93ecd7224f854b09be57bb6b3962e739fa8e3ea3a1851502474c07":"0x1","0xe03c9c593ce8661bd39f77653f7ca6c43f093aa7f3b95890f309f67b57f39e74":"0x0","0xe50c62c16d12655dfdbd61c232155e5c3a1cf61977d2d8e7449cb88611b73832":"0x0","0xeeb0b17d77f2c9069ad443f3927c0802d98d5553e52b17c985d45d4a10b79566":"0x62696e616e636575730000000000000000000000000000000000000000000012","0xf562ef0db022f25a957fb6e49aa07004f14a50ed5b23279e9ac25b4632f7bf1c":"0x0","0xf6776268d6c5847a771099280c742d684a4b22bac609ba615de51f7f893ff2bc":"0x0"}},"0x3f1194b9019002863ad0dbbe295294547c0d36a9":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100b1575f3560e01c80635b0fc9c31161006e5780635b0fc9c3146101a55780635ef2c7f0146101b8578063a22cb465146101cb578063cf408823146101de578063e985e9c5146101f1578063f79fe5381461023c575f80fd5b80630178b8bf146100b557806302571be3146100fd57806306ab59231461011057806314ab90381461013157806316a25cbd146101465780631896f70a14610192575b5f80fd5b6100e06100c3366004610785565b5f908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100e061010b366004610785565b610266565b61012361011e3660046107b7565b610292565b6040519081526020016100f4565b61014461013f366004610800565b61035f565b005b610179610154366004610785565b5f90815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100f4565b6101446101a036600461082a565b61042e565b6101446101b336600461082a565b6104ef565b6101446101c636600461084b565b61058e565b6101446101d936600461089e565b6105af565b6101446101ec3660046108d7565b61061a565b61022c6101ff366004610921565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205460ff1690565b60405190151581526020016100f4565b61022c61024a366004610785565b5f908152602081905260409020546001600160a01b0316151590565b5f818152602081905260408120546001600160a01b031630810361028c57505f92915050565b92915050565b5f8381526020819052604081205484906001600160a01b0316338114806102db57506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b6102e3575f80fd5b604080516020808201899052818301889052825180830384018152606090920190925280519101206103158186610635565b6040516001600160a01b0386168152869088907fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829060200160405180910390a39695505050505050565b5f8281526020819052604090205482906001600160a01b0316338114806103a857506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b6103b0575f80fd5b60405167ffffffffffffffff8416815284907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a250505f91825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b5f8281526020819052604090205482906001600160a01b03163381148061047757506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b61047f575f80fd5b6040516001600160a01b038416815284907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a250505f9182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b5f8281526020819052604090205482906001600160a01b03163381148061053857506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b610540575f80fd5b61054a8484610635565b6040516001600160a01b038416815284907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a250505050565b5f61059a868686610292565b90506105a7818484610662565b505050505050565b335f8181526001602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b61062484846104ef565b61062f848383610662565b50505050565b5f9182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b5f838152602081905260409020600101546001600160a01b038381169116146106e6575f838152602081815260409182902060010180546001600160a01b0319166001600160a01b038616908117909155915191825284917f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a0910160405180910390a25b5f8381526020819052604090206001015467ffffffffffffffff828116600160a01b9092041614610780575f8381526020818152604091829020600101805467ffffffffffffffff60a01b1916600160a01b67ffffffffffffffff861690810291909117909155915191825284917f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa68910160405180910390a25b505050565b5f60208284031215610795575f80fd5b5035919050565b80356001600160a01b03811681146107b2575f80fd5b919050565b5f805f606084860312156107c9575f80fd5b83359250602084013591506107e06040850161079c565b90509250925092565b803567ffffffffffffffff811681146107b2575f80fd5b5f8060408385031215610811575f80fd5b82359150610821602084016107e9565b90509250929050565b5f806040838503121561083b575f80fd5b823591506108216020840161079c565b5f805f805f60a0868803121561085f575f80fd5b85359450602086013593506108766040870161079c565b92506108846060870161079c565b9150610892608087016107e9565b90509295509295909350565b5f80604083850312156108af575f80fd5b6108b88361079c565b9150602083013580151581146108cc575f80fd5b809150509250929050565b5f805f80608085870312156108ea575f80fd5b843593506108fa6020860161079c565b92506109086040860161079c565b9150610916606086016107e9565b905092959194509250565b5f8060408385031215610932575f80fd5b61093b8361079c565b91506108216020840161079c56fea164736f6c6343000818000a","storage":{"0xdd4f47a3b6f87903b728feed7a23273bd8de58e4fa257d37a74a5881e5d92ff":"0xf670681605efc4efc804f5a9b97ee89520473d56","0x14ce109f1cffdc11aa7355660be720f902291be09fb159b4c578958cd0f533bc":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x14ce109f1cffdc11aa7355660be720f902291be09fb159b4c578958cd0f533bd":"0x0","0x1e2c8528d7e8e90443ad0a4e37b6f2b1daed719a574ce3a0c347063e8d839d50":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1e2c8528d7e8e90443ad0a4e37b6f2b1daed719a574ce3a0c347063e8d839d51":"0x0","0x2fb4213711fd985fc1fb1ea2bfa660b0b37fd50c6c74ab531d9b54b29dd5177e":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2fb4213711fd985fc1fb1ea2bfa660b0b37fd50c6c74ab531d9b54b29dd5177f":"0x0","0x859ecef2e168dc10231b000bd53493b42bc9d944cac29d94582c1e1d43592131":"0xc965345edac823d56812cd20a10316233916a605","0x8878c6daefcfc78c7f181d00d719b4a0612dd3e65cafeb72507d15c036a9f690":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0xe4fdf45c2f8d198854f8823809c7a988eeaaa493","0xfb5568c6845cf0d5915af088a5d8ba90a5ff735e102c9a79609ef7d043f1108c":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xfb5568c6845cf0d5915af088a5d8ba90a5ff735e102c9a79609ef7d043f1108d":"0x0"}},"0x4872cc1be60a9db9c880a0a437da7a6af134f08f":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100935760003560e01c80637362d9c8116100665780637362d9c8146101285780637b1039991461014e57806399e0dd7c14610172578063bb5f747b146101e2578063d6cd94731461020857610093565b806310154bad14610098578063291d9549146100c05780633af32abf146100e65780634c5a628c14610120575b600080fd5b6100be600480360360208110156100ae57600080fd5b50356001600160a01b0316610210565b005b6100be600480360360208110156100d657600080fd5b50356001600160a01b0316610260565b61010c600480360360208110156100fc57600080fd5b50356001600160a01b03166102ad565b604080519115158252519081900360200190f35b6100be6102c6565b6100be6004803603602081101561013e57600080fd5b50356001600160a01b03166102d1565b61015661031e565b604080516001600160a01b039092168252519081900360200190f35b6100be6004803603602081101561018857600080fd5b8101906020810181356401000000008111156101a357600080fd5b8201836020820111156101b557600080fd5b803590602001918460018302840111640100000000831117156101d757600080fd5b50909250905061032d565b61010c600480360360208110156101f857600080fd5b50356001600160a01b0316610404565b6100be610416565b61021933610404565b6102545760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d8161041f565b50565b61026933610404565b6102a45760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d81610467565b60006102c060018363ffffffff6104af16565b92915050565b6102cf33610516565b565b6102da33610404565b6103155760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d8161055e565b6002546001600160a01b031690565b610336336102ad565b6103715760405162461bcd60e51b815260040180806020018281038252603a815260200180610712603a913960400191505060405180910390fd5b6002546040516369426cbd60e11b8152602060048201908152602482018490526001600160a01b039092169163d284d97a91859185918190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b1580156103e857600080fd5b505af11580156103fc573d6000803e3d6000fd5b505050505050565b60006102c0818363ffffffff6104af16565b6102cf33610467565b61043060018263ffffffff6105a616565b6040516001600160a01b038216907fee1504a83b6d4a361f4c1dc78ab59bfa30d6a3b6612c403e86bb01ef2984295f90600090a250565b61047860018263ffffffff61062716565b6040516001600160a01b038216907f270d9b30cf5b0793bbfd54c9d5b94aeb49462b8148399000265144a8722da6b690600090a250565b60006001600160a01b0382166104f65760405162461bcd60e51b81526004018080602001828103825260228152602001806106b06022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b61052760008263ffffffff61062716565b6040516001600160a01b038216907f0a8eb35e5ca14b3d6f28e4abf2f128dbab231a58b56e89beb5d636115001e16590600090a250565b61056f60008263ffffffff6105a616565b6040516001600160a01b038216907f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129990600090a250565b6105b082826104af565b15610602576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b61063182826104af565b61066c5760405162461bcd60e51b815260040180806020018281038252602181526020018061068f6021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f206164647265737357686974656c69737441646d696e526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c69737441646d696e20726f6c6557686974656c6973746564526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c697374656420726f6c65a265627a7a72315820debca60946c0819dc5b5c2756c5c1dd8dd8a46f2429fa8a43a4f4362af3030c164736f6c634300050c0032","storage":{"0x2":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x5ac40fcee41fb0272a935f6e51e963102fba5db6f20e897e9361f0347eb2cae6":"0x1","0xdc4aeb95a779c8b92b845e3a94044db8ff2e43acc37da18c4b35a6bbad7c122f":"0x1"}},"0x49da8861c65460639925febe1fb4b5b59b443082":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f7e83aee1461002d575b5f80fd5b61004061003b3660046101ac565b610054565b604051901515815260200160405180910390f35b5f602082146100a95760405162461bcd60e51b815260206004820152601a60248201527f496e76616c6964207368613235362068617368206c656e677468000000000000604482015260640160405180910390fd5b6100eb5f84848080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101459050565b600286866040516100fd929190610213565b602060405180830381855afa158015610118573d5f803e3d5ffd5b5050506040513d601f19601f8201168201806040525081019061013b9190610222565b1495945050505050565b81515f90610154836020610239565b111561015e575f80fd5b50016020015190565b5f8083601f840112610177575f80fd5b50813567ffffffffffffffff81111561018e575f80fd5b6020830191508360208285010111156101a5575f80fd5b9250929050565b5f805f80604085870312156101bf575f80fd5b843567ffffffffffffffff808211156101d6575f80fd5b6101e288838901610167565b909650945060208701359150808211156101fa575f80fd5b5061020787828801610167565b95989497509550505050565b818382375f9101908152919050565b5f60208284031215610232575f80fd5b5051919050565b8082018082111561025857634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x4a3c194eb88966178bfdd81744dddafed611b830":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061009e5760003560e01c806398650275116100665780639865027514610305578063aa271e1a1461030d578063b2da297914610347578063be362e2e146103c5578063c36c2125146104fe5761009e565b80634c0b0ed2146100a35780637b103999146101595780637caf3ad81461017d5780638ad364f814610258578063983b2d56146102df575b600080fd5b610157600480360360408110156100b957600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156100e357600080fd5b8201836020820111156100f557600080fd5b803590602001918460018302840111600160201b8311171561011657600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506105bd945050505050565b005b61016161074c565b604080516001600160a01b039092168252519081900360200190f35b6101576004803603608081101561019357600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156101bd57600080fd5b8201836020820111156101cf57600080fd5b803590602001918460018302840111600160201b831117156101f057600080fd5b919390926001600160a01b0383351692604081019060200135600160201b81111561021a57600080fd5b82018360208201111561022c57600080fd5b803590602001918460018302840111600160201b8311171561024d57600080fd5b50909250905061075b565b6101576004803603606081101561026e57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561029857600080fd5b8201836020820111156102aa57600080fd5b803590602001918460018302840111600160201b831117156102cb57600080fd5b9193509150356001600160a01b0316610957565b610157600480360360208110156102f557600080fd5b50356001600160a01b0316610b2b565b610157610b7b565b6103336004803603602081101561032357600080fd5b50356001600160a01b0316610b86565b604080519115158252519081900360200190f35b6101576004803603604081101561035d57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561038757600080fd5b82018360208201111561039957600080fd5b803590602001918460018302840111600160201b831117156103ba57600080fd5b509092509050610b9e565b610157600480360360608110156103db57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561040557600080fd5b82018360208201111561041757600080fd5b803590602001918460018302840111600160201b8311171561043857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b81111561048a57600080fd5b82018360208201111561049c57600080fd5b803590602001918460018302840111600160201b831117156104bd57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610bf1945050505050565b6101576004803603606081101561051457600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561053e57600080fd5b82018360208201111561055057600080fd5b803590602001918460018302840111600160201b8311171561057157600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550505090356001600160a01b03169150610dec9050565b6105c633610b86565b6106015760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b039092169163b5466669918591849163ebf0c717916004808301926020929190829003018186803b15801561064f57600080fd5b505afa158015610663573d6000803e3d6000fd5b505050506040513d602081101561067957600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052606060448301908152875160648401528751889360840190602085019080838360005b838110156106e25781810151838201526020016106ca565b50505050905090810190601f16801561070f5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15801561073057600080fd5b505af1158015610744573d6000803e3d6000fd5b505050505050565b6001546001600160a01b031690565b6107cf8686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f89018190048102820181019092528781529250879150869081908401838280828437600092019190915250610bf192505050565b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691632525d06a91869184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b15801561082557600080fd5b505afa158015610839573d6000803e3d6000fd5b505050506040513d602081101561084f57600080fd5b5051604080516001600160e01b031960e085901b1681526004810183815260248201928352604482018d90528d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b1580156108bd57600080fd5b505afa1580156108d1573d6000803e3d6000fd5b505050506040513d60208110156108e757600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b15801561093757600080fd5b505af115801561094b573d6000803e3d6000fd5b50505050505050505050565b6109a58484848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250610bf1915050565b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691632525d06a91849184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b1580156109fb57600080fd5b505afa158015610a0f573d6000803e3d6000fd5b505050506040513d6020811015610a2557600080fd5b5051604080516001600160e01b031960e085901b1681526004810183815260248201928352604482018b90528b928b92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b158015610a9357600080fd5b505afa158015610aa7573d6000803e3d6000fd5b505050506040513d6020811015610abd57600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b158015610b0d57600080fd5b505af1158015610b21573d6000803e3d6000fd5b5050505050505050565b610b3433610b86565b610b6f5760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b610b7881611115565b50565b610b843361115d565b565b6000610b98818363ffffffff6111a516565b92915050565b610bec8383838080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250610bf1915050565b505050565b610bfa33610b86565b610c355760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691630467e014918691849163ebf0c717916004808301926020929190829003018186803b158015610c8357600080fd5b505afa158015610c97573d6000803e3d6000fd5b505050506040513d6020811015610cad57600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052608060448301908152885160848401528851899389939291606482019160a40190602087019080838360005b83811015610d1f578181015183820152602001610d07565b50505050905090810190601f168015610d4c5780820380516001836020036101000a031916815260200191505b50838103825284518152845160209182019186019080838360005b83811015610d7f578181015183820152602001610d67565b50505050905090810190601f168015610dac5780820380516001836020036101000a031916815260200191505b509650505050505050600060405180830381600087803b158015610dcf57600080fd5b505af1158015610de3573d6000803e3d6000fd5b50505050505050565b610df533610b86565b610e305760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b039092169163b5466669918691849163ebf0c717916004808301926020929190829003018186803b158015610e7e57600080fd5b505afa158015610e92573d6000803e3d6000fd5b505050506040513d6020811015610ea857600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052606060448301908152885160648401528851899360840190602085019080838360005b83811015610f11578181015183820152602001610ef9565b50505050905090810190601f168015610f3e5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015610f5f57600080fd5b505af1158015610f73573d6000803e3d6000fd5b50506001546040805163ebf0c71760e01b815290516001600160a01b039092169350632525d06a9250849184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b158015610fcd57600080fd5b505afa158015610fe1573d6000803e3d6000fd5b505050506040513d6020811015610ff757600080fd5b5051604080516001600160e01b031960e085901b16815260048101838152602482019283528a5160448301528a518b93919260640190602085019080838360005b83811015611050578181015183820152602001611038565b50505050905090810190601f16801561107d5780820380516001836020036101000a031916815260200191505b50935050505060206040518083038186803b15801561109b57600080fd5b505afa1580156110af573d6000803e3d6000fd5b505050506040513d60208110156110c557600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b158015610dcf57600080fd5b61112660008263ffffffff61120c16565b6040516001600160a01b038216907f6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f690600090a250565b61116e60008263ffffffff61128d16565b6040516001600160a01b038216907fe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb6669290600090a250565b60006001600160a01b0382166111ec5760405162461bcd60e51b81526004018080602001828103825260228152602001806113466022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b61121682826111a5565b15611268576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b61129782826111a5565b6112d25760405162461bcd60e51b81526004018080602001828103825260218152602001806113256021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe4d696e746572526f6c653a2063616c6c657220646f6573206e6f74206861766520746865204d696e74657220726f6c65526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f2061646472657373a265627a7a72315820c058d70355f7d37ff6b3b61cd850cc4a41893e30048389698c062148bf3d2ff464736f6c634300050c0032","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x789b49055833748af4eaa9affbcd84118ce8770f7e4385b5a3f428626b1f0aff":"0x1","0xdc4aeb95a779c8b92b845e3a94044db8ff2e43acc37da18c4b35a6bbad7c122f":"0x1"}},"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061007b5760003560e01c80639623609d1161004e5780639623609d1461011157806399a88ec414610124578063f2fde38b14610144578063f3b7dead1461016457600080fd5b8063204e1c7a14610080578063715018a6146100bc5780637eff275e146100d35780638da5cb5b146100f3575b600080fd5b34801561008c57600080fd5b506100a061009b366004610499565b610184565b6040516001600160a01b03909116815260200160405180910390f35b3480156100c857600080fd5b506100d1610215565b005b3480156100df57600080fd5b506100d16100ee3660046104bd565b610229565b3480156100ff57600080fd5b506000546001600160a01b03166100a0565b6100d161011f36600461050c565b610291565b34801561013057600080fd5b506100d161013f3660046104bd565b610300565b34801561015057600080fd5b506100d161015f366004610499565b610336565b34801561017057600080fd5b506100a061017f366004610499565b6103b4565b6000806000836001600160a01b03166040516101aa90635c60da1b60e01b815260040190565b600060405180830381855afa9150503d80600081146101e5576040519150601f19603f3d011682016040523d82523d6000602084013e6101ea565b606091505b5091509150816101f957600080fd5b8080602001905181019061020d91906105e2565b949350505050565b61021d6103da565b6102276000610434565b565b6102316103da565b6040516308f2839760e41b81526001600160a01b038281166004830152831690638f283970906024015b600060405180830381600087803b15801561027557600080fd5b505af1158015610289573d6000803e3d6000fd5b505050505050565b6102996103da565b60405163278f794360e11b81526001600160a01b03841690634f1ef2869034906102c990869086906004016105ff565b6000604051808303818588803b1580156102e257600080fd5b505af11580156102f6573d6000803e3d6000fd5b5050505050505050565b6103086103da565b604051631b2ce7f360e11b81526001600160a01b038281166004830152831690633659cfe69060240161025b565b61033e6103da565b6001600160a01b0381166103a85760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b6103b181610434565b50565b6000806000836001600160a01b03166040516101aa906303e1469160e61b815260040190565b6000546001600160a01b031633146102275760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161039f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146103b157600080fd5b6000602082840312156104ab57600080fd5b81356104b681610484565b9392505050565b600080604083850312156104d057600080fd5b82356104db81610484565b915060208301356104eb81610484565b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561052157600080fd5b833561052c81610484565b9250602084013561053c81610484565b9150604084013567ffffffffffffffff8082111561055957600080fd5b818601915086601f83011261056d57600080fd5b81358181111561057f5761057f6104f6565b604051601f8201601f19908116603f011681019083821181831017156105a7576105a76104f6565b816040528281528960208487010111156105c057600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000602082840312156105f457600080fd5b81516104b681610484565b60018060a01b038316815260006020604081840152835180604085015260005b8181101561063b5785810183015185820160600152820161061f565b8181111561064d576000606083870101525b50601f01601f19169290920160600194935050505056fea26469706673582212207ad53e1008cce369999f6b5f2f77109510b404ff1de9b47b639981fd68e6239264736f6c63430008090033","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x4e59b44847b379578588920ca78fbf26c0b4956c":{"nonce":0,"balance":"0x0","code":"0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe03601600081602082378035828234f58015156039578182fd5b8082525050506014600cf3","storage":{}},"0x4eb9de1fc0d800e941f326d6699e9e11969557ea":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063100cdd911461002d575b5f80fd5b61004061003b3660046102cd565b610042565b005b5f5b818110156101b8575f7f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e28484848181106100805761008061033c565b905060200201356040516020016100a1929190918252602082015260400190565b60408051808303601f190181529082905280516020909101206331a9108f60e11b82526004820181905291507f000000000000000000000000107733fed96c4cd390c944a31f5425a7fb98ae5e6001600160a01b0316906323b872dd908290636352211e90602401602060405180830381865afa158015610124573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101489190610350565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015261dead6024820152604481018490526064015f604051808303815f87803b158015610195575f80fd5b505af11580156101a7573d5f803e3d5ffd5b505060019093019250610044915050565b5080156102c9577f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e282826101ed60018261037d565b8181106101fc576101fc61033c565b9050602002013560405160200161021d929190918252602082015260400190565b604051602081830303815290604052805190602001205f1c7f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e283835f8181106102685761026861033c565b90506020020135604051602001610289929190918252602082015260400190565b60408051601f19818403018152908290528051602090910120907fdf423376f9b0ab363b1b4d6f0b4cb6821921ec30f491555a97236a8a38ce095a905f90a35b5050565b5f80602083850312156102de575f80fd5b823567ffffffffffffffff808211156102f5575f80fd5b818501915085601f830112610308575f80fd5b813581811115610316575f80fd5b8660208260051b850101111561032a575f80fd5b60209290920196919550909350505050565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215610360575f80fd5b81516001600160a01b0381168114610376575f80fd5b9392505050565b8181038181111561039c57634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x4fbf7b2f171336958be5d15ff762a5cff5363568":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061011b575f3560e01c80638d839ffe1161009d578063aeb8ce9b11610062578063aeb8ce9b14610356578063ce1e09c014610375578063d3419bf3146103a8578063f14fcbc8146103db578063f2fde38b146103fa575f80fd5b80638d839ffe146102a25780638da5cb5b146102d55780639791c097146102f1578063a8e5fbc014610310578063acf1a84114610343575f80fd5b806374694a2b116100e357806374694a2b146101c957806380869853146101dc578063839df9451461022757806383e7f6ff146102525780638a95b09f1461028c575f80fd5b806301ffc9a71461011f5780633ccfd60b146101535780635d3590d51461016957806365a69dcf14610188578063715018a6146101b5575b5f80fd5b34801561012a575f80fd5b5061013e610139366004611145565b610419565b60405190151581526020015b60405180910390f35b34801561015e575f80fd5b5061016761044f565b005b348015610174575f80fd5b50610167610183366004611187565b610489565b348015610193575f80fd5b506101a76101a23660046112e4565b610507565b60405190815260200161014a565b3480156101c0575f80fd5b5061016761058b565b6101676101d73660046113db565b61059e565b3480156101e7575f80fd5b5061020f7f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5681565b6040516001600160a01b03909116815260200161014a565b348015610232575f80fd5b506101a761024136600461149d565b60016020525f908152604090205481565b34801561025d575f80fd5b5061027161026c3660046114b4565b610894565b6040805182518152602092830151928101929092520161014a565b348015610297575f80fd5b506101a76224ea0081565b3480156102ad575f80fd5b506101a77f000000000000000000000000000000000000000000000000000000000000025881565b3480156102e0575f80fd5b505f546001600160a01b031661020f565b3480156102fc575f80fd5b5061013e61030b3660046114f6565b6109c9565b34801561031b575f80fd5b5061020f7f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e1841720481565b610167610351366004611528565b6109dd565b348015610361575f80fd5b5061013e6103703660046114f6565b610b7b565b348015610380575f80fd5b506101a77f000000000000000000000000000000000000000000000000000000000001518081565b3480156103b3575f80fd5b5061020f7f000000000000000000000000ec71e4e674fe0f432693dc2b935c34bd2774c00381565b3480156103e6575f80fd5b506101676103f536600461149d565b610c22565b348015610405575f80fd5b50610167610414366004611570565b610c95565b5f6001600160e01b031982166301ffc9a760e01b148061044957506001600160e01b0319821663612e8c0960e01b145b92915050565b5f80546040516001600160a01b03909116914780156108fc02929091818181858888f19350505050158015610486573d5f803e3d5ffd5b50565b610491610d0b565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af11580156104dd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105019190611589565b50505050565b885160208a01205f90841580159061052657506001600160a01b038716155b15610544576040516334fd817160e21b815260040160405180910390fd5b808a8a8a8a8a8a8a8a6040516020016105659998979695949392919061165e565b604051602081830303815290604052805190602001209150509998505050505050505050565b610593610d0b565b61059c5f610d64565b565b5f6105df8b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c9250610894915050565b602081015181519192506105f2916116d5565b3410156106125760405163044044a560e21b815260040160405180910390fd5b6106b38b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f82011690508083019250505050505050896106ae8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f820116905080830192505050505050508d8d8d8d8d8d8d8d610507565b610db3565b604051635200a4c160e11b81525f906001600160a01b037f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e18417204169063a40149829061070b908f908f908f908f908e908b906004016116e8565b6020604051808303815f875af1158015610727573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061074b9190611732565b9050841561077657610776878d8d604051610767929190611749565b60405180910390208888610ece565b83156107be576107be8c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508b9250339150610f939050565b896001600160a01b03168c8c6040516107d8929190611749565b60405180910390207f69e37f151eb98a09618ddaa80c8cfaf1ce5996867c489f45b555b412271ebf278e8e865f015187602001518760405161081e959493929190611758565b60405180910390a36020820151825161083791906116d5565b341115610886576020820151825133916108fc9161085591906116d5565b61085f9034611788565b6040518115909202915f818181858888f19350505050158015610884573d5f803e3d5ffd5b505b505050505050505050505050565b604080518082019091525f808252602082015282516020840120604051636b727d4360e11b8152600481018290527f000000000000000000000000ec71e4e674fe0f432693dc2b935c34bd2774c0036001600160a01b03908116916350e9a7159187917f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063d6e4fa8690602401602060405180830381865afa158015610940573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109649190611732565b866040518463ffffffff1660e01b8152600401610983939291906117e8565b6040805180830381865afa15801561099d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109c1919061180c565b949350505050565b5f60036109d583611044565b101592915050565b5f83836040516109ee929190611749565b604080519182900382206020601f8701819004810284018101909252858352925082915f91610a39919088908890819084018382808284375f92019190915250889250610894915050565b8051909150341015610a5e5760405163044044a560e21b815260040160405180910390fd5b60405163c475abff60e01b815260048101839052602481018590525f907f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b03169063c475abff906044016020604051808303815f875af1158015610acb573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610aef9190611732565b8251909150341115610b3457815133906108fc90610b0d9034611788565b6040518115909202915f818181858888f19350505050158015610b32573d5f803e3d5ffd5b505b837f3da24c024582931cfaf8267d8ed24d13a82a8068d5bd337d30ec45cea4e506ae88883485604051610b6a9493929190611859565b60405180910390a250505050505050565b805160208201205f90610b8d836109c9565b8015610c1b57506040516312dc929d60e31b8152600481018290527f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b0316906396e494e890602401602060405180830381865afa158015610bf7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c1b9190611589565b9392505050565b5f818152600160205260409020544290610c5d907f0000000000000000000000000000000000000000000000000000000000015180906116d5565b10610c8357604051630a059d7160e01b8152600481018290526024015b60405180910390fd5b5f908152600160205260409020429055565b610c9d610d0b565b6001600160a01b038116610d025760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610c7a565b61048681610d64565b5f546001600160a01b0316331461059c5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610c7a565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f818152600160205260409020544290610dee907f0000000000000000000000000000000000000000000000000000000000000258906116d5565b1115610e1057604051635320bcf960e01b815260048101829052602401610c7a565b5f818152600160205260409020544290610e4b907f0000000000000000000000000000000000000000000000000000000000015180906116d5565b11610e6c5760405163cb7690d760e01b815260048101829052602401610c7a565b610e7583610b7b565b610e9457826040516308eee0fd60e31b8152600401610c7a919061187f565b5f818152600160205260408120556224ea00821015610ec957604051639a71997b60e01b815260048101839052602401610c7a565b505050565b604080517f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae6020808301919091528183018690528251808303840181526060830193849052805191012063e32954eb60e01b90925285906001600160a01b0382169063e32954eb90610f4890859088908890606401611891565b5f604051808303815f875af1158015610f63573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052610f8a91908101906118b3565b50505050505050565b7f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d566001600160a01b0316637a806d6b33838587604051602001610fd691906119a7565b6040516020818303038152906040526040518563ffffffff1660e01b815260040161100494939291906119ce565b6020604051808303815f875af1158015611020573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105019190611732565b80515f90819081905b8082101561113c575f85838151811061106857611068611a0b565b01602001516001600160f81b0319169050600160ff1b811015611097576110906001846116d5565b9250611129565b600760fd1b6001600160f81b0319821610156110b8576110906002846116d5565b600f60fc1b6001600160f81b0319821610156110d9576110906003846116d5565b601f60fb1b6001600160f81b0319821610156110fa576110906004846116d5565b603f60fa1b6001600160f81b03198216101561111b576110906005846116d5565b6111266006846116d5565b92505b508261113481611a1f565b93505061104d565b50909392505050565b5f60208284031215611155575f80fd5b81356001600160e01b031981168114610c1b575f80fd5b80356001600160a01b0381168114611182575f80fd5b919050565b5f805f60608486031215611199575f80fd5b6111a28461116c565b92506111b06020850161116c565b9150604084013590509250925092565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff811182821017156111fd576111fd6111c0565b604052919050565b5f67ffffffffffffffff82111561121e5761121e6111c0565b50601f01601f191660200190565b5f82601f83011261123b575f80fd5b813561124e61124982611205565b6111d4565b818152846020838601011115611262575f80fd5b816020850160208301375f918101602001919091529392505050565b5f8083601f84011261128e575f80fd5b50813567ffffffffffffffff8111156112a5575f80fd5b6020830191508360208260051b85010111156112bf575f80fd5b9250929050565b8015158114610486575f80fd5b803561ffff81168114611182575f80fd5b5f805f805f805f805f6101008a8c0312156112fd575f80fd5b893567ffffffffffffffff80821115611314575f80fd5b6113208d838e0161122c565b9a5061132e60208d0161116c565b995060408c0135985060608c0135975061134a60808d0161116c565b965060a08c013591508082111561135f575f80fd5b5061136c8c828d0161127e565b90955093505060c08a0135611380816112c6565b915061138e60e08b016112d3565b90509295985092959850929598565b5f8083601f8401126113ad575f80fd5b50813567ffffffffffffffff8111156113c4575f80fd5b6020830191508360208285010111156112bf575f80fd5b5f805f805f805f805f806101008b8d0312156113f5575f80fd5b8a3567ffffffffffffffff8082111561140c575f80fd5b6114188e838f0161139d565b909c509a508a915061142c60208e0161116c565b995060408d0135985060608d0135975061144860808e0161116c565b965060a08d013591508082111561145d575f80fd5b5061146a8d828e0161127e565b90955093505060c08b013561147e816112c6565b915061148c60e08c016112d3565b90509295989b9194979a5092959850565b5f602082840312156114ad575f80fd5b5035919050565b5f80604083850312156114c5575f80fd5b823567ffffffffffffffff8111156114db575f80fd5b6114e78582860161122c565b95602094909401359450505050565b5f60208284031215611506575f80fd5b813567ffffffffffffffff81111561151c575f80fd5b6109c18482850161122c565b5f805f6040848603121561153a575f80fd5b833567ffffffffffffffff811115611550575f80fd5b61155c8682870161139d565b909790965060209590950135949350505050565b5f60208284031215611580575f80fd5b610c1b8261116c565b5f60208284031215611599575f80fd5b8151610c1b816112c6565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b5f838385526020808601955060208560051b830101845f5b8781101561165157848303601f19018952813536889003601e19018112611609575f80fd5b8701848101903567ffffffffffffffff811115611624575f80fd5b803603821315611632575f80fd5b61163d8582846115a4565b9a86019a94505050908301906001016115e4565b5090979650505050505050565b8981526001600160a01b03898116602083015260408201899052606082018890528616608082015261010060a082018190525f9061169f83820187896115cc565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610449576104496116c1565b60a081525f6116fb60a08301888a6115a4565b6001600160a01b03968716602084015260408301959095525091909316606082015261ffff90921660809092019190915292915050565b5f60208284031215611742575f80fd5b5051919050565b818382375f9101908152919050565b608081525f61176b6080830187896115a4565b602083019590955250604081019290925260609091015292915050565b81810381811115610449576104496116c1565b5f5b838110156117b557818101518382015260200161179d565b50505f910152565b5f81518084526117d481602086016020860161179b565b601f01601f19169290920160200192915050565b606081525f6117fa60608301866117bd565b60208301949094525060400152919050565b5f6040828403121561181c575f80fd5b6040516040810181811067ffffffffffffffff8211171561183f5761183f6111c0565b604052825181526020928301519281019290925250919050565b606081525f61186c6060830186886115a4565b6020830194909452506040015292915050565b602081525f610c1b60208301846117bd565b838152604060208201525f6118aa6040830184866115cc565b95945050505050565b5f60208083850312156118c4575f80fd5b825167ffffffffffffffff808211156118db575f80fd5b818501915085601f8301126118ee575f80fd5b815181811115611900576119006111c0565b8060051b61190f8582016111d4565b9182528381018501918581019089841115611928575f80fd5b86860192505b8383101561199a57825185811115611944575f80fd5b8601603f81018b13611954575f80fd5b87810151604061196661124983611205565b8281528d82848601011115611979575f80fd5b611988838c830184870161179b565b8552505050918601919086019061192e565b9998505050505050505050565b5f82516119b881846020870161179b565b6305ccae8d60e31b920191825250600401919050565b6001600160a01b0385811682528481166020830152831660408201526080606082018190525f90611a01908301846117bd565b9695505050505050565b634e487b7160e01b5f52603260045260245ffd5b5f60018201611a3057611a306116c1565b506001019056fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x5155f5627bdf9795b3dbb8887001ada1eeba93f2":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063de8f50a11461002d575b5f80fd5b61004761003b3660046100a0565b60019695505050505050565b604051901515815260200160405180910390f35b5f8083601f84011261006b575f80fd5b50813567ffffffffffffffff811115610082575f80fd5b602083019150836020828501011115610099575f80fd5b9250929050565b5f805f805f80606087890312156100b5575f80fd5b863567ffffffffffffffff808211156100cc575f80fd5b6100d88a838b0161005b565b909850965060208901359150808211156100f0575f80fd5b6100fc8a838b0161005b565b90965094506040890135915080821115610114575f80fd5b5061012189828a0161005b565b979a969950949750929593949250505056fea164736f6c6343000818000a","storage":{}},"0x54563a9e1cd2dcbd0bca90d3cfa4a647e02c404a":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106101db575f3560e01c80638da5cb5b116100fd578063c4d66de811610092578063daea85c511610062578063daea85c51461055e578063e7acab241461057d578063f2fde38b1461059c578063ffa1ad74146105bb575f80fd5b8063c4d66de8146104e1578063d539139314610500578063d547741f14610520578063d9caed121461053f575f80fd5b8063a217fddf116100cd578063a217fddf14610452578063a3f4df7e14610465578063a4247400146104a3578063aa271e1a146104c2575f80fd5b80638da5cb5b146103d957806391d1485414610400578063983b2d561461041f578063986502751461043e575f80fd5b80635c975abb11610173578063715018a611610143578063715018a61461037f57806371e2a6571461039357806381c81d35146103b25780638456cb59146103c5575f80fd5b80635c975abb146103165780635fc1964f1461032e578063634486da1461034d5780636ccbae5f14610360575f80fd5b80633092afd5116101ae5780633092afd51461029c57806336568abe146102bb5780633f4ba83a146102da578063572b6c05146102ee575f80fd5b806301ffc9a7146101df5780631bf7e13e14610213578063248a9ca31461023f5780632f2ff15d1461027b575b5f80fd5b3480156101ea575f80fd5b506101fe6101f9366004611ee0565b6105eb565b60405190151581526020015b60405180910390f35b34801561021e575f80fd5b5061023261022d366004611f07565b610621565b60405161020a9190611fe9565b34801561024a575f80fd5b5061026d610259366004611ffb565b5f90815260fb602052604090206001015490565b60405190815260200161020a565b348015610286575f80fd5b5061029a610295366004612036565b6106ea565b005b3480156102a7575f80fd5b5061029a6102b6366004612064565b610713565b3480156102c6575f80fd5b5061029a6102d5366004612036565b610727565b3480156102e5575f80fd5b5061029a6107ba565b3480156102f9575f80fd5b506101fe610308366004612064565b6001600160a01b0316301490565b348015610321575f80fd5b5061012d5460ff166101fe565b348015610339575f80fd5b5061029a6103483660046120eb565b6107d4565b61029a61035b366004612064565b610811565b34801561036b575f80fd5b5061026d61037a366004611ffb565b6108d1565b34801561038a575f80fd5b5061029a61092a565b34801561039e575f80fd5b5061029a6103ad3660046120eb565b61093b565b61029a6103c0366004612064565b610978565b3480156103d0575f80fd5b5061029a6109f5565b3480156103e4575f80fd5b506097546040516001600160a01b03909116815260200161020a565b34801561040b575f80fd5b506101fe61041a366004612036565b610a0d565b34801561042a575f80fd5b5061029a610439366004612064565b610a37565b348015610449575f80fd5b5061029a610a48565b34801561045d575f80fd5b5061026d5f81565b348015610470575f80fd5b506102326040518060400160405280601381526020017229b2b0b837b93a10283937bc3c90213abcb2b960691b81525081565b3480156104ae575f80fd5b506101fe6104bd366004611f07565b610a61565b3480156104cd575f80fd5b506101fe6104dc366004612064565b610ab2565b3480156104ec575f80fd5b5061029a6104fb366004612064565b610aca565b34801561050b575f80fd5b5061026d5f80516020612ea783398151915281565b34801561052b575f80fd5b5061029a61053a366004612036565b610c21565b34801561054a575f80fd5b5061029a61055936600461218b565b610c45565b348015610569575f80fd5b5061029a610578366004612064565b610cf7565b348015610588575f80fd5b506101fe6105973660046121c9565b610dac565b3480156105a7575f80fd5b5061029a6105b6366004612064565b6111db565b3480156105c6575f80fd5b5061023260405180604001604052806005815260200164302e302e3160d81b81525081565b5f6001600160e01b03198216637965db0b60e01b148061061b57506301ffc9a760e01b6001600160e01b03198316145b92915050565b60605f5a9050610632858585610a61565b61064f57604051638baa579f60e01b815260040160405180910390fd5b6106df61065f6020870187612064565b3060408801358461067360608b018b61227b565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f920191909152506111f692505050565b9150505b9392505050565b5f82815260fb6020526040902060010154610704816112d4565b61070e83836112e5565b505050565b61071b61136b565b610724816113e4565b50565b61072f6113fb565b6001600160a01b0316816001600160a01b0316146107ac5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6107b68282611409565b5050565b6107c261136b565b6107ca61148d565b6107d26114d7565b565b6107dc61136b565b5f5b81518110156107b6576108098282815181106107fc576107fc6122bd565b60200260200101516113e4565b6001016107de565b61081c6104dc6113fb565b6108385760405162461bcd60e51b81526004016107a3906122d1565b6001600160a01b03811661088e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016107a3565b61089781611530565b61089f610a48565b6040516001600160a01b038216903480156108fc02915f818181858888f193505050501580156107b6573d5f803e3d5ffd5b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f90610923906060016040516020818303038152906040528051906020012090565b5492915050565b61093261136b565b6107d25f611547565b61094361136b565b5f5b81518110156107b657610970828281518110610963576109636122bd565b6020026020010151611530565b600101610945565b6109836104dc6113fb565b61099f5760405162461bcd60e51b81526004016107a3906122d1565b6001600160a01b0381166108975760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016107a3565b6109fd61136b565b610a05611598565b6107d26115df565b5f91825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610a3f61136b565b61072481611530565b6107d25f80516020612ea78339815191526102d56113fb565b5f610aaa610a6e85612306565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061161e92505050565b949350505050565b5f61061b5f80516020612ea783398151915283610a0d565b5f54610100900460ff1615808015610ae857505f54600160ff909116105b80610b015750303b158015610b0157505f5460ff166001145b610b645760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107a3565b5f805460ff191660011790558015610b85575f805461ff0019166101001790555b61015f80546001600160a01b0319166001600160a01b038416179055610ba9611759565b610bb1611786565b610bb9611786565b610bc1611786565b610bc96117ac565b610bd16117e2565b610bd9611819565b80156107b6575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b5f82815260fb6020526040902060010154610c3b816112d4565b61070e8383611409565b610c4d61136b565b600260335403610c6f5760405162461bcd60e51b81526004016107a3906123c2565b6002603355610c7c611598565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af1158015610cc8573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cec91906123f9565b505060016033555050565b610cff61136b565b600260335403610d215760405162461bcd60e51b81526004016107a3906123c2565b6002603355610d2e611598565b61015f5460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529082169063095ea7b3906044016020604051808303815f875af1158015610d7f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610da391906123f9565b50506001603355565b5f610db86104dc6113fb565b610dd45760405162461bcd60e51b81526004016107a3906122d1565b600260335403610df65760405162461bcd60e51b81526004016107a3906123c2565b6002603355610e03611598565b6001600160a01b038216610e2a576040516311d000e160e31b815260040160405180910390fd5b30610e358780612418565b610e46906040810190602001612064565b6001600160a01b031614610e6d57604051639d3c586b60e01b815260040160405180910390fd5b610e75611e67565b610e7f8780612418565b610e8d906020810190612064565b6001600160a01b03168152610ea28780612418565b610eb3906040810190602001612064565b6001600160a01b03166020820152610ecb8780612418565b610ed9906040810190612437565b808060200260200160405190810160405280939291908181526020015f905b82821015610f2457610f1560a08302860136819003810190612489565b81526020019060010190610ef8565b50505050506040820152610f388780612418565b610f46906060810190612506565b808060200260200160405190810160405280939291908181526020015f905b82821015610f9157610f8260c0830286013681900381019061254a565b81526020019060010190610f65565b50505050506060820152610fa58780612418565b610fb69060a08101906080016125e5565b81608001906004811115610fcc57610fcc6125fe565b90816004811115610fdf57610fdf6125fe565b905250610fec8780612418565b60a090810135908201526110008780612418565b60c090810135908201526110148780612418565b60e090810135908201526110288780612418565b610100908101359082015261103d8780612418565b610120908101359082015261015f54815160405163f07ec37360e01b81526001600160a01b03918216600482015291169063f07ec37390602401602060405180830381865afa158015611092573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110b69190612612565b61014082015261015f546040516379df72bd60e01b8152611133916001600160a01b0316906379df72bd906110ef908590600401612737565b602060405180830381865afa15801561110a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061112e9190612612565b61184c565b61015f546040516339eb2ac960e21b81526001600160a01b039091169063e7acab249061116c908a908a908a908a908a90600401612b24565b6020604051808303815f875af1158015611188573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111ac91906123f9565b9150816111cc57604051636725093760e01b815260040160405180910390fd5b50600160335595945050505050565b6111e361136b565b6111ec81611865565b6107245f826118db565b6060611201856118e5565b5f80876001600160a01b03168661121a8b8a898961194a565b6040516112279190612cfa565b5f604051808303815f8787f1925050503d805f8114611261576040519150601f19603f3d011682016040523d82523d5f602084013e611266565b606091505b509092509050611277603f87612d1f565b5a1161128557611285612d3e565b6112c582826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061197a565b925050505b9695505050505050565b610724816112e06113fb565b6119b3565b6112ef8282610a0d565b6107b6575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191660011790556113276113fb565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6113736113fb565b6001600160a01b031661138e6097546001600160a01b031690565b6001600160a01b0316146107d25760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107a3565b6107245f80516020612ea783398151915282610c21565b5f611404611a17565b905090565b6114138282610a0d565b156107b6575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191690556114496113fb565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b61012d5460ff166107d25760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b60448201526064016107a3565b6114df61148d565b61012d805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6115136113fb565b6040516001600160a01b03909116815260200160405180910390a1565b6107245f80516020612ea7833981519152826118db565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b61012d5460ff16156107d25760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b60448201526064016107a3565b6115e7611598565b61012d805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586115136113fb565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015611662573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116869190612612565b90505f6117338660600151805190602001208688602001516040516020016116d39392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156112ca575085516112ca906001600160a01b03168286611a34565b5f54610100900460ff1661177f5760405162461bcd60e51b81526004016107a390612d52565b6001603355565b5f54610100900460ff166107d25760405162461bcd60e51b81526004016107a390612d52565b5f54610100900460ff166117d25760405162461bcd60e51b81526004016107a390612d52565b6107d26117dd6113fb565b611547565b5f54610100900460ff166118085760405162461bcd60e51b81526004016107a390612d52565b6107d25f6118146113fb565b6118db565b5f54610100900460ff1661183f5760405162461bcd60e51b81526004016107a390612d52565b61012d805460ff19169055565b30330361185c5761072481611b6f565b610724816118e5565b61186d61136b565b6001600160a01b0381166118d25760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107a3565b61072481611547565b6107b682826112e5565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f906060016040516020818303038152906040528051906020012090506119398190565b54611945906001612d9d565b905550565b606082858560405160200161196193929190612db0565b6040516020818303038152906040529050949350505050565b606083156119895750816106e3565b8251156119995782518084602001fd5b8160405162461bcd60e51b81526004016107a39190611fe9565b6119bd8282610a0d565b6107b6576119d5816001600160a01b03166014611b99565b6119e0836020611b99565b6040516020016119f1929190612dee565b60408051601f198184030181529082905262461bcd60e51b82526107a391600401611fe9565b5f303303611a2c575060331936013560601c90565b503390565b90565b5f805f611a418585611d2e565b90925090505f816004811115611a5957611a596125fe565b148015611a775750856001600160a01b0316826001600160a01b0316145b15611a87576001925050506106e3565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401611aae929190612e62565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051611aec9190612cfa565b5f60405180830381855afa9150503d805f8114611b24576040519150601f19603f3d011682016040523d82523d5f602084013e611b29565b606091505b5091509150818015611b3c575080516020145b8015611b6357508051630b135d3f60e11b90611b619083016020908101908401612612565b145b98975050505050505050565b611b77611d70565b811461072457604051635637b6af60e11b8152600481018290526024016107a3565b60605f611ba7836002612e7a565b611bb2906002612d9d565b6001600160401b03811115611bc957611bc961207f565b6040519080825280601f01601f191660200182016040528015611bf3576020820181803683370190505b509050600360fc1b815f81518110611c0d57611c0d6122bd565b60200101906001600160f81b03191690815f1a905350600f60fb1b81600181518110611c3b57611c3b6122bd565b60200101906001600160f81b03191690815f1a9053505f611c5d846002612e7a565b611c68906001612d9d565b90505b6001811115611cdf576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611c9c57611c9c6122bd565b1a60f81b828281518110611cb257611cb26122bd565b60200101906001600160f81b03191690815f1a90535060049490941c93611cd881612e91565b9050611c6b565b5083156106e35760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016107a3565b5f808251604103611d62576020830151604084015160608501515f1a611d5687828585611d82565b94509450505050611d69565b505f905060025b9250929050565b5f303303611a315750601f1936013590565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115611db757505f90506003611e5e565b8460ff16601b14158015611dcf57508460ff16601c14155b15611ddf57505f90506004611e5e565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015611e30573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b038116611e58575f60019250925050611e5e565b91505f90505b94509492505050565b6040518061016001604052805f6001600160a01b031681526020015f6001600160a01b0316815260200160608152602001606081526020015f6004811115611eb157611eb16125fe565b81525f6020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b5f60208284031215611ef0575f80fd5b81356001600160e01b0319811681146106e3575f80fd5b5f805f60408486031215611f19575f80fd5b83356001600160401b0380821115611f2f575f80fd5b9085019060808288031215611f42575f80fd5b90935060208501359080821115611f57575f80fd5b818601915086601f830112611f6a575f80fd5b813581811115611f78575f80fd5b876020828501011115611f89575f80fd5b6020830194508093505050509250925092565b5f5b83811015611fb6578181015183820152602001611f9e565b50505f910152565b5f8151808452611fd5816020860160208601611f9c565b601f01601f19169290920160200192915050565b602081525f6106e36020830184611fbe565b5f6020828403121561200b575f80fd5b5035919050565b6001600160a01b0381168114610724575f80fd5b803561203181612012565b919050565b5f8060408385031215612047575f80fd5b82359150602083013561205981612012565b809150509250929050565b5f60208284031215612074575f80fd5b81356106e381612012565b634e487b7160e01b5f52604160045260245ffd5b604051608081016001600160401b03811182821017156120b5576120b561207f565b60405290565b604051601f8201601f191681016001600160401b03811182821017156120e3576120e361207f565b604052919050565b5f60208083850312156120fc575f80fd5b82356001600160401b0380821115612112575f80fd5b818501915085601f830112612125575f80fd5b8135818111156121375761213761207f565b8060051b91506121488483016120bb565b8181529183018401918481019088841115612161575f80fd5b938501935b83851015611b63578435925061217b83612012565b8282529385019390850190612166565b5f805f6060848603121561219d575f80fd5b83356121a881612012565b925060208401356121b881612012565b929592945050506040919091013590565b5f805f805f608086880312156121dd575f80fd5b85356001600160401b03808211156121f3575f80fd5b9087019060a0828a031215612206575f80fd5b9095506020870135908082111561221b575f80fd5b818801915088601f83011261222e575f80fd5b81358181111561223c575f80fd5b8960208260051b8501011115612250575f80fd5b6020830196508095505050506040860135915061226f60608701612026565b90509295509295909350565b5f808335601e19843603018112612290575f80fd5b8301803591506001600160401b038211156122a9575f80fd5b602001915036819003821315611d69575f80fd5b634e487b7160e01b5f52603260045260245ffd5b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b5f60808236031215612316575f80fd5b61231e612093565b823561232981612012565b8152602083810135818301526040808501359083015260608401356001600160401b0380821115612358575f80fd5b9085019036601f83011261236a575f80fd5b81358181111561237c5761237c61207f565b61238e601f8201601f191685016120bb565b915080825236848285010111156123a3575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b5f60208284031215612409575f80fd5b815180151581146106e3575f80fd5b5f823561015e1983360301811261242d575f80fd5b9190910192915050565b5f808335601e1984360301811261244c575f80fd5b8301803591506001600160401b03821115612465575f80fd5b602001915060a081023603821315611d69575f80fd5b803560068110612031575f80fd5b5f60a08284031215612499575f80fd5b60405160a081018181106001600160401b03821117156124bb576124bb61207f565b6040526124c78361247b565b815260208301356124d781612012565b806020830152506040830135604082015260608301356060820152608083013560808201528091505092915050565b5f808335601e1984360301811261251b575f80fd5b8301803591506001600160401b03821115612534575f80fd5b602001915060c081023603821315611d69575f80fd5b5f60c0828403121561255a575f80fd5b60405160c081018181106001600160401b038211171561257c5761257c61207f565b6040526125888361247b565b8152602083013561259881612012565b8060208301525060408301356040820152606083013560608201526080830135608082015260a08301356125cb81612012565b60a08201529392505050565b803560058110612031575f80fd5b5f602082840312156125f5575f80fd5b6106e3826125d7565b634e487b7160e01b5f52602160045260245ffd5b5f60208284031215612622575f80fd5b5051919050565b60068110612639576126396125fe565b9052565b5f815180845260208085019450602084015f5b838110156126a6578151612665888251612629565b838101516001600160a01b03168885015260408082015190890152606080820151908901526080908101519088015260a09096019590820190600101612650565b509495945050505050565b5f815180845260208085019450602084015f5b838110156126a65781516126d9888251612629565b808401516001600160a01b0390811689860152604080830151908a0152606080830151908a0152608080830151908a015260a091820151169088015260c090960195908201906001016126c4565b60058110612639576126396125fe565b602081526127516020820183516001600160a01b03169052565b5f602083015161276c60408401826001600160a01b03169052565b50604083015161016080606085015261278961018085018361263d565b91506060850151601f198584030160808601526127a683826126b1565b92505060808501516127bb60a0860182612727565b5060a085015160c085015260c085015160e085015260e0850151610100818187015280870151915050610120818187015280870151915050610140818187015280870151838701525050508091505092915050565b5f808335601e19843603018112612825575f80fd5b83016020810192503590506001600160401b03811115612843575f80fd5b60a081023603821315611d69575f80fd5b8183525f60208085019450825f5b858110156126a65761287c876128778461247b565b612629565b8282013561288981612012565b6001600160a01b03168388015260408281013590880152606080830135908801526080808301359088015260a09687019690910190600101612862565b5f808335601e198436030181126128db575f80fd5b83016020810192503590506001600160401b038111156128f9575f80fd5b60c081023603821315611d69575f80fd5b8183525f60208085019450825f5b858110156126a65761292d876128778461247b565b8282013561293a81612012565b6001600160a01b039081168885015260408381013590890152606080840135908901526080808401359089015260a0908382013561297781612012565b169088015260c0968701969190910190600101612918565b80356001600160781b0381168114612031575f80fd5b5f808335601e198436030181126129ba575f80fd5b83016020810192503590506001600160401b038111156129d8575f80fd5b803603821315611d69575f80fd5b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b8183525f6001600160fb1b03831115612a25575f80fd5b8260051b80836020870137939093016020019392505050565b8183526020808401935f91600585811b8301820185855b88811015612b1657858303601f19018a52813536899003609e19018112612a7a575f80fd5b88018035845260a08682013560028110612a92575f80fd5b85880152604082810135908601526060808301359086015260808083013536849003601e19018112612ac2575f80fd5b9092018781019290356001600160401b03811115612ade575f80fd5b80881b3603841315612aee575f80fd5b8282880152612b008388018286612a0e565b9d89019d96505050928601925050600101612a55565b509098975050505050505050565b608081525f610120873561015e19893603018112612b40575f80fd5b60a060808501528801612b65828501612b5883612026565b6001600160a01b03169052565b612b7160208201612026565b610140612b88818701836001600160a01b03169052565b612b956040840184612810565b610160888101529250612bad61028088018483612854565b925050612bbd60608401846128c6565b87840361011f1901610180890152612bd684828461290a565b93505050612be6608084016125d7565b612bf46101a0880182612727565b5060a08301356101c087015260c08301356101e087015260e0830135610200870152610100808401356102208801528484013561024088015281840135610260880152612c4360208d0161298f565b6001600160781b03811660a08901529450612c6060408d0161298f565b6001600160781b03811660c08901529450612c7e60608d018d6129a5565b95509350607f199150818784030160e0880152612c9c8386866129e6565b9450612cab60808d018d6129a5565b945092508187860301818801525050612cc58383836129e6565b925050508281036020840152612cdc818789612a3e565b9150508360408301526112ca60608301846001600160a01b03169052565b5f825161242d818460208701611f9c565b634e487b7160e01b5f52601160045260245ffd5b5f82612d3957634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b8082018082111561061b5761061b612d0b565b5f8451612dc1818460208901611f9c565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081525f8351612e25816017850160208801611f9c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351612e56816028840160208801611f9c565b01602801949350505050565b828152604060208201525f610aaa6040830184611fbe565b808202811582820484141761061b5761061b612d0b565b5f81612e9f57612e9f612d0b565b505f19019056fe9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000818000a","storage":{"0x0":"0xff"}},"0x58a175bebc8ec21a94ea63aa5a28743945940ee6":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106101165760003560e01c806391d14854116100a2578063c4d66de811610071578063c4d66de8146103bb578063ca15c873146103e1578063d547741f146103fe578063e375b64e1461042a578063ec87621c146104b957610116565b806391d14854146103635780639559c0bd146103a3578063a217fddf146103ab578063b017a30f146103b357610116565b80634794b430116100e95780634794b4301461024f57806349f5124b14610257578063609c92b81461025f5780638274664f146102675780639010d07c1461032457610116565b8063150b7a021461011b578063248a9ca3146101c65780632f2ff15d146101f557806336568abe14610223575b600080fd5b6101a96004803603608081101561013157600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561016b57600080fd5b82018360208201111561017d57600080fd5b803590602001918460018302840111600160201b8311171561019e57600080fd5b5090925090506104c1565b604080516001600160e01b03199092168252519081900360200190f35b6101e3600480360360208110156101dc57600080fd5b50356104d2565b60408051918252519081900360200190f35b6102216004803603604081101561020b57600080fd5b50803590602001356001600160a01b03166104ea565b005b6102216004803603604081101561023957600080fd5b50803590602001356001600160a01b0316610556565b6101e36105b7565b6101e36105db565b6101e36105ff565b6102216004803603606081101561027d57600080fd5b6001600160a01b038235811692602081013590911691810190606081016040820135600160201b8111156102b057600080fd5b8201836020820111156102c257600080fd5b803590602001918460018302840111600160201b831117156102e357600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610623945050505050565b6103476004803603604081101561033a57600080fd5b5080359060200135610fa2565b604080516001600160a01b039092168252519081900360200190f35b61038f6004803603604081101561037957600080fd5b50803590602001356001600160a01b0316610fc9565b604080519115158252519081900360200190f35b6101e3610fe7565b6101e3610fec565b6101e3610ff1565b610221600480360360208110156103d157600080fd5b50356001600160a01b0316611015565b6101e3600480360360208110156103f757600080fd5b50356110cf565b6102216004803603604081101561041457600080fd5b50803590602001356001600160a01b03166110e6565b6102216004803603608081101561044057600080fd5b6001600160a01b0382358116926020810135821692604082013590921691810190608081016060820135600160201b81111561047b57600080fd5b82018360208201111561048d57600080fd5b803590602001918460018302840111600160201b831117156104ae57600080fd5b50909250905061113f565b6101e36114e6565b630a85bd0160e11b95945050505050565b6000818152602081905260409020600201545b919050565b60008281526020819052604090206002015461050d906105086114f8565b610fc9565b6105485760405162461bcd60e51b815260040180806020018281038252602f815260200180611f42602f913960400191505060405180910390fd5b61055282826114fd565b5050565b61055e6114f8565b6001600160a01b0316816001600160a01b0316146105ad5760405162461bcd60e51b815260040180806020018281038252602f8152602001806120bb602f913960400191505060405180910390fd5b610552828261156c565b7ff871896b17e9cb7a64941c62c188a4f5c621b86800e3d15452ece01ce56073df81565b7ff94915c6d1fd521cee85359239227480c7e8776d7caf1fc3bacad5c269b66a1481565b7fd4392723c111fcb98b073fe55873efb447bcd23cd3e49ec9ea2581930cd01ddc81565b60008051602061204b83398151915261063e816105086114f8565b6001906106de5760405162461bcd60e51b81526020600482019081528254600260001961010060018416150201909116046024830181905290918291604490910190849080156106cf5780601f106106a4576101008083540402835291602001916106cf565b820191906000526020600020905b8154815290600101906020018083116106b257829003601f168201915b50509250505060405180910390fd5b5060606106f26106ed846115db565b611656565b905060606107138260018151811061070657fe5b6020026020010151611656565b90507fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60001b6107568260008151811061074957fe5b60200260200101516117d8565b141561095457600061076e8260018151811061074957fe5b905060006001600160a01b031661078b8360028151811061074957fe5b6001600160a01b0316146107d05760405162461bcd60e51b815260040180806020018281038252602981526020018061206b6029913960400191505060405180910390fd5b600086905060006107e78460038151811061074957fe5b9050816001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b15801561082d57600080fd5b505afa158015610841573d6000803e3d6000fd5b505050506040513d602081101561085757600080fd5b5051156108d35760408051632142170760e11b81523060048201526001600160a01b038581166024830152604482018490529151918416916342842e0e9160648082019260009290919082900301818387803b1580156108b657600080fd5b505af11580156108ca573d6000803e3d6000fd5b5050505061094c565b816001600160a01b03166340c10f1984836040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b15801561093357600080fd5b505af1158015610947573d6000803e3d6000fd5b505050505b505050610f9a565b7ff871896b17e9cb7a64941c62c188a4f5c621b86800e3d15452ece01ce56073df60001b6109888260008151811061074957fe5b1415610c085760006109a08260018151811061074957fe5b905060606109c1846002815181106109b457fe5b6020026020010151611920565b905060608180602001905160208110156109da57600080fd5b8101908080516040519392919084600160201b8211156109f957600080fd5b908301906020820185811115610a0e57600080fd5b82518660208202830111600160201b82111715610a2a57600080fd5b82525081516020918201928201910280838360005b83811015610a57578181015183820152602001610a3f565b5050505091909101604052505082519293508a9150600090505b82811015610bfd576000848281518110610a8757fe5b60200260200101519050826001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610ad557600080fd5b505afa158015610ae9573d6000803e3d6000fd5b505050506040513d6020811015610aff57600080fd5b505115610b7b5760408051632142170760e11b81523060048201526001600160a01b038981166024830152604482018490529151918516916342842e0e9160648082019260009290919082900301818387803b158015610b5e57600080fd5b505af1158015610b72573d6000803e3d6000fd5b50505050610bf4565b826001600160a01b03166340c10f1988836040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b158015610bdb57600080fd5b505af1158015610bef573d6000803e3d6000fd5b505050505b50600101610a71565b505050505050610f9a565b7ff94915c6d1fd521cee85359239227480c7e8776d7caf1fc3bacad5c269b66a1460001b610c3c8260008151811061074957fe5b1415610f63576000610c548260018151811061074957fe5b905060006001600160a01b0316610c718360028151811061074957fe5b6001600160a01b031614610cb65760405162461bcd60e51b815260040180806020018281038252602981526020018061206b6029913960400191505060405180910390fd5b60008690506000610ccd8460038151811061074957fe5b9050816001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610d1357600080fd5b505afa158015610d27573d6000803e3d6000fd5b505050506040513d6020811015610d3d57600080fd5b505115610d9c5760408051632142170760e11b81523060048201526001600160a01b038581166024830152604482018490529151918416916342842e0e9160648082019260009290919082900301818387803b1580156108b657600080fd5b6060610dae866002815181106109b457fe5b90506060818060200190516020811015610dc757600080fd5b8101908080516040519392919084600160201b821115610de657600080fd5b908301906020820185811115610dfb57600080fd5b8251600160201b811182820188101715610e1457600080fd5b82525081516020918201929091019080838360005b83811015610e41578181015183820152602001610e29565b50505050905090810190601f168015610e6e5780820380516001836020036101000a031916815260200191505b506040525050509050836001600160a01b03166394d008ef8685846040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b0316815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610ef3578181015183820152602001610edb565b50505050905090810190601f168015610f205780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015610f4157600080fd5b505af1158015610f55573d6000803e3d6000fd5b505050505050505050610f9a565b60405162461bcd60e51b815260040180806020018281038252602a815260200180611f71602a913960400191505060405180910390fd5b505050505050565b6000828152602081905260408120610fc0908363ffffffff6119ea16565b90505b92915050565b6000828152602081905260408120610fc0908363ffffffff6119f616565b601481565b600081565b7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef81565b60025460ff161561105e576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b61109c6040518060400160405280601781526020017f4d696e7461626c65455243373231507265646963617465000000000000000000815250611a0b565b6110a7600082610548565b6110bf60008051602061204b83398151915282610548565b506002805460ff19166001179055565b6000818152602081905260408120610fc390611aa9565b600082815260208190526040902060020154611104906105086114f8565b6105ad5760405162461bcd60e51b8152600401808060200182810382526030815260200180611fc36030913960400191505060405180910390fd5b60008051602061204b83398151915261115a816105086114f8565b6001906111c05760405162461bcd60e51b81526020600482019081528254600260001961010060018416150201909116046024830181905290918291604490910190849080156106cf5780601f106106a4576101008083540402835291602001916106cf565b50602082141561129f576000838360208110156111dc57600080fd5b5060408051913580835290519092506001600160a01b038088169289821692918b16917fe13244aa06bdc79480ed5fdc6ebe2bb37202fcdf33ecf45dc449f4201f3dc0879181900360200190a460408051632142170760e11b81526001600160a01b038981166004830152306024830152604482018490529151918716916342842e0e9160648082019260009290919082900301818387803b15801561128157600080fd5b505af1158015611295573d6000803e3d6000fd5b5050505050610f9a565b6060838360208110156112b157600080fd5b810190602081018135600160201b8111156112cb57600080fd5b8201836020820111156112dd57600080fd5b803590602001918460208302840111600160201b831117156112fe57600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f8201169050808301925050505050505091929192905050509050846001600160a01b0316866001600160a01b0316886001600160a01b03167fdb55e3a0ae817693fd7b07170d81eab0eb2c239f36fcecbc98b6b58ac5667e7a846040518080602001828103825283818151815260200191508051906020019060200280838360005b838110156113ca5781810151838201526020016113b2565b505050509050019250505060405180910390a48051601481111561141f5760405162461bcd60e51b815260040180806020018281038252602c81526020018061201f602c913960400191505060405180910390fd5b60005b818110156114db57866001600160a01b03166342842e0e8a3086858151811061144757fe5b60200260200101516040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050600060405180830381600087803b1580156114b757600080fd5b505af11580156114cb573d6000803e3d6000fd5b5050600190920191506114229050565b505050505050505050565b60008051602061204b83398151915281565b335b90565b600082815260208190526040902061151b908263ffffffff611ab416565b15610552576115286114f8565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b600082815260208190526040902061158a908263ffffffff611ac916565b15610552576115976114f8565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b6115e3611e6d565b6000825111611639576040805162461bcd60e51b815260206004820152601f60248201527f524c505265616465723a20494e56414c49445f42595445535f4c454e47544800604482015290519081900360640190fd5b506040805180820190915281518152602082810190820152919050565b606061166182611ade565b6116b2576040805162461bcd60e51b815260206004820152601860248201527f524c505265616465723a204954454d5f4e4f545f4c4953540000000000000000604482015290519081900360640190fd5b60006116bd83611b0a565b905060608167ffffffffffffffff811180156116d857600080fd5b5060405190808252806020026020018201604052801561171257816020015b6116ff611e6d565b8152602001906001900390816116f75790505b50905060006117248560200151611b96565b855190915081146117665760405162461bcd60e51b81526004018080602001828103825260278152602001806120946027913960400191505060405180910390fd5b60006117758660200151611c2f565b60208701510190506000805b858110156117cc5761179283611b96565b91506040518060400160405280838152602001848152508582815181106117b557fe5b602090810291909101015291810191600101611781565b50929695505050505050565b60006117e382611ade565b15611835576040805162461bcd60e51b815260206004820181905260248201527f524c505265616465723a204445434f44494e475f4c4953545f41535f55494e54604482015290519081900360640190fd5b81516021101561188c576040805162461bcd60e51b815260206004820152601e60248201527f524c505265616465723a20494e56414c49445f55494e545f4c454e4754480000604482015290519081900360640190fd5b600061189b8360200151611b96565b835190915081146118dd5760405162461bcd60e51b81526004018080602001828103825260278152602001806120ea6027913960400191505060405180910390fd5b60006118ec8460200151611c2f565b8451602080870151830180519394509184900392919083101561191657826020036101000a820491505b5095945050505050565b606060006119318360200151611b96565b835190915081146119735760405162461bcd60e51b8152600401808060200182810382526028815260200180611f9b6028913960400191505060405180910390fd5b60006119828460200151611c2f565b845190915081900360608167ffffffffffffffff811180156119a357600080fd5b506040519080825280601f01601f1916602001820160405280156119ce576020820181803683370190505b5090506000816020019050611916848860200151018285611c92565b6000610fc08383611cdd565b6000610fc0836001600160a01b038416611d41565b806040516020018082805190602001908083835b60208310611a3e5780518252601f199092019160209182019101611a1f565b51815160209384036101000a60001901801990921691161790527f3a20494e53554646494349454e545f5045524d495353494f4e530000000000009190930190815260408051808303600519018152601a909201905280516105529550600194509201919050611e87565b6000610fc382611d59565b6000610fc0836001600160a01b038416611d5d565b6000610fc0836001600160a01b038416611da7565b6020810151805160009190821a9060c0821015611b00576000925050506104e5565b5060019392505050565b600080600090506000611b208460200151611c2f565b602085015185519181019250015b80821015611b8d57611b3f82611b96565b8201915080821115611b825760405162461bcd60e51b815260040180806020018281038252602c815260200180611ff3602c913960400191505060405180910390fd5b600190920191611b2e565b50909392505050565b80516000908190811a6080811015611bb15760019150611c28565b60b8811015611bc657607e1981019150611c28565b60c0811015611bf35760b78103600185019450806020036101000a85510460018201810193505050611c28565b60f8811015611c085760be1981019150611c28565b60f78103600185019450806020036101000a855104600182018101935050505b5092915050565b8051600090811a6080811015611c495760009150506104e5565b60b8811080611c64575060c08110801590611c64575060f881105b15611c735760019150506104e5565b60c0811015611c875760b5190190506104e5565b60f5190190506104e5565b80611c9c57611cd8565b5b60208110611cbc578251825260209283019290910190601f1901611c9d565b8251825160208390036101000a60001901801990921691161782525b505050565b81546000908210611d1f5760405162461bcd60e51b8152600401808060200182810382526022815260200180611f206022913960400191505060405180910390fd5b826000018281548110611d2e57fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000611d698383611d41565b611d9f57508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610fc3565b506000610fc3565b60008181526001830160205260408120548015611e635783546000198083019190810190600090879083908110611dda57fe5b9060005260206000200154905080876000018481548110611df757fe5b600091825260208083209091019290925582815260018981019092526040902090840190558654879080611e2757fe5b60019003818190600052602060002001600090559055866001016000878152602001908152602001600020600090556001945050505050610fc3565b6000915050610fc3565b604051806040016040528060008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611ec857805160ff1916838001178555611ef5565b82800160010185558215611ef5579182015b82811115611ef5578251825591602001919060010190611eda565b50611f01929150611f05565b5090565b6114fa91905b80821115611f015760008155600101611f0b56fe456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e744d696e7461626c654552433732315072656469636174653a20494e56414c49445f5349474e4154555245524c505265616465723a2042595445535f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b65524c505265616465723a204e554d5f4954454d535f4445434f4445445f4c454e4754485f4d49534d415443484d696e7461626c654552433732315072656469636174653a20455843454544535f42415443485f4c494d4954241ecf16d79d0f8dbfb92cbc07fe17840425976cf0667f022fe9877caa831b084d696e7461626c654552433732315072656469636174653a20494e56414c49445f5245434549564552524c505265616465723a204c4953545f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66524c505265616465723a2055494e545f4445434f4445445f4c454e4754485f4d49534d41544348a164736f6c6343000606000a","storage":{"0x1":"0x63","0x2":"0x1","0x73d5d1a274bdea1400ad3ea4d982f594abdfd528cde1486b6c617faa3ec116":"0x1","0x89011777cfe6194dd982545e7eb24725dfe9a1aacae299c76fc48ef5017ae650":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x89011777cfe6194dd982545e7eb24725dfe9a1aacae299c76fc48ef5017ae651":"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0x1","0xb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6":"0x4d696e7461626c654552433732315072656469636174653a20494e5355464649","0xb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf7":"0x4349454e545f5045524d495353494f4e53000000000000000000000000000000","0xba75a66b8132bebab85d36fd3638083da57ae3d78fbcd8cc41f73514287dadaf":"0x1","0xe6c7d8231a06d7cb67831aeabcbd43ba24e5e4c6569cf23405f1e558de8580e0":"0x2","0xe84508f2c7fa9c351146748b3025cb78b45df37d868e48c6a75102fecdeee645":"0x2","0xe84508f2c7fa9c351146748b3025cb78b45df37d868e48c6a75102fecdeee647":"0x0","0xf0df3dcda05b4fbd9c655cde3d5ceb211e019e72ec816e127a59e7195f2cd7f5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x5cc819c9915eadfcebd76952b8c1bc36cadd7376":{"nonce":2,"balance":"0x0","code":"0x608060405260043610610103575f3560e01c8063a900866b11610092578063f07ec37311610062578063f07ec373146102f7578063f2d12b1214610316578063f47b774014610329578063fb0f3ee114610116578063fd9f1e101461034c575f80fd5b8063a900866b1461028a578063b3a34c4c146102be578063e7acab24146102d1578063ed98a574146102e4575f80fd5b80637423eb3c116100d85780637423eb3c146101f757806379df72bd1461020b57806387201b411461022a578063881477321461024b578063a81744041461026a575f80fd5b801561011657806306fdde031461013e57806346423aa71461015f5780635b34b966146101d5575f80fd5b366101125761011061036b565b005b5f80fd5b610129610124366004615115565b6103f9565b60405190151581526020015b60405180910390f35b348015610149575f80fd5b50610152610408565b604051610135919061518f565b34801561016a575f80fd5b506101b36101793660046151a1565b5f9081526001602052604090205460ff808216926101008304909116916001600160781b03620100008204811692600160881b9092041690565b6040805194151585529215156020850152918301526060820152608001610135565b3480156101e0575f80fd5b506101e9610417565b604051908152602001610135565b348015610202575f80fd5b50610110610420565b348015610216575f80fd5b506101e96102253660046151b8565b6104c1565b61023d61023836600461524c565b6104f8565b6040516101359291906153f0565b348015610256575f80fd5b5061012961026536600461543f565b610571565b61027d61027836600461547d565b61058f565b60405161013591906154e3565b348015610295575f80fd5b506101e96102a43660046154f5565b6001600160a01b03165f9081526002602052604090205490565b6101296102cc36600461550e565b61062a565b6101296102df366004615553565b6106a3565b61023d6102f23660046155d7565b6106e1565b348015610302575f80fd5b506101e96103113660046154f5565b610784565b61027d610324366004615677565b6107a1565b348015610334575f80fd5b5061033d6107ea565b60405161013593929190615719565b348015610357575f80fd5b5061012961036636600461543f565b610801565b7f000000000000000000000000000000000000000000000000000000000000000180156103b357600263929eee145c146103b05763a61be9f05f52346020526024601cfd5b50565b63929eee1454806103e057600263929eee145c146103dc5763a61be9f05f52346020526024601cfd5b5050565b600381146103dc5763a61be9f05f52346020526024601cfd5b5f61040261080c565b92915050565b60606104126109c0565b905090565b5f6104126109d8565b63929eee14546001147f000000000000000000000000000000000000000000000000000000000000000180610453575080155b1561047157604051630f45b98b60e41b815260040160405180910390fd5b61049a7f000000000000000000000000145908bbcfc7b258e4d4d9a586f6e3249ae80216610a45565b6104b7576040516370a4078f60e01b815260040160405180910390fd5b5f63929eee145550565b5f806104cd6004610aa3565b90506104f16104e282610ab35b63ffffffff16565b610140830135610b30565b3590565b9392505050565b60608061055d61051361050b6004610aa3565b610c746104da565b61052a61052260046020610cdc565b610cfa6104da565b61054161053960046040610cdc565b610d526104da565b61055061053960046060610cdc565b89338a15028a0189610daa565b915091509b509b9950505050505050505050565b5f6104f161058a6105826004610aa3565b610de46104da565b610e3c565b606061061f6105a96105a16004610aa3565b610f5d6104da565b604080515f8082526020820190925290610601565b6105ee6040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816105be5790505b5061061961061160046020610cdc565b610fb56104da565b3361100d565b90505b949350505050565b5f6104f161064361063b6004610aa3565b61104b6104da565b604080515f808252602082019092529061069b565b6106886040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816106585790505b5084336110c1565b5f6106d76106bc6106b46004610aa3565b6112406104da565b6106cb61052260046020610cdc565b853386150286016110c1565b9695505050505050565b6060806107736106f46105a16004610aa3565b604080515f808252602082019092529061074c565b6107396040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816107095790505b5061075c61053960046020610cdc565b61076b61053960046040610cdc565b883389610daa565b915091509850989650505050505050565b6001600160a01b0381165f90815260208190526040812054610402565b60606107dc6107b361050b6004610aa3565b6107c261052260046020610cdc565b6107d161061160046040610cdc565b33861502860161100d565b90505b979650505050505050565b60605f806107f661129c565b925092509250909192565b5f6104f183836112e8565b5f61012435600281901c90600316600182118334158214806108315761083134611423565b506003841160a0810260240135906502030203010160d01b861a905f630101020360d01b881a6108648882898888611434565b9096509150506101c4600583901b01355f87600581111561088757610887615329565b036108bc5760443560243517156108a557636ab37ce75f526004601cfd5b6108af8482611751565b6108b7611809565b61099d565b6040805160208082528183019092525f9160208201818036833701905050905060028a60058111156108f0576108f0615329565b036109135761090e60c4356084353360e435610104355b8787611889565b610988565b60038a600581111561092757610927615329565b036109455761090e60c4356084353360e435610104355b87876118d4565b60048a600581111561095957610959615329565b036109735761090e60243533608435604435606435610907565b6109886024353360843560443560643561093e565b610992848261190a565b61099b816119c4565b505b6109a88689846119e8565b6109b0611a5e565b6001995050505050505050505090565b6060602080526707536561706f727460475260606020f35b5f6109e1611ab1565b600143034060801c335f525f60205260405f208054820192508281555050336001600160a01b03167f721c20121297512b72821b97f5326877ea8ecf4bb9948fea5bfcb6453074d37f82604051610a3a91815260200190565b60405180910390a290565b5f816001600160a01b0316600a5a610a5d9190615773565b6040515f8181818686fa925050503d805f8114610a95576040519150601f19603f3d011682016040523d82523d5f602084013e610a9a565b606091505b50909392505050565b5f813563ffffffff168201610402565b5f610ac661016060408051918201905290565b9050610ad58282610140611b28565b610af2610aeb610ae6846040610cdc565b611b31565b6040830152565b5f610b06610b01846060610cdc565b611b84565b9050610b13816060840152565b610b26610b1e825190565b610140840152565b50919050565b0190565b610140820151604080519084015180515f939284927fa66999307ad1bb4fde44d13a5d710bd7718e0c87c1eef68a571629fbf5b93d0292602090910190845b81811015610b9c578251601f1901805186825260c082208652905260209384019390920191600101610b6f565b508060051b6040512094505050505f7f42d81c6929ffdc4eb27a0808e40e82516ad42296c166065de7f812492304ff6e915060405160206060890151015f5b86811015610c08578151601f1901805186825260e082208552905260209283019290910190600101610bdb565b505060408051600587901b9020601f198a0180517ffa445660b7e21515a59617fcd68910b487aa5808b8abda3d78bc85df364b2c2f8252928b01805197815260608c018051938152610140909c019a8b5261018082209390915295909552939097525050925250919050565b5f8063ffffffff8335169050600581901b610c986020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610cca610cc4610cbf8484610cdc565b611240565b82850152565b602001610ca7565b5050505050919050565b5f6104f163ffffffff610cf46104ed8686610b2c8516565b16840190565b5f8063ffffffff8335169050600581901b610d1e6020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610d4a610cc4610d458484610cdc565b611bc7565b602001610d2d565b5f8063ffffffff8335169050600581901b610d766020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610da2610cc4610d9d8484610cdc565b611c09565b602001610d85565b60608036155f80610dbe8c8c85898b611c4c565b91509150610dd18c8b8b8b8b8787612029565b9450945050505097509795505050505050565b5f8063ffffffff8335169050600581901b610e086020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610e34610cc4610e2f8484610cdc565b61215b565b602001610e17565b5f610e45611ab1565b5f805f80855190505f5b81811015610f50575f878281518110610e6a57610e6a615792565b60209081029190910101518051909150600481608001516004811115610e9257610e92615329565b03610e9e575050610f48565b80519450610eab8161219e565b5f8181526001602052604081209850909650610ecd90879089903615156121d7565b50865460ff16610f455780610140015181606001515114610ef057610ef0612265565b610eff85878460200151612272565b865460ff191660011787556040517ff280791efe782edcf06ce15c8f4dff17601db3b88eb3805a0db7d77faf757f0490610f3c9088908490615895565b60405180910390a15b50505b600101610e4f565b5060019695505050505050565b5f8063ffffffff8335169050600581901b610f816020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610fad610cc4610fa88484610cdc565b61104b565b602001610f90565b5f8063ffffffff8335169050600581901b610fd96020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257611005610cc46110008484610cdc565b61230e565b602001610fe8565b60605f36151590505f806110258888858b5189611c4c565b9150915061103282612341565b61103f8887848885612380565b98975050505050505050565b5f61105e61020060408051918201905290565b60a0810180825290915061107a61107484610aa3565b82612453565b61108660016020840152565b61109260016040840152565b6110af6110a86110a3856020610cdc565b612489565b6060840152565b610b266110ba6124b1565b6080840152565b835160808101515f91906110e860048260048111156110e2576110e2615329565b146124cb565b5f80806110f78a36151561256c565b60408051600180825281830190925293965091945092505f9190816020015b61111e615027565b8152602001906001900390816111165790505090508a815f8151811061114657611146615792565b602002602001018190525061115b818b612764565b6111678684848b6128dd565b6040805160018082528183019092525f91602080830190803683375091925050503615156004878181111561119e5761119e615329565b146111c1576111af8d83885f6129dd565b6111bb86868684612a2f565b506111d3565b6111d0888e6080015183612b33565b95505b6111de888c8c612c03565b85825f815181106111f1576111f1615792565b6020026020010181815250506112088d8388612d26565b61122586895f01518a602001518d8c604001518d60600151612df3565b61122d611a5e565b5060019c9b505050505050505050505050565b5f61125361020060408051918201905290565b905061126760208381019083016040611b28565b60a0810180825261127a61107484610aa3565b61128b6110a86110a3856060610cdc565b610b266110ba6110a3856080610cdc565b60605f805f6112a9612e58565b90505f7f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c905060605f5281602052806040526303312e3660635260a05ff35b5f6112f1611ab1565b5f8083815b81811015611408573687878381811061131157611311615792565b90506020028101906113239190615977565b90505f61133360208301836154f5565b90505f61134660408401602085016154f5565b90505f61135960a0850160808601615996565b905081331483331417156004821417871796505f61138d61138261137a8790565b610ab36104da565b866101400135610b30565b5f8181526001602052604090819020805461ffff19166101001781559051909a509091506001600160a01b0380851691908616907f6bacc01dbe442496068f7d234edd811f1a5f833243e0aec824f86ab861f3c90d906113f09085815260200190565b60405180910390a385600101955050505050506112f6565b5050801561141857611418612f35565b506001949350505050565b63a61be9f05f52806020526024601cfd5b5f8061143f5f6124cb565b611447612f42565b426101643511154261014435111715611475576321ccfeb75f5261014435602052610164356040526044601cfd5b610204356102643510156114905763466aa6165f526004601cfd5b7f42d81c6929ffdc4eb27a0808e40e82516ad42296c166065de7f812492304ff6e608081905260a08790526060602460c037604060646101203760e060802061016052610264356102043560051b6102a0016001820181526020810190508881526080602460208301376101608860a0528760c0525f60e0525f6102043593505f5b84811015611566578060400261028401602081610100376040816101203760208101358317925060208401935060e0608020845260a0850194508b85528a6020860152604081606087013750600101611512565b6001850160051b610160206060526102643594505b848110156115b6578060400261028401925060a0840193508a845289602085015260408360608601376020830135919091179060010161157b565b506001600160a01b038111156115d3576339f3e3fd5f526004601cfd5b50505050505f7fa66999307ad1bb4fde44d13a5d710bd7718e0c87c1eef68a571629fbf5b93d029050806080528360a052606060c460c0376020610104610120375060c06080205f9081526020812060e05260843590611647826001600160a01b03165f9081526020819052604090205490565b7ffa445660b7e21515a59617fcd68910b487aa5808b8abda3d78bc85df364b2c2f60808190529091506040608460a03760605161010052896101205260a061014461014037816101e05261018060802094505050506102043560051b61018001828152336020820152608060408201526101206060820152600160808201528360a0820152606060c460c083013760a061026435026101e00160a4356084357f9d9af8e38d66c62e2c12f0225249fd9d721c54b83f48d9352c97c6cacdcb6f318385a35f60605260608101820160405250505f61172383612f8d565b905061172f8389612fde565b7101000000000000000000000000000001000182559150509550959350505050565b60c43560843560e4356101043584156117b9575f6040519050632671a55160e11b815260206004820152600160248201528660448201528460648201528360848201523360a48201528260c48201528160e48201526117b38682610104613033565b50611801565b60028660058111156117cd576117cd615329565b036117f457806001146117e3576117e3816130ea565b6117ef848433856130fb565b611801565b61180184843385856131b0565b505050505050565b346064356084356102643560061b5f80805b8381101561185a5761028481013592506102a481013591508683111561184357611843613287565b82870396506118528284613294565b60400161181b565b508585111561186b5761186b613287565b6118758486613294565b848611156118015761180133868803613294565b61189381836132ca565b816118ba57826001146118a9576118a9836130ea565b6118b5878787876130fb565b6118cb565b6118cb828260028a8a8a8a8a6132e8565b50505050505050565b6118dd83613367565b6118e781836132ca565b816118f9576118b587878787876131b0565b6118cb828260038a8a8a8a8a6132e8565b5f805f805f861561192f57505060843592503391505060c4356101043560e435611944565b50339350506084359150506024356064356044355b801561195257611952613379565b50600586901b6101e403356102643560061b5f80805b838110156119a95761028481013592506102a481013591508a156119935761199083876159b4565b95505b6119a1878a8486898f613386565b604001611968565b506119b886898988888e613386565b50505050505050505050565b60408151146119d05750565b5f6119dc826020015190565b90506103dc81836133bb565b611a048260a4355b331415600182116004909210919091161690565b15611a5957805f611a13825190565b9050608081901c63ffffffff8216611a3484826317b1f94282526001905250565b601c840163fb5014fc6060529350611a5060a4358886856133df565b5f6060526118cb565b505050565b7f00000000000000000000000000000000000000000000000000000000000000018015611a8f575f63929eee145d50565b63929eee145480611aa5575f63929eee145d5050565b50600163929eee145550565b7f00000000000000000000000000000000000000000000000000000000000000018015611af05763929eee145c156103b057637fa8a9875f526004601cfd5b63929eee145480611b135763929eee145c156103dc57637fa8a9875f526004601cfd5b600181146103dc57637fa8a9875f526004601cfd5b80838337505050565b5f63ffffffff8235166040519150808252602082018160051b81018060a084026020870183378293505b81841015611b745780845260209093019260a001611b5b565b60405250919392505050565b9052565b5f63ffffffff8235166040519150808252602082018160051b81018060c084026020870183378293505b81841015611b745780845260209093019260c001611bae565b5f611bd960a060408051918201905290565b9050611be782826080611b28565b611c04611bfd611bf8846080610cdc565b613427565b6080830152565b919050565b5f63ffffffff8235166040519150808252602082018160051b8101808360061b6020870183378293505b81841015611b7457808452602090930192604001611c33565b60605f611c5960016124cb565b86515f90600160e61b82351690806001600160401b03811115611c7e57611c7e61574b565b604051908082528060200260200182016040528015611ca7578160200160208202803683370190505b50945060010160051b91505f60205b83811015611ea8575f611ccc8c83613cce6104da565b90505f805f611cdb848e61256c565b6001600160781b0382166020880152919450925090505f829003611d025750505050611ea0565b6001600160781b0381166040808601919091528a8601849052845160a081015160c0820151608083015192909301518051600184119d909d179c600490931099509092915f5b81811015611dea575f838281518110611d6357611d63615792565b602002602001015190508b8151108d179c505f611d858989846080015161345e565b90508160800151826060015103611da25760608201819052611db7565b611db18989846060015161345e565b60608301525b5f611dd08360600151838a8a611dcb361590565b61349a565b606084018190526080909301929092525050600101611d48565b5087516060015180515f5b81811015611e94575f838281518110611e1057611e10615792565b602002602001015190505f611e2a8b8b846080015161345e565b90508160800151826060015103611e475760608201819052611e5c565b611e568b8b846060015161345e565b60608301525b5f611e718360600151838c8c611dcb36151590565b6060840181905260a0840180516080909501949094529092525050600101611df5565b50505050505050505050505b602001611cb6565b50506001600160e61b018103611ec057611ec06134ed565b50611ecb8888612764565b5f8060205b8381101561200e578581015192508215612006575f611ef28c83613cce6104da565b9050885f03611f0d575f878301819052602090910152612006565b60048151608001516004811115611f2657611f26615329565b14611fa957611f3f8188866001600587901c038e6134fa565b611f55575f878301819052602090910152612006565b602080820151604083015183516080810151930151611f8e9388936001600160781b039081169316913314156001909111168e17612a2f565b611fa4575f878301819052602090910152612006565b611fd4565b611fbb815f015182608001518c612b33565b878301819052935083611fd4575f602090910152612006565b886001900398505f815f01519050611fff85825f015183602001518c85604001518660600151612df3565b6001935050505b602001611ed0565b508061201c5761201c613555565b5050509550959350505050565b85518551606091829161203c81836159c7565b6001600160401b038111156120535761205361574b565b60405190808252806020026020018201604052801561208c57816020015b61207961505a565b8152602001906001900390816120715790505b5092505f5b828110156120e4576120bf8c5f8d84815181106120b0576120b0615792565b60200260200101518c8c613562565b8482815181106120d1576120d1615792565b6020908102919091010152600101612091565b505f5b8181101561213d576121168c60018c848151811061210757612107615792565b60200260200101518c5f613562565b848483018151811061212a5761212a615792565b60209081029190910101526001016120e7565b5061214b8b84888a896135b1565b9350505097509795505050505050565b5f61216c6040808051918201905290565b905061218661218261217d84610aa3565b61389a565b8252565b611c046121976110a3846020610cdc565b6020830152565b5f6121b38260600151518361014001516138b9565b81516001600160a01b03165f90815260208190526040902054610402908390610b30565b82545f90610100900460ff16156121fe5781156121f7576121f7856138c9565b505f610622565b83546201000090046001600160781b0316801561225957831561222957612224866138da565b612259565b8454600160881b90046001600160781b0316811061225957821561225057612250866138eb565b5f915050610622565b50600195945050505050565b632165628a5f526004601cfd5b33831480156122815750505050565b5f61228a612e58565b61190160f01b5f9081526002828152602287815260428320908390528651939450929190601f601d840116106102e260621984011016156122f4576122cf86886138fc565b61190160f01b5f908152600286905260228281526042822091905290975090506122f7565b50815b612304888285858a613992565b5050505050505050565b5f61231f6040808051918201905290565b9050612330612182610d9d84610aa3565b611c04612197610d9d846020610cdc565b80518060051b6040019050602082038051602082527f4b9f2d36e1b4c93de62cc077b00b1a91d84b6c31b4a14e012718dcca230689e78383a190525050565b8351606090806001600160401b0381111561239d5761239d61574b565b6040519080825280602002602001820160405280156123d657816020015b6123c361505a565b8152602001906001900390816123bb5790505b5091505f5b81811015612439575f8782815181106123f6576123f6615792565b6020026020010151905061241389825f0151836020015185613adb565b84838151811061242557612425615792565b6020908102919091010152506001016123db565b5061244787838787876135b1565b50505b95945050505050565b6124608282610160611b28565b612471610aeb610ae6846040610cdc565b6103dc612482610b01846060610cdc565b6060830152565b6040518135601f0163ffffffe01660200180838337913563ffffffff16815290810160405290565b5f6124c3602060408051918201905290565b5f8152905090565b7f000000000000000000000000000000000000000000000000000000000000000180156125185763929eee145c1561250a57637fa8a9875f526004601cfd5b8160010163929eee145d5050565b63929eee14548061254a5763929eee145c1561253b57637fa8a9875f526004601cfd5b8260010163929eee145d505050565b6001811461255f57637fa8a9875f526004601cfd5b505060020163929eee1455565b5f805f80855f015190506125898160a001518260c0015187613c80565b61259c57505f925082915081905061275d565b602086015160408701516001600160781b0391821694501691505f6004826080015160048111156125cf576125cf615329565b036125fc57600183850218905080156125ea576125ea613ca3565b506001935083925082915061275d9050565b50818311831517801561261157612611613ca3565b608082015160011615848411161561262b5761262b613cb0565b6126348261219e565b5f81815260016020526040812091965061265290879083908a6121d7565b61266557505f935083925061275d915050565b805460ff1661268057612680835f0151878a60600151612272565b8054608881901c8061269457869150612757565b6001600160781b038260101c169150600186036126b8578181039650809550612757565b8086036126d357908601858103868211029096039590612757565b80860296810291909502810186810387821102918290039695919003906001600160781b0386111561275757612717565b5f5b8215610b2657908290069190612706565b61272a6127248784612704565b88612704565b8015019687900496909504946001600160781b0386111561275757634e487b715f5260116020526024601cfd5b50505050505b9250925092565b805182515f5b82811015612853575f84828151811061278557612785615792565b602002602001015190505f815f015190508381106127aa576127aa8260200151613cbd565b5f8782815181106127bd576127bd615792565b6020026020010151905080602001516001600160781b03165f036127e35750505061284b565b80516040808201519085015163bfb3f8ce5f8760200151600181111561280b5761280b615329565b14612827575f61281c856060613cce565b9350636088d7de9150505b8251821061283857805f526004601cfd5b612843838389613cd9565b505050505050505b60010161276a565b505f5b818110156128d6575f85828151811061287157612871615792565b6020026020010151905080602001516001600160781b03165f0361289557506128ce565b8051608081015160608201516128b29085908363a8930e9a613d8c565b6128ca8483604001518363d69293326104da613d8c90565b5050505b600101612856565b5050505050565b60a084015160c08501516040860151515f805b8281101561295a575f8960400151828151811061290f5761290f615792565b602002602001015190505f815f01519050801584179350505f612946826060015183608001518c8c8b8b612941361590565b613df3565b6060830152506080018690526001016128f0565b5060808801516004811082168015612974576129746134ed565b505050506060860151515f5b81811015612304575f8860600151828151811061299f5761299f615792565b602002602001015190505f6129c4826060015183608001518b8b8a8a61294136151590565b60608301525060a0810151608090910152600101612980565b8351608081015160208201513314156001821160049092109190911616156128d6575f80612a12858489608001518988613e2e565b63fb5014fc6060529092509050611a5083602001518684846133df565b5f848152600160205260408120805482908290608881901c80612a5457889150612adc565b6001600160781b038260101c169150808803612a7857908801878111935090612adc565b97880297808802979190910288018781119350906001600160781b038083119089111715612adc57612aaa8883612704565b8015019788900497909104906001600160781b038083119089111715612adc57634e487b715f5260116020526024601cfd5b508215612b15578515612b09576040516310fda3e160e01b8152600481018a905260240160405180910390fd5b5f945050505050610622565b8660881b8160101b1760011782556001945050505050949350505050565b5f83610140015184606001515114612b4d57612b4d612265565b83515f8080612b5c8888613fac565b915091505f8082845f885af16001600160a01b0385165f908152600260205260409020805460018101909155606086901b189550925082612bbb578515612bae57612ba5614056565b612bae8561409d565b505f93506104f192505050565b505050505f805f612bd8876040015188606001516104da6140ae90565b925092509250825f14612bee57612bee8461409d565b60408701919091526060860152509392505050565b6040805160208082528183019092525f916020820181803683375050506040850151519091505f5b81811015612c7b575f86604001518281518110612c4a57612c4a615792565b60200260200101519050846080820152612c7281885f0151896101200151876104da61432790565b50600101612c2b565b50506060840151515f90815b81811015612d09575f87606001518281518110612ca657612ca6615792565b602002602001015190505f6005811115612cc257612cc2615329565b81516005811115612cd557612cd5615329565b03612cf1574793508381606001511115612cf157612cf1613287565b612d00813389886143276104da565b50600101612c87565b5050612d14826119c4565b504780156128d6576128d63382613294565b8251608081015160208201515f92839283928392916004811060019091111633909114151615612d8857612d69612d6361010083015190565b5190565b8861441c565b9093509150612d7a60208201612d5f565b945063fb5014fc9350612dd4565b600481608001516004811115612da057612da0615329565b0361230457805194505f8560601b9050612dc187838b608001518b8561445d565b639397928596509094509250612dd49050565b612dde6060859052565b612dea858785856133df565b5f606052612304565b60608290506060829050856001600160a01b0316876001600160a01b03167f9d9af8e38d66c62e2c12f0225249fd9d721c54b83f48d9352c97c6cacdcb6f318a888686604051612e469493929190615a13565b60405180910390a35050505050505050565b5f7f00000000000000000000000000000000000000000000000000000000000005394614612f10575060408051608080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f5f9081527f32b5c112df393a49218d7552f96b2eeb829dfb4272f4f24eef510a586b85feef6020527f95f740a33d720b7cd93c75d515ac95ca3bbaa2594cce46ea48e00974ea8fcd14855246606090815230845260a08220949095529093529190915290565b507f8bebed3dbe91a82da0dc94c8d370c160ad6db1b32164303e65b8544bae7e2f5590565b63fed398fc5f526004601cfd5b600435602014610224356102401416610244356102606102643560061b01141660186101243510600160a01b60843560a4351760c4356024351717101616806103b0576103b0614528565b5f8181526001602081905260409091209060843590612fb290849084903615156121d7565b50815460ff16610b2657610b268184612fd9602463ffffffff6102443516016124896104da565b612272565b5f612feb8260a4356119f0565b15610402575f805f612ffc86614535565b63fb5014fc6060529194509250905061301c60a43587601c8601856133df565b5f60605260209190910160801b1781529392505050565b604080517f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c60ff60a01b175f90815260208690527f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f83526055600b20919092526001600160a01b031690505f805f805260205f85875f875af191505f519050816130c8576130bf614056565b6130c8836145ed565b6001600160e01b03198116632671a55160e11b146118015761180186846145fe565b6369f958275f52806020526024601cfd5b833b61311257635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af1806131a2573d1561318057601f3d0160051c8260051c8160030281831115613169578183036003028280028480020360091c01015b5a60208201101561317c573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b6131c757635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af18061326c573d1561324b57601f3d0160051c8560051c8160030281831115613234578183036003028280028480020360091c01015b5a602082011015613247573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b638ffff9805f526004601cfd5b61329d81613367565b5f805f805f85875af1905080611a59576132b5614056565b63bc806b965f5282602052816040526044601cfd5b5f6132d6836020015190565b9050818114611a5957611a59836119c4565b5f60208851036133225750604080885260208089018a9052632671a55160e11b918901919091526044880152600160648801819052613331565b50606487018051600101908190525b603c60c082028901038781528660208201528560408201528460608201528360808201528260a082015250505050505050505050565b806103b0576391b3e5145f526004601cfd5b636ab37ce75f526004601cfd5b61338f83613367565b61339981836132ca565b816133aa576117ef86868686614613565b611801828260018989895f8a6132e8565b6064810151604082019060c0026044016133d6848383613033565b50506020905250565b5f806001600160e01b03198451165f805260205f85875f8b5af15f51909350149050816134185761340e614056565b846080526024607cfd5b8061180157846080526024607cfd5b5f8063ffffffff83351690506001810160051b61344a8160408051918201905290565b9250613457848483611b28565b5050919050565b5f82840361346d5750806104f1565b82848309156134835763c63cf0895f526004601cfd5b5f61348e8584615aaf565b93909304949350505050565b5f8486146134e357838303428590038082035f6134b7838a615aaf565b6134c1838c615aaf565b6134cb91906159c7565b9050858487830304018115150294505050505061244a565b5092949350505050565b6312d3f5a35f526004601cfd5b8451608081015160208201515f92916004811060019091111633909114151615610f50575f8061353187848b608001518b8a613e2e565b9150915061354b836020015188848463fb5014fc8a614707565b935050505061244a565b63d5da9a1b5f526004601cfd5b61356a61505a565b83515f0361357b5761357b85614774565b5f85600181111561358e5761358e615329565b036135a45761359f86858385614785565b61244a565b61244a86858333876148f5565b84516060905f816001600160401b038111156135cf576135cf61574b565b6040519080825280602002602001820160405280156135f8578160200160208202803683370190505b506040805160208082528183019092529192505f9190602082018180368337505089519192505060010160051b60205b81811015613687575f61363e8b83613cce6104da565b8051606081015191925090801561367c57478111825115161561366857638ffff9805f526004601cfd5b61367c828460200151856040015189614327565b505050602001613628565b50505f5b838110156137f3575f8a82815181106136a6576136a6615792565b6020026020010151905080602001516001600160781b03165f036136ed575f8483815181106136d7576136d7615792565b91151560209283029190910190910152506137eb565b600184838151811061370157613701615792565b911515602092830291909101909101528051604081015180515f5b81811015613786575f83828151811061373757613737615792565b6020026020010151905080606001515f1461377357608081018051908e9052855161012087015161376d9184918c6143276104da565b60808201525b608081015160609091015260010161371c565b505050606081015180515f5b818110156137e5575f8382815181106137ad576137ad615792565b602002602001015190505f81606001519050805f146137d1576137d1888483614a2c565b5060a0810151606090910152600101613792565b50505050505b60010161368b565b506137fd816119c4565b47801561380e5761380e3382613294565b8515613884575f5b848110156138825783818151811061383057613830615792565b60200260200101511561387a5761387a8b828151811061385257613852615792565b60200260200101518a8b848151811061386d5761386d615792565b6020026020010151612d26565b600101613816565b505b61388c611a5e565b509098975050505050505050565b5f6138ad61016060408051918201905290565b9050611c048282612453565b808210156103dc576103dc614a45565b631a5155745f52806020526024601cfd5b63ee9e0e635f52806020526024601cfd5b6310fda3e15f52806020526024601cfd5b5f805f84516001811660410380820360051c9250808752806020018701915050805160e81c6003820191506001811660051b868152825160208218525060015b838110156139685760405f2082821c60051b60209081169182529384018051919094185260010161393c565b50505060405f2091505f61397b82614a52565b5f9081526020939093525050604090209392505050565b5f805f528151602083038051826041035f600182116139f557604087015160608801515f1a83156139d657601b8260ff1c0190506001600160ff1b03821660408a01525b88528a855260205f60808760015afa508385528588526040880152505f515b8a148a1515169450849050613abe57858552604082526044850380516040870351630b135d3f60e11b835289604089035260205f60648b01858f5afa96508615613ab257630b135d3f60e11b5f5114613ab2578b3b15613a5c57634f7fb80d5f526004601cfd5b6001866041031115613a7557638baa579f5f526004601cfd5b64010100000060608901515f1a1a15604187141615613aa557631f003d0a5f5260608801515f1a6020526024601cfd5b63815e1d645f526004601cfd5b8385529152603f198601525b5050508061180157613ace614056565b634f7fb80d5f526004601cfd5b613ae361505a565b8251158451151715613afc576398e9db6e5f526004601cfd5b613b0461505a565b613b118685835f806148f5565b805160608101515f03613b2657509050610622565b613b368787858460800151614785565b82516040828101519082015160208085015190840151855185511891181791181715613b6d5763bced929d5f52846020526024601cfd5b806060015182606001511115613bf4575f865f81518110613b9057613b90615792565b60200260200101519050816060015183606001510389825f015181518110613bba57613bba615792565b60200260200101515f015160600151826020015181518110613bde57613bde615792565b6020026020010151606001818152505050613c75565b5f875f81518110613c0757613c07615792565b60200260200101519050826060015182606001510389825f015181518110613c3157613c31615792565b60200260200101515f015160400151826020015181518110613c5557613c55615792565b602002602001015160600181815250508260600151826060018181525050505b505050949350505050565b428084111590831116818015613c94575080155b156104f1576104f18484614e61565b635a052b325f526004601cfd5b63a11b63ff5f526004601cfd5b63133c37c65f52806020526024601cfd5b5f6104f18284015190565b5f838381518110613cec57613cec615792565b602002602001015190505f815f01519050613d078160031090565b613d1357613d13614e76565b60408201518015613d3657613d318460600151828660800151614e83565b613d49565b60808401515115613d4957613d49614ecd565b6004821460030383816005811115613d6357613d63615329565b90816005811115613d7657613d76615329565b9052505050606090920151604090910152505050565b82515f5b81811015611801575f858281518110613dab57613dab615792565b60209081029190910101518051604082015191925090600382116004881415821515171615613de557855f5288602052836040526044601cfd5b505050806001019050613d90565b5f868803613e0d57613e0686868961345e565b90506107df565b6107dc613e1b87878b61345e565b613e2688888b61345e565b86868661349a565b5f805f613e39614eda565b6301e4d72a815260208082015260408101898152336060830152601c820194509091508751604082015287613e79613e7260a083015190565b60e0840152565b613e8f613e8760c083015190565b610100840152565b613ea5613e9d60e083015190565b610120840152565b610140613eb3816060850152565b5f613ebf604084015190565b90505f613ece82848701614ee4565b928301929050613edf836080870152565b5f613eeb606086015190565b90505f613efa82868901614f4a565b948501949050613f0b8560a0890152565b5f613f188e878a01614faf565b959095019450613f298560c0890152565b8685015f613f378e83614fce565b602497019687019a50613f539050613f4e8c8c0190565b614ffe565b8060408b901b60808b901b17178f610100018181525050613f7d8c82611b8090919063ffffffff16565b60058c8e51613f8c91906159b4565b613f97911b8b6159b4565b99505050505050505050509550959350505050565b5f8083613fb7614eda565b639891976581523360208201908152608060408301819052601c9092019450905f613fe3604085015190565b90505f613ff282848601614ee4565b928301929050614003836040860152565b5f61400f606087015190565b90505f61401e82868801614ee4565b94850194905061402f856060880152565b895f61403d82898901614faf565b9a9d96909a016004019b50949950505050505050505050565b3d1561409b57601f3d0160051c60405160051c8160030281831115614088578183036003028280028480020360091c01015b5a602082011015611a59573d5f803e3d5ffd5b565b63939792855f52806020526024601cfd5b60603d105f8080808080866141205760405f803e5f51935060205192503d60208501113d60208501118082179850505086614120576020845f3e5f51915060208360203e60205190508160071b60208501018160a0026020850101803d10823d101761ffff8486171117985050505f80525b86614152575f8061413584602088018d61415b565b9250975061414783602087018c61423b565b929092179850909550505b5050505061275d565b5f806040519150825160c08602602001830160405285835260208660010160051b8085018360010160051b8701614199858b81811090829003020190565b60010160051b8a861196505b808510156141f957828589015260808a843e6060830151955085608084015260608201518681116141d685856142e2565b17881797505060808a01995060a08301925060a0820191506020850194506141a5565b50505b8183101561422f578083870152608088823e6060810151608082015260808801975060a0810190506020830192506141fc565b50505050935093915050565b604051815180851190808603818710028101602060e08202850181016040528185526001928301600590811b87019390920190911b908185015b8282101561422f57808287015260a088823e60206060890160a083013e606081015160608501516142b26080840151608088015180159114171590565b818311176142c084886142e2565b60a09b909b019a179690961795505060c0938401936020929092019101614275565b5f81516040830151801560038311161561430457506040840151600119909101905b604085015181148551831460208701516020870151141616159250505092915050565b5f8451600581111561433b5761433b615329565b0361437857604084015160208501516001600160a01b0316171561436157614361613379565b61437384608001518560600151613294565b614416565b60018451600581111561438d5761438d615329565b036143be576040840151156143a4576143a4613379565b614373846020015184866080015187606001518686613386565b6002845160058111156143d3576143d3615329565b036143f7576143738460200151848660800151876040015188606001518787611889565b61441684602001518486608001518760400151886060015187876118d4565b50505050565b608082901c63ffffffff604084901c811690808516906144449084906317b1f94290611b8016565b601c830192506144548482614fce565b50509250929050565b5f80614467614eda565b63f4dd92ce815287841860a0820152601c8101925060200160a0808252875f614491604083015190565b90505f6144a082858701614ee4565b9384019390506144b1846020870152565b5f6144bd606085015190565b90505f6144cc82878901614f4a565b9586019590506144dd866040890152565b5f6144ea8d888a01614faf565b9687019690506144fb8760608a0152565b5f6145088d898b01614fce565b905080880197508760040199505050505050505050509550959350505050565b6339f3e3fd5f526004601cfd5b6301e4d72a6102043560051b6080019081525f808260208082015260408101858152336060830152601c919091019061456f608435610aeb565b61458061014460e083016060611b28565b61014061458e816060840152565b61459c60a082016080840152565b61016060a06102643581029290920101906145b8908290840152565b6145c25f82840152565b6020016145d08160c0840152565b5f9181019182526020820196909652939560449095019492505050565b63d13d53d45f52806020526024601cfd5b631cf99b265f5281602052806040526044601cfd5b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166146f85780873b1515166146f857806146e757816146ca573d156146a957601f3d0160051c8360051c8160030281831115614692578183036003028280028480020360091c01015b5a6020820110156146a5573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b5f805f6001600160e01b03198751165f805260205f888a5f8e5af15f5190935014905081614753578361473e575f925050506106d7565b614746614056565b845f52876020526024601cfd5b8061476557845f52876020526024601cfd5b50600198975050505050505050565b63375c24c15f52806020526024601cfd5b5f805f85865160051b87015b808210156148a2576020820191508851825151106147b1576147b16148d6565b81515160051b60208a01015180516020845101515f6040830151602085015115815184101517156147e6575050505050614791565b8260051b60208201015191505060608101935083518901915083511589831060011b17881797508198505f84528a51935086156001811461484f5760608220881860408d01516101208601511860208e015186511817171561484a5761484a6148d6565b614898565b8151855260208201516020860152604082015160408601528a6080860152835160208d015261012084015160408d015260608520975060208d0192508683181561489857865183525b5050505050614791565b5050508160608551015280156148cf57600181036148c7576391b3e5145f526004601cfd5b6148cf6148e3565b5050614416565b637fda72795f526004601cfd5b634e487b715f5260116020526024601cfd5b5f805f86875160051b88015b808210156149f7576020820191508151518a518110614922576149226148d6565b8060051b60208c01015190506020835101515f606083510151602084015115815184101517156149555750505050614901565b8260051b60208201015191505060608101925082518801915082511588831060011b17871796508197505f83528a5192508515600181146149a75760a0822087146149a2576149a26148d6565b6149ee565b815184526020820151602085015260408201516040850152608082015160808501528a60208d01528960408d015260a08220965060208d019250858318156149ee57855183525b50505050614901565b50508551606001839052508015614a255760018103614a1d576391b3e5145f526004601cfd5b614a256148e3565b50506128d6565b63a5f542085f528260205281604052806060526064601cfd5b63466aa6165f526004601cfd5b5f614e58565b5f6009821015614bb1576005821015614b0e576003821015614ac1577f832c58a5b611aadcfa6a082ac9d04bace53d8278387f10040347b7e98eb5b30260018314027fbf8e29b89f29ed9b529c154a63038ffca562f8d7cd1e2545dda53a1b582dde3018610402565b7ff3e8417a785f980bdaf134fa0274a6bf891eeb8195cd94b09d2aa651046e28bc60038314027fa02eb7ff164c884e5e2c336dc85f81c6a93329d8e9adf214b32729b894de2af118610402565b6007821015614b64577f25d02425402d882d211a7ab774c0ed6eca048c4d03d9af40132475744753b2a360058314027f1c19f71958cdd8f081b4c31f7caf5c010b29d12950be2fa1c95070dc47e30b5518610402565b7fb58d772fb09b426b9dece637f61ca9065f2b994f1464b51e9207f55f7c8f594860078314027f7ff98d9d4e55d876c5cfac10b43c04039522f3ddfb0ea9bfe70c68cfb5c7cc1418610402565b6011821015614d0957600d821015614c6657600b821015614c19577f6f0ec38c21f6f583ab7f3c5413c773ffd5344c34fde1d390958e438bf667448f60098314027fd1d97d1ef5eaa37a4ee5fbf234e6f6d64eb511eb562221cd7edfbdde0848da0518610402565b7f32f4e7485d6485f9f6c255929b9905c62ba919758bbe231f231eaeecf33d810c600b8314027fbb98d87cc12922b83759626c5f07d72266da9702d19ffad6a514c73a89002f5f18610402565b600f821015614cbc577f8df51df98847160517f5b1186b4bc3f418d98b8a7f17f1292f392d79d600d79e600d8314027f6b5b04cbae4fcb1a9d78e7b2dfc51a36933d023cf6e347e03d517b472a85259018610402565b7fcc4886e37eedd9aacd6c1c2c9247197a621a71282e87a7cbc673f3736d9aa141600f8314027f1da3eed3ecef6ebaa6e5023c057ec2c75150693fd0dac5c90f4a142f9879fde818610402565b6015821015614db5576013821015614d68577f2d7a3ed6dab270fdb8e054b2ad525f0ce2a8b89cc76c17f0965434740f673a5560118314027fc3939feff011e53ab8c35ca3370aad54c5df1fc2938cd62543174fa6e7d8587718610402565b7f54b3212a178782f104e0d514b41a9a5c4ca9c980bf6597c3cecbf280917e202a60138314027f5a4f867d3d458dabecad65f6201ceeaba0096df2d0c491cc32e6ea4e6435001718610402565b6017821015614e0b577fbb40bf8cea3a5a716e2b6eb08bbdac8ec159f82f380783db3c56904f15a43d0460158314027f3bd8cff538aba49a9c374c806d277181e9651624b3e31111bc0624574f8bca1d18610402565b7f403be09941a31d05cfc2f896505811353d45d38743288b016630cce39435476a60178314027f1d51df90cba8de7637ca3e8fe1e3511d1dc2f23487d05dbdecb781860c21ac1c18610402565b61040282614a58565b6321ccfeb75f5281602052806040526044601cfd5b6394eb6af65f526004601cfd5b5f835f5260205f2060208301835160051b81015b80821015614ebe57815180841160051b93845260209384185260405f209290910190614e97565b50508314905080614416576144165b6309bde3395f526004601cfd5b5f61041260405190565b5f825180835260208401602084018260051b82015b80831015614f375782518051835260208101516020840152604081015160408401526060810151606084015250602083019250608082019150614ef9565b5050508060071b60200191505092915050565b5f80614f54845190565b8084529050602084810190600583901b860181019085015b82821115614f9c575f614f7e84615008565b9050614f8c818360a0615011565b506020929092019160a001614f6c565b60a0840260200194505050505092915050565b5f63ffffffe0603f614fbf855190565b01169050610402838383615011565b5f80614fd8845190565b8084529050600581901b614ff3602086810190860183615011565b602001949350505050565b6103b06040829052565b5f610402825190565b8082828560045afa80153d151715614416575f80fd5b6040518060a0016040528061503a61509c565b81525f602082018190526040820152606080820181905260809091015290565b60408051610100810182525f606082018181526080830182905260a0830182905260c0830182905260e083018290528252602082018190529181019190915290565b6040518061016001604052805f6001600160a01b031681526020015f6001600160a01b0316815260200160608152602001606081526020015f60048111156150e6576150e6615329565b81525f6020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b5f60208284031215615125575f80fd5b81356001600160401b0381111561513a575f80fd5b820161024081850312156104f1575f80fd5b5f81518084525f5b8181101561517057602081850181015186830182015201615154565b505f602082860101526020601f19601f83011685010191505092915050565b602081525f6104f1602083018461514c565b5f602082840312156151b1575f80fd5b5035919050565b5f602082840312156151c8575f80fd5b81356001600160401b038111156151dd575f80fd5b820161016081850312156104f1575f80fd5b5f8083601f8401126151ff575f80fd5b5081356001600160401b03811115615215575f80fd5b6020830191508360208260051b850101111561522f575f80fd5b9250929050565b80356001600160a01b0381168114611c04575f80fd5b5f805f805f805f805f805f60e08c8e031215615266575f80fd5b6001600160401b03808d35111561527b575f80fd5b6152888e8e358f016151ef565b909c509a5060208d013581101561529d575f80fd5b6152ad8e60208f01358f016151ef565b909a50985060408d01358110156152c2575f80fd5b6152d28e60408f01358f016151ef565b909850965060608d01358110156152e7575f80fd5b506152f88d60608e01358e016151ef565b909550935060808c0135925061531060a08d01615236565b915060c08c013590509295989b509295989b9093969950565b634e487b7160e01b5f52602160045260245ffd5b60068110611b8057611b80615329565b61535882825161533d565b6020818101516001600160a01b0390811691840191909152604080830151908401526060808301519084015260809182015116910152565b5f815180845260208085019450602084015f5b838110156153e55781516153b888825161534d565b808401516001600160a01b031660a08901526040015160c088015260e090960195908201906001016153a3565b509495945050505050565b604080825283519082018190525f906020906060840190828701845b8281101561542a57815115158452928401929084019060010161540c565b50505083810360208501526106d78186615390565b5f8060208385031215615450575f80fd5b82356001600160401b03811115615465575f80fd5b615471858286016151ef565b90969095509350505050565b5f805f8060408587031215615490575f80fd5b84356001600160401b03808211156154a6575f80fd5b6154b2888389016151ef565b909650945060208701359150808211156154ca575f80fd5b506154d7878288016151ef565b95989497509550505050565b602081525f6104f16020830184615390565b5f60208284031215615505575f80fd5b6104f182615236565b5f806040838503121561551f575f80fd5b82356001600160401b03811115615534575f80fd5b830160408186031215615545575f80fd5b946020939093013593505050565b5f805f805f60808688031215615567575f80fd5b85356001600160401b038082111561557d575f80fd5b9087019060a0828a031215615590575f80fd5b909550602087013590808211156155a5575f80fd5b506155b2888289016151ef565b909550935050604086013591506155cb60608701615236565b90509295509295909350565b5f805f805f805f8060a0898b0312156155ee575f80fd5b88356001600160401b0380821115615604575f80fd5b6156108c838d016151ef565b909a50985060208b0135915080821115615628575f80fd5b6156348c838d016151ef565b909850965060408b013591508082111561564c575f80fd5b506156598b828c016151ef565b999c989b509699959896976060870135966080013595509350505050565b5f805f805f805f6080888a03121561568d575f80fd5b87356001600160401b03808211156156a3575f80fd5b6156af8b838c016151ef565b909950975060208a01359150808211156156c7575f80fd5b6156d38b838c016151ef565b909750955060408a01359150808211156156eb575f80fd5b506156f88a828b016151ef565b909450925061570b905060608901615236565b905092959891949750929550565b606081525f61572b606083018661514c565b6020830194909452506001600160a01b0391909116604090910152919050565b634e487b7160e01b5f52604160045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b5f8261578d57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f815180845260208085019450602084015f5b838110156153e55781516157ce88825161533d565b838101516001600160a01b03168885015260408082015190890152606080820151908901526080908101519088015260a090960195908201906001016157b9565b5f815180845260208085019450602084015f5b838110156153e557815161583788825161533d565b808401516001600160a01b0390811689860152604080830151908a0152606080830151908a0152608080830151908a015260a091820151169088015260c09096019590820190600101615822565b60058110611b8057611b80615329565b828152604060208201526158b56040820183516001600160a01b03169052565b5f60208301516158d060608401826001600160a01b03169052565b5060408301516101608060808501526158ed6101a08501836157a6565b91506060850151603f198584030160a086015261590a838261580f565b925050608085015161591f60c0860182615885565b5060a085015160e085015260c0850151610100818187015260e0870151915061012082818801528188015192506101409150828288015280880151848801525080870151610180870152505050809150509392505050565b5f823561015e1983360301811261598c575f80fd5b9190910192915050565b5f602082840312156159a6575f80fd5b8135600581106104f1575f80fd5b818103818111156104025761040261575f565b808201808211156104025761040261575f565b5f815180845260208085019450602084015f5b838110156153e557615a0087835161534d565b60a09690960195908201906001016159ed565b5f6080808301878452602060018060a01b03808916602087015260406080604088015283895180865260a08901915060208b0195505f5b81811015615a8b578651615a5f84825161533d565b808701518616848801528481015185850152606090810151908401529585019591870191600101615a4a565b50508781036060890152615a9f818a6159da565b9c9b505050505050505050505050565b80820281158282048414176104025761040261575f56fea164736f6c6343000818000a","storage":{}},"0x6265cc8d1b28edfd4d76c80bf774c0d446fffbde":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610090575f3560e01c80633f15457f116100635780633f15457f1461010f5780637adbf973146101225780637dc0d1d0146101355780638bbedf7514610147578063be27b22c1461015a575f80fd5b806301ffc9a7146100945780631ecfc411146100bc578063224199c2146100d157806330349ebe146100e4575b5f80fd5b6100a76100a23660046115b1565b61016d565b60405190151581526020015b60405180910390f35b6100cf6100ca3660046115ef565b6101a3565b005b6100cf6100df3660046117e0565b6102de565b6002546100f7906001600160a01b031681565b6040516001600160a01b0390911681526020016100b3565b6001546100f7906001600160a01b031681565b6100cf6101303660046115ef565b61063c565b5f546100f7906001600160a01b031681565b6100cf610155366004611889565b61076d565b6100cf61016836600461190b565b6107f1565b5f6001600160e01b031982166301ffc9a760e01b148061019d57506001600160e01b031982166317d8f49b60e01b145b92915050565b6001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa1580156101ea573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061020e919061196b565b90505f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561024d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610271919061196b565b9050336001600160a01b03821614610287575f80fd5b600280546001600160a01b0319166001600160a01b0385169081179091556040519081527f9176b7f47e4504df5e5516c99d90d82ac7cbd49cc77e7f22ba2ac2f2e3a3eba8906020015b60405180910390a1505050565b5f546040516321ae60b160e11b81526001600160a01b039091169063435cc1629061030f90879087906004016119d3565b5f604051808303815f875af115801561032a573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526103519190810190611a6b565b92505f805f610360888761088b565b91945092509050336001600160a01b038216146103da5760405162461bcd60e51b815260206004820152602d60248201527f4f6e6c79206f776e65722063616e2063616c6c2070726f7665416e64436c616960448201526c36abb4ba342932b9b7b63b32b960991b60648201526084015b60405180910390fd5b6001600160a01b038416156105bb576001600160a01b03851661044e5760405162461bcd60e51b815260206004820152602660248201527f43616e6e6f74207365742061646472206966207265736f6c766572206973206e6044820152651bdd081cd95d60d21b60648201526084016103d1565b6001546040516305ef2c7f60e41b815260048101859052602481018490523060448201526001600160a01b0387811660648301525f608483015290911690635ef2c7f09060a4015f604051808303815f87803b1580156104ac575f80fd5b505af11580156104be573d5f803e3d5ffd5b505050505f83836040516020016104df929190918252602082015260400190565b60408051808303601f1901815290829052805160209091012062d5fa2b60e81b8252600482018190526001600160a01b03878116602484015290925087169063d5fa2b00906044015f604051808303815f87803b15801561053e575f80fd5b505af1158015610550573d5f803e3d5ffd5b5050600154604051635b0fc9c360e01b8152600481018590526001600160a01b0386811660248301529091169250635b0fc9c391506044015f604051808303815f87803b15801561059f575f80fd5b505af11580156105b1573d5f803e3d5ffd5b5050505050610632565b6001546040516305ef2c7f60e41b815260048101859052602481018490526001600160a01b03838116604483015287811660648301525f608483015290911690635ef2c7f09060a4015f604051808303815f87803b15801561061b575f80fd5b505af115801561062d573d5f803e3d5ffd5b505050505b5050505050505050565b6001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa158015610683573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106a7919061196b565b90505f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106e6573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061070a919061196b565b9050336001600160a01b03821614610720575f80fd5b5f80546001600160a01b0319166001600160a01b0385169081179091556040519081527fb3eacd0e351fafdfefdec84e1cd19679b38dbcd63ea7c2c24da17fd2bc3b3c0e906020016102d1565b5f546040516321ae60b160e11b81526001600160a01b039091169063435cc1629061079e90859085906004016119d3565b5f604051808303815f875af11580156107b9573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526107e09190810190611a6b565b90506107ec83826107f1565b505050565b5f805f6107fe858561088b565b6001546040516306ab592360e01b815260048101859052602481018490526001600160a01b03808416604483015294975092955090935091909116906306ab5923906064016020604051808303815f875af115801561085f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108839190611add565b505050505050565b5f8080806108998682610a40565b60ff1690506108aa86600183610a63565b92505f6108dc6108bb836001611b08565b6001848a516108ca9190611b1b565b6108d49190611b1b565b899190610a85565b6002546040516327c482cf60e11b81529192506001600160a01b031690634f89059e9061090d908490600401611b2e565b602060405180830381865afa158015610928573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061094c9190611b40565b6109a45760405162461bcd60e51b815260206004820152602360248201527f506172656e74206e616d65206d7573742062652061207075626c6963207375666044820152620ccd2f60eb1b60648201526084016103d1565b6109ae815f610b05565b5f549095506109c7906001600160a01b03168888610de3565b5060408051602081018890529081018690529093506001600160a01b03841690606001604051602081830303815290604052805190602001207fa2e66ce20e6fb2c4f61339c364ad79f15160cf5307230c8bc4d628adbca2ba3989604051610a2f9190611b2e565b60405180910390a350509250925092565b5f828281518110610a5357610a53611b5f565b016020015160f81c905092915050565b82515f90610a718385611b08565b1115610a7b575f80fd5b5091016020012090565b8251606090610a948385611b08565b1115610a9e575f80fd5b5f8267ffffffffffffffff811115610ab857610ab861160a565b6040519080825280601f01601f191660200182016040528015610ae2576020820181803683370190505b50905060208082019086860101610afa82828761100b565b509095945050505050565b5f80610b118484610a40565b60ff169050805f03610b2657505f905061019d565b5f610b4585610b358487611b08565b610b40906001611b08565b610b05565b90505f610b5e610b56866001611b08565b879085610a63565b604080516020810185905290810182905290915060600160408051808303601f190181529082905280516020909101206001546302571be360e01b8352600483018290529095505f916001600160a01b03909116906302571be390602401602060405180830381865afa158015610bd7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bfb919061196b565b90506001600160a01b0381161580610c1b57506001600160a01b03811630145b610c7a5760405162461bcd60e51b815260206004820152602a60248201527f43616e6e6f7420656e61626c652061206e616d65206f776e656420627920736f6044820152696d656f6e6520656c736560b01b60648201526084016103d1565b6001600160a01b0381163014610dd95782610d5e576001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa158015610cd6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cfa919061196b565b60405163232e3b3b60e21b8152600481018590523060248201529091506001600160a01b03821690638cb8ecec906044015f604051808303815f87803b158015610d42575f80fd5b505af1158015610d54573d5f803e3d5ffd5b5050505050610dd9565b6001546040516306ab592360e01b815260048101859052602481018490523060448201526001600160a01b03909116906306ab5923906064016020604051808303815f875af1158015610db3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610dd79190611add565b505b5050505092915050565b5f80610e016040518060400160405280606081526020015f81525090565b610e1985516005610e129190611b08565b8290611060565b50604080518082019091526005815264045f656e7360d81b6020820152610e419082906110c3565b50610e4c81866110c3565b50805160405163021e646f60e21b81525f9182916001600160a01b038a169163087991bc91610e8091601091600401611b73565b606060405180830381865afa158015610e9b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ebf9190611ba7565b93509150506bffffffffffffffffffffffff198216158015610ee057508551155b15610ef3575f8094509450505050611003565b855160208701206bffffffffffffffffffffffff19838116911614610f16575f80fd5b5f610f2187826110ef565b90505b80515160208201511015610ff857610f4b816080015183610f459190611bfc565b4261114a565b610fbd5760405162461bcd60e51b815260206004820152603c60248201527f444e53207265636f7264206973207374616c653b2072656672657368206f722060448201527f64656c657465206974206265666f72652070726f63656564696e672e0000000060648201526084016103d1565b5f80610fcd898460a00151611162565b925090508115610fe857965060019550611003945050505050565b5050610ff3816111d1565b610f24565b505f80945094505050505b935093915050565b602081106110435781518352611022602084611b08565b925061102f602083611b08565b915061103c602082611b1b565b905061100b565b905182516020929092036101000a5f190180199091169116179052565b60408051808201909152606081525f602082015261107f602083611c20565b156110a75761108f602083611c20565b61109a906020611b1b565b6110a49083611b08565b91505b506020828101829052604080518085525f815290920101905290565b60408051808201909152606081525f60208201526110e883845f0151518485516112b6565b9392505050565b6111376040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261019d816111d1565b5f806111568385611c3f565b60030b12159392505050565b5f805b83518310156111c4575f6111798585610a40565b60ff169050611189600185611b08565b93505f8061119887878561139c565b9250905081156111b0579350600192506111ca915050565b6111ba8387611b08565b9550505050611165565b505f9050805b9250929050565b60c081015160208201819052815151116111e85750565b5f6111fa825f015183602001516113f5565b82602001516112099190611b08565b82519091506112189082611454565b61ffff16604083015261122c600282611b08565b825190915061123b9082611454565b61ffff16606083015261124f600282611b08565b825190915061125e908261147a565b63ffffffff166080830152611274600482611b08565b82519091505f906112859083611454565b61ffff169050611296600283611b08565b60a0840181905291506112a98183611b08565b60c0909301929092525050565b60408051808201909152606081525f602082015282518211156112d7575f80fd5b60208501516112e68386611b08565b11156113195761131985611309876020015187866113049190611b08565b6114a2565b611314906002611c66565b6114b8565b5f808651805187602083010193508088870111156113375787860182525b505050602084015b602084106113775780518252611356602083611b08565b9150611363602082611b08565b9050611370602085611b1b565b935061133f565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b5f806113a8858561147a565b63ffffffff1663613d3078146113c257505f905080611003565b602c8310156113d557505f905080611003565b6113e9856113e4866004611b08565b6114d5565b91509150935093915050565b5f815b8351811061140857611408611c7d565b5f6114138583610a40565b60ff169050611423816001611b08565b61142d9083611b08565b9150805f0361143c5750611442565b506113f8565b61144c8382611b1b565b949350505050565b81515f90611463836002611b08565b111561146d575f80fd5b50016002015161ffff1690565b81515f90611489836004611b08565b1115611493575f80fd5b50016004015163ffffffff1690565b5f818311156114b257508161019d565b50919050565b81516114c48383611060565b506114cf83826110c3565b50505050565b5f8060288385516114e69190611b1b565b10156114f657505f9050806111ca565b5f835b611504856028611b08565b8110156115a55760049190911b905f61151d8783610a40565b60ff169050603081101580156115335750603a81105b1561154c57611543603082611b1b565b8317925061159c565b6041811015801561155d5750604781105b1561156d57611543603782611b1b565b6061811015801561157e5750606781105b1561158e57611543605782611b1b565b5f80945094505050506111ca565b506001016114f9565b50946001945092505050565b5f602082840312156115c1575f80fd5b81356001600160e01b0319811681146110e8575f80fd5b6001600160a01b03811681146115ec575f80fd5b50565b5f602082840312156115ff575f80fd5b81356110e8816115d8565b634e487b7160e01b5f52604160045260245ffd5b6040805190810167ffffffffffffffff811182821017156116415761164161160a565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156116705761167061160a565b604052919050565b5f67ffffffffffffffff8211156116915761169161160a565b50601f01601f191660200190565b5f82601f8301126116ae575f80fd5b81356116c16116bc82611678565b611647565b8181528460208386010111156116d5575f80fd5b816020850160208301375f918101602001919091529392505050565b5f82601f830112611700575f80fd5b8135602067ffffffffffffffff8083111561171d5761171d61160a565b8260051b61172c838201611647565b9384528581018301938381019088861115611745575f80fd5b84880192505b858310156117d457823584811115611761575f80fd5b88016040818b03601f1901811315611777575f80fd5b61177f61161e565b878301358781111561178f575f80fd5b61179d8d8a8387010161169f565b8252509082013590868211156117b1575f80fd5b6117bf8c898486010161169f565b8189015284525050918401919084019061174b565b98975050505050505050565b5f805f805f60a086880312156117f4575f80fd5b853567ffffffffffffffff8082111561180b575f80fd5b61181789838a0161169f565b9650602088013591508082111561182c575f80fd5b61183889838a016116f1565b9550604088013591508082111561184d575f80fd5b5061185a8882890161169f565b935050606086013561186b816115d8565b9150608086013561187b816115d8565b809150509295509295909350565b5f805f6060848603121561189b575f80fd5b833567ffffffffffffffff808211156118b2575f80fd5b6118be8783880161169f565b945060208601359150808211156118d3575f80fd5b6118df878388016116f1565b935060408601359150808211156118f4575f80fd5b506119018682870161169f565b9150509250925092565b5f806040838503121561191c575f80fd5b823567ffffffffffffffff80821115611933575f80fd5b61193f8683870161169f565b93506020850135915080821115611954575f80fd5b506119618582860161169f565b9150509250929050565b5f6020828403121561197b575f80fd5b81516110e8816115d8565b5f5b838110156119a0578181015183820152602001611988565b50505f910152565b5f81518084526119bf816020860160208601611986565b601f01601f19169290920160200192915050565b5f60408083016040845280865180835260608601915060608160051b870101925060208089015f5b83811015611a4b57888603605f1901855281518051888852611a1f898901826119a8565b9185015188830389870152919050611a3781836119a8565b9750505093820193908201906001016119fb565b505086840381880152505050611a6181866119a8565b9695505050505050565b5f60208284031215611a7b575f80fd5b815167ffffffffffffffff811115611a91575f80fd5b8201601f81018413611aa1575f80fd5b8051611aaf6116bc82611678565b818152856020838501011115611ac3575f80fd5b611ad4826020830160208601611986565b95945050505050565b5f60208284031215611aed575f80fd5b5051919050565b634e487b7160e01b5f52601160045260245ffd5b8082018082111561019d5761019d611af4565b8181038181111561019d5761019d611af4565b602081525f6110e860208301846119a8565b5f60208284031215611b50575f80fd5b815180151581146110e8575f80fd5b634e487b7160e01b5f52603260045260245ffd5b61ffff83168152604060208201525f61144c60408301846119a8565b805163ffffffff81168114611ba2575f80fd5b919050565b5f805f60608486031215611bb9575f80fd5b611bc284611b8f565b9250611bd060208501611b8f565b915060408401516bffffffffffffffffffffffff1981168114611bf1575f80fd5b809150509250925092565b63ffffffff818116838216019080821115611c1957611c19611af4565b5092915050565b5f82611c3a57634e487b7160e01b5f52601260045260245ffd5b500690565b600382810b9082900b03637fffffff198112637fffffff8213171561019d5761019d611af4565b808202811582820484141761019d5761019d611af4565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{"0x0":"0x9b2565a3545a1312bdcb6e7148a7f7cae8c2706b","0x1":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0x2":"0x287dee389caaa49edc112888f2bcfd927b472e25"}},"0x62b11ad5f582a5c5d378fb310125b030042554f1":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106103af5760003560e01c80637e37479e116101f4578063ba5d40b71161011a578063e985e9c5116100ad578063f5c1f76e1161007c578063f5c1f76e146108d8578063f7df5c60146108eb578063f8c8765e146108fe578063ffa1ad741461091157600080fd5b8063e985e9c51461087a578063ebf0c717146108b6578063ec129eea146108bd578063f25eb5c1146108d057600080fd5b8063c87b56dd116100e9578063c87b56dd1461082e578063ce92b33e14610841578063cf2c52cb14610854578063d9548e531461086757600080fd5b8063ba5d40b7146107b3578063baef73e9146107c6578063bb5b27e114610808578063bebec6b41461081b57600080fd5b8063a22cb46511610192578063ac9650d811610161578063ac9650d81461074c578063b3f9e4cb1461076c578063b85afd281461077f578063b88d4fde146107a057600080fd5b8063a22cb465146106e7578063a3f4df7e146106fa578063a424740014610726578063ab3b87fe1461073957600080fd5b80639508b1c4116101ce5780639508b1c4146106b15780639559c0bd146106c457806395d89b41146106cc57806399e0dd7c146106d457600080fd5b80637e37479e146106785780637eee288d1461068b57806394d008ef1461069e57600080fd5b806342842e0e116102d95780635096023911610277578063663f7b2a11610246578063663f7b2a14610610578063672b9f81146106235780636ccbae5f1461064457806370a082311461066557600080fd5b806350960239146105bb578063572b6c05146105ce5780636352211e146105ea578063638e5c78146105fd57600080fd5b806347c81699116102b357806347c816991461056f5780634a72584d146105825780634f558e791461059557806350382c1a146105a857600080fd5b806342842e0e1461053657806342966c6814610549578063430c20811461055c57600080fd5b80631bf7e13e1161035157806327f189751161032057806327f18975146104ea578063310bd74b146104fd5780633f72ec6e1461051057806340c10f191461052357600080fd5b80631bf7e13e146104905780631f71be06146104a357806323b872dd146104b6578063276fabb1146104c957600080fd5b8063095ea7b31161038d578063095ea7b31461041c578063150b7a02146104315780631bd8cc1a1461045d5780631be5e7ed1461047d57600080fd5b806301ffc9a7146103b457806306fdde03146103dc578063081812fc146103f1575b600080fd5b6103c76103c2366004613f0b565b610935565b60405190151581526020015b60405180910390f35b6103e4610946565b6040516103d39190613f78565b6104046103ff366004613f8b565b6109d8565b6040516001600160a01b0390911681526020016103d3565b61042f61042a366004613fb9565b6109ff565b005b61044461043f366004614026565b610a18565b6040516001600160e01b031990911681526020016103d3565b61047061046b3660046140dc565b610b72565b6040516103d3919061417f565b6103e461048b366004614192565b610c68565b6103e461049e3660046141c9565b610cb3565b61042f6104b1366004614249565b610dbe565b61042f6104c4366004614305565b610e54565b6104dc6104d7366004614346565b610ea7565b6040519081526020016103d3565b61042f6104f8366004614387565b610eb6565b61042f61050b366004613f8b565b610efe565b61042f61051e3660046143fa565b610f39565b61042f610531366004613fb9565b61103b565b61042f610544366004614305565b611088565b61042f610557366004613f8b565b6110a3565b6103c761056a366004613fb9565b6110e7565b61042f61057d366004614424565b6110f3565b61042f610590366004614485565b611132565b6103c76105a3366004613f8b565b611178565b61042f6105b636600461458c565b611197565b61042f6105c93660046145c0565b6111cd565b6103c76105dc3660046145c0565b6001600160a01b0316301490565b6104046105f8366004613f8b565b61122d565b61042f61060b366004613f8b565b61124a565b61042f61061e366004614678565b611295565b6106366106313660046146c0565b611336565b6040516103d39291906146e2565b6104dc610652366004613f8b565b6000908152610100602052604090205490565b6104dc6106733660046145c0565b61134e565b6104dc6106863660046145c0565b6113d4565b61042f610699366004613fb9565b611405565b61042f6106ac366004614707565b61145c565b61042f6106bf366004614762565b6114ab565b6104dc601481565b6103e4611532565b61042f6106e2366004614805565b611541565b61042f6106f536600461483a565b6115c8565b6103e46040518060400160405280600d81526020016c554e533a20526567697374727960981b81525081565b6103c76107343660046141c9565b6115da565b61042f610747366004613fb9565b611625565b61075f61075a366004614346565b61166a565b6040516103d39190614866565b61040461077a366004613f8b565b611746565b61079261078d3660046140dc565b611770565b6040516103d39291906148c8565b61042f6107ae3660046148ed565b611892565b61042f6107c1366004614249565b6118d9565b6107f06107d4366004613f8b565b600090815261013960205260409020546001600160401b031690565b6040516001600160401b0390911681526020016103d3565b6103e4610816366004613f8b565b611962565b6103e46108293660046145c0565b611a04565b6103e461083c366004613f8b565b611ace565b61042f61084f366004614387565b611b34565b61042f610862366004614958565b611b73565b6103c7610875366004613f8b565b611c42565b6103c761088836600461499f565b6001600160a01b039182166000908152606a6020908152604080832093909416825291909152205460ff1690565b60006104dc565b61042f6108cb366004614387565b611c85565b61042f611cc4565b6104706108e6366004614346565b611d4b565b61042f6108f93660046149d8565b611dfe565b61042f61090c366004614a0a565b611e8f565b6103e460405180604001604052806005815260200164302e392e3160d81b81525081565b600061094082612065565b92915050565b60606065805461095590614a66565b80601f016020809104026020016040519081016040528092919081815260200182805461098190614a66565b80156109ce5780601f106109a3576101008083540402835291602001916109ce565b820191906000526020600020905b8154815290600101906020018083116109b157829003601f168201915b5050505050905090565b60006109e3826120b5565b506000908152606960205260409020546001600160a01b031690565b80610a0981612114565b610a13838361217a565b505050565b60007f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378546001600160a01b0316610a4d61229c565b6001600160a01b031603610b0e57610a6361229c565b6001600160a01b03166342966c68856040518263ffffffff1660e01b8152600401610a9091815260200190565b600060405180830381600087803b158015610aaa57600080fd5b505af1158015610abe573d6000803e3d6000fd5b505050821580159150610ad85750610ad882840184614a9a565b15610af657610ae730856122ab565b610af185856123f9565b610b00565b610b0085856122ab565b50630a85bd0160e11b610b69565b60405162461bcd60e51b815260206004820152602560248201527f52656769737472793a204552433732315f524543454956494e475f50524f4849604482015264109255115160da1b60648201526084015b60405180910390fd5b95945050505050565b6060826001600160401b03811115610b8c57610b8c6144d7565b604051908082528060200260200182016040528015610bbf57816020015b6060815260200190600190039081610baa5790505b50905060005b83811015610c6057610c30858583818110610be257610be2614ab5565b9050602002810190610bf49190614acb565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508792506124a4915050565b828281518110610c4257610c42614ab5565b60200260200101819052508080610c5890614b27565b915050610bc5565b509392505050565b6060610cab84848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508692506124a4915050565b949350505050565b606060005a9050610cc58585856115da565b610d215760405162461bcd60e51b815260206004820152602760248201527f554e535265676973747279466f727761726465723a205349474e41545552455f6044820152661253959053125160ca1b6064820152608401610b60565b610db3610d3160208701876145c0565b30604088013584610d4560608b018b614acb565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284376000920191909152506124d992505050565b9150505b9392505050565b610134546001600160a01b0316610dd361229c565b6001600160a01b031614610df95760405162461bcd60e51b8152600401610b6090614b40565b6000610e0d610e08888a614b87565b6125ba565b509050610e1a8982611405565b610e278686868685612612565b8115610e4957610e498982610e44610e3f8b8d614b87565b612680565b612701565b505050505050505050565b80610e66610e6061229c565b82612743565b610e825760405162461bcd60e51b8152600401610b6090614b94565b81610e8c81612114565b610e95836127d4565b610ea0858585612841565b5050505050565b6000610c60610e088385614b87565b80610ec2610e6061229c565b610ede5760405162461bcd60e51b8152600401610b6090614b94565b81610ee881612114565b610ef587878787876129e8565b50505050505050565b80610f0a610e6061229c565b610f265760405162461bcd60e51b8152600401610b6090614b94565b81610f3081612114565b610a13836127d4565b610134546001600160a01b0316610f4e61229c565b6001600160a01b031614610f745760405162461bcd60e51b8152600401610b6090614b40565b610f7d816120b5565b42826001600160401b031611610fd55760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a204558504952595f494e5f5041535400000000000000006044820152606401610b60565b60008181526101396020908152604091829020805467ffffffffffffffff19166001600160401b038616908117909155915191825282917f93feabb03ab84f47fc85bf0c298103fca21d8c8bc376eae0c1e1c56b9d4f7789910160405180910390a25050565b611043612a4b565b6001600160a01b031661105461229c565b6001600160a01b03161461107a5760405162461bcd60e51b8152600401610b6090614bdd565b61108482826122ab565b5050565b610a1383838360405180602001604052806000815250611892565b806110af610e6061229c565b6110cb5760405162461bcd60e51b8152600401610b6090614b94565b816110d581612114565b6110de836127d4565b610a1383612b4c565b6000610db78383612743565b806110ff610e6061229c565b61111b5760405162461bcd60e51b8152600401610b6090614b94565b8161112581612114565b610ef58787878787612bf3565b8061113e610e6061229c565b61115a5760405162461bcd60e51b8152600401610b6090614b94565b8161116481612114565b61117086868686612cd2565b505050505050565b6000818152606760205260408120546001600160a01b03161515610940565b6111ca816040516020016111ab9190614c1f565b6040516020818303038152906040528051906020012060001c82612d72565b50565b610134546001600160a01b03166111e261229c565b6001600160a01b0316146112085760405162461bcd60e51b8152600401610b6090614b40565b6001600160a01b0316600090815261013660205260409020805460ff19166001179055565b600061123882611c42565b6112455761094082612d97565b919050565b80611256610e6061229c565b6112725760405162461bcd60e51b8152600401610b6090614b94565b61128461127d61229c565b3084612841565b61108461128f61229c565b836123f9565b60006112a0826125ba565b5090506112ab61229c565b6001600160a01b03166112bd8261122d565b6001600160a01b0316146113135760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b60565b61131c81612114565b61108461132761229c565b8261133185612680565b612df7565b6060806113438484612e7e565b909590945092505050565b60006001600160a01b0382166113b85760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b6064820152608401610b60565b506001600160a01b031660009081526068602052604090205490565b6001600160a01b038116600090815261013560205260408120546113f781612e9f565b6113ff578091505b50919050565b610134546001600160a01b031661141a61229c565b6001600160a01b0316146114405760405162461bcd60e51b8152600401610b6090614b40565b611449816127d4565b61108461145582612d97565b8383612841565b611464612a4b565b6001600160a01b031661147561229c565b6001600160a01b03161461149b5760405162461bcd60e51b8152600401610b6090614bdd565b6114a584846122ab565b50505050565b6114b58787612ee9565b6114bd61229c565b6001600160a01b03166114cf8661122d565b6001600160a01b0316146115255760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b60565b610ef58484848489612612565b60606066805461095590614a66565b610134546001600160a01b031661155661229c565b6001600160a01b03161461157c5760405162461bcd60e51b8152600401610b6090614b40565b61013361158a828483614c81565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b82826040516115bc929190614d69565b60405180910390a15050565b6110846115d361229c565b8383612f58565b6000610cab6115e885614d7d565b3085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061302692505050565b80611631610e6061229c565b61164d5760405162461bcd60e51b8152600401610b6090614b94565b8161165781612114565b6114a561166384612d97565b8585612841565b606060006116788385614e07565b905030330361173d5760005b8381101561173b5761170b61169761229c565b61169f61316f565b8787858181106116b1576116b1614ab5565b90506020028101906116c39190614acb565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250613183915050565b82828151811061171d5761171d614ab5565b6020026020010181905250808061173390614b27565b915050611684565b505b610cab816131b3565b6000818152606760205260408120546001600160a01b0316611769576000610940565b3092915050565b606080836001600160401b0381111561178b5761178b6144d7565b6040519080825280602002602001820160405280156117be57816020015b60608152602001906001900390816117a95790505b509150836001600160401b038111156117d9576117d96144d7565b60405190808252806020026020018201604052801561180c57816020015b60608152602001906001900390816117f75790505b50905060005b848110156118895761183c86868381811061182f5761182f614ab5565b9050602002013585612e7e565b84838151811061184e5761184e614ab5565b6020026020010184848151811061186757611867614ab5565b602002602001018290528290525050808061188190614b27565b915050611812565b50935093915050565b8161189e610e6061229c565b6118ba5760405162461bcd60e51b8152600401610b6090614b94565b826118c481612114565b6118cd846127d4565b611170868686866132de565b610134546001600160a01b03166118ee61229c565b6001600160a01b0316146119145760405162461bcd60e51b8152600401610b6090614b40565b600080611924610e08898b614b87565b9150915061193181613311565b6119498a83611943610e3f8c8e614b87565b86613371565b6119568787878786612612565b50505050505050505050565b600081815260c96020526040902080546060919061197f90614a66565b80601f01602080910402602001604051908101604052809291908181526020018280546119ab90614a66565b80156119f85780601f106119cd576101008083540402835291602001916119f8565b820191906000526020600020905b8154815290600101906020018083116119db57829003601f168201915b50505050509050919050565b6001600160a01b03811660009081526101356020526040902054606090611a2a81612e9f565b6113ff576000818152610138602052604090208054611a4890614a66565b80601f0160208091040260200160405190810160405280929190818152602001828054611a7490614a66565b8015611ac15780601f10611a9657610100808354040283529160200191611ac1565b820191906000526020600020905b815481529060010190602001808311611aa457829003601f168201915b5050505050915050919050565b6060611ad9826120b5565b6000611ae36133c4565b90506000815111611b035760405180602001604052806000815250610db7565b80611b0d846133d4565b604051602001611b1e929190614e7a565b6040516020818303038152906040529392505050565b80611b40610e6061229c565b611b5c5760405162461bcd60e51b8152600401610b6090614b94565b81611b6681612114565b610ef58787878787612612565b7f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87546001600160a01b0316611ba661229c565b6001600160a01b031614611bcc5760405162461bcd60e51b8152600401610b6090614bdd565b6020819003611bef576000611be382840184613f8b565b90506114a584826122ab565b6000611bfd82840184614ea9565b805190915060005b8181101561117057611c3086848381518110611c2357611c23614ab5565b60200260200101516122ab565b80611c3a81614b27565b915050611c05565b600081815261013960205260408120546001600160401b03161580159061094057505060009081526101396020526040902054426001600160401b039091161090565b80611c91610e6061229c565b611cad5760405162461bcd60e51b8152600401610b6090614b94565b81611cb781612114565b610ef587878787876134d4565b6000611cce61229c565b6001600160a01b0381166000908152610135602052604081205491925003611d425760405162461bcd60e51b815260206004820152602160248201527f52656769737472793a20524556455253455f5245434f52445f49535f454d50546044820152605960f81b6064820152608401610b60565b6111ca816134ea565b6060816001600160401b03811115611d6557611d656144d7565b604051908082528060200260200182016040528015611d9857816020015b6060815260200190600190039081611d835790505b50905060005b82811015611df757611dc7848483818110611dbb57611dbb614ab5565b90506020020135611962565b828281518110611dd957611dd9614ab5565b60200260200101819052508080611def90614b27565b915050611d9e565b5092915050565b610134546001600160a01b0316611e1361229c565b6001600160a01b031614611e395760405162461bcd60e51b8152600401610b6090614b40565b61013454611e50906001600160a01b0316846122ab565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c39528383604051611e82929190614d69565b60405180910390a2505050565b600054610100900460ff1615808015611eaf5750600054600160ff909116105b80611ec95750303b158015611ec9575060005460ff166001145b611f2c5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610b60565b6000805460ff191660011790558015611f4f576000805461ff0019166101001790555b61013480546001600160a01b0319166001600160a01b038716179055837f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec9237880546001600160a01b0319166001600160a01b03929092169190911790556040805180820182526013815272556e73746f707061626c6520446f6d61696e7360681b60208083019190915282518084019093526002835261155160f21b90830152611ff79161352f565b611fff61356f565b61200761356f565b61201083613598565b612019826135c8565b8015610ea0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b60006001600160e01b031982166380ac58cd60e01b148061209657506001600160e01b03198216635b5e139f60e01b145b8061094057506301ffc9a760e01b6001600160e01b0319831614610940565b6000818152606760205260409020546001600160a01b03166111ca5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b60565b3033036121715761212361316f565b81146111ca5760405162461bcd60e51b815260206004820152601760248201527f52656769737472793a20544f4b454e5f494e56414c49440000000000000000006044820152606401610b60565b6111ca816135f8565b600061218582612d97565b9050806001600160a01b0316836001600160a01b0316036121f25760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b6064820152608401610b60565b806001600160a01b031661220461229c565b6001600160a01b0316148061222057506122208161088861229c565b6122925760405162461bcd60e51b815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c00006064820152608401610b60565b610a138383613626565b60006122a6613694565b905090565b6001600160a01b0382166123015760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610b60565b6000818152606760205260409020546001600160a01b0316156123665760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610b60565b612372600083836136af565b6001600160a01b038216600090815260686020526040812080546001929061239b908490614f39565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b03861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b6000612403612a4b565b905061240f8183613626565b60008051602061529383398151915254604080516020808201869052825180830390910181528183019283905263e3dec8fb60e01b9092526001600160a01b0390921691829163e3dec8fb9161246c918891309190604401614f4c565b600060405180830381600087803b15801561248657600080fd5b505af115801561249a573d6000803e3d6000fd5b5050505050505050565b6060610db7836040516020016124ba9190614c1f565b6040516020818303038152906040528051906020012060001c8361378b565b60606124e4856135f8565b600080876001600160a01b0316866124fe8b8a8989613183565b60405161250b9190614c1f565b60006040518083038160008787f1925050503d8060008114612549576040519150601f19603f3d011682016040523d82523d6000602084013e61254e565b606091505b50909250905061255f603f87614f8e565b5a1161256d5761256d614fa2565b6125ad82826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061386d565b9998505050505050505050565b805160009081905b801561260c578291506125f882856125db600185614fb8565b815181106125eb576125eb614ab5565b60200260200101516138a6565b92508061260481614fcb565b9150506125c2565b50915091565b60005b848110156111705761266e86868381811061263257612632614ab5565b90506020028101906126449190614acb565b86868581811061265657612656614ab5565b90506020028101906126689190614acb565b86612bf3565b8061267881614b27565b915050612615565b606060008260008151811061269757612697614ab5565b602002602001015190506000600190505b8351811015611df757818482815181106126c4576126c4614ab5565b60200260200101516040516020016126dd929190614fe2565b604051602081830303815290604052915080806126f990614b27565b9150506126a8565b61dead6001600160a01b0384161480159061273357506001600160a01b03831660009081526101356020526040902054155b15610a1357610a13838383612df7565b60008061274f8361122d565b90506001600160a01b03811615801590610cab5750806001600160a01b0316846001600160a01b031614806127a957506001600160a01b038082166000908152606a602090815260408083209388168352929052205460ff165b80610cab5750836001600160a01b03166127c2846109d8565b6001600160a01b031614949350505050565b6127dd81613952565b6040516020016127ef91815260200190565b60408051601f198184030181528282528051602091820120600085815260cb9092529181209190915582917f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9190a250565b826001600160a01b031661285482612d97565b6001600160a01b0316146128b85760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b6064820152608401610b60565b6001600160a01b03821661291a5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610b60565b6129258383836136af565b612930600082613626565b6001600160a01b0383166000908152606860205260408120805460019290612959908490614fb8565b90915550506001600160a01b0382166000908152606860205260408120805460019290612987908490614f39565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60005b8481101561117057612a39868683818110612a0857612a08614ab5565b90506020020135858584818110612a2157612a21614ab5565b9050602002810190612a339190614acb565b85612cd2565b80612a4381614b27565b9150506129eb565b600080516020615293833981519152546000906001600160a01b03168015612b485760405163721804d360e11b81523060048201526000906001600160a01b0383169063e43009a690602401602060405180830381865afa158015612ab4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ad8919061501e565b60405163e66f960360e01b8152600481018290529091506001600160a01b0383169063e66f960390602401602060405180830381865afa158015612b20573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b449190615037565b9250505b5090565b6000612b5782612d97565b9050612b65816000846136af565b612b70600083613626565b6001600160a01b0381166000908152606860205260408120805460019290612b99908490614fb8565b909155505060008281526067602052604080822080546001600160a01b0319169055518391906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b60008585604051602001612c08929190615054565b60408051601f198184030181528282528051602091820120601f8901829004820284018201909252878352909250612c5c9183918990899081908401838280828437600092019190915250612d7292505050565b6111708187878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061397a915050565b612cdb84613aaf565b612d275760405162461bcd60e51b815260206004820152601c60248201527f5265636f726453746f726167653a204b45595f4e4f545f464f554e44000000006044820152606401610b60565b6114a584612d3486611962565b85858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525087925061397a915050565b612d7b82613aaf565b61108457600082815260c960205260409020610a138282615064565b6000818152606760205260408120546001600160a01b0316806109405760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b60565b6000828152610138602052604090208054612e1190614a66565b9050600003612e3557600082815261013860205260409020612e338282615064565b505b6001600160a01b03831660008181526101356020526040808220859055518492917feb76a21470988c474a21f690cc28fee1ed511bd812dc3c21fd0f49c5e5d4708a91a3505050565b606080612e8a84611962565b9150612e96848461378b565b90509250929050565b6000818152610137602052604081205460ff16801561094057506101366000612ec661229c565b6001600160a01b0316815260208101919091526040016000205460ff1692915050565b60008051602061529383398151915254604051633805550f60e01b81526001600160a01b03909116908190633805550f90612f2a9086908690600401614d69565b600060405180830381600087803b158015612f4457600080fd5b505af1158015610ef5573d6000803e3d6000fd5b816001600160a01b0316836001600160a01b031603612fb95760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610b60565b6001600160a01b038381166000818152606a6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561306d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613091919061501e565b9050600061313f8660600151805190602001208688602001516040516020016130df9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561316557508551613165906001600160a01b03168286613ad5565b9695505050505050565b60003033036131805750601f193601355b90565b606082858560405160200161319a93929190615123565b6040516020818303038152906040529050949350505050565b606081516001600160401b038111156131ce576131ce6144d7565b60405190808252806020026020018201604052801561320157816020015b60608152602001906001900390816131ec5790505b50905060005b82518110156113ff57600080306001600160a01b031685848151811061322f5761322f614ab5565b60200260200101516040516132449190614c1f565b600060405180830381855af49150503d806000811461327f576040519150601f19603f3d011682016040523d82523d6000602084013e613284565b606091505b50915091506132ac82826040518060600160405280602781526020016152b36027913961386d565b8484815181106132be576132be614ab5565b6020026020010181905250505080806132d690614b27565b915050613207565b6132e9848484612841565b6132f584848484613c17565b6114a55760405162461bcd60e51b8152600401610b6090615162565b6000818152610137602052604090205460ff16156111ca5760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a20544f4b454e5f555047524144454400000000000000006044820152606401610b60565b61337b84846122ab565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952836040516133ab9190613f78565b60405180910390a280156114a5576114a5848484612701565b6060610133805461095590614a66565b6060816000036133fb5750506040805180820190915260018152600360fc1b602082015290565b8160005b8115613425578061340f81614b27565b915061341e9050600a83614f8e565b91506133ff565b6000816001600160401b0381111561343f5761343f6144d7565b6040519080825280601f01601f191660200182016040528015613469576020820181803683370190505b5090505b8415610cab5761347e600183614fb8565b915061348b600a866151b4565b613496906030614f39565b60f81b8183815181106134ab576134ab614ab5565b60200101906001600160f81b031916908160001a9053506134cd600a86614f8e565b945061346d565b6134dd816127d4565b610ea08585858585612612565b6001600160a01b03811660008181526101356020526040808220829055517ffcf5eec0cfa3e6332f5f0e63ec242d71f866a61d121d6cdf5c2eb3b668a26c4f9190a250565b600054610100900460ff166135565760405162461bcd60e51b8152600401610b60906151c8565b60656135628382615064565b506066610a138282615064565b600054610100900460ff166135965760405162461bcd60e51b8152600401610b60906151c8565b565b600054610100900460ff166135bf5760405162461bcd60e51b8152600401610b60906151c8565b6111ca81613d1c565b600054610100900460ff166135ef5760405162461bcd60e51b8152600401610b60906151c8565b6111ca81613d75565b60008181526101006020526040902054613613906001614f39565b6000918252610100602052604090912055565b600081815260696020526040902080546001600160a01b0319166001600160a01b038416908117909155819061365b82612d97565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60003033036136aa575060331936013560601c90565b503390565b6001600160a01b0382166136c6576136c681613311565b600081815261013960205260409020546001600160401b031615613761576001600160a01b0382161580159061371557506136ff612a4b565b6001600160a01b0316826001600160a01b031614155b6137615760405162461bcd60e51b815260206004820152601960248201527f52656769737472793a20544f4b454e5f455850495241424c45000000000000006044820152606401610b60565b6001600160a01b03831660009081526101356020526040902054819003610a1357610a13836134ea565b606061379682612e9f565b156137b05750604080516020810190915260008152610940565b60ca60006137bd84613952565b8152602001908152602001600020600084815260200190815260200160002080546137e790614a66565b80601f016020809104026020016040519081016040528092919081815260200182805461381390614a66565b80156138605780601f1061383557610100808354040283529160200191613860565b820191906000526020600020905b81548152906001019060200180831161384357829003601f168201915b5050505050905092915050565b6060831561387c575081610db7565b82511561388c5782518084602001fd5b8160405162461bcd60e51b8152600401610b609190613f78565b600081516000036138f15760405162461bcd60e51b815260206004820152601560248201527452656769737472793a204c4142454c5f454d50545960581b6044820152606401610b60565b82826040516020016139039190614c1f565b60405160208183030381529060405280519060200120604051602001613933929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b600081815260cb602052604081205415612b4857600082815260cb6020526040902054610940565b60ca600061398783613952565b8152602001908152602001600020600085815260200190815260200160002080546139b190614a66565b9050600003613a0957826040516139c89190614c1f565b6040518091039020817f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f8685604051613a009190613f78565b60405180910390a35b8160ca6000613a1784613952565b815260200190815260200160002060008681526020019081526020016000209081613a429190615064565b5081604051613a519190614c1f565b604051809103902083604051613a679190614c1f565b6040518091039020827f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d928686604051613aa19291906146e2565b60405180910390a450505050565b600081815260c9602052604081208054829190613acb90614a66565b9050119050919050565b6000806000613ae48585613dc3565b90925090506000816004811115613afd57613afd615213565b148015613b1b5750856001600160a01b0316826001600160a01b0316145b15613b2b57600192505050610db7565b600080876001600160a01b0316631626ba7e60e01b8888604051602401613b53929190615229565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051613b919190614c1f565b600060405180830381855afa9150503d8060008114613bcc576040519150601f19603f3d011682016040523d82523d6000602084013e613bd1565b606091505b5091509150818015613be4575080516020145b8015613c0b57508051630b135d3f60e11b90613c09908301602090810190840161501e565b145b98975050505050505050565b60006001600160a01b0384163b15613d1457836001600160a01b031663150b7a02613c4061229c565b8786866040518563ffffffff1660e01b8152600401613c629493929190615242565b6020604051808303816000875af1925050508015613c9d575060408051601f3d908101601f19168201909252613c9a91810190615275565b60015b613cfa573d808015613ccb576040519150601f19603f3d011682016040523d82523d6000602084013e613cd0565b606091505b508051600003613cf25760405162461bcd60e51b8152600401610b6090615162565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610cab565b506001610cab565b600054610100900460ff16613d435760405162461bcd60e51b8152600401610b60906151c8565b806000805160206152938339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b600054610100900460ff16613d9c5760405162461bcd60e51b8152600401610b60906151c8565b807f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87613d54565b6000808251604103613df95760208301516040840151606085015160001a613ded87828585613e08565b94509450505050613e01565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613e3f5750600090506003613eec565b8460ff16601b14158015613e5757508460ff16601c14155b15613e685750600090506004613eec565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613ebc573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613ee557600060019250925050613eec565b9150600090505b94509492505050565b6001600160e01b0319811681146111ca57600080fd5b600060208284031215613f1d57600080fd5b8135610db781613ef5565b60005b83811015613f43578181015183820152602001613f2b565b50506000910152565b60008151808452613f64816020860160208601613f28565b601f01601f19169290920160200192915050565b602081526000610db76020830184613f4c565b600060208284031215613f9d57600080fd5b5035919050565b6001600160a01b03811681146111ca57600080fd5b60008060408385031215613fcc57600080fd5b8235613fd781613fa4565b946020939093013593505050565b60008083601f840112613ff757600080fd5b5081356001600160401b0381111561400e57600080fd5b602083019150836020828501011115613e0157600080fd5b60008060008060006080868803121561403e57600080fd5b853561404981613fa4565b9450602086013561405981613fa4565b93506040860135925060608601356001600160401b0381111561407b57600080fd5b61408788828901613fe5565b969995985093965092949392505050565b60008083601f8401126140aa57600080fd5b5081356001600160401b038111156140c157600080fd5b6020830191508360208260051b8501011115613e0157600080fd5b6000806000604084860312156140f157600080fd5b83356001600160401b0381111561410757600080fd5b61411386828701614098565b909790965060209590950135949350505050565b600082825180855260208086019550808260051b84010181860160005b8481101561417257601f19868403018952614160838351613f4c565b98840198925090830190600101614144565b5090979650505050505050565b602081526000610db76020830184614127565b6000806000604084860312156141a757600080fd5b83356001600160401b038111156141bd57600080fd5b61411386828701613fe5565b6000806000604084860312156141de57600080fd5b83356001600160401b03808211156141f557600080fd5b908501906080828803121561420957600080fd5b9093506020850135908082111561421f57600080fd5b5061422c86828701613fe5565b9497909650939450505050565b8035801515811461124557600080fd5b60008060008060008060008060a0898b03121561426557600080fd5b883561427081613fa4565b975060208901356001600160401b038082111561428c57600080fd5b6142988c838d01614098565b909950975060408b01359150808211156142b157600080fd5b6142bd8c838d01614098565b909750955060608b01359150808211156142d657600080fd5b506142e38b828c01614098565b90945092506142f6905060808a01614239565b90509295985092959890939650565b60008060006060848603121561431a57600080fd5b833561432581613fa4565b9250602084013561433581613fa4565b929592945050506040919091013590565b6000806020838503121561435957600080fd5b82356001600160401b0381111561436f57600080fd5b61437b85828601614098565b90969095509350505050565b60008060008060006060868803121561439f57600080fd5b85356001600160401b03808211156143b657600080fd5b6143c289838a01614098565b909750955060208801359150808211156143db57600080fd5b506143e888828901614098565b96999598509660400135949350505050565b6000806040838503121561440d57600080fd5b82356001600160401b0381168114613fd757600080fd5b60008060008060006060868803121561443c57600080fd5b85356001600160401b038082111561445357600080fd5b61445f89838a01613fe5565b9097509550602088013591508082111561447857600080fd5b506143e888828901613fe5565b6000806000806060858703121561449b57600080fd5b8435935060208501356001600160401b038111156144b857600080fd5b6144c487828801613fe5565b9598909750949560400135949350505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715614515576145156144d7565b604052919050565b600082601f83011261452e57600080fd5b81356001600160401b03811115614547576145476144d7565b61455a601f8201601f19166020016144ed565b81815284602083860101111561456f57600080fd5b816020850160208301376000918101602001919091529392505050565b60006020828403121561459e57600080fd5b81356001600160401b038111156145b457600080fd5b610cab8482850161451d565b6000602082840312156145d257600080fd5b8135610db781613fa4565b60006001600160401b038211156145f6576145f66144d7565b5060051b60200190565b600061461361460e846145dd565b6144ed565b8381529050602080820190600585901b84018681111561463257600080fd5b845b8181101561466d5780356001600160401b038111156146535760008081fd5b61465f8982890161451d565b855250928201928201614634565b505050509392505050565b60006020828403121561468a57600080fd5b81356001600160401b038111156146a057600080fd5b8201601f810184136146b157600080fd5b610cab84823560208401614600565b600080604083850312156146d357600080fd5b50508035926020909101359150565b6040815260006146f56040830185613f4c565b8281036020840152610db38185613f4c565b6000806000806060858703121561471d57600080fd5b843561472881613fa4565b93506020850135925060408501356001600160401b0381111561474a57600080fd5b61475687828801613fe5565b95989497509550505050565b60008060008060008060006080888a03121561477d57600080fd5b87356001600160401b038082111561479457600080fd5b6147a08b838c01613fe5565b909950975060208a0135965060408a01359150808211156147c057600080fd5b6147cc8b838c01614098565b909650945060608a01359150808211156147e557600080fd5b506147f28a828b01614098565b989b979a50959850939692959293505050565b6000806020838503121561481857600080fd5b82356001600160401b0381111561482e57600080fd5b61437b85828601613fe5565b6000806040838503121561484d57600080fd5b823561485881613fa4565b9150612e9660208401614239565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156148bb57603f198886030184526148a9858351613f4c565b9450928501929085019060010161488d565b5092979650505050505050565b6040815260006148db6040830185614127565b8281036020840152610db38185614127565b6000806000806080858703121561490357600080fd5b843561490e81613fa4565b9350602085013561491e81613fa4565b92506040850135915060608501356001600160401b0381111561494057600080fd5b61494c8782880161451d565b91505092959194509250565b60008060006040848603121561496d57600080fd5b833561497881613fa4565b925060208401356001600160401b0381111561499357600080fd5b61422c86828701613fe5565b600080604083850312156149b257600080fd5b82356149bd81613fa4565b915060208301356149cd81613fa4565b809150509250929050565b6000806000604084860312156149ed57600080fd5b8335925060208401356001600160401b0381111561499357600080fd5b60008060008060808587031215614a2057600080fd5b8435614a2b81613fa4565b93506020850135614a3b81613fa4565b92506040850135614a4b81613fa4565b91506060850135614a5b81613fa4565b939692955090935050565b600181811c90821680614a7a57607f821691505b6020821081036113ff57634e487b7160e01b600052602260045260246000fd5b600060208284031215614aac57600080fd5b610db782614239565b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112614ae257600080fd5b8301803591506001600160401b03821115614afc57600080fd5b602001915036819003821315613e0157600080fd5b634e487b7160e01b600052601160045260246000fd5b600060018201614b3957614b39614b11565b5060010190565b60208082526027908201527f52656769737472793a2053454e4445525f49535f4e4f545f4d494e54494e475f60408201526626a0a720a3a2a960c91b606082015260800190565b6000610db7368484614600565b60208082526029908201527f52656769737472793a2053454e4445525f49535f4e4f545f415050524f5645446040820152682fa7a92fa7aba722a960b91b606082015260800190565b60208082526022908201527f52656769737472793a20494e53554646494349454e545f5045524d495353494f6040820152614e5360f01b606082015260800190565b60008251614c31818460208701613f28565b9190910192915050565b601f821115610a1357600081815260208120601f850160051c81016020861015614c625750805b601f850160051c820191505b8181101561117057828155600101614c6e565b6001600160401b03831115614c9857614c986144d7565b614cac83614ca68354614a66565b83614c3b565b6000601f841160018114614ce05760008515614cc85750838201355b600019600387901b1c1916600186901b178355610ea0565b600083815260209020601f19861690835b82811015614d115786850135825560209485019460019092019101614cf1565b5086821015614d2e5760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b602081526000610cab602083018486614d40565b600060808236031215614d8f57600080fd5b604051608081016001600160401b038282108183111715614db257614db26144d7565b8160405284359150614dc382613fa4565b81835260208501356020840152604085013560408401526060850135915080821115614dee57600080fd5b50614dfb3682860161451d565b60608301525092915050565b6000614e1561460e846145dd565b80848252602080830192508560051b850136811115614e3357600080fd5b855b81811015614e6e5780356001600160401b03811115614e545760008081fd5b614e6036828a0161451d565b865250938201938201614e35565b50919695505050505050565b60008351614e8c818460208801613f28565b835190830190614ea0818360208801613f28565b01949350505050565b60006020808385031215614ebc57600080fd5b82356001600160401b03811115614ed257600080fd5b8301601f81018513614ee357600080fd5b8035614ef161460e826145dd565b81815260059190911b82018301908381019087831115614f1057600080fd5b928401925b82841015614f2e57833582529284019290840190614f15565b979650505050505050565b8082018082111561094057610940614b11565b6001600160a01b03848116825283166020820152606060408201819052600090610b6990830184613f4c565b634e487b7160e01b600052601260045260246000fd5b600082614f9d57614f9d614f78565b500490565b634e487b7160e01b600052600160045260246000fd5b8181038181111561094057610940614b11565b600081614fda57614fda614b11565b506000190190565b60008351614ff4818460208801613f28565b601760f91b9083019081528351615012816001840160208801613f28565b01600101949350505050565b60006020828403121561503057600080fd5b5051919050565b60006020828403121561504957600080fd5b8151610db781613fa4565b8183823760009101908152919050565b81516001600160401b0381111561507d5761507d6144d7565b6150918161508b8454614a66565b84614c3b565b602080601f8311600181146150c657600084156150ae5750858301515b600019600386901b1c1916600185901b178555611170565b600085815260208120601f198616915b828110156150f5578886015182559484019460019091019084016150d6565b50858210156151135787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60008451615135818460208901613f28565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6000826151c3576151c3614f78565b500690565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b634e487b7160e01b600052602160045260246000fd5b828152604060208201526000610cab6040830184613f4c565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061316590830184613f4c565b60006020828403121561528757600080fd5b8151610db781613ef556febe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a","storage":{}},"0x6ac8f19d1e0f81147cdf2a1e53cb1f4e18417204":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610296575f3560e01c80636352211e11610161578063c93ab3fd116100ca578063e985e9c511610084578063e985e9c5146106c8578063eb8ae530146106db578063ed70554d146106ee578063f242432a1461070d578063f2fde38b14610720578063fd0cd0d914610733575f80fd5b8063c93ab3fd14610647578063cf4088231461065a578063d8c9921a1461066d578063d9a50c1214610680578063da8c229e14610693578063e0dba60f146106b5575f80fd5b8063a22cb4651161011b578063a22cb465146105d5578063a4014982146105e8578063adf4960a146105fb578063b6bcad261461060e578063c475abff14610621578063c658e08614610634575f80fd5b80636352211e146105595780636e5d6ad21461056c578063715018a6146105975780638b4dfa751461059f5780638cf8b41e146105b25780638da5cb5b146105c5575f80fd5b80631f4e1504116102035780633f15457f116101bd5780633f15457f146104b1578063402906fc146104d857806341415eab146105005780634e1273f41461051357806353095467146105335780635d3590d514610546575f80fd5b80631f4e15041461042b57806320c38e2b1461043e57806324c1af44146104515780632b20e397146104645780632eb2c2d61461048b57806333c69ea91461049e575f80fd5b80630e4cd725116102545780630e4cd725146103a05780630e89341c146103b357806314ab9038146103c6578063150b7a02146103d95780631534e177146104055780631896f70a14610418575f80fd5b8062fdd58e1461029a5780630178fe3f146102c057806301ffc9a71461030657806306fdde0314610329578063081812fc14610360578063095ea7b31461038b575b5f80fd5b6102ad6102a8366004614316565b610746565b6040519081526020015b60405180910390f35b6102d36102ce366004614340565b6107f0565b604080516001600160a01b03909416845263ffffffff90921660208401526001600160401b0316908201526060016102b7565b61031961031436600461436c565b61081f565b60405190151581526020016102b7565b6103536040518060400160405280600b81526020016a2730b6b2abb930b83832b960a91b81525081565b6040516102b791906143d4565b61037361036e366004614340565b61085e565b6040516001600160a01b0390911681526020016102b7565b61039e610399366004614316565b6108a0565b005b6103196103ae3660046143e6565b6108e5565b6103536103c1366004614340565b61095e565b61039e6103d436600461442f565b6109cc565b6103ec6103e736600461449d565b610ac0565b6040516001600160e01b031990911681526020016102b7565b61039e61041336600461450a565b610c96565b61039e6104263660046143e6565b610cc0565b600754610373906001600160a01b031681565b61035361044c366004614340565b610d75565b6102ad61045f3660046145f6565b610e0c565b6103737f000000000000000000000000c965345edac823d56812cd20a10316233916a60581565b61039e610499366004614717565b610fe7565b61039e6104ac3660046147bd565b61121a565b6103737f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a981565b6104eb6104e6366004614811565b6113e6565b60405163ffffffff90911681526020016102b7565b61031961050e3660046143e6565b611480565b610526610521366004614832565b6114b8565b6040516102b79190614928565b600554610373906001600160a01b031681565b61039e61055436600461493a565b6115d7565b610373610567366004614340565b611655565b61057f61057a366004614978565b61165f565b6040516001600160401b0390911681526020016102b7565b61039e61178e565b61039e6105ad3660046149aa565b6117a1565b61057f6105c03660046149e9565b6118c0565b5f546001600160a01b0316610373565b61039e6105e3366004614a6b565b611c28565b6102ad6105f6366004614a97565b611cfd565b610319610609366004614b12565b611e38565b61039e61061c36600461450a565b611e5c565b6102ad61062f366004614b33565b61209e565b6102ad610642366004614b53565b6122fd565b61039e610655366004614bc0565b6124bd565b61039e610668366004614c26565b612605565b61039e61067b366004614c5b565b612794565b61031961068e366004614b33565b61285d565b6103196106a136600461450a565b60046020525f908152604090205460ff1681565b61039e6106c3366004614a6b565b612938565b6103196106d6366004614c86565b61299f565b61039e6106e9366004614cb2565b6129cc565b6102ad6106fc366004614340565b60016020525f908152604090205481565b61039e61071b366004614d15565b612d59565b61039e61072e36600461450a565b612e06565b610319610741366004614340565b612e7c565b5f6001600160a01b0383166107b65760405162461bcd60e51b815260206004820152602b60248201527f455243313135353a2062616c616e636520717565727920666f7220746865207a60448201526a65726f206164647265737360a81b60648201526084015b60405180910390fd5b5f6107c083611655565b9050836001600160a01b0316816001600160a01b0316036107e55760019150506107ea565b5f9150505b92915050565b5f8181526001602052604090205460a081901c60c082901c610813838383612f4d565b90959094509092509050565b5f6001600160e01b03198216631b05885b60e31b148061084f57506001600160e01b03198216630a85bd0160e11b145b806107ea57506107ea82612f80565b5f8061086983611655565b90506001600160a01b03811661088157505f92915050565b5f838152600360205260409020546001600160a01b03165b9392505050565b5f6108aa826107f0565b50915050603f1960408216016108d65760405163a2a7201360e01b8152600481018390526024016107ad565b6108e08383612fcf565b505050565b5f8080806108f2866107f0565b925092509250846001600160a01b0316836001600160a01b0316148061091d575061091d838661299f565b8061094157506001600160a01b0385166109368761085e565b6001600160a01b0316145b8015610954575061095282826130de565b155b9695505050505050565b6005546040516303a24d0760e21b8152600481018390526060916001600160a01b031690630e89341c906024015f60405180830381865afa1580156109a5573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526107ea9190810190614d78565b816109d78133611480565b6109f857803360405163168ab55d60e31b81526004016107ad929190614dea565b8260105f610a05836107f0565b5091505063ffffffff8282161615610a335760405163a2a7201360e01b8152600481018490526024016107ad565b604051630295720760e31b8152600481018790526001600160401b03861660248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906314ab9038906044015b5f604051808303815f87803b158015610aa2575f80fd5b505af1158015610ab4573d5f803e3d5ffd5b50505050505050505050565b5f336001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a6051614610b0a5760405163032634a760e31b815260040160405180910390fd5b5f808080610b1a86880188614e01565b83516020850120939750919550935091508890808214610b57576040516331970f3360e21b815260048101829052602481018390526044016107ad565b604051630a3b53db60e21b81526001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906328ed4f6c90610ba59085903090600401614dea565b5f604051808303815f87803b158015610bbc575f80fd5b505af1158015610bce573d5f803e3d5ffd5b5050604051636b727d4360e11b8152600481018d90525f92506276a70091506001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063d6e4fa8690602401602060405180830381865afa158015610c3c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c609190614e64565b610c6a9190614e8f565b9050610c7d87878761ffff16848861310d565b50630a85bd0160e11b9c9b505050505050505050505050565b610c9e613215565b600580546001600160a01b0319166001600160a01b0392909216919091179055565b81610ccb8133611480565b610cec57803360405163168ab55d60e31b81526004016107ad929190614dea565b8260085f610cf9836107f0565b5091505063ffffffff8282161615610d275760405163a2a7201360e01b8152600481018490526024016107ad565b604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a90610a8b9089908990600401614dea565b60066020525f908152604090208054610d8d90614eb6565b80601f0160208091040260200160405190810160405280929190818152602001828054610db990614eb6565b8015610e045780601f10610ddb57610100808354040283529160200191610e04565b820191905f5260205f20905b815481529060010190602001808311610de757829003601f168201915b505050505081565b5f87610e188133611480565b610e3957803360405163168ab55d60e31b81526004016107ad929190614dea565b87516020890120610e4a8a8261326e565b9250610e568a8461329a565b610e6083866133d3565b610e6b8a848b613406565b50610e788a8487876134cd565b9350610e8383613510565b610f33576040516305ef2c7f60e41b8152600481018b9052602481018290523060448201526001600160a01b0388811660648301526001600160401b03881660848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610f0a575f80fd5b505af1158015610f1c573d5f803e3d5ffd5b50505050610f2e8a848b8b89896135c6565b610fda565b6040516305ef2c7f60e41b8152600481018b9052602481018290523060448201526001600160a01b0388811660648301526001600160401b03881660848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610fb6575f80fd5b505af1158015610fc8573d5f803e3d5ffd5b50505050610fda8a848b8b89896135fc565b5050979650505050505050565b81518351146110495760405162461bcd60e51b815260206004820152602860248201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206044820152670dad2e6dac2e8c6d60c31b60648201526084016107ad565b6001600160a01b03841661106f5760405162461bcd60e51b81526004016107ad90614eee565b6001600160a01b03851633148061108b575061108b853361299f565b6110f25760405162461bcd60e51b815260206004820152603260248201527f455243313135353a207472616e736665722063616c6c6572206973206e6f74206044820152711bdddb995c881b9bdc88185c1c1c9bdd995960721b60648201526084016107ad565b5f5b83518110156111ad575f84828151811061111057611110614f33565b602002602001015190505f84838151811061112d5761112d614f33565b602002602001015190505f805f611143856107f0565b9250925092506111548583836136b6565b83600114801561117557508a6001600160a01b0316836001600160a01b0316145b6111915760405162461bcd60e51b81526004016107ad90614f47565b61119d858b848461375d565b50505050508060010190506110f4565b50836001600160a01b0316856001600160a01b0316336001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516111fd929190614f91565b60405180910390a461121333868686868661379d565b5050505050565b5f611225858561326e565b905061123181846133d3565b5f808061123d846107f0565b919450925090506001600160a01b03831615806112ea57506040516302571be360e01b81526004810185905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa1580156112ba573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112de9190614fbe565b6001600160a01b031614155b1561130857604051635374b59960e01b815260040160405180910390fd5b5f806113138a6107f0565b90935091508a905061134f576113298633611480565b61134a57853360405163168ab55d60e31b81526004016107ad929190614dea565b61137a565b6113598a33611480565b61137a57893360405163168ab55d60e31b81526004016107ad929190614dea565b6113858689846138f7565b611390878483613932565b9650620100008416158015906113b457508363ffffffff1688851763ffffffff1614155b156113d55760405163a2a7201360e01b8152600481018790526024016107ad565b96831796610ab486868a868b613977565b5f826113f28133611480565b61141357803360405163168ab55d60e31b81526004016107ad929190614dea565b8360025f611420836107f0565b5091505063ffffffff828216161561144e5760405163a2a7201360e01b8152600481018490526024016107ad565b5f808061145a8a6107f0565b9250925092506114738a84848c61ffff16178485613977565b5098975050505050505050565b5f80808061148d866107f0565b925092509250846001600160a01b0316836001600160a01b031614806109415750610941838661299f565b6060815183511461151d5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b60648201526084016107ad565b5f83516001600160401b0381111561153757611537614525565b604051908082528060200260200182016040528015611560578160200160208202803683370190505b5090505f5b84518110156115cf576115aa85828151811061158357611583614f33565b602002602001015185838151811061159d5761159d614f33565b6020026020010151610746565b8282815181106115bc576115bc614f33565b6020908102919091010152600101611565565b509392505050565b6115df613215565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af115801561162b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061164f9190614fd9565b50505050565b5f6107ea82613a1e565b5f8061166b858561326e565b905061167681613510565b61169357604051635374b59960e01b815260040160405180910390fd5b5f61169e86336108e5565b9050801580156116b557506116b38233611480565b155b156116d757813360405163168ab55d60e31b81526004016107ad929190614dea565b5f80806116e3856107f0565b925092509250831580156116fa5750620400008216155b1561171b5760405163a2a7201360e01b8152600481018690526024016107ad565b5f6117258a6107f0565b92505050611734888383613932565b97506117428685858b613a33565b6040516001600160401b038916815286907ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b1329060200160405180910390a2509598975050505050505050565b611796613215565b61179f5f613a49565b565b6117b85f805160206154fc8339815191528461326e565b6117c28133611480565b6117e357803360405163168ab55d60e31b81526004016107ad929190614dea565b306001600160a01b0384160361181757604051632ca49b0d60e11b81526001600160a01b03841660048201526024016107ad565b6118376118315f805160206154fc8339815191528661326e565b83613a98565b604051632142170760e11b81523060048201526001600160a01b038481166024830152604482018690527f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906342842e0e906064015f604051808303815f87803b1580156118a4575f80fd5b505af11580156118b6573d5f803e3d5ffd5b5050505050505050565b5f8086866040516118d2929190614ff4565b6040519081900381206331a9108f60e11b82526004820181905291505f907f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa15801561193f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119639190614fbe565b90506001600160a01b0381163314801590611a09575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063e985e9c590604401602060405180830381865afa1580156119e3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a079190614fd9565b155b15611a4157611a255f805160206154fc8339815191528361326e565b3360405163168ab55d60e31b81526004016107ad929190614dea565b6040516323b872dd60e01b81526001600160a01b038281166004830152306024830152604482018490527f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906323b872dd906064015f604051808303815f87803b158015611aae575f80fd5b505af1158015611ac0573d5f803e3d5ffd5b5050604051630a3b53db60e21b81526001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a6051692506328ed4f6c9150611b129085903090600401614dea565b5f604051808303815f87803b158015611b29575f80fd5b505af1158015611b3b573d5f803e3d5ffd5b5050604051636b727d4360e11b8152600481018590526276a70092507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b0316915063d6e4fa8690602401602060405180830381865afa158015611ba7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611bcb9190614e64565b611bd59190614e8f565b9250611c1d88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508a9250505061ffff8816868861310d565b505095945050505050565b6001600160a01b0382163303611c925760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084016107ad565b335f8181526002602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b335f9081526004602052604081205460ff16611d2b5760405162461bcd60e51b81526004016107ad90615003565b5f8787604051611d3c929190614ff4565b604051908190038120633f2891eb60e21b8252600482018190523060248301526044820187905291507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b03169063fca247ac906064016020604051808303815f875af1158015611db5573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611dd99190614e64565b9150611e2d88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508a9250505061ffff8616611e276276a70087614e8f565b8861310d565b509695505050505050565b5f80611e43846107f0565b50841663ffffffff908116908516149250505092915050565b611e64613215565b6007546001600160a01b031615611f785760075460405163a22cb46560e01b81526001600160a01b0391821660048201525f60248201527f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063a22cb465906044015f604051808303815f87803b158015611ee0575f80fd5b505af1158015611ef2573d5f803e3d5ffd5b505060075460405163a22cb46560e01b81526001600160a01b0391821660048201525f60248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9909116925063a22cb46591506044015f604051808303815f87803b158015611f61575f80fd5b505af1158015611f73573d5f803e3d5ffd5b505050505b600780546001600160a01b0319166001600160a01b0383169081179091551561209b5760075460405163a22cb46560e01b81526001600160a01b039182166004820152600160248201527f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063a22cb465906044015f604051808303815f87803b158015612007575f80fd5b505af1158015612019573d5f803e3d5ffd5b505060075460405163a22cb46560e01b81526001600160a01b039182166004820152600160248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9909116925063a22cb46591506044015f604051808303815f87803b158015612089575f80fd5b505af1158015611213573d5f803e3d5ffd5b50565b335f9081526004602052604081205460ff166120cc5760405162461bcd60e51b81526004016107ad90615003565b5f6120e45f805160206154fc8339815191528561326e565b60405163c475abff60e01b815260048101869052602481018590529091505f906001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063c475abff906044016020604051808303815f875af1158015612154573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906121789190614e64565b6040516331a9108f60e11b8152600481018790529091507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa9250505080156121fc575060408051601f3d908101601f191682019092526121f991810190614fbe565b60015b6122095791506107ea9050565b6001600160a01b038116301415806122b157506040516302571be360e01b81526004810184905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015612281573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906122a59190614fbe565b6001600160a01b031614155b156122c0575091506107ea9050565b505f6122cf6276a70083614e8f565b5f8481526001602052604090205490915060a081901c6122f185838386613a33565b50919695505050505050565b5f866123098133611480565b61232a57803360405163168ab55d60e31b81526004016107ad929190614dea565b5f878760405161233b929190614ff4565b6040518091039020905061234f898261326e565b925061235b898461329a565b61236583866133d3565b5f6123a68a858b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061340692505050565b90506123b48a8588886134cd565b94506123bf84613510565b61246b576040516306ab592360e01b8152600481018b9052602481018390523060448201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906306ab5923906064016020604051808303815f875af1158015612434573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906124589190614e64565b506124668482898989613b83565b6124b0565b6124b08a858b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508d92508c91508b90506135fc565b5050509695505050505050565b5f6125005f86868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613bc59050565b6007549091506001600160a01b031661252c5760405163093075b560e21b815260040160405180910390fd5b6125368133611480565b61255757803360405163168ab55d60e31b81526004016107ad929190614dea565b5f8080612563846107f0565b919450925090505f6125748561085e565b905061257f85613c81565b60075f9054906101000a90046001600160a01b03166001600160a01b0316639198c2768a8a878787878e8e6040518963ffffffff1660e01b81526004016125cd989796959493929190615073565b5f604051808303815f87803b1580156125e4575f80fd5b505af11580156125f6573d5f803e3d5ffd5b50505050505050505050505050565b836126108133611480565b61263157803360405163168ab55d60e31b81526004016107ad929190614dea565b84601c5f61263e836107f0565b5091505063ffffffff828216161561266c5760405163a2a7201360e01b8152600481018490526024016107ad565b60405163cf40882360e01b8152600481018990523060248201526001600160a01b0387811660448301526001600160401b03871660648301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063cf408823906084015f604051808303815f87803b1580156126e8575f80fd5b505af11580156126fa573d5f803e3d5ffd5b5050506001600160a01b038816905061275f575f612717896107f0565b509150506201ffff196202000082160161274f57604051632ca49b0d60e11b81526001600160a01b03891660048201526024016107ad565b612759895f613a98565b506118b6565b5f61276989611655565b905061278981898b5f1c600160405180602001604052805f815250613d1e565b505050505050505050565b61279e838361326e565b6127a88133611480565b6127c957803360405163168ab55d60e31b81526004016107ad929190614dea565b7f6c32148f748aba23997146d7fe89e962e3cc30271290fb96f5f4337756c03b5284016128095760405163615a470360e01b815260040160405180910390fd5b6001600160a01b038216158061282757506001600160a01b03821630145b1561285057604051632ca49b0d60e11b81526001600160a01b03831660048201526024016107ad565b61164f611831858561326e565b5f80612869848461326e565b90505f61287582613510565b90505f805160206154fc83398151915285146128945791506107ea9050565b6040516331a9108f60e11b8152600481018590527f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa925050508015612915575060408051601f3d908101601f1916820190925261291291810190614fbe565b60015b612923575f925050506107ea565b6001600160a01b0316301492506107ea915050565b612940613215565b6001600160a01b0382165f81815260046020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf8791015b60405180910390a25050565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205460ff1690565b5f80612a105f87878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613dfe9050565b915091505f612a578288888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613bc59050565b90505f612a64828561326e565b5f818152600660205260409020909150612a7f888a8361511e565b507f6c32148f748aba23997146d7fe89e962e3cc30271290fb96f5f4337756c03b528201612ac05760405163615a470360e01b815260040160405180910390fd5b6040516302571be360e01b8152600481018290525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa158015612b25573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612b499190614fbe565b90506001600160a01b0381163314801590612bef575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063e985e9c590604401602060405180830381865afa158015612bc9573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612bed9190614fd9565b155b15612c1157813360405163168ab55d60e31b81526004016107ad929190614dea565b6001600160a01b03861615612c9c57604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a90612c6e9085908a90600401614dea565b5f604051808303815f87803b158015612c85575f80fd5b505af1158015612c97573d5f803e3d5ffd5b505050505b604051635b0fc9c360e01b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635b0fc9c390612cea9085903090600401614dea565b5f604051808303815f87803b158015612d01575f80fd5b505af1158015612d13573d5f803e3d5ffd5b50505050612789828a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201829052508d93509150819050613b83565b6001600160a01b038416612d7f5760405162461bcd60e51b81526004016107ad90614eee565b6001600160a01b038516331480612d9b5750612d9b853361299f565b612df95760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2063616c6c6572206973206e6f74206f776e6572206e6f7260448201526808185c1c1c9bdd995960ba1b60648201526084016107ad565b6112138585858585613d1e565b612e0e613215565b6001600160a01b038116612e735760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107ad565b61209b81613a49565b5f8181526006602052604081208054829190612e9790614eb6565b80601f0160208091040260200160405190810160405280929190818152602001828054612ec390614eb6565b8015612f0e5780601f10612ee557610100808354040283529160200191612f0e565b820191905f5260205f20905b815481529060010190602001808311612ef157829003601f168201915b5050505050905080515f03612f2557505f92915050565b5f80612f318382613dfe565b90925090505f612f418483613bc5565b9050610954818461285d565b5f8042836001600160401b03161015612f775761ffff1962010000851601612f73575f94505b5f93505b50929391925050565b5f6001600160e01b03198216636cdb3d1360e11b1480612fb057506001600160e01b031982166303a24d0760e21b145b806107ea57506301ffc9a760e01b6001600160e01b03198316146107ea565b5f612fd982611655565b9050806001600160a01b0316836001600160a01b0316036130465760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084016107ad565b336001600160a01b03821614806130625750613062813361299f565b6130d45760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016107ad565b6108e08383613eb2565b5f620200008381161480156108995750426130fc6276a700846151d7565b6001600160401b0316109392505050565b845160208601205f61312c5f805160206154fc8339815191528361326e565b90505f61315488604051806040016040528060058152602001626cae8d60e31b815250613f1f565b5f83815260066020526040902090915061316e82826151f7565b50613181828289620300008a1789613b83565b6001600160a01b038416156118b657604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a906131de9085908890600401614dea565b5f604051808303815f87803b1580156131f5575f80fd5b505af1158015613207573d5f803e3d5ffd5b505050505050505050505050565b5f546001600160a01b0316331461179f5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107ad565b604080516020808201949094528082019290925280518083038201815260609092019052805191012090565b5f80806132a6846107f0565b91945092509050426001600160401b0382161080801561336657506001600160a01b038416158061336657506040516302571be360e01b8152600481018690525f906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015613337573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061335b9190614fbe565b6001600160a01b0316145b156133a4575f613375876107f0565b50915050602081161561339e5760405163a2a7201360e01b8152600481018790526024016107ad565b506133cb565b620100008316156133cb5760405163a2a7201360e01b8152600481018690526024016107ad565b505050505050565b63fffdffff81811763ffffffff16146134025760405163a2a7201360e01b8152600481018390526024016107ad565b5050565b60605f6134aa8360065f8881526020019081526020015f20805461342990614eb6565b80601f016020809104026020016040519081016040528092919081815260200182805461345590614eb6565b80156134a05780601f10613477576101008083540402835291602001916134a0565b820191905f5260205f20905b81548152906001019060200180831161348357829003601f168201915b5050505050613f1f565b5f8581526006602052604090209091506134c482826151f7565b50949350505050565b5f806134d8856107f0565b925050505f806134e9885f1c6107f0565b92509250506134f98787846138f7565b613504858483613932565b98975050505050505050565b5f8061351b83611655565b6001600160a01b0316141580156107ea57506040516302571be360e01b81526004810183905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015613592573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906135b69190614fbe565b6001600160a01b03161492915050565b5f86815260066020526040812080546135e491879161342990614eb6565b90506135f38682868686613b83565b50505050505050565b5f8080613608886107f0565b9250925092505f61362f8860065f8d81526020019081526020015f20805461342990614eb6565b5f8a815260066020526040902080549192509061364b90614eb6565b90505f0361366c575f89815260066020526040902061366a82826151f7565b505b61367b89858886178589613977565b6001600160a01b03871661369857613693895f613a98565b610ab4565b610ab484888b5f1c600160405180602001604052805f815250613d1e565b6201ffff19620200008316016136d6576136d36276a700826151d7565b90505b42816001600160401b0316101561370f576201000082161561370a5760405162461bcd60e51b81526004016107ad90614f47565b613734565b60048216156137345760405163a2a7201360e01b8152600481018490526024016107ad565b604082165f036108e05750505f90815260036020526040902080546001600160a01b0319169055565b60c0816001600160401b0316901b60a08363ffffffff16901b846001600160a01b0316171760015f8681526020019081526020015f208190555050505050565b6001600160a01b0384163b156133cb5760405163bc197c8160e01b81526001600160a01b0385169063bc197c81906137e190899089908890889088906004016152b2565b6020604051808303815f875af192505050801561381b575060408051601f3d908101601f1916820190925261381891810190615303565b60015b6138c75761382761531e565b806308c379a003613860575061383b615337565b806138465750613862565b8060405162461bcd60e51b81526004016107ad91906143d4565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e20455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b60648201526084016107ad565b6001600160e01b0319811663bc197c8160e01b146135f35760405162461bcd60e51b81526004016107ad906153bf565b63ffff000082161580159060018316159082906139115750805b156112135760405163a2a7201360e01b8152600481018690526024016107ad565b5f816001600160401b0316846001600160401b03161115613951578193505b826001600160401b0316846001600160401b0316101561396f578293505b509192915050565b61398385858584613a33565b60405163ffffffff8416815285907f39873f00c80f4f94b7bd1594aebcf650f003545b74824d57ddf4939e3ff3a34b9060200160405180910390a2816001600160401b0316816001600160401b03161115611213576040516001600160401b038216815285907ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b132906020015b60405180910390a25050505050565b5f80613a29836107f0565b5090949350505050565b613a3d8483613f96565b61164f8484848461375d565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b613aa3826001611e38565b15613ac45760405163a2a7201360e01b8152600481018390526024016107ad565b613acd82613c81565b604051635b0fc9c360e01b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635b0fc9c390613b1b9085908590600401614dea565b5f604051808303815f87803b158015613b32575f80fd5b505af1158015613b44573d5f803e3d5ffd5b50506040516001600160a01b03841681528492507fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c49150602001612993565b613b8f85848484613fcf565b847f8ce7013e8abebc55c3890a68f5a27c67c3f7efa64e584de5fb22363c606fd34085858585604051613a0f9493929190615407565b5f805f613bd28585613dfe565b909250905081613c435760018551613bea919061544d565b8414613c385760405162461bcd60e51b815260206004820152601d60248201527f6e616d65686173683a204a756e6b20617420656e64206f66206e616d6500000060448201526064016107ad565b505f91506107ea9050565b613c4d8582613bc5565b6040805160208101929092528101839052606001604051602081830303815290604052805190602001209250505092915050565b5f8181526001602052604090205460a081901c60c082901c613ca4838383612f4d565b5f86815260036020526040812080546001600160a01b0319169055909350613cd091508590848461375d565b60408051858152600160208201525f916001600160a01b0386169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b5f805f613d2a866107f0565b925092509250613d3b8683836136b6565b846001148015613d5c5750876001600160a01b0316836001600160a01b0316145b613d785760405162461bcd60e51b81526004016107ad90614f47565b866001600160a01b0316836001600160a01b031603613d9957505050611213565b613da58688848461375d565b60408051878152602081018790526001600160a01b03808a1692908b169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46118b6338989898989614041565b5f8083518310613e505760405162461bcd60e51b815260206004820152601e60248201527f726561644c6162656c3a20496e646578206f7574206f6620626f756e6473000060448201526064016107ad565b5f848481518110613e6357613e63614f33565b016020015160f81c90508015613e8f57613e8885613e82866001615460565b836140fb565b9250613e93565b5f92505b613e9d8185615460565b613ea8906001615460565b9150509250929050565b5f81815260036020526040902080546001600160a01b0319166001600160a01b0384169081179091558190613ee682611655565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6060600183511015613f4457604051631406d65b60e11b815260040160405180910390fd5b60ff83511115613f69578260405163e3ba295f60e01b81526004016107ad91906143d4565b82518383604051602001613f7f93929190615473565b604051602081830303815290604052905092915050565b61ffff811615801590613fae57506201000181811614155b156134025760405163a2a7201360e01b8152600481018390526024016107ad565b613fd98483613f96565b5f848152600160205260409020546001600160a01b0381161561403557613fff85613c81565b6040515f815285907fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c49060200160405180910390a25b6112138585858561411d565b6001600160a01b0384163b156133cb5760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e619061408590899089908890889088906004016154b7565b6020604051808303815f875af19250505080156140bf575060408051601f3d908101601f191682019092526140bc91810190615303565b60015b6140cb5761382761531e565b6001600160e01b0319811663f23a6e6160e01b146135f35760405162461bcd60e51b81526004016107ad906153bf565b82515f906141098385615460565b1115614113575f80fd5b5091016020012090565b835f808061412a846107f0565b9194509250905063ffff000082166001600160401b038087169083161115614150578195505b42826001600160401b03161061416557958617955b6001600160a01b038416156141bc5760405162461bcd60e51b815260206004820152601f60248201527f455243313135353a206d696e74206f66206578697374696e6720746f6b656e0060448201526064016107ad565b6001600160a01b03881661421c5760405162461bcd60e51b815260206004820152602160248201527f455243313135353a206d696e7420746f20746865207a65726f206164647265736044820152607360f81b60648201526084016107ad565b306001600160a01b038916036142915760405162461bcd60e51b815260206004820152603460248201527f455243313135353a206e65774f776e65722063616e6e6f74206265207468652060448201527313985b5955dc985c1c195c8818dbdb9d1c9858dd60621b60648201526084016107ad565b61429d8589898961375d565b60408051868152600160208201526001600160a01b038a16915f9133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4612789335f8a88600160405180602001604052805f815250614041565b6001600160a01b038116811461209b575f80fd5b5f8060408385031215614327575f80fd5b823561433281614302565b946020939093013593505050565b5f60208284031215614350575f80fd5b5035919050565b6001600160e01b03198116811461209b575f80fd5b5f6020828403121561437c575f80fd5b813561089981614357565b5f5b838110156143a1578181015183820152602001614389565b50505f910152565b5f81518084526143c0816020860160208601614387565b601f01601f19169290920160200192915050565b602081525f61089960208301846143a9565b5f80604083850312156143f7575f80fd5b82359150602083013561440981614302565b809150509250929050565b80356001600160401b038116811461442a575f80fd5b919050565b5f8060408385031215614440575f80fd5b8235915061445060208401614414565b90509250929050565b5f8083601f840112614469575f80fd5b5081356001600160401b0381111561447f575f80fd5b602083019150836020828501011115614496575f80fd5b9250929050565b5f805f805f608086880312156144b1575f80fd5b85356144bc81614302565b945060208601356144cc81614302565b93506040860135925060608601356001600160401b038111156144ed575f80fd5b6144f988828901614459565b969995985093965092949392505050565b5f6020828403121561451a575f80fd5b813561089981614302565b634e487b7160e01b5f52604160045260245ffd5b601f8201601f191681016001600160401b038111828210171561455e5761455e614525565b6040525050565b5f6001600160401b0382111561457d5761457d614525565b50601f01601f191660200190565b5f82601f83011261459a575f80fd5b81356145a581614565565b6040516145b28282614539565b8281528560208487010111156145c6575f80fd5b826020860160208301375f92810160200192909252509392505050565b803563ffffffff8116811461442a575f80fd5b5f805f805f805f60e0888a03121561460c575f80fd5b8735965060208801356001600160401b03811115614628575f80fd5b6146348a828b0161458b565b965050604088013561464581614302565b9450606088013561465581614302565b935061466360808901614414565b925061467160a089016145e3565b915061467f60c08901614414565b905092959891949750929550565b5f6001600160401b038211156146a5576146a5614525565b5060051b60200190565b5f82601f8301126146be575f80fd5b813560206146cb8261468d565b6040516146d88282614539565b80915083815260208101915060208460051b8701019350868411156146fb575f80fd5b602086015b84811015611e2d5780358352918301918301614700565b5f805f805f60a0868803121561472b575f80fd5b853561473681614302565b9450602086013561474681614302565b935060408601356001600160401b0380821115614761575f80fd5b61476d89838a016146af565b94506060880135915080821115614782575f80fd5b61478e89838a016146af565b935060808801359150808211156147a3575f80fd5b506147b08882890161458b565b9150509295509295909350565b5f805f80608085870312156147d0575f80fd5b84359350602085013592506147e7604086016145e3565b91506147f560608601614414565b905092959194509250565b803561ffff8116811461442a575f80fd5b5f8060408385031215614822575f80fd5b8235915061445060208401614800565b5f8060408385031215614843575f80fd5b82356001600160401b0380821115614859575f80fd5b818501915085601f83011261486c575f80fd5b813560206148798261468d565b6040516148868282614539565b83815260059390931b85018201928281019150898411156148a5575f80fd5b948201945b838610156148cc5785356148bd81614302565b825294820194908201906148aa565b965050860135925050808211156148e1575f80fd5b50613ea8858286016146af565b5f815180845260208085019450602084015f5b8381101561491d57815187529582019590820190600101614901565b509495945050505050565b602081525f61089960208301846148ee565b5f805f6060848603121561494c575f80fd5b833561495781614302565b9250602084013561496781614302565b929592945050506040919091013590565b5f805f6060848603121561498a575f80fd5b83359250602084013591506149a160408501614414565b90509250925092565b5f805f606084860312156149bc575f80fd5b8335925060208401356149ce81614302565b915060408401356149de81614302565b809150509250925092565b5f805f805f608086880312156149fd575f80fd5b85356001600160401b03811115614a12575f80fd5b614a1e88828901614459565b9096509450506020860135614a3281614302565b9250614a4060408701614800565b91506060860135614a5081614302565b809150509295509295909350565b801515811461209b575f80fd5b5f8060408385031215614a7c575f80fd5b8235614a8781614302565b9150602083013561440981614a5e565b5f805f805f8060a08789031215614aac575f80fd5b86356001600160401b03811115614ac1575f80fd5b614acd89828a01614459565b9097509550506020870135614ae181614302565b9350604087013592506060870135614af881614302565b9150614b0660808801614800565b90509295509295509295565b5f8060408385031215614b23575f80fd5b82359150614450602084016145e3565b5f8060408385031215614b44575f80fd5b50508035926020909101359150565b5f805f805f8060a08789031215614b68575f80fd5b8635955060208701356001600160401b03811115614b84575f80fd5b614b9089828a01614459565b9096509450506040870135614ba481614302565b9250614bb2606088016145e3565b9150614b0660808801614414565b5f805f8060408587031215614bd3575f80fd5b84356001600160401b0380821115614be9575f80fd5b614bf588838901614459565b90965094506020870135915080821115614c0d575f80fd5b50614c1a87828801614459565b95989497509550505050565b5f805f8060808587031215614c39575f80fd5b843593506020850135614c4b81614302565b925060408501356147e781614302565b5f805f60608486031215614c6d575f80fd5b833592506020840135915060408401356149de81614302565b5f8060408385031215614c97575f80fd5b8235614ca281614302565b9150602083013561440981614302565b5f805f8060608587031215614cc5575f80fd5b84356001600160401b03811115614cda575f80fd5b614ce687828801614459565b9095509350506020850135614cfa81614302565b91506040850135614d0a81614302565b939692955090935050565b5f805f805f60a08688031215614d29575f80fd5b8535614d3481614302565b94506020860135614d4481614302565b9350604086013592506060860135915060808601356001600160401b03811115614d6c575f80fd5b6147b08882890161458b565b5f60208284031215614d88575f80fd5b81516001600160401b03811115614d9d575f80fd5b8201601f81018413614dad575f80fd5b8051614db881614565565b604051614dc58282614539565b828152866020848601011115614dd9575f80fd5b610954836020830160208701614387565b9182526001600160a01b0316602082015260400190565b5f805f8060808587031215614e14575f80fd5b84356001600160401b03811115614e29575f80fd5b614e358782880161458b565b9450506020850135614e4681614302565b9250614e5460408601614800565b91506060850135614d0a81614302565b5f60208284031215614e74575f80fd5b5051919050565b634e487b7160e01b5f52601160045260245ffd5b6001600160401b03818116838216019080821115614eaf57614eaf614e7b565b5092915050565b600181811c90821680614eca57607f821691505b602082108103614ee857634e487b7160e01b5f52602260045260245ffd5b50919050565b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b634e487b7160e01b5f52603260045260245ffd5b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b604081525f614fa360408301856148ee565b8281036020840152614fb581856148ee565b95945050505050565b5f60208284031215614fce575f80fd5b815161089981614302565b5f60208284031215614fe9575f80fd5b815161089981614a5e565b818382375f9101908152919050565b60208082526028908201527f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f604082015267373a3937b63632b960c11b606082015260800190565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b60c081525f61508660c083018a8c61504b565b6001600160a01b03898116602085015263ffffffff891660408501526001600160401b03881660608501528616608084015282810360a08401526150cb81858761504b565b9b9a5050505050505050505050565b601f8211156108e057805f5260205f20601f840160051c810160208510156150ff5750805b601f840160051c820191505b81811015611213575f815560010161510b565b6001600160401b0383111561513557615135614525565b615149836151438354614eb6565b836150da565b5f601f84116001811461517a575f85156151635750838201355b5f19600387901b1c1916600186901b178355611213565b5f83815260208120601f198716915b828110156151a95786850135825560209485019460019092019101615189565b50868210156151c5575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b6001600160401b03828116828216039080821115614eaf57614eaf614e7b565b81516001600160401b0381111561521057615210614525565b6152248161521e8454614eb6565b846150da565b602080601f831160018114615257575f84156152405750858301515b5f19600386901b1c1916600185901b1785556133cb565b5f85815260208120601f198616915b8281101561528557888601518255948401946001909101908401615266565b50858210156152a257878501515f19600388901b60f8161c191681555b5050505050600190811b01905550565b6001600160a01b0386811682528516602082015260a0604082018190525f906152dd908301866148ee565b82810360608401526152ef81866148ee565b9050828103608084015261350481856143a9565b5f60208284031215615313575f80fd5b815161089981614357565b5f60033d11156153345760045f803e505f5160e01c5b90565b5f60443d10156153445790565b6040516003193d81016004833e81513d6001600160401b03816024840111818411171561537357505050505090565b828501915081518181111561538b5750505050505090565b843d87010160208285010111156153a55750505050505090565b6153b460208286010187614539565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b608081525f61541960808301876143a9565b6001600160a01b039590951660208301525063ffffffff9290921660408301526001600160401b0316606090910152919050565b818103818111156107ea576107ea614e7b565b808201808211156107ea576107ea614e7b565b60ff60f81b8460f81b1681525f8351615493816001850160208801614387565b8351908301906154aa816001840160208801614387565b0160010195945050505050565b6001600160a01b03868116825285166020820152604081018490526060810183905260a0608082018190525f906154f0908301846143a9565b97965050505050505056fe93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4aea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2a68925cf5169f28586095d5b5b9933b3008f4c793a48be4f59b8b2bc62aa60a":"0x1","0x54cdd369e4e8a8515e52ca72ec816c2101831ad1f18bf44102ed171459c9b4f8":"0x2","0xa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb49":"0xffffffffffffffff000100010000000000000000000000000000000000000000","0xafa26c20e8b3d9a2853d642cfe1021dae26242ffedfac91c97aab212c1a4b93b":"0xffffffffffffffff000100010000000000000000000000000000000000000000","0xef5b11c47ebee44618abc22110e10e3b408ea5e799056d2b38461aa7b97c5a97":"0x1","0xfb9e8e321b8a5ec48f12a7b41f22c6e595d761285c9eb19d8dda7c99edf1b54f":"0x36574680000000000000000000000000000000000000000000000000000000a"}},"0x6e1eb616c7d69491f9a880f815ff5574768cba20":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b506004361061007a575f3560e01c806314ab90381161005857806314ab90381461010357806316a25cbd146101165780631896f70a146101625780635b0fc9c314610175575f80fd5b80630178b8bf1461007e57806302571be3146100c657806306ab5923146100ee575b5f80fd5b6100a961008c366004610403565b5f908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100a96100d4366004610403565b5f908152602081905260409020546001600160a01b031690565b6101016100fc366004610435565b610188565b005b610101610111366004610467565b610242565b610149610124366004610403565b5f90815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100bd565b6101016101703660046104a1565b6102e2565b6101016101833660046104a1565b610374565b5f8381526020819052604090205483906001600160a01b031633146101ab575f80fd5b60408051602080820187905281830186905282518083038401815260608301808552815191909201206001600160a01b0386169091529151859187917fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829181900360800190a35f90815260208190526040902080546001600160a01b0319166001600160a01b039390931692909217909155505050565b5f8281526020819052604090205482906001600160a01b03163314610265575f80fd5b60405167ffffffffffffffff8316815283907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a2505f91825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b5f8281526020819052604090205482906001600160a01b03163314610305575f80fd5b6040516001600160a01b038316815283907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a2505f9182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b5f8281526020819052604090205482906001600160a01b03163314610397575f80fd5b6040516001600160a01b038316815283907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a2505f9182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b5f60208284031215610413575f80fd5b5035919050565b80356001600160a01b0381168114610430575f80fd5b919050565b5f805f60608486031215610447575f80fd5b833592506020840135915061045e6040850161041a565b90509250925092565b5f8060408385031215610478575f80fd5b82359150602083013567ffffffffffffffff81168114610496575f80fd5b809150509250929050565b5f80604083850312156104b2575f80fd5b823591506104c26020840161041a565b9050925092905056fea164736f6c6343000818000a","storage":{"0x859ecef2e168dc10231b000bd53493b42bc9d944cac29d94582c1e1d43592131":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x7bb6cd9be29fab783c0b494a06fed8b2e2596b7a":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100ea5760003560e01c80636debcb8d1161008c578063b34f33c511610066578063b34f33c514610741578063d0778d6c14610814578063ef2c3088146108f2578063f5090c1e14610980576100ea565b80636debcb8d146105ca5780636fab95b3146106585780637b1039991461071d576100ea565b8063511f1112116100c8578063511f1112146103c557806361603dd91461044857806368b6154f146104bd5780636ccbae5f1461059b576100ea565b806307eca395146100ef578063280d9b051461021457806330135293146102f2575b600080fd5b610212600480360360a081101561010557600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561013457600080fd5b82018360208201111561014657600080fd5b803590602001918460018302840111600160201b8311171561016757600080fd5b919390929091602081019035600160201b81111561018457600080fd5b82018360208201111561019657600080fd5b803590602001918460018302840111600160201b831117156101b757600080fd5b919390929091602081019035600160201b8111156101d457600080fd5b8201836020820111156101e657600080fd5b803590602001918460018302840111600160201b8311171561020757600080fd5b509092509050610aae565b005b610212600480360360a081101561022a57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561026457600080fd5b82018360208201111561027657600080fd5b803590602001918460018302840111600160201b8311171561029757600080fd5b919390929091602081019035600160201b8111156102b457600080fd5b8201836020820111156102c657600080fd5b803590602001918460018302840111600160201b831117156102e757600080fd5b509092509050610c92565b6102126004803603608081101561030857600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561033757600080fd5b82018360208201111561034957600080fd5b803590602001918460018302840111600160201b8311171561036a57600080fd5b919390929091602081019035600160201b81111561038757600080fd5b82018360208201111561039957600080fd5b803590602001918460018302840111600160201b831117156103ba57600080fd5b509092509050610e3d565b610212600480360360608110156103db57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561040a57600080fd5b82018360208201111561041c57600080fd5b803590602001918460018302840111600160201b8311171561043d57600080fd5b509092509050610fcc565b6102126004803603604081101561045e57600080fd5b81359190810190604081016020820135600160201b81111561047f57600080fd5b82018360208201111561049157600080fd5b803590602001918460018302840111600160201b831117156104b257600080fd5b5090925090506110c9565b610212600480360360a08110156104d357600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561050d57600080fd5b82018360208201111561051f57600080fd5b803590602001918460018302840111600160201b8311171561054057600080fd5b919390929091602081019035600160201b81111561055d57600080fd5b82018360208201111561056f57600080fd5b803590602001918460018302840111600160201b8311171561059057600080fd5b5090925090506111ae565b6105b8600480360360208110156105b157600080fd5b50356113a8565b60408051918252519081900360200190f35b610212600480360360808110156105e057600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561061a57600080fd5b82018360208201111561062c57600080fd5b803590602001918460018302840111600160201b8311171561064d57600080fd5b5090925090506113ba565b6102126004803603606081101561066e57600080fd5b81359190810190604081016020820135600160201b81111561068f57600080fd5b8201836020820111156106a157600080fd5b803590602001918460018302840111600160201b831117156106c257600080fd5b919390929091602081019035600160201b8111156106df57600080fd5b8201836020820111156106f157600080fd5b803590602001918460018302840111600160201b8311171561071257600080fd5b5090925090506114d4565b610725611675565b604080516001600160a01b039092168252519081900360200190f35b6102126004803603608081101561075757600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561078657600080fd5b82018360208201111561079857600080fd5b803590602001918460018302840111600160201b831117156107b957600080fd5b919390929091602081019035600160201b8111156107d657600080fd5b8201836020820111156107e857600080fd5b803590602001918460018302840111600160201b8311171561080957600080fd5b509092509050611684565b610212600480360360a081101561082a57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561086457600080fd5b82018360208201111561087657600080fd5b803590602001918460018302840111600160201b8311171561089757600080fd5b919390929091602081019035600160201b8111156108b457600080fd5b8201836020820111156108c657600080fd5b803590602001918460018302840111600160201b831117156108e757600080fd5b5090925090506117de565b6102126004803603608081101561090857600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561094257600080fd5b82018360208201111561095457600080fd5b803590602001918460018302840111600160201b8311171561097557600080fd5b5090925090506119e4565b610212600480360360c081101561099657600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156109d057600080fd5b8201836020820111156109e257600080fd5b803590602001918460018302840111600160201b83111715610a0357600080fd5b919390929091602081019035600160201b811115610a2057600080fd5b820183602082011115610a3257600080fd5b803590602001918460018302840111600160201b83111715610a5357600080fd5b919390929091602081019035600160201b811115610a7057600080fd5b820183602082011115610a8257600080fd5b803590602001918460018302840111600160201b83111715610aa357600080fd5b509092509050611ad3565b610bb163ce9fb82b89898989898960405160240180876001600160a01b03166001600160a01b0316815260200186815260200180602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f820116905080830192505050985050505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208884848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b600154604051630119f80560e21b81526001600160a01b038a811660048301908152602483018b9052608060448401908152608484018a90529190931692630467e014928c928c928c928c928c928c92909190606481019060a401878780828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f82011690508083019250505098505050505050505050600060405180830381600087803b158015610c7057600080fd5b505af1158015610c84573d6000803e3d6000fd5b505050505050505050505050565b610d8363b88d4fde888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040516315eab15d60e21b81526001600160a01b03898116600483019081528982166024840152604483018990526080606484019081526084840188905291909316926357aac574928b928b928b928b928b929160a401848480828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b158015610e1c57600080fd5b505af1158015610e30573d6000803e3d6000fd5b5050505050505050505050565b610f09637c69eae28787878760405160240180856001600160a01b03166001600160a01b0316815260200184815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09d909d1b9c909c178c529351909a208a51918d01849004840282018401909a528b81528f985096508b95508a94508493505085019050838280828437600092019190915250611d5492505050565b600154604051630119f80560e21b81526001600160a01b038881166004830190815260248301899052608060448401908152608484018890529190931692630467e014928a928a928a928a9290606481019060a401858580828437600081840152601f19601f8201169050808301925050508381038252600081526020016020019650505050505050600060405180830381600087803b158015610fac57600080fd5b505af1158015610fc0573d6000803e3d6000fd5b50505050505050505050565b604080516001600160a01b038616602482015260448082018690528251808303909101815260649091018252602081810180516001600160e01b0316632392c18960e01b17815291519091208251601f85018390048302810183019093528383526110569290918691908690869081908401838280828437600092019190915250611d5492505050565b60015460408051631292e83560e11b81526001600160a01b0387811660048301526024820187905291519190921691632525d06a91604480830192600092919082900301818387803b1580156110ab57600080fd5b505af11580156110bf573d6000803e3d6000fd5b5050505050505050565b6040805160248082018690528251808303909101815260449091018252602081810180516001600160e01b0316630852cd8d60e31b17815291519091208251601f85018390048302810183019093528383526111449290918691908690869081908401838280828437600092019190915250611d5492505050565b6001546040805163e67ca8a360e01b81526004810186905290516001600160a01b039092169163e67ca8a39160248082019260009290919082900301818387803b15801561119157600080fd5b505af11580156111a5573d6000803e3d6000fd5b50505050505050565b61129f639e5be9a5888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b03909316926302759c37928b928b9286926368b62d32928d928d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561132757600080fd5b505afa15801561133b573d6000803e3d6000fd5b505050506040513d602081101561135157600080fd5b5051604080516001600160e01b031960e087901b1681526001600160a01b03948516600482015292909316602483015260448201529051606480830192600092919082900301818387803b158015610e1c57600080fd5b60009081526020819052604090205490565b604080516001600160a01b0380881660248301528616604482015260648082018690528251808303909101815260849091018252602081810180516001600160e01b0316632142170760e11b17815291519091208251601f850183900483028101830190935283835261144c9290918691908690869081908401838280828437600092019190915250611d5492505050565b600154604080516315eab15d60e21b81526001600160a01b0388811660048301528781166024830152604482018790526080606483015260006084830181905292519316926357aac5749260c48084019391929182900301818387803b1580156114b557600080fd5b505af11580156114c9573d6000803e3d6000fd5b505050505050505050565b611585635cbe11128686866040516024018084815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09c909c1b9b909b178b5293519099208951918c018490048402820184019099528a81528e975095508a9450899350839250508401838280828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b039093169263e67ca8a39284926368b62d32928b928b928b929190606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561160b57600080fd5b505afa15801561161f573d6000803e3d6000fd5b505050506040513d602081101561163557600080fd5b5051604080516001600160e01b031960e085901b168152600481019290925251602480830192600092919082900301818387803b1580156114b557600080fd5b6001546001600160a01b031690565b61175063d8d3cc6e8787878760405160240180856001600160a01b03166001600160a01b0316815260200184815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09d909d1b9c909c178c529351909a208a51918d01849004840282018401909a528b81528f985096508b95508a94508493505085019050838280828437600092019190915250611d5492505050565b60015460405163b546666960e01b81526001600160a01b03888116600483019081526024830189905260606044840190815260648401889052919093169263b5466669928a928a928a928a9290608401848480828437600081840152601f19601f82011690508083019250505095505050505050600060405180830381600087803b158015610fac57600080fd5b6118cf639d743989888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b03909316926357aac574928b928b9286926368b62d32928d928d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561195757600080fd5b505afa15801561196b573d6000803e3d6000fd5b505050506040513d602081101561198157600080fd5b5051604080516001600160e01b031960e087901b1681526001600160a01b039485166004820152929093166024830152604482015260806064820152600060848201819052915160c4808301939282900301818387803b158015610e1c57600080fd5b604080516001600160a01b0380881660248301528616604482015260648082018690528251808303909101815260849091018252602081810180516001600160e01b03166323b872dd60e01b17815291519091208251601f8501839004830281018301909352838352611a769290918691908690869081908401838280828437600092019190915250611d5492505050565b600154604080516302759c3760e01b81526001600160a01b038881166004830152878116602483015260448201879052915191909216916302759c3791606480830192600092919082900301818387803b1580156114b557600080fd5b611bf063c29b52f98a8a8a8a8a8a8a60405160240180886001600160a01b03166001600160a01b03168152602001876001600160a01b03166001600160a01b0316815260200186815260200180602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f82011690508083019250505099505050505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208884848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b8152600481018a815260248201928352604482018990526001600160a01b03909316926357aac574928d928d9286926368b62d32928f928f928f92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b158015611c7857600080fd5b505afa158015611c8c573d6000803e3d6000fd5b505050506040513d6020811015611ca257600080fd5b50516040516001600160e01b031960e086901b1681526001600160a01b0380851660048301908152908416602483015260448201839052608060648301908152608483018b90528b928b92919060a401848480828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b158015611d3157600080fd5b505af1158015611d45573d6000803e3d6000fd5b50505050505050505050505050565b6000828152602081815260408083205481518084018890523060601b81840152605480820183905283518083039091018152607490910190925281519190920120909190611db3908490611da790611ea9565b9063ffffffff611efa16565b90506001600160a01b03811615801590611e4957506001546040805163430c208160e01b81526001600160a01b038481166004830152602482018890529151919092169163430c2081916044808301926020929190829003018186803b158015611e1c57600080fd5b505afa158015611e30573d6000803e3d6000fd5b505050506040513d6020811015611e4657600080fd5b50515b611e8e576040805162461bcd60e51b8152602060048201526011602482015270494e56414c49445f5349474e415455524560781b604482015290519081900360640190fd5b50505060009081526020819052604090208054600101905550565b604080517f19457468657265756d205369676e6564204d6573736167653a0a333200000000602080830191909152603c8083019490945282518083039094018452605c909101909152815191012090565b60008151604114611f0d57506000611fe3565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0821115611f535760009350505050611fe3565b8060ff16601b14158015611f6b57508060ff16601c14155b15611f7c5760009350505050611fe3565b6040805160008152602080820180845289905260ff8416828401526060820186905260808201859052915160019260a0808401939192601f1981019281900390910190855afa158015611fd3573d6000803e3d6000fd5b5050506020604051035193505050505b9291505056fea265627a7a7231582014816bfd0c1519ce8c4cf272eb0526ffdba3abef0df7f17deb0da40bd8abb77f64736f6c634300050c0032","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533"}},"0x7c3c91245769c8b7450ad522792dec4bd4bf797f":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b506004361061003f575f3560e01c80631bf7e13e146100435780636ccbae5f1461006c578063a424740014610099575b5f80fd5b610056610051366004610749565b6100bc565b604051610063919061082c565b60405180910390f35b61008b61007a36600461083e565b5f9081526001602052604090205490565b604051908152602001610063565b6100ac6100a7366004610749565b6101d6565b6040519015158152602001610063565b60605f5a90506100cd8585856101d6565b6101315760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e61676572466f727761726465723a205349474e415455604482015269149157d253959053125160b21b60648201526084015b60405180910390fd5b6101cb6101416020870187610870565b5f546001600160a01b031660408801358461015f60608b018b610889565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f9201919091525061023292505050565b9150505b9392505050565b5f61022a6101e38561093a565b5f54604080516020601f88018190048102820181019092528681526001600160a01b03909216919087908790819084018382808284375f9201919091525061030e92505050565b949350505050565b606061023d85610453565b5f80876001600160a01b0316866102568b8a898961047e565b60405161026391906109f5565b5f604051808303815f8787f1925050503d805f811461029d576040519150601f19603f3d011682016040523d82523d5f602084013e6102a2565b606091505b5090925090506102b3603f87610a10565b5a116102c1576102c1610a2f565b61030182826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506104ae565b9998505050505050505050565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015610352573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103769190610a43565b90505f6104238660600151805190602001208688602001516040516020016103c39392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561044957508551610449906001600160a01b031682866104e7565b9695505050505050565b5f8181526001602081905260409091205461046d91610a5a565b5f9182526001602052604090912055565b606082858560405160200161049593929190610a7f565b6040516020818303038152906040529050949350505050565b606083156104bd5750816101cf565b8251156104cd5782518084602001fd5b8160405162461bcd60e51b8152600401610128919061082c565b5f805f6104f48585610622565b90925090505f81600481111561050c5761050c610abd565b14801561052a5750856001600160a01b0316826001600160a01b0316145b1561053a576001925050506101cf565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401610561929190610ad1565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161059f91906109f5565b5f60405180830381855afa9150503d805f81146105d7576040519150601f19603f3d011682016040523d82523d5f602084013e6105dc565b606091505b50915091508180156105ef575080516020145b801561061657508051630b135d3f60e11b906106149083016020908101908401610a43565b145b98975050505050505050565b5f808251604103610656576020830151604084015160608501515f1a61064a87828585610664565b9450945050505061065d565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561069957505f90506003610740565b8460ff16601b141580156106b157508460ff16601c14155b156106c157505f90506004610740565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610712573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b03811661073a575f60019250925050610740565b91505f90505b94509492505050565b5f805f6040848603121561075b575f80fd5b833567ffffffffffffffff80821115610772575f80fd5b9085019060808288031215610785575f80fd5b9093506020850135908082111561079a575f80fd5b818601915086601f8301126107ad575f80fd5b8135818111156107bb575f80fd5b8760208285010111156107cc575f80fd5b6020830194508093505050509250925092565b5f5b838110156107f95781810151838201526020016107e1565b50505f910152565b5f81518084526108188160208601602086016107df565b601f01601f19169290920160200192915050565b602081525f6101cf6020830184610801565b5f6020828403121561084e575f80fd5b5035919050565b80356001600160a01b038116811461086b575f80fd5b919050565b5f60208284031215610880575f80fd5b6101cf82610855565b5f808335601e1984360301811261089e575f80fd5b83018035915067ffffffffffffffff8211156108b8575f80fd5b60200191503681900382131561065d575f80fd5b634e487b7160e01b5f52604160045260245ffd5b6040516080810167ffffffffffffffff81118282101715610903576109036108cc565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610932576109326108cc565b604052919050565b5f6080823603121561094a575f80fd5b6109526108e0565b61095b83610855565b81526020808401358183015260408401356040830152606084013567ffffffffffffffff8082111561098b575f80fd5b9085019036601f83011261099d575f80fd5b8135818111156109af576109af6108cc565b6109c1601f8201601f19168501610909565b915080825236848285010111156109d6575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b5f8251610a068184602087016107df565b9190910192915050565b5f82610a2a57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b5f60208284031215610a53575f80fd5b5051919050565b80820180821115610a7957634e487b7160e01b5f52601160045260245ffd5b92915050565b5f8451610a908184602089016107df565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f61022a604083018461080156fea164736f6c6343000818000a","storage":{"0x0":"0x39a27956b78d00a4e00ea8833ff0947410a2933f"}},"0x8861cdfa38838531275ce12f9e795c3b9ff29cbe":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x936188f2c3c8e8c95e425b6fe41c2ac9e701585e":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x94f57ed7e9af03a10e8eb23ce1b3c7914a182b0f":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x95f29431aeb52c0d5dbeeec36010b8e2ca69cb3d":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x9b2565a3545a1312bdcb6e7148a7f7cae8c2706b":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c806373cc48a61161008857806398d35f201161006357806398d35f2014610215578063bd7ed31a1461021d578063c327deef14610245578063d7b82ebe1461026d575f80fd5b806373cc48a6146101af5780638438dc04146101ef5780638da5cb5b14610202575f80fd5b806313af4035116100c357806313af40351461015657806328e7677d146101695780632c095cbb1461017c578063435cc1621461018f575f80fd5b8063020ed8d3146100e9578063087991bc146100fe5780630b1a249514610143575b5f80fd5b6100fc6100f73660046122ff565b610280565b005b61011161010c36600461238a565b610300565b6040805163ffffffff94851681529390921660208401526001600160601b031916908201526060015b60405180910390f35b6100fc610151366004612510565b61036c565b6100fc6101643660046125c6565b6104da565b6100fc6101773660046122ff565b610512565b6100fc61018a3660046125e1565b61058a565b6101a261019d366004612674565b610656565b60405161013a919061278c565b6101d76101bd36600461279e565b60046020525f90815260409020546001600160a01b031681565b6040516001600160a01b03909116815260200161013a565b6100fc6101fd3660046122ff565b6106d2565b6001546101d7906001600160a01b031681565b6101a261074a565b6101d761022b36600461279e565b60056020525f90815260409020546001600160a01b031681565b6101d761025336600461279e565b60036020525f90815260409020546001600160a01b031681565b6101a261027b3660046127b7565b6107d5565b6001546001600160a01b03163314610296575f80fd5b60ff82165f8181526003602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527ff73c3c226af96b7f1ba666a21b3ceaf2be3ee6a365e3178fd9cd1eaae0075aa891015b60405180910390a15050565b5f805f8060025f8787604051610317929190612817565b604080519182900390912082526020808301939093529081015f90812061ffff8b16825290925290205463ffffffff80821695506401000000008204169350600160401b900460601b91505093509350939050565b83516020808601919091205f90815260028252604080822061ffff891683529092529081205463ffffffff16906103a385846107ea565b90506103b0818784610889565b6103b8612239565b845151156103d7576103ca85856107ea565b90506103d7818885610889565b5f6103e1836108cc565b602081015190915060fe16156103f5575f80fd5b61040081602761092a565b158015610425575061041381600261092a565b1580610425575061042581600661092a565b61042d575f80fd5b61043e89898561012001518461093a565b156104795787516020808a01919091205f90815260028252604080822061ffff8d1683529092522080546001600160e01b03191690556104cf565b6104988884610120015183856101200151610493876108cc565b610968565b156100e55787516020808a01919091205f90815260028252604080822061ffff8d1683529092522080546001600160e01b03191690555b505050505050505050565b6001546001600160a01b031633146104f0575f80fd5b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6001546001600160a01b03163314610528575f80fd5b60ff82165f8181526004602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527f2fcc274c3b72dd483ab201bfa87295e3817e8b9b10693219873b722ca1af00c791016102f4565b610592612239565b61059c83836107ea565b805190915061ffff16602f146105b0575f80fd5b60a081015184516020808701919091205f90815260028252604080822061ffff8a16835290925220546105e9919063ffffffff16610a7c565b6105f1575f80fd5b5f6105fb82610a94565b9050805151602082015110156100e55761061c818361012001518789610aab565b505082516020808501919091205f90815260028252604080822061ffff881683529092522080546001600160e01b03191690555b50505050565b60605f83838080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201829052509394505050505b85518110156106c7576106bd8682815181106106af576106af612826565b602002602001015183610c4a565b9150600101610691565b5090505b9392505050565b6001546001600160a01b031633146106e8575f80fd5b60ff82165f8181526005602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527fc7eec866a7a1386188cc3ca20ffea75b71bd3e90a60b6791b1d3f0971145118d91016102f4565b5f80546107569061283a565b80601f01602080910402602001604051908101604052809291908181526020018280546107829061283a565b80156107cd5780601f106107a4576101008083540402835291602001916107cd565b820191905f5260205f20905b8154815290600101906020018083116107b057829003601f168201915b505050505081565b60606107e18383610c4a565b90505b92915050565b6107f2612239565b82516107fd90610dc6565b905061080d8160e0015183610ebf565b610815575f80fd5b5f61082382835f0151610f25565b604083015190915060ff16610838825f610fcc565b14610841575f80fd5b610120820181905260808201516108589042610a7c565b610860575f80fd5b61086e428360a00151610a7c565b610876575f80fd5b61088281838686611026565b5092915050565b6108978360a0015182610a7c565b61089f575f80fd5b825161ffff166032146108b0575f80fd5b6108bf83610120015183611106565b6108c7575f80fd5b505050565b6040805160c0810182525f8082526020820181905291810182905260608082018190526080820183905260a08201529061090583610a94565b60a081015160c08201519192506106cb91610921908290612880565b83519190611172565b5f6107e18360a001515f846112b4565b5f6109468284866113c1565b1561095d57610955828661092a565b159050610960565b505f5b949350505050565b60208101515f9060fe161561097b575f80fd5b5f610985866113e6565b90505f610991856113e6565b90505f8061099f8a82611401565b6109aa906001612893565b60ff1690505b8951811015610a6b57836109dc896109d784858f516109cf9190612880565b8f9190611424565b6114a4565b03610a3f575f6109f7876109d785868f516109cf9190612880565b90508660800151841015610a23578381118015610a175750866080015181105b95505050505050610a73565b83811180610a1757508660800151811095505050505050610a73565b905080610a4c8a82611401565b610a57906001612893565b610a649060ff16826128ac565b90506109b0565b505f93505050505b95945050505050565b5f80610a8883856128bf565b60030b12159392505050565b610a9c61228e565b6107e48261010001515f61152d565b60a084015184515f90610abe9083611548565b90505f8660a001518760c00151610ad59190612880565b9050818111610ae2575f80fd5b5f610aed868861159f565b9050805f03610b1a57610b0c610b0384866128ac565b895190876112b4565b15610b15575f80fd5b610b5b565b87515f90610b29908686611424565b90505f8213610b36575f80fd5b5f610b41898361159f565b12156104cf575f610b52888361159f565b126104cf575f80fd5b5050505050505050565b60c08101516020820181905281515111610b7c5750565b5f610b8e825f01518360200151611548565b8260200151610b9d91906128ac565b8251909150610bac90826116ec565b61ffff166040830152610bc06002826128ac565b8251909150610bcf90826116ec565b61ffff166060830152610be36002826128ac565b8251909150610bf29082611712565b63ffffffff166080830152610c086004826128ac565b82519091505f90610c1990836116ec565b61ffff169050610c2a6002836128ac565b60a084018190529150610c3d81836128ac565b60c0909301929092525050565b6060610c54612239565b610c5e84846107ea565b61012081015180516020918201205f908152600282526040808220845161ffff16835290925220805491925090600160401b900460601b6001600160601b03191615610cc35760a08201518154610cbb919063ffffffff16610a7c565b610cc3575f80fd5b604080516060808201835260a085015163ffffffff9081168352608086015181166020808501918252610100880180518051908301206001600160601b0319168688019081526101208a0180518051908501205f908152600285528981208c5161ffff16825290945292889020965187549451915190961c600160401b0268010000000000000000600160e01b03199186166401000000000267ffffffffffffffff19909516969095169590951792909217939093169190911790925551905191517f55ced933cdd5a34dd03eb5d4bef19ec6ebb251dcd7a988eee0c1b9a13baaa88b92610db192916128e6565b60405180910390a15061010001519392505050565b610dce612239565b610dd8825f6116ec565b61ffff168152610de9826002611401565b60ff166020820152610dfc826003611401565b60ff166040820152610e0f826004611712565b63ffffffff9081166060830152610e2b90839060089061171216565b63ffffffff9081166080830152610e47908390600c9061171216565b63ffffffff90811660a0830152610e639083906010906116ec16565b61ffff1660c0820152610e7782601261173a565b60e0820181905251610eb490610e8e9060126128ac565b8260e001515160128551610ea29190612880565b610eac9190612880565b849190611424565b610100820152919050565b5f80610ed5610ece8483611548565b84906116ec565b83516020808601919091208651878301205f90815260028352604080822061ffff90951682529390925291902054600160401b900460601b6001600160601b031990811691161491505092915050565b60605f610f3184610a94565b90505b8051516020820151101561088257606081015161ffff16600114610f56575f80fd5b81515f03610f6e57610f6781611754565b9150610fa7565b60208101518151610f7e91611548565b825114610f89575f80fd5b805160208201518351610f9f9285925f92611775565b610fa7575f80fd5b8261ffff16816040015161ffff1614610fbe575f80fd5b610fc781610b65565b610f34565b5f805b83518310610fdf57610fdf61290a565b5f610fea8585611401565b60ff169050610ffa8160016128ac565b61100490856128ac565b9350805f0361101357506107e1565b61101e6001836128ac565b915050610fcf565b83518360e00151511115611038575f80fd5b61105c5f858560e0015151875161104f9190612880565b60e0870151929190611797565b611064575f80fd5b5f61106f828261152d565b9050602b61ffff16816040015161ffff160361109d576110908484836117cb565b611098575f80fd5b6110ff565b603061ffff16816040015161ffff16036110bc5761109084848361185f565b60405162461bcd60e51b8152602060048201526014602482015273139bc81d985b1a59081c1c9bdbd988199bdd5b9960621b604482015260640160405180910390fd5b5050505050565b5f806111128482611401565b61111d906001612893565b60ff1690505f5b835181101561095d5761113984828785611797565b15611149576001925050506107e4565b6111538482611401565b61115e906001612893565b61116b9060ff16826128ac565b9050611124565b6040805160c0810182525f8082526020820181905291810182905260608082018190526080820183905260a0820152906111ac83856128ac565b90506111c26111bb5f866128ac565b8690611401565b60ff1682526111d56111bb6001866128ac565b60ff1660208301526111f26111eb6002866128ac565b86906116ec565b61ffff1660408301525f61121161120a6004876128ac565b8790611401565b905061121e6005866128ac565b945061122e868660ff8416611424565b606084015261124060ff8216866128ac565b94505f61124d8787611401565b905060208160ff16111561125f575f80fd5b61126a6001876128ac565b955061127a878760ff8416611900565b608085015261128c60ff8216876128ac565b95506112a48661129c8186612880565b899190611424565b60a0850152509195945050505050565b5f60ff600883811c82169183916112cc918616612932565b90505f6112dd600780871690612952565b600160ff919091161b9050855b87518110156113b4575f6112fe8983611401565b90505f61131661130f8460016128ac565b8b90611401565b90508160ff168660ff161015611334575f96505050505050506106cb565b8160ff168660ff1603611393578460ff168160ff161161135c575f96505050505050506106cb565b8361137f61136d60ff8816866128ac565b6113789060026128ac565b8c90611401565b1660ff165f141596505050505050506106cb565b61139e816002612893565b6113ab9060ff16846128ac565b925050506112ea565b505f979650505050505050565b5f806113cd85846114a4565b90505f6113d9856113e6565b9190911495945050505050565b5f6107e460016113f68484611401565b84919060ff1661193d565b5f82828151811061141457611414612826565b016020015160f81c905092915050565b825160609061143383856128ac565b111561143d575f80fd5b5f8267ffffffffffffffff811115611457576114576123d9565b6040519080825280601f01601f191660200182016040528015611481576020820181803683370190505b50905060208082019086860101611499828287611b43565b509095945050505050565b815160ff165f9081526005602052604080822054606085015182860151925163347ced5960e11b81526001600160a01b03909216926368f9dab2926114ee9291879160040161296b565b602060405180830381865afa158015611509573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107e191906129a4565b61153561228e565b82815260c081018290526107e481610b65565b5f815b8351811061155b5761155b61290a565b5f6115668583611401565b60ff1690506115768160016128ac565b61158090836128ac565b9150805f0361158f5750611595565b5061154b565b6109608382612880565b5f6115aa8383611b98565b156115b657505f6107e4565b5f805f805f6115c5885f610fcc565b90505f6115d2885f610fcc565b90505b808211156115fe578593506115ea8987611bb3565b9550816115f6816129bb565b9250506115d5565b81811115611627578492506116138886611bb3565b94508061161f816129bb565b9150506115fe565b5f8211801561163f575061163d89878a88611797565b155b15611674578593506116518987611bb3565b95508492506116608886611bb3565b945061166d600183612880565b9150611627565b855f0361168a575f1996505050505050506107e4565b845f036116a057600196505050505050506107e4565b6116df6116ae8560016128ac565b6116b88b87611401565b60ff168a6116c78760016128ac565b6116d18d89611401565b8e949392919060ff16611bd6565b9998505050505050505050565b81515f906116fb8360026128ac565b1115611705575f80fd5b50016002015161ffff1690565b81515f906117218360046128ac565b111561172b575f80fd5b50016004015163ffffffff1690565b60605f6117478484611548565b9050610960848483611424565b602081015181516060916107e49161176c9082611548565b84519190611424565b5f611781848484611cc6565b61178c878785611cc6565b149695505050505050565b5f6117af83838486516117aa9190612880565b611cc6565b6117c186868789516117aa9190612880565b1495945050505050565b5f806117d685610a94565b90505b8051516020820151101561095d57604081015161ffff166030146117fb575f80fd5b5f61180582611ce8565b90505f61181e5f835184611d049092919063ffffffff16565b905061182c81838989611da0565b1561184f5761184561183d84611754565b868385611e9b565b93505050506106cb565b505061185a81610b65565b6117d9565b5f6118778460e0015161187184611754565b90611b98565b61187f575f80fd5b815151602083015110156118f75761189e8460e0015161187184611754565b6118a6575f80fd5b5f6118b083611ce8565b90505f6118c95f835184611d049092919063ffffffff16565b90506118d781838888611da0565b156118e7576001925050506106cb565b50506118f282610b65565b61187f565b505f9392505050565b5f602082111561190e575f80fd5b835161191a83856128ac565b1115611924575f80fd5b506020919092018101519190036101000a5f1901191690565b5f603482111561194b575f80fd5b5f80805b84811015611a29575f8761196383896128ac565b8151811061197357611973612826565b01602001516001600160f81b0319169050600360fc1b81108015906119a65750603d60f91b6001600160f81b0319821611155b6119ae575f80fd5b604051806080016040528060478152602001612b5c604791396119d6603060f884901c612880565b815181106119e6576119e6612826565b0160209081015160f81c93508311156119fd575f80fd5b611a08600187612880565b8203611a145750611a29565b5060059290921b60ff8216179160010161194f565b505f611a368560056129d0565b9050611a436008866129e7565b5f03611a5a578160ff16600584901b179250611b29565b611a656008866129e7565b600203611a935760028260ff16901c60ff16600384901b179250600281611a8c9190612880565b9050611b29565b611a9e6008866129e7565b600403611ac55760048260ff16901c60ff16600184901b179250600481611a8c9190612880565b611ad06008866129e7565b600503611af75760018260ff16901c60ff16600484901b179250600181611a8c9190612880565b611b026008866129e7565b6007036100e55760038260ff16901c60ff16600284901b179250600381611a8c9190612880565b611b3581610100612880565b9290921b9695505050505050565b60208110611b7b5781518352611b5a6020846128ac565b9250611b676020836128ac565b9150611b74602082612880565b9050611b43565b905182516020929092036101000a5f190180199091169116179052565b5f815183511480156107e157506107e1835f845f8751611775565b5f611bbe8383611401565b60ff16611bcc8360016128ac565b6107e191906128ac565b5f8480831015611be35750815b6020878901810190858701015f5b83811015611cab5782518251808214611c7b575f6020871115611c1657505f19611c52565b600184611c24896020612880565b611c2e91906128ac565b611c399060086129d0565b611c44906002612ada565b611c4e9190612880565b1990505b5f611c61838316858416612ae5565b90508015611c78579750611cbc9650505050505050565b50505b611c866020866128ac565b9450611c936020856128ac565b93505050602081611ca491906128ac565b9050611bf1565b50611cb68589612ae5565b93505050505b9695505050505050565b82515f90611cd483856128ac565b1115611cde575f80fd5b5091016020012090565b60a081015160c08201516060916107e49161176c908290612880565b604080516080810182525f8082526020820181905291810191909152606080820152611d3a611d335f856128ac565b85906116ec565b61ffff168152611d55611d4e6002856128ac565b8590611401565b60ff166020820152611d6b611d4e6003856128ac565b60ff166040820152611d94611d816004856128ac565b611d8c600485612880565b869190611424565b60608201529392505050565b5f846020015160ff16600314611db757505f610960565b826020015160ff16856040015160ff1614611dd357505f610960565b5f611ddd85611f96565b90508360c0015161ffff168161ffff1614611dfb575f915050610960565b8551610100165f03611e10575f915050610960565b60408087015160ff165f908152600360209081529082902054855191860151925163de8f50a160e01b81526001600160a01b039091169263de8f50a192611e5c928a9290600401612b04565b602060405180830381865afa158015611e77573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611cbc9190612b3c565b5f80611ea683611f96565b90505b84515160208601511015611f8b5760a085015160c08601515f91611edb91611ed2908290612880565b88519190611d04565b90508161ffff16815f015161ffff1614611ef55750611f7d565b846040015160ff16816020015160ff1614611f105750611f7d565b60408051808201909152606081525f6020820152611f3c85518951611f3591906128ac565b8290611ff7565b50611f47818961205a565b50611f52818661205a565b50611f698260400151825f0151846060015161207f565b15611f7a5760019350505050610960565b50505b611f8685610b65565b611ea9565b505f95945050505050565b5f805f5b8351811015611fe8576001811615611fbe57611fb68482611401565b60ff16611fd0565b6008611fca8583611401565b60ff16901b5b611fde9061ffff16836128ac565b9150600101611f9a565b506106cb601082901c826128ac565b60408051808201909152606081525f60208201526120166020836129e7565b1561203e576120266020836129e7565b612031906020612880565b61203b90836128ac565b91505b506020828101829052604080518085525f815290920101905290565b60408051808201909152606081525f60208201526107e183845f015151848551612126565b60ff83165f908152600460205260408120546001600160a01b03166120a557505f6106cb565b60ff84165f90815260046020819052604091829020549151637bf41d7760e11b81526001600160a01b039092169163f7e83aee916120e79187918791016128e6565b602060405180830381865afa158015612102573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109609190612b3c565b60408051808201909152606081525f60208201528251821115612147575f80fd5b602085015161215683866128ac565b111561218957612189856121798760200151878661217491906128ac565b61220c565b6121849060026129d0565b612222565b5f808651805187602083010193508088870111156121a75787860182525b505050602084015b602084106121e757805182526121c66020836128ac565b91506121d36020826128ac565b90506121e0602085612880565b93506121af565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b5f8183111561221c5750816107e4565b50919050565b815161222e8383611ff7565b50610650838261205a565b60408051610140810182525f8082526020820181905291810182905260608082018390526080820183905260a0820183905260c082019290925260e08101829052610100810182905261012081019190915290565b6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b803560ff811681146122e3575f80fd5b919050565b6001600160a01b03811681146122fc575f80fd5b50565b5f8060408385031215612310575f80fd5b612319836122d3565b91506020830135612329816122e8565b809150509250929050565b803561ffff811681146122e3575f80fd5b5f8083601f840112612355575f80fd5b50813567ffffffffffffffff81111561236c575f80fd5b602083019150836020828501011115612383575f80fd5b9250929050565b5f805f6040848603121561239c575f80fd5b6123a584612334565b9250602084013567ffffffffffffffff8111156123c0575f80fd5b6123cc86828701612345565b9497909650939450505050565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff81118282101715612416576124166123d9565b604052919050565b5f82601f83011261242d575f80fd5b813567ffffffffffffffff811115612447576124476123d9565b61245a601f8201601f19166020016123ed565b81815284602083860101111561246e575f80fd5b816020850160208301375f918101602001919091529392505050565b5f6040828403121561249a575f80fd5b6040516040810167ffffffffffffffff82821081831117156124be576124be6123d9565b8160405282935084359150808211156124d5575f80fd5b6124e18683870161241e565b835260208501359150808211156124f6575f80fd5b506125038582860161241e565b6020830152505092915050565b5f805f805f60a08688031215612524575f80fd5b61252d86612334565b9450602086013567ffffffffffffffff80821115612549575f80fd5b61255589838a0161241e565b9550604088013591508082111561256a575f80fd5b61257689838a0161248a565b9450606088013591508082111561258b575f80fd5b61259789838a0161248a565b935060808801359150808211156125ac575f80fd5b506125b98882890161241e565b9150509295509295909350565b5f602082840312156125d6575f80fd5b81356107e1816122e8565b5f805f80608085870312156125f4575f80fd5b6125fd85612334565b9350602085013567ffffffffffffffff80821115612619575f80fd5b6126258883890161241e565b9450604087013591508082111561263a575f80fd5b6126468883890161248a565b9350606087013591508082111561265b575f80fd5b506126688782880161241e565b91505092959194509250565b5f805f60408486031215612686575f80fd5b833567ffffffffffffffff8082111561269d575f80fd5b818601915086601f8301126126b0575f80fd5b81356020828211156126c4576126c46123d9565b8160051b6126d38282016123ed565b928352848101820192828101908b8511156126ec575f80fd5b83870192505b8483101561272657823586811115612708575f80fd5b6127168d86838b010161248a565b83525091830191908301906126f2565b985050508701359250508082111561273c575f80fd5b506123cc86828701612345565b5f81518084525f5b8181101561276d57602081850181015186830182015201612751565b505f602082860101526020601f19601f83011685010191505092915050565b602081525f6107e16020830184612749565b5f602082840312156127ae575f80fd5b6107e1826122d3565b5f80604083850312156127c8575f80fd5b823567ffffffffffffffff808211156127df575f80fd5b6127eb8683870161248a565b93506020850135915080821115612800575f80fd5b5061280d8582860161241e565b9150509250929050565b818382375f9101908152919050565b634e487b7160e01b5f52603260045260245ffd5b600181811c9082168061284e57607f821691505b60208210810361221c57634e487b7160e01b5f52602260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b818103818111156107e4576107e461286c565b60ff81811683821601908111156107e4576107e461286c565b808201808211156107e4576107e461286c565b600382810b9082900b03637fffffff198112637fffffff821317156107e4576107e461286c565b604081525f6128f86040830185612749565b8281036020840152610a738185612749565b634e487b7160e01b5f52600160045260245ffd5b634e487b7160e01b5f52601260045260245ffd5b5f61ffff808416806129465761294661291e565b92169190910492915050565b60ff82811682821603908111156107e4576107e461286c565b606081525f61297d6060830186612749565b828103602084015261298f8186612749565b91505061ffff83166040830152949350505050565b5f602082840312156129b4575f80fd5b5051919050565b5f816129c9576129c961286c565b505f190190565b80820281158282048414176107e4576107e461286c565b5f826129f5576129f561291e565b500690565b600181815b80851115612a3457815f1904821115612a1a57612a1a61286c565b80851615612a2757918102915b93841c93908002906129ff565b509250929050565b5f82612a4a575060016107e4565b81612a5657505f6107e4565b8160018114612a6c5760028114612a7657612a92565b60019150506107e4565b60ff841115612a8757612a8761286c565b50506001821b6107e4565b5060208310610133831016604e8410600b8410161715612ab5575081810a6107e4565b612abf83836129fa565b805f1904821115612ad257612ad261286c565b029392505050565b5f6107e18383612a3c565b8181035f8312801583831316838312821617156108825761088261286c565b606081525f612b166060830186612749565b8281036020840152612b288186612749565b90508281036040840152611cbc8185612749565b5f60208284031215612b4c575f80fd5b815180151581146107e1575f80fdfe00010203040506070809ffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fffffffffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fa164736f6c6343000818000a","storage":{"0x0":"0xbd","0x1":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1471eb6eb2c5e789fc3de43f8ce62938c7d1836ec861730447e2ada8fd81017b":"0x17cda4e23f7237277952e075b1c48467aabfacc0","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563":"0x2b000100000e1000244a5c080249aac11d7b6f6446702e54a1607371607a","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e564":"0x1a41855200fd2ce1cdde32f24e8fb500002b000100000e1000244f660802e06d","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e565":"0x44b80b8f1d39a95c0b0d7c65d08458e880409bbc683457104237c7f8ec8d0000","0x3617319a054d772f909f7c479a2cebe5066e836a939412e32403c99029b92eff":"0x5155f5627bdf9795b3dbb8887001ada1eeba93f2","0x85aaa47b6dc46495bb8824fad4583769726fea36efd831a35556690b830a8fbe":"0x6e2822b8856749ed179c77140dbc5f5a27410a4","0x91da3fd0782e51c6b3986e9e672fd566868e71f3dbc2d6c2cd6fbb3e361af2a7":"0x49da8861c65460639925febe1fb4b5b59b443082","0x95c6356c1b7a542b884d2484ef785c9c7224e77e1016c20007bddc15c23b452f":"0x3f9151d3fd1a82dcc5091909589900fd60ee767ee090bba000000000","0xabd6e7cb50984ff9c2f3e18a2660c3353dadf4e3291deeb275dae2cd1e44fe05":"0x458f653495fb8d9bd0e7df468c2bf76d26c7bd9"}},"0x9dc64b2558b458a15c7f01c192d874ef460f0a29":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x9df67c91f1bfcb4d966cf764e9218685e7c59e8a":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101d1575f3560e01c80638b95dd71116100fe578063c86902331161009e578063e32954eb1161006e578063e32954eb146104f2578063e59d895d14610505578063e985e9c514610518578063f1cb7e0614610553575f80fd5b8063c869023314610435578063ce3decdc1461048c578063d5fa2b001461049f578063d700ff33146104b2575f80fd5b8063a8fa5682116100d9578063a8fa5682146103ac578063a9784b3e146103bf578063ac9650d814610402578063bc1c58d114610422575f80fd5b80638b95dd7114610373578063a22cb46514610386578063a4b91a0114610399575f80fd5b80633603d758116101745780635c98042b116101445780635c98042b14610327578063623195b01461033a578063691f34311461034d5780637737221314610360575f80fd5b80633603d758146102975780633b3b57de146102aa5780634cbf6ba4146102bd57806359d1d43c14610307575f80fd5b8063124a319c116101af578063124a319c146102255780632203ab561461025057806329cd62ea14610271578063304e6ade14610284575f80fd5b806301ffc9a7146101d55780630af179d7146101fd57806310f13a8c14610212575b5f80fd5b6101e86101e3366004612267565b610566565b60405190151581526020015b60405180910390f35b61021061020b3660046122bd565b610576565b005b610210610220366004612304565b610778565b610238610233366004612377565b610842565b6040516001600160a01b0390911681526020016101f4565b61026361025e3660046123a1565b610a87565b6040516101f492919061240e565b61021061027f366004612426565b610bb5565b6102106102923660046122bd565b610c4d565b6102106102a536600461244f565b610cc6565b6102386102b836600461244f565b610d64565b6101e86102cb3660046123a1565b5f82815260208181526040808320546001600160401b031683526006825280832094835293815283822092825291909152205461ffff16151590565b61031a6103153660046122bd565b610d93565b6040516101f49190612466565b61031a61033536600461244f565b610e6f565b610210610348366004612478565b610f2a565b61031a61035b36600461244f565b610fc2565b61021061036e3660046122bd565b610ffa565b6102106103813660046124da565b611073565b6102106103943660046125b9565b611150565b6102106103a73660046125e3565b61122a565b61031a6103ba36600461261e565b6112f6565b6101e86103cd36600461265a565b6001600160a01b039283165f908152600c60209081526040808320948352938152838220929094168152925290205460ff1690565b6104156104103660046126ce565b611342565b6040516101f4919061270c565b61031a61043036600461244f565b61134f565b61047761044336600461244f565b5f81815260208181526040808320546001600160401b03168352600982528083209383529290522080546001909101549091565b604080519283526020830191909152016101f4565b61021061049a3660046122bd565b611387565b6102106104ad36600461276e565b6114c3565b6104da6104c036600461244f565b5f602081905290815260409020546001600160401b031681565b6040516001600160401b0390911681526020016101f4565b61041561050036600461279c565b6114e9565b6102106105133660046127d6565b6114fe565b6101e8610526366004612808565b6001600160a01b039182165f908152600b6020908152604080832093909416825291909152205460ff1690565b61031a6105613660046123a1565b6115a2565b5f61057082611666565b92915050565b826105808161168a565b610588575f80fd5b5f84815260208181526040808320548151601f87018490048402810184019092528582528392606092839285926001600160401b039091169183916105eb9183918d908d90819084018382808284375f9201919091525092939250506118b79050565b90505b80515160208201511015610712578661ffff165f03610652578060400151965061061781611912565b94508460405160200161062a9190612834565b60405160208183030381529060405280519060200120925061064b81611933565b9350610704565b5f61065c82611912565b9050816040015161ffff168861ffff16141580610680575061067e868261194f565b155b15610702576106db8c878a8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250505060208801518d91506106d2908290612863565b8b51158a61196a565b8160400151975081602001519650809550858051906020012093506106ff82611933565b94505b505b61070d81611bc9565b6105ee565b5083511561076c5761076c8a85888c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c925061076391508290508f612863565b8951158861196a565b50505050505050505050565b846107828161168a565b61078a575f80fd5b5f86815260208181526040808320546001600160401b03168352600a8252808320898452909152908190209051849184916107c89089908990612876565b908152602001604051809103902091826107e3929190612901565b5084846040516107f4929190612876565b6040518091039020867f448bc014f1536726cf8d54ff3d6481ed3cbc683c2591ca204274009afa09b1a18787878760405161083294939291906129e2565b60405180910390a3505050505050565b5f82815260208181526040808320546001600160401b031683526007825280832085845282528083206001600160e01b0319851684529091528120546001600160a01b03168015610894579050610570565b5f61089e85610d64565b90506001600160a01b0381166108b8575f92505050610570565b6040516301ffc9a760e01b60248201525f9081906001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b1790525161090f9190612834565b5f60405180830381855afa9150503d805f8114610947576040519150601f19603f3d011682016040523d82523d5f602084013e61094c565b606091505b509150915081158061095f575060208151105b80610989575080601f8151811061097857610978612a13565b01602001516001600160f81b031916155b1561099a575f945050505050610570565b6040516001600160e01b0319871660248201526001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b179052516109f09190612834565b5f60405180830381855afa9150503d805f8114610a28576040519150601f19603f3d011682016040523d82523d5f602084013e610a2d565b606091505b509092509050811580610a41575060208151105b80610a6b575080601f81518110610a5a57610a5a612a13565b01602001516001600160f81b031916155b15610a7c575f945050505050610570565b509095945050505050565b5f82815260208181526040808320546001600160401b03168352600180835281842086855290925282206060915b848111610b975780851615801590610ae457505f8181526020839052604081208054610ae090612885565b9050115b15610b8f5780825f8381526020019081526020015f20808054610b0690612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610b3290612885565b8015610b7d5780601f10610b5457610100808354040283529160200191610b7d565b820191905f5260205f20905b815481529060010190602001808311610b6057829003601f168201915b50505050509050935093505050610bae565b60011b610ab5565b505f60405180602001604052805f81525092509250505b9250929050565b82610bbf8161168a565b610bc7575f80fd5b60408051808201825284815260208082018581525f888152808352848120546001600160401b031681526009835284812089825283528490209251835551600190920191909155815185815290810184905285917f1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e4691015b60405180910390a250505050565b82610c578161168a565b610c5f575f80fd5b5f84815260208181526040808320546001600160401b03168352600382528083208784529091529020610c93838583612901565b50837fe379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d75788484604051610c3f929190612a27565b80610cd08161168a565b610cd8575f80fd5b5f82815260208190526040812080546001600160401b031691610cfa83612a3a565b82546101009290920a6001600160401b038181021990931691831602179091555f84815260208181526040918290205491519190921681528492507fc6621ccb8f3f5a04bb6502154b2caf6adf5983fe76dfef1cfc9c42e3579db444910160405180910390a25050565b5f80610d7183603c6115a2565b905080515f03610d8357505f92915050565b610d8c81611cae565b9392505050565b5f83815260208181526040808320546001600160401b03168352600a825280832086845290915290819020905160609190610dd19085908590612876565b90815260200160405180910390208054610dea90612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610e1690612885565b8015610e615780601f10610e3857610100808354040283529160200191610e61565b820191905f5260205f20905b815481529060010190602001808311610e4457829003601f168201915b505050505090509392505050565b5f81815260208181526040808320546001600160401b03168352600482528083208484529091529020805460609190610ea790612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610ed390612885565b8015610f1e5780601f10610ef557610100808354040283529160200191610f1e565b820191905f5260205f20905b815481529060010190602001808311610f0157829003601f168201915b50505050509050919050565b83610f348161168a565b610f3c575f80fd5b83610f48600182612863565b1615610f52575f80fd5b5f85815260208181526040808320546001600160401b031683526001825280832088845282528083208784529091529020610f8e838583612901565b50604051849086907faa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe3905f90a35050505050565b5f81815260208181526040808320546001600160401b03168352600882528083208484529091529020805460609190610ea790612885565b826110048161168a565b61100c575f80fd5b5f84815260208181526040808320546001600160401b03168352600882528083208784529091529020611040838583612901565b50837fb7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f78484604051610c3f929190612a27565b8261107d8161168a565b611085575f80fd5b837f65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af75284846040516110b792919061240e565b60405180910390a2603c830361110e57837f52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd26110f284611cae565b6040516001600160a01b03909116815260200160405180910390a25b5f84815260208181526040808320546001600160401b0316835260028252808320878452825280832086845290915290206111498382612a5f565b5050505050565b6001600160a01b03821633036111bf5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084015b60405180910390fd5b335f818152600b602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6001600160a01b03821633036112825760405162461bcd60e51b815260206004820181905260248201527f53657474696e672064656c65676174652073746174757320666f722073656c6660448201526064016111b6565b335f818152600c6020908152604080832087845282528083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519384529286917ff0ddb3b04746704017f9aa8bd728fcc2c1d11675041205350018915f5e4750a0910160405180910390a4505050565b5f83815260208181526040808320546001600160401b03168352600582528083208684528252808320858452825280832061ffff851684529091529020805460609190610dea90612885565b6060610d8c5f8484611ccb565b5f81815260208181526040808320546001600160401b03168352600382528083208484529091529020805460609190610ea790612885565b826113918161168a565b611399575f80fd5b5f84815260208181526040808320546001600160401b031680845260048352818420888552909252822080549192916113d190612885565b80601f01602080910402602001604051908101604052809291908181526020018280546113fd90612885565b80156114485780601f1061141f57610100808354040283529160200191611448565b820191905f5260205f20905b81548152906001019060200180831161142b57829003601f168201915b505050506001600160401b0384165f9081526004602090815260408083208b8452909152902091925061147e9050858783612901565b50857f8f15ed4b723ef428f250961da8315675b507046737e19319fc1a4d81bfe87f858287876040516114b393929190612b1e565b60405180910390a2505050505050565b816114cd8161168a565b6114d5575f80fd5b6114e483603c61038185611e88565b505050565b60606114f6848484611ccb565b949350505050565b826115088161168a565b611510575f80fd5b5f84815260208181526040808320546001600160401b031683526007825280832087845282528083206001600160e01b031987168085529083529281902080546001600160a01b0319166001600160a01b038716908117909155905190815286917f7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa910160405180910390a350505050565b5f82815260208181526040808320546001600160401b0316835260028252808320858452825280832084845290915290208054606091906115e290612885565b80601f016020809104026020016040519081016040528092919081815260200182805461160e90612885565b80156116595780601f1061163057610100808354040283529160200191611659565b820191905f5260205f20905b81548152906001019060200180831161163c57829003601f168201915b5050505050905092915050565b5f6001600160e01b03198216631674750f60e21b1480610570575061057082611eb8565b5f336001600160a01b037f0000000000000000000000004fbf7b2f171336958be5d15ff762a5cff53635681614806116ea5750336001600160a01b037f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5616145b156116f757506001919050565b6040516302571be360e01b8152600481018390525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa15801561175c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117809190612b4d565b90507f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b0316816001600160a01b031603611845576040516331a9108f60e11b8152600481018490527f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b031690636352211e90602401602060405180830381865afa15801561181e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118429190612b4d565b90505b6001600160a01b03811633148061187e57506001600160a01b0381165f908152600b6020908152604080832033845290915290205460ff165b80610d8c57506001600160a01b0381165f908152600c60209081526040808320868452825280832033845290915290205460ff16610d8c565b6118ff6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261057081611bc9565b602081015181516060916105709161192a9082611edc565b84519190611f33565b60a081015160c08201516060916105709161192a908290612863565b5f81518351148015610d8c5750610d8c835f845f8751611fa7565b865160208801205f61197d878787611f33565b90508315611aa1576001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c168452909152902080546119c690612885565b159050611a23576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611a0783612b68565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091528120611a62916121f9565b897f03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a12078a8a604051611a94929190612b84565b60405180910390a261076c565b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c16845290915290208054611ae290612885565b90505f03611b40576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611b2483612ba9565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091529020611b808282612a5f565b50897f52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b8a8a84604051611bb593929190612bbf565b60405180910390a250505050505050505050565b60c08101516020820181905281515111611be05750565b5f611bf2825f01518360200151611edc565b8260200151611c019190612bed565b8251909150611c109082611fc9565b61ffff166040830152611c24600282612bed565b8251909150611c339082611fc9565b61ffff166060830152611c47600282612bed565b8251909150611c569082611fef565b63ffffffff166080830152611c6c600482612bed565b82519091505f90611c7d9083611fc9565b61ffff169050611c8e600283612bed565b60a084018190529150611ca18183612bed565b60c0909301929092525050565b5f8151601414611cbc575f80fd5b5060200151600160601b900490565b6060816001600160401b03811115611ce557611ce56124c6565b604051908082528060200260200182016040528015611d1857816020015b6060815260200190600190039081611d035790505b5090505f5b82811015611e80578415611dd8575f848483818110611d3e57611d3e612a13565b9050602002810190611d509190612c00565b611d5f91602491600491612c42565b611d6891612c69565b9050858114611dd65760405162461bcd60e51b815260206004820152603460248201527f6d756c746963616c6c3a20416c6c207265636f726473206d7573742068617665604482015273040c240dac2e8c6d0d2dcce40dcc2dacad0c2e6d60631b60648201526084016111b6565b505b5f8030868685818110611ded57611ded612a13565b9050602002810190611dff9190612c00565b604051611e0d929190612876565b5f60405180830381855af49150503d805f8114611e45576040519150601f19603f3d011682016040523d82523d5f602084013e611e4a565b606091505b509150915081611e58575f80fd5b80848481518110611e6b57611e6b612a13565b60209081029190910101525050600101611d1d565b509392505050565b604080516014808252818301909252606091602082018180368337505050600160601b9290920260208301525090565b5f6001600160e01b0319821663c869023360e01b1480610570575061057082612017565b5f815b83518110611eef57611eef612c86565b5f611efa858361203b565b60ff169050611f0a816001612bed565b611f149083612bed565b9150805f03611f235750611f29565b50611edf565b6114f68382612863565b8251606090611f428385612bed565b1115611f4c575f80fd5b5f826001600160401b03811115611f6557611f656124c6565b6040519080825280601f01601f191660200182016040528015611f8f576020820181803683370190505b50905060208082019086860101610a7c82828761205e565b5f611fb38484846120b3565b611fbe8787856120b3565b149695505050505050565b81515f90611fd8836002612bed565b1115611fe2575f80fd5b50016002015161ffff1690565b81515f90611ffe836004612bed565b1115612008575f80fd5b50016004015163ffffffff1690565b5f6001600160e01b0319821663691f343160e01b14806105705750610570826120d5565b5f82828151811061204e5761204e612a13565b016020015160f81c905092915050565b602081106120965781518352612075602084612bed565b9250612082602083612bed565b915061208f602082612863565b905061205e565b905182516020929092036101000a5f190180199091169116179052565b82515f906120c18385612bed565b11156120cb575f80fd5b5091016020012090565b5f6001600160e01b031982166304928c6760e21b14806105705750610570825f6001600160e01b0319821663547d2b4160e11b148061212457506001600160e01b03198216635c98042b60e01b145b806105705750610570825f6001600160e01b0319821663bc1c58d160e01b14806105705750610570825f6001600160e01b03198216631d9dabef60e11b148061217d57506001600160e01b031982166378e5bf0360e11b145b806105705750610570825f6001600160e01b03198216631101d5ab60e11b14806105705750610570825f6001600160e01b0319821663d700ff3360e01b14806105705750610570825f6001600160e01b03198216634fbf043360e01b148061057057506301ffc9a760e01b6001600160e01b0319831614610570565b50805461220590612885565b5f825580601f10612214575050565b601f0160209004905f5260205f20908101906122309190612233565b50565b5b80821115612247575f8155600101612234565b5090565b80356001600160e01b031981168114612262575f80fd5b919050565b5f60208284031215612277575f80fd5b610d8c8261224b565b5f8083601f840112612290575f80fd5b5081356001600160401b038111156122a6575f80fd5b602083019150836020828501011115610bae575f80fd5b5f805f604084860312156122cf575f80fd5b8335925060208401356001600160401b038111156122eb575f80fd5b6122f786828701612280565b9497909650939450505050565b5f805f805f60608688031215612318575f80fd5b8535945060208601356001600160401b0380821115612335575f80fd5b61234189838a01612280565b90965094506040880135915080821115612359575f80fd5b5061236688828901612280565b969995985093965092949392505050565b5f8060408385031215612388575f80fd5b823591506123986020840161224b565b90509250929050565b5f80604083850312156123b2575f80fd5b50508035926020909101359150565b5f5b838110156123db5781810151838201526020016123c3565b50505f910152565b5f81518084526123fa8160208601602086016123c1565b601f01601f19169290920160200192915050565b828152604060208201525f6114f660408301846123e3565b5f805f60608486031215612438575f80fd5b505081359360208301359350604090920135919050565b5f6020828403121561245f575f80fd5b5035919050565b602081525f610d8c60208301846123e3565b5f805f806060858703121561248b575f80fd5b843593506020850135925060408501356001600160401b038111156124ae575f80fd5b6124ba87828801612280565b95989497509550505050565b634e487b7160e01b5f52604160045260245ffd5b5f805f606084860312156124ec575f80fd5b833592506020840135915060408401356001600160401b0380821115612510575f80fd5b818601915086601f830112612523575f80fd5b813581811115612535576125356124c6565b604051601f8201601f19908116603f0116810190838211818310171561255d5761255d6124c6565b81604052828152896020848701011115612575575f80fd5b826020860160208301375f6020848301015280955050505050509250925092565b6001600160a01b0381168114612230575f80fd5b80358015158114612262575f80fd5b5f80604083850312156125ca575f80fd5b82356125d581612596565b9150612398602084016125aa565b5f805f606084860312156125f5575f80fd5b83359250602084013561260781612596565b9150612615604085016125aa565b90509250925092565b5f805f60608486031215612630575f80fd5b8335925060208401359150604084013561ffff8116811461264f575f80fd5b809150509250925092565b5f805f6060848603121561266c575f80fd5b833561267781612596565b925060208401359150604084013561264f81612596565b5f8083601f84011261269e575f80fd5b5081356001600160401b038111156126b4575f80fd5b6020830191508360208260051b8501011115610bae575f80fd5b5f80602083850312156126df575f80fd5b82356001600160401b038111156126f4575f80fd5b6127008582860161268e565b90969095509350505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b8281101561276157603f1988860301845261274f8583516123e3565b94509285019290850190600101612733565b5092979650505050505050565b5f806040838503121561277f575f80fd5b82359150602083013561279181612596565b809150509250929050565b5f805f604084860312156127ae575f80fd5b8335925060208401356001600160401b038111156127ca575f80fd5b6122f78682870161268e565b5f805f606084860312156127e8575f80fd5b833592506127f86020850161224b565b9150604084013561264f81612596565b5f8060408385031215612819575f80fd5b823561282481612596565b9150602083013561279181612596565b5f82516128458184602087016123c1565b9190910192915050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156105705761057061284f565b818382375f9101908152919050565b600181811c9082168061289957607f821691505b6020821081036128b757634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156114e457805f5260205f20601f840160051c810160208510156128e25750805b601f840160051c820191505b81811015611149575f81556001016128ee565b6001600160401b03831115612918576129186124c6565b61292c836129268354612885565b836128bd565b5f601f84116001811461295d575f85156129465750838201355b5f19600387901b1c1916600186901b178355611149565b5f83815260208120601f198716915b8281101561298c578685013582556020948501946001909201910161296c565b50868210156129a8575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b604081525f6129f56040830186886129ba565b8281036020840152612a088185876129ba565b979650505050505050565b634e487b7160e01b5f52603260045260245ffd5b602081525f6114f66020830184866129ba565b5f6001600160401b03808316818103612a5557612a5561284f565b6001019392505050565b81516001600160401b03811115612a7857612a786124c6565b612a8c81612a868454612885565b846128bd565b602080601f831160018114612abf575f8415612aa85750858301515b5f19600386901b1c1916600185901b178555612b16565b5f85815260208120601f198616915b82811015612aed57888601518255948401946001909101908401612ace565b5085821015612b0a57878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b604081525f612b3060408301866123e3565b8281036020840152612b438185876129ba565b9695505050505050565b5f60208284031215612b5d575f80fd5b8151610d8c81612596565b5f61ffff821680612b7b57612b7b61284f565b5f190192915050565b604081525f612b9660408301856123e3565b905061ffff831660208301529392505050565b5f61ffff808316818103612a5557612a5561284f565b606081525f612bd160608301866123e3565b61ffff851660208401528281036040840152612b4381856123e3565b808201808211156105705761057061284f565b5f808335601e19843603018112612c15575f80fd5b8301803591506001600160401b03821115612c2e575f80fd5b602001915036819003821315610bae575f80fd5b5f8085851115612c50575f80fd5b83861115612c5c575f80fd5b5050820193919092039150565b80356020831015610570575f19602084900360031b1b1692915050565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{}},"0xa06a63155145b7f2fda96d9658ec7fef3b9dcf76":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b506004361061004a575f3560e01c80634ce34aa21461004e578063899e104c1461007e5780638df25d9214610091578063c4e8fcb5146100a4575b5f80fd5b61006161005c366004610834565b6100b9565b6040516001600160e01b0319909116815260200160405180910390f35b61006161008c3660046108b4565b610121565b61006161009f36600461091b565b61018a565b6100b76100b2366004610969565b6101c7565b005b5f335f525f60205260405f20546100dd576349ed56f960e11b5f523360045260245ffd5b815f5b81811015610110576101088585838181106100fd576100fd6109a2565b905060c002016102c4565b6001016100e0565b50632671a55160e11b949350505050565b5f335f525f60205260405f2054610145576349ed56f960e11b5f523360045260245ffd5b835f5b8181101561016d576101658787838181106100fd576100fd6109a2565b600101610148565b506101788484610436565b50632267841360e21b95945050505050565b5f335f525f60205260405f20546101ae576349ed56f960e11b5f523360045260245ffd5b6101b88383610436565b506346f92ec960e11b92915050565b336001600160a01b037f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c1614610210576040516336abb4df60e11b815260040160405180910390fd5b6001600160a01b0382165f9081526020819052604090205481151560ff909116151503610268576040516349271a0f60e11b81526001600160a01b038316600482015281151560248201526044015b60405180910390fd5b6001600160a01b0382165f8181526020818152604091829020805460ff191685151590811790915591519182527fae63067d43ac07563b7eb8db6595635fc77f1578a2a5ea06ba91b63e2afa37e2910160405180910390a25050565b60016102d360208301836109ca565b60038111156102e4576102e46109b6565b03610329576103266102fc60408301602084016109ef565b61030c60608401604085016109ef565b61031c60808501606086016109ef565b8460a0013561056c565b50565b600261033860208301836109ca565b6003811115610349576103496109b6565b036103b6578060a00135600114610379576040516369f9582760e01b815260a0820135600482015260240161025f565b61032661038c60408301602084016109ef565b61039c60608401604085016109ef565b6103ac60808501606086016109ef565b8460800135610660565b60036103c560208301836109ca565b60038111156103d6576103d66109b6565b0361041d576103266103ee60408301602084016109ef565b6103fe60608401604085016109ef565b61040e60808501606086016109ef565b84608001358560a00135610715565b604051631e4cbc7f60e21b815260040160405180910390fd5b808280631759616b60e11b6020525f5b8381101561055f57823582018035803b61046b57635f15d6725f52806020526024601cfd5b60a08201358060051b60c0018060808501351460a0606086013514168185013583141615905080156104a657633ae8821360e21b5f5260045ffd5b506020860195506080602084016024378060061b60400190508060a00160a4525f8160c401528060c4018160a0850160c4375f808260205f875af1935083610550573d1561053057601f3d0160051c91508060051c826003028184111561051a578184036003028280028580020360091c01015b5a60208201101561052d573d5f803e3d5ffd5b50505b6357e222f160e11b5f528260045260c0606452608451602001608452805ffd5b50505050600181019050610446565b5050505060806040525050565b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166106515780873b15151661065157806106405781610623573d1561060257601f3d0160051c8360051c81600302818311156105eb578183036003028280028480020360091c01015b5a6020820110156105fe573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b833b61067757635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af180610707573d156106e557601f3d0160051c8260051c81600302818311156106ce578183036003028280028480020360091c01015b5a6020820110156106e1573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b61072c57635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af1806107d1573d156107b057601f3d0160051c8560051c8160030281831115610799578183036003028280028480020360091c01015b5a6020820110156107ac573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b5f8083601f8401126107fc575f80fd5b50813567ffffffffffffffff811115610813575f80fd5b60208301915083602060c08302850101111561082d575f80fd5b9250929050565b5f8060208385031215610845575f80fd5b823567ffffffffffffffff81111561085b575f80fd5b610867858286016107ec565b90969095509350505050565b5f8083601f840112610883575f80fd5b50813567ffffffffffffffff81111561089a575f80fd5b6020830191508360208260051b850101111561082d575f80fd5b5f805f80604085870312156108c7575f80fd5b843567ffffffffffffffff808211156108de575f80fd5b6108ea888389016107ec565b90965094506020870135915080821115610902575f80fd5b5061090f87828801610873565b95989497509550505050565b5f806020838503121561092c575f80fd5b823567ffffffffffffffff811115610942575f80fd5b61086785828601610873565b80356001600160a01b0381168114610964575f80fd5b919050565b5f806040838503121561097a575f80fd5b6109838361094e565b915060208301358015158114610997575f80fd5b809150509250929050565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52602160045260245ffd5b5f602082840312156109da575f80fd5b8135600481106109e8575f80fd5b9392505050565b5f602082840312156109ff575f80fd5b6109e88261094e56fea164736f6c6343000818000a","storage":{}},"0xaa33d7188eb4b4a51c37199eaad2f73cf2bf0204":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0xac52f68f31577e44ae0c7e95a42dc9eb574b9383":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a424740014610090575b600080fd5b610059610054366004610cac565b6100b3565b6040516100669190610d9b565b60405180910390f35b61008261007d366004610dae565b610162565b604051908152602001610066565b6100a361009e366004610cac565b6101d6565b6040519015158152602001610066565b606060005a90506101576100ca6020870187610ddc565b6001546001600160a01b03166040880135846100e960608b018b610df9565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061023592505050565b9150505b9392505050565b600154604051636ccbae5f60e01b8152600481018390526000916001600160a01b031690636ccbae5f90602401602060405180830381865afa1580156101ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d09190610e40565b92915050565b600061022d6101e485610ef1565b600154604080516020601f88018190048102820181019092528681526001600160a01b039092169190879087908190840183828082843760009201919091525061030d92505050565b949350505050565b6060600080876001600160a01b0316866102518b8a8989610355565b60405161025e9190610f9b565b60006040518083038160008787f1925050503d806000811461029c576040519150601f19603f3d011682016040523d82523d6000602084013e6102a1565b606091505b5090925090506102b2603f87610fb7565b5a116102c0576102c0610fd9565b61030082826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061040a565b9998505050505050505050565b600061031a848484610443565b801561022d575060608401516020908101516001600160e01b031990811660009081529182905260409091205460e01b16151561022d565b50565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036103e75760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526103ff82828661058c565b979650505050505050565b6060831561041957508161015b565b8251156104295782518084602001fd5b8160405162461bcd60e51b81526004016103de9190610d9b565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561048a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104ae9190610e40565b9050600061055c8660600151805190602001208688602001516040516020016104fc9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561058257508551610582906001600160a01b03168286610a38565b9695505050505050565b60606001600160e01b03198416631de5861160e31b0361061a576000806000858060200190518101906105bf9190610fef565b92509250925086838383886040516024016105dd9493929190611032565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152935061015b92505050565b6001600160e01b03198416636debcb8d60e01b0361064b576000806000858060200190518101906105bf9190610fef565b6001600160e01b0319841663280d9b0560e01b036106dd576000806000808680602001905181019061067d91906110aa565b935093509350935087848484848a60405160240161069f959493929190611118565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152945061015b9350505050565b6001600160e01b031984166361603dd960e01b0361075c5760008380602001905181019061070b9190610e40565b905084818460405160240161072192919061115d565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152915061015b9050565b6001600160e01b0319841663b34f33c560e01b036107ab5760008060008580602001905181019061078d9190611176565b92509250925086838383886040516024016105dd94939291906111d0565b6001600160e01b03198416633013529360e01b036107dc5760008060008580602001905181019061078d9190611176565b6001600160e01b031984166307eca39560e01b03610830576000806000808680602001905181019061080e9190611209565b935093509350935087848484848a60405160240161069f95949392919061127e565b6001600160e01b031984166368b6154f60e01b03610862576000806000808680602001905181019061067d91906110aa565b6001600160e01b0319841663341de35b60e21b03610894576000806000808680602001905181019061067d91906110aa565b6001600160e01b03198416637a84860f60e11b0361092d576000806000806000878060200190518101906108c891906112cb565b945094509450945094508885858585858c6040516024016108ee96959493929190611360565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152955061015b945050505050565b6001600160e01b03198416636fab95b360e01b036109b2576000808480602001905181019061095c91906113b9565b915091508582828660405160240161097693929190611400565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925061015b915050565b6001600160e01b0319841663288f888960e11b0361015b57600080848060200190518101906109e1919061142b565b91509150858282866040516024016109fb93929190611459565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925050509392505050565b6000806000610a478585610b7a565b90925090506000816004811115610a6057610a60611489565b148015610a7e5750856001600160a01b0316826001600160a01b0316145b15610a8e5760019250505061015b565b600080876001600160a01b0316631626ba7e60e01b8888604051602401610ab692919061115d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051610af49190610f9b565b600060405180830381855afa9150503d8060008114610b2f576040519150601f19603f3d011682016040523d82523d6000602084013e610b34565b606091505b5091509150818015610b47575080516020145b8015610b6e57508051630b135d3f60e11b90610b6c9083016020908101908401610e40565b145b98975050505050505050565b6000808251604103610bb05760208301516040840151606085015160001a610ba487828585610bbf565b94509450505050610bb8565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610bf65750600090506003610ca3565b8460ff16601b14158015610c0e57508460ff16601c14155b15610c1f5750600090506004610ca3565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610c73573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610c9c57600060019250925050610ca3565b9150600090505b94509492505050565b600080600060408486031215610cc157600080fd5b833567ffffffffffffffff80821115610cd957600080fd5b9085019060808288031215610ced57600080fd5b90935060208501359080821115610d0357600080fd5b818601915086601f830112610d1757600080fd5b813581811115610d2657600080fd5b876020828501011115610d3857600080fd5b6020830194508093505050509250925092565b60005b83811015610d66578181015183820152602001610d4e565b50506000910152565b60008151808452610d87816020860160208601610d4b565b601f01601f19169290920160200192915050565b60208152600061015b6020830184610d6f565b600060208284031215610dc057600080fd5b5035919050565b6001600160a01b038116811461035257600080fd5b600060208284031215610dee57600080fd5b813561015b81610dc7565b6000808335601e19843603018112610e1057600080fd5b83018035915067ffffffffffffffff821115610e2b57600080fd5b602001915036819003821315610bb857600080fd5b600060208284031215610e5257600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610e9257610e92610e59565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ec157610ec1610e59565b604052919050565b600067ffffffffffffffff821115610ee357610ee3610e59565b50601f01601f191660200190565b600060808236031215610f0357600080fd5b610f0b610e6f565b8235610f1681610dc7565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610f4657600080fd5b840136601f820112610f5757600080fd5b8035610f6a610f6582610ec9565b610e98565b8181523684838501011115610f7e57600080fd5b818484018583013760009181019093015250606082015292915050565b60008251610fad818460208701610d4b565b9190910192915050565b600082610fd457634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b60008060006060848603121561100457600080fd5b835161100f81610dc7565b602085015190935061102081610dc7565b80925050604084015190509250925092565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061058290830184610d6f565b600082601f83011261107657600080fd5b8151611084610f6582610ec9565b81815284602083860101111561109957600080fd5b61022d826020830160208701610d4b565b600080600080608085870312156110c057600080fd5b84516110cb81610dc7565b60208601519094506110dc81610dc7565b60408601516060870151919450925067ffffffffffffffff81111561110057600080fd5b61110c87828801611065565b91505092959194509250565b6001600160a01b038681168252851660208201526040810184905260a06060820181905260009061114b90830185610d6f565b8281036080840152610b6e8185610d6f565b82815260406020820152600061022d6040830184610d6f565b60008060006060848603121561118b57600080fd5b835161119681610dc7565b60208501516040860151919450925067ffffffffffffffff8111156111ba57600080fd5b6111c686828701611065565b9150509250925092565b60018060a01b03851681528360208201526080604082015260006111f76080830185610d6f565b82810360608401526103ff8185610d6f565b6000806000806080858703121561121f57600080fd5b845161122a81610dc7565b60208601516040870151919550935067ffffffffffffffff8082111561124f57600080fd5b61125b88838901611065565b9350606087015191508082111561127157600080fd5b5061110c87828801611065565b60018060a01b038616815284602082015260a0604082015260006112a560a0830186610d6f565b82810360608401526112b78186610d6f565b90508281036080840152610b6e8185610d6f565b600080600080600060a086880312156112e357600080fd5b85516112ee81610dc7565b60208701519095506112ff81610dc7565b60408701516060880151919550935067ffffffffffffffff8082111561132457600080fd5b61133089838a01611065565b9350608088015191508082111561134657600080fd5b5061135388828901611065565b9150509295509295909350565b6001600160a01b038781168252861660208201526040810185905260c06060820181905260009061139390830186610d6f565b82810360808401526113a58186610d6f565b905082810360a08401526103008185610d6f565b600080604083850312156113cc57600080fd5b82519150602083015167ffffffffffffffff8111156113ea57600080fd5b6113f685828601611065565b9150509250929050565b8381526060602082015260006114196060830185610d6f565b82810360408401526105828185610d6f565b6000806040838503121561143e57600080fd5b825161144981610dc7565b6020939093015192949293505050565b60018060a01b03841681528260208201526060604082015260006114806060830184610d6f565b95945050505050565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a","storage":{"0x1":"0x7bb6cd9be29fab783c0b494a06fed8b2e2596b7a","0xd8b896d609e853134f3f02ce62d8049b2fdfe9356134f6d548fb1beda30db79":"0x30135293","0x4f457f36b92dc6b16c281e5877e2d8d39630135c1b7246fa9174035e1efcefbd":"0x6fab95b3","0x6b7ba3fe9941e089de60543da4a1deaef065baa963222951b2f9a138f9960820":"0x6debcb8d","0x70cff8e4ee4af5aa154324d45bcf258212c235bbe79f0707bb6273110ef4e13a":"0xf5090c1e","0x73efb0e44094dbabc6bbeecd3be1d81f272157c2dae2d647e6315f150b0b1dd2":"0xd0778d6c","0x8b1c4edded6644848281eab03ac2c319242d62b2057cffa3dd4540715bbc155e":"0xef2c3088","0xbeb5ea8fc2aeae43b7170220434aa4429fb067f0866ae25514b29f647641ca8c":"0x511f1112","0xca659f6eb372ce950e69d4d474290a6a4285f6a06a6128ca9f45419371a1e997":"0xb34f33c5","0xd12e300b5f35ba5198dd81dab97a512a154a0ad0e2cda788abdc22deba64f2a7":"0x280d9b05","0xd5453e7f4fff276a1d42f717d1db50865c284ae707a15bd6a590a3895656f27c":"0x7eca395","0xea2575ae4056f10294a848ca5ed6d215dffd1b80838142770bc441f7df607d71":"0x61603dd9","0xf8ca3ef1e3d09a0d88e209301f12626c90bec3ea586d4bce2c7a58e7eae8278f":"0x68b6154f"}},"0xb17aae5b3a7815433fc82cfd67ea245767894f03":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061012a5760003560e01c80638d839ffe116100ab578063aeb8ce9b1161006f578063aeb8ce9b146105d7578063ce1e09c014610688578063f14fcbc81461069d578063f2fde38b146106c7578063f49826be146106fa578063f7a16963146107b95761012a565b80638d839ffe1461045d5780638da5cb5b146104725780638f32d59b146104a35780639791c097146104b8578063acf1a841146105695761012a565b80637e324479116100f25780637e324479146102b8578063839df945146102e857806383e7f6ff1461031257806385f6d155146103c55780638a95b09f146104485761012a565b806301ffc9a71461012f5780633ccfd60b146101775780633d86c52f1461018e578063530e784f14610270578063715018a6146102a3575b600080fd5b34801561013b57600080fd5b506101636004803603602081101561015257600080fd5b50356001600160e01b031916610881565b604080519115158252519081900360200190f35b34801561018357600080fd5b5061018c610a12565b005b34801561019a57600080fd5b5061025e600480360360a08110156101b157600080fd5b810190602081018135600160201b8111156101cb57600080fd5b8201836020820111156101dd57600080fd5b803590602001918460018302840111600160201b831117156101fe57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b0383358116945060208401359360408101358216935060600135169050610a53565b60408051918252519081900360200190f35b34801561027c57600080fd5b5061018c6004803603602081101561029357600080fd5b50356001600160a01b0316610b42565b3480156102af57600080fd5b5061018c610ba3565b3480156102c457600080fd5b5061018c600480360360408110156102db57600080fd5b5080359060200135610bfe565b3480156102f457600080fd5b5061025e6004803603602081101561030b57600080fd5b5035610c1a565b34801561031e57600080fd5b5061025e6004803603604081101561033557600080fd5b810190602081018135600160201b81111561034f57600080fd5b82018360208201111561036157600080fd5b803590602001918460018302840111600160201b8311171561038257600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505091359250610c2c915050565b61018c600480360360808110156103db57600080fd5b810190602081018135600160201b8111156103f557600080fd5b82018360208201111561040757600080fd5b803590602001918460018302840111600160201b8311171561042857600080fd5b91935091506001600160a01b038135169060208101359060400135610d9e565b34801561045457600080fd5b5061025e610de9565b34801561046957600080fd5b5061025e610df0565b34801561047e57600080fd5b50610487610df6565b604080516001600160a01b039092168252519081900360200190f35b3480156104af57600080fd5b50610163610e05565b3480156104c457600080fd5b50610163600480360360208110156104db57600080fd5b810190602081018135600160201b8111156104f557600080fd5b82018360208201111561050757600080fd5b803590602001918460018302840111600160201b8311171561052857600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610e16945050505050565b61018c6004803603604081101561057f57600080fd5b810190602081018135600160201b81111561059957600080fd5b8201836020820111156105ab57600080fd5b803590602001918460018302840111600160201b831117156105cc57600080fd5b919350915035610e2b565b3480156105e357600080fd5b50610163600480360360208110156105fa57600080fd5b810190602081018135600160201b81111561061457600080fd5b82018360208201111561062657600080fd5b803590602001918460018302840111600160201b8311171561064757600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610fcf945050505050565b34801561069457600080fd5b5061025e611069565b3480156106a957600080fd5b5061018c600480360360208110156106c057600080fd5b503561106f565b3480156106d357600080fd5b5061018c600480360360208110156106ea57600080fd5b50356001600160a01b03166110a1565b34801561070657600080fd5b5061025e6004803603606081101561071d57600080fd5b810190602081018135600160201b81111561073757600080fd5b82018360208201111561074957600080fd5b803590602001918460018302840111600160201b8311171561076a57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b0383351693505050602001356110bb565b61018c600480360360c08110156107cf57600080fd5b810190602081018135600160201b8111156107e957600080fd5b8201836020820111156107fb57600080fd5b803590602001918460018302840111600160201b8311171561081c57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b038335811694506020840135936040810135935060608101358216925060800135166110d3565b604080517f737570706f727473496e74657266616365286279746573342900000000000000815290519081900360190190206000906001600160e01b0319838116911614806109c05750604080517472656e657728737472696e672c75696e743235362960581b815290519081900360150181209080602861186a8239604080519182900360280182206e636f6d6d697428627974657333322960881b8352905191829003600f01822090925090806026611892823960260190506040518091039020604051808070617661696c61626c6528737472696e672960781b8152506011019050604051809103902060405180807f72656e74507269636528737472696e672c75696e7432353629000000000000008152506019019050604051809103902018181818186001600160e01b031916826001600160e01b031916145b80610a0c5750604051808061182a60409139604080519182900301812091508060426118b8823960420190506040518091039020186001600160e01b031916826001600160e01b031916145b92915050565b610a1a610e05565b610a2357600080fd5b6040513390303180156108fc02916000818181858888f19350505050158015610a50573d6000803e3d6000fd5b50565b845160208601206000906001600160a01b038416158015610a7b57506001600160a01b038316155b15610acb57604080516020808201939093526bffffffffffffffffffffffff19606089901b1681830152605480820188905282518083039091018152607490910190915280519101209050610b39565b6001600160a01b038416610ade57600080fd5b604080516020808201939093526bffffffffffffffffffffffff19606089811b82168385015287811b8216605484015286901b166068820152607c80820188905282518083039091018152609c909101909152805191012090505b95945050505050565b610b4a610e05565b610b5357600080fd5b600280546001600160a01b0319166001600160a01b0383811691909117918290556040519116907ff261845a790fe29bbd6631e2ca4a5bdc83e6eed7c3271d9590d97287e00e912390600090a250565b610bab610e05565b610bb457600080fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b610c06610e05565b610c0f57600080fd5b600391909155600455565b60056020526000908152604090205481565b815160208084019190912060025460015460408051636b727d4360e11b81526004810185905290516000956001600160a01b03948516946350e9a715948a9491169263d6e4fa8692602480840193919291829003018186803b158015610c9157600080fd5b505afa158015610ca5573d6000803e3d6000fd5b505050506040513d6020811015610cbb57600080fd5b50516040516001600160e01b031960e085901b168152602481018290526044810188905260606004820190815283516064830152835189928291608490910190602087019080838360005b83811015610d1e578181015183820152602001610d06565b50505050905090810190601f168015610d4b5780820380516001836020036101000a031916815260200191505b5094505050505060206040518083038186803b158015610d6a57600080fd5b505afa158015610d7e573d6000803e3d6000fd5b505050506040513d6020811015610d9457600080fd5b5051949350505050565b610de285858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250889350879250869150806110d3565b5050505050565b6224ea0081565b60035481565b6000546001600160a01b031690565b6000546001600160a01b0316331490565b60006003610e2383611646565b101592915050565b6000610e6e84848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250869250610c2c915050565b905080341015610e7d57600080fd5b60008484604051808383808284376040805193909101839003832060015463c475abff60e01b855260048501829052602485018b90529151909750600096506001600160a01b03909116945063c475abff93506044808401936020935082900301818787803b158015610eef57600080fd5b505af1158015610f03573d6000803e3d6000fd5b505050506040513d6020811015610f1957600080fd5b5051905034831015610f565760405133903485900380156108fc02916000818181858888f19350505050158015610f54573d6000803e3d6000fd5b505b817f3da24c024582931cfaf8267d8ed24d13a82a8068d5bd337d30ec45cea4e506ae8787868560405180806020018481526020018381526020018281038252868682818152602001925080828437600083820152604051601f909101601f191690920182900397509095505050505050a2505050505050565b80516020820120600090610fe283610e16565b80156110625750600154604080516312dc929d60e31b81526004810184905290516001600160a01b03909216916396e494e891602480820192602092909190829003018186803b15801561103557600080fd5b505afa158015611049573d6000803e3d6000fd5b505050506040513d602081101561105f57600080fd5b50515b9392505050565b60045481565b6004546000828152600560205260409020544291011061108e57600080fd5b6000908152600560205260409020429055565b6110a9610e05565b6110b257600080fd5b610a508161172e565b60006110cb848484600080610a53565b949350505050565b60006110e28787868686610a53565b905060006110f188878461179c565b885160208a01209091508060006001600160a01b038716156114ac5760015460408051633f2891eb60e21b815260048101859052306024820152604481018c905290516001600160a01b039092169163fca247ac916064808201926020929091908290030181600087803b15801561116857600080fd5b505af115801561117c573d6000803e3d6000fd5b505050506040513d602081101561119257600080fd5b505160015460408051630ddf7fcb60e41b815290519293506000926001600160a01b039092169163ddf7fcb091600480820192602092909190829003018186803b1580156111df57600080fd5b505afa1580156111f3573d6000803e3d6000fd5b505050506040513d602081101561120957600080fd5b50516040805160208181019390935280820187905281518082038301815260608201808452815191850191909120600154633f15457f60e01b90925292519294506001600160a01b031692633f15457f92606480840193829003018186803b15801561127457600080fd5b505afa158015611288573d6000803e3d6000fd5b505050506040513d602081101561129e57600080fd5b505160408051630c4b7b8560e11b8152600481018490526001600160a01b038b8116602483015291519190921691631896f70a91604480830192600092919082900301818387803b1580156112f257600080fd5b505af1158015611306573d6000803e3d6000fd5b505050506001600160a01b0387161561139257876001600160a01b031663d5fa2b0082896040518363ffffffff1660e01b815260040180838152602001826001600160a01b03166001600160a01b0316815260200192505050600060405180830381600087803b15801561137957600080fd5b505af115801561138d573d6000803e3d6000fd5b505050505b60015460408051630a3b53db60e21b8152600481018690526001600160a01b038e81166024830152915191909216916328ed4f6c91604480830192600092919082900301818387803b1580156113e757600080fd5b505af11580156113fb573d6000803e3d6000fd5b50505050600160009054906101000a90046001600160a01b03166001600160a01b03166323b872dd308d866040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050600060405180830381600087803b15801561148e57600080fd5b505af11580156114a2573d6000803e3d6000fd5b505050505061154c565b6001600160a01b038616156114c057600080fd5b60015460408051633f2891eb60e21b8152600481018590526001600160a01b038d81166024830152604482018d90529151919092169163fca247ac9160648083019260209291908290030181600087803b15801561151d57600080fd5b505af1158015611531573d6000803e3d6000fd5b505050506040513d602081101561154757600080fd5b505190505b896001600160a01b0316837fca6abbe9d7f11422cb6ca7629fbf6fe9efb1c621f71ce8f02b9f2a230097404f8d87856040518080602001848152602001838152602001828103825285818151815260200191508051906020019080838360005b838110156115c45781810151838201526020016115ac565b50505050905090810190601f1680156115f15780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a3833411156116395760405133903486900380156108fc02916000818181858888f19350505050158015611637573d6000803e3d6000fd5b505b5050505050505050505050565b8051600090819081905b8082101561172557600085838151811061166657fe5b01602001516001600160f81b0319169050600160ff1b81101561168e57600183019250611719565b600760fd1b6001600160f81b0319821610156116af57600283019250611719565b600f60fc1b6001600160f81b0319821610156116d057600383019250611719565b601f60fb1b6001600160f81b0319821610156116f157600483019250611719565b603f60fa1b6001600160f81b03198216101561171257600583019250611719565b6006830192505b50600190920191611650565b50909392505050565b6001600160a01b03811661174157600080fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b600354600082815260056020526040812054909142910111156117be57600080fd5b600454600083815260056020526040902054429101116117dd57600080fd5b6117e684610fcf565b6117ef57600080fd5b600082815260056020526040812081905561180a8585610c2c565b90506224ea0084101561181c57600080fd5b803410156110cb57600080fdfe6d616b65436f6d6d69746d656e7457697468436f6e66696728737472696e672c616464726573732c627974657333322c616464726573732c6164647265737329726567697374657228737472696e672c616464726573732c75696e743235362c62797465733332296d616b65436f6d6d69746d656e7428737472696e672c616464726573732c6279746573333229726567697374657257697468436f6e66696728737472696e672c616464726573732c75696e743235362c627974657333322c616464726573732c6164647265737329a265627a7a72315820ba74b4e49afb22de09a9ebda5d073d93e2a2a7b2530ce50def390c32cac92ea064736f6c634300050c0032","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1":"0xc965345edac823d56812cd20a10316233916a605","0x2":"0xec71e4e674fe0f432693dc2b935c34bd2774c003","0x3":"0x258","0x4":"0x15180"}},"0xbdefcf6429d0ac68236a6beb321cbd2ce66b463c":{"nonce":2,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c80636d435421116100885780637b37e561116100635780637b37e561146102435780638b9e028b14610256578063906c87cc1461027657806393790f4414610289575f80fd5b80636d435421146101eb5780636e9bfd9f146101fe578063794593bc14610230575f80fd5b806314afd79e116100c357806314afd79e1461018157806333bc8572146101945780634e3f9580146101b757806351710e45146101d8575f80fd5b8063027cc764146100e95780630a96ad391461011957806313ad9cab1461016c575b5f80fd5b6100fc6100f7366004610c39565b61029c565b6040516001600160a01b0390911681526020015b60405180910390f35b604080517f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f81527fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167602082015201610110565b61017f61017a366004610c61565b610339565b005b6100fc61018f366004610ca9565b610531565b6101a76101a2366004610cc9565b61055c565b6040519015158152602001610110565b6101ca6101c5366004610ca9565b610595565b604051908152602001610110565b61017f6101e6366004610ca9565b6105bd565b61017f6101f9366004610cc9565b6106be565b61021161020c366004610cfa565b6107ae565b604080516001600160a01b039093168352901515602083015201610110565b6100fc61023e366004610d11565b610838565b61017f610251366004610ca9565b610a0a565b610269610264366004610ca9565b610aab565b6040516101109190610d32565b6100fc610284366004610ca9565b610b28565b6101ca610297366004610ca9565b610b53565b5f6102a683610b8e565b6001600160a01b0383165f908152602081905260409020600301548083106102f157604051636ceb340b60e01b81526001600160a01b03851660048201526024015b60405180910390fd5b6001600160a01b0384165f90815260208190526040902060030180548490811061031d5761031d610d7e565b5f918252602090912001546001600160a01b0316949350505050565b61034283610bc6565b60405163c4e8fcb560e01b81526001600160a01b038381166004830152821515602483015284169063c4e8fcb5906044015f604051808303815f87803b15801561038a575f80fd5b505af115801561039c573d5f803e3d5ffd5b505050506001600160a01b038381165f908152602081815260408083209386168352600484019091529020548015158380156103d6575080155b15610425576003830180546001810182555f828152602080822090920180546001600160a01b0319166001600160a01b038a169081179091559254928152600486019091526040902055610529565b831580156104305750805b156105295760038301545f198301905f9061044d90600190610d92565b90508181146104d8575f85600301828154811061046c5761046c610d7e565b5f918252602090912001546003870180546001600160a01b03909216925082918590811061049c5761049c610d7e565b5f91825260208083209190910180546001600160a01b0319166001600160a01b0394851617905592909116815260048701909152604090208490555b846003018054806104eb576104eb610db7565b5f828152602080822083015f1990810180546001600160a01b03191690559092019092556001600160a01b0389168252600487019052604081205550505b505050505050565b5f61053b82610b8e565b506001600160a01b039081165f908152602081905260409020600101541690565b5f61056683610b8e565b506001600160a01b039182165f9081526020818152604080832093909416825260049092019091522054151590565b5f61059f82610b8e565b506001600160a01b03165f9081526020819052604090206003015490565b6105c681610b8e565b6001600160a01b038181165f9081526020819052604090206002015416331461060d576040516388c3a11560e01b81526001600160a01b03821660048201526024016102e8565b6040515f907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da908290a26001600160a01b038082165f818152602081905260408082206002810180546001600160a01b031916905560010154905133949190911692917fc8894f26f396ce8c004245c8b7cd1b92103a6e4302fcbab883987149ac01b7ec91a46001600160a01b03165f90815260208190526040902060010180546001600160a01b03191633179055565b6106c782610bc6565b6001600160a01b0381166106f95760405163a388d26360e01b81526001600160a01b03831660048201526024016102e8565b6001600160a01b038083165f9081526020819052604090206002015481169082160361074b576040516365e0406560e11b81526001600160a01b038084166004830152821660248201526044016102e8565b6040516001600160a01b038216907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da905f90a26001600160a01b039182165f90815260208190526040902060020180546001600160a01b03191691909216179055565b5f8060ff60f81b30847f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f6040516020016107eb9493929190610dcb565b60408051601f198184030181529190528051602090910120936001600160a01b0385163f7fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167149350915050565b5f6001600160a01b0382166108605760405163267eaa8160e21b815260040160405180910390fd5b606083901c3314610884576040516332db94d160e21b815260040160405180910390fd5b6040516108c3906001600160f81b031990309086907f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f90602001610dcb565b604051602081830303815290604052805190602001205f1c90507fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167816001600160a01b03163f0361093257604051633194665960e11b81526001600160a01b03821660048201526024016102e8565b8260405161093f90610c16565b8190604051809103905ff590508015801561095c573d5f803e3d5ffd5b50506001600160a01b038181165f81815260208181526040918290206001810180546001600160a01b03191695881695909517909455868455815192835282018690527f4397af6128d529b8ae0442f99db1296d5136062597a15bbc61c1b2a6431a7d15910160405180910390a16040516001600160a01b03808516915f918516907fc8894f26f396ce8c004245c8b7cd1b92103a6e4302fcbab883987149ac01b7ec908390a45092915050565b610a1381610bc6565b6001600160a01b038181165f9081526020819052604090206002015416610a58576040516335809b0b60e11b81526001600160a01b03821660048201526024016102e8565b6040515f907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da908290a26001600160a01b03165f90815260208190526040902060020180546001600160a01b0319169055565b6060610ab682610b8e565b6001600160a01b0382165f908152602081815260409182902060030180548351818402810184019094528084529091830182828015610b1c57602002820191905f5260205f20905b81546001600160a01b03168152600190910190602001808311610afe575b50505050509050919050565b5f610b3282610b8e565b506001600160a01b039081165f908152602081905260409020600201541690565b6001600160a01b0381165f9081526020819052604090205480610b89576040516304ca820960e41b815260040160405180910390fd5b919050565b6001600160a01b0381165f90815260208190526040902054610bc3576040516304ca820960e41b815260040160405180910390fd5b50565b610bcf81610b8e565b6001600160a01b038181165f90815260208190526040902060010154163314610bc35760405163d4ed9a1760e01b81526001600160a01b03821660048201526024016102e8565b610a4180610e0583390190565b80356001600160a01b0381168114610b89575f80fd5b5f8060408385031215610c4a575f80fd5b610c5383610c23565b946020939093013593505050565b5f805f60608486031215610c73575f80fd5b610c7c84610c23565b9250610c8a60208501610c23565b915060408401358015158114610c9e575f80fd5b809150509250925092565b5f60208284031215610cb9575f80fd5b610cc282610c23565b9392505050565b5f8060408385031215610cda575f80fd5b610ce383610c23565b9150610cf160208401610c23565b90509250929050565b5f60208284031215610d0a575f80fd5b5035919050565b5f8060408385031215610d22575f80fd5b82359150610cf160208401610c23565b602080825282518282018190525f9190848201906040850190845b81811015610d725783516001600160a01b031683529284019291840191600101610d4d565b50909695505050505050565b634e487b7160e01b5f52603260045260245ffd5b81810381811115610db157634e487b7160e01b5f52601160045260245ffd5b92915050565b634e487b7160e01b5f52603160045260245ffd5b6001600160f81b031994909416845260609290921b6bffffffffffffffffffffffff19166001840152601583015260358201526055019056fe60a060405234801561000f575f80fd5b5033608052608051610a1561002c5f395f6101d20152610a155ff3fe608060405234801561000f575f80fd5b506004361061004a575f3560e01c80634ce34aa21461004e578063899e104c1461007e5780638df25d9214610091578063c4e8fcb5146100a4575b5f80fd5b61006161005c366004610834565b6100b9565b6040516001600160e01b0319909116815260200160405180910390f35b61006161008c3660046108b4565b610121565b61006161009f36600461091b565b61018a565b6100b76100b2366004610969565b6101c7565b005b5f335f525f60205260405f20546100dd576349ed56f960e11b5f523360045260245ffd5b815f5b81811015610110576101088585838181106100fd576100fd6109a2565b905060c002016102c4565b6001016100e0565b50632671a55160e11b949350505050565b5f335f525f60205260405f2054610145576349ed56f960e11b5f523360045260245ffd5b835f5b8181101561016d576101658787838181106100fd576100fd6109a2565b600101610148565b506101788484610436565b50632267841360e21b95945050505050565b5f335f525f60205260405f20546101ae576349ed56f960e11b5f523360045260245ffd5b6101b88383610436565b506346f92ec960e11b92915050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610210576040516336abb4df60e11b815260040160405180910390fd5b6001600160a01b0382165f9081526020819052604090205481151560ff909116151503610268576040516349271a0f60e11b81526001600160a01b038316600482015281151560248201526044015b60405180910390fd5b6001600160a01b0382165f8181526020818152604091829020805460ff191685151590811790915591519182527fae63067d43ac07563b7eb8db6595635fc77f1578a2a5ea06ba91b63e2afa37e2910160405180910390a25050565b60016102d360208301836109ca565b60038111156102e4576102e46109b6565b03610329576103266102fc60408301602084016109ef565b61030c60608401604085016109ef565b61031c60808501606086016109ef565b8460a0013561056c565b50565b600261033860208301836109ca565b6003811115610349576103496109b6565b036103b6578060a00135600114610379576040516369f9582760e01b815260a0820135600482015260240161025f565b61032661038c60408301602084016109ef565b61039c60608401604085016109ef565b6103ac60808501606086016109ef565b8460800135610660565b60036103c560208301836109ca565b60038111156103d6576103d66109b6565b0361041d576103266103ee60408301602084016109ef565b6103fe60608401604085016109ef565b61040e60808501606086016109ef565b84608001358560a00135610715565b604051631e4cbc7f60e21b815260040160405180910390fd5b808280631759616b60e11b6020525f5b8381101561055f57823582018035803b61046b57635f15d6725f52806020526024601cfd5b60a08201358060051b60c0018060808501351460a0606086013514168185013583141615905080156104a657633ae8821360e21b5f5260045ffd5b506020860195506080602084016024378060061b60400190508060a00160a4525f8160c401528060c4018160a0850160c4375f808260205f875af1935083610550573d1561053057601f3d0160051c91508060051c826003028184111561051a578184036003028280028580020360091c01015b5a60208201101561052d573d5f803e3d5ffd5b50505b6357e222f160e11b5f528260045260c0606452608451602001608452805ffd5b50505050600181019050610446565b5050505060806040525050565b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166106515780873b15151661065157806106405781610623573d1561060257601f3d0160051c8360051c81600302818311156105eb578183036003028280028480020360091c01015b5a6020820110156105fe573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b833b61067757635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af180610707573d156106e557601f3d0160051c8260051c81600302818311156106ce578183036003028280028480020360091c01015b5a6020820110156106e1573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b61072c57635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af1806107d1573d156107b057601f3d0160051c8560051c8160030281831115610799578183036003028280028480020360091c01015b5a6020820110156107ac573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b5f8083601f8401126107fc575f80fd5b50813567ffffffffffffffff811115610813575f80fd5b60208301915083602060c08302850101111561082d575f80fd5b9250929050565b5f8060208385031215610845575f80fd5b823567ffffffffffffffff81111561085b575f80fd5b610867858286016107ec565b90969095509350505050565b5f8083601f840112610883575f80fd5b50813567ffffffffffffffff81111561089a575f80fd5b6020830191508360208260051b850101111561082d575f80fd5b5f805f80604085870312156108c7575f80fd5b843567ffffffffffffffff808211156108de575f80fd5b6108ea888389016107ec565b90965094506020870135915080821115610902575f80fd5b5061090f87828801610873565b95989497509550505050565b5f806020838503121561092c575f80fd5b823567ffffffffffffffff811115610942575f80fd5b61086785828601610873565b80356001600160a01b0381168114610964575f80fd5b919050565b5f806040838503121561097a575f80fd5b6109838361094e565b915060208301358015158114610997575f80fd5b809150509250929050565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52602160045260245ffd5b5f602082840312156109da575f80fd5b8135600481106109e8575f80fd5b9392505050565b5f602082840312156109ff575f80fd5b6109e88261094e56fea164736f6c6343000818000aa164736f6c6343000818000a","storage":{}},"0xbe5deac45dd1ca4ee18dc2d585d84d3d3cb82b0d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c806341539d4a146100465780634d5505d314610097578063afa764d7146100b1575b600080fd5b6100636004803603602081101561005c57600080fd5b50356100dc565b6040805195865260208601949094528484019290925260608401526001600160a01b03166080830152519081900360a00190f35b61009f610114565b60408051918252519081900360200190f35b6100da600480360360608110156100c757600080fd5b508035906020810135906040013561011a565b005b60006020819052908152604090208054600182015460028301546003840154600490940154929391929091906001600160a01b031685565b60015481565b6101226101eb565b506040805160a0810182528481526020808201858152828401858152426060808601918252336080870181815260018054810180825560009081528089528a81208a518155975188830155955160028801559351600387015551600490950180546001600160a01b0319166001600160a01b0390961695909517909455905486518981529485018890528487018a905295519495919491937fba5de06d22af2685c6c7765f60067f7d2b08c2d29f53cdf14d67f6d1c9bfb527929081900390910190a450505050565b6040518060a001604052806000801916815260200160008152602001600081526020016000815260200160006001600160a01b03168152509056fea164736f6c6343000606000a","storage":{"0x1":"0x0"}},"0xbe92182cab5b84fd18b34881a0c32771e84f5b8b":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061021c5760003560e01c80638da5cb5b11610125578063bebec6b4116100ad578063e985e9c51161007c578063e985e9c514610540578063f059235914610553578063f2fde38b14610566578063ffa1ad7414610579578063ffad6f551461059d57600080fd5b8063bebec6b4146104e7578063bfc5429b146104fa578063c15ae7cf1461050d578063c87b56dd1461052d57600080fd5b8063a81ce6f9116100f4578063a81ce6f91461046d578063ac9650d814610480578063b3f9e4cb146104a0578063b85afd28146104b3578063b98b3526146104d457600080fd5b80638da5cb5b146103f157806391015f6b146103f9578063933c051d1461041b578063a3f4df7e1461043d57600080fd5b80634bd79ed0116101a857806370a082311161017757806370a082311461038d578063715018a6146103a05780637e37479e146103a857806383caffbe146103bb578063869b8884146103ce57600080fd5b80634bd79ed0146103335780634f558e79146103465780636352211e14610359578063672b9f811461036c57600080fd5b80631bd8cc1a116101ef5780631bd8cc1a146102ac5780631be5e7ed146102cc578063276fabb1146102ec578063430c20811461030d578063485cc9551461032057600080fd5b806301ffc9a7146102215780630328075514610249578063081812fc1461026c57806313af403514610297575b600080fd5b61023461022f366004612c9d565b6105b0565b60405190151581526020015b60405180910390f35b61025c610257366004612d0b565b610638565b6040516102409493929190612dfe565b61027f61027a366004612e3c565b61065b565b6040516001600160a01b039091168152602001610240565b6102aa6102a5366004612e6a565b610760565b005b6102bf6102ba366004612d0b565b6107d1565b6040516102409190612e87565b6102df6102da366004612edb565b6107f0565b6040516102409190612f12565b6102ff6102fa366004612f25565b61091b565b604051908152602001610240565b61023461031b366004612f66565b61098f565b6102aa61032e366004612f92565b610aa2565b6102aa610341366004612fcb565b610bf5565b610234610354366004612e3c565b610e51565b61027f610367366004612e3c565b610e5c565b61037f61037a366004613036565b610e67565b604051610240929190613058565b6102ff61039b366004612e6a565b610f97565b6102aa611095565b6102ff6103b6366004612e6a565b6110a9565b6102bf6103c936600461307d565b611118565b6103e16103dc366004612fcb565b6114f0565b60405161024094939291906131bb565b61027f6116e6565b61040c610407366004612d0b565b611714565b60405161024093929190613208565b61042e610429366004612fcb565b611734565b60405161024093929190613234565b6102df604051806040016040528060118152602001702aa7299d10283937bc3c902932b0b232b960791b81525081565b61027f61047b366004612e3c565b6118bd565b61049361048e366004612f25565b61198b565b6040516102409190613277565b61027f6104ae366004612e3c565b611a7f565b6104c66104c1366004612d0b565b611b05565b6040516102409291906132d9565b6102df6104e23660046132fe565b611ce1565b6102df6104f5366004612e6a565b611cfb565b6102df6105083660046132fe565b611d6f565b61052061051b366004612f25565b611d89565b6040516102409190613371565b6102df61053b366004612e3c565b611e37565b61023461054e366004612f92565b611f09565b6102aa610561366004612fcb565b611f54565b6102aa610574366004612e6a565b612018565b6102df604051806040016040528060058152602001640302e352e360dc1b81525081565b6102aa6105ab366004613384565b612085565b60006001600160e01b031982166362526e6360e01b14806105e157506001600160e01b03198216636fa624af60e11b145b806105fc57506001600160e01b031982166308da864d60e31b145b8061061757506001600160e01b03198216638584880360e01b145b8061063257506301ffc9a760e01b6001600160e01b03198316145b92915050565b6000806060806106498787876120d8565b93509350935093505b93509350935093565b60006106668261233a565b61067257506000919050565b61067b826123d2565b6106f25760665460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa1580156106c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106ed91906133bd565b610632565b60655460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa15801561073c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061063291906133bd565b600061076a6116e6565b6001600160a01b0316146107c55760405162461bcd60e51b815260206004820152601e60248201527f50726f78795265616465723a204f574e45525f414c52454144595f534554000060448201526064015b60405180910390fd5b6107ce81612419565b50565b60606107e66107e0848661346a565b83612495565b90505b9392505050565b60606107fb826123d2565b1561088057606554604051631be5e7ed60e01b81526001600160a01b0390911690631be5e7ed9061083490879087908790600401613547565b600060405180830381865afa158015610851573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261087991908101906135b0565b90506107e9565b600061088b83612617565b90506001600160a01b0381163b1561091357604051631be5e7ed60e01b81526001600160a01b03821690631be5e7ed906108cd90889088908890600401613547565b600060405180830381865afa92505050801561090b57506040513d6000823e601f3d908101601f1916820160405261090891908101906135b0565b60015b156109135791505b509392505050565b60655460405163276fabb160e01b81526000916001600160a01b03169063276fabb19061094e908690869060040161366c565b602060405180830381865afa15801561096b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613680565b600061099a8261233a565b6109a657506000610632565b6109af826123d2565b610a2d5760665460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a04573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a289190613699565b6107e9565b60655460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a7e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613699565b600054610100900460ff1615808015610ac25750600054600160ff909116105b80610adc5750303b158015610adc575060005460ff166001145b610b3f5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107bc565b6000805460ff191660011790558015610b62576000805461ff0019166101001790555b606580546001600160a01b038086166001600160a01b0319928316179092556066805492851692909116919091179055610b9a61268a565b610ba261268a565b610baa6126b1565b8015610bf0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b610bfd6126e1565b828114610c4c5760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107bc565b60005b83811015610e4a5760006068868684818110610c6d57610c6d6136bb565b9050602002810190610c7f91906136d1565b604051610c8d929190613717565b908152604051908190036020019020541115610cf1576068858583818110610cb757610cb76136bb565b9050602002810190610cc991906136d1565b604051610cd7929190613717565b90815260200160405180910390206000610cf19190612c18565b60005b838383818110610d0657610d066136bb565b9050602002810190610d189190613727565b9050811015610ddc576068868684818110610d3557610d356136bb565b9050602002810190610d4791906136d1565b604051610d55929190613717565b9081526020016040518091039020848484818110610d7557610d756136bb565b9050602002810190610d879190613727565b83818110610d9757610d976136bb565b9050602002810190610da991906136d1565b82546001810184556000938452602090932090920191610dc991836137f8565b5080610dd4816138cd565b915050610cf4565b507fb2b57b54285120d17f49f2490a39ef791441fd0ad1e6b6818c23262bf91f061c858583818110610e1057610e106136bb565b9050602002810190610e2291906136d1565b604051610e309291906138e6565b60405180910390a180610e42816138cd565b915050610c4f565b5050505050565b60006106328261233a565b600061063282612740565b606080610e73836123d2565b15610ef95760655460405163672b9f8160e01b815260048101869052602481018590526001600160a01b039091169063672b9f8190604401600060405180830381865afa158015610ec8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610ef091908101906138fa565b91509150610f90565b6000610f0484612617565b90506001600160a01b0381163b15610f8e5760405163672b9f8160e01b815260048101869052602481018590526001600160a01b0382169063672b9f8190604401600060405180830381865afa925050508015610f8357506040513d6000823e601f3d908101601f19168201604052610f8091908101906138fa565b60015b15610f8e5790935091505b505b9250929050565b6065546040516370a0823160e01b81526001600160a01b03838116600483015260009283929116906370a0823190602401602060405180830381865afa158015610fe5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110099190613680565b6066549091506001600160a01b031615610632576066546040516370a0823160e01b81526001600160a01b038581166004830152909116906370a0823190602401602060405180830381865afa158015611067573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061108b9190613680565b6107e9908261395d565b61109d6126e1565b6110a76000612419565b565b606554604051633f1ba3cf60e11b81526001600160a01b0383811660048301526000921690637e37479e90602401602060405180830381865afa1580156110f4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190613680565b606060006067868660405161112e929190613717565b9081526020016040518091039020805461114790613770565b80601f016020809104026020016040519081016040528092919081815260200182805461117390613770565b80156111c05780601f10611195576101008083540402835291602001916111c0565b820191906000526020600020905b8154815290600101906020018083116111a357829003601f168201915b5050505050905080516000036111d657506114e8565b6000604051806040016040528060068152602001653a37b5b2b71760d11b81525090506000604051806040016040528060088152602001672e6164647265737360c01b81525090506000604051806040016040528060018152602001601760f91b815250905060008385838c8c868d8d8a60405160200161125f99989796959493929190613970565b6040516020818303038152906040529050600060688260405161128291906139f3565b9081526020016040518091039020805480602002602001604051908101604052809291908181526020016000905b8282101561135c5783829060005260206000200180546112cf90613770565b80601f01602080910402602001604051908101604052809291908181526020018280546112fb90613770565b80156113485780601f1061131d57610100808354040283529160200191611348565b820191906000526020600020905b81548152906001019060200180831161132b57829003601f168201915b5050505050815260200190600101906112b0565b50505050905080516003611370919061395d565b6001600160401b03811115611387576113876133da565b6040519080825280602002602001820160405280156113ba57816020015b60608152602001906001900390816113a55790505b50965081876000815181106113d1576113d16136bb565b602002602001018190525060005b815181101561143e578181815181106113fa576113fa6136bb565b602002602001015188826001611410919061395d565b81518110611420576114206136bb565b60200260200101819052508080611436906138cd565b9150506113df565b508486848d8d8860405160200161145a96959493929190613a0f565b6040516020818303038152906040528782516001611478919061395d565b81518110611488576114886136bb565b60200260200101819052508486856040516020016114a893929190613a72565b60405160208183030381529060405287825160026114c6919061395d565b815181106114d6576114d66136bb565b60200260200101819052505050505050505b949350505050565b6060808080846001600160401b0381111561150d5761150d6133da565b604051908082528060200260200182016040528015611536578160200160208202803683370190505b509350846001600160401b03811115611551576115516133da565b60405190808252806020026020018201604052801561157a578160200160208202803683370190505b509250846001600160401b03811115611595576115956133da565b6040519080825280602002602001820160405280156115c857816020015b60608152602001906001900390816115b35790505b509150846001600160401b038111156115e3576115e36133da565b60405190808252806020026020018201604052801561161657816020015b60608152602001906001900390816116015790505b50905060005b858110156116da57611647898989898581811061163b5761163b6136bb565b905060200201356120d8565b888581518110611659576116596136bb565b60200260200101888681518110611672576116726136bb565b6020026020010188878151811061168b5761168b6136bb565b602002602001018888815181106116a4576116a46136bb565b6020908102919091010193909352929091526001600160a01b0392831690915291169052806116d2816138cd565b91505061161c565b50945094509450949050565b7fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c8121905546001600160a01b031690565b6000806060611724868686612761565b9250925092505b93509350939050565b60608080836001600160401b03811115611750576117506133da565b604051908082528060200260200182016040528015611779578160200160208202803683370190505b509250836001600160401b03811115611794576117946133da565b6040519080825280602002602001820160405280156117bd578160200160208202803683370190505b509150836001600160401b038111156117d8576117d86133da565b60405190808252806020026020018201604052801561180b57816020015b60608152602001906001900390816117f65790505b50905060005b848110156118b25761183c8888888885818110611830576118306136bb565b90506020020135612761565b86848151811061184e5761184e6136bb565b60200260200101868581518110611867576118676136bb565b60200260200101868681518110611880576118806136bb565b60209081029190910101929092526001600160a01b0392831690915291169052806118aa816138cd565b915050611811565b509450945094915050565b606554604051634f558e7960e01b8152600481018390526000916001600160a01b031690634f558e7990602401602060405180830381865afa158015611907573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061192b9190613699565b156119415750506065546001600160a01b031690565b6066546001600160a01b03161580159061196d575060006119618361296c565b6001600160a01b031614155b156119835750506066546001600160a01b031690565b506000919050565b6060816001600160401b038111156119a5576119a56133da565b6040519080825280602002602001820160405280156119d857816020015b60608152602001906001900390816119c35790505b50905060005b82811015611a7857611a48308585848181106119fc576119fc6136bb565b9050602002810190611a0e91906136d1565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061299e92505050565b828281518110611a5a57611a5a6136bb565b60200260200101819052508080611a70906138cd565b9150506119de565b5092915050565b6000611a8a8261233a565b611a9657506000919050565b611a9f826123d2565b611ad45760665460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb906024016106ac565b60655460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb9060240161071f565b606080836001600160401b03811115611b2057611b206133da565b604051908082528060200260200182016040528015611b5357816020015b6060815260200190600190039081611b3e5790505b509150836001600160401b03811115611b6e57611b6e6133da565b604051908082528060200260200182016040528015611ba157816020015b6060815260200190600190039081611b8c5790505b509050611bad836123d2565b15611c345760655460405163170b5fa560e31b81526001600160a01b039091169063b85afd2890611be690889088908890600401613ab5565b600060405180830381865afa158015611c03573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611c2b9190810190613b72565b91509150611cd9565b6000611c3f84612617565b90506001600160a01b0381163b15158015611c5957508415155b15611cd75760405163170b5fa560e31b81526001600160a01b0382169063b85afd2890611c8e90899089908990600401613ab5565b600060405180830381865afa925050508015611ccc57506040513d6000823e601f3d908101601f19168201604052611cc99190810190613b72565b60015b15611cd75790935091505b505b935093915050565b6060611cf08686868686612a92565b979650505050505050565b606554604051632fafb1ad60e21b81526001600160a01b038381166004830152606092169063bebec6b4906024015b600060405180830381865afa158015611d47573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261063291908101906135b0565b6060611d7e8686868686612a92565b509695505050505050565b6060816001600160401b03811115611da357611da36133da565b604051908082528060200260200182016040528015611dcc578160200160208202803683370190505b50905060005b82811015611a7857611dfb848483818110611def57611def6136bb565b90506020020135612740565b828281518110611e0d57611e0d6136bb565b6001600160a01b039092166020928302919091019091015280611e2f816138cd565b915050611dd2565b6060611e428261233a565b611e5a57505060408051602081019091526000815290565b611e63826123d2565b611ed85760665460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401600060405180830381865afa158015611eb0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106ed91908101906135b0565b60655460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401611d2a565b60405162461bcd60e51b815260206004820152601f60248201527f50726f78795265616465723a20554e535550504f525445445f4d4554484f440060448201526000906064016107bc565b611f5c6126e1565b828114611fab5760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107bc565b60005b83811015610e4a57612006858583818110611fcb57611fcb6136bb565b9050602002810190611fdd91906136d1565b858585818110611fef57611fef6136bb565b905060200281019061200191906136d1565b612b3e565b80612010816138cd565b915050611fae565b6120206126e1565b6001600160a01b0381166107c55760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107bc565b61208d6126e1565b60005b83811015610e4a576120c68585838181106120ad576120ad6136bb565b90506020028101906120bf91906136d1565b8585612b3e565b806120d0816138cd565b915050612090565b600080606080856001600160401b038111156120f6576120f66133da565b60405190808252806020026020018201604052801561212957816020015b60608152602001906001900390816121145790505b509150856001600160401b03811115612144576121446133da565b60405190808252806020026020018201604052801561217757816020015b60608152602001906001900390816121625790505b509050612183856123d2565b156122845760655460405163b3f9e4cb60e01b8152600481018790526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa1580156121d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121f591906133bd565b935061220085612bad565b60655460405163170b5fa560e31b81529194506001600160a01b03169063b85afd2890612235908a908a908a90600401613ab5565b600060405180830381865afa158015612252573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261227a9190810190613b72565b9092509050610652565b61228d85612617565b93506122988561296c565b92506001600160a01b0384163b151580156122b4575060008251115b156106525760405163170b5fa560e31b81526001600160a01b0385169063b85afd28906122e9908a908a908a90600401613ab5565b600060405180830381865afa92505050801561232757506040513d6000823e601f3d908101601f191682016040526123249190810190613b72565b60015b1561065257909250905093509350935093565b6000612345826123d2565b6123645760006123548361296c565b6001600160a01b03161415610632565b606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e79906024015b602060405180830381865afa1580156123ae573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190613699565b6066546000906001600160a01b031615806106325750606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401612391565b60006124236116e6565b9050817fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c812190580546001600160a01b0319166001600160a01b03928316179055604051838216918316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b606082516001600160401b038111156124b0576124b06133da565b6040519080825280602002602001820160405280156124e357816020015b60608152602001906001900390816124ce5790505b5090506124ef826123d2565b1561257257606554604051630dec660d60e11b81526001600160a01b0390911690631bd8cc1a906125269086908690600401613bcb565b600060405180830381865afa158015612543573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261256b9190810190613bed565b9050610632565b600061257d83612617565b90506001600160a01b0381163b15158015612599575060008451115b15611a7857604051630dec660d60e11b81526001600160a01b03821690631bd8cc1a906125cc9087908790600401613bcb565b600060405180830381865afa92505050801561260a57506040513d6000823e601f3d908101601f191682016040526126079190810190613bed565b60015b15611a7857949350505050565b60665460405163b3f9e4cb60e01b8152600481018390526000916001600160a01b03169063b3f9e4cb906024015b602060405180830381865afa92505050801561267e575060408051601f3d908101601f1916820190925261267b918101906133bd565b60015b61063257506000919050565b600054610100900460ff166110a75760405162461bcd60e51b81526004016107bc90613c21565b600054610100900460ff166126d85760405162461bcd60e51b81526004016107bc90613c21565b6110a733612419565b336126ea6116e6565b6001600160a01b0316146110a75760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107bc565b600061274b826123d2565b612758576106ed8261296c565b61063282612bad565b6000806060846001600160401b0381111561277e5761277e6133da565b6040519080825280602002602001820160405280156127b157816020015b606081526020019060019003908161279c5790505b5090506127bd846123d2565b156128bb5760655460405163b3f9e4cb60e01b8152600481018690526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561280b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061282f91906133bd565b925061283a84612bad565b606554604051630dec660d60e11b81529193506001600160a01b031690631bd8cc1a9061286f90899089908990600401613c6c565b600060405180830381865afa15801561288c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526128b49190810190613bed565b905061172b565b6128c484612617565b92506128cf8461296c565b91506001600160a01b0383163b151580156128e957508415155b1561172b57604051630dec660d60e11b81526001600160a01b03841690631bd8cc1a9061291e90899089908990600401613c6c565b600060405180830381865afa92505050801561295c57506040513d6000823e601f3d908101601f191682016040526129599190810190613bed565b60015b1561172b57905093509350939050565b6066546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401612645565b60606001600160a01b0383163b612a065760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b60648201526084016107bc565b600080846001600160a01b031684604051612a2191906139f3565b600060405180830381855af49150503d8060008114612a5c576040519150601f19603f3d011682016040523d82523d6000602084013e612a61565b606091505b5091509150612a898282604051806060016040528060278152602001613c8160279139612bdf565b95945050505050565b6060806000612aa388888888611118565b90506000612ab18286612495565b905060005b8151811015612b31576000828281518110612ad357612ad36136bb565b6020026020010151511115612b1f57828181518110612af457612af46136bb565b60200260200101519350818181518110612b1057612b106136bb565b60200260200101519450612b31565b80612b29816138cd565b915050612ab6565b5050509550959350505050565b818160678686604051612b52929190613717565b90815260200160405180910390209182612b6d9291906137f8565b507f0bf4b04a0f6d7d0800284e1abb0f58f795c0a25b9088634b6ab847be51001dec8484604051612b9f9291906138e6565b60405180910390a150505050565b6065546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401612645565b60608315612bee5750816107e9565b825115612bfe5782518084602001fd5b8160405162461bcd60e51b81526004016107bc9190612f12565b50805460008255906000526020600020908101906107ce91905b80821115612c4f576000612c468282612c53565b50600101612c32565b5090565b508054612c5f90613770565b6000825580601f10612c6f575050565b601f0160209004906000526020600020908101906107ce91905b80821115612c4f5760008155600101612c89565b600060208284031215612caf57600080fd5b81356001600160e01b0319811681146107e957600080fd5b60008083601f840112612cd957600080fd5b5081356001600160401b03811115612cf057600080fd5b6020830191508360208260051b8501011115610f9057600080fd5b600080600060408486031215612d2057600080fd5b83356001600160401b03811115612d3657600080fd5b612d4286828701612cc7565b909790965060209590950135949350505050565b60005b83811015612d71578181015183820152602001612d59565b50506000910152565b60008151808452612d92816020860160208601612d56565b601f01601f19169290920160200192915050565b600082825180855260208086019550808260051b84010181860160005b84811015612df157601f19868403018952612ddf838351612d7a565b98840198925090830190600101612dc3565b5090979650505050505050565b6001600160a01b03858116825284166020820152608060408201819052600090612e2a90830185612da6565b8281036060840152611cf08185612da6565b600060208284031215612e4e57600080fd5b5035919050565b6001600160a01b03811681146107ce57600080fd5b600060208284031215612e7c57600080fd5b81356107e981612e55565b6020815260006107e96020830184612da6565b60008083601f840112612eac57600080fd5b5081356001600160401b03811115612ec357600080fd5b602083019150836020828501011115610f9057600080fd5b600080600060408486031215612ef057600080fd5b83356001600160401b03811115612f0657600080fd5b612d4286828701612e9a565b6020815260006107e96020830184612d7a565b60008060208385031215612f3857600080fd5b82356001600160401b03811115612f4e57600080fd5b612f5a85828601612cc7565b90969095509350505050565b60008060408385031215612f7957600080fd5b8235612f8481612e55565b946020939093013593505050565b60008060408385031215612fa557600080fd5b8235612fb081612e55565b91506020830135612fc081612e55565b809150509250929050565b60008060008060408587031215612fe157600080fd5b84356001600160401b0380821115612ff857600080fd5b61300488838901612cc7565b9096509450602087013591508082111561301d57600080fd5b5061302a87828801612cc7565b95989497509550505050565b6000806040838503121561304957600080fd5b50508035926020909101359150565b60408152600061306b6040830185612d7a565b8281036020840152612a898185612d7a565b6000806000806040858703121561309357600080fd5b84356001600160401b03808211156130aa57600080fd5b6130b688838901612e9a565b909650945060208701359150808211156130cf57600080fd5b5061302a87828801612e9a565b600081518084526020808501945080840160005b838110156131155781516001600160a01b0316875295820195908201906001016130f0565b509495945050505050565b60008282518085526020808601955060058183821b8501018287016000805b868110156131ac57601f1988850381018c5283518051808752908801908887019080891b88018a01865b8281101561319557858a8303018452613183828651612d7a565b948c0194938c01939150600101613169565b509e8a019e9750505093870193505060010161313f565b50919998505050505050505050565b6080815260006131ce60808301876130dc565b82810360208401526131e081876130dc565b905082810360408401526131f48186613120565b90508281036060840152611cf08185613120565b6001600160a01b03848116825283166020820152606060408201819052600090612a8990830184612da6565b60608152600061324760608301866130dc565b828103602084015261325981866130dc565b9050828103604084015261326d8185613120565b9695505050505050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156132cc57603f198886030184526132ba858351612d7a565b9450928501929085019060010161329e565b5092979650505050505050565b6040815260006132ec6040830185612da6565b8281036020840152612a898185612da6565b60008060008060006060868803121561331657600080fd5b85356001600160401b038082111561332d57600080fd5b61333989838a01612e9a565b9097509550602088013591508082111561335257600080fd5b5061335f88828901612e9a565b96999598509660400135949350505050565b6020815260006107e960208301846130dc565b6000806000806040858703121561339a57600080fd5b84356001600160401b03808211156133b157600080fd5b6130b688838901612cc7565b6000602082840312156133cf57600080fd5b81516107e981612e55565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715613418576134186133da565b604052919050565b60006001600160401b03821115613439576134396133da565b5060051b60200190565b60006001600160401b0382111561345c5761345c6133da565b50601f01601f191660200190565b600061347d61347884613420565b6133f0565b80848252602080830192508560051b85013681111561349b57600080fd5b855b818110156135125780356001600160401b038111156134bc5760008081fd5b870136601f8201126134ce5760008081fd5b80356134dc61347882613443565b81815236868385010111156134f15760008081fd5b8186840187830137600091810186019190915286525093820193820161349d565b50919695505050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60408152600061355b60408301858761351e565b9050826020830152949350505050565b600082601f83011261357c57600080fd5b815161358a61347882613443565b81815284602083860101111561359f57600080fd5b6114e8826020830160208701612d56565b6000602082840312156135c257600080fd5b81516001600160401b038111156135d857600080fd5b6114e88482850161356b565b60008383855260208086019550808560051b8301018460005b87811015612df157848303601f19018952813536889003601e1901811261362357600080fd5b870184810190356001600160401b0381111561363e57600080fd5b80360382131561364d57600080fd5b61365885828461351e565b9a86019a94505050908301906001016135fd565b6020815260006107e66020830184866135e4565b60006020828403121561369257600080fd5b5051919050565b6000602082840312156136ab57600080fd5b815180151581146107e957600080fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e198436030181126136e857600080fd5b8301803591506001600160401b0382111561370257600080fd5b602001915036819003821315610f9057600080fd5b8183823760009101908152919050565b6000808335601e1984360301811261373e57600080fd5b8301803591506001600160401b0382111561375857600080fd5b6020019150600581901b3603821315610f9057600080fd5b600181811c9082168061378457607f821691505b6020821081036137a457634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115610bf057600081815260208120601f850160051c810160208610156137d15750805b601f850160051c820191505b818110156137f0578281556001016137dd565b505050505050565b6001600160401b0383111561380f5761380f6133da565b6138238361381d8354613770565b836137aa565b6000601f841160018114613857576000851561383f5750838201355b600019600387901b1c1916600186901b178355610e4a565b600083815260209020601f19861690835b828110156138885786850135825560209485019460019092019101613868565b50868210156138a55760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b634e487b7160e01b600052601160045260246000fd5b6000600182016138df576138df6138b7565b5060010190565b6020815260006107e660208301848661351e565b6000806040838503121561390d57600080fd5b82516001600160401b038082111561392457600080fd5b6139308683870161356b565b9350602085015191508082111561394657600080fd5b506139538582860161356b565b9150509250929050565b80820180821115610632576106326138b7565b60008a51613982818460208f01612d56565b8a5190830190613996818360208f01612d56565b8a519101906139a9818360208e01612d56565b0187898237600090880190815286516139c6818360208b01612d56565b0184868237600090850190815283516139e3818360208801612d56565b019b9a5050505050505050505050565b60008251613a05818460208701612d56565b9190910192915050565b60008751613a21818460208c01612d56565b875190830190613a35818360208c01612d56565b8751910190613a48818360208b01612d56565b018486823760009085019081528351613a65818360208801612d56565b0198975050505050505050565b60008451613a84818460208901612d56565b845190830190613a98818360208901612d56565b8451910190613aab818360208801612d56565b0195945050505050565b6040808252810183905260006001600160fb1b03841115613ad557600080fd5b8360051b808660608501376020830193909352500160600192915050565b600082601f830112613b0457600080fd5b81516020613b1461347883613420565b82815260059290921b84018101918181019086841115613b3357600080fd5b8286015b84811015611d7e5780516001600160401b03811115613b565760008081fd5b613b648986838b010161356b565b845250918301918301613b37565b60008060408385031215613b8557600080fd5b82516001600160401b0380821115613b9c57600080fd5b613ba886838701613af3565b93506020850151915080821115613bbe57600080fd5b5061395385828601613af3565b604081526000613bde6040830185612da6565b90508260208301529392505050565b600060208284031215613bff57600080fd5b81516001600160401b03811115613c1557600080fd5b6114e884828501613af3565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60408152600061355b6040830185876135e456fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a","storage":{}},"0xc2110388dd54228ae0a834119457ede938bf0b57":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061021e5760003560e01c80638da5cb5b11610123578063acf1a841116100ab578063d547741f1161006f578063d547741f14610682578063f14fcbc8146106a2578063f23a6e61146106c2578063f2fde38b146106e2578063ffa1ad741461070257600080fd5b8063acf1a841146105e0578063bc197c8114610600578063c0c53b8b14610620578063cf01585314610640578063d53913931461066057600080fd5b8063a0e3aef1116100f2578063a0e3aef114610534578063a217fddf14610554578063a3f4df7e14610569578063a4247400146105a0578063aa271e1a146105c057600080fd5b80638da5cb5b146104c157806391d14854146104df578063983b2d56146104ff578063986502751461051f57600080fd5b80635fc1964f116101a65780636ccbae5f116101755780636ccbae5f14610439578063715018a61461045957806371e2a6571461046e57806381c81d351461048e57806383e7f6ff146104a157600080fd5b80635fc1964f146103ae578063634486da146103ce5780636352211e146103e15780636a8be89e1461041957600080fd5b80632f2ff15d116101ed5780632f2ff15d146103035780633092afd51461032557806336568abe14610345578063423f6cef14610365578063572b6c051461038557600080fd5b806301ffc9a71461022a578063150b7a021461025f5780631bf7e13e14610298578063248a9ca3146102c557600080fd5b3661022557005b600080fd5b34801561023657600080fd5b5061024a6102453660046125f2565b610733565b60405190151581526020015b60405180910390f35b34801561026b57600080fd5b5061027f61027a366004612672565b610779565b6040516001600160e01b03199091168152602001610256565b3480156102a457600080fd5b506102b86102b33660046126e4565b6108cb565b60405161025691906127a4565b3480156102d157600080fd5b506102f56102e03660046127b7565b600090815260fb602052604090206001015490565b604051908152602001610256565b34801561030f57600080fd5b5061032361031e3660046127d0565b610997565b005b34801561033157600080fd5b50610323610340366004612800565b6109c1565b34801561035157600080fd5b506103236103603660046127d0565b6109d5565b34801561037157600080fd5b5061032361038036600461281d565b610a68565b34801561039157600080fd5b5061024a6103a0366004612800565b6001600160a01b0316301490565b3480156103ba57600080fd5b506103236103c936600461288f565b610bd9565b6103236103dc366004612800565b610c21565b3480156103ed57600080fd5b506104016103fc3660046127b7565b610ce4565b6040516001600160a01b039091168152602001610256565b34801561042557600080fd5b50610323610434366004612800565b610cef565b34801561044557600080fd5b506102f56104543660046127b7565b610d38565b34801561046557600080fd5b50610323610d7e565b34801561047a57600080fd5b5061032361048936600461288f565b610d92565b61032361049c366004612800565b610dda565b3480156104ad57600080fd5b506102f56104bc366004612934565b610e57565b3480156104cd57600080fd5b506097546001600160a01b0316610401565b3480156104eb57600080fd5b5061024a6104fa3660046127d0565b610efa565b34801561050b57600080fd5b5061032361051a366004612800565b610f25565b34801561052b57600080fd5b50610323610f36565b34801561054057600080fd5b506102f561054f366004612a5c565b610f50565b34801561056057600080fd5b506102f5600081565b34801561057557600080fd5b506102b86040518060400160405280600b81526020016a454e5320437573746f647960a81b81525081565b3480156105ac57600080fd5b5061024a6105bb3660046126e4565b610ffc565b3480156105cc57600080fd5b5061024a6105db366004612800565b61104f565b3480156105ec57600080fd5b506103236105fb366004612934565b611069565b34801561060c57600080fd5b5061027f61061b366004612b35565b611222565b34801561062c57600080fd5b5061032361063b366004612bf3565b6112db565b34801561064c57600080fd5b5061032361065b366004612c3e565b611485565b34801561066c57600080fd5b506102f56000805160206133f583398151915281565b34801561068e57600080fd5b5061032361069d3660046127d0565b611592565b3480156106ae57600080fd5b506103236106bd3660046127b7565b6115b7565b3480156106ce57600080fd5b5061027f6106dd366004612d20565b61162b565b3480156106ee57600080fd5b506103236106fd366004612800565b6116bc565b34801561070e57600080fd5b506102b860405180604001604052806005815260200164302e312e3360d81b81525081565b60006001600160e01b03198216630a85bd0160e11b148061076457506001600160e01b03198216630271189760e51b145b806107735750610773826116d8565b92915050565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004546000906001600160a01b0316806107b061170d565b6001600160a01b0316036108a957600080806107ce86880188612d9b565b9250925092506107dd8361171c565b6001600160a01b03841663b88d4fde30600080516020613415833981519152546040516001600160a01b03909116908c9061082390879030906000908b90602001612dfc565b6040516020818303038152906040526040518563ffffffff1660e01b81526004016108519493929190612e3c565b600060405180830381600087803b15801561086b57600080fd5b505af115801561087f573d6000803e3d6000fd5b5050505061089561088f8261174e565b846117d3565b50630a85bd0160e11b93506108c292505050565b6040516344e7d94960e01b815260040160405180910390fd5b95945050505050565b606060005a90506108dd858585610ffc565b6108fa57604051638baa579f60e01b815260040160405180910390fd5b61098c61090a6020870187612800565b3060408801358461091e60608b018b612e6f565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061185e92505050565b9150505b9392505050565b600082815260fb60205260409020600101546109b28161193f565b6109bc8383611950565b505050565b6109c96119d7565b6109d281611a50565b50565b6109dd61170d565b6001600160a01b0316816001600160a01b031614610a5a5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b610a648282611a68565b5050565b80610a7161170d565b6001600160a01b0316610a8382611aed565b6001600160a01b031614610ac55780610a9a61170d565b604051637ea58b1160e01b815260048101929092526001600160a01b03166024820152604401610a51565b610ace82611c03565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052600090610b22906060015b6040516020818303038152906040528051906020012090565b80546001600160a01b0319166001600160a01b0392909216919091179055600060008051602061341583398151915254604051637921219560e11b81523060048201526001600160a01b038681166024830152604482018690526001606483015260a06084830152600060a48301529091169150819063f242432a9060c401600060405180830381600087803b158015610bbb57600080fd5b505af1158015610bcf573d6000803e3d6000fd5b5050505050505050565b610be16119d7565b60005b8151811015610a6457610c0f828281518110610c0257610c02612eb5565b6020026020010151611a50565b80610c1981612ee1565b915050610be4565b610c2c6105db61170d565b610c485760405162461bcd60e51b8152600401610a5190612efa565b6001600160a01b038116610c9e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a51565b610ca781611c1c565b610caf610f36565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610a64573d6000803e3d6000fd5b600061077382611aed565b610cf76119d7565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c500480546001600160a01b0319166001600160a01b0392909216919091179055565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a838156020820152908101829052600090610d7790606001610b09565b5492915050565b610d866119d7565b610d906000611c34565b565b610d9a6119d7565b60005b8151811015610a6457610dc8828281518110610dbb57610dbb612eb5565b6020026020010151611c1c565b80610dd281612ee1565b915050610d9d565b610de56105db61170d565b610e015760405162461bcd60e51b8152600401610a5190612efa565b6001600160a01b038116610ca75760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a51565b6000805160206133d5833981519152546040516383e7f6ff60e01b81526000916001600160a01b031690829082906383e7f6ff90610e9d90899089908990600401612f58565b6040805180830381865afa158015610eb9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610edd9190612f7c565b60208101518151919250610ef091612fca565b9695505050505050565b600091825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610f2d6119d7565b6109d281611c1c565b610d906000805160206133f583398151915261036061170d565b6000805160206133d5833981519152546000906001600160a01b0316806365a69dcf8d85610f7e5730610f80565b8d5b8d8d8d8d8d8d8d6040518a63ffffffff1660e01b8152600401610fab9998979695949392919061306e565b602060405180830381865afa158015610fc8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fec91906130de565b9c9b505050505050505050505050565b600061104761100a856130f7565b3085858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611c8692505050565b949350505050565b60006107736000805160206133f583398151915283610efa565b6110746105db61170d565b6110905760405162461bcd60e51b8152600401610a5190612efa565b6002603354036110e25760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a51565b60026033556000805160206133d5833981519152546040516383e7f6ff60e01b81526001600160a01b039091169060009082906383e7f6ff9061112d90889088908890600401612f58565b6040805180830381865afa158015611149573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061116d9190612f7c565b6020810151815191925061118091612fca565b4710156111a05760405163050205f960e01b815260040160405180910390fd5b816001600160a01b031663acf1a841826020015183600001516111c39190612fca565b8787876040518563ffffffff1660e01b81526004016111e493929190612f58565b6000604051808303818588803b1580156111fd57600080fd5b505af1158015611211573d6000803e3d6000fd5b505060016033555050505050505050565b6000600080516020613415833981519152546001600160a01b031661124561170d565b6001600160a01b03161461126c576040516344e7d94960e01b815260040160405180910390fd5b600061127a83850185612800565b90506112858161171c565b60005b878110156112c4576112b28989838181106112a5576112a5612eb5565b90506020020135836117d3565b806112bc81612ee1565b915050611288565b5063bc197c8160e01b9a9950505050505050505050565b600054610100900460ff16158080156112fb5750600054600160ff909116105b806113155750303b158015611315575060005460ff166001145b6113785760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610a51565b6000805460ff19166001179055801561139b576000805461ff0019166101001790555b6000805160206133d583398151915280546001600160a01b038087166001600160a01b03199283161790925560008051602061341583398151915280548684169083161790557ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004805492851692909116919091179055611419611dc5565b611421611df3565b611429611df3565b611431611e1a565b611439611e51565b801561147f576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6114906105db61170d565b6114ac5760405162461bcd60e51b8152600401610a5190612efa565b6002603354036114fe5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a51565b600260338190555060006115478c8c8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061174e92505050565b905061155281611c03565b6115708c8c846115625730611564565b8c5b8c8c8c8c8c8c8c611e8a565b8161157f5761157f818b6117d3565b5050600160335550505050505050505050565b600082815260fb60205260409020600101546115ad8161193f565b6109bc8383611a68565b60006000805160206133d583398151915254604051631e29f97960e31b8152600481018490526001600160a01b039091169150819063f14fcbc890602401600060405180830381600087803b15801561160f57600080fd5b505af1158015611623573d6000803e3d6000fd5b505050505050565b6000600080516020613415833981519152546001600160a01b031661164e61170d565b6001600160a01b031614611675576040516344e7d94960e01b815260040160405180910390fd5b6001600160a01b038616156116a957600061169283850185612800565b905061169d8161171c565b6116a786826117d3565b505b5063f23a6e6160e01b9695505050505050565b6116c46119d7565b6116cd81611fd5565b6109d260008261204b565b60006001600160e01b03198216637965db0b60e01b148061077357506301ffc9a760e01b6001600160e01b0319831614610773565b6000611717612055565b905090565b6001600160a01b0381166109d25760405163b20f76e360e01b81526001600160a01b0382166004820152602401610a51565b60007f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae60001b826040516020016117859190613195565b604051602081830303815290604052805190602001206040516020016117b5929190918252602082015260400190565b60408051601f19818403018152919052805160209091012092915050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052819061181190606001610b09565b80546001600160a01b0319166001600160a01b039283161790556040519082169083907f45aa97e368889fb3527c1db60c59c2ae91e82f21778613449e46d4208c1c4b1290600090a35050565b606061186985612073565b600080876001600160a01b0316866118838b8a89896120d9565b6040516118909190613195565b60006040518083038160008787f1925050503d80600081146118ce576040519150601f19603f3d011682016040523d82523d6000602084013e6118d3565b606091505b5090925090506118e4603f876131b1565b5a116118f2576118f26131d3565b61193282826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c4544000000000000815250612109565b9998505050505050505050565b6109d28161194b61170d565b612142565b61195a8282610efa565b610a6457600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff1916600117905561199361170d565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6119df61170d565b6001600160a01b03166119fa6097546001600160a01b031690565b6001600160a01b031614610d905760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a51565b6109d26000805160206133f583398151915282611592565b611a728282610efa565b15610a6457600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff19169055611aa961170d565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101829052600090611b2c90606001610b09565b546001600160a01b0316905080611b595760405163124bad6360e31b815260048101839052602401610a51565b30600080516020613415833981519152546040516331a9108f60e11b8152600481018590526001600160a01b0390911690636352211e90602401602060405180830381865afa158015611bb0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bd491906131e9565b6001600160a01b031614611bfe576040516303b673fd60e21b815260048101839052602401610a51565b919050565b303303611c13576109d2816121a6565b6109d281612073565b6109d26000805160206133f58339815191528261204b565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015611ccd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cf191906130de565b90506000611d9f866060015180519060200120868860200151604051602001611d3f9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b9050818660200151148015610ef057508551610ef0906001600160a01b031682866121d0565b600054610100900460ff16611dec5760405162461bcd60e51b8152600401610a5190613206565b6001603355565b600054610100900460ff16610d905760405162461bcd60e51b8152600401610a5190613206565b600054610100900460ff16611e415760405162461bcd60e51b8152600401610a5190613206565b610d90611e4c61170d565b611c34565b600054610100900460ff16611e785760405162461bcd60e51b8152600401610a5190613206565b610d906000611e8561170d565b61204b565b6000805160206133d5833981519152546040516383e7f6ff60e01b81526001600160a01b039091169060009082906383e7f6ff90611ed0908f908f908e90600401612f58565b6040805180830381865afa158015611eec573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f109190612f7c565b60208101518151919250611f2391612fca565b471015611f435760405163050205f960e01b815260040160405180910390fd5b816001600160a01b03166374694a2b82602001518360000151611f669190612fca565b8e8e8e8e8e8e8e8e8e8e6040518c63ffffffff1660e01b8152600401611f959a99989796959493929190613251565b6000604051808303818588803b158015611fae57600080fd5b505af1158015611fc2573d6000803e3d6000fd5b5050505050505050505050505050505050565b611fdd6119d7565b6001600160a01b0381166120425760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610a51565b6109d281611c34565b610a648282611950565b600030330361206b575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290526000906060016040516020818303038152906040528051906020012090506120c88190565b546120d4906001612fca565b905550565b60608285856040516020016120f0939291906132c3565b6040516020818303038152906040529050949350505050565b60608315612118575081610990565b8251156121285782518084602001fd5b8160405162461bcd60e51b8152600401610a5191906127a4565b61214c8282610efa565b610a6457612164816001600160a01b03166014612312565b61216f836020612312565b604051602001612180929190613302565b60408051601f198184030181529082905262461bcd60e51b8252610a51916004016127a4565b6121ae6124ad565b81146109d257604051635637b6af60e11b815260048101829052602401610a51565b60008060006121df85856124c0565b909250905060008160048111156121f8576121f8613377565b1480156122165750856001600160a01b0316826001600160a01b0316145b1561222657600192505050610990565b600080876001600160a01b0316631626ba7e60e01b888860405160240161224e92919061338d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161228c9190613195565b600060405180830381855afa9150503d80600081146122c7576040519150601f19603f3d011682016040523d82523d6000602084013e6122cc565b606091505b50915091508180156122df575080516020145b801561230657508051630b135d3f60e11b9061230490830160209081019084016130de565b145b98975050505050505050565b606060006123218360026133a6565b61232c906002612fca565b6001600160401b0381111561234357612343612849565b6040519080825280601f01601f19166020018201604052801561236d576020820181803683370190505b509050600360fc1b8160008151811061238857612388612eb5565b60200101906001600160f81b031916908160001a905350600f60fb1b816001815181106123b7576123b7612eb5565b60200101906001600160f81b031916908160001a90535060006123db8460026133a6565b6123e6906001612fca565b90505b600181111561245e576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061241a5761241a612eb5565b1a60f81b82828151811061243057612430612eb5565b60200101906001600160f81b031916908160001a90535060049490941c93612457816133bd565b90506123e9565b5083156109905760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610a51565b60003033036120705750601f1936013590565b60008082516041036124f65760208301516040840151606085015160001a6124ea87828585612505565b945094505050506124fe565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561253c57506000905060036125e9565b8460ff16601b1415801561255457508460ff16601c14155b1561256557506000905060046125e9565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156125b9573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166125e2576000600192509250506125e9565b9150600090505b94509492505050565b60006020828403121561260457600080fd5b81356001600160e01b03198116811461099057600080fd5b6001600160a01b03811681146109d257600080fd5b60008083601f84011261264357600080fd5b5081356001600160401b0381111561265a57600080fd5b6020830191508360208285010111156124fe57600080fd5b60008060008060006080868803121561268a57600080fd5b85356126958161261c565b945060208601356126a58161261c565b93506040860135925060608601356001600160401b038111156126c757600080fd5b6126d388828901612631565b969995985093965092949392505050565b6000806000604084860312156126f957600080fd5b83356001600160401b038082111561271057600080fd5b908501906080828803121561272457600080fd5b9093506020850135908082111561273a57600080fd5b5061274786828701612631565b9497909650939450505050565b60005b8381101561276f578181015183820152602001612757565b50506000910152565b60008151808452612790816020860160208601612754565b601f01601f19169290920160200192915050565b6020815260006109906020830184612778565b6000602082840312156127c957600080fd5b5035919050565b600080604083850312156127e357600080fd5b8235915060208301356127f58161261c565b809150509250929050565b60006020828403121561281257600080fd5b81356109908161261c565b6000806040838503121561283057600080fd5b823561283b8161261c565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561288757612887612849565b604052919050565b600060208083850312156128a257600080fd5b82356001600160401b03808211156128b957600080fd5b818501915085601f8301126128cd57600080fd5b8135818111156128df576128df612849565b8060051b91506128f084830161285f565b818152918301840191848101908884111561290a57600080fd5b938501935b8385101561230657843592506129248361261c565b828252938501939085019061290f565b60008060006040848603121561294957600080fd5b83356001600160401b0381111561295f57600080fd5b61296b86828701612631565b909790965060209590950135949350505050565b60006001600160401b0383111561299857612998612849565b6129ab601f8401601f191660200161285f565b90508281528383830111156129bf57600080fd5b828260208301376000602084830101529392505050565b600082601f8301126129e757600080fd5b6109908383356020850161297f565b60008083601f840112612a0857600080fd5b5081356001600160401b03811115612a1f57600080fd5b6020830191508360208260051b85010111156124fe57600080fd5b80358015158114611bfe57600080fd5b803561ffff81168114611bfe57600080fd5b6000806000806000806000806000806101208b8d031215612a7c57600080fd5b8a356001600160401b0380821115612a9357600080fd5b612a9f8e838f016129d6565b9b5060208d01359150612ab18261261c565b90995060408c0135985060608c0135975060808c013590612ad18261261c565b90965060a08c01359080821115612ae757600080fd5b50612af48d828e016129f6565b9096509450612b07905060c08c01612a3a565b9250612b1560e08c01612a4a565b9150612b246101008c01612a3a565b90509295989b9194979a5092959850565b60008060008060008060008060a0898b031215612b5157600080fd5b8835612b5c8161261c565b97506020890135612b6c8161261c565b965060408901356001600160401b0380821115612b8857600080fd5b612b948c838d016129f6565b909850965060608b0135915080821115612bad57600080fd5b612bb98c838d016129f6565b909650945060808b0135915080821115612bd257600080fd5b50612bdf8b828c01612631565b999c989b5096995094979396929594505050565b600080600060608486031215612c0857600080fd5b8335612c138161261c565b92506020840135612c238161261c565b91506040840135612c338161261c565b809150509250925092565b60008060008060008060008060008060006101208c8e031215612c6057600080fd5b6001600160401b03808d351115612c7657600080fd5b612c838e8e358f01612631565b909c509a50612c9560208e013561261c565b60208d0135995060408d0135985060608d01359750612cb760808e013561261c565b60808d013596508060a08e01351115612ccf57600080fd5b50612ce08d60a08e01358e016129f6565b9095509350612cf160c08d01612a3a565b9250612cff60e08d01612a4a565b9150612d0e6101008d01612a3a565b90509295989b509295989b9093969950565b60008060008060008060a08789031215612d3957600080fd5b8635612d448161261c565b95506020870135612d548161261c565b9450604087013593506060870135925060808701356001600160401b03811115612d7d57600080fd5b612d8989828a01612631565b979a9699509497509295939492505050565b600080600060608486031215612db057600080fd5b8335612dbb8161261c565b92506020840135612dcb8161261c565b915060408401356001600160401b03811115612de657600080fd5b612df2868287016129d6565b9150509250925092565b608081526000612e0f6080830187612778565b6001600160a01b03958616602084015261ffff949094166040830152509216606090920191909152919050565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090610ef090830184612778565b6000808335601e19843603018112612e8657600080fd5b8301803591506001600160401b03821115612ea057600080fd5b6020019150368190038213156124fe57600080fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201612ef357612ef3612ecb565b5060010190565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b604081526000612f6c604083018587612f2f565b9050826020830152949350505050565b600060408284031215612f8e57600080fd5b604051604081018181106001600160401b0382111715612fb057612fb0612849565b604052825181526020928301519281019290925250919050565b8082018082111561077357610773612ecb565b81835260006020808501808196508560051b810191508460005b878110156130615782840389528135601e1988360301811261301857600080fd5b870185810190356001600160401b0381111561303357600080fd5b80360382131561304257600080fd5b61304d868284612f2f565b9a87019a9550505090840190600101612ff7565b5091979650505050505050565b60006101008083526130828184018d612778565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a085015290506130bc818789612fdd565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b6000602082840312156130f057600080fd5b5051919050565b60006080823603121561310957600080fd5b604051608081016001600160401b03828210818311171561312c5761312c612849565b816040528435915061313d8261261c565b8183526020850135602084015260408501356040840152606085013591508082111561316857600080fd5b50830136601f82011261317a57600080fd5b6131893682356020840161297f565b60608301525092915050565b600082516131a7818460208701612754565b9190910192915050565b6000826131ce57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b6000602082840312156131fb57600080fd5b81516109908161261c565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60006101008083526132668184018d8f612f2f565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a085015290506132a0818789612fdd565b94151560c0840152505061ffff9190911660e09091015298975050505050505050565b600084516132d5818460208901612754565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081526000835161333a816017850160208801612754565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835161336b816028840160208801612754565b01602801949350505050565b634e487b7160e01b600052602160045260246000fd5b8281526040602082015260006110476040830184612778565b808202811582820484141761077357610773612ecb565b6000816133cc576133cc612ecb565b50600019019056fe412386de53449251cbf7ce1f4c6a038bf9c0746e62d331b08ef0c3fa7d0ab6729f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a660793a5062d506d35cc8f1beda67ee5028c16bfcd9c923d5bfc439c04bd929b1a164736f6c6343000811000a","storage":{"0x0":"0xff"}},"0xc58206842e4030a3b2cabc78780ae7635173c533":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106102325760003560e01c80637c69eae211610130578063b5466669116100b8578063d284d97a1161007c578063d284d97a14610d4e578063d8d3cc6e14610dbc578063e67ca8a314610e3f578063e985e9c514610e5c578063ebf0c71714610e8a57610232565b8063b5466669146109ce578063b88d4fde14610a51578063c29b52f914610b15578063c87b56dd14610c5e578063ce9fb82b14610c7b57610232565b8063a22cb465116100ff578063a22cb4651461090b578063a7fc7a0714610939578063ab3b87fe1461095f578063b3f9e4cb1461098b578063b429afeb146109a857610232565b80637c69eae21461076457806395d89b41146107e75780639d743989146107ef5780639e5be9a51461087d57610232565b806342842e0e116101be5780635cbe1112116101825780635cbe11121461061d5780636352211e1461069257806366ac3b68146106af57806368b62d32146106b757806370a082311461073e57610232565b806342842e0e146104ed57806342966c6814610523578063430c208114610540578063538361a71461056c57806357aac5741461058f57610232565b8063081812fc11610205578063081812fc146103fa578063095ea7b3146104335780632392c1891461045f57806323b872dd1461048b5780632525d06a146104c157610232565b806301ffc9a71461023757806302759c37146102725780630467e014146102aa57806306fdde031461037d575b600080fd5b61025e6004803603602081101561024d57600080fd5b50356001600160e01b031916610e92565b604080519115158252519081900360200190f35b6102a86004803603606081101561028857600080fd5b506001600160a01b03813581169160208101359091169060400135610eb1565b005b6102a8600480360360808110156102c057600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156102ef57600080fd5b82018360208201111561030157600080fd5b803590602001918460018302840111600160201b8311171561032257600080fd5b919390929091602081019035600160201b81111561033f57600080fd5b82018360208201111561035157600080fd5b803590602001918460018302840111600160201b8311171561037257600080fd5b509092509050610ed3565b610385610f62565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103bf5781810151838201526020016103a7565b50505050905090810190601f1680156103ec5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6104176004803603602081101561041057600080fd5b5035610f84565b604080516001600160a01b039092168252519081900360200190f35b6102a86004803603604081101561044957600080fd5b506001600160a01b038135169060200135610fe6565b6102a86004803603604081101561047557600080fd5b506001600160a01b0381351690602001356110f7565b6102a8600480360360608110156104a157600080fd5b506001600160a01b03813581169160208101359091169060400135611115565b6102a8600480360360408110156104d757600080fd5b506001600160a01b03813516906020013561115a565b6102a86004803603606081101561050357600080fd5b506001600160a01b0381358116916020810135909116906040013561117a565b6102a86004803603602081101561053957600080fd5b5035611195565b61025e6004803603604081101561055657600080fd5b506001600160a01b0381351690602001356111e6565b6102a86004803603604081101561058257600080fd5b50803590602001356111f9565b6102a8600480360360808110156105a557600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156105df57600080fd5b8201836020820111156105f157600080fd5b803590602001918460018302840111600160201b8311171561061257600080fd5b50909250905061124f565b6102a86004803603604081101561063357600080fd5b81359190810190604081016020820135600160201b81111561065457600080fd5b82018360208201111561066657600080fd5b803590602001918460018302840111600160201b8311171561068757600080fd5b5090925090506112be565b610417600480360360208110156106a857600080fd5b5035611320565b6102a861137a565b61072c600480360360408110156106cd57600080fd5b81359190810190604081016020820135600160201b8111156106ee57600080fd5b82018360208201111561070057600080fd5b803590602001918460018302840111600160201b8311171561072157600080fd5b509092509050611385565b60408051918252519081900360200190f35b61072c6004803603602081101561075457600080fd5b50356001600160a01b03166113cf565b6102a86004803603606081101561077a57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156107a957600080fd5b8201836020820111156107bb57600080fd5b803590602001918460018302840111600160201b831117156107dc57600080fd5b509092509050611437565b61038561149a565b6102a86004803603608081101561080557600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561083f57600080fd5b82018360208201111561085157600080fd5b803590602001918460018302840111600160201b8311171561087257600080fd5b5090925090506114b6565b6102a86004803603608081101561089357600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156108cd57600080fd5b8201836020820111156108df57600080fd5b803590602001918460018302840111600160201b8311171561090057600080fd5b509092509050611506565b6102a86004803603604081101561092157600080fd5b506001600160a01b0381351690602001351515611564565b6102a86004803603602081101561094f57600080fd5b50356001600160a01b0316611630565b6102a86004803603604081101561097557600080fd5b506001600160a01b03813516906020013561164b565b610417600480360360208110156109a157600080fd5b5035611672565b61025e600480360360208110156109be57600080fd5b50356001600160a01b0316611694565b6102a8600480360360608110156109e457600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610a1357600080fd5b820183602082011115610a2557600080fd5b803590602001918460018302840111600160201b83111715610a4657600080fd5b5090925090506116a7565b6102a860048036036080811015610a6757600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b811115610aa157600080fd5b820183602082011115610ab357600080fd5b803590602001918460018302840111600160201b83111715610ad457600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506116fa945050505050565b6102a8600480360360a0811015610b2b57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b811115610b6557600080fd5b820183602082011115610b7757600080fd5b803590602001918460018302840111600160201b83111715610b9857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b811115610bea57600080fd5b820183602082011115610bfc57600080fd5b803590602001918460018302840111600160201b83111715610c1d57600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061174c945050505050565b61038560048036036020811015610c7457600080fd5b5035611797565b6102a860048036036080811015610c9157600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610cc057600080fd5b820183602082011115610cd257600080fd5b803590602001918460018302840111600160201b83111715610cf357600080fd5b919390929091602081019035600160201b811115610d1057600080fd5b820183602082011115610d2257600080fd5b803590602001918460018302840111600160201b83111715610d4357600080fd5b509092509050611892565b6102a860048036036020811015610d6457600080fd5b810190602081018135600160201b811115610d7e57600080fd5b820183602082011115610d9057600080fd5b803590602001918460018302840111600160201b83111715610db157600080fd5b50909250905061191b565b6102a860048036036060811015610dd257600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610e0157600080fd5b820183602082011115610e1357600080fd5b803590602001918460018302840111600160201b83111715610e3457600080fd5b50909250905061199e565b6102a860048036036020811015610e5557600080fd5b50356119f3565b61025e60048036036040811015610e7257600080fd5b506001600160a01b0381358116916020013516611a05565b61072c611a33565b6001600160e01b03191660009081526020819052604090205460ff1690565b610eba33611694565b610ec357600080fd5b610ece838383611a57565b505050565b610edc33611694565b610ee557600080fd5b610f5a868686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8a018190048102820181019092528881529250889150879081908401838280828437600092019190915250611a9f92505050565b505050505050565b6040805180820190915260078152662e63727970746f60c81b60208201525b90565b6000610f8f82611ac9565b610fca5760405162461bcd60e51b815260040180806020018281038252602c815260200180612848602c913960400191505060405180910390fd5b506000908152600360205260409020546001600160a01b031690565b6000610ff182611320565b9050806001600160a01b0316836001600160a01b031614156110445760405162461bcd60e51b81526004018080602001828103825260218152602001806128bf6021913960400191505060405180910390fd5b336001600160a01b038216148061106057506110608133611a05565b61109b5760405162461bcd60e51b815260040180806020018281038252603881526020018061279c6038913960400191505060405180910390fd5b60008281526003602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b806111023382611ae6565b61110b57600080fd5b610ece8383611b82565b61111f3382611ae6565b610ec35760405162461bcd60e51b81526004018080602001828103825260318152602001806128e06031913960400191505060405180910390fd5b61116333611694565b61116c57600080fd5b6111768282611b82565b5050565b610ece838383604051806020016040528060008152506116fa565b61119f3382611ae6565b6111da5760405162461bcd60e51b81526004018080602001828103825260308152602001806129366030913960400191505060405180910390fd5b6111e381611bf8565b50565b60006111f28383611ae6565b9392505050565b6000828152600860205260409020546001600160a01b0316331461121c57600080fd5b6040518290829033907ff10fc780c78f994a214c79a2ae8d8b7bfe7cc3f0f935a8f05a29525e71d7f12790600090a45050565b61125833611694565b61126157600080fd5b61126c858585611a57565b6112ae85858585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611c7992505050565b6112b757600080fd5b5050505050565b826112c93382611ae6565b6112d257600080fd5b61131a6113158585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b611bf8565b50505050565b6000818152600260205260408120546001600160a01b0316806113745760405162461bcd60e51b81526004018080602001828103825260298152602001806127fe6029913960400191505060405180910390fd5b92915050565b61138333611e64565b565b60006113c78484848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b949350505050565b60006001600160a01b0382166114165760405162461bcd60e51b815260040180806020018281038252602a8152602001806127d4602a913960400191505060405180910390fd5b6001600160a01b038216600090815260046020526040902061137490611e75565b826114423382611ae6565b61144b57600080fd5b6112b7858585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250611a9f915050565b604080518082019091526002815261155160f21b602082015290565b6112b785858585858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201829052506040805160208101909152908152925061174c915050565b826115113382611ae6565b61151a57600080fd5b610f5a868661155f8787878080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b611a57565b6001600160a01b0382163314156115c2576040805162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604482015290519081900360640190fd5b3360008181526005602090815260408083206001600160a01b03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b61163933611694565b61164257600080fd5b6111e381611e79565b806116563382611ae6565b61165f57600080fd5b610ece61166b83611320565b8484611e8a565b6000818152600860205260408120546001600160a01b03168061137457600080fd5b600061137460018363ffffffff611fce16565b6116b033611694565b6116b957600080fd5b61131a848484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061203592505050565b611705848484611115565b61171184848484611c79565b61131a5760405162461bcd60e51b815260040180806020018281038252603281526020018061271a6032913960400191505060405180910390fd5b826117573382611ae6565b61176057600080fd5b600061176c8585611dac565b9050611779878783611a57565b61178587878386611c79565b61178e57600080fd5b50505050505050565b60606117a282611ac9565b6117ab57600080fd5b600760066000848152602001908152602001600020604051602001808380546001816001161561010002031660029004801561181e5780601f106117fc57610100808354040283529182019161181e565b820191906000526020600020905b81548152906001019060200180831161180a575b5050828054600181600116156101000203166002900480156118775780601f10611855576101008083540402835291820191611877565b820191906000526020600020905b815481529060010190602001808311611863575b505060408051601f1981840301815291905295945050505050565b8461189d3382611ae6565b6118a657600080fd5b61178e878787878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b018190048102820181019092528981529250899150889081908401838280828437600092019190915250611a9f92505050565b61192433611694565b61192d57600080fd5b611939600783836125cf565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b828260405180806020018281038252848482818152602001925080828437600083820152604051601f909101601f19169092018290039550909350505050a15050565b826119a93382611ae6565b6119b257600080fd5b6112b7858585858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061203592505050565b6119fc33611694565b6111da57600080fd5b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b7f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f90565b611a62838383611e8a565b6000818152600860205260409020546001600160a01b031615610ece57600090815260086020526040902080546001600160a01b03191690555050565b611aaa848484612035565b611ac0600085611aba8686611dac565b84611c79565b61131a57600080fd5b6000908152600260205260409020546001600160a01b0316151590565b6000611af182611ac9565b611b2c5760405162461bcd60e51b815260040180806020018281038252602c815260200180612770602c913960400191505060405180910390fd5b6000611b3783611320565b9050806001600160a01b0316846001600160a01b03161480611b725750836001600160a01b0316611b6784610f84565b6001600160a01b0316145b806113c757506113c78185611a05565b611b8b81611ac9565b611b9457600080fd5b6040516001600160a01b0383169082907fb1b34e6d89e1c584527d447f4b29ffad55635a37edeeb564939a6483401b31a590600090a3600090815260086020526040902080546001600160a01b0319166001600160a01b0392909216919091179055565b611c018161220f565b6000818152600860205260409020546001600160a01b031615611c3b57600081815260086020526040902080546001600160a01b03191690555b60008181526006602052604090205460026000196101006001841615020190911604156111e35760008181526006602052604081206111e39161264d565b6000611c8d846001600160a01b0316612221565b611c99575060016113c7565b604051630a85bd0160e11b815233600482018181526001600160a01b03888116602485015260448401879052608060648501908152865160848601528651600095928a169463150b7a029490938c938b938b939260a4019060208501908083838e5b83811015611d13578181015183820152602001611cfb565b50505050905090810190601f168015611d405780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015611d6257600080fd5b505af1158015611d76573d6000803e3d6000fd5b505050506040513d6020811015611d8c57600080fd5b50516001600160e01b031916630a85bd0160e11b14915050949350505050565b6000815160001415611dbd57600080fd5b82826040516020018082805190602001908083835b60208310611df15780518252601f199092019160209182019101611dd2565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040528051906020012060405160200180838152602001828152602001925050506040516020818303038152906040528051906020012060001c905092915050565b6111e360018263ffffffff61222716565b5490565b6111e360018263ffffffff61228e16565b826001600160a01b0316611e9d82611320565b6001600160a01b031614611ee25760405162461bcd60e51b81526004018080602001828103825260298152602001806128966029913960400191505060405180910390fd5b6001600160a01b038216611f275760405162461bcd60e51b815260040180806020018281038252602481526020018061274c6024913960400191505060405180910390fd5b611f308161230f565b6001600160a01b0383166000908152600460205260409020611f519061234a565b6001600160a01b0382166000908152600460205260409020611f7290612361565b60008181526002602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60006001600160a01b0382166120155760405162461bcd60e51b81526004018080602001828103825260228152602001806128746022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b60006120418383611dac565b905061204d848261236a565b815161205857600080fd5b61206181611ac9565b61206a57600080fd5b606082600660008681526020019081526020016000206040516020018083805190602001908083835b602083106120b25780518252601f199092019160209182019101612093565b6001836020036101000a03801982511681845116808217855250505050505090500180601760f91b815250600101828054600181600116156101000203166002900480156121375780601f10612115576101008083540402835291820191612137565b820191906000526020600020905b815481529060010190602001808311612123575b505060408051601f19818403018152918152600087815260066020908152919020825192965061216d9550935085019150612691565b50817fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952826040518080602001828103825283818151815260200191508051906020019080838360005b838110156121ce5781810151838201526020016121b6565b50505050905090810190601f1680156121fb5780820380516001836020036101000a031916815260200191505b509250505060405180910390a25050505050565b6111e361221b82611320565b8261249b565b3b151590565b6122318282611fce565b61226c5760405162461bcd60e51b81526004018080602001828103825260218152602001806128276021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff19169055565b6122988282611fce565b156122ea576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b6000818152600360205260409020546001600160a01b0316156111e357600090815260036020526040902080546001600160a01b0319169055565b805461235d90600163ffffffff61257216565b9055565b80546001019055565b6001600160a01b0382166123c5576040805162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f2061646472657373604482015290519081900360640190fd5b6123ce81611ac9565b15612420576040805162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000604482015290519081900360640190fd5b600081815260026020908152604080832080546001600160a01b0319166001600160a01b03871690811790915583526004909152902061245f90612361565b60405181906001600160a01b038416906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b816001600160a01b03166124ae82611320565b6001600160a01b0316146124f35760405162461bcd60e51b81526004018080602001828103825260258152602001806129116025913960400191505060405180910390fd5b6124fc8161230f565b6001600160a01b038216600090815260046020526040902061251d9061234a565b60008181526002602052604080822080546001600160a01b0319169055518291906001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6000828211156125c9576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106126105782800160ff1982351617855561263d565b8280016001018555821561263d579182015b8281111561263d578235825591602001919060010190612622565b506126499291506126ff565b5090565b50805460018160011615610100020316600290046000825580601f1061267357506111e3565b601f0160209004906000526020600020908101906111e391906126ff565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106126d257805160ff191683800117855561263d565b8280016001018555821561263d579182015b8281111561263d5782518255916020019190600101906126e4565b610f8191905b80821115612649576000815560010161270556fe4552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c654552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e526f6c65733a206163636f756e7420697320746865207a65726f20616464726573734552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f7665644552433732313a206275726e206f6620746f6b656e2074686174206973206e6f74206f776e4552433732314275726e61626c653a2063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564a265627a7a72315820fb6a1b26cc352dbb05e6627fd530bbb44114ac3a349f30d1f071136c656d20dc64736f6c634300050c0032","storage":{"0x7":"0x68747470733a2f2f6578616d706c652e636f6d2f000000000000000000000028","0xbdf39e9e65b2355b1b0b06df799c09159f0ab90f06a9bb2153f5de7d9b0ea81":"0x1","0x1a306d3e9bf29128dee78d8d16c9f378a11bbdf917a9caf986fc6e60846e37e7":"0x63727970746f000000000000000000000000000000000000000000000000000c","0x42c63635470f1fb1d6d4b6441c413cb435b1ebb6fedd1896dd5e25d1399147dd":"0x1","0x605d7a0bb2b20c4004d356eb969ff104dcca62360aa356247072f5e0df6472e3":"0xdead","0x67be87c3ff9960ca1e9cfac5cab2ff4747269cf9ed20c9b7306235ac35a491c5":"0x1","0x70f464f95f9ab7aba03264fd4cac1711d774d3703ce74217180264d4efc2105f":"0x1","0x76a72f26a108e6f3f687141f5f42d21d65857c03cb1b01aa1284f9a9ccd085da":"0x1","0x9562381dfbc2d8b8b66e765249f330164b73e329e5f01670660643571d1974df":"0x1","0x9f23d2403fb64167582d316b1bc5b35a6ed48524341ab24947c71df77304b29e":"0x1","0xf7815fccbf112960a73756e185887fedcb9fc64ca0a16cc5923b7960ed780800":"0x1"}},"0xc965345edac823d56812cd20a10316233916a605":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101c6575f3560e01c806395d89b41116100fe578063c87b56dd1161009e578063e985e9c51161006e578063e985e9c5146103d4578063f2fde38b1461040f578063f6a74ed714610422578063fca247ac14610435575f80fd5b8063c87b56dd14610377578063d6e4fa861461038a578063da8c229e146103a9578063ddf7fcb0146103cb575f80fd5b8063a7fc7a07116100d9578063a7fc7a0714610334578063b88d4fde14610347578063c1a287e21461035a578063c475abff14610364575f80fd5b806395d89b411461030657806396e494e81461030e578063a22cb46514610321575f80fd5b80633f15457f116101695780636352211e116101445780636352211e146102c757806370a08231146102da578063715018a6146102ed5780638da5cb5b146102f5575f80fd5b80633f15457f1461028e57806342842e0e146102a15780634e543b26146102b4575f80fd5b8063095ea7b3116101a4578063095ea7b3146102325780630e297b451461024757806323b872dd1461026857806328ed4f6c1461027b575f80fd5b806301ffc9a7146101ca57806306fdde03146101f2578063081812fc14610207575b5f80fd5b6101dd6101d83660046117dd565b610448565b60405190151581526020015b60405180910390f35b6101fa610499565b6040516101e99190611845565b61021a610215366004611857565b610528565b6040516001600160a01b0390911681526020016101e9565b610245610240366004611882565b61054d565b005b61025a6102553660046118ac565b610666565b6040519081526020016101e9565b6102456102763660046118e1565b61067b565b61024561028936600461190e565b6106ac565b60085461021a906001600160a01b031681565b6102456102af3660046118e1565b6107be565b6102456102c236600461193c565b6107d8565b61021a6102d5366004611857565b610848565b61025a6102e836600461193c565b610869565b6102456108ed565b6006546001600160a01b031661021a565b6101fa610900565b6101dd61031c366004611857565b61090f565b61024561032f366004611957565b610934565b61024561034236600461193c565b610943565b61024561035536600461199b565b610996565b61025a6276a70081565b61025a610372366004611a74565b6109ce565b6101fa610385366004611857565b610b52565b61025a610398366004611857565b5f9081526007602052604090205490565b6101dd6103b736600461193c565b600a6020525f908152604090205460ff1681565b61025a60095481565b6101dd6103e2366004611a94565b6001600160a01b039182165f90815260056020908152604080832093909416825291909152205460ff1690565b61024561041d36600461193c565b610bc2565b61024561043036600461193c565b610c3b565b61025a6104433660046118ac565b610c8b565b5f6001600160e01b031982166301ffc9a760e01b148061047857506001600160e01b031982166380ac58cd60e01b145b8061049357506001600160e01b03198216630a3b53db60e21b145b92915050565b60605f80546104a790611ac0565b80601f01602080910402602001604051908101604052809291908181526020018280546104d390611ac0565b801561051e5780601f106104f55761010080835404028352916020019161051e565b820191905f5260205f20905b81548152906001019060200180831161050157829003601f168201915b5050505050905090565b5f61053282610c99565b505f908152600460205260409020546001600160a01b031690565b5f61055782610cf7565b9050806001600160a01b0316836001600160a01b0316036105c95760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084015b60405180910390fd5b336001600160a01b03821614806105e557506105e581336103e2565b6106575760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016105c0565b6106618383610d56565b505050565b5f6106738484845f610dc3565b949350505050565b6106853382610fc7565b6106a15760405162461bcd60e51b81526004016105c090611af8565b610661838383611040565b6008546009546040516302571be360e01b8152600481019190915230916001600160a01b0316906302571be390602401602060405180830381865afa1580156106f7573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061071b9190611b45565b6001600160a01b03161461072d575f80fd5b6107373383610fc7565b61073f575f80fd5b6008546009546040516306ab592360e01b81526004810191909152602481018490526001600160a01b038381166044830152909116906306ab5923906064016020604051808303815f875af115801561079a573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106619190611b60565b61066183838360405180602001604052805f815250610996565b6107e06111a2565b600854600954604051630c4b7b8560e11b815260048101919091526001600160a01b03838116602483015290911690631896f70a906044015f604051808303815f87803b15801561082f575f80fd5b505af1158015610841573d5f803e3d5ffd5b5050505050565b5f818152600760205260408120544210610860575f80fd5b61049382610cf7565b5f6001600160a01b0382166108d25760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b60648201526084016105c0565b506001600160a01b03165f9081526003602052604090205490565b6108f56111a2565b6108fe5f6111fc565b565b6060600180546104a790611ac0565b5f81815260076020526040812054429061092d906276a70090611b77565b1092915050565b61093f33838361124d565b5050565b61094b6111a2565b6001600160a01b0381165f818152600a6020526040808220805460ff19166001179055517f0a8bb31534c0ed46f380cb867bd5c803a189ced9a764e30b3a4991a9901d74749190a250565b6109a03383610fc7565b6109bc5760405162461bcd60e51b81526004016105c090611af8565b6109c88484848461131a565b50505050565b6008546009546040516302571be360e01b815260048101919091525f9130916001600160a01b03909116906302571be390602401602060405180830381865afa158015610a1d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a419190611b45565b6001600160a01b031614610a53575f80fd5b335f908152600a602052604090205460ff16610a6d575f80fd5b5f838152600760205260409020544290610a8b906276a70090611b77565b1015610a95575f80fd5b610aa26276a70083611b77565b5f848152600760205260409020546276a70090610ac0908590611b77565b610aca9190611b77565b11610ad3575f80fd5b5f8381526007602052604081208054849290610af0908490611b77565b90915550505f838152600760205260409081902054905184917f9b87a00e30f1ac65d898f070f8a3488fe60517182d0a2098e1b4b93a54aa9bd691610b3791815260200190565b60405180910390a250505f9081526007602052604090205490565b6060610b5d82610c99565b5f610b7260408051602081019091525f815290565b90505f815111610b905760405180602001604052805f815250610bbb565b80610b9a8461134d565b604051602001610bab929190611b96565b6040516020818303038152906040525b9392505050565b610bca6111a2565b6001600160a01b038116610c2f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016105c0565b610c38816111fc565b50565b610c436111a2565b6001600160a01b0381165f818152600a6020526040808220805460ff19169055517f33d83959be2573f5453b12eb9d43b3499bc57d96bd2f067ba44803c859e811139190a250565b5f6106738484846001610dc3565b5f818152600260205260409020546001600160a01b0316610c385760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105c0565b5f818152600260205260408120546001600160a01b0316806104935760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105c0565b5f81815260046020526040902080546001600160a01b0319166001600160a01b0384169081179091558190610d8a82610cf7565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6008546009546040516302571be360e01b815260048101919091525f9130916001600160a01b03909116906302571be390602401602060405180830381865afa158015610e12573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e369190611b45565b6001600160a01b031614610e48575f80fd5b335f908152600a602052604090205460ff16610e62575f80fd5b610e6b8561090f565b610e73575f80fd5b610e806276a70042611b77565b6276a700610e8e8542611b77565b610e989190611b77565b11610ea1575f80fd5b610eab8342611b77565b5f868152600760209081526040808320939093556002905220546001600160a01b031615610edc57610edc856113dd565b610ee6848661146f565b8115610f6d576008546009546040516306ab592360e01b81526004810191909152602481018790526001600160a01b038681166044830152909116906306ab5923906064016020604051808303815f875af1158015610f47573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f6b9190611b60565b505b6001600160a01b038416857fb3d987963d01b2f68493b4bdb130988f157ea43070d4ad840fee0466ed9370d9610fa38642611b77565b60405190815260200160405180910390a3610fbe8342611b77565b95945050505050565b5f80610fd283610848565b9050806001600160a01b0316846001600160a01b0316148061100d5750836001600160a01b031661100284610528565b6001600160a01b0316145b8061067357506001600160a01b038082165f9081526005602090815260408083209388168352929052205460ff16610673565b826001600160a01b031661105382610cf7565b6001600160a01b0316146110795760405162461bcd60e51b81526004016105c090611bc4565b6001600160a01b0382166110db5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b60648201526084016105c0565b826001600160a01b03166110ee82610cf7565b6001600160a01b0316146111145760405162461bcd60e51b81526004016105c090611bc4565b5f81815260046020908152604080832080546001600160a01b03199081169091556001600160a01b038781168086526003855283862080545f1901905590871680865283862080546001019055868652600290945282852080549092168417909155905184937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6006546001600160a01b031633146108fe5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016105c0565b600680546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b816001600160a01b0316836001600160a01b0316036112ae5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c65720000000000000060448201526064016105c0565b6001600160a01b038381165f81815260056020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b611325848484611040565b611331848484846115f7565b6109c85760405162461bcd60e51b81526004016105c090611c09565b60605f611359836116f1565b60010190505f8167ffffffffffffffff81111561137857611378611987565b6040519080825280601f01601f1916602001820160405280156113a2576020820181803683370190505b5090508181016020015b5f19016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a85049450846113ac57509392505050565b5f6113e782610cf7565b90506113f282610cf7565b5f83815260046020908152604080832080546001600160a01b03199081169091556001600160a01b0385168085526003845282852080545f190190558785526002909352818420805490911690555192935084927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6001600160a01b0382166114c55760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f206164647265737360448201526064016105c0565b5f818152600260205260409020546001600160a01b0316156115295760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105c0565b5f818152600260205260409020546001600160a01b03161561158d5760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105c0565b6001600160a01b0382165f81815260036020908152604080832080546001019055848352600290915280822080546001600160a01b0319168417905551839291907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b5f6001600160a01b0384163b156116e957604051630a85bd0160e11b81526001600160a01b0385169063150b7a029061163a903390899088908890600401611c5b565b6020604051808303815f875af1925050508015611674575060408051601f3d908101601f1916820190925261167191810190611c97565b60015b6116cf573d8080156116a1576040519150601f19603f3d011682016040523d82523d5f602084013e6116a6565b606091505b5080515f036116c75760405162461bcd60e51b81526004016105c090611c09565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610673565b506001610673565b5f8072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b831061172f5772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef8100000000831061175b576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc10000831061177957662386f26fc10000830492506010015b6305f5e1008310611791576305f5e100830492506008015b61271083106117a557612710830492506004015b606483106117b7576064830492506002015b600a83106104935760010192915050565b6001600160e01b031981168114610c38575f80fd5b5f602082840312156117ed575f80fd5b8135610bbb816117c8565b5f5b838110156118125781810151838201526020016117fa565b50505f910152565b5f81518084526118318160208601602086016117f8565b601f01601f19169290920160200192915050565b602081525f610bbb602083018461181a565b5f60208284031215611867575f80fd5b5035919050565b6001600160a01b0381168114610c38575f80fd5b5f8060408385031215611893575f80fd5b823561189e8161186e565b946020939093013593505050565b5f805f606084860312156118be575f80fd5b8335925060208401356118d08161186e565b929592945050506040919091013590565b5f805f606084860312156118f3575f80fd5b83356118fe8161186e565b925060208401356118d08161186e565b5f806040838503121561191f575f80fd5b8235915060208301356119318161186e565b809150509250929050565b5f6020828403121561194c575f80fd5b8135610bbb8161186e565b5f8060408385031215611968575f80fd5b82356119738161186e565b915060208301358015158114611931575f80fd5b634e487b7160e01b5f52604160045260245ffd5b5f805f80608085870312156119ae575f80fd5b84356119b98161186e565b935060208501356119c98161186e565b925060408501359150606085013567ffffffffffffffff808211156119ec575f80fd5b818701915087601f8301126119ff575f80fd5b813581811115611a1157611a11611987565b604051601f8201601f19908116603f01168101908382118183101715611a3957611a39611987565b816040528281528a6020848701011115611a51575f80fd5b826020860160208301375f60208483010152809550505050505092959194509250565b5f8060408385031215611a85575f80fd5b50508035926020909101359150565b5f8060408385031215611aa5575f80fd5b8235611ab08161186e565b915060208301356119318161186e565b600181811c90821680611ad457607f821691505b602082108103611af257634e487b7160e01b5f52602260045260245ffd5b50919050565b6020808252602d908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526c1c881bdc88185c1c1c9bdd9959609a1b606082015260800190565b5f60208284031215611b55575f80fd5b8151610bbb8161186e565b5f60208284031215611b70575f80fd5b5051919050565b8082018082111561049357634e487b7160e01b5f52601160045260245ffd5b5f8351611ba78184602088016117f8565b835190830190611bbb8183602088016117f8565b01949350505050565b60208082526025908201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060408201526437bbb732b960d91b606082015260800190565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6001600160a01b03858116825284166020820152604081018390526080606082018190525f90611c8d9083018461181a565b9695505050505050565b5f60208284031215611ca7575f80fd5b8151610bbb816117c856fea164736f6c6343000818000a","storage":{"0x0":"0x0","0x1":"0x0","0x6":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x8":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0x9":"0x93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae","0x9b8bc185dce56a7ea1b27d35e40ac15dcdf9144303dfd4d8880220078bf21a2c":"0x1","0xdb5e6a17df8534b92b0c8de590f14b4fb4b5eb2c62ef1bf7a05555e354797508":"0x1","0xe1a982900207b619cb6c39be8cb5e60da1370171412fb65b5efc25e2dce3c34c":"0x1"}},"0xce4bb7dc1eb9dce75743de6a4b48534fd427ef51":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xe85541865bbb62a05064ce5c9f41cc293a8ea996","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0xd178b720229c39de617846f84cf9c8d32a63a23d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610106575f3560e01c806371017a541161009e5780639e32d3641161006e5780639e32d3641461025a578063a424740014610281578063dd6b9e2214610294578063e1c4b65a146102a7578063e35a14e5146102ba575f80fd5b806371017a541461020e5780637b103999146102215780638f0dbd25146102345780639810b69514610247575f80fd5b8063485cc955116100d9578063485cc95514610191578063572b6c05146101a457806358884432146101d05780636ccbae5f146101fb575f80fd5b8063150b7a021461010a5780631694116d1461013b5780631bf7e13e146101505780631c351a9d14610170575b5f80fd5b61011d610118366004611434565b6102e2565b6040516001600160e01b031990911681526020015b60405180910390f35b61014e6101493660046114e3565b610372565b005b61016361015e366004611549565b61040d565b6040516101329190611601565b61018361017e366004611613565b6104d6565b604051908152602001610132565b61014e61019f366004611666565b6105c3565b6101c06101b236600461169d565b6001600160a01b0316301490565b6040519015158152602001610132565b6067546101e3906001600160a01b031681565b6040516001600160a01b039091168152602001610132565b6101836102093660046116b8565b6106f8565b6101e361021c3660046116cf565b610751565b6066546101e3906001600160a01b031681565b61014e6102423660046116ef565b610791565b6101e36102553660046116cf565b610806565b6101837fd81bbfcee722494b885e891546eeac23d0eedcd44038d7a2f6ef9ec2f9e0d23981565b6101c061028f366004611549565b61085f565b6101c06102a236600461172d565b6108a8565b61014e6102b5366004611771565b61091d565b6101e36102c83660046116b8565b5f908152606560205260409020546001600160a01b031690565b6066545f906001600160a01b03166102f8610a43565b6001600160a01b031614158061032257505f848152606560205260409020546001600160a01b0316155b156103605783610330610a43565b60405163634afa0d60e01b815260048101929092526001600160a01b031660248201526044015b60405180910390fd5b50630a85bd0160e11b95945050505050565b828261037e8282610751565b6001600160a01b031661038f610a43565b6001600160a01b0316146103c057604051632cd9b44d60e11b81526004810183905260248101829052604401610357565b5f6103cb8686610806565b90505f5b87811015610402576103fa8989838181106103ec576103ec6117b0565b905060200201358387610a51565b6001016103cf565b505050505050505050565b60605f5a905061041e85858561085f565b61043b57604051638baa579f60e01b815260040160405180910390fd5b6104cb61044b602087018761169d565b3060408801358461045f60608b018b6117c4565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f92019190915250610b8492505050565b9150505b9392505050565b6067545f906001600160a01b031663aa271e1a6104f1610a43565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015610533573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105579190611807565b1580610572575030610567610a43565b6001600160a01b0316145b156105a45761057f610a43565b60405163e2c8c9d560e01b81526001600160a01b039091166004820152602401610357565b5f6105b0858585610c60565b90506105bb81610e73565b949350505050565b5f54610100900460ff16158080156105e157505f54600160ff909116105b806105fa5750303b1580156105fa57505f5460ff166001145b61065d5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610357565b5f805460ff19166001179055801561067e575f805461ff0019166101001790555b606680546001600160a01b038086166001600160a01b031992831617909255606780549285169290911691909117905580156106f3575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f9061074a906060016040516020818303038152906040528051906020012090565b5492915050565b5f80838360405160200161076f929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209150505b92915050565b828261079d8282610751565b6001600160a01b03166107ae610a43565b6001600160a01b0316146107df57604051632cd9b44d60e11b81526004810183905260248101829052604401610357565b856107e981610e73565b6107fd876107f78889610806565b86610a51565b50505050505050565b5f8060026108148585610e8f565b6040516108219190611826565b602060405180830381855afa15801561083c573d5f803e3d5ffd5b5050506040513d601f19601f820116820180604052508101906105bb9190611841565b5f6105bb61086c856118c6565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250610f1492505050565b5f805b8281101561091257846001600160a01b03166108f38585848181106108d2576108d26117b0565b905060200201355f908152606560205260409020546001600160a01b031690565b6001600160a01b03161461090a575f9150506104cf565b6001016108ab565b506001949350505050565b6067546001600160a01b031663aa271e1a610936610a43565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015610978573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061099c9190611807565b15806109b75750306109ac610a43565b6001600160a01b0316145b156109c45761057f610a43565b5f5b818110156106f357610a3a8383838181106109e3576109e36117b0565b90506020028101906109f59190611983565b610a039060208101906117c4565b858585818110610a1557610a156117b0565b9050602002810190610a279190611983565b610a3590602081019061169d565b610c60565b506001016109c6565b5f610a4c611059565b905090565b5f838152606560205260409020546001600160a01b03838116911614610ab4575f83815260656020526040908190205490516326995d8360e11b8152600481018590526001600160a01b0391821660248201529083166044820152606401610357565b5f838152606560205260409081902080546001600160a01b03191690556066549051632142170760e11b81523060048201526001600160a01b03838116602483015260448201869052909116906342842e0e906064015f604051808303815f87803b158015610b21575f80fd5b505af1158015610b33573d5f803e3d5ffd5b50505050806001600160a01b0316610b49610a43565b6001600160a01b0316847f9a471856befea1cabcd7fc8a1c4d70ea07b8ed2ee205cc361f932433542ef3fe60405160405180910390a4505050565b6060610b8f85611076565b5f80876001600160a01b031686610ba88b8a89896110db565b604051610bb59190611826565b5f604051808303815f8787f1925050503d805f8114610bef576040519150601f19603f3d011682016040523d82523d5f602084013e610bf4565b606091505b509092509050610c05603f876119bf565b5a11610c1357610c136119d2565b610c5382826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061110b565b9998505050505050505050565b5f60605f7fd81bbfcee722494b885e891546eeac23d0eedcd44038d7a2f6ef9ec2f9e0d2398686604051602001610c989291906119e6565b60405160208183030381529060405280519060200120604051602001610cc8929190918252602082015260400190565b60408051808303601f19018152828252805160209091012060028084526060840190925292505f9190816020015b6060815260200190600190039081610cf657905050905086868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920182905250855186945090925015159050610d5657610d566117b0565b6020026020010181905250604051806040016040528060038152602001621e9a5b60ea1b81525081600181518110610d9057610d906117b0565b6020908102919091018101919091525f8381526065909152604080822080546001600160a01b0319166001600160a01b03898116919091179091556067549151635cd7e3b360e01b8152911691635cd7e3b391610df891309186918991829190600401611a4d565b5f604051808303815f87803b158015610e0f575f80fd5b505af1158015610e21573d5f803e3d5ffd5b50505050846001600160a01b0316827f08717469d38a4b02325ea6637978c7952f94d3d8fc7848994f618ddbf4d637f18989604051610e61929190611aab565b60405180910390a35095945050505050565b303303610e8657610e8381611144565b50565b610e8381611076565b60605f82610e9f60016020611ad9565b60ff1660208110610eb257610eb26117b0565b1a9050610ec0600282611af2565b60ff1615610ecf576003610ed2565b60025b84604051602001610efc92919060f89290921b6001600160f81b0319168252600182015260210190565b60405160208183030381529060405291505092915050565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015610f58573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f7c9190611841565b90505f611029866060015180519060200120868860200151604051602001610fc99392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561104f5750855161104f906001600160a01b0316828661116e565b9695505050505050565b5f30330361106e575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f906060016040516020818303038152906040528051906020012090506110ca8190565b546110d6906001611b13565b905550565b60608285856040516020016110f293929190611b26565b6040516020818303038152906040529050949350505050565b6060831561111a5750816104cf565b82511561112a5782518084602001fd5b8160405162461bcd60e51b81526004016103579190611601565b61114c6112a9565b8114610e8357604051635637b6af60e11b815260048101829052602401610357565b5f805f61117b85856112bb565b90925090505f81600481111561119357611193611b64565b1480156111b15750856001600160a01b0316826001600160a01b0316145b156111c1576001925050506104cf565b5f80876001600160a01b0316631626ba7e60e01b88886040516024016111e8929190611b78565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516112269190611826565b5f60405180830381855afa9150503d805f811461125e576040519150601f19603f3d011682016040523d82523d5f602084013e611263565b606091505b5091509150818015611276575080516020145b801561129d57508051630b135d3f60e11b9061129b9083016020908101908401611841565b145b98975050505050505050565b5f3033036110735750601f1936013590565b5f8082516041036112ef576020830151604084015160608501515f1a6112e3878285856112fd565b945094505050506112f6565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561133257505f905060036113d9565b8460ff16601b1415801561134a57508460ff16601c14155b1561135a57505f905060046113d9565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156113ab573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b0381166113d3575f600192509250506113d9565b91505f90505b94509492505050565b6001600160a01b0381168114610e83575f80fd5b5f8083601f840112611406575f80fd5b50813567ffffffffffffffff81111561141d575f80fd5b6020830191508360208285010111156112f6575f80fd5b5f805f805f60808688031215611448575f80fd5b8535611453816113e2565b94506020860135611463816113e2565b935060408601359250606086013567ffffffffffffffff811115611485575f80fd5b611491888289016113f6565b969995985093965092949392505050565b5f8083601f8401126114b2575f80fd5b50813567ffffffffffffffff8111156114c9575f80fd5b6020830191508360208260051b85010111156112f6575f80fd5b5f805f805f608086880312156114f7575f80fd5b853567ffffffffffffffff81111561150d575f80fd5b611519888289016114a2565b9096509450506020860135925060408601359150606086013561153b816113e2565b809150509295509295909350565b5f805f6040848603121561155b575f80fd5b833567ffffffffffffffff80821115611572575f80fd5b9085019060808288031215611585575f80fd5b9093506020850135908082111561159a575f80fd5b506115a7868287016113f6565b9497909650939450505050565b5f5b838110156115ce5781810151838201526020016115b6565b50505f910152565b5f81518084526115ed8160208601602086016115b4565b601f01601f19169290920160200192915050565b602081525f6104cf60208301846115d6565b5f805f60408486031215611625575f80fd5b833567ffffffffffffffff81111561163b575f80fd5b611647868287016113f6565b909450925050602084013561165b816113e2565b809150509250925092565b5f8060408385031215611677575f80fd5b8235611682816113e2565b91506020830135611692816113e2565b809150509250929050565b5f602082840312156116ad575f80fd5b81356104cf816113e2565b5f602082840312156116c8575f80fd5b5035919050565b5f80604083850312156116e0575f80fd5b50508035926020909101359150565b5f805f8060808587031215611702575f80fd5b8435935060208501359250604085013591506060850135611722816113e2565b939692955090935050565b5f805f6040848603121561173f575f80fd5b833561174a816113e2565b9250602084013567ffffffffffffffff811115611765575f80fd5b6115a7868287016114a2565b5f8060208385031215611782575f80fd5b823567ffffffffffffffff811115611798575f80fd5b6117a4858286016114a2565b90969095509350505050565b634e487b7160e01b5f52603260045260245ffd5b5f808335601e198436030181126117d9575f80fd5b83018035915067ffffffffffffffff8211156117f3575f80fd5b6020019150368190038213156112f6575f80fd5b5f60208284031215611817575f80fd5b815180151581146104cf575f80fd5b5f82516118378184602087016115b4565b9190910192915050565b5f60208284031215611851575f80fd5b5051919050565b634e487b7160e01b5f52604160045260245ffd5b6040516080810167ffffffffffffffff8111828210171561188f5761188f611858565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156118be576118be611858565b604052919050565b5f608082360312156118d6575f80fd5b6118de61186c565b82356118e9816113e2565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff80821115611919575f80fd5b9085019036601f83011261192b575f80fd5b81358181111561193d5761193d611858565b61194f601f8201601f19168501611895565b91508082523684828501011115611964575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b5f8235603e19833603018112611837575f80fd5b634e487b7160e01b5f52601260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b5f826119cd576119cd611997565b500490565b634e487b7160e01b5f52600160045260245ffd5b818382375f9101908152919050565b5f8282518085526020808601955060208260051b840101602086015f5b84811015611a4057601f19868403018952611a2e8383516115d6565b98840198925090830190600101611a12565b5090979650505050505050565b6001600160a01b038616815260a0602082018190525f90611a70908301876119f5565b8281036040840152611a8281876119f5565b90508281036060840152611a9681866119f5565b91505082151560808301529695505050505050565b60208152816020820152818360408301375f818301604090810191909152601f909201601f19160101919050565b60ff828116828216039081111561078b5761078b6119ab565b5f60ff831680611b0457611b04611997565b8060ff84160691505092915050565b8082018082111561078b5761078b6119ab565b5f8451611b378184602089016115b4565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f6105bb60408301846115d656fea164736f6c6343000818000a","storage":{"0x0":"0xff"}},"0xda9e1b3e395bfb0a45f03c7f615146b9d896c959":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100b1575f3560e01c806340c10f191161006e57806340c10f191461013d57806370a082311461015257806395d89b411461017a578063a457c2d714610182578063a9059cbb14610195578063dd62ed3e146101a8575f80fd5b806306fdde03146100b5578063095ea7b3146100d357806318160ddd146100f657806323b872dd14610108578063313ce5671461011b578063395093511461012a575b5f80fd5b6100bd6101bb565b6040516100ca9190610775565b60405180910390f35b6100e66100e13660046107dc565b61024b565b60405190151581526020016100ca565b6002545b6040519081526020016100ca565b6100e6610116366004610804565b610264565b604051601281526020016100ca565b6100e66101383660046107dc565b610287565b61015061014b3660046107dc565b6102a8565b005b6100fa61016036600461083d565b6001600160a01b03165f9081526020819052604090205490565b6100bd6102b6565b6100e66101903660046107dc565b6102c5565b6100e66101a33660046107dc565b610344565b6100fa6101b636600461085d565b610351565b6060600380546101ca9061088e565b80601f01602080910402602001604051908101604052809291908181526020018280546101f69061088e565b80156102415780601f1061021857610100808354040283529160200191610241565b820191905f5260205f20905b81548152906001019060200180831161022457829003601f168201915b5050505050905090565b5f3361025881858561037b565b60019150505b92915050565b5f3361027185828561049e565b61027c858585610516565b506001949350505050565b5f336102588185856102998383610351565b6102a391906108c6565b61037b565b6102b282826106b8565b5050565b6060600480546101ca9061088e565b5f33816102d28286610351565b9050838110156103375760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b61027c828686840361037b565b5f33610258818585610516565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b6001600160a01b0383166103dd5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161032e565b6001600160a01b03821661043e5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161032e565b6001600160a01b038381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b5f6104a98484610351565b90505f19811461051057818110156105035760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161032e565b610510848484840361037b565b50505050565b6001600160a01b03831661057a5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161032e565b6001600160a01b0382166105dc5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161032e565b6001600160a01b0383165f90815260208190526040902054818110156106535760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161032e565b6001600160a01b038481165f81815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3610510565b6001600160a01b03821661070e5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640161032e565b8060025f82825461071f91906108c6565b90915550506001600160a01b0382165f81815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b5f602080835283518060208501525f5b818110156107a157858101830151858201604001528201610785565b505f604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146107d7575f80fd5b919050565b5f80604083850312156107ed575f80fd5b6107f6836107c1565b946020939093013593505050565b5f805f60608486031215610816575f80fd5b61081f846107c1565b925061082d602085016107c1565b9150604084013590509250925092565b5f6020828403121561084d575f80fd5b610856826107c1565b9392505050565b5f806040838503121561086e575f80fd5b610877836107c1565b9150610885602084016107c1565b90509250929050565b600181811c908216806108a257607f821691505b6020821081036108c057634e487b7160e01b5f52602260045260245ffd5b50919050565b8082018082111561025e57634e487b7160e01b5f52601160045260245ffdfea164736f6c6343000818000a","storage":{"0x2":"0xe8d4a51000","0x3":"0x0","0x4":"0x0","0x47668262eb76f3aa61b856a0c078f33a11f46671cf1466c3616ba74a22fcdd92":"0xe8d4a51000","0x9cc83e833a69122bf7773b58c082655d780ae469ab7cdf5d1047a30229e55875":"0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"}},"0xe0afc4e9e03e4aa67257df7a2eca77454309789d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061002b5760003560e01c806316f1983114610030575b600080fd5b6100b06004803603604081101561004657600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561007157600080fd5b82018360208201111561008357600080fd5b803590602001918460018302840111640100000000831117156100a557600080fd5b5090925090506100b2565b005b826001600160a01b031660017f103fed9db65eac19c4d870f49ab7520fe03b99f1838e5996caf47e9e43308392848460405180806020018281038252848482818152602001925080828437600083820152604051601f909101601f19169092018290039550909350505050a350505056fea164736f6c6343000606000a","storage":{}},"0xe4fdf45c2f8d198854f8823809c7a988eeaaa493":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100a6575f3560e01c80638cb8ecec1161006e5780638cb8ecec1461013e5780638da5cb5b14610151578063cbe9e76414610161578063da8c229e14610183578063e0dba60f146101a5578063f2fde38b146101b8575f80fd5b806301670ba9146100aa57806301ffc9a7146100bf5780633f15457f146100f85780634e543b2614610123578063715018a614610136575b5f80fd5b6100bd6100b8366004610529565b6101cb565b005b6100e36100cd366004610540565b6001600160e01b0319166301ffc9a760e01b1490565b60405190151581526020015b60405180910390f35b60025461010b906001600160a01b031681565b6040516001600160a01b0390911681526020016100ef565b6100bd610131366004610589565b610217565b6100bd610282565b6100bd61014c3660046105a2565b610295565b5f546001600160a01b031661010b565b6100e361016f366004610529565b60036020525f908152604090205460ff1681565b6100e3610191366004610589565b60016020525f908152604090205460ff1681565b6100bd6101b33660046105cc565b6103a2565b6100bd6101c6366004610589565b610408565b6101d3610481565b60405181907f1764176cfa565853ba1ded547a830a9f9bff95231ef6fd228b3ddd6175777569905f90a25f908152600360205260409020805460ff19166001179055565b61021f610481565b600254604051630c4b7b8560e11b81525f60048201526001600160a01b03838116602483015290911690631896f70a906044015f604051808303815f87803b158015610269575f80fd5b505af115801561027b573d5f803e3d5ffd5b5050505050565b61028a610481565b6102935f6104da565b565b335f9081526001602052604090205460ff166103095760405162461bcd60e51b815260206004820152602860248201527f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f604482015267373a3937b63632b960c11b60648201526084015b60405180910390fd5b5f8281526003602052604090205460ff1615610323575f80fd5b6002546040516306ab592360e01b81525f6004820152602481018490526001600160a01b038381166044830152909116906306ab5923906064016020604051808303815f875af1158015610379573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061039d9190610605565b505050565b6103aa610481565b6001600160a01b0382165f81815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b610410610481565b6001600160a01b0381166104755760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610300565b61047e816104da565b50565b5f546001600160a01b031633146102935760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610300565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f60208284031215610539575f80fd5b5035919050565b5f60208284031215610550575f80fd5b81356001600160e01b031981168114610567575f80fd5b9392505050565b80356001600160a01b0381168114610584575f80fd5b919050565b5f60208284031215610599575f80fd5b6105678261056e565b5f80604083850312156105b3575f80fd5b823591506105c36020840161056e565b90509250929050565b5f80604083850312156105dd575f80fd5b6105e68361056e565b9150602083013580151581146105fa575f80fd5b809150509250929050565b5f60208284031215610615575f80fd5b505191905056fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0xbdf39e9e65b2355b1b0b06df799c09159f0ab90f06a9bb2153f5de7d9b0ea81":"0x1","0x97b771283c9c769f7b9399fef71d92816f2bd31de10203b676671b01eb920966":"0x1"}},"0xe85541865bbb62a05064ce5c9f41cc293a8ea996":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610060575f3560e01c8063715018a6146100645780638129fc1c1461006e5780638da5cb5b14610076578063a3f4df7e14610096578063f2fde38b146100cf578063ffa1ad74146100e2575b5f80fd5b61006c610106565b005b61006c610119565b6033546040516001600160a01b0390911681526020015b60405180910390f35b6100c26040518060400160405280600d81526020016c2aa7299d1027b832b930ba37b960991b81525081565b60405161008d91906103bd565b61006c6100dd366004610409565b610229565b6100c2604051806040016040528060058152602001640302e312e360dc1b81525081565b61010e61029f565b6101175f6102f9565b565b5f54610100900460ff161580801561013757505f54600160ff909116105b806101505750303b15801561015057505f5460ff166001145b6101b85760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b5f805460ff1916600117905580156101d9575f805461ff0019166101001790555b6101e161034a565b8015610226575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50565b61023161029f565b6001600160a01b0381166102965760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016101af565b610226816102f9565b6033546001600160a01b031633146101175760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016101af565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff166103b45760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016101af565b610117336102f9565b5f602080835283518060208501525f5b818110156103e9578581018301518582016040015282016103cd565b505f604082860101526040601f19601f8301168501019250505092915050565b5f60208284031215610419575f80fd5b81356001600160a01b038116811461042f575f80fd5b939250505056fea164736f6c6343000818000a","storage":{}},"0xead34b583404e3cb0c9b97c2d1c486be67be9f30":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0xec71e4e674fe0f432693dc2b935c34bd2774c003":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610090575f3560e01c8063a200e15311610063578063a200e15314610146578063a34e35961461016d578063c8a4271f14610180578063cd5d2c74146101bf578063d820ed42146101e6575f80fd5b806301ffc9a7146100945780632c0fd74c146100bc57806350e9a715146100f157806359b6b86c1461011f575b5f80fd5b6100a76100a2366004610600565b61020d565b60405190151581526020015b60405180910390f35b6100e37f000000000000000000000000000000000000000000000000000000000000000081565b6040519081526020016100b3565b6101046100ff366004610627565b610243565b604080518251815260209283015192810192909252016100b3565b6100e37f000000000000000000000000000000000000000000000000000000000000000181565b6100e37f000000000000000000000000000000000000000000000000000000000000000481565b6100e361017b366004610627565b610404565b6101a77f000000000000000000000000f3810eb7d64d1c11ae12727d957c6202b24492f581565b6040516001600160a01b0390911681526020016100b3565b6100e37f000000000000000000000000000000000000000000000000000000000000000081565b6100e37f000000000000000000000000000000000000000000000000000000000000000281565b5f6001600160e01b031982166301ffc9a760e01b148061023d57506001600160e01b031982166350e9a71560e01b145b92915050565b604080518082019091525f80825260208201525f61029586868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061045392505050565b90505f600582106102d1576102ca847f00000000000000000000000000000000000000000000000000000000000000016106b3565b9050610394565b81600403610303576102ca847f00000000000000000000000000000000000000000000000000000000000000026106b3565b81600303610335576102ca847f00000000000000000000000000000000000000000000000000000000000000046106b3565b81600203610367576102ca847f00000000000000000000000000000000000000000000000000000000000000006106b3565b610391847f00000000000000000000000000000000000000000000000000000000000000006106b3565b90505b60405180604001604052806103a883610554565b81526020016103f76103f28a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c92508b91506105f89050565b610554565b9052979650505050505050565b5f61044a6103f286868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508892508791506105f89050565b95945050505050565b80515f90819081905b8082101561054b575f858381518110610477576104776106ca565b01602001516001600160f81b0319169050600160ff1b8110156104a65761049f6001846106de565b9250610538565b600760fd1b6001600160f81b0319821610156104c75761049f6002846106de565b600f60fc1b6001600160f81b0319821610156104e85761049f6003846106de565b601f60fb1b6001600160f81b0319821610156105095761049f6004846106de565b603f60fa1b6001600160f81b03198216101561052a5761049f6005846106de565b6105356006846106de565b92505b5082610543816106f1565b93505061045c565b50909392505050565b5f807f000000000000000000000000f3810eb7d64d1c11ae12727d957c6202b24492f56001600160a01b03166350d25bcd6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105b2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105d69190610709565b9050806105e7846305f5e1006106b3565b6105f19190610720565b9392505050565b5f9392505050565b5f60208284031215610610575f80fd5b81356001600160e01b0319811681146105f1575f80fd5b5f805f806060858703121561063a575f80fd5b843567ffffffffffffffff80821115610651575f80fd5b818701915087601f830112610664575f80fd5b813581811115610672575f80fd5b886020828501011115610683575f80fd5b6020928301999098509187013596604001359550909350505050565b634e487b7160e01b5f52601160045260245ffd5b808202811582820484141761023d5761023d61069f565b634e487b7160e01b5f52603260045260245ffd5b8082018082111561023d5761023d61069f565b5f600182016107025761070261069f565b5060010190565b5f60208284031215610719575f80fd5b5051919050565b5f8261073a57634e487b7160e01b5f52601260045260245ffd5b50049056fea164736f6c6343000818000a","storage":{}},"0xf1ad43dc647f27c2366ab4742d68d21282f7d50e":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101d1575f3560e01c80638b95dd71116100fe578063c86902331161009e578063e32954eb1161006e578063e32954eb146104f2578063e59d895d14610505578063e985e9c514610518578063f1cb7e0614610553575f80fd5b8063c869023314610435578063ce3decdc1461048c578063d5fa2b001461049f578063d700ff33146104b2575f80fd5b8063a8fa5682116100d9578063a8fa5682146103ac578063a9784b3e146103bf578063ac9650d814610402578063bc1c58d114610422575f80fd5b80638b95dd7114610373578063a22cb46514610386578063a4b91a0114610399575f80fd5b80633603d758116101745780635c98042b116101445780635c98042b14610327578063623195b01461033a578063691f34311461034d5780637737221314610360575f80fd5b80633603d758146102975780633b3b57de146102aa5780634cbf6ba4146102bd57806359d1d43c14610307575f80fd5b8063124a319c116101af578063124a319c146102255780632203ab561461025057806329cd62ea14610271578063304e6ade14610284575f80fd5b806301ffc9a7146101d55780630af179d7146101fd57806310f13a8c14610212575b5f80fd5b6101e86101e3366004612267565b610566565b60405190151581526020015b60405180910390f35b61021061020b3660046122bd565b610576565b005b610210610220366004612304565b610778565b610238610233366004612377565b610842565b6040516001600160a01b0390911681526020016101f4565b61026361025e3660046123a1565b610a87565b6040516101f492919061240e565b61021061027f366004612426565b610bb5565b6102106102923660046122bd565b610c4d565b6102106102a536600461244f565b610cc6565b6102386102b836600461244f565b610d64565b6101e86102cb3660046123a1565b5f82815260208181526040808320546001600160401b031683526006825280832094835293815283822092825291909152205461ffff16151590565b61031a6103153660046122bd565b610d93565b6040516101f49190612466565b61031a61033536600461244f565b610e6f565b610210610348366004612478565b610f2a565b61031a61035b36600461244f565b610fc2565b61021061036e3660046122bd565b610ffa565b6102106103813660046124da565b611073565b6102106103943660046125b9565b611150565b6102106103a73660046125e3565b61122a565b61031a6103ba36600461261e565b6112f6565b6101e86103cd36600461265a565b6001600160a01b039283165f908152600c60209081526040808320948352938152838220929094168152925290205460ff1690565b6104156104103660046126ce565b611342565b6040516101f4919061270c565b61031a61043036600461244f565b61134f565b61047761044336600461244f565b5f81815260208181526040808320546001600160401b03168352600982528083209383529290522080546001909101549091565b604080519283526020830191909152016101f4565b61021061049a3660046122bd565b611387565b6102106104ad36600461276e565b6114c3565b6104da6104c036600461244f565b5f602081905290815260409020546001600160401b031681565b6040516001600160401b0390911681526020016101f4565b61041561050036600461279c565b6114e9565b6102106105133660046127d6565b6114fe565b6101e8610526366004612808565b6001600160a01b039182165f908152600b6020908152604080832093909416825291909152205460ff1690565b61031a6105613660046123a1565b6115a2565b5f61057082611666565b92915050565b826105808161168a565b610588575f80fd5b5f84815260208181526040808320548151601f87018490048402810184019092528582528392606092839285926001600160401b039091169183916105eb9183918d908d90819084018382808284375f9201919091525092939250506118b79050565b90505b80515160208201511015610712578661ffff165f03610652578060400151965061061781611912565b94508460405160200161062a9190612834565b60405160208183030381529060405280519060200120925061064b81611933565b9350610704565b5f61065c82611912565b9050816040015161ffff168861ffff16141580610680575061067e868261194f565b155b15610702576106db8c878a8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250505060208801518d91506106d2908290612863565b8b51158a61196a565b8160400151975081602001519650809550858051906020012093506106ff82611933565b94505b505b61070d81611bc9565b6105ee565b5083511561076c5761076c8a85888c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c925061076391508290508f612863565b8951158861196a565b50505050505050505050565b846107828161168a565b61078a575f80fd5b5f86815260208181526040808320546001600160401b03168352600a8252808320898452909152908190209051849184916107c89089908990612876565b908152602001604051809103902091826107e3929190612901565b5084846040516107f4929190612876565b6040518091039020867f448bc014f1536726cf8d54ff3d6481ed3cbc683c2591ca204274009afa09b1a18787878760405161083294939291906129e2565b60405180910390a3505050505050565b5f82815260208181526040808320546001600160401b031683526007825280832085845282528083206001600160e01b0319851684529091528120546001600160a01b03168015610894579050610570565b5f61089e85610d64565b90506001600160a01b0381166108b8575f92505050610570565b6040516301ffc9a760e01b60248201525f9081906001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b1790525161090f9190612834565b5f60405180830381855afa9150503d805f8114610947576040519150601f19603f3d011682016040523d82523d5f602084013e61094c565b606091505b509150915081158061095f575060208151105b80610989575080601f8151811061097857610978612a13565b01602001516001600160f81b031916155b1561099a575f945050505050610570565b6040516001600160e01b0319871660248201526001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b179052516109f09190612834565b5f60405180830381855afa9150503d805f8114610a28576040519150601f19603f3d011682016040523d82523d5f602084013e610a2d565b606091505b509092509050811580610a41575060208151105b80610a6b575080601f81518110610a5a57610a5a612a13565b01602001516001600160f81b031916155b15610a7c575f945050505050610570565b509095945050505050565b5f82815260208181526040808320546001600160401b03168352600180835281842086855290925282206060915b848111610b975780851615801590610ae457505f8181526020839052604081208054610ae090612885565b9050115b15610b8f5780825f8381526020019081526020015f20808054610b0690612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610b3290612885565b8015610b7d5780601f10610b5457610100808354040283529160200191610b7d565b820191905f5260205f20905b815481529060010190602001808311610b6057829003601f168201915b50505050509050935093505050610bae565b60011b610ab5565b505f60405180602001604052805f81525092509250505b9250929050565b82610bbf8161168a565b610bc7575f80fd5b60408051808201825284815260208082018581525f888152808352848120546001600160401b031681526009835284812089825283528490209251835551600190920191909155815185815290810184905285917f1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e4691015b60405180910390a250505050565b82610c578161168a565b610c5f575f80fd5b5f84815260208181526040808320546001600160401b03168352600382528083208784529091529020610c93838583612901565b50837fe379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d75788484604051610c3f929190612a27565b80610cd08161168a565b610cd8575f80fd5b5f82815260208190526040812080546001600160401b031691610cfa83612a3a565b82546101009290920a6001600160401b038181021990931691831602179091555f84815260208181526040918290205491519190921681528492507fc6621ccb8f3f5a04bb6502154b2caf6adf5983fe76dfef1cfc9c42e3579db444910160405180910390a25050565b5f80610d7183603c6115a2565b905080515f03610d8357505f92915050565b610d8c81611cae565b9392505050565b5f83815260208181526040808320546001600160401b03168352600a825280832086845290915290819020905160609190610dd19085908590612876565b90815260200160405180910390208054610dea90612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610e1690612885565b8015610e615780601f10610e3857610100808354040283529160200191610e61565b820191905f5260205f20905b815481529060010190602001808311610e4457829003601f168201915b505050505090509392505050565b5f81815260208181526040808320546001600160401b03168352600482528083208484529091529020805460609190610ea790612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610ed390612885565b8015610f1e5780601f10610ef557610100808354040283529160200191610f1e565b820191905f5260205f20905b815481529060010190602001808311610f0157829003601f168201915b50505050509050919050565b83610f348161168a565b610f3c575f80fd5b83610f48600182612863565b1615610f52575f80fd5b5f85815260208181526040808320546001600160401b031683526001825280832088845282528083208784529091529020610f8e838583612901565b50604051849086907faa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe3905f90a35050505050565b5f81815260208181526040808320546001600160401b03168352600882528083208484529091529020805460609190610ea790612885565b826110048161168a565b61100c575f80fd5b5f84815260208181526040808320546001600160401b03168352600882528083208784529091529020611040838583612901565b50837fb7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f78484604051610c3f929190612a27565b8261107d8161168a565b611085575f80fd5b837f65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af75284846040516110b792919061240e565b60405180910390a2603c830361110e57837f52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd26110f284611cae565b6040516001600160a01b03909116815260200160405180910390a25b5f84815260208181526040808320546001600160401b0316835260028252808320878452825280832086845290915290206111498382612a5f565b5050505050565b6001600160a01b03821633036111bf5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084015b60405180910390fd5b335f818152600b602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6001600160a01b03821633036112825760405162461bcd60e51b815260206004820181905260248201527f53657474696e672064656c65676174652073746174757320666f722073656c6660448201526064016111b6565b335f818152600c6020908152604080832087845282528083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519384529286917ff0ddb3b04746704017f9aa8bd728fcc2c1d11675041205350018915f5e4750a0910160405180910390a4505050565b5f83815260208181526040808320546001600160401b03168352600582528083208684528252808320858452825280832061ffff851684529091529020805460609190610dea90612885565b6060610d8c5f8484611ccb565b5f81815260208181526040808320546001600160401b03168352600382528083208484529091529020805460609190610ea790612885565b826113918161168a565b611399575f80fd5b5f84815260208181526040808320546001600160401b031680845260048352818420888552909252822080549192916113d190612885565b80601f01602080910402602001604051908101604052809291908181526020018280546113fd90612885565b80156114485780601f1061141f57610100808354040283529160200191611448565b820191905f5260205f20905b81548152906001019060200180831161142b57829003601f168201915b505050506001600160401b0384165f9081526004602090815260408083208b8452909152902091925061147e9050858783612901565b50857f8f15ed4b723ef428f250961da8315675b507046737e19319fc1a4d81bfe87f858287876040516114b393929190612b1e565b60405180910390a2505050505050565b816114cd8161168a565b6114d5575f80fd5b6114e483603c61038185611e88565b505050565b60606114f6848484611ccb565b949350505050565b826115088161168a565b611510575f80fd5b5f84815260208181526040808320546001600160401b031683526007825280832087845282528083206001600160e01b031987168085529083529281902080546001600160a01b0319166001600160a01b038716908117909155905190815286917f7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa910160405180910390a350505050565b5f82815260208181526040808320546001600160401b0316835260028252808320858452825280832084845290915290208054606091906115e290612885565b80601f016020809104026020016040519081016040528092919081815260200182805461160e90612885565b80156116595780601f1061163057610100808354040283529160200191611659565b820191905f5260205f20905b81548152906001019060200180831161163c57829003601f168201915b5050505050905092915050565b5f6001600160e01b03198216631674750f60e21b1480610570575061057082611eb8565b5f336001600160a01b037f0000000000000000000000004fbf7b2f171336958be5d15ff762a5cff53635681614806116ea5750336001600160a01b037f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5616145b156116f757506001919050565b6040516302571be360e01b8152600481018390525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa15801561175c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117809190612b4d565b90507f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b0316816001600160a01b031603611845576040516331a9108f60e11b8152600481018490527f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b031690636352211e90602401602060405180830381865afa15801561181e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118429190612b4d565b90505b6001600160a01b03811633148061187e57506001600160a01b0381165f908152600b6020908152604080832033845290915290205460ff165b80610d8c57506001600160a01b0381165f908152600c60209081526040808320868452825280832033845290915290205460ff16610d8c565b6118ff6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261057081611bc9565b602081015181516060916105709161192a9082611edc565b84519190611f33565b60a081015160c08201516060916105709161192a908290612863565b5f81518351148015610d8c5750610d8c835f845f8751611fa7565b865160208801205f61197d878787611f33565b90508315611aa1576001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c168452909152902080546119c690612885565b159050611a23576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611a0783612b68565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091528120611a62916121f9565b897f03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a12078a8a604051611a94929190612b84565b60405180910390a261076c565b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c16845290915290208054611ae290612885565b90505f03611b40576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611b2483612ba9565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091529020611b808282612a5f565b50897f52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b8a8a84604051611bb593929190612bbf565b60405180910390a250505050505050505050565b60c08101516020820181905281515111611be05750565b5f611bf2825f01518360200151611edc565b8260200151611c019190612bed565b8251909150611c109082611fc9565b61ffff166040830152611c24600282612bed565b8251909150611c339082611fc9565b61ffff166060830152611c47600282612bed565b8251909150611c569082611fef565b63ffffffff166080830152611c6c600482612bed565b82519091505f90611c7d9083611fc9565b61ffff169050611c8e600283612bed565b60a084018190529150611ca18183612bed565b60c0909301929092525050565b5f8151601414611cbc575f80fd5b5060200151600160601b900490565b6060816001600160401b03811115611ce557611ce56124c6565b604051908082528060200260200182016040528015611d1857816020015b6060815260200190600190039081611d035790505b5090505f5b82811015611e80578415611dd8575f848483818110611d3e57611d3e612a13565b9050602002810190611d509190612c00565b611d5f91602491600491612c42565b611d6891612c69565b9050858114611dd65760405162461bcd60e51b815260206004820152603460248201527f6d756c746963616c6c3a20416c6c207265636f726473206d7573742068617665604482015273040c240dac2e8c6d0d2dcce40dcc2dacad0c2e6d60631b60648201526084016111b6565b505b5f8030868685818110611ded57611ded612a13565b9050602002810190611dff9190612c00565b604051611e0d929190612876565b5f60405180830381855af49150503d805f8114611e45576040519150601f19603f3d011682016040523d82523d5f602084013e611e4a565b606091505b509150915081611e58575f80fd5b80848481518110611e6b57611e6b612a13565b60209081029190910101525050600101611d1d565b509392505050565b604080516014808252818301909252606091602082018180368337505050600160601b9290920260208301525090565b5f6001600160e01b0319821663c869023360e01b1480610570575061057082612017565b5f815b83518110611eef57611eef612c86565b5f611efa858361203b565b60ff169050611f0a816001612bed565b611f149083612bed565b9150805f03611f235750611f29565b50611edf565b6114f68382612863565b8251606090611f428385612bed565b1115611f4c575f80fd5b5f826001600160401b03811115611f6557611f656124c6565b6040519080825280601f01601f191660200182016040528015611f8f576020820181803683370190505b50905060208082019086860101610a7c82828761205e565b5f611fb38484846120b3565b611fbe8787856120b3565b149695505050505050565b81515f90611fd8836002612bed565b1115611fe2575f80fd5b50016002015161ffff1690565b81515f90611ffe836004612bed565b1115612008575f80fd5b50016004015163ffffffff1690565b5f6001600160e01b0319821663691f343160e01b14806105705750610570826120d5565b5f82828151811061204e5761204e612a13565b016020015160f81c905092915050565b602081106120965781518352612075602084612bed565b9250612082602083612bed565b915061208f602082612863565b905061205e565b905182516020929092036101000a5f190180199091169116179052565b82515f906120c18385612bed565b11156120cb575f80fd5b5091016020012090565b5f6001600160e01b031982166304928c6760e21b14806105705750610570825f6001600160e01b0319821663547d2b4160e11b148061212457506001600160e01b03198216635c98042b60e01b145b806105705750610570825f6001600160e01b0319821663bc1c58d160e01b14806105705750610570825f6001600160e01b03198216631d9dabef60e11b148061217d57506001600160e01b031982166378e5bf0360e11b145b806105705750610570825f6001600160e01b03198216631101d5ab60e11b14806105705750610570825f6001600160e01b0319821663d700ff3360e01b14806105705750610570825f6001600160e01b03198216634fbf043360e01b148061057057506301ffc9a760e01b6001600160e01b0319831614610570565b50805461220590612885565b5f825580601f10612214575050565b601f0160209004905f5260205f20908101906122309190612233565b50565b5b80821115612247575f8155600101612234565b5090565b80356001600160e01b031981168114612262575f80fd5b919050565b5f60208284031215612277575f80fd5b610d8c8261224b565b5f8083601f840112612290575f80fd5b5081356001600160401b038111156122a6575f80fd5b602083019150836020828501011115610bae575f80fd5b5f805f604084860312156122cf575f80fd5b8335925060208401356001600160401b038111156122eb575f80fd5b6122f786828701612280565b9497909650939450505050565b5f805f805f60608688031215612318575f80fd5b8535945060208601356001600160401b0380821115612335575f80fd5b61234189838a01612280565b90965094506040880135915080821115612359575f80fd5b5061236688828901612280565b969995985093965092949392505050565b5f8060408385031215612388575f80fd5b823591506123986020840161224b565b90509250929050565b5f80604083850312156123b2575f80fd5b50508035926020909101359150565b5f5b838110156123db5781810151838201526020016123c3565b50505f910152565b5f81518084526123fa8160208601602086016123c1565b601f01601f19169290920160200192915050565b828152604060208201525f6114f660408301846123e3565b5f805f60608486031215612438575f80fd5b505081359360208301359350604090920135919050565b5f6020828403121561245f575f80fd5b5035919050565b602081525f610d8c60208301846123e3565b5f805f806060858703121561248b575f80fd5b843593506020850135925060408501356001600160401b038111156124ae575f80fd5b6124ba87828801612280565b95989497509550505050565b634e487b7160e01b5f52604160045260245ffd5b5f805f606084860312156124ec575f80fd5b833592506020840135915060408401356001600160401b0380821115612510575f80fd5b818601915086601f830112612523575f80fd5b813581811115612535576125356124c6565b604051601f8201601f19908116603f0116810190838211818310171561255d5761255d6124c6565b81604052828152896020848701011115612575575f80fd5b826020860160208301375f6020848301015280955050505050509250925092565b6001600160a01b0381168114612230575f80fd5b80358015158114612262575f80fd5b5f80604083850312156125ca575f80fd5b82356125d581612596565b9150612398602084016125aa565b5f805f606084860312156125f5575f80fd5b83359250602084013561260781612596565b9150612615604085016125aa565b90509250925092565b5f805f60608486031215612630575f80fd5b8335925060208401359150604084013561ffff8116811461264f575f80fd5b809150509250925092565b5f805f6060848603121561266c575f80fd5b833561267781612596565b925060208401359150604084013561264f81612596565b5f8083601f84011261269e575f80fd5b5081356001600160401b038111156126b4575f80fd5b6020830191508360208260051b8501011115610bae575f80fd5b5f80602083850312156126df575f80fd5b82356001600160401b038111156126f4575f80fd5b6127008582860161268e565b90969095509350505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b8281101561276157603f1988860301845261274f8583516123e3565b94509285019290850190600101612733565b5092979650505050505050565b5f806040838503121561277f575f80fd5b82359150602083013561279181612596565b809150509250929050565b5f805f604084860312156127ae575f80fd5b8335925060208401356001600160401b038111156127ca575f80fd5b6122f78682870161268e565b5f805f606084860312156127e8575f80fd5b833592506127f86020850161224b565b9150604084013561264f81612596565b5f8060408385031215612819575f80fd5b823561282481612596565b9150602083013561279181612596565b5f82516128458184602087016123c1565b9190910192915050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156105705761057061284f565b818382375f9101908152919050565b600181811c9082168061289957607f821691505b6020821081036128b757634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156114e457805f5260205f20601f840160051c810160208510156128e25750805b601f840160051c820191505b81811015611149575f81556001016128ee565b6001600160401b03831115612918576129186124c6565b61292c836129268354612885565b836128bd565b5f601f84116001811461295d575f85156129465750838201355b5f19600387901b1c1916600186901b178355611149565b5f83815260208120601f198716915b8281101561298c578685013582556020948501946001909201910161296c565b50868210156129a8575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b604081525f6129f56040830186886129ba565b8281036020840152612a088185876129ba565b979650505050505050565b634e487b7160e01b5f52603260045260245ffd5b602081525f6114f66020830184866129ba565b5f6001600160401b03808316818103612a5557612a5561284f565b6001019392505050565b81516001600160401b03811115612a7857612a786124c6565b612a8c81612a868454612885565b846128bd565b602080601f831160018114612abf575f8415612aa85750858301515b5f19600386901b1c1916600185901b178555612b16565b5f85815260208120601f198616915b82811015612aed57888601518255948401946001909101908401612ace565b5085821015612b0a57878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b604081525f612b3060408301866123e3565b8281036020840152612b438185876129ba565b9695505050505050565b5f60208284031215612b5d575f80fd5b8151610d8c81612596565b5f61ffff821680612b7b57612b7b61284f565b5f190192915050565b604081525f612b9660408301856123e3565b905061ffff831660208301529392505050565b5f61ffff808316818103612a5557612a5561284f565b606081525f612bd160608301866123e3565b61ffff851660208401528281036040840152612b4381856123e3565b808201808211156105705761057061284f565b5f808335601e19843603018112612c15575f80fd5b8301803591506001600160401b03821115612c2e575f80fd5b602001915036819003821315610bae575f80fd5b5f8085851115612c50575f80fd5b83861115612c5c575f80fd5b5050820193919092039150565b80356020831015610570575f19602084900360031b1b1692915050565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{}},"0xf3810eb7d64d1c11ae12727d957c6202b24492f5":{"nonce":1,"balance":"0x0","code":"0x6080604052348015600e575f80fd5b50600436106030575f3560e01c806350d25bcd146034578063e5c19b2d146048575b5f80fd5b5f5460405190815260200160405180910390f35b605760533660046059565b5f55565b005b5f602082840312156068575f80fd5b503591905056fea164736f6c6343000818000a","storage":{"0x0":"0x5f5e100"}},"0xf670681605efc4efc804f5a9b97ee89520473d56":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c80638da5cb5b11610088578063c66485b211610063578063c66485b2146101da578063da8c229e146101ed578063e0dba60f1461021f578063f2fde38b14610232575f80fd5b80638da5cb5b146101a4578063bffbe61c146101b4578063c47f0027146101c7575f80fd5b806365669631116100c35780636566963114610161578063715018a6146101745780637a806d6b1461017e578063828eab0e14610191575f80fd5b80630f5a5466146100e95780631e83409a1461010f5780633f15457f14610122575b5f80fd5b6100fc6100f7366004610958565b610245565b6040519081526020015b60405180910390f35b6100fc61011d36600461098f565b610258565b6101497f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a981565b6040516001600160a01b039091168152602001610106565b6100fc61016f3660046109aa565b610279565b61017c610526565b005b6100fc61018c366004610a8f565b610539565b600254610149906001600160a01b031681565b5f546001600160a01b0316610149565b6100fc6101c236600461098f565b6105ae565b6100fc6101d5366004610b00565b610608565b61017c6101e836600461098f565b610624565b61020f6101fb36600461098f565b60016020525f908152604090205460ff1681565b6040519015158152602001610106565b61017c61022d366004610b47565b6106e4565b61017c61024036600461098f565b61074a565b5f610251338484610279565b9392505050565b6002545f9061027390339084906001600160a01b0316610279565b92915050565b5f836001600160a01b0381163314806102a05750335f9081526001602052604090205460ff165b80610334575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063e985e9c590604401602060405180830381865afa158015610310573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103349190610b73565b806103435750610343816107c3565b6103e05760405162461bcd60e51b815260206004820152605b60248201527f526576657273655265676973747261723a2043616c6c6572206973206e6f742060448201527f6120636f6e74726f6c6c6572206f7220617574686f726973656420627920616460648201527f6472657373206f7220746865206164647265737320697473656c660000000000608482015260a4015b60405180910390fd5b5f6103ea8661083a565b604080517f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e2602080830191909152818301849052825180830384018152606090920192839052815191012091925081906001600160a01b038916907f6ada868dd3058cf77a48a74489fd7963688e5464b2b0fa957ace976243270e92905f90a36040516305ef2c7f60e41b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26004820152602481018390526001600160a01b03878116604483015286811660648301525f60848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610505575f80fd5b505af1158015610517573d5f803e3d5ffd5b50929998505050505050505050565b61052e61089c565b6105375f6108f5565b565b5f80610546868686610279565b604051637737221360e01b81529091506001600160a01b038516906377372213906105779084908790600401610b8e565b5f604051808303815f87803b15801561058e575f80fd5b505af11580156105a0573d5f803e3d5ffd5b509298975050505050505050565b5f7f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26105d98361083a565b604080516020810193909352820152606001604051602081830303815290604052805190602001209050919050565b6002545f9061027390339081906001600160a01b031685610539565b61062c61089c565b6001600160a01b03811661069b5760405162461bcd60e51b815260206004820152603060248201527f526576657273655265676973747261723a205265736f6c76657220616464726560448201526f07373206d757374206e6f7420626520360841b60648201526084016103d7565b600280546001600160a01b0319166001600160a01b0383169081179091556040517feae17a84d9eb83d8c8eb317f9e7d64857bc363fa51674d996c023f4340c577cf905f90a250565b6106ec61089c565b6001600160a01b0382165f81815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b61075261089c565b6001600160a01b0381166107b75760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016103d7565b6107c0816108f5565b50565b5f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801561081e575060408051601f3d908101601f1916820190925261081b91810190610be2565b60015b61082957505f919050565b6001600160a01b0316331492915050565b5f60285b8015610891575f19016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a81536010909204915f19016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a815360108304925061083e565b505060285f20919050565b5f546001600160a01b031633146105375760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016103d7565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146107c0575f80fd5b5f8060408385031215610969575f80fd5b823561097481610944565b9150602083013561098481610944565b809150509250929050565b5f6020828403121561099f575f80fd5b813561025181610944565b5f805f606084860312156109bc575f80fd5b83356109c781610944565b925060208401356109d781610944565b915060408401356109e781610944565b809150509250925092565b634e487b7160e01b5f52604160045260245ffd5b5f82601f830112610a15575f80fd5b813567ffffffffffffffff80821115610a3057610a306109f2565b604051601f8301601f19908116603f01168101908282118183101715610a5857610a586109f2565b81604052838152866020858801011115610a70575f80fd5b836020870160208301375f602085830101528094505050505092915050565b5f805f8060808587031215610aa2575f80fd5b8435610aad81610944565b93506020850135610abd81610944565b92506040850135610acd81610944565b9150606085013567ffffffffffffffff811115610ae8575f80fd5b610af487828801610a06565b91505092959194509250565b5f60208284031215610b10575f80fd5b813567ffffffffffffffff811115610b26575f80fd5b610b3284828501610a06565b949350505050565b80151581146107c0575f80fd5b5f8060408385031215610b58575f80fd5b8235610b6381610944565b9150602083013561098481610b3a565b5f60208284031215610b83575f80fd5b815161025181610b3a565b8281525f60206040602084015283518060408501525f5b81811015610bc157858101830151858201606001528201610ba5565b505f606082860101526060601f19601f830116850101925050509392505050565b5f60208284031215610bf2575f80fd5b81516102518161094456fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2":"0x9df67c91f1bfcb4d966cf764e9218685e7c59e8a","0x1f5b7623941da966ad7183d9cbb6db584f6d4add26919ac31a2d3f19a164e7e1":"0x1","0xbe5de2149ce76ca5934fa63455cd675fd52e2d30f3328985d298a627ca0f05e9":"0x1"}},"0xf8c26340c1eaea6c7ff1760b25005e1306953572":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061010b5760003560e01c80638c87a4ea116100a2578063b87abc1111610071578063b87abc1114610244578063c597407314610257578063ce92b33e1461026a578063e837ae741461027d578063ec129eea146102905761010b565b80638c87a4ea146101ea5780638f69c188146101fd578063a3557e6c14610210578063b85afd28146102235761010b565b806347c81699116100de57806347c8169914610181578063672b9f81146101945780636ccbae5f146101b55780637b103999146101d55761010b565b80631bd8cc1a146101105780631be5e7ed146101395780632c3d376d14610159578063310bd74b1461016c575b600080fd5b61012361011e3660046117b4565b6102a3565b6040516101309190611eee565b60405180910390f35b61014c610147366004611aec565b6104f2565b6040516101309190611fd6565b61014c610167366004611b21565b610673565b61017f61017a366004611b21565b610714565b005b61017f61018f3660046119b5565b6107c0565b6101a76101a2366004611b94565b6108ef565b604051610130929190611fe7565b6101c86101c3366004611b21565b6109c3565b604051610130919061204c565b6101dd6109d5565b6040516101309190611ea9565b6101236101f836600461191d565b6109e5565b61017f61020b366004611878565b610a74565b61017f61021e366004611878565b610af0565b610236610231366004611951565b610b1b565b604051610130929190611eff565b61017f610252366004611b3f565b610ca9565b61017f610265366004611a39565b610d43565b61017f610278366004611808565b610df9565b61017f61028b366004611808565b610e97565b61017f61029e366004611808565b610f4e565b60015460405163b3f9e4cb60e01b815260609183916001600160a01b039091169063b3f9e4cb906102d890849060040161204c565b60206040518083038186803b1580156102f057600080fd5b505afa158015610304573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610328919081019061178e565b6001600160a01b0316306001600160a01b0316146103615760405162461bcd60e51b81526004016103589061201c565b60405180910390fd5b604080518581526020808702820101909152849060609082801561039957816020015b60608152602001906001900390816103845790505b506000868152600360205260408120549192505b838110156104e557600087815260026020908152604080832085845290915290208989838181106103da57fe5b602002820190508035601e19368490030181126103f657600080fd5b909101602081019150356001600160401b0381111561041457600080fd5b3681900382131561042457600080fd5b604051610432929190611e70565b9081526040805160209281900383018120805460026001821615610100026000190190911604601f810185900485028301850190935282825290929091908301828280156104c15780601f10610496576101008083540402835291602001916104c1565b820191906000526020600020905b8154815290600101906020018083116104a457829003601f168201915b50505050508382815181106104d257fe5b60209081029190910101526001016103ad565b5090979650505050505050565b60015460405163b3f9e4cb60e01b815260609183916001600160a01b039091169063b3f9e4cb9061052790849060040161204c565b60206040518083038186803b15801561053f57600080fd5b505afa158015610553573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610577919081019061178e565b6001600160a01b0316306001600160a01b0316146105a75760405162461bcd60e51b81526004016103589061201c565b6000838152600260209081526040808320600383528184205484529091529081902090516105d6908690611e7d565b9081526040805160209281900383018120805460026001821615610100026000190190911604601f810185900485028301850190935282825290929091908301828280156106655780601f1061063a57610100808354040283529160200191610665565b820191906000526020600020905b81548152906001019060200180831161064857829003601f168201915b505050505091505092915050565b60008181526004602090815260409182902080548351601f60026000196101006001861615020190931692909204918201849004840281018401909452808452606093928301828280156107085780601f106106dd57610100808354040283529160200191610708565b820191906000526020600020905b8154815290600101906020018083116106eb57829003601f168201915b50505050509050919050565b60015460405163430c208160e01b815282916001600160a01b03169063430c2081906107469033908590600401611ec5565b60206040518083038186803b15801561075e57600080fd5b505afa158015610772573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506107969190810190611997565b6107b25760405162461bcd60e51b81526004016103589061202c565b6107bc4283610fec565b5050565b60015460405163430c208160e01b815282916001600160a01b03169063430c2081906107f29033908590600401611ec5565b60206040518083038186803b15801561080a57600080fd5b505afa15801561081e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506108429190810190611997565b61085e5760405162461bcd60e51b81526004016103589061202c565b6108e7600360008481526020019081526020016000205487878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061108e915050565b505050505050565b60015460405163b3f9e4cb60e01b8152606091829184916001600160a01b03169063b3f9e4cb9061092490849060040161204c565b60206040518083038186803b15801561093c57600080fd5b505afa158015610950573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610974919081019061178e565b6001600160a01b0316306001600160a01b0316146109a45760405162461bcd60e51b81526004016103589061201c565b6109ad85610673565b92506109b983856104f2565b9150509250929050565b60009081526020819052604090205490565b6001546001600160a01b03165b90565b6060600082519050606081604051908082528060200260200182016040528015610a2357816020015b6060815260200190600190039081610a0e5790505b50905060005b82811015610a6c57610a4d858281518110610a4057fe5b6020026020010151610673565b828281518110610a5957fe5b6020908102919091010152600101610a29565b509392505050565b610acf63ce92b33e60e01b858585604051602401610a9493929190611f24565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092178252519020838361129f565b600082815260036020526040902054610aea908585856113c3565b50505050565b610b1063ec129eea60e01b858585604051602401610a9493929190611f24565b610aea84848461140a565b60015460405163b3f9e4cb60e01b8152606091829184916001600160a01b03169063b3f9e4cb90610b5090849060040161204c565b60206040518083038186803b158015610b6857600080fd5b505afa158015610b7c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610ba0919081019061178e565b6001600160a01b0316306001600160a01b031614610bd05760405162461bcd60e51b81526004016103589061201c565b8451604080518281526020808402820101909152818015610c0557816020015b6060815260200190600190039081610bf05790505b50935080604051908082528060200260200182016040528015610c3c57816020015b6060815260200190600190039081610c275790505b50925060005b81811015610c9f57610c67878281518110610c5957fe5b6020026020010151876108ef565b8651879084908110610c7557fe5b60200260200101868481518110610c8857fe5b602090810291909101019190915252600101610c42565b5050509250929050565b610d3463310bd74b60e01b84604051602401610cc5919061204c565b60408051601f19818403018152918152602080830180516001600160e01b03166001600160e01b031990951694909417845291519092208251601f8601839004830281018301909352848352918691869086908190840183828082843760009201919091525061129f92505050565b610d3e4284610fec565b505050565b610d676347c8169960e01b8888888888604051602401610cc5959493929190611f96565b610df0600360008581526020019081526020016000205488888080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8c018190048102820181019092528a815292508a915089908190840183828082843760009201919091525089925061108e915050565b50505050505050565b60015460405163430c208160e01b815282916001600160a01b03169063430c208190610e2b9033908590600401611ec5565b60206040518083038186803b158015610e4357600080fd5b505afa158015610e57573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610e7b9190810190611997565b610acf5760405162461bcd60e51b81526004016103589061202c565b6005546040516355138f0d60e11b81526001600160a01b039091169063aa271e1a90610ec7903390600401611eb7565b60206040518083038186803b158015610edf57600080fd5b505afa158015610ef3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610f179190810190611997565b610f335760405162461bcd60e51b81526004016103589061203c565b600081815260036020526040902054610d3e908484846113c3565b60015460405163430c208160e01b815282916001600160a01b03169063430c208190610f809033908590600401611ec5565b60206040518083038186803b158015610f9857600080fd5b505afa158015610fac573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610fd09190810190611997565b610b105760405162461bcd60e51b81526004016103589061202c565b600081815260036020526040808220849055600154905163538361a760e01b81526001600160a01b039091169163538361a79161102d91859160040161205a565b600060405180830381600087803b15801561104757600080fd5b505af115801561105b573d6000803e3d6000fd5b50506040518392507f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9150600090a25050565b825160208085019190912060008381526002835260408082208883529093528281209251919290916110c1908790611e7d565b908152604051602091819003919091018120546001805463538361a760e01b84526002918316156101000260001901909216041592506001600160a01b03169063538361a7906111179086908690600401612075565b600060405180830381600087803b15801561113157600080fd5b505af1158015611145573d6000803e3d6000fd5b50505060008481526002602090815260408083208a8452909152908190209051869250611173908890611e7d565b90815260200160405180910390209080519060200190611194929190611521565b50600082815260046020526040902054600260001961010060018416150201909116046111dc57600082815260046020908152604090912086516111da92880190611521565b505b801561123157846040516111f09190611e7d565b6040518091039020837f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f86876040516112289190611fd6565b60405180910390a35b8360405161123f9190611e7d565b6040518091039020856040516112559190611e7d565b6040518091039020847f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d92888860405161128f929190611fe7565b60405180910390a4505050505050565b6000828152602081815260408083205490519092916112f59185916112e9916112ce918a913091899101611e39565b60405160208183030381529060405280519060200120611414565b9063ffffffff61144416565b90506001600160a01b0381161580159061138c575060015460405163430c208160e01b81526001600160a01b039091169063430c20819061133c9084908890600401611ee0565b60206040518083038186803b15801561135457600080fd5b505afa158015611368573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061138c9190810190611997565b6113a85760405162461bcd60e51b81526004016103589061200c565b50505060009081526020819052604090208054600101905550565b825160005b818110156108e757611402868683815181106113e057fe5b60200260200101518684815181106113f457fe5b60200260200101518661108e565b6001016113c8565b610f334282610fec565b6000816040516020016114279190611e89565b604051602081830303815290604052805190602001209050919050565b600081516041146114575750600061151b565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a082111561149d576000935050505061151b565b8060ff16601b141580156114b557508060ff16601c14155b156114c6576000935050505061151b565b600186828585604051600081526020016040526040516114e99493929190611f58565b6020604051602081039080840390855afa15801561150b573d6000803e3d6000fd5b5050506020604051035193505050505b92915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061156257805160ff191683800117855561158f565b8280016001018555821561158f579182015b8281111561158f578251825591602001919060010190611574565b5061159b92915061159f565b5090565b6109e291905b8082111561159b57600081556001016115a5565b805161151b816121a4565b60008083601f8401126115d657600080fd5b5081356001600160401b038111156115ed57600080fd5b60208301915083602082028301111561160557600080fd5b9250929050565b600082601f83011261161d57600080fd5b813561163061162b826120a9565b612083565b81815260209384019390925082018360005b8381101561166e57813586016116588882611734565b8452506020928301929190910190600101611642565b5050505092915050565b600082601f83011261168957600080fd5b813561169761162b826120a9565b915081818352602084019350602081019050838560208402820111156116bc57600080fd5b60005b8381101561166e57816116d28882611783565b84525060209283019291909101906001016116bf565b805161151b816121bb565b60008083601f84011261170557600080fd5b5081356001600160401b0381111561171c57600080fd5b60208301915083600182028301111561160557600080fd5b600082601f83011261174557600080fd5b813561175361162b826120c9565b9150808252602083016020830185838301111561176f57600080fd5b61177a83828461214b565b50505092915050565b803561151b816121c4565b6000602082840312156117a057600080fd5b60006117ac84846115b9565b949350505050565b6000806000604084860312156117c957600080fd5b83356001600160401b038111156117df57600080fd5b6117eb868287016115c4565b935093505060206117fe86828701611783565b9150509250925092565b60008060006060848603121561181d57600080fd5b83356001600160401b0381111561183357600080fd5b61183f8682870161160c565b93505060208401356001600160401b0381111561185b57600080fd5b6118678682870161160c565b92505060406117fe86828701611783565b6000806000806080858703121561188e57600080fd5b84356001600160401b038111156118a457600080fd5b6118b08782880161160c565b94505060208501356001600160401b038111156118cc57600080fd5b6118d88782880161160c565b93505060406118e987828801611783565b92505060608501356001600160401b0381111561190557600080fd5b61191187828801611734565b91505092959194509250565b60006020828403121561192f57600080fd5b81356001600160401b0381111561194557600080fd5b6117ac84828501611678565b6000806040838503121561196457600080fd5b82356001600160401b0381111561197a57600080fd5b61198685828601611678565b92505060206109b985828601611783565b6000602082840312156119a957600080fd5b60006117ac84846116e8565b6000806000806000606086880312156119cd57600080fd5b85356001600160401b038111156119e357600080fd5b6119ef888289016116f3565b955095505060208601356001600160401b03811115611a0d57600080fd5b611a19888289016116f3565b93509350506040611a2c88828901611783565b9150509295509295909350565b60008060008060008060006080888a031215611a5457600080fd5b87356001600160401b03811115611a6a57600080fd5b611a768a828b016116f3565b975097505060208801356001600160401b03811115611a9457600080fd5b611aa08a828b016116f3565b95509550506040611ab38a828b01611783565b93505060608801356001600160401b03811115611acf57600080fd5b611adb8a828b016116f3565b925092505092959891949750929550565b60008060408385031215611aff57600080fd5b82356001600160401b03811115611b1557600080fd5b61198685828601611734565b600060208284031215611b3357600080fd5b60006117ac8484611783565b600080600060408486031215611b5457600080fd5b6000611b608686611783565b93505060208401356001600160401b03811115611b7c57600080fd5b611b88868287016116f3565b92509250509250925092565b60008060408385031215611ba757600080fd5b60006119868585611783565b6000611bbf8383611ccb565b9392505050565b611bcf8161212a565b82525050565b611bcf81612108565b611bcf611bea82612108565b612183565b6000611bfa826120f6565b611c0481856120fa565b935083602082028501611c16856120f0565b8060005b85811015611c505784840389528151611c338582611bb3565b9450611c3e836120f0565b60209a909a0199925050600101611c1a565b5091979650505050505050565b611bcf816109e2565b611bcf611c72826109e2565b6109e2565b611bcf81612135565b6000611c8c83856120fa565b9350611c9983858461214b565b611ca283612194565b9093019392505050565b6000611cb88385612103565b9350611cc583858461214b565b50500190565b6000611cd6826120f6565b611ce081856120fa565b9350611cf0818560208601612157565b611ca281612194565b6000611d04826120f6565b611d0e8185612103565b9350611d1e818560208601612157565b9290920192915050565b6000611d35601c83612103565b7f19457468657265756d205369676e6564204d6573736167653a0a3332000000008152601c0192915050565b6000611d6e6011836120fa565b70494e56414c49445f5349474e415455524560781b815260200192915050565b6000611d9b601d836120fa565b7f5245534f4c5645525f44455441434845445f46524f4d5f444f4d41494e000000815260200192915050565b6000611dd4601f836120fa565b7f53454e4445525f49535f4e4f545f415050524f5645445f4f525f4f574e455200815260200192915050565b6000611e0d6014836120fa565b7329a2a72222a92fa4a9afa727aa2fa6a4a72a22a960611b815260200192915050565b611bcf81612124565b6000611e458286611c66565b602082019150611e558285611bde565b601482019150611e658284611c66565b506020019392505050565b60006117ac828486611cac565b6000611bbf8284611cf9565b6000611e9482611d28565b9150611ea08284611c66565b50602001919050565b6020810161151b8284611bd5565b6020810161151b8284611bc6565b60408101611ed38285611bc6565b611bbf6020830184611c5d565b60408101611ed38285611bd5565b60208082528101611bbf8184611bef565b60408082528101611f108185611bef565b905081810360208301526117ac8184611bef565b60608082528101611f358186611bef565b90508181036020830152611f498185611bef565b90506117ac6040830184611c5d565b60808101611f668287611c5d565b611f736020830186611e30565b611f806040830185611c5d565b611f8d6060830184611c5d565b95945050505050565b60608082528101611fa8818789611c80565b90508181036020830152611fbd818587611c80565b9050611fcc6040830184611c5d565b9695505050505050565b60208082528101611bbf8184611ccb565b60408082528101611ff88185611ccb565b905081810360208301526117ac8184611ccb565b6020808252810161151b81611d61565b6020808252810161151b81611d8e565b6020808252810161151b81611dc7565b6020808252810161151b81611e00565b6020810161151b8284611c5d565b604081016120688285611c5d565b611bbf6020830184611c77565b60408101611ed38285611c5d565b6040518181016001600160401b03811182821017156120a157600080fd5b604052919050565b60006001600160401b038211156120bf57600080fd5b5060209081020190565b60006001600160401b038211156120df57600080fd5b506020601f91909101601f19160190565b60200190565b5190565b90815260200190565b919050565b600061151b82612118565b151590565b6001600160a01b031690565b60ff1690565b600061151b82612140565b600061151b826109e2565b600061151b82612108565b82818337506000910152565b60005b8381101561217257818101518382015260200161215a565b83811115610aea5750506000910152565b600061151b82600061151b8261219e565b601f01601f191690565b60601b90565b6121ad81612108565b81146121b857600080fd5b50565b6121ad81612113565b6121ad816109e256fea365627a7a723158207a1d8dfd286d14fcafd1812a4c44813691ac746a5a23fa711ac5551c9509654d6c6578706572696d656e74616cf564736f6c634300050c0040","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x5":"0x4a3c194eb88966178bfdd81744dddafed611b830"}},"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa":{"nonce":93,"balance":"0x35aac60bbae01d424b","code":"0x","storage":{}}},"best_block_number":"0x5d"} \ No newline at end of file +{"block":{"number":"0x5d","coinbase":"0x0000000000000000000000000000000000000000","timestamp":"0x664cec16","gas_limit":"0x6691b7","basefee":"0x1b818","difficulty":"0x0","prevrandao":"0x0000000000000000000000000000000000000000000000000000000000000000","blob_excess_gas_and_price":{"excess_blob_gas":0,"blob_gasprice":1}},"accounts":{"0x0000000000000000000000000000000000000000":{"nonce":0,"balance":"0xc968d22370860","code":"0x","storage":{}},"0x00e39a5004299871ab3b00fed5a39a715f181d02":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x66":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x67":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xd178b720229c39de617846f84cf9c8d32a63a23d","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0x0458f653495fb8d9bd0e7df468c2bf76d26c7bd9":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f7e83aee1461002d575b5f80fd5b61004061003b3660046105ba565b610054565b604051901515815260200160405180910390f35b5f601482146100a95760405162461bcd60e51b815260206004820152601860248201527f496e76616c696420736861312068617368206c656e6774680000000000000000604482015260640160405180910390fd5b5f6100ec5f85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101599050565b6bffffffffffffffffffffffff191690505f61013c87878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061018a92505050565b6bffffffffffffffffffffffff1916919091149695505050505050565b81515f90610168836014610621565b1115610172575f80fd5b5001602001516bffffffffffffffffffffffff191690565b5f6040518251602084019350604067ffffffffffffffc0600183011601600982820310600181036101bc576040820191505b50776745230100efcdab890098badcfe001032547600c3d2e1f061020d565b5f8383101561020657508082015192829003926020841015610206575f1960208590036101000a0119165b9392505050565b5f5b82811015610514576102228482896101db565b85526102328460208301896101db565b60208601526040818503106001810361024e5760808286038701535b506040830381146001810361026b57602086018051600887021790525b5060405b60808110156102f357858101603f19810151603719820151601f19830151600b198401516002911891909218189081027ffffffffefffffffefffffffefffffffefffffffefffffffefffffffefffffffe1663800000009091047c010000000100000001000000010000000100000001000000010000000116179052600c0161026f565b5060805b61014081101561037c57858101607f19810151606f19820151603f198301516017198401516004911891909218189081027ffffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffc1663400000009091047c0300000003000000030000000300000003000000030000000300000003161790526018016102f7565b50815f805f5b60508110156104ea576014810480156103b257600181146103d957600281146103fe576003811461042857610449565b600160281b8504600160501b86048118600160781b870416189350635a8279999250610449565b600160281b8504600160781b8604600160501b870418189350636ed9eba19250610449565b600160501b8504600160781b8604818117600160281b8804169116179350638f1bbcdc9250610449565b600160281b8504600160781b8604600160501b87041818935063ca62c1d692505b50601f600160bb1b8504168063ffffffe06001609b1b87041617905080840190508063ffffffff8616019050808301905080600160e01b600484028c015104019050600160a01b8102600160281b860417945050600160501b633fffffff600160521b86041663c00000006604000000000000870416170277ffffffff00ffffffff000000000000ffffffff00ffffffff8516179350600181019050610382565b5050509190910177ffffffff00ffffffff00ffffffff00ffffffff00ffffffff169060400161020f565b50600160601b63ffffffff821667ffffffff000000006101008404166bffffffff00000000000000006201000085041663ffffffff60601b630100000086041663ffffffff60801b6401000000008704161717171702945050505050919050565b5f8083601f840112610585575f80fd5b50813567ffffffffffffffff81111561059c575f80fd5b6020830191508360208285010111156105b3575f80fd5b9250929050565b5f805f80604085870312156105cd575f80fd5b843567ffffffffffffffff808211156105e4575f80fd5b6105f088838901610575565b90965094506020870135915080821115610608575f80fd5b5061061587828801610575565b95989497509550505050565b8082018082111561064057634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x06e2822b8856749ed179c77140dbc5f5a27410a4":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063de8f50a11461002d575b5f80fd5b61004061003b36600461051c565b610054565b604051901515815260200160405180910390f35b5f6060805f61009c60048b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506102e79050565b60ff1690508015610166576100f060058261ffff168c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b925061015f6101008260056105c3565b61ffff908116906005906101169085168d6105e5565b61012091906105e5565b8c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b915061021d565b6101a960058b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250929392505061038b9050565b90506101f460078261ffff168c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b925061021a6102048260076105c3565b61ffff908116906007906101169085168d6105e5565b91505b5f606061026084868a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152506103b192505050565b90925090508180156102d757506102856020825161027e91906105e5565b82906103cb565b60028b8b6040516102979291906105f8565b602060405180830381855afa1580156102b2573d5f803e3d5ffd5b5050506040513d601f19601f820116820180604052508101906102d59190610607565b145b9c9b505050505050505050505050565b5f8282815181106102fa576102fa61061e565b016020015160f81c90505b92915050565b825160609061031a8385610632565b1115610324575f80fd5b5f8267ffffffffffffffff81111561033e5761033e610645565b6040519080825280601f01601f191660200182016040528015610368576020820181803683370190505b509050602080820190868601016103808282876103ed565b509095945050505050565b81515f9061039a836002610632565b11156103a4575f80fd5b50016002015161ffff1690565b5f60606103bf838587610442565b91509150935093915050565b81515f906103da836020610632565b11156103e4575f80fd5b50016020015190565b602081106104255781518352610404602084610632565b9250610411602083610632565b915061041e6020826105e5565b90506103ed565b905182516020929092036101000a5f190180199091169116179052565b5f60605f85518551855188888860405160200161046496959493929190610686565b6040516020818303038152906040529050835167ffffffffffffffff81111561048f5761048f610645565b6040519080825280601f01601f1916602001820160405280156104b9576020820181803683370190505b50915083516020830182516020840160055afa925050935093915050565b5f8083601f8401126104e7575f80fd5b50813567ffffffffffffffff8111156104fe575f80fd5b602083019150836020828501011115610515575f80fd5b9250929050565b5f805f805f8060608789031215610531575f80fd5b863567ffffffffffffffff80821115610548575f80fd5b6105548a838b016104d7565b9098509650602089013591508082111561056c575f80fd5b6105788a838b016104d7565b90965094506040890135915080821115610590575f80fd5b5061059d89828a016104d7565b979a9699509497509295939492505050565b634e487b7160e01b5f52601160045260245ffd5b61ffff8181168382160190808211156105de576105de6105af565b5092915050565b81810381811115610305576103056105af565b818382375f9101908152919050565b5f60208284031215610617575f80fd5b5051919050565b634e487b7160e01b5f52603260045260245ffd5b80820180821115610305576103056105af565b634e487b7160e01b5f52604160045260245ffd5b5f81515f5b81811015610678576020818501810151868301520161065e565b505f93019283525090919050565b8681528560208201528460408201525f6106b56106af6106a96060850188610659565b86610659565b84610659565b9897505050505050505056fea164736f6c6343000818000a","storage":{}},"0x0712e8e819712c3bfdb098ce51c87a4ac0296fd8":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x0930ffb2c192b0c9a9dd2372cf7f2845ef39cbb6":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x65":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x66":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xbe92182cab5b84fd18b34881a0c32771e84f5b8b","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c8121905":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x107733fed96c4cd390c944a31f5425a7fb98ae5e":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x65":"0x556e73746f707061626c6520446f6d61696e7300000000000000000000000026","0x66":"0x5544000000000000000000000000000000000000000000000000000000000004","0x133":"0x68747470733a2f2f6578616d706c652e636f6d2f000000000000000000000028","0x134":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x9c74364589a7bce52d7a232f90c98b979577d9ab711dbe7e9fb985471178bff":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf29a433ca043c2d5f13825944af9d019209f338df87172c6b8012dce3044881":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf319a2ef598111826b455194189a27454a0286226eb066e1116f605e0373b37":"0x0","0x1257bbdf5bed452b3eda1d974a9839972d4d54d7fb1cde6a652e653346cc29b8":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x12c033f2252861b1bd15e9b5c71ef1cf26ca53de15eabc3b49e06f596e8755ec":"0x0","0x1348552952ac59b1c2522e84f684e36775420b449eddcdbd28f217183ed58b09":"0x0","0x149026695ebdd2bd6be0a7006aec5d10ddffbe46be181e4468980ea83c004fe9":"0x0","0x14c854a78d51371251661a408306c75d2515b5d509b295a58205e48267082bdc":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x18f06622a1abedc7bb78fcc98b2375188aef6c03b9247beee780b0b095d60285":"0x0","0x201ef5e312d372e2aeac4cf173b46ad2985127c7381f4f9acae5ebbd3a5e3861":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x2215c0abaeffcb5feae8a439b3185f8fba5dd6d97529a56c7609cd41fafdf5f1":"0x1","0x23513200931f98893f46373666c13964c7a821c5b40da7951b921629acf02735":"0x0","0x23f87654b79c6db28828f317e47d0c8deb9eaa2ea4e213fef901836c85036bf3":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x2e4566d865f2e159531492d7643e25e502917762b29082282ab9dfee8fbf54c7":"0x0","0x31fc31c15d389c5908095d314bb8b258352d51e18ac8a2f7fe15f3a0af519145":"0x0","0x3467fdbb447be3074b11c625b56e54d7ab44f3804bef205b07dd436d707d06d5":"0x0","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x62b11ad5f582a5c5d378fb310125b030042554f1","0x3cd80e7291e5f6dffa9af6eb70d47145a8fdd40acb8d09dfd0cf374e8c239b37":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x3f86c4990e663ffa5011ed38824fca68af7e0592eb22f41aebdec0ce84ee672e":"0x0","0x406aa3bf31381c8a323679af48792dfa2e7aa09dd0eb919e307dc4bf84216ff6":"0x0","0x47ce17acd30cc86e021ac7b23be8138ea767f6da503362aac5888a0679270eed":"0x0","0x4a7983c36f64e6df4d467cf706c128c273d30c24bbb172e251a5740624cc0bd3":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x4c42d98041cda7cb7d56b5d04731bd436366eb9f05c30f43671f1d1e2c0b0fa4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x55926eed7087c8cbfa1492f6d367f5e4c14c8d8cd59e2918c37184091369efb1":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x5b20f40cb5e9e634a90df9a72b516c11cc52281a4d1b7b67e672e2fe544ff22f":"0x0","0x6dac3e1cfae338e10c9c2f5000f6256d09afa83708761042001cea734f470ac1":"0x0","0x6defc32a546a6fb1b745bd1bb04e27085e94f01d7ef79587aee2c80853c43a53":"0x0","0x760b245be050a725a39b4fc089ad474a5fd40efa17101e112d30195d590779b4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x7bee59fcac76da32acb23def57eaaf959a4372a4fc180978fbd54f7a4c4b2f3d":"0x0","0x804aee9448e0b539a009ee7c6dd57e686c72e7b182e9622a42922b245a97e61e":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x825f7f8567cfd669c3beab41edff07d4aa51436123deeb0d3623b6a8fdec893c":"0x0","0x8717a3236e6a948df94444f035834fa8f7c5ee663a29f3580f3ef43ab051d6bd":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8a34e37883baf84417a33bb02eec8d1e43e363f617029800ff166614df3f112f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8bd1acdc45b63f1edf5db0b1444f1c4a6f82bf0a5a0a7231c2dd7b76a2b1e35c":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87":"0x0","0x8ed4e9fbdf86edd9f3eb1c8d4fbfc53a2eb863faf4cf5e0d2b307c0b33030091":"0x0","0x8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x90d72780b77edcd0c8daffbac0b21264679e851b734cb090e2b144eb3a28bb98":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x93fc964857984ff804a65eaceac4062669948f2b651ddc6b71373ad142bf45e0":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x9770fa903e700367e0306ab8fd70a2bb4f049417d341a2f8a2409d8d6a2218d1":"0x0","0xb1016fe231c2ed9dba8c95d2658191823b4b9ffa61a7aea530802c6b2ff27c41":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xbe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafe":"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f","0xbe7c5c707db1c91bd2c84880bb1e177b65886d295d9a62df8edfe38f8066cc81":"0x0","0xc3cd64a46de7309013ddb93a16a3024c2e46fb931e4744edf2610fb119f716f5":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xc563f9d3175978a619bae1a8175d3ea4be91d3890345085c5eb16f83b678a3d9":"0x0","0xc5b5cdb7b939f9d661f58f28c37e10cf71d45dacfea2581c88ae4a17aaf55e6e":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xd386775169d9e0716e9b5b08561984726edaa9febd0ca8e5468ecffa112078c7":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xe3b736cdcc6a09d7e3a05ffb63b11f11c91958d861443c3409d3fd863e8217bd":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xe3e5b75e3dff543bfbfe5b494e4e3243b4d9d0b3d794725cea46c28fe6be50e4":"0x0","0xe7d61626cac95282d296ee7ab5958e3e72e32eb959a7cab1d37c0f9d6d69c18a":"0x1a","0xeca5e1ccaa645ce2be97a867a1f8aeeb63ea833aeb009c0df0553b42b30c683f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf08305746cdba1d0eaa65036694838a3db122973267ffc57739d605c320c680a":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf0d566acc03395f71b37890f455d51d93197adf754ea72aba21427dc66b437df":"0x0","0xf230898ba4fe40c52f958d03013d995f822e25a5d4fae43bbdc6e92623cea0bd":"0x0","0xf245a9962043f44f4af98f9952a3bd29d91eb05418e4bb567b9de8f27e239b13":"0x0","0xf2a19ade13962e8675aecf2fbe51913877912f9e48e899806b6e06e82f9a980f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf2fab50b0b53245ddfa1bcfcdf4c73e209d6921dad704d173cf04cbbadc8e346":"0x0","0xfa6f3ee10d719cb3457d10c539ff3d77b8e56852ea62f68b2f9f85ad691ed6b4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xfff3abb219acc6ef4eed6e93a5682023229370196f352cdf3a71a88d881e3487":"0x0"}},"0x11dd97b7ca847dfb6504e61b7b9eb30f55e554a0":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a424740014610090575b600080fd5b610059610054366004610ba9565b6100b3565b6040516100669190610c98565b60405180910390f35b61008261007d366004610cab565b6101ce565b604051908152602001610066565b6100a361009e366004610ba9565b610332565b6040519015158152602001610066565b606060005a6001546040805163b3f9e4cb60e01b81529088013560048201529192506000916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561010a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061012e9190610cd9565b90506101c26101406020880188610cf6565b8260408901358561015460608c018c610d13565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8f018190048102820181019092528d815292508d91508c90819084018382808284376000920191909152506103fb92505050565b925050505b9392505050565b60025460015460405163b3f9e4cb60e01b8152600481018490526000926001600160a01b0390811692169063b3f9e4cb90602401602060405180830381865afa92505050801561023b575060408051601f3d908101601f1916820190925261023891810190610cd9565b60015b156102435790505b6001600160a01b0381163b156102c557604051636ccbae5f60e01b81526004810184905281906001600160a01b03821690636ccbae5f90602401602060405180830381865afa9250505080156102b6575060408051601f3d908101601f191682019092526102b391810190610d5a565b60015b156102c357949350505050565b505b600254604051636ccbae5f60e01b8152600481018590526001600160a01b0390911690636ccbae5f90602401602060405180830381865afa15801561030e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101c79190610d5a565b6001546040805163b3f9e4cb60e01b815290850135600482015260009182916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa158015610383573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103a79190610cd9565b90506103f26103b586610e0b565b8286868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506104d392505050565b95945050505050565b6060600080876001600160a01b0316866104178b8a898961051f565b6040516104249190610eb5565b60006040518083038160008787f1925050503d8060008114610462576040519150601f19603f3d011682016040523d82523d6000602084013e610467565b606091505b509092509050610478603f87610ed1565b5a1161048657610486610ef3565b6104c682826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506105d4565b9998505050505050505050565b60006104e084848461060d565b8015610514575060608401516020908101516001600160e01b031990811660009081529182905260409091205460e01b1615155b949350505050565b50565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036105b15760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526105c982828661074c565b979650505050505050565b606083156105e35750816101c7565b8251156105f35782518084602001fd5b8160405162461bcd60e51b81526004016105a89190610c98565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015610654573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106789190610d5a565b905060006107268660600151805190602001208688602001516040516020016106c69392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156101c2575085516101c2906001600160a01b03168286610935565b60606001600160e01b0319841663b87abc1160e01b036107cd5760008380602001905181019061077c9190610d5a565b9050848184604051602401610792929190610f09565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915291506101c79050565b6001600160e01b0319841663c597407360e01b03610859576000806000858060200190518101906107fe9190610f67565b925092509250868383838860405160240161081c9493929190610fd4565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293506101c792505050565b6001600160e01b031984166311ed383160e31b036108a85760008060008580602001905181019061088a91906110a6565b925092509250868383838860405160240161081c9493929190611157565b6001600160e01b031984166328d55f9b60e21b036101c7576000806000858060200190518101906108d991906110a6565b92509250925086838383886040516024016108f79493929190611157565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293505050509392505050565b60008060006109448585610a77565b9092509050600081600481111561095d5761095d61117c565b14801561097b5750856001600160a01b0316826001600160a01b0316145b1561098b576001925050506101c7565b600080876001600160a01b0316631626ba7e60e01b88886040516024016109b3929190610f09565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516109f19190610eb5565b600060405180830381855afa9150503d8060008114610a2c576040519150601f19603f3d011682016040523d82523d6000602084013e610a31565b606091505b5091509150818015610a44575080516020145b8015610a6b57508051630b135d3f60e11b90610a699083016020908101908401610d5a565b145b98975050505050505050565b6000808251604103610aad5760208301516040840151606085015160001a610aa187828585610abc565b94509450505050610ab5565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610af35750600090506003610ba0565b8460ff16601b14158015610b0b57508460ff16601c14155b15610b1c5750600090506004610ba0565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610b70573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610b9957600060019250925050610ba0565b9150600090505b94509492505050565b600080600060408486031215610bbe57600080fd5b833567ffffffffffffffff80821115610bd657600080fd5b9085019060808288031215610bea57600080fd5b90935060208501359080821115610c0057600080fd5b818601915086601f830112610c1457600080fd5b813581811115610c2357600080fd5b876020828501011115610c3557600080fd5b6020830194508093505050509250925092565b60005b83811015610c63578181015183820152602001610c4b565b50506000910152565b60008151808452610c84816020860160208601610c48565b601f01601f19169290920160200192915050565b6020815260006101c76020830184610c6c565b600060208284031215610cbd57600080fd5b5035919050565b6001600160a01b038116811461051c57600080fd5b600060208284031215610ceb57600080fd5b81516101c781610cc4565b600060208284031215610d0857600080fd5b81356101c781610cc4565b6000808335601e19843603018112610d2a57600080fd5b83018035915067ffffffffffffffff821115610d4557600080fd5b602001915036819003821315610ab557600080fd5b600060208284031215610d6c57600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610dac57610dac610d73565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ddb57610ddb610d73565b604052919050565b600067ffffffffffffffff821115610dfd57610dfd610d73565b50601f01601f191660200190565b600060808236031215610e1d57600080fd5b610e25610d89565b8235610e3081610cc4565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610e6057600080fd5b840136601f820112610e7157600080fd5b8035610e84610e7f82610de3565b610db2565b8181523684838501011115610e9857600080fd5b818484018583013760009181019093015250606082015292915050565b60008251610ec7818460208701610c48565b9190910192915050565b600082610eee57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b8281526040602082015260006105146040830184610c6c565b600082601f830112610f3357600080fd5b8151610f41610e7f82610de3565b818152846020838601011115610f5657600080fd5b610514826020830160208701610c48565b600080600060608486031215610f7c57600080fd5b835167ffffffffffffffff80821115610f9457600080fd5b610fa087838801610f22565b94506020860151915080821115610fb657600080fd5b50610fc386828701610f22565b925050604084015190509250925092565b608081526000610fe76080830187610c6c565b8281036020840152610ff98187610c6c565b905084604084015282810360608401526105c98185610c6c565b600082601f83011261102457600080fd5b8151602067ffffffffffffffff8083111561104157611041610d73565b8260051b611050838201610db2565b938452858101830193838101908886111561106a57600080fd5b84880192505b85831015610a6b578251848111156110885760008081fd5b6110968a87838c0101610f22565b8352509184019190840190611070565b6000806000606084860312156110bb57600080fd5b835167ffffffffffffffff808211156110d357600080fd5b6110df87838801611013565b945060208601519150808211156110f557600080fd5b50610fc386828701611013565b600081518084526020808501808196508360051b8101915082860160005b8581101561114a578284038952611138848351610c6c565b98850198935090840190600101611120565b5091979650505050505050565b60808152600061116a6080830187611102565b8281036020840152610ff98187611102565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x2":"0xf8c26340c1eaea6c7ff1760b25005e1306953572","0x1e74f978992d7d64ddac400bd4aae9eefd60fa0b8456650273f5f50148803323":"0xa3557e6c","0x23c84c23be8f829809d1b1502c647c6c59fb6b2345b163a2ca3e7d4f9855975c":"0x8f69c188","0xa0286316c9d3cb00f4f54a9f1096cefaa1748bb5a5395e7fa1563568ebb3e6c3":"0xb87abc11","0xdc138de224807be243ee38fe9e746cce5d437a256b87be90b80240e0811ad043":"0xc5974073"}},"0x145908bbcfc7b258e4d4d9a586f6e3249ae80216":{"nonce":1,"balance":"0x0","code":"0x3d5c","storage":{}},"0x17cda4e23f7237277952e075b1c48467aabfacc0":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c806368f9dab21461002d575b5f80fd5b61004061003b36600461088b565b610052565b60405190815260200160405180910390f35b5f61006f6040518060400160405280606081526020015f81525090565b61008e61007c858861090d565b61008790601061090d565b82906101d1565b506100d085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250859392505061023a9050565b5061011287878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250859392505061023a9050565b505f610120825f0151610266565b905083156101bc5760408051808201909152606081525f602090910181905282515261014c825f610650565b5061018e88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250869392505061023a9050565b505f5b848110156101ba576101a4835f8461067f565b5082516101b090610266565b9150600101610191565b505b6001600160601b031916979650505050505050565b60408051808201909152606081525f60208201526101f0602083610920565b1561021857610200602083610920565b61020b90602061093f565b610215908361090d565b91505b506020808301829052604080518085525f815283019091019052815b92915050565b60408051808201909152606081525f602082015261025f83845f0151518485516106b2565b9392505050565b5f6040518251602084019350604067ffffffffffffffc060018301160160098282031060018103610298576040820191505b50776745230100efcdab890098badcfe001032547600c3d2e1f06102e8565b5f8383101561025f5750808201519282900392602084101561025f575f1960208590036101000a0119169392505050565b5f5b828110156105ef576102fd8482896102b7565b855261030d8460208301896102b7565b6020860152604081850310600181036103295760808286038701535b506040830381146001810361034657602086018051600887021790525b5060405b60808110156103ce57858101603f19810151603719820151601f19830151600b198401516002911891909218189081027ffffffffefffffffefffffffefffffffefffffffefffffffefffffffefffffffe1663800000009091047c010000000100000001000000010000000100000001000000010000000116179052600c0161034a565b5060805b61014081101561045757858101607f19810151606f19820151603f198301516017198401516004911891909218189081027ffffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffc1663400000009091047c0300000003000000030000000300000003000000030000000300000003161790526018016103d2565b50815f805f5b60508110156105c55760148104801561048d57600181146104b457600281146104d9576003811461050357610524565b600160281b8504600160501b86048118600160781b870416189350635a8279999250610524565b600160281b8504600160781b8604600160501b870418189350636ed9eba19250610524565b600160501b8504600160781b8604818117600160281b8804169116179350638f1bbcdc9250610524565b600160281b8504600160781b8604600160501b87041818935063ca62c1d692505b50601f600160bb1b8504168063ffffffe06001609b1b87041617905080840190508063ffffffff8616019050808301905080600160e01b600484028c015104019050600160a01b8102600160281b860417945050600160501b633fffffff600160521b86041663c00000006604000000000000870416170277ffffffff00ffffffff000000000000ffffffff00ffffffff851617935060018101905061045d565b5050509190910177ffffffff00ffffffff00ffffffff00ffffffff00ffffffff16906040016102ea565b50600160601b63ffffffff821667ffffffff000000006101008404166bffffffff00000000000000006201000085041663ffffffff60601b630100000086041663ffffffff60801b6401000000008704161717171702945050505050919050565b60408051808201909152606081525f602082015282515161025f9084906001600160601b031985166014610798565b60408051808201909152606081525f60208201526106aa84846001600160601b031985166014610798565b949350505050565b60408051808201909152606081525f602082015282518211156106d3575f80fd5b60208501516106e2838661090d565b1115610715576107158561070587602001518786610700919061090d565b610813565b610710906002610952565b610829565b5f808651805187602083010193508088870111156107335787860182525b505050602084015b60208410610773578051825261075260208361090d565b915061075f60208261090d565b905061076c60208561093f565b935061073b565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b60408051808201909152606081525f602082015260208501516107bb858461090d565b11156107cf576107cf85610705868561090d565b5f6001836101000a0390508260200360080284901c93508551838682010185831982511617815250805184870111156108085783860181525b509495945050505050565b5f81831115610823575081610234565b50919050565b815161083583836101d1565b50610840838261023a565b50505050565b5f8083601f840112610856575f80fd5b50813567ffffffffffffffff81111561086d575f80fd5b602083019150836020828501011115610884575f80fd5b9250929050565b5f805f805f6060868803121561089f575f80fd5b853567ffffffffffffffff808211156108b6575f80fd5b6108c289838a01610846565b909750955060208801359150808211156108da575f80fd5b506108e788828901610846565b96999598509660400135949350505050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610234576102346108f9565b5f8261093a57634e487b7160e01b5f52601260045260245ffd5b500690565b81810381811115610234576102346108f9565b8082028115828204841417610234576102346108f956fea164736f6c6343000818000a","storage":{}},"0x19356cc2300833e690088a5a09a2044a3cc2a1e2":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x229c56b7805ab5935a883207f6a6bd5847e65aee":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106102ae5760003560e01c8063906cecc111610175578063b9998a24116100dc578063d547741f11610095578063f2fde38b1161006f578063f2fde38b14610892578063f5243bc4146108b2578063f940e385146108d2578063ffa1ad74146108f257600080fd5b8063d547741f1461083f578063d7db74c71461085f578063ec5273891461087257600080fd5b8063b9998a241461077d578063cc2a9a5b1461079d578063cc2c3fc4146107bd578063ceeb4f50146107dd578063d1f5692c146107fd578063d53913931461081d57600080fd5b8063a3a3f7f61161012e578063a3a3f7f614610690578063a3f4df7e146106b0578063a849d65c146106fd578063aa271e1a1461071d578063b0aa98c71461073d578063b3ab15fb1461075d57600080fd5b8063906cecc1146105e657806391d1485414610606578063983b2d5614610626578063986502751461064657806399e0dd7c1461065b578063a217fddf1461067b57600080fd5b80635b6fa8db11610219578063715018a6116101d2578063715018a61461054b57806371e2a6571461056057806377a2a5891461058057806381c81d35146105a05780638456cb59146105b35780638da5cb5b146105c857600080fd5b80635b6fa8db146104a35780635c975abb146104c35780635cd7e3b3146104d85780635e22cd86146104f85780635fc1964f14610518578063634486da1461053857600080fd5b80633092afd51161026b5780633092afd5146103a857806336568abe146103c85780633f41b614146103e85780633f4ba83a1461042057806351cff8d914610435578063572b6c051461045557600080fd5b806301ffc9a7146102b35780631edb948e146102e857806320c5429b1461030a578063248a9ca31461032a578063268b15ed146103685780632f2ff15d14610388575b600080fd5b3480156102bf57600080fd5b506102d36102ce366004613dc4565b610923565b60405190151581526020015b60405180910390f35b3480156102f457600080fd5b50610308610303366004613e13565b61095a565b005b34801561031657600080fd5b50610308610325366004613e3f565b610b03565b34801561033657600080fd5b5061035a610345366004613e3f565b60009081526097602052604090206001015490565b6040519081526020016102df565b34801561037457600080fd5b50610308610383366004613e99565b610c26565b34801561039457600080fd5b506103086103a3366004613f04565b610cb9565b3480156103b457600080fd5b506103086103c3366004613f34565b610ce3565b3480156103d457600080fd5b506103086103e3366004613f04565b610cf7565b3480156103f457600080fd5b5060c954610408906001600160a01b031681565b6040516001600160a01b0390911681526020016102df565b34801561042c57600080fd5b50610308610d85565b34801561044157600080fd5b50610308610450366004613f34565b610d97565b34801561046157600080fd5b506102d3610470366004613f34565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546001600160a01b0390811691161490565b3480156104af57600080fd5b5060cc54610408906001600160a01b031681565b3480156104cf57600080fd5b506102d3610e37565b3480156104e457600080fd5b506103086104f3366004613fa3565b610e4d565b34801561050457600080fd5b50610308610513366004614062565b6110b1565b34801561052457600080fd5b5061030861053336600461419c565b6112f6565b610308610546366004613f34565b61133e565b34801561055757600080fd5b50610308611401565b34801561056c57600080fd5b5061030861057b36600461419c565b611413565b34801561058c57600080fd5b5060ce54610408906001600160a01b031681565b6103086105ae366004613f34565b61145b565b3480156105bf57600080fd5b506103086114d8565b3480156105d457600080fd5b506033546001600160a01b0316610408565b3480156105f257600080fd5b5061030861060136600461423a565b6114e8565b34801561061257600080fd5b506102d3610621366004613f04565b61156e565b34801561063257600080fd5b50610308610641366004613f34565b611599565b34801561065257600080fd5b506103086115aa565b34801561066757600080fd5b50610308610676366004614295565b6115c4565b34801561068757600080fd5b5061035a600081565b34801561069c57600080fd5b506103086106ab3660046142d6565b6116ab565b3480156106bc57600080fd5b506106f0604051806040016040528060148152602001732aa7299d1026b4b73a34b7339026b0b730b3b2b960611b81525081565b6040516102df919061437c565b34801561070957600080fd5b5060cb54610408906001600160a01b031681565b34801561072957600080fd5b506102d3610738366004613f34565b6116f4565b34801561074957600080fd5b506102d3610758366004613e3f565b61170e565b34801561076957600080fd5b50610308610778366004613f34565b61176c565b34801561078957600080fd5b50610308610798366004613f34565b611796565b3480156107a957600080fd5b506103086107b836600461438f565b6117db565b3480156107c957600080fd5b5060ca54610408906001600160a01b031681565b3480156107e957600080fd5b506103086107f8366004614411565b611cd2565b34801561080957600080fd5b506103086108183660046144c6565b611d76565b34801561082957600080fd5b5061035a600080516020614ef483398151915281565b34801561084b57600080fd5b5061030861085a366004613f04565b611e2d565b61030861086d3660046144fb565b611e52565b34801561087e57600080fd5b5061030861088d366004613e3f565b611fe2565b34801561089e57600080fd5b506103086108ad366004613f34565b612054565b3480156108be57600080fd5b506103086108cd3660046145f0565b612070565b3480156108de57600080fd5b506103086108ed366004614708565b612222565b3480156108fe57600080fd5b506106f060405180604001604052806005815260200164302e352e3160d81b81525081565b60006001600160e01b03198216637965db0b60e01b148061095457506301ffc9a760e01b6001600160e01b03198316145b92915050565b61096561073861239e565b61098a5760405162461bcd60e51b815260040161098190614736565b60405180910390fd5b60c95460405163baef73e960e01b8152600481018390526000916001600160a01b03169063baef73e990602401602060405180830381865afa1580156109d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109f8919061476b565b9050806001600160401b0316600003610a235760405162461bcd60e51b815260040161098190614788565b806001600160401b0316836001600160401b031611610a905760405162461bcd60e51b815260206004820152602360248201527f4d696e74696e674d616e616765723a204558504952595f4e4f545f455854454e60448201526211115160ea1b6064820152608401610981565b60c954604051631fb9763760e11b81526001600160401b0385166004820152602481018490526001600160a01b0390911690633f72ec6e906044015b600060405180830381600087803b158015610ae657600080fd5b505af1158015610afa573d6000803e3d6000fd5b50505050505050565b610b0e61073861239e565b610b2a5760405162461bcd60e51b815260040161098190614736565b60c95460405163baef73e960e01b8152600481018390526001600160a01b039091169063baef73e990602401602060405180830381865afa158015610b73573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b97919061476b565b6001600160401b0316600003610bbf5760405162461bcd60e51b815260040161098190614788565b60c954604051637eee288d60e01b8152306004820152602481018390526001600160a01b0390911690637eee288d90604401600060405180830381600087803b158015610c0b57600080fd5b505af1158015610c1f573d6000803e3d6000fd5b5050505050565b8282828080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250610c6993508592508491506123ad565b610c71610e37565b15610c8e5760405162461bcd60e51b8152600401610981906147cb565b6060610afa610c9b61239e565b610cae88610ca98989612584565b6125b0565b8384600060016126c1565b600082815260976020526040902060010154610cd481612c15565b610cde8383612c26565b505050565b610ceb612cad565b610cf481612d26565b50565b610cff61239e565b6001600160a01b0316816001600160a01b031614610d775760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610981565b610d818282612d3e565b5050565b610d8d612cad565b610d95612dc3565b565b610d9f612cad565b6001600160a01b038116610db257600080fd5b60405147906001600160a01b0383169082156108fc029083906000818181858888f19350505050158015610dea573d6000803e3d6000fd5b50604080516001600160a01b03841681526020810183905260008183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a15050565b600080516020614ed48339815191525460ff1690565b610e5786886147f5565b8051600203610e8c57610e6b61073861239e565b610e875760405162461bcd60e51b8152600401610981906148bf565b610fd1565b6000610e9782612e6b565b60c9549092506001600160a01b0316905063430c2081610eb561239e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015610f00573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f249190614903565b80610fb3575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa158015610f7d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fa19190614903565b8015610fb35750610fb361073861239e565b610fcf5760405162461bcd60e51b815260040161098190614920565b505b610fdb87896147f5565b6000600282511015610fff5760405162461bcd60e51b81526004016109819061496f565b6110546110336000846001865161101691906149ca565b81518110611026576110266149dd565b6020026020010151612ea6565b83600081518110611046576110466149dd565b6020026020010151836123ad565b61105c610e37565b156110795760405162461bcd60e51b8152600401610981906147cb565b6110a38b6110878b8d6147f5565b6110918a8c6147f5565b61109b898b6147f5565b6000896126c1565b505050505050505050505050565b6110bb87896147f5565b80516002036110f0576110cf61073861239e565b6110eb5760405162461bcd60e51b8152600401610981906148bf565b611235565b60006110fb82612e6b565b60c9549092506001600160a01b0316905063430c208161111961239e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015611164573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111889190614903565b80611217575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa1580156111e1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112059190614903565b8015611217575061121761073861239e565b6112335760405162461bcd60e51b815260040161098190614920565b505b61123f888a6147f5565b836002825110156112625760405162461bcd60e51b81526004016109819061496f565b6112796110336000846001865161101691906149ca565b611281610e37565b1561129e5760405162461bcd60e51b8152600401610981906147cb565b60028a146112be5760405162461bcd60e51b8152600401610981906149f3565b6112e78c6112cc8c8e6147f5565b6112d68b8d6147f5565b6112e08a8c6147f5565b89896126c1565b50505050505050505050505050565b6112fe612cad565b60005b8151811015610d815761132c82828151811061131f5761131f6149dd565b6020026020010151612d26565b8061133681614a39565b915050611301565b61134961073861239e565b6113655760405162461bcd60e51b815260040161098190614736565b6001600160a01b0381166113bb5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610981565b6113c481612f5a565b6113cc6115aa565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610d81573d6000803e3d6000fd5b611409612cad565b610d956000612f72565b61141b612cad565b60005b8151811015610d815761144982828151811061143c5761143c6149dd565b6020026020010151612f5a565b8061145381614a39565b91505061141e565b61146661073861239e565b6114825760405162461bcd60e51b815260040161098190614736565b6001600160a01b0381166113c45760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610981565b6114e0612cad565b610d95612fc4565b8282828080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525061152b93508592508491506123ad565b611533610e37565b156115505760405162461bcd60e51b8152600401610981906147cb565b606061156487610cae88610ca98989612584565b5050505050505050565b60009182526097602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6115a1612cad565b610cf481612f5a565b610d95600080516020614ef48339815191526103e361239e565b6115cc612cad565b60c954604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906115fe9085908590600401614a52565b600060405180830381600087803b15801561161857600080fd5b505af115801561162c573d6000803e3d6000fd5b505060cb546001600160a01b0316159150610d8190505760cb54604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906116759085908590600401614a52565b600060405180830381600087803b15801561168f57600080fd5b505af11580156116a3573d6000803e3d6000fd5b505050505050565b6116b3612cad565b610cde83838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525085925061302c915050565b6000610954600080516020614ef48339815191528361156e565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd696020820152908101829052600090611762906060015b6040516020818303038152906040528051906020012090565b5460ff1692915050565b611774612cad565b60ce80546001600160a01b0319166001600160a01b0392909216919091179055565b61179e612cad565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e80546001600160a01b0319166001600160a01b03831617905550565b600054610100900460ff16158080156117fb5750600054600160ff909116105b806118155750303b158015611815575060005460ff166001145b6118785760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610981565b6000805460ff19166001179055801561189b576000805461ff0019166101001790555b60c980546001600160a01b03199081166001600160a01b038a81169190911790925560ca8054821689841617905560cb8054821688841617905560cc8054821687841617905560ce80549091169185169190911790556118f961314c565b611901613183565b61190a826131bc565b6119126131e3565b6040805161036081018252600661032082018181526563727970746f60d01b610340840152825282518084018452818152651dd85b1b195d60d21b602082810191909152808401919091528351808501855260018152600f60fb1b8183015283850152835180850185526003808252621b999d60ea1b82840152606085019190915284518086018652600a815269313637b1b5b1b430b4b760b11b818401526080850152845180860186526007808252663134ba31b7b4b760c91b8285015260a0860191909152855180870187528281526207070760eb1b8185015260c0860152855180870187528281526264616f60e81b8185015260e086015285518087018752828152621e9a5b60ea1b8185015261010086015285518087018752908152663837b63cb3b7b760c91b8184015261012085015284518086018652600b81526a756e73746f707061626c6560a81b81840152610140850152845180860186528381526535b632bb32b960d11b8184015261016085015284518086018652600280825261686960f01b8285015261018086019190915285518087018752848152656b726573757360d01b818501526101a086015285518087018752600580825264616e696d6560d81b828601526101c087019190915286518088018852818152646d616e676160d81b818601526101e087015286518088018852600981526862696e616e6365757360b81b8186015261020087015286518088018852818152647265616c6d60d81b818601526102208701528651808801885291825261676f60f01b82850152610240860191909152855180870187526008815267185b1d1a5b5a5cdd60c21b818501526102608601528551808701875290815264707564677960d81b81840152610280850152845180860186528381526530bab9ba34b760d11b818401526102a08501528451808601865292835265189a5d19d95d60d21b838301526102c08401929092528351808501855291825262706f6760e81b828201526102e083019190915282518084019093526004835263636c617960e01b9083015261030081019190915260005b6019811015611c5c57611c4a828260198110611c3e57611c3e6149dd565b6020020151600061302c565b80611c5481614a39565b915050611c20565b50611c8360405180604001604052806003815260200162636f6d60e81b815250600161302c565b508015610afa576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050505050565b8686868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250611d1593508592508491506123ad565b611d1d610e37565b15611d3a5760405162461bcd60e51b8152600401610981906147cb565b611d698a611d4c8b610ca98c8c612584565b611d56888a6147f5565b611d6087896147f5565b600060016126c1565b5050505050505050505050565b611d7e612cad565b60005b81811015610cde5760c9546001600160a01b03166350960239848484818110611dac57611dac6149dd565b9050602002016020810190611dc19190613f34565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401600060405180830381600087803b158015611e0257600080fd5b505af1158015611e16573d6000803e3d6000fd5b505050508080611e2590614a39565b915050611d81565b600082815260976020526040902060010154611e4881612c15565b610cde8383612d3e565b611e5c898b6147f5565b6000600282511015611e805760405162461bcd60e51b81526004016109819061496f565b611e976110336000846001865161101691906149ca565b611e9f610e37565b15611ebc5760405162461bcd60e51b8152600401610981906147cb565b60028b14611edc5760405162461bcd60e51b8152600401610981906149f3565b611f228d8d8d898960008a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061322392505050565b84341015611f725760405162461bcd60e51b815260206004820181905260248201527f4d696e74696e674d616e616765723a204e4f545f454e4f5547485f46554e44536044820152606401610981565b611f848d8d8d8d8d8d8d8c60006133e3565b843411156112e757611f9461239e565b6001600160a01b03166108fc611faa87346149ca565b6040518115909202916000818181858888f19350505050158015611fd2573d6000803e3d6000fd5b5050505050505050505050505050565b611fea612cad565b611ff38161349f565b61200f5760405162461bcd60e51b815260040161098190614a81565b600081815260cd6020526040812061202691613d76565b60405181907f0aa1aff0f830e739d86baf0e6624d6763da02f7733575e0e463886cd062dea6a90600090a250565b61205c612cad565b612065816134c5565b610cf460008261353b565b61207a8a8c6147f5565b600060028251101561209e5760405162461bcd60e51b81526004016109819061496f565b6120b56110336000846001865161101691906149ca565b6120bd610e37565b156120da5760405162461bcd60e51b8152600401610981906147cb565b60028c146120fa5760405162461bcd60e51b8152600401610981906149f3565b61213f8e8e8e8a898b8a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061322392505050565b856001600160a01b03166323b872dd61215661239e565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152306024820152604481018890526064016020604051808303816000875af11580156121a9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121cd9190614903565b6122115760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610981565b611fd28e8e8e8e8e8e8e8c8e6133e3565b61222a612cad565b6040516370a0823160e01b81523060048201526000906001600160a01b038416906370a0823190602401602060405180830381865afa158015612271573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122959190614ac3565b60405163a9059cbb60e01b81526001600160a01b038481166004830152602482018390529192509084169063a9059cbb906044016020604051808303816000875af11580156122e8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061230c9190614903565b6123505760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610981565b604080516001600160a01b0384811682526020820184905285168183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a1505050565b60006123a8613545565b905090565b6123b68361349f565b6123d25760405162461bcd60e51b815260040161098190614a81565b600083815260cf602052604090205460ff1615156001600160401b03821615151461244e5760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544c445f455850495241424c455f4d496044820152650a69a82a886960d31b6064820152608401610981565b60006124818360408051808201825260008082526020918201528151808301909252825182529182019181019190915290565b9050600a81600001511115612529576124ac6124a0826000600a61358b565b80516020909101512090565b7fb551e0305c8163b812374b8e78b577c77f226f6f10c5ad03e52699578fbc34b8036125295760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544f4b454e5f4c4142454c5f50524f4860448201526512509255115160d21b6064820152608401610981565b612532836135ca565b61257e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a204c4142454c5f494e56414c49440000006044820152606401610981565b50505050565b60608282604051602001612599929190614adc565b604051602081830303815290604052905092915050565b604080516002808252606082810190935260009190816020015b60608152602001906001900390816125ca57905050905082816000815181106125f5576125f56149dd565b602002602001018190525060cd6000858152602001908152602001600020805461261e90614b04565b80601f016020809104026020016040519081016040528092919081815260200182805461264a90614b04565b80156126975780601f1061266c57610100808354040283529160200191612697565b820191906000526020600020905b81548152906001019060200180831161267a57829003601f168201915b5050505050816001815181106126af576126af6149dd565b60209081029190910101529392505050565b60008060006126cf88612e6b565b915091508380156126e1575060028851115b8015612763575060c9546040516331a9108f60e11b8152600481018390526001600160a01b038b8116921690636352211e90602401602060405180830381865afa158015612733573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127579190614b3e565b6001600160a01b031614155b156127c35760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e616765723a20524556455253455f5245434f52445f4e60448201526913d517d0531313d5d15160b21b6064820152608401610981565b60c954604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401602060405180830381865afa15801561280c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128309190614903565b8015612921575060c9546040516331a9108f60e11b81526004810184905230916001600160a01b031690636352211e90602401602060405180830381865afa158015612880573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128a49190614b3e565b6001600160a01b03161480612921575060c95460405163d9548e5360e01b8152600481018490526001600160a01b039091169063d9548e5390602401602060405180830381865afa1580156128fd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129219190614903565b15612a12576001600160401b038516156129a35760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b15801561298a57600080fd5b505af115801561299e573d6000803e3d6000fd5b505050505b60c954604051630fb8df0360e11b81526001600160a01b0390911690631f71be06906129db908c908c908c908c908b90600401614bb0565b600060405180830381600087803b1580156129f557600080fd5b505af1158015612a09573d6000803e3d6000fd5b50505050612c09565b612a1b8261372e565b612a248861378d565b8015612a31575087516002145b8015612a4457506001600160401b038516155b15612b225760ca5488516001600160a01b039091169063c36c2125908b908b90600090612a7357612a736149dd565b602090810291909101015160cc546040516001600160e01b031960e086901b168152612aad9392916001600160a01b031690600401614c0f565b600060405180830381600087803b158015612ac757600080fd5b505af1158015612adb573d6000803e3d6000fd5b50505050600087511115612b1d5760cc54604051633a0deb9d60e21b81526001600160a01b039091169063e837ae74906129db908a908a908790600401614c44565b612c09565b60c95460405163ba5d40b760e01b81526001600160a01b039091169063ba5d40b790612b5a908c908c908c908c908b90600401614bb0565b600060405180830381600087803b158015612b7457600080fd5b505af1158015612b88573d6000803e3d6000fd5b505050506001600160401b03851615612c095760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b158015612bf057600080fd5b505af1158015612c04573d6000803e3d6000fd5b505050505b50979650505050505050565b610cf481612c2161239e565b6137e7565b612c30828261156e565b610d815760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19166001179055612c6961239e565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b612cb561239e565b6001600160a01b0316612cd06033546001600160a01b031690565b6001600160a01b031614610d955760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610981565b610cf4600080516020614ef483398151915282611e2d565b612d48828261156e565b15610d815760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19169055612d7f61239e565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612dcb610e37565b612e0e5760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881393d517d4105554d15160621b6044820152606401610981565b600080516020614ed4833981519152805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa612e4e61239e565b6040516001600160a01b03909116815260200160405180910390a1565b805160009081905b8015612ea057829150612e8c82856110166001856149ca565b925080612e9881614c7a565b915050612e73565b50915091565b60008151600003612ef95760405162461bcd60e51b815260206004820152601b60248201527f4d696e74696e674d616e616765723a204c4142454c5f454d50545900000000006044820152606401610981565b8282604051602001612f0b9190614c91565b60405160208183030381529060405280519060200120604051602001612f3b929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b610cf4600080516020614ef48339815191528261353b565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b612fcc610e37565b15612fe95760405162461bcd60e51b8152600401610981906147cb565b600080516020614ed4833981519152805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258612e4e61239e565b6000613039600084612ea6565b600081815260cd602052604090209091506130548482614cf3565b50600081815260cf602052604090819020805460ff19168415151790555181907f4fce6f6e172b04eaa80325d8e3b0180a34945000f3e214605039e8420fdf8980906130a190869061437c565b60405180910390a260c954604051634f558e7960e01b8152600481018390526001600160a01b0390911690634f558e7990602401602060405180830381865afa1580156130f2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131169190614903565b610cde5760c9546040516307befae360e51b81526001600160a01b039091169063f7df5c6090610acc9084908790600401614db2565b600054610100900460ff166131735760405162461bcd60e51b815260040161098190614dd3565b610d9561317e61239e565b612f72565b600054610100900460ff166131aa5760405162461bcd60e51b815260040161098190614dd3565b610d9560006131b761239e565b61353b565b600054610100900460ff1661179e5760405162461bcd60e51b815260040161098190614dd3565b600054610100900460ff1661320a5760405162461bcd60e51b815260040161098190614dd3565b600080516020614ed4833981519152805460ff19169055565b600061323761323287896147f5565b612e6b565b506040516bffffffffffffffffffffffff1930606090811b821660208401524660348401528b811b82166054840152606883018490526001600160c01b031960c08a901b1660888401526090830188905286901b1660b082015290915060009061331390849061330d9060c401604051602081830303815290604052805190602001206040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c8101829052600090605c01604051602081830303815290604052805190602001209050919050565b9061384b565b905061331e816116f4565b6133765760405162461bcd60e51b8152602060048201526024808201527f4d696e74696e674d616e616765723a205349474e45525f49535f4e4f545f4d49604482015263272a22a960e11b6064820152608401610981565b42866001600160401b0316116133d85760405162461bcd60e51b815260206004820152602160248201527f4d696e74696e674d616e616765723a20455850495245445f5349474e415455526044820152604560f81b6064820152608401610981565b505050505050505050565b600061342a8a6133f38a8c6147f5565b6133fd898b6147f5565b613407888a6147f5565b60008f6001600160a01b031661341b61239e565b6001600160a01b0316146126c1565b9050896001600160a01b031661343e61239e565b6001600160a01b0316827fa545b6fd3355e8d57f8c8147bafe740545bd3ea1f94bef2576a6d532a7c3b605868660405161348b9291909182526001600160a01b0316602082015260400190565b60405180910390a450505050505050505050565b600081815260cd6020526040812080548291906134bb90614b04565b9050119050919050565b6134cd612cad565b6001600160a01b0381166135325760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610981565b610cf481612f72565b610d818282612c26565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546000906001600160a01b03163303613586575060331936013560601c90565b503390565b604080518082019091526000808252602082015260405180604001604052808381526020018486602001516135c09190614e1e565b9052949350505050565b600081516000036135dd57506000919050565b60208201805160f81c603081108015906135fb575060398160ff1611155b15801561361d575060618160ff161015801561361b5750607a8160ff1611155b155b1561362c575060009392505050565b8351600181111561369a5761364e836136466001846149ca565b015160f81c90565b915060308260ff1610158015613668575060398260ff1611155b15801561368a575060618260ff16101580156136885750607a8260ff1611155b155b1561369a57506000949350505050565b60015b6136a86001836149ca565b811015613722578381015160f81c9250602d83148015906136de575060308360ff16101580156136dc575060398360ff1611155b155b80156136ff575060618360ff16101580156136fd5750607a8360ff1611155b155b156137105750600095945050505050565b8061371a81614a39565b91505061369d565b50600195945050505050565b6137378161170e565b156137845760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a20544f4b454e5f424c4f434b45440000006044820152606401610981565b610cf48161386f565b6000806137a46000846001865161101691906149ca565b60ca549091506001600160a01b0316158015906137e05750807f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f145b9392505050565b6137f1828261156e565b610d8157613809816001600160a01b031660146138f3565b6138148360206138f3565b604051602001613825929190614e31565b60408051601f198184030181529082905262461bcd60e51b82526109819160040161437c565b600080600061385a8585613a8e565b9150915061386781613ad3565b509392505050565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd6960208201529081018290526001906138ae90606001611749565b805460ff19169115159190911790556040518181527f2ce5d9351b1d590d5a066db0d2dc7602d55f092506a83a7ee8c4d78ee357d75a9060200160405180910390a150565b60606000613902836002614ea6565b61390d906002614e1e565b6001600160401b0381111561392457613924614133565b6040519080825280601f01601f19166020018201604052801561394e576020820181803683370190505b509050600360fc1b81600081518110613969576139696149dd565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110613998576139986149dd565b60200101906001600160f81b031916908160001a90535060006139bc846002614ea6565b6139c7906001614e1e565b90505b6001811115613a3f576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106139fb576139fb6149dd565b1a60f81b828281518110613a1157613a116149dd565b60200101906001600160f81b031916908160001a90535060049490941c93613a3881614c7a565b90506139ca565b5083156137e05760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610981565b6000808251604103613ac45760208301516040840151606085015160001a613ab887828585613c89565b94509450505050613acc565b506000905060025b9250929050565b6000816004811115613ae757613ae7614ebd565b03613aef5750565b6001816004811115613b0357613b03614ebd565b03613b505760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152606401610981565b6002816004811115613b6457613b64614ebd565b03613bb15760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610981565b6003816004811115613bc557613bc5614ebd565b03613c1d5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b6064820152608401610981565b6004816004811115613c3157613c31614ebd565b03610cf45760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c604482015261756560f01b6064820152608401610981565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613cc05750600090506003613d6d565b8460ff16601b14158015613cd857508460ff16601c14155b15613ce95750600090506004613d6d565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613d3d573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613d6657600060019250925050613d6d565b9150600090505b94509492505050565b508054613d8290614b04565b6000825580601f10613d92575050565b601f016020900490600052602060002090810190610cf491905b80821115613dc05760008155600101613dac565b5090565b600060208284031215613dd657600080fd5b81356001600160e01b0319811681146137e057600080fd5b6001600160401b0381168114610cf457600080fd5b8035613e0e81613dee565b919050565b60008060408385031215613e2657600080fd5b8235613e3181613dee565b946020939093013593505050565b600060208284031215613e5157600080fd5b5035919050565b60008083601f840112613e6a57600080fd5b5081356001600160401b03811115613e8157600080fd5b602083019150836020828501011115613acc57600080fd5b600080600060408486031215613eae57600080fd5b8335925060208401356001600160401b03811115613ecb57600080fd5b613ed786828701613e58565b9497909650939450505050565b6001600160a01b0381168114610cf457600080fd5b8035613e0e81613ee4565b60008060408385031215613f1757600080fd5b823591506020830135613f2981613ee4565b809150509250929050565b600060208284031215613f4657600080fd5b81356137e081613ee4565b60008083601f840112613f6357600080fd5b5081356001600160401b03811115613f7a57600080fd5b6020830191508360208260051b8501011115613acc57600080fd5b8015158114610cf457600080fd5b60008060008060008060008060a0898b031215613fbf57600080fd5b8835613fca81613ee4565b975060208901356001600160401b0380821115613fe657600080fd5b613ff28c838d01613f51565b909950975060408b013591508082111561400b57600080fd5b6140178c838d01613f51565b909750955060608b013591508082111561403057600080fd5b5061403d8b828c01613f51565b909450925050608089013561405181613f95565b809150509295985092959890939650565b600080600080600080600080600060c08a8c03121561408057600080fd5b893561408b81613ee4565b985060208a01356001600160401b03808211156140a757600080fd5b6140b38d838e01613f51565b909a50985060408c01359150808211156140cc57600080fd5b6140d88d838e01613f51565b909850965060608c01359150808211156140f157600080fd5b506140fe8c828d01613f51565b90955093505060808a013561411281613dee565b915060a08a013561412281613f95565b809150509295985092959850929598565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561417157614171614133565b604052919050565b60006001600160401b0382111561419257614192614133565b5060051b60200190565b600060208083850312156141af57600080fd5b82356001600160401b038111156141c557600080fd5b8301601f810185136141d657600080fd5b80356141e96141e482614179565b614149565b81815260059190911b8201830190838101908783111561420857600080fd5b928401925b8284101561422f57833561422081613ee4565b8252928401929084019061420d565b979650505050505050565b6000806000806060858703121561425057600080fd5b843561425b81613ee4565b93506020850135925060408501356001600160401b0381111561427d57600080fd5b61428987828801613e58565b95989497509550505050565b600080602083850312156142a857600080fd5b82356001600160401b038111156142be57600080fd5b6142ca85828601613e58565b90969095509350505050565b6000806000604084860312156142eb57600080fd5b83356001600160401b0381111561430157600080fd5b61430d86828701613e58565b909450925050602084013561432181613f95565b809150509250925092565b60005b8381101561434757818101518382015260200161432f565b50506000910152565b6000815180845261436881602086016020860161432c565b601f01601f19169290920160200192915050565b6020815260006137e06020830184614350565b60008060008060008060c087890312156143a857600080fd5b86356143b381613ee4565b955060208701356143c381613ee4565b945060408701356143d381613ee4565b935060608701356143e381613ee4565b925060808701356143f381613ee4565b915060a087013561440381613ee4565b809150509295509295509295565b60008060008060008060008060a0898b03121561442d57600080fd5b883561443881613ee4565b97506020890135965060408901356001600160401b038082111561445b57600080fd5b6144678c838d01613e58565b909850965060608b013591508082111561448057600080fd5b61448c8c838d01613f51565b909650945060808b01359150808211156144a557600080fd5b506144b28b828c01613f51565b999c989b5096995094979396929594505050565b600080602083850312156144d957600080fd5b82356001600160401b038111156144ef57600080fd5b6142ca85828601613f51565b600080600080600080600080600080600060e08c8e03121561451c57600080fd5b6145258c613ef9565b9a506001600160401b038060208e0135111561454057600080fd5b6145508e60208f01358f01613f51565b909b50995060408d013581101561456657600080fd5b6145768e60408f01358f01613f51565b909950975060608d013581101561458c57600080fd5b61459c8e60608f01358f01613f51565b90975095506145ad60808e01613e03565b945060a08d013593508060c08e013511156145c757600080fd5b506145d88d60c08e01358e01613e58565b81935080925050509295989b509295989b9093969950565b6000806000806000806000806000806000806101008d8f03121561461357600080fd5b61461c8d613ef9565b9b506001600160401b0360208e0135111561463657600080fd5b6146468e60208f01358f01613f51565b909b5099506001600160401b0360408e0135111561466357600080fd5b6146738e60408f01358f01613f51565b90995097506001600160401b0360608e0135111561469057600080fd5b6146a08e60608f01358f01613f51565b90975095506146b160808e01613e03565b94506146bf60a08e01613ef9565b935060c08d013592506001600160401b0360e08e013511156146e057600080fd5b6146f08e60e08f01358f01613e58565b81935080925050509295989b509295989b509295989b565b6000806040838503121561471b57600080fd5b823561472681613ee4565b91506020830135613f2981613ee4565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b60006020828403121561477d57600080fd5b81516137e081613dee565b60208082526023908201527f4d696e74696e674d616e616765723a20544f4b454e5f4e4f545f455850495241604082015262424c4560e81b606082015260800190565b60208082526010908201526f14185d5cd8589b194e8814105554d15160821b604082015260600190565b60006148036141e484614179565b80848252602080830192508560051b85013681111561482157600080fd5b855b818110156148b35780356001600160401b03808211156148435760008081fd5b90880190601f36818401126148585760008081fd5b82358281111561486a5761486a614133565b61487b818301601f19168801614149565b9250808352368782860101111561489457600091508182fd5b8087850188850137600090830187015250865250938201938201614823565b50919695505050505050565b60208082526024908201527f4d696e74696e674d616e616765723a2043414c4c45525f49535f4e4f545f4d49604082015263272a22a960e11b606082015260800190565b60006020828403121561491557600080fd5b81516137e081613f95565b6020808252602f908201527f4d696e74696e674d616e616765723a2053454e4445525f49535f4e4f545f415060408201526e282927ab22a22fa7a92fa7aba722a960891b606082015260800190565b60208082526025908201527f4d696e74696e674d616e616765723a204c4142454c535f4c454e4754485f42456040820152642627abaf9960d91b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b81810381811115610954576109546149b4565b634e487b7160e01b600052603260045260246000fd5b60208082526026908201527f4d696e74696e674d616e616765723a20535542444f4d41494e535f4e4f545f41604082015265131313d5d15160d21b606082015260800190565b600060018201614a4b57614a4b6149b4565b5060010190565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b60208082526022908201527f4d696e74696e674d616e616765723a20544c445f4e4f545f5245474953544552604082015261115160f21b606082015260800190565b600060208284031215614ad557600080fd5b5051919050565b6b756e732d646576746573742d60a01b81528183600c83013760009101600c01908152919050565b600181811c90821680614b1857607f821691505b602082108103614b3857634e487b7160e01b600052602260045260246000fd5b50919050565b600060208284031215614b5057600080fd5b81516137e081613ee4565b600081518084526020808501808196508360051b8101915082860160005b85811015614ba3578284038952614b91848351614350565b98850198935090840190600101614b79565b5091979650505050505050565b6001600160a01b038616815260a060208201819052600090614bd490830187614b5b565b8281036040840152614be68187614b5b565b90508281036060840152614bfa8186614b5b565b91505082151560808301529695505050505050565b600060018060a01b03808616835260606020840152614c316060840186614350565b9150808416604084015250949350505050565b606081526000614c576060830186614b5b565b8281036020840152614c698186614b5b565b915050826040830152949350505050565b600081614c8957614c896149b4565b506000190190565b60008251614ca381846020870161432c565b9190910192915050565b601f821115610cde57600081815260208120601f850160051c81016020861015614cd45750805b601f850160051c820191505b818110156116a357828155600101614ce0565b81516001600160401b03811115614d0c57614d0c614133565b614d2081614d1a8454614b04565b84614cad565b602080601f831160018114614d555760008415614d3d5750858301515b600019600386901b1c1916600185901b1785556116a3565b600085815260208120601f198616915b82811015614d8457888601518255948401946001909101908401614d65565b5085821015614da25787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b828152604060208201526000614dcb6040830184614350565b949350505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b80820180821115610954576109546149b4565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351614e6981601785016020880161432c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351614e9a81602884016020880161432c565b01602801949350505050565b8082028115828204841417610954576109546149b4565b634e487b7160e01b600052602160045260246000fdfe5496787fc1ebdfeba375028c1865f13fbb1d63c0caa356ccc1b29a80f3ebd6229f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000811000a","storage":{}},"0x24f45688d421f46cca60734bdc648ad192db0f2e":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0x1","0x97":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x12d":"0x0","0x15f":"0x5cc819c9915eadfcebd76952b8c1bc36cadd7376","0x13cf90498be59d359caa5b6092b365feab4610605d7107d1f05f8e94ac955652":"0x1","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x54563a9e1cd2dcbd0bca90d3cfa4a647e02c404a","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106102295760003560e01c8063886a69ba11610123578063cf1d21c0116100ab578063e2c49de11161006f578063e2c49de11461091d578063e3dec8fb14610932578063e43009a6146109c8578063e66f9603146109fb578063ea60c7c414610a2557610240565b8063cf1d21c014610844578063d233a3c714610859578063d547741f1461089c578063d81c8e52146108d5578063dc993a23146108ea57610240565b8063a217fddf116100f2578063a217fddf1461078a578063b4b4f63e1461079f578063bc08452b146107b4578063c4d66de8146107e7578063ca15c8731461081a57610240565b8063886a69ba146106c95780639010d07c146106de5780639173b1391461070e57806391d148541461075157610240565b80633138b6f1116101b1578063568b80b511610175578063568b80b5146105fb578063607f2d4214610610578063630fcbfb1461064e5780636cb136b0146106635780636e86b7701461069657610240565b80633138b6f1146104f55780633408e4701461050a57806336568abe1461051f5780633805550f146105585780634faa8a26146105d557610240565b80630f7e5970116101f85780630f7e59701461042357806320379ee514610438578063248a9ca31461045f5780632d0335ab146104895780632f2ff15d146104bc57610240565b806304967702146102455780630c3894bb146102765780630c53c51c146102b15780630c598220146103ea57610240565b366102405761023e610239610a58565b610a68565b005b600080fd5b34801561025157600080fd5b5061025a610b69565b604080516001600160a01b039092168252519081900360200190f35b34801561028257600080fd5b5061023e6004803603604081101561029957600080fd5b506001600160a01b0381358116916020013516610b78565b610375600480360360a08110156102c757600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156102f257600080fd5b82018360208201111561030457600080fd5b8035906020019184600183028401116401000000008311171561032657600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550508235935050506020810135906040013560ff16610cc9565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103af578181015183820152602001610397565b50505050905090810190601f1680156103dc5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156103f657600080fd5b5061023e6004803603604081101561040d57600080fd5b50803590602001356001600160a01b0316610fcc565b34801561042f57600080fd5b506103756110b9565b34801561044457600080fd5b5061044d6110d6565b60408051918252519081900360200190f35b34801561046b57600080fd5b5061044d6004803603602081101561048257600080fd5b50356110dc565b34801561049557600080fd5b5061044d600480360360208110156104ac57600080fd5b50356001600160a01b03166110f4565b3480156104c857600080fd5b5061023e600480360360408110156104df57600080fd5b50803590602001356001600160a01b031661110f565b34801561050157600080fd5b5061025a611176565b34801561051657600080fd5b5061044d611185565b34801561052b57600080fd5b5061023e6004803603604081101561054257600080fd5b50803590602001356001600160a01b0316611189565b34801561056457600080fd5b5061023e6004803603602081101561057b57600080fd5b81019060208101813564010000000081111561059657600080fd5b8201836020820111156105a857600080fd5b803590602001918460018302840111640100000000831117156105ca57600080fd5b5090925090506111ea565b61023e600480360360208110156105eb57600080fd5b50356001600160a01b03166116ec565b34801561060757600080fd5b5061044d6116f8565b34801561061c57600080fd5b5061063a6004803603602081101561063357600080fd5b503561171b565b604080519115158252519081900360200190f35b34801561065a57600080fd5b5061023e611730565b34801561066f57600080fd5b5061023e6004803603602081101561068657600080fd5b50356001600160a01b03166117d6565b3480156106a257600080fd5b5061025a600480360360208110156106b957600080fd5b50356001600160a01b031661186e565b3480156106d557600080fd5b5061044d611889565b3480156106ea57600080fd5b5061025a6004803603604081101561070157600080fd5b50803590602001356118aa565b34801561071a57600080fd5b5061023e6004803603606081101561073157600080fd5b506001600160a01b038135811691602081013590911690604001356118d1565b34801561075d57600080fd5b5061063a6004803603604081101561077457600080fd5b50803590602001356001600160a01b0316611a06565b34801561079657600080fd5b5061044d611a24565b3480156107ab57600080fd5b5061023e611a29565b3480156107c057600080fd5b5061023e600480360360208110156107d757600080fd5b50356001600160a01b0316611acf565b3480156107f357600080fd5b5061023e6004803603602081101561080a57600080fd5b50356001600160a01b0316611b67565b34801561082657600080fd5b5061044d6004803603602081101561083d57600080fd5b5035611c57565b34801561085057600080fd5b5061025a611c6e565b34801561086557600080fd5b5061023e6004803603606081101561087c57600080fd5b506001600160a01b03813581169160208101359091169060400135611c86565b3480156108a857600080fd5b5061023e600480360360408110156108bf57600080fd5b50803590602001356001600160a01b0316611de8565b3480156108e157600080fd5b5061044d611e41565b3480156108f657600080fd5b5061023e6004803603602081101561090d57600080fd5b50356001600160a01b0316611e60565b34801561092957600080fd5b5061025a611f3d565b34801561093e57600080fd5b5061023e6004803603606081101561095557600080fd5b6001600160a01b03823581169260208101359091169181019060608101604082013564010000000081111561098957600080fd5b82018360208201111561099b57600080fd5b803590602001918460018302840111640100000000831117156109bd57600080fd5b509092509050611f4c565b3480156109d457600080fd5b5061044d600480360360208110156109eb57600080fd5b50356001600160a01b0316611fe9565b348015610a0757600080fd5b5061025a60048036036020811015610a1e57600080fd5b5035611ffb565b348015610a3157600080fd5b5061025a60048036036020811015610a4857600080fd5b50356001600160a01b0316612016565b6000610a62612031565b90505b90565b604080513460208083019190915282518083039091018152908201909152610aa58273eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee8361208e565b7fa1829a9003092132f585b6ccdd167c19fe9774dbdea4260287e8a8e8ca8185d7546000908152600260205260408082205490516001600160a01b039091169034908381818185875af1925050503d8060008114610b1f576040519150601f19603f3d011682016040523d82523d6000602084013e610b24565b606091505b5050905080610b645760405162461bcd60e51b815260040180806020018281038252602781526020018061419d6027913960400191505060405180910390fd5b505050565b6009546001600160a01b031681565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020610ba981610ba4610a58565b611a06565b600a90610c495760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b820191906000526020600020905b815481529060010190602001808311610c1d57829003601f168201915b50509250505060405180910390fd5b506001600160a01b03808416600081815260036020908152604080832080546001600160a01b0319908116909155948716808452600483528184208054909616909555838352600590915280822082905551909291907f9e651a8866fbea043e911d816ec254b0e3c992c06fff32d605e72362d6023bd9908490a4505050565b6060610cd3613e2a565b50604080516060810182526001600160a01b0388166000818152600c602090815290849020548352820152908101869052610d118782878787612508565b610d4c5760405162461bcd60e51b81526004018080602001828103825260218152602001806141c46021913960400191505060405180910390fd5b6001600160a01b0387166000908152600c6020526040902054610d7690600163ffffffff6125e516565b6001600160a01b0388166000818152600c602090815260408083209490945583519283523383820181905260609484018581528b51958501959095528a517f5845892132946850460bff5a0083f71031bc5bf9aadcd40f1de79423eac9b10b958d9592948d94919260808501928601918190849084905b83811015610e05578181015183820152602001610ded565b50505050905090810190601f168015610e325780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a160006060306001600160a01b0316888a6040516020018083805190602001908083835b60208310610e835780518252601f199092019160209182019101610e64565b6001836020036101000a038019825116818451168082178552505050505050905001826001600160a01b03166001600160a01b031660601b8152601401925050506040516020818303038152906040526040518082805190602001908083835b60208310610f025780518252601f199092019160209182019101610ee3565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610f64576040519150601f19603f3d011682016040523d82523d6000602084013e610f69565b606091505b509150915081610fc0576040805162461bcd60e51b815260206004820152601c60248201527f46756e6374696f6e2063616c6c206e6f74207375636365737366756c00000000604482015290519081900360640190fd5b98975050505050505050565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020610ff881610ba4610a58565b600a9061105e5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5060008381526002602052604080822080546001600160a01b0319166001600160a01b0386169081179091559051909185917f8643692ae1c12ec91fa18e50b82ed93fa314f580999a236824db6de9ae0d839b9190a3505050565b604051806040016040528060018152602001603160f81b81525081565b600b5490565b6000818152600160205260409020600201545b919050565b6001600160a01b03166000908152600c602052604090205490565b60008281526001602052604090206002015461112d90610ba4610a58565b6111685760405162461bcd60e51b815260040180806020018281038252602f815260200180613f78602f913960400191505060405180910390fd5b611172828261263f565b5050565b6008546001600160a01b031690565b4690565b611191610a58565b6001600160a01b0316816001600160a01b0316146111e05760405162461bcd60e51b815260040180806020018281038252602f815260200180614286602f913960400191505060405180910390fd5b61117282826126ae565b606061123361122e84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061271d92505050565b612798565b905060006112548260028151811061124757fe5b602002602001015161291a565b6112796112748460088151811061126757fe5b6020026020010151612a62565b612b2c565b6112898460098151811061124757fe5b6040516020018084815260200183805190602001908083835b602083106112c15780518252601f1990920191602091820191016112a2565b51815160209384036101000a6000190180199092169116179052920193845250604080518085038152938201815283519382019390932060008181526006909252929020549194505060ff1615915061134d90505760405162461bcd60e51b81526004018080602001828103825260288152602001806142096028913960400191505060405180910390fd5b6000818152600660208190526040909120805460ff19166001179055825160609161138a9161122e9161138591879190811061126757fe5b61271d565b9050611394613e54565b6113b1826003815181106113a457fe5b6020026020010151612798565b6113c18560098151811061124757fe5b815181106113cb57fe5b6020026020010151905060006113fc6113e383612798565b6000815181106113ef57fe5b6020026020010151612c9f565b6001600160a01b0380821660009081526004602052604090205491925016806114565760405162461bcd60e51b81526004018080602001828103825260228152602001806140af6022913960400191505060405180910390fd5b6001600160a01b03808216600090815260056020908152604080832054835260029091529020548751911690611493908890600890811061124757fe5b63ffffffff1916156114d65760405162461bcd60e51b815260040180806020018281038252602581526020018061408a6025913960400191505060405180910390fd5b61151e6114e98860068151811061126757fe5b6114f98960088151811061126757fe5b6115098a60078151811061126757fe5b6115198b60058151811061124757fe5b612d2f565b61156f576040805162461bcd60e51b815260206004820152601f60248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f50524f4f4600604482015290519081900360640190fd5b6115dd6115828860028151811061124757fe5b6115928960038151811061124757fe5b6115a28a60048151811061124757fe5b60001b6115b58b60058151811061124757fe5b60001b6115c88c60008151811061124757fe5b6115d88d60018151811061126757fe5b612f76565b50806001600160a01b0316638274664f6115f5610a58565b846115ff886130bf565b6040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561167b578181015183820152602001611663565b50505050905090810190601f1680156116a85780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b1580156116c957600080fd5b505af11580156116dd573d6000803e3d6000fd5b50505050505050505050505050565b6116f581610a68565b50565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b01902081565b60066020526000908152604090205460ff1681565b600061173e81610ba4610a58565b600a906117a45760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506116f56040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b81525061312d565b60006117e481610ba4610a58565b600a9061184a5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5050600780546001600160a01b0319166001600160a01b0392909216919091179055565b6004602052600090815260409020546001600160a01b031681565b604080516826a0a82faa27a5a2a760b91b8152905190819003600901902081565b60008281526001602052604081206118c8908363ffffffff6131e916565b90505b92915050565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b0190206118fd81610ba4610a58565b600a906119635760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b03848116600090815260036020526040902054161580156119a457506001600160a01b0383811660009081526004602052604090205416155b6119f5576040805162461bcd60e51b815260206004820181905260248201527f526f6f74436861696e4d616e616765723a20414c52454144595f4d4150504544604482015290519081900360640190fd5b611a008484846131f5565b50505050565b60008281526001602052604081206118c8908363ffffffff61348416565b600081565b6000611a3781610ba4610a58565b600a90611a9d5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506116f56040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613499565b6000611add81610ba4610a58565b600a90611b435760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5050600880546001600160a01b0319166001600160a01b0392909216919091179055565b60005460ff1615611bb0576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b611be16040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613537565b611c126040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613499565b611c1d600082611168565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020611c479082611168565b506000805460ff19166001179055565b60008181526001602052604081206118cb90613589565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020611cb281610ba4610a58565b600a90611d185760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b0380851660009081526003602081815260408084205488861685526004835281852054861680865293909252909220549183169290911615611d8e576001600160a01b038116600090815260036020908152604080832080546001600160a01b031916905560059091528120555b6001600160a01b038281166000908152600460205260409020541615611dd5576001600160a01b038216600090815260046020526040902080546001600160a01b03191690555b611de08686866131f5565b505050505050565b600082815260016020526040902060020154611e0690610ba4610a58565b6111e05760405162461bcd60e51b81526004018080602001828103825260308152602001806140f96030913960400191505060405180910390fd5b604080516611115413d4d25560ca1b8152905190819003600701902081565b6000611e6e81610ba4610a58565b600a90611ed45760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b038216611f1a5760405162461bcd60e51b815260040180806020018281038252602d815260200180613fa7602d913960400191505060405180910390fd5b50600980546001600160a01b0319166001600160a01b0392909216919091179055565b6007546001600160a01b031690565b6001600160a01b03831673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee1415611fa85760405162461bcd60e51b81526004018080602001828103825260248152602001806141e56024913960400191505060405180910390fd5b611a00848484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061208e92505050565b60056020526000908152604090205481565b6002602052600090815260409020546001600160a01b031681565b6003602052600090815260409020546001600160a01b031681565b6000333014156120895760606000368080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505050503601516001600160a01b03169150610a659050565b503390565b6001600160a01b03808316600090815260056020908152604080832054600390925290912054909116158015906120c457508015155b6120ff5760405162461bcd60e51b81526004018080602001828103825260228152602001806140af6022913960400191505060405180910390fd5b6000818152600260205260409020546001600160a01b0316806121535760405162461bcd60e51b81526004018080602001828103825260248152602001806140176024913960400191505060405180910390fd5b6001600160a01b0385166121ae576040805162461bcd60e51b815260206004820152601e60248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f555345520000604482015290519081900360640190fd5b806001600160a01b031663e375b64e6121c5610a58565b8787876040518563ffffffff1660e01b815260040180856001600160a01b03166001600160a01b03168152602001846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561225c578181015183820152602001612244565b50505050905090810190601f1680156122895780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b1580156122ab57600080fd5b505af11580156122bf573d6000803e3d6000fd5b50505050606085858560405160200180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015612338578181015183820152602001612320565b50505050905090810190601f1680156123655780820380516001836020036101000a031916815260200191505b5060408051808303601f19018152828252600780546009546611115413d4d25560ca1b865284519586900390920185206020808701828152878701968752855160608901528551959d506001600160a01b039384169c506316f198319b5092909316985096508a955093608001919085019080838360005b838110156123f55781810151838201526020016123dd565b50505050905090810190601f1680156124225780820380516001836020036101000a031916815260200191505b5093505050506040516020818303038152906040526040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561249b578181015183820152602001612483565b50505050905090810190601f1680156124c85780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b1580156124e857600080fd5b505af11580156124fc573d6000803e3d6000fd5b50505050505050505050565b60006001600160a01b03861661254f5760405162461bcd60e51b81526004018080602001828103825260258152602001806141296025913960400191505060405180910390fd5b600161256261255d87613594565b613620565b83868660405160008152602001604052604051808581526020018460ff1660ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa1580156125bc573d6000803e3d6000fd5b505050602060405103516001600160a01b0316866001600160a01b031614905095945050505050565b6000828201838110156118c8576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600082815260016020526040902061265d908263ffffffff61366c16565b156111725761266a610a58565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b60008281526001602052604090206126cc908263ffffffff61368116565b15611172576126d9610a58565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612725613e54565b600082511161277b576040805162461bcd60e51b815260206004820152601f60248201527f524c505265616465723a20494e56414c49445f42595445535f4c454e47544800604482015290519081900360640190fd5b506040805180820190915281518152602082810190820152919050565b60606127a382613696565b6127f4576040805162461bcd60e51b815260206004820152601860248201527f524c505265616465723a204954454d5f4e4f545f4c4953540000000000000000604482015290519081900360640190fd5b60006127ff836136c2565b905060608167ffffffffffffffff8111801561281a57600080fd5b5060405190808252806020026020018201604052801561285457816020015b612841613e54565b8152602001906001900390816128395790505b5090506000612866856020015161374e565b855190915081146128a85760405162461bcd60e51b81526004018080602001828103825260278152602001806142316027913960400191505060405180910390fd5b60006128b786602001516137e2565b60208701510190506000805b8581101561290e576128d48361374e565b91506040518060400160405280838152602001848152508582815181106128f757fe5b6020908102919091010152918101916001016128c3565b50929695505050505050565b600061292582613696565b15612977576040805162461bcd60e51b815260206004820181905260248201527f524c505265616465723a204445434f44494e475f4c4953545f41535f55494e54604482015290519081900360640190fd5b8151602110156129ce576040805162461bcd60e51b815260206004820152601e60248201527f524c505265616465723a20494e56414c49445f55494e545f4c454e4754480000604482015290519081900360640190fd5b60006129dd836020015161374e565b83519091508114612a1f5760405162461bcd60e51b81526004018080602001828103825260278152602001806142b56027913960400191505060405180910390fd5b6000612a2e84602001516137e2565b84516020808701518301805193945091849003929190831015612a5857826020036101000a820491505b5095945050505050565b60606000612a73836020015161374e565b83519091508114612ab55760405162461bcd60e51b81526004018080602001828103825260288152602001806140d16028913960400191505060405180910390fd5b6000612ac484602001516137e2565b845190915081900360608167ffffffffffffffff81118015612ae557600080fd5b506040519080825280601f01601f191660200182016040528015612b10576020820181803683370190505b5090506000816020019050612a58848860200151018285613845565b604080516020810190915260008152815160609190156118cb57600080612b54600086613890565b60f81c90506001811480612b6b57508060ff166003145b15612bfa57600185516002020367ffffffffffffffff81118015612b8e57600080fd5b506040519080825280601f01601f191660200182016040528015612bb9576020820181803683370190505b5092506000612bc9600187613890565b90508084600081518110612bd957fe5b60200101906001600160f81b031916908160001a9053506001925050612c4b565b600285516002020367ffffffffffffffff81118015612c1857600080fd5b506040519080825280601f01601f191660200182016040528015612c43576020820181803683370190505b509250600091505b60ff82165b8351811015612c9657612c6b8360ff16820360020187613890565b848281518110612c7757fe5b60200101906001600160f81b031916908160001a905350600101612c50565b50505092915050565b6000612caa82613696565b15612ce65760405162461bcd60e51b815260040180806020018281038252602381526020018061417a6023913960400191505060405180910390fd5b8151601514612d265760405162461bcd60e51b81526004018080602001828103825260218152602001806142dc6021913960400191505060405180910390fd5b6118cb8261291a565b6000612d39613e54565b612d428461271d565b90506060612d4f82612798565b905060608085600082612d618b612b2c565b9050805160001415612d7d576000975050505050505050612f6e565b60005b8651811015612f65578151831115612da357600098505050505050505050612f6e565b612dbf878281518110612db257fe5b60200260200101516130bf565b955085805190602001208414612de057600098505050505050505050612f6e565b612def8782815181106113a457fe5b9450845160111415612eac578151831415612e4b578c80519060200120612e1c8660108151811061126757fe5b805190602001201415612e3a57600198505050505050505050612f6e565b600098505050505050505050612f6e565b6000828481518110612e5957fe5b016020015160f81c90506010811115612e7e5760009950505050505050505050612f6e565b612e9d868260ff1681518110612e9057fe5b60200260200101516138ed565b94505060019290920191612f5d565b845160021415612e3a576000612ed2612ecb8760008151811061126757fe5b848661398c565b905082518185011415612f28578d80519060200120612ef78760018151811061126757fe5b805190602001201415612f165760019950505050505050505050612f6e565b60009950505050505050505050612f6e565b80612f3f5760009950505050505050505050612f6e565b8084019350612f5486600181518110612e9057fe5b9450612f5d9050565b600101612d80565b50505050505050505b949350505050565b600854604080516320a9cea560e11b81526004810185905290516000928392839283926001600160a01b0316916341539d4a9160248083019260a0929190829003018186803b158015612fc857600080fd5b505afa158015612fdc573d6000803e3d6000fd5b505050506040513d60a0811015612ff257600080fd5b5080516020820151606090920151909450909250905061306161301b8b8463ffffffff613a6b16565b6040805160208082018f90528183018e9052606082018d905260808083018d90528351808403909101815260a0909201909252805191012090858863ffffffff613aad16565b6130b2576040805162461bcd60e51b815260206004820181905260248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f484541444552604482015290519081900360640190fd5b9998505050505050505050565b606080826000015167ffffffffffffffff811180156130dd57600080fd5b506040519080825280601f01601f191660200182016040528015613108576020820181803683370190505b50905060008160200190506131268460200151828660000151613845565b5092915050565b6040518060800160405280604f815260200161403b604f913980516020918201208251838301206040805180820190915260018152603160f81b930192909252907fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc630613198611185565b604080516020808201979097528082019590955260608501939093526001600160a01b03909116608084015260a0808401919091528151808403909101815260c090920190528051910120600b5550565b60006118c88383613c03565b6000818152600260205260409020546001600160a01b03166132485760405162461bcd60e51b815260040180806020018281038252602a815260200180613f07602a913960400191505060405180910390fd5b6001600160a01b03808416600081815260036020908152604080832080549588166001600160a01b031996871681179091558084526004835281842080549096168517909555838352600590915280822085905551849392917f9e651a8866fbea043e911d816ec254b0e3c992c06fff32d605e72362d6023bd991a4604080516001600160a01b0380861660208084019190915281861683850152606083810186905284518085038201815260808086018088526007546009546826a0a82faa27a5a2a760b91b9092528851978890036089018820888701818152898b019a8b528551968a019690965284519499918816986316f1983198939093169690958a9590949293909201919085019080838360005b8381101561337357818101518382015260200161335b565b50505050905090810190601f1680156133a05780820380516001836020036101000a031916815260200191505b5093505050506040516020818303038152906040526040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015613419578181015183820152602001613401565b50505050905090810190601f1680156134465780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b15801561346657600080fd5b505af115801561347a573d6000803e3d6000fd5b5050505050505050565b60006118c8836001600160a01b038416613c67565b806040516020018082805190602001908083835b602083106134cc5780518252601f1990920191602091820191016134ad565b51815160209384036101000a60001901801990921691161790527f3a20494e53554646494349454e545f5045524d495353494f4e530000000000009190930190815260408051808303600519018152601a909201905280516111729550600a94509201919050613e6e565b60005460ff1615613580576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b611c478161312d565b60006118cb82613c7f565b6000604051806080016040528060438152602001613fd460439139805190602001208260000151836020015184604001518051906020012060405160200180858152602001848152602001836001600160a01b03166001600160a01b03168152602001828152602001945050505050604051602081830303815290604052805190602001209050919050565b600061362a6110d6565b82604051602001808061190160f01b81525060020183815260200182815260200192505050604051602081830303815290604052805190602001209050919050565b60006118c8836001600160a01b038416613c83565b60006118c8836001600160a01b038416613ccd565b6020810151805160009190821a9060c08210156136b8576000925050506110ef565b5060019392505050565b6000806000905060006136d884602001516137e2565b602085015185519181019250015b80821015613745576136f78261374e565b820191508082111561373a5760405162461bcd60e51b815260040180806020018281038252602c81526020018061414e602c913960400191505060405180910390fd5b6001909201916136e6565b50909392505050565b80516000908190811a60808110156137695760019150613126565b60b881101561377e57607e1981019150613126565b60c08110156137ab5760b78103600185019450806020036101000a85510460018201810193505050613126565b60f88110156137c05760be1981019150613126565b60019390930151602084900360f7016101000a900490920160f5190192915050565b8051600090811a60808110156137fc5760009150506110ef565b60b8811080613817575060c08110801590613817575060f881105b156138265760019150506110ef565b60c081101561383a5760b5190190506110ef565b60f5190190506110ef565b8061384f57610b64565b5b6020811061386f578251825260209283019290910190601f1901613850565b915181516020939093036101000a6000190180199091169216919091179052565b600060028306156138c15760108260028504815181106138ac57fe5b016020015160f81c816138bb57fe5b066138e3565b60108260028504815181106138d257fe5b016020015160f81c816138e157fe5b045b60f81b9392505050565b6000806138fd836020015161374e565b8351909150811461393f5760405162461bcd60e51b815260040180806020018281038252602e815260200180614258602e913960400191505060405180910390fd5b825160211461397f5760405162461bcd60e51b8152600401808060200182810382526025815260200180613f536025913960400191505060405180910390fd5b5050602001516001015190565b600080606061399a86612b2c565b90506060815167ffffffffffffffff811180156139b657600080fd5b506040519080825280601f01601f1916602001820160405280156139e1576020820181803683370190505b509050845b82518601811015613a3b5760008782815181106139ff57fe5b602001015160f81c60f81b9050808388840381518110613a1b57fe5b60200101906001600160f81b031916908160001a905350506001016139e6565b50808051906020012082805190602001201415613a5b5781519250613a60565b600092505b509095945050505050565b60006118c883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250613d93565b60006020825181613aba57fe5b0615613b04576040805162461bcd60e51b8152602060048201526014602482015273092dcecc2d8d2c840e0e4dedecc40d8cadccee8d60631b604482015290519081900360640190fd5b60006020835181613b1157fe5b0490508060020a8510613b63576040805162461bcd60e51b81526020600482015260156024820152744c65616620696e64657820697320746f6f2062696760581b604482015290519081900360640190fd5b60008660205b85518111613bf55785810151925060028806613bb55781836040516020018083815260200182815260200192505050604051602081830303815290604052805190602001209150613be7565b828260405160200180838152602001828152602001925050506040516020818303038152906040528051906020012091505b600288049750602001613b69565b509094149695505050505050565b81546000908210613c455760405162461bcd60e51b8152600401808060200182810382526022815260200180613f316022913960400191505060405180910390fd5b826000018281548110613c5457fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000613c8f8383613c67565b613cc5575081546001818101845560008481526020808220909301849055845484825282860190935260409020919091556118cb565b5060006118cb565b60008181526001830160205260408120548015613d895783546000198083019190810190600090879083908110613d0057fe5b9060005260206000200154905080876000018481548110613d1d57fe5b600091825260208083209091019290925582815260018981019092526040902090840190558654879080613d4d57fe5b600190038181906000526020600020016000905590558660010160008781526020019081526020016000206000905560019450505050506118cb565b60009150506118cb565b60008184841115613e225760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015613de7578181015183820152602001613dcf565b50505050905090810190601f168015613e145780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60405180606001604052806000815260200160006001600160a01b03168152602001606081525090565b604051806040016040528060008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10613eaf57805160ff1916838001178555613edc565b82800160010185558215613edc579182015b82811115613edc578251825591602001919060010190613ec1565b50613ee8929150613eec565b5090565b610a6591905b80821115613ee85760008155600101613ef256fe526f6f74436861696e4d616e616765723a20544f4b454e5f545950455f4e4f545f535550504f52544544456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473524c505265616465723a20494e56414c49445f55494e545f5354524943545f4c454e475448416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e74526f6f74436861696e4d616e616765723a20494e56414c49445f4348494c445f434841494e5f414444524553534d6574615472616e73616374696f6e2875696e74323536206e6f6e63652c616464726573732066726f6d2c62797465732066756e6374696f6e5369676e617475726529526f6f74436861696e4d616e616765723a20494e56414c49445f544f4b454e5f54595045454950373132446f6d61696e28737472696e67206e616d652c737472696e672076657273696f6e2c6164647265737320766572696679696e67436f6e74726163742c627974657333322073616c7429526f6f74436861696e4d616e616765723a20494e56414c49445f4252414e43485f4d41534b526f6f74436861696e4d616e616765723a20544f4b454e5f4e4f545f4d4150504544524c505265616465723a2042595445535f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b654e61746976654d6574615472616e73616374696f6e3a20494e56414c49445f5349474e4552524c505265616465723a204e554d5f4954454d535f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a204445434f44494e475f4c4953545f41535f41444452455353526f6f74436861696e4d616e616765723a2045544845525f5452414e534645525f4641494c45445369676e657220616e64207369676e617475726520646f206e6f74206d61746368526f6f74436861696e4d616e616765723a20494e56414c49445f524f4f545f544f4b454e526f6f74436861696e4d616e616765723a20455849545f414c52454144595f50524f434553534544524c505265616465723a204c4953545f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a2055494e545f5354524943545f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66524c505265616465723a2055494e545f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a20494e56414c49445f414444524553535f4c454e475448a164736f6c6343000606000a","storage":{"0x0":"0x1","0x7":"0xe0afc4e9e03e4aa67257df7a2eca77454309789d","0x8":"0xbe5deac45dd1ca4ee18dc2d585d84d3d3cb82b0d","0x9":"0x0","0xa":"0x55","0xb":"0x2603903cfd8895fdde3da4d607d44203e86098073e351022fd12745d3436e93a","0xeb5be412f275a18f6e4d622aee4ff40b21467c926224771b782d4c095d1444b":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x162b27a30e878e20728deaa5c9814fd57ccf962b998b8733ce65749bc61c552f":"0x58a175bebc8ec21a94ea63aa5a28743945940ee6","0x1a93463c7bbb7215968307c7cd357c2009c10df2a511dd62c1189098e4f3249b":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x415fec6a4fd7706b96d3a0a30121284bc5e2b28b978c20486c9f5e20d44fc781":"0x1","0x4dc1f0160d96279adc262db20edcc15527e32cb28eda582becc5ac0bc453be34":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x5fc73aa2ab567caef8745f0709fae506c01972ffb297bd9225bc262d6e87746f":"0x1","0x6ce1cd05966f090b8daa7b2ee7f80930bbb39d19b693045725fbae5fa44fda90":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0xa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb49":"0x1","0xc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a8":"0x526f6f74436861696e4d616e616765723a20494e53554646494349454e545f50","0xc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a9":"0x45524d495353494f4e5300000000000000000000000000000000000000000000","0xd61ba0007bb57e62613f82f528c06ba46d36349cf5be567b12f878ef04849a7d":"0x1","0xf960df71fab73e593428c10f56f55e7ea46985963177def0458b97f1afec9576":"0xcf4e755f204163e9213ba8b1305036e386579ccc70731c25c62a101197811f48"}},"0x287dee389caaa49edc112888f2bcfd927b472e25":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c80634f89059e1461002d575b5f80fd5b61004061003b366004610125565b610054565b604051901515815260200160405180910390f35b5f806100985f85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101029050565b60ff1690505f811180156100f857506100f36100b5826001610191565b85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101029050565b60ff16155b9150505b92915050565b5f828281518110610115576101156101b0565b016020015160f81c905092915050565b5f8060208385031215610136575f80fd5b823567ffffffffffffffff8082111561014d575f80fd5b818501915085601f830112610160575f80fd5b81358181111561016e575f80fd5b86602082850101111561017f575f80fd5b60209290920196919550909350505050565b808201808211156100fc57634e487b7160e01b5f52601160045260245ffd5b634e487b7160e01b5f52603260045260245ffdfea164736f6c6343000818000a","storage":{}},"0x3198fc981626687f4b5bdf0fbeabb0a5e0489c03":{"nonce":1,"balance":"0x8ac7230489e80000","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0x1","0x97":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x13cf90498be59d359caa5b6092b365feab4610605d7107d1f05f8e94ac955652":"0x1","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xc2110388dd54228ae0a834119457ede938bf0b57","0x412386de53449251cbf7ce1f4c6a038bf9c0746e62d331b08ef0c3fa7d0ab672":"0x4fbf7b2f171336958be5d15ff762a5cff5363568","0x60793a5062d506d35cc8f1beda67ee5028c16bfcd9c923d5bfc439c04bd929b1":"0x6ac8f19d1e0f81147cdf2a1e53cb1f4e18417204","0x75df8b43665bf2e4996a686913c4c278ca7aed85444740ca40355b1c9a94b504":"0x1","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xf851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004":"0xc965345edac823d56812cd20a10316233916a605"}},"0x39a27956b78d00a4e00ea8833ff0947410a2933f":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xc9":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0xca":"0x4a3c194eb88966178bfdd81744dddafed611b830","0xcb":"0x4872cc1be60a9db9c880a0a437da7a6af134f08f","0xcc":"0xf8c26340c1eaea6c7ff1760b25005e1306953572","0xce":"0xce4bb7dc1eb9dce75743de6a4b48534fd427ef51","0xc6892776bb3da1e1199a03e0d3131aea089754b59c557b750c478ebc85ccaa":"0x6e66740000000000000000000000000000000000000000000000000000000006","0x6cb37a6d512a1e227e627eddc133023e6d00bfedff31a600abb75aa93e9a4a0":"0x6b7265737573000000000000000000000000000000000000000000000000000c","0x8e966fe8b9b43d48017ba1eb562ced91049de778396aaa438773698b3fa8fb6":"0x0","0x94a32b1c7b189ce7293f7ae444cdcab6800d858454022d15355d5ecc5b32b26":"0x0","0xa4b2d73a9f36ca5eed107f7c3d2ba877fb7537d447256726bcde9bac9e9aaee":"0x0","0xe0e3ab102c26f13da20123aa517b31e99cf65b7b720ba0dd7138012fd23eff2":"0x0","0x1203b5e51c7d5be6da42b83f22878d3583e53123857d27fc3cff3df46fb9126c":"0x0","0x13477730039a04f4290adf0e48e98b233579c040281545e4446ce662ba56a9be":"0x7800000000000000000000000000000000000000000000000000000000000002","0x1e06d49ce7b00846691778f302e94a3ac9c2633d745ebe73d68353c941e68dee":"0x626974636f696e0000000000000000000000000000000000000000000000000e","0x1e99199375610ffe00d28ee5827c616cf6469be3de2a2f738d955eb6b62127e8":"0x1","0x21e80eded1b2e1c5d976c85e89dde60bd4e99a8d66346af0e359ac854bceba44":"0x0","0x254d9ade81439f29723741d6ff407eab1fe03caffb042bd85e53955e41fb9792":"0x616c74696d697374000000000000000000000000000000000000000000000010","0x269db12b2cd2aeb7d5f52eda16edb1d211ccbea12da1ebfa60ed5f8f396c1d04":"0x0","0x2a3f03435eedee01de7e1c4386b04ca8469edd8df00408cd6d2b058bce1cecfa":"0x0","0x323a3cb169499006d6635c58232c8c58e23c20bf9e1d309d6b3bc6fb2c7a093d":"0x0","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x229c56b7805ab5935a883207f6a6bd5847e65aee","0x37aac864d4715a975bd45cae6be99de9f7968cf995917cc7f8192940fb62acbf":"0x0","0x3f69f26894a7ae0f7a7aa6c2d77935589dabbff6435aee960da15064dea7cd59":"0x64616f0000000000000000000000000000000000000000000000000000000006","0x467a68fda3230ce33f64703ebdbd91caccf235403282ae9fe390675ef39e9c94":"0x0","0x50ae8c017c4c1fddbe9509bd2b916f5dd9da11ddb639f2a4230322f49a41ac87":"0x1","0x5496787fc1ebdfeba375028c1865f13fbb1d63c0caa356ccc1b29a80f3ebd622":"0x0","0x576dd8d1a7b74aba0a99a213f50d74aa642a2c80bd5a854b24aac7568afea0f7":"0x626974676574000000000000000000000000000000000000000000000000000c","0x5b54338c052ce22ec334b6c5a19c4b122701c5fd4d3a2a5f5890f57050e0aafa":"0x626c6f636b636861696e00000000000000000000000000000000000000000014","0x5d9de30f0e5e02628e726fd23e310ee9e64489866fa6959825148a25d40e4c83":"0x0","0x5e2d99ab4a1a153039a4b2e068d64802da8735071a2d018ee9d04297945bed00":"0x0","0x670006c4193123492fb25db465ed52e62aff2f076289f4f1a5f167237f5e579d":"0x6d616e676100000000000000000000000000000000000000000000000000000a","0x6deac161c541001c0d79afaf7b809418785fa5ca6533d86bcf312e7213ee08fc":"0x0","0x6eaa0db35203bc0d58aff54ca630dd125b27758aa6204f7a11c0617f7c2fa776":"0x706f670000000000000000000000000000000000000000000000000000000006","0x732abe4661f55132b7f119cab9a9985be6630299dfc92870cc910f147795bc44":"0x0","0x743eb517f46c12bb593097087a972028308ce2e819a76cfb5488751f9d1ca34a":"0x7265616c6d00000000000000000000000000000000000000000000000000000a","0x750dfb39c9afc828c341e1a8e8fdca0b3914baf43303e1ef21fbfe8ec8ee016a":"0x0","0x7cbf647b96a1d1a533ea4bc3a4a8a78f166bd91e6a96afb12f063fef0e9cb960":"0x0","0x7dc972254779cfb51850c0eaccfcb71207822b3c10d4840567bec3dfbf0dff13":"0x636f6d0000000000000000000000000000000000000000000000000000000006","0x7dfa160584f41570c33e8e6c42c5314a7b45ddc162f99fd101ccc10c7b5b3dd3":"0x77616c6c6574000000000000000000000000000000000000000000000000000c","0x868a5f38a2d46181ffad442d7bc5b337b3c349a58e4979f2901786c6123b996c":"0x6b6c65766572000000000000000000000000000000000000000000000000000c","0x87b2c647061aef22ef1aba96c67f440d471dfac27e9873ff4a03793b402d32ee":"0x706f6c79676f6e0000000000000000000000000000000000000000000000000e","0x893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e":"0x7c3c91245769c8b7450ad522792dec4bd4bf797f","0x91e744007b4b3621bec7c01ea851c3f48cf196b9cc6c566a48cec8c5faac6e62":"0x0","0x92c5a28dd4caaa50e0a8370243a5c600f64349e8b03604b403cbe111b50f1f7b":"0x3838380000000000000000000000000000000000000000000000000000000006","0x947936973a3a21b10c8980e1a8939a55c7339d302161884a3de05cf090e812f0":"0x1","0x9535d3ea47c5e1398d3405b4fadc73de6b1b1e6a66f674a8886ab7a6c873a390":"0x63727970746f000000000000000000000000000000000000000000000000000c","0x9956a4e94676c45844be3667f17e077c7cb53aa4e87e5a71d65e56b291232715":"0x676f000000000000000000000000000000000000000000000000000000000004","0x9c6ba1ddff1ffbc14dcdc1f97db867554a42a39e00e892c7e882dbb3dca89ebf":"0x6869000000000000000000000000000000000000000000000000000000000004","0x9f836a0f81651f597cee678b440ba8c853c633e6654809efb83d4b22aff06fb2":"0x616e696d6500000000000000000000000000000000000000000000000000000a","0x9fecf1e12f4b8ec337da992721a0f27526ddbd6be1e77885ab963c09afcf0fc1":"0x0","0xab129a0f8c6cf8d160116a28abc7369c2f8a098fc023f00f07dc3e1d5798e47a":"0x0","0xb04c0eb6f034d9a3179a4e6f953bdf8afc78ba2cdcfbc775076e1c2a0bb67818":"0x0","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xbe51b53bc2060a7a6419622b5a9adc00b50a57e6aa741882f2f60f95d4580078":"0x636c617900000000000000000000000000000000000000000000000000000008","0xbf350522e335b8ab3da1d099c93cdc09179f1e15ea6aa1acfaa4afb1ef87eabf":"0x756e73746f707061626c65000000000000000000000000000000000000000016","0xcbf7a3d53e0851ac15a415b99c2ba95a2497dd9dd44068ac261bcbdafdfe8472":"0x707564677900000000000000000000000000000000000000000000000000000a","0xcf4411216f3fdf787d1cfe037bbcfa0d5293d83a8082f8e4141266399e2a784b":"0x61757374696e000000000000000000000000000000000000000000000000000c","0xcfdbac664139565f92cce149a345e5f19355d25b3eb8a70c549d5da3283a15b8":"0x7a696c0000000000000000000000000000000000000000000000000000000006","0xcfeb64c30a93ecd7224f854b09be57bb6b3962e739fa8e3ea3a1851502474c07":"0x1","0xe03c9c593ce8661bd39f77653f7ca6c43f093aa7f3b95890f309f67b57f39e74":"0x0","0xe50c62c16d12655dfdbd61c232155e5c3a1cf61977d2d8e7449cb88611b73832":"0x0","0xeeb0b17d77f2c9069ad443f3927c0802d98d5553e52b17c985d45d4a10b79566":"0x62696e616e636575730000000000000000000000000000000000000000000012","0xf562ef0db022f25a957fb6e49aa07004f14a50ed5b23279e9ac25b4632f7bf1c":"0x0","0xf6776268d6c5847a771099280c742d684a4b22bac609ba615de51f7f893ff2bc":"0x0"}},"0x3f1194b9019002863ad0dbbe295294547c0d36a9":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100b1575f3560e01c80635b0fc9c31161006e5780635b0fc9c3146101a55780635ef2c7f0146101b8578063a22cb465146101cb578063cf408823146101de578063e985e9c5146101f1578063f79fe5381461023c575f80fd5b80630178b8bf146100b557806302571be3146100fd57806306ab59231461011057806314ab90381461013157806316a25cbd146101465780631896f70a14610192575b5f80fd5b6100e06100c3366004610785565b5f908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100e061010b366004610785565b610266565b61012361011e3660046107b7565b610292565b6040519081526020016100f4565b61014461013f366004610800565b61035f565b005b610179610154366004610785565b5f90815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100f4565b6101446101a036600461082a565b61042e565b6101446101b336600461082a565b6104ef565b6101446101c636600461084b565b61058e565b6101446101d936600461089e565b6105af565b6101446101ec3660046108d7565b61061a565b61022c6101ff366004610921565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205460ff1690565b60405190151581526020016100f4565b61022c61024a366004610785565b5f908152602081905260409020546001600160a01b0316151590565b5f818152602081905260408120546001600160a01b031630810361028c57505f92915050565b92915050565b5f8381526020819052604081205484906001600160a01b0316338114806102db57506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b6102e3575f80fd5b604080516020808201899052818301889052825180830384018152606090920190925280519101206103158186610635565b6040516001600160a01b0386168152869088907fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829060200160405180910390a39695505050505050565b5f8281526020819052604090205482906001600160a01b0316338114806103a857506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b6103b0575f80fd5b60405167ffffffffffffffff8416815284907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a250505f91825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b5f8281526020819052604090205482906001600160a01b03163381148061047757506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b61047f575f80fd5b6040516001600160a01b038416815284907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a250505f9182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b5f8281526020819052604090205482906001600160a01b03163381148061053857506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b610540575f80fd5b61054a8484610635565b6040516001600160a01b038416815284907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a250505050565b5f61059a868686610292565b90506105a7818484610662565b505050505050565b335f8181526001602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b61062484846104ef565b61062f848383610662565b50505050565b5f9182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b5f838152602081905260409020600101546001600160a01b038381169116146106e6575f838152602081815260409182902060010180546001600160a01b0319166001600160a01b038616908117909155915191825284917f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a0910160405180910390a25b5f8381526020819052604090206001015467ffffffffffffffff828116600160a01b9092041614610780575f8381526020818152604091829020600101805467ffffffffffffffff60a01b1916600160a01b67ffffffffffffffff861690810291909117909155915191825284917f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa68910160405180910390a25b505050565b5f60208284031215610795575f80fd5b5035919050565b80356001600160a01b03811681146107b2575f80fd5b919050565b5f805f606084860312156107c9575f80fd5b83359250602084013591506107e06040850161079c565b90509250925092565b803567ffffffffffffffff811681146107b2575f80fd5b5f8060408385031215610811575f80fd5b82359150610821602084016107e9565b90509250929050565b5f806040838503121561083b575f80fd5b823591506108216020840161079c565b5f805f805f60a0868803121561085f575f80fd5b85359450602086013593506108766040870161079c565b92506108846060870161079c565b9150610892608087016107e9565b90509295509295909350565b5f80604083850312156108af575f80fd5b6108b88361079c565b9150602083013580151581146108cc575f80fd5b809150509250929050565b5f805f80608085870312156108ea575f80fd5b843593506108fa6020860161079c565b92506109086040860161079c565b9150610916606086016107e9565b905092959194509250565b5f8060408385031215610932575f80fd5b61093b8361079c565b91506108216020840161079c56fea164736f6c6343000818000a","storage":{"0xdd4f47a3b6f87903b728feed7a23273bd8de58e4fa257d37a74a5881e5d92ff":"0xf670681605efc4efc804f5a9b97ee89520473d56","0x14ce109f1cffdc11aa7355660be720f902291be09fb159b4c578958cd0f533bc":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x14ce109f1cffdc11aa7355660be720f902291be09fb159b4c578958cd0f533bd":"0x0","0x1e2c8528d7e8e90443ad0a4e37b6f2b1daed719a574ce3a0c347063e8d839d50":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1e2c8528d7e8e90443ad0a4e37b6f2b1daed719a574ce3a0c347063e8d839d51":"0x0","0x2fb4213711fd985fc1fb1ea2bfa660b0b37fd50c6c74ab531d9b54b29dd5177e":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2fb4213711fd985fc1fb1ea2bfa660b0b37fd50c6c74ab531d9b54b29dd5177f":"0x0","0x859ecef2e168dc10231b000bd53493b42bc9d944cac29d94582c1e1d43592131":"0xc965345edac823d56812cd20a10316233916a605","0x8878c6daefcfc78c7f181d00d719b4a0612dd3e65cafeb72507d15c036a9f690":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0xe4fdf45c2f8d198854f8823809c7a988eeaaa493","0xfb5568c6845cf0d5915af088a5d8ba90a5ff735e102c9a79609ef7d043f1108c":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xfb5568c6845cf0d5915af088a5d8ba90a5ff735e102c9a79609ef7d043f1108d":"0x0"}},"0x4872cc1be60a9db9c880a0a437da7a6af134f08f":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100935760003560e01c80637362d9c8116100665780637362d9c8146101285780637b1039991461014e57806399e0dd7c14610172578063bb5f747b146101e2578063d6cd94731461020857610093565b806310154bad14610098578063291d9549146100c05780633af32abf146100e65780634c5a628c14610120575b600080fd5b6100be600480360360208110156100ae57600080fd5b50356001600160a01b0316610210565b005b6100be600480360360208110156100d657600080fd5b50356001600160a01b0316610260565b61010c600480360360208110156100fc57600080fd5b50356001600160a01b03166102ad565b604080519115158252519081900360200190f35b6100be6102c6565b6100be6004803603602081101561013e57600080fd5b50356001600160a01b03166102d1565b61015661031e565b604080516001600160a01b039092168252519081900360200190f35b6100be6004803603602081101561018857600080fd5b8101906020810181356401000000008111156101a357600080fd5b8201836020820111156101b557600080fd5b803590602001918460018302840111640100000000831117156101d757600080fd5b50909250905061032d565b61010c600480360360208110156101f857600080fd5b50356001600160a01b0316610404565b6100be610416565b61021933610404565b6102545760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d8161041f565b50565b61026933610404565b6102a45760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d81610467565b60006102c060018363ffffffff6104af16565b92915050565b6102cf33610516565b565b6102da33610404565b6103155760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d8161055e565b6002546001600160a01b031690565b610336336102ad565b6103715760405162461bcd60e51b815260040180806020018281038252603a815260200180610712603a913960400191505060405180910390fd5b6002546040516369426cbd60e11b8152602060048201908152602482018490526001600160a01b039092169163d284d97a91859185918190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b1580156103e857600080fd5b505af11580156103fc573d6000803e3d6000fd5b505050505050565b60006102c0818363ffffffff6104af16565b6102cf33610467565b61043060018263ffffffff6105a616565b6040516001600160a01b038216907fee1504a83b6d4a361f4c1dc78ab59bfa30d6a3b6612c403e86bb01ef2984295f90600090a250565b61047860018263ffffffff61062716565b6040516001600160a01b038216907f270d9b30cf5b0793bbfd54c9d5b94aeb49462b8148399000265144a8722da6b690600090a250565b60006001600160a01b0382166104f65760405162461bcd60e51b81526004018080602001828103825260228152602001806106b06022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b61052760008263ffffffff61062716565b6040516001600160a01b038216907f0a8eb35e5ca14b3d6f28e4abf2f128dbab231a58b56e89beb5d636115001e16590600090a250565b61056f60008263ffffffff6105a616565b6040516001600160a01b038216907f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129990600090a250565b6105b082826104af565b15610602576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b61063182826104af565b61066c5760405162461bcd60e51b815260040180806020018281038252602181526020018061068f6021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f206164647265737357686974656c69737441646d696e526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c69737441646d696e20726f6c6557686974656c6973746564526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c697374656420726f6c65a265627a7a72315820debca60946c0819dc5b5c2756c5c1dd8dd8a46f2429fa8a43a4f4362af3030c164736f6c634300050c0032","storage":{"0x2":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x5ac40fcee41fb0272a935f6e51e963102fba5db6f20e897e9361f0347eb2cae6":"0x1","0xdc4aeb95a779c8b92b845e3a94044db8ff2e43acc37da18c4b35a6bbad7c122f":"0x1"}},"0x49da8861c65460639925febe1fb4b5b59b443082":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f7e83aee1461002d575b5f80fd5b61004061003b3660046101ac565b610054565b604051901515815260200160405180910390f35b5f602082146100a95760405162461bcd60e51b815260206004820152601a60248201527f496e76616c6964207368613235362068617368206c656e677468000000000000604482015260640160405180910390fd5b6100eb5f84848080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101459050565b600286866040516100fd929190610213565b602060405180830381855afa158015610118573d5f803e3d5ffd5b5050506040513d601f19601f8201168201806040525081019061013b9190610222565b1495945050505050565b81515f90610154836020610239565b111561015e575f80fd5b50016020015190565b5f8083601f840112610177575f80fd5b50813567ffffffffffffffff81111561018e575f80fd5b6020830191508360208285010111156101a5575f80fd5b9250929050565b5f805f80604085870312156101bf575f80fd5b843567ffffffffffffffff808211156101d6575f80fd5b6101e288838901610167565b909650945060208701359150808211156101fa575f80fd5b5061020787828801610167565b95989497509550505050565b818382375f9101908152919050565b5f60208284031215610232575f80fd5b5051919050565b8082018082111561025857634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x4a3c194eb88966178bfdd81744dddafed611b830":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061009e5760003560e01c806398650275116100665780639865027514610305578063aa271e1a1461030d578063b2da297914610347578063be362e2e146103c5578063c36c2125146104fe5761009e565b80634c0b0ed2146100a35780637b103999146101595780637caf3ad81461017d5780638ad364f814610258578063983b2d56146102df575b600080fd5b610157600480360360408110156100b957600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156100e357600080fd5b8201836020820111156100f557600080fd5b803590602001918460018302840111600160201b8311171561011657600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506105bd945050505050565b005b61016161074c565b604080516001600160a01b039092168252519081900360200190f35b6101576004803603608081101561019357600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156101bd57600080fd5b8201836020820111156101cf57600080fd5b803590602001918460018302840111600160201b831117156101f057600080fd5b919390926001600160a01b0383351692604081019060200135600160201b81111561021a57600080fd5b82018360208201111561022c57600080fd5b803590602001918460018302840111600160201b8311171561024d57600080fd5b50909250905061075b565b6101576004803603606081101561026e57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561029857600080fd5b8201836020820111156102aa57600080fd5b803590602001918460018302840111600160201b831117156102cb57600080fd5b9193509150356001600160a01b0316610957565b610157600480360360208110156102f557600080fd5b50356001600160a01b0316610b2b565b610157610b7b565b6103336004803603602081101561032357600080fd5b50356001600160a01b0316610b86565b604080519115158252519081900360200190f35b6101576004803603604081101561035d57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561038757600080fd5b82018360208201111561039957600080fd5b803590602001918460018302840111600160201b831117156103ba57600080fd5b509092509050610b9e565b610157600480360360608110156103db57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561040557600080fd5b82018360208201111561041757600080fd5b803590602001918460018302840111600160201b8311171561043857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b81111561048a57600080fd5b82018360208201111561049c57600080fd5b803590602001918460018302840111600160201b831117156104bd57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610bf1945050505050565b6101576004803603606081101561051457600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561053e57600080fd5b82018360208201111561055057600080fd5b803590602001918460018302840111600160201b8311171561057157600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550505090356001600160a01b03169150610dec9050565b6105c633610b86565b6106015760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b039092169163b5466669918591849163ebf0c717916004808301926020929190829003018186803b15801561064f57600080fd5b505afa158015610663573d6000803e3d6000fd5b505050506040513d602081101561067957600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052606060448301908152875160648401528751889360840190602085019080838360005b838110156106e25781810151838201526020016106ca565b50505050905090810190601f16801561070f5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15801561073057600080fd5b505af1158015610744573d6000803e3d6000fd5b505050505050565b6001546001600160a01b031690565b6107cf8686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f89018190048102820181019092528781529250879150869081908401838280828437600092019190915250610bf192505050565b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691632525d06a91869184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b15801561082557600080fd5b505afa158015610839573d6000803e3d6000fd5b505050506040513d602081101561084f57600080fd5b5051604080516001600160e01b031960e085901b1681526004810183815260248201928352604482018d90528d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b1580156108bd57600080fd5b505afa1580156108d1573d6000803e3d6000fd5b505050506040513d60208110156108e757600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b15801561093757600080fd5b505af115801561094b573d6000803e3d6000fd5b50505050505050505050565b6109a58484848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250610bf1915050565b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691632525d06a91849184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b1580156109fb57600080fd5b505afa158015610a0f573d6000803e3d6000fd5b505050506040513d6020811015610a2557600080fd5b5051604080516001600160e01b031960e085901b1681526004810183815260248201928352604482018b90528b928b92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b158015610a9357600080fd5b505afa158015610aa7573d6000803e3d6000fd5b505050506040513d6020811015610abd57600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b158015610b0d57600080fd5b505af1158015610b21573d6000803e3d6000fd5b5050505050505050565b610b3433610b86565b610b6f5760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b610b7881611115565b50565b610b843361115d565b565b6000610b98818363ffffffff6111a516565b92915050565b610bec8383838080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250610bf1915050565b505050565b610bfa33610b86565b610c355760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691630467e014918691849163ebf0c717916004808301926020929190829003018186803b158015610c8357600080fd5b505afa158015610c97573d6000803e3d6000fd5b505050506040513d6020811015610cad57600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052608060448301908152885160848401528851899389939291606482019160a40190602087019080838360005b83811015610d1f578181015183820152602001610d07565b50505050905090810190601f168015610d4c5780820380516001836020036101000a031916815260200191505b50838103825284518152845160209182019186019080838360005b83811015610d7f578181015183820152602001610d67565b50505050905090810190601f168015610dac5780820380516001836020036101000a031916815260200191505b509650505050505050600060405180830381600087803b158015610dcf57600080fd5b505af1158015610de3573d6000803e3d6000fd5b50505050505050565b610df533610b86565b610e305760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b039092169163b5466669918691849163ebf0c717916004808301926020929190829003018186803b158015610e7e57600080fd5b505afa158015610e92573d6000803e3d6000fd5b505050506040513d6020811015610ea857600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052606060448301908152885160648401528851899360840190602085019080838360005b83811015610f11578181015183820152602001610ef9565b50505050905090810190601f168015610f3e5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015610f5f57600080fd5b505af1158015610f73573d6000803e3d6000fd5b50506001546040805163ebf0c71760e01b815290516001600160a01b039092169350632525d06a9250849184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b158015610fcd57600080fd5b505afa158015610fe1573d6000803e3d6000fd5b505050506040513d6020811015610ff757600080fd5b5051604080516001600160e01b031960e085901b16815260048101838152602482019283528a5160448301528a518b93919260640190602085019080838360005b83811015611050578181015183820152602001611038565b50505050905090810190601f16801561107d5780820380516001836020036101000a031916815260200191505b50935050505060206040518083038186803b15801561109b57600080fd5b505afa1580156110af573d6000803e3d6000fd5b505050506040513d60208110156110c557600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b158015610dcf57600080fd5b61112660008263ffffffff61120c16565b6040516001600160a01b038216907f6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f690600090a250565b61116e60008263ffffffff61128d16565b6040516001600160a01b038216907fe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb6669290600090a250565b60006001600160a01b0382166111ec5760405162461bcd60e51b81526004018080602001828103825260228152602001806113466022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b61121682826111a5565b15611268576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b61129782826111a5565b6112d25760405162461bcd60e51b81526004018080602001828103825260218152602001806113256021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe4d696e746572526f6c653a2063616c6c657220646f6573206e6f74206861766520746865204d696e74657220726f6c65526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f2061646472657373a265627a7a72315820c058d70355f7d37ff6b3b61cd850cc4a41893e30048389698c062148bf3d2ff464736f6c634300050c0032","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x789b49055833748af4eaa9affbcd84118ce8770f7e4385b5a3f428626b1f0aff":"0x1","0xdc4aeb95a779c8b92b845e3a94044db8ff2e43acc37da18c4b35a6bbad7c122f":"0x1"}},"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061007b5760003560e01c80639623609d1161004e5780639623609d1461011157806399a88ec414610124578063f2fde38b14610144578063f3b7dead1461016457600080fd5b8063204e1c7a14610080578063715018a6146100bc5780637eff275e146100d35780638da5cb5b146100f3575b600080fd5b34801561008c57600080fd5b506100a061009b366004610499565b610184565b6040516001600160a01b03909116815260200160405180910390f35b3480156100c857600080fd5b506100d1610215565b005b3480156100df57600080fd5b506100d16100ee3660046104bd565b610229565b3480156100ff57600080fd5b506000546001600160a01b03166100a0565b6100d161011f36600461050c565b610291565b34801561013057600080fd5b506100d161013f3660046104bd565b610300565b34801561015057600080fd5b506100d161015f366004610499565b610336565b34801561017057600080fd5b506100a061017f366004610499565b6103b4565b6000806000836001600160a01b03166040516101aa90635c60da1b60e01b815260040190565b600060405180830381855afa9150503d80600081146101e5576040519150601f19603f3d011682016040523d82523d6000602084013e6101ea565b606091505b5091509150816101f957600080fd5b8080602001905181019061020d91906105e2565b949350505050565b61021d6103da565b6102276000610434565b565b6102316103da565b6040516308f2839760e41b81526001600160a01b038281166004830152831690638f283970906024015b600060405180830381600087803b15801561027557600080fd5b505af1158015610289573d6000803e3d6000fd5b505050505050565b6102996103da565b60405163278f794360e11b81526001600160a01b03841690634f1ef2869034906102c990869086906004016105ff565b6000604051808303818588803b1580156102e257600080fd5b505af11580156102f6573d6000803e3d6000fd5b5050505050505050565b6103086103da565b604051631b2ce7f360e11b81526001600160a01b038281166004830152831690633659cfe69060240161025b565b61033e6103da565b6001600160a01b0381166103a85760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b6103b181610434565b50565b6000806000836001600160a01b03166040516101aa906303e1469160e61b815260040190565b6000546001600160a01b031633146102275760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161039f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146103b157600080fd5b6000602082840312156104ab57600080fd5b81356104b681610484565b9392505050565b600080604083850312156104d057600080fd5b82356104db81610484565b915060208301356104eb81610484565b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561052157600080fd5b833561052c81610484565b9250602084013561053c81610484565b9150604084013567ffffffffffffffff8082111561055957600080fd5b818601915086601f83011261056d57600080fd5b81358181111561057f5761057f6104f6565b604051601f8201601f19908116603f011681019083821181831017156105a7576105a76104f6565b816040528281528960208487010111156105c057600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000602082840312156105f457600080fd5b81516104b681610484565b60018060a01b038316815260006020604081840152835180604085015260005b8181101561063b5785810183015185820160600152820161061f565b8181111561064d576000606083870101525b50601f01601f19169290920160600194935050505056fea26469706673582212207ad53e1008cce369999f6b5f2f77109510b404ff1de9b47b639981fd68e6239264736f6c63430008090033","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x4e59b44847b379578588920ca78fbf26c0b4956c":{"nonce":0,"balance":"0x0","code":"0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe03601600081602082378035828234f58015156039578182fd5b8082525050506014600cf3","storage":{}},"0x4eb9de1fc0d800e941f326d6699e9e11969557ea":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063100cdd911461002d575b5f80fd5b61004061003b3660046102cd565b610042565b005b5f5b818110156101b8575f7f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e28484848181106100805761008061033c565b905060200201356040516020016100a1929190918252602082015260400190565b60408051808303601f190181529082905280516020909101206331a9108f60e11b82526004820181905291507f000000000000000000000000107733fed96c4cd390c944a31f5425a7fb98ae5e6001600160a01b0316906323b872dd908290636352211e90602401602060405180830381865afa158015610124573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101489190610350565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015261dead6024820152604481018490526064015f604051808303815f87803b158015610195575f80fd5b505af11580156101a7573d5f803e3d5ffd5b505060019093019250610044915050565b5080156102c9577f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e282826101ed60018261037d565b8181106101fc576101fc61033c565b9050602002013560405160200161021d929190918252602082015260400190565b604051602081830303815290604052805190602001205f1c7f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e283835f8181106102685761026861033c565b90506020020135604051602001610289929190918252602082015260400190565b60408051601f19818403018152908290528051602090910120907fdf423376f9b0ab363b1b4d6f0b4cb6821921ec30f491555a97236a8a38ce095a905f90a35b5050565b5f80602083850312156102de575f80fd5b823567ffffffffffffffff808211156102f5575f80fd5b818501915085601f830112610308575f80fd5b813581811115610316575f80fd5b8660208260051b850101111561032a575f80fd5b60209290920196919550909350505050565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215610360575f80fd5b81516001600160a01b0381168114610376575f80fd5b9392505050565b8181038181111561039c57634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x4fbf7b2f171336958be5d15ff762a5cff5363568":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061011b575f3560e01c80638d839ffe1161009d578063aeb8ce9b11610062578063aeb8ce9b14610356578063ce1e09c014610375578063d3419bf3146103a8578063f14fcbc8146103db578063f2fde38b146103fa575f80fd5b80638d839ffe146102a25780638da5cb5b146102d55780639791c097146102f1578063a8e5fbc014610310578063acf1a84114610343575f80fd5b806374694a2b116100e357806374694a2b146101c957806380869853146101dc578063839df9451461022757806383e7f6ff146102525780638a95b09f1461028c575f80fd5b806301ffc9a71461011f5780633ccfd60b146101535780635d3590d51461016957806365a69dcf14610188578063715018a6146101b5575b5f80fd5b34801561012a575f80fd5b5061013e610139366004611145565b610419565b60405190151581526020015b60405180910390f35b34801561015e575f80fd5b5061016761044f565b005b348015610174575f80fd5b50610167610183366004611187565b610489565b348015610193575f80fd5b506101a76101a23660046112e4565b610507565b60405190815260200161014a565b3480156101c0575f80fd5b5061016761058b565b6101676101d73660046113db565b61059e565b3480156101e7575f80fd5b5061020f7f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5681565b6040516001600160a01b03909116815260200161014a565b348015610232575f80fd5b506101a761024136600461149d565b60016020525f908152604090205481565b34801561025d575f80fd5b5061027161026c3660046114b4565b610894565b6040805182518152602092830151928101929092520161014a565b348015610297575f80fd5b506101a76224ea0081565b3480156102ad575f80fd5b506101a77f000000000000000000000000000000000000000000000000000000000000025881565b3480156102e0575f80fd5b505f546001600160a01b031661020f565b3480156102fc575f80fd5b5061013e61030b3660046114f6565b6109c9565b34801561031b575f80fd5b5061020f7f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e1841720481565b610167610351366004611528565b6109dd565b348015610361575f80fd5b5061013e6103703660046114f6565b610b7b565b348015610380575f80fd5b506101a77f000000000000000000000000000000000000000000000000000000000001518081565b3480156103b3575f80fd5b5061020f7f000000000000000000000000ec71e4e674fe0f432693dc2b935c34bd2774c00381565b3480156103e6575f80fd5b506101676103f536600461149d565b610c22565b348015610405575f80fd5b50610167610414366004611570565b610c95565b5f6001600160e01b031982166301ffc9a760e01b148061044957506001600160e01b0319821663612e8c0960e01b145b92915050565b5f80546040516001600160a01b03909116914780156108fc02929091818181858888f19350505050158015610486573d5f803e3d5ffd5b50565b610491610d0b565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af11580156104dd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105019190611589565b50505050565b885160208a01205f90841580159061052657506001600160a01b038716155b15610544576040516334fd817160e21b815260040160405180910390fd5b808a8a8a8a8a8a8a8a6040516020016105659998979695949392919061165e565b604051602081830303815290604052805190602001209150509998505050505050505050565b610593610d0b565b61059c5f610d64565b565b5f6105df8b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c9250610894915050565b602081015181519192506105f2916116d5565b3410156106125760405163044044a560e21b815260040160405180910390fd5b6106b38b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f82011690508083019250505050505050896106ae8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f820116905080830192505050505050508d8d8d8d8d8d8d8d610507565b610db3565b604051635200a4c160e11b81525f906001600160a01b037f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e18417204169063a40149829061070b908f908f908f908f908e908b906004016116e8565b6020604051808303815f875af1158015610727573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061074b9190611732565b9050841561077657610776878d8d604051610767929190611749565b60405180910390208888610ece565b83156107be576107be8c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508b9250339150610f939050565b896001600160a01b03168c8c6040516107d8929190611749565b60405180910390207f69e37f151eb98a09618ddaa80c8cfaf1ce5996867c489f45b555b412271ebf278e8e865f015187602001518760405161081e959493929190611758565b60405180910390a36020820151825161083791906116d5565b341115610886576020820151825133916108fc9161085591906116d5565b61085f9034611788565b6040518115909202915f818181858888f19350505050158015610884573d5f803e3d5ffd5b505b505050505050505050505050565b604080518082019091525f808252602082015282516020840120604051636b727d4360e11b8152600481018290527f000000000000000000000000ec71e4e674fe0f432693dc2b935c34bd2774c0036001600160a01b03908116916350e9a7159187917f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063d6e4fa8690602401602060405180830381865afa158015610940573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109649190611732565b866040518463ffffffff1660e01b8152600401610983939291906117e8565b6040805180830381865afa15801561099d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109c1919061180c565b949350505050565b5f60036109d583611044565b101592915050565b5f83836040516109ee929190611749565b604080519182900382206020601f8701819004810284018101909252858352925082915f91610a39919088908890819084018382808284375f92019190915250889250610894915050565b8051909150341015610a5e5760405163044044a560e21b815260040160405180910390fd5b60405163c475abff60e01b815260048101839052602481018590525f907f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b03169063c475abff906044016020604051808303815f875af1158015610acb573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610aef9190611732565b8251909150341115610b3457815133906108fc90610b0d9034611788565b6040518115909202915f818181858888f19350505050158015610b32573d5f803e3d5ffd5b505b837f3da24c024582931cfaf8267d8ed24d13a82a8068d5bd337d30ec45cea4e506ae88883485604051610b6a9493929190611859565b60405180910390a250505050505050565b805160208201205f90610b8d836109c9565b8015610c1b57506040516312dc929d60e31b8152600481018290527f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b0316906396e494e890602401602060405180830381865afa158015610bf7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c1b9190611589565b9392505050565b5f818152600160205260409020544290610c5d907f0000000000000000000000000000000000000000000000000000000000015180906116d5565b10610c8357604051630a059d7160e01b8152600481018290526024015b60405180910390fd5b5f908152600160205260409020429055565b610c9d610d0b565b6001600160a01b038116610d025760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610c7a565b61048681610d64565b5f546001600160a01b0316331461059c5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610c7a565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f818152600160205260409020544290610dee907f0000000000000000000000000000000000000000000000000000000000000258906116d5565b1115610e1057604051635320bcf960e01b815260048101829052602401610c7a565b5f818152600160205260409020544290610e4b907f0000000000000000000000000000000000000000000000000000000000015180906116d5565b11610e6c5760405163cb7690d760e01b815260048101829052602401610c7a565b610e7583610b7b565b610e9457826040516308eee0fd60e31b8152600401610c7a919061187f565b5f818152600160205260408120556224ea00821015610ec957604051639a71997b60e01b815260048101839052602401610c7a565b505050565b604080517f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae6020808301919091528183018690528251808303840181526060830193849052805191012063e32954eb60e01b90925285906001600160a01b0382169063e32954eb90610f4890859088908890606401611891565b5f604051808303815f875af1158015610f63573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052610f8a91908101906118b3565b50505050505050565b7f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d566001600160a01b0316637a806d6b33838587604051602001610fd691906119a7565b6040516020818303038152906040526040518563ffffffff1660e01b815260040161100494939291906119ce565b6020604051808303815f875af1158015611020573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105019190611732565b80515f90819081905b8082101561113c575f85838151811061106857611068611a0b565b01602001516001600160f81b0319169050600160ff1b811015611097576110906001846116d5565b9250611129565b600760fd1b6001600160f81b0319821610156110b8576110906002846116d5565b600f60fc1b6001600160f81b0319821610156110d9576110906003846116d5565b601f60fb1b6001600160f81b0319821610156110fa576110906004846116d5565b603f60fa1b6001600160f81b03198216101561111b576110906005846116d5565b6111266006846116d5565b92505b508261113481611a1f565b93505061104d565b50909392505050565b5f60208284031215611155575f80fd5b81356001600160e01b031981168114610c1b575f80fd5b80356001600160a01b0381168114611182575f80fd5b919050565b5f805f60608486031215611199575f80fd5b6111a28461116c565b92506111b06020850161116c565b9150604084013590509250925092565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff811182821017156111fd576111fd6111c0565b604052919050565b5f67ffffffffffffffff82111561121e5761121e6111c0565b50601f01601f191660200190565b5f82601f83011261123b575f80fd5b813561124e61124982611205565b6111d4565b818152846020838601011115611262575f80fd5b816020850160208301375f918101602001919091529392505050565b5f8083601f84011261128e575f80fd5b50813567ffffffffffffffff8111156112a5575f80fd5b6020830191508360208260051b85010111156112bf575f80fd5b9250929050565b8015158114610486575f80fd5b803561ffff81168114611182575f80fd5b5f805f805f805f805f6101008a8c0312156112fd575f80fd5b893567ffffffffffffffff80821115611314575f80fd5b6113208d838e0161122c565b9a5061132e60208d0161116c565b995060408c0135985060608c0135975061134a60808d0161116c565b965060a08c013591508082111561135f575f80fd5b5061136c8c828d0161127e565b90955093505060c08a0135611380816112c6565b915061138e60e08b016112d3565b90509295985092959850929598565b5f8083601f8401126113ad575f80fd5b50813567ffffffffffffffff8111156113c4575f80fd5b6020830191508360208285010111156112bf575f80fd5b5f805f805f805f805f806101008b8d0312156113f5575f80fd5b8a3567ffffffffffffffff8082111561140c575f80fd5b6114188e838f0161139d565b909c509a508a915061142c60208e0161116c565b995060408d0135985060608d0135975061144860808e0161116c565b965060a08d013591508082111561145d575f80fd5b5061146a8d828e0161127e565b90955093505060c08b013561147e816112c6565b915061148c60e08c016112d3565b90509295989b9194979a5092959850565b5f602082840312156114ad575f80fd5b5035919050565b5f80604083850312156114c5575f80fd5b823567ffffffffffffffff8111156114db575f80fd5b6114e78582860161122c565b95602094909401359450505050565b5f60208284031215611506575f80fd5b813567ffffffffffffffff81111561151c575f80fd5b6109c18482850161122c565b5f805f6040848603121561153a575f80fd5b833567ffffffffffffffff811115611550575f80fd5b61155c8682870161139d565b909790965060209590950135949350505050565b5f60208284031215611580575f80fd5b610c1b8261116c565b5f60208284031215611599575f80fd5b8151610c1b816112c6565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b5f838385526020808601955060208560051b830101845f5b8781101561165157848303601f19018952813536889003601e19018112611609575f80fd5b8701848101903567ffffffffffffffff811115611624575f80fd5b803603821315611632575f80fd5b61163d8582846115a4565b9a86019a94505050908301906001016115e4565b5090979650505050505050565b8981526001600160a01b03898116602083015260408201899052606082018890528616608082015261010060a082018190525f9061169f83820187896115cc565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610449576104496116c1565b60a081525f6116fb60a08301888a6115a4565b6001600160a01b03968716602084015260408301959095525091909316606082015261ffff90921660809092019190915292915050565b5f60208284031215611742575f80fd5b5051919050565b818382375f9101908152919050565b608081525f61176b6080830187896115a4565b602083019590955250604081019290925260609091015292915050565b81810381811115610449576104496116c1565b5f5b838110156117b557818101518382015260200161179d565b50505f910152565b5f81518084526117d481602086016020860161179b565b601f01601f19169290920160200192915050565b606081525f6117fa60608301866117bd565b60208301949094525060400152919050565b5f6040828403121561181c575f80fd5b6040516040810181811067ffffffffffffffff8211171561183f5761183f6111c0565b604052825181526020928301519281019290925250919050565b606081525f61186c6060830186886115a4565b6020830194909452506040015292915050565b602081525f610c1b60208301846117bd565b838152604060208201525f6118aa6040830184866115cc565b95945050505050565b5f60208083850312156118c4575f80fd5b825167ffffffffffffffff808211156118db575f80fd5b818501915085601f8301126118ee575f80fd5b815181811115611900576119006111c0565b8060051b61190f8582016111d4565b9182528381018501918581019089841115611928575f80fd5b86860192505b8383101561199a57825185811115611944575f80fd5b8601603f81018b13611954575f80fd5b87810151604061196661124983611205565b8281528d82848601011115611979575f80fd5b611988838c830184870161179b565b8552505050918601919086019061192e565b9998505050505050505050565b5f82516119b881846020870161179b565b6305ccae8d60e31b920191825250600401919050565b6001600160a01b0385811682528481166020830152831660408201526080606082018190525f90611a01908301846117bd565b9695505050505050565b634e487b7160e01b5f52603260045260245ffd5b5f60018201611a3057611a306116c1565b506001019056fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x5155f5627bdf9795b3dbb8887001ada1eeba93f2":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063de8f50a11461002d575b5f80fd5b61004761003b3660046100a0565b60019695505050505050565b604051901515815260200160405180910390f35b5f8083601f84011261006b575f80fd5b50813567ffffffffffffffff811115610082575f80fd5b602083019150836020828501011115610099575f80fd5b9250929050565b5f805f805f80606087890312156100b5575f80fd5b863567ffffffffffffffff808211156100cc575f80fd5b6100d88a838b0161005b565b909850965060208901359150808211156100f0575f80fd5b6100fc8a838b0161005b565b90965094506040890135915080821115610114575f80fd5b5061012189828a0161005b565b979a969950949750929593949250505056fea164736f6c6343000818000a","storage":{}},"0x54563a9e1cd2dcbd0bca90d3cfa4a647e02c404a":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106101db575f3560e01c80638da5cb5b116100fd578063c4d66de811610092578063daea85c511610062578063daea85c51461055e578063e7acab241461057d578063f2fde38b1461059c578063ffa1ad74146105bb575f80fd5b8063c4d66de8146104e1578063d539139314610500578063d547741f14610520578063d9caed121461053f575f80fd5b8063a217fddf116100cd578063a217fddf14610452578063a3f4df7e14610465578063a4247400146104a3578063aa271e1a146104c2575f80fd5b80638da5cb5b146103d957806391d1485414610400578063983b2d561461041f578063986502751461043e575f80fd5b80635c975abb11610173578063715018a611610143578063715018a61461037f57806371e2a6571461039357806381c81d35146103b25780638456cb59146103c5575f80fd5b80635c975abb146103165780635fc1964f1461032e578063634486da1461034d5780636ccbae5f14610360575f80fd5b80633092afd5116101ae5780633092afd51461029c57806336568abe146102bb5780633f4ba83a146102da578063572b6c05146102ee575f80fd5b806301ffc9a7146101df5780631bf7e13e14610213578063248a9ca31461023f5780632f2ff15d1461027b575b5f80fd5b3480156101ea575f80fd5b506101fe6101f9366004611ee0565b6105eb565b60405190151581526020015b60405180910390f35b34801561021e575f80fd5b5061023261022d366004611f07565b610621565b60405161020a9190611fe9565b34801561024a575f80fd5b5061026d610259366004611ffb565b5f90815260fb602052604090206001015490565b60405190815260200161020a565b348015610286575f80fd5b5061029a610295366004612036565b6106ea565b005b3480156102a7575f80fd5b5061029a6102b6366004612064565b610713565b3480156102c6575f80fd5b5061029a6102d5366004612036565b610727565b3480156102e5575f80fd5b5061029a6107ba565b3480156102f9575f80fd5b506101fe610308366004612064565b6001600160a01b0316301490565b348015610321575f80fd5b5061012d5460ff166101fe565b348015610339575f80fd5b5061029a6103483660046120eb565b6107d4565b61029a61035b366004612064565b610811565b34801561036b575f80fd5b5061026d61037a366004611ffb565b6108d1565b34801561038a575f80fd5b5061029a61092a565b34801561039e575f80fd5b5061029a6103ad3660046120eb565b61093b565b61029a6103c0366004612064565b610978565b3480156103d0575f80fd5b5061029a6109f5565b3480156103e4575f80fd5b506097546040516001600160a01b03909116815260200161020a565b34801561040b575f80fd5b506101fe61041a366004612036565b610a0d565b34801561042a575f80fd5b5061029a610439366004612064565b610a37565b348015610449575f80fd5b5061029a610a48565b34801561045d575f80fd5b5061026d5f81565b348015610470575f80fd5b506102326040518060400160405280601381526020017229b2b0b837b93a10283937bc3c90213abcb2b960691b81525081565b3480156104ae575f80fd5b506101fe6104bd366004611f07565b610a61565b3480156104cd575f80fd5b506101fe6104dc366004612064565b610ab2565b3480156104ec575f80fd5b5061029a6104fb366004612064565b610aca565b34801561050b575f80fd5b5061026d5f80516020612ea783398151915281565b34801561052b575f80fd5b5061029a61053a366004612036565b610c21565b34801561054a575f80fd5b5061029a61055936600461218b565b610c45565b348015610569575f80fd5b5061029a610578366004612064565b610cf7565b348015610588575f80fd5b506101fe6105973660046121c9565b610dac565b3480156105a7575f80fd5b5061029a6105b6366004612064565b6111db565b3480156105c6575f80fd5b5061023260405180604001604052806005815260200164302e302e3160d81b81525081565b5f6001600160e01b03198216637965db0b60e01b148061061b57506301ffc9a760e01b6001600160e01b03198316145b92915050565b60605f5a9050610632858585610a61565b61064f57604051638baa579f60e01b815260040160405180910390fd5b6106df61065f6020870187612064565b3060408801358461067360608b018b61227b565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f920191909152506111f692505050565b9150505b9392505050565b5f82815260fb6020526040902060010154610704816112d4565b61070e83836112e5565b505050565b61071b61136b565b610724816113e4565b50565b61072f6113fb565b6001600160a01b0316816001600160a01b0316146107ac5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6107b68282611409565b5050565b6107c261136b565b6107ca61148d565b6107d26114d7565b565b6107dc61136b565b5f5b81518110156107b6576108098282815181106107fc576107fc6122bd565b60200260200101516113e4565b6001016107de565b61081c6104dc6113fb565b6108385760405162461bcd60e51b81526004016107a3906122d1565b6001600160a01b03811661088e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016107a3565b61089781611530565b61089f610a48565b6040516001600160a01b038216903480156108fc02915f818181858888f193505050501580156107b6573d5f803e3d5ffd5b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f90610923906060016040516020818303038152906040528051906020012090565b5492915050565b61093261136b565b6107d25f611547565b61094361136b565b5f5b81518110156107b657610970828281518110610963576109636122bd565b6020026020010151611530565b600101610945565b6109836104dc6113fb565b61099f5760405162461bcd60e51b81526004016107a3906122d1565b6001600160a01b0381166108975760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016107a3565b6109fd61136b565b610a05611598565b6107d26115df565b5f91825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610a3f61136b565b61072481611530565b6107d25f80516020612ea78339815191526102d56113fb565b5f610aaa610a6e85612306565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061161e92505050565b949350505050565b5f61061b5f80516020612ea783398151915283610a0d565b5f54610100900460ff1615808015610ae857505f54600160ff909116105b80610b015750303b158015610b0157505f5460ff166001145b610b645760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107a3565b5f805460ff191660011790558015610b85575f805461ff0019166101001790555b61015f80546001600160a01b0319166001600160a01b038416179055610ba9611759565b610bb1611786565b610bb9611786565b610bc1611786565b610bc96117ac565b610bd16117e2565b610bd9611819565b80156107b6575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b5f82815260fb6020526040902060010154610c3b816112d4565b61070e8383611409565b610c4d61136b565b600260335403610c6f5760405162461bcd60e51b81526004016107a3906123c2565b6002603355610c7c611598565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af1158015610cc8573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cec91906123f9565b505060016033555050565b610cff61136b565b600260335403610d215760405162461bcd60e51b81526004016107a3906123c2565b6002603355610d2e611598565b61015f5460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529082169063095ea7b3906044016020604051808303815f875af1158015610d7f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610da391906123f9565b50506001603355565b5f610db86104dc6113fb565b610dd45760405162461bcd60e51b81526004016107a3906122d1565b600260335403610df65760405162461bcd60e51b81526004016107a3906123c2565b6002603355610e03611598565b6001600160a01b038216610e2a576040516311d000e160e31b815260040160405180910390fd5b30610e358780612418565b610e46906040810190602001612064565b6001600160a01b031614610e6d57604051639d3c586b60e01b815260040160405180910390fd5b610e75611e67565b610e7f8780612418565b610e8d906020810190612064565b6001600160a01b03168152610ea28780612418565b610eb3906040810190602001612064565b6001600160a01b03166020820152610ecb8780612418565b610ed9906040810190612437565b808060200260200160405190810160405280939291908181526020015f905b82821015610f2457610f1560a08302860136819003810190612489565b81526020019060010190610ef8565b50505050506040820152610f388780612418565b610f46906060810190612506565b808060200260200160405190810160405280939291908181526020015f905b82821015610f9157610f8260c0830286013681900381019061254a565b81526020019060010190610f65565b50505050506060820152610fa58780612418565b610fb69060a08101906080016125e5565b81608001906004811115610fcc57610fcc6125fe565b90816004811115610fdf57610fdf6125fe565b905250610fec8780612418565b60a090810135908201526110008780612418565b60c090810135908201526110148780612418565b60e090810135908201526110288780612418565b610100908101359082015261103d8780612418565b610120908101359082015261015f54815160405163f07ec37360e01b81526001600160a01b03918216600482015291169063f07ec37390602401602060405180830381865afa158015611092573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110b69190612612565b61014082015261015f546040516379df72bd60e01b8152611133916001600160a01b0316906379df72bd906110ef908590600401612737565b602060405180830381865afa15801561110a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061112e9190612612565b61184c565b61015f546040516339eb2ac960e21b81526001600160a01b039091169063e7acab249061116c908a908a908a908a908a90600401612b24565b6020604051808303815f875af1158015611188573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111ac91906123f9565b9150816111cc57604051636725093760e01b815260040160405180910390fd5b50600160335595945050505050565b6111e361136b565b6111ec81611865565b6107245f826118db565b6060611201856118e5565b5f80876001600160a01b03168661121a8b8a898961194a565b6040516112279190612cfa565b5f604051808303815f8787f1925050503d805f8114611261576040519150601f19603f3d011682016040523d82523d5f602084013e611266565b606091505b509092509050611277603f87612d1f565b5a1161128557611285612d3e565b6112c582826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061197a565b925050505b9695505050505050565b610724816112e06113fb565b6119b3565b6112ef8282610a0d565b6107b6575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191660011790556113276113fb565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6113736113fb565b6001600160a01b031661138e6097546001600160a01b031690565b6001600160a01b0316146107d25760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107a3565b6107245f80516020612ea783398151915282610c21565b5f611404611a17565b905090565b6114138282610a0d565b156107b6575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191690556114496113fb565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b61012d5460ff166107d25760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b60448201526064016107a3565b6114df61148d565b61012d805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6115136113fb565b6040516001600160a01b03909116815260200160405180910390a1565b6107245f80516020612ea7833981519152826118db565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b61012d5460ff16156107d25760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b60448201526064016107a3565b6115e7611598565b61012d805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586115136113fb565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015611662573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116869190612612565b90505f6117338660600151805190602001208688602001516040516020016116d39392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156112ca575085516112ca906001600160a01b03168286611a34565b5f54610100900460ff1661177f5760405162461bcd60e51b81526004016107a390612d52565b6001603355565b5f54610100900460ff166107d25760405162461bcd60e51b81526004016107a390612d52565b5f54610100900460ff166117d25760405162461bcd60e51b81526004016107a390612d52565b6107d26117dd6113fb565b611547565b5f54610100900460ff166118085760405162461bcd60e51b81526004016107a390612d52565b6107d25f6118146113fb565b6118db565b5f54610100900460ff1661183f5760405162461bcd60e51b81526004016107a390612d52565b61012d805460ff19169055565b30330361185c5761072481611b6f565b610724816118e5565b61186d61136b565b6001600160a01b0381166118d25760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107a3565b61072481611547565b6107b682826112e5565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f906060016040516020818303038152906040528051906020012090506119398190565b54611945906001612d9d565b905550565b606082858560405160200161196193929190612db0565b6040516020818303038152906040529050949350505050565b606083156119895750816106e3565b8251156119995782518084602001fd5b8160405162461bcd60e51b81526004016107a39190611fe9565b6119bd8282610a0d565b6107b6576119d5816001600160a01b03166014611b99565b6119e0836020611b99565b6040516020016119f1929190612dee565b60408051601f198184030181529082905262461bcd60e51b82526107a391600401611fe9565b5f303303611a2c575060331936013560601c90565b503390565b90565b5f805f611a418585611d2e565b90925090505f816004811115611a5957611a596125fe565b148015611a775750856001600160a01b0316826001600160a01b0316145b15611a87576001925050506106e3565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401611aae929190612e62565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051611aec9190612cfa565b5f60405180830381855afa9150503d805f8114611b24576040519150601f19603f3d011682016040523d82523d5f602084013e611b29565b606091505b5091509150818015611b3c575080516020145b8015611b6357508051630b135d3f60e11b90611b619083016020908101908401612612565b145b98975050505050505050565b611b77611d70565b811461072457604051635637b6af60e11b8152600481018290526024016107a3565b60605f611ba7836002612e7a565b611bb2906002612d9d565b6001600160401b03811115611bc957611bc961207f565b6040519080825280601f01601f191660200182016040528015611bf3576020820181803683370190505b509050600360fc1b815f81518110611c0d57611c0d6122bd565b60200101906001600160f81b03191690815f1a905350600f60fb1b81600181518110611c3b57611c3b6122bd565b60200101906001600160f81b03191690815f1a9053505f611c5d846002612e7a565b611c68906001612d9d565b90505b6001811115611cdf576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611c9c57611c9c6122bd565b1a60f81b828281518110611cb257611cb26122bd565b60200101906001600160f81b03191690815f1a90535060049490941c93611cd881612e91565b9050611c6b565b5083156106e35760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016107a3565b5f808251604103611d62576020830151604084015160608501515f1a611d5687828585611d82565b94509450505050611d69565b505f905060025b9250929050565b5f303303611a315750601f1936013590565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115611db757505f90506003611e5e565b8460ff16601b14158015611dcf57508460ff16601c14155b15611ddf57505f90506004611e5e565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015611e30573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b038116611e58575f60019250925050611e5e565b91505f90505b94509492505050565b6040518061016001604052805f6001600160a01b031681526020015f6001600160a01b0316815260200160608152602001606081526020015f6004811115611eb157611eb16125fe565b81525f6020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b5f60208284031215611ef0575f80fd5b81356001600160e01b0319811681146106e3575f80fd5b5f805f60408486031215611f19575f80fd5b83356001600160401b0380821115611f2f575f80fd5b9085019060808288031215611f42575f80fd5b90935060208501359080821115611f57575f80fd5b818601915086601f830112611f6a575f80fd5b813581811115611f78575f80fd5b876020828501011115611f89575f80fd5b6020830194508093505050509250925092565b5f5b83811015611fb6578181015183820152602001611f9e565b50505f910152565b5f8151808452611fd5816020860160208601611f9c565b601f01601f19169290920160200192915050565b602081525f6106e36020830184611fbe565b5f6020828403121561200b575f80fd5b5035919050565b6001600160a01b0381168114610724575f80fd5b803561203181612012565b919050565b5f8060408385031215612047575f80fd5b82359150602083013561205981612012565b809150509250929050565b5f60208284031215612074575f80fd5b81356106e381612012565b634e487b7160e01b5f52604160045260245ffd5b604051608081016001600160401b03811182821017156120b5576120b561207f565b60405290565b604051601f8201601f191681016001600160401b03811182821017156120e3576120e361207f565b604052919050565b5f60208083850312156120fc575f80fd5b82356001600160401b0380821115612112575f80fd5b818501915085601f830112612125575f80fd5b8135818111156121375761213761207f565b8060051b91506121488483016120bb565b8181529183018401918481019088841115612161575f80fd5b938501935b83851015611b63578435925061217b83612012565b8282529385019390850190612166565b5f805f6060848603121561219d575f80fd5b83356121a881612012565b925060208401356121b881612012565b929592945050506040919091013590565b5f805f805f608086880312156121dd575f80fd5b85356001600160401b03808211156121f3575f80fd5b9087019060a0828a031215612206575f80fd5b9095506020870135908082111561221b575f80fd5b818801915088601f83011261222e575f80fd5b81358181111561223c575f80fd5b8960208260051b8501011115612250575f80fd5b6020830196508095505050506040860135915061226f60608701612026565b90509295509295909350565b5f808335601e19843603018112612290575f80fd5b8301803591506001600160401b038211156122a9575f80fd5b602001915036819003821315611d69575f80fd5b634e487b7160e01b5f52603260045260245ffd5b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b5f60808236031215612316575f80fd5b61231e612093565b823561232981612012565b8152602083810135818301526040808501359083015260608401356001600160401b0380821115612358575f80fd5b9085019036601f83011261236a575f80fd5b81358181111561237c5761237c61207f565b61238e601f8201601f191685016120bb565b915080825236848285010111156123a3575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b5f60208284031215612409575f80fd5b815180151581146106e3575f80fd5b5f823561015e1983360301811261242d575f80fd5b9190910192915050565b5f808335601e1984360301811261244c575f80fd5b8301803591506001600160401b03821115612465575f80fd5b602001915060a081023603821315611d69575f80fd5b803560068110612031575f80fd5b5f60a08284031215612499575f80fd5b60405160a081018181106001600160401b03821117156124bb576124bb61207f565b6040526124c78361247b565b815260208301356124d781612012565b806020830152506040830135604082015260608301356060820152608083013560808201528091505092915050565b5f808335601e1984360301811261251b575f80fd5b8301803591506001600160401b03821115612534575f80fd5b602001915060c081023603821315611d69575f80fd5b5f60c0828403121561255a575f80fd5b60405160c081018181106001600160401b038211171561257c5761257c61207f565b6040526125888361247b565b8152602083013561259881612012565b8060208301525060408301356040820152606083013560608201526080830135608082015260a08301356125cb81612012565b60a08201529392505050565b803560058110612031575f80fd5b5f602082840312156125f5575f80fd5b6106e3826125d7565b634e487b7160e01b5f52602160045260245ffd5b5f60208284031215612622575f80fd5b5051919050565b60068110612639576126396125fe565b9052565b5f815180845260208085019450602084015f5b838110156126a6578151612665888251612629565b838101516001600160a01b03168885015260408082015190890152606080820151908901526080908101519088015260a09096019590820190600101612650565b509495945050505050565b5f815180845260208085019450602084015f5b838110156126a65781516126d9888251612629565b808401516001600160a01b0390811689860152604080830151908a0152606080830151908a0152608080830151908a015260a091820151169088015260c090960195908201906001016126c4565b60058110612639576126396125fe565b602081526127516020820183516001600160a01b03169052565b5f602083015161276c60408401826001600160a01b03169052565b50604083015161016080606085015261278961018085018361263d565b91506060850151601f198584030160808601526127a683826126b1565b92505060808501516127bb60a0860182612727565b5060a085015160c085015260c085015160e085015260e0850151610100818187015280870151915050610120818187015280870151915050610140818187015280870151838701525050508091505092915050565b5f808335601e19843603018112612825575f80fd5b83016020810192503590506001600160401b03811115612843575f80fd5b60a081023603821315611d69575f80fd5b8183525f60208085019450825f5b858110156126a65761287c876128778461247b565b612629565b8282013561288981612012565b6001600160a01b03168388015260408281013590880152606080830135908801526080808301359088015260a09687019690910190600101612862565b5f808335601e198436030181126128db575f80fd5b83016020810192503590506001600160401b038111156128f9575f80fd5b60c081023603821315611d69575f80fd5b8183525f60208085019450825f5b858110156126a65761292d876128778461247b565b8282013561293a81612012565b6001600160a01b039081168885015260408381013590890152606080840135908901526080808401359089015260a0908382013561297781612012565b169088015260c0968701969190910190600101612918565b80356001600160781b0381168114612031575f80fd5b5f808335601e198436030181126129ba575f80fd5b83016020810192503590506001600160401b038111156129d8575f80fd5b803603821315611d69575f80fd5b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b8183525f6001600160fb1b03831115612a25575f80fd5b8260051b80836020870137939093016020019392505050565b8183526020808401935f91600585811b8301820185855b88811015612b1657858303601f19018a52813536899003609e19018112612a7a575f80fd5b88018035845260a08682013560028110612a92575f80fd5b85880152604082810135908601526060808301359086015260808083013536849003601e19018112612ac2575f80fd5b9092018781019290356001600160401b03811115612ade575f80fd5b80881b3603841315612aee575f80fd5b8282880152612b008388018286612a0e565b9d89019d96505050928601925050600101612a55565b509098975050505050505050565b608081525f610120873561015e19893603018112612b40575f80fd5b60a060808501528801612b65828501612b5883612026565b6001600160a01b03169052565b612b7160208201612026565b610140612b88818701836001600160a01b03169052565b612b956040840184612810565b610160888101529250612bad61028088018483612854565b925050612bbd60608401846128c6565b87840361011f1901610180890152612bd684828461290a565b93505050612be6608084016125d7565b612bf46101a0880182612727565b5060a08301356101c087015260c08301356101e087015260e0830135610200870152610100808401356102208801528484013561024088015281840135610260880152612c4360208d0161298f565b6001600160781b03811660a08901529450612c6060408d0161298f565b6001600160781b03811660c08901529450612c7e60608d018d6129a5565b95509350607f199150818784030160e0880152612c9c8386866129e6565b9450612cab60808d018d6129a5565b945092508187860301818801525050612cc58383836129e6565b925050508281036020840152612cdc818789612a3e565b9150508360408301526112ca60608301846001600160a01b03169052565b5f825161242d818460208701611f9c565b634e487b7160e01b5f52601160045260245ffd5b5f82612d3957634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b8082018082111561061b5761061b612d0b565b5f8451612dc1818460208901611f9c565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081525f8351612e25816017850160208801611f9c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351612e56816028840160208801611f9c565b01602801949350505050565b828152604060208201525f610aaa6040830184611fbe565b808202811582820484141761061b5761061b612d0b565b5f81612e9f57612e9f612d0b565b505f19019056fe9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000818000a","storage":{"0x0":"0xff"}},"0x58a175bebc8ec21a94ea63aa5a28743945940ee6":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106101165760003560e01c806391d14854116100a2578063c4d66de811610071578063c4d66de8146103bb578063ca15c873146103e1578063d547741f146103fe578063e375b64e1461042a578063ec87621c146104b957610116565b806391d14854146103635780639559c0bd146103a3578063a217fddf146103ab578063b017a30f146103b357610116565b80634794b430116100e95780634794b4301461024f57806349f5124b14610257578063609c92b81461025f5780638274664f146102675780639010d07c1461032457610116565b8063150b7a021461011b578063248a9ca3146101c65780632f2ff15d146101f557806336568abe14610223575b600080fd5b6101a96004803603608081101561013157600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561016b57600080fd5b82018360208201111561017d57600080fd5b803590602001918460018302840111600160201b8311171561019e57600080fd5b5090925090506104c1565b604080516001600160e01b03199092168252519081900360200190f35b6101e3600480360360208110156101dc57600080fd5b50356104d2565b60408051918252519081900360200190f35b6102216004803603604081101561020b57600080fd5b50803590602001356001600160a01b03166104ea565b005b6102216004803603604081101561023957600080fd5b50803590602001356001600160a01b0316610556565b6101e36105b7565b6101e36105db565b6101e36105ff565b6102216004803603606081101561027d57600080fd5b6001600160a01b038235811692602081013590911691810190606081016040820135600160201b8111156102b057600080fd5b8201836020820111156102c257600080fd5b803590602001918460018302840111600160201b831117156102e357600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610623945050505050565b6103476004803603604081101561033a57600080fd5b5080359060200135610fa2565b604080516001600160a01b039092168252519081900360200190f35b61038f6004803603604081101561037957600080fd5b50803590602001356001600160a01b0316610fc9565b604080519115158252519081900360200190f35b6101e3610fe7565b6101e3610fec565b6101e3610ff1565b610221600480360360208110156103d157600080fd5b50356001600160a01b0316611015565b6101e3600480360360208110156103f757600080fd5b50356110cf565b6102216004803603604081101561041457600080fd5b50803590602001356001600160a01b03166110e6565b6102216004803603608081101561044057600080fd5b6001600160a01b0382358116926020810135821692604082013590921691810190608081016060820135600160201b81111561047b57600080fd5b82018360208201111561048d57600080fd5b803590602001918460018302840111600160201b831117156104ae57600080fd5b50909250905061113f565b6101e36114e6565b630a85bd0160e11b95945050505050565b6000818152602081905260409020600201545b919050565b60008281526020819052604090206002015461050d906105086114f8565b610fc9565b6105485760405162461bcd60e51b815260040180806020018281038252602f815260200180611f42602f913960400191505060405180910390fd5b61055282826114fd565b5050565b61055e6114f8565b6001600160a01b0316816001600160a01b0316146105ad5760405162461bcd60e51b815260040180806020018281038252602f8152602001806120bb602f913960400191505060405180910390fd5b610552828261156c565b7ff871896b17e9cb7a64941c62c188a4f5c621b86800e3d15452ece01ce56073df81565b7ff94915c6d1fd521cee85359239227480c7e8776d7caf1fc3bacad5c269b66a1481565b7fd4392723c111fcb98b073fe55873efb447bcd23cd3e49ec9ea2581930cd01ddc81565b60008051602061204b83398151915261063e816105086114f8565b6001906106de5760405162461bcd60e51b81526020600482019081528254600260001961010060018416150201909116046024830181905290918291604490910190849080156106cf5780601f106106a4576101008083540402835291602001916106cf565b820191906000526020600020905b8154815290600101906020018083116106b257829003601f168201915b50509250505060405180910390fd5b5060606106f26106ed846115db565b611656565b905060606107138260018151811061070657fe5b6020026020010151611656565b90507fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60001b6107568260008151811061074957fe5b60200260200101516117d8565b141561095457600061076e8260018151811061074957fe5b905060006001600160a01b031661078b8360028151811061074957fe5b6001600160a01b0316146107d05760405162461bcd60e51b815260040180806020018281038252602981526020018061206b6029913960400191505060405180910390fd5b600086905060006107e78460038151811061074957fe5b9050816001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b15801561082d57600080fd5b505afa158015610841573d6000803e3d6000fd5b505050506040513d602081101561085757600080fd5b5051156108d35760408051632142170760e11b81523060048201526001600160a01b038581166024830152604482018490529151918416916342842e0e9160648082019260009290919082900301818387803b1580156108b657600080fd5b505af11580156108ca573d6000803e3d6000fd5b5050505061094c565b816001600160a01b03166340c10f1984836040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b15801561093357600080fd5b505af1158015610947573d6000803e3d6000fd5b505050505b505050610f9a565b7ff871896b17e9cb7a64941c62c188a4f5c621b86800e3d15452ece01ce56073df60001b6109888260008151811061074957fe5b1415610c085760006109a08260018151811061074957fe5b905060606109c1846002815181106109b457fe5b6020026020010151611920565b905060608180602001905160208110156109da57600080fd5b8101908080516040519392919084600160201b8211156109f957600080fd5b908301906020820185811115610a0e57600080fd5b82518660208202830111600160201b82111715610a2a57600080fd5b82525081516020918201928201910280838360005b83811015610a57578181015183820152602001610a3f565b5050505091909101604052505082519293508a9150600090505b82811015610bfd576000848281518110610a8757fe5b60200260200101519050826001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610ad557600080fd5b505afa158015610ae9573d6000803e3d6000fd5b505050506040513d6020811015610aff57600080fd5b505115610b7b5760408051632142170760e11b81523060048201526001600160a01b038981166024830152604482018490529151918516916342842e0e9160648082019260009290919082900301818387803b158015610b5e57600080fd5b505af1158015610b72573d6000803e3d6000fd5b50505050610bf4565b826001600160a01b03166340c10f1988836040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b158015610bdb57600080fd5b505af1158015610bef573d6000803e3d6000fd5b505050505b50600101610a71565b505050505050610f9a565b7ff94915c6d1fd521cee85359239227480c7e8776d7caf1fc3bacad5c269b66a1460001b610c3c8260008151811061074957fe5b1415610f63576000610c548260018151811061074957fe5b905060006001600160a01b0316610c718360028151811061074957fe5b6001600160a01b031614610cb65760405162461bcd60e51b815260040180806020018281038252602981526020018061206b6029913960400191505060405180910390fd5b60008690506000610ccd8460038151811061074957fe5b9050816001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610d1357600080fd5b505afa158015610d27573d6000803e3d6000fd5b505050506040513d6020811015610d3d57600080fd5b505115610d9c5760408051632142170760e11b81523060048201526001600160a01b038581166024830152604482018490529151918416916342842e0e9160648082019260009290919082900301818387803b1580156108b657600080fd5b6060610dae866002815181106109b457fe5b90506060818060200190516020811015610dc757600080fd5b8101908080516040519392919084600160201b821115610de657600080fd5b908301906020820185811115610dfb57600080fd5b8251600160201b811182820188101715610e1457600080fd5b82525081516020918201929091019080838360005b83811015610e41578181015183820152602001610e29565b50505050905090810190601f168015610e6e5780820380516001836020036101000a031916815260200191505b506040525050509050836001600160a01b03166394d008ef8685846040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b0316815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610ef3578181015183820152602001610edb565b50505050905090810190601f168015610f205780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015610f4157600080fd5b505af1158015610f55573d6000803e3d6000fd5b505050505050505050610f9a565b60405162461bcd60e51b815260040180806020018281038252602a815260200180611f71602a913960400191505060405180910390fd5b505050505050565b6000828152602081905260408120610fc0908363ffffffff6119ea16565b90505b92915050565b6000828152602081905260408120610fc0908363ffffffff6119f616565b601481565b600081565b7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef81565b60025460ff161561105e576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b61109c6040518060400160405280601781526020017f4d696e7461626c65455243373231507265646963617465000000000000000000815250611a0b565b6110a7600082610548565b6110bf60008051602061204b83398151915282610548565b506002805460ff19166001179055565b6000818152602081905260408120610fc390611aa9565b600082815260208190526040902060020154611104906105086114f8565b6105ad5760405162461bcd60e51b8152600401808060200182810382526030815260200180611fc36030913960400191505060405180910390fd5b60008051602061204b83398151915261115a816105086114f8565b6001906111c05760405162461bcd60e51b81526020600482019081528254600260001961010060018416150201909116046024830181905290918291604490910190849080156106cf5780601f106106a4576101008083540402835291602001916106cf565b50602082141561129f576000838360208110156111dc57600080fd5b5060408051913580835290519092506001600160a01b038088169289821692918b16917fe13244aa06bdc79480ed5fdc6ebe2bb37202fcdf33ecf45dc449f4201f3dc0879181900360200190a460408051632142170760e11b81526001600160a01b038981166004830152306024830152604482018490529151918716916342842e0e9160648082019260009290919082900301818387803b15801561128157600080fd5b505af1158015611295573d6000803e3d6000fd5b5050505050610f9a565b6060838360208110156112b157600080fd5b810190602081018135600160201b8111156112cb57600080fd5b8201836020820111156112dd57600080fd5b803590602001918460208302840111600160201b831117156112fe57600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f8201169050808301925050505050505091929192905050509050846001600160a01b0316866001600160a01b0316886001600160a01b03167fdb55e3a0ae817693fd7b07170d81eab0eb2c239f36fcecbc98b6b58ac5667e7a846040518080602001828103825283818151815260200191508051906020019060200280838360005b838110156113ca5781810151838201526020016113b2565b505050509050019250505060405180910390a48051601481111561141f5760405162461bcd60e51b815260040180806020018281038252602c81526020018061201f602c913960400191505060405180910390fd5b60005b818110156114db57866001600160a01b03166342842e0e8a3086858151811061144757fe5b60200260200101516040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050600060405180830381600087803b1580156114b757600080fd5b505af11580156114cb573d6000803e3d6000fd5b5050600190920191506114229050565b505050505050505050565b60008051602061204b83398151915281565b335b90565b600082815260208190526040902061151b908263ffffffff611ab416565b15610552576115286114f8565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b600082815260208190526040902061158a908263ffffffff611ac916565b15610552576115976114f8565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b6115e3611e6d565b6000825111611639576040805162461bcd60e51b815260206004820152601f60248201527f524c505265616465723a20494e56414c49445f42595445535f4c454e47544800604482015290519081900360640190fd5b506040805180820190915281518152602082810190820152919050565b606061166182611ade565b6116b2576040805162461bcd60e51b815260206004820152601860248201527f524c505265616465723a204954454d5f4e4f545f4c4953540000000000000000604482015290519081900360640190fd5b60006116bd83611b0a565b905060608167ffffffffffffffff811180156116d857600080fd5b5060405190808252806020026020018201604052801561171257816020015b6116ff611e6d565b8152602001906001900390816116f75790505b50905060006117248560200151611b96565b855190915081146117665760405162461bcd60e51b81526004018080602001828103825260278152602001806120946027913960400191505060405180910390fd5b60006117758660200151611c2f565b60208701510190506000805b858110156117cc5761179283611b96565b91506040518060400160405280838152602001848152508582815181106117b557fe5b602090810291909101015291810191600101611781565b50929695505050505050565b60006117e382611ade565b15611835576040805162461bcd60e51b815260206004820181905260248201527f524c505265616465723a204445434f44494e475f4c4953545f41535f55494e54604482015290519081900360640190fd5b81516021101561188c576040805162461bcd60e51b815260206004820152601e60248201527f524c505265616465723a20494e56414c49445f55494e545f4c454e4754480000604482015290519081900360640190fd5b600061189b8360200151611b96565b835190915081146118dd5760405162461bcd60e51b81526004018080602001828103825260278152602001806120ea6027913960400191505060405180910390fd5b60006118ec8460200151611c2f565b8451602080870151830180519394509184900392919083101561191657826020036101000a820491505b5095945050505050565b606060006119318360200151611b96565b835190915081146119735760405162461bcd60e51b8152600401808060200182810382526028815260200180611f9b6028913960400191505060405180910390fd5b60006119828460200151611c2f565b845190915081900360608167ffffffffffffffff811180156119a357600080fd5b506040519080825280601f01601f1916602001820160405280156119ce576020820181803683370190505b5090506000816020019050611916848860200151018285611c92565b6000610fc08383611cdd565b6000610fc0836001600160a01b038416611d41565b806040516020018082805190602001908083835b60208310611a3e5780518252601f199092019160209182019101611a1f565b51815160209384036101000a60001901801990921691161790527f3a20494e53554646494349454e545f5045524d495353494f4e530000000000009190930190815260408051808303600519018152601a909201905280516105529550600194509201919050611e87565b6000610fc382611d59565b6000610fc0836001600160a01b038416611d5d565b6000610fc0836001600160a01b038416611da7565b6020810151805160009190821a9060c0821015611b00576000925050506104e5565b5060019392505050565b600080600090506000611b208460200151611c2f565b602085015185519181019250015b80821015611b8d57611b3f82611b96565b8201915080821115611b825760405162461bcd60e51b815260040180806020018281038252602c815260200180611ff3602c913960400191505060405180910390fd5b600190920191611b2e565b50909392505050565b80516000908190811a6080811015611bb15760019150611c28565b60b8811015611bc657607e1981019150611c28565b60c0811015611bf35760b78103600185019450806020036101000a85510460018201810193505050611c28565b60f8811015611c085760be1981019150611c28565b60f78103600185019450806020036101000a855104600182018101935050505b5092915050565b8051600090811a6080811015611c495760009150506104e5565b60b8811080611c64575060c08110801590611c64575060f881105b15611c735760019150506104e5565b60c0811015611c875760b5190190506104e5565b60f5190190506104e5565b80611c9c57611cd8565b5b60208110611cbc578251825260209283019290910190601f1901611c9d565b8251825160208390036101000a60001901801990921691161782525b505050565b81546000908210611d1f5760405162461bcd60e51b8152600401808060200182810382526022815260200180611f206022913960400191505060405180910390fd5b826000018281548110611d2e57fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000611d698383611d41565b611d9f57508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610fc3565b506000610fc3565b60008181526001830160205260408120548015611e635783546000198083019190810190600090879083908110611dda57fe5b9060005260206000200154905080876000018481548110611df757fe5b600091825260208083209091019290925582815260018981019092526040902090840190558654879080611e2757fe5b60019003818190600052602060002001600090559055866001016000878152602001908152602001600020600090556001945050505050610fc3565b6000915050610fc3565b604051806040016040528060008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611ec857805160ff1916838001178555611ef5565b82800160010185558215611ef5579182015b82811115611ef5578251825591602001919060010190611eda565b50611f01929150611f05565b5090565b6114fa91905b80821115611f015760008155600101611f0b56fe456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e744d696e7461626c654552433732315072656469636174653a20494e56414c49445f5349474e4154555245524c505265616465723a2042595445535f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b65524c505265616465723a204e554d5f4954454d535f4445434f4445445f4c454e4754485f4d49534d415443484d696e7461626c654552433732315072656469636174653a20455843454544535f42415443485f4c494d4954241ecf16d79d0f8dbfb92cbc07fe17840425976cf0667f022fe9877caa831b084d696e7461626c654552433732315072656469636174653a20494e56414c49445f5245434549564552524c505265616465723a204c4953545f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66524c505265616465723a2055494e545f4445434f4445445f4c454e4754485f4d49534d41544348a164736f6c6343000606000a","storage":{"0x1":"0x63","0x2":"0x1","0x73d5d1a274bdea1400ad3ea4d982f594abdfd528cde1486b6c617faa3ec116":"0x1","0x89011777cfe6194dd982545e7eb24725dfe9a1aacae299c76fc48ef5017ae650":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x89011777cfe6194dd982545e7eb24725dfe9a1aacae299c76fc48ef5017ae651":"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0x1","0xb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6":"0x4d696e7461626c654552433732315072656469636174653a20494e5355464649","0xb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf7":"0x4349454e545f5045524d495353494f4e53000000000000000000000000000000","0xba75a66b8132bebab85d36fd3638083da57ae3d78fbcd8cc41f73514287dadaf":"0x1","0xe6c7d8231a06d7cb67831aeabcbd43ba24e5e4c6569cf23405f1e558de8580e0":"0x2","0xe84508f2c7fa9c351146748b3025cb78b45df37d868e48c6a75102fecdeee645":"0x2","0xe84508f2c7fa9c351146748b3025cb78b45df37d868e48c6a75102fecdeee647":"0x0","0xf0df3dcda05b4fbd9c655cde3d5ceb211e019e72ec816e127a59e7195f2cd7f5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x5cc819c9915eadfcebd76952b8c1bc36cadd7376":{"nonce":2,"balance":"0x0","code":"0x608060405260043610610103575f3560e01c8063a900866b11610092578063f07ec37311610062578063f07ec373146102f7578063f2d12b1214610316578063f47b774014610329578063fb0f3ee114610116578063fd9f1e101461034c575f80fd5b8063a900866b1461028a578063b3a34c4c146102be578063e7acab24146102d1578063ed98a574146102e4575f80fd5b80637423eb3c116100d85780637423eb3c146101f757806379df72bd1461020b57806387201b411461022a578063881477321461024b578063a81744041461026a575f80fd5b801561011657806306fdde031461013e57806346423aa71461015f5780635b34b966146101d5575f80fd5b366101125761011061036b565b005b5f80fd5b610129610124366004615115565b6103f9565b60405190151581526020015b60405180910390f35b348015610149575f80fd5b50610152610408565b604051610135919061518f565b34801561016a575f80fd5b506101b36101793660046151a1565b5f9081526001602052604090205460ff808216926101008304909116916001600160781b03620100008204811692600160881b9092041690565b6040805194151585529215156020850152918301526060820152608001610135565b3480156101e0575f80fd5b506101e9610417565b604051908152602001610135565b348015610202575f80fd5b50610110610420565b348015610216575f80fd5b506101e96102253660046151b8565b6104c1565b61023d61023836600461524c565b6104f8565b6040516101359291906153f0565b348015610256575f80fd5b5061012961026536600461543f565b610571565b61027d61027836600461547d565b61058f565b60405161013591906154e3565b348015610295575f80fd5b506101e96102a43660046154f5565b6001600160a01b03165f9081526002602052604090205490565b6101296102cc36600461550e565b61062a565b6101296102df366004615553565b6106a3565b61023d6102f23660046155d7565b6106e1565b348015610302575f80fd5b506101e96103113660046154f5565b610784565b61027d610324366004615677565b6107a1565b348015610334575f80fd5b5061033d6107ea565b60405161013593929190615719565b348015610357575f80fd5b5061012961036636600461543f565b610801565b7f000000000000000000000000000000000000000000000000000000000000000180156103b357600263929eee145c146103b05763a61be9f05f52346020526024601cfd5b50565b63929eee1454806103e057600263929eee145c146103dc5763a61be9f05f52346020526024601cfd5b5050565b600381146103dc5763a61be9f05f52346020526024601cfd5b5f61040261080c565b92915050565b60606104126109c0565b905090565b5f6104126109d8565b63929eee14546001147f000000000000000000000000000000000000000000000000000000000000000180610453575080155b1561047157604051630f45b98b60e41b815260040160405180910390fd5b61049a7f000000000000000000000000145908bbcfc7b258e4d4d9a586f6e3249ae80216610a45565b6104b7576040516370a4078f60e01b815260040160405180910390fd5b5f63929eee145550565b5f806104cd6004610aa3565b90506104f16104e282610ab35b63ffffffff16565b610140830135610b30565b3590565b9392505050565b60608061055d61051361050b6004610aa3565b610c746104da565b61052a61052260046020610cdc565b610cfa6104da565b61054161053960046040610cdc565b610d526104da565b61055061053960046060610cdc565b89338a15028a0189610daa565b915091509b509b9950505050505050505050565b5f6104f161058a6105826004610aa3565b610de46104da565b610e3c565b606061061f6105a96105a16004610aa3565b610f5d6104da565b604080515f8082526020820190925290610601565b6105ee6040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816105be5790505b5061061961061160046020610cdc565b610fb56104da565b3361100d565b90505b949350505050565b5f6104f161064361063b6004610aa3565b61104b6104da565b604080515f808252602082019092529061069b565b6106886040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816106585790505b5084336110c1565b5f6106d76106bc6106b46004610aa3565b6112406104da565b6106cb61052260046020610cdc565b853386150286016110c1565b9695505050505050565b6060806107736106f46105a16004610aa3565b604080515f808252602082019092529061074c565b6107396040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816107095790505b5061075c61053960046020610cdc565b61076b61053960046040610cdc565b883389610daa565b915091509850989650505050505050565b6001600160a01b0381165f90815260208190526040812054610402565b60606107dc6107b361050b6004610aa3565b6107c261052260046020610cdc565b6107d161061160046040610cdc565b33861502860161100d565b90505b979650505050505050565b60605f806107f661129c565b925092509250909192565b5f6104f183836112e8565b5f61012435600281901c90600316600182118334158214806108315761083134611423565b506003841160a0810260240135906502030203010160d01b861a905f630101020360d01b881a6108648882898888611434565b9096509150506101c4600583901b01355f87600581111561088757610887615329565b036108bc5760443560243517156108a557636ab37ce75f526004601cfd5b6108af8482611751565b6108b7611809565b61099d565b6040805160208082528183019092525f9160208201818036833701905050905060028a60058111156108f0576108f0615329565b036109135761090e60c4356084353360e435610104355b8787611889565b610988565b60038a600581111561092757610927615329565b036109455761090e60c4356084353360e435610104355b87876118d4565b60048a600581111561095957610959615329565b036109735761090e60243533608435604435606435610907565b6109886024353360843560443560643561093e565b610992848261190a565b61099b816119c4565b505b6109a88689846119e8565b6109b0611a5e565b6001995050505050505050505090565b6060602080526707536561706f727460475260606020f35b5f6109e1611ab1565b600143034060801c335f525f60205260405f208054820192508281555050336001600160a01b03167f721c20121297512b72821b97f5326877ea8ecf4bb9948fea5bfcb6453074d37f82604051610a3a91815260200190565b60405180910390a290565b5f816001600160a01b0316600a5a610a5d9190615773565b6040515f8181818686fa925050503d805f8114610a95576040519150601f19603f3d011682016040523d82523d5f602084013e610a9a565b606091505b50909392505050565b5f813563ffffffff168201610402565b5f610ac661016060408051918201905290565b9050610ad58282610140611b28565b610af2610aeb610ae6846040610cdc565b611b31565b6040830152565b5f610b06610b01846060610cdc565b611b84565b9050610b13816060840152565b610b26610b1e825190565b610140840152565b50919050565b0190565b610140820151604080519084015180515f939284927fa66999307ad1bb4fde44d13a5d710bd7718e0c87c1eef68a571629fbf5b93d0292602090910190845b81811015610b9c578251601f1901805186825260c082208652905260209384019390920191600101610b6f565b508060051b6040512094505050505f7f42d81c6929ffdc4eb27a0808e40e82516ad42296c166065de7f812492304ff6e915060405160206060890151015f5b86811015610c08578151601f1901805186825260e082208552905260209283019290910190600101610bdb565b505060408051600587901b9020601f198a0180517ffa445660b7e21515a59617fcd68910b487aa5808b8abda3d78bc85df364b2c2f8252928b01805197815260608c018051938152610140909c019a8b5261018082209390915295909552939097525050925250919050565b5f8063ffffffff8335169050600581901b610c986020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610cca610cc4610cbf8484610cdc565b611240565b82850152565b602001610ca7565b5050505050919050565b5f6104f163ffffffff610cf46104ed8686610b2c8516565b16840190565b5f8063ffffffff8335169050600581901b610d1e6020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610d4a610cc4610d458484610cdc565b611bc7565b602001610d2d565b5f8063ffffffff8335169050600581901b610d766020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610da2610cc4610d9d8484610cdc565b611c09565b602001610d85565b60608036155f80610dbe8c8c85898b611c4c565b91509150610dd18c8b8b8b8b8787612029565b9450945050505097509795505050505050565b5f8063ffffffff8335169050600581901b610e086020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610e34610cc4610e2f8484610cdc565b61215b565b602001610e17565b5f610e45611ab1565b5f805f80855190505f5b81811015610f50575f878281518110610e6a57610e6a615792565b60209081029190910101518051909150600481608001516004811115610e9257610e92615329565b03610e9e575050610f48565b80519450610eab8161219e565b5f8181526001602052604081209850909650610ecd90879089903615156121d7565b50865460ff16610f455780610140015181606001515114610ef057610ef0612265565b610eff85878460200151612272565b865460ff191660011787556040517ff280791efe782edcf06ce15c8f4dff17601db3b88eb3805a0db7d77faf757f0490610f3c9088908490615895565b60405180910390a15b50505b600101610e4f565b5060019695505050505050565b5f8063ffffffff8335169050600581901b610f816020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610fad610cc4610fa88484610cdc565b61104b565b602001610f90565b5f8063ffffffff8335169050600581901b610fd96020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257611005610cc46110008484610cdc565b61230e565b602001610fe8565b60605f36151590505f806110258888858b5189611c4c565b9150915061103282612341565b61103f8887848885612380565b98975050505050505050565b5f61105e61020060408051918201905290565b60a0810180825290915061107a61107484610aa3565b82612453565b61108660016020840152565b61109260016040840152565b6110af6110a86110a3856020610cdc565b612489565b6060840152565b610b266110ba6124b1565b6080840152565b835160808101515f91906110e860048260048111156110e2576110e2615329565b146124cb565b5f80806110f78a36151561256c565b60408051600180825281830190925293965091945092505f9190816020015b61111e615027565b8152602001906001900390816111165790505090508a815f8151811061114657611146615792565b602002602001018190525061115b818b612764565b6111678684848b6128dd565b6040805160018082528183019092525f91602080830190803683375091925050503615156004878181111561119e5761119e615329565b146111c1576111af8d83885f6129dd565b6111bb86868684612a2f565b506111d3565b6111d0888e6080015183612b33565b95505b6111de888c8c612c03565b85825f815181106111f1576111f1615792565b6020026020010181815250506112088d8388612d26565b61122586895f01518a602001518d8c604001518d60600151612df3565b61122d611a5e565b5060019c9b505050505050505050505050565b5f61125361020060408051918201905290565b905061126760208381019083016040611b28565b60a0810180825261127a61107484610aa3565b61128b6110a86110a3856060610cdc565b610b266110ba6110a3856080610cdc565b60605f805f6112a9612e58565b90505f7f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c905060605f5281602052806040526303312e3660635260a05ff35b5f6112f1611ab1565b5f8083815b81811015611408573687878381811061131157611311615792565b90506020028101906113239190615977565b90505f61133360208301836154f5565b90505f61134660408401602085016154f5565b90505f61135960a0850160808601615996565b905081331483331417156004821417871796505f61138d61138261137a8790565b610ab36104da565b866101400135610b30565b5f8181526001602052604090819020805461ffff19166101001781559051909a509091506001600160a01b0380851691908616907f6bacc01dbe442496068f7d234edd811f1a5f833243e0aec824f86ab861f3c90d906113f09085815260200190565b60405180910390a385600101955050505050506112f6565b5050801561141857611418612f35565b506001949350505050565b63a61be9f05f52806020526024601cfd5b5f8061143f5f6124cb565b611447612f42565b426101643511154261014435111715611475576321ccfeb75f5261014435602052610164356040526044601cfd5b610204356102643510156114905763466aa6165f526004601cfd5b7f42d81c6929ffdc4eb27a0808e40e82516ad42296c166065de7f812492304ff6e608081905260a08790526060602460c037604060646101203760e060802061016052610264356102043560051b6102a0016001820181526020810190508881526080602460208301376101608860a0528760c0525f60e0525f6102043593505f5b84811015611566578060400261028401602081610100376040816101203760208101358317925060208401935060e0608020845260a0850194508b85528a6020860152604081606087013750600101611512565b6001850160051b610160206060526102643594505b848110156115b6578060400261028401925060a0840193508a845289602085015260408360608601376020830135919091179060010161157b565b506001600160a01b038111156115d3576339f3e3fd5f526004601cfd5b50505050505f7fa66999307ad1bb4fde44d13a5d710bd7718e0c87c1eef68a571629fbf5b93d029050806080528360a052606060c460c0376020610104610120375060c06080205f9081526020812060e05260843590611647826001600160a01b03165f9081526020819052604090205490565b7ffa445660b7e21515a59617fcd68910b487aa5808b8abda3d78bc85df364b2c2f60808190529091506040608460a03760605161010052896101205260a061014461014037816101e05261018060802094505050506102043560051b61018001828152336020820152608060408201526101206060820152600160808201528360a0820152606060c460c083013760a061026435026101e00160a4356084357f9d9af8e38d66c62e2c12f0225249fd9d721c54b83f48d9352c97c6cacdcb6f318385a35f60605260608101820160405250505f61172383612f8d565b905061172f8389612fde565b7101000000000000000000000000000001000182559150509550959350505050565b60c43560843560e4356101043584156117b9575f6040519050632671a55160e11b815260206004820152600160248201528660448201528460648201528360848201523360a48201528260c48201528160e48201526117b38682610104613033565b50611801565b60028660058111156117cd576117cd615329565b036117f457806001146117e3576117e3816130ea565b6117ef848433856130fb565b611801565b61180184843385856131b0565b505050505050565b346064356084356102643560061b5f80805b8381101561185a5761028481013592506102a481013591508683111561184357611843613287565b82870396506118528284613294565b60400161181b565b508585111561186b5761186b613287565b6118758486613294565b848611156118015761180133868803613294565b61189381836132ca565b816118ba57826001146118a9576118a9836130ea565b6118b5878787876130fb565b6118cb565b6118cb828260028a8a8a8a8a6132e8565b50505050505050565b6118dd83613367565b6118e781836132ca565b816118f9576118b587878787876131b0565b6118cb828260038a8a8a8a8a6132e8565b5f805f805f861561192f57505060843592503391505060c4356101043560e435611944565b50339350506084359150506024356064356044355b801561195257611952613379565b50600586901b6101e403356102643560061b5f80805b838110156119a95761028481013592506102a481013591508a156119935761199083876159b4565b95505b6119a1878a8486898f613386565b604001611968565b506119b886898988888e613386565b50505050505050505050565b60408151146119d05750565b5f6119dc826020015190565b90506103dc81836133bb565b611a048260a4355b331415600182116004909210919091161690565b15611a5957805f611a13825190565b9050608081901c63ffffffff8216611a3484826317b1f94282526001905250565b601c840163fb5014fc6060529350611a5060a4358886856133df565b5f6060526118cb565b505050565b7f00000000000000000000000000000000000000000000000000000000000000018015611a8f575f63929eee145d50565b63929eee145480611aa5575f63929eee145d5050565b50600163929eee145550565b7f00000000000000000000000000000000000000000000000000000000000000018015611af05763929eee145c156103b057637fa8a9875f526004601cfd5b63929eee145480611b135763929eee145c156103dc57637fa8a9875f526004601cfd5b600181146103dc57637fa8a9875f526004601cfd5b80838337505050565b5f63ffffffff8235166040519150808252602082018160051b81018060a084026020870183378293505b81841015611b745780845260209093019260a001611b5b565b60405250919392505050565b9052565b5f63ffffffff8235166040519150808252602082018160051b81018060c084026020870183378293505b81841015611b745780845260209093019260c001611bae565b5f611bd960a060408051918201905290565b9050611be782826080611b28565b611c04611bfd611bf8846080610cdc565b613427565b6080830152565b919050565b5f63ffffffff8235166040519150808252602082018160051b8101808360061b6020870183378293505b81841015611b7457808452602090930192604001611c33565b60605f611c5960016124cb565b86515f90600160e61b82351690806001600160401b03811115611c7e57611c7e61574b565b604051908082528060200260200182016040528015611ca7578160200160208202803683370190505b50945060010160051b91505f60205b83811015611ea8575f611ccc8c83613cce6104da565b90505f805f611cdb848e61256c565b6001600160781b0382166020880152919450925090505f829003611d025750505050611ea0565b6001600160781b0381166040808601919091528a8601849052845160a081015160c0820151608083015192909301518051600184119d909d179c600490931099509092915f5b81811015611dea575f838281518110611d6357611d63615792565b602002602001015190508b8151108d179c505f611d858989846080015161345e565b90508160800151826060015103611da25760608201819052611db7565b611db18989846060015161345e565b60608301525b5f611dd08360600151838a8a611dcb361590565b61349a565b606084018190526080909301929092525050600101611d48565b5087516060015180515f5b81811015611e94575f838281518110611e1057611e10615792565b602002602001015190505f611e2a8b8b846080015161345e565b90508160800151826060015103611e475760608201819052611e5c565b611e568b8b846060015161345e565b60608301525b5f611e718360600151838c8c611dcb36151590565b6060840181905260a0840180516080909501949094529092525050600101611df5565b50505050505050505050505b602001611cb6565b50506001600160e61b018103611ec057611ec06134ed565b50611ecb8888612764565b5f8060205b8381101561200e578581015192508215612006575f611ef28c83613cce6104da565b9050885f03611f0d575f878301819052602090910152612006565b60048151608001516004811115611f2657611f26615329565b14611fa957611f3f8188866001600587901c038e6134fa565b611f55575f878301819052602090910152612006565b602080820151604083015183516080810151930151611f8e9388936001600160781b039081169316913314156001909111168e17612a2f565b611fa4575f878301819052602090910152612006565b611fd4565b611fbb815f015182608001518c612b33565b878301819052935083611fd4575f602090910152612006565b886001900398505f815f01519050611fff85825f015183602001518c85604001518660600151612df3565b6001935050505b602001611ed0565b508061201c5761201c613555565b5050509550959350505050565b85518551606091829161203c81836159c7565b6001600160401b038111156120535761205361574b565b60405190808252806020026020018201604052801561208c57816020015b61207961505a565b8152602001906001900390816120715790505b5092505f5b828110156120e4576120bf8c5f8d84815181106120b0576120b0615792565b60200260200101518c8c613562565b8482815181106120d1576120d1615792565b6020908102919091010152600101612091565b505f5b8181101561213d576121168c60018c848151811061210757612107615792565b60200260200101518c5f613562565b848483018151811061212a5761212a615792565b60209081029190910101526001016120e7565b5061214b8b84888a896135b1565b9350505097509795505050505050565b5f61216c6040808051918201905290565b905061218661218261217d84610aa3565b61389a565b8252565b611c046121976110a3846020610cdc565b6020830152565b5f6121b38260600151518361014001516138b9565b81516001600160a01b03165f90815260208190526040902054610402908390610b30565b82545f90610100900460ff16156121fe5781156121f7576121f7856138c9565b505f610622565b83546201000090046001600160781b0316801561225957831561222957612224866138da565b612259565b8454600160881b90046001600160781b0316811061225957821561225057612250866138eb565b5f915050610622565b50600195945050505050565b632165628a5f526004601cfd5b33831480156122815750505050565b5f61228a612e58565b61190160f01b5f9081526002828152602287815260428320908390528651939450929190601f601d840116106102e260621984011016156122f4576122cf86886138fc565b61190160f01b5f908152600286905260228281526042822091905290975090506122f7565b50815b612304888285858a613992565b5050505050505050565b5f61231f6040808051918201905290565b9050612330612182610d9d84610aa3565b611c04612197610d9d846020610cdc565b80518060051b6040019050602082038051602082527f4b9f2d36e1b4c93de62cc077b00b1a91d84b6c31b4a14e012718dcca230689e78383a190525050565b8351606090806001600160401b0381111561239d5761239d61574b565b6040519080825280602002602001820160405280156123d657816020015b6123c361505a565b8152602001906001900390816123bb5790505b5091505f5b81811015612439575f8782815181106123f6576123f6615792565b6020026020010151905061241389825f0151836020015185613adb565b84838151811061242557612425615792565b6020908102919091010152506001016123db565b5061244787838787876135b1565b50505b95945050505050565b6124608282610160611b28565b612471610aeb610ae6846040610cdc565b6103dc612482610b01846060610cdc565b6060830152565b6040518135601f0163ffffffe01660200180838337913563ffffffff16815290810160405290565b5f6124c3602060408051918201905290565b5f8152905090565b7f000000000000000000000000000000000000000000000000000000000000000180156125185763929eee145c1561250a57637fa8a9875f526004601cfd5b8160010163929eee145d5050565b63929eee14548061254a5763929eee145c1561253b57637fa8a9875f526004601cfd5b8260010163929eee145d505050565b6001811461255f57637fa8a9875f526004601cfd5b505060020163929eee1455565b5f805f80855f015190506125898160a001518260c0015187613c80565b61259c57505f925082915081905061275d565b602086015160408701516001600160781b0391821694501691505f6004826080015160048111156125cf576125cf615329565b036125fc57600183850218905080156125ea576125ea613ca3565b506001935083925082915061275d9050565b50818311831517801561261157612611613ca3565b608082015160011615848411161561262b5761262b613cb0565b6126348261219e565b5f81815260016020526040812091965061265290879083908a6121d7565b61266557505f935083925061275d915050565b805460ff1661268057612680835f0151878a60600151612272565b8054608881901c8061269457869150612757565b6001600160781b038260101c169150600186036126b8578181039650809550612757565b8086036126d357908601858103868211029096039590612757565b80860296810291909502810186810387821102918290039695919003906001600160781b0386111561275757612717565b5f5b8215610b2657908290069190612706565b61272a6127248784612704565b88612704565b8015019687900496909504946001600160781b0386111561275757634e487b715f5260116020526024601cfd5b50505050505b9250925092565b805182515f5b82811015612853575f84828151811061278557612785615792565b602002602001015190505f815f015190508381106127aa576127aa8260200151613cbd565b5f8782815181106127bd576127bd615792565b6020026020010151905080602001516001600160781b03165f036127e35750505061284b565b80516040808201519085015163bfb3f8ce5f8760200151600181111561280b5761280b615329565b14612827575f61281c856060613cce565b9350636088d7de9150505b8251821061283857805f526004601cfd5b612843838389613cd9565b505050505050505b60010161276a565b505f5b818110156128d6575f85828151811061287157612871615792565b6020026020010151905080602001516001600160781b03165f0361289557506128ce565b8051608081015160608201516128b29085908363a8930e9a613d8c565b6128ca8483604001518363d69293326104da613d8c90565b5050505b600101612856565b5050505050565b60a084015160c08501516040860151515f805b8281101561295a575f8960400151828151811061290f5761290f615792565b602002602001015190505f815f01519050801584179350505f612946826060015183608001518c8c8b8b612941361590565b613df3565b6060830152506080018690526001016128f0565b5060808801516004811082168015612974576129746134ed565b505050506060860151515f5b81811015612304575f8860600151828151811061299f5761299f615792565b602002602001015190505f6129c4826060015183608001518b8b8a8a61294136151590565b60608301525060a0810151608090910152600101612980565b8351608081015160208201513314156001821160049092109190911616156128d6575f80612a12858489608001518988613e2e565b63fb5014fc6060529092509050611a5083602001518684846133df565b5f848152600160205260408120805482908290608881901c80612a5457889150612adc565b6001600160781b038260101c169150808803612a7857908801878111935090612adc565b97880297808802979190910288018781119350906001600160781b038083119089111715612adc57612aaa8883612704565b8015019788900497909104906001600160781b038083119089111715612adc57634e487b715f5260116020526024601cfd5b508215612b15578515612b09576040516310fda3e160e01b8152600481018a905260240160405180910390fd5b5f945050505050610622565b8660881b8160101b1760011782556001945050505050949350505050565b5f83610140015184606001515114612b4d57612b4d612265565b83515f8080612b5c8888613fac565b915091505f8082845f885af16001600160a01b0385165f908152600260205260409020805460018101909155606086901b189550925082612bbb578515612bae57612ba5614056565b612bae8561409d565b505f93506104f192505050565b505050505f805f612bd8876040015188606001516104da6140ae90565b925092509250825f14612bee57612bee8461409d565b60408701919091526060860152509392505050565b6040805160208082528183019092525f916020820181803683375050506040850151519091505f5b81811015612c7b575f86604001518281518110612c4a57612c4a615792565b60200260200101519050846080820152612c7281885f0151896101200151876104da61432790565b50600101612c2b565b50506060840151515f90815b81811015612d09575f87606001518281518110612ca657612ca6615792565b602002602001015190505f6005811115612cc257612cc2615329565b81516005811115612cd557612cd5615329565b03612cf1574793508381606001511115612cf157612cf1613287565b612d00813389886143276104da565b50600101612c87565b5050612d14826119c4565b504780156128d6576128d63382613294565b8251608081015160208201515f92839283928392916004811060019091111633909114151615612d8857612d69612d6361010083015190565b5190565b8861441c565b9093509150612d7a60208201612d5f565b945063fb5014fc9350612dd4565b600481608001516004811115612da057612da0615329565b0361230457805194505f8560601b9050612dc187838b608001518b8561445d565b639397928596509094509250612dd49050565b612dde6060859052565b612dea858785856133df565b5f606052612304565b60608290506060829050856001600160a01b0316876001600160a01b03167f9d9af8e38d66c62e2c12f0225249fd9d721c54b83f48d9352c97c6cacdcb6f318a888686604051612e469493929190615a13565b60405180910390a35050505050505050565b5f7f00000000000000000000000000000000000000000000000000000000000005394614612f10575060408051608080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f5f9081527f32b5c112df393a49218d7552f96b2eeb829dfb4272f4f24eef510a586b85feef6020527f95f740a33d720b7cd93c75d515ac95ca3bbaa2594cce46ea48e00974ea8fcd14855246606090815230845260a08220949095529093529190915290565b507f8bebed3dbe91a82da0dc94c8d370c160ad6db1b32164303e65b8544bae7e2f5590565b63fed398fc5f526004601cfd5b600435602014610224356102401416610244356102606102643560061b01141660186101243510600160a01b60843560a4351760c4356024351717101616806103b0576103b0614528565b5f8181526001602081905260409091209060843590612fb290849084903615156121d7565b50815460ff16610b2657610b268184612fd9602463ffffffff6102443516016124896104da565b612272565b5f612feb8260a4356119f0565b15610402575f805f612ffc86614535565b63fb5014fc6060529194509250905061301c60a43587601c8601856133df565b5f60605260209190910160801b1781529392505050565b604080517f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c60ff60a01b175f90815260208690527f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f83526055600b20919092526001600160a01b031690505f805f805260205f85875f875af191505f519050816130c8576130bf614056565b6130c8836145ed565b6001600160e01b03198116632671a55160e11b146118015761180186846145fe565b6369f958275f52806020526024601cfd5b833b61311257635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af1806131a2573d1561318057601f3d0160051c8260051c8160030281831115613169578183036003028280028480020360091c01015b5a60208201101561317c573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b6131c757635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af18061326c573d1561324b57601f3d0160051c8560051c8160030281831115613234578183036003028280028480020360091c01015b5a602082011015613247573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b638ffff9805f526004601cfd5b61329d81613367565b5f805f805f85875af1905080611a59576132b5614056565b63bc806b965f5282602052816040526044601cfd5b5f6132d6836020015190565b9050818114611a5957611a59836119c4565b5f60208851036133225750604080885260208089018a9052632671a55160e11b918901919091526044880152600160648801819052613331565b50606487018051600101908190525b603c60c082028901038781528660208201528560408201528460608201528360808201528260a082015250505050505050505050565b806103b0576391b3e5145f526004601cfd5b636ab37ce75f526004601cfd5b61338f83613367565b61339981836132ca565b816133aa576117ef86868686614613565b611801828260018989895f8a6132e8565b6064810151604082019060c0026044016133d6848383613033565b50506020905250565b5f806001600160e01b03198451165f805260205f85875f8b5af15f51909350149050816134185761340e614056565b846080526024607cfd5b8061180157846080526024607cfd5b5f8063ffffffff83351690506001810160051b61344a8160408051918201905290565b9250613457848483611b28565b5050919050565b5f82840361346d5750806104f1565b82848309156134835763c63cf0895f526004601cfd5b5f61348e8584615aaf565b93909304949350505050565b5f8486146134e357838303428590038082035f6134b7838a615aaf565b6134c1838c615aaf565b6134cb91906159c7565b9050858487830304018115150294505050505061244a565b5092949350505050565b6312d3f5a35f526004601cfd5b8451608081015160208201515f92916004811060019091111633909114151615610f50575f8061353187848b608001518b8a613e2e565b9150915061354b836020015188848463fb5014fc8a614707565b935050505061244a565b63d5da9a1b5f526004601cfd5b61356a61505a565b83515f0361357b5761357b85614774565b5f85600181111561358e5761358e615329565b036135a45761359f86858385614785565b61244a565b61244a86858333876148f5565b84516060905f816001600160401b038111156135cf576135cf61574b565b6040519080825280602002602001820160405280156135f8578160200160208202803683370190505b506040805160208082528183019092529192505f9190602082018180368337505089519192505060010160051b60205b81811015613687575f61363e8b83613cce6104da565b8051606081015191925090801561367c57478111825115161561366857638ffff9805f526004601cfd5b61367c828460200151856040015189614327565b505050602001613628565b50505f5b838110156137f3575f8a82815181106136a6576136a6615792565b6020026020010151905080602001516001600160781b03165f036136ed575f8483815181106136d7576136d7615792565b91151560209283029190910190910152506137eb565b600184838151811061370157613701615792565b911515602092830291909101909101528051604081015180515f5b81811015613786575f83828151811061373757613737615792565b6020026020010151905080606001515f1461377357608081018051908e9052855161012087015161376d9184918c6143276104da565b60808201525b608081015160609091015260010161371c565b505050606081015180515f5b818110156137e5575f8382815181106137ad576137ad615792565b602002602001015190505f81606001519050805f146137d1576137d1888483614a2c565b5060a0810151606090910152600101613792565b50505050505b60010161368b565b506137fd816119c4565b47801561380e5761380e3382613294565b8515613884575f5b848110156138825783818151811061383057613830615792565b60200260200101511561387a5761387a8b828151811061385257613852615792565b60200260200101518a8b848151811061386d5761386d615792565b6020026020010151612d26565b600101613816565b505b61388c611a5e565b509098975050505050505050565b5f6138ad61016060408051918201905290565b9050611c048282612453565b808210156103dc576103dc614a45565b631a5155745f52806020526024601cfd5b63ee9e0e635f52806020526024601cfd5b6310fda3e15f52806020526024601cfd5b5f805f84516001811660410380820360051c9250808752806020018701915050805160e81c6003820191506001811660051b868152825160208218525060015b838110156139685760405f2082821c60051b60209081169182529384018051919094185260010161393c565b50505060405f2091505f61397b82614a52565b5f9081526020939093525050604090209392505050565b5f805f528151602083038051826041035f600182116139f557604087015160608801515f1a83156139d657601b8260ff1c0190506001600160ff1b03821660408a01525b88528a855260205f60808760015afa508385528588526040880152505f515b8a148a1515169450849050613abe57858552604082526044850380516040870351630b135d3f60e11b835289604089035260205f60648b01858f5afa96508615613ab257630b135d3f60e11b5f5114613ab2578b3b15613a5c57634f7fb80d5f526004601cfd5b6001866041031115613a7557638baa579f5f526004601cfd5b64010100000060608901515f1a1a15604187141615613aa557631f003d0a5f5260608801515f1a6020526024601cfd5b63815e1d645f526004601cfd5b8385529152603f198601525b5050508061180157613ace614056565b634f7fb80d5f526004601cfd5b613ae361505a565b8251158451151715613afc576398e9db6e5f526004601cfd5b613b0461505a565b613b118685835f806148f5565b805160608101515f03613b2657509050610622565b613b368787858460800151614785565b82516040828101519082015160208085015190840151855185511891181791181715613b6d5763bced929d5f52846020526024601cfd5b806060015182606001511115613bf4575f865f81518110613b9057613b90615792565b60200260200101519050816060015183606001510389825f015181518110613bba57613bba615792565b60200260200101515f015160600151826020015181518110613bde57613bde615792565b6020026020010151606001818152505050613c75565b5f875f81518110613c0757613c07615792565b60200260200101519050826060015182606001510389825f015181518110613c3157613c31615792565b60200260200101515f015160400151826020015181518110613c5557613c55615792565b602002602001015160600181815250508260600151826060018181525050505b505050949350505050565b428084111590831116818015613c94575080155b156104f1576104f18484614e61565b635a052b325f526004601cfd5b63a11b63ff5f526004601cfd5b63133c37c65f52806020526024601cfd5b5f6104f18284015190565b5f838381518110613cec57613cec615792565b602002602001015190505f815f01519050613d078160031090565b613d1357613d13614e76565b60408201518015613d3657613d318460600151828660800151614e83565b613d49565b60808401515115613d4957613d49614ecd565b6004821460030383816005811115613d6357613d63615329565b90816005811115613d7657613d76615329565b9052505050606090920151604090910152505050565b82515f5b81811015611801575f858281518110613dab57613dab615792565b60209081029190910101518051604082015191925090600382116004881415821515171615613de557855f5288602052836040526044601cfd5b505050806001019050613d90565b5f868803613e0d57613e0686868961345e565b90506107df565b6107dc613e1b87878b61345e565b613e2688888b61345e565b86868661349a565b5f805f613e39614eda565b6301e4d72a815260208082015260408101898152336060830152601c820194509091508751604082015287613e79613e7260a083015190565b60e0840152565b613e8f613e8760c083015190565b610100840152565b613ea5613e9d60e083015190565b610120840152565b610140613eb3816060850152565b5f613ebf604084015190565b90505f613ece82848701614ee4565b928301929050613edf836080870152565b5f613eeb606086015190565b90505f613efa82868901614f4a565b948501949050613f0b8560a0890152565b5f613f188e878a01614faf565b959095019450613f298560c0890152565b8685015f613f378e83614fce565b602497019687019a50613f539050613f4e8c8c0190565b614ffe565b8060408b901b60808b901b17178f610100018181525050613f7d8c82611b8090919063ffffffff16565b60058c8e51613f8c91906159b4565b613f97911b8b6159b4565b99505050505050505050509550959350505050565b5f8083613fb7614eda565b639891976581523360208201908152608060408301819052601c9092019450905f613fe3604085015190565b90505f613ff282848601614ee4565b928301929050614003836040860152565b5f61400f606087015190565b90505f61401e82868801614ee4565b94850194905061402f856060880152565b895f61403d82898901614faf565b9a9d96909a016004019b50949950505050505050505050565b3d1561409b57601f3d0160051c60405160051c8160030281831115614088578183036003028280028480020360091c01015b5a602082011015611a59573d5f803e3d5ffd5b565b63939792855f52806020526024601cfd5b60603d105f8080808080866141205760405f803e5f51935060205192503d60208501113d60208501118082179850505086614120576020845f3e5f51915060208360203e60205190508160071b60208501018160a0026020850101803d10823d101761ffff8486171117985050505f80525b86614152575f8061413584602088018d61415b565b9250975061414783602087018c61423b565b929092179850909550505b5050505061275d565b5f806040519150825160c08602602001830160405285835260208660010160051b8085018360010160051b8701614199858b81811090829003020190565b60010160051b8a861196505b808510156141f957828589015260808a843e6060830151955085608084015260608201518681116141d685856142e2565b17881797505060808a01995060a08301925060a0820191506020850194506141a5565b50505b8183101561422f578083870152608088823e6060810151608082015260808801975060a0810190506020830192506141fc565b50505050935093915050565b604051815180851190808603818710028101602060e08202850181016040528185526001928301600590811b87019390920190911b908185015b8282101561422f57808287015260a088823e60206060890160a083013e606081015160608501516142b26080840151608088015180159114171590565b818311176142c084886142e2565b60a09b909b019a179690961795505060c0938401936020929092019101614275565b5f81516040830151801560038311161561430457506040840151600119909101905b604085015181148551831460208701516020870151141616159250505092915050565b5f8451600581111561433b5761433b615329565b0361437857604084015160208501516001600160a01b0316171561436157614361613379565b61437384608001518560600151613294565b614416565b60018451600581111561438d5761438d615329565b036143be576040840151156143a4576143a4613379565b614373846020015184866080015187606001518686613386565b6002845160058111156143d3576143d3615329565b036143f7576143738460200151848660800151876040015188606001518787611889565b61441684602001518486608001518760400151886060015187876118d4565b50505050565b608082901c63ffffffff604084901c811690808516906144449084906317b1f94290611b8016565b601c830192506144548482614fce565b50509250929050565b5f80614467614eda565b63f4dd92ce815287841860a0820152601c8101925060200160a0808252875f614491604083015190565b90505f6144a082858701614ee4565b9384019390506144b1846020870152565b5f6144bd606085015190565b90505f6144cc82878901614f4a565b9586019590506144dd866040890152565b5f6144ea8d888a01614faf565b9687019690506144fb8760608a0152565b5f6145088d898b01614fce565b905080880197508760040199505050505050505050509550959350505050565b6339f3e3fd5f526004601cfd5b6301e4d72a6102043560051b6080019081525f808260208082015260408101858152336060830152601c919091019061456f608435610aeb565b61458061014460e083016060611b28565b61014061458e816060840152565b61459c60a082016080840152565b61016060a06102643581029290920101906145b8908290840152565b6145c25f82840152565b6020016145d08160c0840152565b5f9181019182526020820196909652939560449095019492505050565b63d13d53d45f52806020526024601cfd5b631cf99b265f5281602052806040526044601cfd5b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166146f85780873b1515166146f857806146e757816146ca573d156146a957601f3d0160051c8360051c8160030281831115614692578183036003028280028480020360091c01015b5a6020820110156146a5573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b5f805f6001600160e01b03198751165f805260205f888a5f8e5af15f5190935014905081614753578361473e575f925050506106d7565b614746614056565b845f52876020526024601cfd5b8061476557845f52876020526024601cfd5b50600198975050505050505050565b63375c24c15f52806020526024601cfd5b5f805f85865160051b87015b808210156148a2576020820191508851825151106147b1576147b16148d6565b81515160051b60208a01015180516020845101515f6040830151602085015115815184101517156147e6575050505050614791565b8260051b60208201015191505060608101935083518901915083511589831060011b17881797508198505f84528a51935086156001811461484f5760608220881860408d01516101208601511860208e015186511817171561484a5761484a6148d6565b614898565b8151855260208201516020860152604082015160408601528a6080860152835160208d015261012084015160408d015260608520975060208d0192508683181561489857865183525b5050505050614791565b5050508160608551015280156148cf57600181036148c7576391b3e5145f526004601cfd5b6148cf6148e3565b5050614416565b637fda72795f526004601cfd5b634e487b715f5260116020526024601cfd5b5f805f86875160051b88015b808210156149f7576020820191508151518a518110614922576149226148d6565b8060051b60208c01015190506020835101515f606083510151602084015115815184101517156149555750505050614901565b8260051b60208201015191505060608101925082518801915082511588831060011b17871796508197505f83528a5192508515600181146149a75760a0822087146149a2576149a26148d6565b6149ee565b815184526020820151602085015260408201516040850152608082015160808501528a60208d01528960408d015260a08220965060208d019250858318156149ee57855183525b50505050614901565b50508551606001839052508015614a255760018103614a1d576391b3e5145f526004601cfd5b614a256148e3565b50506128d6565b63a5f542085f528260205281604052806060526064601cfd5b63466aa6165f526004601cfd5b5f614e58565b5f6009821015614bb1576005821015614b0e576003821015614ac1577f832c58a5b611aadcfa6a082ac9d04bace53d8278387f10040347b7e98eb5b30260018314027fbf8e29b89f29ed9b529c154a63038ffca562f8d7cd1e2545dda53a1b582dde3018610402565b7ff3e8417a785f980bdaf134fa0274a6bf891eeb8195cd94b09d2aa651046e28bc60038314027fa02eb7ff164c884e5e2c336dc85f81c6a93329d8e9adf214b32729b894de2af118610402565b6007821015614b64577f25d02425402d882d211a7ab774c0ed6eca048c4d03d9af40132475744753b2a360058314027f1c19f71958cdd8f081b4c31f7caf5c010b29d12950be2fa1c95070dc47e30b5518610402565b7fb58d772fb09b426b9dece637f61ca9065f2b994f1464b51e9207f55f7c8f594860078314027f7ff98d9d4e55d876c5cfac10b43c04039522f3ddfb0ea9bfe70c68cfb5c7cc1418610402565b6011821015614d0957600d821015614c6657600b821015614c19577f6f0ec38c21f6f583ab7f3c5413c773ffd5344c34fde1d390958e438bf667448f60098314027fd1d97d1ef5eaa37a4ee5fbf234e6f6d64eb511eb562221cd7edfbdde0848da0518610402565b7f32f4e7485d6485f9f6c255929b9905c62ba919758bbe231f231eaeecf33d810c600b8314027fbb98d87cc12922b83759626c5f07d72266da9702d19ffad6a514c73a89002f5f18610402565b600f821015614cbc577f8df51df98847160517f5b1186b4bc3f418d98b8a7f17f1292f392d79d600d79e600d8314027f6b5b04cbae4fcb1a9d78e7b2dfc51a36933d023cf6e347e03d517b472a85259018610402565b7fcc4886e37eedd9aacd6c1c2c9247197a621a71282e87a7cbc673f3736d9aa141600f8314027f1da3eed3ecef6ebaa6e5023c057ec2c75150693fd0dac5c90f4a142f9879fde818610402565b6015821015614db5576013821015614d68577f2d7a3ed6dab270fdb8e054b2ad525f0ce2a8b89cc76c17f0965434740f673a5560118314027fc3939feff011e53ab8c35ca3370aad54c5df1fc2938cd62543174fa6e7d8587718610402565b7f54b3212a178782f104e0d514b41a9a5c4ca9c980bf6597c3cecbf280917e202a60138314027f5a4f867d3d458dabecad65f6201ceeaba0096df2d0c491cc32e6ea4e6435001718610402565b6017821015614e0b577fbb40bf8cea3a5a716e2b6eb08bbdac8ec159f82f380783db3c56904f15a43d0460158314027f3bd8cff538aba49a9c374c806d277181e9651624b3e31111bc0624574f8bca1d18610402565b7f403be09941a31d05cfc2f896505811353d45d38743288b016630cce39435476a60178314027f1d51df90cba8de7637ca3e8fe1e3511d1dc2f23487d05dbdecb781860c21ac1c18610402565b61040282614a58565b6321ccfeb75f5281602052806040526044601cfd5b6394eb6af65f526004601cfd5b5f835f5260205f2060208301835160051b81015b80821015614ebe57815180841160051b93845260209384185260405f209290910190614e97565b50508314905080614416576144165b6309bde3395f526004601cfd5b5f61041260405190565b5f825180835260208401602084018260051b82015b80831015614f375782518051835260208101516020840152604081015160408401526060810151606084015250602083019250608082019150614ef9565b5050508060071b60200191505092915050565b5f80614f54845190565b8084529050602084810190600583901b860181019085015b82821115614f9c575f614f7e84615008565b9050614f8c818360a0615011565b506020929092019160a001614f6c565b60a0840260200194505050505092915050565b5f63ffffffe0603f614fbf855190565b01169050610402838383615011565b5f80614fd8845190565b8084529050600581901b614ff3602086810190860183615011565b602001949350505050565b6103b06040829052565b5f610402825190565b8082828560045afa80153d151715614416575f80fd5b6040518060a0016040528061503a61509c565b81525f602082018190526040820152606080820181905260809091015290565b60408051610100810182525f606082018181526080830182905260a0830182905260c0830182905260e083018290528252602082018190529181019190915290565b6040518061016001604052805f6001600160a01b031681526020015f6001600160a01b0316815260200160608152602001606081526020015f60048111156150e6576150e6615329565b81525f6020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b5f60208284031215615125575f80fd5b81356001600160401b0381111561513a575f80fd5b820161024081850312156104f1575f80fd5b5f81518084525f5b8181101561517057602081850181015186830182015201615154565b505f602082860101526020601f19601f83011685010191505092915050565b602081525f6104f1602083018461514c565b5f602082840312156151b1575f80fd5b5035919050565b5f602082840312156151c8575f80fd5b81356001600160401b038111156151dd575f80fd5b820161016081850312156104f1575f80fd5b5f8083601f8401126151ff575f80fd5b5081356001600160401b03811115615215575f80fd5b6020830191508360208260051b850101111561522f575f80fd5b9250929050565b80356001600160a01b0381168114611c04575f80fd5b5f805f805f805f805f805f60e08c8e031215615266575f80fd5b6001600160401b03808d35111561527b575f80fd5b6152888e8e358f016151ef565b909c509a5060208d013581101561529d575f80fd5b6152ad8e60208f01358f016151ef565b909a50985060408d01358110156152c2575f80fd5b6152d28e60408f01358f016151ef565b909850965060608d01358110156152e7575f80fd5b506152f88d60608e01358e016151ef565b909550935060808c0135925061531060a08d01615236565b915060c08c013590509295989b509295989b9093969950565b634e487b7160e01b5f52602160045260245ffd5b60068110611b8057611b80615329565b61535882825161533d565b6020818101516001600160a01b0390811691840191909152604080830151908401526060808301519084015260809182015116910152565b5f815180845260208085019450602084015f5b838110156153e55781516153b888825161534d565b808401516001600160a01b031660a08901526040015160c088015260e090960195908201906001016153a3565b509495945050505050565b604080825283519082018190525f906020906060840190828701845b8281101561542a57815115158452928401929084019060010161540c565b50505083810360208501526106d78186615390565b5f8060208385031215615450575f80fd5b82356001600160401b03811115615465575f80fd5b615471858286016151ef565b90969095509350505050565b5f805f8060408587031215615490575f80fd5b84356001600160401b03808211156154a6575f80fd5b6154b2888389016151ef565b909650945060208701359150808211156154ca575f80fd5b506154d7878288016151ef565b95989497509550505050565b602081525f6104f16020830184615390565b5f60208284031215615505575f80fd5b6104f182615236565b5f806040838503121561551f575f80fd5b82356001600160401b03811115615534575f80fd5b830160408186031215615545575f80fd5b946020939093013593505050565b5f805f805f60808688031215615567575f80fd5b85356001600160401b038082111561557d575f80fd5b9087019060a0828a031215615590575f80fd5b909550602087013590808211156155a5575f80fd5b506155b2888289016151ef565b909550935050604086013591506155cb60608701615236565b90509295509295909350565b5f805f805f805f8060a0898b0312156155ee575f80fd5b88356001600160401b0380821115615604575f80fd5b6156108c838d016151ef565b909a50985060208b0135915080821115615628575f80fd5b6156348c838d016151ef565b909850965060408b013591508082111561564c575f80fd5b506156598b828c016151ef565b999c989b509699959896976060870135966080013595509350505050565b5f805f805f805f6080888a03121561568d575f80fd5b87356001600160401b03808211156156a3575f80fd5b6156af8b838c016151ef565b909950975060208a01359150808211156156c7575f80fd5b6156d38b838c016151ef565b909750955060408a01359150808211156156eb575f80fd5b506156f88a828b016151ef565b909450925061570b905060608901615236565b905092959891949750929550565b606081525f61572b606083018661514c565b6020830194909452506001600160a01b0391909116604090910152919050565b634e487b7160e01b5f52604160045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b5f8261578d57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f815180845260208085019450602084015f5b838110156153e55781516157ce88825161533d565b838101516001600160a01b03168885015260408082015190890152606080820151908901526080908101519088015260a090960195908201906001016157b9565b5f815180845260208085019450602084015f5b838110156153e557815161583788825161533d565b808401516001600160a01b0390811689860152604080830151908a0152606080830151908a0152608080830151908a015260a091820151169088015260c09096019590820190600101615822565b60058110611b8057611b80615329565b828152604060208201526158b56040820183516001600160a01b03169052565b5f60208301516158d060608401826001600160a01b03169052565b5060408301516101608060808501526158ed6101a08501836157a6565b91506060850151603f198584030160a086015261590a838261580f565b925050608085015161591f60c0860182615885565b5060a085015160e085015260c0850151610100818187015260e0870151915061012082818801528188015192506101409150828288015280880151848801525080870151610180870152505050809150509392505050565b5f823561015e1983360301811261598c575f80fd5b9190910192915050565b5f602082840312156159a6575f80fd5b8135600581106104f1575f80fd5b818103818111156104025761040261575f565b808201808211156104025761040261575f565b5f815180845260208085019450602084015f5b838110156153e557615a0087835161534d565b60a09690960195908201906001016159ed565b5f6080808301878452602060018060a01b03808916602087015260406080604088015283895180865260a08901915060208b0195505f5b81811015615a8b578651615a5f84825161533d565b808701518616848801528481015185850152606090810151908401529585019591870191600101615a4a565b50508781036060890152615a9f818a6159da565b9c9b505050505050505050505050565b80820281158282048414176104025761040261575f56fea164736f6c6343000818000a","storage":{}},"0x6265cc8d1b28edfd4d76c80bf774c0d446fffbde":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610090575f3560e01c80633f15457f116100635780633f15457f1461010f5780637adbf973146101225780637dc0d1d0146101355780638bbedf7514610147578063be27b22c1461015a575f80fd5b806301ffc9a7146100945780631ecfc411146100bc578063224199c2146100d157806330349ebe146100e4575b5f80fd5b6100a76100a23660046115b1565b61016d565b60405190151581526020015b60405180910390f35b6100cf6100ca3660046115ef565b6101a3565b005b6100cf6100df3660046117e0565b6102de565b6002546100f7906001600160a01b031681565b6040516001600160a01b0390911681526020016100b3565b6001546100f7906001600160a01b031681565b6100cf6101303660046115ef565b61063c565b5f546100f7906001600160a01b031681565b6100cf610155366004611889565b61076d565b6100cf61016836600461190b565b6107f1565b5f6001600160e01b031982166301ffc9a760e01b148061019d57506001600160e01b031982166317d8f49b60e01b145b92915050565b6001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa1580156101ea573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061020e919061196b565b90505f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561024d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610271919061196b565b9050336001600160a01b03821614610287575f80fd5b600280546001600160a01b0319166001600160a01b0385169081179091556040519081527f9176b7f47e4504df5e5516c99d90d82ac7cbd49cc77e7f22ba2ac2f2e3a3eba8906020015b60405180910390a1505050565b5f546040516321ae60b160e11b81526001600160a01b039091169063435cc1629061030f90879087906004016119d3565b5f604051808303815f875af115801561032a573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526103519190810190611a6b565b92505f805f610360888761088b565b91945092509050336001600160a01b038216146103da5760405162461bcd60e51b815260206004820152602d60248201527f4f6e6c79206f776e65722063616e2063616c6c2070726f7665416e64436c616960448201526c36abb4ba342932b9b7b63b32b960991b60648201526084015b60405180910390fd5b6001600160a01b038416156105bb576001600160a01b03851661044e5760405162461bcd60e51b815260206004820152602660248201527f43616e6e6f74207365742061646472206966207265736f6c766572206973206e6044820152651bdd081cd95d60d21b60648201526084016103d1565b6001546040516305ef2c7f60e41b815260048101859052602481018490523060448201526001600160a01b0387811660648301525f608483015290911690635ef2c7f09060a4015f604051808303815f87803b1580156104ac575f80fd5b505af11580156104be573d5f803e3d5ffd5b505050505f83836040516020016104df929190918252602082015260400190565b60408051808303601f1901815290829052805160209091012062d5fa2b60e81b8252600482018190526001600160a01b03878116602484015290925087169063d5fa2b00906044015f604051808303815f87803b15801561053e575f80fd5b505af1158015610550573d5f803e3d5ffd5b5050600154604051635b0fc9c360e01b8152600481018590526001600160a01b0386811660248301529091169250635b0fc9c391506044015f604051808303815f87803b15801561059f575f80fd5b505af11580156105b1573d5f803e3d5ffd5b5050505050610632565b6001546040516305ef2c7f60e41b815260048101859052602481018490526001600160a01b03838116604483015287811660648301525f608483015290911690635ef2c7f09060a4015f604051808303815f87803b15801561061b575f80fd5b505af115801561062d573d5f803e3d5ffd5b505050505b5050505050505050565b6001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa158015610683573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106a7919061196b565b90505f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106e6573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061070a919061196b565b9050336001600160a01b03821614610720575f80fd5b5f80546001600160a01b0319166001600160a01b0385169081179091556040519081527fb3eacd0e351fafdfefdec84e1cd19679b38dbcd63ea7c2c24da17fd2bc3b3c0e906020016102d1565b5f546040516321ae60b160e11b81526001600160a01b039091169063435cc1629061079e90859085906004016119d3565b5f604051808303815f875af11580156107b9573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526107e09190810190611a6b565b90506107ec83826107f1565b505050565b5f805f6107fe858561088b565b6001546040516306ab592360e01b815260048101859052602481018490526001600160a01b03808416604483015294975092955090935091909116906306ab5923906064016020604051808303815f875af115801561085f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108839190611add565b505050505050565b5f8080806108998682610a40565b60ff1690506108aa86600183610a63565b92505f6108dc6108bb836001611b08565b6001848a516108ca9190611b1b565b6108d49190611b1b565b899190610a85565b6002546040516327c482cf60e11b81529192506001600160a01b031690634f89059e9061090d908490600401611b2e565b602060405180830381865afa158015610928573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061094c9190611b40565b6109a45760405162461bcd60e51b815260206004820152602360248201527f506172656e74206e616d65206d7573742062652061207075626c6963207375666044820152620ccd2f60eb1b60648201526084016103d1565b6109ae815f610b05565b5f549095506109c7906001600160a01b03168888610de3565b5060408051602081018890529081018690529093506001600160a01b03841690606001604051602081830303815290604052805190602001207fa2e66ce20e6fb2c4f61339c364ad79f15160cf5307230c8bc4d628adbca2ba3989604051610a2f9190611b2e565b60405180910390a350509250925092565b5f828281518110610a5357610a53611b5f565b016020015160f81c905092915050565b82515f90610a718385611b08565b1115610a7b575f80fd5b5091016020012090565b8251606090610a948385611b08565b1115610a9e575f80fd5b5f8267ffffffffffffffff811115610ab857610ab861160a565b6040519080825280601f01601f191660200182016040528015610ae2576020820181803683370190505b50905060208082019086860101610afa82828761100b565b509095945050505050565b5f80610b118484610a40565b60ff169050805f03610b2657505f905061019d565b5f610b4585610b358487611b08565b610b40906001611b08565b610b05565b90505f610b5e610b56866001611b08565b879085610a63565b604080516020810185905290810182905290915060600160408051808303601f190181529082905280516020909101206001546302571be360e01b8352600483018290529095505f916001600160a01b03909116906302571be390602401602060405180830381865afa158015610bd7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bfb919061196b565b90506001600160a01b0381161580610c1b57506001600160a01b03811630145b610c7a5760405162461bcd60e51b815260206004820152602a60248201527f43616e6e6f7420656e61626c652061206e616d65206f776e656420627920736f6044820152696d656f6e6520656c736560b01b60648201526084016103d1565b6001600160a01b0381163014610dd95782610d5e576001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa158015610cd6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cfa919061196b565b60405163232e3b3b60e21b8152600481018590523060248201529091506001600160a01b03821690638cb8ecec906044015f604051808303815f87803b158015610d42575f80fd5b505af1158015610d54573d5f803e3d5ffd5b5050505050610dd9565b6001546040516306ab592360e01b815260048101859052602481018490523060448201526001600160a01b03909116906306ab5923906064016020604051808303815f875af1158015610db3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610dd79190611add565b505b5050505092915050565b5f80610e016040518060400160405280606081526020015f81525090565b610e1985516005610e129190611b08565b8290611060565b50604080518082019091526005815264045f656e7360d81b6020820152610e419082906110c3565b50610e4c81866110c3565b50805160405163021e646f60e21b81525f9182916001600160a01b038a169163087991bc91610e8091601091600401611b73565b606060405180830381865afa158015610e9b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ebf9190611ba7565b93509150506bffffffffffffffffffffffff198216158015610ee057508551155b15610ef3575f8094509450505050611003565b855160208701206bffffffffffffffffffffffff19838116911614610f16575f80fd5b5f610f2187826110ef565b90505b80515160208201511015610ff857610f4b816080015183610f459190611bfc565b4261114a565b610fbd5760405162461bcd60e51b815260206004820152603c60248201527f444e53207265636f7264206973207374616c653b2072656672657368206f722060448201527f64656c657465206974206265666f72652070726f63656564696e672e0000000060648201526084016103d1565b5f80610fcd898460a00151611162565b925090508115610fe857965060019550611003945050505050565b5050610ff3816111d1565b610f24565b505f80945094505050505b935093915050565b602081106110435781518352611022602084611b08565b925061102f602083611b08565b915061103c602082611b1b565b905061100b565b905182516020929092036101000a5f190180199091169116179052565b60408051808201909152606081525f602082015261107f602083611c20565b156110a75761108f602083611c20565b61109a906020611b1b565b6110a49083611b08565b91505b506020828101829052604080518085525f815290920101905290565b60408051808201909152606081525f60208201526110e883845f0151518485516112b6565b9392505050565b6111376040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261019d816111d1565b5f806111568385611c3f565b60030b12159392505050565b5f805b83518310156111c4575f6111798585610a40565b60ff169050611189600185611b08565b93505f8061119887878561139c565b9250905081156111b0579350600192506111ca915050565b6111ba8387611b08565b9550505050611165565b505f9050805b9250929050565b60c081015160208201819052815151116111e85750565b5f6111fa825f015183602001516113f5565b82602001516112099190611b08565b82519091506112189082611454565b61ffff16604083015261122c600282611b08565b825190915061123b9082611454565b61ffff16606083015261124f600282611b08565b825190915061125e908261147a565b63ffffffff166080830152611274600482611b08565b82519091505f906112859083611454565b61ffff169050611296600283611b08565b60a0840181905291506112a98183611b08565b60c0909301929092525050565b60408051808201909152606081525f602082015282518211156112d7575f80fd5b60208501516112e68386611b08565b11156113195761131985611309876020015187866113049190611b08565b6114a2565b611314906002611c66565b6114b8565b5f808651805187602083010193508088870111156113375787860182525b505050602084015b602084106113775780518252611356602083611b08565b9150611363602082611b08565b9050611370602085611b1b565b935061133f565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b5f806113a8858561147a565b63ffffffff1663613d3078146113c257505f905080611003565b602c8310156113d557505f905080611003565b6113e9856113e4866004611b08565b6114d5565b91509150935093915050565b5f815b8351811061140857611408611c7d565b5f6114138583610a40565b60ff169050611423816001611b08565b61142d9083611b08565b9150805f0361143c5750611442565b506113f8565b61144c8382611b1b565b949350505050565b81515f90611463836002611b08565b111561146d575f80fd5b50016002015161ffff1690565b81515f90611489836004611b08565b1115611493575f80fd5b50016004015163ffffffff1690565b5f818311156114b257508161019d565b50919050565b81516114c48383611060565b506114cf83826110c3565b50505050565b5f8060288385516114e69190611b1b565b10156114f657505f9050806111ca565b5f835b611504856028611b08565b8110156115a55760049190911b905f61151d8783610a40565b60ff169050603081101580156115335750603a81105b1561154c57611543603082611b1b565b8317925061159c565b6041811015801561155d5750604781105b1561156d57611543603782611b1b565b6061811015801561157e5750606781105b1561158e57611543605782611b1b565b5f80945094505050506111ca565b506001016114f9565b50946001945092505050565b5f602082840312156115c1575f80fd5b81356001600160e01b0319811681146110e8575f80fd5b6001600160a01b03811681146115ec575f80fd5b50565b5f602082840312156115ff575f80fd5b81356110e8816115d8565b634e487b7160e01b5f52604160045260245ffd5b6040805190810167ffffffffffffffff811182821017156116415761164161160a565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156116705761167061160a565b604052919050565b5f67ffffffffffffffff8211156116915761169161160a565b50601f01601f191660200190565b5f82601f8301126116ae575f80fd5b81356116c16116bc82611678565b611647565b8181528460208386010111156116d5575f80fd5b816020850160208301375f918101602001919091529392505050565b5f82601f830112611700575f80fd5b8135602067ffffffffffffffff8083111561171d5761171d61160a565b8260051b61172c838201611647565b9384528581018301938381019088861115611745575f80fd5b84880192505b858310156117d457823584811115611761575f80fd5b88016040818b03601f1901811315611777575f80fd5b61177f61161e565b878301358781111561178f575f80fd5b61179d8d8a8387010161169f565b8252509082013590868211156117b1575f80fd5b6117bf8c898486010161169f565b8189015284525050918401919084019061174b565b98975050505050505050565b5f805f805f60a086880312156117f4575f80fd5b853567ffffffffffffffff8082111561180b575f80fd5b61181789838a0161169f565b9650602088013591508082111561182c575f80fd5b61183889838a016116f1565b9550604088013591508082111561184d575f80fd5b5061185a8882890161169f565b935050606086013561186b816115d8565b9150608086013561187b816115d8565b809150509295509295909350565b5f805f6060848603121561189b575f80fd5b833567ffffffffffffffff808211156118b2575f80fd5b6118be8783880161169f565b945060208601359150808211156118d3575f80fd5b6118df878388016116f1565b935060408601359150808211156118f4575f80fd5b506119018682870161169f565b9150509250925092565b5f806040838503121561191c575f80fd5b823567ffffffffffffffff80821115611933575f80fd5b61193f8683870161169f565b93506020850135915080821115611954575f80fd5b506119618582860161169f565b9150509250929050565b5f6020828403121561197b575f80fd5b81516110e8816115d8565b5f5b838110156119a0578181015183820152602001611988565b50505f910152565b5f81518084526119bf816020860160208601611986565b601f01601f19169290920160200192915050565b5f60408083016040845280865180835260608601915060608160051b870101925060208089015f5b83811015611a4b57888603605f1901855281518051888852611a1f898901826119a8565b9185015188830389870152919050611a3781836119a8565b9750505093820193908201906001016119fb565b505086840381880152505050611a6181866119a8565b9695505050505050565b5f60208284031215611a7b575f80fd5b815167ffffffffffffffff811115611a91575f80fd5b8201601f81018413611aa1575f80fd5b8051611aaf6116bc82611678565b818152856020838501011115611ac3575f80fd5b611ad4826020830160208601611986565b95945050505050565b5f60208284031215611aed575f80fd5b5051919050565b634e487b7160e01b5f52601160045260245ffd5b8082018082111561019d5761019d611af4565b8181038181111561019d5761019d611af4565b602081525f6110e860208301846119a8565b5f60208284031215611b50575f80fd5b815180151581146110e8575f80fd5b634e487b7160e01b5f52603260045260245ffd5b61ffff83168152604060208201525f61144c60408301846119a8565b805163ffffffff81168114611ba2575f80fd5b919050565b5f805f60608486031215611bb9575f80fd5b611bc284611b8f565b9250611bd060208501611b8f565b915060408401516bffffffffffffffffffffffff1981168114611bf1575f80fd5b809150509250925092565b63ffffffff818116838216019080821115611c1957611c19611af4565b5092915050565b5f82611c3a57634e487b7160e01b5f52601260045260245ffd5b500690565b600382810b9082900b03637fffffff198112637fffffff8213171561019d5761019d611af4565b808202811582820484141761019d5761019d611af4565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{"0x0":"0x9b2565a3545a1312bdcb6e7148a7f7cae8c2706b","0x1":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0x2":"0x287dee389caaa49edc112888f2bcfd927b472e25"}},"0x62b11ad5f582a5c5d378fb310125b030042554f1":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106103af5760003560e01c80637e37479e116101f4578063ba5d40b71161011a578063e985e9c5116100ad578063f5c1f76e1161007c578063f5c1f76e146108d8578063f7df5c60146108eb578063f8c8765e146108fe578063ffa1ad741461091157600080fd5b8063e985e9c51461087a578063ebf0c717146108b6578063ec129eea146108bd578063f25eb5c1146108d057600080fd5b8063c87b56dd116100e9578063c87b56dd1461082e578063ce92b33e14610841578063cf2c52cb14610854578063d9548e531461086757600080fd5b8063ba5d40b7146107b3578063baef73e9146107c6578063bb5b27e114610808578063bebec6b41461081b57600080fd5b8063a22cb46511610192578063ac9650d811610161578063ac9650d81461074c578063b3f9e4cb1461076c578063b85afd281461077f578063b88d4fde146107a057600080fd5b8063a22cb465146106e7578063a3f4df7e146106fa578063a424740014610726578063ab3b87fe1461073957600080fd5b80639508b1c4116101ce5780639508b1c4146106b15780639559c0bd146106c457806395d89b41146106cc57806399e0dd7c146106d457600080fd5b80637e37479e146106785780637eee288d1461068b57806394d008ef1461069e57600080fd5b806342842e0e116102d95780635096023911610277578063663f7b2a11610246578063663f7b2a14610610578063672b9f81146106235780636ccbae5f1461064457806370a082311461066557600080fd5b806350960239146105bb578063572b6c05146105ce5780636352211e146105ea578063638e5c78146105fd57600080fd5b806347c81699116102b357806347c816991461056f5780634a72584d146105825780634f558e791461059557806350382c1a146105a857600080fd5b806342842e0e1461053657806342966c6814610549578063430c20811461055c57600080fd5b80631bf7e13e1161035157806327f189751161032057806327f18975146104ea578063310bd74b146104fd5780633f72ec6e1461051057806340c10f191461052357600080fd5b80631bf7e13e146104905780631f71be06146104a357806323b872dd146104b6578063276fabb1146104c957600080fd5b8063095ea7b31161038d578063095ea7b31461041c578063150b7a02146104315780631bd8cc1a1461045d5780631be5e7ed1461047d57600080fd5b806301ffc9a7146103b457806306fdde03146103dc578063081812fc146103f1575b600080fd5b6103c76103c2366004613f0b565b610935565b60405190151581526020015b60405180910390f35b6103e4610946565b6040516103d39190613f78565b6104046103ff366004613f8b565b6109d8565b6040516001600160a01b0390911681526020016103d3565b61042f61042a366004613fb9565b6109ff565b005b61044461043f366004614026565b610a18565b6040516001600160e01b031990911681526020016103d3565b61047061046b3660046140dc565b610b72565b6040516103d3919061417f565b6103e461048b366004614192565b610c68565b6103e461049e3660046141c9565b610cb3565b61042f6104b1366004614249565b610dbe565b61042f6104c4366004614305565b610e54565b6104dc6104d7366004614346565b610ea7565b6040519081526020016103d3565b61042f6104f8366004614387565b610eb6565b61042f61050b366004613f8b565b610efe565b61042f61051e3660046143fa565b610f39565b61042f610531366004613fb9565b61103b565b61042f610544366004614305565b611088565b61042f610557366004613f8b565b6110a3565b6103c761056a366004613fb9565b6110e7565b61042f61057d366004614424565b6110f3565b61042f610590366004614485565b611132565b6103c76105a3366004613f8b565b611178565b61042f6105b636600461458c565b611197565b61042f6105c93660046145c0565b6111cd565b6103c76105dc3660046145c0565b6001600160a01b0316301490565b6104046105f8366004613f8b565b61122d565b61042f61060b366004613f8b565b61124a565b61042f61061e366004614678565b611295565b6106366106313660046146c0565b611336565b6040516103d39291906146e2565b6104dc610652366004613f8b565b6000908152610100602052604090205490565b6104dc6106733660046145c0565b61134e565b6104dc6106863660046145c0565b6113d4565b61042f610699366004613fb9565b611405565b61042f6106ac366004614707565b61145c565b61042f6106bf366004614762565b6114ab565b6104dc601481565b6103e4611532565b61042f6106e2366004614805565b611541565b61042f6106f536600461483a565b6115c8565b6103e46040518060400160405280600d81526020016c554e533a20526567697374727960981b81525081565b6103c76107343660046141c9565b6115da565b61042f610747366004613fb9565b611625565b61075f61075a366004614346565b61166a565b6040516103d39190614866565b61040461077a366004613f8b565b611746565b61079261078d3660046140dc565b611770565b6040516103d39291906148c8565b61042f6107ae3660046148ed565b611892565b61042f6107c1366004614249565b6118d9565b6107f06107d4366004613f8b565b600090815261013960205260409020546001600160401b031690565b6040516001600160401b0390911681526020016103d3565b6103e4610816366004613f8b565b611962565b6103e46108293660046145c0565b611a04565b6103e461083c366004613f8b565b611ace565b61042f61084f366004614387565b611b34565b61042f610862366004614958565b611b73565b6103c7610875366004613f8b565b611c42565b6103c761088836600461499f565b6001600160a01b039182166000908152606a6020908152604080832093909416825291909152205460ff1690565b60006104dc565b61042f6108cb366004614387565b611c85565b61042f611cc4565b6104706108e6366004614346565b611d4b565b61042f6108f93660046149d8565b611dfe565b61042f61090c366004614a0a565b611e8f565b6103e460405180604001604052806005815260200164302e392e3160d81b81525081565b600061094082612065565b92915050565b60606065805461095590614a66565b80601f016020809104026020016040519081016040528092919081815260200182805461098190614a66565b80156109ce5780601f106109a3576101008083540402835291602001916109ce565b820191906000526020600020905b8154815290600101906020018083116109b157829003601f168201915b5050505050905090565b60006109e3826120b5565b506000908152606960205260409020546001600160a01b031690565b80610a0981612114565b610a13838361217a565b505050565b60007f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378546001600160a01b0316610a4d61229c565b6001600160a01b031603610b0e57610a6361229c565b6001600160a01b03166342966c68856040518263ffffffff1660e01b8152600401610a9091815260200190565b600060405180830381600087803b158015610aaa57600080fd5b505af1158015610abe573d6000803e3d6000fd5b505050821580159150610ad85750610ad882840184614a9a565b15610af657610ae730856122ab565b610af185856123f9565b610b00565b610b0085856122ab565b50630a85bd0160e11b610b69565b60405162461bcd60e51b815260206004820152602560248201527f52656769737472793a204552433732315f524543454956494e475f50524f4849604482015264109255115160da1b60648201526084015b60405180910390fd5b95945050505050565b6060826001600160401b03811115610b8c57610b8c6144d7565b604051908082528060200260200182016040528015610bbf57816020015b6060815260200190600190039081610baa5790505b50905060005b83811015610c6057610c30858583818110610be257610be2614ab5565b9050602002810190610bf49190614acb565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508792506124a4915050565b828281518110610c4257610c42614ab5565b60200260200101819052508080610c5890614b27565b915050610bc5565b509392505050565b6060610cab84848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508692506124a4915050565b949350505050565b606060005a9050610cc58585856115da565b610d215760405162461bcd60e51b815260206004820152602760248201527f554e535265676973747279466f727761726465723a205349474e41545552455f6044820152661253959053125160ca1b6064820152608401610b60565b610db3610d3160208701876145c0565b30604088013584610d4560608b018b614acb565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284376000920191909152506124d992505050565b9150505b9392505050565b610134546001600160a01b0316610dd361229c565b6001600160a01b031614610df95760405162461bcd60e51b8152600401610b6090614b40565b6000610e0d610e08888a614b87565b6125ba565b509050610e1a8982611405565b610e278686868685612612565b8115610e4957610e498982610e44610e3f8b8d614b87565b612680565b612701565b505050505050505050565b80610e66610e6061229c565b82612743565b610e825760405162461bcd60e51b8152600401610b6090614b94565b81610e8c81612114565b610e95836127d4565b610ea0858585612841565b5050505050565b6000610c60610e088385614b87565b80610ec2610e6061229c565b610ede5760405162461bcd60e51b8152600401610b6090614b94565b81610ee881612114565b610ef587878787876129e8565b50505050505050565b80610f0a610e6061229c565b610f265760405162461bcd60e51b8152600401610b6090614b94565b81610f3081612114565b610a13836127d4565b610134546001600160a01b0316610f4e61229c565b6001600160a01b031614610f745760405162461bcd60e51b8152600401610b6090614b40565b610f7d816120b5565b42826001600160401b031611610fd55760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a204558504952595f494e5f5041535400000000000000006044820152606401610b60565b60008181526101396020908152604091829020805467ffffffffffffffff19166001600160401b038616908117909155915191825282917f93feabb03ab84f47fc85bf0c298103fca21d8c8bc376eae0c1e1c56b9d4f7789910160405180910390a25050565b611043612a4b565b6001600160a01b031661105461229c565b6001600160a01b03161461107a5760405162461bcd60e51b8152600401610b6090614bdd565b61108482826122ab565b5050565b610a1383838360405180602001604052806000815250611892565b806110af610e6061229c565b6110cb5760405162461bcd60e51b8152600401610b6090614b94565b816110d581612114565b6110de836127d4565b610a1383612b4c565b6000610db78383612743565b806110ff610e6061229c565b61111b5760405162461bcd60e51b8152600401610b6090614b94565b8161112581612114565b610ef58787878787612bf3565b8061113e610e6061229c565b61115a5760405162461bcd60e51b8152600401610b6090614b94565b8161116481612114565b61117086868686612cd2565b505050505050565b6000818152606760205260408120546001600160a01b03161515610940565b6111ca816040516020016111ab9190614c1f565b6040516020818303038152906040528051906020012060001c82612d72565b50565b610134546001600160a01b03166111e261229c565b6001600160a01b0316146112085760405162461bcd60e51b8152600401610b6090614b40565b6001600160a01b0316600090815261013660205260409020805460ff19166001179055565b600061123882611c42565b6112455761094082612d97565b919050565b80611256610e6061229c565b6112725760405162461bcd60e51b8152600401610b6090614b94565b61128461127d61229c565b3084612841565b61108461128f61229c565b836123f9565b60006112a0826125ba565b5090506112ab61229c565b6001600160a01b03166112bd8261122d565b6001600160a01b0316146113135760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b60565b61131c81612114565b61108461132761229c565b8261133185612680565b612df7565b6060806113438484612e7e565b909590945092505050565b60006001600160a01b0382166113b85760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b6064820152608401610b60565b506001600160a01b031660009081526068602052604090205490565b6001600160a01b038116600090815261013560205260408120546113f781612e9f565b6113ff578091505b50919050565b610134546001600160a01b031661141a61229c565b6001600160a01b0316146114405760405162461bcd60e51b8152600401610b6090614b40565b611449816127d4565b61108461145582612d97565b8383612841565b611464612a4b565b6001600160a01b031661147561229c565b6001600160a01b03161461149b5760405162461bcd60e51b8152600401610b6090614bdd565b6114a584846122ab565b50505050565b6114b58787612ee9565b6114bd61229c565b6001600160a01b03166114cf8661122d565b6001600160a01b0316146115255760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b60565b610ef58484848489612612565b60606066805461095590614a66565b610134546001600160a01b031661155661229c565b6001600160a01b03161461157c5760405162461bcd60e51b8152600401610b6090614b40565b61013361158a828483614c81565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b82826040516115bc929190614d69565b60405180910390a15050565b6110846115d361229c565b8383612f58565b6000610cab6115e885614d7d565b3085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061302692505050565b80611631610e6061229c565b61164d5760405162461bcd60e51b8152600401610b6090614b94565b8161165781612114565b6114a561166384612d97565b8585612841565b606060006116788385614e07565b905030330361173d5760005b8381101561173b5761170b61169761229c565b61169f61316f565b8787858181106116b1576116b1614ab5565b90506020028101906116c39190614acb565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250613183915050565b82828151811061171d5761171d614ab5565b6020026020010181905250808061173390614b27565b915050611684565b505b610cab816131b3565b6000818152606760205260408120546001600160a01b0316611769576000610940565b3092915050565b606080836001600160401b0381111561178b5761178b6144d7565b6040519080825280602002602001820160405280156117be57816020015b60608152602001906001900390816117a95790505b509150836001600160401b038111156117d9576117d96144d7565b60405190808252806020026020018201604052801561180c57816020015b60608152602001906001900390816117f75790505b50905060005b848110156118895761183c86868381811061182f5761182f614ab5565b9050602002013585612e7e565b84838151811061184e5761184e614ab5565b6020026020010184848151811061186757611867614ab5565b602002602001018290528290525050808061188190614b27565b915050611812565b50935093915050565b8161189e610e6061229c565b6118ba5760405162461bcd60e51b8152600401610b6090614b94565b826118c481612114565b6118cd846127d4565b611170868686866132de565b610134546001600160a01b03166118ee61229c565b6001600160a01b0316146119145760405162461bcd60e51b8152600401610b6090614b40565b600080611924610e08898b614b87565b9150915061193181613311565b6119498a83611943610e3f8c8e614b87565b86613371565b6119568787878786612612565b50505050505050505050565b600081815260c96020526040902080546060919061197f90614a66565b80601f01602080910402602001604051908101604052809291908181526020018280546119ab90614a66565b80156119f85780601f106119cd576101008083540402835291602001916119f8565b820191906000526020600020905b8154815290600101906020018083116119db57829003601f168201915b50505050509050919050565b6001600160a01b03811660009081526101356020526040902054606090611a2a81612e9f565b6113ff576000818152610138602052604090208054611a4890614a66565b80601f0160208091040260200160405190810160405280929190818152602001828054611a7490614a66565b8015611ac15780601f10611a9657610100808354040283529160200191611ac1565b820191906000526020600020905b815481529060010190602001808311611aa457829003601f168201915b5050505050915050919050565b6060611ad9826120b5565b6000611ae36133c4565b90506000815111611b035760405180602001604052806000815250610db7565b80611b0d846133d4565b604051602001611b1e929190614e7a565b6040516020818303038152906040529392505050565b80611b40610e6061229c565b611b5c5760405162461bcd60e51b8152600401610b6090614b94565b81611b6681612114565b610ef58787878787612612565b7f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87546001600160a01b0316611ba661229c565b6001600160a01b031614611bcc5760405162461bcd60e51b8152600401610b6090614bdd565b6020819003611bef576000611be382840184613f8b565b90506114a584826122ab565b6000611bfd82840184614ea9565b805190915060005b8181101561117057611c3086848381518110611c2357611c23614ab5565b60200260200101516122ab565b80611c3a81614b27565b915050611c05565b600081815261013960205260408120546001600160401b03161580159061094057505060009081526101396020526040902054426001600160401b039091161090565b80611c91610e6061229c565b611cad5760405162461bcd60e51b8152600401610b6090614b94565b81611cb781612114565b610ef587878787876134d4565b6000611cce61229c565b6001600160a01b0381166000908152610135602052604081205491925003611d425760405162461bcd60e51b815260206004820152602160248201527f52656769737472793a20524556455253455f5245434f52445f49535f454d50546044820152605960f81b6064820152608401610b60565b6111ca816134ea565b6060816001600160401b03811115611d6557611d656144d7565b604051908082528060200260200182016040528015611d9857816020015b6060815260200190600190039081611d835790505b50905060005b82811015611df757611dc7848483818110611dbb57611dbb614ab5565b90506020020135611962565b828281518110611dd957611dd9614ab5565b60200260200101819052508080611def90614b27565b915050611d9e565b5092915050565b610134546001600160a01b0316611e1361229c565b6001600160a01b031614611e395760405162461bcd60e51b8152600401610b6090614b40565b61013454611e50906001600160a01b0316846122ab565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c39528383604051611e82929190614d69565b60405180910390a2505050565b600054610100900460ff1615808015611eaf5750600054600160ff909116105b80611ec95750303b158015611ec9575060005460ff166001145b611f2c5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610b60565b6000805460ff191660011790558015611f4f576000805461ff0019166101001790555b61013480546001600160a01b0319166001600160a01b038716179055837f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec9237880546001600160a01b0319166001600160a01b03929092169190911790556040805180820182526013815272556e73746f707061626c6520446f6d61696e7360681b60208083019190915282518084019093526002835261155160f21b90830152611ff79161352f565b611fff61356f565b61200761356f565b61201083613598565b612019826135c8565b8015610ea0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b60006001600160e01b031982166380ac58cd60e01b148061209657506001600160e01b03198216635b5e139f60e01b145b8061094057506301ffc9a760e01b6001600160e01b0319831614610940565b6000818152606760205260409020546001600160a01b03166111ca5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b60565b3033036121715761212361316f565b81146111ca5760405162461bcd60e51b815260206004820152601760248201527f52656769737472793a20544f4b454e5f494e56414c49440000000000000000006044820152606401610b60565b6111ca816135f8565b600061218582612d97565b9050806001600160a01b0316836001600160a01b0316036121f25760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b6064820152608401610b60565b806001600160a01b031661220461229c565b6001600160a01b0316148061222057506122208161088861229c565b6122925760405162461bcd60e51b815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c00006064820152608401610b60565b610a138383613626565b60006122a6613694565b905090565b6001600160a01b0382166123015760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610b60565b6000818152606760205260409020546001600160a01b0316156123665760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610b60565b612372600083836136af565b6001600160a01b038216600090815260686020526040812080546001929061239b908490614f39565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b03861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b6000612403612a4b565b905061240f8183613626565b60008051602061529383398151915254604080516020808201869052825180830390910181528183019283905263e3dec8fb60e01b9092526001600160a01b0390921691829163e3dec8fb9161246c918891309190604401614f4c565b600060405180830381600087803b15801561248657600080fd5b505af115801561249a573d6000803e3d6000fd5b5050505050505050565b6060610db7836040516020016124ba9190614c1f565b6040516020818303038152906040528051906020012060001c8361378b565b60606124e4856135f8565b600080876001600160a01b0316866124fe8b8a8989613183565b60405161250b9190614c1f565b60006040518083038160008787f1925050503d8060008114612549576040519150601f19603f3d011682016040523d82523d6000602084013e61254e565b606091505b50909250905061255f603f87614f8e565b5a1161256d5761256d614fa2565b6125ad82826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061386d565b9998505050505050505050565b805160009081905b801561260c578291506125f882856125db600185614fb8565b815181106125eb576125eb614ab5565b60200260200101516138a6565b92508061260481614fcb565b9150506125c2565b50915091565b60005b848110156111705761266e86868381811061263257612632614ab5565b90506020028101906126449190614acb565b86868581811061265657612656614ab5565b90506020028101906126689190614acb565b86612bf3565b8061267881614b27565b915050612615565b606060008260008151811061269757612697614ab5565b602002602001015190506000600190505b8351811015611df757818482815181106126c4576126c4614ab5565b60200260200101516040516020016126dd929190614fe2565b604051602081830303815290604052915080806126f990614b27565b9150506126a8565b61dead6001600160a01b0384161480159061273357506001600160a01b03831660009081526101356020526040902054155b15610a1357610a13838383612df7565b60008061274f8361122d565b90506001600160a01b03811615801590610cab5750806001600160a01b0316846001600160a01b031614806127a957506001600160a01b038082166000908152606a602090815260408083209388168352929052205460ff165b80610cab5750836001600160a01b03166127c2846109d8565b6001600160a01b031614949350505050565b6127dd81613952565b6040516020016127ef91815260200190565b60408051601f198184030181528282528051602091820120600085815260cb9092529181209190915582917f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9190a250565b826001600160a01b031661285482612d97565b6001600160a01b0316146128b85760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b6064820152608401610b60565b6001600160a01b03821661291a5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610b60565b6129258383836136af565b612930600082613626565b6001600160a01b0383166000908152606860205260408120805460019290612959908490614fb8565b90915550506001600160a01b0382166000908152606860205260408120805460019290612987908490614f39565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60005b8481101561117057612a39868683818110612a0857612a08614ab5565b90506020020135858584818110612a2157612a21614ab5565b9050602002810190612a339190614acb565b85612cd2565b80612a4381614b27565b9150506129eb565b600080516020615293833981519152546000906001600160a01b03168015612b485760405163721804d360e11b81523060048201526000906001600160a01b0383169063e43009a690602401602060405180830381865afa158015612ab4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ad8919061501e565b60405163e66f960360e01b8152600481018290529091506001600160a01b0383169063e66f960390602401602060405180830381865afa158015612b20573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b449190615037565b9250505b5090565b6000612b5782612d97565b9050612b65816000846136af565b612b70600083613626565b6001600160a01b0381166000908152606860205260408120805460019290612b99908490614fb8565b909155505060008281526067602052604080822080546001600160a01b0319169055518391906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b60008585604051602001612c08929190615054565b60408051601f198184030181528282528051602091820120601f8901829004820284018201909252878352909250612c5c9183918990899081908401838280828437600092019190915250612d7292505050565b6111708187878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061397a915050565b612cdb84613aaf565b612d275760405162461bcd60e51b815260206004820152601c60248201527f5265636f726453746f726167653a204b45595f4e4f545f464f554e44000000006044820152606401610b60565b6114a584612d3486611962565b85858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525087925061397a915050565b612d7b82613aaf565b61108457600082815260c960205260409020610a138282615064565b6000818152606760205260408120546001600160a01b0316806109405760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b60565b6000828152610138602052604090208054612e1190614a66565b9050600003612e3557600082815261013860205260409020612e338282615064565b505b6001600160a01b03831660008181526101356020526040808220859055518492917feb76a21470988c474a21f690cc28fee1ed511bd812dc3c21fd0f49c5e5d4708a91a3505050565b606080612e8a84611962565b9150612e96848461378b565b90509250929050565b6000818152610137602052604081205460ff16801561094057506101366000612ec661229c565b6001600160a01b0316815260208101919091526040016000205460ff1692915050565b60008051602061529383398151915254604051633805550f60e01b81526001600160a01b03909116908190633805550f90612f2a9086908690600401614d69565b600060405180830381600087803b158015612f4457600080fd5b505af1158015610ef5573d6000803e3d6000fd5b816001600160a01b0316836001600160a01b031603612fb95760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610b60565b6001600160a01b038381166000818152606a6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561306d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613091919061501e565b9050600061313f8660600151805190602001208688602001516040516020016130df9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561316557508551613165906001600160a01b03168286613ad5565b9695505050505050565b60003033036131805750601f193601355b90565b606082858560405160200161319a93929190615123565b6040516020818303038152906040529050949350505050565b606081516001600160401b038111156131ce576131ce6144d7565b60405190808252806020026020018201604052801561320157816020015b60608152602001906001900390816131ec5790505b50905060005b82518110156113ff57600080306001600160a01b031685848151811061322f5761322f614ab5565b60200260200101516040516132449190614c1f565b600060405180830381855af49150503d806000811461327f576040519150601f19603f3d011682016040523d82523d6000602084013e613284565b606091505b50915091506132ac82826040518060600160405280602781526020016152b36027913961386d565b8484815181106132be576132be614ab5565b6020026020010181905250505080806132d690614b27565b915050613207565b6132e9848484612841565b6132f584848484613c17565b6114a55760405162461bcd60e51b8152600401610b6090615162565b6000818152610137602052604090205460ff16156111ca5760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a20544f4b454e5f555047524144454400000000000000006044820152606401610b60565b61337b84846122ab565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952836040516133ab9190613f78565b60405180910390a280156114a5576114a5848484612701565b6060610133805461095590614a66565b6060816000036133fb5750506040805180820190915260018152600360fc1b602082015290565b8160005b8115613425578061340f81614b27565b915061341e9050600a83614f8e565b91506133ff565b6000816001600160401b0381111561343f5761343f6144d7565b6040519080825280601f01601f191660200182016040528015613469576020820181803683370190505b5090505b8415610cab5761347e600183614fb8565b915061348b600a866151b4565b613496906030614f39565b60f81b8183815181106134ab576134ab614ab5565b60200101906001600160f81b031916908160001a9053506134cd600a86614f8e565b945061346d565b6134dd816127d4565b610ea08585858585612612565b6001600160a01b03811660008181526101356020526040808220829055517ffcf5eec0cfa3e6332f5f0e63ec242d71f866a61d121d6cdf5c2eb3b668a26c4f9190a250565b600054610100900460ff166135565760405162461bcd60e51b8152600401610b60906151c8565b60656135628382615064565b506066610a138282615064565b600054610100900460ff166135965760405162461bcd60e51b8152600401610b60906151c8565b565b600054610100900460ff166135bf5760405162461bcd60e51b8152600401610b60906151c8565b6111ca81613d1c565b600054610100900460ff166135ef5760405162461bcd60e51b8152600401610b60906151c8565b6111ca81613d75565b60008181526101006020526040902054613613906001614f39565b6000918252610100602052604090912055565b600081815260696020526040902080546001600160a01b0319166001600160a01b038416908117909155819061365b82612d97565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60003033036136aa575060331936013560601c90565b503390565b6001600160a01b0382166136c6576136c681613311565b600081815261013960205260409020546001600160401b031615613761576001600160a01b0382161580159061371557506136ff612a4b565b6001600160a01b0316826001600160a01b031614155b6137615760405162461bcd60e51b815260206004820152601960248201527f52656769737472793a20544f4b454e5f455850495241424c45000000000000006044820152606401610b60565b6001600160a01b03831660009081526101356020526040902054819003610a1357610a13836134ea565b606061379682612e9f565b156137b05750604080516020810190915260008152610940565b60ca60006137bd84613952565b8152602001908152602001600020600084815260200190815260200160002080546137e790614a66565b80601f016020809104026020016040519081016040528092919081815260200182805461381390614a66565b80156138605780601f1061383557610100808354040283529160200191613860565b820191906000526020600020905b81548152906001019060200180831161384357829003601f168201915b5050505050905092915050565b6060831561387c575081610db7565b82511561388c5782518084602001fd5b8160405162461bcd60e51b8152600401610b609190613f78565b600081516000036138f15760405162461bcd60e51b815260206004820152601560248201527452656769737472793a204c4142454c5f454d50545960581b6044820152606401610b60565b82826040516020016139039190614c1f565b60405160208183030381529060405280519060200120604051602001613933929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b600081815260cb602052604081205415612b4857600082815260cb6020526040902054610940565b60ca600061398783613952565b8152602001908152602001600020600085815260200190815260200160002080546139b190614a66565b9050600003613a0957826040516139c89190614c1f565b6040518091039020817f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f8685604051613a009190613f78565b60405180910390a35b8160ca6000613a1784613952565b815260200190815260200160002060008681526020019081526020016000209081613a429190615064565b5081604051613a519190614c1f565b604051809103902083604051613a679190614c1f565b6040518091039020827f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d928686604051613aa19291906146e2565b60405180910390a450505050565b600081815260c9602052604081208054829190613acb90614a66565b9050119050919050565b6000806000613ae48585613dc3565b90925090506000816004811115613afd57613afd615213565b148015613b1b5750856001600160a01b0316826001600160a01b0316145b15613b2b57600192505050610db7565b600080876001600160a01b0316631626ba7e60e01b8888604051602401613b53929190615229565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051613b919190614c1f565b600060405180830381855afa9150503d8060008114613bcc576040519150601f19603f3d011682016040523d82523d6000602084013e613bd1565b606091505b5091509150818015613be4575080516020145b8015613c0b57508051630b135d3f60e11b90613c09908301602090810190840161501e565b145b98975050505050505050565b60006001600160a01b0384163b15613d1457836001600160a01b031663150b7a02613c4061229c565b8786866040518563ffffffff1660e01b8152600401613c629493929190615242565b6020604051808303816000875af1925050508015613c9d575060408051601f3d908101601f19168201909252613c9a91810190615275565b60015b613cfa573d808015613ccb576040519150601f19603f3d011682016040523d82523d6000602084013e613cd0565b606091505b508051600003613cf25760405162461bcd60e51b8152600401610b6090615162565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610cab565b506001610cab565b600054610100900460ff16613d435760405162461bcd60e51b8152600401610b60906151c8565b806000805160206152938339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b600054610100900460ff16613d9c5760405162461bcd60e51b8152600401610b60906151c8565b807f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87613d54565b6000808251604103613df95760208301516040840151606085015160001a613ded87828585613e08565b94509450505050613e01565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613e3f5750600090506003613eec565b8460ff16601b14158015613e5757508460ff16601c14155b15613e685750600090506004613eec565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613ebc573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613ee557600060019250925050613eec565b9150600090505b94509492505050565b6001600160e01b0319811681146111ca57600080fd5b600060208284031215613f1d57600080fd5b8135610db781613ef5565b60005b83811015613f43578181015183820152602001613f2b565b50506000910152565b60008151808452613f64816020860160208601613f28565b601f01601f19169290920160200192915050565b602081526000610db76020830184613f4c565b600060208284031215613f9d57600080fd5b5035919050565b6001600160a01b03811681146111ca57600080fd5b60008060408385031215613fcc57600080fd5b8235613fd781613fa4565b946020939093013593505050565b60008083601f840112613ff757600080fd5b5081356001600160401b0381111561400e57600080fd5b602083019150836020828501011115613e0157600080fd5b60008060008060006080868803121561403e57600080fd5b853561404981613fa4565b9450602086013561405981613fa4565b93506040860135925060608601356001600160401b0381111561407b57600080fd5b61408788828901613fe5565b969995985093965092949392505050565b60008083601f8401126140aa57600080fd5b5081356001600160401b038111156140c157600080fd5b6020830191508360208260051b8501011115613e0157600080fd5b6000806000604084860312156140f157600080fd5b83356001600160401b0381111561410757600080fd5b61411386828701614098565b909790965060209590950135949350505050565b600082825180855260208086019550808260051b84010181860160005b8481101561417257601f19868403018952614160838351613f4c565b98840198925090830190600101614144565b5090979650505050505050565b602081526000610db76020830184614127565b6000806000604084860312156141a757600080fd5b83356001600160401b038111156141bd57600080fd5b61411386828701613fe5565b6000806000604084860312156141de57600080fd5b83356001600160401b03808211156141f557600080fd5b908501906080828803121561420957600080fd5b9093506020850135908082111561421f57600080fd5b5061422c86828701613fe5565b9497909650939450505050565b8035801515811461124557600080fd5b60008060008060008060008060a0898b03121561426557600080fd5b883561427081613fa4565b975060208901356001600160401b038082111561428c57600080fd5b6142988c838d01614098565b909950975060408b01359150808211156142b157600080fd5b6142bd8c838d01614098565b909750955060608b01359150808211156142d657600080fd5b506142e38b828c01614098565b90945092506142f6905060808a01614239565b90509295985092959890939650565b60008060006060848603121561431a57600080fd5b833561432581613fa4565b9250602084013561433581613fa4565b929592945050506040919091013590565b6000806020838503121561435957600080fd5b82356001600160401b0381111561436f57600080fd5b61437b85828601614098565b90969095509350505050565b60008060008060006060868803121561439f57600080fd5b85356001600160401b03808211156143b657600080fd5b6143c289838a01614098565b909750955060208801359150808211156143db57600080fd5b506143e888828901614098565b96999598509660400135949350505050565b6000806040838503121561440d57600080fd5b82356001600160401b0381168114613fd757600080fd5b60008060008060006060868803121561443c57600080fd5b85356001600160401b038082111561445357600080fd5b61445f89838a01613fe5565b9097509550602088013591508082111561447857600080fd5b506143e888828901613fe5565b6000806000806060858703121561449b57600080fd5b8435935060208501356001600160401b038111156144b857600080fd5b6144c487828801613fe5565b9598909750949560400135949350505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715614515576145156144d7565b604052919050565b600082601f83011261452e57600080fd5b81356001600160401b03811115614547576145476144d7565b61455a601f8201601f19166020016144ed565b81815284602083860101111561456f57600080fd5b816020850160208301376000918101602001919091529392505050565b60006020828403121561459e57600080fd5b81356001600160401b038111156145b457600080fd5b610cab8482850161451d565b6000602082840312156145d257600080fd5b8135610db781613fa4565b60006001600160401b038211156145f6576145f66144d7565b5060051b60200190565b600061461361460e846145dd565b6144ed565b8381529050602080820190600585901b84018681111561463257600080fd5b845b8181101561466d5780356001600160401b038111156146535760008081fd5b61465f8982890161451d565b855250928201928201614634565b505050509392505050565b60006020828403121561468a57600080fd5b81356001600160401b038111156146a057600080fd5b8201601f810184136146b157600080fd5b610cab84823560208401614600565b600080604083850312156146d357600080fd5b50508035926020909101359150565b6040815260006146f56040830185613f4c565b8281036020840152610db38185613f4c565b6000806000806060858703121561471d57600080fd5b843561472881613fa4565b93506020850135925060408501356001600160401b0381111561474a57600080fd5b61475687828801613fe5565b95989497509550505050565b60008060008060008060006080888a03121561477d57600080fd5b87356001600160401b038082111561479457600080fd5b6147a08b838c01613fe5565b909950975060208a0135965060408a01359150808211156147c057600080fd5b6147cc8b838c01614098565b909650945060608a01359150808211156147e557600080fd5b506147f28a828b01614098565b989b979a50959850939692959293505050565b6000806020838503121561481857600080fd5b82356001600160401b0381111561482e57600080fd5b61437b85828601613fe5565b6000806040838503121561484d57600080fd5b823561485881613fa4565b9150612e9660208401614239565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156148bb57603f198886030184526148a9858351613f4c565b9450928501929085019060010161488d565b5092979650505050505050565b6040815260006148db6040830185614127565b8281036020840152610db38185614127565b6000806000806080858703121561490357600080fd5b843561490e81613fa4565b9350602085013561491e81613fa4565b92506040850135915060608501356001600160401b0381111561494057600080fd5b61494c8782880161451d565b91505092959194509250565b60008060006040848603121561496d57600080fd5b833561497881613fa4565b925060208401356001600160401b0381111561499357600080fd5b61422c86828701613fe5565b600080604083850312156149b257600080fd5b82356149bd81613fa4565b915060208301356149cd81613fa4565b809150509250929050565b6000806000604084860312156149ed57600080fd5b8335925060208401356001600160401b0381111561499357600080fd5b60008060008060808587031215614a2057600080fd5b8435614a2b81613fa4565b93506020850135614a3b81613fa4565b92506040850135614a4b81613fa4565b91506060850135614a5b81613fa4565b939692955090935050565b600181811c90821680614a7a57607f821691505b6020821081036113ff57634e487b7160e01b600052602260045260246000fd5b600060208284031215614aac57600080fd5b610db782614239565b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112614ae257600080fd5b8301803591506001600160401b03821115614afc57600080fd5b602001915036819003821315613e0157600080fd5b634e487b7160e01b600052601160045260246000fd5b600060018201614b3957614b39614b11565b5060010190565b60208082526027908201527f52656769737472793a2053454e4445525f49535f4e4f545f4d494e54494e475f60408201526626a0a720a3a2a960c91b606082015260800190565b6000610db7368484614600565b60208082526029908201527f52656769737472793a2053454e4445525f49535f4e4f545f415050524f5645446040820152682fa7a92fa7aba722a960b91b606082015260800190565b60208082526022908201527f52656769737472793a20494e53554646494349454e545f5045524d495353494f6040820152614e5360f01b606082015260800190565b60008251614c31818460208701613f28565b9190910192915050565b601f821115610a1357600081815260208120601f850160051c81016020861015614c625750805b601f850160051c820191505b8181101561117057828155600101614c6e565b6001600160401b03831115614c9857614c986144d7565b614cac83614ca68354614a66565b83614c3b565b6000601f841160018114614ce05760008515614cc85750838201355b600019600387901b1c1916600186901b178355610ea0565b600083815260209020601f19861690835b82811015614d115786850135825560209485019460019092019101614cf1565b5086821015614d2e5760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b602081526000610cab602083018486614d40565b600060808236031215614d8f57600080fd5b604051608081016001600160401b038282108183111715614db257614db26144d7565b8160405284359150614dc382613fa4565b81835260208501356020840152604085013560408401526060850135915080821115614dee57600080fd5b50614dfb3682860161451d565b60608301525092915050565b6000614e1561460e846145dd565b80848252602080830192508560051b850136811115614e3357600080fd5b855b81811015614e6e5780356001600160401b03811115614e545760008081fd5b614e6036828a0161451d565b865250938201938201614e35565b50919695505050505050565b60008351614e8c818460208801613f28565b835190830190614ea0818360208801613f28565b01949350505050565b60006020808385031215614ebc57600080fd5b82356001600160401b03811115614ed257600080fd5b8301601f81018513614ee357600080fd5b8035614ef161460e826145dd565b81815260059190911b82018301908381019087831115614f1057600080fd5b928401925b82841015614f2e57833582529284019290840190614f15565b979650505050505050565b8082018082111561094057610940614b11565b6001600160a01b03848116825283166020820152606060408201819052600090610b6990830184613f4c565b634e487b7160e01b600052601260045260246000fd5b600082614f9d57614f9d614f78565b500490565b634e487b7160e01b600052600160045260246000fd5b8181038181111561094057610940614b11565b600081614fda57614fda614b11565b506000190190565b60008351614ff4818460208801613f28565b601760f91b9083019081528351615012816001840160208801613f28565b01600101949350505050565b60006020828403121561503057600080fd5b5051919050565b60006020828403121561504957600080fd5b8151610db781613fa4565b8183823760009101908152919050565b81516001600160401b0381111561507d5761507d6144d7565b6150918161508b8454614a66565b84614c3b565b602080601f8311600181146150c657600084156150ae5750858301515b600019600386901b1c1916600185901b178555611170565b600085815260208120601f198616915b828110156150f5578886015182559484019460019091019084016150d6565b50858210156151135787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60008451615135818460208901613f28565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6000826151c3576151c3614f78565b500690565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b634e487b7160e01b600052602160045260246000fd5b828152604060208201526000610cab6040830184613f4c565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061316590830184613f4c565b60006020828403121561528757600080fd5b8151610db781613ef556febe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a","storage":{}},"0x6ac8f19d1e0f81147cdf2a1e53cb1f4e18417204":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610296575f3560e01c80636352211e11610161578063c93ab3fd116100ca578063e985e9c511610084578063e985e9c5146106c8578063eb8ae530146106db578063ed70554d146106ee578063f242432a1461070d578063f2fde38b14610720578063fd0cd0d914610733575f80fd5b8063c93ab3fd14610647578063cf4088231461065a578063d8c9921a1461066d578063d9a50c1214610680578063da8c229e14610693578063e0dba60f146106b5575f80fd5b8063a22cb4651161011b578063a22cb465146105d5578063a4014982146105e8578063adf4960a146105fb578063b6bcad261461060e578063c475abff14610621578063c658e08614610634575f80fd5b80636352211e146105595780636e5d6ad21461056c578063715018a6146105975780638b4dfa751461059f5780638cf8b41e146105b25780638da5cb5b146105c5575f80fd5b80631f4e1504116102035780633f15457f116101bd5780633f15457f146104b1578063402906fc146104d857806341415eab146105005780634e1273f41461051357806353095467146105335780635d3590d514610546575f80fd5b80631f4e15041461042b57806320c38e2b1461043e57806324c1af44146104515780632b20e397146104645780632eb2c2d61461048b57806333c69ea91461049e575f80fd5b80630e4cd725116102545780630e4cd725146103a05780630e89341c146103b357806314ab9038146103c6578063150b7a02146103d95780631534e177146104055780631896f70a14610418575f80fd5b8062fdd58e1461029a5780630178fe3f146102c057806301ffc9a71461030657806306fdde0314610329578063081812fc14610360578063095ea7b31461038b575b5f80fd5b6102ad6102a8366004614316565b610746565b6040519081526020015b60405180910390f35b6102d36102ce366004614340565b6107f0565b604080516001600160a01b03909416845263ffffffff90921660208401526001600160401b0316908201526060016102b7565b61031961031436600461436c565b61081f565b60405190151581526020016102b7565b6103536040518060400160405280600b81526020016a2730b6b2abb930b83832b960a91b81525081565b6040516102b791906143d4565b61037361036e366004614340565b61085e565b6040516001600160a01b0390911681526020016102b7565b61039e610399366004614316565b6108a0565b005b6103196103ae3660046143e6565b6108e5565b6103536103c1366004614340565b61095e565b61039e6103d436600461442f565b6109cc565b6103ec6103e736600461449d565b610ac0565b6040516001600160e01b031990911681526020016102b7565b61039e61041336600461450a565b610c96565b61039e6104263660046143e6565b610cc0565b600754610373906001600160a01b031681565b61035361044c366004614340565b610d75565b6102ad61045f3660046145f6565b610e0c565b6103737f000000000000000000000000c965345edac823d56812cd20a10316233916a60581565b61039e610499366004614717565b610fe7565b61039e6104ac3660046147bd565b61121a565b6103737f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a981565b6104eb6104e6366004614811565b6113e6565b60405163ffffffff90911681526020016102b7565b61031961050e3660046143e6565b611480565b610526610521366004614832565b6114b8565b6040516102b79190614928565b600554610373906001600160a01b031681565b61039e61055436600461493a565b6115d7565b610373610567366004614340565b611655565b61057f61057a366004614978565b61165f565b6040516001600160401b0390911681526020016102b7565b61039e61178e565b61039e6105ad3660046149aa565b6117a1565b61057f6105c03660046149e9565b6118c0565b5f546001600160a01b0316610373565b61039e6105e3366004614a6b565b611c28565b6102ad6105f6366004614a97565b611cfd565b610319610609366004614b12565b611e38565b61039e61061c36600461450a565b611e5c565b6102ad61062f366004614b33565b61209e565b6102ad610642366004614b53565b6122fd565b61039e610655366004614bc0565b6124bd565b61039e610668366004614c26565b612605565b61039e61067b366004614c5b565b612794565b61031961068e366004614b33565b61285d565b6103196106a136600461450a565b60046020525f908152604090205460ff1681565b61039e6106c3366004614a6b565b612938565b6103196106d6366004614c86565b61299f565b61039e6106e9366004614cb2565b6129cc565b6102ad6106fc366004614340565b60016020525f908152604090205481565b61039e61071b366004614d15565b612d59565b61039e61072e36600461450a565b612e06565b610319610741366004614340565b612e7c565b5f6001600160a01b0383166107b65760405162461bcd60e51b815260206004820152602b60248201527f455243313135353a2062616c616e636520717565727920666f7220746865207a60448201526a65726f206164647265737360a81b60648201526084015b60405180910390fd5b5f6107c083611655565b9050836001600160a01b0316816001600160a01b0316036107e55760019150506107ea565b5f9150505b92915050565b5f8181526001602052604090205460a081901c60c082901c610813838383612f4d565b90959094509092509050565b5f6001600160e01b03198216631b05885b60e31b148061084f57506001600160e01b03198216630a85bd0160e11b145b806107ea57506107ea82612f80565b5f8061086983611655565b90506001600160a01b03811661088157505f92915050565b5f838152600360205260409020546001600160a01b03165b9392505050565b5f6108aa826107f0565b50915050603f1960408216016108d65760405163a2a7201360e01b8152600481018390526024016107ad565b6108e08383612fcf565b505050565b5f8080806108f2866107f0565b925092509250846001600160a01b0316836001600160a01b0316148061091d575061091d838661299f565b8061094157506001600160a01b0385166109368761085e565b6001600160a01b0316145b8015610954575061095282826130de565b155b9695505050505050565b6005546040516303a24d0760e21b8152600481018390526060916001600160a01b031690630e89341c906024015f60405180830381865afa1580156109a5573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526107ea9190810190614d78565b816109d78133611480565b6109f857803360405163168ab55d60e31b81526004016107ad929190614dea565b8260105f610a05836107f0565b5091505063ffffffff8282161615610a335760405163a2a7201360e01b8152600481018490526024016107ad565b604051630295720760e31b8152600481018790526001600160401b03861660248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906314ab9038906044015b5f604051808303815f87803b158015610aa2575f80fd5b505af1158015610ab4573d5f803e3d5ffd5b50505050505050505050565b5f336001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a6051614610b0a5760405163032634a760e31b815260040160405180910390fd5b5f808080610b1a86880188614e01565b83516020850120939750919550935091508890808214610b57576040516331970f3360e21b815260048101829052602481018390526044016107ad565b604051630a3b53db60e21b81526001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906328ed4f6c90610ba59085903090600401614dea565b5f604051808303815f87803b158015610bbc575f80fd5b505af1158015610bce573d5f803e3d5ffd5b5050604051636b727d4360e11b8152600481018d90525f92506276a70091506001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063d6e4fa8690602401602060405180830381865afa158015610c3c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c609190614e64565b610c6a9190614e8f565b9050610c7d87878761ffff16848861310d565b50630a85bd0160e11b9c9b505050505050505050505050565b610c9e613215565b600580546001600160a01b0319166001600160a01b0392909216919091179055565b81610ccb8133611480565b610cec57803360405163168ab55d60e31b81526004016107ad929190614dea565b8260085f610cf9836107f0565b5091505063ffffffff8282161615610d275760405163a2a7201360e01b8152600481018490526024016107ad565b604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a90610a8b9089908990600401614dea565b60066020525f908152604090208054610d8d90614eb6565b80601f0160208091040260200160405190810160405280929190818152602001828054610db990614eb6565b8015610e045780601f10610ddb57610100808354040283529160200191610e04565b820191905f5260205f20905b815481529060010190602001808311610de757829003601f168201915b505050505081565b5f87610e188133611480565b610e3957803360405163168ab55d60e31b81526004016107ad929190614dea565b87516020890120610e4a8a8261326e565b9250610e568a8461329a565b610e6083866133d3565b610e6b8a848b613406565b50610e788a8487876134cd565b9350610e8383613510565b610f33576040516305ef2c7f60e41b8152600481018b9052602481018290523060448201526001600160a01b0388811660648301526001600160401b03881660848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610f0a575f80fd5b505af1158015610f1c573d5f803e3d5ffd5b50505050610f2e8a848b8b89896135c6565b610fda565b6040516305ef2c7f60e41b8152600481018b9052602481018290523060448201526001600160a01b0388811660648301526001600160401b03881660848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610fb6575f80fd5b505af1158015610fc8573d5f803e3d5ffd5b50505050610fda8a848b8b89896135fc565b5050979650505050505050565b81518351146110495760405162461bcd60e51b815260206004820152602860248201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206044820152670dad2e6dac2e8c6d60c31b60648201526084016107ad565b6001600160a01b03841661106f5760405162461bcd60e51b81526004016107ad90614eee565b6001600160a01b03851633148061108b575061108b853361299f565b6110f25760405162461bcd60e51b815260206004820152603260248201527f455243313135353a207472616e736665722063616c6c6572206973206e6f74206044820152711bdddb995c881b9bdc88185c1c1c9bdd995960721b60648201526084016107ad565b5f5b83518110156111ad575f84828151811061111057611110614f33565b602002602001015190505f84838151811061112d5761112d614f33565b602002602001015190505f805f611143856107f0565b9250925092506111548583836136b6565b83600114801561117557508a6001600160a01b0316836001600160a01b0316145b6111915760405162461bcd60e51b81526004016107ad90614f47565b61119d858b848461375d565b50505050508060010190506110f4565b50836001600160a01b0316856001600160a01b0316336001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516111fd929190614f91565b60405180910390a461121333868686868661379d565b5050505050565b5f611225858561326e565b905061123181846133d3565b5f808061123d846107f0565b919450925090506001600160a01b03831615806112ea57506040516302571be360e01b81526004810185905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa1580156112ba573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112de9190614fbe565b6001600160a01b031614155b1561130857604051635374b59960e01b815260040160405180910390fd5b5f806113138a6107f0565b90935091508a905061134f576113298633611480565b61134a57853360405163168ab55d60e31b81526004016107ad929190614dea565b61137a565b6113598a33611480565b61137a57893360405163168ab55d60e31b81526004016107ad929190614dea565b6113858689846138f7565b611390878483613932565b9650620100008416158015906113b457508363ffffffff1688851763ffffffff1614155b156113d55760405163a2a7201360e01b8152600481018790526024016107ad565b96831796610ab486868a868b613977565b5f826113f28133611480565b61141357803360405163168ab55d60e31b81526004016107ad929190614dea565b8360025f611420836107f0565b5091505063ffffffff828216161561144e5760405163a2a7201360e01b8152600481018490526024016107ad565b5f808061145a8a6107f0565b9250925092506114738a84848c61ffff16178485613977565b5098975050505050505050565b5f80808061148d866107f0565b925092509250846001600160a01b0316836001600160a01b031614806109415750610941838661299f565b6060815183511461151d5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b60648201526084016107ad565b5f83516001600160401b0381111561153757611537614525565b604051908082528060200260200182016040528015611560578160200160208202803683370190505b5090505f5b84518110156115cf576115aa85828151811061158357611583614f33565b602002602001015185838151811061159d5761159d614f33565b6020026020010151610746565b8282815181106115bc576115bc614f33565b6020908102919091010152600101611565565b509392505050565b6115df613215565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af115801561162b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061164f9190614fd9565b50505050565b5f6107ea82613a1e565b5f8061166b858561326e565b905061167681613510565b61169357604051635374b59960e01b815260040160405180910390fd5b5f61169e86336108e5565b9050801580156116b557506116b38233611480565b155b156116d757813360405163168ab55d60e31b81526004016107ad929190614dea565b5f80806116e3856107f0565b925092509250831580156116fa5750620400008216155b1561171b5760405163a2a7201360e01b8152600481018690526024016107ad565b5f6117258a6107f0565b92505050611734888383613932565b97506117428685858b613a33565b6040516001600160401b038916815286907ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b1329060200160405180910390a2509598975050505050505050565b611796613215565b61179f5f613a49565b565b6117b85f805160206154fc8339815191528461326e565b6117c28133611480565b6117e357803360405163168ab55d60e31b81526004016107ad929190614dea565b306001600160a01b0384160361181757604051632ca49b0d60e11b81526001600160a01b03841660048201526024016107ad565b6118376118315f805160206154fc8339815191528661326e565b83613a98565b604051632142170760e11b81523060048201526001600160a01b038481166024830152604482018690527f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906342842e0e906064015f604051808303815f87803b1580156118a4575f80fd5b505af11580156118b6573d5f803e3d5ffd5b5050505050505050565b5f8086866040516118d2929190614ff4565b6040519081900381206331a9108f60e11b82526004820181905291505f907f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa15801561193f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119639190614fbe565b90506001600160a01b0381163314801590611a09575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063e985e9c590604401602060405180830381865afa1580156119e3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a079190614fd9565b155b15611a4157611a255f805160206154fc8339815191528361326e565b3360405163168ab55d60e31b81526004016107ad929190614dea565b6040516323b872dd60e01b81526001600160a01b038281166004830152306024830152604482018490527f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906323b872dd906064015f604051808303815f87803b158015611aae575f80fd5b505af1158015611ac0573d5f803e3d5ffd5b5050604051630a3b53db60e21b81526001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a6051692506328ed4f6c9150611b129085903090600401614dea565b5f604051808303815f87803b158015611b29575f80fd5b505af1158015611b3b573d5f803e3d5ffd5b5050604051636b727d4360e11b8152600481018590526276a70092507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b0316915063d6e4fa8690602401602060405180830381865afa158015611ba7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611bcb9190614e64565b611bd59190614e8f565b9250611c1d88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508a9250505061ffff8816868861310d565b505095945050505050565b6001600160a01b0382163303611c925760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084016107ad565b335f8181526002602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b335f9081526004602052604081205460ff16611d2b5760405162461bcd60e51b81526004016107ad90615003565b5f8787604051611d3c929190614ff4565b604051908190038120633f2891eb60e21b8252600482018190523060248301526044820187905291507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b03169063fca247ac906064016020604051808303815f875af1158015611db5573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611dd99190614e64565b9150611e2d88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508a9250505061ffff8616611e276276a70087614e8f565b8861310d565b509695505050505050565b5f80611e43846107f0565b50841663ffffffff908116908516149250505092915050565b611e64613215565b6007546001600160a01b031615611f785760075460405163a22cb46560e01b81526001600160a01b0391821660048201525f60248201527f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063a22cb465906044015f604051808303815f87803b158015611ee0575f80fd5b505af1158015611ef2573d5f803e3d5ffd5b505060075460405163a22cb46560e01b81526001600160a01b0391821660048201525f60248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9909116925063a22cb46591506044015f604051808303815f87803b158015611f61575f80fd5b505af1158015611f73573d5f803e3d5ffd5b505050505b600780546001600160a01b0319166001600160a01b0383169081179091551561209b5760075460405163a22cb46560e01b81526001600160a01b039182166004820152600160248201527f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063a22cb465906044015f604051808303815f87803b158015612007575f80fd5b505af1158015612019573d5f803e3d5ffd5b505060075460405163a22cb46560e01b81526001600160a01b039182166004820152600160248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9909116925063a22cb46591506044015f604051808303815f87803b158015612089575f80fd5b505af1158015611213573d5f803e3d5ffd5b50565b335f9081526004602052604081205460ff166120cc5760405162461bcd60e51b81526004016107ad90615003565b5f6120e45f805160206154fc8339815191528561326e565b60405163c475abff60e01b815260048101869052602481018590529091505f906001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063c475abff906044016020604051808303815f875af1158015612154573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906121789190614e64565b6040516331a9108f60e11b8152600481018790529091507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa9250505080156121fc575060408051601f3d908101601f191682019092526121f991810190614fbe565b60015b6122095791506107ea9050565b6001600160a01b038116301415806122b157506040516302571be360e01b81526004810184905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015612281573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906122a59190614fbe565b6001600160a01b031614155b156122c0575091506107ea9050565b505f6122cf6276a70083614e8f565b5f8481526001602052604090205490915060a081901c6122f185838386613a33565b50919695505050505050565b5f866123098133611480565b61232a57803360405163168ab55d60e31b81526004016107ad929190614dea565b5f878760405161233b929190614ff4565b6040518091039020905061234f898261326e565b925061235b898461329a565b61236583866133d3565b5f6123a68a858b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061340692505050565b90506123b48a8588886134cd565b94506123bf84613510565b61246b576040516306ab592360e01b8152600481018b9052602481018390523060448201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906306ab5923906064016020604051808303815f875af1158015612434573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906124589190614e64565b506124668482898989613b83565b6124b0565b6124b08a858b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508d92508c91508b90506135fc565b5050509695505050505050565b5f6125005f86868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613bc59050565b6007549091506001600160a01b031661252c5760405163093075b560e21b815260040160405180910390fd5b6125368133611480565b61255757803360405163168ab55d60e31b81526004016107ad929190614dea565b5f8080612563846107f0565b919450925090505f6125748561085e565b905061257f85613c81565b60075f9054906101000a90046001600160a01b03166001600160a01b0316639198c2768a8a878787878e8e6040518963ffffffff1660e01b81526004016125cd989796959493929190615073565b5f604051808303815f87803b1580156125e4575f80fd5b505af11580156125f6573d5f803e3d5ffd5b50505050505050505050505050565b836126108133611480565b61263157803360405163168ab55d60e31b81526004016107ad929190614dea565b84601c5f61263e836107f0565b5091505063ffffffff828216161561266c5760405163a2a7201360e01b8152600481018490526024016107ad565b60405163cf40882360e01b8152600481018990523060248201526001600160a01b0387811660448301526001600160401b03871660648301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063cf408823906084015f604051808303815f87803b1580156126e8575f80fd5b505af11580156126fa573d5f803e3d5ffd5b5050506001600160a01b038816905061275f575f612717896107f0565b509150506201ffff196202000082160161274f57604051632ca49b0d60e11b81526001600160a01b03891660048201526024016107ad565b612759895f613a98565b506118b6565b5f61276989611655565b905061278981898b5f1c600160405180602001604052805f815250613d1e565b505050505050505050565b61279e838361326e565b6127a88133611480565b6127c957803360405163168ab55d60e31b81526004016107ad929190614dea565b7f6c32148f748aba23997146d7fe89e962e3cc30271290fb96f5f4337756c03b5284016128095760405163615a470360e01b815260040160405180910390fd5b6001600160a01b038216158061282757506001600160a01b03821630145b1561285057604051632ca49b0d60e11b81526001600160a01b03831660048201526024016107ad565b61164f611831858561326e565b5f80612869848461326e565b90505f61287582613510565b90505f805160206154fc83398151915285146128945791506107ea9050565b6040516331a9108f60e11b8152600481018590527f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa925050508015612915575060408051601f3d908101601f1916820190925261291291810190614fbe565b60015b612923575f925050506107ea565b6001600160a01b0316301492506107ea915050565b612940613215565b6001600160a01b0382165f81815260046020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf8791015b60405180910390a25050565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205460ff1690565b5f80612a105f87878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613dfe9050565b915091505f612a578288888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613bc59050565b90505f612a64828561326e565b5f818152600660205260409020909150612a7f888a8361511e565b507f6c32148f748aba23997146d7fe89e962e3cc30271290fb96f5f4337756c03b528201612ac05760405163615a470360e01b815260040160405180910390fd5b6040516302571be360e01b8152600481018290525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa158015612b25573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612b499190614fbe565b90506001600160a01b0381163314801590612bef575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063e985e9c590604401602060405180830381865afa158015612bc9573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612bed9190614fd9565b155b15612c1157813360405163168ab55d60e31b81526004016107ad929190614dea565b6001600160a01b03861615612c9c57604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a90612c6e9085908a90600401614dea565b5f604051808303815f87803b158015612c85575f80fd5b505af1158015612c97573d5f803e3d5ffd5b505050505b604051635b0fc9c360e01b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635b0fc9c390612cea9085903090600401614dea565b5f604051808303815f87803b158015612d01575f80fd5b505af1158015612d13573d5f803e3d5ffd5b50505050612789828a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201829052508d93509150819050613b83565b6001600160a01b038416612d7f5760405162461bcd60e51b81526004016107ad90614eee565b6001600160a01b038516331480612d9b5750612d9b853361299f565b612df95760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2063616c6c6572206973206e6f74206f776e6572206e6f7260448201526808185c1c1c9bdd995960ba1b60648201526084016107ad565b6112138585858585613d1e565b612e0e613215565b6001600160a01b038116612e735760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107ad565b61209b81613a49565b5f8181526006602052604081208054829190612e9790614eb6565b80601f0160208091040260200160405190810160405280929190818152602001828054612ec390614eb6565b8015612f0e5780601f10612ee557610100808354040283529160200191612f0e565b820191905f5260205f20905b815481529060010190602001808311612ef157829003601f168201915b5050505050905080515f03612f2557505f92915050565b5f80612f318382613dfe565b90925090505f612f418483613bc5565b9050610954818461285d565b5f8042836001600160401b03161015612f775761ffff1962010000851601612f73575f94505b5f93505b50929391925050565b5f6001600160e01b03198216636cdb3d1360e11b1480612fb057506001600160e01b031982166303a24d0760e21b145b806107ea57506301ffc9a760e01b6001600160e01b03198316146107ea565b5f612fd982611655565b9050806001600160a01b0316836001600160a01b0316036130465760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084016107ad565b336001600160a01b03821614806130625750613062813361299f565b6130d45760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016107ad565b6108e08383613eb2565b5f620200008381161480156108995750426130fc6276a700846151d7565b6001600160401b0316109392505050565b845160208601205f61312c5f805160206154fc8339815191528361326e565b90505f61315488604051806040016040528060058152602001626cae8d60e31b815250613f1f565b5f83815260066020526040902090915061316e82826151f7565b50613181828289620300008a1789613b83565b6001600160a01b038416156118b657604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a906131de9085908890600401614dea565b5f604051808303815f87803b1580156131f5575f80fd5b505af1158015613207573d5f803e3d5ffd5b505050505050505050505050565b5f546001600160a01b0316331461179f5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107ad565b604080516020808201949094528082019290925280518083038201815260609092019052805191012090565b5f80806132a6846107f0565b91945092509050426001600160401b0382161080801561336657506001600160a01b038416158061336657506040516302571be360e01b8152600481018690525f906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015613337573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061335b9190614fbe565b6001600160a01b0316145b156133a4575f613375876107f0565b50915050602081161561339e5760405163a2a7201360e01b8152600481018790526024016107ad565b506133cb565b620100008316156133cb5760405163a2a7201360e01b8152600481018690526024016107ad565b505050505050565b63fffdffff81811763ffffffff16146134025760405163a2a7201360e01b8152600481018390526024016107ad565b5050565b60605f6134aa8360065f8881526020019081526020015f20805461342990614eb6565b80601f016020809104026020016040519081016040528092919081815260200182805461345590614eb6565b80156134a05780601f10613477576101008083540402835291602001916134a0565b820191905f5260205f20905b81548152906001019060200180831161348357829003601f168201915b5050505050613f1f565b5f8581526006602052604090209091506134c482826151f7565b50949350505050565b5f806134d8856107f0565b925050505f806134e9885f1c6107f0565b92509250506134f98787846138f7565b613504858483613932565b98975050505050505050565b5f8061351b83611655565b6001600160a01b0316141580156107ea57506040516302571be360e01b81526004810183905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015613592573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906135b69190614fbe565b6001600160a01b03161492915050565b5f86815260066020526040812080546135e491879161342990614eb6565b90506135f38682868686613b83565b50505050505050565b5f8080613608886107f0565b9250925092505f61362f8860065f8d81526020019081526020015f20805461342990614eb6565b5f8a815260066020526040902080549192509061364b90614eb6565b90505f0361366c575f89815260066020526040902061366a82826151f7565b505b61367b89858886178589613977565b6001600160a01b03871661369857613693895f613a98565b610ab4565b610ab484888b5f1c600160405180602001604052805f815250613d1e565b6201ffff19620200008316016136d6576136d36276a700826151d7565b90505b42816001600160401b0316101561370f576201000082161561370a5760405162461bcd60e51b81526004016107ad90614f47565b613734565b60048216156137345760405163a2a7201360e01b8152600481018490526024016107ad565b604082165f036108e05750505f90815260036020526040902080546001600160a01b0319169055565b60c0816001600160401b0316901b60a08363ffffffff16901b846001600160a01b0316171760015f8681526020019081526020015f208190555050505050565b6001600160a01b0384163b156133cb5760405163bc197c8160e01b81526001600160a01b0385169063bc197c81906137e190899089908890889088906004016152b2565b6020604051808303815f875af192505050801561381b575060408051601f3d908101601f1916820190925261381891810190615303565b60015b6138c75761382761531e565b806308c379a003613860575061383b615337565b806138465750613862565b8060405162461bcd60e51b81526004016107ad91906143d4565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e20455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b60648201526084016107ad565b6001600160e01b0319811663bc197c8160e01b146135f35760405162461bcd60e51b81526004016107ad906153bf565b63ffff000082161580159060018316159082906139115750805b156112135760405163a2a7201360e01b8152600481018690526024016107ad565b5f816001600160401b0316846001600160401b03161115613951578193505b826001600160401b0316846001600160401b0316101561396f578293505b509192915050565b61398385858584613a33565b60405163ffffffff8416815285907f39873f00c80f4f94b7bd1594aebcf650f003545b74824d57ddf4939e3ff3a34b9060200160405180910390a2816001600160401b0316816001600160401b03161115611213576040516001600160401b038216815285907ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b132906020015b60405180910390a25050505050565b5f80613a29836107f0565b5090949350505050565b613a3d8483613f96565b61164f8484848461375d565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b613aa3826001611e38565b15613ac45760405163a2a7201360e01b8152600481018390526024016107ad565b613acd82613c81565b604051635b0fc9c360e01b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635b0fc9c390613b1b9085908590600401614dea565b5f604051808303815f87803b158015613b32575f80fd5b505af1158015613b44573d5f803e3d5ffd5b50506040516001600160a01b03841681528492507fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c49150602001612993565b613b8f85848484613fcf565b847f8ce7013e8abebc55c3890a68f5a27c67c3f7efa64e584de5fb22363c606fd34085858585604051613a0f9493929190615407565b5f805f613bd28585613dfe565b909250905081613c435760018551613bea919061544d565b8414613c385760405162461bcd60e51b815260206004820152601d60248201527f6e616d65686173683a204a756e6b20617420656e64206f66206e616d6500000060448201526064016107ad565b505f91506107ea9050565b613c4d8582613bc5565b6040805160208101929092528101839052606001604051602081830303815290604052805190602001209250505092915050565b5f8181526001602052604090205460a081901c60c082901c613ca4838383612f4d565b5f86815260036020526040812080546001600160a01b0319169055909350613cd091508590848461375d565b60408051858152600160208201525f916001600160a01b0386169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b5f805f613d2a866107f0565b925092509250613d3b8683836136b6565b846001148015613d5c5750876001600160a01b0316836001600160a01b0316145b613d785760405162461bcd60e51b81526004016107ad90614f47565b866001600160a01b0316836001600160a01b031603613d9957505050611213565b613da58688848461375d565b60408051878152602081018790526001600160a01b03808a1692908b169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46118b6338989898989614041565b5f8083518310613e505760405162461bcd60e51b815260206004820152601e60248201527f726561644c6162656c3a20496e646578206f7574206f6620626f756e6473000060448201526064016107ad565b5f848481518110613e6357613e63614f33565b016020015160f81c90508015613e8f57613e8885613e82866001615460565b836140fb565b9250613e93565b5f92505b613e9d8185615460565b613ea8906001615460565b9150509250929050565b5f81815260036020526040902080546001600160a01b0319166001600160a01b0384169081179091558190613ee682611655565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6060600183511015613f4457604051631406d65b60e11b815260040160405180910390fd5b60ff83511115613f69578260405163e3ba295f60e01b81526004016107ad91906143d4565b82518383604051602001613f7f93929190615473565b604051602081830303815290604052905092915050565b61ffff811615801590613fae57506201000181811614155b156134025760405163a2a7201360e01b8152600481018390526024016107ad565b613fd98483613f96565b5f848152600160205260409020546001600160a01b0381161561403557613fff85613c81565b6040515f815285907fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c49060200160405180910390a25b6112138585858561411d565b6001600160a01b0384163b156133cb5760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e619061408590899089908890889088906004016154b7565b6020604051808303815f875af19250505080156140bf575060408051601f3d908101601f191682019092526140bc91810190615303565b60015b6140cb5761382761531e565b6001600160e01b0319811663f23a6e6160e01b146135f35760405162461bcd60e51b81526004016107ad906153bf565b82515f906141098385615460565b1115614113575f80fd5b5091016020012090565b835f808061412a846107f0565b9194509250905063ffff000082166001600160401b038087169083161115614150578195505b42826001600160401b03161061416557958617955b6001600160a01b038416156141bc5760405162461bcd60e51b815260206004820152601f60248201527f455243313135353a206d696e74206f66206578697374696e6720746f6b656e0060448201526064016107ad565b6001600160a01b03881661421c5760405162461bcd60e51b815260206004820152602160248201527f455243313135353a206d696e7420746f20746865207a65726f206164647265736044820152607360f81b60648201526084016107ad565b306001600160a01b038916036142915760405162461bcd60e51b815260206004820152603460248201527f455243313135353a206e65774f776e65722063616e6e6f74206265207468652060448201527313985b5955dc985c1c195c8818dbdb9d1c9858dd60621b60648201526084016107ad565b61429d8589898961375d565b60408051868152600160208201526001600160a01b038a16915f9133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4612789335f8a88600160405180602001604052805f815250614041565b6001600160a01b038116811461209b575f80fd5b5f8060408385031215614327575f80fd5b823561433281614302565b946020939093013593505050565b5f60208284031215614350575f80fd5b5035919050565b6001600160e01b03198116811461209b575f80fd5b5f6020828403121561437c575f80fd5b813561089981614357565b5f5b838110156143a1578181015183820152602001614389565b50505f910152565b5f81518084526143c0816020860160208601614387565b601f01601f19169290920160200192915050565b602081525f61089960208301846143a9565b5f80604083850312156143f7575f80fd5b82359150602083013561440981614302565b809150509250929050565b80356001600160401b038116811461442a575f80fd5b919050565b5f8060408385031215614440575f80fd5b8235915061445060208401614414565b90509250929050565b5f8083601f840112614469575f80fd5b5081356001600160401b0381111561447f575f80fd5b602083019150836020828501011115614496575f80fd5b9250929050565b5f805f805f608086880312156144b1575f80fd5b85356144bc81614302565b945060208601356144cc81614302565b93506040860135925060608601356001600160401b038111156144ed575f80fd5b6144f988828901614459565b969995985093965092949392505050565b5f6020828403121561451a575f80fd5b813561089981614302565b634e487b7160e01b5f52604160045260245ffd5b601f8201601f191681016001600160401b038111828210171561455e5761455e614525565b6040525050565b5f6001600160401b0382111561457d5761457d614525565b50601f01601f191660200190565b5f82601f83011261459a575f80fd5b81356145a581614565565b6040516145b28282614539565b8281528560208487010111156145c6575f80fd5b826020860160208301375f92810160200192909252509392505050565b803563ffffffff8116811461442a575f80fd5b5f805f805f805f60e0888a03121561460c575f80fd5b8735965060208801356001600160401b03811115614628575f80fd5b6146348a828b0161458b565b965050604088013561464581614302565b9450606088013561465581614302565b935061466360808901614414565b925061467160a089016145e3565b915061467f60c08901614414565b905092959891949750929550565b5f6001600160401b038211156146a5576146a5614525565b5060051b60200190565b5f82601f8301126146be575f80fd5b813560206146cb8261468d565b6040516146d88282614539565b80915083815260208101915060208460051b8701019350868411156146fb575f80fd5b602086015b84811015611e2d5780358352918301918301614700565b5f805f805f60a0868803121561472b575f80fd5b853561473681614302565b9450602086013561474681614302565b935060408601356001600160401b0380821115614761575f80fd5b61476d89838a016146af565b94506060880135915080821115614782575f80fd5b61478e89838a016146af565b935060808801359150808211156147a3575f80fd5b506147b08882890161458b565b9150509295509295909350565b5f805f80608085870312156147d0575f80fd5b84359350602085013592506147e7604086016145e3565b91506147f560608601614414565b905092959194509250565b803561ffff8116811461442a575f80fd5b5f8060408385031215614822575f80fd5b8235915061445060208401614800565b5f8060408385031215614843575f80fd5b82356001600160401b0380821115614859575f80fd5b818501915085601f83011261486c575f80fd5b813560206148798261468d565b6040516148868282614539565b83815260059390931b85018201928281019150898411156148a5575f80fd5b948201945b838610156148cc5785356148bd81614302565b825294820194908201906148aa565b965050860135925050808211156148e1575f80fd5b50613ea8858286016146af565b5f815180845260208085019450602084015f5b8381101561491d57815187529582019590820190600101614901565b509495945050505050565b602081525f61089960208301846148ee565b5f805f6060848603121561494c575f80fd5b833561495781614302565b9250602084013561496781614302565b929592945050506040919091013590565b5f805f6060848603121561498a575f80fd5b83359250602084013591506149a160408501614414565b90509250925092565b5f805f606084860312156149bc575f80fd5b8335925060208401356149ce81614302565b915060408401356149de81614302565b809150509250925092565b5f805f805f608086880312156149fd575f80fd5b85356001600160401b03811115614a12575f80fd5b614a1e88828901614459565b9096509450506020860135614a3281614302565b9250614a4060408701614800565b91506060860135614a5081614302565b809150509295509295909350565b801515811461209b575f80fd5b5f8060408385031215614a7c575f80fd5b8235614a8781614302565b9150602083013561440981614a5e565b5f805f805f8060a08789031215614aac575f80fd5b86356001600160401b03811115614ac1575f80fd5b614acd89828a01614459565b9097509550506020870135614ae181614302565b9350604087013592506060870135614af881614302565b9150614b0660808801614800565b90509295509295509295565b5f8060408385031215614b23575f80fd5b82359150614450602084016145e3565b5f8060408385031215614b44575f80fd5b50508035926020909101359150565b5f805f805f8060a08789031215614b68575f80fd5b8635955060208701356001600160401b03811115614b84575f80fd5b614b9089828a01614459565b9096509450506040870135614ba481614302565b9250614bb2606088016145e3565b9150614b0660808801614414565b5f805f8060408587031215614bd3575f80fd5b84356001600160401b0380821115614be9575f80fd5b614bf588838901614459565b90965094506020870135915080821115614c0d575f80fd5b50614c1a87828801614459565b95989497509550505050565b5f805f8060808587031215614c39575f80fd5b843593506020850135614c4b81614302565b925060408501356147e781614302565b5f805f60608486031215614c6d575f80fd5b833592506020840135915060408401356149de81614302565b5f8060408385031215614c97575f80fd5b8235614ca281614302565b9150602083013561440981614302565b5f805f8060608587031215614cc5575f80fd5b84356001600160401b03811115614cda575f80fd5b614ce687828801614459565b9095509350506020850135614cfa81614302565b91506040850135614d0a81614302565b939692955090935050565b5f805f805f60a08688031215614d29575f80fd5b8535614d3481614302565b94506020860135614d4481614302565b9350604086013592506060860135915060808601356001600160401b03811115614d6c575f80fd5b6147b08882890161458b565b5f60208284031215614d88575f80fd5b81516001600160401b03811115614d9d575f80fd5b8201601f81018413614dad575f80fd5b8051614db881614565565b604051614dc58282614539565b828152866020848601011115614dd9575f80fd5b610954836020830160208701614387565b9182526001600160a01b0316602082015260400190565b5f805f8060808587031215614e14575f80fd5b84356001600160401b03811115614e29575f80fd5b614e358782880161458b565b9450506020850135614e4681614302565b9250614e5460408601614800565b91506060850135614d0a81614302565b5f60208284031215614e74575f80fd5b5051919050565b634e487b7160e01b5f52601160045260245ffd5b6001600160401b03818116838216019080821115614eaf57614eaf614e7b565b5092915050565b600181811c90821680614eca57607f821691505b602082108103614ee857634e487b7160e01b5f52602260045260245ffd5b50919050565b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b634e487b7160e01b5f52603260045260245ffd5b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b604081525f614fa360408301856148ee565b8281036020840152614fb581856148ee565b95945050505050565b5f60208284031215614fce575f80fd5b815161089981614302565b5f60208284031215614fe9575f80fd5b815161089981614a5e565b818382375f9101908152919050565b60208082526028908201527f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f604082015267373a3937b63632b960c11b606082015260800190565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b60c081525f61508660c083018a8c61504b565b6001600160a01b03898116602085015263ffffffff891660408501526001600160401b03881660608501528616608084015282810360a08401526150cb81858761504b565b9b9a5050505050505050505050565b601f8211156108e057805f5260205f20601f840160051c810160208510156150ff5750805b601f840160051c820191505b81811015611213575f815560010161510b565b6001600160401b0383111561513557615135614525565b615149836151438354614eb6565b836150da565b5f601f84116001811461517a575f85156151635750838201355b5f19600387901b1c1916600186901b178355611213565b5f83815260208120601f198716915b828110156151a95786850135825560209485019460019092019101615189565b50868210156151c5575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b6001600160401b03828116828216039080821115614eaf57614eaf614e7b565b81516001600160401b0381111561521057615210614525565b6152248161521e8454614eb6565b846150da565b602080601f831160018114615257575f84156152405750858301515b5f19600386901b1c1916600185901b1785556133cb565b5f85815260208120601f198616915b8281101561528557888601518255948401946001909101908401615266565b50858210156152a257878501515f19600388901b60f8161c191681555b5050505050600190811b01905550565b6001600160a01b0386811682528516602082015260a0604082018190525f906152dd908301866148ee565b82810360608401526152ef81866148ee565b9050828103608084015261350481856143a9565b5f60208284031215615313575f80fd5b815161089981614357565b5f60033d11156153345760045f803e505f5160e01c5b90565b5f60443d10156153445790565b6040516003193d81016004833e81513d6001600160401b03816024840111818411171561537357505050505090565b828501915081518181111561538b5750505050505090565b843d87010160208285010111156153a55750505050505090565b6153b460208286010187614539565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b608081525f61541960808301876143a9565b6001600160a01b039590951660208301525063ffffffff9290921660408301526001600160401b0316606090910152919050565b818103818111156107ea576107ea614e7b565b808201808211156107ea576107ea614e7b565b60ff60f81b8460f81b1681525f8351615493816001850160208801614387565b8351908301906154aa816001840160208801614387565b0160010195945050505050565b6001600160a01b03868116825285166020820152604081018490526060810183905260a0608082018190525f906154f0908301846143a9565b97965050505050505056fe93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4aea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2a68925cf5169f28586095d5b5b9933b3008f4c793a48be4f59b8b2bc62aa60a":"0x1","0x54cdd369e4e8a8515e52ca72ec816c2101831ad1f18bf44102ed171459c9b4f8":"0x2","0xa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb49":"0xffffffffffffffff000100010000000000000000000000000000000000000000","0xafa26c20e8b3d9a2853d642cfe1021dae26242ffedfac91c97aab212c1a4b93b":"0xffffffffffffffff000100010000000000000000000000000000000000000000","0xef5b11c47ebee44618abc22110e10e3b408ea5e799056d2b38461aa7b97c5a97":"0x1","0xfb9e8e321b8a5ec48f12a7b41f22c6e595d761285c9eb19d8dda7c99edf1b54f":"0x36574680000000000000000000000000000000000000000000000000000000a"}},"0x6e1eb616c7d69491f9a880f815ff5574768cba20":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b506004361061007a575f3560e01c806314ab90381161005857806314ab90381461010357806316a25cbd146101165780631896f70a146101625780635b0fc9c314610175575f80fd5b80630178b8bf1461007e57806302571be3146100c657806306ab5923146100ee575b5f80fd5b6100a961008c366004610403565b5f908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100a96100d4366004610403565b5f908152602081905260409020546001600160a01b031690565b6101016100fc366004610435565b610188565b005b610101610111366004610467565b610242565b610149610124366004610403565b5f90815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100bd565b6101016101703660046104a1565b6102e2565b6101016101833660046104a1565b610374565b5f8381526020819052604090205483906001600160a01b031633146101ab575f80fd5b60408051602080820187905281830186905282518083038401815260608301808552815191909201206001600160a01b0386169091529151859187917fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829181900360800190a35f90815260208190526040902080546001600160a01b0319166001600160a01b039390931692909217909155505050565b5f8281526020819052604090205482906001600160a01b03163314610265575f80fd5b60405167ffffffffffffffff8316815283907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a2505f91825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b5f8281526020819052604090205482906001600160a01b03163314610305575f80fd5b6040516001600160a01b038316815283907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a2505f9182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b5f8281526020819052604090205482906001600160a01b03163314610397575f80fd5b6040516001600160a01b038316815283907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a2505f9182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b5f60208284031215610413575f80fd5b5035919050565b80356001600160a01b0381168114610430575f80fd5b919050565b5f805f60608486031215610447575f80fd5b833592506020840135915061045e6040850161041a565b90509250925092565b5f8060408385031215610478575f80fd5b82359150602083013567ffffffffffffffff81168114610496575f80fd5b809150509250929050565b5f80604083850312156104b2575f80fd5b823591506104c26020840161041a565b9050925092905056fea164736f6c6343000818000a","storage":{"0x859ecef2e168dc10231b000bd53493b42bc9d944cac29d94582c1e1d43592131":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x7bb6cd9be29fab783c0b494a06fed8b2e2596b7a":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100ea5760003560e01c80636debcb8d1161008c578063b34f33c511610066578063b34f33c514610741578063d0778d6c14610814578063ef2c3088146108f2578063f5090c1e14610980576100ea565b80636debcb8d146105ca5780636fab95b3146106585780637b1039991461071d576100ea565b8063511f1112116100c8578063511f1112146103c557806361603dd91461044857806368b6154f146104bd5780636ccbae5f1461059b576100ea565b806307eca395146100ef578063280d9b051461021457806330135293146102f2575b600080fd5b610212600480360360a081101561010557600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561013457600080fd5b82018360208201111561014657600080fd5b803590602001918460018302840111600160201b8311171561016757600080fd5b919390929091602081019035600160201b81111561018457600080fd5b82018360208201111561019657600080fd5b803590602001918460018302840111600160201b831117156101b757600080fd5b919390929091602081019035600160201b8111156101d457600080fd5b8201836020820111156101e657600080fd5b803590602001918460018302840111600160201b8311171561020757600080fd5b509092509050610aae565b005b610212600480360360a081101561022a57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561026457600080fd5b82018360208201111561027657600080fd5b803590602001918460018302840111600160201b8311171561029757600080fd5b919390929091602081019035600160201b8111156102b457600080fd5b8201836020820111156102c657600080fd5b803590602001918460018302840111600160201b831117156102e757600080fd5b509092509050610c92565b6102126004803603608081101561030857600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561033757600080fd5b82018360208201111561034957600080fd5b803590602001918460018302840111600160201b8311171561036a57600080fd5b919390929091602081019035600160201b81111561038757600080fd5b82018360208201111561039957600080fd5b803590602001918460018302840111600160201b831117156103ba57600080fd5b509092509050610e3d565b610212600480360360608110156103db57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561040a57600080fd5b82018360208201111561041c57600080fd5b803590602001918460018302840111600160201b8311171561043d57600080fd5b509092509050610fcc565b6102126004803603604081101561045e57600080fd5b81359190810190604081016020820135600160201b81111561047f57600080fd5b82018360208201111561049157600080fd5b803590602001918460018302840111600160201b831117156104b257600080fd5b5090925090506110c9565b610212600480360360a08110156104d357600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561050d57600080fd5b82018360208201111561051f57600080fd5b803590602001918460018302840111600160201b8311171561054057600080fd5b919390929091602081019035600160201b81111561055d57600080fd5b82018360208201111561056f57600080fd5b803590602001918460018302840111600160201b8311171561059057600080fd5b5090925090506111ae565b6105b8600480360360208110156105b157600080fd5b50356113a8565b60408051918252519081900360200190f35b610212600480360360808110156105e057600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561061a57600080fd5b82018360208201111561062c57600080fd5b803590602001918460018302840111600160201b8311171561064d57600080fd5b5090925090506113ba565b6102126004803603606081101561066e57600080fd5b81359190810190604081016020820135600160201b81111561068f57600080fd5b8201836020820111156106a157600080fd5b803590602001918460018302840111600160201b831117156106c257600080fd5b919390929091602081019035600160201b8111156106df57600080fd5b8201836020820111156106f157600080fd5b803590602001918460018302840111600160201b8311171561071257600080fd5b5090925090506114d4565b610725611675565b604080516001600160a01b039092168252519081900360200190f35b6102126004803603608081101561075757600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561078657600080fd5b82018360208201111561079857600080fd5b803590602001918460018302840111600160201b831117156107b957600080fd5b919390929091602081019035600160201b8111156107d657600080fd5b8201836020820111156107e857600080fd5b803590602001918460018302840111600160201b8311171561080957600080fd5b509092509050611684565b610212600480360360a081101561082a57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561086457600080fd5b82018360208201111561087657600080fd5b803590602001918460018302840111600160201b8311171561089757600080fd5b919390929091602081019035600160201b8111156108b457600080fd5b8201836020820111156108c657600080fd5b803590602001918460018302840111600160201b831117156108e757600080fd5b5090925090506117de565b6102126004803603608081101561090857600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561094257600080fd5b82018360208201111561095457600080fd5b803590602001918460018302840111600160201b8311171561097557600080fd5b5090925090506119e4565b610212600480360360c081101561099657600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156109d057600080fd5b8201836020820111156109e257600080fd5b803590602001918460018302840111600160201b83111715610a0357600080fd5b919390929091602081019035600160201b811115610a2057600080fd5b820183602082011115610a3257600080fd5b803590602001918460018302840111600160201b83111715610a5357600080fd5b919390929091602081019035600160201b811115610a7057600080fd5b820183602082011115610a8257600080fd5b803590602001918460018302840111600160201b83111715610aa357600080fd5b509092509050611ad3565b610bb163ce9fb82b89898989898960405160240180876001600160a01b03166001600160a01b0316815260200186815260200180602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f820116905080830192505050985050505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208884848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b600154604051630119f80560e21b81526001600160a01b038a811660048301908152602483018b9052608060448401908152608484018a90529190931692630467e014928c928c928c928c928c928c92909190606481019060a401878780828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f82011690508083019250505098505050505050505050600060405180830381600087803b158015610c7057600080fd5b505af1158015610c84573d6000803e3d6000fd5b505050505050505050505050565b610d8363b88d4fde888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040516315eab15d60e21b81526001600160a01b03898116600483019081528982166024840152604483018990526080606484019081526084840188905291909316926357aac574928b928b928b928b928b929160a401848480828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b158015610e1c57600080fd5b505af1158015610e30573d6000803e3d6000fd5b5050505050505050505050565b610f09637c69eae28787878760405160240180856001600160a01b03166001600160a01b0316815260200184815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09d909d1b9c909c178c529351909a208a51918d01849004840282018401909a528b81528f985096508b95508a94508493505085019050838280828437600092019190915250611d5492505050565b600154604051630119f80560e21b81526001600160a01b038881166004830190815260248301899052608060448401908152608484018890529190931692630467e014928a928a928a928a9290606481019060a401858580828437600081840152601f19601f8201169050808301925050508381038252600081526020016020019650505050505050600060405180830381600087803b158015610fac57600080fd5b505af1158015610fc0573d6000803e3d6000fd5b50505050505050505050565b604080516001600160a01b038616602482015260448082018690528251808303909101815260649091018252602081810180516001600160e01b0316632392c18960e01b17815291519091208251601f85018390048302810183019093528383526110569290918691908690869081908401838280828437600092019190915250611d5492505050565b60015460408051631292e83560e11b81526001600160a01b0387811660048301526024820187905291519190921691632525d06a91604480830192600092919082900301818387803b1580156110ab57600080fd5b505af11580156110bf573d6000803e3d6000fd5b5050505050505050565b6040805160248082018690528251808303909101815260449091018252602081810180516001600160e01b0316630852cd8d60e31b17815291519091208251601f85018390048302810183019093528383526111449290918691908690869081908401838280828437600092019190915250611d5492505050565b6001546040805163e67ca8a360e01b81526004810186905290516001600160a01b039092169163e67ca8a39160248082019260009290919082900301818387803b15801561119157600080fd5b505af11580156111a5573d6000803e3d6000fd5b50505050505050565b61129f639e5be9a5888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b03909316926302759c37928b928b9286926368b62d32928d928d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561132757600080fd5b505afa15801561133b573d6000803e3d6000fd5b505050506040513d602081101561135157600080fd5b5051604080516001600160e01b031960e087901b1681526001600160a01b03948516600482015292909316602483015260448201529051606480830192600092919082900301818387803b158015610e1c57600080fd5b60009081526020819052604090205490565b604080516001600160a01b0380881660248301528616604482015260648082018690528251808303909101815260849091018252602081810180516001600160e01b0316632142170760e11b17815291519091208251601f850183900483028101830190935283835261144c9290918691908690869081908401838280828437600092019190915250611d5492505050565b600154604080516315eab15d60e21b81526001600160a01b0388811660048301528781166024830152604482018790526080606483015260006084830181905292519316926357aac5749260c48084019391929182900301818387803b1580156114b557600080fd5b505af11580156114c9573d6000803e3d6000fd5b505050505050505050565b611585635cbe11128686866040516024018084815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09c909c1b9b909b178b5293519099208951918c018490048402820184019099528a81528e975095508a9450899350839250508401838280828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b039093169263e67ca8a39284926368b62d32928b928b928b929190606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561160b57600080fd5b505afa15801561161f573d6000803e3d6000fd5b505050506040513d602081101561163557600080fd5b5051604080516001600160e01b031960e085901b168152600481019290925251602480830192600092919082900301818387803b1580156114b557600080fd5b6001546001600160a01b031690565b61175063d8d3cc6e8787878760405160240180856001600160a01b03166001600160a01b0316815260200184815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09d909d1b9c909c178c529351909a208a51918d01849004840282018401909a528b81528f985096508b95508a94508493505085019050838280828437600092019190915250611d5492505050565b60015460405163b546666960e01b81526001600160a01b03888116600483019081526024830189905260606044840190815260648401889052919093169263b5466669928a928a928a928a9290608401848480828437600081840152601f19601f82011690508083019250505095505050505050600060405180830381600087803b158015610fac57600080fd5b6118cf639d743989888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b03909316926357aac574928b928b9286926368b62d32928d928d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561195757600080fd5b505afa15801561196b573d6000803e3d6000fd5b505050506040513d602081101561198157600080fd5b5051604080516001600160e01b031960e087901b1681526001600160a01b039485166004820152929093166024830152604482015260806064820152600060848201819052915160c4808301939282900301818387803b158015610e1c57600080fd5b604080516001600160a01b0380881660248301528616604482015260648082018690528251808303909101815260849091018252602081810180516001600160e01b03166323b872dd60e01b17815291519091208251601f8501839004830281018301909352838352611a769290918691908690869081908401838280828437600092019190915250611d5492505050565b600154604080516302759c3760e01b81526001600160a01b038881166004830152878116602483015260448201879052915191909216916302759c3791606480830192600092919082900301818387803b1580156114b557600080fd5b611bf063c29b52f98a8a8a8a8a8a8a60405160240180886001600160a01b03166001600160a01b03168152602001876001600160a01b03166001600160a01b0316815260200186815260200180602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f82011690508083019250505099505050505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208884848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b8152600481018a815260248201928352604482018990526001600160a01b03909316926357aac574928d928d9286926368b62d32928f928f928f92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b158015611c7857600080fd5b505afa158015611c8c573d6000803e3d6000fd5b505050506040513d6020811015611ca257600080fd5b50516040516001600160e01b031960e086901b1681526001600160a01b0380851660048301908152908416602483015260448201839052608060648301908152608483018b90528b928b92919060a401848480828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b158015611d3157600080fd5b505af1158015611d45573d6000803e3d6000fd5b50505050505050505050505050565b6000828152602081815260408083205481518084018890523060601b81840152605480820183905283518083039091018152607490910190925281519190920120909190611db3908490611da790611ea9565b9063ffffffff611efa16565b90506001600160a01b03811615801590611e4957506001546040805163430c208160e01b81526001600160a01b038481166004830152602482018890529151919092169163430c2081916044808301926020929190829003018186803b158015611e1c57600080fd5b505afa158015611e30573d6000803e3d6000fd5b505050506040513d6020811015611e4657600080fd5b50515b611e8e576040805162461bcd60e51b8152602060048201526011602482015270494e56414c49445f5349474e415455524560781b604482015290519081900360640190fd5b50505060009081526020819052604090208054600101905550565b604080517f19457468657265756d205369676e6564204d6573736167653a0a333200000000602080830191909152603c8083019490945282518083039094018452605c909101909152815191012090565b60008151604114611f0d57506000611fe3565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0821115611f535760009350505050611fe3565b8060ff16601b14158015611f6b57508060ff16601c14155b15611f7c5760009350505050611fe3565b6040805160008152602080820180845289905260ff8416828401526060820186905260808201859052915160019260a0808401939192601f1981019281900390910190855afa158015611fd3573d6000803e3d6000fd5b5050506020604051035193505050505b9291505056fea265627a7a7231582014816bfd0c1519ce8c4cf272eb0526ffdba3abef0df7f17deb0da40bd8abb77f64736f6c634300050c0032","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533"}},"0x7c3c91245769c8b7450ad522792dec4bd4bf797f":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b506004361061003f575f3560e01c80631bf7e13e146100435780636ccbae5f1461006c578063a424740014610099575b5f80fd5b610056610051366004610749565b6100bc565b604051610063919061082c565b60405180910390f35b61008b61007a36600461083e565b5f9081526001602052604090205490565b604051908152602001610063565b6100ac6100a7366004610749565b6101d6565b6040519015158152602001610063565b60605f5a90506100cd8585856101d6565b6101315760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e61676572466f727761726465723a205349474e415455604482015269149157d253959053125160b21b60648201526084015b60405180910390fd5b6101cb6101416020870187610870565b5f546001600160a01b031660408801358461015f60608b018b610889565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f9201919091525061023292505050565b9150505b9392505050565b5f61022a6101e38561093a565b5f54604080516020601f88018190048102820181019092528681526001600160a01b03909216919087908790819084018382808284375f9201919091525061030e92505050565b949350505050565b606061023d85610453565b5f80876001600160a01b0316866102568b8a898961047e565b60405161026391906109f5565b5f604051808303815f8787f1925050503d805f811461029d576040519150601f19603f3d011682016040523d82523d5f602084013e6102a2565b606091505b5090925090506102b3603f87610a10565b5a116102c1576102c1610a2f565b61030182826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506104ae565b9998505050505050505050565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015610352573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103769190610a43565b90505f6104238660600151805190602001208688602001516040516020016103c39392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561044957508551610449906001600160a01b031682866104e7565b9695505050505050565b5f8181526001602081905260409091205461046d91610a5a565b5f9182526001602052604090912055565b606082858560405160200161049593929190610a7f565b6040516020818303038152906040529050949350505050565b606083156104bd5750816101cf565b8251156104cd5782518084602001fd5b8160405162461bcd60e51b8152600401610128919061082c565b5f805f6104f48585610622565b90925090505f81600481111561050c5761050c610abd565b14801561052a5750856001600160a01b0316826001600160a01b0316145b1561053a576001925050506101cf565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401610561929190610ad1565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161059f91906109f5565b5f60405180830381855afa9150503d805f81146105d7576040519150601f19603f3d011682016040523d82523d5f602084013e6105dc565b606091505b50915091508180156105ef575080516020145b801561061657508051630b135d3f60e11b906106149083016020908101908401610a43565b145b98975050505050505050565b5f808251604103610656576020830151604084015160608501515f1a61064a87828585610664565b9450945050505061065d565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561069957505f90506003610740565b8460ff16601b141580156106b157508460ff16601c14155b156106c157505f90506004610740565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610712573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b03811661073a575f60019250925050610740565b91505f90505b94509492505050565b5f805f6040848603121561075b575f80fd5b833567ffffffffffffffff80821115610772575f80fd5b9085019060808288031215610785575f80fd5b9093506020850135908082111561079a575f80fd5b818601915086601f8301126107ad575f80fd5b8135818111156107bb575f80fd5b8760208285010111156107cc575f80fd5b6020830194508093505050509250925092565b5f5b838110156107f95781810151838201526020016107e1565b50505f910152565b5f81518084526108188160208601602086016107df565b601f01601f19169290920160200192915050565b602081525f6101cf6020830184610801565b5f6020828403121561084e575f80fd5b5035919050565b80356001600160a01b038116811461086b575f80fd5b919050565b5f60208284031215610880575f80fd5b6101cf82610855565b5f808335601e1984360301811261089e575f80fd5b83018035915067ffffffffffffffff8211156108b8575f80fd5b60200191503681900382131561065d575f80fd5b634e487b7160e01b5f52604160045260245ffd5b6040516080810167ffffffffffffffff81118282101715610903576109036108cc565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610932576109326108cc565b604052919050565b5f6080823603121561094a575f80fd5b6109526108e0565b61095b83610855565b81526020808401358183015260408401356040830152606084013567ffffffffffffffff8082111561098b575f80fd5b9085019036601f83011261099d575f80fd5b8135818111156109af576109af6108cc565b6109c1601f8201601f19168501610909565b915080825236848285010111156109d6575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b5f8251610a068184602087016107df565b9190910192915050565b5f82610a2a57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b5f60208284031215610a53575f80fd5b5051919050565b80820180821115610a7957634e487b7160e01b5f52601160045260245ffd5b92915050565b5f8451610a908184602089016107df565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f61022a604083018461080156fea164736f6c6343000818000a","storage":{"0x0":"0x39a27956b78d00a4e00ea8833ff0947410a2933f"}},"0x8861cdfa38838531275ce12f9e795c3b9ff29cbe":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x936188f2c3c8e8c95e425b6fe41c2ac9e701585e":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x94f57ed7e9af03a10e8eb23ce1b3c7914a182b0f":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x95f29431aeb52c0d5dbeeec36010b8e2ca69cb3d":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x9b2565a3545a1312bdcb6e7148a7f7cae8c2706b":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c806373cc48a61161008857806398d35f201161006357806398d35f2014610215578063bd7ed31a1461021d578063c327deef14610245578063d7b82ebe1461026d575f80fd5b806373cc48a6146101af5780638438dc04146101ef5780638da5cb5b14610202575f80fd5b806313af4035116100c357806313af40351461015657806328e7677d146101695780632c095cbb1461017c578063435cc1621461018f575f80fd5b8063020ed8d3146100e9578063087991bc146100fe5780630b1a249514610143575b5f80fd5b6100fc6100f73660046122ff565b610280565b005b61011161010c36600461238a565b610300565b6040805163ffffffff94851681529390921660208401526001600160601b031916908201526060015b60405180910390f35b6100fc610151366004612510565b61036c565b6100fc6101643660046125c6565b6104da565b6100fc6101773660046122ff565b610512565b6100fc61018a3660046125e1565b61058a565b6101a261019d366004612674565b610656565b60405161013a919061278c565b6101d76101bd36600461279e565b60046020525f90815260409020546001600160a01b031681565b6040516001600160a01b03909116815260200161013a565b6100fc6101fd3660046122ff565b6106d2565b6001546101d7906001600160a01b031681565b6101a261074a565b6101d761022b36600461279e565b60056020525f90815260409020546001600160a01b031681565b6101d761025336600461279e565b60036020525f90815260409020546001600160a01b031681565b6101a261027b3660046127b7565b6107d5565b6001546001600160a01b03163314610296575f80fd5b60ff82165f8181526003602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527ff73c3c226af96b7f1ba666a21b3ceaf2be3ee6a365e3178fd9cd1eaae0075aa891015b60405180910390a15050565b5f805f8060025f8787604051610317929190612817565b604080519182900390912082526020808301939093529081015f90812061ffff8b16825290925290205463ffffffff80821695506401000000008204169350600160401b900460601b91505093509350939050565b83516020808601919091205f90815260028252604080822061ffff891683529092529081205463ffffffff16906103a385846107ea565b90506103b0818784610889565b6103b8612239565b845151156103d7576103ca85856107ea565b90506103d7818885610889565b5f6103e1836108cc565b602081015190915060fe16156103f5575f80fd5b61040081602761092a565b158015610425575061041381600261092a565b1580610425575061042581600661092a565b61042d575f80fd5b61043e89898561012001518461093a565b156104795787516020808a01919091205f90815260028252604080822061ffff8d1683529092522080546001600160e01b03191690556104cf565b6104988884610120015183856101200151610493876108cc565b610968565b156100e55787516020808a01919091205f90815260028252604080822061ffff8d1683529092522080546001600160e01b03191690555b505050505050505050565b6001546001600160a01b031633146104f0575f80fd5b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6001546001600160a01b03163314610528575f80fd5b60ff82165f8181526004602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527f2fcc274c3b72dd483ab201bfa87295e3817e8b9b10693219873b722ca1af00c791016102f4565b610592612239565b61059c83836107ea565b805190915061ffff16602f146105b0575f80fd5b60a081015184516020808701919091205f90815260028252604080822061ffff8a16835290925220546105e9919063ffffffff16610a7c565b6105f1575f80fd5b5f6105fb82610a94565b9050805151602082015110156100e55761061c818361012001518789610aab565b505082516020808501919091205f90815260028252604080822061ffff881683529092522080546001600160e01b03191690555b50505050565b60605f83838080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201829052509394505050505b85518110156106c7576106bd8682815181106106af576106af612826565b602002602001015183610c4a565b9150600101610691565b5090505b9392505050565b6001546001600160a01b031633146106e8575f80fd5b60ff82165f8181526005602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527fc7eec866a7a1386188cc3ca20ffea75b71bd3e90a60b6791b1d3f0971145118d91016102f4565b5f80546107569061283a565b80601f01602080910402602001604051908101604052809291908181526020018280546107829061283a565b80156107cd5780601f106107a4576101008083540402835291602001916107cd565b820191905f5260205f20905b8154815290600101906020018083116107b057829003601f168201915b505050505081565b60606107e18383610c4a565b90505b92915050565b6107f2612239565b82516107fd90610dc6565b905061080d8160e0015183610ebf565b610815575f80fd5b5f61082382835f0151610f25565b604083015190915060ff16610838825f610fcc565b14610841575f80fd5b610120820181905260808201516108589042610a7c565b610860575f80fd5b61086e428360a00151610a7c565b610876575f80fd5b61088281838686611026565b5092915050565b6108978360a0015182610a7c565b61089f575f80fd5b825161ffff166032146108b0575f80fd5b6108bf83610120015183611106565b6108c7575f80fd5b505050565b6040805160c0810182525f8082526020820181905291810182905260608082018190526080820183905260a08201529061090583610a94565b60a081015160c08201519192506106cb91610921908290612880565b83519190611172565b5f6107e18360a001515f846112b4565b5f6109468284866113c1565b1561095d57610955828661092a565b159050610960565b505f5b949350505050565b60208101515f9060fe161561097b575f80fd5b5f610985866113e6565b90505f610991856113e6565b90505f8061099f8a82611401565b6109aa906001612893565b60ff1690505b8951811015610a6b57836109dc896109d784858f516109cf9190612880565b8f9190611424565b6114a4565b03610a3f575f6109f7876109d785868f516109cf9190612880565b90508660800151841015610a23578381118015610a175750866080015181105b95505050505050610a73565b83811180610a1757508660800151811095505050505050610a73565b905080610a4c8a82611401565b610a57906001612893565b610a649060ff16826128ac565b90506109b0565b505f93505050505b95945050505050565b5f80610a8883856128bf565b60030b12159392505050565b610a9c61228e565b6107e48261010001515f61152d565b60a084015184515f90610abe9083611548565b90505f8660a001518760c00151610ad59190612880565b9050818111610ae2575f80fd5b5f610aed868861159f565b9050805f03610b1a57610b0c610b0384866128ac565b895190876112b4565b15610b15575f80fd5b610b5b565b87515f90610b29908686611424565b90505f8213610b36575f80fd5b5f610b41898361159f565b12156104cf575f610b52888361159f565b126104cf575f80fd5b5050505050505050565b60c08101516020820181905281515111610b7c5750565b5f610b8e825f01518360200151611548565b8260200151610b9d91906128ac565b8251909150610bac90826116ec565b61ffff166040830152610bc06002826128ac565b8251909150610bcf90826116ec565b61ffff166060830152610be36002826128ac565b8251909150610bf29082611712565b63ffffffff166080830152610c086004826128ac565b82519091505f90610c1990836116ec565b61ffff169050610c2a6002836128ac565b60a084018190529150610c3d81836128ac565b60c0909301929092525050565b6060610c54612239565b610c5e84846107ea565b61012081015180516020918201205f908152600282526040808220845161ffff16835290925220805491925090600160401b900460601b6001600160601b03191615610cc35760a08201518154610cbb919063ffffffff16610a7c565b610cc3575f80fd5b604080516060808201835260a085015163ffffffff9081168352608086015181166020808501918252610100880180518051908301206001600160601b0319168688019081526101208a0180518051908501205f908152600285528981208c5161ffff16825290945292889020965187549451915190961c600160401b0268010000000000000000600160e01b03199186166401000000000267ffffffffffffffff19909516969095169590951792909217939093169190911790925551905191517f55ced933cdd5a34dd03eb5d4bef19ec6ebb251dcd7a988eee0c1b9a13baaa88b92610db192916128e6565b60405180910390a15061010001519392505050565b610dce612239565b610dd8825f6116ec565b61ffff168152610de9826002611401565b60ff166020820152610dfc826003611401565b60ff166040820152610e0f826004611712565b63ffffffff9081166060830152610e2b90839060089061171216565b63ffffffff9081166080830152610e47908390600c9061171216565b63ffffffff90811660a0830152610e639083906010906116ec16565b61ffff1660c0820152610e7782601261173a565b60e0820181905251610eb490610e8e9060126128ac565b8260e001515160128551610ea29190612880565b610eac9190612880565b849190611424565b610100820152919050565b5f80610ed5610ece8483611548565b84906116ec565b83516020808601919091208651878301205f90815260028352604080822061ffff90951682529390925291902054600160401b900460601b6001600160601b031990811691161491505092915050565b60605f610f3184610a94565b90505b8051516020820151101561088257606081015161ffff16600114610f56575f80fd5b81515f03610f6e57610f6781611754565b9150610fa7565b60208101518151610f7e91611548565b825114610f89575f80fd5b805160208201518351610f9f9285925f92611775565b610fa7575f80fd5b8261ffff16816040015161ffff1614610fbe575f80fd5b610fc781610b65565b610f34565b5f805b83518310610fdf57610fdf61290a565b5f610fea8585611401565b60ff169050610ffa8160016128ac565b61100490856128ac565b9350805f0361101357506107e1565b61101e6001836128ac565b915050610fcf565b83518360e00151511115611038575f80fd5b61105c5f858560e0015151875161104f9190612880565b60e0870151929190611797565b611064575f80fd5b5f61106f828261152d565b9050602b61ffff16816040015161ffff160361109d576110908484836117cb565b611098575f80fd5b6110ff565b603061ffff16816040015161ffff16036110bc5761109084848361185f565b60405162461bcd60e51b8152602060048201526014602482015273139bc81d985b1a59081c1c9bdbd988199bdd5b9960621b604482015260640160405180910390fd5b5050505050565b5f806111128482611401565b61111d906001612893565b60ff1690505f5b835181101561095d5761113984828785611797565b15611149576001925050506107e4565b6111538482611401565b61115e906001612893565b61116b9060ff16826128ac565b9050611124565b6040805160c0810182525f8082526020820181905291810182905260608082018190526080820183905260a0820152906111ac83856128ac565b90506111c26111bb5f866128ac565b8690611401565b60ff1682526111d56111bb6001866128ac565b60ff1660208301526111f26111eb6002866128ac565b86906116ec565b61ffff1660408301525f61121161120a6004876128ac565b8790611401565b905061121e6005866128ac565b945061122e868660ff8416611424565b606084015261124060ff8216866128ac565b94505f61124d8787611401565b905060208160ff16111561125f575f80fd5b61126a6001876128ac565b955061127a878760ff8416611900565b608085015261128c60ff8216876128ac565b95506112a48661129c8186612880565b899190611424565b60a0850152509195945050505050565b5f60ff600883811c82169183916112cc918616612932565b90505f6112dd600780871690612952565b600160ff919091161b9050855b87518110156113b4575f6112fe8983611401565b90505f61131661130f8460016128ac565b8b90611401565b90508160ff168660ff161015611334575f96505050505050506106cb565b8160ff168660ff1603611393578460ff168160ff161161135c575f96505050505050506106cb565b8361137f61136d60ff8816866128ac565b6113789060026128ac565b8c90611401565b1660ff165f141596505050505050506106cb565b61139e816002612893565b6113ab9060ff16846128ac565b925050506112ea565b505f979650505050505050565b5f806113cd85846114a4565b90505f6113d9856113e6565b9190911495945050505050565b5f6107e460016113f68484611401565b84919060ff1661193d565b5f82828151811061141457611414612826565b016020015160f81c905092915050565b825160609061143383856128ac565b111561143d575f80fd5b5f8267ffffffffffffffff811115611457576114576123d9565b6040519080825280601f01601f191660200182016040528015611481576020820181803683370190505b50905060208082019086860101611499828287611b43565b509095945050505050565b815160ff165f9081526005602052604080822054606085015182860151925163347ced5960e11b81526001600160a01b03909216926368f9dab2926114ee9291879160040161296b565b602060405180830381865afa158015611509573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107e191906129a4565b61153561228e565b82815260c081018290526107e481610b65565b5f815b8351811061155b5761155b61290a565b5f6115668583611401565b60ff1690506115768160016128ac565b61158090836128ac565b9150805f0361158f5750611595565b5061154b565b6109608382612880565b5f6115aa8383611b98565b156115b657505f6107e4565b5f805f805f6115c5885f610fcc565b90505f6115d2885f610fcc565b90505b808211156115fe578593506115ea8987611bb3565b9550816115f6816129bb565b9250506115d5565b81811115611627578492506116138886611bb3565b94508061161f816129bb565b9150506115fe565b5f8211801561163f575061163d89878a88611797565b155b15611674578593506116518987611bb3565b95508492506116608886611bb3565b945061166d600183612880565b9150611627565b855f0361168a575f1996505050505050506107e4565b845f036116a057600196505050505050506107e4565b6116df6116ae8560016128ac565b6116b88b87611401565b60ff168a6116c78760016128ac565b6116d18d89611401565b8e949392919060ff16611bd6565b9998505050505050505050565b81515f906116fb8360026128ac565b1115611705575f80fd5b50016002015161ffff1690565b81515f906117218360046128ac565b111561172b575f80fd5b50016004015163ffffffff1690565b60605f6117478484611548565b9050610960848483611424565b602081015181516060916107e49161176c9082611548565b84519190611424565b5f611781848484611cc6565b61178c878785611cc6565b149695505050505050565b5f6117af83838486516117aa9190612880565b611cc6565b6117c186868789516117aa9190612880565b1495945050505050565b5f806117d685610a94565b90505b8051516020820151101561095d57604081015161ffff166030146117fb575f80fd5b5f61180582611ce8565b90505f61181e5f835184611d049092919063ffffffff16565b905061182c81838989611da0565b1561184f5761184561183d84611754565b868385611e9b565b93505050506106cb565b505061185a81610b65565b6117d9565b5f6118778460e0015161187184611754565b90611b98565b61187f575f80fd5b815151602083015110156118f75761189e8460e0015161187184611754565b6118a6575f80fd5b5f6118b083611ce8565b90505f6118c95f835184611d049092919063ffffffff16565b90506118d781838888611da0565b156118e7576001925050506106cb565b50506118f282610b65565b61187f565b505f9392505050565b5f602082111561190e575f80fd5b835161191a83856128ac565b1115611924575f80fd5b506020919092018101519190036101000a5f1901191690565b5f603482111561194b575f80fd5b5f80805b84811015611a29575f8761196383896128ac565b8151811061197357611973612826565b01602001516001600160f81b0319169050600360fc1b81108015906119a65750603d60f91b6001600160f81b0319821611155b6119ae575f80fd5b604051806080016040528060478152602001612b5c604791396119d6603060f884901c612880565b815181106119e6576119e6612826565b0160209081015160f81c93508311156119fd575f80fd5b611a08600187612880565b8203611a145750611a29565b5060059290921b60ff8216179160010161194f565b505f611a368560056129d0565b9050611a436008866129e7565b5f03611a5a578160ff16600584901b179250611b29565b611a656008866129e7565b600203611a935760028260ff16901c60ff16600384901b179250600281611a8c9190612880565b9050611b29565b611a9e6008866129e7565b600403611ac55760048260ff16901c60ff16600184901b179250600481611a8c9190612880565b611ad06008866129e7565b600503611af75760018260ff16901c60ff16600484901b179250600181611a8c9190612880565b611b026008866129e7565b6007036100e55760038260ff16901c60ff16600284901b179250600381611a8c9190612880565b611b3581610100612880565b9290921b9695505050505050565b60208110611b7b5781518352611b5a6020846128ac565b9250611b676020836128ac565b9150611b74602082612880565b9050611b43565b905182516020929092036101000a5f190180199091169116179052565b5f815183511480156107e157506107e1835f845f8751611775565b5f611bbe8383611401565b60ff16611bcc8360016128ac565b6107e191906128ac565b5f8480831015611be35750815b6020878901810190858701015f5b83811015611cab5782518251808214611c7b575f6020871115611c1657505f19611c52565b600184611c24896020612880565b611c2e91906128ac565b611c399060086129d0565b611c44906002612ada565b611c4e9190612880565b1990505b5f611c61838316858416612ae5565b90508015611c78579750611cbc9650505050505050565b50505b611c866020866128ac565b9450611c936020856128ac565b93505050602081611ca491906128ac565b9050611bf1565b50611cb68589612ae5565b93505050505b9695505050505050565b82515f90611cd483856128ac565b1115611cde575f80fd5b5091016020012090565b60a081015160c08201516060916107e49161176c908290612880565b604080516080810182525f8082526020820181905291810191909152606080820152611d3a611d335f856128ac565b85906116ec565b61ffff168152611d55611d4e6002856128ac565b8590611401565b60ff166020820152611d6b611d4e6003856128ac565b60ff166040820152611d94611d816004856128ac565b611d8c600485612880565b869190611424565b60608201529392505050565b5f846020015160ff16600314611db757505f610960565b826020015160ff16856040015160ff1614611dd357505f610960565b5f611ddd85611f96565b90508360c0015161ffff168161ffff1614611dfb575f915050610960565b8551610100165f03611e10575f915050610960565b60408087015160ff165f908152600360209081529082902054855191860151925163de8f50a160e01b81526001600160a01b039091169263de8f50a192611e5c928a9290600401612b04565b602060405180830381865afa158015611e77573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611cbc9190612b3c565b5f80611ea683611f96565b90505b84515160208601511015611f8b5760a085015160c08601515f91611edb91611ed2908290612880565b88519190611d04565b90508161ffff16815f015161ffff1614611ef55750611f7d565b846040015160ff16816020015160ff1614611f105750611f7d565b60408051808201909152606081525f6020820152611f3c85518951611f3591906128ac565b8290611ff7565b50611f47818961205a565b50611f52818661205a565b50611f698260400151825f0151846060015161207f565b15611f7a5760019350505050610960565b50505b611f8685610b65565b611ea9565b505f95945050505050565b5f805f5b8351811015611fe8576001811615611fbe57611fb68482611401565b60ff16611fd0565b6008611fca8583611401565b60ff16901b5b611fde9061ffff16836128ac565b9150600101611f9a565b506106cb601082901c826128ac565b60408051808201909152606081525f60208201526120166020836129e7565b1561203e576120266020836129e7565b612031906020612880565b61203b90836128ac565b91505b506020828101829052604080518085525f815290920101905290565b60408051808201909152606081525f60208201526107e183845f015151848551612126565b60ff83165f908152600460205260408120546001600160a01b03166120a557505f6106cb565b60ff84165f90815260046020819052604091829020549151637bf41d7760e11b81526001600160a01b039092169163f7e83aee916120e79187918791016128e6565b602060405180830381865afa158015612102573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109609190612b3c565b60408051808201909152606081525f60208201528251821115612147575f80fd5b602085015161215683866128ac565b111561218957612189856121798760200151878661217491906128ac565b61220c565b6121849060026129d0565b612222565b5f808651805187602083010193508088870111156121a75787860182525b505050602084015b602084106121e757805182526121c66020836128ac565b91506121d36020826128ac565b90506121e0602085612880565b93506121af565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b5f8183111561221c5750816107e4565b50919050565b815161222e8383611ff7565b50610650838261205a565b60408051610140810182525f8082526020820181905291810182905260608082018390526080820183905260a0820183905260c082019290925260e08101829052610100810182905261012081019190915290565b6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b803560ff811681146122e3575f80fd5b919050565b6001600160a01b03811681146122fc575f80fd5b50565b5f8060408385031215612310575f80fd5b612319836122d3565b91506020830135612329816122e8565b809150509250929050565b803561ffff811681146122e3575f80fd5b5f8083601f840112612355575f80fd5b50813567ffffffffffffffff81111561236c575f80fd5b602083019150836020828501011115612383575f80fd5b9250929050565b5f805f6040848603121561239c575f80fd5b6123a584612334565b9250602084013567ffffffffffffffff8111156123c0575f80fd5b6123cc86828701612345565b9497909650939450505050565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff81118282101715612416576124166123d9565b604052919050565b5f82601f83011261242d575f80fd5b813567ffffffffffffffff811115612447576124476123d9565b61245a601f8201601f19166020016123ed565b81815284602083860101111561246e575f80fd5b816020850160208301375f918101602001919091529392505050565b5f6040828403121561249a575f80fd5b6040516040810167ffffffffffffffff82821081831117156124be576124be6123d9565b8160405282935084359150808211156124d5575f80fd5b6124e18683870161241e565b835260208501359150808211156124f6575f80fd5b506125038582860161241e565b6020830152505092915050565b5f805f805f60a08688031215612524575f80fd5b61252d86612334565b9450602086013567ffffffffffffffff80821115612549575f80fd5b61255589838a0161241e565b9550604088013591508082111561256a575f80fd5b61257689838a0161248a565b9450606088013591508082111561258b575f80fd5b61259789838a0161248a565b935060808801359150808211156125ac575f80fd5b506125b98882890161241e565b9150509295509295909350565b5f602082840312156125d6575f80fd5b81356107e1816122e8565b5f805f80608085870312156125f4575f80fd5b6125fd85612334565b9350602085013567ffffffffffffffff80821115612619575f80fd5b6126258883890161241e565b9450604087013591508082111561263a575f80fd5b6126468883890161248a565b9350606087013591508082111561265b575f80fd5b506126688782880161241e565b91505092959194509250565b5f805f60408486031215612686575f80fd5b833567ffffffffffffffff8082111561269d575f80fd5b818601915086601f8301126126b0575f80fd5b81356020828211156126c4576126c46123d9565b8160051b6126d38282016123ed565b928352848101820192828101908b8511156126ec575f80fd5b83870192505b8483101561272657823586811115612708575f80fd5b6127168d86838b010161248a565b83525091830191908301906126f2565b985050508701359250508082111561273c575f80fd5b506123cc86828701612345565b5f81518084525f5b8181101561276d57602081850181015186830182015201612751565b505f602082860101526020601f19601f83011685010191505092915050565b602081525f6107e16020830184612749565b5f602082840312156127ae575f80fd5b6107e1826122d3565b5f80604083850312156127c8575f80fd5b823567ffffffffffffffff808211156127df575f80fd5b6127eb8683870161248a565b93506020850135915080821115612800575f80fd5b5061280d8582860161241e565b9150509250929050565b818382375f9101908152919050565b634e487b7160e01b5f52603260045260245ffd5b600181811c9082168061284e57607f821691505b60208210810361221c57634e487b7160e01b5f52602260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b818103818111156107e4576107e461286c565b60ff81811683821601908111156107e4576107e461286c565b808201808211156107e4576107e461286c565b600382810b9082900b03637fffffff198112637fffffff821317156107e4576107e461286c565b604081525f6128f86040830185612749565b8281036020840152610a738185612749565b634e487b7160e01b5f52600160045260245ffd5b634e487b7160e01b5f52601260045260245ffd5b5f61ffff808416806129465761294661291e565b92169190910492915050565b60ff82811682821603908111156107e4576107e461286c565b606081525f61297d6060830186612749565b828103602084015261298f8186612749565b91505061ffff83166040830152949350505050565b5f602082840312156129b4575f80fd5b5051919050565b5f816129c9576129c961286c565b505f190190565b80820281158282048414176107e4576107e461286c565b5f826129f5576129f561291e565b500690565b600181815b80851115612a3457815f1904821115612a1a57612a1a61286c565b80851615612a2757918102915b93841c93908002906129ff565b509250929050565b5f82612a4a575060016107e4565b81612a5657505f6107e4565b8160018114612a6c5760028114612a7657612a92565b60019150506107e4565b60ff841115612a8757612a8761286c565b50506001821b6107e4565b5060208310610133831016604e8410600b8410161715612ab5575081810a6107e4565b612abf83836129fa565b805f1904821115612ad257612ad261286c565b029392505050565b5f6107e18383612a3c565b8181035f8312801583831316838312821617156108825761088261286c565b606081525f612b166060830186612749565b8281036020840152612b288186612749565b90508281036040840152611cbc8185612749565b5f60208284031215612b4c575f80fd5b815180151581146107e1575f80fdfe00010203040506070809ffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fffffffffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fa164736f6c6343000818000a","storage":{"0x0":"0xbd","0x1":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1471eb6eb2c5e789fc3de43f8ce62938c7d1836ec861730447e2ada8fd81017b":"0x17cda4e23f7237277952e075b1c48467aabfacc0","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563":"0x2b000100000e1000244a5c080249aac11d7b6f6446702e54a1607371607a","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e564":"0x1a41855200fd2ce1cdde32f24e8fb500002b000100000e1000244f660802e06d","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e565":"0x44b80b8f1d39a95c0b0d7c65d08458e880409bbc683457104237c7f8ec8d0000","0x3617319a054d772f909f7c479a2cebe5066e836a939412e32403c99029b92eff":"0x5155f5627bdf9795b3dbb8887001ada1eeba93f2","0x85aaa47b6dc46495bb8824fad4583769726fea36efd831a35556690b830a8fbe":"0x6e2822b8856749ed179c77140dbc5f5a27410a4","0x91da3fd0782e51c6b3986e9e672fd566868e71f3dbc2d6c2cd6fbb3e361af2a7":"0x49da8861c65460639925febe1fb4b5b59b443082","0x95c6356c1b7a542b884d2484ef785c9c7224e77e1016c20007bddc15c23b452f":"0x3f9151d3fd1a82dcc5091909589900fd60ee767ee090bba000000000","0xabd6e7cb50984ff9c2f3e18a2660c3353dadf4e3291deeb275dae2cd1e44fe05":"0x458f653495fb8d9bd0e7df468c2bf76d26c7bd9"}},"0x9dc64b2558b458a15c7f01c192d874ef460f0a29":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x9df67c91f1bfcb4d966cf764e9218685e7c59e8a":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101d1575f3560e01c80638b95dd71116100fe578063c86902331161009e578063e32954eb1161006e578063e32954eb146104f2578063e59d895d14610505578063e985e9c514610518578063f1cb7e0614610553575f80fd5b8063c869023314610435578063ce3decdc1461048c578063d5fa2b001461049f578063d700ff33146104b2575f80fd5b8063a8fa5682116100d9578063a8fa5682146103ac578063a9784b3e146103bf578063ac9650d814610402578063bc1c58d114610422575f80fd5b80638b95dd7114610373578063a22cb46514610386578063a4b91a0114610399575f80fd5b80633603d758116101745780635c98042b116101445780635c98042b14610327578063623195b01461033a578063691f34311461034d5780637737221314610360575f80fd5b80633603d758146102975780633b3b57de146102aa5780634cbf6ba4146102bd57806359d1d43c14610307575f80fd5b8063124a319c116101af578063124a319c146102255780632203ab561461025057806329cd62ea14610271578063304e6ade14610284575f80fd5b806301ffc9a7146101d55780630af179d7146101fd57806310f13a8c14610212575b5f80fd5b6101e86101e3366004612267565b610566565b60405190151581526020015b60405180910390f35b61021061020b3660046122bd565b610576565b005b610210610220366004612304565b610778565b610238610233366004612377565b610842565b6040516001600160a01b0390911681526020016101f4565b61026361025e3660046123a1565b610a87565b6040516101f492919061240e565b61021061027f366004612426565b610bb5565b6102106102923660046122bd565b610c4d565b6102106102a536600461244f565b610cc6565b6102386102b836600461244f565b610d64565b6101e86102cb3660046123a1565b5f82815260208181526040808320546001600160401b031683526006825280832094835293815283822092825291909152205461ffff16151590565b61031a6103153660046122bd565b610d93565b6040516101f49190612466565b61031a61033536600461244f565b610e6f565b610210610348366004612478565b610f2a565b61031a61035b36600461244f565b610fc2565b61021061036e3660046122bd565b610ffa565b6102106103813660046124da565b611073565b6102106103943660046125b9565b611150565b6102106103a73660046125e3565b61122a565b61031a6103ba36600461261e565b6112f6565b6101e86103cd36600461265a565b6001600160a01b039283165f908152600c60209081526040808320948352938152838220929094168152925290205460ff1690565b6104156104103660046126ce565b611342565b6040516101f4919061270c565b61031a61043036600461244f565b61134f565b61047761044336600461244f565b5f81815260208181526040808320546001600160401b03168352600982528083209383529290522080546001909101549091565b604080519283526020830191909152016101f4565b61021061049a3660046122bd565b611387565b6102106104ad36600461276e565b6114c3565b6104da6104c036600461244f565b5f602081905290815260409020546001600160401b031681565b6040516001600160401b0390911681526020016101f4565b61041561050036600461279c565b6114e9565b6102106105133660046127d6565b6114fe565b6101e8610526366004612808565b6001600160a01b039182165f908152600b6020908152604080832093909416825291909152205460ff1690565b61031a6105613660046123a1565b6115a2565b5f61057082611666565b92915050565b826105808161168a565b610588575f80fd5b5f84815260208181526040808320548151601f87018490048402810184019092528582528392606092839285926001600160401b039091169183916105eb9183918d908d90819084018382808284375f9201919091525092939250506118b79050565b90505b80515160208201511015610712578661ffff165f03610652578060400151965061061781611912565b94508460405160200161062a9190612834565b60405160208183030381529060405280519060200120925061064b81611933565b9350610704565b5f61065c82611912565b9050816040015161ffff168861ffff16141580610680575061067e868261194f565b155b15610702576106db8c878a8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250505060208801518d91506106d2908290612863565b8b51158a61196a565b8160400151975081602001519650809550858051906020012093506106ff82611933565b94505b505b61070d81611bc9565b6105ee565b5083511561076c5761076c8a85888c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c925061076391508290508f612863565b8951158861196a565b50505050505050505050565b846107828161168a565b61078a575f80fd5b5f86815260208181526040808320546001600160401b03168352600a8252808320898452909152908190209051849184916107c89089908990612876565b908152602001604051809103902091826107e3929190612901565b5084846040516107f4929190612876565b6040518091039020867f448bc014f1536726cf8d54ff3d6481ed3cbc683c2591ca204274009afa09b1a18787878760405161083294939291906129e2565b60405180910390a3505050505050565b5f82815260208181526040808320546001600160401b031683526007825280832085845282528083206001600160e01b0319851684529091528120546001600160a01b03168015610894579050610570565b5f61089e85610d64565b90506001600160a01b0381166108b8575f92505050610570565b6040516301ffc9a760e01b60248201525f9081906001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b1790525161090f9190612834565b5f60405180830381855afa9150503d805f8114610947576040519150601f19603f3d011682016040523d82523d5f602084013e61094c565b606091505b509150915081158061095f575060208151105b80610989575080601f8151811061097857610978612a13565b01602001516001600160f81b031916155b1561099a575f945050505050610570565b6040516001600160e01b0319871660248201526001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b179052516109f09190612834565b5f60405180830381855afa9150503d805f8114610a28576040519150601f19603f3d011682016040523d82523d5f602084013e610a2d565b606091505b509092509050811580610a41575060208151105b80610a6b575080601f81518110610a5a57610a5a612a13565b01602001516001600160f81b031916155b15610a7c575f945050505050610570565b509095945050505050565b5f82815260208181526040808320546001600160401b03168352600180835281842086855290925282206060915b848111610b975780851615801590610ae457505f8181526020839052604081208054610ae090612885565b9050115b15610b8f5780825f8381526020019081526020015f20808054610b0690612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610b3290612885565b8015610b7d5780601f10610b5457610100808354040283529160200191610b7d565b820191905f5260205f20905b815481529060010190602001808311610b6057829003601f168201915b50505050509050935093505050610bae565b60011b610ab5565b505f60405180602001604052805f81525092509250505b9250929050565b82610bbf8161168a565b610bc7575f80fd5b60408051808201825284815260208082018581525f888152808352848120546001600160401b031681526009835284812089825283528490209251835551600190920191909155815185815290810184905285917f1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e4691015b60405180910390a250505050565b82610c578161168a565b610c5f575f80fd5b5f84815260208181526040808320546001600160401b03168352600382528083208784529091529020610c93838583612901565b50837fe379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d75788484604051610c3f929190612a27565b80610cd08161168a565b610cd8575f80fd5b5f82815260208190526040812080546001600160401b031691610cfa83612a3a565b82546101009290920a6001600160401b038181021990931691831602179091555f84815260208181526040918290205491519190921681528492507fc6621ccb8f3f5a04bb6502154b2caf6adf5983fe76dfef1cfc9c42e3579db444910160405180910390a25050565b5f80610d7183603c6115a2565b905080515f03610d8357505f92915050565b610d8c81611cae565b9392505050565b5f83815260208181526040808320546001600160401b03168352600a825280832086845290915290819020905160609190610dd19085908590612876565b90815260200160405180910390208054610dea90612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610e1690612885565b8015610e615780601f10610e3857610100808354040283529160200191610e61565b820191905f5260205f20905b815481529060010190602001808311610e4457829003601f168201915b505050505090509392505050565b5f81815260208181526040808320546001600160401b03168352600482528083208484529091529020805460609190610ea790612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610ed390612885565b8015610f1e5780601f10610ef557610100808354040283529160200191610f1e565b820191905f5260205f20905b815481529060010190602001808311610f0157829003601f168201915b50505050509050919050565b83610f348161168a565b610f3c575f80fd5b83610f48600182612863565b1615610f52575f80fd5b5f85815260208181526040808320546001600160401b031683526001825280832088845282528083208784529091529020610f8e838583612901565b50604051849086907faa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe3905f90a35050505050565b5f81815260208181526040808320546001600160401b03168352600882528083208484529091529020805460609190610ea790612885565b826110048161168a565b61100c575f80fd5b5f84815260208181526040808320546001600160401b03168352600882528083208784529091529020611040838583612901565b50837fb7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f78484604051610c3f929190612a27565b8261107d8161168a565b611085575f80fd5b837f65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af75284846040516110b792919061240e565b60405180910390a2603c830361110e57837f52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd26110f284611cae565b6040516001600160a01b03909116815260200160405180910390a25b5f84815260208181526040808320546001600160401b0316835260028252808320878452825280832086845290915290206111498382612a5f565b5050505050565b6001600160a01b03821633036111bf5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084015b60405180910390fd5b335f818152600b602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6001600160a01b03821633036112825760405162461bcd60e51b815260206004820181905260248201527f53657474696e672064656c65676174652073746174757320666f722073656c6660448201526064016111b6565b335f818152600c6020908152604080832087845282528083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519384529286917ff0ddb3b04746704017f9aa8bd728fcc2c1d11675041205350018915f5e4750a0910160405180910390a4505050565b5f83815260208181526040808320546001600160401b03168352600582528083208684528252808320858452825280832061ffff851684529091529020805460609190610dea90612885565b6060610d8c5f8484611ccb565b5f81815260208181526040808320546001600160401b03168352600382528083208484529091529020805460609190610ea790612885565b826113918161168a565b611399575f80fd5b5f84815260208181526040808320546001600160401b031680845260048352818420888552909252822080549192916113d190612885565b80601f01602080910402602001604051908101604052809291908181526020018280546113fd90612885565b80156114485780601f1061141f57610100808354040283529160200191611448565b820191905f5260205f20905b81548152906001019060200180831161142b57829003601f168201915b505050506001600160401b0384165f9081526004602090815260408083208b8452909152902091925061147e9050858783612901565b50857f8f15ed4b723ef428f250961da8315675b507046737e19319fc1a4d81bfe87f858287876040516114b393929190612b1e565b60405180910390a2505050505050565b816114cd8161168a565b6114d5575f80fd5b6114e483603c61038185611e88565b505050565b60606114f6848484611ccb565b949350505050565b826115088161168a565b611510575f80fd5b5f84815260208181526040808320546001600160401b031683526007825280832087845282528083206001600160e01b031987168085529083529281902080546001600160a01b0319166001600160a01b038716908117909155905190815286917f7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa910160405180910390a350505050565b5f82815260208181526040808320546001600160401b0316835260028252808320858452825280832084845290915290208054606091906115e290612885565b80601f016020809104026020016040519081016040528092919081815260200182805461160e90612885565b80156116595780601f1061163057610100808354040283529160200191611659565b820191905f5260205f20905b81548152906001019060200180831161163c57829003601f168201915b5050505050905092915050565b5f6001600160e01b03198216631674750f60e21b1480610570575061057082611eb8565b5f336001600160a01b037f0000000000000000000000004fbf7b2f171336958be5d15ff762a5cff53635681614806116ea5750336001600160a01b037f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5616145b156116f757506001919050565b6040516302571be360e01b8152600481018390525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa15801561175c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117809190612b4d565b90507f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b0316816001600160a01b031603611845576040516331a9108f60e11b8152600481018490527f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b031690636352211e90602401602060405180830381865afa15801561181e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118429190612b4d565b90505b6001600160a01b03811633148061187e57506001600160a01b0381165f908152600b6020908152604080832033845290915290205460ff165b80610d8c57506001600160a01b0381165f908152600c60209081526040808320868452825280832033845290915290205460ff16610d8c565b6118ff6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261057081611bc9565b602081015181516060916105709161192a9082611edc565b84519190611f33565b60a081015160c08201516060916105709161192a908290612863565b5f81518351148015610d8c5750610d8c835f845f8751611fa7565b865160208801205f61197d878787611f33565b90508315611aa1576001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c168452909152902080546119c690612885565b159050611a23576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611a0783612b68565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091528120611a62916121f9565b897f03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a12078a8a604051611a94929190612b84565b60405180910390a261076c565b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c16845290915290208054611ae290612885565b90505f03611b40576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611b2483612ba9565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091529020611b808282612a5f565b50897f52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b8a8a84604051611bb593929190612bbf565b60405180910390a250505050505050505050565b60c08101516020820181905281515111611be05750565b5f611bf2825f01518360200151611edc565b8260200151611c019190612bed565b8251909150611c109082611fc9565b61ffff166040830152611c24600282612bed565b8251909150611c339082611fc9565b61ffff166060830152611c47600282612bed565b8251909150611c569082611fef565b63ffffffff166080830152611c6c600482612bed565b82519091505f90611c7d9083611fc9565b61ffff169050611c8e600283612bed565b60a084018190529150611ca18183612bed565b60c0909301929092525050565b5f8151601414611cbc575f80fd5b5060200151600160601b900490565b6060816001600160401b03811115611ce557611ce56124c6565b604051908082528060200260200182016040528015611d1857816020015b6060815260200190600190039081611d035790505b5090505f5b82811015611e80578415611dd8575f848483818110611d3e57611d3e612a13565b9050602002810190611d509190612c00565b611d5f91602491600491612c42565b611d6891612c69565b9050858114611dd65760405162461bcd60e51b815260206004820152603460248201527f6d756c746963616c6c3a20416c6c207265636f726473206d7573742068617665604482015273040c240dac2e8c6d0d2dcce40dcc2dacad0c2e6d60631b60648201526084016111b6565b505b5f8030868685818110611ded57611ded612a13565b9050602002810190611dff9190612c00565b604051611e0d929190612876565b5f60405180830381855af49150503d805f8114611e45576040519150601f19603f3d011682016040523d82523d5f602084013e611e4a565b606091505b509150915081611e58575f80fd5b80848481518110611e6b57611e6b612a13565b60209081029190910101525050600101611d1d565b509392505050565b604080516014808252818301909252606091602082018180368337505050600160601b9290920260208301525090565b5f6001600160e01b0319821663c869023360e01b1480610570575061057082612017565b5f815b83518110611eef57611eef612c86565b5f611efa858361203b565b60ff169050611f0a816001612bed565b611f149083612bed565b9150805f03611f235750611f29565b50611edf565b6114f68382612863565b8251606090611f428385612bed565b1115611f4c575f80fd5b5f826001600160401b03811115611f6557611f656124c6565b6040519080825280601f01601f191660200182016040528015611f8f576020820181803683370190505b50905060208082019086860101610a7c82828761205e565b5f611fb38484846120b3565b611fbe8787856120b3565b149695505050505050565b81515f90611fd8836002612bed565b1115611fe2575f80fd5b50016002015161ffff1690565b81515f90611ffe836004612bed565b1115612008575f80fd5b50016004015163ffffffff1690565b5f6001600160e01b0319821663691f343160e01b14806105705750610570826120d5565b5f82828151811061204e5761204e612a13565b016020015160f81c905092915050565b602081106120965781518352612075602084612bed565b9250612082602083612bed565b915061208f602082612863565b905061205e565b905182516020929092036101000a5f190180199091169116179052565b82515f906120c18385612bed565b11156120cb575f80fd5b5091016020012090565b5f6001600160e01b031982166304928c6760e21b14806105705750610570825f6001600160e01b0319821663547d2b4160e11b148061212457506001600160e01b03198216635c98042b60e01b145b806105705750610570825f6001600160e01b0319821663bc1c58d160e01b14806105705750610570825f6001600160e01b03198216631d9dabef60e11b148061217d57506001600160e01b031982166378e5bf0360e11b145b806105705750610570825f6001600160e01b03198216631101d5ab60e11b14806105705750610570825f6001600160e01b0319821663d700ff3360e01b14806105705750610570825f6001600160e01b03198216634fbf043360e01b148061057057506301ffc9a760e01b6001600160e01b0319831614610570565b50805461220590612885565b5f825580601f10612214575050565b601f0160209004905f5260205f20908101906122309190612233565b50565b5b80821115612247575f8155600101612234565b5090565b80356001600160e01b031981168114612262575f80fd5b919050565b5f60208284031215612277575f80fd5b610d8c8261224b565b5f8083601f840112612290575f80fd5b5081356001600160401b038111156122a6575f80fd5b602083019150836020828501011115610bae575f80fd5b5f805f604084860312156122cf575f80fd5b8335925060208401356001600160401b038111156122eb575f80fd5b6122f786828701612280565b9497909650939450505050565b5f805f805f60608688031215612318575f80fd5b8535945060208601356001600160401b0380821115612335575f80fd5b61234189838a01612280565b90965094506040880135915080821115612359575f80fd5b5061236688828901612280565b969995985093965092949392505050565b5f8060408385031215612388575f80fd5b823591506123986020840161224b565b90509250929050565b5f80604083850312156123b2575f80fd5b50508035926020909101359150565b5f5b838110156123db5781810151838201526020016123c3565b50505f910152565b5f81518084526123fa8160208601602086016123c1565b601f01601f19169290920160200192915050565b828152604060208201525f6114f660408301846123e3565b5f805f60608486031215612438575f80fd5b505081359360208301359350604090920135919050565b5f6020828403121561245f575f80fd5b5035919050565b602081525f610d8c60208301846123e3565b5f805f806060858703121561248b575f80fd5b843593506020850135925060408501356001600160401b038111156124ae575f80fd5b6124ba87828801612280565b95989497509550505050565b634e487b7160e01b5f52604160045260245ffd5b5f805f606084860312156124ec575f80fd5b833592506020840135915060408401356001600160401b0380821115612510575f80fd5b818601915086601f830112612523575f80fd5b813581811115612535576125356124c6565b604051601f8201601f19908116603f0116810190838211818310171561255d5761255d6124c6565b81604052828152896020848701011115612575575f80fd5b826020860160208301375f6020848301015280955050505050509250925092565b6001600160a01b0381168114612230575f80fd5b80358015158114612262575f80fd5b5f80604083850312156125ca575f80fd5b82356125d581612596565b9150612398602084016125aa565b5f805f606084860312156125f5575f80fd5b83359250602084013561260781612596565b9150612615604085016125aa565b90509250925092565b5f805f60608486031215612630575f80fd5b8335925060208401359150604084013561ffff8116811461264f575f80fd5b809150509250925092565b5f805f6060848603121561266c575f80fd5b833561267781612596565b925060208401359150604084013561264f81612596565b5f8083601f84011261269e575f80fd5b5081356001600160401b038111156126b4575f80fd5b6020830191508360208260051b8501011115610bae575f80fd5b5f80602083850312156126df575f80fd5b82356001600160401b038111156126f4575f80fd5b6127008582860161268e565b90969095509350505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b8281101561276157603f1988860301845261274f8583516123e3565b94509285019290850190600101612733565b5092979650505050505050565b5f806040838503121561277f575f80fd5b82359150602083013561279181612596565b809150509250929050565b5f805f604084860312156127ae575f80fd5b8335925060208401356001600160401b038111156127ca575f80fd5b6122f78682870161268e565b5f805f606084860312156127e8575f80fd5b833592506127f86020850161224b565b9150604084013561264f81612596565b5f8060408385031215612819575f80fd5b823561282481612596565b9150602083013561279181612596565b5f82516128458184602087016123c1565b9190910192915050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156105705761057061284f565b818382375f9101908152919050565b600181811c9082168061289957607f821691505b6020821081036128b757634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156114e457805f5260205f20601f840160051c810160208510156128e25750805b601f840160051c820191505b81811015611149575f81556001016128ee565b6001600160401b03831115612918576129186124c6565b61292c836129268354612885565b836128bd565b5f601f84116001811461295d575f85156129465750838201355b5f19600387901b1c1916600186901b178355611149565b5f83815260208120601f198716915b8281101561298c578685013582556020948501946001909201910161296c565b50868210156129a8575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b604081525f6129f56040830186886129ba565b8281036020840152612a088185876129ba565b979650505050505050565b634e487b7160e01b5f52603260045260245ffd5b602081525f6114f66020830184866129ba565b5f6001600160401b03808316818103612a5557612a5561284f565b6001019392505050565b81516001600160401b03811115612a7857612a786124c6565b612a8c81612a868454612885565b846128bd565b602080601f831160018114612abf575f8415612aa85750858301515b5f19600386901b1c1916600185901b178555612b16565b5f85815260208120601f198616915b82811015612aed57888601518255948401946001909101908401612ace565b5085821015612b0a57878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b604081525f612b3060408301866123e3565b8281036020840152612b438185876129ba565b9695505050505050565b5f60208284031215612b5d575f80fd5b8151610d8c81612596565b5f61ffff821680612b7b57612b7b61284f565b5f190192915050565b604081525f612b9660408301856123e3565b905061ffff831660208301529392505050565b5f61ffff808316818103612a5557612a5561284f565b606081525f612bd160608301866123e3565b61ffff851660208401528281036040840152612b4381856123e3565b808201808211156105705761057061284f565b5f808335601e19843603018112612c15575f80fd5b8301803591506001600160401b03821115612c2e575f80fd5b602001915036819003821315610bae575f80fd5b5f8085851115612c50575f80fd5b83861115612c5c575f80fd5b5050820193919092039150565b80356020831015610570575f19602084900360031b1b1692915050565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{}},"0xa06a63155145b7f2fda96d9658ec7fef3b9dcf76":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b506004361061004a575f3560e01c80634ce34aa21461004e578063899e104c1461007e5780638df25d9214610091578063c4e8fcb5146100a4575b5f80fd5b61006161005c366004610834565b6100b9565b6040516001600160e01b0319909116815260200160405180910390f35b61006161008c3660046108b4565b610121565b61006161009f36600461091b565b61018a565b6100b76100b2366004610969565b6101c7565b005b5f335f525f60205260405f20546100dd576349ed56f960e11b5f523360045260245ffd5b815f5b81811015610110576101088585838181106100fd576100fd6109a2565b905060c002016102c4565b6001016100e0565b50632671a55160e11b949350505050565b5f335f525f60205260405f2054610145576349ed56f960e11b5f523360045260245ffd5b835f5b8181101561016d576101658787838181106100fd576100fd6109a2565b600101610148565b506101788484610436565b50632267841360e21b95945050505050565b5f335f525f60205260405f20546101ae576349ed56f960e11b5f523360045260245ffd5b6101b88383610436565b506346f92ec960e11b92915050565b336001600160a01b037f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c1614610210576040516336abb4df60e11b815260040160405180910390fd5b6001600160a01b0382165f9081526020819052604090205481151560ff909116151503610268576040516349271a0f60e11b81526001600160a01b038316600482015281151560248201526044015b60405180910390fd5b6001600160a01b0382165f8181526020818152604091829020805460ff191685151590811790915591519182527fae63067d43ac07563b7eb8db6595635fc77f1578a2a5ea06ba91b63e2afa37e2910160405180910390a25050565b60016102d360208301836109ca565b60038111156102e4576102e46109b6565b03610329576103266102fc60408301602084016109ef565b61030c60608401604085016109ef565b61031c60808501606086016109ef565b8460a0013561056c565b50565b600261033860208301836109ca565b6003811115610349576103496109b6565b036103b6578060a00135600114610379576040516369f9582760e01b815260a0820135600482015260240161025f565b61032661038c60408301602084016109ef565b61039c60608401604085016109ef565b6103ac60808501606086016109ef565b8460800135610660565b60036103c560208301836109ca565b60038111156103d6576103d66109b6565b0361041d576103266103ee60408301602084016109ef565b6103fe60608401604085016109ef565b61040e60808501606086016109ef565b84608001358560a00135610715565b604051631e4cbc7f60e21b815260040160405180910390fd5b808280631759616b60e11b6020525f5b8381101561055f57823582018035803b61046b57635f15d6725f52806020526024601cfd5b60a08201358060051b60c0018060808501351460a0606086013514168185013583141615905080156104a657633ae8821360e21b5f5260045ffd5b506020860195506080602084016024378060061b60400190508060a00160a4525f8160c401528060c4018160a0850160c4375f808260205f875af1935083610550573d1561053057601f3d0160051c91508060051c826003028184111561051a578184036003028280028580020360091c01015b5a60208201101561052d573d5f803e3d5ffd5b50505b6357e222f160e11b5f528260045260c0606452608451602001608452805ffd5b50505050600181019050610446565b5050505060806040525050565b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166106515780873b15151661065157806106405781610623573d1561060257601f3d0160051c8360051c81600302818311156105eb578183036003028280028480020360091c01015b5a6020820110156105fe573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b833b61067757635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af180610707573d156106e557601f3d0160051c8260051c81600302818311156106ce578183036003028280028480020360091c01015b5a6020820110156106e1573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b61072c57635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af1806107d1573d156107b057601f3d0160051c8560051c8160030281831115610799578183036003028280028480020360091c01015b5a6020820110156107ac573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b5f8083601f8401126107fc575f80fd5b50813567ffffffffffffffff811115610813575f80fd5b60208301915083602060c08302850101111561082d575f80fd5b9250929050565b5f8060208385031215610845575f80fd5b823567ffffffffffffffff81111561085b575f80fd5b610867858286016107ec565b90969095509350505050565b5f8083601f840112610883575f80fd5b50813567ffffffffffffffff81111561089a575f80fd5b6020830191508360208260051b850101111561082d575f80fd5b5f805f80604085870312156108c7575f80fd5b843567ffffffffffffffff808211156108de575f80fd5b6108ea888389016107ec565b90965094506020870135915080821115610902575f80fd5b5061090f87828801610873565b95989497509550505050565b5f806020838503121561092c575f80fd5b823567ffffffffffffffff811115610942575f80fd5b61086785828601610873565b80356001600160a01b0381168114610964575f80fd5b919050565b5f806040838503121561097a575f80fd5b6109838361094e565b915060208301358015158114610997575f80fd5b809150509250929050565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52602160045260245ffd5b5f602082840312156109da575f80fd5b8135600481106109e8575f80fd5b9392505050565b5f602082840312156109ff575f80fd5b6109e88261094e56fea164736f6c6343000818000a","storage":{}},"0xaa33d7188eb4b4a51c37199eaad2f73cf2bf0204":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0xac52f68f31577e44ae0c7e95a42dc9eb574b9383":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a424740014610090575b600080fd5b610059610054366004610cac565b6100b3565b6040516100669190610d9b565b60405180910390f35b61008261007d366004610dae565b610162565b604051908152602001610066565b6100a361009e366004610cac565b6101d6565b6040519015158152602001610066565b606060005a90506101576100ca6020870187610ddc565b6001546001600160a01b03166040880135846100e960608b018b610df9565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061023592505050565b9150505b9392505050565b600154604051636ccbae5f60e01b8152600481018390526000916001600160a01b031690636ccbae5f90602401602060405180830381865afa1580156101ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d09190610e40565b92915050565b600061022d6101e485610ef1565b600154604080516020601f88018190048102820181019092528681526001600160a01b039092169190879087908190840183828082843760009201919091525061030d92505050565b949350505050565b6060600080876001600160a01b0316866102518b8a8989610355565b60405161025e9190610f9b565b60006040518083038160008787f1925050503d806000811461029c576040519150601f19603f3d011682016040523d82523d6000602084013e6102a1565b606091505b5090925090506102b2603f87610fb7565b5a116102c0576102c0610fd9565b61030082826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061040a565b9998505050505050505050565b600061031a848484610443565b801561022d575060608401516020908101516001600160e01b031990811660009081529182905260409091205460e01b16151561022d565b50565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036103e75760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526103ff82828661058c565b979650505050505050565b6060831561041957508161015b565b8251156104295782518084602001fd5b8160405162461bcd60e51b81526004016103de9190610d9b565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561048a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104ae9190610e40565b9050600061055c8660600151805190602001208688602001516040516020016104fc9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561058257508551610582906001600160a01b03168286610a38565b9695505050505050565b60606001600160e01b03198416631de5861160e31b0361061a576000806000858060200190518101906105bf9190610fef565b92509250925086838383886040516024016105dd9493929190611032565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152935061015b92505050565b6001600160e01b03198416636debcb8d60e01b0361064b576000806000858060200190518101906105bf9190610fef565b6001600160e01b0319841663280d9b0560e01b036106dd576000806000808680602001905181019061067d91906110aa565b935093509350935087848484848a60405160240161069f959493929190611118565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152945061015b9350505050565b6001600160e01b031984166361603dd960e01b0361075c5760008380602001905181019061070b9190610e40565b905084818460405160240161072192919061115d565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152915061015b9050565b6001600160e01b0319841663b34f33c560e01b036107ab5760008060008580602001905181019061078d9190611176565b92509250925086838383886040516024016105dd94939291906111d0565b6001600160e01b03198416633013529360e01b036107dc5760008060008580602001905181019061078d9190611176565b6001600160e01b031984166307eca39560e01b03610830576000806000808680602001905181019061080e9190611209565b935093509350935087848484848a60405160240161069f95949392919061127e565b6001600160e01b031984166368b6154f60e01b03610862576000806000808680602001905181019061067d91906110aa565b6001600160e01b0319841663341de35b60e21b03610894576000806000808680602001905181019061067d91906110aa565b6001600160e01b03198416637a84860f60e11b0361092d576000806000806000878060200190518101906108c891906112cb565b945094509450945094508885858585858c6040516024016108ee96959493929190611360565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152955061015b945050505050565b6001600160e01b03198416636fab95b360e01b036109b2576000808480602001905181019061095c91906113b9565b915091508582828660405160240161097693929190611400565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925061015b915050565b6001600160e01b0319841663288f888960e11b0361015b57600080848060200190518101906109e1919061142b565b91509150858282866040516024016109fb93929190611459565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925050509392505050565b6000806000610a478585610b7a565b90925090506000816004811115610a6057610a60611489565b148015610a7e5750856001600160a01b0316826001600160a01b0316145b15610a8e5760019250505061015b565b600080876001600160a01b0316631626ba7e60e01b8888604051602401610ab692919061115d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051610af49190610f9b565b600060405180830381855afa9150503d8060008114610b2f576040519150601f19603f3d011682016040523d82523d6000602084013e610b34565b606091505b5091509150818015610b47575080516020145b8015610b6e57508051630b135d3f60e11b90610b6c9083016020908101908401610e40565b145b98975050505050505050565b6000808251604103610bb05760208301516040840151606085015160001a610ba487828585610bbf565b94509450505050610bb8565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610bf65750600090506003610ca3565b8460ff16601b14158015610c0e57508460ff16601c14155b15610c1f5750600090506004610ca3565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610c73573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610c9c57600060019250925050610ca3565b9150600090505b94509492505050565b600080600060408486031215610cc157600080fd5b833567ffffffffffffffff80821115610cd957600080fd5b9085019060808288031215610ced57600080fd5b90935060208501359080821115610d0357600080fd5b818601915086601f830112610d1757600080fd5b813581811115610d2657600080fd5b876020828501011115610d3857600080fd5b6020830194508093505050509250925092565b60005b83811015610d66578181015183820152602001610d4e565b50506000910152565b60008151808452610d87816020860160208601610d4b565b601f01601f19169290920160200192915050565b60208152600061015b6020830184610d6f565b600060208284031215610dc057600080fd5b5035919050565b6001600160a01b038116811461035257600080fd5b600060208284031215610dee57600080fd5b813561015b81610dc7565b6000808335601e19843603018112610e1057600080fd5b83018035915067ffffffffffffffff821115610e2b57600080fd5b602001915036819003821315610bb857600080fd5b600060208284031215610e5257600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610e9257610e92610e59565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ec157610ec1610e59565b604052919050565b600067ffffffffffffffff821115610ee357610ee3610e59565b50601f01601f191660200190565b600060808236031215610f0357600080fd5b610f0b610e6f565b8235610f1681610dc7565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610f4657600080fd5b840136601f820112610f5757600080fd5b8035610f6a610f6582610ec9565b610e98565b8181523684838501011115610f7e57600080fd5b818484018583013760009181019093015250606082015292915050565b60008251610fad818460208701610d4b565b9190910192915050565b600082610fd457634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b60008060006060848603121561100457600080fd5b835161100f81610dc7565b602085015190935061102081610dc7565b80925050604084015190509250925092565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061058290830184610d6f565b600082601f83011261107657600080fd5b8151611084610f6582610ec9565b81815284602083860101111561109957600080fd5b61022d826020830160208701610d4b565b600080600080608085870312156110c057600080fd5b84516110cb81610dc7565b60208601519094506110dc81610dc7565b60408601516060870151919450925067ffffffffffffffff81111561110057600080fd5b61110c87828801611065565b91505092959194509250565b6001600160a01b038681168252851660208201526040810184905260a06060820181905260009061114b90830185610d6f565b8281036080840152610b6e8185610d6f565b82815260406020820152600061022d6040830184610d6f565b60008060006060848603121561118b57600080fd5b835161119681610dc7565b60208501516040860151919450925067ffffffffffffffff8111156111ba57600080fd5b6111c686828701611065565b9150509250925092565b60018060a01b03851681528360208201526080604082015260006111f76080830185610d6f565b82810360608401526103ff8185610d6f565b6000806000806080858703121561121f57600080fd5b845161122a81610dc7565b60208601516040870151919550935067ffffffffffffffff8082111561124f57600080fd5b61125b88838901611065565b9350606087015191508082111561127157600080fd5b5061110c87828801611065565b60018060a01b038616815284602082015260a0604082015260006112a560a0830186610d6f565b82810360608401526112b78186610d6f565b90508281036080840152610b6e8185610d6f565b600080600080600060a086880312156112e357600080fd5b85516112ee81610dc7565b60208701519095506112ff81610dc7565b60408701516060880151919550935067ffffffffffffffff8082111561132457600080fd5b61133089838a01611065565b9350608088015191508082111561134657600080fd5b5061135388828901611065565b9150509295509295909350565b6001600160a01b038781168252861660208201526040810185905260c06060820181905260009061139390830186610d6f565b82810360808401526113a58186610d6f565b905082810360a08401526103008185610d6f565b600080604083850312156113cc57600080fd5b82519150602083015167ffffffffffffffff8111156113ea57600080fd5b6113f685828601611065565b9150509250929050565b8381526060602082015260006114196060830185610d6f565b82810360408401526105828185610d6f565b6000806040838503121561143e57600080fd5b825161144981610dc7565b6020939093015192949293505050565b60018060a01b03841681528260208201526060604082015260006114806060830184610d6f565b95945050505050565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a","storage":{"0x1":"0x7bb6cd9be29fab783c0b494a06fed8b2e2596b7a","0xd8b896d609e853134f3f02ce62d8049b2fdfe9356134f6d548fb1beda30db79":"0x30135293","0x4f457f36b92dc6b16c281e5877e2d8d39630135c1b7246fa9174035e1efcefbd":"0x6fab95b3","0x6b7ba3fe9941e089de60543da4a1deaef065baa963222951b2f9a138f9960820":"0x6debcb8d","0x70cff8e4ee4af5aa154324d45bcf258212c235bbe79f0707bb6273110ef4e13a":"0xf5090c1e","0x73efb0e44094dbabc6bbeecd3be1d81f272157c2dae2d647e6315f150b0b1dd2":"0xd0778d6c","0x8b1c4edded6644848281eab03ac2c319242d62b2057cffa3dd4540715bbc155e":"0xef2c3088","0xbeb5ea8fc2aeae43b7170220434aa4429fb067f0866ae25514b29f647641ca8c":"0x511f1112","0xca659f6eb372ce950e69d4d474290a6a4285f6a06a6128ca9f45419371a1e997":"0xb34f33c5","0xd12e300b5f35ba5198dd81dab97a512a154a0ad0e2cda788abdc22deba64f2a7":"0x280d9b05","0xd5453e7f4fff276a1d42f717d1db50865c284ae707a15bd6a590a3895656f27c":"0x7eca395","0xea2575ae4056f10294a848ca5ed6d215dffd1b80838142770bc441f7df607d71":"0x61603dd9","0xf8ca3ef1e3d09a0d88e209301f12626c90bec3ea586d4bce2c7a58e7eae8278f":"0x68b6154f"}},"0xb17aae5b3a7815433fc82cfd67ea245767894f03":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061012a5760003560e01c80638d839ffe116100ab578063aeb8ce9b1161006f578063aeb8ce9b146105d7578063ce1e09c014610688578063f14fcbc81461069d578063f2fde38b146106c7578063f49826be146106fa578063f7a16963146107b95761012a565b80638d839ffe1461045d5780638da5cb5b146104725780638f32d59b146104a35780639791c097146104b8578063acf1a841146105695761012a565b80637e324479116100f25780637e324479146102b8578063839df945146102e857806383e7f6ff1461031257806385f6d155146103c55780638a95b09f146104485761012a565b806301ffc9a71461012f5780633ccfd60b146101775780633d86c52f1461018e578063530e784f14610270578063715018a6146102a3575b600080fd5b34801561013b57600080fd5b506101636004803603602081101561015257600080fd5b50356001600160e01b031916610881565b604080519115158252519081900360200190f35b34801561018357600080fd5b5061018c610a12565b005b34801561019a57600080fd5b5061025e600480360360a08110156101b157600080fd5b810190602081018135600160201b8111156101cb57600080fd5b8201836020820111156101dd57600080fd5b803590602001918460018302840111600160201b831117156101fe57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b0383358116945060208401359360408101358216935060600135169050610a53565b60408051918252519081900360200190f35b34801561027c57600080fd5b5061018c6004803603602081101561029357600080fd5b50356001600160a01b0316610b42565b3480156102af57600080fd5b5061018c610ba3565b3480156102c457600080fd5b5061018c600480360360408110156102db57600080fd5b5080359060200135610bfe565b3480156102f457600080fd5b5061025e6004803603602081101561030b57600080fd5b5035610c1a565b34801561031e57600080fd5b5061025e6004803603604081101561033557600080fd5b810190602081018135600160201b81111561034f57600080fd5b82018360208201111561036157600080fd5b803590602001918460018302840111600160201b8311171561038257600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505091359250610c2c915050565b61018c600480360360808110156103db57600080fd5b810190602081018135600160201b8111156103f557600080fd5b82018360208201111561040757600080fd5b803590602001918460018302840111600160201b8311171561042857600080fd5b91935091506001600160a01b038135169060208101359060400135610d9e565b34801561045457600080fd5b5061025e610de9565b34801561046957600080fd5b5061025e610df0565b34801561047e57600080fd5b50610487610df6565b604080516001600160a01b039092168252519081900360200190f35b3480156104af57600080fd5b50610163610e05565b3480156104c457600080fd5b50610163600480360360208110156104db57600080fd5b810190602081018135600160201b8111156104f557600080fd5b82018360208201111561050757600080fd5b803590602001918460018302840111600160201b8311171561052857600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610e16945050505050565b61018c6004803603604081101561057f57600080fd5b810190602081018135600160201b81111561059957600080fd5b8201836020820111156105ab57600080fd5b803590602001918460018302840111600160201b831117156105cc57600080fd5b919350915035610e2b565b3480156105e357600080fd5b50610163600480360360208110156105fa57600080fd5b810190602081018135600160201b81111561061457600080fd5b82018360208201111561062657600080fd5b803590602001918460018302840111600160201b8311171561064757600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610fcf945050505050565b34801561069457600080fd5b5061025e611069565b3480156106a957600080fd5b5061018c600480360360208110156106c057600080fd5b503561106f565b3480156106d357600080fd5b5061018c600480360360208110156106ea57600080fd5b50356001600160a01b03166110a1565b34801561070657600080fd5b5061025e6004803603606081101561071d57600080fd5b810190602081018135600160201b81111561073757600080fd5b82018360208201111561074957600080fd5b803590602001918460018302840111600160201b8311171561076a57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b0383351693505050602001356110bb565b61018c600480360360c08110156107cf57600080fd5b810190602081018135600160201b8111156107e957600080fd5b8201836020820111156107fb57600080fd5b803590602001918460018302840111600160201b8311171561081c57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b038335811694506020840135936040810135935060608101358216925060800135166110d3565b604080517f737570706f727473496e74657266616365286279746573342900000000000000815290519081900360190190206000906001600160e01b0319838116911614806109c05750604080517472656e657728737472696e672c75696e743235362960581b815290519081900360150181209080602861186a8239604080519182900360280182206e636f6d6d697428627974657333322960881b8352905191829003600f01822090925090806026611892823960260190506040518091039020604051808070617661696c61626c6528737472696e672960781b8152506011019050604051809103902060405180807f72656e74507269636528737472696e672c75696e7432353629000000000000008152506019019050604051809103902018181818186001600160e01b031916826001600160e01b031916145b80610a0c5750604051808061182a60409139604080519182900301812091508060426118b8823960420190506040518091039020186001600160e01b031916826001600160e01b031916145b92915050565b610a1a610e05565b610a2357600080fd5b6040513390303180156108fc02916000818181858888f19350505050158015610a50573d6000803e3d6000fd5b50565b845160208601206000906001600160a01b038416158015610a7b57506001600160a01b038316155b15610acb57604080516020808201939093526bffffffffffffffffffffffff19606089901b1681830152605480820188905282518083039091018152607490910190915280519101209050610b39565b6001600160a01b038416610ade57600080fd5b604080516020808201939093526bffffffffffffffffffffffff19606089811b82168385015287811b8216605484015286901b166068820152607c80820188905282518083039091018152609c909101909152805191012090505b95945050505050565b610b4a610e05565b610b5357600080fd5b600280546001600160a01b0319166001600160a01b0383811691909117918290556040519116907ff261845a790fe29bbd6631e2ca4a5bdc83e6eed7c3271d9590d97287e00e912390600090a250565b610bab610e05565b610bb457600080fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b610c06610e05565b610c0f57600080fd5b600391909155600455565b60056020526000908152604090205481565b815160208084019190912060025460015460408051636b727d4360e11b81526004810185905290516000956001600160a01b03948516946350e9a715948a9491169263d6e4fa8692602480840193919291829003018186803b158015610c9157600080fd5b505afa158015610ca5573d6000803e3d6000fd5b505050506040513d6020811015610cbb57600080fd5b50516040516001600160e01b031960e085901b168152602481018290526044810188905260606004820190815283516064830152835189928291608490910190602087019080838360005b83811015610d1e578181015183820152602001610d06565b50505050905090810190601f168015610d4b5780820380516001836020036101000a031916815260200191505b5094505050505060206040518083038186803b158015610d6a57600080fd5b505afa158015610d7e573d6000803e3d6000fd5b505050506040513d6020811015610d9457600080fd5b5051949350505050565b610de285858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250889350879250869150806110d3565b5050505050565b6224ea0081565b60035481565b6000546001600160a01b031690565b6000546001600160a01b0316331490565b60006003610e2383611646565b101592915050565b6000610e6e84848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250869250610c2c915050565b905080341015610e7d57600080fd5b60008484604051808383808284376040805193909101839003832060015463c475abff60e01b855260048501829052602485018b90529151909750600096506001600160a01b03909116945063c475abff93506044808401936020935082900301818787803b158015610eef57600080fd5b505af1158015610f03573d6000803e3d6000fd5b505050506040513d6020811015610f1957600080fd5b5051905034831015610f565760405133903485900380156108fc02916000818181858888f19350505050158015610f54573d6000803e3d6000fd5b505b817f3da24c024582931cfaf8267d8ed24d13a82a8068d5bd337d30ec45cea4e506ae8787868560405180806020018481526020018381526020018281038252868682818152602001925080828437600083820152604051601f909101601f191690920182900397509095505050505050a2505050505050565b80516020820120600090610fe283610e16565b80156110625750600154604080516312dc929d60e31b81526004810184905290516001600160a01b03909216916396e494e891602480820192602092909190829003018186803b15801561103557600080fd5b505afa158015611049573d6000803e3d6000fd5b505050506040513d602081101561105f57600080fd5b50515b9392505050565b60045481565b6004546000828152600560205260409020544291011061108e57600080fd5b6000908152600560205260409020429055565b6110a9610e05565b6110b257600080fd5b610a508161172e565b60006110cb848484600080610a53565b949350505050565b60006110e28787868686610a53565b905060006110f188878461179c565b885160208a01209091508060006001600160a01b038716156114ac5760015460408051633f2891eb60e21b815260048101859052306024820152604481018c905290516001600160a01b039092169163fca247ac916064808201926020929091908290030181600087803b15801561116857600080fd5b505af115801561117c573d6000803e3d6000fd5b505050506040513d602081101561119257600080fd5b505160015460408051630ddf7fcb60e41b815290519293506000926001600160a01b039092169163ddf7fcb091600480820192602092909190829003018186803b1580156111df57600080fd5b505afa1580156111f3573d6000803e3d6000fd5b505050506040513d602081101561120957600080fd5b50516040805160208181019390935280820187905281518082038301815260608201808452815191850191909120600154633f15457f60e01b90925292519294506001600160a01b031692633f15457f92606480840193829003018186803b15801561127457600080fd5b505afa158015611288573d6000803e3d6000fd5b505050506040513d602081101561129e57600080fd5b505160408051630c4b7b8560e11b8152600481018490526001600160a01b038b8116602483015291519190921691631896f70a91604480830192600092919082900301818387803b1580156112f257600080fd5b505af1158015611306573d6000803e3d6000fd5b505050506001600160a01b0387161561139257876001600160a01b031663d5fa2b0082896040518363ffffffff1660e01b815260040180838152602001826001600160a01b03166001600160a01b0316815260200192505050600060405180830381600087803b15801561137957600080fd5b505af115801561138d573d6000803e3d6000fd5b505050505b60015460408051630a3b53db60e21b8152600481018690526001600160a01b038e81166024830152915191909216916328ed4f6c91604480830192600092919082900301818387803b1580156113e757600080fd5b505af11580156113fb573d6000803e3d6000fd5b50505050600160009054906101000a90046001600160a01b03166001600160a01b03166323b872dd308d866040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050600060405180830381600087803b15801561148e57600080fd5b505af11580156114a2573d6000803e3d6000fd5b505050505061154c565b6001600160a01b038616156114c057600080fd5b60015460408051633f2891eb60e21b8152600481018590526001600160a01b038d81166024830152604482018d90529151919092169163fca247ac9160648083019260209291908290030181600087803b15801561151d57600080fd5b505af1158015611531573d6000803e3d6000fd5b505050506040513d602081101561154757600080fd5b505190505b896001600160a01b0316837fca6abbe9d7f11422cb6ca7629fbf6fe9efb1c621f71ce8f02b9f2a230097404f8d87856040518080602001848152602001838152602001828103825285818151815260200191508051906020019080838360005b838110156115c45781810151838201526020016115ac565b50505050905090810190601f1680156115f15780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a3833411156116395760405133903486900380156108fc02916000818181858888f19350505050158015611637573d6000803e3d6000fd5b505b5050505050505050505050565b8051600090819081905b8082101561172557600085838151811061166657fe5b01602001516001600160f81b0319169050600160ff1b81101561168e57600183019250611719565b600760fd1b6001600160f81b0319821610156116af57600283019250611719565b600f60fc1b6001600160f81b0319821610156116d057600383019250611719565b601f60fb1b6001600160f81b0319821610156116f157600483019250611719565b603f60fa1b6001600160f81b03198216101561171257600583019250611719565b6006830192505b50600190920191611650565b50909392505050565b6001600160a01b03811661174157600080fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b600354600082815260056020526040812054909142910111156117be57600080fd5b600454600083815260056020526040902054429101116117dd57600080fd5b6117e684610fcf565b6117ef57600080fd5b600082815260056020526040812081905561180a8585610c2c565b90506224ea0084101561181c57600080fd5b803410156110cb57600080fdfe6d616b65436f6d6d69746d656e7457697468436f6e66696728737472696e672c616464726573732c627974657333322c616464726573732c6164647265737329726567697374657228737472696e672c616464726573732c75696e743235362c62797465733332296d616b65436f6d6d69746d656e7428737472696e672c616464726573732c6279746573333229726567697374657257697468436f6e66696728737472696e672c616464726573732c75696e743235362c627974657333322c616464726573732c6164647265737329a265627a7a72315820ba74b4e49afb22de09a9ebda5d073d93e2a2a7b2530ce50def390c32cac92ea064736f6c634300050c0032","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1":"0xc965345edac823d56812cd20a10316233916a605","0x2":"0xec71e4e674fe0f432693dc2b935c34bd2774c003","0x3":"0x258","0x4":"0x15180"}},"0xbdefcf6429d0ac68236a6beb321cbd2ce66b463c":{"nonce":2,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c80636d435421116100885780637b37e561116100635780637b37e561146102435780638b9e028b14610256578063906c87cc1461027657806393790f4414610289575f80fd5b80636d435421146101eb5780636e9bfd9f146101fe578063794593bc14610230575f80fd5b806314afd79e116100c357806314afd79e1461018157806333bc8572146101945780634e3f9580146101b757806351710e45146101d8575f80fd5b8063027cc764146100e95780630a96ad391461011957806313ad9cab1461016c575b5f80fd5b6100fc6100f7366004610c39565b61029c565b6040516001600160a01b0390911681526020015b60405180910390f35b604080517f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f81527fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167602082015201610110565b61017f61017a366004610c61565b610339565b005b6100fc61018f366004610ca9565b610531565b6101a76101a2366004610cc9565b61055c565b6040519015158152602001610110565b6101ca6101c5366004610ca9565b610595565b604051908152602001610110565b61017f6101e6366004610ca9565b6105bd565b61017f6101f9366004610cc9565b6106be565b61021161020c366004610cfa565b6107ae565b604080516001600160a01b039093168352901515602083015201610110565b6100fc61023e366004610d11565b610838565b61017f610251366004610ca9565b610a0a565b610269610264366004610ca9565b610aab565b6040516101109190610d32565b6100fc610284366004610ca9565b610b28565b6101ca610297366004610ca9565b610b53565b5f6102a683610b8e565b6001600160a01b0383165f908152602081905260409020600301548083106102f157604051636ceb340b60e01b81526001600160a01b03851660048201526024015b60405180910390fd5b6001600160a01b0384165f90815260208190526040902060030180548490811061031d5761031d610d7e565b5f918252602090912001546001600160a01b0316949350505050565b61034283610bc6565b60405163c4e8fcb560e01b81526001600160a01b038381166004830152821515602483015284169063c4e8fcb5906044015f604051808303815f87803b15801561038a575f80fd5b505af115801561039c573d5f803e3d5ffd5b505050506001600160a01b038381165f908152602081815260408083209386168352600484019091529020548015158380156103d6575080155b15610425576003830180546001810182555f828152602080822090920180546001600160a01b0319166001600160a01b038a169081179091559254928152600486019091526040902055610529565b831580156104305750805b156105295760038301545f198301905f9061044d90600190610d92565b90508181146104d8575f85600301828154811061046c5761046c610d7e565b5f918252602090912001546003870180546001600160a01b03909216925082918590811061049c5761049c610d7e565b5f91825260208083209190910180546001600160a01b0319166001600160a01b0394851617905592909116815260048701909152604090208490555b846003018054806104eb576104eb610db7565b5f828152602080822083015f1990810180546001600160a01b03191690559092019092556001600160a01b0389168252600487019052604081205550505b505050505050565b5f61053b82610b8e565b506001600160a01b039081165f908152602081905260409020600101541690565b5f61056683610b8e565b506001600160a01b039182165f9081526020818152604080832093909416825260049092019091522054151590565b5f61059f82610b8e565b506001600160a01b03165f9081526020819052604090206003015490565b6105c681610b8e565b6001600160a01b038181165f9081526020819052604090206002015416331461060d576040516388c3a11560e01b81526001600160a01b03821660048201526024016102e8565b6040515f907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da908290a26001600160a01b038082165f818152602081905260408082206002810180546001600160a01b031916905560010154905133949190911692917fc8894f26f396ce8c004245c8b7cd1b92103a6e4302fcbab883987149ac01b7ec91a46001600160a01b03165f90815260208190526040902060010180546001600160a01b03191633179055565b6106c782610bc6565b6001600160a01b0381166106f95760405163a388d26360e01b81526001600160a01b03831660048201526024016102e8565b6001600160a01b038083165f9081526020819052604090206002015481169082160361074b576040516365e0406560e11b81526001600160a01b038084166004830152821660248201526044016102e8565b6040516001600160a01b038216907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da905f90a26001600160a01b039182165f90815260208190526040902060020180546001600160a01b03191691909216179055565b5f8060ff60f81b30847f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f6040516020016107eb9493929190610dcb565b60408051601f198184030181529190528051602090910120936001600160a01b0385163f7fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167149350915050565b5f6001600160a01b0382166108605760405163267eaa8160e21b815260040160405180910390fd5b606083901c3314610884576040516332db94d160e21b815260040160405180910390fd5b6040516108c3906001600160f81b031990309086907f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f90602001610dcb565b604051602081830303815290604052805190602001205f1c90507fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167816001600160a01b03163f0361093257604051633194665960e11b81526001600160a01b03821660048201526024016102e8565b8260405161093f90610c16565b8190604051809103905ff590508015801561095c573d5f803e3d5ffd5b50506001600160a01b038181165f81815260208181526040918290206001810180546001600160a01b03191695881695909517909455868455815192835282018690527f4397af6128d529b8ae0442f99db1296d5136062597a15bbc61c1b2a6431a7d15910160405180910390a16040516001600160a01b03808516915f918516907fc8894f26f396ce8c004245c8b7cd1b92103a6e4302fcbab883987149ac01b7ec908390a45092915050565b610a1381610bc6565b6001600160a01b038181165f9081526020819052604090206002015416610a58576040516335809b0b60e11b81526001600160a01b03821660048201526024016102e8565b6040515f907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da908290a26001600160a01b03165f90815260208190526040902060020180546001600160a01b0319169055565b6060610ab682610b8e565b6001600160a01b0382165f908152602081815260409182902060030180548351818402810184019094528084529091830182828015610b1c57602002820191905f5260205f20905b81546001600160a01b03168152600190910190602001808311610afe575b50505050509050919050565b5f610b3282610b8e565b506001600160a01b039081165f908152602081905260409020600201541690565b6001600160a01b0381165f9081526020819052604090205480610b89576040516304ca820960e41b815260040160405180910390fd5b919050565b6001600160a01b0381165f90815260208190526040902054610bc3576040516304ca820960e41b815260040160405180910390fd5b50565b610bcf81610b8e565b6001600160a01b038181165f90815260208190526040902060010154163314610bc35760405163d4ed9a1760e01b81526001600160a01b03821660048201526024016102e8565b610a4180610e0583390190565b80356001600160a01b0381168114610b89575f80fd5b5f8060408385031215610c4a575f80fd5b610c5383610c23565b946020939093013593505050565b5f805f60608486031215610c73575f80fd5b610c7c84610c23565b9250610c8a60208501610c23565b915060408401358015158114610c9e575f80fd5b809150509250925092565b5f60208284031215610cb9575f80fd5b610cc282610c23565b9392505050565b5f8060408385031215610cda575f80fd5b610ce383610c23565b9150610cf160208401610c23565b90509250929050565b5f60208284031215610d0a575f80fd5b5035919050565b5f8060408385031215610d22575f80fd5b82359150610cf160208401610c23565b602080825282518282018190525f9190848201906040850190845b81811015610d725783516001600160a01b031683529284019291840191600101610d4d565b50909695505050505050565b634e487b7160e01b5f52603260045260245ffd5b81810381811115610db157634e487b7160e01b5f52601160045260245ffd5b92915050565b634e487b7160e01b5f52603160045260245ffd5b6001600160f81b031994909416845260609290921b6bffffffffffffffffffffffff19166001840152601583015260358201526055019056fe60a060405234801561000f575f80fd5b5033608052608051610a1561002c5f395f6101d20152610a155ff3fe608060405234801561000f575f80fd5b506004361061004a575f3560e01c80634ce34aa21461004e578063899e104c1461007e5780638df25d9214610091578063c4e8fcb5146100a4575b5f80fd5b61006161005c366004610834565b6100b9565b6040516001600160e01b0319909116815260200160405180910390f35b61006161008c3660046108b4565b610121565b61006161009f36600461091b565b61018a565b6100b76100b2366004610969565b6101c7565b005b5f335f525f60205260405f20546100dd576349ed56f960e11b5f523360045260245ffd5b815f5b81811015610110576101088585838181106100fd576100fd6109a2565b905060c002016102c4565b6001016100e0565b50632671a55160e11b949350505050565b5f335f525f60205260405f2054610145576349ed56f960e11b5f523360045260245ffd5b835f5b8181101561016d576101658787838181106100fd576100fd6109a2565b600101610148565b506101788484610436565b50632267841360e21b95945050505050565b5f335f525f60205260405f20546101ae576349ed56f960e11b5f523360045260245ffd5b6101b88383610436565b506346f92ec960e11b92915050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610210576040516336abb4df60e11b815260040160405180910390fd5b6001600160a01b0382165f9081526020819052604090205481151560ff909116151503610268576040516349271a0f60e11b81526001600160a01b038316600482015281151560248201526044015b60405180910390fd5b6001600160a01b0382165f8181526020818152604091829020805460ff191685151590811790915591519182527fae63067d43ac07563b7eb8db6595635fc77f1578a2a5ea06ba91b63e2afa37e2910160405180910390a25050565b60016102d360208301836109ca565b60038111156102e4576102e46109b6565b03610329576103266102fc60408301602084016109ef565b61030c60608401604085016109ef565b61031c60808501606086016109ef565b8460a0013561056c565b50565b600261033860208301836109ca565b6003811115610349576103496109b6565b036103b6578060a00135600114610379576040516369f9582760e01b815260a0820135600482015260240161025f565b61032661038c60408301602084016109ef565b61039c60608401604085016109ef565b6103ac60808501606086016109ef565b8460800135610660565b60036103c560208301836109ca565b60038111156103d6576103d66109b6565b0361041d576103266103ee60408301602084016109ef565b6103fe60608401604085016109ef565b61040e60808501606086016109ef565b84608001358560a00135610715565b604051631e4cbc7f60e21b815260040160405180910390fd5b808280631759616b60e11b6020525f5b8381101561055f57823582018035803b61046b57635f15d6725f52806020526024601cfd5b60a08201358060051b60c0018060808501351460a0606086013514168185013583141615905080156104a657633ae8821360e21b5f5260045ffd5b506020860195506080602084016024378060061b60400190508060a00160a4525f8160c401528060c4018160a0850160c4375f808260205f875af1935083610550573d1561053057601f3d0160051c91508060051c826003028184111561051a578184036003028280028580020360091c01015b5a60208201101561052d573d5f803e3d5ffd5b50505b6357e222f160e11b5f528260045260c0606452608451602001608452805ffd5b50505050600181019050610446565b5050505060806040525050565b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166106515780873b15151661065157806106405781610623573d1561060257601f3d0160051c8360051c81600302818311156105eb578183036003028280028480020360091c01015b5a6020820110156105fe573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b833b61067757635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af180610707573d156106e557601f3d0160051c8260051c81600302818311156106ce578183036003028280028480020360091c01015b5a6020820110156106e1573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b61072c57635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af1806107d1573d156107b057601f3d0160051c8560051c8160030281831115610799578183036003028280028480020360091c01015b5a6020820110156107ac573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b5f8083601f8401126107fc575f80fd5b50813567ffffffffffffffff811115610813575f80fd5b60208301915083602060c08302850101111561082d575f80fd5b9250929050565b5f8060208385031215610845575f80fd5b823567ffffffffffffffff81111561085b575f80fd5b610867858286016107ec565b90969095509350505050565b5f8083601f840112610883575f80fd5b50813567ffffffffffffffff81111561089a575f80fd5b6020830191508360208260051b850101111561082d575f80fd5b5f805f80604085870312156108c7575f80fd5b843567ffffffffffffffff808211156108de575f80fd5b6108ea888389016107ec565b90965094506020870135915080821115610902575f80fd5b5061090f87828801610873565b95989497509550505050565b5f806020838503121561092c575f80fd5b823567ffffffffffffffff811115610942575f80fd5b61086785828601610873565b80356001600160a01b0381168114610964575f80fd5b919050565b5f806040838503121561097a575f80fd5b6109838361094e565b915060208301358015158114610997575f80fd5b809150509250929050565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52602160045260245ffd5b5f602082840312156109da575f80fd5b8135600481106109e8575f80fd5b9392505050565b5f602082840312156109ff575f80fd5b6109e88261094e56fea164736f6c6343000818000aa164736f6c6343000818000a","storage":{}},"0xbe5deac45dd1ca4ee18dc2d585d84d3d3cb82b0d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c806341539d4a146100465780634d5505d314610097578063afa764d7146100b1575b600080fd5b6100636004803603602081101561005c57600080fd5b50356100dc565b6040805195865260208601949094528484019290925260608401526001600160a01b03166080830152519081900360a00190f35b61009f610114565b60408051918252519081900360200190f35b6100da600480360360608110156100c757600080fd5b508035906020810135906040013561011a565b005b60006020819052908152604090208054600182015460028301546003840154600490940154929391929091906001600160a01b031685565b60015481565b6101226101eb565b506040805160a0810182528481526020808201858152828401858152426060808601918252336080870181815260018054810180825560009081528089528a81208a518155975188830155955160028801559351600387015551600490950180546001600160a01b0319166001600160a01b0390961695909517909455905486518981529485018890528487018a905295519495919491937fba5de06d22af2685c6c7765f60067f7d2b08c2d29f53cdf14d67f6d1c9bfb527929081900390910190a450505050565b6040518060a001604052806000801916815260200160008152602001600081526020016000815260200160006001600160a01b03168152509056fea164736f6c6343000606000a","storage":{"0x1":"0x0"}},"0xbe92182cab5b84fd18b34881a0c32771e84f5b8b":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061021c5760003560e01c80638da5cb5b11610125578063bebec6b4116100ad578063e985e9c51161007c578063e985e9c514610540578063f059235914610553578063f2fde38b14610566578063ffa1ad7414610579578063ffad6f551461059d57600080fd5b8063bebec6b4146104e7578063bfc5429b146104fa578063c15ae7cf1461050d578063c87b56dd1461052d57600080fd5b8063a81ce6f9116100f4578063a81ce6f91461046d578063ac9650d814610480578063b3f9e4cb146104a0578063b85afd28146104b3578063b98b3526146104d457600080fd5b80638da5cb5b146103f157806391015f6b146103f9578063933c051d1461041b578063a3f4df7e1461043d57600080fd5b80634bd79ed0116101a857806370a082311161017757806370a082311461038d578063715018a6146103a05780637e37479e146103a857806383caffbe146103bb578063869b8884146103ce57600080fd5b80634bd79ed0146103335780634f558e79146103465780636352211e14610359578063672b9f811461036c57600080fd5b80631bd8cc1a116101ef5780631bd8cc1a146102ac5780631be5e7ed146102cc578063276fabb1146102ec578063430c20811461030d578063485cc9551461032057600080fd5b806301ffc9a7146102215780630328075514610249578063081812fc1461026c57806313af403514610297575b600080fd5b61023461022f366004612c9d565b6105b0565b60405190151581526020015b60405180910390f35b61025c610257366004612d0b565b610638565b6040516102409493929190612dfe565b61027f61027a366004612e3c565b61065b565b6040516001600160a01b039091168152602001610240565b6102aa6102a5366004612e6a565b610760565b005b6102bf6102ba366004612d0b565b6107d1565b6040516102409190612e87565b6102df6102da366004612edb565b6107f0565b6040516102409190612f12565b6102ff6102fa366004612f25565b61091b565b604051908152602001610240565b61023461031b366004612f66565b61098f565b6102aa61032e366004612f92565b610aa2565b6102aa610341366004612fcb565b610bf5565b610234610354366004612e3c565b610e51565b61027f610367366004612e3c565b610e5c565b61037f61037a366004613036565b610e67565b604051610240929190613058565b6102ff61039b366004612e6a565b610f97565b6102aa611095565b6102ff6103b6366004612e6a565b6110a9565b6102bf6103c936600461307d565b611118565b6103e16103dc366004612fcb565b6114f0565b60405161024094939291906131bb565b61027f6116e6565b61040c610407366004612d0b565b611714565b60405161024093929190613208565b61042e610429366004612fcb565b611734565b60405161024093929190613234565b6102df604051806040016040528060118152602001702aa7299d10283937bc3c902932b0b232b960791b81525081565b61027f61047b366004612e3c565b6118bd565b61049361048e366004612f25565b61198b565b6040516102409190613277565b61027f6104ae366004612e3c565b611a7f565b6104c66104c1366004612d0b565b611b05565b6040516102409291906132d9565b6102df6104e23660046132fe565b611ce1565b6102df6104f5366004612e6a565b611cfb565b6102df6105083660046132fe565b611d6f565b61052061051b366004612f25565b611d89565b6040516102409190613371565b6102df61053b366004612e3c565b611e37565b61023461054e366004612f92565b611f09565b6102aa610561366004612fcb565b611f54565b6102aa610574366004612e6a565b612018565b6102df604051806040016040528060058152602001640302e352e360dc1b81525081565b6102aa6105ab366004613384565b612085565b60006001600160e01b031982166362526e6360e01b14806105e157506001600160e01b03198216636fa624af60e11b145b806105fc57506001600160e01b031982166308da864d60e31b145b8061061757506001600160e01b03198216638584880360e01b145b8061063257506301ffc9a760e01b6001600160e01b03198316145b92915050565b6000806060806106498787876120d8565b93509350935093505b93509350935093565b60006106668261233a565b61067257506000919050565b61067b826123d2565b6106f25760665460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa1580156106c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106ed91906133bd565b610632565b60655460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa15801561073c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061063291906133bd565b600061076a6116e6565b6001600160a01b0316146107c55760405162461bcd60e51b815260206004820152601e60248201527f50726f78795265616465723a204f574e45525f414c52454144595f534554000060448201526064015b60405180910390fd5b6107ce81612419565b50565b60606107e66107e0848661346a565b83612495565b90505b9392505050565b60606107fb826123d2565b1561088057606554604051631be5e7ed60e01b81526001600160a01b0390911690631be5e7ed9061083490879087908790600401613547565b600060405180830381865afa158015610851573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261087991908101906135b0565b90506107e9565b600061088b83612617565b90506001600160a01b0381163b1561091357604051631be5e7ed60e01b81526001600160a01b03821690631be5e7ed906108cd90889088908890600401613547565b600060405180830381865afa92505050801561090b57506040513d6000823e601f3d908101601f1916820160405261090891908101906135b0565b60015b156109135791505b509392505050565b60655460405163276fabb160e01b81526000916001600160a01b03169063276fabb19061094e908690869060040161366c565b602060405180830381865afa15801561096b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613680565b600061099a8261233a565b6109a657506000610632565b6109af826123d2565b610a2d5760665460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a04573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a289190613699565b6107e9565b60655460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a7e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613699565b600054610100900460ff1615808015610ac25750600054600160ff909116105b80610adc5750303b158015610adc575060005460ff166001145b610b3f5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107bc565b6000805460ff191660011790558015610b62576000805461ff0019166101001790555b606580546001600160a01b038086166001600160a01b0319928316179092556066805492851692909116919091179055610b9a61268a565b610ba261268a565b610baa6126b1565b8015610bf0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b610bfd6126e1565b828114610c4c5760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107bc565b60005b83811015610e4a5760006068868684818110610c6d57610c6d6136bb565b9050602002810190610c7f91906136d1565b604051610c8d929190613717565b908152604051908190036020019020541115610cf1576068858583818110610cb757610cb76136bb565b9050602002810190610cc991906136d1565b604051610cd7929190613717565b90815260200160405180910390206000610cf19190612c18565b60005b838383818110610d0657610d066136bb565b9050602002810190610d189190613727565b9050811015610ddc576068868684818110610d3557610d356136bb565b9050602002810190610d4791906136d1565b604051610d55929190613717565b9081526020016040518091039020848484818110610d7557610d756136bb565b9050602002810190610d879190613727565b83818110610d9757610d976136bb565b9050602002810190610da991906136d1565b82546001810184556000938452602090932090920191610dc991836137f8565b5080610dd4816138cd565b915050610cf4565b507fb2b57b54285120d17f49f2490a39ef791441fd0ad1e6b6818c23262bf91f061c858583818110610e1057610e106136bb565b9050602002810190610e2291906136d1565b604051610e309291906138e6565b60405180910390a180610e42816138cd565b915050610c4f565b5050505050565b60006106328261233a565b600061063282612740565b606080610e73836123d2565b15610ef95760655460405163672b9f8160e01b815260048101869052602481018590526001600160a01b039091169063672b9f8190604401600060405180830381865afa158015610ec8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610ef091908101906138fa565b91509150610f90565b6000610f0484612617565b90506001600160a01b0381163b15610f8e5760405163672b9f8160e01b815260048101869052602481018590526001600160a01b0382169063672b9f8190604401600060405180830381865afa925050508015610f8357506040513d6000823e601f3d908101601f19168201604052610f8091908101906138fa565b60015b15610f8e5790935091505b505b9250929050565b6065546040516370a0823160e01b81526001600160a01b03838116600483015260009283929116906370a0823190602401602060405180830381865afa158015610fe5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110099190613680565b6066549091506001600160a01b031615610632576066546040516370a0823160e01b81526001600160a01b038581166004830152909116906370a0823190602401602060405180830381865afa158015611067573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061108b9190613680565b6107e9908261395d565b61109d6126e1565b6110a76000612419565b565b606554604051633f1ba3cf60e11b81526001600160a01b0383811660048301526000921690637e37479e90602401602060405180830381865afa1580156110f4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190613680565b606060006067868660405161112e929190613717565b9081526020016040518091039020805461114790613770565b80601f016020809104026020016040519081016040528092919081815260200182805461117390613770565b80156111c05780601f10611195576101008083540402835291602001916111c0565b820191906000526020600020905b8154815290600101906020018083116111a357829003601f168201915b5050505050905080516000036111d657506114e8565b6000604051806040016040528060068152602001653a37b5b2b71760d11b81525090506000604051806040016040528060088152602001672e6164647265737360c01b81525090506000604051806040016040528060018152602001601760f91b815250905060008385838c8c868d8d8a60405160200161125f99989796959493929190613970565b6040516020818303038152906040529050600060688260405161128291906139f3565b9081526020016040518091039020805480602002602001604051908101604052809291908181526020016000905b8282101561135c5783829060005260206000200180546112cf90613770565b80601f01602080910402602001604051908101604052809291908181526020018280546112fb90613770565b80156113485780601f1061131d57610100808354040283529160200191611348565b820191906000526020600020905b81548152906001019060200180831161132b57829003601f168201915b5050505050815260200190600101906112b0565b50505050905080516003611370919061395d565b6001600160401b03811115611387576113876133da565b6040519080825280602002602001820160405280156113ba57816020015b60608152602001906001900390816113a55790505b50965081876000815181106113d1576113d16136bb565b602002602001018190525060005b815181101561143e578181815181106113fa576113fa6136bb565b602002602001015188826001611410919061395d565b81518110611420576114206136bb565b60200260200101819052508080611436906138cd565b9150506113df565b508486848d8d8860405160200161145a96959493929190613a0f565b6040516020818303038152906040528782516001611478919061395d565b81518110611488576114886136bb565b60200260200101819052508486856040516020016114a893929190613a72565b60405160208183030381529060405287825160026114c6919061395d565b815181106114d6576114d66136bb565b60200260200101819052505050505050505b949350505050565b6060808080846001600160401b0381111561150d5761150d6133da565b604051908082528060200260200182016040528015611536578160200160208202803683370190505b509350846001600160401b03811115611551576115516133da565b60405190808252806020026020018201604052801561157a578160200160208202803683370190505b509250846001600160401b03811115611595576115956133da565b6040519080825280602002602001820160405280156115c857816020015b60608152602001906001900390816115b35790505b509150846001600160401b038111156115e3576115e36133da565b60405190808252806020026020018201604052801561161657816020015b60608152602001906001900390816116015790505b50905060005b858110156116da57611647898989898581811061163b5761163b6136bb565b905060200201356120d8565b888581518110611659576116596136bb565b60200260200101888681518110611672576116726136bb565b6020026020010188878151811061168b5761168b6136bb565b602002602001018888815181106116a4576116a46136bb565b6020908102919091010193909352929091526001600160a01b0392831690915291169052806116d2816138cd565b91505061161c565b50945094509450949050565b7fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c8121905546001600160a01b031690565b6000806060611724868686612761565b9250925092505b93509350939050565b60608080836001600160401b03811115611750576117506133da565b604051908082528060200260200182016040528015611779578160200160208202803683370190505b509250836001600160401b03811115611794576117946133da565b6040519080825280602002602001820160405280156117bd578160200160208202803683370190505b509150836001600160401b038111156117d8576117d86133da565b60405190808252806020026020018201604052801561180b57816020015b60608152602001906001900390816117f65790505b50905060005b848110156118b25761183c8888888885818110611830576118306136bb565b90506020020135612761565b86848151811061184e5761184e6136bb565b60200260200101868581518110611867576118676136bb565b60200260200101868681518110611880576118806136bb565b60209081029190910101929092526001600160a01b0392831690915291169052806118aa816138cd565b915050611811565b509450945094915050565b606554604051634f558e7960e01b8152600481018390526000916001600160a01b031690634f558e7990602401602060405180830381865afa158015611907573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061192b9190613699565b156119415750506065546001600160a01b031690565b6066546001600160a01b03161580159061196d575060006119618361296c565b6001600160a01b031614155b156119835750506066546001600160a01b031690565b506000919050565b6060816001600160401b038111156119a5576119a56133da565b6040519080825280602002602001820160405280156119d857816020015b60608152602001906001900390816119c35790505b50905060005b82811015611a7857611a48308585848181106119fc576119fc6136bb565b9050602002810190611a0e91906136d1565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061299e92505050565b828281518110611a5a57611a5a6136bb565b60200260200101819052508080611a70906138cd565b9150506119de565b5092915050565b6000611a8a8261233a565b611a9657506000919050565b611a9f826123d2565b611ad45760665460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb906024016106ac565b60655460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb9060240161071f565b606080836001600160401b03811115611b2057611b206133da565b604051908082528060200260200182016040528015611b5357816020015b6060815260200190600190039081611b3e5790505b509150836001600160401b03811115611b6e57611b6e6133da565b604051908082528060200260200182016040528015611ba157816020015b6060815260200190600190039081611b8c5790505b509050611bad836123d2565b15611c345760655460405163170b5fa560e31b81526001600160a01b039091169063b85afd2890611be690889088908890600401613ab5565b600060405180830381865afa158015611c03573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611c2b9190810190613b72565b91509150611cd9565b6000611c3f84612617565b90506001600160a01b0381163b15158015611c5957508415155b15611cd75760405163170b5fa560e31b81526001600160a01b0382169063b85afd2890611c8e90899089908990600401613ab5565b600060405180830381865afa925050508015611ccc57506040513d6000823e601f3d908101601f19168201604052611cc99190810190613b72565b60015b15611cd75790935091505b505b935093915050565b6060611cf08686868686612a92565b979650505050505050565b606554604051632fafb1ad60e21b81526001600160a01b038381166004830152606092169063bebec6b4906024015b600060405180830381865afa158015611d47573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261063291908101906135b0565b6060611d7e8686868686612a92565b509695505050505050565b6060816001600160401b03811115611da357611da36133da565b604051908082528060200260200182016040528015611dcc578160200160208202803683370190505b50905060005b82811015611a7857611dfb848483818110611def57611def6136bb565b90506020020135612740565b828281518110611e0d57611e0d6136bb565b6001600160a01b039092166020928302919091019091015280611e2f816138cd565b915050611dd2565b6060611e428261233a565b611e5a57505060408051602081019091526000815290565b611e63826123d2565b611ed85760665460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401600060405180830381865afa158015611eb0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106ed91908101906135b0565b60655460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401611d2a565b60405162461bcd60e51b815260206004820152601f60248201527f50726f78795265616465723a20554e535550504f525445445f4d4554484f440060448201526000906064016107bc565b611f5c6126e1565b828114611fab5760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107bc565b60005b83811015610e4a57612006858583818110611fcb57611fcb6136bb565b9050602002810190611fdd91906136d1565b858585818110611fef57611fef6136bb565b905060200281019061200191906136d1565b612b3e565b80612010816138cd565b915050611fae565b6120206126e1565b6001600160a01b0381166107c55760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107bc565b61208d6126e1565b60005b83811015610e4a576120c68585838181106120ad576120ad6136bb565b90506020028101906120bf91906136d1565b8585612b3e565b806120d0816138cd565b915050612090565b600080606080856001600160401b038111156120f6576120f66133da565b60405190808252806020026020018201604052801561212957816020015b60608152602001906001900390816121145790505b509150856001600160401b03811115612144576121446133da565b60405190808252806020026020018201604052801561217757816020015b60608152602001906001900390816121625790505b509050612183856123d2565b156122845760655460405163b3f9e4cb60e01b8152600481018790526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa1580156121d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121f591906133bd565b935061220085612bad565b60655460405163170b5fa560e31b81529194506001600160a01b03169063b85afd2890612235908a908a908a90600401613ab5565b600060405180830381865afa158015612252573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261227a9190810190613b72565b9092509050610652565b61228d85612617565b93506122988561296c565b92506001600160a01b0384163b151580156122b4575060008251115b156106525760405163170b5fa560e31b81526001600160a01b0385169063b85afd28906122e9908a908a908a90600401613ab5565b600060405180830381865afa92505050801561232757506040513d6000823e601f3d908101601f191682016040526123249190810190613b72565b60015b1561065257909250905093509350935093565b6000612345826123d2565b6123645760006123548361296c565b6001600160a01b03161415610632565b606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e79906024015b602060405180830381865afa1580156123ae573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190613699565b6066546000906001600160a01b031615806106325750606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401612391565b60006124236116e6565b9050817fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c812190580546001600160a01b0319166001600160a01b03928316179055604051838216918316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b606082516001600160401b038111156124b0576124b06133da565b6040519080825280602002602001820160405280156124e357816020015b60608152602001906001900390816124ce5790505b5090506124ef826123d2565b1561257257606554604051630dec660d60e11b81526001600160a01b0390911690631bd8cc1a906125269086908690600401613bcb565b600060405180830381865afa158015612543573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261256b9190810190613bed565b9050610632565b600061257d83612617565b90506001600160a01b0381163b15158015612599575060008451115b15611a7857604051630dec660d60e11b81526001600160a01b03821690631bd8cc1a906125cc9087908790600401613bcb565b600060405180830381865afa92505050801561260a57506040513d6000823e601f3d908101601f191682016040526126079190810190613bed565b60015b15611a7857949350505050565b60665460405163b3f9e4cb60e01b8152600481018390526000916001600160a01b03169063b3f9e4cb906024015b602060405180830381865afa92505050801561267e575060408051601f3d908101601f1916820190925261267b918101906133bd565b60015b61063257506000919050565b600054610100900460ff166110a75760405162461bcd60e51b81526004016107bc90613c21565b600054610100900460ff166126d85760405162461bcd60e51b81526004016107bc90613c21565b6110a733612419565b336126ea6116e6565b6001600160a01b0316146110a75760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107bc565b600061274b826123d2565b612758576106ed8261296c565b61063282612bad565b6000806060846001600160401b0381111561277e5761277e6133da565b6040519080825280602002602001820160405280156127b157816020015b606081526020019060019003908161279c5790505b5090506127bd846123d2565b156128bb5760655460405163b3f9e4cb60e01b8152600481018690526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561280b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061282f91906133bd565b925061283a84612bad565b606554604051630dec660d60e11b81529193506001600160a01b031690631bd8cc1a9061286f90899089908990600401613c6c565b600060405180830381865afa15801561288c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526128b49190810190613bed565b905061172b565b6128c484612617565b92506128cf8461296c565b91506001600160a01b0383163b151580156128e957508415155b1561172b57604051630dec660d60e11b81526001600160a01b03841690631bd8cc1a9061291e90899089908990600401613c6c565b600060405180830381865afa92505050801561295c57506040513d6000823e601f3d908101601f191682016040526129599190810190613bed565b60015b1561172b57905093509350939050565b6066546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401612645565b60606001600160a01b0383163b612a065760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b60648201526084016107bc565b600080846001600160a01b031684604051612a2191906139f3565b600060405180830381855af49150503d8060008114612a5c576040519150601f19603f3d011682016040523d82523d6000602084013e612a61565b606091505b5091509150612a898282604051806060016040528060278152602001613c8160279139612bdf565b95945050505050565b6060806000612aa388888888611118565b90506000612ab18286612495565b905060005b8151811015612b31576000828281518110612ad357612ad36136bb565b6020026020010151511115612b1f57828181518110612af457612af46136bb565b60200260200101519350818181518110612b1057612b106136bb565b60200260200101519450612b31565b80612b29816138cd565b915050612ab6565b5050509550959350505050565b818160678686604051612b52929190613717565b90815260200160405180910390209182612b6d9291906137f8565b507f0bf4b04a0f6d7d0800284e1abb0f58f795c0a25b9088634b6ab847be51001dec8484604051612b9f9291906138e6565b60405180910390a150505050565b6065546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401612645565b60608315612bee5750816107e9565b825115612bfe5782518084602001fd5b8160405162461bcd60e51b81526004016107bc9190612f12565b50805460008255906000526020600020908101906107ce91905b80821115612c4f576000612c468282612c53565b50600101612c32565b5090565b508054612c5f90613770565b6000825580601f10612c6f575050565b601f0160209004906000526020600020908101906107ce91905b80821115612c4f5760008155600101612c89565b600060208284031215612caf57600080fd5b81356001600160e01b0319811681146107e957600080fd5b60008083601f840112612cd957600080fd5b5081356001600160401b03811115612cf057600080fd5b6020830191508360208260051b8501011115610f9057600080fd5b600080600060408486031215612d2057600080fd5b83356001600160401b03811115612d3657600080fd5b612d4286828701612cc7565b909790965060209590950135949350505050565b60005b83811015612d71578181015183820152602001612d59565b50506000910152565b60008151808452612d92816020860160208601612d56565b601f01601f19169290920160200192915050565b600082825180855260208086019550808260051b84010181860160005b84811015612df157601f19868403018952612ddf838351612d7a565b98840198925090830190600101612dc3565b5090979650505050505050565b6001600160a01b03858116825284166020820152608060408201819052600090612e2a90830185612da6565b8281036060840152611cf08185612da6565b600060208284031215612e4e57600080fd5b5035919050565b6001600160a01b03811681146107ce57600080fd5b600060208284031215612e7c57600080fd5b81356107e981612e55565b6020815260006107e96020830184612da6565b60008083601f840112612eac57600080fd5b5081356001600160401b03811115612ec357600080fd5b602083019150836020828501011115610f9057600080fd5b600080600060408486031215612ef057600080fd5b83356001600160401b03811115612f0657600080fd5b612d4286828701612e9a565b6020815260006107e96020830184612d7a565b60008060208385031215612f3857600080fd5b82356001600160401b03811115612f4e57600080fd5b612f5a85828601612cc7565b90969095509350505050565b60008060408385031215612f7957600080fd5b8235612f8481612e55565b946020939093013593505050565b60008060408385031215612fa557600080fd5b8235612fb081612e55565b91506020830135612fc081612e55565b809150509250929050565b60008060008060408587031215612fe157600080fd5b84356001600160401b0380821115612ff857600080fd5b61300488838901612cc7565b9096509450602087013591508082111561301d57600080fd5b5061302a87828801612cc7565b95989497509550505050565b6000806040838503121561304957600080fd5b50508035926020909101359150565b60408152600061306b6040830185612d7a565b8281036020840152612a898185612d7a565b6000806000806040858703121561309357600080fd5b84356001600160401b03808211156130aa57600080fd5b6130b688838901612e9a565b909650945060208701359150808211156130cf57600080fd5b5061302a87828801612e9a565b600081518084526020808501945080840160005b838110156131155781516001600160a01b0316875295820195908201906001016130f0565b509495945050505050565b60008282518085526020808601955060058183821b8501018287016000805b868110156131ac57601f1988850381018c5283518051808752908801908887019080891b88018a01865b8281101561319557858a8303018452613183828651612d7a565b948c0194938c01939150600101613169565b509e8a019e9750505093870193505060010161313f565b50919998505050505050505050565b6080815260006131ce60808301876130dc565b82810360208401526131e081876130dc565b905082810360408401526131f48186613120565b90508281036060840152611cf08185613120565b6001600160a01b03848116825283166020820152606060408201819052600090612a8990830184612da6565b60608152600061324760608301866130dc565b828103602084015261325981866130dc565b9050828103604084015261326d8185613120565b9695505050505050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156132cc57603f198886030184526132ba858351612d7a565b9450928501929085019060010161329e565b5092979650505050505050565b6040815260006132ec6040830185612da6565b8281036020840152612a898185612da6565b60008060008060006060868803121561331657600080fd5b85356001600160401b038082111561332d57600080fd5b61333989838a01612e9a565b9097509550602088013591508082111561335257600080fd5b5061335f88828901612e9a565b96999598509660400135949350505050565b6020815260006107e960208301846130dc565b6000806000806040858703121561339a57600080fd5b84356001600160401b03808211156133b157600080fd5b6130b688838901612cc7565b6000602082840312156133cf57600080fd5b81516107e981612e55565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715613418576134186133da565b604052919050565b60006001600160401b03821115613439576134396133da565b5060051b60200190565b60006001600160401b0382111561345c5761345c6133da565b50601f01601f191660200190565b600061347d61347884613420565b6133f0565b80848252602080830192508560051b85013681111561349b57600080fd5b855b818110156135125780356001600160401b038111156134bc5760008081fd5b870136601f8201126134ce5760008081fd5b80356134dc61347882613443565b81815236868385010111156134f15760008081fd5b8186840187830137600091810186019190915286525093820193820161349d565b50919695505050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60408152600061355b60408301858761351e565b9050826020830152949350505050565b600082601f83011261357c57600080fd5b815161358a61347882613443565b81815284602083860101111561359f57600080fd5b6114e8826020830160208701612d56565b6000602082840312156135c257600080fd5b81516001600160401b038111156135d857600080fd5b6114e88482850161356b565b60008383855260208086019550808560051b8301018460005b87811015612df157848303601f19018952813536889003601e1901811261362357600080fd5b870184810190356001600160401b0381111561363e57600080fd5b80360382131561364d57600080fd5b61365885828461351e565b9a86019a94505050908301906001016135fd565b6020815260006107e66020830184866135e4565b60006020828403121561369257600080fd5b5051919050565b6000602082840312156136ab57600080fd5b815180151581146107e957600080fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e198436030181126136e857600080fd5b8301803591506001600160401b0382111561370257600080fd5b602001915036819003821315610f9057600080fd5b8183823760009101908152919050565b6000808335601e1984360301811261373e57600080fd5b8301803591506001600160401b0382111561375857600080fd5b6020019150600581901b3603821315610f9057600080fd5b600181811c9082168061378457607f821691505b6020821081036137a457634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115610bf057600081815260208120601f850160051c810160208610156137d15750805b601f850160051c820191505b818110156137f0578281556001016137dd565b505050505050565b6001600160401b0383111561380f5761380f6133da565b6138238361381d8354613770565b836137aa565b6000601f841160018114613857576000851561383f5750838201355b600019600387901b1c1916600186901b178355610e4a565b600083815260209020601f19861690835b828110156138885786850135825560209485019460019092019101613868565b50868210156138a55760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b634e487b7160e01b600052601160045260246000fd5b6000600182016138df576138df6138b7565b5060010190565b6020815260006107e660208301848661351e565b6000806040838503121561390d57600080fd5b82516001600160401b038082111561392457600080fd5b6139308683870161356b565b9350602085015191508082111561394657600080fd5b506139538582860161356b565b9150509250929050565b80820180821115610632576106326138b7565b60008a51613982818460208f01612d56565b8a5190830190613996818360208f01612d56565b8a519101906139a9818360208e01612d56565b0187898237600090880190815286516139c6818360208b01612d56565b0184868237600090850190815283516139e3818360208801612d56565b019b9a5050505050505050505050565b60008251613a05818460208701612d56565b9190910192915050565b60008751613a21818460208c01612d56565b875190830190613a35818360208c01612d56565b8751910190613a48818360208b01612d56565b018486823760009085019081528351613a65818360208801612d56565b0198975050505050505050565b60008451613a84818460208901612d56565b845190830190613a98818360208901612d56565b8451910190613aab818360208801612d56565b0195945050505050565b6040808252810183905260006001600160fb1b03841115613ad557600080fd5b8360051b808660608501376020830193909352500160600192915050565b600082601f830112613b0457600080fd5b81516020613b1461347883613420565b82815260059290921b84018101918181019086841115613b3357600080fd5b8286015b84811015611d7e5780516001600160401b03811115613b565760008081fd5b613b648986838b010161356b565b845250918301918301613b37565b60008060408385031215613b8557600080fd5b82516001600160401b0380821115613b9c57600080fd5b613ba886838701613af3565b93506020850151915080821115613bbe57600080fd5b5061395385828601613af3565b604081526000613bde6040830185612da6565b90508260208301529392505050565b600060208284031215613bff57600080fd5b81516001600160401b03811115613c1557600080fd5b6114e884828501613af3565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60408152600061355b6040830185876135e456fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a","storage":{}},"0xc2110388dd54228ae0a834119457ede938bf0b57":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061021e5760003560e01c80638da5cb5b11610123578063acf1a841116100ab578063d547741f1161006f578063d547741f14610682578063f14fcbc8146106a2578063f23a6e61146106c2578063f2fde38b146106e2578063ffa1ad741461070257600080fd5b8063acf1a841146105e0578063bc197c8114610600578063c0c53b8b14610620578063cf01585314610640578063d53913931461066057600080fd5b8063a0e3aef1116100f2578063a0e3aef114610534578063a217fddf14610554578063a3f4df7e14610569578063a4247400146105a0578063aa271e1a146105c057600080fd5b80638da5cb5b146104c157806391d14854146104df578063983b2d56146104ff578063986502751461051f57600080fd5b80635fc1964f116101a65780636ccbae5f116101755780636ccbae5f14610439578063715018a61461045957806371e2a6571461046e57806381c81d351461048e57806383e7f6ff146104a157600080fd5b80635fc1964f146103ae578063634486da146103ce5780636352211e146103e15780636a8be89e1461041957600080fd5b80632f2ff15d116101ed5780632f2ff15d146103035780633092afd51461032557806336568abe14610345578063423f6cef14610365578063572b6c051461038557600080fd5b806301ffc9a71461022a578063150b7a021461025f5780631bf7e13e14610298578063248a9ca3146102c557600080fd5b3661022557005b600080fd5b34801561023657600080fd5b5061024a6102453660046125f2565b610733565b60405190151581526020015b60405180910390f35b34801561026b57600080fd5b5061027f61027a366004612672565b610779565b6040516001600160e01b03199091168152602001610256565b3480156102a457600080fd5b506102b86102b33660046126e4565b6108cb565b60405161025691906127a4565b3480156102d157600080fd5b506102f56102e03660046127b7565b600090815260fb602052604090206001015490565b604051908152602001610256565b34801561030f57600080fd5b5061032361031e3660046127d0565b610997565b005b34801561033157600080fd5b50610323610340366004612800565b6109c1565b34801561035157600080fd5b506103236103603660046127d0565b6109d5565b34801561037157600080fd5b5061032361038036600461281d565b610a68565b34801561039157600080fd5b5061024a6103a0366004612800565b6001600160a01b0316301490565b3480156103ba57600080fd5b506103236103c936600461288f565b610bd9565b6103236103dc366004612800565b610c21565b3480156103ed57600080fd5b506104016103fc3660046127b7565b610ce4565b6040516001600160a01b039091168152602001610256565b34801561042557600080fd5b50610323610434366004612800565b610cef565b34801561044557600080fd5b506102f56104543660046127b7565b610d38565b34801561046557600080fd5b50610323610d7e565b34801561047a57600080fd5b5061032361048936600461288f565b610d92565b61032361049c366004612800565b610dda565b3480156104ad57600080fd5b506102f56104bc366004612934565b610e57565b3480156104cd57600080fd5b506097546001600160a01b0316610401565b3480156104eb57600080fd5b5061024a6104fa3660046127d0565b610efa565b34801561050b57600080fd5b5061032361051a366004612800565b610f25565b34801561052b57600080fd5b50610323610f36565b34801561054057600080fd5b506102f561054f366004612a5c565b610f50565b34801561056057600080fd5b506102f5600081565b34801561057557600080fd5b506102b86040518060400160405280600b81526020016a454e5320437573746f647960a81b81525081565b3480156105ac57600080fd5b5061024a6105bb3660046126e4565b610ffc565b3480156105cc57600080fd5b5061024a6105db366004612800565b61104f565b3480156105ec57600080fd5b506103236105fb366004612934565b611069565b34801561060c57600080fd5b5061027f61061b366004612b35565b611222565b34801561062c57600080fd5b5061032361063b366004612bf3565b6112db565b34801561064c57600080fd5b5061032361065b366004612c3e565b611485565b34801561066c57600080fd5b506102f56000805160206133f583398151915281565b34801561068e57600080fd5b5061032361069d3660046127d0565b611592565b3480156106ae57600080fd5b506103236106bd3660046127b7565b6115b7565b3480156106ce57600080fd5b5061027f6106dd366004612d20565b61162b565b3480156106ee57600080fd5b506103236106fd366004612800565b6116bc565b34801561070e57600080fd5b506102b860405180604001604052806005815260200164302e312e3360d81b81525081565b60006001600160e01b03198216630a85bd0160e11b148061076457506001600160e01b03198216630271189760e51b145b806107735750610773826116d8565b92915050565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004546000906001600160a01b0316806107b061170d565b6001600160a01b0316036108a957600080806107ce86880188612d9b565b9250925092506107dd8361171c565b6001600160a01b03841663b88d4fde30600080516020613415833981519152546040516001600160a01b03909116908c9061082390879030906000908b90602001612dfc565b6040516020818303038152906040526040518563ffffffff1660e01b81526004016108519493929190612e3c565b600060405180830381600087803b15801561086b57600080fd5b505af115801561087f573d6000803e3d6000fd5b5050505061089561088f8261174e565b846117d3565b50630a85bd0160e11b93506108c292505050565b6040516344e7d94960e01b815260040160405180910390fd5b95945050505050565b606060005a90506108dd858585610ffc565b6108fa57604051638baa579f60e01b815260040160405180910390fd5b61098c61090a6020870187612800565b3060408801358461091e60608b018b612e6f565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061185e92505050565b9150505b9392505050565b600082815260fb60205260409020600101546109b28161193f565b6109bc8383611950565b505050565b6109c96119d7565b6109d281611a50565b50565b6109dd61170d565b6001600160a01b0316816001600160a01b031614610a5a5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b610a648282611a68565b5050565b80610a7161170d565b6001600160a01b0316610a8382611aed565b6001600160a01b031614610ac55780610a9a61170d565b604051637ea58b1160e01b815260048101929092526001600160a01b03166024820152604401610a51565b610ace82611c03565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052600090610b22906060015b6040516020818303038152906040528051906020012090565b80546001600160a01b0319166001600160a01b0392909216919091179055600060008051602061341583398151915254604051637921219560e11b81523060048201526001600160a01b038681166024830152604482018690526001606483015260a06084830152600060a48301529091169150819063f242432a9060c401600060405180830381600087803b158015610bbb57600080fd5b505af1158015610bcf573d6000803e3d6000fd5b5050505050505050565b610be16119d7565b60005b8151811015610a6457610c0f828281518110610c0257610c02612eb5565b6020026020010151611a50565b80610c1981612ee1565b915050610be4565b610c2c6105db61170d565b610c485760405162461bcd60e51b8152600401610a5190612efa565b6001600160a01b038116610c9e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a51565b610ca781611c1c565b610caf610f36565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610a64573d6000803e3d6000fd5b600061077382611aed565b610cf76119d7565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c500480546001600160a01b0319166001600160a01b0392909216919091179055565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a838156020820152908101829052600090610d7790606001610b09565b5492915050565b610d866119d7565b610d906000611c34565b565b610d9a6119d7565b60005b8151811015610a6457610dc8828281518110610dbb57610dbb612eb5565b6020026020010151611c1c565b80610dd281612ee1565b915050610d9d565b610de56105db61170d565b610e015760405162461bcd60e51b8152600401610a5190612efa565b6001600160a01b038116610ca75760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a51565b6000805160206133d5833981519152546040516383e7f6ff60e01b81526000916001600160a01b031690829082906383e7f6ff90610e9d90899089908990600401612f58565b6040805180830381865afa158015610eb9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610edd9190612f7c565b60208101518151919250610ef091612fca565b9695505050505050565b600091825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610f2d6119d7565b6109d281611c1c565b610d906000805160206133f583398151915261036061170d565b6000805160206133d5833981519152546000906001600160a01b0316806365a69dcf8d85610f7e5730610f80565b8d5b8d8d8d8d8d8d8d6040518a63ffffffff1660e01b8152600401610fab9998979695949392919061306e565b602060405180830381865afa158015610fc8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fec91906130de565b9c9b505050505050505050505050565b600061104761100a856130f7565b3085858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611c8692505050565b949350505050565b60006107736000805160206133f583398151915283610efa565b6110746105db61170d565b6110905760405162461bcd60e51b8152600401610a5190612efa565b6002603354036110e25760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a51565b60026033556000805160206133d5833981519152546040516383e7f6ff60e01b81526001600160a01b039091169060009082906383e7f6ff9061112d90889088908890600401612f58565b6040805180830381865afa158015611149573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061116d9190612f7c565b6020810151815191925061118091612fca565b4710156111a05760405163050205f960e01b815260040160405180910390fd5b816001600160a01b031663acf1a841826020015183600001516111c39190612fca565b8787876040518563ffffffff1660e01b81526004016111e493929190612f58565b6000604051808303818588803b1580156111fd57600080fd5b505af1158015611211573d6000803e3d6000fd5b505060016033555050505050505050565b6000600080516020613415833981519152546001600160a01b031661124561170d565b6001600160a01b03161461126c576040516344e7d94960e01b815260040160405180910390fd5b600061127a83850185612800565b90506112858161171c565b60005b878110156112c4576112b28989838181106112a5576112a5612eb5565b90506020020135836117d3565b806112bc81612ee1565b915050611288565b5063bc197c8160e01b9a9950505050505050505050565b600054610100900460ff16158080156112fb5750600054600160ff909116105b806113155750303b158015611315575060005460ff166001145b6113785760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610a51565b6000805460ff19166001179055801561139b576000805461ff0019166101001790555b6000805160206133d583398151915280546001600160a01b038087166001600160a01b03199283161790925560008051602061341583398151915280548684169083161790557ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004805492851692909116919091179055611419611dc5565b611421611df3565b611429611df3565b611431611e1a565b611439611e51565b801561147f576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6114906105db61170d565b6114ac5760405162461bcd60e51b8152600401610a5190612efa565b6002603354036114fe5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a51565b600260338190555060006115478c8c8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061174e92505050565b905061155281611c03565b6115708c8c846115625730611564565b8c5b8c8c8c8c8c8c8c611e8a565b8161157f5761157f818b6117d3565b5050600160335550505050505050505050565b600082815260fb60205260409020600101546115ad8161193f565b6109bc8383611a68565b60006000805160206133d583398151915254604051631e29f97960e31b8152600481018490526001600160a01b039091169150819063f14fcbc890602401600060405180830381600087803b15801561160f57600080fd5b505af1158015611623573d6000803e3d6000fd5b505050505050565b6000600080516020613415833981519152546001600160a01b031661164e61170d565b6001600160a01b031614611675576040516344e7d94960e01b815260040160405180910390fd5b6001600160a01b038616156116a957600061169283850185612800565b905061169d8161171c565b6116a786826117d3565b505b5063f23a6e6160e01b9695505050505050565b6116c46119d7565b6116cd81611fd5565b6109d260008261204b565b60006001600160e01b03198216637965db0b60e01b148061077357506301ffc9a760e01b6001600160e01b0319831614610773565b6000611717612055565b905090565b6001600160a01b0381166109d25760405163b20f76e360e01b81526001600160a01b0382166004820152602401610a51565b60007f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae60001b826040516020016117859190613195565b604051602081830303815290604052805190602001206040516020016117b5929190918252602082015260400190565b60408051601f19818403018152919052805160209091012092915050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052819061181190606001610b09565b80546001600160a01b0319166001600160a01b039283161790556040519082169083907f45aa97e368889fb3527c1db60c59c2ae91e82f21778613449e46d4208c1c4b1290600090a35050565b606061186985612073565b600080876001600160a01b0316866118838b8a89896120d9565b6040516118909190613195565b60006040518083038160008787f1925050503d80600081146118ce576040519150601f19603f3d011682016040523d82523d6000602084013e6118d3565b606091505b5090925090506118e4603f876131b1565b5a116118f2576118f26131d3565b61193282826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c4544000000000000815250612109565b9998505050505050505050565b6109d28161194b61170d565b612142565b61195a8282610efa565b610a6457600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff1916600117905561199361170d565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6119df61170d565b6001600160a01b03166119fa6097546001600160a01b031690565b6001600160a01b031614610d905760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a51565b6109d26000805160206133f583398151915282611592565b611a728282610efa565b15610a6457600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff19169055611aa961170d565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101829052600090611b2c90606001610b09565b546001600160a01b0316905080611b595760405163124bad6360e31b815260048101839052602401610a51565b30600080516020613415833981519152546040516331a9108f60e11b8152600481018590526001600160a01b0390911690636352211e90602401602060405180830381865afa158015611bb0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bd491906131e9565b6001600160a01b031614611bfe576040516303b673fd60e21b815260048101839052602401610a51565b919050565b303303611c13576109d2816121a6565b6109d281612073565b6109d26000805160206133f58339815191528261204b565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015611ccd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cf191906130de565b90506000611d9f866060015180519060200120868860200151604051602001611d3f9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b9050818660200151148015610ef057508551610ef0906001600160a01b031682866121d0565b600054610100900460ff16611dec5760405162461bcd60e51b8152600401610a5190613206565b6001603355565b600054610100900460ff16610d905760405162461bcd60e51b8152600401610a5190613206565b600054610100900460ff16611e415760405162461bcd60e51b8152600401610a5190613206565b610d90611e4c61170d565b611c34565b600054610100900460ff16611e785760405162461bcd60e51b8152600401610a5190613206565b610d906000611e8561170d565b61204b565b6000805160206133d5833981519152546040516383e7f6ff60e01b81526001600160a01b039091169060009082906383e7f6ff90611ed0908f908f908e90600401612f58565b6040805180830381865afa158015611eec573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f109190612f7c565b60208101518151919250611f2391612fca565b471015611f435760405163050205f960e01b815260040160405180910390fd5b816001600160a01b03166374694a2b82602001518360000151611f669190612fca565b8e8e8e8e8e8e8e8e8e8e6040518c63ffffffff1660e01b8152600401611f959a99989796959493929190613251565b6000604051808303818588803b158015611fae57600080fd5b505af1158015611fc2573d6000803e3d6000fd5b5050505050505050505050505050505050565b611fdd6119d7565b6001600160a01b0381166120425760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610a51565b6109d281611c34565b610a648282611950565b600030330361206b575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290526000906060016040516020818303038152906040528051906020012090506120c88190565b546120d4906001612fca565b905550565b60608285856040516020016120f0939291906132c3565b6040516020818303038152906040529050949350505050565b60608315612118575081610990565b8251156121285782518084602001fd5b8160405162461bcd60e51b8152600401610a5191906127a4565b61214c8282610efa565b610a6457612164816001600160a01b03166014612312565b61216f836020612312565b604051602001612180929190613302565b60408051601f198184030181529082905262461bcd60e51b8252610a51916004016127a4565b6121ae6124ad565b81146109d257604051635637b6af60e11b815260048101829052602401610a51565b60008060006121df85856124c0565b909250905060008160048111156121f8576121f8613377565b1480156122165750856001600160a01b0316826001600160a01b0316145b1561222657600192505050610990565b600080876001600160a01b0316631626ba7e60e01b888860405160240161224e92919061338d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161228c9190613195565b600060405180830381855afa9150503d80600081146122c7576040519150601f19603f3d011682016040523d82523d6000602084013e6122cc565b606091505b50915091508180156122df575080516020145b801561230657508051630b135d3f60e11b9061230490830160209081019084016130de565b145b98975050505050505050565b606060006123218360026133a6565b61232c906002612fca565b6001600160401b0381111561234357612343612849565b6040519080825280601f01601f19166020018201604052801561236d576020820181803683370190505b509050600360fc1b8160008151811061238857612388612eb5565b60200101906001600160f81b031916908160001a905350600f60fb1b816001815181106123b7576123b7612eb5565b60200101906001600160f81b031916908160001a90535060006123db8460026133a6565b6123e6906001612fca565b90505b600181111561245e576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061241a5761241a612eb5565b1a60f81b82828151811061243057612430612eb5565b60200101906001600160f81b031916908160001a90535060049490941c93612457816133bd565b90506123e9565b5083156109905760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610a51565b60003033036120705750601f1936013590565b60008082516041036124f65760208301516040840151606085015160001a6124ea87828585612505565b945094505050506124fe565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561253c57506000905060036125e9565b8460ff16601b1415801561255457508460ff16601c14155b1561256557506000905060046125e9565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156125b9573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166125e2576000600192509250506125e9565b9150600090505b94509492505050565b60006020828403121561260457600080fd5b81356001600160e01b03198116811461099057600080fd5b6001600160a01b03811681146109d257600080fd5b60008083601f84011261264357600080fd5b5081356001600160401b0381111561265a57600080fd5b6020830191508360208285010111156124fe57600080fd5b60008060008060006080868803121561268a57600080fd5b85356126958161261c565b945060208601356126a58161261c565b93506040860135925060608601356001600160401b038111156126c757600080fd5b6126d388828901612631565b969995985093965092949392505050565b6000806000604084860312156126f957600080fd5b83356001600160401b038082111561271057600080fd5b908501906080828803121561272457600080fd5b9093506020850135908082111561273a57600080fd5b5061274786828701612631565b9497909650939450505050565b60005b8381101561276f578181015183820152602001612757565b50506000910152565b60008151808452612790816020860160208601612754565b601f01601f19169290920160200192915050565b6020815260006109906020830184612778565b6000602082840312156127c957600080fd5b5035919050565b600080604083850312156127e357600080fd5b8235915060208301356127f58161261c565b809150509250929050565b60006020828403121561281257600080fd5b81356109908161261c565b6000806040838503121561283057600080fd5b823561283b8161261c565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561288757612887612849565b604052919050565b600060208083850312156128a257600080fd5b82356001600160401b03808211156128b957600080fd5b818501915085601f8301126128cd57600080fd5b8135818111156128df576128df612849565b8060051b91506128f084830161285f565b818152918301840191848101908884111561290a57600080fd5b938501935b8385101561230657843592506129248361261c565b828252938501939085019061290f565b60008060006040848603121561294957600080fd5b83356001600160401b0381111561295f57600080fd5b61296b86828701612631565b909790965060209590950135949350505050565b60006001600160401b0383111561299857612998612849565b6129ab601f8401601f191660200161285f565b90508281528383830111156129bf57600080fd5b828260208301376000602084830101529392505050565b600082601f8301126129e757600080fd5b6109908383356020850161297f565b60008083601f840112612a0857600080fd5b5081356001600160401b03811115612a1f57600080fd5b6020830191508360208260051b85010111156124fe57600080fd5b80358015158114611bfe57600080fd5b803561ffff81168114611bfe57600080fd5b6000806000806000806000806000806101208b8d031215612a7c57600080fd5b8a356001600160401b0380821115612a9357600080fd5b612a9f8e838f016129d6565b9b5060208d01359150612ab18261261c565b90995060408c0135985060608c0135975060808c013590612ad18261261c565b90965060a08c01359080821115612ae757600080fd5b50612af48d828e016129f6565b9096509450612b07905060c08c01612a3a565b9250612b1560e08c01612a4a565b9150612b246101008c01612a3a565b90509295989b9194979a5092959850565b60008060008060008060008060a0898b031215612b5157600080fd5b8835612b5c8161261c565b97506020890135612b6c8161261c565b965060408901356001600160401b0380821115612b8857600080fd5b612b948c838d016129f6565b909850965060608b0135915080821115612bad57600080fd5b612bb98c838d016129f6565b909650945060808b0135915080821115612bd257600080fd5b50612bdf8b828c01612631565b999c989b5096995094979396929594505050565b600080600060608486031215612c0857600080fd5b8335612c138161261c565b92506020840135612c238161261c565b91506040840135612c338161261c565b809150509250925092565b60008060008060008060008060008060006101208c8e031215612c6057600080fd5b6001600160401b03808d351115612c7657600080fd5b612c838e8e358f01612631565b909c509a50612c9560208e013561261c565b60208d0135995060408d0135985060608d01359750612cb760808e013561261c565b60808d013596508060a08e01351115612ccf57600080fd5b50612ce08d60a08e01358e016129f6565b9095509350612cf160c08d01612a3a565b9250612cff60e08d01612a4a565b9150612d0e6101008d01612a3a565b90509295989b509295989b9093969950565b60008060008060008060a08789031215612d3957600080fd5b8635612d448161261c565b95506020870135612d548161261c565b9450604087013593506060870135925060808701356001600160401b03811115612d7d57600080fd5b612d8989828a01612631565b979a9699509497509295939492505050565b600080600060608486031215612db057600080fd5b8335612dbb8161261c565b92506020840135612dcb8161261c565b915060408401356001600160401b03811115612de657600080fd5b612df2868287016129d6565b9150509250925092565b608081526000612e0f6080830187612778565b6001600160a01b03958616602084015261ffff949094166040830152509216606090920191909152919050565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090610ef090830184612778565b6000808335601e19843603018112612e8657600080fd5b8301803591506001600160401b03821115612ea057600080fd5b6020019150368190038213156124fe57600080fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201612ef357612ef3612ecb565b5060010190565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b604081526000612f6c604083018587612f2f565b9050826020830152949350505050565b600060408284031215612f8e57600080fd5b604051604081018181106001600160401b0382111715612fb057612fb0612849565b604052825181526020928301519281019290925250919050565b8082018082111561077357610773612ecb565b81835260006020808501808196508560051b810191508460005b878110156130615782840389528135601e1988360301811261301857600080fd5b870185810190356001600160401b0381111561303357600080fd5b80360382131561304257600080fd5b61304d868284612f2f565b9a87019a9550505090840190600101612ff7565b5091979650505050505050565b60006101008083526130828184018d612778565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a085015290506130bc818789612fdd565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b6000602082840312156130f057600080fd5b5051919050565b60006080823603121561310957600080fd5b604051608081016001600160401b03828210818311171561312c5761312c612849565b816040528435915061313d8261261c565b8183526020850135602084015260408501356040840152606085013591508082111561316857600080fd5b50830136601f82011261317a57600080fd5b6131893682356020840161297f565b60608301525092915050565b600082516131a7818460208701612754565b9190910192915050565b6000826131ce57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b6000602082840312156131fb57600080fd5b81516109908161261c565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60006101008083526132668184018d8f612f2f565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a085015290506132a0818789612fdd565b94151560c0840152505061ffff9190911660e09091015298975050505050505050565b600084516132d5818460208901612754565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081526000835161333a816017850160208801612754565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835161336b816028840160208801612754565b01602801949350505050565b634e487b7160e01b600052602160045260246000fd5b8281526040602082015260006110476040830184612778565b808202811582820484141761077357610773612ecb565b6000816133cc576133cc612ecb565b50600019019056fe412386de53449251cbf7ce1f4c6a038bf9c0746e62d331b08ef0c3fa7d0ab6729f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a660793a5062d506d35cc8f1beda67ee5028c16bfcd9c923d5bfc439c04bd929b1a164736f6c6343000811000a","storage":{"0x0":"0xff"}},"0xc58206842e4030a3b2cabc78780ae7635173c533":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106102325760003560e01c80637c69eae211610130578063b5466669116100b8578063d284d97a1161007c578063d284d97a14610d4e578063d8d3cc6e14610dbc578063e67ca8a314610e3f578063e985e9c514610e5c578063ebf0c71714610e8a57610232565b8063b5466669146109ce578063b88d4fde14610a51578063c29b52f914610b15578063c87b56dd14610c5e578063ce9fb82b14610c7b57610232565b8063a22cb465116100ff578063a22cb4651461090b578063a7fc7a0714610939578063ab3b87fe1461095f578063b3f9e4cb1461098b578063b429afeb146109a857610232565b80637c69eae21461076457806395d89b41146107e75780639d743989146107ef5780639e5be9a51461087d57610232565b806342842e0e116101be5780635cbe1112116101825780635cbe11121461061d5780636352211e1461069257806366ac3b68146106af57806368b62d32146106b757806370a082311461073e57610232565b806342842e0e146104ed57806342966c6814610523578063430c208114610540578063538361a71461056c57806357aac5741461058f57610232565b8063081812fc11610205578063081812fc146103fa578063095ea7b3146104335780632392c1891461045f57806323b872dd1461048b5780632525d06a146104c157610232565b806301ffc9a71461023757806302759c37146102725780630467e014146102aa57806306fdde031461037d575b600080fd5b61025e6004803603602081101561024d57600080fd5b50356001600160e01b031916610e92565b604080519115158252519081900360200190f35b6102a86004803603606081101561028857600080fd5b506001600160a01b03813581169160208101359091169060400135610eb1565b005b6102a8600480360360808110156102c057600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156102ef57600080fd5b82018360208201111561030157600080fd5b803590602001918460018302840111600160201b8311171561032257600080fd5b919390929091602081019035600160201b81111561033f57600080fd5b82018360208201111561035157600080fd5b803590602001918460018302840111600160201b8311171561037257600080fd5b509092509050610ed3565b610385610f62565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103bf5781810151838201526020016103a7565b50505050905090810190601f1680156103ec5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6104176004803603602081101561041057600080fd5b5035610f84565b604080516001600160a01b039092168252519081900360200190f35b6102a86004803603604081101561044957600080fd5b506001600160a01b038135169060200135610fe6565b6102a86004803603604081101561047557600080fd5b506001600160a01b0381351690602001356110f7565b6102a8600480360360608110156104a157600080fd5b506001600160a01b03813581169160208101359091169060400135611115565b6102a8600480360360408110156104d757600080fd5b506001600160a01b03813516906020013561115a565b6102a86004803603606081101561050357600080fd5b506001600160a01b0381358116916020810135909116906040013561117a565b6102a86004803603602081101561053957600080fd5b5035611195565b61025e6004803603604081101561055657600080fd5b506001600160a01b0381351690602001356111e6565b6102a86004803603604081101561058257600080fd5b50803590602001356111f9565b6102a8600480360360808110156105a557600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156105df57600080fd5b8201836020820111156105f157600080fd5b803590602001918460018302840111600160201b8311171561061257600080fd5b50909250905061124f565b6102a86004803603604081101561063357600080fd5b81359190810190604081016020820135600160201b81111561065457600080fd5b82018360208201111561066657600080fd5b803590602001918460018302840111600160201b8311171561068757600080fd5b5090925090506112be565b610417600480360360208110156106a857600080fd5b5035611320565b6102a861137a565b61072c600480360360408110156106cd57600080fd5b81359190810190604081016020820135600160201b8111156106ee57600080fd5b82018360208201111561070057600080fd5b803590602001918460018302840111600160201b8311171561072157600080fd5b509092509050611385565b60408051918252519081900360200190f35b61072c6004803603602081101561075457600080fd5b50356001600160a01b03166113cf565b6102a86004803603606081101561077a57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156107a957600080fd5b8201836020820111156107bb57600080fd5b803590602001918460018302840111600160201b831117156107dc57600080fd5b509092509050611437565b61038561149a565b6102a86004803603608081101561080557600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561083f57600080fd5b82018360208201111561085157600080fd5b803590602001918460018302840111600160201b8311171561087257600080fd5b5090925090506114b6565b6102a86004803603608081101561089357600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156108cd57600080fd5b8201836020820111156108df57600080fd5b803590602001918460018302840111600160201b8311171561090057600080fd5b509092509050611506565b6102a86004803603604081101561092157600080fd5b506001600160a01b0381351690602001351515611564565b6102a86004803603602081101561094f57600080fd5b50356001600160a01b0316611630565b6102a86004803603604081101561097557600080fd5b506001600160a01b03813516906020013561164b565b610417600480360360208110156109a157600080fd5b5035611672565b61025e600480360360208110156109be57600080fd5b50356001600160a01b0316611694565b6102a8600480360360608110156109e457600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610a1357600080fd5b820183602082011115610a2557600080fd5b803590602001918460018302840111600160201b83111715610a4657600080fd5b5090925090506116a7565b6102a860048036036080811015610a6757600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b811115610aa157600080fd5b820183602082011115610ab357600080fd5b803590602001918460018302840111600160201b83111715610ad457600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506116fa945050505050565b6102a8600480360360a0811015610b2b57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b811115610b6557600080fd5b820183602082011115610b7757600080fd5b803590602001918460018302840111600160201b83111715610b9857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b811115610bea57600080fd5b820183602082011115610bfc57600080fd5b803590602001918460018302840111600160201b83111715610c1d57600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061174c945050505050565b61038560048036036020811015610c7457600080fd5b5035611797565b6102a860048036036080811015610c9157600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610cc057600080fd5b820183602082011115610cd257600080fd5b803590602001918460018302840111600160201b83111715610cf357600080fd5b919390929091602081019035600160201b811115610d1057600080fd5b820183602082011115610d2257600080fd5b803590602001918460018302840111600160201b83111715610d4357600080fd5b509092509050611892565b6102a860048036036020811015610d6457600080fd5b810190602081018135600160201b811115610d7e57600080fd5b820183602082011115610d9057600080fd5b803590602001918460018302840111600160201b83111715610db157600080fd5b50909250905061191b565b6102a860048036036060811015610dd257600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610e0157600080fd5b820183602082011115610e1357600080fd5b803590602001918460018302840111600160201b83111715610e3457600080fd5b50909250905061199e565b6102a860048036036020811015610e5557600080fd5b50356119f3565b61025e60048036036040811015610e7257600080fd5b506001600160a01b0381358116916020013516611a05565b61072c611a33565b6001600160e01b03191660009081526020819052604090205460ff1690565b610eba33611694565b610ec357600080fd5b610ece838383611a57565b505050565b610edc33611694565b610ee557600080fd5b610f5a868686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8a018190048102820181019092528881529250889150879081908401838280828437600092019190915250611a9f92505050565b505050505050565b6040805180820190915260078152662e63727970746f60c81b60208201525b90565b6000610f8f82611ac9565b610fca5760405162461bcd60e51b815260040180806020018281038252602c815260200180612848602c913960400191505060405180910390fd5b506000908152600360205260409020546001600160a01b031690565b6000610ff182611320565b9050806001600160a01b0316836001600160a01b031614156110445760405162461bcd60e51b81526004018080602001828103825260218152602001806128bf6021913960400191505060405180910390fd5b336001600160a01b038216148061106057506110608133611a05565b61109b5760405162461bcd60e51b815260040180806020018281038252603881526020018061279c6038913960400191505060405180910390fd5b60008281526003602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b806111023382611ae6565b61110b57600080fd5b610ece8383611b82565b61111f3382611ae6565b610ec35760405162461bcd60e51b81526004018080602001828103825260318152602001806128e06031913960400191505060405180910390fd5b61116333611694565b61116c57600080fd5b6111768282611b82565b5050565b610ece838383604051806020016040528060008152506116fa565b61119f3382611ae6565b6111da5760405162461bcd60e51b81526004018080602001828103825260308152602001806129366030913960400191505060405180910390fd5b6111e381611bf8565b50565b60006111f28383611ae6565b9392505050565b6000828152600860205260409020546001600160a01b0316331461121c57600080fd5b6040518290829033907ff10fc780c78f994a214c79a2ae8d8b7bfe7cc3f0f935a8f05a29525e71d7f12790600090a45050565b61125833611694565b61126157600080fd5b61126c858585611a57565b6112ae85858585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611c7992505050565b6112b757600080fd5b5050505050565b826112c93382611ae6565b6112d257600080fd5b61131a6113158585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b611bf8565b50505050565b6000818152600260205260408120546001600160a01b0316806113745760405162461bcd60e51b81526004018080602001828103825260298152602001806127fe6029913960400191505060405180910390fd5b92915050565b61138333611e64565b565b60006113c78484848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b949350505050565b60006001600160a01b0382166114165760405162461bcd60e51b815260040180806020018281038252602a8152602001806127d4602a913960400191505060405180910390fd5b6001600160a01b038216600090815260046020526040902061137490611e75565b826114423382611ae6565b61144b57600080fd5b6112b7858585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250611a9f915050565b604080518082019091526002815261155160f21b602082015290565b6112b785858585858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201829052506040805160208101909152908152925061174c915050565b826115113382611ae6565b61151a57600080fd5b610f5a868661155f8787878080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b611a57565b6001600160a01b0382163314156115c2576040805162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604482015290519081900360640190fd5b3360008181526005602090815260408083206001600160a01b03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b61163933611694565b61164257600080fd5b6111e381611e79565b806116563382611ae6565b61165f57600080fd5b610ece61166b83611320565b8484611e8a565b6000818152600860205260408120546001600160a01b03168061137457600080fd5b600061137460018363ffffffff611fce16565b6116b033611694565b6116b957600080fd5b61131a848484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061203592505050565b611705848484611115565b61171184848484611c79565b61131a5760405162461bcd60e51b815260040180806020018281038252603281526020018061271a6032913960400191505060405180910390fd5b826117573382611ae6565b61176057600080fd5b600061176c8585611dac565b9050611779878783611a57565b61178587878386611c79565b61178e57600080fd5b50505050505050565b60606117a282611ac9565b6117ab57600080fd5b600760066000848152602001908152602001600020604051602001808380546001816001161561010002031660029004801561181e5780601f106117fc57610100808354040283529182019161181e565b820191906000526020600020905b81548152906001019060200180831161180a575b5050828054600181600116156101000203166002900480156118775780601f10611855576101008083540402835291820191611877565b820191906000526020600020905b815481529060010190602001808311611863575b505060408051601f1981840301815291905295945050505050565b8461189d3382611ae6565b6118a657600080fd5b61178e878787878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b018190048102820181019092528981529250899150889081908401838280828437600092019190915250611a9f92505050565b61192433611694565b61192d57600080fd5b611939600783836125cf565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b828260405180806020018281038252848482818152602001925080828437600083820152604051601f909101601f19169092018290039550909350505050a15050565b826119a93382611ae6565b6119b257600080fd5b6112b7858585858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061203592505050565b6119fc33611694565b6111da57600080fd5b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b7f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f90565b611a62838383611e8a565b6000818152600860205260409020546001600160a01b031615610ece57600090815260086020526040902080546001600160a01b03191690555050565b611aaa848484612035565b611ac0600085611aba8686611dac565b84611c79565b61131a57600080fd5b6000908152600260205260409020546001600160a01b0316151590565b6000611af182611ac9565b611b2c5760405162461bcd60e51b815260040180806020018281038252602c815260200180612770602c913960400191505060405180910390fd5b6000611b3783611320565b9050806001600160a01b0316846001600160a01b03161480611b725750836001600160a01b0316611b6784610f84565b6001600160a01b0316145b806113c757506113c78185611a05565b611b8b81611ac9565b611b9457600080fd5b6040516001600160a01b0383169082907fb1b34e6d89e1c584527d447f4b29ffad55635a37edeeb564939a6483401b31a590600090a3600090815260086020526040902080546001600160a01b0319166001600160a01b0392909216919091179055565b611c018161220f565b6000818152600860205260409020546001600160a01b031615611c3b57600081815260086020526040902080546001600160a01b03191690555b60008181526006602052604090205460026000196101006001841615020190911604156111e35760008181526006602052604081206111e39161264d565b6000611c8d846001600160a01b0316612221565b611c99575060016113c7565b604051630a85bd0160e11b815233600482018181526001600160a01b03888116602485015260448401879052608060648501908152865160848601528651600095928a169463150b7a029490938c938b938b939260a4019060208501908083838e5b83811015611d13578181015183820152602001611cfb565b50505050905090810190601f168015611d405780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015611d6257600080fd5b505af1158015611d76573d6000803e3d6000fd5b505050506040513d6020811015611d8c57600080fd5b50516001600160e01b031916630a85bd0160e11b14915050949350505050565b6000815160001415611dbd57600080fd5b82826040516020018082805190602001908083835b60208310611df15780518252601f199092019160209182019101611dd2565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040528051906020012060405160200180838152602001828152602001925050506040516020818303038152906040528051906020012060001c905092915050565b6111e360018263ffffffff61222716565b5490565b6111e360018263ffffffff61228e16565b826001600160a01b0316611e9d82611320565b6001600160a01b031614611ee25760405162461bcd60e51b81526004018080602001828103825260298152602001806128966029913960400191505060405180910390fd5b6001600160a01b038216611f275760405162461bcd60e51b815260040180806020018281038252602481526020018061274c6024913960400191505060405180910390fd5b611f308161230f565b6001600160a01b0383166000908152600460205260409020611f519061234a565b6001600160a01b0382166000908152600460205260409020611f7290612361565b60008181526002602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60006001600160a01b0382166120155760405162461bcd60e51b81526004018080602001828103825260228152602001806128746022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b60006120418383611dac565b905061204d848261236a565b815161205857600080fd5b61206181611ac9565b61206a57600080fd5b606082600660008681526020019081526020016000206040516020018083805190602001908083835b602083106120b25780518252601f199092019160209182019101612093565b6001836020036101000a03801982511681845116808217855250505050505090500180601760f91b815250600101828054600181600116156101000203166002900480156121375780601f10612115576101008083540402835291820191612137565b820191906000526020600020905b815481529060010190602001808311612123575b505060408051601f19818403018152918152600087815260066020908152919020825192965061216d9550935085019150612691565b50817fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952826040518080602001828103825283818151815260200191508051906020019080838360005b838110156121ce5781810151838201526020016121b6565b50505050905090810190601f1680156121fb5780820380516001836020036101000a031916815260200191505b509250505060405180910390a25050505050565b6111e361221b82611320565b8261249b565b3b151590565b6122318282611fce565b61226c5760405162461bcd60e51b81526004018080602001828103825260218152602001806128276021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff19169055565b6122988282611fce565b156122ea576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b6000818152600360205260409020546001600160a01b0316156111e357600090815260036020526040902080546001600160a01b0319169055565b805461235d90600163ffffffff61257216565b9055565b80546001019055565b6001600160a01b0382166123c5576040805162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f2061646472657373604482015290519081900360640190fd5b6123ce81611ac9565b15612420576040805162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000604482015290519081900360640190fd5b600081815260026020908152604080832080546001600160a01b0319166001600160a01b03871690811790915583526004909152902061245f90612361565b60405181906001600160a01b038416906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b816001600160a01b03166124ae82611320565b6001600160a01b0316146124f35760405162461bcd60e51b81526004018080602001828103825260258152602001806129116025913960400191505060405180910390fd5b6124fc8161230f565b6001600160a01b038216600090815260046020526040902061251d9061234a565b60008181526002602052604080822080546001600160a01b0319169055518291906001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6000828211156125c9576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106126105782800160ff1982351617855561263d565b8280016001018555821561263d579182015b8281111561263d578235825591602001919060010190612622565b506126499291506126ff565b5090565b50805460018160011615610100020316600290046000825580601f1061267357506111e3565b601f0160209004906000526020600020908101906111e391906126ff565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106126d257805160ff191683800117855561263d565b8280016001018555821561263d579182015b8281111561263d5782518255916020019190600101906126e4565b610f8191905b80821115612649576000815560010161270556fe4552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c654552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e526f6c65733a206163636f756e7420697320746865207a65726f20616464726573734552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f7665644552433732313a206275726e206f6620746f6b656e2074686174206973206e6f74206f776e4552433732314275726e61626c653a2063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564a265627a7a72315820fb6a1b26cc352dbb05e6627fd530bbb44114ac3a349f30d1f071136c656d20dc64736f6c634300050c0032","storage":{"0x7":"0x68747470733a2f2f6578616d706c652e636f6d2f000000000000000000000028","0xbdf39e9e65b2355b1b0b06df799c09159f0ab90f06a9bb2153f5de7d9b0ea81":"0x1","0x1a306d3e9bf29128dee78d8d16c9f378a11bbdf917a9caf986fc6e60846e37e7":"0x63727970746f000000000000000000000000000000000000000000000000000c","0x42c63635470f1fb1d6d4b6441c413cb435b1ebb6fedd1896dd5e25d1399147dd":"0x1","0x605d7a0bb2b20c4004d356eb969ff104dcca62360aa356247072f5e0df6472e3":"0xdead","0x67be87c3ff9960ca1e9cfac5cab2ff4747269cf9ed20c9b7306235ac35a491c5":"0x1","0x70f464f95f9ab7aba03264fd4cac1711d774d3703ce74217180264d4efc2105f":"0x1","0x76a72f26a108e6f3f687141f5f42d21d65857c03cb1b01aa1284f9a9ccd085da":"0x1","0x9562381dfbc2d8b8b66e765249f330164b73e329e5f01670660643571d1974df":"0x1","0x9f23d2403fb64167582d316b1bc5b35a6ed48524341ab24947c71df77304b29e":"0x1","0xf7815fccbf112960a73756e185887fedcb9fc64ca0a16cc5923b7960ed780800":"0x1"}},"0xc965345edac823d56812cd20a10316233916a605":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101c6575f3560e01c806395d89b41116100fe578063c87b56dd1161009e578063e985e9c51161006e578063e985e9c5146103d4578063f2fde38b1461040f578063f6a74ed714610422578063fca247ac14610435575f80fd5b8063c87b56dd14610377578063d6e4fa861461038a578063da8c229e146103a9578063ddf7fcb0146103cb575f80fd5b8063a7fc7a07116100d9578063a7fc7a0714610334578063b88d4fde14610347578063c1a287e21461035a578063c475abff14610364575f80fd5b806395d89b411461030657806396e494e81461030e578063a22cb46514610321575f80fd5b80633f15457f116101695780636352211e116101445780636352211e146102c757806370a08231146102da578063715018a6146102ed5780638da5cb5b146102f5575f80fd5b80633f15457f1461028e57806342842e0e146102a15780634e543b26146102b4575f80fd5b8063095ea7b3116101a4578063095ea7b3146102325780630e297b451461024757806323b872dd1461026857806328ed4f6c1461027b575f80fd5b806301ffc9a7146101ca57806306fdde03146101f2578063081812fc14610207575b5f80fd5b6101dd6101d83660046117dd565b610448565b60405190151581526020015b60405180910390f35b6101fa610499565b6040516101e99190611845565b61021a610215366004611857565b610528565b6040516001600160a01b0390911681526020016101e9565b610245610240366004611882565b61054d565b005b61025a6102553660046118ac565b610666565b6040519081526020016101e9565b6102456102763660046118e1565b61067b565b61024561028936600461190e565b6106ac565b60085461021a906001600160a01b031681565b6102456102af3660046118e1565b6107be565b6102456102c236600461193c565b6107d8565b61021a6102d5366004611857565b610848565b61025a6102e836600461193c565b610869565b6102456108ed565b6006546001600160a01b031661021a565b6101fa610900565b6101dd61031c366004611857565b61090f565b61024561032f366004611957565b610934565b61024561034236600461193c565b610943565b61024561035536600461199b565b610996565b61025a6276a70081565b61025a610372366004611a74565b6109ce565b6101fa610385366004611857565b610b52565b61025a610398366004611857565b5f9081526007602052604090205490565b6101dd6103b736600461193c565b600a6020525f908152604090205460ff1681565b61025a60095481565b6101dd6103e2366004611a94565b6001600160a01b039182165f90815260056020908152604080832093909416825291909152205460ff1690565b61024561041d36600461193c565b610bc2565b61024561043036600461193c565b610c3b565b61025a6104433660046118ac565b610c8b565b5f6001600160e01b031982166301ffc9a760e01b148061047857506001600160e01b031982166380ac58cd60e01b145b8061049357506001600160e01b03198216630a3b53db60e21b145b92915050565b60605f80546104a790611ac0565b80601f01602080910402602001604051908101604052809291908181526020018280546104d390611ac0565b801561051e5780601f106104f55761010080835404028352916020019161051e565b820191905f5260205f20905b81548152906001019060200180831161050157829003601f168201915b5050505050905090565b5f61053282610c99565b505f908152600460205260409020546001600160a01b031690565b5f61055782610cf7565b9050806001600160a01b0316836001600160a01b0316036105c95760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084015b60405180910390fd5b336001600160a01b03821614806105e557506105e581336103e2565b6106575760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016105c0565b6106618383610d56565b505050565b5f6106738484845f610dc3565b949350505050565b6106853382610fc7565b6106a15760405162461bcd60e51b81526004016105c090611af8565b610661838383611040565b6008546009546040516302571be360e01b8152600481019190915230916001600160a01b0316906302571be390602401602060405180830381865afa1580156106f7573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061071b9190611b45565b6001600160a01b03161461072d575f80fd5b6107373383610fc7565b61073f575f80fd5b6008546009546040516306ab592360e01b81526004810191909152602481018490526001600160a01b038381166044830152909116906306ab5923906064016020604051808303815f875af115801561079a573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106619190611b60565b61066183838360405180602001604052805f815250610996565b6107e06111a2565b600854600954604051630c4b7b8560e11b815260048101919091526001600160a01b03838116602483015290911690631896f70a906044015f604051808303815f87803b15801561082f575f80fd5b505af1158015610841573d5f803e3d5ffd5b5050505050565b5f818152600760205260408120544210610860575f80fd5b61049382610cf7565b5f6001600160a01b0382166108d25760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b60648201526084016105c0565b506001600160a01b03165f9081526003602052604090205490565b6108f56111a2565b6108fe5f6111fc565b565b6060600180546104a790611ac0565b5f81815260076020526040812054429061092d906276a70090611b77565b1092915050565b61093f33838361124d565b5050565b61094b6111a2565b6001600160a01b0381165f818152600a6020526040808220805460ff19166001179055517f0a8bb31534c0ed46f380cb867bd5c803a189ced9a764e30b3a4991a9901d74749190a250565b6109a03383610fc7565b6109bc5760405162461bcd60e51b81526004016105c090611af8565b6109c88484848461131a565b50505050565b6008546009546040516302571be360e01b815260048101919091525f9130916001600160a01b03909116906302571be390602401602060405180830381865afa158015610a1d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a419190611b45565b6001600160a01b031614610a53575f80fd5b335f908152600a602052604090205460ff16610a6d575f80fd5b5f838152600760205260409020544290610a8b906276a70090611b77565b1015610a95575f80fd5b610aa26276a70083611b77565b5f848152600760205260409020546276a70090610ac0908590611b77565b610aca9190611b77565b11610ad3575f80fd5b5f8381526007602052604081208054849290610af0908490611b77565b90915550505f838152600760205260409081902054905184917f9b87a00e30f1ac65d898f070f8a3488fe60517182d0a2098e1b4b93a54aa9bd691610b3791815260200190565b60405180910390a250505f9081526007602052604090205490565b6060610b5d82610c99565b5f610b7260408051602081019091525f815290565b90505f815111610b905760405180602001604052805f815250610bbb565b80610b9a8461134d565b604051602001610bab929190611b96565b6040516020818303038152906040525b9392505050565b610bca6111a2565b6001600160a01b038116610c2f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016105c0565b610c38816111fc565b50565b610c436111a2565b6001600160a01b0381165f818152600a6020526040808220805460ff19169055517f33d83959be2573f5453b12eb9d43b3499bc57d96bd2f067ba44803c859e811139190a250565b5f6106738484846001610dc3565b5f818152600260205260409020546001600160a01b0316610c385760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105c0565b5f818152600260205260408120546001600160a01b0316806104935760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105c0565b5f81815260046020526040902080546001600160a01b0319166001600160a01b0384169081179091558190610d8a82610cf7565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6008546009546040516302571be360e01b815260048101919091525f9130916001600160a01b03909116906302571be390602401602060405180830381865afa158015610e12573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e369190611b45565b6001600160a01b031614610e48575f80fd5b335f908152600a602052604090205460ff16610e62575f80fd5b610e6b8561090f565b610e73575f80fd5b610e806276a70042611b77565b6276a700610e8e8542611b77565b610e989190611b77565b11610ea1575f80fd5b610eab8342611b77565b5f868152600760209081526040808320939093556002905220546001600160a01b031615610edc57610edc856113dd565b610ee6848661146f565b8115610f6d576008546009546040516306ab592360e01b81526004810191909152602481018790526001600160a01b038681166044830152909116906306ab5923906064016020604051808303815f875af1158015610f47573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f6b9190611b60565b505b6001600160a01b038416857fb3d987963d01b2f68493b4bdb130988f157ea43070d4ad840fee0466ed9370d9610fa38642611b77565b60405190815260200160405180910390a3610fbe8342611b77565b95945050505050565b5f80610fd283610848565b9050806001600160a01b0316846001600160a01b0316148061100d5750836001600160a01b031661100284610528565b6001600160a01b0316145b8061067357506001600160a01b038082165f9081526005602090815260408083209388168352929052205460ff16610673565b826001600160a01b031661105382610cf7565b6001600160a01b0316146110795760405162461bcd60e51b81526004016105c090611bc4565b6001600160a01b0382166110db5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b60648201526084016105c0565b826001600160a01b03166110ee82610cf7565b6001600160a01b0316146111145760405162461bcd60e51b81526004016105c090611bc4565b5f81815260046020908152604080832080546001600160a01b03199081169091556001600160a01b038781168086526003855283862080545f1901905590871680865283862080546001019055868652600290945282852080549092168417909155905184937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6006546001600160a01b031633146108fe5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016105c0565b600680546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b816001600160a01b0316836001600160a01b0316036112ae5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c65720000000000000060448201526064016105c0565b6001600160a01b038381165f81815260056020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b611325848484611040565b611331848484846115f7565b6109c85760405162461bcd60e51b81526004016105c090611c09565b60605f611359836116f1565b60010190505f8167ffffffffffffffff81111561137857611378611987565b6040519080825280601f01601f1916602001820160405280156113a2576020820181803683370190505b5090508181016020015b5f19016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a85049450846113ac57509392505050565b5f6113e782610cf7565b90506113f282610cf7565b5f83815260046020908152604080832080546001600160a01b03199081169091556001600160a01b0385168085526003845282852080545f190190558785526002909352818420805490911690555192935084927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6001600160a01b0382166114c55760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f206164647265737360448201526064016105c0565b5f818152600260205260409020546001600160a01b0316156115295760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105c0565b5f818152600260205260409020546001600160a01b03161561158d5760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105c0565b6001600160a01b0382165f81815260036020908152604080832080546001019055848352600290915280822080546001600160a01b0319168417905551839291907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b5f6001600160a01b0384163b156116e957604051630a85bd0160e11b81526001600160a01b0385169063150b7a029061163a903390899088908890600401611c5b565b6020604051808303815f875af1925050508015611674575060408051601f3d908101601f1916820190925261167191810190611c97565b60015b6116cf573d8080156116a1576040519150601f19603f3d011682016040523d82523d5f602084013e6116a6565b606091505b5080515f036116c75760405162461bcd60e51b81526004016105c090611c09565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610673565b506001610673565b5f8072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b831061172f5772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef8100000000831061175b576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc10000831061177957662386f26fc10000830492506010015b6305f5e1008310611791576305f5e100830492506008015b61271083106117a557612710830492506004015b606483106117b7576064830492506002015b600a83106104935760010192915050565b6001600160e01b031981168114610c38575f80fd5b5f602082840312156117ed575f80fd5b8135610bbb816117c8565b5f5b838110156118125781810151838201526020016117fa565b50505f910152565b5f81518084526118318160208601602086016117f8565b601f01601f19169290920160200192915050565b602081525f610bbb602083018461181a565b5f60208284031215611867575f80fd5b5035919050565b6001600160a01b0381168114610c38575f80fd5b5f8060408385031215611893575f80fd5b823561189e8161186e565b946020939093013593505050565b5f805f606084860312156118be575f80fd5b8335925060208401356118d08161186e565b929592945050506040919091013590565b5f805f606084860312156118f3575f80fd5b83356118fe8161186e565b925060208401356118d08161186e565b5f806040838503121561191f575f80fd5b8235915060208301356119318161186e565b809150509250929050565b5f6020828403121561194c575f80fd5b8135610bbb8161186e565b5f8060408385031215611968575f80fd5b82356119738161186e565b915060208301358015158114611931575f80fd5b634e487b7160e01b5f52604160045260245ffd5b5f805f80608085870312156119ae575f80fd5b84356119b98161186e565b935060208501356119c98161186e565b925060408501359150606085013567ffffffffffffffff808211156119ec575f80fd5b818701915087601f8301126119ff575f80fd5b813581811115611a1157611a11611987565b604051601f8201601f19908116603f01168101908382118183101715611a3957611a39611987565b816040528281528a6020848701011115611a51575f80fd5b826020860160208301375f60208483010152809550505050505092959194509250565b5f8060408385031215611a85575f80fd5b50508035926020909101359150565b5f8060408385031215611aa5575f80fd5b8235611ab08161186e565b915060208301356119318161186e565b600181811c90821680611ad457607f821691505b602082108103611af257634e487b7160e01b5f52602260045260245ffd5b50919050565b6020808252602d908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526c1c881bdc88185c1c1c9bdd9959609a1b606082015260800190565b5f60208284031215611b55575f80fd5b8151610bbb8161186e565b5f60208284031215611b70575f80fd5b5051919050565b8082018082111561049357634e487b7160e01b5f52601160045260245ffd5b5f8351611ba78184602088016117f8565b835190830190611bbb8183602088016117f8565b01949350505050565b60208082526025908201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060408201526437bbb732b960d91b606082015260800190565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6001600160a01b03858116825284166020820152604081018390526080606082018190525f90611c8d9083018461181a565b9695505050505050565b5f60208284031215611ca7575f80fd5b8151610bbb816117c856fea164736f6c6343000818000a","storage":{"0x0":"0x0","0x1":"0x0","0x6":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x8":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0x9":"0x93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae","0x9b8bc185dce56a7ea1b27d35e40ac15dcdf9144303dfd4d8880220078bf21a2c":"0x1","0xdb5e6a17df8534b92b0c8de590f14b4fb4b5eb2c62ef1bf7a05555e354797508":"0x1","0xe1a982900207b619cb6c39be8cb5e60da1370171412fb65b5efc25e2dce3c34c":"0x1"}},"0xce4bb7dc1eb9dce75743de6a4b48534fd427ef51":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xe85541865bbb62a05064ce5c9f41cc293a8ea996","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0xd178b720229c39de617846f84cf9c8d32a63a23d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610106575f3560e01c806371017a541161009e5780639e32d3641161006e5780639e32d3641461025a578063a424740014610281578063dd6b9e2214610294578063e1c4b65a146102a7578063e35a14e5146102ba575f80fd5b806371017a541461020e5780637b103999146102215780638f0dbd25146102345780639810b69514610247575f80fd5b8063485cc955116100d9578063485cc95514610191578063572b6c05146101a457806358884432146101d05780636ccbae5f146101fb575f80fd5b8063150b7a021461010a5780631694116d1461013b5780631bf7e13e146101505780631c351a9d14610170575b5f80fd5b61011d610118366004611434565b6102e2565b6040516001600160e01b031990911681526020015b60405180910390f35b61014e6101493660046114e3565b610372565b005b61016361015e366004611549565b61040d565b6040516101329190611601565b61018361017e366004611613565b6104d6565b604051908152602001610132565b61014e61019f366004611666565b6105c3565b6101c06101b236600461169d565b6001600160a01b0316301490565b6040519015158152602001610132565b6067546101e3906001600160a01b031681565b6040516001600160a01b039091168152602001610132565b6101836102093660046116b8565b6106f8565b6101e361021c3660046116cf565b610751565b6066546101e3906001600160a01b031681565b61014e6102423660046116ef565b610791565b6101e36102553660046116cf565b610806565b6101837fd81bbfcee722494b885e891546eeac23d0eedcd44038d7a2f6ef9ec2f9e0d23981565b6101c061028f366004611549565b61085f565b6101c06102a236600461172d565b6108a8565b61014e6102b5366004611771565b61091d565b6101e36102c83660046116b8565b5f908152606560205260409020546001600160a01b031690565b6066545f906001600160a01b03166102f8610a43565b6001600160a01b031614158061032257505f848152606560205260409020546001600160a01b0316155b156103605783610330610a43565b60405163634afa0d60e01b815260048101929092526001600160a01b031660248201526044015b60405180910390fd5b50630a85bd0160e11b95945050505050565b828261037e8282610751565b6001600160a01b031661038f610a43565b6001600160a01b0316146103c057604051632cd9b44d60e11b81526004810183905260248101829052604401610357565b5f6103cb8686610806565b90505f5b87811015610402576103fa8989838181106103ec576103ec6117b0565b905060200201358387610a51565b6001016103cf565b505050505050505050565b60605f5a905061041e85858561085f565b61043b57604051638baa579f60e01b815260040160405180910390fd5b6104cb61044b602087018761169d565b3060408801358461045f60608b018b6117c4565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f92019190915250610b8492505050565b9150505b9392505050565b6067545f906001600160a01b031663aa271e1a6104f1610a43565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015610533573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105579190611807565b1580610572575030610567610a43565b6001600160a01b0316145b156105a45761057f610a43565b60405163e2c8c9d560e01b81526001600160a01b039091166004820152602401610357565b5f6105b0858585610c60565b90506105bb81610e73565b949350505050565b5f54610100900460ff16158080156105e157505f54600160ff909116105b806105fa5750303b1580156105fa57505f5460ff166001145b61065d5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610357565b5f805460ff19166001179055801561067e575f805461ff0019166101001790555b606680546001600160a01b038086166001600160a01b031992831617909255606780549285169290911691909117905580156106f3575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f9061074a906060016040516020818303038152906040528051906020012090565b5492915050565b5f80838360405160200161076f929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209150505b92915050565b828261079d8282610751565b6001600160a01b03166107ae610a43565b6001600160a01b0316146107df57604051632cd9b44d60e11b81526004810183905260248101829052604401610357565b856107e981610e73565b6107fd876107f78889610806565b86610a51565b50505050505050565b5f8060026108148585610e8f565b6040516108219190611826565b602060405180830381855afa15801561083c573d5f803e3d5ffd5b5050506040513d601f19601f820116820180604052508101906105bb9190611841565b5f6105bb61086c856118c6565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250610f1492505050565b5f805b8281101561091257846001600160a01b03166108f38585848181106108d2576108d26117b0565b905060200201355f908152606560205260409020546001600160a01b031690565b6001600160a01b03161461090a575f9150506104cf565b6001016108ab565b506001949350505050565b6067546001600160a01b031663aa271e1a610936610a43565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015610978573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061099c9190611807565b15806109b75750306109ac610a43565b6001600160a01b0316145b156109c45761057f610a43565b5f5b818110156106f357610a3a8383838181106109e3576109e36117b0565b90506020028101906109f59190611983565b610a039060208101906117c4565b858585818110610a1557610a156117b0565b9050602002810190610a279190611983565b610a3590602081019061169d565b610c60565b506001016109c6565b5f610a4c611059565b905090565b5f838152606560205260409020546001600160a01b03838116911614610ab4575f83815260656020526040908190205490516326995d8360e11b8152600481018590526001600160a01b0391821660248201529083166044820152606401610357565b5f838152606560205260409081902080546001600160a01b03191690556066549051632142170760e11b81523060048201526001600160a01b03838116602483015260448201869052909116906342842e0e906064015f604051808303815f87803b158015610b21575f80fd5b505af1158015610b33573d5f803e3d5ffd5b50505050806001600160a01b0316610b49610a43565b6001600160a01b0316847f9a471856befea1cabcd7fc8a1c4d70ea07b8ed2ee205cc361f932433542ef3fe60405160405180910390a4505050565b6060610b8f85611076565b5f80876001600160a01b031686610ba88b8a89896110db565b604051610bb59190611826565b5f604051808303815f8787f1925050503d805f8114610bef576040519150601f19603f3d011682016040523d82523d5f602084013e610bf4565b606091505b509092509050610c05603f876119bf565b5a11610c1357610c136119d2565b610c5382826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061110b565b9998505050505050505050565b5f60605f7fd81bbfcee722494b885e891546eeac23d0eedcd44038d7a2f6ef9ec2f9e0d2398686604051602001610c989291906119e6565b60405160208183030381529060405280519060200120604051602001610cc8929190918252602082015260400190565b60408051808303601f19018152828252805160209091012060028084526060840190925292505f9190816020015b6060815260200190600190039081610cf657905050905086868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920182905250855186945090925015159050610d5657610d566117b0565b6020026020010181905250604051806040016040528060038152602001621e9a5b60ea1b81525081600181518110610d9057610d906117b0565b6020908102919091018101919091525f8381526065909152604080822080546001600160a01b0319166001600160a01b03898116919091179091556067549151635cd7e3b360e01b8152911691635cd7e3b391610df891309186918991829190600401611a4d565b5f604051808303815f87803b158015610e0f575f80fd5b505af1158015610e21573d5f803e3d5ffd5b50505050846001600160a01b0316827f08717469d38a4b02325ea6637978c7952f94d3d8fc7848994f618ddbf4d637f18989604051610e61929190611aab565b60405180910390a35095945050505050565b303303610e8657610e8381611144565b50565b610e8381611076565b60605f82610e9f60016020611ad9565b60ff1660208110610eb257610eb26117b0565b1a9050610ec0600282611af2565b60ff1615610ecf576003610ed2565b60025b84604051602001610efc92919060f89290921b6001600160f81b0319168252600182015260210190565b60405160208183030381529060405291505092915050565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015610f58573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f7c9190611841565b90505f611029866060015180519060200120868860200151604051602001610fc99392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561104f5750855161104f906001600160a01b0316828661116e565b9695505050505050565b5f30330361106e575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f906060016040516020818303038152906040528051906020012090506110ca8190565b546110d6906001611b13565b905550565b60608285856040516020016110f293929190611b26565b6040516020818303038152906040529050949350505050565b6060831561111a5750816104cf565b82511561112a5782518084602001fd5b8160405162461bcd60e51b81526004016103579190611601565b61114c6112a9565b8114610e8357604051635637b6af60e11b815260048101829052602401610357565b5f805f61117b85856112bb565b90925090505f81600481111561119357611193611b64565b1480156111b15750856001600160a01b0316826001600160a01b0316145b156111c1576001925050506104cf565b5f80876001600160a01b0316631626ba7e60e01b88886040516024016111e8929190611b78565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516112269190611826565b5f60405180830381855afa9150503d805f811461125e576040519150601f19603f3d011682016040523d82523d5f602084013e611263565b606091505b5091509150818015611276575080516020145b801561129d57508051630b135d3f60e11b9061129b9083016020908101908401611841565b145b98975050505050505050565b5f3033036110735750601f1936013590565b5f8082516041036112ef576020830151604084015160608501515f1a6112e3878285856112fd565b945094505050506112f6565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561133257505f905060036113d9565b8460ff16601b1415801561134a57508460ff16601c14155b1561135a57505f905060046113d9565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156113ab573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b0381166113d3575f600192509250506113d9565b91505f90505b94509492505050565b6001600160a01b0381168114610e83575f80fd5b5f8083601f840112611406575f80fd5b50813567ffffffffffffffff81111561141d575f80fd5b6020830191508360208285010111156112f6575f80fd5b5f805f805f60808688031215611448575f80fd5b8535611453816113e2565b94506020860135611463816113e2565b935060408601359250606086013567ffffffffffffffff811115611485575f80fd5b611491888289016113f6565b969995985093965092949392505050565b5f8083601f8401126114b2575f80fd5b50813567ffffffffffffffff8111156114c9575f80fd5b6020830191508360208260051b85010111156112f6575f80fd5b5f805f805f608086880312156114f7575f80fd5b853567ffffffffffffffff81111561150d575f80fd5b611519888289016114a2565b9096509450506020860135925060408601359150606086013561153b816113e2565b809150509295509295909350565b5f805f6040848603121561155b575f80fd5b833567ffffffffffffffff80821115611572575f80fd5b9085019060808288031215611585575f80fd5b9093506020850135908082111561159a575f80fd5b506115a7868287016113f6565b9497909650939450505050565b5f5b838110156115ce5781810151838201526020016115b6565b50505f910152565b5f81518084526115ed8160208601602086016115b4565b601f01601f19169290920160200192915050565b602081525f6104cf60208301846115d6565b5f805f60408486031215611625575f80fd5b833567ffffffffffffffff81111561163b575f80fd5b611647868287016113f6565b909450925050602084013561165b816113e2565b809150509250925092565b5f8060408385031215611677575f80fd5b8235611682816113e2565b91506020830135611692816113e2565b809150509250929050565b5f602082840312156116ad575f80fd5b81356104cf816113e2565b5f602082840312156116c8575f80fd5b5035919050565b5f80604083850312156116e0575f80fd5b50508035926020909101359150565b5f805f8060808587031215611702575f80fd5b8435935060208501359250604085013591506060850135611722816113e2565b939692955090935050565b5f805f6040848603121561173f575f80fd5b833561174a816113e2565b9250602084013567ffffffffffffffff811115611765575f80fd5b6115a7868287016114a2565b5f8060208385031215611782575f80fd5b823567ffffffffffffffff811115611798575f80fd5b6117a4858286016114a2565b90969095509350505050565b634e487b7160e01b5f52603260045260245ffd5b5f808335601e198436030181126117d9575f80fd5b83018035915067ffffffffffffffff8211156117f3575f80fd5b6020019150368190038213156112f6575f80fd5b5f60208284031215611817575f80fd5b815180151581146104cf575f80fd5b5f82516118378184602087016115b4565b9190910192915050565b5f60208284031215611851575f80fd5b5051919050565b634e487b7160e01b5f52604160045260245ffd5b6040516080810167ffffffffffffffff8111828210171561188f5761188f611858565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156118be576118be611858565b604052919050565b5f608082360312156118d6575f80fd5b6118de61186c565b82356118e9816113e2565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff80821115611919575f80fd5b9085019036601f83011261192b575f80fd5b81358181111561193d5761193d611858565b61194f601f8201601f19168501611895565b91508082523684828501011115611964575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b5f8235603e19833603018112611837575f80fd5b634e487b7160e01b5f52601260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b5f826119cd576119cd611997565b500490565b634e487b7160e01b5f52600160045260245ffd5b818382375f9101908152919050565b5f8282518085526020808601955060208260051b840101602086015f5b84811015611a4057601f19868403018952611a2e8383516115d6565b98840198925090830190600101611a12565b5090979650505050505050565b6001600160a01b038616815260a0602082018190525f90611a70908301876119f5565b8281036040840152611a8281876119f5565b90508281036060840152611a9681866119f5565b91505082151560808301529695505050505050565b60208152816020820152818360408301375f818301604090810191909152601f909201601f19160101919050565b60ff828116828216039081111561078b5761078b6119ab565b5f60ff831680611b0457611b04611997565b8060ff84160691505092915050565b8082018082111561078b5761078b6119ab565b5f8451611b378184602089016115b4565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f6105bb60408301846115d656fea164736f6c6343000818000a","storage":{"0x0":"0xff"}},"0xda9e1b3e395bfb0a45f03c7f615146b9d896c959":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100b1575f3560e01c806340c10f191161006e57806340c10f191461013d57806370a082311461015257806395d89b411461017a578063a457c2d714610182578063a9059cbb14610195578063dd62ed3e146101a8575f80fd5b806306fdde03146100b5578063095ea7b3146100d357806318160ddd146100f657806323b872dd14610108578063313ce5671461011b578063395093511461012a575b5f80fd5b6100bd6101bb565b6040516100ca9190610775565b60405180910390f35b6100e66100e13660046107dc565b61024b565b60405190151581526020016100ca565b6002545b6040519081526020016100ca565b6100e6610116366004610804565b610264565b604051601281526020016100ca565b6100e66101383660046107dc565b610287565b61015061014b3660046107dc565b6102a8565b005b6100fa61016036600461083d565b6001600160a01b03165f9081526020819052604090205490565b6100bd6102b6565b6100e66101903660046107dc565b6102c5565b6100e66101a33660046107dc565b610344565b6100fa6101b636600461085d565b610351565b6060600380546101ca9061088e565b80601f01602080910402602001604051908101604052809291908181526020018280546101f69061088e565b80156102415780601f1061021857610100808354040283529160200191610241565b820191905f5260205f20905b81548152906001019060200180831161022457829003601f168201915b5050505050905090565b5f3361025881858561037b565b60019150505b92915050565b5f3361027185828561049e565b61027c858585610516565b506001949350505050565b5f336102588185856102998383610351565b6102a391906108c6565b61037b565b6102b282826106b8565b5050565b6060600480546101ca9061088e565b5f33816102d28286610351565b9050838110156103375760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b61027c828686840361037b565b5f33610258818585610516565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b6001600160a01b0383166103dd5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161032e565b6001600160a01b03821661043e5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161032e565b6001600160a01b038381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b5f6104a98484610351565b90505f19811461051057818110156105035760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161032e565b610510848484840361037b565b50505050565b6001600160a01b03831661057a5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161032e565b6001600160a01b0382166105dc5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161032e565b6001600160a01b0383165f90815260208190526040902054818110156106535760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161032e565b6001600160a01b038481165f81815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3610510565b6001600160a01b03821661070e5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640161032e565b8060025f82825461071f91906108c6565b90915550506001600160a01b0382165f81815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b5f602080835283518060208501525f5b818110156107a157858101830151858201604001528201610785565b505f604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146107d7575f80fd5b919050565b5f80604083850312156107ed575f80fd5b6107f6836107c1565b946020939093013593505050565b5f805f60608486031215610816575f80fd5b61081f846107c1565b925061082d602085016107c1565b9150604084013590509250925092565b5f6020828403121561084d575f80fd5b610856826107c1565b9392505050565b5f806040838503121561086e575f80fd5b610877836107c1565b9150610885602084016107c1565b90509250929050565b600181811c908216806108a257607f821691505b6020821081036108c057634e487b7160e01b5f52602260045260245ffd5b50919050565b8082018082111561025e57634e487b7160e01b5f52601160045260245ffdfea164736f6c6343000818000a","storage":{"0x2":"0xe8d4a51000","0x3":"0x0","0x4":"0x0","0x47668262eb76f3aa61b856a0c078f33a11f46671cf1466c3616ba74a22fcdd92":"0xe8d4a51000","0x9cc83e833a69122bf7773b58c082655d780ae469ab7cdf5d1047a30229e55875":"0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"}},"0xe0afc4e9e03e4aa67257df7a2eca77454309789d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061002b5760003560e01c806316f1983114610030575b600080fd5b6100b06004803603604081101561004657600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561007157600080fd5b82018360208201111561008357600080fd5b803590602001918460018302840111640100000000831117156100a557600080fd5b5090925090506100b2565b005b826001600160a01b031660017f103fed9db65eac19c4d870f49ab7520fe03b99f1838e5996caf47e9e43308392848460405180806020018281038252848482818152602001925080828437600083820152604051601f909101601f19169092018290039550909350505050a350505056fea164736f6c6343000606000a","storage":{}},"0xe4fdf45c2f8d198854f8823809c7a988eeaaa493":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100a6575f3560e01c80638cb8ecec1161006e5780638cb8ecec1461013e5780638da5cb5b14610151578063cbe9e76414610161578063da8c229e14610183578063e0dba60f146101a5578063f2fde38b146101b8575f80fd5b806301670ba9146100aa57806301ffc9a7146100bf5780633f15457f146100f85780634e543b2614610123578063715018a614610136575b5f80fd5b6100bd6100b8366004610529565b6101cb565b005b6100e36100cd366004610540565b6001600160e01b0319166301ffc9a760e01b1490565b60405190151581526020015b60405180910390f35b60025461010b906001600160a01b031681565b6040516001600160a01b0390911681526020016100ef565b6100bd610131366004610589565b610217565b6100bd610282565b6100bd61014c3660046105a2565b610295565b5f546001600160a01b031661010b565b6100e361016f366004610529565b60036020525f908152604090205460ff1681565b6100e3610191366004610589565b60016020525f908152604090205460ff1681565b6100bd6101b33660046105cc565b6103a2565b6100bd6101c6366004610589565b610408565b6101d3610481565b60405181907f1764176cfa565853ba1ded547a830a9f9bff95231ef6fd228b3ddd6175777569905f90a25f908152600360205260409020805460ff19166001179055565b61021f610481565b600254604051630c4b7b8560e11b81525f60048201526001600160a01b03838116602483015290911690631896f70a906044015f604051808303815f87803b158015610269575f80fd5b505af115801561027b573d5f803e3d5ffd5b5050505050565b61028a610481565b6102935f6104da565b565b335f9081526001602052604090205460ff166103095760405162461bcd60e51b815260206004820152602860248201527f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f604482015267373a3937b63632b960c11b60648201526084015b60405180910390fd5b5f8281526003602052604090205460ff1615610323575f80fd5b6002546040516306ab592360e01b81525f6004820152602481018490526001600160a01b038381166044830152909116906306ab5923906064016020604051808303815f875af1158015610379573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061039d9190610605565b505050565b6103aa610481565b6001600160a01b0382165f81815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b610410610481565b6001600160a01b0381166104755760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610300565b61047e816104da565b50565b5f546001600160a01b031633146102935760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610300565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f60208284031215610539575f80fd5b5035919050565b5f60208284031215610550575f80fd5b81356001600160e01b031981168114610567575f80fd5b9392505050565b80356001600160a01b0381168114610584575f80fd5b919050565b5f60208284031215610599575f80fd5b6105678261056e565b5f80604083850312156105b3575f80fd5b823591506105c36020840161056e565b90509250929050565b5f80604083850312156105dd575f80fd5b6105e68361056e565b9150602083013580151581146105fa575f80fd5b809150509250929050565b5f60208284031215610615575f80fd5b505191905056fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0xbdf39e9e65b2355b1b0b06df799c09159f0ab90f06a9bb2153f5de7d9b0ea81":"0x1","0x97b771283c9c769f7b9399fef71d92816f2bd31de10203b676671b01eb920966":"0x1"}},"0xe85541865bbb62a05064ce5c9f41cc293a8ea996":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610060575f3560e01c8063715018a6146100645780638129fc1c1461006e5780638da5cb5b14610076578063a3f4df7e14610096578063f2fde38b146100cf578063ffa1ad74146100e2575b5f80fd5b61006c610106565b005b61006c610119565b6033546040516001600160a01b0390911681526020015b60405180910390f35b6100c26040518060400160405280600d81526020016c2aa7299d1027b832b930ba37b960991b81525081565b60405161008d91906103bd565b61006c6100dd366004610409565b610229565b6100c2604051806040016040528060058152602001640302e312e360dc1b81525081565b61010e61029f565b6101175f6102f9565b565b5f54610100900460ff161580801561013757505f54600160ff909116105b806101505750303b15801561015057505f5460ff166001145b6101b85760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b5f805460ff1916600117905580156101d9575f805461ff0019166101001790555b6101e161034a565b8015610226575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50565b61023161029f565b6001600160a01b0381166102965760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016101af565b610226816102f9565b6033546001600160a01b031633146101175760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016101af565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff166103b45760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016101af565b610117336102f9565b5f602080835283518060208501525f5b818110156103e9578581018301518582016040015282016103cd565b505f604082860101526040601f19601f8301168501019250505092915050565b5f60208284031215610419575f80fd5b81356001600160a01b038116811461042f575f80fd5b939250505056fea164736f6c6343000818000a","storage":{}},"0xead34b583404e3cb0c9b97c2d1c486be67be9f30":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0xec71e4e674fe0f432693dc2b935c34bd2774c003":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610090575f3560e01c8063a200e15311610063578063a200e15314610146578063a34e35961461016d578063c8a4271f14610180578063cd5d2c74146101bf578063d820ed42146101e6575f80fd5b806301ffc9a7146100945780632c0fd74c146100bc57806350e9a715146100f157806359b6b86c1461011f575b5f80fd5b6100a76100a2366004610600565b61020d565b60405190151581526020015b60405180910390f35b6100e37f000000000000000000000000000000000000000000000000000000000000000081565b6040519081526020016100b3565b6101046100ff366004610627565b610243565b604080518251815260209283015192810192909252016100b3565b6100e37f000000000000000000000000000000000000000000000000000000000000000181565b6100e37f000000000000000000000000000000000000000000000000000000000000000481565b6100e361017b366004610627565b610404565b6101a77f000000000000000000000000f3810eb7d64d1c11ae12727d957c6202b24492f581565b6040516001600160a01b0390911681526020016100b3565b6100e37f000000000000000000000000000000000000000000000000000000000000000081565b6100e37f000000000000000000000000000000000000000000000000000000000000000281565b5f6001600160e01b031982166301ffc9a760e01b148061023d57506001600160e01b031982166350e9a71560e01b145b92915050565b604080518082019091525f80825260208201525f61029586868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061045392505050565b90505f600582106102d1576102ca847f00000000000000000000000000000000000000000000000000000000000000016106b3565b9050610394565b81600403610303576102ca847f00000000000000000000000000000000000000000000000000000000000000026106b3565b81600303610335576102ca847f00000000000000000000000000000000000000000000000000000000000000046106b3565b81600203610367576102ca847f00000000000000000000000000000000000000000000000000000000000000006106b3565b610391847f00000000000000000000000000000000000000000000000000000000000000006106b3565b90505b60405180604001604052806103a883610554565b81526020016103f76103f28a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c92508b91506105f89050565b610554565b9052979650505050505050565b5f61044a6103f286868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508892508791506105f89050565b95945050505050565b80515f90819081905b8082101561054b575f858381518110610477576104776106ca565b01602001516001600160f81b0319169050600160ff1b8110156104a65761049f6001846106de565b9250610538565b600760fd1b6001600160f81b0319821610156104c75761049f6002846106de565b600f60fc1b6001600160f81b0319821610156104e85761049f6003846106de565b601f60fb1b6001600160f81b0319821610156105095761049f6004846106de565b603f60fa1b6001600160f81b03198216101561052a5761049f6005846106de565b6105356006846106de565b92505b5082610543816106f1565b93505061045c565b50909392505050565b5f807f000000000000000000000000f3810eb7d64d1c11ae12727d957c6202b24492f56001600160a01b03166350d25bcd6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105b2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105d69190610709565b9050806105e7846305f5e1006106b3565b6105f19190610720565b9392505050565b5f9392505050565b5f60208284031215610610575f80fd5b81356001600160e01b0319811681146105f1575f80fd5b5f805f806060858703121561063a575f80fd5b843567ffffffffffffffff80821115610651575f80fd5b818701915087601f830112610664575f80fd5b813581811115610672575f80fd5b886020828501011115610683575f80fd5b6020928301999098509187013596604001359550909350505050565b634e487b7160e01b5f52601160045260245ffd5b808202811582820484141761023d5761023d61069f565b634e487b7160e01b5f52603260045260245ffd5b8082018082111561023d5761023d61069f565b5f600182016107025761070261069f565b5060010190565b5f60208284031215610719575f80fd5b5051919050565b5f8261073a57634e487b7160e01b5f52601260045260245ffd5b50049056fea164736f6c6343000818000a","storage":{}},"0xf1ad43dc647f27c2366ab4742d68d21282f7d50e":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101d1575f3560e01c80638b95dd71116100fe578063c86902331161009e578063e32954eb1161006e578063e32954eb146104f2578063e59d895d14610505578063e985e9c514610518578063f1cb7e0614610553575f80fd5b8063c869023314610435578063ce3decdc1461048c578063d5fa2b001461049f578063d700ff33146104b2575f80fd5b8063a8fa5682116100d9578063a8fa5682146103ac578063a9784b3e146103bf578063ac9650d814610402578063bc1c58d114610422575f80fd5b80638b95dd7114610373578063a22cb46514610386578063a4b91a0114610399575f80fd5b80633603d758116101745780635c98042b116101445780635c98042b14610327578063623195b01461033a578063691f34311461034d5780637737221314610360575f80fd5b80633603d758146102975780633b3b57de146102aa5780634cbf6ba4146102bd57806359d1d43c14610307575f80fd5b8063124a319c116101af578063124a319c146102255780632203ab561461025057806329cd62ea14610271578063304e6ade14610284575f80fd5b806301ffc9a7146101d55780630af179d7146101fd57806310f13a8c14610212575b5f80fd5b6101e86101e3366004612267565b610566565b60405190151581526020015b60405180910390f35b61021061020b3660046122bd565b610576565b005b610210610220366004612304565b610778565b610238610233366004612377565b610842565b6040516001600160a01b0390911681526020016101f4565b61026361025e3660046123a1565b610a87565b6040516101f492919061240e565b61021061027f366004612426565b610bb5565b6102106102923660046122bd565b610c4d565b6102106102a536600461244f565b610cc6565b6102386102b836600461244f565b610d64565b6101e86102cb3660046123a1565b5f82815260208181526040808320546001600160401b031683526006825280832094835293815283822092825291909152205461ffff16151590565b61031a6103153660046122bd565b610d93565b6040516101f49190612466565b61031a61033536600461244f565b610e6f565b610210610348366004612478565b610f2a565b61031a61035b36600461244f565b610fc2565b61021061036e3660046122bd565b610ffa565b6102106103813660046124da565b611073565b6102106103943660046125b9565b611150565b6102106103a73660046125e3565b61122a565b61031a6103ba36600461261e565b6112f6565b6101e86103cd36600461265a565b6001600160a01b039283165f908152600c60209081526040808320948352938152838220929094168152925290205460ff1690565b6104156104103660046126ce565b611342565b6040516101f4919061270c565b61031a61043036600461244f565b61134f565b61047761044336600461244f565b5f81815260208181526040808320546001600160401b03168352600982528083209383529290522080546001909101549091565b604080519283526020830191909152016101f4565b61021061049a3660046122bd565b611387565b6102106104ad36600461276e565b6114c3565b6104da6104c036600461244f565b5f602081905290815260409020546001600160401b031681565b6040516001600160401b0390911681526020016101f4565b61041561050036600461279c565b6114e9565b6102106105133660046127d6565b6114fe565b6101e8610526366004612808565b6001600160a01b039182165f908152600b6020908152604080832093909416825291909152205460ff1690565b61031a6105613660046123a1565b6115a2565b5f61057082611666565b92915050565b826105808161168a565b610588575f80fd5b5f84815260208181526040808320548151601f87018490048402810184019092528582528392606092839285926001600160401b039091169183916105eb9183918d908d90819084018382808284375f9201919091525092939250506118b79050565b90505b80515160208201511015610712578661ffff165f03610652578060400151965061061781611912565b94508460405160200161062a9190612834565b60405160208183030381529060405280519060200120925061064b81611933565b9350610704565b5f61065c82611912565b9050816040015161ffff168861ffff16141580610680575061067e868261194f565b155b15610702576106db8c878a8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250505060208801518d91506106d2908290612863565b8b51158a61196a565b8160400151975081602001519650809550858051906020012093506106ff82611933565b94505b505b61070d81611bc9565b6105ee565b5083511561076c5761076c8a85888c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c925061076391508290508f612863565b8951158861196a565b50505050505050505050565b846107828161168a565b61078a575f80fd5b5f86815260208181526040808320546001600160401b03168352600a8252808320898452909152908190209051849184916107c89089908990612876565b908152602001604051809103902091826107e3929190612901565b5084846040516107f4929190612876565b6040518091039020867f448bc014f1536726cf8d54ff3d6481ed3cbc683c2591ca204274009afa09b1a18787878760405161083294939291906129e2565b60405180910390a3505050505050565b5f82815260208181526040808320546001600160401b031683526007825280832085845282528083206001600160e01b0319851684529091528120546001600160a01b03168015610894579050610570565b5f61089e85610d64565b90506001600160a01b0381166108b8575f92505050610570565b6040516301ffc9a760e01b60248201525f9081906001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b1790525161090f9190612834565b5f60405180830381855afa9150503d805f8114610947576040519150601f19603f3d011682016040523d82523d5f602084013e61094c565b606091505b509150915081158061095f575060208151105b80610989575080601f8151811061097857610978612a13565b01602001516001600160f81b031916155b1561099a575f945050505050610570565b6040516001600160e01b0319871660248201526001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b179052516109f09190612834565b5f60405180830381855afa9150503d805f8114610a28576040519150601f19603f3d011682016040523d82523d5f602084013e610a2d565b606091505b509092509050811580610a41575060208151105b80610a6b575080601f81518110610a5a57610a5a612a13565b01602001516001600160f81b031916155b15610a7c575f945050505050610570565b509095945050505050565b5f82815260208181526040808320546001600160401b03168352600180835281842086855290925282206060915b848111610b975780851615801590610ae457505f8181526020839052604081208054610ae090612885565b9050115b15610b8f5780825f8381526020019081526020015f20808054610b0690612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610b3290612885565b8015610b7d5780601f10610b5457610100808354040283529160200191610b7d565b820191905f5260205f20905b815481529060010190602001808311610b6057829003601f168201915b50505050509050935093505050610bae565b60011b610ab5565b505f60405180602001604052805f81525092509250505b9250929050565b82610bbf8161168a565b610bc7575f80fd5b60408051808201825284815260208082018581525f888152808352848120546001600160401b031681526009835284812089825283528490209251835551600190920191909155815185815290810184905285917f1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e4691015b60405180910390a250505050565b82610c578161168a565b610c5f575f80fd5b5f84815260208181526040808320546001600160401b03168352600382528083208784529091529020610c93838583612901565b50837fe379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d75788484604051610c3f929190612a27565b80610cd08161168a565b610cd8575f80fd5b5f82815260208190526040812080546001600160401b031691610cfa83612a3a565b82546101009290920a6001600160401b038181021990931691831602179091555f84815260208181526040918290205491519190921681528492507fc6621ccb8f3f5a04bb6502154b2caf6adf5983fe76dfef1cfc9c42e3579db444910160405180910390a25050565b5f80610d7183603c6115a2565b905080515f03610d8357505f92915050565b610d8c81611cae565b9392505050565b5f83815260208181526040808320546001600160401b03168352600a825280832086845290915290819020905160609190610dd19085908590612876565b90815260200160405180910390208054610dea90612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610e1690612885565b8015610e615780601f10610e3857610100808354040283529160200191610e61565b820191905f5260205f20905b815481529060010190602001808311610e4457829003601f168201915b505050505090509392505050565b5f81815260208181526040808320546001600160401b03168352600482528083208484529091529020805460609190610ea790612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610ed390612885565b8015610f1e5780601f10610ef557610100808354040283529160200191610f1e565b820191905f5260205f20905b815481529060010190602001808311610f0157829003601f168201915b50505050509050919050565b83610f348161168a565b610f3c575f80fd5b83610f48600182612863565b1615610f52575f80fd5b5f85815260208181526040808320546001600160401b031683526001825280832088845282528083208784529091529020610f8e838583612901565b50604051849086907faa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe3905f90a35050505050565b5f81815260208181526040808320546001600160401b03168352600882528083208484529091529020805460609190610ea790612885565b826110048161168a565b61100c575f80fd5b5f84815260208181526040808320546001600160401b03168352600882528083208784529091529020611040838583612901565b50837fb7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f78484604051610c3f929190612a27565b8261107d8161168a565b611085575f80fd5b837f65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af75284846040516110b792919061240e565b60405180910390a2603c830361110e57837f52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd26110f284611cae565b6040516001600160a01b03909116815260200160405180910390a25b5f84815260208181526040808320546001600160401b0316835260028252808320878452825280832086845290915290206111498382612a5f565b5050505050565b6001600160a01b03821633036111bf5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084015b60405180910390fd5b335f818152600b602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6001600160a01b03821633036112825760405162461bcd60e51b815260206004820181905260248201527f53657474696e672064656c65676174652073746174757320666f722073656c6660448201526064016111b6565b335f818152600c6020908152604080832087845282528083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519384529286917ff0ddb3b04746704017f9aa8bd728fcc2c1d11675041205350018915f5e4750a0910160405180910390a4505050565b5f83815260208181526040808320546001600160401b03168352600582528083208684528252808320858452825280832061ffff851684529091529020805460609190610dea90612885565b6060610d8c5f8484611ccb565b5f81815260208181526040808320546001600160401b03168352600382528083208484529091529020805460609190610ea790612885565b826113918161168a565b611399575f80fd5b5f84815260208181526040808320546001600160401b031680845260048352818420888552909252822080549192916113d190612885565b80601f01602080910402602001604051908101604052809291908181526020018280546113fd90612885565b80156114485780601f1061141f57610100808354040283529160200191611448565b820191905f5260205f20905b81548152906001019060200180831161142b57829003601f168201915b505050506001600160401b0384165f9081526004602090815260408083208b8452909152902091925061147e9050858783612901565b50857f8f15ed4b723ef428f250961da8315675b507046737e19319fc1a4d81bfe87f858287876040516114b393929190612b1e565b60405180910390a2505050505050565b816114cd8161168a565b6114d5575f80fd5b6114e483603c61038185611e88565b505050565b60606114f6848484611ccb565b949350505050565b826115088161168a565b611510575f80fd5b5f84815260208181526040808320546001600160401b031683526007825280832087845282528083206001600160e01b031987168085529083529281902080546001600160a01b0319166001600160a01b038716908117909155905190815286917f7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa910160405180910390a350505050565b5f82815260208181526040808320546001600160401b0316835260028252808320858452825280832084845290915290208054606091906115e290612885565b80601f016020809104026020016040519081016040528092919081815260200182805461160e90612885565b80156116595780601f1061163057610100808354040283529160200191611659565b820191905f5260205f20905b81548152906001019060200180831161163c57829003601f168201915b5050505050905092915050565b5f6001600160e01b03198216631674750f60e21b1480610570575061057082611eb8565b5f336001600160a01b037f0000000000000000000000004fbf7b2f171336958be5d15ff762a5cff53635681614806116ea5750336001600160a01b037f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5616145b156116f757506001919050565b6040516302571be360e01b8152600481018390525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa15801561175c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117809190612b4d565b90507f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b0316816001600160a01b031603611845576040516331a9108f60e11b8152600481018490527f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b031690636352211e90602401602060405180830381865afa15801561181e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118429190612b4d565b90505b6001600160a01b03811633148061187e57506001600160a01b0381165f908152600b6020908152604080832033845290915290205460ff165b80610d8c57506001600160a01b0381165f908152600c60209081526040808320868452825280832033845290915290205460ff16610d8c565b6118ff6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261057081611bc9565b602081015181516060916105709161192a9082611edc565b84519190611f33565b60a081015160c08201516060916105709161192a908290612863565b5f81518351148015610d8c5750610d8c835f845f8751611fa7565b865160208801205f61197d878787611f33565b90508315611aa1576001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c168452909152902080546119c690612885565b159050611a23576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611a0783612b68565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091528120611a62916121f9565b897f03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a12078a8a604051611a94929190612b84565b60405180910390a261076c565b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c16845290915290208054611ae290612885565b90505f03611b40576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611b2483612ba9565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091529020611b808282612a5f565b50897f52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b8a8a84604051611bb593929190612bbf565b60405180910390a250505050505050505050565b60c08101516020820181905281515111611be05750565b5f611bf2825f01518360200151611edc565b8260200151611c019190612bed565b8251909150611c109082611fc9565b61ffff166040830152611c24600282612bed565b8251909150611c339082611fc9565b61ffff166060830152611c47600282612bed565b8251909150611c569082611fef565b63ffffffff166080830152611c6c600482612bed565b82519091505f90611c7d9083611fc9565b61ffff169050611c8e600283612bed565b60a084018190529150611ca18183612bed565b60c0909301929092525050565b5f8151601414611cbc575f80fd5b5060200151600160601b900490565b6060816001600160401b03811115611ce557611ce56124c6565b604051908082528060200260200182016040528015611d1857816020015b6060815260200190600190039081611d035790505b5090505f5b82811015611e80578415611dd8575f848483818110611d3e57611d3e612a13565b9050602002810190611d509190612c00565b611d5f91602491600491612c42565b611d6891612c69565b9050858114611dd65760405162461bcd60e51b815260206004820152603460248201527f6d756c746963616c6c3a20416c6c207265636f726473206d7573742068617665604482015273040c240dac2e8c6d0d2dcce40dcc2dacad0c2e6d60631b60648201526084016111b6565b505b5f8030868685818110611ded57611ded612a13565b9050602002810190611dff9190612c00565b604051611e0d929190612876565b5f60405180830381855af49150503d805f8114611e45576040519150601f19603f3d011682016040523d82523d5f602084013e611e4a565b606091505b509150915081611e58575f80fd5b80848481518110611e6b57611e6b612a13565b60209081029190910101525050600101611d1d565b509392505050565b604080516014808252818301909252606091602082018180368337505050600160601b9290920260208301525090565b5f6001600160e01b0319821663c869023360e01b1480610570575061057082612017565b5f815b83518110611eef57611eef612c86565b5f611efa858361203b565b60ff169050611f0a816001612bed565b611f149083612bed565b9150805f03611f235750611f29565b50611edf565b6114f68382612863565b8251606090611f428385612bed565b1115611f4c575f80fd5b5f826001600160401b03811115611f6557611f656124c6565b6040519080825280601f01601f191660200182016040528015611f8f576020820181803683370190505b50905060208082019086860101610a7c82828761205e565b5f611fb38484846120b3565b611fbe8787856120b3565b149695505050505050565b81515f90611fd8836002612bed565b1115611fe2575f80fd5b50016002015161ffff1690565b81515f90611ffe836004612bed565b1115612008575f80fd5b50016004015163ffffffff1690565b5f6001600160e01b0319821663691f343160e01b14806105705750610570826120d5565b5f82828151811061204e5761204e612a13565b016020015160f81c905092915050565b602081106120965781518352612075602084612bed565b9250612082602083612bed565b915061208f602082612863565b905061205e565b905182516020929092036101000a5f190180199091169116179052565b82515f906120c18385612bed565b11156120cb575f80fd5b5091016020012090565b5f6001600160e01b031982166304928c6760e21b14806105705750610570825f6001600160e01b0319821663547d2b4160e11b148061212457506001600160e01b03198216635c98042b60e01b145b806105705750610570825f6001600160e01b0319821663bc1c58d160e01b14806105705750610570825f6001600160e01b03198216631d9dabef60e11b148061217d57506001600160e01b031982166378e5bf0360e11b145b806105705750610570825f6001600160e01b03198216631101d5ab60e11b14806105705750610570825f6001600160e01b0319821663d700ff3360e01b14806105705750610570825f6001600160e01b03198216634fbf043360e01b148061057057506301ffc9a760e01b6001600160e01b0319831614610570565b50805461220590612885565b5f825580601f10612214575050565b601f0160209004905f5260205f20908101906122309190612233565b50565b5b80821115612247575f8155600101612234565b5090565b80356001600160e01b031981168114612262575f80fd5b919050565b5f60208284031215612277575f80fd5b610d8c8261224b565b5f8083601f840112612290575f80fd5b5081356001600160401b038111156122a6575f80fd5b602083019150836020828501011115610bae575f80fd5b5f805f604084860312156122cf575f80fd5b8335925060208401356001600160401b038111156122eb575f80fd5b6122f786828701612280565b9497909650939450505050565b5f805f805f60608688031215612318575f80fd5b8535945060208601356001600160401b0380821115612335575f80fd5b61234189838a01612280565b90965094506040880135915080821115612359575f80fd5b5061236688828901612280565b969995985093965092949392505050565b5f8060408385031215612388575f80fd5b823591506123986020840161224b565b90509250929050565b5f80604083850312156123b2575f80fd5b50508035926020909101359150565b5f5b838110156123db5781810151838201526020016123c3565b50505f910152565b5f81518084526123fa8160208601602086016123c1565b601f01601f19169290920160200192915050565b828152604060208201525f6114f660408301846123e3565b5f805f60608486031215612438575f80fd5b505081359360208301359350604090920135919050565b5f6020828403121561245f575f80fd5b5035919050565b602081525f610d8c60208301846123e3565b5f805f806060858703121561248b575f80fd5b843593506020850135925060408501356001600160401b038111156124ae575f80fd5b6124ba87828801612280565b95989497509550505050565b634e487b7160e01b5f52604160045260245ffd5b5f805f606084860312156124ec575f80fd5b833592506020840135915060408401356001600160401b0380821115612510575f80fd5b818601915086601f830112612523575f80fd5b813581811115612535576125356124c6565b604051601f8201601f19908116603f0116810190838211818310171561255d5761255d6124c6565b81604052828152896020848701011115612575575f80fd5b826020860160208301375f6020848301015280955050505050509250925092565b6001600160a01b0381168114612230575f80fd5b80358015158114612262575f80fd5b5f80604083850312156125ca575f80fd5b82356125d581612596565b9150612398602084016125aa565b5f805f606084860312156125f5575f80fd5b83359250602084013561260781612596565b9150612615604085016125aa565b90509250925092565b5f805f60608486031215612630575f80fd5b8335925060208401359150604084013561ffff8116811461264f575f80fd5b809150509250925092565b5f805f6060848603121561266c575f80fd5b833561267781612596565b925060208401359150604084013561264f81612596565b5f8083601f84011261269e575f80fd5b5081356001600160401b038111156126b4575f80fd5b6020830191508360208260051b8501011115610bae575f80fd5b5f80602083850312156126df575f80fd5b82356001600160401b038111156126f4575f80fd5b6127008582860161268e565b90969095509350505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b8281101561276157603f1988860301845261274f8583516123e3565b94509285019290850190600101612733565b5092979650505050505050565b5f806040838503121561277f575f80fd5b82359150602083013561279181612596565b809150509250929050565b5f805f604084860312156127ae575f80fd5b8335925060208401356001600160401b038111156127ca575f80fd5b6122f78682870161268e565b5f805f606084860312156127e8575f80fd5b833592506127f86020850161224b565b9150604084013561264f81612596565b5f8060408385031215612819575f80fd5b823561282481612596565b9150602083013561279181612596565b5f82516128458184602087016123c1565b9190910192915050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156105705761057061284f565b818382375f9101908152919050565b600181811c9082168061289957607f821691505b6020821081036128b757634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156114e457805f5260205f20601f840160051c810160208510156128e25750805b601f840160051c820191505b81811015611149575f81556001016128ee565b6001600160401b03831115612918576129186124c6565b61292c836129268354612885565b836128bd565b5f601f84116001811461295d575f85156129465750838201355b5f19600387901b1c1916600186901b178355611149565b5f83815260208120601f198716915b8281101561298c578685013582556020948501946001909201910161296c565b50868210156129a8575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b604081525f6129f56040830186886129ba565b8281036020840152612a088185876129ba565b979650505050505050565b634e487b7160e01b5f52603260045260245ffd5b602081525f6114f66020830184866129ba565b5f6001600160401b03808316818103612a5557612a5561284f565b6001019392505050565b81516001600160401b03811115612a7857612a786124c6565b612a8c81612a868454612885565b846128bd565b602080601f831160018114612abf575f8415612aa85750858301515b5f19600386901b1c1916600185901b178555612b16565b5f85815260208120601f198616915b82811015612aed57888601518255948401946001909101908401612ace565b5085821015612b0a57878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b604081525f612b3060408301866123e3565b8281036020840152612b438185876129ba565b9695505050505050565b5f60208284031215612b5d575f80fd5b8151610d8c81612596565b5f61ffff821680612b7b57612b7b61284f565b5f190192915050565b604081525f612b9660408301856123e3565b905061ffff831660208301529392505050565b5f61ffff808316818103612a5557612a5561284f565b606081525f612bd160608301866123e3565b61ffff851660208401528281036040840152612b4381856123e3565b808201808211156105705761057061284f565b5f808335601e19843603018112612c15575f80fd5b8301803591506001600160401b03821115612c2e575f80fd5b602001915036819003821315610bae575f80fd5b5f8085851115612c50575f80fd5b83861115612c5c575f80fd5b5050820193919092039150565b80356020831015610570575f19602084900360031b1b1692915050565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{}},"0xf3810eb7d64d1c11ae12727d957c6202b24492f5":{"nonce":1,"balance":"0x0","code":"0x6080604052348015600e575f80fd5b50600436106030575f3560e01c806350d25bcd146034578063e5c19b2d146048575b5f80fd5b5f5460405190815260200160405180910390f35b605760533660046059565b5f55565b005b5f602082840312156068575f80fd5b503591905056fea164736f6c6343000818000a","storage":{"0x0":"0x5f5e100"}},"0xf670681605efc4efc804f5a9b97ee89520473d56":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c80638da5cb5b11610088578063c66485b211610063578063c66485b2146101da578063da8c229e146101ed578063e0dba60f1461021f578063f2fde38b14610232575f80fd5b80638da5cb5b146101a4578063bffbe61c146101b4578063c47f0027146101c7575f80fd5b806365669631116100c35780636566963114610161578063715018a6146101745780637a806d6b1461017e578063828eab0e14610191575f80fd5b80630f5a5466146100e95780631e83409a1461010f5780633f15457f14610122575b5f80fd5b6100fc6100f7366004610958565b610245565b6040519081526020015b60405180910390f35b6100fc61011d36600461098f565b610258565b6101497f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a981565b6040516001600160a01b039091168152602001610106565b6100fc61016f3660046109aa565b610279565b61017c610526565b005b6100fc61018c366004610a8f565b610539565b600254610149906001600160a01b031681565b5f546001600160a01b0316610149565b6100fc6101c236600461098f565b6105ae565b6100fc6101d5366004610b00565b610608565b61017c6101e836600461098f565b610624565b61020f6101fb36600461098f565b60016020525f908152604090205460ff1681565b6040519015158152602001610106565b61017c61022d366004610b47565b6106e4565b61017c61024036600461098f565b61074a565b5f610251338484610279565b9392505050565b6002545f9061027390339084906001600160a01b0316610279565b92915050565b5f836001600160a01b0381163314806102a05750335f9081526001602052604090205460ff165b80610334575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063e985e9c590604401602060405180830381865afa158015610310573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103349190610b73565b806103435750610343816107c3565b6103e05760405162461bcd60e51b815260206004820152605b60248201527f526576657273655265676973747261723a2043616c6c6572206973206e6f742060448201527f6120636f6e74726f6c6c6572206f7220617574686f726973656420627920616460648201527f6472657373206f7220746865206164647265737320697473656c660000000000608482015260a4015b60405180910390fd5b5f6103ea8661083a565b604080517f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e2602080830191909152818301849052825180830384018152606090920192839052815191012091925081906001600160a01b038916907f6ada868dd3058cf77a48a74489fd7963688e5464b2b0fa957ace976243270e92905f90a36040516305ef2c7f60e41b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26004820152602481018390526001600160a01b03878116604483015286811660648301525f60848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610505575f80fd5b505af1158015610517573d5f803e3d5ffd5b50929998505050505050505050565b61052e61089c565b6105375f6108f5565b565b5f80610546868686610279565b604051637737221360e01b81529091506001600160a01b038516906377372213906105779084908790600401610b8e565b5f604051808303815f87803b15801561058e575f80fd5b505af11580156105a0573d5f803e3d5ffd5b509298975050505050505050565b5f7f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26105d98361083a565b604080516020810193909352820152606001604051602081830303815290604052805190602001209050919050565b6002545f9061027390339081906001600160a01b031685610539565b61062c61089c565b6001600160a01b03811661069b5760405162461bcd60e51b815260206004820152603060248201527f526576657273655265676973747261723a205265736f6c76657220616464726560448201526f07373206d757374206e6f7420626520360841b60648201526084016103d7565b600280546001600160a01b0319166001600160a01b0383169081179091556040517feae17a84d9eb83d8c8eb317f9e7d64857bc363fa51674d996c023f4340c577cf905f90a250565b6106ec61089c565b6001600160a01b0382165f81815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b61075261089c565b6001600160a01b0381166107b75760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016103d7565b6107c0816108f5565b50565b5f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801561081e575060408051601f3d908101601f1916820190925261081b91810190610be2565b60015b61082957505f919050565b6001600160a01b0316331492915050565b5f60285b8015610891575f19016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a81536010909204915f19016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a815360108304925061083e565b505060285f20919050565b5f546001600160a01b031633146105375760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016103d7565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146107c0575f80fd5b5f8060408385031215610969575f80fd5b823561097481610944565b9150602083013561098481610944565b809150509250929050565b5f6020828403121561099f575f80fd5b813561025181610944565b5f805f606084860312156109bc575f80fd5b83356109c781610944565b925060208401356109d781610944565b915060408401356109e781610944565b809150509250925092565b634e487b7160e01b5f52604160045260245ffd5b5f82601f830112610a15575f80fd5b813567ffffffffffffffff80821115610a3057610a306109f2565b604051601f8301601f19908116603f01168101908282118183101715610a5857610a586109f2565b81604052838152866020858801011115610a70575f80fd5b836020870160208301375f602085830101528094505050505092915050565b5f805f8060808587031215610aa2575f80fd5b8435610aad81610944565b93506020850135610abd81610944565b92506040850135610acd81610944565b9150606085013567ffffffffffffffff811115610ae8575f80fd5b610af487828801610a06565b91505092959194509250565b5f60208284031215610b10575f80fd5b813567ffffffffffffffff811115610b26575f80fd5b610b3284828501610a06565b949350505050565b80151581146107c0575f80fd5b5f8060408385031215610b58575f80fd5b8235610b6381610944565b9150602083013561098481610b3a565b5f60208284031215610b83575f80fd5b815161025181610b3a565b8281525f60206040602084015283518060408501525f5b81811015610bc157858101830151858201606001528201610ba5565b505f606082860101526060601f19601f830116850101925050509392505050565b5f60208284031215610bf2575f80fd5b81516102518161094456fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2":"0x9df67c91f1bfcb4d966cf764e9218685e7c59e8a","0x1f5b7623941da966ad7183d9cbb6db584f6d4add26919ac31a2d3f19a164e7e1":"0x1","0xbe5de2149ce76ca5934fa63455cd675fd52e2d30f3328985d298a627ca0f05e9":"0x1"}},"0xf8c26340c1eaea6c7ff1760b25005e1306953572":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061010b5760003560e01c80638c87a4ea116100a2578063b87abc1111610071578063b87abc1114610244578063c597407314610257578063ce92b33e1461026a578063e837ae741461027d578063ec129eea146102905761010b565b80638c87a4ea146101ea5780638f69c188146101fd578063a3557e6c14610210578063b85afd28146102235761010b565b806347c81699116100de57806347c8169914610181578063672b9f81146101945780636ccbae5f146101b55780637b103999146101d55761010b565b80631bd8cc1a146101105780631be5e7ed146101395780632c3d376d14610159578063310bd74b1461016c575b600080fd5b61012361011e3660046117b4565b6102a3565b6040516101309190611eee565b60405180910390f35b61014c610147366004611aec565b6104f2565b6040516101309190611fd6565b61014c610167366004611b21565b610673565b61017f61017a366004611b21565b610714565b005b61017f61018f3660046119b5565b6107c0565b6101a76101a2366004611b94565b6108ef565b604051610130929190611fe7565b6101c86101c3366004611b21565b6109c3565b604051610130919061204c565b6101dd6109d5565b6040516101309190611ea9565b6101236101f836600461191d565b6109e5565b61017f61020b366004611878565b610a74565b61017f61021e366004611878565b610af0565b610236610231366004611951565b610b1b565b604051610130929190611eff565b61017f610252366004611b3f565b610ca9565b61017f610265366004611a39565b610d43565b61017f610278366004611808565b610df9565b61017f61028b366004611808565b610e97565b61017f61029e366004611808565b610f4e565b60015460405163b3f9e4cb60e01b815260609183916001600160a01b039091169063b3f9e4cb906102d890849060040161204c565b60206040518083038186803b1580156102f057600080fd5b505afa158015610304573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610328919081019061178e565b6001600160a01b0316306001600160a01b0316146103615760405162461bcd60e51b81526004016103589061201c565b60405180910390fd5b604080518581526020808702820101909152849060609082801561039957816020015b60608152602001906001900390816103845790505b506000868152600360205260408120549192505b838110156104e557600087815260026020908152604080832085845290915290208989838181106103da57fe5b602002820190508035601e19368490030181126103f657600080fd5b909101602081019150356001600160401b0381111561041457600080fd5b3681900382131561042457600080fd5b604051610432929190611e70565b9081526040805160209281900383018120805460026001821615610100026000190190911604601f810185900485028301850190935282825290929091908301828280156104c15780601f10610496576101008083540402835291602001916104c1565b820191906000526020600020905b8154815290600101906020018083116104a457829003601f168201915b50505050508382815181106104d257fe5b60209081029190910101526001016103ad565b5090979650505050505050565b60015460405163b3f9e4cb60e01b815260609183916001600160a01b039091169063b3f9e4cb9061052790849060040161204c565b60206040518083038186803b15801561053f57600080fd5b505afa158015610553573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610577919081019061178e565b6001600160a01b0316306001600160a01b0316146105a75760405162461bcd60e51b81526004016103589061201c565b6000838152600260209081526040808320600383528184205484529091529081902090516105d6908690611e7d565b9081526040805160209281900383018120805460026001821615610100026000190190911604601f810185900485028301850190935282825290929091908301828280156106655780601f1061063a57610100808354040283529160200191610665565b820191906000526020600020905b81548152906001019060200180831161064857829003601f168201915b505050505091505092915050565b60008181526004602090815260409182902080548351601f60026000196101006001861615020190931692909204918201849004840281018401909452808452606093928301828280156107085780601f106106dd57610100808354040283529160200191610708565b820191906000526020600020905b8154815290600101906020018083116106eb57829003601f168201915b50505050509050919050565b60015460405163430c208160e01b815282916001600160a01b03169063430c2081906107469033908590600401611ec5565b60206040518083038186803b15801561075e57600080fd5b505afa158015610772573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506107969190810190611997565b6107b25760405162461bcd60e51b81526004016103589061202c565b6107bc4283610fec565b5050565b60015460405163430c208160e01b815282916001600160a01b03169063430c2081906107f29033908590600401611ec5565b60206040518083038186803b15801561080a57600080fd5b505afa15801561081e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506108429190810190611997565b61085e5760405162461bcd60e51b81526004016103589061202c565b6108e7600360008481526020019081526020016000205487878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061108e915050565b505050505050565b60015460405163b3f9e4cb60e01b8152606091829184916001600160a01b03169063b3f9e4cb9061092490849060040161204c565b60206040518083038186803b15801561093c57600080fd5b505afa158015610950573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610974919081019061178e565b6001600160a01b0316306001600160a01b0316146109a45760405162461bcd60e51b81526004016103589061201c565b6109ad85610673565b92506109b983856104f2565b9150509250929050565b60009081526020819052604090205490565b6001546001600160a01b03165b90565b6060600082519050606081604051908082528060200260200182016040528015610a2357816020015b6060815260200190600190039081610a0e5790505b50905060005b82811015610a6c57610a4d858281518110610a4057fe5b6020026020010151610673565b828281518110610a5957fe5b6020908102919091010152600101610a29565b509392505050565b610acf63ce92b33e60e01b858585604051602401610a9493929190611f24565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092178252519020838361129f565b600082815260036020526040902054610aea908585856113c3565b50505050565b610b1063ec129eea60e01b858585604051602401610a9493929190611f24565b610aea84848461140a565b60015460405163b3f9e4cb60e01b8152606091829184916001600160a01b03169063b3f9e4cb90610b5090849060040161204c565b60206040518083038186803b158015610b6857600080fd5b505afa158015610b7c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610ba0919081019061178e565b6001600160a01b0316306001600160a01b031614610bd05760405162461bcd60e51b81526004016103589061201c565b8451604080518281526020808402820101909152818015610c0557816020015b6060815260200190600190039081610bf05790505b50935080604051908082528060200260200182016040528015610c3c57816020015b6060815260200190600190039081610c275790505b50925060005b81811015610c9f57610c67878281518110610c5957fe5b6020026020010151876108ef565b8651879084908110610c7557fe5b60200260200101868481518110610c8857fe5b602090810291909101019190915252600101610c42565b5050509250929050565b610d3463310bd74b60e01b84604051602401610cc5919061204c565b60408051601f19818403018152918152602080830180516001600160e01b03166001600160e01b031990951694909417845291519092208251601f8601839004830281018301909352848352918691869086908190840183828082843760009201919091525061129f92505050565b610d3e4284610fec565b505050565b610d676347c8169960e01b8888888888604051602401610cc5959493929190611f96565b610df0600360008581526020019081526020016000205488888080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8c018190048102820181019092528a815292508a915089908190840183828082843760009201919091525089925061108e915050565b50505050505050565b60015460405163430c208160e01b815282916001600160a01b03169063430c208190610e2b9033908590600401611ec5565b60206040518083038186803b158015610e4357600080fd5b505afa158015610e57573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610e7b9190810190611997565b610acf5760405162461bcd60e51b81526004016103589061202c565b6005546040516355138f0d60e11b81526001600160a01b039091169063aa271e1a90610ec7903390600401611eb7565b60206040518083038186803b158015610edf57600080fd5b505afa158015610ef3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610f179190810190611997565b610f335760405162461bcd60e51b81526004016103589061203c565b600081815260036020526040902054610d3e908484846113c3565b60015460405163430c208160e01b815282916001600160a01b03169063430c208190610f809033908590600401611ec5565b60206040518083038186803b158015610f9857600080fd5b505afa158015610fac573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610fd09190810190611997565b610b105760405162461bcd60e51b81526004016103589061202c565b600081815260036020526040808220849055600154905163538361a760e01b81526001600160a01b039091169163538361a79161102d91859160040161205a565b600060405180830381600087803b15801561104757600080fd5b505af115801561105b573d6000803e3d6000fd5b50506040518392507f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9150600090a25050565b825160208085019190912060008381526002835260408082208883529093528281209251919290916110c1908790611e7d565b908152604051602091819003919091018120546001805463538361a760e01b84526002918316156101000260001901909216041592506001600160a01b03169063538361a7906111179086908690600401612075565b600060405180830381600087803b15801561113157600080fd5b505af1158015611145573d6000803e3d6000fd5b50505060008481526002602090815260408083208a8452909152908190209051869250611173908890611e7d565b90815260200160405180910390209080519060200190611194929190611521565b50600082815260046020526040902054600260001961010060018416150201909116046111dc57600082815260046020908152604090912086516111da92880190611521565b505b801561123157846040516111f09190611e7d565b6040518091039020837f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f86876040516112289190611fd6565b60405180910390a35b8360405161123f9190611e7d565b6040518091039020856040516112559190611e7d565b6040518091039020847f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d92888860405161128f929190611fe7565b60405180910390a4505050505050565b6000828152602081815260408083205490519092916112f59185916112e9916112ce918a913091899101611e39565b60405160208183030381529060405280519060200120611414565b9063ffffffff61144416565b90506001600160a01b0381161580159061138c575060015460405163430c208160e01b81526001600160a01b039091169063430c20819061133c9084908890600401611ee0565b60206040518083038186803b15801561135457600080fd5b505afa158015611368573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061138c9190810190611997565b6113a85760405162461bcd60e51b81526004016103589061200c565b50505060009081526020819052604090208054600101905550565b825160005b818110156108e757611402868683815181106113e057fe5b60200260200101518684815181106113f457fe5b60200260200101518661108e565b6001016113c8565b610f334282610fec565b6000816040516020016114279190611e89565b604051602081830303815290604052805190602001209050919050565b600081516041146114575750600061151b565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a082111561149d576000935050505061151b565b8060ff16601b141580156114b557508060ff16601c14155b156114c6576000935050505061151b565b600186828585604051600081526020016040526040516114e99493929190611f58565b6020604051602081039080840390855afa15801561150b573d6000803e3d6000fd5b5050506020604051035193505050505b92915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061156257805160ff191683800117855561158f565b8280016001018555821561158f579182015b8281111561158f578251825591602001919060010190611574565b5061159b92915061159f565b5090565b6109e291905b8082111561159b57600081556001016115a5565b805161151b816121a4565b60008083601f8401126115d657600080fd5b5081356001600160401b038111156115ed57600080fd5b60208301915083602082028301111561160557600080fd5b9250929050565b600082601f83011261161d57600080fd5b813561163061162b826120a9565b612083565b81815260209384019390925082018360005b8381101561166e57813586016116588882611734565b8452506020928301929190910190600101611642565b5050505092915050565b600082601f83011261168957600080fd5b813561169761162b826120a9565b915081818352602084019350602081019050838560208402820111156116bc57600080fd5b60005b8381101561166e57816116d28882611783565b84525060209283019291909101906001016116bf565b805161151b816121bb565b60008083601f84011261170557600080fd5b5081356001600160401b0381111561171c57600080fd5b60208301915083600182028301111561160557600080fd5b600082601f83011261174557600080fd5b813561175361162b826120c9565b9150808252602083016020830185838301111561176f57600080fd5b61177a83828461214b565b50505092915050565b803561151b816121c4565b6000602082840312156117a057600080fd5b60006117ac84846115b9565b949350505050565b6000806000604084860312156117c957600080fd5b83356001600160401b038111156117df57600080fd5b6117eb868287016115c4565b935093505060206117fe86828701611783565b9150509250925092565b60008060006060848603121561181d57600080fd5b83356001600160401b0381111561183357600080fd5b61183f8682870161160c565b93505060208401356001600160401b0381111561185b57600080fd5b6118678682870161160c565b92505060406117fe86828701611783565b6000806000806080858703121561188e57600080fd5b84356001600160401b038111156118a457600080fd5b6118b08782880161160c565b94505060208501356001600160401b038111156118cc57600080fd5b6118d88782880161160c565b93505060406118e987828801611783565b92505060608501356001600160401b0381111561190557600080fd5b61191187828801611734565b91505092959194509250565b60006020828403121561192f57600080fd5b81356001600160401b0381111561194557600080fd5b6117ac84828501611678565b6000806040838503121561196457600080fd5b82356001600160401b0381111561197a57600080fd5b61198685828601611678565b92505060206109b985828601611783565b6000602082840312156119a957600080fd5b60006117ac84846116e8565b6000806000806000606086880312156119cd57600080fd5b85356001600160401b038111156119e357600080fd5b6119ef888289016116f3565b955095505060208601356001600160401b03811115611a0d57600080fd5b611a19888289016116f3565b93509350506040611a2c88828901611783565b9150509295509295909350565b60008060008060008060006080888a031215611a5457600080fd5b87356001600160401b03811115611a6a57600080fd5b611a768a828b016116f3565b975097505060208801356001600160401b03811115611a9457600080fd5b611aa08a828b016116f3565b95509550506040611ab38a828b01611783565b93505060608801356001600160401b03811115611acf57600080fd5b611adb8a828b016116f3565b925092505092959891949750929550565b60008060408385031215611aff57600080fd5b82356001600160401b03811115611b1557600080fd5b61198685828601611734565b600060208284031215611b3357600080fd5b60006117ac8484611783565b600080600060408486031215611b5457600080fd5b6000611b608686611783565b93505060208401356001600160401b03811115611b7c57600080fd5b611b88868287016116f3565b92509250509250925092565b60008060408385031215611ba757600080fd5b60006119868585611783565b6000611bbf8383611ccb565b9392505050565b611bcf8161212a565b82525050565b611bcf81612108565b611bcf611bea82612108565b612183565b6000611bfa826120f6565b611c0481856120fa565b935083602082028501611c16856120f0565b8060005b85811015611c505784840389528151611c338582611bb3565b9450611c3e836120f0565b60209a909a0199925050600101611c1a565b5091979650505050505050565b611bcf816109e2565b611bcf611c72826109e2565b6109e2565b611bcf81612135565b6000611c8c83856120fa565b9350611c9983858461214b565b611ca283612194565b9093019392505050565b6000611cb88385612103565b9350611cc583858461214b565b50500190565b6000611cd6826120f6565b611ce081856120fa565b9350611cf0818560208601612157565b611ca281612194565b6000611d04826120f6565b611d0e8185612103565b9350611d1e818560208601612157565b9290920192915050565b6000611d35601c83612103565b7f19457468657265756d205369676e6564204d6573736167653a0a3332000000008152601c0192915050565b6000611d6e6011836120fa565b70494e56414c49445f5349474e415455524560781b815260200192915050565b6000611d9b601d836120fa565b7f5245534f4c5645525f44455441434845445f46524f4d5f444f4d41494e000000815260200192915050565b6000611dd4601f836120fa565b7f53454e4445525f49535f4e4f545f415050524f5645445f4f525f4f574e455200815260200192915050565b6000611e0d6014836120fa565b7329a2a72222a92fa4a9afa727aa2fa6a4a72a22a960611b815260200192915050565b611bcf81612124565b6000611e458286611c66565b602082019150611e558285611bde565b601482019150611e658284611c66565b506020019392505050565b60006117ac828486611cac565b6000611bbf8284611cf9565b6000611e9482611d28565b9150611ea08284611c66565b50602001919050565b6020810161151b8284611bd5565b6020810161151b8284611bc6565b60408101611ed38285611bc6565b611bbf6020830184611c5d565b60408101611ed38285611bd5565b60208082528101611bbf8184611bef565b60408082528101611f108185611bef565b905081810360208301526117ac8184611bef565b60608082528101611f358186611bef565b90508181036020830152611f498185611bef565b90506117ac6040830184611c5d565b60808101611f668287611c5d565b611f736020830186611e30565b611f806040830185611c5d565b611f8d6060830184611c5d565b95945050505050565b60608082528101611fa8818789611c80565b90508181036020830152611fbd818587611c80565b9050611fcc6040830184611c5d565b9695505050505050565b60208082528101611bbf8184611ccb565b60408082528101611ff88185611ccb565b905081810360208301526117ac8184611ccb565b6020808252810161151b81611d61565b6020808252810161151b81611d8e565b6020808252810161151b81611dc7565b6020808252810161151b81611e00565b6020810161151b8284611c5d565b604081016120688285611c5d565b611bbf6020830184611c77565b60408101611ed38285611c5d565b6040518181016001600160401b03811182821017156120a157600080fd5b604052919050565b60006001600160401b038211156120bf57600080fd5b5060209081020190565b60006001600160401b038211156120df57600080fd5b506020601f91909101601f19160190565b60200190565b5190565b90815260200190565b919050565b600061151b82612118565b151590565b6001600160a01b031690565b60ff1690565b600061151b82612140565b600061151b826109e2565b600061151b82612108565b82818337506000910152565b60005b8381101561217257818101518382015260200161215a565b83811115610aea5750506000910152565b600061151b82600061151b8261219e565b601f01601f191690565b60601b90565b6121ad81612108565b81146121b857600080fd5b50565b6121ad81612113565b6121ad816109e256fea365627a7a723158207a1d8dfd286d14fcafd1812a4c44813691ac746a5a23fa711ac5551c9509654d6c6578706572696d656e74616cf564736f6c634300050c0040","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x5":"0x4a3c194eb88966178bfdd81744dddafed611b830"}},"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa":{"nonce":93,"balance":"0x35aac60bbae01d424b","code":"0x","storage":{}}},"best_block_number":"0x5d"} \ No newline at end of file From 133fd99e7f0cb54658f9be8cdca2f274b33117f6 Mon Sep 17 00:00:00 2001 From: derain Date: Tue, 21 May 2024 22:22:08 +0300 Subject: [PATCH 13/21] [REG-1273] - Rework foundry-cli --- sandbox/anvil-server.ts | 6 ++--- sandbox/foundry-cli.ts | 49 ++++++++++++++++++++++++++++------------- sandbox/state.json | 2 +- 3 files changed, 37 insertions(+), 20 deletions(-) diff --git a/sandbox/anvil-server.ts b/sandbox/anvil-server.ts index 0dc0ead2..9cdfb404 100644 --- a/sandbox/anvil-server.ts +++ b/sandbox/anvil-server.ts @@ -1,7 +1,7 @@ import { spawn, ChildProcessWithoutNullStreams } from 'child_process'; import debug from 'debug'; import _ from 'lodash'; -import { installFoundry, getAnvilCommand } from './foundry-cli'; +import { installAnvil, getAnvilCommand } from './foundry-cli'; const log = debug('UNS:sandbox'); @@ -51,9 +51,7 @@ export class AnvilServer { try { await getAnvilCommand(); } catch (e) { - if (!(await installFoundry())) { - throw new Error('Failed to install Foundry'); - } + await installAnvil(); } if (!options.silent) { diff --git a/sandbox/foundry-cli.ts b/sandbox/foundry-cli.ts index 67e54fc8..9f702621 100644 --- a/sandbox/foundry-cli.ts +++ b/sandbox/foundry-cli.ts @@ -18,18 +18,23 @@ export async function getAnvilCommand (): Promise { } /** - * Executes `foundryup` + * Executes `foundryup` to install `anvil` RPC server */ -export async function installFoundry (): Promise { - const foundryUpPath = foundryUpBinPath(); - const checkCommandCli = `${foundryUpPath} --version`; - const commandExists = await checkCommand(checkCommandCli); - if (!commandExists) { - if (!(await runFoundryInstaller())) { - throw new Error('Failed to install Foundry'); +export async function installAnvil (): Promise { + const checkAnvilCommandCli = `${foundryAnvilBinPath()} --version`; + if (!(await checkCommand(checkAnvilCommandCli))) { + if (!(await checkCommand(`${foundryUpBinPath()} --version`))) { + if (!(await downloadFoundryUp())) { + throw new Error('Failed to download foundryup'); + } + } + if (!(await runFoundryUp())) { + throw new Error('Failed to install anvil'); + } + if (!(await checkCommand(checkAnvilCommandCli))) { + throw new Error('Failed to install anvil'); } } - return checkCommand(checkCommandCli); } /** @@ -45,10 +50,10 @@ async function checkCommand (cmd: string): Promise { if (code !== 0) { console.error( 'Command failed. Is Foundry not installed? Consider installing ' + - 'via `curl -L https://foundry.paradigm.xyz | bash` and then running' + - ' `foundryup` on a new terminal. ' + - 'For more context, check the installation instructions ' + - 'in the book: https://book.getfoundry.sh/getting-started/installation.html.', + 'via `curl -L https://foundry.paradigm.xyz | bash` and then running' + + ' `foundryup` on a new terminal. ' + + 'For more context, check the installation instructions ' + + 'in the book: https://book.getfoundry.sh/getting-started/installation.html.', ); } resolve(code === 0); @@ -57,9 +62,9 @@ async function checkCommand (cmd: string): Promise { } /** - * Installs foundryup via subprocess + * Downloads foundryup via subprocess */ -async function runFoundryInstaller (): Promise { +async function downloadFoundryUp (): Promise { return new Promise((resolve) => { const process = spawn('/bin/bash', ['-c', FOUNDRYUP_INSTALLER], { stdio: 'inherit', @@ -70,6 +75,20 @@ async function runFoundryInstaller (): Promise { }); } +/** + * Runs foundryup via subprocess + */ +async function runFoundryUp (): Promise { + return new Promise((resolve) => { + const process = spawn(foundryUpBinPath(), [], { + stdio: 'inherit', + }); + process.on('exit', (code) => { + resolve(code === 0); + }); + }); +} + /** * @returns the path to the foundry directory: `$HOME/.foundry` */ diff --git a/sandbox/state.json b/sandbox/state.json index f30eab99..7d5c2c66 100644 --- a/sandbox/state.json +++ b/sandbox/state.json @@ -1 +1 @@ -{"block":{"number":"0x5d","coinbase":"0x0000000000000000000000000000000000000000","timestamp":"0x664cec16","gas_limit":"0x6691b7","basefee":"0x1b818","difficulty":"0x0","prevrandao":"0x0000000000000000000000000000000000000000000000000000000000000000","blob_excess_gas_and_price":{"excess_blob_gas":0,"blob_gasprice":1}},"accounts":{"0x0000000000000000000000000000000000000000":{"nonce":0,"balance":"0xc968d22370860","code":"0x","storage":{}},"0x00e39a5004299871ab3b00fed5a39a715f181d02":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x66":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x67":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xd178b720229c39de617846f84cf9c8d32a63a23d","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0x0458f653495fb8d9bd0e7df468c2bf76d26c7bd9":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f7e83aee1461002d575b5f80fd5b61004061003b3660046105ba565b610054565b604051901515815260200160405180910390f35b5f601482146100a95760405162461bcd60e51b815260206004820152601860248201527f496e76616c696420736861312068617368206c656e6774680000000000000000604482015260640160405180910390fd5b5f6100ec5f85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101599050565b6bffffffffffffffffffffffff191690505f61013c87878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061018a92505050565b6bffffffffffffffffffffffff1916919091149695505050505050565b81515f90610168836014610621565b1115610172575f80fd5b5001602001516bffffffffffffffffffffffff191690565b5f6040518251602084019350604067ffffffffffffffc0600183011601600982820310600181036101bc576040820191505b50776745230100efcdab890098badcfe001032547600c3d2e1f061020d565b5f8383101561020657508082015192829003926020841015610206575f1960208590036101000a0119165b9392505050565b5f5b82811015610514576102228482896101db565b85526102328460208301896101db565b60208601526040818503106001810361024e5760808286038701535b506040830381146001810361026b57602086018051600887021790525b5060405b60808110156102f357858101603f19810151603719820151601f19830151600b198401516002911891909218189081027ffffffffefffffffefffffffefffffffefffffffefffffffefffffffefffffffe1663800000009091047c010000000100000001000000010000000100000001000000010000000116179052600c0161026f565b5060805b61014081101561037c57858101607f19810151606f19820151603f198301516017198401516004911891909218189081027ffffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffc1663400000009091047c0300000003000000030000000300000003000000030000000300000003161790526018016102f7565b50815f805f5b60508110156104ea576014810480156103b257600181146103d957600281146103fe576003811461042857610449565b600160281b8504600160501b86048118600160781b870416189350635a8279999250610449565b600160281b8504600160781b8604600160501b870418189350636ed9eba19250610449565b600160501b8504600160781b8604818117600160281b8804169116179350638f1bbcdc9250610449565b600160281b8504600160781b8604600160501b87041818935063ca62c1d692505b50601f600160bb1b8504168063ffffffe06001609b1b87041617905080840190508063ffffffff8616019050808301905080600160e01b600484028c015104019050600160a01b8102600160281b860417945050600160501b633fffffff600160521b86041663c00000006604000000000000870416170277ffffffff00ffffffff000000000000ffffffff00ffffffff8516179350600181019050610382565b5050509190910177ffffffff00ffffffff00ffffffff00ffffffff00ffffffff169060400161020f565b50600160601b63ffffffff821667ffffffff000000006101008404166bffffffff00000000000000006201000085041663ffffffff60601b630100000086041663ffffffff60801b6401000000008704161717171702945050505050919050565b5f8083601f840112610585575f80fd5b50813567ffffffffffffffff81111561059c575f80fd5b6020830191508360208285010111156105b3575f80fd5b9250929050565b5f805f80604085870312156105cd575f80fd5b843567ffffffffffffffff808211156105e4575f80fd5b6105f088838901610575565b90965094506020870135915080821115610608575f80fd5b5061061587828801610575565b95989497509550505050565b8082018082111561064057634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x06e2822b8856749ed179c77140dbc5f5a27410a4":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063de8f50a11461002d575b5f80fd5b61004061003b36600461051c565b610054565b604051901515815260200160405180910390f35b5f6060805f61009c60048b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506102e79050565b60ff1690508015610166576100f060058261ffff168c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b925061015f6101008260056105c3565b61ffff908116906005906101169085168d6105e5565b61012091906105e5565b8c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b915061021d565b6101a960058b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250929392505061038b9050565b90506101f460078261ffff168c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b925061021a6102048260076105c3565b61ffff908116906007906101169085168d6105e5565b91505b5f606061026084868a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152506103b192505050565b90925090508180156102d757506102856020825161027e91906105e5565b82906103cb565b60028b8b6040516102979291906105f8565b602060405180830381855afa1580156102b2573d5f803e3d5ffd5b5050506040513d601f19601f820116820180604052508101906102d59190610607565b145b9c9b505050505050505050505050565b5f8282815181106102fa576102fa61061e565b016020015160f81c90505b92915050565b825160609061031a8385610632565b1115610324575f80fd5b5f8267ffffffffffffffff81111561033e5761033e610645565b6040519080825280601f01601f191660200182016040528015610368576020820181803683370190505b509050602080820190868601016103808282876103ed565b509095945050505050565b81515f9061039a836002610632565b11156103a4575f80fd5b50016002015161ffff1690565b5f60606103bf838587610442565b91509150935093915050565b81515f906103da836020610632565b11156103e4575f80fd5b50016020015190565b602081106104255781518352610404602084610632565b9250610411602083610632565b915061041e6020826105e5565b90506103ed565b905182516020929092036101000a5f190180199091169116179052565b5f60605f85518551855188888860405160200161046496959493929190610686565b6040516020818303038152906040529050835167ffffffffffffffff81111561048f5761048f610645565b6040519080825280601f01601f1916602001820160405280156104b9576020820181803683370190505b50915083516020830182516020840160055afa925050935093915050565b5f8083601f8401126104e7575f80fd5b50813567ffffffffffffffff8111156104fe575f80fd5b602083019150836020828501011115610515575f80fd5b9250929050565b5f805f805f8060608789031215610531575f80fd5b863567ffffffffffffffff80821115610548575f80fd5b6105548a838b016104d7565b9098509650602089013591508082111561056c575f80fd5b6105788a838b016104d7565b90965094506040890135915080821115610590575f80fd5b5061059d89828a016104d7565b979a9699509497509295939492505050565b634e487b7160e01b5f52601160045260245ffd5b61ffff8181168382160190808211156105de576105de6105af565b5092915050565b81810381811115610305576103056105af565b818382375f9101908152919050565b5f60208284031215610617575f80fd5b5051919050565b634e487b7160e01b5f52603260045260245ffd5b80820180821115610305576103056105af565b634e487b7160e01b5f52604160045260245ffd5b5f81515f5b81811015610678576020818501810151868301520161065e565b505f93019283525090919050565b8681528560208201528460408201525f6106b56106af6106a96060850188610659565b86610659565b84610659565b9897505050505050505056fea164736f6c6343000818000a","storage":{}},"0x0712e8e819712c3bfdb098ce51c87a4ac0296fd8":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x0930ffb2c192b0c9a9dd2372cf7f2845ef39cbb6":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x65":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x66":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xbe92182cab5b84fd18b34881a0c32771e84f5b8b","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c8121905":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x107733fed96c4cd390c944a31f5425a7fb98ae5e":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x65":"0x556e73746f707061626c6520446f6d61696e7300000000000000000000000026","0x66":"0x5544000000000000000000000000000000000000000000000000000000000004","0x133":"0x68747470733a2f2f6578616d706c652e636f6d2f000000000000000000000028","0x134":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x9c74364589a7bce52d7a232f90c98b979577d9ab711dbe7e9fb985471178bff":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf29a433ca043c2d5f13825944af9d019209f338df87172c6b8012dce3044881":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf319a2ef598111826b455194189a27454a0286226eb066e1116f605e0373b37":"0x0","0x1257bbdf5bed452b3eda1d974a9839972d4d54d7fb1cde6a652e653346cc29b8":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x12c033f2252861b1bd15e9b5c71ef1cf26ca53de15eabc3b49e06f596e8755ec":"0x0","0x1348552952ac59b1c2522e84f684e36775420b449eddcdbd28f217183ed58b09":"0x0","0x149026695ebdd2bd6be0a7006aec5d10ddffbe46be181e4468980ea83c004fe9":"0x0","0x14c854a78d51371251661a408306c75d2515b5d509b295a58205e48267082bdc":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x18f06622a1abedc7bb78fcc98b2375188aef6c03b9247beee780b0b095d60285":"0x0","0x201ef5e312d372e2aeac4cf173b46ad2985127c7381f4f9acae5ebbd3a5e3861":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x2215c0abaeffcb5feae8a439b3185f8fba5dd6d97529a56c7609cd41fafdf5f1":"0x1","0x23513200931f98893f46373666c13964c7a821c5b40da7951b921629acf02735":"0x0","0x23f87654b79c6db28828f317e47d0c8deb9eaa2ea4e213fef901836c85036bf3":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x2e4566d865f2e159531492d7643e25e502917762b29082282ab9dfee8fbf54c7":"0x0","0x31fc31c15d389c5908095d314bb8b258352d51e18ac8a2f7fe15f3a0af519145":"0x0","0x3467fdbb447be3074b11c625b56e54d7ab44f3804bef205b07dd436d707d06d5":"0x0","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x62b11ad5f582a5c5d378fb310125b030042554f1","0x3cd80e7291e5f6dffa9af6eb70d47145a8fdd40acb8d09dfd0cf374e8c239b37":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x3f86c4990e663ffa5011ed38824fca68af7e0592eb22f41aebdec0ce84ee672e":"0x0","0x406aa3bf31381c8a323679af48792dfa2e7aa09dd0eb919e307dc4bf84216ff6":"0x0","0x47ce17acd30cc86e021ac7b23be8138ea767f6da503362aac5888a0679270eed":"0x0","0x4a7983c36f64e6df4d467cf706c128c273d30c24bbb172e251a5740624cc0bd3":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x4c42d98041cda7cb7d56b5d04731bd436366eb9f05c30f43671f1d1e2c0b0fa4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x55926eed7087c8cbfa1492f6d367f5e4c14c8d8cd59e2918c37184091369efb1":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x5b20f40cb5e9e634a90df9a72b516c11cc52281a4d1b7b67e672e2fe544ff22f":"0x0","0x6dac3e1cfae338e10c9c2f5000f6256d09afa83708761042001cea734f470ac1":"0x0","0x6defc32a546a6fb1b745bd1bb04e27085e94f01d7ef79587aee2c80853c43a53":"0x0","0x760b245be050a725a39b4fc089ad474a5fd40efa17101e112d30195d590779b4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x7bee59fcac76da32acb23def57eaaf959a4372a4fc180978fbd54f7a4c4b2f3d":"0x0","0x804aee9448e0b539a009ee7c6dd57e686c72e7b182e9622a42922b245a97e61e":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x825f7f8567cfd669c3beab41edff07d4aa51436123deeb0d3623b6a8fdec893c":"0x0","0x8717a3236e6a948df94444f035834fa8f7c5ee663a29f3580f3ef43ab051d6bd":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8a34e37883baf84417a33bb02eec8d1e43e363f617029800ff166614df3f112f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8bd1acdc45b63f1edf5db0b1444f1c4a6f82bf0a5a0a7231c2dd7b76a2b1e35c":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87":"0x0","0x8ed4e9fbdf86edd9f3eb1c8d4fbfc53a2eb863faf4cf5e0d2b307c0b33030091":"0x0","0x8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x90d72780b77edcd0c8daffbac0b21264679e851b734cb090e2b144eb3a28bb98":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x93fc964857984ff804a65eaceac4062669948f2b651ddc6b71373ad142bf45e0":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x9770fa903e700367e0306ab8fd70a2bb4f049417d341a2f8a2409d8d6a2218d1":"0x0","0xb1016fe231c2ed9dba8c95d2658191823b4b9ffa61a7aea530802c6b2ff27c41":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xbe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafe":"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f","0xbe7c5c707db1c91bd2c84880bb1e177b65886d295d9a62df8edfe38f8066cc81":"0x0","0xc3cd64a46de7309013ddb93a16a3024c2e46fb931e4744edf2610fb119f716f5":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xc563f9d3175978a619bae1a8175d3ea4be91d3890345085c5eb16f83b678a3d9":"0x0","0xc5b5cdb7b939f9d661f58f28c37e10cf71d45dacfea2581c88ae4a17aaf55e6e":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xd386775169d9e0716e9b5b08561984726edaa9febd0ca8e5468ecffa112078c7":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xe3b736cdcc6a09d7e3a05ffb63b11f11c91958d861443c3409d3fd863e8217bd":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xe3e5b75e3dff543bfbfe5b494e4e3243b4d9d0b3d794725cea46c28fe6be50e4":"0x0","0xe7d61626cac95282d296ee7ab5958e3e72e32eb959a7cab1d37c0f9d6d69c18a":"0x1a","0xeca5e1ccaa645ce2be97a867a1f8aeeb63ea833aeb009c0df0553b42b30c683f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf08305746cdba1d0eaa65036694838a3db122973267ffc57739d605c320c680a":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf0d566acc03395f71b37890f455d51d93197adf754ea72aba21427dc66b437df":"0x0","0xf230898ba4fe40c52f958d03013d995f822e25a5d4fae43bbdc6e92623cea0bd":"0x0","0xf245a9962043f44f4af98f9952a3bd29d91eb05418e4bb567b9de8f27e239b13":"0x0","0xf2a19ade13962e8675aecf2fbe51913877912f9e48e899806b6e06e82f9a980f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf2fab50b0b53245ddfa1bcfcdf4c73e209d6921dad704d173cf04cbbadc8e346":"0x0","0xfa6f3ee10d719cb3457d10c539ff3d77b8e56852ea62f68b2f9f85ad691ed6b4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xfff3abb219acc6ef4eed6e93a5682023229370196f352cdf3a71a88d881e3487":"0x0"}},"0x11dd97b7ca847dfb6504e61b7b9eb30f55e554a0":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a424740014610090575b600080fd5b610059610054366004610ba9565b6100b3565b6040516100669190610c98565b60405180910390f35b61008261007d366004610cab565b6101ce565b604051908152602001610066565b6100a361009e366004610ba9565b610332565b6040519015158152602001610066565b606060005a6001546040805163b3f9e4cb60e01b81529088013560048201529192506000916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561010a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061012e9190610cd9565b90506101c26101406020880188610cf6565b8260408901358561015460608c018c610d13565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8f018190048102820181019092528d815292508d91508c90819084018382808284376000920191909152506103fb92505050565b925050505b9392505050565b60025460015460405163b3f9e4cb60e01b8152600481018490526000926001600160a01b0390811692169063b3f9e4cb90602401602060405180830381865afa92505050801561023b575060408051601f3d908101601f1916820190925261023891810190610cd9565b60015b156102435790505b6001600160a01b0381163b156102c557604051636ccbae5f60e01b81526004810184905281906001600160a01b03821690636ccbae5f90602401602060405180830381865afa9250505080156102b6575060408051601f3d908101601f191682019092526102b391810190610d5a565b60015b156102c357949350505050565b505b600254604051636ccbae5f60e01b8152600481018590526001600160a01b0390911690636ccbae5f90602401602060405180830381865afa15801561030e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101c79190610d5a565b6001546040805163b3f9e4cb60e01b815290850135600482015260009182916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa158015610383573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103a79190610cd9565b90506103f26103b586610e0b565b8286868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506104d392505050565b95945050505050565b6060600080876001600160a01b0316866104178b8a898961051f565b6040516104249190610eb5565b60006040518083038160008787f1925050503d8060008114610462576040519150601f19603f3d011682016040523d82523d6000602084013e610467565b606091505b509092509050610478603f87610ed1565b5a1161048657610486610ef3565b6104c682826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506105d4565b9998505050505050505050565b60006104e084848461060d565b8015610514575060608401516020908101516001600160e01b031990811660009081529182905260409091205460e01b1615155b949350505050565b50565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036105b15760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526105c982828661074c565b979650505050505050565b606083156105e35750816101c7565b8251156105f35782518084602001fd5b8160405162461bcd60e51b81526004016105a89190610c98565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015610654573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106789190610d5a565b905060006107268660600151805190602001208688602001516040516020016106c69392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156101c2575085516101c2906001600160a01b03168286610935565b60606001600160e01b0319841663b87abc1160e01b036107cd5760008380602001905181019061077c9190610d5a565b9050848184604051602401610792929190610f09565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915291506101c79050565b6001600160e01b0319841663c597407360e01b03610859576000806000858060200190518101906107fe9190610f67565b925092509250868383838860405160240161081c9493929190610fd4565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293506101c792505050565b6001600160e01b031984166311ed383160e31b036108a85760008060008580602001905181019061088a91906110a6565b925092509250868383838860405160240161081c9493929190611157565b6001600160e01b031984166328d55f9b60e21b036101c7576000806000858060200190518101906108d991906110a6565b92509250925086838383886040516024016108f79493929190611157565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293505050509392505050565b60008060006109448585610a77565b9092509050600081600481111561095d5761095d61117c565b14801561097b5750856001600160a01b0316826001600160a01b0316145b1561098b576001925050506101c7565b600080876001600160a01b0316631626ba7e60e01b88886040516024016109b3929190610f09565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516109f19190610eb5565b600060405180830381855afa9150503d8060008114610a2c576040519150601f19603f3d011682016040523d82523d6000602084013e610a31565b606091505b5091509150818015610a44575080516020145b8015610a6b57508051630b135d3f60e11b90610a699083016020908101908401610d5a565b145b98975050505050505050565b6000808251604103610aad5760208301516040840151606085015160001a610aa187828585610abc565b94509450505050610ab5565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610af35750600090506003610ba0565b8460ff16601b14158015610b0b57508460ff16601c14155b15610b1c5750600090506004610ba0565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610b70573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610b9957600060019250925050610ba0565b9150600090505b94509492505050565b600080600060408486031215610bbe57600080fd5b833567ffffffffffffffff80821115610bd657600080fd5b9085019060808288031215610bea57600080fd5b90935060208501359080821115610c0057600080fd5b818601915086601f830112610c1457600080fd5b813581811115610c2357600080fd5b876020828501011115610c3557600080fd5b6020830194508093505050509250925092565b60005b83811015610c63578181015183820152602001610c4b565b50506000910152565b60008151808452610c84816020860160208601610c48565b601f01601f19169290920160200192915050565b6020815260006101c76020830184610c6c565b600060208284031215610cbd57600080fd5b5035919050565b6001600160a01b038116811461051c57600080fd5b600060208284031215610ceb57600080fd5b81516101c781610cc4565b600060208284031215610d0857600080fd5b81356101c781610cc4565b6000808335601e19843603018112610d2a57600080fd5b83018035915067ffffffffffffffff821115610d4557600080fd5b602001915036819003821315610ab557600080fd5b600060208284031215610d6c57600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610dac57610dac610d73565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ddb57610ddb610d73565b604052919050565b600067ffffffffffffffff821115610dfd57610dfd610d73565b50601f01601f191660200190565b600060808236031215610e1d57600080fd5b610e25610d89565b8235610e3081610cc4565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610e6057600080fd5b840136601f820112610e7157600080fd5b8035610e84610e7f82610de3565b610db2565b8181523684838501011115610e9857600080fd5b818484018583013760009181019093015250606082015292915050565b60008251610ec7818460208701610c48565b9190910192915050565b600082610eee57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b8281526040602082015260006105146040830184610c6c565b600082601f830112610f3357600080fd5b8151610f41610e7f82610de3565b818152846020838601011115610f5657600080fd5b610514826020830160208701610c48565b600080600060608486031215610f7c57600080fd5b835167ffffffffffffffff80821115610f9457600080fd5b610fa087838801610f22565b94506020860151915080821115610fb657600080fd5b50610fc386828701610f22565b925050604084015190509250925092565b608081526000610fe76080830187610c6c565b8281036020840152610ff98187610c6c565b905084604084015282810360608401526105c98185610c6c565b600082601f83011261102457600080fd5b8151602067ffffffffffffffff8083111561104157611041610d73565b8260051b611050838201610db2565b938452858101830193838101908886111561106a57600080fd5b84880192505b85831015610a6b578251848111156110885760008081fd5b6110968a87838c0101610f22565b8352509184019190840190611070565b6000806000606084860312156110bb57600080fd5b835167ffffffffffffffff808211156110d357600080fd5b6110df87838801611013565b945060208601519150808211156110f557600080fd5b50610fc386828701611013565b600081518084526020808501808196508360051b8101915082860160005b8581101561114a578284038952611138848351610c6c565b98850198935090840190600101611120565b5091979650505050505050565b60808152600061116a6080830187611102565b8281036020840152610ff98187611102565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x2":"0xf8c26340c1eaea6c7ff1760b25005e1306953572","0x1e74f978992d7d64ddac400bd4aae9eefd60fa0b8456650273f5f50148803323":"0xa3557e6c","0x23c84c23be8f829809d1b1502c647c6c59fb6b2345b163a2ca3e7d4f9855975c":"0x8f69c188","0xa0286316c9d3cb00f4f54a9f1096cefaa1748bb5a5395e7fa1563568ebb3e6c3":"0xb87abc11","0xdc138de224807be243ee38fe9e746cce5d437a256b87be90b80240e0811ad043":"0xc5974073"}},"0x145908bbcfc7b258e4d4d9a586f6e3249ae80216":{"nonce":1,"balance":"0x0","code":"0x3d5c","storage":{}},"0x17cda4e23f7237277952e075b1c48467aabfacc0":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c806368f9dab21461002d575b5f80fd5b61004061003b36600461088b565b610052565b60405190815260200160405180910390f35b5f61006f6040518060400160405280606081526020015f81525090565b61008e61007c858861090d565b61008790601061090d565b82906101d1565b506100d085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250859392505061023a9050565b5061011287878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250859392505061023a9050565b505f610120825f0151610266565b905083156101bc5760408051808201909152606081525f602090910181905282515261014c825f610650565b5061018e88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250869392505061023a9050565b505f5b848110156101ba576101a4835f8461067f565b5082516101b090610266565b9150600101610191565b505b6001600160601b031916979650505050505050565b60408051808201909152606081525f60208201526101f0602083610920565b1561021857610200602083610920565b61020b90602061093f565b610215908361090d565b91505b506020808301829052604080518085525f815283019091019052815b92915050565b60408051808201909152606081525f602082015261025f83845f0151518485516106b2565b9392505050565b5f6040518251602084019350604067ffffffffffffffc060018301160160098282031060018103610298576040820191505b50776745230100efcdab890098badcfe001032547600c3d2e1f06102e8565b5f8383101561025f5750808201519282900392602084101561025f575f1960208590036101000a0119169392505050565b5f5b828110156105ef576102fd8482896102b7565b855261030d8460208301896102b7565b6020860152604081850310600181036103295760808286038701535b506040830381146001810361034657602086018051600887021790525b5060405b60808110156103ce57858101603f19810151603719820151601f19830151600b198401516002911891909218189081027ffffffffefffffffefffffffefffffffefffffffefffffffefffffffefffffffe1663800000009091047c010000000100000001000000010000000100000001000000010000000116179052600c0161034a565b5060805b61014081101561045757858101607f19810151606f19820151603f198301516017198401516004911891909218189081027ffffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffc1663400000009091047c0300000003000000030000000300000003000000030000000300000003161790526018016103d2565b50815f805f5b60508110156105c55760148104801561048d57600181146104b457600281146104d9576003811461050357610524565b600160281b8504600160501b86048118600160781b870416189350635a8279999250610524565b600160281b8504600160781b8604600160501b870418189350636ed9eba19250610524565b600160501b8504600160781b8604818117600160281b8804169116179350638f1bbcdc9250610524565b600160281b8504600160781b8604600160501b87041818935063ca62c1d692505b50601f600160bb1b8504168063ffffffe06001609b1b87041617905080840190508063ffffffff8616019050808301905080600160e01b600484028c015104019050600160a01b8102600160281b860417945050600160501b633fffffff600160521b86041663c00000006604000000000000870416170277ffffffff00ffffffff000000000000ffffffff00ffffffff851617935060018101905061045d565b5050509190910177ffffffff00ffffffff00ffffffff00ffffffff00ffffffff16906040016102ea565b50600160601b63ffffffff821667ffffffff000000006101008404166bffffffff00000000000000006201000085041663ffffffff60601b630100000086041663ffffffff60801b6401000000008704161717171702945050505050919050565b60408051808201909152606081525f602082015282515161025f9084906001600160601b031985166014610798565b60408051808201909152606081525f60208201526106aa84846001600160601b031985166014610798565b949350505050565b60408051808201909152606081525f602082015282518211156106d3575f80fd5b60208501516106e2838661090d565b1115610715576107158561070587602001518786610700919061090d565b610813565b610710906002610952565b610829565b5f808651805187602083010193508088870111156107335787860182525b505050602084015b60208410610773578051825261075260208361090d565b915061075f60208261090d565b905061076c60208561093f565b935061073b565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b60408051808201909152606081525f602082015260208501516107bb858461090d565b11156107cf576107cf85610705868561090d565b5f6001836101000a0390508260200360080284901c93508551838682010185831982511617815250805184870111156108085783860181525b509495945050505050565b5f81831115610823575081610234565b50919050565b815161083583836101d1565b50610840838261023a565b50505050565b5f8083601f840112610856575f80fd5b50813567ffffffffffffffff81111561086d575f80fd5b602083019150836020828501011115610884575f80fd5b9250929050565b5f805f805f6060868803121561089f575f80fd5b853567ffffffffffffffff808211156108b6575f80fd5b6108c289838a01610846565b909750955060208801359150808211156108da575f80fd5b506108e788828901610846565b96999598509660400135949350505050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610234576102346108f9565b5f8261093a57634e487b7160e01b5f52601260045260245ffd5b500690565b81810381811115610234576102346108f9565b8082028115828204841417610234576102346108f956fea164736f6c6343000818000a","storage":{}},"0x19356cc2300833e690088a5a09a2044a3cc2a1e2":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x229c56b7805ab5935a883207f6a6bd5847e65aee":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106102ae5760003560e01c8063906cecc111610175578063b9998a24116100dc578063d547741f11610095578063f2fde38b1161006f578063f2fde38b14610892578063f5243bc4146108b2578063f940e385146108d2578063ffa1ad74146108f257600080fd5b8063d547741f1461083f578063d7db74c71461085f578063ec5273891461087257600080fd5b8063b9998a241461077d578063cc2a9a5b1461079d578063cc2c3fc4146107bd578063ceeb4f50146107dd578063d1f5692c146107fd578063d53913931461081d57600080fd5b8063a3a3f7f61161012e578063a3a3f7f614610690578063a3f4df7e146106b0578063a849d65c146106fd578063aa271e1a1461071d578063b0aa98c71461073d578063b3ab15fb1461075d57600080fd5b8063906cecc1146105e657806391d1485414610606578063983b2d5614610626578063986502751461064657806399e0dd7c1461065b578063a217fddf1461067b57600080fd5b80635b6fa8db11610219578063715018a6116101d2578063715018a61461054b57806371e2a6571461056057806377a2a5891461058057806381c81d35146105a05780638456cb59146105b35780638da5cb5b146105c857600080fd5b80635b6fa8db146104a35780635c975abb146104c35780635cd7e3b3146104d85780635e22cd86146104f85780635fc1964f14610518578063634486da1461053857600080fd5b80633092afd51161026b5780633092afd5146103a857806336568abe146103c85780633f41b614146103e85780633f4ba83a1461042057806351cff8d914610435578063572b6c051461045557600080fd5b806301ffc9a7146102b35780631edb948e146102e857806320c5429b1461030a578063248a9ca31461032a578063268b15ed146103685780632f2ff15d14610388575b600080fd5b3480156102bf57600080fd5b506102d36102ce366004613dc4565b610923565b60405190151581526020015b60405180910390f35b3480156102f457600080fd5b50610308610303366004613e13565b61095a565b005b34801561031657600080fd5b50610308610325366004613e3f565b610b03565b34801561033657600080fd5b5061035a610345366004613e3f565b60009081526097602052604090206001015490565b6040519081526020016102df565b34801561037457600080fd5b50610308610383366004613e99565b610c26565b34801561039457600080fd5b506103086103a3366004613f04565b610cb9565b3480156103b457600080fd5b506103086103c3366004613f34565b610ce3565b3480156103d457600080fd5b506103086103e3366004613f04565b610cf7565b3480156103f457600080fd5b5060c954610408906001600160a01b031681565b6040516001600160a01b0390911681526020016102df565b34801561042c57600080fd5b50610308610d85565b34801561044157600080fd5b50610308610450366004613f34565b610d97565b34801561046157600080fd5b506102d3610470366004613f34565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546001600160a01b0390811691161490565b3480156104af57600080fd5b5060cc54610408906001600160a01b031681565b3480156104cf57600080fd5b506102d3610e37565b3480156104e457600080fd5b506103086104f3366004613fa3565b610e4d565b34801561050457600080fd5b50610308610513366004614062565b6110b1565b34801561052457600080fd5b5061030861053336600461419c565b6112f6565b610308610546366004613f34565b61133e565b34801561055757600080fd5b50610308611401565b34801561056c57600080fd5b5061030861057b36600461419c565b611413565b34801561058c57600080fd5b5060ce54610408906001600160a01b031681565b6103086105ae366004613f34565b61145b565b3480156105bf57600080fd5b506103086114d8565b3480156105d457600080fd5b506033546001600160a01b0316610408565b3480156105f257600080fd5b5061030861060136600461423a565b6114e8565b34801561061257600080fd5b506102d3610621366004613f04565b61156e565b34801561063257600080fd5b50610308610641366004613f34565b611599565b34801561065257600080fd5b506103086115aa565b34801561066757600080fd5b50610308610676366004614295565b6115c4565b34801561068757600080fd5b5061035a600081565b34801561069c57600080fd5b506103086106ab3660046142d6565b6116ab565b3480156106bc57600080fd5b506106f0604051806040016040528060148152602001732aa7299d1026b4b73a34b7339026b0b730b3b2b960611b81525081565b6040516102df919061437c565b34801561070957600080fd5b5060cb54610408906001600160a01b031681565b34801561072957600080fd5b506102d3610738366004613f34565b6116f4565b34801561074957600080fd5b506102d3610758366004613e3f565b61170e565b34801561076957600080fd5b50610308610778366004613f34565b61176c565b34801561078957600080fd5b50610308610798366004613f34565b611796565b3480156107a957600080fd5b506103086107b836600461438f565b6117db565b3480156107c957600080fd5b5060ca54610408906001600160a01b031681565b3480156107e957600080fd5b506103086107f8366004614411565b611cd2565b34801561080957600080fd5b506103086108183660046144c6565b611d76565b34801561082957600080fd5b5061035a600080516020614ef483398151915281565b34801561084b57600080fd5b5061030861085a366004613f04565b611e2d565b61030861086d3660046144fb565b611e52565b34801561087e57600080fd5b5061030861088d366004613e3f565b611fe2565b34801561089e57600080fd5b506103086108ad366004613f34565b612054565b3480156108be57600080fd5b506103086108cd3660046145f0565b612070565b3480156108de57600080fd5b506103086108ed366004614708565b612222565b3480156108fe57600080fd5b506106f060405180604001604052806005815260200164302e352e3160d81b81525081565b60006001600160e01b03198216637965db0b60e01b148061095457506301ffc9a760e01b6001600160e01b03198316145b92915050565b61096561073861239e565b61098a5760405162461bcd60e51b815260040161098190614736565b60405180910390fd5b60c95460405163baef73e960e01b8152600481018390526000916001600160a01b03169063baef73e990602401602060405180830381865afa1580156109d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109f8919061476b565b9050806001600160401b0316600003610a235760405162461bcd60e51b815260040161098190614788565b806001600160401b0316836001600160401b031611610a905760405162461bcd60e51b815260206004820152602360248201527f4d696e74696e674d616e616765723a204558504952595f4e4f545f455854454e60448201526211115160ea1b6064820152608401610981565b60c954604051631fb9763760e11b81526001600160401b0385166004820152602481018490526001600160a01b0390911690633f72ec6e906044015b600060405180830381600087803b158015610ae657600080fd5b505af1158015610afa573d6000803e3d6000fd5b50505050505050565b610b0e61073861239e565b610b2a5760405162461bcd60e51b815260040161098190614736565b60c95460405163baef73e960e01b8152600481018390526001600160a01b039091169063baef73e990602401602060405180830381865afa158015610b73573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b97919061476b565b6001600160401b0316600003610bbf5760405162461bcd60e51b815260040161098190614788565b60c954604051637eee288d60e01b8152306004820152602481018390526001600160a01b0390911690637eee288d90604401600060405180830381600087803b158015610c0b57600080fd5b505af1158015610c1f573d6000803e3d6000fd5b5050505050565b8282828080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250610c6993508592508491506123ad565b610c71610e37565b15610c8e5760405162461bcd60e51b8152600401610981906147cb565b6060610afa610c9b61239e565b610cae88610ca98989612584565b6125b0565b8384600060016126c1565b600082815260976020526040902060010154610cd481612c15565b610cde8383612c26565b505050565b610ceb612cad565b610cf481612d26565b50565b610cff61239e565b6001600160a01b0316816001600160a01b031614610d775760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610981565b610d818282612d3e565b5050565b610d8d612cad565b610d95612dc3565b565b610d9f612cad565b6001600160a01b038116610db257600080fd5b60405147906001600160a01b0383169082156108fc029083906000818181858888f19350505050158015610dea573d6000803e3d6000fd5b50604080516001600160a01b03841681526020810183905260008183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a15050565b600080516020614ed48339815191525460ff1690565b610e5786886147f5565b8051600203610e8c57610e6b61073861239e565b610e875760405162461bcd60e51b8152600401610981906148bf565b610fd1565b6000610e9782612e6b565b60c9549092506001600160a01b0316905063430c2081610eb561239e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015610f00573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f249190614903565b80610fb3575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa158015610f7d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fa19190614903565b8015610fb35750610fb361073861239e565b610fcf5760405162461bcd60e51b815260040161098190614920565b505b610fdb87896147f5565b6000600282511015610fff5760405162461bcd60e51b81526004016109819061496f565b6110546110336000846001865161101691906149ca565b81518110611026576110266149dd565b6020026020010151612ea6565b83600081518110611046576110466149dd565b6020026020010151836123ad565b61105c610e37565b156110795760405162461bcd60e51b8152600401610981906147cb565b6110a38b6110878b8d6147f5565b6110918a8c6147f5565b61109b898b6147f5565b6000896126c1565b505050505050505050505050565b6110bb87896147f5565b80516002036110f0576110cf61073861239e565b6110eb5760405162461bcd60e51b8152600401610981906148bf565b611235565b60006110fb82612e6b565b60c9549092506001600160a01b0316905063430c208161111961239e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015611164573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111889190614903565b80611217575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa1580156111e1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112059190614903565b8015611217575061121761073861239e565b6112335760405162461bcd60e51b815260040161098190614920565b505b61123f888a6147f5565b836002825110156112625760405162461bcd60e51b81526004016109819061496f565b6112796110336000846001865161101691906149ca565b611281610e37565b1561129e5760405162461bcd60e51b8152600401610981906147cb565b60028a146112be5760405162461bcd60e51b8152600401610981906149f3565b6112e78c6112cc8c8e6147f5565b6112d68b8d6147f5565b6112e08a8c6147f5565b89896126c1565b50505050505050505050505050565b6112fe612cad565b60005b8151811015610d815761132c82828151811061131f5761131f6149dd565b6020026020010151612d26565b8061133681614a39565b915050611301565b61134961073861239e565b6113655760405162461bcd60e51b815260040161098190614736565b6001600160a01b0381166113bb5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610981565b6113c481612f5a565b6113cc6115aa565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610d81573d6000803e3d6000fd5b611409612cad565b610d956000612f72565b61141b612cad565b60005b8151811015610d815761144982828151811061143c5761143c6149dd565b6020026020010151612f5a565b8061145381614a39565b91505061141e565b61146661073861239e565b6114825760405162461bcd60e51b815260040161098190614736565b6001600160a01b0381166113c45760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610981565b6114e0612cad565b610d95612fc4565b8282828080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525061152b93508592508491506123ad565b611533610e37565b156115505760405162461bcd60e51b8152600401610981906147cb565b606061156487610cae88610ca98989612584565b5050505050505050565b60009182526097602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6115a1612cad565b610cf481612f5a565b610d95600080516020614ef48339815191526103e361239e565b6115cc612cad565b60c954604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906115fe9085908590600401614a52565b600060405180830381600087803b15801561161857600080fd5b505af115801561162c573d6000803e3d6000fd5b505060cb546001600160a01b0316159150610d8190505760cb54604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906116759085908590600401614a52565b600060405180830381600087803b15801561168f57600080fd5b505af11580156116a3573d6000803e3d6000fd5b505050505050565b6116b3612cad565b610cde83838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525085925061302c915050565b6000610954600080516020614ef48339815191528361156e565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd696020820152908101829052600090611762906060015b6040516020818303038152906040528051906020012090565b5460ff1692915050565b611774612cad565b60ce80546001600160a01b0319166001600160a01b0392909216919091179055565b61179e612cad565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e80546001600160a01b0319166001600160a01b03831617905550565b600054610100900460ff16158080156117fb5750600054600160ff909116105b806118155750303b158015611815575060005460ff166001145b6118785760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610981565b6000805460ff19166001179055801561189b576000805461ff0019166101001790555b60c980546001600160a01b03199081166001600160a01b038a81169190911790925560ca8054821689841617905560cb8054821688841617905560cc8054821687841617905560ce80549091169185169190911790556118f961314c565b611901613183565b61190a826131bc565b6119126131e3565b6040805161036081018252600661032082018181526563727970746f60d01b610340840152825282518084018452818152651dd85b1b195d60d21b602082810191909152808401919091528351808501855260018152600f60fb1b8183015283850152835180850185526003808252621b999d60ea1b82840152606085019190915284518086018652600a815269313637b1b5b1b430b4b760b11b818401526080850152845180860186526007808252663134ba31b7b4b760c91b8285015260a0860191909152855180870187528281526207070760eb1b8185015260c0860152855180870187528281526264616f60e81b8185015260e086015285518087018752828152621e9a5b60ea1b8185015261010086015285518087018752908152663837b63cb3b7b760c91b8184015261012085015284518086018652600b81526a756e73746f707061626c6560a81b81840152610140850152845180860186528381526535b632bb32b960d11b8184015261016085015284518086018652600280825261686960f01b8285015261018086019190915285518087018752848152656b726573757360d01b818501526101a086015285518087018752600580825264616e696d6560d81b828601526101c087019190915286518088018852818152646d616e676160d81b818601526101e087015286518088018852600981526862696e616e6365757360b81b8186015261020087015286518088018852818152647265616c6d60d81b818601526102208701528651808801885291825261676f60f01b82850152610240860191909152855180870187526008815267185b1d1a5b5a5cdd60c21b818501526102608601528551808701875290815264707564677960d81b81840152610280850152845180860186528381526530bab9ba34b760d11b818401526102a08501528451808601865292835265189a5d19d95d60d21b838301526102c08401929092528351808501855291825262706f6760e81b828201526102e083019190915282518084019093526004835263636c617960e01b9083015261030081019190915260005b6019811015611c5c57611c4a828260198110611c3e57611c3e6149dd565b6020020151600061302c565b80611c5481614a39565b915050611c20565b50611c8360405180604001604052806003815260200162636f6d60e81b815250600161302c565b508015610afa576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050505050565b8686868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250611d1593508592508491506123ad565b611d1d610e37565b15611d3a5760405162461bcd60e51b8152600401610981906147cb565b611d698a611d4c8b610ca98c8c612584565b611d56888a6147f5565b611d6087896147f5565b600060016126c1565b5050505050505050505050565b611d7e612cad565b60005b81811015610cde5760c9546001600160a01b03166350960239848484818110611dac57611dac6149dd565b9050602002016020810190611dc19190613f34565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401600060405180830381600087803b158015611e0257600080fd5b505af1158015611e16573d6000803e3d6000fd5b505050508080611e2590614a39565b915050611d81565b600082815260976020526040902060010154611e4881612c15565b610cde8383612d3e565b611e5c898b6147f5565b6000600282511015611e805760405162461bcd60e51b81526004016109819061496f565b611e976110336000846001865161101691906149ca565b611e9f610e37565b15611ebc5760405162461bcd60e51b8152600401610981906147cb565b60028b14611edc5760405162461bcd60e51b8152600401610981906149f3565b611f228d8d8d898960008a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061322392505050565b84341015611f725760405162461bcd60e51b815260206004820181905260248201527f4d696e74696e674d616e616765723a204e4f545f454e4f5547485f46554e44536044820152606401610981565b611f848d8d8d8d8d8d8d8c60006133e3565b843411156112e757611f9461239e565b6001600160a01b03166108fc611faa87346149ca565b6040518115909202916000818181858888f19350505050158015611fd2573d6000803e3d6000fd5b5050505050505050505050505050565b611fea612cad565b611ff38161349f565b61200f5760405162461bcd60e51b815260040161098190614a81565b600081815260cd6020526040812061202691613d76565b60405181907f0aa1aff0f830e739d86baf0e6624d6763da02f7733575e0e463886cd062dea6a90600090a250565b61205c612cad565b612065816134c5565b610cf460008261353b565b61207a8a8c6147f5565b600060028251101561209e5760405162461bcd60e51b81526004016109819061496f565b6120b56110336000846001865161101691906149ca565b6120bd610e37565b156120da5760405162461bcd60e51b8152600401610981906147cb565b60028c146120fa5760405162461bcd60e51b8152600401610981906149f3565b61213f8e8e8e8a898b8a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061322392505050565b856001600160a01b03166323b872dd61215661239e565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152306024820152604481018890526064016020604051808303816000875af11580156121a9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121cd9190614903565b6122115760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610981565b611fd28e8e8e8e8e8e8e8c8e6133e3565b61222a612cad565b6040516370a0823160e01b81523060048201526000906001600160a01b038416906370a0823190602401602060405180830381865afa158015612271573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122959190614ac3565b60405163a9059cbb60e01b81526001600160a01b038481166004830152602482018390529192509084169063a9059cbb906044016020604051808303816000875af11580156122e8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061230c9190614903565b6123505760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610981565b604080516001600160a01b0384811682526020820184905285168183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a1505050565b60006123a8613545565b905090565b6123b68361349f565b6123d25760405162461bcd60e51b815260040161098190614a81565b600083815260cf602052604090205460ff1615156001600160401b03821615151461244e5760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544c445f455850495241424c455f4d496044820152650a69a82a886960d31b6064820152608401610981565b60006124818360408051808201825260008082526020918201528151808301909252825182529182019181019190915290565b9050600a81600001511115612529576124ac6124a0826000600a61358b565b80516020909101512090565b7fb551e0305c8163b812374b8e78b577c77f226f6f10c5ad03e52699578fbc34b8036125295760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544f4b454e5f4c4142454c5f50524f4860448201526512509255115160d21b6064820152608401610981565b612532836135ca565b61257e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a204c4142454c5f494e56414c49440000006044820152606401610981565b50505050565b60608282604051602001612599929190614adc565b604051602081830303815290604052905092915050565b604080516002808252606082810190935260009190816020015b60608152602001906001900390816125ca57905050905082816000815181106125f5576125f56149dd565b602002602001018190525060cd6000858152602001908152602001600020805461261e90614b04565b80601f016020809104026020016040519081016040528092919081815260200182805461264a90614b04565b80156126975780601f1061266c57610100808354040283529160200191612697565b820191906000526020600020905b81548152906001019060200180831161267a57829003601f168201915b5050505050816001815181106126af576126af6149dd565b60209081029190910101529392505050565b60008060006126cf88612e6b565b915091508380156126e1575060028851115b8015612763575060c9546040516331a9108f60e11b8152600481018390526001600160a01b038b8116921690636352211e90602401602060405180830381865afa158015612733573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127579190614b3e565b6001600160a01b031614155b156127c35760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e616765723a20524556455253455f5245434f52445f4e60448201526913d517d0531313d5d15160b21b6064820152608401610981565b60c954604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401602060405180830381865afa15801561280c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128309190614903565b8015612921575060c9546040516331a9108f60e11b81526004810184905230916001600160a01b031690636352211e90602401602060405180830381865afa158015612880573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128a49190614b3e565b6001600160a01b03161480612921575060c95460405163d9548e5360e01b8152600481018490526001600160a01b039091169063d9548e5390602401602060405180830381865afa1580156128fd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129219190614903565b15612a12576001600160401b038516156129a35760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b15801561298a57600080fd5b505af115801561299e573d6000803e3d6000fd5b505050505b60c954604051630fb8df0360e11b81526001600160a01b0390911690631f71be06906129db908c908c908c908c908b90600401614bb0565b600060405180830381600087803b1580156129f557600080fd5b505af1158015612a09573d6000803e3d6000fd5b50505050612c09565b612a1b8261372e565b612a248861378d565b8015612a31575087516002145b8015612a4457506001600160401b038516155b15612b225760ca5488516001600160a01b039091169063c36c2125908b908b90600090612a7357612a736149dd565b602090810291909101015160cc546040516001600160e01b031960e086901b168152612aad9392916001600160a01b031690600401614c0f565b600060405180830381600087803b158015612ac757600080fd5b505af1158015612adb573d6000803e3d6000fd5b50505050600087511115612b1d5760cc54604051633a0deb9d60e21b81526001600160a01b039091169063e837ae74906129db908a908a908790600401614c44565b612c09565b60c95460405163ba5d40b760e01b81526001600160a01b039091169063ba5d40b790612b5a908c908c908c908c908b90600401614bb0565b600060405180830381600087803b158015612b7457600080fd5b505af1158015612b88573d6000803e3d6000fd5b505050506001600160401b03851615612c095760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b158015612bf057600080fd5b505af1158015612c04573d6000803e3d6000fd5b505050505b50979650505050505050565b610cf481612c2161239e565b6137e7565b612c30828261156e565b610d815760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19166001179055612c6961239e565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b612cb561239e565b6001600160a01b0316612cd06033546001600160a01b031690565b6001600160a01b031614610d955760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610981565b610cf4600080516020614ef483398151915282611e2d565b612d48828261156e565b15610d815760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19169055612d7f61239e565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612dcb610e37565b612e0e5760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881393d517d4105554d15160621b6044820152606401610981565b600080516020614ed4833981519152805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa612e4e61239e565b6040516001600160a01b03909116815260200160405180910390a1565b805160009081905b8015612ea057829150612e8c82856110166001856149ca565b925080612e9881614c7a565b915050612e73565b50915091565b60008151600003612ef95760405162461bcd60e51b815260206004820152601b60248201527f4d696e74696e674d616e616765723a204c4142454c5f454d50545900000000006044820152606401610981565b8282604051602001612f0b9190614c91565b60405160208183030381529060405280519060200120604051602001612f3b929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b610cf4600080516020614ef48339815191528261353b565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b612fcc610e37565b15612fe95760405162461bcd60e51b8152600401610981906147cb565b600080516020614ed4833981519152805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258612e4e61239e565b6000613039600084612ea6565b600081815260cd602052604090209091506130548482614cf3565b50600081815260cf602052604090819020805460ff19168415151790555181907f4fce6f6e172b04eaa80325d8e3b0180a34945000f3e214605039e8420fdf8980906130a190869061437c565b60405180910390a260c954604051634f558e7960e01b8152600481018390526001600160a01b0390911690634f558e7990602401602060405180830381865afa1580156130f2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131169190614903565b610cde5760c9546040516307befae360e51b81526001600160a01b039091169063f7df5c6090610acc9084908790600401614db2565b600054610100900460ff166131735760405162461bcd60e51b815260040161098190614dd3565b610d9561317e61239e565b612f72565b600054610100900460ff166131aa5760405162461bcd60e51b815260040161098190614dd3565b610d9560006131b761239e565b61353b565b600054610100900460ff1661179e5760405162461bcd60e51b815260040161098190614dd3565b600054610100900460ff1661320a5760405162461bcd60e51b815260040161098190614dd3565b600080516020614ed4833981519152805460ff19169055565b600061323761323287896147f5565b612e6b565b506040516bffffffffffffffffffffffff1930606090811b821660208401524660348401528b811b82166054840152606883018490526001600160c01b031960c08a901b1660888401526090830188905286901b1660b082015290915060009061331390849061330d9060c401604051602081830303815290604052805190602001206040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c8101829052600090605c01604051602081830303815290604052805190602001209050919050565b9061384b565b905061331e816116f4565b6133765760405162461bcd60e51b8152602060048201526024808201527f4d696e74696e674d616e616765723a205349474e45525f49535f4e4f545f4d49604482015263272a22a960e11b6064820152608401610981565b42866001600160401b0316116133d85760405162461bcd60e51b815260206004820152602160248201527f4d696e74696e674d616e616765723a20455850495245445f5349474e415455526044820152604560f81b6064820152608401610981565b505050505050505050565b600061342a8a6133f38a8c6147f5565b6133fd898b6147f5565b613407888a6147f5565b60008f6001600160a01b031661341b61239e565b6001600160a01b0316146126c1565b9050896001600160a01b031661343e61239e565b6001600160a01b0316827fa545b6fd3355e8d57f8c8147bafe740545bd3ea1f94bef2576a6d532a7c3b605868660405161348b9291909182526001600160a01b0316602082015260400190565b60405180910390a450505050505050505050565b600081815260cd6020526040812080548291906134bb90614b04565b9050119050919050565b6134cd612cad565b6001600160a01b0381166135325760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610981565b610cf481612f72565b610d818282612c26565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546000906001600160a01b03163303613586575060331936013560601c90565b503390565b604080518082019091526000808252602082015260405180604001604052808381526020018486602001516135c09190614e1e565b9052949350505050565b600081516000036135dd57506000919050565b60208201805160f81c603081108015906135fb575060398160ff1611155b15801561361d575060618160ff161015801561361b5750607a8160ff1611155b155b1561362c575060009392505050565b8351600181111561369a5761364e836136466001846149ca565b015160f81c90565b915060308260ff1610158015613668575060398260ff1611155b15801561368a575060618260ff16101580156136885750607a8260ff1611155b155b1561369a57506000949350505050565b60015b6136a86001836149ca565b811015613722578381015160f81c9250602d83148015906136de575060308360ff16101580156136dc575060398360ff1611155b155b80156136ff575060618360ff16101580156136fd5750607a8360ff1611155b155b156137105750600095945050505050565b8061371a81614a39565b91505061369d565b50600195945050505050565b6137378161170e565b156137845760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a20544f4b454e5f424c4f434b45440000006044820152606401610981565b610cf48161386f565b6000806137a46000846001865161101691906149ca565b60ca549091506001600160a01b0316158015906137e05750807f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f145b9392505050565b6137f1828261156e565b610d8157613809816001600160a01b031660146138f3565b6138148360206138f3565b604051602001613825929190614e31565b60408051601f198184030181529082905262461bcd60e51b82526109819160040161437c565b600080600061385a8585613a8e565b9150915061386781613ad3565b509392505050565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd6960208201529081018290526001906138ae90606001611749565b805460ff19169115159190911790556040518181527f2ce5d9351b1d590d5a066db0d2dc7602d55f092506a83a7ee8c4d78ee357d75a9060200160405180910390a150565b60606000613902836002614ea6565b61390d906002614e1e565b6001600160401b0381111561392457613924614133565b6040519080825280601f01601f19166020018201604052801561394e576020820181803683370190505b509050600360fc1b81600081518110613969576139696149dd565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110613998576139986149dd565b60200101906001600160f81b031916908160001a90535060006139bc846002614ea6565b6139c7906001614e1e565b90505b6001811115613a3f576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106139fb576139fb6149dd565b1a60f81b828281518110613a1157613a116149dd565b60200101906001600160f81b031916908160001a90535060049490941c93613a3881614c7a565b90506139ca565b5083156137e05760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610981565b6000808251604103613ac45760208301516040840151606085015160001a613ab887828585613c89565b94509450505050613acc565b506000905060025b9250929050565b6000816004811115613ae757613ae7614ebd565b03613aef5750565b6001816004811115613b0357613b03614ebd565b03613b505760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152606401610981565b6002816004811115613b6457613b64614ebd565b03613bb15760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610981565b6003816004811115613bc557613bc5614ebd565b03613c1d5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b6064820152608401610981565b6004816004811115613c3157613c31614ebd565b03610cf45760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c604482015261756560f01b6064820152608401610981565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613cc05750600090506003613d6d565b8460ff16601b14158015613cd857508460ff16601c14155b15613ce95750600090506004613d6d565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613d3d573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613d6657600060019250925050613d6d565b9150600090505b94509492505050565b508054613d8290614b04565b6000825580601f10613d92575050565b601f016020900490600052602060002090810190610cf491905b80821115613dc05760008155600101613dac565b5090565b600060208284031215613dd657600080fd5b81356001600160e01b0319811681146137e057600080fd5b6001600160401b0381168114610cf457600080fd5b8035613e0e81613dee565b919050565b60008060408385031215613e2657600080fd5b8235613e3181613dee565b946020939093013593505050565b600060208284031215613e5157600080fd5b5035919050565b60008083601f840112613e6a57600080fd5b5081356001600160401b03811115613e8157600080fd5b602083019150836020828501011115613acc57600080fd5b600080600060408486031215613eae57600080fd5b8335925060208401356001600160401b03811115613ecb57600080fd5b613ed786828701613e58565b9497909650939450505050565b6001600160a01b0381168114610cf457600080fd5b8035613e0e81613ee4565b60008060408385031215613f1757600080fd5b823591506020830135613f2981613ee4565b809150509250929050565b600060208284031215613f4657600080fd5b81356137e081613ee4565b60008083601f840112613f6357600080fd5b5081356001600160401b03811115613f7a57600080fd5b6020830191508360208260051b8501011115613acc57600080fd5b8015158114610cf457600080fd5b60008060008060008060008060a0898b031215613fbf57600080fd5b8835613fca81613ee4565b975060208901356001600160401b0380821115613fe657600080fd5b613ff28c838d01613f51565b909950975060408b013591508082111561400b57600080fd5b6140178c838d01613f51565b909750955060608b013591508082111561403057600080fd5b5061403d8b828c01613f51565b909450925050608089013561405181613f95565b809150509295985092959890939650565b600080600080600080600080600060c08a8c03121561408057600080fd5b893561408b81613ee4565b985060208a01356001600160401b03808211156140a757600080fd5b6140b38d838e01613f51565b909a50985060408c01359150808211156140cc57600080fd5b6140d88d838e01613f51565b909850965060608c01359150808211156140f157600080fd5b506140fe8c828d01613f51565b90955093505060808a013561411281613dee565b915060a08a013561412281613f95565b809150509295985092959850929598565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561417157614171614133565b604052919050565b60006001600160401b0382111561419257614192614133565b5060051b60200190565b600060208083850312156141af57600080fd5b82356001600160401b038111156141c557600080fd5b8301601f810185136141d657600080fd5b80356141e96141e482614179565b614149565b81815260059190911b8201830190838101908783111561420857600080fd5b928401925b8284101561422f57833561422081613ee4565b8252928401929084019061420d565b979650505050505050565b6000806000806060858703121561425057600080fd5b843561425b81613ee4565b93506020850135925060408501356001600160401b0381111561427d57600080fd5b61428987828801613e58565b95989497509550505050565b600080602083850312156142a857600080fd5b82356001600160401b038111156142be57600080fd5b6142ca85828601613e58565b90969095509350505050565b6000806000604084860312156142eb57600080fd5b83356001600160401b0381111561430157600080fd5b61430d86828701613e58565b909450925050602084013561432181613f95565b809150509250925092565b60005b8381101561434757818101518382015260200161432f565b50506000910152565b6000815180845261436881602086016020860161432c565b601f01601f19169290920160200192915050565b6020815260006137e06020830184614350565b60008060008060008060c087890312156143a857600080fd5b86356143b381613ee4565b955060208701356143c381613ee4565b945060408701356143d381613ee4565b935060608701356143e381613ee4565b925060808701356143f381613ee4565b915060a087013561440381613ee4565b809150509295509295509295565b60008060008060008060008060a0898b03121561442d57600080fd5b883561443881613ee4565b97506020890135965060408901356001600160401b038082111561445b57600080fd5b6144678c838d01613e58565b909850965060608b013591508082111561448057600080fd5b61448c8c838d01613f51565b909650945060808b01359150808211156144a557600080fd5b506144b28b828c01613f51565b999c989b5096995094979396929594505050565b600080602083850312156144d957600080fd5b82356001600160401b038111156144ef57600080fd5b6142ca85828601613f51565b600080600080600080600080600080600060e08c8e03121561451c57600080fd5b6145258c613ef9565b9a506001600160401b038060208e0135111561454057600080fd5b6145508e60208f01358f01613f51565b909b50995060408d013581101561456657600080fd5b6145768e60408f01358f01613f51565b909950975060608d013581101561458c57600080fd5b61459c8e60608f01358f01613f51565b90975095506145ad60808e01613e03565b945060a08d013593508060c08e013511156145c757600080fd5b506145d88d60c08e01358e01613e58565b81935080925050509295989b509295989b9093969950565b6000806000806000806000806000806000806101008d8f03121561461357600080fd5b61461c8d613ef9565b9b506001600160401b0360208e0135111561463657600080fd5b6146468e60208f01358f01613f51565b909b5099506001600160401b0360408e0135111561466357600080fd5b6146738e60408f01358f01613f51565b90995097506001600160401b0360608e0135111561469057600080fd5b6146a08e60608f01358f01613f51565b90975095506146b160808e01613e03565b94506146bf60a08e01613ef9565b935060c08d013592506001600160401b0360e08e013511156146e057600080fd5b6146f08e60e08f01358f01613e58565b81935080925050509295989b509295989b509295989b565b6000806040838503121561471b57600080fd5b823561472681613ee4565b91506020830135613f2981613ee4565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b60006020828403121561477d57600080fd5b81516137e081613dee565b60208082526023908201527f4d696e74696e674d616e616765723a20544f4b454e5f4e4f545f455850495241604082015262424c4560e81b606082015260800190565b60208082526010908201526f14185d5cd8589b194e8814105554d15160821b604082015260600190565b60006148036141e484614179565b80848252602080830192508560051b85013681111561482157600080fd5b855b818110156148b35780356001600160401b03808211156148435760008081fd5b90880190601f36818401126148585760008081fd5b82358281111561486a5761486a614133565b61487b818301601f19168801614149565b9250808352368782860101111561489457600091508182fd5b8087850188850137600090830187015250865250938201938201614823565b50919695505050505050565b60208082526024908201527f4d696e74696e674d616e616765723a2043414c4c45525f49535f4e4f545f4d49604082015263272a22a960e11b606082015260800190565b60006020828403121561491557600080fd5b81516137e081613f95565b6020808252602f908201527f4d696e74696e674d616e616765723a2053454e4445525f49535f4e4f545f415060408201526e282927ab22a22fa7a92fa7aba722a960891b606082015260800190565b60208082526025908201527f4d696e74696e674d616e616765723a204c4142454c535f4c454e4754485f42456040820152642627abaf9960d91b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b81810381811115610954576109546149b4565b634e487b7160e01b600052603260045260246000fd5b60208082526026908201527f4d696e74696e674d616e616765723a20535542444f4d41494e535f4e4f545f41604082015265131313d5d15160d21b606082015260800190565b600060018201614a4b57614a4b6149b4565b5060010190565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b60208082526022908201527f4d696e74696e674d616e616765723a20544c445f4e4f545f5245474953544552604082015261115160f21b606082015260800190565b600060208284031215614ad557600080fd5b5051919050565b6b756e732d646576746573742d60a01b81528183600c83013760009101600c01908152919050565b600181811c90821680614b1857607f821691505b602082108103614b3857634e487b7160e01b600052602260045260246000fd5b50919050565b600060208284031215614b5057600080fd5b81516137e081613ee4565b600081518084526020808501808196508360051b8101915082860160005b85811015614ba3578284038952614b91848351614350565b98850198935090840190600101614b79565b5091979650505050505050565b6001600160a01b038616815260a060208201819052600090614bd490830187614b5b565b8281036040840152614be68187614b5b565b90508281036060840152614bfa8186614b5b565b91505082151560808301529695505050505050565b600060018060a01b03808616835260606020840152614c316060840186614350565b9150808416604084015250949350505050565b606081526000614c576060830186614b5b565b8281036020840152614c698186614b5b565b915050826040830152949350505050565b600081614c8957614c896149b4565b506000190190565b60008251614ca381846020870161432c565b9190910192915050565b601f821115610cde57600081815260208120601f850160051c81016020861015614cd45750805b601f850160051c820191505b818110156116a357828155600101614ce0565b81516001600160401b03811115614d0c57614d0c614133565b614d2081614d1a8454614b04565b84614cad565b602080601f831160018114614d555760008415614d3d5750858301515b600019600386901b1c1916600185901b1785556116a3565b600085815260208120601f198616915b82811015614d8457888601518255948401946001909101908401614d65565b5085821015614da25787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b828152604060208201526000614dcb6040830184614350565b949350505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b80820180821115610954576109546149b4565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351614e6981601785016020880161432c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351614e9a81602884016020880161432c565b01602801949350505050565b8082028115828204841417610954576109546149b4565b634e487b7160e01b600052602160045260246000fdfe5496787fc1ebdfeba375028c1865f13fbb1d63c0caa356ccc1b29a80f3ebd6229f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000811000a","storage":{}},"0x24f45688d421f46cca60734bdc648ad192db0f2e":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0x1","0x97":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x12d":"0x0","0x15f":"0x5cc819c9915eadfcebd76952b8c1bc36cadd7376","0x13cf90498be59d359caa5b6092b365feab4610605d7107d1f05f8e94ac955652":"0x1","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x54563a9e1cd2dcbd0bca90d3cfa4a647e02c404a","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106102295760003560e01c8063886a69ba11610123578063cf1d21c0116100ab578063e2c49de11161006f578063e2c49de11461091d578063e3dec8fb14610932578063e43009a6146109c8578063e66f9603146109fb578063ea60c7c414610a2557610240565b8063cf1d21c014610844578063d233a3c714610859578063d547741f1461089c578063d81c8e52146108d5578063dc993a23146108ea57610240565b8063a217fddf116100f2578063a217fddf1461078a578063b4b4f63e1461079f578063bc08452b146107b4578063c4d66de8146107e7578063ca15c8731461081a57610240565b8063886a69ba146106c95780639010d07c146106de5780639173b1391461070e57806391d148541461075157610240565b80633138b6f1116101b1578063568b80b511610175578063568b80b5146105fb578063607f2d4214610610578063630fcbfb1461064e5780636cb136b0146106635780636e86b7701461069657610240565b80633138b6f1146104f55780633408e4701461050a57806336568abe1461051f5780633805550f146105585780634faa8a26146105d557610240565b80630f7e5970116101f85780630f7e59701461042357806320379ee514610438578063248a9ca31461045f5780632d0335ab146104895780632f2ff15d146104bc57610240565b806304967702146102455780630c3894bb146102765780630c53c51c146102b15780630c598220146103ea57610240565b366102405761023e610239610a58565b610a68565b005b600080fd5b34801561025157600080fd5b5061025a610b69565b604080516001600160a01b039092168252519081900360200190f35b34801561028257600080fd5b5061023e6004803603604081101561029957600080fd5b506001600160a01b0381358116916020013516610b78565b610375600480360360a08110156102c757600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156102f257600080fd5b82018360208201111561030457600080fd5b8035906020019184600183028401116401000000008311171561032657600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550508235935050506020810135906040013560ff16610cc9565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103af578181015183820152602001610397565b50505050905090810190601f1680156103dc5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156103f657600080fd5b5061023e6004803603604081101561040d57600080fd5b50803590602001356001600160a01b0316610fcc565b34801561042f57600080fd5b506103756110b9565b34801561044457600080fd5b5061044d6110d6565b60408051918252519081900360200190f35b34801561046b57600080fd5b5061044d6004803603602081101561048257600080fd5b50356110dc565b34801561049557600080fd5b5061044d600480360360208110156104ac57600080fd5b50356001600160a01b03166110f4565b3480156104c857600080fd5b5061023e600480360360408110156104df57600080fd5b50803590602001356001600160a01b031661110f565b34801561050157600080fd5b5061025a611176565b34801561051657600080fd5b5061044d611185565b34801561052b57600080fd5b5061023e6004803603604081101561054257600080fd5b50803590602001356001600160a01b0316611189565b34801561056457600080fd5b5061023e6004803603602081101561057b57600080fd5b81019060208101813564010000000081111561059657600080fd5b8201836020820111156105a857600080fd5b803590602001918460018302840111640100000000831117156105ca57600080fd5b5090925090506111ea565b61023e600480360360208110156105eb57600080fd5b50356001600160a01b03166116ec565b34801561060757600080fd5b5061044d6116f8565b34801561061c57600080fd5b5061063a6004803603602081101561063357600080fd5b503561171b565b604080519115158252519081900360200190f35b34801561065a57600080fd5b5061023e611730565b34801561066f57600080fd5b5061023e6004803603602081101561068657600080fd5b50356001600160a01b03166117d6565b3480156106a257600080fd5b5061025a600480360360208110156106b957600080fd5b50356001600160a01b031661186e565b3480156106d557600080fd5b5061044d611889565b3480156106ea57600080fd5b5061025a6004803603604081101561070157600080fd5b50803590602001356118aa565b34801561071a57600080fd5b5061023e6004803603606081101561073157600080fd5b506001600160a01b038135811691602081013590911690604001356118d1565b34801561075d57600080fd5b5061063a6004803603604081101561077457600080fd5b50803590602001356001600160a01b0316611a06565b34801561079657600080fd5b5061044d611a24565b3480156107ab57600080fd5b5061023e611a29565b3480156107c057600080fd5b5061023e600480360360208110156107d757600080fd5b50356001600160a01b0316611acf565b3480156107f357600080fd5b5061023e6004803603602081101561080a57600080fd5b50356001600160a01b0316611b67565b34801561082657600080fd5b5061044d6004803603602081101561083d57600080fd5b5035611c57565b34801561085057600080fd5b5061025a611c6e565b34801561086557600080fd5b5061023e6004803603606081101561087c57600080fd5b506001600160a01b03813581169160208101359091169060400135611c86565b3480156108a857600080fd5b5061023e600480360360408110156108bf57600080fd5b50803590602001356001600160a01b0316611de8565b3480156108e157600080fd5b5061044d611e41565b3480156108f657600080fd5b5061023e6004803603602081101561090d57600080fd5b50356001600160a01b0316611e60565b34801561092957600080fd5b5061025a611f3d565b34801561093e57600080fd5b5061023e6004803603606081101561095557600080fd5b6001600160a01b03823581169260208101359091169181019060608101604082013564010000000081111561098957600080fd5b82018360208201111561099b57600080fd5b803590602001918460018302840111640100000000831117156109bd57600080fd5b509092509050611f4c565b3480156109d457600080fd5b5061044d600480360360208110156109eb57600080fd5b50356001600160a01b0316611fe9565b348015610a0757600080fd5b5061025a60048036036020811015610a1e57600080fd5b5035611ffb565b348015610a3157600080fd5b5061025a60048036036020811015610a4857600080fd5b50356001600160a01b0316612016565b6000610a62612031565b90505b90565b604080513460208083019190915282518083039091018152908201909152610aa58273eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee8361208e565b7fa1829a9003092132f585b6ccdd167c19fe9774dbdea4260287e8a8e8ca8185d7546000908152600260205260408082205490516001600160a01b039091169034908381818185875af1925050503d8060008114610b1f576040519150601f19603f3d011682016040523d82523d6000602084013e610b24565b606091505b5050905080610b645760405162461bcd60e51b815260040180806020018281038252602781526020018061419d6027913960400191505060405180910390fd5b505050565b6009546001600160a01b031681565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020610ba981610ba4610a58565b611a06565b600a90610c495760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b820191906000526020600020905b815481529060010190602001808311610c1d57829003601f168201915b50509250505060405180910390fd5b506001600160a01b03808416600081815260036020908152604080832080546001600160a01b0319908116909155948716808452600483528184208054909616909555838352600590915280822082905551909291907f9e651a8866fbea043e911d816ec254b0e3c992c06fff32d605e72362d6023bd9908490a4505050565b6060610cd3613e2a565b50604080516060810182526001600160a01b0388166000818152600c602090815290849020548352820152908101869052610d118782878787612508565b610d4c5760405162461bcd60e51b81526004018080602001828103825260218152602001806141c46021913960400191505060405180910390fd5b6001600160a01b0387166000908152600c6020526040902054610d7690600163ffffffff6125e516565b6001600160a01b0388166000818152600c602090815260408083209490945583519283523383820181905260609484018581528b51958501959095528a517f5845892132946850460bff5a0083f71031bc5bf9aadcd40f1de79423eac9b10b958d9592948d94919260808501928601918190849084905b83811015610e05578181015183820152602001610ded565b50505050905090810190601f168015610e325780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a160006060306001600160a01b0316888a6040516020018083805190602001908083835b60208310610e835780518252601f199092019160209182019101610e64565b6001836020036101000a038019825116818451168082178552505050505050905001826001600160a01b03166001600160a01b031660601b8152601401925050506040516020818303038152906040526040518082805190602001908083835b60208310610f025780518252601f199092019160209182019101610ee3565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610f64576040519150601f19603f3d011682016040523d82523d6000602084013e610f69565b606091505b509150915081610fc0576040805162461bcd60e51b815260206004820152601c60248201527f46756e6374696f6e2063616c6c206e6f74207375636365737366756c00000000604482015290519081900360640190fd5b98975050505050505050565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020610ff881610ba4610a58565b600a9061105e5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5060008381526002602052604080822080546001600160a01b0319166001600160a01b0386169081179091559051909185917f8643692ae1c12ec91fa18e50b82ed93fa314f580999a236824db6de9ae0d839b9190a3505050565b604051806040016040528060018152602001603160f81b81525081565b600b5490565b6000818152600160205260409020600201545b919050565b6001600160a01b03166000908152600c602052604090205490565b60008281526001602052604090206002015461112d90610ba4610a58565b6111685760405162461bcd60e51b815260040180806020018281038252602f815260200180613f78602f913960400191505060405180910390fd5b611172828261263f565b5050565b6008546001600160a01b031690565b4690565b611191610a58565b6001600160a01b0316816001600160a01b0316146111e05760405162461bcd60e51b815260040180806020018281038252602f815260200180614286602f913960400191505060405180910390fd5b61117282826126ae565b606061123361122e84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061271d92505050565b612798565b905060006112548260028151811061124757fe5b602002602001015161291a565b6112796112748460088151811061126757fe5b6020026020010151612a62565b612b2c565b6112898460098151811061124757fe5b6040516020018084815260200183805190602001908083835b602083106112c15780518252601f1990920191602091820191016112a2565b51815160209384036101000a6000190180199092169116179052920193845250604080518085038152938201815283519382019390932060008181526006909252929020549194505060ff1615915061134d90505760405162461bcd60e51b81526004018080602001828103825260288152602001806142096028913960400191505060405180910390fd5b6000818152600660208190526040909120805460ff19166001179055825160609161138a9161122e9161138591879190811061126757fe5b61271d565b9050611394613e54565b6113b1826003815181106113a457fe5b6020026020010151612798565b6113c18560098151811061124757fe5b815181106113cb57fe5b6020026020010151905060006113fc6113e383612798565b6000815181106113ef57fe5b6020026020010151612c9f565b6001600160a01b0380821660009081526004602052604090205491925016806114565760405162461bcd60e51b81526004018080602001828103825260228152602001806140af6022913960400191505060405180910390fd5b6001600160a01b03808216600090815260056020908152604080832054835260029091529020548751911690611493908890600890811061124757fe5b63ffffffff1916156114d65760405162461bcd60e51b815260040180806020018281038252602581526020018061408a6025913960400191505060405180910390fd5b61151e6114e98860068151811061126757fe5b6114f98960088151811061126757fe5b6115098a60078151811061126757fe5b6115198b60058151811061124757fe5b612d2f565b61156f576040805162461bcd60e51b815260206004820152601f60248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f50524f4f4600604482015290519081900360640190fd5b6115dd6115828860028151811061124757fe5b6115928960038151811061124757fe5b6115a28a60048151811061124757fe5b60001b6115b58b60058151811061124757fe5b60001b6115c88c60008151811061124757fe5b6115d88d60018151811061126757fe5b612f76565b50806001600160a01b0316638274664f6115f5610a58565b846115ff886130bf565b6040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561167b578181015183820152602001611663565b50505050905090810190601f1680156116a85780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b1580156116c957600080fd5b505af11580156116dd573d6000803e3d6000fd5b50505050505050505050505050565b6116f581610a68565b50565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b01902081565b60066020526000908152604090205460ff1681565b600061173e81610ba4610a58565b600a906117a45760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506116f56040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b81525061312d565b60006117e481610ba4610a58565b600a9061184a5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5050600780546001600160a01b0319166001600160a01b0392909216919091179055565b6004602052600090815260409020546001600160a01b031681565b604080516826a0a82faa27a5a2a760b91b8152905190819003600901902081565b60008281526001602052604081206118c8908363ffffffff6131e916565b90505b92915050565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b0190206118fd81610ba4610a58565b600a906119635760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b03848116600090815260036020526040902054161580156119a457506001600160a01b0383811660009081526004602052604090205416155b6119f5576040805162461bcd60e51b815260206004820181905260248201527f526f6f74436861696e4d616e616765723a20414c52454144595f4d4150504544604482015290519081900360640190fd5b611a008484846131f5565b50505050565b60008281526001602052604081206118c8908363ffffffff61348416565b600081565b6000611a3781610ba4610a58565b600a90611a9d5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506116f56040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613499565b6000611add81610ba4610a58565b600a90611b435760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5050600880546001600160a01b0319166001600160a01b0392909216919091179055565b60005460ff1615611bb0576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b611be16040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613537565b611c126040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613499565b611c1d600082611168565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020611c479082611168565b506000805460ff19166001179055565b60008181526001602052604081206118cb90613589565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020611cb281610ba4610a58565b600a90611d185760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b0380851660009081526003602081815260408084205488861685526004835281852054861680865293909252909220549183169290911615611d8e576001600160a01b038116600090815260036020908152604080832080546001600160a01b031916905560059091528120555b6001600160a01b038281166000908152600460205260409020541615611dd5576001600160a01b038216600090815260046020526040902080546001600160a01b03191690555b611de08686866131f5565b505050505050565b600082815260016020526040902060020154611e0690610ba4610a58565b6111e05760405162461bcd60e51b81526004018080602001828103825260308152602001806140f96030913960400191505060405180910390fd5b604080516611115413d4d25560ca1b8152905190819003600701902081565b6000611e6e81610ba4610a58565b600a90611ed45760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b038216611f1a5760405162461bcd60e51b815260040180806020018281038252602d815260200180613fa7602d913960400191505060405180910390fd5b50600980546001600160a01b0319166001600160a01b0392909216919091179055565b6007546001600160a01b031690565b6001600160a01b03831673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee1415611fa85760405162461bcd60e51b81526004018080602001828103825260248152602001806141e56024913960400191505060405180910390fd5b611a00848484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061208e92505050565b60056020526000908152604090205481565b6002602052600090815260409020546001600160a01b031681565b6003602052600090815260409020546001600160a01b031681565b6000333014156120895760606000368080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505050503601516001600160a01b03169150610a659050565b503390565b6001600160a01b03808316600090815260056020908152604080832054600390925290912054909116158015906120c457508015155b6120ff5760405162461bcd60e51b81526004018080602001828103825260228152602001806140af6022913960400191505060405180910390fd5b6000818152600260205260409020546001600160a01b0316806121535760405162461bcd60e51b81526004018080602001828103825260248152602001806140176024913960400191505060405180910390fd5b6001600160a01b0385166121ae576040805162461bcd60e51b815260206004820152601e60248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f555345520000604482015290519081900360640190fd5b806001600160a01b031663e375b64e6121c5610a58565b8787876040518563ffffffff1660e01b815260040180856001600160a01b03166001600160a01b03168152602001846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561225c578181015183820152602001612244565b50505050905090810190601f1680156122895780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b1580156122ab57600080fd5b505af11580156122bf573d6000803e3d6000fd5b50505050606085858560405160200180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015612338578181015183820152602001612320565b50505050905090810190601f1680156123655780820380516001836020036101000a031916815260200191505b5060408051808303601f19018152828252600780546009546611115413d4d25560ca1b865284519586900390920185206020808701828152878701968752855160608901528551959d506001600160a01b039384169c506316f198319b5092909316985096508a955093608001919085019080838360005b838110156123f55781810151838201526020016123dd565b50505050905090810190601f1680156124225780820380516001836020036101000a031916815260200191505b5093505050506040516020818303038152906040526040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561249b578181015183820152602001612483565b50505050905090810190601f1680156124c85780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b1580156124e857600080fd5b505af11580156124fc573d6000803e3d6000fd5b50505050505050505050565b60006001600160a01b03861661254f5760405162461bcd60e51b81526004018080602001828103825260258152602001806141296025913960400191505060405180910390fd5b600161256261255d87613594565b613620565b83868660405160008152602001604052604051808581526020018460ff1660ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa1580156125bc573d6000803e3d6000fd5b505050602060405103516001600160a01b0316866001600160a01b031614905095945050505050565b6000828201838110156118c8576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600082815260016020526040902061265d908263ffffffff61366c16565b156111725761266a610a58565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b60008281526001602052604090206126cc908263ffffffff61368116565b15611172576126d9610a58565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612725613e54565b600082511161277b576040805162461bcd60e51b815260206004820152601f60248201527f524c505265616465723a20494e56414c49445f42595445535f4c454e47544800604482015290519081900360640190fd5b506040805180820190915281518152602082810190820152919050565b60606127a382613696565b6127f4576040805162461bcd60e51b815260206004820152601860248201527f524c505265616465723a204954454d5f4e4f545f4c4953540000000000000000604482015290519081900360640190fd5b60006127ff836136c2565b905060608167ffffffffffffffff8111801561281a57600080fd5b5060405190808252806020026020018201604052801561285457816020015b612841613e54565b8152602001906001900390816128395790505b5090506000612866856020015161374e565b855190915081146128a85760405162461bcd60e51b81526004018080602001828103825260278152602001806142316027913960400191505060405180910390fd5b60006128b786602001516137e2565b60208701510190506000805b8581101561290e576128d48361374e565b91506040518060400160405280838152602001848152508582815181106128f757fe5b6020908102919091010152918101916001016128c3565b50929695505050505050565b600061292582613696565b15612977576040805162461bcd60e51b815260206004820181905260248201527f524c505265616465723a204445434f44494e475f4c4953545f41535f55494e54604482015290519081900360640190fd5b8151602110156129ce576040805162461bcd60e51b815260206004820152601e60248201527f524c505265616465723a20494e56414c49445f55494e545f4c454e4754480000604482015290519081900360640190fd5b60006129dd836020015161374e565b83519091508114612a1f5760405162461bcd60e51b81526004018080602001828103825260278152602001806142b56027913960400191505060405180910390fd5b6000612a2e84602001516137e2565b84516020808701518301805193945091849003929190831015612a5857826020036101000a820491505b5095945050505050565b60606000612a73836020015161374e565b83519091508114612ab55760405162461bcd60e51b81526004018080602001828103825260288152602001806140d16028913960400191505060405180910390fd5b6000612ac484602001516137e2565b845190915081900360608167ffffffffffffffff81118015612ae557600080fd5b506040519080825280601f01601f191660200182016040528015612b10576020820181803683370190505b5090506000816020019050612a58848860200151018285613845565b604080516020810190915260008152815160609190156118cb57600080612b54600086613890565b60f81c90506001811480612b6b57508060ff166003145b15612bfa57600185516002020367ffffffffffffffff81118015612b8e57600080fd5b506040519080825280601f01601f191660200182016040528015612bb9576020820181803683370190505b5092506000612bc9600187613890565b90508084600081518110612bd957fe5b60200101906001600160f81b031916908160001a9053506001925050612c4b565b600285516002020367ffffffffffffffff81118015612c1857600080fd5b506040519080825280601f01601f191660200182016040528015612c43576020820181803683370190505b509250600091505b60ff82165b8351811015612c9657612c6b8360ff16820360020187613890565b848281518110612c7757fe5b60200101906001600160f81b031916908160001a905350600101612c50565b50505092915050565b6000612caa82613696565b15612ce65760405162461bcd60e51b815260040180806020018281038252602381526020018061417a6023913960400191505060405180910390fd5b8151601514612d265760405162461bcd60e51b81526004018080602001828103825260218152602001806142dc6021913960400191505060405180910390fd5b6118cb8261291a565b6000612d39613e54565b612d428461271d565b90506060612d4f82612798565b905060608085600082612d618b612b2c565b9050805160001415612d7d576000975050505050505050612f6e565b60005b8651811015612f65578151831115612da357600098505050505050505050612f6e565b612dbf878281518110612db257fe5b60200260200101516130bf565b955085805190602001208414612de057600098505050505050505050612f6e565b612def8782815181106113a457fe5b9450845160111415612eac578151831415612e4b578c80519060200120612e1c8660108151811061126757fe5b805190602001201415612e3a57600198505050505050505050612f6e565b600098505050505050505050612f6e565b6000828481518110612e5957fe5b016020015160f81c90506010811115612e7e5760009950505050505050505050612f6e565b612e9d868260ff1681518110612e9057fe5b60200260200101516138ed565b94505060019290920191612f5d565b845160021415612e3a576000612ed2612ecb8760008151811061126757fe5b848661398c565b905082518185011415612f28578d80519060200120612ef78760018151811061126757fe5b805190602001201415612f165760019950505050505050505050612f6e565b60009950505050505050505050612f6e565b80612f3f5760009950505050505050505050612f6e565b8084019350612f5486600181518110612e9057fe5b9450612f5d9050565b600101612d80565b50505050505050505b949350505050565b600854604080516320a9cea560e11b81526004810185905290516000928392839283926001600160a01b0316916341539d4a9160248083019260a0929190829003018186803b158015612fc857600080fd5b505afa158015612fdc573d6000803e3d6000fd5b505050506040513d60a0811015612ff257600080fd5b5080516020820151606090920151909450909250905061306161301b8b8463ffffffff613a6b16565b6040805160208082018f90528183018e9052606082018d905260808083018d90528351808403909101815260a0909201909252805191012090858863ffffffff613aad16565b6130b2576040805162461bcd60e51b815260206004820181905260248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f484541444552604482015290519081900360640190fd5b9998505050505050505050565b606080826000015167ffffffffffffffff811180156130dd57600080fd5b506040519080825280601f01601f191660200182016040528015613108576020820181803683370190505b50905060008160200190506131268460200151828660000151613845565b5092915050565b6040518060800160405280604f815260200161403b604f913980516020918201208251838301206040805180820190915260018152603160f81b930192909252907fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc630613198611185565b604080516020808201979097528082019590955260608501939093526001600160a01b03909116608084015260a0808401919091528151808403909101815260c090920190528051910120600b5550565b60006118c88383613c03565b6000818152600260205260409020546001600160a01b03166132485760405162461bcd60e51b815260040180806020018281038252602a815260200180613f07602a913960400191505060405180910390fd5b6001600160a01b03808416600081815260036020908152604080832080549588166001600160a01b031996871681179091558084526004835281842080549096168517909555838352600590915280822085905551849392917f9e651a8866fbea043e911d816ec254b0e3c992c06fff32d605e72362d6023bd991a4604080516001600160a01b0380861660208084019190915281861683850152606083810186905284518085038201815260808086018088526007546009546826a0a82faa27a5a2a760b91b9092528851978890036089018820888701818152898b019a8b528551968a019690965284519499918816986316f1983198939093169690958a9590949293909201919085019080838360005b8381101561337357818101518382015260200161335b565b50505050905090810190601f1680156133a05780820380516001836020036101000a031916815260200191505b5093505050506040516020818303038152906040526040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015613419578181015183820152602001613401565b50505050905090810190601f1680156134465780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b15801561346657600080fd5b505af115801561347a573d6000803e3d6000fd5b5050505050505050565b60006118c8836001600160a01b038416613c67565b806040516020018082805190602001908083835b602083106134cc5780518252601f1990920191602091820191016134ad565b51815160209384036101000a60001901801990921691161790527f3a20494e53554646494349454e545f5045524d495353494f4e530000000000009190930190815260408051808303600519018152601a909201905280516111729550600a94509201919050613e6e565b60005460ff1615613580576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b611c478161312d565b60006118cb82613c7f565b6000604051806080016040528060438152602001613fd460439139805190602001208260000151836020015184604001518051906020012060405160200180858152602001848152602001836001600160a01b03166001600160a01b03168152602001828152602001945050505050604051602081830303815290604052805190602001209050919050565b600061362a6110d6565b82604051602001808061190160f01b81525060020183815260200182815260200192505050604051602081830303815290604052805190602001209050919050565b60006118c8836001600160a01b038416613c83565b60006118c8836001600160a01b038416613ccd565b6020810151805160009190821a9060c08210156136b8576000925050506110ef565b5060019392505050565b6000806000905060006136d884602001516137e2565b602085015185519181019250015b80821015613745576136f78261374e565b820191508082111561373a5760405162461bcd60e51b815260040180806020018281038252602c81526020018061414e602c913960400191505060405180910390fd5b6001909201916136e6565b50909392505050565b80516000908190811a60808110156137695760019150613126565b60b881101561377e57607e1981019150613126565b60c08110156137ab5760b78103600185019450806020036101000a85510460018201810193505050613126565b60f88110156137c05760be1981019150613126565b60019390930151602084900360f7016101000a900490920160f5190192915050565b8051600090811a60808110156137fc5760009150506110ef565b60b8811080613817575060c08110801590613817575060f881105b156138265760019150506110ef565b60c081101561383a5760b5190190506110ef565b60f5190190506110ef565b8061384f57610b64565b5b6020811061386f578251825260209283019290910190601f1901613850565b915181516020939093036101000a6000190180199091169216919091179052565b600060028306156138c15760108260028504815181106138ac57fe5b016020015160f81c816138bb57fe5b066138e3565b60108260028504815181106138d257fe5b016020015160f81c816138e157fe5b045b60f81b9392505050565b6000806138fd836020015161374e565b8351909150811461393f5760405162461bcd60e51b815260040180806020018281038252602e815260200180614258602e913960400191505060405180910390fd5b825160211461397f5760405162461bcd60e51b8152600401808060200182810382526025815260200180613f536025913960400191505060405180910390fd5b5050602001516001015190565b600080606061399a86612b2c565b90506060815167ffffffffffffffff811180156139b657600080fd5b506040519080825280601f01601f1916602001820160405280156139e1576020820181803683370190505b509050845b82518601811015613a3b5760008782815181106139ff57fe5b602001015160f81c60f81b9050808388840381518110613a1b57fe5b60200101906001600160f81b031916908160001a905350506001016139e6565b50808051906020012082805190602001201415613a5b5781519250613a60565b600092505b509095945050505050565b60006118c883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250613d93565b60006020825181613aba57fe5b0615613b04576040805162461bcd60e51b8152602060048201526014602482015273092dcecc2d8d2c840e0e4dedecc40d8cadccee8d60631b604482015290519081900360640190fd5b60006020835181613b1157fe5b0490508060020a8510613b63576040805162461bcd60e51b81526020600482015260156024820152744c65616620696e64657820697320746f6f2062696760581b604482015290519081900360640190fd5b60008660205b85518111613bf55785810151925060028806613bb55781836040516020018083815260200182815260200192505050604051602081830303815290604052805190602001209150613be7565b828260405160200180838152602001828152602001925050506040516020818303038152906040528051906020012091505b600288049750602001613b69565b509094149695505050505050565b81546000908210613c455760405162461bcd60e51b8152600401808060200182810382526022815260200180613f316022913960400191505060405180910390fd5b826000018281548110613c5457fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000613c8f8383613c67565b613cc5575081546001818101845560008481526020808220909301849055845484825282860190935260409020919091556118cb565b5060006118cb565b60008181526001830160205260408120548015613d895783546000198083019190810190600090879083908110613d0057fe5b9060005260206000200154905080876000018481548110613d1d57fe5b600091825260208083209091019290925582815260018981019092526040902090840190558654879080613d4d57fe5b600190038181906000526020600020016000905590558660010160008781526020019081526020016000206000905560019450505050506118cb565b60009150506118cb565b60008184841115613e225760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015613de7578181015183820152602001613dcf565b50505050905090810190601f168015613e145780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60405180606001604052806000815260200160006001600160a01b03168152602001606081525090565b604051806040016040528060008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10613eaf57805160ff1916838001178555613edc565b82800160010185558215613edc579182015b82811115613edc578251825591602001919060010190613ec1565b50613ee8929150613eec565b5090565b610a6591905b80821115613ee85760008155600101613ef256fe526f6f74436861696e4d616e616765723a20544f4b454e5f545950455f4e4f545f535550504f52544544456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473524c505265616465723a20494e56414c49445f55494e545f5354524943545f4c454e475448416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e74526f6f74436861696e4d616e616765723a20494e56414c49445f4348494c445f434841494e5f414444524553534d6574615472616e73616374696f6e2875696e74323536206e6f6e63652c616464726573732066726f6d2c62797465732066756e6374696f6e5369676e617475726529526f6f74436861696e4d616e616765723a20494e56414c49445f544f4b454e5f54595045454950373132446f6d61696e28737472696e67206e616d652c737472696e672076657273696f6e2c6164647265737320766572696679696e67436f6e74726163742c627974657333322073616c7429526f6f74436861696e4d616e616765723a20494e56414c49445f4252414e43485f4d41534b526f6f74436861696e4d616e616765723a20544f4b454e5f4e4f545f4d4150504544524c505265616465723a2042595445535f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b654e61746976654d6574615472616e73616374696f6e3a20494e56414c49445f5349474e4552524c505265616465723a204e554d5f4954454d535f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a204445434f44494e475f4c4953545f41535f41444452455353526f6f74436861696e4d616e616765723a2045544845525f5452414e534645525f4641494c45445369676e657220616e64207369676e617475726520646f206e6f74206d61746368526f6f74436861696e4d616e616765723a20494e56414c49445f524f4f545f544f4b454e526f6f74436861696e4d616e616765723a20455849545f414c52454144595f50524f434553534544524c505265616465723a204c4953545f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a2055494e545f5354524943545f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66524c505265616465723a2055494e545f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a20494e56414c49445f414444524553535f4c454e475448a164736f6c6343000606000a","storage":{"0x0":"0x1","0x7":"0xe0afc4e9e03e4aa67257df7a2eca77454309789d","0x8":"0xbe5deac45dd1ca4ee18dc2d585d84d3d3cb82b0d","0x9":"0x0","0xa":"0x55","0xb":"0x2603903cfd8895fdde3da4d607d44203e86098073e351022fd12745d3436e93a","0xeb5be412f275a18f6e4d622aee4ff40b21467c926224771b782d4c095d1444b":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x162b27a30e878e20728deaa5c9814fd57ccf962b998b8733ce65749bc61c552f":"0x58a175bebc8ec21a94ea63aa5a28743945940ee6","0x1a93463c7bbb7215968307c7cd357c2009c10df2a511dd62c1189098e4f3249b":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x415fec6a4fd7706b96d3a0a30121284bc5e2b28b978c20486c9f5e20d44fc781":"0x1","0x4dc1f0160d96279adc262db20edcc15527e32cb28eda582becc5ac0bc453be34":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x5fc73aa2ab567caef8745f0709fae506c01972ffb297bd9225bc262d6e87746f":"0x1","0x6ce1cd05966f090b8daa7b2ee7f80930bbb39d19b693045725fbae5fa44fda90":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0xa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb49":"0x1","0xc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a8":"0x526f6f74436861696e4d616e616765723a20494e53554646494349454e545f50","0xc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a9":"0x45524d495353494f4e5300000000000000000000000000000000000000000000","0xd61ba0007bb57e62613f82f528c06ba46d36349cf5be567b12f878ef04849a7d":"0x1","0xf960df71fab73e593428c10f56f55e7ea46985963177def0458b97f1afec9576":"0xcf4e755f204163e9213ba8b1305036e386579ccc70731c25c62a101197811f48"}},"0x287dee389caaa49edc112888f2bcfd927b472e25":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c80634f89059e1461002d575b5f80fd5b61004061003b366004610125565b610054565b604051901515815260200160405180910390f35b5f806100985f85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101029050565b60ff1690505f811180156100f857506100f36100b5826001610191565b85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101029050565b60ff16155b9150505b92915050565b5f828281518110610115576101156101b0565b016020015160f81c905092915050565b5f8060208385031215610136575f80fd5b823567ffffffffffffffff8082111561014d575f80fd5b818501915085601f830112610160575f80fd5b81358181111561016e575f80fd5b86602082850101111561017f575f80fd5b60209290920196919550909350505050565b808201808211156100fc57634e487b7160e01b5f52601160045260245ffd5b634e487b7160e01b5f52603260045260245ffdfea164736f6c6343000818000a","storage":{}},"0x3198fc981626687f4b5bdf0fbeabb0a5e0489c03":{"nonce":1,"balance":"0x8ac7230489e80000","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0x1","0x97":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x13cf90498be59d359caa5b6092b365feab4610605d7107d1f05f8e94ac955652":"0x1","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xc2110388dd54228ae0a834119457ede938bf0b57","0x412386de53449251cbf7ce1f4c6a038bf9c0746e62d331b08ef0c3fa7d0ab672":"0x4fbf7b2f171336958be5d15ff762a5cff5363568","0x60793a5062d506d35cc8f1beda67ee5028c16bfcd9c923d5bfc439c04bd929b1":"0x6ac8f19d1e0f81147cdf2a1e53cb1f4e18417204","0x75df8b43665bf2e4996a686913c4c278ca7aed85444740ca40355b1c9a94b504":"0x1","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xf851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004":"0xc965345edac823d56812cd20a10316233916a605"}},"0x39a27956b78d00a4e00ea8833ff0947410a2933f":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xc9":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0xca":"0x4a3c194eb88966178bfdd81744dddafed611b830","0xcb":"0x4872cc1be60a9db9c880a0a437da7a6af134f08f","0xcc":"0xf8c26340c1eaea6c7ff1760b25005e1306953572","0xce":"0xce4bb7dc1eb9dce75743de6a4b48534fd427ef51","0xc6892776bb3da1e1199a03e0d3131aea089754b59c557b750c478ebc85ccaa":"0x6e66740000000000000000000000000000000000000000000000000000000006","0x6cb37a6d512a1e227e627eddc133023e6d00bfedff31a600abb75aa93e9a4a0":"0x6b7265737573000000000000000000000000000000000000000000000000000c","0x8e966fe8b9b43d48017ba1eb562ced91049de778396aaa438773698b3fa8fb6":"0x0","0x94a32b1c7b189ce7293f7ae444cdcab6800d858454022d15355d5ecc5b32b26":"0x0","0xa4b2d73a9f36ca5eed107f7c3d2ba877fb7537d447256726bcde9bac9e9aaee":"0x0","0xe0e3ab102c26f13da20123aa517b31e99cf65b7b720ba0dd7138012fd23eff2":"0x0","0x1203b5e51c7d5be6da42b83f22878d3583e53123857d27fc3cff3df46fb9126c":"0x0","0x13477730039a04f4290adf0e48e98b233579c040281545e4446ce662ba56a9be":"0x7800000000000000000000000000000000000000000000000000000000000002","0x1e06d49ce7b00846691778f302e94a3ac9c2633d745ebe73d68353c941e68dee":"0x626974636f696e0000000000000000000000000000000000000000000000000e","0x1e99199375610ffe00d28ee5827c616cf6469be3de2a2f738d955eb6b62127e8":"0x1","0x21e80eded1b2e1c5d976c85e89dde60bd4e99a8d66346af0e359ac854bceba44":"0x0","0x254d9ade81439f29723741d6ff407eab1fe03caffb042bd85e53955e41fb9792":"0x616c74696d697374000000000000000000000000000000000000000000000010","0x269db12b2cd2aeb7d5f52eda16edb1d211ccbea12da1ebfa60ed5f8f396c1d04":"0x0","0x2a3f03435eedee01de7e1c4386b04ca8469edd8df00408cd6d2b058bce1cecfa":"0x0","0x323a3cb169499006d6635c58232c8c58e23c20bf9e1d309d6b3bc6fb2c7a093d":"0x0","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x229c56b7805ab5935a883207f6a6bd5847e65aee","0x37aac864d4715a975bd45cae6be99de9f7968cf995917cc7f8192940fb62acbf":"0x0","0x3f69f26894a7ae0f7a7aa6c2d77935589dabbff6435aee960da15064dea7cd59":"0x64616f0000000000000000000000000000000000000000000000000000000006","0x467a68fda3230ce33f64703ebdbd91caccf235403282ae9fe390675ef39e9c94":"0x0","0x50ae8c017c4c1fddbe9509bd2b916f5dd9da11ddb639f2a4230322f49a41ac87":"0x1","0x5496787fc1ebdfeba375028c1865f13fbb1d63c0caa356ccc1b29a80f3ebd622":"0x0","0x576dd8d1a7b74aba0a99a213f50d74aa642a2c80bd5a854b24aac7568afea0f7":"0x626974676574000000000000000000000000000000000000000000000000000c","0x5b54338c052ce22ec334b6c5a19c4b122701c5fd4d3a2a5f5890f57050e0aafa":"0x626c6f636b636861696e00000000000000000000000000000000000000000014","0x5d9de30f0e5e02628e726fd23e310ee9e64489866fa6959825148a25d40e4c83":"0x0","0x5e2d99ab4a1a153039a4b2e068d64802da8735071a2d018ee9d04297945bed00":"0x0","0x670006c4193123492fb25db465ed52e62aff2f076289f4f1a5f167237f5e579d":"0x6d616e676100000000000000000000000000000000000000000000000000000a","0x6deac161c541001c0d79afaf7b809418785fa5ca6533d86bcf312e7213ee08fc":"0x0","0x6eaa0db35203bc0d58aff54ca630dd125b27758aa6204f7a11c0617f7c2fa776":"0x706f670000000000000000000000000000000000000000000000000000000006","0x732abe4661f55132b7f119cab9a9985be6630299dfc92870cc910f147795bc44":"0x0","0x743eb517f46c12bb593097087a972028308ce2e819a76cfb5488751f9d1ca34a":"0x7265616c6d00000000000000000000000000000000000000000000000000000a","0x750dfb39c9afc828c341e1a8e8fdca0b3914baf43303e1ef21fbfe8ec8ee016a":"0x0","0x7cbf647b96a1d1a533ea4bc3a4a8a78f166bd91e6a96afb12f063fef0e9cb960":"0x0","0x7dc972254779cfb51850c0eaccfcb71207822b3c10d4840567bec3dfbf0dff13":"0x636f6d0000000000000000000000000000000000000000000000000000000006","0x7dfa160584f41570c33e8e6c42c5314a7b45ddc162f99fd101ccc10c7b5b3dd3":"0x77616c6c6574000000000000000000000000000000000000000000000000000c","0x868a5f38a2d46181ffad442d7bc5b337b3c349a58e4979f2901786c6123b996c":"0x6b6c65766572000000000000000000000000000000000000000000000000000c","0x87b2c647061aef22ef1aba96c67f440d471dfac27e9873ff4a03793b402d32ee":"0x706f6c79676f6e0000000000000000000000000000000000000000000000000e","0x893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e":"0x7c3c91245769c8b7450ad522792dec4bd4bf797f","0x91e744007b4b3621bec7c01ea851c3f48cf196b9cc6c566a48cec8c5faac6e62":"0x0","0x92c5a28dd4caaa50e0a8370243a5c600f64349e8b03604b403cbe111b50f1f7b":"0x3838380000000000000000000000000000000000000000000000000000000006","0x947936973a3a21b10c8980e1a8939a55c7339d302161884a3de05cf090e812f0":"0x1","0x9535d3ea47c5e1398d3405b4fadc73de6b1b1e6a66f674a8886ab7a6c873a390":"0x63727970746f000000000000000000000000000000000000000000000000000c","0x9956a4e94676c45844be3667f17e077c7cb53aa4e87e5a71d65e56b291232715":"0x676f000000000000000000000000000000000000000000000000000000000004","0x9c6ba1ddff1ffbc14dcdc1f97db867554a42a39e00e892c7e882dbb3dca89ebf":"0x6869000000000000000000000000000000000000000000000000000000000004","0x9f836a0f81651f597cee678b440ba8c853c633e6654809efb83d4b22aff06fb2":"0x616e696d6500000000000000000000000000000000000000000000000000000a","0x9fecf1e12f4b8ec337da992721a0f27526ddbd6be1e77885ab963c09afcf0fc1":"0x0","0xab129a0f8c6cf8d160116a28abc7369c2f8a098fc023f00f07dc3e1d5798e47a":"0x0","0xb04c0eb6f034d9a3179a4e6f953bdf8afc78ba2cdcfbc775076e1c2a0bb67818":"0x0","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xbe51b53bc2060a7a6419622b5a9adc00b50a57e6aa741882f2f60f95d4580078":"0x636c617900000000000000000000000000000000000000000000000000000008","0xbf350522e335b8ab3da1d099c93cdc09179f1e15ea6aa1acfaa4afb1ef87eabf":"0x756e73746f707061626c65000000000000000000000000000000000000000016","0xcbf7a3d53e0851ac15a415b99c2ba95a2497dd9dd44068ac261bcbdafdfe8472":"0x707564677900000000000000000000000000000000000000000000000000000a","0xcf4411216f3fdf787d1cfe037bbcfa0d5293d83a8082f8e4141266399e2a784b":"0x61757374696e000000000000000000000000000000000000000000000000000c","0xcfdbac664139565f92cce149a345e5f19355d25b3eb8a70c549d5da3283a15b8":"0x7a696c0000000000000000000000000000000000000000000000000000000006","0xcfeb64c30a93ecd7224f854b09be57bb6b3962e739fa8e3ea3a1851502474c07":"0x1","0xe03c9c593ce8661bd39f77653f7ca6c43f093aa7f3b95890f309f67b57f39e74":"0x0","0xe50c62c16d12655dfdbd61c232155e5c3a1cf61977d2d8e7449cb88611b73832":"0x0","0xeeb0b17d77f2c9069ad443f3927c0802d98d5553e52b17c985d45d4a10b79566":"0x62696e616e636575730000000000000000000000000000000000000000000012","0xf562ef0db022f25a957fb6e49aa07004f14a50ed5b23279e9ac25b4632f7bf1c":"0x0","0xf6776268d6c5847a771099280c742d684a4b22bac609ba615de51f7f893ff2bc":"0x0"}},"0x3f1194b9019002863ad0dbbe295294547c0d36a9":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100b1575f3560e01c80635b0fc9c31161006e5780635b0fc9c3146101a55780635ef2c7f0146101b8578063a22cb465146101cb578063cf408823146101de578063e985e9c5146101f1578063f79fe5381461023c575f80fd5b80630178b8bf146100b557806302571be3146100fd57806306ab59231461011057806314ab90381461013157806316a25cbd146101465780631896f70a14610192575b5f80fd5b6100e06100c3366004610785565b5f908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100e061010b366004610785565b610266565b61012361011e3660046107b7565b610292565b6040519081526020016100f4565b61014461013f366004610800565b61035f565b005b610179610154366004610785565b5f90815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100f4565b6101446101a036600461082a565b61042e565b6101446101b336600461082a565b6104ef565b6101446101c636600461084b565b61058e565b6101446101d936600461089e565b6105af565b6101446101ec3660046108d7565b61061a565b61022c6101ff366004610921565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205460ff1690565b60405190151581526020016100f4565b61022c61024a366004610785565b5f908152602081905260409020546001600160a01b0316151590565b5f818152602081905260408120546001600160a01b031630810361028c57505f92915050565b92915050565b5f8381526020819052604081205484906001600160a01b0316338114806102db57506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b6102e3575f80fd5b604080516020808201899052818301889052825180830384018152606090920190925280519101206103158186610635565b6040516001600160a01b0386168152869088907fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829060200160405180910390a39695505050505050565b5f8281526020819052604090205482906001600160a01b0316338114806103a857506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b6103b0575f80fd5b60405167ffffffffffffffff8416815284907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a250505f91825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b5f8281526020819052604090205482906001600160a01b03163381148061047757506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b61047f575f80fd5b6040516001600160a01b038416815284907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a250505f9182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b5f8281526020819052604090205482906001600160a01b03163381148061053857506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b610540575f80fd5b61054a8484610635565b6040516001600160a01b038416815284907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a250505050565b5f61059a868686610292565b90506105a7818484610662565b505050505050565b335f8181526001602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b61062484846104ef565b61062f848383610662565b50505050565b5f9182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b5f838152602081905260409020600101546001600160a01b038381169116146106e6575f838152602081815260409182902060010180546001600160a01b0319166001600160a01b038616908117909155915191825284917f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a0910160405180910390a25b5f8381526020819052604090206001015467ffffffffffffffff828116600160a01b9092041614610780575f8381526020818152604091829020600101805467ffffffffffffffff60a01b1916600160a01b67ffffffffffffffff861690810291909117909155915191825284917f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa68910160405180910390a25b505050565b5f60208284031215610795575f80fd5b5035919050565b80356001600160a01b03811681146107b2575f80fd5b919050565b5f805f606084860312156107c9575f80fd5b83359250602084013591506107e06040850161079c565b90509250925092565b803567ffffffffffffffff811681146107b2575f80fd5b5f8060408385031215610811575f80fd5b82359150610821602084016107e9565b90509250929050565b5f806040838503121561083b575f80fd5b823591506108216020840161079c565b5f805f805f60a0868803121561085f575f80fd5b85359450602086013593506108766040870161079c565b92506108846060870161079c565b9150610892608087016107e9565b90509295509295909350565b5f80604083850312156108af575f80fd5b6108b88361079c565b9150602083013580151581146108cc575f80fd5b809150509250929050565b5f805f80608085870312156108ea575f80fd5b843593506108fa6020860161079c565b92506109086040860161079c565b9150610916606086016107e9565b905092959194509250565b5f8060408385031215610932575f80fd5b61093b8361079c565b91506108216020840161079c56fea164736f6c6343000818000a","storage":{"0xdd4f47a3b6f87903b728feed7a23273bd8de58e4fa257d37a74a5881e5d92ff":"0xf670681605efc4efc804f5a9b97ee89520473d56","0x14ce109f1cffdc11aa7355660be720f902291be09fb159b4c578958cd0f533bc":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x14ce109f1cffdc11aa7355660be720f902291be09fb159b4c578958cd0f533bd":"0x0","0x1e2c8528d7e8e90443ad0a4e37b6f2b1daed719a574ce3a0c347063e8d839d50":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1e2c8528d7e8e90443ad0a4e37b6f2b1daed719a574ce3a0c347063e8d839d51":"0x0","0x2fb4213711fd985fc1fb1ea2bfa660b0b37fd50c6c74ab531d9b54b29dd5177e":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2fb4213711fd985fc1fb1ea2bfa660b0b37fd50c6c74ab531d9b54b29dd5177f":"0x0","0x859ecef2e168dc10231b000bd53493b42bc9d944cac29d94582c1e1d43592131":"0xc965345edac823d56812cd20a10316233916a605","0x8878c6daefcfc78c7f181d00d719b4a0612dd3e65cafeb72507d15c036a9f690":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0xe4fdf45c2f8d198854f8823809c7a988eeaaa493","0xfb5568c6845cf0d5915af088a5d8ba90a5ff735e102c9a79609ef7d043f1108c":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xfb5568c6845cf0d5915af088a5d8ba90a5ff735e102c9a79609ef7d043f1108d":"0x0"}},"0x4872cc1be60a9db9c880a0a437da7a6af134f08f":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100935760003560e01c80637362d9c8116100665780637362d9c8146101285780637b1039991461014e57806399e0dd7c14610172578063bb5f747b146101e2578063d6cd94731461020857610093565b806310154bad14610098578063291d9549146100c05780633af32abf146100e65780634c5a628c14610120575b600080fd5b6100be600480360360208110156100ae57600080fd5b50356001600160a01b0316610210565b005b6100be600480360360208110156100d657600080fd5b50356001600160a01b0316610260565b61010c600480360360208110156100fc57600080fd5b50356001600160a01b03166102ad565b604080519115158252519081900360200190f35b6100be6102c6565b6100be6004803603602081101561013e57600080fd5b50356001600160a01b03166102d1565b61015661031e565b604080516001600160a01b039092168252519081900360200190f35b6100be6004803603602081101561018857600080fd5b8101906020810181356401000000008111156101a357600080fd5b8201836020820111156101b557600080fd5b803590602001918460018302840111640100000000831117156101d757600080fd5b50909250905061032d565b61010c600480360360208110156101f857600080fd5b50356001600160a01b0316610404565b6100be610416565b61021933610404565b6102545760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d8161041f565b50565b61026933610404565b6102a45760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d81610467565b60006102c060018363ffffffff6104af16565b92915050565b6102cf33610516565b565b6102da33610404565b6103155760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d8161055e565b6002546001600160a01b031690565b610336336102ad565b6103715760405162461bcd60e51b815260040180806020018281038252603a815260200180610712603a913960400191505060405180910390fd5b6002546040516369426cbd60e11b8152602060048201908152602482018490526001600160a01b039092169163d284d97a91859185918190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b1580156103e857600080fd5b505af11580156103fc573d6000803e3d6000fd5b505050505050565b60006102c0818363ffffffff6104af16565b6102cf33610467565b61043060018263ffffffff6105a616565b6040516001600160a01b038216907fee1504a83b6d4a361f4c1dc78ab59bfa30d6a3b6612c403e86bb01ef2984295f90600090a250565b61047860018263ffffffff61062716565b6040516001600160a01b038216907f270d9b30cf5b0793bbfd54c9d5b94aeb49462b8148399000265144a8722da6b690600090a250565b60006001600160a01b0382166104f65760405162461bcd60e51b81526004018080602001828103825260228152602001806106b06022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b61052760008263ffffffff61062716565b6040516001600160a01b038216907f0a8eb35e5ca14b3d6f28e4abf2f128dbab231a58b56e89beb5d636115001e16590600090a250565b61056f60008263ffffffff6105a616565b6040516001600160a01b038216907f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129990600090a250565b6105b082826104af565b15610602576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b61063182826104af565b61066c5760405162461bcd60e51b815260040180806020018281038252602181526020018061068f6021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f206164647265737357686974656c69737441646d696e526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c69737441646d696e20726f6c6557686974656c6973746564526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c697374656420726f6c65a265627a7a72315820debca60946c0819dc5b5c2756c5c1dd8dd8a46f2429fa8a43a4f4362af3030c164736f6c634300050c0032","storage":{"0x2":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x5ac40fcee41fb0272a935f6e51e963102fba5db6f20e897e9361f0347eb2cae6":"0x1","0xdc4aeb95a779c8b92b845e3a94044db8ff2e43acc37da18c4b35a6bbad7c122f":"0x1"}},"0x49da8861c65460639925febe1fb4b5b59b443082":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f7e83aee1461002d575b5f80fd5b61004061003b3660046101ac565b610054565b604051901515815260200160405180910390f35b5f602082146100a95760405162461bcd60e51b815260206004820152601a60248201527f496e76616c6964207368613235362068617368206c656e677468000000000000604482015260640160405180910390fd5b6100eb5f84848080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101459050565b600286866040516100fd929190610213565b602060405180830381855afa158015610118573d5f803e3d5ffd5b5050506040513d601f19601f8201168201806040525081019061013b9190610222565b1495945050505050565b81515f90610154836020610239565b111561015e575f80fd5b50016020015190565b5f8083601f840112610177575f80fd5b50813567ffffffffffffffff81111561018e575f80fd5b6020830191508360208285010111156101a5575f80fd5b9250929050565b5f805f80604085870312156101bf575f80fd5b843567ffffffffffffffff808211156101d6575f80fd5b6101e288838901610167565b909650945060208701359150808211156101fa575f80fd5b5061020787828801610167565b95989497509550505050565b818382375f9101908152919050565b5f60208284031215610232575f80fd5b5051919050565b8082018082111561025857634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x4a3c194eb88966178bfdd81744dddafed611b830":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061009e5760003560e01c806398650275116100665780639865027514610305578063aa271e1a1461030d578063b2da297914610347578063be362e2e146103c5578063c36c2125146104fe5761009e565b80634c0b0ed2146100a35780637b103999146101595780637caf3ad81461017d5780638ad364f814610258578063983b2d56146102df575b600080fd5b610157600480360360408110156100b957600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156100e357600080fd5b8201836020820111156100f557600080fd5b803590602001918460018302840111600160201b8311171561011657600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506105bd945050505050565b005b61016161074c565b604080516001600160a01b039092168252519081900360200190f35b6101576004803603608081101561019357600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156101bd57600080fd5b8201836020820111156101cf57600080fd5b803590602001918460018302840111600160201b831117156101f057600080fd5b919390926001600160a01b0383351692604081019060200135600160201b81111561021a57600080fd5b82018360208201111561022c57600080fd5b803590602001918460018302840111600160201b8311171561024d57600080fd5b50909250905061075b565b6101576004803603606081101561026e57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561029857600080fd5b8201836020820111156102aa57600080fd5b803590602001918460018302840111600160201b831117156102cb57600080fd5b9193509150356001600160a01b0316610957565b610157600480360360208110156102f557600080fd5b50356001600160a01b0316610b2b565b610157610b7b565b6103336004803603602081101561032357600080fd5b50356001600160a01b0316610b86565b604080519115158252519081900360200190f35b6101576004803603604081101561035d57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561038757600080fd5b82018360208201111561039957600080fd5b803590602001918460018302840111600160201b831117156103ba57600080fd5b509092509050610b9e565b610157600480360360608110156103db57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561040557600080fd5b82018360208201111561041757600080fd5b803590602001918460018302840111600160201b8311171561043857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b81111561048a57600080fd5b82018360208201111561049c57600080fd5b803590602001918460018302840111600160201b831117156104bd57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610bf1945050505050565b6101576004803603606081101561051457600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561053e57600080fd5b82018360208201111561055057600080fd5b803590602001918460018302840111600160201b8311171561057157600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550505090356001600160a01b03169150610dec9050565b6105c633610b86565b6106015760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b039092169163b5466669918591849163ebf0c717916004808301926020929190829003018186803b15801561064f57600080fd5b505afa158015610663573d6000803e3d6000fd5b505050506040513d602081101561067957600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052606060448301908152875160648401528751889360840190602085019080838360005b838110156106e25781810151838201526020016106ca565b50505050905090810190601f16801561070f5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15801561073057600080fd5b505af1158015610744573d6000803e3d6000fd5b505050505050565b6001546001600160a01b031690565b6107cf8686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f89018190048102820181019092528781529250879150869081908401838280828437600092019190915250610bf192505050565b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691632525d06a91869184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b15801561082557600080fd5b505afa158015610839573d6000803e3d6000fd5b505050506040513d602081101561084f57600080fd5b5051604080516001600160e01b031960e085901b1681526004810183815260248201928352604482018d90528d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b1580156108bd57600080fd5b505afa1580156108d1573d6000803e3d6000fd5b505050506040513d60208110156108e757600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b15801561093757600080fd5b505af115801561094b573d6000803e3d6000fd5b50505050505050505050565b6109a58484848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250610bf1915050565b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691632525d06a91849184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b1580156109fb57600080fd5b505afa158015610a0f573d6000803e3d6000fd5b505050506040513d6020811015610a2557600080fd5b5051604080516001600160e01b031960e085901b1681526004810183815260248201928352604482018b90528b928b92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b158015610a9357600080fd5b505afa158015610aa7573d6000803e3d6000fd5b505050506040513d6020811015610abd57600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b158015610b0d57600080fd5b505af1158015610b21573d6000803e3d6000fd5b5050505050505050565b610b3433610b86565b610b6f5760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b610b7881611115565b50565b610b843361115d565b565b6000610b98818363ffffffff6111a516565b92915050565b610bec8383838080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250610bf1915050565b505050565b610bfa33610b86565b610c355760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691630467e014918691849163ebf0c717916004808301926020929190829003018186803b158015610c8357600080fd5b505afa158015610c97573d6000803e3d6000fd5b505050506040513d6020811015610cad57600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052608060448301908152885160848401528851899389939291606482019160a40190602087019080838360005b83811015610d1f578181015183820152602001610d07565b50505050905090810190601f168015610d4c5780820380516001836020036101000a031916815260200191505b50838103825284518152845160209182019186019080838360005b83811015610d7f578181015183820152602001610d67565b50505050905090810190601f168015610dac5780820380516001836020036101000a031916815260200191505b509650505050505050600060405180830381600087803b158015610dcf57600080fd5b505af1158015610de3573d6000803e3d6000fd5b50505050505050565b610df533610b86565b610e305760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b039092169163b5466669918691849163ebf0c717916004808301926020929190829003018186803b158015610e7e57600080fd5b505afa158015610e92573d6000803e3d6000fd5b505050506040513d6020811015610ea857600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052606060448301908152885160648401528851899360840190602085019080838360005b83811015610f11578181015183820152602001610ef9565b50505050905090810190601f168015610f3e5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015610f5f57600080fd5b505af1158015610f73573d6000803e3d6000fd5b50506001546040805163ebf0c71760e01b815290516001600160a01b039092169350632525d06a9250849184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b158015610fcd57600080fd5b505afa158015610fe1573d6000803e3d6000fd5b505050506040513d6020811015610ff757600080fd5b5051604080516001600160e01b031960e085901b16815260048101838152602482019283528a5160448301528a518b93919260640190602085019080838360005b83811015611050578181015183820152602001611038565b50505050905090810190601f16801561107d5780820380516001836020036101000a031916815260200191505b50935050505060206040518083038186803b15801561109b57600080fd5b505afa1580156110af573d6000803e3d6000fd5b505050506040513d60208110156110c557600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b158015610dcf57600080fd5b61112660008263ffffffff61120c16565b6040516001600160a01b038216907f6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f690600090a250565b61116e60008263ffffffff61128d16565b6040516001600160a01b038216907fe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb6669290600090a250565b60006001600160a01b0382166111ec5760405162461bcd60e51b81526004018080602001828103825260228152602001806113466022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b61121682826111a5565b15611268576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b61129782826111a5565b6112d25760405162461bcd60e51b81526004018080602001828103825260218152602001806113256021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe4d696e746572526f6c653a2063616c6c657220646f6573206e6f74206861766520746865204d696e74657220726f6c65526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f2061646472657373a265627a7a72315820c058d70355f7d37ff6b3b61cd850cc4a41893e30048389698c062148bf3d2ff464736f6c634300050c0032","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x789b49055833748af4eaa9affbcd84118ce8770f7e4385b5a3f428626b1f0aff":"0x1","0xdc4aeb95a779c8b92b845e3a94044db8ff2e43acc37da18c4b35a6bbad7c122f":"0x1"}},"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061007b5760003560e01c80639623609d1161004e5780639623609d1461011157806399a88ec414610124578063f2fde38b14610144578063f3b7dead1461016457600080fd5b8063204e1c7a14610080578063715018a6146100bc5780637eff275e146100d35780638da5cb5b146100f3575b600080fd5b34801561008c57600080fd5b506100a061009b366004610499565b610184565b6040516001600160a01b03909116815260200160405180910390f35b3480156100c857600080fd5b506100d1610215565b005b3480156100df57600080fd5b506100d16100ee3660046104bd565b610229565b3480156100ff57600080fd5b506000546001600160a01b03166100a0565b6100d161011f36600461050c565b610291565b34801561013057600080fd5b506100d161013f3660046104bd565b610300565b34801561015057600080fd5b506100d161015f366004610499565b610336565b34801561017057600080fd5b506100a061017f366004610499565b6103b4565b6000806000836001600160a01b03166040516101aa90635c60da1b60e01b815260040190565b600060405180830381855afa9150503d80600081146101e5576040519150601f19603f3d011682016040523d82523d6000602084013e6101ea565b606091505b5091509150816101f957600080fd5b8080602001905181019061020d91906105e2565b949350505050565b61021d6103da565b6102276000610434565b565b6102316103da565b6040516308f2839760e41b81526001600160a01b038281166004830152831690638f283970906024015b600060405180830381600087803b15801561027557600080fd5b505af1158015610289573d6000803e3d6000fd5b505050505050565b6102996103da565b60405163278f794360e11b81526001600160a01b03841690634f1ef2869034906102c990869086906004016105ff565b6000604051808303818588803b1580156102e257600080fd5b505af11580156102f6573d6000803e3d6000fd5b5050505050505050565b6103086103da565b604051631b2ce7f360e11b81526001600160a01b038281166004830152831690633659cfe69060240161025b565b61033e6103da565b6001600160a01b0381166103a85760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b6103b181610434565b50565b6000806000836001600160a01b03166040516101aa906303e1469160e61b815260040190565b6000546001600160a01b031633146102275760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161039f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146103b157600080fd5b6000602082840312156104ab57600080fd5b81356104b681610484565b9392505050565b600080604083850312156104d057600080fd5b82356104db81610484565b915060208301356104eb81610484565b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561052157600080fd5b833561052c81610484565b9250602084013561053c81610484565b9150604084013567ffffffffffffffff8082111561055957600080fd5b818601915086601f83011261056d57600080fd5b81358181111561057f5761057f6104f6565b604051601f8201601f19908116603f011681019083821181831017156105a7576105a76104f6565b816040528281528960208487010111156105c057600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000602082840312156105f457600080fd5b81516104b681610484565b60018060a01b038316815260006020604081840152835180604085015260005b8181101561063b5785810183015185820160600152820161061f565b8181111561064d576000606083870101525b50601f01601f19169290920160600194935050505056fea26469706673582212207ad53e1008cce369999f6b5f2f77109510b404ff1de9b47b639981fd68e6239264736f6c63430008090033","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x4e59b44847b379578588920ca78fbf26c0b4956c":{"nonce":0,"balance":"0x0","code":"0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe03601600081602082378035828234f58015156039578182fd5b8082525050506014600cf3","storage":{}},"0x4eb9de1fc0d800e941f326d6699e9e11969557ea":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063100cdd911461002d575b5f80fd5b61004061003b3660046102cd565b610042565b005b5f5b818110156101b8575f7f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e28484848181106100805761008061033c565b905060200201356040516020016100a1929190918252602082015260400190565b60408051808303601f190181529082905280516020909101206331a9108f60e11b82526004820181905291507f000000000000000000000000107733fed96c4cd390c944a31f5425a7fb98ae5e6001600160a01b0316906323b872dd908290636352211e90602401602060405180830381865afa158015610124573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101489190610350565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015261dead6024820152604481018490526064015f604051808303815f87803b158015610195575f80fd5b505af11580156101a7573d5f803e3d5ffd5b505060019093019250610044915050565b5080156102c9577f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e282826101ed60018261037d565b8181106101fc576101fc61033c565b9050602002013560405160200161021d929190918252602082015260400190565b604051602081830303815290604052805190602001205f1c7f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e283835f8181106102685761026861033c565b90506020020135604051602001610289929190918252602082015260400190565b60408051601f19818403018152908290528051602090910120907fdf423376f9b0ab363b1b4d6f0b4cb6821921ec30f491555a97236a8a38ce095a905f90a35b5050565b5f80602083850312156102de575f80fd5b823567ffffffffffffffff808211156102f5575f80fd5b818501915085601f830112610308575f80fd5b813581811115610316575f80fd5b8660208260051b850101111561032a575f80fd5b60209290920196919550909350505050565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215610360575f80fd5b81516001600160a01b0381168114610376575f80fd5b9392505050565b8181038181111561039c57634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x4fbf7b2f171336958be5d15ff762a5cff5363568":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061011b575f3560e01c80638d839ffe1161009d578063aeb8ce9b11610062578063aeb8ce9b14610356578063ce1e09c014610375578063d3419bf3146103a8578063f14fcbc8146103db578063f2fde38b146103fa575f80fd5b80638d839ffe146102a25780638da5cb5b146102d55780639791c097146102f1578063a8e5fbc014610310578063acf1a84114610343575f80fd5b806374694a2b116100e357806374694a2b146101c957806380869853146101dc578063839df9451461022757806383e7f6ff146102525780638a95b09f1461028c575f80fd5b806301ffc9a71461011f5780633ccfd60b146101535780635d3590d51461016957806365a69dcf14610188578063715018a6146101b5575b5f80fd5b34801561012a575f80fd5b5061013e610139366004611145565b610419565b60405190151581526020015b60405180910390f35b34801561015e575f80fd5b5061016761044f565b005b348015610174575f80fd5b50610167610183366004611187565b610489565b348015610193575f80fd5b506101a76101a23660046112e4565b610507565b60405190815260200161014a565b3480156101c0575f80fd5b5061016761058b565b6101676101d73660046113db565b61059e565b3480156101e7575f80fd5b5061020f7f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5681565b6040516001600160a01b03909116815260200161014a565b348015610232575f80fd5b506101a761024136600461149d565b60016020525f908152604090205481565b34801561025d575f80fd5b5061027161026c3660046114b4565b610894565b6040805182518152602092830151928101929092520161014a565b348015610297575f80fd5b506101a76224ea0081565b3480156102ad575f80fd5b506101a77f000000000000000000000000000000000000000000000000000000000000025881565b3480156102e0575f80fd5b505f546001600160a01b031661020f565b3480156102fc575f80fd5b5061013e61030b3660046114f6565b6109c9565b34801561031b575f80fd5b5061020f7f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e1841720481565b610167610351366004611528565b6109dd565b348015610361575f80fd5b5061013e6103703660046114f6565b610b7b565b348015610380575f80fd5b506101a77f000000000000000000000000000000000000000000000000000000000001518081565b3480156103b3575f80fd5b5061020f7f000000000000000000000000ec71e4e674fe0f432693dc2b935c34bd2774c00381565b3480156103e6575f80fd5b506101676103f536600461149d565b610c22565b348015610405575f80fd5b50610167610414366004611570565b610c95565b5f6001600160e01b031982166301ffc9a760e01b148061044957506001600160e01b0319821663612e8c0960e01b145b92915050565b5f80546040516001600160a01b03909116914780156108fc02929091818181858888f19350505050158015610486573d5f803e3d5ffd5b50565b610491610d0b565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af11580156104dd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105019190611589565b50505050565b885160208a01205f90841580159061052657506001600160a01b038716155b15610544576040516334fd817160e21b815260040160405180910390fd5b808a8a8a8a8a8a8a8a6040516020016105659998979695949392919061165e565b604051602081830303815290604052805190602001209150509998505050505050505050565b610593610d0b565b61059c5f610d64565b565b5f6105df8b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c9250610894915050565b602081015181519192506105f2916116d5565b3410156106125760405163044044a560e21b815260040160405180910390fd5b6106b38b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f82011690508083019250505050505050896106ae8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f820116905080830192505050505050508d8d8d8d8d8d8d8d610507565b610db3565b604051635200a4c160e11b81525f906001600160a01b037f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e18417204169063a40149829061070b908f908f908f908f908e908b906004016116e8565b6020604051808303815f875af1158015610727573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061074b9190611732565b9050841561077657610776878d8d604051610767929190611749565b60405180910390208888610ece565b83156107be576107be8c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508b9250339150610f939050565b896001600160a01b03168c8c6040516107d8929190611749565b60405180910390207f69e37f151eb98a09618ddaa80c8cfaf1ce5996867c489f45b555b412271ebf278e8e865f015187602001518760405161081e959493929190611758565b60405180910390a36020820151825161083791906116d5565b341115610886576020820151825133916108fc9161085591906116d5565b61085f9034611788565b6040518115909202915f818181858888f19350505050158015610884573d5f803e3d5ffd5b505b505050505050505050505050565b604080518082019091525f808252602082015282516020840120604051636b727d4360e11b8152600481018290527f000000000000000000000000ec71e4e674fe0f432693dc2b935c34bd2774c0036001600160a01b03908116916350e9a7159187917f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063d6e4fa8690602401602060405180830381865afa158015610940573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109649190611732565b866040518463ffffffff1660e01b8152600401610983939291906117e8565b6040805180830381865afa15801561099d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109c1919061180c565b949350505050565b5f60036109d583611044565b101592915050565b5f83836040516109ee929190611749565b604080519182900382206020601f8701819004810284018101909252858352925082915f91610a39919088908890819084018382808284375f92019190915250889250610894915050565b8051909150341015610a5e5760405163044044a560e21b815260040160405180910390fd5b60405163c475abff60e01b815260048101839052602481018590525f907f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b03169063c475abff906044016020604051808303815f875af1158015610acb573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610aef9190611732565b8251909150341115610b3457815133906108fc90610b0d9034611788565b6040518115909202915f818181858888f19350505050158015610b32573d5f803e3d5ffd5b505b837f3da24c024582931cfaf8267d8ed24d13a82a8068d5bd337d30ec45cea4e506ae88883485604051610b6a9493929190611859565b60405180910390a250505050505050565b805160208201205f90610b8d836109c9565b8015610c1b57506040516312dc929d60e31b8152600481018290527f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b0316906396e494e890602401602060405180830381865afa158015610bf7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c1b9190611589565b9392505050565b5f818152600160205260409020544290610c5d907f0000000000000000000000000000000000000000000000000000000000015180906116d5565b10610c8357604051630a059d7160e01b8152600481018290526024015b60405180910390fd5b5f908152600160205260409020429055565b610c9d610d0b565b6001600160a01b038116610d025760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610c7a565b61048681610d64565b5f546001600160a01b0316331461059c5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610c7a565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f818152600160205260409020544290610dee907f0000000000000000000000000000000000000000000000000000000000000258906116d5565b1115610e1057604051635320bcf960e01b815260048101829052602401610c7a565b5f818152600160205260409020544290610e4b907f0000000000000000000000000000000000000000000000000000000000015180906116d5565b11610e6c5760405163cb7690d760e01b815260048101829052602401610c7a565b610e7583610b7b565b610e9457826040516308eee0fd60e31b8152600401610c7a919061187f565b5f818152600160205260408120556224ea00821015610ec957604051639a71997b60e01b815260048101839052602401610c7a565b505050565b604080517f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae6020808301919091528183018690528251808303840181526060830193849052805191012063e32954eb60e01b90925285906001600160a01b0382169063e32954eb90610f4890859088908890606401611891565b5f604051808303815f875af1158015610f63573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052610f8a91908101906118b3565b50505050505050565b7f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d566001600160a01b0316637a806d6b33838587604051602001610fd691906119a7565b6040516020818303038152906040526040518563ffffffff1660e01b815260040161100494939291906119ce565b6020604051808303815f875af1158015611020573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105019190611732565b80515f90819081905b8082101561113c575f85838151811061106857611068611a0b565b01602001516001600160f81b0319169050600160ff1b811015611097576110906001846116d5565b9250611129565b600760fd1b6001600160f81b0319821610156110b8576110906002846116d5565b600f60fc1b6001600160f81b0319821610156110d9576110906003846116d5565b601f60fb1b6001600160f81b0319821610156110fa576110906004846116d5565b603f60fa1b6001600160f81b03198216101561111b576110906005846116d5565b6111266006846116d5565b92505b508261113481611a1f565b93505061104d565b50909392505050565b5f60208284031215611155575f80fd5b81356001600160e01b031981168114610c1b575f80fd5b80356001600160a01b0381168114611182575f80fd5b919050565b5f805f60608486031215611199575f80fd5b6111a28461116c565b92506111b06020850161116c565b9150604084013590509250925092565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff811182821017156111fd576111fd6111c0565b604052919050565b5f67ffffffffffffffff82111561121e5761121e6111c0565b50601f01601f191660200190565b5f82601f83011261123b575f80fd5b813561124e61124982611205565b6111d4565b818152846020838601011115611262575f80fd5b816020850160208301375f918101602001919091529392505050565b5f8083601f84011261128e575f80fd5b50813567ffffffffffffffff8111156112a5575f80fd5b6020830191508360208260051b85010111156112bf575f80fd5b9250929050565b8015158114610486575f80fd5b803561ffff81168114611182575f80fd5b5f805f805f805f805f6101008a8c0312156112fd575f80fd5b893567ffffffffffffffff80821115611314575f80fd5b6113208d838e0161122c565b9a5061132e60208d0161116c565b995060408c0135985060608c0135975061134a60808d0161116c565b965060a08c013591508082111561135f575f80fd5b5061136c8c828d0161127e565b90955093505060c08a0135611380816112c6565b915061138e60e08b016112d3565b90509295985092959850929598565b5f8083601f8401126113ad575f80fd5b50813567ffffffffffffffff8111156113c4575f80fd5b6020830191508360208285010111156112bf575f80fd5b5f805f805f805f805f806101008b8d0312156113f5575f80fd5b8a3567ffffffffffffffff8082111561140c575f80fd5b6114188e838f0161139d565b909c509a508a915061142c60208e0161116c565b995060408d0135985060608d0135975061144860808e0161116c565b965060a08d013591508082111561145d575f80fd5b5061146a8d828e0161127e565b90955093505060c08b013561147e816112c6565b915061148c60e08c016112d3565b90509295989b9194979a5092959850565b5f602082840312156114ad575f80fd5b5035919050565b5f80604083850312156114c5575f80fd5b823567ffffffffffffffff8111156114db575f80fd5b6114e78582860161122c565b95602094909401359450505050565b5f60208284031215611506575f80fd5b813567ffffffffffffffff81111561151c575f80fd5b6109c18482850161122c565b5f805f6040848603121561153a575f80fd5b833567ffffffffffffffff811115611550575f80fd5b61155c8682870161139d565b909790965060209590950135949350505050565b5f60208284031215611580575f80fd5b610c1b8261116c565b5f60208284031215611599575f80fd5b8151610c1b816112c6565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b5f838385526020808601955060208560051b830101845f5b8781101561165157848303601f19018952813536889003601e19018112611609575f80fd5b8701848101903567ffffffffffffffff811115611624575f80fd5b803603821315611632575f80fd5b61163d8582846115a4565b9a86019a94505050908301906001016115e4565b5090979650505050505050565b8981526001600160a01b03898116602083015260408201899052606082018890528616608082015261010060a082018190525f9061169f83820187896115cc565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610449576104496116c1565b60a081525f6116fb60a08301888a6115a4565b6001600160a01b03968716602084015260408301959095525091909316606082015261ffff90921660809092019190915292915050565b5f60208284031215611742575f80fd5b5051919050565b818382375f9101908152919050565b608081525f61176b6080830187896115a4565b602083019590955250604081019290925260609091015292915050565b81810381811115610449576104496116c1565b5f5b838110156117b557818101518382015260200161179d565b50505f910152565b5f81518084526117d481602086016020860161179b565b601f01601f19169290920160200192915050565b606081525f6117fa60608301866117bd565b60208301949094525060400152919050565b5f6040828403121561181c575f80fd5b6040516040810181811067ffffffffffffffff8211171561183f5761183f6111c0565b604052825181526020928301519281019290925250919050565b606081525f61186c6060830186886115a4565b6020830194909452506040015292915050565b602081525f610c1b60208301846117bd565b838152604060208201525f6118aa6040830184866115cc565b95945050505050565b5f60208083850312156118c4575f80fd5b825167ffffffffffffffff808211156118db575f80fd5b818501915085601f8301126118ee575f80fd5b815181811115611900576119006111c0565b8060051b61190f8582016111d4565b9182528381018501918581019089841115611928575f80fd5b86860192505b8383101561199a57825185811115611944575f80fd5b8601603f81018b13611954575f80fd5b87810151604061196661124983611205565b8281528d82848601011115611979575f80fd5b611988838c830184870161179b565b8552505050918601919086019061192e565b9998505050505050505050565b5f82516119b881846020870161179b565b6305ccae8d60e31b920191825250600401919050565b6001600160a01b0385811682528481166020830152831660408201526080606082018190525f90611a01908301846117bd565b9695505050505050565b634e487b7160e01b5f52603260045260245ffd5b5f60018201611a3057611a306116c1565b506001019056fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x5155f5627bdf9795b3dbb8887001ada1eeba93f2":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063de8f50a11461002d575b5f80fd5b61004761003b3660046100a0565b60019695505050505050565b604051901515815260200160405180910390f35b5f8083601f84011261006b575f80fd5b50813567ffffffffffffffff811115610082575f80fd5b602083019150836020828501011115610099575f80fd5b9250929050565b5f805f805f80606087890312156100b5575f80fd5b863567ffffffffffffffff808211156100cc575f80fd5b6100d88a838b0161005b565b909850965060208901359150808211156100f0575f80fd5b6100fc8a838b0161005b565b90965094506040890135915080821115610114575f80fd5b5061012189828a0161005b565b979a969950949750929593949250505056fea164736f6c6343000818000a","storage":{}},"0x54563a9e1cd2dcbd0bca90d3cfa4a647e02c404a":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106101db575f3560e01c80638da5cb5b116100fd578063c4d66de811610092578063daea85c511610062578063daea85c51461055e578063e7acab241461057d578063f2fde38b1461059c578063ffa1ad74146105bb575f80fd5b8063c4d66de8146104e1578063d539139314610500578063d547741f14610520578063d9caed121461053f575f80fd5b8063a217fddf116100cd578063a217fddf14610452578063a3f4df7e14610465578063a4247400146104a3578063aa271e1a146104c2575f80fd5b80638da5cb5b146103d957806391d1485414610400578063983b2d561461041f578063986502751461043e575f80fd5b80635c975abb11610173578063715018a611610143578063715018a61461037f57806371e2a6571461039357806381c81d35146103b25780638456cb59146103c5575f80fd5b80635c975abb146103165780635fc1964f1461032e578063634486da1461034d5780636ccbae5f14610360575f80fd5b80633092afd5116101ae5780633092afd51461029c57806336568abe146102bb5780633f4ba83a146102da578063572b6c05146102ee575f80fd5b806301ffc9a7146101df5780631bf7e13e14610213578063248a9ca31461023f5780632f2ff15d1461027b575b5f80fd5b3480156101ea575f80fd5b506101fe6101f9366004611ee0565b6105eb565b60405190151581526020015b60405180910390f35b34801561021e575f80fd5b5061023261022d366004611f07565b610621565b60405161020a9190611fe9565b34801561024a575f80fd5b5061026d610259366004611ffb565b5f90815260fb602052604090206001015490565b60405190815260200161020a565b348015610286575f80fd5b5061029a610295366004612036565b6106ea565b005b3480156102a7575f80fd5b5061029a6102b6366004612064565b610713565b3480156102c6575f80fd5b5061029a6102d5366004612036565b610727565b3480156102e5575f80fd5b5061029a6107ba565b3480156102f9575f80fd5b506101fe610308366004612064565b6001600160a01b0316301490565b348015610321575f80fd5b5061012d5460ff166101fe565b348015610339575f80fd5b5061029a6103483660046120eb565b6107d4565b61029a61035b366004612064565b610811565b34801561036b575f80fd5b5061026d61037a366004611ffb565b6108d1565b34801561038a575f80fd5b5061029a61092a565b34801561039e575f80fd5b5061029a6103ad3660046120eb565b61093b565b61029a6103c0366004612064565b610978565b3480156103d0575f80fd5b5061029a6109f5565b3480156103e4575f80fd5b506097546040516001600160a01b03909116815260200161020a565b34801561040b575f80fd5b506101fe61041a366004612036565b610a0d565b34801561042a575f80fd5b5061029a610439366004612064565b610a37565b348015610449575f80fd5b5061029a610a48565b34801561045d575f80fd5b5061026d5f81565b348015610470575f80fd5b506102326040518060400160405280601381526020017229b2b0b837b93a10283937bc3c90213abcb2b960691b81525081565b3480156104ae575f80fd5b506101fe6104bd366004611f07565b610a61565b3480156104cd575f80fd5b506101fe6104dc366004612064565b610ab2565b3480156104ec575f80fd5b5061029a6104fb366004612064565b610aca565b34801561050b575f80fd5b5061026d5f80516020612ea783398151915281565b34801561052b575f80fd5b5061029a61053a366004612036565b610c21565b34801561054a575f80fd5b5061029a61055936600461218b565b610c45565b348015610569575f80fd5b5061029a610578366004612064565b610cf7565b348015610588575f80fd5b506101fe6105973660046121c9565b610dac565b3480156105a7575f80fd5b5061029a6105b6366004612064565b6111db565b3480156105c6575f80fd5b5061023260405180604001604052806005815260200164302e302e3160d81b81525081565b5f6001600160e01b03198216637965db0b60e01b148061061b57506301ffc9a760e01b6001600160e01b03198316145b92915050565b60605f5a9050610632858585610a61565b61064f57604051638baa579f60e01b815260040160405180910390fd5b6106df61065f6020870187612064565b3060408801358461067360608b018b61227b565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f920191909152506111f692505050565b9150505b9392505050565b5f82815260fb6020526040902060010154610704816112d4565b61070e83836112e5565b505050565b61071b61136b565b610724816113e4565b50565b61072f6113fb565b6001600160a01b0316816001600160a01b0316146107ac5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6107b68282611409565b5050565b6107c261136b565b6107ca61148d565b6107d26114d7565b565b6107dc61136b565b5f5b81518110156107b6576108098282815181106107fc576107fc6122bd565b60200260200101516113e4565b6001016107de565b61081c6104dc6113fb565b6108385760405162461bcd60e51b81526004016107a3906122d1565b6001600160a01b03811661088e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016107a3565b61089781611530565b61089f610a48565b6040516001600160a01b038216903480156108fc02915f818181858888f193505050501580156107b6573d5f803e3d5ffd5b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f90610923906060016040516020818303038152906040528051906020012090565b5492915050565b61093261136b565b6107d25f611547565b61094361136b565b5f5b81518110156107b657610970828281518110610963576109636122bd565b6020026020010151611530565b600101610945565b6109836104dc6113fb565b61099f5760405162461bcd60e51b81526004016107a3906122d1565b6001600160a01b0381166108975760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016107a3565b6109fd61136b565b610a05611598565b6107d26115df565b5f91825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610a3f61136b565b61072481611530565b6107d25f80516020612ea78339815191526102d56113fb565b5f610aaa610a6e85612306565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061161e92505050565b949350505050565b5f61061b5f80516020612ea783398151915283610a0d565b5f54610100900460ff1615808015610ae857505f54600160ff909116105b80610b015750303b158015610b0157505f5460ff166001145b610b645760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107a3565b5f805460ff191660011790558015610b85575f805461ff0019166101001790555b61015f80546001600160a01b0319166001600160a01b038416179055610ba9611759565b610bb1611786565b610bb9611786565b610bc1611786565b610bc96117ac565b610bd16117e2565b610bd9611819565b80156107b6575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b5f82815260fb6020526040902060010154610c3b816112d4565b61070e8383611409565b610c4d61136b565b600260335403610c6f5760405162461bcd60e51b81526004016107a3906123c2565b6002603355610c7c611598565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af1158015610cc8573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cec91906123f9565b505060016033555050565b610cff61136b565b600260335403610d215760405162461bcd60e51b81526004016107a3906123c2565b6002603355610d2e611598565b61015f5460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529082169063095ea7b3906044016020604051808303815f875af1158015610d7f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610da391906123f9565b50506001603355565b5f610db86104dc6113fb565b610dd45760405162461bcd60e51b81526004016107a3906122d1565b600260335403610df65760405162461bcd60e51b81526004016107a3906123c2565b6002603355610e03611598565b6001600160a01b038216610e2a576040516311d000e160e31b815260040160405180910390fd5b30610e358780612418565b610e46906040810190602001612064565b6001600160a01b031614610e6d57604051639d3c586b60e01b815260040160405180910390fd5b610e75611e67565b610e7f8780612418565b610e8d906020810190612064565b6001600160a01b03168152610ea28780612418565b610eb3906040810190602001612064565b6001600160a01b03166020820152610ecb8780612418565b610ed9906040810190612437565b808060200260200160405190810160405280939291908181526020015f905b82821015610f2457610f1560a08302860136819003810190612489565b81526020019060010190610ef8565b50505050506040820152610f388780612418565b610f46906060810190612506565b808060200260200160405190810160405280939291908181526020015f905b82821015610f9157610f8260c0830286013681900381019061254a565b81526020019060010190610f65565b50505050506060820152610fa58780612418565b610fb69060a08101906080016125e5565b81608001906004811115610fcc57610fcc6125fe565b90816004811115610fdf57610fdf6125fe565b905250610fec8780612418565b60a090810135908201526110008780612418565b60c090810135908201526110148780612418565b60e090810135908201526110288780612418565b610100908101359082015261103d8780612418565b610120908101359082015261015f54815160405163f07ec37360e01b81526001600160a01b03918216600482015291169063f07ec37390602401602060405180830381865afa158015611092573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110b69190612612565b61014082015261015f546040516379df72bd60e01b8152611133916001600160a01b0316906379df72bd906110ef908590600401612737565b602060405180830381865afa15801561110a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061112e9190612612565b61184c565b61015f546040516339eb2ac960e21b81526001600160a01b039091169063e7acab249061116c908a908a908a908a908a90600401612b24565b6020604051808303815f875af1158015611188573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111ac91906123f9565b9150816111cc57604051636725093760e01b815260040160405180910390fd5b50600160335595945050505050565b6111e361136b565b6111ec81611865565b6107245f826118db565b6060611201856118e5565b5f80876001600160a01b03168661121a8b8a898961194a565b6040516112279190612cfa565b5f604051808303815f8787f1925050503d805f8114611261576040519150601f19603f3d011682016040523d82523d5f602084013e611266565b606091505b509092509050611277603f87612d1f565b5a1161128557611285612d3e565b6112c582826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061197a565b925050505b9695505050505050565b610724816112e06113fb565b6119b3565b6112ef8282610a0d565b6107b6575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191660011790556113276113fb565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6113736113fb565b6001600160a01b031661138e6097546001600160a01b031690565b6001600160a01b0316146107d25760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107a3565b6107245f80516020612ea783398151915282610c21565b5f611404611a17565b905090565b6114138282610a0d565b156107b6575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191690556114496113fb565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b61012d5460ff166107d25760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b60448201526064016107a3565b6114df61148d565b61012d805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6115136113fb565b6040516001600160a01b03909116815260200160405180910390a1565b6107245f80516020612ea7833981519152826118db565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b61012d5460ff16156107d25760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b60448201526064016107a3565b6115e7611598565b61012d805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586115136113fb565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015611662573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116869190612612565b90505f6117338660600151805190602001208688602001516040516020016116d39392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156112ca575085516112ca906001600160a01b03168286611a34565b5f54610100900460ff1661177f5760405162461bcd60e51b81526004016107a390612d52565b6001603355565b5f54610100900460ff166107d25760405162461bcd60e51b81526004016107a390612d52565b5f54610100900460ff166117d25760405162461bcd60e51b81526004016107a390612d52565b6107d26117dd6113fb565b611547565b5f54610100900460ff166118085760405162461bcd60e51b81526004016107a390612d52565b6107d25f6118146113fb565b6118db565b5f54610100900460ff1661183f5760405162461bcd60e51b81526004016107a390612d52565b61012d805460ff19169055565b30330361185c5761072481611b6f565b610724816118e5565b61186d61136b565b6001600160a01b0381166118d25760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107a3565b61072481611547565b6107b682826112e5565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f906060016040516020818303038152906040528051906020012090506119398190565b54611945906001612d9d565b905550565b606082858560405160200161196193929190612db0565b6040516020818303038152906040529050949350505050565b606083156119895750816106e3565b8251156119995782518084602001fd5b8160405162461bcd60e51b81526004016107a39190611fe9565b6119bd8282610a0d565b6107b6576119d5816001600160a01b03166014611b99565b6119e0836020611b99565b6040516020016119f1929190612dee565b60408051601f198184030181529082905262461bcd60e51b82526107a391600401611fe9565b5f303303611a2c575060331936013560601c90565b503390565b90565b5f805f611a418585611d2e565b90925090505f816004811115611a5957611a596125fe565b148015611a775750856001600160a01b0316826001600160a01b0316145b15611a87576001925050506106e3565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401611aae929190612e62565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051611aec9190612cfa565b5f60405180830381855afa9150503d805f8114611b24576040519150601f19603f3d011682016040523d82523d5f602084013e611b29565b606091505b5091509150818015611b3c575080516020145b8015611b6357508051630b135d3f60e11b90611b619083016020908101908401612612565b145b98975050505050505050565b611b77611d70565b811461072457604051635637b6af60e11b8152600481018290526024016107a3565b60605f611ba7836002612e7a565b611bb2906002612d9d565b6001600160401b03811115611bc957611bc961207f565b6040519080825280601f01601f191660200182016040528015611bf3576020820181803683370190505b509050600360fc1b815f81518110611c0d57611c0d6122bd565b60200101906001600160f81b03191690815f1a905350600f60fb1b81600181518110611c3b57611c3b6122bd565b60200101906001600160f81b03191690815f1a9053505f611c5d846002612e7a565b611c68906001612d9d565b90505b6001811115611cdf576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611c9c57611c9c6122bd565b1a60f81b828281518110611cb257611cb26122bd565b60200101906001600160f81b03191690815f1a90535060049490941c93611cd881612e91565b9050611c6b565b5083156106e35760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016107a3565b5f808251604103611d62576020830151604084015160608501515f1a611d5687828585611d82565b94509450505050611d69565b505f905060025b9250929050565b5f303303611a315750601f1936013590565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115611db757505f90506003611e5e565b8460ff16601b14158015611dcf57508460ff16601c14155b15611ddf57505f90506004611e5e565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015611e30573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b038116611e58575f60019250925050611e5e565b91505f90505b94509492505050565b6040518061016001604052805f6001600160a01b031681526020015f6001600160a01b0316815260200160608152602001606081526020015f6004811115611eb157611eb16125fe565b81525f6020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b5f60208284031215611ef0575f80fd5b81356001600160e01b0319811681146106e3575f80fd5b5f805f60408486031215611f19575f80fd5b83356001600160401b0380821115611f2f575f80fd5b9085019060808288031215611f42575f80fd5b90935060208501359080821115611f57575f80fd5b818601915086601f830112611f6a575f80fd5b813581811115611f78575f80fd5b876020828501011115611f89575f80fd5b6020830194508093505050509250925092565b5f5b83811015611fb6578181015183820152602001611f9e565b50505f910152565b5f8151808452611fd5816020860160208601611f9c565b601f01601f19169290920160200192915050565b602081525f6106e36020830184611fbe565b5f6020828403121561200b575f80fd5b5035919050565b6001600160a01b0381168114610724575f80fd5b803561203181612012565b919050565b5f8060408385031215612047575f80fd5b82359150602083013561205981612012565b809150509250929050565b5f60208284031215612074575f80fd5b81356106e381612012565b634e487b7160e01b5f52604160045260245ffd5b604051608081016001600160401b03811182821017156120b5576120b561207f565b60405290565b604051601f8201601f191681016001600160401b03811182821017156120e3576120e361207f565b604052919050565b5f60208083850312156120fc575f80fd5b82356001600160401b0380821115612112575f80fd5b818501915085601f830112612125575f80fd5b8135818111156121375761213761207f565b8060051b91506121488483016120bb565b8181529183018401918481019088841115612161575f80fd5b938501935b83851015611b63578435925061217b83612012565b8282529385019390850190612166565b5f805f6060848603121561219d575f80fd5b83356121a881612012565b925060208401356121b881612012565b929592945050506040919091013590565b5f805f805f608086880312156121dd575f80fd5b85356001600160401b03808211156121f3575f80fd5b9087019060a0828a031215612206575f80fd5b9095506020870135908082111561221b575f80fd5b818801915088601f83011261222e575f80fd5b81358181111561223c575f80fd5b8960208260051b8501011115612250575f80fd5b6020830196508095505050506040860135915061226f60608701612026565b90509295509295909350565b5f808335601e19843603018112612290575f80fd5b8301803591506001600160401b038211156122a9575f80fd5b602001915036819003821315611d69575f80fd5b634e487b7160e01b5f52603260045260245ffd5b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b5f60808236031215612316575f80fd5b61231e612093565b823561232981612012565b8152602083810135818301526040808501359083015260608401356001600160401b0380821115612358575f80fd5b9085019036601f83011261236a575f80fd5b81358181111561237c5761237c61207f565b61238e601f8201601f191685016120bb565b915080825236848285010111156123a3575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b5f60208284031215612409575f80fd5b815180151581146106e3575f80fd5b5f823561015e1983360301811261242d575f80fd5b9190910192915050565b5f808335601e1984360301811261244c575f80fd5b8301803591506001600160401b03821115612465575f80fd5b602001915060a081023603821315611d69575f80fd5b803560068110612031575f80fd5b5f60a08284031215612499575f80fd5b60405160a081018181106001600160401b03821117156124bb576124bb61207f565b6040526124c78361247b565b815260208301356124d781612012565b806020830152506040830135604082015260608301356060820152608083013560808201528091505092915050565b5f808335601e1984360301811261251b575f80fd5b8301803591506001600160401b03821115612534575f80fd5b602001915060c081023603821315611d69575f80fd5b5f60c0828403121561255a575f80fd5b60405160c081018181106001600160401b038211171561257c5761257c61207f565b6040526125888361247b565b8152602083013561259881612012565b8060208301525060408301356040820152606083013560608201526080830135608082015260a08301356125cb81612012565b60a08201529392505050565b803560058110612031575f80fd5b5f602082840312156125f5575f80fd5b6106e3826125d7565b634e487b7160e01b5f52602160045260245ffd5b5f60208284031215612622575f80fd5b5051919050565b60068110612639576126396125fe565b9052565b5f815180845260208085019450602084015f5b838110156126a6578151612665888251612629565b838101516001600160a01b03168885015260408082015190890152606080820151908901526080908101519088015260a09096019590820190600101612650565b509495945050505050565b5f815180845260208085019450602084015f5b838110156126a65781516126d9888251612629565b808401516001600160a01b0390811689860152604080830151908a0152606080830151908a0152608080830151908a015260a091820151169088015260c090960195908201906001016126c4565b60058110612639576126396125fe565b602081526127516020820183516001600160a01b03169052565b5f602083015161276c60408401826001600160a01b03169052565b50604083015161016080606085015261278961018085018361263d565b91506060850151601f198584030160808601526127a683826126b1565b92505060808501516127bb60a0860182612727565b5060a085015160c085015260c085015160e085015260e0850151610100818187015280870151915050610120818187015280870151915050610140818187015280870151838701525050508091505092915050565b5f808335601e19843603018112612825575f80fd5b83016020810192503590506001600160401b03811115612843575f80fd5b60a081023603821315611d69575f80fd5b8183525f60208085019450825f5b858110156126a65761287c876128778461247b565b612629565b8282013561288981612012565b6001600160a01b03168388015260408281013590880152606080830135908801526080808301359088015260a09687019690910190600101612862565b5f808335601e198436030181126128db575f80fd5b83016020810192503590506001600160401b038111156128f9575f80fd5b60c081023603821315611d69575f80fd5b8183525f60208085019450825f5b858110156126a65761292d876128778461247b565b8282013561293a81612012565b6001600160a01b039081168885015260408381013590890152606080840135908901526080808401359089015260a0908382013561297781612012565b169088015260c0968701969190910190600101612918565b80356001600160781b0381168114612031575f80fd5b5f808335601e198436030181126129ba575f80fd5b83016020810192503590506001600160401b038111156129d8575f80fd5b803603821315611d69575f80fd5b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b8183525f6001600160fb1b03831115612a25575f80fd5b8260051b80836020870137939093016020019392505050565b8183526020808401935f91600585811b8301820185855b88811015612b1657858303601f19018a52813536899003609e19018112612a7a575f80fd5b88018035845260a08682013560028110612a92575f80fd5b85880152604082810135908601526060808301359086015260808083013536849003601e19018112612ac2575f80fd5b9092018781019290356001600160401b03811115612ade575f80fd5b80881b3603841315612aee575f80fd5b8282880152612b008388018286612a0e565b9d89019d96505050928601925050600101612a55565b509098975050505050505050565b608081525f610120873561015e19893603018112612b40575f80fd5b60a060808501528801612b65828501612b5883612026565b6001600160a01b03169052565b612b7160208201612026565b610140612b88818701836001600160a01b03169052565b612b956040840184612810565b610160888101529250612bad61028088018483612854565b925050612bbd60608401846128c6565b87840361011f1901610180890152612bd684828461290a565b93505050612be6608084016125d7565b612bf46101a0880182612727565b5060a08301356101c087015260c08301356101e087015260e0830135610200870152610100808401356102208801528484013561024088015281840135610260880152612c4360208d0161298f565b6001600160781b03811660a08901529450612c6060408d0161298f565b6001600160781b03811660c08901529450612c7e60608d018d6129a5565b95509350607f199150818784030160e0880152612c9c8386866129e6565b9450612cab60808d018d6129a5565b945092508187860301818801525050612cc58383836129e6565b925050508281036020840152612cdc818789612a3e565b9150508360408301526112ca60608301846001600160a01b03169052565b5f825161242d818460208701611f9c565b634e487b7160e01b5f52601160045260245ffd5b5f82612d3957634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b8082018082111561061b5761061b612d0b565b5f8451612dc1818460208901611f9c565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081525f8351612e25816017850160208801611f9c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351612e56816028840160208801611f9c565b01602801949350505050565b828152604060208201525f610aaa6040830184611fbe565b808202811582820484141761061b5761061b612d0b565b5f81612e9f57612e9f612d0b565b505f19019056fe9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000818000a","storage":{"0x0":"0xff"}},"0x58a175bebc8ec21a94ea63aa5a28743945940ee6":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106101165760003560e01c806391d14854116100a2578063c4d66de811610071578063c4d66de8146103bb578063ca15c873146103e1578063d547741f146103fe578063e375b64e1461042a578063ec87621c146104b957610116565b806391d14854146103635780639559c0bd146103a3578063a217fddf146103ab578063b017a30f146103b357610116565b80634794b430116100e95780634794b4301461024f57806349f5124b14610257578063609c92b81461025f5780638274664f146102675780639010d07c1461032457610116565b8063150b7a021461011b578063248a9ca3146101c65780632f2ff15d146101f557806336568abe14610223575b600080fd5b6101a96004803603608081101561013157600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561016b57600080fd5b82018360208201111561017d57600080fd5b803590602001918460018302840111600160201b8311171561019e57600080fd5b5090925090506104c1565b604080516001600160e01b03199092168252519081900360200190f35b6101e3600480360360208110156101dc57600080fd5b50356104d2565b60408051918252519081900360200190f35b6102216004803603604081101561020b57600080fd5b50803590602001356001600160a01b03166104ea565b005b6102216004803603604081101561023957600080fd5b50803590602001356001600160a01b0316610556565b6101e36105b7565b6101e36105db565b6101e36105ff565b6102216004803603606081101561027d57600080fd5b6001600160a01b038235811692602081013590911691810190606081016040820135600160201b8111156102b057600080fd5b8201836020820111156102c257600080fd5b803590602001918460018302840111600160201b831117156102e357600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610623945050505050565b6103476004803603604081101561033a57600080fd5b5080359060200135610fa2565b604080516001600160a01b039092168252519081900360200190f35b61038f6004803603604081101561037957600080fd5b50803590602001356001600160a01b0316610fc9565b604080519115158252519081900360200190f35b6101e3610fe7565b6101e3610fec565b6101e3610ff1565b610221600480360360208110156103d157600080fd5b50356001600160a01b0316611015565b6101e3600480360360208110156103f757600080fd5b50356110cf565b6102216004803603604081101561041457600080fd5b50803590602001356001600160a01b03166110e6565b6102216004803603608081101561044057600080fd5b6001600160a01b0382358116926020810135821692604082013590921691810190608081016060820135600160201b81111561047b57600080fd5b82018360208201111561048d57600080fd5b803590602001918460018302840111600160201b831117156104ae57600080fd5b50909250905061113f565b6101e36114e6565b630a85bd0160e11b95945050505050565b6000818152602081905260409020600201545b919050565b60008281526020819052604090206002015461050d906105086114f8565b610fc9565b6105485760405162461bcd60e51b815260040180806020018281038252602f815260200180611f42602f913960400191505060405180910390fd5b61055282826114fd565b5050565b61055e6114f8565b6001600160a01b0316816001600160a01b0316146105ad5760405162461bcd60e51b815260040180806020018281038252602f8152602001806120bb602f913960400191505060405180910390fd5b610552828261156c565b7ff871896b17e9cb7a64941c62c188a4f5c621b86800e3d15452ece01ce56073df81565b7ff94915c6d1fd521cee85359239227480c7e8776d7caf1fc3bacad5c269b66a1481565b7fd4392723c111fcb98b073fe55873efb447bcd23cd3e49ec9ea2581930cd01ddc81565b60008051602061204b83398151915261063e816105086114f8565b6001906106de5760405162461bcd60e51b81526020600482019081528254600260001961010060018416150201909116046024830181905290918291604490910190849080156106cf5780601f106106a4576101008083540402835291602001916106cf565b820191906000526020600020905b8154815290600101906020018083116106b257829003601f168201915b50509250505060405180910390fd5b5060606106f26106ed846115db565b611656565b905060606107138260018151811061070657fe5b6020026020010151611656565b90507fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60001b6107568260008151811061074957fe5b60200260200101516117d8565b141561095457600061076e8260018151811061074957fe5b905060006001600160a01b031661078b8360028151811061074957fe5b6001600160a01b0316146107d05760405162461bcd60e51b815260040180806020018281038252602981526020018061206b6029913960400191505060405180910390fd5b600086905060006107e78460038151811061074957fe5b9050816001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b15801561082d57600080fd5b505afa158015610841573d6000803e3d6000fd5b505050506040513d602081101561085757600080fd5b5051156108d35760408051632142170760e11b81523060048201526001600160a01b038581166024830152604482018490529151918416916342842e0e9160648082019260009290919082900301818387803b1580156108b657600080fd5b505af11580156108ca573d6000803e3d6000fd5b5050505061094c565b816001600160a01b03166340c10f1984836040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b15801561093357600080fd5b505af1158015610947573d6000803e3d6000fd5b505050505b505050610f9a565b7ff871896b17e9cb7a64941c62c188a4f5c621b86800e3d15452ece01ce56073df60001b6109888260008151811061074957fe5b1415610c085760006109a08260018151811061074957fe5b905060606109c1846002815181106109b457fe5b6020026020010151611920565b905060608180602001905160208110156109da57600080fd5b8101908080516040519392919084600160201b8211156109f957600080fd5b908301906020820185811115610a0e57600080fd5b82518660208202830111600160201b82111715610a2a57600080fd5b82525081516020918201928201910280838360005b83811015610a57578181015183820152602001610a3f565b5050505091909101604052505082519293508a9150600090505b82811015610bfd576000848281518110610a8757fe5b60200260200101519050826001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610ad557600080fd5b505afa158015610ae9573d6000803e3d6000fd5b505050506040513d6020811015610aff57600080fd5b505115610b7b5760408051632142170760e11b81523060048201526001600160a01b038981166024830152604482018490529151918516916342842e0e9160648082019260009290919082900301818387803b158015610b5e57600080fd5b505af1158015610b72573d6000803e3d6000fd5b50505050610bf4565b826001600160a01b03166340c10f1988836040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b158015610bdb57600080fd5b505af1158015610bef573d6000803e3d6000fd5b505050505b50600101610a71565b505050505050610f9a565b7ff94915c6d1fd521cee85359239227480c7e8776d7caf1fc3bacad5c269b66a1460001b610c3c8260008151811061074957fe5b1415610f63576000610c548260018151811061074957fe5b905060006001600160a01b0316610c718360028151811061074957fe5b6001600160a01b031614610cb65760405162461bcd60e51b815260040180806020018281038252602981526020018061206b6029913960400191505060405180910390fd5b60008690506000610ccd8460038151811061074957fe5b9050816001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610d1357600080fd5b505afa158015610d27573d6000803e3d6000fd5b505050506040513d6020811015610d3d57600080fd5b505115610d9c5760408051632142170760e11b81523060048201526001600160a01b038581166024830152604482018490529151918416916342842e0e9160648082019260009290919082900301818387803b1580156108b657600080fd5b6060610dae866002815181106109b457fe5b90506060818060200190516020811015610dc757600080fd5b8101908080516040519392919084600160201b821115610de657600080fd5b908301906020820185811115610dfb57600080fd5b8251600160201b811182820188101715610e1457600080fd5b82525081516020918201929091019080838360005b83811015610e41578181015183820152602001610e29565b50505050905090810190601f168015610e6e5780820380516001836020036101000a031916815260200191505b506040525050509050836001600160a01b03166394d008ef8685846040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b0316815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610ef3578181015183820152602001610edb565b50505050905090810190601f168015610f205780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015610f4157600080fd5b505af1158015610f55573d6000803e3d6000fd5b505050505050505050610f9a565b60405162461bcd60e51b815260040180806020018281038252602a815260200180611f71602a913960400191505060405180910390fd5b505050505050565b6000828152602081905260408120610fc0908363ffffffff6119ea16565b90505b92915050565b6000828152602081905260408120610fc0908363ffffffff6119f616565b601481565b600081565b7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef81565b60025460ff161561105e576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b61109c6040518060400160405280601781526020017f4d696e7461626c65455243373231507265646963617465000000000000000000815250611a0b565b6110a7600082610548565b6110bf60008051602061204b83398151915282610548565b506002805460ff19166001179055565b6000818152602081905260408120610fc390611aa9565b600082815260208190526040902060020154611104906105086114f8565b6105ad5760405162461bcd60e51b8152600401808060200182810382526030815260200180611fc36030913960400191505060405180910390fd5b60008051602061204b83398151915261115a816105086114f8565b6001906111c05760405162461bcd60e51b81526020600482019081528254600260001961010060018416150201909116046024830181905290918291604490910190849080156106cf5780601f106106a4576101008083540402835291602001916106cf565b50602082141561129f576000838360208110156111dc57600080fd5b5060408051913580835290519092506001600160a01b038088169289821692918b16917fe13244aa06bdc79480ed5fdc6ebe2bb37202fcdf33ecf45dc449f4201f3dc0879181900360200190a460408051632142170760e11b81526001600160a01b038981166004830152306024830152604482018490529151918716916342842e0e9160648082019260009290919082900301818387803b15801561128157600080fd5b505af1158015611295573d6000803e3d6000fd5b5050505050610f9a565b6060838360208110156112b157600080fd5b810190602081018135600160201b8111156112cb57600080fd5b8201836020820111156112dd57600080fd5b803590602001918460208302840111600160201b831117156112fe57600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f8201169050808301925050505050505091929192905050509050846001600160a01b0316866001600160a01b0316886001600160a01b03167fdb55e3a0ae817693fd7b07170d81eab0eb2c239f36fcecbc98b6b58ac5667e7a846040518080602001828103825283818151815260200191508051906020019060200280838360005b838110156113ca5781810151838201526020016113b2565b505050509050019250505060405180910390a48051601481111561141f5760405162461bcd60e51b815260040180806020018281038252602c81526020018061201f602c913960400191505060405180910390fd5b60005b818110156114db57866001600160a01b03166342842e0e8a3086858151811061144757fe5b60200260200101516040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050600060405180830381600087803b1580156114b757600080fd5b505af11580156114cb573d6000803e3d6000fd5b5050600190920191506114229050565b505050505050505050565b60008051602061204b83398151915281565b335b90565b600082815260208190526040902061151b908263ffffffff611ab416565b15610552576115286114f8565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b600082815260208190526040902061158a908263ffffffff611ac916565b15610552576115976114f8565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b6115e3611e6d565b6000825111611639576040805162461bcd60e51b815260206004820152601f60248201527f524c505265616465723a20494e56414c49445f42595445535f4c454e47544800604482015290519081900360640190fd5b506040805180820190915281518152602082810190820152919050565b606061166182611ade565b6116b2576040805162461bcd60e51b815260206004820152601860248201527f524c505265616465723a204954454d5f4e4f545f4c4953540000000000000000604482015290519081900360640190fd5b60006116bd83611b0a565b905060608167ffffffffffffffff811180156116d857600080fd5b5060405190808252806020026020018201604052801561171257816020015b6116ff611e6d565b8152602001906001900390816116f75790505b50905060006117248560200151611b96565b855190915081146117665760405162461bcd60e51b81526004018080602001828103825260278152602001806120946027913960400191505060405180910390fd5b60006117758660200151611c2f565b60208701510190506000805b858110156117cc5761179283611b96565b91506040518060400160405280838152602001848152508582815181106117b557fe5b602090810291909101015291810191600101611781565b50929695505050505050565b60006117e382611ade565b15611835576040805162461bcd60e51b815260206004820181905260248201527f524c505265616465723a204445434f44494e475f4c4953545f41535f55494e54604482015290519081900360640190fd5b81516021101561188c576040805162461bcd60e51b815260206004820152601e60248201527f524c505265616465723a20494e56414c49445f55494e545f4c454e4754480000604482015290519081900360640190fd5b600061189b8360200151611b96565b835190915081146118dd5760405162461bcd60e51b81526004018080602001828103825260278152602001806120ea6027913960400191505060405180910390fd5b60006118ec8460200151611c2f565b8451602080870151830180519394509184900392919083101561191657826020036101000a820491505b5095945050505050565b606060006119318360200151611b96565b835190915081146119735760405162461bcd60e51b8152600401808060200182810382526028815260200180611f9b6028913960400191505060405180910390fd5b60006119828460200151611c2f565b845190915081900360608167ffffffffffffffff811180156119a357600080fd5b506040519080825280601f01601f1916602001820160405280156119ce576020820181803683370190505b5090506000816020019050611916848860200151018285611c92565b6000610fc08383611cdd565b6000610fc0836001600160a01b038416611d41565b806040516020018082805190602001908083835b60208310611a3e5780518252601f199092019160209182019101611a1f565b51815160209384036101000a60001901801990921691161790527f3a20494e53554646494349454e545f5045524d495353494f4e530000000000009190930190815260408051808303600519018152601a909201905280516105529550600194509201919050611e87565b6000610fc382611d59565b6000610fc0836001600160a01b038416611d5d565b6000610fc0836001600160a01b038416611da7565b6020810151805160009190821a9060c0821015611b00576000925050506104e5565b5060019392505050565b600080600090506000611b208460200151611c2f565b602085015185519181019250015b80821015611b8d57611b3f82611b96565b8201915080821115611b825760405162461bcd60e51b815260040180806020018281038252602c815260200180611ff3602c913960400191505060405180910390fd5b600190920191611b2e565b50909392505050565b80516000908190811a6080811015611bb15760019150611c28565b60b8811015611bc657607e1981019150611c28565b60c0811015611bf35760b78103600185019450806020036101000a85510460018201810193505050611c28565b60f8811015611c085760be1981019150611c28565b60f78103600185019450806020036101000a855104600182018101935050505b5092915050565b8051600090811a6080811015611c495760009150506104e5565b60b8811080611c64575060c08110801590611c64575060f881105b15611c735760019150506104e5565b60c0811015611c875760b5190190506104e5565b60f5190190506104e5565b80611c9c57611cd8565b5b60208110611cbc578251825260209283019290910190601f1901611c9d565b8251825160208390036101000a60001901801990921691161782525b505050565b81546000908210611d1f5760405162461bcd60e51b8152600401808060200182810382526022815260200180611f206022913960400191505060405180910390fd5b826000018281548110611d2e57fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000611d698383611d41565b611d9f57508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610fc3565b506000610fc3565b60008181526001830160205260408120548015611e635783546000198083019190810190600090879083908110611dda57fe5b9060005260206000200154905080876000018481548110611df757fe5b600091825260208083209091019290925582815260018981019092526040902090840190558654879080611e2757fe5b60019003818190600052602060002001600090559055866001016000878152602001908152602001600020600090556001945050505050610fc3565b6000915050610fc3565b604051806040016040528060008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611ec857805160ff1916838001178555611ef5565b82800160010185558215611ef5579182015b82811115611ef5578251825591602001919060010190611eda565b50611f01929150611f05565b5090565b6114fa91905b80821115611f015760008155600101611f0b56fe456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e744d696e7461626c654552433732315072656469636174653a20494e56414c49445f5349474e4154555245524c505265616465723a2042595445535f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b65524c505265616465723a204e554d5f4954454d535f4445434f4445445f4c454e4754485f4d49534d415443484d696e7461626c654552433732315072656469636174653a20455843454544535f42415443485f4c494d4954241ecf16d79d0f8dbfb92cbc07fe17840425976cf0667f022fe9877caa831b084d696e7461626c654552433732315072656469636174653a20494e56414c49445f5245434549564552524c505265616465723a204c4953545f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66524c505265616465723a2055494e545f4445434f4445445f4c454e4754485f4d49534d41544348a164736f6c6343000606000a","storage":{"0x1":"0x63","0x2":"0x1","0x73d5d1a274bdea1400ad3ea4d982f594abdfd528cde1486b6c617faa3ec116":"0x1","0x89011777cfe6194dd982545e7eb24725dfe9a1aacae299c76fc48ef5017ae650":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x89011777cfe6194dd982545e7eb24725dfe9a1aacae299c76fc48ef5017ae651":"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0x1","0xb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6":"0x4d696e7461626c654552433732315072656469636174653a20494e5355464649","0xb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf7":"0x4349454e545f5045524d495353494f4e53000000000000000000000000000000","0xba75a66b8132bebab85d36fd3638083da57ae3d78fbcd8cc41f73514287dadaf":"0x1","0xe6c7d8231a06d7cb67831aeabcbd43ba24e5e4c6569cf23405f1e558de8580e0":"0x2","0xe84508f2c7fa9c351146748b3025cb78b45df37d868e48c6a75102fecdeee645":"0x2","0xe84508f2c7fa9c351146748b3025cb78b45df37d868e48c6a75102fecdeee647":"0x0","0xf0df3dcda05b4fbd9c655cde3d5ceb211e019e72ec816e127a59e7195f2cd7f5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x5cc819c9915eadfcebd76952b8c1bc36cadd7376":{"nonce":2,"balance":"0x0","code":"0x608060405260043610610103575f3560e01c8063a900866b11610092578063f07ec37311610062578063f07ec373146102f7578063f2d12b1214610316578063f47b774014610329578063fb0f3ee114610116578063fd9f1e101461034c575f80fd5b8063a900866b1461028a578063b3a34c4c146102be578063e7acab24146102d1578063ed98a574146102e4575f80fd5b80637423eb3c116100d85780637423eb3c146101f757806379df72bd1461020b57806387201b411461022a578063881477321461024b578063a81744041461026a575f80fd5b801561011657806306fdde031461013e57806346423aa71461015f5780635b34b966146101d5575f80fd5b366101125761011061036b565b005b5f80fd5b610129610124366004615115565b6103f9565b60405190151581526020015b60405180910390f35b348015610149575f80fd5b50610152610408565b604051610135919061518f565b34801561016a575f80fd5b506101b36101793660046151a1565b5f9081526001602052604090205460ff808216926101008304909116916001600160781b03620100008204811692600160881b9092041690565b6040805194151585529215156020850152918301526060820152608001610135565b3480156101e0575f80fd5b506101e9610417565b604051908152602001610135565b348015610202575f80fd5b50610110610420565b348015610216575f80fd5b506101e96102253660046151b8565b6104c1565b61023d61023836600461524c565b6104f8565b6040516101359291906153f0565b348015610256575f80fd5b5061012961026536600461543f565b610571565b61027d61027836600461547d565b61058f565b60405161013591906154e3565b348015610295575f80fd5b506101e96102a43660046154f5565b6001600160a01b03165f9081526002602052604090205490565b6101296102cc36600461550e565b61062a565b6101296102df366004615553565b6106a3565b61023d6102f23660046155d7565b6106e1565b348015610302575f80fd5b506101e96103113660046154f5565b610784565b61027d610324366004615677565b6107a1565b348015610334575f80fd5b5061033d6107ea565b60405161013593929190615719565b348015610357575f80fd5b5061012961036636600461543f565b610801565b7f000000000000000000000000000000000000000000000000000000000000000180156103b357600263929eee145c146103b05763a61be9f05f52346020526024601cfd5b50565b63929eee1454806103e057600263929eee145c146103dc5763a61be9f05f52346020526024601cfd5b5050565b600381146103dc5763a61be9f05f52346020526024601cfd5b5f61040261080c565b92915050565b60606104126109c0565b905090565b5f6104126109d8565b63929eee14546001147f000000000000000000000000000000000000000000000000000000000000000180610453575080155b1561047157604051630f45b98b60e41b815260040160405180910390fd5b61049a7f000000000000000000000000145908bbcfc7b258e4d4d9a586f6e3249ae80216610a45565b6104b7576040516370a4078f60e01b815260040160405180910390fd5b5f63929eee145550565b5f806104cd6004610aa3565b90506104f16104e282610ab35b63ffffffff16565b610140830135610b30565b3590565b9392505050565b60608061055d61051361050b6004610aa3565b610c746104da565b61052a61052260046020610cdc565b610cfa6104da565b61054161053960046040610cdc565b610d526104da565b61055061053960046060610cdc565b89338a15028a0189610daa565b915091509b509b9950505050505050505050565b5f6104f161058a6105826004610aa3565b610de46104da565b610e3c565b606061061f6105a96105a16004610aa3565b610f5d6104da565b604080515f8082526020820190925290610601565b6105ee6040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816105be5790505b5061061961061160046020610cdc565b610fb56104da565b3361100d565b90505b949350505050565b5f6104f161064361063b6004610aa3565b61104b6104da565b604080515f808252602082019092529061069b565b6106886040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816106585790505b5084336110c1565b5f6106d76106bc6106b46004610aa3565b6112406104da565b6106cb61052260046020610cdc565b853386150286016110c1565b9695505050505050565b6060806107736106f46105a16004610aa3565b604080515f808252602082019092529061074c565b6107396040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816107095790505b5061075c61053960046020610cdc565b61076b61053960046040610cdc565b883389610daa565b915091509850989650505050505050565b6001600160a01b0381165f90815260208190526040812054610402565b60606107dc6107b361050b6004610aa3565b6107c261052260046020610cdc565b6107d161061160046040610cdc565b33861502860161100d565b90505b979650505050505050565b60605f806107f661129c565b925092509250909192565b5f6104f183836112e8565b5f61012435600281901c90600316600182118334158214806108315761083134611423565b506003841160a0810260240135906502030203010160d01b861a905f630101020360d01b881a6108648882898888611434565b9096509150506101c4600583901b01355f87600581111561088757610887615329565b036108bc5760443560243517156108a557636ab37ce75f526004601cfd5b6108af8482611751565b6108b7611809565b61099d565b6040805160208082528183019092525f9160208201818036833701905050905060028a60058111156108f0576108f0615329565b036109135761090e60c4356084353360e435610104355b8787611889565b610988565b60038a600581111561092757610927615329565b036109455761090e60c4356084353360e435610104355b87876118d4565b60048a600581111561095957610959615329565b036109735761090e60243533608435604435606435610907565b6109886024353360843560443560643561093e565b610992848261190a565b61099b816119c4565b505b6109a88689846119e8565b6109b0611a5e565b6001995050505050505050505090565b6060602080526707536561706f727460475260606020f35b5f6109e1611ab1565b600143034060801c335f525f60205260405f208054820192508281555050336001600160a01b03167f721c20121297512b72821b97f5326877ea8ecf4bb9948fea5bfcb6453074d37f82604051610a3a91815260200190565b60405180910390a290565b5f816001600160a01b0316600a5a610a5d9190615773565b6040515f8181818686fa925050503d805f8114610a95576040519150601f19603f3d011682016040523d82523d5f602084013e610a9a565b606091505b50909392505050565b5f813563ffffffff168201610402565b5f610ac661016060408051918201905290565b9050610ad58282610140611b28565b610af2610aeb610ae6846040610cdc565b611b31565b6040830152565b5f610b06610b01846060610cdc565b611b84565b9050610b13816060840152565b610b26610b1e825190565b610140840152565b50919050565b0190565b610140820151604080519084015180515f939284927fa66999307ad1bb4fde44d13a5d710bd7718e0c87c1eef68a571629fbf5b93d0292602090910190845b81811015610b9c578251601f1901805186825260c082208652905260209384019390920191600101610b6f565b508060051b6040512094505050505f7f42d81c6929ffdc4eb27a0808e40e82516ad42296c166065de7f812492304ff6e915060405160206060890151015f5b86811015610c08578151601f1901805186825260e082208552905260209283019290910190600101610bdb565b505060408051600587901b9020601f198a0180517ffa445660b7e21515a59617fcd68910b487aa5808b8abda3d78bc85df364b2c2f8252928b01805197815260608c018051938152610140909c019a8b5261018082209390915295909552939097525050925250919050565b5f8063ffffffff8335169050600581901b610c986020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610cca610cc4610cbf8484610cdc565b611240565b82850152565b602001610ca7565b5050505050919050565b5f6104f163ffffffff610cf46104ed8686610b2c8516565b16840190565b5f8063ffffffff8335169050600581901b610d1e6020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610d4a610cc4610d458484610cdc565b611bc7565b602001610d2d565b5f8063ffffffff8335169050600581901b610d766020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610da2610cc4610d9d8484610cdc565b611c09565b602001610d85565b60608036155f80610dbe8c8c85898b611c4c565b91509150610dd18c8b8b8b8b8787612029565b9450945050505097509795505050505050565b5f8063ffffffff8335169050600581901b610e086020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610e34610cc4610e2f8484610cdc565b61215b565b602001610e17565b5f610e45611ab1565b5f805f80855190505f5b81811015610f50575f878281518110610e6a57610e6a615792565b60209081029190910101518051909150600481608001516004811115610e9257610e92615329565b03610e9e575050610f48565b80519450610eab8161219e565b5f8181526001602052604081209850909650610ecd90879089903615156121d7565b50865460ff16610f455780610140015181606001515114610ef057610ef0612265565b610eff85878460200151612272565b865460ff191660011787556040517ff280791efe782edcf06ce15c8f4dff17601db3b88eb3805a0db7d77faf757f0490610f3c9088908490615895565b60405180910390a15b50505b600101610e4f565b5060019695505050505050565b5f8063ffffffff8335169050600581901b610f816020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610fad610cc4610fa88484610cdc565b61104b565b602001610f90565b5f8063ffffffff8335169050600581901b610fd96020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257611005610cc46110008484610cdc565b61230e565b602001610fe8565b60605f36151590505f806110258888858b5189611c4c565b9150915061103282612341565b61103f8887848885612380565b98975050505050505050565b5f61105e61020060408051918201905290565b60a0810180825290915061107a61107484610aa3565b82612453565b61108660016020840152565b61109260016040840152565b6110af6110a86110a3856020610cdc565b612489565b6060840152565b610b266110ba6124b1565b6080840152565b835160808101515f91906110e860048260048111156110e2576110e2615329565b146124cb565b5f80806110f78a36151561256c565b60408051600180825281830190925293965091945092505f9190816020015b61111e615027565b8152602001906001900390816111165790505090508a815f8151811061114657611146615792565b602002602001018190525061115b818b612764565b6111678684848b6128dd565b6040805160018082528183019092525f91602080830190803683375091925050503615156004878181111561119e5761119e615329565b146111c1576111af8d83885f6129dd565b6111bb86868684612a2f565b506111d3565b6111d0888e6080015183612b33565b95505b6111de888c8c612c03565b85825f815181106111f1576111f1615792565b6020026020010181815250506112088d8388612d26565b61122586895f01518a602001518d8c604001518d60600151612df3565b61122d611a5e565b5060019c9b505050505050505050505050565b5f61125361020060408051918201905290565b905061126760208381019083016040611b28565b60a0810180825261127a61107484610aa3565b61128b6110a86110a3856060610cdc565b610b266110ba6110a3856080610cdc565b60605f805f6112a9612e58565b90505f7f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c905060605f5281602052806040526303312e3660635260a05ff35b5f6112f1611ab1565b5f8083815b81811015611408573687878381811061131157611311615792565b90506020028101906113239190615977565b90505f61133360208301836154f5565b90505f61134660408401602085016154f5565b90505f61135960a0850160808601615996565b905081331483331417156004821417871796505f61138d61138261137a8790565b610ab36104da565b866101400135610b30565b5f8181526001602052604090819020805461ffff19166101001781559051909a509091506001600160a01b0380851691908616907f6bacc01dbe442496068f7d234edd811f1a5f833243e0aec824f86ab861f3c90d906113f09085815260200190565b60405180910390a385600101955050505050506112f6565b5050801561141857611418612f35565b506001949350505050565b63a61be9f05f52806020526024601cfd5b5f8061143f5f6124cb565b611447612f42565b426101643511154261014435111715611475576321ccfeb75f5261014435602052610164356040526044601cfd5b610204356102643510156114905763466aa6165f526004601cfd5b7f42d81c6929ffdc4eb27a0808e40e82516ad42296c166065de7f812492304ff6e608081905260a08790526060602460c037604060646101203760e060802061016052610264356102043560051b6102a0016001820181526020810190508881526080602460208301376101608860a0528760c0525f60e0525f6102043593505f5b84811015611566578060400261028401602081610100376040816101203760208101358317925060208401935060e0608020845260a0850194508b85528a6020860152604081606087013750600101611512565b6001850160051b610160206060526102643594505b848110156115b6578060400261028401925060a0840193508a845289602085015260408360608601376020830135919091179060010161157b565b506001600160a01b038111156115d3576339f3e3fd5f526004601cfd5b50505050505f7fa66999307ad1bb4fde44d13a5d710bd7718e0c87c1eef68a571629fbf5b93d029050806080528360a052606060c460c0376020610104610120375060c06080205f9081526020812060e05260843590611647826001600160a01b03165f9081526020819052604090205490565b7ffa445660b7e21515a59617fcd68910b487aa5808b8abda3d78bc85df364b2c2f60808190529091506040608460a03760605161010052896101205260a061014461014037816101e05261018060802094505050506102043560051b61018001828152336020820152608060408201526101206060820152600160808201528360a0820152606060c460c083013760a061026435026101e00160a4356084357f9d9af8e38d66c62e2c12f0225249fd9d721c54b83f48d9352c97c6cacdcb6f318385a35f60605260608101820160405250505f61172383612f8d565b905061172f8389612fde565b7101000000000000000000000000000001000182559150509550959350505050565b60c43560843560e4356101043584156117b9575f6040519050632671a55160e11b815260206004820152600160248201528660448201528460648201528360848201523360a48201528260c48201528160e48201526117b38682610104613033565b50611801565b60028660058111156117cd576117cd615329565b036117f457806001146117e3576117e3816130ea565b6117ef848433856130fb565b611801565b61180184843385856131b0565b505050505050565b346064356084356102643560061b5f80805b8381101561185a5761028481013592506102a481013591508683111561184357611843613287565b82870396506118528284613294565b60400161181b565b508585111561186b5761186b613287565b6118758486613294565b848611156118015761180133868803613294565b61189381836132ca565b816118ba57826001146118a9576118a9836130ea565b6118b5878787876130fb565b6118cb565b6118cb828260028a8a8a8a8a6132e8565b50505050505050565b6118dd83613367565b6118e781836132ca565b816118f9576118b587878787876131b0565b6118cb828260038a8a8a8a8a6132e8565b5f805f805f861561192f57505060843592503391505060c4356101043560e435611944565b50339350506084359150506024356064356044355b801561195257611952613379565b50600586901b6101e403356102643560061b5f80805b838110156119a95761028481013592506102a481013591508a156119935761199083876159b4565b95505b6119a1878a8486898f613386565b604001611968565b506119b886898988888e613386565b50505050505050505050565b60408151146119d05750565b5f6119dc826020015190565b90506103dc81836133bb565b611a048260a4355b331415600182116004909210919091161690565b15611a5957805f611a13825190565b9050608081901c63ffffffff8216611a3484826317b1f94282526001905250565b601c840163fb5014fc6060529350611a5060a4358886856133df565b5f6060526118cb565b505050565b7f00000000000000000000000000000000000000000000000000000000000000018015611a8f575f63929eee145d50565b63929eee145480611aa5575f63929eee145d5050565b50600163929eee145550565b7f00000000000000000000000000000000000000000000000000000000000000018015611af05763929eee145c156103b057637fa8a9875f526004601cfd5b63929eee145480611b135763929eee145c156103dc57637fa8a9875f526004601cfd5b600181146103dc57637fa8a9875f526004601cfd5b80838337505050565b5f63ffffffff8235166040519150808252602082018160051b81018060a084026020870183378293505b81841015611b745780845260209093019260a001611b5b565b60405250919392505050565b9052565b5f63ffffffff8235166040519150808252602082018160051b81018060c084026020870183378293505b81841015611b745780845260209093019260c001611bae565b5f611bd960a060408051918201905290565b9050611be782826080611b28565b611c04611bfd611bf8846080610cdc565b613427565b6080830152565b919050565b5f63ffffffff8235166040519150808252602082018160051b8101808360061b6020870183378293505b81841015611b7457808452602090930192604001611c33565b60605f611c5960016124cb565b86515f90600160e61b82351690806001600160401b03811115611c7e57611c7e61574b565b604051908082528060200260200182016040528015611ca7578160200160208202803683370190505b50945060010160051b91505f60205b83811015611ea8575f611ccc8c83613cce6104da565b90505f805f611cdb848e61256c565b6001600160781b0382166020880152919450925090505f829003611d025750505050611ea0565b6001600160781b0381166040808601919091528a8601849052845160a081015160c0820151608083015192909301518051600184119d909d179c600490931099509092915f5b81811015611dea575f838281518110611d6357611d63615792565b602002602001015190508b8151108d179c505f611d858989846080015161345e565b90508160800151826060015103611da25760608201819052611db7565b611db18989846060015161345e565b60608301525b5f611dd08360600151838a8a611dcb361590565b61349a565b606084018190526080909301929092525050600101611d48565b5087516060015180515f5b81811015611e94575f838281518110611e1057611e10615792565b602002602001015190505f611e2a8b8b846080015161345e565b90508160800151826060015103611e475760608201819052611e5c565b611e568b8b846060015161345e565b60608301525b5f611e718360600151838c8c611dcb36151590565b6060840181905260a0840180516080909501949094529092525050600101611df5565b50505050505050505050505b602001611cb6565b50506001600160e61b018103611ec057611ec06134ed565b50611ecb8888612764565b5f8060205b8381101561200e578581015192508215612006575f611ef28c83613cce6104da565b9050885f03611f0d575f878301819052602090910152612006565b60048151608001516004811115611f2657611f26615329565b14611fa957611f3f8188866001600587901c038e6134fa565b611f55575f878301819052602090910152612006565b602080820151604083015183516080810151930151611f8e9388936001600160781b039081169316913314156001909111168e17612a2f565b611fa4575f878301819052602090910152612006565b611fd4565b611fbb815f015182608001518c612b33565b878301819052935083611fd4575f602090910152612006565b886001900398505f815f01519050611fff85825f015183602001518c85604001518660600151612df3565b6001935050505b602001611ed0565b508061201c5761201c613555565b5050509550959350505050565b85518551606091829161203c81836159c7565b6001600160401b038111156120535761205361574b565b60405190808252806020026020018201604052801561208c57816020015b61207961505a565b8152602001906001900390816120715790505b5092505f5b828110156120e4576120bf8c5f8d84815181106120b0576120b0615792565b60200260200101518c8c613562565b8482815181106120d1576120d1615792565b6020908102919091010152600101612091565b505f5b8181101561213d576121168c60018c848151811061210757612107615792565b60200260200101518c5f613562565b848483018151811061212a5761212a615792565b60209081029190910101526001016120e7565b5061214b8b84888a896135b1565b9350505097509795505050505050565b5f61216c6040808051918201905290565b905061218661218261217d84610aa3565b61389a565b8252565b611c046121976110a3846020610cdc565b6020830152565b5f6121b38260600151518361014001516138b9565b81516001600160a01b03165f90815260208190526040902054610402908390610b30565b82545f90610100900460ff16156121fe5781156121f7576121f7856138c9565b505f610622565b83546201000090046001600160781b0316801561225957831561222957612224866138da565b612259565b8454600160881b90046001600160781b0316811061225957821561225057612250866138eb565b5f915050610622565b50600195945050505050565b632165628a5f526004601cfd5b33831480156122815750505050565b5f61228a612e58565b61190160f01b5f9081526002828152602287815260428320908390528651939450929190601f601d840116106102e260621984011016156122f4576122cf86886138fc565b61190160f01b5f908152600286905260228281526042822091905290975090506122f7565b50815b612304888285858a613992565b5050505050505050565b5f61231f6040808051918201905290565b9050612330612182610d9d84610aa3565b611c04612197610d9d846020610cdc565b80518060051b6040019050602082038051602082527f4b9f2d36e1b4c93de62cc077b00b1a91d84b6c31b4a14e012718dcca230689e78383a190525050565b8351606090806001600160401b0381111561239d5761239d61574b565b6040519080825280602002602001820160405280156123d657816020015b6123c361505a565b8152602001906001900390816123bb5790505b5091505f5b81811015612439575f8782815181106123f6576123f6615792565b6020026020010151905061241389825f0151836020015185613adb565b84838151811061242557612425615792565b6020908102919091010152506001016123db565b5061244787838787876135b1565b50505b95945050505050565b6124608282610160611b28565b612471610aeb610ae6846040610cdc565b6103dc612482610b01846060610cdc565b6060830152565b6040518135601f0163ffffffe01660200180838337913563ffffffff16815290810160405290565b5f6124c3602060408051918201905290565b5f8152905090565b7f000000000000000000000000000000000000000000000000000000000000000180156125185763929eee145c1561250a57637fa8a9875f526004601cfd5b8160010163929eee145d5050565b63929eee14548061254a5763929eee145c1561253b57637fa8a9875f526004601cfd5b8260010163929eee145d505050565b6001811461255f57637fa8a9875f526004601cfd5b505060020163929eee1455565b5f805f80855f015190506125898160a001518260c0015187613c80565b61259c57505f925082915081905061275d565b602086015160408701516001600160781b0391821694501691505f6004826080015160048111156125cf576125cf615329565b036125fc57600183850218905080156125ea576125ea613ca3565b506001935083925082915061275d9050565b50818311831517801561261157612611613ca3565b608082015160011615848411161561262b5761262b613cb0565b6126348261219e565b5f81815260016020526040812091965061265290879083908a6121d7565b61266557505f935083925061275d915050565b805460ff1661268057612680835f0151878a60600151612272565b8054608881901c8061269457869150612757565b6001600160781b038260101c169150600186036126b8578181039650809550612757565b8086036126d357908601858103868211029096039590612757565b80860296810291909502810186810387821102918290039695919003906001600160781b0386111561275757612717565b5f5b8215610b2657908290069190612706565b61272a6127248784612704565b88612704565b8015019687900496909504946001600160781b0386111561275757634e487b715f5260116020526024601cfd5b50505050505b9250925092565b805182515f5b82811015612853575f84828151811061278557612785615792565b602002602001015190505f815f015190508381106127aa576127aa8260200151613cbd565b5f8782815181106127bd576127bd615792565b6020026020010151905080602001516001600160781b03165f036127e35750505061284b565b80516040808201519085015163bfb3f8ce5f8760200151600181111561280b5761280b615329565b14612827575f61281c856060613cce565b9350636088d7de9150505b8251821061283857805f526004601cfd5b612843838389613cd9565b505050505050505b60010161276a565b505f5b818110156128d6575f85828151811061287157612871615792565b6020026020010151905080602001516001600160781b03165f0361289557506128ce565b8051608081015160608201516128b29085908363a8930e9a613d8c565b6128ca8483604001518363d69293326104da613d8c90565b5050505b600101612856565b5050505050565b60a084015160c08501516040860151515f805b8281101561295a575f8960400151828151811061290f5761290f615792565b602002602001015190505f815f01519050801584179350505f612946826060015183608001518c8c8b8b612941361590565b613df3565b6060830152506080018690526001016128f0565b5060808801516004811082168015612974576129746134ed565b505050506060860151515f5b81811015612304575f8860600151828151811061299f5761299f615792565b602002602001015190505f6129c4826060015183608001518b8b8a8a61294136151590565b60608301525060a0810151608090910152600101612980565b8351608081015160208201513314156001821160049092109190911616156128d6575f80612a12858489608001518988613e2e565b63fb5014fc6060529092509050611a5083602001518684846133df565b5f848152600160205260408120805482908290608881901c80612a5457889150612adc565b6001600160781b038260101c169150808803612a7857908801878111935090612adc565b97880297808802979190910288018781119350906001600160781b038083119089111715612adc57612aaa8883612704565b8015019788900497909104906001600160781b038083119089111715612adc57634e487b715f5260116020526024601cfd5b508215612b15578515612b09576040516310fda3e160e01b8152600481018a905260240160405180910390fd5b5f945050505050610622565b8660881b8160101b1760011782556001945050505050949350505050565b5f83610140015184606001515114612b4d57612b4d612265565b83515f8080612b5c8888613fac565b915091505f8082845f885af16001600160a01b0385165f908152600260205260409020805460018101909155606086901b189550925082612bbb578515612bae57612ba5614056565b612bae8561409d565b505f93506104f192505050565b505050505f805f612bd8876040015188606001516104da6140ae90565b925092509250825f14612bee57612bee8461409d565b60408701919091526060860152509392505050565b6040805160208082528183019092525f916020820181803683375050506040850151519091505f5b81811015612c7b575f86604001518281518110612c4a57612c4a615792565b60200260200101519050846080820152612c7281885f0151896101200151876104da61432790565b50600101612c2b565b50506060840151515f90815b81811015612d09575f87606001518281518110612ca657612ca6615792565b602002602001015190505f6005811115612cc257612cc2615329565b81516005811115612cd557612cd5615329565b03612cf1574793508381606001511115612cf157612cf1613287565b612d00813389886143276104da565b50600101612c87565b5050612d14826119c4565b504780156128d6576128d63382613294565b8251608081015160208201515f92839283928392916004811060019091111633909114151615612d8857612d69612d6361010083015190565b5190565b8861441c565b9093509150612d7a60208201612d5f565b945063fb5014fc9350612dd4565b600481608001516004811115612da057612da0615329565b0361230457805194505f8560601b9050612dc187838b608001518b8561445d565b639397928596509094509250612dd49050565b612dde6060859052565b612dea858785856133df565b5f606052612304565b60608290506060829050856001600160a01b0316876001600160a01b03167f9d9af8e38d66c62e2c12f0225249fd9d721c54b83f48d9352c97c6cacdcb6f318a888686604051612e469493929190615a13565b60405180910390a35050505050505050565b5f7f00000000000000000000000000000000000000000000000000000000000005394614612f10575060408051608080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f5f9081527f32b5c112df393a49218d7552f96b2eeb829dfb4272f4f24eef510a586b85feef6020527f95f740a33d720b7cd93c75d515ac95ca3bbaa2594cce46ea48e00974ea8fcd14855246606090815230845260a08220949095529093529190915290565b507f8bebed3dbe91a82da0dc94c8d370c160ad6db1b32164303e65b8544bae7e2f5590565b63fed398fc5f526004601cfd5b600435602014610224356102401416610244356102606102643560061b01141660186101243510600160a01b60843560a4351760c4356024351717101616806103b0576103b0614528565b5f8181526001602081905260409091209060843590612fb290849084903615156121d7565b50815460ff16610b2657610b268184612fd9602463ffffffff6102443516016124896104da565b612272565b5f612feb8260a4356119f0565b15610402575f805f612ffc86614535565b63fb5014fc6060529194509250905061301c60a43587601c8601856133df565b5f60605260209190910160801b1781529392505050565b604080517f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c60ff60a01b175f90815260208690527f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f83526055600b20919092526001600160a01b031690505f805f805260205f85875f875af191505f519050816130c8576130bf614056565b6130c8836145ed565b6001600160e01b03198116632671a55160e11b146118015761180186846145fe565b6369f958275f52806020526024601cfd5b833b61311257635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af1806131a2573d1561318057601f3d0160051c8260051c8160030281831115613169578183036003028280028480020360091c01015b5a60208201101561317c573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b6131c757635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af18061326c573d1561324b57601f3d0160051c8560051c8160030281831115613234578183036003028280028480020360091c01015b5a602082011015613247573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b638ffff9805f526004601cfd5b61329d81613367565b5f805f805f85875af1905080611a59576132b5614056565b63bc806b965f5282602052816040526044601cfd5b5f6132d6836020015190565b9050818114611a5957611a59836119c4565b5f60208851036133225750604080885260208089018a9052632671a55160e11b918901919091526044880152600160648801819052613331565b50606487018051600101908190525b603c60c082028901038781528660208201528560408201528460608201528360808201528260a082015250505050505050505050565b806103b0576391b3e5145f526004601cfd5b636ab37ce75f526004601cfd5b61338f83613367565b61339981836132ca565b816133aa576117ef86868686614613565b611801828260018989895f8a6132e8565b6064810151604082019060c0026044016133d6848383613033565b50506020905250565b5f806001600160e01b03198451165f805260205f85875f8b5af15f51909350149050816134185761340e614056565b846080526024607cfd5b8061180157846080526024607cfd5b5f8063ffffffff83351690506001810160051b61344a8160408051918201905290565b9250613457848483611b28565b5050919050565b5f82840361346d5750806104f1565b82848309156134835763c63cf0895f526004601cfd5b5f61348e8584615aaf565b93909304949350505050565b5f8486146134e357838303428590038082035f6134b7838a615aaf565b6134c1838c615aaf565b6134cb91906159c7565b9050858487830304018115150294505050505061244a565b5092949350505050565b6312d3f5a35f526004601cfd5b8451608081015160208201515f92916004811060019091111633909114151615610f50575f8061353187848b608001518b8a613e2e565b9150915061354b836020015188848463fb5014fc8a614707565b935050505061244a565b63d5da9a1b5f526004601cfd5b61356a61505a565b83515f0361357b5761357b85614774565b5f85600181111561358e5761358e615329565b036135a45761359f86858385614785565b61244a565b61244a86858333876148f5565b84516060905f816001600160401b038111156135cf576135cf61574b565b6040519080825280602002602001820160405280156135f8578160200160208202803683370190505b506040805160208082528183019092529192505f9190602082018180368337505089519192505060010160051b60205b81811015613687575f61363e8b83613cce6104da565b8051606081015191925090801561367c57478111825115161561366857638ffff9805f526004601cfd5b61367c828460200151856040015189614327565b505050602001613628565b50505f5b838110156137f3575f8a82815181106136a6576136a6615792565b6020026020010151905080602001516001600160781b03165f036136ed575f8483815181106136d7576136d7615792565b91151560209283029190910190910152506137eb565b600184838151811061370157613701615792565b911515602092830291909101909101528051604081015180515f5b81811015613786575f83828151811061373757613737615792565b6020026020010151905080606001515f1461377357608081018051908e9052855161012087015161376d9184918c6143276104da565b60808201525b608081015160609091015260010161371c565b505050606081015180515f5b818110156137e5575f8382815181106137ad576137ad615792565b602002602001015190505f81606001519050805f146137d1576137d1888483614a2c565b5060a0810151606090910152600101613792565b50505050505b60010161368b565b506137fd816119c4565b47801561380e5761380e3382613294565b8515613884575f5b848110156138825783818151811061383057613830615792565b60200260200101511561387a5761387a8b828151811061385257613852615792565b60200260200101518a8b848151811061386d5761386d615792565b6020026020010151612d26565b600101613816565b505b61388c611a5e565b509098975050505050505050565b5f6138ad61016060408051918201905290565b9050611c048282612453565b808210156103dc576103dc614a45565b631a5155745f52806020526024601cfd5b63ee9e0e635f52806020526024601cfd5b6310fda3e15f52806020526024601cfd5b5f805f84516001811660410380820360051c9250808752806020018701915050805160e81c6003820191506001811660051b868152825160208218525060015b838110156139685760405f2082821c60051b60209081169182529384018051919094185260010161393c565b50505060405f2091505f61397b82614a52565b5f9081526020939093525050604090209392505050565b5f805f528151602083038051826041035f600182116139f557604087015160608801515f1a83156139d657601b8260ff1c0190506001600160ff1b03821660408a01525b88528a855260205f60808760015afa508385528588526040880152505f515b8a148a1515169450849050613abe57858552604082526044850380516040870351630b135d3f60e11b835289604089035260205f60648b01858f5afa96508615613ab257630b135d3f60e11b5f5114613ab2578b3b15613a5c57634f7fb80d5f526004601cfd5b6001866041031115613a7557638baa579f5f526004601cfd5b64010100000060608901515f1a1a15604187141615613aa557631f003d0a5f5260608801515f1a6020526024601cfd5b63815e1d645f526004601cfd5b8385529152603f198601525b5050508061180157613ace614056565b634f7fb80d5f526004601cfd5b613ae361505a565b8251158451151715613afc576398e9db6e5f526004601cfd5b613b0461505a565b613b118685835f806148f5565b805160608101515f03613b2657509050610622565b613b368787858460800151614785565b82516040828101519082015160208085015190840151855185511891181791181715613b6d5763bced929d5f52846020526024601cfd5b806060015182606001511115613bf4575f865f81518110613b9057613b90615792565b60200260200101519050816060015183606001510389825f015181518110613bba57613bba615792565b60200260200101515f015160600151826020015181518110613bde57613bde615792565b6020026020010151606001818152505050613c75565b5f875f81518110613c0757613c07615792565b60200260200101519050826060015182606001510389825f015181518110613c3157613c31615792565b60200260200101515f015160400151826020015181518110613c5557613c55615792565b602002602001015160600181815250508260600151826060018181525050505b505050949350505050565b428084111590831116818015613c94575080155b156104f1576104f18484614e61565b635a052b325f526004601cfd5b63a11b63ff5f526004601cfd5b63133c37c65f52806020526024601cfd5b5f6104f18284015190565b5f838381518110613cec57613cec615792565b602002602001015190505f815f01519050613d078160031090565b613d1357613d13614e76565b60408201518015613d3657613d318460600151828660800151614e83565b613d49565b60808401515115613d4957613d49614ecd565b6004821460030383816005811115613d6357613d63615329565b90816005811115613d7657613d76615329565b9052505050606090920151604090910152505050565b82515f5b81811015611801575f858281518110613dab57613dab615792565b60209081029190910101518051604082015191925090600382116004881415821515171615613de557855f5288602052836040526044601cfd5b505050806001019050613d90565b5f868803613e0d57613e0686868961345e565b90506107df565b6107dc613e1b87878b61345e565b613e2688888b61345e565b86868661349a565b5f805f613e39614eda565b6301e4d72a815260208082015260408101898152336060830152601c820194509091508751604082015287613e79613e7260a083015190565b60e0840152565b613e8f613e8760c083015190565b610100840152565b613ea5613e9d60e083015190565b610120840152565b610140613eb3816060850152565b5f613ebf604084015190565b90505f613ece82848701614ee4565b928301929050613edf836080870152565b5f613eeb606086015190565b90505f613efa82868901614f4a565b948501949050613f0b8560a0890152565b5f613f188e878a01614faf565b959095019450613f298560c0890152565b8685015f613f378e83614fce565b602497019687019a50613f539050613f4e8c8c0190565b614ffe565b8060408b901b60808b901b17178f610100018181525050613f7d8c82611b8090919063ffffffff16565b60058c8e51613f8c91906159b4565b613f97911b8b6159b4565b99505050505050505050509550959350505050565b5f8083613fb7614eda565b639891976581523360208201908152608060408301819052601c9092019450905f613fe3604085015190565b90505f613ff282848601614ee4565b928301929050614003836040860152565b5f61400f606087015190565b90505f61401e82868801614ee4565b94850194905061402f856060880152565b895f61403d82898901614faf565b9a9d96909a016004019b50949950505050505050505050565b3d1561409b57601f3d0160051c60405160051c8160030281831115614088578183036003028280028480020360091c01015b5a602082011015611a59573d5f803e3d5ffd5b565b63939792855f52806020526024601cfd5b60603d105f8080808080866141205760405f803e5f51935060205192503d60208501113d60208501118082179850505086614120576020845f3e5f51915060208360203e60205190508160071b60208501018160a0026020850101803d10823d101761ffff8486171117985050505f80525b86614152575f8061413584602088018d61415b565b9250975061414783602087018c61423b565b929092179850909550505b5050505061275d565b5f806040519150825160c08602602001830160405285835260208660010160051b8085018360010160051b8701614199858b81811090829003020190565b60010160051b8a861196505b808510156141f957828589015260808a843e6060830151955085608084015260608201518681116141d685856142e2565b17881797505060808a01995060a08301925060a0820191506020850194506141a5565b50505b8183101561422f578083870152608088823e6060810151608082015260808801975060a0810190506020830192506141fc565b50505050935093915050565b604051815180851190808603818710028101602060e08202850181016040528185526001928301600590811b87019390920190911b908185015b8282101561422f57808287015260a088823e60206060890160a083013e606081015160608501516142b26080840151608088015180159114171590565b818311176142c084886142e2565b60a09b909b019a179690961795505060c0938401936020929092019101614275565b5f81516040830151801560038311161561430457506040840151600119909101905b604085015181148551831460208701516020870151141616159250505092915050565b5f8451600581111561433b5761433b615329565b0361437857604084015160208501516001600160a01b0316171561436157614361613379565b61437384608001518560600151613294565b614416565b60018451600581111561438d5761438d615329565b036143be576040840151156143a4576143a4613379565b614373846020015184866080015187606001518686613386565b6002845160058111156143d3576143d3615329565b036143f7576143738460200151848660800151876040015188606001518787611889565b61441684602001518486608001518760400151886060015187876118d4565b50505050565b608082901c63ffffffff604084901c811690808516906144449084906317b1f94290611b8016565b601c830192506144548482614fce565b50509250929050565b5f80614467614eda565b63f4dd92ce815287841860a0820152601c8101925060200160a0808252875f614491604083015190565b90505f6144a082858701614ee4565b9384019390506144b1846020870152565b5f6144bd606085015190565b90505f6144cc82878901614f4a565b9586019590506144dd866040890152565b5f6144ea8d888a01614faf565b9687019690506144fb8760608a0152565b5f6145088d898b01614fce565b905080880197508760040199505050505050505050509550959350505050565b6339f3e3fd5f526004601cfd5b6301e4d72a6102043560051b6080019081525f808260208082015260408101858152336060830152601c919091019061456f608435610aeb565b61458061014460e083016060611b28565b61014061458e816060840152565b61459c60a082016080840152565b61016060a06102643581029290920101906145b8908290840152565b6145c25f82840152565b6020016145d08160c0840152565b5f9181019182526020820196909652939560449095019492505050565b63d13d53d45f52806020526024601cfd5b631cf99b265f5281602052806040526044601cfd5b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166146f85780873b1515166146f857806146e757816146ca573d156146a957601f3d0160051c8360051c8160030281831115614692578183036003028280028480020360091c01015b5a6020820110156146a5573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b5f805f6001600160e01b03198751165f805260205f888a5f8e5af15f5190935014905081614753578361473e575f925050506106d7565b614746614056565b845f52876020526024601cfd5b8061476557845f52876020526024601cfd5b50600198975050505050505050565b63375c24c15f52806020526024601cfd5b5f805f85865160051b87015b808210156148a2576020820191508851825151106147b1576147b16148d6565b81515160051b60208a01015180516020845101515f6040830151602085015115815184101517156147e6575050505050614791565b8260051b60208201015191505060608101935083518901915083511589831060011b17881797508198505f84528a51935086156001811461484f5760608220881860408d01516101208601511860208e015186511817171561484a5761484a6148d6565b614898565b8151855260208201516020860152604082015160408601528a6080860152835160208d015261012084015160408d015260608520975060208d0192508683181561489857865183525b5050505050614791565b5050508160608551015280156148cf57600181036148c7576391b3e5145f526004601cfd5b6148cf6148e3565b5050614416565b637fda72795f526004601cfd5b634e487b715f5260116020526024601cfd5b5f805f86875160051b88015b808210156149f7576020820191508151518a518110614922576149226148d6565b8060051b60208c01015190506020835101515f606083510151602084015115815184101517156149555750505050614901565b8260051b60208201015191505060608101925082518801915082511588831060011b17871796508197505f83528a5192508515600181146149a75760a0822087146149a2576149a26148d6565b6149ee565b815184526020820151602085015260408201516040850152608082015160808501528a60208d01528960408d015260a08220965060208d019250858318156149ee57855183525b50505050614901565b50508551606001839052508015614a255760018103614a1d576391b3e5145f526004601cfd5b614a256148e3565b50506128d6565b63a5f542085f528260205281604052806060526064601cfd5b63466aa6165f526004601cfd5b5f614e58565b5f6009821015614bb1576005821015614b0e576003821015614ac1577f832c58a5b611aadcfa6a082ac9d04bace53d8278387f10040347b7e98eb5b30260018314027fbf8e29b89f29ed9b529c154a63038ffca562f8d7cd1e2545dda53a1b582dde3018610402565b7ff3e8417a785f980bdaf134fa0274a6bf891eeb8195cd94b09d2aa651046e28bc60038314027fa02eb7ff164c884e5e2c336dc85f81c6a93329d8e9adf214b32729b894de2af118610402565b6007821015614b64577f25d02425402d882d211a7ab774c0ed6eca048c4d03d9af40132475744753b2a360058314027f1c19f71958cdd8f081b4c31f7caf5c010b29d12950be2fa1c95070dc47e30b5518610402565b7fb58d772fb09b426b9dece637f61ca9065f2b994f1464b51e9207f55f7c8f594860078314027f7ff98d9d4e55d876c5cfac10b43c04039522f3ddfb0ea9bfe70c68cfb5c7cc1418610402565b6011821015614d0957600d821015614c6657600b821015614c19577f6f0ec38c21f6f583ab7f3c5413c773ffd5344c34fde1d390958e438bf667448f60098314027fd1d97d1ef5eaa37a4ee5fbf234e6f6d64eb511eb562221cd7edfbdde0848da0518610402565b7f32f4e7485d6485f9f6c255929b9905c62ba919758bbe231f231eaeecf33d810c600b8314027fbb98d87cc12922b83759626c5f07d72266da9702d19ffad6a514c73a89002f5f18610402565b600f821015614cbc577f8df51df98847160517f5b1186b4bc3f418d98b8a7f17f1292f392d79d600d79e600d8314027f6b5b04cbae4fcb1a9d78e7b2dfc51a36933d023cf6e347e03d517b472a85259018610402565b7fcc4886e37eedd9aacd6c1c2c9247197a621a71282e87a7cbc673f3736d9aa141600f8314027f1da3eed3ecef6ebaa6e5023c057ec2c75150693fd0dac5c90f4a142f9879fde818610402565b6015821015614db5576013821015614d68577f2d7a3ed6dab270fdb8e054b2ad525f0ce2a8b89cc76c17f0965434740f673a5560118314027fc3939feff011e53ab8c35ca3370aad54c5df1fc2938cd62543174fa6e7d8587718610402565b7f54b3212a178782f104e0d514b41a9a5c4ca9c980bf6597c3cecbf280917e202a60138314027f5a4f867d3d458dabecad65f6201ceeaba0096df2d0c491cc32e6ea4e6435001718610402565b6017821015614e0b577fbb40bf8cea3a5a716e2b6eb08bbdac8ec159f82f380783db3c56904f15a43d0460158314027f3bd8cff538aba49a9c374c806d277181e9651624b3e31111bc0624574f8bca1d18610402565b7f403be09941a31d05cfc2f896505811353d45d38743288b016630cce39435476a60178314027f1d51df90cba8de7637ca3e8fe1e3511d1dc2f23487d05dbdecb781860c21ac1c18610402565b61040282614a58565b6321ccfeb75f5281602052806040526044601cfd5b6394eb6af65f526004601cfd5b5f835f5260205f2060208301835160051b81015b80821015614ebe57815180841160051b93845260209384185260405f209290910190614e97565b50508314905080614416576144165b6309bde3395f526004601cfd5b5f61041260405190565b5f825180835260208401602084018260051b82015b80831015614f375782518051835260208101516020840152604081015160408401526060810151606084015250602083019250608082019150614ef9565b5050508060071b60200191505092915050565b5f80614f54845190565b8084529050602084810190600583901b860181019085015b82821115614f9c575f614f7e84615008565b9050614f8c818360a0615011565b506020929092019160a001614f6c565b60a0840260200194505050505092915050565b5f63ffffffe0603f614fbf855190565b01169050610402838383615011565b5f80614fd8845190565b8084529050600581901b614ff3602086810190860183615011565b602001949350505050565b6103b06040829052565b5f610402825190565b8082828560045afa80153d151715614416575f80fd5b6040518060a0016040528061503a61509c565b81525f602082018190526040820152606080820181905260809091015290565b60408051610100810182525f606082018181526080830182905260a0830182905260c0830182905260e083018290528252602082018190529181019190915290565b6040518061016001604052805f6001600160a01b031681526020015f6001600160a01b0316815260200160608152602001606081526020015f60048111156150e6576150e6615329565b81525f6020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b5f60208284031215615125575f80fd5b81356001600160401b0381111561513a575f80fd5b820161024081850312156104f1575f80fd5b5f81518084525f5b8181101561517057602081850181015186830182015201615154565b505f602082860101526020601f19601f83011685010191505092915050565b602081525f6104f1602083018461514c565b5f602082840312156151b1575f80fd5b5035919050565b5f602082840312156151c8575f80fd5b81356001600160401b038111156151dd575f80fd5b820161016081850312156104f1575f80fd5b5f8083601f8401126151ff575f80fd5b5081356001600160401b03811115615215575f80fd5b6020830191508360208260051b850101111561522f575f80fd5b9250929050565b80356001600160a01b0381168114611c04575f80fd5b5f805f805f805f805f805f60e08c8e031215615266575f80fd5b6001600160401b03808d35111561527b575f80fd5b6152888e8e358f016151ef565b909c509a5060208d013581101561529d575f80fd5b6152ad8e60208f01358f016151ef565b909a50985060408d01358110156152c2575f80fd5b6152d28e60408f01358f016151ef565b909850965060608d01358110156152e7575f80fd5b506152f88d60608e01358e016151ef565b909550935060808c0135925061531060a08d01615236565b915060c08c013590509295989b509295989b9093969950565b634e487b7160e01b5f52602160045260245ffd5b60068110611b8057611b80615329565b61535882825161533d565b6020818101516001600160a01b0390811691840191909152604080830151908401526060808301519084015260809182015116910152565b5f815180845260208085019450602084015f5b838110156153e55781516153b888825161534d565b808401516001600160a01b031660a08901526040015160c088015260e090960195908201906001016153a3565b509495945050505050565b604080825283519082018190525f906020906060840190828701845b8281101561542a57815115158452928401929084019060010161540c565b50505083810360208501526106d78186615390565b5f8060208385031215615450575f80fd5b82356001600160401b03811115615465575f80fd5b615471858286016151ef565b90969095509350505050565b5f805f8060408587031215615490575f80fd5b84356001600160401b03808211156154a6575f80fd5b6154b2888389016151ef565b909650945060208701359150808211156154ca575f80fd5b506154d7878288016151ef565b95989497509550505050565b602081525f6104f16020830184615390565b5f60208284031215615505575f80fd5b6104f182615236565b5f806040838503121561551f575f80fd5b82356001600160401b03811115615534575f80fd5b830160408186031215615545575f80fd5b946020939093013593505050565b5f805f805f60808688031215615567575f80fd5b85356001600160401b038082111561557d575f80fd5b9087019060a0828a031215615590575f80fd5b909550602087013590808211156155a5575f80fd5b506155b2888289016151ef565b909550935050604086013591506155cb60608701615236565b90509295509295909350565b5f805f805f805f8060a0898b0312156155ee575f80fd5b88356001600160401b0380821115615604575f80fd5b6156108c838d016151ef565b909a50985060208b0135915080821115615628575f80fd5b6156348c838d016151ef565b909850965060408b013591508082111561564c575f80fd5b506156598b828c016151ef565b999c989b509699959896976060870135966080013595509350505050565b5f805f805f805f6080888a03121561568d575f80fd5b87356001600160401b03808211156156a3575f80fd5b6156af8b838c016151ef565b909950975060208a01359150808211156156c7575f80fd5b6156d38b838c016151ef565b909750955060408a01359150808211156156eb575f80fd5b506156f88a828b016151ef565b909450925061570b905060608901615236565b905092959891949750929550565b606081525f61572b606083018661514c565b6020830194909452506001600160a01b0391909116604090910152919050565b634e487b7160e01b5f52604160045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b5f8261578d57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f815180845260208085019450602084015f5b838110156153e55781516157ce88825161533d565b838101516001600160a01b03168885015260408082015190890152606080820151908901526080908101519088015260a090960195908201906001016157b9565b5f815180845260208085019450602084015f5b838110156153e557815161583788825161533d565b808401516001600160a01b0390811689860152604080830151908a0152606080830151908a0152608080830151908a015260a091820151169088015260c09096019590820190600101615822565b60058110611b8057611b80615329565b828152604060208201526158b56040820183516001600160a01b03169052565b5f60208301516158d060608401826001600160a01b03169052565b5060408301516101608060808501526158ed6101a08501836157a6565b91506060850151603f198584030160a086015261590a838261580f565b925050608085015161591f60c0860182615885565b5060a085015160e085015260c0850151610100818187015260e0870151915061012082818801528188015192506101409150828288015280880151848801525080870151610180870152505050809150509392505050565b5f823561015e1983360301811261598c575f80fd5b9190910192915050565b5f602082840312156159a6575f80fd5b8135600581106104f1575f80fd5b818103818111156104025761040261575f565b808201808211156104025761040261575f565b5f815180845260208085019450602084015f5b838110156153e557615a0087835161534d565b60a09690960195908201906001016159ed565b5f6080808301878452602060018060a01b03808916602087015260406080604088015283895180865260a08901915060208b0195505f5b81811015615a8b578651615a5f84825161533d565b808701518616848801528481015185850152606090810151908401529585019591870191600101615a4a565b50508781036060890152615a9f818a6159da565b9c9b505050505050505050505050565b80820281158282048414176104025761040261575f56fea164736f6c6343000818000a","storage":{}},"0x6265cc8d1b28edfd4d76c80bf774c0d446fffbde":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610090575f3560e01c80633f15457f116100635780633f15457f1461010f5780637adbf973146101225780637dc0d1d0146101355780638bbedf7514610147578063be27b22c1461015a575f80fd5b806301ffc9a7146100945780631ecfc411146100bc578063224199c2146100d157806330349ebe146100e4575b5f80fd5b6100a76100a23660046115b1565b61016d565b60405190151581526020015b60405180910390f35b6100cf6100ca3660046115ef565b6101a3565b005b6100cf6100df3660046117e0565b6102de565b6002546100f7906001600160a01b031681565b6040516001600160a01b0390911681526020016100b3565b6001546100f7906001600160a01b031681565b6100cf6101303660046115ef565b61063c565b5f546100f7906001600160a01b031681565b6100cf610155366004611889565b61076d565b6100cf61016836600461190b565b6107f1565b5f6001600160e01b031982166301ffc9a760e01b148061019d57506001600160e01b031982166317d8f49b60e01b145b92915050565b6001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa1580156101ea573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061020e919061196b565b90505f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561024d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610271919061196b565b9050336001600160a01b03821614610287575f80fd5b600280546001600160a01b0319166001600160a01b0385169081179091556040519081527f9176b7f47e4504df5e5516c99d90d82ac7cbd49cc77e7f22ba2ac2f2e3a3eba8906020015b60405180910390a1505050565b5f546040516321ae60b160e11b81526001600160a01b039091169063435cc1629061030f90879087906004016119d3565b5f604051808303815f875af115801561032a573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526103519190810190611a6b565b92505f805f610360888761088b565b91945092509050336001600160a01b038216146103da5760405162461bcd60e51b815260206004820152602d60248201527f4f6e6c79206f776e65722063616e2063616c6c2070726f7665416e64436c616960448201526c36abb4ba342932b9b7b63b32b960991b60648201526084015b60405180910390fd5b6001600160a01b038416156105bb576001600160a01b03851661044e5760405162461bcd60e51b815260206004820152602660248201527f43616e6e6f74207365742061646472206966207265736f6c766572206973206e6044820152651bdd081cd95d60d21b60648201526084016103d1565b6001546040516305ef2c7f60e41b815260048101859052602481018490523060448201526001600160a01b0387811660648301525f608483015290911690635ef2c7f09060a4015f604051808303815f87803b1580156104ac575f80fd5b505af11580156104be573d5f803e3d5ffd5b505050505f83836040516020016104df929190918252602082015260400190565b60408051808303601f1901815290829052805160209091012062d5fa2b60e81b8252600482018190526001600160a01b03878116602484015290925087169063d5fa2b00906044015f604051808303815f87803b15801561053e575f80fd5b505af1158015610550573d5f803e3d5ffd5b5050600154604051635b0fc9c360e01b8152600481018590526001600160a01b0386811660248301529091169250635b0fc9c391506044015f604051808303815f87803b15801561059f575f80fd5b505af11580156105b1573d5f803e3d5ffd5b5050505050610632565b6001546040516305ef2c7f60e41b815260048101859052602481018490526001600160a01b03838116604483015287811660648301525f608483015290911690635ef2c7f09060a4015f604051808303815f87803b15801561061b575f80fd5b505af115801561062d573d5f803e3d5ffd5b505050505b5050505050505050565b6001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa158015610683573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106a7919061196b565b90505f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106e6573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061070a919061196b565b9050336001600160a01b03821614610720575f80fd5b5f80546001600160a01b0319166001600160a01b0385169081179091556040519081527fb3eacd0e351fafdfefdec84e1cd19679b38dbcd63ea7c2c24da17fd2bc3b3c0e906020016102d1565b5f546040516321ae60b160e11b81526001600160a01b039091169063435cc1629061079e90859085906004016119d3565b5f604051808303815f875af11580156107b9573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526107e09190810190611a6b565b90506107ec83826107f1565b505050565b5f805f6107fe858561088b565b6001546040516306ab592360e01b815260048101859052602481018490526001600160a01b03808416604483015294975092955090935091909116906306ab5923906064016020604051808303815f875af115801561085f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108839190611add565b505050505050565b5f8080806108998682610a40565b60ff1690506108aa86600183610a63565b92505f6108dc6108bb836001611b08565b6001848a516108ca9190611b1b565b6108d49190611b1b565b899190610a85565b6002546040516327c482cf60e11b81529192506001600160a01b031690634f89059e9061090d908490600401611b2e565b602060405180830381865afa158015610928573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061094c9190611b40565b6109a45760405162461bcd60e51b815260206004820152602360248201527f506172656e74206e616d65206d7573742062652061207075626c6963207375666044820152620ccd2f60eb1b60648201526084016103d1565b6109ae815f610b05565b5f549095506109c7906001600160a01b03168888610de3565b5060408051602081018890529081018690529093506001600160a01b03841690606001604051602081830303815290604052805190602001207fa2e66ce20e6fb2c4f61339c364ad79f15160cf5307230c8bc4d628adbca2ba3989604051610a2f9190611b2e565b60405180910390a350509250925092565b5f828281518110610a5357610a53611b5f565b016020015160f81c905092915050565b82515f90610a718385611b08565b1115610a7b575f80fd5b5091016020012090565b8251606090610a948385611b08565b1115610a9e575f80fd5b5f8267ffffffffffffffff811115610ab857610ab861160a565b6040519080825280601f01601f191660200182016040528015610ae2576020820181803683370190505b50905060208082019086860101610afa82828761100b565b509095945050505050565b5f80610b118484610a40565b60ff169050805f03610b2657505f905061019d565b5f610b4585610b358487611b08565b610b40906001611b08565b610b05565b90505f610b5e610b56866001611b08565b879085610a63565b604080516020810185905290810182905290915060600160408051808303601f190181529082905280516020909101206001546302571be360e01b8352600483018290529095505f916001600160a01b03909116906302571be390602401602060405180830381865afa158015610bd7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bfb919061196b565b90506001600160a01b0381161580610c1b57506001600160a01b03811630145b610c7a5760405162461bcd60e51b815260206004820152602a60248201527f43616e6e6f7420656e61626c652061206e616d65206f776e656420627920736f6044820152696d656f6e6520656c736560b01b60648201526084016103d1565b6001600160a01b0381163014610dd95782610d5e576001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa158015610cd6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cfa919061196b565b60405163232e3b3b60e21b8152600481018590523060248201529091506001600160a01b03821690638cb8ecec906044015f604051808303815f87803b158015610d42575f80fd5b505af1158015610d54573d5f803e3d5ffd5b5050505050610dd9565b6001546040516306ab592360e01b815260048101859052602481018490523060448201526001600160a01b03909116906306ab5923906064016020604051808303815f875af1158015610db3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610dd79190611add565b505b5050505092915050565b5f80610e016040518060400160405280606081526020015f81525090565b610e1985516005610e129190611b08565b8290611060565b50604080518082019091526005815264045f656e7360d81b6020820152610e419082906110c3565b50610e4c81866110c3565b50805160405163021e646f60e21b81525f9182916001600160a01b038a169163087991bc91610e8091601091600401611b73565b606060405180830381865afa158015610e9b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ebf9190611ba7565b93509150506bffffffffffffffffffffffff198216158015610ee057508551155b15610ef3575f8094509450505050611003565b855160208701206bffffffffffffffffffffffff19838116911614610f16575f80fd5b5f610f2187826110ef565b90505b80515160208201511015610ff857610f4b816080015183610f459190611bfc565b4261114a565b610fbd5760405162461bcd60e51b815260206004820152603c60248201527f444e53207265636f7264206973207374616c653b2072656672657368206f722060448201527f64656c657465206974206265666f72652070726f63656564696e672e0000000060648201526084016103d1565b5f80610fcd898460a00151611162565b925090508115610fe857965060019550611003945050505050565b5050610ff3816111d1565b610f24565b505f80945094505050505b935093915050565b602081106110435781518352611022602084611b08565b925061102f602083611b08565b915061103c602082611b1b565b905061100b565b905182516020929092036101000a5f190180199091169116179052565b60408051808201909152606081525f602082015261107f602083611c20565b156110a75761108f602083611c20565b61109a906020611b1b565b6110a49083611b08565b91505b506020828101829052604080518085525f815290920101905290565b60408051808201909152606081525f60208201526110e883845f0151518485516112b6565b9392505050565b6111376040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261019d816111d1565b5f806111568385611c3f565b60030b12159392505050565b5f805b83518310156111c4575f6111798585610a40565b60ff169050611189600185611b08565b93505f8061119887878561139c565b9250905081156111b0579350600192506111ca915050565b6111ba8387611b08565b9550505050611165565b505f9050805b9250929050565b60c081015160208201819052815151116111e85750565b5f6111fa825f015183602001516113f5565b82602001516112099190611b08565b82519091506112189082611454565b61ffff16604083015261122c600282611b08565b825190915061123b9082611454565b61ffff16606083015261124f600282611b08565b825190915061125e908261147a565b63ffffffff166080830152611274600482611b08565b82519091505f906112859083611454565b61ffff169050611296600283611b08565b60a0840181905291506112a98183611b08565b60c0909301929092525050565b60408051808201909152606081525f602082015282518211156112d7575f80fd5b60208501516112e68386611b08565b11156113195761131985611309876020015187866113049190611b08565b6114a2565b611314906002611c66565b6114b8565b5f808651805187602083010193508088870111156113375787860182525b505050602084015b602084106113775780518252611356602083611b08565b9150611363602082611b08565b9050611370602085611b1b565b935061133f565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b5f806113a8858561147a565b63ffffffff1663613d3078146113c257505f905080611003565b602c8310156113d557505f905080611003565b6113e9856113e4866004611b08565b6114d5565b91509150935093915050565b5f815b8351811061140857611408611c7d565b5f6114138583610a40565b60ff169050611423816001611b08565b61142d9083611b08565b9150805f0361143c5750611442565b506113f8565b61144c8382611b1b565b949350505050565b81515f90611463836002611b08565b111561146d575f80fd5b50016002015161ffff1690565b81515f90611489836004611b08565b1115611493575f80fd5b50016004015163ffffffff1690565b5f818311156114b257508161019d565b50919050565b81516114c48383611060565b506114cf83826110c3565b50505050565b5f8060288385516114e69190611b1b565b10156114f657505f9050806111ca565b5f835b611504856028611b08565b8110156115a55760049190911b905f61151d8783610a40565b60ff169050603081101580156115335750603a81105b1561154c57611543603082611b1b565b8317925061159c565b6041811015801561155d5750604781105b1561156d57611543603782611b1b565b6061811015801561157e5750606781105b1561158e57611543605782611b1b565b5f80945094505050506111ca565b506001016114f9565b50946001945092505050565b5f602082840312156115c1575f80fd5b81356001600160e01b0319811681146110e8575f80fd5b6001600160a01b03811681146115ec575f80fd5b50565b5f602082840312156115ff575f80fd5b81356110e8816115d8565b634e487b7160e01b5f52604160045260245ffd5b6040805190810167ffffffffffffffff811182821017156116415761164161160a565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156116705761167061160a565b604052919050565b5f67ffffffffffffffff8211156116915761169161160a565b50601f01601f191660200190565b5f82601f8301126116ae575f80fd5b81356116c16116bc82611678565b611647565b8181528460208386010111156116d5575f80fd5b816020850160208301375f918101602001919091529392505050565b5f82601f830112611700575f80fd5b8135602067ffffffffffffffff8083111561171d5761171d61160a565b8260051b61172c838201611647565b9384528581018301938381019088861115611745575f80fd5b84880192505b858310156117d457823584811115611761575f80fd5b88016040818b03601f1901811315611777575f80fd5b61177f61161e565b878301358781111561178f575f80fd5b61179d8d8a8387010161169f565b8252509082013590868211156117b1575f80fd5b6117bf8c898486010161169f565b8189015284525050918401919084019061174b565b98975050505050505050565b5f805f805f60a086880312156117f4575f80fd5b853567ffffffffffffffff8082111561180b575f80fd5b61181789838a0161169f565b9650602088013591508082111561182c575f80fd5b61183889838a016116f1565b9550604088013591508082111561184d575f80fd5b5061185a8882890161169f565b935050606086013561186b816115d8565b9150608086013561187b816115d8565b809150509295509295909350565b5f805f6060848603121561189b575f80fd5b833567ffffffffffffffff808211156118b2575f80fd5b6118be8783880161169f565b945060208601359150808211156118d3575f80fd5b6118df878388016116f1565b935060408601359150808211156118f4575f80fd5b506119018682870161169f565b9150509250925092565b5f806040838503121561191c575f80fd5b823567ffffffffffffffff80821115611933575f80fd5b61193f8683870161169f565b93506020850135915080821115611954575f80fd5b506119618582860161169f565b9150509250929050565b5f6020828403121561197b575f80fd5b81516110e8816115d8565b5f5b838110156119a0578181015183820152602001611988565b50505f910152565b5f81518084526119bf816020860160208601611986565b601f01601f19169290920160200192915050565b5f60408083016040845280865180835260608601915060608160051b870101925060208089015f5b83811015611a4b57888603605f1901855281518051888852611a1f898901826119a8565b9185015188830389870152919050611a3781836119a8565b9750505093820193908201906001016119fb565b505086840381880152505050611a6181866119a8565b9695505050505050565b5f60208284031215611a7b575f80fd5b815167ffffffffffffffff811115611a91575f80fd5b8201601f81018413611aa1575f80fd5b8051611aaf6116bc82611678565b818152856020838501011115611ac3575f80fd5b611ad4826020830160208601611986565b95945050505050565b5f60208284031215611aed575f80fd5b5051919050565b634e487b7160e01b5f52601160045260245ffd5b8082018082111561019d5761019d611af4565b8181038181111561019d5761019d611af4565b602081525f6110e860208301846119a8565b5f60208284031215611b50575f80fd5b815180151581146110e8575f80fd5b634e487b7160e01b5f52603260045260245ffd5b61ffff83168152604060208201525f61144c60408301846119a8565b805163ffffffff81168114611ba2575f80fd5b919050565b5f805f60608486031215611bb9575f80fd5b611bc284611b8f565b9250611bd060208501611b8f565b915060408401516bffffffffffffffffffffffff1981168114611bf1575f80fd5b809150509250925092565b63ffffffff818116838216019080821115611c1957611c19611af4565b5092915050565b5f82611c3a57634e487b7160e01b5f52601260045260245ffd5b500690565b600382810b9082900b03637fffffff198112637fffffff8213171561019d5761019d611af4565b808202811582820484141761019d5761019d611af4565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{"0x0":"0x9b2565a3545a1312bdcb6e7148a7f7cae8c2706b","0x1":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0x2":"0x287dee389caaa49edc112888f2bcfd927b472e25"}},"0x62b11ad5f582a5c5d378fb310125b030042554f1":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106103af5760003560e01c80637e37479e116101f4578063ba5d40b71161011a578063e985e9c5116100ad578063f5c1f76e1161007c578063f5c1f76e146108d8578063f7df5c60146108eb578063f8c8765e146108fe578063ffa1ad741461091157600080fd5b8063e985e9c51461087a578063ebf0c717146108b6578063ec129eea146108bd578063f25eb5c1146108d057600080fd5b8063c87b56dd116100e9578063c87b56dd1461082e578063ce92b33e14610841578063cf2c52cb14610854578063d9548e531461086757600080fd5b8063ba5d40b7146107b3578063baef73e9146107c6578063bb5b27e114610808578063bebec6b41461081b57600080fd5b8063a22cb46511610192578063ac9650d811610161578063ac9650d81461074c578063b3f9e4cb1461076c578063b85afd281461077f578063b88d4fde146107a057600080fd5b8063a22cb465146106e7578063a3f4df7e146106fa578063a424740014610726578063ab3b87fe1461073957600080fd5b80639508b1c4116101ce5780639508b1c4146106b15780639559c0bd146106c457806395d89b41146106cc57806399e0dd7c146106d457600080fd5b80637e37479e146106785780637eee288d1461068b57806394d008ef1461069e57600080fd5b806342842e0e116102d95780635096023911610277578063663f7b2a11610246578063663f7b2a14610610578063672b9f81146106235780636ccbae5f1461064457806370a082311461066557600080fd5b806350960239146105bb578063572b6c05146105ce5780636352211e146105ea578063638e5c78146105fd57600080fd5b806347c81699116102b357806347c816991461056f5780634a72584d146105825780634f558e791461059557806350382c1a146105a857600080fd5b806342842e0e1461053657806342966c6814610549578063430c20811461055c57600080fd5b80631bf7e13e1161035157806327f189751161032057806327f18975146104ea578063310bd74b146104fd5780633f72ec6e1461051057806340c10f191461052357600080fd5b80631bf7e13e146104905780631f71be06146104a357806323b872dd146104b6578063276fabb1146104c957600080fd5b8063095ea7b31161038d578063095ea7b31461041c578063150b7a02146104315780631bd8cc1a1461045d5780631be5e7ed1461047d57600080fd5b806301ffc9a7146103b457806306fdde03146103dc578063081812fc146103f1575b600080fd5b6103c76103c2366004613f0b565b610935565b60405190151581526020015b60405180910390f35b6103e4610946565b6040516103d39190613f78565b6104046103ff366004613f8b565b6109d8565b6040516001600160a01b0390911681526020016103d3565b61042f61042a366004613fb9565b6109ff565b005b61044461043f366004614026565b610a18565b6040516001600160e01b031990911681526020016103d3565b61047061046b3660046140dc565b610b72565b6040516103d3919061417f565b6103e461048b366004614192565b610c68565b6103e461049e3660046141c9565b610cb3565b61042f6104b1366004614249565b610dbe565b61042f6104c4366004614305565b610e54565b6104dc6104d7366004614346565b610ea7565b6040519081526020016103d3565b61042f6104f8366004614387565b610eb6565b61042f61050b366004613f8b565b610efe565b61042f61051e3660046143fa565b610f39565b61042f610531366004613fb9565b61103b565b61042f610544366004614305565b611088565b61042f610557366004613f8b565b6110a3565b6103c761056a366004613fb9565b6110e7565b61042f61057d366004614424565b6110f3565b61042f610590366004614485565b611132565b6103c76105a3366004613f8b565b611178565b61042f6105b636600461458c565b611197565b61042f6105c93660046145c0565b6111cd565b6103c76105dc3660046145c0565b6001600160a01b0316301490565b6104046105f8366004613f8b565b61122d565b61042f61060b366004613f8b565b61124a565b61042f61061e366004614678565b611295565b6106366106313660046146c0565b611336565b6040516103d39291906146e2565b6104dc610652366004613f8b565b6000908152610100602052604090205490565b6104dc6106733660046145c0565b61134e565b6104dc6106863660046145c0565b6113d4565b61042f610699366004613fb9565b611405565b61042f6106ac366004614707565b61145c565b61042f6106bf366004614762565b6114ab565b6104dc601481565b6103e4611532565b61042f6106e2366004614805565b611541565b61042f6106f536600461483a565b6115c8565b6103e46040518060400160405280600d81526020016c554e533a20526567697374727960981b81525081565b6103c76107343660046141c9565b6115da565b61042f610747366004613fb9565b611625565b61075f61075a366004614346565b61166a565b6040516103d39190614866565b61040461077a366004613f8b565b611746565b61079261078d3660046140dc565b611770565b6040516103d39291906148c8565b61042f6107ae3660046148ed565b611892565b61042f6107c1366004614249565b6118d9565b6107f06107d4366004613f8b565b600090815261013960205260409020546001600160401b031690565b6040516001600160401b0390911681526020016103d3565b6103e4610816366004613f8b565b611962565b6103e46108293660046145c0565b611a04565b6103e461083c366004613f8b565b611ace565b61042f61084f366004614387565b611b34565b61042f610862366004614958565b611b73565b6103c7610875366004613f8b565b611c42565b6103c761088836600461499f565b6001600160a01b039182166000908152606a6020908152604080832093909416825291909152205460ff1690565b60006104dc565b61042f6108cb366004614387565b611c85565b61042f611cc4565b6104706108e6366004614346565b611d4b565b61042f6108f93660046149d8565b611dfe565b61042f61090c366004614a0a565b611e8f565b6103e460405180604001604052806005815260200164302e392e3160d81b81525081565b600061094082612065565b92915050565b60606065805461095590614a66565b80601f016020809104026020016040519081016040528092919081815260200182805461098190614a66565b80156109ce5780601f106109a3576101008083540402835291602001916109ce565b820191906000526020600020905b8154815290600101906020018083116109b157829003601f168201915b5050505050905090565b60006109e3826120b5565b506000908152606960205260409020546001600160a01b031690565b80610a0981612114565b610a13838361217a565b505050565b60007f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378546001600160a01b0316610a4d61229c565b6001600160a01b031603610b0e57610a6361229c565b6001600160a01b03166342966c68856040518263ffffffff1660e01b8152600401610a9091815260200190565b600060405180830381600087803b158015610aaa57600080fd5b505af1158015610abe573d6000803e3d6000fd5b505050821580159150610ad85750610ad882840184614a9a565b15610af657610ae730856122ab565b610af185856123f9565b610b00565b610b0085856122ab565b50630a85bd0160e11b610b69565b60405162461bcd60e51b815260206004820152602560248201527f52656769737472793a204552433732315f524543454956494e475f50524f4849604482015264109255115160da1b60648201526084015b60405180910390fd5b95945050505050565b6060826001600160401b03811115610b8c57610b8c6144d7565b604051908082528060200260200182016040528015610bbf57816020015b6060815260200190600190039081610baa5790505b50905060005b83811015610c6057610c30858583818110610be257610be2614ab5565b9050602002810190610bf49190614acb565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508792506124a4915050565b828281518110610c4257610c42614ab5565b60200260200101819052508080610c5890614b27565b915050610bc5565b509392505050565b6060610cab84848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508692506124a4915050565b949350505050565b606060005a9050610cc58585856115da565b610d215760405162461bcd60e51b815260206004820152602760248201527f554e535265676973747279466f727761726465723a205349474e41545552455f6044820152661253959053125160ca1b6064820152608401610b60565b610db3610d3160208701876145c0565b30604088013584610d4560608b018b614acb565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284376000920191909152506124d992505050565b9150505b9392505050565b610134546001600160a01b0316610dd361229c565b6001600160a01b031614610df95760405162461bcd60e51b8152600401610b6090614b40565b6000610e0d610e08888a614b87565b6125ba565b509050610e1a8982611405565b610e278686868685612612565b8115610e4957610e498982610e44610e3f8b8d614b87565b612680565b612701565b505050505050505050565b80610e66610e6061229c565b82612743565b610e825760405162461bcd60e51b8152600401610b6090614b94565b81610e8c81612114565b610e95836127d4565b610ea0858585612841565b5050505050565b6000610c60610e088385614b87565b80610ec2610e6061229c565b610ede5760405162461bcd60e51b8152600401610b6090614b94565b81610ee881612114565b610ef587878787876129e8565b50505050505050565b80610f0a610e6061229c565b610f265760405162461bcd60e51b8152600401610b6090614b94565b81610f3081612114565b610a13836127d4565b610134546001600160a01b0316610f4e61229c565b6001600160a01b031614610f745760405162461bcd60e51b8152600401610b6090614b40565b610f7d816120b5565b42826001600160401b031611610fd55760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a204558504952595f494e5f5041535400000000000000006044820152606401610b60565b60008181526101396020908152604091829020805467ffffffffffffffff19166001600160401b038616908117909155915191825282917f93feabb03ab84f47fc85bf0c298103fca21d8c8bc376eae0c1e1c56b9d4f7789910160405180910390a25050565b611043612a4b565b6001600160a01b031661105461229c565b6001600160a01b03161461107a5760405162461bcd60e51b8152600401610b6090614bdd565b61108482826122ab565b5050565b610a1383838360405180602001604052806000815250611892565b806110af610e6061229c565b6110cb5760405162461bcd60e51b8152600401610b6090614b94565b816110d581612114565b6110de836127d4565b610a1383612b4c565b6000610db78383612743565b806110ff610e6061229c565b61111b5760405162461bcd60e51b8152600401610b6090614b94565b8161112581612114565b610ef58787878787612bf3565b8061113e610e6061229c565b61115a5760405162461bcd60e51b8152600401610b6090614b94565b8161116481612114565b61117086868686612cd2565b505050505050565b6000818152606760205260408120546001600160a01b03161515610940565b6111ca816040516020016111ab9190614c1f565b6040516020818303038152906040528051906020012060001c82612d72565b50565b610134546001600160a01b03166111e261229c565b6001600160a01b0316146112085760405162461bcd60e51b8152600401610b6090614b40565b6001600160a01b0316600090815261013660205260409020805460ff19166001179055565b600061123882611c42565b6112455761094082612d97565b919050565b80611256610e6061229c565b6112725760405162461bcd60e51b8152600401610b6090614b94565b61128461127d61229c565b3084612841565b61108461128f61229c565b836123f9565b60006112a0826125ba565b5090506112ab61229c565b6001600160a01b03166112bd8261122d565b6001600160a01b0316146113135760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b60565b61131c81612114565b61108461132761229c565b8261133185612680565b612df7565b6060806113438484612e7e565b909590945092505050565b60006001600160a01b0382166113b85760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b6064820152608401610b60565b506001600160a01b031660009081526068602052604090205490565b6001600160a01b038116600090815261013560205260408120546113f781612e9f565b6113ff578091505b50919050565b610134546001600160a01b031661141a61229c565b6001600160a01b0316146114405760405162461bcd60e51b8152600401610b6090614b40565b611449816127d4565b61108461145582612d97565b8383612841565b611464612a4b565b6001600160a01b031661147561229c565b6001600160a01b03161461149b5760405162461bcd60e51b8152600401610b6090614bdd565b6114a584846122ab565b50505050565b6114b58787612ee9565b6114bd61229c565b6001600160a01b03166114cf8661122d565b6001600160a01b0316146115255760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b60565b610ef58484848489612612565b60606066805461095590614a66565b610134546001600160a01b031661155661229c565b6001600160a01b03161461157c5760405162461bcd60e51b8152600401610b6090614b40565b61013361158a828483614c81565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b82826040516115bc929190614d69565b60405180910390a15050565b6110846115d361229c565b8383612f58565b6000610cab6115e885614d7d565b3085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061302692505050565b80611631610e6061229c565b61164d5760405162461bcd60e51b8152600401610b6090614b94565b8161165781612114565b6114a561166384612d97565b8585612841565b606060006116788385614e07565b905030330361173d5760005b8381101561173b5761170b61169761229c565b61169f61316f565b8787858181106116b1576116b1614ab5565b90506020028101906116c39190614acb565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250613183915050565b82828151811061171d5761171d614ab5565b6020026020010181905250808061173390614b27565b915050611684565b505b610cab816131b3565b6000818152606760205260408120546001600160a01b0316611769576000610940565b3092915050565b606080836001600160401b0381111561178b5761178b6144d7565b6040519080825280602002602001820160405280156117be57816020015b60608152602001906001900390816117a95790505b509150836001600160401b038111156117d9576117d96144d7565b60405190808252806020026020018201604052801561180c57816020015b60608152602001906001900390816117f75790505b50905060005b848110156118895761183c86868381811061182f5761182f614ab5565b9050602002013585612e7e565b84838151811061184e5761184e614ab5565b6020026020010184848151811061186757611867614ab5565b602002602001018290528290525050808061188190614b27565b915050611812565b50935093915050565b8161189e610e6061229c565b6118ba5760405162461bcd60e51b8152600401610b6090614b94565b826118c481612114565b6118cd846127d4565b611170868686866132de565b610134546001600160a01b03166118ee61229c565b6001600160a01b0316146119145760405162461bcd60e51b8152600401610b6090614b40565b600080611924610e08898b614b87565b9150915061193181613311565b6119498a83611943610e3f8c8e614b87565b86613371565b6119568787878786612612565b50505050505050505050565b600081815260c96020526040902080546060919061197f90614a66565b80601f01602080910402602001604051908101604052809291908181526020018280546119ab90614a66565b80156119f85780601f106119cd576101008083540402835291602001916119f8565b820191906000526020600020905b8154815290600101906020018083116119db57829003601f168201915b50505050509050919050565b6001600160a01b03811660009081526101356020526040902054606090611a2a81612e9f565b6113ff576000818152610138602052604090208054611a4890614a66565b80601f0160208091040260200160405190810160405280929190818152602001828054611a7490614a66565b8015611ac15780601f10611a9657610100808354040283529160200191611ac1565b820191906000526020600020905b815481529060010190602001808311611aa457829003601f168201915b5050505050915050919050565b6060611ad9826120b5565b6000611ae36133c4565b90506000815111611b035760405180602001604052806000815250610db7565b80611b0d846133d4565b604051602001611b1e929190614e7a565b6040516020818303038152906040529392505050565b80611b40610e6061229c565b611b5c5760405162461bcd60e51b8152600401610b6090614b94565b81611b6681612114565b610ef58787878787612612565b7f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87546001600160a01b0316611ba661229c565b6001600160a01b031614611bcc5760405162461bcd60e51b8152600401610b6090614bdd565b6020819003611bef576000611be382840184613f8b565b90506114a584826122ab565b6000611bfd82840184614ea9565b805190915060005b8181101561117057611c3086848381518110611c2357611c23614ab5565b60200260200101516122ab565b80611c3a81614b27565b915050611c05565b600081815261013960205260408120546001600160401b03161580159061094057505060009081526101396020526040902054426001600160401b039091161090565b80611c91610e6061229c565b611cad5760405162461bcd60e51b8152600401610b6090614b94565b81611cb781612114565b610ef587878787876134d4565b6000611cce61229c565b6001600160a01b0381166000908152610135602052604081205491925003611d425760405162461bcd60e51b815260206004820152602160248201527f52656769737472793a20524556455253455f5245434f52445f49535f454d50546044820152605960f81b6064820152608401610b60565b6111ca816134ea565b6060816001600160401b03811115611d6557611d656144d7565b604051908082528060200260200182016040528015611d9857816020015b6060815260200190600190039081611d835790505b50905060005b82811015611df757611dc7848483818110611dbb57611dbb614ab5565b90506020020135611962565b828281518110611dd957611dd9614ab5565b60200260200101819052508080611def90614b27565b915050611d9e565b5092915050565b610134546001600160a01b0316611e1361229c565b6001600160a01b031614611e395760405162461bcd60e51b8152600401610b6090614b40565b61013454611e50906001600160a01b0316846122ab565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c39528383604051611e82929190614d69565b60405180910390a2505050565b600054610100900460ff1615808015611eaf5750600054600160ff909116105b80611ec95750303b158015611ec9575060005460ff166001145b611f2c5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610b60565b6000805460ff191660011790558015611f4f576000805461ff0019166101001790555b61013480546001600160a01b0319166001600160a01b038716179055837f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec9237880546001600160a01b0319166001600160a01b03929092169190911790556040805180820182526013815272556e73746f707061626c6520446f6d61696e7360681b60208083019190915282518084019093526002835261155160f21b90830152611ff79161352f565b611fff61356f565b61200761356f565b61201083613598565b612019826135c8565b8015610ea0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b60006001600160e01b031982166380ac58cd60e01b148061209657506001600160e01b03198216635b5e139f60e01b145b8061094057506301ffc9a760e01b6001600160e01b0319831614610940565b6000818152606760205260409020546001600160a01b03166111ca5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b60565b3033036121715761212361316f565b81146111ca5760405162461bcd60e51b815260206004820152601760248201527f52656769737472793a20544f4b454e5f494e56414c49440000000000000000006044820152606401610b60565b6111ca816135f8565b600061218582612d97565b9050806001600160a01b0316836001600160a01b0316036121f25760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b6064820152608401610b60565b806001600160a01b031661220461229c565b6001600160a01b0316148061222057506122208161088861229c565b6122925760405162461bcd60e51b815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c00006064820152608401610b60565b610a138383613626565b60006122a6613694565b905090565b6001600160a01b0382166123015760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610b60565b6000818152606760205260409020546001600160a01b0316156123665760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610b60565b612372600083836136af565b6001600160a01b038216600090815260686020526040812080546001929061239b908490614f39565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b03861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b6000612403612a4b565b905061240f8183613626565b60008051602061529383398151915254604080516020808201869052825180830390910181528183019283905263e3dec8fb60e01b9092526001600160a01b0390921691829163e3dec8fb9161246c918891309190604401614f4c565b600060405180830381600087803b15801561248657600080fd5b505af115801561249a573d6000803e3d6000fd5b5050505050505050565b6060610db7836040516020016124ba9190614c1f565b6040516020818303038152906040528051906020012060001c8361378b565b60606124e4856135f8565b600080876001600160a01b0316866124fe8b8a8989613183565b60405161250b9190614c1f565b60006040518083038160008787f1925050503d8060008114612549576040519150601f19603f3d011682016040523d82523d6000602084013e61254e565b606091505b50909250905061255f603f87614f8e565b5a1161256d5761256d614fa2565b6125ad82826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061386d565b9998505050505050505050565b805160009081905b801561260c578291506125f882856125db600185614fb8565b815181106125eb576125eb614ab5565b60200260200101516138a6565b92508061260481614fcb565b9150506125c2565b50915091565b60005b848110156111705761266e86868381811061263257612632614ab5565b90506020028101906126449190614acb565b86868581811061265657612656614ab5565b90506020028101906126689190614acb565b86612bf3565b8061267881614b27565b915050612615565b606060008260008151811061269757612697614ab5565b602002602001015190506000600190505b8351811015611df757818482815181106126c4576126c4614ab5565b60200260200101516040516020016126dd929190614fe2565b604051602081830303815290604052915080806126f990614b27565b9150506126a8565b61dead6001600160a01b0384161480159061273357506001600160a01b03831660009081526101356020526040902054155b15610a1357610a13838383612df7565b60008061274f8361122d565b90506001600160a01b03811615801590610cab5750806001600160a01b0316846001600160a01b031614806127a957506001600160a01b038082166000908152606a602090815260408083209388168352929052205460ff165b80610cab5750836001600160a01b03166127c2846109d8565b6001600160a01b031614949350505050565b6127dd81613952565b6040516020016127ef91815260200190565b60408051601f198184030181528282528051602091820120600085815260cb9092529181209190915582917f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9190a250565b826001600160a01b031661285482612d97565b6001600160a01b0316146128b85760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b6064820152608401610b60565b6001600160a01b03821661291a5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610b60565b6129258383836136af565b612930600082613626565b6001600160a01b0383166000908152606860205260408120805460019290612959908490614fb8565b90915550506001600160a01b0382166000908152606860205260408120805460019290612987908490614f39565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60005b8481101561117057612a39868683818110612a0857612a08614ab5565b90506020020135858584818110612a2157612a21614ab5565b9050602002810190612a339190614acb565b85612cd2565b80612a4381614b27565b9150506129eb565b600080516020615293833981519152546000906001600160a01b03168015612b485760405163721804d360e11b81523060048201526000906001600160a01b0383169063e43009a690602401602060405180830381865afa158015612ab4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ad8919061501e565b60405163e66f960360e01b8152600481018290529091506001600160a01b0383169063e66f960390602401602060405180830381865afa158015612b20573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b449190615037565b9250505b5090565b6000612b5782612d97565b9050612b65816000846136af565b612b70600083613626565b6001600160a01b0381166000908152606860205260408120805460019290612b99908490614fb8565b909155505060008281526067602052604080822080546001600160a01b0319169055518391906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b60008585604051602001612c08929190615054565b60408051601f198184030181528282528051602091820120601f8901829004820284018201909252878352909250612c5c9183918990899081908401838280828437600092019190915250612d7292505050565b6111708187878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061397a915050565b612cdb84613aaf565b612d275760405162461bcd60e51b815260206004820152601c60248201527f5265636f726453746f726167653a204b45595f4e4f545f464f554e44000000006044820152606401610b60565b6114a584612d3486611962565b85858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525087925061397a915050565b612d7b82613aaf565b61108457600082815260c960205260409020610a138282615064565b6000818152606760205260408120546001600160a01b0316806109405760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b60565b6000828152610138602052604090208054612e1190614a66565b9050600003612e3557600082815261013860205260409020612e338282615064565b505b6001600160a01b03831660008181526101356020526040808220859055518492917feb76a21470988c474a21f690cc28fee1ed511bd812dc3c21fd0f49c5e5d4708a91a3505050565b606080612e8a84611962565b9150612e96848461378b565b90509250929050565b6000818152610137602052604081205460ff16801561094057506101366000612ec661229c565b6001600160a01b0316815260208101919091526040016000205460ff1692915050565b60008051602061529383398151915254604051633805550f60e01b81526001600160a01b03909116908190633805550f90612f2a9086908690600401614d69565b600060405180830381600087803b158015612f4457600080fd5b505af1158015610ef5573d6000803e3d6000fd5b816001600160a01b0316836001600160a01b031603612fb95760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610b60565b6001600160a01b038381166000818152606a6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561306d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613091919061501e565b9050600061313f8660600151805190602001208688602001516040516020016130df9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561316557508551613165906001600160a01b03168286613ad5565b9695505050505050565b60003033036131805750601f193601355b90565b606082858560405160200161319a93929190615123565b6040516020818303038152906040529050949350505050565b606081516001600160401b038111156131ce576131ce6144d7565b60405190808252806020026020018201604052801561320157816020015b60608152602001906001900390816131ec5790505b50905060005b82518110156113ff57600080306001600160a01b031685848151811061322f5761322f614ab5565b60200260200101516040516132449190614c1f565b600060405180830381855af49150503d806000811461327f576040519150601f19603f3d011682016040523d82523d6000602084013e613284565b606091505b50915091506132ac82826040518060600160405280602781526020016152b36027913961386d565b8484815181106132be576132be614ab5565b6020026020010181905250505080806132d690614b27565b915050613207565b6132e9848484612841565b6132f584848484613c17565b6114a55760405162461bcd60e51b8152600401610b6090615162565b6000818152610137602052604090205460ff16156111ca5760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a20544f4b454e5f555047524144454400000000000000006044820152606401610b60565b61337b84846122ab565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952836040516133ab9190613f78565b60405180910390a280156114a5576114a5848484612701565b6060610133805461095590614a66565b6060816000036133fb5750506040805180820190915260018152600360fc1b602082015290565b8160005b8115613425578061340f81614b27565b915061341e9050600a83614f8e565b91506133ff565b6000816001600160401b0381111561343f5761343f6144d7565b6040519080825280601f01601f191660200182016040528015613469576020820181803683370190505b5090505b8415610cab5761347e600183614fb8565b915061348b600a866151b4565b613496906030614f39565b60f81b8183815181106134ab576134ab614ab5565b60200101906001600160f81b031916908160001a9053506134cd600a86614f8e565b945061346d565b6134dd816127d4565b610ea08585858585612612565b6001600160a01b03811660008181526101356020526040808220829055517ffcf5eec0cfa3e6332f5f0e63ec242d71f866a61d121d6cdf5c2eb3b668a26c4f9190a250565b600054610100900460ff166135565760405162461bcd60e51b8152600401610b60906151c8565b60656135628382615064565b506066610a138282615064565b600054610100900460ff166135965760405162461bcd60e51b8152600401610b60906151c8565b565b600054610100900460ff166135bf5760405162461bcd60e51b8152600401610b60906151c8565b6111ca81613d1c565b600054610100900460ff166135ef5760405162461bcd60e51b8152600401610b60906151c8565b6111ca81613d75565b60008181526101006020526040902054613613906001614f39565b6000918252610100602052604090912055565b600081815260696020526040902080546001600160a01b0319166001600160a01b038416908117909155819061365b82612d97565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60003033036136aa575060331936013560601c90565b503390565b6001600160a01b0382166136c6576136c681613311565b600081815261013960205260409020546001600160401b031615613761576001600160a01b0382161580159061371557506136ff612a4b565b6001600160a01b0316826001600160a01b031614155b6137615760405162461bcd60e51b815260206004820152601960248201527f52656769737472793a20544f4b454e5f455850495241424c45000000000000006044820152606401610b60565b6001600160a01b03831660009081526101356020526040902054819003610a1357610a13836134ea565b606061379682612e9f565b156137b05750604080516020810190915260008152610940565b60ca60006137bd84613952565b8152602001908152602001600020600084815260200190815260200160002080546137e790614a66565b80601f016020809104026020016040519081016040528092919081815260200182805461381390614a66565b80156138605780601f1061383557610100808354040283529160200191613860565b820191906000526020600020905b81548152906001019060200180831161384357829003601f168201915b5050505050905092915050565b6060831561387c575081610db7565b82511561388c5782518084602001fd5b8160405162461bcd60e51b8152600401610b609190613f78565b600081516000036138f15760405162461bcd60e51b815260206004820152601560248201527452656769737472793a204c4142454c5f454d50545960581b6044820152606401610b60565b82826040516020016139039190614c1f565b60405160208183030381529060405280519060200120604051602001613933929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b600081815260cb602052604081205415612b4857600082815260cb6020526040902054610940565b60ca600061398783613952565b8152602001908152602001600020600085815260200190815260200160002080546139b190614a66565b9050600003613a0957826040516139c89190614c1f565b6040518091039020817f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f8685604051613a009190613f78565b60405180910390a35b8160ca6000613a1784613952565b815260200190815260200160002060008681526020019081526020016000209081613a429190615064565b5081604051613a519190614c1f565b604051809103902083604051613a679190614c1f565b6040518091039020827f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d928686604051613aa19291906146e2565b60405180910390a450505050565b600081815260c9602052604081208054829190613acb90614a66565b9050119050919050565b6000806000613ae48585613dc3565b90925090506000816004811115613afd57613afd615213565b148015613b1b5750856001600160a01b0316826001600160a01b0316145b15613b2b57600192505050610db7565b600080876001600160a01b0316631626ba7e60e01b8888604051602401613b53929190615229565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051613b919190614c1f565b600060405180830381855afa9150503d8060008114613bcc576040519150601f19603f3d011682016040523d82523d6000602084013e613bd1565b606091505b5091509150818015613be4575080516020145b8015613c0b57508051630b135d3f60e11b90613c09908301602090810190840161501e565b145b98975050505050505050565b60006001600160a01b0384163b15613d1457836001600160a01b031663150b7a02613c4061229c565b8786866040518563ffffffff1660e01b8152600401613c629493929190615242565b6020604051808303816000875af1925050508015613c9d575060408051601f3d908101601f19168201909252613c9a91810190615275565b60015b613cfa573d808015613ccb576040519150601f19603f3d011682016040523d82523d6000602084013e613cd0565b606091505b508051600003613cf25760405162461bcd60e51b8152600401610b6090615162565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610cab565b506001610cab565b600054610100900460ff16613d435760405162461bcd60e51b8152600401610b60906151c8565b806000805160206152938339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b600054610100900460ff16613d9c5760405162461bcd60e51b8152600401610b60906151c8565b807f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87613d54565b6000808251604103613df95760208301516040840151606085015160001a613ded87828585613e08565b94509450505050613e01565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613e3f5750600090506003613eec565b8460ff16601b14158015613e5757508460ff16601c14155b15613e685750600090506004613eec565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613ebc573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613ee557600060019250925050613eec565b9150600090505b94509492505050565b6001600160e01b0319811681146111ca57600080fd5b600060208284031215613f1d57600080fd5b8135610db781613ef5565b60005b83811015613f43578181015183820152602001613f2b565b50506000910152565b60008151808452613f64816020860160208601613f28565b601f01601f19169290920160200192915050565b602081526000610db76020830184613f4c565b600060208284031215613f9d57600080fd5b5035919050565b6001600160a01b03811681146111ca57600080fd5b60008060408385031215613fcc57600080fd5b8235613fd781613fa4565b946020939093013593505050565b60008083601f840112613ff757600080fd5b5081356001600160401b0381111561400e57600080fd5b602083019150836020828501011115613e0157600080fd5b60008060008060006080868803121561403e57600080fd5b853561404981613fa4565b9450602086013561405981613fa4565b93506040860135925060608601356001600160401b0381111561407b57600080fd5b61408788828901613fe5565b969995985093965092949392505050565b60008083601f8401126140aa57600080fd5b5081356001600160401b038111156140c157600080fd5b6020830191508360208260051b8501011115613e0157600080fd5b6000806000604084860312156140f157600080fd5b83356001600160401b0381111561410757600080fd5b61411386828701614098565b909790965060209590950135949350505050565b600082825180855260208086019550808260051b84010181860160005b8481101561417257601f19868403018952614160838351613f4c565b98840198925090830190600101614144565b5090979650505050505050565b602081526000610db76020830184614127565b6000806000604084860312156141a757600080fd5b83356001600160401b038111156141bd57600080fd5b61411386828701613fe5565b6000806000604084860312156141de57600080fd5b83356001600160401b03808211156141f557600080fd5b908501906080828803121561420957600080fd5b9093506020850135908082111561421f57600080fd5b5061422c86828701613fe5565b9497909650939450505050565b8035801515811461124557600080fd5b60008060008060008060008060a0898b03121561426557600080fd5b883561427081613fa4565b975060208901356001600160401b038082111561428c57600080fd5b6142988c838d01614098565b909950975060408b01359150808211156142b157600080fd5b6142bd8c838d01614098565b909750955060608b01359150808211156142d657600080fd5b506142e38b828c01614098565b90945092506142f6905060808a01614239565b90509295985092959890939650565b60008060006060848603121561431a57600080fd5b833561432581613fa4565b9250602084013561433581613fa4565b929592945050506040919091013590565b6000806020838503121561435957600080fd5b82356001600160401b0381111561436f57600080fd5b61437b85828601614098565b90969095509350505050565b60008060008060006060868803121561439f57600080fd5b85356001600160401b03808211156143b657600080fd5b6143c289838a01614098565b909750955060208801359150808211156143db57600080fd5b506143e888828901614098565b96999598509660400135949350505050565b6000806040838503121561440d57600080fd5b82356001600160401b0381168114613fd757600080fd5b60008060008060006060868803121561443c57600080fd5b85356001600160401b038082111561445357600080fd5b61445f89838a01613fe5565b9097509550602088013591508082111561447857600080fd5b506143e888828901613fe5565b6000806000806060858703121561449b57600080fd5b8435935060208501356001600160401b038111156144b857600080fd5b6144c487828801613fe5565b9598909750949560400135949350505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715614515576145156144d7565b604052919050565b600082601f83011261452e57600080fd5b81356001600160401b03811115614547576145476144d7565b61455a601f8201601f19166020016144ed565b81815284602083860101111561456f57600080fd5b816020850160208301376000918101602001919091529392505050565b60006020828403121561459e57600080fd5b81356001600160401b038111156145b457600080fd5b610cab8482850161451d565b6000602082840312156145d257600080fd5b8135610db781613fa4565b60006001600160401b038211156145f6576145f66144d7565b5060051b60200190565b600061461361460e846145dd565b6144ed565b8381529050602080820190600585901b84018681111561463257600080fd5b845b8181101561466d5780356001600160401b038111156146535760008081fd5b61465f8982890161451d565b855250928201928201614634565b505050509392505050565b60006020828403121561468a57600080fd5b81356001600160401b038111156146a057600080fd5b8201601f810184136146b157600080fd5b610cab84823560208401614600565b600080604083850312156146d357600080fd5b50508035926020909101359150565b6040815260006146f56040830185613f4c565b8281036020840152610db38185613f4c565b6000806000806060858703121561471d57600080fd5b843561472881613fa4565b93506020850135925060408501356001600160401b0381111561474a57600080fd5b61475687828801613fe5565b95989497509550505050565b60008060008060008060006080888a03121561477d57600080fd5b87356001600160401b038082111561479457600080fd5b6147a08b838c01613fe5565b909950975060208a0135965060408a01359150808211156147c057600080fd5b6147cc8b838c01614098565b909650945060608a01359150808211156147e557600080fd5b506147f28a828b01614098565b989b979a50959850939692959293505050565b6000806020838503121561481857600080fd5b82356001600160401b0381111561482e57600080fd5b61437b85828601613fe5565b6000806040838503121561484d57600080fd5b823561485881613fa4565b9150612e9660208401614239565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156148bb57603f198886030184526148a9858351613f4c565b9450928501929085019060010161488d565b5092979650505050505050565b6040815260006148db6040830185614127565b8281036020840152610db38185614127565b6000806000806080858703121561490357600080fd5b843561490e81613fa4565b9350602085013561491e81613fa4565b92506040850135915060608501356001600160401b0381111561494057600080fd5b61494c8782880161451d565b91505092959194509250565b60008060006040848603121561496d57600080fd5b833561497881613fa4565b925060208401356001600160401b0381111561499357600080fd5b61422c86828701613fe5565b600080604083850312156149b257600080fd5b82356149bd81613fa4565b915060208301356149cd81613fa4565b809150509250929050565b6000806000604084860312156149ed57600080fd5b8335925060208401356001600160401b0381111561499357600080fd5b60008060008060808587031215614a2057600080fd5b8435614a2b81613fa4565b93506020850135614a3b81613fa4565b92506040850135614a4b81613fa4565b91506060850135614a5b81613fa4565b939692955090935050565b600181811c90821680614a7a57607f821691505b6020821081036113ff57634e487b7160e01b600052602260045260246000fd5b600060208284031215614aac57600080fd5b610db782614239565b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112614ae257600080fd5b8301803591506001600160401b03821115614afc57600080fd5b602001915036819003821315613e0157600080fd5b634e487b7160e01b600052601160045260246000fd5b600060018201614b3957614b39614b11565b5060010190565b60208082526027908201527f52656769737472793a2053454e4445525f49535f4e4f545f4d494e54494e475f60408201526626a0a720a3a2a960c91b606082015260800190565b6000610db7368484614600565b60208082526029908201527f52656769737472793a2053454e4445525f49535f4e4f545f415050524f5645446040820152682fa7a92fa7aba722a960b91b606082015260800190565b60208082526022908201527f52656769737472793a20494e53554646494349454e545f5045524d495353494f6040820152614e5360f01b606082015260800190565b60008251614c31818460208701613f28565b9190910192915050565b601f821115610a1357600081815260208120601f850160051c81016020861015614c625750805b601f850160051c820191505b8181101561117057828155600101614c6e565b6001600160401b03831115614c9857614c986144d7565b614cac83614ca68354614a66565b83614c3b565b6000601f841160018114614ce05760008515614cc85750838201355b600019600387901b1c1916600186901b178355610ea0565b600083815260209020601f19861690835b82811015614d115786850135825560209485019460019092019101614cf1565b5086821015614d2e5760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b602081526000610cab602083018486614d40565b600060808236031215614d8f57600080fd5b604051608081016001600160401b038282108183111715614db257614db26144d7565b8160405284359150614dc382613fa4565b81835260208501356020840152604085013560408401526060850135915080821115614dee57600080fd5b50614dfb3682860161451d565b60608301525092915050565b6000614e1561460e846145dd565b80848252602080830192508560051b850136811115614e3357600080fd5b855b81811015614e6e5780356001600160401b03811115614e545760008081fd5b614e6036828a0161451d565b865250938201938201614e35565b50919695505050505050565b60008351614e8c818460208801613f28565b835190830190614ea0818360208801613f28565b01949350505050565b60006020808385031215614ebc57600080fd5b82356001600160401b03811115614ed257600080fd5b8301601f81018513614ee357600080fd5b8035614ef161460e826145dd565b81815260059190911b82018301908381019087831115614f1057600080fd5b928401925b82841015614f2e57833582529284019290840190614f15565b979650505050505050565b8082018082111561094057610940614b11565b6001600160a01b03848116825283166020820152606060408201819052600090610b6990830184613f4c565b634e487b7160e01b600052601260045260246000fd5b600082614f9d57614f9d614f78565b500490565b634e487b7160e01b600052600160045260246000fd5b8181038181111561094057610940614b11565b600081614fda57614fda614b11565b506000190190565b60008351614ff4818460208801613f28565b601760f91b9083019081528351615012816001840160208801613f28565b01600101949350505050565b60006020828403121561503057600080fd5b5051919050565b60006020828403121561504957600080fd5b8151610db781613fa4565b8183823760009101908152919050565b81516001600160401b0381111561507d5761507d6144d7565b6150918161508b8454614a66565b84614c3b565b602080601f8311600181146150c657600084156150ae5750858301515b600019600386901b1c1916600185901b178555611170565b600085815260208120601f198616915b828110156150f5578886015182559484019460019091019084016150d6565b50858210156151135787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60008451615135818460208901613f28565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6000826151c3576151c3614f78565b500690565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b634e487b7160e01b600052602160045260246000fd5b828152604060208201526000610cab6040830184613f4c565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061316590830184613f4c565b60006020828403121561528757600080fd5b8151610db781613ef556febe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a","storage":{}},"0x6ac8f19d1e0f81147cdf2a1e53cb1f4e18417204":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610296575f3560e01c80636352211e11610161578063c93ab3fd116100ca578063e985e9c511610084578063e985e9c5146106c8578063eb8ae530146106db578063ed70554d146106ee578063f242432a1461070d578063f2fde38b14610720578063fd0cd0d914610733575f80fd5b8063c93ab3fd14610647578063cf4088231461065a578063d8c9921a1461066d578063d9a50c1214610680578063da8c229e14610693578063e0dba60f146106b5575f80fd5b8063a22cb4651161011b578063a22cb465146105d5578063a4014982146105e8578063adf4960a146105fb578063b6bcad261461060e578063c475abff14610621578063c658e08614610634575f80fd5b80636352211e146105595780636e5d6ad21461056c578063715018a6146105975780638b4dfa751461059f5780638cf8b41e146105b25780638da5cb5b146105c5575f80fd5b80631f4e1504116102035780633f15457f116101bd5780633f15457f146104b1578063402906fc146104d857806341415eab146105005780634e1273f41461051357806353095467146105335780635d3590d514610546575f80fd5b80631f4e15041461042b57806320c38e2b1461043e57806324c1af44146104515780632b20e397146104645780632eb2c2d61461048b57806333c69ea91461049e575f80fd5b80630e4cd725116102545780630e4cd725146103a05780630e89341c146103b357806314ab9038146103c6578063150b7a02146103d95780631534e177146104055780631896f70a14610418575f80fd5b8062fdd58e1461029a5780630178fe3f146102c057806301ffc9a71461030657806306fdde0314610329578063081812fc14610360578063095ea7b31461038b575b5f80fd5b6102ad6102a8366004614316565b610746565b6040519081526020015b60405180910390f35b6102d36102ce366004614340565b6107f0565b604080516001600160a01b03909416845263ffffffff90921660208401526001600160401b0316908201526060016102b7565b61031961031436600461436c565b61081f565b60405190151581526020016102b7565b6103536040518060400160405280600b81526020016a2730b6b2abb930b83832b960a91b81525081565b6040516102b791906143d4565b61037361036e366004614340565b61085e565b6040516001600160a01b0390911681526020016102b7565b61039e610399366004614316565b6108a0565b005b6103196103ae3660046143e6565b6108e5565b6103536103c1366004614340565b61095e565b61039e6103d436600461442f565b6109cc565b6103ec6103e736600461449d565b610ac0565b6040516001600160e01b031990911681526020016102b7565b61039e61041336600461450a565b610c96565b61039e6104263660046143e6565b610cc0565b600754610373906001600160a01b031681565b61035361044c366004614340565b610d75565b6102ad61045f3660046145f6565b610e0c565b6103737f000000000000000000000000c965345edac823d56812cd20a10316233916a60581565b61039e610499366004614717565b610fe7565b61039e6104ac3660046147bd565b61121a565b6103737f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a981565b6104eb6104e6366004614811565b6113e6565b60405163ffffffff90911681526020016102b7565b61031961050e3660046143e6565b611480565b610526610521366004614832565b6114b8565b6040516102b79190614928565b600554610373906001600160a01b031681565b61039e61055436600461493a565b6115d7565b610373610567366004614340565b611655565b61057f61057a366004614978565b61165f565b6040516001600160401b0390911681526020016102b7565b61039e61178e565b61039e6105ad3660046149aa565b6117a1565b61057f6105c03660046149e9565b6118c0565b5f546001600160a01b0316610373565b61039e6105e3366004614a6b565b611c28565b6102ad6105f6366004614a97565b611cfd565b610319610609366004614b12565b611e38565b61039e61061c36600461450a565b611e5c565b6102ad61062f366004614b33565b61209e565b6102ad610642366004614b53565b6122fd565b61039e610655366004614bc0565b6124bd565b61039e610668366004614c26565b612605565b61039e61067b366004614c5b565b612794565b61031961068e366004614b33565b61285d565b6103196106a136600461450a565b60046020525f908152604090205460ff1681565b61039e6106c3366004614a6b565b612938565b6103196106d6366004614c86565b61299f565b61039e6106e9366004614cb2565b6129cc565b6102ad6106fc366004614340565b60016020525f908152604090205481565b61039e61071b366004614d15565b612d59565b61039e61072e36600461450a565b612e06565b610319610741366004614340565b612e7c565b5f6001600160a01b0383166107b65760405162461bcd60e51b815260206004820152602b60248201527f455243313135353a2062616c616e636520717565727920666f7220746865207a60448201526a65726f206164647265737360a81b60648201526084015b60405180910390fd5b5f6107c083611655565b9050836001600160a01b0316816001600160a01b0316036107e55760019150506107ea565b5f9150505b92915050565b5f8181526001602052604090205460a081901c60c082901c610813838383612f4d565b90959094509092509050565b5f6001600160e01b03198216631b05885b60e31b148061084f57506001600160e01b03198216630a85bd0160e11b145b806107ea57506107ea82612f80565b5f8061086983611655565b90506001600160a01b03811661088157505f92915050565b5f838152600360205260409020546001600160a01b03165b9392505050565b5f6108aa826107f0565b50915050603f1960408216016108d65760405163a2a7201360e01b8152600481018390526024016107ad565b6108e08383612fcf565b505050565b5f8080806108f2866107f0565b925092509250846001600160a01b0316836001600160a01b0316148061091d575061091d838661299f565b8061094157506001600160a01b0385166109368761085e565b6001600160a01b0316145b8015610954575061095282826130de565b155b9695505050505050565b6005546040516303a24d0760e21b8152600481018390526060916001600160a01b031690630e89341c906024015f60405180830381865afa1580156109a5573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526107ea9190810190614d78565b816109d78133611480565b6109f857803360405163168ab55d60e31b81526004016107ad929190614dea565b8260105f610a05836107f0565b5091505063ffffffff8282161615610a335760405163a2a7201360e01b8152600481018490526024016107ad565b604051630295720760e31b8152600481018790526001600160401b03861660248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906314ab9038906044015b5f604051808303815f87803b158015610aa2575f80fd5b505af1158015610ab4573d5f803e3d5ffd5b50505050505050505050565b5f336001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a6051614610b0a5760405163032634a760e31b815260040160405180910390fd5b5f808080610b1a86880188614e01565b83516020850120939750919550935091508890808214610b57576040516331970f3360e21b815260048101829052602481018390526044016107ad565b604051630a3b53db60e21b81526001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906328ed4f6c90610ba59085903090600401614dea565b5f604051808303815f87803b158015610bbc575f80fd5b505af1158015610bce573d5f803e3d5ffd5b5050604051636b727d4360e11b8152600481018d90525f92506276a70091506001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063d6e4fa8690602401602060405180830381865afa158015610c3c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c609190614e64565b610c6a9190614e8f565b9050610c7d87878761ffff16848861310d565b50630a85bd0160e11b9c9b505050505050505050505050565b610c9e613215565b600580546001600160a01b0319166001600160a01b0392909216919091179055565b81610ccb8133611480565b610cec57803360405163168ab55d60e31b81526004016107ad929190614dea565b8260085f610cf9836107f0565b5091505063ffffffff8282161615610d275760405163a2a7201360e01b8152600481018490526024016107ad565b604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a90610a8b9089908990600401614dea565b60066020525f908152604090208054610d8d90614eb6565b80601f0160208091040260200160405190810160405280929190818152602001828054610db990614eb6565b8015610e045780601f10610ddb57610100808354040283529160200191610e04565b820191905f5260205f20905b815481529060010190602001808311610de757829003601f168201915b505050505081565b5f87610e188133611480565b610e3957803360405163168ab55d60e31b81526004016107ad929190614dea565b87516020890120610e4a8a8261326e565b9250610e568a8461329a565b610e6083866133d3565b610e6b8a848b613406565b50610e788a8487876134cd565b9350610e8383613510565b610f33576040516305ef2c7f60e41b8152600481018b9052602481018290523060448201526001600160a01b0388811660648301526001600160401b03881660848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610f0a575f80fd5b505af1158015610f1c573d5f803e3d5ffd5b50505050610f2e8a848b8b89896135c6565b610fda565b6040516305ef2c7f60e41b8152600481018b9052602481018290523060448201526001600160a01b0388811660648301526001600160401b03881660848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610fb6575f80fd5b505af1158015610fc8573d5f803e3d5ffd5b50505050610fda8a848b8b89896135fc565b5050979650505050505050565b81518351146110495760405162461bcd60e51b815260206004820152602860248201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206044820152670dad2e6dac2e8c6d60c31b60648201526084016107ad565b6001600160a01b03841661106f5760405162461bcd60e51b81526004016107ad90614eee565b6001600160a01b03851633148061108b575061108b853361299f565b6110f25760405162461bcd60e51b815260206004820152603260248201527f455243313135353a207472616e736665722063616c6c6572206973206e6f74206044820152711bdddb995c881b9bdc88185c1c1c9bdd995960721b60648201526084016107ad565b5f5b83518110156111ad575f84828151811061111057611110614f33565b602002602001015190505f84838151811061112d5761112d614f33565b602002602001015190505f805f611143856107f0565b9250925092506111548583836136b6565b83600114801561117557508a6001600160a01b0316836001600160a01b0316145b6111915760405162461bcd60e51b81526004016107ad90614f47565b61119d858b848461375d565b50505050508060010190506110f4565b50836001600160a01b0316856001600160a01b0316336001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516111fd929190614f91565b60405180910390a461121333868686868661379d565b5050505050565b5f611225858561326e565b905061123181846133d3565b5f808061123d846107f0565b919450925090506001600160a01b03831615806112ea57506040516302571be360e01b81526004810185905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa1580156112ba573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112de9190614fbe565b6001600160a01b031614155b1561130857604051635374b59960e01b815260040160405180910390fd5b5f806113138a6107f0565b90935091508a905061134f576113298633611480565b61134a57853360405163168ab55d60e31b81526004016107ad929190614dea565b61137a565b6113598a33611480565b61137a57893360405163168ab55d60e31b81526004016107ad929190614dea565b6113858689846138f7565b611390878483613932565b9650620100008416158015906113b457508363ffffffff1688851763ffffffff1614155b156113d55760405163a2a7201360e01b8152600481018790526024016107ad565b96831796610ab486868a868b613977565b5f826113f28133611480565b61141357803360405163168ab55d60e31b81526004016107ad929190614dea565b8360025f611420836107f0565b5091505063ffffffff828216161561144e5760405163a2a7201360e01b8152600481018490526024016107ad565b5f808061145a8a6107f0565b9250925092506114738a84848c61ffff16178485613977565b5098975050505050505050565b5f80808061148d866107f0565b925092509250846001600160a01b0316836001600160a01b031614806109415750610941838661299f565b6060815183511461151d5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b60648201526084016107ad565b5f83516001600160401b0381111561153757611537614525565b604051908082528060200260200182016040528015611560578160200160208202803683370190505b5090505f5b84518110156115cf576115aa85828151811061158357611583614f33565b602002602001015185838151811061159d5761159d614f33565b6020026020010151610746565b8282815181106115bc576115bc614f33565b6020908102919091010152600101611565565b509392505050565b6115df613215565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af115801561162b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061164f9190614fd9565b50505050565b5f6107ea82613a1e565b5f8061166b858561326e565b905061167681613510565b61169357604051635374b59960e01b815260040160405180910390fd5b5f61169e86336108e5565b9050801580156116b557506116b38233611480565b155b156116d757813360405163168ab55d60e31b81526004016107ad929190614dea565b5f80806116e3856107f0565b925092509250831580156116fa5750620400008216155b1561171b5760405163a2a7201360e01b8152600481018690526024016107ad565b5f6117258a6107f0565b92505050611734888383613932565b97506117428685858b613a33565b6040516001600160401b038916815286907ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b1329060200160405180910390a2509598975050505050505050565b611796613215565b61179f5f613a49565b565b6117b85f805160206154fc8339815191528461326e565b6117c28133611480565b6117e357803360405163168ab55d60e31b81526004016107ad929190614dea565b306001600160a01b0384160361181757604051632ca49b0d60e11b81526001600160a01b03841660048201526024016107ad565b6118376118315f805160206154fc8339815191528661326e565b83613a98565b604051632142170760e11b81523060048201526001600160a01b038481166024830152604482018690527f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906342842e0e906064015f604051808303815f87803b1580156118a4575f80fd5b505af11580156118b6573d5f803e3d5ffd5b5050505050505050565b5f8086866040516118d2929190614ff4565b6040519081900381206331a9108f60e11b82526004820181905291505f907f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa15801561193f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119639190614fbe565b90506001600160a01b0381163314801590611a09575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063e985e9c590604401602060405180830381865afa1580156119e3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a079190614fd9565b155b15611a4157611a255f805160206154fc8339815191528361326e565b3360405163168ab55d60e31b81526004016107ad929190614dea565b6040516323b872dd60e01b81526001600160a01b038281166004830152306024830152604482018490527f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906323b872dd906064015f604051808303815f87803b158015611aae575f80fd5b505af1158015611ac0573d5f803e3d5ffd5b5050604051630a3b53db60e21b81526001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a6051692506328ed4f6c9150611b129085903090600401614dea565b5f604051808303815f87803b158015611b29575f80fd5b505af1158015611b3b573d5f803e3d5ffd5b5050604051636b727d4360e11b8152600481018590526276a70092507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b0316915063d6e4fa8690602401602060405180830381865afa158015611ba7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611bcb9190614e64565b611bd59190614e8f565b9250611c1d88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508a9250505061ffff8816868861310d565b505095945050505050565b6001600160a01b0382163303611c925760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084016107ad565b335f8181526002602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b335f9081526004602052604081205460ff16611d2b5760405162461bcd60e51b81526004016107ad90615003565b5f8787604051611d3c929190614ff4565b604051908190038120633f2891eb60e21b8252600482018190523060248301526044820187905291507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b03169063fca247ac906064016020604051808303815f875af1158015611db5573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611dd99190614e64565b9150611e2d88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508a9250505061ffff8616611e276276a70087614e8f565b8861310d565b509695505050505050565b5f80611e43846107f0565b50841663ffffffff908116908516149250505092915050565b611e64613215565b6007546001600160a01b031615611f785760075460405163a22cb46560e01b81526001600160a01b0391821660048201525f60248201527f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063a22cb465906044015f604051808303815f87803b158015611ee0575f80fd5b505af1158015611ef2573d5f803e3d5ffd5b505060075460405163a22cb46560e01b81526001600160a01b0391821660048201525f60248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9909116925063a22cb46591506044015f604051808303815f87803b158015611f61575f80fd5b505af1158015611f73573d5f803e3d5ffd5b505050505b600780546001600160a01b0319166001600160a01b0383169081179091551561209b5760075460405163a22cb46560e01b81526001600160a01b039182166004820152600160248201527f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063a22cb465906044015f604051808303815f87803b158015612007575f80fd5b505af1158015612019573d5f803e3d5ffd5b505060075460405163a22cb46560e01b81526001600160a01b039182166004820152600160248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9909116925063a22cb46591506044015f604051808303815f87803b158015612089575f80fd5b505af1158015611213573d5f803e3d5ffd5b50565b335f9081526004602052604081205460ff166120cc5760405162461bcd60e51b81526004016107ad90615003565b5f6120e45f805160206154fc8339815191528561326e565b60405163c475abff60e01b815260048101869052602481018590529091505f906001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063c475abff906044016020604051808303815f875af1158015612154573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906121789190614e64565b6040516331a9108f60e11b8152600481018790529091507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa9250505080156121fc575060408051601f3d908101601f191682019092526121f991810190614fbe565b60015b6122095791506107ea9050565b6001600160a01b038116301415806122b157506040516302571be360e01b81526004810184905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015612281573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906122a59190614fbe565b6001600160a01b031614155b156122c0575091506107ea9050565b505f6122cf6276a70083614e8f565b5f8481526001602052604090205490915060a081901c6122f185838386613a33565b50919695505050505050565b5f866123098133611480565b61232a57803360405163168ab55d60e31b81526004016107ad929190614dea565b5f878760405161233b929190614ff4565b6040518091039020905061234f898261326e565b925061235b898461329a565b61236583866133d3565b5f6123a68a858b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061340692505050565b90506123b48a8588886134cd565b94506123bf84613510565b61246b576040516306ab592360e01b8152600481018b9052602481018390523060448201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906306ab5923906064016020604051808303815f875af1158015612434573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906124589190614e64565b506124668482898989613b83565b6124b0565b6124b08a858b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508d92508c91508b90506135fc565b5050509695505050505050565b5f6125005f86868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613bc59050565b6007549091506001600160a01b031661252c5760405163093075b560e21b815260040160405180910390fd5b6125368133611480565b61255757803360405163168ab55d60e31b81526004016107ad929190614dea565b5f8080612563846107f0565b919450925090505f6125748561085e565b905061257f85613c81565b60075f9054906101000a90046001600160a01b03166001600160a01b0316639198c2768a8a878787878e8e6040518963ffffffff1660e01b81526004016125cd989796959493929190615073565b5f604051808303815f87803b1580156125e4575f80fd5b505af11580156125f6573d5f803e3d5ffd5b50505050505050505050505050565b836126108133611480565b61263157803360405163168ab55d60e31b81526004016107ad929190614dea565b84601c5f61263e836107f0565b5091505063ffffffff828216161561266c5760405163a2a7201360e01b8152600481018490526024016107ad565b60405163cf40882360e01b8152600481018990523060248201526001600160a01b0387811660448301526001600160401b03871660648301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063cf408823906084015f604051808303815f87803b1580156126e8575f80fd5b505af11580156126fa573d5f803e3d5ffd5b5050506001600160a01b038816905061275f575f612717896107f0565b509150506201ffff196202000082160161274f57604051632ca49b0d60e11b81526001600160a01b03891660048201526024016107ad565b612759895f613a98565b506118b6565b5f61276989611655565b905061278981898b5f1c600160405180602001604052805f815250613d1e565b505050505050505050565b61279e838361326e565b6127a88133611480565b6127c957803360405163168ab55d60e31b81526004016107ad929190614dea565b7f6c32148f748aba23997146d7fe89e962e3cc30271290fb96f5f4337756c03b5284016128095760405163615a470360e01b815260040160405180910390fd5b6001600160a01b038216158061282757506001600160a01b03821630145b1561285057604051632ca49b0d60e11b81526001600160a01b03831660048201526024016107ad565b61164f611831858561326e565b5f80612869848461326e565b90505f61287582613510565b90505f805160206154fc83398151915285146128945791506107ea9050565b6040516331a9108f60e11b8152600481018590527f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa925050508015612915575060408051601f3d908101601f1916820190925261291291810190614fbe565b60015b612923575f925050506107ea565b6001600160a01b0316301492506107ea915050565b612940613215565b6001600160a01b0382165f81815260046020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf8791015b60405180910390a25050565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205460ff1690565b5f80612a105f87878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613dfe9050565b915091505f612a578288888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613bc59050565b90505f612a64828561326e565b5f818152600660205260409020909150612a7f888a8361511e565b507f6c32148f748aba23997146d7fe89e962e3cc30271290fb96f5f4337756c03b528201612ac05760405163615a470360e01b815260040160405180910390fd5b6040516302571be360e01b8152600481018290525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa158015612b25573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612b499190614fbe565b90506001600160a01b0381163314801590612bef575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063e985e9c590604401602060405180830381865afa158015612bc9573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612bed9190614fd9565b155b15612c1157813360405163168ab55d60e31b81526004016107ad929190614dea565b6001600160a01b03861615612c9c57604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a90612c6e9085908a90600401614dea565b5f604051808303815f87803b158015612c85575f80fd5b505af1158015612c97573d5f803e3d5ffd5b505050505b604051635b0fc9c360e01b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635b0fc9c390612cea9085903090600401614dea565b5f604051808303815f87803b158015612d01575f80fd5b505af1158015612d13573d5f803e3d5ffd5b50505050612789828a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201829052508d93509150819050613b83565b6001600160a01b038416612d7f5760405162461bcd60e51b81526004016107ad90614eee565b6001600160a01b038516331480612d9b5750612d9b853361299f565b612df95760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2063616c6c6572206973206e6f74206f776e6572206e6f7260448201526808185c1c1c9bdd995960ba1b60648201526084016107ad565b6112138585858585613d1e565b612e0e613215565b6001600160a01b038116612e735760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107ad565b61209b81613a49565b5f8181526006602052604081208054829190612e9790614eb6565b80601f0160208091040260200160405190810160405280929190818152602001828054612ec390614eb6565b8015612f0e5780601f10612ee557610100808354040283529160200191612f0e565b820191905f5260205f20905b815481529060010190602001808311612ef157829003601f168201915b5050505050905080515f03612f2557505f92915050565b5f80612f318382613dfe565b90925090505f612f418483613bc5565b9050610954818461285d565b5f8042836001600160401b03161015612f775761ffff1962010000851601612f73575f94505b5f93505b50929391925050565b5f6001600160e01b03198216636cdb3d1360e11b1480612fb057506001600160e01b031982166303a24d0760e21b145b806107ea57506301ffc9a760e01b6001600160e01b03198316146107ea565b5f612fd982611655565b9050806001600160a01b0316836001600160a01b0316036130465760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084016107ad565b336001600160a01b03821614806130625750613062813361299f565b6130d45760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016107ad565b6108e08383613eb2565b5f620200008381161480156108995750426130fc6276a700846151d7565b6001600160401b0316109392505050565b845160208601205f61312c5f805160206154fc8339815191528361326e565b90505f61315488604051806040016040528060058152602001626cae8d60e31b815250613f1f565b5f83815260066020526040902090915061316e82826151f7565b50613181828289620300008a1789613b83565b6001600160a01b038416156118b657604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a906131de9085908890600401614dea565b5f604051808303815f87803b1580156131f5575f80fd5b505af1158015613207573d5f803e3d5ffd5b505050505050505050505050565b5f546001600160a01b0316331461179f5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107ad565b604080516020808201949094528082019290925280518083038201815260609092019052805191012090565b5f80806132a6846107f0565b91945092509050426001600160401b0382161080801561336657506001600160a01b038416158061336657506040516302571be360e01b8152600481018690525f906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015613337573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061335b9190614fbe565b6001600160a01b0316145b156133a4575f613375876107f0565b50915050602081161561339e5760405163a2a7201360e01b8152600481018790526024016107ad565b506133cb565b620100008316156133cb5760405163a2a7201360e01b8152600481018690526024016107ad565b505050505050565b63fffdffff81811763ffffffff16146134025760405163a2a7201360e01b8152600481018390526024016107ad565b5050565b60605f6134aa8360065f8881526020019081526020015f20805461342990614eb6565b80601f016020809104026020016040519081016040528092919081815260200182805461345590614eb6565b80156134a05780601f10613477576101008083540402835291602001916134a0565b820191905f5260205f20905b81548152906001019060200180831161348357829003601f168201915b5050505050613f1f565b5f8581526006602052604090209091506134c482826151f7565b50949350505050565b5f806134d8856107f0565b925050505f806134e9885f1c6107f0565b92509250506134f98787846138f7565b613504858483613932565b98975050505050505050565b5f8061351b83611655565b6001600160a01b0316141580156107ea57506040516302571be360e01b81526004810183905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015613592573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906135b69190614fbe565b6001600160a01b03161492915050565b5f86815260066020526040812080546135e491879161342990614eb6565b90506135f38682868686613b83565b50505050505050565b5f8080613608886107f0565b9250925092505f61362f8860065f8d81526020019081526020015f20805461342990614eb6565b5f8a815260066020526040902080549192509061364b90614eb6565b90505f0361366c575f89815260066020526040902061366a82826151f7565b505b61367b89858886178589613977565b6001600160a01b03871661369857613693895f613a98565b610ab4565b610ab484888b5f1c600160405180602001604052805f815250613d1e565b6201ffff19620200008316016136d6576136d36276a700826151d7565b90505b42816001600160401b0316101561370f576201000082161561370a5760405162461bcd60e51b81526004016107ad90614f47565b613734565b60048216156137345760405163a2a7201360e01b8152600481018490526024016107ad565b604082165f036108e05750505f90815260036020526040902080546001600160a01b0319169055565b60c0816001600160401b0316901b60a08363ffffffff16901b846001600160a01b0316171760015f8681526020019081526020015f208190555050505050565b6001600160a01b0384163b156133cb5760405163bc197c8160e01b81526001600160a01b0385169063bc197c81906137e190899089908890889088906004016152b2565b6020604051808303815f875af192505050801561381b575060408051601f3d908101601f1916820190925261381891810190615303565b60015b6138c75761382761531e565b806308c379a003613860575061383b615337565b806138465750613862565b8060405162461bcd60e51b81526004016107ad91906143d4565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e20455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b60648201526084016107ad565b6001600160e01b0319811663bc197c8160e01b146135f35760405162461bcd60e51b81526004016107ad906153bf565b63ffff000082161580159060018316159082906139115750805b156112135760405163a2a7201360e01b8152600481018690526024016107ad565b5f816001600160401b0316846001600160401b03161115613951578193505b826001600160401b0316846001600160401b0316101561396f578293505b509192915050565b61398385858584613a33565b60405163ffffffff8416815285907f39873f00c80f4f94b7bd1594aebcf650f003545b74824d57ddf4939e3ff3a34b9060200160405180910390a2816001600160401b0316816001600160401b03161115611213576040516001600160401b038216815285907ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b132906020015b60405180910390a25050505050565b5f80613a29836107f0565b5090949350505050565b613a3d8483613f96565b61164f8484848461375d565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b613aa3826001611e38565b15613ac45760405163a2a7201360e01b8152600481018390526024016107ad565b613acd82613c81565b604051635b0fc9c360e01b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635b0fc9c390613b1b9085908590600401614dea565b5f604051808303815f87803b158015613b32575f80fd5b505af1158015613b44573d5f803e3d5ffd5b50506040516001600160a01b03841681528492507fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c49150602001612993565b613b8f85848484613fcf565b847f8ce7013e8abebc55c3890a68f5a27c67c3f7efa64e584de5fb22363c606fd34085858585604051613a0f9493929190615407565b5f805f613bd28585613dfe565b909250905081613c435760018551613bea919061544d565b8414613c385760405162461bcd60e51b815260206004820152601d60248201527f6e616d65686173683a204a756e6b20617420656e64206f66206e616d6500000060448201526064016107ad565b505f91506107ea9050565b613c4d8582613bc5565b6040805160208101929092528101839052606001604051602081830303815290604052805190602001209250505092915050565b5f8181526001602052604090205460a081901c60c082901c613ca4838383612f4d565b5f86815260036020526040812080546001600160a01b0319169055909350613cd091508590848461375d565b60408051858152600160208201525f916001600160a01b0386169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b5f805f613d2a866107f0565b925092509250613d3b8683836136b6565b846001148015613d5c5750876001600160a01b0316836001600160a01b0316145b613d785760405162461bcd60e51b81526004016107ad90614f47565b866001600160a01b0316836001600160a01b031603613d9957505050611213565b613da58688848461375d565b60408051878152602081018790526001600160a01b03808a1692908b169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46118b6338989898989614041565b5f8083518310613e505760405162461bcd60e51b815260206004820152601e60248201527f726561644c6162656c3a20496e646578206f7574206f6620626f756e6473000060448201526064016107ad565b5f848481518110613e6357613e63614f33565b016020015160f81c90508015613e8f57613e8885613e82866001615460565b836140fb565b9250613e93565b5f92505b613e9d8185615460565b613ea8906001615460565b9150509250929050565b5f81815260036020526040902080546001600160a01b0319166001600160a01b0384169081179091558190613ee682611655565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6060600183511015613f4457604051631406d65b60e11b815260040160405180910390fd5b60ff83511115613f69578260405163e3ba295f60e01b81526004016107ad91906143d4565b82518383604051602001613f7f93929190615473565b604051602081830303815290604052905092915050565b61ffff811615801590613fae57506201000181811614155b156134025760405163a2a7201360e01b8152600481018390526024016107ad565b613fd98483613f96565b5f848152600160205260409020546001600160a01b0381161561403557613fff85613c81565b6040515f815285907fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c49060200160405180910390a25b6112138585858561411d565b6001600160a01b0384163b156133cb5760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e619061408590899089908890889088906004016154b7565b6020604051808303815f875af19250505080156140bf575060408051601f3d908101601f191682019092526140bc91810190615303565b60015b6140cb5761382761531e565b6001600160e01b0319811663f23a6e6160e01b146135f35760405162461bcd60e51b81526004016107ad906153bf565b82515f906141098385615460565b1115614113575f80fd5b5091016020012090565b835f808061412a846107f0565b9194509250905063ffff000082166001600160401b038087169083161115614150578195505b42826001600160401b03161061416557958617955b6001600160a01b038416156141bc5760405162461bcd60e51b815260206004820152601f60248201527f455243313135353a206d696e74206f66206578697374696e6720746f6b656e0060448201526064016107ad565b6001600160a01b03881661421c5760405162461bcd60e51b815260206004820152602160248201527f455243313135353a206d696e7420746f20746865207a65726f206164647265736044820152607360f81b60648201526084016107ad565b306001600160a01b038916036142915760405162461bcd60e51b815260206004820152603460248201527f455243313135353a206e65774f776e65722063616e6e6f74206265207468652060448201527313985b5955dc985c1c195c8818dbdb9d1c9858dd60621b60648201526084016107ad565b61429d8589898961375d565b60408051868152600160208201526001600160a01b038a16915f9133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4612789335f8a88600160405180602001604052805f815250614041565b6001600160a01b038116811461209b575f80fd5b5f8060408385031215614327575f80fd5b823561433281614302565b946020939093013593505050565b5f60208284031215614350575f80fd5b5035919050565b6001600160e01b03198116811461209b575f80fd5b5f6020828403121561437c575f80fd5b813561089981614357565b5f5b838110156143a1578181015183820152602001614389565b50505f910152565b5f81518084526143c0816020860160208601614387565b601f01601f19169290920160200192915050565b602081525f61089960208301846143a9565b5f80604083850312156143f7575f80fd5b82359150602083013561440981614302565b809150509250929050565b80356001600160401b038116811461442a575f80fd5b919050565b5f8060408385031215614440575f80fd5b8235915061445060208401614414565b90509250929050565b5f8083601f840112614469575f80fd5b5081356001600160401b0381111561447f575f80fd5b602083019150836020828501011115614496575f80fd5b9250929050565b5f805f805f608086880312156144b1575f80fd5b85356144bc81614302565b945060208601356144cc81614302565b93506040860135925060608601356001600160401b038111156144ed575f80fd5b6144f988828901614459565b969995985093965092949392505050565b5f6020828403121561451a575f80fd5b813561089981614302565b634e487b7160e01b5f52604160045260245ffd5b601f8201601f191681016001600160401b038111828210171561455e5761455e614525565b6040525050565b5f6001600160401b0382111561457d5761457d614525565b50601f01601f191660200190565b5f82601f83011261459a575f80fd5b81356145a581614565565b6040516145b28282614539565b8281528560208487010111156145c6575f80fd5b826020860160208301375f92810160200192909252509392505050565b803563ffffffff8116811461442a575f80fd5b5f805f805f805f60e0888a03121561460c575f80fd5b8735965060208801356001600160401b03811115614628575f80fd5b6146348a828b0161458b565b965050604088013561464581614302565b9450606088013561465581614302565b935061466360808901614414565b925061467160a089016145e3565b915061467f60c08901614414565b905092959891949750929550565b5f6001600160401b038211156146a5576146a5614525565b5060051b60200190565b5f82601f8301126146be575f80fd5b813560206146cb8261468d565b6040516146d88282614539565b80915083815260208101915060208460051b8701019350868411156146fb575f80fd5b602086015b84811015611e2d5780358352918301918301614700565b5f805f805f60a0868803121561472b575f80fd5b853561473681614302565b9450602086013561474681614302565b935060408601356001600160401b0380821115614761575f80fd5b61476d89838a016146af565b94506060880135915080821115614782575f80fd5b61478e89838a016146af565b935060808801359150808211156147a3575f80fd5b506147b08882890161458b565b9150509295509295909350565b5f805f80608085870312156147d0575f80fd5b84359350602085013592506147e7604086016145e3565b91506147f560608601614414565b905092959194509250565b803561ffff8116811461442a575f80fd5b5f8060408385031215614822575f80fd5b8235915061445060208401614800565b5f8060408385031215614843575f80fd5b82356001600160401b0380821115614859575f80fd5b818501915085601f83011261486c575f80fd5b813560206148798261468d565b6040516148868282614539565b83815260059390931b85018201928281019150898411156148a5575f80fd5b948201945b838610156148cc5785356148bd81614302565b825294820194908201906148aa565b965050860135925050808211156148e1575f80fd5b50613ea8858286016146af565b5f815180845260208085019450602084015f5b8381101561491d57815187529582019590820190600101614901565b509495945050505050565b602081525f61089960208301846148ee565b5f805f6060848603121561494c575f80fd5b833561495781614302565b9250602084013561496781614302565b929592945050506040919091013590565b5f805f6060848603121561498a575f80fd5b83359250602084013591506149a160408501614414565b90509250925092565b5f805f606084860312156149bc575f80fd5b8335925060208401356149ce81614302565b915060408401356149de81614302565b809150509250925092565b5f805f805f608086880312156149fd575f80fd5b85356001600160401b03811115614a12575f80fd5b614a1e88828901614459565b9096509450506020860135614a3281614302565b9250614a4060408701614800565b91506060860135614a5081614302565b809150509295509295909350565b801515811461209b575f80fd5b5f8060408385031215614a7c575f80fd5b8235614a8781614302565b9150602083013561440981614a5e565b5f805f805f8060a08789031215614aac575f80fd5b86356001600160401b03811115614ac1575f80fd5b614acd89828a01614459565b9097509550506020870135614ae181614302565b9350604087013592506060870135614af881614302565b9150614b0660808801614800565b90509295509295509295565b5f8060408385031215614b23575f80fd5b82359150614450602084016145e3565b5f8060408385031215614b44575f80fd5b50508035926020909101359150565b5f805f805f8060a08789031215614b68575f80fd5b8635955060208701356001600160401b03811115614b84575f80fd5b614b9089828a01614459565b9096509450506040870135614ba481614302565b9250614bb2606088016145e3565b9150614b0660808801614414565b5f805f8060408587031215614bd3575f80fd5b84356001600160401b0380821115614be9575f80fd5b614bf588838901614459565b90965094506020870135915080821115614c0d575f80fd5b50614c1a87828801614459565b95989497509550505050565b5f805f8060808587031215614c39575f80fd5b843593506020850135614c4b81614302565b925060408501356147e781614302565b5f805f60608486031215614c6d575f80fd5b833592506020840135915060408401356149de81614302565b5f8060408385031215614c97575f80fd5b8235614ca281614302565b9150602083013561440981614302565b5f805f8060608587031215614cc5575f80fd5b84356001600160401b03811115614cda575f80fd5b614ce687828801614459565b9095509350506020850135614cfa81614302565b91506040850135614d0a81614302565b939692955090935050565b5f805f805f60a08688031215614d29575f80fd5b8535614d3481614302565b94506020860135614d4481614302565b9350604086013592506060860135915060808601356001600160401b03811115614d6c575f80fd5b6147b08882890161458b565b5f60208284031215614d88575f80fd5b81516001600160401b03811115614d9d575f80fd5b8201601f81018413614dad575f80fd5b8051614db881614565565b604051614dc58282614539565b828152866020848601011115614dd9575f80fd5b610954836020830160208701614387565b9182526001600160a01b0316602082015260400190565b5f805f8060808587031215614e14575f80fd5b84356001600160401b03811115614e29575f80fd5b614e358782880161458b565b9450506020850135614e4681614302565b9250614e5460408601614800565b91506060850135614d0a81614302565b5f60208284031215614e74575f80fd5b5051919050565b634e487b7160e01b5f52601160045260245ffd5b6001600160401b03818116838216019080821115614eaf57614eaf614e7b565b5092915050565b600181811c90821680614eca57607f821691505b602082108103614ee857634e487b7160e01b5f52602260045260245ffd5b50919050565b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b634e487b7160e01b5f52603260045260245ffd5b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b604081525f614fa360408301856148ee565b8281036020840152614fb581856148ee565b95945050505050565b5f60208284031215614fce575f80fd5b815161089981614302565b5f60208284031215614fe9575f80fd5b815161089981614a5e565b818382375f9101908152919050565b60208082526028908201527f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f604082015267373a3937b63632b960c11b606082015260800190565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b60c081525f61508660c083018a8c61504b565b6001600160a01b03898116602085015263ffffffff891660408501526001600160401b03881660608501528616608084015282810360a08401526150cb81858761504b565b9b9a5050505050505050505050565b601f8211156108e057805f5260205f20601f840160051c810160208510156150ff5750805b601f840160051c820191505b81811015611213575f815560010161510b565b6001600160401b0383111561513557615135614525565b615149836151438354614eb6565b836150da565b5f601f84116001811461517a575f85156151635750838201355b5f19600387901b1c1916600186901b178355611213565b5f83815260208120601f198716915b828110156151a95786850135825560209485019460019092019101615189565b50868210156151c5575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b6001600160401b03828116828216039080821115614eaf57614eaf614e7b565b81516001600160401b0381111561521057615210614525565b6152248161521e8454614eb6565b846150da565b602080601f831160018114615257575f84156152405750858301515b5f19600386901b1c1916600185901b1785556133cb565b5f85815260208120601f198616915b8281101561528557888601518255948401946001909101908401615266565b50858210156152a257878501515f19600388901b60f8161c191681555b5050505050600190811b01905550565b6001600160a01b0386811682528516602082015260a0604082018190525f906152dd908301866148ee565b82810360608401526152ef81866148ee565b9050828103608084015261350481856143a9565b5f60208284031215615313575f80fd5b815161089981614357565b5f60033d11156153345760045f803e505f5160e01c5b90565b5f60443d10156153445790565b6040516003193d81016004833e81513d6001600160401b03816024840111818411171561537357505050505090565b828501915081518181111561538b5750505050505090565b843d87010160208285010111156153a55750505050505090565b6153b460208286010187614539565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b608081525f61541960808301876143a9565b6001600160a01b039590951660208301525063ffffffff9290921660408301526001600160401b0316606090910152919050565b818103818111156107ea576107ea614e7b565b808201808211156107ea576107ea614e7b565b60ff60f81b8460f81b1681525f8351615493816001850160208801614387565b8351908301906154aa816001840160208801614387565b0160010195945050505050565b6001600160a01b03868116825285166020820152604081018490526060810183905260a0608082018190525f906154f0908301846143a9565b97965050505050505056fe93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4aea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2a68925cf5169f28586095d5b5b9933b3008f4c793a48be4f59b8b2bc62aa60a":"0x1","0x54cdd369e4e8a8515e52ca72ec816c2101831ad1f18bf44102ed171459c9b4f8":"0x2","0xa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb49":"0xffffffffffffffff000100010000000000000000000000000000000000000000","0xafa26c20e8b3d9a2853d642cfe1021dae26242ffedfac91c97aab212c1a4b93b":"0xffffffffffffffff000100010000000000000000000000000000000000000000","0xef5b11c47ebee44618abc22110e10e3b408ea5e799056d2b38461aa7b97c5a97":"0x1","0xfb9e8e321b8a5ec48f12a7b41f22c6e595d761285c9eb19d8dda7c99edf1b54f":"0x36574680000000000000000000000000000000000000000000000000000000a"}},"0x6e1eb616c7d69491f9a880f815ff5574768cba20":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b506004361061007a575f3560e01c806314ab90381161005857806314ab90381461010357806316a25cbd146101165780631896f70a146101625780635b0fc9c314610175575f80fd5b80630178b8bf1461007e57806302571be3146100c657806306ab5923146100ee575b5f80fd5b6100a961008c366004610403565b5f908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100a96100d4366004610403565b5f908152602081905260409020546001600160a01b031690565b6101016100fc366004610435565b610188565b005b610101610111366004610467565b610242565b610149610124366004610403565b5f90815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100bd565b6101016101703660046104a1565b6102e2565b6101016101833660046104a1565b610374565b5f8381526020819052604090205483906001600160a01b031633146101ab575f80fd5b60408051602080820187905281830186905282518083038401815260608301808552815191909201206001600160a01b0386169091529151859187917fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829181900360800190a35f90815260208190526040902080546001600160a01b0319166001600160a01b039390931692909217909155505050565b5f8281526020819052604090205482906001600160a01b03163314610265575f80fd5b60405167ffffffffffffffff8316815283907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a2505f91825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b5f8281526020819052604090205482906001600160a01b03163314610305575f80fd5b6040516001600160a01b038316815283907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a2505f9182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b5f8281526020819052604090205482906001600160a01b03163314610397575f80fd5b6040516001600160a01b038316815283907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a2505f9182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b5f60208284031215610413575f80fd5b5035919050565b80356001600160a01b0381168114610430575f80fd5b919050565b5f805f60608486031215610447575f80fd5b833592506020840135915061045e6040850161041a565b90509250925092565b5f8060408385031215610478575f80fd5b82359150602083013567ffffffffffffffff81168114610496575f80fd5b809150509250929050565b5f80604083850312156104b2575f80fd5b823591506104c26020840161041a565b9050925092905056fea164736f6c6343000818000a","storage":{"0x859ecef2e168dc10231b000bd53493b42bc9d944cac29d94582c1e1d43592131":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x7bb6cd9be29fab783c0b494a06fed8b2e2596b7a":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100ea5760003560e01c80636debcb8d1161008c578063b34f33c511610066578063b34f33c514610741578063d0778d6c14610814578063ef2c3088146108f2578063f5090c1e14610980576100ea565b80636debcb8d146105ca5780636fab95b3146106585780637b1039991461071d576100ea565b8063511f1112116100c8578063511f1112146103c557806361603dd91461044857806368b6154f146104bd5780636ccbae5f1461059b576100ea565b806307eca395146100ef578063280d9b051461021457806330135293146102f2575b600080fd5b610212600480360360a081101561010557600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561013457600080fd5b82018360208201111561014657600080fd5b803590602001918460018302840111600160201b8311171561016757600080fd5b919390929091602081019035600160201b81111561018457600080fd5b82018360208201111561019657600080fd5b803590602001918460018302840111600160201b831117156101b757600080fd5b919390929091602081019035600160201b8111156101d457600080fd5b8201836020820111156101e657600080fd5b803590602001918460018302840111600160201b8311171561020757600080fd5b509092509050610aae565b005b610212600480360360a081101561022a57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561026457600080fd5b82018360208201111561027657600080fd5b803590602001918460018302840111600160201b8311171561029757600080fd5b919390929091602081019035600160201b8111156102b457600080fd5b8201836020820111156102c657600080fd5b803590602001918460018302840111600160201b831117156102e757600080fd5b509092509050610c92565b6102126004803603608081101561030857600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561033757600080fd5b82018360208201111561034957600080fd5b803590602001918460018302840111600160201b8311171561036a57600080fd5b919390929091602081019035600160201b81111561038757600080fd5b82018360208201111561039957600080fd5b803590602001918460018302840111600160201b831117156103ba57600080fd5b509092509050610e3d565b610212600480360360608110156103db57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561040a57600080fd5b82018360208201111561041c57600080fd5b803590602001918460018302840111600160201b8311171561043d57600080fd5b509092509050610fcc565b6102126004803603604081101561045e57600080fd5b81359190810190604081016020820135600160201b81111561047f57600080fd5b82018360208201111561049157600080fd5b803590602001918460018302840111600160201b831117156104b257600080fd5b5090925090506110c9565b610212600480360360a08110156104d357600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561050d57600080fd5b82018360208201111561051f57600080fd5b803590602001918460018302840111600160201b8311171561054057600080fd5b919390929091602081019035600160201b81111561055d57600080fd5b82018360208201111561056f57600080fd5b803590602001918460018302840111600160201b8311171561059057600080fd5b5090925090506111ae565b6105b8600480360360208110156105b157600080fd5b50356113a8565b60408051918252519081900360200190f35b610212600480360360808110156105e057600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561061a57600080fd5b82018360208201111561062c57600080fd5b803590602001918460018302840111600160201b8311171561064d57600080fd5b5090925090506113ba565b6102126004803603606081101561066e57600080fd5b81359190810190604081016020820135600160201b81111561068f57600080fd5b8201836020820111156106a157600080fd5b803590602001918460018302840111600160201b831117156106c257600080fd5b919390929091602081019035600160201b8111156106df57600080fd5b8201836020820111156106f157600080fd5b803590602001918460018302840111600160201b8311171561071257600080fd5b5090925090506114d4565b610725611675565b604080516001600160a01b039092168252519081900360200190f35b6102126004803603608081101561075757600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561078657600080fd5b82018360208201111561079857600080fd5b803590602001918460018302840111600160201b831117156107b957600080fd5b919390929091602081019035600160201b8111156107d657600080fd5b8201836020820111156107e857600080fd5b803590602001918460018302840111600160201b8311171561080957600080fd5b509092509050611684565b610212600480360360a081101561082a57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561086457600080fd5b82018360208201111561087657600080fd5b803590602001918460018302840111600160201b8311171561089757600080fd5b919390929091602081019035600160201b8111156108b457600080fd5b8201836020820111156108c657600080fd5b803590602001918460018302840111600160201b831117156108e757600080fd5b5090925090506117de565b6102126004803603608081101561090857600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561094257600080fd5b82018360208201111561095457600080fd5b803590602001918460018302840111600160201b8311171561097557600080fd5b5090925090506119e4565b610212600480360360c081101561099657600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156109d057600080fd5b8201836020820111156109e257600080fd5b803590602001918460018302840111600160201b83111715610a0357600080fd5b919390929091602081019035600160201b811115610a2057600080fd5b820183602082011115610a3257600080fd5b803590602001918460018302840111600160201b83111715610a5357600080fd5b919390929091602081019035600160201b811115610a7057600080fd5b820183602082011115610a8257600080fd5b803590602001918460018302840111600160201b83111715610aa357600080fd5b509092509050611ad3565b610bb163ce9fb82b89898989898960405160240180876001600160a01b03166001600160a01b0316815260200186815260200180602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f820116905080830192505050985050505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208884848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b600154604051630119f80560e21b81526001600160a01b038a811660048301908152602483018b9052608060448401908152608484018a90529190931692630467e014928c928c928c928c928c928c92909190606481019060a401878780828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f82011690508083019250505098505050505050505050600060405180830381600087803b158015610c7057600080fd5b505af1158015610c84573d6000803e3d6000fd5b505050505050505050505050565b610d8363b88d4fde888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040516315eab15d60e21b81526001600160a01b03898116600483019081528982166024840152604483018990526080606484019081526084840188905291909316926357aac574928b928b928b928b928b929160a401848480828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b158015610e1c57600080fd5b505af1158015610e30573d6000803e3d6000fd5b5050505050505050505050565b610f09637c69eae28787878760405160240180856001600160a01b03166001600160a01b0316815260200184815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09d909d1b9c909c178c529351909a208a51918d01849004840282018401909a528b81528f985096508b95508a94508493505085019050838280828437600092019190915250611d5492505050565b600154604051630119f80560e21b81526001600160a01b038881166004830190815260248301899052608060448401908152608484018890529190931692630467e014928a928a928a928a9290606481019060a401858580828437600081840152601f19601f8201169050808301925050508381038252600081526020016020019650505050505050600060405180830381600087803b158015610fac57600080fd5b505af1158015610fc0573d6000803e3d6000fd5b50505050505050505050565b604080516001600160a01b038616602482015260448082018690528251808303909101815260649091018252602081810180516001600160e01b0316632392c18960e01b17815291519091208251601f85018390048302810183019093528383526110569290918691908690869081908401838280828437600092019190915250611d5492505050565b60015460408051631292e83560e11b81526001600160a01b0387811660048301526024820187905291519190921691632525d06a91604480830192600092919082900301818387803b1580156110ab57600080fd5b505af11580156110bf573d6000803e3d6000fd5b5050505050505050565b6040805160248082018690528251808303909101815260449091018252602081810180516001600160e01b0316630852cd8d60e31b17815291519091208251601f85018390048302810183019093528383526111449290918691908690869081908401838280828437600092019190915250611d5492505050565b6001546040805163e67ca8a360e01b81526004810186905290516001600160a01b039092169163e67ca8a39160248082019260009290919082900301818387803b15801561119157600080fd5b505af11580156111a5573d6000803e3d6000fd5b50505050505050565b61129f639e5be9a5888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b03909316926302759c37928b928b9286926368b62d32928d928d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561132757600080fd5b505afa15801561133b573d6000803e3d6000fd5b505050506040513d602081101561135157600080fd5b5051604080516001600160e01b031960e087901b1681526001600160a01b03948516600482015292909316602483015260448201529051606480830192600092919082900301818387803b158015610e1c57600080fd5b60009081526020819052604090205490565b604080516001600160a01b0380881660248301528616604482015260648082018690528251808303909101815260849091018252602081810180516001600160e01b0316632142170760e11b17815291519091208251601f850183900483028101830190935283835261144c9290918691908690869081908401838280828437600092019190915250611d5492505050565b600154604080516315eab15d60e21b81526001600160a01b0388811660048301528781166024830152604482018790526080606483015260006084830181905292519316926357aac5749260c48084019391929182900301818387803b1580156114b557600080fd5b505af11580156114c9573d6000803e3d6000fd5b505050505050505050565b611585635cbe11128686866040516024018084815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09c909c1b9b909b178b5293519099208951918c018490048402820184019099528a81528e975095508a9450899350839250508401838280828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b039093169263e67ca8a39284926368b62d32928b928b928b929190606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561160b57600080fd5b505afa15801561161f573d6000803e3d6000fd5b505050506040513d602081101561163557600080fd5b5051604080516001600160e01b031960e085901b168152600481019290925251602480830192600092919082900301818387803b1580156114b557600080fd5b6001546001600160a01b031690565b61175063d8d3cc6e8787878760405160240180856001600160a01b03166001600160a01b0316815260200184815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09d909d1b9c909c178c529351909a208a51918d01849004840282018401909a528b81528f985096508b95508a94508493505085019050838280828437600092019190915250611d5492505050565b60015460405163b546666960e01b81526001600160a01b03888116600483019081526024830189905260606044840190815260648401889052919093169263b5466669928a928a928a928a9290608401848480828437600081840152601f19601f82011690508083019250505095505050505050600060405180830381600087803b158015610fac57600080fd5b6118cf639d743989888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b03909316926357aac574928b928b9286926368b62d32928d928d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561195757600080fd5b505afa15801561196b573d6000803e3d6000fd5b505050506040513d602081101561198157600080fd5b5051604080516001600160e01b031960e087901b1681526001600160a01b039485166004820152929093166024830152604482015260806064820152600060848201819052915160c4808301939282900301818387803b158015610e1c57600080fd5b604080516001600160a01b0380881660248301528616604482015260648082018690528251808303909101815260849091018252602081810180516001600160e01b03166323b872dd60e01b17815291519091208251601f8501839004830281018301909352838352611a769290918691908690869081908401838280828437600092019190915250611d5492505050565b600154604080516302759c3760e01b81526001600160a01b038881166004830152878116602483015260448201879052915191909216916302759c3791606480830192600092919082900301818387803b1580156114b557600080fd5b611bf063c29b52f98a8a8a8a8a8a8a60405160240180886001600160a01b03166001600160a01b03168152602001876001600160a01b03166001600160a01b0316815260200186815260200180602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f82011690508083019250505099505050505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208884848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b8152600481018a815260248201928352604482018990526001600160a01b03909316926357aac574928d928d9286926368b62d32928f928f928f92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b158015611c7857600080fd5b505afa158015611c8c573d6000803e3d6000fd5b505050506040513d6020811015611ca257600080fd5b50516040516001600160e01b031960e086901b1681526001600160a01b0380851660048301908152908416602483015260448201839052608060648301908152608483018b90528b928b92919060a401848480828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b158015611d3157600080fd5b505af1158015611d45573d6000803e3d6000fd5b50505050505050505050505050565b6000828152602081815260408083205481518084018890523060601b81840152605480820183905283518083039091018152607490910190925281519190920120909190611db3908490611da790611ea9565b9063ffffffff611efa16565b90506001600160a01b03811615801590611e4957506001546040805163430c208160e01b81526001600160a01b038481166004830152602482018890529151919092169163430c2081916044808301926020929190829003018186803b158015611e1c57600080fd5b505afa158015611e30573d6000803e3d6000fd5b505050506040513d6020811015611e4657600080fd5b50515b611e8e576040805162461bcd60e51b8152602060048201526011602482015270494e56414c49445f5349474e415455524560781b604482015290519081900360640190fd5b50505060009081526020819052604090208054600101905550565b604080517f19457468657265756d205369676e6564204d6573736167653a0a333200000000602080830191909152603c8083019490945282518083039094018452605c909101909152815191012090565b60008151604114611f0d57506000611fe3565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0821115611f535760009350505050611fe3565b8060ff16601b14158015611f6b57508060ff16601c14155b15611f7c5760009350505050611fe3565b6040805160008152602080820180845289905260ff8416828401526060820186905260808201859052915160019260a0808401939192601f1981019281900390910190855afa158015611fd3573d6000803e3d6000fd5b5050506020604051035193505050505b9291505056fea265627a7a7231582014816bfd0c1519ce8c4cf272eb0526ffdba3abef0df7f17deb0da40bd8abb77f64736f6c634300050c0032","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533"}},"0x7c3c91245769c8b7450ad522792dec4bd4bf797f":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b506004361061003f575f3560e01c80631bf7e13e146100435780636ccbae5f1461006c578063a424740014610099575b5f80fd5b610056610051366004610749565b6100bc565b604051610063919061082c565b60405180910390f35b61008b61007a36600461083e565b5f9081526001602052604090205490565b604051908152602001610063565b6100ac6100a7366004610749565b6101d6565b6040519015158152602001610063565b60605f5a90506100cd8585856101d6565b6101315760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e61676572466f727761726465723a205349474e415455604482015269149157d253959053125160b21b60648201526084015b60405180910390fd5b6101cb6101416020870187610870565b5f546001600160a01b031660408801358461015f60608b018b610889565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f9201919091525061023292505050565b9150505b9392505050565b5f61022a6101e38561093a565b5f54604080516020601f88018190048102820181019092528681526001600160a01b03909216919087908790819084018382808284375f9201919091525061030e92505050565b949350505050565b606061023d85610453565b5f80876001600160a01b0316866102568b8a898961047e565b60405161026391906109f5565b5f604051808303815f8787f1925050503d805f811461029d576040519150601f19603f3d011682016040523d82523d5f602084013e6102a2565b606091505b5090925090506102b3603f87610a10565b5a116102c1576102c1610a2f565b61030182826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506104ae565b9998505050505050505050565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015610352573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103769190610a43565b90505f6104238660600151805190602001208688602001516040516020016103c39392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561044957508551610449906001600160a01b031682866104e7565b9695505050505050565b5f8181526001602081905260409091205461046d91610a5a565b5f9182526001602052604090912055565b606082858560405160200161049593929190610a7f565b6040516020818303038152906040529050949350505050565b606083156104bd5750816101cf565b8251156104cd5782518084602001fd5b8160405162461bcd60e51b8152600401610128919061082c565b5f805f6104f48585610622565b90925090505f81600481111561050c5761050c610abd565b14801561052a5750856001600160a01b0316826001600160a01b0316145b1561053a576001925050506101cf565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401610561929190610ad1565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161059f91906109f5565b5f60405180830381855afa9150503d805f81146105d7576040519150601f19603f3d011682016040523d82523d5f602084013e6105dc565b606091505b50915091508180156105ef575080516020145b801561061657508051630b135d3f60e11b906106149083016020908101908401610a43565b145b98975050505050505050565b5f808251604103610656576020830151604084015160608501515f1a61064a87828585610664565b9450945050505061065d565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561069957505f90506003610740565b8460ff16601b141580156106b157508460ff16601c14155b156106c157505f90506004610740565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610712573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b03811661073a575f60019250925050610740565b91505f90505b94509492505050565b5f805f6040848603121561075b575f80fd5b833567ffffffffffffffff80821115610772575f80fd5b9085019060808288031215610785575f80fd5b9093506020850135908082111561079a575f80fd5b818601915086601f8301126107ad575f80fd5b8135818111156107bb575f80fd5b8760208285010111156107cc575f80fd5b6020830194508093505050509250925092565b5f5b838110156107f95781810151838201526020016107e1565b50505f910152565b5f81518084526108188160208601602086016107df565b601f01601f19169290920160200192915050565b602081525f6101cf6020830184610801565b5f6020828403121561084e575f80fd5b5035919050565b80356001600160a01b038116811461086b575f80fd5b919050565b5f60208284031215610880575f80fd5b6101cf82610855565b5f808335601e1984360301811261089e575f80fd5b83018035915067ffffffffffffffff8211156108b8575f80fd5b60200191503681900382131561065d575f80fd5b634e487b7160e01b5f52604160045260245ffd5b6040516080810167ffffffffffffffff81118282101715610903576109036108cc565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610932576109326108cc565b604052919050565b5f6080823603121561094a575f80fd5b6109526108e0565b61095b83610855565b81526020808401358183015260408401356040830152606084013567ffffffffffffffff8082111561098b575f80fd5b9085019036601f83011261099d575f80fd5b8135818111156109af576109af6108cc565b6109c1601f8201601f19168501610909565b915080825236848285010111156109d6575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b5f8251610a068184602087016107df565b9190910192915050565b5f82610a2a57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b5f60208284031215610a53575f80fd5b5051919050565b80820180821115610a7957634e487b7160e01b5f52601160045260245ffd5b92915050565b5f8451610a908184602089016107df565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f61022a604083018461080156fea164736f6c6343000818000a","storage":{"0x0":"0x39a27956b78d00a4e00ea8833ff0947410a2933f"}},"0x8861cdfa38838531275ce12f9e795c3b9ff29cbe":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x936188f2c3c8e8c95e425b6fe41c2ac9e701585e":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x94f57ed7e9af03a10e8eb23ce1b3c7914a182b0f":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x95f29431aeb52c0d5dbeeec36010b8e2ca69cb3d":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x9b2565a3545a1312bdcb6e7148a7f7cae8c2706b":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c806373cc48a61161008857806398d35f201161006357806398d35f2014610215578063bd7ed31a1461021d578063c327deef14610245578063d7b82ebe1461026d575f80fd5b806373cc48a6146101af5780638438dc04146101ef5780638da5cb5b14610202575f80fd5b806313af4035116100c357806313af40351461015657806328e7677d146101695780632c095cbb1461017c578063435cc1621461018f575f80fd5b8063020ed8d3146100e9578063087991bc146100fe5780630b1a249514610143575b5f80fd5b6100fc6100f73660046122ff565b610280565b005b61011161010c36600461238a565b610300565b6040805163ffffffff94851681529390921660208401526001600160601b031916908201526060015b60405180910390f35b6100fc610151366004612510565b61036c565b6100fc6101643660046125c6565b6104da565b6100fc6101773660046122ff565b610512565b6100fc61018a3660046125e1565b61058a565b6101a261019d366004612674565b610656565b60405161013a919061278c565b6101d76101bd36600461279e565b60046020525f90815260409020546001600160a01b031681565b6040516001600160a01b03909116815260200161013a565b6100fc6101fd3660046122ff565b6106d2565b6001546101d7906001600160a01b031681565b6101a261074a565b6101d761022b36600461279e565b60056020525f90815260409020546001600160a01b031681565b6101d761025336600461279e565b60036020525f90815260409020546001600160a01b031681565b6101a261027b3660046127b7565b6107d5565b6001546001600160a01b03163314610296575f80fd5b60ff82165f8181526003602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527ff73c3c226af96b7f1ba666a21b3ceaf2be3ee6a365e3178fd9cd1eaae0075aa891015b60405180910390a15050565b5f805f8060025f8787604051610317929190612817565b604080519182900390912082526020808301939093529081015f90812061ffff8b16825290925290205463ffffffff80821695506401000000008204169350600160401b900460601b91505093509350939050565b83516020808601919091205f90815260028252604080822061ffff891683529092529081205463ffffffff16906103a385846107ea565b90506103b0818784610889565b6103b8612239565b845151156103d7576103ca85856107ea565b90506103d7818885610889565b5f6103e1836108cc565b602081015190915060fe16156103f5575f80fd5b61040081602761092a565b158015610425575061041381600261092a565b1580610425575061042581600661092a565b61042d575f80fd5b61043e89898561012001518461093a565b156104795787516020808a01919091205f90815260028252604080822061ffff8d1683529092522080546001600160e01b03191690556104cf565b6104988884610120015183856101200151610493876108cc565b610968565b156100e55787516020808a01919091205f90815260028252604080822061ffff8d1683529092522080546001600160e01b03191690555b505050505050505050565b6001546001600160a01b031633146104f0575f80fd5b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6001546001600160a01b03163314610528575f80fd5b60ff82165f8181526004602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527f2fcc274c3b72dd483ab201bfa87295e3817e8b9b10693219873b722ca1af00c791016102f4565b610592612239565b61059c83836107ea565b805190915061ffff16602f146105b0575f80fd5b60a081015184516020808701919091205f90815260028252604080822061ffff8a16835290925220546105e9919063ffffffff16610a7c565b6105f1575f80fd5b5f6105fb82610a94565b9050805151602082015110156100e55761061c818361012001518789610aab565b505082516020808501919091205f90815260028252604080822061ffff881683529092522080546001600160e01b03191690555b50505050565b60605f83838080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201829052509394505050505b85518110156106c7576106bd8682815181106106af576106af612826565b602002602001015183610c4a565b9150600101610691565b5090505b9392505050565b6001546001600160a01b031633146106e8575f80fd5b60ff82165f8181526005602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527fc7eec866a7a1386188cc3ca20ffea75b71bd3e90a60b6791b1d3f0971145118d91016102f4565b5f80546107569061283a565b80601f01602080910402602001604051908101604052809291908181526020018280546107829061283a565b80156107cd5780601f106107a4576101008083540402835291602001916107cd565b820191905f5260205f20905b8154815290600101906020018083116107b057829003601f168201915b505050505081565b60606107e18383610c4a565b90505b92915050565b6107f2612239565b82516107fd90610dc6565b905061080d8160e0015183610ebf565b610815575f80fd5b5f61082382835f0151610f25565b604083015190915060ff16610838825f610fcc565b14610841575f80fd5b610120820181905260808201516108589042610a7c565b610860575f80fd5b61086e428360a00151610a7c565b610876575f80fd5b61088281838686611026565b5092915050565b6108978360a0015182610a7c565b61089f575f80fd5b825161ffff166032146108b0575f80fd5b6108bf83610120015183611106565b6108c7575f80fd5b505050565b6040805160c0810182525f8082526020820181905291810182905260608082018190526080820183905260a08201529061090583610a94565b60a081015160c08201519192506106cb91610921908290612880565b83519190611172565b5f6107e18360a001515f846112b4565b5f6109468284866113c1565b1561095d57610955828661092a565b159050610960565b505f5b949350505050565b60208101515f9060fe161561097b575f80fd5b5f610985866113e6565b90505f610991856113e6565b90505f8061099f8a82611401565b6109aa906001612893565b60ff1690505b8951811015610a6b57836109dc896109d784858f516109cf9190612880565b8f9190611424565b6114a4565b03610a3f575f6109f7876109d785868f516109cf9190612880565b90508660800151841015610a23578381118015610a175750866080015181105b95505050505050610a73565b83811180610a1757508660800151811095505050505050610a73565b905080610a4c8a82611401565b610a57906001612893565b610a649060ff16826128ac565b90506109b0565b505f93505050505b95945050505050565b5f80610a8883856128bf565b60030b12159392505050565b610a9c61228e565b6107e48261010001515f61152d565b60a084015184515f90610abe9083611548565b90505f8660a001518760c00151610ad59190612880565b9050818111610ae2575f80fd5b5f610aed868861159f565b9050805f03610b1a57610b0c610b0384866128ac565b895190876112b4565b15610b15575f80fd5b610b5b565b87515f90610b29908686611424565b90505f8213610b36575f80fd5b5f610b41898361159f565b12156104cf575f610b52888361159f565b126104cf575f80fd5b5050505050505050565b60c08101516020820181905281515111610b7c5750565b5f610b8e825f01518360200151611548565b8260200151610b9d91906128ac565b8251909150610bac90826116ec565b61ffff166040830152610bc06002826128ac565b8251909150610bcf90826116ec565b61ffff166060830152610be36002826128ac565b8251909150610bf29082611712565b63ffffffff166080830152610c086004826128ac565b82519091505f90610c1990836116ec565b61ffff169050610c2a6002836128ac565b60a084018190529150610c3d81836128ac565b60c0909301929092525050565b6060610c54612239565b610c5e84846107ea565b61012081015180516020918201205f908152600282526040808220845161ffff16835290925220805491925090600160401b900460601b6001600160601b03191615610cc35760a08201518154610cbb919063ffffffff16610a7c565b610cc3575f80fd5b604080516060808201835260a085015163ffffffff9081168352608086015181166020808501918252610100880180518051908301206001600160601b0319168688019081526101208a0180518051908501205f908152600285528981208c5161ffff16825290945292889020965187549451915190961c600160401b0268010000000000000000600160e01b03199186166401000000000267ffffffffffffffff19909516969095169590951792909217939093169190911790925551905191517f55ced933cdd5a34dd03eb5d4bef19ec6ebb251dcd7a988eee0c1b9a13baaa88b92610db192916128e6565b60405180910390a15061010001519392505050565b610dce612239565b610dd8825f6116ec565b61ffff168152610de9826002611401565b60ff166020820152610dfc826003611401565b60ff166040820152610e0f826004611712565b63ffffffff9081166060830152610e2b90839060089061171216565b63ffffffff9081166080830152610e47908390600c9061171216565b63ffffffff90811660a0830152610e639083906010906116ec16565b61ffff1660c0820152610e7782601261173a565b60e0820181905251610eb490610e8e9060126128ac565b8260e001515160128551610ea29190612880565b610eac9190612880565b849190611424565b610100820152919050565b5f80610ed5610ece8483611548565b84906116ec565b83516020808601919091208651878301205f90815260028352604080822061ffff90951682529390925291902054600160401b900460601b6001600160601b031990811691161491505092915050565b60605f610f3184610a94565b90505b8051516020820151101561088257606081015161ffff16600114610f56575f80fd5b81515f03610f6e57610f6781611754565b9150610fa7565b60208101518151610f7e91611548565b825114610f89575f80fd5b805160208201518351610f9f9285925f92611775565b610fa7575f80fd5b8261ffff16816040015161ffff1614610fbe575f80fd5b610fc781610b65565b610f34565b5f805b83518310610fdf57610fdf61290a565b5f610fea8585611401565b60ff169050610ffa8160016128ac565b61100490856128ac565b9350805f0361101357506107e1565b61101e6001836128ac565b915050610fcf565b83518360e00151511115611038575f80fd5b61105c5f858560e0015151875161104f9190612880565b60e0870151929190611797565b611064575f80fd5b5f61106f828261152d565b9050602b61ffff16816040015161ffff160361109d576110908484836117cb565b611098575f80fd5b6110ff565b603061ffff16816040015161ffff16036110bc5761109084848361185f565b60405162461bcd60e51b8152602060048201526014602482015273139bc81d985b1a59081c1c9bdbd988199bdd5b9960621b604482015260640160405180910390fd5b5050505050565b5f806111128482611401565b61111d906001612893565b60ff1690505f5b835181101561095d5761113984828785611797565b15611149576001925050506107e4565b6111538482611401565b61115e906001612893565b61116b9060ff16826128ac565b9050611124565b6040805160c0810182525f8082526020820181905291810182905260608082018190526080820183905260a0820152906111ac83856128ac565b90506111c26111bb5f866128ac565b8690611401565b60ff1682526111d56111bb6001866128ac565b60ff1660208301526111f26111eb6002866128ac565b86906116ec565b61ffff1660408301525f61121161120a6004876128ac565b8790611401565b905061121e6005866128ac565b945061122e868660ff8416611424565b606084015261124060ff8216866128ac565b94505f61124d8787611401565b905060208160ff16111561125f575f80fd5b61126a6001876128ac565b955061127a878760ff8416611900565b608085015261128c60ff8216876128ac565b95506112a48661129c8186612880565b899190611424565b60a0850152509195945050505050565b5f60ff600883811c82169183916112cc918616612932565b90505f6112dd600780871690612952565b600160ff919091161b9050855b87518110156113b4575f6112fe8983611401565b90505f61131661130f8460016128ac565b8b90611401565b90508160ff168660ff161015611334575f96505050505050506106cb565b8160ff168660ff1603611393578460ff168160ff161161135c575f96505050505050506106cb565b8361137f61136d60ff8816866128ac565b6113789060026128ac565b8c90611401565b1660ff165f141596505050505050506106cb565b61139e816002612893565b6113ab9060ff16846128ac565b925050506112ea565b505f979650505050505050565b5f806113cd85846114a4565b90505f6113d9856113e6565b9190911495945050505050565b5f6107e460016113f68484611401565b84919060ff1661193d565b5f82828151811061141457611414612826565b016020015160f81c905092915050565b825160609061143383856128ac565b111561143d575f80fd5b5f8267ffffffffffffffff811115611457576114576123d9565b6040519080825280601f01601f191660200182016040528015611481576020820181803683370190505b50905060208082019086860101611499828287611b43565b509095945050505050565b815160ff165f9081526005602052604080822054606085015182860151925163347ced5960e11b81526001600160a01b03909216926368f9dab2926114ee9291879160040161296b565b602060405180830381865afa158015611509573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107e191906129a4565b61153561228e565b82815260c081018290526107e481610b65565b5f815b8351811061155b5761155b61290a565b5f6115668583611401565b60ff1690506115768160016128ac565b61158090836128ac565b9150805f0361158f5750611595565b5061154b565b6109608382612880565b5f6115aa8383611b98565b156115b657505f6107e4565b5f805f805f6115c5885f610fcc565b90505f6115d2885f610fcc565b90505b808211156115fe578593506115ea8987611bb3565b9550816115f6816129bb565b9250506115d5565b81811115611627578492506116138886611bb3565b94508061161f816129bb565b9150506115fe565b5f8211801561163f575061163d89878a88611797565b155b15611674578593506116518987611bb3565b95508492506116608886611bb3565b945061166d600183612880565b9150611627565b855f0361168a575f1996505050505050506107e4565b845f036116a057600196505050505050506107e4565b6116df6116ae8560016128ac565b6116b88b87611401565b60ff168a6116c78760016128ac565b6116d18d89611401565b8e949392919060ff16611bd6565b9998505050505050505050565b81515f906116fb8360026128ac565b1115611705575f80fd5b50016002015161ffff1690565b81515f906117218360046128ac565b111561172b575f80fd5b50016004015163ffffffff1690565b60605f6117478484611548565b9050610960848483611424565b602081015181516060916107e49161176c9082611548565b84519190611424565b5f611781848484611cc6565b61178c878785611cc6565b149695505050505050565b5f6117af83838486516117aa9190612880565b611cc6565b6117c186868789516117aa9190612880565b1495945050505050565b5f806117d685610a94565b90505b8051516020820151101561095d57604081015161ffff166030146117fb575f80fd5b5f61180582611ce8565b90505f61181e5f835184611d049092919063ffffffff16565b905061182c81838989611da0565b1561184f5761184561183d84611754565b868385611e9b565b93505050506106cb565b505061185a81610b65565b6117d9565b5f6118778460e0015161187184611754565b90611b98565b61187f575f80fd5b815151602083015110156118f75761189e8460e0015161187184611754565b6118a6575f80fd5b5f6118b083611ce8565b90505f6118c95f835184611d049092919063ffffffff16565b90506118d781838888611da0565b156118e7576001925050506106cb565b50506118f282610b65565b61187f565b505f9392505050565b5f602082111561190e575f80fd5b835161191a83856128ac565b1115611924575f80fd5b506020919092018101519190036101000a5f1901191690565b5f603482111561194b575f80fd5b5f80805b84811015611a29575f8761196383896128ac565b8151811061197357611973612826565b01602001516001600160f81b0319169050600360fc1b81108015906119a65750603d60f91b6001600160f81b0319821611155b6119ae575f80fd5b604051806080016040528060478152602001612b5c604791396119d6603060f884901c612880565b815181106119e6576119e6612826565b0160209081015160f81c93508311156119fd575f80fd5b611a08600187612880565b8203611a145750611a29565b5060059290921b60ff8216179160010161194f565b505f611a368560056129d0565b9050611a436008866129e7565b5f03611a5a578160ff16600584901b179250611b29565b611a656008866129e7565b600203611a935760028260ff16901c60ff16600384901b179250600281611a8c9190612880565b9050611b29565b611a9e6008866129e7565b600403611ac55760048260ff16901c60ff16600184901b179250600481611a8c9190612880565b611ad06008866129e7565b600503611af75760018260ff16901c60ff16600484901b179250600181611a8c9190612880565b611b026008866129e7565b6007036100e55760038260ff16901c60ff16600284901b179250600381611a8c9190612880565b611b3581610100612880565b9290921b9695505050505050565b60208110611b7b5781518352611b5a6020846128ac565b9250611b676020836128ac565b9150611b74602082612880565b9050611b43565b905182516020929092036101000a5f190180199091169116179052565b5f815183511480156107e157506107e1835f845f8751611775565b5f611bbe8383611401565b60ff16611bcc8360016128ac565b6107e191906128ac565b5f8480831015611be35750815b6020878901810190858701015f5b83811015611cab5782518251808214611c7b575f6020871115611c1657505f19611c52565b600184611c24896020612880565b611c2e91906128ac565b611c399060086129d0565b611c44906002612ada565b611c4e9190612880565b1990505b5f611c61838316858416612ae5565b90508015611c78579750611cbc9650505050505050565b50505b611c866020866128ac565b9450611c936020856128ac565b93505050602081611ca491906128ac565b9050611bf1565b50611cb68589612ae5565b93505050505b9695505050505050565b82515f90611cd483856128ac565b1115611cde575f80fd5b5091016020012090565b60a081015160c08201516060916107e49161176c908290612880565b604080516080810182525f8082526020820181905291810191909152606080820152611d3a611d335f856128ac565b85906116ec565b61ffff168152611d55611d4e6002856128ac565b8590611401565b60ff166020820152611d6b611d4e6003856128ac565b60ff166040820152611d94611d816004856128ac565b611d8c600485612880565b869190611424565b60608201529392505050565b5f846020015160ff16600314611db757505f610960565b826020015160ff16856040015160ff1614611dd357505f610960565b5f611ddd85611f96565b90508360c0015161ffff168161ffff1614611dfb575f915050610960565b8551610100165f03611e10575f915050610960565b60408087015160ff165f908152600360209081529082902054855191860151925163de8f50a160e01b81526001600160a01b039091169263de8f50a192611e5c928a9290600401612b04565b602060405180830381865afa158015611e77573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611cbc9190612b3c565b5f80611ea683611f96565b90505b84515160208601511015611f8b5760a085015160c08601515f91611edb91611ed2908290612880565b88519190611d04565b90508161ffff16815f015161ffff1614611ef55750611f7d565b846040015160ff16816020015160ff1614611f105750611f7d565b60408051808201909152606081525f6020820152611f3c85518951611f3591906128ac565b8290611ff7565b50611f47818961205a565b50611f52818661205a565b50611f698260400151825f0151846060015161207f565b15611f7a5760019350505050610960565b50505b611f8685610b65565b611ea9565b505f95945050505050565b5f805f5b8351811015611fe8576001811615611fbe57611fb68482611401565b60ff16611fd0565b6008611fca8583611401565b60ff16901b5b611fde9061ffff16836128ac565b9150600101611f9a565b506106cb601082901c826128ac565b60408051808201909152606081525f60208201526120166020836129e7565b1561203e576120266020836129e7565b612031906020612880565b61203b90836128ac565b91505b506020828101829052604080518085525f815290920101905290565b60408051808201909152606081525f60208201526107e183845f015151848551612126565b60ff83165f908152600460205260408120546001600160a01b03166120a557505f6106cb565b60ff84165f90815260046020819052604091829020549151637bf41d7760e11b81526001600160a01b039092169163f7e83aee916120e79187918791016128e6565b602060405180830381865afa158015612102573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109609190612b3c565b60408051808201909152606081525f60208201528251821115612147575f80fd5b602085015161215683866128ac565b111561218957612189856121798760200151878661217491906128ac565b61220c565b6121849060026129d0565b612222565b5f808651805187602083010193508088870111156121a75787860182525b505050602084015b602084106121e757805182526121c66020836128ac565b91506121d36020826128ac565b90506121e0602085612880565b93506121af565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b5f8183111561221c5750816107e4565b50919050565b815161222e8383611ff7565b50610650838261205a565b60408051610140810182525f8082526020820181905291810182905260608082018390526080820183905260a0820183905260c082019290925260e08101829052610100810182905261012081019190915290565b6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b803560ff811681146122e3575f80fd5b919050565b6001600160a01b03811681146122fc575f80fd5b50565b5f8060408385031215612310575f80fd5b612319836122d3565b91506020830135612329816122e8565b809150509250929050565b803561ffff811681146122e3575f80fd5b5f8083601f840112612355575f80fd5b50813567ffffffffffffffff81111561236c575f80fd5b602083019150836020828501011115612383575f80fd5b9250929050565b5f805f6040848603121561239c575f80fd5b6123a584612334565b9250602084013567ffffffffffffffff8111156123c0575f80fd5b6123cc86828701612345565b9497909650939450505050565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff81118282101715612416576124166123d9565b604052919050565b5f82601f83011261242d575f80fd5b813567ffffffffffffffff811115612447576124476123d9565b61245a601f8201601f19166020016123ed565b81815284602083860101111561246e575f80fd5b816020850160208301375f918101602001919091529392505050565b5f6040828403121561249a575f80fd5b6040516040810167ffffffffffffffff82821081831117156124be576124be6123d9565b8160405282935084359150808211156124d5575f80fd5b6124e18683870161241e565b835260208501359150808211156124f6575f80fd5b506125038582860161241e565b6020830152505092915050565b5f805f805f60a08688031215612524575f80fd5b61252d86612334565b9450602086013567ffffffffffffffff80821115612549575f80fd5b61255589838a0161241e565b9550604088013591508082111561256a575f80fd5b61257689838a0161248a565b9450606088013591508082111561258b575f80fd5b61259789838a0161248a565b935060808801359150808211156125ac575f80fd5b506125b98882890161241e565b9150509295509295909350565b5f602082840312156125d6575f80fd5b81356107e1816122e8565b5f805f80608085870312156125f4575f80fd5b6125fd85612334565b9350602085013567ffffffffffffffff80821115612619575f80fd5b6126258883890161241e565b9450604087013591508082111561263a575f80fd5b6126468883890161248a565b9350606087013591508082111561265b575f80fd5b506126688782880161241e565b91505092959194509250565b5f805f60408486031215612686575f80fd5b833567ffffffffffffffff8082111561269d575f80fd5b818601915086601f8301126126b0575f80fd5b81356020828211156126c4576126c46123d9565b8160051b6126d38282016123ed565b928352848101820192828101908b8511156126ec575f80fd5b83870192505b8483101561272657823586811115612708575f80fd5b6127168d86838b010161248a565b83525091830191908301906126f2565b985050508701359250508082111561273c575f80fd5b506123cc86828701612345565b5f81518084525f5b8181101561276d57602081850181015186830182015201612751565b505f602082860101526020601f19601f83011685010191505092915050565b602081525f6107e16020830184612749565b5f602082840312156127ae575f80fd5b6107e1826122d3565b5f80604083850312156127c8575f80fd5b823567ffffffffffffffff808211156127df575f80fd5b6127eb8683870161248a565b93506020850135915080821115612800575f80fd5b5061280d8582860161241e565b9150509250929050565b818382375f9101908152919050565b634e487b7160e01b5f52603260045260245ffd5b600181811c9082168061284e57607f821691505b60208210810361221c57634e487b7160e01b5f52602260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b818103818111156107e4576107e461286c565b60ff81811683821601908111156107e4576107e461286c565b808201808211156107e4576107e461286c565b600382810b9082900b03637fffffff198112637fffffff821317156107e4576107e461286c565b604081525f6128f86040830185612749565b8281036020840152610a738185612749565b634e487b7160e01b5f52600160045260245ffd5b634e487b7160e01b5f52601260045260245ffd5b5f61ffff808416806129465761294661291e565b92169190910492915050565b60ff82811682821603908111156107e4576107e461286c565b606081525f61297d6060830186612749565b828103602084015261298f8186612749565b91505061ffff83166040830152949350505050565b5f602082840312156129b4575f80fd5b5051919050565b5f816129c9576129c961286c565b505f190190565b80820281158282048414176107e4576107e461286c565b5f826129f5576129f561291e565b500690565b600181815b80851115612a3457815f1904821115612a1a57612a1a61286c565b80851615612a2757918102915b93841c93908002906129ff565b509250929050565b5f82612a4a575060016107e4565b81612a5657505f6107e4565b8160018114612a6c5760028114612a7657612a92565b60019150506107e4565b60ff841115612a8757612a8761286c565b50506001821b6107e4565b5060208310610133831016604e8410600b8410161715612ab5575081810a6107e4565b612abf83836129fa565b805f1904821115612ad257612ad261286c565b029392505050565b5f6107e18383612a3c565b8181035f8312801583831316838312821617156108825761088261286c565b606081525f612b166060830186612749565b8281036020840152612b288186612749565b90508281036040840152611cbc8185612749565b5f60208284031215612b4c575f80fd5b815180151581146107e1575f80fdfe00010203040506070809ffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fffffffffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fa164736f6c6343000818000a","storage":{"0x0":"0xbd","0x1":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1471eb6eb2c5e789fc3de43f8ce62938c7d1836ec861730447e2ada8fd81017b":"0x17cda4e23f7237277952e075b1c48467aabfacc0","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563":"0x2b000100000e1000244a5c080249aac11d7b6f6446702e54a1607371607a","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e564":"0x1a41855200fd2ce1cdde32f24e8fb500002b000100000e1000244f660802e06d","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e565":"0x44b80b8f1d39a95c0b0d7c65d08458e880409bbc683457104237c7f8ec8d0000","0x3617319a054d772f909f7c479a2cebe5066e836a939412e32403c99029b92eff":"0x5155f5627bdf9795b3dbb8887001ada1eeba93f2","0x85aaa47b6dc46495bb8824fad4583769726fea36efd831a35556690b830a8fbe":"0x6e2822b8856749ed179c77140dbc5f5a27410a4","0x91da3fd0782e51c6b3986e9e672fd566868e71f3dbc2d6c2cd6fbb3e361af2a7":"0x49da8861c65460639925febe1fb4b5b59b443082","0x95c6356c1b7a542b884d2484ef785c9c7224e77e1016c20007bddc15c23b452f":"0x3f9151d3fd1a82dcc5091909589900fd60ee767ee090bba000000000","0xabd6e7cb50984ff9c2f3e18a2660c3353dadf4e3291deeb275dae2cd1e44fe05":"0x458f653495fb8d9bd0e7df468c2bf76d26c7bd9"}},"0x9dc64b2558b458a15c7f01c192d874ef460f0a29":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x9df67c91f1bfcb4d966cf764e9218685e7c59e8a":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101d1575f3560e01c80638b95dd71116100fe578063c86902331161009e578063e32954eb1161006e578063e32954eb146104f2578063e59d895d14610505578063e985e9c514610518578063f1cb7e0614610553575f80fd5b8063c869023314610435578063ce3decdc1461048c578063d5fa2b001461049f578063d700ff33146104b2575f80fd5b8063a8fa5682116100d9578063a8fa5682146103ac578063a9784b3e146103bf578063ac9650d814610402578063bc1c58d114610422575f80fd5b80638b95dd7114610373578063a22cb46514610386578063a4b91a0114610399575f80fd5b80633603d758116101745780635c98042b116101445780635c98042b14610327578063623195b01461033a578063691f34311461034d5780637737221314610360575f80fd5b80633603d758146102975780633b3b57de146102aa5780634cbf6ba4146102bd57806359d1d43c14610307575f80fd5b8063124a319c116101af578063124a319c146102255780632203ab561461025057806329cd62ea14610271578063304e6ade14610284575f80fd5b806301ffc9a7146101d55780630af179d7146101fd57806310f13a8c14610212575b5f80fd5b6101e86101e3366004612267565b610566565b60405190151581526020015b60405180910390f35b61021061020b3660046122bd565b610576565b005b610210610220366004612304565b610778565b610238610233366004612377565b610842565b6040516001600160a01b0390911681526020016101f4565b61026361025e3660046123a1565b610a87565b6040516101f492919061240e565b61021061027f366004612426565b610bb5565b6102106102923660046122bd565b610c4d565b6102106102a536600461244f565b610cc6565b6102386102b836600461244f565b610d64565b6101e86102cb3660046123a1565b5f82815260208181526040808320546001600160401b031683526006825280832094835293815283822092825291909152205461ffff16151590565b61031a6103153660046122bd565b610d93565b6040516101f49190612466565b61031a61033536600461244f565b610e6f565b610210610348366004612478565b610f2a565b61031a61035b36600461244f565b610fc2565b61021061036e3660046122bd565b610ffa565b6102106103813660046124da565b611073565b6102106103943660046125b9565b611150565b6102106103a73660046125e3565b61122a565b61031a6103ba36600461261e565b6112f6565b6101e86103cd36600461265a565b6001600160a01b039283165f908152600c60209081526040808320948352938152838220929094168152925290205460ff1690565b6104156104103660046126ce565b611342565b6040516101f4919061270c565b61031a61043036600461244f565b61134f565b61047761044336600461244f565b5f81815260208181526040808320546001600160401b03168352600982528083209383529290522080546001909101549091565b604080519283526020830191909152016101f4565b61021061049a3660046122bd565b611387565b6102106104ad36600461276e565b6114c3565b6104da6104c036600461244f565b5f602081905290815260409020546001600160401b031681565b6040516001600160401b0390911681526020016101f4565b61041561050036600461279c565b6114e9565b6102106105133660046127d6565b6114fe565b6101e8610526366004612808565b6001600160a01b039182165f908152600b6020908152604080832093909416825291909152205460ff1690565b61031a6105613660046123a1565b6115a2565b5f61057082611666565b92915050565b826105808161168a565b610588575f80fd5b5f84815260208181526040808320548151601f87018490048402810184019092528582528392606092839285926001600160401b039091169183916105eb9183918d908d90819084018382808284375f9201919091525092939250506118b79050565b90505b80515160208201511015610712578661ffff165f03610652578060400151965061061781611912565b94508460405160200161062a9190612834565b60405160208183030381529060405280519060200120925061064b81611933565b9350610704565b5f61065c82611912565b9050816040015161ffff168861ffff16141580610680575061067e868261194f565b155b15610702576106db8c878a8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250505060208801518d91506106d2908290612863565b8b51158a61196a565b8160400151975081602001519650809550858051906020012093506106ff82611933565b94505b505b61070d81611bc9565b6105ee565b5083511561076c5761076c8a85888c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c925061076391508290508f612863565b8951158861196a565b50505050505050505050565b846107828161168a565b61078a575f80fd5b5f86815260208181526040808320546001600160401b03168352600a8252808320898452909152908190209051849184916107c89089908990612876565b908152602001604051809103902091826107e3929190612901565b5084846040516107f4929190612876565b6040518091039020867f448bc014f1536726cf8d54ff3d6481ed3cbc683c2591ca204274009afa09b1a18787878760405161083294939291906129e2565b60405180910390a3505050505050565b5f82815260208181526040808320546001600160401b031683526007825280832085845282528083206001600160e01b0319851684529091528120546001600160a01b03168015610894579050610570565b5f61089e85610d64565b90506001600160a01b0381166108b8575f92505050610570565b6040516301ffc9a760e01b60248201525f9081906001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b1790525161090f9190612834565b5f60405180830381855afa9150503d805f8114610947576040519150601f19603f3d011682016040523d82523d5f602084013e61094c565b606091505b509150915081158061095f575060208151105b80610989575080601f8151811061097857610978612a13565b01602001516001600160f81b031916155b1561099a575f945050505050610570565b6040516001600160e01b0319871660248201526001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b179052516109f09190612834565b5f60405180830381855afa9150503d805f8114610a28576040519150601f19603f3d011682016040523d82523d5f602084013e610a2d565b606091505b509092509050811580610a41575060208151105b80610a6b575080601f81518110610a5a57610a5a612a13565b01602001516001600160f81b031916155b15610a7c575f945050505050610570565b509095945050505050565b5f82815260208181526040808320546001600160401b03168352600180835281842086855290925282206060915b848111610b975780851615801590610ae457505f8181526020839052604081208054610ae090612885565b9050115b15610b8f5780825f8381526020019081526020015f20808054610b0690612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610b3290612885565b8015610b7d5780601f10610b5457610100808354040283529160200191610b7d565b820191905f5260205f20905b815481529060010190602001808311610b6057829003601f168201915b50505050509050935093505050610bae565b60011b610ab5565b505f60405180602001604052805f81525092509250505b9250929050565b82610bbf8161168a565b610bc7575f80fd5b60408051808201825284815260208082018581525f888152808352848120546001600160401b031681526009835284812089825283528490209251835551600190920191909155815185815290810184905285917f1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e4691015b60405180910390a250505050565b82610c578161168a565b610c5f575f80fd5b5f84815260208181526040808320546001600160401b03168352600382528083208784529091529020610c93838583612901565b50837fe379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d75788484604051610c3f929190612a27565b80610cd08161168a565b610cd8575f80fd5b5f82815260208190526040812080546001600160401b031691610cfa83612a3a565b82546101009290920a6001600160401b038181021990931691831602179091555f84815260208181526040918290205491519190921681528492507fc6621ccb8f3f5a04bb6502154b2caf6adf5983fe76dfef1cfc9c42e3579db444910160405180910390a25050565b5f80610d7183603c6115a2565b905080515f03610d8357505f92915050565b610d8c81611cae565b9392505050565b5f83815260208181526040808320546001600160401b03168352600a825280832086845290915290819020905160609190610dd19085908590612876565b90815260200160405180910390208054610dea90612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610e1690612885565b8015610e615780601f10610e3857610100808354040283529160200191610e61565b820191905f5260205f20905b815481529060010190602001808311610e4457829003601f168201915b505050505090509392505050565b5f81815260208181526040808320546001600160401b03168352600482528083208484529091529020805460609190610ea790612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610ed390612885565b8015610f1e5780601f10610ef557610100808354040283529160200191610f1e565b820191905f5260205f20905b815481529060010190602001808311610f0157829003601f168201915b50505050509050919050565b83610f348161168a565b610f3c575f80fd5b83610f48600182612863565b1615610f52575f80fd5b5f85815260208181526040808320546001600160401b031683526001825280832088845282528083208784529091529020610f8e838583612901565b50604051849086907faa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe3905f90a35050505050565b5f81815260208181526040808320546001600160401b03168352600882528083208484529091529020805460609190610ea790612885565b826110048161168a565b61100c575f80fd5b5f84815260208181526040808320546001600160401b03168352600882528083208784529091529020611040838583612901565b50837fb7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f78484604051610c3f929190612a27565b8261107d8161168a565b611085575f80fd5b837f65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af75284846040516110b792919061240e565b60405180910390a2603c830361110e57837f52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd26110f284611cae565b6040516001600160a01b03909116815260200160405180910390a25b5f84815260208181526040808320546001600160401b0316835260028252808320878452825280832086845290915290206111498382612a5f565b5050505050565b6001600160a01b03821633036111bf5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084015b60405180910390fd5b335f818152600b602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6001600160a01b03821633036112825760405162461bcd60e51b815260206004820181905260248201527f53657474696e672064656c65676174652073746174757320666f722073656c6660448201526064016111b6565b335f818152600c6020908152604080832087845282528083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519384529286917ff0ddb3b04746704017f9aa8bd728fcc2c1d11675041205350018915f5e4750a0910160405180910390a4505050565b5f83815260208181526040808320546001600160401b03168352600582528083208684528252808320858452825280832061ffff851684529091529020805460609190610dea90612885565b6060610d8c5f8484611ccb565b5f81815260208181526040808320546001600160401b03168352600382528083208484529091529020805460609190610ea790612885565b826113918161168a565b611399575f80fd5b5f84815260208181526040808320546001600160401b031680845260048352818420888552909252822080549192916113d190612885565b80601f01602080910402602001604051908101604052809291908181526020018280546113fd90612885565b80156114485780601f1061141f57610100808354040283529160200191611448565b820191905f5260205f20905b81548152906001019060200180831161142b57829003601f168201915b505050506001600160401b0384165f9081526004602090815260408083208b8452909152902091925061147e9050858783612901565b50857f8f15ed4b723ef428f250961da8315675b507046737e19319fc1a4d81bfe87f858287876040516114b393929190612b1e565b60405180910390a2505050505050565b816114cd8161168a565b6114d5575f80fd5b6114e483603c61038185611e88565b505050565b60606114f6848484611ccb565b949350505050565b826115088161168a565b611510575f80fd5b5f84815260208181526040808320546001600160401b031683526007825280832087845282528083206001600160e01b031987168085529083529281902080546001600160a01b0319166001600160a01b038716908117909155905190815286917f7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa910160405180910390a350505050565b5f82815260208181526040808320546001600160401b0316835260028252808320858452825280832084845290915290208054606091906115e290612885565b80601f016020809104026020016040519081016040528092919081815260200182805461160e90612885565b80156116595780601f1061163057610100808354040283529160200191611659565b820191905f5260205f20905b81548152906001019060200180831161163c57829003601f168201915b5050505050905092915050565b5f6001600160e01b03198216631674750f60e21b1480610570575061057082611eb8565b5f336001600160a01b037f0000000000000000000000004fbf7b2f171336958be5d15ff762a5cff53635681614806116ea5750336001600160a01b037f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5616145b156116f757506001919050565b6040516302571be360e01b8152600481018390525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa15801561175c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117809190612b4d565b90507f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b0316816001600160a01b031603611845576040516331a9108f60e11b8152600481018490527f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b031690636352211e90602401602060405180830381865afa15801561181e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118429190612b4d565b90505b6001600160a01b03811633148061187e57506001600160a01b0381165f908152600b6020908152604080832033845290915290205460ff165b80610d8c57506001600160a01b0381165f908152600c60209081526040808320868452825280832033845290915290205460ff16610d8c565b6118ff6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261057081611bc9565b602081015181516060916105709161192a9082611edc565b84519190611f33565b60a081015160c08201516060916105709161192a908290612863565b5f81518351148015610d8c5750610d8c835f845f8751611fa7565b865160208801205f61197d878787611f33565b90508315611aa1576001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c168452909152902080546119c690612885565b159050611a23576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611a0783612b68565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091528120611a62916121f9565b897f03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a12078a8a604051611a94929190612b84565b60405180910390a261076c565b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c16845290915290208054611ae290612885565b90505f03611b40576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611b2483612ba9565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091529020611b808282612a5f565b50897f52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b8a8a84604051611bb593929190612bbf565b60405180910390a250505050505050505050565b60c08101516020820181905281515111611be05750565b5f611bf2825f01518360200151611edc565b8260200151611c019190612bed565b8251909150611c109082611fc9565b61ffff166040830152611c24600282612bed565b8251909150611c339082611fc9565b61ffff166060830152611c47600282612bed565b8251909150611c569082611fef565b63ffffffff166080830152611c6c600482612bed565b82519091505f90611c7d9083611fc9565b61ffff169050611c8e600283612bed565b60a084018190529150611ca18183612bed565b60c0909301929092525050565b5f8151601414611cbc575f80fd5b5060200151600160601b900490565b6060816001600160401b03811115611ce557611ce56124c6565b604051908082528060200260200182016040528015611d1857816020015b6060815260200190600190039081611d035790505b5090505f5b82811015611e80578415611dd8575f848483818110611d3e57611d3e612a13565b9050602002810190611d509190612c00565b611d5f91602491600491612c42565b611d6891612c69565b9050858114611dd65760405162461bcd60e51b815260206004820152603460248201527f6d756c746963616c6c3a20416c6c207265636f726473206d7573742068617665604482015273040c240dac2e8c6d0d2dcce40dcc2dacad0c2e6d60631b60648201526084016111b6565b505b5f8030868685818110611ded57611ded612a13565b9050602002810190611dff9190612c00565b604051611e0d929190612876565b5f60405180830381855af49150503d805f8114611e45576040519150601f19603f3d011682016040523d82523d5f602084013e611e4a565b606091505b509150915081611e58575f80fd5b80848481518110611e6b57611e6b612a13565b60209081029190910101525050600101611d1d565b509392505050565b604080516014808252818301909252606091602082018180368337505050600160601b9290920260208301525090565b5f6001600160e01b0319821663c869023360e01b1480610570575061057082612017565b5f815b83518110611eef57611eef612c86565b5f611efa858361203b565b60ff169050611f0a816001612bed565b611f149083612bed565b9150805f03611f235750611f29565b50611edf565b6114f68382612863565b8251606090611f428385612bed565b1115611f4c575f80fd5b5f826001600160401b03811115611f6557611f656124c6565b6040519080825280601f01601f191660200182016040528015611f8f576020820181803683370190505b50905060208082019086860101610a7c82828761205e565b5f611fb38484846120b3565b611fbe8787856120b3565b149695505050505050565b81515f90611fd8836002612bed565b1115611fe2575f80fd5b50016002015161ffff1690565b81515f90611ffe836004612bed565b1115612008575f80fd5b50016004015163ffffffff1690565b5f6001600160e01b0319821663691f343160e01b14806105705750610570826120d5565b5f82828151811061204e5761204e612a13565b016020015160f81c905092915050565b602081106120965781518352612075602084612bed565b9250612082602083612bed565b915061208f602082612863565b905061205e565b905182516020929092036101000a5f190180199091169116179052565b82515f906120c18385612bed565b11156120cb575f80fd5b5091016020012090565b5f6001600160e01b031982166304928c6760e21b14806105705750610570825f6001600160e01b0319821663547d2b4160e11b148061212457506001600160e01b03198216635c98042b60e01b145b806105705750610570825f6001600160e01b0319821663bc1c58d160e01b14806105705750610570825f6001600160e01b03198216631d9dabef60e11b148061217d57506001600160e01b031982166378e5bf0360e11b145b806105705750610570825f6001600160e01b03198216631101d5ab60e11b14806105705750610570825f6001600160e01b0319821663d700ff3360e01b14806105705750610570825f6001600160e01b03198216634fbf043360e01b148061057057506301ffc9a760e01b6001600160e01b0319831614610570565b50805461220590612885565b5f825580601f10612214575050565b601f0160209004905f5260205f20908101906122309190612233565b50565b5b80821115612247575f8155600101612234565b5090565b80356001600160e01b031981168114612262575f80fd5b919050565b5f60208284031215612277575f80fd5b610d8c8261224b565b5f8083601f840112612290575f80fd5b5081356001600160401b038111156122a6575f80fd5b602083019150836020828501011115610bae575f80fd5b5f805f604084860312156122cf575f80fd5b8335925060208401356001600160401b038111156122eb575f80fd5b6122f786828701612280565b9497909650939450505050565b5f805f805f60608688031215612318575f80fd5b8535945060208601356001600160401b0380821115612335575f80fd5b61234189838a01612280565b90965094506040880135915080821115612359575f80fd5b5061236688828901612280565b969995985093965092949392505050565b5f8060408385031215612388575f80fd5b823591506123986020840161224b565b90509250929050565b5f80604083850312156123b2575f80fd5b50508035926020909101359150565b5f5b838110156123db5781810151838201526020016123c3565b50505f910152565b5f81518084526123fa8160208601602086016123c1565b601f01601f19169290920160200192915050565b828152604060208201525f6114f660408301846123e3565b5f805f60608486031215612438575f80fd5b505081359360208301359350604090920135919050565b5f6020828403121561245f575f80fd5b5035919050565b602081525f610d8c60208301846123e3565b5f805f806060858703121561248b575f80fd5b843593506020850135925060408501356001600160401b038111156124ae575f80fd5b6124ba87828801612280565b95989497509550505050565b634e487b7160e01b5f52604160045260245ffd5b5f805f606084860312156124ec575f80fd5b833592506020840135915060408401356001600160401b0380821115612510575f80fd5b818601915086601f830112612523575f80fd5b813581811115612535576125356124c6565b604051601f8201601f19908116603f0116810190838211818310171561255d5761255d6124c6565b81604052828152896020848701011115612575575f80fd5b826020860160208301375f6020848301015280955050505050509250925092565b6001600160a01b0381168114612230575f80fd5b80358015158114612262575f80fd5b5f80604083850312156125ca575f80fd5b82356125d581612596565b9150612398602084016125aa565b5f805f606084860312156125f5575f80fd5b83359250602084013561260781612596565b9150612615604085016125aa565b90509250925092565b5f805f60608486031215612630575f80fd5b8335925060208401359150604084013561ffff8116811461264f575f80fd5b809150509250925092565b5f805f6060848603121561266c575f80fd5b833561267781612596565b925060208401359150604084013561264f81612596565b5f8083601f84011261269e575f80fd5b5081356001600160401b038111156126b4575f80fd5b6020830191508360208260051b8501011115610bae575f80fd5b5f80602083850312156126df575f80fd5b82356001600160401b038111156126f4575f80fd5b6127008582860161268e565b90969095509350505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b8281101561276157603f1988860301845261274f8583516123e3565b94509285019290850190600101612733565b5092979650505050505050565b5f806040838503121561277f575f80fd5b82359150602083013561279181612596565b809150509250929050565b5f805f604084860312156127ae575f80fd5b8335925060208401356001600160401b038111156127ca575f80fd5b6122f78682870161268e565b5f805f606084860312156127e8575f80fd5b833592506127f86020850161224b565b9150604084013561264f81612596565b5f8060408385031215612819575f80fd5b823561282481612596565b9150602083013561279181612596565b5f82516128458184602087016123c1565b9190910192915050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156105705761057061284f565b818382375f9101908152919050565b600181811c9082168061289957607f821691505b6020821081036128b757634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156114e457805f5260205f20601f840160051c810160208510156128e25750805b601f840160051c820191505b81811015611149575f81556001016128ee565b6001600160401b03831115612918576129186124c6565b61292c836129268354612885565b836128bd565b5f601f84116001811461295d575f85156129465750838201355b5f19600387901b1c1916600186901b178355611149565b5f83815260208120601f198716915b8281101561298c578685013582556020948501946001909201910161296c565b50868210156129a8575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b604081525f6129f56040830186886129ba565b8281036020840152612a088185876129ba565b979650505050505050565b634e487b7160e01b5f52603260045260245ffd5b602081525f6114f66020830184866129ba565b5f6001600160401b03808316818103612a5557612a5561284f565b6001019392505050565b81516001600160401b03811115612a7857612a786124c6565b612a8c81612a868454612885565b846128bd565b602080601f831160018114612abf575f8415612aa85750858301515b5f19600386901b1c1916600185901b178555612b16565b5f85815260208120601f198616915b82811015612aed57888601518255948401946001909101908401612ace565b5085821015612b0a57878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b604081525f612b3060408301866123e3565b8281036020840152612b438185876129ba565b9695505050505050565b5f60208284031215612b5d575f80fd5b8151610d8c81612596565b5f61ffff821680612b7b57612b7b61284f565b5f190192915050565b604081525f612b9660408301856123e3565b905061ffff831660208301529392505050565b5f61ffff808316818103612a5557612a5561284f565b606081525f612bd160608301866123e3565b61ffff851660208401528281036040840152612b4381856123e3565b808201808211156105705761057061284f565b5f808335601e19843603018112612c15575f80fd5b8301803591506001600160401b03821115612c2e575f80fd5b602001915036819003821315610bae575f80fd5b5f8085851115612c50575f80fd5b83861115612c5c575f80fd5b5050820193919092039150565b80356020831015610570575f19602084900360031b1b1692915050565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{}},"0xa06a63155145b7f2fda96d9658ec7fef3b9dcf76":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b506004361061004a575f3560e01c80634ce34aa21461004e578063899e104c1461007e5780638df25d9214610091578063c4e8fcb5146100a4575b5f80fd5b61006161005c366004610834565b6100b9565b6040516001600160e01b0319909116815260200160405180910390f35b61006161008c3660046108b4565b610121565b61006161009f36600461091b565b61018a565b6100b76100b2366004610969565b6101c7565b005b5f335f525f60205260405f20546100dd576349ed56f960e11b5f523360045260245ffd5b815f5b81811015610110576101088585838181106100fd576100fd6109a2565b905060c002016102c4565b6001016100e0565b50632671a55160e11b949350505050565b5f335f525f60205260405f2054610145576349ed56f960e11b5f523360045260245ffd5b835f5b8181101561016d576101658787838181106100fd576100fd6109a2565b600101610148565b506101788484610436565b50632267841360e21b95945050505050565b5f335f525f60205260405f20546101ae576349ed56f960e11b5f523360045260245ffd5b6101b88383610436565b506346f92ec960e11b92915050565b336001600160a01b037f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c1614610210576040516336abb4df60e11b815260040160405180910390fd5b6001600160a01b0382165f9081526020819052604090205481151560ff909116151503610268576040516349271a0f60e11b81526001600160a01b038316600482015281151560248201526044015b60405180910390fd5b6001600160a01b0382165f8181526020818152604091829020805460ff191685151590811790915591519182527fae63067d43ac07563b7eb8db6595635fc77f1578a2a5ea06ba91b63e2afa37e2910160405180910390a25050565b60016102d360208301836109ca565b60038111156102e4576102e46109b6565b03610329576103266102fc60408301602084016109ef565b61030c60608401604085016109ef565b61031c60808501606086016109ef565b8460a0013561056c565b50565b600261033860208301836109ca565b6003811115610349576103496109b6565b036103b6578060a00135600114610379576040516369f9582760e01b815260a0820135600482015260240161025f565b61032661038c60408301602084016109ef565b61039c60608401604085016109ef565b6103ac60808501606086016109ef565b8460800135610660565b60036103c560208301836109ca565b60038111156103d6576103d66109b6565b0361041d576103266103ee60408301602084016109ef565b6103fe60608401604085016109ef565b61040e60808501606086016109ef565b84608001358560a00135610715565b604051631e4cbc7f60e21b815260040160405180910390fd5b808280631759616b60e11b6020525f5b8381101561055f57823582018035803b61046b57635f15d6725f52806020526024601cfd5b60a08201358060051b60c0018060808501351460a0606086013514168185013583141615905080156104a657633ae8821360e21b5f5260045ffd5b506020860195506080602084016024378060061b60400190508060a00160a4525f8160c401528060c4018160a0850160c4375f808260205f875af1935083610550573d1561053057601f3d0160051c91508060051c826003028184111561051a578184036003028280028580020360091c01015b5a60208201101561052d573d5f803e3d5ffd5b50505b6357e222f160e11b5f528260045260c0606452608451602001608452805ffd5b50505050600181019050610446565b5050505060806040525050565b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166106515780873b15151661065157806106405781610623573d1561060257601f3d0160051c8360051c81600302818311156105eb578183036003028280028480020360091c01015b5a6020820110156105fe573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b833b61067757635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af180610707573d156106e557601f3d0160051c8260051c81600302818311156106ce578183036003028280028480020360091c01015b5a6020820110156106e1573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b61072c57635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af1806107d1573d156107b057601f3d0160051c8560051c8160030281831115610799578183036003028280028480020360091c01015b5a6020820110156107ac573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b5f8083601f8401126107fc575f80fd5b50813567ffffffffffffffff811115610813575f80fd5b60208301915083602060c08302850101111561082d575f80fd5b9250929050565b5f8060208385031215610845575f80fd5b823567ffffffffffffffff81111561085b575f80fd5b610867858286016107ec565b90969095509350505050565b5f8083601f840112610883575f80fd5b50813567ffffffffffffffff81111561089a575f80fd5b6020830191508360208260051b850101111561082d575f80fd5b5f805f80604085870312156108c7575f80fd5b843567ffffffffffffffff808211156108de575f80fd5b6108ea888389016107ec565b90965094506020870135915080821115610902575f80fd5b5061090f87828801610873565b95989497509550505050565b5f806020838503121561092c575f80fd5b823567ffffffffffffffff811115610942575f80fd5b61086785828601610873565b80356001600160a01b0381168114610964575f80fd5b919050565b5f806040838503121561097a575f80fd5b6109838361094e565b915060208301358015158114610997575f80fd5b809150509250929050565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52602160045260245ffd5b5f602082840312156109da575f80fd5b8135600481106109e8575f80fd5b9392505050565b5f602082840312156109ff575f80fd5b6109e88261094e56fea164736f6c6343000818000a","storage":{}},"0xaa33d7188eb4b4a51c37199eaad2f73cf2bf0204":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0xac52f68f31577e44ae0c7e95a42dc9eb574b9383":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a424740014610090575b600080fd5b610059610054366004610cac565b6100b3565b6040516100669190610d9b565b60405180910390f35b61008261007d366004610dae565b610162565b604051908152602001610066565b6100a361009e366004610cac565b6101d6565b6040519015158152602001610066565b606060005a90506101576100ca6020870187610ddc565b6001546001600160a01b03166040880135846100e960608b018b610df9565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061023592505050565b9150505b9392505050565b600154604051636ccbae5f60e01b8152600481018390526000916001600160a01b031690636ccbae5f90602401602060405180830381865afa1580156101ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d09190610e40565b92915050565b600061022d6101e485610ef1565b600154604080516020601f88018190048102820181019092528681526001600160a01b039092169190879087908190840183828082843760009201919091525061030d92505050565b949350505050565b6060600080876001600160a01b0316866102518b8a8989610355565b60405161025e9190610f9b565b60006040518083038160008787f1925050503d806000811461029c576040519150601f19603f3d011682016040523d82523d6000602084013e6102a1565b606091505b5090925090506102b2603f87610fb7565b5a116102c0576102c0610fd9565b61030082826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061040a565b9998505050505050505050565b600061031a848484610443565b801561022d575060608401516020908101516001600160e01b031990811660009081529182905260409091205460e01b16151561022d565b50565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036103e75760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526103ff82828661058c565b979650505050505050565b6060831561041957508161015b565b8251156104295782518084602001fd5b8160405162461bcd60e51b81526004016103de9190610d9b565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561048a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104ae9190610e40565b9050600061055c8660600151805190602001208688602001516040516020016104fc9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561058257508551610582906001600160a01b03168286610a38565b9695505050505050565b60606001600160e01b03198416631de5861160e31b0361061a576000806000858060200190518101906105bf9190610fef565b92509250925086838383886040516024016105dd9493929190611032565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152935061015b92505050565b6001600160e01b03198416636debcb8d60e01b0361064b576000806000858060200190518101906105bf9190610fef565b6001600160e01b0319841663280d9b0560e01b036106dd576000806000808680602001905181019061067d91906110aa565b935093509350935087848484848a60405160240161069f959493929190611118565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152945061015b9350505050565b6001600160e01b031984166361603dd960e01b0361075c5760008380602001905181019061070b9190610e40565b905084818460405160240161072192919061115d565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152915061015b9050565b6001600160e01b0319841663b34f33c560e01b036107ab5760008060008580602001905181019061078d9190611176565b92509250925086838383886040516024016105dd94939291906111d0565b6001600160e01b03198416633013529360e01b036107dc5760008060008580602001905181019061078d9190611176565b6001600160e01b031984166307eca39560e01b03610830576000806000808680602001905181019061080e9190611209565b935093509350935087848484848a60405160240161069f95949392919061127e565b6001600160e01b031984166368b6154f60e01b03610862576000806000808680602001905181019061067d91906110aa565b6001600160e01b0319841663341de35b60e21b03610894576000806000808680602001905181019061067d91906110aa565b6001600160e01b03198416637a84860f60e11b0361092d576000806000806000878060200190518101906108c891906112cb565b945094509450945094508885858585858c6040516024016108ee96959493929190611360565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152955061015b945050505050565b6001600160e01b03198416636fab95b360e01b036109b2576000808480602001905181019061095c91906113b9565b915091508582828660405160240161097693929190611400565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925061015b915050565b6001600160e01b0319841663288f888960e11b0361015b57600080848060200190518101906109e1919061142b565b91509150858282866040516024016109fb93929190611459565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925050509392505050565b6000806000610a478585610b7a565b90925090506000816004811115610a6057610a60611489565b148015610a7e5750856001600160a01b0316826001600160a01b0316145b15610a8e5760019250505061015b565b600080876001600160a01b0316631626ba7e60e01b8888604051602401610ab692919061115d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051610af49190610f9b565b600060405180830381855afa9150503d8060008114610b2f576040519150601f19603f3d011682016040523d82523d6000602084013e610b34565b606091505b5091509150818015610b47575080516020145b8015610b6e57508051630b135d3f60e11b90610b6c9083016020908101908401610e40565b145b98975050505050505050565b6000808251604103610bb05760208301516040840151606085015160001a610ba487828585610bbf565b94509450505050610bb8565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610bf65750600090506003610ca3565b8460ff16601b14158015610c0e57508460ff16601c14155b15610c1f5750600090506004610ca3565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610c73573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610c9c57600060019250925050610ca3565b9150600090505b94509492505050565b600080600060408486031215610cc157600080fd5b833567ffffffffffffffff80821115610cd957600080fd5b9085019060808288031215610ced57600080fd5b90935060208501359080821115610d0357600080fd5b818601915086601f830112610d1757600080fd5b813581811115610d2657600080fd5b876020828501011115610d3857600080fd5b6020830194508093505050509250925092565b60005b83811015610d66578181015183820152602001610d4e565b50506000910152565b60008151808452610d87816020860160208601610d4b565b601f01601f19169290920160200192915050565b60208152600061015b6020830184610d6f565b600060208284031215610dc057600080fd5b5035919050565b6001600160a01b038116811461035257600080fd5b600060208284031215610dee57600080fd5b813561015b81610dc7565b6000808335601e19843603018112610e1057600080fd5b83018035915067ffffffffffffffff821115610e2b57600080fd5b602001915036819003821315610bb857600080fd5b600060208284031215610e5257600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610e9257610e92610e59565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ec157610ec1610e59565b604052919050565b600067ffffffffffffffff821115610ee357610ee3610e59565b50601f01601f191660200190565b600060808236031215610f0357600080fd5b610f0b610e6f565b8235610f1681610dc7565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610f4657600080fd5b840136601f820112610f5757600080fd5b8035610f6a610f6582610ec9565b610e98565b8181523684838501011115610f7e57600080fd5b818484018583013760009181019093015250606082015292915050565b60008251610fad818460208701610d4b565b9190910192915050565b600082610fd457634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b60008060006060848603121561100457600080fd5b835161100f81610dc7565b602085015190935061102081610dc7565b80925050604084015190509250925092565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061058290830184610d6f565b600082601f83011261107657600080fd5b8151611084610f6582610ec9565b81815284602083860101111561109957600080fd5b61022d826020830160208701610d4b565b600080600080608085870312156110c057600080fd5b84516110cb81610dc7565b60208601519094506110dc81610dc7565b60408601516060870151919450925067ffffffffffffffff81111561110057600080fd5b61110c87828801611065565b91505092959194509250565b6001600160a01b038681168252851660208201526040810184905260a06060820181905260009061114b90830185610d6f565b8281036080840152610b6e8185610d6f565b82815260406020820152600061022d6040830184610d6f565b60008060006060848603121561118b57600080fd5b835161119681610dc7565b60208501516040860151919450925067ffffffffffffffff8111156111ba57600080fd5b6111c686828701611065565b9150509250925092565b60018060a01b03851681528360208201526080604082015260006111f76080830185610d6f565b82810360608401526103ff8185610d6f565b6000806000806080858703121561121f57600080fd5b845161122a81610dc7565b60208601516040870151919550935067ffffffffffffffff8082111561124f57600080fd5b61125b88838901611065565b9350606087015191508082111561127157600080fd5b5061110c87828801611065565b60018060a01b038616815284602082015260a0604082015260006112a560a0830186610d6f565b82810360608401526112b78186610d6f565b90508281036080840152610b6e8185610d6f565b600080600080600060a086880312156112e357600080fd5b85516112ee81610dc7565b60208701519095506112ff81610dc7565b60408701516060880151919550935067ffffffffffffffff8082111561132457600080fd5b61133089838a01611065565b9350608088015191508082111561134657600080fd5b5061135388828901611065565b9150509295509295909350565b6001600160a01b038781168252861660208201526040810185905260c06060820181905260009061139390830186610d6f565b82810360808401526113a58186610d6f565b905082810360a08401526103008185610d6f565b600080604083850312156113cc57600080fd5b82519150602083015167ffffffffffffffff8111156113ea57600080fd5b6113f685828601611065565b9150509250929050565b8381526060602082015260006114196060830185610d6f565b82810360408401526105828185610d6f565b6000806040838503121561143e57600080fd5b825161144981610dc7565b6020939093015192949293505050565b60018060a01b03841681528260208201526060604082015260006114806060830184610d6f565b95945050505050565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a","storage":{"0x1":"0x7bb6cd9be29fab783c0b494a06fed8b2e2596b7a","0xd8b896d609e853134f3f02ce62d8049b2fdfe9356134f6d548fb1beda30db79":"0x30135293","0x4f457f36b92dc6b16c281e5877e2d8d39630135c1b7246fa9174035e1efcefbd":"0x6fab95b3","0x6b7ba3fe9941e089de60543da4a1deaef065baa963222951b2f9a138f9960820":"0x6debcb8d","0x70cff8e4ee4af5aa154324d45bcf258212c235bbe79f0707bb6273110ef4e13a":"0xf5090c1e","0x73efb0e44094dbabc6bbeecd3be1d81f272157c2dae2d647e6315f150b0b1dd2":"0xd0778d6c","0x8b1c4edded6644848281eab03ac2c319242d62b2057cffa3dd4540715bbc155e":"0xef2c3088","0xbeb5ea8fc2aeae43b7170220434aa4429fb067f0866ae25514b29f647641ca8c":"0x511f1112","0xca659f6eb372ce950e69d4d474290a6a4285f6a06a6128ca9f45419371a1e997":"0xb34f33c5","0xd12e300b5f35ba5198dd81dab97a512a154a0ad0e2cda788abdc22deba64f2a7":"0x280d9b05","0xd5453e7f4fff276a1d42f717d1db50865c284ae707a15bd6a590a3895656f27c":"0x7eca395","0xea2575ae4056f10294a848ca5ed6d215dffd1b80838142770bc441f7df607d71":"0x61603dd9","0xf8ca3ef1e3d09a0d88e209301f12626c90bec3ea586d4bce2c7a58e7eae8278f":"0x68b6154f"}},"0xb17aae5b3a7815433fc82cfd67ea245767894f03":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061012a5760003560e01c80638d839ffe116100ab578063aeb8ce9b1161006f578063aeb8ce9b146105d7578063ce1e09c014610688578063f14fcbc81461069d578063f2fde38b146106c7578063f49826be146106fa578063f7a16963146107b95761012a565b80638d839ffe1461045d5780638da5cb5b146104725780638f32d59b146104a35780639791c097146104b8578063acf1a841146105695761012a565b80637e324479116100f25780637e324479146102b8578063839df945146102e857806383e7f6ff1461031257806385f6d155146103c55780638a95b09f146104485761012a565b806301ffc9a71461012f5780633ccfd60b146101775780633d86c52f1461018e578063530e784f14610270578063715018a6146102a3575b600080fd5b34801561013b57600080fd5b506101636004803603602081101561015257600080fd5b50356001600160e01b031916610881565b604080519115158252519081900360200190f35b34801561018357600080fd5b5061018c610a12565b005b34801561019a57600080fd5b5061025e600480360360a08110156101b157600080fd5b810190602081018135600160201b8111156101cb57600080fd5b8201836020820111156101dd57600080fd5b803590602001918460018302840111600160201b831117156101fe57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b0383358116945060208401359360408101358216935060600135169050610a53565b60408051918252519081900360200190f35b34801561027c57600080fd5b5061018c6004803603602081101561029357600080fd5b50356001600160a01b0316610b42565b3480156102af57600080fd5b5061018c610ba3565b3480156102c457600080fd5b5061018c600480360360408110156102db57600080fd5b5080359060200135610bfe565b3480156102f457600080fd5b5061025e6004803603602081101561030b57600080fd5b5035610c1a565b34801561031e57600080fd5b5061025e6004803603604081101561033557600080fd5b810190602081018135600160201b81111561034f57600080fd5b82018360208201111561036157600080fd5b803590602001918460018302840111600160201b8311171561038257600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505091359250610c2c915050565b61018c600480360360808110156103db57600080fd5b810190602081018135600160201b8111156103f557600080fd5b82018360208201111561040757600080fd5b803590602001918460018302840111600160201b8311171561042857600080fd5b91935091506001600160a01b038135169060208101359060400135610d9e565b34801561045457600080fd5b5061025e610de9565b34801561046957600080fd5b5061025e610df0565b34801561047e57600080fd5b50610487610df6565b604080516001600160a01b039092168252519081900360200190f35b3480156104af57600080fd5b50610163610e05565b3480156104c457600080fd5b50610163600480360360208110156104db57600080fd5b810190602081018135600160201b8111156104f557600080fd5b82018360208201111561050757600080fd5b803590602001918460018302840111600160201b8311171561052857600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610e16945050505050565b61018c6004803603604081101561057f57600080fd5b810190602081018135600160201b81111561059957600080fd5b8201836020820111156105ab57600080fd5b803590602001918460018302840111600160201b831117156105cc57600080fd5b919350915035610e2b565b3480156105e357600080fd5b50610163600480360360208110156105fa57600080fd5b810190602081018135600160201b81111561061457600080fd5b82018360208201111561062657600080fd5b803590602001918460018302840111600160201b8311171561064757600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610fcf945050505050565b34801561069457600080fd5b5061025e611069565b3480156106a957600080fd5b5061018c600480360360208110156106c057600080fd5b503561106f565b3480156106d357600080fd5b5061018c600480360360208110156106ea57600080fd5b50356001600160a01b03166110a1565b34801561070657600080fd5b5061025e6004803603606081101561071d57600080fd5b810190602081018135600160201b81111561073757600080fd5b82018360208201111561074957600080fd5b803590602001918460018302840111600160201b8311171561076a57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b0383351693505050602001356110bb565b61018c600480360360c08110156107cf57600080fd5b810190602081018135600160201b8111156107e957600080fd5b8201836020820111156107fb57600080fd5b803590602001918460018302840111600160201b8311171561081c57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b038335811694506020840135936040810135935060608101358216925060800135166110d3565b604080517f737570706f727473496e74657266616365286279746573342900000000000000815290519081900360190190206000906001600160e01b0319838116911614806109c05750604080517472656e657728737472696e672c75696e743235362960581b815290519081900360150181209080602861186a8239604080519182900360280182206e636f6d6d697428627974657333322960881b8352905191829003600f01822090925090806026611892823960260190506040518091039020604051808070617661696c61626c6528737472696e672960781b8152506011019050604051809103902060405180807f72656e74507269636528737472696e672c75696e7432353629000000000000008152506019019050604051809103902018181818186001600160e01b031916826001600160e01b031916145b80610a0c5750604051808061182a60409139604080519182900301812091508060426118b8823960420190506040518091039020186001600160e01b031916826001600160e01b031916145b92915050565b610a1a610e05565b610a2357600080fd5b6040513390303180156108fc02916000818181858888f19350505050158015610a50573d6000803e3d6000fd5b50565b845160208601206000906001600160a01b038416158015610a7b57506001600160a01b038316155b15610acb57604080516020808201939093526bffffffffffffffffffffffff19606089901b1681830152605480820188905282518083039091018152607490910190915280519101209050610b39565b6001600160a01b038416610ade57600080fd5b604080516020808201939093526bffffffffffffffffffffffff19606089811b82168385015287811b8216605484015286901b166068820152607c80820188905282518083039091018152609c909101909152805191012090505b95945050505050565b610b4a610e05565b610b5357600080fd5b600280546001600160a01b0319166001600160a01b0383811691909117918290556040519116907ff261845a790fe29bbd6631e2ca4a5bdc83e6eed7c3271d9590d97287e00e912390600090a250565b610bab610e05565b610bb457600080fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b610c06610e05565b610c0f57600080fd5b600391909155600455565b60056020526000908152604090205481565b815160208084019190912060025460015460408051636b727d4360e11b81526004810185905290516000956001600160a01b03948516946350e9a715948a9491169263d6e4fa8692602480840193919291829003018186803b158015610c9157600080fd5b505afa158015610ca5573d6000803e3d6000fd5b505050506040513d6020811015610cbb57600080fd5b50516040516001600160e01b031960e085901b168152602481018290526044810188905260606004820190815283516064830152835189928291608490910190602087019080838360005b83811015610d1e578181015183820152602001610d06565b50505050905090810190601f168015610d4b5780820380516001836020036101000a031916815260200191505b5094505050505060206040518083038186803b158015610d6a57600080fd5b505afa158015610d7e573d6000803e3d6000fd5b505050506040513d6020811015610d9457600080fd5b5051949350505050565b610de285858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250889350879250869150806110d3565b5050505050565b6224ea0081565b60035481565b6000546001600160a01b031690565b6000546001600160a01b0316331490565b60006003610e2383611646565b101592915050565b6000610e6e84848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250869250610c2c915050565b905080341015610e7d57600080fd5b60008484604051808383808284376040805193909101839003832060015463c475abff60e01b855260048501829052602485018b90529151909750600096506001600160a01b03909116945063c475abff93506044808401936020935082900301818787803b158015610eef57600080fd5b505af1158015610f03573d6000803e3d6000fd5b505050506040513d6020811015610f1957600080fd5b5051905034831015610f565760405133903485900380156108fc02916000818181858888f19350505050158015610f54573d6000803e3d6000fd5b505b817f3da24c024582931cfaf8267d8ed24d13a82a8068d5bd337d30ec45cea4e506ae8787868560405180806020018481526020018381526020018281038252868682818152602001925080828437600083820152604051601f909101601f191690920182900397509095505050505050a2505050505050565b80516020820120600090610fe283610e16565b80156110625750600154604080516312dc929d60e31b81526004810184905290516001600160a01b03909216916396e494e891602480820192602092909190829003018186803b15801561103557600080fd5b505afa158015611049573d6000803e3d6000fd5b505050506040513d602081101561105f57600080fd5b50515b9392505050565b60045481565b6004546000828152600560205260409020544291011061108e57600080fd5b6000908152600560205260409020429055565b6110a9610e05565b6110b257600080fd5b610a508161172e565b60006110cb848484600080610a53565b949350505050565b60006110e28787868686610a53565b905060006110f188878461179c565b885160208a01209091508060006001600160a01b038716156114ac5760015460408051633f2891eb60e21b815260048101859052306024820152604481018c905290516001600160a01b039092169163fca247ac916064808201926020929091908290030181600087803b15801561116857600080fd5b505af115801561117c573d6000803e3d6000fd5b505050506040513d602081101561119257600080fd5b505160015460408051630ddf7fcb60e41b815290519293506000926001600160a01b039092169163ddf7fcb091600480820192602092909190829003018186803b1580156111df57600080fd5b505afa1580156111f3573d6000803e3d6000fd5b505050506040513d602081101561120957600080fd5b50516040805160208181019390935280820187905281518082038301815260608201808452815191850191909120600154633f15457f60e01b90925292519294506001600160a01b031692633f15457f92606480840193829003018186803b15801561127457600080fd5b505afa158015611288573d6000803e3d6000fd5b505050506040513d602081101561129e57600080fd5b505160408051630c4b7b8560e11b8152600481018490526001600160a01b038b8116602483015291519190921691631896f70a91604480830192600092919082900301818387803b1580156112f257600080fd5b505af1158015611306573d6000803e3d6000fd5b505050506001600160a01b0387161561139257876001600160a01b031663d5fa2b0082896040518363ffffffff1660e01b815260040180838152602001826001600160a01b03166001600160a01b0316815260200192505050600060405180830381600087803b15801561137957600080fd5b505af115801561138d573d6000803e3d6000fd5b505050505b60015460408051630a3b53db60e21b8152600481018690526001600160a01b038e81166024830152915191909216916328ed4f6c91604480830192600092919082900301818387803b1580156113e757600080fd5b505af11580156113fb573d6000803e3d6000fd5b50505050600160009054906101000a90046001600160a01b03166001600160a01b03166323b872dd308d866040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050600060405180830381600087803b15801561148e57600080fd5b505af11580156114a2573d6000803e3d6000fd5b505050505061154c565b6001600160a01b038616156114c057600080fd5b60015460408051633f2891eb60e21b8152600481018590526001600160a01b038d81166024830152604482018d90529151919092169163fca247ac9160648083019260209291908290030181600087803b15801561151d57600080fd5b505af1158015611531573d6000803e3d6000fd5b505050506040513d602081101561154757600080fd5b505190505b896001600160a01b0316837fca6abbe9d7f11422cb6ca7629fbf6fe9efb1c621f71ce8f02b9f2a230097404f8d87856040518080602001848152602001838152602001828103825285818151815260200191508051906020019080838360005b838110156115c45781810151838201526020016115ac565b50505050905090810190601f1680156115f15780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a3833411156116395760405133903486900380156108fc02916000818181858888f19350505050158015611637573d6000803e3d6000fd5b505b5050505050505050505050565b8051600090819081905b8082101561172557600085838151811061166657fe5b01602001516001600160f81b0319169050600160ff1b81101561168e57600183019250611719565b600760fd1b6001600160f81b0319821610156116af57600283019250611719565b600f60fc1b6001600160f81b0319821610156116d057600383019250611719565b601f60fb1b6001600160f81b0319821610156116f157600483019250611719565b603f60fa1b6001600160f81b03198216101561171257600583019250611719565b6006830192505b50600190920191611650565b50909392505050565b6001600160a01b03811661174157600080fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b600354600082815260056020526040812054909142910111156117be57600080fd5b600454600083815260056020526040902054429101116117dd57600080fd5b6117e684610fcf565b6117ef57600080fd5b600082815260056020526040812081905561180a8585610c2c565b90506224ea0084101561181c57600080fd5b803410156110cb57600080fdfe6d616b65436f6d6d69746d656e7457697468436f6e66696728737472696e672c616464726573732c627974657333322c616464726573732c6164647265737329726567697374657228737472696e672c616464726573732c75696e743235362c62797465733332296d616b65436f6d6d69746d656e7428737472696e672c616464726573732c6279746573333229726567697374657257697468436f6e66696728737472696e672c616464726573732c75696e743235362c627974657333322c616464726573732c6164647265737329a265627a7a72315820ba74b4e49afb22de09a9ebda5d073d93e2a2a7b2530ce50def390c32cac92ea064736f6c634300050c0032","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1":"0xc965345edac823d56812cd20a10316233916a605","0x2":"0xec71e4e674fe0f432693dc2b935c34bd2774c003","0x3":"0x258","0x4":"0x15180"}},"0xbdefcf6429d0ac68236a6beb321cbd2ce66b463c":{"nonce":2,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c80636d435421116100885780637b37e561116100635780637b37e561146102435780638b9e028b14610256578063906c87cc1461027657806393790f4414610289575f80fd5b80636d435421146101eb5780636e9bfd9f146101fe578063794593bc14610230575f80fd5b806314afd79e116100c357806314afd79e1461018157806333bc8572146101945780634e3f9580146101b757806351710e45146101d8575f80fd5b8063027cc764146100e95780630a96ad391461011957806313ad9cab1461016c575b5f80fd5b6100fc6100f7366004610c39565b61029c565b6040516001600160a01b0390911681526020015b60405180910390f35b604080517f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f81527fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167602082015201610110565b61017f61017a366004610c61565b610339565b005b6100fc61018f366004610ca9565b610531565b6101a76101a2366004610cc9565b61055c565b6040519015158152602001610110565b6101ca6101c5366004610ca9565b610595565b604051908152602001610110565b61017f6101e6366004610ca9565b6105bd565b61017f6101f9366004610cc9565b6106be565b61021161020c366004610cfa565b6107ae565b604080516001600160a01b039093168352901515602083015201610110565b6100fc61023e366004610d11565b610838565b61017f610251366004610ca9565b610a0a565b610269610264366004610ca9565b610aab565b6040516101109190610d32565b6100fc610284366004610ca9565b610b28565b6101ca610297366004610ca9565b610b53565b5f6102a683610b8e565b6001600160a01b0383165f908152602081905260409020600301548083106102f157604051636ceb340b60e01b81526001600160a01b03851660048201526024015b60405180910390fd5b6001600160a01b0384165f90815260208190526040902060030180548490811061031d5761031d610d7e565b5f918252602090912001546001600160a01b0316949350505050565b61034283610bc6565b60405163c4e8fcb560e01b81526001600160a01b038381166004830152821515602483015284169063c4e8fcb5906044015f604051808303815f87803b15801561038a575f80fd5b505af115801561039c573d5f803e3d5ffd5b505050506001600160a01b038381165f908152602081815260408083209386168352600484019091529020548015158380156103d6575080155b15610425576003830180546001810182555f828152602080822090920180546001600160a01b0319166001600160a01b038a169081179091559254928152600486019091526040902055610529565b831580156104305750805b156105295760038301545f198301905f9061044d90600190610d92565b90508181146104d8575f85600301828154811061046c5761046c610d7e565b5f918252602090912001546003870180546001600160a01b03909216925082918590811061049c5761049c610d7e565b5f91825260208083209190910180546001600160a01b0319166001600160a01b0394851617905592909116815260048701909152604090208490555b846003018054806104eb576104eb610db7565b5f828152602080822083015f1990810180546001600160a01b03191690559092019092556001600160a01b0389168252600487019052604081205550505b505050505050565b5f61053b82610b8e565b506001600160a01b039081165f908152602081905260409020600101541690565b5f61056683610b8e565b506001600160a01b039182165f9081526020818152604080832093909416825260049092019091522054151590565b5f61059f82610b8e565b506001600160a01b03165f9081526020819052604090206003015490565b6105c681610b8e565b6001600160a01b038181165f9081526020819052604090206002015416331461060d576040516388c3a11560e01b81526001600160a01b03821660048201526024016102e8565b6040515f907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da908290a26001600160a01b038082165f818152602081905260408082206002810180546001600160a01b031916905560010154905133949190911692917fc8894f26f396ce8c004245c8b7cd1b92103a6e4302fcbab883987149ac01b7ec91a46001600160a01b03165f90815260208190526040902060010180546001600160a01b03191633179055565b6106c782610bc6565b6001600160a01b0381166106f95760405163a388d26360e01b81526001600160a01b03831660048201526024016102e8565b6001600160a01b038083165f9081526020819052604090206002015481169082160361074b576040516365e0406560e11b81526001600160a01b038084166004830152821660248201526044016102e8565b6040516001600160a01b038216907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da905f90a26001600160a01b039182165f90815260208190526040902060020180546001600160a01b03191691909216179055565b5f8060ff60f81b30847f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f6040516020016107eb9493929190610dcb565b60408051601f198184030181529190528051602090910120936001600160a01b0385163f7fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167149350915050565b5f6001600160a01b0382166108605760405163267eaa8160e21b815260040160405180910390fd5b606083901c3314610884576040516332db94d160e21b815260040160405180910390fd5b6040516108c3906001600160f81b031990309086907f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f90602001610dcb565b604051602081830303815290604052805190602001205f1c90507fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167816001600160a01b03163f0361093257604051633194665960e11b81526001600160a01b03821660048201526024016102e8565b8260405161093f90610c16565b8190604051809103905ff590508015801561095c573d5f803e3d5ffd5b50506001600160a01b038181165f81815260208181526040918290206001810180546001600160a01b03191695881695909517909455868455815192835282018690527f4397af6128d529b8ae0442f99db1296d5136062597a15bbc61c1b2a6431a7d15910160405180910390a16040516001600160a01b03808516915f918516907fc8894f26f396ce8c004245c8b7cd1b92103a6e4302fcbab883987149ac01b7ec908390a45092915050565b610a1381610bc6565b6001600160a01b038181165f9081526020819052604090206002015416610a58576040516335809b0b60e11b81526001600160a01b03821660048201526024016102e8565b6040515f907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da908290a26001600160a01b03165f90815260208190526040902060020180546001600160a01b0319169055565b6060610ab682610b8e565b6001600160a01b0382165f908152602081815260409182902060030180548351818402810184019094528084529091830182828015610b1c57602002820191905f5260205f20905b81546001600160a01b03168152600190910190602001808311610afe575b50505050509050919050565b5f610b3282610b8e565b506001600160a01b039081165f908152602081905260409020600201541690565b6001600160a01b0381165f9081526020819052604090205480610b89576040516304ca820960e41b815260040160405180910390fd5b919050565b6001600160a01b0381165f90815260208190526040902054610bc3576040516304ca820960e41b815260040160405180910390fd5b50565b610bcf81610b8e565b6001600160a01b038181165f90815260208190526040902060010154163314610bc35760405163d4ed9a1760e01b81526001600160a01b03821660048201526024016102e8565b610a4180610e0583390190565b80356001600160a01b0381168114610b89575f80fd5b5f8060408385031215610c4a575f80fd5b610c5383610c23565b946020939093013593505050565b5f805f60608486031215610c73575f80fd5b610c7c84610c23565b9250610c8a60208501610c23565b915060408401358015158114610c9e575f80fd5b809150509250925092565b5f60208284031215610cb9575f80fd5b610cc282610c23565b9392505050565b5f8060408385031215610cda575f80fd5b610ce383610c23565b9150610cf160208401610c23565b90509250929050565b5f60208284031215610d0a575f80fd5b5035919050565b5f8060408385031215610d22575f80fd5b82359150610cf160208401610c23565b602080825282518282018190525f9190848201906040850190845b81811015610d725783516001600160a01b031683529284019291840191600101610d4d565b50909695505050505050565b634e487b7160e01b5f52603260045260245ffd5b81810381811115610db157634e487b7160e01b5f52601160045260245ffd5b92915050565b634e487b7160e01b5f52603160045260245ffd5b6001600160f81b031994909416845260609290921b6bffffffffffffffffffffffff19166001840152601583015260358201526055019056fe60a060405234801561000f575f80fd5b5033608052608051610a1561002c5f395f6101d20152610a155ff3fe608060405234801561000f575f80fd5b506004361061004a575f3560e01c80634ce34aa21461004e578063899e104c1461007e5780638df25d9214610091578063c4e8fcb5146100a4575b5f80fd5b61006161005c366004610834565b6100b9565b6040516001600160e01b0319909116815260200160405180910390f35b61006161008c3660046108b4565b610121565b61006161009f36600461091b565b61018a565b6100b76100b2366004610969565b6101c7565b005b5f335f525f60205260405f20546100dd576349ed56f960e11b5f523360045260245ffd5b815f5b81811015610110576101088585838181106100fd576100fd6109a2565b905060c002016102c4565b6001016100e0565b50632671a55160e11b949350505050565b5f335f525f60205260405f2054610145576349ed56f960e11b5f523360045260245ffd5b835f5b8181101561016d576101658787838181106100fd576100fd6109a2565b600101610148565b506101788484610436565b50632267841360e21b95945050505050565b5f335f525f60205260405f20546101ae576349ed56f960e11b5f523360045260245ffd5b6101b88383610436565b506346f92ec960e11b92915050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610210576040516336abb4df60e11b815260040160405180910390fd5b6001600160a01b0382165f9081526020819052604090205481151560ff909116151503610268576040516349271a0f60e11b81526001600160a01b038316600482015281151560248201526044015b60405180910390fd5b6001600160a01b0382165f8181526020818152604091829020805460ff191685151590811790915591519182527fae63067d43ac07563b7eb8db6595635fc77f1578a2a5ea06ba91b63e2afa37e2910160405180910390a25050565b60016102d360208301836109ca565b60038111156102e4576102e46109b6565b03610329576103266102fc60408301602084016109ef565b61030c60608401604085016109ef565b61031c60808501606086016109ef565b8460a0013561056c565b50565b600261033860208301836109ca565b6003811115610349576103496109b6565b036103b6578060a00135600114610379576040516369f9582760e01b815260a0820135600482015260240161025f565b61032661038c60408301602084016109ef565b61039c60608401604085016109ef565b6103ac60808501606086016109ef565b8460800135610660565b60036103c560208301836109ca565b60038111156103d6576103d66109b6565b0361041d576103266103ee60408301602084016109ef565b6103fe60608401604085016109ef565b61040e60808501606086016109ef565b84608001358560a00135610715565b604051631e4cbc7f60e21b815260040160405180910390fd5b808280631759616b60e11b6020525f5b8381101561055f57823582018035803b61046b57635f15d6725f52806020526024601cfd5b60a08201358060051b60c0018060808501351460a0606086013514168185013583141615905080156104a657633ae8821360e21b5f5260045ffd5b506020860195506080602084016024378060061b60400190508060a00160a4525f8160c401528060c4018160a0850160c4375f808260205f875af1935083610550573d1561053057601f3d0160051c91508060051c826003028184111561051a578184036003028280028580020360091c01015b5a60208201101561052d573d5f803e3d5ffd5b50505b6357e222f160e11b5f528260045260c0606452608451602001608452805ffd5b50505050600181019050610446565b5050505060806040525050565b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166106515780873b15151661065157806106405781610623573d1561060257601f3d0160051c8360051c81600302818311156105eb578183036003028280028480020360091c01015b5a6020820110156105fe573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b833b61067757635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af180610707573d156106e557601f3d0160051c8260051c81600302818311156106ce578183036003028280028480020360091c01015b5a6020820110156106e1573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b61072c57635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af1806107d1573d156107b057601f3d0160051c8560051c8160030281831115610799578183036003028280028480020360091c01015b5a6020820110156107ac573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b5f8083601f8401126107fc575f80fd5b50813567ffffffffffffffff811115610813575f80fd5b60208301915083602060c08302850101111561082d575f80fd5b9250929050565b5f8060208385031215610845575f80fd5b823567ffffffffffffffff81111561085b575f80fd5b610867858286016107ec565b90969095509350505050565b5f8083601f840112610883575f80fd5b50813567ffffffffffffffff81111561089a575f80fd5b6020830191508360208260051b850101111561082d575f80fd5b5f805f80604085870312156108c7575f80fd5b843567ffffffffffffffff808211156108de575f80fd5b6108ea888389016107ec565b90965094506020870135915080821115610902575f80fd5b5061090f87828801610873565b95989497509550505050565b5f806020838503121561092c575f80fd5b823567ffffffffffffffff811115610942575f80fd5b61086785828601610873565b80356001600160a01b0381168114610964575f80fd5b919050565b5f806040838503121561097a575f80fd5b6109838361094e565b915060208301358015158114610997575f80fd5b809150509250929050565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52602160045260245ffd5b5f602082840312156109da575f80fd5b8135600481106109e8575f80fd5b9392505050565b5f602082840312156109ff575f80fd5b6109e88261094e56fea164736f6c6343000818000aa164736f6c6343000818000a","storage":{}},"0xbe5deac45dd1ca4ee18dc2d585d84d3d3cb82b0d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c806341539d4a146100465780634d5505d314610097578063afa764d7146100b1575b600080fd5b6100636004803603602081101561005c57600080fd5b50356100dc565b6040805195865260208601949094528484019290925260608401526001600160a01b03166080830152519081900360a00190f35b61009f610114565b60408051918252519081900360200190f35b6100da600480360360608110156100c757600080fd5b508035906020810135906040013561011a565b005b60006020819052908152604090208054600182015460028301546003840154600490940154929391929091906001600160a01b031685565b60015481565b6101226101eb565b506040805160a0810182528481526020808201858152828401858152426060808601918252336080870181815260018054810180825560009081528089528a81208a518155975188830155955160028801559351600387015551600490950180546001600160a01b0319166001600160a01b0390961695909517909455905486518981529485018890528487018a905295519495919491937fba5de06d22af2685c6c7765f60067f7d2b08c2d29f53cdf14d67f6d1c9bfb527929081900390910190a450505050565b6040518060a001604052806000801916815260200160008152602001600081526020016000815260200160006001600160a01b03168152509056fea164736f6c6343000606000a","storage":{"0x1":"0x0"}},"0xbe92182cab5b84fd18b34881a0c32771e84f5b8b":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061021c5760003560e01c80638da5cb5b11610125578063bebec6b4116100ad578063e985e9c51161007c578063e985e9c514610540578063f059235914610553578063f2fde38b14610566578063ffa1ad7414610579578063ffad6f551461059d57600080fd5b8063bebec6b4146104e7578063bfc5429b146104fa578063c15ae7cf1461050d578063c87b56dd1461052d57600080fd5b8063a81ce6f9116100f4578063a81ce6f91461046d578063ac9650d814610480578063b3f9e4cb146104a0578063b85afd28146104b3578063b98b3526146104d457600080fd5b80638da5cb5b146103f157806391015f6b146103f9578063933c051d1461041b578063a3f4df7e1461043d57600080fd5b80634bd79ed0116101a857806370a082311161017757806370a082311461038d578063715018a6146103a05780637e37479e146103a857806383caffbe146103bb578063869b8884146103ce57600080fd5b80634bd79ed0146103335780634f558e79146103465780636352211e14610359578063672b9f811461036c57600080fd5b80631bd8cc1a116101ef5780631bd8cc1a146102ac5780631be5e7ed146102cc578063276fabb1146102ec578063430c20811461030d578063485cc9551461032057600080fd5b806301ffc9a7146102215780630328075514610249578063081812fc1461026c57806313af403514610297575b600080fd5b61023461022f366004612c9d565b6105b0565b60405190151581526020015b60405180910390f35b61025c610257366004612d0b565b610638565b6040516102409493929190612dfe565b61027f61027a366004612e3c565b61065b565b6040516001600160a01b039091168152602001610240565b6102aa6102a5366004612e6a565b610760565b005b6102bf6102ba366004612d0b565b6107d1565b6040516102409190612e87565b6102df6102da366004612edb565b6107f0565b6040516102409190612f12565b6102ff6102fa366004612f25565b61091b565b604051908152602001610240565b61023461031b366004612f66565b61098f565b6102aa61032e366004612f92565b610aa2565b6102aa610341366004612fcb565b610bf5565b610234610354366004612e3c565b610e51565b61027f610367366004612e3c565b610e5c565b61037f61037a366004613036565b610e67565b604051610240929190613058565b6102ff61039b366004612e6a565b610f97565b6102aa611095565b6102ff6103b6366004612e6a565b6110a9565b6102bf6103c936600461307d565b611118565b6103e16103dc366004612fcb565b6114f0565b60405161024094939291906131bb565b61027f6116e6565b61040c610407366004612d0b565b611714565b60405161024093929190613208565b61042e610429366004612fcb565b611734565b60405161024093929190613234565b6102df604051806040016040528060118152602001702aa7299d10283937bc3c902932b0b232b960791b81525081565b61027f61047b366004612e3c565b6118bd565b61049361048e366004612f25565b61198b565b6040516102409190613277565b61027f6104ae366004612e3c565b611a7f565b6104c66104c1366004612d0b565b611b05565b6040516102409291906132d9565b6102df6104e23660046132fe565b611ce1565b6102df6104f5366004612e6a565b611cfb565b6102df6105083660046132fe565b611d6f565b61052061051b366004612f25565b611d89565b6040516102409190613371565b6102df61053b366004612e3c565b611e37565b61023461054e366004612f92565b611f09565b6102aa610561366004612fcb565b611f54565b6102aa610574366004612e6a565b612018565b6102df604051806040016040528060058152602001640302e352e360dc1b81525081565b6102aa6105ab366004613384565b612085565b60006001600160e01b031982166362526e6360e01b14806105e157506001600160e01b03198216636fa624af60e11b145b806105fc57506001600160e01b031982166308da864d60e31b145b8061061757506001600160e01b03198216638584880360e01b145b8061063257506301ffc9a760e01b6001600160e01b03198316145b92915050565b6000806060806106498787876120d8565b93509350935093505b93509350935093565b60006106668261233a565b61067257506000919050565b61067b826123d2565b6106f25760665460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa1580156106c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106ed91906133bd565b610632565b60655460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa15801561073c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061063291906133bd565b600061076a6116e6565b6001600160a01b0316146107c55760405162461bcd60e51b815260206004820152601e60248201527f50726f78795265616465723a204f574e45525f414c52454144595f534554000060448201526064015b60405180910390fd5b6107ce81612419565b50565b60606107e66107e0848661346a565b83612495565b90505b9392505050565b60606107fb826123d2565b1561088057606554604051631be5e7ed60e01b81526001600160a01b0390911690631be5e7ed9061083490879087908790600401613547565b600060405180830381865afa158015610851573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261087991908101906135b0565b90506107e9565b600061088b83612617565b90506001600160a01b0381163b1561091357604051631be5e7ed60e01b81526001600160a01b03821690631be5e7ed906108cd90889088908890600401613547565b600060405180830381865afa92505050801561090b57506040513d6000823e601f3d908101601f1916820160405261090891908101906135b0565b60015b156109135791505b509392505050565b60655460405163276fabb160e01b81526000916001600160a01b03169063276fabb19061094e908690869060040161366c565b602060405180830381865afa15801561096b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613680565b600061099a8261233a565b6109a657506000610632565b6109af826123d2565b610a2d5760665460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a04573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a289190613699565b6107e9565b60655460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a7e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613699565b600054610100900460ff1615808015610ac25750600054600160ff909116105b80610adc5750303b158015610adc575060005460ff166001145b610b3f5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107bc565b6000805460ff191660011790558015610b62576000805461ff0019166101001790555b606580546001600160a01b038086166001600160a01b0319928316179092556066805492851692909116919091179055610b9a61268a565b610ba261268a565b610baa6126b1565b8015610bf0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b610bfd6126e1565b828114610c4c5760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107bc565b60005b83811015610e4a5760006068868684818110610c6d57610c6d6136bb565b9050602002810190610c7f91906136d1565b604051610c8d929190613717565b908152604051908190036020019020541115610cf1576068858583818110610cb757610cb76136bb565b9050602002810190610cc991906136d1565b604051610cd7929190613717565b90815260200160405180910390206000610cf19190612c18565b60005b838383818110610d0657610d066136bb565b9050602002810190610d189190613727565b9050811015610ddc576068868684818110610d3557610d356136bb565b9050602002810190610d4791906136d1565b604051610d55929190613717565b9081526020016040518091039020848484818110610d7557610d756136bb565b9050602002810190610d879190613727565b83818110610d9757610d976136bb565b9050602002810190610da991906136d1565b82546001810184556000938452602090932090920191610dc991836137f8565b5080610dd4816138cd565b915050610cf4565b507fb2b57b54285120d17f49f2490a39ef791441fd0ad1e6b6818c23262bf91f061c858583818110610e1057610e106136bb565b9050602002810190610e2291906136d1565b604051610e309291906138e6565b60405180910390a180610e42816138cd565b915050610c4f565b5050505050565b60006106328261233a565b600061063282612740565b606080610e73836123d2565b15610ef95760655460405163672b9f8160e01b815260048101869052602481018590526001600160a01b039091169063672b9f8190604401600060405180830381865afa158015610ec8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610ef091908101906138fa565b91509150610f90565b6000610f0484612617565b90506001600160a01b0381163b15610f8e5760405163672b9f8160e01b815260048101869052602481018590526001600160a01b0382169063672b9f8190604401600060405180830381865afa925050508015610f8357506040513d6000823e601f3d908101601f19168201604052610f8091908101906138fa565b60015b15610f8e5790935091505b505b9250929050565b6065546040516370a0823160e01b81526001600160a01b03838116600483015260009283929116906370a0823190602401602060405180830381865afa158015610fe5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110099190613680565b6066549091506001600160a01b031615610632576066546040516370a0823160e01b81526001600160a01b038581166004830152909116906370a0823190602401602060405180830381865afa158015611067573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061108b9190613680565b6107e9908261395d565b61109d6126e1565b6110a76000612419565b565b606554604051633f1ba3cf60e11b81526001600160a01b0383811660048301526000921690637e37479e90602401602060405180830381865afa1580156110f4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190613680565b606060006067868660405161112e929190613717565b9081526020016040518091039020805461114790613770565b80601f016020809104026020016040519081016040528092919081815260200182805461117390613770565b80156111c05780601f10611195576101008083540402835291602001916111c0565b820191906000526020600020905b8154815290600101906020018083116111a357829003601f168201915b5050505050905080516000036111d657506114e8565b6000604051806040016040528060068152602001653a37b5b2b71760d11b81525090506000604051806040016040528060088152602001672e6164647265737360c01b81525090506000604051806040016040528060018152602001601760f91b815250905060008385838c8c868d8d8a60405160200161125f99989796959493929190613970565b6040516020818303038152906040529050600060688260405161128291906139f3565b9081526020016040518091039020805480602002602001604051908101604052809291908181526020016000905b8282101561135c5783829060005260206000200180546112cf90613770565b80601f01602080910402602001604051908101604052809291908181526020018280546112fb90613770565b80156113485780601f1061131d57610100808354040283529160200191611348565b820191906000526020600020905b81548152906001019060200180831161132b57829003601f168201915b5050505050815260200190600101906112b0565b50505050905080516003611370919061395d565b6001600160401b03811115611387576113876133da565b6040519080825280602002602001820160405280156113ba57816020015b60608152602001906001900390816113a55790505b50965081876000815181106113d1576113d16136bb565b602002602001018190525060005b815181101561143e578181815181106113fa576113fa6136bb565b602002602001015188826001611410919061395d565b81518110611420576114206136bb565b60200260200101819052508080611436906138cd565b9150506113df565b508486848d8d8860405160200161145a96959493929190613a0f565b6040516020818303038152906040528782516001611478919061395d565b81518110611488576114886136bb565b60200260200101819052508486856040516020016114a893929190613a72565b60405160208183030381529060405287825160026114c6919061395d565b815181106114d6576114d66136bb565b60200260200101819052505050505050505b949350505050565b6060808080846001600160401b0381111561150d5761150d6133da565b604051908082528060200260200182016040528015611536578160200160208202803683370190505b509350846001600160401b03811115611551576115516133da565b60405190808252806020026020018201604052801561157a578160200160208202803683370190505b509250846001600160401b03811115611595576115956133da565b6040519080825280602002602001820160405280156115c857816020015b60608152602001906001900390816115b35790505b509150846001600160401b038111156115e3576115e36133da565b60405190808252806020026020018201604052801561161657816020015b60608152602001906001900390816116015790505b50905060005b858110156116da57611647898989898581811061163b5761163b6136bb565b905060200201356120d8565b888581518110611659576116596136bb565b60200260200101888681518110611672576116726136bb565b6020026020010188878151811061168b5761168b6136bb565b602002602001018888815181106116a4576116a46136bb565b6020908102919091010193909352929091526001600160a01b0392831690915291169052806116d2816138cd565b91505061161c565b50945094509450949050565b7fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c8121905546001600160a01b031690565b6000806060611724868686612761565b9250925092505b93509350939050565b60608080836001600160401b03811115611750576117506133da565b604051908082528060200260200182016040528015611779578160200160208202803683370190505b509250836001600160401b03811115611794576117946133da565b6040519080825280602002602001820160405280156117bd578160200160208202803683370190505b509150836001600160401b038111156117d8576117d86133da565b60405190808252806020026020018201604052801561180b57816020015b60608152602001906001900390816117f65790505b50905060005b848110156118b25761183c8888888885818110611830576118306136bb565b90506020020135612761565b86848151811061184e5761184e6136bb565b60200260200101868581518110611867576118676136bb565b60200260200101868681518110611880576118806136bb565b60209081029190910101929092526001600160a01b0392831690915291169052806118aa816138cd565b915050611811565b509450945094915050565b606554604051634f558e7960e01b8152600481018390526000916001600160a01b031690634f558e7990602401602060405180830381865afa158015611907573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061192b9190613699565b156119415750506065546001600160a01b031690565b6066546001600160a01b03161580159061196d575060006119618361296c565b6001600160a01b031614155b156119835750506066546001600160a01b031690565b506000919050565b6060816001600160401b038111156119a5576119a56133da565b6040519080825280602002602001820160405280156119d857816020015b60608152602001906001900390816119c35790505b50905060005b82811015611a7857611a48308585848181106119fc576119fc6136bb565b9050602002810190611a0e91906136d1565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061299e92505050565b828281518110611a5a57611a5a6136bb565b60200260200101819052508080611a70906138cd565b9150506119de565b5092915050565b6000611a8a8261233a565b611a9657506000919050565b611a9f826123d2565b611ad45760665460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb906024016106ac565b60655460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb9060240161071f565b606080836001600160401b03811115611b2057611b206133da565b604051908082528060200260200182016040528015611b5357816020015b6060815260200190600190039081611b3e5790505b509150836001600160401b03811115611b6e57611b6e6133da565b604051908082528060200260200182016040528015611ba157816020015b6060815260200190600190039081611b8c5790505b509050611bad836123d2565b15611c345760655460405163170b5fa560e31b81526001600160a01b039091169063b85afd2890611be690889088908890600401613ab5565b600060405180830381865afa158015611c03573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611c2b9190810190613b72565b91509150611cd9565b6000611c3f84612617565b90506001600160a01b0381163b15158015611c5957508415155b15611cd75760405163170b5fa560e31b81526001600160a01b0382169063b85afd2890611c8e90899089908990600401613ab5565b600060405180830381865afa925050508015611ccc57506040513d6000823e601f3d908101601f19168201604052611cc99190810190613b72565b60015b15611cd75790935091505b505b935093915050565b6060611cf08686868686612a92565b979650505050505050565b606554604051632fafb1ad60e21b81526001600160a01b038381166004830152606092169063bebec6b4906024015b600060405180830381865afa158015611d47573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261063291908101906135b0565b6060611d7e8686868686612a92565b509695505050505050565b6060816001600160401b03811115611da357611da36133da565b604051908082528060200260200182016040528015611dcc578160200160208202803683370190505b50905060005b82811015611a7857611dfb848483818110611def57611def6136bb565b90506020020135612740565b828281518110611e0d57611e0d6136bb565b6001600160a01b039092166020928302919091019091015280611e2f816138cd565b915050611dd2565b6060611e428261233a565b611e5a57505060408051602081019091526000815290565b611e63826123d2565b611ed85760665460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401600060405180830381865afa158015611eb0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106ed91908101906135b0565b60655460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401611d2a565b60405162461bcd60e51b815260206004820152601f60248201527f50726f78795265616465723a20554e535550504f525445445f4d4554484f440060448201526000906064016107bc565b611f5c6126e1565b828114611fab5760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107bc565b60005b83811015610e4a57612006858583818110611fcb57611fcb6136bb565b9050602002810190611fdd91906136d1565b858585818110611fef57611fef6136bb565b905060200281019061200191906136d1565b612b3e565b80612010816138cd565b915050611fae565b6120206126e1565b6001600160a01b0381166107c55760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107bc565b61208d6126e1565b60005b83811015610e4a576120c68585838181106120ad576120ad6136bb565b90506020028101906120bf91906136d1565b8585612b3e565b806120d0816138cd565b915050612090565b600080606080856001600160401b038111156120f6576120f66133da565b60405190808252806020026020018201604052801561212957816020015b60608152602001906001900390816121145790505b509150856001600160401b03811115612144576121446133da565b60405190808252806020026020018201604052801561217757816020015b60608152602001906001900390816121625790505b509050612183856123d2565b156122845760655460405163b3f9e4cb60e01b8152600481018790526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa1580156121d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121f591906133bd565b935061220085612bad565b60655460405163170b5fa560e31b81529194506001600160a01b03169063b85afd2890612235908a908a908a90600401613ab5565b600060405180830381865afa158015612252573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261227a9190810190613b72565b9092509050610652565b61228d85612617565b93506122988561296c565b92506001600160a01b0384163b151580156122b4575060008251115b156106525760405163170b5fa560e31b81526001600160a01b0385169063b85afd28906122e9908a908a908a90600401613ab5565b600060405180830381865afa92505050801561232757506040513d6000823e601f3d908101601f191682016040526123249190810190613b72565b60015b1561065257909250905093509350935093565b6000612345826123d2565b6123645760006123548361296c565b6001600160a01b03161415610632565b606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e79906024015b602060405180830381865afa1580156123ae573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190613699565b6066546000906001600160a01b031615806106325750606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401612391565b60006124236116e6565b9050817fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c812190580546001600160a01b0319166001600160a01b03928316179055604051838216918316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b606082516001600160401b038111156124b0576124b06133da565b6040519080825280602002602001820160405280156124e357816020015b60608152602001906001900390816124ce5790505b5090506124ef826123d2565b1561257257606554604051630dec660d60e11b81526001600160a01b0390911690631bd8cc1a906125269086908690600401613bcb565b600060405180830381865afa158015612543573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261256b9190810190613bed565b9050610632565b600061257d83612617565b90506001600160a01b0381163b15158015612599575060008451115b15611a7857604051630dec660d60e11b81526001600160a01b03821690631bd8cc1a906125cc9087908790600401613bcb565b600060405180830381865afa92505050801561260a57506040513d6000823e601f3d908101601f191682016040526126079190810190613bed565b60015b15611a7857949350505050565b60665460405163b3f9e4cb60e01b8152600481018390526000916001600160a01b03169063b3f9e4cb906024015b602060405180830381865afa92505050801561267e575060408051601f3d908101601f1916820190925261267b918101906133bd565b60015b61063257506000919050565b600054610100900460ff166110a75760405162461bcd60e51b81526004016107bc90613c21565b600054610100900460ff166126d85760405162461bcd60e51b81526004016107bc90613c21565b6110a733612419565b336126ea6116e6565b6001600160a01b0316146110a75760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107bc565b600061274b826123d2565b612758576106ed8261296c565b61063282612bad565b6000806060846001600160401b0381111561277e5761277e6133da565b6040519080825280602002602001820160405280156127b157816020015b606081526020019060019003908161279c5790505b5090506127bd846123d2565b156128bb5760655460405163b3f9e4cb60e01b8152600481018690526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561280b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061282f91906133bd565b925061283a84612bad565b606554604051630dec660d60e11b81529193506001600160a01b031690631bd8cc1a9061286f90899089908990600401613c6c565b600060405180830381865afa15801561288c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526128b49190810190613bed565b905061172b565b6128c484612617565b92506128cf8461296c565b91506001600160a01b0383163b151580156128e957508415155b1561172b57604051630dec660d60e11b81526001600160a01b03841690631bd8cc1a9061291e90899089908990600401613c6c565b600060405180830381865afa92505050801561295c57506040513d6000823e601f3d908101601f191682016040526129599190810190613bed565b60015b1561172b57905093509350939050565b6066546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401612645565b60606001600160a01b0383163b612a065760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b60648201526084016107bc565b600080846001600160a01b031684604051612a2191906139f3565b600060405180830381855af49150503d8060008114612a5c576040519150601f19603f3d011682016040523d82523d6000602084013e612a61565b606091505b5091509150612a898282604051806060016040528060278152602001613c8160279139612bdf565b95945050505050565b6060806000612aa388888888611118565b90506000612ab18286612495565b905060005b8151811015612b31576000828281518110612ad357612ad36136bb565b6020026020010151511115612b1f57828181518110612af457612af46136bb565b60200260200101519350818181518110612b1057612b106136bb565b60200260200101519450612b31565b80612b29816138cd565b915050612ab6565b5050509550959350505050565b818160678686604051612b52929190613717565b90815260200160405180910390209182612b6d9291906137f8565b507f0bf4b04a0f6d7d0800284e1abb0f58f795c0a25b9088634b6ab847be51001dec8484604051612b9f9291906138e6565b60405180910390a150505050565b6065546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401612645565b60608315612bee5750816107e9565b825115612bfe5782518084602001fd5b8160405162461bcd60e51b81526004016107bc9190612f12565b50805460008255906000526020600020908101906107ce91905b80821115612c4f576000612c468282612c53565b50600101612c32565b5090565b508054612c5f90613770565b6000825580601f10612c6f575050565b601f0160209004906000526020600020908101906107ce91905b80821115612c4f5760008155600101612c89565b600060208284031215612caf57600080fd5b81356001600160e01b0319811681146107e957600080fd5b60008083601f840112612cd957600080fd5b5081356001600160401b03811115612cf057600080fd5b6020830191508360208260051b8501011115610f9057600080fd5b600080600060408486031215612d2057600080fd5b83356001600160401b03811115612d3657600080fd5b612d4286828701612cc7565b909790965060209590950135949350505050565b60005b83811015612d71578181015183820152602001612d59565b50506000910152565b60008151808452612d92816020860160208601612d56565b601f01601f19169290920160200192915050565b600082825180855260208086019550808260051b84010181860160005b84811015612df157601f19868403018952612ddf838351612d7a565b98840198925090830190600101612dc3565b5090979650505050505050565b6001600160a01b03858116825284166020820152608060408201819052600090612e2a90830185612da6565b8281036060840152611cf08185612da6565b600060208284031215612e4e57600080fd5b5035919050565b6001600160a01b03811681146107ce57600080fd5b600060208284031215612e7c57600080fd5b81356107e981612e55565b6020815260006107e96020830184612da6565b60008083601f840112612eac57600080fd5b5081356001600160401b03811115612ec357600080fd5b602083019150836020828501011115610f9057600080fd5b600080600060408486031215612ef057600080fd5b83356001600160401b03811115612f0657600080fd5b612d4286828701612e9a565b6020815260006107e96020830184612d7a565b60008060208385031215612f3857600080fd5b82356001600160401b03811115612f4e57600080fd5b612f5a85828601612cc7565b90969095509350505050565b60008060408385031215612f7957600080fd5b8235612f8481612e55565b946020939093013593505050565b60008060408385031215612fa557600080fd5b8235612fb081612e55565b91506020830135612fc081612e55565b809150509250929050565b60008060008060408587031215612fe157600080fd5b84356001600160401b0380821115612ff857600080fd5b61300488838901612cc7565b9096509450602087013591508082111561301d57600080fd5b5061302a87828801612cc7565b95989497509550505050565b6000806040838503121561304957600080fd5b50508035926020909101359150565b60408152600061306b6040830185612d7a565b8281036020840152612a898185612d7a565b6000806000806040858703121561309357600080fd5b84356001600160401b03808211156130aa57600080fd5b6130b688838901612e9a565b909650945060208701359150808211156130cf57600080fd5b5061302a87828801612e9a565b600081518084526020808501945080840160005b838110156131155781516001600160a01b0316875295820195908201906001016130f0565b509495945050505050565b60008282518085526020808601955060058183821b8501018287016000805b868110156131ac57601f1988850381018c5283518051808752908801908887019080891b88018a01865b8281101561319557858a8303018452613183828651612d7a565b948c0194938c01939150600101613169565b509e8a019e9750505093870193505060010161313f565b50919998505050505050505050565b6080815260006131ce60808301876130dc565b82810360208401526131e081876130dc565b905082810360408401526131f48186613120565b90508281036060840152611cf08185613120565b6001600160a01b03848116825283166020820152606060408201819052600090612a8990830184612da6565b60608152600061324760608301866130dc565b828103602084015261325981866130dc565b9050828103604084015261326d8185613120565b9695505050505050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156132cc57603f198886030184526132ba858351612d7a565b9450928501929085019060010161329e565b5092979650505050505050565b6040815260006132ec6040830185612da6565b8281036020840152612a898185612da6565b60008060008060006060868803121561331657600080fd5b85356001600160401b038082111561332d57600080fd5b61333989838a01612e9a565b9097509550602088013591508082111561335257600080fd5b5061335f88828901612e9a565b96999598509660400135949350505050565b6020815260006107e960208301846130dc565b6000806000806040858703121561339a57600080fd5b84356001600160401b03808211156133b157600080fd5b6130b688838901612cc7565b6000602082840312156133cf57600080fd5b81516107e981612e55565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715613418576134186133da565b604052919050565b60006001600160401b03821115613439576134396133da565b5060051b60200190565b60006001600160401b0382111561345c5761345c6133da565b50601f01601f191660200190565b600061347d61347884613420565b6133f0565b80848252602080830192508560051b85013681111561349b57600080fd5b855b818110156135125780356001600160401b038111156134bc5760008081fd5b870136601f8201126134ce5760008081fd5b80356134dc61347882613443565b81815236868385010111156134f15760008081fd5b8186840187830137600091810186019190915286525093820193820161349d565b50919695505050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60408152600061355b60408301858761351e565b9050826020830152949350505050565b600082601f83011261357c57600080fd5b815161358a61347882613443565b81815284602083860101111561359f57600080fd5b6114e8826020830160208701612d56565b6000602082840312156135c257600080fd5b81516001600160401b038111156135d857600080fd5b6114e88482850161356b565b60008383855260208086019550808560051b8301018460005b87811015612df157848303601f19018952813536889003601e1901811261362357600080fd5b870184810190356001600160401b0381111561363e57600080fd5b80360382131561364d57600080fd5b61365885828461351e565b9a86019a94505050908301906001016135fd565b6020815260006107e66020830184866135e4565b60006020828403121561369257600080fd5b5051919050565b6000602082840312156136ab57600080fd5b815180151581146107e957600080fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e198436030181126136e857600080fd5b8301803591506001600160401b0382111561370257600080fd5b602001915036819003821315610f9057600080fd5b8183823760009101908152919050565b6000808335601e1984360301811261373e57600080fd5b8301803591506001600160401b0382111561375857600080fd5b6020019150600581901b3603821315610f9057600080fd5b600181811c9082168061378457607f821691505b6020821081036137a457634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115610bf057600081815260208120601f850160051c810160208610156137d15750805b601f850160051c820191505b818110156137f0578281556001016137dd565b505050505050565b6001600160401b0383111561380f5761380f6133da565b6138238361381d8354613770565b836137aa565b6000601f841160018114613857576000851561383f5750838201355b600019600387901b1c1916600186901b178355610e4a565b600083815260209020601f19861690835b828110156138885786850135825560209485019460019092019101613868565b50868210156138a55760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b634e487b7160e01b600052601160045260246000fd5b6000600182016138df576138df6138b7565b5060010190565b6020815260006107e660208301848661351e565b6000806040838503121561390d57600080fd5b82516001600160401b038082111561392457600080fd5b6139308683870161356b565b9350602085015191508082111561394657600080fd5b506139538582860161356b565b9150509250929050565b80820180821115610632576106326138b7565b60008a51613982818460208f01612d56565b8a5190830190613996818360208f01612d56565b8a519101906139a9818360208e01612d56565b0187898237600090880190815286516139c6818360208b01612d56565b0184868237600090850190815283516139e3818360208801612d56565b019b9a5050505050505050505050565b60008251613a05818460208701612d56565b9190910192915050565b60008751613a21818460208c01612d56565b875190830190613a35818360208c01612d56565b8751910190613a48818360208b01612d56565b018486823760009085019081528351613a65818360208801612d56565b0198975050505050505050565b60008451613a84818460208901612d56565b845190830190613a98818360208901612d56565b8451910190613aab818360208801612d56565b0195945050505050565b6040808252810183905260006001600160fb1b03841115613ad557600080fd5b8360051b808660608501376020830193909352500160600192915050565b600082601f830112613b0457600080fd5b81516020613b1461347883613420565b82815260059290921b84018101918181019086841115613b3357600080fd5b8286015b84811015611d7e5780516001600160401b03811115613b565760008081fd5b613b648986838b010161356b565b845250918301918301613b37565b60008060408385031215613b8557600080fd5b82516001600160401b0380821115613b9c57600080fd5b613ba886838701613af3565b93506020850151915080821115613bbe57600080fd5b5061395385828601613af3565b604081526000613bde6040830185612da6565b90508260208301529392505050565b600060208284031215613bff57600080fd5b81516001600160401b03811115613c1557600080fd5b6114e884828501613af3565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60408152600061355b6040830185876135e456fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a","storage":{}},"0xc2110388dd54228ae0a834119457ede938bf0b57":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061021e5760003560e01c80638da5cb5b11610123578063acf1a841116100ab578063d547741f1161006f578063d547741f14610682578063f14fcbc8146106a2578063f23a6e61146106c2578063f2fde38b146106e2578063ffa1ad741461070257600080fd5b8063acf1a841146105e0578063bc197c8114610600578063c0c53b8b14610620578063cf01585314610640578063d53913931461066057600080fd5b8063a0e3aef1116100f2578063a0e3aef114610534578063a217fddf14610554578063a3f4df7e14610569578063a4247400146105a0578063aa271e1a146105c057600080fd5b80638da5cb5b146104c157806391d14854146104df578063983b2d56146104ff578063986502751461051f57600080fd5b80635fc1964f116101a65780636ccbae5f116101755780636ccbae5f14610439578063715018a61461045957806371e2a6571461046e57806381c81d351461048e57806383e7f6ff146104a157600080fd5b80635fc1964f146103ae578063634486da146103ce5780636352211e146103e15780636a8be89e1461041957600080fd5b80632f2ff15d116101ed5780632f2ff15d146103035780633092afd51461032557806336568abe14610345578063423f6cef14610365578063572b6c051461038557600080fd5b806301ffc9a71461022a578063150b7a021461025f5780631bf7e13e14610298578063248a9ca3146102c557600080fd5b3661022557005b600080fd5b34801561023657600080fd5b5061024a6102453660046125f2565b610733565b60405190151581526020015b60405180910390f35b34801561026b57600080fd5b5061027f61027a366004612672565b610779565b6040516001600160e01b03199091168152602001610256565b3480156102a457600080fd5b506102b86102b33660046126e4565b6108cb565b60405161025691906127a4565b3480156102d157600080fd5b506102f56102e03660046127b7565b600090815260fb602052604090206001015490565b604051908152602001610256565b34801561030f57600080fd5b5061032361031e3660046127d0565b610997565b005b34801561033157600080fd5b50610323610340366004612800565b6109c1565b34801561035157600080fd5b506103236103603660046127d0565b6109d5565b34801561037157600080fd5b5061032361038036600461281d565b610a68565b34801561039157600080fd5b5061024a6103a0366004612800565b6001600160a01b0316301490565b3480156103ba57600080fd5b506103236103c936600461288f565b610bd9565b6103236103dc366004612800565b610c21565b3480156103ed57600080fd5b506104016103fc3660046127b7565b610ce4565b6040516001600160a01b039091168152602001610256565b34801561042557600080fd5b50610323610434366004612800565b610cef565b34801561044557600080fd5b506102f56104543660046127b7565b610d38565b34801561046557600080fd5b50610323610d7e565b34801561047a57600080fd5b5061032361048936600461288f565b610d92565b61032361049c366004612800565b610dda565b3480156104ad57600080fd5b506102f56104bc366004612934565b610e57565b3480156104cd57600080fd5b506097546001600160a01b0316610401565b3480156104eb57600080fd5b5061024a6104fa3660046127d0565b610efa565b34801561050b57600080fd5b5061032361051a366004612800565b610f25565b34801561052b57600080fd5b50610323610f36565b34801561054057600080fd5b506102f561054f366004612a5c565b610f50565b34801561056057600080fd5b506102f5600081565b34801561057557600080fd5b506102b86040518060400160405280600b81526020016a454e5320437573746f647960a81b81525081565b3480156105ac57600080fd5b5061024a6105bb3660046126e4565b610ffc565b3480156105cc57600080fd5b5061024a6105db366004612800565b61104f565b3480156105ec57600080fd5b506103236105fb366004612934565b611069565b34801561060c57600080fd5b5061027f61061b366004612b35565b611222565b34801561062c57600080fd5b5061032361063b366004612bf3565b6112db565b34801561064c57600080fd5b5061032361065b366004612c3e565b611485565b34801561066c57600080fd5b506102f56000805160206133f583398151915281565b34801561068e57600080fd5b5061032361069d3660046127d0565b611592565b3480156106ae57600080fd5b506103236106bd3660046127b7565b6115b7565b3480156106ce57600080fd5b5061027f6106dd366004612d20565b61162b565b3480156106ee57600080fd5b506103236106fd366004612800565b6116bc565b34801561070e57600080fd5b506102b860405180604001604052806005815260200164302e312e3360d81b81525081565b60006001600160e01b03198216630a85bd0160e11b148061076457506001600160e01b03198216630271189760e51b145b806107735750610773826116d8565b92915050565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004546000906001600160a01b0316806107b061170d565b6001600160a01b0316036108a957600080806107ce86880188612d9b565b9250925092506107dd8361171c565b6001600160a01b03841663b88d4fde30600080516020613415833981519152546040516001600160a01b03909116908c9061082390879030906000908b90602001612dfc565b6040516020818303038152906040526040518563ffffffff1660e01b81526004016108519493929190612e3c565b600060405180830381600087803b15801561086b57600080fd5b505af115801561087f573d6000803e3d6000fd5b5050505061089561088f8261174e565b846117d3565b50630a85bd0160e11b93506108c292505050565b6040516344e7d94960e01b815260040160405180910390fd5b95945050505050565b606060005a90506108dd858585610ffc565b6108fa57604051638baa579f60e01b815260040160405180910390fd5b61098c61090a6020870187612800565b3060408801358461091e60608b018b612e6f565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061185e92505050565b9150505b9392505050565b600082815260fb60205260409020600101546109b28161193f565b6109bc8383611950565b505050565b6109c96119d7565b6109d281611a50565b50565b6109dd61170d565b6001600160a01b0316816001600160a01b031614610a5a5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b610a648282611a68565b5050565b80610a7161170d565b6001600160a01b0316610a8382611aed565b6001600160a01b031614610ac55780610a9a61170d565b604051637ea58b1160e01b815260048101929092526001600160a01b03166024820152604401610a51565b610ace82611c03565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052600090610b22906060015b6040516020818303038152906040528051906020012090565b80546001600160a01b0319166001600160a01b0392909216919091179055600060008051602061341583398151915254604051637921219560e11b81523060048201526001600160a01b038681166024830152604482018690526001606483015260a06084830152600060a48301529091169150819063f242432a9060c401600060405180830381600087803b158015610bbb57600080fd5b505af1158015610bcf573d6000803e3d6000fd5b5050505050505050565b610be16119d7565b60005b8151811015610a6457610c0f828281518110610c0257610c02612eb5565b6020026020010151611a50565b80610c1981612ee1565b915050610be4565b610c2c6105db61170d565b610c485760405162461bcd60e51b8152600401610a5190612efa565b6001600160a01b038116610c9e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a51565b610ca781611c1c565b610caf610f36565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610a64573d6000803e3d6000fd5b600061077382611aed565b610cf76119d7565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c500480546001600160a01b0319166001600160a01b0392909216919091179055565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a838156020820152908101829052600090610d7790606001610b09565b5492915050565b610d866119d7565b610d906000611c34565b565b610d9a6119d7565b60005b8151811015610a6457610dc8828281518110610dbb57610dbb612eb5565b6020026020010151611c1c565b80610dd281612ee1565b915050610d9d565b610de56105db61170d565b610e015760405162461bcd60e51b8152600401610a5190612efa565b6001600160a01b038116610ca75760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a51565b6000805160206133d5833981519152546040516383e7f6ff60e01b81526000916001600160a01b031690829082906383e7f6ff90610e9d90899089908990600401612f58565b6040805180830381865afa158015610eb9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610edd9190612f7c565b60208101518151919250610ef091612fca565b9695505050505050565b600091825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610f2d6119d7565b6109d281611c1c565b610d906000805160206133f583398151915261036061170d565b6000805160206133d5833981519152546000906001600160a01b0316806365a69dcf8d85610f7e5730610f80565b8d5b8d8d8d8d8d8d8d6040518a63ffffffff1660e01b8152600401610fab9998979695949392919061306e565b602060405180830381865afa158015610fc8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fec91906130de565b9c9b505050505050505050505050565b600061104761100a856130f7565b3085858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611c8692505050565b949350505050565b60006107736000805160206133f583398151915283610efa565b6110746105db61170d565b6110905760405162461bcd60e51b8152600401610a5190612efa565b6002603354036110e25760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a51565b60026033556000805160206133d5833981519152546040516383e7f6ff60e01b81526001600160a01b039091169060009082906383e7f6ff9061112d90889088908890600401612f58565b6040805180830381865afa158015611149573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061116d9190612f7c565b6020810151815191925061118091612fca565b4710156111a05760405163050205f960e01b815260040160405180910390fd5b816001600160a01b031663acf1a841826020015183600001516111c39190612fca565b8787876040518563ffffffff1660e01b81526004016111e493929190612f58565b6000604051808303818588803b1580156111fd57600080fd5b505af1158015611211573d6000803e3d6000fd5b505060016033555050505050505050565b6000600080516020613415833981519152546001600160a01b031661124561170d565b6001600160a01b03161461126c576040516344e7d94960e01b815260040160405180910390fd5b600061127a83850185612800565b90506112858161171c565b60005b878110156112c4576112b28989838181106112a5576112a5612eb5565b90506020020135836117d3565b806112bc81612ee1565b915050611288565b5063bc197c8160e01b9a9950505050505050505050565b600054610100900460ff16158080156112fb5750600054600160ff909116105b806113155750303b158015611315575060005460ff166001145b6113785760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610a51565b6000805460ff19166001179055801561139b576000805461ff0019166101001790555b6000805160206133d583398151915280546001600160a01b038087166001600160a01b03199283161790925560008051602061341583398151915280548684169083161790557ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004805492851692909116919091179055611419611dc5565b611421611df3565b611429611df3565b611431611e1a565b611439611e51565b801561147f576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6114906105db61170d565b6114ac5760405162461bcd60e51b8152600401610a5190612efa565b6002603354036114fe5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a51565b600260338190555060006115478c8c8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061174e92505050565b905061155281611c03565b6115708c8c846115625730611564565b8c5b8c8c8c8c8c8c8c611e8a565b8161157f5761157f818b6117d3565b5050600160335550505050505050505050565b600082815260fb60205260409020600101546115ad8161193f565b6109bc8383611a68565b60006000805160206133d583398151915254604051631e29f97960e31b8152600481018490526001600160a01b039091169150819063f14fcbc890602401600060405180830381600087803b15801561160f57600080fd5b505af1158015611623573d6000803e3d6000fd5b505050505050565b6000600080516020613415833981519152546001600160a01b031661164e61170d565b6001600160a01b031614611675576040516344e7d94960e01b815260040160405180910390fd5b6001600160a01b038616156116a957600061169283850185612800565b905061169d8161171c565b6116a786826117d3565b505b5063f23a6e6160e01b9695505050505050565b6116c46119d7565b6116cd81611fd5565b6109d260008261204b565b60006001600160e01b03198216637965db0b60e01b148061077357506301ffc9a760e01b6001600160e01b0319831614610773565b6000611717612055565b905090565b6001600160a01b0381166109d25760405163b20f76e360e01b81526001600160a01b0382166004820152602401610a51565b60007f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae60001b826040516020016117859190613195565b604051602081830303815290604052805190602001206040516020016117b5929190918252602082015260400190565b60408051601f19818403018152919052805160209091012092915050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052819061181190606001610b09565b80546001600160a01b0319166001600160a01b039283161790556040519082169083907f45aa97e368889fb3527c1db60c59c2ae91e82f21778613449e46d4208c1c4b1290600090a35050565b606061186985612073565b600080876001600160a01b0316866118838b8a89896120d9565b6040516118909190613195565b60006040518083038160008787f1925050503d80600081146118ce576040519150601f19603f3d011682016040523d82523d6000602084013e6118d3565b606091505b5090925090506118e4603f876131b1565b5a116118f2576118f26131d3565b61193282826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c4544000000000000815250612109565b9998505050505050505050565b6109d28161194b61170d565b612142565b61195a8282610efa565b610a6457600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff1916600117905561199361170d565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6119df61170d565b6001600160a01b03166119fa6097546001600160a01b031690565b6001600160a01b031614610d905760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a51565b6109d26000805160206133f583398151915282611592565b611a728282610efa565b15610a6457600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff19169055611aa961170d565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101829052600090611b2c90606001610b09565b546001600160a01b0316905080611b595760405163124bad6360e31b815260048101839052602401610a51565b30600080516020613415833981519152546040516331a9108f60e11b8152600481018590526001600160a01b0390911690636352211e90602401602060405180830381865afa158015611bb0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bd491906131e9565b6001600160a01b031614611bfe576040516303b673fd60e21b815260048101839052602401610a51565b919050565b303303611c13576109d2816121a6565b6109d281612073565b6109d26000805160206133f58339815191528261204b565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015611ccd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cf191906130de565b90506000611d9f866060015180519060200120868860200151604051602001611d3f9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b9050818660200151148015610ef057508551610ef0906001600160a01b031682866121d0565b600054610100900460ff16611dec5760405162461bcd60e51b8152600401610a5190613206565b6001603355565b600054610100900460ff16610d905760405162461bcd60e51b8152600401610a5190613206565b600054610100900460ff16611e415760405162461bcd60e51b8152600401610a5190613206565b610d90611e4c61170d565b611c34565b600054610100900460ff16611e785760405162461bcd60e51b8152600401610a5190613206565b610d906000611e8561170d565b61204b565b6000805160206133d5833981519152546040516383e7f6ff60e01b81526001600160a01b039091169060009082906383e7f6ff90611ed0908f908f908e90600401612f58565b6040805180830381865afa158015611eec573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f109190612f7c565b60208101518151919250611f2391612fca565b471015611f435760405163050205f960e01b815260040160405180910390fd5b816001600160a01b03166374694a2b82602001518360000151611f669190612fca565b8e8e8e8e8e8e8e8e8e8e6040518c63ffffffff1660e01b8152600401611f959a99989796959493929190613251565b6000604051808303818588803b158015611fae57600080fd5b505af1158015611fc2573d6000803e3d6000fd5b5050505050505050505050505050505050565b611fdd6119d7565b6001600160a01b0381166120425760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610a51565b6109d281611c34565b610a648282611950565b600030330361206b575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290526000906060016040516020818303038152906040528051906020012090506120c88190565b546120d4906001612fca565b905550565b60608285856040516020016120f0939291906132c3565b6040516020818303038152906040529050949350505050565b60608315612118575081610990565b8251156121285782518084602001fd5b8160405162461bcd60e51b8152600401610a5191906127a4565b61214c8282610efa565b610a6457612164816001600160a01b03166014612312565b61216f836020612312565b604051602001612180929190613302565b60408051601f198184030181529082905262461bcd60e51b8252610a51916004016127a4565b6121ae6124ad565b81146109d257604051635637b6af60e11b815260048101829052602401610a51565b60008060006121df85856124c0565b909250905060008160048111156121f8576121f8613377565b1480156122165750856001600160a01b0316826001600160a01b0316145b1561222657600192505050610990565b600080876001600160a01b0316631626ba7e60e01b888860405160240161224e92919061338d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161228c9190613195565b600060405180830381855afa9150503d80600081146122c7576040519150601f19603f3d011682016040523d82523d6000602084013e6122cc565b606091505b50915091508180156122df575080516020145b801561230657508051630b135d3f60e11b9061230490830160209081019084016130de565b145b98975050505050505050565b606060006123218360026133a6565b61232c906002612fca565b6001600160401b0381111561234357612343612849565b6040519080825280601f01601f19166020018201604052801561236d576020820181803683370190505b509050600360fc1b8160008151811061238857612388612eb5565b60200101906001600160f81b031916908160001a905350600f60fb1b816001815181106123b7576123b7612eb5565b60200101906001600160f81b031916908160001a90535060006123db8460026133a6565b6123e6906001612fca565b90505b600181111561245e576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061241a5761241a612eb5565b1a60f81b82828151811061243057612430612eb5565b60200101906001600160f81b031916908160001a90535060049490941c93612457816133bd565b90506123e9565b5083156109905760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610a51565b60003033036120705750601f1936013590565b60008082516041036124f65760208301516040840151606085015160001a6124ea87828585612505565b945094505050506124fe565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561253c57506000905060036125e9565b8460ff16601b1415801561255457508460ff16601c14155b1561256557506000905060046125e9565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156125b9573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166125e2576000600192509250506125e9565b9150600090505b94509492505050565b60006020828403121561260457600080fd5b81356001600160e01b03198116811461099057600080fd5b6001600160a01b03811681146109d257600080fd5b60008083601f84011261264357600080fd5b5081356001600160401b0381111561265a57600080fd5b6020830191508360208285010111156124fe57600080fd5b60008060008060006080868803121561268a57600080fd5b85356126958161261c565b945060208601356126a58161261c565b93506040860135925060608601356001600160401b038111156126c757600080fd5b6126d388828901612631565b969995985093965092949392505050565b6000806000604084860312156126f957600080fd5b83356001600160401b038082111561271057600080fd5b908501906080828803121561272457600080fd5b9093506020850135908082111561273a57600080fd5b5061274786828701612631565b9497909650939450505050565b60005b8381101561276f578181015183820152602001612757565b50506000910152565b60008151808452612790816020860160208601612754565b601f01601f19169290920160200192915050565b6020815260006109906020830184612778565b6000602082840312156127c957600080fd5b5035919050565b600080604083850312156127e357600080fd5b8235915060208301356127f58161261c565b809150509250929050565b60006020828403121561281257600080fd5b81356109908161261c565b6000806040838503121561283057600080fd5b823561283b8161261c565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561288757612887612849565b604052919050565b600060208083850312156128a257600080fd5b82356001600160401b03808211156128b957600080fd5b818501915085601f8301126128cd57600080fd5b8135818111156128df576128df612849565b8060051b91506128f084830161285f565b818152918301840191848101908884111561290a57600080fd5b938501935b8385101561230657843592506129248361261c565b828252938501939085019061290f565b60008060006040848603121561294957600080fd5b83356001600160401b0381111561295f57600080fd5b61296b86828701612631565b909790965060209590950135949350505050565b60006001600160401b0383111561299857612998612849565b6129ab601f8401601f191660200161285f565b90508281528383830111156129bf57600080fd5b828260208301376000602084830101529392505050565b600082601f8301126129e757600080fd5b6109908383356020850161297f565b60008083601f840112612a0857600080fd5b5081356001600160401b03811115612a1f57600080fd5b6020830191508360208260051b85010111156124fe57600080fd5b80358015158114611bfe57600080fd5b803561ffff81168114611bfe57600080fd5b6000806000806000806000806000806101208b8d031215612a7c57600080fd5b8a356001600160401b0380821115612a9357600080fd5b612a9f8e838f016129d6565b9b5060208d01359150612ab18261261c565b90995060408c0135985060608c0135975060808c013590612ad18261261c565b90965060a08c01359080821115612ae757600080fd5b50612af48d828e016129f6565b9096509450612b07905060c08c01612a3a565b9250612b1560e08c01612a4a565b9150612b246101008c01612a3a565b90509295989b9194979a5092959850565b60008060008060008060008060a0898b031215612b5157600080fd5b8835612b5c8161261c565b97506020890135612b6c8161261c565b965060408901356001600160401b0380821115612b8857600080fd5b612b948c838d016129f6565b909850965060608b0135915080821115612bad57600080fd5b612bb98c838d016129f6565b909650945060808b0135915080821115612bd257600080fd5b50612bdf8b828c01612631565b999c989b5096995094979396929594505050565b600080600060608486031215612c0857600080fd5b8335612c138161261c565b92506020840135612c238161261c565b91506040840135612c338161261c565b809150509250925092565b60008060008060008060008060008060006101208c8e031215612c6057600080fd5b6001600160401b03808d351115612c7657600080fd5b612c838e8e358f01612631565b909c509a50612c9560208e013561261c565b60208d0135995060408d0135985060608d01359750612cb760808e013561261c565b60808d013596508060a08e01351115612ccf57600080fd5b50612ce08d60a08e01358e016129f6565b9095509350612cf160c08d01612a3a565b9250612cff60e08d01612a4a565b9150612d0e6101008d01612a3a565b90509295989b509295989b9093969950565b60008060008060008060a08789031215612d3957600080fd5b8635612d448161261c565b95506020870135612d548161261c565b9450604087013593506060870135925060808701356001600160401b03811115612d7d57600080fd5b612d8989828a01612631565b979a9699509497509295939492505050565b600080600060608486031215612db057600080fd5b8335612dbb8161261c565b92506020840135612dcb8161261c565b915060408401356001600160401b03811115612de657600080fd5b612df2868287016129d6565b9150509250925092565b608081526000612e0f6080830187612778565b6001600160a01b03958616602084015261ffff949094166040830152509216606090920191909152919050565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090610ef090830184612778565b6000808335601e19843603018112612e8657600080fd5b8301803591506001600160401b03821115612ea057600080fd5b6020019150368190038213156124fe57600080fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201612ef357612ef3612ecb565b5060010190565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b604081526000612f6c604083018587612f2f565b9050826020830152949350505050565b600060408284031215612f8e57600080fd5b604051604081018181106001600160401b0382111715612fb057612fb0612849565b604052825181526020928301519281019290925250919050565b8082018082111561077357610773612ecb565b81835260006020808501808196508560051b810191508460005b878110156130615782840389528135601e1988360301811261301857600080fd5b870185810190356001600160401b0381111561303357600080fd5b80360382131561304257600080fd5b61304d868284612f2f565b9a87019a9550505090840190600101612ff7565b5091979650505050505050565b60006101008083526130828184018d612778565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a085015290506130bc818789612fdd565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b6000602082840312156130f057600080fd5b5051919050565b60006080823603121561310957600080fd5b604051608081016001600160401b03828210818311171561312c5761312c612849565b816040528435915061313d8261261c565b8183526020850135602084015260408501356040840152606085013591508082111561316857600080fd5b50830136601f82011261317a57600080fd5b6131893682356020840161297f565b60608301525092915050565b600082516131a7818460208701612754565b9190910192915050565b6000826131ce57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b6000602082840312156131fb57600080fd5b81516109908161261c565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60006101008083526132668184018d8f612f2f565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a085015290506132a0818789612fdd565b94151560c0840152505061ffff9190911660e09091015298975050505050505050565b600084516132d5818460208901612754565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081526000835161333a816017850160208801612754565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835161336b816028840160208801612754565b01602801949350505050565b634e487b7160e01b600052602160045260246000fd5b8281526040602082015260006110476040830184612778565b808202811582820484141761077357610773612ecb565b6000816133cc576133cc612ecb565b50600019019056fe412386de53449251cbf7ce1f4c6a038bf9c0746e62d331b08ef0c3fa7d0ab6729f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a660793a5062d506d35cc8f1beda67ee5028c16bfcd9c923d5bfc439c04bd929b1a164736f6c6343000811000a","storage":{"0x0":"0xff"}},"0xc58206842e4030a3b2cabc78780ae7635173c533":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106102325760003560e01c80637c69eae211610130578063b5466669116100b8578063d284d97a1161007c578063d284d97a14610d4e578063d8d3cc6e14610dbc578063e67ca8a314610e3f578063e985e9c514610e5c578063ebf0c71714610e8a57610232565b8063b5466669146109ce578063b88d4fde14610a51578063c29b52f914610b15578063c87b56dd14610c5e578063ce9fb82b14610c7b57610232565b8063a22cb465116100ff578063a22cb4651461090b578063a7fc7a0714610939578063ab3b87fe1461095f578063b3f9e4cb1461098b578063b429afeb146109a857610232565b80637c69eae21461076457806395d89b41146107e75780639d743989146107ef5780639e5be9a51461087d57610232565b806342842e0e116101be5780635cbe1112116101825780635cbe11121461061d5780636352211e1461069257806366ac3b68146106af57806368b62d32146106b757806370a082311461073e57610232565b806342842e0e146104ed57806342966c6814610523578063430c208114610540578063538361a71461056c57806357aac5741461058f57610232565b8063081812fc11610205578063081812fc146103fa578063095ea7b3146104335780632392c1891461045f57806323b872dd1461048b5780632525d06a146104c157610232565b806301ffc9a71461023757806302759c37146102725780630467e014146102aa57806306fdde031461037d575b600080fd5b61025e6004803603602081101561024d57600080fd5b50356001600160e01b031916610e92565b604080519115158252519081900360200190f35b6102a86004803603606081101561028857600080fd5b506001600160a01b03813581169160208101359091169060400135610eb1565b005b6102a8600480360360808110156102c057600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156102ef57600080fd5b82018360208201111561030157600080fd5b803590602001918460018302840111600160201b8311171561032257600080fd5b919390929091602081019035600160201b81111561033f57600080fd5b82018360208201111561035157600080fd5b803590602001918460018302840111600160201b8311171561037257600080fd5b509092509050610ed3565b610385610f62565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103bf5781810151838201526020016103a7565b50505050905090810190601f1680156103ec5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6104176004803603602081101561041057600080fd5b5035610f84565b604080516001600160a01b039092168252519081900360200190f35b6102a86004803603604081101561044957600080fd5b506001600160a01b038135169060200135610fe6565b6102a86004803603604081101561047557600080fd5b506001600160a01b0381351690602001356110f7565b6102a8600480360360608110156104a157600080fd5b506001600160a01b03813581169160208101359091169060400135611115565b6102a8600480360360408110156104d757600080fd5b506001600160a01b03813516906020013561115a565b6102a86004803603606081101561050357600080fd5b506001600160a01b0381358116916020810135909116906040013561117a565b6102a86004803603602081101561053957600080fd5b5035611195565b61025e6004803603604081101561055657600080fd5b506001600160a01b0381351690602001356111e6565b6102a86004803603604081101561058257600080fd5b50803590602001356111f9565b6102a8600480360360808110156105a557600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156105df57600080fd5b8201836020820111156105f157600080fd5b803590602001918460018302840111600160201b8311171561061257600080fd5b50909250905061124f565b6102a86004803603604081101561063357600080fd5b81359190810190604081016020820135600160201b81111561065457600080fd5b82018360208201111561066657600080fd5b803590602001918460018302840111600160201b8311171561068757600080fd5b5090925090506112be565b610417600480360360208110156106a857600080fd5b5035611320565b6102a861137a565b61072c600480360360408110156106cd57600080fd5b81359190810190604081016020820135600160201b8111156106ee57600080fd5b82018360208201111561070057600080fd5b803590602001918460018302840111600160201b8311171561072157600080fd5b509092509050611385565b60408051918252519081900360200190f35b61072c6004803603602081101561075457600080fd5b50356001600160a01b03166113cf565b6102a86004803603606081101561077a57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156107a957600080fd5b8201836020820111156107bb57600080fd5b803590602001918460018302840111600160201b831117156107dc57600080fd5b509092509050611437565b61038561149a565b6102a86004803603608081101561080557600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561083f57600080fd5b82018360208201111561085157600080fd5b803590602001918460018302840111600160201b8311171561087257600080fd5b5090925090506114b6565b6102a86004803603608081101561089357600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156108cd57600080fd5b8201836020820111156108df57600080fd5b803590602001918460018302840111600160201b8311171561090057600080fd5b509092509050611506565b6102a86004803603604081101561092157600080fd5b506001600160a01b0381351690602001351515611564565b6102a86004803603602081101561094f57600080fd5b50356001600160a01b0316611630565b6102a86004803603604081101561097557600080fd5b506001600160a01b03813516906020013561164b565b610417600480360360208110156109a157600080fd5b5035611672565b61025e600480360360208110156109be57600080fd5b50356001600160a01b0316611694565b6102a8600480360360608110156109e457600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610a1357600080fd5b820183602082011115610a2557600080fd5b803590602001918460018302840111600160201b83111715610a4657600080fd5b5090925090506116a7565b6102a860048036036080811015610a6757600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b811115610aa157600080fd5b820183602082011115610ab357600080fd5b803590602001918460018302840111600160201b83111715610ad457600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506116fa945050505050565b6102a8600480360360a0811015610b2b57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b811115610b6557600080fd5b820183602082011115610b7757600080fd5b803590602001918460018302840111600160201b83111715610b9857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b811115610bea57600080fd5b820183602082011115610bfc57600080fd5b803590602001918460018302840111600160201b83111715610c1d57600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061174c945050505050565b61038560048036036020811015610c7457600080fd5b5035611797565b6102a860048036036080811015610c9157600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610cc057600080fd5b820183602082011115610cd257600080fd5b803590602001918460018302840111600160201b83111715610cf357600080fd5b919390929091602081019035600160201b811115610d1057600080fd5b820183602082011115610d2257600080fd5b803590602001918460018302840111600160201b83111715610d4357600080fd5b509092509050611892565b6102a860048036036020811015610d6457600080fd5b810190602081018135600160201b811115610d7e57600080fd5b820183602082011115610d9057600080fd5b803590602001918460018302840111600160201b83111715610db157600080fd5b50909250905061191b565b6102a860048036036060811015610dd257600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610e0157600080fd5b820183602082011115610e1357600080fd5b803590602001918460018302840111600160201b83111715610e3457600080fd5b50909250905061199e565b6102a860048036036020811015610e5557600080fd5b50356119f3565b61025e60048036036040811015610e7257600080fd5b506001600160a01b0381358116916020013516611a05565b61072c611a33565b6001600160e01b03191660009081526020819052604090205460ff1690565b610eba33611694565b610ec357600080fd5b610ece838383611a57565b505050565b610edc33611694565b610ee557600080fd5b610f5a868686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8a018190048102820181019092528881529250889150879081908401838280828437600092019190915250611a9f92505050565b505050505050565b6040805180820190915260078152662e63727970746f60c81b60208201525b90565b6000610f8f82611ac9565b610fca5760405162461bcd60e51b815260040180806020018281038252602c815260200180612848602c913960400191505060405180910390fd5b506000908152600360205260409020546001600160a01b031690565b6000610ff182611320565b9050806001600160a01b0316836001600160a01b031614156110445760405162461bcd60e51b81526004018080602001828103825260218152602001806128bf6021913960400191505060405180910390fd5b336001600160a01b038216148061106057506110608133611a05565b61109b5760405162461bcd60e51b815260040180806020018281038252603881526020018061279c6038913960400191505060405180910390fd5b60008281526003602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b806111023382611ae6565b61110b57600080fd5b610ece8383611b82565b61111f3382611ae6565b610ec35760405162461bcd60e51b81526004018080602001828103825260318152602001806128e06031913960400191505060405180910390fd5b61116333611694565b61116c57600080fd5b6111768282611b82565b5050565b610ece838383604051806020016040528060008152506116fa565b61119f3382611ae6565b6111da5760405162461bcd60e51b81526004018080602001828103825260308152602001806129366030913960400191505060405180910390fd5b6111e381611bf8565b50565b60006111f28383611ae6565b9392505050565b6000828152600860205260409020546001600160a01b0316331461121c57600080fd5b6040518290829033907ff10fc780c78f994a214c79a2ae8d8b7bfe7cc3f0f935a8f05a29525e71d7f12790600090a45050565b61125833611694565b61126157600080fd5b61126c858585611a57565b6112ae85858585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611c7992505050565b6112b757600080fd5b5050505050565b826112c93382611ae6565b6112d257600080fd5b61131a6113158585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b611bf8565b50505050565b6000818152600260205260408120546001600160a01b0316806113745760405162461bcd60e51b81526004018080602001828103825260298152602001806127fe6029913960400191505060405180910390fd5b92915050565b61138333611e64565b565b60006113c78484848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b949350505050565b60006001600160a01b0382166114165760405162461bcd60e51b815260040180806020018281038252602a8152602001806127d4602a913960400191505060405180910390fd5b6001600160a01b038216600090815260046020526040902061137490611e75565b826114423382611ae6565b61144b57600080fd5b6112b7858585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250611a9f915050565b604080518082019091526002815261155160f21b602082015290565b6112b785858585858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201829052506040805160208101909152908152925061174c915050565b826115113382611ae6565b61151a57600080fd5b610f5a868661155f8787878080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b611a57565b6001600160a01b0382163314156115c2576040805162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604482015290519081900360640190fd5b3360008181526005602090815260408083206001600160a01b03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b61163933611694565b61164257600080fd5b6111e381611e79565b806116563382611ae6565b61165f57600080fd5b610ece61166b83611320565b8484611e8a565b6000818152600860205260408120546001600160a01b03168061137457600080fd5b600061137460018363ffffffff611fce16565b6116b033611694565b6116b957600080fd5b61131a848484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061203592505050565b611705848484611115565b61171184848484611c79565b61131a5760405162461bcd60e51b815260040180806020018281038252603281526020018061271a6032913960400191505060405180910390fd5b826117573382611ae6565b61176057600080fd5b600061176c8585611dac565b9050611779878783611a57565b61178587878386611c79565b61178e57600080fd5b50505050505050565b60606117a282611ac9565b6117ab57600080fd5b600760066000848152602001908152602001600020604051602001808380546001816001161561010002031660029004801561181e5780601f106117fc57610100808354040283529182019161181e565b820191906000526020600020905b81548152906001019060200180831161180a575b5050828054600181600116156101000203166002900480156118775780601f10611855576101008083540402835291820191611877565b820191906000526020600020905b815481529060010190602001808311611863575b505060408051601f1981840301815291905295945050505050565b8461189d3382611ae6565b6118a657600080fd5b61178e878787878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b018190048102820181019092528981529250899150889081908401838280828437600092019190915250611a9f92505050565b61192433611694565b61192d57600080fd5b611939600783836125cf565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b828260405180806020018281038252848482818152602001925080828437600083820152604051601f909101601f19169092018290039550909350505050a15050565b826119a93382611ae6565b6119b257600080fd5b6112b7858585858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061203592505050565b6119fc33611694565b6111da57600080fd5b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b7f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f90565b611a62838383611e8a565b6000818152600860205260409020546001600160a01b031615610ece57600090815260086020526040902080546001600160a01b03191690555050565b611aaa848484612035565b611ac0600085611aba8686611dac565b84611c79565b61131a57600080fd5b6000908152600260205260409020546001600160a01b0316151590565b6000611af182611ac9565b611b2c5760405162461bcd60e51b815260040180806020018281038252602c815260200180612770602c913960400191505060405180910390fd5b6000611b3783611320565b9050806001600160a01b0316846001600160a01b03161480611b725750836001600160a01b0316611b6784610f84565b6001600160a01b0316145b806113c757506113c78185611a05565b611b8b81611ac9565b611b9457600080fd5b6040516001600160a01b0383169082907fb1b34e6d89e1c584527d447f4b29ffad55635a37edeeb564939a6483401b31a590600090a3600090815260086020526040902080546001600160a01b0319166001600160a01b0392909216919091179055565b611c018161220f565b6000818152600860205260409020546001600160a01b031615611c3b57600081815260086020526040902080546001600160a01b03191690555b60008181526006602052604090205460026000196101006001841615020190911604156111e35760008181526006602052604081206111e39161264d565b6000611c8d846001600160a01b0316612221565b611c99575060016113c7565b604051630a85bd0160e11b815233600482018181526001600160a01b03888116602485015260448401879052608060648501908152865160848601528651600095928a169463150b7a029490938c938b938b939260a4019060208501908083838e5b83811015611d13578181015183820152602001611cfb565b50505050905090810190601f168015611d405780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015611d6257600080fd5b505af1158015611d76573d6000803e3d6000fd5b505050506040513d6020811015611d8c57600080fd5b50516001600160e01b031916630a85bd0160e11b14915050949350505050565b6000815160001415611dbd57600080fd5b82826040516020018082805190602001908083835b60208310611df15780518252601f199092019160209182019101611dd2565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040528051906020012060405160200180838152602001828152602001925050506040516020818303038152906040528051906020012060001c905092915050565b6111e360018263ffffffff61222716565b5490565b6111e360018263ffffffff61228e16565b826001600160a01b0316611e9d82611320565b6001600160a01b031614611ee25760405162461bcd60e51b81526004018080602001828103825260298152602001806128966029913960400191505060405180910390fd5b6001600160a01b038216611f275760405162461bcd60e51b815260040180806020018281038252602481526020018061274c6024913960400191505060405180910390fd5b611f308161230f565b6001600160a01b0383166000908152600460205260409020611f519061234a565b6001600160a01b0382166000908152600460205260409020611f7290612361565b60008181526002602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60006001600160a01b0382166120155760405162461bcd60e51b81526004018080602001828103825260228152602001806128746022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b60006120418383611dac565b905061204d848261236a565b815161205857600080fd5b61206181611ac9565b61206a57600080fd5b606082600660008681526020019081526020016000206040516020018083805190602001908083835b602083106120b25780518252601f199092019160209182019101612093565b6001836020036101000a03801982511681845116808217855250505050505090500180601760f91b815250600101828054600181600116156101000203166002900480156121375780601f10612115576101008083540402835291820191612137565b820191906000526020600020905b815481529060010190602001808311612123575b505060408051601f19818403018152918152600087815260066020908152919020825192965061216d9550935085019150612691565b50817fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952826040518080602001828103825283818151815260200191508051906020019080838360005b838110156121ce5781810151838201526020016121b6565b50505050905090810190601f1680156121fb5780820380516001836020036101000a031916815260200191505b509250505060405180910390a25050505050565b6111e361221b82611320565b8261249b565b3b151590565b6122318282611fce565b61226c5760405162461bcd60e51b81526004018080602001828103825260218152602001806128276021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff19169055565b6122988282611fce565b156122ea576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b6000818152600360205260409020546001600160a01b0316156111e357600090815260036020526040902080546001600160a01b0319169055565b805461235d90600163ffffffff61257216565b9055565b80546001019055565b6001600160a01b0382166123c5576040805162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f2061646472657373604482015290519081900360640190fd5b6123ce81611ac9565b15612420576040805162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000604482015290519081900360640190fd5b600081815260026020908152604080832080546001600160a01b0319166001600160a01b03871690811790915583526004909152902061245f90612361565b60405181906001600160a01b038416906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b816001600160a01b03166124ae82611320565b6001600160a01b0316146124f35760405162461bcd60e51b81526004018080602001828103825260258152602001806129116025913960400191505060405180910390fd5b6124fc8161230f565b6001600160a01b038216600090815260046020526040902061251d9061234a565b60008181526002602052604080822080546001600160a01b0319169055518291906001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6000828211156125c9576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106126105782800160ff1982351617855561263d565b8280016001018555821561263d579182015b8281111561263d578235825591602001919060010190612622565b506126499291506126ff565b5090565b50805460018160011615610100020316600290046000825580601f1061267357506111e3565b601f0160209004906000526020600020908101906111e391906126ff565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106126d257805160ff191683800117855561263d565b8280016001018555821561263d579182015b8281111561263d5782518255916020019190600101906126e4565b610f8191905b80821115612649576000815560010161270556fe4552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c654552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e526f6c65733a206163636f756e7420697320746865207a65726f20616464726573734552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f7665644552433732313a206275726e206f6620746f6b656e2074686174206973206e6f74206f776e4552433732314275726e61626c653a2063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564a265627a7a72315820fb6a1b26cc352dbb05e6627fd530bbb44114ac3a349f30d1f071136c656d20dc64736f6c634300050c0032","storage":{"0x7":"0x68747470733a2f2f6578616d706c652e636f6d2f000000000000000000000028","0xbdf39e9e65b2355b1b0b06df799c09159f0ab90f06a9bb2153f5de7d9b0ea81":"0x1","0x1a306d3e9bf29128dee78d8d16c9f378a11bbdf917a9caf986fc6e60846e37e7":"0x63727970746f000000000000000000000000000000000000000000000000000c","0x42c63635470f1fb1d6d4b6441c413cb435b1ebb6fedd1896dd5e25d1399147dd":"0x1","0x605d7a0bb2b20c4004d356eb969ff104dcca62360aa356247072f5e0df6472e3":"0xdead","0x67be87c3ff9960ca1e9cfac5cab2ff4747269cf9ed20c9b7306235ac35a491c5":"0x1","0x70f464f95f9ab7aba03264fd4cac1711d774d3703ce74217180264d4efc2105f":"0x1","0x76a72f26a108e6f3f687141f5f42d21d65857c03cb1b01aa1284f9a9ccd085da":"0x1","0x9562381dfbc2d8b8b66e765249f330164b73e329e5f01670660643571d1974df":"0x1","0x9f23d2403fb64167582d316b1bc5b35a6ed48524341ab24947c71df77304b29e":"0x1","0xf7815fccbf112960a73756e185887fedcb9fc64ca0a16cc5923b7960ed780800":"0x1"}},"0xc965345edac823d56812cd20a10316233916a605":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101c6575f3560e01c806395d89b41116100fe578063c87b56dd1161009e578063e985e9c51161006e578063e985e9c5146103d4578063f2fde38b1461040f578063f6a74ed714610422578063fca247ac14610435575f80fd5b8063c87b56dd14610377578063d6e4fa861461038a578063da8c229e146103a9578063ddf7fcb0146103cb575f80fd5b8063a7fc7a07116100d9578063a7fc7a0714610334578063b88d4fde14610347578063c1a287e21461035a578063c475abff14610364575f80fd5b806395d89b411461030657806396e494e81461030e578063a22cb46514610321575f80fd5b80633f15457f116101695780636352211e116101445780636352211e146102c757806370a08231146102da578063715018a6146102ed5780638da5cb5b146102f5575f80fd5b80633f15457f1461028e57806342842e0e146102a15780634e543b26146102b4575f80fd5b8063095ea7b3116101a4578063095ea7b3146102325780630e297b451461024757806323b872dd1461026857806328ed4f6c1461027b575f80fd5b806301ffc9a7146101ca57806306fdde03146101f2578063081812fc14610207575b5f80fd5b6101dd6101d83660046117dd565b610448565b60405190151581526020015b60405180910390f35b6101fa610499565b6040516101e99190611845565b61021a610215366004611857565b610528565b6040516001600160a01b0390911681526020016101e9565b610245610240366004611882565b61054d565b005b61025a6102553660046118ac565b610666565b6040519081526020016101e9565b6102456102763660046118e1565b61067b565b61024561028936600461190e565b6106ac565b60085461021a906001600160a01b031681565b6102456102af3660046118e1565b6107be565b6102456102c236600461193c565b6107d8565b61021a6102d5366004611857565b610848565b61025a6102e836600461193c565b610869565b6102456108ed565b6006546001600160a01b031661021a565b6101fa610900565b6101dd61031c366004611857565b61090f565b61024561032f366004611957565b610934565b61024561034236600461193c565b610943565b61024561035536600461199b565b610996565b61025a6276a70081565b61025a610372366004611a74565b6109ce565b6101fa610385366004611857565b610b52565b61025a610398366004611857565b5f9081526007602052604090205490565b6101dd6103b736600461193c565b600a6020525f908152604090205460ff1681565b61025a60095481565b6101dd6103e2366004611a94565b6001600160a01b039182165f90815260056020908152604080832093909416825291909152205460ff1690565b61024561041d36600461193c565b610bc2565b61024561043036600461193c565b610c3b565b61025a6104433660046118ac565b610c8b565b5f6001600160e01b031982166301ffc9a760e01b148061047857506001600160e01b031982166380ac58cd60e01b145b8061049357506001600160e01b03198216630a3b53db60e21b145b92915050565b60605f80546104a790611ac0565b80601f01602080910402602001604051908101604052809291908181526020018280546104d390611ac0565b801561051e5780601f106104f55761010080835404028352916020019161051e565b820191905f5260205f20905b81548152906001019060200180831161050157829003601f168201915b5050505050905090565b5f61053282610c99565b505f908152600460205260409020546001600160a01b031690565b5f61055782610cf7565b9050806001600160a01b0316836001600160a01b0316036105c95760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084015b60405180910390fd5b336001600160a01b03821614806105e557506105e581336103e2565b6106575760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016105c0565b6106618383610d56565b505050565b5f6106738484845f610dc3565b949350505050565b6106853382610fc7565b6106a15760405162461bcd60e51b81526004016105c090611af8565b610661838383611040565b6008546009546040516302571be360e01b8152600481019190915230916001600160a01b0316906302571be390602401602060405180830381865afa1580156106f7573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061071b9190611b45565b6001600160a01b03161461072d575f80fd5b6107373383610fc7565b61073f575f80fd5b6008546009546040516306ab592360e01b81526004810191909152602481018490526001600160a01b038381166044830152909116906306ab5923906064016020604051808303815f875af115801561079a573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106619190611b60565b61066183838360405180602001604052805f815250610996565b6107e06111a2565b600854600954604051630c4b7b8560e11b815260048101919091526001600160a01b03838116602483015290911690631896f70a906044015f604051808303815f87803b15801561082f575f80fd5b505af1158015610841573d5f803e3d5ffd5b5050505050565b5f818152600760205260408120544210610860575f80fd5b61049382610cf7565b5f6001600160a01b0382166108d25760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b60648201526084016105c0565b506001600160a01b03165f9081526003602052604090205490565b6108f56111a2565b6108fe5f6111fc565b565b6060600180546104a790611ac0565b5f81815260076020526040812054429061092d906276a70090611b77565b1092915050565b61093f33838361124d565b5050565b61094b6111a2565b6001600160a01b0381165f818152600a6020526040808220805460ff19166001179055517f0a8bb31534c0ed46f380cb867bd5c803a189ced9a764e30b3a4991a9901d74749190a250565b6109a03383610fc7565b6109bc5760405162461bcd60e51b81526004016105c090611af8565b6109c88484848461131a565b50505050565b6008546009546040516302571be360e01b815260048101919091525f9130916001600160a01b03909116906302571be390602401602060405180830381865afa158015610a1d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a419190611b45565b6001600160a01b031614610a53575f80fd5b335f908152600a602052604090205460ff16610a6d575f80fd5b5f838152600760205260409020544290610a8b906276a70090611b77565b1015610a95575f80fd5b610aa26276a70083611b77565b5f848152600760205260409020546276a70090610ac0908590611b77565b610aca9190611b77565b11610ad3575f80fd5b5f8381526007602052604081208054849290610af0908490611b77565b90915550505f838152600760205260409081902054905184917f9b87a00e30f1ac65d898f070f8a3488fe60517182d0a2098e1b4b93a54aa9bd691610b3791815260200190565b60405180910390a250505f9081526007602052604090205490565b6060610b5d82610c99565b5f610b7260408051602081019091525f815290565b90505f815111610b905760405180602001604052805f815250610bbb565b80610b9a8461134d565b604051602001610bab929190611b96565b6040516020818303038152906040525b9392505050565b610bca6111a2565b6001600160a01b038116610c2f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016105c0565b610c38816111fc565b50565b610c436111a2565b6001600160a01b0381165f818152600a6020526040808220805460ff19169055517f33d83959be2573f5453b12eb9d43b3499bc57d96bd2f067ba44803c859e811139190a250565b5f6106738484846001610dc3565b5f818152600260205260409020546001600160a01b0316610c385760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105c0565b5f818152600260205260408120546001600160a01b0316806104935760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105c0565b5f81815260046020526040902080546001600160a01b0319166001600160a01b0384169081179091558190610d8a82610cf7565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6008546009546040516302571be360e01b815260048101919091525f9130916001600160a01b03909116906302571be390602401602060405180830381865afa158015610e12573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e369190611b45565b6001600160a01b031614610e48575f80fd5b335f908152600a602052604090205460ff16610e62575f80fd5b610e6b8561090f565b610e73575f80fd5b610e806276a70042611b77565b6276a700610e8e8542611b77565b610e989190611b77565b11610ea1575f80fd5b610eab8342611b77565b5f868152600760209081526040808320939093556002905220546001600160a01b031615610edc57610edc856113dd565b610ee6848661146f565b8115610f6d576008546009546040516306ab592360e01b81526004810191909152602481018790526001600160a01b038681166044830152909116906306ab5923906064016020604051808303815f875af1158015610f47573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f6b9190611b60565b505b6001600160a01b038416857fb3d987963d01b2f68493b4bdb130988f157ea43070d4ad840fee0466ed9370d9610fa38642611b77565b60405190815260200160405180910390a3610fbe8342611b77565b95945050505050565b5f80610fd283610848565b9050806001600160a01b0316846001600160a01b0316148061100d5750836001600160a01b031661100284610528565b6001600160a01b0316145b8061067357506001600160a01b038082165f9081526005602090815260408083209388168352929052205460ff16610673565b826001600160a01b031661105382610cf7565b6001600160a01b0316146110795760405162461bcd60e51b81526004016105c090611bc4565b6001600160a01b0382166110db5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b60648201526084016105c0565b826001600160a01b03166110ee82610cf7565b6001600160a01b0316146111145760405162461bcd60e51b81526004016105c090611bc4565b5f81815260046020908152604080832080546001600160a01b03199081169091556001600160a01b038781168086526003855283862080545f1901905590871680865283862080546001019055868652600290945282852080549092168417909155905184937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6006546001600160a01b031633146108fe5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016105c0565b600680546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b816001600160a01b0316836001600160a01b0316036112ae5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c65720000000000000060448201526064016105c0565b6001600160a01b038381165f81815260056020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b611325848484611040565b611331848484846115f7565b6109c85760405162461bcd60e51b81526004016105c090611c09565b60605f611359836116f1565b60010190505f8167ffffffffffffffff81111561137857611378611987565b6040519080825280601f01601f1916602001820160405280156113a2576020820181803683370190505b5090508181016020015b5f19016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a85049450846113ac57509392505050565b5f6113e782610cf7565b90506113f282610cf7565b5f83815260046020908152604080832080546001600160a01b03199081169091556001600160a01b0385168085526003845282852080545f190190558785526002909352818420805490911690555192935084927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6001600160a01b0382166114c55760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f206164647265737360448201526064016105c0565b5f818152600260205260409020546001600160a01b0316156115295760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105c0565b5f818152600260205260409020546001600160a01b03161561158d5760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105c0565b6001600160a01b0382165f81815260036020908152604080832080546001019055848352600290915280822080546001600160a01b0319168417905551839291907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b5f6001600160a01b0384163b156116e957604051630a85bd0160e11b81526001600160a01b0385169063150b7a029061163a903390899088908890600401611c5b565b6020604051808303815f875af1925050508015611674575060408051601f3d908101601f1916820190925261167191810190611c97565b60015b6116cf573d8080156116a1576040519150601f19603f3d011682016040523d82523d5f602084013e6116a6565b606091505b5080515f036116c75760405162461bcd60e51b81526004016105c090611c09565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610673565b506001610673565b5f8072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b831061172f5772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef8100000000831061175b576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc10000831061177957662386f26fc10000830492506010015b6305f5e1008310611791576305f5e100830492506008015b61271083106117a557612710830492506004015b606483106117b7576064830492506002015b600a83106104935760010192915050565b6001600160e01b031981168114610c38575f80fd5b5f602082840312156117ed575f80fd5b8135610bbb816117c8565b5f5b838110156118125781810151838201526020016117fa565b50505f910152565b5f81518084526118318160208601602086016117f8565b601f01601f19169290920160200192915050565b602081525f610bbb602083018461181a565b5f60208284031215611867575f80fd5b5035919050565b6001600160a01b0381168114610c38575f80fd5b5f8060408385031215611893575f80fd5b823561189e8161186e565b946020939093013593505050565b5f805f606084860312156118be575f80fd5b8335925060208401356118d08161186e565b929592945050506040919091013590565b5f805f606084860312156118f3575f80fd5b83356118fe8161186e565b925060208401356118d08161186e565b5f806040838503121561191f575f80fd5b8235915060208301356119318161186e565b809150509250929050565b5f6020828403121561194c575f80fd5b8135610bbb8161186e565b5f8060408385031215611968575f80fd5b82356119738161186e565b915060208301358015158114611931575f80fd5b634e487b7160e01b5f52604160045260245ffd5b5f805f80608085870312156119ae575f80fd5b84356119b98161186e565b935060208501356119c98161186e565b925060408501359150606085013567ffffffffffffffff808211156119ec575f80fd5b818701915087601f8301126119ff575f80fd5b813581811115611a1157611a11611987565b604051601f8201601f19908116603f01168101908382118183101715611a3957611a39611987565b816040528281528a6020848701011115611a51575f80fd5b826020860160208301375f60208483010152809550505050505092959194509250565b5f8060408385031215611a85575f80fd5b50508035926020909101359150565b5f8060408385031215611aa5575f80fd5b8235611ab08161186e565b915060208301356119318161186e565b600181811c90821680611ad457607f821691505b602082108103611af257634e487b7160e01b5f52602260045260245ffd5b50919050565b6020808252602d908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526c1c881bdc88185c1c1c9bdd9959609a1b606082015260800190565b5f60208284031215611b55575f80fd5b8151610bbb8161186e565b5f60208284031215611b70575f80fd5b5051919050565b8082018082111561049357634e487b7160e01b5f52601160045260245ffd5b5f8351611ba78184602088016117f8565b835190830190611bbb8183602088016117f8565b01949350505050565b60208082526025908201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060408201526437bbb732b960d91b606082015260800190565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6001600160a01b03858116825284166020820152604081018390526080606082018190525f90611c8d9083018461181a565b9695505050505050565b5f60208284031215611ca7575f80fd5b8151610bbb816117c856fea164736f6c6343000818000a","storage":{"0x0":"0x0","0x1":"0x0","0x6":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x8":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0x9":"0x93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae","0x9b8bc185dce56a7ea1b27d35e40ac15dcdf9144303dfd4d8880220078bf21a2c":"0x1","0xdb5e6a17df8534b92b0c8de590f14b4fb4b5eb2c62ef1bf7a05555e354797508":"0x1","0xe1a982900207b619cb6c39be8cb5e60da1370171412fb65b5efc25e2dce3c34c":"0x1"}},"0xce4bb7dc1eb9dce75743de6a4b48534fd427ef51":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xe85541865bbb62a05064ce5c9f41cc293a8ea996","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0xd178b720229c39de617846f84cf9c8d32a63a23d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610106575f3560e01c806371017a541161009e5780639e32d3641161006e5780639e32d3641461025a578063a424740014610281578063dd6b9e2214610294578063e1c4b65a146102a7578063e35a14e5146102ba575f80fd5b806371017a541461020e5780637b103999146102215780638f0dbd25146102345780639810b69514610247575f80fd5b8063485cc955116100d9578063485cc95514610191578063572b6c05146101a457806358884432146101d05780636ccbae5f146101fb575f80fd5b8063150b7a021461010a5780631694116d1461013b5780631bf7e13e146101505780631c351a9d14610170575b5f80fd5b61011d610118366004611434565b6102e2565b6040516001600160e01b031990911681526020015b60405180910390f35b61014e6101493660046114e3565b610372565b005b61016361015e366004611549565b61040d565b6040516101329190611601565b61018361017e366004611613565b6104d6565b604051908152602001610132565b61014e61019f366004611666565b6105c3565b6101c06101b236600461169d565b6001600160a01b0316301490565b6040519015158152602001610132565b6067546101e3906001600160a01b031681565b6040516001600160a01b039091168152602001610132565b6101836102093660046116b8565b6106f8565b6101e361021c3660046116cf565b610751565b6066546101e3906001600160a01b031681565b61014e6102423660046116ef565b610791565b6101e36102553660046116cf565b610806565b6101837fd81bbfcee722494b885e891546eeac23d0eedcd44038d7a2f6ef9ec2f9e0d23981565b6101c061028f366004611549565b61085f565b6101c06102a236600461172d565b6108a8565b61014e6102b5366004611771565b61091d565b6101e36102c83660046116b8565b5f908152606560205260409020546001600160a01b031690565b6066545f906001600160a01b03166102f8610a43565b6001600160a01b031614158061032257505f848152606560205260409020546001600160a01b0316155b156103605783610330610a43565b60405163634afa0d60e01b815260048101929092526001600160a01b031660248201526044015b60405180910390fd5b50630a85bd0160e11b95945050505050565b828261037e8282610751565b6001600160a01b031661038f610a43565b6001600160a01b0316146103c057604051632cd9b44d60e11b81526004810183905260248101829052604401610357565b5f6103cb8686610806565b90505f5b87811015610402576103fa8989838181106103ec576103ec6117b0565b905060200201358387610a51565b6001016103cf565b505050505050505050565b60605f5a905061041e85858561085f565b61043b57604051638baa579f60e01b815260040160405180910390fd5b6104cb61044b602087018761169d565b3060408801358461045f60608b018b6117c4565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f92019190915250610b8492505050565b9150505b9392505050565b6067545f906001600160a01b031663aa271e1a6104f1610a43565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015610533573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105579190611807565b1580610572575030610567610a43565b6001600160a01b0316145b156105a45761057f610a43565b60405163e2c8c9d560e01b81526001600160a01b039091166004820152602401610357565b5f6105b0858585610c60565b90506105bb81610e73565b949350505050565b5f54610100900460ff16158080156105e157505f54600160ff909116105b806105fa5750303b1580156105fa57505f5460ff166001145b61065d5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610357565b5f805460ff19166001179055801561067e575f805461ff0019166101001790555b606680546001600160a01b038086166001600160a01b031992831617909255606780549285169290911691909117905580156106f3575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f9061074a906060016040516020818303038152906040528051906020012090565b5492915050565b5f80838360405160200161076f929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209150505b92915050565b828261079d8282610751565b6001600160a01b03166107ae610a43565b6001600160a01b0316146107df57604051632cd9b44d60e11b81526004810183905260248101829052604401610357565b856107e981610e73565b6107fd876107f78889610806565b86610a51565b50505050505050565b5f8060026108148585610e8f565b6040516108219190611826565b602060405180830381855afa15801561083c573d5f803e3d5ffd5b5050506040513d601f19601f820116820180604052508101906105bb9190611841565b5f6105bb61086c856118c6565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250610f1492505050565b5f805b8281101561091257846001600160a01b03166108f38585848181106108d2576108d26117b0565b905060200201355f908152606560205260409020546001600160a01b031690565b6001600160a01b03161461090a575f9150506104cf565b6001016108ab565b506001949350505050565b6067546001600160a01b031663aa271e1a610936610a43565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015610978573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061099c9190611807565b15806109b75750306109ac610a43565b6001600160a01b0316145b156109c45761057f610a43565b5f5b818110156106f357610a3a8383838181106109e3576109e36117b0565b90506020028101906109f59190611983565b610a039060208101906117c4565b858585818110610a1557610a156117b0565b9050602002810190610a279190611983565b610a3590602081019061169d565b610c60565b506001016109c6565b5f610a4c611059565b905090565b5f838152606560205260409020546001600160a01b03838116911614610ab4575f83815260656020526040908190205490516326995d8360e11b8152600481018590526001600160a01b0391821660248201529083166044820152606401610357565b5f838152606560205260409081902080546001600160a01b03191690556066549051632142170760e11b81523060048201526001600160a01b03838116602483015260448201869052909116906342842e0e906064015f604051808303815f87803b158015610b21575f80fd5b505af1158015610b33573d5f803e3d5ffd5b50505050806001600160a01b0316610b49610a43565b6001600160a01b0316847f9a471856befea1cabcd7fc8a1c4d70ea07b8ed2ee205cc361f932433542ef3fe60405160405180910390a4505050565b6060610b8f85611076565b5f80876001600160a01b031686610ba88b8a89896110db565b604051610bb59190611826565b5f604051808303815f8787f1925050503d805f8114610bef576040519150601f19603f3d011682016040523d82523d5f602084013e610bf4565b606091505b509092509050610c05603f876119bf565b5a11610c1357610c136119d2565b610c5382826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061110b565b9998505050505050505050565b5f60605f7fd81bbfcee722494b885e891546eeac23d0eedcd44038d7a2f6ef9ec2f9e0d2398686604051602001610c989291906119e6565b60405160208183030381529060405280519060200120604051602001610cc8929190918252602082015260400190565b60408051808303601f19018152828252805160209091012060028084526060840190925292505f9190816020015b6060815260200190600190039081610cf657905050905086868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920182905250855186945090925015159050610d5657610d566117b0565b6020026020010181905250604051806040016040528060038152602001621e9a5b60ea1b81525081600181518110610d9057610d906117b0565b6020908102919091018101919091525f8381526065909152604080822080546001600160a01b0319166001600160a01b03898116919091179091556067549151635cd7e3b360e01b8152911691635cd7e3b391610df891309186918991829190600401611a4d565b5f604051808303815f87803b158015610e0f575f80fd5b505af1158015610e21573d5f803e3d5ffd5b50505050846001600160a01b0316827f08717469d38a4b02325ea6637978c7952f94d3d8fc7848994f618ddbf4d637f18989604051610e61929190611aab565b60405180910390a35095945050505050565b303303610e8657610e8381611144565b50565b610e8381611076565b60605f82610e9f60016020611ad9565b60ff1660208110610eb257610eb26117b0565b1a9050610ec0600282611af2565b60ff1615610ecf576003610ed2565b60025b84604051602001610efc92919060f89290921b6001600160f81b0319168252600182015260210190565b60405160208183030381529060405291505092915050565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015610f58573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f7c9190611841565b90505f611029866060015180519060200120868860200151604051602001610fc99392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561104f5750855161104f906001600160a01b0316828661116e565b9695505050505050565b5f30330361106e575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f906060016040516020818303038152906040528051906020012090506110ca8190565b546110d6906001611b13565b905550565b60608285856040516020016110f293929190611b26565b6040516020818303038152906040529050949350505050565b6060831561111a5750816104cf565b82511561112a5782518084602001fd5b8160405162461bcd60e51b81526004016103579190611601565b61114c6112a9565b8114610e8357604051635637b6af60e11b815260048101829052602401610357565b5f805f61117b85856112bb565b90925090505f81600481111561119357611193611b64565b1480156111b15750856001600160a01b0316826001600160a01b0316145b156111c1576001925050506104cf565b5f80876001600160a01b0316631626ba7e60e01b88886040516024016111e8929190611b78565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516112269190611826565b5f60405180830381855afa9150503d805f811461125e576040519150601f19603f3d011682016040523d82523d5f602084013e611263565b606091505b5091509150818015611276575080516020145b801561129d57508051630b135d3f60e11b9061129b9083016020908101908401611841565b145b98975050505050505050565b5f3033036110735750601f1936013590565b5f8082516041036112ef576020830151604084015160608501515f1a6112e3878285856112fd565b945094505050506112f6565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561133257505f905060036113d9565b8460ff16601b1415801561134a57508460ff16601c14155b1561135a57505f905060046113d9565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156113ab573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b0381166113d3575f600192509250506113d9565b91505f90505b94509492505050565b6001600160a01b0381168114610e83575f80fd5b5f8083601f840112611406575f80fd5b50813567ffffffffffffffff81111561141d575f80fd5b6020830191508360208285010111156112f6575f80fd5b5f805f805f60808688031215611448575f80fd5b8535611453816113e2565b94506020860135611463816113e2565b935060408601359250606086013567ffffffffffffffff811115611485575f80fd5b611491888289016113f6565b969995985093965092949392505050565b5f8083601f8401126114b2575f80fd5b50813567ffffffffffffffff8111156114c9575f80fd5b6020830191508360208260051b85010111156112f6575f80fd5b5f805f805f608086880312156114f7575f80fd5b853567ffffffffffffffff81111561150d575f80fd5b611519888289016114a2565b9096509450506020860135925060408601359150606086013561153b816113e2565b809150509295509295909350565b5f805f6040848603121561155b575f80fd5b833567ffffffffffffffff80821115611572575f80fd5b9085019060808288031215611585575f80fd5b9093506020850135908082111561159a575f80fd5b506115a7868287016113f6565b9497909650939450505050565b5f5b838110156115ce5781810151838201526020016115b6565b50505f910152565b5f81518084526115ed8160208601602086016115b4565b601f01601f19169290920160200192915050565b602081525f6104cf60208301846115d6565b5f805f60408486031215611625575f80fd5b833567ffffffffffffffff81111561163b575f80fd5b611647868287016113f6565b909450925050602084013561165b816113e2565b809150509250925092565b5f8060408385031215611677575f80fd5b8235611682816113e2565b91506020830135611692816113e2565b809150509250929050565b5f602082840312156116ad575f80fd5b81356104cf816113e2565b5f602082840312156116c8575f80fd5b5035919050565b5f80604083850312156116e0575f80fd5b50508035926020909101359150565b5f805f8060808587031215611702575f80fd5b8435935060208501359250604085013591506060850135611722816113e2565b939692955090935050565b5f805f6040848603121561173f575f80fd5b833561174a816113e2565b9250602084013567ffffffffffffffff811115611765575f80fd5b6115a7868287016114a2565b5f8060208385031215611782575f80fd5b823567ffffffffffffffff811115611798575f80fd5b6117a4858286016114a2565b90969095509350505050565b634e487b7160e01b5f52603260045260245ffd5b5f808335601e198436030181126117d9575f80fd5b83018035915067ffffffffffffffff8211156117f3575f80fd5b6020019150368190038213156112f6575f80fd5b5f60208284031215611817575f80fd5b815180151581146104cf575f80fd5b5f82516118378184602087016115b4565b9190910192915050565b5f60208284031215611851575f80fd5b5051919050565b634e487b7160e01b5f52604160045260245ffd5b6040516080810167ffffffffffffffff8111828210171561188f5761188f611858565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156118be576118be611858565b604052919050565b5f608082360312156118d6575f80fd5b6118de61186c565b82356118e9816113e2565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff80821115611919575f80fd5b9085019036601f83011261192b575f80fd5b81358181111561193d5761193d611858565b61194f601f8201601f19168501611895565b91508082523684828501011115611964575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b5f8235603e19833603018112611837575f80fd5b634e487b7160e01b5f52601260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b5f826119cd576119cd611997565b500490565b634e487b7160e01b5f52600160045260245ffd5b818382375f9101908152919050565b5f8282518085526020808601955060208260051b840101602086015f5b84811015611a4057601f19868403018952611a2e8383516115d6565b98840198925090830190600101611a12565b5090979650505050505050565b6001600160a01b038616815260a0602082018190525f90611a70908301876119f5565b8281036040840152611a8281876119f5565b90508281036060840152611a9681866119f5565b91505082151560808301529695505050505050565b60208152816020820152818360408301375f818301604090810191909152601f909201601f19160101919050565b60ff828116828216039081111561078b5761078b6119ab565b5f60ff831680611b0457611b04611997565b8060ff84160691505092915050565b8082018082111561078b5761078b6119ab565b5f8451611b378184602089016115b4565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f6105bb60408301846115d656fea164736f6c6343000818000a","storage":{"0x0":"0xff"}},"0xda9e1b3e395bfb0a45f03c7f615146b9d896c959":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100b1575f3560e01c806340c10f191161006e57806340c10f191461013d57806370a082311461015257806395d89b411461017a578063a457c2d714610182578063a9059cbb14610195578063dd62ed3e146101a8575f80fd5b806306fdde03146100b5578063095ea7b3146100d357806318160ddd146100f657806323b872dd14610108578063313ce5671461011b578063395093511461012a575b5f80fd5b6100bd6101bb565b6040516100ca9190610775565b60405180910390f35b6100e66100e13660046107dc565b61024b565b60405190151581526020016100ca565b6002545b6040519081526020016100ca565b6100e6610116366004610804565b610264565b604051601281526020016100ca565b6100e66101383660046107dc565b610287565b61015061014b3660046107dc565b6102a8565b005b6100fa61016036600461083d565b6001600160a01b03165f9081526020819052604090205490565b6100bd6102b6565b6100e66101903660046107dc565b6102c5565b6100e66101a33660046107dc565b610344565b6100fa6101b636600461085d565b610351565b6060600380546101ca9061088e565b80601f01602080910402602001604051908101604052809291908181526020018280546101f69061088e565b80156102415780601f1061021857610100808354040283529160200191610241565b820191905f5260205f20905b81548152906001019060200180831161022457829003601f168201915b5050505050905090565b5f3361025881858561037b565b60019150505b92915050565b5f3361027185828561049e565b61027c858585610516565b506001949350505050565b5f336102588185856102998383610351565b6102a391906108c6565b61037b565b6102b282826106b8565b5050565b6060600480546101ca9061088e565b5f33816102d28286610351565b9050838110156103375760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b61027c828686840361037b565b5f33610258818585610516565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b6001600160a01b0383166103dd5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161032e565b6001600160a01b03821661043e5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161032e565b6001600160a01b038381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b5f6104a98484610351565b90505f19811461051057818110156105035760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161032e565b610510848484840361037b565b50505050565b6001600160a01b03831661057a5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161032e565b6001600160a01b0382166105dc5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161032e565b6001600160a01b0383165f90815260208190526040902054818110156106535760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161032e565b6001600160a01b038481165f81815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3610510565b6001600160a01b03821661070e5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640161032e565b8060025f82825461071f91906108c6565b90915550506001600160a01b0382165f81815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b5f602080835283518060208501525f5b818110156107a157858101830151858201604001528201610785565b505f604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146107d7575f80fd5b919050565b5f80604083850312156107ed575f80fd5b6107f6836107c1565b946020939093013593505050565b5f805f60608486031215610816575f80fd5b61081f846107c1565b925061082d602085016107c1565b9150604084013590509250925092565b5f6020828403121561084d575f80fd5b610856826107c1565b9392505050565b5f806040838503121561086e575f80fd5b610877836107c1565b9150610885602084016107c1565b90509250929050565b600181811c908216806108a257607f821691505b6020821081036108c057634e487b7160e01b5f52602260045260245ffd5b50919050565b8082018082111561025e57634e487b7160e01b5f52601160045260245ffdfea164736f6c6343000818000a","storage":{"0x2":"0xe8d4a51000","0x3":"0x0","0x4":"0x0","0x47668262eb76f3aa61b856a0c078f33a11f46671cf1466c3616ba74a22fcdd92":"0xe8d4a51000","0x9cc83e833a69122bf7773b58c082655d780ae469ab7cdf5d1047a30229e55875":"0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"}},"0xe0afc4e9e03e4aa67257df7a2eca77454309789d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061002b5760003560e01c806316f1983114610030575b600080fd5b6100b06004803603604081101561004657600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561007157600080fd5b82018360208201111561008357600080fd5b803590602001918460018302840111640100000000831117156100a557600080fd5b5090925090506100b2565b005b826001600160a01b031660017f103fed9db65eac19c4d870f49ab7520fe03b99f1838e5996caf47e9e43308392848460405180806020018281038252848482818152602001925080828437600083820152604051601f909101601f19169092018290039550909350505050a350505056fea164736f6c6343000606000a","storage":{}},"0xe4fdf45c2f8d198854f8823809c7a988eeaaa493":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100a6575f3560e01c80638cb8ecec1161006e5780638cb8ecec1461013e5780638da5cb5b14610151578063cbe9e76414610161578063da8c229e14610183578063e0dba60f146101a5578063f2fde38b146101b8575f80fd5b806301670ba9146100aa57806301ffc9a7146100bf5780633f15457f146100f85780634e543b2614610123578063715018a614610136575b5f80fd5b6100bd6100b8366004610529565b6101cb565b005b6100e36100cd366004610540565b6001600160e01b0319166301ffc9a760e01b1490565b60405190151581526020015b60405180910390f35b60025461010b906001600160a01b031681565b6040516001600160a01b0390911681526020016100ef565b6100bd610131366004610589565b610217565b6100bd610282565b6100bd61014c3660046105a2565b610295565b5f546001600160a01b031661010b565b6100e361016f366004610529565b60036020525f908152604090205460ff1681565b6100e3610191366004610589565b60016020525f908152604090205460ff1681565b6100bd6101b33660046105cc565b6103a2565b6100bd6101c6366004610589565b610408565b6101d3610481565b60405181907f1764176cfa565853ba1ded547a830a9f9bff95231ef6fd228b3ddd6175777569905f90a25f908152600360205260409020805460ff19166001179055565b61021f610481565b600254604051630c4b7b8560e11b81525f60048201526001600160a01b03838116602483015290911690631896f70a906044015f604051808303815f87803b158015610269575f80fd5b505af115801561027b573d5f803e3d5ffd5b5050505050565b61028a610481565b6102935f6104da565b565b335f9081526001602052604090205460ff166103095760405162461bcd60e51b815260206004820152602860248201527f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f604482015267373a3937b63632b960c11b60648201526084015b60405180910390fd5b5f8281526003602052604090205460ff1615610323575f80fd5b6002546040516306ab592360e01b81525f6004820152602481018490526001600160a01b038381166044830152909116906306ab5923906064016020604051808303815f875af1158015610379573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061039d9190610605565b505050565b6103aa610481565b6001600160a01b0382165f81815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b610410610481565b6001600160a01b0381166104755760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610300565b61047e816104da565b50565b5f546001600160a01b031633146102935760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610300565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f60208284031215610539575f80fd5b5035919050565b5f60208284031215610550575f80fd5b81356001600160e01b031981168114610567575f80fd5b9392505050565b80356001600160a01b0381168114610584575f80fd5b919050565b5f60208284031215610599575f80fd5b6105678261056e565b5f80604083850312156105b3575f80fd5b823591506105c36020840161056e565b90509250929050565b5f80604083850312156105dd575f80fd5b6105e68361056e565b9150602083013580151581146105fa575f80fd5b809150509250929050565b5f60208284031215610615575f80fd5b505191905056fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0xbdf39e9e65b2355b1b0b06df799c09159f0ab90f06a9bb2153f5de7d9b0ea81":"0x1","0x97b771283c9c769f7b9399fef71d92816f2bd31de10203b676671b01eb920966":"0x1"}},"0xe85541865bbb62a05064ce5c9f41cc293a8ea996":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610060575f3560e01c8063715018a6146100645780638129fc1c1461006e5780638da5cb5b14610076578063a3f4df7e14610096578063f2fde38b146100cf578063ffa1ad74146100e2575b5f80fd5b61006c610106565b005b61006c610119565b6033546040516001600160a01b0390911681526020015b60405180910390f35b6100c26040518060400160405280600d81526020016c2aa7299d1027b832b930ba37b960991b81525081565b60405161008d91906103bd565b61006c6100dd366004610409565b610229565b6100c2604051806040016040528060058152602001640302e312e360dc1b81525081565b61010e61029f565b6101175f6102f9565b565b5f54610100900460ff161580801561013757505f54600160ff909116105b806101505750303b15801561015057505f5460ff166001145b6101b85760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b5f805460ff1916600117905580156101d9575f805461ff0019166101001790555b6101e161034a565b8015610226575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50565b61023161029f565b6001600160a01b0381166102965760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016101af565b610226816102f9565b6033546001600160a01b031633146101175760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016101af565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff166103b45760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016101af565b610117336102f9565b5f602080835283518060208501525f5b818110156103e9578581018301518582016040015282016103cd565b505f604082860101526040601f19601f8301168501019250505092915050565b5f60208284031215610419575f80fd5b81356001600160a01b038116811461042f575f80fd5b939250505056fea164736f6c6343000818000a","storage":{}},"0xead34b583404e3cb0c9b97c2d1c486be67be9f30":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0xec71e4e674fe0f432693dc2b935c34bd2774c003":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610090575f3560e01c8063a200e15311610063578063a200e15314610146578063a34e35961461016d578063c8a4271f14610180578063cd5d2c74146101bf578063d820ed42146101e6575f80fd5b806301ffc9a7146100945780632c0fd74c146100bc57806350e9a715146100f157806359b6b86c1461011f575b5f80fd5b6100a76100a2366004610600565b61020d565b60405190151581526020015b60405180910390f35b6100e37f000000000000000000000000000000000000000000000000000000000000000081565b6040519081526020016100b3565b6101046100ff366004610627565b610243565b604080518251815260209283015192810192909252016100b3565b6100e37f000000000000000000000000000000000000000000000000000000000000000181565b6100e37f000000000000000000000000000000000000000000000000000000000000000481565b6100e361017b366004610627565b610404565b6101a77f000000000000000000000000f3810eb7d64d1c11ae12727d957c6202b24492f581565b6040516001600160a01b0390911681526020016100b3565b6100e37f000000000000000000000000000000000000000000000000000000000000000081565b6100e37f000000000000000000000000000000000000000000000000000000000000000281565b5f6001600160e01b031982166301ffc9a760e01b148061023d57506001600160e01b031982166350e9a71560e01b145b92915050565b604080518082019091525f80825260208201525f61029586868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061045392505050565b90505f600582106102d1576102ca847f00000000000000000000000000000000000000000000000000000000000000016106b3565b9050610394565b81600403610303576102ca847f00000000000000000000000000000000000000000000000000000000000000026106b3565b81600303610335576102ca847f00000000000000000000000000000000000000000000000000000000000000046106b3565b81600203610367576102ca847f00000000000000000000000000000000000000000000000000000000000000006106b3565b610391847f00000000000000000000000000000000000000000000000000000000000000006106b3565b90505b60405180604001604052806103a883610554565b81526020016103f76103f28a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c92508b91506105f89050565b610554565b9052979650505050505050565b5f61044a6103f286868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508892508791506105f89050565b95945050505050565b80515f90819081905b8082101561054b575f858381518110610477576104776106ca565b01602001516001600160f81b0319169050600160ff1b8110156104a65761049f6001846106de565b9250610538565b600760fd1b6001600160f81b0319821610156104c75761049f6002846106de565b600f60fc1b6001600160f81b0319821610156104e85761049f6003846106de565b601f60fb1b6001600160f81b0319821610156105095761049f6004846106de565b603f60fa1b6001600160f81b03198216101561052a5761049f6005846106de565b6105356006846106de565b92505b5082610543816106f1565b93505061045c565b50909392505050565b5f807f000000000000000000000000f3810eb7d64d1c11ae12727d957c6202b24492f56001600160a01b03166350d25bcd6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105b2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105d69190610709565b9050806105e7846305f5e1006106b3565b6105f19190610720565b9392505050565b5f9392505050565b5f60208284031215610610575f80fd5b81356001600160e01b0319811681146105f1575f80fd5b5f805f806060858703121561063a575f80fd5b843567ffffffffffffffff80821115610651575f80fd5b818701915087601f830112610664575f80fd5b813581811115610672575f80fd5b886020828501011115610683575f80fd5b6020928301999098509187013596604001359550909350505050565b634e487b7160e01b5f52601160045260245ffd5b808202811582820484141761023d5761023d61069f565b634e487b7160e01b5f52603260045260245ffd5b8082018082111561023d5761023d61069f565b5f600182016107025761070261069f565b5060010190565b5f60208284031215610719575f80fd5b5051919050565b5f8261073a57634e487b7160e01b5f52601260045260245ffd5b50049056fea164736f6c6343000818000a","storage":{}},"0xf1ad43dc647f27c2366ab4742d68d21282f7d50e":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101d1575f3560e01c80638b95dd71116100fe578063c86902331161009e578063e32954eb1161006e578063e32954eb146104f2578063e59d895d14610505578063e985e9c514610518578063f1cb7e0614610553575f80fd5b8063c869023314610435578063ce3decdc1461048c578063d5fa2b001461049f578063d700ff33146104b2575f80fd5b8063a8fa5682116100d9578063a8fa5682146103ac578063a9784b3e146103bf578063ac9650d814610402578063bc1c58d114610422575f80fd5b80638b95dd7114610373578063a22cb46514610386578063a4b91a0114610399575f80fd5b80633603d758116101745780635c98042b116101445780635c98042b14610327578063623195b01461033a578063691f34311461034d5780637737221314610360575f80fd5b80633603d758146102975780633b3b57de146102aa5780634cbf6ba4146102bd57806359d1d43c14610307575f80fd5b8063124a319c116101af578063124a319c146102255780632203ab561461025057806329cd62ea14610271578063304e6ade14610284575f80fd5b806301ffc9a7146101d55780630af179d7146101fd57806310f13a8c14610212575b5f80fd5b6101e86101e3366004612267565b610566565b60405190151581526020015b60405180910390f35b61021061020b3660046122bd565b610576565b005b610210610220366004612304565b610778565b610238610233366004612377565b610842565b6040516001600160a01b0390911681526020016101f4565b61026361025e3660046123a1565b610a87565b6040516101f492919061240e565b61021061027f366004612426565b610bb5565b6102106102923660046122bd565b610c4d565b6102106102a536600461244f565b610cc6565b6102386102b836600461244f565b610d64565b6101e86102cb3660046123a1565b5f82815260208181526040808320546001600160401b031683526006825280832094835293815283822092825291909152205461ffff16151590565b61031a6103153660046122bd565b610d93565b6040516101f49190612466565b61031a61033536600461244f565b610e6f565b610210610348366004612478565b610f2a565b61031a61035b36600461244f565b610fc2565b61021061036e3660046122bd565b610ffa565b6102106103813660046124da565b611073565b6102106103943660046125b9565b611150565b6102106103a73660046125e3565b61122a565b61031a6103ba36600461261e565b6112f6565b6101e86103cd36600461265a565b6001600160a01b039283165f908152600c60209081526040808320948352938152838220929094168152925290205460ff1690565b6104156104103660046126ce565b611342565b6040516101f4919061270c565b61031a61043036600461244f565b61134f565b61047761044336600461244f565b5f81815260208181526040808320546001600160401b03168352600982528083209383529290522080546001909101549091565b604080519283526020830191909152016101f4565b61021061049a3660046122bd565b611387565b6102106104ad36600461276e565b6114c3565b6104da6104c036600461244f565b5f602081905290815260409020546001600160401b031681565b6040516001600160401b0390911681526020016101f4565b61041561050036600461279c565b6114e9565b6102106105133660046127d6565b6114fe565b6101e8610526366004612808565b6001600160a01b039182165f908152600b6020908152604080832093909416825291909152205460ff1690565b61031a6105613660046123a1565b6115a2565b5f61057082611666565b92915050565b826105808161168a565b610588575f80fd5b5f84815260208181526040808320548151601f87018490048402810184019092528582528392606092839285926001600160401b039091169183916105eb9183918d908d90819084018382808284375f9201919091525092939250506118b79050565b90505b80515160208201511015610712578661ffff165f03610652578060400151965061061781611912565b94508460405160200161062a9190612834565b60405160208183030381529060405280519060200120925061064b81611933565b9350610704565b5f61065c82611912565b9050816040015161ffff168861ffff16141580610680575061067e868261194f565b155b15610702576106db8c878a8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250505060208801518d91506106d2908290612863565b8b51158a61196a565b8160400151975081602001519650809550858051906020012093506106ff82611933565b94505b505b61070d81611bc9565b6105ee565b5083511561076c5761076c8a85888c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c925061076391508290508f612863565b8951158861196a565b50505050505050505050565b846107828161168a565b61078a575f80fd5b5f86815260208181526040808320546001600160401b03168352600a8252808320898452909152908190209051849184916107c89089908990612876565b908152602001604051809103902091826107e3929190612901565b5084846040516107f4929190612876565b6040518091039020867f448bc014f1536726cf8d54ff3d6481ed3cbc683c2591ca204274009afa09b1a18787878760405161083294939291906129e2565b60405180910390a3505050505050565b5f82815260208181526040808320546001600160401b031683526007825280832085845282528083206001600160e01b0319851684529091528120546001600160a01b03168015610894579050610570565b5f61089e85610d64565b90506001600160a01b0381166108b8575f92505050610570565b6040516301ffc9a760e01b60248201525f9081906001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b1790525161090f9190612834565b5f60405180830381855afa9150503d805f8114610947576040519150601f19603f3d011682016040523d82523d5f602084013e61094c565b606091505b509150915081158061095f575060208151105b80610989575080601f8151811061097857610978612a13565b01602001516001600160f81b031916155b1561099a575f945050505050610570565b6040516001600160e01b0319871660248201526001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b179052516109f09190612834565b5f60405180830381855afa9150503d805f8114610a28576040519150601f19603f3d011682016040523d82523d5f602084013e610a2d565b606091505b509092509050811580610a41575060208151105b80610a6b575080601f81518110610a5a57610a5a612a13565b01602001516001600160f81b031916155b15610a7c575f945050505050610570565b509095945050505050565b5f82815260208181526040808320546001600160401b03168352600180835281842086855290925282206060915b848111610b975780851615801590610ae457505f8181526020839052604081208054610ae090612885565b9050115b15610b8f5780825f8381526020019081526020015f20808054610b0690612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610b3290612885565b8015610b7d5780601f10610b5457610100808354040283529160200191610b7d565b820191905f5260205f20905b815481529060010190602001808311610b6057829003601f168201915b50505050509050935093505050610bae565b60011b610ab5565b505f60405180602001604052805f81525092509250505b9250929050565b82610bbf8161168a565b610bc7575f80fd5b60408051808201825284815260208082018581525f888152808352848120546001600160401b031681526009835284812089825283528490209251835551600190920191909155815185815290810184905285917f1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e4691015b60405180910390a250505050565b82610c578161168a565b610c5f575f80fd5b5f84815260208181526040808320546001600160401b03168352600382528083208784529091529020610c93838583612901565b50837fe379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d75788484604051610c3f929190612a27565b80610cd08161168a565b610cd8575f80fd5b5f82815260208190526040812080546001600160401b031691610cfa83612a3a565b82546101009290920a6001600160401b038181021990931691831602179091555f84815260208181526040918290205491519190921681528492507fc6621ccb8f3f5a04bb6502154b2caf6adf5983fe76dfef1cfc9c42e3579db444910160405180910390a25050565b5f80610d7183603c6115a2565b905080515f03610d8357505f92915050565b610d8c81611cae565b9392505050565b5f83815260208181526040808320546001600160401b03168352600a825280832086845290915290819020905160609190610dd19085908590612876565b90815260200160405180910390208054610dea90612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610e1690612885565b8015610e615780601f10610e3857610100808354040283529160200191610e61565b820191905f5260205f20905b815481529060010190602001808311610e4457829003601f168201915b505050505090509392505050565b5f81815260208181526040808320546001600160401b03168352600482528083208484529091529020805460609190610ea790612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610ed390612885565b8015610f1e5780601f10610ef557610100808354040283529160200191610f1e565b820191905f5260205f20905b815481529060010190602001808311610f0157829003601f168201915b50505050509050919050565b83610f348161168a565b610f3c575f80fd5b83610f48600182612863565b1615610f52575f80fd5b5f85815260208181526040808320546001600160401b031683526001825280832088845282528083208784529091529020610f8e838583612901565b50604051849086907faa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe3905f90a35050505050565b5f81815260208181526040808320546001600160401b03168352600882528083208484529091529020805460609190610ea790612885565b826110048161168a565b61100c575f80fd5b5f84815260208181526040808320546001600160401b03168352600882528083208784529091529020611040838583612901565b50837fb7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f78484604051610c3f929190612a27565b8261107d8161168a565b611085575f80fd5b837f65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af75284846040516110b792919061240e565b60405180910390a2603c830361110e57837f52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd26110f284611cae565b6040516001600160a01b03909116815260200160405180910390a25b5f84815260208181526040808320546001600160401b0316835260028252808320878452825280832086845290915290206111498382612a5f565b5050505050565b6001600160a01b03821633036111bf5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084015b60405180910390fd5b335f818152600b602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6001600160a01b03821633036112825760405162461bcd60e51b815260206004820181905260248201527f53657474696e672064656c65676174652073746174757320666f722073656c6660448201526064016111b6565b335f818152600c6020908152604080832087845282528083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519384529286917ff0ddb3b04746704017f9aa8bd728fcc2c1d11675041205350018915f5e4750a0910160405180910390a4505050565b5f83815260208181526040808320546001600160401b03168352600582528083208684528252808320858452825280832061ffff851684529091529020805460609190610dea90612885565b6060610d8c5f8484611ccb565b5f81815260208181526040808320546001600160401b03168352600382528083208484529091529020805460609190610ea790612885565b826113918161168a565b611399575f80fd5b5f84815260208181526040808320546001600160401b031680845260048352818420888552909252822080549192916113d190612885565b80601f01602080910402602001604051908101604052809291908181526020018280546113fd90612885565b80156114485780601f1061141f57610100808354040283529160200191611448565b820191905f5260205f20905b81548152906001019060200180831161142b57829003601f168201915b505050506001600160401b0384165f9081526004602090815260408083208b8452909152902091925061147e9050858783612901565b50857f8f15ed4b723ef428f250961da8315675b507046737e19319fc1a4d81bfe87f858287876040516114b393929190612b1e565b60405180910390a2505050505050565b816114cd8161168a565b6114d5575f80fd5b6114e483603c61038185611e88565b505050565b60606114f6848484611ccb565b949350505050565b826115088161168a565b611510575f80fd5b5f84815260208181526040808320546001600160401b031683526007825280832087845282528083206001600160e01b031987168085529083529281902080546001600160a01b0319166001600160a01b038716908117909155905190815286917f7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa910160405180910390a350505050565b5f82815260208181526040808320546001600160401b0316835260028252808320858452825280832084845290915290208054606091906115e290612885565b80601f016020809104026020016040519081016040528092919081815260200182805461160e90612885565b80156116595780601f1061163057610100808354040283529160200191611659565b820191905f5260205f20905b81548152906001019060200180831161163c57829003601f168201915b5050505050905092915050565b5f6001600160e01b03198216631674750f60e21b1480610570575061057082611eb8565b5f336001600160a01b037f0000000000000000000000004fbf7b2f171336958be5d15ff762a5cff53635681614806116ea5750336001600160a01b037f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5616145b156116f757506001919050565b6040516302571be360e01b8152600481018390525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa15801561175c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117809190612b4d565b90507f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b0316816001600160a01b031603611845576040516331a9108f60e11b8152600481018490527f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b031690636352211e90602401602060405180830381865afa15801561181e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118429190612b4d565b90505b6001600160a01b03811633148061187e57506001600160a01b0381165f908152600b6020908152604080832033845290915290205460ff165b80610d8c57506001600160a01b0381165f908152600c60209081526040808320868452825280832033845290915290205460ff16610d8c565b6118ff6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261057081611bc9565b602081015181516060916105709161192a9082611edc565b84519190611f33565b60a081015160c08201516060916105709161192a908290612863565b5f81518351148015610d8c5750610d8c835f845f8751611fa7565b865160208801205f61197d878787611f33565b90508315611aa1576001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c168452909152902080546119c690612885565b159050611a23576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611a0783612b68565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091528120611a62916121f9565b897f03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a12078a8a604051611a94929190612b84565b60405180910390a261076c565b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c16845290915290208054611ae290612885565b90505f03611b40576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611b2483612ba9565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091529020611b808282612a5f565b50897f52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b8a8a84604051611bb593929190612bbf565b60405180910390a250505050505050505050565b60c08101516020820181905281515111611be05750565b5f611bf2825f01518360200151611edc565b8260200151611c019190612bed565b8251909150611c109082611fc9565b61ffff166040830152611c24600282612bed565b8251909150611c339082611fc9565b61ffff166060830152611c47600282612bed565b8251909150611c569082611fef565b63ffffffff166080830152611c6c600482612bed565b82519091505f90611c7d9083611fc9565b61ffff169050611c8e600283612bed565b60a084018190529150611ca18183612bed565b60c0909301929092525050565b5f8151601414611cbc575f80fd5b5060200151600160601b900490565b6060816001600160401b03811115611ce557611ce56124c6565b604051908082528060200260200182016040528015611d1857816020015b6060815260200190600190039081611d035790505b5090505f5b82811015611e80578415611dd8575f848483818110611d3e57611d3e612a13565b9050602002810190611d509190612c00565b611d5f91602491600491612c42565b611d6891612c69565b9050858114611dd65760405162461bcd60e51b815260206004820152603460248201527f6d756c746963616c6c3a20416c6c207265636f726473206d7573742068617665604482015273040c240dac2e8c6d0d2dcce40dcc2dacad0c2e6d60631b60648201526084016111b6565b505b5f8030868685818110611ded57611ded612a13565b9050602002810190611dff9190612c00565b604051611e0d929190612876565b5f60405180830381855af49150503d805f8114611e45576040519150601f19603f3d011682016040523d82523d5f602084013e611e4a565b606091505b509150915081611e58575f80fd5b80848481518110611e6b57611e6b612a13565b60209081029190910101525050600101611d1d565b509392505050565b604080516014808252818301909252606091602082018180368337505050600160601b9290920260208301525090565b5f6001600160e01b0319821663c869023360e01b1480610570575061057082612017565b5f815b83518110611eef57611eef612c86565b5f611efa858361203b565b60ff169050611f0a816001612bed565b611f149083612bed565b9150805f03611f235750611f29565b50611edf565b6114f68382612863565b8251606090611f428385612bed565b1115611f4c575f80fd5b5f826001600160401b03811115611f6557611f656124c6565b6040519080825280601f01601f191660200182016040528015611f8f576020820181803683370190505b50905060208082019086860101610a7c82828761205e565b5f611fb38484846120b3565b611fbe8787856120b3565b149695505050505050565b81515f90611fd8836002612bed565b1115611fe2575f80fd5b50016002015161ffff1690565b81515f90611ffe836004612bed565b1115612008575f80fd5b50016004015163ffffffff1690565b5f6001600160e01b0319821663691f343160e01b14806105705750610570826120d5565b5f82828151811061204e5761204e612a13565b016020015160f81c905092915050565b602081106120965781518352612075602084612bed565b9250612082602083612bed565b915061208f602082612863565b905061205e565b905182516020929092036101000a5f190180199091169116179052565b82515f906120c18385612bed565b11156120cb575f80fd5b5091016020012090565b5f6001600160e01b031982166304928c6760e21b14806105705750610570825f6001600160e01b0319821663547d2b4160e11b148061212457506001600160e01b03198216635c98042b60e01b145b806105705750610570825f6001600160e01b0319821663bc1c58d160e01b14806105705750610570825f6001600160e01b03198216631d9dabef60e11b148061217d57506001600160e01b031982166378e5bf0360e11b145b806105705750610570825f6001600160e01b03198216631101d5ab60e11b14806105705750610570825f6001600160e01b0319821663d700ff3360e01b14806105705750610570825f6001600160e01b03198216634fbf043360e01b148061057057506301ffc9a760e01b6001600160e01b0319831614610570565b50805461220590612885565b5f825580601f10612214575050565b601f0160209004905f5260205f20908101906122309190612233565b50565b5b80821115612247575f8155600101612234565b5090565b80356001600160e01b031981168114612262575f80fd5b919050565b5f60208284031215612277575f80fd5b610d8c8261224b565b5f8083601f840112612290575f80fd5b5081356001600160401b038111156122a6575f80fd5b602083019150836020828501011115610bae575f80fd5b5f805f604084860312156122cf575f80fd5b8335925060208401356001600160401b038111156122eb575f80fd5b6122f786828701612280565b9497909650939450505050565b5f805f805f60608688031215612318575f80fd5b8535945060208601356001600160401b0380821115612335575f80fd5b61234189838a01612280565b90965094506040880135915080821115612359575f80fd5b5061236688828901612280565b969995985093965092949392505050565b5f8060408385031215612388575f80fd5b823591506123986020840161224b565b90509250929050565b5f80604083850312156123b2575f80fd5b50508035926020909101359150565b5f5b838110156123db5781810151838201526020016123c3565b50505f910152565b5f81518084526123fa8160208601602086016123c1565b601f01601f19169290920160200192915050565b828152604060208201525f6114f660408301846123e3565b5f805f60608486031215612438575f80fd5b505081359360208301359350604090920135919050565b5f6020828403121561245f575f80fd5b5035919050565b602081525f610d8c60208301846123e3565b5f805f806060858703121561248b575f80fd5b843593506020850135925060408501356001600160401b038111156124ae575f80fd5b6124ba87828801612280565b95989497509550505050565b634e487b7160e01b5f52604160045260245ffd5b5f805f606084860312156124ec575f80fd5b833592506020840135915060408401356001600160401b0380821115612510575f80fd5b818601915086601f830112612523575f80fd5b813581811115612535576125356124c6565b604051601f8201601f19908116603f0116810190838211818310171561255d5761255d6124c6565b81604052828152896020848701011115612575575f80fd5b826020860160208301375f6020848301015280955050505050509250925092565b6001600160a01b0381168114612230575f80fd5b80358015158114612262575f80fd5b5f80604083850312156125ca575f80fd5b82356125d581612596565b9150612398602084016125aa565b5f805f606084860312156125f5575f80fd5b83359250602084013561260781612596565b9150612615604085016125aa565b90509250925092565b5f805f60608486031215612630575f80fd5b8335925060208401359150604084013561ffff8116811461264f575f80fd5b809150509250925092565b5f805f6060848603121561266c575f80fd5b833561267781612596565b925060208401359150604084013561264f81612596565b5f8083601f84011261269e575f80fd5b5081356001600160401b038111156126b4575f80fd5b6020830191508360208260051b8501011115610bae575f80fd5b5f80602083850312156126df575f80fd5b82356001600160401b038111156126f4575f80fd5b6127008582860161268e565b90969095509350505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b8281101561276157603f1988860301845261274f8583516123e3565b94509285019290850190600101612733565b5092979650505050505050565b5f806040838503121561277f575f80fd5b82359150602083013561279181612596565b809150509250929050565b5f805f604084860312156127ae575f80fd5b8335925060208401356001600160401b038111156127ca575f80fd5b6122f78682870161268e565b5f805f606084860312156127e8575f80fd5b833592506127f86020850161224b565b9150604084013561264f81612596565b5f8060408385031215612819575f80fd5b823561282481612596565b9150602083013561279181612596565b5f82516128458184602087016123c1565b9190910192915050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156105705761057061284f565b818382375f9101908152919050565b600181811c9082168061289957607f821691505b6020821081036128b757634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156114e457805f5260205f20601f840160051c810160208510156128e25750805b601f840160051c820191505b81811015611149575f81556001016128ee565b6001600160401b03831115612918576129186124c6565b61292c836129268354612885565b836128bd565b5f601f84116001811461295d575f85156129465750838201355b5f19600387901b1c1916600186901b178355611149565b5f83815260208120601f198716915b8281101561298c578685013582556020948501946001909201910161296c565b50868210156129a8575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b604081525f6129f56040830186886129ba565b8281036020840152612a088185876129ba565b979650505050505050565b634e487b7160e01b5f52603260045260245ffd5b602081525f6114f66020830184866129ba565b5f6001600160401b03808316818103612a5557612a5561284f565b6001019392505050565b81516001600160401b03811115612a7857612a786124c6565b612a8c81612a868454612885565b846128bd565b602080601f831160018114612abf575f8415612aa85750858301515b5f19600386901b1c1916600185901b178555612b16565b5f85815260208120601f198616915b82811015612aed57888601518255948401946001909101908401612ace565b5085821015612b0a57878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b604081525f612b3060408301866123e3565b8281036020840152612b438185876129ba565b9695505050505050565b5f60208284031215612b5d575f80fd5b8151610d8c81612596565b5f61ffff821680612b7b57612b7b61284f565b5f190192915050565b604081525f612b9660408301856123e3565b905061ffff831660208301529392505050565b5f61ffff808316818103612a5557612a5561284f565b606081525f612bd160608301866123e3565b61ffff851660208401528281036040840152612b4381856123e3565b808201808211156105705761057061284f565b5f808335601e19843603018112612c15575f80fd5b8301803591506001600160401b03821115612c2e575f80fd5b602001915036819003821315610bae575f80fd5b5f8085851115612c50575f80fd5b83861115612c5c575f80fd5b5050820193919092039150565b80356020831015610570575f19602084900360031b1b1692915050565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{}},"0xf3810eb7d64d1c11ae12727d957c6202b24492f5":{"nonce":1,"balance":"0x0","code":"0x6080604052348015600e575f80fd5b50600436106030575f3560e01c806350d25bcd146034578063e5c19b2d146048575b5f80fd5b5f5460405190815260200160405180910390f35b605760533660046059565b5f55565b005b5f602082840312156068575f80fd5b503591905056fea164736f6c6343000818000a","storage":{"0x0":"0x5f5e100"}},"0xf670681605efc4efc804f5a9b97ee89520473d56":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c80638da5cb5b11610088578063c66485b211610063578063c66485b2146101da578063da8c229e146101ed578063e0dba60f1461021f578063f2fde38b14610232575f80fd5b80638da5cb5b146101a4578063bffbe61c146101b4578063c47f0027146101c7575f80fd5b806365669631116100c35780636566963114610161578063715018a6146101745780637a806d6b1461017e578063828eab0e14610191575f80fd5b80630f5a5466146100e95780631e83409a1461010f5780633f15457f14610122575b5f80fd5b6100fc6100f7366004610958565b610245565b6040519081526020015b60405180910390f35b6100fc61011d36600461098f565b610258565b6101497f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a981565b6040516001600160a01b039091168152602001610106565b6100fc61016f3660046109aa565b610279565b61017c610526565b005b6100fc61018c366004610a8f565b610539565b600254610149906001600160a01b031681565b5f546001600160a01b0316610149565b6100fc6101c236600461098f565b6105ae565b6100fc6101d5366004610b00565b610608565b61017c6101e836600461098f565b610624565b61020f6101fb36600461098f565b60016020525f908152604090205460ff1681565b6040519015158152602001610106565b61017c61022d366004610b47565b6106e4565b61017c61024036600461098f565b61074a565b5f610251338484610279565b9392505050565b6002545f9061027390339084906001600160a01b0316610279565b92915050565b5f836001600160a01b0381163314806102a05750335f9081526001602052604090205460ff165b80610334575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063e985e9c590604401602060405180830381865afa158015610310573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103349190610b73565b806103435750610343816107c3565b6103e05760405162461bcd60e51b815260206004820152605b60248201527f526576657273655265676973747261723a2043616c6c6572206973206e6f742060448201527f6120636f6e74726f6c6c6572206f7220617574686f726973656420627920616460648201527f6472657373206f7220746865206164647265737320697473656c660000000000608482015260a4015b60405180910390fd5b5f6103ea8661083a565b604080517f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e2602080830191909152818301849052825180830384018152606090920192839052815191012091925081906001600160a01b038916907f6ada868dd3058cf77a48a74489fd7963688e5464b2b0fa957ace976243270e92905f90a36040516305ef2c7f60e41b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26004820152602481018390526001600160a01b03878116604483015286811660648301525f60848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610505575f80fd5b505af1158015610517573d5f803e3d5ffd5b50929998505050505050505050565b61052e61089c565b6105375f6108f5565b565b5f80610546868686610279565b604051637737221360e01b81529091506001600160a01b038516906377372213906105779084908790600401610b8e565b5f604051808303815f87803b15801561058e575f80fd5b505af11580156105a0573d5f803e3d5ffd5b509298975050505050505050565b5f7f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26105d98361083a565b604080516020810193909352820152606001604051602081830303815290604052805190602001209050919050565b6002545f9061027390339081906001600160a01b031685610539565b61062c61089c565b6001600160a01b03811661069b5760405162461bcd60e51b815260206004820152603060248201527f526576657273655265676973747261723a205265736f6c76657220616464726560448201526f07373206d757374206e6f7420626520360841b60648201526084016103d7565b600280546001600160a01b0319166001600160a01b0383169081179091556040517feae17a84d9eb83d8c8eb317f9e7d64857bc363fa51674d996c023f4340c577cf905f90a250565b6106ec61089c565b6001600160a01b0382165f81815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b61075261089c565b6001600160a01b0381166107b75760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016103d7565b6107c0816108f5565b50565b5f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801561081e575060408051601f3d908101601f1916820190925261081b91810190610be2565b60015b61082957505f919050565b6001600160a01b0316331492915050565b5f60285b8015610891575f19016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a81536010909204915f19016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a815360108304925061083e565b505060285f20919050565b5f546001600160a01b031633146105375760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016103d7565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146107c0575f80fd5b5f8060408385031215610969575f80fd5b823561097481610944565b9150602083013561098481610944565b809150509250929050565b5f6020828403121561099f575f80fd5b813561025181610944565b5f805f606084860312156109bc575f80fd5b83356109c781610944565b925060208401356109d781610944565b915060408401356109e781610944565b809150509250925092565b634e487b7160e01b5f52604160045260245ffd5b5f82601f830112610a15575f80fd5b813567ffffffffffffffff80821115610a3057610a306109f2565b604051601f8301601f19908116603f01168101908282118183101715610a5857610a586109f2565b81604052838152866020858801011115610a70575f80fd5b836020870160208301375f602085830101528094505050505092915050565b5f805f8060808587031215610aa2575f80fd5b8435610aad81610944565b93506020850135610abd81610944565b92506040850135610acd81610944565b9150606085013567ffffffffffffffff811115610ae8575f80fd5b610af487828801610a06565b91505092959194509250565b5f60208284031215610b10575f80fd5b813567ffffffffffffffff811115610b26575f80fd5b610b3284828501610a06565b949350505050565b80151581146107c0575f80fd5b5f8060408385031215610b58575f80fd5b8235610b6381610944565b9150602083013561098481610b3a565b5f60208284031215610b83575f80fd5b815161025181610b3a565b8281525f60206040602084015283518060408501525f5b81811015610bc157858101830151858201606001528201610ba5565b505f606082860101526060601f19601f830116850101925050509392505050565b5f60208284031215610bf2575f80fd5b81516102518161094456fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2":"0x9df67c91f1bfcb4d966cf764e9218685e7c59e8a","0x1f5b7623941da966ad7183d9cbb6db584f6d4add26919ac31a2d3f19a164e7e1":"0x1","0xbe5de2149ce76ca5934fa63455cd675fd52e2d30f3328985d298a627ca0f05e9":"0x1"}},"0xf8c26340c1eaea6c7ff1760b25005e1306953572":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061010b5760003560e01c80638c87a4ea116100a2578063b87abc1111610071578063b87abc1114610244578063c597407314610257578063ce92b33e1461026a578063e837ae741461027d578063ec129eea146102905761010b565b80638c87a4ea146101ea5780638f69c188146101fd578063a3557e6c14610210578063b85afd28146102235761010b565b806347c81699116100de57806347c8169914610181578063672b9f81146101945780636ccbae5f146101b55780637b103999146101d55761010b565b80631bd8cc1a146101105780631be5e7ed146101395780632c3d376d14610159578063310bd74b1461016c575b600080fd5b61012361011e3660046117b4565b6102a3565b6040516101309190611eee565b60405180910390f35b61014c610147366004611aec565b6104f2565b6040516101309190611fd6565b61014c610167366004611b21565b610673565b61017f61017a366004611b21565b610714565b005b61017f61018f3660046119b5565b6107c0565b6101a76101a2366004611b94565b6108ef565b604051610130929190611fe7565b6101c86101c3366004611b21565b6109c3565b604051610130919061204c565b6101dd6109d5565b6040516101309190611ea9565b6101236101f836600461191d565b6109e5565b61017f61020b366004611878565b610a74565b61017f61021e366004611878565b610af0565b610236610231366004611951565b610b1b565b604051610130929190611eff565b61017f610252366004611b3f565b610ca9565b61017f610265366004611a39565b610d43565b61017f610278366004611808565b610df9565b61017f61028b366004611808565b610e97565b61017f61029e366004611808565b610f4e565b60015460405163b3f9e4cb60e01b815260609183916001600160a01b039091169063b3f9e4cb906102d890849060040161204c565b60206040518083038186803b1580156102f057600080fd5b505afa158015610304573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610328919081019061178e565b6001600160a01b0316306001600160a01b0316146103615760405162461bcd60e51b81526004016103589061201c565b60405180910390fd5b604080518581526020808702820101909152849060609082801561039957816020015b60608152602001906001900390816103845790505b506000868152600360205260408120549192505b838110156104e557600087815260026020908152604080832085845290915290208989838181106103da57fe5b602002820190508035601e19368490030181126103f657600080fd5b909101602081019150356001600160401b0381111561041457600080fd5b3681900382131561042457600080fd5b604051610432929190611e70565b9081526040805160209281900383018120805460026001821615610100026000190190911604601f810185900485028301850190935282825290929091908301828280156104c15780601f10610496576101008083540402835291602001916104c1565b820191906000526020600020905b8154815290600101906020018083116104a457829003601f168201915b50505050508382815181106104d257fe5b60209081029190910101526001016103ad565b5090979650505050505050565b60015460405163b3f9e4cb60e01b815260609183916001600160a01b039091169063b3f9e4cb9061052790849060040161204c565b60206040518083038186803b15801561053f57600080fd5b505afa158015610553573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610577919081019061178e565b6001600160a01b0316306001600160a01b0316146105a75760405162461bcd60e51b81526004016103589061201c565b6000838152600260209081526040808320600383528184205484529091529081902090516105d6908690611e7d565b9081526040805160209281900383018120805460026001821615610100026000190190911604601f810185900485028301850190935282825290929091908301828280156106655780601f1061063a57610100808354040283529160200191610665565b820191906000526020600020905b81548152906001019060200180831161064857829003601f168201915b505050505091505092915050565b60008181526004602090815260409182902080548351601f60026000196101006001861615020190931692909204918201849004840281018401909452808452606093928301828280156107085780601f106106dd57610100808354040283529160200191610708565b820191906000526020600020905b8154815290600101906020018083116106eb57829003601f168201915b50505050509050919050565b60015460405163430c208160e01b815282916001600160a01b03169063430c2081906107469033908590600401611ec5565b60206040518083038186803b15801561075e57600080fd5b505afa158015610772573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506107969190810190611997565b6107b25760405162461bcd60e51b81526004016103589061202c565b6107bc4283610fec565b5050565b60015460405163430c208160e01b815282916001600160a01b03169063430c2081906107f29033908590600401611ec5565b60206040518083038186803b15801561080a57600080fd5b505afa15801561081e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506108429190810190611997565b61085e5760405162461bcd60e51b81526004016103589061202c565b6108e7600360008481526020019081526020016000205487878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061108e915050565b505050505050565b60015460405163b3f9e4cb60e01b8152606091829184916001600160a01b03169063b3f9e4cb9061092490849060040161204c565b60206040518083038186803b15801561093c57600080fd5b505afa158015610950573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610974919081019061178e565b6001600160a01b0316306001600160a01b0316146109a45760405162461bcd60e51b81526004016103589061201c565b6109ad85610673565b92506109b983856104f2565b9150509250929050565b60009081526020819052604090205490565b6001546001600160a01b03165b90565b6060600082519050606081604051908082528060200260200182016040528015610a2357816020015b6060815260200190600190039081610a0e5790505b50905060005b82811015610a6c57610a4d858281518110610a4057fe5b6020026020010151610673565b828281518110610a5957fe5b6020908102919091010152600101610a29565b509392505050565b610acf63ce92b33e60e01b858585604051602401610a9493929190611f24565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092178252519020838361129f565b600082815260036020526040902054610aea908585856113c3565b50505050565b610b1063ec129eea60e01b858585604051602401610a9493929190611f24565b610aea84848461140a565b60015460405163b3f9e4cb60e01b8152606091829184916001600160a01b03169063b3f9e4cb90610b5090849060040161204c565b60206040518083038186803b158015610b6857600080fd5b505afa158015610b7c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610ba0919081019061178e565b6001600160a01b0316306001600160a01b031614610bd05760405162461bcd60e51b81526004016103589061201c565b8451604080518281526020808402820101909152818015610c0557816020015b6060815260200190600190039081610bf05790505b50935080604051908082528060200260200182016040528015610c3c57816020015b6060815260200190600190039081610c275790505b50925060005b81811015610c9f57610c67878281518110610c5957fe5b6020026020010151876108ef565b8651879084908110610c7557fe5b60200260200101868481518110610c8857fe5b602090810291909101019190915252600101610c42565b5050509250929050565b610d3463310bd74b60e01b84604051602401610cc5919061204c565b60408051601f19818403018152918152602080830180516001600160e01b03166001600160e01b031990951694909417845291519092208251601f8601839004830281018301909352848352918691869086908190840183828082843760009201919091525061129f92505050565b610d3e4284610fec565b505050565b610d676347c8169960e01b8888888888604051602401610cc5959493929190611f96565b610df0600360008581526020019081526020016000205488888080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8c018190048102820181019092528a815292508a915089908190840183828082843760009201919091525089925061108e915050565b50505050505050565b60015460405163430c208160e01b815282916001600160a01b03169063430c208190610e2b9033908590600401611ec5565b60206040518083038186803b158015610e4357600080fd5b505afa158015610e57573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610e7b9190810190611997565b610acf5760405162461bcd60e51b81526004016103589061202c565b6005546040516355138f0d60e11b81526001600160a01b039091169063aa271e1a90610ec7903390600401611eb7565b60206040518083038186803b158015610edf57600080fd5b505afa158015610ef3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610f179190810190611997565b610f335760405162461bcd60e51b81526004016103589061203c565b600081815260036020526040902054610d3e908484846113c3565b60015460405163430c208160e01b815282916001600160a01b03169063430c208190610f809033908590600401611ec5565b60206040518083038186803b158015610f9857600080fd5b505afa158015610fac573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610fd09190810190611997565b610b105760405162461bcd60e51b81526004016103589061202c565b600081815260036020526040808220849055600154905163538361a760e01b81526001600160a01b039091169163538361a79161102d91859160040161205a565b600060405180830381600087803b15801561104757600080fd5b505af115801561105b573d6000803e3d6000fd5b50506040518392507f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9150600090a25050565b825160208085019190912060008381526002835260408082208883529093528281209251919290916110c1908790611e7d565b908152604051602091819003919091018120546001805463538361a760e01b84526002918316156101000260001901909216041592506001600160a01b03169063538361a7906111179086908690600401612075565b600060405180830381600087803b15801561113157600080fd5b505af1158015611145573d6000803e3d6000fd5b50505060008481526002602090815260408083208a8452909152908190209051869250611173908890611e7d565b90815260200160405180910390209080519060200190611194929190611521565b50600082815260046020526040902054600260001961010060018416150201909116046111dc57600082815260046020908152604090912086516111da92880190611521565b505b801561123157846040516111f09190611e7d565b6040518091039020837f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f86876040516112289190611fd6565b60405180910390a35b8360405161123f9190611e7d565b6040518091039020856040516112559190611e7d565b6040518091039020847f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d92888860405161128f929190611fe7565b60405180910390a4505050505050565b6000828152602081815260408083205490519092916112f59185916112e9916112ce918a913091899101611e39565b60405160208183030381529060405280519060200120611414565b9063ffffffff61144416565b90506001600160a01b0381161580159061138c575060015460405163430c208160e01b81526001600160a01b039091169063430c20819061133c9084908890600401611ee0565b60206040518083038186803b15801561135457600080fd5b505afa158015611368573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061138c9190810190611997565b6113a85760405162461bcd60e51b81526004016103589061200c565b50505060009081526020819052604090208054600101905550565b825160005b818110156108e757611402868683815181106113e057fe5b60200260200101518684815181106113f457fe5b60200260200101518661108e565b6001016113c8565b610f334282610fec565b6000816040516020016114279190611e89565b604051602081830303815290604052805190602001209050919050565b600081516041146114575750600061151b565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a082111561149d576000935050505061151b565b8060ff16601b141580156114b557508060ff16601c14155b156114c6576000935050505061151b565b600186828585604051600081526020016040526040516114e99493929190611f58565b6020604051602081039080840390855afa15801561150b573d6000803e3d6000fd5b5050506020604051035193505050505b92915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061156257805160ff191683800117855561158f565b8280016001018555821561158f579182015b8281111561158f578251825591602001919060010190611574565b5061159b92915061159f565b5090565b6109e291905b8082111561159b57600081556001016115a5565b805161151b816121a4565b60008083601f8401126115d657600080fd5b5081356001600160401b038111156115ed57600080fd5b60208301915083602082028301111561160557600080fd5b9250929050565b600082601f83011261161d57600080fd5b813561163061162b826120a9565b612083565b81815260209384019390925082018360005b8381101561166e57813586016116588882611734565b8452506020928301929190910190600101611642565b5050505092915050565b600082601f83011261168957600080fd5b813561169761162b826120a9565b915081818352602084019350602081019050838560208402820111156116bc57600080fd5b60005b8381101561166e57816116d28882611783565b84525060209283019291909101906001016116bf565b805161151b816121bb565b60008083601f84011261170557600080fd5b5081356001600160401b0381111561171c57600080fd5b60208301915083600182028301111561160557600080fd5b600082601f83011261174557600080fd5b813561175361162b826120c9565b9150808252602083016020830185838301111561176f57600080fd5b61177a83828461214b565b50505092915050565b803561151b816121c4565b6000602082840312156117a057600080fd5b60006117ac84846115b9565b949350505050565b6000806000604084860312156117c957600080fd5b83356001600160401b038111156117df57600080fd5b6117eb868287016115c4565b935093505060206117fe86828701611783565b9150509250925092565b60008060006060848603121561181d57600080fd5b83356001600160401b0381111561183357600080fd5b61183f8682870161160c565b93505060208401356001600160401b0381111561185b57600080fd5b6118678682870161160c565b92505060406117fe86828701611783565b6000806000806080858703121561188e57600080fd5b84356001600160401b038111156118a457600080fd5b6118b08782880161160c565b94505060208501356001600160401b038111156118cc57600080fd5b6118d88782880161160c565b93505060406118e987828801611783565b92505060608501356001600160401b0381111561190557600080fd5b61191187828801611734565b91505092959194509250565b60006020828403121561192f57600080fd5b81356001600160401b0381111561194557600080fd5b6117ac84828501611678565b6000806040838503121561196457600080fd5b82356001600160401b0381111561197a57600080fd5b61198685828601611678565b92505060206109b985828601611783565b6000602082840312156119a957600080fd5b60006117ac84846116e8565b6000806000806000606086880312156119cd57600080fd5b85356001600160401b038111156119e357600080fd5b6119ef888289016116f3565b955095505060208601356001600160401b03811115611a0d57600080fd5b611a19888289016116f3565b93509350506040611a2c88828901611783565b9150509295509295909350565b60008060008060008060006080888a031215611a5457600080fd5b87356001600160401b03811115611a6a57600080fd5b611a768a828b016116f3565b975097505060208801356001600160401b03811115611a9457600080fd5b611aa08a828b016116f3565b95509550506040611ab38a828b01611783565b93505060608801356001600160401b03811115611acf57600080fd5b611adb8a828b016116f3565b925092505092959891949750929550565b60008060408385031215611aff57600080fd5b82356001600160401b03811115611b1557600080fd5b61198685828601611734565b600060208284031215611b3357600080fd5b60006117ac8484611783565b600080600060408486031215611b5457600080fd5b6000611b608686611783565b93505060208401356001600160401b03811115611b7c57600080fd5b611b88868287016116f3565b92509250509250925092565b60008060408385031215611ba757600080fd5b60006119868585611783565b6000611bbf8383611ccb565b9392505050565b611bcf8161212a565b82525050565b611bcf81612108565b611bcf611bea82612108565b612183565b6000611bfa826120f6565b611c0481856120fa565b935083602082028501611c16856120f0565b8060005b85811015611c505784840389528151611c338582611bb3565b9450611c3e836120f0565b60209a909a0199925050600101611c1a565b5091979650505050505050565b611bcf816109e2565b611bcf611c72826109e2565b6109e2565b611bcf81612135565b6000611c8c83856120fa565b9350611c9983858461214b565b611ca283612194565b9093019392505050565b6000611cb88385612103565b9350611cc583858461214b565b50500190565b6000611cd6826120f6565b611ce081856120fa565b9350611cf0818560208601612157565b611ca281612194565b6000611d04826120f6565b611d0e8185612103565b9350611d1e818560208601612157565b9290920192915050565b6000611d35601c83612103565b7f19457468657265756d205369676e6564204d6573736167653a0a3332000000008152601c0192915050565b6000611d6e6011836120fa565b70494e56414c49445f5349474e415455524560781b815260200192915050565b6000611d9b601d836120fa565b7f5245534f4c5645525f44455441434845445f46524f4d5f444f4d41494e000000815260200192915050565b6000611dd4601f836120fa565b7f53454e4445525f49535f4e4f545f415050524f5645445f4f525f4f574e455200815260200192915050565b6000611e0d6014836120fa565b7329a2a72222a92fa4a9afa727aa2fa6a4a72a22a960611b815260200192915050565b611bcf81612124565b6000611e458286611c66565b602082019150611e558285611bde565b601482019150611e658284611c66565b506020019392505050565b60006117ac828486611cac565b6000611bbf8284611cf9565b6000611e9482611d28565b9150611ea08284611c66565b50602001919050565b6020810161151b8284611bd5565b6020810161151b8284611bc6565b60408101611ed38285611bc6565b611bbf6020830184611c5d565b60408101611ed38285611bd5565b60208082528101611bbf8184611bef565b60408082528101611f108185611bef565b905081810360208301526117ac8184611bef565b60608082528101611f358186611bef565b90508181036020830152611f498185611bef565b90506117ac6040830184611c5d565b60808101611f668287611c5d565b611f736020830186611e30565b611f806040830185611c5d565b611f8d6060830184611c5d565b95945050505050565b60608082528101611fa8818789611c80565b90508181036020830152611fbd818587611c80565b9050611fcc6040830184611c5d565b9695505050505050565b60208082528101611bbf8184611ccb565b60408082528101611ff88185611ccb565b905081810360208301526117ac8184611ccb565b6020808252810161151b81611d61565b6020808252810161151b81611d8e565b6020808252810161151b81611dc7565b6020808252810161151b81611e00565b6020810161151b8284611c5d565b604081016120688285611c5d565b611bbf6020830184611c77565b60408101611ed38285611c5d565b6040518181016001600160401b03811182821017156120a157600080fd5b604052919050565b60006001600160401b038211156120bf57600080fd5b5060209081020190565b60006001600160401b038211156120df57600080fd5b506020601f91909101601f19160190565b60200190565b5190565b90815260200190565b919050565b600061151b82612118565b151590565b6001600160a01b031690565b60ff1690565b600061151b82612140565b600061151b826109e2565b600061151b82612108565b82818337506000910152565b60005b8381101561217257818101518382015260200161215a565b83811115610aea5750506000910152565b600061151b82600061151b8261219e565b601f01601f191690565b60601b90565b6121ad81612108565b81146121b857600080fd5b50565b6121ad81612113565b6121ad816109e256fea365627a7a723158207a1d8dfd286d14fcafd1812a4c44813691ac746a5a23fa711ac5551c9509654d6c6578706572696d656e74616cf564736f6c634300050c0040","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x5":"0x4a3c194eb88966178bfdd81744dddafed611b830"}},"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa":{"nonce":93,"balance":"0x35aac60bbae01d424b","code":"0x","storage":{}}},"best_block_number":"0x5d"} \ No newline at end of file +{"block":{"number":"0x5d","coinbase":"0x0000000000000000000000000000000000000000","timestamp":"0x664cf48a","gas_limit":"0x6691b7","basefee":"0x1b818","difficulty":"0x0","prevrandao":"0x0000000000000000000000000000000000000000000000000000000000000000","blob_excess_gas_and_price":{"excess_blob_gas":0,"blob_gasprice":1}},"accounts":{"0x0000000000000000000000000000000000000000":{"nonce":0,"balance":"0xc968d22370860","code":"0x","storage":{}},"0x00e39a5004299871ab3b00fed5a39a715f181d02":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x66":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x67":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xd178b720229c39de617846f84cf9c8d32a63a23d","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0x0458f653495fb8d9bd0e7df468c2bf76d26c7bd9":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f7e83aee1461002d575b5f80fd5b61004061003b3660046105ba565b610054565b604051901515815260200160405180910390f35b5f601482146100a95760405162461bcd60e51b815260206004820152601860248201527f496e76616c696420736861312068617368206c656e6774680000000000000000604482015260640160405180910390fd5b5f6100ec5f85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101599050565b6bffffffffffffffffffffffff191690505f61013c87878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061018a92505050565b6bffffffffffffffffffffffff1916919091149695505050505050565b81515f90610168836014610621565b1115610172575f80fd5b5001602001516bffffffffffffffffffffffff191690565b5f6040518251602084019350604067ffffffffffffffc0600183011601600982820310600181036101bc576040820191505b50776745230100efcdab890098badcfe001032547600c3d2e1f061020d565b5f8383101561020657508082015192829003926020841015610206575f1960208590036101000a0119165b9392505050565b5f5b82811015610514576102228482896101db565b85526102328460208301896101db565b60208601526040818503106001810361024e5760808286038701535b506040830381146001810361026b57602086018051600887021790525b5060405b60808110156102f357858101603f19810151603719820151601f19830151600b198401516002911891909218189081027ffffffffefffffffefffffffefffffffefffffffefffffffefffffffefffffffe1663800000009091047c010000000100000001000000010000000100000001000000010000000116179052600c0161026f565b5060805b61014081101561037c57858101607f19810151606f19820151603f198301516017198401516004911891909218189081027ffffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffc1663400000009091047c0300000003000000030000000300000003000000030000000300000003161790526018016102f7565b50815f805f5b60508110156104ea576014810480156103b257600181146103d957600281146103fe576003811461042857610449565b600160281b8504600160501b86048118600160781b870416189350635a8279999250610449565b600160281b8504600160781b8604600160501b870418189350636ed9eba19250610449565b600160501b8504600160781b8604818117600160281b8804169116179350638f1bbcdc9250610449565b600160281b8504600160781b8604600160501b87041818935063ca62c1d692505b50601f600160bb1b8504168063ffffffe06001609b1b87041617905080840190508063ffffffff8616019050808301905080600160e01b600484028c015104019050600160a01b8102600160281b860417945050600160501b633fffffff600160521b86041663c00000006604000000000000870416170277ffffffff00ffffffff000000000000ffffffff00ffffffff8516179350600181019050610382565b5050509190910177ffffffff00ffffffff00ffffffff00ffffffff00ffffffff169060400161020f565b50600160601b63ffffffff821667ffffffff000000006101008404166bffffffff00000000000000006201000085041663ffffffff60601b630100000086041663ffffffff60801b6401000000008704161717171702945050505050919050565b5f8083601f840112610585575f80fd5b50813567ffffffffffffffff81111561059c575f80fd5b6020830191508360208285010111156105b3575f80fd5b9250929050565b5f805f80604085870312156105cd575f80fd5b843567ffffffffffffffff808211156105e4575f80fd5b6105f088838901610575565b90965094506020870135915080821115610608575f80fd5b5061061587828801610575565b95989497509550505050565b8082018082111561064057634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x06e2822b8856749ed179c77140dbc5f5a27410a4":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063de8f50a11461002d575b5f80fd5b61004061003b36600461051c565b610054565b604051901515815260200160405180910390f35b5f6060805f61009c60048b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506102e79050565b60ff1690508015610166576100f060058261ffff168c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b925061015f6101008260056105c3565b61ffff908116906005906101169085168d6105e5565b61012091906105e5565b8c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b915061021d565b6101a960058b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250929392505061038b9050565b90506101f460078261ffff168c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b925061021a6102048260076105c3565b61ffff908116906007906101169085168d6105e5565b91505b5f606061026084868a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152506103b192505050565b90925090508180156102d757506102856020825161027e91906105e5565b82906103cb565b60028b8b6040516102979291906105f8565b602060405180830381855afa1580156102b2573d5f803e3d5ffd5b5050506040513d601f19601f820116820180604052508101906102d59190610607565b145b9c9b505050505050505050505050565b5f8282815181106102fa576102fa61061e565b016020015160f81c90505b92915050565b825160609061031a8385610632565b1115610324575f80fd5b5f8267ffffffffffffffff81111561033e5761033e610645565b6040519080825280601f01601f191660200182016040528015610368576020820181803683370190505b509050602080820190868601016103808282876103ed565b509095945050505050565b81515f9061039a836002610632565b11156103a4575f80fd5b50016002015161ffff1690565b5f60606103bf838587610442565b91509150935093915050565b81515f906103da836020610632565b11156103e4575f80fd5b50016020015190565b602081106104255781518352610404602084610632565b9250610411602083610632565b915061041e6020826105e5565b90506103ed565b905182516020929092036101000a5f190180199091169116179052565b5f60605f85518551855188888860405160200161046496959493929190610686565b6040516020818303038152906040529050835167ffffffffffffffff81111561048f5761048f610645565b6040519080825280601f01601f1916602001820160405280156104b9576020820181803683370190505b50915083516020830182516020840160055afa925050935093915050565b5f8083601f8401126104e7575f80fd5b50813567ffffffffffffffff8111156104fe575f80fd5b602083019150836020828501011115610515575f80fd5b9250929050565b5f805f805f8060608789031215610531575f80fd5b863567ffffffffffffffff80821115610548575f80fd5b6105548a838b016104d7565b9098509650602089013591508082111561056c575f80fd5b6105788a838b016104d7565b90965094506040890135915080821115610590575f80fd5b5061059d89828a016104d7565b979a9699509497509295939492505050565b634e487b7160e01b5f52601160045260245ffd5b61ffff8181168382160190808211156105de576105de6105af565b5092915050565b81810381811115610305576103056105af565b818382375f9101908152919050565b5f60208284031215610617575f80fd5b5051919050565b634e487b7160e01b5f52603260045260245ffd5b80820180821115610305576103056105af565b634e487b7160e01b5f52604160045260245ffd5b5f81515f5b81811015610678576020818501810151868301520161065e565b505f93019283525090919050565b8681528560208201528460408201525f6106b56106af6106a96060850188610659565b86610659565b84610659565b9897505050505050505056fea164736f6c6343000818000a","storage":{}},"0x0712e8e819712c3bfdb098ce51c87a4ac0296fd8":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x0930ffb2c192b0c9a9dd2372cf7f2845ef39cbb6":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x65":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x66":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xbe92182cab5b84fd18b34881a0c32771e84f5b8b","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c8121905":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x107733fed96c4cd390c944a31f5425a7fb98ae5e":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x65":"0x556e73746f707061626c6520446f6d61696e7300000000000000000000000026","0x66":"0x5544000000000000000000000000000000000000000000000000000000000004","0x133":"0x68747470733a2f2f6578616d706c652e636f6d2f000000000000000000000028","0x134":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x9c74364589a7bce52d7a232f90c98b979577d9ab711dbe7e9fb985471178bff":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf29a433ca043c2d5f13825944af9d019209f338df87172c6b8012dce3044881":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf319a2ef598111826b455194189a27454a0286226eb066e1116f605e0373b37":"0x0","0x1257bbdf5bed452b3eda1d974a9839972d4d54d7fb1cde6a652e653346cc29b8":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x12c033f2252861b1bd15e9b5c71ef1cf26ca53de15eabc3b49e06f596e8755ec":"0x0","0x1348552952ac59b1c2522e84f684e36775420b449eddcdbd28f217183ed58b09":"0x0","0x149026695ebdd2bd6be0a7006aec5d10ddffbe46be181e4468980ea83c004fe9":"0x0","0x14c854a78d51371251661a408306c75d2515b5d509b295a58205e48267082bdc":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x18f06622a1abedc7bb78fcc98b2375188aef6c03b9247beee780b0b095d60285":"0x0","0x201ef5e312d372e2aeac4cf173b46ad2985127c7381f4f9acae5ebbd3a5e3861":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x2215c0abaeffcb5feae8a439b3185f8fba5dd6d97529a56c7609cd41fafdf5f1":"0x1","0x23513200931f98893f46373666c13964c7a821c5b40da7951b921629acf02735":"0x0","0x23f87654b79c6db28828f317e47d0c8deb9eaa2ea4e213fef901836c85036bf3":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x2e4566d865f2e159531492d7643e25e502917762b29082282ab9dfee8fbf54c7":"0x0","0x31fc31c15d389c5908095d314bb8b258352d51e18ac8a2f7fe15f3a0af519145":"0x0","0x3467fdbb447be3074b11c625b56e54d7ab44f3804bef205b07dd436d707d06d5":"0x0","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x62b11ad5f582a5c5d378fb310125b030042554f1","0x3cd80e7291e5f6dffa9af6eb70d47145a8fdd40acb8d09dfd0cf374e8c239b37":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x3f86c4990e663ffa5011ed38824fca68af7e0592eb22f41aebdec0ce84ee672e":"0x0","0x406aa3bf31381c8a323679af48792dfa2e7aa09dd0eb919e307dc4bf84216ff6":"0x0","0x47ce17acd30cc86e021ac7b23be8138ea767f6da503362aac5888a0679270eed":"0x0","0x4a7983c36f64e6df4d467cf706c128c273d30c24bbb172e251a5740624cc0bd3":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x4c42d98041cda7cb7d56b5d04731bd436366eb9f05c30f43671f1d1e2c0b0fa4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x55926eed7087c8cbfa1492f6d367f5e4c14c8d8cd59e2918c37184091369efb1":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x5b20f40cb5e9e634a90df9a72b516c11cc52281a4d1b7b67e672e2fe544ff22f":"0x0","0x6dac3e1cfae338e10c9c2f5000f6256d09afa83708761042001cea734f470ac1":"0x0","0x6defc32a546a6fb1b745bd1bb04e27085e94f01d7ef79587aee2c80853c43a53":"0x0","0x760b245be050a725a39b4fc089ad474a5fd40efa17101e112d30195d590779b4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x7bee59fcac76da32acb23def57eaaf959a4372a4fc180978fbd54f7a4c4b2f3d":"0x0","0x804aee9448e0b539a009ee7c6dd57e686c72e7b182e9622a42922b245a97e61e":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x825f7f8567cfd669c3beab41edff07d4aa51436123deeb0d3623b6a8fdec893c":"0x0","0x8717a3236e6a948df94444f035834fa8f7c5ee663a29f3580f3ef43ab051d6bd":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8a34e37883baf84417a33bb02eec8d1e43e363f617029800ff166614df3f112f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8bd1acdc45b63f1edf5db0b1444f1c4a6f82bf0a5a0a7231c2dd7b76a2b1e35c":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87":"0x0","0x8ed4e9fbdf86edd9f3eb1c8d4fbfc53a2eb863faf4cf5e0d2b307c0b33030091":"0x0","0x8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x90d72780b77edcd0c8daffbac0b21264679e851b734cb090e2b144eb3a28bb98":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x93fc964857984ff804a65eaceac4062669948f2b651ddc6b71373ad142bf45e0":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x9770fa903e700367e0306ab8fd70a2bb4f049417d341a2f8a2409d8d6a2218d1":"0x0","0xb1016fe231c2ed9dba8c95d2658191823b4b9ffa61a7aea530802c6b2ff27c41":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xbe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafe":"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f","0xbe7c5c707db1c91bd2c84880bb1e177b65886d295d9a62df8edfe38f8066cc81":"0x0","0xc3cd64a46de7309013ddb93a16a3024c2e46fb931e4744edf2610fb119f716f5":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xc563f9d3175978a619bae1a8175d3ea4be91d3890345085c5eb16f83b678a3d9":"0x0","0xc5b5cdb7b939f9d661f58f28c37e10cf71d45dacfea2581c88ae4a17aaf55e6e":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xd386775169d9e0716e9b5b08561984726edaa9febd0ca8e5468ecffa112078c7":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xe3b736cdcc6a09d7e3a05ffb63b11f11c91958d861443c3409d3fd863e8217bd":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xe3e5b75e3dff543bfbfe5b494e4e3243b4d9d0b3d794725cea46c28fe6be50e4":"0x0","0xe7d61626cac95282d296ee7ab5958e3e72e32eb959a7cab1d37c0f9d6d69c18a":"0x1a","0xeca5e1ccaa645ce2be97a867a1f8aeeb63ea833aeb009c0df0553b42b30c683f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf08305746cdba1d0eaa65036694838a3db122973267ffc57739d605c320c680a":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf0d566acc03395f71b37890f455d51d93197adf754ea72aba21427dc66b437df":"0x0","0xf230898ba4fe40c52f958d03013d995f822e25a5d4fae43bbdc6e92623cea0bd":"0x0","0xf245a9962043f44f4af98f9952a3bd29d91eb05418e4bb567b9de8f27e239b13":"0x0","0xf2a19ade13962e8675aecf2fbe51913877912f9e48e899806b6e06e82f9a980f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf2fab50b0b53245ddfa1bcfcdf4c73e209d6921dad704d173cf04cbbadc8e346":"0x0","0xfa6f3ee10d719cb3457d10c539ff3d77b8e56852ea62f68b2f9f85ad691ed6b4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xfff3abb219acc6ef4eed6e93a5682023229370196f352cdf3a71a88d881e3487":"0x0"}},"0x11dd97b7ca847dfb6504e61b7b9eb30f55e554a0":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a424740014610090575b600080fd5b610059610054366004610ba9565b6100b3565b6040516100669190610c98565b60405180910390f35b61008261007d366004610cab565b6101ce565b604051908152602001610066565b6100a361009e366004610ba9565b610332565b6040519015158152602001610066565b606060005a6001546040805163b3f9e4cb60e01b81529088013560048201529192506000916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561010a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061012e9190610cd9565b90506101c26101406020880188610cf6565b8260408901358561015460608c018c610d13565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8f018190048102820181019092528d815292508d91508c90819084018382808284376000920191909152506103fb92505050565b925050505b9392505050565b60025460015460405163b3f9e4cb60e01b8152600481018490526000926001600160a01b0390811692169063b3f9e4cb90602401602060405180830381865afa92505050801561023b575060408051601f3d908101601f1916820190925261023891810190610cd9565b60015b156102435790505b6001600160a01b0381163b156102c557604051636ccbae5f60e01b81526004810184905281906001600160a01b03821690636ccbae5f90602401602060405180830381865afa9250505080156102b6575060408051601f3d908101601f191682019092526102b391810190610d5a565b60015b156102c357949350505050565b505b600254604051636ccbae5f60e01b8152600481018590526001600160a01b0390911690636ccbae5f90602401602060405180830381865afa15801561030e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101c79190610d5a565b6001546040805163b3f9e4cb60e01b815290850135600482015260009182916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa158015610383573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103a79190610cd9565b90506103f26103b586610e0b565b8286868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506104d392505050565b95945050505050565b6060600080876001600160a01b0316866104178b8a898961051f565b6040516104249190610eb5565b60006040518083038160008787f1925050503d8060008114610462576040519150601f19603f3d011682016040523d82523d6000602084013e610467565b606091505b509092509050610478603f87610ed1565b5a1161048657610486610ef3565b6104c682826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506105d4565b9998505050505050505050565b60006104e084848461060d565b8015610514575060608401516020908101516001600160e01b031990811660009081529182905260409091205460e01b1615155b949350505050565b50565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036105b15760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526105c982828661074c565b979650505050505050565b606083156105e35750816101c7565b8251156105f35782518084602001fd5b8160405162461bcd60e51b81526004016105a89190610c98565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015610654573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106789190610d5a565b905060006107268660600151805190602001208688602001516040516020016106c69392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156101c2575085516101c2906001600160a01b03168286610935565b60606001600160e01b0319841663b87abc1160e01b036107cd5760008380602001905181019061077c9190610d5a565b9050848184604051602401610792929190610f09565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915291506101c79050565b6001600160e01b0319841663c597407360e01b03610859576000806000858060200190518101906107fe9190610f67565b925092509250868383838860405160240161081c9493929190610fd4565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293506101c792505050565b6001600160e01b031984166311ed383160e31b036108a85760008060008580602001905181019061088a91906110a6565b925092509250868383838860405160240161081c9493929190611157565b6001600160e01b031984166328d55f9b60e21b036101c7576000806000858060200190518101906108d991906110a6565b92509250925086838383886040516024016108f79493929190611157565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293505050509392505050565b60008060006109448585610a77565b9092509050600081600481111561095d5761095d61117c565b14801561097b5750856001600160a01b0316826001600160a01b0316145b1561098b576001925050506101c7565b600080876001600160a01b0316631626ba7e60e01b88886040516024016109b3929190610f09565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516109f19190610eb5565b600060405180830381855afa9150503d8060008114610a2c576040519150601f19603f3d011682016040523d82523d6000602084013e610a31565b606091505b5091509150818015610a44575080516020145b8015610a6b57508051630b135d3f60e11b90610a699083016020908101908401610d5a565b145b98975050505050505050565b6000808251604103610aad5760208301516040840151606085015160001a610aa187828585610abc565b94509450505050610ab5565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610af35750600090506003610ba0565b8460ff16601b14158015610b0b57508460ff16601c14155b15610b1c5750600090506004610ba0565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610b70573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610b9957600060019250925050610ba0565b9150600090505b94509492505050565b600080600060408486031215610bbe57600080fd5b833567ffffffffffffffff80821115610bd657600080fd5b9085019060808288031215610bea57600080fd5b90935060208501359080821115610c0057600080fd5b818601915086601f830112610c1457600080fd5b813581811115610c2357600080fd5b876020828501011115610c3557600080fd5b6020830194508093505050509250925092565b60005b83811015610c63578181015183820152602001610c4b565b50506000910152565b60008151808452610c84816020860160208601610c48565b601f01601f19169290920160200192915050565b6020815260006101c76020830184610c6c565b600060208284031215610cbd57600080fd5b5035919050565b6001600160a01b038116811461051c57600080fd5b600060208284031215610ceb57600080fd5b81516101c781610cc4565b600060208284031215610d0857600080fd5b81356101c781610cc4565b6000808335601e19843603018112610d2a57600080fd5b83018035915067ffffffffffffffff821115610d4557600080fd5b602001915036819003821315610ab557600080fd5b600060208284031215610d6c57600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610dac57610dac610d73565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ddb57610ddb610d73565b604052919050565b600067ffffffffffffffff821115610dfd57610dfd610d73565b50601f01601f191660200190565b600060808236031215610e1d57600080fd5b610e25610d89565b8235610e3081610cc4565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610e6057600080fd5b840136601f820112610e7157600080fd5b8035610e84610e7f82610de3565b610db2565b8181523684838501011115610e9857600080fd5b818484018583013760009181019093015250606082015292915050565b60008251610ec7818460208701610c48565b9190910192915050565b600082610eee57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b8281526040602082015260006105146040830184610c6c565b600082601f830112610f3357600080fd5b8151610f41610e7f82610de3565b818152846020838601011115610f5657600080fd5b610514826020830160208701610c48565b600080600060608486031215610f7c57600080fd5b835167ffffffffffffffff80821115610f9457600080fd5b610fa087838801610f22565b94506020860151915080821115610fb657600080fd5b50610fc386828701610f22565b925050604084015190509250925092565b608081526000610fe76080830187610c6c565b8281036020840152610ff98187610c6c565b905084604084015282810360608401526105c98185610c6c565b600082601f83011261102457600080fd5b8151602067ffffffffffffffff8083111561104157611041610d73565b8260051b611050838201610db2565b938452858101830193838101908886111561106a57600080fd5b84880192505b85831015610a6b578251848111156110885760008081fd5b6110968a87838c0101610f22565b8352509184019190840190611070565b6000806000606084860312156110bb57600080fd5b835167ffffffffffffffff808211156110d357600080fd5b6110df87838801611013565b945060208601519150808211156110f557600080fd5b50610fc386828701611013565b600081518084526020808501808196508360051b8101915082860160005b8581101561114a578284038952611138848351610c6c565b98850198935090840190600101611120565b5091979650505050505050565b60808152600061116a6080830187611102565b8281036020840152610ff98187611102565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x2":"0xf8c26340c1eaea6c7ff1760b25005e1306953572","0x1e74f978992d7d64ddac400bd4aae9eefd60fa0b8456650273f5f50148803323":"0xa3557e6c","0x23c84c23be8f829809d1b1502c647c6c59fb6b2345b163a2ca3e7d4f9855975c":"0x8f69c188","0xa0286316c9d3cb00f4f54a9f1096cefaa1748bb5a5395e7fa1563568ebb3e6c3":"0xb87abc11","0xdc138de224807be243ee38fe9e746cce5d437a256b87be90b80240e0811ad043":"0xc5974073"}},"0x145908bbcfc7b258e4d4d9a586f6e3249ae80216":{"nonce":1,"balance":"0x0","code":"0x3d5c","storage":{}},"0x17cda4e23f7237277952e075b1c48467aabfacc0":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c806368f9dab21461002d575b5f80fd5b61004061003b36600461088b565b610052565b60405190815260200160405180910390f35b5f61006f6040518060400160405280606081526020015f81525090565b61008e61007c858861090d565b61008790601061090d565b82906101d1565b506100d085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250859392505061023a9050565b5061011287878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250859392505061023a9050565b505f610120825f0151610266565b905083156101bc5760408051808201909152606081525f602090910181905282515261014c825f610650565b5061018e88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250869392505061023a9050565b505f5b848110156101ba576101a4835f8461067f565b5082516101b090610266565b9150600101610191565b505b6001600160601b031916979650505050505050565b60408051808201909152606081525f60208201526101f0602083610920565b1561021857610200602083610920565b61020b90602061093f565b610215908361090d565b91505b506020808301829052604080518085525f815283019091019052815b92915050565b60408051808201909152606081525f602082015261025f83845f0151518485516106b2565b9392505050565b5f6040518251602084019350604067ffffffffffffffc060018301160160098282031060018103610298576040820191505b50776745230100efcdab890098badcfe001032547600c3d2e1f06102e8565b5f8383101561025f5750808201519282900392602084101561025f575f1960208590036101000a0119169392505050565b5f5b828110156105ef576102fd8482896102b7565b855261030d8460208301896102b7565b6020860152604081850310600181036103295760808286038701535b506040830381146001810361034657602086018051600887021790525b5060405b60808110156103ce57858101603f19810151603719820151601f19830151600b198401516002911891909218189081027ffffffffefffffffefffffffefffffffefffffffefffffffefffffffefffffffe1663800000009091047c010000000100000001000000010000000100000001000000010000000116179052600c0161034a565b5060805b61014081101561045757858101607f19810151606f19820151603f198301516017198401516004911891909218189081027ffffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffc1663400000009091047c0300000003000000030000000300000003000000030000000300000003161790526018016103d2565b50815f805f5b60508110156105c55760148104801561048d57600181146104b457600281146104d9576003811461050357610524565b600160281b8504600160501b86048118600160781b870416189350635a8279999250610524565b600160281b8504600160781b8604600160501b870418189350636ed9eba19250610524565b600160501b8504600160781b8604818117600160281b8804169116179350638f1bbcdc9250610524565b600160281b8504600160781b8604600160501b87041818935063ca62c1d692505b50601f600160bb1b8504168063ffffffe06001609b1b87041617905080840190508063ffffffff8616019050808301905080600160e01b600484028c015104019050600160a01b8102600160281b860417945050600160501b633fffffff600160521b86041663c00000006604000000000000870416170277ffffffff00ffffffff000000000000ffffffff00ffffffff851617935060018101905061045d565b5050509190910177ffffffff00ffffffff00ffffffff00ffffffff00ffffffff16906040016102ea565b50600160601b63ffffffff821667ffffffff000000006101008404166bffffffff00000000000000006201000085041663ffffffff60601b630100000086041663ffffffff60801b6401000000008704161717171702945050505050919050565b60408051808201909152606081525f602082015282515161025f9084906001600160601b031985166014610798565b60408051808201909152606081525f60208201526106aa84846001600160601b031985166014610798565b949350505050565b60408051808201909152606081525f602082015282518211156106d3575f80fd5b60208501516106e2838661090d565b1115610715576107158561070587602001518786610700919061090d565b610813565b610710906002610952565b610829565b5f808651805187602083010193508088870111156107335787860182525b505050602084015b60208410610773578051825261075260208361090d565b915061075f60208261090d565b905061076c60208561093f565b935061073b565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b60408051808201909152606081525f602082015260208501516107bb858461090d565b11156107cf576107cf85610705868561090d565b5f6001836101000a0390508260200360080284901c93508551838682010185831982511617815250805184870111156108085783860181525b509495945050505050565b5f81831115610823575081610234565b50919050565b815161083583836101d1565b50610840838261023a565b50505050565b5f8083601f840112610856575f80fd5b50813567ffffffffffffffff81111561086d575f80fd5b602083019150836020828501011115610884575f80fd5b9250929050565b5f805f805f6060868803121561089f575f80fd5b853567ffffffffffffffff808211156108b6575f80fd5b6108c289838a01610846565b909750955060208801359150808211156108da575f80fd5b506108e788828901610846565b96999598509660400135949350505050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610234576102346108f9565b5f8261093a57634e487b7160e01b5f52601260045260245ffd5b500690565b81810381811115610234576102346108f9565b8082028115828204841417610234576102346108f956fea164736f6c6343000818000a","storage":{}},"0x19356cc2300833e690088a5a09a2044a3cc2a1e2":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x229c56b7805ab5935a883207f6a6bd5847e65aee":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106102ae5760003560e01c8063906cecc111610175578063b9998a24116100dc578063d547741f11610095578063f2fde38b1161006f578063f2fde38b14610892578063f5243bc4146108b2578063f940e385146108d2578063ffa1ad74146108f257600080fd5b8063d547741f1461083f578063d7db74c71461085f578063ec5273891461087257600080fd5b8063b9998a241461077d578063cc2a9a5b1461079d578063cc2c3fc4146107bd578063ceeb4f50146107dd578063d1f5692c146107fd578063d53913931461081d57600080fd5b8063a3a3f7f61161012e578063a3a3f7f614610690578063a3f4df7e146106b0578063a849d65c146106fd578063aa271e1a1461071d578063b0aa98c71461073d578063b3ab15fb1461075d57600080fd5b8063906cecc1146105e657806391d1485414610606578063983b2d5614610626578063986502751461064657806399e0dd7c1461065b578063a217fddf1461067b57600080fd5b80635b6fa8db11610219578063715018a6116101d2578063715018a61461054b57806371e2a6571461056057806377a2a5891461058057806381c81d35146105a05780638456cb59146105b35780638da5cb5b146105c857600080fd5b80635b6fa8db146104a35780635c975abb146104c35780635cd7e3b3146104d85780635e22cd86146104f85780635fc1964f14610518578063634486da1461053857600080fd5b80633092afd51161026b5780633092afd5146103a857806336568abe146103c85780633f41b614146103e85780633f4ba83a1461042057806351cff8d914610435578063572b6c051461045557600080fd5b806301ffc9a7146102b35780631edb948e146102e857806320c5429b1461030a578063248a9ca31461032a578063268b15ed146103685780632f2ff15d14610388575b600080fd5b3480156102bf57600080fd5b506102d36102ce366004613dc4565b610923565b60405190151581526020015b60405180910390f35b3480156102f457600080fd5b50610308610303366004613e13565b61095a565b005b34801561031657600080fd5b50610308610325366004613e3f565b610b03565b34801561033657600080fd5b5061035a610345366004613e3f565b60009081526097602052604090206001015490565b6040519081526020016102df565b34801561037457600080fd5b50610308610383366004613e99565b610c26565b34801561039457600080fd5b506103086103a3366004613f04565b610cb9565b3480156103b457600080fd5b506103086103c3366004613f34565b610ce3565b3480156103d457600080fd5b506103086103e3366004613f04565b610cf7565b3480156103f457600080fd5b5060c954610408906001600160a01b031681565b6040516001600160a01b0390911681526020016102df565b34801561042c57600080fd5b50610308610d85565b34801561044157600080fd5b50610308610450366004613f34565b610d97565b34801561046157600080fd5b506102d3610470366004613f34565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546001600160a01b0390811691161490565b3480156104af57600080fd5b5060cc54610408906001600160a01b031681565b3480156104cf57600080fd5b506102d3610e37565b3480156104e457600080fd5b506103086104f3366004613fa3565b610e4d565b34801561050457600080fd5b50610308610513366004614062565b6110b1565b34801561052457600080fd5b5061030861053336600461419c565b6112f6565b610308610546366004613f34565b61133e565b34801561055757600080fd5b50610308611401565b34801561056c57600080fd5b5061030861057b36600461419c565b611413565b34801561058c57600080fd5b5060ce54610408906001600160a01b031681565b6103086105ae366004613f34565b61145b565b3480156105bf57600080fd5b506103086114d8565b3480156105d457600080fd5b506033546001600160a01b0316610408565b3480156105f257600080fd5b5061030861060136600461423a565b6114e8565b34801561061257600080fd5b506102d3610621366004613f04565b61156e565b34801561063257600080fd5b50610308610641366004613f34565b611599565b34801561065257600080fd5b506103086115aa565b34801561066757600080fd5b50610308610676366004614295565b6115c4565b34801561068757600080fd5b5061035a600081565b34801561069c57600080fd5b506103086106ab3660046142d6565b6116ab565b3480156106bc57600080fd5b506106f0604051806040016040528060148152602001732aa7299d1026b4b73a34b7339026b0b730b3b2b960611b81525081565b6040516102df919061437c565b34801561070957600080fd5b5060cb54610408906001600160a01b031681565b34801561072957600080fd5b506102d3610738366004613f34565b6116f4565b34801561074957600080fd5b506102d3610758366004613e3f565b61170e565b34801561076957600080fd5b50610308610778366004613f34565b61176c565b34801561078957600080fd5b50610308610798366004613f34565b611796565b3480156107a957600080fd5b506103086107b836600461438f565b6117db565b3480156107c957600080fd5b5060ca54610408906001600160a01b031681565b3480156107e957600080fd5b506103086107f8366004614411565b611cd2565b34801561080957600080fd5b506103086108183660046144c6565b611d76565b34801561082957600080fd5b5061035a600080516020614ef483398151915281565b34801561084b57600080fd5b5061030861085a366004613f04565b611e2d565b61030861086d3660046144fb565b611e52565b34801561087e57600080fd5b5061030861088d366004613e3f565b611fe2565b34801561089e57600080fd5b506103086108ad366004613f34565b612054565b3480156108be57600080fd5b506103086108cd3660046145f0565b612070565b3480156108de57600080fd5b506103086108ed366004614708565b612222565b3480156108fe57600080fd5b506106f060405180604001604052806005815260200164302e352e3160d81b81525081565b60006001600160e01b03198216637965db0b60e01b148061095457506301ffc9a760e01b6001600160e01b03198316145b92915050565b61096561073861239e565b61098a5760405162461bcd60e51b815260040161098190614736565b60405180910390fd5b60c95460405163baef73e960e01b8152600481018390526000916001600160a01b03169063baef73e990602401602060405180830381865afa1580156109d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109f8919061476b565b9050806001600160401b0316600003610a235760405162461bcd60e51b815260040161098190614788565b806001600160401b0316836001600160401b031611610a905760405162461bcd60e51b815260206004820152602360248201527f4d696e74696e674d616e616765723a204558504952595f4e4f545f455854454e60448201526211115160ea1b6064820152608401610981565b60c954604051631fb9763760e11b81526001600160401b0385166004820152602481018490526001600160a01b0390911690633f72ec6e906044015b600060405180830381600087803b158015610ae657600080fd5b505af1158015610afa573d6000803e3d6000fd5b50505050505050565b610b0e61073861239e565b610b2a5760405162461bcd60e51b815260040161098190614736565b60c95460405163baef73e960e01b8152600481018390526001600160a01b039091169063baef73e990602401602060405180830381865afa158015610b73573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b97919061476b565b6001600160401b0316600003610bbf5760405162461bcd60e51b815260040161098190614788565b60c954604051637eee288d60e01b8152306004820152602481018390526001600160a01b0390911690637eee288d90604401600060405180830381600087803b158015610c0b57600080fd5b505af1158015610c1f573d6000803e3d6000fd5b5050505050565b8282828080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250610c6993508592508491506123ad565b610c71610e37565b15610c8e5760405162461bcd60e51b8152600401610981906147cb565b6060610afa610c9b61239e565b610cae88610ca98989612584565b6125b0565b8384600060016126c1565b600082815260976020526040902060010154610cd481612c15565b610cde8383612c26565b505050565b610ceb612cad565b610cf481612d26565b50565b610cff61239e565b6001600160a01b0316816001600160a01b031614610d775760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610981565b610d818282612d3e565b5050565b610d8d612cad565b610d95612dc3565b565b610d9f612cad565b6001600160a01b038116610db257600080fd5b60405147906001600160a01b0383169082156108fc029083906000818181858888f19350505050158015610dea573d6000803e3d6000fd5b50604080516001600160a01b03841681526020810183905260008183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a15050565b600080516020614ed48339815191525460ff1690565b610e5786886147f5565b8051600203610e8c57610e6b61073861239e565b610e875760405162461bcd60e51b8152600401610981906148bf565b610fd1565b6000610e9782612e6b565b60c9549092506001600160a01b0316905063430c2081610eb561239e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015610f00573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f249190614903565b80610fb3575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa158015610f7d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fa19190614903565b8015610fb35750610fb361073861239e565b610fcf5760405162461bcd60e51b815260040161098190614920565b505b610fdb87896147f5565b6000600282511015610fff5760405162461bcd60e51b81526004016109819061496f565b6110546110336000846001865161101691906149ca565b81518110611026576110266149dd565b6020026020010151612ea6565b83600081518110611046576110466149dd565b6020026020010151836123ad565b61105c610e37565b156110795760405162461bcd60e51b8152600401610981906147cb565b6110a38b6110878b8d6147f5565b6110918a8c6147f5565b61109b898b6147f5565b6000896126c1565b505050505050505050505050565b6110bb87896147f5565b80516002036110f0576110cf61073861239e565b6110eb5760405162461bcd60e51b8152600401610981906148bf565b611235565b60006110fb82612e6b565b60c9549092506001600160a01b0316905063430c208161111961239e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015611164573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111889190614903565b80611217575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa1580156111e1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112059190614903565b8015611217575061121761073861239e565b6112335760405162461bcd60e51b815260040161098190614920565b505b61123f888a6147f5565b836002825110156112625760405162461bcd60e51b81526004016109819061496f565b6112796110336000846001865161101691906149ca565b611281610e37565b1561129e5760405162461bcd60e51b8152600401610981906147cb565b60028a146112be5760405162461bcd60e51b8152600401610981906149f3565b6112e78c6112cc8c8e6147f5565b6112d68b8d6147f5565b6112e08a8c6147f5565b89896126c1565b50505050505050505050505050565b6112fe612cad565b60005b8151811015610d815761132c82828151811061131f5761131f6149dd565b6020026020010151612d26565b8061133681614a39565b915050611301565b61134961073861239e565b6113655760405162461bcd60e51b815260040161098190614736565b6001600160a01b0381166113bb5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610981565b6113c481612f5a565b6113cc6115aa565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610d81573d6000803e3d6000fd5b611409612cad565b610d956000612f72565b61141b612cad565b60005b8151811015610d815761144982828151811061143c5761143c6149dd565b6020026020010151612f5a565b8061145381614a39565b91505061141e565b61146661073861239e565b6114825760405162461bcd60e51b815260040161098190614736565b6001600160a01b0381166113c45760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610981565b6114e0612cad565b610d95612fc4565b8282828080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525061152b93508592508491506123ad565b611533610e37565b156115505760405162461bcd60e51b8152600401610981906147cb565b606061156487610cae88610ca98989612584565b5050505050505050565b60009182526097602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6115a1612cad565b610cf481612f5a565b610d95600080516020614ef48339815191526103e361239e565b6115cc612cad565b60c954604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906115fe9085908590600401614a52565b600060405180830381600087803b15801561161857600080fd5b505af115801561162c573d6000803e3d6000fd5b505060cb546001600160a01b0316159150610d8190505760cb54604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906116759085908590600401614a52565b600060405180830381600087803b15801561168f57600080fd5b505af11580156116a3573d6000803e3d6000fd5b505050505050565b6116b3612cad565b610cde83838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525085925061302c915050565b6000610954600080516020614ef48339815191528361156e565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd696020820152908101829052600090611762906060015b6040516020818303038152906040528051906020012090565b5460ff1692915050565b611774612cad565b60ce80546001600160a01b0319166001600160a01b0392909216919091179055565b61179e612cad565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e80546001600160a01b0319166001600160a01b03831617905550565b600054610100900460ff16158080156117fb5750600054600160ff909116105b806118155750303b158015611815575060005460ff166001145b6118785760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610981565b6000805460ff19166001179055801561189b576000805461ff0019166101001790555b60c980546001600160a01b03199081166001600160a01b038a81169190911790925560ca8054821689841617905560cb8054821688841617905560cc8054821687841617905560ce80549091169185169190911790556118f961314c565b611901613183565b61190a826131bc565b6119126131e3565b6040805161036081018252600661032082018181526563727970746f60d01b610340840152825282518084018452818152651dd85b1b195d60d21b602082810191909152808401919091528351808501855260018152600f60fb1b8183015283850152835180850185526003808252621b999d60ea1b82840152606085019190915284518086018652600a815269313637b1b5b1b430b4b760b11b818401526080850152845180860186526007808252663134ba31b7b4b760c91b8285015260a0860191909152855180870187528281526207070760eb1b8185015260c0860152855180870187528281526264616f60e81b8185015260e086015285518087018752828152621e9a5b60ea1b8185015261010086015285518087018752908152663837b63cb3b7b760c91b8184015261012085015284518086018652600b81526a756e73746f707061626c6560a81b81840152610140850152845180860186528381526535b632bb32b960d11b8184015261016085015284518086018652600280825261686960f01b8285015261018086019190915285518087018752848152656b726573757360d01b818501526101a086015285518087018752600580825264616e696d6560d81b828601526101c087019190915286518088018852818152646d616e676160d81b818601526101e087015286518088018852600981526862696e616e6365757360b81b8186015261020087015286518088018852818152647265616c6d60d81b818601526102208701528651808801885291825261676f60f01b82850152610240860191909152855180870187526008815267185b1d1a5b5a5cdd60c21b818501526102608601528551808701875290815264707564677960d81b81840152610280850152845180860186528381526530bab9ba34b760d11b818401526102a08501528451808601865292835265189a5d19d95d60d21b838301526102c08401929092528351808501855291825262706f6760e81b828201526102e083019190915282518084019093526004835263636c617960e01b9083015261030081019190915260005b6019811015611c5c57611c4a828260198110611c3e57611c3e6149dd565b6020020151600061302c565b80611c5481614a39565b915050611c20565b50611c8360405180604001604052806003815260200162636f6d60e81b815250600161302c565b508015610afa576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050505050565b8686868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250611d1593508592508491506123ad565b611d1d610e37565b15611d3a5760405162461bcd60e51b8152600401610981906147cb565b611d698a611d4c8b610ca98c8c612584565b611d56888a6147f5565b611d6087896147f5565b600060016126c1565b5050505050505050505050565b611d7e612cad565b60005b81811015610cde5760c9546001600160a01b03166350960239848484818110611dac57611dac6149dd565b9050602002016020810190611dc19190613f34565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401600060405180830381600087803b158015611e0257600080fd5b505af1158015611e16573d6000803e3d6000fd5b505050508080611e2590614a39565b915050611d81565b600082815260976020526040902060010154611e4881612c15565b610cde8383612d3e565b611e5c898b6147f5565b6000600282511015611e805760405162461bcd60e51b81526004016109819061496f565b611e976110336000846001865161101691906149ca565b611e9f610e37565b15611ebc5760405162461bcd60e51b8152600401610981906147cb565b60028b14611edc5760405162461bcd60e51b8152600401610981906149f3565b611f228d8d8d898960008a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061322392505050565b84341015611f725760405162461bcd60e51b815260206004820181905260248201527f4d696e74696e674d616e616765723a204e4f545f454e4f5547485f46554e44536044820152606401610981565b611f848d8d8d8d8d8d8d8c60006133e3565b843411156112e757611f9461239e565b6001600160a01b03166108fc611faa87346149ca565b6040518115909202916000818181858888f19350505050158015611fd2573d6000803e3d6000fd5b5050505050505050505050505050565b611fea612cad565b611ff38161349f565b61200f5760405162461bcd60e51b815260040161098190614a81565b600081815260cd6020526040812061202691613d76565b60405181907f0aa1aff0f830e739d86baf0e6624d6763da02f7733575e0e463886cd062dea6a90600090a250565b61205c612cad565b612065816134c5565b610cf460008261353b565b61207a8a8c6147f5565b600060028251101561209e5760405162461bcd60e51b81526004016109819061496f565b6120b56110336000846001865161101691906149ca565b6120bd610e37565b156120da5760405162461bcd60e51b8152600401610981906147cb565b60028c146120fa5760405162461bcd60e51b8152600401610981906149f3565b61213f8e8e8e8a898b8a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061322392505050565b856001600160a01b03166323b872dd61215661239e565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152306024820152604481018890526064016020604051808303816000875af11580156121a9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121cd9190614903565b6122115760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610981565b611fd28e8e8e8e8e8e8e8c8e6133e3565b61222a612cad565b6040516370a0823160e01b81523060048201526000906001600160a01b038416906370a0823190602401602060405180830381865afa158015612271573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122959190614ac3565b60405163a9059cbb60e01b81526001600160a01b038481166004830152602482018390529192509084169063a9059cbb906044016020604051808303816000875af11580156122e8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061230c9190614903565b6123505760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610981565b604080516001600160a01b0384811682526020820184905285168183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a1505050565b60006123a8613545565b905090565b6123b68361349f565b6123d25760405162461bcd60e51b815260040161098190614a81565b600083815260cf602052604090205460ff1615156001600160401b03821615151461244e5760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544c445f455850495241424c455f4d496044820152650a69a82a886960d31b6064820152608401610981565b60006124818360408051808201825260008082526020918201528151808301909252825182529182019181019190915290565b9050600a81600001511115612529576124ac6124a0826000600a61358b565b80516020909101512090565b7fb551e0305c8163b812374b8e78b577c77f226f6f10c5ad03e52699578fbc34b8036125295760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544f4b454e5f4c4142454c5f50524f4860448201526512509255115160d21b6064820152608401610981565b612532836135ca565b61257e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a204c4142454c5f494e56414c49440000006044820152606401610981565b50505050565b60608282604051602001612599929190614adc565b604051602081830303815290604052905092915050565b604080516002808252606082810190935260009190816020015b60608152602001906001900390816125ca57905050905082816000815181106125f5576125f56149dd565b602002602001018190525060cd6000858152602001908152602001600020805461261e90614b04565b80601f016020809104026020016040519081016040528092919081815260200182805461264a90614b04565b80156126975780601f1061266c57610100808354040283529160200191612697565b820191906000526020600020905b81548152906001019060200180831161267a57829003601f168201915b5050505050816001815181106126af576126af6149dd565b60209081029190910101529392505050565b60008060006126cf88612e6b565b915091508380156126e1575060028851115b8015612763575060c9546040516331a9108f60e11b8152600481018390526001600160a01b038b8116921690636352211e90602401602060405180830381865afa158015612733573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127579190614b3e565b6001600160a01b031614155b156127c35760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e616765723a20524556455253455f5245434f52445f4e60448201526913d517d0531313d5d15160b21b6064820152608401610981565b60c954604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401602060405180830381865afa15801561280c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128309190614903565b8015612921575060c9546040516331a9108f60e11b81526004810184905230916001600160a01b031690636352211e90602401602060405180830381865afa158015612880573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128a49190614b3e565b6001600160a01b03161480612921575060c95460405163d9548e5360e01b8152600481018490526001600160a01b039091169063d9548e5390602401602060405180830381865afa1580156128fd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129219190614903565b15612a12576001600160401b038516156129a35760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b15801561298a57600080fd5b505af115801561299e573d6000803e3d6000fd5b505050505b60c954604051630fb8df0360e11b81526001600160a01b0390911690631f71be06906129db908c908c908c908c908b90600401614bb0565b600060405180830381600087803b1580156129f557600080fd5b505af1158015612a09573d6000803e3d6000fd5b50505050612c09565b612a1b8261372e565b612a248861378d565b8015612a31575087516002145b8015612a4457506001600160401b038516155b15612b225760ca5488516001600160a01b039091169063c36c2125908b908b90600090612a7357612a736149dd565b602090810291909101015160cc546040516001600160e01b031960e086901b168152612aad9392916001600160a01b031690600401614c0f565b600060405180830381600087803b158015612ac757600080fd5b505af1158015612adb573d6000803e3d6000fd5b50505050600087511115612b1d5760cc54604051633a0deb9d60e21b81526001600160a01b039091169063e837ae74906129db908a908a908790600401614c44565b612c09565b60c95460405163ba5d40b760e01b81526001600160a01b039091169063ba5d40b790612b5a908c908c908c908c908b90600401614bb0565b600060405180830381600087803b158015612b7457600080fd5b505af1158015612b88573d6000803e3d6000fd5b505050506001600160401b03851615612c095760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b158015612bf057600080fd5b505af1158015612c04573d6000803e3d6000fd5b505050505b50979650505050505050565b610cf481612c2161239e565b6137e7565b612c30828261156e565b610d815760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19166001179055612c6961239e565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b612cb561239e565b6001600160a01b0316612cd06033546001600160a01b031690565b6001600160a01b031614610d955760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610981565b610cf4600080516020614ef483398151915282611e2d565b612d48828261156e565b15610d815760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19169055612d7f61239e565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612dcb610e37565b612e0e5760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881393d517d4105554d15160621b6044820152606401610981565b600080516020614ed4833981519152805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa612e4e61239e565b6040516001600160a01b03909116815260200160405180910390a1565b805160009081905b8015612ea057829150612e8c82856110166001856149ca565b925080612e9881614c7a565b915050612e73565b50915091565b60008151600003612ef95760405162461bcd60e51b815260206004820152601b60248201527f4d696e74696e674d616e616765723a204c4142454c5f454d50545900000000006044820152606401610981565b8282604051602001612f0b9190614c91565b60405160208183030381529060405280519060200120604051602001612f3b929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b610cf4600080516020614ef48339815191528261353b565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b612fcc610e37565b15612fe95760405162461bcd60e51b8152600401610981906147cb565b600080516020614ed4833981519152805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258612e4e61239e565b6000613039600084612ea6565b600081815260cd602052604090209091506130548482614cf3565b50600081815260cf602052604090819020805460ff19168415151790555181907f4fce6f6e172b04eaa80325d8e3b0180a34945000f3e214605039e8420fdf8980906130a190869061437c565b60405180910390a260c954604051634f558e7960e01b8152600481018390526001600160a01b0390911690634f558e7990602401602060405180830381865afa1580156130f2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131169190614903565b610cde5760c9546040516307befae360e51b81526001600160a01b039091169063f7df5c6090610acc9084908790600401614db2565b600054610100900460ff166131735760405162461bcd60e51b815260040161098190614dd3565b610d9561317e61239e565b612f72565b600054610100900460ff166131aa5760405162461bcd60e51b815260040161098190614dd3565b610d9560006131b761239e565b61353b565b600054610100900460ff1661179e5760405162461bcd60e51b815260040161098190614dd3565b600054610100900460ff1661320a5760405162461bcd60e51b815260040161098190614dd3565b600080516020614ed4833981519152805460ff19169055565b600061323761323287896147f5565b612e6b565b506040516bffffffffffffffffffffffff1930606090811b821660208401524660348401528b811b82166054840152606883018490526001600160c01b031960c08a901b1660888401526090830188905286901b1660b082015290915060009061331390849061330d9060c401604051602081830303815290604052805190602001206040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c8101829052600090605c01604051602081830303815290604052805190602001209050919050565b9061384b565b905061331e816116f4565b6133765760405162461bcd60e51b8152602060048201526024808201527f4d696e74696e674d616e616765723a205349474e45525f49535f4e4f545f4d49604482015263272a22a960e11b6064820152608401610981565b42866001600160401b0316116133d85760405162461bcd60e51b815260206004820152602160248201527f4d696e74696e674d616e616765723a20455850495245445f5349474e415455526044820152604560f81b6064820152608401610981565b505050505050505050565b600061342a8a6133f38a8c6147f5565b6133fd898b6147f5565b613407888a6147f5565b60008f6001600160a01b031661341b61239e565b6001600160a01b0316146126c1565b9050896001600160a01b031661343e61239e565b6001600160a01b0316827fa545b6fd3355e8d57f8c8147bafe740545bd3ea1f94bef2576a6d532a7c3b605868660405161348b9291909182526001600160a01b0316602082015260400190565b60405180910390a450505050505050505050565b600081815260cd6020526040812080548291906134bb90614b04565b9050119050919050565b6134cd612cad565b6001600160a01b0381166135325760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610981565b610cf481612f72565b610d818282612c26565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546000906001600160a01b03163303613586575060331936013560601c90565b503390565b604080518082019091526000808252602082015260405180604001604052808381526020018486602001516135c09190614e1e565b9052949350505050565b600081516000036135dd57506000919050565b60208201805160f81c603081108015906135fb575060398160ff1611155b15801561361d575060618160ff161015801561361b5750607a8160ff1611155b155b1561362c575060009392505050565b8351600181111561369a5761364e836136466001846149ca565b015160f81c90565b915060308260ff1610158015613668575060398260ff1611155b15801561368a575060618260ff16101580156136885750607a8260ff1611155b155b1561369a57506000949350505050565b60015b6136a86001836149ca565b811015613722578381015160f81c9250602d83148015906136de575060308360ff16101580156136dc575060398360ff1611155b155b80156136ff575060618360ff16101580156136fd5750607a8360ff1611155b155b156137105750600095945050505050565b8061371a81614a39565b91505061369d565b50600195945050505050565b6137378161170e565b156137845760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a20544f4b454e5f424c4f434b45440000006044820152606401610981565b610cf48161386f565b6000806137a46000846001865161101691906149ca565b60ca549091506001600160a01b0316158015906137e05750807f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f145b9392505050565b6137f1828261156e565b610d8157613809816001600160a01b031660146138f3565b6138148360206138f3565b604051602001613825929190614e31565b60408051601f198184030181529082905262461bcd60e51b82526109819160040161437c565b600080600061385a8585613a8e565b9150915061386781613ad3565b509392505050565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd6960208201529081018290526001906138ae90606001611749565b805460ff19169115159190911790556040518181527f2ce5d9351b1d590d5a066db0d2dc7602d55f092506a83a7ee8c4d78ee357d75a9060200160405180910390a150565b60606000613902836002614ea6565b61390d906002614e1e565b6001600160401b0381111561392457613924614133565b6040519080825280601f01601f19166020018201604052801561394e576020820181803683370190505b509050600360fc1b81600081518110613969576139696149dd565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110613998576139986149dd565b60200101906001600160f81b031916908160001a90535060006139bc846002614ea6565b6139c7906001614e1e565b90505b6001811115613a3f576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106139fb576139fb6149dd565b1a60f81b828281518110613a1157613a116149dd565b60200101906001600160f81b031916908160001a90535060049490941c93613a3881614c7a565b90506139ca565b5083156137e05760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610981565b6000808251604103613ac45760208301516040840151606085015160001a613ab887828585613c89565b94509450505050613acc565b506000905060025b9250929050565b6000816004811115613ae757613ae7614ebd565b03613aef5750565b6001816004811115613b0357613b03614ebd565b03613b505760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152606401610981565b6002816004811115613b6457613b64614ebd565b03613bb15760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610981565b6003816004811115613bc557613bc5614ebd565b03613c1d5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b6064820152608401610981565b6004816004811115613c3157613c31614ebd565b03610cf45760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c604482015261756560f01b6064820152608401610981565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613cc05750600090506003613d6d565b8460ff16601b14158015613cd857508460ff16601c14155b15613ce95750600090506004613d6d565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613d3d573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613d6657600060019250925050613d6d565b9150600090505b94509492505050565b508054613d8290614b04565b6000825580601f10613d92575050565b601f016020900490600052602060002090810190610cf491905b80821115613dc05760008155600101613dac565b5090565b600060208284031215613dd657600080fd5b81356001600160e01b0319811681146137e057600080fd5b6001600160401b0381168114610cf457600080fd5b8035613e0e81613dee565b919050565b60008060408385031215613e2657600080fd5b8235613e3181613dee565b946020939093013593505050565b600060208284031215613e5157600080fd5b5035919050565b60008083601f840112613e6a57600080fd5b5081356001600160401b03811115613e8157600080fd5b602083019150836020828501011115613acc57600080fd5b600080600060408486031215613eae57600080fd5b8335925060208401356001600160401b03811115613ecb57600080fd5b613ed786828701613e58565b9497909650939450505050565b6001600160a01b0381168114610cf457600080fd5b8035613e0e81613ee4565b60008060408385031215613f1757600080fd5b823591506020830135613f2981613ee4565b809150509250929050565b600060208284031215613f4657600080fd5b81356137e081613ee4565b60008083601f840112613f6357600080fd5b5081356001600160401b03811115613f7a57600080fd5b6020830191508360208260051b8501011115613acc57600080fd5b8015158114610cf457600080fd5b60008060008060008060008060a0898b031215613fbf57600080fd5b8835613fca81613ee4565b975060208901356001600160401b0380821115613fe657600080fd5b613ff28c838d01613f51565b909950975060408b013591508082111561400b57600080fd5b6140178c838d01613f51565b909750955060608b013591508082111561403057600080fd5b5061403d8b828c01613f51565b909450925050608089013561405181613f95565b809150509295985092959890939650565b600080600080600080600080600060c08a8c03121561408057600080fd5b893561408b81613ee4565b985060208a01356001600160401b03808211156140a757600080fd5b6140b38d838e01613f51565b909a50985060408c01359150808211156140cc57600080fd5b6140d88d838e01613f51565b909850965060608c01359150808211156140f157600080fd5b506140fe8c828d01613f51565b90955093505060808a013561411281613dee565b915060a08a013561412281613f95565b809150509295985092959850929598565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561417157614171614133565b604052919050565b60006001600160401b0382111561419257614192614133565b5060051b60200190565b600060208083850312156141af57600080fd5b82356001600160401b038111156141c557600080fd5b8301601f810185136141d657600080fd5b80356141e96141e482614179565b614149565b81815260059190911b8201830190838101908783111561420857600080fd5b928401925b8284101561422f57833561422081613ee4565b8252928401929084019061420d565b979650505050505050565b6000806000806060858703121561425057600080fd5b843561425b81613ee4565b93506020850135925060408501356001600160401b0381111561427d57600080fd5b61428987828801613e58565b95989497509550505050565b600080602083850312156142a857600080fd5b82356001600160401b038111156142be57600080fd5b6142ca85828601613e58565b90969095509350505050565b6000806000604084860312156142eb57600080fd5b83356001600160401b0381111561430157600080fd5b61430d86828701613e58565b909450925050602084013561432181613f95565b809150509250925092565b60005b8381101561434757818101518382015260200161432f565b50506000910152565b6000815180845261436881602086016020860161432c565b601f01601f19169290920160200192915050565b6020815260006137e06020830184614350565b60008060008060008060c087890312156143a857600080fd5b86356143b381613ee4565b955060208701356143c381613ee4565b945060408701356143d381613ee4565b935060608701356143e381613ee4565b925060808701356143f381613ee4565b915060a087013561440381613ee4565b809150509295509295509295565b60008060008060008060008060a0898b03121561442d57600080fd5b883561443881613ee4565b97506020890135965060408901356001600160401b038082111561445b57600080fd5b6144678c838d01613e58565b909850965060608b013591508082111561448057600080fd5b61448c8c838d01613f51565b909650945060808b01359150808211156144a557600080fd5b506144b28b828c01613f51565b999c989b5096995094979396929594505050565b600080602083850312156144d957600080fd5b82356001600160401b038111156144ef57600080fd5b6142ca85828601613f51565b600080600080600080600080600080600060e08c8e03121561451c57600080fd5b6145258c613ef9565b9a506001600160401b038060208e0135111561454057600080fd5b6145508e60208f01358f01613f51565b909b50995060408d013581101561456657600080fd5b6145768e60408f01358f01613f51565b909950975060608d013581101561458c57600080fd5b61459c8e60608f01358f01613f51565b90975095506145ad60808e01613e03565b945060a08d013593508060c08e013511156145c757600080fd5b506145d88d60c08e01358e01613e58565b81935080925050509295989b509295989b9093969950565b6000806000806000806000806000806000806101008d8f03121561461357600080fd5b61461c8d613ef9565b9b506001600160401b0360208e0135111561463657600080fd5b6146468e60208f01358f01613f51565b909b5099506001600160401b0360408e0135111561466357600080fd5b6146738e60408f01358f01613f51565b90995097506001600160401b0360608e0135111561469057600080fd5b6146a08e60608f01358f01613f51565b90975095506146b160808e01613e03565b94506146bf60a08e01613ef9565b935060c08d013592506001600160401b0360e08e013511156146e057600080fd5b6146f08e60e08f01358f01613e58565b81935080925050509295989b509295989b509295989b565b6000806040838503121561471b57600080fd5b823561472681613ee4565b91506020830135613f2981613ee4565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b60006020828403121561477d57600080fd5b81516137e081613dee565b60208082526023908201527f4d696e74696e674d616e616765723a20544f4b454e5f4e4f545f455850495241604082015262424c4560e81b606082015260800190565b60208082526010908201526f14185d5cd8589b194e8814105554d15160821b604082015260600190565b60006148036141e484614179565b80848252602080830192508560051b85013681111561482157600080fd5b855b818110156148b35780356001600160401b03808211156148435760008081fd5b90880190601f36818401126148585760008081fd5b82358281111561486a5761486a614133565b61487b818301601f19168801614149565b9250808352368782860101111561489457600091508182fd5b8087850188850137600090830187015250865250938201938201614823565b50919695505050505050565b60208082526024908201527f4d696e74696e674d616e616765723a2043414c4c45525f49535f4e4f545f4d49604082015263272a22a960e11b606082015260800190565b60006020828403121561491557600080fd5b81516137e081613f95565b6020808252602f908201527f4d696e74696e674d616e616765723a2053454e4445525f49535f4e4f545f415060408201526e282927ab22a22fa7a92fa7aba722a960891b606082015260800190565b60208082526025908201527f4d696e74696e674d616e616765723a204c4142454c535f4c454e4754485f42456040820152642627abaf9960d91b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b81810381811115610954576109546149b4565b634e487b7160e01b600052603260045260246000fd5b60208082526026908201527f4d696e74696e674d616e616765723a20535542444f4d41494e535f4e4f545f41604082015265131313d5d15160d21b606082015260800190565b600060018201614a4b57614a4b6149b4565b5060010190565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b60208082526022908201527f4d696e74696e674d616e616765723a20544c445f4e4f545f5245474953544552604082015261115160f21b606082015260800190565b600060208284031215614ad557600080fd5b5051919050565b6b756e732d646576746573742d60a01b81528183600c83013760009101600c01908152919050565b600181811c90821680614b1857607f821691505b602082108103614b3857634e487b7160e01b600052602260045260246000fd5b50919050565b600060208284031215614b5057600080fd5b81516137e081613ee4565b600081518084526020808501808196508360051b8101915082860160005b85811015614ba3578284038952614b91848351614350565b98850198935090840190600101614b79565b5091979650505050505050565b6001600160a01b038616815260a060208201819052600090614bd490830187614b5b565b8281036040840152614be68187614b5b565b90508281036060840152614bfa8186614b5b565b91505082151560808301529695505050505050565b600060018060a01b03808616835260606020840152614c316060840186614350565b9150808416604084015250949350505050565b606081526000614c576060830186614b5b565b8281036020840152614c698186614b5b565b915050826040830152949350505050565b600081614c8957614c896149b4565b506000190190565b60008251614ca381846020870161432c565b9190910192915050565b601f821115610cde57600081815260208120601f850160051c81016020861015614cd45750805b601f850160051c820191505b818110156116a357828155600101614ce0565b81516001600160401b03811115614d0c57614d0c614133565b614d2081614d1a8454614b04565b84614cad565b602080601f831160018114614d555760008415614d3d5750858301515b600019600386901b1c1916600185901b1785556116a3565b600085815260208120601f198616915b82811015614d8457888601518255948401946001909101908401614d65565b5085821015614da25787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b828152604060208201526000614dcb6040830184614350565b949350505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b80820180821115610954576109546149b4565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351614e6981601785016020880161432c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351614e9a81602884016020880161432c565b01602801949350505050565b8082028115828204841417610954576109546149b4565b634e487b7160e01b600052602160045260246000fdfe5496787fc1ebdfeba375028c1865f13fbb1d63c0caa356ccc1b29a80f3ebd6229f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000811000a","storage":{}},"0x24f45688d421f46cca60734bdc648ad192db0f2e":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0x1","0x97":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x12d":"0x0","0x15f":"0x5cc819c9915eadfcebd76952b8c1bc36cadd7376","0x13cf90498be59d359caa5b6092b365feab4610605d7107d1f05f8e94ac955652":"0x1","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x54563a9e1cd2dcbd0bca90d3cfa4a647e02c404a","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106102295760003560e01c8063886a69ba11610123578063cf1d21c0116100ab578063e2c49de11161006f578063e2c49de11461091d578063e3dec8fb14610932578063e43009a6146109c8578063e66f9603146109fb578063ea60c7c414610a2557610240565b8063cf1d21c014610844578063d233a3c714610859578063d547741f1461089c578063d81c8e52146108d5578063dc993a23146108ea57610240565b8063a217fddf116100f2578063a217fddf1461078a578063b4b4f63e1461079f578063bc08452b146107b4578063c4d66de8146107e7578063ca15c8731461081a57610240565b8063886a69ba146106c95780639010d07c146106de5780639173b1391461070e57806391d148541461075157610240565b80633138b6f1116101b1578063568b80b511610175578063568b80b5146105fb578063607f2d4214610610578063630fcbfb1461064e5780636cb136b0146106635780636e86b7701461069657610240565b80633138b6f1146104f55780633408e4701461050a57806336568abe1461051f5780633805550f146105585780634faa8a26146105d557610240565b80630f7e5970116101f85780630f7e59701461042357806320379ee514610438578063248a9ca31461045f5780632d0335ab146104895780632f2ff15d146104bc57610240565b806304967702146102455780630c3894bb146102765780630c53c51c146102b15780630c598220146103ea57610240565b366102405761023e610239610a58565b610a68565b005b600080fd5b34801561025157600080fd5b5061025a610b69565b604080516001600160a01b039092168252519081900360200190f35b34801561028257600080fd5b5061023e6004803603604081101561029957600080fd5b506001600160a01b0381358116916020013516610b78565b610375600480360360a08110156102c757600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156102f257600080fd5b82018360208201111561030457600080fd5b8035906020019184600183028401116401000000008311171561032657600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550508235935050506020810135906040013560ff16610cc9565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103af578181015183820152602001610397565b50505050905090810190601f1680156103dc5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156103f657600080fd5b5061023e6004803603604081101561040d57600080fd5b50803590602001356001600160a01b0316610fcc565b34801561042f57600080fd5b506103756110b9565b34801561044457600080fd5b5061044d6110d6565b60408051918252519081900360200190f35b34801561046b57600080fd5b5061044d6004803603602081101561048257600080fd5b50356110dc565b34801561049557600080fd5b5061044d600480360360208110156104ac57600080fd5b50356001600160a01b03166110f4565b3480156104c857600080fd5b5061023e600480360360408110156104df57600080fd5b50803590602001356001600160a01b031661110f565b34801561050157600080fd5b5061025a611176565b34801561051657600080fd5b5061044d611185565b34801561052b57600080fd5b5061023e6004803603604081101561054257600080fd5b50803590602001356001600160a01b0316611189565b34801561056457600080fd5b5061023e6004803603602081101561057b57600080fd5b81019060208101813564010000000081111561059657600080fd5b8201836020820111156105a857600080fd5b803590602001918460018302840111640100000000831117156105ca57600080fd5b5090925090506111ea565b61023e600480360360208110156105eb57600080fd5b50356001600160a01b03166116ec565b34801561060757600080fd5b5061044d6116f8565b34801561061c57600080fd5b5061063a6004803603602081101561063357600080fd5b503561171b565b604080519115158252519081900360200190f35b34801561065a57600080fd5b5061023e611730565b34801561066f57600080fd5b5061023e6004803603602081101561068657600080fd5b50356001600160a01b03166117d6565b3480156106a257600080fd5b5061025a600480360360208110156106b957600080fd5b50356001600160a01b031661186e565b3480156106d557600080fd5b5061044d611889565b3480156106ea57600080fd5b5061025a6004803603604081101561070157600080fd5b50803590602001356118aa565b34801561071a57600080fd5b5061023e6004803603606081101561073157600080fd5b506001600160a01b038135811691602081013590911690604001356118d1565b34801561075d57600080fd5b5061063a6004803603604081101561077457600080fd5b50803590602001356001600160a01b0316611a06565b34801561079657600080fd5b5061044d611a24565b3480156107ab57600080fd5b5061023e611a29565b3480156107c057600080fd5b5061023e600480360360208110156107d757600080fd5b50356001600160a01b0316611acf565b3480156107f357600080fd5b5061023e6004803603602081101561080a57600080fd5b50356001600160a01b0316611b67565b34801561082657600080fd5b5061044d6004803603602081101561083d57600080fd5b5035611c57565b34801561085057600080fd5b5061025a611c6e565b34801561086557600080fd5b5061023e6004803603606081101561087c57600080fd5b506001600160a01b03813581169160208101359091169060400135611c86565b3480156108a857600080fd5b5061023e600480360360408110156108bf57600080fd5b50803590602001356001600160a01b0316611de8565b3480156108e157600080fd5b5061044d611e41565b3480156108f657600080fd5b5061023e6004803603602081101561090d57600080fd5b50356001600160a01b0316611e60565b34801561092957600080fd5b5061025a611f3d565b34801561093e57600080fd5b5061023e6004803603606081101561095557600080fd5b6001600160a01b03823581169260208101359091169181019060608101604082013564010000000081111561098957600080fd5b82018360208201111561099b57600080fd5b803590602001918460018302840111640100000000831117156109bd57600080fd5b509092509050611f4c565b3480156109d457600080fd5b5061044d600480360360208110156109eb57600080fd5b50356001600160a01b0316611fe9565b348015610a0757600080fd5b5061025a60048036036020811015610a1e57600080fd5b5035611ffb565b348015610a3157600080fd5b5061025a60048036036020811015610a4857600080fd5b50356001600160a01b0316612016565b6000610a62612031565b90505b90565b604080513460208083019190915282518083039091018152908201909152610aa58273eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee8361208e565b7fa1829a9003092132f585b6ccdd167c19fe9774dbdea4260287e8a8e8ca8185d7546000908152600260205260408082205490516001600160a01b039091169034908381818185875af1925050503d8060008114610b1f576040519150601f19603f3d011682016040523d82523d6000602084013e610b24565b606091505b5050905080610b645760405162461bcd60e51b815260040180806020018281038252602781526020018061419d6027913960400191505060405180910390fd5b505050565b6009546001600160a01b031681565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020610ba981610ba4610a58565b611a06565b600a90610c495760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b820191906000526020600020905b815481529060010190602001808311610c1d57829003601f168201915b50509250505060405180910390fd5b506001600160a01b03808416600081815260036020908152604080832080546001600160a01b0319908116909155948716808452600483528184208054909616909555838352600590915280822082905551909291907f9e651a8866fbea043e911d816ec254b0e3c992c06fff32d605e72362d6023bd9908490a4505050565b6060610cd3613e2a565b50604080516060810182526001600160a01b0388166000818152600c602090815290849020548352820152908101869052610d118782878787612508565b610d4c5760405162461bcd60e51b81526004018080602001828103825260218152602001806141c46021913960400191505060405180910390fd5b6001600160a01b0387166000908152600c6020526040902054610d7690600163ffffffff6125e516565b6001600160a01b0388166000818152600c602090815260408083209490945583519283523383820181905260609484018581528b51958501959095528a517f5845892132946850460bff5a0083f71031bc5bf9aadcd40f1de79423eac9b10b958d9592948d94919260808501928601918190849084905b83811015610e05578181015183820152602001610ded565b50505050905090810190601f168015610e325780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a160006060306001600160a01b0316888a6040516020018083805190602001908083835b60208310610e835780518252601f199092019160209182019101610e64565b6001836020036101000a038019825116818451168082178552505050505050905001826001600160a01b03166001600160a01b031660601b8152601401925050506040516020818303038152906040526040518082805190602001908083835b60208310610f025780518252601f199092019160209182019101610ee3565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610f64576040519150601f19603f3d011682016040523d82523d6000602084013e610f69565b606091505b509150915081610fc0576040805162461bcd60e51b815260206004820152601c60248201527f46756e6374696f6e2063616c6c206e6f74207375636365737366756c00000000604482015290519081900360640190fd5b98975050505050505050565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020610ff881610ba4610a58565b600a9061105e5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5060008381526002602052604080822080546001600160a01b0319166001600160a01b0386169081179091559051909185917f8643692ae1c12ec91fa18e50b82ed93fa314f580999a236824db6de9ae0d839b9190a3505050565b604051806040016040528060018152602001603160f81b81525081565b600b5490565b6000818152600160205260409020600201545b919050565b6001600160a01b03166000908152600c602052604090205490565b60008281526001602052604090206002015461112d90610ba4610a58565b6111685760405162461bcd60e51b815260040180806020018281038252602f815260200180613f78602f913960400191505060405180910390fd5b611172828261263f565b5050565b6008546001600160a01b031690565b4690565b611191610a58565b6001600160a01b0316816001600160a01b0316146111e05760405162461bcd60e51b815260040180806020018281038252602f815260200180614286602f913960400191505060405180910390fd5b61117282826126ae565b606061123361122e84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061271d92505050565b612798565b905060006112548260028151811061124757fe5b602002602001015161291a565b6112796112748460088151811061126757fe5b6020026020010151612a62565b612b2c565b6112898460098151811061124757fe5b6040516020018084815260200183805190602001908083835b602083106112c15780518252601f1990920191602091820191016112a2565b51815160209384036101000a6000190180199092169116179052920193845250604080518085038152938201815283519382019390932060008181526006909252929020549194505060ff1615915061134d90505760405162461bcd60e51b81526004018080602001828103825260288152602001806142096028913960400191505060405180910390fd5b6000818152600660208190526040909120805460ff19166001179055825160609161138a9161122e9161138591879190811061126757fe5b61271d565b9050611394613e54565b6113b1826003815181106113a457fe5b6020026020010151612798565b6113c18560098151811061124757fe5b815181106113cb57fe5b6020026020010151905060006113fc6113e383612798565b6000815181106113ef57fe5b6020026020010151612c9f565b6001600160a01b0380821660009081526004602052604090205491925016806114565760405162461bcd60e51b81526004018080602001828103825260228152602001806140af6022913960400191505060405180910390fd5b6001600160a01b03808216600090815260056020908152604080832054835260029091529020548751911690611493908890600890811061124757fe5b63ffffffff1916156114d65760405162461bcd60e51b815260040180806020018281038252602581526020018061408a6025913960400191505060405180910390fd5b61151e6114e98860068151811061126757fe5b6114f98960088151811061126757fe5b6115098a60078151811061126757fe5b6115198b60058151811061124757fe5b612d2f565b61156f576040805162461bcd60e51b815260206004820152601f60248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f50524f4f4600604482015290519081900360640190fd5b6115dd6115828860028151811061124757fe5b6115928960038151811061124757fe5b6115a28a60048151811061124757fe5b60001b6115b58b60058151811061124757fe5b60001b6115c88c60008151811061124757fe5b6115d88d60018151811061126757fe5b612f76565b50806001600160a01b0316638274664f6115f5610a58565b846115ff886130bf565b6040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561167b578181015183820152602001611663565b50505050905090810190601f1680156116a85780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b1580156116c957600080fd5b505af11580156116dd573d6000803e3d6000fd5b50505050505050505050505050565b6116f581610a68565b50565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b01902081565b60066020526000908152604090205460ff1681565b600061173e81610ba4610a58565b600a906117a45760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506116f56040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b81525061312d565b60006117e481610ba4610a58565b600a9061184a5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5050600780546001600160a01b0319166001600160a01b0392909216919091179055565b6004602052600090815260409020546001600160a01b031681565b604080516826a0a82faa27a5a2a760b91b8152905190819003600901902081565b60008281526001602052604081206118c8908363ffffffff6131e916565b90505b92915050565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b0190206118fd81610ba4610a58565b600a906119635760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b03848116600090815260036020526040902054161580156119a457506001600160a01b0383811660009081526004602052604090205416155b6119f5576040805162461bcd60e51b815260206004820181905260248201527f526f6f74436861696e4d616e616765723a20414c52454144595f4d4150504544604482015290519081900360640190fd5b611a008484846131f5565b50505050565b60008281526001602052604081206118c8908363ffffffff61348416565b600081565b6000611a3781610ba4610a58565b600a90611a9d5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506116f56040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613499565b6000611add81610ba4610a58565b600a90611b435760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5050600880546001600160a01b0319166001600160a01b0392909216919091179055565b60005460ff1615611bb0576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b611be16040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613537565b611c126040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613499565b611c1d600082611168565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020611c479082611168565b506000805460ff19166001179055565b60008181526001602052604081206118cb90613589565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020611cb281610ba4610a58565b600a90611d185760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b0380851660009081526003602081815260408084205488861685526004835281852054861680865293909252909220549183169290911615611d8e576001600160a01b038116600090815260036020908152604080832080546001600160a01b031916905560059091528120555b6001600160a01b038281166000908152600460205260409020541615611dd5576001600160a01b038216600090815260046020526040902080546001600160a01b03191690555b611de08686866131f5565b505050505050565b600082815260016020526040902060020154611e0690610ba4610a58565b6111e05760405162461bcd60e51b81526004018080602001828103825260308152602001806140f96030913960400191505060405180910390fd5b604080516611115413d4d25560ca1b8152905190819003600701902081565b6000611e6e81610ba4610a58565b600a90611ed45760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b038216611f1a5760405162461bcd60e51b815260040180806020018281038252602d815260200180613fa7602d913960400191505060405180910390fd5b50600980546001600160a01b0319166001600160a01b0392909216919091179055565b6007546001600160a01b031690565b6001600160a01b03831673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee1415611fa85760405162461bcd60e51b81526004018080602001828103825260248152602001806141e56024913960400191505060405180910390fd5b611a00848484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061208e92505050565b60056020526000908152604090205481565b6002602052600090815260409020546001600160a01b031681565b6003602052600090815260409020546001600160a01b031681565b6000333014156120895760606000368080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505050503601516001600160a01b03169150610a659050565b503390565b6001600160a01b03808316600090815260056020908152604080832054600390925290912054909116158015906120c457508015155b6120ff5760405162461bcd60e51b81526004018080602001828103825260228152602001806140af6022913960400191505060405180910390fd5b6000818152600260205260409020546001600160a01b0316806121535760405162461bcd60e51b81526004018080602001828103825260248152602001806140176024913960400191505060405180910390fd5b6001600160a01b0385166121ae576040805162461bcd60e51b815260206004820152601e60248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f555345520000604482015290519081900360640190fd5b806001600160a01b031663e375b64e6121c5610a58565b8787876040518563ffffffff1660e01b815260040180856001600160a01b03166001600160a01b03168152602001846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561225c578181015183820152602001612244565b50505050905090810190601f1680156122895780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b1580156122ab57600080fd5b505af11580156122bf573d6000803e3d6000fd5b50505050606085858560405160200180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015612338578181015183820152602001612320565b50505050905090810190601f1680156123655780820380516001836020036101000a031916815260200191505b5060408051808303601f19018152828252600780546009546611115413d4d25560ca1b865284519586900390920185206020808701828152878701968752855160608901528551959d506001600160a01b039384169c506316f198319b5092909316985096508a955093608001919085019080838360005b838110156123f55781810151838201526020016123dd565b50505050905090810190601f1680156124225780820380516001836020036101000a031916815260200191505b5093505050506040516020818303038152906040526040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561249b578181015183820152602001612483565b50505050905090810190601f1680156124c85780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b1580156124e857600080fd5b505af11580156124fc573d6000803e3d6000fd5b50505050505050505050565b60006001600160a01b03861661254f5760405162461bcd60e51b81526004018080602001828103825260258152602001806141296025913960400191505060405180910390fd5b600161256261255d87613594565b613620565b83868660405160008152602001604052604051808581526020018460ff1660ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa1580156125bc573d6000803e3d6000fd5b505050602060405103516001600160a01b0316866001600160a01b031614905095945050505050565b6000828201838110156118c8576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600082815260016020526040902061265d908263ffffffff61366c16565b156111725761266a610a58565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b60008281526001602052604090206126cc908263ffffffff61368116565b15611172576126d9610a58565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612725613e54565b600082511161277b576040805162461bcd60e51b815260206004820152601f60248201527f524c505265616465723a20494e56414c49445f42595445535f4c454e47544800604482015290519081900360640190fd5b506040805180820190915281518152602082810190820152919050565b60606127a382613696565b6127f4576040805162461bcd60e51b815260206004820152601860248201527f524c505265616465723a204954454d5f4e4f545f4c4953540000000000000000604482015290519081900360640190fd5b60006127ff836136c2565b905060608167ffffffffffffffff8111801561281a57600080fd5b5060405190808252806020026020018201604052801561285457816020015b612841613e54565b8152602001906001900390816128395790505b5090506000612866856020015161374e565b855190915081146128a85760405162461bcd60e51b81526004018080602001828103825260278152602001806142316027913960400191505060405180910390fd5b60006128b786602001516137e2565b60208701510190506000805b8581101561290e576128d48361374e565b91506040518060400160405280838152602001848152508582815181106128f757fe5b6020908102919091010152918101916001016128c3565b50929695505050505050565b600061292582613696565b15612977576040805162461bcd60e51b815260206004820181905260248201527f524c505265616465723a204445434f44494e475f4c4953545f41535f55494e54604482015290519081900360640190fd5b8151602110156129ce576040805162461bcd60e51b815260206004820152601e60248201527f524c505265616465723a20494e56414c49445f55494e545f4c454e4754480000604482015290519081900360640190fd5b60006129dd836020015161374e565b83519091508114612a1f5760405162461bcd60e51b81526004018080602001828103825260278152602001806142b56027913960400191505060405180910390fd5b6000612a2e84602001516137e2565b84516020808701518301805193945091849003929190831015612a5857826020036101000a820491505b5095945050505050565b60606000612a73836020015161374e565b83519091508114612ab55760405162461bcd60e51b81526004018080602001828103825260288152602001806140d16028913960400191505060405180910390fd5b6000612ac484602001516137e2565b845190915081900360608167ffffffffffffffff81118015612ae557600080fd5b506040519080825280601f01601f191660200182016040528015612b10576020820181803683370190505b5090506000816020019050612a58848860200151018285613845565b604080516020810190915260008152815160609190156118cb57600080612b54600086613890565b60f81c90506001811480612b6b57508060ff166003145b15612bfa57600185516002020367ffffffffffffffff81118015612b8e57600080fd5b506040519080825280601f01601f191660200182016040528015612bb9576020820181803683370190505b5092506000612bc9600187613890565b90508084600081518110612bd957fe5b60200101906001600160f81b031916908160001a9053506001925050612c4b565b600285516002020367ffffffffffffffff81118015612c1857600080fd5b506040519080825280601f01601f191660200182016040528015612c43576020820181803683370190505b509250600091505b60ff82165b8351811015612c9657612c6b8360ff16820360020187613890565b848281518110612c7757fe5b60200101906001600160f81b031916908160001a905350600101612c50565b50505092915050565b6000612caa82613696565b15612ce65760405162461bcd60e51b815260040180806020018281038252602381526020018061417a6023913960400191505060405180910390fd5b8151601514612d265760405162461bcd60e51b81526004018080602001828103825260218152602001806142dc6021913960400191505060405180910390fd5b6118cb8261291a565b6000612d39613e54565b612d428461271d565b90506060612d4f82612798565b905060608085600082612d618b612b2c565b9050805160001415612d7d576000975050505050505050612f6e565b60005b8651811015612f65578151831115612da357600098505050505050505050612f6e565b612dbf878281518110612db257fe5b60200260200101516130bf565b955085805190602001208414612de057600098505050505050505050612f6e565b612def8782815181106113a457fe5b9450845160111415612eac578151831415612e4b578c80519060200120612e1c8660108151811061126757fe5b805190602001201415612e3a57600198505050505050505050612f6e565b600098505050505050505050612f6e565b6000828481518110612e5957fe5b016020015160f81c90506010811115612e7e5760009950505050505050505050612f6e565b612e9d868260ff1681518110612e9057fe5b60200260200101516138ed565b94505060019290920191612f5d565b845160021415612e3a576000612ed2612ecb8760008151811061126757fe5b848661398c565b905082518185011415612f28578d80519060200120612ef78760018151811061126757fe5b805190602001201415612f165760019950505050505050505050612f6e565b60009950505050505050505050612f6e565b80612f3f5760009950505050505050505050612f6e565b8084019350612f5486600181518110612e9057fe5b9450612f5d9050565b600101612d80565b50505050505050505b949350505050565b600854604080516320a9cea560e11b81526004810185905290516000928392839283926001600160a01b0316916341539d4a9160248083019260a0929190829003018186803b158015612fc857600080fd5b505afa158015612fdc573d6000803e3d6000fd5b505050506040513d60a0811015612ff257600080fd5b5080516020820151606090920151909450909250905061306161301b8b8463ffffffff613a6b16565b6040805160208082018f90528183018e9052606082018d905260808083018d90528351808403909101815260a0909201909252805191012090858863ffffffff613aad16565b6130b2576040805162461bcd60e51b815260206004820181905260248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f484541444552604482015290519081900360640190fd5b9998505050505050505050565b606080826000015167ffffffffffffffff811180156130dd57600080fd5b506040519080825280601f01601f191660200182016040528015613108576020820181803683370190505b50905060008160200190506131268460200151828660000151613845565b5092915050565b6040518060800160405280604f815260200161403b604f913980516020918201208251838301206040805180820190915260018152603160f81b930192909252907fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc630613198611185565b604080516020808201979097528082019590955260608501939093526001600160a01b03909116608084015260a0808401919091528151808403909101815260c090920190528051910120600b5550565b60006118c88383613c03565b6000818152600260205260409020546001600160a01b03166132485760405162461bcd60e51b815260040180806020018281038252602a815260200180613f07602a913960400191505060405180910390fd5b6001600160a01b03808416600081815260036020908152604080832080549588166001600160a01b031996871681179091558084526004835281842080549096168517909555838352600590915280822085905551849392917f9e651a8866fbea043e911d816ec254b0e3c992c06fff32d605e72362d6023bd991a4604080516001600160a01b0380861660208084019190915281861683850152606083810186905284518085038201815260808086018088526007546009546826a0a82faa27a5a2a760b91b9092528851978890036089018820888701818152898b019a8b528551968a019690965284519499918816986316f1983198939093169690958a9590949293909201919085019080838360005b8381101561337357818101518382015260200161335b565b50505050905090810190601f1680156133a05780820380516001836020036101000a031916815260200191505b5093505050506040516020818303038152906040526040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015613419578181015183820152602001613401565b50505050905090810190601f1680156134465780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b15801561346657600080fd5b505af115801561347a573d6000803e3d6000fd5b5050505050505050565b60006118c8836001600160a01b038416613c67565b806040516020018082805190602001908083835b602083106134cc5780518252601f1990920191602091820191016134ad565b51815160209384036101000a60001901801990921691161790527f3a20494e53554646494349454e545f5045524d495353494f4e530000000000009190930190815260408051808303600519018152601a909201905280516111729550600a94509201919050613e6e565b60005460ff1615613580576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b611c478161312d565b60006118cb82613c7f565b6000604051806080016040528060438152602001613fd460439139805190602001208260000151836020015184604001518051906020012060405160200180858152602001848152602001836001600160a01b03166001600160a01b03168152602001828152602001945050505050604051602081830303815290604052805190602001209050919050565b600061362a6110d6565b82604051602001808061190160f01b81525060020183815260200182815260200192505050604051602081830303815290604052805190602001209050919050565b60006118c8836001600160a01b038416613c83565b60006118c8836001600160a01b038416613ccd565b6020810151805160009190821a9060c08210156136b8576000925050506110ef565b5060019392505050565b6000806000905060006136d884602001516137e2565b602085015185519181019250015b80821015613745576136f78261374e565b820191508082111561373a5760405162461bcd60e51b815260040180806020018281038252602c81526020018061414e602c913960400191505060405180910390fd5b6001909201916136e6565b50909392505050565b80516000908190811a60808110156137695760019150613126565b60b881101561377e57607e1981019150613126565b60c08110156137ab5760b78103600185019450806020036101000a85510460018201810193505050613126565b60f88110156137c05760be1981019150613126565b60019390930151602084900360f7016101000a900490920160f5190192915050565b8051600090811a60808110156137fc5760009150506110ef565b60b8811080613817575060c08110801590613817575060f881105b156138265760019150506110ef565b60c081101561383a5760b5190190506110ef565b60f5190190506110ef565b8061384f57610b64565b5b6020811061386f578251825260209283019290910190601f1901613850565b915181516020939093036101000a6000190180199091169216919091179052565b600060028306156138c15760108260028504815181106138ac57fe5b016020015160f81c816138bb57fe5b066138e3565b60108260028504815181106138d257fe5b016020015160f81c816138e157fe5b045b60f81b9392505050565b6000806138fd836020015161374e565b8351909150811461393f5760405162461bcd60e51b815260040180806020018281038252602e815260200180614258602e913960400191505060405180910390fd5b825160211461397f5760405162461bcd60e51b8152600401808060200182810382526025815260200180613f536025913960400191505060405180910390fd5b5050602001516001015190565b600080606061399a86612b2c565b90506060815167ffffffffffffffff811180156139b657600080fd5b506040519080825280601f01601f1916602001820160405280156139e1576020820181803683370190505b509050845b82518601811015613a3b5760008782815181106139ff57fe5b602001015160f81c60f81b9050808388840381518110613a1b57fe5b60200101906001600160f81b031916908160001a905350506001016139e6565b50808051906020012082805190602001201415613a5b5781519250613a60565b600092505b509095945050505050565b60006118c883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250613d93565b60006020825181613aba57fe5b0615613b04576040805162461bcd60e51b8152602060048201526014602482015273092dcecc2d8d2c840e0e4dedecc40d8cadccee8d60631b604482015290519081900360640190fd5b60006020835181613b1157fe5b0490508060020a8510613b63576040805162461bcd60e51b81526020600482015260156024820152744c65616620696e64657820697320746f6f2062696760581b604482015290519081900360640190fd5b60008660205b85518111613bf55785810151925060028806613bb55781836040516020018083815260200182815260200192505050604051602081830303815290604052805190602001209150613be7565b828260405160200180838152602001828152602001925050506040516020818303038152906040528051906020012091505b600288049750602001613b69565b509094149695505050505050565b81546000908210613c455760405162461bcd60e51b8152600401808060200182810382526022815260200180613f316022913960400191505060405180910390fd5b826000018281548110613c5457fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000613c8f8383613c67565b613cc5575081546001818101845560008481526020808220909301849055845484825282860190935260409020919091556118cb565b5060006118cb565b60008181526001830160205260408120548015613d895783546000198083019190810190600090879083908110613d0057fe5b9060005260206000200154905080876000018481548110613d1d57fe5b600091825260208083209091019290925582815260018981019092526040902090840190558654879080613d4d57fe5b600190038181906000526020600020016000905590558660010160008781526020019081526020016000206000905560019450505050506118cb565b60009150506118cb565b60008184841115613e225760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015613de7578181015183820152602001613dcf565b50505050905090810190601f168015613e145780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60405180606001604052806000815260200160006001600160a01b03168152602001606081525090565b604051806040016040528060008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10613eaf57805160ff1916838001178555613edc565b82800160010185558215613edc579182015b82811115613edc578251825591602001919060010190613ec1565b50613ee8929150613eec565b5090565b610a6591905b80821115613ee85760008155600101613ef256fe526f6f74436861696e4d616e616765723a20544f4b454e5f545950455f4e4f545f535550504f52544544456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473524c505265616465723a20494e56414c49445f55494e545f5354524943545f4c454e475448416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e74526f6f74436861696e4d616e616765723a20494e56414c49445f4348494c445f434841494e5f414444524553534d6574615472616e73616374696f6e2875696e74323536206e6f6e63652c616464726573732066726f6d2c62797465732066756e6374696f6e5369676e617475726529526f6f74436861696e4d616e616765723a20494e56414c49445f544f4b454e5f54595045454950373132446f6d61696e28737472696e67206e616d652c737472696e672076657273696f6e2c6164647265737320766572696679696e67436f6e74726163742c627974657333322073616c7429526f6f74436861696e4d616e616765723a20494e56414c49445f4252414e43485f4d41534b526f6f74436861696e4d616e616765723a20544f4b454e5f4e4f545f4d4150504544524c505265616465723a2042595445535f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b654e61746976654d6574615472616e73616374696f6e3a20494e56414c49445f5349474e4552524c505265616465723a204e554d5f4954454d535f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a204445434f44494e475f4c4953545f41535f41444452455353526f6f74436861696e4d616e616765723a2045544845525f5452414e534645525f4641494c45445369676e657220616e64207369676e617475726520646f206e6f74206d61746368526f6f74436861696e4d616e616765723a20494e56414c49445f524f4f545f544f4b454e526f6f74436861696e4d616e616765723a20455849545f414c52454144595f50524f434553534544524c505265616465723a204c4953545f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a2055494e545f5354524943545f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66524c505265616465723a2055494e545f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a20494e56414c49445f414444524553535f4c454e475448a164736f6c6343000606000a","storage":{"0x0":"0x1","0x7":"0xe0afc4e9e03e4aa67257df7a2eca77454309789d","0x8":"0xbe5deac45dd1ca4ee18dc2d585d84d3d3cb82b0d","0x9":"0x0","0xa":"0x55","0xb":"0x2603903cfd8895fdde3da4d607d44203e86098073e351022fd12745d3436e93a","0xeb5be412f275a18f6e4d622aee4ff40b21467c926224771b782d4c095d1444b":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x162b27a30e878e20728deaa5c9814fd57ccf962b998b8733ce65749bc61c552f":"0x58a175bebc8ec21a94ea63aa5a28743945940ee6","0x1a93463c7bbb7215968307c7cd357c2009c10df2a511dd62c1189098e4f3249b":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x415fec6a4fd7706b96d3a0a30121284bc5e2b28b978c20486c9f5e20d44fc781":"0x1","0x4dc1f0160d96279adc262db20edcc15527e32cb28eda582becc5ac0bc453be34":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x5fc73aa2ab567caef8745f0709fae506c01972ffb297bd9225bc262d6e87746f":"0x1","0x6ce1cd05966f090b8daa7b2ee7f80930bbb39d19b693045725fbae5fa44fda90":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0xa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb49":"0x1","0xc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a8":"0x526f6f74436861696e4d616e616765723a20494e53554646494349454e545f50","0xc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a9":"0x45524d495353494f4e5300000000000000000000000000000000000000000000","0xd61ba0007bb57e62613f82f528c06ba46d36349cf5be567b12f878ef04849a7d":"0x1","0xf960df71fab73e593428c10f56f55e7ea46985963177def0458b97f1afec9576":"0xcf4e755f204163e9213ba8b1305036e386579ccc70731c25c62a101197811f48"}},"0x287dee389caaa49edc112888f2bcfd927b472e25":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c80634f89059e1461002d575b5f80fd5b61004061003b366004610125565b610054565b604051901515815260200160405180910390f35b5f806100985f85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101029050565b60ff1690505f811180156100f857506100f36100b5826001610191565b85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101029050565b60ff16155b9150505b92915050565b5f828281518110610115576101156101b0565b016020015160f81c905092915050565b5f8060208385031215610136575f80fd5b823567ffffffffffffffff8082111561014d575f80fd5b818501915085601f830112610160575f80fd5b81358181111561016e575f80fd5b86602082850101111561017f575f80fd5b60209290920196919550909350505050565b808201808211156100fc57634e487b7160e01b5f52601160045260245ffd5b634e487b7160e01b5f52603260045260245ffdfea164736f6c6343000818000a","storage":{}},"0x3198fc981626687f4b5bdf0fbeabb0a5e0489c03":{"nonce":1,"balance":"0x8ac7230489e80000","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0x1","0x97":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x13cf90498be59d359caa5b6092b365feab4610605d7107d1f05f8e94ac955652":"0x1","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xc2110388dd54228ae0a834119457ede938bf0b57","0x412386de53449251cbf7ce1f4c6a038bf9c0746e62d331b08ef0c3fa7d0ab672":"0x4fbf7b2f171336958be5d15ff762a5cff5363568","0x60793a5062d506d35cc8f1beda67ee5028c16bfcd9c923d5bfc439c04bd929b1":"0x6ac8f19d1e0f81147cdf2a1e53cb1f4e18417204","0x75df8b43665bf2e4996a686913c4c278ca7aed85444740ca40355b1c9a94b504":"0x1","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xf851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004":"0xc965345edac823d56812cd20a10316233916a605"}},"0x39a27956b78d00a4e00ea8833ff0947410a2933f":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xc9":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0xca":"0x4a3c194eb88966178bfdd81744dddafed611b830","0xcb":"0x4872cc1be60a9db9c880a0a437da7a6af134f08f","0xcc":"0xf8c26340c1eaea6c7ff1760b25005e1306953572","0xce":"0xce4bb7dc1eb9dce75743de6a4b48534fd427ef51","0xc6892776bb3da1e1199a03e0d3131aea089754b59c557b750c478ebc85ccaa":"0x6e66740000000000000000000000000000000000000000000000000000000006","0x6cb37a6d512a1e227e627eddc133023e6d00bfedff31a600abb75aa93e9a4a0":"0x6b7265737573000000000000000000000000000000000000000000000000000c","0x8e966fe8b9b43d48017ba1eb562ced91049de778396aaa438773698b3fa8fb6":"0x0","0x94a32b1c7b189ce7293f7ae444cdcab6800d858454022d15355d5ecc5b32b26":"0x0","0xa4b2d73a9f36ca5eed107f7c3d2ba877fb7537d447256726bcde9bac9e9aaee":"0x0","0xe0e3ab102c26f13da20123aa517b31e99cf65b7b720ba0dd7138012fd23eff2":"0x0","0x1203b5e51c7d5be6da42b83f22878d3583e53123857d27fc3cff3df46fb9126c":"0x0","0x13477730039a04f4290adf0e48e98b233579c040281545e4446ce662ba56a9be":"0x7800000000000000000000000000000000000000000000000000000000000002","0x1e06d49ce7b00846691778f302e94a3ac9c2633d745ebe73d68353c941e68dee":"0x626974636f696e0000000000000000000000000000000000000000000000000e","0x1e99199375610ffe00d28ee5827c616cf6469be3de2a2f738d955eb6b62127e8":"0x1","0x21e80eded1b2e1c5d976c85e89dde60bd4e99a8d66346af0e359ac854bceba44":"0x0","0x254d9ade81439f29723741d6ff407eab1fe03caffb042bd85e53955e41fb9792":"0x616c74696d697374000000000000000000000000000000000000000000000010","0x269db12b2cd2aeb7d5f52eda16edb1d211ccbea12da1ebfa60ed5f8f396c1d04":"0x0","0x2a3f03435eedee01de7e1c4386b04ca8469edd8df00408cd6d2b058bce1cecfa":"0x0","0x323a3cb169499006d6635c58232c8c58e23c20bf9e1d309d6b3bc6fb2c7a093d":"0x0","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x229c56b7805ab5935a883207f6a6bd5847e65aee","0x37aac864d4715a975bd45cae6be99de9f7968cf995917cc7f8192940fb62acbf":"0x0","0x3f69f26894a7ae0f7a7aa6c2d77935589dabbff6435aee960da15064dea7cd59":"0x64616f0000000000000000000000000000000000000000000000000000000006","0x467a68fda3230ce33f64703ebdbd91caccf235403282ae9fe390675ef39e9c94":"0x0","0x50ae8c017c4c1fddbe9509bd2b916f5dd9da11ddb639f2a4230322f49a41ac87":"0x1","0x5496787fc1ebdfeba375028c1865f13fbb1d63c0caa356ccc1b29a80f3ebd622":"0x0","0x576dd8d1a7b74aba0a99a213f50d74aa642a2c80bd5a854b24aac7568afea0f7":"0x626974676574000000000000000000000000000000000000000000000000000c","0x5b54338c052ce22ec334b6c5a19c4b122701c5fd4d3a2a5f5890f57050e0aafa":"0x626c6f636b636861696e00000000000000000000000000000000000000000014","0x5d9de30f0e5e02628e726fd23e310ee9e64489866fa6959825148a25d40e4c83":"0x0","0x5e2d99ab4a1a153039a4b2e068d64802da8735071a2d018ee9d04297945bed00":"0x0","0x670006c4193123492fb25db465ed52e62aff2f076289f4f1a5f167237f5e579d":"0x6d616e676100000000000000000000000000000000000000000000000000000a","0x6deac161c541001c0d79afaf7b809418785fa5ca6533d86bcf312e7213ee08fc":"0x0","0x6eaa0db35203bc0d58aff54ca630dd125b27758aa6204f7a11c0617f7c2fa776":"0x706f670000000000000000000000000000000000000000000000000000000006","0x732abe4661f55132b7f119cab9a9985be6630299dfc92870cc910f147795bc44":"0x0","0x743eb517f46c12bb593097087a972028308ce2e819a76cfb5488751f9d1ca34a":"0x7265616c6d00000000000000000000000000000000000000000000000000000a","0x750dfb39c9afc828c341e1a8e8fdca0b3914baf43303e1ef21fbfe8ec8ee016a":"0x0","0x7cbf647b96a1d1a533ea4bc3a4a8a78f166bd91e6a96afb12f063fef0e9cb960":"0x0","0x7dc972254779cfb51850c0eaccfcb71207822b3c10d4840567bec3dfbf0dff13":"0x636f6d0000000000000000000000000000000000000000000000000000000006","0x7dfa160584f41570c33e8e6c42c5314a7b45ddc162f99fd101ccc10c7b5b3dd3":"0x77616c6c6574000000000000000000000000000000000000000000000000000c","0x868a5f38a2d46181ffad442d7bc5b337b3c349a58e4979f2901786c6123b996c":"0x6b6c65766572000000000000000000000000000000000000000000000000000c","0x87b2c647061aef22ef1aba96c67f440d471dfac27e9873ff4a03793b402d32ee":"0x706f6c79676f6e0000000000000000000000000000000000000000000000000e","0x893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e":"0x7c3c91245769c8b7450ad522792dec4bd4bf797f","0x91e744007b4b3621bec7c01ea851c3f48cf196b9cc6c566a48cec8c5faac6e62":"0x0","0x92c5a28dd4caaa50e0a8370243a5c600f64349e8b03604b403cbe111b50f1f7b":"0x3838380000000000000000000000000000000000000000000000000000000006","0x947936973a3a21b10c8980e1a8939a55c7339d302161884a3de05cf090e812f0":"0x1","0x9535d3ea47c5e1398d3405b4fadc73de6b1b1e6a66f674a8886ab7a6c873a390":"0x63727970746f000000000000000000000000000000000000000000000000000c","0x9956a4e94676c45844be3667f17e077c7cb53aa4e87e5a71d65e56b291232715":"0x676f000000000000000000000000000000000000000000000000000000000004","0x9c6ba1ddff1ffbc14dcdc1f97db867554a42a39e00e892c7e882dbb3dca89ebf":"0x6869000000000000000000000000000000000000000000000000000000000004","0x9f836a0f81651f597cee678b440ba8c853c633e6654809efb83d4b22aff06fb2":"0x616e696d6500000000000000000000000000000000000000000000000000000a","0x9fecf1e12f4b8ec337da992721a0f27526ddbd6be1e77885ab963c09afcf0fc1":"0x0","0xab129a0f8c6cf8d160116a28abc7369c2f8a098fc023f00f07dc3e1d5798e47a":"0x0","0xb04c0eb6f034d9a3179a4e6f953bdf8afc78ba2cdcfbc775076e1c2a0bb67818":"0x0","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xbe51b53bc2060a7a6419622b5a9adc00b50a57e6aa741882f2f60f95d4580078":"0x636c617900000000000000000000000000000000000000000000000000000008","0xbf350522e335b8ab3da1d099c93cdc09179f1e15ea6aa1acfaa4afb1ef87eabf":"0x756e73746f707061626c65000000000000000000000000000000000000000016","0xcbf7a3d53e0851ac15a415b99c2ba95a2497dd9dd44068ac261bcbdafdfe8472":"0x707564677900000000000000000000000000000000000000000000000000000a","0xcf4411216f3fdf787d1cfe037bbcfa0d5293d83a8082f8e4141266399e2a784b":"0x61757374696e000000000000000000000000000000000000000000000000000c","0xcfdbac664139565f92cce149a345e5f19355d25b3eb8a70c549d5da3283a15b8":"0x7a696c0000000000000000000000000000000000000000000000000000000006","0xcfeb64c30a93ecd7224f854b09be57bb6b3962e739fa8e3ea3a1851502474c07":"0x1","0xe03c9c593ce8661bd39f77653f7ca6c43f093aa7f3b95890f309f67b57f39e74":"0x0","0xe50c62c16d12655dfdbd61c232155e5c3a1cf61977d2d8e7449cb88611b73832":"0x0","0xeeb0b17d77f2c9069ad443f3927c0802d98d5553e52b17c985d45d4a10b79566":"0x62696e616e636575730000000000000000000000000000000000000000000012","0xf562ef0db022f25a957fb6e49aa07004f14a50ed5b23279e9ac25b4632f7bf1c":"0x0","0xf6776268d6c5847a771099280c742d684a4b22bac609ba615de51f7f893ff2bc":"0x0"}},"0x3f1194b9019002863ad0dbbe295294547c0d36a9":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100b1575f3560e01c80635b0fc9c31161006e5780635b0fc9c3146101a55780635ef2c7f0146101b8578063a22cb465146101cb578063cf408823146101de578063e985e9c5146101f1578063f79fe5381461023c575f80fd5b80630178b8bf146100b557806302571be3146100fd57806306ab59231461011057806314ab90381461013157806316a25cbd146101465780631896f70a14610192575b5f80fd5b6100e06100c3366004610785565b5f908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100e061010b366004610785565b610266565b61012361011e3660046107b7565b610292565b6040519081526020016100f4565b61014461013f366004610800565b61035f565b005b610179610154366004610785565b5f90815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100f4565b6101446101a036600461082a565b61042e565b6101446101b336600461082a565b6104ef565b6101446101c636600461084b565b61058e565b6101446101d936600461089e565b6105af565b6101446101ec3660046108d7565b61061a565b61022c6101ff366004610921565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205460ff1690565b60405190151581526020016100f4565b61022c61024a366004610785565b5f908152602081905260409020546001600160a01b0316151590565b5f818152602081905260408120546001600160a01b031630810361028c57505f92915050565b92915050565b5f8381526020819052604081205484906001600160a01b0316338114806102db57506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b6102e3575f80fd5b604080516020808201899052818301889052825180830384018152606090920190925280519101206103158186610635565b6040516001600160a01b0386168152869088907fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829060200160405180910390a39695505050505050565b5f8281526020819052604090205482906001600160a01b0316338114806103a857506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b6103b0575f80fd5b60405167ffffffffffffffff8416815284907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a250505f91825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b5f8281526020819052604090205482906001600160a01b03163381148061047757506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b61047f575f80fd5b6040516001600160a01b038416815284907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a250505f9182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b5f8281526020819052604090205482906001600160a01b03163381148061053857506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b610540575f80fd5b61054a8484610635565b6040516001600160a01b038416815284907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a250505050565b5f61059a868686610292565b90506105a7818484610662565b505050505050565b335f8181526001602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b61062484846104ef565b61062f848383610662565b50505050565b5f9182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b5f838152602081905260409020600101546001600160a01b038381169116146106e6575f838152602081815260409182902060010180546001600160a01b0319166001600160a01b038616908117909155915191825284917f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a0910160405180910390a25b5f8381526020819052604090206001015467ffffffffffffffff828116600160a01b9092041614610780575f8381526020818152604091829020600101805467ffffffffffffffff60a01b1916600160a01b67ffffffffffffffff861690810291909117909155915191825284917f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa68910160405180910390a25b505050565b5f60208284031215610795575f80fd5b5035919050565b80356001600160a01b03811681146107b2575f80fd5b919050565b5f805f606084860312156107c9575f80fd5b83359250602084013591506107e06040850161079c565b90509250925092565b803567ffffffffffffffff811681146107b2575f80fd5b5f8060408385031215610811575f80fd5b82359150610821602084016107e9565b90509250929050565b5f806040838503121561083b575f80fd5b823591506108216020840161079c565b5f805f805f60a0868803121561085f575f80fd5b85359450602086013593506108766040870161079c565b92506108846060870161079c565b9150610892608087016107e9565b90509295509295909350565b5f80604083850312156108af575f80fd5b6108b88361079c565b9150602083013580151581146108cc575f80fd5b809150509250929050565b5f805f80608085870312156108ea575f80fd5b843593506108fa6020860161079c565b92506109086040860161079c565b9150610916606086016107e9565b905092959194509250565b5f8060408385031215610932575f80fd5b61093b8361079c565b91506108216020840161079c56fea164736f6c6343000818000a","storage":{"0xdd4f47a3b6f87903b728feed7a23273bd8de58e4fa257d37a74a5881e5d92ff":"0xf670681605efc4efc804f5a9b97ee89520473d56","0x14ce109f1cffdc11aa7355660be720f902291be09fb159b4c578958cd0f533bc":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x14ce109f1cffdc11aa7355660be720f902291be09fb159b4c578958cd0f533bd":"0x0","0x1e2c8528d7e8e90443ad0a4e37b6f2b1daed719a574ce3a0c347063e8d839d50":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1e2c8528d7e8e90443ad0a4e37b6f2b1daed719a574ce3a0c347063e8d839d51":"0x0","0x2fb4213711fd985fc1fb1ea2bfa660b0b37fd50c6c74ab531d9b54b29dd5177e":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2fb4213711fd985fc1fb1ea2bfa660b0b37fd50c6c74ab531d9b54b29dd5177f":"0x0","0x859ecef2e168dc10231b000bd53493b42bc9d944cac29d94582c1e1d43592131":"0xc965345edac823d56812cd20a10316233916a605","0x8878c6daefcfc78c7f181d00d719b4a0612dd3e65cafeb72507d15c036a9f690":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0xe4fdf45c2f8d198854f8823809c7a988eeaaa493","0xfb5568c6845cf0d5915af088a5d8ba90a5ff735e102c9a79609ef7d043f1108c":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xfb5568c6845cf0d5915af088a5d8ba90a5ff735e102c9a79609ef7d043f1108d":"0x0"}},"0x4872cc1be60a9db9c880a0a437da7a6af134f08f":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100935760003560e01c80637362d9c8116100665780637362d9c8146101285780637b1039991461014e57806399e0dd7c14610172578063bb5f747b146101e2578063d6cd94731461020857610093565b806310154bad14610098578063291d9549146100c05780633af32abf146100e65780634c5a628c14610120575b600080fd5b6100be600480360360208110156100ae57600080fd5b50356001600160a01b0316610210565b005b6100be600480360360208110156100d657600080fd5b50356001600160a01b0316610260565b61010c600480360360208110156100fc57600080fd5b50356001600160a01b03166102ad565b604080519115158252519081900360200190f35b6100be6102c6565b6100be6004803603602081101561013e57600080fd5b50356001600160a01b03166102d1565b61015661031e565b604080516001600160a01b039092168252519081900360200190f35b6100be6004803603602081101561018857600080fd5b8101906020810181356401000000008111156101a357600080fd5b8201836020820111156101b557600080fd5b803590602001918460018302840111640100000000831117156101d757600080fd5b50909250905061032d565b61010c600480360360208110156101f857600080fd5b50356001600160a01b0316610404565b6100be610416565b61021933610404565b6102545760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d8161041f565b50565b61026933610404565b6102a45760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d81610467565b60006102c060018363ffffffff6104af16565b92915050565b6102cf33610516565b565b6102da33610404565b6103155760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d8161055e565b6002546001600160a01b031690565b610336336102ad565b6103715760405162461bcd60e51b815260040180806020018281038252603a815260200180610712603a913960400191505060405180910390fd5b6002546040516369426cbd60e11b8152602060048201908152602482018490526001600160a01b039092169163d284d97a91859185918190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b1580156103e857600080fd5b505af11580156103fc573d6000803e3d6000fd5b505050505050565b60006102c0818363ffffffff6104af16565b6102cf33610467565b61043060018263ffffffff6105a616565b6040516001600160a01b038216907fee1504a83b6d4a361f4c1dc78ab59bfa30d6a3b6612c403e86bb01ef2984295f90600090a250565b61047860018263ffffffff61062716565b6040516001600160a01b038216907f270d9b30cf5b0793bbfd54c9d5b94aeb49462b8148399000265144a8722da6b690600090a250565b60006001600160a01b0382166104f65760405162461bcd60e51b81526004018080602001828103825260228152602001806106b06022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b61052760008263ffffffff61062716565b6040516001600160a01b038216907f0a8eb35e5ca14b3d6f28e4abf2f128dbab231a58b56e89beb5d636115001e16590600090a250565b61056f60008263ffffffff6105a616565b6040516001600160a01b038216907f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129990600090a250565b6105b082826104af565b15610602576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b61063182826104af565b61066c5760405162461bcd60e51b815260040180806020018281038252602181526020018061068f6021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f206164647265737357686974656c69737441646d696e526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c69737441646d696e20726f6c6557686974656c6973746564526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c697374656420726f6c65a265627a7a72315820debca60946c0819dc5b5c2756c5c1dd8dd8a46f2429fa8a43a4f4362af3030c164736f6c634300050c0032","storage":{"0x2":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x5ac40fcee41fb0272a935f6e51e963102fba5db6f20e897e9361f0347eb2cae6":"0x1","0xdc4aeb95a779c8b92b845e3a94044db8ff2e43acc37da18c4b35a6bbad7c122f":"0x1"}},"0x49da8861c65460639925febe1fb4b5b59b443082":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f7e83aee1461002d575b5f80fd5b61004061003b3660046101ac565b610054565b604051901515815260200160405180910390f35b5f602082146100a95760405162461bcd60e51b815260206004820152601a60248201527f496e76616c6964207368613235362068617368206c656e677468000000000000604482015260640160405180910390fd5b6100eb5f84848080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101459050565b600286866040516100fd929190610213565b602060405180830381855afa158015610118573d5f803e3d5ffd5b5050506040513d601f19601f8201168201806040525081019061013b9190610222565b1495945050505050565b81515f90610154836020610239565b111561015e575f80fd5b50016020015190565b5f8083601f840112610177575f80fd5b50813567ffffffffffffffff81111561018e575f80fd5b6020830191508360208285010111156101a5575f80fd5b9250929050565b5f805f80604085870312156101bf575f80fd5b843567ffffffffffffffff808211156101d6575f80fd5b6101e288838901610167565b909650945060208701359150808211156101fa575f80fd5b5061020787828801610167565b95989497509550505050565b818382375f9101908152919050565b5f60208284031215610232575f80fd5b5051919050565b8082018082111561025857634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x4a3c194eb88966178bfdd81744dddafed611b830":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061009e5760003560e01c806398650275116100665780639865027514610305578063aa271e1a1461030d578063b2da297914610347578063be362e2e146103c5578063c36c2125146104fe5761009e565b80634c0b0ed2146100a35780637b103999146101595780637caf3ad81461017d5780638ad364f814610258578063983b2d56146102df575b600080fd5b610157600480360360408110156100b957600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156100e357600080fd5b8201836020820111156100f557600080fd5b803590602001918460018302840111600160201b8311171561011657600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506105bd945050505050565b005b61016161074c565b604080516001600160a01b039092168252519081900360200190f35b6101576004803603608081101561019357600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156101bd57600080fd5b8201836020820111156101cf57600080fd5b803590602001918460018302840111600160201b831117156101f057600080fd5b919390926001600160a01b0383351692604081019060200135600160201b81111561021a57600080fd5b82018360208201111561022c57600080fd5b803590602001918460018302840111600160201b8311171561024d57600080fd5b50909250905061075b565b6101576004803603606081101561026e57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561029857600080fd5b8201836020820111156102aa57600080fd5b803590602001918460018302840111600160201b831117156102cb57600080fd5b9193509150356001600160a01b0316610957565b610157600480360360208110156102f557600080fd5b50356001600160a01b0316610b2b565b610157610b7b565b6103336004803603602081101561032357600080fd5b50356001600160a01b0316610b86565b604080519115158252519081900360200190f35b6101576004803603604081101561035d57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561038757600080fd5b82018360208201111561039957600080fd5b803590602001918460018302840111600160201b831117156103ba57600080fd5b509092509050610b9e565b610157600480360360608110156103db57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561040557600080fd5b82018360208201111561041757600080fd5b803590602001918460018302840111600160201b8311171561043857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b81111561048a57600080fd5b82018360208201111561049c57600080fd5b803590602001918460018302840111600160201b831117156104bd57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610bf1945050505050565b6101576004803603606081101561051457600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561053e57600080fd5b82018360208201111561055057600080fd5b803590602001918460018302840111600160201b8311171561057157600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550505090356001600160a01b03169150610dec9050565b6105c633610b86565b6106015760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b039092169163b5466669918591849163ebf0c717916004808301926020929190829003018186803b15801561064f57600080fd5b505afa158015610663573d6000803e3d6000fd5b505050506040513d602081101561067957600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052606060448301908152875160648401528751889360840190602085019080838360005b838110156106e25781810151838201526020016106ca565b50505050905090810190601f16801561070f5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15801561073057600080fd5b505af1158015610744573d6000803e3d6000fd5b505050505050565b6001546001600160a01b031690565b6107cf8686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f89018190048102820181019092528781529250879150869081908401838280828437600092019190915250610bf192505050565b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691632525d06a91869184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b15801561082557600080fd5b505afa158015610839573d6000803e3d6000fd5b505050506040513d602081101561084f57600080fd5b5051604080516001600160e01b031960e085901b1681526004810183815260248201928352604482018d90528d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b1580156108bd57600080fd5b505afa1580156108d1573d6000803e3d6000fd5b505050506040513d60208110156108e757600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b15801561093757600080fd5b505af115801561094b573d6000803e3d6000fd5b50505050505050505050565b6109a58484848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250610bf1915050565b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691632525d06a91849184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b1580156109fb57600080fd5b505afa158015610a0f573d6000803e3d6000fd5b505050506040513d6020811015610a2557600080fd5b5051604080516001600160e01b031960e085901b1681526004810183815260248201928352604482018b90528b928b92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b158015610a9357600080fd5b505afa158015610aa7573d6000803e3d6000fd5b505050506040513d6020811015610abd57600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b158015610b0d57600080fd5b505af1158015610b21573d6000803e3d6000fd5b5050505050505050565b610b3433610b86565b610b6f5760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b610b7881611115565b50565b610b843361115d565b565b6000610b98818363ffffffff6111a516565b92915050565b610bec8383838080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250610bf1915050565b505050565b610bfa33610b86565b610c355760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691630467e014918691849163ebf0c717916004808301926020929190829003018186803b158015610c8357600080fd5b505afa158015610c97573d6000803e3d6000fd5b505050506040513d6020811015610cad57600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052608060448301908152885160848401528851899389939291606482019160a40190602087019080838360005b83811015610d1f578181015183820152602001610d07565b50505050905090810190601f168015610d4c5780820380516001836020036101000a031916815260200191505b50838103825284518152845160209182019186019080838360005b83811015610d7f578181015183820152602001610d67565b50505050905090810190601f168015610dac5780820380516001836020036101000a031916815260200191505b509650505050505050600060405180830381600087803b158015610dcf57600080fd5b505af1158015610de3573d6000803e3d6000fd5b50505050505050565b610df533610b86565b610e305760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b039092169163b5466669918691849163ebf0c717916004808301926020929190829003018186803b158015610e7e57600080fd5b505afa158015610e92573d6000803e3d6000fd5b505050506040513d6020811015610ea857600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052606060448301908152885160648401528851899360840190602085019080838360005b83811015610f11578181015183820152602001610ef9565b50505050905090810190601f168015610f3e5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015610f5f57600080fd5b505af1158015610f73573d6000803e3d6000fd5b50506001546040805163ebf0c71760e01b815290516001600160a01b039092169350632525d06a9250849184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b158015610fcd57600080fd5b505afa158015610fe1573d6000803e3d6000fd5b505050506040513d6020811015610ff757600080fd5b5051604080516001600160e01b031960e085901b16815260048101838152602482019283528a5160448301528a518b93919260640190602085019080838360005b83811015611050578181015183820152602001611038565b50505050905090810190601f16801561107d5780820380516001836020036101000a031916815260200191505b50935050505060206040518083038186803b15801561109b57600080fd5b505afa1580156110af573d6000803e3d6000fd5b505050506040513d60208110156110c557600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b158015610dcf57600080fd5b61112660008263ffffffff61120c16565b6040516001600160a01b038216907f6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f690600090a250565b61116e60008263ffffffff61128d16565b6040516001600160a01b038216907fe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb6669290600090a250565b60006001600160a01b0382166111ec5760405162461bcd60e51b81526004018080602001828103825260228152602001806113466022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b61121682826111a5565b15611268576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b61129782826111a5565b6112d25760405162461bcd60e51b81526004018080602001828103825260218152602001806113256021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe4d696e746572526f6c653a2063616c6c657220646f6573206e6f74206861766520746865204d696e74657220726f6c65526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f2061646472657373a265627a7a72315820c058d70355f7d37ff6b3b61cd850cc4a41893e30048389698c062148bf3d2ff464736f6c634300050c0032","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x789b49055833748af4eaa9affbcd84118ce8770f7e4385b5a3f428626b1f0aff":"0x1","0xdc4aeb95a779c8b92b845e3a94044db8ff2e43acc37da18c4b35a6bbad7c122f":"0x1"}},"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061007b5760003560e01c80639623609d1161004e5780639623609d1461011157806399a88ec414610124578063f2fde38b14610144578063f3b7dead1461016457600080fd5b8063204e1c7a14610080578063715018a6146100bc5780637eff275e146100d35780638da5cb5b146100f3575b600080fd5b34801561008c57600080fd5b506100a061009b366004610499565b610184565b6040516001600160a01b03909116815260200160405180910390f35b3480156100c857600080fd5b506100d1610215565b005b3480156100df57600080fd5b506100d16100ee3660046104bd565b610229565b3480156100ff57600080fd5b506000546001600160a01b03166100a0565b6100d161011f36600461050c565b610291565b34801561013057600080fd5b506100d161013f3660046104bd565b610300565b34801561015057600080fd5b506100d161015f366004610499565b610336565b34801561017057600080fd5b506100a061017f366004610499565b6103b4565b6000806000836001600160a01b03166040516101aa90635c60da1b60e01b815260040190565b600060405180830381855afa9150503d80600081146101e5576040519150601f19603f3d011682016040523d82523d6000602084013e6101ea565b606091505b5091509150816101f957600080fd5b8080602001905181019061020d91906105e2565b949350505050565b61021d6103da565b6102276000610434565b565b6102316103da565b6040516308f2839760e41b81526001600160a01b038281166004830152831690638f283970906024015b600060405180830381600087803b15801561027557600080fd5b505af1158015610289573d6000803e3d6000fd5b505050505050565b6102996103da565b60405163278f794360e11b81526001600160a01b03841690634f1ef2869034906102c990869086906004016105ff565b6000604051808303818588803b1580156102e257600080fd5b505af11580156102f6573d6000803e3d6000fd5b5050505050505050565b6103086103da565b604051631b2ce7f360e11b81526001600160a01b038281166004830152831690633659cfe69060240161025b565b61033e6103da565b6001600160a01b0381166103a85760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b6103b181610434565b50565b6000806000836001600160a01b03166040516101aa906303e1469160e61b815260040190565b6000546001600160a01b031633146102275760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161039f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146103b157600080fd5b6000602082840312156104ab57600080fd5b81356104b681610484565b9392505050565b600080604083850312156104d057600080fd5b82356104db81610484565b915060208301356104eb81610484565b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561052157600080fd5b833561052c81610484565b9250602084013561053c81610484565b9150604084013567ffffffffffffffff8082111561055957600080fd5b818601915086601f83011261056d57600080fd5b81358181111561057f5761057f6104f6565b604051601f8201601f19908116603f011681019083821181831017156105a7576105a76104f6565b816040528281528960208487010111156105c057600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000602082840312156105f457600080fd5b81516104b681610484565b60018060a01b038316815260006020604081840152835180604085015260005b8181101561063b5785810183015185820160600152820161061f565b8181111561064d576000606083870101525b50601f01601f19169290920160600194935050505056fea26469706673582212207ad53e1008cce369999f6b5f2f77109510b404ff1de9b47b639981fd68e6239264736f6c63430008090033","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x4e59b44847b379578588920ca78fbf26c0b4956c":{"nonce":0,"balance":"0x0","code":"0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe03601600081602082378035828234f58015156039578182fd5b8082525050506014600cf3","storage":{}},"0x4eb9de1fc0d800e941f326d6699e9e11969557ea":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063100cdd911461002d575b5f80fd5b61004061003b3660046102cd565b610042565b005b5f5b818110156101b8575f7f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e28484848181106100805761008061033c565b905060200201356040516020016100a1929190918252602082015260400190565b60408051808303601f190181529082905280516020909101206331a9108f60e11b82526004820181905291507f000000000000000000000000107733fed96c4cd390c944a31f5425a7fb98ae5e6001600160a01b0316906323b872dd908290636352211e90602401602060405180830381865afa158015610124573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101489190610350565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015261dead6024820152604481018490526064015f604051808303815f87803b158015610195575f80fd5b505af11580156101a7573d5f803e3d5ffd5b505060019093019250610044915050565b5080156102c9577f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e282826101ed60018261037d565b8181106101fc576101fc61033c565b9050602002013560405160200161021d929190918252602082015260400190565b604051602081830303815290604052805190602001205f1c7f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e283835f8181106102685761026861033c565b90506020020135604051602001610289929190918252602082015260400190565b60408051601f19818403018152908290528051602090910120907fdf423376f9b0ab363b1b4d6f0b4cb6821921ec30f491555a97236a8a38ce095a905f90a35b5050565b5f80602083850312156102de575f80fd5b823567ffffffffffffffff808211156102f5575f80fd5b818501915085601f830112610308575f80fd5b813581811115610316575f80fd5b8660208260051b850101111561032a575f80fd5b60209290920196919550909350505050565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215610360575f80fd5b81516001600160a01b0381168114610376575f80fd5b9392505050565b8181038181111561039c57634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x4fbf7b2f171336958be5d15ff762a5cff5363568":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061011b575f3560e01c80638d839ffe1161009d578063aeb8ce9b11610062578063aeb8ce9b14610356578063ce1e09c014610375578063d3419bf3146103a8578063f14fcbc8146103db578063f2fde38b146103fa575f80fd5b80638d839ffe146102a25780638da5cb5b146102d55780639791c097146102f1578063a8e5fbc014610310578063acf1a84114610343575f80fd5b806374694a2b116100e357806374694a2b146101c957806380869853146101dc578063839df9451461022757806383e7f6ff146102525780638a95b09f1461028c575f80fd5b806301ffc9a71461011f5780633ccfd60b146101535780635d3590d51461016957806365a69dcf14610188578063715018a6146101b5575b5f80fd5b34801561012a575f80fd5b5061013e610139366004611145565b610419565b60405190151581526020015b60405180910390f35b34801561015e575f80fd5b5061016761044f565b005b348015610174575f80fd5b50610167610183366004611187565b610489565b348015610193575f80fd5b506101a76101a23660046112e4565b610507565b60405190815260200161014a565b3480156101c0575f80fd5b5061016761058b565b6101676101d73660046113db565b61059e565b3480156101e7575f80fd5b5061020f7f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5681565b6040516001600160a01b03909116815260200161014a565b348015610232575f80fd5b506101a761024136600461149d565b60016020525f908152604090205481565b34801561025d575f80fd5b5061027161026c3660046114b4565b610894565b6040805182518152602092830151928101929092520161014a565b348015610297575f80fd5b506101a76224ea0081565b3480156102ad575f80fd5b506101a77f000000000000000000000000000000000000000000000000000000000000025881565b3480156102e0575f80fd5b505f546001600160a01b031661020f565b3480156102fc575f80fd5b5061013e61030b3660046114f6565b6109c9565b34801561031b575f80fd5b5061020f7f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e1841720481565b610167610351366004611528565b6109dd565b348015610361575f80fd5b5061013e6103703660046114f6565b610b7b565b348015610380575f80fd5b506101a77f000000000000000000000000000000000000000000000000000000000001518081565b3480156103b3575f80fd5b5061020f7f000000000000000000000000ec71e4e674fe0f432693dc2b935c34bd2774c00381565b3480156103e6575f80fd5b506101676103f536600461149d565b610c22565b348015610405575f80fd5b50610167610414366004611570565b610c95565b5f6001600160e01b031982166301ffc9a760e01b148061044957506001600160e01b0319821663612e8c0960e01b145b92915050565b5f80546040516001600160a01b03909116914780156108fc02929091818181858888f19350505050158015610486573d5f803e3d5ffd5b50565b610491610d0b565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af11580156104dd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105019190611589565b50505050565b885160208a01205f90841580159061052657506001600160a01b038716155b15610544576040516334fd817160e21b815260040160405180910390fd5b808a8a8a8a8a8a8a8a6040516020016105659998979695949392919061165e565b604051602081830303815290604052805190602001209150509998505050505050505050565b610593610d0b565b61059c5f610d64565b565b5f6105df8b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c9250610894915050565b602081015181519192506105f2916116d5565b3410156106125760405163044044a560e21b815260040160405180910390fd5b6106b38b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f82011690508083019250505050505050896106ae8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f820116905080830192505050505050508d8d8d8d8d8d8d8d610507565b610db3565b604051635200a4c160e11b81525f906001600160a01b037f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e18417204169063a40149829061070b908f908f908f908f908e908b906004016116e8565b6020604051808303815f875af1158015610727573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061074b9190611732565b9050841561077657610776878d8d604051610767929190611749565b60405180910390208888610ece565b83156107be576107be8c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508b9250339150610f939050565b896001600160a01b03168c8c6040516107d8929190611749565b60405180910390207f69e37f151eb98a09618ddaa80c8cfaf1ce5996867c489f45b555b412271ebf278e8e865f015187602001518760405161081e959493929190611758565b60405180910390a36020820151825161083791906116d5565b341115610886576020820151825133916108fc9161085591906116d5565b61085f9034611788565b6040518115909202915f818181858888f19350505050158015610884573d5f803e3d5ffd5b505b505050505050505050505050565b604080518082019091525f808252602082015282516020840120604051636b727d4360e11b8152600481018290527f000000000000000000000000ec71e4e674fe0f432693dc2b935c34bd2774c0036001600160a01b03908116916350e9a7159187917f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063d6e4fa8690602401602060405180830381865afa158015610940573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109649190611732565b866040518463ffffffff1660e01b8152600401610983939291906117e8565b6040805180830381865afa15801561099d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109c1919061180c565b949350505050565b5f60036109d583611044565b101592915050565b5f83836040516109ee929190611749565b604080519182900382206020601f8701819004810284018101909252858352925082915f91610a39919088908890819084018382808284375f92019190915250889250610894915050565b8051909150341015610a5e5760405163044044a560e21b815260040160405180910390fd5b60405163c475abff60e01b815260048101839052602481018590525f907f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b03169063c475abff906044016020604051808303815f875af1158015610acb573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610aef9190611732565b8251909150341115610b3457815133906108fc90610b0d9034611788565b6040518115909202915f818181858888f19350505050158015610b32573d5f803e3d5ffd5b505b837f3da24c024582931cfaf8267d8ed24d13a82a8068d5bd337d30ec45cea4e506ae88883485604051610b6a9493929190611859565b60405180910390a250505050505050565b805160208201205f90610b8d836109c9565b8015610c1b57506040516312dc929d60e31b8152600481018290527f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b0316906396e494e890602401602060405180830381865afa158015610bf7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c1b9190611589565b9392505050565b5f818152600160205260409020544290610c5d907f0000000000000000000000000000000000000000000000000000000000015180906116d5565b10610c8357604051630a059d7160e01b8152600481018290526024015b60405180910390fd5b5f908152600160205260409020429055565b610c9d610d0b565b6001600160a01b038116610d025760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610c7a565b61048681610d64565b5f546001600160a01b0316331461059c5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610c7a565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f818152600160205260409020544290610dee907f0000000000000000000000000000000000000000000000000000000000000258906116d5565b1115610e1057604051635320bcf960e01b815260048101829052602401610c7a565b5f818152600160205260409020544290610e4b907f0000000000000000000000000000000000000000000000000000000000015180906116d5565b11610e6c5760405163cb7690d760e01b815260048101829052602401610c7a565b610e7583610b7b565b610e9457826040516308eee0fd60e31b8152600401610c7a919061187f565b5f818152600160205260408120556224ea00821015610ec957604051639a71997b60e01b815260048101839052602401610c7a565b505050565b604080517f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae6020808301919091528183018690528251808303840181526060830193849052805191012063e32954eb60e01b90925285906001600160a01b0382169063e32954eb90610f4890859088908890606401611891565b5f604051808303815f875af1158015610f63573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052610f8a91908101906118b3565b50505050505050565b7f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d566001600160a01b0316637a806d6b33838587604051602001610fd691906119a7565b6040516020818303038152906040526040518563ffffffff1660e01b815260040161100494939291906119ce565b6020604051808303815f875af1158015611020573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105019190611732565b80515f90819081905b8082101561113c575f85838151811061106857611068611a0b565b01602001516001600160f81b0319169050600160ff1b811015611097576110906001846116d5565b9250611129565b600760fd1b6001600160f81b0319821610156110b8576110906002846116d5565b600f60fc1b6001600160f81b0319821610156110d9576110906003846116d5565b601f60fb1b6001600160f81b0319821610156110fa576110906004846116d5565b603f60fa1b6001600160f81b03198216101561111b576110906005846116d5565b6111266006846116d5565b92505b508261113481611a1f565b93505061104d565b50909392505050565b5f60208284031215611155575f80fd5b81356001600160e01b031981168114610c1b575f80fd5b80356001600160a01b0381168114611182575f80fd5b919050565b5f805f60608486031215611199575f80fd5b6111a28461116c565b92506111b06020850161116c565b9150604084013590509250925092565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff811182821017156111fd576111fd6111c0565b604052919050565b5f67ffffffffffffffff82111561121e5761121e6111c0565b50601f01601f191660200190565b5f82601f83011261123b575f80fd5b813561124e61124982611205565b6111d4565b818152846020838601011115611262575f80fd5b816020850160208301375f918101602001919091529392505050565b5f8083601f84011261128e575f80fd5b50813567ffffffffffffffff8111156112a5575f80fd5b6020830191508360208260051b85010111156112bf575f80fd5b9250929050565b8015158114610486575f80fd5b803561ffff81168114611182575f80fd5b5f805f805f805f805f6101008a8c0312156112fd575f80fd5b893567ffffffffffffffff80821115611314575f80fd5b6113208d838e0161122c565b9a5061132e60208d0161116c565b995060408c0135985060608c0135975061134a60808d0161116c565b965060a08c013591508082111561135f575f80fd5b5061136c8c828d0161127e565b90955093505060c08a0135611380816112c6565b915061138e60e08b016112d3565b90509295985092959850929598565b5f8083601f8401126113ad575f80fd5b50813567ffffffffffffffff8111156113c4575f80fd5b6020830191508360208285010111156112bf575f80fd5b5f805f805f805f805f806101008b8d0312156113f5575f80fd5b8a3567ffffffffffffffff8082111561140c575f80fd5b6114188e838f0161139d565b909c509a508a915061142c60208e0161116c565b995060408d0135985060608d0135975061144860808e0161116c565b965060a08d013591508082111561145d575f80fd5b5061146a8d828e0161127e565b90955093505060c08b013561147e816112c6565b915061148c60e08c016112d3565b90509295989b9194979a5092959850565b5f602082840312156114ad575f80fd5b5035919050565b5f80604083850312156114c5575f80fd5b823567ffffffffffffffff8111156114db575f80fd5b6114e78582860161122c565b95602094909401359450505050565b5f60208284031215611506575f80fd5b813567ffffffffffffffff81111561151c575f80fd5b6109c18482850161122c565b5f805f6040848603121561153a575f80fd5b833567ffffffffffffffff811115611550575f80fd5b61155c8682870161139d565b909790965060209590950135949350505050565b5f60208284031215611580575f80fd5b610c1b8261116c565b5f60208284031215611599575f80fd5b8151610c1b816112c6565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b5f838385526020808601955060208560051b830101845f5b8781101561165157848303601f19018952813536889003601e19018112611609575f80fd5b8701848101903567ffffffffffffffff811115611624575f80fd5b803603821315611632575f80fd5b61163d8582846115a4565b9a86019a94505050908301906001016115e4565b5090979650505050505050565b8981526001600160a01b03898116602083015260408201899052606082018890528616608082015261010060a082018190525f9061169f83820187896115cc565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610449576104496116c1565b60a081525f6116fb60a08301888a6115a4565b6001600160a01b03968716602084015260408301959095525091909316606082015261ffff90921660809092019190915292915050565b5f60208284031215611742575f80fd5b5051919050565b818382375f9101908152919050565b608081525f61176b6080830187896115a4565b602083019590955250604081019290925260609091015292915050565b81810381811115610449576104496116c1565b5f5b838110156117b557818101518382015260200161179d565b50505f910152565b5f81518084526117d481602086016020860161179b565b601f01601f19169290920160200192915050565b606081525f6117fa60608301866117bd565b60208301949094525060400152919050565b5f6040828403121561181c575f80fd5b6040516040810181811067ffffffffffffffff8211171561183f5761183f6111c0565b604052825181526020928301519281019290925250919050565b606081525f61186c6060830186886115a4565b6020830194909452506040015292915050565b602081525f610c1b60208301846117bd565b838152604060208201525f6118aa6040830184866115cc565b95945050505050565b5f60208083850312156118c4575f80fd5b825167ffffffffffffffff808211156118db575f80fd5b818501915085601f8301126118ee575f80fd5b815181811115611900576119006111c0565b8060051b61190f8582016111d4565b9182528381018501918581019089841115611928575f80fd5b86860192505b8383101561199a57825185811115611944575f80fd5b8601603f81018b13611954575f80fd5b87810151604061196661124983611205565b8281528d82848601011115611979575f80fd5b611988838c830184870161179b565b8552505050918601919086019061192e565b9998505050505050505050565b5f82516119b881846020870161179b565b6305ccae8d60e31b920191825250600401919050565b6001600160a01b0385811682528481166020830152831660408201526080606082018190525f90611a01908301846117bd565b9695505050505050565b634e487b7160e01b5f52603260045260245ffd5b5f60018201611a3057611a306116c1565b506001019056fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x5155f5627bdf9795b3dbb8887001ada1eeba93f2":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063de8f50a11461002d575b5f80fd5b61004761003b3660046100a0565b60019695505050505050565b604051901515815260200160405180910390f35b5f8083601f84011261006b575f80fd5b50813567ffffffffffffffff811115610082575f80fd5b602083019150836020828501011115610099575f80fd5b9250929050565b5f805f805f80606087890312156100b5575f80fd5b863567ffffffffffffffff808211156100cc575f80fd5b6100d88a838b0161005b565b909850965060208901359150808211156100f0575f80fd5b6100fc8a838b0161005b565b90965094506040890135915080821115610114575f80fd5b5061012189828a0161005b565b979a969950949750929593949250505056fea164736f6c6343000818000a","storage":{}},"0x54563a9e1cd2dcbd0bca90d3cfa4a647e02c404a":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106101db575f3560e01c80638da5cb5b116100fd578063c4d66de811610092578063daea85c511610062578063daea85c51461055e578063e7acab241461057d578063f2fde38b1461059c578063ffa1ad74146105bb575f80fd5b8063c4d66de8146104e1578063d539139314610500578063d547741f14610520578063d9caed121461053f575f80fd5b8063a217fddf116100cd578063a217fddf14610452578063a3f4df7e14610465578063a4247400146104a3578063aa271e1a146104c2575f80fd5b80638da5cb5b146103d957806391d1485414610400578063983b2d561461041f578063986502751461043e575f80fd5b80635c975abb11610173578063715018a611610143578063715018a61461037f57806371e2a6571461039357806381c81d35146103b25780638456cb59146103c5575f80fd5b80635c975abb146103165780635fc1964f1461032e578063634486da1461034d5780636ccbae5f14610360575f80fd5b80633092afd5116101ae5780633092afd51461029c57806336568abe146102bb5780633f4ba83a146102da578063572b6c05146102ee575f80fd5b806301ffc9a7146101df5780631bf7e13e14610213578063248a9ca31461023f5780632f2ff15d1461027b575b5f80fd5b3480156101ea575f80fd5b506101fe6101f9366004611ee0565b6105eb565b60405190151581526020015b60405180910390f35b34801561021e575f80fd5b5061023261022d366004611f07565b610621565b60405161020a9190611fe9565b34801561024a575f80fd5b5061026d610259366004611ffb565b5f90815260fb602052604090206001015490565b60405190815260200161020a565b348015610286575f80fd5b5061029a610295366004612036565b6106ea565b005b3480156102a7575f80fd5b5061029a6102b6366004612064565b610713565b3480156102c6575f80fd5b5061029a6102d5366004612036565b610727565b3480156102e5575f80fd5b5061029a6107ba565b3480156102f9575f80fd5b506101fe610308366004612064565b6001600160a01b0316301490565b348015610321575f80fd5b5061012d5460ff166101fe565b348015610339575f80fd5b5061029a6103483660046120eb565b6107d4565b61029a61035b366004612064565b610811565b34801561036b575f80fd5b5061026d61037a366004611ffb565b6108d1565b34801561038a575f80fd5b5061029a61092a565b34801561039e575f80fd5b5061029a6103ad3660046120eb565b61093b565b61029a6103c0366004612064565b610978565b3480156103d0575f80fd5b5061029a6109f5565b3480156103e4575f80fd5b506097546040516001600160a01b03909116815260200161020a565b34801561040b575f80fd5b506101fe61041a366004612036565b610a0d565b34801561042a575f80fd5b5061029a610439366004612064565b610a37565b348015610449575f80fd5b5061029a610a48565b34801561045d575f80fd5b5061026d5f81565b348015610470575f80fd5b506102326040518060400160405280601381526020017229b2b0b837b93a10283937bc3c90213abcb2b960691b81525081565b3480156104ae575f80fd5b506101fe6104bd366004611f07565b610a61565b3480156104cd575f80fd5b506101fe6104dc366004612064565b610ab2565b3480156104ec575f80fd5b5061029a6104fb366004612064565b610aca565b34801561050b575f80fd5b5061026d5f80516020612ea783398151915281565b34801561052b575f80fd5b5061029a61053a366004612036565b610c21565b34801561054a575f80fd5b5061029a61055936600461218b565b610c45565b348015610569575f80fd5b5061029a610578366004612064565b610cf7565b348015610588575f80fd5b506101fe6105973660046121c9565b610dac565b3480156105a7575f80fd5b5061029a6105b6366004612064565b6111db565b3480156105c6575f80fd5b5061023260405180604001604052806005815260200164302e302e3160d81b81525081565b5f6001600160e01b03198216637965db0b60e01b148061061b57506301ffc9a760e01b6001600160e01b03198316145b92915050565b60605f5a9050610632858585610a61565b61064f57604051638baa579f60e01b815260040160405180910390fd5b6106df61065f6020870187612064565b3060408801358461067360608b018b61227b565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f920191909152506111f692505050565b9150505b9392505050565b5f82815260fb6020526040902060010154610704816112d4565b61070e83836112e5565b505050565b61071b61136b565b610724816113e4565b50565b61072f6113fb565b6001600160a01b0316816001600160a01b0316146107ac5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6107b68282611409565b5050565b6107c261136b565b6107ca61148d565b6107d26114d7565b565b6107dc61136b565b5f5b81518110156107b6576108098282815181106107fc576107fc6122bd565b60200260200101516113e4565b6001016107de565b61081c6104dc6113fb565b6108385760405162461bcd60e51b81526004016107a3906122d1565b6001600160a01b03811661088e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016107a3565b61089781611530565b61089f610a48565b6040516001600160a01b038216903480156108fc02915f818181858888f193505050501580156107b6573d5f803e3d5ffd5b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f90610923906060016040516020818303038152906040528051906020012090565b5492915050565b61093261136b565b6107d25f611547565b61094361136b565b5f5b81518110156107b657610970828281518110610963576109636122bd565b6020026020010151611530565b600101610945565b6109836104dc6113fb565b61099f5760405162461bcd60e51b81526004016107a3906122d1565b6001600160a01b0381166108975760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016107a3565b6109fd61136b565b610a05611598565b6107d26115df565b5f91825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610a3f61136b565b61072481611530565b6107d25f80516020612ea78339815191526102d56113fb565b5f610aaa610a6e85612306565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061161e92505050565b949350505050565b5f61061b5f80516020612ea783398151915283610a0d565b5f54610100900460ff1615808015610ae857505f54600160ff909116105b80610b015750303b158015610b0157505f5460ff166001145b610b645760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107a3565b5f805460ff191660011790558015610b85575f805461ff0019166101001790555b61015f80546001600160a01b0319166001600160a01b038416179055610ba9611759565b610bb1611786565b610bb9611786565b610bc1611786565b610bc96117ac565b610bd16117e2565b610bd9611819565b80156107b6575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b5f82815260fb6020526040902060010154610c3b816112d4565b61070e8383611409565b610c4d61136b565b600260335403610c6f5760405162461bcd60e51b81526004016107a3906123c2565b6002603355610c7c611598565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af1158015610cc8573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cec91906123f9565b505060016033555050565b610cff61136b565b600260335403610d215760405162461bcd60e51b81526004016107a3906123c2565b6002603355610d2e611598565b61015f5460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529082169063095ea7b3906044016020604051808303815f875af1158015610d7f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610da391906123f9565b50506001603355565b5f610db86104dc6113fb565b610dd45760405162461bcd60e51b81526004016107a3906122d1565b600260335403610df65760405162461bcd60e51b81526004016107a3906123c2565b6002603355610e03611598565b6001600160a01b038216610e2a576040516311d000e160e31b815260040160405180910390fd5b30610e358780612418565b610e46906040810190602001612064565b6001600160a01b031614610e6d57604051639d3c586b60e01b815260040160405180910390fd5b610e75611e67565b610e7f8780612418565b610e8d906020810190612064565b6001600160a01b03168152610ea28780612418565b610eb3906040810190602001612064565b6001600160a01b03166020820152610ecb8780612418565b610ed9906040810190612437565b808060200260200160405190810160405280939291908181526020015f905b82821015610f2457610f1560a08302860136819003810190612489565b81526020019060010190610ef8565b50505050506040820152610f388780612418565b610f46906060810190612506565b808060200260200160405190810160405280939291908181526020015f905b82821015610f9157610f8260c0830286013681900381019061254a565b81526020019060010190610f65565b50505050506060820152610fa58780612418565b610fb69060a08101906080016125e5565b81608001906004811115610fcc57610fcc6125fe565b90816004811115610fdf57610fdf6125fe565b905250610fec8780612418565b60a090810135908201526110008780612418565b60c090810135908201526110148780612418565b60e090810135908201526110288780612418565b610100908101359082015261103d8780612418565b610120908101359082015261015f54815160405163f07ec37360e01b81526001600160a01b03918216600482015291169063f07ec37390602401602060405180830381865afa158015611092573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110b69190612612565b61014082015261015f546040516379df72bd60e01b8152611133916001600160a01b0316906379df72bd906110ef908590600401612737565b602060405180830381865afa15801561110a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061112e9190612612565b61184c565b61015f546040516339eb2ac960e21b81526001600160a01b039091169063e7acab249061116c908a908a908a908a908a90600401612b24565b6020604051808303815f875af1158015611188573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111ac91906123f9565b9150816111cc57604051636725093760e01b815260040160405180910390fd5b50600160335595945050505050565b6111e361136b565b6111ec81611865565b6107245f826118db565b6060611201856118e5565b5f80876001600160a01b03168661121a8b8a898961194a565b6040516112279190612cfa565b5f604051808303815f8787f1925050503d805f8114611261576040519150601f19603f3d011682016040523d82523d5f602084013e611266565b606091505b509092509050611277603f87612d1f565b5a1161128557611285612d3e565b6112c582826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061197a565b925050505b9695505050505050565b610724816112e06113fb565b6119b3565b6112ef8282610a0d565b6107b6575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191660011790556113276113fb565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6113736113fb565b6001600160a01b031661138e6097546001600160a01b031690565b6001600160a01b0316146107d25760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107a3565b6107245f80516020612ea783398151915282610c21565b5f611404611a17565b905090565b6114138282610a0d565b156107b6575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191690556114496113fb565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b61012d5460ff166107d25760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b60448201526064016107a3565b6114df61148d565b61012d805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6115136113fb565b6040516001600160a01b03909116815260200160405180910390a1565b6107245f80516020612ea7833981519152826118db565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b61012d5460ff16156107d25760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b60448201526064016107a3565b6115e7611598565b61012d805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586115136113fb565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015611662573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116869190612612565b90505f6117338660600151805190602001208688602001516040516020016116d39392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156112ca575085516112ca906001600160a01b03168286611a34565b5f54610100900460ff1661177f5760405162461bcd60e51b81526004016107a390612d52565b6001603355565b5f54610100900460ff166107d25760405162461bcd60e51b81526004016107a390612d52565b5f54610100900460ff166117d25760405162461bcd60e51b81526004016107a390612d52565b6107d26117dd6113fb565b611547565b5f54610100900460ff166118085760405162461bcd60e51b81526004016107a390612d52565b6107d25f6118146113fb565b6118db565b5f54610100900460ff1661183f5760405162461bcd60e51b81526004016107a390612d52565b61012d805460ff19169055565b30330361185c5761072481611b6f565b610724816118e5565b61186d61136b565b6001600160a01b0381166118d25760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107a3565b61072481611547565b6107b682826112e5565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f906060016040516020818303038152906040528051906020012090506119398190565b54611945906001612d9d565b905550565b606082858560405160200161196193929190612db0565b6040516020818303038152906040529050949350505050565b606083156119895750816106e3565b8251156119995782518084602001fd5b8160405162461bcd60e51b81526004016107a39190611fe9565b6119bd8282610a0d565b6107b6576119d5816001600160a01b03166014611b99565b6119e0836020611b99565b6040516020016119f1929190612dee565b60408051601f198184030181529082905262461bcd60e51b82526107a391600401611fe9565b5f303303611a2c575060331936013560601c90565b503390565b90565b5f805f611a418585611d2e565b90925090505f816004811115611a5957611a596125fe565b148015611a775750856001600160a01b0316826001600160a01b0316145b15611a87576001925050506106e3565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401611aae929190612e62565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051611aec9190612cfa565b5f60405180830381855afa9150503d805f8114611b24576040519150601f19603f3d011682016040523d82523d5f602084013e611b29565b606091505b5091509150818015611b3c575080516020145b8015611b6357508051630b135d3f60e11b90611b619083016020908101908401612612565b145b98975050505050505050565b611b77611d70565b811461072457604051635637b6af60e11b8152600481018290526024016107a3565b60605f611ba7836002612e7a565b611bb2906002612d9d565b6001600160401b03811115611bc957611bc961207f565b6040519080825280601f01601f191660200182016040528015611bf3576020820181803683370190505b509050600360fc1b815f81518110611c0d57611c0d6122bd565b60200101906001600160f81b03191690815f1a905350600f60fb1b81600181518110611c3b57611c3b6122bd565b60200101906001600160f81b03191690815f1a9053505f611c5d846002612e7a565b611c68906001612d9d565b90505b6001811115611cdf576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611c9c57611c9c6122bd565b1a60f81b828281518110611cb257611cb26122bd565b60200101906001600160f81b03191690815f1a90535060049490941c93611cd881612e91565b9050611c6b565b5083156106e35760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016107a3565b5f808251604103611d62576020830151604084015160608501515f1a611d5687828585611d82565b94509450505050611d69565b505f905060025b9250929050565b5f303303611a315750601f1936013590565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115611db757505f90506003611e5e565b8460ff16601b14158015611dcf57508460ff16601c14155b15611ddf57505f90506004611e5e565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015611e30573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b038116611e58575f60019250925050611e5e565b91505f90505b94509492505050565b6040518061016001604052805f6001600160a01b031681526020015f6001600160a01b0316815260200160608152602001606081526020015f6004811115611eb157611eb16125fe565b81525f6020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b5f60208284031215611ef0575f80fd5b81356001600160e01b0319811681146106e3575f80fd5b5f805f60408486031215611f19575f80fd5b83356001600160401b0380821115611f2f575f80fd5b9085019060808288031215611f42575f80fd5b90935060208501359080821115611f57575f80fd5b818601915086601f830112611f6a575f80fd5b813581811115611f78575f80fd5b876020828501011115611f89575f80fd5b6020830194508093505050509250925092565b5f5b83811015611fb6578181015183820152602001611f9e565b50505f910152565b5f8151808452611fd5816020860160208601611f9c565b601f01601f19169290920160200192915050565b602081525f6106e36020830184611fbe565b5f6020828403121561200b575f80fd5b5035919050565b6001600160a01b0381168114610724575f80fd5b803561203181612012565b919050565b5f8060408385031215612047575f80fd5b82359150602083013561205981612012565b809150509250929050565b5f60208284031215612074575f80fd5b81356106e381612012565b634e487b7160e01b5f52604160045260245ffd5b604051608081016001600160401b03811182821017156120b5576120b561207f565b60405290565b604051601f8201601f191681016001600160401b03811182821017156120e3576120e361207f565b604052919050565b5f60208083850312156120fc575f80fd5b82356001600160401b0380821115612112575f80fd5b818501915085601f830112612125575f80fd5b8135818111156121375761213761207f565b8060051b91506121488483016120bb565b8181529183018401918481019088841115612161575f80fd5b938501935b83851015611b63578435925061217b83612012565b8282529385019390850190612166565b5f805f6060848603121561219d575f80fd5b83356121a881612012565b925060208401356121b881612012565b929592945050506040919091013590565b5f805f805f608086880312156121dd575f80fd5b85356001600160401b03808211156121f3575f80fd5b9087019060a0828a031215612206575f80fd5b9095506020870135908082111561221b575f80fd5b818801915088601f83011261222e575f80fd5b81358181111561223c575f80fd5b8960208260051b8501011115612250575f80fd5b6020830196508095505050506040860135915061226f60608701612026565b90509295509295909350565b5f808335601e19843603018112612290575f80fd5b8301803591506001600160401b038211156122a9575f80fd5b602001915036819003821315611d69575f80fd5b634e487b7160e01b5f52603260045260245ffd5b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b5f60808236031215612316575f80fd5b61231e612093565b823561232981612012565b8152602083810135818301526040808501359083015260608401356001600160401b0380821115612358575f80fd5b9085019036601f83011261236a575f80fd5b81358181111561237c5761237c61207f565b61238e601f8201601f191685016120bb565b915080825236848285010111156123a3575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b5f60208284031215612409575f80fd5b815180151581146106e3575f80fd5b5f823561015e1983360301811261242d575f80fd5b9190910192915050565b5f808335601e1984360301811261244c575f80fd5b8301803591506001600160401b03821115612465575f80fd5b602001915060a081023603821315611d69575f80fd5b803560068110612031575f80fd5b5f60a08284031215612499575f80fd5b60405160a081018181106001600160401b03821117156124bb576124bb61207f565b6040526124c78361247b565b815260208301356124d781612012565b806020830152506040830135604082015260608301356060820152608083013560808201528091505092915050565b5f808335601e1984360301811261251b575f80fd5b8301803591506001600160401b03821115612534575f80fd5b602001915060c081023603821315611d69575f80fd5b5f60c0828403121561255a575f80fd5b60405160c081018181106001600160401b038211171561257c5761257c61207f565b6040526125888361247b565b8152602083013561259881612012565b8060208301525060408301356040820152606083013560608201526080830135608082015260a08301356125cb81612012565b60a08201529392505050565b803560058110612031575f80fd5b5f602082840312156125f5575f80fd5b6106e3826125d7565b634e487b7160e01b5f52602160045260245ffd5b5f60208284031215612622575f80fd5b5051919050565b60068110612639576126396125fe565b9052565b5f815180845260208085019450602084015f5b838110156126a6578151612665888251612629565b838101516001600160a01b03168885015260408082015190890152606080820151908901526080908101519088015260a09096019590820190600101612650565b509495945050505050565b5f815180845260208085019450602084015f5b838110156126a65781516126d9888251612629565b808401516001600160a01b0390811689860152604080830151908a0152606080830151908a0152608080830151908a015260a091820151169088015260c090960195908201906001016126c4565b60058110612639576126396125fe565b602081526127516020820183516001600160a01b03169052565b5f602083015161276c60408401826001600160a01b03169052565b50604083015161016080606085015261278961018085018361263d565b91506060850151601f198584030160808601526127a683826126b1565b92505060808501516127bb60a0860182612727565b5060a085015160c085015260c085015160e085015260e0850151610100818187015280870151915050610120818187015280870151915050610140818187015280870151838701525050508091505092915050565b5f808335601e19843603018112612825575f80fd5b83016020810192503590506001600160401b03811115612843575f80fd5b60a081023603821315611d69575f80fd5b8183525f60208085019450825f5b858110156126a65761287c876128778461247b565b612629565b8282013561288981612012565b6001600160a01b03168388015260408281013590880152606080830135908801526080808301359088015260a09687019690910190600101612862565b5f808335601e198436030181126128db575f80fd5b83016020810192503590506001600160401b038111156128f9575f80fd5b60c081023603821315611d69575f80fd5b8183525f60208085019450825f5b858110156126a65761292d876128778461247b565b8282013561293a81612012565b6001600160a01b039081168885015260408381013590890152606080840135908901526080808401359089015260a0908382013561297781612012565b169088015260c0968701969190910190600101612918565b80356001600160781b0381168114612031575f80fd5b5f808335601e198436030181126129ba575f80fd5b83016020810192503590506001600160401b038111156129d8575f80fd5b803603821315611d69575f80fd5b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b8183525f6001600160fb1b03831115612a25575f80fd5b8260051b80836020870137939093016020019392505050565b8183526020808401935f91600585811b8301820185855b88811015612b1657858303601f19018a52813536899003609e19018112612a7a575f80fd5b88018035845260a08682013560028110612a92575f80fd5b85880152604082810135908601526060808301359086015260808083013536849003601e19018112612ac2575f80fd5b9092018781019290356001600160401b03811115612ade575f80fd5b80881b3603841315612aee575f80fd5b8282880152612b008388018286612a0e565b9d89019d96505050928601925050600101612a55565b509098975050505050505050565b608081525f610120873561015e19893603018112612b40575f80fd5b60a060808501528801612b65828501612b5883612026565b6001600160a01b03169052565b612b7160208201612026565b610140612b88818701836001600160a01b03169052565b612b956040840184612810565b610160888101529250612bad61028088018483612854565b925050612bbd60608401846128c6565b87840361011f1901610180890152612bd684828461290a565b93505050612be6608084016125d7565b612bf46101a0880182612727565b5060a08301356101c087015260c08301356101e087015260e0830135610200870152610100808401356102208801528484013561024088015281840135610260880152612c4360208d0161298f565b6001600160781b03811660a08901529450612c6060408d0161298f565b6001600160781b03811660c08901529450612c7e60608d018d6129a5565b95509350607f199150818784030160e0880152612c9c8386866129e6565b9450612cab60808d018d6129a5565b945092508187860301818801525050612cc58383836129e6565b925050508281036020840152612cdc818789612a3e565b9150508360408301526112ca60608301846001600160a01b03169052565b5f825161242d818460208701611f9c565b634e487b7160e01b5f52601160045260245ffd5b5f82612d3957634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b8082018082111561061b5761061b612d0b565b5f8451612dc1818460208901611f9c565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081525f8351612e25816017850160208801611f9c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351612e56816028840160208801611f9c565b01602801949350505050565b828152604060208201525f610aaa6040830184611fbe565b808202811582820484141761061b5761061b612d0b565b5f81612e9f57612e9f612d0b565b505f19019056fe9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000818000a","storage":{"0x0":"0xff"}},"0x58a175bebc8ec21a94ea63aa5a28743945940ee6":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106101165760003560e01c806391d14854116100a2578063c4d66de811610071578063c4d66de8146103bb578063ca15c873146103e1578063d547741f146103fe578063e375b64e1461042a578063ec87621c146104b957610116565b806391d14854146103635780639559c0bd146103a3578063a217fddf146103ab578063b017a30f146103b357610116565b80634794b430116100e95780634794b4301461024f57806349f5124b14610257578063609c92b81461025f5780638274664f146102675780639010d07c1461032457610116565b8063150b7a021461011b578063248a9ca3146101c65780632f2ff15d146101f557806336568abe14610223575b600080fd5b6101a96004803603608081101561013157600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561016b57600080fd5b82018360208201111561017d57600080fd5b803590602001918460018302840111600160201b8311171561019e57600080fd5b5090925090506104c1565b604080516001600160e01b03199092168252519081900360200190f35b6101e3600480360360208110156101dc57600080fd5b50356104d2565b60408051918252519081900360200190f35b6102216004803603604081101561020b57600080fd5b50803590602001356001600160a01b03166104ea565b005b6102216004803603604081101561023957600080fd5b50803590602001356001600160a01b0316610556565b6101e36105b7565b6101e36105db565b6101e36105ff565b6102216004803603606081101561027d57600080fd5b6001600160a01b038235811692602081013590911691810190606081016040820135600160201b8111156102b057600080fd5b8201836020820111156102c257600080fd5b803590602001918460018302840111600160201b831117156102e357600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610623945050505050565b6103476004803603604081101561033a57600080fd5b5080359060200135610fa2565b604080516001600160a01b039092168252519081900360200190f35b61038f6004803603604081101561037957600080fd5b50803590602001356001600160a01b0316610fc9565b604080519115158252519081900360200190f35b6101e3610fe7565b6101e3610fec565b6101e3610ff1565b610221600480360360208110156103d157600080fd5b50356001600160a01b0316611015565b6101e3600480360360208110156103f757600080fd5b50356110cf565b6102216004803603604081101561041457600080fd5b50803590602001356001600160a01b03166110e6565b6102216004803603608081101561044057600080fd5b6001600160a01b0382358116926020810135821692604082013590921691810190608081016060820135600160201b81111561047b57600080fd5b82018360208201111561048d57600080fd5b803590602001918460018302840111600160201b831117156104ae57600080fd5b50909250905061113f565b6101e36114e6565b630a85bd0160e11b95945050505050565b6000818152602081905260409020600201545b919050565b60008281526020819052604090206002015461050d906105086114f8565b610fc9565b6105485760405162461bcd60e51b815260040180806020018281038252602f815260200180611f42602f913960400191505060405180910390fd5b61055282826114fd565b5050565b61055e6114f8565b6001600160a01b0316816001600160a01b0316146105ad5760405162461bcd60e51b815260040180806020018281038252602f8152602001806120bb602f913960400191505060405180910390fd5b610552828261156c565b7ff871896b17e9cb7a64941c62c188a4f5c621b86800e3d15452ece01ce56073df81565b7ff94915c6d1fd521cee85359239227480c7e8776d7caf1fc3bacad5c269b66a1481565b7fd4392723c111fcb98b073fe55873efb447bcd23cd3e49ec9ea2581930cd01ddc81565b60008051602061204b83398151915261063e816105086114f8565b6001906106de5760405162461bcd60e51b81526020600482019081528254600260001961010060018416150201909116046024830181905290918291604490910190849080156106cf5780601f106106a4576101008083540402835291602001916106cf565b820191906000526020600020905b8154815290600101906020018083116106b257829003601f168201915b50509250505060405180910390fd5b5060606106f26106ed846115db565b611656565b905060606107138260018151811061070657fe5b6020026020010151611656565b90507fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60001b6107568260008151811061074957fe5b60200260200101516117d8565b141561095457600061076e8260018151811061074957fe5b905060006001600160a01b031661078b8360028151811061074957fe5b6001600160a01b0316146107d05760405162461bcd60e51b815260040180806020018281038252602981526020018061206b6029913960400191505060405180910390fd5b600086905060006107e78460038151811061074957fe5b9050816001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b15801561082d57600080fd5b505afa158015610841573d6000803e3d6000fd5b505050506040513d602081101561085757600080fd5b5051156108d35760408051632142170760e11b81523060048201526001600160a01b038581166024830152604482018490529151918416916342842e0e9160648082019260009290919082900301818387803b1580156108b657600080fd5b505af11580156108ca573d6000803e3d6000fd5b5050505061094c565b816001600160a01b03166340c10f1984836040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b15801561093357600080fd5b505af1158015610947573d6000803e3d6000fd5b505050505b505050610f9a565b7ff871896b17e9cb7a64941c62c188a4f5c621b86800e3d15452ece01ce56073df60001b6109888260008151811061074957fe5b1415610c085760006109a08260018151811061074957fe5b905060606109c1846002815181106109b457fe5b6020026020010151611920565b905060608180602001905160208110156109da57600080fd5b8101908080516040519392919084600160201b8211156109f957600080fd5b908301906020820185811115610a0e57600080fd5b82518660208202830111600160201b82111715610a2a57600080fd5b82525081516020918201928201910280838360005b83811015610a57578181015183820152602001610a3f565b5050505091909101604052505082519293508a9150600090505b82811015610bfd576000848281518110610a8757fe5b60200260200101519050826001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610ad557600080fd5b505afa158015610ae9573d6000803e3d6000fd5b505050506040513d6020811015610aff57600080fd5b505115610b7b5760408051632142170760e11b81523060048201526001600160a01b038981166024830152604482018490529151918516916342842e0e9160648082019260009290919082900301818387803b158015610b5e57600080fd5b505af1158015610b72573d6000803e3d6000fd5b50505050610bf4565b826001600160a01b03166340c10f1988836040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b158015610bdb57600080fd5b505af1158015610bef573d6000803e3d6000fd5b505050505b50600101610a71565b505050505050610f9a565b7ff94915c6d1fd521cee85359239227480c7e8776d7caf1fc3bacad5c269b66a1460001b610c3c8260008151811061074957fe5b1415610f63576000610c548260018151811061074957fe5b905060006001600160a01b0316610c718360028151811061074957fe5b6001600160a01b031614610cb65760405162461bcd60e51b815260040180806020018281038252602981526020018061206b6029913960400191505060405180910390fd5b60008690506000610ccd8460038151811061074957fe5b9050816001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610d1357600080fd5b505afa158015610d27573d6000803e3d6000fd5b505050506040513d6020811015610d3d57600080fd5b505115610d9c5760408051632142170760e11b81523060048201526001600160a01b038581166024830152604482018490529151918416916342842e0e9160648082019260009290919082900301818387803b1580156108b657600080fd5b6060610dae866002815181106109b457fe5b90506060818060200190516020811015610dc757600080fd5b8101908080516040519392919084600160201b821115610de657600080fd5b908301906020820185811115610dfb57600080fd5b8251600160201b811182820188101715610e1457600080fd5b82525081516020918201929091019080838360005b83811015610e41578181015183820152602001610e29565b50505050905090810190601f168015610e6e5780820380516001836020036101000a031916815260200191505b506040525050509050836001600160a01b03166394d008ef8685846040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b0316815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610ef3578181015183820152602001610edb565b50505050905090810190601f168015610f205780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015610f4157600080fd5b505af1158015610f55573d6000803e3d6000fd5b505050505050505050610f9a565b60405162461bcd60e51b815260040180806020018281038252602a815260200180611f71602a913960400191505060405180910390fd5b505050505050565b6000828152602081905260408120610fc0908363ffffffff6119ea16565b90505b92915050565b6000828152602081905260408120610fc0908363ffffffff6119f616565b601481565b600081565b7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef81565b60025460ff161561105e576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b61109c6040518060400160405280601781526020017f4d696e7461626c65455243373231507265646963617465000000000000000000815250611a0b565b6110a7600082610548565b6110bf60008051602061204b83398151915282610548565b506002805460ff19166001179055565b6000818152602081905260408120610fc390611aa9565b600082815260208190526040902060020154611104906105086114f8565b6105ad5760405162461bcd60e51b8152600401808060200182810382526030815260200180611fc36030913960400191505060405180910390fd5b60008051602061204b83398151915261115a816105086114f8565b6001906111c05760405162461bcd60e51b81526020600482019081528254600260001961010060018416150201909116046024830181905290918291604490910190849080156106cf5780601f106106a4576101008083540402835291602001916106cf565b50602082141561129f576000838360208110156111dc57600080fd5b5060408051913580835290519092506001600160a01b038088169289821692918b16917fe13244aa06bdc79480ed5fdc6ebe2bb37202fcdf33ecf45dc449f4201f3dc0879181900360200190a460408051632142170760e11b81526001600160a01b038981166004830152306024830152604482018490529151918716916342842e0e9160648082019260009290919082900301818387803b15801561128157600080fd5b505af1158015611295573d6000803e3d6000fd5b5050505050610f9a565b6060838360208110156112b157600080fd5b810190602081018135600160201b8111156112cb57600080fd5b8201836020820111156112dd57600080fd5b803590602001918460208302840111600160201b831117156112fe57600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f8201169050808301925050505050505091929192905050509050846001600160a01b0316866001600160a01b0316886001600160a01b03167fdb55e3a0ae817693fd7b07170d81eab0eb2c239f36fcecbc98b6b58ac5667e7a846040518080602001828103825283818151815260200191508051906020019060200280838360005b838110156113ca5781810151838201526020016113b2565b505050509050019250505060405180910390a48051601481111561141f5760405162461bcd60e51b815260040180806020018281038252602c81526020018061201f602c913960400191505060405180910390fd5b60005b818110156114db57866001600160a01b03166342842e0e8a3086858151811061144757fe5b60200260200101516040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050600060405180830381600087803b1580156114b757600080fd5b505af11580156114cb573d6000803e3d6000fd5b5050600190920191506114229050565b505050505050505050565b60008051602061204b83398151915281565b335b90565b600082815260208190526040902061151b908263ffffffff611ab416565b15610552576115286114f8565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b600082815260208190526040902061158a908263ffffffff611ac916565b15610552576115976114f8565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b6115e3611e6d565b6000825111611639576040805162461bcd60e51b815260206004820152601f60248201527f524c505265616465723a20494e56414c49445f42595445535f4c454e47544800604482015290519081900360640190fd5b506040805180820190915281518152602082810190820152919050565b606061166182611ade565b6116b2576040805162461bcd60e51b815260206004820152601860248201527f524c505265616465723a204954454d5f4e4f545f4c4953540000000000000000604482015290519081900360640190fd5b60006116bd83611b0a565b905060608167ffffffffffffffff811180156116d857600080fd5b5060405190808252806020026020018201604052801561171257816020015b6116ff611e6d565b8152602001906001900390816116f75790505b50905060006117248560200151611b96565b855190915081146117665760405162461bcd60e51b81526004018080602001828103825260278152602001806120946027913960400191505060405180910390fd5b60006117758660200151611c2f565b60208701510190506000805b858110156117cc5761179283611b96565b91506040518060400160405280838152602001848152508582815181106117b557fe5b602090810291909101015291810191600101611781565b50929695505050505050565b60006117e382611ade565b15611835576040805162461bcd60e51b815260206004820181905260248201527f524c505265616465723a204445434f44494e475f4c4953545f41535f55494e54604482015290519081900360640190fd5b81516021101561188c576040805162461bcd60e51b815260206004820152601e60248201527f524c505265616465723a20494e56414c49445f55494e545f4c454e4754480000604482015290519081900360640190fd5b600061189b8360200151611b96565b835190915081146118dd5760405162461bcd60e51b81526004018080602001828103825260278152602001806120ea6027913960400191505060405180910390fd5b60006118ec8460200151611c2f565b8451602080870151830180519394509184900392919083101561191657826020036101000a820491505b5095945050505050565b606060006119318360200151611b96565b835190915081146119735760405162461bcd60e51b8152600401808060200182810382526028815260200180611f9b6028913960400191505060405180910390fd5b60006119828460200151611c2f565b845190915081900360608167ffffffffffffffff811180156119a357600080fd5b506040519080825280601f01601f1916602001820160405280156119ce576020820181803683370190505b5090506000816020019050611916848860200151018285611c92565b6000610fc08383611cdd565b6000610fc0836001600160a01b038416611d41565b806040516020018082805190602001908083835b60208310611a3e5780518252601f199092019160209182019101611a1f565b51815160209384036101000a60001901801990921691161790527f3a20494e53554646494349454e545f5045524d495353494f4e530000000000009190930190815260408051808303600519018152601a909201905280516105529550600194509201919050611e87565b6000610fc382611d59565b6000610fc0836001600160a01b038416611d5d565b6000610fc0836001600160a01b038416611da7565b6020810151805160009190821a9060c0821015611b00576000925050506104e5565b5060019392505050565b600080600090506000611b208460200151611c2f565b602085015185519181019250015b80821015611b8d57611b3f82611b96565b8201915080821115611b825760405162461bcd60e51b815260040180806020018281038252602c815260200180611ff3602c913960400191505060405180910390fd5b600190920191611b2e565b50909392505050565b80516000908190811a6080811015611bb15760019150611c28565b60b8811015611bc657607e1981019150611c28565b60c0811015611bf35760b78103600185019450806020036101000a85510460018201810193505050611c28565b60f8811015611c085760be1981019150611c28565b60f78103600185019450806020036101000a855104600182018101935050505b5092915050565b8051600090811a6080811015611c495760009150506104e5565b60b8811080611c64575060c08110801590611c64575060f881105b15611c735760019150506104e5565b60c0811015611c875760b5190190506104e5565b60f5190190506104e5565b80611c9c57611cd8565b5b60208110611cbc578251825260209283019290910190601f1901611c9d565b8251825160208390036101000a60001901801990921691161782525b505050565b81546000908210611d1f5760405162461bcd60e51b8152600401808060200182810382526022815260200180611f206022913960400191505060405180910390fd5b826000018281548110611d2e57fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000611d698383611d41565b611d9f57508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610fc3565b506000610fc3565b60008181526001830160205260408120548015611e635783546000198083019190810190600090879083908110611dda57fe5b9060005260206000200154905080876000018481548110611df757fe5b600091825260208083209091019290925582815260018981019092526040902090840190558654879080611e2757fe5b60019003818190600052602060002001600090559055866001016000878152602001908152602001600020600090556001945050505050610fc3565b6000915050610fc3565b604051806040016040528060008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611ec857805160ff1916838001178555611ef5565b82800160010185558215611ef5579182015b82811115611ef5578251825591602001919060010190611eda565b50611f01929150611f05565b5090565b6114fa91905b80821115611f015760008155600101611f0b56fe456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e744d696e7461626c654552433732315072656469636174653a20494e56414c49445f5349474e4154555245524c505265616465723a2042595445535f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b65524c505265616465723a204e554d5f4954454d535f4445434f4445445f4c454e4754485f4d49534d415443484d696e7461626c654552433732315072656469636174653a20455843454544535f42415443485f4c494d4954241ecf16d79d0f8dbfb92cbc07fe17840425976cf0667f022fe9877caa831b084d696e7461626c654552433732315072656469636174653a20494e56414c49445f5245434549564552524c505265616465723a204c4953545f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66524c505265616465723a2055494e545f4445434f4445445f4c454e4754485f4d49534d41544348a164736f6c6343000606000a","storage":{"0x1":"0x63","0x2":"0x1","0x73d5d1a274bdea1400ad3ea4d982f594abdfd528cde1486b6c617faa3ec116":"0x1","0x89011777cfe6194dd982545e7eb24725dfe9a1aacae299c76fc48ef5017ae650":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x89011777cfe6194dd982545e7eb24725dfe9a1aacae299c76fc48ef5017ae651":"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0x1","0xb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6":"0x4d696e7461626c654552433732315072656469636174653a20494e5355464649","0xb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf7":"0x4349454e545f5045524d495353494f4e53000000000000000000000000000000","0xba75a66b8132bebab85d36fd3638083da57ae3d78fbcd8cc41f73514287dadaf":"0x1","0xe6c7d8231a06d7cb67831aeabcbd43ba24e5e4c6569cf23405f1e558de8580e0":"0x2","0xe84508f2c7fa9c351146748b3025cb78b45df37d868e48c6a75102fecdeee645":"0x2","0xe84508f2c7fa9c351146748b3025cb78b45df37d868e48c6a75102fecdeee647":"0x0","0xf0df3dcda05b4fbd9c655cde3d5ceb211e019e72ec816e127a59e7195f2cd7f5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x5cc819c9915eadfcebd76952b8c1bc36cadd7376":{"nonce":2,"balance":"0x0","code":"0x608060405260043610610103575f3560e01c8063a900866b11610092578063f07ec37311610062578063f07ec373146102f7578063f2d12b1214610316578063f47b774014610329578063fb0f3ee114610116578063fd9f1e101461034c575f80fd5b8063a900866b1461028a578063b3a34c4c146102be578063e7acab24146102d1578063ed98a574146102e4575f80fd5b80637423eb3c116100d85780637423eb3c146101f757806379df72bd1461020b57806387201b411461022a578063881477321461024b578063a81744041461026a575f80fd5b801561011657806306fdde031461013e57806346423aa71461015f5780635b34b966146101d5575f80fd5b366101125761011061036b565b005b5f80fd5b610129610124366004615115565b6103f9565b60405190151581526020015b60405180910390f35b348015610149575f80fd5b50610152610408565b604051610135919061518f565b34801561016a575f80fd5b506101b36101793660046151a1565b5f9081526001602052604090205460ff808216926101008304909116916001600160781b03620100008204811692600160881b9092041690565b6040805194151585529215156020850152918301526060820152608001610135565b3480156101e0575f80fd5b506101e9610417565b604051908152602001610135565b348015610202575f80fd5b50610110610420565b348015610216575f80fd5b506101e96102253660046151b8565b6104c1565b61023d61023836600461524c565b6104f8565b6040516101359291906153f0565b348015610256575f80fd5b5061012961026536600461543f565b610571565b61027d61027836600461547d565b61058f565b60405161013591906154e3565b348015610295575f80fd5b506101e96102a43660046154f5565b6001600160a01b03165f9081526002602052604090205490565b6101296102cc36600461550e565b61062a565b6101296102df366004615553565b6106a3565b61023d6102f23660046155d7565b6106e1565b348015610302575f80fd5b506101e96103113660046154f5565b610784565b61027d610324366004615677565b6107a1565b348015610334575f80fd5b5061033d6107ea565b60405161013593929190615719565b348015610357575f80fd5b5061012961036636600461543f565b610801565b7f000000000000000000000000000000000000000000000000000000000000000180156103b357600263929eee145c146103b05763a61be9f05f52346020526024601cfd5b50565b63929eee1454806103e057600263929eee145c146103dc5763a61be9f05f52346020526024601cfd5b5050565b600381146103dc5763a61be9f05f52346020526024601cfd5b5f61040261080c565b92915050565b60606104126109c0565b905090565b5f6104126109d8565b63929eee14546001147f000000000000000000000000000000000000000000000000000000000000000180610453575080155b1561047157604051630f45b98b60e41b815260040160405180910390fd5b61049a7f000000000000000000000000145908bbcfc7b258e4d4d9a586f6e3249ae80216610a45565b6104b7576040516370a4078f60e01b815260040160405180910390fd5b5f63929eee145550565b5f806104cd6004610aa3565b90506104f16104e282610ab35b63ffffffff16565b610140830135610b30565b3590565b9392505050565b60608061055d61051361050b6004610aa3565b610c746104da565b61052a61052260046020610cdc565b610cfa6104da565b61054161053960046040610cdc565b610d526104da565b61055061053960046060610cdc565b89338a15028a0189610daa565b915091509b509b9950505050505050505050565b5f6104f161058a6105826004610aa3565b610de46104da565b610e3c565b606061061f6105a96105a16004610aa3565b610f5d6104da565b604080515f8082526020820190925290610601565b6105ee6040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816105be5790505b5061061961061160046020610cdc565b610fb56104da565b3361100d565b90505b949350505050565b5f6104f161064361063b6004610aa3565b61104b6104da565b604080515f808252602082019092529061069b565b6106886040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816106585790505b5084336110c1565b5f6106d76106bc6106b46004610aa3565b6112406104da565b6106cb61052260046020610cdc565b853386150286016110c1565b9695505050505050565b6060806107736106f46105a16004610aa3565b604080515f808252602082019092529061074c565b6107396040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816107095790505b5061075c61053960046020610cdc565b61076b61053960046040610cdc565b883389610daa565b915091509850989650505050505050565b6001600160a01b0381165f90815260208190526040812054610402565b60606107dc6107b361050b6004610aa3565b6107c261052260046020610cdc565b6107d161061160046040610cdc565b33861502860161100d565b90505b979650505050505050565b60605f806107f661129c565b925092509250909192565b5f6104f183836112e8565b5f61012435600281901c90600316600182118334158214806108315761083134611423565b506003841160a0810260240135906502030203010160d01b861a905f630101020360d01b881a6108648882898888611434565b9096509150506101c4600583901b01355f87600581111561088757610887615329565b036108bc5760443560243517156108a557636ab37ce75f526004601cfd5b6108af8482611751565b6108b7611809565b61099d565b6040805160208082528183019092525f9160208201818036833701905050905060028a60058111156108f0576108f0615329565b036109135761090e60c4356084353360e435610104355b8787611889565b610988565b60038a600581111561092757610927615329565b036109455761090e60c4356084353360e435610104355b87876118d4565b60048a600581111561095957610959615329565b036109735761090e60243533608435604435606435610907565b6109886024353360843560443560643561093e565b610992848261190a565b61099b816119c4565b505b6109a88689846119e8565b6109b0611a5e565b6001995050505050505050505090565b6060602080526707536561706f727460475260606020f35b5f6109e1611ab1565b600143034060801c335f525f60205260405f208054820192508281555050336001600160a01b03167f721c20121297512b72821b97f5326877ea8ecf4bb9948fea5bfcb6453074d37f82604051610a3a91815260200190565b60405180910390a290565b5f816001600160a01b0316600a5a610a5d9190615773565b6040515f8181818686fa925050503d805f8114610a95576040519150601f19603f3d011682016040523d82523d5f602084013e610a9a565b606091505b50909392505050565b5f813563ffffffff168201610402565b5f610ac661016060408051918201905290565b9050610ad58282610140611b28565b610af2610aeb610ae6846040610cdc565b611b31565b6040830152565b5f610b06610b01846060610cdc565b611b84565b9050610b13816060840152565b610b26610b1e825190565b610140840152565b50919050565b0190565b610140820151604080519084015180515f939284927fa66999307ad1bb4fde44d13a5d710bd7718e0c87c1eef68a571629fbf5b93d0292602090910190845b81811015610b9c578251601f1901805186825260c082208652905260209384019390920191600101610b6f565b508060051b6040512094505050505f7f42d81c6929ffdc4eb27a0808e40e82516ad42296c166065de7f812492304ff6e915060405160206060890151015f5b86811015610c08578151601f1901805186825260e082208552905260209283019290910190600101610bdb565b505060408051600587901b9020601f198a0180517ffa445660b7e21515a59617fcd68910b487aa5808b8abda3d78bc85df364b2c2f8252928b01805197815260608c018051938152610140909c019a8b5261018082209390915295909552939097525050925250919050565b5f8063ffffffff8335169050600581901b610c986020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610cca610cc4610cbf8484610cdc565b611240565b82850152565b602001610ca7565b5050505050919050565b5f6104f163ffffffff610cf46104ed8686610b2c8516565b16840190565b5f8063ffffffff8335169050600581901b610d1e6020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610d4a610cc4610d458484610cdc565b611bc7565b602001610d2d565b5f8063ffffffff8335169050600581901b610d766020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610da2610cc4610d9d8484610cdc565b611c09565b602001610d85565b60608036155f80610dbe8c8c85898b611c4c565b91509150610dd18c8b8b8b8b8787612029565b9450945050505097509795505050505050565b5f8063ffffffff8335169050600581901b610e086020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610e34610cc4610e2f8484610cdc565b61215b565b602001610e17565b5f610e45611ab1565b5f805f80855190505f5b81811015610f50575f878281518110610e6a57610e6a615792565b60209081029190910101518051909150600481608001516004811115610e9257610e92615329565b03610e9e575050610f48565b80519450610eab8161219e565b5f8181526001602052604081209850909650610ecd90879089903615156121d7565b50865460ff16610f455780610140015181606001515114610ef057610ef0612265565b610eff85878460200151612272565b865460ff191660011787556040517ff280791efe782edcf06ce15c8f4dff17601db3b88eb3805a0db7d77faf757f0490610f3c9088908490615895565b60405180910390a15b50505b600101610e4f565b5060019695505050505050565b5f8063ffffffff8335169050600581901b610f816020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610fad610cc4610fa88484610cdc565b61104b565b602001610f90565b5f8063ffffffff8335169050600581901b610fd96020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257611005610cc46110008484610cdc565b61230e565b602001610fe8565b60605f36151590505f806110258888858b5189611c4c565b9150915061103282612341565b61103f8887848885612380565b98975050505050505050565b5f61105e61020060408051918201905290565b60a0810180825290915061107a61107484610aa3565b82612453565b61108660016020840152565b61109260016040840152565b6110af6110a86110a3856020610cdc565b612489565b6060840152565b610b266110ba6124b1565b6080840152565b835160808101515f91906110e860048260048111156110e2576110e2615329565b146124cb565b5f80806110f78a36151561256c565b60408051600180825281830190925293965091945092505f9190816020015b61111e615027565b8152602001906001900390816111165790505090508a815f8151811061114657611146615792565b602002602001018190525061115b818b612764565b6111678684848b6128dd565b6040805160018082528183019092525f91602080830190803683375091925050503615156004878181111561119e5761119e615329565b146111c1576111af8d83885f6129dd565b6111bb86868684612a2f565b506111d3565b6111d0888e6080015183612b33565b95505b6111de888c8c612c03565b85825f815181106111f1576111f1615792565b6020026020010181815250506112088d8388612d26565b61122586895f01518a602001518d8c604001518d60600151612df3565b61122d611a5e565b5060019c9b505050505050505050505050565b5f61125361020060408051918201905290565b905061126760208381019083016040611b28565b60a0810180825261127a61107484610aa3565b61128b6110a86110a3856060610cdc565b610b266110ba6110a3856080610cdc565b60605f805f6112a9612e58565b90505f7f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c905060605f5281602052806040526303312e3660635260a05ff35b5f6112f1611ab1565b5f8083815b81811015611408573687878381811061131157611311615792565b90506020028101906113239190615977565b90505f61133360208301836154f5565b90505f61134660408401602085016154f5565b90505f61135960a0850160808601615996565b905081331483331417156004821417871796505f61138d61138261137a8790565b610ab36104da565b866101400135610b30565b5f8181526001602052604090819020805461ffff19166101001781559051909a509091506001600160a01b0380851691908616907f6bacc01dbe442496068f7d234edd811f1a5f833243e0aec824f86ab861f3c90d906113f09085815260200190565b60405180910390a385600101955050505050506112f6565b5050801561141857611418612f35565b506001949350505050565b63a61be9f05f52806020526024601cfd5b5f8061143f5f6124cb565b611447612f42565b426101643511154261014435111715611475576321ccfeb75f5261014435602052610164356040526044601cfd5b610204356102643510156114905763466aa6165f526004601cfd5b7f42d81c6929ffdc4eb27a0808e40e82516ad42296c166065de7f812492304ff6e608081905260a08790526060602460c037604060646101203760e060802061016052610264356102043560051b6102a0016001820181526020810190508881526080602460208301376101608860a0528760c0525f60e0525f6102043593505f5b84811015611566578060400261028401602081610100376040816101203760208101358317925060208401935060e0608020845260a0850194508b85528a6020860152604081606087013750600101611512565b6001850160051b610160206060526102643594505b848110156115b6578060400261028401925060a0840193508a845289602085015260408360608601376020830135919091179060010161157b565b506001600160a01b038111156115d3576339f3e3fd5f526004601cfd5b50505050505f7fa66999307ad1bb4fde44d13a5d710bd7718e0c87c1eef68a571629fbf5b93d029050806080528360a052606060c460c0376020610104610120375060c06080205f9081526020812060e05260843590611647826001600160a01b03165f9081526020819052604090205490565b7ffa445660b7e21515a59617fcd68910b487aa5808b8abda3d78bc85df364b2c2f60808190529091506040608460a03760605161010052896101205260a061014461014037816101e05261018060802094505050506102043560051b61018001828152336020820152608060408201526101206060820152600160808201528360a0820152606060c460c083013760a061026435026101e00160a4356084357f9d9af8e38d66c62e2c12f0225249fd9d721c54b83f48d9352c97c6cacdcb6f318385a35f60605260608101820160405250505f61172383612f8d565b905061172f8389612fde565b7101000000000000000000000000000001000182559150509550959350505050565b60c43560843560e4356101043584156117b9575f6040519050632671a55160e11b815260206004820152600160248201528660448201528460648201528360848201523360a48201528260c48201528160e48201526117b38682610104613033565b50611801565b60028660058111156117cd576117cd615329565b036117f457806001146117e3576117e3816130ea565b6117ef848433856130fb565b611801565b61180184843385856131b0565b505050505050565b346064356084356102643560061b5f80805b8381101561185a5761028481013592506102a481013591508683111561184357611843613287565b82870396506118528284613294565b60400161181b565b508585111561186b5761186b613287565b6118758486613294565b848611156118015761180133868803613294565b61189381836132ca565b816118ba57826001146118a9576118a9836130ea565b6118b5878787876130fb565b6118cb565b6118cb828260028a8a8a8a8a6132e8565b50505050505050565b6118dd83613367565b6118e781836132ca565b816118f9576118b587878787876131b0565b6118cb828260038a8a8a8a8a6132e8565b5f805f805f861561192f57505060843592503391505060c4356101043560e435611944565b50339350506084359150506024356064356044355b801561195257611952613379565b50600586901b6101e403356102643560061b5f80805b838110156119a95761028481013592506102a481013591508a156119935761199083876159b4565b95505b6119a1878a8486898f613386565b604001611968565b506119b886898988888e613386565b50505050505050505050565b60408151146119d05750565b5f6119dc826020015190565b90506103dc81836133bb565b611a048260a4355b331415600182116004909210919091161690565b15611a5957805f611a13825190565b9050608081901c63ffffffff8216611a3484826317b1f94282526001905250565b601c840163fb5014fc6060529350611a5060a4358886856133df565b5f6060526118cb565b505050565b7f00000000000000000000000000000000000000000000000000000000000000018015611a8f575f63929eee145d50565b63929eee145480611aa5575f63929eee145d5050565b50600163929eee145550565b7f00000000000000000000000000000000000000000000000000000000000000018015611af05763929eee145c156103b057637fa8a9875f526004601cfd5b63929eee145480611b135763929eee145c156103dc57637fa8a9875f526004601cfd5b600181146103dc57637fa8a9875f526004601cfd5b80838337505050565b5f63ffffffff8235166040519150808252602082018160051b81018060a084026020870183378293505b81841015611b745780845260209093019260a001611b5b565b60405250919392505050565b9052565b5f63ffffffff8235166040519150808252602082018160051b81018060c084026020870183378293505b81841015611b745780845260209093019260c001611bae565b5f611bd960a060408051918201905290565b9050611be782826080611b28565b611c04611bfd611bf8846080610cdc565b613427565b6080830152565b919050565b5f63ffffffff8235166040519150808252602082018160051b8101808360061b6020870183378293505b81841015611b7457808452602090930192604001611c33565b60605f611c5960016124cb565b86515f90600160e61b82351690806001600160401b03811115611c7e57611c7e61574b565b604051908082528060200260200182016040528015611ca7578160200160208202803683370190505b50945060010160051b91505f60205b83811015611ea8575f611ccc8c83613cce6104da565b90505f805f611cdb848e61256c565b6001600160781b0382166020880152919450925090505f829003611d025750505050611ea0565b6001600160781b0381166040808601919091528a8601849052845160a081015160c0820151608083015192909301518051600184119d909d179c600490931099509092915f5b81811015611dea575f838281518110611d6357611d63615792565b602002602001015190508b8151108d179c505f611d858989846080015161345e565b90508160800151826060015103611da25760608201819052611db7565b611db18989846060015161345e565b60608301525b5f611dd08360600151838a8a611dcb361590565b61349a565b606084018190526080909301929092525050600101611d48565b5087516060015180515f5b81811015611e94575f838281518110611e1057611e10615792565b602002602001015190505f611e2a8b8b846080015161345e565b90508160800151826060015103611e475760608201819052611e5c565b611e568b8b846060015161345e565b60608301525b5f611e718360600151838c8c611dcb36151590565b6060840181905260a0840180516080909501949094529092525050600101611df5565b50505050505050505050505b602001611cb6565b50506001600160e61b018103611ec057611ec06134ed565b50611ecb8888612764565b5f8060205b8381101561200e578581015192508215612006575f611ef28c83613cce6104da565b9050885f03611f0d575f878301819052602090910152612006565b60048151608001516004811115611f2657611f26615329565b14611fa957611f3f8188866001600587901c038e6134fa565b611f55575f878301819052602090910152612006565b602080820151604083015183516080810151930151611f8e9388936001600160781b039081169316913314156001909111168e17612a2f565b611fa4575f878301819052602090910152612006565b611fd4565b611fbb815f015182608001518c612b33565b878301819052935083611fd4575f602090910152612006565b886001900398505f815f01519050611fff85825f015183602001518c85604001518660600151612df3565b6001935050505b602001611ed0565b508061201c5761201c613555565b5050509550959350505050565b85518551606091829161203c81836159c7565b6001600160401b038111156120535761205361574b565b60405190808252806020026020018201604052801561208c57816020015b61207961505a565b8152602001906001900390816120715790505b5092505f5b828110156120e4576120bf8c5f8d84815181106120b0576120b0615792565b60200260200101518c8c613562565b8482815181106120d1576120d1615792565b6020908102919091010152600101612091565b505f5b8181101561213d576121168c60018c848151811061210757612107615792565b60200260200101518c5f613562565b848483018151811061212a5761212a615792565b60209081029190910101526001016120e7565b5061214b8b84888a896135b1565b9350505097509795505050505050565b5f61216c6040808051918201905290565b905061218661218261217d84610aa3565b61389a565b8252565b611c046121976110a3846020610cdc565b6020830152565b5f6121b38260600151518361014001516138b9565b81516001600160a01b03165f90815260208190526040902054610402908390610b30565b82545f90610100900460ff16156121fe5781156121f7576121f7856138c9565b505f610622565b83546201000090046001600160781b0316801561225957831561222957612224866138da565b612259565b8454600160881b90046001600160781b0316811061225957821561225057612250866138eb565b5f915050610622565b50600195945050505050565b632165628a5f526004601cfd5b33831480156122815750505050565b5f61228a612e58565b61190160f01b5f9081526002828152602287815260428320908390528651939450929190601f601d840116106102e260621984011016156122f4576122cf86886138fc565b61190160f01b5f908152600286905260228281526042822091905290975090506122f7565b50815b612304888285858a613992565b5050505050505050565b5f61231f6040808051918201905290565b9050612330612182610d9d84610aa3565b611c04612197610d9d846020610cdc565b80518060051b6040019050602082038051602082527f4b9f2d36e1b4c93de62cc077b00b1a91d84b6c31b4a14e012718dcca230689e78383a190525050565b8351606090806001600160401b0381111561239d5761239d61574b565b6040519080825280602002602001820160405280156123d657816020015b6123c361505a565b8152602001906001900390816123bb5790505b5091505f5b81811015612439575f8782815181106123f6576123f6615792565b6020026020010151905061241389825f0151836020015185613adb565b84838151811061242557612425615792565b6020908102919091010152506001016123db565b5061244787838787876135b1565b50505b95945050505050565b6124608282610160611b28565b612471610aeb610ae6846040610cdc565b6103dc612482610b01846060610cdc565b6060830152565b6040518135601f0163ffffffe01660200180838337913563ffffffff16815290810160405290565b5f6124c3602060408051918201905290565b5f8152905090565b7f000000000000000000000000000000000000000000000000000000000000000180156125185763929eee145c1561250a57637fa8a9875f526004601cfd5b8160010163929eee145d5050565b63929eee14548061254a5763929eee145c1561253b57637fa8a9875f526004601cfd5b8260010163929eee145d505050565b6001811461255f57637fa8a9875f526004601cfd5b505060020163929eee1455565b5f805f80855f015190506125898160a001518260c0015187613c80565b61259c57505f925082915081905061275d565b602086015160408701516001600160781b0391821694501691505f6004826080015160048111156125cf576125cf615329565b036125fc57600183850218905080156125ea576125ea613ca3565b506001935083925082915061275d9050565b50818311831517801561261157612611613ca3565b608082015160011615848411161561262b5761262b613cb0565b6126348261219e565b5f81815260016020526040812091965061265290879083908a6121d7565b61266557505f935083925061275d915050565b805460ff1661268057612680835f0151878a60600151612272565b8054608881901c8061269457869150612757565b6001600160781b038260101c169150600186036126b8578181039650809550612757565b8086036126d357908601858103868211029096039590612757565b80860296810291909502810186810387821102918290039695919003906001600160781b0386111561275757612717565b5f5b8215610b2657908290069190612706565b61272a6127248784612704565b88612704565b8015019687900496909504946001600160781b0386111561275757634e487b715f5260116020526024601cfd5b50505050505b9250925092565b805182515f5b82811015612853575f84828151811061278557612785615792565b602002602001015190505f815f015190508381106127aa576127aa8260200151613cbd565b5f8782815181106127bd576127bd615792565b6020026020010151905080602001516001600160781b03165f036127e35750505061284b565b80516040808201519085015163bfb3f8ce5f8760200151600181111561280b5761280b615329565b14612827575f61281c856060613cce565b9350636088d7de9150505b8251821061283857805f526004601cfd5b612843838389613cd9565b505050505050505b60010161276a565b505f5b818110156128d6575f85828151811061287157612871615792565b6020026020010151905080602001516001600160781b03165f0361289557506128ce565b8051608081015160608201516128b29085908363a8930e9a613d8c565b6128ca8483604001518363d69293326104da613d8c90565b5050505b600101612856565b5050505050565b60a084015160c08501516040860151515f805b8281101561295a575f8960400151828151811061290f5761290f615792565b602002602001015190505f815f01519050801584179350505f612946826060015183608001518c8c8b8b612941361590565b613df3565b6060830152506080018690526001016128f0565b5060808801516004811082168015612974576129746134ed565b505050506060860151515f5b81811015612304575f8860600151828151811061299f5761299f615792565b602002602001015190505f6129c4826060015183608001518b8b8a8a61294136151590565b60608301525060a0810151608090910152600101612980565b8351608081015160208201513314156001821160049092109190911616156128d6575f80612a12858489608001518988613e2e565b63fb5014fc6060529092509050611a5083602001518684846133df565b5f848152600160205260408120805482908290608881901c80612a5457889150612adc565b6001600160781b038260101c169150808803612a7857908801878111935090612adc565b97880297808802979190910288018781119350906001600160781b038083119089111715612adc57612aaa8883612704565b8015019788900497909104906001600160781b038083119089111715612adc57634e487b715f5260116020526024601cfd5b508215612b15578515612b09576040516310fda3e160e01b8152600481018a905260240160405180910390fd5b5f945050505050610622565b8660881b8160101b1760011782556001945050505050949350505050565b5f83610140015184606001515114612b4d57612b4d612265565b83515f8080612b5c8888613fac565b915091505f8082845f885af16001600160a01b0385165f908152600260205260409020805460018101909155606086901b189550925082612bbb578515612bae57612ba5614056565b612bae8561409d565b505f93506104f192505050565b505050505f805f612bd8876040015188606001516104da6140ae90565b925092509250825f14612bee57612bee8461409d565b60408701919091526060860152509392505050565b6040805160208082528183019092525f916020820181803683375050506040850151519091505f5b81811015612c7b575f86604001518281518110612c4a57612c4a615792565b60200260200101519050846080820152612c7281885f0151896101200151876104da61432790565b50600101612c2b565b50506060840151515f90815b81811015612d09575f87606001518281518110612ca657612ca6615792565b602002602001015190505f6005811115612cc257612cc2615329565b81516005811115612cd557612cd5615329565b03612cf1574793508381606001511115612cf157612cf1613287565b612d00813389886143276104da565b50600101612c87565b5050612d14826119c4565b504780156128d6576128d63382613294565b8251608081015160208201515f92839283928392916004811060019091111633909114151615612d8857612d69612d6361010083015190565b5190565b8861441c565b9093509150612d7a60208201612d5f565b945063fb5014fc9350612dd4565b600481608001516004811115612da057612da0615329565b0361230457805194505f8560601b9050612dc187838b608001518b8561445d565b639397928596509094509250612dd49050565b612dde6060859052565b612dea858785856133df565b5f606052612304565b60608290506060829050856001600160a01b0316876001600160a01b03167f9d9af8e38d66c62e2c12f0225249fd9d721c54b83f48d9352c97c6cacdcb6f318a888686604051612e469493929190615a13565b60405180910390a35050505050505050565b5f7f00000000000000000000000000000000000000000000000000000000000005394614612f10575060408051608080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f5f9081527f32b5c112df393a49218d7552f96b2eeb829dfb4272f4f24eef510a586b85feef6020527f95f740a33d720b7cd93c75d515ac95ca3bbaa2594cce46ea48e00974ea8fcd14855246606090815230845260a08220949095529093529190915290565b507f8bebed3dbe91a82da0dc94c8d370c160ad6db1b32164303e65b8544bae7e2f5590565b63fed398fc5f526004601cfd5b600435602014610224356102401416610244356102606102643560061b01141660186101243510600160a01b60843560a4351760c4356024351717101616806103b0576103b0614528565b5f8181526001602081905260409091209060843590612fb290849084903615156121d7565b50815460ff16610b2657610b268184612fd9602463ffffffff6102443516016124896104da565b612272565b5f612feb8260a4356119f0565b15610402575f805f612ffc86614535565b63fb5014fc6060529194509250905061301c60a43587601c8601856133df565b5f60605260209190910160801b1781529392505050565b604080517f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c60ff60a01b175f90815260208690527f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f83526055600b20919092526001600160a01b031690505f805f805260205f85875f875af191505f519050816130c8576130bf614056565b6130c8836145ed565b6001600160e01b03198116632671a55160e11b146118015761180186846145fe565b6369f958275f52806020526024601cfd5b833b61311257635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af1806131a2573d1561318057601f3d0160051c8260051c8160030281831115613169578183036003028280028480020360091c01015b5a60208201101561317c573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b6131c757635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af18061326c573d1561324b57601f3d0160051c8560051c8160030281831115613234578183036003028280028480020360091c01015b5a602082011015613247573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b638ffff9805f526004601cfd5b61329d81613367565b5f805f805f85875af1905080611a59576132b5614056565b63bc806b965f5282602052816040526044601cfd5b5f6132d6836020015190565b9050818114611a5957611a59836119c4565b5f60208851036133225750604080885260208089018a9052632671a55160e11b918901919091526044880152600160648801819052613331565b50606487018051600101908190525b603c60c082028901038781528660208201528560408201528460608201528360808201528260a082015250505050505050505050565b806103b0576391b3e5145f526004601cfd5b636ab37ce75f526004601cfd5b61338f83613367565b61339981836132ca565b816133aa576117ef86868686614613565b611801828260018989895f8a6132e8565b6064810151604082019060c0026044016133d6848383613033565b50506020905250565b5f806001600160e01b03198451165f805260205f85875f8b5af15f51909350149050816134185761340e614056565b846080526024607cfd5b8061180157846080526024607cfd5b5f8063ffffffff83351690506001810160051b61344a8160408051918201905290565b9250613457848483611b28565b5050919050565b5f82840361346d5750806104f1565b82848309156134835763c63cf0895f526004601cfd5b5f61348e8584615aaf565b93909304949350505050565b5f8486146134e357838303428590038082035f6134b7838a615aaf565b6134c1838c615aaf565b6134cb91906159c7565b9050858487830304018115150294505050505061244a565b5092949350505050565b6312d3f5a35f526004601cfd5b8451608081015160208201515f92916004811060019091111633909114151615610f50575f8061353187848b608001518b8a613e2e565b9150915061354b836020015188848463fb5014fc8a614707565b935050505061244a565b63d5da9a1b5f526004601cfd5b61356a61505a565b83515f0361357b5761357b85614774565b5f85600181111561358e5761358e615329565b036135a45761359f86858385614785565b61244a565b61244a86858333876148f5565b84516060905f816001600160401b038111156135cf576135cf61574b565b6040519080825280602002602001820160405280156135f8578160200160208202803683370190505b506040805160208082528183019092529192505f9190602082018180368337505089519192505060010160051b60205b81811015613687575f61363e8b83613cce6104da565b8051606081015191925090801561367c57478111825115161561366857638ffff9805f526004601cfd5b61367c828460200151856040015189614327565b505050602001613628565b50505f5b838110156137f3575f8a82815181106136a6576136a6615792565b6020026020010151905080602001516001600160781b03165f036136ed575f8483815181106136d7576136d7615792565b91151560209283029190910190910152506137eb565b600184838151811061370157613701615792565b911515602092830291909101909101528051604081015180515f5b81811015613786575f83828151811061373757613737615792565b6020026020010151905080606001515f1461377357608081018051908e9052855161012087015161376d9184918c6143276104da565b60808201525b608081015160609091015260010161371c565b505050606081015180515f5b818110156137e5575f8382815181106137ad576137ad615792565b602002602001015190505f81606001519050805f146137d1576137d1888483614a2c565b5060a0810151606090910152600101613792565b50505050505b60010161368b565b506137fd816119c4565b47801561380e5761380e3382613294565b8515613884575f5b848110156138825783818151811061383057613830615792565b60200260200101511561387a5761387a8b828151811061385257613852615792565b60200260200101518a8b848151811061386d5761386d615792565b6020026020010151612d26565b600101613816565b505b61388c611a5e565b509098975050505050505050565b5f6138ad61016060408051918201905290565b9050611c048282612453565b808210156103dc576103dc614a45565b631a5155745f52806020526024601cfd5b63ee9e0e635f52806020526024601cfd5b6310fda3e15f52806020526024601cfd5b5f805f84516001811660410380820360051c9250808752806020018701915050805160e81c6003820191506001811660051b868152825160208218525060015b838110156139685760405f2082821c60051b60209081169182529384018051919094185260010161393c565b50505060405f2091505f61397b82614a52565b5f9081526020939093525050604090209392505050565b5f805f528151602083038051826041035f600182116139f557604087015160608801515f1a83156139d657601b8260ff1c0190506001600160ff1b03821660408a01525b88528a855260205f60808760015afa508385528588526040880152505f515b8a148a1515169450849050613abe57858552604082526044850380516040870351630b135d3f60e11b835289604089035260205f60648b01858f5afa96508615613ab257630b135d3f60e11b5f5114613ab2578b3b15613a5c57634f7fb80d5f526004601cfd5b6001866041031115613a7557638baa579f5f526004601cfd5b64010100000060608901515f1a1a15604187141615613aa557631f003d0a5f5260608801515f1a6020526024601cfd5b63815e1d645f526004601cfd5b8385529152603f198601525b5050508061180157613ace614056565b634f7fb80d5f526004601cfd5b613ae361505a565b8251158451151715613afc576398e9db6e5f526004601cfd5b613b0461505a565b613b118685835f806148f5565b805160608101515f03613b2657509050610622565b613b368787858460800151614785565b82516040828101519082015160208085015190840151855185511891181791181715613b6d5763bced929d5f52846020526024601cfd5b806060015182606001511115613bf4575f865f81518110613b9057613b90615792565b60200260200101519050816060015183606001510389825f015181518110613bba57613bba615792565b60200260200101515f015160600151826020015181518110613bde57613bde615792565b6020026020010151606001818152505050613c75565b5f875f81518110613c0757613c07615792565b60200260200101519050826060015182606001510389825f015181518110613c3157613c31615792565b60200260200101515f015160400151826020015181518110613c5557613c55615792565b602002602001015160600181815250508260600151826060018181525050505b505050949350505050565b428084111590831116818015613c94575080155b156104f1576104f18484614e61565b635a052b325f526004601cfd5b63a11b63ff5f526004601cfd5b63133c37c65f52806020526024601cfd5b5f6104f18284015190565b5f838381518110613cec57613cec615792565b602002602001015190505f815f01519050613d078160031090565b613d1357613d13614e76565b60408201518015613d3657613d318460600151828660800151614e83565b613d49565b60808401515115613d4957613d49614ecd565b6004821460030383816005811115613d6357613d63615329565b90816005811115613d7657613d76615329565b9052505050606090920151604090910152505050565b82515f5b81811015611801575f858281518110613dab57613dab615792565b60209081029190910101518051604082015191925090600382116004881415821515171615613de557855f5288602052836040526044601cfd5b505050806001019050613d90565b5f868803613e0d57613e0686868961345e565b90506107df565b6107dc613e1b87878b61345e565b613e2688888b61345e565b86868661349a565b5f805f613e39614eda565b6301e4d72a815260208082015260408101898152336060830152601c820194509091508751604082015287613e79613e7260a083015190565b60e0840152565b613e8f613e8760c083015190565b610100840152565b613ea5613e9d60e083015190565b610120840152565b610140613eb3816060850152565b5f613ebf604084015190565b90505f613ece82848701614ee4565b928301929050613edf836080870152565b5f613eeb606086015190565b90505f613efa82868901614f4a565b948501949050613f0b8560a0890152565b5f613f188e878a01614faf565b959095019450613f298560c0890152565b8685015f613f378e83614fce565b602497019687019a50613f539050613f4e8c8c0190565b614ffe565b8060408b901b60808b901b17178f610100018181525050613f7d8c82611b8090919063ffffffff16565b60058c8e51613f8c91906159b4565b613f97911b8b6159b4565b99505050505050505050509550959350505050565b5f8083613fb7614eda565b639891976581523360208201908152608060408301819052601c9092019450905f613fe3604085015190565b90505f613ff282848601614ee4565b928301929050614003836040860152565b5f61400f606087015190565b90505f61401e82868801614ee4565b94850194905061402f856060880152565b895f61403d82898901614faf565b9a9d96909a016004019b50949950505050505050505050565b3d1561409b57601f3d0160051c60405160051c8160030281831115614088578183036003028280028480020360091c01015b5a602082011015611a59573d5f803e3d5ffd5b565b63939792855f52806020526024601cfd5b60603d105f8080808080866141205760405f803e5f51935060205192503d60208501113d60208501118082179850505086614120576020845f3e5f51915060208360203e60205190508160071b60208501018160a0026020850101803d10823d101761ffff8486171117985050505f80525b86614152575f8061413584602088018d61415b565b9250975061414783602087018c61423b565b929092179850909550505b5050505061275d565b5f806040519150825160c08602602001830160405285835260208660010160051b8085018360010160051b8701614199858b81811090829003020190565b60010160051b8a861196505b808510156141f957828589015260808a843e6060830151955085608084015260608201518681116141d685856142e2565b17881797505060808a01995060a08301925060a0820191506020850194506141a5565b50505b8183101561422f578083870152608088823e6060810151608082015260808801975060a0810190506020830192506141fc565b50505050935093915050565b604051815180851190808603818710028101602060e08202850181016040528185526001928301600590811b87019390920190911b908185015b8282101561422f57808287015260a088823e60206060890160a083013e606081015160608501516142b26080840151608088015180159114171590565b818311176142c084886142e2565b60a09b909b019a179690961795505060c0938401936020929092019101614275565b5f81516040830151801560038311161561430457506040840151600119909101905b604085015181148551831460208701516020870151141616159250505092915050565b5f8451600581111561433b5761433b615329565b0361437857604084015160208501516001600160a01b0316171561436157614361613379565b61437384608001518560600151613294565b614416565b60018451600581111561438d5761438d615329565b036143be576040840151156143a4576143a4613379565b614373846020015184866080015187606001518686613386565b6002845160058111156143d3576143d3615329565b036143f7576143738460200151848660800151876040015188606001518787611889565b61441684602001518486608001518760400151886060015187876118d4565b50505050565b608082901c63ffffffff604084901c811690808516906144449084906317b1f94290611b8016565b601c830192506144548482614fce565b50509250929050565b5f80614467614eda565b63f4dd92ce815287841860a0820152601c8101925060200160a0808252875f614491604083015190565b90505f6144a082858701614ee4565b9384019390506144b1846020870152565b5f6144bd606085015190565b90505f6144cc82878901614f4a565b9586019590506144dd866040890152565b5f6144ea8d888a01614faf565b9687019690506144fb8760608a0152565b5f6145088d898b01614fce565b905080880197508760040199505050505050505050509550959350505050565b6339f3e3fd5f526004601cfd5b6301e4d72a6102043560051b6080019081525f808260208082015260408101858152336060830152601c919091019061456f608435610aeb565b61458061014460e083016060611b28565b61014061458e816060840152565b61459c60a082016080840152565b61016060a06102643581029290920101906145b8908290840152565b6145c25f82840152565b6020016145d08160c0840152565b5f9181019182526020820196909652939560449095019492505050565b63d13d53d45f52806020526024601cfd5b631cf99b265f5281602052806040526044601cfd5b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166146f85780873b1515166146f857806146e757816146ca573d156146a957601f3d0160051c8360051c8160030281831115614692578183036003028280028480020360091c01015b5a6020820110156146a5573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b5f805f6001600160e01b03198751165f805260205f888a5f8e5af15f5190935014905081614753578361473e575f925050506106d7565b614746614056565b845f52876020526024601cfd5b8061476557845f52876020526024601cfd5b50600198975050505050505050565b63375c24c15f52806020526024601cfd5b5f805f85865160051b87015b808210156148a2576020820191508851825151106147b1576147b16148d6565b81515160051b60208a01015180516020845101515f6040830151602085015115815184101517156147e6575050505050614791565b8260051b60208201015191505060608101935083518901915083511589831060011b17881797508198505f84528a51935086156001811461484f5760608220881860408d01516101208601511860208e015186511817171561484a5761484a6148d6565b614898565b8151855260208201516020860152604082015160408601528a6080860152835160208d015261012084015160408d015260608520975060208d0192508683181561489857865183525b5050505050614791565b5050508160608551015280156148cf57600181036148c7576391b3e5145f526004601cfd5b6148cf6148e3565b5050614416565b637fda72795f526004601cfd5b634e487b715f5260116020526024601cfd5b5f805f86875160051b88015b808210156149f7576020820191508151518a518110614922576149226148d6565b8060051b60208c01015190506020835101515f606083510151602084015115815184101517156149555750505050614901565b8260051b60208201015191505060608101925082518801915082511588831060011b17871796508197505f83528a5192508515600181146149a75760a0822087146149a2576149a26148d6565b6149ee565b815184526020820151602085015260408201516040850152608082015160808501528a60208d01528960408d015260a08220965060208d019250858318156149ee57855183525b50505050614901565b50508551606001839052508015614a255760018103614a1d576391b3e5145f526004601cfd5b614a256148e3565b50506128d6565b63a5f542085f528260205281604052806060526064601cfd5b63466aa6165f526004601cfd5b5f614e58565b5f6009821015614bb1576005821015614b0e576003821015614ac1577f832c58a5b611aadcfa6a082ac9d04bace53d8278387f10040347b7e98eb5b30260018314027fbf8e29b89f29ed9b529c154a63038ffca562f8d7cd1e2545dda53a1b582dde3018610402565b7ff3e8417a785f980bdaf134fa0274a6bf891eeb8195cd94b09d2aa651046e28bc60038314027fa02eb7ff164c884e5e2c336dc85f81c6a93329d8e9adf214b32729b894de2af118610402565b6007821015614b64577f25d02425402d882d211a7ab774c0ed6eca048c4d03d9af40132475744753b2a360058314027f1c19f71958cdd8f081b4c31f7caf5c010b29d12950be2fa1c95070dc47e30b5518610402565b7fb58d772fb09b426b9dece637f61ca9065f2b994f1464b51e9207f55f7c8f594860078314027f7ff98d9d4e55d876c5cfac10b43c04039522f3ddfb0ea9bfe70c68cfb5c7cc1418610402565b6011821015614d0957600d821015614c6657600b821015614c19577f6f0ec38c21f6f583ab7f3c5413c773ffd5344c34fde1d390958e438bf667448f60098314027fd1d97d1ef5eaa37a4ee5fbf234e6f6d64eb511eb562221cd7edfbdde0848da0518610402565b7f32f4e7485d6485f9f6c255929b9905c62ba919758bbe231f231eaeecf33d810c600b8314027fbb98d87cc12922b83759626c5f07d72266da9702d19ffad6a514c73a89002f5f18610402565b600f821015614cbc577f8df51df98847160517f5b1186b4bc3f418d98b8a7f17f1292f392d79d600d79e600d8314027f6b5b04cbae4fcb1a9d78e7b2dfc51a36933d023cf6e347e03d517b472a85259018610402565b7fcc4886e37eedd9aacd6c1c2c9247197a621a71282e87a7cbc673f3736d9aa141600f8314027f1da3eed3ecef6ebaa6e5023c057ec2c75150693fd0dac5c90f4a142f9879fde818610402565b6015821015614db5576013821015614d68577f2d7a3ed6dab270fdb8e054b2ad525f0ce2a8b89cc76c17f0965434740f673a5560118314027fc3939feff011e53ab8c35ca3370aad54c5df1fc2938cd62543174fa6e7d8587718610402565b7f54b3212a178782f104e0d514b41a9a5c4ca9c980bf6597c3cecbf280917e202a60138314027f5a4f867d3d458dabecad65f6201ceeaba0096df2d0c491cc32e6ea4e6435001718610402565b6017821015614e0b577fbb40bf8cea3a5a716e2b6eb08bbdac8ec159f82f380783db3c56904f15a43d0460158314027f3bd8cff538aba49a9c374c806d277181e9651624b3e31111bc0624574f8bca1d18610402565b7f403be09941a31d05cfc2f896505811353d45d38743288b016630cce39435476a60178314027f1d51df90cba8de7637ca3e8fe1e3511d1dc2f23487d05dbdecb781860c21ac1c18610402565b61040282614a58565b6321ccfeb75f5281602052806040526044601cfd5b6394eb6af65f526004601cfd5b5f835f5260205f2060208301835160051b81015b80821015614ebe57815180841160051b93845260209384185260405f209290910190614e97565b50508314905080614416576144165b6309bde3395f526004601cfd5b5f61041260405190565b5f825180835260208401602084018260051b82015b80831015614f375782518051835260208101516020840152604081015160408401526060810151606084015250602083019250608082019150614ef9565b5050508060071b60200191505092915050565b5f80614f54845190565b8084529050602084810190600583901b860181019085015b82821115614f9c575f614f7e84615008565b9050614f8c818360a0615011565b506020929092019160a001614f6c565b60a0840260200194505050505092915050565b5f63ffffffe0603f614fbf855190565b01169050610402838383615011565b5f80614fd8845190565b8084529050600581901b614ff3602086810190860183615011565b602001949350505050565b6103b06040829052565b5f610402825190565b8082828560045afa80153d151715614416575f80fd5b6040518060a0016040528061503a61509c565b81525f602082018190526040820152606080820181905260809091015290565b60408051610100810182525f606082018181526080830182905260a0830182905260c0830182905260e083018290528252602082018190529181019190915290565b6040518061016001604052805f6001600160a01b031681526020015f6001600160a01b0316815260200160608152602001606081526020015f60048111156150e6576150e6615329565b81525f6020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b5f60208284031215615125575f80fd5b81356001600160401b0381111561513a575f80fd5b820161024081850312156104f1575f80fd5b5f81518084525f5b8181101561517057602081850181015186830182015201615154565b505f602082860101526020601f19601f83011685010191505092915050565b602081525f6104f1602083018461514c565b5f602082840312156151b1575f80fd5b5035919050565b5f602082840312156151c8575f80fd5b81356001600160401b038111156151dd575f80fd5b820161016081850312156104f1575f80fd5b5f8083601f8401126151ff575f80fd5b5081356001600160401b03811115615215575f80fd5b6020830191508360208260051b850101111561522f575f80fd5b9250929050565b80356001600160a01b0381168114611c04575f80fd5b5f805f805f805f805f805f60e08c8e031215615266575f80fd5b6001600160401b03808d35111561527b575f80fd5b6152888e8e358f016151ef565b909c509a5060208d013581101561529d575f80fd5b6152ad8e60208f01358f016151ef565b909a50985060408d01358110156152c2575f80fd5b6152d28e60408f01358f016151ef565b909850965060608d01358110156152e7575f80fd5b506152f88d60608e01358e016151ef565b909550935060808c0135925061531060a08d01615236565b915060c08c013590509295989b509295989b9093969950565b634e487b7160e01b5f52602160045260245ffd5b60068110611b8057611b80615329565b61535882825161533d565b6020818101516001600160a01b0390811691840191909152604080830151908401526060808301519084015260809182015116910152565b5f815180845260208085019450602084015f5b838110156153e55781516153b888825161534d565b808401516001600160a01b031660a08901526040015160c088015260e090960195908201906001016153a3565b509495945050505050565b604080825283519082018190525f906020906060840190828701845b8281101561542a57815115158452928401929084019060010161540c565b50505083810360208501526106d78186615390565b5f8060208385031215615450575f80fd5b82356001600160401b03811115615465575f80fd5b615471858286016151ef565b90969095509350505050565b5f805f8060408587031215615490575f80fd5b84356001600160401b03808211156154a6575f80fd5b6154b2888389016151ef565b909650945060208701359150808211156154ca575f80fd5b506154d7878288016151ef565b95989497509550505050565b602081525f6104f16020830184615390565b5f60208284031215615505575f80fd5b6104f182615236565b5f806040838503121561551f575f80fd5b82356001600160401b03811115615534575f80fd5b830160408186031215615545575f80fd5b946020939093013593505050565b5f805f805f60808688031215615567575f80fd5b85356001600160401b038082111561557d575f80fd5b9087019060a0828a031215615590575f80fd5b909550602087013590808211156155a5575f80fd5b506155b2888289016151ef565b909550935050604086013591506155cb60608701615236565b90509295509295909350565b5f805f805f805f8060a0898b0312156155ee575f80fd5b88356001600160401b0380821115615604575f80fd5b6156108c838d016151ef565b909a50985060208b0135915080821115615628575f80fd5b6156348c838d016151ef565b909850965060408b013591508082111561564c575f80fd5b506156598b828c016151ef565b999c989b509699959896976060870135966080013595509350505050565b5f805f805f805f6080888a03121561568d575f80fd5b87356001600160401b03808211156156a3575f80fd5b6156af8b838c016151ef565b909950975060208a01359150808211156156c7575f80fd5b6156d38b838c016151ef565b909750955060408a01359150808211156156eb575f80fd5b506156f88a828b016151ef565b909450925061570b905060608901615236565b905092959891949750929550565b606081525f61572b606083018661514c565b6020830194909452506001600160a01b0391909116604090910152919050565b634e487b7160e01b5f52604160045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b5f8261578d57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f815180845260208085019450602084015f5b838110156153e55781516157ce88825161533d565b838101516001600160a01b03168885015260408082015190890152606080820151908901526080908101519088015260a090960195908201906001016157b9565b5f815180845260208085019450602084015f5b838110156153e557815161583788825161533d565b808401516001600160a01b0390811689860152604080830151908a0152606080830151908a0152608080830151908a015260a091820151169088015260c09096019590820190600101615822565b60058110611b8057611b80615329565b828152604060208201526158b56040820183516001600160a01b03169052565b5f60208301516158d060608401826001600160a01b03169052565b5060408301516101608060808501526158ed6101a08501836157a6565b91506060850151603f198584030160a086015261590a838261580f565b925050608085015161591f60c0860182615885565b5060a085015160e085015260c0850151610100818187015260e0870151915061012082818801528188015192506101409150828288015280880151848801525080870151610180870152505050809150509392505050565b5f823561015e1983360301811261598c575f80fd5b9190910192915050565b5f602082840312156159a6575f80fd5b8135600581106104f1575f80fd5b818103818111156104025761040261575f565b808201808211156104025761040261575f565b5f815180845260208085019450602084015f5b838110156153e557615a0087835161534d565b60a09690960195908201906001016159ed565b5f6080808301878452602060018060a01b03808916602087015260406080604088015283895180865260a08901915060208b0195505f5b81811015615a8b578651615a5f84825161533d565b808701518616848801528481015185850152606090810151908401529585019591870191600101615a4a565b50508781036060890152615a9f818a6159da565b9c9b505050505050505050505050565b80820281158282048414176104025761040261575f56fea164736f6c6343000818000a","storage":{}},"0x6265cc8d1b28edfd4d76c80bf774c0d446fffbde":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610090575f3560e01c80633f15457f116100635780633f15457f1461010f5780637adbf973146101225780637dc0d1d0146101355780638bbedf7514610147578063be27b22c1461015a575f80fd5b806301ffc9a7146100945780631ecfc411146100bc578063224199c2146100d157806330349ebe146100e4575b5f80fd5b6100a76100a23660046115b1565b61016d565b60405190151581526020015b60405180910390f35b6100cf6100ca3660046115ef565b6101a3565b005b6100cf6100df3660046117e0565b6102de565b6002546100f7906001600160a01b031681565b6040516001600160a01b0390911681526020016100b3565b6001546100f7906001600160a01b031681565b6100cf6101303660046115ef565b61063c565b5f546100f7906001600160a01b031681565b6100cf610155366004611889565b61076d565b6100cf61016836600461190b565b6107f1565b5f6001600160e01b031982166301ffc9a760e01b148061019d57506001600160e01b031982166317d8f49b60e01b145b92915050565b6001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa1580156101ea573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061020e919061196b565b90505f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561024d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610271919061196b565b9050336001600160a01b03821614610287575f80fd5b600280546001600160a01b0319166001600160a01b0385169081179091556040519081527f9176b7f47e4504df5e5516c99d90d82ac7cbd49cc77e7f22ba2ac2f2e3a3eba8906020015b60405180910390a1505050565b5f546040516321ae60b160e11b81526001600160a01b039091169063435cc1629061030f90879087906004016119d3565b5f604051808303815f875af115801561032a573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526103519190810190611a6b565b92505f805f610360888761088b565b91945092509050336001600160a01b038216146103da5760405162461bcd60e51b815260206004820152602d60248201527f4f6e6c79206f776e65722063616e2063616c6c2070726f7665416e64436c616960448201526c36abb4ba342932b9b7b63b32b960991b60648201526084015b60405180910390fd5b6001600160a01b038416156105bb576001600160a01b03851661044e5760405162461bcd60e51b815260206004820152602660248201527f43616e6e6f74207365742061646472206966207265736f6c766572206973206e6044820152651bdd081cd95d60d21b60648201526084016103d1565b6001546040516305ef2c7f60e41b815260048101859052602481018490523060448201526001600160a01b0387811660648301525f608483015290911690635ef2c7f09060a4015f604051808303815f87803b1580156104ac575f80fd5b505af11580156104be573d5f803e3d5ffd5b505050505f83836040516020016104df929190918252602082015260400190565b60408051808303601f1901815290829052805160209091012062d5fa2b60e81b8252600482018190526001600160a01b03878116602484015290925087169063d5fa2b00906044015f604051808303815f87803b15801561053e575f80fd5b505af1158015610550573d5f803e3d5ffd5b5050600154604051635b0fc9c360e01b8152600481018590526001600160a01b0386811660248301529091169250635b0fc9c391506044015f604051808303815f87803b15801561059f575f80fd5b505af11580156105b1573d5f803e3d5ffd5b5050505050610632565b6001546040516305ef2c7f60e41b815260048101859052602481018490526001600160a01b03838116604483015287811660648301525f608483015290911690635ef2c7f09060a4015f604051808303815f87803b15801561061b575f80fd5b505af115801561062d573d5f803e3d5ffd5b505050505b5050505050505050565b6001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa158015610683573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106a7919061196b565b90505f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106e6573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061070a919061196b565b9050336001600160a01b03821614610720575f80fd5b5f80546001600160a01b0319166001600160a01b0385169081179091556040519081527fb3eacd0e351fafdfefdec84e1cd19679b38dbcd63ea7c2c24da17fd2bc3b3c0e906020016102d1565b5f546040516321ae60b160e11b81526001600160a01b039091169063435cc1629061079e90859085906004016119d3565b5f604051808303815f875af11580156107b9573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526107e09190810190611a6b565b90506107ec83826107f1565b505050565b5f805f6107fe858561088b565b6001546040516306ab592360e01b815260048101859052602481018490526001600160a01b03808416604483015294975092955090935091909116906306ab5923906064016020604051808303815f875af115801561085f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108839190611add565b505050505050565b5f8080806108998682610a40565b60ff1690506108aa86600183610a63565b92505f6108dc6108bb836001611b08565b6001848a516108ca9190611b1b565b6108d49190611b1b565b899190610a85565b6002546040516327c482cf60e11b81529192506001600160a01b031690634f89059e9061090d908490600401611b2e565b602060405180830381865afa158015610928573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061094c9190611b40565b6109a45760405162461bcd60e51b815260206004820152602360248201527f506172656e74206e616d65206d7573742062652061207075626c6963207375666044820152620ccd2f60eb1b60648201526084016103d1565b6109ae815f610b05565b5f549095506109c7906001600160a01b03168888610de3565b5060408051602081018890529081018690529093506001600160a01b03841690606001604051602081830303815290604052805190602001207fa2e66ce20e6fb2c4f61339c364ad79f15160cf5307230c8bc4d628adbca2ba3989604051610a2f9190611b2e565b60405180910390a350509250925092565b5f828281518110610a5357610a53611b5f565b016020015160f81c905092915050565b82515f90610a718385611b08565b1115610a7b575f80fd5b5091016020012090565b8251606090610a948385611b08565b1115610a9e575f80fd5b5f8267ffffffffffffffff811115610ab857610ab861160a565b6040519080825280601f01601f191660200182016040528015610ae2576020820181803683370190505b50905060208082019086860101610afa82828761100b565b509095945050505050565b5f80610b118484610a40565b60ff169050805f03610b2657505f905061019d565b5f610b4585610b358487611b08565b610b40906001611b08565b610b05565b90505f610b5e610b56866001611b08565b879085610a63565b604080516020810185905290810182905290915060600160408051808303601f190181529082905280516020909101206001546302571be360e01b8352600483018290529095505f916001600160a01b03909116906302571be390602401602060405180830381865afa158015610bd7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bfb919061196b565b90506001600160a01b0381161580610c1b57506001600160a01b03811630145b610c7a5760405162461bcd60e51b815260206004820152602a60248201527f43616e6e6f7420656e61626c652061206e616d65206f776e656420627920736f6044820152696d656f6e6520656c736560b01b60648201526084016103d1565b6001600160a01b0381163014610dd95782610d5e576001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa158015610cd6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cfa919061196b565b60405163232e3b3b60e21b8152600481018590523060248201529091506001600160a01b03821690638cb8ecec906044015f604051808303815f87803b158015610d42575f80fd5b505af1158015610d54573d5f803e3d5ffd5b5050505050610dd9565b6001546040516306ab592360e01b815260048101859052602481018490523060448201526001600160a01b03909116906306ab5923906064016020604051808303815f875af1158015610db3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610dd79190611add565b505b5050505092915050565b5f80610e016040518060400160405280606081526020015f81525090565b610e1985516005610e129190611b08565b8290611060565b50604080518082019091526005815264045f656e7360d81b6020820152610e419082906110c3565b50610e4c81866110c3565b50805160405163021e646f60e21b81525f9182916001600160a01b038a169163087991bc91610e8091601091600401611b73565b606060405180830381865afa158015610e9b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ebf9190611ba7565b93509150506bffffffffffffffffffffffff198216158015610ee057508551155b15610ef3575f8094509450505050611003565b855160208701206bffffffffffffffffffffffff19838116911614610f16575f80fd5b5f610f2187826110ef565b90505b80515160208201511015610ff857610f4b816080015183610f459190611bfc565b4261114a565b610fbd5760405162461bcd60e51b815260206004820152603c60248201527f444e53207265636f7264206973207374616c653b2072656672657368206f722060448201527f64656c657465206974206265666f72652070726f63656564696e672e0000000060648201526084016103d1565b5f80610fcd898460a00151611162565b925090508115610fe857965060019550611003945050505050565b5050610ff3816111d1565b610f24565b505f80945094505050505b935093915050565b602081106110435781518352611022602084611b08565b925061102f602083611b08565b915061103c602082611b1b565b905061100b565b905182516020929092036101000a5f190180199091169116179052565b60408051808201909152606081525f602082015261107f602083611c20565b156110a75761108f602083611c20565b61109a906020611b1b565b6110a49083611b08565b91505b506020828101829052604080518085525f815290920101905290565b60408051808201909152606081525f60208201526110e883845f0151518485516112b6565b9392505050565b6111376040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261019d816111d1565b5f806111568385611c3f565b60030b12159392505050565b5f805b83518310156111c4575f6111798585610a40565b60ff169050611189600185611b08565b93505f8061119887878561139c565b9250905081156111b0579350600192506111ca915050565b6111ba8387611b08565b9550505050611165565b505f9050805b9250929050565b60c081015160208201819052815151116111e85750565b5f6111fa825f015183602001516113f5565b82602001516112099190611b08565b82519091506112189082611454565b61ffff16604083015261122c600282611b08565b825190915061123b9082611454565b61ffff16606083015261124f600282611b08565b825190915061125e908261147a565b63ffffffff166080830152611274600482611b08565b82519091505f906112859083611454565b61ffff169050611296600283611b08565b60a0840181905291506112a98183611b08565b60c0909301929092525050565b60408051808201909152606081525f602082015282518211156112d7575f80fd5b60208501516112e68386611b08565b11156113195761131985611309876020015187866113049190611b08565b6114a2565b611314906002611c66565b6114b8565b5f808651805187602083010193508088870111156113375787860182525b505050602084015b602084106113775780518252611356602083611b08565b9150611363602082611b08565b9050611370602085611b1b565b935061133f565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b5f806113a8858561147a565b63ffffffff1663613d3078146113c257505f905080611003565b602c8310156113d557505f905080611003565b6113e9856113e4866004611b08565b6114d5565b91509150935093915050565b5f815b8351811061140857611408611c7d565b5f6114138583610a40565b60ff169050611423816001611b08565b61142d9083611b08565b9150805f0361143c5750611442565b506113f8565b61144c8382611b1b565b949350505050565b81515f90611463836002611b08565b111561146d575f80fd5b50016002015161ffff1690565b81515f90611489836004611b08565b1115611493575f80fd5b50016004015163ffffffff1690565b5f818311156114b257508161019d565b50919050565b81516114c48383611060565b506114cf83826110c3565b50505050565b5f8060288385516114e69190611b1b565b10156114f657505f9050806111ca565b5f835b611504856028611b08565b8110156115a55760049190911b905f61151d8783610a40565b60ff169050603081101580156115335750603a81105b1561154c57611543603082611b1b565b8317925061159c565b6041811015801561155d5750604781105b1561156d57611543603782611b1b565b6061811015801561157e5750606781105b1561158e57611543605782611b1b565b5f80945094505050506111ca565b506001016114f9565b50946001945092505050565b5f602082840312156115c1575f80fd5b81356001600160e01b0319811681146110e8575f80fd5b6001600160a01b03811681146115ec575f80fd5b50565b5f602082840312156115ff575f80fd5b81356110e8816115d8565b634e487b7160e01b5f52604160045260245ffd5b6040805190810167ffffffffffffffff811182821017156116415761164161160a565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156116705761167061160a565b604052919050565b5f67ffffffffffffffff8211156116915761169161160a565b50601f01601f191660200190565b5f82601f8301126116ae575f80fd5b81356116c16116bc82611678565b611647565b8181528460208386010111156116d5575f80fd5b816020850160208301375f918101602001919091529392505050565b5f82601f830112611700575f80fd5b8135602067ffffffffffffffff8083111561171d5761171d61160a565b8260051b61172c838201611647565b9384528581018301938381019088861115611745575f80fd5b84880192505b858310156117d457823584811115611761575f80fd5b88016040818b03601f1901811315611777575f80fd5b61177f61161e565b878301358781111561178f575f80fd5b61179d8d8a8387010161169f565b8252509082013590868211156117b1575f80fd5b6117bf8c898486010161169f565b8189015284525050918401919084019061174b565b98975050505050505050565b5f805f805f60a086880312156117f4575f80fd5b853567ffffffffffffffff8082111561180b575f80fd5b61181789838a0161169f565b9650602088013591508082111561182c575f80fd5b61183889838a016116f1565b9550604088013591508082111561184d575f80fd5b5061185a8882890161169f565b935050606086013561186b816115d8565b9150608086013561187b816115d8565b809150509295509295909350565b5f805f6060848603121561189b575f80fd5b833567ffffffffffffffff808211156118b2575f80fd5b6118be8783880161169f565b945060208601359150808211156118d3575f80fd5b6118df878388016116f1565b935060408601359150808211156118f4575f80fd5b506119018682870161169f565b9150509250925092565b5f806040838503121561191c575f80fd5b823567ffffffffffffffff80821115611933575f80fd5b61193f8683870161169f565b93506020850135915080821115611954575f80fd5b506119618582860161169f565b9150509250929050565b5f6020828403121561197b575f80fd5b81516110e8816115d8565b5f5b838110156119a0578181015183820152602001611988565b50505f910152565b5f81518084526119bf816020860160208601611986565b601f01601f19169290920160200192915050565b5f60408083016040845280865180835260608601915060608160051b870101925060208089015f5b83811015611a4b57888603605f1901855281518051888852611a1f898901826119a8565b9185015188830389870152919050611a3781836119a8565b9750505093820193908201906001016119fb565b505086840381880152505050611a6181866119a8565b9695505050505050565b5f60208284031215611a7b575f80fd5b815167ffffffffffffffff811115611a91575f80fd5b8201601f81018413611aa1575f80fd5b8051611aaf6116bc82611678565b818152856020838501011115611ac3575f80fd5b611ad4826020830160208601611986565b95945050505050565b5f60208284031215611aed575f80fd5b5051919050565b634e487b7160e01b5f52601160045260245ffd5b8082018082111561019d5761019d611af4565b8181038181111561019d5761019d611af4565b602081525f6110e860208301846119a8565b5f60208284031215611b50575f80fd5b815180151581146110e8575f80fd5b634e487b7160e01b5f52603260045260245ffd5b61ffff83168152604060208201525f61144c60408301846119a8565b805163ffffffff81168114611ba2575f80fd5b919050565b5f805f60608486031215611bb9575f80fd5b611bc284611b8f565b9250611bd060208501611b8f565b915060408401516bffffffffffffffffffffffff1981168114611bf1575f80fd5b809150509250925092565b63ffffffff818116838216019080821115611c1957611c19611af4565b5092915050565b5f82611c3a57634e487b7160e01b5f52601260045260245ffd5b500690565b600382810b9082900b03637fffffff198112637fffffff8213171561019d5761019d611af4565b808202811582820484141761019d5761019d611af4565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{"0x0":"0x9b2565a3545a1312bdcb6e7148a7f7cae8c2706b","0x1":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0x2":"0x287dee389caaa49edc112888f2bcfd927b472e25"}},"0x62b11ad5f582a5c5d378fb310125b030042554f1":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106103af5760003560e01c80637e37479e116101f4578063ba5d40b71161011a578063e985e9c5116100ad578063f5c1f76e1161007c578063f5c1f76e146108d8578063f7df5c60146108eb578063f8c8765e146108fe578063ffa1ad741461091157600080fd5b8063e985e9c51461087a578063ebf0c717146108b6578063ec129eea146108bd578063f25eb5c1146108d057600080fd5b8063c87b56dd116100e9578063c87b56dd1461082e578063ce92b33e14610841578063cf2c52cb14610854578063d9548e531461086757600080fd5b8063ba5d40b7146107b3578063baef73e9146107c6578063bb5b27e114610808578063bebec6b41461081b57600080fd5b8063a22cb46511610192578063ac9650d811610161578063ac9650d81461074c578063b3f9e4cb1461076c578063b85afd281461077f578063b88d4fde146107a057600080fd5b8063a22cb465146106e7578063a3f4df7e146106fa578063a424740014610726578063ab3b87fe1461073957600080fd5b80639508b1c4116101ce5780639508b1c4146106b15780639559c0bd146106c457806395d89b41146106cc57806399e0dd7c146106d457600080fd5b80637e37479e146106785780637eee288d1461068b57806394d008ef1461069e57600080fd5b806342842e0e116102d95780635096023911610277578063663f7b2a11610246578063663f7b2a14610610578063672b9f81146106235780636ccbae5f1461064457806370a082311461066557600080fd5b806350960239146105bb578063572b6c05146105ce5780636352211e146105ea578063638e5c78146105fd57600080fd5b806347c81699116102b357806347c816991461056f5780634a72584d146105825780634f558e791461059557806350382c1a146105a857600080fd5b806342842e0e1461053657806342966c6814610549578063430c20811461055c57600080fd5b80631bf7e13e1161035157806327f189751161032057806327f18975146104ea578063310bd74b146104fd5780633f72ec6e1461051057806340c10f191461052357600080fd5b80631bf7e13e146104905780631f71be06146104a357806323b872dd146104b6578063276fabb1146104c957600080fd5b8063095ea7b31161038d578063095ea7b31461041c578063150b7a02146104315780631bd8cc1a1461045d5780631be5e7ed1461047d57600080fd5b806301ffc9a7146103b457806306fdde03146103dc578063081812fc146103f1575b600080fd5b6103c76103c2366004613f0b565b610935565b60405190151581526020015b60405180910390f35b6103e4610946565b6040516103d39190613f78565b6104046103ff366004613f8b565b6109d8565b6040516001600160a01b0390911681526020016103d3565b61042f61042a366004613fb9565b6109ff565b005b61044461043f366004614026565b610a18565b6040516001600160e01b031990911681526020016103d3565b61047061046b3660046140dc565b610b72565b6040516103d3919061417f565b6103e461048b366004614192565b610c68565b6103e461049e3660046141c9565b610cb3565b61042f6104b1366004614249565b610dbe565b61042f6104c4366004614305565b610e54565b6104dc6104d7366004614346565b610ea7565b6040519081526020016103d3565b61042f6104f8366004614387565b610eb6565b61042f61050b366004613f8b565b610efe565b61042f61051e3660046143fa565b610f39565b61042f610531366004613fb9565b61103b565b61042f610544366004614305565b611088565b61042f610557366004613f8b565b6110a3565b6103c761056a366004613fb9565b6110e7565b61042f61057d366004614424565b6110f3565b61042f610590366004614485565b611132565b6103c76105a3366004613f8b565b611178565b61042f6105b636600461458c565b611197565b61042f6105c93660046145c0565b6111cd565b6103c76105dc3660046145c0565b6001600160a01b0316301490565b6104046105f8366004613f8b565b61122d565b61042f61060b366004613f8b565b61124a565b61042f61061e366004614678565b611295565b6106366106313660046146c0565b611336565b6040516103d39291906146e2565b6104dc610652366004613f8b565b6000908152610100602052604090205490565b6104dc6106733660046145c0565b61134e565b6104dc6106863660046145c0565b6113d4565b61042f610699366004613fb9565b611405565b61042f6106ac366004614707565b61145c565b61042f6106bf366004614762565b6114ab565b6104dc601481565b6103e4611532565b61042f6106e2366004614805565b611541565b61042f6106f536600461483a565b6115c8565b6103e46040518060400160405280600d81526020016c554e533a20526567697374727960981b81525081565b6103c76107343660046141c9565b6115da565b61042f610747366004613fb9565b611625565b61075f61075a366004614346565b61166a565b6040516103d39190614866565b61040461077a366004613f8b565b611746565b61079261078d3660046140dc565b611770565b6040516103d39291906148c8565b61042f6107ae3660046148ed565b611892565b61042f6107c1366004614249565b6118d9565b6107f06107d4366004613f8b565b600090815261013960205260409020546001600160401b031690565b6040516001600160401b0390911681526020016103d3565b6103e4610816366004613f8b565b611962565b6103e46108293660046145c0565b611a04565b6103e461083c366004613f8b565b611ace565b61042f61084f366004614387565b611b34565b61042f610862366004614958565b611b73565b6103c7610875366004613f8b565b611c42565b6103c761088836600461499f565b6001600160a01b039182166000908152606a6020908152604080832093909416825291909152205460ff1690565b60006104dc565b61042f6108cb366004614387565b611c85565b61042f611cc4565b6104706108e6366004614346565b611d4b565b61042f6108f93660046149d8565b611dfe565b61042f61090c366004614a0a565b611e8f565b6103e460405180604001604052806005815260200164302e392e3160d81b81525081565b600061094082612065565b92915050565b60606065805461095590614a66565b80601f016020809104026020016040519081016040528092919081815260200182805461098190614a66565b80156109ce5780601f106109a3576101008083540402835291602001916109ce565b820191906000526020600020905b8154815290600101906020018083116109b157829003601f168201915b5050505050905090565b60006109e3826120b5565b506000908152606960205260409020546001600160a01b031690565b80610a0981612114565b610a13838361217a565b505050565b60007f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378546001600160a01b0316610a4d61229c565b6001600160a01b031603610b0e57610a6361229c565b6001600160a01b03166342966c68856040518263ffffffff1660e01b8152600401610a9091815260200190565b600060405180830381600087803b158015610aaa57600080fd5b505af1158015610abe573d6000803e3d6000fd5b505050821580159150610ad85750610ad882840184614a9a565b15610af657610ae730856122ab565b610af185856123f9565b610b00565b610b0085856122ab565b50630a85bd0160e11b610b69565b60405162461bcd60e51b815260206004820152602560248201527f52656769737472793a204552433732315f524543454956494e475f50524f4849604482015264109255115160da1b60648201526084015b60405180910390fd5b95945050505050565b6060826001600160401b03811115610b8c57610b8c6144d7565b604051908082528060200260200182016040528015610bbf57816020015b6060815260200190600190039081610baa5790505b50905060005b83811015610c6057610c30858583818110610be257610be2614ab5565b9050602002810190610bf49190614acb565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508792506124a4915050565b828281518110610c4257610c42614ab5565b60200260200101819052508080610c5890614b27565b915050610bc5565b509392505050565b6060610cab84848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508692506124a4915050565b949350505050565b606060005a9050610cc58585856115da565b610d215760405162461bcd60e51b815260206004820152602760248201527f554e535265676973747279466f727761726465723a205349474e41545552455f6044820152661253959053125160ca1b6064820152608401610b60565b610db3610d3160208701876145c0565b30604088013584610d4560608b018b614acb565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284376000920191909152506124d992505050565b9150505b9392505050565b610134546001600160a01b0316610dd361229c565b6001600160a01b031614610df95760405162461bcd60e51b8152600401610b6090614b40565b6000610e0d610e08888a614b87565b6125ba565b509050610e1a8982611405565b610e278686868685612612565b8115610e4957610e498982610e44610e3f8b8d614b87565b612680565b612701565b505050505050505050565b80610e66610e6061229c565b82612743565b610e825760405162461bcd60e51b8152600401610b6090614b94565b81610e8c81612114565b610e95836127d4565b610ea0858585612841565b5050505050565b6000610c60610e088385614b87565b80610ec2610e6061229c565b610ede5760405162461bcd60e51b8152600401610b6090614b94565b81610ee881612114565b610ef587878787876129e8565b50505050505050565b80610f0a610e6061229c565b610f265760405162461bcd60e51b8152600401610b6090614b94565b81610f3081612114565b610a13836127d4565b610134546001600160a01b0316610f4e61229c565b6001600160a01b031614610f745760405162461bcd60e51b8152600401610b6090614b40565b610f7d816120b5565b42826001600160401b031611610fd55760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a204558504952595f494e5f5041535400000000000000006044820152606401610b60565b60008181526101396020908152604091829020805467ffffffffffffffff19166001600160401b038616908117909155915191825282917f93feabb03ab84f47fc85bf0c298103fca21d8c8bc376eae0c1e1c56b9d4f7789910160405180910390a25050565b611043612a4b565b6001600160a01b031661105461229c565b6001600160a01b03161461107a5760405162461bcd60e51b8152600401610b6090614bdd565b61108482826122ab565b5050565b610a1383838360405180602001604052806000815250611892565b806110af610e6061229c565b6110cb5760405162461bcd60e51b8152600401610b6090614b94565b816110d581612114565b6110de836127d4565b610a1383612b4c565b6000610db78383612743565b806110ff610e6061229c565b61111b5760405162461bcd60e51b8152600401610b6090614b94565b8161112581612114565b610ef58787878787612bf3565b8061113e610e6061229c565b61115a5760405162461bcd60e51b8152600401610b6090614b94565b8161116481612114565b61117086868686612cd2565b505050505050565b6000818152606760205260408120546001600160a01b03161515610940565b6111ca816040516020016111ab9190614c1f565b6040516020818303038152906040528051906020012060001c82612d72565b50565b610134546001600160a01b03166111e261229c565b6001600160a01b0316146112085760405162461bcd60e51b8152600401610b6090614b40565b6001600160a01b0316600090815261013660205260409020805460ff19166001179055565b600061123882611c42565b6112455761094082612d97565b919050565b80611256610e6061229c565b6112725760405162461bcd60e51b8152600401610b6090614b94565b61128461127d61229c565b3084612841565b61108461128f61229c565b836123f9565b60006112a0826125ba565b5090506112ab61229c565b6001600160a01b03166112bd8261122d565b6001600160a01b0316146113135760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b60565b61131c81612114565b61108461132761229c565b8261133185612680565b612df7565b6060806113438484612e7e565b909590945092505050565b60006001600160a01b0382166113b85760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b6064820152608401610b60565b506001600160a01b031660009081526068602052604090205490565b6001600160a01b038116600090815261013560205260408120546113f781612e9f565b6113ff578091505b50919050565b610134546001600160a01b031661141a61229c565b6001600160a01b0316146114405760405162461bcd60e51b8152600401610b6090614b40565b611449816127d4565b61108461145582612d97565b8383612841565b611464612a4b565b6001600160a01b031661147561229c565b6001600160a01b03161461149b5760405162461bcd60e51b8152600401610b6090614bdd565b6114a584846122ab565b50505050565b6114b58787612ee9565b6114bd61229c565b6001600160a01b03166114cf8661122d565b6001600160a01b0316146115255760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b60565b610ef58484848489612612565b60606066805461095590614a66565b610134546001600160a01b031661155661229c565b6001600160a01b03161461157c5760405162461bcd60e51b8152600401610b6090614b40565b61013361158a828483614c81565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b82826040516115bc929190614d69565b60405180910390a15050565b6110846115d361229c565b8383612f58565b6000610cab6115e885614d7d565b3085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061302692505050565b80611631610e6061229c565b61164d5760405162461bcd60e51b8152600401610b6090614b94565b8161165781612114565b6114a561166384612d97565b8585612841565b606060006116788385614e07565b905030330361173d5760005b8381101561173b5761170b61169761229c565b61169f61316f565b8787858181106116b1576116b1614ab5565b90506020028101906116c39190614acb565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250613183915050565b82828151811061171d5761171d614ab5565b6020026020010181905250808061173390614b27565b915050611684565b505b610cab816131b3565b6000818152606760205260408120546001600160a01b0316611769576000610940565b3092915050565b606080836001600160401b0381111561178b5761178b6144d7565b6040519080825280602002602001820160405280156117be57816020015b60608152602001906001900390816117a95790505b509150836001600160401b038111156117d9576117d96144d7565b60405190808252806020026020018201604052801561180c57816020015b60608152602001906001900390816117f75790505b50905060005b848110156118895761183c86868381811061182f5761182f614ab5565b9050602002013585612e7e565b84838151811061184e5761184e614ab5565b6020026020010184848151811061186757611867614ab5565b602002602001018290528290525050808061188190614b27565b915050611812565b50935093915050565b8161189e610e6061229c565b6118ba5760405162461bcd60e51b8152600401610b6090614b94565b826118c481612114565b6118cd846127d4565b611170868686866132de565b610134546001600160a01b03166118ee61229c565b6001600160a01b0316146119145760405162461bcd60e51b8152600401610b6090614b40565b600080611924610e08898b614b87565b9150915061193181613311565b6119498a83611943610e3f8c8e614b87565b86613371565b6119568787878786612612565b50505050505050505050565b600081815260c96020526040902080546060919061197f90614a66565b80601f01602080910402602001604051908101604052809291908181526020018280546119ab90614a66565b80156119f85780601f106119cd576101008083540402835291602001916119f8565b820191906000526020600020905b8154815290600101906020018083116119db57829003601f168201915b50505050509050919050565b6001600160a01b03811660009081526101356020526040902054606090611a2a81612e9f565b6113ff576000818152610138602052604090208054611a4890614a66565b80601f0160208091040260200160405190810160405280929190818152602001828054611a7490614a66565b8015611ac15780601f10611a9657610100808354040283529160200191611ac1565b820191906000526020600020905b815481529060010190602001808311611aa457829003601f168201915b5050505050915050919050565b6060611ad9826120b5565b6000611ae36133c4565b90506000815111611b035760405180602001604052806000815250610db7565b80611b0d846133d4565b604051602001611b1e929190614e7a565b6040516020818303038152906040529392505050565b80611b40610e6061229c565b611b5c5760405162461bcd60e51b8152600401610b6090614b94565b81611b6681612114565b610ef58787878787612612565b7f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87546001600160a01b0316611ba661229c565b6001600160a01b031614611bcc5760405162461bcd60e51b8152600401610b6090614bdd565b6020819003611bef576000611be382840184613f8b565b90506114a584826122ab565b6000611bfd82840184614ea9565b805190915060005b8181101561117057611c3086848381518110611c2357611c23614ab5565b60200260200101516122ab565b80611c3a81614b27565b915050611c05565b600081815261013960205260408120546001600160401b03161580159061094057505060009081526101396020526040902054426001600160401b039091161090565b80611c91610e6061229c565b611cad5760405162461bcd60e51b8152600401610b6090614b94565b81611cb781612114565b610ef587878787876134d4565b6000611cce61229c565b6001600160a01b0381166000908152610135602052604081205491925003611d425760405162461bcd60e51b815260206004820152602160248201527f52656769737472793a20524556455253455f5245434f52445f49535f454d50546044820152605960f81b6064820152608401610b60565b6111ca816134ea565b6060816001600160401b03811115611d6557611d656144d7565b604051908082528060200260200182016040528015611d9857816020015b6060815260200190600190039081611d835790505b50905060005b82811015611df757611dc7848483818110611dbb57611dbb614ab5565b90506020020135611962565b828281518110611dd957611dd9614ab5565b60200260200101819052508080611def90614b27565b915050611d9e565b5092915050565b610134546001600160a01b0316611e1361229c565b6001600160a01b031614611e395760405162461bcd60e51b8152600401610b6090614b40565b61013454611e50906001600160a01b0316846122ab565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c39528383604051611e82929190614d69565b60405180910390a2505050565b600054610100900460ff1615808015611eaf5750600054600160ff909116105b80611ec95750303b158015611ec9575060005460ff166001145b611f2c5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610b60565b6000805460ff191660011790558015611f4f576000805461ff0019166101001790555b61013480546001600160a01b0319166001600160a01b038716179055837f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec9237880546001600160a01b0319166001600160a01b03929092169190911790556040805180820182526013815272556e73746f707061626c6520446f6d61696e7360681b60208083019190915282518084019093526002835261155160f21b90830152611ff79161352f565b611fff61356f565b61200761356f565b61201083613598565b612019826135c8565b8015610ea0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b60006001600160e01b031982166380ac58cd60e01b148061209657506001600160e01b03198216635b5e139f60e01b145b8061094057506301ffc9a760e01b6001600160e01b0319831614610940565b6000818152606760205260409020546001600160a01b03166111ca5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b60565b3033036121715761212361316f565b81146111ca5760405162461bcd60e51b815260206004820152601760248201527f52656769737472793a20544f4b454e5f494e56414c49440000000000000000006044820152606401610b60565b6111ca816135f8565b600061218582612d97565b9050806001600160a01b0316836001600160a01b0316036121f25760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b6064820152608401610b60565b806001600160a01b031661220461229c565b6001600160a01b0316148061222057506122208161088861229c565b6122925760405162461bcd60e51b815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c00006064820152608401610b60565b610a138383613626565b60006122a6613694565b905090565b6001600160a01b0382166123015760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610b60565b6000818152606760205260409020546001600160a01b0316156123665760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610b60565b612372600083836136af565b6001600160a01b038216600090815260686020526040812080546001929061239b908490614f39565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b03861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b6000612403612a4b565b905061240f8183613626565b60008051602061529383398151915254604080516020808201869052825180830390910181528183019283905263e3dec8fb60e01b9092526001600160a01b0390921691829163e3dec8fb9161246c918891309190604401614f4c565b600060405180830381600087803b15801561248657600080fd5b505af115801561249a573d6000803e3d6000fd5b5050505050505050565b6060610db7836040516020016124ba9190614c1f565b6040516020818303038152906040528051906020012060001c8361378b565b60606124e4856135f8565b600080876001600160a01b0316866124fe8b8a8989613183565b60405161250b9190614c1f565b60006040518083038160008787f1925050503d8060008114612549576040519150601f19603f3d011682016040523d82523d6000602084013e61254e565b606091505b50909250905061255f603f87614f8e565b5a1161256d5761256d614fa2565b6125ad82826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061386d565b9998505050505050505050565b805160009081905b801561260c578291506125f882856125db600185614fb8565b815181106125eb576125eb614ab5565b60200260200101516138a6565b92508061260481614fcb565b9150506125c2565b50915091565b60005b848110156111705761266e86868381811061263257612632614ab5565b90506020028101906126449190614acb565b86868581811061265657612656614ab5565b90506020028101906126689190614acb565b86612bf3565b8061267881614b27565b915050612615565b606060008260008151811061269757612697614ab5565b602002602001015190506000600190505b8351811015611df757818482815181106126c4576126c4614ab5565b60200260200101516040516020016126dd929190614fe2565b604051602081830303815290604052915080806126f990614b27565b9150506126a8565b61dead6001600160a01b0384161480159061273357506001600160a01b03831660009081526101356020526040902054155b15610a1357610a13838383612df7565b60008061274f8361122d565b90506001600160a01b03811615801590610cab5750806001600160a01b0316846001600160a01b031614806127a957506001600160a01b038082166000908152606a602090815260408083209388168352929052205460ff165b80610cab5750836001600160a01b03166127c2846109d8565b6001600160a01b031614949350505050565b6127dd81613952565b6040516020016127ef91815260200190565b60408051601f198184030181528282528051602091820120600085815260cb9092529181209190915582917f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9190a250565b826001600160a01b031661285482612d97565b6001600160a01b0316146128b85760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b6064820152608401610b60565b6001600160a01b03821661291a5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610b60565b6129258383836136af565b612930600082613626565b6001600160a01b0383166000908152606860205260408120805460019290612959908490614fb8565b90915550506001600160a01b0382166000908152606860205260408120805460019290612987908490614f39565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60005b8481101561117057612a39868683818110612a0857612a08614ab5565b90506020020135858584818110612a2157612a21614ab5565b9050602002810190612a339190614acb565b85612cd2565b80612a4381614b27565b9150506129eb565b600080516020615293833981519152546000906001600160a01b03168015612b485760405163721804d360e11b81523060048201526000906001600160a01b0383169063e43009a690602401602060405180830381865afa158015612ab4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ad8919061501e565b60405163e66f960360e01b8152600481018290529091506001600160a01b0383169063e66f960390602401602060405180830381865afa158015612b20573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b449190615037565b9250505b5090565b6000612b5782612d97565b9050612b65816000846136af565b612b70600083613626565b6001600160a01b0381166000908152606860205260408120805460019290612b99908490614fb8565b909155505060008281526067602052604080822080546001600160a01b0319169055518391906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b60008585604051602001612c08929190615054565b60408051601f198184030181528282528051602091820120601f8901829004820284018201909252878352909250612c5c9183918990899081908401838280828437600092019190915250612d7292505050565b6111708187878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061397a915050565b612cdb84613aaf565b612d275760405162461bcd60e51b815260206004820152601c60248201527f5265636f726453746f726167653a204b45595f4e4f545f464f554e44000000006044820152606401610b60565b6114a584612d3486611962565b85858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525087925061397a915050565b612d7b82613aaf565b61108457600082815260c960205260409020610a138282615064565b6000818152606760205260408120546001600160a01b0316806109405760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b60565b6000828152610138602052604090208054612e1190614a66565b9050600003612e3557600082815261013860205260409020612e338282615064565b505b6001600160a01b03831660008181526101356020526040808220859055518492917feb76a21470988c474a21f690cc28fee1ed511bd812dc3c21fd0f49c5e5d4708a91a3505050565b606080612e8a84611962565b9150612e96848461378b565b90509250929050565b6000818152610137602052604081205460ff16801561094057506101366000612ec661229c565b6001600160a01b0316815260208101919091526040016000205460ff1692915050565b60008051602061529383398151915254604051633805550f60e01b81526001600160a01b03909116908190633805550f90612f2a9086908690600401614d69565b600060405180830381600087803b158015612f4457600080fd5b505af1158015610ef5573d6000803e3d6000fd5b816001600160a01b0316836001600160a01b031603612fb95760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610b60565b6001600160a01b038381166000818152606a6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561306d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613091919061501e565b9050600061313f8660600151805190602001208688602001516040516020016130df9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561316557508551613165906001600160a01b03168286613ad5565b9695505050505050565b60003033036131805750601f193601355b90565b606082858560405160200161319a93929190615123565b6040516020818303038152906040529050949350505050565b606081516001600160401b038111156131ce576131ce6144d7565b60405190808252806020026020018201604052801561320157816020015b60608152602001906001900390816131ec5790505b50905060005b82518110156113ff57600080306001600160a01b031685848151811061322f5761322f614ab5565b60200260200101516040516132449190614c1f565b600060405180830381855af49150503d806000811461327f576040519150601f19603f3d011682016040523d82523d6000602084013e613284565b606091505b50915091506132ac82826040518060600160405280602781526020016152b36027913961386d565b8484815181106132be576132be614ab5565b6020026020010181905250505080806132d690614b27565b915050613207565b6132e9848484612841565b6132f584848484613c17565b6114a55760405162461bcd60e51b8152600401610b6090615162565b6000818152610137602052604090205460ff16156111ca5760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a20544f4b454e5f555047524144454400000000000000006044820152606401610b60565b61337b84846122ab565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952836040516133ab9190613f78565b60405180910390a280156114a5576114a5848484612701565b6060610133805461095590614a66565b6060816000036133fb5750506040805180820190915260018152600360fc1b602082015290565b8160005b8115613425578061340f81614b27565b915061341e9050600a83614f8e565b91506133ff565b6000816001600160401b0381111561343f5761343f6144d7565b6040519080825280601f01601f191660200182016040528015613469576020820181803683370190505b5090505b8415610cab5761347e600183614fb8565b915061348b600a866151b4565b613496906030614f39565b60f81b8183815181106134ab576134ab614ab5565b60200101906001600160f81b031916908160001a9053506134cd600a86614f8e565b945061346d565b6134dd816127d4565b610ea08585858585612612565b6001600160a01b03811660008181526101356020526040808220829055517ffcf5eec0cfa3e6332f5f0e63ec242d71f866a61d121d6cdf5c2eb3b668a26c4f9190a250565b600054610100900460ff166135565760405162461bcd60e51b8152600401610b60906151c8565b60656135628382615064565b506066610a138282615064565b600054610100900460ff166135965760405162461bcd60e51b8152600401610b60906151c8565b565b600054610100900460ff166135bf5760405162461bcd60e51b8152600401610b60906151c8565b6111ca81613d1c565b600054610100900460ff166135ef5760405162461bcd60e51b8152600401610b60906151c8565b6111ca81613d75565b60008181526101006020526040902054613613906001614f39565b6000918252610100602052604090912055565b600081815260696020526040902080546001600160a01b0319166001600160a01b038416908117909155819061365b82612d97565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60003033036136aa575060331936013560601c90565b503390565b6001600160a01b0382166136c6576136c681613311565b600081815261013960205260409020546001600160401b031615613761576001600160a01b0382161580159061371557506136ff612a4b565b6001600160a01b0316826001600160a01b031614155b6137615760405162461bcd60e51b815260206004820152601960248201527f52656769737472793a20544f4b454e5f455850495241424c45000000000000006044820152606401610b60565b6001600160a01b03831660009081526101356020526040902054819003610a1357610a13836134ea565b606061379682612e9f565b156137b05750604080516020810190915260008152610940565b60ca60006137bd84613952565b8152602001908152602001600020600084815260200190815260200160002080546137e790614a66565b80601f016020809104026020016040519081016040528092919081815260200182805461381390614a66565b80156138605780601f1061383557610100808354040283529160200191613860565b820191906000526020600020905b81548152906001019060200180831161384357829003601f168201915b5050505050905092915050565b6060831561387c575081610db7565b82511561388c5782518084602001fd5b8160405162461bcd60e51b8152600401610b609190613f78565b600081516000036138f15760405162461bcd60e51b815260206004820152601560248201527452656769737472793a204c4142454c5f454d50545960581b6044820152606401610b60565b82826040516020016139039190614c1f565b60405160208183030381529060405280519060200120604051602001613933929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b600081815260cb602052604081205415612b4857600082815260cb6020526040902054610940565b60ca600061398783613952565b8152602001908152602001600020600085815260200190815260200160002080546139b190614a66565b9050600003613a0957826040516139c89190614c1f565b6040518091039020817f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f8685604051613a009190613f78565b60405180910390a35b8160ca6000613a1784613952565b815260200190815260200160002060008681526020019081526020016000209081613a429190615064565b5081604051613a519190614c1f565b604051809103902083604051613a679190614c1f565b6040518091039020827f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d928686604051613aa19291906146e2565b60405180910390a450505050565b600081815260c9602052604081208054829190613acb90614a66565b9050119050919050565b6000806000613ae48585613dc3565b90925090506000816004811115613afd57613afd615213565b148015613b1b5750856001600160a01b0316826001600160a01b0316145b15613b2b57600192505050610db7565b600080876001600160a01b0316631626ba7e60e01b8888604051602401613b53929190615229565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051613b919190614c1f565b600060405180830381855afa9150503d8060008114613bcc576040519150601f19603f3d011682016040523d82523d6000602084013e613bd1565b606091505b5091509150818015613be4575080516020145b8015613c0b57508051630b135d3f60e11b90613c09908301602090810190840161501e565b145b98975050505050505050565b60006001600160a01b0384163b15613d1457836001600160a01b031663150b7a02613c4061229c565b8786866040518563ffffffff1660e01b8152600401613c629493929190615242565b6020604051808303816000875af1925050508015613c9d575060408051601f3d908101601f19168201909252613c9a91810190615275565b60015b613cfa573d808015613ccb576040519150601f19603f3d011682016040523d82523d6000602084013e613cd0565b606091505b508051600003613cf25760405162461bcd60e51b8152600401610b6090615162565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610cab565b506001610cab565b600054610100900460ff16613d435760405162461bcd60e51b8152600401610b60906151c8565b806000805160206152938339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b600054610100900460ff16613d9c5760405162461bcd60e51b8152600401610b60906151c8565b807f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87613d54565b6000808251604103613df95760208301516040840151606085015160001a613ded87828585613e08565b94509450505050613e01565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613e3f5750600090506003613eec565b8460ff16601b14158015613e5757508460ff16601c14155b15613e685750600090506004613eec565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613ebc573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613ee557600060019250925050613eec565b9150600090505b94509492505050565b6001600160e01b0319811681146111ca57600080fd5b600060208284031215613f1d57600080fd5b8135610db781613ef5565b60005b83811015613f43578181015183820152602001613f2b565b50506000910152565b60008151808452613f64816020860160208601613f28565b601f01601f19169290920160200192915050565b602081526000610db76020830184613f4c565b600060208284031215613f9d57600080fd5b5035919050565b6001600160a01b03811681146111ca57600080fd5b60008060408385031215613fcc57600080fd5b8235613fd781613fa4565b946020939093013593505050565b60008083601f840112613ff757600080fd5b5081356001600160401b0381111561400e57600080fd5b602083019150836020828501011115613e0157600080fd5b60008060008060006080868803121561403e57600080fd5b853561404981613fa4565b9450602086013561405981613fa4565b93506040860135925060608601356001600160401b0381111561407b57600080fd5b61408788828901613fe5565b969995985093965092949392505050565b60008083601f8401126140aa57600080fd5b5081356001600160401b038111156140c157600080fd5b6020830191508360208260051b8501011115613e0157600080fd5b6000806000604084860312156140f157600080fd5b83356001600160401b0381111561410757600080fd5b61411386828701614098565b909790965060209590950135949350505050565b600082825180855260208086019550808260051b84010181860160005b8481101561417257601f19868403018952614160838351613f4c565b98840198925090830190600101614144565b5090979650505050505050565b602081526000610db76020830184614127565b6000806000604084860312156141a757600080fd5b83356001600160401b038111156141bd57600080fd5b61411386828701613fe5565b6000806000604084860312156141de57600080fd5b83356001600160401b03808211156141f557600080fd5b908501906080828803121561420957600080fd5b9093506020850135908082111561421f57600080fd5b5061422c86828701613fe5565b9497909650939450505050565b8035801515811461124557600080fd5b60008060008060008060008060a0898b03121561426557600080fd5b883561427081613fa4565b975060208901356001600160401b038082111561428c57600080fd5b6142988c838d01614098565b909950975060408b01359150808211156142b157600080fd5b6142bd8c838d01614098565b909750955060608b01359150808211156142d657600080fd5b506142e38b828c01614098565b90945092506142f6905060808a01614239565b90509295985092959890939650565b60008060006060848603121561431a57600080fd5b833561432581613fa4565b9250602084013561433581613fa4565b929592945050506040919091013590565b6000806020838503121561435957600080fd5b82356001600160401b0381111561436f57600080fd5b61437b85828601614098565b90969095509350505050565b60008060008060006060868803121561439f57600080fd5b85356001600160401b03808211156143b657600080fd5b6143c289838a01614098565b909750955060208801359150808211156143db57600080fd5b506143e888828901614098565b96999598509660400135949350505050565b6000806040838503121561440d57600080fd5b82356001600160401b0381168114613fd757600080fd5b60008060008060006060868803121561443c57600080fd5b85356001600160401b038082111561445357600080fd5b61445f89838a01613fe5565b9097509550602088013591508082111561447857600080fd5b506143e888828901613fe5565b6000806000806060858703121561449b57600080fd5b8435935060208501356001600160401b038111156144b857600080fd5b6144c487828801613fe5565b9598909750949560400135949350505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715614515576145156144d7565b604052919050565b600082601f83011261452e57600080fd5b81356001600160401b03811115614547576145476144d7565b61455a601f8201601f19166020016144ed565b81815284602083860101111561456f57600080fd5b816020850160208301376000918101602001919091529392505050565b60006020828403121561459e57600080fd5b81356001600160401b038111156145b457600080fd5b610cab8482850161451d565b6000602082840312156145d257600080fd5b8135610db781613fa4565b60006001600160401b038211156145f6576145f66144d7565b5060051b60200190565b600061461361460e846145dd565b6144ed565b8381529050602080820190600585901b84018681111561463257600080fd5b845b8181101561466d5780356001600160401b038111156146535760008081fd5b61465f8982890161451d565b855250928201928201614634565b505050509392505050565b60006020828403121561468a57600080fd5b81356001600160401b038111156146a057600080fd5b8201601f810184136146b157600080fd5b610cab84823560208401614600565b600080604083850312156146d357600080fd5b50508035926020909101359150565b6040815260006146f56040830185613f4c565b8281036020840152610db38185613f4c565b6000806000806060858703121561471d57600080fd5b843561472881613fa4565b93506020850135925060408501356001600160401b0381111561474a57600080fd5b61475687828801613fe5565b95989497509550505050565b60008060008060008060006080888a03121561477d57600080fd5b87356001600160401b038082111561479457600080fd5b6147a08b838c01613fe5565b909950975060208a0135965060408a01359150808211156147c057600080fd5b6147cc8b838c01614098565b909650945060608a01359150808211156147e557600080fd5b506147f28a828b01614098565b989b979a50959850939692959293505050565b6000806020838503121561481857600080fd5b82356001600160401b0381111561482e57600080fd5b61437b85828601613fe5565b6000806040838503121561484d57600080fd5b823561485881613fa4565b9150612e9660208401614239565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156148bb57603f198886030184526148a9858351613f4c565b9450928501929085019060010161488d565b5092979650505050505050565b6040815260006148db6040830185614127565b8281036020840152610db38185614127565b6000806000806080858703121561490357600080fd5b843561490e81613fa4565b9350602085013561491e81613fa4565b92506040850135915060608501356001600160401b0381111561494057600080fd5b61494c8782880161451d565b91505092959194509250565b60008060006040848603121561496d57600080fd5b833561497881613fa4565b925060208401356001600160401b0381111561499357600080fd5b61422c86828701613fe5565b600080604083850312156149b257600080fd5b82356149bd81613fa4565b915060208301356149cd81613fa4565b809150509250929050565b6000806000604084860312156149ed57600080fd5b8335925060208401356001600160401b0381111561499357600080fd5b60008060008060808587031215614a2057600080fd5b8435614a2b81613fa4565b93506020850135614a3b81613fa4565b92506040850135614a4b81613fa4565b91506060850135614a5b81613fa4565b939692955090935050565b600181811c90821680614a7a57607f821691505b6020821081036113ff57634e487b7160e01b600052602260045260246000fd5b600060208284031215614aac57600080fd5b610db782614239565b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112614ae257600080fd5b8301803591506001600160401b03821115614afc57600080fd5b602001915036819003821315613e0157600080fd5b634e487b7160e01b600052601160045260246000fd5b600060018201614b3957614b39614b11565b5060010190565b60208082526027908201527f52656769737472793a2053454e4445525f49535f4e4f545f4d494e54494e475f60408201526626a0a720a3a2a960c91b606082015260800190565b6000610db7368484614600565b60208082526029908201527f52656769737472793a2053454e4445525f49535f4e4f545f415050524f5645446040820152682fa7a92fa7aba722a960b91b606082015260800190565b60208082526022908201527f52656769737472793a20494e53554646494349454e545f5045524d495353494f6040820152614e5360f01b606082015260800190565b60008251614c31818460208701613f28565b9190910192915050565b601f821115610a1357600081815260208120601f850160051c81016020861015614c625750805b601f850160051c820191505b8181101561117057828155600101614c6e565b6001600160401b03831115614c9857614c986144d7565b614cac83614ca68354614a66565b83614c3b565b6000601f841160018114614ce05760008515614cc85750838201355b600019600387901b1c1916600186901b178355610ea0565b600083815260209020601f19861690835b82811015614d115786850135825560209485019460019092019101614cf1565b5086821015614d2e5760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b602081526000610cab602083018486614d40565b600060808236031215614d8f57600080fd5b604051608081016001600160401b038282108183111715614db257614db26144d7565b8160405284359150614dc382613fa4565b81835260208501356020840152604085013560408401526060850135915080821115614dee57600080fd5b50614dfb3682860161451d565b60608301525092915050565b6000614e1561460e846145dd565b80848252602080830192508560051b850136811115614e3357600080fd5b855b81811015614e6e5780356001600160401b03811115614e545760008081fd5b614e6036828a0161451d565b865250938201938201614e35565b50919695505050505050565b60008351614e8c818460208801613f28565b835190830190614ea0818360208801613f28565b01949350505050565b60006020808385031215614ebc57600080fd5b82356001600160401b03811115614ed257600080fd5b8301601f81018513614ee357600080fd5b8035614ef161460e826145dd565b81815260059190911b82018301908381019087831115614f1057600080fd5b928401925b82841015614f2e57833582529284019290840190614f15565b979650505050505050565b8082018082111561094057610940614b11565b6001600160a01b03848116825283166020820152606060408201819052600090610b6990830184613f4c565b634e487b7160e01b600052601260045260246000fd5b600082614f9d57614f9d614f78565b500490565b634e487b7160e01b600052600160045260246000fd5b8181038181111561094057610940614b11565b600081614fda57614fda614b11565b506000190190565b60008351614ff4818460208801613f28565b601760f91b9083019081528351615012816001840160208801613f28565b01600101949350505050565b60006020828403121561503057600080fd5b5051919050565b60006020828403121561504957600080fd5b8151610db781613fa4565b8183823760009101908152919050565b81516001600160401b0381111561507d5761507d6144d7565b6150918161508b8454614a66565b84614c3b565b602080601f8311600181146150c657600084156150ae5750858301515b600019600386901b1c1916600185901b178555611170565b600085815260208120601f198616915b828110156150f5578886015182559484019460019091019084016150d6565b50858210156151135787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60008451615135818460208901613f28565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6000826151c3576151c3614f78565b500690565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b634e487b7160e01b600052602160045260246000fd5b828152604060208201526000610cab6040830184613f4c565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061316590830184613f4c565b60006020828403121561528757600080fd5b8151610db781613ef556febe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a","storage":{}},"0x6ac8f19d1e0f81147cdf2a1e53cb1f4e18417204":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610296575f3560e01c80636352211e11610161578063c93ab3fd116100ca578063e985e9c511610084578063e985e9c5146106c8578063eb8ae530146106db578063ed70554d146106ee578063f242432a1461070d578063f2fde38b14610720578063fd0cd0d914610733575f80fd5b8063c93ab3fd14610647578063cf4088231461065a578063d8c9921a1461066d578063d9a50c1214610680578063da8c229e14610693578063e0dba60f146106b5575f80fd5b8063a22cb4651161011b578063a22cb465146105d5578063a4014982146105e8578063adf4960a146105fb578063b6bcad261461060e578063c475abff14610621578063c658e08614610634575f80fd5b80636352211e146105595780636e5d6ad21461056c578063715018a6146105975780638b4dfa751461059f5780638cf8b41e146105b25780638da5cb5b146105c5575f80fd5b80631f4e1504116102035780633f15457f116101bd5780633f15457f146104b1578063402906fc146104d857806341415eab146105005780634e1273f41461051357806353095467146105335780635d3590d514610546575f80fd5b80631f4e15041461042b57806320c38e2b1461043e57806324c1af44146104515780632b20e397146104645780632eb2c2d61461048b57806333c69ea91461049e575f80fd5b80630e4cd725116102545780630e4cd725146103a05780630e89341c146103b357806314ab9038146103c6578063150b7a02146103d95780631534e177146104055780631896f70a14610418575f80fd5b8062fdd58e1461029a5780630178fe3f146102c057806301ffc9a71461030657806306fdde0314610329578063081812fc14610360578063095ea7b31461038b575b5f80fd5b6102ad6102a8366004614316565b610746565b6040519081526020015b60405180910390f35b6102d36102ce366004614340565b6107f0565b604080516001600160a01b03909416845263ffffffff90921660208401526001600160401b0316908201526060016102b7565b61031961031436600461436c565b61081f565b60405190151581526020016102b7565b6103536040518060400160405280600b81526020016a2730b6b2abb930b83832b960a91b81525081565b6040516102b791906143d4565b61037361036e366004614340565b61085e565b6040516001600160a01b0390911681526020016102b7565b61039e610399366004614316565b6108a0565b005b6103196103ae3660046143e6565b6108e5565b6103536103c1366004614340565b61095e565b61039e6103d436600461442f565b6109cc565b6103ec6103e736600461449d565b610ac0565b6040516001600160e01b031990911681526020016102b7565b61039e61041336600461450a565b610c96565b61039e6104263660046143e6565b610cc0565b600754610373906001600160a01b031681565b61035361044c366004614340565b610d75565b6102ad61045f3660046145f6565b610e0c565b6103737f000000000000000000000000c965345edac823d56812cd20a10316233916a60581565b61039e610499366004614717565b610fe7565b61039e6104ac3660046147bd565b61121a565b6103737f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a981565b6104eb6104e6366004614811565b6113e6565b60405163ffffffff90911681526020016102b7565b61031961050e3660046143e6565b611480565b610526610521366004614832565b6114b8565b6040516102b79190614928565b600554610373906001600160a01b031681565b61039e61055436600461493a565b6115d7565b610373610567366004614340565b611655565b61057f61057a366004614978565b61165f565b6040516001600160401b0390911681526020016102b7565b61039e61178e565b61039e6105ad3660046149aa565b6117a1565b61057f6105c03660046149e9565b6118c0565b5f546001600160a01b0316610373565b61039e6105e3366004614a6b565b611c28565b6102ad6105f6366004614a97565b611cfd565b610319610609366004614b12565b611e38565b61039e61061c36600461450a565b611e5c565b6102ad61062f366004614b33565b61209e565b6102ad610642366004614b53565b6122fd565b61039e610655366004614bc0565b6124bd565b61039e610668366004614c26565b612605565b61039e61067b366004614c5b565b612794565b61031961068e366004614b33565b61285d565b6103196106a136600461450a565b60046020525f908152604090205460ff1681565b61039e6106c3366004614a6b565b612938565b6103196106d6366004614c86565b61299f565b61039e6106e9366004614cb2565b6129cc565b6102ad6106fc366004614340565b60016020525f908152604090205481565b61039e61071b366004614d15565b612d59565b61039e61072e36600461450a565b612e06565b610319610741366004614340565b612e7c565b5f6001600160a01b0383166107b65760405162461bcd60e51b815260206004820152602b60248201527f455243313135353a2062616c616e636520717565727920666f7220746865207a60448201526a65726f206164647265737360a81b60648201526084015b60405180910390fd5b5f6107c083611655565b9050836001600160a01b0316816001600160a01b0316036107e55760019150506107ea565b5f9150505b92915050565b5f8181526001602052604090205460a081901c60c082901c610813838383612f4d565b90959094509092509050565b5f6001600160e01b03198216631b05885b60e31b148061084f57506001600160e01b03198216630a85bd0160e11b145b806107ea57506107ea82612f80565b5f8061086983611655565b90506001600160a01b03811661088157505f92915050565b5f838152600360205260409020546001600160a01b03165b9392505050565b5f6108aa826107f0565b50915050603f1960408216016108d65760405163a2a7201360e01b8152600481018390526024016107ad565b6108e08383612fcf565b505050565b5f8080806108f2866107f0565b925092509250846001600160a01b0316836001600160a01b0316148061091d575061091d838661299f565b8061094157506001600160a01b0385166109368761085e565b6001600160a01b0316145b8015610954575061095282826130de565b155b9695505050505050565b6005546040516303a24d0760e21b8152600481018390526060916001600160a01b031690630e89341c906024015f60405180830381865afa1580156109a5573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526107ea9190810190614d78565b816109d78133611480565b6109f857803360405163168ab55d60e31b81526004016107ad929190614dea565b8260105f610a05836107f0565b5091505063ffffffff8282161615610a335760405163a2a7201360e01b8152600481018490526024016107ad565b604051630295720760e31b8152600481018790526001600160401b03861660248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906314ab9038906044015b5f604051808303815f87803b158015610aa2575f80fd5b505af1158015610ab4573d5f803e3d5ffd5b50505050505050505050565b5f336001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a6051614610b0a5760405163032634a760e31b815260040160405180910390fd5b5f808080610b1a86880188614e01565b83516020850120939750919550935091508890808214610b57576040516331970f3360e21b815260048101829052602481018390526044016107ad565b604051630a3b53db60e21b81526001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906328ed4f6c90610ba59085903090600401614dea565b5f604051808303815f87803b158015610bbc575f80fd5b505af1158015610bce573d5f803e3d5ffd5b5050604051636b727d4360e11b8152600481018d90525f92506276a70091506001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063d6e4fa8690602401602060405180830381865afa158015610c3c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c609190614e64565b610c6a9190614e8f565b9050610c7d87878761ffff16848861310d565b50630a85bd0160e11b9c9b505050505050505050505050565b610c9e613215565b600580546001600160a01b0319166001600160a01b0392909216919091179055565b81610ccb8133611480565b610cec57803360405163168ab55d60e31b81526004016107ad929190614dea565b8260085f610cf9836107f0565b5091505063ffffffff8282161615610d275760405163a2a7201360e01b8152600481018490526024016107ad565b604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a90610a8b9089908990600401614dea565b60066020525f908152604090208054610d8d90614eb6565b80601f0160208091040260200160405190810160405280929190818152602001828054610db990614eb6565b8015610e045780601f10610ddb57610100808354040283529160200191610e04565b820191905f5260205f20905b815481529060010190602001808311610de757829003601f168201915b505050505081565b5f87610e188133611480565b610e3957803360405163168ab55d60e31b81526004016107ad929190614dea565b87516020890120610e4a8a8261326e565b9250610e568a8461329a565b610e6083866133d3565b610e6b8a848b613406565b50610e788a8487876134cd565b9350610e8383613510565b610f33576040516305ef2c7f60e41b8152600481018b9052602481018290523060448201526001600160a01b0388811660648301526001600160401b03881660848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610f0a575f80fd5b505af1158015610f1c573d5f803e3d5ffd5b50505050610f2e8a848b8b89896135c6565b610fda565b6040516305ef2c7f60e41b8152600481018b9052602481018290523060448201526001600160a01b0388811660648301526001600160401b03881660848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610fb6575f80fd5b505af1158015610fc8573d5f803e3d5ffd5b50505050610fda8a848b8b89896135fc565b5050979650505050505050565b81518351146110495760405162461bcd60e51b815260206004820152602860248201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206044820152670dad2e6dac2e8c6d60c31b60648201526084016107ad565b6001600160a01b03841661106f5760405162461bcd60e51b81526004016107ad90614eee565b6001600160a01b03851633148061108b575061108b853361299f565b6110f25760405162461bcd60e51b815260206004820152603260248201527f455243313135353a207472616e736665722063616c6c6572206973206e6f74206044820152711bdddb995c881b9bdc88185c1c1c9bdd995960721b60648201526084016107ad565b5f5b83518110156111ad575f84828151811061111057611110614f33565b602002602001015190505f84838151811061112d5761112d614f33565b602002602001015190505f805f611143856107f0565b9250925092506111548583836136b6565b83600114801561117557508a6001600160a01b0316836001600160a01b0316145b6111915760405162461bcd60e51b81526004016107ad90614f47565b61119d858b848461375d565b50505050508060010190506110f4565b50836001600160a01b0316856001600160a01b0316336001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516111fd929190614f91565b60405180910390a461121333868686868661379d565b5050505050565b5f611225858561326e565b905061123181846133d3565b5f808061123d846107f0565b919450925090506001600160a01b03831615806112ea57506040516302571be360e01b81526004810185905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa1580156112ba573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112de9190614fbe565b6001600160a01b031614155b1561130857604051635374b59960e01b815260040160405180910390fd5b5f806113138a6107f0565b90935091508a905061134f576113298633611480565b61134a57853360405163168ab55d60e31b81526004016107ad929190614dea565b61137a565b6113598a33611480565b61137a57893360405163168ab55d60e31b81526004016107ad929190614dea565b6113858689846138f7565b611390878483613932565b9650620100008416158015906113b457508363ffffffff1688851763ffffffff1614155b156113d55760405163a2a7201360e01b8152600481018790526024016107ad565b96831796610ab486868a868b613977565b5f826113f28133611480565b61141357803360405163168ab55d60e31b81526004016107ad929190614dea565b8360025f611420836107f0565b5091505063ffffffff828216161561144e5760405163a2a7201360e01b8152600481018490526024016107ad565b5f808061145a8a6107f0565b9250925092506114738a84848c61ffff16178485613977565b5098975050505050505050565b5f80808061148d866107f0565b925092509250846001600160a01b0316836001600160a01b031614806109415750610941838661299f565b6060815183511461151d5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b60648201526084016107ad565b5f83516001600160401b0381111561153757611537614525565b604051908082528060200260200182016040528015611560578160200160208202803683370190505b5090505f5b84518110156115cf576115aa85828151811061158357611583614f33565b602002602001015185838151811061159d5761159d614f33565b6020026020010151610746565b8282815181106115bc576115bc614f33565b6020908102919091010152600101611565565b509392505050565b6115df613215565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af115801561162b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061164f9190614fd9565b50505050565b5f6107ea82613a1e565b5f8061166b858561326e565b905061167681613510565b61169357604051635374b59960e01b815260040160405180910390fd5b5f61169e86336108e5565b9050801580156116b557506116b38233611480565b155b156116d757813360405163168ab55d60e31b81526004016107ad929190614dea565b5f80806116e3856107f0565b925092509250831580156116fa5750620400008216155b1561171b5760405163a2a7201360e01b8152600481018690526024016107ad565b5f6117258a6107f0565b92505050611734888383613932565b97506117428685858b613a33565b6040516001600160401b038916815286907ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b1329060200160405180910390a2509598975050505050505050565b611796613215565b61179f5f613a49565b565b6117b85f805160206154fc8339815191528461326e565b6117c28133611480565b6117e357803360405163168ab55d60e31b81526004016107ad929190614dea565b306001600160a01b0384160361181757604051632ca49b0d60e11b81526001600160a01b03841660048201526024016107ad565b6118376118315f805160206154fc8339815191528661326e565b83613a98565b604051632142170760e11b81523060048201526001600160a01b038481166024830152604482018690527f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906342842e0e906064015f604051808303815f87803b1580156118a4575f80fd5b505af11580156118b6573d5f803e3d5ffd5b5050505050505050565b5f8086866040516118d2929190614ff4565b6040519081900381206331a9108f60e11b82526004820181905291505f907f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa15801561193f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119639190614fbe565b90506001600160a01b0381163314801590611a09575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063e985e9c590604401602060405180830381865afa1580156119e3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a079190614fd9565b155b15611a4157611a255f805160206154fc8339815191528361326e565b3360405163168ab55d60e31b81526004016107ad929190614dea565b6040516323b872dd60e01b81526001600160a01b038281166004830152306024830152604482018490527f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906323b872dd906064015f604051808303815f87803b158015611aae575f80fd5b505af1158015611ac0573d5f803e3d5ffd5b5050604051630a3b53db60e21b81526001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a6051692506328ed4f6c9150611b129085903090600401614dea565b5f604051808303815f87803b158015611b29575f80fd5b505af1158015611b3b573d5f803e3d5ffd5b5050604051636b727d4360e11b8152600481018590526276a70092507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b0316915063d6e4fa8690602401602060405180830381865afa158015611ba7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611bcb9190614e64565b611bd59190614e8f565b9250611c1d88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508a9250505061ffff8816868861310d565b505095945050505050565b6001600160a01b0382163303611c925760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084016107ad565b335f8181526002602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b335f9081526004602052604081205460ff16611d2b5760405162461bcd60e51b81526004016107ad90615003565b5f8787604051611d3c929190614ff4565b604051908190038120633f2891eb60e21b8252600482018190523060248301526044820187905291507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b03169063fca247ac906064016020604051808303815f875af1158015611db5573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611dd99190614e64565b9150611e2d88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508a9250505061ffff8616611e276276a70087614e8f565b8861310d565b509695505050505050565b5f80611e43846107f0565b50841663ffffffff908116908516149250505092915050565b611e64613215565b6007546001600160a01b031615611f785760075460405163a22cb46560e01b81526001600160a01b0391821660048201525f60248201527f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063a22cb465906044015f604051808303815f87803b158015611ee0575f80fd5b505af1158015611ef2573d5f803e3d5ffd5b505060075460405163a22cb46560e01b81526001600160a01b0391821660048201525f60248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9909116925063a22cb46591506044015f604051808303815f87803b158015611f61575f80fd5b505af1158015611f73573d5f803e3d5ffd5b505050505b600780546001600160a01b0319166001600160a01b0383169081179091551561209b5760075460405163a22cb46560e01b81526001600160a01b039182166004820152600160248201527f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063a22cb465906044015f604051808303815f87803b158015612007575f80fd5b505af1158015612019573d5f803e3d5ffd5b505060075460405163a22cb46560e01b81526001600160a01b039182166004820152600160248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9909116925063a22cb46591506044015f604051808303815f87803b158015612089575f80fd5b505af1158015611213573d5f803e3d5ffd5b50565b335f9081526004602052604081205460ff166120cc5760405162461bcd60e51b81526004016107ad90615003565b5f6120e45f805160206154fc8339815191528561326e565b60405163c475abff60e01b815260048101869052602481018590529091505f906001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063c475abff906044016020604051808303815f875af1158015612154573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906121789190614e64565b6040516331a9108f60e11b8152600481018790529091507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa9250505080156121fc575060408051601f3d908101601f191682019092526121f991810190614fbe565b60015b6122095791506107ea9050565b6001600160a01b038116301415806122b157506040516302571be360e01b81526004810184905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015612281573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906122a59190614fbe565b6001600160a01b031614155b156122c0575091506107ea9050565b505f6122cf6276a70083614e8f565b5f8481526001602052604090205490915060a081901c6122f185838386613a33565b50919695505050505050565b5f866123098133611480565b61232a57803360405163168ab55d60e31b81526004016107ad929190614dea565b5f878760405161233b929190614ff4565b6040518091039020905061234f898261326e565b925061235b898461329a565b61236583866133d3565b5f6123a68a858b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061340692505050565b90506123b48a8588886134cd565b94506123bf84613510565b61246b576040516306ab592360e01b8152600481018b9052602481018390523060448201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906306ab5923906064016020604051808303815f875af1158015612434573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906124589190614e64565b506124668482898989613b83565b6124b0565b6124b08a858b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508d92508c91508b90506135fc565b5050509695505050505050565b5f6125005f86868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613bc59050565b6007549091506001600160a01b031661252c5760405163093075b560e21b815260040160405180910390fd5b6125368133611480565b61255757803360405163168ab55d60e31b81526004016107ad929190614dea565b5f8080612563846107f0565b919450925090505f6125748561085e565b905061257f85613c81565b60075f9054906101000a90046001600160a01b03166001600160a01b0316639198c2768a8a878787878e8e6040518963ffffffff1660e01b81526004016125cd989796959493929190615073565b5f604051808303815f87803b1580156125e4575f80fd5b505af11580156125f6573d5f803e3d5ffd5b50505050505050505050505050565b836126108133611480565b61263157803360405163168ab55d60e31b81526004016107ad929190614dea565b84601c5f61263e836107f0565b5091505063ffffffff828216161561266c5760405163a2a7201360e01b8152600481018490526024016107ad565b60405163cf40882360e01b8152600481018990523060248201526001600160a01b0387811660448301526001600160401b03871660648301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063cf408823906084015f604051808303815f87803b1580156126e8575f80fd5b505af11580156126fa573d5f803e3d5ffd5b5050506001600160a01b038816905061275f575f612717896107f0565b509150506201ffff196202000082160161274f57604051632ca49b0d60e11b81526001600160a01b03891660048201526024016107ad565b612759895f613a98565b506118b6565b5f61276989611655565b905061278981898b5f1c600160405180602001604052805f815250613d1e565b505050505050505050565b61279e838361326e565b6127a88133611480565b6127c957803360405163168ab55d60e31b81526004016107ad929190614dea565b7f6c32148f748aba23997146d7fe89e962e3cc30271290fb96f5f4337756c03b5284016128095760405163615a470360e01b815260040160405180910390fd5b6001600160a01b038216158061282757506001600160a01b03821630145b1561285057604051632ca49b0d60e11b81526001600160a01b03831660048201526024016107ad565b61164f611831858561326e565b5f80612869848461326e565b90505f61287582613510565b90505f805160206154fc83398151915285146128945791506107ea9050565b6040516331a9108f60e11b8152600481018590527f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa925050508015612915575060408051601f3d908101601f1916820190925261291291810190614fbe565b60015b612923575f925050506107ea565b6001600160a01b0316301492506107ea915050565b612940613215565b6001600160a01b0382165f81815260046020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf8791015b60405180910390a25050565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205460ff1690565b5f80612a105f87878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613dfe9050565b915091505f612a578288888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613bc59050565b90505f612a64828561326e565b5f818152600660205260409020909150612a7f888a8361511e565b507f6c32148f748aba23997146d7fe89e962e3cc30271290fb96f5f4337756c03b528201612ac05760405163615a470360e01b815260040160405180910390fd5b6040516302571be360e01b8152600481018290525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa158015612b25573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612b499190614fbe565b90506001600160a01b0381163314801590612bef575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063e985e9c590604401602060405180830381865afa158015612bc9573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612bed9190614fd9565b155b15612c1157813360405163168ab55d60e31b81526004016107ad929190614dea565b6001600160a01b03861615612c9c57604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a90612c6e9085908a90600401614dea565b5f604051808303815f87803b158015612c85575f80fd5b505af1158015612c97573d5f803e3d5ffd5b505050505b604051635b0fc9c360e01b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635b0fc9c390612cea9085903090600401614dea565b5f604051808303815f87803b158015612d01575f80fd5b505af1158015612d13573d5f803e3d5ffd5b50505050612789828a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201829052508d93509150819050613b83565b6001600160a01b038416612d7f5760405162461bcd60e51b81526004016107ad90614eee565b6001600160a01b038516331480612d9b5750612d9b853361299f565b612df95760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2063616c6c6572206973206e6f74206f776e6572206e6f7260448201526808185c1c1c9bdd995960ba1b60648201526084016107ad565b6112138585858585613d1e565b612e0e613215565b6001600160a01b038116612e735760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107ad565b61209b81613a49565b5f8181526006602052604081208054829190612e9790614eb6565b80601f0160208091040260200160405190810160405280929190818152602001828054612ec390614eb6565b8015612f0e5780601f10612ee557610100808354040283529160200191612f0e565b820191905f5260205f20905b815481529060010190602001808311612ef157829003601f168201915b5050505050905080515f03612f2557505f92915050565b5f80612f318382613dfe565b90925090505f612f418483613bc5565b9050610954818461285d565b5f8042836001600160401b03161015612f775761ffff1962010000851601612f73575f94505b5f93505b50929391925050565b5f6001600160e01b03198216636cdb3d1360e11b1480612fb057506001600160e01b031982166303a24d0760e21b145b806107ea57506301ffc9a760e01b6001600160e01b03198316146107ea565b5f612fd982611655565b9050806001600160a01b0316836001600160a01b0316036130465760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084016107ad565b336001600160a01b03821614806130625750613062813361299f565b6130d45760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016107ad565b6108e08383613eb2565b5f620200008381161480156108995750426130fc6276a700846151d7565b6001600160401b0316109392505050565b845160208601205f61312c5f805160206154fc8339815191528361326e565b90505f61315488604051806040016040528060058152602001626cae8d60e31b815250613f1f565b5f83815260066020526040902090915061316e82826151f7565b50613181828289620300008a1789613b83565b6001600160a01b038416156118b657604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a906131de9085908890600401614dea565b5f604051808303815f87803b1580156131f5575f80fd5b505af1158015613207573d5f803e3d5ffd5b505050505050505050505050565b5f546001600160a01b0316331461179f5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107ad565b604080516020808201949094528082019290925280518083038201815260609092019052805191012090565b5f80806132a6846107f0565b91945092509050426001600160401b0382161080801561336657506001600160a01b038416158061336657506040516302571be360e01b8152600481018690525f906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015613337573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061335b9190614fbe565b6001600160a01b0316145b156133a4575f613375876107f0565b50915050602081161561339e5760405163a2a7201360e01b8152600481018790526024016107ad565b506133cb565b620100008316156133cb5760405163a2a7201360e01b8152600481018690526024016107ad565b505050505050565b63fffdffff81811763ffffffff16146134025760405163a2a7201360e01b8152600481018390526024016107ad565b5050565b60605f6134aa8360065f8881526020019081526020015f20805461342990614eb6565b80601f016020809104026020016040519081016040528092919081815260200182805461345590614eb6565b80156134a05780601f10613477576101008083540402835291602001916134a0565b820191905f5260205f20905b81548152906001019060200180831161348357829003601f168201915b5050505050613f1f565b5f8581526006602052604090209091506134c482826151f7565b50949350505050565b5f806134d8856107f0565b925050505f806134e9885f1c6107f0565b92509250506134f98787846138f7565b613504858483613932565b98975050505050505050565b5f8061351b83611655565b6001600160a01b0316141580156107ea57506040516302571be360e01b81526004810183905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015613592573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906135b69190614fbe565b6001600160a01b03161492915050565b5f86815260066020526040812080546135e491879161342990614eb6565b90506135f38682868686613b83565b50505050505050565b5f8080613608886107f0565b9250925092505f61362f8860065f8d81526020019081526020015f20805461342990614eb6565b5f8a815260066020526040902080549192509061364b90614eb6565b90505f0361366c575f89815260066020526040902061366a82826151f7565b505b61367b89858886178589613977565b6001600160a01b03871661369857613693895f613a98565b610ab4565b610ab484888b5f1c600160405180602001604052805f815250613d1e565b6201ffff19620200008316016136d6576136d36276a700826151d7565b90505b42816001600160401b0316101561370f576201000082161561370a5760405162461bcd60e51b81526004016107ad90614f47565b613734565b60048216156137345760405163a2a7201360e01b8152600481018490526024016107ad565b604082165f036108e05750505f90815260036020526040902080546001600160a01b0319169055565b60c0816001600160401b0316901b60a08363ffffffff16901b846001600160a01b0316171760015f8681526020019081526020015f208190555050505050565b6001600160a01b0384163b156133cb5760405163bc197c8160e01b81526001600160a01b0385169063bc197c81906137e190899089908890889088906004016152b2565b6020604051808303815f875af192505050801561381b575060408051601f3d908101601f1916820190925261381891810190615303565b60015b6138c75761382761531e565b806308c379a003613860575061383b615337565b806138465750613862565b8060405162461bcd60e51b81526004016107ad91906143d4565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e20455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b60648201526084016107ad565b6001600160e01b0319811663bc197c8160e01b146135f35760405162461bcd60e51b81526004016107ad906153bf565b63ffff000082161580159060018316159082906139115750805b156112135760405163a2a7201360e01b8152600481018690526024016107ad565b5f816001600160401b0316846001600160401b03161115613951578193505b826001600160401b0316846001600160401b0316101561396f578293505b509192915050565b61398385858584613a33565b60405163ffffffff8416815285907f39873f00c80f4f94b7bd1594aebcf650f003545b74824d57ddf4939e3ff3a34b9060200160405180910390a2816001600160401b0316816001600160401b03161115611213576040516001600160401b038216815285907ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b132906020015b60405180910390a25050505050565b5f80613a29836107f0565b5090949350505050565b613a3d8483613f96565b61164f8484848461375d565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b613aa3826001611e38565b15613ac45760405163a2a7201360e01b8152600481018390526024016107ad565b613acd82613c81565b604051635b0fc9c360e01b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635b0fc9c390613b1b9085908590600401614dea565b5f604051808303815f87803b158015613b32575f80fd5b505af1158015613b44573d5f803e3d5ffd5b50506040516001600160a01b03841681528492507fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c49150602001612993565b613b8f85848484613fcf565b847f8ce7013e8abebc55c3890a68f5a27c67c3f7efa64e584de5fb22363c606fd34085858585604051613a0f9493929190615407565b5f805f613bd28585613dfe565b909250905081613c435760018551613bea919061544d565b8414613c385760405162461bcd60e51b815260206004820152601d60248201527f6e616d65686173683a204a756e6b20617420656e64206f66206e616d6500000060448201526064016107ad565b505f91506107ea9050565b613c4d8582613bc5565b6040805160208101929092528101839052606001604051602081830303815290604052805190602001209250505092915050565b5f8181526001602052604090205460a081901c60c082901c613ca4838383612f4d565b5f86815260036020526040812080546001600160a01b0319169055909350613cd091508590848461375d565b60408051858152600160208201525f916001600160a01b0386169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b5f805f613d2a866107f0565b925092509250613d3b8683836136b6565b846001148015613d5c5750876001600160a01b0316836001600160a01b0316145b613d785760405162461bcd60e51b81526004016107ad90614f47565b866001600160a01b0316836001600160a01b031603613d9957505050611213565b613da58688848461375d565b60408051878152602081018790526001600160a01b03808a1692908b169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46118b6338989898989614041565b5f8083518310613e505760405162461bcd60e51b815260206004820152601e60248201527f726561644c6162656c3a20496e646578206f7574206f6620626f756e6473000060448201526064016107ad565b5f848481518110613e6357613e63614f33565b016020015160f81c90508015613e8f57613e8885613e82866001615460565b836140fb565b9250613e93565b5f92505b613e9d8185615460565b613ea8906001615460565b9150509250929050565b5f81815260036020526040902080546001600160a01b0319166001600160a01b0384169081179091558190613ee682611655565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6060600183511015613f4457604051631406d65b60e11b815260040160405180910390fd5b60ff83511115613f69578260405163e3ba295f60e01b81526004016107ad91906143d4565b82518383604051602001613f7f93929190615473565b604051602081830303815290604052905092915050565b61ffff811615801590613fae57506201000181811614155b156134025760405163a2a7201360e01b8152600481018390526024016107ad565b613fd98483613f96565b5f848152600160205260409020546001600160a01b0381161561403557613fff85613c81565b6040515f815285907fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c49060200160405180910390a25b6112138585858561411d565b6001600160a01b0384163b156133cb5760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e619061408590899089908890889088906004016154b7565b6020604051808303815f875af19250505080156140bf575060408051601f3d908101601f191682019092526140bc91810190615303565b60015b6140cb5761382761531e565b6001600160e01b0319811663f23a6e6160e01b146135f35760405162461bcd60e51b81526004016107ad906153bf565b82515f906141098385615460565b1115614113575f80fd5b5091016020012090565b835f808061412a846107f0565b9194509250905063ffff000082166001600160401b038087169083161115614150578195505b42826001600160401b03161061416557958617955b6001600160a01b038416156141bc5760405162461bcd60e51b815260206004820152601f60248201527f455243313135353a206d696e74206f66206578697374696e6720746f6b656e0060448201526064016107ad565b6001600160a01b03881661421c5760405162461bcd60e51b815260206004820152602160248201527f455243313135353a206d696e7420746f20746865207a65726f206164647265736044820152607360f81b60648201526084016107ad565b306001600160a01b038916036142915760405162461bcd60e51b815260206004820152603460248201527f455243313135353a206e65774f776e65722063616e6e6f74206265207468652060448201527313985b5955dc985c1c195c8818dbdb9d1c9858dd60621b60648201526084016107ad565b61429d8589898961375d565b60408051868152600160208201526001600160a01b038a16915f9133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4612789335f8a88600160405180602001604052805f815250614041565b6001600160a01b038116811461209b575f80fd5b5f8060408385031215614327575f80fd5b823561433281614302565b946020939093013593505050565b5f60208284031215614350575f80fd5b5035919050565b6001600160e01b03198116811461209b575f80fd5b5f6020828403121561437c575f80fd5b813561089981614357565b5f5b838110156143a1578181015183820152602001614389565b50505f910152565b5f81518084526143c0816020860160208601614387565b601f01601f19169290920160200192915050565b602081525f61089960208301846143a9565b5f80604083850312156143f7575f80fd5b82359150602083013561440981614302565b809150509250929050565b80356001600160401b038116811461442a575f80fd5b919050565b5f8060408385031215614440575f80fd5b8235915061445060208401614414565b90509250929050565b5f8083601f840112614469575f80fd5b5081356001600160401b0381111561447f575f80fd5b602083019150836020828501011115614496575f80fd5b9250929050565b5f805f805f608086880312156144b1575f80fd5b85356144bc81614302565b945060208601356144cc81614302565b93506040860135925060608601356001600160401b038111156144ed575f80fd5b6144f988828901614459565b969995985093965092949392505050565b5f6020828403121561451a575f80fd5b813561089981614302565b634e487b7160e01b5f52604160045260245ffd5b601f8201601f191681016001600160401b038111828210171561455e5761455e614525565b6040525050565b5f6001600160401b0382111561457d5761457d614525565b50601f01601f191660200190565b5f82601f83011261459a575f80fd5b81356145a581614565565b6040516145b28282614539565b8281528560208487010111156145c6575f80fd5b826020860160208301375f92810160200192909252509392505050565b803563ffffffff8116811461442a575f80fd5b5f805f805f805f60e0888a03121561460c575f80fd5b8735965060208801356001600160401b03811115614628575f80fd5b6146348a828b0161458b565b965050604088013561464581614302565b9450606088013561465581614302565b935061466360808901614414565b925061467160a089016145e3565b915061467f60c08901614414565b905092959891949750929550565b5f6001600160401b038211156146a5576146a5614525565b5060051b60200190565b5f82601f8301126146be575f80fd5b813560206146cb8261468d565b6040516146d88282614539565b80915083815260208101915060208460051b8701019350868411156146fb575f80fd5b602086015b84811015611e2d5780358352918301918301614700565b5f805f805f60a0868803121561472b575f80fd5b853561473681614302565b9450602086013561474681614302565b935060408601356001600160401b0380821115614761575f80fd5b61476d89838a016146af565b94506060880135915080821115614782575f80fd5b61478e89838a016146af565b935060808801359150808211156147a3575f80fd5b506147b08882890161458b565b9150509295509295909350565b5f805f80608085870312156147d0575f80fd5b84359350602085013592506147e7604086016145e3565b91506147f560608601614414565b905092959194509250565b803561ffff8116811461442a575f80fd5b5f8060408385031215614822575f80fd5b8235915061445060208401614800565b5f8060408385031215614843575f80fd5b82356001600160401b0380821115614859575f80fd5b818501915085601f83011261486c575f80fd5b813560206148798261468d565b6040516148868282614539565b83815260059390931b85018201928281019150898411156148a5575f80fd5b948201945b838610156148cc5785356148bd81614302565b825294820194908201906148aa565b965050860135925050808211156148e1575f80fd5b50613ea8858286016146af565b5f815180845260208085019450602084015f5b8381101561491d57815187529582019590820190600101614901565b509495945050505050565b602081525f61089960208301846148ee565b5f805f6060848603121561494c575f80fd5b833561495781614302565b9250602084013561496781614302565b929592945050506040919091013590565b5f805f6060848603121561498a575f80fd5b83359250602084013591506149a160408501614414565b90509250925092565b5f805f606084860312156149bc575f80fd5b8335925060208401356149ce81614302565b915060408401356149de81614302565b809150509250925092565b5f805f805f608086880312156149fd575f80fd5b85356001600160401b03811115614a12575f80fd5b614a1e88828901614459565b9096509450506020860135614a3281614302565b9250614a4060408701614800565b91506060860135614a5081614302565b809150509295509295909350565b801515811461209b575f80fd5b5f8060408385031215614a7c575f80fd5b8235614a8781614302565b9150602083013561440981614a5e565b5f805f805f8060a08789031215614aac575f80fd5b86356001600160401b03811115614ac1575f80fd5b614acd89828a01614459565b9097509550506020870135614ae181614302565b9350604087013592506060870135614af881614302565b9150614b0660808801614800565b90509295509295509295565b5f8060408385031215614b23575f80fd5b82359150614450602084016145e3565b5f8060408385031215614b44575f80fd5b50508035926020909101359150565b5f805f805f8060a08789031215614b68575f80fd5b8635955060208701356001600160401b03811115614b84575f80fd5b614b9089828a01614459565b9096509450506040870135614ba481614302565b9250614bb2606088016145e3565b9150614b0660808801614414565b5f805f8060408587031215614bd3575f80fd5b84356001600160401b0380821115614be9575f80fd5b614bf588838901614459565b90965094506020870135915080821115614c0d575f80fd5b50614c1a87828801614459565b95989497509550505050565b5f805f8060808587031215614c39575f80fd5b843593506020850135614c4b81614302565b925060408501356147e781614302565b5f805f60608486031215614c6d575f80fd5b833592506020840135915060408401356149de81614302565b5f8060408385031215614c97575f80fd5b8235614ca281614302565b9150602083013561440981614302565b5f805f8060608587031215614cc5575f80fd5b84356001600160401b03811115614cda575f80fd5b614ce687828801614459565b9095509350506020850135614cfa81614302565b91506040850135614d0a81614302565b939692955090935050565b5f805f805f60a08688031215614d29575f80fd5b8535614d3481614302565b94506020860135614d4481614302565b9350604086013592506060860135915060808601356001600160401b03811115614d6c575f80fd5b6147b08882890161458b565b5f60208284031215614d88575f80fd5b81516001600160401b03811115614d9d575f80fd5b8201601f81018413614dad575f80fd5b8051614db881614565565b604051614dc58282614539565b828152866020848601011115614dd9575f80fd5b610954836020830160208701614387565b9182526001600160a01b0316602082015260400190565b5f805f8060808587031215614e14575f80fd5b84356001600160401b03811115614e29575f80fd5b614e358782880161458b565b9450506020850135614e4681614302565b9250614e5460408601614800565b91506060850135614d0a81614302565b5f60208284031215614e74575f80fd5b5051919050565b634e487b7160e01b5f52601160045260245ffd5b6001600160401b03818116838216019080821115614eaf57614eaf614e7b565b5092915050565b600181811c90821680614eca57607f821691505b602082108103614ee857634e487b7160e01b5f52602260045260245ffd5b50919050565b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b634e487b7160e01b5f52603260045260245ffd5b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b604081525f614fa360408301856148ee565b8281036020840152614fb581856148ee565b95945050505050565b5f60208284031215614fce575f80fd5b815161089981614302565b5f60208284031215614fe9575f80fd5b815161089981614a5e565b818382375f9101908152919050565b60208082526028908201527f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f604082015267373a3937b63632b960c11b606082015260800190565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b60c081525f61508660c083018a8c61504b565b6001600160a01b03898116602085015263ffffffff891660408501526001600160401b03881660608501528616608084015282810360a08401526150cb81858761504b565b9b9a5050505050505050505050565b601f8211156108e057805f5260205f20601f840160051c810160208510156150ff5750805b601f840160051c820191505b81811015611213575f815560010161510b565b6001600160401b0383111561513557615135614525565b615149836151438354614eb6565b836150da565b5f601f84116001811461517a575f85156151635750838201355b5f19600387901b1c1916600186901b178355611213565b5f83815260208120601f198716915b828110156151a95786850135825560209485019460019092019101615189565b50868210156151c5575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b6001600160401b03828116828216039080821115614eaf57614eaf614e7b565b81516001600160401b0381111561521057615210614525565b6152248161521e8454614eb6565b846150da565b602080601f831160018114615257575f84156152405750858301515b5f19600386901b1c1916600185901b1785556133cb565b5f85815260208120601f198616915b8281101561528557888601518255948401946001909101908401615266565b50858210156152a257878501515f19600388901b60f8161c191681555b5050505050600190811b01905550565b6001600160a01b0386811682528516602082015260a0604082018190525f906152dd908301866148ee565b82810360608401526152ef81866148ee565b9050828103608084015261350481856143a9565b5f60208284031215615313575f80fd5b815161089981614357565b5f60033d11156153345760045f803e505f5160e01c5b90565b5f60443d10156153445790565b6040516003193d81016004833e81513d6001600160401b03816024840111818411171561537357505050505090565b828501915081518181111561538b5750505050505090565b843d87010160208285010111156153a55750505050505090565b6153b460208286010187614539565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b608081525f61541960808301876143a9565b6001600160a01b039590951660208301525063ffffffff9290921660408301526001600160401b0316606090910152919050565b818103818111156107ea576107ea614e7b565b808201808211156107ea576107ea614e7b565b60ff60f81b8460f81b1681525f8351615493816001850160208801614387565b8351908301906154aa816001840160208801614387565b0160010195945050505050565b6001600160a01b03868116825285166020820152604081018490526060810183905260a0608082018190525f906154f0908301846143a9565b97965050505050505056fe93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4aea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2a68925cf5169f28586095d5b5b9933b3008f4c793a48be4f59b8b2bc62aa60a":"0x1","0x54cdd369e4e8a8515e52ca72ec816c2101831ad1f18bf44102ed171459c9b4f8":"0x2","0xa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb49":"0xffffffffffffffff000100010000000000000000000000000000000000000000","0xafa26c20e8b3d9a2853d642cfe1021dae26242ffedfac91c97aab212c1a4b93b":"0xffffffffffffffff000100010000000000000000000000000000000000000000","0xef5b11c47ebee44618abc22110e10e3b408ea5e799056d2b38461aa7b97c5a97":"0x1","0xfb9e8e321b8a5ec48f12a7b41f22c6e595d761285c9eb19d8dda7c99edf1b54f":"0x36574680000000000000000000000000000000000000000000000000000000a"}},"0x6e1eb616c7d69491f9a880f815ff5574768cba20":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b506004361061007a575f3560e01c806314ab90381161005857806314ab90381461010357806316a25cbd146101165780631896f70a146101625780635b0fc9c314610175575f80fd5b80630178b8bf1461007e57806302571be3146100c657806306ab5923146100ee575b5f80fd5b6100a961008c366004610403565b5f908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100a96100d4366004610403565b5f908152602081905260409020546001600160a01b031690565b6101016100fc366004610435565b610188565b005b610101610111366004610467565b610242565b610149610124366004610403565b5f90815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100bd565b6101016101703660046104a1565b6102e2565b6101016101833660046104a1565b610374565b5f8381526020819052604090205483906001600160a01b031633146101ab575f80fd5b60408051602080820187905281830186905282518083038401815260608301808552815191909201206001600160a01b0386169091529151859187917fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829181900360800190a35f90815260208190526040902080546001600160a01b0319166001600160a01b039390931692909217909155505050565b5f8281526020819052604090205482906001600160a01b03163314610265575f80fd5b60405167ffffffffffffffff8316815283907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a2505f91825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b5f8281526020819052604090205482906001600160a01b03163314610305575f80fd5b6040516001600160a01b038316815283907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a2505f9182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b5f8281526020819052604090205482906001600160a01b03163314610397575f80fd5b6040516001600160a01b038316815283907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a2505f9182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b5f60208284031215610413575f80fd5b5035919050565b80356001600160a01b0381168114610430575f80fd5b919050565b5f805f60608486031215610447575f80fd5b833592506020840135915061045e6040850161041a565b90509250925092565b5f8060408385031215610478575f80fd5b82359150602083013567ffffffffffffffff81168114610496575f80fd5b809150509250929050565b5f80604083850312156104b2575f80fd5b823591506104c26020840161041a565b9050925092905056fea164736f6c6343000818000a","storage":{"0x859ecef2e168dc10231b000bd53493b42bc9d944cac29d94582c1e1d43592131":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x7bb6cd9be29fab783c0b494a06fed8b2e2596b7a":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100ea5760003560e01c80636debcb8d1161008c578063b34f33c511610066578063b34f33c514610741578063d0778d6c14610814578063ef2c3088146108f2578063f5090c1e14610980576100ea565b80636debcb8d146105ca5780636fab95b3146106585780637b1039991461071d576100ea565b8063511f1112116100c8578063511f1112146103c557806361603dd91461044857806368b6154f146104bd5780636ccbae5f1461059b576100ea565b806307eca395146100ef578063280d9b051461021457806330135293146102f2575b600080fd5b610212600480360360a081101561010557600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561013457600080fd5b82018360208201111561014657600080fd5b803590602001918460018302840111600160201b8311171561016757600080fd5b919390929091602081019035600160201b81111561018457600080fd5b82018360208201111561019657600080fd5b803590602001918460018302840111600160201b831117156101b757600080fd5b919390929091602081019035600160201b8111156101d457600080fd5b8201836020820111156101e657600080fd5b803590602001918460018302840111600160201b8311171561020757600080fd5b509092509050610aae565b005b610212600480360360a081101561022a57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561026457600080fd5b82018360208201111561027657600080fd5b803590602001918460018302840111600160201b8311171561029757600080fd5b919390929091602081019035600160201b8111156102b457600080fd5b8201836020820111156102c657600080fd5b803590602001918460018302840111600160201b831117156102e757600080fd5b509092509050610c92565b6102126004803603608081101561030857600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561033757600080fd5b82018360208201111561034957600080fd5b803590602001918460018302840111600160201b8311171561036a57600080fd5b919390929091602081019035600160201b81111561038757600080fd5b82018360208201111561039957600080fd5b803590602001918460018302840111600160201b831117156103ba57600080fd5b509092509050610e3d565b610212600480360360608110156103db57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561040a57600080fd5b82018360208201111561041c57600080fd5b803590602001918460018302840111600160201b8311171561043d57600080fd5b509092509050610fcc565b6102126004803603604081101561045e57600080fd5b81359190810190604081016020820135600160201b81111561047f57600080fd5b82018360208201111561049157600080fd5b803590602001918460018302840111600160201b831117156104b257600080fd5b5090925090506110c9565b610212600480360360a08110156104d357600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561050d57600080fd5b82018360208201111561051f57600080fd5b803590602001918460018302840111600160201b8311171561054057600080fd5b919390929091602081019035600160201b81111561055d57600080fd5b82018360208201111561056f57600080fd5b803590602001918460018302840111600160201b8311171561059057600080fd5b5090925090506111ae565b6105b8600480360360208110156105b157600080fd5b50356113a8565b60408051918252519081900360200190f35b610212600480360360808110156105e057600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561061a57600080fd5b82018360208201111561062c57600080fd5b803590602001918460018302840111600160201b8311171561064d57600080fd5b5090925090506113ba565b6102126004803603606081101561066e57600080fd5b81359190810190604081016020820135600160201b81111561068f57600080fd5b8201836020820111156106a157600080fd5b803590602001918460018302840111600160201b831117156106c257600080fd5b919390929091602081019035600160201b8111156106df57600080fd5b8201836020820111156106f157600080fd5b803590602001918460018302840111600160201b8311171561071257600080fd5b5090925090506114d4565b610725611675565b604080516001600160a01b039092168252519081900360200190f35b6102126004803603608081101561075757600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561078657600080fd5b82018360208201111561079857600080fd5b803590602001918460018302840111600160201b831117156107b957600080fd5b919390929091602081019035600160201b8111156107d657600080fd5b8201836020820111156107e857600080fd5b803590602001918460018302840111600160201b8311171561080957600080fd5b509092509050611684565b610212600480360360a081101561082a57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561086457600080fd5b82018360208201111561087657600080fd5b803590602001918460018302840111600160201b8311171561089757600080fd5b919390929091602081019035600160201b8111156108b457600080fd5b8201836020820111156108c657600080fd5b803590602001918460018302840111600160201b831117156108e757600080fd5b5090925090506117de565b6102126004803603608081101561090857600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561094257600080fd5b82018360208201111561095457600080fd5b803590602001918460018302840111600160201b8311171561097557600080fd5b5090925090506119e4565b610212600480360360c081101561099657600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156109d057600080fd5b8201836020820111156109e257600080fd5b803590602001918460018302840111600160201b83111715610a0357600080fd5b919390929091602081019035600160201b811115610a2057600080fd5b820183602082011115610a3257600080fd5b803590602001918460018302840111600160201b83111715610a5357600080fd5b919390929091602081019035600160201b811115610a7057600080fd5b820183602082011115610a8257600080fd5b803590602001918460018302840111600160201b83111715610aa357600080fd5b509092509050611ad3565b610bb163ce9fb82b89898989898960405160240180876001600160a01b03166001600160a01b0316815260200186815260200180602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f820116905080830192505050985050505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208884848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b600154604051630119f80560e21b81526001600160a01b038a811660048301908152602483018b9052608060448401908152608484018a90529190931692630467e014928c928c928c928c928c928c92909190606481019060a401878780828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f82011690508083019250505098505050505050505050600060405180830381600087803b158015610c7057600080fd5b505af1158015610c84573d6000803e3d6000fd5b505050505050505050505050565b610d8363b88d4fde888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040516315eab15d60e21b81526001600160a01b03898116600483019081528982166024840152604483018990526080606484019081526084840188905291909316926357aac574928b928b928b928b928b929160a401848480828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b158015610e1c57600080fd5b505af1158015610e30573d6000803e3d6000fd5b5050505050505050505050565b610f09637c69eae28787878760405160240180856001600160a01b03166001600160a01b0316815260200184815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09d909d1b9c909c178c529351909a208a51918d01849004840282018401909a528b81528f985096508b95508a94508493505085019050838280828437600092019190915250611d5492505050565b600154604051630119f80560e21b81526001600160a01b038881166004830190815260248301899052608060448401908152608484018890529190931692630467e014928a928a928a928a9290606481019060a401858580828437600081840152601f19601f8201169050808301925050508381038252600081526020016020019650505050505050600060405180830381600087803b158015610fac57600080fd5b505af1158015610fc0573d6000803e3d6000fd5b50505050505050505050565b604080516001600160a01b038616602482015260448082018690528251808303909101815260649091018252602081810180516001600160e01b0316632392c18960e01b17815291519091208251601f85018390048302810183019093528383526110569290918691908690869081908401838280828437600092019190915250611d5492505050565b60015460408051631292e83560e11b81526001600160a01b0387811660048301526024820187905291519190921691632525d06a91604480830192600092919082900301818387803b1580156110ab57600080fd5b505af11580156110bf573d6000803e3d6000fd5b5050505050505050565b6040805160248082018690528251808303909101815260449091018252602081810180516001600160e01b0316630852cd8d60e31b17815291519091208251601f85018390048302810183019093528383526111449290918691908690869081908401838280828437600092019190915250611d5492505050565b6001546040805163e67ca8a360e01b81526004810186905290516001600160a01b039092169163e67ca8a39160248082019260009290919082900301818387803b15801561119157600080fd5b505af11580156111a5573d6000803e3d6000fd5b50505050505050565b61129f639e5be9a5888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b03909316926302759c37928b928b9286926368b62d32928d928d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561132757600080fd5b505afa15801561133b573d6000803e3d6000fd5b505050506040513d602081101561135157600080fd5b5051604080516001600160e01b031960e087901b1681526001600160a01b03948516600482015292909316602483015260448201529051606480830192600092919082900301818387803b158015610e1c57600080fd5b60009081526020819052604090205490565b604080516001600160a01b0380881660248301528616604482015260648082018690528251808303909101815260849091018252602081810180516001600160e01b0316632142170760e11b17815291519091208251601f850183900483028101830190935283835261144c9290918691908690869081908401838280828437600092019190915250611d5492505050565b600154604080516315eab15d60e21b81526001600160a01b0388811660048301528781166024830152604482018790526080606483015260006084830181905292519316926357aac5749260c48084019391929182900301818387803b1580156114b557600080fd5b505af11580156114c9573d6000803e3d6000fd5b505050505050505050565b611585635cbe11128686866040516024018084815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09c909c1b9b909b178b5293519099208951918c018490048402820184019099528a81528e975095508a9450899350839250508401838280828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b039093169263e67ca8a39284926368b62d32928b928b928b929190606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561160b57600080fd5b505afa15801561161f573d6000803e3d6000fd5b505050506040513d602081101561163557600080fd5b5051604080516001600160e01b031960e085901b168152600481019290925251602480830192600092919082900301818387803b1580156114b557600080fd5b6001546001600160a01b031690565b61175063d8d3cc6e8787878760405160240180856001600160a01b03166001600160a01b0316815260200184815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09d909d1b9c909c178c529351909a208a51918d01849004840282018401909a528b81528f985096508b95508a94508493505085019050838280828437600092019190915250611d5492505050565b60015460405163b546666960e01b81526001600160a01b03888116600483019081526024830189905260606044840190815260648401889052919093169263b5466669928a928a928a928a9290608401848480828437600081840152601f19601f82011690508083019250505095505050505050600060405180830381600087803b158015610fac57600080fd5b6118cf639d743989888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b03909316926357aac574928b928b9286926368b62d32928d928d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561195757600080fd5b505afa15801561196b573d6000803e3d6000fd5b505050506040513d602081101561198157600080fd5b5051604080516001600160e01b031960e087901b1681526001600160a01b039485166004820152929093166024830152604482015260806064820152600060848201819052915160c4808301939282900301818387803b158015610e1c57600080fd5b604080516001600160a01b0380881660248301528616604482015260648082018690528251808303909101815260849091018252602081810180516001600160e01b03166323b872dd60e01b17815291519091208251601f8501839004830281018301909352838352611a769290918691908690869081908401838280828437600092019190915250611d5492505050565b600154604080516302759c3760e01b81526001600160a01b038881166004830152878116602483015260448201879052915191909216916302759c3791606480830192600092919082900301818387803b1580156114b557600080fd5b611bf063c29b52f98a8a8a8a8a8a8a60405160240180886001600160a01b03166001600160a01b03168152602001876001600160a01b03166001600160a01b0316815260200186815260200180602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f82011690508083019250505099505050505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208884848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b8152600481018a815260248201928352604482018990526001600160a01b03909316926357aac574928d928d9286926368b62d32928f928f928f92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b158015611c7857600080fd5b505afa158015611c8c573d6000803e3d6000fd5b505050506040513d6020811015611ca257600080fd5b50516040516001600160e01b031960e086901b1681526001600160a01b0380851660048301908152908416602483015260448201839052608060648301908152608483018b90528b928b92919060a401848480828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b158015611d3157600080fd5b505af1158015611d45573d6000803e3d6000fd5b50505050505050505050505050565b6000828152602081815260408083205481518084018890523060601b81840152605480820183905283518083039091018152607490910190925281519190920120909190611db3908490611da790611ea9565b9063ffffffff611efa16565b90506001600160a01b03811615801590611e4957506001546040805163430c208160e01b81526001600160a01b038481166004830152602482018890529151919092169163430c2081916044808301926020929190829003018186803b158015611e1c57600080fd5b505afa158015611e30573d6000803e3d6000fd5b505050506040513d6020811015611e4657600080fd5b50515b611e8e576040805162461bcd60e51b8152602060048201526011602482015270494e56414c49445f5349474e415455524560781b604482015290519081900360640190fd5b50505060009081526020819052604090208054600101905550565b604080517f19457468657265756d205369676e6564204d6573736167653a0a333200000000602080830191909152603c8083019490945282518083039094018452605c909101909152815191012090565b60008151604114611f0d57506000611fe3565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0821115611f535760009350505050611fe3565b8060ff16601b14158015611f6b57508060ff16601c14155b15611f7c5760009350505050611fe3565b6040805160008152602080820180845289905260ff8416828401526060820186905260808201859052915160019260a0808401939192601f1981019281900390910190855afa158015611fd3573d6000803e3d6000fd5b5050506020604051035193505050505b9291505056fea265627a7a7231582014816bfd0c1519ce8c4cf272eb0526ffdba3abef0df7f17deb0da40bd8abb77f64736f6c634300050c0032","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533"}},"0x7c3c91245769c8b7450ad522792dec4bd4bf797f":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b506004361061003f575f3560e01c80631bf7e13e146100435780636ccbae5f1461006c578063a424740014610099575b5f80fd5b610056610051366004610749565b6100bc565b604051610063919061082c565b60405180910390f35b61008b61007a36600461083e565b5f9081526001602052604090205490565b604051908152602001610063565b6100ac6100a7366004610749565b6101d6565b6040519015158152602001610063565b60605f5a90506100cd8585856101d6565b6101315760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e61676572466f727761726465723a205349474e415455604482015269149157d253959053125160b21b60648201526084015b60405180910390fd5b6101cb6101416020870187610870565b5f546001600160a01b031660408801358461015f60608b018b610889565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f9201919091525061023292505050565b9150505b9392505050565b5f61022a6101e38561093a565b5f54604080516020601f88018190048102820181019092528681526001600160a01b03909216919087908790819084018382808284375f9201919091525061030e92505050565b949350505050565b606061023d85610453565b5f80876001600160a01b0316866102568b8a898961047e565b60405161026391906109f5565b5f604051808303815f8787f1925050503d805f811461029d576040519150601f19603f3d011682016040523d82523d5f602084013e6102a2565b606091505b5090925090506102b3603f87610a10565b5a116102c1576102c1610a2f565b61030182826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506104ae565b9998505050505050505050565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015610352573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103769190610a43565b90505f6104238660600151805190602001208688602001516040516020016103c39392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561044957508551610449906001600160a01b031682866104e7565b9695505050505050565b5f8181526001602081905260409091205461046d91610a5a565b5f9182526001602052604090912055565b606082858560405160200161049593929190610a7f565b6040516020818303038152906040529050949350505050565b606083156104bd5750816101cf565b8251156104cd5782518084602001fd5b8160405162461bcd60e51b8152600401610128919061082c565b5f805f6104f48585610622565b90925090505f81600481111561050c5761050c610abd565b14801561052a5750856001600160a01b0316826001600160a01b0316145b1561053a576001925050506101cf565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401610561929190610ad1565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161059f91906109f5565b5f60405180830381855afa9150503d805f81146105d7576040519150601f19603f3d011682016040523d82523d5f602084013e6105dc565b606091505b50915091508180156105ef575080516020145b801561061657508051630b135d3f60e11b906106149083016020908101908401610a43565b145b98975050505050505050565b5f808251604103610656576020830151604084015160608501515f1a61064a87828585610664565b9450945050505061065d565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561069957505f90506003610740565b8460ff16601b141580156106b157508460ff16601c14155b156106c157505f90506004610740565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610712573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b03811661073a575f60019250925050610740565b91505f90505b94509492505050565b5f805f6040848603121561075b575f80fd5b833567ffffffffffffffff80821115610772575f80fd5b9085019060808288031215610785575f80fd5b9093506020850135908082111561079a575f80fd5b818601915086601f8301126107ad575f80fd5b8135818111156107bb575f80fd5b8760208285010111156107cc575f80fd5b6020830194508093505050509250925092565b5f5b838110156107f95781810151838201526020016107e1565b50505f910152565b5f81518084526108188160208601602086016107df565b601f01601f19169290920160200192915050565b602081525f6101cf6020830184610801565b5f6020828403121561084e575f80fd5b5035919050565b80356001600160a01b038116811461086b575f80fd5b919050565b5f60208284031215610880575f80fd5b6101cf82610855565b5f808335601e1984360301811261089e575f80fd5b83018035915067ffffffffffffffff8211156108b8575f80fd5b60200191503681900382131561065d575f80fd5b634e487b7160e01b5f52604160045260245ffd5b6040516080810167ffffffffffffffff81118282101715610903576109036108cc565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610932576109326108cc565b604052919050565b5f6080823603121561094a575f80fd5b6109526108e0565b61095b83610855565b81526020808401358183015260408401356040830152606084013567ffffffffffffffff8082111561098b575f80fd5b9085019036601f83011261099d575f80fd5b8135818111156109af576109af6108cc565b6109c1601f8201601f19168501610909565b915080825236848285010111156109d6575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b5f8251610a068184602087016107df565b9190910192915050565b5f82610a2a57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b5f60208284031215610a53575f80fd5b5051919050565b80820180821115610a7957634e487b7160e01b5f52601160045260245ffd5b92915050565b5f8451610a908184602089016107df565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f61022a604083018461080156fea164736f6c6343000818000a","storage":{"0x0":"0x39a27956b78d00a4e00ea8833ff0947410a2933f"}},"0x8861cdfa38838531275ce12f9e795c3b9ff29cbe":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x936188f2c3c8e8c95e425b6fe41c2ac9e701585e":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x94f57ed7e9af03a10e8eb23ce1b3c7914a182b0f":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x95f29431aeb52c0d5dbeeec36010b8e2ca69cb3d":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x9b2565a3545a1312bdcb6e7148a7f7cae8c2706b":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c806373cc48a61161008857806398d35f201161006357806398d35f2014610215578063bd7ed31a1461021d578063c327deef14610245578063d7b82ebe1461026d575f80fd5b806373cc48a6146101af5780638438dc04146101ef5780638da5cb5b14610202575f80fd5b806313af4035116100c357806313af40351461015657806328e7677d146101695780632c095cbb1461017c578063435cc1621461018f575f80fd5b8063020ed8d3146100e9578063087991bc146100fe5780630b1a249514610143575b5f80fd5b6100fc6100f73660046122ff565b610280565b005b61011161010c36600461238a565b610300565b6040805163ffffffff94851681529390921660208401526001600160601b031916908201526060015b60405180910390f35b6100fc610151366004612510565b61036c565b6100fc6101643660046125c6565b6104da565b6100fc6101773660046122ff565b610512565b6100fc61018a3660046125e1565b61058a565b6101a261019d366004612674565b610656565b60405161013a919061278c565b6101d76101bd36600461279e565b60046020525f90815260409020546001600160a01b031681565b6040516001600160a01b03909116815260200161013a565b6100fc6101fd3660046122ff565b6106d2565b6001546101d7906001600160a01b031681565b6101a261074a565b6101d761022b36600461279e565b60056020525f90815260409020546001600160a01b031681565b6101d761025336600461279e565b60036020525f90815260409020546001600160a01b031681565b6101a261027b3660046127b7565b6107d5565b6001546001600160a01b03163314610296575f80fd5b60ff82165f8181526003602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527ff73c3c226af96b7f1ba666a21b3ceaf2be3ee6a365e3178fd9cd1eaae0075aa891015b60405180910390a15050565b5f805f8060025f8787604051610317929190612817565b604080519182900390912082526020808301939093529081015f90812061ffff8b16825290925290205463ffffffff80821695506401000000008204169350600160401b900460601b91505093509350939050565b83516020808601919091205f90815260028252604080822061ffff891683529092529081205463ffffffff16906103a385846107ea565b90506103b0818784610889565b6103b8612239565b845151156103d7576103ca85856107ea565b90506103d7818885610889565b5f6103e1836108cc565b602081015190915060fe16156103f5575f80fd5b61040081602761092a565b158015610425575061041381600261092a565b1580610425575061042581600661092a565b61042d575f80fd5b61043e89898561012001518461093a565b156104795787516020808a01919091205f90815260028252604080822061ffff8d1683529092522080546001600160e01b03191690556104cf565b6104988884610120015183856101200151610493876108cc565b610968565b156100e55787516020808a01919091205f90815260028252604080822061ffff8d1683529092522080546001600160e01b03191690555b505050505050505050565b6001546001600160a01b031633146104f0575f80fd5b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6001546001600160a01b03163314610528575f80fd5b60ff82165f8181526004602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527f2fcc274c3b72dd483ab201bfa87295e3817e8b9b10693219873b722ca1af00c791016102f4565b610592612239565b61059c83836107ea565b805190915061ffff16602f146105b0575f80fd5b60a081015184516020808701919091205f90815260028252604080822061ffff8a16835290925220546105e9919063ffffffff16610a7c565b6105f1575f80fd5b5f6105fb82610a94565b9050805151602082015110156100e55761061c818361012001518789610aab565b505082516020808501919091205f90815260028252604080822061ffff881683529092522080546001600160e01b03191690555b50505050565b60605f83838080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201829052509394505050505b85518110156106c7576106bd8682815181106106af576106af612826565b602002602001015183610c4a565b9150600101610691565b5090505b9392505050565b6001546001600160a01b031633146106e8575f80fd5b60ff82165f8181526005602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527fc7eec866a7a1386188cc3ca20ffea75b71bd3e90a60b6791b1d3f0971145118d91016102f4565b5f80546107569061283a565b80601f01602080910402602001604051908101604052809291908181526020018280546107829061283a565b80156107cd5780601f106107a4576101008083540402835291602001916107cd565b820191905f5260205f20905b8154815290600101906020018083116107b057829003601f168201915b505050505081565b60606107e18383610c4a565b90505b92915050565b6107f2612239565b82516107fd90610dc6565b905061080d8160e0015183610ebf565b610815575f80fd5b5f61082382835f0151610f25565b604083015190915060ff16610838825f610fcc565b14610841575f80fd5b610120820181905260808201516108589042610a7c565b610860575f80fd5b61086e428360a00151610a7c565b610876575f80fd5b61088281838686611026565b5092915050565b6108978360a0015182610a7c565b61089f575f80fd5b825161ffff166032146108b0575f80fd5b6108bf83610120015183611106565b6108c7575f80fd5b505050565b6040805160c0810182525f8082526020820181905291810182905260608082018190526080820183905260a08201529061090583610a94565b60a081015160c08201519192506106cb91610921908290612880565b83519190611172565b5f6107e18360a001515f846112b4565b5f6109468284866113c1565b1561095d57610955828661092a565b159050610960565b505f5b949350505050565b60208101515f9060fe161561097b575f80fd5b5f610985866113e6565b90505f610991856113e6565b90505f8061099f8a82611401565b6109aa906001612893565b60ff1690505b8951811015610a6b57836109dc896109d784858f516109cf9190612880565b8f9190611424565b6114a4565b03610a3f575f6109f7876109d785868f516109cf9190612880565b90508660800151841015610a23578381118015610a175750866080015181105b95505050505050610a73565b83811180610a1757508660800151811095505050505050610a73565b905080610a4c8a82611401565b610a57906001612893565b610a649060ff16826128ac565b90506109b0565b505f93505050505b95945050505050565b5f80610a8883856128bf565b60030b12159392505050565b610a9c61228e565b6107e48261010001515f61152d565b60a084015184515f90610abe9083611548565b90505f8660a001518760c00151610ad59190612880565b9050818111610ae2575f80fd5b5f610aed868861159f565b9050805f03610b1a57610b0c610b0384866128ac565b895190876112b4565b15610b15575f80fd5b610b5b565b87515f90610b29908686611424565b90505f8213610b36575f80fd5b5f610b41898361159f565b12156104cf575f610b52888361159f565b126104cf575f80fd5b5050505050505050565b60c08101516020820181905281515111610b7c5750565b5f610b8e825f01518360200151611548565b8260200151610b9d91906128ac565b8251909150610bac90826116ec565b61ffff166040830152610bc06002826128ac565b8251909150610bcf90826116ec565b61ffff166060830152610be36002826128ac565b8251909150610bf29082611712565b63ffffffff166080830152610c086004826128ac565b82519091505f90610c1990836116ec565b61ffff169050610c2a6002836128ac565b60a084018190529150610c3d81836128ac565b60c0909301929092525050565b6060610c54612239565b610c5e84846107ea565b61012081015180516020918201205f908152600282526040808220845161ffff16835290925220805491925090600160401b900460601b6001600160601b03191615610cc35760a08201518154610cbb919063ffffffff16610a7c565b610cc3575f80fd5b604080516060808201835260a085015163ffffffff9081168352608086015181166020808501918252610100880180518051908301206001600160601b0319168688019081526101208a0180518051908501205f908152600285528981208c5161ffff16825290945292889020965187549451915190961c600160401b0268010000000000000000600160e01b03199186166401000000000267ffffffffffffffff19909516969095169590951792909217939093169190911790925551905191517f55ced933cdd5a34dd03eb5d4bef19ec6ebb251dcd7a988eee0c1b9a13baaa88b92610db192916128e6565b60405180910390a15061010001519392505050565b610dce612239565b610dd8825f6116ec565b61ffff168152610de9826002611401565b60ff166020820152610dfc826003611401565b60ff166040820152610e0f826004611712565b63ffffffff9081166060830152610e2b90839060089061171216565b63ffffffff9081166080830152610e47908390600c9061171216565b63ffffffff90811660a0830152610e639083906010906116ec16565b61ffff1660c0820152610e7782601261173a565b60e0820181905251610eb490610e8e9060126128ac565b8260e001515160128551610ea29190612880565b610eac9190612880565b849190611424565b610100820152919050565b5f80610ed5610ece8483611548565b84906116ec565b83516020808601919091208651878301205f90815260028352604080822061ffff90951682529390925291902054600160401b900460601b6001600160601b031990811691161491505092915050565b60605f610f3184610a94565b90505b8051516020820151101561088257606081015161ffff16600114610f56575f80fd5b81515f03610f6e57610f6781611754565b9150610fa7565b60208101518151610f7e91611548565b825114610f89575f80fd5b805160208201518351610f9f9285925f92611775565b610fa7575f80fd5b8261ffff16816040015161ffff1614610fbe575f80fd5b610fc781610b65565b610f34565b5f805b83518310610fdf57610fdf61290a565b5f610fea8585611401565b60ff169050610ffa8160016128ac565b61100490856128ac565b9350805f0361101357506107e1565b61101e6001836128ac565b915050610fcf565b83518360e00151511115611038575f80fd5b61105c5f858560e0015151875161104f9190612880565b60e0870151929190611797565b611064575f80fd5b5f61106f828261152d565b9050602b61ffff16816040015161ffff160361109d576110908484836117cb565b611098575f80fd5b6110ff565b603061ffff16816040015161ffff16036110bc5761109084848361185f565b60405162461bcd60e51b8152602060048201526014602482015273139bc81d985b1a59081c1c9bdbd988199bdd5b9960621b604482015260640160405180910390fd5b5050505050565b5f806111128482611401565b61111d906001612893565b60ff1690505f5b835181101561095d5761113984828785611797565b15611149576001925050506107e4565b6111538482611401565b61115e906001612893565b61116b9060ff16826128ac565b9050611124565b6040805160c0810182525f8082526020820181905291810182905260608082018190526080820183905260a0820152906111ac83856128ac565b90506111c26111bb5f866128ac565b8690611401565b60ff1682526111d56111bb6001866128ac565b60ff1660208301526111f26111eb6002866128ac565b86906116ec565b61ffff1660408301525f61121161120a6004876128ac565b8790611401565b905061121e6005866128ac565b945061122e868660ff8416611424565b606084015261124060ff8216866128ac565b94505f61124d8787611401565b905060208160ff16111561125f575f80fd5b61126a6001876128ac565b955061127a878760ff8416611900565b608085015261128c60ff8216876128ac565b95506112a48661129c8186612880565b899190611424565b60a0850152509195945050505050565b5f60ff600883811c82169183916112cc918616612932565b90505f6112dd600780871690612952565b600160ff919091161b9050855b87518110156113b4575f6112fe8983611401565b90505f61131661130f8460016128ac565b8b90611401565b90508160ff168660ff161015611334575f96505050505050506106cb565b8160ff168660ff1603611393578460ff168160ff161161135c575f96505050505050506106cb565b8361137f61136d60ff8816866128ac565b6113789060026128ac565b8c90611401565b1660ff165f141596505050505050506106cb565b61139e816002612893565b6113ab9060ff16846128ac565b925050506112ea565b505f979650505050505050565b5f806113cd85846114a4565b90505f6113d9856113e6565b9190911495945050505050565b5f6107e460016113f68484611401565b84919060ff1661193d565b5f82828151811061141457611414612826565b016020015160f81c905092915050565b825160609061143383856128ac565b111561143d575f80fd5b5f8267ffffffffffffffff811115611457576114576123d9565b6040519080825280601f01601f191660200182016040528015611481576020820181803683370190505b50905060208082019086860101611499828287611b43565b509095945050505050565b815160ff165f9081526005602052604080822054606085015182860151925163347ced5960e11b81526001600160a01b03909216926368f9dab2926114ee9291879160040161296b565b602060405180830381865afa158015611509573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107e191906129a4565b61153561228e565b82815260c081018290526107e481610b65565b5f815b8351811061155b5761155b61290a565b5f6115668583611401565b60ff1690506115768160016128ac565b61158090836128ac565b9150805f0361158f5750611595565b5061154b565b6109608382612880565b5f6115aa8383611b98565b156115b657505f6107e4565b5f805f805f6115c5885f610fcc565b90505f6115d2885f610fcc565b90505b808211156115fe578593506115ea8987611bb3565b9550816115f6816129bb565b9250506115d5565b81811115611627578492506116138886611bb3565b94508061161f816129bb565b9150506115fe565b5f8211801561163f575061163d89878a88611797565b155b15611674578593506116518987611bb3565b95508492506116608886611bb3565b945061166d600183612880565b9150611627565b855f0361168a575f1996505050505050506107e4565b845f036116a057600196505050505050506107e4565b6116df6116ae8560016128ac565b6116b88b87611401565b60ff168a6116c78760016128ac565b6116d18d89611401565b8e949392919060ff16611bd6565b9998505050505050505050565b81515f906116fb8360026128ac565b1115611705575f80fd5b50016002015161ffff1690565b81515f906117218360046128ac565b111561172b575f80fd5b50016004015163ffffffff1690565b60605f6117478484611548565b9050610960848483611424565b602081015181516060916107e49161176c9082611548565b84519190611424565b5f611781848484611cc6565b61178c878785611cc6565b149695505050505050565b5f6117af83838486516117aa9190612880565b611cc6565b6117c186868789516117aa9190612880565b1495945050505050565b5f806117d685610a94565b90505b8051516020820151101561095d57604081015161ffff166030146117fb575f80fd5b5f61180582611ce8565b90505f61181e5f835184611d049092919063ffffffff16565b905061182c81838989611da0565b1561184f5761184561183d84611754565b868385611e9b565b93505050506106cb565b505061185a81610b65565b6117d9565b5f6118778460e0015161187184611754565b90611b98565b61187f575f80fd5b815151602083015110156118f75761189e8460e0015161187184611754565b6118a6575f80fd5b5f6118b083611ce8565b90505f6118c95f835184611d049092919063ffffffff16565b90506118d781838888611da0565b156118e7576001925050506106cb565b50506118f282610b65565b61187f565b505f9392505050565b5f602082111561190e575f80fd5b835161191a83856128ac565b1115611924575f80fd5b506020919092018101519190036101000a5f1901191690565b5f603482111561194b575f80fd5b5f80805b84811015611a29575f8761196383896128ac565b8151811061197357611973612826565b01602001516001600160f81b0319169050600360fc1b81108015906119a65750603d60f91b6001600160f81b0319821611155b6119ae575f80fd5b604051806080016040528060478152602001612b5c604791396119d6603060f884901c612880565b815181106119e6576119e6612826565b0160209081015160f81c93508311156119fd575f80fd5b611a08600187612880565b8203611a145750611a29565b5060059290921b60ff8216179160010161194f565b505f611a368560056129d0565b9050611a436008866129e7565b5f03611a5a578160ff16600584901b179250611b29565b611a656008866129e7565b600203611a935760028260ff16901c60ff16600384901b179250600281611a8c9190612880565b9050611b29565b611a9e6008866129e7565b600403611ac55760048260ff16901c60ff16600184901b179250600481611a8c9190612880565b611ad06008866129e7565b600503611af75760018260ff16901c60ff16600484901b179250600181611a8c9190612880565b611b026008866129e7565b6007036100e55760038260ff16901c60ff16600284901b179250600381611a8c9190612880565b611b3581610100612880565b9290921b9695505050505050565b60208110611b7b5781518352611b5a6020846128ac565b9250611b676020836128ac565b9150611b74602082612880565b9050611b43565b905182516020929092036101000a5f190180199091169116179052565b5f815183511480156107e157506107e1835f845f8751611775565b5f611bbe8383611401565b60ff16611bcc8360016128ac565b6107e191906128ac565b5f8480831015611be35750815b6020878901810190858701015f5b83811015611cab5782518251808214611c7b575f6020871115611c1657505f19611c52565b600184611c24896020612880565b611c2e91906128ac565b611c399060086129d0565b611c44906002612ada565b611c4e9190612880565b1990505b5f611c61838316858416612ae5565b90508015611c78579750611cbc9650505050505050565b50505b611c866020866128ac565b9450611c936020856128ac565b93505050602081611ca491906128ac565b9050611bf1565b50611cb68589612ae5565b93505050505b9695505050505050565b82515f90611cd483856128ac565b1115611cde575f80fd5b5091016020012090565b60a081015160c08201516060916107e49161176c908290612880565b604080516080810182525f8082526020820181905291810191909152606080820152611d3a611d335f856128ac565b85906116ec565b61ffff168152611d55611d4e6002856128ac565b8590611401565b60ff166020820152611d6b611d4e6003856128ac565b60ff166040820152611d94611d816004856128ac565b611d8c600485612880565b869190611424565b60608201529392505050565b5f846020015160ff16600314611db757505f610960565b826020015160ff16856040015160ff1614611dd357505f610960565b5f611ddd85611f96565b90508360c0015161ffff168161ffff1614611dfb575f915050610960565b8551610100165f03611e10575f915050610960565b60408087015160ff165f908152600360209081529082902054855191860151925163de8f50a160e01b81526001600160a01b039091169263de8f50a192611e5c928a9290600401612b04565b602060405180830381865afa158015611e77573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611cbc9190612b3c565b5f80611ea683611f96565b90505b84515160208601511015611f8b5760a085015160c08601515f91611edb91611ed2908290612880565b88519190611d04565b90508161ffff16815f015161ffff1614611ef55750611f7d565b846040015160ff16816020015160ff1614611f105750611f7d565b60408051808201909152606081525f6020820152611f3c85518951611f3591906128ac565b8290611ff7565b50611f47818961205a565b50611f52818661205a565b50611f698260400151825f0151846060015161207f565b15611f7a5760019350505050610960565b50505b611f8685610b65565b611ea9565b505f95945050505050565b5f805f5b8351811015611fe8576001811615611fbe57611fb68482611401565b60ff16611fd0565b6008611fca8583611401565b60ff16901b5b611fde9061ffff16836128ac565b9150600101611f9a565b506106cb601082901c826128ac565b60408051808201909152606081525f60208201526120166020836129e7565b1561203e576120266020836129e7565b612031906020612880565b61203b90836128ac565b91505b506020828101829052604080518085525f815290920101905290565b60408051808201909152606081525f60208201526107e183845f015151848551612126565b60ff83165f908152600460205260408120546001600160a01b03166120a557505f6106cb565b60ff84165f90815260046020819052604091829020549151637bf41d7760e11b81526001600160a01b039092169163f7e83aee916120e79187918791016128e6565b602060405180830381865afa158015612102573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109609190612b3c565b60408051808201909152606081525f60208201528251821115612147575f80fd5b602085015161215683866128ac565b111561218957612189856121798760200151878661217491906128ac565b61220c565b6121849060026129d0565b612222565b5f808651805187602083010193508088870111156121a75787860182525b505050602084015b602084106121e757805182526121c66020836128ac565b91506121d36020826128ac565b90506121e0602085612880565b93506121af565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b5f8183111561221c5750816107e4565b50919050565b815161222e8383611ff7565b50610650838261205a565b60408051610140810182525f8082526020820181905291810182905260608082018390526080820183905260a0820183905260c082019290925260e08101829052610100810182905261012081019190915290565b6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b803560ff811681146122e3575f80fd5b919050565b6001600160a01b03811681146122fc575f80fd5b50565b5f8060408385031215612310575f80fd5b612319836122d3565b91506020830135612329816122e8565b809150509250929050565b803561ffff811681146122e3575f80fd5b5f8083601f840112612355575f80fd5b50813567ffffffffffffffff81111561236c575f80fd5b602083019150836020828501011115612383575f80fd5b9250929050565b5f805f6040848603121561239c575f80fd5b6123a584612334565b9250602084013567ffffffffffffffff8111156123c0575f80fd5b6123cc86828701612345565b9497909650939450505050565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff81118282101715612416576124166123d9565b604052919050565b5f82601f83011261242d575f80fd5b813567ffffffffffffffff811115612447576124476123d9565b61245a601f8201601f19166020016123ed565b81815284602083860101111561246e575f80fd5b816020850160208301375f918101602001919091529392505050565b5f6040828403121561249a575f80fd5b6040516040810167ffffffffffffffff82821081831117156124be576124be6123d9565b8160405282935084359150808211156124d5575f80fd5b6124e18683870161241e565b835260208501359150808211156124f6575f80fd5b506125038582860161241e565b6020830152505092915050565b5f805f805f60a08688031215612524575f80fd5b61252d86612334565b9450602086013567ffffffffffffffff80821115612549575f80fd5b61255589838a0161241e565b9550604088013591508082111561256a575f80fd5b61257689838a0161248a565b9450606088013591508082111561258b575f80fd5b61259789838a0161248a565b935060808801359150808211156125ac575f80fd5b506125b98882890161241e565b9150509295509295909350565b5f602082840312156125d6575f80fd5b81356107e1816122e8565b5f805f80608085870312156125f4575f80fd5b6125fd85612334565b9350602085013567ffffffffffffffff80821115612619575f80fd5b6126258883890161241e565b9450604087013591508082111561263a575f80fd5b6126468883890161248a565b9350606087013591508082111561265b575f80fd5b506126688782880161241e565b91505092959194509250565b5f805f60408486031215612686575f80fd5b833567ffffffffffffffff8082111561269d575f80fd5b818601915086601f8301126126b0575f80fd5b81356020828211156126c4576126c46123d9565b8160051b6126d38282016123ed565b928352848101820192828101908b8511156126ec575f80fd5b83870192505b8483101561272657823586811115612708575f80fd5b6127168d86838b010161248a565b83525091830191908301906126f2565b985050508701359250508082111561273c575f80fd5b506123cc86828701612345565b5f81518084525f5b8181101561276d57602081850181015186830182015201612751565b505f602082860101526020601f19601f83011685010191505092915050565b602081525f6107e16020830184612749565b5f602082840312156127ae575f80fd5b6107e1826122d3565b5f80604083850312156127c8575f80fd5b823567ffffffffffffffff808211156127df575f80fd5b6127eb8683870161248a565b93506020850135915080821115612800575f80fd5b5061280d8582860161241e565b9150509250929050565b818382375f9101908152919050565b634e487b7160e01b5f52603260045260245ffd5b600181811c9082168061284e57607f821691505b60208210810361221c57634e487b7160e01b5f52602260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b818103818111156107e4576107e461286c565b60ff81811683821601908111156107e4576107e461286c565b808201808211156107e4576107e461286c565b600382810b9082900b03637fffffff198112637fffffff821317156107e4576107e461286c565b604081525f6128f86040830185612749565b8281036020840152610a738185612749565b634e487b7160e01b5f52600160045260245ffd5b634e487b7160e01b5f52601260045260245ffd5b5f61ffff808416806129465761294661291e565b92169190910492915050565b60ff82811682821603908111156107e4576107e461286c565b606081525f61297d6060830186612749565b828103602084015261298f8186612749565b91505061ffff83166040830152949350505050565b5f602082840312156129b4575f80fd5b5051919050565b5f816129c9576129c961286c565b505f190190565b80820281158282048414176107e4576107e461286c565b5f826129f5576129f561291e565b500690565b600181815b80851115612a3457815f1904821115612a1a57612a1a61286c565b80851615612a2757918102915b93841c93908002906129ff565b509250929050565b5f82612a4a575060016107e4565b81612a5657505f6107e4565b8160018114612a6c5760028114612a7657612a92565b60019150506107e4565b60ff841115612a8757612a8761286c565b50506001821b6107e4565b5060208310610133831016604e8410600b8410161715612ab5575081810a6107e4565b612abf83836129fa565b805f1904821115612ad257612ad261286c565b029392505050565b5f6107e18383612a3c565b8181035f8312801583831316838312821617156108825761088261286c565b606081525f612b166060830186612749565b8281036020840152612b288186612749565b90508281036040840152611cbc8185612749565b5f60208284031215612b4c575f80fd5b815180151581146107e1575f80fdfe00010203040506070809ffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fffffffffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fa164736f6c6343000818000a","storage":{"0x0":"0xbd","0x1":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1471eb6eb2c5e789fc3de43f8ce62938c7d1836ec861730447e2ada8fd81017b":"0x17cda4e23f7237277952e075b1c48467aabfacc0","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563":"0x2b000100000e1000244a5c080249aac11d7b6f6446702e54a1607371607a","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e564":"0x1a41855200fd2ce1cdde32f24e8fb500002b000100000e1000244f660802e06d","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e565":"0x44b80b8f1d39a95c0b0d7c65d08458e880409bbc683457104237c7f8ec8d0000","0x3617319a054d772f909f7c479a2cebe5066e836a939412e32403c99029b92eff":"0x5155f5627bdf9795b3dbb8887001ada1eeba93f2","0x85aaa47b6dc46495bb8824fad4583769726fea36efd831a35556690b830a8fbe":"0x6e2822b8856749ed179c77140dbc5f5a27410a4","0x91da3fd0782e51c6b3986e9e672fd566868e71f3dbc2d6c2cd6fbb3e361af2a7":"0x49da8861c65460639925febe1fb4b5b59b443082","0x95c6356c1b7a542b884d2484ef785c9c7224e77e1016c20007bddc15c23b452f":"0x3f9151d3fd1a82dcc5091909589900fd60ee767ee090bba000000000","0xabd6e7cb50984ff9c2f3e18a2660c3353dadf4e3291deeb275dae2cd1e44fe05":"0x458f653495fb8d9bd0e7df468c2bf76d26c7bd9"}},"0x9dc64b2558b458a15c7f01c192d874ef460f0a29":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x9df67c91f1bfcb4d966cf764e9218685e7c59e8a":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101d1575f3560e01c80638b95dd71116100fe578063c86902331161009e578063e32954eb1161006e578063e32954eb146104f2578063e59d895d14610505578063e985e9c514610518578063f1cb7e0614610553575f80fd5b8063c869023314610435578063ce3decdc1461048c578063d5fa2b001461049f578063d700ff33146104b2575f80fd5b8063a8fa5682116100d9578063a8fa5682146103ac578063a9784b3e146103bf578063ac9650d814610402578063bc1c58d114610422575f80fd5b80638b95dd7114610373578063a22cb46514610386578063a4b91a0114610399575f80fd5b80633603d758116101745780635c98042b116101445780635c98042b14610327578063623195b01461033a578063691f34311461034d5780637737221314610360575f80fd5b80633603d758146102975780633b3b57de146102aa5780634cbf6ba4146102bd57806359d1d43c14610307575f80fd5b8063124a319c116101af578063124a319c146102255780632203ab561461025057806329cd62ea14610271578063304e6ade14610284575f80fd5b806301ffc9a7146101d55780630af179d7146101fd57806310f13a8c14610212575b5f80fd5b6101e86101e3366004612267565b610566565b60405190151581526020015b60405180910390f35b61021061020b3660046122bd565b610576565b005b610210610220366004612304565b610778565b610238610233366004612377565b610842565b6040516001600160a01b0390911681526020016101f4565b61026361025e3660046123a1565b610a87565b6040516101f492919061240e565b61021061027f366004612426565b610bb5565b6102106102923660046122bd565b610c4d565b6102106102a536600461244f565b610cc6565b6102386102b836600461244f565b610d64565b6101e86102cb3660046123a1565b5f82815260208181526040808320546001600160401b031683526006825280832094835293815283822092825291909152205461ffff16151590565b61031a6103153660046122bd565b610d93565b6040516101f49190612466565b61031a61033536600461244f565b610e6f565b610210610348366004612478565b610f2a565b61031a61035b36600461244f565b610fc2565b61021061036e3660046122bd565b610ffa565b6102106103813660046124da565b611073565b6102106103943660046125b9565b611150565b6102106103a73660046125e3565b61122a565b61031a6103ba36600461261e565b6112f6565b6101e86103cd36600461265a565b6001600160a01b039283165f908152600c60209081526040808320948352938152838220929094168152925290205460ff1690565b6104156104103660046126ce565b611342565b6040516101f4919061270c565b61031a61043036600461244f565b61134f565b61047761044336600461244f565b5f81815260208181526040808320546001600160401b03168352600982528083209383529290522080546001909101549091565b604080519283526020830191909152016101f4565b61021061049a3660046122bd565b611387565b6102106104ad36600461276e565b6114c3565b6104da6104c036600461244f565b5f602081905290815260409020546001600160401b031681565b6040516001600160401b0390911681526020016101f4565b61041561050036600461279c565b6114e9565b6102106105133660046127d6565b6114fe565b6101e8610526366004612808565b6001600160a01b039182165f908152600b6020908152604080832093909416825291909152205460ff1690565b61031a6105613660046123a1565b6115a2565b5f61057082611666565b92915050565b826105808161168a565b610588575f80fd5b5f84815260208181526040808320548151601f87018490048402810184019092528582528392606092839285926001600160401b039091169183916105eb9183918d908d90819084018382808284375f9201919091525092939250506118b79050565b90505b80515160208201511015610712578661ffff165f03610652578060400151965061061781611912565b94508460405160200161062a9190612834565b60405160208183030381529060405280519060200120925061064b81611933565b9350610704565b5f61065c82611912565b9050816040015161ffff168861ffff16141580610680575061067e868261194f565b155b15610702576106db8c878a8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250505060208801518d91506106d2908290612863565b8b51158a61196a565b8160400151975081602001519650809550858051906020012093506106ff82611933565b94505b505b61070d81611bc9565b6105ee565b5083511561076c5761076c8a85888c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c925061076391508290508f612863565b8951158861196a565b50505050505050505050565b846107828161168a565b61078a575f80fd5b5f86815260208181526040808320546001600160401b03168352600a8252808320898452909152908190209051849184916107c89089908990612876565b908152602001604051809103902091826107e3929190612901565b5084846040516107f4929190612876565b6040518091039020867f448bc014f1536726cf8d54ff3d6481ed3cbc683c2591ca204274009afa09b1a18787878760405161083294939291906129e2565b60405180910390a3505050505050565b5f82815260208181526040808320546001600160401b031683526007825280832085845282528083206001600160e01b0319851684529091528120546001600160a01b03168015610894579050610570565b5f61089e85610d64565b90506001600160a01b0381166108b8575f92505050610570565b6040516301ffc9a760e01b60248201525f9081906001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b1790525161090f9190612834565b5f60405180830381855afa9150503d805f8114610947576040519150601f19603f3d011682016040523d82523d5f602084013e61094c565b606091505b509150915081158061095f575060208151105b80610989575080601f8151811061097857610978612a13565b01602001516001600160f81b031916155b1561099a575f945050505050610570565b6040516001600160e01b0319871660248201526001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b179052516109f09190612834565b5f60405180830381855afa9150503d805f8114610a28576040519150601f19603f3d011682016040523d82523d5f602084013e610a2d565b606091505b509092509050811580610a41575060208151105b80610a6b575080601f81518110610a5a57610a5a612a13565b01602001516001600160f81b031916155b15610a7c575f945050505050610570565b509095945050505050565b5f82815260208181526040808320546001600160401b03168352600180835281842086855290925282206060915b848111610b975780851615801590610ae457505f8181526020839052604081208054610ae090612885565b9050115b15610b8f5780825f8381526020019081526020015f20808054610b0690612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610b3290612885565b8015610b7d5780601f10610b5457610100808354040283529160200191610b7d565b820191905f5260205f20905b815481529060010190602001808311610b6057829003601f168201915b50505050509050935093505050610bae565b60011b610ab5565b505f60405180602001604052805f81525092509250505b9250929050565b82610bbf8161168a565b610bc7575f80fd5b60408051808201825284815260208082018581525f888152808352848120546001600160401b031681526009835284812089825283528490209251835551600190920191909155815185815290810184905285917f1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e4691015b60405180910390a250505050565b82610c578161168a565b610c5f575f80fd5b5f84815260208181526040808320546001600160401b03168352600382528083208784529091529020610c93838583612901565b50837fe379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d75788484604051610c3f929190612a27565b80610cd08161168a565b610cd8575f80fd5b5f82815260208190526040812080546001600160401b031691610cfa83612a3a565b82546101009290920a6001600160401b038181021990931691831602179091555f84815260208181526040918290205491519190921681528492507fc6621ccb8f3f5a04bb6502154b2caf6adf5983fe76dfef1cfc9c42e3579db444910160405180910390a25050565b5f80610d7183603c6115a2565b905080515f03610d8357505f92915050565b610d8c81611cae565b9392505050565b5f83815260208181526040808320546001600160401b03168352600a825280832086845290915290819020905160609190610dd19085908590612876565b90815260200160405180910390208054610dea90612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610e1690612885565b8015610e615780601f10610e3857610100808354040283529160200191610e61565b820191905f5260205f20905b815481529060010190602001808311610e4457829003601f168201915b505050505090509392505050565b5f81815260208181526040808320546001600160401b03168352600482528083208484529091529020805460609190610ea790612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610ed390612885565b8015610f1e5780601f10610ef557610100808354040283529160200191610f1e565b820191905f5260205f20905b815481529060010190602001808311610f0157829003601f168201915b50505050509050919050565b83610f348161168a565b610f3c575f80fd5b83610f48600182612863565b1615610f52575f80fd5b5f85815260208181526040808320546001600160401b031683526001825280832088845282528083208784529091529020610f8e838583612901565b50604051849086907faa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe3905f90a35050505050565b5f81815260208181526040808320546001600160401b03168352600882528083208484529091529020805460609190610ea790612885565b826110048161168a565b61100c575f80fd5b5f84815260208181526040808320546001600160401b03168352600882528083208784529091529020611040838583612901565b50837fb7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f78484604051610c3f929190612a27565b8261107d8161168a565b611085575f80fd5b837f65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af75284846040516110b792919061240e565b60405180910390a2603c830361110e57837f52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd26110f284611cae565b6040516001600160a01b03909116815260200160405180910390a25b5f84815260208181526040808320546001600160401b0316835260028252808320878452825280832086845290915290206111498382612a5f565b5050505050565b6001600160a01b03821633036111bf5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084015b60405180910390fd5b335f818152600b602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6001600160a01b03821633036112825760405162461bcd60e51b815260206004820181905260248201527f53657474696e672064656c65676174652073746174757320666f722073656c6660448201526064016111b6565b335f818152600c6020908152604080832087845282528083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519384529286917ff0ddb3b04746704017f9aa8bd728fcc2c1d11675041205350018915f5e4750a0910160405180910390a4505050565b5f83815260208181526040808320546001600160401b03168352600582528083208684528252808320858452825280832061ffff851684529091529020805460609190610dea90612885565b6060610d8c5f8484611ccb565b5f81815260208181526040808320546001600160401b03168352600382528083208484529091529020805460609190610ea790612885565b826113918161168a565b611399575f80fd5b5f84815260208181526040808320546001600160401b031680845260048352818420888552909252822080549192916113d190612885565b80601f01602080910402602001604051908101604052809291908181526020018280546113fd90612885565b80156114485780601f1061141f57610100808354040283529160200191611448565b820191905f5260205f20905b81548152906001019060200180831161142b57829003601f168201915b505050506001600160401b0384165f9081526004602090815260408083208b8452909152902091925061147e9050858783612901565b50857f8f15ed4b723ef428f250961da8315675b507046737e19319fc1a4d81bfe87f858287876040516114b393929190612b1e565b60405180910390a2505050505050565b816114cd8161168a565b6114d5575f80fd5b6114e483603c61038185611e88565b505050565b60606114f6848484611ccb565b949350505050565b826115088161168a565b611510575f80fd5b5f84815260208181526040808320546001600160401b031683526007825280832087845282528083206001600160e01b031987168085529083529281902080546001600160a01b0319166001600160a01b038716908117909155905190815286917f7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa910160405180910390a350505050565b5f82815260208181526040808320546001600160401b0316835260028252808320858452825280832084845290915290208054606091906115e290612885565b80601f016020809104026020016040519081016040528092919081815260200182805461160e90612885565b80156116595780601f1061163057610100808354040283529160200191611659565b820191905f5260205f20905b81548152906001019060200180831161163c57829003601f168201915b5050505050905092915050565b5f6001600160e01b03198216631674750f60e21b1480610570575061057082611eb8565b5f336001600160a01b037f0000000000000000000000004fbf7b2f171336958be5d15ff762a5cff53635681614806116ea5750336001600160a01b037f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5616145b156116f757506001919050565b6040516302571be360e01b8152600481018390525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa15801561175c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117809190612b4d565b90507f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b0316816001600160a01b031603611845576040516331a9108f60e11b8152600481018490527f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b031690636352211e90602401602060405180830381865afa15801561181e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118429190612b4d565b90505b6001600160a01b03811633148061187e57506001600160a01b0381165f908152600b6020908152604080832033845290915290205460ff165b80610d8c57506001600160a01b0381165f908152600c60209081526040808320868452825280832033845290915290205460ff16610d8c565b6118ff6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261057081611bc9565b602081015181516060916105709161192a9082611edc565b84519190611f33565b60a081015160c08201516060916105709161192a908290612863565b5f81518351148015610d8c5750610d8c835f845f8751611fa7565b865160208801205f61197d878787611f33565b90508315611aa1576001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c168452909152902080546119c690612885565b159050611a23576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611a0783612b68565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091528120611a62916121f9565b897f03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a12078a8a604051611a94929190612b84565b60405180910390a261076c565b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c16845290915290208054611ae290612885565b90505f03611b40576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611b2483612ba9565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091529020611b808282612a5f565b50897f52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b8a8a84604051611bb593929190612bbf565b60405180910390a250505050505050505050565b60c08101516020820181905281515111611be05750565b5f611bf2825f01518360200151611edc565b8260200151611c019190612bed565b8251909150611c109082611fc9565b61ffff166040830152611c24600282612bed565b8251909150611c339082611fc9565b61ffff166060830152611c47600282612bed565b8251909150611c569082611fef565b63ffffffff166080830152611c6c600482612bed565b82519091505f90611c7d9083611fc9565b61ffff169050611c8e600283612bed565b60a084018190529150611ca18183612bed565b60c0909301929092525050565b5f8151601414611cbc575f80fd5b5060200151600160601b900490565b6060816001600160401b03811115611ce557611ce56124c6565b604051908082528060200260200182016040528015611d1857816020015b6060815260200190600190039081611d035790505b5090505f5b82811015611e80578415611dd8575f848483818110611d3e57611d3e612a13565b9050602002810190611d509190612c00565b611d5f91602491600491612c42565b611d6891612c69565b9050858114611dd65760405162461bcd60e51b815260206004820152603460248201527f6d756c746963616c6c3a20416c6c207265636f726473206d7573742068617665604482015273040c240dac2e8c6d0d2dcce40dcc2dacad0c2e6d60631b60648201526084016111b6565b505b5f8030868685818110611ded57611ded612a13565b9050602002810190611dff9190612c00565b604051611e0d929190612876565b5f60405180830381855af49150503d805f8114611e45576040519150601f19603f3d011682016040523d82523d5f602084013e611e4a565b606091505b509150915081611e58575f80fd5b80848481518110611e6b57611e6b612a13565b60209081029190910101525050600101611d1d565b509392505050565b604080516014808252818301909252606091602082018180368337505050600160601b9290920260208301525090565b5f6001600160e01b0319821663c869023360e01b1480610570575061057082612017565b5f815b83518110611eef57611eef612c86565b5f611efa858361203b565b60ff169050611f0a816001612bed565b611f149083612bed565b9150805f03611f235750611f29565b50611edf565b6114f68382612863565b8251606090611f428385612bed565b1115611f4c575f80fd5b5f826001600160401b03811115611f6557611f656124c6565b6040519080825280601f01601f191660200182016040528015611f8f576020820181803683370190505b50905060208082019086860101610a7c82828761205e565b5f611fb38484846120b3565b611fbe8787856120b3565b149695505050505050565b81515f90611fd8836002612bed565b1115611fe2575f80fd5b50016002015161ffff1690565b81515f90611ffe836004612bed565b1115612008575f80fd5b50016004015163ffffffff1690565b5f6001600160e01b0319821663691f343160e01b14806105705750610570826120d5565b5f82828151811061204e5761204e612a13565b016020015160f81c905092915050565b602081106120965781518352612075602084612bed565b9250612082602083612bed565b915061208f602082612863565b905061205e565b905182516020929092036101000a5f190180199091169116179052565b82515f906120c18385612bed565b11156120cb575f80fd5b5091016020012090565b5f6001600160e01b031982166304928c6760e21b14806105705750610570825f6001600160e01b0319821663547d2b4160e11b148061212457506001600160e01b03198216635c98042b60e01b145b806105705750610570825f6001600160e01b0319821663bc1c58d160e01b14806105705750610570825f6001600160e01b03198216631d9dabef60e11b148061217d57506001600160e01b031982166378e5bf0360e11b145b806105705750610570825f6001600160e01b03198216631101d5ab60e11b14806105705750610570825f6001600160e01b0319821663d700ff3360e01b14806105705750610570825f6001600160e01b03198216634fbf043360e01b148061057057506301ffc9a760e01b6001600160e01b0319831614610570565b50805461220590612885565b5f825580601f10612214575050565b601f0160209004905f5260205f20908101906122309190612233565b50565b5b80821115612247575f8155600101612234565b5090565b80356001600160e01b031981168114612262575f80fd5b919050565b5f60208284031215612277575f80fd5b610d8c8261224b565b5f8083601f840112612290575f80fd5b5081356001600160401b038111156122a6575f80fd5b602083019150836020828501011115610bae575f80fd5b5f805f604084860312156122cf575f80fd5b8335925060208401356001600160401b038111156122eb575f80fd5b6122f786828701612280565b9497909650939450505050565b5f805f805f60608688031215612318575f80fd5b8535945060208601356001600160401b0380821115612335575f80fd5b61234189838a01612280565b90965094506040880135915080821115612359575f80fd5b5061236688828901612280565b969995985093965092949392505050565b5f8060408385031215612388575f80fd5b823591506123986020840161224b565b90509250929050565b5f80604083850312156123b2575f80fd5b50508035926020909101359150565b5f5b838110156123db5781810151838201526020016123c3565b50505f910152565b5f81518084526123fa8160208601602086016123c1565b601f01601f19169290920160200192915050565b828152604060208201525f6114f660408301846123e3565b5f805f60608486031215612438575f80fd5b505081359360208301359350604090920135919050565b5f6020828403121561245f575f80fd5b5035919050565b602081525f610d8c60208301846123e3565b5f805f806060858703121561248b575f80fd5b843593506020850135925060408501356001600160401b038111156124ae575f80fd5b6124ba87828801612280565b95989497509550505050565b634e487b7160e01b5f52604160045260245ffd5b5f805f606084860312156124ec575f80fd5b833592506020840135915060408401356001600160401b0380821115612510575f80fd5b818601915086601f830112612523575f80fd5b813581811115612535576125356124c6565b604051601f8201601f19908116603f0116810190838211818310171561255d5761255d6124c6565b81604052828152896020848701011115612575575f80fd5b826020860160208301375f6020848301015280955050505050509250925092565b6001600160a01b0381168114612230575f80fd5b80358015158114612262575f80fd5b5f80604083850312156125ca575f80fd5b82356125d581612596565b9150612398602084016125aa565b5f805f606084860312156125f5575f80fd5b83359250602084013561260781612596565b9150612615604085016125aa565b90509250925092565b5f805f60608486031215612630575f80fd5b8335925060208401359150604084013561ffff8116811461264f575f80fd5b809150509250925092565b5f805f6060848603121561266c575f80fd5b833561267781612596565b925060208401359150604084013561264f81612596565b5f8083601f84011261269e575f80fd5b5081356001600160401b038111156126b4575f80fd5b6020830191508360208260051b8501011115610bae575f80fd5b5f80602083850312156126df575f80fd5b82356001600160401b038111156126f4575f80fd5b6127008582860161268e565b90969095509350505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b8281101561276157603f1988860301845261274f8583516123e3565b94509285019290850190600101612733565b5092979650505050505050565b5f806040838503121561277f575f80fd5b82359150602083013561279181612596565b809150509250929050565b5f805f604084860312156127ae575f80fd5b8335925060208401356001600160401b038111156127ca575f80fd5b6122f78682870161268e565b5f805f606084860312156127e8575f80fd5b833592506127f86020850161224b565b9150604084013561264f81612596565b5f8060408385031215612819575f80fd5b823561282481612596565b9150602083013561279181612596565b5f82516128458184602087016123c1565b9190910192915050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156105705761057061284f565b818382375f9101908152919050565b600181811c9082168061289957607f821691505b6020821081036128b757634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156114e457805f5260205f20601f840160051c810160208510156128e25750805b601f840160051c820191505b81811015611149575f81556001016128ee565b6001600160401b03831115612918576129186124c6565b61292c836129268354612885565b836128bd565b5f601f84116001811461295d575f85156129465750838201355b5f19600387901b1c1916600186901b178355611149565b5f83815260208120601f198716915b8281101561298c578685013582556020948501946001909201910161296c565b50868210156129a8575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b604081525f6129f56040830186886129ba565b8281036020840152612a088185876129ba565b979650505050505050565b634e487b7160e01b5f52603260045260245ffd5b602081525f6114f66020830184866129ba565b5f6001600160401b03808316818103612a5557612a5561284f565b6001019392505050565b81516001600160401b03811115612a7857612a786124c6565b612a8c81612a868454612885565b846128bd565b602080601f831160018114612abf575f8415612aa85750858301515b5f19600386901b1c1916600185901b178555612b16565b5f85815260208120601f198616915b82811015612aed57888601518255948401946001909101908401612ace565b5085821015612b0a57878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b604081525f612b3060408301866123e3565b8281036020840152612b438185876129ba565b9695505050505050565b5f60208284031215612b5d575f80fd5b8151610d8c81612596565b5f61ffff821680612b7b57612b7b61284f565b5f190192915050565b604081525f612b9660408301856123e3565b905061ffff831660208301529392505050565b5f61ffff808316818103612a5557612a5561284f565b606081525f612bd160608301866123e3565b61ffff851660208401528281036040840152612b4381856123e3565b808201808211156105705761057061284f565b5f808335601e19843603018112612c15575f80fd5b8301803591506001600160401b03821115612c2e575f80fd5b602001915036819003821315610bae575f80fd5b5f8085851115612c50575f80fd5b83861115612c5c575f80fd5b5050820193919092039150565b80356020831015610570575f19602084900360031b1b1692915050565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{}},"0xa06a63155145b7f2fda96d9658ec7fef3b9dcf76":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b506004361061004a575f3560e01c80634ce34aa21461004e578063899e104c1461007e5780638df25d9214610091578063c4e8fcb5146100a4575b5f80fd5b61006161005c366004610834565b6100b9565b6040516001600160e01b0319909116815260200160405180910390f35b61006161008c3660046108b4565b610121565b61006161009f36600461091b565b61018a565b6100b76100b2366004610969565b6101c7565b005b5f335f525f60205260405f20546100dd576349ed56f960e11b5f523360045260245ffd5b815f5b81811015610110576101088585838181106100fd576100fd6109a2565b905060c002016102c4565b6001016100e0565b50632671a55160e11b949350505050565b5f335f525f60205260405f2054610145576349ed56f960e11b5f523360045260245ffd5b835f5b8181101561016d576101658787838181106100fd576100fd6109a2565b600101610148565b506101788484610436565b50632267841360e21b95945050505050565b5f335f525f60205260405f20546101ae576349ed56f960e11b5f523360045260245ffd5b6101b88383610436565b506346f92ec960e11b92915050565b336001600160a01b037f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c1614610210576040516336abb4df60e11b815260040160405180910390fd5b6001600160a01b0382165f9081526020819052604090205481151560ff909116151503610268576040516349271a0f60e11b81526001600160a01b038316600482015281151560248201526044015b60405180910390fd5b6001600160a01b0382165f8181526020818152604091829020805460ff191685151590811790915591519182527fae63067d43ac07563b7eb8db6595635fc77f1578a2a5ea06ba91b63e2afa37e2910160405180910390a25050565b60016102d360208301836109ca565b60038111156102e4576102e46109b6565b03610329576103266102fc60408301602084016109ef565b61030c60608401604085016109ef565b61031c60808501606086016109ef565b8460a0013561056c565b50565b600261033860208301836109ca565b6003811115610349576103496109b6565b036103b6578060a00135600114610379576040516369f9582760e01b815260a0820135600482015260240161025f565b61032661038c60408301602084016109ef565b61039c60608401604085016109ef565b6103ac60808501606086016109ef565b8460800135610660565b60036103c560208301836109ca565b60038111156103d6576103d66109b6565b0361041d576103266103ee60408301602084016109ef565b6103fe60608401604085016109ef565b61040e60808501606086016109ef565b84608001358560a00135610715565b604051631e4cbc7f60e21b815260040160405180910390fd5b808280631759616b60e11b6020525f5b8381101561055f57823582018035803b61046b57635f15d6725f52806020526024601cfd5b60a08201358060051b60c0018060808501351460a0606086013514168185013583141615905080156104a657633ae8821360e21b5f5260045ffd5b506020860195506080602084016024378060061b60400190508060a00160a4525f8160c401528060c4018160a0850160c4375f808260205f875af1935083610550573d1561053057601f3d0160051c91508060051c826003028184111561051a578184036003028280028580020360091c01015b5a60208201101561052d573d5f803e3d5ffd5b50505b6357e222f160e11b5f528260045260c0606452608451602001608452805ffd5b50505050600181019050610446565b5050505060806040525050565b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166106515780873b15151661065157806106405781610623573d1561060257601f3d0160051c8360051c81600302818311156105eb578183036003028280028480020360091c01015b5a6020820110156105fe573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b833b61067757635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af180610707573d156106e557601f3d0160051c8260051c81600302818311156106ce578183036003028280028480020360091c01015b5a6020820110156106e1573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b61072c57635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af1806107d1573d156107b057601f3d0160051c8560051c8160030281831115610799578183036003028280028480020360091c01015b5a6020820110156107ac573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b5f8083601f8401126107fc575f80fd5b50813567ffffffffffffffff811115610813575f80fd5b60208301915083602060c08302850101111561082d575f80fd5b9250929050565b5f8060208385031215610845575f80fd5b823567ffffffffffffffff81111561085b575f80fd5b610867858286016107ec565b90969095509350505050565b5f8083601f840112610883575f80fd5b50813567ffffffffffffffff81111561089a575f80fd5b6020830191508360208260051b850101111561082d575f80fd5b5f805f80604085870312156108c7575f80fd5b843567ffffffffffffffff808211156108de575f80fd5b6108ea888389016107ec565b90965094506020870135915080821115610902575f80fd5b5061090f87828801610873565b95989497509550505050565b5f806020838503121561092c575f80fd5b823567ffffffffffffffff811115610942575f80fd5b61086785828601610873565b80356001600160a01b0381168114610964575f80fd5b919050565b5f806040838503121561097a575f80fd5b6109838361094e565b915060208301358015158114610997575f80fd5b809150509250929050565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52602160045260245ffd5b5f602082840312156109da575f80fd5b8135600481106109e8575f80fd5b9392505050565b5f602082840312156109ff575f80fd5b6109e88261094e56fea164736f6c6343000818000a","storage":{}},"0xaa33d7188eb4b4a51c37199eaad2f73cf2bf0204":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0xac52f68f31577e44ae0c7e95a42dc9eb574b9383":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a424740014610090575b600080fd5b610059610054366004610cac565b6100b3565b6040516100669190610d9b565b60405180910390f35b61008261007d366004610dae565b610162565b604051908152602001610066565b6100a361009e366004610cac565b6101d6565b6040519015158152602001610066565b606060005a90506101576100ca6020870187610ddc565b6001546001600160a01b03166040880135846100e960608b018b610df9565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061023592505050565b9150505b9392505050565b600154604051636ccbae5f60e01b8152600481018390526000916001600160a01b031690636ccbae5f90602401602060405180830381865afa1580156101ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d09190610e40565b92915050565b600061022d6101e485610ef1565b600154604080516020601f88018190048102820181019092528681526001600160a01b039092169190879087908190840183828082843760009201919091525061030d92505050565b949350505050565b6060600080876001600160a01b0316866102518b8a8989610355565b60405161025e9190610f9b565b60006040518083038160008787f1925050503d806000811461029c576040519150601f19603f3d011682016040523d82523d6000602084013e6102a1565b606091505b5090925090506102b2603f87610fb7565b5a116102c0576102c0610fd9565b61030082826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061040a565b9998505050505050505050565b600061031a848484610443565b801561022d575060608401516020908101516001600160e01b031990811660009081529182905260409091205460e01b16151561022d565b50565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036103e75760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526103ff82828661058c565b979650505050505050565b6060831561041957508161015b565b8251156104295782518084602001fd5b8160405162461bcd60e51b81526004016103de9190610d9b565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561048a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104ae9190610e40565b9050600061055c8660600151805190602001208688602001516040516020016104fc9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561058257508551610582906001600160a01b03168286610a38565b9695505050505050565b60606001600160e01b03198416631de5861160e31b0361061a576000806000858060200190518101906105bf9190610fef565b92509250925086838383886040516024016105dd9493929190611032565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152935061015b92505050565b6001600160e01b03198416636debcb8d60e01b0361064b576000806000858060200190518101906105bf9190610fef565b6001600160e01b0319841663280d9b0560e01b036106dd576000806000808680602001905181019061067d91906110aa565b935093509350935087848484848a60405160240161069f959493929190611118565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152945061015b9350505050565b6001600160e01b031984166361603dd960e01b0361075c5760008380602001905181019061070b9190610e40565b905084818460405160240161072192919061115d565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152915061015b9050565b6001600160e01b0319841663b34f33c560e01b036107ab5760008060008580602001905181019061078d9190611176565b92509250925086838383886040516024016105dd94939291906111d0565b6001600160e01b03198416633013529360e01b036107dc5760008060008580602001905181019061078d9190611176565b6001600160e01b031984166307eca39560e01b03610830576000806000808680602001905181019061080e9190611209565b935093509350935087848484848a60405160240161069f95949392919061127e565b6001600160e01b031984166368b6154f60e01b03610862576000806000808680602001905181019061067d91906110aa565b6001600160e01b0319841663341de35b60e21b03610894576000806000808680602001905181019061067d91906110aa565b6001600160e01b03198416637a84860f60e11b0361092d576000806000806000878060200190518101906108c891906112cb565b945094509450945094508885858585858c6040516024016108ee96959493929190611360565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152955061015b945050505050565b6001600160e01b03198416636fab95b360e01b036109b2576000808480602001905181019061095c91906113b9565b915091508582828660405160240161097693929190611400565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925061015b915050565b6001600160e01b0319841663288f888960e11b0361015b57600080848060200190518101906109e1919061142b565b91509150858282866040516024016109fb93929190611459565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925050509392505050565b6000806000610a478585610b7a565b90925090506000816004811115610a6057610a60611489565b148015610a7e5750856001600160a01b0316826001600160a01b0316145b15610a8e5760019250505061015b565b600080876001600160a01b0316631626ba7e60e01b8888604051602401610ab692919061115d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051610af49190610f9b565b600060405180830381855afa9150503d8060008114610b2f576040519150601f19603f3d011682016040523d82523d6000602084013e610b34565b606091505b5091509150818015610b47575080516020145b8015610b6e57508051630b135d3f60e11b90610b6c9083016020908101908401610e40565b145b98975050505050505050565b6000808251604103610bb05760208301516040840151606085015160001a610ba487828585610bbf565b94509450505050610bb8565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610bf65750600090506003610ca3565b8460ff16601b14158015610c0e57508460ff16601c14155b15610c1f5750600090506004610ca3565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610c73573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610c9c57600060019250925050610ca3565b9150600090505b94509492505050565b600080600060408486031215610cc157600080fd5b833567ffffffffffffffff80821115610cd957600080fd5b9085019060808288031215610ced57600080fd5b90935060208501359080821115610d0357600080fd5b818601915086601f830112610d1757600080fd5b813581811115610d2657600080fd5b876020828501011115610d3857600080fd5b6020830194508093505050509250925092565b60005b83811015610d66578181015183820152602001610d4e565b50506000910152565b60008151808452610d87816020860160208601610d4b565b601f01601f19169290920160200192915050565b60208152600061015b6020830184610d6f565b600060208284031215610dc057600080fd5b5035919050565b6001600160a01b038116811461035257600080fd5b600060208284031215610dee57600080fd5b813561015b81610dc7565b6000808335601e19843603018112610e1057600080fd5b83018035915067ffffffffffffffff821115610e2b57600080fd5b602001915036819003821315610bb857600080fd5b600060208284031215610e5257600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610e9257610e92610e59565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ec157610ec1610e59565b604052919050565b600067ffffffffffffffff821115610ee357610ee3610e59565b50601f01601f191660200190565b600060808236031215610f0357600080fd5b610f0b610e6f565b8235610f1681610dc7565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610f4657600080fd5b840136601f820112610f5757600080fd5b8035610f6a610f6582610ec9565b610e98565b8181523684838501011115610f7e57600080fd5b818484018583013760009181019093015250606082015292915050565b60008251610fad818460208701610d4b565b9190910192915050565b600082610fd457634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b60008060006060848603121561100457600080fd5b835161100f81610dc7565b602085015190935061102081610dc7565b80925050604084015190509250925092565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061058290830184610d6f565b600082601f83011261107657600080fd5b8151611084610f6582610ec9565b81815284602083860101111561109957600080fd5b61022d826020830160208701610d4b565b600080600080608085870312156110c057600080fd5b84516110cb81610dc7565b60208601519094506110dc81610dc7565b60408601516060870151919450925067ffffffffffffffff81111561110057600080fd5b61110c87828801611065565b91505092959194509250565b6001600160a01b038681168252851660208201526040810184905260a06060820181905260009061114b90830185610d6f565b8281036080840152610b6e8185610d6f565b82815260406020820152600061022d6040830184610d6f565b60008060006060848603121561118b57600080fd5b835161119681610dc7565b60208501516040860151919450925067ffffffffffffffff8111156111ba57600080fd5b6111c686828701611065565b9150509250925092565b60018060a01b03851681528360208201526080604082015260006111f76080830185610d6f565b82810360608401526103ff8185610d6f565b6000806000806080858703121561121f57600080fd5b845161122a81610dc7565b60208601516040870151919550935067ffffffffffffffff8082111561124f57600080fd5b61125b88838901611065565b9350606087015191508082111561127157600080fd5b5061110c87828801611065565b60018060a01b038616815284602082015260a0604082015260006112a560a0830186610d6f565b82810360608401526112b78186610d6f565b90508281036080840152610b6e8185610d6f565b600080600080600060a086880312156112e357600080fd5b85516112ee81610dc7565b60208701519095506112ff81610dc7565b60408701516060880151919550935067ffffffffffffffff8082111561132457600080fd5b61133089838a01611065565b9350608088015191508082111561134657600080fd5b5061135388828901611065565b9150509295509295909350565b6001600160a01b038781168252861660208201526040810185905260c06060820181905260009061139390830186610d6f565b82810360808401526113a58186610d6f565b905082810360a08401526103008185610d6f565b600080604083850312156113cc57600080fd5b82519150602083015167ffffffffffffffff8111156113ea57600080fd5b6113f685828601611065565b9150509250929050565b8381526060602082015260006114196060830185610d6f565b82810360408401526105828185610d6f565b6000806040838503121561143e57600080fd5b825161144981610dc7565b6020939093015192949293505050565b60018060a01b03841681528260208201526060604082015260006114806060830184610d6f565b95945050505050565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a","storage":{"0x1":"0x7bb6cd9be29fab783c0b494a06fed8b2e2596b7a","0xd8b896d609e853134f3f02ce62d8049b2fdfe9356134f6d548fb1beda30db79":"0x30135293","0x4f457f36b92dc6b16c281e5877e2d8d39630135c1b7246fa9174035e1efcefbd":"0x6fab95b3","0x6b7ba3fe9941e089de60543da4a1deaef065baa963222951b2f9a138f9960820":"0x6debcb8d","0x70cff8e4ee4af5aa154324d45bcf258212c235bbe79f0707bb6273110ef4e13a":"0xf5090c1e","0x73efb0e44094dbabc6bbeecd3be1d81f272157c2dae2d647e6315f150b0b1dd2":"0xd0778d6c","0x8b1c4edded6644848281eab03ac2c319242d62b2057cffa3dd4540715bbc155e":"0xef2c3088","0xbeb5ea8fc2aeae43b7170220434aa4429fb067f0866ae25514b29f647641ca8c":"0x511f1112","0xca659f6eb372ce950e69d4d474290a6a4285f6a06a6128ca9f45419371a1e997":"0xb34f33c5","0xd12e300b5f35ba5198dd81dab97a512a154a0ad0e2cda788abdc22deba64f2a7":"0x280d9b05","0xd5453e7f4fff276a1d42f717d1db50865c284ae707a15bd6a590a3895656f27c":"0x7eca395","0xea2575ae4056f10294a848ca5ed6d215dffd1b80838142770bc441f7df607d71":"0x61603dd9","0xf8ca3ef1e3d09a0d88e209301f12626c90bec3ea586d4bce2c7a58e7eae8278f":"0x68b6154f"}},"0xb17aae5b3a7815433fc82cfd67ea245767894f03":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061012a5760003560e01c80638d839ffe116100ab578063aeb8ce9b1161006f578063aeb8ce9b146105d7578063ce1e09c014610688578063f14fcbc81461069d578063f2fde38b146106c7578063f49826be146106fa578063f7a16963146107b95761012a565b80638d839ffe1461045d5780638da5cb5b146104725780638f32d59b146104a35780639791c097146104b8578063acf1a841146105695761012a565b80637e324479116100f25780637e324479146102b8578063839df945146102e857806383e7f6ff1461031257806385f6d155146103c55780638a95b09f146104485761012a565b806301ffc9a71461012f5780633ccfd60b146101775780633d86c52f1461018e578063530e784f14610270578063715018a6146102a3575b600080fd5b34801561013b57600080fd5b506101636004803603602081101561015257600080fd5b50356001600160e01b031916610881565b604080519115158252519081900360200190f35b34801561018357600080fd5b5061018c610a12565b005b34801561019a57600080fd5b5061025e600480360360a08110156101b157600080fd5b810190602081018135600160201b8111156101cb57600080fd5b8201836020820111156101dd57600080fd5b803590602001918460018302840111600160201b831117156101fe57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b0383358116945060208401359360408101358216935060600135169050610a53565b60408051918252519081900360200190f35b34801561027c57600080fd5b5061018c6004803603602081101561029357600080fd5b50356001600160a01b0316610b42565b3480156102af57600080fd5b5061018c610ba3565b3480156102c457600080fd5b5061018c600480360360408110156102db57600080fd5b5080359060200135610bfe565b3480156102f457600080fd5b5061025e6004803603602081101561030b57600080fd5b5035610c1a565b34801561031e57600080fd5b5061025e6004803603604081101561033557600080fd5b810190602081018135600160201b81111561034f57600080fd5b82018360208201111561036157600080fd5b803590602001918460018302840111600160201b8311171561038257600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505091359250610c2c915050565b61018c600480360360808110156103db57600080fd5b810190602081018135600160201b8111156103f557600080fd5b82018360208201111561040757600080fd5b803590602001918460018302840111600160201b8311171561042857600080fd5b91935091506001600160a01b038135169060208101359060400135610d9e565b34801561045457600080fd5b5061025e610de9565b34801561046957600080fd5b5061025e610df0565b34801561047e57600080fd5b50610487610df6565b604080516001600160a01b039092168252519081900360200190f35b3480156104af57600080fd5b50610163610e05565b3480156104c457600080fd5b50610163600480360360208110156104db57600080fd5b810190602081018135600160201b8111156104f557600080fd5b82018360208201111561050757600080fd5b803590602001918460018302840111600160201b8311171561052857600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610e16945050505050565b61018c6004803603604081101561057f57600080fd5b810190602081018135600160201b81111561059957600080fd5b8201836020820111156105ab57600080fd5b803590602001918460018302840111600160201b831117156105cc57600080fd5b919350915035610e2b565b3480156105e357600080fd5b50610163600480360360208110156105fa57600080fd5b810190602081018135600160201b81111561061457600080fd5b82018360208201111561062657600080fd5b803590602001918460018302840111600160201b8311171561064757600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610fcf945050505050565b34801561069457600080fd5b5061025e611069565b3480156106a957600080fd5b5061018c600480360360208110156106c057600080fd5b503561106f565b3480156106d357600080fd5b5061018c600480360360208110156106ea57600080fd5b50356001600160a01b03166110a1565b34801561070657600080fd5b5061025e6004803603606081101561071d57600080fd5b810190602081018135600160201b81111561073757600080fd5b82018360208201111561074957600080fd5b803590602001918460018302840111600160201b8311171561076a57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b0383351693505050602001356110bb565b61018c600480360360c08110156107cf57600080fd5b810190602081018135600160201b8111156107e957600080fd5b8201836020820111156107fb57600080fd5b803590602001918460018302840111600160201b8311171561081c57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b038335811694506020840135936040810135935060608101358216925060800135166110d3565b604080517f737570706f727473496e74657266616365286279746573342900000000000000815290519081900360190190206000906001600160e01b0319838116911614806109c05750604080517472656e657728737472696e672c75696e743235362960581b815290519081900360150181209080602861186a8239604080519182900360280182206e636f6d6d697428627974657333322960881b8352905191829003600f01822090925090806026611892823960260190506040518091039020604051808070617661696c61626c6528737472696e672960781b8152506011019050604051809103902060405180807f72656e74507269636528737472696e672c75696e7432353629000000000000008152506019019050604051809103902018181818186001600160e01b031916826001600160e01b031916145b80610a0c5750604051808061182a60409139604080519182900301812091508060426118b8823960420190506040518091039020186001600160e01b031916826001600160e01b031916145b92915050565b610a1a610e05565b610a2357600080fd5b6040513390303180156108fc02916000818181858888f19350505050158015610a50573d6000803e3d6000fd5b50565b845160208601206000906001600160a01b038416158015610a7b57506001600160a01b038316155b15610acb57604080516020808201939093526bffffffffffffffffffffffff19606089901b1681830152605480820188905282518083039091018152607490910190915280519101209050610b39565b6001600160a01b038416610ade57600080fd5b604080516020808201939093526bffffffffffffffffffffffff19606089811b82168385015287811b8216605484015286901b166068820152607c80820188905282518083039091018152609c909101909152805191012090505b95945050505050565b610b4a610e05565b610b5357600080fd5b600280546001600160a01b0319166001600160a01b0383811691909117918290556040519116907ff261845a790fe29bbd6631e2ca4a5bdc83e6eed7c3271d9590d97287e00e912390600090a250565b610bab610e05565b610bb457600080fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b610c06610e05565b610c0f57600080fd5b600391909155600455565b60056020526000908152604090205481565b815160208084019190912060025460015460408051636b727d4360e11b81526004810185905290516000956001600160a01b03948516946350e9a715948a9491169263d6e4fa8692602480840193919291829003018186803b158015610c9157600080fd5b505afa158015610ca5573d6000803e3d6000fd5b505050506040513d6020811015610cbb57600080fd5b50516040516001600160e01b031960e085901b168152602481018290526044810188905260606004820190815283516064830152835189928291608490910190602087019080838360005b83811015610d1e578181015183820152602001610d06565b50505050905090810190601f168015610d4b5780820380516001836020036101000a031916815260200191505b5094505050505060206040518083038186803b158015610d6a57600080fd5b505afa158015610d7e573d6000803e3d6000fd5b505050506040513d6020811015610d9457600080fd5b5051949350505050565b610de285858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250889350879250869150806110d3565b5050505050565b6224ea0081565b60035481565b6000546001600160a01b031690565b6000546001600160a01b0316331490565b60006003610e2383611646565b101592915050565b6000610e6e84848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250869250610c2c915050565b905080341015610e7d57600080fd5b60008484604051808383808284376040805193909101839003832060015463c475abff60e01b855260048501829052602485018b90529151909750600096506001600160a01b03909116945063c475abff93506044808401936020935082900301818787803b158015610eef57600080fd5b505af1158015610f03573d6000803e3d6000fd5b505050506040513d6020811015610f1957600080fd5b5051905034831015610f565760405133903485900380156108fc02916000818181858888f19350505050158015610f54573d6000803e3d6000fd5b505b817f3da24c024582931cfaf8267d8ed24d13a82a8068d5bd337d30ec45cea4e506ae8787868560405180806020018481526020018381526020018281038252868682818152602001925080828437600083820152604051601f909101601f191690920182900397509095505050505050a2505050505050565b80516020820120600090610fe283610e16565b80156110625750600154604080516312dc929d60e31b81526004810184905290516001600160a01b03909216916396e494e891602480820192602092909190829003018186803b15801561103557600080fd5b505afa158015611049573d6000803e3d6000fd5b505050506040513d602081101561105f57600080fd5b50515b9392505050565b60045481565b6004546000828152600560205260409020544291011061108e57600080fd5b6000908152600560205260409020429055565b6110a9610e05565b6110b257600080fd5b610a508161172e565b60006110cb848484600080610a53565b949350505050565b60006110e28787868686610a53565b905060006110f188878461179c565b885160208a01209091508060006001600160a01b038716156114ac5760015460408051633f2891eb60e21b815260048101859052306024820152604481018c905290516001600160a01b039092169163fca247ac916064808201926020929091908290030181600087803b15801561116857600080fd5b505af115801561117c573d6000803e3d6000fd5b505050506040513d602081101561119257600080fd5b505160015460408051630ddf7fcb60e41b815290519293506000926001600160a01b039092169163ddf7fcb091600480820192602092909190829003018186803b1580156111df57600080fd5b505afa1580156111f3573d6000803e3d6000fd5b505050506040513d602081101561120957600080fd5b50516040805160208181019390935280820187905281518082038301815260608201808452815191850191909120600154633f15457f60e01b90925292519294506001600160a01b031692633f15457f92606480840193829003018186803b15801561127457600080fd5b505afa158015611288573d6000803e3d6000fd5b505050506040513d602081101561129e57600080fd5b505160408051630c4b7b8560e11b8152600481018490526001600160a01b038b8116602483015291519190921691631896f70a91604480830192600092919082900301818387803b1580156112f257600080fd5b505af1158015611306573d6000803e3d6000fd5b505050506001600160a01b0387161561139257876001600160a01b031663d5fa2b0082896040518363ffffffff1660e01b815260040180838152602001826001600160a01b03166001600160a01b0316815260200192505050600060405180830381600087803b15801561137957600080fd5b505af115801561138d573d6000803e3d6000fd5b505050505b60015460408051630a3b53db60e21b8152600481018690526001600160a01b038e81166024830152915191909216916328ed4f6c91604480830192600092919082900301818387803b1580156113e757600080fd5b505af11580156113fb573d6000803e3d6000fd5b50505050600160009054906101000a90046001600160a01b03166001600160a01b03166323b872dd308d866040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050600060405180830381600087803b15801561148e57600080fd5b505af11580156114a2573d6000803e3d6000fd5b505050505061154c565b6001600160a01b038616156114c057600080fd5b60015460408051633f2891eb60e21b8152600481018590526001600160a01b038d81166024830152604482018d90529151919092169163fca247ac9160648083019260209291908290030181600087803b15801561151d57600080fd5b505af1158015611531573d6000803e3d6000fd5b505050506040513d602081101561154757600080fd5b505190505b896001600160a01b0316837fca6abbe9d7f11422cb6ca7629fbf6fe9efb1c621f71ce8f02b9f2a230097404f8d87856040518080602001848152602001838152602001828103825285818151815260200191508051906020019080838360005b838110156115c45781810151838201526020016115ac565b50505050905090810190601f1680156115f15780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a3833411156116395760405133903486900380156108fc02916000818181858888f19350505050158015611637573d6000803e3d6000fd5b505b5050505050505050505050565b8051600090819081905b8082101561172557600085838151811061166657fe5b01602001516001600160f81b0319169050600160ff1b81101561168e57600183019250611719565b600760fd1b6001600160f81b0319821610156116af57600283019250611719565b600f60fc1b6001600160f81b0319821610156116d057600383019250611719565b601f60fb1b6001600160f81b0319821610156116f157600483019250611719565b603f60fa1b6001600160f81b03198216101561171257600583019250611719565b6006830192505b50600190920191611650565b50909392505050565b6001600160a01b03811661174157600080fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b600354600082815260056020526040812054909142910111156117be57600080fd5b600454600083815260056020526040902054429101116117dd57600080fd5b6117e684610fcf565b6117ef57600080fd5b600082815260056020526040812081905561180a8585610c2c565b90506224ea0084101561181c57600080fd5b803410156110cb57600080fdfe6d616b65436f6d6d69746d656e7457697468436f6e66696728737472696e672c616464726573732c627974657333322c616464726573732c6164647265737329726567697374657228737472696e672c616464726573732c75696e743235362c62797465733332296d616b65436f6d6d69746d656e7428737472696e672c616464726573732c6279746573333229726567697374657257697468436f6e66696728737472696e672c616464726573732c75696e743235362c627974657333322c616464726573732c6164647265737329a265627a7a72315820ba74b4e49afb22de09a9ebda5d073d93e2a2a7b2530ce50def390c32cac92ea064736f6c634300050c0032","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1":"0xc965345edac823d56812cd20a10316233916a605","0x2":"0xec71e4e674fe0f432693dc2b935c34bd2774c003","0x3":"0x258","0x4":"0x15180"}},"0xbdefcf6429d0ac68236a6beb321cbd2ce66b463c":{"nonce":2,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c80636d435421116100885780637b37e561116100635780637b37e561146102435780638b9e028b14610256578063906c87cc1461027657806393790f4414610289575f80fd5b80636d435421146101eb5780636e9bfd9f146101fe578063794593bc14610230575f80fd5b806314afd79e116100c357806314afd79e1461018157806333bc8572146101945780634e3f9580146101b757806351710e45146101d8575f80fd5b8063027cc764146100e95780630a96ad391461011957806313ad9cab1461016c575b5f80fd5b6100fc6100f7366004610c39565b61029c565b6040516001600160a01b0390911681526020015b60405180910390f35b604080517f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f81527fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167602082015201610110565b61017f61017a366004610c61565b610339565b005b6100fc61018f366004610ca9565b610531565b6101a76101a2366004610cc9565b61055c565b6040519015158152602001610110565b6101ca6101c5366004610ca9565b610595565b604051908152602001610110565b61017f6101e6366004610ca9565b6105bd565b61017f6101f9366004610cc9565b6106be565b61021161020c366004610cfa565b6107ae565b604080516001600160a01b039093168352901515602083015201610110565b6100fc61023e366004610d11565b610838565b61017f610251366004610ca9565b610a0a565b610269610264366004610ca9565b610aab565b6040516101109190610d32565b6100fc610284366004610ca9565b610b28565b6101ca610297366004610ca9565b610b53565b5f6102a683610b8e565b6001600160a01b0383165f908152602081905260409020600301548083106102f157604051636ceb340b60e01b81526001600160a01b03851660048201526024015b60405180910390fd5b6001600160a01b0384165f90815260208190526040902060030180548490811061031d5761031d610d7e565b5f918252602090912001546001600160a01b0316949350505050565b61034283610bc6565b60405163c4e8fcb560e01b81526001600160a01b038381166004830152821515602483015284169063c4e8fcb5906044015f604051808303815f87803b15801561038a575f80fd5b505af115801561039c573d5f803e3d5ffd5b505050506001600160a01b038381165f908152602081815260408083209386168352600484019091529020548015158380156103d6575080155b15610425576003830180546001810182555f828152602080822090920180546001600160a01b0319166001600160a01b038a169081179091559254928152600486019091526040902055610529565b831580156104305750805b156105295760038301545f198301905f9061044d90600190610d92565b90508181146104d8575f85600301828154811061046c5761046c610d7e565b5f918252602090912001546003870180546001600160a01b03909216925082918590811061049c5761049c610d7e565b5f91825260208083209190910180546001600160a01b0319166001600160a01b0394851617905592909116815260048701909152604090208490555b846003018054806104eb576104eb610db7565b5f828152602080822083015f1990810180546001600160a01b03191690559092019092556001600160a01b0389168252600487019052604081205550505b505050505050565b5f61053b82610b8e565b506001600160a01b039081165f908152602081905260409020600101541690565b5f61056683610b8e565b506001600160a01b039182165f9081526020818152604080832093909416825260049092019091522054151590565b5f61059f82610b8e565b506001600160a01b03165f9081526020819052604090206003015490565b6105c681610b8e565b6001600160a01b038181165f9081526020819052604090206002015416331461060d576040516388c3a11560e01b81526001600160a01b03821660048201526024016102e8565b6040515f907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da908290a26001600160a01b038082165f818152602081905260408082206002810180546001600160a01b031916905560010154905133949190911692917fc8894f26f396ce8c004245c8b7cd1b92103a6e4302fcbab883987149ac01b7ec91a46001600160a01b03165f90815260208190526040902060010180546001600160a01b03191633179055565b6106c782610bc6565b6001600160a01b0381166106f95760405163a388d26360e01b81526001600160a01b03831660048201526024016102e8565b6001600160a01b038083165f9081526020819052604090206002015481169082160361074b576040516365e0406560e11b81526001600160a01b038084166004830152821660248201526044016102e8565b6040516001600160a01b038216907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da905f90a26001600160a01b039182165f90815260208190526040902060020180546001600160a01b03191691909216179055565b5f8060ff60f81b30847f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f6040516020016107eb9493929190610dcb565b60408051601f198184030181529190528051602090910120936001600160a01b0385163f7fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167149350915050565b5f6001600160a01b0382166108605760405163267eaa8160e21b815260040160405180910390fd5b606083901c3314610884576040516332db94d160e21b815260040160405180910390fd5b6040516108c3906001600160f81b031990309086907f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f90602001610dcb565b604051602081830303815290604052805190602001205f1c90507fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167816001600160a01b03163f0361093257604051633194665960e11b81526001600160a01b03821660048201526024016102e8565b8260405161093f90610c16565b8190604051809103905ff590508015801561095c573d5f803e3d5ffd5b50506001600160a01b038181165f81815260208181526040918290206001810180546001600160a01b03191695881695909517909455868455815192835282018690527f4397af6128d529b8ae0442f99db1296d5136062597a15bbc61c1b2a6431a7d15910160405180910390a16040516001600160a01b03808516915f918516907fc8894f26f396ce8c004245c8b7cd1b92103a6e4302fcbab883987149ac01b7ec908390a45092915050565b610a1381610bc6565b6001600160a01b038181165f9081526020819052604090206002015416610a58576040516335809b0b60e11b81526001600160a01b03821660048201526024016102e8565b6040515f907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da908290a26001600160a01b03165f90815260208190526040902060020180546001600160a01b0319169055565b6060610ab682610b8e565b6001600160a01b0382165f908152602081815260409182902060030180548351818402810184019094528084529091830182828015610b1c57602002820191905f5260205f20905b81546001600160a01b03168152600190910190602001808311610afe575b50505050509050919050565b5f610b3282610b8e565b506001600160a01b039081165f908152602081905260409020600201541690565b6001600160a01b0381165f9081526020819052604090205480610b89576040516304ca820960e41b815260040160405180910390fd5b919050565b6001600160a01b0381165f90815260208190526040902054610bc3576040516304ca820960e41b815260040160405180910390fd5b50565b610bcf81610b8e565b6001600160a01b038181165f90815260208190526040902060010154163314610bc35760405163d4ed9a1760e01b81526001600160a01b03821660048201526024016102e8565b610a4180610e0583390190565b80356001600160a01b0381168114610b89575f80fd5b5f8060408385031215610c4a575f80fd5b610c5383610c23565b946020939093013593505050565b5f805f60608486031215610c73575f80fd5b610c7c84610c23565b9250610c8a60208501610c23565b915060408401358015158114610c9e575f80fd5b809150509250925092565b5f60208284031215610cb9575f80fd5b610cc282610c23565b9392505050565b5f8060408385031215610cda575f80fd5b610ce383610c23565b9150610cf160208401610c23565b90509250929050565b5f60208284031215610d0a575f80fd5b5035919050565b5f8060408385031215610d22575f80fd5b82359150610cf160208401610c23565b602080825282518282018190525f9190848201906040850190845b81811015610d725783516001600160a01b031683529284019291840191600101610d4d565b50909695505050505050565b634e487b7160e01b5f52603260045260245ffd5b81810381811115610db157634e487b7160e01b5f52601160045260245ffd5b92915050565b634e487b7160e01b5f52603160045260245ffd5b6001600160f81b031994909416845260609290921b6bffffffffffffffffffffffff19166001840152601583015260358201526055019056fe60a060405234801561000f575f80fd5b5033608052608051610a1561002c5f395f6101d20152610a155ff3fe608060405234801561000f575f80fd5b506004361061004a575f3560e01c80634ce34aa21461004e578063899e104c1461007e5780638df25d9214610091578063c4e8fcb5146100a4575b5f80fd5b61006161005c366004610834565b6100b9565b6040516001600160e01b0319909116815260200160405180910390f35b61006161008c3660046108b4565b610121565b61006161009f36600461091b565b61018a565b6100b76100b2366004610969565b6101c7565b005b5f335f525f60205260405f20546100dd576349ed56f960e11b5f523360045260245ffd5b815f5b81811015610110576101088585838181106100fd576100fd6109a2565b905060c002016102c4565b6001016100e0565b50632671a55160e11b949350505050565b5f335f525f60205260405f2054610145576349ed56f960e11b5f523360045260245ffd5b835f5b8181101561016d576101658787838181106100fd576100fd6109a2565b600101610148565b506101788484610436565b50632267841360e21b95945050505050565b5f335f525f60205260405f20546101ae576349ed56f960e11b5f523360045260245ffd5b6101b88383610436565b506346f92ec960e11b92915050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610210576040516336abb4df60e11b815260040160405180910390fd5b6001600160a01b0382165f9081526020819052604090205481151560ff909116151503610268576040516349271a0f60e11b81526001600160a01b038316600482015281151560248201526044015b60405180910390fd5b6001600160a01b0382165f8181526020818152604091829020805460ff191685151590811790915591519182527fae63067d43ac07563b7eb8db6595635fc77f1578a2a5ea06ba91b63e2afa37e2910160405180910390a25050565b60016102d360208301836109ca565b60038111156102e4576102e46109b6565b03610329576103266102fc60408301602084016109ef565b61030c60608401604085016109ef565b61031c60808501606086016109ef565b8460a0013561056c565b50565b600261033860208301836109ca565b6003811115610349576103496109b6565b036103b6578060a00135600114610379576040516369f9582760e01b815260a0820135600482015260240161025f565b61032661038c60408301602084016109ef565b61039c60608401604085016109ef565b6103ac60808501606086016109ef565b8460800135610660565b60036103c560208301836109ca565b60038111156103d6576103d66109b6565b0361041d576103266103ee60408301602084016109ef565b6103fe60608401604085016109ef565b61040e60808501606086016109ef565b84608001358560a00135610715565b604051631e4cbc7f60e21b815260040160405180910390fd5b808280631759616b60e11b6020525f5b8381101561055f57823582018035803b61046b57635f15d6725f52806020526024601cfd5b60a08201358060051b60c0018060808501351460a0606086013514168185013583141615905080156104a657633ae8821360e21b5f5260045ffd5b506020860195506080602084016024378060061b60400190508060a00160a4525f8160c401528060c4018160a0850160c4375f808260205f875af1935083610550573d1561053057601f3d0160051c91508060051c826003028184111561051a578184036003028280028580020360091c01015b5a60208201101561052d573d5f803e3d5ffd5b50505b6357e222f160e11b5f528260045260c0606452608451602001608452805ffd5b50505050600181019050610446565b5050505060806040525050565b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166106515780873b15151661065157806106405781610623573d1561060257601f3d0160051c8360051c81600302818311156105eb578183036003028280028480020360091c01015b5a6020820110156105fe573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b833b61067757635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af180610707573d156106e557601f3d0160051c8260051c81600302818311156106ce578183036003028280028480020360091c01015b5a6020820110156106e1573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b61072c57635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af1806107d1573d156107b057601f3d0160051c8560051c8160030281831115610799578183036003028280028480020360091c01015b5a6020820110156107ac573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b5f8083601f8401126107fc575f80fd5b50813567ffffffffffffffff811115610813575f80fd5b60208301915083602060c08302850101111561082d575f80fd5b9250929050565b5f8060208385031215610845575f80fd5b823567ffffffffffffffff81111561085b575f80fd5b610867858286016107ec565b90969095509350505050565b5f8083601f840112610883575f80fd5b50813567ffffffffffffffff81111561089a575f80fd5b6020830191508360208260051b850101111561082d575f80fd5b5f805f80604085870312156108c7575f80fd5b843567ffffffffffffffff808211156108de575f80fd5b6108ea888389016107ec565b90965094506020870135915080821115610902575f80fd5b5061090f87828801610873565b95989497509550505050565b5f806020838503121561092c575f80fd5b823567ffffffffffffffff811115610942575f80fd5b61086785828601610873565b80356001600160a01b0381168114610964575f80fd5b919050565b5f806040838503121561097a575f80fd5b6109838361094e565b915060208301358015158114610997575f80fd5b809150509250929050565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52602160045260245ffd5b5f602082840312156109da575f80fd5b8135600481106109e8575f80fd5b9392505050565b5f602082840312156109ff575f80fd5b6109e88261094e56fea164736f6c6343000818000aa164736f6c6343000818000a","storage":{}},"0xbe5deac45dd1ca4ee18dc2d585d84d3d3cb82b0d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c806341539d4a146100465780634d5505d314610097578063afa764d7146100b1575b600080fd5b6100636004803603602081101561005c57600080fd5b50356100dc565b6040805195865260208601949094528484019290925260608401526001600160a01b03166080830152519081900360a00190f35b61009f610114565b60408051918252519081900360200190f35b6100da600480360360608110156100c757600080fd5b508035906020810135906040013561011a565b005b60006020819052908152604090208054600182015460028301546003840154600490940154929391929091906001600160a01b031685565b60015481565b6101226101eb565b506040805160a0810182528481526020808201858152828401858152426060808601918252336080870181815260018054810180825560009081528089528a81208a518155975188830155955160028801559351600387015551600490950180546001600160a01b0319166001600160a01b0390961695909517909455905486518981529485018890528487018a905295519495919491937fba5de06d22af2685c6c7765f60067f7d2b08c2d29f53cdf14d67f6d1c9bfb527929081900390910190a450505050565b6040518060a001604052806000801916815260200160008152602001600081526020016000815260200160006001600160a01b03168152509056fea164736f6c6343000606000a","storage":{"0x1":"0x0"}},"0xbe92182cab5b84fd18b34881a0c32771e84f5b8b":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061021c5760003560e01c80638da5cb5b11610125578063bebec6b4116100ad578063e985e9c51161007c578063e985e9c514610540578063f059235914610553578063f2fde38b14610566578063ffa1ad7414610579578063ffad6f551461059d57600080fd5b8063bebec6b4146104e7578063bfc5429b146104fa578063c15ae7cf1461050d578063c87b56dd1461052d57600080fd5b8063a81ce6f9116100f4578063a81ce6f91461046d578063ac9650d814610480578063b3f9e4cb146104a0578063b85afd28146104b3578063b98b3526146104d457600080fd5b80638da5cb5b146103f157806391015f6b146103f9578063933c051d1461041b578063a3f4df7e1461043d57600080fd5b80634bd79ed0116101a857806370a082311161017757806370a082311461038d578063715018a6146103a05780637e37479e146103a857806383caffbe146103bb578063869b8884146103ce57600080fd5b80634bd79ed0146103335780634f558e79146103465780636352211e14610359578063672b9f811461036c57600080fd5b80631bd8cc1a116101ef5780631bd8cc1a146102ac5780631be5e7ed146102cc578063276fabb1146102ec578063430c20811461030d578063485cc9551461032057600080fd5b806301ffc9a7146102215780630328075514610249578063081812fc1461026c57806313af403514610297575b600080fd5b61023461022f366004612c9d565b6105b0565b60405190151581526020015b60405180910390f35b61025c610257366004612d0b565b610638565b6040516102409493929190612dfe565b61027f61027a366004612e3c565b61065b565b6040516001600160a01b039091168152602001610240565b6102aa6102a5366004612e6a565b610760565b005b6102bf6102ba366004612d0b565b6107d1565b6040516102409190612e87565b6102df6102da366004612edb565b6107f0565b6040516102409190612f12565b6102ff6102fa366004612f25565b61091b565b604051908152602001610240565b61023461031b366004612f66565b61098f565b6102aa61032e366004612f92565b610aa2565b6102aa610341366004612fcb565b610bf5565b610234610354366004612e3c565b610e51565b61027f610367366004612e3c565b610e5c565b61037f61037a366004613036565b610e67565b604051610240929190613058565b6102ff61039b366004612e6a565b610f97565b6102aa611095565b6102ff6103b6366004612e6a565b6110a9565b6102bf6103c936600461307d565b611118565b6103e16103dc366004612fcb565b6114f0565b60405161024094939291906131bb565b61027f6116e6565b61040c610407366004612d0b565b611714565b60405161024093929190613208565b61042e610429366004612fcb565b611734565b60405161024093929190613234565b6102df604051806040016040528060118152602001702aa7299d10283937bc3c902932b0b232b960791b81525081565b61027f61047b366004612e3c565b6118bd565b61049361048e366004612f25565b61198b565b6040516102409190613277565b61027f6104ae366004612e3c565b611a7f565b6104c66104c1366004612d0b565b611b05565b6040516102409291906132d9565b6102df6104e23660046132fe565b611ce1565b6102df6104f5366004612e6a565b611cfb565b6102df6105083660046132fe565b611d6f565b61052061051b366004612f25565b611d89565b6040516102409190613371565b6102df61053b366004612e3c565b611e37565b61023461054e366004612f92565b611f09565b6102aa610561366004612fcb565b611f54565b6102aa610574366004612e6a565b612018565b6102df604051806040016040528060058152602001640302e352e360dc1b81525081565b6102aa6105ab366004613384565b612085565b60006001600160e01b031982166362526e6360e01b14806105e157506001600160e01b03198216636fa624af60e11b145b806105fc57506001600160e01b031982166308da864d60e31b145b8061061757506001600160e01b03198216638584880360e01b145b8061063257506301ffc9a760e01b6001600160e01b03198316145b92915050565b6000806060806106498787876120d8565b93509350935093505b93509350935093565b60006106668261233a565b61067257506000919050565b61067b826123d2565b6106f25760665460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa1580156106c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106ed91906133bd565b610632565b60655460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa15801561073c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061063291906133bd565b600061076a6116e6565b6001600160a01b0316146107c55760405162461bcd60e51b815260206004820152601e60248201527f50726f78795265616465723a204f574e45525f414c52454144595f534554000060448201526064015b60405180910390fd5b6107ce81612419565b50565b60606107e66107e0848661346a565b83612495565b90505b9392505050565b60606107fb826123d2565b1561088057606554604051631be5e7ed60e01b81526001600160a01b0390911690631be5e7ed9061083490879087908790600401613547565b600060405180830381865afa158015610851573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261087991908101906135b0565b90506107e9565b600061088b83612617565b90506001600160a01b0381163b1561091357604051631be5e7ed60e01b81526001600160a01b03821690631be5e7ed906108cd90889088908890600401613547565b600060405180830381865afa92505050801561090b57506040513d6000823e601f3d908101601f1916820160405261090891908101906135b0565b60015b156109135791505b509392505050565b60655460405163276fabb160e01b81526000916001600160a01b03169063276fabb19061094e908690869060040161366c565b602060405180830381865afa15801561096b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613680565b600061099a8261233a565b6109a657506000610632565b6109af826123d2565b610a2d5760665460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a04573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a289190613699565b6107e9565b60655460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a7e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613699565b600054610100900460ff1615808015610ac25750600054600160ff909116105b80610adc5750303b158015610adc575060005460ff166001145b610b3f5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107bc565b6000805460ff191660011790558015610b62576000805461ff0019166101001790555b606580546001600160a01b038086166001600160a01b0319928316179092556066805492851692909116919091179055610b9a61268a565b610ba261268a565b610baa6126b1565b8015610bf0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b610bfd6126e1565b828114610c4c5760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107bc565b60005b83811015610e4a5760006068868684818110610c6d57610c6d6136bb565b9050602002810190610c7f91906136d1565b604051610c8d929190613717565b908152604051908190036020019020541115610cf1576068858583818110610cb757610cb76136bb565b9050602002810190610cc991906136d1565b604051610cd7929190613717565b90815260200160405180910390206000610cf19190612c18565b60005b838383818110610d0657610d066136bb565b9050602002810190610d189190613727565b9050811015610ddc576068868684818110610d3557610d356136bb565b9050602002810190610d4791906136d1565b604051610d55929190613717565b9081526020016040518091039020848484818110610d7557610d756136bb565b9050602002810190610d879190613727565b83818110610d9757610d976136bb565b9050602002810190610da991906136d1565b82546001810184556000938452602090932090920191610dc991836137f8565b5080610dd4816138cd565b915050610cf4565b507fb2b57b54285120d17f49f2490a39ef791441fd0ad1e6b6818c23262bf91f061c858583818110610e1057610e106136bb565b9050602002810190610e2291906136d1565b604051610e309291906138e6565b60405180910390a180610e42816138cd565b915050610c4f565b5050505050565b60006106328261233a565b600061063282612740565b606080610e73836123d2565b15610ef95760655460405163672b9f8160e01b815260048101869052602481018590526001600160a01b039091169063672b9f8190604401600060405180830381865afa158015610ec8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610ef091908101906138fa565b91509150610f90565b6000610f0484612617565b90506001600160a01b0381163b15610f8e5760405163672b9f8160e01b815260048101869052602481018590526001600160a01b0382169063672b9f8190604401600060405180830381865afa925050508015610f8357506040513d6000823e601f3d908101601f19168201604052610f8091908101906138fa565b60015b15610f8e5790935091505b505b9250929050565b6065546040516370a0823160e01b81526001600160a01b03838116600483015260009283929116906370a0823190602401602060405180830381865afa158015610fe5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110099190613680565b6066549091506001600160a01b031615610632576066546040516370a0823160e01b81526001600160a01b038581166004830152909116906370a0823190602401602060405180830381865afa158015611067573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061108b9190613680565b6107e9908261395d565b61109d6126e1565b6110a76000612419565b565b606554604051633f1ba3cf60e11b81526001600160a01b0383811660048301526000921690637e37479e90602401602060405180830381865afa1580156110f4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190613680565b606060006067868660405161112e929190613717565b9081526020016040518091039020805461114790613770565b80601f016020809104026020016040519081016040528092919081815260200182805461117390613770565b80156111c05780601f10611195576101008083540402835291602001916111c0565b820191906000526020600020905b8154815290600101906020018083116111a357829003601f168201915b5050505050905080516000036111d657506114e8565b6000604051806040016040528060068152602001653a37b5b2b71760d11b81525090506000604051806040016040528060088152602001672e6164647265737360c01b81525090506000604051806040016040528060018152602001601760f91b815250905060008385838c8c868d8d8a60405160200161125f99989796959493929190613970565b6040516020818303038152906040529050600060688260405161128291906139f3565b9081526020016040518091039020805480602002602001604051908101604052809291908181526020016000905b8282101561135c5783829060005260206000200180546112cf90613770565b80601f01602080910402602001604051908101604052809291908181526020018280546112fb90613770565b80156113485780601f1061131d57610100808354040283529160200191611348565b820191906000526020600020905b81548152906001019060200180831161132b57829003601f168201915b5050505050815260200190600101906112b0565b50505050905080516003611370919061395d565b6001600160401b03811115611387576113876133da565b6040519080825280602002602001820160405280156113ba57816020015b60608152602001906001900390816113a55790505b50965081876000815181106113d1576113d16136bb565b602002602001018190525060005b815181101561143e578181815181106113fa576113fa6136bb565b602002602001015188826001611410919061395d565b81518110611420576114206136bb565b60200260200101819052508080611436906138cd565b9150506113df565b508486848d8d8860405160200161145a96959493929190613a0f565b6040516020818303038152906040528782516001611478919061395d565b81518110611488576114886136bb565b60200260200101819052508486856040516020016114a893929190613a72565b60405160208183030381529060405287825160026114c6919061395d565b815181106114d6576114d66136bb565b60200260200101819052505050505050505b949350505050565b6060808080846001600160401b0381111561150d5761150d6133da565b604051908082528060200260200182016040528015611536578160200160208202803683370190505b509350846001600160401b03811115611551576115516133da565b60405190808252806020026020018201604052801561157a578160200160208202803683370190505b509250846001600160401b03811115611595576115956133da565b6040519080825280602002602001820160405280156115c857816020015b60608152602001906001900390816115b35790505b509150846001600160401b038111156115e3576115e36133da565b60405190808252806020026020018201604052801561161657816020015b60608152602001906001900390816116015790505b50905060005b858110156116da57611647898989898581811061163b5761163b6136bb565b905060200201356120d8565b888581518110611659576116596136bb565b60200260200101888681518110611672576116726136bb565b6020026020010188878151811061168b5761168b6136bb565b602002602001018888815181106116a4576116a46136bb565b6020908102919091010193909352929091526001600160a01b0392831690915291169052806116d2816138cd565b91505061161c565b50945094509450949050565b7fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c8121905546001600160a01b031690565b6000806060611724868686612761565b9250925092505b93509350939050565b60608080836001600160401b03811115611750576117506133da565b604051908082528060200260200182016040528015611779578160200160208202803683370190505b509250836001600160401b03811115611794576117946133da565b6040519080825280602002602001820160405280156117bd578160200160208202803683370190505b509150836001600160401b038111156117d8576117d86133da565b60405190808252806020026020018201604052801561180b57816020015b60608152602001906001900390816117f65790505b50905060005b848110156118b25761183c8888888885818110611830576118306136bb565b90506020020135612761565b86848151811061184e5761184e6136bb565b60200260200101868581518110611867576118676136bb565b60200260200101868681518110611880576118806136bb565b60209081029190910101929092526001600160a01b0392831690915291169052806118aa816138cd565b915050611811565b509450945094915050565b606554604051634f558e7960e01b8152600481018390526000916001600160a01b031690634f558e7990602401602060405180830381865afa158015611907573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061192b9190613699565b156119415750506065546001600160a01b031690565b6066546001600160a01b03161580159061196d575060006119618361296c565b6001600160a01b031614155b156119835750506066546001600160a01b031690565b506000919050565b6060816001600160401b038111156119a5576119a56133da565b6040519080825280602002602001820160405280156119d857816020015b60608152602001906001900390816119c35790505b50905060005b82811015611a7857611a48308585848181106119fc576119fc6136bb565b9050602002810190611a0e91906136d1565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061299e92505050565b828281518110611a5a57611a5a6136bb565b60200260200101819052508080611a70906138cd565b9150506119de565b5092915050565b6000611a8a8261233a565b611a9657506000919050565b611a9f826123d2565b611ad45760665460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb906024016106ac565b60655460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb9060240161071f565b606080836001600160401b03811115611b2057611b206133da565b604051908082528060200260200182016040528015611b5357816020015b6060815260200190600190039081611b3e5790505b509150836001600160401b03811115611b6e57611b6e6133da565b604051908082528060200260200182016040528015611ba157816020015b6060815260200190600190039081611b8c5790505b509050611bad836123d2565b15611c345760655460405163170b5fa560e31b81526001600160a01b039091169063b85afd2890611be690889088908890600401613ab5565b600060405180830381865afa158015611c03573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611c2b9190810190613b72565b91509150611cd9565b6000611c3f84612617565b90506001600160a01b0381163b15158015611c5957508415155b15611cd75760405163170b5fa560e31b81526001600160a01b0382169063b85afd2890611c8e90899089908990600401613ab5565b600060405180830381865afa925050508015611ccc57506040513d6000823e601f3d908101601f19168201604052611cc99190810190613b72565b60015b15611cd75790935091505b505b935093915050565b6060611cf08686868686612a92565b979650505050505050565b606554604051632fafb1ad60e21b81526001600160a01b038381166004830152606092169063bebec6b4906024015b600060405180830381865afa158015611d47573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261063291908101906135b0565b6060611d7e8686868686612a92565b509695505050505050565b6060816001600160401b03811115611da357611da36133da565b604051908082528060200260200182016040528015611dcc578160200160208202803683370190505b50905060005b82811015611a7857611dfb848483818110611def57611def6136bb565b90506020020135612740565b828281518110611e0d57611e0d6136bb565b6001600160a01b039092166020928302919091019091015280611e2f816138cd565b915050611dd2565b6060611e428261233a565b611e5a57505060408051602081019091526000815290565b611e63826123d2565b611ed85760665460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401600060405180830381865afa158015611eb0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106ed91908101906135b0565b60655460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401611d2a565b60405162461bcd60e51b815260206004820152601f60248201527f50726f78795265616465723a20554e535550504f525445445f4d4554484f440060448201526000906064016107bc565b611f5c6126e1565b828114611fab5760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107bc565b60005b83811015610e4a57612006858583818110611fcb57611fcb6136bb565b9050602002810190611fdd91906136d1565b858585818110611fef57611fef6136bb565b905060200281019061200191906136d1565b612b3e565b80612010816138cd565b915050611fae565b6120206126e1565b6001600160a01b0381166107c55760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107bc565b61208d6126e1565b60005b83811015610e4a576120c68585838181106120ad576120ad6136bb565b90506020028101906120bf91906136d1565b8585612b3e565b806120d0816138cd565b915050612090565b600080606080856001600160401b038111156120f6576120f66133da565b60405190808252806020026020018201604052801561212957816020015b60608152602001906001900390816121145790505b509150856001600160401b03811115612144576121446133da565b60405190808252806020026020018201604052801561217757816020015b60608152602001906001900390816121625790505b509050612183856123d2565b156122845760655460405163b3f9e4cb60e01b8152600481018790526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa1580156121d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121f591906133bd565b935061220085612bad565b60655460405163170b5fa560e31b81529194506001600160a01b03169063b85afd2890612235908a908a908a90600401613ab5565b600060405180830381865afa158015612252573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261227a9190810190613b72565b9092509050610652565b61228d85612617565b93506122988561296c565b92506001600160a01b0384163b151580156122b4575060008251115b156106525760405163170b5fa560e31b81526001600160a01b0385169063b85afd28906122e9908a908a908a90600401613ab5565b600060405180830381865afa92505050801561232757506040513d6000823e601f3d908101601f191682016040526123249190810190613b72565b60015b1561065257909250905093509350935093565b6000612345826123d2565b6123645760006123548361296c565b6001600160a01b03161415610632565b606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e79906024015b602060405180830381865afa1580156123ae573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190613699565b6066546000906001600160a01b031615806106325750606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401612391565b60006124236116e6565b9050817fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c812190580546001600160a01b0319166001600160a01b03928316179055604051838216918316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b606082516001600160401b038111156124b0576124b06133da565b6040519080825280602002602001820160405280156124e357816020015b60608152602001906001900390816124ce5790505b5090506124ef826123d2565b1561257257606554604051630dec660d60e11b81526001600160a01b0390911690631bd8cc1a906125269086908690600401613bcb565b600060405180830381865afa158015612543573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261256b9190810190613bed565b9050610632565b600061257d83612617565b90506001600160a01b0381163b15158015612599575060008451115b15611a7857604051630dec660d60e11b81526001600160a01b03821690631bd8cc1a906125cc9087908790600401613bcb565b600060405180830381865afa92505050801561260a57506040513d6000823e601f3d908101601f191682016040526126079190810190613bed565b60015b15611a7857949350505050565b60665460405163b3f9e4cb60e01b8152600481018390526000916001600160a01b03169063b3f9e4cb906024015b602060405180830381865afa92505050801561267e575060408051601f3d908101601f1916820190925261267b918101906133bd565b60015b61063257506000919050565b600054610100900460ff166110a75760405162461bcd60e51b81526004016107bc90613c21565b600054610100900460ff166126d85760405162461bcd60e51b81526004016107bc90613c21565b6110a733612419565b336126ea6116e6565b6001600160a01b0316146110a75760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107bc565b600061274b826123d2565b612758576106ed8261296c565b61063282612bad565b6000806060846001600160401b0381111561277e5761277e6133da565b6040519080825280602002602001820160405280156127b157816020015b606081526020019060019003908161279c5790505b5090506127bd846123d2565b156128bb5760655460405163b3f9e4cb60e01b8152600481018690526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561280b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061282f91906133bd565b925061283a84612bad565b606554604051630dec660d60e11b81529193506001600160a01b031690631bd8cc1a9061286f90899089908990600401613c6c565b600060405180830381865afa15801561288c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526128b49190810190613bed565b905061172b565b6128c484612617565b92506128cf8461296c565b91506001600160a01b0383163b151580156128e957508415155b1561172b57604051630dec660d60e11b81526001600160a01b03841690631bd8cc1a9061291e90899089908990600401613c6c565b600060405180830381865afa92505050801561295c57506040513d6000823e601f3d908101601f191682016040526129599190810190613bed565b60015b1561172b57905093509350939050565b6066546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401612645565b60606001600160a01b0383163b612a065760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b60648201526084016107bc565b600080846001600160a01b031684604051612a2191906139f3565b600060405180830381855af49150503d8060008114612a5c576040519150601f19603f3d011682016040523d82523d6000602084013e612a61565b606091505b5091509150612a898282604051806060016040528060278152602001613c8160279139612bdf565b95945050505050565b6060806000612aa388888888611118565b90506000612ab18286612495565b905060005b8151811015612b31576000828281518110612ad357612ad36136bb565b6020026020010151511115612b1f57828181518110612af457612af46136bb565b60200260200101519350818181518110612b1057612b106136bb565b60200260200101519450612b31565b80612b29816138cd565b915050612ab6565b5050509550959350505050565b818160678686604051612b52929190613717565b90815260200160405180910390209182612b6d9291906137f8565b507f0bf4b04a0f6d7d0800284e1abb0f58f795c0a25b9088634b6ab847be51001dec8484604051612b9f9291906138e6565b60405180910390a150505050565b6065546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401612645565b60608315612bee5750816107e9565b825115612bfe5782518084602001fd5b8160405162461bcd60e51b81526004016107bc9190612f12565b50805460008255906000526020600020908101906107ce91905b80821115612c4f576000612c468282612c53565b50600101612c32565b5090565b508054612c5f90613770565b6000825580601f10612c6f575050565b601f0160209004906000526020600020908101906107ce91905b80821115612c4f5760008155600101612c89565b600060208284031215612caf57600080fd5b81356001600160e01b0319811681146107e957600080fd5b60008083601f840112612cd957600080fd5b5081356001600160401b03811115612cf057600080fd5b6020830191508360208260051b8501011115610f9057600080fd5b600080600060408486031215612d2057600080fd5b83356001600160401b03811115612d3657600080fd5b612d4286828701612cc7565b909790965060209590950135949350505050565b60005b83811015612d71578181015183820152602001612d59565b50506000910152565b60008151808452612d92816020860160208601612d56565b601f01601f19169290920160200192915050565b600082825180855260208086019550808260051b84010181860160005b84811015612df157601f19868403018952612ddf838351612d7a565b98840198925090830190600101612dc3565b5090979650505050505050565b6001600160a01b03858116825284166020820152608060408201819052600090612e2a90830185612da6565b8281036060840152611cf08185612da6565b600060208284031215612e4e57600080fd5b5035919050565b6001600160a01b03811681146107ce57600080fd5b600060208284031215612e7c57600080fd5b81356107e981612e55565b6020815260006107e96020830184612da6565b60008083601f840112612eac57600080fd5b5081356001600160401b03811115612ec357600080fd5b602083019150836020828501011115610f9057600080fd5b600080600060408486031215612ef057600080fd5b83356001600160401b03811115612f0657600080fd5b612d4286828701612e9a565b6020815260006107e96020830184612d7a565b60008060208385031215612f3857600080fd5b82356001600160401b03811115612f4e57600080fd5b612f5a85828601612cc7565b90969095509350505050565b60008060408385031215612f7957600080fd5b8235612f8481612e55565b946020939093013593505050565b60008060408385031215612fa557600080fd5b8235612fb081612e55565b91506020830135612fc081612e55565b809150509250929050565b60008060008060408587031215612fe157600080fd5b84356001600160401b0380821115612ff857600080fd5b61300488838901612cc7565b9096509450602087013591508082111561301d57600080fd5b5061302a87828801612cc7565b95989497509550505050565b6000806040838503121561304957600080fd5b50508035926020909101359150565b60408152600061306b6040830185612d7a565b8281036020840152612a898185612d7a565b6000806000806040858703121561309357600080fd5b84356001600160401b03808211156130aa57600080fd5b6130b688838901612e9a565b909650945060208701359150808211156130cf57600080fd5b5061302a87828801612e9a565b600081518084526020808501945080840160005b838110156131155781516001600160a01b0316875295820195908201906001016130f0565b509495945050505050565b60008282518085526020808601955060058183821b8501018287016000805b868110156131ac57601f1988850381018c5283518051808752908801908887019080891b88018a01865b8281101561319557858a8303018452613183828651612d7a565b948c0194938c01939150600101613169565b509e8a019e9750505093870193505060010161313f565b50919998505050505050505050565b6080815260006131ce60808301876130dc565b82810360208401526131e081876130dc565b905082810360408401526131f48186613120565b90508281036060840152611cf08185613120565b6001600160a01b03848116825283166020820152606060408201819052600090612a8990830184612da6565b60608152600061324760608301866130dc565b828103602084015261325981866130dc565b9050828103604084015261326d8185613120565b9695505050505050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156132cc57603f198886030184526132ba858351612d7a565b9450928501929085019060010161329e565b5092979650505050505050565b6040815260006132ec6040830185612da6565b8281036020840152612a898185612da6565b60008060008060006060868803121561331657600080fd5b85356001600160401b038082111561332d57600080fd5b61333989838a01612e9a565b9097509550602088013591508082111561335257600080fd5b5061335f88828901612e9a565b96999598509660400135949350505050565b6020815260006107e960208301846130dc565b6000806000806040858703121561339a57600080fd5b84356001600160401b03808211156133b157600080fd5b6130b688838901612cc7565b6000602082840312156133cf57600080fd5b81516107e981612e55565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715613418576134186133da565b604052919050565b60006001600160401b03821115613439576134396133da565b5060051b60200190565b60006001600160401b0382111561345c5761345c6133da565b50601f01601f191660200190565b600061347d61347884613420565b6133f0565b80848252602080830192508560051b85013681111561349b57600080fd5b855b818110156135125780356001600160401b038111156134bc5760008081fd5b870136601f8201126134ce5760008081fd5b80356134dc61347882613443565b81815236868385010111156134f15760008081fd5b8186840187830137600091810186019190915286525093820193820161349d565b50919695505050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60408152600061355b60408301858761351e565b9050826020830152949350505050565b600082601f83011261357c57600080fd5b815161358a61347882613443565b81815284602083860101111561359f57600080fd5b6114e8826020830160208701612d56565b6000602082840312156135c257600080fd5b81516001600160401b038111156135d857600080fd5b6114e88482850161356b565b60008383855260208086019550808560051b8301018460005b87811015612df157848303601f19018952813536889003601e1901811261362357600080fd5b870184810190356001600160401b0381111561363e57600080fd5b80360382131561364d57600080fd5b61365885828461351e565b9a86019a94505050908301906001016135fd565b6020815260006107e66020830184866135e4565b60006020828403121561369257600080fd5b5051919050565b6000602082840312156136ab57600080fd5b815180151581146107e957600080fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e198436030181126136e857600080fd5b8301803591506001600160401b0382111561370257600080fd5b602001915036819003821315610f9057600080fd5b8183823760009101908152919050565b6000808335601e1984360301811261373e57600080fd5b8301803591506001600160401b0382111561375857600080fd5b6020019150600581901b3603821315610f9057600080fd5b600181811c9082168061378457607f821691505b6020821081036137a457634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115610bf057600081815260208120601f850160051c810160208610156137d15750805b601f850160051c820191505b818110156137f0578281556001016137dd565b505050505050565b6001600160401b0383111561380f5761380f6133da565b6138238361381d8354613770565b836137aa565b6000601f841160018114613857576000851561383f5750838201355b600019600387901b1c1916600186901b178355610e4a565b600083815260209020601f19861690835b828110156138885786850135825560209485019460019092019101613868565b50868210156138a55760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b634e487b7160e01b600052601160045260246000fd5b6000600182016138df576138df6138b7565b5060010190565b6020815260006107e660208301848661351e565b6000806040838503121561390d57600080fd5b82516001600160401b038082111561392457600080fd5b6139308683870161356b565b9350602085015191508082111561394657600080fd5b506139538582860161356b565b9150509250929050565b80820180821115610632576106326138b7565b60008a51613982818460208f01612d56565b8a5190830190613996818360208f01612d56565b8a519101906139a9818360208e01612d56565b0187898237600090880190815286516139c6818360208b01612d56565b0184868237600090850190815283516139e3818360208801612d56565b019b9a5050505050505050505050565b60008251613a05818460208701612d56565b9190910192915050565b60008751613a21818460208c01612d56565b875190830190613a35818360208c01612d56565b8751910190613a48818360208b01612d56565b018486823760009085019081528351613a65818360208801612d56565b0198975050505050505050565b60008451613a84818460208901612d56565b845190830190613a98818360208901612d56565b8451910190613aab818360208801612d56565b0195945050505050565b6040808252810183905260006001600160fb1b03841115613ad557600080fd5b8360051b808660608501376020830193909352500160600192915050565b600082601f830112613b0457600080fd5b81516020613b1461347883613420565b82815260059290921b84018101918181019086841115613b3357600080fd5b8286015b84811015611d7e5780516001600160401b03811115613b565760008081fd5b613b648986838b010161356b565b845250918301918301613b37565b60008060408385031215613b8557600080fd5b82516001600160401b0380821115613b9c57600080fd5b613ba886838701613af3565b93506020850151915080821115613bbe57600080fd5b5061395385828601613af3565b604081526000613bde6040830185612da6565b90508260208301529392505050565b600060208284031215613bff57600080fd5b81516001600160401b03811115613c1557600080fd5b6114e884828501613af3565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60408152600061355b6040830185876135e456fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a","storage":{}},"0xc2110388dd54228ae0a834119457ede938bf0b57":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061021e5760003560e01c80638da5cb5b11610123578063acf1a841116100ab578063d547741f1161006f578063d547741f14610682578063f14fcbc8146106a2578063f23a6e61146106c2578063f2fde38b146106e2578063ffa1ad741461070257600080fd5b8063acf1a841146105e0578063bc197c8114610600578063c0c53b8b14610620578063cf01585314610640578063d53913931461066057600080fd5b8063a0e3aef1116100f2578063a0e3aef114610534578063a217fddf14610554578063a3f4df7e14610569578063a4247400146105a0578063aa271e1a146105c057600080fd5b80638da5cb5b146104c157806391d14854146104df578063983b2d56146104ff578063986502751461051f57600080fd5b80635fc1964f116101a65780636ccbae5f116101755780636ccbae5f14610439578063715018a61461045957806371e2a6571461046e57806381c81d351461048e57806383e7f6ff146104a157600080fd5b80635fc1964f146103ae578063634486da146103ce5780636352211e146103e15780636a8be89e1461041957600080fd5b80632f2ff15d116101ed5780632f2ff15d146103035780633092afd51461032557806336568abe14610345578063423f6cef14610365578063572b6c051461038557600080fd5b806301ffc9a71461022a578063150b7a021461025f5780631bf7e13e14610298578063248a9ca3146102c557600080fd5b3661022557005b600080fd5b34801561023657600080fd5b5061024a6102453660046125f2565b610733565b60405190151581526020015b60405180910390f35b34801561026b57600080fd5b5061027f61027a366004612672565b610779565b6040516001600160e01b03199091168152602001610256565b3480156102a457600080fd5b506102b86102b33660046126e4565b6108cb565b60405161025691906127a4565b3480156102d157600080fd5b506102f56102e03660046127b7565b600090815260fb602052604090206001015490565b604051908152602001610256565b34801561030f57600080fd5b5061032361031e3660046127d0565b610997565b005b34801561033157600080fd5b50610323610340366004612800565b6109c1565b34801561035157600080fd5b506103236103603660046127d0565b6109d5565b34801561037157600080fd5b5061032361038036600461281d565b610a68565b34801561039157600080fd5b5061024a6103a0366004612800565b6001600160a01b0316301490565b3480156103ba57600080fd5b506103236103c936600461288f565b610bd9565b6103236103dc366004612800565b610c21565b3480156103ed57600080fd5b506104016103fc3660046127b7565b610ce4565b6040516001600160a01b039091168152602001610256565b34801561042557600080fd5b50610323610434366004612800565b610cef565b34801561044557600080fd5b506102f56104543660046127b7565b610d38565b34801561046557600080fd5b50610323610d7e565b34801561047a57600080fd5b5061032361048936600461288f565b610d92565b61032361049c366004612800565b610dda565b3480156104ad57600080fd5b506102f56104bc366004612934565b610e57565b3480156104cd57600080fd5b506097546001600160a01b0316610401565b3480156104eb57600080fd5b5061024a6104fa3660046127d0565b610efa565b34801561050b57600080fd5b5061032361051a366004612800565b610f25565b34801561052b57600080fd5b50610323610f36565b34801561054057600080fd5b506102f561054f366004612a5c565b610f50565b34801561056057600080fd5b506102f5600081565b34801561057557600080fd5b506102b86040518060400160405280600b81526020016a454e5320437573746f647960a81b81525081565b3480156105ac57600080fd5b5061024a6105bb3660046126e4565b610ffc565b3480156105cc57600080fd5b5061024a6105db366004612800565b61104f565b3480156105ec57600080fd5b506103236105fb366004612934565b611069565b34801561060c57600080fd5b5061027f61061b366004612b35565b611222565b34801561062c57600080fd5b5061032361063b366004612bf3565b6112db565b34801561064c57600080fd5b5061032361065b366004612c3e565b611485565b34801561066c57600080fd5b506102f56000805160206133f583398151915281565b34801561068e57600080fd5b5061032361069d3660046127d0565b611592565b3480156106ae57600080fd5b506103236106bd3660046127b7565b6115b7565b3480156106ce57600080fd5b5061027f6106dd366004612d20565b61162b565b3480156106ee57600080fd5b506103236106fd366004612800565b6116bc565b34801561070e57600080fd5b506102b860405180604001604052806005815260200164302e312e3360d81b81525081565b60006001600160e01b03198216630a85bd0160e11b148061076457506001600160e01b03198216630271189760e51b145b806107735750610773826116d8565b92915050565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004546000906001600160a01b0316806107b061170d565b6001600160a01b0316036108a957600080806107ce86880188612d9b565b9250925092506107dd8361171c565b6001600160a01b03841663b88d4fde30600080516020613415833981519152546040516001600160a01b03909116908c9061082390879030906000908b90602001612dfc565b6040516020818303038152906040526040518563ffffffff1660e01b81526004016108519493929190612e3c565b600060405180830381600087803b15801561086b57600080fd5b505af115801561087f573d6000803e3d6000fd5b5050505061089561088f8261174e565b846117d3565b50630a85bd0160e11b93506108c292505050565b6040516344e7d94960e01b815260040160405180910390fd5b95945050505050565b606060005a90506108dd858585610ffc565b6108fa57604051638baa579f60e01b815260040160405180910390fd5b61098c61090a6020870187612800565b3060408801358461091e60608b018b612e6f565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061185e92505050565b9150505b9392505050565b600082815260fb60205260409020600101546109b28161193f565b6109bc8383611950565b505050565b6109c96119d7565b6109d281611a50565b50565b6109dd61170d565b6001600160a01b0316816001600160a01b031614610a5a5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b610a648282611a68565b5050565b80610a7161170d565b6001600160a01b0316610a8382611aed565b6001600160a01b031614610ac55780610a9a61170d565b604051637ea58b1160e01b815260048101929092526001600160a01b03166024820152604401610a51565b610ace82611c03565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052600090610b22906060015b6040516020818303038152906040528051906020012090565b80546001600160a01b0319166001600160a01b0392909216919091179055600060008051602061341583398151915254604051637921219560e11b81523060048201526001600160a01b038681166024830152604482018690526001606483015260a06084830152600060a48301529091169150819063f242432a9060c401600060405180830381600087803b158015610bbb57600080fd5b505af1158015610bcf573d6000803e3d6000fd5b5050505050505050565b610be16119d7565b60005b8151811015610a6457610c0f828281518110610c0257610c02612eb5565b6020026020010151611a50565b80610c1981612ee1565b915050610be4565b610c2c6105db61170d565b610c485760405162461bcd60e51b8152600401610a5190612efa565b6001600160a01b038116610c9e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a51565b610ca781611c1c565b610caf610f36565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610a64573d6000803e3d6000fd5b600061077382611aed565b610cf76119d7565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c500480546001600160a01b0319166001600160a01b0392909216919091179055565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a838156020820152908101829052600090610d7790606001610b09565b5492915050565b610d866119d7565b610d906000611c34565b565b610d9a6119d7565b60005b8151811015610a6457610dc8828281518110610dbb57610dbb612eb5565b6020026020010151611c1c565b80610dd281612ee1565b915050610d9d565b610de56105db61170d565b610e015760405162461bcd60e51b8152600401610a5190612efa565b6001600160a01b038116610ca75760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a51565b6000805160206133d5833981519152546040516383e7f6ff60e01b81526000916001600160a01b031690829082906383e7f6ff90610e9d90899089908990600401612f58565b6040805180830381865afa158015610eb9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610edd9190612f7c565b60208101518151919250610ef091612fca565b9695505050505050565b600091825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610f2d6119d7565b6109d281611c1c565b610d906000805160206133f583398151915261036061170d565b6000805160206133d5833981519152546000906001600160a01b0316806365a69dcf8d85610f7e5730610f80565b8d5b8d8d8d8d8d8d8d6040518a63ffffffff1660e01b8152600401610fab9998979695949392919061306e565b602060405180830381865afa158015610fc8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fec91906130de565b9c9b505050505050505050505050565b600061104761100a856130f7565b3085858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611c8692505050565b949350505050565b60006107736000805160206133f583398151915283610efa565b6110746105db61170d565b6110905760405162461bcd60e51b8152600401610a5190612efa565b6002603354036110e25760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a51565b60026033556000805160206133d5833981519152546040516383e7f6ff60e01b81526001600160a01b039091169060009082906383e7f6ff9061112d90889088908890600401612f58565b6040805180830381865afa158015611149573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061116d9190612f7c565b6020810151815191925061118091612fca565b4710156111a05760405163050205f960e01b815260040160405180910390fd5b816001600160a01b031663acf1a841826020015183600001516111c39190612fca565b8787876040518563ffffffff1660e01b81526004016111e493929190612f58565b6000604051808303818588803b1580156111fd57600080fd5b505af1158015611211573d6000803e3d6000fd5b505060016033555050505050505050565b6000600080516020613415833981519152546001600160a01b031661124561170d565b6001600160a01b03161461126c576040516344e7d94960e01b815260040160405180910390fd5b600061127a83850185612800565b90506112858161171c565b60005b878110156112c4576112b28989838181106112a5576112a5612eb5565b90506020020135836117d3565b806112bc81612ee1565b915050611288565b5063bc197c8160e01b9a9950505050505050505050565b600054610100900460ff16158080156112fb5750600054600160ff909116105b806113155750303b158015611315575060005460ff166001145b6113785760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610a51565b6000805460ff19166001179055801561139b576000805461ff0019166101001790555b6000805160206133d583398151915280546001600160a01b038087166001600160a01b03199283161790925560008051602061341583398151915280548684169083161790557ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004805492851692909116919091179055611419611dc5565b611421611df3565b611429611df3565b611431611e1a565b611439611e51565b801561147f576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6114906105db61170d565b6114ac5760405162461bcd60e51b8152600401610a5190612efa565b6002603354036114fe5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a51565b600260338190555060006115478c8c8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061174e92505050565b905061155281611c03565b6115708c8c846115625730611564565b8c5b8c8c8c8c8c8c8c611e8a565b8161157f5761157f818b6117d3565b5050600160335550505050505050505050565b600082815260fb60205260409020600101546115ad8161193f565b6109bc8383611a68565b60006000805160206133d583398151915254604051631e29f97960e31b8152600481018490526001600160a01b039091169150819063f14fcbc890602401600060405180830381600087803b15801561160f57600080fd5b505af1158015611623573d6000803e3d6000fd5b505050505050565b6000600080516020613415833981519152546001600160a01b031661164e61170d565b6001600160a01b031614611675576040516344e7d94960e01b815260040160405180910390fd5b6001600160a01b038616156116a957600061169283850185612800565b905061169d8161171c565b6116a786826117d3565b505b5063f23a6e6160e01b9695505050505050565b6116c46119d7565b6116cd81611fd5565b6109d260008261204b565b60006001600160e01b03198216637965db0b60e01b148061077357506301ffc9a760e01b6001600160e01b0319831614610773565b6000611717612055565b905090565b6001600160a01b0381166109d25760405163b20f76e360e01b81526001600160a01b0382166004820152602401610a51565b60007f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae60001b826040516020016117859190613195565b604051602081830303815290604052805190602001206040516020016117b5929190918252602082015260400190565b60408051601f19818403018152919052805160209091012092915050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052819061181190606001610b09565b80546001600160a01b0319166001600160a01b039283161790556040519082169083907f45aa97e368889fb3527c1db60c59c2ae91e82f21778613449e46d4208c1c4b1290600090a35050565b606061186985612073565b600080876001600160a01b0316866118838b8a89896120d9565b6040516118909190613195565b60006040518083038160008787f1925050503d80600081146118ce576040519150601f19603f3d011682016040523d82523d6000602084013e6118d3565b606091505b5090925090506118e4603f876131b1565b5a116118f2576118f26131d3565b61193282826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c4544000000000000815250612109565b9998505050505050505050565b6109d28161194b61170d565b612142565b61195a8282610efa565b610a6457600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff1916600117905561199361170d565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6119df61170d565b6001600160a01b03166119fa6097546001600160a01b031690565b6001600160a01b031614610d905760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a51565b6109d26000805160206133f583398151915282611592565b611a728282610efa565b15610a6457600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff19169055611aa961170d565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101829052600090611b2c90606001610b09565b546001600160a01b0316905080611b595760405163124bad6360e31b815260048101839052602401610a51565b30600080516020613415833981519152546040516331a9108f60e11b8152600481018590526001600160a01b0390911690636352211e90602401602060405180830381865afa158015611bb0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bd491906131e9565b6001600160a01b031614611bfe576040516303b673fd60e21b815260048101839052602401610a51565b919050565b303303611c13576109d2816121a6565b6109d281612073565b6109d26000805160206133f58339815191528261204b565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015611ccd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cf191906130de565b90506000611d9f866060015180519060200120868860200151604051602001611d3f9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b9050818660200151148015610ef057508551610ef0906001600160a01b031682866121d0565b600054610100900460ff16611dec5760405162461bcd60e51b8152600401610a5190613206565b6001603355565b600054610100900460ff16610d905760405162461bcd60e51b8152600401610a5190613206565b600054610100900460ff16611e415760405162461bcd60e51b8152600401610a5190613206565b610d90611e4c61170d565b611c34565b600054610100900460ff16611e785760405162461bcd60e51b8152600401610a5190613206565b610d906000611e8561170d565b61204b565b6000805160206133d5833981519152546040516383e7f6ff60e01b81526001600160a01b039091169060009082906383e7f6ff90611ed0908f908f908e90600401612f58565b6040805180830381865afa158015611eec573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f109190612f7c565b60208101518151919250611f2391612fca565b471015611f435760405163050205f960e01b815260040160405180910390fd5b816001600160a01b03166374694a2b82602001518360000151611f669190612fca565b8e8e8e8e8e8e8e8e8e8e6040518c63ffffffff1660e01b8152600401611f959a99989796959493929190613251565b6000604051808303818588803b158015611fae57600080fd5b505af1158015611fc2573d6000803e3d6000fd5b5050505050505050505050505050505050565b611fdd6119d7565b6001600160a01b0381166120425760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610a51565b6109d281611c34565b610a648282611950565b600030330361206b575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290526000906060016040516020818303038152906040528051906020012090506120c88190565b546120d4906001612fca565b905550565b60608285856040516020016120f0939291906132c3565b6040516020818303038152906040529050949350505050565b60608315612118575081610990565b8251156121285782518084602001fd5b8160405162461bcd60e51b8152600401610a5191906127a4565b61214c8282610efa565b610a6457612164816001600160a01b03166014612312565b61216f836020612312565b604051602001612180929190613302565b60408051601f198184030181529082905262461bcd60e51b8252610a51916004016127a4565b6121ae6124ad565b81146109d257604051635637b6af60e11b815260048101829052602401610a51565b60008060006121df85856124c0565b909250905060008160048111156121f8576121f8613377565b1480156122165750856001600160a01b0316826001600160a01b0316145b1561222657600192505050610990565b600080876001600160a01b0316631626ba7e60e01b888860405160240161224e92919061338d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161228c9190613195565b600060405180830381855afa9150503d80600081146122c7576040519150601f19603f3d011682016040523d82523d6000602084013e6122cc565b606091505b50915091508180156122df575080516020145b801561230657508051630b135d3f60e11b9061230490830160209081019084016130de565b145b98975050505050505050565b606060006123218360026133a6565b61232c906002612fca565b6001600160401b0381111561234357612343612849565b6040519080825280601f01601f19166020018201604052801561236d576020820181803683370190505b509050600360fc1b8160008151811061238857612388612eb5565b60200101906001600160f81b031916908160001a905350600f60fb1b816001815181106123b7576123b7612eb5565b60200101906001600160f81b031916908160001a90535060006123db8460026133a6565b6123e6906001612fca565b90505b600181111561245e576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061241a5761241a612eb5565b1a60f81b82828151811061243057612430612eb5565b60200101906001600160f81b031916908160001a90535060049490941c93612457816133bd565b90506123e9565b5083156109905760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610a51565b60003033036120705750601f1936013590565b60008082516041036124f65760208301516040840151606085015160001a6124ea87828585612505565b945094505050506124fe565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561253c57506000905060036125e9565b8460ff16601b1415801561255457508460ff16601c14155b1561256557506000905060046125e9565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156125b9573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166125e2576000600192509250506125e9565b9150600090505b94509492505050565b60006020828403121561260457600080fd5b81356001600160e01b03198116811461099057600080fd5b6001600160a01b03811681146109d257600080fd5b60008083601f84011261264357600080fd5b5081356001600160401b0381111561265a57600080fd5b6020830191508360208285010111156124fe57600080fd5b60008060008060006080868803121561268a57600080fd5b85356126958161261c565b945060208601356126a58161261c565b93506040860135925060608601356001600160401b038111156126c757600080fd5b6126d388828901612631565b969995985093965092949392505050565b6000806000604084860312156126f957600080fd5b83356001600160401b038082111561271057600080fd5b908501906080828803121561272457600080fd5b9093506020850135908082111561273a57600080fd5b5061274786828701612631565b9497909650939450505050565b60005b8381101561276f578181015183820152602001612757565b50506000910152565b60008151808452612790816020860160208601612754565b601f01601f19169290920160200192915050565b6020815260006109906020830184612778565b6000602082840312156127c957600080fd5b5035919050565b600080604083850312156127e357600080fd5b8235915060208301356127f58161261c565b809150509250929050565b60006020828403121561281257600080fd5b81356109908161261c565b6000806040838503121561283057600080fd5b823561283b8161261c565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561288757612887612849565b604052919050565b600060208083850312156128a257600080fd5b82356001600160401b03808211156128b957600080fd5b818501915085601f8301126128cd57600080fd5b8135818111156128df576128df612849565b8060051b91506128f084830161285f565b818152918301840191848101908884111561290a57600080fd5b938501935b8385101561230657843592506129248361261c565b828252938501939085019061290f565b60008060006040848603121561294957600080fd5b83356001600160401b0381111561295f57600080fd5b61296b86828701612631565b909790965060209590950135949350505050565b60006001600160401b0383111561299857612998612849565b6129ab601f8401601f191660200161285f565b90508281528383830111156129bf57600080fd5b828260208301376000602084830101529392505050565b600082601f8301126129e757600080fd5b6109908383356020850161297f565b60008083601f840112612a0857600080fd5b5081356001600160401b03811115612a1f57600080fd5b6020830191508360208260051b85010111156124fe57600080fd5b80358015158114611bfe57600080fd5b803561ffff81168114611bfe57600080fd5b6000806000806000806000806000806101208b8d031215612a7c57600080fd5b8a356001600160401b0380821115612a9357600080fd5b612a9f8e838f016129d6565b9b5060208d01359150612ab18261261c565b90995060408c0135985060608c0135975060808c013590612ad18261261c565b90965060a08c01359080821115612ae757600080fd5b50612af48d828e016129f6565b9096509450612b07905060c08c01612a3a565b9250612b1560e08c01612a4a565b9150612b246101008c01612a3a565b90509295989b9194979a5092959850565b60008060008060008060008060a0898b031215612b5157600080fd5b8835612b5c8161261c565b97506020890135612b6c8161261c565b965060408901356001600160401b0380821115612b8857600080fd5b612b948c838d016129f6565b909850965060608b0135915080821115612bad57600080fd5b612bb98c838d016129f6565b909650945060808b0135915080821115612bd257600080fd5b50612bdf8b828c01612631565b999c989b5096995094979396929594505050565b600080600060608486031215612c0857600080fd5b8335612c138161261c565b92506020840135612c238161261c565b91506040840135612c338161261c565b809150509250925092565b60008060008060008060008060008060006101208c8e031215612c6057600080fd5b6001600160401b03808d351115612c7657600080fd5b612c838e8e358f01612631565b909c509a50612c9560208e013561261c565b60208d0135995060408d0135985060608d01359750612cb760808e013561261c565b60808d013596508060a08e01351115612ccf57600080fd5b50612ce08d60a08e01358e016129f6565b9095509350612cf160c08d01612a3a565b9250612cff60e08d01612a4a565b9150612d0e6101008d01612a3a565b90509295989b509295989b9093969950565b60008060008060008060a08789031215612d3957600080fd5b8635612d448161261c565b95506020870135612d548161261c565b9450604087013593506060870135925060808701356001600160401b03811115612d7d57600080fd5b612d8989828a01612631565b979a9699509497509295939492505050565b600080600060608486031215612db057600080fd5b8335612dbb8161261c565b92506020840135612dcb8161261c565b915060408401356001600160401b03811115612de657600080fd5b612df2868287016129d6565b9150509250925092565b608081526000612e0f6080830187612778565b6001600160a01b03958616602084015261ffff949094166040830152509216606090920191909152919050565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090610ef090830184612778565b6000808335601e19843603018112612e8657600080fd5b8301803591506001600160401b03821115612ea057600080fd5b6020019150368190038213156124fe57600080fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201612ef357612ef3612ecb565b5060010190565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b604081526000612f6c604083018587612f2f565b9050826020830152949350505050565b600060408284031215612f8e57600080fd5b604051604081018181106001600160401b0382111715612fb057612fb0612849565b604052825181526020928301519281019290925250919050565b8082018082111561077357610773612ecb565b81835260006020808501808196508560051b810191508460005b878110156130615782840389528135601e1988360301811261301857600080fd5b870185810190356001600160401b0381111561303357600080fd5b80360382131561304257600080fd5b61304d868284612f2f565b9a87019a9550505090840190600101612ff7565b5091979650505050505050565b60006101008083526130828184018d612778565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a085015290506130bc818789612fdd565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b6000602082840312156130f057600080fd5b5051919050565b60006080823603121561310957600080fd5b604051608081016001600160401b03828210818311171561312c5761312c612849565b816040528435915061313d8261261c565b8183526020850135602084015260408501356040840152606085013591508082111561316857600080fd5b50830136601f82011261317a57600080fd5b6131893682356020840161297f565b60608301525092915050565b600082516131a7818460208701612754565b9190910192915050565b6000826131ce57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b6000602082840312156131fb57600080fd5b81516109908161261c565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60006101008083526132668184018d8f612f2f565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a085015290506132a0818789612fdd565b94151560c0840152505061ffff9190911660e09091015298975050505050505050565b600084516132d5818460208901612754565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081526000835161333a816017850160208801612754565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835161336b816028840160208801612754565b01602801949350505050565b634e487b7160e01b600052602160045260246000fd5b8281526040602082015260006110476040830184612778565b808202811582820484141761077357610773612ecb565b6000816133cc576133cc612ecb565b50600019019056fe412386de53449251cbf7ce1f4c6a038bf9c0746e62d331b08ef0c3fa7d0ab6729f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a660793a5062d506d35cc8f1beda67ee5028c16bfcd9c923d5bfc439c04bd929b1a164736f6c6343000811000a","storage":{"0x0":"0xff"}},"0xc58206842e4030a3b2cabc78780ae7635173c533":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106102325760003560e01c80637c69eae211610130578063b5466669116100b8578063d284d97a1161007c578063d284d97a14610d4e578063d8d3cc6e14610dbc578063e67ca8a314610e3f578063e985e9c514610e5c578063ebf0c71714610e8a57610232565b8063b5466669146109ce578063b88d4fde14610a51578063c29b52f914610b15578063c87b56dd14610c5e578063ce9fb82b14610c7b57610232565b8063a22cb465116100ff578063a22cb4651461090b578063a7fc7a0714610939578063ab3b87fe1461095f578063b3f9e4cb1461098b578063b429afeb146109a857610232565b80637c69eae21461076457806395d89b41146107e75780639d743989146107ef5780639e5be9a51461087d57610232565b806342842e0e116101be5780635cbe1112116101825780635cbe11121461061d5780636352211e1461069257806366ac3b68146106af57806368b62d32146106b757806370a082311461073e57610232565b806342842e0e146104ed57806342966c6814610523578063430c208114610540578063538361a71461056c57806357aac5741461058f57610232565b8063081812fc11610205578063081812fc146103fa578063095ea7b3146104335780632392c1891461045f57806323b872dd1461048b5780632525d06a146104c157610232565b806301ffc9a71461023757806302759c37146102725780630467e014146102aa57806306fdde031461037d575b600080fd5b61025e6004803603602081101561024d57600080fd5b50356001600160e01b031916610e92565b604080519115158252519081900360200190f35b6102a86004803603606081101561028857600080fd5b506001600160a01b03813581169160208101359091169060400135610eb1565b005b6102a8600480360360808110156102c057600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156102ef57600080fd5b82018360208201111561030157600080fd5b803590602001918460018302840111600160201b8311171561032257600080fd5b919390929091602081019035600160201b81111561033f57600080fd5b82018360208201111561035157600080fd5b803590602001918460018302840111600160201b8311171561037257600080fd5b509092509050610ed3565b610385610f62565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103bf5781810151838201526020016103a7565b50505050905090810190601f1680156103ec5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6104176004803603602081101561041057600080fd5b5035610f84565b604080516001600160a01b039092168252519081900360200190f35b6102a86004803603604081101561044957600080fd5b506001600160a01b038135169060200135610fe6565b6102a86004803603604081101561047557600080fd5b506001600160a01b0381351690602001356110f7565b6102a8600480360360608110156104a157600080fd5b506001600160a01b03813581169160208101359091169060400135611115565b6102a8600480360360408110156104d757600080fd5b506001600160a01b03813516906020013561115a565b6102a86004803603606081101561050357600080fd5b506001600160a01b0381358116916020810135909116906040013561117a565b6102a86004803603602081101561053957600080fd5b5035611195565b61025e6004803603604081101561055657600080fd5b506001600160a01b0381351690602001356111e6565b6102a86004803603604081101561058257600080fd5b50803590602001356111f9565b6102a8600480360360808110156105a557600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156105df57600080fd5b8201836020820111156105f157600080fd5b803590602001918460018302840111600160201b8311171561061257600080fd5b50909250905061124f565b6102a86004803603604081101561063357600080fd5b81359190810190604081016020820135600160201b81111561065457600080fd5b82018360208201111561066657600080fd5b803590602001918460018302840111600160201b8311171561068757600080fd5b5090925090506112be565b610417600480360360208110156106a857600080fd5b5035611320565b6102a861137a565b61072c600480360360408110156106cd57600080fd5b81359190810190604081016020820135600160201b8111156106ee57600080fd5b82018360208201111561070057600080fd5b803590602001918460018302840111600160201b8311171561072157600080fd5b509092509050611385565b60408051918252519081900360200190f35b61072c6004803603602081101561075457600080fd5b50356001600160a01b03166113cf565b6102a86004803603606081101561077a57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156107a957600080fd5b8201836020820111156107bb57600080fd5b803590602001918460018302840111600160201b831117156107dc57600080fd5b509092509050611437565b61038561149a565b6102a86004803603608081101561080557600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561083f57600080fd5b82018360208201111561085157600080fd5b803590602001918460018302840111600160201b8311171561087257600080fd5b5090925090506114b6565b6102a86004803603608081101561089357600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156108cd57600080fd5b8201836020820111156108df57600080fd5b803590602001918460018302840111600160201b8311171561090057600080fd5b509092509050611506565b6102a86004803603604081101561092157600080fd5b506001600160a01b0381351690602001351515611564565b6102a86004803603602081101561094f57600080fd5b50356001600160a01b0316611630565b6102a86004803603604081101561097557600080fd5b506001600160a01b03813516906020013561164b565b610417600480360360208110156109a157600080fd5b5035611672565b61025e600480360360208110156109be57600080fd5b50356001600160a01b0316611694565b6102a8600480360360608110156109e457600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610a1357600080fd5b820183602082011115610a2557600080fd5b803590602001918460018302840111600160201b83111715610a4657600080fd5b5090925090506116a7565b6102a860048036036080811015610a6757600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b811115610aa157600080fd5b820183602082011115610ab357600080fd5b803590602001918460018302840111600160201b83111715610ad457600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506116fa945050505050565b6102a8600480360360a0811015610b2b57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b811115610b6557600080fd5b820183602082011115610b7757600080fd5b803590602001918460018302840111600160201b83111715610b9857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b811115610bea57600080fd5b820183602082011115610bfc57600080fd5b803590602001918460018302840111600160201b83111715610c1d57600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061174c945050505050565b61038560048036036020811015610c7457600080fd5b5035611797565b6102a860048036036080811015610c9157600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610cc057600080fd5b820183602082011115610cd257600080fd5b803590602001918460018302840111600160201b83111715610cf357600080fd5b919390929091602081019035600160201b811115610d1057600080fd5b820183602082011115610d2257600080fd5b803590602001918460018302840111600160201b83111715610d4357600080fd5b509092509050611892565b6102a860048036036020811015610d6457600080fd5b810190602081018135600160201b811115610d7e57600080fd5b820183602082011115610d9057600080fd5b803590602001918460018302840111600160201b83111715610db157600080fd5b50909250905061191b565b6102a860048036036060811015610dd257600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610e0157600080fd5b820183602082011115610e1357600080fd5b803590602001918460018302840111600160201b83111715610e3457600080fd5b50909250905061199e565b6102a860048036036020811015610e5557600080fd5b50356119f3565b61025e60048036036040811015610e7257600080fd5b506001600160a01b0381358116916020013516611a05565b61072c611a33565b6001600160e01b03191660009081526020819052604090205460ff1690565b610eba33611694565b610ec357600080fd5b610ece838383611a57565b505050565b610edc33611694565b610ee557600080fd5b610f5a868686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8a018190048102820181019092528881529250889150879081908401838280828437600092019190915250611a9f92505050565b505050505050565b6040805180820190915260078152662e63727970746f60c81b60208201525b90565b6000610f8f82611ac9565b610fca5760405162461bcd60e51b815260040180806020018281038252602c815260200180612848602c913960400191505060405180910390fd5b506000908152600360205260409020546001600160a01b031690565b6000610ff182611320565b9050806001600160a01b0316836001600160a01b031614156110445760405162461bcd60e51b81526004018080602001828103825260218152602001806128bf6021913960400191505060405180910390fd5b336001600160a01b038216148061106057506110608133611a05565b61109b5760405162461bcd60e51b815260040180806020018281038252603881526020018061279c6038913960400191505060405180910390fd5b60008281526003602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b806111023382611ae6565b61110b57600080fd5b610ece8383611b82565b61111f3382611ae6565b610ec35760405162461bcd60e51b81526004018080602001828103825260318152602001806128e06031913960400191505060405180910390fd5b61116333611694565b61116c57600080fd5b6111768282611b82565b5050565b610ece838383604051806020016040528060008152506116fa565b61119f3382611ae6565b6111da5760405162461bcd60e51b81526004018080602001828103825260308152602001806129366030913960400191505060405180910390fd5b6111e381611bf8565b50565b60006111f28383611ae6565b9392505050565b6000828152600860205260409020546001600160a01b0316331461121c57600080fd5b6040518290829033907ff10fc780c78f994a214c79a2ae8d8b7bfe7cc3f0f935a8f05a29525e71d7f12790600090a45050565b61125833611694565b61126157600080fd5b61126c858585611a57565b6112ae85858585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611c7992505050565b6112b757600080fd5b5050505050565b826112c93382611ae6565b6112d257600080fd5b61131a6113158585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b611bf8565b50505050565b6000818152600260205260408120546001600160a01b0316806113745760405162461bcd60e51b81526004018080602001828103825260298152602001806127fe6029913960400191505060405180910390fd5b92915050565b61138333611e64565b565b60006113c78484848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b949350505050565b60006001600160a01b0382166114165760405162461bcd60e51b815260040180806020018281038252602a8152602001806127d4602a913960400191505060405180910390fd5b6001600160a01b038216600090815260046020526040902061137490611e75565b826114423382611ae6565b61144b57600080fd5b6112b7858585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250611a9f915050565b604080518082019091526002815261155160f21b602082015290565b6112b785858585858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201829052506040805160208101909152908152925061174c915050565b826115113382611ae6565b61151a57600080fd5b610f5a868661155f8787878080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b611a57565b6001600160a01b0382163314156115c2576040805162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604482015290519081900360640190fd5b3360008181526005602090815260408083206001600160a01b03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b61163933611694565b61164257600080fd5b6111e381611e79565b806116563382611ae6565b61165f57600080fd5b610ece61166b83611320565b8484611e8a565b6000818152600860205260408120546001600160a01b03168061137457600080fd5b600061137460018363ffffffff611fce16565b6116b033611694565b6116b957600080fd5b61131a848484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061203592505050565b611705848484611115565b61171184848484611c79565b61131a5760405162461bcd60e51b815260040180806020018281038252603281526020018061271a6032913960400191505060405180910390fd5b826117573382611ae6565b61176057600080fd5b600061176c8585611dac565b9050611779878783611a57565b61178587878386611c79565b61178e57600080fd5b50505050505050565b60606117a282611ac9565b6117ab57600080fd5b600760066000848152602001908152602001600020604051602001808380546001816001161561010002031660029004801561181e5780601f106117fc57610100808354040283529182019161181e565b820191906000526020600020905b81548152906001019060200180831161180a575b5050828054600181600116156101000203166002900480156118775780601f10611855576101008083540402835291820191611877565b820191906000526020600020905b815481529060010190602001808311611863575b505060408051601f1981840301815291905295945050505050565b8461189d3382611ae6565b6118a657600080fd5b61178e878787878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b018190048102820181019092528981529250899150889081908401838280828437600092019190915250611a9f92505050565b61192433611694565b61192d57600080fd5b611939600783836125cf565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b828260405180806020018281038252848482818152602001925080828437600083820152604051601f909101601f19169092018290039550909350505050a15050565b826119a93382611ae6565b6119b257600080fd5b6112b7858585858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061203592505050565b6119fc33611694565b6111da57600080fd5b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b7f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f90565b611a62838383611e8a565b6000818152600860205260409020546001600160a01b031615610ece57600090815260086020526040902080546001600160a01b03191690555050565b611aaa848484612035565b611ac0600085611aba8686611dac565b84611c79565b61131a57600080fd5b6000908152600260205260409020546001600160a01b0316151590565b6000611af182611ac9565b611b2c5760405162461bcd60e51b815260040180806020018281038252602c815260200180612770602c913960400191505060405180910390fd5b6000611b3783611320565b9050806001600160a01b0316846001600160a01b03161480611b725750836001600160a01b0316611b6784610f84565b6001600160a01b0316145b806113c757506113c78185611a05565b611b8b81611ac9565b611b9457600080fd5b6040516001600160a01b0383169082907fb1b34e6d89e1c584527d447f4b29ffad55635a37edeeb564939a6483401b31a590600090a3600090815260086020526040902080546001600160a01b0319166001600160a01b0392909216919091179055565b611c018161220f565b6000818152600860205260409020546001600160a01b031615611c3b57600081815260086020526040902080546001600160a01b03191690555b60008181526006602052604090205460026000196101006001841615020190911604156111e35760008181526006602052604081206111e39161264d565b6000611c8d846001600160a01b0316612221565b611c99575060016113c7565b604051630a85bd0160e11b815233600482018181526001600160a01b03888116602485015260448401879052608060648501908152865160848601528651600095928a169463150b7a029490938c938b938b939260a4019060208501908083838e5b83811015611d13578181015183820152602001611cfb565b50505050905090810190601f168015611d405780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015611d6257600080fd5b505af1158015611d76573d6000803e3d6000fd5b505050506040513d6020811015611d8c57600080fd5b50516001600160e01b031916630a85bd0160e11b14915050949350505050565b6000815160001415611dbd57600080fd5b82826040516020018082805190602001908083835b60208310611df15780518252601f199092019160209182019101611dd2565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040528051906020012060405160200180838152602001828152602001925050506040516020818303038152906040528051906020012060001c905092915050565b6111e360018263ffffffff61222716565b5490565b6111e360018263ffffffff61228e16565b826001600160a01b0316611e9d82611320565b6001600160a01b031614611ee25760405162461bcd60e51b81526004018080602001828103825260298152602001806128966029913960400191505060405180910390fd5b6001600160a01b038216611f275760405162461bcd60e51b815260040180806020018281038252602481526020018061274c6024913960400191505060405180910390fd5b611f308161230f565b6001600160a01b0383166000908152600460205260409020611f519061234a565b6001600160a01b0382166000908152600460205260409020611f7290612361565b60008181526002602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60006001600160a01b0382166120155760405162461bcd60e51b81526004018080602001828103825260228152602001806128746022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b60006120418383611dac565b905061204d848261236a565b815161205857600080fd5b61206181611ac9565b61206a57600080fd5b606082600660008681526020019081526020016000206040516020018083805190602001908083835b602083106120b25780518252601f199092019160209182019101612093565b6001836020036101000a03801982511681845116808217855250505050505090500180601760f91b815250600101828054600181600116156101000203166002900480156121375780601f10612115576101008083540402835291820191612137565b820191906000526020600020905b815481529060010190602001808311612123575b505060408051601f19818403018152918152600087815260066020908152919020825192965061216d9550935085019150612691565b50817fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952826040518080602001828103825283818151815260200191508051906020019080838360005b838110156121ce5781810151838201526020016121b6565b50505050905090810190601f1680156121fb5780820380516001836020036101000a031916815260200191505b509250505060405180910390a25050505050565b6111e361221b82611320565b8261249b565b3b151590565b6122318282611fce565b61226c5760405162461bcd60e51b81526004018080602001828103825260218152602001806128276021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff19169055565b6122988282611fce565b156122ea576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b6000818152600360205260409020546001600160a01b0316156111e357600090815260036020526040902080546001600160a01b0319169055565b805461235d90600163ffffffff61257216565b9055565b80546001019055565b6001600160a01b0382166123c5576040805162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f2061646472657373604482015290519081900360640190fd5b6123ce81611ac9565b15612420576040805162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000604482015290519081900360640190fd5b600081815260026020908152604080832080546001600160a01b0319166001600160a01b03871690811790915583526004909152902061245f90612361565b60405181906001600160a01b038416906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b816001600160a01b03166124ae82611320565b6001600160a01b0316146124f35760405162461bcd60e51b81526004018080602001828103825260258152602001806129116025913960400191505060405180910390fd5b6124fc8161230f565b6001600160a01b038216600090815260046020526040902061251d9061234a565b60008181526002602052604080822080546001600160a01b0319169055518291906001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6000828211156125c9576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106126105782800160ff1982351617855561263d565b8280016001018555821561263d579182015b8281111561263d578235825591602001919060010190612622565b506126499291506126ff565b5090565b50805460018160011615610100020316600290046000825580601f1061267357506111e3565b601f0160209004906000526020600020908101906111e391906126ff565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106126d257805160ff191683800117855561263d565b8280016001018555821561263d579182015b8281111561263d5782518255916020019190600101906126e4565b610f8191905b80821115612649576000815560010161270556fe4552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c654552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e526f6c65733a206163636f756e7420697320746865207a65726f20616464726573734552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f7665644552433732313a206275726e206f6620746f6b656e2074686174206973206e6f74206f776e4552433732314275726e61626c653a2063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564a265627a7a72315820fb6a1b26cc352dbb05e6627fd530bbb44114ac3a349f30d1f071136c656d20dc64736f6c634300050c0032","storage":{"0x7":"0x68747470733a2f2f6578616d706c652e636f6d2f000000000000000000000028","0xbdf39e9e65b2355b1b0b06df799c09159f0ab90f06a9bb2153f5de7d9b0ea81":"0x1","0x1a306d3e9bf29128dee78d8d16c9f378a11bbdf917a9caf986fc6e60846e37e7":"0x63727970746f000000000000000000000000000000000000000000000000000c","0x42c63635470f1fb1d6d4b6441c413cb435b1ebb6fedd1896dd5e25d1399147dd":"0x1","0x605d7a0bb2b20c4004d356eb969ff104dcca62360aa356247072f5e0df6472e3":"0xdead","0x67be87c3ff9960ca1e9cfac5cab2ff4747269cf9ed20c9b7306235ac35a491c5":"0x1","0x70f464f95f9ab7aba03264fd4cac1711d774d3703ce74217180264d4efc2105f":"0x1","0x76a72f26a108e6f3f687141f5f42d21d65857c03cb1b01aa1284f9a9ccd085da":"0x1","0x9562381dfbc2d8b8b66e765249f330164b73e329e5f01670660643571d1974df":"0x1","0x9f23d2403fb64167582d316b1bc5b35a6ed48524341ab24947c71df77304b29e":"0x1","0xf7815fccbf112960a73756e185887fedcb9fc64ca0a16cc5923b7960ed780800":"0x1"}},"0xc965345edac823d56812cd20a10316233916a605":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101c6575f3560e01c806395d89b41116100fe578063c87b56dd1161009e578063e985e9c51161006e578063e985e9c5146103d4578063f2fde38b1461040f578063f6a74ed714610422578063fca247ac14610435575f80fd5b8063c87b56dd14610377578063d6e4fa861461038a578063da8c229e146103a9578063ddf7fcb0146103cb575f80fd5b8063a7fc7a07116100d9578063a7fc7a0714610334578063b88d4fde14610347578063c1a287e21461035a578063c475abff14610364575f80fd5b806395d89b411461030657806396e494e81461030e578063a22cb46514610321575f80fd5b80633f15457f116101695780636352211e116101445780636352211e146102c757806370a08231146102da578063715018a6146102ed5780638da5cb5b146102f5575f80fd5b80633f15457f1461028e57806342842e0e146102a15780634e543b26146102b4575f80fd5b8063095ea7b3116101a4578063095ea7b3146102325780630e297b451461024757806323b872dd1461026857806328ed4f6c1461027b575f80fd5b806301ffc9a7146101ca57806306fdde03146101f2578063081812fc14610207575b5f80fd5b6101dd6101d83660046117dd565b610448565b60405190151581526020015b60405180910390f35b6101fa610499565b6040516101e99190611845565b61021a610215366004611857565b610528565b6040516001600160a01b0390911681526020016101e9565b610245610240366004611882565b61054d565b005b61025a6102553660046118ac565b610666565b6040519081526020016101e9565b6102456102763660046118e1565b61067b565b61024561028936600461190e565b6106ac565b60085461021a906001600160a01b031681565b6102456102af3660046118e1565b6107be565b6102456102c236600461193c565b6107d8565b61021a6102d5366004611857565b610848565b61025a6102e836600461193c565b610869565b6102456108ed565b6006546001600160a01b031661021a565b6101fa610900565b6101dd61031c366004611857565b61090f565b61024561032f366004611957565b610934565b61024561034236600461193c565b610943565b61024561035536600461199b565b610996565b61025a6276a70081565b61025a610372366004611a74565b6109ce565b6101fa610385366004611857565b610b52565b61025a610398366004611857565b5f9081526007602052604090205490565b6101dd6103b736600461193c565b600a6020525f908152604090205460ff1681565b61025a60095481565b6101dd6103e2366004611a94565b6001600160a01b039182165f90815260056020908152604080832093909416825291909152205460ff1690565b61024561041d36600461193c565b610bc2565b61024561043036600461193c565b610c3b565b61025a6104433660046118ac565b610c8b565b5f6001600160e01b031982166301ffc9a760e01b148061047857506001600160e01b031982166380ac58cd60e01b145b8061049357506001600160e01b03198216630a3b53db60e21b145b92915050565b60605f80546104a790611ac0565b80601f01602080910402602001604051908101604052809291908181526020018280546104d390611ac0565b801561051e5780601f106104f55761010080835404028352916020019161051e565b820191905f5260205f20905b81548152906001019060200180831161050157829003601f168201915b5050505050905090565b5f61053282610c99565b505f908152600460205260409020546001600160a01b031690565b5f61055782610cf7565b9050806001600160a01b0316836001600160a01b0316036105c95760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084015b60405180910390fd5b336001600160a01b03821614806105e557506105e581336103e2565b6106575760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016105c0565b6106618383610d56565b505050565b5f6106738484845f610dc3565b949350505050565b6106853382610fc7565b6106a15760405162461bcd60e51b81526004016105c090611af8565b610661838383611040565b6008546009546040516302571be360e01b8152600481019190915230916001600160a01b0316906302571be390602401602060405180830381865afa1580156106f7573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061071b9190611b45565b6001600160a01b03161461072d575f80fd5b6107373383610fc7565b61073f575f80fd5b6008546009546040516306ab592360e01b81526004810191909152602481018490526001600160a01b038381166044830152909116906306ab5923906064016020604051808303815f875af115801561079a573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106619190611b60565b61066183838360405180602001604052805f815250610996565b6107e06111a2565b600854600954604051630c4b7b8560e11b815260048101919091526001600160a01b03838116602483015290911690631896f70a906044015f604051808303815f87803b15801561082f575f80fd5b505af1158015610841573d5f803e3d5ffd5b5050505050565b5f818152600760205260408120544210610860575f80fd5b61049382610cf7565b5f6001600160a01b0382166108d25760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b60648201526084016105c0565b506001600160a01b03165f9081526003602052604090205490565b6108f56111a2565b6108fe5f6111fc565b565b6060600180546104a790611ac0565b5f81815260076020526040812054429061092d906276a70090611b77565b1092915050565b61093f33838361124d565b5050565b61094b6111a2565b6001600160a01b0381165f818152600a6020526040808220805460ff19166001179055517f0a8bb31534c0ed46f380cb867bd5c803a189ced9a764e30b3a4991a9901d74749190a250565b6109a03383610fc7565b6109bc5760405162461bcd60e51b81526004016105c090611af8565b6109c88484848461131a565b50505050565b6008546009546040516302571be360e01b815260048101919091525f9130916001600160a01b03909116906302571be390602401602060405180830381865afa158015610a1d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a419190611b45565b6001600160a01b031614610a53575f80fd5b335f908152600a602052604090205460ff16610a6d575f80fd5b5f838152600760205260409020544290610a8b906276a70090611b77565b1015610a95575f80fd5b610aa26276a70083611b77565b5f848152600760205260409020546276a70090610ac0908590611b77565b610aca9190611b77565b11610ad3575f80fd5b5f8381526007602052604081208054849290610af0908490611b77565b90915550505f838152600760205260409081902054905184917f9b87a00e30f1ac65d898f070f8a3488fe60517182d0a2098e1b4b93a54aa9bd691610b3791815260200190565b60405180910390a250505f9081526007602052604090205490565b6060610b5d82610c99565b5f610b7260408051602081019091525f815290565b90505f815111610b905760405180602001604052805f815250610bbb565b80610b9a8461134d565b604051602001610bab929190611b96565b6040516020818303038152906040525b9392505050565b610bca6111a2565b6001600160a01b038116610c2f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016105c0565b610c38816111fc565b50565b610c436111a2565b6001600160a01b0381165f818152600a6020526040808220805460ff19169055517f33d83959be2573f5453b12eb9d43b3499bc57d96bd2f067ba44803c859e811139190a250565b5f6106738484846001610dc3565b5f818152600260205260409020546001600160a01b0316610c385760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105c0565b5f818152600260205260408120546001600160a01b0316806104935760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105c0565b5f81815260046020526040902080546001600160a01b0319166001600160a01b0384169081179091558190610d8a82610cf7565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6008546009546040516302571be360e01b815260048101919091525f9130916001600160a01b03909116906302571be390602401602060405180830381865afa158015610e12573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e369190611b45565b6001600160a01b031614610e48575f80fd5b335f908152600a602052604090205460ff16610e62575f80fd5b610e6b8561090f565b610e73575f80fd5b610e806276a70042611b77565b6276a700610e8e8542611b77565b610e989190611b77565b11610ea1575f80fd5b610eab8342611b77565b5f868152600760209081526040808320939093556002905220546001600160a01b031615610edc57610edc856113dd565b610ee6848661146f565b8115610f6d576008546009546040516306ab592360e01b81526004810191909152602481018790526001600160a01b038681166044830152909116906306ab5923906064016020604051808303815f875af1158015610f47573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f6b9190611b60565b505b6001600160a01b038416857fb3d987963d01b2f68493b4bdb130988f157ea43070d4ad840fee0466ed9370d9610fa38642611b77565b60405190815260200160405180910390a3610fbe8342611b77565b95945050505050565b5f80610fd283610848565b9050806001600160a01b0316846001600160a01b0316148061100d5750836001600160a01b031661100284610528565b6001600160a01b0316145b8061067357506001600160a01b038082165f9081526005602090815260408083209388168352929052205460ff16610673565b826001600160a01b031661105382610cf7565b6001600160a01b0316146110795760405162461bcd60e51b81526004016105c090611bc4565b6001600160a01b0382166110db5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b60648201526084016105c0565b826001600160a01b03166110ee82610cf7565b6001600160a01b0316146111145760405162461bcd60e51b81526004016105c090611bc4565b5f81815260046020908152604080832080546001600160a01b03199081169091556001600160a01b038781168086526003855283862080545f1901905590871680865283862080546001019055868652600290945282852080549092168417909155905184937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6006546001600160a01b031633146108fe5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016105c0565b600680546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b816001600160a01b0316836001600160a01b0316036112ae5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c65720000000000000060448201526064016105c0565b6001600160a01b038381165f81815260056020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b611325848484611040565b611331848484846115f7565b6109c85760405162461bcd60e51b81526004016105c090611c09565b60605f611359836116f1565b60010190505f8167ffffffffffffffff81111561137857611378611987565b6040519080825280601f01601f1916602001820160405280156113a2576020820181803683370190505b5090508181016020015b5f19016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a85049450846113ac57509392505050565b5f6113e782610cf7565b90506113f282610cf7565b5f83815260046020908152604080832080546001600160a01b03199081169091556001600160a01b0385168085526003845282852080545f190190558785526002909352818420805490911690555192935084927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6001600160a01b0382166114c55760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f206164647265737360448201526064016105c0565b5f818152600260205260409020546001600160a01b0316156115295760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105c0565b5f818152600260205260409020546001600160a01b03161561158d5760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105c0565b6001600160a01b0382165f81815260036020908152604080832080546001019055848352600290915280822080546001600160a01b0319168417905551839291907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b5f6001600160a01b0384163b156116e957604051630a85bd0160e11b81526001600160a01b0385169063150b7a029061163a903390899088908890600401611c5b565b6020604051808303815f875af1925050508015611674575060408051601f3d908101601f1916820190925261167191810190611c97565b60015b6116cf573d8080156116a1576040519150601f19603f3d011682016040523d82523d5f602084013e6116a6565b606091505b5080515f036116c75760405162461bcd60e51b81526004016105c090611c09565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610673565b506001610673565b5f8072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b831061172f5772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef8100000000831061175b576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc10000831061177957662386f26fc10000830492506010015b6305f5e1008310611791576305f5e100830492506008015b61271083106117a557612710830492506004015b606483106117b7576064830492506002015b600a83106104935760010192915050565b6001600160e01b031981168114610c38575f80fd5b5f602082840312156117ed575f80fd5b8135610bbb816117c8565b5f5b838110156118125781810151838201526020016117fa565b50505f910152565b5f81518084526118318160208601602086016117f8565b601f01601f19169290920160200192915050565b602081525f610bbb602083018461181a565b5f60208284031215611867575f80fd5b5035919050565b6001600160a01b0381168114610c38575f80fd5b5f8060408385031215611893575f80fd5b823561189e8161186e565b946020939093013593505050565b5f805f606084860312156118be575f80fd5b8335925060208401356118d08161186e565b929592945050506040919091013590565b5f805f606084860312156118f3575f80fd5b83356118fe8161186e565b925060208401356118d08161186e565b5f806040838503121561191f575f80fd5b8235915060208301356119318161186e565b809150509250929050565b5f6020828403121561194c575f80fd5b8135610bbb8161186e565b5f8060408385031215611968575f80fd5b82356119738161186e565b915060208301358015158114611931575f80fd5b634e487b7160e01b5f52604160045260245ffd5b5f805f80608085870312156119ae575f80fd5b84356119b98161186e565b935060208501356119c98161186e565b925060408501359150606085013567ffffffffffffffff808211156119ec575f80fd5b818701915087601f8301126119ff575f80fd5b813581811115611a1157611a11611987565b604051601f8201601f19908116603f01168101908382118183101715611a3957611a39611987565b816040528281528a6020848701011115611a51575f80fd5b826020860160208301375f60208483010152809550505050505092959194509250565b5f8060408385031215611a85575f80fd5b50508035926020909101359150565b5f8060408385031215611aa5575f80fd5b8235611ab08161186e565b915060208301356119318161186e565b600181811c90821680611ad457607f821691505b602082108103611af257634e487b7160e01b5f52602260045260245ffd5b50919050565b6020808252602d908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526c1c881bdc88185c1c1c9bdd9959609a1b606082015260800190565b5f60208284031215611b55575f80fd5b8151610bbb8161186e565b5f60208284031215611b70575f80fd5b5051919050565b8082018082111561049357634e487b7160e01b5f52601160045260245ffd5b5f8351611ba78184602088016117f8565b835190830190611bbb8183602088016117f8565b01949350505050565b60208082526025908201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060408201526437bbb732b960d91b606082015260800190565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6001600160a01b03858116825284166020820152604081018390526080606082018190525f90611c8d9083018461181a565b9695505050505050565b5f60208284031215611ca7575f80fd5b8151610bbb816117c856fea164736f6c6343000818000a","storage":{"0x0":"0x0","0x1":"0x0","0x6":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x8":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0x9":"0x93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae","0x9b8bc185dce56a7ea1b27d35e40ac15dcdf9144303dfd4d8880220078bf21a2c":"0x1","0xdb5e6a17df8534b92b0c8de590f14b4fb4b5eb2c62ef1bf7a05555e354797508":"0x1","0xe1a982900207b619cb6c39be8cb5e60da1370171412fb65b5efc25e2dce3c34c":"0x1"}},"0xce4bb7dc1eb9dce75743de6a4b48534fd427ef51":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xe85541865bbb62a05064ce5c9f41cc293a8ea996","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0xd178b720229c39de617846f84cf9c8d32a63a23d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610106575f3560e01c806371017a541161009e5780639e32d3641161006e5780639e32d3641461025a578063a424740014610281578063dd6b9e2214610294578063e1c4b65a146102a7578063e35a14e5146102ba575f80fd5b806371017a541461020e5780637b103999146102215780638f0dbd25146102345780639810b69514610247575f80fd5b8063485cc955116100d9578063485cc95514610191578063572b6c05146101a457806358884432146101d05780636ccbae5f146101fb575f80fd5b8063150b7a021461010a5780631694116d1461013b5780631bf7e13e146101505780631c351a9d14610170575b5f80fd5b61011d610118366004611434565b6102e2565b6040516001600160e01b031990911681526020015b60405180910390f35b61014e6101493660046114e3565b610372565b005b61016361015e366004611549565b61040d565b6040516101329190611601565b61018361017e366004611613565b6104d6565b604051908152602001610132565b61014e61019f366004611666565b6105c3565b6101c06101b236600461169d565b6001600160a01b0316301490565b6040519015158152602001610132565b6067546101e3906001600160a01b031681565b6040516001600160a01b039091168152602001610132565b6101836102093660046116b8565b6106f8565b6101e361021c3660046116cf565b610751565b6066546101e3906001600160a01b031681565b61014e6102423660046116ef565b610791565b6101e36102553660046116cf565b610806565b6101837fd81bbfcee722494b885e891546eeac23d0eedcd44038d7a2f6ef9ec2f9e0d23981565b6101c061028f366004611549565b61085f565b6101c06102a236600461172d565b6108a8565b61014e6102b5366004611771565b61091d565b6101e36102c83660046116b8565b5f908152606560205260409020546001600160a01b031690565b6066545f906001600160a01b03166102f8610a43565b6001600160a01b031614158061032257505f848152606560205260409020546001600160a01b0316155b156103605783610330610a43565b60405163634afa0d60e01b815260048101929092526001600160a01b031660248201526044015b60405180910390fd5b50630a85bd0160e11b95945050505050565b828261037e8282610751565b6001600160a01b031661038f610a43565b6001600160a01b0316146103c057604051632cd9b44d60e11b81526004810183905260248101829052604401610357565b5f6103cb8686610806565b90505f5b87811015610402576103fa8989838181106103ec576103ec6117b0565b905060200201358387610a51565b6001016103cf565b505050505050505050565b60605f5a905061041e85858561085f565b61043b57604051638baa579f60e01b815260040160405180910390fd5b6104cb61044b602087018761169d565b3060408801358461045f60608b018b6117c4565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f92019190915250610b8492505050565b9150505b9392505050565b6067545f906001600160a01b031663aa271e1a6104f1610a43565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015610533573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105579190611807565b1580610572575030610567610a43565b6001600160a01b0316145b156105a45761057f610a43565b60405163e2c8c9d560e01b81526001600160a01b039091166004820152602401610357565b5f6105b0858585610c60565b90506105bb81610e73565b949350505050565b5f54610100900460ff16158080156105e157505f54600160ff909116105b806105fa5750303b1580156105fa57505f5460ff166001145b61065d5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610357565b5f805460ff19166001179055801561067e575f805461ff0019166101001790555b606680546001600160a01b038086166001600160a01b031992831617909255606780549285169290911691909117905580156106f3575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f9061074a906060016040516020818303038152906040528051906020012090565b5492915050565b5f80838360405160200161076f929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209150505b92915050565b828261079d8282610751565b6001600160a01b03166107ae610a43565b6001600160a01b0316146107df57604051632cd9b44d60e11b81526004810183905260248101829052604401610357565b856107e981610e73565b6107fd876107f78889610806565b86610a51565b50505050505050565b5f8060026108148585610e8f565b6040516108219190611826565b602060405180830381855afa15801561083c573d5f803e3d5ffd5b5050506040513d601f19601f820116820180604052508101906105bb9190611841565b5f6105bb61086c856118c6565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250610f1492505050565b5f805b8281101561091257846001600160a01b03166108f38585848181106108d2576108d26117b0565b905060200201355f908152606560205260409020546001600160a01b031690565b6001600160a01b03161461090a575f9150506104cf565b6001016108ab565b506001949350505050565b6067546001600160a01b031663aa271e1a610936610a43565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015610978573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061099c9190611807565b15806109b75750306109ac610a43565b6001600160a01b0316145b156109c45761057f610a43565b5f5b818110156106f357610a3a8383838181106109e3576109e36117b0565b90506020028101906109f59190611983565b610a039060208101906117c4565b858585818110610a1557610a156117b0565b9050602002810190610a279190611983565b610a3590602081019061169d565b610c60565b506001016109c6565b5f610a4c611059565b905090565b5f838152606560205260409020546001600160a01b03838116911614610ab4575f83815260656020526040908190205490516326995d8360e11b8152600481018590526001600160a01b0391821660248201529083166044820152606401610357565b5f838152606560205260409081902080546001600160a01b03191690556066549051632142170760e11b81523060048201526001600160a01b03838116602483015260448201869052909116906342842e0e906064015f604051808303815f87803b158015610b21575f80fd5b505af1158015610b33573d5f803e3d5ffd5b50505050806001600160a01b0316610b49610a43565b6001600160a01b0316847f9a471856befea1cabcd7fc8a1c4d70ea07b8ed2ee205cc361f932433542ef3fe60405160405180910390a4505050565b6060610b8f85611076565b5f80876001600160a01b031686610ba88b8a89896110db565b604051610bb59190611826565b5f604051808303815f8787f1925050503d805f8114610bef576040519150601f19603f3d011682016040523d82523d5f602084013e610bf4565b606091505b509092509050610c05603f876119bf565b5a11610c1357610c136119d2565b610c5382826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061110b565b9998505050505050505050565b5f60605f7fd81bbfcee722494b885e891546eeac23d0eedcd44038d7a2f6ef9ec2f9e0d2398686604051602001610c989291906119e6565b60405160208183030381529060405280519060200120604051602001610cc8929190918252602082015260400190565b60408051808303601f19018152828252805160209091012060028084526060840190925292505f9190816020015b6060815260200190600190039081610cf657905050905086868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920182905250855186945090925015159050610d5657610d566117b0565b6020026020010181905250604051806040016040528060038152602001621e9a5b60ea1b81525081600181518110610d9057610d906117b0565b6020908102919091018101919091525f8381526065909152604080822080546001600160a01b0319166001600160a01b03898116919091179091556067549151635cd7e3b360e01b8152911691635cd7e3b391610df891309186918991829190600401611a4d565b5f604051808303815f87803b158015610e0f575f80fd5b505af1158015610e21573d5f803e3d5ffd5b50505050846001600160a01b0316827f08717469d38a4b02325ea6637978c7952f94d3d8fc7848994f618ddbf4d637f18989604051610e61929190611aab565b60405180910390a35095945050505050565b303303610e8657610e8381611144565b50565b610e8381611076565b60605f82610e9f60016020611ad9565b60ff1660208110610eb257610eb26117b0565b1a9050610ec0600282611af2565b60ff1615610ecf576003610ed2565b60025b84604051602001610efc92919060f89290921b6001600160f81b0319168252600182015260210190565b60405160208183030381529060405291505092915050565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015610f58573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f7c9190611841565b90505f611029866060015180519060200120868860200151604051602001610fc99392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561104f5750855161104f906001600160a01b0316828661116e565b9695505050505050565b5f30330361106e575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f906060016040516020818303038152906040528051906020012090506110ca8190565b546110d6906001611b13565b905550565b60608285856040516020016110f293929190611b26565b6040516020818303038152906040529050949350505050565b6060831561111a5750816104cf565b82511561112a5782518084602001fd5b8160405162461bcd60e51b81526004016103579190611601565b61114c6112a9565b8114610e8357604051635637b6af60e11b815260048101829052602401610357565b5f805f61117b85856112bb565b90925090505f81600481111561119357611193611b64565b1480156111b15750856001600160a01b0316826001600160a01b0316145b156111c1576001925050506104cf565b5f80876001600160a01b0316631626ba7e60e01b88886040516024016111e8929190611b78565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516112269190611826565b5f60405180830381855afa9150503d805f811461125e576040519150601f19603f3d011682016040523d82523d5f602084013e611263565b606091505b5091509150818015611276575080516020145b801561129d57508051630b135d3f60e11b9061129b9083016020908101908401611841565b145b98975050505050505050565b5f3033036110735750601f1936013590565b5f8082516041036112ef576020830151604084015160608501515f1a6112e3878285856112fd565b945094505050506112f6565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561133257505f905060036113d9565b8460ff16601b1415801561134a57508460ff16601c14155b1561135a57505f905060046113d9565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156113ab573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b0381166113d3575f600192509250506113d9565b91505f90505b94509492505050565b6001600160a01b0381168114610e83575f80fd5b5f8083601f840112611406575f80fd5b50813567ffffffffffffffff81111561141d575f80fd5b6020830191508360208285010111156112f6575f80fd5b5f805f805f60808688031215611448575f80fd5b8535611453816113e2565b94506020860135611463816113e2565b935060408601359250606086013567ffffffffffffffff811115611485575f80fd5b611491888289016113f6565b969995985093965092949392505050565b5f8083601f8401126114b2575f80fd5b50813567ffffffffffffffff8111156114c9575f80fd5b6020830191508360208260051b85010111156112f6575f80fd5b5f805f805f608086880312156114f7575f80fd5b853567ffffffffffffffff81111561150d575f80fd5b611519888289016114a2565b9096509450506020860135925060408601359150606086013561153b816113e2565b809150509295509295909350565b5f805f6040848603121561155b575f80fd5b833567ffffffffffffffff80821115611572575f80fd5b9085019060808288031215611585575f80fd5b9093506020850135908082111561159a575f80fd5b506115a7868287016113f6565b9497909650939450505050565b5f5b838110156115ce5781810151838201526020016115b6565b50505f910152565b5f81518084526115ed8160208601602086016115b4565b601f01601f19169290920160200192915050565b602081525f6104cf60208301846115d6565b5f805f60408486031215611625575f80fd5b833567ffffffffffffffff81111561163b575f80fd5b611647868287016113f6565b909450925050602084013561165b816113e2565b809150509250925092565b5f8060408385031215611677575f80fd5b8235611682816113e2565b91506020830135611692816113e2565b809150509250929050565b5f602082840312156116ad575f80fd5b81356104cf816113e2565b5f602082840312156116c8575f80fd5b5035919050565b5f80604083850312156116e0575f80fd5b50508035926020909101359150565b5f805f8060808587031215611702575f80fd5b8435935060208501359250604085013591506060850135611722816113e2565b939692955090935050565b5f805f6040848603121561173f575f80fd5b833561174a816113e2565b9250602084013567ffffffffffffffff811115611765575f80fd5b6115a7868287016114a2565b5f8060208385031215611782575f80fd5b823567ffffffffffffffff811115611798575f80fd5b6117a4858286016114a2565b90969095509350505050565b634e487b7160e01b5f52603260045260245ffd5b5f808335601e198436030181126117d9575f80fd5b83018035915067ffffffffffffffff8211156117f3575f80fd5b6020019150368190038213156112f6575f80fd5b5f60208284031215611817575f80fd5b815180151581146104cf575f80fd5b5f82516118378184602087016115b4565b9190910192915050565b5f60208284031215611851575f80fd5b5051919050565b634e487b7160e01b5f52604160045260245ffd5b6040516080810167ffffffffffffffff8111828210171561188f5761188f611858565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156118be576118be611858565b604052919050565b5f608082360312156118d6575f80fd5b6118de61186c565b82356118e9816113e2565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff80821115611919575f80fd5b9085019036601f83011261192b575f80fd5b81358181111561193d5761193d611858565b61194f601f8201601f19168501611895565b91508082523684828501011115611964575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b5f8235603e19833603018112611837575f80fd5b634e487b7160e01b5f52601260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b5f826119cd576119cd611997565b500490565b634e487b7160e01b5f52600160045260245ffd5b818382375f9101908152919050565b5f8282518085526020808601955060208260051b840101602086015f5b84811015611a4057601f19868403018952611a2e8383516115d6565b98840198925090830190600101611a12565b5090979650505050505050565b6001600160a01b038616815260a0602082018190525f90611a70908301876119f5565b8281036040840152611a8281876119f5565b90508281036060840152611a9681866119f5565b91505082151560808301529695505050505050565b60208152816020820152818360408301375f818301604090810191909152601f909201601f19160101919050565b60ff828116828216039081111561078b5761078b6119ab565b5f60ff831680611b0457611b04611997565b8060ff84160691505092915050565b8082018082111561078b5761078b6119ab565b5f8451611b378184602089016115b4565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f6105bb60408301846115d656fea164736f6c6343000818000a","storage":{"0x0":"0xff"}},"0xda9e1b3e395bfb0a45f03c7f615146b9d896c959":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100b1575f3560e01c806340c10f191161006e57806340c10f191461013d57806370a082311461015257806395d89b411461017a578063a457c2d714610182578063a9059cbb14610195578063dd62ed3e146101a8575f80fd5b806306fdde03146100b5578063095ea7b3146100d357806318160ddd146100f657806323b872dd14610108578063313ce5671461011b578063395093511461012a575b5f80fd5b6100bd6101bb565b6040516100ca9190610775565b60405180910390f35b6100e66100e13660046107dc565b61024b565b60405190151581526020016100ca565b6002545b6040519081526020016100ca565b6100e6610116366004610804565b610264565b604051601281526020016100ca565b6100e66101383660046107dc565b610287565b61015061014b3660046107dc565b6102a8565b005b6100fa61016036600461083d565b6001600160a01b03165f9081526020819052604090205490565b6100bd6102b6565b6100e66101903660046107dc565b6102c5565b6100e66101a33660046107dc565b610344565b6100fa6101b636600461085d565b610351565b6060600380546101ca9061088e565b80601f01602080910402602001604051908101604052809291908181526020018280546101f69061088e565b80156102415780601f1061021857610100808354040283529160200191610241565b820191905f5260205f20905b81548152906001019060200180831161022457829003601f168201915b5050505050905090565b5f3361025881858561037b565b60019150505b92915050565b5f3361027185828561049e565b61027c858585610516565b506001949350505050565b5f336102588185856102998383610351565b6102a391906108c6565b61037b565b6102b282826106b8565b5050565b6060600480546101ca9061088e565b5f33816102d28286610351565b9050838110156103375760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b61027c828686840361037b565b5f33610258818585610516565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b6001600160a01b0383166103dd5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161032e565b6001600160a01b03821661043e5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161032e565b6001600160a01b038381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b5f6104a98484610351565b90505f19811461051057818110156105035760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161032e565b610510848484840361037b565b50505050565b6001600160a01b03831661057a5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161032e565b6001600160a01b0382166105dc5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161032e565b6001600160a01b0383165f90815260208190526040902054818110156106535760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161032e565b6001600160a01b038481165f81815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3610510565b6001600160a01b03821661070e5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640161032e565b8060025f82825461071f91906108c6565b90915550506001600160a01b0382165f81815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b5f602080835283518060208501525f5b818110156107a157858101830151858201604001528201610785565b505f604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146107d7575f80fd5b919050565b5f80604083850312156107ed575f80fd5b6107f6836107c1565b946020939093013593505050565b5f805f60608486031215610816575f80fd5b61081f846107c1565b925061082d602085016107c1565b9150604084013590509250925092565b5f6020828403121561084d575f80fd5b610856826107c1565b9392505050565b5f806040838503121561086e575f80fd5b610877836107c1565b9150610885602084016107c1565b90509250929050565b600181811c908216806108a257607f821691505b6020821081036108c057634e487b7160e01b5f52602260045260245ffd5b50919050565b8082018082111561025e57634e487b7160e01b5f52601160045260245ffdfea164736f6c6343000818000a","storage":{"0x2":"0xe8d4a51000","0x3":"0x0","0x4":"0x0","0x47668262eb76f3aa61b856a0c078f33a11f46671cf1466c3616ba74a22fcdd92":"0xe8d4a51000","0x9cc83e833a69122bf7773b58c082655d780ae469ab7cdf5d1047a30229e55875":"0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"}},"0xe0afc4e9e03e4aa67257df7a2eca77454309789d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061002b5760003560e01c806316f1983114610030575b600080fd5b6100b06004803603604081101561004657600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561007157600080fd5b82018360208201111561008357600080fd5b803590602001918460018302840111640100000000831117156100a557600080fd5b5090925090506100b2565b005b826001600160a01b031660017f103fed9db65eac19c4d870f49ab7520fe03b99f1838e5996caf47e9e43308392848460405180806020018281038252848482818152602001925080828437600083820152604051601f909101601f19169092018290039550909350505050a350505056fea164736f6c6343000606000a","storage":{}},"0xe4fdf45c2f8d198854f8823809c7a988eeaaa493":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100a6575f3560e01c80638cb8ecec1161006e5780638cb8ecec1461013e5780638da5cb5b14610151578063cbe9e76414610161578063da8c229e14610183578063e0dba60f146101a5578063f2fde38b146101b8575f80fd5b806301670ba9146100aa57806301ffc9a7146100bf5780633f15457f146100f85780634e543b2614610123578063715018a614610136575b5f80fd5b6100bd6100b8366004610529565b6101cb565b005b6100e36100cd366004610540565b6001600160e01b0319166301ffc9a760e01b1490565b60405190151581526020015b60405180910390f35b60025461010b906001600160a01b031681565b6040516001600160a01b0390911681526020016100ef565b6100bd610131366004610589565b610217565b6100bd610282565b6100bd61014c3660046105a2565b610295565b5f546001600160a01b031661010b565b6100e361016f366004610529565b60036020525f908152604090205460ff1681565b6100e3610191366004610589565b60016020525f908152604090205460ff1681565b6100bd6101b33660046105cc565b6103a2565b6100bd6101c6366004610589565b610408565b6101d3610481565b60405181907f1764176cfa565853ba1ded547a830a9f9bff95231ef6fd228b3ddd6175777569905f90a25f908152600360205260409020805460ff19166001179055565b61021f610481565b600254604051630c4b7b8560e11b81525f60048201526001600160a01b03838116602483015290911690631896f70a906044015f604051808303815f87803b158015610269575f80fd5b505af115801561027b573d5f803e3d5ffd5b5050505050565b61028a610481565b6102935f6104da565b565b335f9081526001602052604090205460ff166103095760405162461bcd60e51b815260206004820152602860248201527f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f604482015267373a3937b63632b960c11b60648201526084015b60405180910390fd5b5f8281526003602052604090205460ff1615610323575f80fd5b6002546040516306ab592360e01b81525f6004820152602481018490526001600160a01b038381166044830152909116906306ab5923906064016020604051808303815f875af1158015610379573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061039d9190610605565b505050565b6103aa610481565b6001600160a01b0382165f81815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b610410610481565b6001600160a01b0381166104755760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610300565b61047e816104da565b50565b5f546001600160a01b031633146102935760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610300565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f60208284031215610539575f80fd5b5035919050565b5f60208284031215610550575f80fd5b81356001600160e01b031981168114610567575f80fd5b9392505050565b80356001600160a01b0381168114610584575f80fd5b919050565b5f60208284031215610599575f80fd5b6105678261056e565b5f80604083850312156105b3575f80fd5b823591506105c36020840161056e565b90509250929050565b5f80604083850312156105dd575f80fd5b6105e68361056e565b9150602083013580151581146105fa575f80fd5b809150509250929050565b5f60208284031215610615575f80fd5b505191905056fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0xbdf39e9e65b2355b1b0b06df799c09159f0ab90f06a9bb2153f5de7d9b0ea81":"0x1","0x97b771283c9c769f7b9399fef71d92816f2bd31de10203b676671b01eb920966":"0x1"}},"0xe85541865bbb62a05064ce5c9f41cc293a8ea996":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610060575f3560e01c8063715018a6146100645780638129fc1c1461006e5780638da5cb5b14610076578063a3f4df7e14610096578063f2fde38b146100cf578063ffa1ad74146100e2575b5f80fd5b61006c610106565b005b61006c610119565b6033546040516001600160a01b0390911681526020015b60405180910390f35b6100c26040518060400160405280600d81526020016c2aa7299d1027b832b930ba37b960991b81525081565b60405161008d91906103bd565b61006c6100dd366004610409565b610229565b6100c2604051806040016040528060058152602001640302e312e360dc1b81525081565b61010e61029f565b6101175f6102f9565b565b5f54610100900460ff161580801561013757505f54600160ff909116105b806101505750303b15801561015057505f5460ff166001145b6101b85760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b5f805460ff1916600117905580156101d9575f805461ff0019166101001790555b6101e161034a565b8015610226575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50565b61023161029f565b6001600160a01b0381166102965760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016101af565b610226816102f9565b6033546001600160a01b031633146101175760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016101af565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff166103b45760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016101af565b610117336102f9565b5f602080835283518060208501525f5b818110156103e9578581018301518582016040015282016103cd565b505f604082860101526040601f19601f8301168501019250505092915050565b5f60208284031215610419575f80fd5b81356001600160a01b038116811461042f575f80fd5b939250505056fea164736f6c6343000818000a","storage":{}},"0xead34b583404e3cb0c9b97c2d1c486be67be9f30":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0xec71e4e674fe0f432693dc2b935c34bd2774c003":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610090575f3560e01c8063a200e15311610063578063a200e15314610146578063a34e35961461016d578063c8a4271f14610180578063cd5d2c74146101bf578063d820ed42146101e6575f80fd5b806301ffc9a7146100945780632c0fd74c146100bc57806350e9a715146100f157806359b6b86c1461011f575b5f80fd5b6100a76100a2366004610600565b61020d565b60405190151581526020015b60405180910390f35b6100e37f000000000000000000000000000000000000000000000000000000000000000081565b6040519081526020016100b3565b6101046100ff366004610627565b610243565b604080518251815260209283015192810192909252016100b3565b6100e37f000000000000000000000000000000000000000000000000000000000000000181565b6100e37f000000000000000000000000000000000000000000000000000000000000000481565b6100e361017b366004610627565b610404565b6101a77f000000000000000000000000f3810eb7d64d1c11ae12727d957c6202b24492f581565b6040516001600160a01b0390911681526020016100b3565b6100e37f000000000000000000000000000000000000000000000000000000000000000081565b6100e37f000000000000000000000000000000000000000000000000000000000000000281565b5f6001600160e01b031982166301ffc9a760e01b148061023d57506001600160e01b031982166350e9a71560e01b145b92915050565b604080518082019091525f80825260208201525f61029586868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061045392505050565b90505f600582106102d1576102ca847f00000000000000000000000000000000000000000000000000000000000000016106b3565b9050610394565b81600403610303576102ca847f00000000000000000000000000000000000000000000000000000000000000026106b3565b81600303610335576102ca847f00000000000000000000000000000000000000000000000000000000000000046106b3565b81600203610367576102ca847f00000000000000000000000000000000000000000000000000000000000000006106b3565b610391847f00000000000000000000000000000000000000000000000000000000000000006106b3565b90505b60405180604001604052806103a883610554565b81526020016103f76103f28a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c92508b91506105f89050565b610554565b9052979650505050505050565b5f61044a6103f286868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508892508791506105f89050565b95945050505050565b80515f90819081905b8082101561054b575f858381518110610477576104776106ca565b01602001516001600160f81b0319169050600160ff1b8110156104a65761049f6001846106de565b9250610538565b600760fd1b6001600160f81b0319821610156104c75761049f6002846106de565b600f60fc1b6001600160f81b0319821610156104e85761049f6003846106de565b601f60fb1b6001600160f81b0319821610156105095761049f6004846106de565b603f60fa1b6001600160f81b03198216101561052a5761049f6005846106de565b6105356006846106de565b92505b5082610543816106f1565b93505061045c565b50909392505050565b5f807f000000000000000000000000f3810eb7d64d1c11ae12727d957c6202b24492f56001600160a01b03166350d25bcd6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105b2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105d69190610709565b9050806105e7846305f5e1006106b3565b6105f19190610720565b9392505050565b5f9392505050565b5f60208284031215610610575f80fd5b81356001600160e01b0319811681146105f1575f80fd5b5f805f806060858703121561063a575f80fd5b843567ffffffffffffffff80821115610651575f80fd5b818701915087601f830112610664575f80fd5b813581811115610672575f80fd5b886020828501011115610683575f80fd5b6020928301999098509187013596604001359550909350505050565b634e487b7160e01b5f52601160045260245ffd5b808202811582820484141761023d5761023d61069f565b634e487b7160e01b5f52603260045260245ffd5b8082018082111561023d5761023d61069f565b5f600182016107025761070261069f565b5060010190565b5f60208284031215610719575f80fd5b5051919050565b5f8261073a57634e487b7160e01b5f52601260045260245ffd5b50049056fea164736f6c6343000818000a","storage":{}},"0xf1ad43dc647f27c2366ab4742d68d21282f7d50e":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101d1575f3560e01c80638b95dd71116100fe578063c86902331161009e578063e32954eb1161006e578063e32954eb146104f2578063e59d895d14610505578063e985e9c514610518578063f1cb7e0614610553575f80fd5b8063c869023314610435578063ce3decdc1461048c578063d5fa2b001461049f578063d700ff33146104b2575f80fd5b8063a8fa5682116100d9578063a8fa5682146103ac578063a9784b3e146103bf578063ac9650d814610402578063bc1c58d114610422575f80fd5b80638b95dd7114610373578063a22cb46514610386578063a4b91a0114610399575f80fd5b80633603d758116101745780635c98042b116101445780635c98042b14610327578063623195b01461033a578063691f34311461034d5780637737221314610360575f80fd5b80633603d758146102975780633b3b57de146102aa5780634cbf6ba4146102bd57806359d1d43c14610307575f80fd5b8063124a319c116101af578063124a319c146102255780632203ab561461025057806329cd62ea14610271578063304e6ade14610284575f80fd5b806301ffc9a7146101d55780630af179d7146101fd57806310f13a8c14610212575b5f80fd5b6101e86101e3366004612267565b610566565b60405190151581526020015b60405180910390f35b61021061020b3660046122bd565b610576565b005b610210610220366004612304565b610778565b610238610233366004612377565b610842565b6040516001600160a01b0390911681526020016101f4565b61026361025e3660046123a1565b610a87565b6040516101f492919061240e565b61021061027f366004612426565b610bb5565b6102106102923660046122bd565b610c4d565b6102106102a536600461244f565b610cc6565b6102386102b836600461244f565b610d64565b6101e86102cb3660046123a1565b5f82815260208181526040808320546001600160401b031683526006825280832094835293815283822092825291909152205461ffff16151590565b61031a6103153660046122bd565b610d93565b6040516101f49190612466565b61031a61033536600461244f565b610e6f565b610210610348366004612478565b610f2a565b61031a61035b36600461244f565b610fc2565b61021061036e3660046122bd565b610ffa565b6102106103813660046124da565b611073565b6102106103943660046125b9565b611150565b6102106103a73660046125e3565b61122a565b61031a6103ba36600461261e565b6112f6565b6101e86103cd36600461265a565b6001600160a01b039283165f908152600c60209081526040808320948352938152838220929094168152925290205460ff1690565b6104156104103660046126ce565b611342565b6040516101f4919061270c565b61031a61043036600461244f565b61134f565b61047761044336600461244f565b5f81815260208181526040808320546001600160401b03168352600982528083209383529290522080546001909101549091565b604080519283526020830191909152016101f4565b61021061049a3660046122bd565b611387565b6102106104ad36600461276e565b6114c3565b6104da6104c036600461244f565b5f602081905290815260409020546001600160401b031681565b6040516001600160401b0390911681526020016101f4565b61041561050036600461279c565b6114e9565b6102106105133660046127d6565b6114fe565b6101e8610526366004612808565b6001600160a01b039182165f908152600b6020908152604080832093909416825291909152205460ff1690565b61031a6105613660046123a1565b6115a2565b5f61057082611666565b92915050565b826105808161168a565b610588575f80fd5b5f84815260208181526040808320548151601f87018490048402810184019092528582528392606092839285926001600160401b039091169183916105eb9183918d908d90819084018382808284375f9201919091525092939250506118b79050565b90505b80515160208201511015610712578661ffff165f03610652578060400151965061061781611912565b94508460405160200161062a9190612834565b60405160208183030381529060405280519060200120925061064b81611933565b9350610704565b5f61065c82611912565b9050816040015161ffff168861ffff16141580610680575061067e868261194f565b155b15610702576106db8c878a8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250505060208801518d91506106d2908290612863565b8b51158a61196a565b8160400151975081602001519650809550858051906020012093506106ff82611933565b94505b505b61070d81611bc9565b6105ee565b5083511561076c5761076c8a85888c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c925061076391508290508f612863565b8951158861196a565b50505050505050505050565b846107828161168a565b61078a575f80fd5b5f86815260208181526040808320546001600160401b03168352600a8252808320898452909152908190209051849184916107c89089908990612876565b908152602001604051809103902091826107e3929190612901565b5084846040516107f4929190612876565b6040518091039020867f448bc014f1536726cf8d54ff3d6481ed3cbc683c2591ca204274009afa09b1a18787878760405161083294939291906129e2565b60405180910390a3505050505050565b5f82815260208181526040808320546001600160401b031683526007825280832085845282528083206001600160e01b0319851684529091528120546001600160a01b03168015610894579050610570565b5f61089e85610d64565b90506001600160a01b0381166108b8575f92505050610570565b6040516301ffc9a760e01b60248201525f9081906001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b1790525161090f9190612834565b5f60405180830381855afa9150503d805f8114610947576040519150601f19603f3d011682016040523d82523d5f602084013e61094c565b606091505b509150915081158061095f575060208151105b80610989575080601f8151811061097857610978612a13565b01602001516001600160f81b031916155b1561099a575f945050505050610570565b6040516001600160e01b0319871660248201526001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b179052516109f09190612834565b5f60405180830381855afa9150503d805f8114610a28576040519150601f19603f3d011682016040523d82523d5f602084013e610a2d565b606091505b509092509050811580610a41575060208151105b80610a6b575080601f81518110610a5a57610a5a612a13565b01602001516001600160f81b031916155b15610a7c575f945050505050610570565b509095945050505050565b5f82815260208181526040808320546001600160401b03168352600180835281842086855290925282206060915b848111610b975780851615801590610ae457505f8181526020839052604081208054610ae090612885565b9050115b15610b8f5780825f8381526020019081526020015f20808054610b0690612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610b3290612885565b8015610b7d5780601f10610b5457610100808354040283529160200191610b7d565b820191905f5260205f20905b815481529060010190602001808311610b6057829003601f168201915b50505050509050935093505050610bae565b60011b610ab5565b505f60405180602001604052805f81525092509250505b9250929050565b82610bbf8161168a565b610bc7575f80fd5b60408051808201825284815260208082018581525f888152808352848120546001600160401b031681526009835284812089825283528490209251835551600190920191909155815185815290810184905285917f1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e4691015b60405180910390a250505050565b82610c578161168a565b610c5f575f80fd5b5f84815260208181526040808320546001600160401b03168352600382528083208784529091529020610c93838583612901565b50837fe379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d75788484604051610c3f929190612a27565b80610cd08161168a565b610cd8575f80fd5b5f82815260208190526040812080546001600160401b031691610cfa83612a3a565b82546101009290920a6001600160401b038181021990931691831602179091555f84815260208181526040918290205491519190921681528492507fc6621ccb8f3f5a04bb6502154b2caf6adf5983fe76dfef1cfc9c42e3579db444910160405180910390a25050565b5f80610d7183603c6115a2565b905080515f03610d8357505f92915050565b610d8c81611cae565b9392505050565b5f83815260208181526040808320546001600160401b03168352600a825280832086845290915290819020905160609190610dd19085908590612876565b90815260200160405180910390208054610dea90612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610e1690612885565b8015610e615780601f10610e3857610100808354040283529160200191610e61565b820191905f5260205f20905b815481529060010190602001808311610e4457829003601f168201915b505050505090509392505050565b5f81815260208181526040808320546001600160401b03168352600482528083208484529091529020805460609190610ea790612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610ed390612885565b8015610f1e5780601f10610ef557610100808354040283529160200191610f1e565b820191905f5260205f20905b815481529060010190602001808311610f0157829003601f168201915b50505050509050919050565b83610f348161168a565b610f3c575f80fd5b83610f48600182612863565b1615610f52575f80fd5b5f85815260208181526040808320546001600160401b031683526001825280832088845282528083208784529091529020610f8e838583612901565b50604051849086907faa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe3905f90a35050505050565b5f81815260208181526040808320546001600160401b03168352600882528083208484529091529020805460609190610ea790612885565b826110048161168a565b61100c575f80fd5b5f84815260208181526040808320546001600160401b03168352600882528083208784529091529020611040838583612901565b50837fb7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f78484604051610c3f929190612a27565b8261107d8161168a565b611085575f80fd5b837f65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af75284846040516110b792919061240e565b60405180910390a2603c830361110e57837f52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd26110f284611cae565b6040516001600160a01b03909116815260200160405180910390a25b5f84815260208181526040808320546001600160401b0316835260028252808320878452825280832086845290915290206111498382612a5f565b5050505050565b6001600160a01b03821633036111bf5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084015b60405180910390fd5b335f818152600b602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6001600160a01b03821633036112825760405162461bcd60e51b815260206004820181905260248201527f53657474696e672064656c65676174652073746174757320666f722073656c6660448201526064016111b6565b335f818152600c6020908152604080832087845282528083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519384529286917ff0ddb3b04746704017f9aa8bd728fcc2c1d11675041205350018915f5e4750a0910160405180910390a4505050565b5f83815260208181526040808320546001600160401b03168352600582528083208684528252808320858452825280832061ffff851684529091529020805460609190610dea90612885565b6060610d8c5f8484611ccb565b5f81815260208181526040808320546001600160401b03168352600382528083208484529091529020805460609190610ea790612885565b826113918161168a565b611399575f80fd5b5f84815260208181526040808320546001600160401b031680845260048352818420888552909252822080549192916113d190612885565b80601f01602080910402602001604051908101604052809291908181526020018280546113fd90612885565b80156114485780601f1061141f57610100808354040283529160200191611448565b820191905f5260205f20905b81548152906001019060200180831161142b57829003601f168201915b505050506001600160401b0384165f9081526004602090815260408083208b8452909152902091925061147e9050858783612901565b50857f8f15ed4b723ef428f250961da8315675b507046737e19319fc1a4d81bfe87f858287876040516114b393929190612b1e565b60405180910390a2505050505050565b816114cd8161168a565b6114d5575f80fd5b6114e483603c61038185611e88565b505050565b60606114f6848484611ccb565b949350505050565b826115088161168a565b611510575f80fd5b5f84815260208181526040808320546001600160401b031683526007825280832087845282528083206001600160e01b031987168085529083529281902080546001600160a01b0319166001600160a01b038716908117909155905190815286917f7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa910160405180910390a350505050565b5f82815260208181526040808320546001600160401b0316835260028252808320858452825280832084845290915290208054606091906115e290612885565b80601f016020809104026020016040519081016040528092919081815260200182805461160e90612885565b80156116595780601f1061163057610100808354040283529160200191611659565b820191905f5260205f20905b81548152906001019060200180831161163c57829003601f168201915b5050505050905092915050565b5f6001600160e01b03198216631674750f60e21b1480610570575061057082611eb8565b5f336001600160a01b037f0000000000000000000000004fbf7b2f171336958be5d15ff762a5cff53635681614806116ea5750336001600160a01b037f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5616145b156116f757506001919050565b6040516302571be360e01b8152600481018390525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa15801561175c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117809190612b4d565b90507f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b0316816001600160a01b031603611845576040516331a9108f60e11b8152600481018490527f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b031690636352211e90602401602060405180830381865afa15801561181e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118429190612b4d565b90505b6001600160a01b03811633148061187e57506001600160a01b0381165f908152600b6020908152604080832033845290915290205460ff165b80610d8c57506001600160a01b0381165f908152600c60209081526040808320868452825280832033845290915290205460ff16610d8c565b6118ff6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261057081611bc9565b602081015181516060916105709161192a9082611edc565b84519190611f33565b60a081015160c08201516060916105709161192a908290612863565b5f81518351148015610d8c5750610d8c835f845f8751611fa7565b865160208801205f61197d878787611f33565b90508315611aa1576001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c168452909152902080546119c690612885565b159050611a23576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611a0783612b68565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091528120611a62916121f9565b897f03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a12078a8a604051611a94929190612b84565b60405180910390a261076c565b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c16845290915290208054611ae290612885565b90505f03611b40576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611b2483612ba9565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091529020611b808282612a5f565b50897f52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b8a8a84604051611bb593929190612bbf565b60405180910390a250505050505050505050565b60c08101516020820181905281515111611be05750565b5f611bf2825f01518360200151611edc565b8260200151611c019190612bed565b8251909150611c109082611fc9565b61ffff166040830152611c24600282612bed565b8251909150611c339082611fc9565b61ffff166060830152611c47600282612bed565b8251909150611c569082611fef565b63ffffffff166080830152611c6c600482612bed565b82519091505f90611c7d9083611fc9565b61ffff169050611c8e600283612bed565b60a084018190529150611ca18183612bed565b60c0909301929092525050565b5f8151601414611cbc575f80fd5b5060200151600160601b900490565b6060816001600160401b03811115611ce557611ce56124c6565b604051908082528060200260200182016040528015611d1857816020015b6060815260200190600190039081611d035790505b5090505f5b82811015611e80578415611dd8575f848483818110611d3e57611d3e612a13565b9050602002810190611d509190612c00565b611d5f91602491600491612c42565b611d6891612c69565b9050858114611dd65760405162461bcd60e51b815260206004820152603460248201527f6d756c746963616c6c3a20416c6c207265636f726473206d7573742068617665604482015273040c240dac2e8c6d0d2dcce40dcc2dacad0c2e6d60631b60648201526084016111b6565b505b5f8030868685818110611ded57611ded612a13565b9050602002810190611dff9190612c00565b604051611e0d929190612876565b5f60405180830381855af49150503d805f8114611e45576040519150601f19603f3d011682016040523d82523d5f602084013e611e4a565b606091505b509150915081611e58575f80fd5b80848481518110611e6b57611e6b612a13565b60209081029190910101525050600101611d1d565b509392505050565b604080516014808252818301909252606091602082018180368337505050600160601b9290920260208301525090565b5f6001600160e01b0319821663c869023360e01b1480610570575061057082612017565b5f815b83518110611eef57611eef612c86565b5f611efa858361203b565b60ff169050611f0a816001612bed565b611f149083612bed565b9150805f03611f235750611f29565b50611edf565b6114f68382612863565b8251606090611f428385612bed565b1115611f4c575f80fd5b5f826001600160401b03811115611f6557611f656124c6565b6040519080825280601f01601f191660200182016040528015611f8f576020820181803683370190505b50905060208082019086860101610a7c82828761205e565b5f611fb38484846120b3565b611fbe8787856120b3565b149695505050505050565b81515f90611fd8836002612bed565b1115611fe2575f80fd5b50016002015161ffff1690565b81515f90611ffe836004612bed565b1115612008575f80fd5b50016004015163ffffffff1690565b5f6001600160e01b0319821663691f343160e01b14806105705750610570826120d5565b5f82828151811061204e5761204e612a13565b016020015160f81c905092915050565b602081106120965781518352612075602084612bed565b9250612082602083612bed565b915061208f602082612863565b905061205e565b905182516020929092036101000a5f190180199091169116179052565b82515f906120c18385612bed565b11156120cb575f80fd5b5091016020012090565b5f6001600160e01b031982166304928c6760e21b14806105705750610570825f6001600160e01b0319821663547d2b4160e11b148061212457506001600160e01b03198216635c98042b60e01b145b806105705750610570825f6001600160e01b0319821663bc1c58d160e01b14806105705750610570825f6001600160e01b03198216631d9dabef60e11b148061217d57506001600160e01b031982166378e5bf0360e11b145b806105705750610570825f6001600160e01b03198216631101d5ab60e11b14806105705750610570825f6001600160e01b0319821663d700ff3360e01b14806105705750610570825f6001600160e01b03198216634fbf043360e01b148061057057506301ffc9a760e01b6001600160e01b0319831614610570565b50805461220590612885565b5f825580601f10612214575050565b601f0160209004905f5260205f20908101906122309190612233565b50565b5b80821115612247575f8155600101612234565b5090565b80356001600160e01b031981168114612262575f80fd5b919050565b5f60208284031215612277575f80fd5b610d8c8261224b565b5f8083601f840112612290575f80fd5b5081356001600160401b038111156122a6575f80fd5b602083019150836020828501011115610bae575f80fd5b5f805f604084860312156122cf575f80fd5b8335925060208401356001600160401b038111156122eb575f80fd5b6122f786828701612280565b9497909650939450505050565b5f805f805f60608688031215612318575f80fd5b8535945060208601356001600160401b0380821115612335575f80fd5b61234189838a01612280565b90965094506040880135915080821115612359575f80fd5b5061236688828901612280565b969995985093965092949392505050565b5f8060408385031215612388575f80fd5b823591506123986020840161224b565b90509250929050565b5f80604083850312156123b2575f80fd5b50508035926020909101359150565b5f5b838110156123db5781810151838201526020016123c3565b50505f910152565b5f81518084526123fa8160208601602086016123c1565b601f01601f19169290920160200192915050565b828152604060208201525f6114f660408301846123e3565b5f805f60608486031215612438575f80fd5b505081359360208301359350604090920135919050565b5f6020828403121561245f575f80fd5b5035919050565b602081525f610d8c60208301846123e3565b5f805f806060858703121561248b575f80fd5b843593506020850135925060408501356001600160401b038111156124ae575f80fd5b6124ba87828801612280565b95989497509550505050565b634e487b7160e01b5f52604160045260245ffd5b5f805f606084860312156124ec575f80fd5b833592506020840135915060408401356001600160401b0380821115612510575f80fd5b818601915086601f830112612523575f80fd5b813581811115612535576125356124c6565b604051601f8201601f19908116603f0116810190838211818310171561255d5761255d6124c6565b81604052828152896020848701011115612575575f80fd5b826020860160208301375f6020848301015280955050505050509250925092565b6001600160a01b0381168114612230575f80fd5b80358015158114612262575f80fd5b5f80604083850312156125ca575f80fd5b82356125d581612596565b9150612398602084016125aa565b5f805f606084860312156125f5575f80fd5b83359250602084013561260781612596565b9150612615604085016125aa565b90509250925092565b5f805f60608486031215612630575f80fd5b8335925060208401359150604084013561ffff8116811461264f575f80fd5b809150509250925092565b5f805f6060848603121561266c575f80fd5b833561267781612596565b925060208401359150604084013561264f81612596565b5f8083601f84011261269e575f80fd5b5081356001600160401b038111156126b4575f80fd5b6020830191508360208260051b8501011115610bae575f80fd5b5f80602083850312156126df575f80fd5b82356001600160401b038111156126f4575f80fd5b6127008582860161268e565b90969095509350505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b8281101561276157603f1988860301845261274f8583516123e3565b94509285019290850190600101612733565b5092979650505050505050565b5f806040838503121561277f575f80fd5b82359150602083013561279181612596565b809150509250929050565b5f805f604084860312156127ae575f80fd5b8335925060208401356001600160401b038111156127ca575f80fd5b6122f78682870161268e565b5f805f606084860312156127e8575f80fd5b833592506127f86020850161224b565b9150604084013561264f81612596565b5f8060408385031215612819575f80fd5b823561282481612596565b9150602083013561279181612596565b5f82516128458184602087016123c1565b9190910192915050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156105705761057061284f565b818382375f9101908152919050565b600181811c9082168061289957607f821691505b6020821081036128b757634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156114e457805f5260205f20601f840160051c810160208510156128e25750805b601f840160051c820191505b81811015611149575f81556001016128ee565b6001600160401b03831115612918576129186124c6565b61292c836129268354612885565b836128bd565b5f601f84116001811461295d575f85156129465750838201355b5f19600387901b1c1916600186901b178355611149565b5f83815260208120601f198716915b8281101561298c578685013582556020948501946001909201910161296c565b50868210156129a8575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b604081525f6129f56040830186886129ba565b8281036020840152612a088185876129ba565b979650505050505050565b634e487b7160e01b5f52603260045260245ffd5b602081525f6114f66020830184866129ba565b5f6001600160401b03808316818103612a5557612a5561284f565b6001019392505050565b81516001600160401b03811115612a7857612a786124c6565b612a8c81612a868454612885565b846128bd565b602080601f831160018114612abf575f8415612aa85750858301515b5f19600386901b1c1916600185901b178555612b16565b5f85815260208120601f198616915b82811015612aed57888601518255948401946001909101908401612ace565b5085821015612b0a57878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b604081525f612b3060408301866123e3565b8281036020840152612b438185876129ba565b9695505050505050565b5f60208284031215612b5d575f80fd5b8151610d8c81612596565b5f61ffff821680612b7b57612b7b61284f565b5f190192915050565b604081525f612b9660408301856123e3565b905061ffff831660208301529392505050565b5f61ffff808316818103612a5557612a5561284f565b606081525f612bd160608301866123e3565b61ffff851660208401528281036040840152612b4381856123e3565b808201808211156105705761057061284f565b5f808335601e19843603018112612c15575f80fd5b8301803591506001600160401b03821115612c2e575f80fd5b602001915036819003821315610bae575f80fd5b5f8085851115612c50575f80fd5b83861115612c5c575f80fd5b5050820193919092039150565b80356020831015610570575f19602084900360031b1b1692915050565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{}},"0xf3810eb7d64d1c11ae12727d957c6202b24492f5":{"nonce":1,"balance":"0x0","code":"0x6080604052348015600e575f80fd5b50600436106030575f3560e01c806350d25bcd146034578063e5c19b2d146048575b5f80fd5b5f5460405190815260200160405180910390f35b605760533660046059565b5f55565b005b5f602082840312156068575f80fd5b503591905056fea164736f6c6343000818000a","storage":{"0x0":"0x5f5e100"}},"0xf670681605efc4efc804f5a9b97ee89520473d56":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c80638da5cb5b11610088578063c66485b211610063578063c66485b2146101da578063da8c229e146101ed578063e0dba60f1461021f578063f2fde38b14610232575f80fd5b80638da5cb5b146101a4578063bffbe61c146101b4578063c47f0027146101c7575f80fd5b806365669631116100c35780636566963114610161578063715018a6146101745780637a806d6b1461017e578063828eab0e14610191575f80fd5b80630f5a5466146100e95780631e83409a1461010f5780633f15457f14610122575b5f80fd5b6100fc6100f7366004610958565b610245565b6040519081526020015b60405180910390f35b6100fc61011d36600461098f565b610258565b6101497f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a981565b6040516001600160a01b039091168152602001610106565b6100fc61016f3660046109aa565b610279565b61017c610526565b005b6100fc61018c366004610a8f565b610539565b600254610149906001600160a01b031681565b5f546001600160a01b0316610149565b6100fc6101c236600461098f565b6105ae565b6100fc6101d5366004610b00565b610608565b61017c6101e836600461098f565b610624565b61020f6101fb36600461098f565b60016020525f908152604090205460ff1681565b6040519015158152602001610106565b61017c61022d366004610b47565b6106e4565b61017c61024036600461098f565b61074a565b5f610251338484610279565b9392505050565b6002545f9061027390339084906001600160a01b0316610279565b92915050565b5f836001600160a01b0381163314806102a05750335f9081526001602052604090205460ff165b80610334575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063e985e9c590604401602060405180830381865afa158015610310573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103349190610b73565b806103435750610343816107c3565b6103e05760405162461bcd60e51b815260206004820152605b60248201527f526576657273655265676973747261723a2043616c6c6572206973206e6f742060448201527f6120636f6e74726f6c6c6572206f7220617574686f726973656420627920616460648201527f6472657373206f7220746865206164647265737320697473656c660000000000608482015260a4015b60405180910390fd5b5f6103ea8661083a565b604080517f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e2602080830191909152818301849052825180830384018152606090920192839052815191012091925081906001600160a01b038916907f6ada868dd3058cf77a48a74489fd7963688e5464b2b0fa957ace976243270e92905f90a36040516305ef2c7f60e41b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26004820152602481018390526001600160a01b03878116604483015286811660648301525f60848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610505575f80fd5b505af1158015610517573d5f803e3d5ffd5b50929998505050505050505050565b61052e61089c565b6105375f6108f5565b565b5f80610546868686610279565b604051637737221360e01b81529091506001600160a01b038516906377372213906105779084908790600401610b8e565b5f604051808303815f87803b15801561058e575f80fd5b505af11580156105a0573d5f803e3d5ffd5b509298975050505050505050565b5f7f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26105d98361083a565b604080516020810193909352820152606001604051602081830303815290604052805190602001209050919050565b6002545f9061027390339081906001600160a01b031685610539565b61062c61089c565b6001600160a01b03811661069b5760405162461bcd60e51b815260206004820152603060248201527f526576657273655265676973747261723a205265736f6c76657220616464726560448201526f07373206d757374206e6f7420626520360841b60648201526084016103d7565b600280546001600160a01b0319166001600160a01b0383169081179091556040517feae17a84d9eb83d8c8eb317f9e7d64857bc363fa51674d996c023f4340c577cf905f90a250565b6106ec61089c565b6001600160a01b0382165f81815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b61075261089c565b6001600160a01b0381166107b75760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016103d7565b6107c0816108f5565b50565b5f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801561081e575060408051601f3d908101601f1916820190925261081b91810190610be2565b60015b61082957505f919050565b6001600160a01b0316331492915050565b5f60285b8015610891575f19016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a81536010909204915f19016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a815360108304925061083e565b505060285f20919050565b5f546001600160a01b031633146105375760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016103d7565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146107c0575f80fd5b5f8060408385031215610969575f80fd5b823561097481610944565b9150602083013561098481610944565b809150509250929050565b5f6020828403121561099f575f80fd5b813561025181610944565b5f805f606084860312156109bc575f80fd5b83356109c781610944565b925060208401356109d781610944565b915060408401356109e781610944565b809150509250925092565b634e487b7160e01b5f52604160045260245ffd5b5f82601f830112610a15575f80fd5b813567ffffffffffffffff80821115610a3057610a306109f2565b604051601f8301601f19908116603f01168101908282118183101715610a5857610a586109f2565b81604052838152866020858801011115610a70575f80fd5b836020870160208301375f602085830101528094505050505092915050565b5f805f8060808587031215610aa2575f80fd5b8435610aad81610944565b93506020850135610abd81610944565b92506040850135610acd81610944565b9150606085013567ffffffffffffffff811115610ae8575f80fd5b610af487828801610a06565b91505092959194509250565b5f60208284031215610b10575f80fd5b813567ffffffffffffffff811115610b26575f80fd5b610b3284828501610a06565b949350505050565b80151581146107c0575f80fd5b5f8060408385031215610b58575f80fd5b8235610b6381610944565b9150602083013561098481610b3a565b5f60208284031215610b83575f80fd5b815161025181610b3a565b8281525f60206040602084015283518060408501525f5b81811015610bc157858101830151858201606001528201610ba5565b505f606082860101526060601f19601f830116850101925050509392505050565b5f60208284031215610bf2575f80fd5b81516102518161094456fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2":"0x9df67c91f1bfcb4d966cf764e9218685e7c59e8a","0x1f5b7623941da966ad7183d9cbb6db584f6d4add26919ac31a2d3f19a164e7e1":"0x1","0xbe5de2149ce76ca5934fa63455cd675fd52e2d30f3328985d298a627ca0f05e9":"0x1"}},"0xf8c26340c1eaea6c7ff1760b25005e1306953572":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061010b5760003560e01c80638c87a4ea116100a2578063b87abc1111610071578063b87abc1114610244578063c597407314610257578063ce92b33e1461026a578063e837ae741461027d578063ec129eea146102905761010b565b80638c87a4ea146101ea5780638f69c188146101fd578063a3557e6c14610210578063b85afd28146102235761010b565b806347c81699116100de57806347c8169914610181578063672b9f81146101945780636ccbae5f146101b55780637b103999146101d55761010b565b80631bd8cc1a146101105780631be5e7ed146101395780632c3d376d14610159578063310bd74b1461016c575b600080fd5b61012361011e3660046117b4565b6102a3565b6040516101309190611eee565b60405180910390f35b61014c610147366004611aec565b6104f2565b6040516101309190611fd6565b61014c610167366004611b21565b610673565b61017f61017a366004611b21565b610714565b005b61017f61018f3660046119b5565b6107c0565b6101a76101a2366004611b94565b6108ef565b604051610130929190611fe7565b6101c86101c3366004611b21565b6109c3565b604051610130919061204c565b6101dd6109d5565b6040516101309190611ea9565b6101236101f836600461191d565b6109e5565b61017f61020b366004611878565b610a74565b61017f61021e366004611878565b610af0565b610236610231366004611951565b610b1b565b604051610130929190611eff565b61017f610252366004611b3f565b610ca9565b61017f610265366004611a39565b610d43565b61017f610278366004611808565b610df9565b61017f61028b366004611808565b610e97565b61017f61029e366004611808565b610f4e565b60015460405163b3f9e4cb60e01b815260609183916001600160a01b039091169063b3f9e4cb906102d890849060040161204c565b60206040518083038186803b1580156102f057600080fd5b505afa158015610304573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610328919081019061178e565b6001600160a01b0316306001600160a01b0316146103615760405162461bcd60e51b81526004016103589061201c565b60405180910390fd5b604080518581526020808702820101909152849060609082801561039957816020015b60608152602001906001900390816103845790505b506000868152600360205260408120549192505b838110156104e557600087815260026020908152604080832085845290915290208989838181106103da57fe5b602002820190508035601e19368490030181126103f657600080fd5b909101602081019150356001600160401b0381111561041457600080fd5b3681900382131561042457600080fd5b604051610432929190611e70565b9081526040805160209281900383018120805460026001821615610100026000190190911604601f810185900485028301850190935282825290929091908301828280156104c15780601f10610496576101008083540402835291602001916104c1565b820191906000526020600020905b8154815290600101906020018083116104a457829003601f168201915b50505050508382815181106104d257fe5b60209081029190910101526001016103ad565b5090979650505050505050565b60015460405163b3f9e4cb60e01b815260609183916001600160a01b039091169063b3f9e4cb9061052790849060040161204c565b60206040518083038186803b15801561053f57600080fd5b505afa158015610553573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610577919081019061178e565b6001600160a01b0316306001600160a01b0316146105a75760405162461bcd60e51b81526004016103589061201c565b6000838152600260209081526040808320600383528184205484529091529081902090516105d6908690611e7d565b9081526040805160209281900383018120805460026001821615610100026000190190911604601f810185900485028301850190935282825290929091908301828280156106655780601f1061063a57610100808354040283529160200191610665565b820191906000526020600020905b81548152906001019060200180831161064857829003601f168201915b505050505091505092915050565b60008181526004602090815260409182902080548351601f60026000196101006001861615020190931692909204918201849004840281018401909452808452606093928301828280156107085780601f106106dd57610100808354040283529160200191610708565b820191906000526020600020905b8154815290600101906020018083116106eb57829003601f168201915b50505050509050919050565b60015460405163430c208160e01b815282916001600160a01b03169063430c2081906107469033908590600401611ec5565b60206040518083038186803b15801561075e57600080fd5b505afa158015610772573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506107969190810190611997565b6107b25760405162461bcd60e51b81526004016103589061202c565b6107bc4283610fec565b5050565b60015460405163430c208160e01b815282916001600160a01b03169063430c2081906107f29033908590600401611ec5565b60206040518083038186803b15801561080a57600080fd5b505afa15801561081e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506108429190810190611997565b61085e5760405162461bcd60e51b81526004016103589061202c565b6108e7600360008481526020019081526020016000205487878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061108e915050565b505050505050565b60015460405163b3f9e4cb60e01b8152606091829184916001600160a01b03169063b3f9e4cb9061092490849060040161204c565b60206040518083038186803b15801561093c57600080fd5b505afa158015610950573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610974919081019061178e565b6001600160a01b0316306001600160a01b0316146109a45760405162461bcd60e51b81526004016103589061201c565b6109ad85610673565b92506109b983856104f2565b9150509250929050565b60009081526020819052604090205490565b6001546001600160a01b03165b90565b6060600082519050606081604051908082528060200260200182016040528015610a2357816020015b6060815260200190600190039081610a0e5790505b50905060005b82811015610a6c57610a4d858281518110610a4057fe5b6020026020010151610673565b828281518110610a5957fe5b6020908102919091010152600101610a29565b509392505050565b610acf63ce92b33e60e01b858585604051602401610a9493929190611f24565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092178252519020838361129f565b600082815260036020526040902054610aea908585856113c3565b50505050565b610b1063ec129eea60e01b858585604051602401610a9493929190611f24565b610aea84848461140a565b60015460405163b3f9e4cb60e01b8152606091829184916001600160a01b03169063b3f9e4cb90610b5090849060040161204c565b60206040518083038186803b158015610b6857600080fd5b505afa158015610b7c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610ba0919081019061178e565b6001600160a01b0316306001600160a01b031614610bd05760405162461bcd60e51b81526004016103589061201c565b8451604080518281526020808402820101909152818015610c0557816020015b6060815260200190600190039081610bf05790505b50935080604051908082528060200260200182016040528015610c3c57816020015b6060815260200190600190039081610c275790505b50925060005b81811015610c9f57610c67878281518110610c5957fe5b6020026020010151876108ef565b8651879084908110610c7557fe5b60200260200101868481518110610c8857fe5b602090810291909101019190915252600101610c42565b5050509250929050565b610d3463310bd74b60e01b84604051602401610cc5919061204c565b60408051601f19818403018152918152602080830180516001600160e01b03166001600160e01b031990951694909417845291519092208251601f8601839004830281018301909352848352918691869086908190840183828082843760009201919091525061129f92505050565b610d3e4284610fec565b505050565b610d676347c8169960e01b8888888888604051602401610cc5959493929190611f96565b610df0600360008581526020019081526020016000205488888080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8c018190048102820181019092528a815292508a915089908190840183828082843760009201919091525089925061108e915050565b50505050505050565b60015460405163430c208160e01b815282916001600160a01b03169063430c208190610e2b9033908590600401611ec5565b60206040518083038186803b158015610e4357600080fd5b505afa158015610e57573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610e7b9190810190611997565b610acf5760405162461bcd60e51b81526004016103589061202c565b6005546040516355138f0d60e11b81526001600160a01b039091169063aa271e1a90610ec7903390600401611eb7565b60206040518083038186803b158015610edf57600080fd5b505afa158015610ef3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610f179190810190611997565b610f335760405162461bcd60e51b81526004016103589061203c565b600081815260036020526040902054610d3e908484846113c3565b60015460405163430c208160e01b815282916001600160a01b03169063430c208190610f809033908590600401611ec5565b60206040518083038186803b158015610f9857600080fd5b505afa158015610fac573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610fd09190810190611997565b610b105760405162461bcd60e51b81526004016103589061202c565b600081815260036020526040808220849055600154905163538361a760e01b81526001600160a01b039091169163538361a79161102d91859160040161205a565b600060405180830381600087803b15801561104757600080fd5b505af115801561105b573d6000803e3d6000fd5b50506040518392507f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9150600090a25050565b825160208085019190912060008381526002835260408082208883529093528281209251919290916110c1908790611e7d565b908152604051602091819003919091018120546001805463538361a760e01b84526002918316156101000260001901909216041592506001600160a01b03169063538361a7906111179086908690600401612075565b600060405180830381600087803b15801561113157600080fd5b505af1158015611145573d6000803e3d6000fd5b50505060008481526002602090815260408083208a8452909152908190209051869250611173908890611e7d565b90815260200160405180910390209080519060200190611194929190611521565b50600082815260046020526040902054600260001961010060018416150201909116046111dc57600082815260046020908152604090912086516111da92880190611521565b505b801561123157846040516111f09190611e7d565b6040518091039020837f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f86876040516112289190611fd6565b60405180910390a35b8360405161123f9190611e7d565b6040518091039020856040516112559190611e7d565b6040518091039020847f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d92888860405161128f929190611fe7565b60405180910390a4505050505050565b6000828152602081815260408083205490519092916112f59185916112e9916112ce918a913091899101611e39565b60405160208183030381529060405280519060200120611414565b9063ffffffff61144416565b90506001600160a01b0381161580159061138c575060015460405163430c208160e01b81526001600160a01b039091169063430c20819061133c9084908890600401611ee0565b60206040518083038186803b15801561135457600080fd5b505afa158015611368573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061138c9190810190611997565b6113a85760405162461bcd60e51b81526004016103589061200c565b50505060009081526020819052604090208054600101905550565b825160005b818110156108e757611402868683815181106113e057fe5b60200260200101518684815181106113f457fe5b60200260200101518661108e565b6001016113c8565b610f334282610fec565b6000816040516020016114279190611e89565b604051602081830303815290604052805190602001209050919050565b600081516041146114575750600061151b565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a082111561149d576000935050505061151b565b8060ff16601b141580156114b557508060ff16601c14155b156114c6576000935050505061151b565b600186828585604051600081526020016040526040516114e99493929190611f58565b6020604051602081039080840390855afa15801561150b573d6000803e3d6000fd5b5050506020604051035193505050505b92915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061156257805160ff191683800117855561158f565b8280016001018555821561158f579182015b8281111561158f578251825591602001919060010190611574565b5061159b92915061159f565b5090565b6109e291905b8082111561159b57600081556001016115a5565b805161151b816121a4565b60008083601f8401126115d657600080fd5b5081356001600160401b038111156115ed57600080fd5b60208301915083602082028301111561160557600080fd5b9250929050565b600082601f83011261161d57600080fd5b813561163061162b826120a9565b612083565b81815260209384019390925082018360005b8381101561166e57813586016116588882611734565b8452506020928301929190910190600101611642565b5050505092915050565b600082601f83011261168957600080fd5b813561169761162b826120a9565b915081818352602084019350602081019050838560208402820111156116bc57600080fd5b60005b8381101561166e57816116d28882611783565b84525060209283019291909101906001016116bf565b805161151b816121bb565b60008083601f84011261170557600080fd5b5081356001600160401b0381111561171c57600080fd5b60208301915083600182028301111561160557600080fd5b600082601f83011261174557600080fd5b813561175361162b826120c9565b9150808252602083016020830185838301111561176f57600080fd5b61177a83828461214b565b50505092915050565b803561151b816121c4565b6000602082840312156117a057600080fd5b60006117ac84846115b9565b949350505050565b6000806000604084860312156117c957600080fd5b83356001600160401b038111156117df57600080fd5b6117eb868287016115c4565b935093505060206117fe86828701611783565b9150509250925092565b60008060006060848603121561181d57600080fd5b83356001600160401b0381111561183357600080fd5b61183f8682870161160c565b93505060208401356001600160401b0381111561185b57600080fd5b6118678682870161160c565b92505060406117fe86828701611783565b6000806000806080858703121561188e57600080fd5b84356001600160401b038111156118a457600080fd5b6118b08782880161160c565b94505060208501356001600160401b038111156118cc57600080fd5b6118d88782880161160c565b93505060406118e987828801611783565b92505060608501356001600160401b0381111561190557600080fd5b61191187828801611734565b91505092959194509250565b60006020828403121561192f57600080fd5b81356001600160401b0381111561194557600080fd5b6117ac84828501611678565b6000806040838503121561196457600080fd5b82356001600160401b0381111561197a57600080fd5b61198685828601611678565b92505060206109b985828601611783565b6000602082840312156119a957600080fd5b60006117ac84846116e8565b6000806000806000606086880312156119cd57600080fd5b85356001600160401b038111156119e357600080fd5b6119ef888289016116f3565b955095505060208601356001600160401b03811115611a0d57600080fd5b611a19888289016116f3565b93509350506040611a2c88828901611783565b9150509295509295909350565b60008060008060008060006080888a031215611a5457600080fd5b87356001600160401b03811115611a6a57600080fd5b611a768a828b016116f3565b975097505060208801356001600160401b03811115611a9457600080fd5b611aa08a828b016116f3565b95509550506040611ab38a828b01611783565b93505060608801356001600160401b03811115611acf57600080fd5b611adb8a828b016116f3565b925092505092959891949750929550565b60008060408385031215611aff57600080fd5b82356001600160401b03811115611b1557600080fd5b61198685828601611734565b600060208284031215611b3357600080fd5b60006117ac8484611783565b600080600060408486031215611b5457600080fd5b6000611b608686611783565b93505060208401356001600160401b03811115611b7c57600080fd5b611b88868287016116f3565b92509250509250925092565b60008060408385031215611ba757600080fd5b60006119868585611783565b6000611bbf8383611ccb565b9392505050565b611bcf8161212a565b82525050565b611bcf81612108565b611bcf611bea82612108565b612183565b6000611bfa826120f6565b611c0481856120fa565b935083602082028501611c16856120f0565b8060005b85811015611c505784840389528151611c338582611bb3565b9450611c3e836120f0565b60209a909a0199925050600101611c1a565b5091979650505050505050565b611bcf816109e2565b611bcf611c72826109e2565b6109e2565b611bcf81612135565b6000611c8c83856120fa565b9350611c9983858461214b565b611ca283612194565b9093019392505050565b6000611cb88385612103565b9350611cc583858461214b565b50500190565b6000611cd6826120f6565b611ce081856120fa565b9350611cf0818560208601612157565b611ca281612194565b6000611d04826120f6565b611d0e8185612103565b9350611d1e818560208601612157565b9290920192915050565b6000611d35601c83612103565b7f19457468657265756d205369676e6564204d6573736167653a0a3332000000008152601c0192915050565b6000611d6e6011836120fa565b70494e56414c49445f5349474e415455524560781b815260200192915050565b6000611d9b601d836120fa565b7f5245534f4c5645525f44455441434845445f46524f4d5f444f4d41494e000000815260200192915050565b6000611dd4601f836120fa565b7f53454e4445525f49535f4e4f545f415050524f5645445f4f525f4f574e455200815260200192915050565b6000611e0d6014836120fa565b7329a2a72222a92fa4a9afa727aa2fa6a4a72a22a960611b815260200192915050565b611bcf81612124565b6000611e458286611c66565b602082019150611e558285611bde565b601482019150611e658284611c66565b506020019392505050565b60006117ac828486611cac565b6000611bbf8284611cf9565b6000611e9482611d28565b9150611ea08284611c66565b50602001919050565b6020810161151b8284611bd5565b6020810161151b8284611bc6565b60408101611ed38285611bc6565b611bbf6020830184611c5d565b60408101611ed38285611bd5565b60208082528101611bbf8184611bef565b60408082528101611f108185611bef565b905081810360208301526117ac8184611bef565b60608082528101611f358186611bef565b90508181036020830152611f498185611bef565b90506117ac6040830184611c5d565b60808101611f668287611c5d565b611f736020830186611e30565b611f806040830185611c5d565b611f8d6060830184611c5d565b95945050505050565b60608082528101611fa8818789611c80565b90508181036020830152611fbd818587611c80565b9050611fcc6040830184611c5d565b9695505050505050565b60208082528101611bbf8184611ccb565b60408082528101611ff88185611ccb565b905081810360208301526117ac8184611ccb565b6020808252810161151b81611d61565b6020808252810161151b81611d8e565b6020808252810161151b81611dc7565b6020808252810161151b81611e00565b6020810161151b8284611c5d565b604081016120688285611c5d565b611bbf6020830184611c77565b60408101611ed38285611c5d565b6040518181016001600160401b03811182821017156120a157600080fd5b604052919050565b60006001600160401b038211156120bf57600080fd5b5060209081020190565b60006001600160401b038211156120df57600080fd5b506020601f91909101601f19160190565b60200190565b5190565b90815260200190565b919050565b600061151b82612118565b151590565b6001600160a01b031690565b60ff1690565b600061151b82612140565b600061151b826109e2565b600061151b82612108565b82818337506000910152565b60005b8381101561217257818101518382015260200161215a565b83811115610aea5750506000910152565b600061151b82600061151b8261219e565b601f01601f191690565b60601b90565b6121ad81612108565b81146121b857600080fd5b50565b6121ad81612113565b6121ad816109e256fea365627a7a723158207a1d8dfd286d14fcafd1812a4c44813691ac746a5a23fa711ac5551c9509654d6c6578706572696d656e74616cf564736f6c634300050c0040","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x5":"0x4a3c194eb88966178bfdd81744dddafed611b830"}},"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa":{"nonce":93,"balance":"0x35aac60bbae01d424b","code":"0x","storage":{}}},"best_block_number":"0x5d"} \ No newline at end of file From 3879028e58fc9bf6a698cea8723c11ac31f416ed Mon Sep 17 00:00:00 2001 From: derain Date: Wed, 22 May 2024 12:17:17 +0300 Subject: [PATCH 14/21] [REG-1273] - Move foundry-cli and anvil binaries into the package itself --- sandbox/foundry-cli.ts | 54 ++---- sandbox/foundry/bin/.gitignore | 1 + sandbox/foundry/foundryup.sh | 303 +++++++++++++++++++++++++++++++++ sandbox/state.json | 2 +- 4 files changed, 319 insertions(+), 41 deletions(-) create mode 100644 sandbox/foundry/bin/.gitignore create mode 100755 sandbox/foundry/foundryup.sh diff --git a/sandbox/foundry-cli.ts b/sandbox/foundry-cli.ts index 9f702621..926b8469 100644 --- a/sandbox/foundry-cli.ts +++ b/sandbox/foundry-cli.ts @@ -1,9 +1,6 @@ -import { exec, spawn } from 'child_process'; -import os from 'os'; +import { exec, execSync, spawn } from 'child_process'; import path from 'path'; -const FOUNDRYUP_INSTALLER = 'curl -L "https://foundry.paradigm.xyz" | bash'; - /** * @returns the path to the anvil path to use, if `anvil` is in path then this will be returned * @@ -23,11 +20,6 @@ export async function getAnvilCommand (): Promise { export async function installAnvil (): Promise { const checkAnvilCommandCli = `${foundryAnvilBinPath()} --version`; if (!(await checkCommand(checkAnvilCommandCli))) { - if (!(await checkCommand(`${foundryUpBinPath()} --version`))) { - if (!(await downloadFoundryUp())) { - throw new Error('Failed to download foundryup'); - } - } if (!(await runFoundryUp())) { throw new Error('Failed to install anvil'); } @@ -46,29 +38,6 @@ export async function installAnvil (): Promise { async function checkCommand (cmd: string): Promise { return new Promise((resolve) => { const process = exec(cmd); - process.on('exit', (code) => { - if (code !== 0) { - console.error( - 'Command failed. Is Foundry not installed? Consider installing ' + - 'via `curl -L https://foundry.paradigm.xyz | bash` and then running' + - ' `foundryup` on a new terminal. ' + - 'For more context, check the installation instructions ' + - 'in the book: https://book.getfoundry.sh/getting-started/installation.html.', - ); - } - resolve(code === 0); - }); - }); -} - -/** - * Downloads foundryup via subprocess - */ -async function downloadFoundryUp (): Promise { - return new Promise((resolve) => { - const process = spawn('/bin/bash', ['-c', FOUNDRYUP_INSTALLER], { - stdio: 'inherit', - }); process.on('exit', (code) => { resolve(code === 0); }); @@ -80,39 +49,44 @@ async function downloadFoundryUp (): Promise { */ async function runFoundryUp (): Promise { return new Promise((resolve) => { - const process = spawn(foundryUpBinPath(), [], { + execSync(`chmod +x ${foundryUpBinPath()}`); + const p = spawn('/bin/bash', ['-c', foundryUpBinPath()], { stdio: 'inherit', + env: { + ...process.env, + FOUNDRY_DIR: foundryDir(), + }, }); - process.on('exit', (code) => { + p.on('exit', (code) => { resolve(code === 0); }); }); } /** - * @returns the path to the foundry directory: `$HOME/.foundry` + * @returns the path to the foundry directory */ function foundryDir (): string { - return path.join(os.homedir(), '.foundry'); + return path.join(__dirname, 'foundry'); } /** - * @returns the path to the foundry directory that stores the tool binaries: `$HOME/.foundry/bin` + * @returns the path to the foundry bin directory */ function foundryBinDir (): string { return path.join(foundryDir(), 'bin'); } /** - * @returns the path to the anvil binary in the foundry dir: `$HOME/.foundry/bin/anvil` + * @returns the path to the anvil binary in the foundry dir */ function foundryAnvilBinPath (): string { return path.join(foundryBinDir(), 'anvil'); } /** - * @returns the path to the cast binary in the foundry dir: `$HOME/.foundry/bin/cast` + * @returns the path to the cast binary in the foundry dir */ function foundryUpBinPath (): string { - return path.join(foundryBinDir(), 'foundryup'); + return path.join(foundryDir(), 'foundryup.sh'); } diff --git a/sandbox/foundry/bin/.gitignore b/sandbox/foundry/bin/.gitignore new file mode 100644 index 00000000..72e8ffc0 --- /dev/null +++ b/sandbox/foundry/bin/.gitignore @@ -0,0 +1 @@ +* diff --git a/sandbox/foundry/foundryup.sh b/sandbox/foundry/foundryup.sh new file mode 100755 index 00000000..a836b059 --- /dev/null +++ b/sandbox/foundry/foundryup.sh @@ -0,0 +1,303 @@ +#!/usr/bin/env bash +set -eo pipefail + +BASE_DIR=${XDG_CONFIG_HOME:-$HOME} +FOUNDRY_DIR=${FOUNDRY_DIR:-"$BASE_DIR/.foundry"} +FOUNDRY_BIN_DIR="$FOUNDRY_DIR/bin" + +BINS=(forge cast anvil chisel) + +export RUSTFLAGS="${RUSTFLAGS:--C target-cpu=native}" + +main() { + need_cmd git + need_cmd curl + + while [[ -n $1 ]]; do + case $1 in + --) shift; break;; + + -r|--repo) shift; FOUNDRYUP_REPO=$1;; + -b|--branch) shift; FOUNDRYUP_BRANCH=$1;; + -v|--version) shift; FOUNDRYUP_VERSION=$1;; + -p|--path) shift; FOUNDRYUP_LOCAL_REPO=$1;; + -P|--pr) shift; FOUNDRYUP_PR=$1;; + -C|--commit) shift; FOUNDRYUP_COMMIT=$1;; + --arch) shift; FOUNDRYUP_ARCH=$1;; + --platform) shift; FOUNDRYUP_PLATFORM=$1;; + -h|--help) + usage + exit 0 + ;; + *) + warn "unknown option: $1" + usage + exit 1 + esac; shift + done + + # Print the banner after successfully parsing args + banner + + if [ -n "$FOUNDRYUP_PR" ]; then + if [ -z "$FOUNDRYUP_BRANCH" ]; then + FOUNDRYUP_BRANCH="refs/pull/$FOUNDRYUP_PR/head" + else + err "can't use --pr and --branch at the same time" + fi + fi + + # Installs foundry from a local repository if --path parameter is provided + if [[ -n "$FOUNDRYUP_LOCAL_REPO" ]]; then + need_cmd cargo + + # Ignore branches/versions as we do not want to modify local git state + if [ -n "$FOUNDRYUP_REPO" ] || [ -n "$FOUNDRYUP_BRANCH" ] || [ -n "$FOUNDRYUP_VERSION" ]; then + warn "--branch, --version, and --repo arguments are ignored during local install" + fi + + # Enter local repo and build + say "installing from $FOUNDRYUP_LOCAL_REPO" + cd "$FOUNDRYUP_LOCAL_REPO" + ensure cargo build --bins --release # need 4 speed + + for bin in "${BINS[@]}"; do + # Remove prior installations if they exist + rm -f "$FOUNDRY_BIN_DIR/$bin" + # Symlink from local repo binaries to bin dir + ensure ln -s "$PWD/target/release/$bin" "$FOUNDRY_BIN_DIR/$bin" + done + + say "done" + exit 0 + fi + + FOUNDRYUP_REPO=${FOUNDRYUP_REPO:-foundry-rs/foundry} + + # Install by downloading binaries + if [[ "$FOUNDRYUP_REPO" == "foundry-rs/foundry" && -z "$FOUNDRYUP_BRANCH" && -z "$FOUNDRYUP_COMMIT" ]]; then + FOUNDRYUP_VERSION=${FOUNDRYUP_VERSION:-nightly} + FOUNDRYUP_TAG=$FOUNDRYUP_VERSION + + # Normalize versions (handle channels, versions without v prefix + if [[ "$FOUNDRYUP_VERSION" =~ ^nightly ]]; then + FOUNDRYUP_VERSION="nightly" + elif [[ "$FOUNDRYUP_VERSION" == [[:digit:]]* ]]; then + # Add v prefix + FOUNDRYUP_VERSION="v${FOUNDRYUP_VERSION}" + FOUNDRYUP_TAG="${FOUNDRYUP_VERSION}" + fi + + say "installing foundry (version ${FOUNDRYUP_VERSION}, tag ${FOUNDRYUP_TAG})" + + uname_s=$(uname -s) + PLATFORM=$(tolower "${FOUNDRYUP_PLATFORM:-$uname_s}") + EXT="tar.gz" + case $PLATFORM in + linux) ;; + darwin|mac*) + PLATFORM="darwin" + ;; + mingw*|win*) + EXT="zip" + PLATFORM="win32" + ;; + *) + err "unsupported platform: $PLATFORM" + ;; + esac + + uname_m=$(uname -m) + ARCHITECTURE=$(tolower "${FOUNDRYUP_ARCH:-$uname_m}") + if [ "${ARCHITECTURE}" = "x86_64" ]; then + # Redirect stderr to /dev/null to avoid printing errors if non Rosetta. + if [ "$(sysctl -n sysctl.proc_translated 2>/dev/null)" = "1" ]; then + ARCHITECTURE="arm64" # Rosetta. + else + ARCHITECTURE="amd64" # Intel. + fi + elif [ "${ARCHITECTURE}" = "arm64" ] ||[ "${ARCHITECTURE}" = "aarch64" ] ; then + ARCHITECTURE="arm64" # Arm. + else + ARCHITECTURE="amd64" # Amd. + fi + + # Compute the URL of the release tarball in the Foundry repository. + RELEASE_URL="https://github.com/${FOUNDRYUP_REPO}/releases/download/${FOUNDRYUP_TAG}/" + BIN_ARCHIVE_URL="${RELEASE_URL}foundry_${FOUNDRYUP_VERSION}_${PLATFORM}_${ARCHITECTURE}.$EXT" + MAN_TARBALL_URL="${RELEASE_URL}foundry_man_${FOUNDRYUP_VERSION}.tar.gz" + + # Download and extract the binaries archive + say "downloading latest forge, cast, anvil, and chisel" + if [ "$PLATFORM" = "win32" ]; then + tmp="$(mktemp -d 2>/dev/null || echo ".")/foundry.zip" + ensure download "$BIN_ARCHIVE_URL" "$tmp" + ensure unzip "$tmp" -d "$FOUNDRY_BIN_DIR" + rm -f "$tmp" + else + ensure download "$BIN_ARCHIVE_URL" | ensure tar -xzC "$FOUNDRY_BIN_DIR" + fi + + + for bin in "${BINS[@]}"; do + bin_path="$FOUNDRY_BIN_DIR/$bin" + + # Print installed msg + say "installed - $(ensure "$bin_path" --version)" + + # Check if the default path of the binary is not in FOUNDRY_BIN_DIR + which_path="$(command -v "$bin" || true)" + if [ -n "$which_path" ] && [ "$which_path" != "$bin_path" ]; then + warn "" + cat 1>&2 <&2 < + +OPTIONS: + -h, --help Print help information + -v, --version Install a specific version + -b, --branch Install a specific branch + -P, --pr Install a specific Pull Request + -C, --commit Install a specific commit + -r, --repo Install from a remote GitHub repo (uses default branch if no other options are set) + -p, --path Install a local repository + --arch Install a specific architecture (supports amd64 and arm64) + --platform Install a specific platform (supports win32, linux, and darwin) +EOF +} + +say() { + printf "foundryup: %s\n" "$1" +} + +warn() { + say "warning: ${1}" >&2 +} + +err() { + say "$1" >&2 + exit 1 +} + +tolower() { + echo "$1" | awk '{print tolower($0)}' +} + +need_cmd() { + if ! check_cmd "$1"; then + err "need '$1' (command not found)" + fi +} + +check_cmd() { + command -v "$1" &>/dev/null +} + +# Run a command that should never fail. If the command fails execution +# will immediately terminate with an error showing the failing command. +ensure() { + if ! "$@"; then err "command failed: $*"; fi +} + +# Downloads $1 into $2 or stdout +download() { + if [ -n "$2" ]; then + # output into $2 + if check_cmd curl; then + curl -#o "$2" -L "$1" + else + wget --show-progress -qO "$2" "$1" + fi + else + # output to stdout + if check_cmd curl; then + curl -#L "$1" + else + wget --show-progress -qO- "$1" + fi + fi +} + +# Banner Function for Foundry +banner() { + printf ' + +.xOx.xOx.xOx.xOx.xOx.xOx.xOx.xOx.xOx.xOx.xOx.xOx.xOx.xOx.xOx.xOx.xOx.xOx + + ╔═╗ ╔═╗ ╦ ╦ ╔╗╔ ╔╦╗ ╦═╗ ╦ ╦ Portable and modular toolkit + ╠╣ ║ ║ ║ ║ ║║║ ║║ ╠╦╝ ╚╦╝ for Ethereum Application Development + ╚ ╚═╝ ╚═╝ ╝╚╝ ═╩╝ ╩╚═ ╩ written in Rust. + +.xOx.xOx.xOx.xOx.xOx.xOx.xOx.xOx.xOx.xOx.xOx.xOx.xOx.xOx.xOx.xOx.xOx.xOx + +Repo : https://github.com/foundry-rs/ +Book : https://book.getfoundry.sh/ +Chat : https://t.me/foundry_rs/ +Support : https://t.me/foundry_support/ +Contribute : https://github.com/orgs/foundry-rs/projects/2/ + +.xOx.xOx.xOx.xOx.xOx.xOx.xOx.xOx.xOx.xOx.xOx.xOx.xOx.xOx.xOx.xOx.xOx.xOx + +' +} + + +main "$@" diff --git a/sandbox/state.json b/sandbox/state.json index 7d5c2c66..c670c740 100644 --- a/sandbox/state.json +++ b/sandbox/state.json @@ -1 +1 @@ -{"block":{"number":"0x5d","coinbase":"0x0000000000000000000000000000000000000000","timestamp":"0x664cf48a","gas_limit":"0x6691b7","basefee":"0x1b818","difficulty":"0x0","prevrandao":"0x0000000000000000000000000000000000000000000000000000000000000000","blob_excess_gas_and_price":{"excess_blob_gas":0,"blob_gasprice":1}},"accounts":{"0x0000000000000000000000000000000000000000":{"nonce":0,"balance":"0xc968d22370860","code":"0x","storage":{}},"0x00e39a5004299871ab3b00fed5a39a715f181d02":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x66":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x67":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xd178b720229c39de617846f84cf9c8d32a63a23d","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0x0458f653495fb8d9bd0e7df468c2bf76d26c7bd9":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f7e83aee1461002d575b5f80fd5b61004061003b3660046105ba565b610054565b604051901515815260200160405180910390f35b5f601482146100a95760405162461bcd60e51b815260206004820152601860248201527f496e76616c696420736861312068617368206c656e6774680000000000000000604482015260640160405180910390fd5b5f6100ec5f85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101599050565b6bffffffffffffffffffffffff191690505f61013c87878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061018a92505050565b6bffffffffffffffffffffffff1916919091149695505050505050565b81515f90610168836014610621565b1115610172575f80fd5b5001602001516bffffffffffffffffffffffff191690565b5f6040518251602084019350604067ffffffffffffffc0600183011601600982820310600181036101bc576040820191505b50776745230100efcdab890098badcfe001032547600c3d2e1f061020d565b5f8383101561020657508082015192829003926020841015610206575f1960208590036101000a0119165b9392505050565b5f5b82811015610514576102228482896101db565b85526102328460208301896101db565b60208601526040818503106001810361024e5760808286038701535b506040830381146001810361026b57602086018051600887021790525b5060405b60808110156102f357858101603f19810151603719820151601f19830151600b198401516002911891909218189081027ffffffffefffffffefffffffefffffffefffffffefffffffefffffffefffffffe1663800000009091047c010000000100000001000000010000000100000001000000010000000116179052600c0161026f565b5060805b61014081101561037c57858101607f19810151606f19820151603f198301516017198401516004911891909218189081027ffffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffc1663400000009091047c0300000003000000030000000300000003000000030000000300000003161790526018016102f7565b50815f805f5b60508110156104ea576014810480156103b257600181146103d957600281146103fe576003811461042857610449565b600160281b8504600160501b86048118600160781b870416189350635a8279999250610449565b600160281b8504600160781b8604600160501b870418189350636ed9eba19250610449565b600160501b8504600160781b8604818117600160281b8804169116179350638f1bbcdc9250610449565b600160281b8504600160781b8604600160501b87041818935063ca62c1d692505b50601f600160bb1b8504168063ffffffe06001609b1b87041617905080840190508063ffffffff8616019050808301905080600160e01b600484028c015104019050600160a01b8102600160281b860417945050600160501b633fffffff600160521b86041663c00000006604000000000000870416170277ffffffff00ffffffff000000000000ffffffff00ffffffff8516179350600181019050610382565b5050509190910177ffffffff00ffffffff00ffffffff00ffffffff00ffffffff169060400161020f565b50600160601b63ffffffff821667ffffffff000000006101008404166bffffffff00000000000000006201000085041663ffffffff60601b630100000086041663ffffffff60801b6401000000008704161717171702945050505050919050565b5f8083601f840112610585575f80fd5b50813567ffffffffffffffff81111561059c575f80fd5b6020830191508360208285010111156105b3575f80fd5b9250929050565b5f805f80604085870312156105cd575f80fd5b843567ffffffffffffffff808211156105e4575f80fd5b6105f088838901610575565b90965094506020870135915080821115610608575f80fd5b5061061587828801610575565b95989497509550505050565b8082018082111561064057634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x06e2822b8856749ed179c77140dbc5f5a27410a4":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063de8f50a11461002d575b5f80fd5b61004061003b36600461051c565b610054565b604051901515815260200160405180910390f35b5f6060805f61009c60048b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506102e79050565b60ff1690508015610166576100f060058261ffff168c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b925061015f6101008260056105c3565b61ffff908116906005906101169085168d6105e5565b61012091906105e5565b8c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b915061021d565b6101a960058b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250929392505061038b9050565b90506101f460078261ffff168c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b925061021a6102048260076105c3565b61ffff908116906007906101169085168d6105e5565b91505b5f606061026084868a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152506103b192505050565b90925090508180156102d757506102856020825161027e91906105e5565b82906103cb565b60028b8b6040516102979291906105f8565b602060405180830381855afa1580156102b2573d5f803e3d5ffd5b5050506040513d601f19601f820116820180604052508101906102d59190610607565b145b9c9b505050505050505050505050565b5f8282815181106102fa576102fa61061e565b016020015160f81c90505b92915050565b825160609061031a8385610632565b1115610324575f80fd5b5f8267ffffffffffffffff81111561033e5761033e610645565b6040519080825280601f01601f191660200182016040528015610368576020820181803683370190505b509050602080820190868601016103808282876103ed565b509095945050505050565b81515f9061039a836002610632565b11156103a4575f80fd5b50016002015161ffff1690565b5f60606103bf838587610442565b91509150935093915050565b81515f906103da836020610632565b11156103e4575f80fd5b50016020015190565b602081106104255781518352610404602084610632565b9250610411602083610632565b915061041e6020826105e5565b90506103ed565b905182516020929092036101000a5f190180199091169116179052565b5f60605f85518551855188888860405160200161046496959493929190610686565b6040516020818303038152906040529050835167ffffffffffffffff81111561048f5761048f610645565b6040519080825280601f01601f1916602001820160405280156104b9576020820181803683370190505b50915083516020830182516020840160055afa925050935093915050565b5f8083601f8401126104e7575f80fd5b50813567ffffffffffffffff8111156104fe575f80fd5b602083019150836020828501011115610515575f80fd5b9250929050565b5f805f805f8060608789031215610531575f80fd5b863567ffffffffffffffff80821115610548575f80fd5b6105548a838b016104d7565b9098509650602089013591508082111561056c575f80fd5b6105788a838b016104d7565b90965094506040890135915080821115610590575f80fd5b5061059d89828a016104d7565b979a9699509497509295939492505050565b634e487b7160e01b5f52601160045260245ffd5b61ffff8181168382160190808211156105de576105de6105af565b5092915050565b81810381811115610305576103056105af565b818382375f9101908152919050565b5f60208284031215610617575f80fd5b5051919050565b634e487b7160e01b5f52603260045260245ffd5b80820180821115610305576103056105af565b634e487b7160e01b5f52604160045260245ffd5b5f81515f5b81811015610678576020818501810151868301520161065e565b505f93019283525090919050565b8681528560208201528460408201525f6106b56106af6106a96060850188610659565b86610659565b84610659565b9897505050505050505056fea164736f6c6343000818000a","storage":{}},"0x0712e8e819712c3bfdb098ce51c87a4ac0296fd8":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x0930ffb2c192b0c9a9dd2372cf7f2845ef39cbb6":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x65":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x66":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xbe92182cab5b84fd18b34881a0c32771e84f5b8b","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c8121905":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x107733fed96c4cd390c944a31f5425a7fb98ae5e":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x65":"0x556e73746f707061626c6520446f6d61696e7300000000000000000000000026","0x66":"0x5544000000000000000000000000000000000000000000000000000000000004","0x133":"0x68747470733a2f2f6578616d706c652e636f6d2f000000000000000000000028","0x134":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x9c74364589a7bce52d7a232f90c98b979577d9ab711dbe7e9fb985471178bff":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf29a433ca043c2d5f13825944af9d019209f338df87172c6b8012dce3044881":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf319a2ef598111826b455194189a27454a0286226eb066e1116f605e0373b37":"0x0","0x1257bbdf5bed452b3eda1d974a9839972d4d54d7fb1cde6a652e653346cc29b8":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x12c033f2252861b1bd15e9b5c71ef1cf26ca53de15eabc3b49e06f596e8755ec":"0x0","0x1348552952ac59b1c2522e84f684e36775420b449eddcdbd28f217183ed58b09":"0x0","0x149026695ebdd2bd6be0a7006aec5d10ddffbe46be181e4468980ea83c004fe9":"0x0","0x14c854a78d51371251661a408306c75d2515b5d509b295a58205e48267082bdc":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x18f06622a1abedc7bb78fcc98b2375188aef6c03b9247beee780b0b095d60285":"0x0","0x201ef5e312d372e2aeac4cf173b46ad2985127c7381f4f9acae5ebbd3a5e3861":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x2215c0abaeffcb5feae8a439b3185f8fba5dd6d97529a56c7609cd41fafdf5f1":"0x1","0x23513200931f98893f46373666c13964c7a821c5b40da7951b921629acf02735":"0x0","0x23f87654b79c6db28828f317e47d0c8deb9eaa2ea4e213fef901836c85036bf3":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x2e4566d865f2e159531492d7643e25e502917762b29082282ab9dfee8fbf54c7":"0x0","0x31fc31c15d389c5908095d314bb8b258352d51e18ac8a2f7fe15f3a0af519145":"0x0","0x3467fdbb447be3074b11c625b56e54d7ab44f3804bef205b07dd436d707d06d5":"0x0","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x62b11ad5f582a5c5d378fb310125b030042554f1","0x3cd80e7291e5f6dffa9af6eb70d47145a8fdd40acb8d09dfd0cf374e8c239b37":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x3f86c4990e663ffa5011ed38824fca68af7e0592eb22f41aebdec0ce84ee672e":"0x0","0x406aa3bf31381c8a323679af48792dfa2e7aa09dd0eb919e307dc4bf84216ff6":"0x0","0x47ce17acd30cc86e021ac7b23be8138ea767f6da503362aac5888a0679270eed":"0x0","0x4a7983c36f64e6df4d467cf706c128c273d30c24bbb172e251a5740624cc0bd3":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x4c42d98041cda7cb7d56b5d04731bd436366eb9f05c30f43671f1d1e2c0b0fa4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x55926eed7087c8cbfa1492f6d367f5e4c14c8d8cd59e2918c37184091369efb1":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x5b20f40cb5e9e634a90df9a72b516c11cc52281a4d1b7b67e672e2fe544ff22f":"0x0","0x6dac3e1cfae338e10c9c2f5000f6256d09afa83708761042001cea734f470ac1":"0x0","0x6defc32a546a6fb1b745bd1bb04e27085e94f01d7ef79587aee2c80853c43a53":"0x0","0x760b245be050a725a39b4fc089ad474a5fd40efa17101e112d30195d590779b4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x7bee59fcac76da32acb23def57eaaf959a4372a4fc180978fbd54f7a4c4b2f3d":"0x0","0x804aee9448e0b539a009ee7c6dd57e686c72e7b182e9622a42922b245a97e61e":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x825f7f8567cfd669c3beab41edff07d4aa51436123deeb0d3623b6a8fdec893c":"0x0","0x8717a3236e6a948df94444f035834fa8f7c5ee663a29f3580f3ef43ab051d6bd":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8a34e37883baf84417a33bb02eec8d1e43e363f617029800ff166614df3f112f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8bd1acdc45b63f1edf5db0b1444f1c4a6f82bf0a5a0a7231c2dd7b76a2b1e35c":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87":"0x0","0x8ed4e9fbdf86edd9f3eb1c8d4fbfc53a2eb863faf4cf5e0d2b307c0b33030091":"0x0","0x8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x90d72780b77edcd0c8daffbac0b21264679e851b734cb090e2b144eb3a28bb98":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x93fc964857984ff804a65eaceac4062669948f2b651ddc6b71373ad142bf45e0":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x9770fa903e700367e0306ab8fd70a2bb4f049417d341a2f8a2409d8d6a2218d1":"0x0","0xb1016fe231c2ed9dba8c95d2658191823b4b9ffa61a7aea530802c6b2ff27c41":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xbe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafe":"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f","0xbe7c5c707db1c91bd2c84880bb1e177b65886d295d9a62df8edfe38f8066cc81":"0x0","0xc3cd64a46de7309013ddb93a16a3024c2e46fb931e4744edf2610fb119f716f5":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xc563f9d3175978a619bae1a8175d3ea4be91d3890345085c5eb16f83b678a3d9":"0x0","0xc5b5cdb7b939f9d661f58f28c37e10cf71d45dacfea2581c88ae4a17aaf55e6e":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xd386775169d9e0716e9b5b08561984726edaa9febd0ca8e5468ecffa112078c7":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xe3b736cdcc6a09d7e3a05ffb63b11f11c91958d861443c3409d3fd863e8217bd":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xe3e5b75e3dff543bfbfe5b494e4e3243b4d9d0b3d794725cea46c28fe6be50e4":"0x0","0xe7d61626cac95282d296ee7ab5958e3e72e32eb959a7cab1d37c0f9d6d69c18a":"0x1a","0xeca5e1ccaa645ce2be97a867a1f8aeeb63ea833aeb009c0df0553b42b30c683f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf08305746cdba1d0eaa65036694838a3db122973267ffc57739d605c320c680a":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf0d566acc03395f71b37890f455d51d93197adf754ea72aba21427dc66b437df":"0x0","0xf230898ba4fe40c52f958d03013d995f822e25a5d4fae43bbdc6e92623cea0bd":"0x0","0xf245a9962043f44f4af98f9952a3bd29d91eb05418e4bb567b9de8f27e239b13":"0x0","0xf2a19ade13962e8675aecf2fbe51913877912f9e48e899806b6e06e82f9a980f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf2fab50b0b53245ddfa1bcfcdf4c73e209d6921dad704d173cf04cbbadc8e346":"0x0","0xfa6f3ee10d719cb3457d10c539ff3d77b8e56852ea62f68b2f9f85ad691ed6b4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xfff3abb219acc6ef4eed6e93a5682023229370196f352cdf3a71a88d881e3487":"0x0"}},"0x11dd97b7ca847dfb6504e61b7b9eb30f55e554a0":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a424740014610090575b600080fd5b610059610054366004610ba9565b6100b3565b6040516100669190610c98565b60405180910390f35b61008261007d366004610cab565b6101ce565b604051908152602001610066565b6100a361009e366004610ba9565b610332565b6040519015158152602001610066565b606060005a6001546040805163b3f9e4cb60e01b81529088013560048201529192506000916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561010a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061012e9190610cd9565b90506101c26101406020880188610cf6565b8260408901358561015460608c018c610d13565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8f018190048102820181019092528d815292508d91508c90819084018382808284376000920191909152506103fb92505050565b925050505b9392505050565b60025460015460405163b3f9e4cb60e01b8152600481018490526000926001600160a01b0390811692169063b3f9e4cb90602401602060405180830381865afa92505050801561023b575060408051601f3d908101601f1916820190925261023891810190610cd9565b60015b156102435790505b6001600160a01b0381163b156102c557604051636ccbae5f60e01b81526004810184905281906001600160a01b03821690636ccbae5f90602401602060405180830381865afa9250505080156102b6575060408051601f3d908101601f191682019092526102b391810190610d5a565b60015b156102c357949350505050565b505b600254604051636ccbae5f60e01b8152600481018590526001600160a01b0390911690636ccbae5f90602401602060405180830381865afa15801561030e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101c79190610d5a565b6001546040805163b3f9e4cb60e01b815290850135600482015260009182916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa158015610383573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103a79190610cd9565b90506103f26103b586610e0b565b8286868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506104d392505050565b95945050505050565b6060600080876001600160a01b0316866104178b8a898961051f565b6040516104249190610eb5565b60006040518083038160008787f1925050503d8060008114610462576040519150601f19603f3d011682016040523d82523d6000602084013e610467565b606091505b509092509050610478603f87610ed1565b5a1161048657610486610ef3565b6104c682826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506105d4565b9998505050505050505050565b60006104e084848461060d565b8015610514575060608401516020908101516001600160e01b031990811660009081529182905260409091205460e01b1615155b949350505050565b50565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036105b15760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526105c982828661074c565b979650505050505050565b606083156105e35750816101c7565b8251156105f35782518084602001fd5b8160405162461bcd60e51b81526004016105a89190610c98565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015610654573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106789190610d5a565b905060006107268660600151805190602001208688602001516040516020016106c69392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156101c2575085516101c2906001600160a01b03168286610935565b60606001600160e01b0319841663b87abc1160e01b036107cd5760008380602001905181019061077c9190610d5a565b9050848184604051602401610792929190610f09565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915291506101c79050565b6001600160e01b0319841663c597407360e01b03610859576000806000858060200190518101906107fe9190610f67565b925092509250868383838860405160240161081c9493929190610fd4565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293506101c792505050565b6001600160e01b031984166311ed383160e31b036108a85760008060008580602001905181019061088a91906110a6565b925092509250868383838860405160240161081c9493929190611157565b6001600160e01b031984166328d55f9b60e21b036101c7576000806000858060200190518101906108d991906110a6565b92509250925086838383886040516024016108f79493929190611157565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293505050509392505050565b60008060006109448585610a77565b9092509050600081600481111561095d5761095d61117c565b14801561097b5750856001600160a01b0316826001600160a01b0316145b1561098b576001925050506101c7565b600080876001600160a01b0316631626ba7e60e01b88886040516024016109b3929190610f09565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516109f19190610eb5565b600060405180830381855afa9150503d8060008114610a2c576040519150601f19603f3d011682016040523d82523d6000602084013e610a31565b606091505b5091509150818015610a44575080516020145b8015610a6b57508051630b135d3f60e11b90610a699083016020908101908401610d5a565b145b98975050505050505050565b6000808251604103610aad5760208301516040840151606085015160001a610aa187828585610abc565b94509450505050610ab5565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610af35750600090506003610ba0565b8460ff16601b14158015610b0b57508460ff16601c14155b15610b1c5750600090506004610ba0565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610b70573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610b9957600060019250925050610ba0565b9150600090505b94509492505050565b600080600060408486031215610bbe57600080fd5b833567ffffffffffffffff80821115610bd657600080fd5b9085019060808288031215610bea57600080fd5b90935060208501359080821115610c0057600080fd5b818601915086601f830112610c1457600080fd5b813581811115610c2357600080fd5b876020828501011115610c3557600080fd5b6020830194508093505050509250925092565b60005b83811015610c63578181015183820152602001610c4b565b50506000910152565b60008151808452610c84816020860160208601610c48565b601f01601f19169290920160200192915050565b6020815260006101c76020830184610c6c565b600060208284031215610cbd57600080fd5b5035919050565b6001600160a01b038116811461051c57600080fd5b600060208284031215610ceb57600080fd5b81516101c781610cc4565b600060208284031215610d0857600080fd5b81356101c781610cc4565b6000808335601e19843603018112610d2a57600080fd5b83018035915067ffffffffffffffff821115610d4557600080fd5b602001915036819003821315610ab557600080fd5b600060208284031215610d6c57600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610dac57610dac610d73565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ddb57610ddb610d73565b604052919050565b600067ffffffffffffffff821115610dfd57610dfd610d73565b50601f01601f191660200190565b600060808236031215610e1d57600080fd5b610e25610d89565b8235610e3081610cc4565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610e6057600080fd5b840136601f820112610e7157600080fd5b8035610e84610e7f82610de3565b610db2565b8181523684838501011115610e9857600080fd5b818484018583013760009181019093015250606082015292915050565b60008251610ec7818460208701610c48565b9190910192915050565b600082610eee57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b8281526040602082015260006105146040830184610c6c565b600082601f830112610f3357600080fd5b8151610f41610e7f82610de3565b818152846020838601011115610f5657600080fd5b610514826020830160208701610c48565b600080600060608486031215610f7c57600080fd5b835167ffffffffffffffff80821115610f9457600080fd5b610fa087838801610f22565b94506020860151915080821115610fb657600080fd5b50610fc386828701610f22565b925050604084015190509250925092565b608081526000610fe76080830187610c6c565b8281036020840152610ff98187610c6c565b905084604084015282810360608401526105c98185610c6c565b600082601f83011261102457600080fd5b8151602067ffffffffffffffff8083111561104157611041610d73565b8260051b611050838201610db2565b938452858101830193838101908886111561106a57600080fd5b84880192505b85831015610a6b578251848111156110885760008081fd5b6110968a87838c0101610f22565b8352509184019190840190611070565b6000806000606084860312156110bb57600080fd5b835167ffffffffffffffff808211156110d357600080fd5b6110df87838801611013565b945060208601519150808211156110f557600080fd5b50610fc386828701611013565b600081518084526020808501808196508360051b8101915082860160005b8581101561114a578284038952611138848351610c6c565b98850198935090840190600101611120565b5091979650505050505050565b60808152600061116a6080830187611102565b8281036020840152610ff98187611102565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x2":"0xf8c26340c1eaea6c7ff1760b25005e1306953572","0x1e74f978992d7d64ddac400bd4aae9eefd60fa0b8456650273f5f50148803323":"0xa3557e6c","0x23c84c23be8f829809d1b1502c647c6c59fb6b2345b163a2ca3e7d4f9855975c":"0x8f69c188","0xa0286316c9d3cb00f4f54a9f1096cefaa1748bb5a5395e7fa1563568ebb3e6c3":"0xb87abc11","0xdc138de224807be243ee38fe9e746cce5d437a256b87be90b80240e0811ad043":"0xc5974073"}},"0x145908bbcfc7b258e4d4d9a586f6e3249ae80216":{"nonce":1,"balance":"0x0","code":"0x3d5c","storage":{}},"0x17cda4e23f7237277952e075b1c48467aabfacc0":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c806368f9dab21461002d575b5f80fd5b61004061003b36600461088b565b610052565b60405190815260200160405180910390f35b5f61006f6040518060400160405280606081526020015f81525090565b61008e61007c858861090d565b61008790601061090d565b82906101d1565b506100d085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250859392505061023a9050565b5061011287878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250859392505061023a9050565b505f610120825f0151610266565b905083156101bc5760408051808201909152606081525f602090910181905282515261014c825f610650565b5061018e88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250869392505061023a9050565b505f5b848110156101ba576101a4835f8461067f565b5082516101b090610266565b9150600101610191565b505b6001600160601b031916979650505050505050565b60408051808201909152606081525f60208201526101f0602083610920565b1561021857610200602083610920565b61020b90602061093f565b610215908361090d565b91505b506020808301829052604080518085525f815283019091019052815b92915050565b60408051808201909152606081525f602082015261025f83845f0151518485516106b2565b9392505050565b5f6040518251602084019350604067ffffffffffffffc060018301160160098282031060018103610298576040820191505b50776745230100efcdab890098badcfe001032547600c3d2e1f06102e8565b5f8383101561025f5750808201519282900392602084101561025f575f1960208590036101000a0119169392505050565b5f5b828110156105ef576102fd8482896102b7565b855261030d8460208301896102b7565b6020860152604081850310600181036103295760808286038701535b506040830381146001810361034657602086018051600887021790525b5060405b60808110156103ce57858101603f19810151603719820151601f19830151600b198401516002911891909218189081027ffffffffefffffffefffffffefffffffefffffffefffffffefffffffefffffffe1663800000009091047c010000000100000001000000010000000100000001000000010000000116179052600c0161034a565b5060805b61014081101561045757858101607f19810151606f19820151603f198301516017198401516004911891909218189081027ffffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffc1663400000009091047c0300000003000000030000000300000003000000030000000300000003161790526018016103d2565b50815f805f5b60508110156105c55760148104801561048d57600181146104b457600281146104d9576003811461050357610524565b600160281b8504600160501b86048118600160781b870416189350635a8279999250610524565b600160281b8504600160781b8604600160501b870418189350636ed9eba19250610524565b600160501b8504600160781b8604818117600160281b8804169116179350638f1bbcdc9250610524565b600160281b8504600160781b8604600160501b87041818935063ca62c1d692505b50601f600160bb1b8504168063ffffffe06001609b1b87041617905080840190508063ffffffff8616019050808301905080600160e01b600484028c015104019050600160a01b8102600160281b860417945050600160501b633fffffff600160521b86041663c00000006604000000000000870416170277ffffffff00ffffffff000000000000ffffffff00ffffffff851617935060018101905061045d565b5050509190910177ffffffff00ffffffff00ffffffff00ffffffff00ffffffff16906040016102ea565b50600160601b63ffffffff821667ffffffff000000006101008404166bffffffff00000000000000006201000085041663ffffffff60601b630100000086041663ffffffff60801b6401000000008704161717171702945050505050919050565b60408051808201909152606081525f602082015282515161025f9084906001600160601b031985166014610798565b60408051808201909152606081525f60208201526106aa84846001600160601b031985166014610798565b949350505050565b60408051808201909152606081525f602082015282518211156106d3575f80fd5b60208501516106e2838661090d565b1115610715576107158561070587602001518786610700919061090d565b610813565b610710906002610952565b610829565b5f808651805187602083010193508088870111156107335787860182525b505050602084015b60208410610773578051825261075260208361090d565b915061075f60208261090d565b905061076c60208561093f565b935061073b565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b60408051808201909152606081525f602082015260208501516107bb858461090d565b11156107cf576107cf85610705868561090d565b5f6001836101000a0390508260200360080284901c93508551838682010185831982511617815250805184870111156108085783860181525b509495945050505050565b5f81831115610823575081610234565b50919050565b815161083583836101d1565b50610840838261023a565b50505050565b5f8083601f840112610856575f80fd5b50813567ffffffffffffffff81111561086d575f80fd5b602083019150836020828501011115610884575f80fd5b9250929050565b5f805f805f6060868803121561089f575f80fd5b853567ffffffffffffffff808211156108b6575f80fd5b6108c289838a01610846565b909750955060208801359150808211156108da575f80fd5b506108e788828901610846565b96999598509660400135949350505050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610234576102346108f9565b5f8261093a57634e487b7160e01b5f52601260045260245ffd5b500690565b81810381811115610234576102346108f9565b8082028115828204841417610234576102346108f956fea164736f6c6343000818000a","storage":{}},"0x19356cc2300833e690088a5a09a2044a3cc2a1e2":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x229c56b7805ab5935a883207f6a6bd5847e65aee":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106102ae5760003560e01c8063906cecc111610175578063b9998a24116100dc578063d547741f11610095578063f2fde38b1161006f578063f2fde38b14610892578063f5243bc4146108b2578063f940e385146108d2578063ffa1ad74146108f257600080fd5b8063d547741f1461083f578063d7db74c71461085f578063ec5273891461087257600080fd5b8063b9998a241461077d578063cc2a9a5b1461079d578063cc2c3fc4146107bd578063ceeb4f50146107dd578063d1f5692c146107fd578063d53913931461081d57600080fd5b8063a3a3f7f61161012e578063a3a3f7f614610690578063a3f4df7e146106b0578063a849d65c146106fd578063aa271e1a1461071d578063b0aa98c71461073d578063b3ab15fb1461075d57600080fd5b8063906cecc1146105e657806391d1485414610606578063983b2d5614610626578063986502751461064657806399e0dd7c1461065b578063a217fddf1461067b57600080fd5b80635b6fa8db11610219578063715018a6116101d2578063715018a61461054b57806371e2a6571461056057806377a2a5891461058057806381c81d35146105a05780638456cb59146105b35780638da5cb5b146105c857600080fd5b80635b6fa8db146104a35780635c975abb146104c35780635cd7e3b3146104d85780635e22cd86146104f85780635fc1964f14610518578063634486da1461053857600080fd5b80633092afd51161026b5780633092afd5146103a857806336568abe146103c85780633f41b614146103e85780633f4ba83a1461042057806351cff8d914610435578063572b6c051461045557600080fd5b806301ffc9a7146102b35780631edb948e146102e857806320c5429b1461030a578063248a9ca31461032a578063268b15ed146103685780632f2ff15d14610388575b600080fd5b3480156102bf57600080fd5b506102d36102ce366004613dc4565b610923565b60405190151581526020015b60405180910390f35b3480156102f457600080fd5b50610308610303366004613e13565b61095a565b005b34801561031657600080fd5b50610308610325366004613e3f565b610b03565b34801561033657600080fd5b5061035a610345366004613e3f565b60009081526097602052604090206001015490565b6040519081526020016102df565b34801561037457600080fd5b50610308610383366004613e99565b610c26565b34801561039457600080fd5b506103086103a3366004613f04565b610cb9565b3480156103b457600080fd5b506103086103c3366004613f34565b610ce3565b3480156103d457600080fd5b506103086103e3366004613f04565b610cf7565b3480156103f457600080fd5b5060c954610408906001600160a01b031681565b6040516001600160a01b0390911681526020016102df565b34801561042c57600080fd5b50610308610d85565b34801561044157600080fd5b50610308610450366004613f34565b610d97565b34801561046157600080fd5b506102d3610470366004613f34565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546001600160a01b0390811691161490565b3480156104af57600080fd5b5060cc54610408906001600160a01b031681565b3480156104cf57600080fd5b506102d3610e37565b3480156104e457600080fd5b506103086104f3366004613fa3565b610e4d565b34801561050457600080fd5b50610308610513366004614062565b6110b1565b34801561052457600080fd5b5061030861053336600461419c565b6112f6565b610308610546366004613f34565b61133e565b34801561055757600080fd5b50610308611401565b34801561056c57600080fd5b5061030861057b36600461419c565b611413565b34801561058c57600080fd5b5060ce54610408906001600160a01b031681565b6103086105ae366004613f34565b61145b565b3480156105bf57600080fd5b506103086114d8565b3480156105d457600080fd5b506033546001600160a01b0316610408565b3480156105f257600080fd5b5061030861060136600461423a565b6114e8565b34801561061257600080fd5b506102d3610621366004613f04565b61156e565b34801561063257600080fd5b50610308610641366004613f34565b611599565b34801561065257600080fd5b506103086115aa565b34801561066757600080fd5b50610308610676366004614295565b6115c4565b34801561068757600080fd5b5061035a600081565b34801561069c57600080fd5b506103086106ab3660046142d6565b6116ab565b3480156106bc57600080fd5b506106f0604051806040016040528060148152602001732aa7299d1026b4b73a34b7339026b0b730b3b2b960611b81525081565b6040516102df919061437c565b34801561070957600080fd5b5060cb54610408906001600160a01b031681565b34801561072957600080fd5b506102d3610738366004613f34565b6116f4565b34801561074957600080fd5b506102d3610758366004613e3f565b61170e565b34801561076957600080fd5b50610308610778366004613f34565b61176c565b34801561078957600080fd5b50610308610798366004613f34565b611796565b3480156107a957600080fd5b506103086107b836600461438f565b6117db565b3480156107c957600080fd5b5060ca54610408906001600160a01b031681565b3480156107e957600080fd5b506103086107f8366004614411565b611cd2565b34801561080957600080fd5b506103086108183660046144c6565b611d76565b34801561082957600080fd5b5061035a600080516020614ef483398151915281565b34801561084b57600080fd5b5061030861085a366004613f04565b611e2d565b61030861086d3660046144fb565b611e52565b34801561087e57600080fd5b5061030861088d366004613e3f565b611fe2565b34801561089e57600080fd5b506103086108ad366004613f34565b612054565b3480156108be57600080fd5b506103086108cd3660046145f0565b612070565b3480156108de57600080fd5b506103086108ed366004614708565b612222565b3480156108fe57600080fd5b506106f060405180604001604052806005815260200164302e352e3160d81b81525081565b60006001600160e01b03198216637965db0b60e01b148061095457506301ffc9a760e01b6001600160e01b03198316145b92915050565b61096561073861239e565b61098a5760405162461bcd60e51b815260040161098190614736565b60405180910390fd5b60c95460405163baef73e960e01b8152600481018390526000916001600160a01b03169063baef73e990602401602060405180830381865afa1580156109d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109f8919061476b565b9050806001600160401b0316600003610a235760405162461bcd60e51b815260040161098190614788565b806001600160401b0316836001600160401b031611610a905760405162461bcd60e51b815260206004820152602360248201527f4d696e74696e674d616e616765723a204558504952595f4e4f545f455854454e60448201526211115160ea1b6064820152608401610981565b60c954604051631fb9763760e11b81526001600160401b0385166004820152602481018490526001600160a01b0390911690633f72ec6e906044015b600060405180830381600087803b158015610ae657600080fd5b505af1158015610afa573d6000803e3d6000fd5b50505050505050565b610b0e61073861239e565b610b2a5760405162461bcd60e51b815260040161098190614736565b60c95460405163baef73e960e01b8152600481018390526001600160a01b039091169063baef73e990602401602060405180830381865afa158015610b73573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b97919061476b565b6001600160401b0316600003610bbf5760405162461bcd60e51b815260040161098190614788565b60c954604051637eee288d60e01b8152306004820152602481018390526001600160a01b0390911690637eee288d90604401600060405180830381600087803b158015610c0b57600080fd5b505af1158015610c1f573d6000803e3d6000fd5b5050505050565b8282828080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250610c6993508592508491506123ad565b610c71610e37565b15610c8e5760405162461bcd60e51b8152600401610981906147cb565b6060610afa610c9b61239e565b610cae88610ca98989612584565b6125b0565b8384600060016126c1565b600082815260976020526040902060010154610cd481612c15565b610cde8383612c26565b505050565b610ceb612cad565b610cf481612d26565b50565b610cff61239e565b6001600160a01b0316816001600160a01b031614610d775760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610981565b610d818282612d3e565b5050565b610d8d612cad565b610d95612dc3565b565b610d9f612cad565b6001600160a01b038116610db257600080fd5b60405147906001600160a01b0383169082156108fc029083906000818181858888f19350505050158015610dea573d6000803e3d6000fd5b50604080516001600160a01b03841681526020810183905260008183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a15050565b600080516020614ed48339815191525460ff1690565b610e5786886147f5565b8051600203610e8c57610e6b61073861239e565b610e875760405162461bcd60e51b8152600401610981906148bf565b610fd1565b6000610e9782612e6b565b60c9549092506001600160a01b0316905063430c2081610eb561239e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015610f00573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f249190614903565b80610fb3575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa158015610f7d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fa19190614903565b8015610fb35750610fb361073861239e565b610fcf5760405162461bcd60e51b815260040161098190614920565b505b610fdb87896147f5565b6000600282511015610fff5760405162461bcd60e51b81526004016109819061496f565b6110546110336000846001865161101691906149ca565b81518110611026576110266149dd565b6020026020010151612ea6565b83600081518110611046576110466149dd565b6020026020010151836123ad565b61105c610e37565b156110795760405162461bcd60e51b8152600401610981906147cb565b6110a38b6110878b8d6147f5565b6110918a8c6147f5565b61109b898b6147f5565b6000896126c1565b505050505050505050505050565b6110bb87896147f5565b80516002036110f0576110cf61073861239e565b6110eb5760405162461bcd60e51b8152600401610981906148bf565b611235565b60006110fb82612e6b565b60c9549092506001600160a01b0316905063430c208161111961239e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015611164573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111889190614903565b80611217575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa1580156111e1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112059190614903565b8015611217575061121761073861239e565b6112335760405162461bcd60e51b815260040161098190614920565b505b61123f888a6147f5565b836002825110156112625760405162461bcd60e51b81526004016109819061496f565b6112796110336000846001865161101691906149ca565b611281610e37565b1561129e5760405162461bcd60e51b8152600401610981906147cb565b60028a146112be5760405162461bcd60e51b8152600401610981906149f3565b6112e78c6112cc8c8e6147f5565b6112d68b8d6147f5565b6112e08a8c6147f5565b89896126c1565b50505050505050505050505050565b6112fe612cad565b60005b8151811015610d815761132c82828151811061131f5761131f6149dd565b6020026020010151612d26565b8061133681614a39565b915050611301565b61134961073861239e565b6113655760405162461bcd60e51b815260040161098190614736565b6001600160a01b0381166113bb5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610981565b6113c481612f5a565b6113cc6115aa565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610d81573d6000803e3d6000fd5b611409612cad565b610d956000612f72565b61141b612cad565b60005b8151811015610d815761144982828151811061143c5761143c6149dd565b6020026020010151612f5a565b8061145381614a39565b91505061141e565b61146661073861239e565b6114825760405162461bcd60e51b815260040161098190614736565b6001600160a01b0381166113c45760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610981565b6114e0612cad565b610d95612fc4565b8282828080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525061152b93508592508491506123ad565b611533610e37565b156115505760405162461bcd60e51b8152600401610981906147cb565b606061156487610cae88610ca98989612584565b5050505050505050565b60009182526097602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6115a1612cad565b610cf481612f5a565b610d95600080516020614ef48339815191526103e361239e565b6115cc612cad565b60c954604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906115fe9085908590600401614a52565b600060405180830381600087803b15801561161857600080fd5b505af115801561162c573d6000803e3d6000fd5b505060cb546001600160a01b0316159150610d8190505760cb54604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906116759085908590600401614a52565b600060405180830381600087803b15801561168f57600080fd5b505af11580156116a3573d6000803e3d6000fd5b505050505050565b6116b3612cad565b610cde83838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525085925061302c915050565b6000610954600080516020614ef48339815191528361156e565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd696020820152908101829052600090611762906060015b6040516020818303038152906040528051906020012090565b5460ff1692915050565b611774612cad565b60ce80546001600160a01b0319166001600160a01b0392909216919091179055565b61179e612cad565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e80546001600160a01b0319166001600160a01b03831617905550565b600054610100900460ff16158080156117fb5750600054600160ff909116105b806118155750303b158015611815575060005460ff166001145b6118785760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610981565b6000805460ff19166001179055801561189b576000805461ff0019166101001790555b60c980546001600160a01b03199081166001600160a01b038a81169190911790925560ca8054821689841617905560cb8054821688841617905560cc8054821687841617905560ce80549091169185169190911790556118f961314c565b611901613183565b61190a826131bc565b6119126131e3565b6040805161036081018252600661032082018181526563727970746f60d01b610340840152825282518084018452818152651dd85b1b195d60d21b602082810191909152808401919091528351808501855260018152600f60fb1b8183015283850152835180850185526003808252621b999d60ea1b82840152606085019190915284518086018652600a815269313637b1b5b1b430b4b760b11b818401526080850152845180860186526007808252663134ba31b7b4b760c91b8285015260a0860191909152855180870187528281526207070760eb1b8185015260c0860152855180870187528281526264616f60e81b8185015260e086015285518087018752828152621e9a5b60ea1b8185015261010086015285518087018752908152663837b63cb3b7b760c91b8184015261012085015284518086018652600b81526a756e73746f707061626c6560a81b81840152610140850152845180860186528381526535b632bb32b960d11b8184015261016085015284518086018652600280825261686960f01b8285015261018086019190915285518087018752848152656b726573757360d01b818501526101a086015285518087018752600580825264616e696d6560d81b828601526101c087019190915286518088018852818152646d616e676160d81b818601526101e087015286518088018852600981526862696e616e6365757360b81b8186015261020087015286518088018852818152647265616c6d60d81b818601526102208701528651808801885291825261676f60f01b82850152610240860191909152855180870187526008815267185b1d1a5b5a5cdd60c21b818501526102608601528551808701875290815264707564677960d81b81840152610280850152845180860186528381526530bab9ba34b760d11b818401526102a08501528451808601865292835265189a5d19d95d60d21b838301526102c08401929092528351808501855291825262706f6760e81b828201526102e083019190915282518084019093526004835263636c617960e01b9083015261030081019190915260005b6019811015611c5c57611c4a828260198110611c3e57611c3e6149dd565b6020020151600061302c565b80611c5481614a39565b915050611c20565b50611c8360405180604001604052806003815260200162636f6d60e81b815250600161302c565b508015610afa576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050505050565b8686868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250611d1593508592508491506123ad565b611d1d610e37565b15611d3a5760405162461bcd60e51b8152600401610981906147cb565b611d698a611d4c8b610ca98c8c612584565b611d56888a6147f5565b611d6087896147f5565b600060016126c1565b5050505050505050505050565b611d7e612cad565b60005b81811015610cde5760c9546001600160a01b03166350960239848484818110611dac57611dac6149dd565b9050602002016020810190611dc19190613f34565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401600060405180830381600087803b158015611e0257600080fd5b505af1158015611e16573d6000803e3d6000fd5b505050508080611e2590614a39565b915050611d81565b600082815260976020526040902060010154611e4881612c15565b610cde8383612d3e565b611e5c898b6147f5565b6000600282511015611e805760405162461bcd60e51b81526004016109819061496f565b611e976110336000846001865161101691906149ca565b611e9f610e37565b15611ebc5760405162461bcd60e51b8152600401610981906147cb565b60028b14611edc5760405162461bcd60e51b8152600401610981906149f3565b611f228d8d8d898960008a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061322392505050565b84341015611f725760405162461bcd60e51b815260206004820181905260248201527f4d696e74696e674d616e616765723a204e4f545f454e4f5547485f46554e44536044820152606401610981565b611f848d8d8d8d8d8d8d8c60006133e3565b843411156112e757611f9461239e565b6001600160a01b03166108fc611faa87346149ca565b6040518115909202916000818181858888f19350505050158015611fd2573d6000803e3d6000fd5b5050505050505050505050505050565b611fea612cad565b611ff38161349f565b61200f5760405162461bcd60e51b815260040161098190614a81565b600081815260cd6020526040812061202691613d76565b60405181907f0aa1aff0f830e739d86baf0e6624d6763da02f7733575e0e463886cd062dea6a90600090a250565b61205c612cad565b612065816134c5565b610cf460008261353b565b61207a8a8c6147f5565b600060028251101561209e5760405162461bcd60e51b81526004016109819061496f565b6120b56110336000846001865161101691906149ca565b6120bd610e37565b156120da5760405162461bcd60e51b8152600401610981906147cb565b60028c146120fa5760405162461bcd60e51b8152600401610981906149f3565b61213f8e8e8e8a898b8a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061322392505050565b856001600160a01b03166323b872dd61215661239e565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152306024820152604481018890526064016020604051808303816000875af11580156121a9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121cd9190614903565b6122115760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610981565b611fd28e8e8e8e8e8e8e8c8e6133e3565b61222a612cad565b6040516370a0823160e01b81523060048201526000906001600160a01b038416906370a0823190602401602060405180830381865afa158015612271573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122959190614ac3565b60405163a9059cbb60e01b81526001600160a01b038481166004830152602482018390529192509084169063a9059cbb906044016020604051808303816000875af11580156122e8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061230c9190614903565b6123505760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610981565b604080516001600160a01b0384811682526020820184905285168183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a1505050565b60006123a8613545565b905090565b6123b68361349f565b6123d25760405162461bcd60e51b815260040161098190614a81565b600083815260cf602052604090205460ff1615156001600160401b03821615151461244e5760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544c445f455850495241424c455f4d496044820152650a69a82a886960d31b6064820152608401610981565b60006124818360408051808201825260008082526020918201528151808301909252825182529182019181019190915290565b9050600a81600001511115612529576124ac6124a0826000600a61358b565b80516020909101512090565b7fb551e0305c8163b812374b8e78b577c77f226f6f10c5ad03e52699578fbc34b8036125295760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544f4b454e5f4c4142454c5f50524f4860448201526512509255115160d21b6064820152608401610981565b612532836135ca565b61257e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a204c4142454c5f494e56414c49440000006044820152606401610981565b50505050565b60608282604051602001612599929190614adc565b604051602081830303815290604052905092915050565b604080516002808252606082810190935260009190816020015b60608152602001906001900390816125ca57905050905082816000815181106125f5576125f56149dd565b602002602001018190525060cd6000858152602001908152602001600020805461261e90614b04565b80601f016020809104026020016040519081016040528092919081815260200182805461264a90614b04565b80156126975780601f1061266c57610100808354040283529160200191612697565b820191906000526020600020905b81548152906001019060200180831161267a57829003601f168201915b5050505050816001815181106126af576126af6149dd565b60209081029190910101529392505050565b60008060006126cf88612e6b565b915091508380156126e1575060028851115b8015612763575060c9546040516331a9108f60e11b8152600481018390526001600160a01b038b8116921690636352211e90602401602060405180830381865afa158015612733573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127579190614b3e565b6001600160a01b031614155b156127c35760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e616765723a20524556455253455f5245434f52445f4e60448201526913d517d0531313d5d15160b21b6064820152608401610981565b60c954604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401602060405180830381865afa15801561280c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128309190614903565b8015612921575060c9546040516331a9108f60e11b81526004810184905230916001600160a01b031690636352211e90602401602060405180830381865afa158015612880573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128a49190614b3e565b6001600160a01b03161480612921575060c95460405163d9548e5360e01b8152600481018490526001600160a01b039091169063d9548e5390602401602060405180830381865afa1580156128fd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129219190614903565b15612a12576001600160401b038516156129a35760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b15801561298a57600080fd5b505af115801561299e573d6000803e3d6000fd5b505050505b60c954604051630fb8df0360e11b81526001600160a01b0390911690631f71be06906129db908c908c908c908c908b90600401614bb0565b600060405180830381600087803b1580156129f557600080fd5b505af1158015612a09573d6000803e3d6000fd5b50505050612c09565b612a1b8261372e565b612a248861378d565b8015612a31575087516002145b8015612a4457506001600160401b038516155b15612b225760ca5488516001600160a01b039091169063c36c2125908b908b90600090612a7357612a736149dd565b602090810291909101015160cc546040516001600160e01b031960e086901b168152612aad9392916001600160a01b031690600401614c0f565b600060405180830381600087803b158015612ac757600080fd5b505af1158015612adb573d6000803e3d6000fd5b50505050600087511115612b1d5760cc54604051633a0deb9d60e21b81526001600160a01b039091169063e837ae74906129db908a908a908790600401614c44565b612c09565b60c95460405163ba5d40b760e01b81526001600160a01b039091169063ba5d40b790612b5a908c908c908c908c908b90600401614bb0565b600060405180830381600087803b158015612b7457600080fd5b505af1158015612b88573d6000803e3d6000fd5b505050506001600160401b03851615612c095760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b158015612bf057600080fd5b505af1158015612c04573d6000803e3d6000fd5b505050505b50979650505050505050565b610cf481612c2161239e565b6137e7565b612c30828261156e565b610d815760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19166001179055612c6961239e565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b612cb561239e565b6001600160a01b0316612cd06033546001600160a01b031690565b6001600160a01b031614610d955760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610981565b610cf4600080516020614ef483398151915282611e2d565b612d48828261156e565b15610d815760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19169055612d7f61239e565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612dcb610e37565b612e0e5760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881393d517d4105554d15160621b6044820152606401610981565b600080516020614ed4833981519152805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa612e4e61239e565b6040516001600160a01b03909116815260200160405180910390a1565b805160009081905b8015612ea057829150612e8c82856110166001856149ca565b925080612e9881614c7a565b915050612e73565b50915091565b60008151600003612ef95760405162461bcd60e51b815260206004820152601b60248201527f4d696e74696e674d616e616765723a204c4142454c5f454d50545900000000006044820152606401610981565b8282604051602001612f0b9190614c91565b60405160208183030381529060405280519060200120604051602001612f3b929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b610cf4600080516020614ef48339815191528261353b565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b612fcc610e37565b15612fe95760405162461bcd60e51b8152600401610981906147cb565b600080516020614ed4833981519152805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258612e4e61239e565b6000613039600084612ea6565b600081815260cd602052604090209091506130548482614cf3565b50600081815260cf602052604090819020805460ff19168415151790555181907f4fce6f6e172b04eaa80325d8e3b0180a34945000f3e214605039e8420fdf8980906130a190869061437c565b60405180910390a260c954604051634f558e7960e01b8152600481018390526001600160a01b0390911690634f558e7990602401602060405180830381865afa1580156130f2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131169190614903565b610cde5760c9546040516307befae360e51b81526001600160a01b039091169063f7df5c6090610acc9084908790600401614db2565b600054610100900460ff166131735760405162461bcd60e51b815260040161098190614dd3565b610d9561317e61239e565b612f72565b600054610100900460ff166131aa5760405162461bcd60e51b815260040161098190614dd3565b610d9560006131b761239e565b61353b565b600054610100900460ff1661179e5760405162461bcd60e51b815260040161098190614dd3565b600054610100900460ff1661320a5760405162461bcd60e51b815260040161098190614dd3565b600080516020614ed4833981519152805460ff19169055565b600061323761323287896147f5565b612e6b565b506040516bffffffffffffffffffffffff1930606090811b821660208401524660348401528b811b82166054840152606883018490526001600160c01b031960c08a901b1660888401526090830188905286901b1660b082015290915060009061331390849061330d9060c401604051602081830303815290604052805190602001206040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c8101829052600090605c01604051602081830303815290604052805190602001209050919050565b9061384b565b905061331e816116f4565b6133765760405162461bcd60e51b8152602060048201526024808201527f4d696e74696e674d616e616765723a205349474e45525f49535f4e4f545f4d49604482015263272a22a960e11b6064820152608401610981565b42866001600160401b0316116133d85760405162461bcd60e51b815260206004820152602160248201527f4d696e74696e674d616e616765723a20455850495245445f5349474e415455526044820152604560f81b6064820152608401610981565b505050505050505050565b600061342a8a6133f38a8c6147f5565b6133fd898b6147f5565b613407888a6147f5565b60008f6001600160a01b031661341b61239e565b6001600160a01b0316146126c1565b9050896001600160a01b031661343e61239e565b6001600160a01b0316827fa545b6fd3355e8d57f8c8147bafe740545bd3ea1f94bef2576a6d532a7c3b605868660405161348b9291909182526001600160a01b0316602082015260400190565b60405180910390a450505050505050505050565b600081815260cd6020526040812080548291906134bb90614b04565b9050119050919050565b6134cd612cad565b6001600160a01b0381166135325760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610981565b610cf481612f72565b610d818282612c26565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546000906001600160a01b03163303613586575060331936013560601c90565b503390565b604080518082019091526000808252602082015260405180604001604052808381526020018486602001516135c09190614e1e565b9052949350505050565b600081516000036135dd57506000919050565b60208201805160f81c603081108015906135fb575060398160ff1611155b15801561361d575060618160ff161015801561361b5750607a8160ff1611155b155b1561362c575060009392505050565b8351600181111561369a5761364e836136466001846149ca565b015160f81c90565b915060308260ff1610158015613668575060398260ff1611155b15801561368a575060618260ff16101580156136885750607a8260ff1611155b155b1561369a57506000949350505050565b60015b6136a86001836149ca565b811015613722578381015160f81c9250602d83148015906136de575060308360ff16101580156136dc575060398360ff1611155b155b80156136ff575060618360ff16101580156136fd5750607a8360ff1611155b155b156137105750600095945050505050565b8061371a81614a39565b91505061369d565b50600195945050505050565b6137378161170e565b156137845760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a20544f4b454e5f424c4f434b45440000006044820152606401610981565b610cf48161386f565b6000806137a46000846001865161101691906149ca565b60ca549091506001600160a01b0316158015906137e05750807f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f145b9392505050565b6137f1828261156e565b610d8157613809816001600160a01b031660146138f3565b6138148360206138f3565b604051602001613825929190614e31565b60408051601f198184030181529082905262461bcd60e51b82526109819160040161437c565b600080600061385a8585613a8e565b9150915061386781613ad3565b509392505050565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd6960208201529081018290526001906138ae90606001611749565b805460ff19169115159190911790556040518181527f2ce5d9351b1d590d5a066db0d2dc7602d55f092506a83a7ee8c4d78ee357d75a9060200160405180910390a150565b60606000613902836002614ea6565b61390d906002614e1e565b6001600160401b0381111561392457613924614133565b6040519080825280601f01601f19166020018201604052801561394e576020820181803683370190505b509050600360fc1b81600081518110613969576139696149dd565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110613998576139986149dd565b60200101906001600160f81b031916908160001a90535060006139bc846002614ea6565b6139c7906001614e1e565b90505b6001811115613a3f576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106139fb576139fb6149dd565b1a60f81b828281518110613a1157613a116149dd565b60200101906001600160f81b031916908160001a90535060049490941c93613a3881614c7a565b90506139ca565b5083156137e05760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610981565b6000808251604103613ac45760208301516040840151606085015160001a613ab887828585613c89565b94509450505050613acc565b506000905060025b9250929050565b6000816004811115613ae757613ae7614ebd565b03613aef5750565b6001816004811115613b0357613b03614ebd565b03613b505760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152606401610981565b6002816004811115613b6457613b64614ebd565b03613bb15760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610981565b6003816004811115613bc557613bc5614ebd565b03613c1d5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b6064820152608401610981565b6004816004811115613c3157613c31614ebd565b03610cf45760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c604482015261756560f01b6064820152608401610981565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613cc05750600090506003613d6d565b8460ff16601b14158015613cd857508460ff16601c14155b15613ce95750600090506004613d6d565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613d3d573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613d6657600060019250925050613d6d565b9150600090505b94509492505050565b508054613d8290614b04565b6000825580601f10613d92575050565b601f016020900490600052602060002090810190610cf491905b80821115613dc05760008155600101613dac565b5090565b600060208284031215613dd657600080fd5b81356001600160e01b0319811681146137e057600080fd5b6001600160401b0381168114610cf457600080fd5b8035613e0e81613dee565b919050565b60008060408385031215613e2657600080fd5b8235613e3181613dee565b946020939093013593505050565b600060208284031215613e5157600080fd5b5035919050565b60008083601f840112613e6a57600080fd5b5081356001600160401b03811115613e8157600080fd5b602083019150836020828501011115613acc57600080fd5b600080600060408486031215613eae57600080fd5b8335925060208401356001600160401b03811115613ecb57600080fd5b613ed786828701613e58565b9497909650939450505050565b6001600160a01b0381168114610cf457600080fd5b8035613e0e81613ee4565b60008060408385031215613f1757600080fd5b823591506020830135613f2981613ee4565b809150509250929050565b600060208284031215613f4657600080fd5b81356137e081613ee4565b60008083601f840112613f6357600080fd5b5081356001600160401b03811115613f7a57600080fd5b6020830191508360208260051b8501011115613acc57600080fd5b8015158114610cf457600080fd5b60008060008060008060008060a0898b031215613fbf57600080fd5b8835613fca81613ee4565b975060208901356001600160401b0380821115613fe657600080fd5b613ff28c838d01613f51565b909950975060408b013591508082111561400b57600080fd5b6140178c838d01613f51565b909750955060608b013591508082111561403057600080fd5b5061403d8b828c01613f51565b909450925050608089013561405181613f95565b809150509295985092959890939650565b600080600080600080600080600060c08a8c03121561408057600080fd5b893561408b81613ee4565b985060208a01356001600160401b03808211156140a757600080fd5b6140b38d838e01613f51565b909a50985060408c01359150808211156140cc57600080fd5b6140d88d838e01613f51565b909850965060608c01359150808211156140f157600080fd5b506140fe8c828d01613f51565b90955093505060808a013561411281613dee565b915060a08a013561412281613f95565b809150509295985092959850929598565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561417157614171614133565b604052919050565b60006001600160401b0382111561419257614192614133565b5060051b60200190565b600060208083850312156141af57600080fd5b82356001600160401b038111156141c557600080fd5b8301601f810185136141d657600080fd5b80356141e96141e482614179565b614149565b81815260059190911b8201830190838101908783111561420857600080fd5b928401925b8284101561422f57833561422081613ee4565b8252928401929084019061420d565b979650505050505050565b6000806000806060858703121561425057600080fd5b843561425b81613ee4565b93506020850135925060408501356001600160401b0381111561427d57600080fd5b61428987828801613e58565b95989497509550505050565b600080602083850312156142a857600080fd5b82356001600160401b038111156142be57600080fd5b6142ca85828601613e58565b90969095509350505050565b6000806000604084860312156142eb57600080fd5b83356001600160401b0381111561430157600080fd5b61430d86828701613e58565b909450925050602084013561432181613f95565b809150509250925092565b60005b8381101561434757818101518382015260200161432f565b50506000910152565b6000815180845261436881602086016020860161432c565b601f01601f19169290920160200192915050565b6020815260006137e06020830184614350565b60008060008060008060c087890312156143a857600080fd5b86356143b381613ee4565b955060208701356143c381613ee4565b945060408701356143d381613ee4565b935060608701356143e381613ee4565b925060808701356143f381613ee4565b915060a087013561440381613ee4565b809150509295509295509295565b60008060008060008060008060a0898b03121561442d57600080fd5b883561443881613ee4565b97506020890135965060408901356001600160401b038082111561445b57600080fd5b6144678c838d01613e58565b909850965060608b013591508082111561448057600080fd5b61448c8c838d01613f51565b909650945060808b01359150808211156144a557600080fd5b506144b28b828c01613f51565b999c989b5096995094979396929594505050565b600080602083850312156144d957600080fd5b82356001600160401b038111156144ef57600080fd5b6142ca85828601613f51565b600080600080600080600080600080600060e08c8e03121561451c57600080fd5b6145258c613ef9565b9a506001600160401b038060208e0135111561454057600080fd5b6145508e60208f01358f01613f51565b909b50995060408d013581101561456657600080fd5b6145768e60408f01358f01613f51565b909950975060608d013581101561458c57600080fd5b61459c8e60608f01358f01613f51565b90975095506145ad60808e01613e03565b945060a08d013593508060c08e013511156145c757600080fd5b506145d88d60c08e01358e01613e58565b81935080925050509295989b509295989b9093969950565b6000806000806000806000806000806000806101008d8f03121561461357600080fd5b61461c8d613ef9565b9b506001600160401b0360208e0135111561463657600080fd5b6146468e60208f01358f01613f51565b909b5099506001600160401b0360408e0135111561466357600080fd5b6146738e60408f01358f01613f51565b90995097506001600160401b0360608e0135111561469057600080fd5b6146a08e60608f01358f01613f51565b90975095506146b160808e01613e03565b94506146bf60a08e01613ef9565b935060c08d013592506001600160401b0360e08e013511156146e057600080fd5b6146f08e60e08f01358f01613e58565b81935080925050509295989b509295989b509295989b565b6000806040838503121561471b57600080fd5b823561472681613ee4565b91506020830135613f2981613ee4565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b60006020828403121561477d57600080fd5b81516137e081613dee565b60208082526023908201527f4d696e74696e674d616e616765723a20544f4b454e5f4e4f545f455850495241604082015262424c4560e81b606082015260800190565b60208082526010908201526f14185d5cd8589b194e8814105554d15160821b604082015260600190565b60006148036141e484614179565b80848252602080830192508560051b85013681111561482157600080fd5b855b818110156148b35780356001600160401b03808211156148435760008081fd5b90880190601f36818401126148585760008081fd5b82358281111561486a5761486a614133565b61487b818301601f19168801614149565b9250808352368782860101111561489457600091508182fd5b8087850188850137600090830187015250865250938201938201614823565b50919695505050505050565b60208082526024908201527f4d696e74696e674d616e616765723a2043414c4c45525f49535f4e4f545f4d49604082015263272a22a960e11b606082015260800190565b60006020828403121561491557600080fd5b81516137e081613f95565b6020808252602f908201527f4d696e74696e674d616e616765723a2053454e4445525f49535f4e4f545f415060408201526e282927ab22a22fa7a92fa7aba722a960891b606082015260800190565b60208082526025908201527f4d696e74696e674d616e616765723a204c4142454c535f4c454e4754485f42456040820152642627abaf9960d91b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b81810381811115610954576109546149b4565b634e487b7160e01b600052603260045260246000fd5b60208082526026908201527f4d696e74696e674d616e616765723a20535542444f4d41494e535f4e4f545f41604082015265131313d5d15160d21b606082015260800190565b600060018201614a4b57614a4b6149b4565b5060010190565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b60208082526022908201527f4d696e74696e674d616e616765723a20544c445f4e4f545f5245474953544552604082015261115160f21b606082015260800190565b600060208284031215614ad557600080fd5b5051919050565b6b756e732d646576746573742d60a01b81528183600c83013760009101600c01908152919050565b600181811c90821680614b1857607f821691505b602082108103614b3857634e487b7160e01b600052602260045260246000fd5b50919050565b600060208284031215614b5057600080fd5b81516137e081613ee4565b600081518084526020808501808196508360051b8101915082860160005b85811015614ba3578284038952614b91848351614350565b98850198935090840190600101614b79565b5091979650505050505050565b6001600160a01b038616815260a060208201819052600090614bd490830187614b5b565b8281036040840152614be68187614b5b565b90508281036060840152614bfa8186614b5b565b91505082151560808301529695505050505050565b600060018060a01b03808616835260606020840152614c316060840186614350565b9150808416604084015250949350505050565b606081526000614c576060830186614b5b565b8281036020840152614c698186614b5b565b915050826040830152949350505050565b600081614c8957614c896149b4565b506000190190565b60008251614ca381846020870161432c565b9190910192915050565b601f821115610cde57600081815260208120601f850160051c81016020861015614cd45750805b601f850160051c820191505b818110156116a357828155600101614ce0565b81516001600160401b03811115614d0c57614d0c614133565b614d2081614d1a8454614b04565b84614cad565b602080601f831160018114614d555760008415614d3d5750858301515b600019600386901b1c1916600185901b1785556116a3565b600085815260208120601f198616915b82811015614d8457888601518255948401946001909101908401614d65565b5085821015614da25787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b828152604060208201526000614dcb6040830184614350565b949350505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b80820180821115610954576109546149b4565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351614e6981601785016020880161432c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351614e9a81602884016020880161432c565b01602801949350505050565b8082028115828204841417610954576109546149b4565b634e487b7160e01b600052602160045260246000fdfe5496787fc1ebdfeba375028c1865f13fbb1d63c0caa356ccc1b29a80f3ebd6229f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000811000a","storage":{}},"0x24f45688d421f46cca60734bdc648ad192db0f2e":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0x1","0x97":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x12d":"0x0","0x15f":"0x5cc819c9915eadfcebd76952b8c1bc36cadd7376","0x13cf90498be59d359caa5b6092b365feab4610605d7107d1f05f8e94ac955652":"0x1","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x54563a9e1cd2dcbd0bca90d3cfa4a647e02c404a","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106102295760003560e01c8063886a69ba11610123578063cf1d21c0116100ab578063e2c49de11161006f578063e2c49de11461091d578063e3dec8fb14610932578063e43009a6146109c8578063e66f9603146109fb578063ea60c7c414610a2557610240565b8063cf1d21c014610844578063d233a3c714610859578063d547741f1461089c578063d81c8e52146108d5578063dc993a23146108ea57610240565b8063a217fddf116100f2578063a217fddf1461078a578063b4b4f63e1461079f578063bc08452b146107b4578063c4d66de8146107e7578063ca15c8731461081a57610240565b8063886a69ba146106c95780639010d07c146106de5780639173b1391461070e57806391d148541461075157610240565b80633138b6f1116101b1578063568b80b511610175578063568b80b5146105fb578063607f2d4214610610578063630fcbfb1461064e5780636cb136b0146106635780636e86b7701461069657610240565b80633138b6f1146104f55780633408e4701461050a57806336568abe1461051f5780633805550f146105585780634faa8a26146105d557610240565b80630f7e5970116101f85780630f7e59701461042357806320379ee514610438578063248a9ca31461045f5780632d0335ab146104895780632f2ff15d146104bc57610240565b806304967702146102455780630c3894bb146102765780630c53c51c146102b15780630c598220146103ea57610240565b366102405761023e610239610a58565b610a68565b005b600080fd5b34801561025157600080fd5b5061025a610b69565b604080516001600160a01b039092168252519081900360200190f35b34801561028257600080fd5b5061023e6004803603604081101561029957600080fd5b506001600160a01b0381358116916020013516610b78565b610375600480360360a08110156102c757600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156102f257600080fd5b82018360208201111561030457600080fd5b8035906020019184600183028401116401000000008311171561032657600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550508235935050506020810135906040013560ff16610cc9565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103af578181015183820152602001610397565b50505050905090810190601f1680156103dc5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156103f657600080fd5b5061023e6004803603604081101561040d57600080fd5b50803590602001356001600160a01b0316610fcc565b34801561042f57600080fd5b506103756110b9565b34801561044457600080fd5b5061044d6110d6565b60408051918252519081900360200190f35b34801561046b57600080fd5b5061044d6004803603602081101561048257600080fd5b50356110dc565b34801561049557600080fd5b5061044d600480360360208110156104ac57600080fd5b50356001600160a01b03166110f4565b3480156104c857600080fd5b5061023e600480360360408110156104df57600080fd5b50803590602001356001600160a01b031661110f565b34801561050157600080fd5b5061025a611176565b34801561051657600080fd5b5061044d611185565b34801561052b57600080fd5b5061023e6004803603604081101561054257600080fd5b50803590602001356001600160a01b0316611189565b34801561056457600080fd5b5061023e6004803603602081101561057b57600080fd5b81019060208101813564010000000081111561059657600080fd5b8201836020820111156105a857600080fd5b803590602001918460018302840111640100000000831117156105ca57600080fd5b5090925090506111ea565b61023e600480360360208110156105eb57600080fd5b50356001600160a01b03166116ec565b34801561060757600080fd5b5061044d6116f8565b34801561061c57600080fd5b5061063a6004803603602081101561063357600080fd5b503561171b565b604080519115158252519081900360200190f35b34801561065a57600080fd5b5061023e611730565b34801561066f57600080fd5b5061023e6004803603602081101561068657600080fd5b50356001600160a01b03166117d6565b3480156106a257600080fd5b5061025a600480360360208110156106b957600080fd5b50356001600160a01b031661186e565b3480156106d557600080fd5b5061044d611889565b3480156106ea57600080fd5b5061025a6004803603604081101561070157600080fd5b50803590602001356118aa565b34801561071a57600080fd5b5061023e6004803603606081101561073157600080fd5b506001600160a01b038135811691602081013590911690604001356118d1565b34801561075d57600080fd5b5061063a6004803603604081101561077457600080fd5b50803590602001356001600160a01b0316611a06565b34801561079657600080fd5b5061044d611a24565b3480156107ab57600080fd5b5061023e611a29565b3480156107c057600080fd5b5061023e600480360360208110156107d757600080fd5b50356001600160a01b0316611acf565b3480156107f357600080fd5b5061023e6004803603602081101561080a57600080fd5b50356001600160a01b0316611b67565b34801561082657600080fd5b5061044d6004803603602081101561083d57600080fd5b5035611c57565b34801561085057600080fd5b5061025a611c6e565b34801561086557600080fd5b5061023e6004803603606081101561087c57600080fd5b506001600160a01b03813581169160208101359091169060400135611c86565b3480156108a857600080fd5b5061023e600480360360408110156108bf57600080fd5b50803590602001356001600160a01b0316611de8565b3480156108e157600080fd5b5061044d611e41565b3480156108f657600080fd5b5061023e6004803603602081101561090d57600080fd5b50356001600160a01b0316611e60565b34801561092957600080fd5b5061025a611f3d565b34801561093e57600080fd5b5061023e6004803603606081101561095557600080fd5b6001600160a01b03823581169260208101359091169181019060608101604082013564010000000081111561098957600080fd5b82018360208201111561099b57600080fd5b803590602001918460018302840111640100000000831117156109bd57600080fd5b509092509050611f4c565b3480156109d457600080fd5b5061044d600480360360208110156109eb57600080fd5b50356001600160a01b0316611fe9565b348015610a0757600080fd5b5061025a60048036036020811015610a1e57600080fd5b5035611ffb565b348015610a3157600080fd5b5061025a60048036036020811015610a4857600080fd5b50356001600160a01b0316612016565b6000610a62612031565b90505b90565b604080513460208083019190915282518083039091018152908201909152610aa58273eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee8361208e565b7fa1829a9003092132f585b6ccdd167c19fe9774dbdea4260287e8a8e8ca8185d7546000908152600260205260408082205490516001600160a01b039091169034908381818185875af1925050503d8060008114610b1f576040519150601f19603f3d011682016040523d82523d6000602084013e610b24565b606091505b5050905080610b645760405162461bcd60e51b815260040180806020018281038252602781526020018061419d6027913960400191505060405180910390fd5b505050565b6009546001600160a01b031681565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020610ba981610ba4610a58565b611a06565b600a90610c495760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b820191906000526020600020905b815481529060010190602001808311610c1d57829003601f168201915b50509250505060405180910390fd5b506001600160a01b03808416600081815260036020908152604080832080546001600160a01b0319908116909155948716808452600483528184208054909616909555838352600590915280822082905551909291907f9e651a8866fbea043e911d816ec254b0e3c992c06fff32d605e72362d6023bd9908490a4505050565b6060610cd3613e2a565b50604080516060810182526001600160a01b0388166000818152600c602090815290849020548352820152908101869052610d118782878787612508565b610d4c5760405162461bcd60e51b81526004018080602001828103825260218152602001806141c46021913960400191505060405180910390fd5b6001600160a01b0387166000908152600c6020526040902054610d7690600163ffffffff6125e516565b6001600160a01b0388166000818152600c602090815260408083209490945583519283523383820181905260609484018581528b51958501959095528a517f5845892132946850460bff5a0083f71031bc5bf9aadcd40f1de79423eac9b10b958d9592948d94919260808501928601918190849084905b83811015610e05578181015183820152602001610ded565b50505050905090810190601f168015610e325780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a160006060306001600160a01b0316888a6040516020018083805190602001908083835b60208310610e835780518252601f199092019160209182019101610e64565b6001836020036101000a038019825116818451168082178552505050505050905001826001600160a01b03166001600160a01b031660601b8152601401925050506040516020818303038152906040526040518082805190602001908083835b60208310610f025780518252601f199092019160209182019101610ee3565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610f64576040519150601f19603f3d011682016040523d82523d6000602084013e610f69565b606091505b509150915081610fc0576040805162461bcd60e51b815260206004820152601c60248201527f46756e6374696f6e2063616c6c206e6f74207375636365737366756c00000000604482015290519081900360640190fd5b98975050505050505050565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020610ff881610ba4610a58565b600a9061105e5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5060008381526002602052604080822080546001600160a01b0319166001600160a01b0386169081179091559051909185917f8643692ae1c12ec91fa18e50b82ed93fa314f580999a236824db6de9ae0d839b9190a3505050565b604051806040016040528060018152602001603160f81b81525081565b600b5490565b6000818152600160205260409020600201545b919050565b6001600160a01b03166000908152600c602052604090205490565b60008281526001602052604090206002015461112d90610ba4610a58565b6111685760405162461bcd60e51b815260040180806020018281038252602f815260200180613f78602f913960400191505060405180910390fd5b611172828261263f565b5050565b6008546001600160a01b031690565b4690565b611191610a58565b6001600160a01b0316816001600160a01b0316146111e05760405162461bcd60e51b815260040180806020018281038252602f815260200180614286602f913960400191505060405180910390fd5b61117282826126ae565b606061123361122e84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061271d92505050565b612798565b905060006112548260028151811061124757fe5b602002602001015161291a565b6112796112748460088151811061126757fe5b6020026020010151612a62565b612b2c565b6112898460098151811061124757fe5b6040516020018084815260200183805190602001908083835b602083106112c15780518252601f1990920191602091820191016112a2565b51815160209384036101000a6000190180199092169116179052920193845250604080518085038152938201815283519382019390932060008181526006909252929020549194505060ff1615915061134d90505760405162461bcd60e51b81526004018080602001828103825260288152602001806142096028913960400191505060405180910390fd5b6000818152600660208190526040909120805460ff19166001179055825160609161138a9161122e9161138591879190811061126757fe5b61271d565b9050611394613e54565b6113b1826003815181106113a457fe5b6020026020010151612798565b6113c18560098151811061124757fe5b815181106113cb57fe5b6020026020010151905060006113fc6113e383612798565b6000815181106113ef57fe5b6020026020010151612c9f565b6001600160a01b0380821660009081526004602052604090205491925016806114565760405162461bcd60e51b81526004018080602001828103825260228152602001806140af6022913960400191505060405180910390fd5b6001600160a01b03808216600090815260056020908152604080832054835260029091529020548751911690611493908890600890811061124757fe5b63ffffffff1916156114d65760405162461bcd60e51b815260040180806020018281038252602581526020018061408a6025913960400191505060405180910390fd5b61151e6114e98860068151811061126757fe5b6114f98960088151811061126757fe5b6115098a60078151811061126757fe5b6115198b60058151811061124757fe5b612d2f565b61156f576040805162461bcd60e51b815260206004820152601f60248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f50524f4f4600604482015290519081900360640190fd5b6115dd6115828860028151811061124757fe5b6115928960038151811061124757fe5b6115a28a60048151811061124757fe5b60001b6115b58b60058151811061124757fe5b60001b6115c88c60008151811061124757fe5b6115d88d60018151811061126757fe5b612f76565b50806001600160a01b0316638274664f6115f5610a58565b846115ff886130bf565b6040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561167b578181015183820152602001611663565b50505050905090810190601f1680156116a85780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b1580156116c957600080fd5b505af11580156116dd573d6000803e3d6000fd5b50505050505050505050505050565b6116f581610a68565b50565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b01902081565b60066020526000908152604090205460ff1681565b600061173e81610ba4610a58565b600a906117a45760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506116f56040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b81525061312d565b60006117e481610ba4610a58565b600a9061184a5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5050600780546001600160a01b0319166001600160a01b0392909216919091179055565b6004602052600090815260409020546001600160a01b031681565b604080516826a0a82faa27a5a2a760b91b8152905190819003600901902081565b60008281526001602052604081206118c8908363ffffffff6131e916565b90505b92915050565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b0190206118fd81610ba4610a58565b600a906119635760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b03848116600090815260036020526040902054161580156119a457506001600160a01b0383811660009081526004602052604090205416155b6119f5576040805162461bcd60e51b815260206004820181905260248201527f526f6f74436861696e4d616e616765723a20414c52454144595f4d4150504544604482015290519081900360640190fd5b611a008484846131f5565b50505050565b60008281526001602052604081206118c8908363ffffffff61348416565b600081565b6000611a3781610ba4610a58565b600a90611a9d5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506116f56040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613499565b6000611add81610ba4610a58565b600a90611b435760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5050600880546001600160a01b0319166001600160a01b0392909216919091179055565b60005460ff1615611bb0576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b611be16040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613537565b611c126040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613499565b611c1d600082611168565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020611c479082611168565b506000805460ff19166001179055565b60008181526001602052604081206118cb90613589565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020611cb281610ba4610a58565b600a90611d185760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b0380851660009081526003602081815260408084205488861685526004835281852054861680865293909252909220549183169290911615611d8e576001600160a01b038116600090815260036020908152604080832080546001600160a01b031916905560059091528120555b6001600160a01b038281166000908152600460205260409020541615611dd5576001600160a01b038216600090815260046020526040902080546001600160a01b03191690555b611de08686866131f5565b505050505050565b600082815260016020526040902060020154611e0690610ba4610a58565b6111e05760405162461bcd60e51b81526004018080602001828103825260308152602001806140f96030913960400191505060405180910390fd5b604080516611115413d4d25560ca1b8152905190819003600701902081565b6000611e6e81610ba4610a58565b600a90611ed45760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b038216611f1a5760405162461bcd60e51b815260040180806020018281038252602d815260200180613fa7602d913960400191505060405180910390fd5b50600980546001600160a01b0319166001600160a01b0392909216919091179055565b6007546001600160a01b031690565b6001600160a01b03831673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee1415611fa85760405162461bcd60e51b81526004018080602001828103825260248152602001806141e56024913960400191505060405180910390fd5b611a00848484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061208e92505050565b60056020526000908152604090205481565b6002602052600090815260409020546001600160a01b031681565b6003602052600090815260409020546001600160a01b031681565b6000333014156120895760606000368080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505050503601516001600160a01b03169150610a659050565b503390565b6001600160a01b03808316600090815260056020908152604080832054600390925290912054909116158015906120c457508015155b6120ff5760405162461bcd60e51b81526004018080602001828103825260228152602001806140af6022913960400191505060405180910390fd5b6000818152600260205260409020546001600160a01b0316806121535760405162461bcd60e51b81526004018080602001828103825260248152602001806140176024913960400191505060405180910390fd5b6001600160a01b0385166121ae576040805162461bcd60e51b815260206004820152601e60248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f555345520000604482015290519081900360640190fd5b806001600160a01b031663e375b64e6121c5610a58565b8787876040518563ffffffff1660e01b815260040180856001600160a01b03166001600160a01b03168152602001846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561225c578181015183820152602001612244565b50505050905090810190601f1680156122895780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b1580156122ab57600080fd5b505af11580156122bf573d6000803e3d6000fd5b50505050606085858560405160200180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015612338578181015183820152602001612320565b50505050905090810190601f1680156123655780820380516001836020036101000a031916815260200191505b5060408051808303601f19018152828252600780546009546611115413d4d25560ca1b865284519586900390920185206020808701828152878701968752855160608901528551959d506001600160a01b039384169c506316f198319b5092909316985096508a955093608001919085019080838360005b838110156123f55781810151838201526020016123dd565b50505050905090810190601f1680156124225780820380516001836020036101000a031916815260200191505b5093505050506040516020818303038152906040526040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561249b578181015183820152602001612483565b50505050905090810190601f1680156124c85780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b1580156124e857600080fd5b505af11580156124fc573d6000803e3d6000fd5b50505050505050505050565b60006001600160a01b03861661254f5760405162461bcd60e51b81526004018080602001828103825260258152602001806141296025913960400191505060405180910390fd5b600161256261255d87613594565b613620565b83868660405160008152602001604052604051808581526020018460ff1660ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa1580156125bc573d6000803e3d6000fd5b505050602060405103516001600160a01b0316866001600160a01b031614905095945050505050565b6000828201838110156118c8576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600082815260016020526040902061265d908263ffffffff61366c16565b156111725761266a610a58565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b60008281526001602052604090206126cc908263ffffffff61368116565b15611172576126d9610a58565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612725613e54565b600082511161277b576040805162461bcd60e51b815260206004820152601f60248201527f524c505265616465723a20494e56414c49445f42595445535f4c454e47544800604482015290519081900360640190fd5b506040805180820190915281518152602082810190820152919050565b60606127a382613696565b6127f4576040805162461bcd60e51b815260206004820152601860248201527f524c505265616465723a204954454d5f4e4f545f4c4953540000000000000000604482015290519081900360640190fd5b60006127ff836136c2565b905060608167ffffffffffffffff8111801561281a57600080fd5b5060405190808252806020026020018201604052801561285457816020015b612841613e54565b8152602001906001900390816128395790505b5090506000612866856020015161374e565b855190915081146128a85760405162461bcd60e51b81526004018080602001828103825260278152602001806142316027913960400191505060405180910390fd5b60006128b786602001516137e2565b60208701510190506000805b8581101561290e576128d48361374e565b91506040518060400160405280838152602001848152508582815181106128f757fe5b6020908102919091010152918101916001016128c3565b50929695505050505050565b600061292582613696565b15612977576040805162461bcd60e51b815260206004820181905260248201527f524c505265616465723a204445434f44494e475f4c4953545f41535f55494e54604482015290519081900360640190fd5b8151602110156129ce576040805162461bcd60e51b815260206004820152601e60248201527f524c505265616465723a20494e56414c49445f55494e545f4c454e4754480000604482015290519081900360640190fd5b60006129dd836020015161374e565b83519091508114612a1f5760405162461bcd60e51b81526004018080602001828103825260278152602001806142b56027913960400191505060405180910390fd5b6000612a2e84602001516137e2565b84516020808701518301805193945091849003929190831015612a5857826020036101000a820491505b5095945050505050565b60606000612a73836020015161374e565b83519091508114612ab55760405162461bcd60e51b81526004018080602001828103825260288152602001806140d16028913960400191505060405180910390fd5b6000612ac484602001516137e2565b845190915081900360608167ffffffffffffffff81118015612ae557600080fd5b506040519080825280601f01601f191660200182016040528015612b10576020820181803683370190505b5090506000816020019050612a58848860200151018285613845565b604080516020810190915260008152815160609190156118cb57600080612b54600086613890565b60f81c90506001811480612b6b57508060ff166003145b15612bfa57600185516002020367ffffffffffffffff81118015612b8e57600080fd5b506040519080825280601f01601f191660200182016040528015612bb9576020820181803683370190505b5092506000612bc9600187613890565b90508084600081518110612bd957fe5b60200101906001600160f81b031916908160001a9053506001925050612c4b565b600285516002020367ffffffffffffffff81118015612c1857600080fd5b506040519080825280601f01601f191660200182016040528015612c43576020820181803683370190505b509250600091505b60ff82165b8351811015612c9657612c6b8360ff16820360020187613890565b848281518110612c7757fe5b60200101906001600160f81b031916908160001a905350600101612c50565b50505092915050565b6000612caa82613696565b15612ce65760405162461bcd60e51b815260040180806020018281038252602381526020018061417a6023913960400191505060405180910390fd5b8151601514612d265760405162461bcd60e51b81526004018080602001828103825260218152602001806142dc6021913960400191505060405180910390fd5b6118cb8261291a565b6000612d39613e54565b612d428461271d565b90506060612d4f82612798565b905060608085600082612d618b612b2c565b9050805160001415612d7d576000975050505050505050612f6e565b60005b8651811015612f65578151831115612da357600098505050505050505050612f6e565b612dbf878281518110612db257fe5b60200260200101516130bf565b955085805190602001208414612de057600098505050505050505050612f6e565b612def8782815181106113a457fe5b9450845160111415612eac578151831415612e4b578c80519060200120612e1c8660108151811061126757fe5b805190602001201415612e3a57600198505050505050505050612f6e565b600098505050505050505050612f6e565b6000828481518110612e5957fe5b016020015160f81c90506010811115612e7e5760009950505050505050505050612f6e565b612e9d868260ff1681518110612e9057fe5b60200260200101516138ed565b94505060019290920191612f5d565b845160021415612e3a576000612ed2612ecb8760008151811061126757fe5b848661398c565b905082518185011415612f28578d80519060200120612ef78760018151811061126757fe5b805190602001201415612f165760019950505050505050505050612f6e565b60009950505050505050505050612f6e565b80612f3f5760009950505050505050505050612f6e565b8084019350612f5486600181518110612e9057fe5b9450612f5d9050565b600101612d80565b50505050505050505b949350505050565b600854604080516320a9cea560e11b81526004810185905290516000928392839283926001600160a01b0316916341539d4a9160248083019260a0929190829003018186803b158015612fc857600080fd5b505afa158015612fdc573d6000803e3d6000fd5b505050506040513d60a0811015612ff257600080fd5b5080516020820151606090920151909450909250905061306161301b8b8463ffffffff613a6b16565b6040805160208082018f90528183018e9052606082018d905260808083018d90528351808403909101815260a0909201909252805191012090858863ffffffff613aad16565b6130b2576040805162461bcd60e51b815260206004820181905260248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f484541444552604482015290519081900360640190fd5b9998505050505050505050565b606080826000015167ffffffffffffffff811180156130dd57600080fd5b506040519080825280601f01601f191660200182016040528015613108576020820181803683370190505b50905060008160200190506131268460200151828660000151613845565b5092915050565b6040518060800160405280604f815260200161403b604f913980516020918201208251838301206040805180820190915260018152603160f81b930192909252907fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc630613198611185565b604080516020808201979097528082019590955260608501939093526001600160a01b03909116608084015260a0808401919091528151808403909101815260c090920190528051910120600b5550565b60006118c88383613c03565b6000818152600260205260409020546001600160a01b03166132485760405162461bcd60e51b815260040180806020018281038252602a815260200180613f07602a913960400191505060405180910390fd5b6001600160a01b03808416600081815260036020908152604080832080549588166001600160a01b031996871681179091558084526004835281842080549096168517909555838352600590915280822085905551849392917f9e651a8866fbea043e911d816ec254b0e3c992c06fff32d605e72362d6023bd991a4604080516001600160a01b0380861660208084019190915281861683850152606083810186905284518085038201815260808086018088526007546009546826a0a82faa27a5a2a760b91b9092528851978890036089018820888701818152898b019a8b528551968a019690965284519499918816986316f1983198939093169690958a9590949293909201919085019080838360005b8381101561337357818101518382015260200161335b565b50505050905090810190601f1680156133a05780820380516001836020036101000a031916815260200191505b5093505050506040516020818303038152906040526040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015613419578181015183820152602001613401565b50505050905090810190601f1680156134465780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b15801561346657600080fd5b505af115801561347a573d6000803e3d6000fd5b5050505050505050565b60006118c8836001600160a01b038416613c67565b806040516020018082805190602001908083835b602083106134cc5780518252601f1990920191602091820191016134ad565b51815160209384036101000a60001901801990921691161790527f3a20494e53554646494349454e545f5045524d495353494f4e530000000000009190930190815260408051808303600519018152601a909201905280516111729550600a94509201919050613e6e565b60005460ff1615613580576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b611c478161312d565b60006118cb82613c7f565b6000604051806080016040528060438152602001613fd460439139805190602001208260000151836020015184604001518051906020012060405160200180858152602001848152602001836001600160a01b03166001600160a01b03168152602001828152602001945050505050604051602081830303815290604052805190602001209050919050565b600061362a6110d6565b82604051602001808061190160f01b81525060020183815260200182815260200192505050604051602081830303815290604052805190602001209050919050565b60006118c8836001600160a01b038416613c83565b60006118c8836001600160a01b038416613ccd565b6020810151805160009190821a9060c08210156136b8576000925050506110ef565b5060019392505050565b6000806000905060006136d884602001516137e2565b602085015185519181019250015b80821015613745576136f78261374e565b820191508082111561373a5760405162461bcd60e51b815260040180806020018281038252602c81526020018061414e602c913960400191505060405180910390fd5b6001909201916136e6565b50909392505050565b80516000908190811a60808110156137695760019150613126565b60b881101561377e57607e1981019150613126565b60c08110156137ab5760b78103600185019450806020036101000a85510460018201810193505050613126565b60f88110156137c05760be1981019150613126565b60019390930151602084900360f7016101000a900490920160f5190192915050565b8051600090811a60808110156137fc5760009150506110ef565b60b8811080613817575060c08110801590613817575060f881105b156138265760019150506110ef565b60c081101561383a5760b5190190506110ef565b60f5190190506110ef565b8061384f57610b64565b5b6020811061386f578251825260209283019290910190601f1901613850565b915181516020939093036101000a6000190180199091169216919091179052565b600060028306156138c15760108260028504815181106138ac57fe5b016020015160f81c816138bb57fe5b066138e3565b60108260028504815181106138d257fe5b016020015160f81c816138e157fe5b045b60f81b9392505050565b6000806138fd836020015161374e565b8351909150811461393f5760405162461bcd60e51b815260040180806020018281038252602e815260200180614258602e913960400191505060405180910390fd5b825160211461397f5760405162461bcd60e51b8152600401808060200182810382526025815260200180613f536025913960400191505060405180910390fd5b5050602001516001015190565b600080606061399a86612b2c565b90506060815167ffffffffffffffff811180156139b657600080fd5b506040519080825280601f01601f1916602001820160405280156139e1576020820181803683370190505b509050845b82518601811015613a3b5760008782815181106139ff57fe5b602001015160f81c60f81b9050808388840381518110613a1b57fe5b60200101906001600160f81b031916908160001a905350506001016139e6565b50808051906020012082805190602001201415613a5b5781519250613a60565b600092505b509095945050505050565b60006118c883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250613d93565b60006020825181613aba57fe5b0615613b04576040805162461bcd60e51b8152602060048201526014602482015273092dcecc2d8d2c840e0e4dedecc40d8cadccee8d60631b604482015290519081900360640190fd5b60006020835181613b1157fe5b0490508060020a8510613b63576040805162461bcd60e51b81526020600482015260156024820152744c65616620696e64657820697320746f6f2062696760581b604482015290519081900360640190fd5b60008660205b85518111613bf55785810151925060028806613bb55781836040516020018083815260200182815260200192505050604051602081830303815290604052805190602001209150613be7565b828260405160200180838152602001828152602001925050506040516020818303038152906040528051906020012091505b600288049750602001613b69565b509094149695505050505050565b81546000908210613c455760405162461bcd60e51b8152600401808060200182810382526022815260200180613f316022913960400191505060405180910390fd5b826000018281548110613c5457fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000613c8f8383613c67565b613cc5575081546001818101845560008481526020808220909301849055845484825282860190935260409020919091556118cb565b5060006118cb565b60008181526001830160205260408120548015613d895783546000198083019190810190600090879083908110613d0057fe5b9060005260206000200154905080876000018481548110613d1d57fe5b600091825260208083209091019290925582815260018981019092526040902090840190558654879080613d4d57fe5b600190038181906000526020600020016000905590558660010160008781526020019081526020016000206000905560019450505050506118cb565b60009150506118cb565b60008184841115613e225760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015613de7578181015183820152602001613dcf565b50505050905090810190601f168015613e145780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60405180606001604052806000815260200160006001600160a01b03168152602001606081525090565b604051806040016040528060008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10613eaf57805160ff1916838001178555613edc565b82800160010185558215613edc579182015b82811115613edc578251825591602001919060010190613ec1565b50613ee8929150613eec565b5090565b610a6591905b80821115613ee85760008155600101613ef256fe526f6f74436861696e4d616e616765723a20544f4b454e5f545950455f4e4f545f535550504f52544544456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473524c505265616465723a20494e56414c49445f55494e545f5354524943545f4c454e475448416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e74526f6f74436861696e4d616e616765723a20494e56414c49445f4348494c445f434841494e5f414444524553534d6574615472616e73616374696f6e2875696e74323536206e6f6e63652c616464726573732066726f6d2c62797465732066756e6374696f6e5369676e617475726529526f6f74436861696e4d616e616765723a20494e56414c49445f544f4b454e5f54595045454950373132446f6d61696e28737472696e67206e616d652c737472696e672076657273696f6e2c6164647265737320766572696679696e67436f6e74726163742c627974657333322073616c7429526f6f74436861696e4d616e616765723a20494e56414c49445f4252414e43485f4d41534b526f6f74436861696e4d616e616765723a20544f4b454e5f4e4f545f4d4150504544524c505265616465723a2042595445535f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b654e61746976654d6574615472616e73616374696f6e3a20494e56414c49445f5349474e4552524c505265616465723a204e554d5f4954454d535f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a204445434f44494e475f4c4953545f41535f41444452455353526f6f74436861696e4d616e616765723a2045544845525f5452414e534645525f4641494c45445369676e657220616e64207369676e617475726520646f206e6f74206d61746368526f6f74436861696e4d616e616765723a20494e56414c49445f524f4f545f544f4b454e526f6f74436861696e4d616e616765723a20455849545f414c52454144595f50524f434553534544524c505265616465723a204c4953545f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a2055494e545f5354524943545f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66524c505265616465723a2055494e545f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a20494e56414c49445f414444524553535f4c454e475448a164736f6c6343000606000a","storage":{"0x0":"0x1","0x7":"0xe0afc4e9e03e4aa67257df7a2eca77454309789d","0x8":"0xbe5deac45dd1ca4ee18dc2d585d84d3d3cb82b0d","0x9":"0x0","0xa":"0x55","0xb":"0x2603903cfd8895fdde3da4d607d44203e86098073e351022fd12745d3436e93a","0xeb5be412f275a18f6e4d622aee4ff40b21467c926224771b782d4c095d1444b":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x162b27a30e878e20728deaa5c9814fd57ccf962b998b8733ce65749bc61c552f":"0x58a175bebc8ec21a94ea63aa5a28743945940ee6","0x1a93463c7bbb7215968307c7cd357c2009c10df2a511dd62c1189098e4f3249b":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x415fec6a4fd7706b96d3a0a30121284bc5e2b28b978c20486c9f5e20d44fc781":"0x1","0x4dc1f0160d96279adc262db20edcc15527e32cb28eda582becc5ac0bc453be34":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x5fc73aa2ab567caef8745f0709fae506c01972ffb297bd9225bc262d6e87746f":"0x1","0x6ce1cd05966f090b8daa7b2ee7f80930bbb39d19b693045725fbae5fa44fda90":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0xa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb49":"0x1","0xc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a8":"0x526f6f74436861696e4d616e616765723a20494e53554646494349454e545f50","0xc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a9":"0x45524d495353494f4e5300000000000000000000000000000000000000000000","0xd61ba0007bb57e62613f82f528c06ba46d36349cf5be567b12f878ef04849a7d":"0x1","0xf960df71fab73e593428c10f56f55e7ea46985963177def0458b97f1afec9576":"0xcf4e755f204163e9213ba8b1305036e386579ccc70731c25c62a101197811f48"}},"0x287dee389caaa49edc112888f2bcfd927b472e25":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c80634f89059e1461002d575b5f80fd5b61004061003b366004610125565b610054565b604051901515815260200160405180910390f35b5f806100985f85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101029050565b60ff1690505f811180156100f857506100f36100b5826001610191565b85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101029050565b60ff16155b9150505b92915050565b5f828281518110610115576101156101b0565b016020015160f81c905092915050565b5f8060208385031215610136575f80fd5b823567ffffffffffffffff8082111561014d575f80fd5b818501915085601f830112610160575f80fd5b81358181111561016e575f80fd5b86602082850101111561017f575f80fd5b60209290920196919550909350505050565b808201808211156100fc57634e487b7160e01b5f52601160045260245ffd5b634e487b7160e01b5f52603260045260245ffdfea164736f6c6343000818000a","storage":{}},"0x3198fc981626687f4b5bdf0fbeabb0a5e0489c03":{"nonce":1,"balance":"0x8ac7230489e80000","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0x1","0x97":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x13cf90498be59d359caa5b6092b365feab4610605d7107d1f05f8e94ac955652":"0x1","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xc2110388dd54228ae0a834119457ede938bf0b57","0x412386de53449251cbf7ce1f4c6a038bf9c0746e62d331b08ef0c3fa7d0ab672":"0x4fbf7b2f171336958be5d15ff762a5cff5363568","0x60793a5062d506d35cc8f1beda67ee5028c16bfcd9c923d5bfc439c04bd929b1":"0x6ac8f19d1e0f81147cdf2a1e53cb1f4e18417204","0x75df8b43665bf2e4996a686913c4c278ca7aed85444740ca40355b1c9a94b504":"0x1","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xf851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004":"0xc965345edac823d56812cd20a10316233916a605"}},"0x39a27956b78d00a4e00ea8833ff0947410a2933f":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xc9":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0xca":"0x4a3c194eb88966178bfdd81744dddafed611b830","0xcb":"0x4872cc1be60a9db9c880a0a437da7a6af134f08f","0xcc":"0xf8c26340c1eaea6c7ff1760b25005e1306953572","0xce":"0xce4bb7dc1eb9dce75743de6a4b48534fd427ef51","0xc6892776bb3da1e1199a03e0d3131aea089754b59c557b750c478ebc85ccaa":"0x6e66740000000000000000000000000000000000000000000000000000000006","0x6cb37a6d512a1e227e627eddc133023e6d00bfedff31a600abb75aa93e9a4a0":"0x6b7265737573000000000000000000000000000000000000000000000000000c","0x8e966fe8b9b43d48017ba1eb562ced91049de778396aaa438773698b3fa8fb6":"0x0","0x94a32b1c7b189ce7293f7ae444cdcab6800d858454022d15355d5ecc5b32b26":"0x0","0xa4b2d73a9f36ca5eed107f7c3d2ba877fb7537d447256726bcde9bac9e9aaee":"0x0","0xe0e3ab102c26f13da20123aa517b31e99cf65b7b720ba0dd7138012fd23eff2":"0x0","0x1203b5e51c7d5be6da42b83f22878d3583e53123857d27fc3cff3df46fb9126c":"0x0","0x13477730039a04f4290adf0e48e98b233579c040281545e4446ce662ba56a9be":"0x7800000000000000000000000000000000000000000000000000000000000002","0x1e06d49ce7b00846691778f302e94a3ac9c2633d745ebe73d68353c941e68dee":"0x626974636f696e0000000000000000000000000000000000000000000000000e","0x1e99199375610ffe00d28ee5827c616cf6469be3de2a2f738d955eb6b62127e8":"0x1","0x21e80eded1b2e1c5d976c85e89dde60bd4e99a8d66346af0e359ac854bceba44":"0x0","0x254d9ade81439f29723741d6ff407eab1fe03caffb042bd85e53955e41fb9792":"0x616c74696d697374000000000000000000000000000000000000000000000010","0x269db12b2cd2aeb7d5f52eda16edb1d211ccbea12da1ebfa60ed5f8f396c1d04":"0x0","0x2a3f03435eedee01de7e1c4386b04ca8469edd8df00408cd6d2b058bce1cecfa":"0x0","0x323a3cb169499006d6635c58232c8c58e23c20bf9e1d309d6b3bc6fb2c7a093d":"0x0","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x229c56b7805ab5935a883207f6a6bd5847e65aee","0x37aac864d4715a975bd45cae6be99de9f7968cf995917cc7f8192940fb62acbf":"0x0","0x3f69f26894a7ae0f7a7aa6c2d77935589dabbff6435aee960da15064dea7cd59":"0x64616f0000000000000000000000000000000000000000000000000000000006","0x467a68fda3230ce33f64703ebdbd91caccf235403282ae9fe390675ef39e9c94":"0x0","0x50ae8c017c4c1fddbe9509bd2b916f5dd9da11ddb639f2a4230322f49a41ac87":"0x1","0x5496787fc1ebdfeba375028c1865f13fbb1d63c0caa356ccc1b29a80f3ebd622":"0x0","0x576dd8d1a7b74aba0a99a213f50d74aa642a2c80bd5a854b24aac7568afea0f7":"0x626974676574000000000000000000000000000000000000000000000000000c","0x5b54338c052ce22ec334b6c5a19c4b122701c5fd4d3a2a5f5890f57050e0aafa":"0x626c6f636b636861696e00000000000000000000000000000000000000000014","0x5d9de30f0e5e02628e726fd23e310ee9e64489866fa6959825148a25d40e4c83":"0x0","0x5e2d99ab4a1a153039a4b2e068d64802da8735071a2d018ee9d04297945bed00":"0x0","0x670006c4193123492fb25db465ed52e62aff2f076289f4f1a5f167237f5e579d":"0x6d616e676100000000000000000000000000000000000000000000000000000a","0x6deac161c541001c0d79afaf7b809418785fa5ca6533d86bcf312e7213ee08fc":"0x0","0x6eaa0db35203bc0d58aff54ca630dd125b27758aa6204f7a11c0617f7c2fa776":"0x706f670000000000000000000000000000000000000000000000000000000006","0x732abe4661f55132b7f119cab9a9985be6630299dfc92870cc910f147795bc44":"0x0","0x743eb517f46c12bb593097087a972028308ce2e819a76cfb5488751f9d1ca34a":"0x7265616c6d00000000000000000000000000000000000000000000000000000a","0x750dfb39c9afc828c341e1a8e8fdca0b3914baf43303e1ef21fbfe8ec8ee016a":"0x0","0x7cbf647b96a1d1a533ea4bc3a4a8a78f166bd91e6a96afb12f063fef0e9cb960":"0x0","0x7dc972254779cfb51850c0eaccfcb71207822b3c10d4840567bec3dfbf0dff13":"0x636f6d0000000000000000000000000000000000000000000000000000000006","0x7dfa160584f41570c33e8e6c42c5314a7b45ddc162f99fd101ccc10c7b5b3dd3":"0x77616c6c6574000000000000000000000000000000000000000000000000000c","0x868a5f38a2d46181ffad442d7bc5b337b3c349a58e4979f2901786c6123b996c":"0x6b6c65766572000000000000000000000000000000000000000000000000000c","0x87b2c647061aef22ef1aba96c67f440d471dfac27e9873ff4a03793b402d32ee":"0x706f6c79676f6e0000000000000000000000000000000000000000000000000e","0x893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e":"0x7c3c91245769c8b7450ad522792dec4bd4bf797f","0x91e744007b4b3621bec7c01ea851c3f48cf196b9cc6c566a48cec8c5faac6e62":"0x0","0x92c5a28dd4caaa50e0a8370243a5c600f64349e8b03604b403cbe111b50f1f7b":"0x3838380000000000000000000000000000000000000000000000000000000006","0x947936973a3a21b10c8980e1a8939a55c7339d302161884a3de05cf090e812f0":"0x1","0x9535d3ea47c5e1398d3405b4fadc73de6b1b1e6a66f674a8886ab7a6c873a390":"0x63727970746f000000000000000000000000000000000000000000000000000c","0x9956a4e94676c45844be3667f17e077c7cb53aa4e87e5a71d65e56b291232715":"0x676f000000000000000000000000000000000000000000000000000000000004","0x9c6ba1ddff1ffbc14dcdc1f97db867554a42a39e00e892c7e882dbb3dca89ebf":"0x6869000000000000000000000000000000000000000000000000000000000004","0x9f836a0f81651f597cee678b440ba8c853c633e6654809efb83d4b22aff06fb2":"0x616e696d6500000000000000000000000000000000000000000000000000000a","0x9fecf1e12f4b8ec337da992721a0f27526ddbd6be1e77885ab963c09afcf0fc1":"0x0","0xab129a0f8c6cf8d160116a28abc7369c2f8a098fc023f00f07dc3e1d5798e47a":"0x0","0xb04c0eb6f034d9a3179a4e6f953bdf8afc78ba2cdcfbc775076e1c2a0bb67818":"0x0","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xbe51b53bc2060a7a6419622b5a9adc00b50a57e6aa741882f2f60f95d4580078":"0x636c617900000000000000000000000000000000000000000000000000000008","0xbf350522e335b8ab3da1d099c93cdc09179f1e15ea6aa1acfaa4afb1ef87eabf":"0x756e73746f707061626c65000000000000000000000000000000000000000016","0xcbf7a3d53e0851ac15a415b99c2ba95a2497dd9dd44068ac261bcbdafdfe8472":"0x707564677900000000000000000000000000000000000000000000000000000a","0xcf4411216f3fdf787d1cfe037bbcfa0d5293d83a8082f8e4141266399e2a784b":"0x61757374696e000000000000000000000000000000000000000000000000000c","0xcfdbac664139565f92cce149a345e5f19355d25b3eb8a70c549d5da3283a15b8":"0x7a696c0000000000000000000000000000000000000000000000000000000006","0xcfeb64c30a93ecd7224f854b09be57bb6b3962e739fa8e3ea3a1851502474c07":"0x1","0xe03c9c593ce8661bd39f77653f7ca6c43f093aa7f3b95890f309f67b57f39e74":"0x0","0xe50c62c16d12655dfdbd61c232155e5c3a1cf61977d2d8e7449cb88611b73832":"0x0","0xeeb0b17d77f2c9069ad443f3927c0802d98d5553e52b17c985d45d4a10b79566":"0x62696e616e636575730000000000000000000000000000000000000000000012","0xf562ef0db022f25a957fb6e49aa07004f14a50ed5b23279e9ac25b4632f7bf1c":"0x0","0xf6776268d6c5847a771099280c742d684a4b22bac609ba615de51f7f893ff2bc":"0x0"}},"0x3f1194b9019002863ad0dbbe295294547c0d36a9":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100b1575f3560e01c80635b0fc9c31161006e5780635b0fc9c3146101a55780635ef2c7f0146101b8578063a22cb465146101cb578063cf408823146101de578063e985e9c5146101f1578063f79fe5381461023c575f80fd5b80630178b8bf146100b557806302571be3146100fd57806306ab59231461011057806314ab90381461013157806316a25cbd146101465780631896f70a14610192575b5f80fd5b6100e06100c3366004610785565b5f908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100e061010b366004610785565b610266565b61012361011e3660046107b7565b610292565b6040519081526020016100f4565b61014461013f366004610800565b61035f565b005b610179610154366004610785565b5f90815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100f4565b6101446101a036600461082a565b61042e565b6101446101b336600461082a565b6104ef565b6101446101c636600461084b565b61058e565b6101446101d936600461089e565b6105af565b6101446101ec3660046108d7565b61061a565b61022c6101ff366004610921565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205460ff1690565b60405190151581526020016100f4565b61022c61024a366004610785565b5f908152602081905260409020546001600160a01b0316151590565b5f818152602081905260408120546001600160a01b031630810361028c57505f92915050565b92915050565b5f8381526020819052604081205484906001600160a01b0316338114806102db57506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b6102e3575f80fd5b604080516020808201899052818301889052825180830384018152606090920190925280519101206103158186610635565b6040516001600160a01b0386168152869088907fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829060200160405180910390a39695505050505050565b5f8281526020819052604090205482906001600160a01b0316338114806103a857506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b6103b0575f80fd5b60405167ffffffffffffffff8416815284907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a250505f91825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b5f8281526020819052604090205482906001600160a01b03163381148061047757506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b61047f575f80fd5b6040516001600160a01b038416815284907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a250505f9182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b5f8281526020819052604090205482906001600160a01b03163381148061053857506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b610540575f80fd5b61054a8484610635565b6040516001600160a01b038416815284907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a250505050565b5f61059a868686610292565b90506105a7818484610662565b505050505050565b335f8181526001602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b61062484846104ef565b61062f848383610662565b50505050565b5f9182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b5f838152602081905260409020600101546001600160a01b038381169116146106e6575f838152602081815260409182902060010180546001600160a01b0319166001600160a01b038616908117909155915191825284917f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a0910160405180910390a25b5f8381526020819052604090206001015467ffffffffffffffff828116600160a01b9092041614610780575f8381526020818152604091829020600101805467ffffffffffffffff60a01b1916600160a01b67ffffffffffffffff861690810291909117909155915191825284917f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa68910160405180910390a25b505050565b5f60208284031215610795575f80fd5b5035919050565b80356001600160a01b03811681146107b2575f80fd5b919050565b5f805f606084860312156107c9575f80fd5b83359250602084013591506107e06040850161079c565b90509250925092565b803567ffffffffffffffff811681146107b2575f80fd5b5f8060408385031215610811575f80fd5b82359150610821602084016107e9565b90509250929050565b5f806040838503121561083b575f80fd5b823591506108216020840161079c565b5f805f805f60a0868803121561085f575f80fd5b85359450602086013593506108766040870161079c565b92506108846060870161079c565b9150610892608087016107e9565b90509295509295909350565b5f80604083850312156108af575f80fd5b6108b88361079c565b9150602083013580151581146108cc575f80fd5b809150509250929050565b5f805f80608085870312156108ea575f80fd5b843593506108fa6020860161079c565b92506109086040860161079c565b9150610916606086016107e9565b905092959194509250565b5f8060408385031215610932575f80fd5b61093b8361079c565b91506108216020840161079c56fea164736f6c6343000818000a","storage":{"0xdd4f47a3b6f87903b728feed7a23273bd8de58e4fa257d37a74a5881e5d92ff":"0xf670681605efc4efc804f5a9b97ee89520473d56","0x14ce109f1cffdc11aa7355660be720f902291be09fb159b4c578958cd0f533bc":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x14ce109f1cffdc11aa7355660be720f902291be09fb159b4c578958cd0f533bd":"0x0","0x1e2c8528d7e8e90443ad0a4e37b6f2b1daed719a574ce3a0c347063e8d839d50":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1e2c8528d7e8e90443ad0a4e37b6f2b1daed719a574ce3a0c347063e8d839d51":"0x0","0x2fb4213711fd985fc1fb1ea2bfa660b0b37fd50c6c74ab531d9b54b29dd5177e":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2fb4213711fd985fc1fb1ea2bfa660b0b37fd50c6c74ab531d9b54b29dd5177f":"0x0","0x859ecef2e168dc10231b000bd53493b42bc9d944cac29d94582c1e1d43592131":"0xc965345edac823d56812cd20a10316233916a605","0x8878c6daefcfc78c7f181d00d719b4a0612dd3e65cafeb72507d15c036a9f690":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0xe4fdf45c2f8d198854f8823809c7a988eeaaa493","0xfb5568c6845cf0d5915af088a5d8ba90a5ff735e102c9a79609ef7d043f1108c":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xfb5568c6845cf0d5915af088a5d8ba90a5ff735e102c9a79609ef7d043f1108d":"0x0"}},"0x4872cc1be60a9db9c880a0a437da7a6af134f08f":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100935760003560e01c80637362d9c8116100665780637362d9c8146101285780637b1039991461014e57806399e0dd7c14610172578063bb5f747b146101e2578063d6cd94731461020857610093565b806310154bad14610098578063291d9549146100c05780633af32abf146100e65780634c5a628c14610120575b600080fd5b6100be600480360360208110156100ae57600080fd5b50356001600160a01b0316610210565b005b6100be600480360360208110156100d657600080fd5b50356001600160a01b0316610260565b61010c600480360360208110156100fc57600080fd5b50356001600160a01b03166102ad565b604080519115158252519081900360200190f35b6100be6102c6565b6100be6004803603602081101561013e57600080fd5b50356001600160a01b03166102d1565b61015661031e565b604080516001600160a01b039092168252519081900360200190f35b6100be6004803603602081101561018857600080fd5b8101906020810181356401000000008111156101a357600080fd5b8201836020820111156101b557600080fd5b803590602001918460018302840111640100000000831117156101d757600080fd5b50909250905061032d565b61010c600480360360208110156101f857600080fd5b50356001600160a01b0316610404565b6100be610416565b61021933610404565b6102545760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d8161041f565b50565b61026933610404565b6102a45760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d81610467565b60006102c060018363ffffffff6104af16565b92915050565b6102cf33610516565b565b6102da33610404565b6103155760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d8161055e565b6002546001600160a01b031690565b610336336102ad565b6103715760405162461bcd60e51b815260040180806020018281038252603a815260200180610712603a913960400191505060405180910390fd5b6002546040516369426cbd60e11b8152602060048201908152602482018490526001600160a01b039092169163d284d97a91859185918190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b1580156103e857600080fd5b505af11580156103fc573d6000803e3d6000fd5b505050505050565b60006102c0818363ffffffff6104af16565b6102cf33610467565b61043060018263ffffffff6105a616565b6040516001600160a01b038216907fee1504a83b6d4a361f4c1dc78ab59bfa30d6a3b6612c403e86bb01ef2984295f90600090a250565b61047860018263ffffffff61062716565b6040516001600160a01b038216907f270d9b30cf5b0793bbfd54c9d5b94aeb49462b8148399000265144a8722da6b690600090a250565b60006001600160a01b0382166104f65760405162461bcd60e51b81526004018080602001828103825260228152602001806106b06022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b61052760008263ffffffff61062716565b6040516001600160a01b038216907f0a8eb35e5ca14b3d6f28e4abf2f128dbab231a58b56e89beb5d636115001e16590600090a250565b61056f60008263ffffffff6105a616565b6040516001600160a01b038216907f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129990600090a250565b6105b082826104af565b15610602576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b61063182826104af565b61066c5760405162461bcd60e51b815260040180806020018281038252602181526020018061068f6021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f206164647265737357686974656c69737441646d696e526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c69737441646d696e20726f6c6557686974656c6973746564526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c697374656420726f6c65a265627a7a72315820debca60946c0819dc5b5c2756c5c1dd8dd8a46f2429fa8a43a4f4362af3030c164736f6c634300050c0032","storage":{"0x2":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x5ac40fcee41fb0272a935f6e51e963102fba5db6f20e897e9361f0347eb2cae6":"0x1","0xdc4aeb95a779c8b92b845e3a94044db8ff2e43acc37da18c4b35a6bbad7c122f":"0x1"}},"0x49da8861c65460639925febe1fb4b5b59b443082":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f7e83aee1461002d575b5f80fd5b61004061003b3660046101ac565b610054565b604051901515815260200160405180910390f35b5f602082146100a95760405162461bcd60e51b815260206004820152601a60248201527f496e76616c6964207368613235362068617368206c656e677468000000000000604482015260640160405180910390fd5b6100eb5f84848080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101459050565b600286866040516100fd929190610213565b602060405180830381855afa158015610118573d5f803e3d5ffd5b5050506040513d601f19601f8201168201806040525081019061013b9190610222565b1495945050505050565b81515f90610154836020610239565b111561015e575f80fd5b50016020015190565b5f8083601f840112610177575f80fd5b50813567ffffffffffffffff81111561018e575f80fd5b6020830191508360208285010111156101a5575f80fd5b9250929050565b5f805f80604085870312156101bf575f80fd5b843567ffffffffffffffff808211156101d6575f80fd5b6101e288838901610167565b909650945060208701359150808211156101fa575f80fd5b5061020787828801610167565b95989497509550505050565b818382375f9101908152919050565b5f60208284031215610232575f80fd5b5051919050565b8082018082111561025857634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x4a3c194eb88966178bfdd81744dddafed611b830":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061009e5760003560e01c806398650275116100665780639865027514610305578063aa271e1a1461030d578063b2da297914610347578063be362e2e146103c5578063c36c2125146104fe5761009e565b80634c0b0ed2146100a35780637b103999146101595780637caf3ad81461017d5780638ad364f814610258578063983b2d56146102df575b600080fd5b610157600480360360408110156100b957600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156100e357600080fd5b8201836020820111156100f557600080fd5b803590602001918460018302840111600160201b8311171561011657600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506105bd945050505050565b005b61016161074c565b604080516001600160a01b039092168252519081900360200190f35b6101576004803603608081101561019357600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156101bd57600080fd5b8201836020820111156101cf57600080fd5b803590602001918460018302840111600160201b831117156101f057600080fd5b919390926001600160a01b0383351692604081019060200135600160201b81111561021a57600080fd5b82018360208201111561022c57600080fd5b803590602001918460018302840111600160201b8311171561024d57600080fd5b50909250905061075b565b6101576004803603606081101561026e57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561029857600080fd5b8201836020820111156102aa57600080fd5b803590602001918460018302840111600160201b831117156102cb57600080fd5b9193509150356001600160a01b0316610957565b610157600480360360208110156102f557600080fd5b50356001600160a01b0316610b2b565b610157610b7b565b6103336004803603602081101561032357600080fd5b50356001600160a01b0316610b86565b604080519115158252519081900360200190f35b6101576004803603604081101561035d57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561038757600080fd5b82018360208201111561039957600080fd5b803590602001918460018302840111600160201b831117156103ba57600080fd5b509092509050610b9e565b610157600480360360608110156103db57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561040557600080fd5b82018360208201111561041757600080fd5b803590602001918460018302840111600160201b8311171561043857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b81111561048a57600080fd5b82018360208201111561049c57600080fd5b803590602001918460018302840111600160201b831117156104bd57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610bf1945050505050565b6101576004803603606081101561051457600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561053e57600080fd5b82018360208201111561055057600080fd5b803590602001918460018302840111600160201b8311171561057157600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550505090356001600160a01b03169150610dec9050565b6105c633610b86565b6106015760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b039092169163b5466669918591849163ebf0c717916004808301926020929190829003018186803b15801561064f57600080fd5b505afa158015610663573d6000803e3d6000fd5b505050506040513d602081101561067957600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052606060448301908152875160648401528751889360840190602085019080838360005b838110156106e25781810151838201526020016106ca565b50505050905090810190601f16801561070f5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15801561073057600080fd5b505af1158015610744573d6000803e3d6000fd5b505050505050565b6001546001600160a01b031690565b6107cf8686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f89018190048102820181019092528781529250879150869081908401838280828437600092019190915250610bf192505050565b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691632525d06a91869184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b15801561082557600080fd5b505afa158015610839573d6000803e3d6000fd5b505050506040513d602081101561084f57600080fd5b5051604080516001600160e01b031960e085901b1681526004810183815260248201928352604482018d90528d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b1580156108bd57600080fd5b505afa1580156108d1573d6000803e3d6000fd5b505050506040513d60208110156108e757600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b15801561093757600080fd5b505af115801561094b573d6000803e3d6000fd5b50505050505050505050565b6109a58484848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250610bf1915050565b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691632525d06a91849184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b1580156109fb57600080fd5b505afa158015610a0f573d6000803e3d6000fd5b505050506040513d6020811015610a2557600080fd5b5051604080516001600160e01b031960e085901b1681526004810183815260248201928352604482018b90528b928b92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b158015610a9357600080fd5b505afa158015610aa7573d6000803e3d6000fd5b505050506040513d6020811015610abd57600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b158015610b0d57600080fd5b505af1158015610b21573d6000803e3d6000fd5b5050505050505050565b610b3433610b86565b610b6f5760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b610b7881611115565b50565b610b843361115d565b565b6000610b98818363ffffffff6111a516565b92915050565b610bec8383838080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250610bf1915050565b505050565b610bfa33610b86565b610c355760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691630467e014918691849163ebf0c717916004808301926020929190829003018186803b158015610c8357600080fd5b505afa158015610c97573d6000803e3d6000fd5b505050506040513d6020811015610cad57600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052608060448301908152885160848401528851899389939291606482019160a40190602087019080838360005b83811015610d1f578181015183820152602001610d07565b50505050905090810190601f168015610d4c5780820380516001836020036101000a031916815260200191505b50838103825284518152845160209182019186019080838360005b83811015610d7f578181015183820152602001610d67565b50505050905090810190601f168015610dac5780820380516001836020036101000a031916815260200191505b509650505050505050600060405180830381600087803b158015610dcf57600080fd5b505af1158015610de3573d6000803e3d6000fd5b50505050505050565b610df533610b86565b610e305760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b039092169163b5466669918691849163ebf0c717916004808301926020929190829003018186803b158015610e7e57600080fd5b505afa158015610e92573d6000803e3d6000fd5b505050506040513d6020811015610ea857600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052606060448301908152885160648401528851899360840190602085019080838360005b83811015610f11578181015183820152602001610ef9565b50505050905090810190601f168015610f3e5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015610f5f57600080fd5b505af1158015610f73573d6000803e3d6000fd5b50506001546040805163ebf0c71760e01b815290516001600160a01b039092169350632525d06a9250849184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b158015610fcd57600080fd5b505afa158015610fe1573d6000803e3d6000fd5b505050506040513d6020811015610ff757600080fd5b5051604080516001600160e01b031960e085901b16815260048101838152602482019283528a5160448301528a518b93919260640190602085019080838360005b83811015611050578181015183820152602001611038565b50505050905090810190601f16801561107d5780820380516001836020036101000a031916815260200191505b50935050505060206040518083038186803b15801561109b57600080fd5b505afa1580156110af573d6000803e3d6000fd5b505050506040513d60208110156110c557600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b158015610dcf57600080fd5b61112660008263ffffffff61120c16565b6040516001600160a01b038216907f6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f690600090a250565b61116e60008263ffffffff61128d16565b6040516001600160a01b038216907fe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb6669290600090a250565b60006001600160a01b0382166111ec5760405162461bcd60e51b81526004018080602001828103825260228152602001806113466022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b61121682826111a5565b15611268576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b61129782826111a5565b6112d25760405162461bcd60e51b81526004018080602001828103825260218152602001806113256021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe4d696e746572526f6c653a2063616c6c657220646f6573206e6f74206861766520746865204d696e74657220726f6c65526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f2061646472657373a265627a7a72315820c058d70355f7d37ff6b3b61cd850cc4a41893e30048389698c062148bf3d2ff464736f6c634300050c0032","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x789b49055833748af4eaa9affbcd84118ce8770f7e4385b5a3f428626b1f0aff":"0x1","0xdc4aeb95a779c8b92b845e3a94044db8ff2e43acc37da18c4b35a6bbad7c122f":"0x1"}},"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061007b5760003560e01c80639623609d1161004e5780639623609d1461011157806399a88ec414610124578063f2fde38b14610144578063f3b7dead1461016457600080fd5b8063204e1c7a14610080578063715018a6146100bc5780637eff275e146100d35780638da5cb5b146100f3575b600080fd5b34801561008c57600080fd5b506100a061009b366004610499565b610184565b6040516001600160a01b03909116815260200160405180910390f35b3480156100c857600080fd5b506100d1610215565b005b3480156100df57600080fd5b506100d16100ee3660046104bd565b610229565b3480156100ff57600080fd5b506000546001600160a01b03166100a0565b6100d161011f36600461050c565b610291565b34801561013057600080fd5b506100d161013f3660046104bd565b610300565b34801561015057600080fd5b506100d161015f366004610499565b610336565b34801561017057600080fd5b506100a061017f366004610499565b6103b4565b6000806000836001600160a01b03166040516101aa90635c60da1b60e01b815260040190565b600060405180830381855afa9150503d80600081146101e5576040519150601f19603f3d011682016040523d82523d6000602084013e6101ea565b606091505b5091509150816101f957600080fd5b8080602001905181019061020d91906105e2565b949350505050565b61021d6103da565b6102276000610434565b565b6102316103da565b6040516308f2839760e41b81526001600160a01b038281166004830152831690638f283970906024015b600060405180830381600087803b15801561027557600080fd5b505af1158015610289573d6000803e3d6000fd5b505050505050565b6102996103da565b60405163278f794360e11b81526001600160a01b03841690634f1ef2869034906102c990869086906004016105ff565b6000604051808303818588803b1580156102e257600080fd5b505af11580156102f6573d6000803e3d6000fd5b5050505050505050565b6103086103da565b604051631b2ce7f360e11b81526001600160a01b038281166004830152831690633659cfe69060240161025b565b61033e6103da565b6001600160a01b0381166103a85760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b6103b181610434565b50565b6000806000836001600160a01b03166040516101aa906303e1469160e61b815260040190565b6000546001600160a01b031633146102275760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161039f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146103b157600080fd5b6000602082840312156104ab57600080fd5b81356104b681610484565b9392505050565b600080604083850312156104d057600080fd5b82356104db81610484565b915060208301356104eb81610484565b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561052157600080fd5b833561052c81610484565b9250602084013561053c81610484565b9150604084013567ffffffffffffffff8082111561055957600080fd5b818601915086601f83011261056d57600080fd5b81358181111561057f5761057f6104f6565b604051601f8201601f19908116603f011681019083821181831017156105a7576105a76104f6565b816040528281528960208487010111156105c057600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000602082840312156105f457600080fd5b81516104b681610484565b60018060a01b038316815260006020604081840152835180604085015260005b8181101561063b5785810183015185820160600152820161061f565b8181111561064d576000606083870101525b50601f01601f19169290920160600194935050505056fea26469706673582212207ad53e1008cce369999f6b5f2f77109510b404ff1de9b47b639981fd68e6239264736f6c63430008090033","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x4e59b44847b379578588920ca78fbf26c0b4956c":{"nonce":0,"balance":"0x0","code":"0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe03601600081602082378035828234f58015156039578182fd5b8082525050506014600cf3","storage":{}},"0x4eb9de1fc0d800e941f326d6699e9e11969557ea":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063100cdd911461002d575b5f80fd5b61004061003b3660046102cd565b610042565b005b5f5b818110156101b8575f7f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e28484848181106100805761008061033c565b905060200201356040516020016100a1929190918252602082015260400190565b60408051808303601f190181529082905280516020909101206331a9108f60e11b82526004820181905291507f000000000000000000000000107733fed96c4cd390c944a31f5425a7fb98ae5e6001600160a01b0316906323b872dd908290636352211e90602401602060405180830381865afa158015610124573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101489190610350565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015261dead6024820152604481018490526064015f604051808303815f87803b158015610195575f80fd5b505af11580156101a7573d5f803e3d5ffd5b505060019093019250610044915050565b5080156102c9577f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e282826101ed60018261037d565b8181106101fc576101fc61033c565b9050602002013560405160200161021d929190918252602082015260400190565b604051602081830303815290604052805190602001205f1c7f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e283835f8181106102685761026861033c565b90506020020135604051602001610289929190918252602082015260400190565b60408051601f19818403018152908290528051602090910120907fdf423376f9b0ab363b1b4d6f0b4cb6821921ec30f491555a97236a8a38ce095a905f90a35b5050565b5f80602083850312156102de575f80fd5b823567ffffffffffffffff808211156102f5575f80fd5b818501915085601f830112610308575f80fd5b813581811115610316575f80fd5b8660208260051b850101111561032a575f80fd5b60209290920196919550909350505050565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215610360575f80fd5b81516001600160a01b0381168114610376575f80fd5b9392505050565b8181038181111561039c57634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x4fbf7b2f171336958be5d15ff762a5cff5363568":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061011b575f3560e01c80638d839ffe1161009d578063aeb8ce9b11610062578063aeb8ce9b14610356578063ce1e09c014610375578063d3419bf3146103a8578063f14fcbc8146103db578063f2fde38b146103fa575f80fd5b80638d839ffe146102a25780638da5cb5b146102d55780639791c097146102f1578063a8e5fbc014610310578063acf1a84114610343575f80fd5b806374694a2b116100e357806374694a2b146101c957806380869853146101dc578063839df9451461022757806383e7f6ff146102525780638a95b09f1461028c575f80fd5b806301ffc9a71461011f5780633ccfd60b146101535780635d3590d51461016957806365a69dcf14610188578063715018a6146101b5575b5f80fd5b34801561012a575f80fd5b5061013e610139366004611145565b610419565b60405190151581526020015b60405180910390f35b34801561015e575f80fd5b5061016761044f565b005b348015610174575f80fd5b50610167610183366004611187565b610489565b348015610193575f80fd5b506101a76101a23660046112e4565b610507565b60405190815260200161014a565b3480156101c0575f80fd5b5061016761058b565b6101676101d73660046113db565b61059e565b3480156101e7575f80fd5b5061020f7f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5681565b6040516001600160a01b03909116815260200161014a565b348015610232575f80fd5b506101a761024136600461149d565b60016020525f908152604090205481565b34801561025d575f80fd5b5061027161026c3660046114b4565b610894565b6040805182518152602092830151928101929092520161014a565b348015610297575f80fd5b506101a76224ea0081565b3480156102ad575f80fd5b506101a77f000000000000000000000000000000000000000000000000000000000000025881565b3480156102e0575f80fd5b505f546001600160a01b031661020f565b3480156102fc575f80fd5b5061013e61030b3660046114f6565b6109c9565b34801561031b575f80fd5b5061020f7f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e1841720481565b610167610351366004611528565b6109dd565b348015610361575f80fd5b5061013e6103703660046114f6565b610b7b565b348015610380575f80fd5b506101a77f000000000000000000000000000000000000000000000000000000000001518081565b3480156103b3575f80fd5b5061020f7f000000000000000000000000ec71e4e674fe0f432693dc2b935c34bd2774c00381565b3480156103e6575f80fd5b506101676103f536600461149d565b610c22565b348015610405575f80fd5b50610167610414366004611570565b610c95565b5f6001600160e01b031982166301ffc9a760e01b148061044957506001600160e01b0319821663612e8c0960e01b145b92915050565b5f80546040516001600160a01b03909116914780156108fc02929091818181858888f19350505050158015610486573d5f803e3d5ffd5b50565b610491610d0b565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af11580156104dd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105019190611589565b50505050565b885160208a01205f90841580159061052657506001600160a01b038716155b15610544576040516334fd817160e21b815260040160405180910390fd5b808a8a8a8a8a8a8a8a6040516020016105659998979695949392919061165e565b604051602081830303815290604052805190602001209150509998505050505050505050565b610593610d0b565b61059c5f610d64565b565b5f6105df8b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c9250610894915050565b602081015181519192506105f2916116d5565b3410156106125760405163044044a560e21b815260040160405180910390fd5b6106b38b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f82011690508083019250505050505050896106ae8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f820116905080830192505050505050508d8d8d8d8d8d8d8d610507565b610db3565b604051635200a4c160e11b81525f906001600160a01b037f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e18417204169063a40149829061070b908f908f908f908f908e908b906004016116e8565b6020604051808303815f875af1158015610727573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061074b9190611732565b9050841561077657610776878d8d604051610767929190611749565b60405180910390208888610ece565b83156107be576107be8c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508b9250339150610f939050565b896001600160a01b03168c8c6040516107d8929190611749565b60405180910390207f69e37f151eb98a09618ddaa80c8cfaf1ce5996867c489f45b555b412271ebf278e8e865f015187602001518760405161081e959493929190611758565b60405180910390a36020820151825161083791906116d5565b341115610886576020820151825133916108fc9161085591906116d5565b61085f9034611788565b6040518115909202915f818181858888f19350505050158015610884573d5f803e3d5ffd5b505b505050505050505050505050565b604080518082019091525f808252602082015282516020840120604051636b727d4360e11b8152600481018290527f000000000000000000000000ec71e4e674fe0f432693dc2b935c34bd2774c0036001600160a01b03908116916350e9a7159187917f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063d6e4fa8690602401602060405180830381865afa158015610940573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109649190611732565b866040518463ffffffff1660e01b8152600401610983939291906117e8565b6040805180830381865afa15801561099d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109c1919061180c565b949350505050565b5f60036109d583611044565b101592915050565b5f83836040516109ee929190611749565b604080519182900382206020601f8701819004810284018101909252858352925082915f91610a39919088908890819084018382808284375f92019190915250889250610894915050565b8051909150341015610a5e5760405163044044a560e21b815260040160405180910390fd5b60405163c475abff60e01b815260048101839052602481018590525f907f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b03169063c475abff906044016020604051808303815f875af1158015610acb573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610aef9190611732565b8251909150341115610b3457815133906108fc90610b0d9034611788565b6040518115909202915f818181858888f19350505050158015610b32573d5f803e3d5ffd5b505b837f3da24c024582931cfaf8267d8ed24d13a82a8068d5bd337d30ec45cea4e506ae88883485604051610b6a9493929190611859565b60405180910390a250505050505050565b805160208201205f90610b8d836109c9565b8015610c1b57506040516312dc929d60e31b8152600481018290527f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b0316906396e494e890602401602060405180830381865afa158015610bf7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c1b9190611589565b9392505050565b5f818152600160205260409020544290610c5d907f0000000000000000000000000000000000000000000000000000000000015180906116d5565b10610c8357604051630a059d7160e01b8152600481018290526024015b60405180910390fd5b5f908152600160205260409020429055565b610c9d610d0b565b6001600160a01b038116610d025760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610c7a565b61048681610d64565b5f546001600160a01b0316331461059c5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610c7a565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f818152600160205260409020544290610dee907f0000000000000000000000000000000000000000000000000000000000000258906116d5565b1115610e1057604051635320bcf960e01b815260048101829052602401610c7a565b5f818152600160205260409020544290610e4b907f0000000000000000000000000000000000000000000000000000000000015180906116d5565b11610e6c5760405163cb7690d760e01b815260048101829052602401610c7a565b610e7583610b7b565b610e9457826040516308eee0fd60e31b8152600401610c7a919061187f565b5f818152600160205260408120556224ea00821015610ec957604051639a71997b60e01b815260048101839052602401610c7a565b505050565b604080517f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae6020808301919091528183018690528251808303840181526060830193849052805191012063e32954eb60e01b90925285906001600160a01b0382169063e32954eb90610f4890859088908890606401611891565b5f604051808303815f875af1158015610f63573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052610f8a91908101906118b3565b50505050505050565b7f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d566001600160a01b0316637a806d6b33838587604051602001610fd691906119a7565b6040516020818303038152906040526040518563ffffffff1660e01b815260040161100494939291906119ce565b6020604051808303815f875af1158015611020573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105019190611732565b80515f90819081905b8082101561113c575f85838151811061106857611068611a0b565b01602001516001600160f81b0319169050600160ff1b811015611097576110906001846116d5565b9250611129565b600760fd1b6001600160f81b0319821610156110b8576110906002846116d5565b600f60fc1b6001600160f81b0319821610156110d9576110906003846116d5565b601f60fb1b6001600160f81b0319821610156110fa576110906004846116d5565b603f60fa1b6001600160f81b03198216101561111b576110906005846116d5565b6111266006846116d5565b92505b508261113481611a1f565b93505061104d565b50909392505050565b5f60208284031215611155575f80fd5b81356001600160e01b031981168114610c1b575f80fd5b80356001600160a01b0381168114611182575f80fd5b919050565b5f805f60608486031215611199575f80fd5b6111a28461116c565b92506111b06020850161116c565b9150604084013590509250925092565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff811182821017156111fd576111fd6111c0565b604052919050565b5f67ffffffffffffffff82111561121e5761121e6111c0565b50601f01601f191660200190565b5f82601f83011261123b575f80fd5b813561124e61124982611205565b6111d4565b818152846020838601011115611262575f80fd5b816020850160208301375f918101602001919091529392505050565b5f8083601f84011261128e575f80fd5b50813567ffffffffffffffff8111156112a5575f80fd5b6020830191508360208260051b85010111156112bf575f80fd5b9250929050565b8015158114610486575f80fd5b803561ffff81168114611182575f80fd5b5f805f805f805f805f6101008a8c0312156112fd575f80fd5b893567ffffffffffffffff80821115611314575f80fd5b6113208d838e0161122c565b9a5061132e60208d0161116c565b995060408c0135985060608c0135975061134a60808d0161116c565b965060a08c013591508082111561135f575f80fd5b5061136c8c828d0161127e565b90955093505060c08a0135611380816112c6565b915061138e60e08b016112d3565b90509295985092959850929598565b5f8083601f8401126113ad575f80fd5b50813567ffffffffffffffff8111156113c4575f80fd5b6020830191508360208285010111156112bf575f80fd5b5f805f805f805f805f806101008b8d0312156113f5575f80fd5b8a3567ffffffffffffffff8082111561140c575f80fd5b6114188e838f0161139d565b909c509a508a915061142c60208e0161116c565b995060408d0135985060608d0135975061144860808e0161116c565b965060a08d013591508082111561145d575f80fd5b5061146a8d828e0161127e565b90955093505060c08b013561147e816112c6565b915061148c60e08c016112d3565b90509295989b9194979a5092959850565b5f602082840312156114ad575f80fd5b5035919050565b5f80604083850312156114c5575f80fd5b823567ffffffffffffffff8111156114db575f80fd5b6114e78582860161122c565b95602094909401359450505050565b5f60208284031215611506575f80fd5b813567ffffffffffffffff81111561151c575f80fd5b6109c18482850161122c565b5f805f6040848603121561153a575f80fd5b833567ffffffffffffffff811115611550575f80fd5b61155c8682870161139d565b909790965060209590950135949350505050565b5f60208284031215611580575f80fd5b610c1b8261116c565b5f60208284031215611599575f80fd5b8151610c1b816112c6565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b5f838385526020808601955060208560051b830101845f5b8781101561165157848303601f19018952813536889003601e19018112611609575f80fd5b8701848101903567ffffffffffffffff811115611624575f80fd5b803603821315611632575f80fd5b61163d8582846115a4565b9a86019a94505050908301906001016115e4565b5090979650505050505050565b8981526001600160a01b03898116602083015260408201899052606082018890528616608082015261010060a082018190525f9061169f83820187896115cc565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610449576104496116c1565b60a081525f6116fb60a08301888a6115a4565b6001600160a01b03968716602084015260408301959095525091909316606082015261ffff90921660809092019190915292915050565b5f60208284031215611742575f80fd5b5051919050565b818382375f9101908152919050565b608081525f61176b6080830187896115a4565b602083019590955250604081019290925260609091015292915050565b81810381811115610449576104496116c1565b5f5b838110156117b557818101518382015260200161179d565b50505f910152565b5f81518084526117d481602086016020860161179b565b601f01601f19169290920160200192915050565b606081525f6117fa60608301866117bd565b60208301949094525060400152919050565b5f6040828403121561181c575f80fd5b6040516040810181811067ffffffffffffffff8211171561183f5761183f6111c0565b604052825181526020928301519281019290925250919050565b606081525f61186c6060830186886115a4565b6020830194909452506040015292915050565b602081525f610c1b60208301846117bd565b838152604060208201525f6118aa6040830184866115cc565b95945050505050565b5f60208083850312156118c4575f80fd5b825167ffffffffffffffff808211156118db575f80fd5b818501915085601f8301126118ee575f80fd5b815181811115611900576119006111c0565b8060051b61190f8582016111d4565b9182528381018501918581019089841115611928575f80fd5b86860192505b8383101561199a57825185811115611944575f80fd5b8601603f81018b13611954575f80fd5b87810151604061196661124983611205565b8281528d82848601011115611979575f80fd5b611988838c830184870161179b565b8552505050918601919086019061192e565b9998505050505050505050565b5f82516119b881846020870161179b565b6305ccae8d60e31b920191825250600401919050565b6001600160a01b0385811682528481166020830152831660408201526080606082018190525f90611a01908301846117bd565b9695505050505050565b634e487b7160e01b5f52603260045260245ffd5b5f60018201611a3057611a306116c1565b506001019056fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x5155f5627bdf9795b3dbb8887001ada1eeba93f2":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063de8f50a11461002d575b5f80fd5b61004761003b3660046100a0565b60019695505050505050565b604051901515815260200160405180910390f35b5f8083601f84011261006b575f80fd5b50813567ffffffffffffffff811115610082575f80fd5b602083019150836020828501011115610099575f80fd5b9250929050565b5f805f805f80606087890312156100b5575f80fd5b863567ffffffffffffffff808211156100cc575f80fd5b6100d88a838b0161005b565b909850965060208901359150808211156100f0575f80fd5b6100fc8a838b0161005b565b90965094506040890135915080821115610114575f80fd5b5061012189828a0161005b565b979a969950949750929593949250505056fea164736f6c6343000818000a","storage":{}},"0x54563a9e1cd2dcbd0bca90d3cfa4a647e02c404a":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106101db575f3560e01c80638da5cb5b116100fd578063c4d66de811610092578063daea85c511610062578063daea85c51461055e578063e7acab241461057d578063f2fde38b1461059c578063ffa1ad74146105bb575f80fd5b8063c4d66de8146104e1578063d539139314610500578063d547741f14610520578063d9caed121461053f575f80fd5b8063a217fddf116100cd578063a217fddf14610452578063a3f4df7e14610465578063a4247400146104a3578063aa271e1a146104c2575f80fd5b80638da5cb5b146103d957806391d1485414610400578063983b2d561461041f578063986502751461043e575f80fd5b80635c975abb11610173578063715018a611610143578063715018a61461037f57806371e2a6571461039357806381c81d35146103b25780638456cb59146103c5575f80fd5b80635c975abb146103165780635fc1964f1461032e578063634486da1461034d5780636ccbae5f14610360575f80fd5b80633092afd5116101ae5780633092afd51461029c57806336568abe146102bb5780633f4ba83a146102da578063572b6c05146102ee575f80fd5b806301ffc9a7146101df5780631bf7e13e14610213578063248a9ca31461023f5780632f2ff15d1461027b575b5f80fd5b3480156101ea575f80fd5b506101fe6101f9366004611ee0565b6105eb565b60405190151581526020015b60405180910390f35b34801561021e575f80fd5b5061023261022d366004611f07565b610621565b60405161020a9190611fe9565b34801561024a575f80fd5b5061026d610259366004611ffb565b5f90815260fb602052604090206001015490565b60405190815260200161020a565b348015610286575f80fd5b5061029a610295366004612036565b6106ea565b005b3480156102a7575f80fd5b5061029a6102b6366004612064565b610713565b3480156102c6575f80fd5b5061029a6102d5366004612036565b610727565b3480156102e5575f80fd5b5061029a6107ba565b3480156102f9575f80fd5b506101fe610308366004612064565b6001600160a01b0316301490565b348015610321575f80fd5b5061012d5460ff166101fe565b348015610339575f80fd5b5061029a6103483660046120eb565b6107d4565b61029a61035b366004612064565b610811565b34801561036b575f80fd5b5061026d61037a366004611ffb565b6108d1565b34801561038a575f80fd5b5061029a61092a565b34801561039e575f80fd5b5061029a6103ad3660046120eb565b61093b565b61029a6103c0366004612064565b610978565b3480156103d0575f80fd5b5061029a6109f5565b3480156103e4575f80fd5b506097546040516001600160a01b03909116815260200161020a565b34801561040b575f80fd5b506101fe61041a366004612036565b610a0d565b34801561042a575f80fd5b5061029a610439366004612064565b610a37565b348015610449575f80fd5b5061029a610a48565b34801561045d575f80fd5b5061026d5f81565b348015610470575f80fd5b506102326040518060400160405280601381526020017229b2b0b837b93a10283937bc3c90213abcb2b960691b81525081565b3480156104ae575f80fd5b506101fe6104bd366004611f07565b610a61565b3480156104cd575f80fd5b506101fe6104dc366004612064565b610ab2565b3480156104ec575f80fd5b5061029a6104fb366004612064565b610aca565b34801561050b575f80fd5b5061026d5f80516020612ea783398151915281565b34801561052b575f80fd5b5061029a61053a366004612036565b610c21565b34801561054a575f80fd5b5061029a61055936600461218b565b610c45565b348015610569575f80fd5b5061029a610578366004612064565b610cf7565b348015610588575f80fd5b506101fe6105973660046121c9565b610dac565b3480156105a7575f80fd5b5061029a6105b6366004612064565b6111db565b3480156105c6575f80fd5b5061023260405180604001604052806005815260200164302e302e3160d81b81525081565b5f6001600160e01b03198216637965db0b60e01b148061061b57506301ffc9a760e01b6001600160e01b03198316145b92915050565b60605f5a9050610632858585610a61565b61064f57604051638baa579f60e01b815260040160405180910390fd5b6106df61065f6020870187612064565b3060408801358461067360608b018b61227b565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f920191909152506111f692505050565b9150505b9392505050565b5f82815260fb6020526040902060010154610704816112d4565b61070e83836112e5565b505050565b61071b61136b565b610724816113e4565b50565b61072f6113fb565b6001600160a01b0316816001600160a01b0316146107ac5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6107b68282611409565b5050565b6107c261136b565b6107ca61148d565b6107d26114d7565b565b6107dc61136b565b5f5b81518110156107b6576108098282815181106107fc576107fc6122bd565b60200260200101516113e4565b6001016107de565b61081c6104dc6113fb565b6108385760405162461bcd60e51b81526004016107a3906122d1565b6001600160a01b03811661088e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016107a3565b61089781611530565b61089f610a48565b6040516001600160a01b038216903480156108fc02915f818181858888f193505050501580156107b6573d5f803e3d5ffd5b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f90610923906060016040516020818303038152906040528051906020012090565b5492915050565b61093261136b565b6107d25f611547565b61094361136b565b5f5b81518110156107b657610970828281518110610963576109636122bd565b6020026020010151611530565b600101610945565b6109836104dc6113fb565b61099f5760405162461bcd60e51b81526004016107a3906122d1565b6001600160a01b0381166108975760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016107a3565b6109fd61136b565b610a05611598565b6107d26115df565b5f91825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610a3f61136b565b61072481611530565b6107d25f80516020612ea78339815191526102d56113fb565b5f610aaa610a6e85612306565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061161e92505050565b949350505050565b5f61061b5f80516020612ea783398151915283610a0d565b5f54610100900460ff1615808015610ae857505f54600160ff909116105b80610b015750303b158015610b0157505f5460ff166001145b610b645760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107a3565b5f805460ff191660011790558015610b85575f805461ff0019166101001790555b61015f80546001600160a01b0319166001600160a01b038416179055610ba9611759565b610bb1611786565b610bb9611786565b610bc1611786565b610bc96117ac565b610bd16117e2565b610bd9611819565b80156107b6575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b5f82815260fb6020526040902060010154610c3b816112d4565b61070e8383611409565b610c4d61136b565b600260335403610c6f5760405162461bcd60e51b81526004016107a3906123c2565b6002603355610c7c611598565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af1158015610cc8573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cec91906123f9565b505060016033555050565b610cff61136b565b600260335403610d215760405162461bcd60e51b81526004016107a3906123c2565b6002603355610d2e611598565b61015f5460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529082169063095ea7b3906044016020604051808303815f875af1158015610d7f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610da391906123f9565b50506001603355565b5f610db86104dc6113fb565b610dd45760405162461bcd60e51b81526004016107a3906122d1565b600260335403610df65760405162461bcd60e51b81526004016107a3906123c2565b6002603355610e03611598565b6001600160a01b038216610e2a576040516311d000e160e31b815260040160405180910390fd5b30610e358780612418565b610e46906040810190602001612064565b6001600160a01b031614610e6d57604051639d3c586b60e01b815260040160405180910390fd5b610e75611e67565b610e7f8780612418565b610e8d906020810190612064565b6001600160a01b03168152610ea28780612418565b610eb3906040810190602001612064565b6001600160a01b03166020820152610ecb8780612418565b610ed9906040810190612437565b808060200260200160405190810160405280939291908181526020015f905b82821015610f2457610f1560a08302860136819003810190612489565b81526020019060010190610ef8565b50505050506040820152610f388780612418565b610f46906060810190612506565b808060200260200160405190810160405280939291908181526020015f905b82821015610f9157610f8260c0830286013681900381019061254a565b81526020019060010190610f65565b50505050506060820152610fa58780612418565b610fb69060a08101906080016125e5565b81608001906004811115610fcc57610fcc6125fe565b90816004811115610fdf57610fdf6125fe565b905250610fec8780612418565b60a090810135908201526110008780612418565b60c090810135908201526110148780612418565b60e090810135908201526110288780612418565b610100908101359082015261103d8780612418565b610120908101359082015261015f54815160405163f07ec37360e01b81526001600160a01b03918216600482015291169063f07ec37390602401602060405180830381865afa158015611092573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110b69190612612565b61014082015261015f546040516379df72bd60e01b8152611133916001600160a01b0316906379df72bd906110ef908590600401612737565b602060405180830381865afa15801561110a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061112e9190612612565b61184c565b61015f546040516339eb2ac960e21b81526001600160a01b039091169063e7acab249061116c908a908a908a908a908a90600401612b24565b6020604051808303815f875af1158015611188573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111ac91906123f9565b9150816111cc57604051636725093760e01b815260040160405180910390fd5b50600160335595945050505050565b6111e361136b565b6111ec81611865565b6107245f826118db565b6060611201856118e5565b5f80876001600160a01b03168661121a8b8a898961194a565b6040516112279190612cfa565b5f604051808303815f8787f1925050503d805f8114611261576040519150601f19603f3d011682016040523d82523d5f602084013e611266565b606091505b509092509050611277603f87612d1f565b5a1161128557611285612d3e565b6112c582826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061197a565b925050505b9695505050505050565b610724816112e06113fb565b6119b3565b6112ef8282610a0d565b6107b6575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191660011790556113276113fb565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6113736113fb565b6001600160a01b031661138e6097546001600160a01b031690565b6001600160a01b0316146107d25760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107a3565b6107245f80516020612ea783398151915282610c21565b5f611404611a17565b905090565b6114138282610a0d565b156107b6575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191690556114496113fb565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b61012d5460ff166107d25760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b60448201526064016107a3565b6114df61148d565b61012d805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6115136113fb565b6040516001600160a01b03909116815260200160405180910390a1565b6107245f80516020612ea7833981519152826118db565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b61012d5460ff16156107d25760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b60448201526064016107a3565b6115e7611598565b61012d805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586115136113fb565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015611662573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116869190612612565b90505f6117338660600151805190602001208688602001516040516020016116d39392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156112ca575085516112ca906001600160a01b03168286611a34565b5f54610100900460ff1661177f5760405162461bcd60e51b81526004016107a390612d52565b6001603355565b5f54610100900460ff166107d25760405162461bcd60e51b81526004016107a390612d52565b5f54610100900460ff166117d25760405162461bcd60e51b81526004016107a390612d52565b6107d26117dd6113fb565b611547565b5f54610100900460ff166118085760405162461bcd60e51b81526004016107a390612d52565b6107d25f6118146113fb565b6118db565b5f54610100900460ff1661183f5760405162461bcd60e51b81526004016107a390612d52565b61012d805460ff19169055565b30330361185c5761072481611b6f565b610724816118e5565b61186d61136b565b6001600160a01b0381166118d25760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107a3565b61072481611547565b6107b682826112e5565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f906060016040516020818303038152906040528051906020012090506119398190565b54611945906001612d9d565b905550565b606082858560405160200161196193929190612db0565b6040516020818303038152906040529050949350505050565b606083156119895750816106e3565b8251156119995782518084602001fd5b8160405162461bcd60e51b81526004016107a39190611fe9565b6119bd8282610a0d565b6107b6576119d5816001600160a01b03166014611b99565b6119e0836020611b99565b6040516020016119f1929190612dee565b60408051601f198184030181529082905262461bcd60e51b82526107a391600401611fe9565b5f303303611a2c575060331936013560601c90565b503390565b90565b5f805f611a418585611d2e565b90925090505f816004811115611a5957611a596125fe565b148015611a775750856001600160a01b0316826001600160a01b0316145b15611a87576001925050506106e3565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401611aae929190612e62565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051611aec9190612cfa565b5f60405180830381855afa9150503d805f8114611b24576040519150601f19603f3d011682016040523d82523d5f602084013e611b29565b606091505b5091509150818015611b3c575080516020145b8015611b6357508051630b135d3f60e11b90611b619083016020908101908401612612565b145b98975050505050505050565b611b77611d70565b811461072457604051635637b6af60e11b8152600481018290526024016107a3565b60605f611ba7836002612e7a565b611bb2906002612d9d565b6001600160401b03811115611bc957611bc961207f565b6040519080825280601f01601f191660200182016040528015611bf3576020820181803683370190505b509050600360fc1b815f81518110611c0d57611c0d6122bd565b60200101906001600160f81b03191690815f1a905350600f60fb1b81600181518110611c3b57611c3b6122bd565b60200101906001600160f81b03191690815f1a9053505f611c5d846002612e7a565b611c68906001612d9d565b90505b6001811115611cdf576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611c9c57611c9c6122bd565b1a60f81b828281518110611cb257611cb26122bd565b60200101906001600160f81b03191690815f1a90535060049490941c93611cd881612e91565b9050611c6b565b5083156106e35760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016107a3565b5f808251604103611d62576020830151604084015160608501515f1a611d5687828585611d82565b94509450505050611d69565b505f905060025b9250929050565b5f303303611a315750601f1936013590565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115611db757505f90506003611e5e565b8460ff16601b14158015611dcf57508460ff16601c14155b15611ddf57505f90506004611e5e565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015611e30573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b038116611e58575f60019250925050611e5e565b91505f90505b94509492505050565b6040518061016001604052805f6001600160a01b031681526020015f6001600160a01b0316815260200160608152602001606081526020015f6004811115611eb157611eb16125fe565b81525f6020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b5f60208284031215611ef0575f80fd5b81356001600160e01b0319811681146106e3575f80fd5b5f805f60408486031215611f19575f80fd5b83356001600160401b0380821115611f2f575f80fd5b9085019060808288031215611f42575f80fd5b90935060208501359080821115611f57575f80fd5b818601915086601f830112611f6a575f80fd5b813581811115611f78575f80fd5b876020828501011115611f89575f80fd5b6020830194508093505050509250925092565b5f5b83811015611fb6578181015183820152602001611f9e565b50505f910152565b5f8151808452611fd5816020860160208601611f9c565b601f01601f19169290920160200192915050565b602081525f6106e36020830184611fbe565b5f6020828403121561200b575f80fd5b5035919050565b6001600160a01b0381168114610724575f80fd5b803561203181612012565b919050565b5f8060408385031215612047575f80fd5b82359150602083013561205981612012565b809150509250929050565b5f60208284031215612074575f80fd5b81356106e381612012565b634e487b7160e01b5f52604160045260245ffd5b604051608081016001600160401b03811182821017156120b5576120b561207f565b60405290565b604051601f8201601f191681016001600160401b03811182821017156120e3576120e361207f565b604052919050565b5f60208083850312156120fc575f80fd5b82356001600160401b0380821115612112575f80fd5b818501915085601f830112612125575f80fd5b8135818111156121375761213761207f565b8060051b91506121488483016120bb565b8181529183018401918481019088841115612161575f80fd5b938501935b83851015611b63578435925061217b83612012565b8282529385019390850190612166565b5f805f6060848603121561219d575f80fd5b83356121a881612012565b925060208401356121b881612012565b929592945050506040919091013590565b5f805f805f608086880312156121dd575f80fd5b85356001600160401b03808211156121f3575f80fd5b9087019060a0828a031215612206575f80fd5b9095506020870135908082111561221b575f80fd5b818801915088601f83011261222e575f80fd5b81358181111561223c575f80fd5b8960208260051b8501011115612250575f80fd5b6020830196508095505050506040860135915061226f60608701612026565b90509295509295909350565b5f808335601e19843603018112612290575f80fd5b8301803591506001600160401b038211156122a9575f80fd5b602001915036819003821315611d69575f80fd5b634e487b7160e01b5f52603260045260245ffd5b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b5f60808236031215612316575f80fd5b61231e612093565b823561232981612012565b8152602083810135818301526040808501359083015260608401356001600160401b0380821115612358575f80fd5b9085019036601f83011261236a575f80fd5b81358181111561237c5761237c61207f565b61238e601f8201601f191685016120bb565b915080825236848285010111156123a3575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b5f60208284031215612409575f80fd5b815180151581146106e3575f80fd5b5f823561015e1983360301811261242d575f80fd5b9190910192915050565b5f808335601e1984360301811261244c575f80fd5b8301803591506001600160401b03821115612465575f80fd5b602001915060a081023603821315611d69575f80fd5b803560068110612031575f80fd5b5f60a08284031215612499575f80fd5b60405160a081018181106001600160401b03821117156124bb576124bb61207f565b6040526124c78361247b565b815260208301356124d781612012565b806020830152506040830135604082015260608301356060820152608083013560808201528091505092915050565b5f808335601e1984360301811261251b575f80fd5b8301803591506001600160401b03821115612534575f80fd5b602001915060c081023603821315611d69575f80fd5b5f60c0828403121561255a575f80fd5b60405160c081018181106001600160401b038211171561257c5761257c61207f565b6040526125888361247b565b8152602083013561259881612012565b8060208301525060408301356040820152606083013560608201526080830135608082015260a08301356125cb81612012565b60a08201529392505050565b803560058110612031575f80fd5b5f602082840312156125f5575f80fd5b6106e3826125d7565b634e487b7160e01b5f52602160045260245ffd5b5f60208284031215612622575f80fd5b5051919050565b60068110612639576126396125fe565b9052565b5f815180845260208085019450602084015f5b838110156126a6578151612665888251612629565b838101516001600160a01b03168885015260408082015190890152606080820151908901526080908101519088015260a09096019590820190600101612650565b509495945050505050565b5f815180845260208085019450602084015f5b838110156126a65781516126d9888251612629565b808401516001600160a01b0390811689860152604080830151908a0152606080830151908a0152608080830151908a015260a091820151169088015260c090960195908201906001016126c4565b60058110612639576126396125fe565b602081526127516020820183516001600160a01b03169052565b5f602083015161276c60408401826001600160a01b03169052565b50604083015161016080606085015261278961018085018361263d565b91506060850151601f198584030160808601526127a683826126b1565b92505060808501516127bb60a0860182612727565b5060a085015160c085015260c085015160e085015260e0850151610100818187015280870151915050610120818187015280870151915050610140818187015280870151838701525050508091505092915050565b5f808335601e19843603018112612825575f80fd5b83016020810192503590506001600160401b03811115612843575f80fd5b60a081023603821315611d69575f80fd5b8183525f60208085019450825f5b858110156126a65761287c876128778461247b565b612629565b8282013561288981612012565b6001600160a01b03168388015260408281013590880152606080830135908801526080808301359088015260a09687019690910190600101612862565b5f808335601e198436030181126128db575f80fd5b83016020810192503590506001600160401b038111156128f9575f80fd5b60c081023603821315611d69575f80fd5b8183525f60208085019450825f5b858110156126a65761292d876128778461247b565b8282013561293a81612012565b6001600160a01b039081168885015260408381013590890152606080840135908901526080808401359089015260a0908382013561297781612012565b169088015260c0968701969190910190600101612918565b80356001600160781b0381168114612031575f80fd5b5f808335601e198436030181126129ba575f80fd5b83016020810192503590506001600160401b038111156129d8575f80fd5b803603821315611d69575f80fd5b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b8183525f6001600160fb1b03831115612a25575f80fd5b8260051b80836020870137939093016020019392505050565b8183526020808401935f91600585811b8301820185855b88811015612b1657858303601f19018a52813536899003609e19018112612a7a575f80fd5b88018035845260a08682013560028110612a92575f80fd5b85880152604082810135908601526060808301359086015260808083013536849003601e19018112612ac2575f80fd5b9092018781019290356001600160401b03811115612ade575f80fd5b80881b3603841315612aee575f80fd5b8282880152612b008388018286612a0e565b9d89019d96505050928601925050600101612a55565b509098975050505050505050565b608081525f610120873561015e19893603018112612b40575f80fd5b60a060808501528801612b65828501612b5883612026565b6001600160a01b03169052565b612b7160208201612026565b610140612b88818701836001600160a01b03169052565b612b956040840184612810565b610160888101529250612bad61028088018483612854565b925050612bbd60608401846128c6565b87840361011f1901610180890152612bd684828461290a565b93505050612be6608084016125d7565b612bf46101a0880182612727565b5060a08301356101c087015260c08301356101e087015260e0830135610200870152610100808401356102208801528484013561024088015281840135610260880152612c4360208d0161298f565b6001600160781b03811660a08901529450612c6060408d0161298f565b6001600160781b03811660c08901529450612c7e60608d018d6129a5565b95509350607f199150818784030160e0880152612c9c8386866129e6565b9450612cab60808d018d6129a5565b945092508187860301818801525050612cc58383836129e6565b925050508281036020840152612cdc818789612a3e565b9150508360408301526112ca60608301846001600160a01b03169052565b5f825161242d818460208701611f9c565b634e487b7160e01b5f52601160045260245ffd5b5f82612d3957634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b8082018082111561061b5761061b612d0b565b5f8451612dc1818460208901611f9c565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081525f8351612e25816017850160208801611f9c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351612e56816028840160208801611f9c565b01602801949350505050565b828152604060208201525f610aaa6040830184611fbe565b808202811582820484141761061b5761061b612d0b565b5f81612e9f57612e9f612d0b565b505f19019056fe9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000818000a","storage":{"0x0":"0xff"}},"0x58a175bebc8ec21a94ea63aa5a28743945940ee6":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106101165760003560e01c806391d14854116100a2578063c4d66de811610071578063c4d66de8146103bb578063ca15c873146103e1578063d547741f146103fe578063e375b64e1461042a578063ec87621c146104b957610116565b806391d14854146103635780639559c0bd146103a3578063a217fddf146103ab578063b017a30f146103b357610116565b80634794b430116100e95780634794b4301461024f57806349f5124b14610257578063609c92b81461025f5780638274664f146102675780639010d07c1461032457610116565b8063150b7a021461011b578063248a9ca3146101c65780632f2ff15d146101f557806336568abe14610223575b600080fd5b6101a96004803603608081101561013157600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561016b57600080fd5b82018360208201111561017d57600080fd5b803590602001918460018302840111600160201b8311171561019e57600080fd5b5090925090506104c1565b604080516001600160e01b03199092168252519081900360200190f35b6101e3600480360360208110156101dc57600080fd5b50356104d2565b60408051918252519081900360200190f35b6102216004803603604081101561020b57600080fd5b50803590602001356001600160a01b03166104ea565b005b6102216004803603604081101561023957600080fd5b50803590602001356001600160a01b0316610556565b6101e36105b7565b6101e36105db565b6101e36105ff565b6102216004803603606081101561027d57600080fd5b6001600160a01b038235811692602081013590911691810190606081016040820135600160201b8111156102b057600080fd5b8201836020820111156102c257600080fd5b803590602001918460018302840111600160201b831117156102e357600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610623945050505050565b6103476004803603604081101561033a57600080fd5b5080359060200135610fa2565b604080516001600160a01b039092168252519081900360200190f35b61038f6004803603604081101561037957600080fd5b50803590602001356001600160a01b0316610fc9565b604080519115158252519081900360200190f35b6101e3610fe7565b6101e3610fec565b6101e3610ff1565b610221600480360360208110156103d157600080fd5b50356001600160a01b0316611015565b6101e3600480360360208110156103f757600080fd5b50356110cf565b6102216004803603604081101561041457600080fd5b50803590602001356001600160a01b03166110e6565b6102216004803603608081101561044057600080fd5b6001600160a01b0382358116926020810135821692604082013590921691810190608081016060820135600160201b81111561047b57600080fd5b82018360208201111561048d57600080fd5b803590602001918460018302840111600160201b831117156104ae57600080fd5b50909250905061113f565b6101e36114e6565b630a85bd0160e11b95945050505050565b6000818152602081905260409020600201545b919050565b60008281526020819052604090206002015461050d906105086114f8565b610fc9565b6105485760405162461bcd60e51b815260040180806020018281038252602f815260200180611f42602f913960400191505060405180910390fd5b61055282826114fd565b5050565b61055e6114f8565b6001600160a01b0316816001600160a01b0316146105ad5760405162461bcd60e51b815260040180806020018281038252602f8152602001806120bb602f913960400191505060405180910390fd5b610552828261156c565b7ff871896b17e9cb7a64941c62c188a4f5c621b86800e3d15452ece01ce56073df81565b7ff94915c6d1fd521cee85359239227480c7e8776d7caf1fc3bacad5c269b66a1481565b7fd4392723c111fcb98b073fe55873efb447bcd23cd3e49ec9ea2581930cd01ddc81565b60008051602061204b83398151915261063e816105086114f8565b6001906106de5760405162461bcd60e51b81526020600482019081528254600260001961010060018416150201909116046024830181905290918291604490910190849080156106cf5780601f106106a4576101008083540402835291602001916106cf565b820191906000526020600020905b8154815290600101906020018083116106b257829003601f168201915b50509250505060405180910390fd5b5060606106f26106ed846115db565b611656565b905060606107138260018151811061070657fe5b6020026020010151611656565b90507fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60001b6107568260008151811061074957fe5b60200260200101516117d8565b141561095457600061076e8260018151811061074957fe5b905060006001600160a01b031661078b8360028151811061074957fe5b6001600160a01b0316146107d05760405162461bcd60e51b815260040180806020018281038252602981526020018061206b6029913960400191505060405180910390fd5b600086905060006107e78460038151811061074957fe5b9050816001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b15801561082d57600080fd5b505afa158015610841573d6000803e3d6000fd5b505050506040513d602081101561085757600080fd5b5051156108d35760408051632142170760e11b81523060048201526001600160a01b038581166024830152604482018490529151918416916342842e0e9160648082019260009290919082900301818387803b1580156108b657600080fd5b505af11580156108ca573d6000803e3d6000fd5b5050505061094c565b816001600160a01b03166340c10f1984836040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b15801561093357600080fd5b505af1158015610947573d6000803e3d6000fd5b505050505b505050610f9a565b7ff871896b17e9cb7a64941c62c188a4f5c621b86800e3d15452ece01ce56073df60001b6109888260008151811061074957fe5b1415610c085760006109a08260018151811061074957fe5b905060606109c1846002815181106109b457fe5b6020026020010151611920565b905060608180602001905160208110156109da57600080fd5b8101908080516040519392919084600160201b8211156109f957600080fd5b908301906020820185811115610a0e57600080fd5b82518660208202830111600160201b82111715610a2a57600080fd5b82525081516020918201928201910280838360005b83811015610a57578181015183820152602001610a3f565b5050505091909101604052505082519293508a9150600090505b82811015610bfd576000848281518110610a8757fe5b60200260200101519050826001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610ad557600080fd5b505afa158015610ae9573d6000803e3d6000fd5b505050506040513d6020811015610aff57600080fd5b505115610b7b5760408051632142170760e11b81523060048201526001600160a01b038981166024830152604482018490529151918516916342842e0e9160648082019260009290919082900301818387803b158015610b5e57600080fd5b505af1158015610b72573d6000803e3d6000fd5b50505050610bf4565b826001600160a01b03166340c10f1988836040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b158015610bdb57600080fd5b505af1158015610bef573d6000803e3d6000fd5b505050505b50600101610a71565b505050505050610f9a565b7ff94915c6d1fd521cee85359239227480c7e8776d7caf1fc3bacad5c269b66a1460001b610c3c8260008151811061074957fe5b1415610f63576000610c548260018151811061074957fe5b905060006001600160a01b0316610c718360028151811061074957fe5b6001600160a01b031614610cb65760405162461bcd60e51b815260040180806020018281038252602981526020018061206b6029913960400191505060405180910390fd5b60008690506000610ccd8460038151811061074957fe5b9050816001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610d1357600080fd5b505afa158015610d27573d6000803e3d6000fd5b505050506040513d6020811015610d3d57600080fd5b505115610d9c5760408051632142170760e11b81523060048201526001600160a01b038581166024830152604482018490529151918416916342842e0e9160648082019260009290919082900301818387803b1580156108b657600080fd5b6060610dae866002815181106109b457fe5b90506060818060200190516020811015610dc757600080fd5b8101908080516040519392919084600160201b821115610de657600080fd5b908301906020820185811115610dfb57600080fd5b8251600160201b811182820188101715610e1457600080fd5b82525081516020918201929091019080838360005b83811015610e41578181015183820152602001610e29565b50505050905090810190601f168015610e6e5780820380516001836020036101000a031916815260200191505b506040525050509050836001600160a01b03166394d008ef8685846040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b0316815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610ef3578181015183820152602001610edb565b50505050905090810190601f168015610f205780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015610f4157600080fd5b505af1158015610f55573d6000803e3d6000fd5b505050505050505050610f9a565b60405162461bcd60e51b815260040180806020018281038252602a815260200180611f71602a913960400191505060405180910390fd5b505050505050565b6000828152602081905260408120610fc0908363ffffffff6119ea16565b90505b92915050565b6000828152602081905260408120610fc0908363ffffffff6119f616565b601481565b600081565b7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef81565b60025460ff161561105e576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b61109c6040518060400160405280601781526020017f4d696e7461626c65455243373231507265646963617465000000000000000000815250611a0b565b6110a7600082610548565b6110bf60008051602061204b83398151915282610548565b506002805460ff19166001179055565b6000818152602081905260408120610fc390611aa9565b600082815260208190526040902060020154611104906105086114f8565b6105ad5760405162461bcd60e51b8152600401808060200182810382526030815260200180611fc36030913960400191505060405180910390fd5b60008051602061204b83398151915261115a816105086114f8565b6001906111c05760405162461bcd60e51b81526020600482019081528254600260001961010060018416150201909116046024830181905290918291604490910190849080156106cf5780601f106106a4576101008083540402835291602001916106cf565b50602082141561129f576000838360208110156111dc57600080fd5b5060408051913580835290519092506001600160a01b038088169289821692918b16917fe13244aa06bdc79480ed5fdc6ebe2bb37202fcdf33ecf45dc449f4201f3dc0879181900360200190a460408051632142170760e11b81526001600160a01b038981166004830152306024830152604482018490529151918716916342842e0e9160648082019260009290919082900301818387803b15801561128157600080fd5b505af1158015611295573d6000803e3d6000fd5b5050505050610f9a565b6060838360208110156112b157600080fd5b810190602081018135600160201b8111156112cb57600080fd5b8201836020820111156112dd57600080fd5b803590602001918460208302840111600160201b831117156112fe57600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f8201169050808301925050505050505091929192905050509050846001600160a01b0316866001600160a01b0316886001600160a01b03167fdb55e3a0ae817693fd7b07170d81eab0eb2c239f36fcecbc98b6b58ac5667e7a846040518080602001828103825283818151815260200191508051906020019060200280838360005b838110156113ca5781810151838201526020016113b2565b505050509050019250505060405180910390a48051601481111561141f5760405162461bcd60e51b815260040180806020018281038252602c81526020018061201f602c913960400191505060405180910390fd5b60005b818110156114db57866001600160a01b03166342842e0e8a3086858151811061144757fe5b60200260200101516040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050600060405180830381600087803b1580156114b757600080fd5b505af11580156114cb573d6000803e3d6000fd5b5050600190920191506114229050565b505050505050505050565b60008051602061204b83398151915281565b335b90565b600082815260208190526040902061151b908263ffffffff611ab416565b15610552576115286114f8565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b600082815260208190526040902061158a908263ffffffff611ac916565b15610552576115976114f8565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b6115e3611e6d565b6000825111611639576040805162461bcd60e51b815260206004820152601f60248201527f524c505265616465723a20494e56414c49445f42595445535f4c454e47544800604482015290519081900360640190fd5b506040805180820190915281518152602082810190820152919050565b606061166182611ade565b6116b2576040805162461bcd60e51b815260206004820152601860248201527f524c505265616465723a204954454d5f4e4f545f4c4953540000000000000000604482015290519081900360640190fd5b60006116bd83611b0a565b905060608167ffffffffffffffff811180156116d857600080fd5b5060405190808252806020026020018201604052801561171257816020015b6116ff611e6d565b8152602001906001900390816116f75790505b50905060006117248560200151611b96565b855190915081146117665760405162461bcd60e51b81526004018080602001828103825260278152602001806120946027913960400191505060405180910390fd5b60006117758660200151611c2f565b60208701510190506000805b858110156117cc5761179283611b96565b91506040518060400160405280838152602001848152508582815181106117b557fe5b602090810291909101015291810191600101611781565b50929695505050505050565b60006117e382611ade565b15611835576040805162461bcd60e51b815260206004820181905260248201527f524c505265616465723a204445434f44494e475f4c4953545f41535f55494e54604482015290519081900360640190fd5b81516021101561188c576040805162461bcd60e51b815260206004820152601e60248201527f524c505265616465723a20494e56414c49445f55494e545f4c454e4754480000604482015290519081900360640190fd5b600061189b8360200151611b96565b835190915081146118dd5760405162461bcd60e51b81526004018080602001828103825260278152602001806120ea6027913960400191505060405180910390fd5b60006118ec8460200151611c2f565b8451602080870151830180519394509184900392919083101561191657826020036101000a820491505b5095945050505050565b606060006119318360200151611b96565b835190915081146119735760405162461bcd60e51b8152600401808060200182810382526028815260200180611f9b6028913960400191505060405180910390fd5b60006119828460200151611c2f565b845190915081900360608167ffffffffffffffff811180156119a357600080fd5b506040519080825280601f01601f1916602001820160405280156119ce576020820181803683370190505b5090506000816020019050611916848860200151018285611c92565b6000610fc08383611cdd565b6000610fc0836001600160a01b038416611d41565b806040516020018082805190602001908083835b60208310611a3e5780518252601f199092019160209182019101611a1f565b51815160209384036101000a60001901801990921691161790527f3a20494e53554646494349454e545f5045524d495353494f4e530000000000009190930190815260408051808303600519018152601a909201905280516105529550600194509201919050611e87565b6000610fc382611d59565b6000610fc0836001600160a01b038416611d5d565b6000610fc0836001600160a01b038416611da7565b6020810151805160009190821a9060c0821015611b00576000925050506104e5565b5060019392505050565b600080600090506000611b208460200151611c2f565b602085015185519181019250015b80821015611b8d57611b3f82611b96565b8201915080821115611b825760405162461bcd60e51b815260040180806020018281038252602c815260200180611ff3602c913960400191505060405180910390fd5b600190920191611b2e565b50909392505050565b80516000908190811a6080811015611bb15760019150611c28565b60b8811015611bc657607e1981019150611c28565b60c0811015611bf35760b78103600185019450806020036101000a85510460018201810193505050611c28565b60f8811015611c085760be1981019150611c28565b60f78103600185019450806020036101000a855104600182018101935050505b5092915050565b8051600090811a6080811015611c495760009150506104e5565b60b8811080611c64575060c08110801590611c64575060f881105b15611c735760019150506104e5565b60c0811015611c875760b5190190506104e5565b60f5190190506104e5565b80611c9c57611cd8565b5b60208110611cbc578251825260209283019290910190601f1901611c9d565b8251825160208390036101000a60001901801990921691161782525b505050565b81546000908210611d1f5760405162461bcd60e51b8152600401808060200182810382526022815260200180611f206022913960400191505060405180910390fd5b826000018281548110611d2e57fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000611d698383611d41565b611d9f57508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610fc3565b506000610fc3565b60008181526001830160205260408120548015611e635783546000198083019190810190600090879083908110611dda57fe5b9060005260206000200154905080876000018481548110611df757fe5b600091825260208083209091019290925582815260018981019092526040902090840190558654879080611e2757fe5b60019003818190600052602060002001600090559055866001016000878152602001908152602001600020600090556001945050505050610fc3565b6000915050610fc3565b604051806040016040528060008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611ec857805160ff1916838001178555611ef5565b82800160010185558215611ef5579182015b82811115611ef5578251825591602001919060010190611eda565b50611f01929150611f05565b5090565b6114fa91905b80821115611f015760008155600101611f0b56fe456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e744d696e7461626c654552433732315072656469636174653a20494e56414c49445f5349474e4154555245524c505265616465723a2042595445535f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b65524c505265616465723a204e554d5f4954454d535f4445434f4445445f4c454e4754485f4d49534d415443484d696e7461626c654552433732315072656469636174653a20455843454544535f42415443485f4c494d4954241ecf16d79d0f8dbfb92cbc07fe17840425976cf0667f022fe9877caa831b084d696e7461626c654552433732315072656469636174653a20494e56414c49445f5245434549564552524c505265616465723a204c4953545f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66524c505265616465723a2055494e545f4445434f4445445f4c454e4754485f4d49534d41544348a164736f6c6343000606000a","storage":{"0x1":"0x63","0x2":"0x1","0x73d5d1a274bdea1400ad3ea4d982f594abdfd528cde1486b6c617faa3ec116":"0x1","0x89011777cfe6194dd982545e7eb24725dfe9a1aacae299c76fc48ef5017ae650":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x89011777cfe6194dd982545e7eb24725dfe9a1aacae299c76fc48ef5017ae651":"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0x1","0xb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6":"0x4d696e7461626c654552433732315072656469636174653a20494e5355464649","0xb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf7":"0x4349454e545f5045524d495353494f4e53000000000000000000000000000000","0xba75a66b8132bebab85d36fd3638083da57ae3d78fbcd8cc41f73514287dadaf":"0x1","0xe6c7d8231a06d7cb67831aeabcbd43ba24e5e4c6569cf23405f1e558de8580e0":"0x2","0xe84508f2c7fa9c351146748b3025cb78b45df37d868e48c6a75102fecdeee645":"0x2","0xe84508f2c7fa9c351146748b3025cb78b45df37d868e48c6a75102fecdeee647":"0x0","0xf0df3dcda05b4fbd9c655cde3d5ceb211e019e72ec816e127a59e7195f2cd7f5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x5cc819c9915eadfcebd76952b8c1bc36cadd7376":{"nonce":2,"balance":"0x0","code":"0x608060405260043610610103575f3560e01c8063a900866b11610092578063f07ec37311610062578063f07ec373146102f7578063f2d12b1214610316578063f47b774014610329578063fb0f3ee114610116578063fd9f1e101461034c575f80fd5b8063a900866b1461028a578063b3a34c4c146102be578063e7acab24146102d1578063ed98a574146102e4575f80fd5b80637423eb3c116100d85780637423eb3c146101f757806379df72bd1461020b57806387201b411461022a578063881477321461024b578063a81744041461026a575f80fd5b801561011657806306fdde031461013e57806346423aa71461015f5780635b34b966146101d5575f80fd5b366101125761011061036b565b005b5f80fd5b610129610124366004615115565b6103f9565b60405190151581526020015b60405180910390f35b348015610149575f80fd5b50610152610408565b604051610135919061518f565b34801561016a575f80fd5b506101b36101793660046151a1565b5f9081526001602052604090205460ff808216926101008304909116916001600160781b03620100008204811692600160881b9092041690565b6040805194151585529215156020850152918301526060820152608001610135565b3480156101e0575f80fd5b506101e9610417565b604051908152602001610135565b348015610202575f80fd5b50610110610420565b348015610216575f80fd5b506101e96102253660046151b8565b6104c1565b61023d61023836600461524c565b6104f8565b6040516101359291906153f0565b348015610256575f80fd5b5061012961026536600461543f565b610571565b61027d61027836600461547d565b61058f565b60405161013591906154e3565b348015610295575f80fd5b506101e96102a43660046154f5565b6001600160a01b03165f9081526002602052604090205490565b6101296102cc36600461550e565b61062a565b6101296102df366004615553565b6106a3565b61023d6102f23660046155d7565b6106e1565b348015610302575f80fd5b506101e96103113660046154f5565b610784565b61027d610324366004615677565b6107a1565b348015610334575f80fd5b5061033d6107ea565b60405161013593929190615719565b348015610357575f80fd5b5061012961036636600461543f565b610801565b7f000000000000000000000000000000000000000000000000000000000000000180156103b357600263929eee145c146103b05763a61be9f05f52346020526024601cfd5b50565b63929eee1454806103e057600263929eee145c146103dc5763a61be9f05f52346020526024601cfd5b5050565b600381146103dc5763a61be9f05f52346020526024601cfd5b5f61040261080c565b92915050565b60606104126109c0565b905090565b5f6104126109d8565b63929eee14546001147f000000000000000000000000000000000000000000000000000000000000000180610453575080155b1561047157604051630f45b98b60e41b815260040160405180910390fd5b61049a7f000000000000000000000000145908bbcfc7b258e4d4d9a586f6e3249ae80216610a45565b6104b7576040516370a4078f60e01b815260040160405180910390fd5b5f63929eee145550565b5f806104cd6004610aa3565b90506104f16104e282610ab35b63ffffffff16565b610140830135610b30565b3590565b9392505050565b60608061055d61051361050b6004610aa3565b610c746104da565b61052a61052260046020610cdc565b610cfa6104da565b61054161053960046040610cdc565b610d526104da565b61055061053960046060610cdc565b89338a15028a0189610daa565b915091509b509b9950505050505050505050565b5f6104f161058a6105826004610aa3565b610de46104da565b610e3c565b606061061f6105a96105a16004610aa3565b610f5d6104da565b604080515f8082526020820190925290610601565b6105ee6040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816105be5790505b5061061961061160046020610cdc565b610fb56104da565b3361100d565b90505b949350505050565b5f6104f161064361063b6004610aa3565b61104b6104da565b604080515f808252602082019092529061069b565b6106886040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816106585790505b5084336110c1565b5f6106d76106bc6106b46004610aa3565b6112406104da565b6106cb61052260046020610cdc565b853386150286016110c1565b9695505050505050565b6060806107736106f46105a16004610aa3565b604080515f808252602082019092529061074c565b6107396040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816107095790505b5061075c61053960046020610cdc565b61076b61053960046040610cdc565b883389610daa565b915091509850989650505050505050565b6001600160a01b0381165f90815260208190526040812054610402565b60606107dc6107b361050b6004610aa3565b6107c261052260046020610cdc565b6107d161061160046040610cdc565b33861502860161100d565b90505b979650505050505050565b60605f806107f661129c565b925092509250909192565b5f6104f183836112e8565b5f61012435600281901c90600316600182118334158214806108315761083134611423565b506003841160a0810260240135906502030203010160d01b861a905f630101020360d01b881a6108648882898888611434565b9096509150506101c4600583901b01355f87600581111561088757610887615329565b036108bc5760443560243517156108a557636ab37ce75f526004601cfd5b6108af8482611751565b6108b7611809565b61099d565b6040805160208082528183019092525f9160208201818036833701905050905060028a60058111156108f0576108f0615329565b036109135761090e60c4356084353360e435610104355b8787611889565b610988565b60038a600581111561092757610927615329565b036109455761090e60c4356084353360e435610104355b87876118d4565b60048a600581111561095957610959615329565b036109735761090e60243533608435604435606435610907565b6109886024353360843560443560643561093e565b610992848261190a565b61099b816119c4565b505b6109a88689846119e8565b6109b0611a5e565b6001995050505050505050505090565b6060602080526707536561706f727460475260606020f35b5f6109e1611ab1565b600143034060801c335f525f60205260405f208054820192508281555050336001600160a01b03167f721c20121297512b72821b97f5326877ea8ecf4bb9948fea5bfcb6453074d37f82604051610a3a91815260200190565b60405180910390a290565b5f816001600160a01b0316600a5a610a5d9190615773565b6040515f8181818686fa925050503d805f8114610a95576040519150601f19603f3d011682016040523d82523d5f602084013e610a9a565b606091505b50909392505050565b5f813563ffffffff168201610402565b5f610ac661016060408051918201905290565b9050610ad58282610140611b28565b610af2610aeb610ae6846040610cdc565b611b31565b6040830152565b5f610b06610b01846060610cdc565b611b84565b9050610b13816060840152565b610b26610b1e825190565b610140840152565b50919050565b0190565b610140820151604080519084015180515f939284927fa66999307ad1bb4fde44d13a5d710bd7718e0c87c1eef68a571629fbf5b93d0292602090910190845b81811015610b9c578251601f1901805186825260c082208652905260209384019390920191600101610b6f565b508060051b6040512094505050505f7f42d81c6929ffdc4eb27a0808e40e82516ad42296c166065de7f812492304ff6e915060405160206060890151015f5b86811015610c08578151601f1901805186825260e082208552905260209283019290910190600101610bdb565b505060408051600587901b9020601f198a0180517ffa445660b7e21515a59617fcd68910b487aa5808b8abda3d78bc85df364b2c2f8252928b01805197815260608c018051938152610140909c019a8b5261018082209390915295909552939097525050925250919050565b5f8063ffffffff8335169050600581901b610c986020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610cca610cc4610cbf8484610cdc565b611240565b82850152565b602001610ca7565b5050505050919050565b5f6104f163ffffffff610cf46104ed8686610b2c8516565b16840190565b5f8063ffffffff8335169050600581901b610d1e6020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610d4a610cc4610d458484610cdc565b611bc7565b602001610d2d565b5f8063ffffffff8335169050600581901b610d766020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610da2610cc4610d9d8484610cdc565b611c09565b602001610d85565b60608036155f80610dbe8c8c85898b611c4c565b91509150610dd18c8b8b8b8b8787612029565b9450945050505097509795505050505050565b5f8063ffffffff8335169050600581901b610e086020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610e34610cc4610e2f8484610cdc565b61215b565b602001610e17565b5f610e45611ab1565b5f805f80855190505f5b81811015610f50575f878281518110610e6a57610e6a615792565b60209081029190910101518051909150600481608001516004811115610e9257610e92615329565b03610e9e575050610f48565b80519450610eab8161219e565b5f8181526001602052604081209850909650610ecd90879089903615156121d7565b50865460ff16610f455780610140015181606001515114610ef057610ef0612265565b610eff85878460200151612272565b865460ff191660011787556040517ff280791efe782edcf06ce15c8f4dff17601db3b88eb3805a0db7d77faf757f0490610f3c9088908490615895565b60405180910390a15b50505b600101610e4f565b5060019695505050505050565b5f8063ffffffff8335169050600581901b610f816020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610fad610cc4610fa88484610cdc565b61104b565b602001610f90565b5f8063ffffffff8335169050600581901b610fd96020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257611005610cc46110008484610cdc565b61230e565b602001610fe8565b60605f36151590505f806110258888858b5189611c4c565b9150915061103282612341565b61103f8887848885612380565b98975050505050505050565b5f61105e61020060408051918201905290565b60a0810180825290915061107a61107484610aa3565b82612453565b61108660016020840152565b61109260016040840152565b6110af6110a86110a3856020610cdc565b612489565b6060840152565b610b266110ba6124b1565b6080840152565b835160808101515f91906110e860048260048111156110e2576110e2615329565b146124cb565b5f80806110f78a36151561256c565b60408051600180825281830190925293965091945092505f9190816020015b61111e615027565b8152602001906001900390816111165790505090508a815f8151811061114657611146615792565b602002602001018190525061115b818b612764565b6111678684848b6128dd565b6040805160018082528183019092525f91602080830190803683375091925050503615156004878181111561119e5761119e615329565b146111c1576111af8d83885f6129dd565b6111bb86868684612a2f565b506111d3565b6111d0888e6080015183612b33565b95505b6111de888c8c612c03565b85825f815181106111f1576111f1615792565b6020026020010181815250506112088d8388612d26565b61122586895f01518a602001518d8c604001518d60600151612df3565b61122d611a5e565b5060019c9b505050505050505050505050565b5f61125361020060408051918201905290565b905061126760208381019083016040611b28565b60a0810180825261127a61107484610aa3565b61128b6110a86110a3856060610cdc565b610b266110ba6110a3856080610cdc565b60605f805f6112a9612e58565b90505f7f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c905060605f5281602052806040526303312e3660635260a05ff35b5f6112f1611ab1565b5f8083815b81811015611408573687878381811061131157611311615792565b90506020028101906113239190615977565b90505f61133360208301836154f5565b90505f61134660408401602085016154f5565b90505f61135960a0850160808601615996565b905081331483331417156004821417871796505f61138d61138261137a8790565b610ab36104da565b866101400135610b30565b5f8181526001602052604090819020805461ffff19166101001781559051909a509091506001600160a01b0380851691908616907f6bacc01dbe442496068f7d234edd811f1a5f833243e0aec824f86ab861f3c90d906113f09085815260200190565b60405180910390a385600101955050505050506112f6565b5050801561141857611418612f35565b506001949350505050565b63a61be9f05f52806020526024601cfd5b5f8061143f5f6124cb565b611447612f42565b426101643511154261014435111715611475576321ccfeb75f5261014435602052610164356040526044601cfd5b610204356102643510156114905763466aa6165f526004601cfd5b7f42d81c6929ffdc4eb27a0808e40e82516ad42296c166065de7f812492304ff6e608081905260a08790526060602460c037604060646101203760e060802061016052610264356102043560051b6102a0016001820181526020810190508881526080602460208301376101608860a0528760c0525f60e0525f6102043593505f5b84811015611566578060400261028401602081610100376040816101203760208101358317925060208401935060e0608020845260a0850194508b85528a6020860152604081606087013750600101611512565b6001850160051b610160206060526102643594505b848110156115b6578060400261028401925060a0840193508a845289602085015260408360608601376020830135919091179060010161157b565b506001600160a01b038111156115d3576339f3e3fd5f526004601cfd5b50505050505f7fa66999307ad1bb4fde44d13a5d710bd7718e0c87c1eef68a571629fbf5b93d029050806080528360a052606060c460c0376020610104610120375060c06080205f9081526020812060e05260843590611647826001600160a01b03165f9081526020819052604090205490565b7ffa445660b7e21515a59617fcd68910b487aa5808b8abda3d78bc85df364b2c2f60808190529091506040608460a03760605161010052896101205260a061014461014037816101e05261018060802094505050506102043560051b61018001828152336020820152608060408201526101206060820152600160808201528360a0820152606060c460c083013760a061026435026101e00160a4356084357f9d9af8e38d66c62e2c12f0225249fd9d721c54b83f48d9352c97c6cacdcb6f318385a35f60605260608101820160405250505f61172383612f8d565b905061172f8389612fde565b7101000000000000000000000000000001000182559150509550959350505050565b60c43560843560e4356101043584156117b9575f6040519050632671a55160e11b815260206004820152600160248201528660448201528460648201528360848201523360a48201528260c48201528160e48201526117b38682610104613033565b50611801565b60028660058111156117cd576117cd615329565b036117f457806001146117e3576117e3816130ea565b6117ef848433856130fb565b611801565b61180184843385856131b0565b505050505050565b346064356084356102643560061b5f80805b8381101561185a5761028481013592506102a481013591508683111561184357611843613287565b82870396506118528284613294565b60400161181b565b508585111561186b5761186b613287565b6118758486613294565b848611156118015761180133868803613294565b61189381836132ca565b816118ba57826001146118a9576118a9836130ea565b6118b5878787876130fb565b6118cb565b6118cb828260028a8a8a8a8a6132e8565b50505050505050565b6118dd83613367565b6118e781836132ca565b816118f9576118b587878787876131b0565b6118cb828260038a8a8a8a8a6132e8565b5f805f805f861561192f57505060843592503391505060c4356101043560e435611944565b50339350506084359150506024356064356044355b801561195257611952613379565b50600586901b6101e403356102643560061b5f80805b838110156119a95761028481013592506102a481013591508a156119935761199083876159b4565b95505b6119a1878a8486898f613386565b604001611968565b506119b886898988888e613386565b50505050505050505050565b60408151146119d05750565b5f6119dc826020015190565b90506103dc81836133bb565b611a048260a4355b331415600182116004909210919091161690565b15611a5957805f611a13825190565b9050608081901c63ffffffff8216611a3484826317b1f94282526001905250565b601c840163fb5014fc6060529350611a5060a4358886856133df565b5f6060526118cb565b505050565b7f00000000000000000000000000000000000000000000000000000000000000018015611a8f575f63929eee145d50565b63929eee145480611aa5575f63929eee145d5050565b50600163929eee145550565b7f00000000000000000000000000000000000000000000000000000000000000018015611af05763929eee145c156103b057637fa8a9875f526004601cfd5b63929eee145480611b135763929eee145c156103dc57637fa8a9875f526004601cfd5b600181146103dc57637fa8a9875f526004601cfd5b80838337505050565b5f63ffffffff8235166040519150808252602082018160051b81018060a084026020870183378293505b81841015611b745780845260209093019260a001611b5b565b60405250919392505050565b9052565b5f63ffffffff8235166040519150808252602082018160051b81018060c084026020870183378293505b81841015611b745780845260209093019260c001611bae565b5f611bd960a060408051918201905290565b9050611be782826080611b28565b611c04611bfd611bf8846080610cdc565b613427565b6080830152565b919050565b5f63ffffffff8235166040519150808252602082018160051b8101808360061b6020870183378293505b81841015611b7457808452602090930192604001611c33565b60605f611c5960016124cb565b86515f90600160e61b82351690806001600160401b03811115611c7e57611c7e61574b565b604051908082528060200260200182016040528015611ca7578160200160208202803683370190505b50945060010160051b91505f60205b83811015611ea8575f611ccc8c83613cce6104da565b90505f805f611cdb848e61256c565b6001600160781b0382166020880152919450925090505f829003611d025750505050611ea0565b6001600160781b0381166040808601919091528a8601849052845160a081015160c0820151608083015192909301518051600184119d909d179c600490931099509092915f5b81811015611dea575f838281518110611d6357611d63615792565b602002602001015190508b8151108d179c505f611d858989846080015161345e565b90508160800151826060015103611da25760608201819052611db7565b611db18989846060015161345e565b60608301525b5f611dd08360600151838a8a611dcb361590565b61349a565b606084018190526080909301929092525050600101611d48565b5087516060015180515f5b81811015611e94575f838281518110611e1057611e10615792565b602002602001015190505f611e2a8b8b846080015161345e565b90508160800151826060015103611e475760608201819052611e5c565b611e568b8b846060015161345e565b60608301525b5f611e718360600151838c8c611dcb36151590565b6060840181905260a0840180516080909501949094529092525050600101611df5565b50505050505050505050505b602001611cb6565b50506001600160e61b018103611ec057611ec06134ed565b50611ecb8888612764565b5f8060205b8381101561200e578581015192508215612006575f611ef28c83613cce6104da565b9050885f03611f0d575f878301819052602090910152612006565b60048151608001516004811115611f2657611f26615329565b14611fa957611f3f8188866001600587901c038e6134fa565b611f55575f878301819052602090910152612006565b602080820151604083015183516080810151930151611f8e9388936001600160781b039081169316913314156001909111168e17612a2f565b611fa4575f878301819052602090910152612006565b611fd4565b611fbb815f015182608001518c612b33565b878301819052935083611fd4575f602090910152612006565b886001900398505f815f01519050611fff85825f015183602001518c85604001518660600151612df3565b6001935050505b602001611ed0565b508061201c5761201c613555565b5050509550959350505050565b85518551606091829161203c81836159c7565b6001600160401b038111156120535761205361574b565b60405190808252806020026020018201604052801561208c57816020015b61207961505a565b8152602001906001900390816120715790505b5092505f5b828110156120e4576120bf8c5f8d84815181106120b0576120b0615792565b60200260200101518c8c613562565b8482815181106120d1576120d1615792565b6020908102919091010152600101612091565b505f5b8181101561213d576121168c60018c848151811061210757612107615792565b60200260200101518c5f613562565b848483018151811061212a5761212a615792565b60209081029190910101526001016120e7565b5061214b8b84888a896135b1565b9350505097509795505050505050565b5f61216c6040808051918201905290565b905061218661218261217d84610aa3565b61389a565b8252565b611c046121976110a3846020610cdc565b6020830152565b5f6121b38260600151518361014001516138b9565b81516001600160a01b03165f90815260208190526040902054610402908390610b30565b82545f90610100900460ff16156121fe5781156121f7576121f7856138c9565b505f610622565b83546201000090046001600160781b0316801561225957831561222957612224866138da565b612259565b8454600160881b90046001600160781b0316811061225957821561225057612250866138eb565b5f915050610622565b50600195945050505050565b632165628a5f526004601cfd5b33831480156122815750505050565b5f61228a612e58565b61190160f01b5f9081526002828152602287815260428320908390528651939450929190601f601d840116106102e260621984011016156122f4576122cf86886138fc565b61190160f01b5f908152600286905260228281526042822091905290975090506122f7565b50815b612304888285858a613992565b5050505050505050565b5f61231f6040808051918201905290565b9050612330612182610d9d84610aa3565b611c04612197610d9d846020610cdc565b80518060051b6040019050602082038051602082527f4b9f2d36e1b4c93de62cc077b00b1a91d84b6c31b4a14e012718dcca230689e78383a190525050565b8351606090806001600160401b0381111561239d5761239d61574b565b6040519080825280602002602001820160405280156123d657816020015b6123c361505a565b8152602001906001900390816123bb5790505b5091505f5b81811015612439575f8782815181106123f6576123f6615792565b6020026020010151905061241389825f0151836020015185613adb565b84838151811061242557612425615792565b6020908102919091010152506001016123db565b5061244787838787876135b1565b50505b95945050505050565b6124608282610160611b28565b612471610aeb610ae6846040610cdc565b6103dc612482610b01846060610cdc565b6060830152565b6040518135601f0163ffffffe01660200180838337913563ffffffff16815290810160405290565b5f6124c3602060408051918201905290565b5f8152905090565b7f000000000000000000000000000000000000000000000000000000000000000180156125185763929eee145c1561250a57637fa8a9875f526004601cfd5b8160010163929eee145d5050565b63929eee14548061254a5763929eee145c1561253b57637fa8a9875f526004601cfd5b8260010163929eee145d505050565b6001811461255f57637fa8a9875f526004601cfd5b505060020163929eee1455565b5f805f80855f015190506125898160a001518260c0015187613c80565b61259c57505f925082915081905061275d565b602086015160408701516001600160781b0391821694501691505f6004826080015160048111156125cf576125cf615329565b036125fc57600183850218905080156125ea576125ea613ca3565b506001935083925082915061275d9050565b50818311831517801561261157612611613ca3565b608082015160011615848411161561262b5761262b613cb0565b6126348261219e565b5f81815260016020526040812091965061265290879083908a6121d7565b61266557505f935083925061275d915050565b805460ff1661268057612680835f0151878a60600151612272565b8054608881901c8061269457869150612757565b6001600160781b038260101c169150600186036126b8578181039650809550612757565b8086036126d357908601858103868211029096039590612757565b80860296810291909502810186810387821102918290039695919003906001600160781b0386111561275757612717565b5f5b8215610b2657908290069190612706565b61272a6127248784612704565b88612704565b8015019687900496909504946001600160781b0386111561275757634e487b715f5260116020526024601cfd5b50505050505b9250925092565b805182515f5b82811015612853575f84828151811061278557612785615792565b602002602001015190505f815f015190508381106127aa576127aa8260200151613cbd565b5f8782815181106127bd576127bd615792565b6020026020010151905080602001516001600160781b03165f036127e35750505061284b565b80516040808201519085015163bfb3f8ce5f8760200151600181111561280b5761280b615329565b14612827575f61281c856060613cce565b9350636088d7de9150505b8251821061283857805f526004601cfd5b612843838389613cd9565b505050505050505b60010161276a565b505f5b818110156128d6575f85828151811061287157612871615792565b6020026020010151905080602001516001600160781b03165f0361289557506128ce565b8051608081015160608201516128b29085908363a8930e9a613d8c565b6128ca8483604001518363d69293326104da613d8c90565b5050505b600101612856565b5050505050565b60a084015160c08501516040860151515f805b8281101561295a575f8960400151828151811061290f5761290f615792565b602002602001015190505f815f01519050801584179350505f612946826060015183608001518c8c8b8b612941361590565b613df3565b6060830152506080018690526001016128f0565b5060808801516004811082168015612974576129746134ed565b505050506060860151515f5b81811015612304575f8860600151828151811061299f5761299f615792565b602002602001015190505f6129c4826060015183608001518b8b8a8a61294136151590565b60608301525060a0810151608090910152600101612980565b8351608081015160208201513314156001821160049092109190911616156128d6575f80612a12858489608001518988613e2e565b63fb5014fc6060529092509050611a5083602001518684846133df565b5f848152600160205260408120805482908290608881901c80612a5457889150612adc565b6001600160781b038260101c169150808803612a7857908801878111935090612adc565b97880297808802979190910288018781119350906001600160781b038083119089111715612adc57612aaa8883612704565b8015019788900497909104906001600160781b038083119089111715612adc57634e487b715f5260116020526024601cfd5b508215612b15578515612b09576040516310fda3e160e01b8152600481018a905260240160405180910390fd5b5f945050505050610622565b8660881b8160101b1760011782556001945050505050949350505050565b5f83610140015184606001515114612b4d57612b4d612265565b83515f8080612b5c8888613fac565b915091505f8082845f885af16001600160a01b0385165f908152600260205260409020805460018101909155606086901b189550925082612bbb578515612bae57612ba5614056565b612bae8561409d565b505f93506104f192505050565b505050505f805f612bd8876040015188606001516104da6140ae90565b925092509250825f14612bee57612bee8461409d565b60408701919091526060860152509392505050565b6040805160208082528183019092525f916020820181803683375050506040850151519091505f5b81811015612c7b575f86604001518281518110612c4a57612c4a615792565b60200260200101519050846080820152612c7281885f0151896101200151876104da61432790565b50600101612c2b565b50506060840151515f90815b81811015612d09575f87606001518281518110612ca657612ca6615792565b602002602001015190505f6005811115612cc257612cc2615329565b81516005811115612cd557612cd5615329565b03612cf1574793508381606001511115612cf157612cf1613287565b612d00813389886143276104da565b50600101612c87565b5050612d14826119c4565b504780156128d6576128d63382613294565b8251608081015160208201515f92839283928392916004811060019091111633909114151615612d8857612d69612d6361010083015190565b5190565b8861441c565b9093509150612d7a60208201612d5f565b945063fb5014fc9350612dd4565b600481608001516004811115612da057612da0615329565b0361230457805194505f8560601b9050612dc187838b608001518b8561445d565b639397928596509094509250612dd49050565b612dde6060859052565b612dea858785856133df565b5f606052612304565b60608290506060829050856001600160a01b0316876001600160a01b03167f9d9af8e38d66c62e2c12f0225249fd9d721c54b83f48d9352c97c6cacdcb6f318a888686604051612e469493929190615a13565b60405180910390a35050505050505050565b5f7f00000000000000000000000000000000000000000000000000000000000005394614612f10575060408051608080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f5f9081527f32b5c112df393a49218d7552f96b2eeb829dfb4272f4f24eef510a586b85feef6020527f95f740a33d720b7cd93c75d515ac95ca3bbaa2594cce46ea48e00974ea8fcd14855246606090815230845260a08220949095529093529190915290565b507f8bebed3dbe91a82da0dc94c8d370c160ad6db1b32164303e65b8544bae7e2f5590565b63fed398fc5f526004601cfd5b600435602014610224356102401416610244356102606102643560061b01141660186101243510600160a01b60843560a4351760c4356024351717101616806103b0576103b0614528565b5f8181526001602081905260409091209060843590612fb290849084903615156121d7565b50815460ff16610b2657610b268184612fd9602463ffffffff6102443516016124896104da565b612272565b5f612feb8260a4356119f0565b15610402575f805f612ffc86614535565b63fb5014fc6060529194509250905061301c60a43587601c8601856133df565b5f60605260209190910160801b1781529392505050565b604080517f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c60ff60a01b175f90815260208690527f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f83526055600b20919092526001600160a01b031690505f805f805260205f85875f875af191505f519050816130c8576130bf614056565b6130c8836145ed565b6001600160e01b03198116632671a55160e11b146118015761180186846145fe565b6369f958275f52806020526024601cfd5b833b61311257635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af1806131a2573d1561318057601f3d0160051c8260051c8160030281831115613169578183036003028280028480020360091c01015b5a60208201101561317c573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b6131c757635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af18061326c573d1561324b57601f3d0160051c8560051c8160030281831115613234578183036003028280028480020360091c01015b5a602082011015613247573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b638ffff9805f526004601cfd5b61329d81613367565b5f805f805f85875af1905080611a59576132b5614056565b63bc806b965f5282602052816040526044601cfd5b5f6132d6836020015190565b9050818114611a5957611a59836119c4565b5f60208851036133225750604080885260208089018a9052632671a55160e11b918901919091526044880152600160648801819052613331565b50606487018051600101908190525b603c60c082028901038781528660208201528560408201528460608201528360808201528260a082015250505050505050505050565b806103b0576391b3e5145f526004601cfd5b636ab37ce75f526004601cfd5b61338f83613367565b61339981836132ca565b816133aa576117ef86868686614613565b611801828260018989895f8a6132e8565b6064810151604082019060c0026044016133d6848383613033565b50506020905250565b5f806001600160e01b03198451165f805260205f85875f8b5af15f51909350149050816134185761340e614056565b846080526024607cfd5b8061180157846080526024607cfd5b5f8063ffffffff83351690506001810160051b61344a8160408051918201905290565b9250613457848483611b28565b5050919050565b5f82840361346d5750806104f1565b82848309156134835763c63cf0895f526004601cfd5b5f61348e8584615aaf565b93909304949350505050565b5f8486146134e357838303428590038082035f6134b7838a615aaf565b6134c1838c615aaf565b6134cb91906159c7565b9050858487830304018115150294505050505061244a565b5092949350505050565b6312d3f5a35f526004601cfd5b8451608081015160208201515f92916004811060019091111633909114151615610f50575f8061353187848b608001518b8a613e2e565b9150915061354b836020015188848463fb5014fc8a614707565b935050505061244a565b63d5da9a1b5f526004601cfd5b61356a61505a565b83515f0361357b5761357b85614774565b5f85600181111561358e5761358e615329565b036135a45761359f86858385614785565b61244a565b61244a86858333876148f5565b84516060905f816001600160401b038111156135cf576135cf61574b565b6040519080825280602002602001820160405280156135f8578160200160208202803683370190505b506040805160208082528183019092529192505f9190602082018180368337505089519192505060010160051b60205b81811015613687575f61363e8b83613cce6104da565b8051606081015191925090801561367c57478111825115161561366857638ffff9805f526004601cfd5b61367c828460200151856040015189614327565b505050602001613628565b50505f5b838110156137f3575f8a82815181106136a6576136a6615792565b6020026020010151905080602001516001600160781b03165f036136ed575f8483815181106136d7576136d7615792565b91151560209283029190910190910152506137eb565b600184838151811061370157613701615792565b911515602092830291909101909101528051604081015180515f5b81811015613786575f83828151811061373757613737615792565b6020026020010151905080606001515f1461377357608081018051908e9052855161012087015161376d9184918c6143276104da565b60808201525b608081015160609091015260010161371c565b505050606081015180515f5b818110156137e5575f8382815181106137ad576137ad615792565b602002602001015190505f81606001519050805f146137d1576137d1888483614a2c565b5060a0810151606090910152600101613792565b50505050505b60010161368b565b506137fd816119c4565b47801561380e5761380e3382613294565b8515613884575f5b848110156138825783818151811061383057613830615792565b60200260200101511561387a5761387a8b828151811061385257613852615792565b60200260200101518a8b848151811061386d5761386d615792565b6020026020010151612d26565b600101613816565b505b61388c611a5e565b509098975050505050505050565b5f6138ad61016060408051918201905290565b9050611c048282612453565b808210156103dc576103dc614a45565b631a5155745f52806020526024601cfd5b63ee9e0e635f52806020526024601cfd5b6310fda3e15f52806020526024601cfd5b5f805f84516001811660410380820360051c9250808752806020018701915050805160e81c6003820191506001811660051b868152825160208218525060015b838110156139685760405f2082821c60051b60209081169182529384018051919094185260010161393c565b50505060405f2091505f61397b82614a52565b5f9081526020939093525050604090209392505050565b5f805f528151602083038051826041035f600182116139f557604087015160608801515f1a83156139d657601b8260ff1c0190506001600160ff1b03821660408a01525b88528a855260205f60808760015afa508385528588526040880152505f515b8a148a1515169450849050613abe57858552604082526044850380516040870351630b135d3f60e11b835289604089035260205f60648b01858f5afa96508615613ab257630b135d3f60e11b5f5114613ab2578b3b15613a5c57634f7fb80d5f526004601cfd5b6001866041031115613a7557638baa579f5f526004601cfd5b64010100000060608901515f1a1a15604187141615613aa557631f003d0a5f5260608801515f1a6020526024601cfd5b63815e1d645f526004601cfd5b8385529152603f198601525b5050508061180157613ace614056565b634f7fb80d5f526004601cfd5b613ae361505a565b8251158451151715613afc576398e9db6e5f526004601cfd5b613b0461505a565b613b118685835f806148f5565b805160608101515f03613b2657509050610622565b613b368787858460800151614785565b82516040828101519082015160208085015190840151855185511891181791181715613b6d5763bced929d5f52846020526024601cfd5b806060015182606001511115613bf4575f865f81518110613b9057613b90615792565b60200260200101519050816060015183606001510389825f015181518110613bba57613bba615792565b60200260200101515f015160600151826020015181518110613bde57613bde615792565b6020026020010151606001818152505050613c75565b5f875f81518110613c0757613c07615792565b60200260200101519050826060015182606001510389825f015181518110613c3157613c31615792565b60200260200101515f015160400151826020015181518110613c5557613c55615792565b602002602001015160600181815250508260600151826060018181525050505b505050949350505050565b428084111590831116818015613c94575080155b156104f1576104f18484614e61565b635a052b325f526004601cfd5b63a11b63ff5f526004601cfd5b63133c37c65f52806020526024601cfd5b5f6104f18284015190565b5f838381518110613cec57613cec615792565b602002602001015190505f815f01519050613d078160031090565b613d1357613d13614e76565b60408201518015613d3657613d318460600151828660800151614e83565b613d49565b60808401515115613d4957613d49614ecd565b6004821460030383816005811115613d6357613d63615329565b90816005811115613d7657613d76615329565b9052505050606090920151604090910152505050565b82515f5b81811015611801575f858281518110613dab57613dab615792565b60209081029190910101518051604082015191925090600382116004881415821515171615613de557855f5288602052836040526044601cfd5b505050806001019050613d90565b5f868803613e0d57613e0686868961345e565b90506107df565b6107dc613e1b87878b61345e565b613e2688888b61345e565b86868661349a565b5f805f613e39614eda565b6301e4d72a815260208082015260408101898152336060830152601c820194509091508751604082015287613e79613e7260a083015190565b60e0840152565b613e8f613e8760c083015190565b610100840152565b613ea5613e9d60e083015190565b610120840152565b610140613eb3816060850152565b5f613ebf604084015190565b90505f613ece82848701614ee4565b928301929050613edf836080870152565b5f613eeb606086015190565b90505f613efa82868901614f4a565b948501949050613f0b8560a0890152565b5f613f188e878a01614faf565b959095019450613f298560c0890152565b8685015f613f378e83614fce565b602497019687019a50613f539050613f4e8c8c0190565b614ffe565b8060408b901b60808b901b17178f610100018181525050613f7d8c82611b8090919063ffffffff16565b60058c8e51613f8c91906159b4565b613f97911b8b6159b4565b99505050505050505050509550959350505050565b5f8083613fb7614eda565b639891976581523360208201908152608060408301819052601c9092019450905f613fe3604085015190565b90505f613ff282848601614ee4565b928301929050614003836040860152565b5f61400f606087015190565b90505f61401e82868801614ee4565b94850194905061402f856060880152565b895f61403d82898901614faf565b9a9d96909a016004019b50949950505050505050505050565b3d1561409b57601f3d0160051c60405160051c8160030281831115614088578183036003028280028480020360091c01015b5a602082011015611a59573d5f803e3d5ffd5b565b63939792855f52806020526024601cfd5b60603d105f8080808080866141205760405f803e5f51935060205192503d60208501113d60208501118082179850505086614120576020845f3e5f51915060208360203e60205190508160071b60208501018160a0026020850101803d10823d101761ffff8486171117985050505f80525b86614152575f8061413584602088018d61415b565b9250975061414783602087018c61423b565b929092179850909550505b5050505061275d565b5f806040519150825160c08602602001830160405285835260208660010160051b8085018360010160051b8701614199858b81811090829003020190565b60010160051b8a861196505b808510156141f957828589015260808a843e6060830151955085608084015260608201518681116141d685856142e2565b17881797505060808a01995060a08301925060a0820191506020850194506141a5565b50505b8183101561422f578083870152608088823e6060810151608082015260808801975060a0810190506020830192506141fc565b50505050935093915050565b604051815180851190808603818710028101602060e08202850181016040528185526001928301600590811b87019390920190911b908185015b8282101561422f57808287015260a088823e60206060890160a083013e606081015160608501516142b26080840151608088015180159114171590565b818311176142c084886142e2565b60a09b909b019a179690961795505060c0938401936020929092019101614275565b5f81516040830151801560038311161561430457506040840151600119909101905b604085015181148551831460208701516020870151141616159250505092915050565b5f8451600581111561433b5761433b615329565b0361437857604084015160208501516001600160a01b0316171561436157614361613379565b61437384608001518560600151613294565b614416565b60018451600581111561438d5761438d615329565b036143be576040840151156143a4576143a4613379565b614373846020015184866080015187606001518686613386565b6002845160058111156143d3576143d3615329565b036143f7576143738460200151848660800151876040015188606001518787611889565b61441684602001518486608001518760400151886060015187876118d4565b50505050565b608082901c63ffffffff604084901c811690808516906144449084906317b1f94290611b8016565b601c830192506144548482614fce565b50509250929050565b5f80614467614eda565b63f4dd92ce815287841860a0820152601c8101925060200160a0808252875f614491604083015190565b90505f6144a082858701614ee4565b9384019390506144b1846020870152565b5f6144bd606085015190565b90505f6144cc82878901614f4a565b9586019590506144dd866040890152565b5f6144ea8d888a01614faf565b9687019690506144fb8760608a0152565b5f6145088d898b01614fce565b905080880197508760040199505050505050505050509550959350505050565b6339f3e3fd5f526004601cfd5b6301e4d72a6102043560051b6080019081525f808260208082015260408101858152336060830152601c919091019061456f608435610aeb565b61458061014460e083016060611b28565b61014061458e816060840152565b61459c60a082016080840152565b61016060a06102643581029290920101906145b8908290840152565b6145c25f82840152565b6020016145d08160c0840152565b5f9181019182526020820196909652939560449095019492505050565b63d13d53d45f52806020526024601cfd5b631cf99b265f5281602052806040526044601cfd5b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166146f85780873b1515166146f857806146e757816146ca573d156146a957601f3d0160051c8360051c8160030281831115614692578183036003028280028480020360091c01015b5a6020820110156146a5573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b5f805f6001600160e01b03198751165f805260205f888a5f8e5af15f5190935014905081614753578361473e575f925050506106d7565b614746614056565b845f52876020526024601cfd5b8061476557845f52876020526024601cfd5b50600198975050505050505050565b63375c24c15f52806020526024601cfd5b5f805f85865160051b87015b808210156148a2576020820191508851825151106147b1576147b16148d6565b81515160051b60208a01015180516020845101515f6040830151602085015115815184101517156147e6575050505050614791565b8260051b60208201015191505060608101935083518901915083511589831060011b17881797508198505f84528a51935086156001811461484f5760608220881860408d01516101208601511860208e015186511817171561484a5761484a6148d6565b614898565b8151855260208201516020860152604082015160408601528a6080860152835160208d015261012084015160408d015260608520975060208d0192508683181561489857865183525b5050505050614791565b5050508160608551015280156148cf57600181036148c7576391b3e5145f526004601cfd5b6148cf6148e3565b5050614416565b637fda72795f526004601cfd5b634e487b715f5260116020526024601cfd5b5f805f86875160051b88015b808210156149f7576020820191508151518a518110614922576149226148d6565b8060051b60208c01015190506020835101515f606083510151602084015115815184101517156149555750505050614901565b8260051b60208201015191505060608101925082518801915082511588831060011b17871796508197505f83528a5192508515600181146149a75760a0822087146149a2576149a26148d6565b6149ee565b815184526020820151602085015260408201516040850152608082015160808501528a60208d01528960408d015260a08220965060208d019250858318156149ee57855183525b50505050614901565b50508551606001839052508015614a255760018103614a1d576391b3e5145f526004601cfd5b614a256148e3565b50506128d6565b63a5f542085f528260205281604052806060526064601cfd5b63466aa6165f526004601cfd5b5f614e58565b5f6009821015614bb1576005821015614b0e576003821015614ac1577f832c58a5b611aadcfa6a082ac9d04bace53d8278387f10040347b7e98eb5b30260018314027fbf8e29b89f29ed9b529c154a63038ffca562f8d7cd1e2545dda53a1b582dde3018610402565b7ff3e8417a785f980bdaf134fa0274a6bf891eeb8195cd94b09d2aa651046e28bc60038314027fa02eb7ff164c884e5e2c336dc85f81c6a93329d8e9adf214b32729b894de2af118610402565b6007821015614b64577f25d02425402d882d211a7ab774c0ed6eca048c4d03d9af40132475744753b2a360058314027f1c19f71958cdd8f081b4c31f7caf5c010b29d12950be2fa1c95070dc47e30b5518610402565b7fb58d772fb09b426b9dece637f61ca9065f2b994f1464b51e9207f55f7c8f594860078314027f7ff98d9d4e55d876c5cfac10b43c04039522f3ddfb0ea9bfe70c68cfb5c7cc1418610402565b6011821015614d0957600d821015614c6657600b821015614c19577f6f0ec38c21f6f583ab7f3c5413c773ffd5344c34fde1d390958e438bf667448f60098314027fd1d97d1ef5eaa37a4ee5fbf234e6f6d64eb511eb562221cd7edfbdde0848da0518610402565b7f32f4e7485d6485f9f6c255929b9905c62ba919758bbe231f231eaeecf33d810c600b8314027fbb98d87cc12922b83759626c5f07d72266da9702d19ffad6a514c73a89002f5f18610402565b600f821015614cbc577f8df51df98847160517f5b1186b4bc3f418d98b8a7f17f1292f392d79d600d79e600d8314027f6b5b04cbae4fcb1a9d78e7b2dfc51a36933d023cf6e347e03d517b472a85259018610402565b7fcc4886e37eedd9aacd6c1c2c9247197a621a71282e87a7cbc673f3736d9aa141600f8314027f1da3eed3ecef6ebaa6e5023c057ec2c75150693fd0dac5c90f4a142f9879fde818610402565b6015821015614db5576013821015614d68577f2d7a3ed6dab270fdb8e054b2ad525f0ce2a8b89cc76c17f0965434740f673a5560118314027fc3939feff011e53ab8c35ca3370aad54c5df1fc2938cd62543174fa6e7d8587718610402565b7f54b3212a178782f104e0d514b41a9a5c4ca9c980bf6597c3cecbf280917e202a60138314027f5a4f867d3d458dabecad65f6201ceeaba0096df2d0c491cc32e6ea4e6435001718610402565b6017821015614e0b577fbb40bf8cea3a5a716e2b6eb08bbdac8ec159f82f380783db3c56904f15a43d0460158314027f3bd8cff538aba49a9c374c806d277181e9651624b3e31111bc0624574f8bca1d18610402565b7f403be09941a31d05cfc2f896505811353d45d38743288b016630cce39435476a60178314027f1d51df90cba8de7637ca3e8fe1e3511d1dc2f23487d05dbdecb781860c21ac1c18610402565b61040282614a58565b6321ccfeb75f5281602052806040526044601cfd5b6394eb6af65f526004601cfd5b5f835f5260205f2060208301835160051b81015b80821015614ebe57815180841160051b93845260209384185260405f209290910190614e97565b50508314905080614416576144165b6309bde3395f526004601cfd5b5f61041260405190565b5f825180835260208401602084018260051b82015b80831015614f375782518051835260208101516020840152604081015160408401526060810151606084015250602083019250608082019150614ef9565b5050508060071b60200191505092915050565b5f80614f54845190565b8084529050602084810190600583901b860181019085015b82821115614f9c575f614f7e84615008565b9050614f8c818360a0615011565b506020929092019160a001614f6c565b60a0840260200194505050505092915050565b5f63ffffffe0603f614fbf855190565b01169050610402838383615011565b5f80614fd8845190565b8084529050600581901b614ff3602086810190860183615011565b602001949350505050565b6103b06040829052565b5f610402825190565b8082828560045afa80153d151715614416575f80fd5b6040518060a0016040528061503a61509c565b81525f602082018190526040820152606080820181905260809091015290565b60408051610100810182525f606082018181526080830182905260a0830182905260c0830182905260e083018290528252602082018190529181019190915290565b6040518061016001604052805f6001600160a01b031681526020015f6001600160a01b0316815260200160608152602001606081526020015f60048111156150e6576150e6615329565b81525f6020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b5f60208284031215615125575f80fd5b81356001600160401b0381111561513a575f80fd5b820161024081850312156104f1575f80fd5b5f81518084525f5b8181101561517057602081850181015186830182015201615154565b505f602082860101526020601f19601f83011685010191505092915050565b602081525f6104f1602083018461514c565b5f602082840312156151b1575f80fd5b5035919050565b5f602082840312156151c8575f80fd5b81356001600160401b038111156151dd575f80fd5b820161016081850312156104f1575f80fd5b5f8083601f8401126151ff575f80fd5b5081356001600160401b03811115615215575f80fd5b6020830191508360208260051b850101111561522f575f80fd5b9250929050565b80356001600160a01b0381168114611c04575f80fd5b5f805f805f805f805f805f60e08c8e031215615266575f80fd5b6001600160401b03808d35111561527b575f80fd5b6152888e8e358f016151ef565b909c509a5060208d013581101561529d575f80fd5b6152ad8e60208f01358f016151ef565b909a50985060408d01358110156152c2575f80fd5b6152d28e60408f01358f016151ef565b909850965060608d01358110156152e7575f80fd5b506152f88d60608e01358e016151ef565b909550935060808c0135925061531060a08d01615236565b915060c08c013590509295989b509295989b9093969950565b634e487b7160e01b5f52602160045260245ffd5b60068110611b8057611b80615329565b61535882825161533d565b6020818101516001600160a01b0390811691840191909152604080830151908401526060808301519084015260809182015116910152565b5f815180845260208085019450602084015f5b838110156153e55781516153b888825161534d565b808401516001600160a01b031660a08901526040015160c088015260e090960195908201906001016153a3565b509495945050505050565b604080825283519082018190525f906020906060840190828701845b8281101561542a57815115158452928401929084019060010161540c565b50505083810360208501526106d78186615390565b5f8060208385031215615450575f80fd5b82356001600160401b03811115615465575f80fd5b615471858286016151ef565b90969095509350505050565b5f805f8060408587031215615490575f80fd5b84356001600160401b03808211156154a6575f80fd5b6154b2888389016151ef565b909650945060208701359150808211156154ca575f80fd5b506154d7878288016151ef565b95989497509550505050565b602081525f6104f16020830184615390565b5f60208284031215615505575f80fd5b6104f182615236565b5f806040838503121561551f575f80fd5b82356001600160401b03811115615534575f80fd5b830160408186031215615545575f80fd5b946020939093013593505050565b5f805f805f60808688031215615567575f80fd5b85356001600160401b038082111561557d575f80fd5b9087019060a0828a031215615590575f80fd5b909550602087013590808211156155a5575f80fd5b506155b2888289016151ef565b909550935050604086013591506155cb60608701615236565b90509295509295909350565b5f805f805f805f8060a0898b0312156155ee575f80fd5b88356001600160401b0380821115615604575f80fd5b6156108c838d016151ef565b909a50985060208b0135915080821115615628575f80fd5b6156348c838d016151ef565b909850965060408b013591508082111561564c575f80fd5b506156598b828c016151ef565b999c989b509699959896976060870135966080013595509350505050565b5f805f805f805f6080888a03121561568d575f80fd5b87356001600160401b03808211156156a3575f80fd5b6156af8b838c016151ef565b909950975060208a01359150808211156156c7575f80fd5b6156d38b838c016151ef565b909750955060408a01359150808211156156eb575f80fd5b506156f88a828b016151ef565b909450925061570b905060608901615236565b905092959891949750929550565b606081525f61572b606083018661514c565b6020830194909452506001600160a01b0391909116604090910152919050565b634e487b7160e01b5f52604160045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b5f8261578d57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f815180845260208085019450602084015f5b838110156153e55781516157ce88825161533d565b838101516001600160a01b03168885015260408082015190890152606080820151908901526080908101519088015260a090960195908201906001016157b9565b5f815180845260208085019450602084015f5b838110156153e557815161583788825161533d565b808401516001600160a01b0390811689860152604080830151908a0152606080830151908a0152608080830151908a015260a091820151169088015260c09096019590820190600101615822565b60058110611b8057611b80615329565b828152604060208201526158b56040820183516001600160a01b03169052565b5f60208301516158d060608401826001600160a01b03169052565b5060408301516101608060808501526158ed6101a08501836157a6565b91506060850151603f198584030160a086015261590a838261580f565b925050608085015161591f60c0860182615885565b5060a085015160e085015260c0850151610100818187015260e0870151915061012082818801528188015192506101409150828288015280880151848801525080870151610180870152505050809150509392505050565b5f823561015e1983360301811261598c575f80fd5b9190910192915050565b5f602082840312156159a6575f80fd5b8135600581106104f1575f80fd5b818103818111156104025761040261575f565b808201808211156104025761040261575f565b5f815180845260208085019450602084015f5b838110156153e557615a0087835161534d565b60a09690960195908201906001016159ed565b5f6080808301878452602060018060a01b03808916602087015260406080604088015283895180865260a08901915060208b0195505f5b81811015615a8b578651615a5f84825161533d565b808701518616848801528481015185850152606090810151908401529585019591870191600101615a4a565b50508781036060890152615a9f818a6159da565b9c9b505050505050505050505050565b80820281158282048414176104025761040261575f56fea164736f6c6343000818000a","storage":{}},"0x6265cc8d1b28edfd4d76c80bf774c0d446fffbde":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610090575f3560e01c80633f15457f116100635780633f15457f1461010f5780637adbf973146101225780637dc0d1d0146101355780638bbedf7514610147578063be27b22c1461015a575f80fd5b806301ffc9a7146100945780631ecfc411146100bc578063224199c2146100d157806330349ebe146100e4575b5f80fd5b6100a76100a23660046115b1565b61016d565b60405190151581526020015b60405180910390f35b6100cf6100ca3660046115ef565b6101a3565b005b6100cf6100df3660046117e0565b6102de565b6002546100f7906001600160a01b031681565b6040516001600160a01b0390911681526020016100b3565b6001546100f7906001600160a01b031681565b6100cf6101303660046115ef565b61063c565b5f546100f7906001600160a01b031681565b6100cf610155366004611889565b61076d565b6100cf61016836600461190b565b6107f1565b5f6001600160e01b031982166301ffc9a760e01b148061019d57506001600160e01b031982166317d8f49b60e01b145b92915050565b6001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa1580156101ea573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061020e919061196b565b90505f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561024d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610271919061196b565b9050336001600160a01b03821614610287575f80fd5b600280546001600160a01b0319166001600160a01b0385169081179091556040519081527f9176b7f47e4504df5e5516c99d90d82ac7cbd49cc77e7f22ba2ac2f2e3a3eba8906020015b60405180910390a1505050565b5f546040516321ae60b160e11b81526001600160a01b039091169063435cc1629061030f90879087906004016119d3565b5f604051808303815f875af115801561032a573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526103519190810190611a6b565b92505f805f610360888761088b565b91945092509050336001600160a01b038216146103da5760405162461bcd60e51b815260206004820152602d60248201527f4f6e6c79206f776e65722063616e2063616c6c2070726f7665416e64436c616960448201526c36abb4ba342932b9b7b63b32b960991b60648201526084015b60405180910390fd5b6001600160a01b038416156105bb576001600160a01b03851661044e5760405162461bcd60e51b815260206004820152602660248201527f43616e6e6f74207365742061646472206966207265736f6c766572206973206e6044820152651bdd081cd95d60d21b60648201526084016103d1565b6001546040516305ef2c7f60e41b815260048101859052602481018490523060448201526001600160a01b0387811660648301525f608483015290911690635ef2c7f09060a4015f604051808303815f87803b1580156104ac575f80fd5b505af11580156104be573d5f803e3d5ffd5b505050505f83836040516020016104df929190918252602082015260400190565b60408051808303601f1901815290829052805160209091012062d5fa2b60e81b8252600482018190526001600160a01b03878116602484015290925087169063d5fa2b00906044015f604051808303815f87803b15801561053e575f80fd5b505af1158015610550573d5f803e3d5ffd5b5050600154604051635b0fc9c360e01b8152600481018590526001600160a01b0386811660248301529091169250635b0fc9c391506044015f604051808303815f87803b15801561059f575f80fd5b505af11580156105b1573d5f803e3d5ffd5b5050505050610632565b6001546040516305ef2c7f60e41b815260048101859052602481018490526001600160a01b03838116604483015287811660648301525f608483015290911690635ef2c7f09060a4015f604051808303815f87803b15801561061b575f80fd5b505af115801561062d573d5f803e3d5ffd5b505050505b5050505050505050565b6001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa158015610683573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106a7919061196b565b90505f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106e6573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061070a919061196b565b9050336001600160a01b03821614610720575f80fd5b5f80546001600160a01b0319166001600160a01b0385169081179091556040519081527fb3eacd0e351fafdfefdec84e1cd19679b38dbcd63ea7c2c24da17fd2bc3b3c0e906020016102d1565b5f546040516321ae60b160e11b81526001600160a01b039091169063435cc1629061079e90859085906004016119d3565b5f604051808303815f875af11580156107b9573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526107e09190810190611a6b565b90506107ec83826107f1565b505050565b5f805f6107fe858561088b565b6001546040516306ab592360e01b815260048101859052602481018490526001600160a01b03808416604483015294975092955090935091909116906306ab5923906064016020604051808303815f875af115801561085f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108839190611add565b505050505050565b5f8080806108998682610a40565b60ff1690506108aa86600183610a63565b92505f6108dc6108bb836001611b08565b6001848a516108ca9190611b1b565b6108d49190611b1b565b899190610a85565b6002546040516327c482cf60e11b81529192506001600160a01b031690634f89059e9061090d908490600401611b2e565b602060405180830381865afa158015610928573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061094c9190611b40565b6109a45760405162461bcd60e51b815260206004820152602360248201527f506172656e74206e616d65206d7573742062652061207075626c6963207375666044820152620ccd2f60eb1b60648201526084016103d1565b6109ae815f610b05565b5f549095506109c7906001600160a01b03168888610de3565b5060408051602081018890529081018690529093506001600160a01b03841690606001604051602081830303815290604052805190602001207fa2e66ce20e6fb2c4f61339c364ad79f15160cf5307230c8bc4d628adbca2ba3989604051610a2f9190611b2e565b60405180910390a350509250925092565b5f828281518110610a5357610a53611b5f565b016020015160f81c905092915050565b82515f90610a718385611b08565b1115610a7b575f80fd5b5091016020012090565b8251606090610a948385611b08565b1115610a9e575f80fd5b5f8267ffffffffffffffff811115610ab857610ab861160a565b6040519080825280601f01601f191660200182016040528015610ae2576020820181803683370190505b50905060208082019086860101610afa82828761100b565b509095945050505050565b5f80610b118484610a40565b60ff169050805f03610b2657505f905061019d565b5f610b4585610b358487611b08565b610b40906001611b08565b610b05565b90505f610b5e610b56866001611b08565b879085610a63565b604080516020810185905290810182905290915060600160408051808303601f190181529082905280516020909101206001546302571be360e01b8352600483018290529095505f916001600160a01b03909116906302571be390602401602060405180830381865afa158015610bd7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bfb919061196b565b90506001600160a01b0381161580610c1b57506001600160a01b03811630145b610c7a5760405162461bcd60e51b815260206004820152602a60248201527f43616e6e6f7420656e61626c652061206e616d65206f776e656420627920736f6044820152696d656f6e6520656c736560b01b60648201526084016103d1565b6001600160a01b0381163014610dd95782610d5e576001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa158015610cd6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cfa919061196b565b60405163232e3b3b60e21b8152600481018590523060248201529091506001600160a01b03821690638cb8ecec906044015f604051808303815f87803b158015610d42575f80fd5b505af1158015610d54573d5f803e3d5ffd5b5050505050610dd9565b6001546040516306ab592360e01b815260048101859052602481018490523060448201526001600160a01b03909116906306ab5923906064016020604051808303815f875af1158015610db3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610dd79190611add565b505b5050505092915050565b5f80610e016040518060400160405280606081526020015f81525090565b610e1985516005610e129190611b08565b8290611060565b50604080518082019091526005815264045f656e7360d81b6020820152610e419082906110c3565b50610e4c81866110c3565b50805160405163021e646f60e21b81525f9182916001600160a01b038a169163087991bc91610e8091601091600401611b73565b606060405180830381865afa158015610e9b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ebf9190611ba7565b93509150506bffffffffffffffffffffffff198216158015610ee057508551155b15610ef3575f8094509450505050611003565b855160208701206bffffffffffffffffffffffff19838116911614610f16575f80fd5b5f610f2187826110ef565b90505b80515160208201511015610ff857610f4b816080015183610f459190611bfc565b4261114a565b610fbd5760405162461bcd60e51b815260206004820152603c60248201527f444e53207265636f7264206973207374616c653b2072656672657368206f722060448201527f64656c657465206974206265666f72652070726f63656564696e672e0000000060648201526084016103d1565b5f80610fcd898460a00151611162565b925090508115610fe857965060019550611003945050505050565b5050610ff3816111d1565b610f24565b505f80945094505050505b935093915050565b602081106110435781518352611022602084611b08565b925061102f602083611b08565b915061103c602082611b1b565b905061100b565b905182516020929092036101000a5f190180199091169116179052565b60408051808201909152606081525f602082015261107f602083611c20565b156110a75761108f602083611c20565b61109a906020611b1b565b6110a49083611b08565b91505b506020828101829052604080518085525f815290920101905290565b60408051808201909152606081525f60208201526110e883845f0151518485516112b6565b9392505050565b6111376040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261019d816111d1565b5f806111568385611c3f565b60030b12159392505050565b5f805b83518310156111c4575f6111798585610a40565b60ff169050611189600185611b08565b93505f8061119887878561139c565b9250905081156111b0579350600192506111ca915050565b6111ba8387611b08565b9550505050611165565b505f9050805b9250929050565b60c081015160208201819052815151116111e85750565b5f6111fa825f015183602001516113f5565b82602001516112099190611b08565b82519091506112189082611454565b61ffff16604083015261122c600282611b08565b825190915061123b9082611454565b61ffff16606083015261124f600282611b08565b825190915061125e908261147a565b63ffffffff166080830152611274600482611b08565b82519091505f906112859083611454565b61ffff169050611296600283611b08565b60a0840181905291506112a98183611b08565b60c0909301929092525050565b60408051808201909152606081525f602082015282518211156112d7575f80fd5b60208501516112e68386611b08565b11156113195761131985611309876020015187866113049190611b08565b6114a2565b611314906002611c66565b6114b8565b5f808651805187602083010193508088870111156113375787860182525b505050602084015b602084106113775780518252611356602083611b08565b9150611363602082611b08565b9050611370602085611b1b565b935061133f565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b5f806113a8858561147a565b63ffffffff1663613d3078146113c257505f905080611003565b602c8310156113d557505f905080611003565b6113e9856113e4866004611b08565b6114d5565b91509150935093915050565b5f815b8351811061140857611408611c7d565b5f6114138583610a40565b60ff169050611423816001611b08565b61142d9083611b08565b9150805f0361143c5750611442565b506113f8565b61144c8382611b1b565b949350505050565b81515f90611463836002611b08565b111561146d575f80fd5b50016002015161ffff1690565b81515f90611489836004611b08565b1115611493575f80fd5b50016004015163ffffffff1690565b5f818311156114b257508161019d565b50919050565b81516114c48383611060565b506114cf83826110c3565b50505050565b5f8060288385516114e69190611b1b565b10156114f657505f9050806111ca565b5f835b611504856028611b08565b8110156115a55760049190911b905f61151d8783610a40565b60ff169050603081101580156115335750603a81105b1561154c57611543603082611b1b565b8317925061159c565b6041811015801561155d5750604781105b1561156d57611543603782611b1b565b6061811015801561157e5750606781105b1561158e57611543605782611b1b565b5f80945094505050506111ca565b506001016114f9565b50946001945092505050565b5f602082840312156115c1575f80fd5b81356001600160e01b0319811681146110e8575f80fd5b6001600160a01b03811681146115ec575f80fd5b50565b5f602082840312156115ff575f80fd5b81356110e8816115d8565b634e487b7160e01b5f52604160045260245ffd5b6040805190810167ffffffffffffffff811182821017156116415761164161160a565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156116705761167061160a565b604052919050565b5f67ffffffffffffffff8211156116915761169161160a565b50601f01601f191660200190565b5f82601f8301126116ae575f80fd5b81356116c16116bc82611678565b611647565b8181528460208386010111156116d5575f80fd5b816020850160208301375f918101602001919091529392505050565b5f82601f830112611700575f80fd5b8135602067ffffffffffffffff8083111561171d5761171d61160a565b8260051b61172c838201611647565b9384528581018301938381019088861115611745575f80fd5b84880192505b858310156117d457823584811115611761575f80fd5b88016040818b03601f1901811315611777575f80fd5b61177f61161e565b878301358781111561178f575f80fd5b61179d8d8a8387010161169f565b8252509082013590868211156117b1575f80fd5b6117bf8c898486010161169f565b8189015284525050918401919084019061174b565b98975050505050505050565b5f805f805f60a086880312156117f4575f80fd5b853567ffffffffffffffff8082111561180b575f80fd5b61181789838a0161169f565b9650602088013591508082111561182c575f80fd5b61183889838a016116f1565b9550604088013591508082111561184d575f80fd5b5061185a8882890161169f565b935050606086013561186b816115d8565b9150608086013561187b816115d8565b809150509295509295909350565b5f805f6060848603121561189b575f80fd5b833567ffffffffffffffff808211156118b2575f80fd5b6118be8783880161169f565b945060208601359150808211156118d3575f80fd5b6118df878388016116f1565b935060408601359150808211156118f4575f80fd5b506119018682870161169f565b9150509250925092565b5f806040838503121561191c575f80fd5b823567ffffffffffffffff80821115611933575f80fd5b61193f8683870161169f565b93506020850135915080821115611954575f80fd5b506119618582860161169f565b9150509250929050565b5f6020828403121561197b575f80fd5b81516110e8816115d8565b5f5b838110156119a0578181015183820152602001611988565b50505f910152565b5f81518084526119bf816020860160208601611986565b601f01601f19169290920160200192915050565b5f60408083016040845280865180835260608601915060608160051b870101925060208089015f5b83811015611a4b57888603605f1901855281518051888852611a1f898901826119a8565b9185015188830389870152919050611a3781836119a8565b9750505093820193908201906001016119fb565b505086840381880152505050611a6181866119a8565b9695505050505050565b5f60208284031215611a7b575f80fd5b815167ffffffffffffffff811115611a91575f80fd5b8201601f81018413611aa1575f80fd5b8051611aaf6116bc82611678565b818152856020838501011115611ac3575f80fd5b611ad4826020830160208601611986565b95945050505050565b5f60208284031215611aed575f80fd5b5051919050565b634e487b7160e01b5f52601160045260245ffd5b8082018082111561019d5761019d611af4565b8181038181111561019d5761019d611af4565b602081525f6110e860208301846119a8565b5f60208284031215611b50575f80fd5b815180151581146110e8575f80fd5b634e487b7160e01b5f52603260045260245ffd5b61ffff83168152604060208201525f61144c60408301846119a8565b805163ffffffff81168114611ba2575f80fd5b919050565b5f805f60608486031215611bb9575f80fd5b611bc284611b8f565b9250611bd060208501611b8f565b915060408401516bffffffffffffffffffffffff1981168114611bf1575f80fd5b809150509250925092565b63ffffffff818116838216019080821115611c1957611c19611af4565b5092915050565b5f82611c3a57634e487b7160e01b5f52601260045260245ffd5b500690565b600382810b9082900b03637fffffff198112637fffffff8213171561019d5761019d611af4565b808202811582820484141761019d5761019d611af4565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{"0x0":"0x9b2565a3545a1312bdcb6e7148a7f7cae8c2706b","0x1":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0x2":"0x287dee389caaa49edc112888f2bcfd927b472e25"}},"0x62b11ad5f582a5c5d378fb310125b030042554f1":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106103af5760003560e01c80637e37479e116101f4578063ba5d40b71161011a578063e985e9c5116100ad578063f5c1f76e1161007c578063f5c1f76e146108d8578063f7df5c60146108eb578063f8c8765e146108fe578063ffa1ad741461091157600080fd5b8063e985e9c51461087a578063ebf0c717146108b6578063ec129eea146108bd578063f25eb5c1146108d057600080fd5b8063c87b56dd116100e9578063c87b56dd1461082e578063ce92b33e14610841578063cf2c52cb14610854578063d9548e531461086757600080fd5b8063ba5d40b7146107b3578063baef73e9146107c6578063bb5b27e114610808578063bebec6b41461081b57600080fd5b8063a22cb46511610192578063ac9650d811610161578063ac9650d81461074c578063b3f9e4cb1461076c578063b85afd281461077f578063b88d4fde146107a057600080fd5b8063a22cb465146106e7578063a3f4df7e146106fa578063a424740014610726578063ab3b87fe1461073957600080fd5b80639508b1c4116101ce5780639508b1c4146106b15780639559c0bd146106c457806395d89b41146106cc57806399e0dd7c146106d457600080fd5b80637e37479e146106785780637eee288d1461068b57806394d008ef1461069e57600080fd5b806342842e0e116102d95780635096023911610277578063663f7b2a11610246578063663f7b2a14610610578063672b9f81146106235780636ccbae5f1461064457806370a082311461066557600080fd5b806350960239146105bb578063572b6c05146105ce5780636352211e146105ea578063638e5c78146105fd57600080fd5b806347c81699116102b357806347c816991461056f5780634a72584d146105825780634f558e791461059557806350382c1a146105a857600080fd5b806342842e0e1461053657806342966c6814610549578063430c20811461055c57600080fd5b80631bf7e13e1161035157806327f189751161032057806327f18975146104ea578063310bd74b146104fd5780633f72ec6e1461051057806340c10f191461052357600080fd5b80631bf7e13e146104905780631f71be06146104a357806323b872dd146104b6578063276fabb1146104c957600080fd5b8063095ea7b31161038d578063095ea7b31461041c578063150b7a02146104315780631bd8cc1a1461045d5780631be5e7ed1461047d57600080fd5b806301ffc9a7146103b457806306fdde03146103dc578063081812fc146103f1575b600080fd5b6103c76103c2366004613f0b565b610935565b60405190151581526020015b60405180910390f35b6103e4610946565b6040516103d39190613f78565b6104046103ff366004613f8b565b6109d8565b6040516001600160a01b0390911681526020016103d3565b61042f61042a366004613fb9565b6109ff565b005b61044461043f366004614026565b610a18565b6040516001600160e01b031990911681526020016103d3565b61047061046b3660046140dc565b610b72565b6040516103d3919061417f565b6103e461048b366004614192565b610c68565b6103e461049e3660046141c9565b610cb3565b61042f6104b1366004614249565b610dbe565b61042f6104c4366004614305565b610e54565b6104dc6104d7366004614346565b610ea7565b6040519081526020016103d3565b61042f6104f8366004614387565b610eb6565b61042f61050b366004613f8b565b610efe565b61042f61051e3660046143fa565b610f39565b61042f610531366004613fb9565b61103b565b61042f610544366004614305565b611088565b61042f610557366004613f8b565b6110a3565b6103c761056a366004613fb9565b6110e7565b61042f61057d366004614424565b6110f3565b61042f610590366004614485565b611132565b6103c76105a3366004613f8b565b611178565b61042f6105b636600461458c565b611197565b61042f6105c93660046145c0565b6111cd565b6103c76105dc3660046145c0565b6001600160a01b0316301490565b6104046105f8366004613f8b565b61122d565b61042f61060b366004613f8b565b61124a565b61042f61061e366004614678565b611295565b6106366106313660046146c0565b611336565b6040516103d39291906146e2565b6104dc610652366004613f8b565b6000908152610100602052604090205490565b6104dc6106733660046145c0565b61134e565b6104dc6106863660046145c0565b6113d4565b61042f610699366004613fb9565b611405565b61042f6106ac366004614707565b61145c565b61042f6106bf366004614762565b6114ab565b6104dc601481565b6103e4611532565b61042f6106e2366004614805565b611541565b61042f6106f536600461483a565b6115c8565b6103e46040518060400160405280600d81526020016c554e533a20526567697374727960981b81525081565b6103c76107343660046141c9565b6115da565b61042f610747366004613fb9565b611625565b61075f61075a366004614346565b61166a565b6040516103d39190614866565b61040461077a366004613f8b565b611746565b61079261078d3660046140dc565b611770565b6040516103d39291906148c8565b61042f6107ae3660046148ed565b611892565b61042f6107c1366004614249565b6118d9565b6107f06107d4366004613f8b565b600090815261013960205260409020546001600160401b031690565b6040516001600160401b0390911681526020016103d3565b6103e4610816366004613f8b565b611962565b6103e46108293660046145c0565b611a04565b6103e461083c366004613f8b565b611ace565b61042f61084f366004614387565b611b34565b61042f610862366004614958565b611b73565b6103c7610875366004613f8b565b611c42565b6103c761088836600461499f565b6001600160a01b039182166000908152606a6020908152604080832093909416825291909152205460ff1690565b60006104dc565b61042f6108cb366004614387565b611c85565b61042f611cc4565b6104706108e6366004614346565b611d4b565b61042f6108f93660046149d8565b611dfe565b61042f61090c366004614a0a565b611e8f565b6103e460405180604001604052806005815260200164302e392e3160d81b81525081565b600061094082612065565b92915050565b60606065805461095590614a66565b80601f016020809104026020016040519081016040528092919081815260200182805461098190614a66565b80156109ce5780601f106109a3576101008083540402835291602001916109ce565b820191906000526020600020905b8154815290600101906020018083116109b157829003601f168201915b5050505050905090565b60006109e3826120b5565b506000908152606960205260409020546001600160a01b031690565b80610a0981612114565b610a13838361217a565b505050565b60007f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378546001600160a01b0316610a4d61229c565b6001600160a01b031603610b0e57610a6361229c565b6001600160a01b03166342966c68856040518263ffffffff1660e01b8152600401610a9091815260200190565b600060405180830381600087803b158015610aaa57600080fd5b505af1158015610abe573d6000803e3d6000fd5b505050821580159150610ad85750610ad882840184614a9a565b15610af657610ae730856122ab565b610af185856123f9565b610b00565b610b0085856122ab565b50630a85bd0160e11b610b69565b60405162461bcd60e51b815260206004820152602560248201527f52656769737472793a204552433732315f524543454956494e475f50524f4849604482015264109255115160da1b60648201526084015b60405180910390fd5b95945050505050565b6060826001600160401b03811115610b8c57610b8c6144d7565b604051908082528060200260200182016040528015610bbf57816020015b6060815260200190600190039081610baa5790505b50905060005b83811015610c6057610c30858583818110610be257610be2614ab5565b9050602002810190610bf49190614acb565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508792506124a4915050565b828281518110610c4257610c42614ab5565b60200260200101819052508080610c5890614b27565b915050610bc5565b509392505050565b6060610cab84848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508692506124a4915050565b949350505050565b606060005a9050610cc58585856115da565b610d215760405162461bcd60e51b815260206004820152602760248201527f554e535265676973747279466f727761726465723a205349474e41545552455f6044820152661253959053125160ca1b6064820152608401610b60565b610db3610d3160208701876145c0565b30604088013584610d4560608b018b614acb565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284376000920191909152506124d992505050565b9150505b9392505050565b610134546001600160a01b0316610dd361229c565b6001600160a01b031614610df95760405162461bcd60e51b8152600401610b6090614b40565b6000610e0d610e08888a614b87565b6125ba565b509050610e1a8982611405565b610e278686868685612612565b8115610e4957610e498982610e44610e3f8b8d614b87565b612680565b612701565b505050505050505050565b80610e66610e6061229c565b82612743565b610e825760405162461bcd60e51b8152600401610b6090614b94565b81610e8c81612114565b610e95836127d4565b610ea0858585612841565b5050505050565b6000610c60610e088385614b87565b80610ec2610e6061229c565b610ede5760405162461bcd60e51b8152600401610b6090614b94565b81610ee881612114565b610ef587878787876129e8565b50505050505050565b80610f0a610e6061229c565b610f265760405162461bcd60e51b8152600401610b6090614b94565b81610f3081612114565b610a13836127d4565b610134546001600160a01b0316610f4e61229c565b6001600160a01b031614610f745760405162461bcd60e51b8152600401610b6090614b40565b610f7d816120b5565b42826001600160401b031611610fd55760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a204558504952595f494e5f5041535400000000000000006044820152606401610b60565b60008181526101396020908152604091829020805467ffffffffffffffff19166001600160401b038616908117909155915191825282917f93feabb03ab84f47fc85bf0c298103fca21d8c8bc376eae0c1e1c56b9d4f7789910160405180910390a25050565b611043612a4b565b6001600160a01b031661105461229c565b6001600160a01b03161461107a5760405162461bcd60e51b8152600401610b6090614bdd565b61108482826122ab565b5050565b610a1383838360405180602001604052806000815250611892565b806110af610e6061229c565b6110cb5760405162461bcd60e51b8152600401610b6090614b94565b816110d581612114565b6110de836127d4565b610a1383612b4c565b6000610db78383612743565b806110ff610e6061229c565b61111b5760405162461bcd60e51b8152600401610b6090614b94565b8161112581612114565b610ef58787878787612bf3565b8061113e610e6061229c565b61115a5760405162461bcd60e51b8152600401610b6090614b94565b8161116481612114565b61117086868686612cd2565b505050505050565b6000818152606760205260408120546001600160a01b03161515610940565b6111ca816040516020016111ab9190614c1f565b6040516020818303038152906040528051906020012060001c82612d72565b50565b610134546001600160a01b03166111e261229c565b6001600160a01b0316146112085760405162461bcd60e51b8152600401610b6090614b40565b6001600160a01b0316600090815261013660205260409020805460ff19166001179055565b600061123882611c42565b6112455761094082612d97565b919050565b80611256610e6061229c565b6112725760405162461bcd60e51b8152600401610b6090614b94565b61128461127d61229c565b3084612841565b61108461128f61229c565b836123f9565b60006112a0826125ba565b5090506112ab61229c565b6001600160a01b03166112bd8261122d565b6001600160a01b0316146113135760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b60565b61131c81612114565b61108461132761229c565b8261133185612680565b612df7565b6060806113438484612e7e565b909590945092505050565b60006001600160a01b0382166113b85760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b6064820152608401610b60565b506001600160a01b031660009081526068602052604090205490565b6001600160a01b038116600090815261013560205260408120546113f781612e9f565b6113ff578091505b50919050565b610134546001600160a01b031661141a61229c565b6001600160a01b0316146114405760405162461bcd60e51b8152600401610b6090614b40565b611449816127d4565b61108461145582612d97565b8383612841565b611464612a4b565b6001600160a01b031661147561229c565b6001600160a01b03161461149b5760405162461bcd60e51b8152600401610b6090614bdd565b6114a584846122ab565b50505050565b6114b58787612ee9565b6114bd61229c565b6001600160a01b03166114cf8661122d565b6001600160a01b0316146115255760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b60565b610ef58484848489612612565b60606066805461095590614a66565b610134546001600160a01b031661155661229c565b6001600160a01b03161461157c5760405162461bcd60e51b8152600401610b6090614b40565b61013361158a828483614c81565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b82826040516115bc929190614d69565b60405180910390a15050565b6110846115d361229c565b8383612f58565b6000610cab6115e885614d7d565b3085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061302692505050565b80611631610e6061229c565b61164d5760405162461bcd60e51b8152600401610b6090614b94565b8161165781612114565b6114a561166384612d97565b8585612841565b606060006116788385614e07565b905030330361173d5760005b8381101561173b5761170b61169761229c565b61169f61316f565b8787858181106116b1576116b1614ab5565b90506020028101906116c39190614acb565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250613183915050565b82828151811061171d5761171d614ab5565b6020026020010181905250808061173390614b27565b915050611684565b505b610cab816131b3565b6000818152606760205260408120546001600160a01b0316611769576000610940565b3092915050565b606080836001600160401b0381111561178b5761178b6144d7565b6040519080825280602002602001820160405280156117be57816020015b60608152602001906001900390816117a95790505b509150836001600160401b038111156117d9576117d96144d7565b60405190808252806020026020018201604052801561180c57816020015b60608152602001906001900390816117f75790505b50905060005b848110156118895761183c86868381811061182f5761182f614ab5565b9050602002013585612e7e565b84838151811061184e5761184e614ab5565b6020026020010184848151811061186757611867614ab5565b602002602001018290528290525050808061188190614b27565b915050611812565b50935093915050565b8161189e610e6061229c565b6118ba5760405162461bcd60e51b8152600401610b6090614b94565b826118c481612114565b6118cd846127d4565b611170868686866132de565b610134546001600160a01b03166118ee61229c565b6001600160a01b0316146119145760405162461bcd60e51b8152600401610b6090614b40565b600080611924610e08898b614b87565b9150915061193181613311565b6119498a83611943610e3f8c8e614b87565b86613371565b6119568787878786612612565b50505050505050505050565b600081815260c96020526040902080546060919061197f90614a66565b80601f01602080910402602001604051908101604052809291908181526020018280546119ab90614a66565b80156119f85780601f106119cd576101008083540402835291602001916119f8565b820191906000526020600020905b8154815290600101906020018083116119db57829003601f168201915b50505050509050919050565b6001600160a01b03811660009081526101356020526040902054606090611a2a81612e9f565b6113ff576000818152610138602052604090208054611a4890614a66565b80601f0160208091040260200160405190810160405280929190818152602001828054611a7490614a66565b8015611ac15780601f10611a9657610100808354040283529160200191611ac1565b820191906000526020600020905b815481529060010190602001808311611aa457829003601f168201915b5050505050915050919050565b6060611ad9826120b5565b6000611ae36133c4565b90506000815111611b035760405180602001604052806000815250610db7565b80611b0d846133d4565b604051602001611b1e929190614e7a565b6040516020818303038152906040529392505050565b80611b40610e6061229c565b611b5c5760405162461bcd60e51b8152600401610b6090614b94565b81611b6681612114565b610ef58787878787612612565b7f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87546001600160a01b0316611ba661229c565b6001600160a01b031614611bcc5760405162461bcd60e51b8152600401610b6090614bdd565b6020819003611bef576000611be382840184613f8b565b90506114a584826122ab565b6000611bfd82840184614ea9565b805190915060005b8181101561117057611c3086848381518110611c2357611c23614ab5565b60200260200101516122ab565b80611c3a81614b27565b915050611c05565b600081815261013960205260408120546001600160401b03161580159061094057505060009081526101396020526040902054426001600160401b039091161090565b80611c91610e6061229c565b611cad5760405162461bcd60e51b8152600401610b6090614b94565b81611cb781612114565b610ef587878787876134d4565b6000611cce61229c565b6001600160a01b0381166000908152610135602052604081205491925003611d425760405162461bcd60e51b815260206004820152602160248201527f52656769737472793a20524556455253455f5245434f52445f49535f454d50546044820152605960f81b6064820152608401610b60565b6111ca816134ea565b6060816001600160401b03811115611d6557611d656144d7565b604051908082528060200260200182016040528015611d9857816020015b6060815260200190600190039081611d835790505b50905060005b82811015611df757611dc7848483818110611dbb57611dbb614ab5565b90506020020135611962565b828281518110611dd957611dd9614ab5565b60200260200101819052508080611def90614b27565b915050611d9e565b5092915050565b610134546001600160a01b0316611e1361229c565b6001600160a01b031614611e395760405162461bcd60e51b8152600401610b6090614b40565b61013454611e50906001600160a01b0316846122ab565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c39528383604051611e82929190614d69565b60405180910390a2505050565b600054610100900460ff1615808015611eaf5750600054600160ff909116105b80611ec95750303b158015611ec9575060005460ff166001145b611f2c5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610b60565b6000805460ff191660011790558015611f4f576000805461ff0019166101001790555b61013480546001600160a01b0319166001600160a01b038716179055837f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec9237880546001600160a01b0319166001600160a01b03929092169190911790556040805180820182526013815272556e73746f707061626c6520446f6d61696e7360681b60208083019190915282518084019093526002835261155160f21b90830152611ff79161352f565b611fff61356f565b61200761356f565b61201083613598565b612019826135c8565b8015610ea0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b60006001600160e01b031982166380ac58cd60e01b148061209657506001600160e01b03198216635b5e139f60e01b145b8061094057506301ffc9a760e01b6001600160e01b0319831614610940565b6000818152606760205260409020546001600160a01b03166111ca5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b60565b3033036121715761212361316f565b81146111ca5760405162461bcd60e51b815260206004820152601760248201527f52656769737472793a20544f4b454e5f494e56414c49440000000000000000006044820152606401610b60565b6111ca816135f8565b600061218582612d97565b9050806001600160a01b0316836001600160a01b0316036121f25760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b6064820152608401610b60565b806001600160a01b031661220461229c565b6001600160a01b0316148061222057506122208161088861229c565b6122925760405162461bcd60e51b815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c00006064820152608401610b60565b610a138383613626565b60006122a6613694565b905090565b6001600160a01b0382166123015760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610b60565b6000818152606760205260409020546001600160a01b0316156123665760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610b60565b612372600083836136af565b6001600160a01b038216600090815260686020526040812080546001929061239b908490614f39565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b03861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b6000612403612a4b565b905061240f8183613626565b60008051602061529383398151915254604080516020808201869052825180830390910181528183019283905263e3dec8fb60e01b9092526001600160a01b0390921691829163e3dec8fb9161246c918891309190604401614f4c565b600060405180830381600087803b15801561248657600080fd5b505af115801561249a573d6000803e3d6000fd5b5050505050505050565b6060610db7836040516020016124ba9190614c1f565b6040516020818303038152906040528051906020012060001c8361378b565b60606124e4856135f8565b600080876001600160a01b0316866124fe8b8a8989613183565b60405161250b9190614c1f565b60006040518083038160008787f1925050503d8060008114612549576040519150601f19603f3d011682016040523d82523d6000602084013e61254e565b606091505b50909250905061255f603f87614f8e565b5a1161256d5761256d614fa2565b6125ad82826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061386d565b9998505050505050505050565b805160009081905b801561260c578291506125f882856125db600185614fb8565b815181106125eb576125eb614ab5565b60200260200101516138a6565b92508061260481614fcb565b9150506125c2565b50915091565b60005b848110156111705761266e86868381811061263257612632614ab5565b90506020028101906126449190614acb565b86868581811061265657612656614ab5565b90506020028101906126689190614acb565b86612bf3565b8061267881614b27565b915050612615565b606060008260008151811061269757612697614ab5565b602002602001015190506000600190505b8351811015611df757818482815181106126c4576126c4614ab5565b60200260200101516040516020016126dd929190614fe2565b604051602081830303815290604052915080806126f990614b27565b9150506126a8565b61dead6001600160a01b0384161480159061273357506001600160a01b03831660009081526101356020526040902054155b15610a1357610a13838383612df7565b60008061274f8361122d565b90506001600160a01b03811615801590610cab5750806001600160a01b0316846001600160a01b031614806127a957506001600160a01b038082166000908152606a602090815260408083209388168352929052205460ff165b80610cab5750836001600160a01b03166127c2846109d8565b6001600160a01b031614949350505050565b6127dd81613952565b6040516020016127ef91815260200190565b60408051601f198184030181528282528051602091820120600085815260cb9092529181209190915582917f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9190a250565b826001600160a01b031661285482612d97565b6001600160a01b0316146128b85760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b6064820152608401610b60565b6001600160a01b03821661291a5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610b60565b6129258383836136af565b612930600082613626565b6001600160a01b0383166000908152606860205260408120805460019290612959908490614fb8565b90915550506001600160a01b0382166000908152606860205260408120805460019290612987908490614f39565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60005b8481101561117057612a39868683818110612a0857612a08614ab5565b90506020020135858584818110612a2157612a21614ab5565b9050602002810190612a339190614acb565b85612cd2565b80612a4381614b27565b9150506129eb565b600080516020615293833981519152546000906001600160a01b03168015612b485760405163721804d360e11b81523060048201526000906001600160a01b0383169063e43009a690602401602060405180830381865afa158015612ab4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ad8919061501e565b60405163e66f960360e01b8152600481018290529091506001600160a01b0383169063e66f960390602401602060405180830381865afa158015612b20573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b449190615037565b9250505b5090565b6000612b5782612d97565b9050612b65816000846136af565b612b70600083613626565b6001600160a01b0381166000908152606860205260408120805460019290612b99908490614fb8565b909155505060008281526067602052604080822080546001600160a01b0319169055518391906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b60008585604051602001612c08929190615054565b60408051601f198184030181528282528051602091820120601f8901829004820284018201909252878352909250612c5c9183918990899081908401838280828437600092019190915250612d7292505050565b6111708187878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061397a915050565b612cdb84613aaf565b612d275760405162461bcd60e51b815260206004820152601c60248201527f5265636f726453746f726167653a204b45595f4e4f545f464f554e44000000006044820152606401610b60565b6114a584612d3486611962565b85858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525087925061397a915050565b612d7b82613aaf565b61108457600082815260c960205260409020610a138282615064565b6000818152606760205260408120546001600160a01b0316806109405760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b60565b6000828152610138602052604090208054612e1190614a66565b9050600003612e3557600082815261013860205260409020612e338282615064565b505b6001600160a01b03831660008181526101356020526040808220859055518492917feb76a21470988c474a21f690cc28fee1ed511bd812dc3c21fd0f49c5e5d4708a91a3505050565b606080612e8a84611962565b9150612e96848461378b565b90509250929050565b6000818152610137602052604081205460ff16801561094057506101366000612ec661229c565b6001600160a01b0316815260208101919091526040016000205460ff1692915050565b60008051602061529383398151915254604051633805550f60e01b81526001600160a01b03909116908190633805550f90612f2a9086908690600401614d69565b600060405180830381600087803b158015612f4457600080fd5b505af1158015610ef5573d6000803e3d6000fd5b816001600160a01b0316836001600160a01b031603612fb95760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610b60565b6001600160a01b038381166000818152606a6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561306d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613091919061501e565b9050600061313f8660600151805190602001208688602001516040516020016130df9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561316557508551613165906001600160a01b03168286613ad5565b9695505050505050565b60003033036131805750601f193601355b90565b606082858560405160200161319a93929190615123565b6040516020818303038152906040529050949350505050565b606081516001600160401b038111156131ce576131ce6144d7565b60405190808252806020026020018201604052801561320157816020015b60608152602001906001900390816131ec5790505b50905060005b82518110156113ff57600080306001600160a01b031685848151811061322f5761322f614ab5565b60200260200101516040516132449190614c1f565b600060405180830381855af49150503d806000811461327f576040519150601f19603f3d011682016040523d82523d6000602084013e613284565b606091505b50915091506132ac82826040518060600160405280602781526020016152b36027913961386d565b8484815181106132be576132be614ab5565b6020026020010181905250505080806132d690614b27565b915050613207565b6132e9848484612841565b6132f584848484613c17565b6114a55760405162461bcd60e51b8152600401610b6090615162565b6000818152610137602052604090205460ff16156111ca5760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a20544f4b454e5f555047524144454400000000000000006044820152606401610b60565b61337b84846122ab565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952836040516133ab9190613f78565b60405180910390a280156114a5576114a5848484612701565b6060610133805461095590614a66565b6060816000036133fb5750506040805180820190915260018152600360fc1b602082015290565b8160005b8115613425578061340f81614b27565b915061341e9050600a83614f8e565b91506133ff565b6000816001600160401b0381111561343f5761343f6144d7565b6040519080825280601f01601f191660200182016040528015613469576020820181803683370190505b5090505b8415610cab5761347e600183614fb8565b915061348b600a866151b4565b613496906030614f39565b60f81b8183815181106134ab576134ab614ab5565b60200101906001600160f81b031916908160001a9053506134cd600a86614f8e565b945061346d565b6134dd816127d4565b610ea08585858585612612565b6001600160a01b03811660008181526101356020526040808220829055517ffcf5eec0cfa3e6332f5f0e63ec242d71f866a61d121d6cdf5c2eb3b668a26c4f9190a250565b600054610100900460ff166135565760405162461bcd60e51b8152600401610b60906151c8565b60656135628382615064565b506066610a138282615064565b600054610100900460ff166135965760405162461bcd60e51b8152600401610b60906151c8565b565b600054610100900460ff166135bf5760405162461bcd60e51b8152600401610b60906151c8565b6111ca81613d1c565b600054610100900460ff166135ef5760405162461bcd60e51b8152600401610b60906151c8565b6111ca81613d75565b60008181526101006020526040902054613613906001614f39565b6000918252610100602052604090912055565b600081815260696020526040902080546001600160a01b0319166001600160a01b038416908117909155819061365b82612d97565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60003033036136aa575060331936013560601c90565b503390565b6001600160a01b0382166136c6576136c681613311565b600081815261013960205260409020546001600160401b031615613761576001600160a01b0382161580159061371557506136ff612a4b565b6001600160a01b0316826001600160a01b031614155b6137615760405162461bcd60e51b815260206004820152601960248201527f52656769737472793a20544f4b454e5f455850495241424c45000000000000006044820152606401610b60565b6001600160a01b03831660009081526101356020526040902054819003610a1357610a13836134ea565b606061379682612e9f565b156137b05750604080516020810190915260008152610940565b60ca60006137bd84613952565b8152602001908152602001600020600084815260200190815260200160002080546137e790614a66565b80601f016020809104026020016040519081016040528092919081815260200182805461381390614a66565b80156138605780601f1061383557610100808354040283529160200191613860565b820191906000526020600020905b81548152906001019060200180831161384357829003601f168201915b5050505050905092915050565b6060831561387c575081610db7565b82511561388c5782518084602001fd5b8160405162461bcd60e51b8152600401610b609190613f78565b600081516000036138f15760405162461bcd60e51b815260206004820152601560248201527452656769737472793a204c4142454c5f454d50545960581b6044820152606401610b60565b82826040516020016139039190614c1f565b60405160208183030381529060405280519060200120604051602001613933929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b600081815260cb602052604081205415612b4857600082815260cb6020526040902054610940565b60ca600061398783613952565b8152602001908152602001600020600085815260200190815260200160002080546139b190614a66565b9050600003613a0957826040516139c89190614c1f565b6040518091039020817f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f8685604051613a009190613f78565b60405180910390a35b8160ca6000613a1784613952565b815260200190815260200160002060008681526020019081526020016000209081613a429190615064565b5081604051613a519190614c1f565b604051809103902083604051613a679190614c1f565b6040518091039020827f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d928686604051613aa19291906146e2565b60405180910390a450505050565b600081815260c9602052604081208054829190613acb90614a66565b9050119050919050565b6000806000613ae48585613dc3565b90925090506000816004811115613afd57613afd615213565b148015613b1b5750856001600160a01b0316826001600160a01b0316145b15613b2b57600192505050610db7565b600080876001600160a01b0316631626ba7e60e01b8888604051602401613b53929190615229565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051613b919190614c1f565b600060405180830381855afa9150503d8060008114613bcc576040519150601f19603f3d011682016040523d82523d6000602084013e613bd1565b606091505b5091509150818015613be4575080516020145b8015613c0b57508051630b135d3f60e11b90613c09908301602090810190840161501e565b145b98975050505050505050565b60006001600160a01b0384163b15613d1457836001600160a01b031663150b7a02613c4061229c565b8786866040518563ffffffff1660e01b8152600401613c629493929190615242565b6020604051808303816000875af1925050508015613c9d575060408051601f3d908101601f19168201909252613c9a91810190615275565b60015b613cfa573d808015613ccb576040519150601f19603f3d011682016040523d82523d6000602084013e613cd0565b606091505b508051600003613cf25760405162461bcd60e51b8152600401610b6090615162565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610cab565b506001610cab565b600054610100900460ff16613d435760405162461bcd60e51b8152600401610b60906151c8565b806000805160206152938339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b600054610100900460ff16613d9c5760405162461bcd60e51b8152600401610b60906151c8565b807f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87613d54565b6000808251604103613df95760208301516040840151606085015160001a613ded87828585613e08565b94509450505050613e01565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613e3f5750600090506003613eec565b8460ff16601b14158015613e5757508460ff16601c14155b15613e685750600090506004613eec565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613ebc573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613ee557600060019250925050613eec565b9150600090505b94509492505050565b6001600160e01b0319811681146111ca57600080fd5b600060208284031215613f1d57600080fd5b8135610db781613ef5565b60005b83811015613f43578181015183820152602001613f2b565b50506000910152565b60008151808452613f64816020860160208601613f28565b601f01601f19169290920160200192915050565b602081526000610db76020830184613f4c565b600060208284031215613f9d57600080fd5b5035919050565b6001600160a01b03811681146111ca57600080fd5b60008060408385031215613fcc57600080fd5b8235613fd781613fa4565b946020939093013593505050565b60008083601f840112613ff757600080fd5b5081356001600160401b0381111561400e57600080fd5b602083019150836020828501011115613e0157600080fd5b60008060008060006080868803121561403e57600080fd5b853561404981613fa4565b9450602086013561405981613fa4565b93506040860135925060608601356001600160401b0381111561407b57600080fd5b61408788828901613fe5565b969995985093965092949392505050565b60008083601f8401126140aa57600080fd5b5081356001600160401b038111156140c157600080fd5b6020830191508360208260051b8501011115613e0157600080fd5b6000806000604084860312156140f157600080fd5b83356001600160401b0381111561410757600080fd5b61411386828701614098565b909790965060209590950135949350505050565b600082825180855260208086019550808260051b84010181860160005b8481101561417257601f19868403018952614160838351613f4c565b98840198925090830190600101614144565b5090979650505050505050565b602081526000610db76020830184614127565b6000806000604084860312156141a757600080fd5b83356001600160401b038111156141bd57600080fd5b61411386828701613fe5565b6000806000604084860312156141de57600080fd5b83356001600160401b03808211156141f557600080fd5b908501906080828803121561420957600080fd5b9093506020850135908082111561421f57600080fd5b5061422c86828701613fe5565b9497909650939450505050565b8035801515811461124557600080fd5b60008060008060008060008060a0898b03121561426557600080fd5b883561427081613fa4565b975060208901356001600160401b038082111561428c57600080fd5b6142988c838d01614098565b909950975060408b01359150808211156142b157600080fd5b6142bd8c838d01614098565b909750955060608b01359150808211156142d657600080fd5b506142e38b828c01614098565b90945092506142f6905060808a01614239565b90509295985092959890939650565b60008060006060848603121561431a57600080fd5b833561432581613fa4565b9250602084013561433581613fa4565b929592945050506040919091013590565b6000806020838503121561435957600080fd5b82356001600160401b0381111561436f57600080fd5b61437b85828601614098565b90969095509350505050565b60008060008060006060868803121561439f57600080fd5b85356001600160401b03808211156143b657600080fd5b6143c289838a01614098565b909750955060208801359150808211156143db57600080fd5b506143e888828901614098565b96999598509660400135949350505050565b6000806040838503121561440d57600080fd5b82356001600160401b0381168114613fd757600080fd5b60008060008060006060868803121561443c57600080fd5b85356001600160401b038082111561445357600080fd5b61445f89838a01613fe5565b9097509550602088013591508082111561447857600080fd5b506143e888828901613fe5565b6000806000806060858703121561449b57600080fd5b8435935060208501356001600160401b038111156144b857600080fd5b6144c487828801613fe5565b9598909750949560400135949350505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715614515576145156144d7565b604052919050565b600082601f83011261452e57600080fd5b81356001600160401b03811115614547576145476144d7565b61455a601f8201601f19166020016144ed565b81815284602083860101111561456f57600080fd5b816020850160208301376000918101602001919091529392505050565b60006020828403121561459e57600080fd5b81356001600160401b038111156145b457600080fd5b610cab8482850161451d565b6000602082840312156145d257600080fd5b8135610db781613fa4565b60006001600160401b038211156145f6576145f66144d7565b5060051b60200190565b600061461361460e846145dd565b6144ed565b8381529050602080820190600585901b84018681111561463257600080fd5b845b8181101561466d5780356001600160401b038111156146535760008081fd5b61465f8982890161451d565b855250928201928201614634565b505050509392505050565b60006020828403121561468a57600080fd5b81356001600160401b038111156146a057600080fd5b8201601f810184136146b157600080fd5b610cab84823560208401614600565b600080604083850312156146d357600080fd5b50508035926020909101359150565b6040815260006146f56040830185613f4c565b8281036020840152610db38185613f4c565b6000806000806060858703121561471d57600080fd5b843561472881613fa4565b93506020850135925060408501356001600160401b0381111561474a57600080fd5b61475687828801613fe5565b95989497509550505050565b60008060008060008060006080888a03121561477d57600080fd5b87356001600160401b038082111561479457600080fd5b6147a08b838c01613fe5565b909950975060208a0135965060408a01359150808211156147c057600080fd5b6147cc8b838c01614098565b909650945060608a01359150808211156147e557600080fd5b506147f28a828b01614098565b989b979a50959850939692959293505050565b6000806020838503121561481857600080fd5b82356001600160401b0381111561482e57600080fd5b61437b85828601613fe5565b6000806040838503121561484d57600080fd5b823561485881613fa4565b9150612e9660208401614239565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156148bb57603f198886030184526148a9858351613f4c565b9450928501929085019060010161488d565b5092979650505050505050565b6040815260006148db6040830185614127565b8281036020840152610db38185614127565b6000806000806080858703121561490357600080fd5b843561490e81613fa4565b9350602085013561491e81613fa4565b92506040850135915060608501356001600160401b0381111561494057600080fd5b61494c8782880161451d565b91505092959194509250565b60008060006040848603121561496d57600080fd5b833561497881613fa4565b925060208401356001600160401b0381111561499357600080fd5b61422c86828701613fe5565b600080604083850312156149b257600080fd5b82356149bd81613fa4565b915060208301356149cd81613fa4565b809150509250929050565b6000806000604084860312156149ed57600080fd5b8335925060208401356001600160401b0381111561499357600080fd5b60008060008060808587031215614a2057600080fd5b8435614a2b81613fa4565b93506020850135614a3b81613fa4565b92506040850135614a4b81613fa4565b91506060850135614a5b81613fa4565b939692955090935050565b600181811c90821680614a7a57607f821691505b6020821081036113ff57634e487b7160e01b600052602260045260246000fd5b600060208284031215614aac57600080fd5b610db782614239565b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112614ae257600080fd5b8301803591506001600160401b03821115614afc57600080fd5b602001915036819003821315613e0157600080fd5b634e487b7160e01b600052601160045260246000fd5b600060018201614b3957614b39614b11565b5060010190565b60208082526027908201527f52656769737472793a2053454e4445525f49535f4e4f545f4d494e54494e475f60408201526626a0a720a3a2a960c91b606082015260800190565b6000610db7368484614600565b60208082526029908201527f52656769737472793a2053454e4445525f49535f4e4f545f415050524f5645446040820152682fa7a92fa7aba722a960b91b606082015260800190565b60208082526022908201527f52656769737472793a20494e53554646494349454e545f5045524d495353494f6040820152614e5360f01b606082015260800190565b60008251614c31818460208701613f28565b9190910192915050565b601f821115610a1357600081815260208120601f850160051c81016020861015614c625750805b601f850160051c820191505b8181101561117057828155600101614c6e565b6001600160401b03831115614c9857614c986144d7565b614cac83614ca68354614a66565b83614c3b565b6000601f841160018114614ce05760008515614cc85750838201355b600019600387901b1c1916600186901b178355610ea0565b600083815260209020601f19861690835b82811015614d115786850135825560209485019460019092019101614cf1565b5086821015614d2e5760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b602081526000610cab602083018486614d40565b600060808236031215614d8f57600080fd5b604051608081016001600160401b038282108183111715614db257614db26144d7565b8160405284359150614dc382613fa4565b81835260208501356020840152604085013560408401526060850135915080821115614dee57600080fd5b50614dfb3682860161451d565b60608301525092915050565b6000614e1561460e846145dd565b80848252602080830192508560051b850136811115614e3357600080fd5b855b81811015614e6e5780356001600160401b03811115614e545760008081fd5b614e6036828a0161451d565b865250938201938201614e35565b50919695505050505050565b60008351614e8c818460208801613f28565b835190830190614ea0818360208801613f28565b01949350505050565b60006020808385031215614ebc57600080fd5b82356001600160401b03811115614ed257600080fd5b8301601f81018513614ee357600080fd5b8035614ef161460e826145dd565b81815260059190911b82018301908381019087831115614f1057600080fd5b928401925b82841015614f2e57833582529284019290840190614f15565b979650505050505050565b8082018082111561094057610940614b11565b6001600160a01b03848116825283166020820152606060408201819052600090610b6990830184613f4c565b634e487b7160e01b600052601260045260246000fd5b600082614f9d57614f9d614f78565b500490565b634e487b7160e01b600052600160045260246000fd5b8181038181111561094057610940614b11565b600081614fda57614fda614b11565b506000190190565b60008351614ff4818460208801613f28565b601760f91b9083019081528351615012816001840160208801613f28565b01600101949350505050565b60006020828403121561503057600080fd5b5051919050565b60006020828403121561504957600080fd5b8151610db781613fa4565b8183823760009101908152919050565b81516001600160401b0381111561507d5761507d6144d7565b6150918161508b8454614a66565b84614c3b565b602080601f8311600181146150c657600084156150ae5750858301515b600019600386901b1c1916600185901b178555611170565b600085815260208120601f198616915b828110156150f5578886015182559484019460019091019084016150d6565b50858210156151135787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60008451615135818460208901613f28565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6000826151c3576151c3614f78565b500690565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b634e487b7160e01b600052602160045260246000fd5b828152604060208201526000610cab6040830184613f4c565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061316590830184613f4c565b60006020828403121561528757600080fd5b8151610db781613ef556febe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a","storage":{}},"0x6ac8f19d1e0f81147cdf2a1e53cb1f4e18417204":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610296575f3560e01c80636352211e11610161578063c93ab3fd116100ca578063e985e9c511610084578063e985e9c5146106c8578063eb8ae530146106db578063ed70554d146106ee578063f242432a1461070d578063f2fde38b14610720578063fd0cd0d914610733575f80fd5b8063c93ab3fd14610647578063cf4088231461065a578063d8c9921a1461066d578063d9a50c1214610680578063da8c229e14610693578063e0dba60f146106b5575f80fd5b8063a22cb4651161011b578063a22cb465146105d5578063a4014982146105e8578063adf4960a146105fb578063b6bcad261461060e578063c475abff14610621578063c658e08614610634575f80fd5b80636352211e146105595780636e5d6ad21461056c578063715018a6146105975780638b4dfa751461059f5780638cf8b41e146105b25780638da5cb5b146105c5575f80fd5b80631f4e1504116102035780633f15457f116101bd5780633f15457f146104b1578063402906fc146104d857806341415eab146105005780634e1273f41461051357806353095467146105335780635d3590d514610546575f80fd5b80631f4e15041461042b57806320c38e2b1461043e57806324c1af44146104515780632b20e397146104645780632eb2c2d61461048b57806333c69ea91461049e575f80fd5b80630e4cd725116102545780630e4cd725146103a05780630e89341c146103b357806314ab9038146103c6578063150b7a02146103d95780631534e177146104055780631896f70a14610418575f80fd5b8062fdd58e1461029a5780630178fe3f146102c057806301ffc9a71461030657806306fdde0314610329578063081812fc14610360578063095ea7b31461038b575b5f80fd5b6102ad6102a8366004614316565b610746565b6040519081526020015b60405180910390f35b6102d36102ce366004614340565b6107f0565b604080516001600160a01b03909416845263ffffffff90921660208401526001600160401b0316908201526060016102b7565b61031961031436600461436c565b61081f565b60405190151581526020016102b7565b6103536040518060400160405280600b81526020016a2730b6b2abb930b83832b960a91b81525081565b6040516102b791906143d4565b61037361036e366004614340565b61085e565b6040516001600160a01b0390911681526020016102b7565b61039e610399366004614316565b6108a0565b005b6103196103ae3660046143e6565b6108e5565b6103536103c1366004614340565b61095e565b61039e6103d436600461442f565b6109cc565b6103ec6103e736600461449d565b610ac0565b6040516001600160e01b031990911681526020016102b7565b61039e61041336600461450a565b610c96565b61039e6104263660046143e6565b610cc0565b600754610373906001600160a01b031681565b61035361044c366004614340565b610d75565b6102ad61045f3660046145f6565b610e0c565b6103737f000000000000000000000000c965345edac823d56812cd20a10316233916a60581565b61039e610499366004614717565b610fe7565b61039e6104ac3660046147bd565b61121a565b6103737f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a981565b6104eb6104e6366004614811565b6113e6565b60405163ffffffff90911681526020016102b7565b61031961050e3660046143e6565b611480565b610526610521366004614832565b6114b8565b6040516102b79190614928565b600554610373906001600160a01b031681565b61039e61055436600461493a565b6115d7565b610373610567366004614340565b611655565b61057f61057a366004614978565b61165f565b6040516001600160401b0390911681526020016102b7565b61039e61178e565b61039e6105ad3660046149aa565b6117a1565b61057f6105c03660046149e9565b6118c0565b5f546001600160a01b0316610373565b61039e6105e3366004614a6b565b611c28565b6102ad6105f6366004614a97565b611cfd565b610319610609366004614b12565b611e38565b61039e61061c36600461450a565b611e5c565b6102ad61062f366004614b33565b61209e565b6102ad610642366004614b53565b6122fd565b61039e610655366004614bc0565b6124bd565b61039e610668366004614c26565b612605565b61039e61067b366004614c5b565b612794565b61031961068e366004614b33565b61285d565b6103196106a136600461450a565b60046020525f908152604090205460ff1681565b61039e6106c3366004614a6b565b612938565b6103196106d6366004614c86565b61299f565b61039e6106e9366004614cb2565b6129cc565b6102ad6106fc366004614340565b60016020525f908152604090205481565b61039e61071b366004614d15565b612d59565b61039e61072e36600461450a565b612e06565b610319610741366004614340565b612e7c565b5f6001600160a01b0383166107b65760405162461bcd60e51b815260206004820152602b60248201527f455243313135353a2062616c616e636520717565727920666f7220746865207a60448201526a65726f206164647265737360a81b60648201526084015b60405180910390fd5b5f6107c083611655565b9050836001600160a01b0316816001600160a01b0316036107e55760019150506107ea565b5f9150505b92915050565b5f8181526001602052604090205460a081901c60c082901c610813838383612f4d565b90959094509092509050565b5f6001600160e01b03198216631b05885b60e31b148061084f57506001600160e01b03198216630a85bd0160e11b145b806107ea57506107ea82612f80565b5f8061086983611655565b90506001600160a01b03811661088157505f92915050565b5f838152600360205260409020546001600160a01b03165b9392505050565b5f6108aa826107f0565b50915050603f1960408216016108d65760405163a2a7201360e01b8152600481018390526024016107ad565b6108e08383612fcf565b505050565b5f8080806108f2866107f0565b925092509250846001600160a01b0316836001600160a01b0316148061091d575061091d838661299f565b8061094157506001600160a01b0385166109368761085e565b6001600160a01b0316145b8015610954575061095282826130de565b155b9695505050505050565b6005546040516303a24d0760e21b8152600481018390526060916001600160a01b031690630e89341c906024015f60405180830381865afa1580156109a5573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526107ea9190810190614d78565b816109d78133611480565b6109f857803360405163168ab55d60e31b81526004016107ad929190614dea565b8260105f610a05836107f0565b5091505063ffffffff8282161615610a335760405163a2a7201360e01b8152600481018490526024016107ad565b604051630295720760e31b8152600481018790526001600160401b03861660248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906314ab9038906044015b5f604051808303815f87803b158015610aa2575f80fd5b505af1158015610ab4573d5f803e3d5ffd5b50505050505050505050565b5f336001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a6051614610b0a5760405163032634a760e31b815260040160405180910390fd5b5f808080610b1a86880188614e01565b83516020850120939750919550935091508890808214610b57576040516331970f3360e21b815260048101829052602481018390526044016107ad565b604051630a3b53db60e21b81526001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906328ed4f6c90610ba59085903090600401614dea565b5f604051808303815f87803b158015610bbc575f80fd5b505af1158015610bce573d5f803e3d5ffd5b5050604051636b727d4360e11b8152600481018d90525f92506276a70091506001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063d6e4fa8690602401602060405180830381865afa158015610c3c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c609190614e64565b610c6a9190614e8f565b9050610c7d87878761ffff16848861310d565b50630a85bd0160e11b9c9b505050505050505050505050565b610c9e613215565b600580546001600160a01b0319166001600160a01b0392909216919091179055565b81610ccb8133611480565b610cec57803360405163168ab55d60e31b81526004016107ad929190614dea565b8260085f610cf9836107f0565b5091505063ffffffff8282161615610d275760405163a2a7201360e01b8152600481018490526024016107ad565b604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a90610a8b9089908990600401614dea565b60066020525f908152604090208054610d8d90614eb6565b80601f0160208091040260200160405190810160405280929190818152602001828054610db990614eb6565b8015610e045780601f10610ddb57610100808354040283529160200191610e04565b820191905f5260205f20905b815481529060010190602001808311610de757829003601f168201915b505050505081565b5f87610e188133611480565b610e3957803360405163168ab55d60e31b81526004016107ad929190614dea565b87516020890120610e4a8a8261326e565b9250610e568a8461329a565b610e6083866133d3565b610e6b8a848b613406565b50610e788a8487876134cd565b9350610e8383613510565b610f33576040516305ef2c7f60e41b8152600481018b9052602481018290523060448201526001600160a01b0388811660648301526001600160401b03881660848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610f0a575f80fd5b505af1158015610f1c573d5f803e3d5ffd5b50505050610f2e8a848b8b89896135c6565b610fda565b6040516305ef2c7f60e41b8152600481018b9052602481018290523060448201526001600160a01b0388811660648301526001600160401b03881660848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610fb6575f80fd5b505af1158015610fc8573d5f803e3d5ffd5b50505050610fda8a848b8b89896135fc565b5050979650505050505050565b81518351146110495760405162461bcd60e51b815260206004820152602860248201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206044820152670dad2e6dac2e8c6d60c31b60648201526084016107ad565b6001600160a01b03841661106f5760405162461bcd60e51b81526004016107ad90614eee565b6001600160a01b03851633148061108b575061108b853361299f565b6110f25760405162461bcd60e51b815260206004820152603260248201527f455243313135353a207472616e736665722063616c6c6572206973206e6f74206044820152711bdddb995c881b9bdc88185c1c1c9bdd995960721b60648201526084016107ad565b5f5b83518110156111ad575f84828151811061111057611110614f33565b602002602001015190505f84838151811061112d5761112d614f33565b602002602001015190505f805f611143856107f0565b9250925092506111548583836136b6565b83600114801561117557508a6001600160a01b0316836001600160a01b0316145b6111915760405162461bcd60e51b81526004016107ad90614f47565b61119d858b848461375d565b50505050508060010190506110f4565b50836001600160a01b0316856001600160a01b0316336001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516111fd929190614f91565b60405180910390a461121333868686868661379d565b5050505050565b5f611225858561326e565b905061123181846133d3565b5f808061123d846107f0565b919450925090506001600160a01b03831615806112ea57506040516302571be360e01b81526004810185905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa1580156112ba573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112de9190614fbe565b6001600160a01b031614155b1561130857604051635374b59960e01b815260040160405180910390fd5b5f806113138a6107f0565b90935091508a905061134f576113298633611480565b61134a57853360405163168ab55d60e31b81526004016107ad929190614dea565b61137a565b6113598a33611480565b61137a57893360405163168ab55d60e31b81526004016107ad929190614dea565b6113858689846138f7565b611390878483613932565b9650620100008416158015906113b457508363ffffffff1688851763ffffffff1614155b156113d55760405163a2a7201360e01b8152600481018790526024016107ad565b96831796610ab486868a868b613977565b5f826113f28133611480565b61141357803360405163168ab55d60e31b81526004016107ad929190614dea565b8360025f611420836107f0565b5091505063ffffffff828216161561144e5760405163a2a7201360e01b8152600481018490526024016107ad565b5f808061145a8a6107f0565b9250925092506114738a84848c61ffff16178485613977565b5098975050505050505050565b5f80808061148d866107f0565b925092509250846001600160a01b0316836001600160a01b031614806109415750610941838661299f565b6060815183511461151d5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b60648201526084016107ad565b5f83516001600160401b0381111561153757611537614525565b604051908082528060200260200182016040528015611560578160200160208202803683370190505b5090505f5b84518110156115cf576115aa85828151811061158357611583614f33565b602002602001015185838151811061159d5761159d614f33565b6020026020010151610746565b8282815181106115bc576115bc614f33565b6020908102919091010152600101611565565b509392505050565b6115df613215565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af115801561162b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061164f9190614fd9565b50505050565b5f6107ea82613a1e565b5f8061166b858561326e565b905061167681613510565b61169357604051635374b59960e01b815260040160405180910390fd5b5f61169e86336108e5565b9050801580156116b557506116b38233611480565b155b156116d757813360405163168ab55d60e31b81526004016107ad929190614dea565b5f80806116e3856107f0565b925092509250831580156116fa5750620400008216155b1561171b5760405163a2a7201360e01b8152600481018690526024016107ad565b5f6117258a6107f0565b92505050611734888383613932565b97506117428685858b613a33565b6040516001600160401b038916815286907ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b1329060200160405180910390a2509598975050505050505050565b611796613215565b61179f5f613a49565b565b6117b85f805160206154fc8339815191528461326e565b6117c28133611480565b6117e357803360405163168ab55d60e31b81526004016107ad929190614dea565b306001600160a01b0384160361181757604051632ca49b0d60e11b81526001600160a01b03841660048201526024016107ad565b6118376118315f805160206154fc8339815191528661326e565b83613a98565b604051632142170760e11b81523060048201526001600160a01b038481166024830152604482018690527f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906342842e0e906064015f604051808303815f87803b1580156118a4575f80fd5b505af11580156118b6573d5f803e3d5ffd5b5050505050505050565b5f8086866040516118d2929190614ff4565b6040519081900381206331a9108f60e11b82526004820181905291505f907f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa15801561193f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119639190614fbe565b90506001600160a01b0381163314801590611a09575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063e985e9c590604401602060405180830381865afa1580156119e3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a079190614fd9565b155b15611a4157611a255f805160206154fc8339815191528361326e565b3360405163168ab55d60e31b81526004016107ad929190614dea565b6040516323b872dd60e01b81526001600160a01b038281166004830152306024830152604482018490527f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906323b872dd906064015f604051808303815f87803b158015611aae575f80fd5b505af1158015611ac0573d5f803e3d5ffd5b5050604051630a3b53db60e21b81526001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a6051692506328ed4f6c9150611b129085903090600401614dea565b5f604051808303815f87803b158015611b29575f80fd5b505af1158015611b3b573d5f803e3d5ffd5b5050604051636b727d4360e11b8152600481018590526276a70092507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b0316915063d6e4fa8690602401602060405180830381865afa158015611ba7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611bcb9190614e64565b611bd59190614e8f565b9250611c1d88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508a9250505061ffff8816868861310d565b505095945050505050565b6001600160a01b0382163303611c925760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084016107ad565b335f8181526002602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b335f9081526004602052604081205460ff16611d2b5760405162461bcd60e51b81526004016107ad90615003565b5f8787604051611d3c929190614ff4565b604051908190038120633f2891eb60e21b8252600482018190523060248301526044820187905291507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b03169063fca247ac906064016020604051808303815f875af1158015611db5573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611dd99190614e64565b9150611e2d88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508a9250505061ffff8616611e276276a70087614e8f565b8861310d565b509695505050505050565b5f80611e43846107f0565b50841663ffffffff908116908516149250505092915050565b611e64613215565b6007546001600160a01b031615611f785760075460405163a22cb46560e01b81526001600160a01b0391821660048201525f60248201527f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063a22cb465906044015f604051808303815f87803b158015611ee0575f80fd5b505af1158015611ef2573d5f803e3d5ffd5b505060075460405163a22cb46560e01b81526001600160a01b0391821660048201525f60248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9909116925063a22cb46591506044015f604051808303815f87803b158015611f61575f80fd5b505af1158015611f73573d5f803e3d5ffd5b505050505b600780546001600160a01b0319166001600160a01b0383169081179091551561209b5760075460405163a22cb46560e01b81526001600160a01b039182166004820152600160248201527f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063a22cb465906044015f604051808303815f87803b158015612007575f80fd5b505af1158015612019573d5f803e3d5ffd5b505060075460405163a22cb46560e01b81526001600160a01b039182166004820152600160248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9909116925063a22cb46591506044015f604051808303815f87803b158015612089575f80fd5b505af1158015611213573d5f803e3d5ffd5b50565b335f9081526004602052604081205460ff166120cc5760405162461bcd60e51b81526004016107ad90615003565b5f6120e45f805160206154fc8339815191528561326e565b60405163c475abff60e01b815260048101869052602481018590529091505f906001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063c475abff906044016020604051808303815f875af1158015612154573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906121789190614e64565b6040516331a9108f60e11b8152600481018790529091507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa9250505080156121fc575060408051601f3d908101601f191682019092526121f991810190614fbe565b60015b6122095791506107ea9050565b6001600160a01b038116301415806122b157506040516302571be360e01b81526004810184905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015612281573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906122a59190614fbe565b6001600160a01b031614155b156122c0575091506107ea9050565b505f6122cf6276a70083614e8f565b5f8481526001602052604090205490915060a081901c6122f185838386613a33565b50919695505050505050565b5f866123098133611480565b61232a57803360405163168ab55d60e31b81526004016107ad929190614dea565b5f878760405161233b929190614ff4565b6040518091039020905061234f898261326e565b925061235b898461329a565b61236583866133d3565b5f6123a68a858b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061340692505050565b90506123b48a8588886134cd565b94506123bf84613510565b61246b576040516306ab592360e01b8152600481018b9052602481018390523060448201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906306ab5923906064016020604051808303815f875af1158015612434573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906124589190614e64565b506124668482898989613b83565b6124b0565b6124b08a858b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508d92508c91508b90506135fc565b5050509695505050505050565b5f6125005f86868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613bc59050565b6007549091506001600160a01b031661252c5760405163093075b560e21b815260040160405180910390fd5b6125368133611480565b61255757803360405163168ab55d60e31b81526004016107ad929190614dea565b5f8080612563846107f0565b919450925090505f6125748561085e565b905061257f85613c81565b60075f9054906101000a90046001600160a01b03166001600160a01b0316639198c2768a8a878787878e8e6040518963ffffffff1660e01b81526004016125cd989796959493929190615073565b5f604051808303815f87803b1580156125e4575f80fd5b505af11580156125f6573d5f803e3d5ffd5b50505050505050505050505050565b836126108133611480565b61263157803360405163168ab55d60e31b81526004016107ad929190614dea565b84601c5f61263e836107f0565b5091505063ffffffff828216161561266c5760405163a2a7201360e01b8152600481018490526024016107ad565b60405163cf40882360e01b8152600481018990523060248201526001600160a01b0387811660448301526001600160401b03871660648301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063cf408823906084015f604051808303815f87803b1580156126e8575f80fd5b505af11580156126fa573d5f803e3d5ffd5b5050506001600160a01b038816905061275f575f612717896107f0565b509150506201ffff196202000082160161274f57604051632ca49b0d60e11b81526001600160a01b03891660048201526024016107ad565b612759895f613a98565b506118b6565b5f61276989611655565b905061278981898b5f1c600160405180602001604052805f815250613d1e565b505050505050505050565b61279e838361326e565b6127a88133611480565b6127c957803360405163168ab55d60e31b81526004016107ad929190614dea565b7f6c32148f748aba23997146d7fe89e962e3cc30271290fb96f5f4337756c03b5284016128095760405163615a470360e01b815260040160405180910390fd5b6001600160a01b038216158061282757506001600160a01b03821630145b1561285057604051632ca49b0d60e11b81526001600160a01b03831660048201526024016107ad565b61164f611831858561326e565b5f80612869848461326e565b90505f61287582613510565b90505f805160206154fc83398151915285146128945791506107ea9050565b6040516331a9108f60e11b8152600481018590527f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa925050508015612915575060408051601f3d908101601f1916820190925261291291810190614fbe565b60015b612923575f925050506107ea565b6001600160a01b0316301492506107ea915050565b612940613215565b6001600160a01b0382165f81815260046020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf8791015b60405180910390a25050565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205460ff1690565b5f80612a105f87878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613dfe9050565b915091505f612a578288888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613bc59050565b90505f612a64828561326e565b5f818152600660205260409020909150612a7f888a8361511e565b507f6c32148f748aba23997146d7fe89e962e3cc30271290fb96f5f4337756c03b528201612ac05760405163615a470360e01b815260040160405180910390fd5b6040516302571be360e01b8152600481018290525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa158015612b25573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612b499190614fbe565b90506001600160a01b0381163314801590612bef575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063e985e9c590604401602060405180830381865afa158015612bc9573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612bed9190614fd9565b155b15612c1157813360405163168ab55d60e31b81526004016107ad929190614dea565b6001600160a01b03861615612c9c57604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a90612c6e9085908a90600401614dea565b5f604051808303815f87803b158015612c85575f80fd5b505af1158015612c97573d5f803e3d5ffd5b505050505b604051635b0fc9c360e01b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635b0fc9c390612cea9085903090600401614dea565b5f604051808303815f87803b158015612d01575f80fd5b505af1158015612d13573d5f803e3d5ffd5b50505050612789828a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201829052508d93509150819050613b83565b6001600160a01b038416612d7f5760405162461bcd60e51b81526004016107ad90614eee565b6001600160a01b038516331480612d9b5750612d9b853361299f565b612df95760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2063616c6c6572206973206e6f74206f776e6572206e6f7260448201526808185c1c1c9bdd995960ba1b60648201526084016107ad565b6112138585858585613d1e565b612e0e613215565b6001600160a01b038116612e735760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107ad565b61209b81613a49565b5f8181526006602052604081208054829190612e9790614eb6565b80601f0160208091040260200160405190810160405280929190818152602001828054612ec390614eb6565b8015612f0e5780601f10612ee557610100808354040283529160200191612f0e565b820191905f5260205f20905b815481529060010190602001808311612ef157829003601f168201915b5050505050905080515f03612f2557505f92915050565b5f80612f318382613dfe565b90925090505f612f418483613bc5565b9050610954818461285d565b5f8042836001600160401b03161015612f775761ffff1962010000851601612f73575f94505b5f93505b50929391925050565b5f6001600160e01b03198216636cdb3d1360e11b1480612fb057506001600160e01b031982166303a24d0760e21b145b806107ea57506301ffc9a760e01b6001600160e01b03198316146107ea565b5f612fd982611655565b9050806001600160a01b0316836001600160a01b0316036130465760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084016107ad565b336001600160a01b03821614806130625750613062813361299f565b6130d45760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016107ad565b6108e08383613eb2565b5f620200008381161480156108995750426130fc6276a700846151d7565b6001600160401b0316109392505050565b845160208601205f61312c5f805160206154fc8339815191528361326e565b90505f61315488604051806040016040528060058152602001626cae8d60e31b815250613f1f565b5f83815260066020526040902090915061316e82826151f7565b50613181828289620300008a1789613b83565b6001600160a01b038416156118b657604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a906131de9085908890600401614dea565b5f604051808303815f87803b1580156131f5575f80fd5b505af1158015613207573d5f803e3d5ffd5b505050505050505050505050565b5f546001600160a01b0316331461179f5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107ad565b604080516020808201949094528082019290925280518083038201815260609092019052805191012090565b5f80806132a6846107f0565b91945092509050426001600160401b0382161080801561336657506001600160a01b038416158061336657506040516302571be360e01b8152600481018690525f906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015613337573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061335b9190614fbe565b6001600160a01b0316145b156133a4575f613375876107f0565b50915050602081161561339e5760405163a2a7201360e01b8152600481018790526024016107ad565b506133cb565b620100008316156133cb5760405163a2a7201360e01b8152600481018690526024016107ad565b505050505050565b63fffdffff81811763ffffffff16146134025760405163a2a7201360e01b8152600481018390526024016107ad565b5050565b60605f6134aa8360065f8881526020019081526020015f20805461342990614eb6565b80601f016020809104026020016040519081016040528092919081815260200182805461345590614eb6565b80156134a05780601f10613477576101008083540402835291602001916134a0565b820191905f5260205f20905b81548152906001019060200180831161348357829003601f168201915b5050505050613f1f565b5f8581526006602052604090209091506134c482826151f7565b50949350505050565b5f806134d8856107f0565b925050505f806134e9885f1c6107f0565b92509250506134f98787846138f7565b613504858483613932565b98975050505050505050565b5f8061351b83611655565b6001600160a01b0316141580156107ea57506040516302571be360e01b81526004810183905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015613592573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906135b69190614fbe565b6001600160a01b03161492915050565b5f86815260066020526040812080546135e491879161342990614eb6565b90506135f38682868686613b83565b50505050505050565b5f8080613608886107f0565b9250925092505f61362f8860065f8d81526020019081526020015f20805461342990614eb6565b5f8a815260066020526040902080549192509061364b90614eb6565b90505f0361366c575f89815260066020526040902061366a82826151f7565b505b61367b89858886178589613977565b6001600160a01b03871661369857613693895f613a98565b610ab4565b610ab484888b5f1c600160405180602001604052805f815250613d1e565b6201ffff19620200008316016136d6576136d36276a700826151d7565b90505b42816001600160401b0316101561370f576201000082161561370a5760405162461bcd60e51b81526004016107ad90614f47565b613734565b60048216156137345760405163a2a7201360e01b8152600481018490526024016107ad565b604082165f036108e05750505f90815260036020526040902080546001600160a01b0319169055565b60c0816001600160401b0316901b60a08363ffffffff16901b846001600160a01b0316171760015f8681526020019081526020015f208190555050505050565b6001600160a01b0384163b156133cb5760405163bc197c8160e01b81526001600160a01b0385169063bc197c81906137e190899089908890889088906004016152b2565b6020604051808303815f875af192505050801561381b575060408051601f3d908101601f1916820190925261381891810190615303565b60015b6138c75761382761531e565b806308c379a003613860575061383b615337565b806138465750613862565b8060405162461bcd60e51b81526004016107ad91906143d4565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e20455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b60648201526084016107ad565b6001600160e01b0319811663bc197c8160e01b146135f35760405162461bcd60e51b81526004016107ad906153bf565b63ffff000082161580159060018316159082906139115750805b156112135760405163a2a7201360e01b8152600481018690526024016107ad565b5f816001600160401b0316846001600160401b03161115613951578193505b826001600160401b0316846001600160401b0316101561396f578293505b509192915050565b61398385858584613a33565b60405163ffffffff8416815285907f39873f00c80f4f94b7bd1594aebcf650f003545b74824d57ddf4939e3ff3a34b9060200160405180910390a2816001600160401b0316816001600160401b03161115611213576040516001600160401b038216815285907ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b132906020015b60405180910390a25050505050565b5f80613a29836107f0565b5090949350505050565b613a3d8483613f96565b61164f8484848461375d565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b613aa3826001611e38565b15613ac45760405163a2a7201360e01b8152600481018390526024016107ad565b613acd82613c81565b604051635b0fc9c360e01b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635b0fc9c390613b1b9085908590600401614dea565b5f604051808303815f87803b158015613b32575f80fd5b505af1158015613b44573d5f803e3d5ffd5b50506040516001600160a01b03841681528492507fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c49150602001612993565b613b8f85848484613fcf565b847f8ce7013e8abebc55c3890a68f5a27c67c3f7efa64e584de5fb22363c606fd34085858585604051613a0f9493929190615407565b5f805f613bd28585613dfe565b909250905081613c435760018551613bea919061544d565b8414613c385760405162461bcd60e51b815260206004820152601d60248201527f6e616d65686173683a204a756e6b20617420656e64206f66206e616d6500000060448201526064016107ad565b505f91506107ea9050565b613c4d8582613bc5565b6040805160208101929092528101839052606001604051602081830303815290604052805190602001209250505092915050565b5f8181526001602052604090205460a081901c60c082901c613ca4838383612f4d565b5f86815260036020526040812080546001600160a01b0319169055909350613cd091508590848461375d565b60408051858152600160208201525f916001600160a01b0386169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b5f805f613d2a866107f0565b925092509250613d3b8683836136b6565b846001148015613d5c5750876001600160a01b0316836001600160a01b0316145b613d785760405162461bcd60e51b81526004016107ad90614f47565b866001600160a01b0316836001600160a01b031603613d9957505050611213565b613da58688848461375d565b60408051878152602081018790526001600160a01b03808a1692908b169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46118b6338989898989614041565b5f8083518310613e505760405162461bcd60e51b815260206004820152601e60248201527f726561644c6162656c3a20496e646578206f7574206f6620626f756e6473000060448201526064016107ad565b5f848481518110613e6357613e63614f33565b016020015160f81c90508015613e8f57613e8885613e82866001615460565b836140fb565b9250613e93565b5f92505b613e9d8185615460565b613ea8906001615460565b9150509250929050565b5f81815260036020526040902080546001600160a01b0319166001600160a01b0384169081179091558190613ee682611655565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6060600183511015613f4457604051631406d65b60e11b815260040160405180910390fd5b60ff83511115613f69578260405163e3ba295f60e01b81526004016107ad91906143d4565b82518383604051602001613f7f93929190615473565b604051602081830303815290604052905092915050565b61ffff811615801590613fae57506201000181811614155b156134025760405163a2a7201360e01b8152600481018390526024016107ad565b613fd98483613f96565b5f848152600160205260409020546001600160a01b0381161561403557613fff85613c81565b6040515f815285907fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c49060200160405180910390a25b6112138585858561411d565b6001600160a01b0384163b156133cb5760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e619061408590899089908890889088906004016154b7565b6020604051808303815f875af19250505080156140bf575060408051601f3d908101601f191682019092526140bc91810190615303565b60015b6140cb5761382761531e565b6001600160e01b0319811663f23a6e6160e01b146135f35760405162461bcd60e51b81526004016107ad906153bf565b82515f906141098385615460565b1115614113575f80fd5b5091016020012090565b835f808061412a846107f0565b9194509250905063ffff000082166001600160401b038087169083161115614150578195505b42826001600160401b03161061416557958617955b6001600160a01b038416156141bc5760405162461bcd60e51b815260206004820152601f60248201527f455243313135353a206d696e74206f66206578697374696e6720746f6b656e0060448201526064016107ad565b6001600160a01b03881661421c5760405162461bcd60e51b815260206004820152602160248201527f455243313135353a206d696e7420746f20746865207a65726f206164647265736044820152607360f81b60648201526084016107ad565b306001600160a01b038916036142915760405162461bcd60e51b815260206004820152603460248201527f455243313135353a206e65774f776e65722063616e6e6f74206265207468652060448201527313985b5955dc985c1c195c8818dbdb9d1c9858dd60621b60648201526084016107ad565b61429d8589898961375d565b60408051868152600160208201526001600160a01b038a16915f9133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4612789335f8a88600160405180602001604052805f815250614041565b6001600160a01b038116811461209b575f80fd5b5f8060408385031215614327575f80fd5b823561433281614302565b946020939093013593505050565b5f60208284031215614350575f80fd5b5035919050565b6001600160e01b03198116811461209b575f80fd5b5f6020828403121561437c575f80fd5b813561089981614357565b5f5b838110156143a1578181015183820152602001614389565b50505f910152565b5f81518084526143c0816020860160208601614387565b601f01601f19169290920160200192915050565b602081525f61089960208301846143a9565b5f80604083850312156143f7575f80fd5b82359150602083013561440981614302565b809150509250929050565b80356001600160401b038116811461442a575f80fd5b919050565b5f8060408385031215614440575f80fd5b8235915061445060208401614414565b90509250929050565b5f8083601f840112614469575f80fd5b5081356001600160401b0381111561447f575f80fd5b602083019150836020828501011115614496575f80fd5b9250929050565b5f805f805f608086880312156144b1575f80fd5b85356144bc81614302565b945060208601356144cc81614302565b93506040860135925060608601356001600160401b038111156144ed575f80fd5b6144f988828901614459565b969995985093965092949392505050565b5f6020828403121561451a575f80fd5b813561089981614302565b634e487b7160e01b5f52604160045260245ffd5b601f8201601f191681016001600160401b038111828210171561455e5761455e614525565b6040525050565b5f6001600160401b0382111561457d5761457d614525565b50601f01601f191660200190565b5f82601f83011261459a575f80fd5b81356145a581614565565b6040516145b28282614539565b8281528560208487010111156145c6575f80fd5b826020860160208301375f92810160200192909252509392505050565b803563ffffffff8116811461442a575f80fd5b5f805f805f805f60e0888a03121561460c575f80fd5b8735965060208801356001600160401b03811115614628575f80fd5b6146348a828b0161458b565b965050604088013561464581614302565b9450606088013561465581614302565b935061466360808901614414565b925061467160a089016145e3565b915061467f60c08901614414565b905092959891949750929550565b5f6001600160401b038211156146a5576146a5614525565b5060051b60200190565b5f82601f8301126146be575f80fd5b813560206146cb8261468d565b6040516146d88282614539565b80915083815260208101915060208460051b8701019350868411156146fb575f80fd5b602086015b84811015611e2d5780358352918301918301614700565b5f805f805f60a0868803121561472b575f80fd5b853561473681614302565b9450602086013561474681614302565b935060408601356001600160401b0380821115614761575f80fd5b61476d89838a016146af565b94506060880135915080821115614782575f80fd5b61478e89838a016146af565b935060808801359150808211156147a3575f80fd5b506147b08882890161458b565b9150509295509295909350565b5f805f80608085870312156147d0575f80fd5b84359350602085013592506147e7604086016145e3565b91506147f560608601614414565b905092959194509250565b803561ffff8116811461442a575f80fd5b5f8060408385031215614822575f80fd5b8235915061445060208401614800565b5f8060408385031215614843575f80fd5b82356001600160401b0380821115614859575f80fd5b818501915085601f83011261486c575f80fd5b813560206148798261468d565b6040516148868282614539565b83815260059390931b85018201928281019150898411156148a5575f80fd5b948201945b838610156148cc5785356148bd81614302565b825294820194908201906148aa565b965050860135925050808211156148e1575f80fd5b50613ea8858286016146af565b5f815180845260208085019450602084015f5b8381101561491d57815187529582019590820190600101614901565b509495945050505050565b602081525f61089960208301846148ee565b5f805f6060848603121561494c575f80fd5b833561495781614302565b9250602084013561496781614302565b929592945050506040919091013590565b5f805f6060848603121561498a575f80fd5b83359250602084013591506149a160408501614414565b90509250925092565b5f805f606084860312156149bc575f80fd5b8335925060208401356149ce81614302565b915060408401356149de81614302565b809150509250925092565b5f805f805f608086880312156149fd575f80fd5b85356001600160401b03811115614a12575f80fd5b614a1e88828901614459565b9096509450506020860135614a3281614302565b9250614a4060408701614800565b91506060860135614a5081614302565b809150509295509295909350565b801515811461209b575f80fd5b5f8060408385031215614a7c575f80fd5b8235614a8781614302565b9150602083013561440981614a5e565b5f805f805f8060a08789031215614aac575f80fd5b86356001600160401b03811115614ac1575f80fd5b614acd89828a01614459565b9097509550506020870135614ae181614302565b9350604087013592506060870135614af881614302565b9150614b0660808801614800565b90509295509295509295565b5f8060408385031215614b23575f80fd5b82359150614450602084016145e3565b5f8060408385031215614b44575f80fd5b50508035926020909101359150565b5f805f805f8060a08789031215614b68575f80fd5b8635955060208701356001600160401b03811115614b84575f80fd5b614b9089828a01614459565b9096509450506040870135614ba481614302565b9250614bb2606088016145e3565b9150614b0660808801614414565b5f805f8060408587031215614bd3575f80fd5b84356001600160401b0380821115614be9575f80fd5b614bf588838901614459565b90965094506020870135915080821115614c0d575f80fd5b50614c1a87828801614459565b95989497509550505050565b5f805f8060808587031215614c39575f80fd5b843593506020850135614c4b81614302565b925060408501356147e781614302565b5f805f60608486031215614c6d575f80fd5b833592506020840135915060408401356149de81614302565b5f8060408385031215614c97575f80fd5b8235614ca281614302565b9150602083013561440981614302565b5f805f8060608587031215614cc5575f80fd5b84356001600160401b03811115614cda575f80fd5b614ce687828801614459565b9095509350506020850135614cfa81614302565b91506040850135614d0a81614302565b939692955090935050565b5f805f805f60a08688031215614d29575f80fd5b8535614d3481614302565b94506020860135614d4481614302565b9350604086013592506060860135915060808601356001600160401b03811115614d6c575f80fd5b6147b08882890161458b565b5f60208284031215614d88575f80fd5b81516001600160401b03811115614d9d575f80fd5b8201601f81018413614dad575f80fd5b8051614db881614565565b604051614dc58282614539565b828152866020848601011115614dd9575f80fd5b610954836020830160208701614387565b9182526001600160a01b0316602082015260400190565b5f805f8060808587031215614e14575f80fd5b84356001600160401b03811115614e29575f80fd5b614e358782880161458b565b9450506020850135614e4681614302565b9250614e5460408601614800565b91506060850135614d0a81614302565b5f60208284031215614e74575f80fd5b5051919050565b634e487b7160e01b5f52601160045260245ffd5b6001600160401b03818116838216019080821115614eaf57614eaf614e7b565b5092915050565b600181811c90821680614eca57607f821691505b602082108103614ee857634e487b7160e01b5f52602260045260245ffd5b50919050565b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b634e487b7160e01b5f52603260045260245ffd5b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b604081525f614fa360408301856148ee565b8281036020840152614fb581856148ee565b95945050505050565b5f60208284031215614fce575f80fd5b815161089981614302565b5f60208284031215614fe9575f80fd5b815161089981614a5e565b818382375f9101908152919050565b60208082526028908201527f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f604082015267373a3937b63632b960c11b606082015260800190565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b60c081525f61508660c083018a8c61504b565b6001600160a01b03898116602085015263ffffffff891660408501526001600160401b03881660608501528616608084015282810360a08401526150cb81858761504b565b9b9a5050505050505050505050565b601f8211156108e057805f5260205f20601f840160051c810160208510156150ff5750805b601f840160051c820191505b81811015611213575f815560010161510b565b6001600160401b0383111561513557615135614525565b615149836151438354614eb6565b836150da565b5f601f84116001811461517a575f85156151635750838201355b5f19600387901b1c1916600186901b178355611213565b5f83815260208120601f198716915b828110156151a95786850135825560209485019460019092019101615189565b50868210156151c5575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b6001600160401b03828116828216039080821115614eaf57614eaf614e7b565b81516001600160401b0381111561521057615210614525565b6152248161521e8454614eb6565b846150da565b602080601f831160018114615257575f84156152405750858301515b5f19600386901b1c1916600185901b1785556133cb565b5f85815260208120601f198616915b8281101561528557888601518255948401946001909101908401615266565b50858210156152a257878501515f19600388901b60f8161c191681555b5050505050600190811b01905550565b6001600160a01b0386811682528516602082015260a0604082018190525f906152dd908301866148ee565b82810360608401526152ef81866148ee565b9050828103608084015261350481856143a9565b5f60208284031215615313575f80fd5b815161089981614357565b5f60033d11156153345760045f803e505f5160e01c5b90565b5f60443d10156153445790565b6040516003193d81016004833e81513d6001600160401b03816024840111818411171561537357505050505090565b828501915081518181111561538b5750505050505090565b843d87010160208285010111156153a55750505050505090565b6153b460208286010187614539565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b608081525f61541960808301876143a9565b6001600160a01b039590951660208301525063ffffffff9290921660408301526001600160401b0316606090910152919050565b818103818111156107ea576107ea614e7b565b808201808211156107ea576107ea614e7b565b60ff60f81b8460f81b1681525f8351615493816001850160208801614387565b8351908301906154aa816001840160208801614387565b0160010195945050505050565b6001600160a01b03868116825285166020820152604081018490526060810183905260a0608082018190525f906154f0908301846143a9565b97965050505050505056fe93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4aea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2a68925cf5169f28586095d5b5b9933b3008f4c793a48be4f59b8b2bc62aa60a":"0x1","0x54cdd369e4e8a8515e52ca72ec816c2101831ad1f18bf44102ed171459c9b4f8":"0x2","0xa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb49":"0xffffffffffffffff000100010000000000000000000000000000000000000000","0xafa26c20e8b3d9a2853d642cfe1021dae26242ffedfac91c97aab212c1a4b93b":"0xffffffffffffffff000100010000000000000000000000000000000000000000","0xef5b11c47ebee44618abc22110e10e3b408ea5e799056d2b38461aa7b97c5a97":"0x1","0xfb9e8e321b8a5ec48f12a7b41f22c6e595d761285c9eb19d8dda7c99edf1b54f":"0x36574680000000000000000000000000000000000000000000000000000000a"}},"0x6e1eb616c7d69491f9a880f815ff5574768cba20":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b506004361061007a575f3560e01c806314ab90381161005857806314ab90381461010357806316a25cbd146101165780631896f70a146101625780635b0fc9c314610175575f80fd5b80630178b8bf1461007e57806302571be3146100c657806306ab5923146100ee575b5f80fd5b6100a961008c366004610403565b5f908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100a96100d4366004610403565b5f908152602081905260409020546001600160a01b031690565b6101016100fc366004610435565b610188565b005b610101610111366004610467565b610242565b610149610124366004610403565b5f90815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100bd565b6101016101703660046104a1565b6102e2565b6101016101833660046104a1565b610374565b5f8381526020819052604090205483906001600160a01b031633146101ab575f80fd5b60408051602080820187905281830186905282518083038401815260608301808552815191909201206001600160a01b0386169091529151859187917fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829181900360800190a35f90815260208190526040902080546001600160a01b0319166001600160a01b039390931692909217909155505050565b5f8281526020819052604090205482906001600160a01b03163314610265575f80fd5b60405167ffffffffffffffff8316815283907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a2505f91825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b5f8281526020819052604090205482906001600160a01b03163314610305575f80fd5b6040516001600160a01b038316815283907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a2505f9182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b5f8281526020819052604090205482906001600160a01b03163314610397575f80fd5b6040516001600160a01b038316815283907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a2505f9182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b5f60208284031215610413575f80fd5b5035919050565b80356001600160a01b0381168114610430575f80fd5b919050565b5f805f60608486031215610447575f80fd5b833592506020840135915061045e6040850161041a565b90509250925092565b5f8060408385031215610478575f80fd5b82359150602083013567ffffffffffffffff81168114610496575f80fd5b809150509250929050565b5f80604083850312156104b2575f80fd5b823591506104c26020840161041a565b9050925092905056fea164736f6c6343000818000a","storage":{"0x859ecef2e168dc10231b000bd53493b42bc9d944cac29d94582c1e1d43592131":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x7bb6cd9be29fab783c0b494a06fed8b2e2596b7a":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100ea5760003560e01c80636debcb8d1161008c578063b34f33c511610066578063b34f33c514610741578063d0778d6c14610814578063ef2c3088146108f2578063f5090c1e14610980576100ea565b80636debcb8d146105ca5780636fab95b3146106585780637b1039991461071d576100ea565b8063511f1112116100c8578063511f1112146103c557806361603dd91461044857806368b6154f146104bd5780636ccbae5f1461059b576100ea565b806307eca395146100ef578063280d9b051461021457806330135293146102f2575b600080fd5b610212600480360360a081101561010557600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561013457600080fd5b82018360208201111561014657600080fd5b803590602001918460018302840111600160201b8311171561016757600080fd5b919390929091602081019035600160201b81111561018457600080fd5b82018360208201111561019657600080fd5b803590602001918460018302840111600160201b831117156101b757600080fd5b919390929091602081019035600160201b8111156101d457600080fd5b8201836020820111156101e657600080fd5b803590602001918460018302840111600160201b8311171561020757600080fd5b509092509050610aae565b005b610212600480360360a081101561022a57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561026457600080fd5b82018360208201111561027657600080fd5b803590602001918460018302840111600160201b8311171561029757600080fd5b919390929091602081019035600160201b8111156102b457600080fd5b8201836020820111156102c657600080fd5b803590602001918460018302840111600160201b831117156102e757600080fd5b509092509050610c92565b6102126004803603608081101561030857600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561033757600080fd5b82018360208201111561034957600080fd5b803590602001918460018302840111600160201b8311171561036a57600080fd5b919390929091602081019035600160201b81111561038757600080fd5b82018360208201111561039957600080fd5b803590602001918460018302840111600160201b831117156103ba57600080fd5b509092509050610e3d565b610212600480360360608110156103db57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561040a57600080fd5b82018360208201111561041c57600080fd5b803590602001918460018302840111600160201b8311171561043d57600080fd5b509092509050610fcc565b6102126004803603604081101561045e57600080fd5b81359190810190604081016020820135600160201b81111561047f57600080fd5b82018360208201111561049157600080fd5b803590602001918460018302840111600160201b831117156104b257600080fd5b5090925090506110c9565b610212600480360360a08110156104d357600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561050d57600080fd5b82018360208201111561051f57600080fd5b803590602001918460018302840111600160201b8311171561054057600080fd5b919390929091602081019035600160201b81111561055d57600080fd5b82018360208201111561056f57600080fd5b803590602001918460018302840111600160201b8311171561059057600080fd5b5090925090506111ae565b6105b8600480360360208110156105b157600080fd5b50356113a8565b60408051918252519081900360200190f35b610212600480360360808110156105e057600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561061a57600080fd5b82018360208201111561062c57600080fd5b803590602001918460018302840111600160201b8311171561064d57600080fd5b5090925090506113ba565b6102126004803603606081101561066e57600080fd5b81359190810190604081016020820135600160201b81111561068f57600080fd5b8201836020820111156106a157600080fd5b803590602001918460018302840111600160201b831117156106c257600080fd5b919390929091602081019035600160201b8111156106df57600080fd5b8201836020820111156106f157600080fd5b803590602001918460018302840111600160201b8311171561071257600080fd5b5090925090506114d4565b610725611675565b604080516001600160a01b039092168252519081900360200190f35b6102126004803603608081101561075757600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561078657600080fd5b82018360208201111561079857600080fd5b803590602001918460018302840111600160201b831117156107b957600080fd5b919390929091602081019035600160201b8111156107d657600080fd5b8201836020820111156107e857600080fd5b803590602001918460018302840111600160201b8311171561080957600080fd5b509092509050611684565b610212600480360360a081101561082a57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561086457600080fd5b82018360208201111561087657600080fd5b803590602001918460018302840111600160201b8311171561089757600080fd5b919390929091602081019035600160201b8111156108b457600080fd5b8201836020820111156108c657600080fd5b803590602001918460018302840111600160201b831117156108e757600080fd5b5090925090506117de565b6102126004803603608081101561090857600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561094257600080fd5b82018360208201111561095457600080fd5b803590602001918460018302840111600160201b8311171561097557600080fd5b5090925090506119e4565b610212600480360360c081101561099657600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156109d057600080fd5b8201836020820111156109e257600080fd5b803590602001918460018302840111600160201b83111715610a0357600080fd5b919390929091602081019035600160201b811115610a2057600080fd5b820183602082011115610a3257600080fd5b803590602001918460018302840111600160201b83111715610a5357600080fd5b919390929091602081019035600160201b811115610a7057600080fd5b820183602082011115610a8257600080fd5b803590602001918460018302840111600160201b83111715610aa357600080fd5b509092509050611ad3565b610bb163ce9fb82b89898989898960405160240180876001600160a01b03166001600160a01b0316815260200186815260200180602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f820116905080830192505050985050505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208884848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b600154604051630119f80560e21b81526001600160a01b038a811660048301908152602483018b9052608060448401908152608484018a90529190931692630467e014928c928c928c928c928c928c92909190606481019060a401878780828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f82011690508083019250505098505050505050505050600060405180830381600087803b158015610c7057600080fd5b505af1158015610c84573d6000803e3d6000fd5b505050505050505050505050565b610d8363b88d4fde888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040516315eab15d60e21b81526001600160a01b03898116600483019081528982166024840152604483018990526080606484019081526084840188905291909316926357aac574928b928b928b928b928b929160a401848480828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b158015610e1c57600080fd5b505af1158015610e30573d6000803e3d6000fd5b5050505050505050505050565b610f09637c69eae28787878760405160240180856001600160a01b03166001600160a01b0316815260200184815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09d909d1b9c909c178c529351909a208a51918d01849004840282018401909a528b81528f985096508b95508a94508493505085019050838280828437600092019190915250611d5492505050565b600154604051630119f80560e21b81526001600160a01b038881166004830190815260248301899052608060448401908152608484018890529190931692630467e014928a928a928a928a9290606481019060a401858580828437600081840152601f19601f8201169050808301925050508381038252600081526020016020019650505050505050600060405180830381600087803b158015610fac57600080fd5b505af1158015610fc0573d6000803e3d6000fd5b50505050505050505050565b604080516001600160a01b038616602482015260448082018690528251808303909101815260649091018252602081810180516001600160e01b0316632392c18960e01b17815291519091208251601f85018390048302810183019093528383526110569290918691908690869081908401838280828437600092019190915250611d5492505050565b60015460408051631292e83560e11b81526001600160a01b0387811660048301526024820187905291519190921691632525d06a91604480830192600092919082900301818387803b1580156110ab57600080fd5b505af11580156110bf573d6000803e3d6000fd5b5050505050505050565b6040805160248082018690528251808303909101815260449091018252602081810180516001600160e01b0316630852cd8d60e31b17815291519091208251601f85018390048302810183019093528383526111449290918691908690869081908401838280828437600092019190915250611d5492505050565b6001546040805163e67ca8a360e01b81526004810186905290516001600160a01b039092169163e67ca8a39160248082019260009290919082900301818387803b15801561119157600080fd5b505af11580156111a5573d6000803e3d6000fd5b50505050505050565b61129f639e5be9a5888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b03909316926302759c37928b928b9286926368b62d32928d928d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561132757600080fd5b505afa15801561133b573d6000803e3d6000fd5b505050506040513d602081101561135157600080fd5b5051604080516001600160e01b031960e087901b1681526001600160a01b03948516600482015292909316602483015260448201529051606480830192600092919082900301818387803b158015610e1c57600080fd5b60009081526020819052604090205490565b604080516001600160a01b0380881660248301528616604482015260648082018690528251808303909101815260849091018252602081810180516001600160e01b0316632142170760e11b17815291519091208251601f850183900483028101830190935283835261144c9290918691908690869081908401838280828437600092019190915250611d5492505050565b600154604080516315eab15d60e21b81526001600160a01b0388811660048301528781166024830152604482018790526080606483015260006084830181905292519316926357aac5749260c48084019391929182900301818387803b1580156114b557600080fd5b505af11580156114c9573d6000803e3d6000fd5b505050505050505050565b611585635cbe11128686866040516024018084815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09c909c1b9b909b178b5293519099208951918c018490048402820184019099528a81528e975095508a9450899350839250508401838280828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b039093169263e67ca8a39284926368b62d32928b928b928b929190606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561160b57600080fd5b505afa15801561161f573d6000803e3d6000fd5b505050506040513d602081101561163557600080fd5b5051604080516001600160e01b031960e085901b168152600481019290925251602480830192600092919082900301818387803b1580156114b557600080fd5b6001546001600160a01b031690565b61175063d8d3cc6e8787878760405160240180856001600160a01b03166001600160a01b0316815260200184815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09d909d1b9c909c178c529351909a208a51918d01849004840282018401909a528b81528f985096508b95508a94508493505085019050838280828437600092019190915250611d5492505050565b60015460405163b546666960e01b81526001600160a01b03888116600483019081526024830189905260606044840190815260648401889052919093169263b5466669928a928a928a928a9290608401848480828437600081840152601f19601f82011690508083019250505095505050505050600060405180830381600087803b158015610fac57600080fd5b6118cf639d743989888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b03909316926357aac574928b928b9286926368b62d32928d928d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561195757600080fd5b505afa15801561196b573d6000803e3d6000fd5b505050506040513d602081101561198157600080fd5b5051604080516001600160e01b031960e087901b1681526001600160a01b039485166004820152929093166024830152604482015260806064820152600060848201819052915160c4808301939282900301818387803b158015610e1c57600080fd5b604080516001600160a01b0380881660248301528616604482015260648082018690528251808303909101815260849091018252602081810180516001600160e01b03166323b872dd60e01b17815291519091208251601f8501839004830281018301909352838352611a769290918691908690869081908401838280828437600092019190915250611d5492505050565b600154604080516302759c3760e01b81526001600160a01b038881166004830152878116602483015260448201879052915191909216916302759c3791606480830192600092919082900301818387803b1580156114b557600080fd5b611bf063c29b52f98a8a8a8a8a8a8a60405160240180886001600160a01b03166001600160a01b03168152602001876001600160a01b03166001600160a01b0316815260200186815260200180602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f82011690508083019250505099505050505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208884848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b8152600481018a815260248201928352604482018990526001600160a01b03909316926357aac574928d928d9286926368b62d32928f928f928f92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b158015611c7857600080fd5b505afa158015611c8c573d6000803e3d6000fd5b505050506040513d6020811015611ca257600080fd5b50516040516001600160e01b031960e086901b1681526001600160a01b0380851660048301908152908416602483015260448201839052608060648301908152608483018b90528b928b92919060a401848480828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b158015611d3157600080fd5b505af1158015611d45573d6000803e3d6000fd5b50505050505050505050505050565b6000828152602081815260408083205481518084018890523060601b81840152605480820183905283518083039091018152607490910190925281519190920120909190611db3908490611da790611ea9565b9063ffffffff611efa16565b90506001600160a01b03811615801590611e4957506001546040805163430c208160e01b81526001600160a01b038481166004830152602482018890529151919092169163430c2081916044808301926020929190829003018186803b158015611e1c57600080fd5b505afa158015611e30573d6000803e3d6000fd5b505050506040513d6020811015611e4657600080fd5b50515b611e8e576040805162461bcd60e51b8152602060048201526011602482015270494e56414c49445f5349474e415455524560781b604482015290519081900360640190fd5b50505060009081526020819052604090208054600101905550565b604080517f19457468657265756d205369676e6564204d6573736167653a0a333200000000602080830191909152603c8083019490945282518083039094018452605c909101909152815191012090565b60008151604114611f0d57506000611fe3565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0821115611f535760009350505050611fe3565b8060ff16601b14158015611f6b57508060ff16601c14155b15611f7c5760009350505050611fe3565b6040805160008152602080820180845289905260ff8416828401526060820186905260808201859052915160019260a0808401939192601f1981019281900390910190855afa158015611fd3573d6000803e3d6000fd5b5050506020604051035193505050505b9291505056fea265627a7a7231582014816bfd0c1519ce8c4cf272eb0526ffdba3abef0df7f17deb0da40bd8abb77f64736f6c634300050c0032","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533"}},"0x7c3c91245769c8b7450ad522792dec4bd4bf797f":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b506004361061003f575f3560e01c80631bf7e13e146100435780636ccbae5f1461006c578063a424740014610099575b5f80fd5b610056610051366004610749565b6100bc565b604051610063919061082c565b60405180910390f35b61008b61007a36600461083e565b5f9081526001602052604090205490565b604051908152602001610063565b6100ac6100a7366004610749565b6101d6565b6040519015158152602001610063565b60605f5a90506100cd8585856101d6565b6101315760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e61676572466f727761726465723a205349474e415455604482015269149157d253959053125160b21b60648201526084015b60405180910390fd5b6101cb6101416020870187610870565b5f546001600160a01b031660408801358461015f60608b018b610889565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f9201919091525061023292505050565b9150505b9392505050565b5f61022a6101e38561093a565b5f54604080516020601f88018190048102820181019092528681526001600160a01b03909216919087908790819084018382808284375f9201919091525061030e92505050565b949350505050565b606061023d85610453565b5f80876001600160a01b0316866102568b8a898961047e565b60405161026391906109f5565b5f604051808303815f8787f1925050503d805f811461029d576040519150601f19603f3d011682016040523d82523d5f602084013e6102a2565b606091505b5090925090506102b3603f87610a10565b5a116102c1576102c1610a2f565b61030182826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506104ae565b9998505050505050505050565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015610352573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103769190610a43565b90505f6104238660600151805190602001208688602001516040516020016103c39392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561044957508551610449906001600160a01b031682866104e7565b9695505050505050565b5f8181526001602081905260409091205461046d91610a5a565b5f9182526001602052604090912055565b606082858560405160200161049593929190610a7f565b6040516020818303038152906040529050949350505050565b606083156104bd5750816101cf565b8251156104cd5782518084602001fd5b8160405162461bcd60e51b8152600401610128919061082c565b5f805f6104f48585610622565b90925090505f81600481111561050c5761050c610abd565b14801561052a5750856001600160a01b0316826001600160a01b0316145b1561053a576001925050506101cf565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401610561929190610ad1565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161059f91906109f5565b5f60405180830381855afa9150503d805f81146105d7576040519150601f19603f3d011682016040523d82523d5f602084013e6105dc565b606091505b50915091508180156105ef575080516020145b801561061657508051630b135d3f60e11b906106149083016020908101908401610a43565b145b98975050505050505050565b5f808251604103610656576020830151604084015160608501515f1a61064a87828585610664565b9450945050505061065d565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561069957505f90506003610740565b8460ff16601b141580156106b157508460ff16601c14155b156106c157505f90506004610740565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610712573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b03811661073a575f60019250925050610740565b91505f90505b94509492505050565b5f805f6040848603121561075b575f80fd5b833567ffffffffffffffff80821115610772575f80fd5b9085019060808288031215610785575f80fd5b9093506020850135908082111561079a575f80fd5b818601915086601f8301126107ad575f80fd5b8135818111156107bb575f80fd5b8760208285010111156107cc575f80fd5b6020830194508093505050509250925092565b5f5b838110156107f95781810151838201526020016107e1565b50505f910152565b5f81518084526108188160208601602086016107df565b601f01601f19169290920160200192915050565b602081525f6101cf6020830184610801565b5f6020828403121561084e575f80fd5b5035919050565b80356001600160a01b038116811461086b575f80fd5b919050565b5f60208284031215610880575f80fd5b6101cf82610855565b5f808335601e1984360301811261089e575f80fd5b83018035915067ffffffffffffffff8211156108b8575f80fd5b60200191503681900382131561065d575f80fd5b634e487b7160e01b5f52604160045260245ffd5b6040516080810167ffffffffffffffff81118282101715610903576109036108cc565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610932576109326108cc565b604052919050565b5f6080823603121561094a575f80fd5b6109526108e0565b61095b83610855565b81526020808401358183015260408401356040830152606084013567ffffffffffffffff8082111561098b575f80fd5b9085019036601f83011261099d575f80fd5b8135818111156109af576109af6108cc565b6109c1601f8201601f19168501610909565b915080825236848285010111156109d6575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b5f8251610a068184602087016107df565b9190910192915050565b5f82610a2a57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b5f60208284031215610a53575f80fd5b5051919050565b80820180821115610a7957634e487b7160e01b5f52601160045260245ffd5b92915050565b5f8451610a908184602089016107df565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f61022a604083018461080156fea164736f6c6343000818000a","storage":{"0x0":"0x39a27956b78d00a4e00ea8833ff0947410a2933f"}},"0x8861cdfa38838531275ce12f9e795c3b9ff29cbe":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x936188f2c3c8e8c95e425b6fe41c2ac9e701585e":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x94f57ed7e9af03a10e8eb23ce1b3c7914a182b0f":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x95f29431aeb52c0d5dbeeec36010b8e2ca69cb3d":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x9b2565a3545a1312bdcb6e7148a7f7cae8c2706b":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c806373cc48a61161008857806398d35f201161006357806398d35f2014610215578063bd7ed31a1461021d578063c327deef14610245578063d7b82ebe1461026d575f80fd5b806373cc48a6146101af5780638438dc04146101ef5780638da5cb5b14610202575f80fd5b806313af4035116100c357806313af40351461015657806328e7677d146101695780632c095cbb1461017c578063435cc1621461018f575f80fd5b8063020ed8d3146100e9578063087991bc146100fe5780630b1a249514610143575b5f80fd5b6100fc6100f73660046122ff565b610280565b005b61011161010c36600461238a565b610300565b6040805163ffffffff94851681529390921660208401526001600160601b031916908201526060015b60405180910390f35b6100fc610151366004612510565b61036c565b6100fc6101643660046125c6565b6104da565b6100fc6101773660046122ff565b610512565b6100fc61018a3660046125e1565b61058a565b6101a261019d366004612674565b610656565b60405161013a919061278c565b6101d76101bd36600461279e565b60046020525f90815260409020546001600160a01b031681565b6040516001600160a01b03909116815260200161013a565b6100fc6101fd3660046122ff565b6106d2565b6001546101d7906001600160a01b031681565b6101a261074a565b6101d761022b36600461279e565b60056020525f90815260409020546001600160a01b031681565b6101d761025336600461279e565b60036020525f90815260409020546001600160a01b031681565b6101a261027b3660046127b7565b6107d5565b6001546001600160a01b03163314610296575f80fd5b60ff82165f8181526003602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527ff73c3c226af96b7f1ba666a21b3ceaf2be3ee6a365e3178fd9cd1eaae0075aa891015b60405180910390a15050565b5f805f8060025f8787604051610317929190612817565b604080519182900390912082526020808301939093529081015f90812061ffff8b16825290925290205463ffffffff80821695506401000000008204169350600160401b900460601b91505093509350939050565b83516020808601919091205f90815260028252604080822061ffff891683529092529081205463ffffffff16906103a385846107ea565b90506103b0818784610889565b6103b8612239565b845151156103d7576103ca85856107ea565b90506103d7818885610889565b5f6103e1836108cc565b602081015190915060fe16156103f5575f80fd5b61040081602761092a565b158015610425575061041381600261092a565b1580610425575061042581600661092a565b61042d575f80fd5b61043e89898561012001518461093a565b156104795787516020808a01919091205f90815260028252604080822061ffff8d1683529092522080546001600160e01b03191690556104cf565b6104988884610120015183856101200151610493876108cc565b610968565b156100e55787516020808a01919091205f90815260028252604080822061ffff8d1683529092522080546001600160e01b03191690555b505050505050505050565b6001546001600160a01b031633146104f0575f80fd5b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6001546001600160a01b03163314610528575f80fd5b60ff82165f8181526004602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527f2fcc274c3b72dd483ab201bfa87295e3817e8b9b10693219873b722ca1af00c791016102f4565b610592612239565b61059c83836107ea565b805190915061ffff16602f146105b0575f80fd5b60a081015184516020808701919091205f90815260028252604080822061ffff8a16835290925220546105e9919063ffffffff16610a7c565b6105f1575f80fd5b5f6105fb82610a94565b9050805151602082015110156100e55761061c818361012001518789610aab565b505082516020808501919091205f90815260028252604080822061ffff881683529092522080546001600160e01b03191690555b50505050565b60605f83838080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201829052509394505050505b85518110156106c7576106bd8682815181106106af576106af612826565b602002602001015183610c4a565b9150600101610691565b5090505b9392505050565b6001546001600160a01b031633146106e8575f80fd5b60ff82165f8181526005602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527fc7eec866a7a1386188cc3ca20ffea75b71bd3e90a60b6791b1d3f0971145118d91016102f4565b5f80546107569061283a565b80601f01602080910402602001604051908101604052809291908181526020018280546107829061283a565b80156107cd5780601f106107a4576101008083540402835291602001916107cd565b820191905f5260205f20905b8154815290600101906020018083116107b057829003601f168201915b505050505081565b60606107e18383610c4a565b90505b92915050565b6107f2612239565b82516107fd90610dc6565b905061080d8160e0015183610ebf565b610815575f80fd5b5f61082382835f0151610f25565b604083015190915060ff16610838825f610fcc565b14610841575f80fd5b610120820181905260808201516108589042610a7c565b610860575f80fd5b61086e428360a00151610a7c565b610876575f80fd5b61088281838686611026565b5092915050565b6108978360a0015182610a7c565b61089f575f80fd5b825161ffff166032146108b0575f80fd5b6108bf83610120015183611106565b6108c7575f80fd5b505050565b6040805160c0810182525f8082526020820181905291810182905260608082018190526080820183905260a08201529061090583610a94565b60a081015160c08201519192506106cb91610921908290612880565b83519190611172565b5f6107e18360a001515f846112b4565b5f6109468284866113c1565b1561095d57610955828661092a565b159050610960565b505f5b949350505050565b60208101515f9060fe161561097b575f80fd5b5f610985866113e6565b90505f610991856113e6565b90505f8061099f8a82611401565b6109aa906001612893565b60ff1690505b8951811015610a6b57836109dc896109d784858f516109cf9190612880565b8f9190611424565b6114a4565b03610a3f575f6109f7876109d785868f516109cf9190612880565b90508660800151841015610a23578381118015610a175750866080015181105b95505050505050610a73565b83811180610a1757508660800151811095505050505050610a73565b905080610a4c8a82611401565b610a57906001612893565b610a649060ff16826128ac565b90506109b0565b505f93505050505b95945050505050565b5f80610a8883856128bf565b60030b12159392505050565b610a9c61228e565b6107e48261010001515f61152d565b60a084015184515f90610abe9083611548565b90505f8660a001518760c00151610ad59190612880565b9050818111610ae2575f80fd5b5f610aed868861159f565b9050805f03610b1a57610b0c610b0384866128ac565b895190876112b4565b15610b15575f80fd5b610b5b565b87515f90610b29908686611424565b90505f8213610b36575f80fd5b5f610b41898361159f565b12156104cf575f610b52888361159f565b126104cf575f80fd5b5050505050505050565b60c08101516020820181905281515111610b7c5750565b5f610b8e825f01518360200151611548565b8260200151610b9d91906128ac565b8251909150610bac90826116ec565b61ffff166040830152610bc06002826128ac565b8251909150610bcf90826116ec565b61ffff166060830152610be36002826128ac565b8251909150610bf29082611712565b63ffffffff166080830152610c086004826128ac565b82519091505f90610c1990836116ec565b61ffff169050610c2a6002836128ac565b60a084018190529150610c3d81836128ac565b60c0909301929092525050565b6060610c54612239565b610c5e84846107ea565b61012081015180516020918201205f908152600282526040808220845161ffff16835290925220805491925090600160401b900460601b6001600160601b03191615610cc35760a08201518154610cbb919063ffffffff16610a7c565b610cc3575f80fd5b604080516060808201835260a085015163ffffffff9081168352608086015181166020808501918252610100880180518051908301206001600160601b0319168688019081526101208a0180518051908501205f908152600285528981208c5161ffff16825290945292889020965187549451915190961c600160401b0268010000000000000000600160e01b03199186166401000000000267ffffffffffffffff19909516969095169590951792909217939093169190911790925551905191517f55ced933cdd5a34dd03eb5d4bef19ec6ebb251dcd7a988eee0c1b9a13baaa88b92610db192916128e6565b60405180910390a15061010001519392505050565b610dce612239565b610dd8825f6116ec565b61ffff168152610de9826002611401565b60ff166020820152610dfc826003611401565b60ff166040820152610e0f826004611712565b63ffffffff9081166060830152610e2b90839060089061171216565b63ffffffff9081166080830152610e47908390600c9061171216565b63ffffffff90811660a0830152610e639083906010906116ec16565b61ffff1660c0820152610e7782601261173a565b60e0820181905251610eb490610e8e9060126128ac565b8260e001515160128551610ea29190612880565b610eac9190612880565b849190611424565b610100820152919050565b5f80610ed5610ece8483611548565b84906116ec565b83516020808601919091208651878301205f90815260028352604080822061ffff90951682529390925291902054600160401b900460601b6001600160601b031990811691161491505092915050565b60605f610f3184610a94565b90505b8051516020820151101561088257606081015161ffff16600114610f56575f80fd5b81515f03610f6e57610f6781611754565b9150610fa7565b60208101518151610f7e91611548565b825114610f89575f80fd5b805160208201518351610f9f9285925f92611775565b610fa7575f80fd5b8261ffff16816040015161ffff1614610fbe575f80fd5b610fc781610b65565b610f34565b5f805b83518310610fdf57610fdf61290a565b5f610fea8585611401565b60ff169050610ffa8160016128ac565b61100490856128ac565b9350805f0361101357506107e1565b61101e6001836128ac565b915050610fcf565b83518360e00151511115611038575f80fd5b61105c5f858560e0015151875161104f9190612880565b60e0870151929190611797565b611064575f80fd5b5f61106f828261152d565b9050602b61ffff16816040015161ffff160361109d576110908484836117cb565b611098575f80fd5b6110ff565b603061ffff16816040015161ffff16036110bc5761109084848361185f565b60405162461bcd60e51b8152602060048201526014602482015273139bc81d985b1a59081c1c9bdbd988199bdd5b9960621b604482015260640160405180910390fd5b5050505050565b5f806111128482611401565b61111d906001612893565b60ff1690505f5b835181101561095d5761113984828785611797565b15611149576001925050506107e4565b6111538482611401565b61115e906001612893565b61116b9060ff16826128ac565b9050611124565b6040805160c0810182525f8082526020820181905291810182905260608082018190526080820183905260a0820152906111ac83856128ac565b90506111c26111bb5f866128ac565b8690611401565b60ff1682526111d56111bb6001866128ac565b60ff1660208301526111f26111eb6002866128ac565b86906116ec565b61ffff1660408301525f61121161120a6004876128ac565b8790611401565b905061121e6005866128ac565b945061122e868660ff8416611424565b606084015261124060ff8216866128ac565b94505f61124d8787611401565b905060208160ff16111561125f575f80fd5b61126a6001876128ac565b955061127a878760ff8416611900565b608085015261128c60ff8216876128ac565b95506112a48661129c8186612880565b899190611424565b60a0850152509195945050505050565b5f60ff600883811c82169183916112cc918616612932565b90505f6112dd600780871690612952565b600160ff919091161b9050855b87518110156113b4575f6112fe8983611401565b90505f61131661130f8460016128ac565b8b90611401565b90508160ff168660ff161015611334575f96505050505050506106cb565b8160ff168660ff1603611393578460ff168160ff161161135c575f96505050505050506106cb565b8361137f61136d60ff8816866128ac565b6113789060026128ac565b8c90611401565b1660ff165f141596505050505050506106cb565b61139e816002612893565b6113ab9060ff16846128ac565b925050506112ea565b505f979650505050505050565b5f806113cd85846114a4565b90505f6113d9856113e6565b9190911495945050505050565b5f6107e460016113f68484611401565b84919060ff1661193d565b5f82828151811061141457611414612826565b016020015160f81c905092915050565b825160609061143383856128ac565b111561143d575f80fd5b5f8267ffffffffffffffff811115611457576114576123d9565b6040519080825280601f01601f191660200182016040528015611481576020820181803683370190505b50905060208082019086860101611499828287611b43565b509095945050505050565b815160ff165f9081526005602052604080822054606085015182860151925163347ced5960e11b81526001600160a01b03909216926368f9dab2926114ee9291879160040161296b565b602060405180830381865afa158015611509573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107e191906129a4565b61153561228e565b82815260c081018290526107e481610b65565b5f815b8351811061155b5761155b61290a565b5f6115668583611401565b60ff1690506115768160016128ac565b61158090836128ac565b9150805f0361158f5750611595565b5061154b565b6109608382612880565b5f6115aa8383611b98565b156115b657505f6107e4565b5f805f805f6115c5885f610fcc565b90505f6115d2885f610fcc565b90505b808211156115fe578593506115ea8987611bb3565b9550816115f6816129bb565b9250506115d5565b81811115611627578492506116138886611bb3565b94508061161f816129bb565b9150506115fe565b5f8211801561163f575061163d89878a88611797565b155b15611674578593506116518987611bb3565b95508492506116608886611bb3565b945061166d600183612880565b9150611627565b855f0361168a575f1996505050505050506107e4565b845f036116a057600196505050505050506107e4565b6116df6116ae8560016128ac565b6116b88b87611401565b60ff168a6116c78760016128ac565b6116d18d89611401565b8e949392919060ff16611bd6565b9998505050505050505050565b81515f906116fb8360026128ac565b1115611705575f80fd5b50016002015161ffff1690565b81515f906117218360046128ac565b111561172b575f80fd5b50016004015163ffffffff1690565b60605f6117478484611548565b9050610960848483611424565b602081015181516060916107e49161176c9082611548565b84519190611424565b5f611781848484611cc6565b61178c878785611cc6565b149695505050505050565b5f6117af83838486516117aa9190612880565b611cc6565b6117c186868789516117aa9190612880565b1495945050505050565b5f806117d685610a94565b90505b8051516020820151101561095d57604081015161ffff166030146117fb575f80fd5b5f61180582611ce8565b90505f61181e5f835184611d049092919063ffffffff16565b905061182c81838989611da0565b1561184f5761184561183d84611754565b868385611e9b565b93505050506106cb565b505061185a81610b65565b6117d9565b5f6118778460e0015161187184611754565b90611b98565b61187f575f80fd5b815151602083015110156118f75761189e8460e0015161187184611754565b6118a6575f80fd5b5f6118b083611ce8565b90505f6118c95f835184611d049092919063ffffffff16565b90506118d781838888611da0565b156118e7576001925050506106cb565b50506118f282610b65565b61187f565b505f9392505050565b5f602082111561190e575f80fd5b835161191a83856128ac565b1115611924575f80fd5b506020919092018101519190036101000a5f1901191690565b5f603482111561194b575f80fd5b5f80805b84811015611a29575f8761196383896128ac565b8151811061197357611973612826565b01602001516001600160f81b0319169050600360fc1b81108015906119a65750603d60f91b6001600160f81b0319821611155b6119ae575f80fd5b604051806080016040528060478152602001612b5c604791396119d6603060f884901c612880565b815181106119e6576119e6612826565b0160209081015160f81c93508311156119fd575f80fd5b611a08600187612880565b8203611a145750611a29565b5060059290921b60ff8216179160010161194f565b505f611a368560056129d0565b9050611a436008866129e7565b5f03611a5a578160ff16600584901b179250611b29565b611a656008866129e7565b600203611a935760028260ff16901c60ff16600384901b179250600281611a8c9190612880565b9050611b29565b611a9e6008866129e7565b600403611ac55760048260ff16901c60ff16600184901b179250600481611a8c9190612880565b611ad06008866129e7565b600503611af75760018260ff16901c60ff16600484901b179250600181611a8c9190612880565b611b026008866129e7565b6007036100e55760038260ff16901c60ff16600284901b179250600381611a8c9190612880565b611b3581610100612880565b9290921b9695505050505050565b60208110611b7b5781518352611b5a6020846128ac565b9250611b676020836128ac565b9150611b74602082612880565b9050611b43565b905182516020929092036101000a5f190180199091169116179052565b5f815183511480156107e157506107e1835f845f8751611775565b5f611bbe8383611401565b60ff16611bcc8360016128ac565b6107e191906128ac565b5f8480831015611be35750815b6020878901810190858701015f5b83811015611cab5782518251808214611c7b575f6020871115611c1657505f19611c52565b600184611c24896020612880565b611c2e91906128ac565b611c399060086129d0565b611c44906002612ada565b611c4e9190612880565b1990505b5f611c61838316858416612ae5565b90508015611c78579750611cbc9650505050505050565b50505b611c866020866128ac565b9450611c936020856128ac565b93505050602081611ca491906128ac565b9050611bf1565b50611cb68589612ae5565b93505050505b9695505050505050565b82515f90611cd483856128ac565b1115611cde575f80fd5b5091016020012090565b60a081015160c08201516060916107e49161176c908290612880565b604080516080810182525f8082526020820181905291810191909152606080820152611d3a611d335f856128ac565b85906116ec565b61ffff168152611d55611d4e6002856128ac565b8590611401565b60ff166020820152611d6b611d4e6003856128ac565b60ff166040820152611d94611d816004856128ac565b611d8c600485612880565b869190611424565b60608201529392505050565b5f846020015160ff16600314611db757505f610960565b826020015160ff16856040015160ff1614611dd357505f610960565b5f611ddd85611f96565b90508360c0015161ffff168161ffff1614611dfb575f915050610960565b8551610100165f03611e10575f915050610960565b60408087015160ff165f908152600360209081529082902054855191860151925163de8f50a160e01b81526001600160a01b039091169263de8f50a192611e5c928a9290600401612b04565b602060405180830381865afa158015611e77573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611cbc9190612b3c565b5f80611ea683611f96565b90505b84515160208601511015611f8b5760a085015160c08601515f91611edb91611ed2908290612880565b88519190611d04565b90508161ffff16815f015161ffff1614611ef55750611f7d565b846040015160ff16816020015160ff1614611f105750611f7d565b60408051808201909152606081525f6020820152611f3c85518951611f3591906128ac565b8290611ff7565b50611f47818961205a565b50611f52818661205a565b50611f698260400151825f0151846060015161207f565b15611f7a5760019350505050610960565b50505b611f8685610b65565b611ea9565b505f95945050505050565b5f805f5b8351811015611fe8576001811615611fbe57611fb68482611401565b60ff16611fd0565b6008611fca8583611401565b60ff16901b5b611fde9061ffff16836128ac565b9150600101611f9a565b506106cb601082901c826128ac565b60408051808201909152606081525f60208201526120166020836129e7565b1561203e576120266020836129e7565b612031906020612880565b61203b90836128ac565b91505b506020828101829052604080518085525f815290920101905290565b60408051808201909152606081525f60208201526107e183845f015151848551612126565b60ff83165f908152600460205260408120546001600160a01b03166120a557505f6106cb565b60ff84165f90815260046020819052604091829020549151637bf41d7760e11b81526001600160a01b039092169163f7e83aee916120e79187918791016128e6565b602060405180830381865afa158015612102573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109609190612b3c565b60408051808201909152606081525f60208201528251821115612147575f80fd5b602085015161215683866128ac565b111561218957612189856121798760200151878661217491906128ac565b61220c565b6121849060026129d0565b612222565b5f808651805187602083010193508088870111156121a75787860182525b505050602084015b602084106121e757805182526121c66020836128ac565b91506121d36020826128ac565b90506121e0602085612880565b93506121af565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b5f8183111561221c5750816107e4565b50919050565b815161222e8383611ff7565b50610650838261205a565b60408051610140810182525f8082526020820181905291810182905260608082018390526080820183905260a0820183905260c082019290925260e08101829052610100810182905261012081019190915290565b6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b803560ff811681146122e3575f80fd5b919050565b6001600160a01b03811681146122fc575f80fd5b50565b5f8060408385031215612310575f80fd5b612319836122d3565b91506020830135612329816122e8565b809150509250929050565b803561ffff811681146122e3575f80fd5b5f8083601f840112612355575f80fd5b50813567ffffffffffffffff81111561236c575f80fd5b602083019150836020828501011115612383575f80fd5b9250929050565b5f805f6040848603121561239c575f80fd5b6123a584612334565b9250602084013567ffffffffffffffff8111156123c0575f80fd5b6123cc86828701612345565b9497909650939450505050565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff81118282101715612416576124166123d9565b604052919050565b5f82601f83011261242d575f80fd5b813567ffffffffffffffff811115612447576124476123d9565b61245a601f8201601f19166020016123ed565b81815284602083860101111561246e575f80fd5b816020850160208301375f918101602001919091529392505050565b5f6040828403121561249a575f80fd5b6040516040810167ffffffffffffffff82821081831117156124be576124be6123d9565b8160405282935084359150808211156124d5575f80fd5b6124e18683870161241e565b835260208501359150808211156124f6575f80fd5b506125038582860161241e565b6020830152505092915050565b5f805f805f60a08688031215612524575f80fd5b61252d86612334565b9450602086013567ffffffffffffffff80821115612549575f80fd5b61255589838a0161241e565b9550604088013591508082111561256a575f80fd5b61257689838a0161248a565b9450606088013591508082111561258b575f80fd5b61259789838a0161248a565b935060808801359150808211156125ac575f80fd5b506125b98882890161241e565b9150509295509295909350565b5f602082840312156125d6575f80fd5b81356107e1816122e8565b5f805f80608085870312156125f4575f80fd5b6125fd85612334565b9350602085013567ffffffffffffffff80821115612619575f80fd5b6126258883890161241e565b9450604087013591508082111561263a575f80fd5b6126468883890161248a565b9350606087013591508082111561265b575f80fd5b506126688782880161241e565b91505092959194509250565b5f805f60408486031215612686575f80fd5b833567ffffffffffffffff8082111561269d575f80fd5b818601915086601f8301126126b0575f80fd5b81356020828211156126c4576126c46123d9565b8160051b6126d38282016123ed565b928352848101820192828101908b8511156126ec575f80fd5b83870192505b8483101561272657823586811115612708575f80fd5b6127168d86838b010161248a565b83525091830191908301906126f2565b985050508701359250508082111561273c575f80fd5b506123cc86828701612345565b5f81518084525f5b8181101561276d57602081850181015186830182015201612751565b505f602082860101526020601f19601f83011685010191505092915050565b602081525f6107e16020830184612749565b5f602082840312156127ae575f80fd5b6107e1826122d3565b5f80604083850312156127c8575f80fd5b823567ffffffffffffffff808211156127df575f80fd5b6127eb8683870161248a565b93506020850135915080821115612800575f80fd5b5061280d8582860161241e565b9150509250929050565b818382375f9101908152919050565b634e487b7160e01b5f52603260045260245ffd5b600181811c9082168061284e57607f821691505b60208210810361221c57634e487b7160e01b5f52602260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b818103818111156107e4576107e461286c565b60ff81811683821601908111156107e4576107e461286c565b808201808211156107e4576107e461286c565b600382810b9082900b03637fffffff198112637fffffff821317156107e4576107e461286c565b604081525f6128f86040830185612749565b8281036020840152610a738185612749565b634e487b7160e01b5f52600160045260245ffd5b634e487b7160e01b5f52601260045260245ffd5b5f61ffff808416806129465761294661291e565b92169190910492915050565b60ff82811682821603908111156107e4576107e461286c565b606081525f61297d6060830186612749565b828103602084015261298f8186612749565b91505061ffff83166040830152949350505050565b5f602082840312156129b4575f80fd5b5051919050565b5f816129c9576129c961286c565b505f190190565b80820281158282048414176107e4576107e461286c565b5f826129f5576129f561291e565b500690565b600181815b80851115612a3457815f1904821115612a1a57612a1a61286c565b80851615612a2757918102915b93841c93908002906129ff565b509250929050565b5f82612a4a575060016107e4565b81612a5657505f6107e4565b8160018114612a6c5760028114612a7657612a92565b60019150506107e4565b60ff841115612a8757612a8761286c565b50506001821b6107e4565b5060208310610133831016604e8410600b8410161715612ab5575081810a6107e4565b612abf83836129fa565b805f1904821115612ad257612ad261286c565b029392505050565b5f6107e18383612a3c565b8181035f8312801583831316838312821617156108825761088261286c565b606081525f612b166060830186612749565b8281036020840152612b288186612749565b90508281036040840152611cbc8185612749565b5f60208284031215612b4c575f80fd5b815180151581146107e1575f80fdfe00010203040506070809ffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fffffffffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fa164736f6c6343000818000a","storage":{"0x0":"0xbd","0x1":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1471eb6eb2c5e789fc3de43f8ce62938c7d1836ec861730447e2ada8fd81017b":"0x17cda4e23f7237277952e075b1c48467aabfacc0","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563":"0x2b000100000e1000244a5c080249aac11d7b6f6446702e54a1607371607a","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e564":"0x1a41855200fd2ce1cdde32f24e8fb500002b000100000e1000244f660802e06d","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e565":"0x44b80b8f1d39a95c0b0d7c65d08458e880409bbc683457104237c7f8ec8d0000","0x3617319a054d772f909f7c479a2cebe5066e836a939412e32403c99029b92eff":"0x5155f5627bdf9795b3dbb8887001ada1eeba93f2","0x85aaa47b6dc46495bb8824fad4583769726fea36efd831a35556690b830a8fbe":"0x6e2822b8856749ed179c77140dbc5f5a27410a4","0x91da3fd0782e51c6b3986e9e672fd566868e71f3dbc2d6c2cd6fbb3e361af2a7":"0x49da8861c65460639925febe1fb4b5b59b443082","0x95c6356c1b7a542b884d2484ef785c9c7224e77e1016c20007bddc15c23b452f":"0x3f9151d3fd1a82dcc5091909589900fd60ee767ee090bba000000000","0xabd6e7cb50984ff9c2f3e18a2660c3353dadf4e3291deeb275dae2cd1e44fe05":"0x458f653495fb8d9bd0e7df468c2bf76d26c7bd9"}},"0x9dc64b2558b458a15c7f01c192d874ef460f0a29":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x9df67c91f1bfcb4d966cf764e9218685e7c59e8a":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101d1575f3560e01c80638b95dd71116100fe578063c86902331161009e578063e32954eb1161006e578063e32954eb146104f2578063e59d895d14610505578063e985e9c514610518578063f1cb7e0614610553575f80fd5b8063c869023314610435578063ce3decdc1461048c578063d5fa2b001461049f578063d700ff33146104b2575f80fd5b8063a8fa5682116100d9578063a8fa5682146103ac578063a9784b3e146103bf578063ac9650d814610402578063bc1c58d114610422575f80fd5b80638b95dd7114610373578063a22cb46514610386578063a4b91a0114610399575f80fd5b80633603d758116101745780635c98042b116101445780635c98042b14610327578063623195b01461033a578063691f34311461034d5780637737221314610360575f80fd5b80633603d758146102975780633b3b57de146102aa5780634cbf6ba4146102bd57806359d1d43c14610307575f80fd5b8063124a319c116101af578063124a319c146102255780632203ab561461025057806329cd62ea14610271578063304e6ade14610284575f80fd5b806301ffc9a7146101d55780630af179d7146101fd57806310f13a8c14610212575b5f80fd5b6101e86101e3366004612267565b610566565b60405190151581526020015b60405180910390f35b61021061020b3660046122bd565b610576565b005b610210610220366004612304565b610778565b610238610233366004612377565b610842565b6040516001600160a01b0390911681526020016101f4565b61026361025e3660046123a1565b610a87565b6040516101f492919061240e565b61021061027f366004612426565b610bb5565b6102106102923660046122bd565b610c4d565b6102106102a536600461244f565b610cc6565b6102386102b836600461244f565b610d64565b6101e86102cb3660046123a1565b5f82815260208181526040808320546001600160401b031683526006825280832094835293815283822092825291909152205461ffff16151590565b61031a6103153660046122bd565b610d93565b6040516101f49190612466565b61031a61033536600461244f565b610e6f565b610210610348366004612478565b610f2a565b61031a61035b36600461244f565b610fc2565b61021061036e3660046122bd565b610ffa565b6102106103813660046124da565b611073565b6102106103943660046125b9565b611150565b6102106103a73660046125e3565b61122a565b61031a6103ba36600461261e565b6112f6565b6101e86103cd36600461265a565b6001600160a01b039283165f908152600c60209081526040808320948352938152838220929094168152925290205460ff1690565b6104156104103660046126ce565b611342565b6040516101f4919061270c565b61031a61043036600461244f565b61134f565b61047761044336600461244f565b5f81815260208181526040808320546001600160401b03168352600982528083209383529290522080546001909101549091565b604080519283526020830191909152016101f4565b61021061049a3660046122bd565b611387565b6102106104ad36600461276e565b6114c3565b6104da6104c036600461244f565b5f602081905290815260409020546001600160401b031681565b6040516001600160401b0390911681526020016101f4565b61041561050036600461279c565b6114e9565b6102106105133660046127d6565b6114fe565b6101e8610526366004612808565b6001600160a01b039182165f908152600b6020908152604080832093909416825291909152205460ff1690565b61031a6105613660046123a1565b6115a2565b5f61057082611666565b92915050565b826105808161168a565b610588575f80fd5b5f84815260208181526040808320548151601f87018490048402810184019092528582528392606092839285926001600160401b039091169183916105eb9183918d908d90819084018382808284375f9201919091525092939250506118b79050565b90505b80515160208201511015610712578661ffff165f03610652578060400151965061061781611912565b94508460405160200161062a9190612834565b60405160208183030381529060405280519060200120925061064b81611933565b9350610704565b5f61065c82611912565b9050816040015161ffff168861ffff16141580610680575061067e868261194f565b155b15610702576106db8c878a8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250505060208801518d91506106d2908290612863565b8b51158a61196a565b8160400151975081602001519650809550858051906020012093506106ff82611933565b94505b505b61070d81611bc9565b6105ee565b5083511561076c5761076c8a85888c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c925061076391508290508f612863565b8951158861196a565b50505050505050505050565b846107828161168a565b61078a575f80fd5b5f86815260208181526040808320546001600160401b03168352600a8252808320898452909152908190209051849184916107c89089908990612876565b908152602001604051809103902091826107e3929190612901565b5084846040516107f4929190612876565b6040518091039020867f448bc014f1536726cf8d54ff3d6481ed3cbc683c2591ca204274009afa09b1a18787878760405161083294939291906129e2565b60405180910390a3505050505050565b5f82815260208181526040808320546001600160401b031683526007825280832085845282528083206001600160e01b0319851684529091528120546001600160a01b03168015610894579050610570565b5f61089e85610d64565b90506001600160a01b0381166108b8575f92505050610570565b6040516301ffc9a760e01b60248201525f9081906001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b1790525161090f9190612834565b5f60405180830381855afa9150503d805f8114610947576040519150601f19603f3d011682016040523d82523d5f602084013e61094c565b606091505b509150915081158061095f575060208151105b80610989575080601f8151811061097857610978612a13565b01602001516001600160f81b031916155b1561099a575f945050505050610570565b6040516001600160e01b0319871660248201526001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b179052516109f09190612834565b5f60405180830381855afa9150503d805f8114610a28576040519150601f19603f3d011682016040523d82523d5f602084013e610a2d565b606091505b509092509050811580610a41575060208151105b80610a6b575080601f81518110610a5a57610a5a612a13565b01602001516001600160f81b031916155b15610a7c575f945050505050610570565b509095945050505050565b5f82815260208181526040808320546001600160401b03168352600180835281842086855290925282206060915b848111610b975780851615801590610ae457505f8181526020839052604081208054610ae090612885565b9050115b15610b8f5780825f8381526020019081526020015f20808054610b0690612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610b3290612885565b8015610b7d5780601f10610b5457610100808354040283529160200191610b7d565b820191905f5260205f20905b815481529060010190602001808311610b6057829003601f168201915b50505050509050935093505050610bae565b60011b610ab5565b505f60405180602001604052805f81525092509250505b9250929050565b82610bbf8161168a565b610bc7575f80fd5b60408051808201825284815260208082018581525f888152808352848120546001600160401b031681526009835284812089825283528490209251835551600190920191909155815185815290810184905285917f1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e4691015b60405180910390a250505050565b82610c578161168a565b610c5f575f80fd5b5f84815260208181526040808320546001600160401b03168352600382528083208784529091529020610c93838583612901565b50837fe379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d75788484604051610c3f929190612a27565b80610cd08161168a565b610cd8575f80fd5b5f82815260208190526040812080546001600160401b031691610cfa83612a3a565b82546101009290920a6001600160401b038181021990931691831602179091555f84815260208181526040918290205491519190921681528492507fc6621ccb8f3f5a04bb6502154b2caf6adf5983fe76dfef1cfc9c42e3579db444910160405180910390a25050565b5f80610d7183603c6115a2565b905080515f03610d8357505f92915050565b610d8c81611cae565b9392505050565b5f83815260208181526040808320546001600160401b03168352600a825280832086845290915290819020905160609190610dd19085908590612876565b90815260200160405180910390208054610dea90612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610e1690612885565b8015610e615780601f10610e3857610100808354040283529160200191610e61565b820191905f5260205f20905b815481529060010190602001808311610e4457829003601f168201915b505050505090509392505050565b5f81815260208181526040808320546001600160401b03168352600482528083208484529091529020805460609190610ea790612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610ed390612885565b8015610f1e5780601f10610ef557610100808354040283529160200191610f1e565b820191905f5260205f20905b815481529060010190602001808311610f0157829003601f168201915b50505050509050919050565b83610f348161168a565b610f3c575f80fd5b83610f48600182612863565b1615610f52575f80fd5b5f85815260208181526040808320546001600160401b031683526001825280832088845282528083208784529091529020610f8e838583612901565b50604051849086907faa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe3905f90a35050505050565b5f81815260208181526040808320546001600160401b03168352600882528083208484529091529020805460609190610ea790612885565b826110048161168a565b61100c575f80fd5b5f84815260208181526040808320546001600160401b03168352600882528083208784529091529020611040838583612901565b50837fb7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f78484604051610c3f929190612a27565b8261107d8161168a565b611085575f80fd5b837f65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af75284846040516110b792919061240e565b60405180910390a2603c830361110e57837f52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd26110f284611cae565b6040516001600160a01b03909116815260200160405180910390a25b5f84815260208181526040808320546001600160401b0316835260028252808320878452825280832086845290915290206111498382612a5f565b5050505050565b6001600160a01b03821633036111bf5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084015b60405180910390fd5b335f818152600b602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6001600160a01b03821633036112825760405162461bcd60e51b815260206004820181905260248201527f53657474696e672064656c65676174652073746174757320666f722073656c6660448201526064016111b6565b335f818152600c6020908152604080832087845282528083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519384529286917ff0ddb3b04746704017f9aa8bd728fcc2c1d11675041205350018915f5e4750a0910160405180910390a4505050565b5f83815260208181526040808320546001600160401b03168352600582528083208684528252808320858452825280832061ffff851684529091529020805460609190610dea90612885565b6060610d8c5f8484611ccb565b5f81815260208181526040808320546001600160401b03168352600382528083208484529091529020805460609190610ea790612885565b826113918161168a565b611399575f80fd5b5f84815260208181526040808320546001600160401b031680845260048352818420888552909252822080549192916113d190612885565b80601f01602080910402602001604051908101604052809291908181526020018280546113fd90612885565b80156114485780601f1061141f57610100808354040283529160200191611448565b820191905f5260205f20905b81548152906001019060200180831161142b57829003601f168201915b505050506001600160401b0384165f9081526004602090815260408083208b8452909152902091925061147e9050858783612901565b50857f8f15ed4b723ef428f250961da8315675b507046737e19319fc1a4d81bfe87f858287876040516114b393929190612b1e565b60405180910390a2505050505050565b816114cd8161168a565b6114d5575f80fd5b6114e483603c61038185611e88565b505050565b60606114f6848484611ccb565b949350505050565b826115088161168a565b611510575f80fd5b5f84815260208181526040808320546001600160401b031683526007825280832087845282528083206001600160e01b031987168085529083529281902080546001600160a01b0319166001600160a01b038716908117909155905190815286917f7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa910160405180910390a350505050565b5f82815260208181526040808320546001600160401b0316835260028252808320858452825280832084845290915290208054606091906115e290612885565b80601f016020809104026020016040519081016040528092919081815260200182805461160e90612885565b80156116595780601f1061163057610100808354040283529160200191611659565b820191905f5260205f20905b81548152906001019060200180831161163c57829003601f168201915b5050505050905092915050565b5f6001600160e01b03198216631674750f60e21b1480610570575061057082611eb8565b5f336001600160a01b037f0000000000000000000000004fbf7b2f171336958be5d15ff762a5cff53635681614806116ea5750336001600160a01b037f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5616145b156116f757506001919050565b6040516302571be360e01b8152600481018390525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa15801561175c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117809190612b4d565b90507f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b0316816001600160a01b031603611845576040516331a9108f60e11b8152600481018490527f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b031690636352211e90602401602060405180830381865afa15801561181e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118429190612b4d565b90505b6001600160a01b03811633148061187e57506001600160a01b0381165f908152600b6020908152604080832033845290915290205460ff165b80610d8c57506001600160a01b0381165f908152600c60209081526040808320868452825280832033845290915290205460ff16610d8c565b6118ff6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261057081611bc9565b602081015181516060916105709161192a9082611edc565b84519190611f33565b60a081015160c08201516060916105709161192a908290612863565b5f81518351148015610d8c5750610d8c835f845f8751611fa7565b865160208801205f61197d878787611f33565b90508315611aa1576001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c168452909152902080546119c690612885565b159050611a23576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611a0783612b68565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091528120611a62916121f9565b897f03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a12078a8a604051611a94929190612b84565b60405180910390a261076c565b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c16845290915290208054611ae290612885565b90505f03611b40576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611b2483612ba9565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091529020611b808282612a5f565b50897f52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b8a8a84604051611bb593929190612bbf565b60405180910390a250505050505050505050565b60c08101516020820181905281515111611be05750565b5f611bf2825f01518360200151611edc565b8260200151611c019190612bed565b8251909150611c109082611fc9565b61ffff166040830152611c24600282612bed565b8251909150611c339082611fc9565b61ffff166060830152611c47600282612bed565b8251909150611c569082611fef565b63ffffffff166080830152611c6c600482612bed565b82519091505f90611c7d9083611fc9565b61ffff169050611c8e600283612bed565b60a084018190529150611ca18183612bed565b60c0909301929092525050565b5f8151601414611cbc575f80fd5b5060200151600160601b900490565b6060816001600160401b03811115611ce557611ce56124c6565b604051908082528060200260200182016040528015611d1857816020015b6060815260200190600190039081611d035790505b5090505f5b82811015611e80578415611dd8575f848483818110611d3e57611d3e612a13565b9050602002810190611d509190612c00565b611d5f91602491600491612c42565b611d6891612c69565b9050858114611dd65760405162461bcd60e51b815260206004820152603460248201527f6d756c746963616c6c3a20416c6c207265636f726473206d7573742068617665604482015273040c240dac2e8c6d0d2dcce40dcc2dacad0c2e6d60631b60648201526084016111b6565b505b5f8030868685818110611ded57611ded612a13565b9050602002810190611dff9190612c00565b604051611e0d929190612876565b5f60405180830381855af49150503d805f8114611e45576040519150601f19603f3d011682016040523d82523d5f602084013e611e4a565b606091505b509150915081611e58575f80fd5b80848481518110611e6b57611e6b612a13565b60209081029190910101525050600101611d1d565b509392505050565b604080516014808252818301909252606091602082018180368337505050600160601b9290920260208301525090565b5f6001600160e01b0319821663c869023360e01b1480610570575061057082612017565b5f815b83518110611eef57611eef612c86565b5f611efa858361203b565b60ff169050611f0a816001612bed565b611f149083612bed565b9150805f03611f235750611f29565b50611edf565b6114f68382612863565b8251606090611f428385612bed565b1115611f4c575f80fd5b5f826001600160401b03811115611f6557611f656124c6565b6040519080825280601f01601f191660200182016040528015611f8f576020820181803683370190505b50905060208082019086860101610a7c82828761205e565b5f611fb38484846120b3565b611fbe8787856120b3565b149695505050505050565b81515f90611fd8836002612bed565b1115611fe2575f80fd5b50016002015161ffff1690565b81515f90611ffe836004612bed565b1115612008575f80fd5b50016004015163ffffffff1690565b5f6001600160e01b0319821663691f343160e01b14806105705750610570826120d5565b5f82828151811061204e5761204e612a13565b016020015160f81c905092915050565b602081106120965781518352612075602084612bed565b9250612082602083612bed565b915061208f602082612863565b905061205e565b905182516020929092036101000a5f190180199091169116179052565b82515f906120c18385612bed565b11156120cb575f80fd5b5091016020012090565b5f6001600160e01b031982166304928c6760e21b14806105705750610570825f6001600160e01b0319821663547d2b4160e11b148061212457506001600160e01b03198216635c98042b60e01b145b806105705750610570825f6001600160e01b0319821663bc1c58d160e01b14806105705750610570825f6001600160e01b03198216631d9dabef60e11b148061217d57506001600160e01b031982166378e5bf0360e11b145b806105705750610570825f6001600160e01b03198216631101d5ab60e11b14806105705750610570825f6001600160e01b0319821663d700ff3360e01b14806105705750610570825f6001600160e01b03198216634fbf043360e01b148061057057506301ffc9a760e01b6001600160e01b0319831614610570565b50805461220590612885565b5f825580601f10612214575050565b601f0160209004905f5260205f20908101906122309190612233565b50565b5b80821115612247575f8155600101612234565b5090565b80356001600160e01b031981168114612262575f80fd5b919050565b5f60208284031215612277575f80fd5b610d8c8261224b565b5f8083601f840112612290575f80fd5b5081356001600160401b038111156122a6575f80fd5b602083019150836020828501011115610bae575f80fd5b5f805f604084860312156122cf575f80fd5b8335925060208401356001600160401b038111156122eb575f80fd5b6122f786828701612280565b9497909650939450505050565b5f805f805f60608688031215612318575f80fd5b8535945060208601356001600160401b0380821115612335575f80fd5b61234189838a01612280565b90965094506040880135915080821115612359575f80fd5b5061236688828901612280565b969995985093965092949392505050565b5f8060408385031215612388575f80fd5b823591506123986020840161224b565b90509250929050565b5f80604083850312156123b2575f80fd5b50508035926020909101359150565b5f5b838110156123db5781810151838201526020016123c3565b50505f910152565b5f81518084526123fa8160208601602086016123c1565b601f01601f19169290920160200192915050565b828152604060208201525f6114f660408301846123e3565b5f805f60608486031215612438575f80fd5b505081359360208301359350604090920135919050565b5f6020828403121561245f575f80fd5b5035919050565b602081525f610d8c60208301846123e3565b5f805f806060858703121561248b575f80fd5b843593506020850135925060408501356001600160401b038111156124ae575f80fd5b6124ba87828801612280565b95989497509550505050565b634e487b7160e01b5f52604160045260245ffd5b5f805f606084860312156124ec575f80fd5b833592506020840135915060408401356001600160401b0380821115612510575f80fd5b818601915086601f830112612523575f80fd5b813581811115612535576125356124c6565b604051601f8201601f19908116603f0116810190838211818310171561255d5761255d6124c6565b81604052828152896020848701011115612575575f80fd5b826020860160208301375f6020848301015280955050505050509250925092565b6001600160a01b0381168114612230575f80fd5b80358015158114612262575f80fd5b5f80604083850312156125ca575f80fd5b82356125d581612596565b9150612398602084016125aa565b5f805f606084860312156125f5575f80fd5b83359250602084013561260781612596565b9150612615604085016125aa565b90509250925092565b5f805f60608486031215612630575f80fd5b8335925060208401359150604084013561ffff8116811461264f575f80fd5b809150509250925092565b5f805f6060848603121561266c575f80fd5b833561267781612596565b925060208401359150604084013561264f81612596565b5f8083601f84011261269e575f80fd5b5081356001600160401b038111156126b4575f80fd5b6020830191508360208260051b8501011115610bae575f80fd5b5f80602083850312156126df575f80fd5b82356001600160401b038111156126f4575f80fd5b6127008582860161268e565b90969095509350505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b8281101561276157603f1988860301845261274f8583516123e3565b94509285019290850190600101612733565b5092979650505050505050565b5f806040838503121561277f575f80fd5b82359150602083013561279181612596565b809150509250929050565b5f805f604084860312156127ae575f80fd5b8335925060208401356001600160401b038111156127ca575f80fd5b6122f78682870161268e565b5f805f606084860312156127e8575f80fd5b833592506127f86020850161224b565b9150604084013561264f81612596565b5f8060408385031215612819575f80fd5b823561282481612596565b9150602083013561279181612596565b5f82516128458184602087016123c1565b9190910192915050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156105705761057061284f565b818382375f9101908152919050565b600181811c9082168061289957607f821691505b6020821081036128b757634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156114e457805f5260205f20601f840160051c810160208510156128e25750805b601f840160051c820191505b81811015611149575f81556001016128ee565b6001600160401b03831115612918576129186124c6565b61292c836129268354612885565b836128bd565b5f601f84116001811461295d575f85156129465750838201355b5f19600387901b1c1916600186901b178355611149565b5f83815260208120601f198716915b8281101561298c578685013582556020948501946001909201910161296c565b50868210156129a8575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b604081525f6129f56040830186886129ba565b8281036020840152612a088185876129ba565b979650505050505050565b634e487b7160e01b5f52603260045260245ffd5b602081525f6114f66020830184866129ba565b5f6001600160401b03808316818103612a5557612a5561284f565b6001019392505050565b81516001600160401b03811115612a7857612a786124c6565b612a8c81612a868454612885565b846128bd565b602080601f831160018114612abf575f8415612aa85750858301515b5f19600386901b1c1916600185901b178555612b16565b5f85815260208120601f198616915b82811015612aed57888601518255948401946001909101908401612ace565b5085821015612b0a57878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b604081525f612b3060408301866123e3565b8281036020840152612b438185876129ba565b9695505050505050565b5f60208284031215612b5d575f80fd5b8151610d8c81612596565b5f61ffff821680612b7b57612b7b61284f565b5f190192915050565b604081525f612b9660408301856123e3565b905061ffff831660208301529392505050565b5f61ffff808316818103612a5557612a5561284f565b606081525f612bd160608301866123e3565b61ffff851660208401528281036040840152612b4381856123e3565b808201808211156105705761057061284f565b5f808335601e19843603018112612c15575f80fd5b8301803591506001600160401b03821115612c2e575f80fd5b602001915036819003821315610bae575f80fd5b5f8085851115612c50575f80fd5b83861115612c5c575f80fd5b5050820193919092039150565b80356020831015610570575f19602084900360031b1b1692915050565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{}},"0xa06a63155145b7f2fda96d9658ec7fef3b9dcf76":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b506004361061004a575f3560e01c80634ce34aa21461004e578063899e104c1461007e5780638df25d9214610091578063c4e8fcb5146100a4575b5f80fd5b61006161005c366004610834565b6100b9565b6040516001600160e01b0319909116815260200160405180910390f35b61006161008c3660046108b4565b610121565b61006161009f36600461091b565b61018a565b6100b76100b2366004610969565b6101c7565b005b5f335f525f60205260405f20546100dd576349ed56f960e11b5f523360045260245ffd5b815f5b81811015610110576101088585838181106100fd576100fd6109a2565b905060c002016102c4565b6001016100e0565b50632671a55160e11b949350505050565b5f335f525f60205260405f2054610145576349ed56f960e11b5f523360045260245ffd5b835f5b8181101561016d576101658787838181106100fd576100fd6109a2565b600101610148565b506101788484610436565b50632267841360e21b95945050505050565b5f335f525f60205260405f20546101ae576349ed56f960e11b5f523360045260245ffd5b6101b88383610436565b506346f92ec960e11b92915050565b336001600160a01b037f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c1614610210576040516336abb4df60e11b815260040160405180910390fd5b6001600160a01b0382165f9081526020819052604090205481151560ff909116151503610268576040516349271a0f60e11b81526001600160a01b038316600482015281151560248201526044015b60405180910390fd5b6001600160a01b0382165f8181526020818152604091829020805460ff191685151590811790915591519182527fae63067d43ac07563b7eb8db6595635fc77f1578a2a5ea06ba91b63e2afa37e2910160405180910390a25050565b60016102d360208301836109ca565b60038111156102e4576102e46109b6565b03610329576103266102fc60408301602084016109ef565b61030c60608401604085016109ef565b61031c60808501606086016109ef565b8460a0013561056c565b50565b600261033860208301836109ca565b6003811115610349576103496109b6565b036103b6578060a00135600114610379576040516369f9582760e01b815260a0820135600482015260240161025f565b61032661038c60408301602084016109ef565b61039c60608401604085016109ef565b6103ac60808501606086016109ef565b8460800135610660565b60036103c560208301836109ca565b60038111156103d6576103d66109b6565b0361041d576103266103ee60408301602084016109ef565b6103fe60608401604085016109ef565b61040e60808501606086016109ef565b84608001358560a00135610715565b604051631e4cbc7f60e21b815260040160405180910390fd5b808280631759616b60e11b6020525f5b8381101561055f57823582018035803b61046b57635f15d6725f52806020526024601cfd5b60a08201358060051b60c0018060808501351460a0606086013514168185013583141615905080156104a657633ae8821360e21b5f5260045ffd5b506020860195506080602084016024378060061b60400190508060a00160a4525f8160c401528060c4018160a0850160c4375f808260205f875af1935083610550573d1561053057601f3d0160051c91508060051c826003028184111561051a578184036003028280028580020360091c01015b5a60208201101561052d573d5f803e3d5ffd5b50505b6357e222f160e11b5f528260045260c0606452608451602001608452805ffd5b50505050600181019050610446565b5050505060806040525050565b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166106515780873b15151661065157806106405781610623573d1561060257601f3d0160051c8360051c81600302818311156105eb578183036003028280028480020360091c01015b5a6020820110156105fe573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b833b61067757635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af180610707573d156106e557601f3d0160051c8260051c81600302818311156106ce578183036003028280028480020360091c01015b5a6020820110156106e1573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b61072c57635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af1806107d1573d156107b057601f3d0160051c8560051c8160030281831115610799578183036003028280028480020360091c01015b5a6020820110156107ac573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b5f8083601f8401126107fc575f80fd5b50813567ffffffffffffffff811115610813575f80fd5b60208301915083602060c08302850101111561082d575f80fd5b9250929050565b5f8060208385031215610845575f80fd5b823567ffffffffffffffff81111561085b575f80fd5b610867858286016107ec565b90969095509350505050565b5f8083601f840112610883575f80fd5b50813567ffffffffffffffff81111561089a575f80fd5b6020830191508360208260051b850101111561082d575f80fd5b5f805f80604085870312156108c7575f80fd5b843567ffffffffffffffff808211156108de575f80fd5b6108ea888389016107ec565b90965094506020870135915080821115610902575f80fd5b5061090f87828801610873565b95989497509550505050565b5f806020838503121561092c575f80fd5b823567ffffffffffffffff811115610942575f80fd5b61086785828601610873565b80356001600160a01b0381168114610964575f80fd5b919050565b5f806040838503121561097a575f80fd5b6109838361094e565b915060208301358015158114610997575f80fd5b809150509250929050565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52602160045260245ffd5b5f602082840312156109da575f80fd5b8135600481106109e8575f80fd5b9392505050565b5f602082840312156109ff575f80fd5b6109e88261094e56fea164736f6c6343000818000a","storage":{}},"0xaa33d7188eb4b4a51c37199eaad2f73cf2bf0204":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0xac52f68f31577e44ae0c7e95a42dc9eb574b9383":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a424740014610090575b600080fd5b610059610054366004610cac565b6100b3565b6040516100669190610d9b565b60405180910390f35b61008261007d366004610dae565b610162565b604051908152602001610066565b6100a361009e366004610cac565b6101d6565b6040519015158152602001610066565b606060005a90506101576100ca6020870187610ddc565b6001546001600160a01b03166040880135846100e960608b018b610df9565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061023592505050565b9150505b9392505050565b600154604051636ccbae5f60e01b8152600481018390526000916001600160a01b031690636ccbae5f90602401602060405180830381865afa1580156101ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d09190610e40565b92915050565b600061022d6101e485610ef1565b600154604080516020601f88018190048102820181019092528681526001600160a01b039092169190879087908190840183828082843760009201919091525061030d92505050565b949350505050565b6060600080876001600160a01b0316866102518b8a8989610355565b60405161025e9190610f9b565b60006040518083038160008787f1925050503d806000811461029c576040519150601f19603f3d011682016040523d82523d6000602084013e6102a1565b606091505b5090925090506102b2603f87610fb7565b5a116102c0576102c0610fd9565b61030082826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061040a565b9998505050505050505050565b600061031a848484610443565b801561022d575060608401516020908101516001600160e01b031990811660009081529182905260409091205460e01b16151561022d565b50565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036103e75760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526103ff82828661058c565b979650505050505050565b6060831561041957508161015b565b8251156104295782518084602001fd5b8160405162461bcd60e51b81526004016103de9190610d9b565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561048a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104ae9190610e40565b9050600061055c8660600151805190602001208688602001516040516020016104fc9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561058257508551610582906001600160a01b03168286610a38565b9695505050505050565b60606001600160e01b03198416631de5861160e31b0361061a576000806000858060200190518101906105bf9190610fef565b92509250925086838383886040516024016105dd9493929190611032565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152935061015b92505050565b6001600160e01b03198416636debcb8d60e01b0361064b576000806000858060200190518101906105bf9190610fef565b6001600160e01b0319841663280d9b0560e01b036106dd576000806000808680602001905181019061067d91906110aa565b935093509350935087848484848a60405160240161069f959493929190611118565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152945061015b9350505050565b6001600160e01b031984166361603dd960e01b0361075c5760008380602001905181019061070b9190610e40565b905084818460405160240161072192919061115d565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152915061015b9050565b6001600160e01b0319841663b34f33c560e01b036107ab5760008060008580602001905181019061078d9190611176565b92509250925086838383886040516024016105dd94939291906111d0565b6001600160e01b03198416633013529360e01b036107dc5760008060008580602001905181019061078d9190611176565b6001600160e01b031984166307eca39560e01b03610830576000806000808680602001905181019061080e9190611209565b935093509350935087848484848a60405160240161069f95949392919061127e565b6001600160e01b031984166368b6154f60e01b03610862576000806000808680602001905181019061067d91906110aa565b6001600160e01b0319841663341de35b60e21b03610894576000806000808680602001905181019061067d91906110aa565b6001600160e01b03198416637a84860f60e11b0361092d576000806000806000878060200190518101906108c891906112cb565b945094509450945094508885858585858c6040516024016108ee96959493929190611360565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152955061015b945050505050565b6001600160e01b03198416636fab95b360e01b036109b2576000808480602001905181019061095c91906113b9565b915091508582828660405160240161097693929190611400565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925061015b915050565b6001600160e01b0319841663288f888960e11b0361015b57600080848060200190518101906109e1919061142b565b91509150858282866040516024016109fb93929190611459565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925050509392505050565b6000806000610a478585610b7a565b90925090506000816004811115610a6057610a60611489565b148015610a7e5750856001600160a01b0316826001600160a01b0316145b15610a8e5760019250505061015b565b600080876001600160a01b0316631626ba7e60e01b8888604051602401610ab692919061115d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051610af49190610f9b565b600060405180830381855afa9150503d8060008114610b2f576040519150601f19603f3d011682016040523d82523d6000602084013e610b34565b606091505b5091509150818015610b47575080516020145b8015610b6e57508051630b135d3f60e11b90610b6c9083016020908101908401610e40565b145b98975050505050505050565b6000808251604103610bb05760208301516040840151606085015160001a610ba487828585610bbf565b94509450505050610bb8565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610bf65750600090506003610ca3565b8460ff16601b14158015610c0e57508460ff16601c14155b15610c1f5750600090506004610ca3565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610c73573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610c9c57600060019250925050610ca3565b9150600090505b94509492505050565b600080600060408486031215610cc157600080fd5b833567ffffffffffffffff80821115610cd957600080fd5b9085019060808288031215610ced57600080fd5b90935060208501359080821115610d0357600080fd5b818601915086601f830112610d1757600080fd5b813581811115610d2657600080fd5b876020828501011115610d3857600080fd5b6020830194508093505050509250925092565b60005b83811015610d66578181015183820152602001610d4e565b50506000910152565b60008151808452610d87816020860160208601610d4b565b601f01601f19169290920160200192915050565b60208152600061015b6020830184610d6f565b600060208284031215610dc057600080fd5b5035919050565b6001600160a01b038116811461035257600080fd5b600060208284031215610dee57600080fd5b813561015b81610dc7565b6000808335601e19843603018112610e1057600080fd5b83018035915067ffffffffffffffff821115610e2b57600080fd5b602001915036819003821315610bb857600080fd5b600060208284031215610e5257600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610e9257610e92610e59565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ec157610ec1610e59565b604052919050565b600067ffffffffffffffff821115610ee357610ee3610e59565b50601f01601f191660200190565b600060808236031215610f0357600080fd5b610f0b610e6f565b8235610f1681610dc7565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610f4657600080fd5b840136601f820112610f5757600080fd5b8035610f6a610f6582610ec9565b610e98565b8181523684838501011115610f7e57600080fd5b818484018583013760009181019093015250606082015292915050565b60008251610fad818460208701610d4b565b9190910192915050565b600082610fd457634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b60008060006060848603121561100457600080fd5b835161100f81610dc7565b602085015190935061102081610dc7565b80925050604084015190509250925092565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061058290830184610d6f565b600082601f83011261107657600080fd5b8151611084610f6582610ec9565b81815284602083860101111561109957600080fd5b61022d826020830160208701610d4b565b600080600080608085870312156110c057600080fd5b84516110cb81610dc7565b60208601519094506110dc81610dc7565b60408601516060870151919450925067ffffffffffffffff81111561110057600080fd5b61110c87828801611065565b91505092959194509250565b6001600160a01b038681168252851660208201526040810184905260a06060820181905260009061114b90830185610d6f565b8281036080840152610b6e8185610d6f565b82815260406020820152600061022d6040830184610d6f565b60008060006060848603121561118b57600080fd5b835161119681610dc7565b60208501516040860151919450925067ffffffffffffffff8111156111ba57600080fd5b6111c686828701611065565b9150509250925092565b60018060a01b03851681528360208201526080604082015260006111f76080830185610d6f565b82810360608401526103ff8185610d6f565b6000806000806080858703121561121f57600080fd5b845161122a81610dc7565b60208601516040870151919550935067ffffffffffffffff8082111561124f57600080fd5b61125b88838901611065565b9350606087015191508082111561127157600080fd5b5061110c87828801611065565b60018060a01b038616815284602082015260a0604082015260006112a560a0830186610d6f565b82810360608401526112b78186610d6f565b90508281036080840152610b6e8185610d6f565b600080600080600060a086880312156112e357600080fd5b85516112ee81610dc7565b60208701519095506112ff81610dc7565b60408701516060880151919550935067ffffffffffffffff8082111561132457600080fd5b61133089838a01611065565b9350608088015191508082111561134657600080fd5b5061135388828901611065565b9150509295509295909350565b6001600160a01b038781168252861660208201526040810185905260c06060820181905260009061139390830186610d6f565b82810360808401526113a58186610d6f565b905082810360a08401526103008185610d6f565b600080604083850312156113cc57600080fd5b82519150602083015167ffffffffffffffff8111156113ea57600080fd5b6113f685828601611065565b9150509250929050565b8381526060602082015260006114196060830185610d6f565b82810360408401526105828185610d6f565b6000806040838503121561143e57600080fd5b825161144981610dc7565b6020939093015192949293505050565b60018060a01b03841681528260208201526060604082015260006114806060830184610d6f565b95945050505050565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a","storage":{"0x1":"0x7bb6cd9be29fab783c0b494a06fed8b2e2596b7a","0xd8b896d609e853134f3f02ce62d8049b2fdfe9356134f6d548fb1beda30db79":"0x30135293","0x4f457f36b92dc6b16c281e5877e2d8d39630135c1b7246fa9174035e1efcefbd":"0x6fab95b3","0x6b7ba3fe9941e089de60543da4a1deaef065baa963222951b2f9a138f9960820":"0x6debcb8d","0x70cff8e4ee4af5aa154324d45bcf258212c235bbe79f0707bb6273110ef4e13a":"0xf5090c1e","0x73efb0e44094dbabc6bbeecd3be1d81f272157c2dae2d647e6315f150b0b1dd2":"0xd0778d6c","0x8b1c4edded6644848281eab03ac2c319242d62b2057cffa3dd4540715bbc155e":"0xef2c3088","0xbeb5ea8fc2aeae43b7170220434aa4429fb067f0866ae25514b29f647641ca8c":"0x511f1112","0xca659f6eb372ce950e69d4d474290a6a4285f6a06a6128ca9f45419371a1e997":"0xb34f33c5","0xd12e300b5f35ba5198dd81dab97a512a154a0ad0e2cda788abdc22deba64f2a7":"0x280d9b05","0xd5453e7f4fff276a1d42f717d1db50865c284ae707a15bd6a590a3895656f27c":"0x7eca395","0xea2575ae4056f10294a848ca5ed6d215dffd1b80838142770bc441f7df607d71":"0x61603dd9","0xf8ca3ef1e3d09a0d88e209301f12626c90bec3ea586d4bce2c7a58e7eae8278f":"0x68b6154f"}},"0xb17aae5b3a7815433fc82cfd67ea245767894f03":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061012a5760003560e01c80638d839ffe116100ab578063aeb8ce9b1161006f578063aeb8ce9b146105d7578063ce1e09c014610688578063f14fcbc81461069d578063f2fde38b146106c7578063f49826be146106fa578063f7a16963146107b95761012a565b80638d839ffe1461045d5780638da5cb5b146104725780638f32d59b146104a35780639791c097146104b8578063acf1a841146105695761012a565b80637e324479116100f25780637e324479146102b8578063839df945146102e857806383e7f6ff1461031257806385f6d155146103c55780638a95b09f146104485761012a565b806301ffc9a71461012f5780633ccfd60b146101775780633d86c52f1461018e578063530e784f14610270578063715018a6146102a3575b600080fd5b34801561013b57600080fd5b506101636004803603602081101561015257600080fd5b50356001600160e01b031916610881565b604080519115158252519081900360200190f35b34801561018357600080fd5b5061018c610a12565b005b34801561019a57600080fd5b5061025e600480360360a08110156101b157600080fd5b810190602081018135600160201b8111156101cb57600080fd5b8201836020820111156101dd57600080fd5b803590602001918460018302840111600160201b831117156101fe57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b0383358116945060208401359360408101358216935060600135169050610a53565b60408051918252519081900360200190f35b34801561027c57600080fd5b5061018c6004803603602081101561029357600080fd5b50356001600160a01b0316610b42565b3480156102af57600080fd5b5061018c610ba3565b3480156102c457600080fd5b5061018c600480360360408110156102db57600080fd5b5080359060200135610bfe565b3480156102f457600080fd5b5061025e6004803603602081101561030b57600080fd5b5035610c1a565b34801561031e57600080fd5b5061025e6004803603604081101561033557600080fd5b810190602081018135600160201b81111561034f57600080fd5b82018360208201111561036157600080fd5b803590602001918460018302840111600160201b8311171561038257600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505091359250610c2c915050565b61018c600480360360808110156103db57600080fd5b810190602081018135600160201b8111156103f557600080fd5b82018360208201111561040757600080fd5b803590602001918460018302840111600160201b8311171561042857600080fd5b91935091506001600160a01b038135169060208101359060400135610d9e565b34801561045457600080fd5b5061025e610de9565b34801561046957600080fd5b5061025e610df0565b34801561047e57600080fd5b50610487610df6565b604080516001600160a01b039092168252519081900360200190f35b3480156104af57600080fd5b50610163610e05565b3480156104c457600080fd5b50610163600480360360208110156104db57600080fd5b810190602081018135600160201b8111156104f557600080fd5b82018360208201111561050757600080fd5b803590602001918460018302840111600160201b8311171561052857600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610e16945050505050565b61018c6004803603604081101561057f57600080fd5b810190602081018135600160201b81111561059957600080fd5b8201836020820111156105ab57600080fd5b803590602001918460018302840111600160201b831117156105cc57600080fd5b919350915035610e2b565b3480156105e357600080fd5b50610163600480360360208110156105fa57600080fd5b810190602081018135600160201b81111561061457600080fd5b82018360208201111561062657600080fd5b803590602001918460018302840111600160201b8311171561064757600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610fcf945050505050565b34801561069457600080fd5b5061025e611069565b3480156106a957600080fd5b5061018c600480360360208110156106c057600080fd5b503561106f565b3480156106d357600080fd5b5061018c600480360360208110156106ea57600080fd5b50356001600160a01b03166110a1565b34801561070657600080fd5b5061025e6004803603606081101561071d57600080fd5b810190602081018135600160201b81111561073757600080fd5b82018360208201111561074957600080fd5b803590602001918460018302840111600160201b8311171561076a57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b0383351693505050602001356110bb565b61018c600480360360c08110156107cf57600080fd5b810190602081018135600160201b8111156107e957600080fd5b8201836020820111156107fb57600080fd5b803590602001918460018302840111600160201b8311171561081c57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b038335811694506020840135936040810135935060608101358216925060800135166110d3565b604080517f737570706f727473496e74657266616365286279746573342900000000000000815290519081900360190190206000906001600160e01b0319838116911614806109c05750604080517472656e657728737472696e672c75696e743235362960581b815290519081900360150181209080602861186a8239604080519182900360280182206e636f6d6d697428627974657333322960881b8352905191829003600f01822090925090806026611892823960260190506040518091039020604051808070617661696c61626c6528737472696e672960781b8152506011019050604051809103902060405180807f72656e74507269636528737472696e672c75696e7432353629000000000000008152506019019050604051809103902018181818186001600160e01b031916826001600160e01b031916145b80610a0c5750604051808061182a60409139604080519182900301812091508060426118b8823960420190506040518091039020186001600160e01b031916826001600160e01b031916145b92915050565b610a1a610e05565b610a2357600080fd5b6040513390303180156108fc02916000818181858888f19350505050158015610a50573d6000803e3d6000fd5b50565b845160208601206000906001600160a01b038416158015610a7b57506001600160a01b038316155b15610acb57604080516020808201939093526bffffffffffffffffffffffff19606089901b1681830152605480820188905282518083039091018152607490910190915280519101209050610b39565b6001600160a01b038416610ade57600080fd5b604080516020808201939093526bffffffffffffffffffffffff19606089811b82168385015287811b8216605484015286901b166068820152607c80820188905282518083039091018152609c909101909152805191012090505b95945050505050565b610b4a610e05565b610b5357600080fd5b600280546001600160a01b0319166001600160a01b0383811691909117918290556040519116907ff261845a790fe29bbd6631e2ca4a5bdc83e6eed7c3271d9590d97287e00e912390600090a250565b610bab610e05565b610bb457600080fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b610c06610e05565b610c0f57600080fd5b600391909155600455565b60056020526000908152604090205481565b815160208084019190912060025460015460408051636b727d4360e11b81526004810185905290516000956001600160a01b03948516946350e9a715948a9491169263d6e4fa8692602480840193919291829003018186803b158015610c9157600080fd5b505afa158015610ca5573d6000803e3d6000fd5b505050506040513d6020811015610cbb57600080fd5b50516040516001600160e01b031960e085901b168152602481018290526044810188905260606004820190815283516064830152835189928291608490910190602087019080838360005b83811015610d1e578181015183820152602001610d06565b50505050905090810190601f168015610d4b5780820380516001836020036101000a031916815260200191505b5094505050505060206040518083038186803b158015610d6a57600080fd5b505afa158015610d7e573d6000803e3d6000fd5b505050506040513d6020811015610d9457600080fd5b5051949350505050565b610de285858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250889350879250869150806110d3565b5050505050565b6224ea0081565b60035481565b6000546001600160a01b031690565b6000546001600160a01b0316331490565b60006003610e2383611646565b101592915050565b6000610e6e84848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250869250610c2c915050565b905080341015610e7d57600080fd5b60008484604051808383808284376040805193909101839003832060015463c475abff60e01b855260048501829052602485018b90529151909750600096506001600160a01b03909116945063c475abff93506044808401936020935082900301818787803b158015610eef57600080fd5b505af1158015610f03573d6000803e3d6000fd5b505050506040513d6020811015610f1957600080fd5b5051905034831015610f565760405133903485900380156108fc02916000818181858888f19350505050158015610f54573d6000803e3d6000fd5b505b817f3da24c024582931cfaf8267d8ed24d13a82a8068d5bd337d30ec45cea4e506ae8787868560405180806020018481526020018381526020018281038252868682818152602001925080828437600083820152604051601f909101601f191690920182900397509095505050505050a2505050505050565b80516020820120600090610fe283610e16565b80156110625750600154604080516312dc929d60e31b81526004810184905290516001600160a01b03909216916396e494e891602480820192602092909190829003018186803b15801561103557600080fd5b505afa158015611049573d6000803e3d6000fd5b505050506040513d602081101561105f57600080fd5b50515b9392505050565b60045481565b6004546000828152600560205260409020544291011061108e57600080fd5b6000908152600560205260409020429055565b6110a9610e05565b6110b257600080fd5b610a508161172e565b60006110cb848484600080610a53565b949350505050565b60006110e28787868686610a53565b905060006110f188878461179c565b885160208a01209091508060006001600160a01b038716156114ac5760015460408051633f2891eb60e21b815260048101859052306024820152604481018c905290516001600160a01b039092169163fca247ac916064808201926020929091908290030181600087803b15801561116857600080fd5b505af115801561117c573d6000803e3d6000fd5b505050506040513d602081101561119257600080fd5b505160015460408051630ddf7fcb60e41b815290519293506000926001600160a01b039092169163ddf7fcb091600480820192602092909190829003018186803b1580156111df57600080fd5b505afa1580156111f3573d6000803e3d6000fd5b505050506040513d602081101561120957600080fd5b50516040805160208181019390935280820187905281518082038301815260608201808452815191850191909120600154633f15457f60e01b90925292519294506001600160a01b031692633f15457f92606480840193829003018186803b15801561127457600080fd5b505afa158015611288573d6000803e3d6000fd5b505050506040513d602081101561129e57600080fd5b505160408051630c4b7b8560e11b8152600481018490526001600160a01b038b8116602483015291519190921691631896f70a91604480830192600092919082900301818387803b1580156112f257600080fd5b505af1158015611306573d6000803e3d6000fd5b505050506001600160a01b0387161561139257876001600160a01b031663d5fa2b0082896040518363ffffffff1660e01b815260040180838152602001826001600160a01b03166001600160a01b0316815260200192505050600060405180830381600087803b15801561137957600080fd5b505af115801561138d573d6000803e3d6000fd5b505050505b60015460408051630a3b53db60e21b8152600481018690526001600160a01b038e81166024830152915191909216916328ed4f6c91604480830192600092919082900301818387803b1580156113e757600080fd5b505af11580156113fb573d6000803e3d6000fd5b50505050600160009054906101000a90046001600160a01b03166001600160a01b03166323b872dd308d866040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050600060405180830381600087803b15801561148e57600080fd5b505af11580156114a2573d6000803e3d6000fd5b505050505061154c565b6001600160a01b038616156114c057600080fd5b60015460408051633f2891eb60e21b8152600481018590526001600160a01b038d81166024830152604482018d90529151919092169163fca247ac9160648083019260209291908290030181600087803b15801561151d57600080fd5b505af1158015611531573d6000803e3d6000fd5b505050506040513d602081101561154757600080fd5b505190505b896001600160a01b0316837fca6abbe9d7f11422cb6ca7629fbf6fe9efb1c621f71ce8f02b9f2a230097404f8d87856040518080602001848152602001838152602001828103825285818151815260200191508051906020019080838360005b838110156115c45781810151838201526020016115ac565b50505050905090810190601f1680156115f15780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a3833411156116395760405133903486900380156108fc02916000818181858888f19350505050158015611637573d6000803e3d6000fd5b505b5050505050505050505050565b8051600090819081905b8082101561172557600085838151811061166657fe5b01602001516001600160f81b0319169050600160ff1b81101561168e57600183019250611719565b600760fd1b6001600160f81b0319821610156116af57600283019250611719565b600f60fc1b6001600160f81b0319821610156116d057600383019250611719565b601f60fb1b6001600160f81b0319821610156116f157600483019250611719565b603f60fa1b6001600160f81b03198216101561171257600583019250611719565b6006830192505b50600190920191611650565b50909392505050565b6001600160a01b03811661174157600080fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b600354600082815260056020526040812054909142910111156117be57600080fd5b600454600083815260056020526040902054429101116117dd57600080fd5b6117e684610fcf565b6117ef57600080fd5b600082815260056020526040812081905561180a8585610c2c565b90506224ea0084101561181c57600080fd5b803410156110cb57600080fdfe6d616b65436f6d6d69746d656e7457697468436f6e66696728737472696e672c616464726573732c627974657333322c616464726573732c6164647265737329726567697374657228737472696e672c616464726573732c75696e743235362c62797465733332296d616b65436f6d6d69746d656e7428737472696e672c616464726573732c6279746573333229726567697374657257697468436f6e66696728737472696e672c616464726573732c75696e743235362c627974657333322c616464726573732c6164647265737329a265627a7a72315820ba74b4e49afb22de09a9ebda5d073d93e2a2a7b2530ce50def390c32cac92ea064736f6c634300050c0032","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1":"0xc965345edac823d56812cd20a10316233916a605","0x2":"0xec71e4e674fe0f432693dc2b935c34bd2774c003","0x3":"0x258","0x4":"0x15180"}},"0xbdefcf6429d0ac68236a6beb321cbd2ce66b463c":{"nonce":2,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c80636d435421116100885780637b37e561116100635780637b37e561146102435780638b9e028b14610256578063906c87cc1461027657806393790f4414610289575f80fd5b80636d435421146101eb5780636e9bfd9f146101fe578063794593bc14610230575f80fd5b806314afd79e116100c357806314afd79e1461018157806333bc8572146101945780634e3f9580146101b757806351710e45146101d8575f80fd5b8063027cc764146100e95780630a96ad391461011957806313ad9cab1461016c575b5f80fd5b6100fc6100f7366004610c39565b61029c565b6040516001600160a01b0390911681526020015b60405180910390f35b604080517f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f81527fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167602082015201610110565b61017f61017a366004610c61565b610339565b005b6100fc61018f366004610ca9565b610531565b6101a76101a2366004610cc9565b61055c565b6040519015158152602001610110565b6101ca6101c5366004610ca9565b610595565b604051908152602001610110565b61017f6101e6366004610ca9565b6105bd565b61017f6101f9366004610cc9565b6106be565b61021161020c366004610cfa565b6107ae565b604080516001600160a01b039093168352901515602083015201610110565b6100fc61023e366004610d11565b610838565b61017f610251366004610ca9565b610a0a565b610269610264366004610ca9565b610aab565b6040516101109190610d32565b6100fc610284366004610ca9565b610b28565b6101ca610297366004610ca9565b610b53565b5f6102a683610b8e565b6001600160a01b0383165f908152602081905260409020600301548083106102f157604051636ceb340b60e01b81526001600160a01b03851660048201526024015b60405180910390fd5b6001600160a01b0384165f90815260208190526040902060030180548490811061031d5761031d610d7e565b5f918252602090912001546001600160a01b0316949350505050565b61034283610bc6565b60405163c4e8fcb560e01b81526001600160a01b038381166004830152821515602483015284169063c4e8fcb5906044015f604051808303815f87803b15801561038a575f80fd5b505af115801561039c573d5f803e3d5ffd5b505050506001600160a01b038381165f908152602081815260408083209386168352600484019091529020548015158380156103d6575080155b15610425576003830180546001810182555f828152602080822090920180546001600160a01b0319166001600160a01b038a169081179091559254928152600486019091526040902055610529565b831580156104305750805b156105295760038301545f198301905f9061044d90600190610d92565b90508181146104d8575f85600301828154811061046c5761046c610d7e565b5f918252602090912001546003870180546001600160a01b03909216925082918590811061049c5761049c610d7e565b5f91825260208083209190910180546001600160a01b0319166001600160a01b0394851617905592909116815260048701909152604090208490555b846003018054806104eb576104eb610db7565b5f828152602080822083015f1990810180546001600160a01b03191690559092019092556001600160a01b0389168252600487019052604081205550505b505050505050565b5f61053b82610b8e565b506001600160a01b039081165f908152602081905260409020600101541690565b5f61056683610b8e565b506001600160a01b039182165f9081526020818152604080832093909416825260049092019091522054151590565b5f61059f82610b8e565b506001600160a01b03165f9081526020819052604090206003015490565b6105c681610b8e565b6001600160a01b038181165f9081526020819052604090206002015416331461060d576040516388c3a11560e01b81526001600160a01b03821660048201526024016102e8565b6040515f907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da908290a26001600160a01b038082165f818152602081905260408082206002810180546001600160a01b031916905560010154905133949190911692917fc8894f26f396ce8c004245c8b7cd1b92103a6e4302fcbab883987149ac01b7ec91a46001600160a01b03165f90815260208190526040902060010180546001600160a01b03191633179055565b6106c782610bc6565b6001600160a01b0381166106f95760405163a388d26360e01b81526001600160a01b03831660048201526024016102e8565b6001600160a01b038083165f9081526020819052604090206002015481169082160361074b576040516365e0406560e11b81526001600160a01b038084166004830152821660248201526044016102e8565b6040516001600160a01b038216907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da905f90a26001600160a01b039182165f90815260208190526040902060020180546001600160a01b03191691909216179055565b5f8060ff60f81b30847f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f6040516020016107eb9493929190610dcb565b60408051601f198184030181529190528051602090910120936001600160a01b0385163f7fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167149350915050565b5f6001600160a01b0382166108605760405163267eaa8160e21b815260040160405180910390fd5b606083901c3314610884576040516332db94d160e21b815260040160405180910390fd5b6040516108c3906001600160f81b031990309086907f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f90602001610dcb565b604051602081830303815290604052805190602001205f1c90507fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167816001600160a01b03163f0361093257604051633194665960e11b81526001600160a01b03821660048201526024016102e8565b8260405161093f90610c16565b8190604051809103905ff590508015801561095c573d5f803e3d5ffd5b50506001600160a01b038181165f81815260208181526040918290206001810180546001600160a01b03191695881695909517909455868455815192835282018690527f4397af6128d529b8ae0442f99db1296d5136062597a15bbc61c1b2a6431a7d15910160405180910390a16040516001600160a01b03808516915f918516907fc8894f26f396ce8c004245c8b7cd1b92103a6e4302fcbab883987149ac01b7ec908390a45092915050565b610a1381610bc6565b6001600160a01b038181165f9081526020819052604090206002015416610a58576040516335809b0b60e11b81526001600160a01b03821660048201526024016102e8565b6040515f907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da908290a26001600160a01b03165f90815260208190526040902060020180546001600160a01b0319169055565b6060610ab682610b8e565b6001600160a01b0382165f908152602081815260409182902060030180548351818402810184019094528084529091830182828015610b1c57602002820191905f5260205f20905b81546001600160a01b03168152600190910190602001808311610afe575b50505050509050919050565b5f610b3282610b8e565b506001600160a01b039081165f908152602081905260409020600201541690565b6001600160a01b0381165f9081526020819052604090205480610b89576040516304ca820960e41b815260040160405180910390fd5b919050565b6001600160a01b0381165f90815260208190526040902054610bc3576040516304ca820960e41b815260040160405180910390fd5b50565b610bcf81610b8e565b6001600160a01b038181165f90815260208190526040902060010154163314610bc35760405163d4ed9a1760e01b81526001600160a01b03821660048201526024016102e8565b610a4180610e0583390190565b80356001600160a01b0381168114610b89575f80fd5b5f8060408385031215610c4a575f80fd5b610c5383610c23565b946020939093013593505050565b5f805f60608486031215610c73575f80fd5b610c7c84610c23565b9250610c8a60208501610c23565b915060408401358015158114610c9e575f80fd5b809150509250925092565b5f60208284031215610cb9575f80fd5b610cc282610c23565b9392505050565b5f8060408385031215610cda575f80fd5b610ce383610c23565b9150610cf160208401610c23565b90509250929050565b5f60208284031215610d0a575f80fd5b5035919050565b5f8060408385031215610d22575f80fd5b82359150610cf160208401610c23565b602080825282518282018190525f9190848201906040850190845b81811015610d725783516001600160a01b031683529284019291840191600101610d4d565b50909695505050505050565b634e487b7160e01b5f52603260045260245ffd5b81810381811115610db157634e487b7160e01b5f52601160045260245ffd5b92915050565b634e487b7160e01b5f52603160045260245ffd5b6001600160f81b031994909416845260609290921b6bffffffffffffffffffffffff19166001840152601583015260358201526055019056fe60a060405234801561000f575f80fd5b5033608052608051610a1561002c5f395f6101d20152610a155ff3fe608060405234801561000f575f80fd5b506004361061004a575f3560e01c80634ce34aa21461004e578063899e104c1461007e5780638df25d9214610091578063c4e8fcb5146100a4575b5f80fd5b61006161005c366004610834565b6100b9565b6040516001600160e01b0319909116815260200160405180910390f35b61006161008c3660046108b4565b610121565b61006161009f36600461091b565b61018a565b6100b76100b2366004610969565b6101c7565b005b5f335f525f60205260405f20546100dd576349ed56f960e11b5f523360045260245ffd5b815f5b81811015610110576101088585838181106100fd576100fd6109a2565b905060c002016102c4565b6001016100e0565b50632671a55160e11b949350505050565b5f335f525f60205260405f2054610145576349ed56f960e11b5f523360045260245ffd5b835f5b8181101561016d576101658787838181106100fd576100fd6109a2565b600101610148565b506101788484610436565b50632267841360e21b95945050505050565b5f335f525f60205260405f20546101ae576349ed56f960e11b5f523360045260245ffd5b6101b88383610436565b506346f92ec960e11b92915050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610210576040516336abb4df60e11b815260040160405180910390fd5b6001600160a01b0382165f9081526020819052604090205481151560ff909116151503610268576040516349271a0f60e11b81526001600160a01b038316600482015281151560248201526044015b60405180910390fd5b6001600160a01b0382165f8181526020818152604091829020805460ff191685151590811790915591519182527fae63067d43ac07563b7eb8db6595635fc77f1578a2a5ea06ba91b63e2afa37e2910160405180910390a25050565b60016102d360208301836109ca565b60038111156102e4576102e46109b6565b03610329576103266102fc60408301602084016109ef565b61030c60608401604085016109ef565b61031c60808501606086016109ef565b8460a0013561056c565b50565b600261033860208301836109ca565b6003811115610349576103496109b6565b036103b6578060a00135600114610379576040516369f9582760e01b815260a0820135600482015260240161025f565b61032661038c60408301602084016109ef565b61039c60608401604085016109ef565b6103ac60808501606086016109ef565b8460800135610660565b60036103c560208301836109ca565b60038111156103d6576103d66109b6565b0361041d576103266103ee60408301602084016109ef565b6103fe60608401604085016109ef565b61040e60808501606086016109ef565b84608001358560a00135610715565b604051631e4cbc7f60e21b815260040160405180910390fd5b808280631759616b60e11b6020525f5b8381101561055f57823582018035803b61046b57635f15d6725f52806020526024601cfd5b60a08201358060051b60c0018060808501351460a0606086013514168185013583141615905080156104a657633ae8821360e21b5f5260045ffd5b506020860195506080602084016024378060061b60400190508060a00160a4525f8160c401528060c4018160a0850160c4375f808260205f875af1935083610550573d1561053057601f3d0160051c91508060051c826003028184111561051a578184036003028280028580020360091c01015b5a60208201101561052d573d5f803e3d5ffd5b50505b6357e222f160e11b5f528260045260c0606452608451602001608452805ffd5b50505050600181019050610446565b5050505060806040525050565b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166106515780873b15151661065157806106405781610623573d1561060257601f3d0160051c8360051c81600302818311156105eb578183036003028280028480020360091c01015b5a6020820110156105fe573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b833b61067757635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af180610707573d156106e557601f3d0160051c8260051c81600302818311156106ce578183036003028280028480020360091c01015b5a6020820110156106e1573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b61072c57635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af1806107d1573d156107b057601f3d0160051c8560051c8160030281831115610799578183036003028280028480020360091c01015b5a6020820110156107ac573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b5f8083601f8401126107fc575f80fd5b50813567ffffffffffffffff811115610813575f80fd5b60208301915083602060c08302850101111561082d575f80fd5b9250929050565b5f8060208385031215610845575f80fd5b823567ffffffffffffffff81111561085b575f80fd5b610867858286016107ec565b90969095509350505050565b5f8083601f840112610883575f80fd5b50813567ffffffffffffffff81111561089a575f80fd5b6020830191508360208260051b850101111561082d575f80fd5b5f805f80604085870312156108c7575f80fd5b843567ffffffffffffffff808211156108de575f80fd5b6108ea888389016107ec565b90965094506020870135915080821115610902575f80fd5b5061090f87828801610873565b95989497509550505050565b5f806020838503121561092c575f80fd5b823567ffffffffffffffff811115610942575f80fd5b61086785828601610873565b80356001600160a01b0381168114610964575f80fd5b919050565b5f806040838503121561097a575f80fd5b6109838361094e565b915060208301358015158114610997575f80fd5b809150509250929050565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52602160045260245ffd5b5f602082840312156109da575f80fd5b8135600481106109e8575f80fd5b9392505050565b5f602082840312156109ff575f80fd5b6109e88261094e56fea164736f6c6343000818000aa164736f6c6343000818000a","storage":{}},"0xbe5deac45dd1ca4ee18dc2d585d84d3d3cb82b0d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c806341539d4a146100465780634d5505d314610097578063afa764d7146100b1575b600080fd5b6100636004803603602081101561005c57600080fd5b50356100dc565b6040805195865260208601949094528484019290925260608401526001600160a01b03166080830152519081900360a00190f35b61009f610114565b60408051918252519081900360200190f35b6100da600480360360608110156100c757600080fd5b508035906020810135906040013561011a565b005b60006020819052908152604090208054600182015460028301546003840154600490940154929391929091906001600160a01b031685565b60015481565b6101226101eb565b506040805160a0810182528481526020808201858152828401858152426060808601918252336080870181815260018054810180825560009081528089528a81208a518155975188830155955160028801559351600387015551600490950180546001600160a01b0319166001600160a01b0390961695909517909455905486518981529485018890528487018a905295519495919491937fba5de06d22af2685c6c7765f60067f7d2b08c2d29f53cdf14d67f6d1c9bfb527929081900390910190a450505050565b6040518060a001604052806000801916815260200160008152602001600081526020016000815260200160006001600160a01b03168152509056fea164736f6c6343000606000a","storage":{"0x1":"0x0"}},"0xbe92182cab5b84fd18b34881a0c32771e84f5b8b":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061021c5760003560e01c80638da5cb5b11610125578063bebec6b4116100ad578063e985e9c51161007c578063e985e9c514610540578063f059235914610553578063f2fde38b14610566578063ffa1ad7414610579578063ffad6f551461059d57600080fd5b8063bebec6b4146104e7578063bfc5429b146104fa578063c15ae7cf1461050d578063c87b56dd1461052d57600080fd5b8063a81ce6f9116100f4578063a81ce6f91461046d578063ac9650d814610480578063b3f9e4cb146104a0578063b85afd28146104b3578063b98b3526146104d457600080fd5b80638da5cb5b146103f157806391015f6b146103f9578063933c051d1461041b578063a3f4df7e1461043d57600080fd5b80634bd79ed0116101a857806370a082311161017757806370a082311461038d578063715018a6146103a05780637e37479e146103a857806383caffbe146103bb578063869b8884146103ce57600080fd5b80634bd79ed0146103335780634f558e79146103465780636352211e14610359578063672b9f811461036c57600080fd5b80631bd8cc1a116101ef5780631bd8cc1a146102ac5780631be5e7ed146102cc578063276fabb1146102ec578063430c20811461030d578063485cc9551461032057600080fd5b806301ffc9a7146102215780630328075514610249578063081812fc1461026c57806313af403514610297575b600080fd5b61023461022f366004612c9d565b6105b0565b60405190151581526020015b60405180910390f35b61025c610257366004612d0b565b610638565b6040516102409493929190612dfe565b61027f61027a366004612e3c565b61065b565b6040516001600160a01b039091168152602001610240565b6102aa6102a5366004612e6a565b610760565b005b6102bf6102ba366004612d0b565b6107d1565b6040516102409190612e87565b6102df6102da366004612edb565b6107f0565b6040516102409190612f12565b6102ff6102fa366004612f25565b61091b565b604051908152602001610240565b61023461031b366004612f66565b61098f565b6102aa61032e366004612f92565b610aa2565b6102aa610341366004612fcb565b610bf5565b610234610354366004612e3c565b610e51565b61027f610367366004612e3c565b610e5c565b61037f61037a366004613036565b610e67565b604051610240929190613058565b6102ff61039b366004612e6a565b610f97565b6102aa611095565b6102ff6103b6366004612e6a565b6110a9565b6102bf6103c936600461307d565b611118565b6103e16103dc366004612fcb565b6114f0565b60405161024094939291906131bb565b61027f6116e6565b61040c610407366004612d0b565b611714565b60405161024093929190613208565b61042e610429366004612fcb565b611734565b60405161024093929190613234565b6102df604051806040016040528060118152602001702aa7299d10283937bc3c902932b0b232b960791b81525081565b61027f61047b366004612e3c565b6118bd565b61049361048e366004612f25565b61198b565b6040516102409190613277565b61027f6104ae366004612e3c565b611a7f565b6104c66104c1366004612d0b565b611b05565b6040516102409291906132d9565b6102df6104e23660046132fe565b611ce1565b6102df6104f5366004612e6a565b611cfb565b6102df6105083660046132fe565b611d6f565b61052061051b366004612f25565b611d89565b6040516102409190613371565b6102df61053b366004612e3c565b611e37565b61023461054e366004612f92565b611f09565b6102aa610561366004612fcb565b611f54565b6102aa610574366004612e6a565b612018565b6102df604051806040016040528060058152602001640302e352e360dc1b81525081565b6102aa6105ab366004613384565b612085565b60006001600160e01b031982166362526e6360e01b14806105e157506001600160e01b03198216636fa624af60e11b145b806105fc57506001600160e01b031982166308da864d60e31b145b8061061757506001600160e01b03198216638584880360e01b145b8061063257506301ffc9a760e01b6001600160e01b03198316145b92915050565b6000806060806106498787876120d8565b93509350935093505b93509350935093565b60006106668261233a565b61067257506000919050565b61067b826123d2565b6106f25760665460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa1580156106c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106ed91906133bd565b610632565b60655460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa15801561073c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061063291906133bd565b600061076a6116e6565b6001600160a01b0316146107c55760405162461bcd60e51b815260206004820152601e60248201527f50726f78795265616465723a204f574e45525f414c52454144595f534554000060448201526064015b60405180910390fd5b6107ce81612419565b50565b60606107e66107e0848661346a565b83612495565b90505b9392505050565b60606107fb826123d2565b1561088057606554604051631be5e7ed60e01b81526001600160a01b0390911690631be5e7ed9061083490879087908790600401613547565b600060405180830381865afa158015610851573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261087991908101906135b0565b90506107e9565b600061088b83612617565b90506001600160a01b0381163b1561091357604051631be5e7ed60e01b81526001600160a01b03821690631be5e7ed906108cd90889088908890600401613547565b600060405180830381865afa92505050801561090b57506040513d6000823e601f3d908101601f1916820160405261090891908101906135b0565b60015b156109135791505b509392505050565b60655460405163276fabb160e01b81526000916001600160a01b03169063276fabb19061094e908690869060040161366c565b602060405180830381865afa15801561096b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613680565b600061099a8261233a565b6109a657506000610632565b6109af826123d2565b610a2d5760665460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a04573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a289190613699565b6107e9565b60655460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a7e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613699565b600054610100900460ff1615808015610ac25750600054600160ff909116105b80610adc5750303b158015610adc575060005460ff166001145b610b3f5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107bc565b6000805460ff191660011790558015610b62576000805461ff0019166101001790555b606580546001600160a01b038086166001600160a01b0319928316179092556066805492851692909116919091179055610b9a61268a565b610ba261268a565b610baa6126b1565b8015610bf0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b610bfd6126e1565b828114610c4c5760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107bc565b60005b83811015610e4a5760006068868684818110610c6d57610c6d6136bb565b9050602002810190610c7f91906136d1565b604051610c8d929190613717565b908152604051908190036020019020541115610cf1576068858583818110610cb757610cb76136bb565b9050602002810190610cc991906136d1565b604051610cd7929190613717565b90815260200160405180910390206000610cf19190612c18565b60005b838383818110610d0657610d066136bb565b9050602002810190610d189190613727565b9050811015610ddc576068868684818110610d3557610d356136bb565b9050602002810190610d4791906136d1565b604051610d55929190613717565b9081526020016040518091039020848484818110610d7557610d756136bb565b9050602002810190610d879190613727565b83818110610d9757610d976136bb565b9050602002810190610da991906136d1565b82546001810184556000938452602090932090920191610dc991836137f8565b5080610dd4816138cd565b915050610cf4565b507fb2b57b54285120d17f49f2490a39ef791441fd0ad1e6b6818c23262bf91f061c858583818110610e1057610e106136bb565b9050602002810190610e2291906136d1565b604051610e309291906138e6565b60405180910390a180610e42816138cd565b915050610c4f565b5050505050565b60006106328261233a565b600061063282612740565b606080610e73836123d2565b15610ef95760655460405163672b9f8160e01b815260048101869052602481018590526001600160a01b039091169063672b9f8190604401600060405180830381865afa158015610ec8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610ef091908101906138fa565b91509150610f90565b6000610f0484612617565b90506001600160a01b0381163b15610f8e5760405163672b9f8160e01b815260048101869052602481018590526001600160a01b0382169063672b9f8190604401600060405180830381865afa925050508015610f8357506040513d6000823e601f3d908101601f19168201604052610f8091908101906138fa565b60015b15610f8e5790935091505b505b9250929050565b6065546040516370a0823160e01b81526001600160a01b03838116600483015260009283929116906370a0823190602401602060405180830381865afa158015610fe5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110099190613680565b6066549091506001600160a01b031615610632576066546040516370a0823160e01b81526001600160a01b038581166004830152909116906370a0823190602401602060405180830381865afa158015611067573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061108b9190613680565b6107e9908261395d565b61109d6126e1565b6110a76000612419565b565b606554604051633f1ba3cf60e11b81526001600160a01b0383811660048301526000921690637e37479e90602401602060405180830381865afa1580156110f4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190613680565b606060006067868660405161112e929190613717565b9081526020016040518091039020805461114790613770565b80601f016020809104026020016040519081016040528092919081815260200182805461117390613770565b80156111c05780601f10611195576101008083540402835291602001916111c0565b820191906000526020600020905b8154815290600101906020018083116111a357829003601f168201915b5050505050905080516000036111d657506114e8565b6000604051806040016040528060068152602001653a37b5b2b71760d11b81525090506000604051806040016040528060088152602001672e6164647265737360c01b81525090506000604051806040016040528060018152602001601760f91b815250905060008385838c8c868d8d8a60405160200161125f99989796959493929190613970565b6040516020818303038152906040529050600060688260405161128291906139f3565b9081526020016040518091039020805480602002602001604051908101604052809291908181526020016000905b8282101561135c5783829060005260206000200180546112cf90613770565b80601f01602080910402602001604051908101604052809291908181526020018280546112fb90613770565b80156113485780601f1061131d57610100808354040283529160200191611348565b820191906000526020600020905b81548152906001019060200180831161132b57829003601f168201915b5050505050815260200190600101906112b0565b50505050905080516003611370919061395d565b6001600160401b03811115611387576113876133da565b6040519080825280602002602001820160405280156113ba57816020015b60608152602001906001900390816113a55790505b50965081876000815181106113d1576113d16136bb565b602002602001018190525060005b815181101561143e578181815181106113fa576113fa6136bb565b602002602001015188826001611410919061395d565b81518110611420576114206136bb565b60200260200101819052508080611436906138cd565b9150506113df565b508486848d8d8860405160200161145a96959493929190613a0f565b6040516020818303038152906040528782516001611478919061395d565b81518110611488576114886136bb565b60200260200101819052508486856040516020016114a893929190613a72565b60405160208183030381529060405287825160026114c6919061395d565b815181106114d6576114d66136bb565b60200260200101819052505050505050505b949350505050565b6060808080846001600160401b0381111561150d5761150d6133da565b604051908082528060200260200182016040528015611536578160200160208202803683370190505b509350846001600160401b03811115611551576115516133da565b60405190808252806020026020018201604052801561157a578160200160208202803683370190505b509250846001600160401b03811115611595576115956133da565b6040519080825280602002602001820160405280156115c857816020015b60608152602001906001900390816115b35790505b509150846001600160401b038111156115e3576115e36133da565b60405190808252806020026020018201604052801561161657816020015b60608152602001906001900390816116015790505b50905060005b858110156116da57611647898989898581811061163b5761163b6136bb565b905060200201356120d8565b888581518110611659576116596136bb565b60200260200101888681518110611672576116726136bb565b6020026020010188878151811061168b5761168b6136bb565b602002602001018888815181106116a4576116a46136bb565b6020908102919091010193909352929091526001600160a01b0392831690915291169052806116d2816138cd565b91505061161c565b50945094509450949050565b7fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c8121905546001600160a01b031690565b6000806060611724868686612761565b9250925092505b93509350939050565b60608080836001600160401b03811115611750576117506133da565b604051908082528060200260200182016040528015611779578160200160208202803683370190505b509250836001600160401b03811115611794576117946133da565b6040519080825280602002602001820160405280156117bd578160200160208202803683370190505b509150836001600160401b038111156117d8576117d86133da565b60405190808252806020026020018201604052801561180b57816020015b60608152602001906001900390816117f65790505b50905060005b848110156118b25761183c8888888885818110611830576118306136bb565b90506020020135612761565b86848151811061184e5761184e6136bb565b60200260200101868581518110611867576118676136bb565b60200260200101868681518110611880576118806136bb565b60209081029190910101929092526001600160a01b0392831690915291169052806118aa816138cd565b915050611811565b509450945094915050565b606554604051634f558e7960e01b8152600481018390526000916001600160a01b031690634f558e7990602401602060405180830381865afa158015611907573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061192b9190613699565b156119415750506065546001600160a01b031690565b6066546001600160a01b03161580159061196d575060006119618361296c565b6001600160a01b031614155b156119835750506066546001600160a01b031690565b506000919050565b6060816001600160401b038111156119a5576119a56133da565b6040519080825280602002602001820160405280156119d857816020015b60608152602001906001900390816119c35790505b50905060005b82811015611a7857611a48308585848181106119fc576119fc6136bb565b9050602002810190611a0e91906136d1565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061299e92505050565b828281518110611a5a57611a5a6136bb565b60200260200101819052508080611a70906138cd565b9150506119de565b5092915050565b6000611a8a8261233a565b611a9657506000919050565b611a9f826123d2565b611ad45760665460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb906024016106ac565b60655460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb9060240161071f565b606080836001600160401b03811115611b2057611b206133da565b604051908082528060200260200182016040528015611b5357816020015b6060815260200190600190039081611b3e5790505b509150836001600160401b03811115611b6e57611b6e6133da565b604051908082528060200260200182016040528015611ba157816020015b6060815260200190600190039081611b8c5790505b509050611bad836123d2565b15611c345760655460405163170b5fa560e31b81526001600160a01b039091169063b85afd2890611be690889088908890600401613ab5565b600060405180830381865afa158015611c03573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611c2b9190810190613b72565b91509150611cd9565b6000611c3f84612617565b90506001600160a01b0381163b15158015611c5957508415155b15611cd75760405163170b5fa560e31b81526001600160a01b0382169063b85afd2890611c8e90899089908990600401613ab5565b600060405180830381865afa925050508015611ccc57506040513d6000823e601f3d908101601f19168201604052611cc99190810190613b72565b60015b15611cd75790935091505b505b935093915050565b6060611cf08686868686612a92565b979650505050505050565b606554604051632fafb1ad60e21b81526001600160a01b038381166004830152606092169063bebec6b4906024015b600060405180830381865afa158015611d47573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261063291908101906135b0565b6060611d7e8686868686612a92565b509695505050505050565b6060816001600160401b03811115611da357611da36133da565b604051908082528060200260200182016040528015611dcc578160200160208202803683370190505b50905060005b82811015611a7857611dfb848483818110611def57611def6136bb565b90506020020135612740565b828281518110611e0d57611e0d6136bb565b6001600160a01b039092166020928302919091019091015280611e2f816138cd565b915050611dd2565b6060611e428261233a565b611e5a57505060408051602081019091526000815290565b611e63826123d2565b611ed85760665460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401600060405180830381865afa158015611eb0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106ed91908101906135b0565b60655460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401611d2a565b60405162461bcd60e51b815260206004820152601f60248201527f50726f78795265616465723a20554e535550504f525445445f4d4554484f440060448201526000906064016107bc565b611f5c6126e1565b828114611fab5760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107bc565b60005b83811015610e4a57612006858583818110611fcb57611fcb6136bb565b9050602002810190611fdd91906136d1565b858585818110611fef57611fef6136bb565b905060200281019061200191906136d1565b612b3e565b80612010816138cd565b915050611fae565b6120206126e1565b6001600160a01b0381166107c55760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107bc565b61208d6126e1565b60005b83811015610e4a576120c68585838181106120ad576120ad6136bb565b90506020028101906120bf91906136d1565b8585612b3e565b806120d0816138cd565b915050612090565b600080606080856001600160401b038111156120f6576120f66133da565b60405190808252806020026020018201604052801561212957816020015b60608152602001906001900390816121145790505b509150856001600160401b03811115612144576121446133da565b60405190808252806020026020018201604052801561217757816020015b60608152602001906001900390816121625790505b509050612183856123d2565b156122845760655460405163b3f9e4cb60e01b8152600481018790526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa1580156121d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121f591906133bd565b935061220085612bad565b60655460405163170b5fa560e31b81529194506001600160a01b03169063b85afd2890612235908a908a908a90600401613ab5565b600060405180830381865afa158015612252573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261227a9190810190613b72565b9092509050610652565b61228d85612617565b93506122988561296c565b92506001600160a01b0384163b151580156122b4575060008251115b156106525760405163170b5fa560e31b81526001600160a01b0385169063b85afd28906122e9908a908a908a90600401613ab5565b600060405180830381865afa92505050801561232757506040513d6000823e601f3d908101601f191682016040526123249190810190613b72565b60015b1561065257909250905093509350935093565b6000612345826123d2565b6123645760006123548361296c565b6001600160a01b03161415610632565b606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e79906024015b602060405180830381865afa1580156123ae573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190613699565b6066546000906001600160a01b031615806106325750606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401612391565b60006124236116e6565b9050817fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c812190580546001600160a01b0319166001600160a01b03928316179055604051838216918316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b606082516001600160401b038111156124b0576124b06133da565b6040519080825280602002602001820160405280156124e357816020015b60608152602001906001900390816124ce5790505b5090506124ef826123d2565b1561257257606554604051630dec660d60e11b81526001600160a01b0390911690631bd8cc1a906125269086908690600401613bcb565b600060405180830381865afa158015612543573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261256b9190810190613bed565b9050610632565b600061257d83612617565b90506001600160a01b0381163b15158015612599575060008451115b15611a7857604051630dec660d60e11b81526001600160a01b03821690631bd8cc1a906125cc9087908790600401613bcb565b600060405180830381865afa92505050801561260a57506040513d6000823e601f3d908101601f191682016040526126079190810190613bed565b60015b15611a7857949350505050565b60665460405163b3f9e4cb60e01b8152600481018390526000916001600160a01b03169063b3f9e4cb906024015b602060405180830381865afa92505050801561267e575060408051601f3d908101601f1916820190925261267b918101906133bd565b60015b61063257506000919050565b600054610100900460ff166110a75760405162461bcd60e51b81526004016107bc90613c21565b600054610100900460ff166126d85760405162461bcd60e51b81526004016107bc90613c21565b6110a733612419565b336126ea6116e6565b6001600160a01b0316146110a75760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107bc565b600061274b826123d2565b612758576106ed8261296c565b61063282612bad565b6000806060846001600160401b0381111561277e5761277e6133da565b6040519080825280602002602001820160405280156127b157816020015b606081526020019060019003908161279c5790505b5090506127bd846123d2565b156128bb5760655460405163b3f9e4cb60e01b8152600481018690526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561280b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061282f91906133bd565b925061283a84612bad565b606554604051630dec660d60e11b81529193506001600160a01b031690631bd8cc1a9061286f90899089908990600401613c6c565b600060405180830381865afa15801561288c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526128b49190810190613bed565b905061172b565b6128c484612617565b92506128cf8461296c565b91506001600160a01b0383163b151580156128e957508415155b1561172b57604051630dec660d60e11b81526001600160a01b03841690631bd8cc1a9061291e90899089908990600401613c6c565b600060405180830381865afa92505050801561295c57506040513d6000823e601f3d908101601f191682016040526129599190810190613bed565b60015b1561172b57905093509350939050565b6066546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401612645565b60606001600160a01b0383163b612a065760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b60648201526084016107bc565b600080846001600160a01b031684604051612a2191906139f3565b600060405180830381855af49150503d8060008114612a5c576040519150601f19603f3d011682016040523d82523d6000602084013e612a61565b606091505b5091509150612a898282604051806060016040528060278152602001613c8160279139612bdf565b95945050505050565b6060806000612aa388888888611118565b90506000612ab18286612495565b905060005b8151811015612b31576000828281518110612ad357612ad36136bb565b6020026020010151511115612b1f57828181518110612af457612af46136bb565b60200260200101519350818181518110612b1057612b106136bb565b60200260200101519450612b31565b80612b29816138cd565b915050612ab6565b5050509550959350505050565b818160678686604051612b52929190613717565b90815260200160405180910390209182612b6d9291906137f8565b507f0bf4b04a0f6d7d0800284e1abb0f58f795c0a25b9088634b6ab847be51001dec8484604051612b9f9291906138e6565b60405180910390a150505050565b6065546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401612645565b60608315612bee5750816107e9565b825115612bfe5782518084602001fd5b8160405162461bcd60e51b81526004016107bc9190612f12565b50805460008255906000526020600020908101906107ce91905b80821115612c4f576000612c468282612c53565b50600101612c32565b5090565b508054612c5f90613770565b6000825580601f10612c6f575050565b601f0160209004906000526020600020908101906107ce91905b80821115612c4f5760008155600101612c89565b600060208284031215612caf57600080fd5b81356001600160e01b0319811681146107e957600080fd5b60008083601f840112612cd957600080fd5b5081356001600160401b03811115612cf057600080fd5b6020830191508360208260051b8501011115610f9057600080fd5b600080600060408486031215612d2057600080fd5b83356001600160401b03811115612d3657600080fd5b612d4286828701612cc7565b909790965060209590950135949350505050565b60005b83811015612d71578181015183820152602001612d59565b50506000910152565b60008151808452612d92816020860160208601612d56565b601f01601f19169290920160200192915050565b600082825180855260208086019550808260051b84010181860160005b84811015612df157601f19868403018952612ddf838351612d7a565b98840198925090830190600101612dc3565b5090979650505050505050565b6001600160a01b03858116825284166020820152608060408201819052600090612e2a90830185612da6565b8281036060840152611cf08185612da6565b600060208284031215612e4e57600080fd5b5035919050565b6001600160a01b03811681146107ce57600080fd5b600060208284031215612e7c57600080fd5b81356107e981612e55565b6020815260006107e96020830184612da6565b60008083601f840112612eac57600080fd5b5081356001600160401b03811115612ec357600080fd5b602083019150836020828501011115610f9057600080fd5b600080600060408486031215612ef057600080fd5b83356001600160401b03811115612f0657600080fd5b612d4286828701612e9a565b6020815260006107e96020830184612d7a565b60008060208385031215612f3857600080fd5b82356001600160401b03811115612f4e57600080fd5b612f5a85828601612cc7565b90969095509350505050565b60008060408385031215612f7957600080fd5b8235612f8481612e55565b946020939093013593505050565b60008060408385031215612fa557600080fd5b8235612fb081612e55565b91506020830135612fc081612e55565b809150509250929050565b60008060008060408587031215612fe157600080fd5b84356001600160401b0380821115612ff857600080fd5b61300488838901612cc7565b9096509450602087013591508082111561301d57600080fd5b5061302a87828801612cc7565b95989497509550505050565b6000806040838503121561304957600080fd5b50508035926020909101359150565b60408152600061306b6040830185612d7a565b8281036020840152612a898185612d7a565b6000806000806040858703121561309357600080fd5b84356001600160401b03808211156130aa57600080fd5b6130b688838901612e9a565b909650945060208701359150808211156130cf57600080fd5b5061302a87828801612e9a565b600081518084526020808501945080840160005b838110156131155781516001600160a01b0316875295820195908201906001016130f0565b509495945050505050565b60008282518085526020808601955060058183821b8501018287016000805b868110156131ac57601f1988850381018c5283518051808752908801908887019080891b88018a01865b8281101561319557858a8303018452613183828651612d7a565b948c0194938c01939150600101613169565b509e8a019e9750505093870193505060010161313f565b50919998505050505050505050565b6080815260006131ce60808301876130dc565b82810360208401526131e081876130dc565b905082810360408401526131f48186613120565b90508281036060840152611cf08185613120565b6001600160a01b03848116825283166020820152606060408201819052600090612a8990830184612da6565b60608152600061324760608301866130dc565b828103602084015261325981866130dc565b9050828103604084015261326d8185613120565b9695505050505050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156132cc57603f198886030184526132ba858351612d7a565b9450928501929085019060010161329e565b5092979650505050505050565b6040815260006132ec6040830185612da6565b8281036020840152612a898185612da6565b60008060008060006060868803121561331657600080fd5b85356001600160401b038082111561332d57600080fd5b61333989838a01612e9a565b9097509550602088013591508082111561335257600080fd5b5061335f88828901612e9a565b96999598509660400135949350505050565b6020815260006107e960208301846130dc565b6000806000806040858703121561339a57600080fd5b84356001600160401b03808211156133b157600080fd5b6130b688838901612cc7565b6000602082840312156133cf57600080fd5b81516107e981612e55565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715613418576134186133da565b604052919050565b60006001600160401b03821115613439576134396133da565b5060051b60200190565b60006001600160401b0382111561345c5761345c6133da565b50601f01601f191660200190565b600061347d61347884613420565b6133f0565b80848252602080830192508560051b85013681111561349b57600080fd5b855b818110156135125780356001600160401b038111156134bc5760008081fd5b870136601f8201126134ce5760008081fd5b80356134dc61347882613443565b81815236868385010111156134f15760008081fd5b8186840187830137600091810186019190915286525093820193820161349d565b50919695505050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60408152600061355b60408301858761351e565b9050826020830152949350505050565b600082601f83011261357c57600080fd5b815161358a61347882613443565b81815284602083860101111561359f57600080fd5b6114e8826020830160208701612d56565b6000602082840312156135c257600080fd5b81516001600160401b038111156135d857600080fd5b6114e88482850161356b565b60008383855260208086019550808560051b8301018460005b87811015612df157848303601f19018952813536889003601e1901811261362357600080fd5b870184810190356001600160401b0381111561363e57600080fd5b80360382131561364d57600080fd5b61365885828461351e565b9a86019a94505050908301906001016135fd565b6020815260006107e66020830184866135e4565b60006020828403121561369257600080fd5b5051919050565b6000602082840312156136ab57600080fd5b815180151581146107e957600080fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e198436030181126136e857600080fd5b8301803591506001600160401b0382111561370257600080fd5b602001915036819003821315610f9057600080fd5b8183823760009101908152919050565b6000808335601e1984360301811261373e57600080fd5b8301803591506001600160401b0382111561375857600080fd5b6020019150600581901b3603821315610f9057600080fd5b600181811c9082168061378457607f821691505b6020821081036137a457634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115610bf057600081815260208120601f850160051c810160208610156137d15750805b601f850160051c820191505b818110156137f0578281556001016137dd565b505050505050565b6001600160401b0383111561380f5761380f6133da565b6138238361381d8354613770565b836137aa565b6000601f841160018114613857576000851561383f5750838201355b600019600387901b1c1916600186901b178355610e4a565b600083815260209020601f19861690835b828110156138885786850135825560209485019460019092019101613868565b50868210156138a55760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b634e487b7160e01b600052601160045260246000fd5b6000600182016138df576138df6138b7565b5060010190565b6020815260006107e660208301848661351e565b6000806040838503121561390d57600080fd5b82516001600160401b038082111561392457600080fd5b6139308683870161356b565b9350602085015191508082111561394657600080fd5b506139538582860161356b565b9150509250929050565b80820180821115610632576106326138b7565b60008a51613982818460208f01612d56565b8a5190830190613996818360208f01612d56565b8a519101906139a9818360208e01612d56565b0187898237600090880190815286516139c6818360208b01612d56565b0184868237600090850190815283516139e3818360208801612d56565b019b9a5050505050505050505050565b60008251613a05818460208701612d56565b9190910192915050565b60008751613a21818460208c01612d56565b875190830190613a35818360208c01612d56565b8751910190613a48818360208b01612d56565b018486823760009085019081528351613a65818360208801612d56565b0198975050505050505050565b60008451613a84818460208901612d56565b845190830190613a98818360208901612d56565b8451910190613aab818360208801612d56565b0195945050505050565b6040808252810183905260006001600160fb1b03841115613ad557600080fd5b8360051b808660608501376020830193909352500160600192915050565b600082601f830112613b0457600080fd5b81516020613b1461347883613420565b82815260059290921b84018101918181019086841115613b3357600080fd5b8286015b84811015611d7e5780516001600160401b03811115613b565760008081fd5b613b648986838b010161356b565b845250918301918301613b37565b60008060408385031215613b8557600080fd5b82516001600160401b0380821115613b9c57600080fd5b613ba886838701613af3565b93506020850151915080821115613bbe57600080fd5b5061395385828601613af3565b604081526000613bde6040830185612da6565b90508260208301529392505050565b600060208284031215613bff57600080fd5b81516001600160401b03811115613c1557600080fd5b6114e884828501613af3565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60408152600061355b6040830185876135e456fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a","storage":{}},"0xc2110388dd54228ae0a834119457ede938bf0b57":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061021e5760003560e01c80638da5cb5b11610123578063acf1a841116100ab578063d547741f1161006f578063d547741f14610682578063f14fcbc8146106a2578063f23a6e61146106c2578063f2fde38b146106e2578063ffa1ad741461070257600080fd5b8063acf1a841146105e0578063bc197c8114610600578063c0c53b8b14610620578063cf01585314610640578063d53913931461066057600080fd5b8063a0e3aef1116100f2578063a0e3aef114610534578063a217fddf14610554578063a3f4df7e14610569578063a4247400146105a0578063aa271e1a146105c057600080fd5b80638da5cb5b146104c157806391d14854146104df578063983b2d56146104ff578063986502751461051f57600080fd5b80635fc1964f116101a65780636ccbae5f116101755780636ccbae5f14610439578063715018a61461045957806371e2a6571461046e57806381c81d351461048e57806383e7f6ff146104a157600080fd5b80635fc1964f146103ae578063634486da146103ce5780636352211e146103e15780636a8be89e1461041957600080fd5b80632f2ff15d116101ed5780632f2ff15d146103035780633092afd51461032557806336568abe14610345578063423f6cef14610365578063572b6c051461038557600080fd5b806301ffc9a71461022a578063150b7a021461025f5780631bf7e13e14610298578063248a9ca3146102c557600080fd5b3661022557005b600080fd5b34801561023657600080fd5b5061024a6102453660046125f2565b610733565b60405190151581526020015b60405180910390f35b34801561026b57600080fd5b5061027f61027a366004612672565b610779565b6040516001600160e01b03199091168152602001610256565b3480156102a457600080fd5b506102b86102b33660046126e4565b6108cb565b60405161025691906127a4565b3480156102d157600080fd5b506102f56102e03660046127b7565b600090815260fb602052604090206001015490565b604051908152602001610256565b34801561030f57600080fd5b5061032361031e3660046127d0565b610997565b005b34801561033157600080fd5b50610323610340366004612800565b6109c1565b34801561035157600080fd5b506103236103603660046127d0565b6109d5565b34801561037157600080fd5b5061032361038036600461281d565b610a68565b34801561039157600080fd5b5061024a6103a0366004612800565b6001600160a01b0316301490565b3480156103ba57600080fd5b506103236103c936600461288f565b610bd9565b6103236103dc366004612800565b610c21565b3480156103ed57600080fd5b506104016103fc3660046127b7565b610ce4565b6040516001600160a01b039091168152602001610256565b34801561042557600080fd5b50610323610434366004612800565b610cef565b34801561044557600080fd5b506102f56104543660046127b7565b610d38565b34801561046557600080fd5b50610323610d7e565b34801561047a57600080fd5b5061032361048936600461288f565b610d92565b61032361049c366004612800565b610dda565b3480156104ad57600080fd5b506102f56104bc366004612934565b610e57565b3480156104cd57600080fd5b506097546001600160a01b0316610401565b3480156104eb57600080fd5b5061024a6104fa3660046127d0565b610efa565b34801561050b57600080fd5b5061032361051a366004612800565b610f25565b34801561052b57600080fd5b50610323610f36565b34801561054057600080fd5b506102f561054f366004612a5c565b610f50565b34801561056057600080fd5b506102f5600081565b34801561057557600080fd5b506102b86040518060400160405280600b81526020016a454e5320437573746f647960a81b81525081565b3480156105ac57600080fd5b5061024a6105bb3660046126e4565b610ffc565b3480156105cc57600080fd5b5061024a6105db366004612800565b61104f565b3480156105ec57600080fd5b506103236105fb366004612934565b611069565b34801561060c57600080fd5b5061027f61061b366004612b35565b611222565b34801561062c57600080fd5b5061032361063b366004612bf3565b6112db565b34801561064c57600080fd5b5061032361065b366004612c3e565b611485565b34801561066c57600080fd5b506102f56000805160206133f583398151915281565b34801561068e57600080fd5b5061032361069d3660046127d0565b611592565b3480156106ae57600080fd5b506103236106bd3660046127b7565b6115b7565b3480156106ce57600080fd5b5061027f6106dd366004612d20565b61162b565b3480156106ee57600080fd5b506103236106fd366004612800565b6116bc565b34801561070e57600080fd5b506102b860405180604001604052806005815260200164302e312e3360d81b81525081565b60006001600160e01b03198216630a85bd0160e11b148061076457506001600160e01b03198216630271189760e51b145b806107735750610773826116d8565b92915050565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004546000906001600160a01b0316806107b061170d565b6001600160a01b0316036108a957600080806107ce86880188612d9b565b9250925092506107dd8361171c565b6001600160a01b03841663b88d4fde30600080516020613415833981519152546040516001600160a01b03909116908c9061082390879030906000908b90602001612dfc565b6040516020818303038152906040526040518563ffffffff1660e01b81526004016108519493929190612e3c565b600060405180830381600087803b15801561086b57600080fd5b505af115801561087f573d6000803e3d6000fd5b5050505061089561088f8261174e565b846117d3565b50630a85bd0160e11b93506108c292505050565b6040516344e7d94960e01b815260040160405180910390fd5b95945050505050565b606060005a90506108dd858585610ffc565b6108fa57604051638baa579f60e01b815260040160405180910390fd5b61098c61090a6020870187612800565b3060408801358461091e60608b018b612e6f565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061185e92505050565b9150505b9392505050565b600082815260fb60205260409020600101546109b28161193f565b6109bc8383611950565b505050565b6109c96119d7565b6109d281611a50565b50565b6109dd61170d565b6001600160a01b0316816001600160a01b031614610a5a5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b610a648282611a68565b5050565b80610a7161170d565b6001600160a01b0316610a8382611aed565b6001600160a01b031614610ac55780610a9a61170d565b604051637ea58b1160e01b815260048101929092526001600160a01b03166024820152604401610a51565b610ace82611c03565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052600090610b22906060015b6040516020818303038152906040528051906020012090565b80546001600160a01b0319166001600160a01b0392909216919091179055600060008051602061341583398151915254604051637921219560e11b81523060048201526001600160a01b038681166024830152604482018690526001606483015260a06084830152600060a48301529091169150819063f242432a9060c401600060405180830381600087803b158015610bbb57600080fd5b505af1158015610bcf573d6000803e3d6000fd5b5050505050505050565b610be16119d7565b60005b8151811015610a6457610c0f828281518110610c0257610c02612eb5565b6020026020010151611a50565b80610c1981612ee1565b915050610be4565b610c2c6105db61170d565b610c485760405162461bcd60e51b8152600401610a5190612efa565b6001600160a01b038116610c9e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a51565b610ca781611c1c565b610caf610f36565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610a64573d6000803e3d6000fd5b600061077382611aed565b610cf76119d7565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c500480546001600160a01b0319166001600160a01b0392909216919091179055565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a838156020820152908101829052600090610d7790606001610b09565b5492915050565b610d866119d7565b610d906000611c34565b565b610d9a6119d7565b60005b8151811015610a6457610dc8828281518110610dbb57610dbb612eb5565b6020026020010151611c1c565b80610dd281612ee1565b915050610d9d565b610de56105db61170d565b610e015760405162461bcd60e51b8152600401610a5190612efa565b6001600160a01b038116610ca75760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a51565b6000805160206133d5833981519152546040516383e7f6ff60e01b81526000916001600160a01b031690829082906383e7f6ff90610e9d90899089908990600401612f58565b6040805180830381865afa158015610eb9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610edd9190612f7c565b60208101518151919250610ef091612fca565b9695505050505050565b600091825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610f2d6119d7565b6109d281611c1c565b610d906000805160206133f583398151915261036061170d565b6000805160206133d5833981519152546000906001600160a01b0316806365a69dcf8d85610f7e5730610f80565b8d5b8d8d8d8d8d8d8d6040518a63ffffffff1660e01b8152600401610fab9998979695949392919061306e565b602060405180830381865afa158015610fc8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fec91906130de565b9c9b505050505050505050505050565b600061104761100a856130f7565b3085858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611c8692505050565b949350505050565b60006107736000805160206133f583398151915283610efa565b6110746105db61170d565b6110905760405162461bcd60e51b8152600401610a5190612efa565b6002603354036110e25760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a51565b60026033556000805160206133d5833981519152546040516383e7f6ff60e01b81526001600160a01b039091169060009082906383e7f6ff9061112d90889088908890600401612f58565b6040805180830381865afa158015611149573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061116d9190612f7c565b6020810151815191925061118091612fca565b4710156111a05760405163050205f960e01b815260040160405180910390fd5b816001600160a01b031663acf1a841826020015183600001516111c39190612fca565b8787876040518563ffffffff1660e01b81526004016111e493929190612f58565b6000604051808303818588803b1580156111fd57600080fd5b505af1158015611211573d6000803e3d6000fd5b505060016033555050505050505050565b6000600080516020613415833981519152546001600160a01b031661124561170d565b6001600160a01b03161461126c576040516344e7d94960e01b815260040160405180910390fd5b600061127a83850185612800565b90506112858161171c565b60005b878110156112c4576112b28989838181106112a5576112a5612eb5565b90506020020135836117d3565b806112bc81612ee1565b915050611288565b5063bc197c8160e01b9a9950505050505050505050565b600054610100900460ff16158080156112fb5750600054600160ff909116105b806113155750303b158015611315575060005460ff166001145b6113785760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610a51565b6000805460ff19166001179055801561139b576000805461ff0019166101001790555b6000805160206133d583398151915280546001600160a01b038087166001600160a01b03199283161790925560008051602061341583398151915280548684169083161790557ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004805492851692909116919091179055611419611dc5565b611421611df3565b611429611df3565b611431611e1a565b611439611e51565b801561147f576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6114906105db61170d565b6114ac5760405162461bcd60e51b8152600401610a5190612efa565b6002603354036114fe5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a51565b600260338190555060006115478c8c8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061174e92505050565b905061155281611c03565b6115708c8c846115625730611564565b8c5b8c8c8c8c8c8c8c611e8a565b8161157f5761157f818b6117d3565b5050600160335550505050505050505050565b600082815260fb60205260409020600101546115ad8161193f565b6109bc8383611a68565b60006000805160206133d583398151915254604051631e29f97960e31b8152600481018490526001600160a01b039091169150819063f14fcbc890602401600060405180830381600087803b15801561160f57600080fd5b505af1158015611623573d6000803e3d6000fd5b505050505050565b6000600080516020613415833981519152546001600160a01b031661164e61170d565b6001600160a01b031614611675576040516344e7d94960e01b815260040160405180910390fd5b6001600160a01b038616156116a957600061169283850185612800565b905061169d8161171c565b6116a786826117d3565b505b5063f23a6e6160e01b9695505050505050565b6116c46119d7565b6116cd81611fd5565b6109d260008261204b565b60006001600160e01b03198216637965db0b60e01b148061077357506301ffc9a760e01b6001600160e01b0319831614610773565b6000611717612055565b905090565b6001600160a01b0381166109d25760405163b20f76e360e01b81526001600160a01b0382166004820152602401610a51565b60007f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae60001b826040516020016117859190613195565b604051602081830303815290604052805190602001206040516020016117b5929190918252602082015260400190565b60408051601f19818403018152919052805160209091012092915050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052819061181190606001610b09565b80546001600160a01b0319166001600160a01b039283161790556040519082169083907f45aa97e368889fb3527c1db60c59c2ae91e82f21778613449e46d4208c1c4b1290600090a35050565b606061186985612073565b600080876001600160a01b0316866118838b8a89896120d9565b6040516118909190613195565b60006040518083038160008787f1925050503d80600081146118ce576040519150601f19603f3d011682016040523d82523d6000602084013e6118d3565b606091505b5090925090506118e4603f876131b1565b5a116118f2576118f26131d3565b61193282826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c4544000000000000815250612109565b9998505050505050505050565b6109d28161194b61170d565b612142565b61195a8282610efa565b610a6457600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff1916600117905561199361170d565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6119df61170d565b6001600160a01b03166119fa6097546001600160a01b031690565b6001600160a01b031614610d905760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a51565b6109d26000805160206133f583398151915282611592565b611a728282610efa565b15610a6457600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff19169055611aa961170d565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101829052600090611b2c90606001610b09565b546001600160a01b0316905080611b595760405163124bad6360e31b815260048101839052602401610a51565b30600080516020613415833981519152546040516331a9108f60e11b8152600481018590526001600160a01b0390911690636352211e90602401602060405180830381865afa158015611bb0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bd491906131e9565b6001600160a01b031614611bfe576040516303b673fd60e21b815260048101839052602401610a51565b919050565b303303611c13576109d2816121a6565b6109d281612073565b6109d26000805160206133f58339815191528261204b565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015611ccd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cf191906130de565b90506000611d9f866060015180519060200120868860200151604051602001611d3f9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b9050818660200151148015610ef057508551610ef0906001600160a01b031682866121d0565b600054610100900460ff16611dec5760405162461bcd60e51b8152600401610a5190613206565b6001603355565b600054610100900460ff16610d905760405162461bcd60e51b8152600401610a5190613206565b600054610100900460ff16611e415760405162461bcd60e51b8152600401610a5190613206565b610d90611e4c61170d565b611c34565b600054610100900460ff16611e785760405162461bcd60e51b8152600401610a5190613206565b610d906000611e8561170d565b61204b565b6000805160206133d5833981519152546040516383e7f6ff60e01b81526001600160a01b039091169060009082906383e7f6ff90611ed0908f908f908e90600401612f58565b6040805180830381865afa158015611eec573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f109190612f7c565b60208101518151919250611f2391612fca565b471015611f435760405163050205f960e01b815260040160405180910390fd5b816001600160a01b03166374694a2b82602001518360000151611f669190612fca565b8e8e8e8e8e8e8e8e8e8e6040518c63ffffffff1660e01b8152600401611f959a99989796959493929190613251565b6000604051808303818588803b158015611fae57600080fd5b505af1158015611fc2573d6000803e3d6000fd5b5050505050505050505050505050505050565b611fdd6119d7565b6001600160a01b0381166120425760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610a51565b6109d281611c34565b610a648282611950565b600030330361206b575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290526000906060016040516020818303038152906040528051906020012090506120c88190565b546120d4906001612fca565b905550565b60608285856040516020016120f0939291906132c3565b6040516020818303038152906040529050949350505050565b60608315612118575081610990565b8251156121285782518084602001fd5b8160405162461bcd60e51b8152600401610a5191906127a4565b61214c8282610efa565b610a6457612164816001600160a01b03166014612312565b61216f836020612312565b604051602001612180929190613302565b60408051601f198184030181529082905262461bcd60e51b8252610a51916004016127a4565b6121ae6124ad565b81146109d257604051635637b6af60e11b815260048101829052602401610a51565b60008060006121df85856124c0565b909250905060008160048111156121f8576121f8613377565b1480156122165750856001600160a01b0316826001600160a01b0316145b1561222657600192505050610990565b600080876001600160a01b0316631626ba7e60e01b888860405160240161224e92919061338d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161228c9190613195565b600060405180830381855afa9150503d80600081146122c7576040519150601f19603f3d011682016040523d82523d6000602084013e6122cc565b606091505b50915091508180156122df575080516020145b801561230657508051630b135d3f60e11b9061230490830160209081019084016130de565b145b98975050505050505050565b606060006123218360026133a6565b61232c906002612fca565b6001600160401b0381111561234357612343612849565b6040519080825280601f01601f19166020018201604052801561236d576020820181803683370190505b509050600360fc1b8160008151811061238857612388612eb5565b60200101906001600160f81b031916908160001a905350600f60fb1b816001815181106123b7576123b7612eb5565b60200101906001600160f81b031916908160001a90535060006123db8460026133a6565b6123e6906001612fca565b90505b600181111561245e576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061241a5761241a612eb5565b1a60f81b82828151811061243057612430612eb5565b60200101906001600160f81b031916908160001a90535060049490941c93612457816133bd565b90506123e9565b5083156109905760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610a51565b60003033036120705750601f1936013590565b60008082516041036124f65760208301516040840151606085015160001a6124ea87828585612505565b945094505050506124fe565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561253c57506000905060036125e9565b8460ff16601b1415801561255457508460ff16601c14155b1561256557506000905060046125e9565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156125b9573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166125e2576000600192509250506125e9565b9150600090505b94509492505050565b60006020828403121561260457600080fd5b81356001600160e01b03198116811461099057600080fd5b6001600160a01b03811681146109d257600080fd5b60008083601f84011261264357600080fd5b5081356001600160401b0381111561265a57600080fd5b6020830191508360208285010111156124fe57600080fd5b60008060008060006080868803121561268a57600080fd5b85356126958161261c565b945060208601356126a58161261c565b93506040860135925060608601356001600160401b038111156126c757600080fd5b6126d388828901612631565b969995985093965092949392505050565b6000806000604084860312156126f957600080fd5b83356001600160401b038082111561271057600080fd5b908501906080828803121561272457600080fd5b9093506020850135908082111561273a57600080fd5b5061274786828701612631565b9497909650939450505050565b60005b8381101561276f578181015183820152602001612757565b50506000910152565b60008151808452612790816020860160208601612754565b601f01601f19169290920160200192915050565b6020815260006109906020830184612778565b6000602082840312156127c957600080fd5b5035919050565b600080604083850312156127e357600080fd5b8235915060208301356127f58161261c565b809150509250929050565b60006020828403121561281257600080fd5b81356109908161261c565b6000806040838503121561283057600080fd5b823561283b8161261c565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561288757612887612849565b604052919050565b600060208083850312156128a257600080fd5b82356001600160401b03808211156128b957600080fd5b818501915085601f8301126128cd57600080fd5b8135818111156128df576128df612849565b8060051b91506128f084830161285f565b818152918301840191848101908884111561290a57600080fd5b938501935b8385101561230657843592506129248361261c565b828252938501939085019061290f565b60008060006040848603121561294957600080fd5b83356001600160401b0381111561295f57600080fd5b61296b86828701612631565b909790965060209590950135949350505050565b60006001600160401b0383111561299857612998612849565b6129ab601f8401601f191660200161285f565b90508281528383830111156129bf57600080fd5b828260208301376000602084830101529392505050565b600082601f8301126129e757600080fd5b6109908383356020850161297f565b60008083601f840112612a0857600080fd5b5081356001600160401b03811115612a1f57600080fd5b6020830191508360208260051b85010111156124fe57600080fd5b80358015158114611bfe57600080fd5b803561ffff81168114611bfe57600080fd5b6000806000806000806000806000806101208b8d031215612a7c57600080fd5b8a356001600160401b0380821115612a9357600080fd5b612a9f8e838f016129d6565b9b5060208d01359150612ab18261261c565b90995060408c0135985060608c0135975060808c013590612ad18261261c565b90965060a08c01359080821115612ae757600080fd5b50612af48d828e016129f6565b9096509450612b07905060c08c01612a3a565b9250612b1560e08c01612a4a565b9150612b246101008c01612a3a565b90509295989b9194979a5092959850565b60008060008060008060008060a0898b031215612b5157600080fd5b8835612b5c8161261c565b97506020890135612b6c8161261c565b965060408901356001600160401b0380821115612b8857600080fd5b612b948c838d016129f6565b909850965060608b0135915080821115612bad57600080fd5b612bb98c838d016129f6565b909650945060808b0135915080821115612bd257600080fd5b50612bdf8b828c01612631565b999c989b5096995094979396929594505050565b600080600060608486031215612c0857600080fd5b8335612c138161261c565b92506020840135612c238161261c565b91506040840135612c338161261c565b809150509250925092565b60008060008060008060008060008060006101208c8e031215612c6057600080fd5b6001600160401b03808d351115612c7657600080fd5b612c838e8e358f01612631565b909c509a50612c9560208e013561261c565b60208d0135995060408d0135985060608d01359750612cb760808e013561261c565b60808d013596508060a08e01351115612ccf57600080fd5b50612ce08d60a08e01358e016129f6565b9095509350612cf160c08d01612a3a565b9250612cff60e08d01612a4a565b9150612d0e6101008d01612a3a565b90509295989b509295989b9093969950565b60008060008060008060a08789031215612d3957600080fd5b8635612d448161261c565b95506020870135612d548161261c565b9450604087013593506060870135925060808701356001600160401b03811115612d7d57600080fd5b612d8989828a01612631565b979a9699509497509295939492505050565b600080600060608486031215612db057600080fd5b8335612dbb8161261c565b92506020840135612dcb8161261c565b915060408401356001600160401b03811115612de657600080fd5b612df2868287016129d6565b9150509250925092565b608081526000612e0f6080830187612778565b6001600160a01b03958616602084015261ffff949094166040830152509216606090920191909152919050565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090610ef090830184612778565b6000808335601e19843603018112612e8657600080fd5b8301803591506001600160401b03821115612ea057600080fd5b6020019150368190038213156124fe57600080fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201612ef357612ef3612ecb565b5060010190565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b604081526000612f6c604083018587612f2f565b9050826020830152949350505050565b600060408284031215612f8e57600080fd5b604051604081018181106001600160401b0382111715612fb057612fb0612849565b604052825181526020928301519281019290925250919050565b8082018082111561077357610773612ecb565b81835260006020808501808196508560051b810191508460005b878110156130615782840389528135601e1988360301811261301857600080fd5b870185810190356001600160401b0381111561303357600080fd5b80360382131561304257600080fd5b61304d868284612f2f565b9a87019a9550505090840190600101612ff7565b5091979650505050505050565b60006101008083526130828184018d612778565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a085015290506130bc818789612fdd565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b6000602082840312156130f057600080fd5b5051919050565b60006080823603121561310957600080fd5b604051608081016001600160401b03828210818311171561312c5761312c612849565b816040528435915061313d8261261c565b8183526020850135602084015260408501356040840152606085013591508082111561316857600080fd5b50830136601f82011261317a57600080fd5b6131893682356020840161297f565b60608301525092915050565b600082516131a7818460208701612754565b9190910192915050565b6000826131ce57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b6000602082840312156131fb57600080fd5b81516109908161261c565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60006101008083526132668184018d8f612f2f565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a085015290506132a0818789612fdd565b94151560c0840152505061ffff9190911660e09091015298975050505050505050565b600084516132d5818460208901612754565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081526000835161333a816017850160208801612754565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835161336b816028840160208801612754565b01602801949350505050565b634e487b7160e01b600052602160045260246000fd5b8281526040602082015260006110476040830184612778565b808202811582820484141761077357610773612ecb565b6000816133cc576133cc612ecb565b50600019019056fe412386de53449251cbf7ce1f4c6a038bf9c0746e62d331b08ef0c3fa7d0ab6729f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a660793a5062d506d35cc8f1beda67ee5028c16bfcd9c923d5bfc439c04bd929b1a164736f6c6343000811000a","storage":{"0x0":"0xff"}},"0xc58206842e4030a3b2cabc78780ae7635173c533":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106102325760003560e01c80637c69eae211610130578063b5466669116100b8578063d284d97a1161007c578063d284d97a14610d4e578063d8d3cc6e14610dbc578063e67ca8a314610e3f578063e985e9c514610e5c578063ebf0c71714610e8a57610232565b8063b5466669146109ce578063b88d4fde14610a51578063c29b52f914610b15578063c87b56dd14610c5e578063ce9fb82b14610c7b57610232565b8063a22cb465116100ff578063a22cb4651461090b578063a7fc7a0714610939578063ab3b87fe1461095f578063b3f9e4cb1461098b578063b429afeb146109a857610232565b80637c69eae21461076457806395d89b41146107e75780639d743989146107ef5780639e5be9a51461087d57610232565b806342842e0e116101be5780635cbe1112116101825780635cbe11121461061d5780636352211e1461069257806366ac3b68146106af57806368b62d32146106b757806370a082311461073e57610232565b806342842e0e146104ed57806342966c6814610523578063430c208114610540578063538361a71461056c57806357aac5741461058f57610232565b8063081812fc11610205578063081812fc146103fa578063095ea7b3146104335780632392c1891461045f57806323b872dd1461048b5780632525d06a146104c157610232565b806301ffc9a71461023757806302759c37146102725780630467e014146102aa57806306fdde031461037d575b600080fd5b61025e6004803603602081101561024d57600080fd5b50356001600160e01b031916610e92565b604080519115158252519081900360200190f35b6102a86004803603606081101561028857600080fd5b506001600160a01b03813581169160208101359091169060400135610eb1565b005b6102a8600480360360808110156102c057600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156102ef57600080fd5b82018360208201111561030157600080fd5b803590602001918460018302840111600160201b8311171561032257600080fd5b919390929091602081019035600160201b81111561033f57600080fd5b82018360208201111561035157600080fd5b803590602001918460018302840111600160201b8311171561037257600080fd5b509092509050610ed3565b610385610f62565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103bf5781810151838201526020016103a7565b50505050905090810190601f1680156103ec5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6104176004803603602081101561041057600080fd5b5035610f84565b604080516001600160a01b039092168252519081900360200190f35b6102a86004803603604081101561044957600080fd5b506001600160a01b038135169060200135610fe6565b6102a86004803603604081101561047557600080fd5b506001600160a01b0381351690602001356110f7565b6102a8600480360360608110156104a157600080fd5b506001600160a01b03813581169160208101359091169060400135611115565b6102a8600480360360408110156104d757600080fd5b506001600160a01b03813516906020013561115a565b6102a86004803603606081101561050357600080fd5b506001600160a01b0381358116916020810135909116906040013561117a565b6102a86004803603602081101561053957600080fd5b5035611195565b61025e6004803603604081101561055657600080fd5b506001600160a01b0381351690602001356111e6565b6102a86004803603604081101561058257600080fd5b50803590602001356111f9565b6102a8600480360360808110156105a557600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156105df57600080fd5b8201836020820111156105f157600080fd5b803590602001918460018302840111600160201b8311171561061257600080fd5b50909250905061124f565b6102a86004803603604081101561063357600080fd5b81359190810190604081016020820135600160201b81111561065457600080fd5b82018360208201111561066657600080fd5b803590602001918460018302840111600160201b8311171561068757600080fd5b5090925090506112be565b610417600480360360208110156106a857600080fd5b5035611320565b6102a861137a565b61072c600480360360408110156106cd57600080fd5b81359190810190604081016020820135600160201b8111156106ee57600080fd5b82018360208201111561070057600080fd5b803590602001918460018302840111600160201b8311171561072157600080fd5b509092509050611385565b60408051918252519081900360200190f35b61072c6004803603602081101561075457600080fd5b50356001600160a01b03166113cf565b6102a86004803603606081101561077a57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156107a957600080fd5b8201836020820111156107bb57600080fd5b803590602001918460018302840111600160201b831117156107dc57600080fd5b509092509050611437565b61038561149a565b6102a86004803603608081101561080557600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561083f57600080fd5b82018360208201111561085157600080fd5b803590602001918460018302840111600160201b8311171561087257600080fd5b5090925090506114b6565b6102a86004803603608081101561089357600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156108cd57600080fd5b8201836020820111156108df57600080fd5b803590602001918460018302840111600160201b8311171561090057600080fd5b509092509050611506565b6102a86004803603604081101561092157600080fd5b506001600160a01b0381351690602001351515611564565b6102a86004803603602081101561094f57600080fd5b50356001600160a01b0316611630565b6102a86004803603604081101561097557600080fd5b506001600160a01b03813516906020013561164b565b610417600480360360208110156109a157600080fd5b5035611672565b61025e600480360360208110156109be57600080fd5b50356001600160a01b0316611694565b6102a8600480360360608110156109e457600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610a1357600080fd5b820183602082011115610a2557600080fd5b803590602001918460018302840111600160201b83111715610a4657600080fd5b5090925090506116a7565b6102a860048036036080811015610a6757600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b811115610aa157600080fd5b820183602082011115610ab357600080fd5b803590602001918460018302840111600160201b83111715610ad457600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506116fa945050505050565b6102a8600480360360a0811015610b2b57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b811115610b6557600080fd5b820183602082011115610b7757600080fd5b803590602001918460018302840111600160201b83111715610b9857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b811115610bea57600080fd5b820183602082011115610bfc57600080fd5b803590602001918460018302840111600160201b83111715610c1d57600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061174c945050505050565b61038560048036036020811015610c7457600080fd5b5035611797565b6102a860048036036080811015610c9157600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610cc057600080fd5b820183602082011115610cd257600080fd5b803590602001918460018302840111600160201b83111715610cf357600080fd5b919390929091602081019035600160201b811115610d1057600080fd5b820183602082011115610d2257600080fd5b803590602001918460018302840111600160201b83111715610d4357600080fd5b509092509050611892565b6102a860048036036020811015610d6457600080fd5b810190602081018135600160201b811115610d7e57600080fd5b820183602082011115610d9057600080fd5b803590602001918460018302840111600160201b83111715610db157600080fd5b50909250905061191b565b6102a860048036036060811015610dd257600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610e0157600080fd5b820183602082011115610e1357600080fd5b803590602001918460018302840111600160201b83111715610e3457600080fd5b50909250905061199e565b6102a860048036036020811015610e5557600080fd5b50356119f3565b61025e60048036036040811015610e7257600080fd5b506001600160a01b0381358116916020013516611a05565b61072c611a33565b6001600160e01b03191660009081526020819052604090205460ff1690565b610eba33611694565b610ec357600080fd5b610ece838383611a57565b505050565b610edc33611694565b610ee557600080fd5b610f5a868686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8a018190048102820181019092528881529250889150879081908401838280828437600092019190915250611a9f92505050565b505050505050565b6040805180820190915260078152662e63727970746f60c81b60208201525b90565b6000610f8f82611ac9565b610fca5760405162461bcd60e51b815260040180806020018281038252602c815260200180612848602c913960400191505060405180910390fd5b506000908152600360205260409020546001600160a01b031690565b6000610ff182611320565b9050806001600160a01b0316836001600160a01b031614156110445760405162461bcd60e51b81526004018080602001828103825260218152602001806128bf6021913960400191505060405180910390fd5b336001600160a01b038216148061106057506110608133611a05565b61109b5760405162461bcd60e51b815260040180806020018281038252603881526020018061279c6038913960400191505060405180910390fd5b60008281526003602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b806111023382611ae6565b61110b57600080fd5b610ece8383611b82565b61111f3382611ae6565b610ec35760405162461bcd60e51b81526004018080602001828103825260318152602001806128e06031913960400191505060405180910390fd5b61116333611694565b61116c57600080fd5b6111768282611b82565b5050565b610ece838383604051806020016040528060008152506116fa565b61119f3382611ae6565b6111da5760405162461bcd60e51b81526004018080602001828103825260308152602001806129366030913960400191505060405180910390fd5b6111e381611bf8565b50565b60006111f28383611ae6565b9392505050565b6000828152600860205260409020546001600160a01b0316331461121c57600080fd5b6040518290829033907ff10fc780c78f994a214c79a2ae8d8b7bfe7cc3f0f935a8f05a29525e71d7f12790600090a45050565b61125833611694565b61126157600080fd5b61126c858585611a57565b6112ae85858585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611c7992505050565b6112b757600080fd5b5050505050565b826112c93382611ae6565b6112d257600080fd5b61131a6113158585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b611bf8565b50505050565b6000818152600260205260408120546001600160a01b0316806113745760405162461bcd60e51b81526004018080602001828103825260298152602001806127fe6029913960400191505060405180910390fd5b92915050565b61138333611e64565b565b60006113c78484848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b949350505050565b60006001600160a01b0382166114165760405162461bcd60e51b815260040180806020018281038252602a8152602001806127d4602a913960400191505060405180910390fd5b6001600160a01b038216600090815260046020526040902061137490611e75565b826114423382611ae6565b61144b57600080fd5b6112b7858585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250611a9f915050565b604080518082019091526002815261155160f21b602082015290565b6112b785858585858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201829052506040805160208101909152908152925061174c915050565b826115113382611ae6565b61151a57600080fd5b610f5a868661155f8787878080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b611a57565b6001600160a01b0382163314156115c2576040805162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604482015290519081900360640190fd5b3360008181526005602090815260408083206001600160a01b03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b61163933611694565b61164257600080fd5b6111e381611e79565b806116563382611ae6565b61165f57600080fd5b610ece61166b83611320565b8484611e8a565b6000818152600860205260408120546001600160a01b03168061137457600080fd5b600061137460018363ffffffff611fce16565b6116b033611694565b6116b957600080fd5b61131a848484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061203592505050565b611705848484611115565b61171184848484611c79565b61131a5760405162461bcd60e51b815260040180806020018281038252603281526020018061271a6032913960400191505060405180910390fd5b826117573382611ae6565b61176057600080fd5b600061176c8585611dac565b9050611779878783611a57565b61178587878386611c79565b61178e57600080fd5b50505050505050565b60606117a282611ac9565b6117ab57600080fd5b600760066000848152602001908152602001600020604051602001808380546001816001161561010002031660029004801561181e5780601f106117fc57610100808354040283529182019161181e565b820191906000526020600020905b81548152906001019060200180831161180a575b5050828054600181600116156101000203166002900480156118775780601f10611855576101008083540402835291820191611877565b820191906000526020600020905b815481529060010190602001808311611863575b505060408051601f1981840301815291905295945050505050565b8461189d3382611ae6565b6118a657600080fd5b61178e878787878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b018190048102820181019092528981529250899150889081908401838280828437600092019190915250611a9f92505050565b61192433611694565b61192d57600080fd5b611939600783836125cf565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b828260405180806020018281038252848482818152602001925080828437600083820152604051601f909101601f19169092018290039550909350505050a15050565b826119a93382611ae6565b6119b257600080fd5b6112b7858585858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061203592505050565b6119fc33611694565b6111da57600080fd5b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b7f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f90565b611a62838383611e8a565b6000818152600860205260409020546001600160a01b031615610ece57600090815260086020526040902080546001600160a01b03191690555050565b611aaa848484612035565b611ac0600085611aba8686611dac565b84611c79565b61131a57600080fd5b6000908152600260205260409020546001600160a01b0316151590565b6000611af182611ac9565b611b2c5760405162461bcd60e51b815260040180806020018281038252602c815260200180612770602c913960400191505060405180910390fd5b6000611b3783611320565b9050806001600160a01b0316846001600160a01b03161480611b725750836001600160a01b0316611b6784610f84565b6001600160a01b0316145b806113c757506113c78185611a05565b611b8b81611ac9565b611b9457600080fd5b6040516001600160a01b0383169082907fb1b34e6d89e1c584527d447f4b29ffad55635a37edeeb564939a6483401b31a590600090a3600090815260086020526040902080546001600160a01b0319166001600160a01b0392909216919091179055565b611c018161220f565b6000818152600860205260409020546001600160a01b031615611c3b57600081815260086020526040902080546001600160a01b03191690555b60008181526006602052604090205460026000196101006001841615020190911604156111e35760008181526006602052604081206111e39161264d565b6000611c8d846001600160a01b0316612221565b611c99575060016113c7565b604051630a85bd0160e11b815233600482018181526001600160a01b03888116602485015260448401879052608060648501908152865160848601528651600095928a169463150b7a029490938c938b938b939260a4019060208501908083838e5b83811015611d13578181015183820152602001611cfb565b50505050905090810190601f168015611d405780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015611d6257600080fd5b505af1158015611d76573d6000803e3d6000fd5b505050506040513d6020811015611d8c57600080fd5b50516001600160e01b031916630a85bd0160e11b14915050949350505050565b6000815160001415611dbd57600080fd5b82826040516020018082805190602001908083835b60208310611df15780518252601f199092019160209182019101611dd2565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040528051906020012060405160200180838152602001828152602001925050506040516020818303038152906040528051906020012060001c905092915050565b6111e360018263ffffffff61222716565b5490565b6111e360018263ffffffff61228e16565b826001600160a01b0316611e9d82611320565b6001600160a01b031614611ee25760405162461bcd60e51b81526004018080602001828103825260298152602001806128966029913960400191505060405180910390fd5b6001600160a01b038216611f275760405162461bcd60e51b815260040180806020018281038252602481526020018061274c6024913960400191505060405180910390fd5b611f308161230f565b6001600160a01b0383166000908152600460205260409020611f519061234a565b6001600160a01b0382166000908152600460205260409020611f7290612361565b60008181526002602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60006001600160a01b0382166120155760405162461bcd60e51b81526004018080602001828103825260228152602001806128746022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b60006120418383611dac565b905061204d848261236a565b815161205857600080fd5b61206181611ac9565b61206a57600080fd5b606082600660008681526020019081526020016000206040516020018083805190602001908083835b602083106120b25780518252601f199092019160209182019101612093565b6001836020036101000a03801982511681845116808217855250505050505090500180601760f91b815250600101828054600181600116156101000203166002900480156121375780601f10612115576101008083540402835291820191612137565b820191906000526020600020905b815481529060010190602001808311612123575b505060408051601f19818403018152918152600087815260066020908152919020825192965061216d9550935085019150612691565b50817fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952826040518080602001828103825283818151815260200191508051906020019080838360005b838110156121ce5781810151838201526020016121b6565b50505050905090810190601f1680156121fb5780820380516001836020036101000a031916815260200191505b509250505060405180910390a25050505050565b6111e361221b82611320565b8261249b565b3b151590565b6122318282611fce565b61226c5760405162461bcd60e51b81526004018080602001828103825260218152602001806128276021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff19169055565b6122988282611fce565b156122ea576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b6000818152600360205260409020546001600160a01b0316156111e357600090815260036020526040902080546001600160a01b0319169055565b805461235d90600163ffffffff61257216565b9055565b80546001019055565b6001600160a01b0382166123c5576040805162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f2061646472657373604482015290519081900360640190fd5b6123ce81611ac9565b15612420576040805162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000604482015290519081900360640190fd5b600081815260026020908152604080832080546001600160a01b0319166001600160a01b03871690811790915583526004909152902061245f90612361565b60405181906001600160a01b038416906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b816001600160a01b03166124ae82611320565b6001600160a01b0316146124f35760405162461bcd60e51b81526004018080602001828103825260258152602001806129116025913960400191505060405180910390fd5b6124fc8161230f565b6001600160a01b038216600090815260046020526040902061251d9061234a565b60008181526002602052604080822080546001600160a01b0319169055518291906001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6000828211156125c9576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106126105782800160ff1982351617855561263d565b8280016001018555821561263d579182015b8281111561263d578235825591602001919060010190612622565b506126499291506126ff565b5090565b50805460018160011615610100020316600290046000825580601f1061267357506111e3565b601f0160209004906000526020600020908101906111e391906126ff565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106126d257805160ff191683800117855561263d565b8280016001018555821561263d579182015b8281111561263d5782518255916020019190600101906126e4565b610f8191905b80821115612649576000815560010161270556fe4552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c654552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e526f6c65733a206163636f756e7420697320746865207a65726f20616464726573734552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f7665644552433732313a206275726e206f6620746f6b656e2074686174206973206e6f74206f776e4552433732314275726e61626c653a2063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564a265627a7a72315820fb6a1b26cc352dbb05e6627fd530bbb44114ac3a349f30d1f071136c656d20dc64736f6c634300050c0032","storage":{"0x7":"0x68747470733a2f2f6578616d706c652e636f6d2f000000000000000000000028","0xbdf39e9e65b2355b1b0b06df799c09159f0ab90f06a9bb2153f5de7d9b0ea81":"0x1","0x1a306d3e9bf29128dee78d8d16c9f378a11bbdf917a9caf986fc6e60846e37e7":"0x63727970746f000000000000000000000000000000000000000000000000000c","0x42c63635470f1fb1d6d4b6441c413cb435b1ebb6fedd1896dd5e25d1399147dd":"0x1","0x605d7a0bb2b20c4004d356eb969ff104dcca62360aa356247072f5e0df6472e3":"0xdead","0x67be87c3ff9960ca1e9cfac5cab2ff4747269cf9ed20c9b7306235ac35a491c5":"0x1","0x70f464f95f9ab7aba03264fd4cac1711d774d3703ce74217180264d4efc2105f":"0x1","0x76a72f26a108e6f3f687141f5f42d21d65857c03cb1b01aa1284f9a9ccd085da":"0x1","0x9562381dfbc2d8b8b66e765249f330164b73e329e5f01670660643571d1974df":"0x1","0x9f23d2403fb64167582d316b1bc5b35a6ed48524341ab24947c71df77304b29e":"0x1","0xf7815fccbf112960a73756e185887fedcb9fc64ca0a16cc5923b7960ed780800":"0x1"}},"0xc965345edac823d56812cd20a10316233916a605":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101c6575f3560e01c806395d89b41116100fe578063c87b56dd1161009e578063e985e9c51161006e578063e985e9c5146103d4578063f2fde38b1461040f578063f6a74ed714610422578063fca247ac14610435575f80fd5b8063c87b56dd14610377578063d6e4fa861461038a578063da8c229e146103a9578063ddf7fcb0146103cb575f80fd5b8063a7fc7a07116100d9578063a7fc7a0714610334578063b88d4fde14610347578063c1a287e21461035a578063c475abff14610364575f80fd5b806395d89b411461030657806396e494e81461030e578063a22cb46514610321575f80fd5b80633f15457f116101695780636352211e116101445780636352211e146102c757806370a08231146102da578063715018a6146102ed5780638da5cb5b146102f5575f80fd5b80633f15457f1461028e57806342842e0e146102a15780634e543b26146102b4575f80fd5b8063095ea7b3116101a4578063095ea7b3146102325780630e297b451461024757806323b872dd1461026857806328ed4f6c1461027b575f80fd5b806301ffc9a7146101ca57806306fdde03146101f2578063081812fc14610207575b5f80fd5b6101dd6101d83660046117dd565b610448565b60405190151581526020015b60405180910390f35b6101fa610499565b6040516101e99190611845565b61021a610215366004611857565b610528565b6040516001600160a01b0390911681526020016101e9565b610245610240366004611882565b61054d565b005b61025a6102553660046118ac565b610666565b6040519081526020016101e9565b6102456102763660046118e1565b61067b565b61024561028936600461190e565b6106ac565b60085461021a906001600160a01b031681565b6102456102af3660046118e1565b6107be565b6102456102c236600461193c565b6107d8565b61021a6102d5366004611857565b610848565b61025a6102e836600461193c565b610869565b6102456108ed565b6006546001600160a01b031661021a565b6101fa610900565b6101dd61031c366004611857565b61090f565b61024561032f366004611957565b610934565b61024561034236600461193c565b610943565b61024561035536600461199b565b610996565b61025a6276a70081565b61025a610372366004611a74565b6109ce565b6101fa610385366004611857565b610b52565b61025a610398366004611857565b5f9081526007602052604090205490565b6101dd6103b736600461193c565b600a6020525f908152604090205460ff1681565b61025a60095481565b6101dd6103e2366004611a94565b6001600160a01b039182165f90815260056020908152604080832093909416825291909152205460ff1690565b61024561041d36600461193c565b610bc2565b61024561043036600461193c565b610c3b565b61025a6104433660046118ac565b610c8b565b5f6001600160e01b031982166301ffc9a760e01b148061047857506001600160e01b031982166380ac58cd60e01b145b8061049357506001600160e01b03198216630a3b53db60e21b145b92915050565b60605f80546104a790611ac0565b80601f01602080910402602001604051908101604052809291908181526020018280546104d390611ac0565b801561051e5780601f106104f55761010080835404028352916020019161051e565b820191905f5260205f20905b81548152906001019060200180831161050157829003601f168201915b5050505050905090565b5f61053282610c99565b505f908152600460205260409020546001600160a01b031690565b5f61055782610cf7565b9050806001600160a01b0316836001600160a01b0316036105c95760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084015b60405180910390fd5b336001600160a01b03821614806105e557506105e581336103e2565b6106575760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016105c0565b6106618383610d56565b505050565b5f6106738484845f610dc3565b949350505050565b6106853382610fc7565b6106a15760405162461bcd60e51b81526004016105c090611af8565b610661838383611040565b6008546009546040516302571be360e01b8152600481019190915230916001600160a01b0316906302571be390602401602060405180830381865afa1580156106f7573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061071b9190611b45565b6001600160a01b03161461072d575f80fd5b6107373383610fc7565b61073f575f80fd5b6008546009546040516306ab592360e01b81526004810191909152602481018490526001600160a01b038381166044830152909116906306ab5923906064016020604051808303815f875af115801561079a573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106619190611b60565b61066183838360405180602001604052805f815250610996565b6107e06111a2565b600854600954604051630c4b7b8560e11b815260048101919091526001600160a01b03838116602483015290911690631896f70a906044015f604051808303815f87803b15801561082f575f80fd5b505af1158015610841573d5f803e3d5ffd5b5050505050565b5f818152600760205260408120544210610860575f80fd5b61049382610cf7565b5f6001600160a01b0382166108d25760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b60648201526084016105c0565b506001600160a01b03165f9081526003602052604090205490565b6108f56111a2565b6108fe5f6111fc565b565b6060600180546104a790611ac0565b5f81815260076020526040812054429061092d906276a70090611b77565b1092915050565b61093f33838361124d565b5050565b61094b6111a2565b6001600160a01b0381165f818152600a6020526040808220805460ff19166001179055517f0a8bb31534c0ed46f380cb867bd5c803a189ced9a764e30b3a4991a9901d74749190a250565b6109a03383610fc7565b6109bc5760405162461bcd60e51b81526004016105c090611af8565b6109c88484848461131a565b50505050565b6008546009546040516302571be360e01b815260048101919091525f9130916001600160a01b03909116906302571be390602401602060405180830381865afa158015610a1d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a419190611b45565b6001600160a01b031614610a53575f80fd5b335f908152600a602052604090205460ff16610a6d575f80fd5b5f838152600760205260409020544290610a8b906276a70090611b77565b1015610a95575f80fd5b610aa26276a70083611b77565b5f848152600760205260409020546276a70090610ac0908590611b77565b610aca9190611b77565b11610ad3575f80fd5b5f8381526007602052604081208054849290610af0908490611b77565b90915550505f838152600760205260409081902054905184917f9b87a00e30f1ac65d898f070f8a3488fe60517182d0a2098e1b4b93a54aa9bd691610b3791815260200190565b60405180910390a250505f9081526007602052604090205490565b6060610b5d82610c99565b5f610b7260408051602081019091525f815290565b90505f815111610b905760405180602001604052805f815250610bbb565b80610b9a8461134d565b604051602001610bab929190611b96565b6040516020818303038152906040525b9392505050565b610bca6111a2565b6001600160a01b038116610c2f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016105c0565b610c38816111fc565b50565b610c436111a2565b6001600160a01b0381165f818152600a6020526040808220805460ff19169055517f33d83959be2573f5453b12eb9d43b3499bc57d96bd2f067ba44803c859e811139190a250565b5f6106738484846001610dc3565b5f818152600260205260409020546001600160a01b0316610c385760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105c0565b5f818152600260205260408120546001600160a01b0316806104935760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105c0565b5f81815260046020526040902080546001600160a01b0319166001600160a01b0384169081179091558190610d8a82610cf7565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6008546009546040516302571be360e01b815260048101919091525f9130916001600160a01b03909116906302571be390602401602060405180830381865afa158015610e12573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e369190611b45565b6001600160a01b031614610e48575f80fd5b335f908152600a602052604090205460ff16610e62575f80fd5b610e6b8561090f565b610e73575f80fd5b610e806276a70042611b77565b6276a700610e8e8542611b77565b610e989190611b77565b11610ea1575f80fd5b610eab8342611b77565b5f868152600760209081526040808320939093556002905220546001600160a01b031615610edc57610edc856113dd565b610ee6848661146f565b8115610f6d576008546009546040516306ab592360e01b81526004810191909152602481018790526001600160a01b038681166044830152909116906306ab5923906064016020604051808303815f875af1158015610f47573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f6b9190611b60565b505b6001600160a01b038416857fb3d987963d01b2f68493b4bdb130988f157ea43070d4ad840fee0466ed9370d9610fa38642611b77565b60405190815260200160405180910390a3610fbe8342611b77565b95945050505050565b5f80610fd283610848565b9050806001600160a01b0316846001600160a01b0316148061100d5750836001600160a01b031661100284610528565b6001600160a01b0316145b8061067357506001600160a01b038082165f9081526005602090815260408083209388168352929052205460ff16610673565b826001600160a01b031661105382610cf7565b6001600160a01b0316146110795760405162461bcd60e51b81526004016105c090611bc4565b6001600160a01b0382166110db5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b60648201526084016105c0565b826001600160a01b03166110ee82610cf7565b6001600160a01b0316146111145760405162461bcd60e51b81526004016105c090611bc4565b5f81815260046020908152604080832080546001600160a01b03199081169091556001600160a01b038781168086526003855283862080545f1901905590871680865283862080546001019055868652600290945282852080549092168417909155905184937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6006546001600160a01b031633146108fe5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016105c0565b600680546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b816001600160a01b0316836001600160a01b0316036112ae5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c65720000000000000060448201526064016105c0565b6001600160a01b038381165f81815260056020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b611325848484611040565b611331848484846115f7565b6109c85760405162461bcd60e51b81526004016105c090611c09565b60605f611359836116f1565b60010190505f8167ffffffffffffffff81111561137857611378611987565b6040519080825280601f01601f1916602001820160405280156113a2576020820181803683370190505b5090508181016020015b5f19016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a85049450846113ac57509392505050565b5f6113e782610cf7565b90506113f282610cf7565b5f83815260046020908152604080832080546001600160a01b03199081169091556001600160a01b0385168085526003845282852080545f190190558785526002909352818420805490911690555192935084927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6001600160a01b0382166114c55760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f206164647265737360448201526064016105c0565b5f818152600260205260409020546001600160a01b0316156115295760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105c0565b5f818152600260205260409020546001600160a01b03161561158d5760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105c0565b6001600160a01b0382165f81815260036020908152604080832080546001019055848352600290915280822080546001600160a01b0319168417905551839291907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b5f6001600160a01b0384163b156116e957604051630a85bd0160e11b81526001600160a01b0385169063150b7a029061163a903390899088908890600401611c5b565b6020604051808303815f875af1925050508015611674575060408051601f3d908101601f1916820190925261167191810190611c97565b60015b6116cf573d8080156116a1576040519150601f19603f3d011682016040523d82523d5f602084013e6116a6565b606091505b5080515f036116c75760405162461bcd60e51b81526004016105c090611c09565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610673565b506001610673565b5f8072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b831061172f5772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef8100000000831061175b576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc10000831061177957662386f26fc10000830492506010015b6305f5e1008310611791576305f5e100830492506008015b61271083106117a557612710830492506004015b606483106117b7576064830492506002015b600a83106104935760010192915050565b6001600160e01b031981168114610c38575f80fd5b5f602082840312156117ed575f80fd5b8135610bbb816117c8565b5f5b838110156118125781810151838201526020016117fa565b50505f910152565b5f81518084526118318160208601602086016117f8565b601f01601f19169290920160200192915050565b602081525f610bbb602083018461181a565b5f60208284031215611867575f80fd5b5035919050565b6001600160a01b0381168114610c38575f80fd5b5f8060408385031215611893575f80fd5b823561189e8161186e565b946020939093013593505050565b5f805f606084860312156118be575f80fd5b8335925060208401356118d08161186e565b929592945050506040919091013590565b5f805f606084860312156118f3575f80fd5b83356118fe8161186e565b925060208401356118d08161186e565b5f806040838503121561191f575f80fd5b8235915060208301356119318161186e565b809150509250929050565b5f6020828403121561194c575f80fd5b8135610bbb8161186e565b5f8060408385031215611968575f80fd5b82356119738161186e565b915060208301358015158114611931575f80fd5b634e487b7160e01b5f52604160045260245ffd5b5f805f80608085870312156119ae575f80fd5b84356119b98161186e565b935060208501356119c98161186e565b925060408501359150606085013567ffffffffffffffff808211156119ec575f80fd5b818701915087601f8301126119ff575f80fd5b813581811115611a1157611a11611987565b604051601f8201601f19908116603f01168101908382118183101715611a3957611a39611987565b816040528281528a6020848701011115611a51575f80fd5b826020860160208301375f60208483010152809550505050505092959194509250565b5f8060408385031215611a85575f80fd5b50508035926020909101359150565b5f8060408385031215611aa5575f80fd5b8235611ab08161186e565b915060208301356119318161186e565b600181811c90821680611ad457607f821691505b602082108103611af257634e487b7160e01b5f52602260045260245ffd5b50919050565b6020808252602d908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526c1c881bdc88185c1c1c9bdd9959609a1b606082015260800190565b5f60208284031215611b55575f80fd5b8151610bbb8161186e565b5f60208284031215611b70575f80fd5b5051919050565b8082018082111561049357634e487b7160e01b5f52601160045260245ffd5b5f8351611ba78184602088016117f8565b835190830190611bbb8183602088016117f8565b01949350505050565b60208082526025908201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060408201526437bbb732b960d91b606082015260800190565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6001600160a01b03858116825284166020820152604081018390526080606082018190525f90611c8d9083018461181a565b9695505050505050565b5f60208284031215611ca7575f80fd5b8151610bbb816117c856fea164736f6c6343000818000a","storage":{"0x0":"0x0","0x1":"0x0","0x6":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x8":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0x9":"0x93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae","0x9b8bc185dce56a7ea1b27d35e40ac15dcdf9144303dfd4d8880220078bf21a2c":"0x1","0xdb5e6a17df8534b92b0c8de590f14b4fb4b5eb2c62ef1bf7a05555e354797508":"0x1","0xe1a982900207b619cb6c39be8cb5e60da1370171412fb65b5efc25e2dce3c34c":"0x1"}},"0xce4bb7dc1eb9dce75743de6a4b48534fd427ef51":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xe85541865bbb62a05064ce5c9f41cc293a8ea996","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0xd178b720229c39de617846f84cf9c8d32a63a23d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610106575f3560e01c806371017a541161009e5780639e32d3641161006e5780639e32d3641461025a578063a424740014610281578063dd6b9e2214610294578063e1c4b65a146102a7578063e35a14e5146102ba575f80fd5b806371017a541461020e5780637b103999146102215780638f0dbd25146102345780639810b69514610247575f80fd5b8063485cc955116100d9578063485cc95514610191578063572b6c05146101a457806358884432146101d05780636ccbae5f146101fb575f80fd5b8063150b7a021461010a5780631694116d1461013b5780631bf7e13e146101505780631c351a9d14610170575b5f80fd5b61011d610118366004611434565b6102e2565b6040516001600160e01b031990911681526020015b60405180910390f35b61014e6101493660046114e3565b610372565b005b61016361015e366004611549565b61040d565b6040516101329190611601565b61018361017e366004611613565b6104d6565b604051908152602001610132565b61014e61019f366004611666565b6105c3565b6101c06101b236600461169d565b6001600160a01b0316301490565b6040519015158152602001610132565b6067546101e3906001600160a01b031681565b6040516001600160a01b039091168152602001610132565b6101836102093660046116b8565b6106f8565b6101e361021c3660046116cf565b610751565b6066546101e3906001600160a01b031681565b61014e6102423660046116ef565b610791565b6101e36102553660046116cf565b610806565b6101837fd81bbfcee722494b885e891546eeac23d0eedcd44038d7a2f6ef9ec2f9e0d23981565b6101c061028f366004611549565b61085f565b6101c06102a236600461172d565b6108a8565b61014e6102b5366004611771565b61091d565b6101e36102c83660046116b8565b5f908152606560205260409020546001600160a01b031690565b6066545f906001600160a01b03166102f8610a43565b6001600160a01b031614158061032257505f848152606560205260409020546001600160a01b0316155b156103605783610330610a43565b60405163634afa0d60e01b815260048101929092526001600160a01b031660248201526044015b60405180910390fd5b50630a85bd0160e11b95945050505050565b828261037e8282610751565b6001600160a01b031661038f610a43565b6001600160a01b0316146103c057604051632cd9b44d60e11b81526004810183905260248101829052604401610357565b5f6103cb8686610806565b90505f5b87811015610402576103fa8989838181106103ec576103ec6117b0565b905060200201358387610a51565b6001016103cf565b505050505050505050565b60605f5a905061041e85858561085f565b61043b57604051638baa579f60e01b815260040160405180910390fd5b6104cb61044b602087018761169d565b3060408801358461045f60608b018b6117c4565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f92019190915250610b8492505050565b9150505b9392505050565b6067545f906001600160a01b031663aa271e1a6104f1610a43565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015610533573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105579190611807565b1580610572575030610567610a43565b6001600160a01b0316145b156105a45761057f610a43565b60405163e2c8c9d560e01b81526001600160a01b039091166004820152602401610357565b5f6105b0858585610c60565b90506105bb81610e73565b949350505050565b5f54610100900460ff16158080156105e157505f54600160ff909116105b806105fa5750303b1580156105fa57505f5460ff166001145b61065d5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610357565b5f805460ff19166001179055801561067e575f805461ff0019166101001790555b606680546001600160a01b038086166001600160a01b031992831617909255606780549285169290911691909117905580156106f3575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f9061074a906060016040516020818303038152906040528051906020012090565b5492915050565b5f80838360405160200161076f929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209150505b92915050565b828261079d8282610751565b6001600160a01b03166107ae610a43565b6001600160a01b0316146107df57604051632cd9b44d60e11b81526004810183905260248101829052604401610357565b856107e981610e73565b6107fd876107f78889610806565b86610a51565b50505050505050565b5f8060026108148585610e8f565b6040516108219190611826565b602060405180830381855afa15801561083c573d5f803e3d5ffd5b5050506040513d601f19601f820116820180604052508101906105bb9190611841565b5f6105bb61086c856118c6565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250610f1492505050565b5f805b8281101561091257846001600160a01b03166108f38585848181106108d2576108d26117b0565b905060200201355f908152606560205260409020546001600160a01b031690565b6001600160a01b03161461090a575f9150506104cf565b6001016108ab565b506001949350505050565b6067546001600160a01b031663aa271e1a610936610a43565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015610978573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061099c9190611807565b15806109b75750306109ac610a43565b6001600160a01b0316145b156109c45761057f610a43565b5f5b818110156106f357610a3a8383838181106109e3576109e36117b0565b90506020028101906109f59190611983565b610a039060208101906117c4565b858585818110610a1557610a156117b0565b9050602002810190610a279190611983565b610a3590602081019061169d565b610c60565b506001016109c6565b5f610a4c611059565b905090565b5f838152606560205260409020546001600160a01b03838116911614610ab4575f83815260656020526040908190205490516326995d8360e11b8152600481018590526001600160a01b0391821660248201529083166044820152606401610357565b5f838152606560205260409081902080546001600160a01b03191690556066549051632142170760e11b81523060048201526001600160a01b03838116602483015260448201869052909116906342842e0e906064015f604051808303815f87803b158015610b21575f80fd5b505af1158015610b33573d5f803e3d5ffd5b50505050806001600160a01b0316610b49610a43565b6001600160a01b0316847f9a471856befea1cabcd7fc8a1c4d70ea07b8ed2ee205cc361f932433542ef3fe60405160405180910390a4505050565b6060610b8f85611076565b5f80876001600160a01b031686610ba88b8a89896110db565b604051610bb59190611826565b5f604051808303815f8787f1925050503d805f8114610bef576040519150601f19603f3d011682016040523d82523d5f602084013e610bf4565b606091505b509092509050610c05603f876119bf565b5a11610c1357610c136119d2565b610c5382826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061110b565b9998505050505050505050565b5f60605f7fd81bbfcee722494b885e891546eeac23d0eedcd44038d7a2f6ef9ec2f9e0d2398686604051602001610c989291906119e6565b60405160208183030381529060405280519060200120604051602001610cc8929190918252602082015260400190565b60408051808303601f19018152828252805160209091012060028084526060840190925292505f9190816020015b6060815260200190600190039081610cf657905050905086868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920182905250855186945090925015159050610d5657610d566117b0565b6020026020010181905250604051806040016040528060038152602001621e9a5b60ea1b81525081600181518110610d9057610d906117b0565b6020908102919091018101919091525f8381526065909152604080822080546001600160a01b0319166001600160a01b03898116919091179091556067549151635cd7e3b360e01b8152911691635cd7e3b391610df891309186918991829190600401611a4d565b5f604051808303815f87803b158015610e0f575f80fd5b505af1158015610e21573d5f803e3d5ffd5b50505050846001600160a01b0316827f08717469d38a4b02325ea6637978c7952f94d3d8fc7848994f618ddbf4d637f18989604051610e61929190611aab565b60405180910390a35095945050505050565b303303610e8657610e8381611144565b50565b610e8381611076565b60605f82610e9f60016020611ad9565b60ff1660208110610eb257610eb26117b0565b1a9050610ec0600282611af2565b60ff1615610ecf576003610ed2565b60025b84604051602001610efc92919060f89290921b6001600160f81b0319168252600182015260210190565b60405160208183030381529060405291505092915050565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015610f58573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f7c9190611841565b90505f611029866060015180519060200120868860200151604051602001610fc99392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561104f5750855161104f906001600160a01b0316828661116e565b9695505050505050565b5f30330361106e575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f906060016040516020818303038152906040528051906020012090506110ca8190565b546110d6906001611b13565b905550565b60608285856040516020016110f293929190611b26565b6040516020818303038152906040529050949350505050565b6060831561111a5750816104cf565b82511561112a5782518084602001fd5b8160405162461bcd60e51b81526004016103579190611601565b61114c6112a9565b8114610e8357604051635637b6af60e11b815260048101829052602401610357565b5f805f61117b85856112bb565b90925090505f81600481111561119357611193611b64565b1480156111b15750856001600160a01b0316826001600160a01b0316145b156111c1576001925050506104cf565b5f80876001600160a01b0316631626ba7e60e01b88886040516024016111e8929190611b78565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516112269190611826565b5f60405180830381855afa9150503d805f811461125e576040519150601f19603f3d011682016040523d82523d5f602084013e611263565b606091505b5091509150818015611276575080516020145b801561129d57508051630b135d3f60e11b9061129b9083016020908101908401611841565b145b98975050505050505050565b5f3033036110735750601f1936013590565b5f8082516041036112ef576020830151604084015160608501515f1a6112e3878285856112fd565b945094505050506112f6565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561133257505f905060036113d9565b8460ff16601b1415801561134a57508460ff16601c14155b1561135a57505f905060046113d9565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156113ab573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b0381166113d3575f600192509250506113d9565b91505f90505b94509492505050565b6001600160a01b0381168114610e83575f80fd5b5f8083601f840112611406575f80fd5b50813567ffffffffffffffff81111561141d575f80fd5b6020830191508360208285010111156112f6575f80fd5b5f805f805f60808688031215611448575f80fd5b8535611453816113e2565b94506020860135611463816113e2565b935060408601359250606086013567ffffffffffffffff811115611485575f80fd5b611491888289016113f6565b969995985093965092949392505050565b5f8083601f8401126114b2575f80fd5b50813567ffffffffffffffff8111156114c9575f80fd5b6020830191508360208260051b85010111156112f6575f80fd5b5f805f805f608086880312156114f7575f80fd5b853567ffffffffffffffff81111561150d575f80fd5b611519888289016114a2565b9096509450506020860135925060408601359150606086013561153b816113e2565b809150509295509295909350565b5f805f6040848603121561155b575f80fd5b833567ffffffffffffffff80821115611572575f80fd5b9085019060808288031215611585575f80fd5b9093506020850135908082111561159a575f80fd5b506115a7868287016113f6565b9497909650939450505050565b5f5b838110156115ce5781810151838201526020016115b6565b50505f910152565b5f81518084526115ed8160208601602086016115b4565b601f01601f19169290920160200192915050565b602081525f6104cf60208301846115d6565b5f805f60408486031215611625575f80fd5b833567ffffffffffffffff81111561163b575f80fd5b611647868287016113f6565b909450925050602084013561165b816113e2565b809150509250925092565b5f8060408385031215611677575f80fd5b8235611682816113e2565b91506020830135611692816113e2565b809150509250929050565b5f602082840312156116ad575f80fd5b81356104cf816113e2565b5f602082840312156116c8575f80fd5b5035919050565b5f80604083850312156116e0575f80fd5b50508035926020909101359150565b5f805f8060808587031215611702575f80fd5b8435935060208501359250604085013591506060850135611722816113e2565b939692955090935050565b5f805f6040848603121561173f575f80fd5b833561174a816113e2565b9250602084013567ffffffffffffffff811115611765575f80fd5b6115a7868287016114a2565b5f8060208385031215611782575f80fd5b823567ffffffffffffffff811115611798575f80fd5b6117a4858286016114a2565b90969095509350505050565b634e487b7160e01b5f52603260045260245ffd5b5f808335601e198436030181126117d9575f80fd5b83018035915067ffffffffffffffff8211156117f3575f80fd5b6020019150368190038213156112f6575f80fd5b5f60208284031215611817575f80fd5b815180151581146104cf575f80fd5b5f82516118378184602087016115b4565b9190910192915050565b5f60208284031215611851575f80fd5b5051919050565b634e487b7160e01b5f52604160045260245ffd5b6040516080810167ffffffffffffffff8111828210171561188f5761188f611858565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156118be576118be611858565b604052919050565b5f608082360312156118d6575f80fd5b6118de61186c565b82356118e9816113e2565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff80821115611919575f80fd5b9085019036601f83011261192b575f80fd5b81358181111561193d5761193d611858565b61194f601f8201601f19168501611895565b91508082523684828501011115611964575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b5f8235603e19833603018112611837575f80fd5b634e487b7160e01b5f52601260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b5f826119cd576119cd611997565b500490565b634e487b7160e01b5f52600160045260245ffd5b818382375f9101908152919050565b5f8282518085526020808601955060208260051b840101602086015f5b84811015611a4057601f19868403018952611a2e8383516115d6565b98840198925090830190600101611a12565b5090979650505050505050565b6001600160a01b038616815260a0602082018190525f90611a70908301876119f5565b8281036040840152611a8281876119f5565b90508281036060840152611a9681866119f5565b91505082151560808301529695505050505050565b60208152816020820152818360408301375f818301604090810191909152601f909201601f19160101919050565b60ff828116828216039081111561078b5761078b6119ab565b5f60ff831680611b0457611b04611997565b8060ff84160691505092915050565b8082018082111561078b5761078b6119ab565b5f8451611b378184602089016115b4565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f6105bb60408301846115d656fea164736f6c6343000818000a","storage":{"0x0":"0xff"}},"0xda9e1b3e395bfb0a45f03c7f615146b9d896c959":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100b1575f3560e01c806340c10f191161006e57806340c10f191461013d57806370a082311461015257806395d89b411461017a578063a457c2d714610182578063a9059cbb14610195578063dd62ed3e146101a8575f80fd5b806306fdde03146100b5578063095ea7b3146100d357806318160ddd146100f657806323b872dd14610108578063313ce5671461011b578063395093511461012a575b5f80fd5b6100bd6101bb565b6040516100ca9190610775565b60405180910390f35b6100e66100e13660046107dc565b61024b565b60405190151581526020016100ca565b6002545b6040519081526020016100ca565b6100e6610116366004610804565b610264565b604051601281526020016100ca565b6100e66101383660046107dc565b610287565b61015061014b3660046107dc565b6102a8565b005b6100fa61016036600461083d565b6001600160a01b03165f9081526020819052604090205490565b6100bd6102b6565b6100e66101903660046107dc565b6102c5565b6100e66101a33660046107dc565b610344565b6100fa6101b636600461085d565b610351565b6060600380546101ca9061088e565b80601f01602080910402602001604051908101604052809291908181526020018280546101f69061088e565b80156102415780601f1061021857610100808354040283529160200191610241565b820191905f5260205f20905b81548152906001019060200180831161022457829003601f168201915b5050505050905090565b5f3361025881858561037b565b60019150505b92915050565b5f3361027185828561049e565b61027c858585610516565b506001949350505050565b5f336102588185856102998383610351565b6102a391906108c6565b61037b565b6102b282826106b8565b5050565b6060600480546101ca9061088e565b5f33816102d28286610351565b9050838110156103375760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b61027c828686840361037b565b5f33610258818585610516565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b6001600160a01b0383166103dd5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161032e565b6001600160a01b03821661043e5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161032e565b6001600160a01b038381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b5f6104a98484610351565b90505f19811461051057818110156105035760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161032e565b610510848484840361037b565b50505050565b6001600160a01b03831661057a5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161032e565b6001600160a01b0382166105dc5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161032e565b6001600160a01b0383165f90815260208190526040902054818110156106535760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161032e565b6001600160a01b038481165f81815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3610510565b6001600160a01b03821661070e5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640161032e565b8060025f82825461071f91906108c6565b90915550506001600160a01b0382165f81815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b5f602080835283518060208501525f5b818110156107a157858101830151858201604001528201610785565b505f604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146107d7575f80fd5b919050565b5f80604083850312156107ed575f80fd5b6107f6836107c1565b946020939093013593505050565b5f805f60608486031215610816575f80fd5b61081f846107c1565b925061082d602085016107c1565b9150604084013590509250925092565b5f6020828403121561084d575f80fd5b610856826107c1565b9392505050565b5f806040838503121561086e575f80fd5b610877836107c1565b9150610885602084016107c1565b90509250929050565b600181811c908216806108a257607f821691505b6020821081036108c057634e487b7160e01b5f52602260045260245ffd5b50919050565b8082018082111561025e57634e487b7160e01b5f52601160045260245ffdfea164736f6c6343000818000a","storage":{"0x2":"0xe8d4a51000","0x3":"0x0","0x4":"0x0","0x47668262eb76f3aa61b856a0c078f33a11f46671cf1466c3616ba74a22fcdd92":"0xe8d4a51000","0x9cc83e833a69122bf7773b58c082655d780ae469ab7cdf5d1047a30229e55875":"0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"}},"0xe0afc4e9e03e4aa67257df7a2eca77454309789d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061002b5760003560e01c806316f1983114610030575b600080fd5b6100b06004803603604081101561004657600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561007157600080fd5b82018360208201111561008357600080fd5b803590602001918460018302840111640100000000831117156100a557600080fd5b5090925090506100b2565b005b826001600160a01b031660017f103fed9db65eac19c4d870f49ab7520fe03b99f1838e5996caf47e9e43308392848460405180806020018281038252848482818152602001925080828437600083820152604051601f909101601f19169092018290039550909350505050a350505056fea164736f6c6343000606000a","storage":{}},"0xe4fdf45c2f8d198854f8823809c7a988eeaaa493":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100a6575f3560e01c80638cb8ecec1161006e5780638cb8ecec1461013e5780638da5cb5b14610151578063cbe9e76414610161578063da8c229e14610183578063e0dba60f146101a5578063f2fde38b146101b8575f80fd5b806301670ba9146100aa57806301ffc9a7146100bf5780633f15457f146100f85780634e543b2614610123578063715018a614610136575b5f80fd5b6100bd6100b8366004610529565b6101cb565b005b6100e36100cd366004610540565b6001600160e01b0319166301ffc9a760e01b1490565b60405190151581526020015b60405180910390f35b60025461010b906001600160a01b031681565b6040516001600160a01b0390911681526020016100ef565b6100bd610131366004610589565b610217565b6100bd610282565b6100bd61014c3660046105a2565b610295565b5f546001600160a01b031661010b565b6100e361016f366004610529565b60036020525f908152604090205460ff1681565b6100e3610191366004610589565b60016020525f908152604090205460ff1681565b6100bd6101b33660046105cc565b6103a2565b6100bd6101c6366004610589565b610408565b6101d3610481565b60405181907f1764176cfa565853ba1ded547a830a9f9bff95231ef6fd228b3ddd6175777569905f90a25f908152600360205260409020805460ff19166001179055565b61021f610481565b600254604051630c4b7b8560e11b81525f60048201526001600160a01b03838116602483015290911690631896f70a906044015f604051808303815f87803b158015610269575f80fd5b505af115801561027b573d5f803e3d5ffd5b5050505050565b61028a610481565b6102935f6104da565b565b335f9081526001602052604090205460ff166103095760405162461bcd60e51b815260206004820152602860248201527f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f604482015267373a3937b63632b960c11b60648201526084015b60405180910390fd5b5f8281526003602052604090205460ff1615610323575f80fd5b6002546040516306ab592360e01b81525f6004820152602481018490526001600160a01b038381166044830152909116906306ab5923906064016020604051808303815f875af1158015610379573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061039d9190610605565b505050565b6103aa610481565b6001600160a01b0382165f81815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b610410610481565b6001600160a01b0381166104755760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610300565b61047e816104da565b50565b5f546001600160a01b031633146102935760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610300565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f60208284031215610539575f80fd5b5035919050565b5f60208284031215610550575f80fd5b81356001600160e01b031981168114610567575f80fd5b9392505050565b80356001600160a01b0381168114610584575f80fd5b919050565b5f60208284031215610599575f80fd5b6105678261056e565b5f80604083850312156105b3575f80fd5b823591506105c36020840161056e565b90509250929050565b5f80604083850312156105dd575f80fd5b6105e68361056e565b9150602083013580151581146105fa575f80fd5b809150509250929050565b5f60208284031215610615575f80fd5b505191905056fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0xbdf39e9e65b2355b1b0b06df799c09159f0ab90f06a9bb2153f5de7d9b0ea81":"0x1","0x97b771283c9c769f7b9399fef71d92816f2bd31de10203b676671b01eb920966":"0x1"}},"0xe85541865bbb62a05064ce5c9f41cc293a8ea996":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610060575f3560e01c8063715018a6146100645780638129fc1c1461006e5780638da5cb5b14610076578063a3f4df7e14610096578063f2fde38b146100cf578063ffa1ad74146100e2575b5f80fd5b61006c610106565b005b61006c610119565b6033546040516001600160a01b0390911681526020015b60405180910390f35b6100c26040518060400160405280600d81526020016c2aa7299d1027b832b930ba37b960991b81525081565b60405161008d91906103bd565b61006c6100dd366004610409565b610229565b6100c2604051806040016040528060058152602001640302e312e360dc1b81525081565b61010e61029f565b6101175f6102f9565b565b5f54610100900460ff161580801561013757505f54600160ff909116105b806101505750303b15801561015057505f5460ff166001145b6101b85760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b5f805460ff1916600117905580156101d9575f805461ff0019166101001790555b6101e161034a565b8015610226575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50565b61023161029f565b6001600160a01b0381166102965760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016101af565b610226816102f9565b6033546001600160a01b031633146101175760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016101af565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff166103b45760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016101af565b610117336102f9565b5f602080835283518060208501525f5b818110156103e9578581018301518582016040015282016103cd565b505f604082860101526040601f19601f8301168501019250505092915050565b5f60208284031215610419575f80fd5b81356001600160a01b038116811461042f575f80fd5b939250505056fea164736f6c6343000818000a","storage":{}},"0xead34b583404e3cb0c9b97c2d1c486be67be9f30":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0xec71e4e674fe0f432693dc2b935c34bd2774c003":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610090575f3560e01c8063a200e15311610063578063a200e15314610146578063a34e35961461016d578063c8a4271f14610180578063cd5d2c74146101bf578063d820ed42146101e6575f80fd5b806301ffc9a7146100945780632c0fd74c146100bc57806350e9a715146100f157806359b6b86c1461011f575b5f80fd5b6100a76100a2366004610600565b61020d565b60405190151581526020015b60405180910390f35b6100e37f000000000000000000000000000000000000000000000000000000000000000081565b6040519081526020016100b3565b6101046100ff366004610627565b610243565b604080518251815260209283015192810192909252016100b3565b6100e37f000000000000000000000000000000000000000000000000000000000000000181565b6100e37f000000000000000000000000000000000000000000000000000000000000000481565b6100e361017b366004610627565b610404565b6101a77f000000000000000000000000f3810eb7d64d1c11ae12727d957c6202b24492f581565b6040516001600160a01b0390911681526020016100b3565b6100e37f000000000000000000000000000000000000000000000000000000000000000081565b6100e37f000000000000000000000000000000000000000000000000000000000000000281565b5f6001600160e01b031982166301ffc9a760e01b148061023d57506001600160e01b031982166350e9a71560e01b145b92915050565b604080518082019091525f80825260208201525f61029586868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061045392505050565b90505f600582106102d1576102ca847f00000000000000000000000000000000000000000000000000000000000000016106b3565b9050610394565b81600403610303576102ca847f00000000000000000000000000000000000000000000000000000000000000026106b3565b81600303610335576102ca847f00000000000000000000000000000000000000000000000000000000000000046106b3565b81600203610367576102ca847f00000000000000000000000000000000000000000000000000000000000000006106b3565b610391847f00000000000000000000000000000000000000000000000000000000000000006106b3565b90505b60405180604001604052806103a883610554565b81526020016103f76103f28a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c92508b91506105f89050565b610554565b9052979650505050505050565b5f61044a6103f286868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508892508791506105f89050565b95945050505050565b80515f90819081905b8082101561054b575f858381518110610477576104776106ca565b01602001516001600160f81b0319169050600160ff1b8110156104a65761049f6001846106de565b9250610538565b600760fd1b6001600160f81b0319821610156104c75761049f6002846106de565b600f60fc1b6001600160f81b0319821610156104e85761049f6003846106de565b601f60fb1b6001600160f81b0319821610156105095761049f6004846106de565b603f60fa1b6001600160f81b03198216101561052a5761049f6005846106de565b6105356006846106de565b92505b5082610543816106f1565b93505061045c565b50909392505050565b5f807f000000000000000000000000f3810eb7d64d1c11ae12727d957c6202b24492f56001600160a01b03166350d25bcd6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105b2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105d69190610709565b9050806105e7846305f5e1006106b3565b6105f19190610720565b9392505050565b5f9392505050565b5f60208284031215610610575f80fd5b81356001600160e01b0319811681146105f1575f80fd5b5f805f806060858703121561063a575f80fd5b843567ffffffffffffffff80821115610651575f80fd5b818701915087601f830112610664575f80fd5b813581811115610672575f80fd5b886020828501011115610683575f80fd5b6020928301999098509187013596604001359550909350505050565b634e487b7160e01b5f52601160045260245ffd5b808202811582820484141761023d5761023d61069f565b634e487b7160e01b5f52603260045260245ffd5b8082018082111561023d5761023d61069f565b5f600182016107025761070261069f565b5060010190565b5f60208284031215610719575f80fd5b5051919050565b5f8261073a57634e487b7160e01b5f52601260045260245ffd5b50049056fea164736f6c6343000818000a","storage":{}},"0xf1ad43dc647f27c2366ab4742d68d21282f7d50e":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101d1575f3560e01c80638b95dd71116100fe578063c86902331161009e578063e32954eb1161006e578063e32954eb146104f2578063e59d895d14610505578063e985e9c514610518578063f1cb7e0614610553575f80fd5b8063c869023314610435578063ce3decdc1461048c578063d5fa2b001461049f578063d700ff33146104b2575f80fd5b8063a8fa5682116100d9578063a8fa5682146103ac578063a9784b3e146103bf578063ac9650d814610402578063bc1c58d114610422575f80fd5b80638b95dd7114610373578063a22cb46514610386578063a4b91a0114610399575f80fd5b80633603d758116101745780635c98042b116101445780635c98042b14610327578063623195b01461033a578063691f34311461034d5780637737221314610360575f80fd5b80633603d758146102975780633b3b57de146102aa5780634cbf6ba4146102bd57806359d1d43c14610307575f80fd5b8063124a319c116101af578063124a319c146102255780632203ab561461025057806329cd62ea14610271578063304e6ade14610284575f80fd5b806301ffc9a7146101d55780630af179d7146101fd57806310f13a8c14610212575b5f80fd5b6101e86101e3366004612267565b610566565b60405190151581526020015b60405180910390f35b61021061020b3660046122bd565b610576565b005b610210610220366004612304565b610778565b610238610233366004612377565b610842565b6040516001600160a01b0390911681526020016101f4565b61026361025e3660046123a1565b610a87565b6040516101f492919061240e565b61021061027f366004612426565b610bb5565b6102106102923660046122bd565b610c4d565b6102106102a536600461244f565b610cc6565b6102386102b836600461244f565b610d64565b6101e86102cb3660046123a1565b5f82815260208181526040808320546001600160401b031683526006825280832094835293815283822092825291909152205461ffff16151590565b61031a6103153660046122bd565b610d93565b6040516101f49190612466565b61031a61033536600461244f565b610e6f565b610210610348366004612478565b610f2a565b61031a61035b36600461244f565b610fc2565b61021061036e3660046122bd565b610ffa565b6102106103813660046124da565b611073565b6102106103943660046125b9565b611150565b6102106103a73660046125e3565b61122a565b61031a6103ba36600461261e565b6112f6565b6101e86103cd36600461265a565b6001600160a01b039283165f908152600c60209081526040808320948352938152838220929094168152925290205460ff1690565b6104156104103660046126ce565b611342565b6040516101f4919061270c565b61031a61043036600461244f565b61134f565b61047761044336600461244f565b5f81815260208181526040808320546001600160401b03168352600982528083209383529290522080546001909101549091565b604080519283526020830191909152016101f4565b61021061049a3660046122bd565b611387565b6102106104ad36600461276e565b6114c3565b6104da6104c036600461244f565b5f602081905290815260409020546001600160401b031681565b6040516001600160401b0390911681526020016101f4565b61041561050036600461279c565b6114e9565b6102106105133660046127d6565b6114fe565b6101e8610526366004612808565b6001600160a01b039182165f908152600b6020908152604080832093909416825291909152205460ff1690565b61031a6105613660046123a1565b6115a2565b5f61057082611666565b92915050565b826105808161168a565b610588575f80fd5b5f84815260208181526040808320548151601f87018490048402810184019092528582528392606092839285926001600160401b039091169183916105eb9183918d908d90819084018382808284375f9201919091525092939250506118b79050565b90505b80515160208201511015610712578661ffff165f03610652578060400151965061061781611912565b94508460405160200161062a9190612834565b60405160208183030381529060405280519060200120925061064b81611933565b9350610704565b5f61065c82611912565b9050816040015161ffff168861ffff16141580610680575061067e868261194f565b155b15610702576106db8c878a8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250505060208801518d91506106d2908290612863565b8b51158a61196a565b8160400151975081602001519650809550858051906020012093506106ff82611933565b94505b505b61070d81611bc9565b6105ee565b5083511561076c5761076c8a85888c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c925061076391508290508f612863565b8951158861196a565b50505050505050505050565b846107828161168a565b61078a575f80fd5b5f86815260208181526040808320546001600160401b03168352600a8252808320898452909152908190209051849184916107c89089908990612876565b908152602001604051809103902091826107e3929190612901565b5084846040516107f4929190612876565b6040518091039020867f448bc014f1536726cf8d54ff3d6481ed3cbc683c2591ca204274009afa09b1a18787878760405161083294939291906129e2565b60405180910390a3505050505050565b5f82815260208181526040808320546001600160401b031683526007825280832085845282528083206001600160e01b0319851684529091528120546001600160a01b03168015610894579050610570565b5f61089e85610d64565b90506001600160a01b0381166108b8575f92505050610570565b6040516301ffc9a760e01b60248201525f9081906001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b1790525161090f9190612834565b5f60405180830381855afa9150503d805f8114610947576040519150601f19603f3d011682016040523d82523d5f602084013e61094c565b606091505b509150915081158061095f575060208151105b80610989575080601f8151811061097857610978612a13565b01602001516001600160f81b031916155b1561099a575f945050505050610570565b6040516001600160e01b0319871660248201526001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b179052516109f09190612834565b5f60405180830381855afa9150503d805f8114610a28576040519150601f19603f3d011682016040523d82523d5f602084013e610a2d565b606091505b509092509050811580610a41575060208151105b80610a6b575080601f81518110610a5a57610a5a612a13565b01602001516001600160f81b031916155b15610a7c575f945050505050610570565b509095945050505050565b5f82815260208181526040808320546001600160401b03168352600180835281842086855290925282206060915b848111610b975780851615801590610ae457505f8181526020839052604081208054610ae090612885565b9050115b15610b8f5780825f8381526020019081526020015f20808054610b0690612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610b3290612885565b8015610b7d5780601f10610b5457610100808354040283529160200191610b7d565b820191905f5260205f20905b815481529060010190602001808311610b6057829003601f168201915b50505050509050935093505050610bae565b60011b610ab5565b505f60405180602001604052805f81525092509250505b9250929050565b82610bbf8161168a565b610bc7575f80fd5b60408051808201825284815260208082018581525f888152808352848120546001600160401b031681526009835284812089825283528490209251835551600190920191909155815185815290810184905285917f1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e4691015b60405180910390a250505050565b82610c578161168a565b610c5f575f80fd5b5f84815260208181526040808320546001600160401b03168352600382528083208784529091529020610c93838583612901565b50837fe379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d75788484604051610c3f929190612a27565b80610cd08161168a565b610cd8575f80fd5b5f82815260208190526040812080546001600160401b031691610cfa83612a3a565b82546101009290920a6001600160401b038181021990931691831602179091555f84815260208181526040918290205491519190921681528492507fc6621ccb8f3f5a04bb6502154b2caf6adf5983fe76dfef1cfc9c42e3579db444910160405180910390a25050565b5f80610d7183603c6115a2565b905080515f03610d8357505f92915050565b610d8c81611cae565b9392505050565b5f83815260208181526040808320546001600160401b03168352600a825280832086845290915290819020905160609190610dd19085908590612876565b90815260200160405180910390208054610dea90612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610e1690612885565b8015610e615780601f10610e3857610100808354040283529160200191610e61565b820191905f5260205f20905b815481529060010190602001808311610e4457829003601f168201915b505050505090509392505050565b5f81815260208181526040808320546001600160401b03168352600482528083208484529091529020805460609190610ea790612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610ed390612885565b8015610f1e5780601f10610ef557610100808354040283529160200191610f1e565b820191905f5260205f20905b815481529060010190602001808311610f0157829003601f168201915b50505050509050919050565b83610f348161168a565b610f3c575f80fd5b83610f48600182612863565b1615610f52575f80fd5b5f85815260208181526040808320546001600160401b031683526001825280832088845282528083208784529091529020610f8e838583612901565b50604051849086907faa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe3905f90a35050505050565b5f81815260208181526040808320546001600160401b03168352600882528083208484529091529020805460609190610ea790612885565b826110048161168a565b61100c575f80fd5b5f84815260208181526040808320546001600160401b03168352600882528083208784529091529020611040838583612901565b50837fb7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f78484604051610c3f929190612a27565b8261107d8161168a565b611085575f80fd5b837f65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af75284846040516110b792919061240e565b60405180910390a2603c830361110e57837f52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd26110f284611cae565b6040516001600160a01b03909116815260200160405180910390a25b5f84815260208181526040808320546001600160401b0316835260028252808320878452825280832086845290915290206111498382612a5f565b5050505050565b6001600160a01b03821633036111bf5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084015b60405180910390fd5b335f818152600b602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6001600160a01b03821633036112825760405162461bcd60e51b815260206004820181905260248201527f53657474696e672064656c65676174652073746174757320666f722073656c6660448201526064016111b6565b335f818152600c6020908152604080832087845282528083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519384529286917ff0ddb3b04746704017f9aa8bd728fcc2c1d11675041205350018915f5e4750a0910160405180910390a4505050565b5f83815260208181526040808320546001600160401b03168352600582528083208684528252808320858452825280832061ffff851684529091529020805460609190610dea90612885565b6060610d8c5f8484611ccb565b5f81815260208181526040808320546001600160401b03168352600382528083208484529091529020805460609190610ea790612885565b826113918161168a565b611399575f80fd5b5f84815260208181526040808320546001600160401b031680845260048352818420888552909252822080549192916113d190612885565b80601f01602080910402602001604051908101604052809291908181526020018280546113fd90612885565b80156114485780601f1061141f57610100808354040283529160200191611448565b820191905f5260205f20905b81548152906001019060200180831161142b57829003601f168201915b505050506001600160401b0384165f9081526004602090815260408083208b8452909152902091925061147e9050858783612901565b50857f8f15ed4b723ef428f250961da8315675b507046737e19319fc1a4d81bfe87f858287876040516114b393929190612b1e565b60405180910390a2505050505050565b816114cd8161168a565b6114d5575f80fd5b6114e483603c61038185611e88565b505050565b60606114f6848484611ccb565b949350505050565b826115088161168a565b611510575f80fd5b5f84815260208181526040808320546001600160401b031683526007825280832087845282528083206001600160e01b031987168085529083529281902080546001600160a01b0319166001600160a01b038716908117909155905190815286917f7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa910160405180910390a350505050565b5f82815260208181526040808320546001600160401b0316835260028252808320858452825280832084845290915290208054606091906115e290612885565b80601f016020809104026020016040519081016040528092919081815260200182805461160e90612885565b80156116595780601f1061163057610100808354040283529160200191611659565b820191905f5260205f20905b81548152906001019060200180831161163c57829003601f168201915b5050505050905092915050565b5f6001600160e01b03198216631674750f60e21b1480610570575061057082611eb8565b5f336001600160a01b037f0000000000000000000000004fbf7b2f171336958be5d15ff762a5cff53635681614806116ea5750336001600160a01b037f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5616145b156116f757506001919050565b6040516302571be360e01b8152600481018390525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa15801561175c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117809190612b4d565b90507f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b0316816001600160a01b031603611845576040516331a9108f60e11b8152600481018490527f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b031690636352211e90602401602060405180830381865afa15801561181e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118429190612b4d565b90505b6001600160a01b03811633148061187e57506001600160a01b0381165f908152600b6020908152604080832033845290915290205460ff165b80610d8c57506001600160a01b0381165f908152600c60209081526040808320868452825280832033845290915290205460ff16610d8c565b6118ff6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261057081611bc9565b602081015181516060916105709161192a9082611edc565b84519190611f33565b60a081015160c08201516060916105709161192a908290612863565b5f81518351148015610d8c5750610d8c835f845f8751611fa7565b865160208801205f61197d878787611f33565b90508315611aa1576001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c168452909152902080546119c690612885565b159050611a23576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611a0783612b68565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091528120611a62916121f9565b897f03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a12078a8a604051611a94929190612b84565b60405180910390a261076c565b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c16845290915290208054611ae290612885565b90505f03611b40576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611b2483612ba9565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091529020611b808282612a5f565b50897f52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b8a8a84604051611bb593929190612bbf565b60405180910390a250505050505050505050565b60c08101516020820181905281515111611be05750565b5f611bf2825f01518360200151611edc565b8260200151611c019190612bed565b8251909150611c109082611fc9565b61ffff166040830152611c24600282612bed565b8251909150611c339082611fc9565b61ffff166060830152611c47600282612bed565b8251909150611c569082611fef565b63ffffffff166080830152611c6c600482612bed565b82519091505f90611c7d9083611fc9565b61ffff169050611c8e600283612bed565b60a084018190529150611ca18183612bed565b60c0909301929092525050565b5f8151601414611cbc575f80fd5b5060200151600160601b900490565b6060816001600160401b03811115611ce557611ce56124c6565b604051908082528060200260200182016040528015611d1857816020015b6060815260200190600190039081611d035790505b5090505f5b82811015611e80578415611dd8575f848483818110611d3e57611d3e612a13565b9050602002810190611d509190612c00565b611d5f91602491600491612c42565b611d6891612c69565b9050858114611dd65760405162461bcd60e51b815260206004820152603460248201527f6d756c746963616c6c3a20416c6c207265636f726473206d7573742068617665604482015273040c240dac2e8c6d0d2dcce40dcc2dacad0c2e6d60631b60648201526084016111b6565b505b5f8030868685818110611ded57611ded612a13565b9050602002810190611dff9190612c00565b604051611e0d929190612876565b5f60405180830381855af49150503d805f8114611e45576040519150601f19603f3d011682016040523d82523d5f602084013e611e4a565b606091505b509150915081611e58575f80fd5b80848481518110611e6b57611e6b612a13565b60209081029190910101525050600101611d1d565b509392505050565b604080516014808252818301909252606091602082018180368337505050600160601b9290920260208301525090565b5f6001600160e01b0319821663c869023360e01b1480610570575061057082612017565b5f815b83518110611eef57611eef612c86565b5f611efa858361203b565b60ff169050611f0a816001612bed565b611f149083612bed565b9150805f03611f235750611f29565b50611edf565b6114f68382612863565b8251606090611f428385612bed565b1115611f4c575f80fd5b5f826001600160401b03811115611f6557611f656124c6565b6040519080825280601f01601f191660200182016040528015611f8f576020820181803683370190505b50905060208082019086860101610a7c82828761205e565b5f611fb38484846120b3565b611fbe8787856120b3565b149695505050505050565b81515f90611fd8836002612bed565b1115611fe2575f80fd5b50016002015161ffff1690565b81515f90611ffe836004612bed565b1115612008575f80fd5b50016004015163ffffffff1690565b5f6001600160e01b0319821663691f343160e01b14806105705750610570826120d5565b5f82828151811061204e5761204e612a13565b016020015160f81c905092915050565b602081106120965781518352612075602084612bed565b9250612082602083612bed565b915061208f602082612863565b905061205e565b905182516020929092036101000a5f190180199091169116179052565b82515f906120c18385612bed565b11156120cb575f80fd5b5091016020012090565b5f6001600160e01b031982166304928c6760e21b14806105705750610570825f6001600160e01b0319821663547d2b4160e11b148061212457506001600160e01b03198216635c98042b60e01b145b806105705750610570825f6001600160e01b0319821663bc1c58d160e01b14806105705750610570825f6001600160e01b03198216631d9dabef60e11b148061217d57506001600160e01b031982166378e5bf0360e11b145b806105705750610570825f6001600160e01b03198216631101d5ab60e11b14806105705750610570825f6001600160e01b0319821663d700ff3360e01b14806105705750610570825f6001600160e01b03198216634fbf043360e01b148061057057506301ffc9a760e01b6001600160e01b0319831614610570565b50805461220590612885565b5f825580601f10612214575050565b601f0160209004905f5260205f20908101906122309190612233565b50565b5b80821115612247575f8155600101612234565b5090565b80356001600160e01b031981168114612262575f80fd5b919050565b5f60208284031215612277575f80fd5b610d8c8261224b565b5f8083601f840112612290575f80fd5b5081356001600160401b038111156122a6575f80fd5b602083019150836020828501011115610bae575f80fd5b5f805f604084860312156122cf575f80fd5b8335925060208401356001600160401b038111156122eb575f80fd5b6122f786828701612280565b9497909650939450505050565b5f805f805f60608688031215612318575f80fd5b8535945060208601356001600160401b0380821115612335575f80fd5b61234189838a01612280565b90965094506040880135915080821115612359575f80fd5b5061236688828901612280565b969995985093965092949392505050565b5f8060408385031215612388575f80fd5b823591506123986020840161224b565b90509250929050565b5f80604083850312156123b2575f80fd5b50508035926020909101359150565b5f5b838110156123db5781810151838201526020016123c3565b50505f910152565b5f81518084526123fa8160208601602086016123c1565b601f01601f19169290920160200192915050565b828152604060208201525f6114f660408301846123e3565b5f805f60608486031215612438575f80fd5b505081359360208301359350604090920135919050565b5f6020828403121561245f575f80fd5b5035919050565b602081525f610d8c60208301846123e3565b5f805f806060858703121561248b575f80fd5b843593506020850135925060408501356001600160401b038111156124ae575f80fd5b6124ba87828801612280565b95989497509550505050565b634e487b7160e01b5f52604160045260245ffd5b5f805f606084860312156124ec575f80fd5b833592506020840135915060408401356001600160401b0380821115612510575f80fd5b818601915086601f830112612523575f80fd5b813581811115612535576125356124c6565b604051601f8201601f19908116603f0116810190838211818310171561255d5761255d6124c6565b81604052828152896020848701011115612575575f80fd5b826020860160208301375f6020848301015280955050505050509250925092565b6001600160a01b0381168114612230575f80fd5b80358015158114612262575f80fd5b5f80604083850312156125ca575f80fd5b82356125d581612596565b9150612398602084016125aa565b5f805f606084860312156125f5575f80fd5b83359250602084013561260781612596565b9150612615604085016125aa565b90509250925092565b5f805f60608486031215612630575f80fd5b8335925060208401359150604084013561ffff8116811461264f575f80fd5b809150509250925092565b5f805f6060848603121561266c575f80fd5b833561267781612596565b925060208401359150604084013561264f81612596565b5f8083601f84011261269e575f80fd5b5081356001600160401b038111156126b4575f80fd5b6020830191508360208260051b8501011115610bae575f80fd5b5f80602083850312156126df575f80fd5b82356001600160401b038111156126f4575f80fd5b6127008582860161268e565b90969095509350505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b8281101561276157603f1988860301845261274f8583516123e3565b94509285019290850190600101612733565b5092979650505050505050565b5f806040838503121561277f575f80fd5b82359150602083013561279181612596565b809150509250929050565b5f805f604084860312156127ae575f80fd5b8335925060208401356001600160401b038111156127ca575f80fd5b6122f78682870161268e565b5f805f606084860312156127e8575f80fd5b833592506127f86020850161224b565b9150604084013561264f81612596565b5f8060408385031215612819575f80fd5b823561282481612596565b9150602083013561279181612596565b5f82516128458184602087016123c1565b9190910192915050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156105705761057061284f565b818382375f9101908152919050565b600181811c9082168061289957607f821691505b6020821081036128b757634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156114e457805f5260205f20601f840160051c810160208510156128e25750805b601f840160051c820191505b81811015611149575f81556001016128ee565b6001600160401b03831115612918576129186124c6565b61292c836129268354612885565b836128bd565b5f601f84116001811461295d575f85156129465750838201355b5f19600387901b1c1916600186901b178355611149565b5f83815260208120601f198716915b8281101561298c578685013582556020948501946001909201910161296c565b50868210156129a8575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b604081525f6129f56040830186886129ba565b8281036020840152612a088185876129ba565b979650505050505050565b634e487b7160e01b5f52603260045260245ffd5b602081525f6114f66020830184866129ba565b5f6001600160401b03808316818103612a5557612a5561284f565b6001019392505050565b81516001600160401b03811115612a7857612a786124c6565b612a8c81612a868454612885565b846128bd565b602080601f831160018114612abf575f8415612aa85750858301515b5f19600386901b1c1916600185901b178555612b16565b5f85815260208120601f198616915b82811015612aed57888601518255948401946001909101908401612ace565b5085821015612b0a57878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b604081525f612b3060408301866123e3565b8281036020840152612b438185876129ba565b9695505050505050565b5f60208284031215612b5d575f80fd5b8151610d8c81612596565b5f61ffff821680612b7b57612b7b61284f565b5f190192915050565b604081525f612b9660408301856123e3565b905061ffff831660208301529392505050565b5f61ffff808316818103612a5557612a5561284f565b606081525f612bd160608301866123e3565b61ffff851660208401528281036040840152612b4381856123e3565b808201808211156105705761057061284f565b5f808335601e19843603018112612c15575f80fd5b8301803591506001600160401b03821115612c2e575f80fd5b602001915036819003821315610bae575f80fd5b5f8085851115612c50575f80fd5b83861115612c5c575f80fd5b5050820193919092039150565b80356020831015610570575f19602084900360031b1b1692915050565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{}},"0xf3810eb7d64d1c11ae12727d957c6202b24492f5":{"nonce":1,"balance":"0x0","code":"0x6080604052348015600e575f80fd5b50600436106030575f3560e01c806350d25bcd146034578063e5c19b2d146048575b5f80fd5b5f5460405190815260200160405180910390f35b605760533660046059565b5f55565b005b5f602082840312156068575f80fd5b503591905056fea164736f6c6343000818000a","storage":{"0x0":"0x5f5e100"}},"0xf670681605efc4efc804f5a9b97ee89520473d56":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c80638da5cb5b11610088578063c66485b211610063578063c66485b2146101da578063da8c229e146101ed578063e0dba60f1461021f578063f2fde38b14610232575f80fd5b80638da5cb5b146101a4578063bffbe61c146101b4578063c47f0027146101c7575f80fd5b806365669631116100c35780636566963114610161578063715018a6146101745780637a806d6b1461017e578063828eab0e14610191575f80fd5b80630f5a5466146100e95780631e83409a1461010f5780633f15457f14610122575b5f80fd5b6100fc6100f7366004610958565b610245565b6040519081526020015b60405180910390f35b6100fc61011d36600461098f565b610258565b6101497f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a981565b6040516001600160a01b039091168152602001610106565b6100fc61016f3660046109aa565b610279565b61017c610526565b005b6100fc61018c366004610a8f565b610539565b600254610149906001600160a01b031681565b5f546001600160a01b0316610149565b6100fc6101c236600461098f565b6105ae565b6100fc6101d5366004610b00565b610608565b61017c6101e836600461098f565b610624565b61020f6101fb36600461098f565b60016020525f908152604090205460ff1681565b6040519015158152602001610106565b61017c61022d366004610b47565b6106e4565b61017c61024036600461098f565b61074a565b5f610251338484610279565b9392505050565b6002545f9061027390339084906001600160a01b0316610279565b92915050565b5f836001600160a01b0381163314806102a05750335f9081526001602052604090205460ff165b80610334575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063e985e9c590604401602060405180830381865afa158015610310573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103349190610b73565b806103435750610343816107c3565b6103e05760405162461bcd60e51b815260206004820152605b60248201527f526576657273655265676973747261723a2043616c6c6572206973206e6f742060448201527f6120636f6e74726f6c6c6572206f7220617574686f726973656420627920616460648201527f6472657373206f7220746865206164647265737320697473656c660000000000608482015260a4015b60405180910390fd5b5f6103ea8661083a565b604080517f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e2602080830191909152818301849052825180830384018152606090920192839052815191012091925081906001600160a01b038916907f6ada868dd3058cf77a48a74489fd7963688e5464b2b0fa957ace976243270e92905f90a36040516305ef2c7f60e41b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26004820152602481018390526001600160a01b03878116604483015286811660648301525f60848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610505575f80fd5b505af1158015610517573d5f803e3d5ffd5b50929998505050505050505050565b61052e61089c565b6105375f6108f5565b565b5f80610546868686610279565b604051637737221360e01b81529091506001600160a01b038516906377372213906105779084908790600401610b8e565b5f604051808303815f87803b15801561058e575f80fd5b505af11580156105a0573d5f803e3d5ffd5b509298975050505050505050565b5f7f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26105d98361083a565b604080516020810193909352820152606001604051602081830303815290604052805190602001209050919050565b6002545f9061027390339081906001600160a01b031685610539565b61062c61089c565b6001600160a01b03811661069b5760405162461bcd60e51b815260206004820152603060248201527f526576657273655265676973747261723a205265736f6c76657220616464726560448201526f07373206d757374206e6f7420626520360841b60648201526084016103d7565b600280546001600160a01b0319166001600160a01b0383169081179091556040517feae17a84d9eb83d8c8eb317f9e7d64857bc363fa51674d996c023f4340c577cf905f90a250565b6106ec61089c565b6001600160a01b0382165f81815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b61075261089c565b6001600160a01b0381166107b75760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016103d7565b6107c0816108f5565b50565b5f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801561081e575060408051601f3d908101601f1916820190925261081b91810190610be2565b60015b61082957505f919050565b6001600160a01b0316331492915050565b5f60285b8015610891575f19016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a81536010909204915f19016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a815360108304925061083e565b505060285f20919050565b5f546001600160a01b031633146105375760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016103d7565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146107c0575f80fd5b5f8060408385031215610969575f80fd5b823561097481610944565b9150602083013561098481610944565b809150509250929050565b5f6020828403121561099f575f80fd5b813561025181610944565b5f805f606084860312156109bc575f80fd5b83356109c781610944565b925060208401356109d781610944565b915060408401356109e781610944565b809150509250925092565b634e487b7160e01b5f52604160045260245ffd5b5f82601f830112610a15575f80fd5b813567ffffffffffffffff80821115610a3057610a306109f2565b604051601f8301601f19908116603f01168101908282118183101715610a5857610a586109f2565b81604052838152866020858801011115610a70575f80fd5b836020870160208301375f602085830101528094505050505092915050565b5f805f8060808587031215610aa2575f80fd5b8435610aad81610944565b93506020850135610abd81610944565b92506040850135610acd81610944565b9150606085013567ffffffffffffffff811115610ae8575f80fd5b610af487828801610a06565b91505092959194509250565b5f60208284031215610b10575f80fd5b813567ffffffffffffffff811115610b26575f80fd5b610b3284828501610a06565b949350505050565b80151581146107c0575f80fd5b5f8060408385031215610b58575f80fd5b8235610b6381610944565b9150602083013561098481610b3a565b5f60208284031215610b83575f80fd5b815161025181610b3a565b8281525f60206040602084015283518060408501525f5b81811015610bc157858101830151858201606001528201610ba5565b505f606082860101526060601f19601f830116850101925050509392505050565b5f60208284031215610bf2575f80fd5b81516102518161094456fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2":"0x9df67c91f1bfcb4d966cf764e9218685e7c59e8a","0x1f5b7623941da966ad7183d9cbb6db584f6d4add26919ac31a2d3f19a164e7e1":"0x1","0xbe5de2149ce76ca5934fa63455cd675fd52e2d30f3328985d298a627ca0f05e9":"0x1"}},"0xf8c26340c1eaea6c7ff1760b25005e1306953572":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061010b5760003560e01c80638c87a4ea116100a2578063b87abc1111610071578063b87abc1114610244578063c597407314610257578063ce92b33e1461026a578063e837ae741461027d578063ec129eea146102905761010b565b80638c87a4ea146101ea5780638f69c188146101fd578063a3557e6c14610210578063b85afd28146102235761010b565b806347c81699116100de57806347c8169914610181578063672b9f81146101945780636ccbae5f146101b55780637b103999146101d55761010b565b80631bd8cc1a146101105780631be5e7ed146101395780632c3d376d14610159578063310bd74b1461016c575b600080fd5b61012361011e3660046117b4565b6102a3565b6040516101309190611eee565b60405180910390f35b61014c610147366004611aec565b6104f2565b6040516101309190611fd6565b61014c610167366004611b21565b610673565b61017f61017a366004611b21565b610714565b005b61017f61018f3660046119b5565b6107c0565b6101a76101a2366004611b94565b6108ef565b604051610130929190611fe7565b6101c86101c3366004611b21565b6109c3565b604051610130919061204c565b6101dd6109d5565b6040516101309190611ea9565b6101236101f836600461191d565b6109e5565b61017f61020b366004611878565b610a74565b61017f61021e366004611878565b610af0565b610236610231366004611951565b610b1b565b604051610130929190611eff565b61017f610252366004611b3f565b610ca9565b61017f610265366004611a39565b610d43565b61017f610278366004611808565b610df9565b61017f61028b366004611808565b610e97565b61017f61029e366004611808565b610f4e565b60015460405163b3f9e4cb60e01b815260609183916001600160a01b039091169063b3f9e4cb906102d890849060040161204c565b60206040518083038186803b1580156102f057600080fd5b505afa158015610304573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610328919081019061178e565b6001600160a01b0316306001600160a01b0316146103615760405162461bcd60e51b81526004016103589061201c565b60405180910390fd5b604080518581526020808702820101909152849060609082801561039957816020015b60608152602001906001900390816103845790505b506000868152600360205260408120549192505b838110156104e557600087815260026020908152604080832085845290915290208989838181106103da57fe5b602002820190508035601e19368490030181126103f657600080fd5b909101602081019150356001600160401b0381111561041457600080fd5b3681900382131561042457600080fd5b604051610432929190611e70565b9081526040805160209281900383018120805460026001821615610100026000190190911604601f810185900485028301850190935282825290929091908301828280156104c15780601f10610496576101008083540402835291602001916104c1565b820191906000526020600020905b8154815290600101906020018083116104a457829003601f168201915b50505050508382815181106104d257fe5b60209081029190910101526001016103ad565b5090979650505050505050565b60015460405163b3f9e4cb60e01b815260609183916001600160a01b039091169063b3f9e4cb9061052790849060040161204c565b60206040518083038186803b15801561053f57600080fd5b505afa158015610553573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610577919081019061178e565b6001600160a01b0316306001600160a01b0316146105a75760405162461bcd60e51b81526004016103589061201c565b6000838152600260209081526040808320600383528184205484529091529081902090516105d6908690611e7d565b9081526040805160209281900383018120805460026001821615610100026000190190911604601f810185900485028301850190935282825290929091908301828280156106655780601f1061063a57610100808354040283529160200191610665565b820191906000526020600020905b81548152906001019060200180831161064857829003601f168201915b505050505091505092915050565b60008181526004602090815260409182902080548351601f60026000196101006001861615020190931692909204918201849004840281018401909452808452606093928301828280156107085780601f106106dd57610100808354040283529160200191610708565b820191906000526020600020905b8154815290600101906020018083116106eb57829003601f168201915b50505050509050919050565b60015460405163430c208160e01b815282916001600160a01b03169063430c2081906107469033908590600401611ec5565b60206040518083038186803b15801561075e57600080fd5b505afa158015610772573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506107969190810190611997565b6107b25760405162461bcd60e51b81526004016103589061202c565b6107bc4283610fec565b5050565b60015460405163430c208160e01b815282916001600160a01b03169063430c2081906107f29033908590600401611ec5565b60206040518083038186803b15801561080a57600080fd5b505afa15801561081e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506108429190810190611997565b61085e5760405162461bcd60e51b81526004016103589061202c565b6108e7600360008481526020019081526020016000205487878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061108e915050565b505050505050565b60015460405163b3f9e4cb60e01b8152606091829184916001600160a01b03169063b3f9e4cb9061092490849060040161204c565b60206040518083038186803b15801561093c57600080fd5b505afa158015610950573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610974919081019061178e565b6001600160a01b0316306001600160a01b0316146109a45760405162461bcd60e51b81526004016103589061201c565b6109ad85610673565b92506109b983856104f2565b9150509250929050565b60009081526020819052604090205490565b6001546001600160a01b03165b90565b6060600082519050606081604051908082528060200260200182016040528015610a2357816020015b6060815260200190600190039081610a0e5790505b50905060005b82811015610a6c57610a4d858281518110610a4057fe5b6020026020010151610673565b828281518110610a5957fe5b6020908102919091010152600101610a29565b509392505050565b610acf63ce92b33e60e01b858585604051602401610a9493929190611f24565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092178252519020838361129f565b600082815260036020526040902054610aea908585856113c3565b50505050565b610b1063ec129eea60e01b858585604051602401610a9493929190611f24565b610aea84848461140a565b60015460405163b3f9e4cb60e01b8152606091829184916001600160a01b03169063b3f9e4cb90610b5090849060040161204c565b60206040518083038186803b158015610b6857600080fd5b505afa158015610b7c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610ba0919081019061178e565b6001600160a01b0316306001600160a01b031614610bd05760405162461bcd60e51b81526004016103589061201c565b8451604080518281526020808402820101909152818015610c0557816020015b6060815260200190600190039081610bf05790505b50935080604051908082528060200260200182016040528015610c3c57816020015b6060815260200190600190039081610c275790505b50925060005b81811015610c9f57610c67878281518110610c5957fe5b6020026020010151876108ef565b8651879084908110610c7557fe5b60200260200101868481518110610c8857fe5b602090810291909101019190915252600101610c42565b5050509250929050565b610d3463310bd74b60e01b84604051602401610cc5919061204c565b60408051601f19818403018152918152602080830180516001600160e01b03166001600160e01b031990951694909417845291519092208251601f8601839004830281018301909352848352918691869086908190840183828082843760009201919091525061129f92505050565b610d3e4284610fec565b505050565b610d676347c8169960e01b8888888888604051602401610cc5959493929190611f96565b610df0600360008581526020019081526020016000205488888080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8c018190048102820181019092528a815292508a915089908190840183828082843760009201919091525089925061108e915050565b50505050505050565b60015460405163430c208160e01b815282916001600160a01b03169063430c208190610e2b9033908590600401611ec5565b60206040518083038186803b158015610e4357600080fd5b505afa158015610e57573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610e7b9190810190611997565b610acf5760405162461bcd60e51b81526004016103589061202c565b6005546040516355138f0d60e11b81526001600160a01b039091169063aa271e1a90610ec7903390600401611eb7565b60206040518083038186803b158015610edf57600080fd5b505afa158015610ef3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610f179190810190611997565b610f335760405162461bcd60e51b81526004016103589061203c565b600081815260036020526040902054610d3e908484846113c3565b60015460405163430c208160e01b815282916001600160a01b03169063430c208190610f809033908590600401611ec5565b60206040518083038186803b158015610f9857600080fd5b505afa158015610fac573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610fd09190810190611997565b610b105760405162461bcd60e51b81526004016103589061202c565b600081815260036020526040808220849055600154905163538361a760e01b81526001600160a01b039091169163538361a79161102d91859160040161205a565b600060405180830381600087803b15801561104757600080fd5b505af115801561105b573d6000803e3d6000fd5b50506040518392507f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9150600090a25050565b825160208085019190912060008381526002835260408082208883529093528281209251919290916110c1908790611e7d565b908152604051602091819003919091018120546001805463538361a760e01b84526002918316156101000260001901909216041592506001600160a01b03169063538361a7906111179086908690600401612075565b600060405180830381600087803b15801561113157600080fd5b505af1158015611145573d6000803e3d6000fd5b50505060008481526002602090815260408083208a8452909152908190209051869250611173908890611e7d565b90815260200160405180910390209080519060200190611194929190611521565b50600082815260046020526040902054600260001961010060018416150201909116046111dc57600082815260046020908152604090912086516111da92880190611521565b505b801561123157846040516111f09190611e7d565b6040518091039020837f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f86876040516112289190611fd6565b60405180910390a35b8360405161123f9190611e7d565b6040518091039020856040516112559190611e7d565b6040518091039020847f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d92888860405161128f929190611fe7565b60405180910390a4505050505050565b6000828152602081815260408083205490519092916112f59185916112e9916112ce918a913091899101611e39565b60405160208183030381529060405280519060200120611414565b9063ffffffff61144416565b90506001600160a01b0381161580159061138c575060015460405163430c208160e01b81526001600160a01b039091169063430c20819061133c9084908890600401611ee0565b60206040518083038186803b15801561135457600080fd5b505afa158015611368573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061138c9190810190611997565b6113a85760405162461bcd60e51b81526004016103589061200c565b50505060009081526020819052604090208054600101905550565b825160005b818110156108e757611402868683815181106113e057fe5b60200260200101518684815181106113f457fe5b60200260200101518661108e565b6001016113c8565b610f334282610fec565b6000816040516020016114279190611e89565b604051602081830303815290604052805190602001209050919050565b600081516041146114575750600061151b565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a082111561149d576000935050505061151b565b8060ff16601b141580156114b557508060ff16601c14155b156114c6576000935050505061151b565b600186828585604051600081526020016040526040516114e99493929190611f58565b6020604051602081039080840390855afa15801561150b573d6000803e3d6000fd5b5050506020604051035193505050505b92915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061156257805160ff191683800117855561158f565b8280016001018555821561158f579182015b8281111561158f578251825591602001919060010190611574565b5061159b92915061159f565b5090565b6109e291905b8082111561159b57600081556001016115a5565b805161151b816121a4565b60008083601f8401126115d657600080fd5b5081356001600160401b038111156115ed57600080fd5b60208301915083602082028301111561160557600080fd5b9250929050565b600082601f83011261161d57600080fd5b813561163061162b826120a9565b612083565b81815260209384019390925082018360005b8381101561166e57813586016116588882611734565b8452506020928301929190910190600101611642565b5050505092915050565b600082601f83011261168957600080fd5b813561169761162b826120a9565b915081818352602084019350602081019050838560208402820111156116bc57600080fd5b60005b8381101561166e57816116d28882611783565b84525060209283019291909101906001016116bf565b805161151b816121bb565b60008083601f84011261170557600080fd5b5081356001600160401b0381111561171c57600080fd5b60208301915083600182028301111561160557600080fd5b600082601f83011261174557600080fd5b813561175361162b826120c9565b9150808252602083016020830185838301111561176f57600080fd5b61177a83828461214b565b50505092915050565b803561151b816121c4565b6000602082840312156117a057600080fd5b60006117ac84846115b9565b949350505050565b6000806000604084860312156117c957600080fd5b83356001600160401b038111156117df57600080fd5b6117eb868287016115c4565b935093505060206117fe86828701611783565b9150509250925092565b60008060006060848603121561181d57600080fd5b83356001600160401b0381111561183357600080fd5b61183f8682870161160c565b93505060208401356001600160401b0381111561185b57600080fd5b6118678682870161160c565b92505060406117fe86828701611783565b6000806000806080858703121561188e57600080fd5b84356001600160401b038111156118a457600080fd5b6118b08782880161160c565b94505060208501356001600160401b038111156118cc57600080fd5b6118d88782880161160c565b93505060406118e987828801611783565b92505060608501356001600160401b0381111561190557600080fd5b61191187828801611734565b91505092959194509250565b60006020828403121561192f57600080fd5b81356001600160401b0381111561194557600080fd5b6117ac84828501611678565b6000806040838503121561196457600080fd5b82356001600160401b0381111561197a57600080fd5b61198685828601611678565b92505060206109b985828601611783565b6000602082840312156119a957600080fd5b60006117ac84846116e8565b6000806000806000606086880312156119cd57600080fd5b85356001600160401b038111156119e357600080fd5b6119ef888289016116f3565b955095505060208601356001600160401b03811115611a0d57600080fd5b611a19888289016116f3565b93509350506040611a2c88828901611783565b9150509295509295909350565b60008060008060008060006080888a031215611a5457600080fd5b87356001600160401b03811115611a6a57600080fd5b611a768a828b016116f3565b975097505060208801356001600160401b03811115611a9457600080fd5b611aa08a828b016116f3565b95509550506040611ab38a828b01611783565b93505060608801356001600160401b03811115611acf57600080fd5b611adb8a828b016116f3565b925092505092959891949750929550565b60008060408385031215611aff57600080fd5b82356001600160401b03811115611b1557600080fd5b61198685828601611734565b600060208284031215611b3357600080fd5b60006117ac8484611783565b600080600060408486031215611b5457600080fd5b6000611b608686611783565b93505060208401356001600160401b03811115611b7c57600080fd5b611b88868287016116f3565b92509250509250925092565b60008060408385031215611ba757600080fd5b60006119868585611783565b6000611bbf8383611ccb565b9392505050565b611bcf8161212a565b82525050565b611bcf81612108565b611bcf611bea82612108565b612183565b6000611bfa826120f6565b611c0481856120fa565b935083602082028501611c16856120f0565b8060005b85811015611c505784840389528151611c338582611bb3565b9450611c3e836120f0565b60209a909a0199925050600101611c1a565b5091979650505050505050565b611bcf816109e2565b611bcf611c72826109e2565b6109e2565b611bcf81612135565b6000611c8c83856120fa565b9350611c9983858461214b565b611ca283612194565b9093019392505050565b6000611cb88385612103565b9350611cc583858461214b565b50500190565b6000611cd6826120f6565b611ce081856120fa565b9350611cf0818560208601612157565b611ca281612194565b6000611d04826120f6565b611d0e8185612103565b9350611d1e818560208601612157565b9290920192915050565b6000611d35601c83612103565b7f19457468657265756d205369676e6564204d6573736167653a0a3332000000008152601c0192915050565b6000611d6e6011836120fa565b70494e56414c49445f5349474e415455524560781b815260200192915050565b6000611d9b601d836120fa565b7f5245534f4c5645525f44455441434845445f46524f4d5f444f4d41494e000000815260200192915050565b6000611dd4601f836120fa565b7f53454e4445525f49535f4e4f545f415050524f5645445f4f525f4f574e455200815260200192915050565b6000611e0d6014836120fa565b7329a2a72222a92fa4a9afa727aa2fa6a4a72a22a960611b815260200192915050565b611bcf81612124565b6000611e458286611c66565b602082019150611e558285611bde565b601482019150611e658284611c66565b506020019392505050565b60006117ac828486611cac565b6000611bbf8284611cf9565b6000611e9482611d28565b9150611ea08284611c66565b50602001919050565b6020810161151b8284611bd5565b6020810161151b8284611bc6565b60408101611ed38285611bc6565b611bbf6020830184611c5d565b60408101611ed38285611bd5565b60208082528101611bbf8184611bef565b60408082528101611f108185611bef565b905081810360208301526117ac8184611bef565b60608082528101611f358186611bef565b90508181036020830152611f498185611bef565b90506117ac6040830184611c5d565b60808101611f668287611c5d565b611f736020830186611e30565b611f806040830185611c5d565b611f8d6060830184611c5d565b95945050505050565b60608082528101611fa8818789611c80565b90508181036020830152611fbd818587611c80565b9050611fcc6040830184611c5d565b9695505050505050565b60208082528101611bbf8184611ccb565b60408082528101611ff88185611ccb565b905081810360208301526117ac8184611ccb565b6020808252810161151b81611d61565b6020808252810161151b81611d8e565b6020808252810161151b81611dc7565b6020808252810161151b81611e00565b6020810161151b8284611c5d565b604081016120688285611c5d565b611bbf6020830184611c77565b60408101611ed38285611c5d565b6040518181016001600160401b03811182821017156120a157600080fd5b604052919050565b60006001600160401b038211156120bf57600080fd5b5060209081020190565b60006001600160401b038211156120df57600080fd5b506020601f91909101601f19160190565b60200190565b5190565b90815260200190565b919050565b600061151b82612118565b151590565b6001600160a01b031690565b60ff1690565b600061151b82612140565b600061151b826109e2565b600061151b82612108565b82818337506000910152565b60005b8381101561217257818101518382015260200161215a565b83811115610aea5750506000910152565b600061151b82600061151b8261219e565b601f01601f191690565b60601b90565b6121ad81612108565b81146121b857600080fd5b50565b6121ad81612113565b6121ad816109e256fea365627a7a723158207a1d8dfd286d14fcafd1812a4c44813691ac746a5a23fa711ac5551c9509654d6c6578706572696d656e74616cf564736f6c634300050c0040","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x5":"0x4a3c194eb88966178bfdd81744dddafed611b830"}},"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa":{"nonce":93,"balance":"0x35aac60bbae01d424b","code":"0x","storage":{}}},"best_block_number":"0x5d"} \ No newline at end of file +{"block":{"number":"0x5d","coinbase":"0x0000000000000000000000000000000000000000","timestamp":"0x664db842","gas_limit":"0x6691b7","basefee":"0x1b818","difficulty":"0x0","prevrandao":"0x0000000000000000000000000000000000000000000000000000000000000000","blob_excess_gas_and_price":{"excess_blob_gas":0,"blob_gasprice":1}},"accounts":{"0x0000000000000000000000000000000000000000":{"nonce":0,"balance":"0xc968d22370860","code":"0x","storage":{}},"0x00e39a5004299871ab3b00fed5a39a715f181d02":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x66":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x67":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xd178b720229c39de617846f84cf9c8d32a63a23d","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0x0458f653495fb8d9bd0e7df468c2bf76d26c7bd9":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f7e83aee1461002d575b5f80fd5b61004061003b3660046105ba565b610054565b604051901515815260200160405180910390f35b5f601482146100a95760405162461bcd60e51b815260206004820152601860248201527f496e76616c696420736861312068617368206c656e6774680000000000000000604482015260640160405180910390fd5b5f6100ec5f85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101599050565b6bffffffffffffffffffffffff191690505f61013c87878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061018a92505050565b6bffffffffffffffffffffffff1916919091149695505050505050565b81515f90610168836014610621565b1115610172575f80fd5b5001602001516bffffffffffffffffffffffff191690565b5f6040518251602084019350604067ffffffffffffffc0600183011601600982820310600181036101bc576040820191505b50776745230100efcdab890098badcfe001032547600c3d2e1f061020d565b5f8383101561020657508082015192829003926020841015610206575f1960208590036101000a0119165b9392505050565b5f5b82811015610514576102228482896101db565b85526102328460208301896101db565b60208601526040818503106001810361024e5760808286038701535b506040830381146001810361026b57602086018051600887021790525b5060405b60808110156102f357858101603f19810151603719820151601f19830151600b198401516002911891909218189081027ffffffffefffffffefffffffefffffffefffffffefffffffefffffffefffffffe1663800000009091047c010000000100000001000000010000000100000001000000010000000116179052600c0161026f565b5060805b61014081101561037c57858101607f19810151606f19820151603f198301516017198401516004911891909218189081027ffffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffc1663400000009091047c0300000003000000030000000300000003000000030000000300000003161790526018016102f7565b50815f805f5b60508110156104ea576014810480156103b257600181146103d957600281146103fe576003811461042857610449565b600160281b8504600160501b86048118600160781b870416189350635a8279999250610449565b600160281b8504600160781b8604600160501b870418189350636ed9eba19250610449565b600160501b8504600160781b8604818117600160281b8804169116179350638f1bbcdc9250610449565b600160281b8504600160781b8604600160501b87041818935063ca62c1d692505b50601f600160bb1b8504168063ffffffe06001609b1b87041617905080840190508063ffffffff8616019050808301905080600160e01b600484028c015104019050600160a01b8102600160281b860417945050600160501b633fffffff600160521b86041663c00000006604000000000000870416170277ffffffff00ffffffff000000000000ffffffff00ffffffff8516179350600181019050610382565b5050509190910177ffffffff00ffffffff00ffffffff00ffffffff00ffffffff169060400161020f565b50600160601b63ffffffff821667ffffffff000000006101008404166bffffffff00000000000000006201000085041663ffffffff60601b630100000086041663ffffffff60801b6401000000008704161717171702945050505050919050565b5f8083601f840112610585575f80fd5b50813567ffffffffffffffff81111561059c575f80fd5b6020830191508360208285010111156105b3575f80fd5b9250929050565b5f805f80604085870312156105cd575f80fd5b843567ffffffffffffffff808211156105e4575f80fd5b6105f088838901610575565b90965094506020870135915080821115610608575f80fd5b5061061587828801610575565b95989497509550505050565b8082018082111561064057634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x06e2822b8856749ed179c77140dbc5f5a27410a4":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063de8f50a11461002d575b5f80fd5b61004061003b36600461051c565b610054565b604051901515815260200160405180910390f35b5f6060805f61009c60048b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506102e79050565b60ff1690508015610166576100f060058261ffff168c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b925061015f6101008260056105c3565b61ffff908116906005906101169085168d6105e5565b61012091906105e5565b8c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b915061021d565b6101a960058b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250929392505061038b9050565b90506101f460078261ffff168c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b925061021a6102048260076105c3565b61ffff908116906007906101169085168d6105e5565b91505b5f606061026084868a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152506103b192505050565b90925090508180156102d757506102856020825161027e91906105e5565b82906103cb565b60028b8b6040516102979291906105f8565b602060405180830381855afa1580156102b2573d5f803e3d5ffd5b5050506040513d601f19601f820116820180604052508101906102d59190610607565b145b9c9b505050505050505050505050565b5f8282815181106102fa576102fa61061e565b016020015160f81c90505b92915050565b825160609061031a8385610632565b1115610324575f80fd5b5f8267ffffffffffffffff81111561033e5761033e610645565b6040519080825280601f01601f191660200182016040528015610368576020820181803683370190505b509050602080820190868601016103808282876103ed565b509095945050505050565b81515f9061039a836002610632565b11156103a4575f80fd5b50016002015161ffff1690565b5f60606103bf838587610442565b91509150935093915050565b81515f906103da836020610632565b11156103e4575f80fd5b50016020015190565b602081106104255781518352610404602084610632565b9250610411602083610632565b915061041e6020826105e5565b90506103ed565b905182516020929092036101000a5f190180199091169116179052565b5f60605f85518551855188888860405160200161046496959493929190610686565b6040516020818303038152906040529050835167ffffffffffffffff81111561048f5761048f610645565b6040519080825280601f01601f1916602001820160405280156104b9576020820181803683370190505b50915083516020830182516020840160055afa925050935093915050565b5f8083601f8401126104e7575f80fd5b50813567ffffffffffffffff8111156104fe575f80fd5b602083019150836020828501011115610515575f80fd5b9250929050565b5f805f805f8060608789031215610531575f80fd5b863567ffffffffffffffff80821115610548575f80fd5b6105548a838b016104d7565b9098509650602089013591508082111561056c575f80fd5b6105788a838b016104d7565b90965094506040890135915080821115610590575f80fd5b5061059d89828a016104d7565b979a9699509497509295939492505050565b634e487b7160e01b5f52601160045260245ffd5b61ffff8181168382160190808211156105de576105de6105af565b5092915050565b81810381811115610305576103056105af565b818382375f9101908152919050565b5f60208284031215610617575f80fd5b5051919050565b634e487b7160e01b5f52603260045260245ffd5b80820180821115610305576103056105af565b634e487b7160e01b5f52604160045260245ffd5b5f81515f5b81811015610678576020818501810151868301520161065e565b505f93019283525090919050565b8681528560208201528460408201525f6106b56106af6106a96060850188610659565b86610659565b84610659565b9897505050505050505056fea164736f6c6343000818000a","storage":{}},"0x0712e8e819712c3bfdb098ce51c87a4ac0296fd8":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x0930ffb2c192b0c9a9dd2372cf7f2845ef39cbb6":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x65":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x66":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xbe92182cab5b84fd18b34881a0c32771e84f5b8b","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c8121905":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x107733fed96c4cd390c944a31f5425a7fb98ae5e":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x65":"0x556e73746f707061626c6520446f6d61696e7300000000000000000000000026","0x66":"0x5544000000000000000000000000000000000000000000000000000000000004","0x133":"0x68747470733a2f2f6578616d706c652e636f6d2f000000000000000000000028","0x134":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x9c74364589a7bce52d7a232f90c98b979577d9ab711dbe7e9fb985471178bff":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf29a433ca043c2d5f13825944af9d019209f338df87172c6b8012dce3044881":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf319a2ef598111826b455194189a27454a0286226eb066e1116f605e0373b37":"0x0","0x1257bbdf5bed452b3eda1d974a9839972d4d54d7fb1cde6a652e653346cc29b8":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x12c033f2252861b1bd15e9b5c71ef1cf26ca53de15eabc3b49e06f596e8755ec":"0x0","0x1348552952ac59b1c2522e84f684e36775420b449eddcdbd28f217183ed58b09":"0x0","0x149026695ebdd2bd6be0a7006aec5d10ddffbe46be181e4468980ea83c004fe9":"0x0","0x14c854a78d51371251661a408306c75d2515b5d509b295a58205e48267082bdc":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x18f06622a1abedc7bb78fcc98b2375188aef6c03b9247beee780b0b095d60285":"0x0","0x201ef5e312d372e2aeac4cf173b46ad2985127c7381f4f9acae5ebbd3a5e3861":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x2215c0abaeffcb5feae8a439b3185f8fba5dd6d97529a56c7609cd41fafdf5f1":"0x1","0x23513200931f98893f46373666c13964c7a821c5b40da7951b921629acf02735":"0x0","0x23f87654b79c6db28828f317e47d0c8deb9eaa2ea4e213fef901836c85036bf3":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x2e4566d865f2e159531492d7643e25e502917762b29082282ab9dfee8fbf54c7":"0x0","0x31fc31c15d389c5908095d314bb8b258352d51e18ac8a2f7fe15f3a0af519145":"0x0","0x3467fdbb447be3074b11c625b56e54d7ab44f3804bef205b07dd436d707d06d5":"0x0","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x62b11ad5f582a5c5d378fb310125b030042554f1","0x3cd80e7291e5f6dffa9af6eb70d47145a8fdd40acb8d09dfd0cf374e8c239b37":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x3f86c4990e663ffa5011ed38824fca68af7e0592eb22f41aebdec0ce84ee672e":"0x0","0x406aa3bf31381c8a323679af48792dfa2e7aa09dd0eb919e307dc4bf84216ff6":"0x0","0x47ce17acd30cc86e021ac7b23be8138ea767f6da503362aac5888a0679270eed":"0x0","0x4a7983c36f64e6df4d467cf706c128c273d30c24bbb172e251a5740624cc0bd3":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x4c42d98041cda7cb7d56b5d04731bd436366eb9f05c30f43671f1d1e2c0b0fa4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x55926eed7087c8cbfa1492f6d367f5e4c14c8d8cd59e2918c37184091369efb1":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x5b20f40cb5e9e634a90df9a72b516c11cc52281a4d1b7b67e672e2fe544ff22f":"0x0","0x6dac3e1cfae338e10c9c2f5000f6256d09afa83708761042001cea734f470ac1":"0x0","0x6defc32a546a6fb1b745bd1bb04e27085e94f01d7ef79587aee2c80853c43a53":"0x0","0x760b245be050a725a39b4fc089ad474a5fd40efa17101e112d30195d590779b4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x7bee59fcac76da32acb23def57eaaf959a4372a4fc180978fbd54f7a4c4b2f3d":"0x0","0x804aee9448e0b539a009ee7c6dd57e686c72e7b182e9622a42922b245a97e61e":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x825f7f8567cfd669c3beab41edff07d4aa51436123deeb0d3623b6a8fdec893c":"0x0","0x8717a3236e6a948df94444f035834fa8f7c5ee663a29f3580f3ef43ab051d6bd":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8a34e37883baf84417a33bb02eec8d1e43e363f617029800ff166614df3f112f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8bd1acdc45b63f1edf5db0b1444f1c4a6f82bf0a5a0a7231c2dd7b76a2b1e35c":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87":"0x0","0x8ed4e9fbdf86edd9f3eb1c8d4fbfc53a2eb863faf4cf5e0d2b307c0b33030091":"0x0","0x8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x90d72780b77edcd0c8daffbac0b21264679e851b734cb090e2b144eb3a28bb98":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x93fc964857984ff804a65eaceac4062669948f2b651ddc6b71373ad142bf45e0":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x9770fa903e700367e0306ab8fd70a2bb4f049417d341a2f8a2409d8d6a2218d1":"0x0","0xb1016fe231c2ed9dba8c95d2658191823b4b9ffa61a7aea530802c6b2ff27c41":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xbe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafe":"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f","0xbe7c5c707db1c91bd2c84880bb1e177b65886d295d9a62df8edfe38f8066cc81":"0x0","0xc3cd64a46de7309013ddb93a16a3024c2e46fb931e4744edf2610fb119f716f5":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xc563f9d3175978a619bae1a8175d3ea4be91d3890345085c5eb16f83b678a3d9":"0x0","0xc5b5cdb7b939f9d661f58f28c37e10cf71d45dacfea2581c88ae4a17aaf55e6e":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xd386775169d9e0716e9b5b08561984726edaa9febd0ca8e5468ecffa112078c7":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xe3b736cdcc6a09d7e3a05ffb63b11f11c91958d861443c3409d3fd863e8217bd":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xe3e5b75e3dff543bfbfe5b494e4e3243b4d9d0b3d794725cea46c28fe6be50e4":"0x0","0xe7d61626cac95282d296ee7ab5958e3e72e32eb959a7cab1d37c0f9d6d69c18a":"0x1a","0xeca5e1ccaa645ce2be97a867a1f8aeeb63ea833aeb009c0df0553b42b30c683f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf08305746cdba1d0eaa65036694838a3db122973267ffc57739d605c320c680a":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf0d566acc03395f71b37890f455d51d93197adf754ea72aba21427dc66b437df":"0x0","0xf230898ba4fe40c52f958d03013d995f822e25a5d4fae43bbdc6e92623cea0bd":"0x0","0xf245a9962043f44f4af98f9952a3bd29d91eb05418e4bb567b9de8f27e239b13":"0x0","0xf2a19ade13962e8675aecf2fbe51913877912f9e48e899806b6e06e82f9a980f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf2fab50b0b53245ddfa1bcfcdf4c73e209d6921dad704d173cf04cbbadc8e346":"0x0","0xfa6f3ee10d719cb3457d10c539ff3d77b8e56852ea62f68b2f9f85ad691ed6b4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xfff3abb219acc6ef4eed6e93a5682023229370196f352cdf3a71a88d881e3487":"0x0"}},"0x11dd97b7ca847dfb6504e61b7b9eb30f55e554a0":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a424740014610090575b600080fd5b610059610054366004610ba9565b6100b3565b6040516100669190610c98565b60405180910390f35b61008261007d366004610cab565b6101ce565b604051908152602001610066565b6100a361009e366004610ba9565b610332565b6040519015158152602001610066565b606060005a6001546040805163b3f9e4cb60e01b81529088013560048201529192506000916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561010a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061012e9190610cd9565b90506101c26101406020880188610cf6565b8260408901358561015460608c018c610d13565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8f018190048102820181019092528d815292508d91508c90819084018382808284376000920191909152506103fb92505050565b925050505b9392505050565b60025460015460405163b3f9e4cb60e01b8152600481018490526000926001600160a01b0390811692169063b3f9e4cb90602401602060405180830381865afa92505050801561023b575060408051601f3d908101601f1916820190925261023891810190610cd9565b60015b156102435790505b6001600160a01b0381163b156102c557604051636ccbae5f60e01b81526004810184905281906001600160a01b03821690636ccbae5f90602401602060405180830381865afa9250505080156102b6575060408051601f3d908101601f191682019092526102b391810190610d5a565b60015b156102c357949350505050565b505b600254604051636ccbae5f60e01b8152600481018590526001600160a01b0390911690636ccbae5f90602401602060405180830381865afa15801561030e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101c79190610d5a565b6001546040805163b3f9e4cb60e01b815290850135600482015260009182916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa158015610383573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103a79190610cd9565b90506103f26103b586610e0b565b8286868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506104d392505050565b95945050505050565b6060600080876001600160a01b0316866104178b8a898961051f565b6040516104249190610eb5565b60006040518083038160008787f1925050503d8060008114610462576040519150601f19603f3d011682016040523d82523d6000602084013e610467565b606091505b509092509050610478603f87610ed1565b5a1161048657610486610ef3565b6104c682826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506105d4565b9998505050505050505050565b60006104e084848461060d565b8015610514575060608401516020908101516001600160e01b031990811660009081529182905260409091205460e01b1615155b949350505050565b50565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036105b15760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526105c982828661074c565b979650505050505050565b606083156105e35750816101c7565b8251156105f35782518084602001fd5b8160405162461bcd60e51b81526004016105a89190610c98565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015610654573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106789190610d5a565b905060006107268660600151805190602001208688602001516040516020016106c69392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156101c2575085516101c2906001600160a01b03168286610935565b60606001600160e01b0319841663b87abc1160e01b036107cd5760008380602001905181019061077c9190610d5a565b9050848184604051602401610792929190610f09565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915291506101c79050565b6001600160e01b0319841663c597407360e01b03610859576000806000858060200190518101906107fe9190610f67565b925092509250868383838860405160240161081c9493929190610fd4565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293506101c792505050565b6001600160e01b031984166311ed383160e31b036108a85760008060008580602001905181019061088a91906110a6565b925092509250868383838860405160240161081c9493929190611157565b6001600160e01b031984166328d55f9b60e21b036101c7576000806000858060200190518101906108d991906110a6565b92509250925086838383886040516024016108f79493929190611157565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293505050509392505050565b60008060006109448585610a77565b9092509050600081600481111561095d5761095d61117c565b14801561097b5750856001600160a01b0316826001600160a01b0316145b1561098b576001925050506101c7565b600080876001600160a01b0316631626ba7e60e01b88886040516024016109b3929190610f09565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516109f19190610eb5565b600060405180830381855afa9150503d8060008114610a2c576040519150601f19603f3d011682016040523d82523d6000602084013e610a31565b606091505b5091509150818015610a44575080516020145b8015610a6b57508051630b135d3f60e11b90610a699083016020908101908401610d5a565b145b98975050505050505050565b6000808251604103610aad5760208301516040840151606085015160001a610aa187828585610abc565b94509450505050610ab5565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610af35750600090506003610ba0565b8460ff16601b14158015610b0b57508460ff16601c14155b15610b1c5750600090506004610ba0565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610b70573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610b9957600060019250925050610ba0565b9150600090505b94509492505050565b600080600060408486031215610bbe57600080fd5b833567ffffffffffffffff80821115610bd657600080fd5b9085019060808288031215610bea57600080fd5b90935060208501359080821115610c0057600080fd5b818601915086601f830112610c1457600080fd5b813581811115610c2357600080fd5b876020828501011115610c3557600080fd5b6020830194508093505050509250925092565b60005b83811015610c63578181015183820152602001610c4b565b50506000910152565b60008151808452610c84816020860160208601610c48565b601f01601f19169290920160200192915050565b6020815260006101c76020830184610c6c565b600060208284031215610cbd57600080fd5b5035919050565b6001600160a01b038116811461051c57600080fd5b600060208284031215610ceb57600080fd5b81516101c781610cc4565b600060208284031215610d0857600080fd5b81356101c781610cc4565b6000808335601e19843603018112610d2a57600080fd5b83018035915067ffffffffffffffff821115610d4557600080fd5b602001915036819003821315610ab557600080fd5b600060208284031215610d6c57600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610dac57610dac610d73565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ddb57610ddb610d73565b604052919050565b600067ffffffffffffffff821115610dfd57610dfd610d73565b50601f01601f191660200190565b600060808236031215610e1d57600080fd5b610e25610d89565b8235610e3081610cc4565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610e6057600080fd5b840136601f820112610e7157600080fd5b8035610e84610e7f82610de3565b610db2565b8181523684838501011115610e9857600080fd5b818484018583013760009181019093015250606082015292915050565b60008251610ec7818460208701610c48565b9190910192915050565b600082610eee57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b8281526040602082015260006105146040830184610c6c565b600082601f830112610f3357600080fd5b8151610f41610e7f82610de3565b818152846020838601011115610f5657600080fd5b610514826020830160208701610c48565b600080600060608486031215610f7c57600080fd5b835167ffffffffffffffff80821115610f9457600080fd5b610fa087838801610f22565b94506020860151915080821115610fb657600080fd5b50610fc386828701610f22565b925050604084015190509250925092565b608081526000610fe76080830187610c6c565b8281036020840152610ff98187610c6c565b905084604084015282810360608401526105c98185610c6c565b600082601f83011261102457600080fd5b8151602067ffffffffffffffff8083111561104157611041610d73565b8260051b611050838201610db2565b938452858101830193838101908886111561106a57600080fd5b84880192505b85831015610a6b578251848111156110885760008081fd5b6110968a87838c0101610f22565b8352509184019190840190611070565b6000806000606084860312156110bb57600080fd5b835167ffffffffffffffff808211156110d357600080fd5b6110df87838801611013565b945060208601519150808211156110f557600080fd5b50610fc386828701611013565b600081518084526020808501808196508360051b8101915082860160005b8581101561114a578284038952611138848351610c6c565b98850198935090840190600101611120565b5091979650505050505050565b60808152600061116a6080830187611102565b8281036020840152610ff98187611102565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x2":"0xf8c26340c1eaea6c7ff1760b25005e1306953572","0x1e74f978992d7d64ddac400bd4aae9eefd60fa0b8456650273f5f50148803323":"0xa3557e6c","0x23c84c23be8f829809d1b1502c647c6c59fb6b2345b163a2ca3e7d4f9855975c":"0x8f69c188","0xa0286316c9d3cb00f4f54a9f1096cefaa1748bb5a5395e7fa1563568ebb3e6c3":"0xb87abc11","0xdc138de224807be243ee38fe9e746cce5d437a256b87be90b80240e0811ad043":"0xc5974073"}},"0x145908bbcfc7b258e4d4d9a586f6e3249ae80216":{"nonce":1,"balance":"0x0","code":"0x3d5c","storage":{}},"0x17cda4e23f7237277952e075b1c48467aabfacc0":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c806368f9dab21461002d575b5f80fd5b61004061003b36600461088b565b610052565b60405190815260200160405180910390f35b5f61006f6040518060400160405280606081526020015f81525090565b61008e61007c858861090d565b61008790601061090d565b82906101d1565b506100d085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250859392505061023a9050565b5061011287878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250859392505061023a9050565b505f610120825f0151610266565b905083156101bc5760408051808201909152606081525f602090910181905282515261014c825f610650565b5061018e88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250869392505061023a9050565b505f5b848110156101ba576101a4835f8461067f565b5082516101b090610266565b9150600101610191565b505b6001600160601b031916979650505050505050565b60408051808201909152606081525f60208201526101f0602083610920565b1561021857610200602083610920565b61020b90602061093f565b610215908361090d565b91505b506020808301829052604080518085525f815283019091019052815b92915050565b60408051808201909152606081525f602082015261025f83845f0151518485516106b2565b9392505050565b5f6040518251602084019350604067ffffffffffffffc060018301160160098282031060018103610298576040820191505b50776745230100efcdab890098badcfe001032547600c3d2e1f06102e8565b5f8383101561025f5750808201519282900392602084101561025f575f1960208590036101000a0119169392505050565b5f5b828110156105ef576102fd8482896102b7565b855261030d8460208301896102b7565b6020860152604081850310600181036103295760808286038701535b506040830381146001810361034657602086018051600887021790525b5060405b60808110156103ce57858101603f19810151603719820151601f19830151600b198401516002911891909218189081027ffffffffefffffffefffffffefffffffefffffffefffffffefffffffefffffffe1663800000009091047c010000000100000001000000010000000100000001000000010000000116179052600c0161034a565b5060805b61014081101561045757858101607f19810151606f19820151603f198301516017198401516004911891909218189081027ffffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffc1663400000009091047c0300000003000000030000000300000003000000030000000300000003161790526018016103d2565b50815f805f5b60508110156105c55760148104801561048d57600181146104b457600281146104d9576003811461050357610524565b600160281b8504600160501b86048118600160781b870416189350635a8279999250610524565b600160281b8504600160781b8604600160501b870418189350636ed9eba19250610524565b600160501b8504600160781b8604818117600160281b8804169116179350638f1bbcdc9250610524565b600160281b8504600160781b8604600160501b87041818935063ca62c1d692505b50601f600160bb1b8504168063ffffffe06001609b1b87041617905080840190508063ffffffff8616019050808301905080600160e01b600484028c015104019050600160a01b8102600160281b860417945050600160501b633fffffff600160521b86041663c00000006604000000000000870416170277ffffffff00ffffffff000000000000ffffffff00ffffffff851617935060018101905061045d565b5050509190910177ffffffff00ffffffff00ffffffff00ffffffff00ffffffff16906040016102ea565b50600160601b63ffffffff821667ffffffff000000006101008404166bffffffff00000000000000006201000085041663ffffffff60601b630100000086041663ffffffff60801b6401000000008704161717171702945050505050919050565b60408051808201909152606081525f602082015282515161025f9084906001600160601b031985166014610798565b60408051808201909152606081525f60208201526106aa84846001600160601b031985166014610798565b949350505050565b60408051808201909152606081525f602082015282518211156106d3575f80fd5b60208501516106e2838661090d565b1115610715576107158561070587602001518786610700919061090d565b610813565b610710906002610952565b610829565b5f808651805187602083010193508088870111156107335787860182525b505050602084015b60208410610773578051825261075260208361090d565b915061075f60208261090d565b905061076c60208561093f565b935061073b565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b60408051808201909152606081525f602082015260208501516107bb858461090d565b11156107cf576107cf85610705868561090d565b5f6001836101000a0390508260200360080284901c93508551838682010185831982511617815250805184870111156108085783860181525b509495945050505050565b5f81831115610823575081610234565b50919050565b815161083583836101d1565b50610840838261023a565b50505050565b5f8083601f840112610856575f80fd5b50813567ffffffffffffffff81111561086d575f80fd5b602083019150836020828501011115610884575f80fd5b9250929050565b5f805f805f6060868803121561089f575f80fd5b853567ffffffffffffffff808211156108b6575f80fd5b6108c289838a01610846565b909750955060208801359150808211156108da575f80fd5b506108e788828901610846565b96999598509660400135949350505050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610234576102346108f9565b5f8261093a57634e487b7160e01b5f52601260045260245ffd5b500690565b81810381811115610234576102346108f9565b8082028115828204841417610234576102346108f956fea164736f6c6343000818000a","storage":{}},"0x19356cc2300833e690088a5a09a2044a3cc2a1e2":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x229c56b7805ab5935a883207f6a6bd5847e65aee":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106102ae5760003560e01c8063906cecc111610175578063b9998a24116100dc578063d547741f11610095578063f2fde38b1161006f578063f2fde38b14610892578063f5243bc4146108b2578063f940e385146108d2578063ffa1ad74146108f257600080fd5b8063d547741f1461083f578063d7db74c71461085f578063ec5273891461087257600080fd5b8063b9998a241461077d578063cc2a9a5b1461079d578063cc2c3fc4146107bd578063ceeb4f50146107dd578063d1f5692c146107fd578063d53913931461081d57600080fd5b8063a3a3f7f61161012e578063a3a3f7f614610690578063a3f4df7e146106b0578063a849d65c146106fd578063aa271e1a1461071d578063b0aa98c71461073d578063b3ab15fb1461075d57600080fd5b8063906cecc1146105e657806391d1485414610606578063983b2d5614610626578063986502751461064657806399e0dd7c1461065b578063a217fddf1461067b57600080fd5b80635b6fa8db11610219578063715018a6116101d2578063715018a61461054b57806371e2a6571461056057806377a2a5891461058057806381c81d35146105a05780638456cb59146105b35780638da5cb5b146105c857600080fd5b80635b6fa8db146104a35780635c975abb146104c35780635cd7e3b3146104d85780635e22cd86146104f85780635fc1964f14610518578063634486da1461053857600080fd5b80633092afd51161026b5780633092afd5146103a857806336568abe146103c85780633f41b614146103e85780633f4ba83a1461042057806351cff8d914610435578063572b6c051461045557600080fd5b806301ffc9a7146102b35780631edb948e146102e857806320c5429b1461030a578063248a9ca31461032a578063268b15ed146103685780632f2ff15d14610388575b600080fd5b3480156102bf57600080fd5b506102d36102ce366004613dc4565b610923565b60405190151581526020015b60405180910390f35b3480156102f457600080fd5b50610308610303366004613e13565b61095a565b005b34801561031657600080fd5b50610308610325366004613e3f565b610b03565b34801561033657600080fd5b5061035a610345366004613e3f565b60009081526097602052604090206001015490565b6040519081526020016102df565b34801561037457600080fd5b50610308610383366004613e99565b610c26565b34801561039457600080fd5b506103086103a3366004613f04565b610cb9565b3480156103b457600080fd5b506103086103c3366004613f34565b610ce3565b3480156103d457600080fd5b506103086103e3366004613f04565b610cf7565b3480156103f457600080fd5b5060c954610408906001600160a01b031681565b6040516001600160a01b0390911681526020016102df565b34801561042c57600080fd5b50610308610d85565b34801561044157600080fd5b50610308610450366004613f34565b610d97565b34801561046157600080fd5b506102d3610470366004613f34565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546001600160a01b0390811691161490565b3480156104af57600080fd5b5060cc54610408906001600160a01b031681565b3480156104cf57600080fd5b506102d3610e37565b3480156104e457600080fd5b506103086104f3366004613fa3565b610e4d565b34801561050457600080fd5b50610308610513366004614062565b6110b1565b34801561052457600080fd5b5061030861053336600461419c565b6112f6565b610308610546366004613f34565b61133e565b34801561055757600080fd5b50610308611401565b34801561056c57600080fd5b5061030861057b36600461419c565b611413565b34801561058c57600080fd5b5060ce54610408906001600160a01b031681565b6103086105ae366004613f34565b61145b565b3480156105bf57600080fd5b506103086114d8565b3480156105d457600080fd5b506033546001600160a01b0316610408565b3480156105f257600080fd5b5061030861060136600461423a565b6114e8565b34801561061257600080fd5b506102d3610621366004613f04565b61156e565b34801561063257600080fd5b50610308610641366004613f34565b611599565b34801561065257600080fd5b506103086115aa565b34801561066757600080fd5b50610308610676366004614295565b6115c4565b34801561068757600080fd5b5061035a600081565b34801561069c57600080fd5b506103086106ab3660046142d6565b6116ab565b3480156106bc57600080fd5b506106f0604051806040016040528060148152602001732aa7299d1026b4b73a34b7339026b0b730b3b2b960611b81525081565b6040516102df919061437c565b34801561070957600080fd5b5060cb54610408906001600160a01b031681565b34801561072957600080fd5b506102d3610738366004613f34565b6116f4565b34801561074957600080fd5b506102d3610758366004613e3f565b61170e565b34801561076957600080fd5b50610308610778366004613f34565b61176c565b34801561078957600080fd5b50610308610798366004613f34565b611796565b3480156107a957600080fd5b506103086107b836600461438f565b6117db565b3480156107c957600080fd5b5060ca54610408906001600160a01b031681565b3480156107e957600080fd5b506103086107f8366004614411565b611cd2565b34801561080957600080fd5b506103086108183660046144c6565b611d76565b34801561082957600080fd5b5061035a600080516020614ef483398151915281565b34801561084b57600080fd5b5061030861085a366004613f04565b611e2d565b61030861086d3660046144fb565b611e52565b34801561087e57600080fd5b5061030861088d366004613e3f565b611fe2565b34801561089e57600080fd5b506103086108ad366004613f34565b612054565b3480156108be57600080fd5b506103086108cd3660046145f0565b612070565b3480156108de57600080fd5b506103086108ed366004614708565b612222565b3480156108fe57600080fd5b506106f060405180604001604052806005815260200164302e352e3160d81b81525081565b60006001600160e01b03198216637965db0b60e01b148061095457506301ffc9a760e01b6001600160e01b03198316145b92915050565b61096561073861239e565b61098a5760405162461bcd60e51b815260040161098190614736565b60405180910390fd5b60c95460405163baef73e960e01b8152600481018390526000916001600160a01b03169063baef73e990602401602060405180830381865afa1580156109d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109f8919061476b565b9050806001600160401b0316600003610a235760405162461bcd60e51b815260040161098190614788565b806001600160401b0316836001600160401b031611610a905760405162461bcd60e51b815260206004820152602360248201527f4d696e74696e674d616e616765723a204558504952595f4e4f545f455854454e60448201526211115160ea1b6064820152608401610981565b60c954604051631fb9763760e11b81526001600160401b0385166004820152602481018490526001600160a01b0390911690633f72ec6e906044015b600060405180830381600087803b158015610ae657600080fd5b505af1158015610afa573d6000803e3d6000fd5b50505050505050565b610b0e61073861239e565b610b2a5760405162461bcd60e51b815260040161098190614736565b60c95460405163baef73e960e01b8152600481018390526001600160a01b039091169063baef73e990602401602060405180830381865afa158015610b73573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b97919061476b565b6001600160401b0316600003610bbf5760405162461bcd60e51b815260040161098190614788565b60c954604051637eee288d60e01b8152306004820152602481018390526001600160a01b0390911690637eee288d90604401600060405180830381600087803b158015610c0b57600080fd5b505af1158015610c1f573d6000803e3d6000fd5b5050505050565b8282828080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250610c6993508592508491506123ad565b610c71610e37565b15610c8e5760405162461bcd60e51b8152600401610981906147cb565b6060610afa610c9b61239e565b610cae88610ca98989612584565b6125b0565b8384600060016126c1565b600082815260976020526040902060010154610cd481612c15565b610cde8383612c26565b505050565b610ceb612cad565b610cf481612d26565b50565b610cff61239e565b6001600160a01b0316816001600160a01b031614610d775760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610981565b610d818282612d3e565b5050565b610d8d612cad565b610d95612dc3565b565b610d9f612cad565b6001600160a01b038116610db257600080fd5b60405147906001600160a01b0383169082156108fc029083906000818181858888f19350505050158015610dea573d6000803e3d6000fd5b50604080516001600160a01b03841681526020810183905260008183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a15050565b600080516020614ed48339815191525460ff1690565b610e5786886147f5565b8051600203610e8c57610e6b61073861239e565b610e875760405162461bcd60e51b8152600401610981906148bf565b610fd1565b6000610e9782612e6b565b60c9549092506001600160a01b0316905063430c2081610eb561239e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015610f00573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f249190614903565b80610fb3575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa158015610f7d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fa19190614903565b8015610fb35750610fb361073861239e565b610fcf5760405162461bcd60e51b815260040161098190614920565b505b610fdb87896147f5565b6000600282511015610fff5760405162461bcd60e51b81526004016109819061496f565b6110546110336000846001865161101691906149ca565b81518110611026576110266149dd565b6020026020010151612ea6565b83600081518110611046576110466149dd565b6020026020010151836123ad565b61105c610e37565b156110795760405162461bcd60e51b8152600401610981906147cb565b6110a38b6110878b8d6147f5565b6110918a8c6147f5565b61109b898b6147f5565b6000896126c1565b505050505050505050505050565b6110bb87896147f5565b80516002036110f0576110cf61073861239e565b6110eb5760405162461bcd60e51b8152600401610981906148bf565b611235565b60006110fb82612e6b565b60c9549092506001600160a01b0316905063430c208161111961239e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015611164573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111889190614903565b80611217575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa1580156111e1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112059190614903565b8015611217575061121761073861239e565b6112335760405162461bcd60e51b815260040161098190614920565b505b61123f888a6147f5565b836002825110156112625760405162461bcd60e51b81526004016109819061496f565b6112796110336000846001865161101691906149ca565b611281610e37565b1561129e5760405162461bcd60e51b8152600401610981906147cb565b60028a146112be5760405162461bcd60e51b8152600401610981906149f3565b6112e78c6112cc8c8e6147f5565b6112d68b8d6147f5565b6112e08a8c6147f5565b89896126c1565b50505050505050505050505050565b6112fe612cad565b60005b8151811015610d815761132c82828151811061131f5761131f6149dd565b6020026020010151612d26565b8061133681614a39565b915050611301565b61134961073861239e565b6113655760405162461bcd60e51b815260040161098190614736565b6001600160a01b0381166113bb5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610981565b6113c481612f5a565b6113cc6115aa565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610d81573d6000803e3d6000fd5b611409612cad565b610d956000612f72565b61141b612cad565b60005b8151811015610d815761144982828151811061143c5761143c6149dd565b6020026020010151612f5a565b8061145381614a39565b91505061141e565b61146661073861239e565b6114825760405162461bcd60e51b815260040161098190614736565b6001600160a01b0381166113c45760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610981565b6114e0612cad565b610d95612fc4565b8282828080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525061152b93508592508491506123ad565b611533610e37565b156115505760405162461bcd60e51b8152600401610981906147cb565b606061156487610cae88610ca98989612584565b5050505050505050565b60009182526097602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6115a1612cad565b610cf481612f5a565b610d95600080516020614ef48339815191526103e361239e565b6115cc612cad565b60c954604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906115fe9085908590600401614a52565b600060405180830381600087803b15801561161857600080fd5b505af115801561162c573d6000803e3d6000fd5b505060cb546001600160a01b0316159150610d8190505760cb54604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906116759085908590600401614a52565b600060405180830381600087803b15801561168f57600080fd5b505af11580156116a3573d6000803e3d6000fd5b505050505050565b6116b3612cad565b610cde83838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525085925061302c915050565b6000610954600080516020614ef48339815191528361156e565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd696020820152908101829052600090611762906060015b6040516020818303038152906040528051906020012090565b5460ff1692915050565b611774612cad565b60ce80546001600160a01b0319166001600160a01b0392909216919091179055565b61179e612cad565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e80546001600160a01b0319166001600160a01b03831617905550565b600054610100900460ff16158080156117fb5750600054600160ff909116105b806118155750303b158015611815575060005460ff166001145b6118785760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610981565b6000805460ff19166001179055801561189b576000805461ff0019166101001790555b60c980546001600160a01b03199081166001600160a01b038a81169190911790925560ca8054821689841617905560cb8054821688841617905560cc8054821687841617905560ce80549091169185169190911790556118f961314c565b611901613183565b61190a826131bc565b6119126131e3565b6040805161036081018252600661032082018181526563727970746f60d01b610340840152825282518084018452818152651dd85b1b195d60d21b602082810191909152808401919091528351808501855260018152600f60fb1b8183015283850152835180850185526003808252621b999d60ea1b82840152606085019190915284518086018652600a815269313637b1b5b1b430b4b760b11b818401526080850152845180860186526007808252663134ba31b7b4b760c91b8285015260a0860191909152855180870187528281526207070760eb1b8185015260c0860152855180870187528281526264616f60e81b8185015260e086015285518087018752828152621e9a5b60ea1b8185015261010086015285518087018752908152663837b63cb3b7b760c91b8184015261012085015284518086018652600b81526a756e73746f707061626c6560a81b81840152610140850152845180860186528381526535b632bb32b960d11b8184015261016085015284518086018652600280825261686960f01b8285015261018086019190915285518087018752848152656b726573757360d01b818501526101a086015285518087018752600580825264616e696d6560d81b828601526101c087019190915286518088018852818152646d616e676160d81b818601526101e087015286518088018852600981526862696e616e6365757360b81b8186015261020087015286518088018852818152647265616c6d60d81b818601526102208701528651808801885291825261676f60f01b82850152610240860191909152855180870187526008815267185b1d1a5b5a5cdd60c21b818501526102608601528551808701875290815264707564677960d81b81840152610280850152845180860186528381526530bab9ba34b760d11b818401526102a08501528451808601865292835265189a5d19d95d60d21b838301526102c08401929092528351808501855291825262706f6760e81b828201526102e083019190915282518084019093526004835263636c617960e01b9083015261030081019190915260005b6019811015611c5c57611c4a828260198110611c3e57611c3e6149dd565b6020020151600061302c565b80611c5481614a39565b915050611c20565b50611c8360405180604001604052806003815260200162636f6d60e81b815250600161302c565b508015610afa576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050505050565b8686868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250611d1593508592508491506123ad565b611d1d610e37565b15611d3a5760405162461bcd60e51b8152600401610981906147cb565b611d698a611d4c8b610ca98c8c612584565b611d56888a6147f5565b611d6087896147f5565b600060016126c1565b5050505050505050505050565b611d7e612cad565b60005b81811015610cde5760c9546001600160a01b03166350960239848484818110611dac57611dac6149dd565b9050602002016020810190611dc19190613f34565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401600060405180830381600087803b158015611e0257600080fd5b505af1158015611e16573d6000803e3d6000fd5b505050508080611e2590614a39565b915050611d81565b600082815260976020526040902060010154611e4881612c15565b610cde8383612d3e565b611e5c898b6147f5565b6000600282511015611e805760405162461bcd60e51b81526004016109819061496f565b611e976110336000846001865161101691906149ca565b611e9f610e37565b15611ebc5760405162461bcd60e51b8152600401610981906147cb565b60028b14611edc5760405162461bcd60e51b8152600401610981906149f3565b611f228d8d8d898960008a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061322392505050565b84341015611f725760405162461bcd60e51b815260206004820181905260248201527f4d696e74696e674d616e616765723a204e4f545f454e4f5547485f46554e44536044820152606401610981565b611f848d8d8d8d8d8d8d8c60006133e3565b843411156112e757611f9461239e565b6001600160a01b03166108fc611faa87346149ca565b6040518115909202916000818181858888f19350505050158015611fd2573d6000803e3d6000fd5b5050505050505050505050505050565b611fea612cad565b611ff38161349f565b61200f5760405162461bcd60e51b815260040161098190614a81565b600081815260cd6020526040812061202691613d76565b60405181907f0aa1aff0f830e739d86baf0e6624d6763da02f7733575e0e463886cd062dea6a90600090a250565b61205c612cad565b612065816134c5565b610cf460008261353b565b61207a8a8c6147f5565b600060028251101561209e5760405162461bcd60e51b81526004016109819061496f565b6120b56110336000846001865161101691906149ca565b6120bd610e37565b156120da5760405162461bcd60e51b8152600401610981906147cb565b60028c146120fa5760405162461bcd60e51b8152600401610981906149f3565b61213f8e8e8e8a898b8a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061322392505050565b856001600160a01b03166323b872dd61215661239e565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152306024820152604481018890526064016020604051808303816000875af11580156121a9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121cd9190614903565b6122115760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610981565b611fd28e8e8e8e8e8e8e8c8e6133e3565b61222a612cad565b6040516370a0823160e01b81523060048201526000906001600160a01b038416906370a0823190602401602060405180830381865afa158015612271573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122959190614ac3565b60405163a9059cbb60e01b81526001600160a01b038481166004830152602482018390529192509084169063a9059cbb906044016020604051808303816000875af11580156122e8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061230c9190614903565b6123505760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610981565b604080516001600160a01b0384811682526020820184905285168183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a1505050565b60006123a8613545565b905090565b6123b68361349f565b6123d25760405162461bcd60e51b815260040161098190614a81565b600083815260cf602052604090205460ff1615156001600160401b03821615151461244e5760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544c445f455850495241424c455f4d496044820152650a69a82a886960d31b6064820152608401610981565b60006124818360408051808201825260008082526020918201528151808301909252825182529182019181019190915290565b9050600a81600001511115612529576124ac6124a0826000600a61358b565b80516020909101512090565b7fb551e0305c8163b812374b8e78b577c77f226f6f10c5ad03e52699578fbc34b8036125295760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544f4b454e5f4c4142454c5f50524f4860448201526512509255115160d21b6064820152608401610981565b612532836135ca565b61257e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a204c4142454c5f494e56414c49440000006044820152606401610981565b50505050565b60608282604051602001612599929190614adc565b604051602081830303815290604052905092915050565b604080516002808252606082810190935260009190816020015b60608152602001906001900390816125ca57905050905082816000815181106125f5576125f56149dd565b602002602001018190525060cd6000858152602001908152602001600020805461261e90614b04565b80601f016020809104026020016040519081016040528092919081815260200182805461264a90614b04565b80156126975780601f1061266c57610100808354040283529160200191612697565b820191906000526020600020905b81548152906001019060200180831161267a57829003601f168201915b5050505050816001815181106126af576126af6149dd565b60209081029190910101529392505050565b60008060006126cf88612e6b565b915091508380156126e1575060028851115b8015612763575060c9546040516331a9108f60e11b8152600481018390526001600160a01b038b8116921690636352211e90602401602060405180830381865afa158015612733573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127579190614b3e565b6001600160a01b031614155b156127c35760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e616765723a20524556455253455f5245434f52445f4e60448201526913d517d0531313d5d15160b21b6064820152608401610981565b60c954604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401602060405180830381865afa15801561280c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128309190614903565b8015612921575060c9546040516331a9108f60e11b81526004810184905230916001600160a01b031690636352211e90602401602060405180830381865afa158015612880573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128a49190614b3e565b6001600160a01b03161480612921575060c95460405163d9548e5360e01b8152600481018490526001600160a01b039091169063d9548e5390602401602060405180830381865afa1580156128fd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129219190614903565b15612a12576001600160401b038516156129a35760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b15801561298a57600080fd5b505af115801561299e573d6000803e3d6000fd5b505050505b60c954604051630fb8df0360e11b81526001600160a01b0390911690631f71be06906129db908c908c908c908c908b90600401614bb0565b600060405180830381600087803b1580156129f557600080fd5b505af1158015612a09573d6000803e3d6000fd5b50505050612c09565b612a1b8261372e565b612a248861378d565b8015612a31575087516002145b8015612a4457506001600160401b038516155b15612b225760ca5488516001600160a01b039091169063c36c2125908b908b90600090612a7357612a736149dd565b602090810291909101015160cc546040516001600160e01b031960e086901b168152612aad9392916001600160a01b031690600401614c0f565b600060405180830381600087803b158015612ac757600080fd5b505af1158015612adb573d6000803e3d6000fd5b50505050600087511115612b1d5760cc54604051633a0deb9d60e21b81526001600160a01b039091169063e837ae74906129db908a908a908790600401614c44565b612c09565b60c95460405163ba5d40b760e01b81526001600160a01b039091169063ba5d40b790612b5a908c908c908c908c908b90600401614bb0565b600060405180830381600087803b158015612b7457600080fd5b505af1158015612b88573d6000803e3d6000fd5b505050506001600160401b03851615612c095760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b158015612bf057600080fd5b505af1158015612c04573d6000803e3d6000fd5b505050505b50979650505050505050565b610cf481612c2161239e565b6137e7565b612c30828261156e565b610d815760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19166001179055612c6961239e565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b612cb561239e565b6001600160a01b0316612cd06033546001600160a01b031690565b6001600160a01b031614610d955760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610981565b610cf4600080516020614ef483398151915282611e2d565b612d48828261156e565b15610d815760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19169055612d7f61239e565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612dcb610e37565b612e0e5760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881393d517d4105554d15160621b6044820152606401610981565b600080516020614ed4833981519152805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa612e4e61239e565b6040516001600160a01b03909116815260200160405180910390a1565b805160009081905b8015612ea057829150612e8c82856110166001856149ca565b925080612e9881614c7a565b915050612e73565b50915091565b60008151600003612ef95760405162461bcd60e51b815260206004820152601b60248201527f4d696e74696e674d616e616765723a204c4142454c5f454d50545900000000006044820152606401610981565b8282604051602001612f0b9190614c91565b60405160208183030381529060405280519060200120604051602001612f3b929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b610cf4600080516020614ef48339815191528261353b565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b612fcc610e37565b15612fe95760405162461bcd60e51b8152600401610981906147cb565b600080516020614ed4833981519152805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258612e4e61239e565b6000613039600084612ea6565b600081815260cd602052604090209091506130548482614cf3565b50600081815260cf602052604090819020805460ff19168415151790555181907f4fce6f6e172b04eaa80325d8e3b0180a34945000f3e214605039e8420fdf8980906130a190869061437c565b60405180910390a260c954604051634f558e7960e01b8152600481018390526001600160a01b0390911690634f558e7990602401602060405180830381865afa1580156130f2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131169190614903565b610cde5760c9546040516307befae360e51b81526001600160a01b039091169063f7df5c6090610acc9084908790600401614db2565b600054610100900460ff166131735760405162461bcd60e51b815260040161098190614dd3565b610d9561317e61239e565b612f72565b600054610100900460ff166131aa5760405162461bcd60e51b815260040161098190614dd3565b610d9560006131b761239e565b61353b565b600054610100900460ff1661179e5760405162461bcd60e51b815260040161098190614dd3565b600054610100900460ff1661320a5760405162461bcd60e51b815260040161098190614dd3565b600080516020614ed4833981519152805460ff19169055565b600061323761323287896147f5565b612e6b565b506040516bffffffffffffffffffffffff1930606090811b821660208401524660348401528b811b82166054840152606883018490526001600160c01b031960c08a901b1660888401526090830188905286901b1660b082015290915060009061331390849061330d9060c401604051602081830303815290604052805190602001206040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c8101829052600090605c01604051602081830303815290604052805190602001209050919050565b9061384b565b905061331e816116f4565b6133765760405162461bcd60e51b8152602060048201526024808201527f4d696e74696e674d616e616765723a205349474e45525f49535f4e4f545f4d49604482015263272a22a960e11b6064820152608401610981565b42866001600160401b0316116133d85760405162461bcd60e51b815260206004820152602160248201527f4d696e74696e674d616e616765723a20455850495245445f5349474e415455526044820152604560f81b6064820152608401610981565b505050505050505050565b600061342a8a6133f38a8c6147f5565b6133fd898b6147f5565b613407888a6147f5565b60008f6001600160a01b031661341b61239e565b6001600160a01b0316146126c1565b9050896001600160a01b031661343e61239e565b6001600160a01b0316827fa545b6fd3355e8d57f8c8147bafe740545bd3ea1f94bef2576a6d532a7c3b605868660405161348b9291909182526001600160a01b0316602082015260400190565b60405180910390a450505050505050505050565b600081815260cd6020526040812080548291906134bb90614b04565b9050119050919050565b6134cd612cad565b6001600160a01b0381166135325760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610981565b610cf481612f72565b610d818282612c26565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546000906001600160a01b03163303613586575060331936013560601c90565b503390565b604080518082019091526000808252602082015260405180604001604052808381526020018486602001516135c09190614e1e565b9052949350505050565b600081516000036135dd57506000919050565b60208201805160f81c603081108015906135fb575060398160ff1611155b15801561361d575060618160ff161015801561361b5750607a8160ff1611155b155b1561362c575060009392505050565b8351600181111561369a5761364e836136466001846149ca565b015160f81c90565b915060308260ff1610158015613668575060398260ff1611155b15801561368a575060618260ff16101580156136885750607a8260ff1611155b155b1561369a57506000949350505050565b60015b6136a86001836149ca565b811015613722578381015160f81c9250602d83148015906136de575060308360ff16101580156136dc575060398360ff1611155b155b80156136ff575060618360ff16101580156136fd5750607a8360ff1611155b155b156137105750600095945050505050565b8061371a81614a39565b91505061369d565b50600195945050505050565b6137378161170e565b156137845760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a20544f4b454e5f424c4f434b45440000006044820152606401610981565b610cf48161386f565b6000806137a46000846001865161101691906149ca565b60ca549091506001600160a01b0316158015906137e05750807f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f145b9392505050565b6137f1828261156e565b610d8157613809816001600160a01b031660146138f3565b6138148360206138f3565b604051602001613825929190614e31565b60408051601f198184030181529082905262461bcd60e51b82526109819160040161437c565b600080600061385a8585613a8e565b9150915061386781613ad3565b509392505050565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd6960208201529081018290526001906138ae90606001611749565b805460ff19169115159190911790556040518181527f2ce5d9351b1d590d5a066db0d2dc7602d55f092506a83a7ee8c4d78ee357d75a9060200160405180910390a150565b60606000613902836002614ea6565b61390d906002614e1e565b6001600160401b0381111561392457613924614133565b6040519080825280601f01601f19166020018201604052801561394e576020820181803683370190505b509050600360fc1b81600081518110613969576139696149dd565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110613998576139986149dd565b60200101906001600160f81b031916908160001a90535060006139bc846002614ea6565b6139c7906001614e1e565b90505b6001811115613a3f576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106139fb576139fb6149dd565b1a60f81b828281518110613a1157613a116149dd565b60200101906001600160f81b031916908160001a90535060049490941c93613a3881614c7a565b90506139ca565b5083156137e05760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610981565b6000808251604103613ac45760208301516040840151606085015160001a613ab887828585613c89565b94509450505050613acc565b506000905060025b9250929050565b6000816004811115613ae757613ae7614ebd565b03613aef5750565b6001816004811115613b0357613b03614ebd565b03613b505760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152606401610981565b6002816004811115613b6457613b64614ebd565b03613bb15760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610981565b6003816004811115613bc557613bc5614ebd565b03613c1d5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b6064820152608401610981565b6004816004811115613c3157613c31614ebd565b03610cf45760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c604482015261756560f01b6064820152608401610981565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613cc05750600090506003613d6d565b8460ff16601b14158015613cd857508460ff16601c14155b15613ce95750600090506004613d6d565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613d3d573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613d6657600060019250925050613d6d565b9150600090505b94509492505050565b508054613d8290614b04565b6000825580601f10613d92575050565b601f016020900490600052602060002090810190610cf491905b80821115613dc05760008155600101613dac565b5090565b600060208284031215613dd657600080fd5b81356001600160e01b0319811681146137e057600080fd5b6001600160401b0381168114610cf457600080fd5b8035613e0e81613dee565b919050565b60008060408385031215613e2657600080fd5b8235613e3181613dee565b946020939093013593505050565b600060208284031215613e5157600080fd5b5035919050565b60008083601f840112613e6a57600080fd5b5081356001600160401b03811115613e8157600080fd5b602083019150836020828501011115613acc57600080fd5b600080600060408486031215613eae57600080fd5b8335925060208401356001600160401b03811115613ecb57600080fd5b613ed786828701613e58565b9497909650939450505050565b6001600160a01b0381168114610cf457600080fd5b8035613e0e81613ee4565b60008060408385031215613f1757600080fd5b823591506020830135613f2981613ee4565b809150509250929050565b600060208284031215613f4657600080fd5b81356137e081613ee4565b60008083601f840112613f6357600080fd5b5081356001600160401b03811115613f7a57600080fd5b6020830191508360208260051b8501011115613acc57600080fd5b8015158114610cf457600080fd5b60008060008060008060008060a0898b031215613fbf57600080fd5b8835613fca81613ee4565b975060208901356001600160401b0380821115613fe657600080fd5b613ff28c838d01613f51565b909950975060408b013591508082111561400b57600080fd5b6140178c838d01613f51565b909750955060608b013591508082111561403057600080fd5b5061403d8b828c01613f51565b909450925050608089013561405181613f95565b809150509295985092959890939650565b600080600080600080600080600060c08a8c03121561408057600080fd5b893561408b81613ee4565b985060208a01356001600160401b03808211156140a757600080fd5b6140b38d838e01613f51565b909a50985060408c01359150808211156140cc57600080fd5b6140d88d838e01613f51565b909850965060608c01359150808211156140f157600080fd5b506140fe8c828d01613f51565b90955093505060808a013561411281613dee565b915060a08a013561412281613f95565b809150509295985092959850929598565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561417157614171614133565b604052919050565b60006001600160401b0382111561419257614192614133565b5060051b60200190565b600060208083850312156141af57600080fd5b82356001600160401b038111156141c557600080fd5b8301601f810185136141d657600080fd5b80356141e96141e482614179565b614149565b81815260059190911b8201830190838101908783111561420857600080fd5b928401925b8284101561422f57833561422081613ee4565b8252928401929084019061420d565b979650505050505050565b6000806000806060858703121561425057600080fd5b843561425b81613ee4565b93506020850135925060408501356001600160401b0381111561427d57600080fd5b61428987828801613e58565b95989497509550505050565b600080602083850312156142a857600080fd5b82356001600160401b038111156142be57600080fd5b6142ca85828601613e58565b90969095509350505050565b6000806000604084860312156142eb57600080fd5b83356001600160401b0381111561430157600080fd5b61430d86828701613e58565b909450925050602084013561432181613f95565b809150509250925092565b60005b8381101561434757818101518382015260200161432f565b50506000910152565b6000815180845261436881602086016020860161432c565b601f01601f19169290920160200192915050565b6020815260006137e06020830184614350565b60008060008060008060c087890312156143a857600080fd5b86356143b381613ee4565b955060208701356143c381613ee4565b945060408701356143d381613ee4565b935060608701356143e381613ee4565b925060808701356143f381613ee4565b915060a087013561440381613ee4565b809150509295509295509295565b60008060008060008060008060a0898b03121561442d57600080fd5b883561443881613ee4565b97506020890135965060408901356001600160401b038082111561445b57600080fd5b6144678c838d01613e58565b909850965060608b013591508082111561448057600080fd5b61448c8c838d01613f51565b909650945060808b01359150808211156144a557600080fd5b506144b28b828c01613f51565b999c989b5096995094979396929594505050565b600080602083850312156144d957600080fd5b82356001600160401b038111156144ef57600080fd5b6142ca85828601613f51565b600080600080600080600080600080600060e08c8e03121561451c57600080fd5b6145258c613ef9565b9a506001600160401b038060208e0135111561454057600080fd5b6145508e60208f01358f01613f51565b909b50995060408d013581101561456657600080fd5b6145768e60408f01358f01613f51565b909950975060608d013581101561458c57600080fd5b61459c8e60608f01358f01613f51565b90975095506145ad60808e01613e03565b945060a08d013593508060c08e013511156145c757600080fd5b506145d88d60c08e01358e01613e58565b81935080925050509295989b509295989b9093969950565b6000806000806000806000806000806000806101008d8f03121561461357600080fd5b61461c8d613ef9565b9b506001600160401b0360208e0135111561463657600080fd5b6146468e60208f01358f01613f51565b909b5099506001600160401b0360408e0135111561466357600080fd5b6146738e60408f01358f01613f51565b90995097506001600160401b0360608e0135111561469057600080fd5b6146a08e60608f01358f01613f51565b90975095506146b160808e01613e03565b94506146bf60a08e01613ef9565b935060c08d013592506001600160401b0360e08e013511156146e057600080fd5b6146f08e60e08f01358f01613e58565b81935080925050509295989b509295989b509295989b565b6000806040838503121561471b57600080fd5b823561472681613ee4565b91506020830135613f2981613ee4565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b60006020828403121561477d57600080fd5b81516137e081613dee565b60208082526023908201527f4d696e74696e674d616e616765723a20544f4b454e5f4e4f545f455850495241604082015262424c4560e81b606082015260800190565b60208082526010908201526f14185d5cd8589b194e8814105554d15160821b604082015260600190565b60006148036141e484614179565b80848252602080830192508560051b85013681111561482157600080fd5b855b818110156148b35780356001600160401b03808211156148435760008081fd5b90880190601f36818401126148585760008081fd5b82358281111561486a5761486a614133565b61487b818301601f19168801614149565b9250808352368782860101111561489457600091508182fd5b8087850188850137600090830187015250865250938201938201614823565b50919695505050505050565b60208082526024908201527f4d696e74696e674d616e616765723a2043414c4c45525f49535f4e4f545f4d49604082015263272a22a960e11b606082015260800190565b60006020828403121561491557600080fd5b81516137e081613f95565b6020808252602f908201527f4d696e74696e674d616e616765723a2053454e4445525f49535f4e4f545f415060408201526e282927ab22a22fa7a92fa7aba722a960891b606082015260800190565b60208082526025908201527f4d696e74696e674d616e616765723a204c4142454c535f4c454e4754485f42456040820152642627abaf9960d91b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b81810381811115610954576109546149b4565b634e487b7160e01b600052603260045260246000fd5b60208082526026908201527f4d696e74696e674d616e616765723a20535542444f4d41494e535f4e4f545f41604082015265131313d5d15160d21b606082015260800190565b600060018201614a4b57614a4b6149b4565b5060010190565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b60208082526022908201527f4d696e74696e674d616e616765723a20544c445f4e4f545f5245474953544552604082015261115160f21b606082015260800190565b600060208284031215614ad557600080fd5b5051919050565b6b756e732d646576746573742d60a01b81528183600c83013760009101600c01908152919050565b600181811c90821680614b1857607f821691505b602082108103614b3857634e487b7160e01b600052602260045260246000fd5b50919050565b600060208284031215614b5057600080fd5b81516137e081613ee4565b600081518084526020808501808196508360051b8101915082860160005b85811015614ba3578284038952614b91848351614350565b98850198935090840190600101614b79565b5091979650505050505050565b6001600160a01b038616815260a060208201819052600090614bd490830187614b5b565b8281036040840152614be68187614b5b565b90508281036060840152614bfa8186614b5b565b91505082151560808301529695505050505050565b600060018060a01b03808616835260606020840152614c316060840186614350565b9150808416604084015250949350505050565b606081526000614c576060830186614b5b565b8281036020840152614c698186614b5b565b915050826040830152949350505050565b600081614c8957614c896149b4565b506000190190565b60008251614ca381846020870161432c565b9190910192915050565b601f821115610cde57600081815260208120601f850160051c81016020861015614cd45750805b601f850160051c820191505b818110156116a357828155600101614ce0565b81516001600160401b03811115614d0c57614d0c614133565b614d2081614d1a8454614b04565b84614cad565b602080601f831160018114614d555760008415614d3d5750858301515b600019600386901b1c1916600185901b1785556116a3565b600085815260208120601f198616915b82811015614d8457888601518255948401946001909101908401614d65565b5085821015614da25787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b828152604060208201526000614dcb6040830184614350565b949350505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b80820180821115610954576109546149b4565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351614e6981601785016020880161432c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351614e9a81602884016020880161432c565b01602801949350505050565b8082028115828204841417610954576109546149b4565b634e487b7160e01b600052602160045260246000fdfe5496787fc1ebdfeba375028c1865f13fbb1d63c0caa356ccc1b29a80f3ebd6229f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000811000a","storage":{}},"0x24f45688d421f46cca60734bdc648ad192db0f2e":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0x1","0x97":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x12d":"0x0","0x15f":"0x5cc819c9915eadfcebd76952b8c1bc36cadd7376","0x13cf90498be59d359caa5b6092b365feab4610605d7107d1f05f8e94ac955652":"0x1","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x54563a9e1cd2dcbd0bca90d3cfa4a647e02c404a","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106102295760003560e01c8063886a69ba11610123578063cf1d21c0116100ab578063e2c49de11161006f578063e2c49de11461091d578063e3dec8fb14610932578063e43009a6146109c8578063e66f9603146109fb578063ea60c7c414610a2557610240565b8063cf1d21c014610844578063d233a3c714610859578063d547741f1461089c578063d81c8e52146108d5578063dc993a23146108ea57610240565b8063a217fddf116100f2578063a217fddf1461078a578063b4b4f63e1461079f578063bc08452b146107b4578063c4d66de8146107e7578063ca15c8731461081a57610240565b8063886a69ba146106c95780639010d07c146106de5780639173b1391461070e57806391d148541461075157610240565b80633138b6f1116101b1578063568b80b511610175578063568b80b5146105fb578063607f2d4214610610578063630fcbfb1461064e5780636cb136b0146106635780636e86b7701461069657610240565b80633138b6f1146104f55780633408e4701461050a57806336568abe1461051f5780633805550f146105585780634faa8a26146105d557610240565b80630f7e5970116101f85780630f7e59701461042357806320379ee514610438578063248a9ca31461045f5780632d0335ab146104895780632f2ff15d146104bc57610240565b806304967702146102455780630c3894bb146102765780630c53c51c146102b15780630c598220146103ea57610240565b366102405761023e610239610a58565b610a68565b005b600080fd5b34801561025157600080fd5b5061025a610b69565b604080516001600160a01b039092168252519081900360200190f35b34801561028257600080fd5b5061023e6004803603604081101561029957600080fd5b506001600160a01b0381358116916020013516610b78565b610375600480360360a08110156102c757600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156102f257600080fd5b82018360208201111561030457600080fd5b8035906020019184600183028401116401000000008311171561032657600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550508235935050506020810135906040013560ff16610cc9565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103af578181015183820152602001610397565b50505050905090810190601f1680156103dc5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156103f657600080fd5b5061023e6004803603604081101561040d57600080fd5b50803590602001356001600160a01b0316610fcc565b34801561042f57600080fd5b506103756110b9565b34801561044457600080fd5b5061044d6110d6565b60408051918252519081900360200190f35b34801561046b57600080fd5b5061044d6004803603602081101561048257600080fd5b50356110dc565b34801561049557600080fd5b5061044d600480360360208110156104ac57600080fd5b50356001600160a01b03166110f4565b3480156104c857600080fd5b5061023e600480360360408110156104df57600080fd5b50803590602001356001600160a01b031661110f565b34801561050157600080fd5b5061025a611176565b34801561051657600080fd5b5061044d611185565b34801561052b57600080fd5b5061023e6004803603604081101561054257600080fd5b50803590602001356001600160a01b0316611189565b34801561056457600080fd5b5061023e6004803603602081101561057b57600080fd5b81019060208101813564010000000081111561059657600080fd5b8201836020820111156105a857600080fd5b803590602001918460018302840111640100000000831117156105ca57600080fd5b5090925090506111ea565b61023e600480360360208110156105eb57600080fd5b50356001600160a01b03166116ec565b34801561060757600080fd5b5061044d6116f8565b34801561061c57600080fd5b5061063a6004803603602081101561063357600080fd5b503561171b565b604080519115158252519081900360200190f35b34801561065a57600080fd5b5061023e611730565b34801561066f57600080fd5b5061023e6004803603602081101561068657600080fd5b50356001600160a01b03166117d6565b3480156106a257600080fd5b5061025a600480360360208110156106b957600080fd5b50356001600160a01b031661186e565b3480156106d557600080fd5b5061044d611889565b3480156106ea57600080fd5b5061025a6004803603604081101561070157600080fd5b50803590602001356118aa565b34801561071a57600080fd5b5061023e6004803603606081101561073157600080fd5b506001600160a01b038135811691602081013590911690604001356118d1565b34801561075d57600080fd5b5061063a6004803603604081101561077457600080fd5b50803590602001356001600160a01b0316611a06565b34801561079657600080fd5b5061044d611a24565b3480156107ab57600080fd5b5061023e611a29565b3480156107c057600080fd5b5061023e600480360360208110156107d757600080fd5b50356001600160a01b0316611acf565b3480156107f357600080fd5b5061023e6004803603602081101561080a57600080fd5b50356001600160a01b0316611b67565b34801561082657600080fd5b5061044d6004803603602081101561083d57600080fd5b5035611c57565b34801561085057600080fd5b5061025a611c6e565b34801561086557600080fd5b5061023e6004803603606081101561087c57600080fd5b506001600160a01b03813581169160208101359091169060400135611c86565b3480156108a857600080fd5b5061023e600480360360408110156108bf57600080fd5b50803590602001356001600160a01b0316611de8565b3480156108e157600080fd5b5061044d611e41565b3480156108f657600080fd5b5061023e6004803603602081101561090d57600080fd5b50356001600160a01b0316611e60565b34801561092957600080fd5b5061025a611f3d565b34801561093e57600080fd5b5061023e6004803603606081101561095557600080fd5b6001600160a01b03823581169260208101359091169181019060608101604082013564010000000081111561098957600080fd5b82018360208201111561099b57600080fd5b803590602001918460018302840111640100000000831117156109bd57600080fd5b509092509050611f4c565b3480156109d457600080fd5b5061044d600480360360208110156109eb57600080fd5b50356001600160a01b0316611fe9565b348015610a0757600080fd5b5061025a60048036036020811015610a1e57600080fd5b5035611ffb565b348015610a3157600080fd5b5061025a60048036036020811015610a4857600080fd5b50356001600160a01b0316612016565b6000610a62612031565b90505b90565b604080513460208083019190915282518083039091018152908201909152610aa58273eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee8361208e565b7fa1829a9003092132f585b6ccdd167c19fe9774dbdea4260287e8a8e8ca8185d7546000908152600260205260408082205490516001600160a01b039091169034908381818185875af1925050503d8060008114610b1f576040519150601f19603f3d011682016040523d82523d6000602084013e610b24565b606091505b5050905080610b645760405162461bcd60e51b815260040180806020018281038252602781526020018061419d6027913960400191505060405180910390fd5b505050565b6009546001600160a01b031681565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020610ba981610ba4610a58565b611a06565b600a90610c495760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b820191906000526020600020905b815481529060010190602001808311610c1d57829003601f168201915b50509250505060405180910390fd5b506001600160a01b03808416600081815260036020908152604080832080546001600160a01b0319908116909155948716808452600483528184208054909616909555838352600590915280822082905551909291907f9e651a8866fbea043e911d816ec254b0e3c992c06fff32d605e72362d6023bd9908490a4505050565b6060610cd3613e2a565b50604080516060810182526001600160a01b0388166000818152600c602090815290849020548352820152908101869052610d118782878787612508565b610d4c5760405162461bcd60e51b81526004018080602001828103825260218152602001806141c46021913960400191505060405180910390fd5b6001600160a01b0387166000908152600c6020526040902054610d7690600163ffffffff6125e516565b6001600160a01b0388166000818152600c602090815260408083209490945583519283523383820181905260609484018581528b51958501959095528a517f5845892132946850460bff5a0083f71031bc5bf9aadcd40f1de79423eac9b10b958d9592948d94919260808501928601918190849084905b83811015610e05578181015183820152602001610ded565b50505050905090810190601f168015610e325780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a160006060306001600160a01b0316888a6040516020018083805190602001908083835b60208310610e835780518252601f199092019160209182019101610e64565b6001836020036101000a038019825116818451168082178552505050505050905001826001600160a01b03166001600160a01b031660601b8152601401925050506040516020818303038152906040526040518082805190602001908083835b60208310610f025780518252601f199092019160209182019101610ee3565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610f64576040519150601f19603f3d011682016040523d82523d6000602084013e610f69565b606091505b509150915081610fc0576040805162461bcd60e51b815260206004820152601c60248201527f46756e6374696f6e2063616c6c206e6f74207375636365737366756c00000000604482015290519081900360640190fd5b98975050505050505050565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020610ff881610ba4610a58565b600a9061105e5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5060008381526002602052604080822080546001600160a01b0319166001600160a01b0386169081179091559051909185917f8643692ae1c12ec91fa18e50b82ed93fa314f580999a236824db6de9ae0d839b9190a3505050565b604051806040016040528060018152602001603160f81b81525081565b600b5490565b6000818152600160205260409020600201545b919050565b6001600160a01b03166000908152600c602052604090205490565b60008281526001602052604090206002015461112d90610ba4610a58565b6111685760405162461bcd60e51b815260040180806020018281038252602f815260200180613f78602f913960400191505060405180910390fd5b611172828261263f565b5050565b6008546001600160a01b031690565b4690565b611191610a58565b6001600160a01b0316816001600160a01b0316146111e05760405162461bcd60e51b815260040180806020018281038252602f815260200180614286602f913960400191505060405180910390fd5b61117282826126ae565b606061123361122e84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061271d92505050565b612798565b905060006112548260028151811061124757fe5b602002602001015161291a565b6112796112748460088151811061126757fe5b6020026020010151612a62565b612b2c565b6112898460098151811061124757fe5b6040516020018084815260200183805190602001908083835b602083106112c15780518252601f1990920191602091820191016112a2565b51815160209384036101000a6000190180199092169116179052920193845250604080518085038152938201815283519382019390932060008181526006909252929020549194505060ff1615915061134d90505760405162461bcd60e51b81526004018080602001828103825260288152602001806142096028913960400191505060405180910390fd5b6000818152600660208190526040909120805460ff19166001179055825160609161138a9161122e9161138591879190811061126757fe5b61271d565b9050611394613e54565b6113b1826003815181106113a457fe5b6020026020010151612798565b6113c18560098151811061124757fe5b815181106113cb57fe5b6020026020010151905060006113fc6113e383612798565b6000815181106113ef57fe5b6020026020010151612c9f565b6001600160a01b0380821660009081526004602052604090205491925016806114565760405162461bcd60e51b81526004018080602001828103825260228152602001806140af6022913960400191505060405180910390fd5b6001600160a01b03808216600090815260056020908152604080832054835260029091529020548751911690611493908890600890811061124757fe5b63ffffffff1916156114d65760405162461bcd60e51b815260040180806020018281038252602581526020018061408a6025913960400191505060405180910390fd5b61151e6114e98860068151811061126757fe5b6114f98960088151811061126757fe5b6115098a60078151811061126757fe5b6115198b60058151811061124757fe5b612d2f565b61156f576040805162461bcd60e51b815260206004820152601f60248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f50524f4f4600604482015290519081900360640190fd5b6115dd6115828860028151811061124757fe5b6115928960038151811061124757fe5b6115a28a60048151811061124757fe5b60001b6115b58b60058151811061124757fe5b60001b6115c88c60008151811061124757fe5b6115d88d60018151811061126757fe5b612f76565b50806001600160a01b0316638274664f6115f5610a58565b846115ff886130bf565b6040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561167b578181015183820152602001611663565b50505050905090810190601f1680156116a85780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b1580156116c957600080fd5b505af11580156116dd573d6000803e3d6000fd5b50505050505050505050505050565b6116f581610a68565b50565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b01902081565b60066020526000908152604090205460ff1681565b600061173e81610ba4610a58565b600a906117a45760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506116f56040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b81525061312d565b60006117e481610ba4610a58565b600a9061184a5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5050600780546001600160a01b0319166001600160a01b0392909216919091179055565b6004602052600090815260409020546001600160a01b031681565b604080516826a0a82faa27a5a2a760b91b8152905190819003600901902081565b60008281526001602052604081206118c8908363ffffffff6131e916565b90505b92915050565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b0190206118fd81610ba4610a58565b600a906119635760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b03848116600090815260036020526040902054161580156119a457506001600160a01b0383811660009081526004602052604090205416155b6119f5576040805162461bcd60e51b815260206004820181905260248201527f526f6f74436861696e4d616e616765723a20414c52454144595f4d4150504544604482015290519081900360640190fd5b611a008484846131f5565b50505050565b60008281526001602052604081206118c8908363ffffffff61348416565b600081565b6000611a3781610ba4610a58565b600a90611a9d5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506116f56040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613499565b6000611add81610ba4610a58565b600a90611b435760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5050600880546001600160a01b0319166001600160a01b0392909216919091179055565b60005460ff1615611bb0576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b611be16040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613537565b611c126040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613499565b611c1d600082611168565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020611c479082611168565b506000805460ff19166001179055565b60008181526001602052604081206118cb90613589565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020611cb281610ba4610a58565b600a90611d185760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b0380851660009081526003602081815260408084205488861685526004835281852054861680865293909252909220549183169290911615611d8e576001600160a01b038116600090815260036020908152604080832080546001600160a01b031916905560059091528120555b6001600160a01b038281166000908152600460205260409020541615611dd5576001600160a01b038216600090815260046020526040902080546001600160a01b03191690555b611de08686866131f5565b505050505050565b600082815260016020526040902060020154611e0690610ba4610a58565b6111e05760405162461bcd60e51b81526004018080602001828103825260308152602001806140f96030913960400191505060405180910390fd5b604080516611115413d4d25560ca1b8152905190819003600701902081565b6000611e6e81610ba4610a58565b600a90611ed45760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b038216611f1a5760405162461bcd60e51b815260040180806020018281038252602d815260200180613fa7602d913960400191505060405180910390fd5b50600980546001600160a01b0319166001600160a01b0392909216919091179055565b6007546001600160a01b031690565b6001600160a01b03831673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee1415611fa85760405162461bcd60e51b81526004018080602001828103825260248152602001806141e56024913960400191505060405180910390fd5b611a00848484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061208e92505050565b60056020526000908152604090205481565b6002602052600090815260409020546001600160a01b031681565b6003602052600090815260409020546001600160a01b031681565b6000333014156120895760606000368080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505050503601516001600160a01b03169150610a659050565b503390565b6001600160a01b03808316600090815260056020908152604080832054600390925290912054909116158015906120c457508015155b6120ff5760405162461bcd60e51b81526004018080602001828103825260228152602001806140af6022913960400191505060405180910390fd5b6000818152600260205260409020546001600160a01b0316806121535760405162461bcd60e51b81526004018080602001828103825260248152602001806140176024913960400191505060405180910390fd5b6001600160a01b0385166121ae576040805162461bcd60e51b815260206004820152601e60248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f555345520000604482015290519081900360640190fd5b806001600160a01b031663e375b64e6121c5610a58565b8787876040518563ffffffff1660e01b815260040180856001600160a01b03166001600160a01b03168152602001846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561225c578181015183820152602001612244565b50505050905090810190601f1680156122895780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b1580156122ab57600080fd5b505af11580156122bf573d6000803e3d6000fd5b50505050606085858560405160200180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015612338578181015183820152602001612320565b50505050905090810190601f1680156123655780820380516001836020036101000a031916815260200191505b5060408051808303601f19018152828252600780546009546611115413d4d25560ca1b865284519586900390920185206020808701828152878701968752855160608901528551959d506001600160a01b039384169c506316f198319b5092909316985096508a955093608001919085019080838360005b838110156123f55781810151838201526020016123dd565b50505050905090810190601f1680156124225780820380516001836020036101000a031916815260200191505b5093505050506040516020818303038152906040526040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561249b578181015183820152602001612483565b50505050905090810190601f1680156124c85780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b1580156124e857600080fd5b505af11580156124fc573d6000803e3d6000fd5b50505050505050505050565b60006001600160a01b03861661254f5760405162461bcd60e51b81526004018080602001828103825260258152602001806141296025913960400191505060405180910390fd5b600161256261255d87613594565b613620565b83868660405160008152602001604052604051808581526020018460ff1660ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa1580156125bc573d6000803e3d6000fd5b505050602060405103516001600160a01b0316866001600160a01b031614905095945050505050565b6000828201838110156118c8576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600082815260016020526040902061265d908263ffffffff61366c16565b156111725761266a610a58565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b60008281526001602052604090206126cc908263ffffffff61368116565b15611172576126d9610a58565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612725613e54565b600082511161277b576040805162461bcd60e51b815260206004820152601f60248201527f524c505265616465723a20494e56414c49445f42595445535f4c454e47544800604482015290519081900360640190fd5b506040805180820190915281518152602082810190820152919050565b60606127a382613696565b6127f4576040805162461bcd60e51b815260206004820152601860248201527f524c505265616465723a204954454d5f4e4f545f4c4953540000000000000000604482015290519081900360640190fd5b60006127ff836136c2565b905060608167ffffffffffffffff8111801561281a57600080fd5b5060405190808252806020026020018201604052801561285457816020015b612841613e54565b8152602001906001900390816128395790505b5090506000612866856020015161374e565b855190915081146128a85760405162461bcd60e51b81526004018080602001828103825260278152602001806142316027913960400191505060405180910390fd5b60006128b786602001516137e2565b60208701510190506000805b8581101561290e576128d48361374e565b91506040518060400160405280838152602001848152508582815181106128f757fe5b6020908102919091010152918101916001016128c3565b50929695505050505050565b600061292582613696565b15612977576040805162461bcd60e51b815260206004820181905260248201527f524c505265616465723a204445434f44494e475f4c4953545f41535f55494e54604482015290519081900360640190fd5b8151602110156129ce576040805162461bcd60e51b815260206004820152601e60248201527f524c505265616465723a20494e56414c49445f55494e545f4c454e4754480000604482015290519081900360640190fd5b60006129dd836020015161374e565b83519091508114612a1f5760405162461bcd60e51b81526004018080602001828103825260278152602001806142b56027913960400191505060405180910390fd5b6000612a2e84602001516137e2565b84516020808701518301805193945091849003929190831015612a5857826020036101000a820491505b5095945050505050565b60606000612a73836020015161374e565b83519091508114612ab55760405162461bcd60e51b81526004018080602001828103825260288152602001806140d16028913960400191505060405180910390fd5b6000612ac484602001516137e2565b845190915081900360608167ffffffffffffffff81118015612ae557600080fd5b506040519080825280601f01601f191660200182016040528015612b10576020820181803683370190505b5090506000816020019050612a58848860200151018285613845565b604080516020810190915260008152815160609190156118cb57600080612b54600086613890565b60f81c90506001811480612b6b57508060ff166003145b15612bfa57600185516002020367ffffffffffffffff81118015612b8e57600080fd5b506040519080825280601f01601f191660200182016040528015612bb9576020820181803683370190505b5092506000612bc9600187613890565b90508084600081518110612bd957fe5b60200101906001600160f81b031916908160001a9053506001925050612c4b565b600285516002020367ffffffffffffffff81118015612c1857600080fd5b506040519080825280601f01601f191660200182016040528015612c43576020820181803683370190505b509250600091505b60ff82165b8351811015612c9657612c6b8360ff16820360020187613890565b848281518110612c7757fe5b60200101906001600160f81b031916908160001a905350600101612c50565b50505092915050565b6000612caa82613696565b15612ce65760405162461bcd60e51b815260040180806020018281038252602381526020018061417a6023913960400191505060405180910390fd5b8151601514612d265760405162461bcd60e51b81526004018080602001828103825260218152602001806142dc6021913960400191505060405180910390fd5b6118cb8261291a565b6000612d39613e54565b612d428461271d565b90506060612d4f82612798565b905060608085600082612d618b612b2c565b9050805160001415612d7d576000975050505050505050612f6e565b60005b8651811015612f65578151831115612da357600098505050505050505050612f6e565b612dbf878281518110612db257fe5b60200260200101516130bf565b955085805190602001208414612de057600098505050505050505050612f6e565b612def8782815181106113a457fe5b9450845160111415612eac578151831415612e4b578c80519060200120612e1c8660108151811061126757fe5b805190602001201415612e3a57600198505050505050505050612f6e565b600098505050505050505050612f6e565b6000828481518110612e5957fe5b016020015160f81c90506010811115612e7e5760009950505050505050505050612f6e565b612e9d868260ff1681518110612e9057fe5b60200260200101516138ed565b94505060019290920191612f5d565b845160021415612e3a576000612ed2612ecb8760008151811061126757fe5b848661398c565b905082518185011415612f28578d80519060200120612ef78760018151811061126757fe5b805190602001201415612f165760019950505050505050505050612f6e565b60009950505050505050505050612f6e565b80612f3f5760009950505050505050505050612f6e565b8084019350612f5486600181518110612e9057fe5b9450612f5d9050565b600101612d80565b50505050505050505b949350505050565b600854604080516320a9cea560e11b81526004810185905290516000928392839283926001600160a01b0316916341539d4a9160248083019260a0929190829003018186803b158015612fc857600080fd5b505afa158015612fdc573d6000803e3d6000fd5b505050506040513d60a0811015612ff257600080fd5b5080516020820151606090920151909450909250905061306161301b8b8463ffffffff613a6b16565b6040805160208082018f90528183018e9052606082018d905260808083018d90528351808403909101815260a0909201909252805191012090858863ffffffff613aad16565b6130b2576040805162461bcd60e51b815260206004820181905260248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f484541444552604482015290519081900360640190fd5b9998505050505050505050565b606080826000015167ffffffffffffffff811180156130dd57600080fd5b506040519080825280601f01601f191660200182016040528015613108576020820181803683370190505b50905060008160200190506131268460200151828660000151613845565b5092915050565b6040518060800160405280604f815260200161403b604f913980516020918201208251838301206040805180820190915260018152603160f81b930192909252907fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc630613198611185565b604080516020808201979097528082019590955260608501939093526001600160a01b03909116608084015260a0808401919091528151808403909101815260c090920190528051910120600b5550565b60006118c88383613c03565b6000818152600260205260409020546001600160a01b03166132485760405162461bcd60e51b815260040180806020018281038252602a815260200180613f07602a913960400191505060405180910390fd5b6001600160a01b03808416600081815260036020908152604080832080549588166001600160a01b031996871681179091558084526004835281842080549096168517909555838352600590915280822085905551849392917f9e651a8866fbea043e911d816ec254b0e3c992c06fff32d605e72362d6023bd991a4604080516001600160a01b0380861660208084019190915281861683850152606083810186905284518085038201815260808086018088526007546009546826a0a82faa27a5a2a760b91b9092528851978890036089018820888701818152898b019a8b528551968a019690965284519499918816986316f1983198939093169690958a9590949293909201919085019080838360005b8381101561337357818101518382015260200161335b565b50505050905090810190601f1680156133a05780820380516001836020036101000a031916815260200191505b5093505050506040516020818303038152906040526040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015613419578181015183820152602001613401565b50505050905090810190601f1680156134465780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b15801561346657600080fd5b505af115801561347a573d6000803e3d6000fd5b5050505050505050565b60006118c8836001600160a01b038416613c67565b806040516020018082805190602001908083835b602083106134cc5780518252601f1990920191602091820191016134ad565b51815160209384036101000a60001901801990921691161790527f3a20494e53554646494349454e545f5045524d495353494f4e530000000000009190930190815260408051808303600519018152601a909201905280516111729550600a94509201919050613e6e565b60005460ff1615613580576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b611c478161312d565b60006118cb82613c7f565b6000604051806080016040528060438152602001613fd460439139805190602001208260000151836020015184604001518051906020012060405160200180858152602001848152602001836001600160a01b03166001600160a01b03168152602001828152602001945050505050604051602081830303815290604052805190602001209050919050565b600061362a6110d6565b82604051602001808061190160f01b81525060020183815260200182815260200192505050604051602081830303815290604052805190602001209050919050565b60006118c8836001600160a01b038416613c83565b60006118c8836001600160a01b038416613ccd565b6020810151805160009190821a9060c08210156136b8576000925050506110ef565b5060019392505050565b6000806000905060006136d884602001516137e2565b602085015185519181019250015b80821015613745576136f78261374e565b820191508082111561373a5760405162461bcd60e51b815260040180806020018281038252602c81526020018061414e602c913960400191505060405180910390fd5b6001909201916136e6565b50909392505050565b80516000908190811a60808110156137695760019150613126565b60b881101561377e57607e1981019150613126565b60c08110156137ab5760b78103600185019450806020036101000a85510460018201810193505050613126565b60f88110156137c05760be1981019150613126565b60019390930151602084900360f7016101000a900490920160f5190192915050565b8051600090811a60808110156137fc5760009150506110ef565b60b8811080613817575060c08110801590613817575060f881105b156138265760019150506110ef565b60c081101561383a5760b5190190506110ef565b60f5190190506110ef565b8061384f57610b64565b5b6020811061386f578251825260209283019290910190601f1901613850565b915181516020939093036101000a6000190180199091169216919091179052565b600060028306156138c15760108260028504815181106138ac57fe5b016020015160f81c816138bb57fe5b066138e3565b60108260028504815181106138d257fe5b016020015160f81c816138e157fe5b045b60f81b9392505050565b6000806138fd836020015161374e565b8351909150811461393f5760405162461bcd60e51b815260040180806020018281038252602e815260200180614258602e913960400191505060405180910390fd5b825160211461397f5760405162461bcd60e51b8152600401808060200182810382526025815260200180613f536025913960400191505060405180910390fd5b5050602001516001015190565b600080606061399a86612b2c565b90506060815167ffffffffffffffff811180156139b657600080fd5b506040519080825280601f01601f1916602001820160405280156139e1576020820181803683370190505b509050845b82518601811015613a3b5760008782815181106139ff57fe5b602001015160f81c60f81b9050808388840381518110613a1b57fe5b60200101906001600160f81b031916908160001a905350506001016139e6565b50808051906020012082805190602001201415613a5b5781519250613a60565b600092505b509095945050505050565b60006118c883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250613d93565b60006020825181613aba57fe5b0615613b04576040805162461bcd60e51b8152602060048201526014602482015273092dcecc2d8d2c840e0e4dedecc40d8cadccee8d60631b604482015290519081900360640190fd5b60006020835181613b1157fe5b0490508060020a8510613b63576040805162461bcd60e51b81526020600482015260156024820152744c65616620696e64657820697320746f6f2062696760581b604482015290519081900360640190fd5b60008660205b85518111613bf55785810151925060028806613bb55781836040516020018083815260200182815260200192505050604051602081830303815290604052805190602001209150613be7565b828260405160200180838152602001828152602001925050506040516020818303038152906040528051906020012091505b600288049750602001613b69565b509094149695505050505050565b81546000908210613c455760405162461bcd60e51b8152600401808060200182810382526022815260200180613f316022913960400191505060405180910390fd5b826000018281548110613c5457fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000613c8f8383613c67565b613cc5575081546001818101845560008481526020808220909301849055845484825282860190935260409020919091556118cb565b5060006118cb565b60008181526001830160205260408120548015613d895783546000198083019190810190600090879083908110613d0057fe5b9060005260206000200154905080876000018481548110613d1d57fe5b600091825260208083209091019290925582815260018981019092526040902090840190558654879080613d4d57fe5b600190038181906000526020600020016000905590558660010160008781526020019081526020016000206000905560019450505050506118cb565b60009150506118cb565b60008184841115613e225760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015613de7578181015183820152602001613dcf565b50505050905090810190601f168015613e145780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60405180606001604052806000815260200160006001600160a01b03168152602001606081525090565b604051806040016040528060008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10613eaf57805160ff1916838001178555613edc565b82800160010185558215613edc579182015b82811115613edc578251825591602001919060010190613ec1565b50613ee8929150613eec565b5090565b610a6591905b80821115613ee85760008155600101613ef256fe526f6f74436861696e4d616e616765723a20544f4b454e5f545950455f4e4f545f535550504f52544544456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473524c505265616465723a20494e56414c49445f55494e545f5354524943545f4c454e475448416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e74526f6f74436861696e4d616e616765723a20494e56414c49445f4348494c445f434841494e5f414444524553534d6574615472616e73616374696f6e2875696e74323536206e6f6e63652c616464726573732066726f6d2c62797465732066756e6374696f6e5369676e617475726529526f6f74436861696e4d616e616765723a20494e56414c49445f544f4b454e5f54595045454950373132446f6d61696e28737472696e67206e616d652c737472696e672076657273696f6e2c6164647265737320766572696679696e67436f6e74726163742c627974657333322073616c7429526f6f74436861696e4d616e616765723a20494e56414c49445f4252414e43485f4d41534b526f6f74436861696e4d616e616765723a20544f4b454e5f4e4f545f4d4150504544524c505265616465723a2042595445535f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b654e61746976654d6574615472616e73616374696f6e3a20494e56414c49445f5349474e4552524c505265616465723a204e554d5f4954454d535f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a204445434f44494e475f4c4953545f41535f41444452455353526f6f74436861696e4d616e616765723a2045544845525f5452414e534645525f4641494c45445369676e657220616e64207369676e617475726520646f206e6f74206d61746368526f6f74436861696e4d616e616765723a20494e56414c49445f524f4f545f544f4b454e526f6f74436861696e4d616e616765723a20455849545f414c52454144595f50524f434553534544524c505265616465723a204c4953545f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a2055494e545f5354524943545f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66524c505265616465723a2055494e545f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a20494e56414c49445f414444524553535f4c454e475448a164736f6c6343000606000a","storage":{"0x0":"0x1","0x7":"0xe0afc4e9e03e4aa67257df7a2eca77454309789d","0x8":"0xbe5deac45dd1ca4ee18dc2d585d84d3d3cb82b0d","0x9":"0x0","0xa":"0x55","0xb":"0x2603903cfd8895fdde3da4d607d44203e86098073e351022fd12745d3436e93a","0xeb5be412f275a18f6e4d622aee4ff40b21467c926224771b782d4c095d1444b":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x162b27a30e878e20728deaa5c9814fd57ccf962b998b8733ce65749bc61c552f":"0x58a175bebc8ec21a94ea63aa5a28743945940ee6","0x1a93463c7bbb7215968307c7cd357c2009c10df2a511dd62c1189098e4f3249b":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x415fec6a4fd7706b96d3a0a30121284bc5e2b28b978c20486c9f5e20d44fc781":"0x1","0x4dc1f0160d96279adc262db20edcc15527e32cb28eda582becc5ac0bc453be34":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x5fc73aa2ab567caef8745f0709fae506c01972ffb297bd9225bc262d6e87746f":"0x1","0x6ce1cd05966f090b8daa7b2ee7f80930bbb39d19b693045725fbae5fa44fda90":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0xa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb49":"0x1","0xc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a8":"0x526f6f74436861696e4d616e616765723a20494e53554646494349454e545f50","0xc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a9":"0x45524d495353494f4e5300000000000000000000000000000000000000000000","0xd61ba0007bb57e62613f82f528c06ba46d36349cf5be567b12f878ef04849a7d":"0x1","0xf960df71fab73e593428c10f56f55e7ea46985963177def0458b97f1afec9576":"0xcf4e755f204163e9213ba8b1305036e386579ccc70731c25c62a101197811f48"}},"0x287dee389caaa49edc112888f2bcfd927b472e25":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c80634f89059e1461002d575b5f80fd5b61004061003b366004610125565b610054565b604051901515815260200160405180910390f35b5f806100985f85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101029050565b60ff1690505f811180156100f857506100f36100b5826001610191565b85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101029050565b60ff16155b9150505b92915050565b5f828281518110610115576101156101b0565b016020015160f81c905092915050565b5f8060208385031215610136575f80fd5b823567ffffffffffffffff8082111561014d575f80fd5b818501915085601f830112610160575f80fd5b81358181111561016e575f80fd5b86602082850101111561017f575f80fd5b60209290920196919550909350505050565b808201808211156100fc57634e487b7160e01b5f52601160045260245ffd5b634e487b7160e01b5f52603260045260245ffdfea164736f6c6343000818000a","storage":{}},"0x3198fc981626687f4b5bdf0fbeabb0a5e0489c03":{"nonce":1,"balance":"0x8ac7230489e80000","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0x1","0x97":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x13cf90498be59d359caa5b6092b365feab4610605d7107d1f05f8e94ac955652":"0x1","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xc2110388dd54228ae0a834119457ede938bf0b57","0x412386de53449251cbf7ce1f4c6a038bf9c0746e62d331b08ef0c3fa7d0ab672":"0x4fbf7b2f171336958be5d15ff762a5cff5363568","0x60793a5062d506d35cc8f1beda67ee5028c16bfcd9c923d5bfc439c04bd929b1":"0x6ac8f19d1e0f81147cdf2a1e53cb1f4e18417204","0x75df8b43665bf2e4996a686913c4c278ca7aed85444740ca40355b1c9a94b504":"0x1","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xf851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004":"0xc965345edac823d56812cd20a10316233916a605"}},"0x39a27956b78d00a4e00ea8833ff0947410a2933f":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xc9":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0xca":"0x4a3c194eb88966178bfdd81744dddafed611b830","0xcb":"0x4872cc1be60a9db9c880a0a437da7a6af134f08f","0xcc":"0xf8c26340c1eaea6c7ff1760b25005e1306953572","0xce":"0xce4bb7dc1eb9dce75743de6a4b48534fd427ef51","0xc6892776bb3da1e1199a03e0d3131aea089754b59c557b750c478ebc85ccaa":"0x6e66740000000000000000000000000000000000000000000000000000000006","0x6cb37a6d512a1e227e627eddc133023e6d00bfedff31a600abb75aa93e9a4a0":"0x6b7265737573000000000000000000000000000000000000000000000000000c","0x8e966fe8b9b43d48017ba1eb562ced91049de778396aaa438773698b3fa8fb6":"0x0","0x94a32b1c7b189ce7293f7ae444cdcab6800d858454022d15355d5ecc5b32b26":"0x0","0xa4b2d73a9f36ca5eed107f7c3d2ba877fb7537d447256726bcde9bac9e9aaee":"0x0","0xe0e3ab102c26f13da20123aa517b31e99cf65b7b720ba0dd7138012fd23eff2":"0x0","0x1203b5e51c7d5be6da42b83f22878d3583e53123857d27fc3cff3df46fb9126c":"0x0","0x13477730039a04f4290adf0e48e98b233579c040281545e4446ce662ba56a9be":"0x7800000000000000000000000000000000000000000000000000000000000002","0x1e06d49ce7b00846691778f302e94a3ac9c2633d745ebe73d68353c941e68dee":"0x626974636f696e0000000000000000000000000000000000000000000000000e","0x1e99199375610ffe00d28ee5827c616cf6469be3de2a2f738d955eb6b62127e8":"0x1","0x21e80eded1b2e1c5d976c85e89dde60bd4e99a8d66346af0e359ac854bceba44":"0x0","0x254d9ade81439f29723741d6ff407eab1fe03caffb042bd85e53955e41fb9792":"0x616c74696d697374000000000000000000000000000000000000000000000010","0x269db12b2cd2aeb7d5f52eda16edb1d211ccbea12da1ebfa60ed5f8f396c1d04":"0x0","0x2a3f03435eedee01de7e1c4386b04ca8469edd8df00408cd6d2b058bce1cecfa":"0x0","0x323a3cb169499006d6635c58232c8c58e23c20bf9e1d309d6b3bc6fb2c7a093d":"0x0","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x229c56b7805ab5935a883207f6a6bd5847e65aee","0x37aac864d4715a975bd45cae6be99de9f7968cf995917cc7f8192940fb62acbf":"0x0","0x3f69f26894a7ae0f7a7aa6c2d77935589dabbff6435aee960da15064dea7cd59":"0x64616f0000000000000000000000000000000000000000000000000000000006","0x467a68fda3230ce33f64703ebdbd91caccf235403282ae9fe390675ef39e9c94":"0x0","0x50ae8c017c4c1fddbe9509bd2b916f5dd9da11ddb639f2a4230322f49a41ac87":"0x1","0x5496787fc1ebdfeba375028c1865f13fbb1d63c0caa356ccc1b29a80f3ebd622":"0x0","0x576dd8d1a7b74aba0a99a213f50d74aa642a2c80bd5a854b24aac7568afea0f7":"0x626974676574000000000000000000000000000000000000000000000000000c","0x5b54338c052ce22ec334b6c5a19c4b122701c5fd4d3a2a5f5890f57050e0aafa":"0x626c6f636b636861696e00000000000000000000000000000000000000000014","0x5d9de30f0e5e02628e726fd23e310ee9e64489866fa6959825148a25d40e4c83":"0x0","0x5e2d99ab4a1a153039a4b2e068d64802da8735071a2d018ee9d04297945bed00":"0x0","0x670006c4193123492fb25db465ed52e62aff2f076289f4f1a5f167237f5e579d":"0x6d616e676100000000000000000000000000000000000000000000000000000a","0x6deac161c541001c0d79afaf7b809418785fa5ca6533d86bcf312e7213ee08fc":"0x0","0x6eaa0db35203bc0d58aff54ca630dd125b27758aa6204f7a11c0617f7c2fa776":"0x706f670000000000000000000000000000000000000000000000000000000006","0x732abe4661f55132b7f119cab9a9985be6630299dfc92870cc910f147795bc44":"0x0","0x743eb517f46c12bb593097087a972028308ce2e819a76cfb5488751f9d1ca34a":"0x7265616c6d00000000000000000000000000000000000000000000000000000a","0x750dfb39c9afc828c341e1a8e8fdca0b3914baf43303e1ef21fbfe8ec8ee016a":"0x0","0x7cbf647b96a1d1a533ea4bc3a4a8a78f166bd91e6a96afb12f063fef0e9cb960":"0x0","0x7dc972254779cfb51850c0eaccfcb71207822b3c10d4840567bec3dfbf0dff13":"0x636f6d0000000000000000000000000000000000000000000000000000000006","0x7dfa160584f41570c33e8e6c42c5314a7b45ddc162f99fd101ccc10c7b5b3dd3":"0x77616c6c6574000000000000000000000000000000000000000000000000000c","0x868a5f38a2d46181ffad442d7bc5b337b3c349a58e4979f2901786c6123b996c":"0x6b6c65766572000000000000000000000000000000000000000000000000000c","0x87b2c647061aef22ef1aba96c67f440d471dfac27e9873ff4a03793b402d32ee":"0x706f6c79676f6e0000000000000000000000000000000000000000000000000e","0x893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e":"0x7c3c91245769c8b7450ad522792dec4bd4bf797f","0x91e744007b4b3621bec7c01ea851c3f48cf196b9cc6c566a48cec8c5faac6e62":"0x0","0x92c5a28dd4caaa50e0a8370243a5c600f64349e8b03604b403cbe111b50f1f7b":"0x3838380000000000000000000000000000000000000000000000000000000006","0x947936973a3a21b10c8980e1a8939a55c7339d302161884a3de05cf090e812f0":"0x1","0x9535d3ea47c5e1398d3405b4fadc73de6b1b1e6a66f674a8886ab7a6c873a390":"0x63727970746f000000000000000000000000000000000000000000000000000c","0x9956a4e94676c45844be3667f17e077c7cb53aa4e87e5a71d65e56b291232715":"0x676f000000000000000000000000000000000000000000000000000000000004","0x9c6ba1ddff1ffbc14dcdc1f97db867554a42a39e00e892c7e882dbb3dca89ebf":"0x6869000000000000000000000000000000000000000000000000000000000004","0x9f836a0f81651f597cee678b440ba8c853c633e6654809efb83d4b22aff06fb2":"0x616e696d6500000000000000000000000000000000000000000000000000000a","0x9fecf1e12f4b8ec337da992721a0f27526ddbd6be1e77885ab963c09afcf0fc1":"0x0","0xab129a0f8c6cf8d160116a28abc7369c2f8a098fc023f00f07dc3e1d5798e47a":"0x0","0xb04c0eb6f034d9a3179a4e6f953bdf8afc78ba2cdcfbc775076e1c2a0bb67818":"0x0","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xbe51b53bc2060a7a6419622b5a9adc00b50a57e6aa741882f2f60f95d4580078":"0x636c617900000000000000000000000000000000000000000000000000000008","0xbf350522e335b8ab3da1d099c93cdc09179f1e15ea6aa1acfaa4afb1ef87eabf":"0x756e73746f707061626c65000000000000000000000000000000000000000016","0xcbf7a3d53e0851ac15a415b99c2ba95a2497dd9dd44068ac261bcbdafdfe8472":"0x707564677900000000000000000000000000000000000000000000000000000a","0xcf4411216f3fdf787d1cfe037bbcfa0d5293d83a8082f8e4141266399e2a784b":"0x61757374696e000000000000000000000000000000000000000000000000000c","0xcfdbac664139565f92cce149a345e5f19355d25b3eb8a70c549d5da3283a15b8":"0x7a696c0000000000000000000000000000000000000000000000000000000006","0xcfeb64c30a93ecd7224f854b09be57bb6b3962e739fa8e3ea3a1851502474c07":"0x1","0xe03c9c593ce8661bd39f77653f7ca6c43f093aa7f3b95890f309f67b57f39e74":"0x0","0xe50c62c16d12655dfdbd61c232155e5c3a1cf61977d2d8e7449cb88611b73832":"0x0","0xeeb0b17d77f2c9069ad443f3927c0802d98d5553e52b17c985d45d4a10b79566":"0x62696e616e636575730000000000000000000000000000000000000000000012","0xf562ef0db022f25a957fb6e49aa07004f14a50ed5b23279e9ac25b4632f7bf1c":"0x0","0xf6776268d6c5847a771099280c742d684a4b22bac609ba615de51f7f893ff2bc":"0x0"}},"0x3f1194b9019002863ad0dbbe295294547c0d36a9":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100b1575f3560e01c80635b0fc9c31161006e5780635b0fc9c3146101a55780635ef2c7f0146101b8578063a22cb465146101cb578063cf408823146101de578063e985e9c5146101f1578063f79fe5381461023c575f80fd5b80630178b8bf146100b557806302571be3146100fd57806306ab59231461011057806314ab90381461013157806316a25cbd146101465780631896f70a14610192575b5f80fd5b6100e06100c3366004610785565b5f908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100e061010b366004610785565b610266565b61012361011e3660046107b7565b610292565b6040519081526020016100f4565b61014461013f366004610800565b61035f565b005b610179610154366004610785565b5f90815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100f4565b6101446101a036600461082a565b61042e565b6101446101b336600461082a565b6104ef565b6101446101c636600461084b565b61058e565b6101446101d936600461089e565b6105af565b6101446101ec3660046108d7565b61061a565b61022c6101ff366004610921565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205460ff1690565b60405190151581526020016100f4565b61022c61024a366004610785565b5f908152602081905260409020546001600160a01b0316151590565b5f818152602081905260408120546001600160a01b031630810361028c57505f92915050565b92915050565b5f8381526020819052604081205484906001600160a01b0316338114806102db57506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b6102e3575f80fd5b604080516020808201899052818301889052825180830384018152606090920190925280519101206103158186610635565b6040516001600160a01b0386168152869088907fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829060200160405180910390a39695505050505050565b5f8281526020819052604090205482906001600160a01b0316338114806103a857506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b6103b0575f80fd5b60405167ffffffffffffffff8416815284907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a250505f91825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b5f8281526020819052604090205482906001600160a01b03163381148061047757506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b61047f575f80fd5b6040516001600160a01b038416815284907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a250505f9182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b5f8281526020819052604090205482906001600160a01b03163381148061053857506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b610540575f80fd5b61054a8484610635565b6040516001600160a01b038416815284907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a250505050565b5f61059a868686610292565b90506105a7818484610662565b505050505050565b335f8181526001602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b61062484846104ef565b61062f848383610662565b50505050565b5f9182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b5f838152602081905260409020600101546001600160a01b038381169116146106e6575f838152602081815260409182902060010180546001600160a01b0319166001600160a01b038616908117909155915191825284917f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a0910160405180910390a25b5f8381526020819052604090206001015467ffffffffffffffff828116600160a01b9092041614610780575f8381526020818152604091829020600101805467ffffffffffffffff60a01b1916600160a01b67ffffffffffffffff861690810291909117909155915191825284917f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa68910160405180910390a25b505050565b5f60208284031215610795575f80fd5b5035919050565b80356001600160a01b03811681146107b2575f80fd5b919050565b5f805f606084860312156107c9575f80fd5b83359250602084013591506107e06040850161079c565b90509250925092565b803567ffffffffffffffff811681146107b2575f80fd5b5f8060408385031215610811575f80fd5b82359150610821602084016107e9565b90509250929050565b5f806040838503121561083b575f80fd5b823591506108216020840161079c565b5f805f805f60a0868803121561085f575f80fd5b85359450602086013593506108766040870161079c565b92506108846060870161079c565b9150610892608087016107e9565b90509295509295909350565b5f80604083850312156108af575f80fd5b6108b88361079c565b9150602083013580151581146108cc575f80fd5b809150509250929050565b5f805f80608085870312156108ea575f80fd5b843593506108fa6020860161079c565b92506109086040860161079c565b9150610916606086016107e9565b905092959194509250565b5f8060408385031215610932575f80fd5b61093b8361079c565b91506108216020840161079c56fea164736f6c6343000818000a","storage":{"0xdd4f47a3b6f87903b728feed7a23273bd8de58e4fa257d37a74a5881e5d92ff":"0xf670681605efc4efc804f5a9b97ee89520473d56","0x14ce109f1cffdc11aa7355660be720f902291be09fb159b4c578958cd0f533bc":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x14ce109f1cffdc11aa7355660be720f902291be09fb159b4c578958cd0f533bd":"0x0","0x1e2c8528d7e8e90443ad0a4e37b6f2b1daed719a574ce3a0c347063e8d839d50":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1e2c8528d7e8e90443ad0a4e37b6f2b1daed719a574ce3a0c347063e8d839d51":"0x0","0x2fb4213711fd985fc1fb1ea2bfa660b0b37fd50c6c74ab531d9b54b29dd5177e":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2fb4213711fd985fc1fb1ea2bfa660b0b37fd50c6c74ab531d9b54b29dd5177f":"0x0","0x859ecef2e168dc10231b000bd53493b42bc9d944cac29d94582c1e1d43592131":"0xc965345edac823d56812cd20a10316233916a605","0x8878c6daefcfc78c7f181d00d719b4a0612dd3e65cafeb72507d15c036a9f690":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0xe4fdf45c2f8d198854f8823809c7a988eeaaa493","0xfb5568c6845cf0d5915af088a5d8ba90a5ff735e102c9a79609ef7d043f1108c":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xfb5568c6845cf0d5915af088a5d8ba90a5ff735e102c9a79609ef7d043f1108d":"0x0"}},"0x4872cc1be60a9db9c880a0a437da7a6af134f08f":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100935760003560e01c80637362d9c8116100665780637362d9c8146101285780637b1039991461014e57806399e0dd7c14610172578063bb5f747b146101e2578063d6cd94731461020857610093565b806310154bad14610098578063291d9549146100c05780633af32abf146100e65780634c5a628c14610120575b600080fd5b6100be600480360360208110156100ae57600080fd5b50356001600160a01b0316610210565b005b6100be600480360360208110156100d657600080fd5b50356001600160a01b0316610260565b61010c600480360360208110156100fc57600080fd5b50356001600160a01b03166102ad565b604080519115158252519081900360200190f35b6100be6102c6565b6100be6004803603602081101561013e57600080fd5b50356001600160a01b03166102d1565b61015661031e565b604080516001600160a01b039092168252519081900360200190f35b6100be6004803603602081101561018857600080fd5b8101906020810181356401000000008111156101a357600080fd5b8201836020820111156101b557600080fd5b803590602001918460018302840111640100000000831117156101d757600080fd5b50909250905061032d565b61010c600480360360208110156101f857600080fd5b50356001600160a01b0316610404565b6100be610416565b61021933610404565b6102545760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d8161041f565b50565b61026933610404565b6102a45760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d81610467565b60006102c060018363ffffffff6104af16565b92915050565b6102cf33610516565b565b6102da33610404565b6103155760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d8161055e565b6002546001600160a01b031690565b610336336102ad565b6103715760405162461bcd60e51b815260040180806020018281038252603a815260200180610712603a913960400191505060405180910390fd5b6002546040516369426cbd60e11b8152602060048201908152602482018490526001600160a01b039092169163d284d97a91859185918190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b1580156103e857600080fd5b505af11580156103fc573d6000803e3d6000fd5b505050505050565b60006102c0818363ffffffff6104af16565b6102cf33610467565b61043060018263ffffffff6105a616565b6040516001600160a01b038216907fee1504a83b6d4a361f4c1dc78ab59bfa30d6a3b6612c403e86bb01ef2984295f90600090a250565b61047860018263ffffffff61062716565b6040516001600160a01b038216907f270d9b30cf5b0793bbfd54c9d5b94aeb49462b8148399000265144a8722da6b690600090a250565b60006001600160a01b0382166104f65760405162461bcd60e51b81526004018080602001828103825260228152602001806106b06022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b61052760008263ffffffff61062716565b6040516001600160a01b038216907f0a8eb35e5ca14b3d6f28e4abf2f128dbab231a58b56e89beb5d636115001e16590600090a250565b61056f60008263ffffffff6105a616565b6040516001600160a01b038216907f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129990600090a250565b6105b082826104af565b15610602576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b61063182826104af565b61066c5760405162461bcd60e51b815260040180806020018281038252602181526020018061068f6021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f206164647265737357686974656c69737441646d696e526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c69737441646d696e20726f6c6557686974656c6973746564526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c697374656420726f6c65a265627a7a72315820debca60946c0819dc5b5c2756c5c1dd8dd8a46f2429fa8a43a4f4362af3030c164736f6c634300050c0032","storage":{"0x2":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x5ac40fcee41fb0272a935f6e51e963102fba5db6f20e897e9361f0347eb2cae6":"0x1","0xdc4aeb95a779c8b92b845e3a94044db8ff2e43acc37da18c4b35a6bbad7c122f":"0x1"}},"0x49da8861c65460639925febe1fb4b5b59b443082":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f7e83aee1461002d575b5f80fd5b61004061003b3660046101ac565b610054565b604051901515815260200160405180910390f35b5f602082146100a95760405162461bcd60e51b815260206004820152601a60248201527f496e76616c6964207368613235362068617368206c656e677468000000000000604482015260640160405180910390fd5b6100eb5f84848080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101459050565b600286866040516100fd929190610213565b602060405180830381855afa158015610118573d5f803e3d5ffd5b5050506040513d601f19601f8201168201806040525081019061013b9190610222565b1495945050505050565b81515f90610154836020610239565b111561015e575f80fd5b50016020015190565b5f8083601f840112610177575f80fd5b50813567ffffffffffffffff81111561018e575f80fd5b6020830191508360208285010111156101a5575f80fd5b9250929050565b5f805f80604085870312156101bf575f80fd5b843567ffffffffffffffff808211156101d6575f80fd5b6101e288838901610167565b909650945060208701359150808211156101fa575f80fd5b5061020787828801610167565b95989497509550505050565b818382375f9101908152919050565b5f60208284031215610232575f80fd5b5051919050565b8082018082111561025857634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x4a3c194eb88966178bfdd81744dddafed611b830":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061009e5760003560e01c806398650275116100665780639865027514610305578063aa271e1a1461030d578063b2da297914610347578063be362e2e146103c5578063c36c2125146104fe5761009e565b80634c0b0ed2146100a35780637b103999146101595780637caf3ad81461017d5780638ad364f814610258578063983b2d56146102df575b600080fd5b610157600480360360408110156100b957600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156100e357600080fd5b8201836020820111156100f557600080fd5b803590602001918460018302840111600160201b8311171561011657600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506105bd945050505050565b005b61016161074c565b604080516001600160a01b039092168252519081900360200190f35b6101576004803603608081101561019357600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156101bd57600080fd5b8201836020820111156101cf57600080fd5b803590602001918460018302840111600160201b831117156101f057600080fd5b919390926001600160a01b0383351692604081019060200135600160201b81111561021a57600080fd5b82018360208201111561022c57600080fd5b803590602001918460018302840111600160201b8311171561024d57600080fd5b50909250905061075b565b6101576004803603606081101561026e57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561029857600080fd5b8201836020820111156102aa57600080fd5b803590602001918460018302840111600160201b831117156102cb57600080fd5b9193509150356001600160a01b0316610957565b610157600480360360208110156102f557600080fd5b50356001600160a01b0316610b2b565b610157610b7b565b6103336004803603602081101561032357600080fd5b50356001600160a01b0316610b86565b604080519115158252519081900360200190f35b6101576004803603604081101561035d57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561038757600080fd5b82018360208201111561039957600080fd5b803590602001918460018302840111600160201b831117156103ba57600080fd5b509092509050610b9e565b610157600480360360608110156103db57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561040557600080fd5b82018360208201111561041757600080fd5b803590602001918460018302840111600160201b8311171561043857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b81111561048a57600080fd5b82018360208201111561049c57600080fd5b803590602001918460018302840111600160201b831117156104bd57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610bf1945050505050565b6101576004803603606081101561051457600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561053e57600080fd5b82018360208201111561055057600080fd5b803590602001918460018302840111600160201b8311171561057157600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550505090356001600160a01b03169150610dec9050565b6105c633610b86565b6106015760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b039092169163b5466669918591849163ebf0c717916004808301926020929190829003018186803b15801561064f57600080fd5b505afa158015610663573d6000803e3d6000fd5b505050506040513d602081101561067957600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052606060448301908152875160648401528751889360840190602085019080838360005b838110156106e25781810151838201526020016106ca565b50505050905090810190601f16801561070f5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15801561073057600080fd5b505af1158015610744573d6000803e3d6000fd5b505050505050565b6001546001600160a01b031690565b6107cf8686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f89018190048102820181019092528781529250879150869081908401838280828437600092019190915250610bf192505050565b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691632525d06a91869184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b15801561082557600080fd5b505afa158015610839573d6000803e3d6000fd5b505050506040513d602081101561084f57600080fd5b5051604080516001600160e01b031960e085901b1681526004810183815260248201928352604482018d90528d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b1580156108bd57600080fd5b505afa1580156108d1573d6000803e3d6000fd5b505050506040513d60208110156108e757600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b15801561093757600080fd5b505af115801561094b573d6000803e3d6000fd5b50505050505050505050565b6109a58484848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250610bf1915050565b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691632525d06a91849184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b1580156109fb57600080fd5b505afa158015610a0f573d6000803e3d6000fd5b505050506040513d6020811015610a2557600080fd5b5051604080516001600160e01b031960e085901b1681526004810183815260248201928352604482018b90528b928b92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b158015610a9357600080fd5b505afa158015610aa7573d6000803e3d6000fd5b505050506040513d6020811015610abd57600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b158015610b0d57600080fd5b505af1158015610b21573d6000803e3d6000fd5b5050505050505050565b610b3433610b86565b610b6f5760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b610b7881611115565b50565b610b843361115d565b565b6000610b98818363ffffffff6111a516565b92915050565b610bec8383838080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250610bf1915050565b505050565b610bfa33610b86565b610c355760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691630467e014918691849163ebf0c717916004808301926020929190829003018186803b158015610c8357600080fd5b505afa158015610c97573d6000803e3d6000fd5b505050506040513d6020811015610cad57600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052608060448301908152885160848401528851899389939291606482019160a40190602087019080838360005b83811015610d1f578181015183820152602001610d07565b50505050905090810190601f168015610d4c5780820380516001836020036101000a031916815260200191505b50838103825284518152845160209182019186019080838360005b83811015610d7f578181015183820152602001610d67565b50505050905090810190601f168015610dac5780820380516001836020036101000a031916815260200191505b509650505050505050600060405180830381600087803b158015610dcf57600080fd5b505af1158015610de3573d6000803e3d6000fd5b50505050505050565b610df533610b86565b610e305760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b039092169163b5466669918691849163ebf0c717916004808301926020929190829003018186803b158015610e7e57600080fd5b505afa158015610e92573d6000803e3d6000fd5b505050506040513d6020811015610ea857600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052606060448301908152885160648401528851899360840190602085019080838360005b83811015610f11578181015183820152602001610ef9565b50505050905090810190601f168015610f3e5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015610f5f57600080fd5b505af1158015610f73573d6000803e3d6000fd5b50506001546040805163ebf0c71760e01b815290516001600160a01b039092169350632525d06a9250849184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b158015610fcd57600080fd5b505afa158015610fe1573d6000803e3d6000fd5b505050506040513d6020811015610ff757600080fd5b5051604080516001600160e01b031960e085901b16815260048101838152602482019283528a5160448301528a518b93919260640190602085019080838360005b83811015611050578181015183820152602001611038565b50505050905090810190601f16801561107d5780820380516001836020036101000a031916815260200191505b50935050505060206040518083038186803b15801561109b57600080fd5b505afa1580156110af573d6000803e3d6000fd5b505050506040513d60208110156110c557600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b158015610dcf57600080fd5b61112660008263ffffffff61120c16565b6040516001600160a01b038216907f6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f690600090a250565b61116e60008263ffffffff61128d16565b6040516001600160a01b038216907fe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb6669290600090a250565b60006001600160a01b0382166111ec5760405162461bcd60e51b81526004018080602001828103825260228152602001806113466022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b61121682826111a5565b15611268576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b61129782826111a5565b6112d25760405162461bcd60e51b81526004018080602001828103825260218152602001806113256021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe4d696e746572526f6c653a2063616c6c657220646f6573206e6f74206861766520746865204d696e74657220726f6c65526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f2061646472657373a265627a7a72315820c058d70355f7d37ff6b3b61cd850cc4a41893e30048389698c062148bf3d2ff464736f6c634300050c0032","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x789b49055833748af4eaa9affbcd84118ce8770f7e4385b5a3f428626b1f0aff":"0x1","0xdc4aeb95a779c8b92b845e3a94044db8ff2e43acc37da18c4b35a6bbad7c122f":"0x1"}},"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061007b5760003560e01c80639623609d1161004e5780639623609d1461011157806399a88ec414610124578063f2fde38b14610144578063f3b7dead1461016457600080fd5b8063204e1c7a14610080578063715018a6146100bc5780637eff275e146100d35780638da5cb5b146100f3575b600080fd5b34801561008c57600080fd5b506100a061009b366004610499565b610184565b6040516001600160a01b03909116815260200160405180910390f35b3480156100c857600080fd5b506100d1610215565b005b3480156100df57600080fd5b506100d16100ee3660046104bd565b610229565b3480156100ff57600080fd5b506000546001600160a01b03166100a0565b6100d161011f36600461050c565b610291565b34801561013057600080fd5b506100d161013f3660046104bd565b610300565b34801561015057600080fd5b506100d161015f366004610499565b610336565b34801561017057600080fd5b506100a061017f366004610499565b6103b4565b6000806000836001600160a01b03166040516101aa90635c60da1b60e01b815260040190565b600060405180830381855afa9150503d80600081146101e5576040519150601f19603f3d011682016040523d82523d6000602084013e6101ea565b606091505b5091509150816101f957600080fd5b8080602001905181019061020d91906105e2565b949350505050565b61021d6103da565b6102276000610434565b565b6102316103da565b6040516308f2839760e41b81526001600160a01b038281166004830152831690638f283970906024015b600060405180830381600087803b15801561027557600080fd5b505af1158015610289573d6000803e3d6000fd5b505050505050565b6102996103da565b60405163278f794360e11b81526001600160a01b03841690634f1ef2869034906102c990869086906004016105ff565b6000604051808303818588803b1580156102e257600080fd5b505af11580156102f6573d6000803e3d6000fd5b5050505050505050565b6103086103da565b604051631b2ce7f360e11b81526001600160a01b038281166004830152831690633659cfe69060240161025b565b61033e6103da565b6001600160a01b0381166103a85760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b6103b181610434565b50565b6000806000836001600160a01b03166040516101aa906303e1469160e61b815260040190565b6000546001600160a01b031633146102275760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161039f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146103b157600080fd5b6000602082840312156104ab57600080fd5b81356104b681610484565b9392505050565b600080604083850312156104d057600080fd5b82356104db81610484565b915060208301356104eb81610484565b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561052157600080fd5b833561052c81610484565b9250602084013561053c81610484565b9150604084013567ffffffffffffffff8082111561055957600080fd5b818601915086601f83011261056d57600080fd5b81358181111561057f5761057f6104f6565b604051601f8201601f19908116603f011681019083821181831017156105a7576105a76104f6565b816040528281528960208487010111156105c057600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000602082840312156105f457600080fd5b81516104b681610484565b60018060a01b038316815260006020604081840152835180604085015260005b8181101561063b5785810183015185820160600152820161061f565b8181111561064d576000606083870101525b50601f01601f19169290920160600194935050505056fea26469706673582212207ad53e1008cce369999f6b5f2f77109510b404ff1de9b47b639981fd68e6239264736f6c63430008090033","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x4e59b44847b379578588920ca78fbf26c0b4956c":{"nonce":0,"balance":"0x0","code":"0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe03601600081602082378035828234f58015156039578182fd5b8082525050506014600cf3","storage":{}},"0x4eb9de1fc0d800e941f326d6699e9e11969557ea":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063100cdd911461002d575b5f80fd5b61004061003b3660046102cd565b610042565b005b5f5b818110156101b8575f7f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e28484848181106100805761008061033c565b905060200201356040516020016100a1929190918252602082015260400190565b60408051808303601f190181529082905280516020909101206331a9108f60e11b82526004820181905291507f000000000000000000000000107733fed96c4cd390c944a31f5425a7fb98ae5e6001600160a01b0316906323b872dd908290636352211e90602401602060405180830381865afa158015610124573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101489190610350565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015261dead6024820152604481018490526064015f604051808303815f87803b158015610195575f80fd5b505af11580156101a7573d5f803e3d5ffd5b505060019093019250610044915050565b5080156102c9577f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e282826101ed60018261037d565b8181106101fc576101fc61033c565b9050602002013560405160200161021d929190918252602082015260400190565b604051602081830303815290604052805190602001205f1c7f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e283835f8181106102685761026861033c565b90506020020135604051602001610289929190918252602082015260400190565b60408051601f19818403018152908290528051602090910120907fdf423376f9b0ab363b1b4d6f0b4cb6821921ec30f491555a97236a8a38ce095a905f90a35b5050565b5f80602083850312156102de575f80fd5b823567ffffffffffffffff808211156102f5575f80fd5b818501915085601f830112610308575f80fd5b813581811115610316575f80fd5b8660208260051b850101111561032a575f80fd5b60209290920196919550909350505050565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215610360575f80fd5b81516001600160a01b0381168114610376575f80fd5b9392505050565b8181038181111561039c57634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x4fbf7b2f171336958be5d15ff762a5cff5363568":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061011b575f3560e01c80638d839ffe1161009d578063aeb8ce9b11610062578063aeb8ce9b14610356578063ce1e09c014610375578063d3419bf3146103a8578063f14fcbc8146103db578063f2fde38b146103fa575f80fd5b80638d839ffe146102a25780638da5cb5b146102d55780639791c097146102f1578063a8e5fbc014610310578063acf1a84114610343575f80fd5b806374694a2b116100e357806374694a2b146101c957806380869853146101dc578063839df9451461022757806383e7f6ff146102525780638a95b09f1461028c575f80fd5b806301ffc9a71461011f5780633ccfd60b146101535780635d3590d51461016957806365a69dcf14610188578063715018a6146101b5575b5f80fd5b34801561012a575f80fd5b5061013e610139366004611145565b610419565b60405190151581526020015b60405180910390f35b34801561015e575f80fd5b5061016761044f565b005b348015610174575f80fd5b50610167610183366004611187565b610489565b348015610193575f80fd5b506101a76101a23660046112e4565b610507565b60405190815260200161014a565b3480156101c0575f80fd5b5061016761058b565b6101676101d73660046113db565b61059e565b3480156101e7575f80fd5b5061020f7f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5681565b6040516001600160a01b03909116815260200161014a565b348015610232575f80fd5b506101a761024136600461149d565b60016020525f908152604090205481565b34801561025d575f80fd5b5061027161026c3660046114b4565b610894565b6040805182518152602092830151928101929092520161014a565b348015610297575f80fd5b506101a76224ea0081565b3480156102ad575f80fd5b506101a77f000000000000000000000000000000000000000000000000000000000000025881565b3480156102e0575f80fd5b505f546001600160a01b031661020f565b3480156102fc575f80fd5b5061013e61030b3660046114f6565b6109c9565b34801561031b575f80fd5b5061020f7f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e1841720481565b610167610351366004611528565b6109dd565b348015610361575f80fd5b5061013e6103703660046114f6565b610b7b565b348015610380575f80fd5b506101a77f000000000000000000000000000000000000000000000000000000000001518081565b3480156103b3575f80fd5b5061020f7f000000000000000000000000ec71e4e674fe0f432693dc2b935c34bd2774c00381565b3480156103e6575f80fd5b506101676103f536600461149d565b610c22565b348015610405575f80fd5b50610167610414366004611570565b610c95565b5f6001600160e01b031982166301ffc9a760e01b148061044957506001600160e01b0319821663612e8c0960e01b145b92915050565b5f80546040516001600160a01b03909116914780156108fc02929091818181858888f19350505050158015610486573d5f803e3d5ffd5b50565b610491610d0b565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af11580156104dd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105019190611589565b50505050565b885160208a01205f90841580159061052657506001600160a01b038716155b15610544576040516334fd817160e21b815260040160405180910390fd5b808a8a8a8a8a8a8a8a6040516020016105659998979695949392919061165e565b604051602081830303815290604052805190602001209150509998505050505050505050565b610593610d0b565b61059c5f610d64565b565b5f6105df8b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c9250610894915050565b602081015181519192506105f2916116d5565b3410156106125760405163044044a560e21b815260040160405180910390fd5b6106b38b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f82011690508083019250505050505050896106ae8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f820116905080830192505050505050508d8d8d8d8d8d8d8d610507565b610db3565b604051635200a4c160e11b81525f906001600160a01b037f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e18417204169063a40149829061070b908f908f908f908f908e908b906004016116e8565b6020604051808303815f875af1158015610727573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061074b9190611732565b9050841561077657610776878d8d604051610767929190611749565b60405180910390208888610ece565b83156107be576107be8c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508b9250339150610f939050565b896001600160a01b03168c8c6040516107d8929190611749565b60405180910390207f69e37f151eb98a09618ddaa80c8cfaf1ce5996867c489f45b555b412271ebf278e8e865f015187602001518760405161081e959493929190611758565b60405180910390a36020820151825161083791906116d5565b341115610886576020820151825133916108fc9161085591906116d5565b61085f9034611788565b6040518115909202915f818181858888f19350505050158015610884573d5f803e3d5ffd5b505b505050505050505050505050565b604080518082019091525f808252602082015282516020840120604051636b727d4360e11b8152600481018290527f000000000000000000000000ec71e4e674fe0f432693dc2b935c34bd2774c0036001600160a01b03908116916350e9a7159187917f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063d6e4fa8690602401602060405180830381865afa158015610940573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109649190611732565b866040518463ffffffff1660e01b8152600401610983939291906117e8565b6040805180830381865afa15801561099d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109c1919061180c565b949350505050565b5f60036109d583611044565b101592915050565b5f83836040516109ee929190611749565b604080519182900382206020601f8701819004810284018101909252858352925082915f91610a39919088908890819084018382808284375f92019190915250889250610894915050565b8051909150341015610a5e5760405163044044a560e21b815260040160405180910390fd5b60405163c475abff60e01b815260048101839052602481018590525f907f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b03169063c475abff906044016020604051808303815f875af1158015610acb573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610aef9190611732565b8251909150341115610b3457815133906108fc90610b0d9034611788565b6040518115909202915f818181858888f19350505050158015610b32573d5f803e3d5ffd5b505b837f3da24c024582931cfaf8267d8ed24d13a82a8068d5bd337d30ec45cea4e506ae88883485604051610b6a9493929190611859565b60405180910390a250505050505050565b805160208201205f90610b8d836109c9565b8015610c1b57506040516312dc929d60e31b8152600481018290527f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b0316906396e494e890602401602060405180830381865afa158015610bf7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c1b9190611589565b9392505050565b5f818152600160205260409020544290610c5d907f0000000000000000000000000000000000000000000000000000000000015180906116d5565b10610c8357604051630a059d7160e01b8152600481018290526024015b60405180910390fd5b5f908152600160205260409020429055565b610c9d610d0b565b6001600160a01b038116610d025760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610c7a565b61048681610d64565b5f546001600160a01b0316331461059c5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610c7a565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f818152600160205260409020544290610dee907f0000000000000000000000000000000000000000000000000000000000000258906116d5565b1115610e1057604051635320bcf960e01b815260048101829052602401610c7a565b5f818152600160205260409020544290610e4b907f0000000000000000000000000000000000000000000000000000000000015180906116d5565b11610e6c5760405163cb7690d760e01b815260048101829052602401610c7a565b610e7583610b7b565b610e9457826040516308eee0fd60e31b8152600401610c7a919061187f565b5f818152600160205260408120556224ea00821015610ec957604051639a71997b60e01b815260048101839052602401610c7a565b505050565b604080517f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae6020808301919091528183018690528251808303840181526060830193849052805191012063e32954eb60e01b90925285906001600160a01b0382169063e32954eb90610f4890859088908890606401611891565b5f604051808303815f875af1158015610f63573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052610f8a91908101906118b3565b50505050505050565b7f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d566001600160a01b0316637a806d6b33838587604051602001610fd691906119a7565b6040516020818303038152906040526040518563ffffffff1660e01b815260040161100494939291906119ce565b6020604051808303815f875af1158015611020573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105019190611732565b80515f90819081905b8082101561113c575f85838151811061106857611068611a0b565b01602001516001600160f81b0319169050600160ff1b811015611097576110906001846116d5565b9250611129565b600760fd1b6001600160f81b0319821610156110b8576110906002846116d5565b600f60fc1b6001600160f81b0319821610156110d9576110906003846116d5565b601f60fb1b6001600160f81b0319821610156110fa576110906004846116d5565b603f60fa1b6001600160f81b03198216101561111b576110906005846116d5565b6111266006846116d5565b92505b508261113481611a1f565b93505061104d565b50909392505050565b5f60208284031215611155575f80fd5b81356001600160e01b031981168114610c1b575f80fd5b80356001600160a01b0381168114611182575f80fd5b919050565b5f805f60608486031215611199575f80fd5b6111a28461116c565b92506111b06020850161116c565b9150604084013590509250925092565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff811182821017156111fd576111fd6111c0565b604052919050565b5f67ffffffffffffffff82111561121e5761121e6111c0565b50601f01601f191660200190565b5f82601f83011261123b575f80fd5b813561124e61124982611205565b6111d4565b818152846020838601011115611262575f80fd5b816020850160208301375f918101602001919091529392505050565b5f8083601f84011261128e575f80fd5b50813567ffffffffffffffff8111156112a5575f80fd5b6020830191508360208260051b85010111156112bf575f80fd5b9250929050565b8015158114610486575f80fd5b803561ffff81168114611182575f80fd5b5f805f805f805f805f6101008a8c0312156112fd575f80fd5b893567ffffffffffffffff80821115611314575f80fd5b6113208d838e0161122c565b9a5061132e60208d0161116c565b995060408c0135985060608c0135975061134a60808d0161116c565b965060a08c013591508082111561135f575f80fd5b5061136c8c828d0161127e565b90955093505060c08a0135611380816112c6565b915061138e60e08b016112d3565b90509295985092959850929598565b5f8083601f8401126113ad575f80fd5b50813567ffffffffffffffff8111156113c4575f80fd5b6020830191508360208285010111156112bf575f80fd5b5f805f805f805f805f806101008b8d0312156113f5575f80fd5b8a3567ffffffffffffffff8082111561140c575f80fd5b6114188e838f0161139d565b909c509a508a915061142c60208e0161116c565b995060408d0135985060608d0135975061144860808e0161116c565b965060a08d013591508082111561145d575f80fd5b5061146a8d828e0161127e565b90955093505060c08b013561147e816112c6565b915061148c60e08c016112d3565b90509295989b9194979a5092959850565b5f602082840312156114ad575f80fd5b5035919050565b5f80604083850312156114c5575f80fd5b823567ffffffffffffffff8111156114db575f80fd5b6114e78582860161122c565b95602094909401359450505050565b5f60208284031215611506575f80fd5b813567ffffffffffffffff81111561151c575f80fd5b6109c18482850161122c565b5f805f6040848603121561153a575f80fd5b833567ffffffffffffffff811115611550575f80fd5b61155c8682870161139d565b909790965060209590950135949350505050565b5f60208284031215611580575f80fd5b610c1b8261116c565b5f60208284031215611599575f80fd5b8151610c1b816112c6565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b5f838385526020808601955060208560051b830101845f5b8781101561165157848303601f19018952813536889003601e19018112611609575f80fd5b8701848101903567ffffffffffffffff811115611624575f80fd5b803603821315611632575f80fd5b61163d8582846115a4565b9a86019a94505050908301906001016115e4565b5090979650505050505050565b8981526001600160a01b03898116602083015260408201899052606082018890528616608082015261010060a082018190525f9061169f83820187896115cc565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610449576104496116c1565b60a081525f6116fb60a08301888a6115a4565b6001600160a01b03968716602084015260408301959095525091909316606082015261ffff90921660809092019190915292915050565b5f60208284031215611742575f80fd5b5051919050565b818382375f9101908152919050565b608081525f61176b6080830187896115a4565b602083019590955250604081019290925260609091015292915050565b81810381811115610449576104496116c1565b5f5b838110156117b557818101518382015260200161179d565b50505f910152565b5f81518084526117d481602086016020860161179b565b601f01601f19169290920160200192915050565b606081525f6117fa60608301866117bd565b60208301949094525060400152919050565b5f6040828403121561181c575f80fd5b6040516040810181811067ffffffffffffffff8211171561183f5761183f6111c0565b604052825181526020928301519281019290925250919050565b606081525f61186c6060830186886115a4565b6020830194909452506040015292915050565b602081525f610c1b60208301846117bd565b838152604060208201525f6118aa6040830184866115cc565b95945050505050565b5f60208083850312156118c4575f80fd5b825167ffffffffffffffff808211156118db575f80fd5b818501915085601f8301126118ee575f80fd5b815181811115611900576119006111c0565b8060051b61190f8582016111d4565b9182528381018501918581019089841115611928575f80fd5b86860192505b8383101561199a57825185811115611944575f80fd5b8601603f81018b13611954575f80fd5b87810151604061196661124983611205565b8281528d82848601011115611979575f80fd5b611988838c830184870161179b565b8552505050918601919086019061192e565b9998505050505050505050565b5f82516119b881846020870161179b565b6305ccae8d60e31b920191825250600401919050565b6001600160a01b0385811682528481166020830152831660408201526080606082018190525f90611a01908301846117bd565b9695505050505050565b634e487b7160e01b5f52603260045260245ffd5b5f60018201611a3057611a306116c1565b506001019056fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x5155f5627bdf9795b3dbb8887001ada1eeba93f2":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063de8f50a11461002d575b5f80fd5b61004761003b3660046100a0565b60019695505050505050565b604051901515815260200160405180910390f35b5f8083601f84011261006b575f80fd5b50813567ffffffffffffffff811115610082575f80fd5b602083019150836020828501011115610099575f80fd5b9250929050565b5f805f805f80606087890312156100b5575f80fd5b863567ffffffffffffffff808211156100cc575f80fd5b6100d88a838b0161005b565b909850965060208901359150808211156100f0575f80fd5b6100fc8a838b0161005b565b90965094506040890135915080821115610114575f80fd5b5061012189828a0161005b565b979a969950949750929593949250505056fea164736f6c6343000818000a","storage":{}},"0x54563a9e1cd2dcbd0bca90d3cfa4a647e02c404a":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106101db575f3560e01c80638da5cb5b116100fd578063c4d66de811610092578063daea85c511610062578063daea85c51461055e578063e7acab241461057d578063f2fde38b1461059c578063ffa1ad74146105bb575f80fd5b8063c4d66de8146104e1578063d539139314610500578063d547741f14610520578063d9caed121461053f575f80fd5b8063a217fddf116100cd578063a217fddf14610452578063a3f4df7e14610465578063a4247400146104a3578063aa271e1a146104c2575f80fd5b80638da5cb5b146103d957806391d1485414610400578063983b2d561461041f578063986502751461043e575f80fd5b80635c975abb11610173578063715018a611610143578063715018a61461037f57806371e2a6571461039357806381c81d35146103b25780638456cb59146103c5575f80fd5b80635c975abb146103165780635fc1964f1461032e578063634486da1461034d5780636ccbae5f14610360575f80fd5b80633092afd5116101ae5780633092afd51461029c57806336568abe146102bb5780633f4ba83a146102da578063572b6c05146102ee575f80fd5b806301ffc9a7146101df5780631bf7e13e14610213578063248a9ca31461023f5780632f2ff15d1461027b575b5f80fd5b3480156101ea575f80fd5b506101fe6101f9366004611ee0565b6105eb565b60405190151581526020015b60405180910390f35b34801561021e575f80fd5b5061023261022d366004611f07565b610621565b60405161020a9190611fe9565b34801561024a575f80fd5b5061026d610259366004611ffb565b5f90815260fb602052604090206001015490565b60405190815260200161020a565b348015610286575f80fd5b5061029a610295366004612036565b6106ea565b005b3480156102a7575f80fd5b5061029a6102b6366004612064565b610713565b3480156102c6575f80fd5b5061029a6102d5366004612036565b610727565b3480156102e5575f80fd5b5061029a6107ba565b3480156102f9575f80fd5b506101fe610308366004612064565b6001600160a01b0316301490565b348015610321575f80fd5b5061012d5460ff166101fe565b348015610339575f80fd5b5061029a6103483660046120eb565b6107d4565b61029a61035b366004612064565b610811565b34801561036b575f80fd5b5061026d61037a366004611ffb565b6108d1565b34801561038a575f80fd5b5061029a61092a565b34801561039e575f80fd5b5061029a6103ad3660046120eb565b61093b565b61029a6103c0366004612064565b610978565b3480156103d0575f80fd5b5061029a6109f5565b3480156103e4575f80fd5b506097546040516001600160a01b03909116815260200161020a565b34801561040b575f80fd5b506101fe61041a366004612036565b610a0d565b34801561042a575f80fd5b5061029a610439366004612064565b610a37565b348015610449575f80fd5b5061029a610a48565b34801561045d575f80fd5b5061026d5f81565b348015610470575f80fd5b506102326040518060400160405280601381526020017229b2b0b837b93a10283937bc3c90213abcb2b960691b81525081565b3480156104ae575f80fd5b506101fe6104bd366004611f07565b610a61565b3480156104cd575f80fd5b506101fe6104dc366004612064565b610ab2565b3480156104ec575f80fd5b5061029a6104fb366004612064565b610aca565b34801561050b575f80fd5b5061026d5f80516020612ea783398151915281565b34801561052b575f80fd5b5061029a61053a366004612036565b610c21565b34801561054a575f80fd5b5061029a61055936600461218b565b610c45565b348015610569575f80fd5b5061029a610578366004612064565b610cf7565b348015610588575f80fd5b506101fe6105973660046121c9565b610dac565b3480156105a7575f80fd5b5061029a6105b6366004612064565b6111db565b3480156105c6575f80fd5b5061023260405180604001604052806005815260200164302e302e3160d81b81525081565b5f6001600160e01b03198216637965db0b60e01b148061061b57506301ffc9a760e01b6001600160e01b03198316145b92915050565b60605f5a9050610632858585610a61565b61064f57604051638baa579f60e01b815260040160405180910390fd5b6106df61065f6020870187612064565b3060408801358461067360608b018b61227b565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f920191909152506111f692505050565b9150505b9392505050565b5f82815260fb6020526040902060010154610704816112d4565b61070e83836112e5565b505050565b61071b61136b565b610724816113e4565b50565b61072f6113fb565b6001600160a01b0316816001600160a01b0316146107ac5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6107b68282611409565b5050565b6107c261136b565b6107ca61148d565b6107d26114d7565b565b6107dc61136b565b5f5b81518110156107b6576108098282815181106107fc576107fc6122bd565b60200260200101516113e4565b6001016107de565b61081c6104dc6113fb565b6108385760405162461bcd60e51b81526004016107a3906122d1565b6001600160a01b03811661088e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016107a3565b61089781611530565b61089f610a48565b6040516001600160a01b038216903480156108fc02915f818181858888f193505050501580156107b6573d5f803e3d5ffd5b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f90610923906060016040516020818303038152906040528051906020012090565b5492915050565b61093261136b565b6107d25f611547565b61094361136b565b5f5b81518110156107b657610970828281518110610963576109636122bd565b6020026020010151611530565b600101610945565b6109836104dc6113fb565b61099f5760405162461bcd60e51b81526004016107a3906122d1565b6001600160a01b0381166108975760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016107a3565b6109fd61136b565b610a05611598565b6107d26115df565b5f91825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610a3f61136b565b61072481611530565b6107d25f80516020612ea78339815191526102d56113fb565b5f610aaa610a6e85612306565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061161e92505050565b949350505050565b5f61061b5f80516020612ea783398151915283610a0d565b5f54610100900460ff1615808015610ae857505f54600160ff909116105b80610b015750303b158015610b0157505f5460ff166001145b610b645760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107a3565b5f805460ff191660011790558015610b85575f805461ff0019166101001790555b61015f80546001600160a01b0319166001600160a01b038416179055610ba9611759565b610bb1611786565b610bb9611786565b610bc1611786565b610bc96117ac565b610bd16117e2565b610bd9611819565b80156107b6575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b5f82815260fb6020526040902060010154610c3b816112d4565b61070e8383611409565b610c4d61136b565b600260335403610c6f5760405162461bcd60e51b81526004016107a3906123c2565b6002603355610c7c611598565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af1158015610cc8573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cec91906123f9565b505060016033555050565b610cff61136b565b600260335403610d215760405162461bcd60e51b81526004016107a3906123c2565b6002603355610d2e611598565b61015f5460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529082169063095ea7b3906044016020604051808303815f875af1158015610d7f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610da391906123f9565b50506001603355565b5f610db86104dc6113fb565b610dd45760405162461bcd60e51b81526004016107a3906122d1565b600260335403610df65760405162461bcd60e51b81526004016107a3906123c2565b6002603355610e03611598565b6001600160a01b038216610e2a576040516311d000e160e31b815260040160405180910390fd5b30610e358780612418565b610e46906040810190602001612064565b6001600160a01b031614610e6d57604051639d3c586b60e01b815260040160405180910390fd5b610e75611e67565b610e7f8780612418565b610e8d906020810190612064565b6001600160a01b03168152610ea28780612418565b610eb3906040810190602001612064565b6001600160a01b03166020820152610ecb8780612418565b610ed9906040810190612437565b808060200260200160405190810160405280939291908181526020015f905b82821015610f2457610f1560a08302860136819003810190612489565b81526020019060010190610ef8565b50505050506040820152610f388780612418565b610f46906060810190612506565b808060200260200160405190810160405280939291908181526020015f905b82821015610f9157610f8260c0830286013681900381019061254a565b81526020019060010190610f65565b50505050506060820152610fa58780612418565b610fb69060a08101906080016125e5565b81608001906004811115610fcc57610fcc6125fe565b90816004811115610fdf57610fdf6125fe565b905250610fec8780612418565b60a090810135908201526110008780612418565b60c090810135908201526110148780612418565b60e090810135908201526110288780612418565b610100908101359082015261103d8780612418565b610120908101359082015261015f54815160405163f07ec37360e01b81526001600160a01b03918216600482015291169063f07ec37390602401602060405180830381865afa158015611092573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110b69190612612565b61014082015261015f546040516379df72bd60e01b8152611133916001600160a01b0316906379df72bd906110ef908590600401612737565b602060405180830381865afa15801561110a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061112e9190612612565b61184c565b61015f546040516339eb2ac960e21b81526001600160a01b039091169063e7acab249061116c908a908a908a908a908a90600401612b24565b6020604051808303815f875af1158015611188573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111ac91906123f9565b9150816111cc57604051636725093760e01b815260040160405180910390fd5b50600160335595945050505050565b6111e361136b565b6111ec81611865565b6107245f826118db565b6060611201856118e5565b5f80876001600160a01b03168661121a8b8a898961194a565b6040516112279190612cfa565b5f604051808303815f8787f1925050503d805f8114611261576040519150601f19603f3d011682016040523d82523d5f602084013e611266565b606091505b509092509050611277603f87612d1f565b5a1161128557611285612d3e565b6112c582826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061197a565b925050505b9695505050505050565b610724816112e06113fb565b6119b3565b6112ef8282610a0d565b6107b6575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191660011790556113276113fb565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6113736113fb565b6001600160a01b031661138e6097546001600160a01b031690565b6001600160a01b0316146107d25760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107a3565b6107245f80516020612ea783398151915282610c21565b5f611404611a17565b905090565b6114138282610a0d565b156107b6575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191690556114496113fb565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b61012d5460ff166107d25760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b60448201526064016107a3565b6114df61148d565b61012d805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6115136113fb565b6040516001600160a01b03909116815260200160405180910390a1565b6107245f80516020612ea7833981519152826118db565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b61012d5460ff16156107d25760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b60448201526064016107a3565b6115e7611598565b61012d805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586115136113fb565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015611662573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116869190612612565b90505f6117338660600151805190602001208688602001516040516020016116d39392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156112ca575085516112ca906001600160a01b03168286611a34565b5f54610100900460ff1661177f5760405162461bcd60e51b81526004016107a390612d52565b6001603355565b5f54610100900460ff166107d25760405162461bcd60e51b81526004016107a390612d52565b5f54610100900460ff166117d25760405162461bcd60e51b81526004016107a390612d52565b6107d26117dd6113fb565b611547565b5f54610100900460ff166118085760405162461bcd60e51b81526004016107a390612d52565b6107d25f6118146113fb565b6118db565b5f54610100900460ff1661183f5760405162461bcd60e51b81526004016107a390612d52565b61012d805460ff19169055565b30330361185c5761072481611b6f565b610724816118e5565b61186d61136b565b6001600160a01b0381166118d25760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107a3565b61072481611547565b6107b682826112e5565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f906060016040516020818303038152906040528051906020012090506119398190565b54611945906001612d9d565b905550565b606082858560405160200161196193929190612db0565b6040516020818303038152906040529050949350505050565b606083156119895750816106e3565b8251156119995782518084602001fd5b8160405162461bcd60e51b81526004016107a39190611fe9565b6119bd8282610a0d565b6107b6576119d5816001600160a01b03166014611b99565b6119e0836020611b99565b6040516020016119f1929190612dee565b60408051601f198184030181529082905262461bcd60e51b82526107a391600401611fe9565b5f303303611a2c575060331936013560601c90565b503390565b90565b5f805f611a418585611d2e565b90925090505f816004811115611a5957611a596125fe565b148015611a775750856001600160a01b0316826001600160a01b0316145b15611a87576001925050506106e3565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401611aae929190612e62565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051611aec9190612cfa565b5f60405180830381855afa9150503d805f8114611b24576040519150601f19603f3d011682016040523d82523d5f602084013e611b29565b606091505b5091509150818015611b3c575080516020145b8015611b6357508051630b135d3f60e11b90611b619083016020908101908401612612565b145b98975050505050505050565b611b77611d70565b811461072457604051635637b6af60e11b8152600481018290526024016107a3565b60605f611ba7836002612e7a565b611bb2906002612d9d565b6001600160401b03811115611bc957611bc961207f565b6040519080825280601f01601f191660200182016040528015611bf3576020820181803683370190505b509050600360fc1b815f81518110611c0d57611c0d6122bd565b60200101906001600160f81b03191690815f1a905350600f60fb1b81600181518110611c3b57611c3b6122bd565b60200101906001600160f81b03191690815f1a9053505f611c5d846002612e7a565b611c68906001612d9d565b90505b6001811115611cdf576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611c9c57611c9c6122bd565b1a60f81b828281518110611cb257611cb26122bd565b60200101906001600160f81b03191690815f1a90535060049490941c93611cd881612e91565b9050611c6b565b5083156106e35760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016107a3565b5f808251604103611d62576020830151604084015160608501515f1a611d5687828585611d82565b94509450505050611d69565b505f905060025b9250929050565b5f303303611a315750601f1936013590565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115611db757505f90506003611e5e565b8460ff16601b14158015611dcf57508460ff16601c14155b15611ddf57505f90506004611e5e565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015611e30573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b038116611e58575f60019250925050611e5e565b91505f90505b94509492505050565b6040518061016001604052805f6001600160a01b031681526020015f6001600160a01b0316815260200160608152602001606081526020015f6004811115611eb157611eb16125fe565b81525f6020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b5f60208284031215611ef0575f80fd5b81356001600160e01b0319811681146106e3575f80fd5b5f805f60408486031215611f19575f80fd5b83356001600160401b0380821115611f2f575f80fd5b9085019060808288031215611f42575f80fd5b90935060208501359080821115611f57575f80fd5b818601915086601f830112611f6a575f80fd5b813581811115611f78575f80fd5b876020828501011115611f89575f80fd5b6020830194508093505050509250925092565b5f5b83811015611fb6578181015183820152602001611f9e565b50505f910152565b5f8151808452611fd5816020860160208601611f9c565b601f01601f19169290920160200192915050565b602081525f6106e36020830184611fbe565b5f6020828403121561200b575f80fd5b5035919050565b6001600160a01b0381168114610724575f80fd5b803561203181612012565b919050565b5f8060408385031215612047575f80fd5b82359150602083013561205981612012565b809150509250929050565b5f60208284031215612074575f80fd5b81356106e381612012565b634e487b7160e01b5f52604160045260245ffd5b604051608081016001600160401b03811182821017156120b5576120b561207f565b60405290565b604051601f8201601f191681016001600160401b03811182821017156120e3576120e361207f565b604052919050565b5f60208083850312156120fc575f80fd5b82356001600160401b0380821115612112575f80fd5b818501915085601f830112612125575f80fd5b8135818111156121375761213761207f565b8060051b91506121488483016120bb565b8181529183018401918481019088841115612161575f80fd5b938501935b83851015611b63578435925061217b83612012565b8282529385019390850190612166565b5f805f6060848603121561219d575f80fd5b83356121a881612012565b925060208401356121b881612012565b929592945050506040919091013590565b5f805f805f608086880312156121dd575f80fd5b85356001600160401b03808211156121f3575f80fd5b9087019060a0828a031215612206575f80fd5b9095506020870135908082111561221b575f80fd5b818801915088601f83011261222e575f80fd5b81358181111561223c575f80fd5b8960208260051b8501011115612250575f80fd5b6020830196508095505050506040860135915061226f60608701612026565b90509295509295909350565b5f808335601e19843603018112612290575f80fd5b8301803591506001600160401b038211156122a9575f80fd5b602001915036819003821315611d69575f80fd5b634e487b7160e01b5f52603260045260245ffd5b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b5f60808236031215612316575f80fd5b61231e612093565b823561232981612012565b8152602083810135818301526040808501359083015260608401356001600160401b0380821115612358575f80fd5b9085019036601f83011261236a575f80fd5b81358181111561237c5761237c61207f565b61238e601f8201601f191685016120bb565b915080825236848285010111156123a3575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b5f60208284031215612409575f80fd5b815180151581146106e3575f80fd5b5f823561015e1983360301811261242d575f80fd5b9190910192915050565b5f808335601e1984360301811261244c575f80fd5b8301803591506001600160401b03821115612465575f80fd5b602001915060a081023603821315611d69575f80fd5b803560068110612031575f80fd5b5f60a08284031215612499575f80fd5b60405160a081018181106001600160401b03821117156124bb576124bb61207f565b6040526124c78361247b565b815260208301356124d781612012565b806020830152506040830135604082015260608301356060820152608083013560808201528091505092915050565b5f808335601e1984360301811261251b575f80fd5b8301803591506001600160401b03821115612534575f80fd5b602001915060c081023603821315611d69575f80fd5b5f60c0828403121561255a575f80fd5b60405160c081018181106001600160401b038211171561257c5761257c61207f565b6040526125888361247b565b8152602083013561259881612012565b8060208301525060408301356040820152606083013560608201526080830135608082015260a08301356125cb81612012565b60a08201529392505050565b803560058110612031575f80fd5b5f602082840312156125f5575f80fd5b6106e3826125d7565b634e487b7160e01b5f52602160045260245ffd5b5f60208284031215612622575f80fd5b5051919050565b60068110612639576126396125fe565b9052565b5f815180845260208085019450602084015f5b838110156126a6578151612665888251612629565b838101516001600160a01b03168885015260408082015190890152606080820151908901526080908101519088015260a09096019590820190600101612650565b509495945050505050565b5f815180845260208085019450602084015f5b838110156126a65781516126d9888251612629565b808401516001600160a01b0390811689860152604080830151908a0152606080830151908a0152608080830151908a015260a091820151169088015260c090960195908201906001016126c4565b60058110612639576126396125fe565b602081526127516020820183516001600160a01b03169052565b5f602083015161276c60408401826001600160a01b03169052565b50604083015161016080606085015261278961018085018361263d565b91506060850151601f198584030160808601526127a683826126b1565b92505060808501516127bb60a0860182612727565b5060a085015160c085015260c085015160e085015260e0850151610100818187015280870151915050610120818187015280870151915050610140818187015280870151838701525050508091505092915050565b5f808335601e19843603018112612825575f80fd5b83016020810192503590506001600160401b03811115612843575f80fd5b60a081023603821315611d69575f80fd5b8183525f60208085019450825f5b858110156126a65761287c876128778461247b565b612629565b8282013561288981612012565b6001600160a01b03168388015260408281013590880152606080830135908801526080808301359088015260a09687019690910190600101612862565b5f808335601e198436030181126128db575f80fd5b83016020810192503590506001600160401b038111156128f9575f80fd5b60c081023603821315611d69575f80fd5b8183525f60208085019450825f5b858110156126a65761292d876128778461247b565b8282013561293a81612012565b6001600160a01b039081168885015260408381013590890152606080840135908901526080808401359089015260a0908382013561297781612012565b169088015260c0968701969190910190600101612918565b80356001600160781b0381168114612031575f80fd5b5f808335601e198436030181126129ba575f80fd5b83016020810192503590506001600160401b038111156129d8575f80fd5b803603821315611d69575f80fd5b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b8183525f6001600160fb1b03831115612a25575f80fd5b8260051b80836020870137939093016020019392505050565b8183526020808401935f91600585811b8301820185855b88811015612b1657858303601f19018a52813536899003609e19018112612a7a575f80fd5b88018035845260a08682013560028110612a92575f80fd5b85880152604082810135908601526060808301359086015260808083013536849003601e19018112612ac2575f80fd5b9092018781019290356001600160401b03811115612ade575f80fd5b80881b3603841315612aee575f80fd5b8282880152612b008388018286612a0e565b9d89019d96505050928601925050600101612a55565b509098975050505050505050565b608081525f610120873561015e19893603018112612b40575f80fd5b60a060808501528801612b65828501612b5883612026565b6001600160a01b03169052565b612b7160208201612026565b610140612b88818701836001600160a01b03169052565b612b956040840184612810565b610160888101529250612bad61028088018483612854565b925050612bbd60608401846128c6565b87840361011f1901610180890152612bd684828461290a565b93505050612be6608084016125d7565b612bf46101a0880182612727565b5060a08301356101c087015260c08301356101e087015260e0830135610200870152610100808401356102208801528484013561024088015281840135610260880152612c4360208d0161298f565b6001600160781b03811660a08901529450612c6060408d0161298f565b6001600160781b03811660c08901529450612c7e60608d018d6129a5565b95509350607f199150818784030160e0880152612c9c8386866129e6565b9450612cab60808d018d6129a5565b945092508187860301818801525050612cc58383836129e6565b925050508281036020840152612cdc818789612a3e565b9150508360408301526112ca60608301846001600160a01b03169052565b5f825161242d818460208701611f9c565b634e487b7160e01b5f52601160045260245ffd5b5f82612d3957634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b8082018082111561061b5761061b612d0b565b5f8451612dc1818460208901611f9c565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081525f8351612e25816017850160208801611f9c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351612e56816028840160208801611f9c565b01602801949350505050565b828152604060208201525f610aaa6040830184611fbe565b808202811582820484141761061b5761061b612d0b565b5f81612e9f57612e9f612d0b565b505f19019056fe9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000818000a","storage":{"0x0":"0xff"}},"0x58a175bebc8ec21a94ea63aa5a28743945940ee6":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106101165760003560e01c806391d14854116100a2578063c4d66de811610071578063c4d66de8146103bb578063ca15c873146103e1578063d547741f146103fe578063e375b64e1461042a578063ec87621c146104b957610116565b806391d14854146103635780639559c0bd146103a3578063a217fddf146103ab578063b017a30f146103b357610116565b80634794b430116100e95780634794b4301461024f57806349f5124b14610257578063609c92b81461025f5780638274664f146102675780639010d07c1461032457610116565b8063150b7a021461011b578063248a9ca3146101c65780632f2ff15d146101f557806336568abe14610223575b600080fd5b6101a96004803603608081101561013157600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561016b57600080fd5b82018360208201111561017d57600080fd5b803590602001918460018302840111600160201b8311171561019e57600080fd5b5090925090506104c1565b604080516001600160e01b03199092168252519081900360200190f35b6101e3600480360360208110156101dc57600080fd5b50356104d2565b60408051918252519081900360200190f35b6102216004803603604081101561020b57600080fd5b50803590602001356001600160a01b03166104ea565b005b6102216004803603604081101561023957600080fd5b50803590602001356001600160a01b0316610556565b6101e36105b7565b6101e36105db565b6101e36105ff565b6102216004803603606081101561027d57600080fd5b6001600160a01b038235811692602081013590911691810190606081016040820135600160201b8111156102b057600080fd5b8201836020820111156102c257600080fd5b803590602001918460018302840111600160201b831117156102e357600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610623945050505050565b6103476004803603604081101561033a57600080fd5b5080359060200135610fa2565b604080516001600160a01b039092168252519081900360200190f35b61038f6004803603604081101561037957600080fd5b50803590602001356001600160a01b0316610fc9565b604080519115158252519081900360200190f35b6101e3610fe7565b6101e3610fec565b6101e3610ff1565b610221600480360360208110156103d157600080fd5b50356001600160a01b0316611015565b6101e3600480360360208110156103f757600080fd5b50356110cf565b6102216004803603604081101561041457600080fd5b50803590602001356001600160a01b03166110e6565b6102216004803603608081101561044057600080fd5b6001600160a01b0382358116926020810135821692604082013590921691810190608081016060820135600160201b81111561047b57600080fd5b82018360208201111561048d57600080fd5b803590602001918460018302840111600160201b831117156104ae57600080fd5b50909250905061113f565b6101e36114e6565b630a85bd0160e11b95945050505050565b6000818152602081905260409020600201545b919050565b60008281526020819052604090206002015461050d906105086114f8565b610fc9565b6105485760405162461bcd60e51b815260040180806020018281038252602f815260200180611f42602f913960400191505060405180910390fd5b61055282826114fd565b5050565b61055e6114f8565b6001600160a01b0316816001600160a01b0316146105ad5760405162461bcd60e51b815260040180806020018281038252602f8152602001806120bb602f913960400191505060405180910390fd5b610552828261156c565b7ff871896b17e9cb7a64941c62c188a4f5c621b86800e3d15452ece01ce56073df81565b7ff94915c6d1fd521cee85359239227480c7e8776d7caf1fc3bacad5c269b66a1481565b7fd4392723c111fcb98b073fe55873efb447bcd23cd3e49ec9ea2581930cd01ddc81565b60008051602061204b83398151915261063e816105086114f8565b6001906106de5760405162461bcd60e51b81526020600482019081528254600260001961010060018416150201909116046024830181905290918291604490910190849080156106cf5780601f106106a4576101008083540402835291602001916106cf565b820191906000526020600020905b8154815290600101906020018083116106b257829003601f168201915b50509250505060405180910390fd5b5060606106f26106ed846115db565b611656565b905060606107138260018151811061070657fe5b6020026020010151611656565b90507fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60001b6107568260008151811061074957fe5b60200260200101516117d8565b141561095457600061076e8260018151811061074957fe5b905060006001600160a01b031661078b8360028151811061074957fe5b6001600160a01b0316146107d05760405162461bcd60e51b815260040180806020018281038252602981526020018061206b6029913960400191505060405180910390fd5b600086905060006107e78460038151811061074957fe5b9050816001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b15801561082d57600080fd5b505afa158015610841573d6000803e3d6000fd5b505050506040513d602081101561085757600080fd5b5051156108d35760408051632142170760e11b81523060048201526001600160a01b038581166024830152604482018490529151918416916342842e0e9160648082019260009290919082900301818387803b1580156108b657600080fd5b505af11580156108ca573d6000803e3d6000fd5b5050505061094c565b816001600160a01b03166340c10f1984836040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b15801561093357600080fd5b505af1158015610947573d6000803e3d6000fd5b505050505b505050610f9a565b7ff871896b17e9cb7a64941c62c188a4f5c621b86800e3d15452ece01ce56073df60001b6109888260008151811061074957fe5b1415610c085760006109a08260018151811061074957fe5b905060606109c1846002815181106109b457fe5b6020026020010151611920565b905060608180602001905160208110156109da57600080fd5b8101908080516040519392919084600160201b8211156109f957600080fd5b908301906020820185811115610a0e57600080fd5b82518660208202830111600160201b82111715610a2a57600080fd5b82525081516020918201928201910280838360005b83811015610a57578181015183820152602001610a3f565b5050505091909101604052505082519293508a9150600090505b82811015610bfd576000848281518110610a8757fe5b60200260200101519050826001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610ad557600080fd5b505afa158015610ae9573d6000803e3d6000fd5b505050506040513d6020811015610aff57600080fd5b505115610b7b5760408051632142170760e11b81523060048201526001600160a01b038981166024830152604482018490529151918516916342842e0e9160648082019260009290919082900301818387803b158015610b5e57600080fd5b505af1158015610b72573d6000803e3d6000fd5b50505050610bf4565b826001600160a01b03166340c10f1988836040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b158015610bdb57600080fd5b505af1158015610bef573d6000803e3d6000fd5b505050505b50600101610a71565b505050505050610f9a565b7ff94915c6d1fd521cee85359239227480c7e8776d7caf1fc3bacad5c269b66a1460001b610c3c8260008151811061074957fe5b1415610f63576000610c548260018151811061074957fe5b905060006001600160a01b0316610c718360028151811061074957fe5b6001600160a01b031614610cb65760405162461bcd60e51b815260040180806020018281038252602981526020018061206b6029913960400191505060405180910390fd5b60008690506000610ccd8460038151811061074957fe5b9050816001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610d1357600080fd5b505afa158015610d27573d6000803e3d6000fd5b505050506040513d6020811015610d3d57600080fd5b505115610d9c5760408051632142170760e11b81523060048201526001600160a01b038581166024830152604482018490529151918416916342842e0e9160648082019260009290919082900301818387803b1580156108b657600080fd5b6060610dae866002815181106109b457fe5b90506060818060200190516020811015610dc757600080fd5b8101908080516040519392919084600160201b821115610de657600080fd5b908301906020820185811115610dfb57600080fd5b8251600160201b811182820188101715610e1457600080fd5b82525081516020918201929091019080838360005b83811015610e41578181015183820152602001610e29565b50505050905090810190601f168015610e6e5780820380516001836020036101000a031916815260200191505b506040525050509050836001600160a01b03166394d008ef8685846040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b0316815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610ef3578181015183820152602001610edb565b50505050905090810190601f168015610f205780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015610f4157600080fd5b505af1158015610f55573d6000803e3d6000fd5b505050505050505050610f9a565b60405162461bcd60e51b815260040180806020018281038252602a815260200180611f71602a913960400191505060405180910390fd5b505050505050565b6000828152602081905260408120610fc0908363ffffffff6119ea16565b90505b92915050565b6000828152602081905260408120610fc0908363ffffffff6119f616565b601481565b600081565b7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef81565b60025460ff161561105e576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b61109c6040518060400160405280601781526020017f4d696e7461626c65455243373231507265646963617465000000000000000000815250611a0b565b6110a7600082610548565b6110bf60008051602061204b83398151915282610548565b506002805460ff19166001179055565b6000818152602081905260408120610fc390611aa9565b600082815260208190526040902060020154611104906105086114f8565b6105ad5760405162461bcd60e51b8152600401808060200182810382526030815260200180611fc36030913960400191505060405180910390fd5b60008051602061204b83398151915261115a816105086114f8565b6001906111c05760405162461bcd60e51b81526020600482019081528254600260001961010060018416150201909116046024830181905290918291604490910190849080156106cf5780601f106106a4576101008083540402835291602001916106cf565b50602082141561129f576000838360208110156111dc57600080fd5b5060408051913580835290519092506001600160a01b038088169289821692918b16917fe13244aa06bdc79480ed5fdc6ebe2bb37202fcdf33ecf45dc449f4201f3dc0879181900360200190a460408051632142170760e11b81526001600160a01b038981166004830152306024830152604482018490529151918716916342842e0e9160648082019260009290919082900301818387803b15801561128157600080fd5b505af1158015611295573d6000803e3d6000fd5b5050505050610f9a565b6060838360208110156112b157600080fd5b810190602081018135600160201b8111156112cb57600080fd5b8201836020820111156112dd57600080fd5b803590602001918460208302840111600160201b831117156112fe57600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f8201169050808301925050505050505091929192905050509050846001600160a01b0316866001600160a01b0316886001600160a01b03167fdb55e3a0ae817693fd7b07170d81eab0eb2c239f36fcecbc98b6b58ac5667e7a846040518080602001828103825283818151815260200191508051906020019060200280838360005b838110156113ca5781810151838201526020016113b2565b505050509050019250505060405180910390a48051601481111561141f5760405162461bcd60e51b815260040180806020018281038252602c81526020018061201f602c913960400191505060405180910390fd5b60005b818110156114db57866001600160a01b03166342842e0e8a3086858151811061144757fe5b60200260200101516040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050600060405180830381600087803b1580156114b757600080fd5b505af11580156114cb573d6000803e3d6000fd5b5050600190920191506114229050565b505050505050505050565b60008051602061204b83398151915281565b335b90565b600082815260208190526040902061151b908263ffffffff611ab416565b15610552576115286114f8565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b600082815260208190526040902061158a908263ffffffff611ac916565b15610552576115976114f8565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b6115e3611e6d565b6000825111611639576040805162461bcd60e51b815260206004820152601f60248201527f524c505265616465723a20494e56414c49445f42595445535f4c454e47544800604482015290519081900360640190fd5b506040805180820190915281518152602082810190820152919050565b606061166182611ade565b6116b2576040805162461bcd60e51b815260206004820152601860248201527f524c505265616465723a204954454d5f4e4f545f4c4953540000000000000000604482015290519081900360640190fd5b60006116bd83611b0a565b905060608167ffffffffffffffff811180156116d857600080fd5b5060405190808252806020026020018201604052801561171257816020015b6116ff611e6d565b8152602001906001900390816116f75790505b50905060006117248560200151611b96565b855190915081146117665760405162461bcd60e51b81526004018080602001828103825260278152602001806120946027913960400191505060405180910390fd5b60006117758660200151611c2f565b60208701510190506000805b858110156117cc5761179283611b96565b91506040518060400160405280838152602001848152508582815181106117b557fe5b602090810291909101015291810191600101611781565b50929695505050505050565b60006117e382611ade565b15611835576040805162461bcd60e51b815260206004820181905260248201527f524c505265616465723a204445434f44494e475f4c4953545f41535f55494e54604482015290519081900360640190fd5b81516021101561188c576040805162461bcd60e51b815260206004820152601e60248201527f524c505265616465723a20494e56414c49445f55494e545f4c454e4754480000604482015290519081900360640190fd5b600061189b8360200151611b96565b835190915081146118dd5760405162461bcd60e51b81526004018080602001828103825260278152602001806120ea6027913960400191505060405180910390fd5b60006118ec8460200151611c2f565b8451602080870151830180519394509184900392919083101561191657826020036101000a820491505b5095945050505050565b606060006119318360200151611b96565b835190915081146119735760405162461bcd60e51b8152600401808060200182810382526028815260200180611f9b6028913960400191505060405180910390fd5b60006119828460200151611c2f565b845190915081900360608167ffffffffffffffff811180156119a357600080fd5b506040519080825280601f01601f1916602001820160405280156119ce576020820181803683370190505b5090506000816020019050611916848860200151018285611c92565b6000610fc08383611cdd565b6000610fc0836001600160a01b038416611d41565b806040516020018082805190602001908083835b60208310611a3e5780518252601f199092019160209182019101611a1f565b51815160209384036101000a60001901801990921691161790527f3a20494e53554646494349454e545f5045524d495353494f4e530000000000009190930190815260408051808303600519018152601a909201905280516105529550600194509201919050611e87565b6000610fc382611d59565b6000610fc0836001600160a01b038416611d5d565b6000610fc0836001600160a01b038416611da7565b6020810151805160009190821a9060c0821015611b00576000925050506104e5565b5060019392505050565b600080600090506000611b208460200151611c2f565b602085015185519181019250015b80821015611b8d57611b3f82611b96565b8201915080821115611b825760405162461bcd60e51b815260040180806020018281038252602c815260200180611ff3602c913960400191505060405180910390fd5b600190920191611b2e565b50909392505050565b80516000908190811a6080811015611bb15760019150611c28565b60b8811015611bc657607e1981019150611c28565b60c0811015611bf35760b78103600185019450806020036101000a85510460018201810193505050611c28565b60f8811015611c085760be1981019150611c28565b60f78103600185019450806020036101000a855104600182018101935050505b5092915050565b8051600090811a6080811015611c495760009150506104e5565b60b8811080611c64575060c08110801590611c64575060f881105b15611c735760019150506104e5565b60c0811015611c875760b5190190506104e5565b60f5190190506104e5565b80611c9c57611cd8565b5b60208110611cbc578251825260209283019290910190601f1901611c9d565b8251825160208390036101000a60001901801990921691161782525b505050565b81546000908210611d1f5760405162461bcd60e51b8152600401808060200182810382526022815260200180611f206022913960400191505060405180910390fd5b826000018281548110611d2e57fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000611d698383611d41565b611d9f57508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610fc3565b506000610fc3565b60008181526001830160205260408120548015611e635783546000198083019190810190600090879083908110611dda57fe5b9060005260206000200154905080876000018481548110611df757fe5b600091825260208083209091019290925582815260018981019092526040902090840190558654879080611e2757fe5b60019003818190600052602060002001600090559055866001016000878152602001908152602001600020600090556001945050505050610fc3565b6000915050610fc3565b604051806040016040528060008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611ec857805160ff1916838001178555611ef5565b82800160010185558215611ef5579182015b82811115611ef5578251825591602001919060010190611eda565b50611f01929150611f05565b5090565b6114fa91905b80821115611f015760008155600101611f0b56fe456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e744d696e7461626c654552433732315072656469636174653a20494e56414c49445f5349474e4154555245524c505265616465723a2042595445535f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b65524c505265616465723a204e554d5f4954454d535f4445434f4445445f4c454e4754485f4d49534d415443484d696e7461626c654552433732315072656469636174653a20455843454544535f42415443485f4c494d4954241ecf16d79d0f8dbfb92cbc07fe17840425976cf0667f022fe9877caa831b084d696e7461626c654552433732315072656469636174653a20494e56414c49445f5245434549564552524c505265616465723a204c4953545f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66524c505265616465723a2055494e545f4445434f4445445f4c454e4754485f4d49534d41544348a164736f6c6343000606000a","storage":{"0x1":"0x63","0x2":"0x1","0x73d5d1a274bdea1400ad3ea4d982f594abdfd528cde1486b6c617faa3ec116":"0x1","0x89011777cfe6194dd982545e7eb24725dfe9a1aacae299c76fc48ef5017ae650":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x89011777cfe6194dd982545e7eb24725dfe9a1aacae299c76fc48ef5017ae651":"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0x1","0xb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6":"0x4d696e7461626c654552433732315072656469636174653a20494e5355464649","0xb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf7":"0x4349454e545f5045524d495353494f4e53000000000000000000000000000000","0xba75a66b8132bebab85d36fd3638083da57ae3d78fbcd8cc41f73514287dadaf":"0x1","0xe6c7d8231a06d7cb67831aeabcbd43ba24e5e4c6569cf23405f1e558de8580e0":"0x2","0xe84508f2c7fa9c351146748b3025cb78b45df37d868e48c6a75102fecdeee645":"0x2","0xe84508f2c7fa9c351146748b3025cb78b45df37d868e48c6a75102fecdeee647":"0x0","0xf0df3dcda05b4fbd9c655cde3d5ceb211e019e72ec816e127a59e7195f2cd7f5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x5cc819c9915eadfcebd76952b8c1bc36cadd7376":{"nonce":2,"balance":"0x0","code":"0x608060405260043610610103575f3560e01c8063a900866b11610092578063f07ec37311610062578063f07ec373146102f7578063f2d12b1214610316578063f47b774014610329578063fb0f3ee114610116578063fd9f1e101461034c575f80fd5b8063a900866b1461028a578063b3a34c4c146102be578063e7acab24146102d1578063ed98a574146102e4575f80fd5b80637423eb3c116100d85780637423eb3c146101f757806379df72bd1461020b57806387201b411461022a578063881477321461024b578063a81744041461026a575f80fd5b801561011657806306fdde031461013e57806346423aa71461015f5780635b34b966146101d5575f80fd5b366101125761011061036b565b005b5f80fd5b610129610124366004615115565b6103f9565b60405190151581526020015b60405180910390f35b348015610149575f80fd5b50610152610408565b604051610135919061518f565b34801561016a575f80fd5b506101b36101793660046151a1565b5f9081526001602052604090205460ff808216926101008304909116916001600160781b03620100008204811692600160881b9092041690565b6040805194151585529215156020850152918301526060820152608001610135565b3480156101e0575f80fd5b506101e9610417565b604051908152602001610135565b348015610202575f80fd5b50610110610420565b348015610216575f80fd5b506101e96102253660046151b8565b6104c1565b61023d61023836600461524c565b6104f8565b6040516101359291906153f0565b348015610256575f80fd5b5061012961026536600461543f565b610571565b61027d61027836600461547d565b61058f565b60405161013591906154e3565b348015610295575f80fd5b506101e96102a43660046154f5565b6001600160a01b03165f9081526002602052604090205490565b6101296102cc36600461550e565b61062a565b6101296102df366004615553565b6106a3565b61023d6102f23660046155d7565b6106e1565b348015610302575f80fd5b506101e96103113660046154f5565b610784565b61027d610324366004615677565b6107a1565b348015610334575f80fd5b5061033d6107ea565b60405161013593929190615719565b348015610357575f80fd5b5061012961036636600461543f565b610801565b7f000000000000000000000000000000000000000000000000000000000000000180156103b357600263929eee145c146103b05763a61be9f05f52346020526024601cfd5b50565b63929eee1454806103e057600263929eee145c146103dc5763a61be9f05f52346020526024601cfd5b5050565b600381146103dc5763a61be9f05f52346020526024601cfd5b5f61040261080c565b92915050565b60606104126109c0565b905090565b5f6104126109d8565b63929eee14546001147f000000000000000000000000000000000000000000000000000000000000000180610453575080155b1561047157604051630f45b98b60e41b815260040160405180910390fd5b61049a7f000000000000000000000000145908bbcfc7b258e4d4d9a586f6e3249ae80216610a45565b6104b7576040516370a4078f60e01b815260040160405180910390fd5b5f63929eee145550565b5f806104cd6004610aa3565b90506104f16104e282610ab35b63ffffffff16565b610140830135610b30565b3590565b9392505050565b60608061055d61051361050b6004610aa3565b610c746104da565b61052a61052260046020610cdc565b610cfa6104da565b61054161053960046040610cdc565b610d526104da565b61055061053960046060610cdc565b89338a15028a0189610daa565b915091509b509b9950505050505050505050565b5f6104f161058a6105826004610aa3565b610de46104da565b610e3c565b606061061f6105a96105a16004610aa3565b610f5d6104da565b604080515f8082526020820190925290610601565b6105ee6040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816105be5790505b5061061961061160046020610cdc565b610fb56104da565b3361100d565b90505b949350505050565b5f6104f161064361063b6004610aa3565b61104b6104da565b604080515f808252602082019092529061069b565b6106886040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816106585790505b5084336110c1565b5f6106d76106bc6106b46004610aa3565b6112406104da565b6106cb61052260046020610cdc565b853386150286016110c1565b9695505050505050565b6060806107736106f46105a16004610aa3565b604080515f808252602082019092529061074c565b6107396040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816107095790505b5061075c61053960046020610cdc565b61076b61053960046040610cdc565b883389610daa565b915091509850989650505050505050565b6001600160a01b0381165f90815260208190526040812054610402565b60606107dc6107b361050b6004610aa3565b6107c261052260046020610cdc565b6107d161061160046040610cdc565b33861502860161100d565b90505b979650505050505050565b60605f806107f661129c565b925092509250909192565b5f6104f183836112e8565b5f61012435600281901c90600316600182118334158214806108315761083134611423565b506003841160a0810260240135906502030203010160d01b861a905f630101020360d01b881a6108648882898888611434565b9096509150506101c4600583901b01355f87600581111561088757610887615329565b036108bc5760443560243517156108a557636ab37ce75f526004601cfd5b6108af8482611751565b6108b7611809565b61099d565b6040805160208082528183019092525f9160208201818036833701905050905060028a60058111156108f0576108f0615329565b036109135761090e60c4356084353360e435610104355b8787611889565b610988565b60038a600581111561092757610927615329565b036109455761090e60c4356084353360e435610104355b87876118d4565b60048a600581111561095957610959615329565b036109735761090e60243533608435604435606435610907565b6109886024353360843560443560643561093e565b610992848261190a565b61099b816119c4565b505b6109a88689846119e8565b6109b0611a5e565b6001995050505050505050505090565b6060602080526707536561706f727460475260606020f35b5f6109e1611ab1565b600143034060801c335f525f60205260405f208054820192508281555050336001600160a01b03167f721c20121297512b72821b97f5326877ea8ecf4bb9948fea5bfcb6453074d37f82604051610a3a91815260200190565b60405180910390a290565b5f816001600160a01b0316600a5a610a5d9190615773565b6040515f8181818686fa925050503d805f8114610a95576040519150601f19603f3d011682016040523d82523d5f602084013e610a9a565b606091505b50909392505050565b5f813563ffffffff168201610402565b5f610ac661016060408051918201905290565b9050610ad58282610140611b28565b610af2610aeb610ae6846040610cdc565b611b31565b6040830152565b5f610b06610b01846060610cdc565b611b84565b9050610b13816060840152565b610b26610b1e825190565b610140840152565b50919050565b0190565b610140820151604080519084015180515f939284927fa66999307ad1bb4fde44d13a5d710bd7718e0c87c1eef68a571629fbf5b93d0292602090910190845b81811015610b9c578251601f1901805186825260c082208652905260209384019390920191600101610b6f565b508060051b6040512094505050505f7f42d81c6929ffdc4eb27a0808e40e82516ad42296c166065de7f812492304ff6e915060405160206060890151015f5b86811015610c08578151601f1901805186825260e082208552905260209283019290910190600101610bdb565b505060408051600587901b9020601f198a0180517ffa445660b7e21515a59617fcd68910b487aa5808b8abda3d78bc85df364b2c2f8252928b01805197815260608c018051938152610140909c019a8b5261018082209390915295909552939097525050925250919050565b5f8063ffffffff8335169050600581901b610c986020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610cca610cc4610cbf8484610cdc565b611240565b82850152565b602001610ca7565b5050505050919050565b5f6104f163ffffffff610cf46104ed8686610b2c8516565b16840190565b5f8063ffffffff8335169050600581901b610d1e6020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610d4a610cc4610d458484610cdc565b611bc7565b602001610d2d565b5f8063ffffffff8335169050600581901b610d766020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610da2610cc4610d9d8484610cdc565b611c09565b602001610d85565b60608036155f80610dbe8c8c85898b611c4c565b91509150610dd18c8b8b8b8b8787612029565b9450945050505097509795505050505050565b5f8063ffffffff8335169050600581901b610e086020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610e34610cc4610e2f8484610cdc565b61215b565b602001610e17565b5f610e45611ab1565b5f805f80855190505f5b81811015610f50575f878281518110610e6a57610e6a615792565b60209081029190910101518051909150600481608001516004811115610e9257610e92615329565b03610e9e575050610f48565b80519450610eab8161219e565b5f8181526001602052604081209850909650610ecd90879089903615156121d7565b50865460ff16610f455780610140015181606001515114610ef057610ef0612265565b610eff85878460200151612272565b865460ff191660011787556040517ff280791efe782edcf06ce15c8f4dff17601db3b88eb3805a0db7d77faf757f0490610f3c9088908490615895565b60405180910390a15b50505b600101610e4f565b5060019695505050505050565b5f8063ffffffff8335169050600581901b610f816020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610fad610cc4610fa88484610cdc565b61104b565b602001610f90565b5f8063ffffffff8335169050600581901b610fd96020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257611005610cc46110008484610cdc565b61230e565b602001610fe8565b60605f36151590505f806110258888858b5189611c4c565b9150915061103282612341565b61103f8887848885612380565b98975050505050505050565b5f61105e61020060408051918201905290565b60a0810180825290915061107a61107484610aa3565b82612453565b61108660016020840152565b61109260016040840152565b6110af6110a86110a3856020610cdc565b612489565b6060840152565b610b266110ba6124b1565b6080840152565b835160808101515f91906110e860048260048111156110e2576110e2615329565b146124cb565b5f80806110f78a36151561256c565b60408051600180825281830190925293965091945092505f9190816020015b61111e615027565b8152602001906001900390816111165790505090508a815f8151811061114657611146615792565b602002602001018190525061115b818b612764565b6111678684848b6128dd565b6040805160018082528183019092525f91602080830190803683375091925050503615156004878181111561119e5761119e615329565b146111c1576111af8d83885f6129dd565b6111bb86868684612a2f565b506111d3565b6111d0888e6080015183612b33565b95505b6111de888c8c612c03565b85825f815181106111f1576111f1615792565b6020026020010181815250506112088d8388612d26565b61122586895f01518a602001518d8c604001518d60600151612df3565b61122d611a5e565b5060019c9b505050505050505050505050565b5f61125361020060408051918201905290565b905061126760208381019083016040611b28565b60a0810180825261127a61107484610aa3565b61128b6110a86110a3856060610cdc565b610b266110ba6110a3856080610cdc565b60605f805f6112a9612e58565b90505f7f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c905060605f5281602052806040526303312e3660635260a05ff35b5f6112f1611ab1565b5f8083815b81811015611408573687878381811061131157611311615792565b90506020028101906113239190615977565b90505f61133360208301836154f5565b90505f61134660408401602085016154f5565b90505f61135960a0850160808601615996565b905081331483331417156004821417871796505f61138d61138261137a8790565b610ab36104da565b866101400135610b30565b5f8181526001602052604090819020805461ffff19166101001781559051909a509091506001600160a01b0380851691908616907f6bacc01dbe442496068f7d234edd811f1a5f833243e0aec824f86ab861f3c90d906113f09085815260200190565b60405180910390a385600101955050505050506112f6565b5050801561141857611418612f35565b506001949350505050565b63a61be9f05f52806020526024601cfd5b5f8061143f5f6124cb565b611447612f42565b426101643511154261014435111715611475576321ccfeb75f5261014435602052610164356040526044601cfd5b610204356102643510156114905763466aa6165f526004601cfd5b7f42d81c6929ffdc4eb27a0808e40e82516ad42296c166065de7f812492304ff6e608081905260a08790526060602460c037604060646101203760e060802061016052610264356102043560051b6102a0016001820181526020810190508881526080602460208301376101608860a0528760c0525f60e0525f6102043593505f5b84811015611566578060400261028401602081610100376040816101203760208101358317925060208401935060e0608020845260a0850194508b85528a6020860152604081606087013750600101611512565b6001850160051b610160206060526102643594505b848110156115b6578060400261028401925060a0840193508a845289602085015260408360608601376020830135919091179060010161157b565b506001600160a01b038111156115d3576339f3e3fd5f526004601cfd5b50505050505f7fa66999307ad1bb4fde44d13a5d710bd7718e0c87c1eef68a571629fbf5b93d029050806080528360a052606060c460c0376020610104610120375060c06080205f9081526020812060e05260843590611647826001600160a01b03165f9081526020819052604090205490565b7ffa445660b7e21515a59617fcd68910b487aa5808b8abda3d78bc85df364b2c2f60808190529091506040608460a03760605161010052896101205260a061014461014037816101e05261018060802094505050506102043560051b61018001828152336020820152608060408201526101206060820152600160808201528360a0820152606060c460c083013760a061026435026101e00160a4356084357f9d9af8e38d66c62e2c12f0225249fd9d721c54b83f48d9352c97c6cacdcb6f318385a35f60605260608101820160405250505f61172383612f8d565b905061172f8389612fde565b7101000000000000000000000000000001000182559150509550959350505050565b60c43560843560e4356101043584156117b9575f6040519050632671a55160e11b815260206004820152600160248201528660448201528460648201528360848201523360a48201528260c48201528160e48201526117b38682610104613033565b50611801565b60028660058111156117cd576117cd615329565b036117f457806001146117e3576117e3816130ea565b6117ef848433856130fb565b611801565b61180184843385856131b0565b505050505050565b346064356084356102643560061b5f80805b8381101561185a5761028481013592506102a481013591508683111561184357611843613287565b82870396506118528284613294565b60400161181b565b508585111561186b5761186b613287565b6118758486613294565b848611156118015761180133868803613294565b61189381836132ca565b816118ba57826001146118a9576118a9836130ea565b6118b5878787876130fb565b6118cb565b6118cb828260028a8a8a8a8a6132e8565b50505050505050565b6118dd83613367565b6118e781836132ca565b816118f9576118b587878787876131b0565b6118cb828260038a8a8a8a8a6132e8565b5f805f805f861561192f57505060843592503391505060c4356101043560e435611944565b50339350506084359150506024356064356044355b801561195257611952613379565b50600586901b6101e403356102643560061b5f80805b838110156119a95761028481013592506102a481013591508a156119935761199083876159b4565b95505b6119a1878a8486898f613386565b604001611968565b506119b886898988888e613386565b50505050505050505050565b60408151146119d05750565b5f6119dc826020015190565b90506103dc81836133bb565b611a048260a4355b331415600182116004909210919091161690565b15611a5957805f611a13825190565b9050608081901c63ffffffff8216611a3484826317b1f94282526001905250565b601c840163fb5014fc6060529350611a5060a4358886856133df565b5f6060526118cb565b505050565b7f00000000000000000000000000000000000000000000000000000000000000018015611a8f575f63929eee145d50565b63929eee145480611aa5575f63929eee145d5050565b50600163929eee145550565b7f00000000000000000000000000000000000000000000000000000000000000018015611af05763929eee145c156103b057637fa8a9875f526004601cfd5b63929eee145480611b135763929eee145c156103dc57637fa8a9875f526004601cfd5b600181146103dc57637fa8a9875f526004601cfd5b80838337505050565b5f63ffffffff8235166040519150808252602082018160051b81018060a084026020870183378293505b81841015611b745780845260209093019260a001611b5b565b60405250919392505050565b9052565b5f63ffffffff8235166040519150808252602082018160051b81018060c084026020870183378293505b81841015611b745780845260209093019260c001611bae565b5f611bd960a060408051918201905290565b9050611be782826080611b28565b611c04611bfd611bf8846080610cdc565b613427565b6080830152565b919050565b5f63ffffffff8235166040519150808252602082018160051b8101808360061b6020870183378293505b81841015611b7457808452602090930192604001611c33565b60605f611c5960016124cb565b86515f90600160e61b82351690806001600160401b03811115611c7e57611c7e61574b565b604051908082528060200260200182016040528015611ca7578160200160208202803683370190505b50945060010160051b91505f60205b83811015611ea8575f611ccc8c83613cce6104da565b90505f805f611cdb848e61256c565b6001600160781b0382166020880152919450925090505f829003611d025750505050611ea0565b6001600160781b0381166040808601919091528a8601849052845160a081015160c0820151608083015192909301518051600184119d909d179c600490931099509092915f5b81811015611dea575f838281518110611d6357611d63615792565b602002602001015190508b8151108d179c505f611d858989846080015161345e565b90508160800151826060015103611da25760608201819052611db7565b611db18989846060015161345e565b60608301525b5f611dd08360600151838a8a611dcb361590565b61349a565b606084018190526080909301929092525050600101611d48565b5087516060015180515f5b81811015611e94575f838281518110611e1057611e10615792565b602002602001015190505f611e2a8b8b846080015161345e565b90508160800151826060015103611e475760608201819052611e5c565b611e568b8b846060015161345e565b60608301525b5f611e718360600151838c8c611dcb36151590565b6060840181905260a0840180516080909501949094529092525050600101611df5565b50505050505050505050505b602001611cb6565b50506001600160e61b018103611ec057611ec06134ed565b50611ecb8888612764565b5f8060205b8381101561200e578581015192508215612006575f611ef28c83613cce6104da565b9050885f03611f0d575f878301819052602090910152612006565b60048151608001516004811115611f2657611f26615329565b14611fa957611f3f8188866001600587901c038e6134fa565b611f55575f878301819052602090910152612006565b602080820151604083015183516080810151930151611f8e9388936001600160781b039081169316913314156001909111168e17612a2f565b611fa4575f878301819052602090910152612006565b611fd4565b611fbb815f015182608001518c612b33565b878301819052935083611fd4575f602090910152612006565b886001900398505f815f01519050611fff85825f015183602001518c85604001518660600151612df3565b6001935050505b602001611ed0565b508061201c5761201c613555565b5050509550959350505050565b85518551606091829161203c81836159c7565b6001600160401b038111156120535761205361574b565b60405190808252806020026020018201604052801561208c57816020015b61207961505a565b8152602001906001900390816120715790505b5092505f5b828110156120e4576120bf8c5f8d84815181106120b0576120b0615792565b60200260200101518c8c613562565b8482815181106120d1576120d1615792565b6020908102919091010152600101612091565b505f5b8181101561213d576121168c60018c848151811061210757612107615792565b60200260200101518c5f613562565b848483018151811061212a5761212a615792565b60209081029190910101526001016120e7565b5061214b8b84888a896135b1565b9350505097509795505050505050565b5f61216c6040808051918201905290565b905061218661218261217d84610aa3565b61389a565b8252565b611c046121976110a3846020610cdc565b6020830152565b5f6121b38260600151518361014001516138b9565b81516001600160a01b03165f90815260208190526040902054610402908390610b30565b82545f90610100900460ff16156121fe5781156121f7576121f7856138c9565b505f610622565b83546201000090046001600160781b0316801561225957831561222957612224866138da565b612259565b8454600160881b90046001600160781b0316811061225957821561225057612250866138eb565b5f915050610622565b50600195945050505050565b632165628a5f526004601cfd5b33831480156122815750505050565b5f61228a612e58565b61190160f01b5f9081526002828152602287815260428320908390528651939450929190601f601d840116106102e260621984011016156122f4576122cf86886138fc565b61190160f01b5f908152600286905260228281526042822091905290975090506122f7565b50815b612304888285858a613992565b5050505050505050565b5f61231f6040808051918201905290565b9050612330612182610d9d84610aa3565b611c04612197610d9d846020610cdc565b80518060051b6040019050602082038051602082527f4b9f2d36e1b4c93de62cc077b00b1a91d84b6c31b4a14e012718dcca230689e78383a190525050565b8351606090806001600160401b0381111561239d5761239d61574b565b6040519080825280602002602001820160405280156123d657816020015b6123c361505a565b8152602001906001900390816123bb5790505b5091505f5b81811015612439575f8782815181106123f6576123f6615792565b6020026020010151905061241389825f0151836020015185613adb565b84838151811061242557612425615792565b6020908102919091010152506001016123db565b5061244787838787876135b1565b50505b95945050505050565b6124608282610160611b28565b612471610aeb610ae6846040610cdc565b6103dc612482610b01846060610cdc565b6060830152565b6040518135601f0163ffffffe01660200180838337913563ffffffff16815290810160405290565b5f6124c3602060408051918201905290565b5f8152905090565b7f000000000000000000000000000000000000000000000000000000000000000180156125185763929eee145c1561250a57637fa8a9875f526004601cfd5b8160010163929eee145d5050565b63929eee14548061254a5763929eee145c1561253b57637fa8a9875f526004601cfd5b8260010163929eee145d505050565b6001811461255f57637fa8a9875f526004601cfd5b505060020163929eee1455565b5f805f80855f015190506125898160a001518260c0015187613c80565b61259c57505f925082915081905061275d565b602086015160408701516001600160781b0391821694501691505f6004826080015160048111156125cf576125cf615329565b036125fc57600183850218905080156125ea576125ea613ca3565b506001935083925082915061275d9050565b50818311831517801561261157612611613ca3565b608082015160011615848411161561262b5761262b613cb0565b6126348261219e565b5f81815260016020526040812091965061265290879083908a6121d7565b61266557505f935083925061275d915050565b805460ff1661268057612680835f0151878a60600151612272565b8054608881901c8061269457869150612757565b6001600160781b038260101c169150600186036126b8578181039650809550612757565b8086036126d357908601858103868211029096039590612757565b80860296810291909502810186810387821102918290039695919003906001600160781b0386111561275757612717565b5f5b8215610b2657908290069190612706565b61272a6127248784612704565b88612704565b8015019687900496909504946001600160781b0386111561275757634e487b715f5260116020526024601cfd5b50505050505b9250925092565b805182515f5b82811015612853575f84828151811061278557612785615792565b602002602001015190505f815f015190508381106127aa576127aa8260200151613cbd565b5f8782815181106127bd576127bd615792565b6020026020010151905080602001516001600160781b03165f036127e35750505061284b565b80516040808201519085015163bfb3f8ce5f8760200151600181111561280b5761280b615329565b14612827575f61281c856060613cce565b9350636088d7de9150505b8251821061283857805f526004601cfd5b612843838389613cd9565b505050505050505b60010161276a565b505f5b818110156128d6575f85828151811061287157612871615792565b6020026020010151905080602001516001600160781b03165f0361289557506128ce565b8051608081015160608201516128b29085908363a8930e9a613d8c565b6128ca8483604001518363d69293326104da613d8c90565b5050505b600101612856565b5050505050565b60a084015160c08501516040860151515f805b8281101561295a575f8960400151828151811061290f5761290f615792565b602002602001015190505f815f01519050801584179350505f612946826060015183608001518c8c8b8b612941361590565b613df3565b6060830152506080018690526001016128f0565b5060808801516004811082168015612974576129746134ed565b505050506060860151515f5b81811015612304575f8860600151828151811061299f5761299f615792565b602002602001015190505f6129c4826060015183608001518b8b8a8a61294136151590565b60608301525060a0810151608090910152600101612980565b8351608081015160208201513314156001821160049092109190911616156128d6575f80612a12858489608001518988613e2e565b63fb5014fc6060529092509050611a5083602001518684846133df565b5f848152600160205260408120805482908290608881901c80612a5457889150612adc565b6001600160781b038260101c169150808803612a7857908801878111935090612adc565b97880297808802979190910288018781119350906001600160781b038083119089111715612adc57612aaa8883612704565b8015019788900497909104906001600160781b038083119089111715612adc57634e487b715f5260116020526024601cfd5b508215612b15578515612b09576040516310fda3e160e01b8152600481018a905260240160405180910390fd5b5f945050505050610622565b8660881b8160101b1760011782556001945050505050949350505050565b5f83610140015184606001515114612b4d57612b4d612265565b83515f8080612b5c8888613fac565b915091505f8082845f885af16001600160a01b0385165f908152600260205260409020805460018101909155606086901b189550925082612bbb578515612bae57612ba5614056565b612bae8561409d565b505f93506104f192505050565b505050505f805f612bd8876040015188606001516104da6140ae90565b925092509250825f14612bee57612bee8461409d565b60408701919091526060860152509392505050565b6040805160208082528183019092525f916020820181803683375050506040850151519091505f5b81811015612c7b575f86604001518281518110612c4a57612c4a615792565b60200260200101519050846080820152612c7281885f0151896101200151876104da61432790565b50600101612c2b565b50506060840151515f90815b81811015612d09575f87606001518281518110612ca657612ca6615792565b602002602001015190505f6005811115612cc257612cc2615329565b81516005811115612cd557612cd5615329565b03612cf1574793508381606001511115612cf157612cf1613287565b612d00813389886143276104da565b50600101612c87565b5050612d14826119c4565b504780156128d6576128d63382613294565b8251608081015160208201515f92839283928392916004811060019091111633909114151615612d8857612d69612d6361010083015190565b5190565b8861441c565b9093509150612d7a60208201612d5f565b945063fb5014fc9350612dd4565b600481608001516004811115612da057612da0615329565b0361230457805194505f8560601b9050612dc187838b608001518b8561445d565b639397928596509094509250612dd49050565b612dde6060859052565b612dea858785856133df565b5f606052612304565b60608290506060829050856001600160a01b0316876001600160a01b03167f9d9af8e38d66c62e2c12f0225249fd9d721c54b83f48d9352c97c6cacdcb6f318a888686604051612e469493929190615a13565b60405180910390a35050505050505050565b5f7f00000000000000000000000000000000000000000000000000000000000005394614612f10575060408051608080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f5f9081527f32b5c112df393a49218d7552f96b2eeb829dfb4272f4f24eef510a586b85feef6020527f95f740a33d720b7cd93c75d515ac95ca3bbaa2594cce46ea48e00974ea8fcd14855246606090815230845260a08220949095529093529190915290565b507f8bebed3dbe91a82da0dc94c8d370c160ad6db1b32164303e65b8544bae7e2f5590565b63fed398fc5f526004601cfd5b600435602014610224356102401416610244356102606102643560061b01141660186101243510600160a01b60843560a4351760c4356024351717101616806103b0576103b0614528565b5f8181526001602081905260409091209060843590612fb290849084903615156121d7565b50815460ff16610b2657610b268184612fd9602463ffffffff6102443516016124896104da565b612272565b5f612feb8260a4356119f0565b15610402575f805f612ffc86614535565b63fb5014fc6060529194509250905061301c60a43587601c8601856133df565b5f60605260209190910160801b1781529392505050565b604080517f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c60ff60a01b175f90815260208690527f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f83526055600b20919092526001600160a01b031690505f805f805260205f85875f875af191505f519050816130c8576130bf614056565b6130c8836145ed565b6001600160e01b03198116632671a55160e11b146118015761180186846145fe565b6369f958275f52806020526024601cfd5b833b61311257635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af1806131a2573d1561318057601f3d0160051c8260051c8160030281831115613169578183036003028280028480020360091c01015b5a60208201101561317c573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b6131c757635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af18061326c573d1561324b57601f3d0160051c8560051c8160030281831115613234578183036003028280028480020360091c01015b5a602082011015613247573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b638ffff9805f526004601cfd5b61329d81613367565b5f805f805f85875af1905080611a59576132b5614056565b63bc806b965f5282602052816040526044601cfd5b5f6132d6836020015190565b9050818114611a5957611a59836119c4565b5f60208851036133225750604080885260208089018a9052632671a55160e11b918901919091526044880152600160648801819052613331565b50606487018051600101908190525b603c60c082028901038781528660208201528560408201528460608201528360808201528260a082015250505050505050505050565b806103b0576391b3e5145f526004601cfd5b636ab37ce75f526004601cfd5b61338f83613367565b61339981836132ca565b816133aa576117ef86868686614613565b611801828260018989895f8a6132e8565b6064810151604082019060c0026044016133d6848383613033565b50506020905250565b5f806001600160e01b03198451165f805260205f85875f8b5af15f51909350149050816134185761340e614056565b846080526024607cfd5b8061180157846080526024607cfd5b5f8063ffffffff83351690506001810160051b61344a8160408051918201905290565b9250613457848483611b28565b5050919050565b5f82840361346d5750806104f1565b82848309156134835763c63cf0895f526004601cfd5b5f61348e8584615aaf565b93909304949350505050565b5f8486146134e357838303428590038082035f6134b7838a615aaf565b6134c1838c615aaf565b6134cb91906159c7565b9050858487830304018115150294505050505061244a565b5092949350505050565b6312d3f5a35f526004601cfd5b8451608081015160208201515f92916004811060019091111633909114151615610f50575f8061353187848b608001518b8a613e2e565b9150915061354b836020015188848463fb5014fc8a614707565b935050505061244a565b63d5da9a1b5f526004601cfd5b61356a61505a565b83515f0361357b5761357b85614774565b5f85600181111561358e5761358e615329565b036135a45761359f86858385614785565b61244a565b61244a86858333876148f5565b84516060905f816001600160401b038111156135cf576135cf61574b565b6040519080825280602002602001820160405280156135f8578160200160208202803683370190505b506040805160208082528183019092529192505f9190602082018180368337505089519192505060010160051b60205b81811015613687575f61363e8b83613cce6104da565b8051606081015191925090801561367c57478111825115161561366857638ffff9805f526004601cfd5b61367c828460200151856040015189614327565b505050602001613628565b50505f5b838110156137f3575f8a82815181106136a6576136a6615792565b6020026020010151905080602001516001600160781b03165f036136ed575f8483815181106136d7576136d7615792565b91151560209283029190910190910152506137eb565b600184838151811061370157613701615792565b911515602092830291909101909101528051604081015180515f5b81811015613786575f83828151811061373757613737615792565b6020026020010151905080606001515f1461377357608081018051908e9052855161012087015161376d9184918c6143276104da565b60808201525b608081015160609091015260010161371c565b505050606081015180515f5b818110156137e5575f8382815181106137ad576137ad615792565b602002602001015190505f81606001519050805f146137d1576137d1888483614a2c565b5060a0810151606090910152600101613792565b50505050505b60010161368b565b506137fd816119c4565b47801561380e5761380e3382613294565b8515613884575f5b848110156138825783818151811061383057613830615792565b60200260200101511561387a5761387a8b828151811061385257613852615792565b60200260200101518a8b848151811061386d5761386d615792565b6020026020010151612d26565b600101613816565b505b61388c611a5e565b509098975050505050505050565b5f6138ad61016060408051918201905290565b9050611c048282612453565b808210156103dc576103dc614a45565b631a5155745f52806020526024601cfd5b63ee9e0e635f52806020526024601cfd5b6310fda3e15f52806020526024601cfd5b5f805f84516001811660410380820360051c9250808752806020018701915050805160e81c6003820191506001811660051b868152825160208218525060015b838110156139685760405f2082821c60051b60209081169182529384018051919094185260010161393c565b50505060405f2091505f61397b82614a52565b5f9081526020939093525050604090209392505050565b5f805f528151602083038051826041035f600182116139f557604087015160608801515f1a83156139d657601b8260ff1c0190506001600160ff1b03821660408a01525b88528a855260205f60808760015afa508385528588526040880152505f515b8a148a1515169450849050613abe57858552604082526044850380516040870351630b135d3f60e11b835289604089035260205f60648b01858f5afa96508615613ab257630b135d3f60e11b5f5114613ab2578b3b15613a5c57634f7fb80d5f526004601cfd5b6001866041031115613a7557638baa579f5f526004601cfd5b64010100000060608901515f1a1a15604187141615613aa557631f003d0a5f5260608801515f1a6020526024601cfd5b63815e1d645f526004601cfd5b8385529152603f198601525b5050508061180157613ace614056565b634f7fb80d5f526004601cfd5b613ae361505a565b8251158451151715613afc576398e9db6e5f526004601cfd5b613b0461505a565b613b118685835f806148f5565b805160608101515f03613b2657509050610622565b613b368787858460800151614785565b82516040828101519082015160208085015190840151855185511891181791181715613b6d5763bced929d5f52846020526024601cfd5b806060015182606001511115613bf4575f865f81518110613b9057613b90615792565b60200260200101519050816060015183606001510389825f015181518110613bba57613bba615792565b60200260200101515f015160600151826020015181518110613bde57613bde615792565b6020026020010151606001818152505050613c75565b5f875f81518110613c0757613c07615792565b60200260200101519050826060015182606001510389825f015181518110613c3157613c31615792565b60200260200101515f015160400151826020015181518110613c5557613c55615792565b602002602001015160600181815250508260600151826060018181525050505b505050949350505050565b428084111590831116818015613c94575080155b156104f1576104f18484614e61565b635a052b325f526004601cfd5b63a11b63ff5f526004601cfd5b63133c37c65f52806020526024601cfd5b5f6104f18284015190565b5f838381518110613cec57613cec615792565b602002602001015190505f815f01519050613d078160031090565b613d1357613d13614e76565b60408201518015613d3657613d318460600151828660800151614e83565b613d49565b60808401515115613d4957613d49614ecd565b6004821460030383816005811115613d6357613d63615329565b90816005811115613d7657613d76615329565b9052505050606090920151604090910152505050565b82515f5b81811015611801575f858281518110613dab57613dab615792565b60209081029190910101518051604082015191925090600382116004881415821515171615613de557855f5288602052836040526044601cfd5b505050806001019050613d90565b5f868803613e0d57613e0686868961345e565b90506107df565b6107dc613e1b87878b61345e565b613e2688888b61345e565b86868661349a565b5f805f613e39614eda565b6301e4d72a815260208082015260408101898152336060830152601c820194509091508751604082015287613e79613e7260a083015190565b60e0840152565b613e8f613e8760c083015190565b610100840152565b613ea5613e9d60e083015190565b610120840152565b610140613eb3816060850152565b5f613ebf604084015190565b90505f613ece82848701614ee4565b928301929050613edf836080870152565b5f613eeb606086015190565b90505f613efa82868901614f4a565b948501949050613f0b8560a0890152565b5f613f188e878a01614faf565b959095019450613f298560c0890152565b8685015f613f378e83614fce565b602497019687019a50613f539050613f4e8c8c0190565b614ffe565b8060408b901b60808b901b17178f610100018181525050613f7d8c82611b8090919063ffffffff16565b60058c8e51613f8c91906159b4565b613f97911b8b6159b4565b99505050505050505050509550959350505050565b5f8083613fb7614eda565b639891976581523360208201908152608060408301819052601c9092019450905f613fe3604085015190565b90505f613ff282848601614ee4565b928301929050614003836040860152565b5f61400f606087015190565b90505f61401e82868801614ee4565b94850194905061402f856060880152565b895f61403d82898901614faf565b9a9d96909a016004019b50949950505050505050505050565b3d1561409b57601f3d0160051c60405160051c8160030281831115614088578183036003028280028480020360091c01015b5a602082011015611a59573d5f803e3d5ffd5b565b63939792855f52806020526024601cfd5b60603d105f8080808080866141205760405f803e5f51935060205192503d60208501113d60208501118082179850505086614120576020845f3e5f51915060208360203e60205190508160071b60208501018160a0026020850101803d10823d101761ffff8486171117985050505f80525b86614152575f8061413584602088018d61415b565b9250975061414783602087018c61423b565b929092179850909550505b5050505061275d565b5f806040519150825160c08602602001830160405285835260208660010160051b8085018360010160051b8701614199858b81811090829003020190565b60010160051b8a861196505b808510156141f957828589015260808a843e6060830151955085608084015260608201518681116141d685856142e2565b17881797505060808a01995060a08301925060a0820191506020850194506141a5565b50505b8183101561422f578083870152608088823e6060810151608082015260808801975060a0810190506020830192506141fc565b50505050935093915050565b604051815180851190808603818710028101602060e08202850181016040528185526001928301600590811b87019390920190911b908185015b8282101561422f57808287015260a088823e60206060890160a083013e606081015160608501516142b26080840151608088015180159114171590565b818311176142c084886142e2565b60a09b909b019a179690961795505060c0938401936020929092019101614275565b5f81516040830151801560038311161561430457506040840151600119909101905b604085015181148551831460208701516020870151141616159250505092915050565b5f8451600581111561433b5761433b615329565b0361437857604084015160208501516001600160a01b0316171561436157614361613379565b61437384608001518560600151613294565b614416565b60018451600581111561438d5761438d615329565b036143be576040840151156143a4576143a4613379565b614373846020015184866080015187606001518686613386565b6002845160058111156143d3576143d3615329565b036143f7576143738460200151848660800151876040015188606001518787611889565b61441684602001518486608001518760400151886060015187876118d4565b50505050565b608082901c63ffffffff604084901c811690808516906144449084906317b1f94290611b8016565b601c830192506144548482614fce565b50509250929050565b5f80614467614eda565b63f4dd92ce815287841860a0820152601c8101925060200160a0808252875f614491604083015190565b90505f6144a082858701614ee4565b9384019390506144b1846020870152565b5f6144bd606085015190565b90505f6144cc82878901614f4a565b9586019590506144dd866040890152565b5f6144ea8d888a01614faf565b9687019690506144fb8760608a0152565b5f6145088d898b01614fce565b905080880197508760040199505050505050505050509550959350505050565b6339f3e3fd5f526004601cfd5b6301e4d72a6102043560051b6080019081525f808260208082015260408101858152336060830152601c919091019061456f608435610aeb565b61458061014460e083016060611b28565b61014061458e816060840152565b61459c60a082016080840152565b61016060a06102643581029290920101906145b8908290840152565b6145c25f82840152565b6020016145d08160c0840152565b5f9181019182526020820196909652939560449095019492505050565b63d13d53d45f52806020526024601cfd5b631cf99b265f5281602052806040526044601cfd5b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166146f85780873b1515166146f857806146e757816146ca573d156146a957601f3d0160051c8360051c8160030281831115614692578183036003028280028480020360091c01015b5a6020820110156146a5573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b5f805f6001600160e01b03198751165f805260205f888a5f8e5af15f5190935014905081614753578361473e575f925050506106d7565b614746614056565b845f52876020526024601cfd5b8061476557845f52876020526024601cfd5b50600198975050505050505050565b63375c24c15f52806020526024601cfd5b5f805f85865160051b87015b808210156148a2576020820191508851825151106147b1576147b16148d6565b81515160051b60208a01015180516020845101515f6040830151602085015115815184101517156147e6575050505050614791565b8260051b60208201015191505060608101935083518901915083511589831060011b17881797508198505f84528a51935086156001811461484f5760608220881860408d01516101208601511860208e015186511817171561484a5761484a6148d6565b614898565b8151855260208201516020860152604082015160408601528a6080860152835160208d015261012084015160408d015260608520975060208d0192508683181561489857865183525b5050505050614791565b5050508160608551015280156148cf57600181036148c7576391b3e5145f526004601cfd5b6148cf6148e3565b5050614416565b637fda72795f526004601cfd5b634e487b715f5260116020526024601cfd5b5f805f86875160051b88015b808210156149f7576020820191508151518a518110614922576149226148d6565b8060051b60208c01015190506020835101515f606083510151602084015115815184101517156149555750505050614901565b8260051b60208201015191505060608101925082518801915082511588831060011b17871796508197505f83528a5192508515600181146149a75760a0822087146149a2576149a26148d6565b6149ee565b815184526020820151602085015260408201516040850152608082015160808501528a60208d01528960408d015260a08220965060208d019250858318156149ee57855183525b50505050614901565b50508551606001839052508015614a255760018103614a1d576391b3e5145f526004601cfd5b614a256148e3565b50506128d6565b63a5f542085f528260205281604052806060526064601cfd5b63466aa6165f526004601cfd5b5f614e58565b5f6009821015614bb1576005821015614b0e576003821015614ac1577f832c58a5b611aadcfa6a082ac9d04bace53d8278387f10040347b7e98eb5b30260018314027fbf8e29b89f29ed9b529c154a63038ffca562f8d7cd1e2545dda53a1b582dde3018610402565b7ff3e8417a785f980bdaf134fa0274a6bf891eeb8195cd94b09d2aa651046e28bc60038314027fa02eb7ff164c884e5e2c336dc85f81c6a93329d8e9adf214b32729b894de2af118610402565b6007821015614b64577f25d02425402d882d211a7ab774c0ed6eca048c4d03d9af40132475744753b2a360058314027f1c19f71958cdd8f081b4c31f7caf5c010b29d12950be2fa1c95070dc47e30b5518610402565b7fb58d772fb09b426b9dece637f61ca9065f2b994f1464b51e9207f55f7c8f594860078314027f7ff98d9d4e55d876c5cfac10b43c04039522f3ddfb0ea9bfe70c68cfb5c7cc1418610402565b6011821015614d0957600d821015614c6657600b821015614c19577f6f0ec38c21f6f583ab7f3c5413c773ffd5344c34fde1d390958e438bf667448f60098314027fd1d97d1ef5eaa37a4ee5fbf234e6f6d64eb511eb562221cd7edfbdde0848da0518610402565b7f32f4e7485d6485f9f6c255929b9905c62ba919758bbe231f231eaeecf33d810c600b8314027fbb98d87cc12922b83759626c5f07d72266da9702d19ffad6a514c73a89002f5f18610402565b600f821015614cbc577f8df51df98847160517f5b1186b4bc3f418d98b8a7f17f1292f392d79d600d79e600d8314027f6b5b04cbae4fcb1a9d78e7b2dfc51a36933d023cf6e347e03d517b472a85259018610402565b7fcc4886e37eedd9aacd6c1c2c9247197a621a71282e87a7cbc673f3736d9aa141600f8314027f1da3eed3ecef6ebaa6e5023c057ec2c75150693fd0dac5c90f4a142f9879fde818610402565b6015821015614db5576013821015614d68577f2d7a3ed6dab270fdb8e054b2ad525f0ce2a8b89cc76c17f0965434740f673a5560118314027fc3939feff011e53ab8c35ca3370aad54c5df1fc2938cd62543174fa6e7d8587718610402565b7f54b3212a178782f104e0d514b41a9a5c4ca9c980bf6597c3cecbf280917e202a60138314027f5a4f867d3d458dabecad65f6201ceeaba0096df2d0c491cc32e6ea4e6435001718610402565b6017821015614e0b577fbb40bf8cea3a5a716e2b6eb08bbdac8ec159f82f380783db3c56904f15a43d0460158314027f3bd8cff538aba49a9c374c806d277181e9651624b3e31111bc0624574f8bca1d18610402565b7f403be09941a31d05cfc2f896505811353d45d38743288b016630cce39435476a60178314027f1d51df90cba8de7637ca3e8fe1e3511d1dc2f23487d05dbdecb781860c21ac1c18610402565b61040282614a58565b6321ccfeb75f5281602052806040526044601cfd5b6394eb6af65f526004601cfd5b5f835f5260205f2060208301835160051b81015b80821015614ebe57815180841160051b93845260209384185260405f209290910190614e97565b50508314905080614416576144165b6309bde3395f526004601cfd5b5f61041260405190565b5f825180835260208401602084018260051b82015b80831015614f375782518051835260208101516020840152604081015160408401526060810151606084015250602083019250608082019150614ef9565b5050508060071b60200191505092915050565b5f80614f54845190565b8084529050602084810190600583901b860181019085015b82821115614f9c575f614f7e84615008565b9050614f8c818360a0615011565b506020929092019160a001614f6c565b60a0840260200194505050505092915050565b5f63ffffffe0603f614fbf855190565b01169050610402838383615011565b5f80614fd8845190565b8084529050600581901b614ff3602086810190860183615011565b602001949350505050565b6103b06040829052565b5f610402825190565b8082828560045afa80153d151715614416575f80fd5b6040518060a0016040528061503a61509c565b81525f602082018190526040820152606080820181905260809091015290565b60408051610100810182525f606082018181526080830182905260a0830182905260c0830182905260e083018290528252602082018190529181019190915290565b6040518061016001604052805f6001600160a01b031681526020015f6001600160a01b0316815260200160608152602001606081526020015f60048111156150e6576150e6615329565b81525f6020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b5f60208284031215615125575f80fd5b81356001600160401b0381111561513a575f80fd5b820161024081850312156104f1575f80fd5b5f81518084525f5b8181101561517057602081850181015186830182015201615154565b505f602082860101526020601f19601f83011685010191505092915050565b602081525f6104f1602083018461514c565b5f602082840312156151b1575f80fd5b5035919050565b5f602082840312156151c8575f80fd5b81356001600160401b038111156151dd575f80fd5b820161016081850312156104f1575f80fd5b5f8083601f8401126151ff575f80fd5b5081356001600160401b03811115615215575f80fd5b6020830191508360208260051b850101111561522f575f80fd5b9250929050565b80356001600160a01b0381168114611c04575f80fd5b5f805f805f805f805f805f60e08c8e031215615266575f80fd5b6001600160401b03808d35111561527b575f80fd5b6152888e8e358f016151ef565b909c509a5060208d013581101561529d575f80fd5b6152ad8e60208f01358f016151ef565b909a50985060408d01358110156152c2575f80fd5b6152d28e60408f01358f016151ef565b909850965060608d01358110156152e7575f80fd5b506152f88d60608e01358e016151ef565b909550935060808c0135925061531060a08d01615236565b915060c08c013590509295989b509295989b9093969950565b634e487b7160e01b5f52602160045260245ffd5b60068110611b8057611b80615329565b61535882825161533d565b6020818101516001600160a01b0390811691840191909152604080830151908401526060808301519084015260809182015116910152565b5f815180845260208085019450602084015f5b838110156153e55781516153b888825161534d565b808401516001600160a01b031660a08901526040015160c088015260e090960195908201906001016153a3565b509495945050505050565b604080825283519082018190525f906020906060840190828701845b8281101561542a57815115158452928401929084019060010161540c565b50505083810360208501526106d78186615390565b5f8060208385031215615450575f80fd5b82356001600160401b03811115615465575f80fd5b615471858286016151ef565b90969095509350505050565b5f805f8060408587031215615490575f80fd5b84356001600160401b03808211156154a6575f80fd5b6154b2888389016151ef565b909650945060208701359150808211156154ca575f80fd5b506154d7878288016151ef565b95989497509550505050565b602081525f6104f16020830184615390565b5f60208284031215615505575f80fd5b6104f182615236565b5f806040838503121561551f575f80fd5b82356001600160401b03811115615534575f80fd5b830160408186031215615545575f80fd5b946020939093013593505050565b5f805f805f60808688031215615567575f80fd5b85356001600160401b038082111561557d575f80fd5b9087019060a0828a031215615590575f80fd5b909550602087013590808211156155a5575f80fd5b506155b2888289016151ef565b909550935050604086013591506155cb60608701615236565b90509295509295909350565b5f805f805f805f8060a0898b0312156155ee575f80fd5b88356001600160401b0380821115615604575f80fd5b6156108c838d016151ef565b909a50985060208b0135915080821115615628575f80fd5b6156348c838d016151ef565b909850965060408b013591508082111561564c575f80fd5b506156598b828c016151ef565b999c989b509699959896976060870135966080013595509350505050565b5f805f805f805f6080888a03121561568d575f80fd5b87356001600160401b03808211156156a3575f80fd5b6156af8b838c016151ef565b909950975060208a01359150808211156156c7575f80fd5b6156d38b838c016151ef565b909750955060408a01359150808211156156eb575f80fd5b506156f88a828b016151ef565b909450925061570b905060608901615236565b905092959891949750929550565b606081525f61572b606083018661514c565b6020830194909452506001600160a01b0391909116604090910152919050565b634e487b7160e01b5f52604160045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b5f8261578d57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f815180845260208085019450602084015f5b838110156153e55781516157ce88825161533d565b838101516001600160a01b03168885015260408082015190890152606080820151908901526080908101519088015260a090960195908201906001016157b9565b5f815180845260208085019450602084015f5b838110156153e557815161583788825161533d565b808401516001600160a01b0390811689860152604080830151908a0152606080830151908a0152608080830151908a015260a091820151169088015260c09096019590820190600101615822565b60058110611b8057611b80615329565b828152604060208201526158b56040820183516001600160a01b03169052565b5f60208301516158d060608401826001600160a01b03169052565b5060408301516101608060808501526158ed6101a08501836157a6565b91506060850151603f198584030160a086015261590a838261580f565b925050608085015161591f60c0860182615885565b5060a085015160e085015260c0850151610100818187015260e0870151915061012082818801528188015192506101409150828288015280880151848801525080870151610180870152505050809150509392505050565b5f823561015e1983360301811261598c575f80fd5b9190910192915050565b5f602082840312156159a6575f80fd5b8135600581106104f1575f80fd5b818103818111156104025761040261575f565b808201808211156104025761040261575f565b5f815180845260208085019450602084015f5b838110156153e557615a0087835161534d565b60a09690960195908201906001016159ed565b5f6080808301878452602060018060a01b03808916602087015260406080604088015283895180865260a08901915060208b0195505f5b81811015615a8b578651615a5f84825161533d565b808701518616848801528481015185850152606090810151908401529585019591870191600101615a4a565b50508781036060890152615a9f818a6159da565b9c9b505050505050505050505050565b80820281158282048414176104025761040261575f56fea164736f6c6343000818000a","storage":{}},"0x6265cc8d1b28edfd4d76c80bf774c0d446fffbde":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610090575f3560e01c80633f15457f116100635780633f15457f1461010f5780637adbf973146101225780637dc0d1d0146101355780638bbedf7514610147578063be27b22c1461015a575f80fd5b806301ffc9a7146100945780631ecfc411146100bc578063224199c2146100d157806330349ebe146100e4575b5f80fd5b6100a76100a23660046115b1565b61016d565b60405190151581526020015b60405180910390f35b6100cf6100ca3660046115ef565b6101a3565b005b6100cf6100df3660046117e0565b6102de565b6002546100f7906001600160a01b031681565b6040516001600160a01b0390911681526020016100b3565b6001546100f7906001600160a01b031681565b6100cf6101303660046115ef565b61063c565b5f546100f7906001600160a01b031681565b6100cf610155366004611889565b61076d565b6100cf61016836600461190b565b6107f1565b5f6001600160e01b031982166301ffc9a760e01b148061019d57506001600160e01b031982166317d8f49b60e01b145b92915050565b6001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa1580156101ea573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061020e919061196b565b90505f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561024d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610271919061196b565b9050336001600160a01b03821614610287575f80fd5b600280546001600160a01b0319166001600160a01b0385169081179091556040519081527f9176b7f47e4504df5e5516c99d90d82ac7cbd49cc77e7f22ba2ac2f2e3a3eba8906020015b60405180910390a1505050565b5f546040516321ae60b160e11b81526001600160a01b039091169063435cc1629061030f90879087906004016119d3565b5f604051808303815f875af115801561032a573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526103519190810190611a6b565b92505f805f610360888761088b565b91945092509050336001600160a01b038216146103da5760405162461bcd60e51b815260206004820152602d60248201527f4f6e6c79206f776e65722063616e2063616c6c2070726f7665416e64436c616960448201526c36abb4ba342932b9b7b63b32b960991b60648201526084015b60405180910390fd5b6001600160a01b038416156105bb576001600160a01b03851661044e5760405162461bcd60e51b815260206004820152602660248201527f43616e6e6f74207365742061646472206966207265736f6c766572206973206e6044820152651bdd081cd95d60d21b60648201526084016103d1565b6001546040516305ef2c7f60e41b815260048101859052602481018490523060448201526001600160a01b0387811660648301525f608483015290911690635ef2c7f09060a4015f604051808303815f87803b1580156104ac575f80fd5b505af11580156104be573d5f803e3d5ffd5b505050505f83836040516020016104df929190918252602082015260400190565b60408051808303601f1901815290829052805160209091012062d5fa2b60e81b8252600482018190526001600160a01b03878116602484015290925087169063d5fa2b00906044015f604051808303815f87803b15801561053e575f80fd5b505af1158015610550573d5f803e3d5ffd5b5050600154604051635b0fc9c360e01b8152600481018590526001600160a01b0386811660248301529091169250635b0fc9c391506044015f604051808303815f87803b15801561059f575f80fd5b505af11580156105b1573d5f803e3d5ffd5b5050505050610632565b6001546040516305ef2c7f60e41b815260048101859052602481018490526001600160a01b03838116604483015287811660648301525f608483015290911690635ef2c7f09060a4015f604051808303815f87803b15801561061b575f80fd5b505af115801561062d573d5f803e3d5ffd5b505050505b5050505050505050565b6001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa158015610683573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106a7919061196b565b90505f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106e6573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061070a919061196b565b9050336001600160a01b03821614610720575f80fd5b5f80546001600160a01b0319166001600160a01b0385169081179091556040519081527fb3eacd0e351fafdfefdec84e1cd19679b38dbcd63ea7c2c24da17fd2bc3b3c0e906020016102d1565b5f546040516321ae60b160e11b81526001600160a01b039091169063435cc1629061079e90859085906004016119d3565b5f604051808303815f875af11580156107b9573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526107e09190810190611a6b565b90506107ec83826107f1565b505050565b5f805f6107fe858561088b565b6001546040516306ab592360e01b815260048101859052602481018490526001600160a01b03808416604483015294975092955090935091909116906306ab5923906064016020604051808303815f875af115801561085f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108839190611add565b505050505050565b5f8080806108998682610a40565b60ff1690506108aa86600183610a63565b92505f6108dc6108bb836001611b08565b6001848a516108ca9190611b1b565b6108d49190611b1b565b899190610a85565b6002546040516327c482cf60e11b81529192506001600160a01b031690634f89059e9061090d908490600401611b2e565b602060405180830381865afa158015610928573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061094c9190611b40565b6109a45760405162461bcd60e51b815260206004820152602360248201527f506172656e74206e616d65206d7573742062652061207075626c6963207375666044820152620ccd2f60eb1b60648201526084016103d1565b6109ae815f610b05565b5f549095506109c7906001600160a01b03168888610de3565b5060408051602081018890529081018690529093506001600160a01b03841690606001604051602081830303815290604052805190602001207fa2e66ce20e6fb2c4f61339c364ad79f15160cf5307230c8bc4d628adbca2ba3989604051610a2f9190611b2e565b60405180910390a350509250925092565b5f828281518110610a5357610a53611b5f565b016020015160f81c905092915050565b82515f90610a718385611b08565b1115610a7b575f80fd5b5091016020012090565b8251606090610a948385611b08565b1115610a9e575f80fd5b5f8267ffffffffffffffff811115610ab857610ab861160a565b6040519080825280601f01601f191660200182016040528015610ae2576020820181803683370190505b50905060208082019086860101610afa82828761100b565b509095945050505050565b5f80610b118484610a40565b60ff169050805f03610b2657505f905061019d565b5f610b4585610b358487611b08565b610b40906001611b08565b610b05565b90505f610b5e610b56866001611b08565b879085610a63565b604080516020810185905290810182905290915060600160408051808303601f190181529082905280516020909101206001546302571be360e01b8352600483018290529095505f916001600160a01b03909116906302571be390602401602060405180830381865afa158015610bd7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bfb919061196b565b90506001600160a01b0381161580610c1b57506001600160a01b03811630145b610c7a5760405162461bcd60e51b815260206004820152602a60248201527f43616e6e6f7420656e61626c652061206e616d65206f776e656420627920736f6044820152696d656f6e6520656c736560b01b60648201526084016103d1565b6001600160a01b0381163014610dd95782610d5e576001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa158015610cd6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cfa919061196b565b60405163232e3b3b60e21b8152600481018590523060248201529091506001600160a01b03821690638cb8ecec906044015f604051808303815f87803b158015610d42575f80fd5b505af1158015610d54573d5f803e3d5ffd5b5050505050610dd9565b6001546040516306ab592360e01b815260048101859052602481018490523060448201526001600160a01b03909116906306ab5923906064016020604051808303815f875af1158015610db3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610dd79190611add565b505b5050505092915050565b5f80610e016040518060400160405280606081526020015f81525090565b610e1985516005610e129190611b08565b8290611060565b50604080518082019091526005815264045f656e7360d81b6020820152610e419082906110c3565b50610e4c81866110c3565b50805160405163021e646f60e21b81525f9182916001600160a01b038a169163087991bc91610e8091601091600401611b73565b606060405180830381865afa158015610e9b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ebf9190611ba7565b93509150506bffffffffffffffffffffffff198216158015610ee057508551155b15610ef3575f8094509450505050611003565b855160208701206bffffffffffffffffffffffff19838116911614610f16575f80fd5b5f610f2187826110ef565b90505b80515160208201511015610ff857610f4b816080015183610f459190611bfc565b4261114a565b610fbd5760405162461bcd60e51b815260206004820152603c60248201527f444e53207265636f7264206973207374616c653b2072656672657368206f722060448201527f64656c657465206974206265666f72652070726f63656564696e672e0000000060648201526084016103d1565b5f80610fcd898460a00151611162565b925090508115610fe857965060019550611003945050505050565b5050610ff3816111d1565b610f24565b505f80945094505050505b935093915050565b602081106110435781518352611022602084611b08565b925061102f602083611b08565b915061103c602082611b1b565b905061100b565b905182516020929092036101000a5f190180199091169116179052565b60408051808201909152606081525f602082015261107f602083611c20565b156110a75761108f602083611c20565b61109a906020611b1b565b6110a49083611b08565b91505b506020828101829052604080518085525f815290920101905290565b60408051808201909152606081525f60208201526110e883845f0151518485516112b6565b9392505050565b6111376040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261019d816111d1565b5f806111568385611c3f565b60030b12159392505050565b5f805b83518310156111c4575f6111798585610a40565b60ff169050611189600185611b08565b93505f8061119887878561139c565b9250905081156111b0579350600192506111ca915050565b6111ba8387611b08565b9550505050611165565b505f9050805b9250929050565b60c081015160208201819052815151116111e85750565b5f6111fa825f015183602001516113f5565b82602001516112099190611b08565b82519091506112189082611454565b61ffff16604083015261122c600282611b08565b825190915061123b9082611454565b61ffff16606083015261124f600282611b08565b825190915061125e908261147a565b63ffffffff166080830152611274600482611b08565b82519091505f906112859083611454565b61ffff169050611296600283611b08565b60a0840181905291506112a98183611b08565b60c0909301929092525050565b60408051808201909152606081525f602082015282518211156112d7575f80fd5b60208501516112e68386611b08565b11156113195761131985611309876020015187866113049190611b08565b6114a2565b611314906002611c66565b6114b8565b5f808651805187602083010193508088870111156113375787860182525b505050602084015b602084106113775780518252611356602083611b08565b9150611363602082611b08565b9050611370602085611b1b565b935061133f565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b5f806113a8858561147a565b63ffffffff1663613d3078146113c257505f905080611003565b602c8310156113d557505f905080611003565b6113e9856113e4866004611b08565b6114d5565b91509150935093915050565b5f815b8351811061140857611408611c7d565b5f6114138583610a40565b60ff169050611423816001611b08565b61142d9083611b08565b9150805f0361143c5750611442565b506113f8565b61144c8382611b1b565b949350505050565b81515f90611463836002611b08565b111561146d575f80fd5b50016002015161ffff1690565b81515f90611489836004611b08565b1115611493575f80fd5b50016004015163ffffffff1690565b5f818311156114b257508161019d565b50919050565b81516114c48383611060565b506114cf83826110c3565b50505050565b5f8060288385516114e69190611b1b565b10156114f657505f9050806111ca565b5f835b611504856028611b08565b8110156115a55760049190911b905f61151d8783610a40565b60ff169050603081101580156115335750603a81105b1561154c57611543603082611b1b565b8317925061159c565b6041811015801561155d5750604781105b1561156d57611543603782611b1b565b6061811015801561157e5750606781105b1561158e57611543605782611b1b565b5f80945094505050506111ca565b506001016114f9565b50946001945092505050565b5f602082840312156115c1575f80fd5b81356001600160e01b0319811681146110e8575f80fd5b6001600160a01b03811681146115ec575f80fd5b50565b5f602082840312156115ff575f80fd5b81356110e8816115d8565b634e487b7160e01b5f52604160045260245ffd5b6040805190810167ffffffffffffffff811182821017156116415761164161160a565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156116705761167061160a565b604052919050565b5f67ffffffffffffffff8211156116915761169161160a565b50601f01601f191660200190565b5f82601f8301126116ae575f80fd5b81356116c16116bc82611678565b611647565b8181528460208386010111156116d5575f80fd5b816020850160208301375f918101602001919091529392505050565b5f82601f830112611700575f80fd5b8135602067ffffffffffffffff8083111561171d5761171d61160a565b8260051b61172c838201611647565b9384528581018301938381019088861115611745575f80fd5b84880192505b858310156117d457823584811115611761575f80fd5b88016040818b03601f1901811315611777575f80fd5b61177f61161e565b878301358781111561178f575f80fd5b61179d8d8a8387010161169f565b8252509082013590868211156117b1575f80fd5b6117bf8c898486010161169f565b8189015284525050918401919084019061174b565b98975050505050505050565b5f805f805f60a086880312156117f4575f80fd5b853567ffffffffffffffff8082111561180b575f80fd5b61181789838a0161169f565b9650602088013591508082111561182c575f80fd5b61183889838a016116f1565b9550604088013591508082111561184d575f80fd5b5061185a8882890161169f565b935050606086013561186b816115d8565b9150608086013561187b816115d8565b809150509295509295909350565b5f805f6060848603121561189b575f80fd5b833567ffffffffffffffff808211156118b2575f80fd5b6118be8783880161169f565b945060208601359150808211156118d3575f80fd5b6118df878388016116f1565b935060408601359150808211156118f4575f80fd5b506119018682870161169f565b9150509250925092565b5f806040838503121561191c575f80fd5b823567ffffffffffffffff80821115611933575f80fd5b61193f8683870161169f565b93506020850135915080821115611954575f80fd5b506119618582860161169f565b9150509250929050565b5f6020828403121561197b575f80fd5b81516110e8816115d8565b5f5b838110156119a0578181015183820152602001611988565b50505f910152565b5f81518084526119bf816020860160208601611986565b601f01601f19169290920160200192915050565b5f60408083016040845280865180835260608601915060608160051b870101925060208089015f5b83811015611a4b57888603605f1901855281518051888852611a1f898901826119a8565b9185015188830389870152919050611a3781836119a8565b9750505093820193908201906001016119fb565b505086840381880152505050611a6181866119a8565b9695505050505050565b5f60208284031215611a7b575f80fd5b815167ffffffffffffffff811115611a91575f80fd5b8201601f81018413611aa1575f80fd5b8051611aaf6116bc82611678565b818152856020838501011115611ac3575f80fd5b611ad4826020830160208601611986565b95945050505050565b5f60208284031215611aed575f80fd5b5051919050565b634e487b7160e01b5f52601160045260245ffd5b8082018082111561019d5761019d611af4565b8181038181111561019d5761019d611af4565b602081525f6110e860208301846119a8565b5f60208284031215611b50575f80fd5b815180151581146110e8575f80fd5b634e487b7160e01b5f52603260045260245ffd5b61ffff83168152604060208201525f61144c60408301846119a8565b805163ffffffff81168114611ba2575f80fd5b919050565b5f805f60608486031215611bb9575f80fd5b611bc284611b8f565b9250611bd060208501611b8f565b915060408401516bffffffffffffffffffffffff1981168114611bf1575f80fd5b809150509250925092565b63ffffffff818116838216019080821115611c1957611c19611af4565b5092915050565b5f82611c3a57634e487b7160e01b5f52601260045260245ffd5b500690565b600382810b9082900b03637fffffff198112637fffffff8213171561019d5761019d611af4565b808202811582820484141761019d5761019d611af4565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{"0x0":"0x9b2565a3545a1312bdcb6e7148a7f7cae8c2706b","0x1":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0x2":"0x287dee389caaa49edc112888f2bcfd927b472e25"}},"0x62b11ad5f582a5c5d378fb310125b030042554f1":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106103af5760003560e01c80637e37479e116101f4578063ba5d40b71161011a578063e985e9c5116100ad578063f5c1f76e1161007c578063f5c1f76e146108d8578063f7df5c60146108eb578063f8c8765e146108fe578063ffa1ad741461091157600080fd5b8063e985e9c51461087a578063ebf0c717146108b6578063ec129eea146108bd578063f25eb5c1146108d057600080fd5b8063c87b56dd116100e9578063c87b56dd1461082e578063ce92b33e14610841578063cf2c52cb14610854578063d9548e531461086757600080fd5b8063ba5d40b7146107b3578063baef73e9146107c6578063bb5b27e114610808578063bebec6b41461081b57600080fd5b8063a22cb46511610192578063ac9650d811610161578063ac9650d81461074c578063b3f9e4cb1461076c578063b85afd281461077f578063b88d4fde146107a057600080fd5b8063a22cb465146106e7578063a3f4df7e146106fa578063a424740014610726578063ab3b87fe1461073957600080fd5b80639508b1c4116101ce5780639508b1c4146106b15780639559c0bd146106c457806395d89b41146106cc57806399e0dd7c146106d457600080fd5b80637e37479e146106785780637eee288d1461068b57806394d008ef1461069e57600080fd5b806342842e0e116102d95780635096023911610277578063663f7b2a11610246578063663f7b2a14610610578063672b9f81146106235780636ccbae5f1461064457806370a082311461066557600080fd5b806350960239146105bb578063572b6c05146105ce5780636352211e146105ea578063638e5c78146105fd57600080fd5b806347c81699116102b357806347c816991461056f5780634a72584d146105825780634f558e791461059557806350382c1a146105a857600080fd5b806342842e0e1461053657806342966c6814610549578063430c20811461055c57600080fd5b80631bf7e13e1161035157806327f189751161032057806327f18975146104ea578063310bd74b146104fd5780633f72ec6e1461051057806340c10f191461052357600080fd5b80631bf7e13e146104905780631f71be06146104a357806323b872dd146104b6578063276fabb1146104c957600080fd5b8063095ea7b31161038d578063095ea7b31461041c578063150b7a02146104315780631bd8cc1a1461045d5780631be5e7ed1461047d57600080fd5b806301ffc9a7146103b457806306fdde03146103dc578063081812fc146103f1575b600080fd5b6103c76103c2366004613f0b565b610935565b60405190151581526020015b60405180910390f35b6103e4610946565b6040516103d39190613f78565b6104046103ff366004613f8b565b6109d8565b6040516001600160a01b0390911681526020016103d3565b61042f61042a366004613fb9565b6109ff565b005b61044461043f366004614026565b610a18565b6040516001600160e01b031990911681526020016103d3565b61047061046b3660046140dc565b610b72565b6040516103d3919061417f565b6103e461048b366004614192565b610c68565b6103e461049e3660046141c9565b610cb3565b61042f6104b1366004614249565b610dbe565b61042f6104c4366004614305565b610e54565b6104dc6104d7366004614346565b610ea7565b6040519081526020016103d3565b61042f6104f8366004614387565b610eb6565b61042f61050b366004613f8b565b610efe565b61042f61051e3660046143fa565b610f39565b61042f610531366004613fb9565b61103b565b61042f610544366004614305565b611088565b61042f610557366004613f8b565b6110a3565b6103c761056a366004613fb9565b6110e7565b61042f61057d366004614424565b6110f3565b61042f610590366004614485565b611132565b6103c76105a3366004613f8b565b611178565b61042f6105b636600461458c565b611197565b61042f6105c93660046145c0565b6111cd565b6103c76105dc3660046145c0565b6001600160a01b0316301490565b6104046105f8366004613f8b565b61122d565b61042f61060b366004613f8b565b61124a565b61042f61061e366004614678565b611295565b6106366106313660046146c0565b611336565b6040516103d39291906146e2565b6104dc610652366004613f8b565b6000908152610100602052604090205490565b6104dc6106733660046145c0565b61134e565b6104dc6106863660046145c0565b6113d4565b61042f610699366004613fb9565b611405565b61042f6106ac366004614707565b61145c565b61042f6106bf366004614762565b6114ab565b6104dc601481565b6103e4611532565b61042f6106e2366004614805565b611541565b61042f6106f536600461483a565b6115c8565b6103e46040518060400160405280600d81526020016c554e533a20526567697374727960981b81525081565b6103c76107343660046141c9565b6115da565b61042f610747366004613fb9565b611625565b61075f61075a366004614346565b61166a565b6040516103d39190614866565b61040461077a366004613f8b565b611746565b61079261078d3660046140dc565b611770565b6040516103d39291906148c8565b61042f6107ae3660046148ed565b611892565b61042f6107c1366004614249565b6118d9565b6107f06107d4366004613f8b565b600090815261013960205260409020546001600160401b031690565b6040516001600160401b0390911681526020016103d3565b6103e4610816366004613f8b565b611962565b6103e46108293660046145c0565b611a04565b6103e461083c366004613f8b565b611ace565b61042f61084f366004614387565b611b34565b61042f610862366004614958565b611b73565b6103c7610875366004613f8b565b611c42565b6103c761088836600461499f565b6001600160a01b039182166000908152606a6020908152604080832093909416825291909152205460ff1690565b60006104dc565b61042f6108cb366004614387565b611c85565b61042f611cc4565b6104706108e6366004614346565b611d4b565b61042f6108f93660046149d8565b611dfe565b61042f61090c366004614a0a565b611e8f565b6103e460405180604001604052806005815260200164302e392e3160d81b81525081565b600061094082612065565b92915050565b60606065805461095590614a66565b80601f016020809104026020016040519081016040528092919081815260200182805461098190614a66565b80156109ce5780601f106109a3576101008083540402835291602001916109ce565b820191906000526020600020905b8154815290600101906020018083116109b157829003601f168201915b5050505050905090565b60006109e3826120b5565b506000908152606960205260409020546001600160a01b031690565b80610a0981612114565b610a13838361217a565b505050565b60007f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378546001600160a01b0316610a4d61229c565b6001600160a01b031603610b0e57610a6361229c565b6001600160a01b03166342966c68856040518263ffffffff1660e01b8152600401610a9091815260200190565b600060405180830381600087803b158015610aaa57600080fd5b505af1158015610abe573d6000803e3d6000fd5b505050821580159150610ad85750610ad882840184614a9a565b15610af657610ae730856122ab565b610af185856123f9565b610b00565b610b0085856122ab565b50630a85bd0160e11b610b69565b60405162461bcd60e51b815260206004820152602560248201527f52656769737472793a204552433732315f524543454956494e475f50524f4849604482015264109255115160da1b60648201526084015b60405180910390fd5b95945050505050565b6060826001600160401b03811115610b8c57610b8c6144d7565b604051908082528060200260200182016040528015610bbf57816020015b6060815260200190600190039081610baa5790505b50905060005b83811015610c6057610c30858583818110610be257610be2614ab5565b9050602002810190610bf49190614acb565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508792506124a4915050565b828281518110610c4257610c42614ab5565b60200260200101819052508080610c5890614b27565b915050610bc5565b509392505050565b6060610cab84848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508692506124a4915050565b949350505050565b606060005a9050610cc58585856115da565b610d215760405162461bcd60e51b815260206004820152602760248201527f554e535265676973747279466f727761726465723a205349474e41545552455f6044820152661253959053125160ca1b6064820152608401610b60565b610db3610d3160208701876145c0565b30604088013584610d4560608b018b614acb565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284376000920191909152506124d992505050565b9150505b9392505050565b610134546001600160a01b0316610dd361229c565b6001600160a01b031614610df95760405162461bcd60e51b8152600401610b6090614b40565b6000610e0d610e08888a614b87565b6125ba565b509050610e1a8982611405565b610e278686868685612612565b8115610e4957610e498982610e44610e3f8b8d614b87565b612680565b612701565b505050505050505050565b80610e66610e6061229c565b82612743565b610e825760405162461bcd60e51b8152600401610b6090614b94565b81610e8c81612114565b610e95836127d4565b610ea0858585612841565b5050505050565b6000610c60610e088385614b87565b80610ec2610e6061229c565b610ede5760405162461bcd60e51b8152600401610b6090614b94565b81610ee881612114565b610ef587878787876129e8565b50505050505050565b80610f0a610e6061229c565b610f265760405162461bcd60e51b8152600401610b6090614b94565b81610f3081612114565b610a13836127d4565b610134546001600160a01b0316610f4e61229c565b6001600160a01b031614610f745760405162461bcd60e51b8152600401610b6090614b40565b610f7d816120b5565b42826001600160401b031611610fd55760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a204558504952595f494e5f5041535400000000000000006044820152606401610b60565b60008181526101396020908152604091829020805467ffffffffffffffff19166001600160401b038616908117909155915191825282917f93feabb03ab84f47fc85bf0c298103fca21d8c8bc376eae0c1e1c56b9d4f7789910160405180910390a25050565b611043612a4b565b6001600160a01b031661105461229c565b6001600160a01b03161461107a5760405162461bcd60e51b8152600401610b6090614bdd565b61108482826122ab565b5050565b610a1383838360405180602001604052806000815250611892565b806110af610e6061229c565b6110cb5760405162461bcd60e51b8152600401610b6090614b94565b816110d581612114565b6110de836127d4565b610a1383612b4c565b6000610db78383612743565b806110ff610e6061229c565b61111b5760405162461bcd60e51b8152600401610b6090614b94565b8161112581612114565b610ef58787878787612bf3565b8061113e610e6061229c565b61115a5760405162461bcd60e51b8152600401610b6090614b94565b8161116481612114565b61117086868686612cd2565b505050505050565b6000818152606760205260408120546001600160a01b03161515610940565b6111ca816040516020016111ab9190614c1f565b6040516020818303038152906040528051906020012060001c82612d72565b50565b610134546001600160a01b03166111e261229c565b6001600160a01b0316146112085760405162461bcd60e51b8152600401610b6090614b40565b6001600160a01b0316600090815261013660205260409020805460ff19166001179055565b600061123882611c42565b6112455761094082612d97565b919050565b80611256610e6061229c565b6112725760405162461bcd60e51b8152600401610b6090614b94565b61128461127d61229c565b3084612841565b61108461128f61229c565b836123f9565b60006112a0826125ba565b5090506112ab61229c565b6001600160a01b03166112bd8261122d565b6001600160a01b0316146113135760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b60565b61131c81612114565b61108461132761229c565b8261133185612680565b612df7565b6060806113438484612e7e565b909590945092505050565b60006001600160a01b0382166113b85760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b6064820152608401610b60565b506001600160a01b031660009081526068602052604090205490565b6001600160a01b038116600090815261013560205260408120546113f781612e9f565b6113ff578091505b50919050565b610134546001600160a01b031661141a61229c565b6001600160a01b0316146114405760405162461bcd60e51b8152600401610b6090614b40565b611449816127d4565b61108461145582612d97565b8383612841565b611464612a4b565b6001600160a01b031661147561229c565b6001600160a01b03161461149b5760405162461bcd60e51b8152600401610b6090614bdd565b6114a584846122ab565b50505050565b6114b58787612ee9565b6114bd61229c565b6001600160a01b03166114cf8661122d565b6001600160a01b0316146115255760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b60565b610ef58484848489612612565b60606066805461095590614a66565b610134546001600160a01b031661155661229c565b6001600160a01b03161461157c5760405162461bcd60e51b8152600401610b6090614b40565b61013361158a828483614c81565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b82826040516115bc929190614d69565b60405180910390a15050565b6110846115d361229c565b8383612f58565b6000610cab6115e885614d7d565b3085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061302692505050565b80611631610e6061229c565b61164d5760405162461bcd60e51b8152600401610b6090614b94565b8161165781612114565b6114a561166384612d97565b8585612841565b606060006116788385614e07565b905030330361173d5760005b8381101561173b5761170b61169761229c565b61169f61316f565b8787858181106116b1576116b1614ab5565b90506020028101906116c39190614acb565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250613183915050565b82828151811061171d5761171d614ab5565b6020026020010181905250808061173390614b27565b915050611684565b505b610cab816131b3565b6000818152606760205260408120546001600160a01b0316611769576000610940565b3092915050565b606080836001600160401b0381111561178b5761178b6144d7565b6040519080825280602002602001820160405280156117be57816020015b60608152602001906001900390816117a95790505b509150836001600160401b038111156117d9576117d96144d7565b60405190808252806020026020018201604052801561180c57816020015b60608152602001906001900390816117f75790505b50905060005b848110156118895761183c86868381811061182f5761182f614ab5565b9050602002013585612e7e565b84838151811061184e5761184e614ab5565b6020026020010184848151811061186757611867614ab5565b602002602001018290528290525050808061188190614b27565b915050611812565b50935093915050565b8161189e610e6061229c565b6118ba5760405162461bcd60e51b8152600401610b6090614b94565b826118c481612114565b6118cd846127d4565b611170868686866132de565b610134546001600160a01b03166118ee61229c565b6001600160a01b0316146119145760405162461bcd60e51b8152600401610b6090614b40565b600080611924610e08898b614b87565b9150915061193181613311565b6119498a83611943610e3f8c8e614b87565b86613371565b6119568787878786612612565b50505050505050505050565b600081815260c96020526040902080546060919061197f90614a66565b80601f01602080910402602001604051908101604052809291908181526020018280546119ab90614a66565b80156119f85780601f106119cd576101008083540402835291602001916119f8565b820191906000526020600020905b8154815290600101906020018083116119db57829003601f168201915b50505050509050919050565b6001600160a01b03811660009081526101356020526040902054606090611a2a81612e9f565b6113ff576000818152610138602052604090208054611a4890614a66565b80601f0160208091040260200160405190810160405280929190818152602001828054611a7490614a66565b8015611ac15780601f10611a9657610100808354040283529160200191611ac1565b820191906000526020600020905b815481529060010190602001808311611aa457829003601f168201915b5050505050915050919050565b6060611ad9826120b5565b6000611ae36133c4565b90506000815111611b035760405180602001604052806000815250610db7565b80611b0d846133d4565b604051602001611b1e929190614e7a565b6040516020818303038152906040529392505050565b80611b40610e6061229c565b611b5c5760405162461bcd60e51b8152600401610b6090614b94565b81611b6681612114565b610ef58787878787612612565b7f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87546001600160a01b0316611ba661229c565b6001600160a01b031614611bcc5760405162461bcd60e51b8152600401610b6090614bdd565b6020819003611bef576000611be382840184613f8b565b90506114a584826122ab565b6000611bfd82840184614ea9565b805190915060005b8181101561117057611c3086848381518110611c2357611c23614ab5565b60200260200101516122ab565b80611c3a81614b27565b915050611c05565b600081815261013960205260408120546001600160401b03161580159061094057505060009081526101396020526040902054426001600160401b039091161090565b80611c91610e6061229c565b611cad5760405162461bcd60e51b8152600401610b6090614b94565b81611cb781612114565b610ef587878787876134d4565b6000611cce61229c565b6001600160a01b0381166000908152610135602052604081205491925003611d425760405162461bcd60e51b815260206004820152602160248201527f52656769737472793a20524556455253455f5245434f52445f49535f454d50546044820152605960f81b6064820152608401610b60565b6111ca816134ea565b6060816001600160401b03811115611d6557611d656144d7565b604051908082528060200260200182016040528015611d9857816020015b6060815260200190600190039081611d835790505b50905060005b82811015611df757611dc7848483818110611dbb57611dbb614ab5565b90506020020135611962565b828281518110611dd957611dd9614ab5565b60200260200101819052508080611def90614b27565b915050611d9e565b5092915050565b610134546001600160a01b0316611e1361229c565b6001600160a01b031614611e395760405162461bcd60e51b8152600401610b6090614b40565b61013454611e50906001600160a01b0316846122ab565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c39528383604051611e82929190614d69565b60405180910390a2505050565b600054610100900460ff1615808015611eaf5750600054600160ff909116105b80611ec95750303b158015611ec9575060005460ff166001145b611f2c5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610b60565b6000805460ff191660011790558015611f4f576000805461ff0019166101001790555b61013480546001600160a01b0319166001600160a01b038716179055837f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec9237880546001600160a01b0319166001600160a01b03929092169190911790556040805180820182526013815272556e73746f707061626c6520446f6d61696e7360681b60208083019190915282518084019093526002835261155160f21b90830152611ff79161352f565b611fff61356f565b61200761356f565b61201083613598565b612019826135c8565b8015610ea0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b60006001600160e01b031982166380ac58cd60e01b148061209657506001600160e01b03198216635b5e139f60e01b145b8061094057506301ffc9a760e01b6001600160e01b0319831614610940565b6000818152606760205260409020546001600160a01b03166111ca5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b60565b3033036121715761212361316f565b81146111ca5760405162461bcd60e51b815260206004820152601760248201527f52656769737472793a20544f4b454e5f494e56414c49440000000000000000006044820152606401610b60565b6111ca816135f8565b600061218582612d97565b9050806001600160a01b0316836001600160a01b0316036121f25760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b6064820152608401610b60565b806001600160a01b031661220461229c565b6001600160a01b0316148061222057506122208161088861229c565b6122925760405162461bcd60e51b815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c00006064820152608401610b60565b610a138383613626565b60006122a6613694565b905090565b6001600160a01b0382166123015760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610b60565b6000818152606760205260409020546001600160a01b0316156123665760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610b60565b612372600083836136af565b6001600160a01b038216600090815260686020526040812080546001929061239b908490614f39565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b03861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b6000612403612a4b565b905061240f8183613626565b60008051602061529383398151915254604080516020808201869052825180830390910181528183019283905263e3dec8fb60e01b9092526001600160a01b0390921691829163e3dec8fb9161246c918891309190604401614f4c565b600060405180830381600087803b15801561248657600080fd5b505af115801561249a573d6000803e3d6000fd5b5050505050505050565b6060610db7836040516020016124ba9190614c1f565b6040516020818303038152906040528051906020012060001c8361378b565b60606124e4856135f8565b600080876001600160a01b0316866124fe8b8a8989613183565b60405161250b9190614c1f565b60006040518083038160008787f1925050503d8060008114612549576040519150601f19603f3d011682016040523d82523d6000602084013e61254e565b606091505b50909250905061255f603f87614f8e565b5a1161256d5761256d614fa2565b6125ad82826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061386d565b9998505050505050505050565b805160009081905b801561260c578291506125f882856125db600185614fb8565b815181106125eb576125eb614ab5565b60200260200101516138a6565b92508061260481614fcb565b9150506125c2565b50915091565b60005b848110156111705761266e86868381811061263257612632614ab5565b90506020028101906126449190614acb565b86868581811061265657612656614ab5565b90506020028101906126689190614acb565b86612bf3565b8061267881614b27565b915050612615565b606060008260008151811061269757612697614ab5565b602002602001015190506000600190505b8351811015611df757818482815181106126c4576126c4614ab5565b60200260200101516040516020016126dd929190614fe2565b604051602081830303815290604052915080806126f990614b27565b9150506126a8565b61dead6001600160a01b0384161480159061273357506001600160a01b03831660009081526101356020526040902054155b15610a1357610a13838383612df7565b60008061274f8361122d565b90506001600160a01b03811615801590610cab5750806001600160a01b0316846001600160a01b031614806127a957506001600160a01b038082166000908152606a602090815260408083209388168352929052205460ff165b80610cab5750836001600160a01b03166127c2846109d8565b6001600160a01b031614949350505050565b6127dd81613952565b6040516020016127ef91815260200190565b60408051601f198184030181528282528051602091820120600085815260cb9092529181209190915582917f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9190a250565b826001600160a01b031661285482612d97565b6001600160a01b0316146128b85760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b6064820152608401610b60565b6001600160a01b03821661291a5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610b60565b6129258383836136af565b612930600082613626565b6001600160a01b0383166000908152606860205260408120805460019290612959908490614fb8565b90915550506001600160a01b0382166000908152606860205260408120805460019290612987908490614f39565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60005b8481101561117057612a39868683818110612a0857612a08614ab5565b90506020020135858584818110612a2157612a21614ab5565b9050602002810190612a339190614acb565b85612cd2565b80612a4381614b27565b9150506129eb565b600080516020615293833981519152546000906001600160a01b03168015612b485760405163721804d360e11b81523060048201526000906001600160a01b0383169063e43009a690602401602060405180830381865afa158015612ab4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ad8919061501e565b60405163e66f960360e01b8152600481018290529091506001600160a01b0383169063e66f960390602401602060405180830381865afa158015612b20573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b449190615037565b9250505b5090565b6000612b5782612d97565b9050612b65816000846136af565b612b70600083613626565b6001600160a01b0381166000908152606860205260408120805460019290612b99908490614fb8565b909155505060008281526067602052604080822080546001600160a01b0319169055518391906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b60008585604051602001612c08929190615054565b60408051601f198184030181528282528051602091820120601f8901829004820284018201909252878352909250612c5c9183918990899081908401838280828437600092019190915250612d7292505050565b6111708187878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061397a915050565b612cdb84613aaf565b612d275760405162461bcd60e51b815260206004820152601c60248201527f5265636f726453746f726167653a204b45595f4e4f545f464f554e44000000006044820152606401610b60565b6114a584612d3486611962565b85858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525087925061397a915050565b612d7b82613aaf565b61108457600082815260c960205260409020610a138282615064565b6000818152606760205260408120546001600160a01b0316806109405760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b60565b6000828152610138602052604090208054612e1190614a66565b9050600003612e3557600082815261013860205260409020612e338282615064565b505b6001600160a01b03831660008181526101356020526040808220859055518492917feb76a21470988c474a21f690cc28fee1ed511bd812dc3c21fd0f49c5e5d4708a91a3505050565b606080612e8a84611962565b9150612e96848461378b565b90509250929050565b6000818152610137602052604081205460ff16801561094057506101366000612ec661229c565b6001600160a01b0316815260208101919091526040016000205460ff1692915050565b60008051602061529383398151915254604051633805550f60e01b81526001600160a01b03909116908190633805550f90612f2a9086908690600401614d69565b600060405180830381600087803b158015612f4457600080fd5b505af1158015610ef5573d6000803e3d6000fd5b816001600160a01b0316836001600160a01b031603612fb95760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610b60565b6001600160a01b038381166000818152606a6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561306d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613091919061501e565b9050600061313f8660600151805190602001208688602001516040516020016130df9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561316557508551613165906001600160a01b03168286613ad5565b9695505050505050565b60003033036131805750601f193601355b90565b606082858560405160200161319a93929190615123565b6040516020818303038152906040529050949350505050565b606081516001600160401b038111156131ce576131ce6144d7565b60405190808252806020026020018201604052801561320157816020015b60608152602001906001900390816131ec5790505b50905060005b82518110156113ff57600080306001600160a01b031685848151811061322f5761322f614ab5565b60200260200101516040516132449190614c1f565b600060405180830381855af49150503d806000811461327f576040519150601f19603f3d011682016040523d82523d6000602084013e613284565b606091505b50915091506132ac82826040518060600160405280602781526020016152b36027913961386d565b8484815181106132be576132be614ab5565b6020026020010181905250505080806132d690614b27565b915050613207565b6132e9848484612841565b6132f584848484613c17565b6114a55760405162461bcd60e51b8152600401610b6090615162565b6000818152610137602052604090205460ff16156111ca5760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a20544f4b454e5f555047524144454400000000000000006044820152606401610b60565b61337b84846122ab565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952836040516133ab9190613f78565b60405180910390a280156114a5576114a5848484612701565b6060610133805461095590614a66565b6060816000036133fb5750506040805180820190915260018152600360fc1b602082015290565b8160005b8115613425578061340f81614b27565b915061341e9050600a83614f8e565b91506133ff565b6000816001600160401b0381111561343f5761343f6144d7565b6040519080825280601f01601f191660200182016040528015613469576020820181803683370190505b5090505b8415610cab5761347e600183614fb8565b915061348b600a866151b4565b613496906030614f39565b60f81b8183815181106134ab576134ab614ab5565b60200101906001600160f81b031916908160001a9053506134cd600a86614f8e565b945061346d565b6134dd816127d4565b610ea08585858585612612565b6001600160a01b03811660008181526101356020526040808220829055517ffcf5eec0cfa3e6332f5f0e63ec242d71f866a61d121d6cdf5c2eb3b668a26c4f9190a250565b600054610100900460ff166135565760405162461bcd60e51b8152600401610b60906151c8565b60656135628382615064565b506066610a138282615064565b600054610100900460ff166135965760405162461bcd60e51b8152600401610b60906151c8565b565b600054610100900460ff166135bf5760405162461bcd60e51b8152600401610b60906151c8565b6111ca81613d1c565b600054610100900460ff166135ef5760405162461bcd60e51b8152600401610b60906151c8565b6111ca81613d75565b60008181526101006020526040902054613613906001614f39565b6000918252610100602052604090912055565b600081815260696020526040902080546001600160a01b0319166001600160a01b038416908117909155819061365b82612d97565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60003033036136aa575060331936013560601c90565b503390565b6001600160a01b0382166136c6576136c681613311565b600081815261013960205260409020546001600160401b031615613761576001600160a01b0382161580159061371557506136ff612a4b565b6001600160a01b0316826001600160a01b031614155b6137615760405162461bcd60e51b815260206004820152601960248201527f52656769737472793a20544f4b454e5f455850495241424c45000000000000006044820152606401610b60565b6001600160a01b03831660009081526101356020526040902054819003610a1357610a13836134ea565b606061379682612e9f565b156137b05750604080516020810190915260008152610940565b60ca60006137bd84613952565b8152602001908152602001600020600084815260200190815260200160002080546137e790614a66565b80601f016020809104026020016040519081016040528092919081815260200182805461381390614a66565b80156138605780601f1061383557610100808354040283529160200191613860565b820191906000526020600020905b81548152906001019060200180831161384357829003601f168201915b5050505050905092915050565b6060831561387c575081610db7565b82511561388c5782518084602001fd5b8160405162461bcd60e51b8152600401610b609190613f78565b600081516000036138f15760405162461bcd60e51b815260206004820152601560248201527452656769737472793a204c4142454c5f454d50545960581b6044820152606401610b60565b82826040516020016139039190614c1f565b60405160208183030381529060405280519060200120604051602001613933929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b600081815260cb602052604081205415612b4857600082815260cb6020526040902054610940565b60ca600061398783613952565b8152602001908152602001600020600085815260200190815260200160002080546139b190614a66565b9050600003613a0957826040516139c89190614c1f565b6040518091039020817f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f8685604051613a009190613f78565b60405180910390a35b8160ca6000613a1784613952565b815260200190815260200160002060008681526020019081526020016000209081613a429190615064565b5081604051613a519190614c1f565b604051809103902083604051613a679190614c1f565b6040518091039020827f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d928686604051613aa19291906146e2565b60405180910390a450505050565b600081815260c9602052604081208054829190613acb90614a66565b9050119050919050565b6000806000613ae48585613dc3565b90925090506000816004811115613afd57613afd615213565b148015613b1b5750856001600160a01b0316826001600160a01b0316145b15613b2b57600192505050610db7565b600080876001600160a01b0316631626ba7e60e01b8888604051602401613b53929190615229565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051613b919190614c1f565b600060405180830381855afa9150503d8060008114613bcc576040519150601f19603f3d011682016040523d82523d6000602084013e613bd1565b606091505b5091509150818015613be4575080516020145b8015613c0b57508051630b135d3f60e11b90613c09908301602090810190840161501e565b145b98975050505050505050565b60006001600160a01b0384163b15613d1457836001600160a01b031663150b7a02613c4061229c565b8786866040518563ffffffff1660e01b8152600401613c629493929190615242565b6020604051808303816000875af1925050508015613c9d575060408051601f3d908101601f19168201909252613c9a91810190615275565b60015b613cfa573d808015613ccb576040519150601f19603f3d011682016040523d82523d6000602084013e613cd0565b606091505b508051600003613cf25760405162461bcd60e51b8152600401610b6090615162565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610cab565b506001610cab565b600054610100900460ff16613d435760405162461bcd60e51b8152600401610b60906151c8565b806000805160206152938339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b600054610100900460ff16613d9c5760405162461bcd60e51b8152600401610b60906151c8565b807f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87613d54565b6000808251604103613df95760208301516040840151606085015160001a613ded87828585613e08565b94509450505050613e01565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613e3f5750600090506003613eec565b8460ff16601b14158015613e5757508460ff16601c14155b15613e685750600090506004613eec565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613ebc573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613ee557600060019250925050613eec565b9150600090505b94509492505050565b6001600160e01b0319811681146111ca57600080fd5b600060208284031215613f1d57600080fd5b8135610db781613ef5565b60005b83811015613f43578181015183820152602001613f2b565b50506000910152565b60008151808452613f64816020860160208601613f28565b601f01601f19169290920160200192915050565b602081526000610db76020830184613f4c565b600060208284031215613f9d57600080fd5b5035919050565b6001600160a01b03811681146111ca57600080fd5b60008060408385031215613fcc57600080fd5b8235613fd781613fa4565b946020939093013593505050565b60008083601f840112613ff757600080fd5b5081356001600160401b0381111561400e57600080fd5b602083019150836020828501011115613e0157600080fd5b60008060008060006080868803121561403e57600080fd5b853561404981613fa4565b9450602086013561405981613fa4565b93506040860135925060608601356001600160401b0381111561407b57600080fd5b61408788828901613fe5565b969995985093965092949392505050565b60008083601f8401126140aa57600080fd5b5081356001600160401b038111156140c157600080fd5b6020830191508360208260051b8501011115613e0157600080fd5b6000806000604084860312156140f157600080fd5b83356001600160401b0381111561410757600080fd5b61411386828701614098565b909790965060209590950135949350505050565b600082825180855260208086019550808260051b84010181860160005b8481101561417257601f19868403018952614160838351613f4c565b98840198925090830190600101614144565b5090979650505050505050565b602081526000610db76020830184614127565b6000806000604084860312156141a757600080fd5b83356001600160401b038111156141bd57600080fd5b61411386828701613fe5565b6000806000604084860312156141de57600080fd5b83356001600160401b03808211156141f557600080fd5b908501906080828803121561420957600080fd5b9093506020850135908082111561421f57600080fd5b5061422c86828701613fe5565b9497909650939450505050565b8035801515811461124557600080fd5b60008060008060008060008060a0898b03121561426557600080fd5b883561427081613fa4565b975060208901356001600160401b038082111561428c57600080fd5b6142988c838d01614098565b909950975060408b01359150808211156142b157600080fd5b6142bd8c838d01614098565b909750955060608b01359150808211156142d657600080fd5b506142e38b828c01614098565b90945092506142f6905060808a01614239565b90509295985092959890939650565b60008060006060848603121561431a57600080fd5b833561432581613fa4565b9250602084013561433581613fa4565b929592945050506040919091013590565b6000806020838503121561435957600080fd5b82356001600160401b0381111561436f57600080fd5b61437b85828601614098565b90969095509350505050565b60008060008060006060868803121561439f57600080fd5b85356001600160401b03808211156143b657600080fd5b6143c289838a01614098565b909750955060208801359150808211156143db57600080fd5b506143e888828901614098565b96999598509660400135949350505050565b6000806040838503121561440d57600080fd5b82356001600160401b0381168114613fd757600080fd5b60008060008060006060868803121561443c57600080fd5b85356001600160401b038082111561445357600080fd5b61445f89838a01613fe5565b9097509550602088013591508082111561447857600080fd5b506143e888828901613fe5565b6000806000806060858703121561449b57600080fd5b8435935060208501356001600160401b038111156144b857600080fd5b6144c487828801613fe5565b9598909750949560400135949350505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715614515576145156144d7565b604052919050565b600082601f83011261452e57600080fd5b81356001600160401b03811115614547576145476144d7565b61455a601f8201601f19166020016144ed565b81815284602083860101111561456f57600080fd5b816020850160208301376000918101602001919091529392505050565b60006020828403121561459e57600080fd5b81356001600160401b038111156145b457600080fd5b610cab8482850161451d565b6000602082840312156145d257600080fd5b8135610db781613fa4565b60006001600160401b038211156145f6576145f66144d7565b5060051b60200190565b600061461361460e846145dd565b6144ed565b8381529050602080820190600585901b84018681111561463257600080fd5b845b8181101561466d5780356001600160401b038111156146535760008081fd5b61465f8982890161451d565b855250928201928201614634565b505050509392505050565b60006020828403121561468a57600080fd5b81356001600160401b038111156146a057600080fd5b8201601f810184136146b157600080fd5b610cab84823560208401614600565b600080604083850312156146d357600080fd5b50508035926020909101359150565b6040815260006146f56040830185613f4c565b8281036020840152610db38185613f4c565b6000806000806060858703121561471d57600080fd5b843561472881613fa4565b93506020850135925060408501356001600160401b0381111561474a57600080fd5b61475687828801613fe5565b95989497509550505050565b60008060008060008060006080888a03121561477d57600080fd5b87356001600160401b038082111561479457600080fd5b6147a08b838c01613fe5565b909950975060208a0135965060408a01359150808211156147c057600080fd5b6147cc8b838c01614098565b909650945060608a01359150808211156147e557600080fd5b506147f28a828b01614098565b989b979a50959850939692959293505050565b6000806020838503121561481857600080fd5b82356001600160401b0381111561482e57600080fd5b61437b85828601613fe5565b6000806040838503121561484d57600080fd5b823561485881613fa4565b9150612e9660208401614239565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156148bb57603f198886030184526148a9858351613f4c565b9450928501929085019060010161488d565b5092979650505050505050565b6040815260006148db6040830185614127565b8281036020840152610db38185614127565b6000806000806080858703121561490357600080fd5b843561490e81613fa4565b9350602085013561491e81613fa4565b92506040850135915060608501356001600160401b0381111561494057600080fd5b61494c8782880161451d565b91505092959194509250565b60008060006040848603121561496d57600080fd5b833561497881613fa4565b925060208401356001600160401b0381111561499357600080fd5b61422c86828701613fe5565b600080604083850312156149b257600080fd5b82356149bd81613fa4565b915060208301356149cd81613fa4565b809150509250929050565b6000806000604084860312156149ed57600080fd5b8335925060208401356001600160401b0381111561499357600080fd5b60008060008060808587031215614a2057600080fd5b8435614a2b81613fa4565b93506020850135614a3b81613fa4565b92506040850135614a4b81613fa4565b91506060850135614a5b81613fa4565b939692955090935050565b600181811c90821680614a7a57607f821691505b6020821081036113ff57634e487b7160e01b600052602260045260246000fd5b600060208284031215614aac57600080fd5b610db782614239565b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112614ae257600080fd5b8301803591506001600160401b03821115614afc57600080fd5b602001915036819003821315613e0157600080fd5b634e487b7160e01b600052601160045260246000fd5b600060018201614b3957614b39614b11565b5060010190565b60208082526027908201527f52656769737472793a2053454e4445525f49535f4e4f545f4d494e54494e475f60408201526626a0a720a3a2a960c91b606082015260800190565b6000610db7368484614600565b60208082526029908201527f52656769737472793a2053454e4445525f49535f4e4f545f415050524f5645446040820152682fa7a92fa7aba722a960b91b606082015260800190565b60208082526022908201527f52656769737472793a20494e53554646494349454e545f5045524d495353494f6040820152614e5360f01b606082015260800190565b60008251614c31818460208701613f28565b9190910192915050565b601f821115610a1357600081815260208120601f850160051c81016020861015614c625750805b601f850160051c820191505b8181101561117057828155600101614c6e565b6001600160401b03831115614c9857614c986144d7565b614cac83614ca68354614a66565b83614c3b565b6000601f841160018114614ce05760008515614cc85750838201355b600019600387901b1c1916600186901b178355610ea0565b600083815260209020601f19861690835b82811015614d115786850135825560209485019460019092019101614cf1565b5086821015614d2e5760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b602081526000610cab602083018486614d40565b600060808236031215614d8f57600080fd5b604051608081016001600160401b038282108183111715614db257614db26144d7565b8160405284359150614dc382613fa4565b81835260208501356020840152604085013560408401526060850135915080821115614dee57600080fd5b50614dfb3682860161451d565b60608301525092915050565b6000614e1561460e846145dd565b80848252602080830192508560051b850136811115614e3357600080fd5b855b81811015614e6e5780356001600160401b03811115614e545760008081fd5b614e6036828a0161451d565b865250938201938201614e35565b50919695505050505050565b60008351614e8c818460208801613f28565b835190830190614ea0818360208801613f28565b01949350505050565b60006020808385031215614ebc57600080fd5b82356001600160401b03811115614ed257600080fd5b8301601f81018513614ee357600080fd5b8035614ef161460e826145dd565b81815260059190911b82018301908381019087831115614f1057600080fd5b928401925b82841015614f2e57833582529284019290840190614f15565b979650505050505050565b8082018082111561094057610940614b11565b6001600160a01b03848116825283166020820152606060408201819052600090610b6990830184613f4c565b634e487b7160e01b600052601260045260246000fd5b600082614f9d57614f9d614f78565b500490565b634e487b7160e01b600052600160045260246000fd5b8181038181111561094057610940614b11565b600081614fda57614fda614b11565b506000190190565b60008351614ff4818460208801613f28565b601760f91b9083019081528351615012816001840160208801613f28565b01600101949350505050565b60006020828403121561503057600080fd5b5051919050565b60006020828403121561504957600080fd5b8151610db781613fa4565b8183823760009101908152919050565b81516001600160401b0381111561507d5761507d6144d7565b6150918161508b8454614a66565b84614c3b565b602080601f8311600181146150c657600084156150ae5750858301515b600019600386901b1c1916600185901b178555611170565b600085815260208120601f198616915b828110156150f5578886015182559484019460019091019084016150d6565b50858210156151135787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60008451615135818460208901613f28565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6000826151c3576151c3614f78565b500690565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b634e487b7160e01b600052602160045260246000fd5b828152604060208201526000610cab6040830184613f4c565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061316590830184613f4c565b60006020828403121561528757600080fd5b8151610db781613ef556febe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a","storage":{}},"0x6ac8f19d1e0f81147cdf2a1e53cb1f4e18417204":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610296575f3560e01c80636352211e11610161578063c93ab3fd116100ca578063e985e9c511610084578063e985e9c5146106c8578063eb8ae530146106db578063ed70554d146106ee578063f242432a1461070d578063f2fde38b14610720578063fd0cd0d914610733575f80fd5b8063c93ab3fd14610647578063cf4088231461065a578063d8c9921a1461066d578063d9a50c1214610680578063da8c229e14610693578063e0dba60f146106b5575f80fd5b8063a22cb4651161011b578063a22cb465146105d5578063a4014982146105e8578063adf4960a146105fb578063b6bcad261461060e578063c475abff14610621578063c658e08614610634575f80fd5b80636352211e146105595780636e5d6ad21461056c578063715018a6146105975780638b4dfa751461059f5780638cf8b41e146105b25780638da5cb5b146105c5575f80fd5b80631f4e1504116102035780633f15457f116101bd5780633f15457f146104b1578063402906fc146104d857806341415eab146105005780634e1273f41461051357806353095467146105335780635d3590d514610546575f80fd5b80631f4e15041461042b57806320c38e2b1461043e57806324c1af44146104515780632b20e397146104645780632eb2c2d61461048b57806333c69ea91461049e575f80fd5b80630e4cd725116102545780630e4cd725146103a05780630e89341c146103b357806314ab9038146103c6578063150b7a02146103d95780631534e177146104055780631896f70a14610418575f80fd5b8062fdd58e1461029a5780630178fe3f146102c057806301ffc9a71461030657806306fdde0314610329578063081812fc14610360578063095ea7b31461038b575b5f80fd5b6102ad6102a8366004614316565b610746565b6040519081526020015b60405180910390f35b6102d36102ce366004614340565b6107f0565b604080516001600160a01b03909416845263ffffffff90921660208401526001600160401b0316908201526060016102b7565b61031961031436600461436c565b61081f565b60405190151581526020016102b7565b6103536040518060400160405280600b81526020016a2730b6b2abb930b83832b960a91b81525081565b6040516102b791906143d4565b61037361036e366004614340565b61085e565b6040516001600160a01b0390911681526020016102b7565b61039e610399366004614316565b6108a0565b005b6103196103ae3660046143e6565b6108e5565b6103536103c1366004614340565b61095e565b61039e6103d436600461442f565b6109cc565b6103ec6103e736600461449d565b610ac0565b6040516001600160e01b031990911681526020016102b7565b61039e61041336600461450a565b610c96565b61039e6104263660046143e6565b610cc0565b600754610373906001600160a01b031681565b61035361044c366004614340565b610d75565b6102ad61045f3660046145f6565b610e0c565b6103737f000000000000000000000000c965345edac823d56812cd20a10316233916a60581565b61039e610499366004614717565b610fe7565b61039e6104ac3660046147bd565b61121a565b6103737f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a981565b6104eb6104e6366004614811565b6113e6565b60405163ffffffff90911681526020016102b7565b61031961050e3660046143e6565b611480565b610526610521366004614832565b6114b8565b6040516102b79190614928565b600554610373906001600160a01b031681565b61039e61055436600461493a565b6115d7565b610373610567366004614340565b611655565b61057f61057a366004614978565b61165f565b6040516001600160401b0390911681526020016102b7565b61039e61178e565b61039e6105ad3660046149aa565b6117a1565b61057f6105c03660046149e9565b6118c0565b5f546001600160a01b0316610373565b61039e6105e3366004614a6b565b611c28565b6102ad6105f6366004614a97565b611cfd565b610319610609366004614b12565b611e38565b61039e61061c36600461450a565b611e5c565b6102ad61062f366004614b33565b61209e565b6102ad610642366004614b53565b6122fd565b61039e610655366004614bc0565b6124bd565b61039e610668366004614c26565b612605565b61039e61067b366004614c5b565b612794565b61031961068e366004614b33565b61285d565b6103196106a136600461450a565b60046020525f908152604090205460ff1681565b61039e6106c3366004614a6b565b612938565b6103196106d6366004614c86565b61299f565b61039e6106e9366004614cb2565b6129cc565b6102ad6106fc366004614340565b60016020525f908152604090205481565b61039e61071b366004614d15565b612d59565b61039e61072e36600461450a565b612e06565b610319610741366004614340565b612e7c565b5f6001600160a01b0383166107b65760405162461bcd60e51b815260206004820152602b60248201527f455243313135353a2062616c616e636520717565727920666f7220746865207a60448201526a65726f206164647265737360a81b60648201526084015b60405180910390fd5b5f6107c083611655565b9050836001600160a01b0316816001600160a01b0316036107e55760019150506107ea565b5f9150505b92915050565b5f8181526001602052604090205460a081901c60c082901c610813838383612f4d565b90959094509092509050565b5f6001600160e01b03198216631b05885b60e31b148061084f57506001600160e01b03198216630a85bd0160e11b145b806107ea57506107ea82612f80565b5f8061086983611655565b90506001600160a01b03811661088157505f92915050565b5f838152600360205260409020546001600160a01b03165b9392505050565b5f6108aa826107f0565b50915050603f1960408216016108d65760405163a2a7201360e01b8152600481018390526024016107ad565b6108e08383612fcf565b505050565b5f8080806108f2866107f0565b925092509250846001600160a01b0316836001600160a01b0316148061091d575061091d838661299f565b8061094157506001600160a01b0385166109368761085e565b6001600160a01b0316145b8015610954575061095282826130de565b155b9695505050505050565b6005546040516303a24d0760e21b8152600481018390526060916001600160a01b031690630e89341c906024015f60405180830381865afa1580156109a5573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526107ea9190810190614d78565b816109d78133611480565b6109f857803360405163168ab55d60e31b81526004016107ad929190614dea565b8260105f610a05836107f0565b5091505063ffffffff8282161615610a335760405163a2a7201360e01b8152600481018490526024016107ad565b604051630295720760e31b8152600481018790526001600160401b03861660248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906314ab9038906044015b5f604051808303815f87803b158015610aa2575f80fd5b505af1158015610ab4573d5f803e3d5ffd5b50505050505050505050565b5f336001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a6051614610b0a5760405163032634a760e31b815260040160405180910390fd5b5f808080610b1a86880188614e01565b83516020850120939750919550935091508890808214610b57576040516331970f3360e21b815260048101829052602481018390526044016107ad565b604051630a3b53db60e21b81526001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906328ed4f6c90610ba59085903090600401614dea565b5f604051808303815f87803b158015610bbc575f80fd5b505af1158015610bce573d5f803e3d5ffd5b5050604051636b727d4360e11b8152600481018d90525f92506276a70091506001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063d6e4fa8690602401602060405180830381865afa158015610c3c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c609190614e64565b610c6a9190614e8f565b9050610c7d87878761ffff16848861310d565b50630a85bd0160e11b9c9b505050505050505050505050565b610c9e613215565b600580546001600160a01b0319166001600160a01b0392909216919091179055565b81610ccb8133611480565b610cec57803360405163168ab55d60e31b81526004016107ad929190614dea565b8260085f610cf9836107f0565b5091505063ffffffff8282161615610d275760405163a2a7201360e01b8152600481018490526024016107ad565b604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a90610a8b9089908990600401614dea565b60066020525f908152604090208054610d8d90614eb6565b80601f0160208091040260200160405190810160405280929190818152602001828054610db990614eb6565b8015610e045780601f10610ddb57610100808354040283529160200191610e04565b820191905f5260205f20905b815481529060010190602001808311610de757829003601f168201915b505050505081565b5f87610e188133611480565b610e3957803360405163168ab55d60e31b81526004016107ad929190614dea565b87516020890120610e4a8a8261326e565b9250610e568a8461329a565b610e6083866133d3565b610e6b8a848b613406565b50610e788a8487876134cd565b9350610e8383613510565b610f33576040516305ef2c7f60e41b8152600481018b9052602481018290523060448201526001600160a01b0388811660648301526001600160401b03881660848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610f0a575f80fd5b505af1158015610f1c573d5f803e3d5ffd5b50505050610f2e8a848b8b89896135c6565b610fda565b6040516305ef2c7f60e41b8152600481018b9052602481018290523060448201526001600160a01b0388811660648301526001600160401b03881660848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610fb6575f80fd5b505af1158015610fc8573d5f803e3d5ffd5b50505050610fda8a848b8b89896135fc565b5050979650505050505050565b81518351146110495760405162461bcd60e51b815260206004820152602860248201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206044820152670dad2e6dac2e8c6d60c31b60648201526084016107ad565b6001600160a01b03841661106f5760405162461bcd60e51b81526004016107ad90614eee565b6001600160a01b03851633148061108b575061108b853361299f565b6110f25760405162461bcd60e51b815260206004820152603260248201527f455243313135353a207472616e736665722063616c6c6572206973206e6f74206044820152711bdddb995c881b9bdc88185c1c1c9bdd995960721b60648201526084016107ad565b5f5b83518110156111ad575f84828151811061111057611110614f33565b602002602001015190505f84838151811061112d5761112d614f33565b602002602001015190505f805f611143856107f0565b9250925092506111548583836136b6565b83600114801561117557508a6001600160a01b0316836001600160a01b0316145b6111915760405162461bcd60e51b81526004016107ad90614f47565b61119d858b848461375d565b50505050508060010190506110f4565b50836001600160a01b0316856001600160a01b0316336001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516111fd929190614f91565b60405180910390a461121333868686868661379d565b5050505050565b5f611225858561326e565b905061123181846133d3565b5f808061123d846107f0565b919450925090506001600160a01b03831615806112ea57506040516302571be360e01b81526004810185905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa1580156112ba573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112de9190614fbe565b6001600160a01b031614155b1561130857604051635374b59960e01b815260040160405180910390fd5b5f806113138a6107f0565b90935091508a905061134f576113298633611480565b61134a57853360405163168ab55d60e31b81526004016107ad929190614dea565b61137a565b6113598a33611480565b61137a57893360405163168ab55d60e31b81526004016107ad929190614dea565b6113858689846138f7565b611390878483613932565b9650620100008416158015906113b457508363ffffffff1688851763ffffffff1614155b156113d55760405163a2a7201360e01b8152600481018790526024016107ad565b96831796610ab486868a868b613977565b5f826113f28133611480565b61141357803360405163168ab55d60e31b81526004016107ad929190614dea565b8360025f611420836107f0565b5091505063ffffffff828216161561144e5760405163a2a7201360e01b8152600481018490526024016107ad565b5f808061145a8a6107f0565b9250925092506114738a84848c61ffff16178485613977565b5098975050505050505050565b5f80808061148d866107f0565b925092509250846001600160a01b0316836001600160a01b031614806109415750610941838661299f565b6060815183511461151d5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b60648201526084016107ad565b5f83516001600160401b0381111561153757611537614525565b604051908082528060200260200182016040528015611560578160200160208202803683370190505b5090505f5b84518110156115cf576115aa85828151811061158357611583614f33565b602002602001015185838151811061159d5761159d614f33565b6020026020010151610746565b8282815181106115bc576115bc614f33565b6020908102919091010152600101611565565b509392505050565b6115df613215565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af115801561162b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061164f9190614fd9565b50505050565b5f6107ea82613a1e565b5f8061166b858561326e565b905061167681613510565b61169357604051635374b59960e01b815260040160405180910390fd5b5f61169e86336108e5565b9050801580156116b557506116b38233611480565b155b156116d757813360405163168ab55d60e31b81526004016107ad929190614dea565b5f80806116e3856107f0565b925092509250831580156116fa5750620400008216155b1561171b5760405163a2a7201360e01b8152600481018690526024016107ad565b5f6117258a6107f0565b92505050611734888383613932565b97506117428685858b613a33565b6040516001600160401b038916815286907ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b1329060200160405180910390a2509598975050505050505050565b611796613215565b61179f5f613a49565b565b6117b85f805160206154fc8339815191528461326e565b6117c28133611480565b6117e357803360405163168ab55d60e31b81526004016107ad929190614dea565b306001600160a01b0384160361181757604051632ca49b0d60e11b81526001600160a01b03841660048201526024016107ad565b6118376118315f805160206154fc8339815191528661326e565b83613a98565b604051632142170760e11b81523060048201526001600160a01b038481166024830152604482018690527f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906342842e0e906064015f604051808303815f87803b1580156118a4575f80fd5b505af11580156118b6573d5f803e3d5ffd5b5050505050505050565b5f8086866040516118d2929190614ff4565b6040519081900381206331a9108f60e11b82526004820181905291505f907f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa15801561193f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119639190614fbe565b90506001600160a01b0381163314801590611a09575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063e985e9c590604401602060405180830381865afa1580156119e3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a079190614fd9565b155b15611a4157611a255f805160206154fc8339815191528361326e565b3360405163168ab55d60e31b81526004016107ad929190614dea565b6040516323b872dd60e01b81526001600160a01b038281166004830152306024830152604482018490527f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906323b872dd906064015f604051808303815f87803b158015611aae575f80fd5b505af1158015611ac0573d5f803e3d5ffd5b5050604051630a3b53db60e21b81526001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a6051692506328ed4f6c9150611b129085903090600401614dea565b5f604051808303815f87803b158015611b29575f80fd5b505af1158015611b3b573d5f803e3d5ffd5b5050604051636b727d4360e11b8152600481018590526276a70092507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b0316915063d6e4fa8690602401602060405180830381865afa158015611ba7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611bcb9190614e64565b611bd59190614e8f565b9250611c1d88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508a9250505061ffff8816868861310d565b505095945050505050565b6001600160a01b0382163303611c925760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084016107ad565b335f8181526002602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b335f9081526004602052604081205460ff16611d2b5760405162461bcd60e51b81526004016107ad90615003565b5f8787604051611d3c929190614ff4565b604051908190038120633f2891eb60e21b8252600482018190523060248301526044820187905291507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b03169063fca247ac906064016020604051808303815f875af1158015611db5573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611dd99190614e64565b9150611e2d88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508a9250505061ffff8616611e276276a70087614e8f565b8861310d565b509695505050505050565b5f80611e43846107f0565b50841663ffffffff908116908516149250505092915050565b611e64613215565b6007546001600160a01b031615611f785760075460405163a22cb46560e01b81526001600160a01b0391821660048201525f60248201527f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063a22cb465906044015f604051808303815f87803b158015611ee0575f80fd5b505af1158015611ef2573d5f803e3d5ffd5b505060075460405163a22cb46560e01b81526001600160a01b0391821660048201525f60248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9909116925063a22cb46591506044015f604051808303815f87803b158015611f61575f80fd5b505af1158015611f73573d5f803e3d5ffd5b505050505b600780546001600160a01b0319166001600160a01b0383169081179091551561209b5760075460405163a22cb46560e01b81526001600160a01b039182166004820152600160248201527f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063a22cb465906044015f604051808303815f87803b158015612007575f80fd5b505af1158015612019573d5f803e3d5ffd5b505060075460405163a22cb46560e01b81526001600160a01b039182166004820152600160248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9909116925063a22cb46591506044015f604051808303815f87803b158015612089575f80fd5b505af1158015611213573d5f803e3d5ffd5b50565b335f9081526004602052604081205460ff166120cc5760405162461bcd60e51b81526004016107ad90615003565b5f6120e45f805160206154fc8339815191528561326e565b60405163c475abff60e01b815260048101869052602481018590529091505f906001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063c475abff906044016020604051808303815f875af1158015612154573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906121789190614e64565b6040516331a9108f60e11b8152600481018790529091507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa9250505080156121fc575060408051601f3d908101601f191682019092526121f991810190614fbe565b60015b6122095791506107ea9050565b6001600160a01b038116301415806122b157506040516302571be360e01b81526004810184905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015612281573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906122a59190614fbe565b6001600160a01b031614155b156122c0575091506107ea9050565b505f6122cf6276a70083614e8f565b5f8481526001602052604090205490915060a081901c6122f185838386613a33565b50919695505050505050565b5f866123098133611480565b61232a57803360405163168ab55d60e31b81526004016107ad929190614dea565b5f878760405161233b929190614ff4565b6040518091039020905061234f898261326e565b925061235b898461329a565b61236583866133d3565b5f6123a68a858b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061340692505050565b90506123b48a8588886134cd565b94506123bf84613510565b61246b576040516306ab592360e01b8152600481018b9052602481018390523060448201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906306ab5923906064016020604051808303815f875af1158015612434573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906124589190614e64565b506124668482898989613b83565b6124b0565b6124b08a858b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508d92508c91508b90506135fc565b5050509695505050505050565b5f6125005f86868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613bc59050565b6007549091506001600160a01b031661252c5760405163093075b560e21b815260040160405180910390fd5b6125368133611480565b61255757803360405163168ab55d60e31b81526004016107ad929190614dea565b5f8080612563846107f0565b919450925090505f6125748561085e565b905061257f85613c81565b60075f9054906101000a90046001600160a01b03166001600160a01b0316639198c2768a8a878787878e8e6040518963ffffffff1660e01b81526004016125cd989796959493929190615073565b5f604051808303815f87803b1580156125e4575f80fd5b505af11580156125f6573d5f803e3d5ffd5b50505050505050505050505050565b836126108133611480565b61263157803360405163168ab55d60e31b81526004016107ad929190614dea565b84601c5f61263e836107f0565b5091505063ffffffff828216161561266c5760405163a2a7201360e01b8152600481018490526024016107ad565b60405163cf40882360e01b8152600481018990523060248201526001600160a01b0387811660448301526001600160401b03871660648301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063cf408823906084015f604051808303815f87803b1580156126e8575f80fd5b505af11580156126fa573d5f803e3d5ffd5b5050506001600160a01b038816905061275f575f612717896107f0565b509150506201ffff196202000082160161274f57604051632ca49b0d60e11b81526001600160a01b03891660048201526024016107ad565b612759895f613a98565b506118b6565b5f61276989611655565b905061278981898b5f1c600160405180602001604052805f815250613d1e565b505050505050505050565b61279e838361326e565b6127a88133611480565b6127c957803360405163168ab55d60e31b81526004016107ad929190614dea565b7f6c32148f748aba23997146d7fe89e962e3cc30271290fb96f5f4337756c03b5284016128095760405163615a470360e01b815260040160405180910390fd5b6001600160a01b038216158061282757506001600160a01b03821630145b1561285057604051632ca49b0d60e11b81526001600160a01b03831660048201526024016107ad565b61164f611831858561326e565b5f80612869848461326e565b90505f61287582613510565b90505f805160206154fc83398151915285146128945791506107ea9050565b6040516331a9108f60e11b8152600481018590527f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa925050508015612915575060408051601f3d908101601f1916820190925261291291810190614fbe565b60015b612923575f925050506107ea565b6001600160a01b0316301492506107ea915050565b612940613215565b6001600160a01b0382165f81815260046020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf8791015b60405180910390a25050565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205460ff1690565b5f80612a105f87878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613dfe9050565b915091505f612a578288888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613bc59050565b90505f612a64828561326e565b5f818152600660205260409020909150612a7f888a8361511e565b507f6c32148f748aba23997146d7fe89e962e3cc30271290fb96f5f4337756c03b528201612ac05760405163615a470360e01b815260040160405180910390fd5b6040516302571be360e01b8152600481018290525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa158015612b25573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612b499190614fbe565b90506001600160a01b0381163314801590612bef575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063e985e9c590604401602060405180830381865afa158015612bc9573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612bed9190614fd9565b155b15612c1157813360405163168ab55d60e31b81526004016107ad929190614dea565b6001600160a01b03861615612c9c57604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a90612c6e9085908a90600401614dea565b5f604051808303815f87803b158015612c85575f80fd5b505af1158015612c97573d5f803e3d5ffd5b505050505b604051635b0fc9c360e01b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635b0fc9c390612cea9085903090600401614dea565b5f604051808303815f87803b158015612d01575f80fd5b505af1158015612d13573d5f803e3d5ffd5b50505050612789828a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201829052508d93509150819050613b83565b6001600160a01b038416612d7f5760405162461bcd60e51b81526004016107ad90614eee565b6001600160a01b038516331480612d9b5750612d9b853361299f565b612df95760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2063616c6c6572206973206e6f74206f776e6572206e6f7260448201526808185c1c1c9bdd995960ba1b60648201526084016107ad565b6112138585858585613d1e565b612e0e613215565b6001600160a01b038116612e735760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107ad565b61209b81613a49565b5f8181526006602052604081208054829190612e9790614eb6565b80601f0160208091040260200160405190810160405280929190818152602001828054612ec390614eb6565b8015612f0e5780601f10612ee557610100808354040283529160200191612f0e565b820191905f5260205f20905b815481529060010190602001808311612ef157829003601f168201915b5050505050905080515f03612f2557505f92915050565b5f80612f318382613dfe565b90925090505f612f418483613bc5565b9050610954818461285d565b5f8042836001600160401b03161015612f775761ffff1962010000851601612f73575f94505b5f93505b50929391925050565b5f6001600160e01b03198216636cdb3d1360e11b1480612fb057506001600160e01b031982166303a24d0760e21b145b806107ea57506301ffc9a760e01b6001600160e01b03198316146107ea565b5f612fd982611655565b9050806001600160a01b0316836001600160a01b0316036130465760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084016107ad565b336001600160a01b03821614806130625750613062813361299f565b6130d45760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016107ad565b6108e08383613eb2565b5f620200008381161480156108995750426130fc6276a700846151d7565b6001600160401b0316109392505050565b845160208601205f61312c5f805160206154fc8339815191528361326e565b90505f61315488604051806040016040528060058152602001626cae8d60e31b815250613f1f565b5f83815260066020526040902090915061316e82826151f7565b50613181828289620300008a1789613b83565b6001600160a01b038416156118b657604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a906131de9085908890600401614dea565b5f604051808303815f87803b1580156131f5575f80fd5b505af1158015613207573d5f803e3d5ffd5b505050505050505050505050565b5f546001600160a01b0316331461179f5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107ad565b604080516020808201949094528082019290925280518083038201815260609092019052805191012090565b5f80806132a6846107f0565b91945092509050426001600160401b0382161080801561336657506001600160a01b038416158061336657506040516302571be360e01b8152600481018690525f906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015613337573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061335b9190614fbe565b6001600160a01b0316145b156133a4575f613375876107f0565b50915050602081161561339e5760405163a2a7201360e01b8152600481018790526024016107ad565b506133cb565b620100008316156133cb5760405163a2a7201360e01b8152600481018690526024016107ad565b505050505050565b63fffdffff81811763ffffffff16146134025760405163a2a7201360e01b8152600481018390526024016107ad565b5050565b60605f6134aa8360065f8881526020019081526020015f20805461342990614eb6565b80601f016020809104026020016040519081016040528092919081815260200182805461345590614eb6565b80156134a05780601f10613477576101008083540402835291602001916134a0565b820191905f5260205f20905b81548152906001019060200180831161348357829003601f168201915b5050505050613f1f565b5f8581526006602052604090209091506134c482826151f7565b50949350505050565b5f806134d8856107f0565b925050505f806134e9885f1c6107f0565b92509250506134f98787846138f7565b613504858483613932565b98975050505050505050565b5f8061351b83611655565b6001600160a01b0316141580156107ea57506040516302571be360e01b81526004810183905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015613592573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906135b69190614fbe565b6001600160a01b03161492915050565b5f86815260066020526040812080546135e491879161342990614eb6565b90506135f38682868686613b83565b50505050505050565b5f8080613608886107f0565b9250925092505f61362f8860065f8d81526020019081526020015f20805461342990614eb6565b5f8a815260066020526040902080549192509061364b90614eb6565b90505f0361366c575f89815260066020526040902061366a82826151f7565b505b61367b89858886178589613977565b6001600160a01b03871661369857613693895f613a98565b610ab4565b610ab484888b5f1c600160405180602001604052805f815250613d1e565b6201ffff19620200008316016136d6576136d36276a700826151d7565b90505b42816001600160401b0316101561370f576201000082161561370a5760405162461bcd60e51b81526004016107ad90614f47565b613734565b60048216156137345760405163a2a7201360e01b8152600481018490526024016107ad565b604082165f036108e05750505f90815260036020526040902080546001600160a01b0319169055565b60c0816001600160401b0316901b60a08363ffffffff16901b846001600160a01b0316171760015f8681526020019081526020015f208190555050505050565b6001600160a01b0384163b156133cb5760405163bc197c8160e01b81526001600160a01b0385169063bc197c81906137e190899089908890889088906004016152b2565b6020604051808303815f875af192505050801561381b575060408051601f3d908101601f1916820190925261381891810190615303565b60015b6138c75761382761531e565b806308c379a003613860575061383b615337565b806138465750613862565b8060405162461bcd60e51b81526004016107ad91906143d4565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e20455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b60648201526084016107ad565b6001600160e01b0319811663bc197c8160e01b146135f35760405162461bcd60e51b81526004016107ad906153bf565b63ffff000082161580159060018316159082906139115750805b156112135760405163a2a7201360e01b8152600481018690526024016107ad565b5f816001600160401b0316846001600160401b03161115613951578193505b826001600160401b0316846001600160401b0316101561396f578293505b509192915050565b61398385858584613a33565b60405163ffffffff8416815285907f39873f00c80f4f94b7bd1594aebcf650f003545b74824d57ddf4939e3ff3a34b9060200160405180910390a2816001600160401b0316816001600160401b03161115611213576040516001600160401b038216815285907ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b132906020015b60405180910390a25050505050565b5f80613a29836107f0565b5090949350505050565b613a3d8483613f96565b61164f8484848461375d565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b613aa3826001611e38565b15613ac45760405163a2a7201360e01b8152600481018390526024016107ad565b613acd82613c81565b604051635b0fc9c360e01b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635b0fc9c390613b1b9085908590600401614dea565b5f604051808303815f87803b158015613b32575f80fd5b505af1158015613b44573d5f803e3d5ffd5b50506040516001600160a01b03841681528492507fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c49150602001612993565b613b8f85848484613fcf565b847f8ce7013e8abebc55c3890a68f5a27c67c3f7efa64e584de5fb22363c606fd34085858585604051613a0f9493929190615407565b5f805f613bd28585613dfe565b909250905081613c435760018551613bea919061544d565b8414613c385760405162461bcd60e51b815260206004820152601d60248201527f6e616d65686173683a204a756e6b20617420656e64206f66206e616d6500000060448201526064016107ad565b505f91506107ea9050565b613c4d8582613bc5565b6040805160208101929092528101839052606001604051602081830303815290604052805190602001209250505092915050565b5f8181526001602052604090205460a081901c60c082901c613ca4838383612f4d565b5f86815260036020526040812080546001600160a01b0319169055909350613cd091508590848461375d565b60408051858152600160208201525f916001600160a01b0386169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b5f805f613d2a866107f0565b925092509250613d3b8683836136b6565b846001148015613d5c5750876001600160a01b0316836001600160a01b0316145b613d785760405162461bcd60e51b81526004016107ad90614f47565b866001600160a01b0316836001600160a01b031603613d9957505050611213565b613da58688848461375d565b60408051878152602081018790526001600160a01b03808a1692908b169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46118b6338989898989614041565b5f8083518310613e505760405162461bcd60e51b815260206004820152601e60248201527f726561644c6162656c3a20496e646578206f7574206f6620626f756e6473000060448201526064016107ad565b5f848481518110613e6357613e63614f33565b016020015160f81c90508015613e8f57613e8885613e82866001615460565b836140fb565b9250613e93565b5f92505b613e9d8185615460565b613ea8906001615460565b9150509250929050565b5f81815260036020526040902080546001600160a01b0319166001600160a01b0384169081179091558190613ee682611655565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6060600183511015613f4457604051631406d65b60e11b815260040160405180910390fd5b60ff83511115613f69578260405163e3ba295f60e01b81526004016107ad91906143d4565b82518383604051602001613f7f93929190615473565b604051602081830303815290604052905092915050565b61ffff811615801590613fae57506201000181811614155b156134025760405163a2a7201360e01b8152600481018390526024016107ad565b613fd98483613f96565b5f848152600160205260409020546001600160a01b0381161561403557613fff85613c81565b6040515f815285907fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c49060200160405180910390a25b6112138585858561411d565b6001600160a01b0384163b156133cb5760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e619061408590899089908890889088906004016154b7565b6020604051808303815f875af19250505080156140bf575060408051601f3d908101601f191682019092526140bc91810190615303565b60015b6140cb5761382761531e565b6001600160e01b0319811663f23a6e6160e01b146135f35760405162461bcd60e51b81526004016107ad906153bf565b82515f906141098385615460565b1115614113575f80fd5b5091016020012090565b835f808061412a846107f0565b9194509250905063ffff000082166001600160401b038087169083161115614150578195505b42826001600160401b03161061416557958617955b6001600160a01b038416156141bc5760405162461bcd60e51b815260206004820152601f60248201527f455243313135353a206d696e74206f66206578697374696e6720746f6b656e0060448201526064016107ad565b6001600160a01b03881661421c5760405162461bcd60e51b815260206004820152602160248201527f455243313135353a206d696e7420746f20746865207a65726f206164647265736044820152607360f81b60648201526084016107ad565b306001600160a01b038916036142915760405162461bcd60e51b815260206004820152603460248201527f455243313135353a206e65774f776e65722063616e6e6f74206265207468652060448201527313985b5955dc985c1c195c8818dbdb9d1c9858dd60621b60648201526084016107ad565b61429d8589898961375d565b60408051868152600160208201526001600160a01b038a16915f9133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4612789335f8a88600160405180602001604052805f815250614041565b6001600160a01b038116811461209b575f80fd5b5f8060408385031215614327575f80fd5b823561433281614302565b946020939093013593505050565b5f60208284031215614350575f80fd5b5035919050565b6001600160e01b03198116811461209b575f80fd5b5f6020828403121561437c575f80fd5b813561089981614357565b5f5b838110156143a1578181015183820152602001614389565b50505f910152565b5f81518084526143c0816020860160208601614387565b601f01601f19169290920160200192915050565b602081525f61089960208301846143a9565b5f80604083850312156143f7575f80fd5b82359150602083013561440981614302565b809150509250929050565b80356001600160401b038116811461442a575f80fd5b919050565b5f8060408385031215614440575f80fd5b8235915061445060208401614414565b90509250929050565b5f8083601f840112614469575f80fd5b5081356001600160401b0381111561447f575f80fd5b602083019150836020828501011115614496575f80fd5b9250929050565b5f805f805f608086880312156144b1575f80fd5b85356144bc81614302565b945060208601356144cc81614302565b93506040860135925060608601356001600160401b038111156144ed575f80fd5b6144f988828901614459565b969995985093965092949392505050565b5f6020828403121561451a575f80fd5b813561089981614302565b634e487b7160e01b5f52604160045260245ffd5b601f8201601f191681016001600160401b038111828210171561455e5761455e614525565b6040525050565b5f6001600160401b0382111561457d5761457d614525565b50601f01601f191660200190565b5f82601f83011261459a575f80fd5b81356145a581614565565b6040516145b28282614539565b8281528560208487010111156145c6575f80fd5b826020860160208301375f92810160200192909252509392505050565b803563ffffffff8116811461442a575f80fd5b5f805f805f805f60e0888a03121561460c575f80fd5b8735965060208801356001600160401b03811115614628575f80fd5b6146348a828b0161458b565b965050604088013561464581614302565b9450606088013561465581614302565b935061466360808901614414565b925061467160a089016145e3565b915061467f60c08901614414565b905092959891949750929550565b5f6001600160401b038211156146a5576146a5614525565b5060051b60200190565b5f82601f8301126146be575f80fd5b813560206146cb8261468d565b6040516146d88282614539565b80915083815260208101915060208460051b8701019350868411156146fb575f80fd5b602086015b84811015611e2d5780358352918301918301614700565b5f805f805f60a0868803121561472b575f80fd5b853561473681614302565b9450602086013561474681614302565b935060408601356001600160401b0380821115614761575f80fd5b61476d89838a016146af565b94506060880135915080821115614782575f80fd5b61478e89838a016146af565b935060808801359150808211156147a3575f80fd5b506147b08882890161458b565b9150509295509295909350565b5f805f80608085870312156147d0575f80fd5b84359350602085013592506147e7604086016145e3565b91506147f560608601614414565b905092959194509250565b803561ffff8116811461442a575f80fd5b5f8060408385031215614822575f80fd5b8235915061445060208401614800565b5f8060408385031215614843575f80fd5b82356001600160401b0380821115614859575f80fd5b818501915085601f83011261486c575f80fd5b813560206148798261468d565b6040516148868282614539565b83815260059390931b85018201928281019150898411156148a5575f80fd5b948201945b838610156148cc5785356148bd81614302565b825294820194908201906148aa565b965050860135925050808211156148e1575f80fd5b50613ea8858286016146af565b5f815180845260208085019450602084015f5b8381101561491d57815187529582019590820190600101614901565b509495945050505050565b602081525f61089960208301846148ee565b5f805f6060848603121561494c575f80fd5b833561495781614302565b9250602084013561496781614302565b929592945050506040919091013590565b5f805f6060848603121561498a575f80fd5b83359250602084013591506149a160408501614414565b90509250925092565b5f805f606084860312156149bc575f80fd5b8335925060208401356149ce81614302565b915060408401356149de81614302565b809150509250925092565b5f805f805f608086880312156149fd575f80fd5b85356001600160401b03811115614a12575f80fd5b614a1e88828901614459565b9096509450506020860135614a3281614302565b9250614a4060408701614800565b91506060860135614a5081614302565b809150509295509295909350565b801515811461209b575f80fd5b5f8060408385031215614a7c575f80fd5b8235614a8781614302565b9150602083013561440981614a5e565b5f805f805f8060a08789031215614aac575f80fd5b86356001600160401b03811115614ac1575f80fd5b614acd89828a01614459565b9097509550506020870135614ae181614302565b9350604087013592506060870135614af881614302565b9150614b0660808801614800565b90509295509295509295565b5f8060408385031215614b23575f80fd5b82359150614450602084016145e3565b5f8060408385031215614b44575f80fd5b50508035926020909101359150565b5f805f805f8060a08789031215614b68575f80fd5b8635955060208701356001600160401b03811115614b84575f80fd5b614b9089828a01614459565b9096509450506040870135614ba481614302565b9250614bb2606088016145e3565b9150614b0660808801614414565b5f805f8060408587031215614bd3575f80fd5b84356001600160401b0380821115614be9575f80fd5b614bf588838901614459565b90965094506020870135915080821115614c0d575f80fd5b50614c1a87828801614459565b95989497509550505050565b5f805f8060808587031215614c39575f80fd5b843593506020850135614c4b81614302565b925060408501356147e781614302565b5f805f60608486031215614c6d575f80fd5b833592506020840135915060408401356149de81614302565b5f8060408385031215614c97575f80fd5b8235614ca281614302565b9150602083013561440981614302565b5f805f8060608587031215614cc5575f80fd5b84356001600160401b03811115614cda575f80fd5b614ce687828801614459565b9095509350506020850135614cfa81614302565b91506040850135614d0a81614302565b939692955090935050565b5f805f805f60a08688031215614d29575f80fd5b8535614d3481614302565b94506020860135614d4481614302565b9350604086013592506060860135915060808601356001600160401b03811115614d6c575f80fd5b6147b08882890161458b565b5f60208284031215614d88575f80fd5b81516001600160401b03811115614d9d575f80fd5b8201601f81018413614dad575f80fd5b8051614db881614565565b604051614dc58282614539565b828152866020848601011115614dd9575f80fd5b610954836020830160208701614387565b9182526001600160a01b0316602082015260400190565b5f805f8060808587031215614e14575f80fd5b84356001600160401b03811115614e29575f80fd5b614e358782880161458b565b9450506020850135614e4681614302565b9250614e5460408601614800565b91506060850135614d0a81614302565b5f60208284031215614e74575f80fd5b5051919050565b634e487b7160e01b5f52601160045260245ffd5b6001600160401b03818116838216019080821115614eaf57614eaf614e7b565b5092915050565b600181811c90821680614eca57607f821691505b602082108103614ee857634e487b7160e01b5f52602260045260245ffd5b50919050565b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b634e487b7160e01b5f52603260045260245ffd5b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b604081525f614fa360408301856148ee565b8281036020840152614fb581856148ee565b95945050505050565b5f60208284031215614fce575f80fd5b815161089981614302565b5f60208284031215614fe9575f80fd5b815161089981614a5e565b818382375f9101908152919050565b60208082526028908201527f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f604082015267373a3937b63632b960c11b606082015260800190565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b60c081525f61508660c083018a8c61504b565b6001600160a01b03898116602085015263ffffffff891660408501526001600160401b03881660608501528616608084015282810360a08401526150cb81858761504b565b9b9a5050505050505050505050565b601f8211156108e057805f5260205f20601f840160051c810160208510156150ff5750805b601f840160051c820191505b81811015611213575f815560010161510b565b6001600160401b0383111561513557615135614525565b615149836151438354614eb6565b836150da565b5f601f84116001811461517a575f85156151635750838201355b5f19600387901b1c1916600186901b178355611213565b5f83815260208120601f198716915b828110156151a95786850135825560209485019460019092019101615189565b50868210156151c5575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b6001600160401b03828116828216039080821115614eaf57614eaf614e7b565b81516001600160401b0381111561521057615210614525565b6152248161521e8454614eb6565b846150da565b602080601f831160018114615257575f84156152405750858301515b5f19600386901b1c1916600185901b1785556133cb565b5f85815260208120601f198616915b8281101561528557888601518255948401946001909101908401615266565b50858210156152a257878501515f19600388901b60f8161c191681555b5050505050600190811b01905550565b6001600160a01b0386811682528516602082015260a0604082018190525f906152dd908301866148ee565b82810360608401526152ef81866148ee565b9050828103608084015261350481856143a9565b5f60208284031215615313575f80fd5b815161089981614357565b5f60033d11156153345760045f803e505f5160e01c5b90565b5f60443d10156153445790565b6040516003193d81016004833e81513d6001600160401b03816024840111818411171561537357505050505090565b828501915081518181111561538b5750505050505090565b843d87010160208285010111156153a55750505050505090565b6153b460208286010187614539565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b608081525f61541960808301876143a9565b6001600160a01b039590951660208301525063ffffffff9290921660408301526001600160401b0316606090910152919050565b818103818111156107ea576107ea614e7b565b808201808211156107ea576107ea614e7b565b60ff60f81b8460f81b1681525f8351615493816001850160208801614387565b8351908301906154aa816001840160208801614387565b0160010195945050505050565b6001600160a01b03868116825285166020820152604081018490526060810183905260a0608082018190525f906154f0908301846143a9565b97965050505050505056fe93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4aea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2a68925cf5169f28586095d5b5b9933b3008f4c793a48be4f59b8b2bc62aa60a":"0x1","0x54cdd369e4e8a8515e52ca72ec816c2101831ad1f18bf44102ed171459c9b4f8":"0x2","0xa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb49":"0xffffffffffffffff000100010000000000000000000000000000000000000000","0xafa26c20e8b3d9a2853d642cfe1021dae26242ffedfac91c97aab212c1a4b93b":"0xffffffffffffffff000100010000000000000000000000000000000000000000","0xef5b11c47ebee44618abc22110e10e3b408ea5e799056d2b38461aa7b97c5a97":"0x1","0xfb9e8e321b8a5ec48f12a7b41f22c6e595d761285c9eb19d8dda7c99edf1b54f":"0x36574680000000000000000000000000000000000000000000000000000000a"}},"0x6e1eb616c7d69491f9a880f815ff5574768cba20":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b506004361061007a575f3560e01c806314ab90381161005857806314ab90381461010357806316a25cbd146101165780631896f70a146101625780635b0fc9c314610175575f80fd5b80630178b8bf1461007e57806302571be3146100c657806306ab5923146100ee575b5f80fd5b6100a961008c366004610403565b5f908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100a96100d4366004610403565b5f908152602081905260409020546001600160a01b031690565b6101016100fc366004610435565b610188565b005b610101610111366004610467565b610242565b610149610124366004610403565b5f90815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100bd565b6101016101703660046104a1565b6102e2565b6101016101833660046104a1565b610374565b5f8381526020819052604090205483906001600160a01b031633146101ab575f80fd5b60408051602080820187905281830186905282518083038401815260608301808552815191909201206001600160a01b0386169091529151859187917fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829181900360800190a35f90815260208190526040902080546001600160a01b0319166001600160a01b039390931692909217909155505050565b5f8281526020819052604090205482906001600160a01b03163314610265575f80fd5b60405167ffffffffffffffff8316815283907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a2505f91825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b5f8281526020819052604090205482906001600160a01b03163314610305575f80fd5b6040516001600160a01b038316815283907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a2505f9182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b5f8281526020819052604090205482906001600160a01b03163314610397575f80fd5b6040516001600160a01b038316815283907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a2505f9182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b5f60208284031215610413575f80fd5b5035919050565b80356001600160a01b0381168114610430575f80fd5b919050565b5f805f60608486031215610447575f80fd5b833592506020840135915061045e6040850161041a565b90509250925092565b5f8060408385031215610478575f80fd5b82359150602083013567ffffffffffffffff81168114610496575f80fd5b809150509250929050565b5f80604083850312156104b2575f80fd5b823591506104c26020840161041a565b9050925092905056fea164736f6c6343000818000a","storage":{"0x859ecef2e168dc10231b000bd53493b42bc9d944cac29d94582c1e1d43592131":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x7bb6cd9be29fab783c0b494a06fed8b2e2596b7a":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100ea5760003560e01c80636debcb8d1161008c578063b34f33c511610066578063b34f33c514610741578063d0778d6c14610814578063ef2c3088146108f2578063f5090c1e14610980576100ea565b80636debcb8d146105ca5780636fab95b3146106585780637b1039991461071d576100ea565b8063511f1112116100c8578063511f1112146103c557806361603dd91461044857806368b6154f146104bd5780636ccbae5f1461059b576100ea565b806307eca395146100ef578063280d9b051461021457806330135293146102f2575b600080fd5b610212600480360360a081101561010557600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561013457600080fd5b82018360208201111561014657600080fd5b803590602001918460018302840111600160201b8311171561016757600080fd5b919390929091602081019035600160201b81111561018457600080fd5b82018360208201111561019657600080fd5b803590602001918460018302840111600160201b831117156101b757600080fd5b919390929091602081019035600160201b8111156101d457600080fd5b8201836020820111156101e657600080fd5b803590602001918460018302840111600160201b8311171561020757600080fd5b509092509050610aae565b005b610212600480360360a081101561022a57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561026457600080fd5b82018360208201111561027657600080fd5b803590602001918460018302840111600160201b8311171561029757600080fd5b919390929091602081019035600160201b8111156102b457600080fd5b8201836020820111156102c657600080fd5b803590602001918460018302840111600160201b831117156102e757600080fd5b509092509050610c92565b6102126004803603608081101561030857600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561033757600080fd5b82018360208201111561034957600080fd5b803590602001918460018302840111600160201b8311171561036a57600080fd5b919390929091602081019035600160201b81111561038757600080fd5b82018360208201111561039957600080fd5b803590602001918460018302840111600160201b831117156103ba57600080fd5b509092509050610e3d565b610212600480360360608110156103db57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561040a57600080fd5b82018360208201111561041c57600080fd5b803590602001918460018302840111600160201b8311171561043d57600080fd5b509092509050610fcc565b6102126004803603604081101561045e57600080fd5b81359190810190604081016020820135600160201b81111561047f57600080fd5b82018360208201111561049157600080fd5b803590602001918460018302840111600160201b831117156104b257600080fd5b5090925090506110c9565b610212600480360360a08110156104d357600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561050d57600080fd5b82018360208201111561051f57600080fd5b803590602001918460018302840111600160201b8311171561054057600080fd5b919390929091602081019035600160201b81111561055d57600080fd5b82018360208201111561056f57600080fd5b803590602001918460018302840111600160201b8311171561059057600080fd5b5090925090506111ae565b6105b8600480360360208110156105b157600080fd5b50356113a8565b60408051918252519081900360200190f35b610212600480360360808110156105e057600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561061a57600080fd5b82018360208201111561062c57600080fd5b803590602001918460018302840111600160201b8311171561064d57600080fd5b5090925090506113ba565b6102126004803603606081101561066e57600080fd5b81359190810190604081016020820135600160201b81111561068f57600080fd5b8201836020820111156106a157600080fd5b803590602001918460018302840111600160201b831117156106c257600080fd5b919390929091602081019035600160201b8111156106df57600080fd5b8201836020820111156106f157600080fd5b803590602001918460018302840111600160201b8311171561071257600080fd5b5090925090506114d4565b610725611675565b604080516001600160a01b039092168252519081900360200190f35b6102126004803603608081101561075757600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561078657600080fd5b82018360208201111561079857600080fd5b803590602001918460018302840111600160201b831117156107b957600080fd5b919390929091602081019035600160201b8111156107d657600080fd5b8201836020820111156107e857600080fd5b803590602001918460018302840111600160201b8311171561080957600080fd5b509092509050611684565b610212600480360360a081101561082a57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561086457600080fd5b82018360208201111561087657600080fd5b803590602001918460018302840111600160201b8311171561089757600080fd5b919390929091602081019035600160201b8111156108b457600080fd5b8201836020820111156108c657600080fd5b803590602001918460018302840111600160201b831117156108e757600080fd5b5090925090506117de565b6102126004803603608081101561090857600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561094257600080fd5b82018360208201111561095457600080fd5b803590602001918460018302840111600160201b8311171561097557600080fd5b5090925090506119e4565b610212600480360360c081101561099657600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156109d057600080fd5b8201836020820111156109e257600080fd5b803590602001918460018302840111600160201b83111715610a0357600080fd5b919390929091602081019035600160201b811115610a2057600080fd5b820183602082011115610a3257600080fd5b803590602001918460018302840111600160201b83111715610a5357600080fd5b919390929091602081019035600160201b811115610a7057600080fd5b820183602082011115610a8257600080fd5b803590602001918460018302840111600160201b83111715610aa357600080fd5b509092509050611ad3565b610bb163ce9fb82b89898989898960405160240180876001600160a01b03166001600160a01b0316815260200186815260200180602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f820116905080830192505050985050505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208884848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b600154604051630119f80560e21b81526001600160a01b038a811660048301908152602483018b9052608060448401908152608484018a90529190931692630467e014928c928c928c928c928c928c92909190606481019060a401878780828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f82011690508083019250505098505050505050505050600060405180830381600087803b158015610c7057600080fd5b505af1158015610c84573d6000803e3d6000fd5b505050505050505050505050565b610d8363b88d4fde888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040516315eab15d60e21b81526001600160a01b03898116600483019081528982166024840152604483018990526080606484019081526084840188905291909316926357aac574928b928b928b928b928b929160a401848480828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b158015610e1c57600080fd5b505af1158015610e30573d6000803e3d6000fd5b5050505050505050505050565b610f09637c69eae28787878760405160240180856001600160a01b03166001600160a01b0316815260200184815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09d909d1b9c909c178c529351909a208a51918d01849004840282018401909a528b81528f985096508b95508a94508493505085019050838280828437600092019190915250611d5492505050565b600154604051630119f80560e21b81526001600160a01b038881166004830190815260248301899052608060448401908152608484018890529190931692630467e014928a928a928a928a9290606481019060a401858580828437600081840152601f19601f8201169050808301925050508381038252600081526020016020019650505050505050600060405180830381600087803b158015610fac57600080fd5b505af1158015610fc0573d6000803e3d6000fd5b50505050505050505050565b604080516001600160a01b038616602482015260448082018690528251808303909101815260649091018252602081810180516001600160e01b0316632392c18960e01b17815291519091208251601f85018390048302810183019093528383526110569290918691908690869081908401838280828437600092019190915250611d5492505050565b60015460408051631292e83560e11b81526001600160a01b0387811660048301526024820187905291519190921691632525d06a91604480830192600092919082900301818387803b1580156110ab57600080fd5b505af11580156110bf573d6000803e3d6000fd5b5050505050505050565b6040805160248082018690528251808303909101815260449091018252602081810180516001600160e01b0316630852cd8d60e31b17815291519091208251601f85018390048302810183019093528383526111449290918691908690869081908401838280828437600092019190915250611d5492505050565b6001546040805163e67ca8a360e01b81526004810186905290516001600160a01b039092169163e67ca8a39160248082019260009290919082900301818387803b15801561119157600080fd5b505af11580156111a5573d6000803e3d6000fd5b50505050505050565b61129f639e5be9a5888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b03909316926302759c37928b928b9286926368b62d32928d928d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561132757600080fd5b505afa15801561133b573d6000803e3d6000fd5b505050506040513d602081101561135157600080fd5b5051604080516001600160e01b031960e087901b1681526001600160a01b03948516600482015292909316602483015260448201529051606480830192600092919082900301818387803b158015610e1c57600080fd5b60009081526020819052604090205490565b604080516001600160a01b0380881660248301528616604482015260648082018690528251808303909101815260849091018252602081810180516001600160e01b0316632142170760e11b17815291519091208251601f850183900483028101830190935283835261144c9290918691908690869081908401838280828437600092019190915250611d5492505050565b600154604080516315eab15d60e21b81526001600160a01b0388811660048301528781166024830152604482018790526080606483015260006084830181905292519316926357aac5749260c48084019391929182900301818387803b1580156114b557600080fd5b505af11580156114c9573d6000803e3d6000fd5b505050505050505050565b611585635cbe11128686866040516024018084815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09c909c1b9b909b178b5293519099208951918c018490048402820184019099528a81528e975095508a9450899350839250508401838280828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b039093169263e67ca8a39284926368b62d32928b928b928b929190606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561160b57600080fd5b505afa15801561161f573d6000803e3d6000fd5b505050506040513d602081101561163557600080fd5b5051604080516001600160e01b031960e085901b168152600481019290925251602480830192600092919082900301818387803b1580156114b557600080fd5b6001546001600160a01b031690565b61175063d8d3cc6e8787878760405160240180856001600160a01b03166001600160a01b0316815260200184815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09d909d1b9c909c178c529351909a208a51918d01849004840282018401909a528b81528f985096508b95508a94508493505085019050838280828437600092019190915250611d5492505050565b60015460405163b546666960e01b81526001600160a01b03888116600483019081526024830189905260606044840190815260648401889052919093169263b5466669928a928a928a928a9290608401848480828437600081840152601f19601f82011690508083019250505095505050505050600060405180830381600087803b158015610fac57600080fd5b6118cf639d743989888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b03909316926357aac574928b928b9286926368b62d32928d928d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561195757600080fd5b505afa15801561196b573d6000803e3d6000fd5b505050506040513d602081101561198157600080fd5b5051604080516001600160e01b031960e087901b1681526001600160a01b039485166004820152929093166024830152604482015260806064820152600060848201819052915160c4808301939282900301818387803b158015610e1c57600080fd5b604080516001600160a01b0380881660248301528616604482015260648082018690528251808303909101815260849091018252602081810180516001600160e01b03166323b872dd60e01b17815291519091208251601f8501839004830281018301909352838352611a769290918691908690869081908401838280828437600092019190915250611d5492505050565b600154604080516302759c3760e01b81526001600160a01b038881166004830152878116602483015260448201879052915191909216916302759c3791606480830192600092919082900301818387803b1580156114b557600080fd5b611bf063c29b52f98a8a8a8a8a8a8a60405160240180886001600160a01b03166001600160a01b03168152602001876001600160a01b03166001600160a01b0316815260200186815260200180602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f82011690508083019250505099505050505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208884848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b8152600481018a815260248201928352604482018990526001600160a01b03909316926357aac574928d928d9286926368b62d32928f928f928f92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b158015611c7857600080fd5b505afa158015611c8c573d6000803e3d6000fd5b505050506040513d6020811015611ca257600080fd5b50516040516001600160e01b031960e086901b1681526001600160a01b0380851660048301908152908416602483015260448201839052608060648301908152608483018b90528b928b92919060a401848480828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b158015611d3157600080fd5b505af1158015611d45573d6000803e3d6000fd5b50505050505050505050505050565b6000828152602081815260408083205481518084018890523060601b81840152605480820183905283518083039091018152607490910190925281519190920120909190611db3908490611da790611ea9565b9063ffffffff611efa16565b90506001600160a01b03811615801590611e4957506001546040805163430c208160e01b81526001600160a01b038481166004830152602482018890529151919092169163430c2081916044808301926020929190829003018186803b158015611e1c57600080fd5b505afa158015611e30573d6000803e3d6000fd5b505050506040513d6020811015611e4657600080fd5b50515b611e8e576040805162461bcd60e51b8152602060048201526011602482015270494e56414c49445f5349474e415455524560781b604482015290519081900360640190fd5b50505060009081526020819052604090208054600101905550565b604080517f19457468657265756d205369676e6564204d6573736167653a0a333200000000602080830191909152603c8083019490945282518083039094018452605c909101909152815191012090565b60008151604114611f0d57506000611fe3565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0821115611f535760009350505050611fe3565b8060ff16601b14158015611f6b57508060ff16601c14155b15611f7c5760009350505050611fe3565b6040805160008152602080820180845289905260ff8416828401526060820186905260808201859052915160019260a0808401939192601f1981019281900390910190855afa158015611fd3573d6000803e3d6000fd5b5050506020604051035193505050505b9291505056fea265627a7a7231582014816bfd0c1519ce8c4cf272eb0526ffdba3abef0df7f17deb0da40bd8abb77f64736f6c634300050c0032","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533"}},"0x7c3c91245769c8b7450ad522792dec4bd4bf797f":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b506004361061003f575f3560e01c80631bf7e13e146100435780636ccbae5f1461006c578063a424740014610099575b5f80fd5b610056610051366004610749565b6100bc565b604051610063919061082c565b60405180910390f35b61008b61007a36600461083e565b5f9081526001602052604090205490565b604051908152602001610063565b6100ac6100a7366004610749565b6101d6565b6040519015158152602001610063565b60605f5a90506100cd8585856101d6565b6101315760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e61676572466f727761726465723a205349474e415455604482015269149157d253959053125160b21b60648201526084015b60405180910390fd5b6101cb6101416020870187610870565b5f546001600160a01b031660408801358461015f60608b018b610889565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f9201919091525061023292505050565b9150505b9392505050565b5f61022a6101e38561093a565b5f54604080516020601f88018190048102820181019092528681526001600160a01b03909216919087908790819084018382808284375f9201919091525061030e92505050565b949350505050565b606061023d85610453565b5f80876001600160a01b0316866102568b8a898961047e565b60405161026391906109f5565b5f604051808303815f8787f1925050503d805f811461029d576040519150601f19603f3d011682016040523d82523d5f602084013e6102a2565b606091505b5090925090506102b3603f87610a10565b5a116102c1576102c1610a2f565b61030182826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506104ae565b9998505050505050505050565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015610352573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103769190610a43565b90505f6104238660600151805190602001208688602001516040516020016103c39392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561044957508551610449906001600160a01b031682866104e7565b9695505050505050565b5f8181526001602081905260409091205461046d91610a5a565b5f9182526001602052604090912055565b606082858560405160200161049593929190610a7f565b6040516020818303038152906040529050949350505050565b606083156104bd5750816101cf565b8251156104cd5782518084602001fd5b8160405162461bcd60e51b8152600401610128919061082c565b5f805f6104f48585610622565b90925090505f81600481111561050c5761050c610abd565b14801561052a5750856001600160a01b0316826001600160a01b0316145b1561053a576001925050506101cf565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401610561929190610ad1565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161059f91906109f5565b5f60405180830381855afa9150503d805f81146105d7576040519150601f19603f3d011682016040523d82523d5f602084013e6105dc565b606091505b50915091508180156105ef575080516020145b801561061657508051630b135d3f60e11b906106149083016020908101908401610a43565b145b98975050505050505050565b5f808251604103610656576020830151604084015160608501515f1a61064a87828585610664565b9450945050505061065d565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561069957505f90506003610740565b8460ff16601b141580156106b157508460ff16601c14155b156106c157505f90506004610740565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610712573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b03811661073a575f60019250925050610740565b91505f90505b94509492505050565b5f805f6040848603121561075b575f80fd5b833567ffffffffffffffff80821115610772575f80fd5b9085019060808288031215610785575f80fd5b9093506020850135908082111561079a575f80fd5b818601915086601f8301126107ad575f80fd5b8135818111156107bb575f80fd5b8760208285010111156107cc575f80fd5b6020830194508093505050509250925092565b5f5b838110156107f95781810151838201526020016107e1565b50505f910152565b5f81518084526108188160208601602086016107df565b601f01601f19169290920160200192915050565b602081525f6101cf6020830184610801565b5f6020828403121561084e575f80fd5b5035919050565b80356001600160a01b038116811461086b575f80fd5b919050565b5f60208284031215610880575f80fd5b6101cf82610855565b5f808335601e1984360301811261089e575f80fd5b83018035915067ffffffffffffffff8211156108b8575f80fd5b60200191503681900382131561065d575f80fd5b634e487b7160e01b5f52604160045260245ffd5b6040516080810167ffffffffffffffff81118282101715610903576109036108cc565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610932576109326108cc565b604052919050565b5f6080823603121561094a575f80fd5b6109526108e0565b61095b83610855565b81526020808401358183015260408401356040830152606084013567ffffffffffffffff8082111561098b575f80fd5b9085019036601f83011261099d575f80fd5b8135818111156109af576109af6108cc565b6109c1601f8201601f19168501610909565b915080825236848285010111156109d6575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b5f8251610a068184602087016107df565b9190910192915050565b5f82610a2a57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b5f60208284031215610a53575f80fd5b5051919050565b80820180821115610a7957634e487b7160e01b5f52601160045260245ffd5b92915050565b5f8451610a908184602089016107df565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f61022a604083018461080156fea164736f6c6343000818000a","storage":{"0x0":"0x39a27956b78d00a4e00ea8833ff0947410a2933f"}},"0x8861cdfa38838531275ce12f9e795c3b9ff29cbe":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x936188f2c3c8e8c95e425b6fe41c2ac9e701585e":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x94f57ed7e9af03a10e8eb23ce1b3c7914a182b0f":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x95f29431aeb52c0d5dbeeec36010b8e2ca69cb3d":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x9b2565a3545a1312bdcb6e7148a7f7cae8c2706b":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c806373cc48a61161008857806398d35f201161006357806398d35f2014610215578063bd7ed31a1461021d578063c327deef14610245578063d7b82ebe1461026d575f80fd5b806373cc48a6146101af5780638438dc04146101ef5780638da5cb5b14610202575f80fd5b806313af4035116100c357806313af40351461015657806328e7677d146101695780632c095cbb1461017c578063435cc1621461018f575f80fd5b8063020ed8d3146100e9578063087991bc146100fe5780630b1a249514610143575b5f80fd5b6100fc6100f73660046122ff565b610280565b005b61011161010c36600461238a565b610300565b6040805163ffffffff94851681529390921660208401526001600160601b031916908201526060015b60405180910390f35b6100fc610151366004612510565b61036c565b6100fc6101643660046125c6565b6104da565b6100fc6101773660046122ff565b610512565b6100fc61018a3660046125e1565b61058a565b6101a261019d366004612674565b610656565b60405161013a919061278c565b6101d76101bd36600461279e565b60046020525f90815260409020546001600160a01b031681565b6040516001600160a01b03909116815260200161013a565b6100fc6101fd3660046122ff565b6106d2565b6001546101d7906001600160a01b031681565b6101a261074a565b6101d761022b36600461279e565b60056020525f90815260409020546001600160a01b031681565b6101d761025336600461279e565b60036020525f90815260409020546001600160a01b031681565b6101a261027b3660046127b7565b6107d5565b6001546001600160a01b03163314610296575f80fd5b60ff82165f8181526003602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527ff73c3c226af96b7f1ba666a21b3ceaf2be3ee6a365e3178fd9cd1eaae0075aa891015b60405180910390a15050565b5f805f8060025f8787604051610317929190612817565b604080519182900390912082526020808301939093529081015f90812061ffff8b16825290925290205463ffffffff80821695506401000000008204169350600160401b900460601b91505093509350939050565b83516020808601919091205f90815260028252604080822061ffff891683529092529081205463ffffffff16906103a385846107ea565b90506103b0818784610889565b6103b8612239565b845151156103d7576103ca85856107ea565b90506103d7818885610889565b5f6103e1836108cc565b602081015190915060fe16156103f5575f80fd5b61040081602761092a565b158015610425575061041381600261092a565b1580610425575061042581600661092a565b61042d575f80fd5b61043e89898561012001518461093a565b156104795787516020808a01919091205f90815260028252604080822061ffff8d1683529092522080546001600160e01b03191690556104cf565b6104988884610120015183856101200151610493876108cc565b610968565b156100e55787516020808a01919091205f90815260028252604080822061ffff8d1683529092522080546001600160e01b03191690555b505050505050505050565b6001546001600160a01b031633146104f0575f80fd5b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6001546001600160a01b03163314610528575f80fd5b60ff82165f8181526004602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527f2fcc274c3b72dd483ab201bfa87295e3817e8b9b10693219873b722ca1af00c791016102f4565b610592612239565b61059c83836107ea565b805190915061ffff16602f146105b0575f80fd5b60a081015184516020808701919091205f90815260028252604080822061ffff8a16835290925220546105e9919063ffffffff16610a7c565b6105f1575f80fd5b5f6105fb82610a94565b9050805151602082015110156100e55761061c818361012001518789610aab565b505082516020808501919091205f90815260028252604080822061ffff881683529092522080546001600160e01b03191690555b50505050565b60605f83838080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201829052509394505050505b85518110156106c7576106bd8682815181106106af576106af612826565b602002602001015183610c4a565b9150600101610691565b5090505b9392505050565b6001546001600160a01b031633146106e8575f80fd5b60ff82165f8181526005602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527fc7eec866a7a1386188cc3ca20ffea75b71bd3e90a60b6791b1d3f0971145118d91016102f4565b5f80546107569061283a565b80601f01602080910402602001604051908101604052809291908181526020018280546107829061283a565b80156107cd5780601f106107a4576101008083540402835291602001916107cd565b820191905f5260205f20905b8154815290600101906020018083116107b057829003601f168201915b505050505081565b60606107e18383610c4a565b90505b92915050565b6107f2612239565b82516107fd90610dc6565b905061080d8160e0015183610ebf565b610815575f80fd5b5f61082382835f0151610f25565b604083015190915060ff16610838825f610fcc565b14610841575f80fd5b610120820181905260808201516108589042610a7c565b610860575f80fd5b61086e428360a00151610a7c565b610876575f80fd5b61088281838686611026565b5092915050565b6108978360a0015182610a7c565b61089f575f80fd5b825161ffff166032146108b0575f80fd5b6108bf83610120015183611106565b6108c7575f80fd5b505050565b6040805160c0810182525f8082526020820181905291810182905260608082018190526080820183905260a08201529061090583610a94565b60a081015160c08201519192506106cb91610921908290612880565b83519190611172565b5f6107e18360a001515f846112b4565b5f6109468284866113c1565b1561095d57610955828661092a565b159050610960565b505f5b949350505050565b60208101515f9060fe161561097b575f80fd5b5f610985866113e6565b90505f610991856113e6565b90505f8061099f8a82611401565b6109aa906001612893565b60ff1690505b8951811015610a6b57836109dc896109d784858f516109cf9190612880565b8f9190611424565b6114a4565b03610a3f575f6109f7876109d785868f516109cf9190612880565b90508660800151841015610a23578381118015610a175750866080015181105b95505050505050610a73565b83811180610a1757508660800151811095505050505050610a73565b905080610a4c8a82611401565b610a57906001612893565b610a649060ff16826128ac565b90506109b0565b505f93505050505b95945050505050565b5f80610a8883856128bf565b60030b12159392505050565b610a9c61228e565b6107e48261010001515f61152d565b60a084015184515f90610abe9083611548565b90505f8660a001518760c00151610ad59190612880565b9050818111610ae2575f80fd5b5f610aed868861159f565b9050805f03610b1a57610b0c610b0384866128ac565b895190876112b4565b15610b15575f80fd5b610b5b565b87515f90610b29908686611424565b90505f8213610b36575f80fd5b5f610b41898361159f565b12156104cf575f610b52888361159f565b126104cf575f80fd5b5050505050505050565b60c08101516020820181905281515111610b7c5750565b5f610b8e825f01518360200151611548565b8260200151610b9d91906128ac565b8251909150610bac90826116ec565b61ffff166040830152610bc06002826128ac565b8251909150610bcf90826116ec565b61ffff166060830152610be36002826128ac565b8251909150610bf29082611712565b63ffffffff166080830152610c086004826128ac565b82519091505f90610c1990836116ec565b61ffff169050610c2a6002836128ac565b60a084018190529150610c3d81836128ac565b60c0909301929092525050565b6060610c54612239565b610c5e84846107ea565b61012081015180516020918201205f908152600282526040808220845161ffff16835290925220805491925090600160401b900460601b6001600160601b03191615610cc35760a08201518154610cbb919063ffffffff16610a7c565b610cc3575f80fd5b604080516060808201835260a085015163ffffffff9081168352608086015181166020808501918252610100880180518051908301206001600160601b0319168688019081526101208a0180518051908501205f908152600285528981208c5161ffff16825290945292889020965187549451915190961c600160401b0268010000000000000000600160e01b03199186166401000000000267ffffffffffffffff19909516969095169590951792909217939093169190911790925551905191517f55ced933cdd5a34dd03eb5d4bef19ec6ebb251dcd7a988eee0c1b9a13baaa88b92610db192916128e6565b60405180910390a15061010001519392505050565b610dce612239565b610dd8825f6116ec565b61ffff168152610de9826002611401565b60ff166020820152610dfc826003611401565b60ff166040820152610e0f826004611712565b63ffffffff9081166060830152610e2b90839060089061171216565b63ffffffff9081166080830152610e47908390600c9061171216565b63ffffffff90811660a0830152610e639083906010906116ec16565b61ffff1660c0820152610e7782601261173a565b60e0820181905251610eb490610e8e9060126128ac565b8260e001515160128551610ea29190612880565b610eac9190612880565b849190611424565b610100820152919050565b5f80610ed5610ece8483611548565b84906116ec565b83516020808601919091208651878301205f90815260028352604080822061ffff90951682529390925291902054600160401b900460601b6001600160601b031990811691161491505092915050565b60605f610f3184610a94565b90505b8051516020820151101561088257606081015161ffff16600114610f56575f80fd5b81515f03610f6e57610f6781611754565b9150610fa7565b60208101518151610f7e91611548565b825114610f89575f80fd5b805160208201518351610f9f9285925f92611775565b610fa7575f80fd5b8261ffff16816040015161ffff1614610fbe575f80fd5b610fc781610b65565b610f34565b5f805b83518310610fdf57610fdf61290a565b5f610fea8585611401565b60ff169050610ffa8160016128ac565b61100490856128ac565b9350805f0361101357506107e1565b61101e6001836128ac565b915050610fcf565b83518360e00151511115611038575f80fd5b61105c5f858560e0015151875161104f9190612880565b60e0870151929190611797565b611064575f80fd5b5f61106f828261152d565b9050602b61ffff16816040015161ffff160361109d576110908484836117cb565b611098575f80fd5b6110ff565b603061ffff16816040015161ffff16036110bc5761109084848361185f565b60405162461bcd60e51b8152602060048201526014602482015273139bc81d985b1a59081c1c9bdbd988199bdd5b9960621b604482015260640160405180910390fd5b5050505050565b5f806111128482611401565b61111d906001612893565b60ff1690505f5b835181101561095d5761113984828785611797565b15611149576001925050506107e4565b6111538482611401565b61115e906001612893565b61116b9060ff16826128ac565b9050611124565b6040805160c0810182525f8082526020820181905291810182905260608082018190526080820183905260a0820152906111ac83856128ac565b90506111c26111bb5f866128ac565b8690611401565b60ff1682526111d56111bb6001866128ac565b60ff1660208301526111f26111eb6002866128ac565b86906116ec565b61ffff1660408301525f61121161120a6004876128ac565b8790611401565b905061121e6005866128ac565b945061122e868660ff8416611424565b606084015261124060ff8216866128ac565b94505f61124d8787611401565b905060208160ff16111561125f575f80fd5b61126a6001876128ac565b955061127a878760ff8416611900565b608085015261128c60ff8216876128ac565b95506112a48661129c8186612880565b899190611424565b60a0850152509195945050505050565b5f60ff600883811c82169183916112cc918616612932565b90505f6112dd600780871690612952565b600160ff919091161b9050855b87518110156113b4575f6112fe8983611401565b90505f61131661130f8460016128ac565b8b90611401565b90508160ff168660ff161015611334575f96505050505050506106cb565b8160ff168660ff1603611393578460ff168160ff161161135c575f96505050505050506106cb565b8361137f61136d60ff8816866128ac565b6113789060026128ac565b8c90611401565b1660ff165f141596505050505050506106cb565b61139e816002612893565b6113ab9060ff16846128ac565b925050506112ea565b505f979650505050505050565b5f806113cd85846114a4565b90505f6113d9856113e6565b9190911495945050505050565b5f6107e460016113f68484611401565b84919060ff1661193d565b5f82828151811061141457611414612826565b016020015160f81c905092915050565b825160609061143383856128ac565b111561143d575f80fd5b5f8267ffffffffffffffff811115611457576114576123d9565b6040519080825280601f01601f191660200182016040528015611481576020820181803683370190505b50905060208082019086860101611499828287611b43565b509095945050505050565b815160ff165f9081526005602052604080822054606085015182860151925163347ced5960e11b81526001600160a01b03909216926368f9dab2926114ee9291879160040161296b565b602060405180830381865afa158015611509573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107e191906129a4565b61153561228e565b82815260c081018290526107e481610b65565b5f815b8351811061155b5761155b61290a565b5f6115668583611401565b60ff1690506115768160016128ac565b61158090836128ac565b9150805f0361158f5750611595565b5061154b565b6109608382612880565b5f6115aa8383611b98565b156115b657505f6107e4565b5f805f805f6115c5885f610fcc565b90505f6115d2885f610fcc565b90505b808211156115fe578593506115ea8987611bb3565b9550816115f6816129bb565b9250506115d5565b81811115611627578492506116138886611bb3565b94508061161f816129bb565b9150506115fe565b5f8211801561163f575061163d89878a88611797565b155b15611674578593506116518987611bb3565b95508492506116608886611bb3565b945061166d600183612880565b9150611627565b855f0361168a575f1996505050505050506107e4565b845f036116a057600196505050505050506107e4565b6116df6116ae8560016128ac565b6116b88b87611401565b60ff168a6116c78760016128ac565b6116d18d89611401565b8e949392919060ff16611bd6565b9998505050505050505050565b81515f906116fb8360026128ac565b1115611705575f80fd5b50016002015161ffff1690565b81515f906117218360046128ac565b111561172b575f80fd5b50016004015163ffffffff1690565b60605f6117478484611548565b9050610960848483611424565b602081015181516060916107e49161176c9082611548565b84519190611424565b5f611781848484611cc6565b61178c878785611cc6565b149695505050505050565b5f6117af83838486516117aa9190612880565b611cc6565b6117c186868789516117aa9190612880565b1495945050505050565b5f806117d685610a94565b90505b8051516020820151101561095d57604081015161ffff166030146117fb575f80fd5b5f61180582611ce8565b90505f61181e5f835184611d049092919063ffffffff16565b905061182c81838989611da0565b1561184f5761184561183d84611754565b868385611e9b565b93505050506106cb565b505061185a81610b65565b6117d9565b5f6118778460e0015161187184611754565b90611b98565b61187f575f80fd5b815151602083015110156118f75761189e8460e0015161187184611754565b6118a6575f80fd5b5f6118b083611ce8565b90505f6118c95f835184611d049092919063ffffffff16565b90506118d781838888611da0565b156118e7576001925050506106cb565b50506118f282610b65565b61187f565b505f9392505050565b5f602082111561190e575f80fd5b835161191a83856128ac565b1115611924575f80fd5b506020919092018101519190036101000a5f1901191690565b5f603482111561194b575f80fd5b5f80805b84811015611a29575f8761196383896128ac565b8151811061197357611973612826565b01602001516001600160f81b0319169050600360fc1b81108015906119a65750603d60f91b6001600160f81b0319821611155b6119ae575f80fd5b604051806080016040528060478152602001612b5c604791396119d6603060f884901c612880565b815181106119e6576119e6612826565b0160209081015160f81c93508311156119fd575f80fd5b611a08600187612880565b8203611a145750611a29565b5060059290921b60ff8216179160010161194f565b505f611a368560056129d0565b9050611a436008866129e7565b5f03611a5a578160ff16600584901b179250611b29565b611a656008866129e7565b600203611a935760028260ff16901c60ff16600384901b179250600281611a8c9190612880565b9050611b29565b611a9e6008866129e7565b600403611ac55760048260ff16901c60ff16600184901b179250600481611a8c9190612880565b611ad06008866129e7565b600503611af75760018260ff16901c60ff16600484901b179250600181611a8c9190612880565b611b026008866129e7565b6007036100e55760038260ff16901c60ff16600284901b179250600381611a8c9190612880565b611b3581610100612880565b9290921b9695505050505050565b60208110611b7b5781518352611b5a6020846128ac565b9250611b676020836128ac565b9150611b74602082612880565b9050611b43565b905182516020929092036101000a5f190180199091169116179052565b5f815183511480156107e157506107e1835f845f8751611775565b5f611bbe8383611401565b60ff16611bcc8360016128ac565b6107e191906128ac565b5f8480831015611be35750815b6020878901810190858701015f5b83811015611cab5782518251808214611c7b575f6020871115611c1657505f19611c52565b600184611c24896020612880565b611c2e91906128ac565b611c399060086129d0565b611c44906002612ada565b611c4e9190612880565b1990505b5f611c61838316858416612ae5565b90508015611c78579750611cbc9650505050505050565b50505b611c866020866128ac565b9450611c936020856128ac565b93505050602081611ca491906128ac565b9050611bf1565b50611cb68589612ae5565b93505050505b9695505050505050565b82515f90611cd483856128ac565b1115611cde575f80fd5b5091016020012090565b60a081015160c08201516060916107e49161176c908290612880565b604080516080810182525f8082526020820181905291810191909152606080820152611d3a611d335f856128ac565b85906116ec565b61ffff168152611d55611d4e6002856128ac565b8590611401565b60ff166020820152611d6b611d4e6003856128ac565b60ff166040820152611d94611d816004856128ac565b611d8c600485612880565b869190611424565b60608201529392505050565b5f846020015160ff16600314611db757505f610960565b826020015160ff16856040015160ff1614611dd357505f610960565b5f611ddd85611f96565b90508360c0015161ffff168161ffff1614611dfb575f915050610960565b8551610100165f03611e10575f915050610960565b60408087015160ff165f908152600360209081529082902054855191860151925163de8f50a160e01b81526001600160a01b039091169263de8f50a192611e5c928a9290600401612b04565b602060405180830381865afa158015611e77573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611cbc9190612b3c565b5f80611ea683611f96565b90505b84515160208601511015611f8b5760a085015160c08601515f91611edb91611ed2908290612880565b88519190611d04565b90508161ffff16815f015161ffff1614611ef55750611f7d565b846040015160ff16816020015160ff1614611f105750611f7d565b60408051808201909152606081525f6020820152611f3c85518951611f3591906128ac565b8290611ff7565b50611f47818961205a565b50611f52818661205a565b50611f698260400151825f0151846060015161207f565b15611f7a5760019350505050610960565b50505b611f8685610b65565b611ea9565b505f95945050505050565b5f805f5b8351811015611fe8576001811615611fbe57611fb68482611401565b60ff16611fd0565b6008611fca8583611401565b60ff16901b5b611fde9061ffff16836128ac565b9150600101611f9a565b506106cb601082901c826128ac565b60408051808201909152606081525f60208201526120166020836129e7565b1561203e576120266020836129e7565b612031906020612880565b61203b90836128ac565b91505b506020828101829052604080518085525f815290920101905290565b60408051808201909152606081525f60208201526107e183845f015151848551612126565b60ff83165f908152600460205260408120546001600160a01b03166120a557505f6106cb565b60ff84165f90815260046020819052604091829020549151637bf41d7760e11b81526001600160a01b039092169163f7e83aee916120e79187918791016128e6565b602060405180830381865afa158015612102573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109609190612b3c565b60408051808201909152606081525f60208201528251821115612147575f80fd5b602085015161215683866128ac565b111561218957612189856121798760200151878661217491906128ac565b61220c565b6121849060026129d0565b612222565b5f808651805187602083010193508088870111156121a75787860182525b505050602084015b602084106121e757805182526121c66020836128ac565b91506121d36020826128ac565b90506121e0602085612880565b93506121af565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b5f8183111561221c5750816107e4565b50919050565b815161222e8383611ff7565b50610650838261205a565b60408051610140810182525f8082526020820181905291810182905260608082018390526080820183905260a0820183905260c082019290925260e08101829052610100810182905261012081019190915290565b6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b803560ff811681146122e3575f80fd5b919050565b6001600160a01b03811681146122fc575f80fd5b50565b5f8060408385031215612310575f80fd5b612319836122d3565b91506020830135612329816122e8565b809150509250929050565b803561ffff811681146122e3575f80fd5b5f8083601f840112612355575f80fd5b50813567ffffffffffffffff81111561236c575f80fd5b602083019150836020828501011115612383575f80fd5b9250929050565b5f805f6040848603121561239c575f80fd5b6123a584612334565b9250602084013567ffffffffffffffff8111156123c0575f80fd5b6123cc86828701612345565b9497909650939450505050565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff81118282101715612416576124166123d9565b604052919050565b5f82601f83011261242d575f80fd5b813567ffffffffffffffff811115612447576124476123d9565b61245a601f8201601f19166020016123ed565b81815284602083860101111561246e575f80fd5b816020850160208301375f918101602001919091529392505050565b5f6040828403121561249a575f80fd5b6040516040810167ffffffffffffffff82821081831117156124be576124be6123d9565b8160405282935084359150808211156124d5575f80fd5b6124e18683870161241e565b835260208501359150808211156124f6575f80fd5b506125038582860161241e565b6020830152505092915050565b5f805f805f60a08688031215612524575f80fd5b61252d86612334565b9450602086013567ffffffffffffffff80821115612549575f80fd5b61255589838a0161241e565b9550604088013591508082111561256a575f80fd5b61257689838a0161248a565b9450606088013591508082111561258b575f80fd5b61259789838a0161248a565b935060808801359150808211156125ac575f80fd5b506125b98882890161241e565b9150509295509295909350565b5f602082840312156125d6575f80fd5b81356107e1816122e8565b5f805f80608085870312156125f4575f80fd5b6125fd85612334565b9350602085013567ffffffffffffffff80821115612619575f80fd5b6126258883890161241e565b9450604087013591508082111561263a575f80fd5b6126468883890161248a565b9350606087013591508082111561265b575f80fd5b506126688782880161241e565b91505092959194509250565b5f805f60408486031215612686575f80fd5b833567ffffffffffffffff8082111561269d575f80fd5b818601915086601f8301126126b0575f80fd5b81356020828211156126c4576126c46123d9565b8160051b6126d38282016123ed565b928352848101820192828101908b8511156126ec575f80fd5b83870192505b8483101561272657823586811115612708575f80fd5b6127168d86838b010161248a565b83525091830191908301906126f2565b985050508701359250508082111561273c575f80fd5b506123cc86828701612345565b5f81518084525f5b8181101561276d57602081850181015186830182015201612751565b505f602082860101526020601f19601f83011685010191505092915050565b602081525f6107e16020830184612749565b5f602082840312156127ae575f80fd5b6107e1826122d3565b5f80604083850312156127c8575f80fd5b823567ffffffffffffffff808211156127df575f80fd5b6127eb8683870161248a565b93506020850135915080821115612800575f80fd5b5061280d8582860161241e565b9150509250929050565b818382375f9101908152919050565b634e487b7160e01b5f52603260045260245ffd5b600181811c9082168061284e57607f821691505b60208210810361221c57634e487b7160e01b5f52602260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b818103818111156107e4576107e461286c565b60ff81811683821601908111156107e4576107e461286c565b808201808211156107e4576107e461286c565b600382810b9082900b03637fffffff198112637fffffff821317156107e4576107e461286c565b604081525f6128f86040830185612749565b8281036020840152610a738185612749565b634e487b7160e01b5f52600160045260245ffd5b634e487b7160e01b5f52601260045260245ffd5b5f61ffff808416806129465761294661291e565b92169190910492915050565b60ff82811682821603908111156107e4576107e461286c565b606081525f61297d6060830186612749565b828103602084015261298f8186612749565b91505061ffff83166040830152949350505050565b5f602082840312156129b4575f80fd5b5051919050565b5f816129c9576129c961286c565b505f190190565b80820281158282048414176107e4576107e461286c565b5f826129f5576129f561291e565b500690565b600181815b80851115612a3457815f1904821115612a1a57612a1a61286c565b80851615612a2757918102915b93841c93908002906129ff565b509250929050565b5f82612a4a575060016107e4565b81612a5657505f6107e4565b8160018114612a6c5760028114612a7657612a92565b60019150506107e4565b60ff841115612a8757612a8761286c565b50506001821b6107e4565b5060208310610133831016604e8410600b8410161715612ab5575081810a6107e4565b612abf83836129fa565b805f1904821115612ad257612ad261286c565b029392505050565b5f6107e18383612a3c565b8181035f8312801583831316838312821617156108825761088261286c565b606081525f612b166060830186612749565b8281036020840152612b288186612749565b90508281036040840152611cbc8185612749565b5f60208284031215612b4c575f80fd5b815180151581146107e1575f80fdfe00010203040506070809ffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fffffffffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fa164736f6c6343000818000a","storage":{"0x0":"0xbd","0x1":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1471eb6eb2c5e789fc3de43f8ce62938c7d1836ec861730447e2ada8fd81017b":"0x17cda4e23f7237277952e075b1c48467aabfacc0","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563":"0x2b000100000e1000244a5c080249aac11d7b6f6446702e54a1607371607a","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e564":"0x1a41855200fd2ce1cdde32f24e8fb500002b000100000e1000244f660802e06d","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e565":"0x44b80b8f1d39a95c0b0d7c65d08458e880409bbc683457104237c7f8ec8d0000","0x3617319a054d772f909f7c479a2cebe5066e836a939412e32403c99029b92eff":"0x5155f5627bdf9795b3dbb8887001ada1eeba93f2","0x85aaa47b6dc46495bb8824fad4583769726fea36efd831a35556690b830a8fbe":"0x6e2822b8856749ed179c77140dbc5f5a27410a4","0x91da3fd0782e51c6b3986e9e672fd566868e71f3dbc2d6c2cd6fbb3e361af2a7":"0x49da8861c65460639925febe1fb4b5b59b443082","0x95c6356c1b7a542b884d2484ef785c9c7224e77e1016c20007bddc15c23b452f":"0x3f9151d3fd1a82dcc5091909589900fd60ee767ee090bba000000000","0xabd6e7cb50984ff9c2f3e18a2660c3353dadf4e3291deeb275dae2cd1e44fe05":"0x458f653495fb8d9bd0e7df468c2bf76d26c7bd9"}},"0x9dc64b2558b458a15c7f01c192d874ef460f0a29":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x9df67c91f1bfcb4d966cf764e9218685e7c59e8a":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101d1575f3560e01c80638b95dd71116100fe578063c86902331161009e578063e32954eb1161006e578063e32954eb146104f2578063e59d895d14610505578063e985e9c514610518578063f1cb7e0614610553575f80fd5b8063c869023314610435578063ce3decdc1461048c578063d5fa2b001461049f578063d700ff33146104b2575f80fd5b8063a8fa5682116100d9578063a8fa5682146103ac578063a9784b3e146103bf578063ac9650d814610402578063bc1c58d114610422575f80fd5b80638b95dd7114610373578063a22cb46514610386578063a4b91a0114610399575f80fd5b80633603d758116101745780635c98042b116101445780635c98042b14610327578063623195b01461033a578063691f34311461034d5780637737221314610360575f80fd5b80633603d758146102975780633b3b57de146102aa5780634cbf6ba4146102bd57806359d1d43c14610307575f80fd5b8063124a319c116101af578063124a319c146102255780632203ab561461025057806329cd62ea14610271578063304e6ade14610284575f80fd5b806301ffc9a7146101d55780630af179d7146101fd57806310f13a8c14610212575b5f80fd5b6101e86101e3366004612267565b610566565b60405190151581526020015b60405180910390f35b61021061020b3660046122bd565b610576565b005b610210610220366004612304565b610778565b610238610233366004612377565b610842565b6040516001600160a01b0390911681526020016101f4565b61026361025e3660046123a1565b610a87565b6040516101f492919061240e565b61021061027f366004612426565b610bb5565b6102106102923660046122bd565b610c4d565b6102106102a536600461244f565b610cc6565b6102386102b836600461244f565b610d64565b6101e86102cb3660046123a1565b5f82815260208181526040808320546001600160401b031683526006825280832094835293815283822092825291909152205461ffff16151590565b61031a6103153660046122bd565b610d93565b6040516101f49190612466565b61031a61033536600461244f565b610e6f565b610210610348366004612478565b610f2a565b61031a61035b36600461244f565b610fc2565b61021061036e3660046122bd565b610ffa565b6102106103813660046124da565b611073565b6102106103943660046125b9565b611150565b6102106103a73660046125e3565b61122a565b61031a6103ba36600461261e565b6112f6565b6101e86103cd36600461265a565b6001600160a01b039283165f908152600c60209081526040808320948352938152838220929094168152925290205460ff1690565b6104156104103660046126ce565b611342565b6040516101f4919061270c565b61031a61043036600461244f565b61134f565b61047761044336600461244f565b5f81815260208181526040808320546001600160401b03168352600982528083209383529290522080546001909101549091565b604080519283526020830191909152016101f4565b61021061049a3660046122bd565b611387565b6102106104ad36600461276e565b6114c3565b6104da6104c036600461244f565b5f602081905290815260409020546001600160401b031681565b6040516001600160401b0390911681526020016101f4565b61041561050036600461279c565b6114e9565b6102106105133660046127d6565b6114fe565b6101e8610526366004612808565b6001600160a01b039182165f908152600b6020908152604080832093909416825291909152205460ff1690565b61031a6105613660046123a1565b6115a2565b5f61057082611666565b92915050565b826105808161168a565b610588575f80fd5b5f84815260208181526040808320548151601f87018490048402810184019092528582528392606092839285926001600160401b039091169183916105eb9183918d908d90819084018382808284375f9201919091525092939250506118b79050565b90505b80515160208201511015610712578661ffff165f03610652578060400151965061061781611912565b94508460405160200161062a9190612834565b60405160208183030381529060405280519060200120925061064b81611933565b9350610704565b5f61065c82611912565b9050816040015161ffff168861ffff16141580610680575061067e868261194f565b155b15610702576106db8c878a8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250505060208801518d91506106d2908290612863565b8b51158a61196a565b8160400151975081602001519650809550858051906020012093506106ff82611933565b94505b505b61070d81611bc9565b6105ee565b5083511561076c5761076c8a85888c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c925061076391508290508f612863565b8951158861196a565b50505050505050505050565b846107828161168a565b61078a575f80fd5b5f86815260208181526040808320546001600160401b03168352600a8252808320898452909152908190209051849184916107c89089908990612876565b908152602001604051809103902091826107e3929190612901565b5084846040516107f4929190612876565b6040518091039020867f448bc014f1536726cf8d54ff3d6481ed3cbc683c2591ca204274009afa09b1a18787878760405161083294939291906129e2565b60405180910390a3505050505050565b5f82815260208181526040808320546001600160401b031683526007825280832085845282528083206001600160e01b0319851684529091528120546001600160a01b03168015610894579050610570565b5f61089e85610d64565b90506001600160a01b0381166108b8575f92505050610570565b6040516301ffc9a760e01b60248201525f9081906001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b1790525161090f9190612834565b5f60405180830381855afa9150503d805f8114610947576040519150601f19603f3d011682016040523d82523d5f602084013e61094c565b606091505b509150915081158061095f575060208151105b80610989575080601f8151811061097857610978612a13565b01602001516001600160f81b031916155b1561099a575f945050505050610570565b6040516001600160e01b0319871660248201526001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b179052516109f09190612834565b5f60405180830381855afa9150503d805f8114610a28576040519150601f19603f3d011682016040523d82523d5f602084013e610a2d565b606091505b509092509050811580610a41575060208151105b80610a6b575080601f81518110610a5a57610a5a612a13565b01602001516001600160f81b031916155b15610a7c575f945050505050610570565b509095945050505050565b5f82815260208181526040808320546001600160401b03168352600180835281842086855290925282206060915b848111610b975780851615801590610ae457505f8181526020839052604081208054610ae090612885565b9050115b15610b8f5780825f8381526020019081526020015f20808054610b0690612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610b3290612885565b8015610b7d5780601f10610b5457610100808354040283529160200191610b7d565b820191905f5260205f20905b815481529060010190602001808311610b6057829003601f168201915b50505050509050935093505050610bae565b60011b610ab5565b505f60405180602001604052805f81525092509250505b9250929050565b82610bbf8161168a565b610bc7575f80fd5b60408051808201825284815260208082018581525f888152808352848120546001600160401b031681526009835284812089825283528490209251835551600190920191909155815185815290810184905285917f1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e4691015b60405180910390a250505050565b82610c578161168a565b610c5f575f80fd5b5f84815260208181526040808320546001600160401b03168352600382528083208784529091529020610c93838583612901565b50837fe379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d75788484604051610c3f929190612a27565b80610cd08161168a565b610cd8575f80fd5b5f82815260208190526040812080546001600160401b031691610cfa83612a3a565b82546101009290920a6001600160401b038181021990931691831602179091555f84815260208181526040918290205491519190921681528492507fc6621ccb8f3f5a04bb6502154b2caf6adf5983fe76dfef1cfc9c42e3579db444910160405180910390a25050565b5f80610d7183603c6115a2565b905080515f03610d8357505f92915050565b610d8c81611cae565b9392505050565b5f83815260208181526040808320546001600160401b03168352600a825280832086845290915290819020905160609190610dd19085908590612876565b90815260200160405180910390208054610dea90612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610e1690612885565b8015610e615780601f10610e3857610100808354040283529160200191610e61565b820191905f5260205f20905b815481529060010190602001808311610e4457829003601f168201915b505050505090509392505050565b5f81815260208181526040808320546001600160401b03168352600482528083208484529091529020805460609190610ea790612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610ed390612885565b8015610f1e5780601f10610ef557610100808354040283529160200191610f1e565b820191905f5260205f20905b815481529060010190602001808311610f0157829003601f168201915b50505050509050919050565b83610f348161168a565b610f3c575f80fd5b83610f48600182612863565b1615610f52575f80fd5b5f85815260208181526040808320546001600160401b031683526001825280832088845282528083208784529091529020610f8e838583612901565b50604051849086907faa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe3905f90a35050505050565b5f81815260208181526040808320546001600160401b03168352600882528083208484529091529020805460609190610ea790612885565b826110048161168a565b61100c575f80fd5b5f84815260208181526040808320546001600160401b03168352600882528083208784529091529020611040838583612901565b50837fb7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f78484604051610c3f929190612a27565b8261107d8161168a565b611085575f80fd5b837f65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af75284846040516110b792919061240e565b60405180910390a2603c830361110e57837f52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd26110f284611cae565b6040516001600160a01b03909116815260200160405180910390a25b5f84815260208181526040808320546001600160401b0316835260028252808320878452825280832086845290915290206111498382612a5f565b5050505050565b6001600160a01b03821633036111bf5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084015b60405180910390fd5b335f818152600b602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6001600160a01b03821633036112825760405162461bcd60e51b815260206004820181905260248201527f53657474696e672064656c65676174652073746174757320666f722073656c6660448201526064016111b6565b335f818152600c6020908152604080832087845282528083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519384529286917ff0ddb3b04746704017f9aa8bd728fcc2c1d11675041205350018915f5e4750a0910160405180910390a4505050565b5f83815260208181526040808320546001600160401b03168352600582528083208684528252808320858452825280832061ffff851684529091529020805460609190610dea90612885565b6060610d8c5f8484611ccb565b5f81815260208181526040808320546001600160401b03168352600382528083208484529091529020805460609190610ea790612885565b826113918161168a565b611399575f80fd5b5f84815260208181526040808320546001600160401b031680845260048352818420888552909252822080549192916113d190612885565b80601f01602080910402602001604051908101604052809291908181526020018280546113fd90612885565b80156114485780601f1061141f57610100808354040283529160200191611448565b820191905f5260205f20905b81548152906001019060200180831161142b57829003601f168201915b505050506001600160401b0384165f9081526004602090815260408083208b8452909152902091925061147e9050858783612901565b50857f8f15ed4b723ef428f250961da8315675b507046737e19319fc1a4d81bfe87f858287876040516114b393929190612b1e565b60405180910390a2505050505050565b816114cd8161168a565b6114d5575f80fd5b6114e483603c61038185611e88565b505050565b60606114f6848484611ccb565b949350505050565b826115088161168a565b611510575f80fd5b5f84815260208181526040808320546001600160401b031683526007825280832087845282528083206001600160e01b031987168085529083529281902080546001600160a01b0319166001600160a01b038716908117909155905190815286917f7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa910160405180910390a350505050565b5f82815260208181526040808320546001600160401b0316835260028252808320858452825280832084845290915290208054606091906115e290612885565b80601f016020809104026020016040519081016040528092919081815260200182805461160e90612885565b80156116595780601f1061163057610100808354040283529160200191611659565b820191905f5260205f20905b81548152906001019060200180831161163c57829003601f168201915b5050505050905092915050565b5f6001600160e01b03198216631674750f60e21b1480610570575061057082611eb8565b5f336001600160a01b037f0000000000000000000000004fbf7b2f171336958be5d15ff762a5cff53635681614806116ea5750336001600160a01b037f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5616145b156116f757506001919050565b6040516302571be360e01b8152600481018390525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa15801561175c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117809190612b4d565b90507f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b0316816001600160a01b031603611845576040516331a9108f60e11b8152600481018490527f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b031690636352211e90602401602060405180830381865afa15801561181e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118429190612b4d565b90505b6001600160a01b03811633148061187e57506001600160a01b0381165f908152600b6020908152604080832033845290915290205460ff165b80610d8c57506001600160a01b0381165f908152600c60209081526040808320868452825280832033845290915290205460ff16610d8c565b6118ff6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261057081611bc9565b602081015181516060916105709161192a9082611edc565b84519190611f33565b60a081015160c08201516060916105709161192a908290612863565b5f81518351148015610d8c5750610d8c835f845f8751611fa7565b865160208801205f61197d878787611f33565b90508315611aa1576001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c168452909152902080546119c690612885565b159050611a23576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611a0783612b68565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091528120611a62916121f9565b897f03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a12078a8a604051611a94929190612b84565b60405180910390a261076c565b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c16845290915290208054611ae290612885565b90505f03611b40576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611b2483612ba9565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091529020611b808282612a5f565b50897f52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b8a8a84604051611bb593929190612bbf565b60405180910390a250505050505050505050565b60c08101516020820181905281515111611be05750565b5f611bf2825f01518360200151611edc565b8260200151611c019190612bed565b8251909150611c109082611fc9565b61ffff166040830152611c24600282612bed565b8251909150611c339082611fc9565b61ffff166060830152611c47600282612bed565b8251909150611c569082611fef565b63ffffffff166080830152611c6c600482612bed565b82519091505f90611c7d9083611fc9565b61ffff169050611c8e600283612bed565b60a084018190529150611ca18183612bed565b60c0909301929092525050565b5f8151601414611cbc575f80fd5b5060200151600160601b900490565b6060816001600160401b03811115611ce557611ce56124c6565b604051908082528060200260200182016040528015611d1857816020015b6060815260200190600190039081611d035790505b5090505f5b82811015611e80578415611dd8575f848483818110611d3e57611d3e612a13565b9050602002810190611d509190612c00565b611d5f91602491600491612c42565b611d6891612c69565b9050858114611dd65760405162461bcd60e51b815260206004820152603460248201527f6d756c746963616c6c3a20416c6c207265636f726473206d7573742068617665604482015273040c240dac2e8c6d0d2dcce40dcc2dacad0c2e6d60631b60648201526084016111b6565b505b5f8030868685818110611ded57611ded612a13565b9050602002810190611dff9190612c00565b604051611e0d929190612876565b5f60405180830381855af49150503d805f8114611e45576040519150601f19603f3d011682016040523d82523d5f602084013e611e4a565b606091505b509150915081611e58575f80fd5b80848481518110611e6b57611e6b612a13565b60209081029190910101525050600101611d1d565b509392505050565b604080516014808252818301909252606091602082018180368337505050600160601b9290920260208301525090565b5f6001600160e01b0319821663c869023360e01b1480610570575061057082612017565b5f815b83518110611eef57611eef612c86565b5f611efa858361203b565b60ff169050611f0a816001612bed565b611f149083612bed565b9150805f03611f235750611f29565b50611edf565b6114f68382612863565b8251606090611f428385612bed565b1115611f4c575f80fd5b5f826001600160401b03811115611f6557611f656124c6565b6040519080825280601f01601f191660200182016040528015611f8f576020820181803683370190505b50905060208082019086860101610a7c82828761205e565b5f611fb38484846120b3565b611fbe8787856120b3565b149695505050505050565b81515f90611fd8836002612bed565b1115611fe2575f80fd5b50016002015161ffff1690565b81515f90611ffe836004612bed565b1115612008575f80fd5b50016004015163ffffffff1690565b5f6001600160e01b0319821663691f343160e01b14806105705750610570826120d5565b5f82828151811061204e5761204e612a13565b016020015160f81c905092915050565b602081106120965781518352612075602084612bed565b9250612082602083612bed565b915061208f602082612863565b905061205e565b905182516020929092036101000a5f190180199091169116179052565b82515f906120c18385612bed565b11156120cb575f80fd5b5091016020012090565b5f6001600160e01b031982166304928c6760e21b14806105705750610570825f6001600160e01b0319821663547d2b4160e11b148061212457506001600160e01b03198216635c98042b60e01b145b806105705750610570825f6001600160e01b0319821663bc1c58d160e01b14806105705750610570825f6001600160e01b03198216631d9dabef60e11b148061217d57506001600160e01b031982166378e5bf0360e11b145b806105705750610570825f6001600160e01b03198216631101d5ab60e11b14806105705750610570825f6001600160e01b0319821663d700ff3360e01b14806105705750610570825f6001600160e01b03198216634fbf043360e01b148061057057506301ffc9a760e01b6001600160e01b0319831614610570565b50805461220590612885565b5f825580601f10612214575050565b601f0160209004905f5260205f20908101906122309190612233565b50565b5b80821115612247575f8155600101612234565b5090565b80356001600160e01b031981168114612262575f80fd5b919050565b5f60208284031215612277575f80fd5b610d8c8261224b565b5f8083601f840112612290575f80fd5b5081356001600160401b038111156122a6575f80fd5b602083019150836020828501011115610bae575f80fd5b5f805f604084860312156122cf575f80fd5b8335925060208401356001600160401b038111156122eb575f80fd5b6122f786828701612280565b9497909650939450505050565b5f805f805f60608688031215612318575f80fd5b8535945060208601356001600160401b0380821115612335575f80fd5b61234189838a01612280565b90965094506040880135915080821115612359575f80fd5b5061236688828901612280565b969995985093965092949392505050565b5f8060408385031215612388575f80fd5b823591506123986020840161224b565b90509250929050565b5f80604083850312156123b2575f80fd5b50508035926020909101359150565b5f5b838110156123db5781810151838201526020016123c3565b50505f910152565b5f81518084526123fa8160208601602086016123c1565b601f01601f19169290920160200192915050565b828152604060208201525f6114f660408301846123e3565b5f805f60608486031215612438575f80fd5b505081359360208301359350604090920135919050565b5f6020828403121561245f575f80fd5b5035919050565b602081525f610d8c60208301846123e3565b5f805f806060858703121561248b575f80fd5b843593506020850135925060408501356001600160401b038111156124ae575f80fd5b6124ba87828801612280565b95989497509550505050565b634e487b7160e01b5f52604160045260245ffd5b5f805f606084860312156124ec575f80fd5b833592506020840135915060408401356001600160401b0380821115612510575f80fd5b818601915086601f830112612523575f80fd5b813581811115612535576125356124c6565b604051601f8201601f19908116603f0116810190838211818310171561255d5761255d6124c6565b81604052828152896020848701011115612575575f80fd5b826020860160208301375f6020848301015280955050505050509250925092565b6001600160a01b0381168114612230575f80fd5b80358015158114612262575f80fd5b5f80604083850312156125ca575f80fd5b82356125d581612596565b9150612398602084016125aa565b5f805f606084860312156125f5575f80fd5b83359250602084013561260781612596565b9150612615604085016125aa565b90509250925092565b5f805f60608486031215612630575f80fd5b8335925060208401359150604084013561ffff8116811461264f575f80fd5b809150509250925092565b5f805f6060848603121561266c575f80fd5b833561267781612596565b925060208401359150604084013561264f81612596565b5f8083601f84011261269e575f80fd5b5081356001600160401b038111156126b4575f80fd5b6020830191508360208260051b8501011115610bae575f80fd5b5f80602083850312156126df575f80fd5b82356001600160401b038111156126f4575f80fd5b6127008582860161268e565b90969095509350505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b8281101561276157603f1988860301845261274f8583516123e3565b94509285019290850190600101612733565b5092979650505050505050565b5f806040838503121561277f575f80fd5b82359150602083013561279181612596565b809150509250929050565b5f805f604084860312156127ae575f80fd5b8335925060208401356001600160401b038111156127ca575f80fd5b6122f78682870161268e565b5f805f606084860312156127e8575f80fd5b833592506127f86020850161224b565b9150604084013561264f81612596565b5f8060408385031215612819575f80fd5b823561282481612596565b9150602083013561279181612596565b5f82516128458184602087016123c1565b9190910192915050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156105705761057061284f565b818382375f9101908152919050565b600181811c9082168061289957607f821691505b6020821081036128b757634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156114e457805f5260205f20601f840160051c810160208510156128e25750805b601f840160051c820191505b81811015611149575f81556001016128ee565b6001600160401b03831115612918576129186124c6565b61292c836129268354612885565b836128bd565b5f601f84116001811461295d575f85156129465750838201355b5f19600387901b1c1916600186901b178355611149565b5f83815260208120601f198716915b8281101561298c578685013582556020948501946001909201910161296c565b50868210156129a8575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b604081525f6129f56040830186886129ba565b8281036020840152612a088185876129ba565b979650505050505050565b634e487b7160e01b5f52603260045260245ffd5b602081525f6114f66020830184866129ba565b5f6001600160401b03808316818103612a5557612a5561284f565b6001019392505050565b81516001600160401b03811115612a7857612a786124c6565b612a8c81612a868454612885565b846128bd565b602080601f831160018114612abf575f8415612aa85750858301515b5f19600386901b1c1916600185901b178555612b16565b5f85815260208120601f198616915b82811015612aed57888601518255948401946001909101908401612ace565b5085821015612b0a57878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b604081525f612b3060408301866123e3565b8281036020840152612b438185876129ba565b9695505050505050565b5f60208284031215612b5d575f80fd5b8151610d8c81612596565b5f61ffff821680612b7b57612b7b61284f565b5f190192915050565b604081525f612b9660408301856123e3565b905061ffff831660208301529392505050565b5f61ffff808316818103612a5557612a5561284f565b606081525f612bd160608301866123e3565b61ffff851660208401528281036040840152612b4381856123e3565b808201808211156105705761057061284f565b5f808335601e19843603018112612c15575f80fd5b8301803591506001600160401b03821115612c2e575f80fd5b602001915036819003821315610bae575f80fd5b5f8085851115612c50575f80fd5b83861115612c5c575f80fd5b5050820193919092039150565b80356020831015610570575f19602084900360031b1b1692915050565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{}},"0xa06a63155145b7f2fda96d9658ec7fef3b9dcf76":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b506004361061004a575f3560e01c80634ce34aa21461004e578063899e104c1461007e5780638df25d9214610091578063c4e8fcb5146100a4575b5f80fd5b61006161005c366004610834565b6100b9565b6040516001600160e01b0319909116815260200160405180910390f35b61006161008c3660046108b4565b610121565b61006161009f36600461091b565b61018a565b6100b76100b2366004610969565b6101c7565b005b5f335f525f60205260405f20546100dd576349ed56f960e11b5f523360045260245ffd5b815f5b81811015610110576101088585838181106100fd576100fd6109a2565b905060c002016102c4565b6001016100e0565b50632671a55160e11b949350505050565b5f335f525f60205260405f2054610145576349ed56f960e11b5f523360045260245ffd5b835f5b8181101561016d576101658787838181106100fd576100fd6109a2565b600101610148565b506101788484610436565b50632267841360e21b95945050505050565b5f335f525f60205260405f20546101ae576349ed56f960e11b5f523360045260245ffd5b6101b88383610436565b506346f92ec960e11b92915050565b336001600160a01b037f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c1614610210576040516336abb4df60e11b815260040160405180910390fd5b6001600160a01b0382165f9081526020819052604090205481151560ff909116151503610268576040516349271a0f60e11b81526001600160a01b038316600482015281151560248201526044015b60405180910390fd5b6001600160a01b0382165f8181526020818152604091829020805460ff191685151590811790915591519182527fae63067d43ac07563b7eb8db6595635fc77f1578a2a5ea06ba91b63e2afa37e2910160405180910390a25050565b60016102d360208301836109ca565b60038111156102e4576102e46109b6565b03610329576103266102fc60408301602084016109ef565b61030c60608401604085016109ef565b61031c60808501606086016109ef565b8460a0013561056c565b50565b600261033860208301836109ca565b6003811115610349576103496109b6565b036103b6578060a00135600114610379576040516369f9582760e01b815260a0820135600482015260240161025f565b61032661038c60408301602084016109ef565b61039c60608401604085016109ef565b6103ac60808501606086016109ef565b8460800135610660565b60036103c560208301836109ca565b60038111156103d6576103d66109b6565b0361041d576103266103ee60408301602084016109ef565b6103fe60608401604085016109ef565b61040e60808501606086016109ef565b84608001358560a00135610715565b604051631e4cbc7f60e21b815260040160405180910390fd5b808280631759616b60e11b6020525f5b8381101561055f57823582018035803b61046b57635f15d6725f52806020526024601cfd5b60a08201358060051b60c0018060808501351460a0606086013514168185013583141615905080156104a657633ae8821360e21b5f5260045ffd5b506020860195506080602084016024378060061b60400190508060a00160a4525f8160c401528060c4018160a0850160c4375f808260205f875af1935083610550573d1561053057601f3d0160051c91508060051c826003028184111561051a578184036003028280028580020360091c01015b5a60208201101561052d573d5f803e3d5ffd5b50505b6357e222f160e11b5f528260045260c0606452608451602001608452805ffd5b50505050600181019050610446565b5050505060806040525050565b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166106515780873b15151661065157806106405781610623573d1561060257601f3d0160051c8360051c81600302818311156105eb578183036003028280028480020360091c01015b5a6020820110156105fe573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b833b61067757635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af180610707573d156106e557601f3d0160051c8260051c81600302818311156106ce578183036003028280028480020360091c01015b5a6020820110156106e1573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b61072c57635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af1806107d1573d156107b057601f3d0160051c8560051c8160030281831115610799578183036003028280028480020360091c01015b5a6020820110156107ac573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b5f8083601f8401126107fc575f80fd5b50813567ffffffffffffffff811115610813575f80fd5b60208301915083602060c08302850101111561082d575f80fd5b9250929050565b5f8060208385031215610845575f80fd5b823567ffffffffffffffff81111561085b575f80fd5b610867858286016107ec565b90969095509350505050565b5f8083601f840112610883575f80fd5b50813567ffffffffffffffff81111561089a575f80fd5b6020830191508360208260051b850101111561082d575f80fd5b5f805f80604085870312156108c7575f80fd5b843567ffffffffffffffff808211156108de575f80fd5b6108ea888389016107ec565b90965094506020870135915080821115610902575f80fd5b5061090f87828801610873565b95989497509550505050565b5f806020838503121561092c575f80fd5b823567ffffffffffffffff811115610942575f80fd5b61086785828601610873565b80356001600160a01b0381168114610964575f80fd5b919050565b5f806040838503121561097a575f80fd5b6109838361094e565b915060208301358015158114610997575f80fd5b809150509250929050565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52602160045260245ffd5b5f602082840312156109da575f80fd5b8135600481106109e8575f80fd5b9392505050565b5f602082840312156109ff575f80fd5b6109e88261094e56fea164736f6c6343000818000a","storage":{}},"0xaa33d7188eb4b4a51c37199eaad2f73cf2bf0204":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0xac52f68f31577e44ae0c7e95a42dc9eb574b9383":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a424740014610090575b600080fd5b610059610054366004610cac565b6100b3565b6040516100669190610d9b565b60405180910390f35b61008261007d366004610dae565b610162565b604051908152602001610066565b6100a361009e366004610cac565b6101d6565b6040519015158152602001610066565b606060005a90506101576100ca6020870187610ddc565b6001546001600160a01b03166040880135846100e960608b018b610df9565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061023592505050565b9150505b9392505050565b600154604051636ccbae5f60e01b8152600481018390526000916001600160a01b031690636ccbae5f90602401602060405180830381865afa1580156101ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d09190610e40565b92915050565b600061022d6101e485610ef1565b600154604080516020601f88018190048102820181019092528681526001600160a01b039092169190879087908190840183828082843760009201919091525061030d92505050565b949350505050565b6060600080876001600160a01b0316866102518b8a8989610355565b60405161025e9190610f9b565b60006040518083038160008787f1925050503d806000811461029c576040519150601f19603f3d011682016040523d82523d6000602084013e6102a1565b606091505b5090925090506102b2603f87610fb7565b5a116102c0576102c0610fd9565b61030082826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061040a565b9998505050505050505050565b600061031a848484610443565b801561022d575060608401516020908101516001600160e01b031990811660009081529182905260409091205460e01b16151561022d565b50565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036103e75760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526103ff82828661058c565b979650505050505050565b6060831561041957508161015b565b8251156104295782518084602001fd5b8160405162461bcd60e51b81526004016103de9190610d9b565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561048a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104ae9190610e40565b9050600061055c8660600151805190602001208688602001516040516020016104fc9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561058257508551610582906001600160a01b03168286610a38565b9695505050505050565b60606001600160e01b03198416631de5861160e31b0361061a576000806000858060200190518101906105bf9190610fef565b92509250925086838383886040516024016105dd9493929190611032565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152935061015b92505050565b6001600160e01b03198416636debcb8d60e01b0361064b576000806000858060200190518101906105bf9190610fef565b6001600160e01b0319841663280d9b0560e01b036106dd576000806000808680602001905181019061067d91906110aa565b935093509350935087848484848a60405160240161069f959493929190611118565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152945061015b9350505050565b6001600160e01b031984166361603dd960e01b0361075c5760008380602001905181019061070b9190610e40565b905084818460405160240161072192919061115d565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152915061015b9050565b6001600160e01b0319841663b34f33c560e01b036107ab5760008060008580602001905181019061078d9190611176565b92509250925086838383886040516024016105dd94939291906111d0565b6001600160e01b03198416633013529360e01b036107dc5760008060008580602001905181019061078d9190611176565b6001600160e01b031984166307eca39560e01b03610830576000806000808680602001905181019061080e9190611209565b935093509350935087848484848a60405160240161069f95949392919061127e565b6001600160e01b031984166368b6154f60e01b03610862576000806000808680602001905181019061067d91906110aa565b6001600160e01b0319841663341de35b60e21b03610894576000806000808680602001905181019061067d91906110aa565b6001600160e01b03198416637a84860f60e11b0361092d576000806000806000878060200190518101906108c891906112cb565b945094509450945094508885858585858c6040516024016108ee96959493929190611360565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152955061015b945050505050565b6001600160e01b03198416636fab95b360e01b036109b2576000808480602001905181019061095c91906113b9565b915091508582828660405160240161097693929190611400565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925061015b915050565b6001600160e01b0319841663288f888960e11b0361015b57600080848060200190518101906109e1919061142b565b91509150858282866040516024016109fb93929190611459565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925050509392505050565b6000806000610a478585610b7a565b90925090506000816004811115610a6057610a60611489565b148015610a7e5750856001600160a01b0316826001600160a01b0316145b15610a8e5760019250505061015b565b600080876001600160a01b0316631626ba7e60e01b8888604051602401610ab692919061115d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051610af49190610f9b565b600060405180830381855afa9150503d8060008114610b2f576040519150601f19603f3d011682016040523d82523d6000602084013e610b34565b606091505b5091509150818015610b47575080516020145b8015610b6e57508051630b135d3f60e11b90610b6c9083016020908101908401610e40565b145b98975050505050505050565b6000808251604103610bb05760208301516040840151606085015160001a610ba487828585610bbf565b94509450505050610bb8565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610bf65750600090506003610ca3565b8460ff16601b14158015610c0e57508460ff16601c14155b15610c1f5750600090506004610ca3565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610c73573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610c9c57600060019250925050610ca3565b9150600090505b94509492505050565b600080600060408486031215610cc157600080fd5b833567ffffffffffffffff80821115610cd957600080fd5b9085019060808288031215610ced57600080fd5b90935060208501359080821115610d0357600080fd5b818601915086601f830112610d1757600080fd5b813581811115610d2657600080fd5b876020828501011115610d3857600080fd5b6020830194508093505050509250925092565b60005b83811015610d66578181015183820152602001610d4e565b50506000910152565b60008151808452610d87816020860160208601610d4b565b601f01601f19169290920160200192915050565b60208152600061015b6020830184610d6f565b600060208284031215610dc057600080fd5b5035919050565b6001600160a01b038116811461035257600080fd5b600060208284031215610dee57600080fd5b813561015b81610dc7565b6000808335601e19843603018112610e1057600080fd5b83018035915067ffffffffffffffff821115610e2b57600080fd5b602001915036819003821315610bb857600080fd5b600060208284031215610e5257600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610e9257610e92610e59565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ec157610ec1610e59565b604052919050565b600067ffffffffffffffff821115610ee357610ee3610e59565b50601f01601f191660200190565b600060808236031215610f0357600080fd5b610f0b610e6f565b8235610f1681610dc7565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610f4657600080fd5b840136601f820112610f5757600080fd5b8035610f6a610f6582610ec9565b610e98565b8181523684838501011115610f7e57600080fd5b818484018583013760009181019093015250606082015292915050565b60008251610fad818460208701610d4b565b9190910192915050565b600082610fd457634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b60008060006060848603121561100457600080fd5b835161100f81610dc7565b602085015190935061102081610dc7565b80925050604084015190509250925092565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061058290830184610d6f565b600082601f83011261107657600080fd5b8151611084610f6582610ec9565b81815284602083860101111561109957600080fd5b61022d826020830160208701610d4b565b600080600080608085870312156110c057600080fd5b84516110cb81610dc7565b60208601519094506110dc81610dc7565b60408601516060870151919450925067ffffffffffffffff81111561110057600080fd5b61110c87828801611065565b91505092959194509250565b6001600160a01b038681168252851660208201526040810184905260a06060820181905260009061114b90830185610d6f565b8281036080840152610b6e8185610d6f565b82815260406020820152600061022d6040830184610d6f565b60008060006060848603121561118b57600080fd5b835161119681610dc7565b60208501516040860151919450925067ffffffffffffffff8111156111ba57600080fd5b6111c686828701611065565b9150509250925092565b60018060a01b03851681528360208201526080604082015260006111f76080830185610d6f565b82810360608401526103ff8185610d6f565b6000806000806080858703121561121f57600080fd5b845161122a81610dc7565b60208601516040870151919550935067ffffffffffffffff8082111561124f57600080fd5b61125b88838901611065565b9350606087015191508082111561127157600080fd5b5061110c87828801611065565b60018060a01b038616815284602082015260a0604082015260006112a560a0830186610d6f565b82810360608401526112b78186610d6f565b90508281036080840152610b6e8185610d6f565b600080600080600060a086880312156112e357600080fd5b85516112ee81610dc7565b60208701519095506112ff81610dc7565b60408701516060880151919550935067ffffffffffffffff8082111561132457600080fd5b61133089838a01611065565b9350608088015191508082111561134657600080fd5b5061135388828901611065565b9150509295509295909350565b6001600160a01b038781168252861660208201526040810185905260c06060820181905260009061139390830186610d6f565b82810360808401526113a58186610d6f565b905082810360a08401526103008185610d6f565b600080604083850312156113cc57600080fd5b82519150602083015167ffffffffffffffff8111156113ea57600080fd5b6113f685828601611065565b9150509250929050565b8381526060602082015260006114196060830185610d6f565b82810360408401526105828185610d6f565b6000806040838503121561143e57600080fd5b825161144981610dc7565b6020939093015192949293505050565b60018060a01b03841681528260208201526060604082015260006114806060830184610d6f565b95945050505050565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a","storage":{"0x1":"0x7bb6cd9be29fab783c0b494a06fed8b2e2596b7a","0xd8b896d609e853134f3f02ce62d8049b2fdfe9356134f6d548fb1beda30db79":"0x30135293","0x4f457f36b92dc6b16c281e5877e2d8d39630135c1b7246fa9174035e1efcefbd":"0x6fab95b3","0x6b7ba3fe9941e089de60543da4a1deaef065baa963222951b2f9a138f9960820":"0x6debcb8d","0x70cff8e4ee4af5aa154324d45bcf258212c235bbe79f0707bb6273110ef4e13a":"0xf5090c1e","0x73efb0e44094dbabc6bbeecd3be1d81f272157c2dae2d647e6315f150b0b1dd2":"0xd0778d6c","0x8b1c4edded6644848281eab03ac2c319242d62b2057cffa3dd4540715bbc155e":"0xef2c3088","0xbeb5ea8fc2aeae43b7170220434aa4429fb067f0866ae25514b29f647641ca8c":"0x511f1112","0xca659f6eb372ce950e69d4d474290a6a4285f6a06a6128ca9f45419371a1e997":"0xb34f33c5","0xd12e300b5f35ba5198dd81dab97a512a154a0ad0e2cda788abdc22deba64f2a7":"0x280d9b05","0xd5453e7f4fff276a1d42f717d1db50865c284ae707a15bd6a590a3895656f27c":"0x7eca395","0xea2575ae4056f10294a848ca5ed6d215dffd1b80838142770bc441f7df607d71":"0x61603dd9","0xf8ca3ef1e3d09a0d88e209301f12626c90bec3ea586d4bce2c7a58e7eae8278f":"0x68b6154f"}},"0xb17aae5b3a7815433fc82cfd67ea245767894f03":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061012a5760003560e01c80638d839ffe116100ab578063aeb8ce9b1161006f578063aeb8ce9b146105d7578063ce1e09c014610688578063f14fcbc81461069d578063f2fde38b146106c7578063f49826be146106fa578063f7a16963146107b95761012a565b80638d839ffe1461045d5780638da5cb5b146104725780638f32d59b146104a35780639791c097146104b8578063acf1a841146105695761012a565b80637e324479116100f25780637e324479146102b8578063839df945146102e857806383e7f6ff1461031257806385f6d155146103c55780638a95b09f146104485761012a565b806301ffc9a71461012f5780633ccfd60b146101775780633d86c52f1461018e578063530e784f14610270578063715018a6146102a3575b600080fd5b34801561013b57600080fd5b506101636004803603602081101561015257600080fd5b50356001600160e01b031916610881565b604080519115158252519081900360200190f35b34801561018357600080fd5b5061018c610a12565b005b34801561019a57600080fd5b5061025e600480360360a08110156101b157600080fd5b810190602081018135600160201b8111156101cb57600080fd5b8201836020820111156101dd57600080fd5b803590602001918460018302840111600160201b831117156101fe57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b0383358116945060208401359360408101358216935060600135169050610a53565b60408051918252519081900360200190f35b34801561027c57600080fd5b5061018c6004803603602081101561029357600080fd5b50356001600160a01b0316610b42565b3480156102af57600080fd5b5061018c610ba3565b3480156102c457600080fd5b5061018c600480360360408110156102db57600080fd5b5080359060200135610bfe565b3480156102f457600080fd5b5061025e6004803603602081101561030b57600080fd5b5035610c1a565b34801561031e57600080fd5b5061025e6004803603604081101561033557600080fd5b810190602081018135600160201b81111561034f57600080fd5b82018360208201111561036157600080fd5b803590602001918460018302840111600160201b8311171561038257600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505091359250610c2c915050565b61018c600480360360808110156103db57600080fd5b810190602081018135600160201b8111156103f557600080fd5b82018360208201111561040757600080fd5b803590602001918460018302840111600160201b8311171561042857600080fd5b91935091506001600160a01b038135169060208101359060400135610d9e565b34801561045457600080fd5b5061025e610de9565b34801561046957600080fd5b5061025e610df0565b34801561047e57600080fd5b50610487610df6565b604080516001600160a01b039092168252519081900360200190f35b3480156104af57600080fd5b50610163610e05565b3480156104c457600080fd5b50610163600480360360208110156104db57600080fd5b810190602081018135600160201b8111156104f557600080fd5b82018360208201111561050757600080fd5b803590602001918460018302840111600160201b8311171561052857600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610e16945050505050565b61018c6004803603604081101561057f57600080fd5b810190602081018135600160201b81111561059957600080fd5b8201836020820111156105ab57600080fd5b803590602001918460018302840111600160201b831117156105cc57600080fd5b919350915035610e2b565b3480156105e357600080fd5b50610163600480360360208110156105fa57600080fd5b810190602081018135600160201b81111561061457600080fd5b82018360208201111561062657600080fd5b803590602001918460018302840111600160201b8311171561064757600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610fcf945050505050565b34801561069457600080fd5b5061025e611069565b3480156106a957600080fd5b5061018c600480360360208110156106c057600080fd5b503561106f565b3480156106d357600080fd5b5061018c600480360360208110156106ea57600080fd5b50356001600160a01b03166110a1565b34801561070657600080fd5b5061025e6004803603606081101561071d57600080fd5b810190602081018135600160201b81111561073757600080fd5b82018360208201111561074957600080fd5b803590602001918460018302840111600160201b8311171561076a57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b0383351693505050602001356110bb565b61018c600480360360c08110156107cf57600080fd5b810190602081018135600160201b8111156107e957600080fd5b8201836020820111156107fb57600080fd5b803590602001918460018302840111600160201b8311171561081c57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b038335811694506020840135936040810135935060608101358216925060800135166110d3565b604080517f737570706f727473496e74657266616365286279746573342900000000000000815290519081900360190190206000906001600160e01b0319838116911614806109c05750604080517472656e657728737472696e672c75696e743235362960581b815290519081900360150181209080602861186a8239604080519182900360280182206e636f6d6d697428627974657333322960881b8352905191829003600f01822090925090806026611892823960260190506040518091039020604051808070617661696c61626c6528737472696e672960781b8152506011019050604051809103902060405180807f72656e74507269636528737472696e672c75696e7432353629000000000000008152506019019050604051809103902018181818186001600160e01b031916826001600160e01b031916145b80610a0c5750604051808061182a60409139604080519182900301812091508060426118b8823960420190506040518091039020186001600160e01b031916826001600160e01b031916145b92915050565b610a1a610e05565b610a2357600080fd5b6040513390303180156108fc02916000818181858888f19350505050158015610a50573d6000803e3d6000fd5b50565b845160208601206000906001600160a01b038416158015610a7b57506001600160a01b038316155b15610acb57604080516020808201939093526bffffffffffffffffffffffff19606089901b1681830152605480820188905282518083039091018152607490910190915280519101209050610b39565b6001600160a01b038416610ade57600080fd5b604080516020808201939093526bffffffffffffffffffffffff19606089811b82168385015287811b8216605484015286901b166068820152607c80820188905282518083039091018152609c909101909152805191012090505b95945050505050565b610b4a610e05565b610b5357600080fd5b600280546001600160a01b0319166001600160a01b0383811691909117918290556040519116907ff261845a790fe29bbd6631e2ca4a5bdc83e6eed7c3271d9590d97287e00e912390600090a250565b610bab610e05565b610bb457600080fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b610c06610e05565b610c0f57600080fd5b600391909155600455565b60056020526000908152604090205481565b815160208084019190912060025460015460408051636b727d4360e11b81526004810185905290516000956001600160a01b03948516946350e9a715948a9491169263d6e4fa8692602480840193919291829003018186803b158015610c9157600080fd5b505afa158015610ca5573d6000803e3d6000fd5b505050506040513d6020811015610cbb57600080fd5b50516040516001600160e01b031960e085901b168152602481018290526044810188905260606004820190815283516064830152835189928291608490910190602087019080838360005b83811015610d1e578181015183820152602001610d06565b50505050905090810190601f168015610d4b5780820380516001836020036101000a031916815260200191505b5094505050505060206040518083038186803b158015610d6a57600080fd5b505afa158015610d7e573d6000803e3d6000fd5b505050506040513d6020811015610d9457600080fd5b5051949350505050565b610de285858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250889350879250869150806110d3565b5050505050565b6224ea0081565b60035481565b6000546001600160a01b031690565b6000546001600160a01b0316331490565b60006003610e2383611646565b101592915050565b6000610e6e84848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250869250610c2c915050565b905080341015610e7d57600080fd5b60008484604051808383808284376040805193909101839003832060015463c475abff60e01b855260048501829052602485018b90529151909750600096506001600160a01b03909116945063c475abff93506044808401936020935082900301818787803b158015610eef57600080fd5b505af1158015610f03573d6000803e3d6000fd5b505050506040513d6020811015610f1957600080fd5b5051905034831015610f565760405133903485900380156108fc02916000818181858888f19350505050158015610f54573d6000803e3d6000fd5b505b817f3da24c024582931cfaf8267d8ed24d13a82a8068d5bd337d30ec45cea4e506ae8787868560405180806020018481526020018381526020018281038252868682818152602001925080828437600083820152604051601f909101601f191690920182900397509095505050505050a2505050505050565b80516020820120600090610fe283610e16565b80156110625750600154604080516312dc929d60e31b81526004810184905290516001600160a01b03909216916396e494e891602480820192602092909190829003018186803b15801561103557600080fd5b505afa158015611049573d6000803e3d6000fd5b505050506040513d602081101561105f57600080fd5b50515b9392505050565b60045481565b6004546000828152600560205260409020544291011061108e57600080fd5b6000908152600560205260409020429055565b6110a9610e05565b6110b257600080fd5b610a508161172e565b60006110cb848484600080610a53565b949350505050565b60006110e28787868686610a53565b905060006110f188878461179c565b885160208a01209091508060006001600160a01b038716156114ac5760015460408051633f2891eb60e21b815260048101859052306024820152604481018c905290516001600160a01b039092169163fca247ac916064808201926020929091908290030181600087803b15801561116857600080fd5b505af115801561117c573d6000803e3d6000fd5b505050506040513d602081101561119257600080fd5b505160015460408051630ddf7fcb60e41b815290519293506000926001600160a01b039092169163ddf7fcb091600480820192602092909190829003018186803b1580156111df57600080fd5b505afa1580156111f3573d6000803e3d6000fd5b505050506040513d602081101561120957600080fd5b50516040805160208181019390935280820187905281518082038301815260608201808452815191850191909120600154633f15457f60e01b90925292519294506001600160a01b031692633f15457f92606480840193829003018186803b15801561127457600080fd5b505afa158015611288573d6000803e3d6000fd5b505050506040513d602081101561129e57600080fd5b505160408051630c4b7b8560e11b8152600481018490526001600160a01b038b8116602483015291519190921691631896f70a91604480830192600092919082900301818387803b1580156112f257600080fd5b505af1158015611306573d6000803e3d6000fd5b505050506001600160a01b0387161561139257876001600160a01b031663d5fa2b0082896040518363ffffffff1660e01b815260040180838152602001826001600160a01b03166001600160a01b0316815260200192505050600060405180830381600087803b15801561137957600080fd5b505af115801561138d573d6000803e3d6000fd5b505050505b60015460408051630a3b53db60e21b8152600481018690526001600160a01b038e81166024830152915191909216916328ed4f6c91604480830192600092919082900301818387803b1580156113e757600080fd5b505af11580156113fb573d6000803e3d6000fd5b50505050600160009054906101000a90046001600160a01b03166001600160a01b03166323b872dd308d866040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050600060405180830381600087803b15801561148e57600080fd5b505af11580156114a2573d6000803e3d6000fd5b505050505061154c565b6001600160a01b038616156114c057600080fd5b60015460408051633f2891eb60e21b8152600481018590526001600160a01b038d81166024830152604482018d90529151919092169163fca247ac9160648083019260209291908290030181600087803b15801561151d57600080fd5b505af1158015611531573d6000803e3d6000fd5b505050506040513d602081101561154757600080fd5b505190505b896001600160a01b0316837fca6abbe9d7f11422cb6ca7629fbf6fe9efb1c621f71ce8f02b9f2a230097404f8d87856040518080602001848152602001838152602001828103825285818151815260200191508051906020019080838360005b838110156115c45781810151838201526020016115ac565b50505050905090810190601f1680156115f15780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a3833411156116395760405133903486900380156108fc02916000818181858888f19350505050158015611637573d6000803e3d6000fd5b505b5050505050505050505050565b8051600090819081905b8082101561172557600085838151811061166657fe5b01602001516001600160f81b0319169050600160ff1b81101561168e57600183019250611719565b600760fd1b6001600160f81b0319821610156116af57600283019250611719565b600f60fc1b6001600160f81b0319821610156116d057600383019250611719565b601f60fb1b6001600160f81b0319821610156116f157600483019250611719565b603f60fa1b6001600160f81b03198216101561171257600583019250611719565b6006830192505b50600190920191611650565b50909392505050565b6001600160a01b03811661174157600080fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b600354600082815260056020526040812054909142910111156117be57600080fd5b600454600083815260056020526040902054429101116117dd57600080fd5b6117e684610fcf565b6117ef57600080fd5b600082815260056020526040812081905561180a8585610c2c565b90506224ea0084101561181c57600080fd5b803410156110cb57600080fdfe6d616b65436f6d6d69746d656e7457697468436f6e66696728737472696e672c616464726573732c627974657333322c616464726573732c6164647265737329726567697374657228737472696e672c616464726573732c75696e743235362c62797465733332296d616b65436f6d6d69746d656e7428737472696e672c616464726573732c6279746573333229726567697374657257697468436f6e66696728737472696e672c616464726573732c75696e743235362c627974657333322c616464726573732c6164647265737329a265627a7a72315820ba74b4e49afb22de09a9ebda5d073d93e2a2a7b2530ce50def390c32cac92ea064736f6c634300050c0032","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1":"0xc965345edac823d56812cd20a10316233916a605","0x2":"0xec71e4e674fe0f432693dc2b935c34bd2774c003","0x3":"0x258","0x4":"0x15180"}},"0xbdefcf6429d0ac68236a6beb321cbd2ce66b463c":{"nonce":2,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c80636d435421116100885780637b37e561116100635780637b37e561146102435780638b9e028b14610256578063906c87cc1461027657806393790f4414610289575f80fd5b80636d435421146101eb5780636e9bfd9f146101fe578063794593bc14610230575f80fd5b806314afd79e116100c357806314afd79e1461018157806333bc8572146101945780634e3f9580146101b757806351710e45146101d8575f80fd5b8063027cc764146100e95780630a96ad391461011957806313ad9cab1461016c575b5f80fd5b6100fc6100f7366004610c39565b61029c565b6040516001600160a01b0390911681526020015b60405180910390f35b604080517f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f81527fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167602082015201610110565b61017f61017a366004610c61565b610339565b005b6100fc61018f366004610ca9565b610531565b6101a76101a2366004610cc9565b61055c565b6040519015158152602001610110565b6101ca6101c5366004610ca9565b610595565b604051908152602001610110565b61017f6101e6366004610ca9565b6105bd565b61017f6101f9366004610cc9565b6106be565b61021161020c366004610cfa565b6107ae565b604080516001600160a01b039093168352901515602083015201610110565b6100fc61023e366004610d11565b610838565b61017f610251366004610ca9565b610a0a565b610269610264366004610ca9565b610aab565b6040516101109190610d32565b6100fc610284366004610ca9565b610b28565b6101ca610297366004610ca9565b610b53565b5f6102a683610b8e565b6001600160a01b0383165f908152602081905260409020600301548083106102f157604051636ceb340b60e01b81526001600160a01b03851660048201526024015b60405180910390fd5b6001600160a01b0384165f90815260208190526040902060030180548490811061031d5761031d610d7e565b5f918252602090912001546001600160a01b0316949350505050565b61034283610bc6565b60405163c4e8fcb560e01b81526001600160a01b038381166004830152821515602483015284169063c4e8fcb5906044015f604051808303815f87803b15801561038a575f80fd5b505af115801561039c573d5f803e3d5ffd5b505050506001600160a01b038381165f908152602081815260408083209386168352600484019091529020548015158380156103d6575080155b15610425576003830180546001810182555f828152602080822090920180546001600160a01b0319166001600160a01b038a169081179091559254928152600486019091526040902055610529565b831580156104305750805b156105295760038301545f198301905f9061044d90600190610d92565b90508181146104d8575f85600301828154811061046c5761046c610d7e565b5f918252602090912001546003870180546001600160a01b03909216925082918590811061049c5761049c610d7e565b5f91825260208083209190910180546001600160a01b0319166001600160a01b0394851617905592909116815260048701909152604090208490555b846003018054806104eb576104eb610db7565b5f828152602080822083015f1990810180546001600160a01b03191690559092019092556001600160a01b0389168252600487019052604081205550505b505050505050565b5f61053b82610b8e565b506001600160a01b039081165f908152602081905260409020600101541690565b5f61056683610b8e565b506001600160a01b039182165f9081526020818152604080832093909416825260049092019091522054151590565b5f61059f82610b8e565b506001600160a01b03165f9081526020819052604090206003015490565b6105c681610b8e565b6001600160a01b038181165f9081526020819052604090206002015416331461060d576040516388c3a11560e01b81526001600160a01b03821660048201526024016102e8565b6040515f907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da908290a26001600160a01b038082165f818152602081905260408082206002810180546001600160a01b031916905560010154905133949190911692917fc8894f26f396ce8c004245c8b7cd1b92103a6e4302fcbab883987149ac01b7ec91a46001600160a01b03165f90815260208190526040902060010180546001600160a01b03191633179055565b6106c782610bc6565b6001600160a01b0381166106f95760405163a388d26360e01b81526001600160a01b03831660048201526024016102e8565b6001600160a01b038083165f9081526020819052604090206002015481169082160361074b576040516365e0406560e11b81526001600160a01b038084166004830152821660248201526044016102e8565b6040516001600160a01b038216907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da905f90a26001600160a01b039182165f90815260208190526040902060020180546001600160a01b03191691909216179055565b5f8060ff60f81b30847f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f6040516020016107eb9493929190610dcb565b60408051601f198184030181529190528051602090910120936001600160a01b0385163f7fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167149350915050565b5f6001600160a01b0382166108605760405163267eaa8160e21b815260040160405180910390fd5b606083901c3314610884576040516332db94d160e21b815260040160405180910390fd5b6040516108c3906001600160f81b031990309086907f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f90602001610dcb565b604051602081830303815290604052805190602001205f1c90507fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167816001600160a01b03163f0361093257604051633194665960e11b81526001600160a01b03821660048201526024016102e8565b8260405161093f90610c16565b8190604051809103905ff590508015801561095c573d5f803e3d5ffd5b50506001600160a01b038181165f81815260208181526040918290206001810180546001600160a01b03191695881695909517909455868455815192835282018690527f4397af6128d529b8ae0442f99db1296d5136062597a15bbc61c1b2a6431a7d15910160405180910390a16040516001600160a01b03808516915f918516907fc8894f26f396ce8c004245c8b7cd1b92103a6e4302fcbab883987149ac01b7ec908390a45092915050565b610a1381610bc6565b6001600160a01b038181165f9081526020819052604090206002015416610a58576040516335809b0b60e11b81526001600160a01b03821660048201526024016102e8565b6040515f907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da908290a26001600160a01b03165f90815260208190526040902060020180546001600160a01b0319169055565b6060610ab682610b8e565b6001600160a01b0382165f908152602081815260409182902060030180548351818402810184019094528084529091830182828015610b1c57602002820191905f5260205f20905b81546001600160a01b03168152600190910190602001808311610afe575b50505050509050919050565b5f610b3282610b8e565b506001600160a01b039081165f908152602081905260409020600201541690565b6001600160a01b0381165f9081526020819052604090205480610b89576040516304ca820960e41b815260040160405180910390fd5b919050565b6001600160a01b0381165f90815260208190526040902054610bc3576040516304ca820960e41b815260040160405180910390fd5b50565b610bcf81610b8e565b6001600160a01b038181165f90815260208190526040902060010154163314610bc35760405163d4ed9a1760e01b81526001600160a01b03821660048201526024016102e8565b610a4180610e0583390190565b80356001600160a01b0381168114610b89575f80fd5b5f8060408385031215610c4a575f80fd5b610c5383610c23565b946020939093013593505050565b5f805f60608486031215610c73575f80fd5b610c7c84610c23565b9250610c8a60208501610c23565b915060408401358015158114610c9e575f80fd5b809150509250925092565b5f60208284031215610cb9575f80fd5b610cc282610c23565b9392505050565b5f8060408385031215610cda575f80fd5b610ce383610c23565b9150610cf160208401610c23565b90509250929050565b5f60208284031215610d0a575f80fd5b5035919050565b5f8060408385031215610d22575f80fd5b82359150610cf160208401610c23565b602080825282518282018190525f9190848201906040850190845b81811015610d725783516001600160a01b031683529284019291840191600101610d4d565b50909695505050505050565b634e487b7160e01b5f52603260045260245ffd5b81810381811115610db157634e487b7160e01b5f52601160045260245ffd5b92915050565b634e487b7160e01b5f52603160045260245ffd5b6001600160f81b031994909416845260609290921b6bffffffffffffffffffffffff19166001840152601583015260358201526055019056fe60a060405234801561000f575f80fd5b5033608052608051610a1561002c5f395f6101d20152610a155ff3fe608060405234801561000f575f80fd5b506004361061004a575f3560e01c80634ce34aa21461004e578063899e104c1461007e5780638df25d9214610091578063c4e8fcb5146100a4575b5f80fd5b61006161005c366004610834565b6100b9565b6040516001600160e01b0319909116815260200160405180910390f35b61006161008c3660046108b4565b610121565b61006161009f36600461091b565b61018a565b6100b76100b2366004610969565b6101c7565b005b5f335f525f60205260405f20546100dd576349ed56f960e11b5f523360045260245ffd5b815f5b81811015610110576101088585838181106100fd576100fd6109a2565b905060c002016102c4565b6001016100e0565b50632671a55160e11b949350505050565b5f335f525f60205260405f2054610145576349ed56f960e11b5f523360045260245ffd5b835f5b8181101561016d576101658787838181106100fd576100fd6109a2565b600101610148565b506101788484610436565b50632267841360e21b95945050505050565b5f335f525f60205260405f20546101ae576349ed56f960e11b5f523360045260245ffd5b6101b88383610436565b506346f92ec960e11b92915050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610210576040516336abb4df60e11b815260040160405180910390fd5b6001600160a01b0382165f9081526020819052604090205481151560ff909116151503610268576040516349271a0f60e11b81526001600160a01b038316600482015281151560248201526044015b60405180910390fd5b6001600160a01b0382165f8181526020818152604091829020805460ff191685151590811790915591519182527fae63067d43ac07563b7eb8db6595635fc77f1578a2a5ea06ba91b63e2afa37e2910160405180910390a25050565b60016102d360208301836109ca565b60038111156102e4576102e46109b6565b03610329576103266102fc60408301602084016109ef565b61030c60608401604085016109ef565b61031c60808501606086016109ef565b8460a0013561056c565b50565b600261033860208301836109ca565b6003811115610349576103496109b6565b036103b6578060a00135600114610379576040516369f9582760e01b815260a0820135600482015260240161025f565b61032661038c60408301602084016109ef565b61039c60608401604085016109ef565b6103ac60808501606086016109ef565b8460800135610660565b60036103c560208301836109ca565b60038111156103d6576103d66109b6565b0361041d576103266103ee60408301602084016109ef565b6103fe60608401604085016109ef565b61040e60808501606086016109ef565b84608001358560a00135610715565b604051631e4cbc7f60e21b815260040160405180910390fd5b808280631759616b60e11b6020525f5b8381101561055f57823582018035803b61046b57635f15d6725f52806020526024601cfd5b60a08201358060051b60c0018060808501351460a0606086013514168185013583141615905080156104a657633ae8821360e21b5f5260045ffd5b506020860195506080602084016024378060061b60400190508060a00160a4525f8160c401528060c4018160a0850160c4375f808260205f875af1935083610550573d1561053057601f3d0160051c91508060051c826003028184111561051a578184036003028280028580020360091c01015b5a60208201101561052d573d5f803e3d5ffd5b50505b6357e222f160e11b5f528260045260c0606452608451602001608452805ffd5b50505050600181019050610446565b5050505060806040525050565b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166106515780873b15151661065157806106405781610623573d1561060257601f3d0160051c8360051c81600302818311156105eb578183036003028280028480020360091c01015b5a6020820110156105fe573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b833b61067757635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af180610707573d156106e557601f3d0160051c8260051c81600302818311156106ce578183036003028280028480020360091c01015b5a6020820110156106e1573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b61072c57635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af1806107d1573d156107b057601f3d0160051c8560051c8160030281831115610799578183036003028280028480020360091c01015b5a6020820110156107ac573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b5f8083601f8401126107fc575f80fd5b50813567ffffffffffffffff811115610813575f80fd5b60208301915083602060c08302850101111561082d575f80fd5b9250929050565b5f8060208385031215610845575f80fd5b823567ffffffffffffffff81111561085b575f80fd5b610867858286016107ec565b90969095509350505050565b5f8083601f840112610883575f80fd5b50813567ffffffffffffffff81111561089a575f80fd5b6020830191508360208260051b850101111561082d575f80fd5b5f805f80604085870312156108c7575f80fd5b843567ffffffffffffffff808211156108de575f80fd5b6108ea888389016107ec565b90965094506020870135915080821115610902575f80fd5b5061090f87828801610873565b95989497509550505050565b5f806020838503121561092c575f80fd5b823567ffffffffffffffff811115610942575f80fd5b61086785828601610873565b80356001600160a01b0381168114610964575f80fd5b919050565b5f806040838503121561097a575f80fd5b6109838361094e565b915060208301358015158114610997575f80fd5b809150509250929050565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52602160045260245ffd5b5f602082840312156109da575f80fd5b8135600481106109e8575f80fd5b9392505050565b5f602082840312156109ff575f80fd5b6109e88261094e56fea164736f6c6343000818000aa164736f6c6343000818000a","storage":{}},"0xbe5deac45dd1ca4ee18dc2d585d84d3d3cb82b0d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c806341539d4a146100465780634d5505d314610097578063afa764d7146100b1575b600080fd5b6100636004803603602081101561005c57600080fd5b50356100dc565b6040805195865260208601949094528484019290925260608401526001600160a01b03166080830152519081900360a00190f35b61009f610114565b60408051918252519081900360200190f35b6100da600480360360608110156100c757600080fd5b508035906020810135906040013561011a565b005b60006020819052908152604090208054600182015460028301546003840154600490940154929391929091906001600160a01b031685565b60015481565b6101226101eb565b506040805160a0810182528481526020808201858152828401858152426060808601918252336080870181815260018054810180825560009081528089528a81208a518155975188830155955160028801559351600387015551600490950180546001600160a01b0319166001600160a01b0390961695909517909455905486518981529485018890528487018a905295519495919491937fba5de06d22af2685c6c7765f60067f7d2b08c2d29f53cdf14d67f6d1c9bfb527929081900390910190a450505050565b6040518060a001604052806000801916815260200160008152602001600081526020016000815260200160006001600160a01b03168152509056fea164736f6c6343000606000a","storage":{"0x1":"0x0"}},"0xbe92182cab5b84fd18b34881a0c32771e84f5b8b":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061021c5760003560e01c80638da5cb5b11610125578063bebec6b4116100ad578063e985e9c51161007c578063e985e9c514610540578063f059235914610553578063f2fde38b14610566578063ffa1ad7414610579578063ffad6f551461059d57600080fd5b8063bebec6b4146104e7578063bfc5429b146104fa578063c15ae7cf1461050d578063c87b56dd1461052d57600080fd5b8063a81ce6f9116100f4578063a81ce6f91461046d578063ac9650d814610480578063b3f9e4cb146104a0578063b85afd28146104b3578063b98b3526146104d457600080fd5b80638da5cb5b146103f157806391015f6b146103f9578063933c051d1461041b578063a3f4df7e1461043d57600080fd5b80634bd79ed0116101a857806370a082311161017757806370a082311461038d578063715018a6146103a05780637e37479e146103a857806383caffbe146103bb578063869b8884146103ce57600080fd5b80634bd79ed0146103335780634f558e79146103465780636352211e14610359578063672b9f811461036c57600080fd5b80631bd8cc1a116101ef5780631bd8cc1a146102ac5780631be5e7ed146102cc578063276fabb1146102ec578063430c20811461030d578063485cc9551461032057600080fd5b806301ffc9a7146102215780630328075514610249578063081812fc1461026c57806313af403514610297575b600080fd5b61023461022f366004612c9d565b6105b0565b60405190151581526020015b60405180910390f35b61025c610257366004612d0b565b610638565b6040516102409493929190612dfe565b61027f61027a366004612e3c565b61065b565b6040516001600160a01b039091168152602001610240565b6102aa6102a5366004612e6a565b610760565b005b6102bf6102ba366004612d0b565b6107d1565b6040516102409190612e87565b6102df6102da366004612edb565b6107f0565b6040516102409190612f12565b6102ff6102fa366004612f25565b61091b565b604051908152602001610240565b61023461031b366004612f66565b61098f565b6102aa61032e366004612f92565b610aa2565b6102aa610341366004612fcb565b610bf5565b610234610354366004612e3c565b610e51565b61027f610367366004612e3c565b610e5c565b61037f61037a366004613036565b610e67565b604051610240929190613058565b6102ff61039b366004612e6a565b610f97565b6102aa611095565b6102ff6103b6366004612e6a565b6110a9565b6102bf6103c936600461307d565b611118565b6103e16103dc366004612fcb565b6114f0565b60405161024094939291906131bb565b61027f6116e6565b61040c610407366004612d0b565b611714565b60405161024093929190613208565b61042e610429366004612fcb565b611734565b60405161024093929190613234565b6102df604051806040016040528060118152602001702aa7299d10283937bc3c902932b0b232b960791b81525081565b61027f61047b366004612e3c565b6118bd565b61049361048e366004612f25565b61198b565b6040516102409190613277565b61027f6104ae366004612e3c565b611a7f565b6104c66104c1366004612d0b565b611b05565b6040516102409291906132d9565b6102df6104e23660046132fe565b611ce1565b6102df6104f5366004612e6a565b611cfb565b6102df6105083660046132fe565b611d6f565b61052061051b366004612f25565b611d89565b6040516102409190613371565b6102df61053b366004612e3c565b611e37565b61023461054e366004612f92565b611f09565b6102aa610561366004612fcb565b611f54565b6102aa610574366004612e6a565b612018565b6102df604051806040016040528060058152602001640302e352e360dc1b81525081565b6102aa6105ab366004613384565b612085565b60006001600160e01b031982166362526e6360e01b14806105e157506001600160e01b03198216636fa624af60e11b145b806105fc57506001600160e01b031982166308da864d60e31b145b8061061757506001600160e01b03198216638584880360e01b145b8061063257506301ffc9a760e01b6001600160e01b03198316145b92915050565b6000806060806106498787876120d8565b93509350935093505b93509350935093565b60006106668261233a565b61067257506000919050565b61067b826123d2565b6106f25760665460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa1580156106c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106ed91906133bd565b610632565b60655460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa15801561073c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061063291906133bd565b600061076a6116e6565b6001600160a01b0316146107c55760405162461bcd60e51b815260206004820152601e60248201527f50726f78795265616465723a204f574e45525f414c52454144595f534554000060448201526064015b60405180910390fd5b6107ce81612419565b50565b60606107e66107e0848661346a565b83612495565b90505b9392505050565b60606107fb826123d2565b1561088057606554604051631be5e7ed60e01b81526001600160a01b0390911690631be5e7ed9061083490879087908790600401613547565b600060405180830381865afa158015610851573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261087991908101906135b0565b90506107e9565b600061088b83612617565b90506001600160a01b0381163b1561091357604051631be5e7ed60e01b81526001600160a01b03821690631be5e7ed906108cd90889088908890600401613547565b600060405180830381865afa92505050801561090b57506040513d6000823e601f3d908101601f1916820160405261090891908101906135b0565b60015b156109135791505b509392505050565b60655460405163276fabb160e01b81526000916001600160a01b03169063276fabb19061094e908690869060040161366c565b602060405180830381865afa15801561096b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613680565b600061099a8261233a565b6109a657506000610632565b6109af826123d2565b610a2d5760665460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a04573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a289190613699565b6107e9565b60655460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a7e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613699565b600054610100900460ff1615808015610ac25750600054600160ff909116105b80610adc5750303b158015610adc575060005460ff166001145b610b3f5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107bc565b6000805460ff191660011790558015610b62576000805461ff0019166101001790555b606580546001600160a01b038086166001600160a01b0319928316179092556066805492851692909116919091179055610b9a61268a565b610ba261268a565b610baa6126b1565b8015610bf0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b610bfd6126e1565b828114610c4c5760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107bc565b60005b83811015610e4a5760006068868684818110610c6d57610c6d6136bb565b9050602002810190610c7f91906136d1565b604051610c8d929190613717565b908152604051908190036020019020541115610cf1576068858583818110610cb757610cb76136bb565b9050602002810190610cc991906136d1565b604051610cd7929190613717565b90815260200160405180910390206000610cf19190612c18565b60005b838383818110610d0657610d066136bb565b9050602002810190610d189190613727565b9050811015610ddc576068868684818110610d3557610d356136bb565b9050602002810190610d4791906136d1565b604051610d55929190613717565b9081526020016040518091039020848484818110610d7557610d756136bb565b9050602002810190610d879190613727565b83818110610d9757610d976136bb565b9050602002810190610da991906136d1565b82546001810184556000938452602090932090920191610dc991836137f8565b5080610dd4816138cd565b915050610cf4565b507fb2b57b54285120d17f49f2490a39ef791441fd0ad1e6b6818c23262bf91f061c858583818110610e1057610e106136bb565b9050602002810190610e2291906136d1565b604051610e309291906138e6565b60405180910390a180610e42816138cd565b915050610c4f565b5050505050565b60006106328261233a565b600061063282612740565b606080610e73836123d2565b15610ef95760655460405163672b9f8160e01b815260048101869052602481018590526001600160a01b039091169063672b9f8190604401600060405180830381865afa158015610ec8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610ef091908101906138fa565b91509150610f90565b6000610f0484612617565b90506001600160a01b0381163b15610f8e5760405163672b9f8160e01b815260048101869052602481018590526001600160a01b0382169063672b9f8190604401600060405180830381865afa925050508015610f8357506040513d6000823e601f3d908101601f19168201604052610f8091908101906138fa565b60015b15610f8e5790935091505b505b9250929050565b6065546040516370a0823160e01b81526001600160a01b03838116600483015260009283929116906370a0823190602401602060405180830381865afa158015610fe5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110099190613680565b6066549091506001600160a01b031615610632576066546040516370a0823160e01b81526001600160a01b038581166004830152909116906370a0823190602401602060405180830381865afa158015611067573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061108b9190613680565b6107e9908261395d565b61109d6126e1565b6110a76000612419565b565b606554604051633f1ba3cf60e11b81526001600160a01b0383811660048301526000921690637e37479e90602401602060405180830381865afa1580156110f4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190613680565b606060006067868660405161112e929190613717565b9081526020016040518091039020805461114790613770565b80601f016020809104026020016040519081016040528092919081815260200182805461117390613770565b80156111c05780601f10611195576101008083540402835291602001916111c0565b820191906000526020600020905b8154815290600101906020018083116111a357829003601f168201915b5050505050905080516000036111d657506114e8565b6000604051806040016040528060068152602001653a37b5b2b71760d11b81525090506000604051806040016040528060088152602001672e6164647265737360c01b81525090506000604051806040016040528060018152602001601760f91b815250905060008385838c8c868d8d8a60405160200161125f99989796959493929190613970565b6040516020818303038152906040529050600060688260405161128291906139f3565b9081526020016040518091039020805480602002602001604051908101604052809291908181526020016000905b8282101561135c5783829060005260206000200180546112cf90613770565b80601f01602080910402602001604051908101604052809291908181526020018280546112fb90613770565b80156113485780601f1061131d57610100808354040283529160200191611348565b820191906000526020600020905b81548152906001019060200180831161132b57829003601f168201915b5050505050815260200190600101906112b0565b50505050905080516003611370919061395d565b6001600160401b03811115611387576113876133da565b6040519080825280602002602001820160405280156113ba57816020015b60608152602001906001900390816113a55790505b50965081876000815181106113d1576113d16136bb565b602002602001018190525060005b815181101561143e578181815181106113fa576113fa6136bb565b602002602001015188826001611410919061395d565b81518110611420576114206136bb565b60200260200101819052508080611436906138cd565b9150506113df565b508486848d8d8860405160200161145a96959493929190613a0f565b6040516020818303038152906040528782516001611478919061395d565b81518110611488576114886136bb565b60200260200101819052508486856040516020016114a893929190613a72565b60405160208183030381529060405287825160026114c6919061395d565b815181106114d6576114d66136bb565b60200260200101819052505050505050505b949350505050565b6060808080846001600160401b0381111561150d5761150d6133da565b604051908082528060200260200182016040528015611536578160200160208202803683370190505b509350846001600160401b03811115611551576115516133da565b60405190808252806020026020018201604052801561157a578160200160208202803683370190505b509250846001600160401b03811115611595576115956133da565b6040519080825280602002602001820160405280156115c857816020015b60608152602001906001900390816115b35790505b509150846001600160401b038111156115e3576115e36133da565b60405190808252806020026020018201604052801561161657816020015b60608152602001906001900390816116015790505b50905060005b858110156116da57611647898989898581811061163b5761163b6136bb565b905060200201356120d8565b888581518110611659576116596136bb565b60200260200101888681518110611672576116726136bb565b6020026020010188878151811061168b5761168b6136bb565b602002602001018888815181106116a4576116a46136bb565b6020908102919091010193909352929091526001600160a01b0392831690915291169052806116d2816138cd565b91505061161c565b50945094509450949050565b7fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c8121905546001600160a01b031690565b6000806060611724868686612761565b9250925092505b93509350939050565b60608080836001600160401b03811115611750576117506133da565b604051908082528060200260200182016040528015611779578160200160208202803683370190505b509250836001600160401b03811115611794576117946133da565b6040519080825280602002602001820160405280156117bd578160200160208202803683370190505b509150836001600160401b038111156117d8576117d86133da565b60405190808252806020026020018201604052801561180b57816020015b60608152602001906001900390816117f65790505b50905060005b848110156118b25761183c8888888885818110611830576118306136bb565b90506020020135612761565b86848151811061184e5761184e6136bb565b60200260200101868581518110611867576118676136bb565b60200260200101868681518110611880576118806136bb565b60209081029190910101929092526001600160a01b0392831690915291169052806118aa816138cd565b915050611811565b509450945094915050565b606554604051634f558e7960e01b8152600481018390526000916001600160a01b031690634f558e7990602401602060405180830381865afa158015611907573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061192b9190613699565b156119415750506065546001600160a01b031690565b6066546001600160a01b03161580159061196d575060006119618361296c565b6001600160a01b031614155b156119835750506066546001600160a01b031690565b506000919050565b6060816001600160401b038111156119a5576119a56133da565b6040519080825280602002602001820160405280156119d857816020015b60608152602001906001900390816119c35790505b50905060005b82811015611a7857611a48308585848181106119fc576119fc6136bb565b9050602002810190611a0e91906136d1565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061299e92505050565b828281518110611a5a57611a5a6136bb565b60200260200101819052508080611a70906138cd565b9150506119de565b5092915050565b6000611a8a8261233a565b611a9657506000919050565b611a9f826123d2565b611ad45760665460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb906024016106ac565b60655460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb9060240161071f565b606080836001600160401b03811115611b2057611b206133da565b604051908082528060200260200182016040528015611b5357816020015b6060815260200190600190039081611b3e5790505b509150836001600160401b03811115611b6e57611b6e6133da565b604051908082528060200260200182016040528015611ba157816020015b6060815260200190600190039081611b8c5790505b509050611bad836123d2565b15611c345760655460405163170b5fa560e31b81526001600160a01b039091169063b85afd2890611be690889088908890600401613ab5565b600060405180830381865afa158015611c03573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611c2b9190810190613b72565b91509150611cd9565b6000611c3f84612617565b90506001600160a01b0381163b15158015611c5957508415155b15611cd75760405163170b5fa560e31b81526001600160a01b0382169063b85afd2890611c8e90899089908990600401613ab5565b600060405180830381865afa925050508015611ccc57506040513d6000823e601f3d908101601f19168201604052611cc99190810190613b72565b60015b15611cd75790935091505b505b935093915050565b6060611cf08686868686612a92565b979650505050505050565b606554604051632fafb1ad60e21b81526001600160a01b038381166004830152606092169063bebec6b4906024015b600060405180830381865afa158015611d47573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261063291908101906135b0565b6060611d7e8686868686612a92565b509695505050505050565b6060816001600160401b03811115611da357611da36133da565b604051908082528060200260200182016040528015611dcc578160200160208202803683370190505b50905060005b82811015611a7857611dfb848483818110611def57611def6136bb565b90506020020135612740565b828281518110611e0d57611e0d6136bb565b6001600160a01b039092166020928302919091019091015280611e2f816138cd565b915050611dd2565b6060611e428261233a565b611e5a57505060408051602081019091526000815290565b611e63826123d2565b611ed85760665460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401600060405180830381865afa158015611eb0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106ed91908101906135b0565b60655460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401611d2a565b60405162461bcd60e51b815260206004820152601f60248201527f50726f78795265616465723a20554e535550504f525445445f4d4554484f440060448201526000906064016107bc565b611f5c6126e1565b828114611fab5760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107bc565b60005b83811015610e4a57612006858583818110611fcb57611fcb6136bb565b9050602002810190611fdd91906136d1565b858585818110611fef57611fef6136bb565b905060200281019061200191906136d1565b612b3e565b80612010816138cd565b915050611fae565b6120206126e1565b6001600160a01b0381166107c55760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107bc565b61208d6126e1565b60005b83811015610e4a576120c68585838181106120ad576120ad6136bb565b90506020028101906120bf91906136d1565b8585612b3e565b806120d0816138cd565b915050612090565b600080606080856001600160401b038111156120f6576120f66133da565b60405190808252806020026020018201604052801561212957816020015b60608152602001906001900390816121145790505b509150856001600160401b03811115612144576121446133da565b60405190808252806020026020018201604052801561217757816020015b60608152602001906001900390816121625790505b509050612183856123d2565b156122845760655460405163b3f9e4cb60e01b8152600481018790526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa1580156121d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121f591906133bd565b935061220085612bad565b60655460405163170b5fa560e31b81529194506001600160a01b03169063b85afd2890612235908a908a908a90600401613ab5565b600060405180830381865afa158015612252573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261227a9190810190613b72565b9092509050610652565b61228d85612617565b93506122988561296c565b92506001600160a01b0384163b151580156122b4575060008251115b156106525760405163170b5fa560e31b81526001600160a01b0385169063b85afd28906122e9908a908a908a90600401613ab5565b600060405180830381865afa92505050801561232757506040513d6000823e601f3d908101601f191682016040526123249190810190613b72565b60015b1561065257909250905093509350935093565b6000612345826123d2565b6123645760006123548361296c565b6001600160a01b03161415610632565b606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e79906024015b602060405180830381865afa1580156123ae573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190613699565b6066546000906001600160a01b031615806106325750606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401612391565b60006124236116e6565b9050817fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c812190580546001600160a01b0319166001600160a01b03928316179055604051838216918316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b606082516001600160401b038111156124b0576124b06133da565b6040519080825280602002602001820160405280156124e357816020015b60608152602001906001900390816124ce5790505b5090506124ef826123d2565b1561257257606554604051630dec660d60e11b81526001600160a01b0390911690631bd8cc1a906125269086908690600401613bcb565b600060405180830381865afa158015612543573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261256b9190810190613bed565b9050610632565b600061257d83612617565b90506001600160a01b0381163b15158015612599575060008451115b15611a7857604051630dec660d60e11b81526001600160a01b03821690631bd8cc1a906125cc9087908790600401613bcb565b600060405180830381865afa92505050801561260a57506040513d6000823e601f3d908101601f191682016040526126079190810190613bed565b60015b15611a7857949350505050565b60665460405163b3f9e4cb60e01b8152600481018390526000916001600160a01b03169063b3f9e4cb906024015b602060405180830381865afa92505050801561267e575060408051601f3d908101601f1916820190925261267b918101906133bd565b60015b61063257506000919050565b600054610100900460ff166110a75760405162461bcd60e51b81526004016107bc90613c21565b600054610100900460ff166126d85760405162461bcd60e51b81526004016107bc90613c21565b6110a733612419565b336126ea6116e6565b6001600160a01b0316146110a75760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107bc565b600061274b826123d2565b612758576106ed8261296c565b61063282612bad565b6000806060846001600160401b0381111561277e5761277e6133da565b6040519080825280602002602001820160405280156127b157816020015b606081526020019060019003908161279c5790505b5090506127bd846123d2565b156128bb5760655460405163b3f9e4cb60e01b8152600481018690526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561280b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061282f91906133bd565b925061283a84612bad565b606554604051630dec660d60e11b81529193506001600160a01b031690631bd8cc1a9061286f90899089908990600401613c6c565b600060405180830381865afa15801561288c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526128b49190810190613bed565b905061172b565b6128c484612617565b92506128cf8461296c565b91506001600160a01b0383163b151580156128e957508415155b1561172b57604051630dec660d60e11b81526001600160a01b03841690631bd8cc1a9061291e90899089908990600401613c6c565b600060405180830381865afa92505050801561295c57506040513d6000823e601f3d908101601f191682016040526129599190810190613bed565b60015b1561172b57905093509350939050565b6066546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401612645565b60606001600160a01b0383163b612a065760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b60648201526084016107bc565b600080846001600160a01b031684604051612a2191906139f3565b600060405180830381855af49150503d8060008114612a5c576040519150601f19603f3d011682016040523d82523d6000602084013e612a61565b606091505b5091509150612a898282604051806060016040528060278152602001613c8160279139612bdf565b95945050505050565b6060806000612aa388888888611118565b90506000612ab18286612495565b905060005b8151811015612b31576000828281518110612ad357612ad36136bb565b6020026020010151511115612b1f57828181518110612af457612af46136bb565b60200260200101519350818181518110612b1057612b106136bb565b60200260200101519450612b31565b80612b29816138cd565b915050612ab6565b5050509550959350505050565b818160678686604051612b52929190613717565b90815260200160405180910390209182612b6d9291906137f8565b507f0bf4b04a0f6d7d0800284e1abb0f58f795c0a25b9088634b6ab847be51001dec8484604051612b9f9291906138e6565b60405180910390a150505050565b6065546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401612645565b60608315612bee5750816107e9565b825115612bfe5782518084602001fd5b8160405162461bcd60e51b81526004016107bc9190612f12565b50805460008255906000526020600020908101906107ce91905b80821115612c4f576000612c468282612c53565b50600101612c32565b5090565b508054612c5f90613770565b6000825580601f10612c6f575050565b601f0160209004906000526020600020908101906107ce91905b80821115612c4f5760008155600101612c89565b600060208284031215612caf57600080fd5b81356001600160e01b0319811681146107e957600080fd5b60008083601f840112612cd957600080fd5b5081356001600160401b03811115612cf057600080fd5b6020830191508360208260051b8501011115610f9057600080fd5b600080600060408486031215612d2057600080fd5b83356001600160401b03811115612d3657600080fd5b612d4286828701612cc7565b909790965060209590950135949350505050565b60005b83811015612d71578181015183820152602001612d59565b50506000910152565b60008151808452612d92816020860160208601612d56565b601f01601f19169290920160200192915050565b600082825180855260208086019550808260051b84010181860160005b84811015612df157601f19868403018952612ddf838351612d7a565b98840198925090830190600101612dc3565b5090979650505050505050565b6001600160a01b03858116825284166020820152608060408201819052600090612e2a90830185612da6565b8281036060840152611cf08185612da6565b600060208284031215612e4e57600080fd5b5035919050565b6001600160a01b03811681146107ce57600080fd5b600060208284031215612e7c57600080fd5b81356107e981612e55565b6020815260006107e96020830184612da6565b60008083601f840112612eac57600080fd5b5081356001600160401b03811115612ec357600080fd5b602083019150836020828501011115610f9057600080fd5b600080600060408486031215612ef057600080fd5b83356001600160401b03811115612f0657600080fd5b612d4286828701612e9a565b6020815260006107e96020830184612d7a565b60008060208385031215612f3857600080fd5b82356001600160401b03811115612f4e57600080fd5b612f5a85828601612cc7565b90969095509350505050565b60008060408385031215612f7957600080fd5b8235612f8481612e55565b946020939093013593505050565b60008060408385031215612fa557600080fd5b8235612fb081612e55565b91506020830135612fc081612e55565b809150509250929050565b60008060008060408587031215612fe157600080fd5b84356001600160401b0380821115612ff857600080fd5b61300488838901612cc7565b9096509450602087013591508082111561301d57600080fd5b5061302a87828801612cc7565b95989497509550505050565b6000806040838503121561304957600080fd5b50508035926020909101359150565b60408152600061306b6040830185612d7a565b8281036020840152612a898185612d7a565b6000806000806040858703121561309357600080fd5b84356001600160401b03808211156130aa57600080fd5b6130b688838901612e9a565b909650945060208701359150808211156130cf57600080fd5b5061302a87828801612e9a565b600081518084526020808501945080840160005b838110156131155781516001600160a01b0316875295820195908201906001016130f0565b509495945050505050565b60008282518085526020808601955060058183821b8501018287016000805b868110156131ac57601f1988850381018c5283518051808752908801908887019080891b88018a01865b8281101561319557858a8303018452613183828651612d7a565b948c0194938c01939150600101613169565b509e8a019e9750505093870193505060010161313f565b50919998505050505050505050565b6080815260006131ce60808301876130dc565b82810360208401526131e081876130dc565b905082810360408401526131f48186613120565b90508281036060840152611cf08185613120565b6001600160a01b03848116825283166020820152606060408201819052600090612a8990830184612da6565b60608152600061324760608301866130dc565b828103602084015261325981866130dc565b9050828103604084015261326d8185613120565b9695505050505050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156132cc57603f198886030184526132ba858351612d7a565b9450928501929085019060010161329e565b5092979650505050505050565b6040815260006132ec6040830185612da6565b8281036020840152612a898185612da6565b60008060008060006060868803121561331657600080fd5b85356001600160401b038082111561332d57600080fd5b61333989838a01612e9a565b9097509550602088013591508082111561335257600080fd5b5061335f88828901612e9a565b96999598509660400135949350505050565b6020815260006107e960208301846130dc565b6000806000806040858703121561339a57600080fd5b84356001600160401b03808211156133b157600080fd5b6130b688838901612cc7565b6000602082840312156133cf57600080fd5b81516107e981612e55565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715613418576134186133da565b604052919050565b60006001600160401b03821115613439576134396133da565b5060051b60200190565b60006001600160401b0382111561345c5761345c6133da565b50601f01601f191660200190565b600061347d61347884613420565b6133f0565b80848252602080830192508560051b85013681111561349b57600080fd5b855b818110156135125780356001600160401b038111156134bc5760008081fd5b870136601f8201126134ce5760008081fd5b80356134dc61347882613443565b81815236868385010111156134f15760008081fd5b8186840187830137600091810186019190915286525093820193820161349d565b50919695505050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60408152600061355b60408301858761351e565b9050826020830152949350505050565b600082601f83011261357c57600080fd5b815161358a61347882613443565b81815284602083860101111561359f57600080fd5b6114e8826020830160208701612d56565b6000602082840312156135c257600080fd5b81516001600160401b038111156135d857600080fd5b6114e88482850161356b565b60008383855260208086019550808560051b8301018460005b87811015612df157848303601f19018952813536889003601e1901811261362357600080fd5b870184810190356001600160401b0381111561363e57600080fd5b80360382131561364d57600080fd5b61365885828461351e565b9a86019a94505050908301906001016135fd565b6020815260006107e66020830184866135e4565b60006020828403121561369257600080fd5b5051919050565b6000602082840312156136ab57600080fd5b815180151581146107e957600080fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e198436030181126136e857600080fd5b8301803591506001600160401b0382111561370257600080fd5b602001915036819003821315610f9057600080fd5b8183823760009101908152919050565b6000808335601e1984360301811261373e57600080fd5b8301803591506001600160401b0382111561375857600080fd5b6020019150600581901b3603821315610f9057600080fd5b600181811c9082168061378457607f821691505b6020821081036137a457634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115610bf057600081815260208120601f850160051c810160208610156137d15750805b601f850160051c820191505b818110156137f0578281556001016137dd565b505050505050565b6001600160401b0383111561380f5761380f6133da565b6138238361381d8354613770565b836137aa565b6000601f841160018114613857576000851561383f5750838201355b600019600387901b1c1916600186901b178355610e4a565b600083815260209020601f19861690835b828110156138885786850135825560209485019460019092019101613868565b50868210156138a55760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b634e487b7160e01b600052601160045260246000fd5b6000600182016138df576138df6138b7565b5060010190565b6020815260006107e660208301848661351e565b6000806040838503121561390d57600080fd5b82516001600160401b038082111561392457600080fd5b6139308683870161356b565b9350602085015191508082111561394657600080fd5b506139538582860161356b565b9150509250929050565b80820180821115610632576106326138b7565b60008a51613982818460208f01612d56565b8a5190830190613996818360208f01612d56565b8a519101906139a9818360208e01612d56565b0187898237600090880190815286516139c6818360208b01612d56565b0184868237600090850190815283516139e3818360208801612d56565b019b9a5050505050505050505050565b60008251613a05818460208701612d56565b9190910192915050565b60008751613a21818460208c01612d56565b875190830190613a35818360208c01612d56565b8751910190613a48818360208b01612d56565b018486823760009085019081528351613a65818360208801612d56565b0198975050505050505050565b60008451613a84818460208901612d56565b845190830190613a98818360208901612d56565b8451910190613aab818360208801612d56565b0195945050505050565b6040808252810183905260006001600160fb1b03841115613ad557600080fd5b8360051b808660608501376020830193909352500160600192915050565b600082601f830112613b0457600080fd5b81516020613b1461347883613420565b82815260059290921b84018101918181019086841115613b3357600080fd5b8286015b84811015611d7e5780516001600160401b03811115613b565760008081fd5b613b648986838b010161356b565b845250918301918301613b37565b60008060408385031215613b8557600080fd5b82516001600160401b0380821115613b9c57600080fd5b613ba886838701613af3565b93506020850151915080821115613bbe57600080fd5b5061395385828601613af3565b604081526000613bde6040830185612da6565b90508260208301529392505050565b600060208284031215613bff57600080fd5b81516001600160401b03811115613c1557600080fd5b6114e884828501613af3565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60408152600061355b6040830185876135e456fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a","storage":{}},"0xc2110388dd54228ae0a834119457ede938bf0b57":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061021e5760003560e01c80638da5cb5b11610123578063acf1a841116100ab578063d547741f1161006f578063d547741f14610682578063f14fcbc8146106a2578063f23a6e61146106c2578063f2fde38b146106e2578063ffa1ad741461070257600080fd5b8063acf1a841146105e0578063bc197c8114610600578063c0c53b8b14610620578063cf01585314610640578063d53913931461066057600080fd5b8063a0e3aef1116100f2578063a0e3aef114610534578063a217fddf14610554578063a3f4df7e14610569578063a4247400146105a0578063aa271e1a146105c057600080fd5b80638da5cb5b146104c157806391d14854146104df578063983b2d56146104ff578063986502751461051f57600080fd5b80635fc1964f116101a65780636ccbae5f116101755780636ccbae5f14610439578063715018a61461045957806371e2a6571461046e57806381c81d351461048e57806383e7f6ff146104a157600080fd5b80635fc1964f146103ae578063634486da146103ce5780636352211e146103e15780636a8be89e1461041957600080fd5b80632f2ff15d116101ed5780632f2ff15d146103035780633092afd51461032557806336568abe14610345578063423f6cef14610365578063572b6c051461038557600080fd5b806301ffc9a71461022a578063150b7a021461025f5780631bf7e13e14610298578063248a9ca3146102c557600080fd5b3661022557005b600080fd5b34801561023657600080fd5b5061024a6102453660046125f2565b610733565b60405190151581526020015b60405180910390f35b34801561026b57600080fd5b5061027f61027a366004612672565b610779565b6040516001600160e01b03199091168152602001610256565b3480156102a457600080fd5b506102b86102b33660046126e4565b6108cb565b60405161025691906127a4565b3480156102d157600080fd5b506102f56102e03660046127b7565b600090815260fb602052604090206001015490565b604051908152602001610256565b34801561030f57600080fd5b5061032361031e3660046127d0565b610997565b005b34801561033157600080fd5b50610323610340366004612800565b6109c1565b34801561035157600080fd5b506103236103603660046127d0565b6109d5565b34801561037157600080fd5b5061032361038036600461281d565b610a68565b34801561039157600080fd5b5061024a6103a0366004612800565b6001600160a01b0316301490565b3480156103ba57600080fd5b506103236103c936600461288f565b610bd9565b6103236103dc366004612800565b610c21565b3480156103ed57600080fd5b506104016103fc3660046127b7565b610ce4565b6040516001600160a01b039091168152602001610256565b34801561042557600080fd5b50610323610434366004612800565b610cef565b34801561044557600080fd5b506102f56104543660046127b7565b610d38565b34801561046557600080fd5b50610323610d7e565b34801561047a57600080fd5b5061032361048936600461288f565b610d92565b61032361049c366004612800565b610dda565b3480156104ad57600080fd5b506102f56104bc366004612934565b610e57565b3480156104cd57600080fd5b506097546001600160a01b0316610401565b3480156104eb57600080fd5b5061024a6104fa3660046127d0565b610efa565b34801561050b57600080fd5b5061032361051a366004612800565b610f25565b34801561052b57600080fd5b50610323610f36565b34801561054057600080fd5b506102f561054f366004612a5c565b610f50565b34801561056057600080fd5b506102f5600081565b34801561057557600080fd5b506102b86040518060400160405280600b81526020016a454e5320437573746f647960a81b81525081565b3480156105ac57600080fd5b5061024a6105bb3660046126e4565b610ffc565b3480156105cc57600080fd5b5061024a6105db366004612800565b61104f565b3480156105ec57600080fd5b506103236105fb366004612934565b611069565b34801561060c57600080fd5b5061027f61061b366004612b35565b611222565b34801561062c57600080fd5b5061032361063b366004612bf3565b6112db565b34801561064c57600080fd5b5061032361065b366004612c3e565b611485565b34801561066c57600080fd5b506102f56000805160206133f583398151915281565b34801561068e57600080fd5b5061032361069d3660046127d0565b611592565b3480156106ae57600080fd5b506103236106bd3660046127b7565b6115b7565b3480156106ce57600080fd5b5061027f6106dd366004612d20565b61162b565b3480156106ee57600080fd5b506103236106fd366004612800565b6116bc565b34801561070e57600080fd5b506102b860405180604001604052806005815260200164302e312e3360d81b81525081565b60006001600160e01b03198216630a85bd0160e11b148061076457506001600160e01b03198216630271189760e51b145b806107735750610773826116d8565b92915050565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004546000906001600160a01b0316806107b061170d565b6001600160a01b0316036108a957600080806107ce86880188612d9b565b9250925092506107dd8361171c565b6001600160a01b03841663b88d4fde30600080516020613415833981519152546040516001600160a01b03909116908c9061082390879030906000908b90602001612dfc565b6040516020818303038152906040526040518563ffffffff1660e01b81526004016108519493929190612e3c565b600060405180830381600087803b15801561086b57600080fd5b505af115801561087f573d6000803e3d6000fd5b5050505061089561088f8261174e565b846117d3565b50630a85bd0160e11b93506108c292505050565b6040516344e7d94960e01b815260040160405180910390fd5b95945050505050565b606060005a90506108dd858585610ffc565b6108fa57604051638baa579f60e01b815260040160405180910390fd5b61098c61090a6020870187612800565b3060408801358461091e60608b018b612e6f565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061185e92505050565b9150505b9392505050565b600082815260fb60205260409020600101546109b28161193f565b6109bc8383611950565b505050565b6109c96119d7565b6109d281611a50565b50565b6109dd61170d565b6001600160a01b0316816001600160a01b031614610a5a5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b610a648282611a68565b5050565b80610a7161170d565b6001600160a01b0316610a8382611aed565b6001600160a01b031614610ac55780610a9a61170d565b604051637ea58b1160e01b815260048101929092526001600160a01b03166024820152604401610a51565b610ace82611c03565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052600090610b22906060015b6040516020818303038152906040528051906020012090565b80546001600160a01b0319166001600160a01b0392909216919091179055600060008051602061341583398151915254604051637921219560e11b81523060048201526001600160a01b038681166024830152604482018690526001606483015260a06084830152600060a48301529091169150819063f242432a9060c401600060405180830381600087803b158015610bbb57600080fd5b505af1158015610bcf573d6000803e3d6000fd5b5050505050505050565b610be16119d7565b60005b8151811015610a6457610c0f828281518110610c0257610c02612eb5565b6020026020010151611a50565b80610c1981612ee1565b915050610be4565b610c2c6105db61170d565b610c485760405162461bcd60e51b8152600401610a5190612efa565b6001600160a01b038116610c9e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a51565b610ca781611c1c565b610caf610f36565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610a64573d6000803e3d6000fd5b600061077382611aed565b610cf76119d7565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c500480546001600160a01b0319166001600160a01b0392909216919091179055565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a838156020820152908101829052600090610d7790606001610b09565b5492915050565b610d866119d7565b610d906000611c34565b565b610d9a6119d7565b60005b8151811015610a6457610dc8828281518110610dbb57610dbb612eb5565b6020026020010151611c1c565b80610dd281612ee1565b915050610d9d565b610de56105db61170d565b610e015760405162461bcd60e51b8152600401610a5190612efa565b6001600160a01b038116610ca75760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a51565b6000805160206133d5833981519152546040516383e7f6ff60e01b81526000916001600160a01b031690829082906383e7f6ff90610e9d90899089908990600401612f58565b6040805180830381865afa158015610eb9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610edd9190612f7c565b60208101518151919250610ef091612fca565b9695505050505050565b600091825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610f2d6119d7565b6109d281611c1c565b610d906000805160206133f583398151915261036061170d565b6000805160206133d5833981519152546000906001600160a01b0316806365a69dcf8d85610f7e5730610f80565b8d5b8d8d8d8d8d8d8d6040518a63ffffffff1660e01b8152600401610fab9998979695949392919061306e565b602060405180830381865afa158015610fc8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fec91906130de565b9c9b505050505050505050505050565b600061104761100a856130f7565b3085858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611c8692505050565b949350505050565b60006107736000805160206133f583398151915283610efa565b6110746105db61170d565b6110905760405162461bcd60e51b8152600401610a5190612efa565b6002603354036110e25760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a51565b60026033556000805160206133d5833981519152546040516383e7f6ff60e01b81526001600160a01b039091169060009082906383e7f6ff9061112d90889088908890600401612f58565b6040805180830381865afa158015611149573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061116d9190612f7c565b6020810151815191925061118091612fca565b4710156111a05760405163050205f960e01b815260040160405180910390fd5b816001600160a01b031663acf1a841826020015183600001516111c39190612fca565b8787876040518563ffffffff1660e01b81526004016111e493929190612f58565b6000604051808303818588803b1580156111fd57600080fd5b505af1158015611211573d6000803e3d6000fd5b505060016033555050505050505050565b6000600080516020613415833981519152546001600160a01b031661124561170d565b6001600160a01b03161461126c576040516344e7d94960e01b815260040160405180910390fd5b600061127a83850185612800565b90506112858161171c565b60005b878110156112c4576112b28989838181106112a5576112a5612eb5565b90506020020135836117d3565b806112bc81612ee1565b915050611288565b5063bc197c8160e01b9a9950505050505050505050565b600054610100900460ff16158080156112fb5750600054600160ff909116105b806113155750303b158015611315575060005460ff166001145b6113785760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610a51565b6000805460ff19166001179055801561139b576000805461ff0019166101001790555b6000805160206133d583398151915280546001600160a01b038087166001600160a01b03199283161790925560008051602061341583398151915280548684169083161790557ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004805492851692909116919091179055611419611dc5565b611421611df3565b611429611df3565b611431611e1a565b611439611e51565b801561147f576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6114906105db61170d565b6114ac5760405162461bcd60e51b8152600401610a5190612efa565b6002603354036114fe5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a51565b600260338190555060006115478c8c8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061174e92505050565b905061155281611c03565b6115708c8c846115625730611564565b8c5b8c8c8c8c8c8c8c611e8a565b8161157f5761157f818b6117d3565b5050600160335550505050505050505050565b600082815260fb60205260409020600101546115ad8161193f565b6109bc8383611a68565b60006000805160206133d583398151915254604051631e29f97960e31b8152600481018490526001600160a01b039091169150819063f14fcbc890602401600060405180830381600087803b15801561160f57600080fd5b505af1158015611623573d6000803e3d6000fd5b505050505050565b6000600080516020613415833981519152546001600160a01b031661164e61170d565b6001600160a01b031614611675576040516344e7d94960e01b815260040160405180910390fd5b6001600160a01b038616156116a957600061169283850185612800565b905061169d8161171c565b6116a786826117d3565b505b5063f23a6e6160e01b9695505050505050565b6116c46119d7565b6116cd81611fd5565b6109d260008261204b565b60006001600160e01b03198216637965db0b60e01b148061077357506301ffc9a760e01b6001600160e01b0319831614610773565b6000611717612055565b905090565b6001600160a01b0381166109d25760405163b20f76e360e01b81526001600160a01b0382166004820152602401610a51565b60007f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae60001b826040516020016117859190613195565b604051602081830303815290604052805190602001206040516020016117b5929190918252602082015260400190565b60408051601f19818403018152919052805160209091012092915050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052819061181190606001610b09565b80546001600160a01b0319166001600160a01b039283161790556040519082169083907f45aa97e368889fb3527c1db60c59c2ae91e82f21778613449e46d4208c1c4b1290600090a35050565b606061186985612073565b600080876001600160a01b0316866118838b8a89896120d9565b6040516118909190613195565b60006040518083038160008787f1925050503d80600081146118ce576040519150601f19603f3d011682016040523d82523d6000602084013e6118d3565b606091505b5090925090506118e4603f876131b1565b5a116118f2576118f26131d3565b61193282826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c4544000000000000815250612109565b9998505050505050505050565b6109d28161194b61170d565b612142565b61195a8282610efa565b610a6457600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff1916600117905561199361170d565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6119df61170d565b6001600160a01b03166119fa6097546001600160a01b031690565b6001600160a01b031614610d905760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a51565b6109d26000805160206133f583398151915282611592565b611a728282610efa565b15610a6457600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff19169055611aa961170d565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101829052600090611b2c90606001610b09565b546001600160a01b0316905080611b595760405163124bad6360e31b815260048101839052602401610a51565b30600080516020613415833981519152546040516331a9108f60e11b8152600481018590526001600160a01b0390911690636352211e90602401602060405180830381865afa158015611bb0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bd491906131e9565b6001600160a01b031614611bfe576040516303b673fd60e21b815260048101839052602401610a51565b919050565b303303611c13576109d2816121a6565b6109d281612073565b6109d26000805160206133f58339815191528261204b565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015611ccd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cf191906130de565b90506000611d9f866060015180519060200120868860200151604051602001611d3f9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b9050818660200151148015610ef057508551610ef0906001600160a01b031682866121d0565b600054610100900460ff16611dec5760405162461bcd60e51b8152600401610a5190613206565b6001603355565b600054610100900460ff16610d905760405162461bcd60e51b8152600401610a5190613206565b600054610100900460ff16611e415760405162461bcd60e51b8152600401610a5190613206565b610d90611e4c61170d565b611c34565b600054610100900460ff16611e785760405162461bcd60e51b8152600401610a5190613206565b610d906000611e8561170d565b61204b565b6000805160206133d5833981519152546040516383e7f6ff60e01b81526001600160a01b039091169060009082906383e7f6ff90611ed0908f908f908e90600401612f58565b6040805180830381865afa158015611eec573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f109190612f7c565b60208101518151919250611f2391612fca565b471015611f435760405163050205f960e01b815260040160405180910390fd5b816001600160a01b03166374694a2b82602001518360000151611f669190612fca565b8e8e8e8e8e8e8e8e8e8e6040518c63ffffffff1660e01b8152600401611f959a99989796959493929190613251565b6000604051808303818588803b158015611fae57600080fd5b505af1158015611fc2573d6000803e3d6000fd5b5050505050505050505050505050505050565b611fdd6119d7565b6001600160a01b0381166120425760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610a51565b6109d281611c34565b610a648282611950565b600030330361206b575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290526000906060016040516020818303038152906040528051906020012090506120c88190565b546120d4906001612fca565b905550565b60608285856040516020016120f0939291906132c3565b6040516020818303038152906040529050949350505050565b60608315612118575081610990565b8251156121285782518084602001fd5b8160405162461bcd60e51b8152600401610a5191906127a4565b61214c8282610efa565b610a6457612164816001600160a01b03166014612312565b61216f836020612312565b604051602001612180929190613302565b60408051601f198184030181529082905262461bcd60e51b8252610a51916004016127a4565b6121ae6124ad565b81146109d257604051635637b6af60e11b815260048101829052602401610a51565b60008060006121df85856124c0565b909250905060008160048111156121f8576121f8613377565b1480156122165750856001600160a01b0316826001600160a01b0316145b1561222657600192505050610990565b600080876001600160a01b0316631626ba7e60e01b888860405160240161224e92919061338d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161228c9190613195565b600060405180830381855afa9150503d80600081146122c7576040519150601f19603f3d011682016040523d82523d6000602084013e6122cc565b606091505b50915091508180156122df575080516020145b801561230657508051630b135d3f60e11b9061230490830160209081019084016130de565b145b98975050505050505050565b606060006123218360026133a6565b61232c906002612fca565b6001600160401b0381111561234357612343612849565b6040519080825280601f01601f19166020018201604052801561236d576020820181803683370190505b509050600360fc1b8160008151811061238857612388612eb5565b60200101906001600160f81b031916908160001a905350600f60fb1b816001815181106123b7576123b7612eb5565b60200101906001600160f81b031916908160001a90535060006123db8460026133a6565b6123e6906001612fca565b90505b600181111561245e576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061241a5761241a612eb5565b1a60f81b82828151811061243057612430612eb5565b60200101906001600160f81b031916908160001a90535060049490941c93612457816133bd565b90506123e9565b5083156109905760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610a51565b60003033036120705750601f1936013590565b60008082516041036124f65760208301516040840151606085015160001a6124ea87828585612505565b945094505050506124fe565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561253c57506000905060036125e9565b8460ff16601b1415801561255457508460ff16601c14155b1561256557506000905060046125e9565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156125b9573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166125e2576000600192509250506125e9565b9150600090505b94509492505050565b60006020828403121561260457600080fd5b81356001600160e01b03198116811461099057600080fd5b6001600160a01b03811681146109d257600080fd5b60008083601f84011261264357600080fd5b5081356001600160401b0381111561265a57600080fd5b6020830191508360208285010111156124fe57600080fd5b60008060008060006080868803121561268a57600080fd5b85356126958161261c565b945060208601356126a58161261c565b93506040860135925060608601356001600160401b038111156126c757600080fd5b6126d388828901612631565b969995985093965092949392505050565b6000806000604084860312156126f957600080fd5b83356001600160401b038082111561271057600080fd5b908501906080828803121561272457600080fd5b9093506020850135908082111561273a57600080fd5b5061274786828701612631565b9497909650939450505050565b60005b8381101561276f578181015183820152602001612757565b50506000910152565b60008151808452612790816020860160208601612754565b601f01601f19169290920160200192915050565b6020815260006109906020830184612778565b6000602082840312156127c957600080fd5b5035919050565b600080604083850312156127e357600080fd5b8235915060208301356127f58161261c565b809150509250929050565b60006020828403121561281257600080fd5b81356109908161261c565b6000806040838503121561283057600080fd5b823561283b8161261c565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561288757612887612849565b604052919050565b600060208083850312156128a257600080fd5b82356001600160401b03808211156128b957600080fd5b818501915085601f8301126128cd57600080fd5b8135818111156128df576128df612849565b8060051b91506128f084830161285f565b818152918301840191848101908884111561290a57600080fd5b938501935b8385101561230657843592506129248361261c565b828252938501939085019061290f565b60008060006040848603121561294957600080fd5b83356001600160401b0381111561295f57600080fd5b61296b86828701612631565b909790965060209590950135949350505050565b60006001600160401b0383111561299857612998612849565b6129ab601f8401601f191660200161285f565b90508281528383830111156129bf57600080fd5b828260208301376000602084830101529392505050565b600082601f8301126129e757600080fd5b6109908383356020850161297f565b60008083601f840112612a0857600080fd5b5081356001600160401b03811115612a1f57600080fd5b6020830191508360208260051b85010111156124fe57600080fd5b80358015158114611bfe57600080fd5b803561ffff81168114611bfe57600080fd5b6000806000806000806000806000806101208b8d031215612a7c57600080fd5b8a356001600160401b0380821115612a9357600080fd5b612a9f8e838f016129d6565b9b5060208d01359150612ab18261261c565b90995060408c0135985060608c0135975060808c013590612ad18261261c565b90965060a08c01359080821115612ae757600080fd5b50612af48d828e016129f6565b9096509450612b07905060c08c01612a3a565b9250612b1560e08c01612a4a565b9150612b246101008c01612a3a565b90509295989b9194979a5092959850565b60008060008060008060008060a0898b031215612b5157600080fd5b8835612b5c8161261c565b97506020890135612b6c8161261c565b965060408901356001600160401b0380821115612b8857600080fd5b612b948c838d016129f6565b909850965060608b0135915080821115612bad57600080fd5b612bb98c838d016129f6565b909650945060808b0135915080821115612bd257600080fd5b50612bdf8b828c01612631565b999c989b5096995094979396929594505050565b600080600060608486031215612c0857600080fd5b8335612c138161261c565b92506020840135612c238161261c565b91506040840135612c338161261c565b809150509250925092565b60008060008060008060008060008060006101208c8e031215612c6057600080fd5b6001600160401b03808d351115612c7657600080fd5b612c838e8e358f01612631565b909c509a50612c9560208e013561261c565b60208d0135995060408d0135985060608d01359750612cb760808e013561261c565b60808d013596508060a08e01351115612ccf57600080fd5b50612ce08d60a08e01358e016129f6565b9095509350612cf160c08d01612a3a565b9250612cff60e08d01612a4a565b9150612d0e6101008d01612a3a565b90509295989b509295989b9093969950565b60008060008060008060a08789031215612d3957600080fd5b8635612d448161261c565b95506020870135612d548161261c565b9450604087013593506060870135925060808701356001600160401b03811115612d7d57600080fd5b612d8989828a01612631565b979a9699509497509295939492505050565b600080600060608486031215612db057600080fd5b8335612dbb8161261c565b92506020840135612dcb8161261c565b915060408401356001600160401b03811115612de657600080fd5b612df2868287016129d6565b9150509250925092565b608081526000612e0f6080830187612778565b6001600160a01b03958616602084015261ffff949094166040830152509216606090920191909152919050565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090610ef090830184612778565b6000808335601e19843603018112612e8657600080fd5b8301803591506001600160401b03821115612ea057600080fd5b6020019150368190038213156124fe57600080fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201612ef357612ef3612ecb565b5060010190565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b604081526000612f6c604083018587612f2f565b9050826020830152949350505050565b600060408284031215612f8e57600080fd5b604051604081018181106001600160401b0382111715612fb057612fb0612849565b604052825181526020928301519281019290925250919050565b8082018082111561077357610773612ecb565b81835260006020808501808196508560051b810191508460005b878110156130615782840389528135601e1988360301811261301857600080fd5b870185810190356001600160401b0381111561303357600080fd5b80360382131561304257600080fd5b61304d868284612f2f565b9a87019a9550505090840190600101612ff7565b5091979650505050505050565b60006101008083526130828184018d612778565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a085015290506130bc818789612fdd565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b6000602082840312156130f057600080fd5b5051919050565b60006080823603121561310957600080fd5b604051608081016001600160401b03828210818311171561312c5761312c612849565b816040528435915061313d8261261c565b8183526020850135602084015260408501356040840152606085013591508082111561316857600080fd5b50830136601f82011261317a57600080fd5b6131893682356020840161297f565b60608301525092915050565b600082516131a7818460208701612754565b9190910192915050565b6000826131ce57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b6000602082840312156131fb57600080fd5b81516109908161261c565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60006101008083526132668184018d8f612f2f565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a085015290506132a0818789612fdd565b94151560c0840152505061ffff9190911660e09091015298975050505050505050565b600084516132d5818460208901612754565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081526000835161333a816017850160208801612754565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835161336b816028840160208801612754565b01602801949350505050565b634e487b7160e01b600052602160045260246000fd5b8281526040602082015260006110476040830184612778565b808202811582820484141761077357610773612ecb565b6000816133cc576133cc612ecb565b50600019019056fe412386de53449251cbf7ce1f4c6a038bf9c0746e62d331b08ef0c3fa7d0ab6729f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a660793a5062d506d35cc8f1beda67ee5028c16bfcd9c923d5bfc439c04bd929b1a164736f6c6343000811000a","storage":{"0x0":"0xff"}},"0xc58206842e4030a3b2cabc78780ae7635173c533":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106102325760003560e01c80637c69eae211610130578063b5466669116100b8578063d284d97a1161007c578063d284d97a14610d4e578063d8d3cc6e14610dbc578063e67ca8a314610e3f578063e985e9c514610e5c578063ebf0c71714610e8a57610232565b8063b5466669146109ce578063b88d4fde14610a51578063c29b52f914610b15578063c87b56dd14610c5e578063ce9fb82b14610c7b57610232565b8063a22cb465116100ff578063a22cb4651461090b578063a7fc7a0714610939578063ab3b87fe1461095f578063b3f9e4cb1461098b578063b429afeb146109a857610232565b80637c69eae21461076457806395d89b41146107e75780639d743989146107ef5780639e5be9a51461087d57610232565b806342842e0e116101be5780635cbe1112116101825780635cbe11121461061d5780636352211e1461069257806366ac3b68146106af57806368b62d32146106b757806370a082311461073e57610232565b806342842e0e146104ed57806342966c6814610523578063430c208114610540578063538361a71461056c57806357aac5741461058f57610232565b8063081812fc11610205578063081812fc146103fa578063095ea7b3146104335780632392c1891461045f57806323b872dd1461048b5780632525d06a146104c157610232565b806301ffc9a71461023757806302759c37146102725780630467e014146102aa57806306fdde031461037d575b600080fd5b61025e6004803603602081101561024d57600080fd5b50356001600160e01b031916610e92565b604080519115158252519081900360200190f35b6102a86004803603606081101561028857600080fd5b506001600160a01b03813581169160208101359091169060400135610eb1565b005b6102a8600480360360808110156102c057600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156102ef57600080fd5b82018360208201111561030157600080fd5b803590602001918460018302840111600160201b8311171561032257600080fd5b919390929091602081019035600160201b81111561033f57600080fd5b82018360208201111561035157600080fd5b803590602001918460018302840111600160201b8311171561037257600080fd5b509092509050610ed3565b610385610f62565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103bf5781810151838201526020016103a7565b50505050905090810190601f1680156103ec5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6104176004803603602081101561041057600080fd5b5035610f84565b604080516001600160a01b039092168252519081900360200190f35b6102a86004803603604081101561044957600080fd5b506001600160a01b038135169060200135610fe6565b6102a86004803603604081101561047557600080fd5b506001600160a01b0381351690602001356110f7565b6102a8600480360360608110156104a157600080fd5b506001600160a01b03813581169160208101359091169060400135611115565b6102a8600480360360408110156104d757600080fd5b506001600160a01b03813516906020013561115a565b6102a86004803603606081101561050357600080fd5b506001600160a01b0381358116916020810135909116906040013561117a565b6102a86004803603602081101561053957600080fd5b5035611195565b61025e6004803603604081101561055657600080fd5b506001600160a01b0381351690602001356111e6565b6102a86004803603604081101561058257600080fd5b50803590602001356111f9565b6102a8600480360360808110156105a557600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156105df57600080fd5b8201836020820111156105f157600080fd5b803590602001918460018302840111600160201b8311171561061257600080fd5b50909250905061124f565b6102a86004803603604081101561063357600080fd5b81359190810190604081016020820135600160201b81111561065457600080fd5b82018360208201111561066657600080fd5b803590602001918460018302840111600160201b8311171561068757600080fd5b5090925090506112be565b610417600480360360208110156106a857600080fd5b5035611320565b6102a861137a565b61072c600480360360408110156106cd57600080fd5b81359190810190604081016020820135600160201b8111156106ee57600080fd5b82018360208201111561070057600080fd5b803590602001918460018302840111600160201b8311171561072157600080fd5b509092509050611385565b60408051918252519081900360200190f35b61072c6004803603602081101561075457600080fd5b50356001600160a01b03166113cf565b6102a86004803603606081101561077a57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156107a957600080fd5b8201836020820111156107bb57600080fd5b803590602001918460018302840111600160201b831117156107dc57600080fd5b509092509050611437565b61038561149a565b6102a86004803603608081101561080557600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561083f57600080fd5b82018360208201111561085157600080fd5b803590602001918460018302840111600160201b8311171561087257600080fd5b5090925090506114b6565b6102a86004803603608081101561089357600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156108cd57600080fd5b8201836020820111156108df57600080fd5b803590602001918460018302840111600160201b8311171561090057600080fd5b509092509050611506565b6102a86004803603604081101561092157600080fd5b506001600160a01b0381351690602001351515611564565b6102a86004803603602081101561094f57600080fd5b50356001600160a01b0316611630565b6102a86004803603604081101561097557600080fd5b506001600160a01b03813516906020013561164b565b610417600480360360208110156109a157600080fd5b5035611672565b61025e600480360360208110156109be57600080fd5b50356001600160a01b0316611694565b6102a8600480360360608110156109e457600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610a1357600080fd5b820183602082011115610a2557600080fd5b803590602001918460018302840111600160201b83111715610a4657600080fd5b5090925090506116a7565b6102a860048036036080811015610a6757600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b811115610aa157600080fd5b820183602082011115610ab357600080fd5b803590602001918460018302840111600160201b83111715610ad457600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506116fa945050505050565b6102a8600480360360a0811015610b2b57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b811115610b6557600080fd5b820183602082011115610b7757600080fd5b803590602001918460018302840111600160201b83111715610b9857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b811115610bea57600080fd5b820183602082011115610bfc57600080fd5b803590602001918460018302840111600160201b83111715610c1d57600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061174c945050505050565b61038560048036036020811015610c7457600080fd5b5035611797565b6102a860048036036080811015610c9157600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610cc057600080fd5b820183602082011115610cd257600080fd5b803590602001918460018302840111600160201b83111715610cf357600080fd5b919390929091602081019035600160201b811115610d1057600080fd5b820183602082011115610d2257600080fd5b803590602001918460018302840111600160201b83111715610d4357600080fd5b509092509050611892565b6102a860048036036020811015610d6457600080fd5b810190602081018135600160201b811115610d7e57600080fd5b820183602082011115610d9057600080fd5b803590602001918460018302840111600160201b83111715610db157600080fd5b50909250905061191b565b6102a860048036036060811015610dd257600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610e0157600080fd5b820183602082011115610e1357600080fd5b803590602001918460018302840111600160201b83111715610e3457600080fd5b50909250905061199e565b6102a860048036036020811015610e5557600080fd5b50356119f3565b61025e60048036036040811015610e7257600080fd5b506001600160a01b0381358116916020013516611a05565b61072c611a33565b6001600160e01b03191660009081526020819052604090205460ff1690565b610eba33611694565b610ec357600080fd5b610ece838383611a57565b505050565b610edc33611694565b610ee557600080fd5b610f5a868686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8a018190048102820181019092528881529250889150879081908401838280828437600092019190915250611a9f92505050565b505050505050565b6040805180820190915260078152662e63727970746f60c81b60208201525b90565b6000610f8f82611ac9565b610fca5760405162461bcd60e51b815260040180806020018281038252602c815260200180612848602c913960400191505060405180910390fd5b506000908152600360205260409020546001600160a01b031690565b6000610ff182611320565b9050806001600160a01b0316836001600160a01b031614156110445760405162461bcd60e51b81526004018080602001828103825260218152602001806128bf6021913960400191505060405180910390fd5b336001600160a01b038216148061106057506110608133611a05565b61109b5760405162461bcd60e51b815260040180806020018281038252603881526020018061279c6038913960400191505060405180910390fd5b60008281526003602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b806111023382611ae6565b61110b57600080fd5b610ece8383611b82565b61111f3382611ae6565b610ec35760405162461bcd60e51b81526004018080602001828103825260318152602001806128e06031913960400191505060405180910390fd5b61116333611694565b61116c57600080fd5b6111768282611b82565b5050565b610ece838383604051806020016040528060008152506116fa565b61119f3382611ae6565b6111da5760405162461bcd60e51b81526004018080602001828103825260308152602001806129366030913960400191505060405180910390fd5b6111e381611bf8565b50565b60006111f28383611ae6565b9392505050565b6000828152600860205260409020546001600160a01b0316331461121c57600080fd5b6040518290829033907ff10fc780c78f994a214c79a2ae8d8b7bfe7cc3f0f935a8f05a29525e71d7f12790600090a45050565b61125833611694565b61126157600080fd5b61126c858585611a57565b6112ae85858585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611c7992505050565b6112b757600080fd5b5050505050565b826112c93382611ae6565b6112d257600080fd5b61131a6113158585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b611bf8565b50505050565b6000818152600260205260408120546001600160a01b0316806113745760405162461bcd60e51b81526004018080602001828103825260298152602001806127fe6029913960400191505060405180910390fd5b92915050565b61138333611e64565b565b60006113c78484848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b949350505050565b60006001600160a01b0382166114165760405162461bcd60e51b815260040180806020018281038252602a8152602001806127d4602a913960400191505060405180910390fd5b6001600160a01b038216600090815260046020526040902061137490611e75565b826114423382611ae6565b61144b57600080fd5b6112b7858585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250611a9f915050565b604080518082019091526002815261155160f21b602082015290565b6112b785858585858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201829052506040805160208101909152908152925061174c915050565b826115113382611ae6565b61151a57600080fd5b610f5a868661155f8787878080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b611a57565b6001600160a01b0382163314156115c2576040805162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604482015290519081900360640190fd5b3360008181526005602090815260408083206001600160a01b03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b61163933611694565b61164257600080fd5b6111e381611e79565b806116563382611ae6565b61165f57600080fd5b610ece61166b83611320565b8484611e8a565b6000818152600860205260408120546001600160a01b03168061137457600080fd5b600061137460018363ffffffff611fce16565b6116b033611694565b6116b957600080fd5b61131a848484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061203592505050565b611705848484611115565b61171184848484611c79565b61131a5760405162461bcd60e51b815260040180806020018281038252603281526020018061271a6032913960400191505060405180910390fd5b826117573382611ae6565b61176057600080fd5b600061176c8585611dac565b9050611779878783611a57565b61178587878386611c79565b61178e57600080fd5b50505050505050565b60606117a282611ac9565b6117ab57600080fd5b600760066000848152602001908152602001600020604051602001808380546001816001161561010002031660029004801561181e5780601f106117fc57610100808354040283529182019161181e565b820191906000526020600020905b81548152906001019060200180831161180a575b5050828054600181600116156101000203166002900480156118775780601f10611855576101008083540402835291820191611877565b820191906000526020600020905b815481529060010190602001808311611863575b505060408051601f1981840301815291905295945050505050565b8461189d3382611ae6565b6118a657600080fd5b61178e878787878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b018190048102820181019092528981529250899150889081908401838280828437600092019190915250611a9f92505050565b61192433611694565b61192d57600080fd5b611939600783836125cf565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b828260405180806020018281038252848482818152602001925080828437600083820152604051601f909101601f19169092018290039550909350505050a15050565b826119a93382611ae6565b6119b257600080fd5b6112b7858585858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061203592505050565b6119fc33611694565b6111da57600080fd5b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b7f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f90565b611a62838383611e8a565b6000818152600860205260409020546001600160a01b031615610ece57600090815260086020526040902080546001600160a01b03191690555050565b611aaa848484612035565b611ac0600085611aba8686611dac565b84611c79565b61131a57600080fd5b6000908152600260205260409020546001600160a01b0316151590565b6000611af182611ac9565b611b2c5760405162461bcd60e51b815260040180806020018281038252602c815260200180612770602c913960400191505060405180910390fd5b6000611b3783611320565b9050806001600160a01b0316846001600160a01b03161480611b725750836001600160a01b0316611b6784610f84565b6001600160a01b0316145b806113c757506113c78185611a05565b611b8b81611ac9565b611b9457600080fd5b6040516001600160a01b0383169082907fb1b34e6d89e1c584527d447f4b29ffad55635a37edeeb564939a6483401b31a590600090a3600090815260086020526040902080546001600160a01b0319166001600160a01b0392909216919091179055565b611c018161220f565b6000818152600860205260409020546001600160a01b031615611c3b57600081815260086020526040902080546001600160a01b03191690555b60008181526006602052604090205460026000196101006001841615020190911604156111e35760008181526006602052604081206111e39161264d565b6000611c8d846001600160a01b0316612221565b611c99575060016113c7565b604051630a85bd0160e11b815233600482018181526001600160a01b03888116602485015260448401879052608060648501908152865160848601528651600095928a169463150b7a029490938c938b938b939260a4019060208501908083838e5b83811015611d13578181015183820152602001611cfb565b50505050905090810190601f168015611d405780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015611d6257600080fd5b505af1158015611d76573d6000803e3d6000fd5b505050506040513d6020811015611d8c57600080fd5b50516001600160e01b031916630a85bd0160e11b14915050949350505050565b6000815160001415611dbd57600080fd5b82826040516020018082805190602001908083835b60208310611df15780518252601f199092019160209182019101611dd2565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040528051906020012060405160200180838152602001828152602001925050506040516020818303038152906040528051906020012060001c905092915050565b6111e360018263ffffffff61222716565b5490565b6111e360018263ffffffff61228e16565b826001600160a01b0316611e9d82611320565b6001600160a01b031614611ee25760405162461bcd60e51b81526004018080602001828103825260298152602001806128966029913960400191505060405180910390fd5b6001600160a01b038216611f275760405162461bcd60e51b815260040180806020018281038252602481526020018061274c6024913960400191505060405180910390fd5b611f308161230f565b6001600160a01b0383166000908152600460205260409020611f519061234a565b6001600160a01b0382166000908152600460205260409020611f7290612361565b60008181526002602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60006001600160a01b0382166120155760405162461bcd60e51b81526004018080602001828103825260228152602001806128746022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b60006120418383611dac565b905061204d848261236a565b815161205857600080fd5b61206181611ac9565b61206a57600080fd5b606082600660008681526020019081526020016000206040516020018083805190602001908083835b602083106120b25780518252601f199092019160209182019101612093565b6001836020036101000a03801982511681845116808217855250505050505090500180601760f91b815250600101828054600181600116156101000203166002900480156121375780601f10612115576101008083540402835291820191612137565b820191906000526020600020905b815481529060010190602001808311612123575b505060408051601f19818403018152918152600087815260066020908152919020825192965061216d9550935085019150612691565b50817fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952826040518080602001828103825283818151815260200191508051906020019080838360005b838110156121ce5781810151838201526020016121b6565b50505050905090810190601f1680156121fb5780820380516001836020036101000a031916815260200191505b509250505060405180910390a25050505050565b6111e361221b82611320565b8261249b565b3b151590565b6122318282611fce565b61226c5760405162461bcd60e51b81526004018080602001828103825260218152602001806128276021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff19169055565b6122988282611fce565b156122ea576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b6000818152600360205260409020546001600160a01b0316156111e357600090815260036020526040902080546001600160a01b0319169055565b805461235d90600163ffffffff61257216565b9055565b80546001019055565b6001600160a01b0382166123c5576040805162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f2061646472657373604482015290519081900360640190fd5b6123ce81611ac9565b15612420576040805162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000604482015290519081900360640190fd5b600081815260026020908152604080832080546001600160a01b0319166001600160a01b03871690811790915583526004909152902061245f90612361565b60405181906001600160a01b038416906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b816001600160a01b03166124ae82611320565b6001600160a01b0316146124f35760405162461bcd60e51b81526004018080602001828103825260258152602001806129116025913960400191505060405180910390fd5b6124fc8161230f565b6001600160a01b038216600090815260046020526040902061251d9061234a565b60008181526002602052604080822080546001600160a01b0319169055518291906001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6000828211156125c9576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106126105782800160ff1982351617855561263d565b8280016001018555821561263d579182015b8281111561263d578235825591602001919060010190612622565b506126499291506126ff565b5090565b50805460018160011615610100020316600290046000825580601f1061267357506111e3565b601f0160209004906000526020600020908101906111e391906126ff565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106126d257805160ff191683800117855561263d565b8280016001018555821561263d579182015b8281111561263d5782518255916020019190600101906126e4565b610f8191905b80821115612649576000815560010161270556fe4552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c654552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e526f6c65733a206163636f756e7420697320746865207a65726f20616464726573734552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f7665644552433732313a206275726e206f6620746f6b656e2074686174206973206e6f74206f776e4552433732314275726e61626c653a2063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564a265627a7a72315820fb6a1b26cc352dbb05e6627fd530bbb44114ac3a349f30d1f071136c656d20dc64736f6c634300050c0032","storage":{"0x7":"0x68747470733a2f2f6578616d706c652e636f6d2f000000000000000000000028","0xbdf39e9e65b2355b1b0b06df799c09159f0ab90f06a9bb2153f5de7d9b0ea81":"0x1","0x1a306d3e9bf29128dee78d8d16c9f378a11bbdf917a9caf986fc6e60846e37e7":"0x63727970746f000000000000000000000000000000000000000000000000000c","0x42c63635470f1fb1d6d4b6441c413cb435b1ebb6fedd1896dd5e25d1399147dd":"0x1","0x605d7a0bb2b20c4004d356eb969ff104dcca62360aa356247072f5e0df6472e3":"0xdead","0x67be87c3ff9960ca1e9cfac5cab2ff4747269cf9ed20c9b7306235ac35a491c5":"0x1","0x70f464f95f9ab7aba03264fd4cac1711d774d3703ce74217180264d4efc2105f":"0x1","0x76a72f26a108e6f3f687141f5f42d21d65857c03cb1b01aa1284f9a9ccd085da":"0x1","0x9562381dfbc2d8b8b66e765249f330164b73e329e5f01670660643571d1974df":"0x1","0x9f23d2403fb64167582d316b1bc5b35a6ed48524341ab24947c71df77304b29e":"0x1","0xf7815fccbf112960a73756e185887fedcb9fc64ca0a16cc5923b7960ed780800":"0x1"}},"0xc965345edac823d56812cd20a10316233916a605":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101c6575f3560e01c806395d89b41116100fe578063c87b56dd1161009e578063e985e9c51161006e578063e985e9c5146103d4578063f2fde38b1461040f578063f6a74ed714610422578063fca247ac14610435575f80fd5b8063c87b56dd14610377578063d6e4fa861461038a578063da8c229e146103a9578063ddf7fcb0146103cb575f80fd5b8063a7fc7a07116100d9578063a7fc7a0714610334578063b88d4fde14610347578063c1a287e21461035a578063c475abff14610364575f80fd5b806395d89b411461030657806396e494e81461030e578063a22cb46514610321575f80fd5b80633f15457f116101695780636352211e116101445780636352211e146102c757806370a08231146102da578063715018a6146102ed5780638da5cb5b146102f5575f80fd5b80633f15457f1461028e57806342842e0e146102a15780634e543b26146102b4575f80fd5b8063095ea7b3116101a4578063095ea7b3146102325780630e297b451461024757806323b872dd1461026857806328ed4f6c1461027b575f80fd5b806301ffc9a7146101ca57806306fdde03146101f2578063081812fc14610207575b5f80fd5b6101dd6101d83660046117dd565b610448565b60405190151581526020015b60405180910390f35b6101fa610499565b6040516101e99190611845565b61021a610215366004611857565b610528565b6040516001600160a01b0390911681526020016101e9565b610245610240366004611882565b61054d565b005b61025a6102553660046118ac565b610666565b6040519081526020016101e9565b6102456102763660046118e1565b61067b565b61024561028936600461190e565b6106ac565b60085461021a906001600160a01b031681565b6102456102af3660046118e1565b6107be565b6102456102c236600461193c565b6107d8565b61021a6102d5366004611857565b610848565b61025a6102e836600461193c565b610869565b6102456108ed565b6006546001600160a01b031661021a565b6101fa610900565b6101dd61031c366004611857565b61090f565b61024561032f366004611957565b610934565b61024561034236600461193c565b610943565b61024561035536600461199b565b610996565b61025a6276a70081565b61025a610372366004611a74565b6109ce565b6101fa610385366004611857565b610b52565b61025a610398366004611857565b5f9081526007602052604090205490565b6101dd6103b736600461193c565b600a6020525f908152604090205460ff1681565b61025a60095481565b6101dd6103e2366004611a94565b6001600160a01b039182165f90815260056020908152604080832093909416825291909152205460ff1690565b61024561041d36600461193c565b610bc2565b61024561043036600461193c565b610c3b565b61025a6104433660046118ac565b610c8b565b5f6001600160e01b031982166301ffc9a760e01b148061047857506001600160e01b031982166380ac58cd60e01b145b8061049357506001600160e01b03198216630a3b53db60e21b145b92915050565b60605f80546104a790611ac0565b80601f01602080910402602001604051908101604052809291908181526020018280546104d390611ac0565b801561051e5780601f106104f55761010080835404028352916020019161051e565b820191905f5260205f20905b81548152906001019060200180831161050157829003601f168201915b5050505050905090565b5f61053282610c99565b505f908152600460205260409020546001600160a01b031690565b5f61055782610cf7565b9050806001600160a01b0316836001600160a01b0316036105c95760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084015b60405180910390fd5b336001600160a01b03821614806105e557506105e581336103e2565b6106575760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016105c0565b6106618383610d56565b505050565b5f6106738484845f610dc3565b949350505050565b6106853382610fc7565b6106a15760405162461bcd60e51b81526004016105c090611af8565b610661838383611040565b6008546009546040516302571be360e01b8152600481019190915230916001600160a01b0316906302571be390602401602060405180830381865afa1580156106f7573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061071b9190611b45565b6001600160a01b03161461072d575f80fd5b6107373383610fc7565b61073f575f80fd5b6008546009546040516306ab592360e01b81526004810191909152602481018490526001600160a01b038381166044830152909116906306ab5923906064016020604051808303815f875af115801561079a573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106619190611b60565b61066183838360405180602001604052805f815250610996565b6107e06111a2565b600854600954604051630c4b7b8560e11b815260048101919091526001600160a01b03838116602483015290911690631896f70a906044015f604051808303815f87803b15801561082f575f80fd5b505af1158015610841573d5f803e3d5ffd5b5050505050565b5f818152600760205260408120544210610860575f80fd5b61049382610cf7565b5f6001600160a01b0382166108d25760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b60648201526084016105c0565b506001600160a01b03165f9081526003602052604090205490565b6108f56111a2565b6108fe5f6111fc565b565b6060600180546104a790611ac0565b5f81815260076020526040812054429061092d906276a70090611b77565b1092915050565b61093f33838361124d565b5050565b61094b6111a2565b6001600160a01b0381165f818152600a6020526040808220805460ff19166001179055517f0a8bb31534c0ed46f380cb867bd5c803a189ced9a764e30b3a4991a9901d74749190a250565b6109a03383610fc7565b6109bc5760405162461bcd60e51b81526004016105c090611af8565b6109c88484848461131a565b50505050565b6008546009546040516302571be360e01b815260048101919091525f9130916001600160a01b03909116906302571be390602401602060405180830381865afa158015610a1d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a419190611b45565b6001600160a01b031614610a53575f80fd5b335f908152600a602052604090205460ff16610a6d575f80fd5b5f838152600760205260409020544290610a8b906276a70090611b77565b1015610a95575f80fd5b610aa26276a70083611b77565b5f848152600760205260409020546276a70090610ac0908590611b77565b610aca9190611b77565b11610ad3575f80fd5b5f8381526007602052604081208054849290610af0908490611b77565b90915550505f838152600760205260409081902054905184917f9b87a00e30f1ac65d898f070f8a3488fe60517182d0a2098e1b4b93a54aa9bd691610b3791815260200190565b60405180910390a250505f9081526007602052604090205490565b6060610b5d82610c99565b5f610b7260408051602081019091525f815290565b90505f815111610b905760405180602001604052805f815250610bbb565b80610b9a8461134d565b604051602001610bab929190611b96565b6040516020818303038152906040525b9392505050565b610bca6111a2565b6001600160a01b038116610c2f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016105c0565b610c38816111fc565b50565b610c436111a2565b6001600160a01b0381165f818152600a6020526040808220805460ff19169055517f33d83959be2573f5453b12eb9d43b3499bc57d96bd2f067ba44803c859e811139190a250565b5f6106738484846001610dc3565b5f818152600260205260409020546001600160a01b0316610c385760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105c0565b5f818152600260205260408120546001600160a01b0316806104935760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105c0565b5f81815260046020526040902080546001600160a01b0319166001600160a01b0384169081179091558190610d8a82610cf7565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6008546009546040516302571be360e01b815260048101919091525f9130916001600160a01b03909116906302571be390602401602060405180830381865afa158015610e12573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e369190611b45565b6001600160a01b031614610e48575f80fd5b335f908152600a602052604090205460ff16610e62575f80fd5b610e6b8561090f565b610e73575f80fd5b610e806276a70042611b77565b6276a700610e8e8542611b77565b610e989190611b77565b11610ea1575f80fd5b610eab8342611b77565b5f868152600760209081526040808320939093556002905220546001600160a01b031615610edc57610edc856113dd565b610ee6848661146f565b8115610f6d576008546009546040516306ab592360e01b81526004810191909152602481018790526001600160a01b038681166044830152909116906306ab5923906064016020604051808303815f875af1158015610f47573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f6b9190611b60565b505b6001600160a01b038416857fb3d987963d01b2f68493b4bdb130988f157ea43070d4ad840fee0466ed9370d9610fa38642611b77565b60405190815260200160405180910390a3610fbe8342611b77565b95945050505050565b5f80610fd283610848565b9050806001600160a01b0316846001600160a01b0316148061100d5750836001600160a01b031661100284610528565b6001600160a01b0316145b8061067357506001600160a01b038082165f9081526005602090815260408083209388168352929052205460ff16610673565b826001600160a01b031661105382610cf7565b6001600160a01b0316146110795760405162461bcd60e51b81526004016105c090611bc4565b6001600160a01b0382166110db5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b60648201526084016105c0565b826001600160a01b03166110ee82610cf7565b6001600160a01b0316146111145760405162461bcd60e51b81526004016105c090611bc4565b5f81815260046020908152604080832080546001600160a01b03199081169091556001600160a01b038781168086526003855283862080545f1901905590871680865283862080546001019055868652600290945282852080549092168417909155905184937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6006546001600160a01b031633146108fe5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016105c0565b600680546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b816001600160a01b0316836001600160a01b0316036112ae5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c65720000000000000060448201526064016105c0565b6001600160a01b038381165f81815260056020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b611325848484611040565b611331848484846115f7565b6109c85760405162461bcd60e51b81526004016105c090611c09565b60605f611359836116f1565b60010190505f8167ffffffffffffffff81111561137857611378611987565b6040519080825280601f01601f1916602001820160405280156113a2576020820181803683370190505b5090508181016020015b5f19016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a85049450846113ac57509392505050565b5f6113e782610cf7565b90506113f282610cf7565b5f83815260046020908152604080832080546001600160a01b03199081169091556001600160a01b0385168085526003845282852080545f190190558785526002909352818420805490911690555192935084927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6001600160a01b0382166114c55760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f206164647265737360448201526064016105c0565b5f818152600260205260409020546001600160a01b0316156115295760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105c0565b5f818152600260205260409020546001600160a01b03161561158d5760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105c0565b6001600160a01b0382165f81815260036020908152604080832080546001019055848352600290915280822080546001600160a01b0319168417905551839291907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b5f6001600160a01b0384163b156116e957604051630a85bd0160e11b81526001600160a01b0385169063150b7a029061163a903390899088908890600401611c5b565b6020604051808303815f875af1925050508015611674575060408051601f3d908101601f1916820190925261167191810190611c97565b60015b6116cf573d8080156116a1576040519150601f19603f3d011682016040523d82523d5f602084013e6116a6565b606091505b5080515f036116c75760405162461bcd60e51b81526004016105c090611c09565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610673565b506001610673565b5f8072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b831061172f5772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef8100000000831061175b576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc10000831061177957662386f26fc10000830492506010015b6305f5e1008310611791576305f5e100830492506008015b61271083106117a557612710830492506004015b606483106117b7576064830492506002015b600a83106104935760010192915050565b6001600160e01b031981168114610c38575f80fd5b5f602082840312156117ed575f80fd5b8135610bbb816117c8565b5f5b838110156118125781810151838201526020016117fa565b50505f910152565b5f81518084526118318160208601602086016117f8565b601f01601f19169290920160200192915050565b602081525f610bbb602083018461181a565b5f60208284031215611867575f80fd5b5035919050565b6001600160a01b0381168114610c38575f80fd5b5f8060408385031215611893575f80fd5b823561189e8161186e565b946020939093013593505050565b5f805f606084860312156118be575f80fd5b8335925060208401356118d08161186e565b929592945050506040919091013590565b5f805f606084860312156118f3575f80fd5b83356118fe8161186e565b925060208401356118d08161186e565b5f806040838503121561191f575f80fd5b8235915060208301356119318161186e565b809150509250929050565b5f6020828403121561194c575f80fd5b8135610bbb8161186e565b5f8060408385031215611968575f80fd5b82356119738161186e565b915060208301358015158114611931575f80fd5b634e487b7160e01b5f52604160045260245ffd5b5f805f80608085870312156119ae575f80fd5b84356119b98161186e565b935060208501356119c98161186e565b925060408501359150606085013567ffffffffffffffff808211156119ec575f80fd5b818701915087601f8301126119ff575f80fd5b813581811115611a1157611a11611987565b604051601f8201601f19908116603f01168101908382118183101715611a3957611a39611987565b816040528281528a6020848701011115611a51575f80fd5b826020860160208301375f60208483010152809550505050505092959194509250565b5f8060408385031215611a85575f80fd5b50508035926020909101359150565b5f8060408385031215611aa5575f80fd5b8235611ab08161186e565b915060208301356119318161186e565b600181811c90821680611ad457607f821691505b602082108103611af257634e487b7160e01b5f52602260045260245ffd5b50919050565b6020808252602d908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526c1c881bdc88185c1c1c9bdd9959609a1b606082015260800190565b5f60208284031215611b55575f80fd5b8151610bbb8161186e565b5f60208284031215611b70575f80fd5b5051919050565b8082018082111561049357634e487b7160e01b5f52601160045260245ffd5b5f8351611ba78184602088016117f8565b835190830190611bbb8183602088016117f8565b01949350505050565b60208082526025908201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060408201526437bbb732b960d91b606082015260800190565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6001600160a01b03858116825284166020820152604081018390526080606082018190525f90611c8d9083018461181a565b9695505050505050565b5f60208284031215611ca7575f80fd5b8151610bbb816117c856fea164736f6c6343000818000a","storage":{"0x0":"0x0","0x1":"0x0","0x6":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x8":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0x9":"0x93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae","0x9b8bc185dce56a7ea1b27d35e40ac15dcdf9144303dfd4d8880220078bf21a2c":"0x1","0xdb5e6a17df8534b92b0c8de590f14b4fb4b5eb2c62ef1bf7a05555e354797508":"0x1","0xe1a982900207b619cb6c39be8cb5e60da1370171412fb65b5efc25e2dce3c34c":"0x1"}},"0xce4bb7dc1eb9dce75743de6a4b48534fd427ef51":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xe85541865bbb62a05064ce5c9f41cc293a8ea996","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0xd178b720229c39de617846f84cf9c8d32a63a23d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610106575f3560e01c806371017a541161009e5780639e32d3641161006e5780639e32d3641461025a578063a424740014610281578063dd6b9e2214610294578063e1c4b65a146102a7578063e35a14e5146102ba575f80fd5b806371017a541461020e5780637b103999146102215780638f0dbd25146102345780639810b69514610247575f80fd5b8063485cc955116100d9578063485cc95514610191578063572b6c05146101a457806358884432146101d05780636ccbae5f146101fb575f80fd5b8063150b7a021461010a5780631694116d1461013b5780631bf7e13e146101505780631c351a9d14610170575b5f80fd5b61011d610118366004611434565b6102e2565b6040516001600160e01b031990911681526020015b60405180910390f35b61014e6101493660046114e3565b610372565b005b61016361015e366004611549565b61040d565b6040516101329190611601565b61018361017e366004611613565b6104d6565b604051908152602001610132565b61014e61019f366004611666565b6105c3565b6101c06101b236600461169d565b6001600160a01b0316301490565b6040519015158152602001610132565b6067546101e3906001600160a01b031681565b6040516001600160a01b039091168152602001610132565b6101836102093660046116b8565b6106f8565b6101e361021c3660046116cf565b610751565b6066546101e3906001600160a01b031681565b61014e6102423660046116ef565b610791565b6101e36102553660046116cf565b610806565b6101837fd81bbfcee722494b885e891546eeac23d0eedcd44038d7a2f6ef9ec2f9e0d23981565b6101c061028f366004611549565b61085f565b6101c06102a236600461172d565b6108a8565b61014e6102b5366004611771565b61091d565b6101e36102c83660046116b8565b5f908152606560205260409020546001600160a01b031690565b6066545f906001600160a01b03166102f8610a43565b6001600160a01b031614158061032257505f848152606560205260409020546001600160a01b0316155b156103605783610330610a43565b60405163634afa0d60e01b815260048101929092526001600160a01b031660248201526044015b60405180910390fd5b50630a85bd0160e11b95945050505050565b828261037e8282610751565b6001600160a01b031661038f610a43565b6001600160a01b0316146103c057604051632cd9b44d60e11b81526004810183905260248101829052604401610357565b5f6103cb8686610806565b90505f5b87811015610402576103fa8989838181106103ec576103ec6117b0565b905060200201358387610a51565b6001016103cf565b505050505050505050565b60605f5a905061041e85858561085f565b61043b57604051638baa579f60e01b815260040160405180910390fd5b6104cb61044b602087018761169d565b3060408801358461045f60608b018b6117c4565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f92019190915250610b8492505050565b9150505b9392505050565b6067545f906001600160a01b031663aa271e1a6104f1610a43565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015610533573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105579190611807565b1580610572575030610567610a43565b6001600160a01b0316145b156105a45761057f610a43565b60405163e2c8c9d560e01b81526001600160a01b039091166004820152602401610357565b5f6105b0858585610c60565b90506105bb81610e73565b949350505050565b5f54610100900460ff16158080156105e157505f54600160ff909116105b806105fa5750303b1580156105fa57505f5460ff166001145b61065d5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610357565b5f805460ff19166001179055801561067e575f805461ff0019166101001790555b606680546001600160a01b038086166001600160a01b031992831617909255606780549285169290911691909117905580156106f3575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f9061074a906060016040516020818303038152906040528051906020012090565b5492915050565b5f80838360405160200161076f929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209150505b92915050565b828261079d8282610751565b6001600160a01b03166107ae610a43565b6001600160a01b0316146107df57604051632cd9b44d60e11b81526004810183905260248101829052604401610357565b856107e981610e73565b6107fd876107f78889610806565b86610a51565b50505050505050565b5f8060026108148585610e8f565b6040516108219190611826565b602060405180830381855afa15801561083c573d5f803e3d5ffd5b5050506040513d601f19601f820116820180604052508101906105bb9190611841565b5f6105bb61086c856118c6565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250610f1492505050565b5f805b8281101561091257846001600160a01b03166108f38585848181106108d2576108d26117b0565b905060200201355f908152606560205260409020546001600160a01b031690565b6001600160a01b03161461090a575f9150506104cf565b6001016108ab565b506001949350505050565b6067546001600160a01b031663aa271e1a610936610a43565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015610978573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061099c9190611807565b15806109b75750306109ac610a43565b6001600160a01b0316145b156109c45761057f610a43565b5f5b818110156106f357610a3a8383838181106109e3576109e36117b0565b90506020028101906109f59190611983565b610a039060208101906117c4565b858585818110610a1557610a156117b0565b9050602002810190610a279190611983565b610a3590602081019061169d565b610c60565b506001016109c6565b5f610a4c611059565b905090565b5f838152606560205260409020546001600160a01b03838116911614610ab4575f83815260656020526040908190205490516326995d8360e11b8152600481018590526001600160a01b0391821660248201529083166044820152606401610357565b5f838152606560205260409081902080546001600160a01b03191690556066549051632142170760e11b81523060048201526001600160a01b03838116602483015260448201869052909116906342842e0e906064015f604051808303815f87803b158015610b21575f80fd5b505af1158015610b33573d5f803e3d5ffd5b50505050806001600160a01b0316610b49610a43565b6001600160a01b0316847f9a471856befea1cabcd7fc8a1c4d70ea07b8ed2ee205cc361f932433542ef3fe60405160405180910390a4505050565b6060610b8f85611076565b5f80876001600160a01b031686610ba88b8a89896110db565b604051610bb59190611826565b5f604051808303815f8787f1925050503d805f8114610bef576040519150601f19603f3d011682016040523d82523d5f602084013e610bf4565b606091505b509092509050610c05603f876119bf565b5a11610c1357610c136119d2565b610c5382826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061110b565b9998505050505050505050565b5f60605f7fd81bbfcee722494b885e891546eeac23d0eedcd44038d7a2f6ef9ec2f9e0d2398686604051602001610c989291906119e6565b60405160208183030381529060405280519060200120604051602001610cc8929190918252602082015260400190565b60408051808303601f19018152828252805160209091012060028084526060840190925292505f9190816020015b6060815260200190600190039081610cf657905050905086868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920182905250855186945090925015159050610d5657610d566117b0565b6020026020010181905250604051806040016040528060038152602001621e9a5b60ea1b81525081600181518110610d9057610d906117b0565b6020908102919091018101919091525f8381526065909152604080822080546001600160a01b0319166001600160a01b03898116919091179091556067549151635cd7e3b360e01b8152911691635cd7e3b391610df891309186918991829190600401611a4d565b5f604051808303815f87803b158015610e0f575f80fd5b505af1158015610e21573d5f803e3d5ffd5b50505050846001600160a01b0316827f08717469d38a4b02325ea6637978c7952f94d3d8fc7848994f618ddbf4d637f18989604051610e61929190611aab565b60405180910390a35095945050505050565b303303610e8657610e8381611144565b50565b610e8381611076565b60605f82610e9f60016020611ad9565b60ff1660208110610eb257610eb26117b0565b1a9050610ec0600282611af2565b60ff1615610ecf576003610ed2565b60025b84604051602001610efc92919060f89290921b6001600160f81b0319168252600182015260210190565b60405160208183030381529060405291505092915050565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015610f58573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f7c9190611841565b90505f611029866060015180519060200120868860200151604051602001610fc99392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561104f5750855161104f906001600160a01b0316828661116e565b9695505050505050565b5f30330361106e575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f906060016040516020818303038152906040528051906020012090506110ca8190565b546110d6906001611b13565b905550565b60608285856040516020016110f293929190611b26565b6040516020818303038152906040529050949350505050565b6060831561111a5750816104cf565b82511561112a5782518084602001fd5b8160405162461bcd60e51b81526004016103579190611601565b61114c6112a9565b8114610e8357604051635637b6af60e11b815260048101829052602401610357565b5f805f61117b85856112bb565b90925090505f81600481111561119357611193611b64565b1480156111b15750856001600160a01b0316826001600160a01b0316145b156111c1576001925050506104cf565b5f80876001600160a01b0316631626ba7e60e01b88886040516024016111e8929190611b78565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516112269190611826565b5f60405180830381855afa9150503d805f811461125e576040519150601f19603f3d011682016040523d82523d5f602084013e611263565b606091505b5091509150818015611276575080516020145b801561129d57508051630b135d3f60e11b9061129b9083016020908101908401611841565b145b98975050505050505050565b5f3033036110735750601f1936013590565b5f8082516041036112ef576020830151604084015160608501515f1a6112e3878285856112fd565b945094505050506112f6565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561133257505f905060036113d9565b8460ff16601b1415801561134a57508460ff16601c14155b1561135a57505f905060046113d9565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156113ab573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b0381166113d3575f600192509250506113d9565b91505f90505b94509492505050565b6001600160a01b0381168114610e83575f80fd5b5f8083601f840112611406575f80fd5b50813567ffffffffffffffff81111561141d575f80fd5b6020830191508360208285010111156112f6575f80fd5b5f805f805f60808688031215611448575f80fd5b8535611453816113e2565b94506020860135611463816113e2565b935060408601359250606086013567ffffffffffffffff811115611485575f80fd5b611491888289016113f6565b969995985093965092949392505050565b5f8083601f8401126114b2575f80fd5b50813567ffffffffffffffff8111156114c9575f80fd5b6020830191508360208260051b85010111156112f6575f80fd5b5f805f805f608086880312156114f7575f80fd5b853567ffffffffffffffff81111561150d575f80fd5b611519888289016114a2565b9096509450506020860135925060408601359150606086013561153b816113e2565b809150509295509295909350565b5f805f6040848603121561155b575f80fd5b833567ffffffffffffffff80821115611572575f80fd5b9085019060808288031215611585575f80fd5b9093506020850135908082111561159a575f80fd5b506115a7868287016113f6565b9497909650939450505050565b5f5b838110156115ce5781810151838201526020016115b6565b50505f910152565b5f81518084526115ed8160208601602086016115b4565b601f01601f19169290920160200192915050565b602081525f6104cf60208301846115d6565b5f805f60408486031215611625575f80fd5b833567ffffffffffffffff81111561163b575f80fd5b611647868287016113f6565b909450925050602084013561165b816113e2565b809150509250925092565b5f8060408385031215611677575f80fd5b8235611682816113e2565b91506020830135611692816113e2565b809150509250929050565b5f602082840312156116ad575f80fd5b81356104cf816113e2565b5f602082840312156116c8575f80fd5b5035919050565b5f80604083850312156116e0575f80fd5b50508035926020909101359150565b5f805f8060808587031215611702575f80fd5b8435935060208501359250604085013591506060850135611722816113e2565b939692955090935050565b5f805f6040848603121561173f575f80fd5b833561174a816113e2565b9250602084013567ffffffffffffffff811115611765575f80fd5b6115a7868287016114a2565b5f8060208385031215611782575f80fd5b823567ffffffffffffffff811115611798575f80fd5b6117a4858286016114a2565b90969095509350505050565b634e487b7160e01b5f52603260045260245ffd5b5f808335601e198436030181126117d9575f80fd5b83018035915067ffffffffffffffff8211156117f3575f80fd5b6020019150368190038213156112f6575f80fd5b5f60208284031215611817575f80fd5b815180151581146104cf575f80fd5b5f82516118378184602087016115b4565b9190910192915050565b5f60208284031215611851575f80fd5b5051919050565b634e487b7160e01b5f52604160045260245ffd5b6040516080810167ffffffffffffffff8111828210171561188f5761188f611858565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156118be576118be611858565b604052919050565b5f608082360312156118d6575f80fd5b6118de61186c565b82356118e9816113e2565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff80821115611919575f80fd5b9085019036601f83011261192b575f80fd5b81358181111561193d5761193d611858565b61194f601f8201601f19168501611895565b91508082523684828501011115611964575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b5f8235603e19833603018112611837575f80fd5b634e487b7160e01b5f52601260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b5f826119cd576119cd611997565b500490565b634e487b7160e01b5f52600160045260245ffd5b818382375f9101908152919050565b5f8282518085526020808601955060208260051b840101602086015f5b84811015611a4057601f19868403018952611a2e8383516115d6565b98840198925090830190600101611a12565b5090979650505050505050565b6001600160a01b038616815260a0602082018190525f90611a70908301876119f5565b8281036040840152611a8281876119f5565b90508281036060840152611a9681866119f5565b91505082151560808301529695505050505050565b60208152816020820152818360408301375f818301604090810191909152601f909201601f19160101919050565b60ff828116828216039081111561078b5761078b6119ab565b5f60ff831680611b0457611b04611997565b8060ff84160691505092915050565b8082018082111561078b5761078b6119ab565b5f8451611b378184602089016115b4565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f6105bb60408301846115d656fea164736f6c6343000818000a","storage":{"0x0":"0xff"}},"0xda9e1b3e395bfb0a45f03c7f615146b9d896c959":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100b1575f3560e01c806340c10f191161006e57806340c10f191461013d57806370a082311461015257806395d89b411461017a578063a457c2d714610182578063a9059cbb14610195578063dd62ed3e146101a8575f80fd5b806306fdde03146100b5578063095ea7b3146100d357806318160ddd146100f657806323b872dd14610108578063313ce5671461011b578063395093511461012a575b5f80fd5b6100bd6101bb565b6040516100ca9190610775565b60405180910390f35b6100e66100e13660046107dc565b61024b565b60405190151581526020016100ca565b6002545b6040519081526020016100ca565b6100e6610116366004610804565b610264565b604051601281526020016100ca565b6100e66101383660046107dc565b610287565b61015061014b3660046107dc565b6102a8565b005b6100fa61016036600461083d565b6001600160a01b03165f9081526020819052604090205490565b6100bd6102b6565b6100e66101903660046107dc565b6102c5565b6100e66101a33660046107dc565b610344565b6100fa6101b636600461085d565b610351565b6060600380546101ca9061088e565b80601f01602080910402602001604051908101604052809291908181526020018280546101f69061088e565b80156102415780601f1061021857610100808354040283529160200191610241565b820191905f5260205f20905b81548152906001019060200180831161022457829003601f168201915b5050505050905090565b5f3361025881858561037b565b60019150505b92915050565b5f3361027185828561049e565b61027c858585610516565b506001949350505050565b5f336102588185856102998383610351565b6102a391906108c6565b61037b565b6102b282826106b8565b5050565b6060600480546101ca9061088e565b5f33816102d28286610351565b9050838110156103375760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b61027c828686840361037b565b5f33610258818585610516565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b6001600160a01b0383166103dd5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161032e565b6001600160a01b03821661043e5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161032e565b6001600160a01b038381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b5f6104a98484610351565b90505f19811461051057818110156105035760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161032e565b610510848484840361037b565b50505050565b6001600160a01b03831661057a5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161032e565b6001600160a01b0382166105dc5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161032e565b6001600160a01b0383165f90815260208190526040902054818110156106535760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161032e565b6001600160a01b038481165f81815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3610510565b6001600160a01b03821661070e5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640161032e565b8060025f82825461071f91906108c6565b90915550506001600160a01b0382165f81815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b5f602080835283518060208501525f5b818110156107a157858101830151858201604001528201610785565b505f604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146107d7575f80fd5b919050565b5f80604083850312156107ed575f80fd5b6107f6836107c1565b946020939093013593505050565b5f805f60608486031215610816575f80fd5b61081f846107c1565b925061082d602085016107c1565b9150604084013590509250925092565b5f6020828403121561084d575f80fd5b610856826107c1565b9392505050565b5f806040838503121561086e575f80fd5b610877836107c1565b9150610885602084016107c1565b90509250929050565b600181811c908216806108a257607f821691505b6020821081036108c057634e487b7160e01b5f52602260045260245ffd5b50919050565b8082018082111561025e57634e487b7160e01b5f52601160045260245ffdfea164736f6c6343000818000a","storage":{"0x2":"0xe8d4a51000","0x3":"0x0","0x4":"0x0","0x47668262eb76f3aa61b856a0c078f33a11f46671cf1466c3616ba74a22fcdd92":"0xe8d4a51000","0x9cc83e833a69122bf7773b58c082655d780ae469ab7cdf5d1047a30229e55875":"0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"}},"0xe0afc4e9e03e4aa67257df7a2eca77454309789d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061002b5760003560e01c806316f1983114610030575b600080fd5b6100b06004803603604081101561004657600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561007157600080fd5b82018360208201111561008357600080fd5b803590602001918460018302840111640100000000831117156100a557600080fd5b5090925090506100b2565b005b826001600160a01b031660017f103fed9db65eac19c4d870f49ab7520fe03b99f1838e5996caf47e9e43308392848460405180806020018281038252848482818152602001925080828437600083820152604051601f909101601f19169092018290039550909350505050a350505056fea164736f6c6343000606000a","storage":{}},"0xe4fdf45c2f8d198854f8823809c7a988eeaaa493":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100a6575f3560e01c80638cb8ecec1161006e5780638cb8ecec1461013e5780638da5cb5b14610151578063cbe9e76414610161578063da8c229e14610183578063e0dba60f146101a5578063f2fde38b146101b8575f80fd5b806301670ba9146100aa57806301ffc9a7146100bf5780633f15457f146100f85780634e543b2614610123578063715018a614610136575b5f80fd5b6100bd6100b8366004610529565b6101cb565b005b6100e36100cd366004610540565b6001600160e01b0319166301ffc9a760e01b1490565b60405190151581526020015b60405180910390f35b60025461010b906001600160a01b031681565b6040516001600160a01b0390911681526020016100ef565b6100bd610131366004610589565b610217565b6100bd610282565b6100bd61014c3660046105a2565b610295565b5f546001600160a01b031661010b565b6100e361016f366004610529565b60036020525f908152604090205460ff1681565b6100e3610191366004610589565b60016020525f908152604090205460ff1681565b6100bd6101b33660046105cc565b6103a2565b6100bd6101c6366004610589565b610408565b6101d3610481565b60405181907f1764176cfa565853ba1ded547a830a9f9bff95231ef6fd228b3ddd6175777569905f90a25f908152600360205260409020805460ff19166001179055565b61021f610481565b600254604051630c4b7b8560e11b81525f60048201526001600160a01b03838116602483015290911690631896f70a906044015f604051808303815f87803b158015610269575f80fd5b505af115801561027b573d5f803e3d5ffd5b5050505050565b61028a610481565b6102935f6104da565b565b335f9081526001602052604090205460ff166103095760405162461bcd60e51b815260206004820152602860248201527f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f604482015267373a3937b63632b960c11b60648201526084015b60405180910390fd5b5f8281526003602052604090205460ff1615610323575f80fd5b6002546040516306ab592360e01b81525f6004820152602481018490526001600160a01b038381166044830152909116906306ab5923906064016020604051808303815f875af1158015610379573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061039d9190610605565b505050565b6103aa610481565b6001600160a01b0382165f81815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b610410610481565b6001600160a01b0381166104755760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610300565b61047e816104da565b50565b5f546001600160a01b031633146102935760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610300565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f60208284031215610539575f80fd5b5035919050565b5f60208284031215610550575f80fd5b81356001600160e01b031981168114610567575f80fd5b9392505050565b80356001600160a01b0381168114610584575f80fd5b919050565b5f60208284031215610599575f80fd5b6105678261056e565b5f80604083850312156105b3575f80fd5b823591506105c36020840161056e565b90509250929050565b5f80604083850312156105dd575f80fd5b6105e68361056e565b9150602083013580151581146105fa575f80fd5b809150509250929050565b5f60208284031215610615575f80fd5b505191905056fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0xbdf39e9e65b2355b1b0b06df799c09159f0ab90f06a9bb2153f5de7d9b0ea81":"0x1","0x97b771283c9c769f7b9399fef71d92816f2bd31de10203b676671b01eb920966":"0x1"}},"0xe85541865bbb62a05064ce5c9f41cc293a8ea996":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610060575f3560e01c8063715018a6146100645780638129fc1c1461006e5780638da5cb5b14610076578063a3f4df7e14610096578063f2fde38b146100cf578063ffa1ad74146100e2575b5f80fd5b61006c610106565b005b61006c610119565b6033546040516001600160a01b0390911681526020015b60405180910390f35b6100c26040518060400160405280600d81526020016c2aa7299d1027b832b930ba37b960991b81525081565b60405161008d91906103bd565b61006c6100dd366004610409565b610229565b6100c2604051806040016040528060058152602001640302e312e360dc1b81525081565b61010e61029f565b6101175f6102f9565b565b5f54610100900460ff161580801561013757505f54600160ff909116105b806101505750303b15801561015057505f5460ff166001145b6101b85760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b5f805460ff1916600117905580156101d9575f805461ff0019166101001790555b6101e161034a565b8015610226575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50565b61023161029f565b6001600160a01b0381166102965760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016101af565b610226816102f9565b6033546001600160a01b031633146101175760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016101af565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff166103b45760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016101af565b610117336102f9565b5f602080835283518060208501525f5b818110156103e9578581018301518582016040015282016103cd565b505f604082860101526040601f19601f8301168501019250505092915050565b5f60208284031215610419575f80fd5b81356001600160a01b038116811461042f575f80fd5b939250505056fea164736f6c6343000818000a","storage":{}},"0xead34b583404e3cb0c9b97c2d1c486be67be9f30":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0xec71e4e674fe0f432693dc2b935c34bd2774c003":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610090575f3560e01c8063a200e15311610063578063a200e15314610146578063a34e35961461016d578063c8a4271f14610180578063cd5d2c74146101bf578063d820ed42146101e6575f80fd5b806301ffc9a7146100945780632c0fd74c146100bc57806350e9a715146100f157806359b6b86c1461011f575b5f80fd5b6100a76100a2366004610600565b61020d565b60405190151581526020015b60405180910390f35b6100e37f000000000000000000000000000000000000000000000000000000000000000081565b6040519081526020016100b3565b6101046100ff366004610627565b610243565b604080518251815260209283015192810192909252016100b3565b6100e37f000000000000000000000000000000000000000000000000000000000000000181565b6100e37f000000000000000000000000000000000000000000000000000000000000000481565b6100e361017b366004610627565b610404565b6101a77f000000000000000000000000f3810eb7d64d1c11ae12727d957c6202b24492f581565b6040516001600160a01b0390911681526020016100b3565b6100e37f000000000000000000000000000000000000000000000000000000000000000081565b6100e37f000000000000000000000000000000000000000000000000000000000000000281565b5f6001600160e01b031982166301ffc9a760e01b148061023d57506001600160e01b031982166350e9a71560e01b145b92915050565b604080518082019091525f80825260208201525f61029586868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061045392505050565b90505f600582106102d1576102ca847f00000000000000000000000000000000000000000000000000000000000000016106b3565b9050610394565b81600403610303576102ca847f00000000000000000000000000000000000000000000000000000000000000026106b3565b81600303610335576102ca847f00000000000000000000000000000000000000000000000000000000000000046106b3565b81600203610367576102ca847f00000000000000000000000000000000000000000000000000000000000000006106b3565b610391847f00000000000000000000000000000000000000000000000000000000000000006106b3565b90505b60405180604001604052806103a883610554565b81526020016103f76103f28a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c92508b91506105f89050565b610554565b9052979650505050505050565b5f61044a6103f286868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508892508791506105f89050565b95945050505050565b80515f90819081905b8082101561054b575f858381518110610477576104776106ca565b01602001516001600160f81b0319169050600160ff1b8110156104a65761049f6001846106de565b9250610538565b600760fd1b6001600160f81b0319821610156104c75761049f6002846106de565b600f60fc1b6001600160f81b0319821610156104e85761049f6003846106de565b601f60fb1b6001600160f81b0319821610156105095761049f6004846106de565b603f60fa1b6001600160f81b03198216101561052a5761049f6005846106de565b6105356006846106de565b92505b5082610543816106f1565b93505061045c565b50909392505050565b5f807f000000000000000000000000f3810eb7d64d1c11ae12727d957c6202b24492f56001600160a01b03166350d25bcd6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105b2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105d69190610709565b9050806105e7846305f5e1006106b3565b6105f19190610720565b9392505050565b5f9392505050565b5f60208284031215610610575f80fd5b81356001600160e01b0319811681146105f1575f80fd5b5f805f806060858703121561063a575f80fd5b843567ffffffffffffffff80821115610651575f80fd5b818701915087601f830112610664575f80fd5b813581811115610672575f80fd5b886020828501011115610683575f80fd5b6020928301999098509187013596604001359550909350505050565b634e487b7160e01b5f52601160045260245ffd5b808202811582820484141761023d5761023d61069f565b634e487b7160e01b5f52603260045260245ffd5b8082018082111561023d5761023d61069f565b5f600182016107025761070261069f565b5060010190565b5f60208284031215610719575f80fd5b5051919050565b5f8261073a57634e487b7160e01b5f52601260045260245ffd5b50049056fea164736f6c6343000818000a","storage":{}},"0xf1ad43dc647f27c2366ab4742d68d21282f7d50e":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101d1575f3560e01c80638b95dd71116100fe578063c86902331161009e578063e32954eb1161006e578063e32954eb146104f2578063e59d895d14610505578063e985e9c514610518578063f1cb7e0614610553575f80fd5b8063c869023314610435578063ce3decdc1461048c578063d5fa2b001461049f578063d700ff33146104b2575f80fd5b8063a8fa5682116100d9578063a8fa5682146103ac578063a9784b3e146103bf578063ac9650d814610402578063bc1c58d114610422575f80fd5b80638b95dd7114610373578063a22cb46514610386578063a4b91a0114610399575f80fd5b80633603d758116101745780635c98042b116101445780635c98042b14610327578063623195b01461033a578063691f34311461034d5780637737221314610360575f80fd5b80633603d758146102975780633b3b57de146102aa5780634cbf6ba4146102bd57806359d1d43c14610307575f80fd5b8063124a319c116101af578063124a319c146102255780632203ab561461025057806329cd62ea14610271578063304e6ade14610284575f80fd5b806301ffc9a7146101d55780630af179d7146101fd57806310f13a8c14610212575b5f80fd5b6101e86101e3366004612267565b610566565b60405190151581526020015b60405180910390f35b61021061020b3660046122bd565b610576565b005b610210610220366004612304565b610778565b610238610233366004612377565b610842565b6040516001600160a01b0390911681526020016101f4565b61026361025e3660046123a1565b610a87565b6040516101f492919061240e565b61021061027f366004612426565b610bb5565b6102106102923660046122bd565b610c4d565b6102106102a536600461244f565b610cc6565b6102386102b836600461244f565b610d64565b6101e86102cb3660046123a1565b5f82815260208181526040808320546001600160401b031683526006825280832094835293815283822092825291909152205461ffff16151590565b61031a6103153660046122bd565b610d93565b6040516101f49190612466565b61031a61033536600461244f565b610e6f565b610210610348366004612478565b610f2a565b61031a61035b36600461244f565b610fc2565b61021061036e3660046122bd565b610ffa565b6102106103813660046124da565b611073565b6102106103943660046125b9565b611150565b6102106103a73660046125e3565b61122a565b61031a6103ba36600461261e565b6112f6565b6101e86103cd36600461265a565b6001600160a01b039283165f908152600c60209081526040808320948352938152838220929094168152925290205460ff1690565b6104156104103660046126ce565b611342565b6040516101f4919061270c565b61031a61043036600461244f565b61134f565b61047761044336600461244f565b5f81815260208181526040808320546001600160401b03168352600982528083209383529290522080546001909101549091565b604080519283526020830191909152016101f4565b61021061049a3660046122bd565b611387565b6102106104ad36600461276e565b6114c3565b6104da6104c036600461244f565b5f602081905290815260409020546001600160401b031681565b6040516001600160401b0390911681526020016101f4565b61041561050036600461279c565b6114e9565b6102106105133660046127d6565b6114fe565b6101e8610526366004612808565b6001600160a01b039182165f908152600b6020908152604080832093909416825291909152205460ff1690565b61031a6105613660046123a1565b6115a2565b5f61057082611666565b92915050565b826105808161168a565b610588575f80fd5b5f84815260208181526040808320548151601f87018490048402810184019092528582528392606092839285926001600160401b039091169183916105eb9183918d908d90819084018382808284375f9201919091525092939250506118b79050565b90505b80515160208201511015610712578661ffff165f03610652578060400151965061061781611912565b94508460405160200161062a9190612834565b60405160208183030381529060405280519060200120925061064b81611933565b9350610704565b5f61065c82611912565b9050816040015161ffff168861ffff16141580610680575061067e868261194f565b155b15610702576106db8c878a8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250505060208801518d91506106d2908290612863565b8b51158a61196a565b8160400151975081602001519650809550858051906020012093506106ff82611933565b94505b505b61070d81611bc9565b6105ee565b5083511561076c5761076c8a85888c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c925061076391508290508f612863565b8951158861196a565b50505050505050505050565b846107828161168a565b61078a575f80fd5b5f86815260208181526040808320546001600160401b03168352600a8252808320898452909152908190209051849184916107c89089908990612876565b908152602001604051809103902091826107e3929190612901565b5084846040516107f4929190612876565b6040518091039020867f448bc014f1536726cf8d54ff3d6481ed3cbc683c2591ca204274009afa09b1a18787878760405161083294939291906129e2565b60405180910390a3505050505050565b5f82815260208181526040808320546001600160401b031683526007825280832085845282528083206001600160e01b0319851684529091528120546001600160a01b03168015610894579050610570565b5f61089e85610d64565b90506001600160a01b0381166108b8575f92505050610570565b6040516301ffc9a760e01b60248201525f9081906001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b1790525161090f9190612834565b5f60405180830381855afa9150503d805f8114610947576040519150601f19603f3d011682016040523d82523d5f602084013e61094c565b606091505b509150915081158061095f575060208151105b80610989575080601f8151811061097857610978612a13565b01602001516001600160f81b031916155b1561099a575f945050505050610570565b6040516001600160e01b0319871660248201526001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b179052516109f09190612834565b5f60405180830381855afa9150503d805f8114610a28576040519150601f19603f3d011682016040523d82523d5f602084013e610a2d565b606091505b509092509050811580610a41575060208151105b80610a6b575080601f81518110610a5a57610a5a612a13565b01602001516001600160f81b031916155b15610a7c575f945050505050610570565b509095945050505050565b5f82815260208181526040808320546001600160401b03168352600180835281842086855290925282206060915b848111610b975780851615801590610ae457505f8181526020839052604081208054610ae090612885565b9050115b15610b8f5780825f8381526020019081526020015f20808054610b0690612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610b3290612885565b8015610b7d5780601f10610b5457610100808354040283529160200191610b7d565b820191905f5260205f20905b815481529060010190602001808311610b6057829003601f168201915b50505050509050935093505050610bae565b60011b610ab5565b505f60405180602001604052805f81525092509250505b9250929050565b82610bbf8161168a565b610bc7575f80fd5b60408051808201825284815260208082018581525f888152808352848120546001600160401b031681526009835284812089825283528490209251835551600190920191909155815185815290810184905285917f1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e4691015b60405180910390a250505050565b82610c578161168a565b610c5f575f80fd5b5f84815260208181526040808320546001600160401b03168352600382528083208784529091529020610c93838583612901565b50837fe379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d75788484604051610c3f929190612a27565b80610cd08161168a565b610cd8575f80fd5b5f82815260208190526040812080546001600160401b031691610cfa83612a3a565b82546101009290920a6001600160401b038181021990931691831602179091555f84815260208181526040918290205491519190921681528492507fc6621ccb8f3f5a04bb6502154b2caf6adf5983fe76dfef1cfc9c42e3579db444910160405180910390a25050565b5f80610d7183603c6115a2565b905080515f03610d8357505f92915050565b610d8c81611cae565b9392505050565b5f83815260208181526040808320546001600160401b03168352600a825280832086845290915290819020905160609190610dd19085908590612876565b90815260200160405180910390208054610dea90612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610e1690612885565b8015610e615780601f10610e3857610100808354040283529160200191610e61565b820191905f5260205f20905b815481529060010190602001808311610e4457829003601f168201915b505050505090509392505050565b5f81815260208181526040808320546001600160401b03168352600482528083208484529091529020805460609190610ea790612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610ed390612885565b8015610f1e5780601f10610ef557610100808354040283529160200191610f1e565b820191905f5260205f20905b815481529060010190602001808311610f0157829003601f168201915b50505050509050919050565b83610f348161168a565b610f3c575f80fd5b83610f48600182612863565b1615610f52575f80fd5b5f85815260208181526040808320546001600160401b031683526001825280832088845282528083208784529091529020610f8e838583612901565b50604051849086907faa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe3905f90a35050505050565b5f81815260208181526040808320546001600160401b03168352600882528083208484529091529020805460609190610ea790612885565b826110048161168a565b61100c575f80fd5b5f84815260208181526040808320546001600160401b03168352600882528083208784529091529020611040838583612901565b50837fb7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f78484604051610c3f929190612a27565b8261107d8161168a565b611085575f80fd5b837f65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af75284846040516110b792919061240e565b60405180910390a2603c830361110e57837f52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd26110f284611cae565b6040516001600160a01b03909116815260200160405180910390a25b5f84815260208181526040808320546001600160401b0316835260028252808320878452825280832086845290915290206111498382612a5f565b5050505050565b6001600160a01b03821633036111bf5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084015b60405180910390fd5b335f818152600b602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6001600160a01b03821633036112825760405162461bcd60e51b815260206004820181905260248201527f53657474696e672064656c65676174652073746174757320666f722073656c6660448201526064016111b6565b335f818152600c6020908152604080832087845282528083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519384529286917ff0ddb3b04746704017f9aa8bd728fcc2c1d11675041205350018915f5e4750a0910160405180910390a4505050565b5f83815260208181526040808320546001600160401b03168352600582528083208684528252808320858452825280832061ffff851684529091529020805460609190610dea90612885565b6060610d8c5f8484611ccb565b5f81815260208181526040808320546001600160401b03168352600382528083208484529091529020805460609190610ea790612885565b826113918161168a565b611399575f80fd5b5f84815260208181526040808320546001600160401b031680845260048352818420888552909252822080549192916113d190612885565b80601f01602080910402602001604051908101604052809291908181526020018280546113fd90612885565b80156114485780601f1061141f57610100808354040283529160200191611448565b820191905f5260205f20905b81548152906001019060200180831161142b57829003601f168201915b505050506001600160401b0384165f9081526004602090815260408083208b8452909152902091925061147e9050858783612901565b50857f8f15ed4b723ef428f250961da8315675b507046737e19319fc1a4d81bfe87f858287876040516114b393929190612b1e565b60405180910390a2505050505050565b816114cd8161168a565b6114d5575f80fd5b6114e483603c61038185611e88565b505050565b60606114f6848484611ccb565b949350505050565b826115088161168a565b611510575f80fd5b5f84815260208181526040808320546001600160401b031683526007825280832087845282528083206001600160e01b031987168085529083529281902080546001600160a01b0319166001600160a01b038716908117909155905190815286917f7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa910160405180910390a350505050565b5f82815260208181526040808320546001600160401b0316835260028252808320858452825280832084845290915290208054606091906115e290612885565b80601f016020809104026020016040519081016040528092919081815260200182805461160e90612885565b80156116595780601f1061163057610100808354040283529160200191611659565b820191905f5260205f20905b81548152906001019060200180831161163c57829003601f168201915b5050505050905092915050565b5f6001600160e01b03198216631674750f60e21b1480610570575061057082611eb8565b5f336001600160a01b037f0000000000000000000000004fbf7b2f171336958be5d15ff762a5cff53635681614806116ea5750336001600160a01b037f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5616145b156116f757506001919050565b6040516302571be360e01b8152600481018390525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa15801561175c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117809190612b4d565b90507f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b0316816001600160a01b031603611845576040516331a9108f60e11b8152600481018490527f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b031690636352211e90602401602060405180830381865afa15801561181e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118429190612b4d565b90505b6001600160a01b03811633148061187e57506001600160a01b0381165f908152600b6020908152604080832033845290915290205460ff165b80610d8c57506001600160a01b0381165f908152600c60209081526040808320868452825280832033845290915290205460ff16610d8c565b6118ff6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261057081611bc9565b602081015181516060916105709161192a9082611edc565b84519190611f33565b60a081015160c08201516060916105709161192a908290612863565b5f81518351148015610d8c5750610d8c835f845f8751611fa7565b865160208801205f61197d878787611f33565b90508315611aa1576001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c168452909152902080546119c690612885565b159050611a23576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611a0783612b68565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091528120611a62916121f9565b897f03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a12078a8a604051611a94929190612b84565b60405180910390a261076c565b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c16845290915290208054611ae290612885565b90505f03611b40576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611b2483612ba9565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091529020611b808282612a5f565b50897f52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b8a8a84604051611bb593929190612bbf565b60405180910390a250505050505050505050565b60c08101516020820181905281515111611be05750565b5f611bf2825f01518360200151611edc565b8260200151611c019190612bed565b8251909150611c109082611fc9565b61ffff166040830152611c24600282612bed565b8251909150611c339082611fc9565b61ffff166060830152611c47600282612bed565b8251909150611c569082611fef565b63ffffffff166080830152611c6c600482612bed565b82519091505f90611c7d9083611fc9565b61ffff169050611c8e600283612bed565b60a084018190529150611ca18183612bed565b60c0909301929092525050565b5f8151601414611cbc575f80fd5b5060200151600160601b900490565b6060816001600160401b03811115611ce557611ce56124c6565b604051908082528060200260200182016040528015611d1857816020015b6060815260200190600190039081611d035790505b5090505f5b82811015611e80578415611dd8575f848483818110611d3e57611d3e612a13565b9050602002810190611d509190612c00565b611d5f91602491600491612c42565b611d6891612c69565b9050858114611dd65760405162461bcd60e51b815260206004820152603460248201527f6d756c746963616c6c3a20416c6c207265636f726473206d7573742068617665604482015273040c240dac2e8c6d0d2dcce40dcc2dacad0c2e6d60631b60648201526084016111b6565b505b5f8030868685818110611ded57611ded612a13565b9050602002810190611dff9190612c00565b604051611e0d929190612876565b5f60405180830381855af49150503d805f8114611e45576040519150601f19603f3d011682016040523d82523d5f602084013e611e4a565b606091505b509150915081611e58575f80fd5b80848481518110611e6b57611e6b612a13565b60209081029190910101525050600101611d1d565b509392505050565b604080516014808252818301909252606091602082018180368337505050600160601b9290920260208301525090565b5f6001600160e01b0319821663c869023360e01b1480610570575061057082612017565b5f815b83518110611eef57611eef612c86565b5f611efa858361203b565b60ff169050611f0a816001612bed565b611f149083612bed565b9150805f03611f235750611f29565b50611edf565b6114f68382612863565b8251606090611f428385612bed565b1115611f4c575f80fd5b5f826001600160401b03811115611f6557611f656124c6565b6040519080825280601f01601f191660200182016040528015611f8f576020820181803683370190505b50905060208082019086860101610a7c82828761205e565b5f611fb38484846120b3565b611fbe8787856120b3565b149695505050505050565b81515f90611fd8836002612bed565b1115611fe2575f80fd5b50016002015161ffff1690565b81515f90611ffe836004612bed565b1115612008575f80fd5b50016004015163ffffffff1690565b5f6001600160e01b0319821663691f343160e01b14806105705750610570826120d5565b5f82828151811061204e5761204e612a13565b016020015160f81c905092915050565b602081106120965781518352612075602084612bed565b9250612082602083612bed565b915061208f602082612863565b905061205e565b905182516020929092036101000a5f190180199091169116179052565b82515f906120c18385612bed565b11156120cb575f80fd5b5091016020012090565b5f6001600160e01b031982166304928c6760e21b14806105705750610570825f6001600160e01b0319821663547d2b4160e11b148061212457506001600160e01b03198216635c98042b60e01b145b806105705750610570825f6001600160e01b0319821663bc1c58d160e01b14806105705750610570825f6001600160e01b03198216631d9dabef60e11b148061217d57506001600160e01b031982166378e5bf0360e11b145b806105705750610570825f6001600160e01b03198216631101d5ab60e11b14806105705750610570825f6001600160e01b0319821663d700ff3360e01b14806105705750610570825f6001600160e01b03198216634fbf043360e01b148061057057506301ffc9a760e01b6001600160e01b0319831614610570565b50805461220590612885565b5f825580601f10612214575050565b601f0160209004905f5260205f20908101906122309190612233565b50565b5b80821115612247575f8155600101612234565b5090565b80356001600160e01b031981168114612262575f80fd5b919050565b5f60208284031215612277575f80fd5b610d8c8261224b565b5f8083601f840112612290575f80fd5b5081356001600160401b038111156122a6575f80fd5b602083019150836020828501011115610bae575f80fd5b5f805f604084860312156122cf575f80fd5b8335925060208401356001600160401b038111156122eb575f80fd5b6122f786828701612280565b9497909650939450505050565b5f805f805f60608688031215612318575f80fd5b8535945060208601356001600160401b0380821115612335575f80fd5b61234189838a01612280565b90965094506040880135915080821115612359575f80fd5b5061236688828901612280565b969995985093965092949392505050565b5f8060408385031215612388575f80fd5b823591506123986020840161224b565b90509250929050565b5f80604083850312156123b2575f80fd5b50508035926020909101359150565b5f5b838110156123db5781810151838201526020016123c3565b50505f910152565b5f81518084526123fa8160208601602086016123c1565b601f01601f19169290920160200192915050565b828152604060208201525f6114f660408301846123e3565b5f805f60608486031215612438575f80fd5b505081359360208301359350604090920135919050565b5f6020828403121561245f575f80fd5b5035919050565b602081525f610d8c60208301846123e3565b5f805f806060858703121561248b575f80fd5b843593506020850135925060408501356001600160401b038111156124ae575f80fd5b6124ba87828801612280565b95989497509550505050565b634e487b7160e01b5f52604160045260245ffd5b5f805f606084860312156124ec575f80fd5b833592506020840135915060408401356001600160401b0380821115612510575f80fd5b818601915086601f830112612523575f80fd5b813581811115612535576125356124c6565b604051601f8201601f19908116603f0116810190838211818310171561255d5761255d6124c6565b81604052828152896020848701011115612575575f80fd5b826020860160208301375f6020848301015280955050505050509250925092565b6001600160a01b0381168114612230575f80fd5b80358015158114612262575f80fd5b5f80604083850312156125ca575f80fd5b82356125d581612596565b9150612398602084016125aa565b5f805f606084860312156125f5575f80fd5b83359250602084013561260781612596565b9150612615604085016125aa565b90509250925092565b5f805f60608486031215612630575f80fd5b8335925060208401359150604084013561ffff8116811461264f575f80fd5b809150509250925092565b5f805f6060848603121561266c575f80fd5b833561267781612596565b925060208401359150604084013561264f81612596565b5f8083601f84011261269e575f80fd5b5081356001600160401b038111156126b4575f80fd5b6020830191508360208260051b8501011115610bae575f80fd5b5f80602083850312156126df575f80fd5b82356001600160401b038111156126f4575f80fd5b6127008582860161268e565b90969095509350505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b8281101561276157603f1988860301845261274f8583516123e3565b94509285019290850190600101612733565b5092979650505050505050565b5f806040838503121561277f575f80fd5b82359150602083013561279181612596565b809150509250929050565b5f805f604084860312156127ae575f80fd5b8335925060208401356001600160401b038111156127ca575f80fd5b6122f78682870161268e565b5f805f606084860312156127e8575f80fd5b833592506127f86020850161224b565b9150604084013561264f81612596565b5f8060408385031215612819575f80fd5b823561282481612596565b9150602083013561279181612596565b5f82516128458184602087016123c1565b9190910192915050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156105705761057061284f565b818382375f9101908152919050565b600181811c9082168061289957607f821691505b6020821081036128b757634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156114e457805f5260205f20601f840160051c810160208510156128e25750805b601f840160051c820191505b81811015611149575f81556001016128ee565b6001600160401b03831115612918576129186124c6565b61292c836129268354612885565b836128bd565b5f601f84116001811461295d575f85156129465750838201355b5f19600387901b1c1916600186901b178355611149565b5f83815260208120601f198716915b8281101561298c578685013582556020948501946001909201910161296c565b50868210156129a8575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b604081525f6129f56040830186886129ba565b8281036020840152612a088185876129ba565b979650505050505050565b634e487b7160e01b5f52603260045260245ffd5b602081525f6114f66020830184866129ba565b5f6001600160401b03808316818103612a5557612a5561284f565b6001019392505050565b81516001600160401b03811115612a7857612a786124c6565b612a8c81612a868454612885565b846128bd565b602080601f831160018114612abf575f8415612aa85750858301515b5f19600386901b1c1916600185901b178555612b16565b5f85815260208120601f198616915b82811015612aed57888601518255948401946001909101908401612ace565b5085821015612b0a57878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b604081525f612b3060408301866123e3565b8281036020840152612b438185876129ba565b9695505050505050565b5f60208284031215612b5d575f80fd5b8151610d8c81612596565b5f61ffff821680612b7b57612b7b61284f565b5f190192915050565b604081525f612b9660408301856123e3565b905061ffff831660208301529392505050565b5f61ffff808316818103612a5557612a5561284f565b606081525f612bd160608301866123e3565b61ffff851660208401528281036040840152612b4381856123e3565b808201808211156105705761057061284f565b5f808335601e19843603018112612c15575f80fd5b8301803591506001600160401b03821115612c2e575f80fd5b602001915036819003821315610bae575f80fd5b5f8085851115612c50575f80fd5b83861115612c5c575f80fd5b5050820193919092039150565b80356020831015610570575f19602084900360031b1b1692915050565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{}},"0xf3810eb7d64d1c11ae12727d957c6202b24492f5":{"nonce":1,"balance":"0x0","code":"0x6080604052348015600e575f80fd5b50600436106030575f3560e01c806350d25bcd146034578063e5c19b2d146048575b5f80fd5b5f5460405190815260200160405180910390f35b605760533660046059565b5f55565b005b5f602082840312156068575f80fd5b503591905056fea164736f6c6343000818000a","storage":{"0x0":"0x5f5e100"}},"0xf670681605efc4efc804f5a9b97ee89520473d56":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c80638da5cb5b11610088578063c66485b211610063578063c66485b2146101da578063da8c229e146101ed578063e0dba60f1461021f578063f2fde38b14610232575f80fd5b80638da5cb5b146101a4578063bffbe61c146101b4578063c47f0027146101c7575f80fd5b806365669631116100c35780636566963114610161578063715018a6146101745780637a806d6b1461017e578063828eab0e14610191575f80fd5b80630f5a5466146100e95780631e83409a1461010f5780633f15457f14610122575b5f80fd5b6100fc6100f7366004610958565b610245565b6040519081526020015b60405180910390f35b6100fc61011d36600461098f565b610258565b6101497f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a981565b6040516001600160a01b039091168152602001610106565b6100fc61016f3660046109aa565b610279565b61017c610526565b005b6100fc61018c366004610a8f565b610539565b600254610149906001600160a01b031681565b5f546001600160a01b0316610149565b6100fc6101c236600461098f565b6105ae565b6100fc6101d5366004610b00565b610608565b61017c6101e836600461098f565b610624565b61020f6101fb36600461098f565b60016020525f908152604090205460ff1681565b6040519015158152602001610106565b61017c61022d366004610b47565b6106e4565b61017c61024036600461098f565b61074a565b5f610251338484610279565b9392505050565b6002545f9061027390339084906001600160a01b0316610279565b92915050565b5f836001600160a01b0381163314806102a05750335f9081526001602052604090205460ff165b80610334575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063e985e9c590604401602060405180830381865afa158015610310573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103349190610b73565b806103435750610343816107c3565b6103e05760405162461bcd60e51b815260206004820152605b60248201527f526576657273655265676973747261723a2043616c6c6572206973206e6f742060448201527f6120636f6e74726f6c6c6572206f7220617574686f726973656420627920616460648201527f6472657373206f7220746865206164647265737320697473656c660000000000608482015260a4015b60405180910390fd5b5f6103ea8661083a565b604080517f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e2602080830191909152818301849052825180830384018152606090920192839052815191012091925081906001600160a01b038916907f6ada868dd3058cf77a48a74489fd7963688e5464b2b0fa957ace976243270e92905f90a36040516305ef2c7f60e41b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26004820152602481018390526001600160a01b03878116604483015286811660648301525f60848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610505575f80fd5b505af1158015610517573d5f803e3d5ffd5b50929998505050505050505050565b61052e61089c565b6105375f6108f5565b565b5f80610546868686610279565b604051637737221360e01b81529091506001600160a01b038516906377372213906105779084908790600401610b8e565b5f604051808303815f87803b15801561058e575f80fd5b505af11580156105a0573d5f803e3d5ffd5b509298975050505050505050565b5f7f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26105d98361083a565b604080516020810193909352820152606001604051602081830303815290604052805190602001209050919050565b6002545f9061027390339081906001600160a01b031685610539565b61062c61089c565b6001600160a01b03811661069b5760405162461bcd60e51b815260206004820152603060248201527f526576657273655265676973747261723a205265736f6c76657220616464726560448201526f07373206d757374206e6f7420626520360841b60648201526084016103d7565b600280546001600160a01b0319166001600160a01b0383169081179091556040517feae17a84d9eb83d8c8eb317f9e7d64857bc363fa51674d996c023f4340c577cf905f90a250565b6106ec61089c565b6001600160a01b0382165f81815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b61075261089c565b6001600160a01b0381166107b75760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016103d7565b6107c0816108f5565b50565b5f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801561081e575060408051601f3d908101601f1916820190925261081b91810190610be2565b60015b61082957505f919050565b6001600160a01b0316331492915050565b5f60285b8015610891575f19016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a81536010909204915f19016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a815360108304925061083e565b505060285f20919050565b5f546001600160a01b031633146105375760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016103d7565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146107c0575f80fd5b5f8060408385031215610969575f80fd5b823561097481610944565b9150602083013561098481610944565b809150509250929050565b5f6020828403121561099f575f80fd5b813561025181610944565b5f805f606084860312156109bc575f80fd5b83356109c781610944565b925060208401356109d781610944565b915060408401356109e781610944565b809150509250925092565b634e487b7160e01b5f52604160045260245ffd5b5f82601f830112610a15575f80fd5b813567ffffffffffffffff80821115610a3057610a306109f2565b604051601f8301601f19908116603f01168101908282118183101715610a5857610a586109f2565b81604052838152866020858801011115610a70575f80fd5b836020870160208301375f602085830101528094505050505092915050565b5f805f8060808587031215610aa2575f80fd5b8435610aad81610944565b93506020850135610abd81610944565b92506040850135610acd81610944565b9150606085013567ffffffffffffffff811115610ae8575f80fd5b610af487828801610a06565b91505092959194509250565b5f60208284031215610b10575f80fd5b813567ffffffffffffffff811115610b26575f80fd5b610b3284828501610a06565b949350505050565b80151581146107c0575f80fd5b5f8060408385031215610b58575f80fd5b8235610b6381610944565b9150602083013561098481610b3a565b5f60208284031215610b83575f80fd5b815161025181610b3a565b8281525f60206040602084015283518060408501525f5b81811015610bc157858101830151858201606001528201610ba5565b505f606082860101526060601f19601f830116850101925050509392505050565b5f60208284031215610bf2575f80fd5b81516102518161094456fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2":"0x9df67c91f1bfcb4d966cf764e9218685e7c59e8a","0x1f5b7623941da966ad7183d9cbb6db584f6d4add26919ac31a2d3f19a164e7e1":"0x1","0xbe5de2149ce76ca5934fa63455cd675fd52e2d30f3328985d298a627ca0f05e9":"0x1"}},"0xf8c26340c1eaea6c7ff1760b25005e1306953572":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061010b5760003560e01c80638c87a4ea116100a2578063b87abc1111610071578063b87abc1114610244578063c597407314610257578063ce92b33e1461026a578063e837ae741461027d578063ec129eea146102905761010b565b80638c87a4ea146101ea5780638f69c188146101fd578063a3557e6c14610210578063b85afd28146102235761010b565b806347c81699116100de57806347c8169914610181578063672b9f81146101945780636ccbae5f146101b55780637b103999146101d55761010b565b80631bd8cc1a146101105780631be5e7ed146101395780632c3d376d14610159578063310bd74b1461016c575b600080fd5b61012361011e3660046117b4565b6102a3565b6040516101309190611eee565b60405180910390f35b61014c610147366004611aec565b6104f2565b6040516101309190611fd6565b61014c610167366004611b21565b610673565b61017f61017a366004611b21565b610714565b005b61017f61018f3660046119b5565b6107c0565b6101a76101a2366004611b94565b6108ef565b604051610130929190611fe7565b6101c86101c3366004611b21565b6109c3565b604051610130919061204c565b6101dd6109d5565b6040516101309190611ea9565b6101236101f836600461191d565b6109e5565b61017f61020b366004611878565b610a74565b61017f61021e366004611878565b610af0565b610236610231366004611951565b610b1b565b604051610130929190611eff565b61017f610252366004611b3f565b610ca9565b61017f610265366004611a39565b610d43565b61017f610278366004611808565b610df9565b61017f61028b366004611808565b610e97565b61017f61029e366004611808565b610f4e565b60015460405163b3f9e4cb60e01b815260609183916001600160a01b039091169063b3f9e4cb906102d890849060040161204c565b60206040518083038186803b1580156102f057600080fd5b505afa158015610304573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610328919081019061178e565b6001600160a01b0316306001600160a01b0316146103615760405162461bcd60e51b81526004016103589061201c565b60405180910390fd5b604080518581526020808702820101909152849060609082801561039957816020015b60608152602001906001900390816103845790505b506000868152600360205260408120549192505b838110156104e557600087815260026020908152604080832085845290915290208989838181106103da57fe5b602002820190508035601e19368490030181126103f657600080fd5b909101602081019150356001600160401b0381111561041457600080fd5b3681900382131561042457600080fd5b604051610432929190611e70565b9081526040805160209281900383018120805460026001821615610100026000190190911604601f810185900485028301850190935282825290929091908301828280156104c15780601f10610496576101008083540402835291602001916104c1565b820191906000526020600020905b8154815290600101906020018083116104a457829003601f168201915b50505050508382815181106104d257fe5b60209081029190910101526001016103ad565b5090979650505050505050565b60015460405163b3f9e4cb60e01b815260609183916001600160a01b039091169063b3f9e4cb9061052790849060040161204c565b60206040518083038186803b15801561053f57600080fd5b505afa158015610553573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610577919081019061178e565b6001600160a01b0316306001600160a01b0316146105a75760405162461bcd60e51b81526004016103589061201c565b6000838152600260209081526040808320600383528184205484529091529081902090516105d6908690611e7d565b9081526040805160209281900383018120805460026001821615610100026000190190911604601f810185900485028301850190935282825290929091908301828280156106655780601f1061063a57610100808354040283529160200191610665565b820191906000526020600020905b81548152906001019060200180831161064857829003601f168201915b505050505091505092915050565b60008181526004602090815260409182902080548351601f60026000196101006001861615020190931692909204918201849004840281018401909452808452606093928301828280156107085780601f106106dd57610100808354040283529160200191610708565b820191906000526020600020905b8154815290600101906020018083116106eb57829003601f168201915b50505050509050919050565b60015460405163430c208160e01b815282916001600160a01b03169063430c2081906107469033908590600401611ec5565b60206040518083038186803b15801561075e57600080fd5b505afa158015610772573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506107969190810190611997565b6107b25760405162461bcd60e51b81526004016103589061202c565b6107bc4283610fec565b5050565b60015460405163430c208160e01b815282916001600160a01b03169063430c2081906107f29033908590600401611ec5565b60206040518083038186803b15801561080a57600080fd5b505afa15801561081e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506108429190810190611997565b61085e5760405162461bcd60e51b81526004016103589061202c565b6108e7600360008481526020019081526020016000205487878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061108e915050565b505050505050565b60015460405163b3f9e4cb60e01b8152606091829184916001600160a01b03169063b3f9e4cb9061092490849060040161204c565b60206040518083038186803b15801561093c57600080fd5b505afa158015610950573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610974919081019061178e565b6001600160a01b0316306001600160a01b0316146109a45760405162461bcd60e51b81526004016103589061201c565b6109ad85610673565b92506109b983856104f2565b9150509250929050565b60009081526020819052604090205490565b6001546001600160a01b03165b90565b6060600082519050606081604051908082528060200260200182016040528015610a2357816020015b6060815260200190600190039081610a0e5790505b50905060005b82811015610a6c57610a4d858281518110610a4057fe5b6020026020010151610673565b828281518110610a5957fe5b6020908102919091010152600101610a29565b509392505050565b610acf63ce92b33e60e01b858585604051602401610a9493929190611f24565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092178252519020838361129f565b600082815260036020526040902054610aea908585856113c3565b50505050565b610b1063ec129eea60e01b858585604051602401610a9493929190611f24565b610aea84848461140a565b60015460405163b3f9e4cb60e01b8152606091829184916001600160a01b03169063b3f9e4cb90610b5090849060040161204c565b60206040518083038186803b158015610b6857600080fd5b505afa158015610b7c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610ba0919081019061178e565b6001600160a01b0316306001600160a01b031614610bd05760405162461bcd60e51b81526004016103589061201c565b8451604080518281526020808402820101909152818015610c0557816020015b6060815260200190600190039081610bf05790505b50935080604051908082528060200260200182016040528015610c3c57816020015b6060815260200190600190039081610c275790505b50925060005b81811015610c9f57610c67878281518110610c5957fe5b6020026020010151876108ef565b8651879084908110610c7557fe5b60200260200101868481518110610c8857fe5b602090810291909101019190915252600101610c42565b5050509250929050565b610d3463310bd74b60e01b84604051602401610cc5919061204c565b60408051601f19818403018152918152602080830180516001600160e01b03166001600160e01b031990951694909417845291519092208251601f8601839004830281018301909352848352918691869086908190840183828082843760009201919091525061129f92505050565b610d3e4284610fec565b505050565b610d676347c8169960e01b8888888888604051602401610cc5959493929190611f96565b610df0600360008581526020019081526020016000205488888080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8c018190048102820181019092528a815292508a915089908190840183828082843760009201919091525089925061108e915050565b50505050505050565b60015460405163430c208160e01b815282916001600160a01b03169063430c208190610e2b9033908590600401611ec5565b60206040518083038186803b158015610e4357600080fd5b505afa158015610e57573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610e7b9190810190611997565b610acf5760405162461bcd60e51b81526004016103589061202c565b6005546040516355138f0d60e11b81526001600160a01b039091169063aa271e1a90610ec7903390600401611eb7565b60206040518083038186803b158015610edf57600080fd5b505afa158015610ef3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610f179190810190611997565b610f335760405162461bcd60e51b81526004016103589061203c565b600081815260036020526040902054610d3e908484846113c3565b60015460405163430c208160e01b815282916001600160a01b03169063430c208190610f809033908590600401611ec5565b60206040518083038186803b158015610f9857600080fd5b505afa158015610fac573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610fd09190810190611997565b610b105760405162461bcd60e51b81526004016103589061202c565b600081815260036020526040808220849055600154905163538361a760e01b81526001600160a01b039091169163538361a79161102d91859160040161205a565b600060405180830381600087803b15801561104757600080fd5b505af115801561105b573d6000803e3d6000fd5b50506040518392507f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9150600090a25050565b825160208085019190912060008381526002835260408082208883529093528281209251919290916110c1908790611e7d565b908152604051602091819003919091018120546001805463538361a760e01b84526002918316156101000260001901909216041592506001600160a01b03169063538361a7906111179086908690600401612075565b600060405180830381600087803b15801561113157600080fd5b505af1158015611145573d6000803e3d6000fd5b50505060008481526002602090815260408083208a8452909152908190209051869250611173908890611e7d565b90815260200160405180910390209080519060200190611194929190611521565b50600082815260046020526040902054600260001961010060018416150201909116046111dc57600082815260046020908152604090912086516111da92880190611521565b505b801561123157846040516111f09190611e7d565b6040518091039020837f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f86876040516112289190611fd6565b60405180910390a35b8360405161123f9190611e7d565b6040518091039020856040516112559190611e7d565b6040518091039020847f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d92888860405161128f929190611fe7565b60405180910390a4505050505050565b6000828152602081815260408083205490519092916112f59185916112e9916112ce918a913091899101611e39565b60405160208183030381529060405280519060200120611414565b9063ffffffff61144416565b90506001600160a01b0381161580159061138c575060015460405163430c208160e01b81526001600160a01b039091169063430c20819061133c9084908890600401611ee0565b60206040518083038186803b15801561135457600080fd5b505afa158015611368573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061138c9190810190611997565b6113a85760405162461bcd60e51b81526004016103589061200c565b50505060009081526020819052604090208054600101905550565b825160005b818110156108e757611402868683815181106113e057fe5b60200260200101518684815181106113f457fe5b60200260200101518661108e565b6001016113c8565b610f334282610fec565b6000816040516020016114279190611e89565b604051602081830303815290604052805190602001209050919050565b600081516041146114575750600061151b565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a082111561149d576000935050505061151b565b8060ff16601b141580156114b557508060ff16601c14155b156114c6576000935050505061151b565b600186828585604051600081526020016040526040516114e99493929190611f58565b6020604051602081039080840390855afa15801561150b573d6000803e3d6000fd5b5050506020604051035193505050505b92915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061156257805160ff191683800117855561158f565b8280016001018555821561158f579182015b8281111561158f578251825591602001919060010190611574565b5061159b92915061159f565b5090565b6109e291905b8082111561159b57600081556001016115a5565b805161151b816121a4565b60008083601f8401126115d657600080fd5b5081356001600160401b038111156115ed57600080fd5b60208301915083602082028301111561160557600080fd5b9250929050565b600082601f83011261161d57600080fd5b813561163061162b826120a9565b612083565b81815260209384019390925082018360005b8381101561166e57813586016116588882611734565b8452506020928301929190910190600101611642565b5050505092915050565b600082601f83011261168957600080fd5b813561169761162b826120a9565b915081818352602084019350602081019050838560208402820111156116bc57600080fd5b60005b8381101561166e57816116d28882611783565b84525060209283019291909101906001016116bf565b805161151b816121bb565b60008083601f84011261170557600080fd5b5081356001600160401b0381111561171c57600080fd5b60208301915083600182028301111561160557600080fd5b600082601f83011261174557600080fd5b813561175361162b826120c9565b9150808252602083016020830185838301111561176f57600080fd5b61177a83828461214b565b50505092915050565b803561151b816121c4565b6000602082840312156117a057600080fd5b60006117ac84846115b9565b949350505050565b6000806000604084860312156117c957600080fd5b83356001600160401b038111156117df57600080fd5b6117eb868287016115c4565b935093505060206117fe86828701611783565b9150509250925092565b60008060006060848603121561181d57600080fd5b83356001600160401b0381111561183357600080fd5b61183f8682870161160c565b93505060208401356001600160401b0381111561185b57600080fd5b6118678682870161160c565b92505060406117fe86828701611783565b6000806000806080858703121561188e57600080fd5b84356001600160401b038111156118a457600080fd5b6118b08782880161160c565b94505060208501356001600160401b038111156118cc57600080fd5b6118d88782880161160c565b93505060406118e987828801611783565b92505060608501356001600160401b0381111561190557600080fd5b61191187828801611734565b91505092959194509250565b60006020828403121561192f57600080fd5b81356001600160401b0381111561194557600080fd5b6117ac84828501611678565b6000806040838503121561196457600080fd5b82356001600160401b0381111561197a57600080fd5b61198685828601611678565b92505060206109b985828601611783565b6000602082840312156119a957600080fd5b60006117ac84846116e8565b6000806000806000606086880312156119cd57600080fd5b85356001600160401b038111156119e357600080fd5b6119ef888289016116f3565b955095505060208601356001600160401b03811115611a0d57600080fd5b611a19888289016116f3565b93509350506040611a2c88828901611783565b9150509295509295909350565b60008060008060008060006080888a031215611a5457600080fd5b87356001600160401b03811115611a6a57600080fd5b611a768a828b016116f3565b975097505060208801356001600160401b03811115611a9457600080fd5b611aa08a828b016116f3565b95509550506040611ab38a828b01611783565b93505060608801356001600160401b03811115611acf57600080fd5b611adb8a828b016116f3565b925092505092959891949750929550565b60008060408385031215611aff57600080fd5b82356001600160401b03811115611b1557600080fd5b61198685828601611734565b600060208284031215611b3357600080fd5b60006117ac8484611783565b600080600060408486031215611b5457600080fd5b6000611b608686611783565b93505060208401356001600160401b03811115611b7c57600080fd5b611b88868287016116f3565b92509250509250925092565b60008060408385031215611ba757600080fd5b60006119868585611783565b6000611bbf8383611ccb565b9392505050565b611bcf8161212a565b82525050565b611bcf81612108565b611bcf611bea82612108565b612183565b6000611bfa826120f6565b611c0481856120fa565b935083602082028501611c16856120f0565b8060005b85811015611c505784840389528151611c338582611bb3565b9450611c3e836120f0565b60209a909a0199925050600101611c1a565b5091979650505050505050565b611bcf816109e2565b611bcf611c72826109e2565b6109e2565b611bcf81612135565b6000611c8c83856120fa565b9350611c9983858461214b565b611ca283612194565b9093019392505050565b6000611cb88385612103565b9350611cc583858461214b565b50500190565b6000611cd6826120f6565b611ce081856120fa565b9350611cf0818560208601612157565b611ca281612194565b6000611d04826120f6565b611d0e8185612103565b9350611d1e818560208601612157565b9290920192915050565b6000611d35601c83612103565b7f19457468657265756d205369676e6564204d6573736167653a0a3332000000008152601c0192915050565b6000611d6e6011836120fa565b70494e56414c49445f5349474e415455524560781b815260200192915050565b6000611d9b601d836120fa565b7f5245534f4c5645525f44455441434845445f46524f4d5f444f4d41494e000000815260200192915050565b6000611dd4601f836120fa565b7f53454e4445525f49535f4e4f545f415050524f5645445f4f525f4f574e455200815260200192915050565b6000611e0d6014836120fa565b7329a2a72222a92fa4a9afa727aa2fa6a4a72a22a960611b815260200192915050565b611bcf81612124565b6000611e458286611c66565b602082019150611e558285611bde565b601482019150611e658284611c66565b506020019392505050565b60006117ac828486611cac565b6000611bbf8284611cf9565b6000611e9482611d28565b9150611ea08284611c66565b50602001919050565b6020810161151b8284611bd5565b6020810161151b8284611bc6565b60408101611ed38285611bc6565b611bbf6020830184611c5d565b60408101611ed38285611bd5565b60208082528101611bbf8184611bef565b60408082528101611f108185611bef565b905081810360208301526117ac8184611bef565b60608082528101611f358186611bef565b90508181036020830152611f498185611bef565b90506117ac6040830184611c5d565b60808101611f668287611c5d565b611f736020830186611e30565b611f806040830185611c5d565b611f8d6060830184611c5d565b95945050505050565b60608082528101611fa8818789611c80565b90508181036020830152611fbd818587611c80565b9050611fcc6040830184611c5d565b9695505050505050565b60208082528101611bbf8184611ccb565b60408082528101611ff88185611ccb565b905081810360208301526117ac8184611ccb565b6020808252810161151b81611d61565b6020808252810161151b81611d8e565b6020808252810161151b81611dc7565b6020808252810161151b81611e00565b6020810161151b8284611c5d565b604081016120688285611c5d565b611bbf6020830184611c77565b60408101611ed38285611c5d565b6040518181016001600160401b03811182821017156120a157600080fd5b604052919050565b60006001600160401b038211156120bf57600080fd5b5060209081020190565b60006001600160401b038211156120df57600080fd5b506020601f91909101601f19160190565b60200190565b5190565b90815260200190565b919050565b600061151b82612118565b151590565b6001600160a01b031690565b60ff1690565b600061151b82612140565b600061151b826109e2565b600061151b82612108565b82818337506000910152565b60005b8381101561217257818101518382015260200161215a565b83811115610aea5750506000910152565b600061151b82600061151b8261219e565b601f01601f191690565b60601b90565b6121ad81612108565b81146121b857600080fd5b50565b6121ad81612113565b6121ad816109e256fea365627a7a723158207a1d8dfd286d14fcafd1812a4c44813691ac746a5a23fa711ac5551c9509654d6c6578706572696d656e74616cf564736f6c634300050c0040","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x5":"0x4a3c194eb88966178bfdd81744dddafed611b830"}},"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa":{"nonce":93,"balance":"0x35aac60bbae01d424b","code":"0x","storage":{}}},"best_block_number":"0x5d"} \ No newline at end of file From 993aaa1c9992e17d6c215dfcc3be0378c3c40f3d Mon Sep 17 00:00:00 2001 From: derain Date: Wed, 22 May 2024 12:25:01 +0300 Subject: [PATCH 15/21] [REG-1273] - Fix sandbox tests --- sandbox/index.test.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sandbox/index.test.ts b/sandbox/index.test.ts index c37189e1..4e761cdd 100644 --- a/sandbox/index.test.ts +++ b/sandbox/index.test.ts @@ -70,7 +70,7 @@ describe('Sandbox', async () => { }); after(async () => { - await sandbox.stop(); + sandbox.stop(); }); describe('UNS', () => { From 98fa1178b5f3df9a3d3c7b88c028e0eaf68cb80b Mon Sep 17 00:00:00 2001 From: derain Date: Wed, 22 May 2024 12:43:36 +0300 Subject: [PATCH 16/21] [REG-1273] - Update sandbox CHANGELOG.md --- sandbox/CHANGELOG.md | 3 ++ sandbox/ganache-service.ts | 63 -------------------------------------- 2 files changed, 3 insertions(+), 63 deletions(-) delete mode 100644 sandbox/ganache-service.ts diff --git a/sandbox/CHANGELOG.md b/sandbox/CHANGELOG.md index 05294eef..af530f83 100644 --- a/sandbox/CHANGELOG.md +++ b/sandbox/CHANGELOG.md @@ -1,3 +1,6 @@ +## v1.0 +- Migrate sandbox RPC to Foundry Anvil server + ## v0.6 - Rebuild sandbox (UNS v0.6.0) diff --git a/sandbox/ganache-service.ts b/sandbox/ganache-service.ts deleted file mode 100644 index c92fa57f..00000000 --- a/sandbox/ganache-service.ts +++ /dev/null @@ -1,63 +0,0 @@ -import { server, Server, EthereumProvider, ServerOptions } from 'ganache'; - -const DEFAULT_PORT = 7545; - -export type ServerConfigOptions = ServerOptions & { - url: string; - port?: number; - hostname?: string; -}; - -export class GanacheService { - public server: Server; - public provider: EthereumProvider; - - private options: ServerConfigOptions; - - constructor (options: ServerConfigOptions) { - this.options = this.validateAndTransformOptions(options); - this.server = server(this.options as ServerOptions); - this.provider = this.server.provider; - } - - startServer () { - const { port } = this.options; - - if (!port) { - throw new Error('Port sohuld be defined in the ServerConfigOptions URL'); - } - - return this.server.listen(port); - } - - stopServer () { - return this.server.close(); - } - - private validateAndTransformOptions (options: ServerConfigOptions): ServerConfigOptions { - const validatedOptions = options; - - const url = new URL(options.url); - if (url.hostname !== 'localhost' && url.hostname !== '127.0.0.1') { - throw new Error('Ganache network only works with localhost'); - } - - validatedOptions.hostname = url.hostname; - - validatedOptions.port = url.port !== undefined && url.port !== '' ? parseInt(url.port, 10) : DEFAULT_PORT; - - const optionsToInclude = ['accountsKeyPath', 'dbPath', 'defaultBalanceEther', 'totalAccounts', 'unlockedAccounts']; - for (const [key, value] of Object.entries(options)) { - if (value !== undefined && optionsToInclude.includes(key)) { - validatedOptions[this.snakeCase(key)] = value; - delete validatedOptions[key]; - } - } - - return validatedOptions; - } - - private snakeCase (value: string): string { - return value.replace(/([A-Z]){1}/g, (match) => `_${match.toLowerCase()}`); - } -} From 70287c1569f2f6c894c8c836ad3be5a47eeb4f27 Mon Sep 17 00:00:00 2001 From: derain Date: Wed, 22 May 2024 13:27:09 +0300 Subject: [PATCH 17/21] [REG-1273] - Fix foundry version --- sandbox/foundry-cli.ts | 3 +++ sandbox/foundry/foundryup.sh | 1 - sandbox/state.json | 2 +- 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/sandbox/foundry-cli.ts b/sandbox/foundry-cli.ts index 926b8469..5f0035e7 100644 --- a/sandbox/foundry-cli.ts +++ b/sandbox/foundry-cli.ts @@ -1,6 +1,8 @@ import { exec, execSync, spawn } from 'child_process'; import path from 'path'; +const FOUNDRY_VERSION = 'nightly-23700c9233314e06ba65be4522daf3aa89130dc0'; + /** * @returns the path to the anvil path to use, if `anvil` is in path then this will be returned * @@ -55,6 +57,7 @@ async function runFoundryUp (): Promise { env: { ...process.env, FOUNDRY_DIR: foundryDir(), + FOUNDRYUP_VERSION: FOUNDRY_VERSION, }, }); p.on('exit', (code) => { diff --git a/sandbox/foundry/foundryup.sh b/sandbox/foundry/foundryup.sh index a836b059..f36be170 100755 --- a/sandbox/foundry/foundryup.sh +++ b/sandbox/foundry/foundryup.sh @@ -125,7 +125,6 @@ main() { # Compute the URL of the release tarball in the Foundry repository. RELEASE_URL="https://github.com/${FOUNDRYUP_REPO}/releases/download/${FOUNDRYUP_TAG}/" BIN_ARCHIVE_URL="${RELEASE_URL}foundry_${FOUNDRYUP_VERSION}_${PLATFORM}_${ARCHITECTURE}.$EXT" - MAN_TARBALL_URL="${RELEASE_URL}foundry_man_${FOUNDRYUP_VERSION}.tar.gz" # Download and extract the binaries archive say "downloading latest forge, cast, anvil, and chisel" diff --git a/sandbox/state.json b/sandbox/state.json index c670c740..f524b35e 100644 --- a/sandbox/state.json +++ b/sandbox/state.json @@ -1 +1 @@ -{"block":{"number":"0x5d","coinbase":"0x0000000000000000000000000000000000000000","timestamp":"0x664db842","gas_limit":"0x6691b7","basefee":"0x1b818","difficulty":"0x0","prevrandao":"0x0000000000000000000000000000000000000000000000000000000000000000","blob_excess_gas_and_price":{"excess_blob_gas":0,"blob_gasprice":1}},"accounts":{"0x0000000000000000000000000000000000000000":{"nonce":0,"balance":"0xc968d22370860","code":"0x","storage":{}},"0x00e39a5004299871ab3b00fed5a39a715f181d02":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x66":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x67":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xd178b720229c39de617846f84cf9c8d32a63a23d","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0x0458f653495fb8d9bd0e7df468c2bf76d26c7bd9":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f7e83aee1461002d575b5f80fd5b61004061003b3660046105ba565b610054565b604051901515815260200160405180910390f35b5f601482146100a95760405162461bcd60e51b815260206004820152601860248201527f496e76616c696420736861312068617368206c656e6774680000000000000000604482015260640160405180910390fd5b5f6100ec5f85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101599050565b6bffffffffffffffffffffffff191690505f61013c87878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061018a92505050565b6bffffffffffffffffffffffff1916919091149695505050505050565b81515f90610168836014610621565b1115610172575f80fd5b5001602001516bffffffffffffffffffffffff191690565b5f6040518251602084019350604067ffffffffffffffc0600183011601600982820310600181036101bc576040820191505b50776745230100efcdab890098badcfe001032547600c3d2e1f061020d565b5f8383101561020657508082015192829003926020841015610206575f1960208590036101000a0119165b9392505050565b5f5b82811015610514576102228482896101db565b85526102328460208301896101db565b60208601526040818503106001810361024e5760808286038701535b506040830381146001810361026b57602086018051600887021790525b5060405b60808110156102f357858101603f19810151603719820151601f19830151600b198401516002911891909218189081027ffffffffefffffffefffffffefffffffefffffffefffffffefffffffefffffffe1663800000009091047c010000000100000001000000010000000100000001000000010000000116179052600c0161026f565b5060805b61014081101561037c57858101607f19810151606f19820151603f198301516017198401516004911891909218189081027ffffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffc1663400000009091047c0300000003000000030000000300000003000000030000000300000003161790526018016102f7565b50815f805f5b60508110156104ea576014810480156103b257600181146103d957600281146103fe576003811461042857610449565b600160281b8504600160501b86048118600160781b870416189350635a8279999250610449565b600160281b8504600160781b8604600160501b870418189350636ed9eba19250610449565b600160501b8504600160781b8604818117600160281b8804169116179350638f1bbcdc9250610449565b600160281b8504600160781b8604600160501b87041818935063ca62c1d692505b50601f600160bb1b8504168063ffffffe06001609b1b87041617905080840190508063ffffffff8616019050808301905080600160e01b600484028c015104019050600160a01b8102600160281b860417945050600160501b633fffffff600160521b86041663c00000006604000000000000870416170277ffffffff00ffffffff000000000000ffffffff00ffffffff8516179350600181019050610382565b5050509190910177ffffffff00ffffffff00ffffffff00ffffffff00ffffffff169060400161020f565b50600160601b63ffffffff821667ffffffff000000006101008404166bffffffff00000000000000006201000085041663ffffffff60601b630100000086041663ffffffff60801b6401000000008704161717171702945050505050919050565b5f8083601f840112610585575f80fd5b50813567ffffffffffffffff81111561059c575f80fd5b6020830191508360208285010111156105b3575f80fd5b9250929050565b5f805f80604085870312156105cd575f80fd5b843567ffffffffffffffff808211156105e4575f80fd5b6105f088838901610575565b90965094506020870135915080821115610608575f80fd5b5061061587828801610575565b95989497509550505050565b8082018082111561064057634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x06e2822b8856749ed179c77140dbc5f5a27410a4":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063de8f50a11461002d575b5f80fd5b61004061003b36600461051c565b610054565b604051901515815260200160405180910390f35b5f6060805f61009c60048b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506102e79050565b60ff1690508015610166576100f060058261ffff168c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b925061015f6101008260056105c3565b61ffff908116906005906101169085168d6105e5565b61012091906105e5565b8c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b915061021d565b6101a960058b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250929392505061038b9050565b90506101f460078261ffff168c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b925061021a6102048260076105c3565b61ffff908116906007906101169085168d6105e5565b91505b5f606061026084868a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152506103b192505050565b90925090508180156102d757506102856020825161027e91906105e5565b82906103cb565b60028b8b6040516102979291906105f8565b602060405180830381855afa1580156102b2573d5f803e3d5ffd5b5050506040513d601f19601f820116820180604052508101906102d59190610607565b145b9c9b505050505050505050505050565b5f8282815181106102fa576102fa61061e565b016020015160f81c90505b92915050565b825160609061031a8385610632565b1115610324575f80fd5b5f8267ffffffffffffffff81111561033e5761033e610645565b6040519080825280601f01601f191660200182016040528015610368576020820181803683370190505b509050602080820190868601016103808282876103ed565b509095945050505050565b81515f9061039a836002610632565b11156103a4575f80fd5b50016002015161ffff1690565b5f60606103bf838587610442565b91509150935093915050565b81515f906103da836020610632565b11156103e4575f80fd5b50016020015190565b602081106104255781518352610404602084610632565b9250610411602083610632565b915061041e6020826105e5565b90506103ed565b905182516020929092036101000a5f190180199091169116179052565b5f60605f85518551855188888860405160200161046496959493929190610686565b6040516020818303038152906040529050835167ffffffffffffffff81111561048f5761048f610645565b6040519080825280601f01601f1916602001820160405280156104b9576020820181803683370190505b50915083516020830182516020840160055afa925050935093915050565b5f8083601f8401126104e7575f80fd5b50813567ffffffffffffffff8111156104fe575f80fd5b602083019150836020828501011115610515575f80fd5b9250929050565b5f805f805f8060608789031215610531575f80fd5b863567ffffffffffffffff80821115610548575f80fd5b6105548a838b016104d7565b9098509650602089013591508082111561056c575f80fd5b6105788a838b016104d7565b90965094506040890135915080821115610590575f80fd5b5061059d89828a016104d7565b979a9699509497509295939492505050565b634e487b7160e01b5f52601160045260245ffd5b61ffff8181168382160190808211156105de576105de6105af565b5092915050565b81810381811115610305576103056105af565b818382375f9101908152919050565b5f60208284031215610617575f80fd5b5051919050565b634e487b7160e01b5f52603260045260245ffd5b80820180821115610305576103056105af565b634e487b7160e01b5f52604160045260245ffd5b5f81515f5b81811015610678576020818501810151868301520161065e565b505f93019283525090919050565b8681528560208201528460408201525f6106b56106af6106a96060850188610659565b86610659565b84610659565b9897505050505050505056fea164736f6c6343000818000a","storage":{}},"0x0712e8e819712c3bfdb098ce51c87a4ac0296fd8":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x0930ffb2c192b0c9a9dd2372cf7f2845ef39cbb6":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x65":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x66":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xbe92182cab5b84fd18b34881a0c32771e84f5b8b","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c8121905":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x107733fed96c4cd390c944a31f5425a7fb98ae5e":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x65":"0x556e73746f707061626c6520446f6d61696e7300000000000000000000000026","0x66":"0x5544000000000000000000000000000000000000000000000000000000000004","0x133":"0x68747470733a2f2f6578616d706c652e636f6d2f000000000000000000000028","0x134":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x9c74364589a7bce52d7a232f90c98b979577d9ab711dbe7e9fb985471178bff":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf29a433ca043c2d5f13825944af9d019209f338df87172c6b8012dce3044881":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf319a2ef598111826b455194189a27454a0286226eb066e1116f605e0373b37":"0x0","0x1257bbdf5bed452b3eda1d974a9839972d4d54d7fb1cde6a652e653346cc29b8":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x12c033f2252861b1bd15e9b5c71ef1cf26ca53de15eabc3b49e06f596e8755ec":"0x0","0x1348552952ac59b1c2522e84f684e36775420b449eddcdbd28f217183ed58b09":"0x0","0x149026695ebdd2bd6be0a7006aec5d10ddffbe46be181e4468980ea83c004fe9":"0x0","0x14c854a78d51371251661a408306c75d2515b5d509b295a58205e48267082bdc":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x18f06622a1abedc7bb78fcc98b2375188aef6c03b9247beee780b0b095d60285":"0x0","0x201ef5e312d372e2aeac4cf173b46ad2985127c7381f4f9acae5ebbd3a5e3861":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x2215c0abaeffcb5feae8a439b3185f8fba5dd6d97529a56c7609cd41fafdf5f1":"0x1","0x23513200931f98893f46373666c13964c7a821c5b40da7951b921629acf02735":"0x0","0x23f87654b79c6db28828f317e47d0c8deb9eaa2ea4e213fef901836c85036bf3":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x2e4566d865f2e159531492d7643e25e502917762b29082282ab9dfee8fbf54c7":"0x0","0x31fc31c15d389c5908095d314bb8b258352d51e18ac8a2f7fe15f3a0af519145":"0x0","0x3467fdbb447be3074b11c625b56e54d7ab44f3804bef205b07dd436d707d06d5":"0x0","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x62b11ad5f582a5c5d378fb310125b030042554f1","0x3cd80e7291e5f6dffa9af6eb70d47145a8fdd40acb8d09dfd0cf374e8c239b37":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x3f86c4990e663ffa5011ed38824fca68af7e0592eb22f41aebdec0ce84ee672e":"0x0","0x406aa3bf31381c8a323679af48792dfa2e7aa09dd0eb919e307dc4bf84216ff6":"0x0","0x47ce17acd30cc86e021ac7b23be8138ea767f6da503362aac5888a0679270eed":"0x0","0x4a7983c36f64e6df4d467cf706c128c273d30c24bbb172e251a5740624cc0bd3":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x4c42d98041cda7cb7d56b5d04731bd436366eb9f05c30f43671f1d1e2c0b0fa4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x55926eed7087c8cbfa1492f6d367f5e4c14c8d8cd59e2918c37184091369efb1":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x5b20f40cb5e9e634a90df9a72b516c11cc52281a4d1b7b67e672e2fe544ff22f":"0x0","0x6dac3e1cfae338e10c9c2f5000f6256d09afa83708761042001cea734f470ac1":"0x0","0x6defc32a546a6fb1b745bd1bb04e27085e94f01d7ef79587aee2c80853c43a53":"0x0","0x760b245be050a725a39b4fc089ad474a5fd40efa17101e112d30195d590779b4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x7bee59fcac76da32acb23def57eaaf959a4372a4fc180978fbd54f7a4c4b2f3d":"0x0","0x804aee9448e0b539a009ee7c6dd57e686c72e7b182e9622a42922b245a97e61e":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x825f7f8567cfd669c3beab41edff07d4aa51436123deeb0d3623b6a8fdec893c":"0x0","0x8717a3236e6a948df94444f035834fa8f7c5ee663a29f3580f3ef43ab051d6bd":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8a34e37883baf84417a33bb02eec8d1e43e363f617029800ff166614df3f112f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8bd1acdc45b63f1edf5db0b1444f1c4a6f82bf0a5a0a7231c2dd7b76a2b1e35c":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87":"0x0","0x8ed4e9fbdf86edd9f3eb1c8d4fbfc53a2eb863faf4cf5e0d2b307c0b33030091":"0x0","0x8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x90d72780b77edcd0c8daffbac0b21264679e851b734cb090e2b144eb3a28bb98":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x93fc964857984ff804a65eaceac4062669948f2b651ddc6b71373ad142bf45e0":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x9770fa903e700367e0306ab8fd70a2bb4f049417d341a2f8a2409d8d6a2218d1":"0x0","0xb1016fe231c2ed9dba8c95d2658191823b4b9ffa61a7aea530802c6b2ff27c41":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xbe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafe":"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f","0xbe7c5c707db1c91bd2c84880bb1e177b65886d295d9a62df8edfe38f8066cc81":"0x0","0xc3cd64a46de7309013ddb93a16a3024c2e46fb931e4744edf2610fb119f716f5":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xc563f9d3175978a619bae1a8175d3ea4be91d3890345085c5eb16f83b678a3d9":"0x0","0xc5b5cdb7b939f9d661f58f28c37e10cf71d45dacfea2581c88ae4a17aaf55e6e":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xd386775169d9e0716e9b5b08561984726edaa9febd0ca8e5468ecffa112078c7":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xe3b736cdcc6a09d7e3a05ffb63b11f11c91958d861443c3409d3fd863e8217bd":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xe3e5b75e3dff543bfbfe5b494e4e3243b4d9d0b3d794725cea46c28fe6be50e4":"0x0","0xe7d61626cac95282d296ee7ab5958e3e72e32eb959a7cab1d37c0f9d6d69c18a":"0x1a","0xeca5e1ccaa645ce2be97a867a1f8aeeb63ea833aeb009c0df0553b42b30c683f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf08305746cdba1d0eaa65036694838a3db122973267ffc57739d605c320c680a":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf0d566acc03395f71b37890f455d51d93197adf754ea72aba21427dc66b437df":"0x0","0xf230898ba4fe40c52f958d03013d995f822e25a5d4fae43bbdc6e92623cea0bd":"0x0","0xf245a9962043f44f4af98f9952a3bd29d91eb05418e4bb567b9de8f27e239b13":"0x0","0xf2a19ade13962e8675aecf2fbe51913877912f9e48e899806b6e06e82f9a980f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf2fab50b0b53245ddfa1bcfcdf4c73e209d6921dad704d173cf04cbbadc8e346":"0x0","0xfa6f3ee10d719cb3457d10c539ff3d77b8e56852ea62f68b2f9f85ad691ed6b4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xfff3abb219acc6ef4eed6e93a5682023229370196f352cdf3a71a88d881e3487":"0x0"}},"0x11dd97b7ca847dfb6504e61b7b9eb30f55e554a0":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a424740014610090575b600080fd5b610059610054366004610ba9565b6100b3565b6040516100669190610c98565b60405180910390f35b61008261007d366004610cab565b6101ce565b604051908152602001610066565b6100a361009e366004610ba9565b610332565b6040519015158152602001610066565b606060005a6001546040805163b3f9e4cb60e01b81529088013560048201529192506000916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561010a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061012e9190610cd9565b90506101c26101406020880188610cf6565b8260408901358561015460608c018c610d13565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8f018190048102820181019092528d815292508d91508c90819084018382808284376000920191909152506103fb92505050565b925050505b9392505050565b60025460015460405163b3f9e4cb60e01b8152600481018490526000926001600160a01b0390811692169063b3f9e4cb90602401602060405180830381865afa92505050801561023b575060408051601f3d908101601f1916820190925261023891810190610cd9565b60015b156102435790505b6001600160a01b0381163b156102c557604051636ccbae5f60e01b81526004810184905281906001600160a01b03821690636ccbae5f90602401602060405180830381865afa9250505080156102b6575060408051601f3d908101601f191682019092526102b391810190610d5a565b60015b156102c357949350505050565b505b600254604051636ccbae5f60e01b8152600481018590526001600160a01b0390911690636ccbae5f90602401602060405180830381865afa15801561030e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101c79190610d5a565b6001546040805163b3f9e4cb60e01b815290850135600482015260009182916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa158015610383573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103a79190610cd9565b90506103f26103b586610e0b565b8286868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506104d392505050565b95945050505050565b6060600080876001600160a01b0316866104178b8a898961051f565b6040516104249190610eb5565b60006040518083038160008787f1925050503d8060008114610462576040519150601f19603f3d011682016040523d82523d6000602084013e610467565b606091505b509092509050610478603f87610ed1565b5a1161048657610486610ef3565b6104c682826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506105d4565b9998505050505050505050565b60006104e084848461060d565b8015610514575060608401516020908101516001600160e01b031990811660009081529182905260409091205460e01b1615155b949350505050565b50565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036105b15760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526105c982828661074c565b979650505050505050565b606083156105e35750816101c7565b8251156105f35782518084602001fd5b8160405162461bcd60e51b81526004016105a89190610c98565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015610654573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106789190610d5a565b905060006107268660600151805190602001208688602001516040516020016106c69392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156101c2575085516101c2906001600160a01b03168286610935565b60606001600160e01b0319841663b87abc1160e01b036107cd5760008380602001905181019061077c9190610d5a565b9050848184604051602401610792929190610f09565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915291506101c79050565b6001600160e01b0319841663c597407360e01b03610859576000806000858060200190518101906107fe9190610f67565b925092509250868383838860405160240161081c9493929190610fd4565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293506101c792505050565b6001600160e01b031984166311ed383160e31b036108a85760008060008580602001905181019061088a91906110a6565b925092509250868383838860405160240161081c9493929190611157565b6001600160e01b031984166328d55f9b60e21b036101c7576000806000858060200190518101906108d991906110a6565b92509250925086838383886040516024016108f79493929190611157565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293505050509392505050565b60008060006109448585610a77565b9092509050600081600481111561095d5761095d61117c565b14801561097b5750856001600160a01b0316826001600160a01b0316145b1561098b576001925050506101c7565b600080876001600160a01b0316631626ba7e60e01b88886040516024016109b3929190610f09565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516109f19190610eb5565b600060405180830381855afa9150503d8060008114610a2c576040519150601f19603f3d011682016040523d82523d6000602084013e610a31565b606091505b5091509150818015610a44575080516020145b8015610a6b57508051630b135d3f60e11b90610a699083016020908101908401610d5a565b145b98975050505050505050565b6000808251604103610aad5760208301516040840151606085015160001a610aa187828585610abc565b94509450505050610ab5565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610af35750600090506003610ba0565b8460ff16601b14158015610b0b57508460ff16601c14155b15610b1c5750600090506004610ba0565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610b70573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610b9957600060019250925050610ba0565b9150600090505b94509492505050565b600080600060408486031215610bbe57600080fd5b833567ffffffffffffffff80821115610bd657600080fd5b9085019060808288031215610bea57600080fd5b90935060208501359080821115610c0057600080fd5b818601915086601f830112610c1457600080fd5b813581811115610c2357600080fd5b876020828501011115610c3557600080fd5b6020830194508093505050509250925092565b60005b83811015610c63578181015183820152602001610c4b565b50506000910152565b60008151808452610c84816020860160208601610c48565b601f01601f19169290920160200192915050565b6020815260006101c76020830184610c6c565b600060208284031215610cbd57600080fd5b5035919050565b6001600160a01b038116811461051c57600080fd5b600060208284031215610ceb57600080fd5b81516101c781610cc4565b600060208284031215610d0857600080fd5b81356101c781610cc4565b6000808335601e19843603018112610d2a57600080fd5b83018035915067ffffffffffffffff821115610d4557600080fd5b602001915036819003821315610ab557600080fd5b600060208284031215610d6c57600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610dac57610dac610d73565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ddb57610ddb610d73565b604052919050565b600067ffffffffffffffff821115610dfd57610dfd610d73565b50601f01601f191660200190565b600060808236031215610e1d57600080fd5b610e25610d89565b8235610e3081610cc4565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610e6057600080fd5b840136601f820112610e7157600080fd5b8035610e84610e7f82610de3565b610db2565b8181523684838501011115610e9857600080fd5b818484018583013760009181019093015250606082015292915050565b60008251610ec7818460208701610c48565b9190910192915050565b600082610eee57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b8281526040602082015260006105146040830184610c6c565b600082601f830112610f3357600080fd5b8151610f41610e7f82610de3565b818152846020838601011115610f5657600080fd5b610514826020830160208701610c48565b600080600060608486031215610f7c57600080fd5b835167ffffffffffffffff80821115610f9457600080fd5b610fa087838801610f22565b94506020860151915080821115610fb657600080fd5b50610fc386828701610f22565b925050604084015190509250925092565b608081526000610fe76080830187610c6c565b8281036020840152610ff98187610c6c565b905084604084015282810360608401526105c98185610c6c565b600082601f83011261102457600080fd5b8151602067ffffffffffffffff8083111561104157611041610d73565b8260051b611050838201610db2565b938452858101830193838101908886111561106a57600080fd5b84880192505b85831015610a6b578251848111156110885760008081fd5b6110968a87838c0101610f22565b8352509184019190840190611070565b6000806000606084860312156110bb57600080fd5b835167ffffffffffffffff808211156110d357600080fd5b6110df87838801611013565b945060208601519150808211156110f557600080fd5b50610fc386828701611013565b600081518084526020808501808196508360051b8101915082860160005b8581101561114a578284038952611138848351610c6c565b98850198935090840190600101611120565b5091979650505050505050565b60808152600061116a6080830187611102565b8281036020840152610ff98187611102565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x2":"0xf8c26340c1eaea6c7ff1760b25005e1306953572","0x1e74f978992d7d64ddac400bd4aae9eefd60fa0b8456650273f5f50148803323":"0xa3557e6c","0x23c84c23be8f829809d1b1502c647c6c59fb6b2345b163a2ca3e7d4f9855975c":"0x8f69c188","0xa0286316c9d3cb00f4f54a9f1096cefaa1748bb5a5395e7fa1563568ebb3e6c3":"0xb87abc11","0xdc138de224807be243ee38fe9e746cce5d437a256b87be90b80240e0811ad043":"0xc5974073"}},"0x145908bbcfc7b258e4d4d9a586f6e3249ae80216":{"nonce":1,"balance":"0x0","code":"0x3d5c","storage":{}},"0x17cda4e23f7237277952e075b1c48467aabfacc0":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c806368f9dab21461002d575b5f80fd5b61004061003b36600461088b565b610052565b60405190815260200160405180910390f35b5f61006f6040518060400160405280606081526020015f81525090565b61008e61007c858861090d565b61008790601061090d565b82906101d1565b506100d085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250859392505061023a9050565b5061011287878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250859392505061023a9050565b505f610120825f0151610266565b905083156101bc5760408051808201909152606081525f602090910181905282515261014c825f610650565b5061018e88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250869392505061023a9050565b505f5b848110156101ba576101a4835f8461067f565b5082516101b090610266565b9150600101610191565b505b6001600160601b031916979650505050505050565b60408051808201909152606081525f60208201526101f0602083610920565b1561021857610200602083610920565b61020b90602061093f565b610215908361090d565b91505b506020808301829052604080518085525f815283019091019052815b92915050565b60408051808201909152606081525f602082015261025f83845f0151518485516106b2565b9392505050565b5f6040518251602084019350604067ffffffffffffffc060018301160160098282031060018103610298576040820191505b50776745230100efcdab890098badcfe001032547600c3d2e1f06102e8565b5f8383101561025f5750808201519282900392602084101561025f575f1960208590036101000a0119169392505050565b5f5b828110156105ef576102fd8482896102b7565b855261030d8460208301896102b7565b6020860152604081850310600181036103295760808286038701535b506040830381146001810361034657602086018051600887021790525b5060405b60808110156103ce57858101603f19810151603719820151601f19830151600b198401516002911891909218189081027ffffffffefffffffefffffffefffffffefffffffefffffffefffffffefffffffe1663800000009091047c010000000100000001000000010000000100000001000000010000000116179052600c0161034a565b5060805b61014081101561045757858101607f19810151606f19820151603f198301516017198401516004911891909218189081027ffffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffc1663400000009091047c0300000003000000030000000300000003000000030000000300000003161790526018016103d2565b50815f805f5b60508110156105c55760148104801561048d57600181146104b457600281146104d9576003811461050357610524565b600160281b8504600160501b86048118600160781b870416189350635a8279999250610524565b600160281b8504600160781b8604600160501b870418189350636ed9eba19250610524565b600160501b8504600160781b8604818117600160281b8804169116179350638f1bbcdc9250610524565b600160281b8504600160781b8604600160501b87041818935063ca62c1d692505b50601f600160bb1b8504168063ffffffe06001609b1b87041617905080840190508063ffffffff8616019050808301905080600160e01b600484028c015104019050600160a01b8102600160281b860417945050600160501b633fffffff600160521b86041663c00000006604000000000000870416170277ffffffff00ffffffff000000000000ffffffff00ffffffff851617935060018101905061045d565b5050509190910177ffffffff00ffffffff00ffffffff00ffffffff00ffffffff16906040016102ea565b50600160601b63ffffffff821667ffffffff000000006101008404166bffffffff00000000000000006201000085041663ffffffff60601b630100000086041663ffffffff60801b6401000000008704161717171702945050505050919050565b60408051808201909152606081525f602082015282515161025f9084906001600160601b031985166014610798565b60408051808201909152606081525f60208201526106aa84846001600160601b031985166014610798565b949350505050565b60408051808201909152606081525f602082015282518211156106d3575f80fd5b60208501516106e2838661090d565b1115610715576107158561070587602001518786610700919061090d565b610813565b610710906002610952565b610829565b5f808651805187602083010193508088870111156107335787860182525b505050602084015b60208410610773578051825261075260208361090d565b915061075f60208261090d565b905061076c60208561093f565b935061073b565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b60408051808201909152606081525f602082015260208501516107bb858461090d565b11156107cf576107cf85610705868561090d565b5f6001836101000a0390508260200360080284901c93508551838682010185831982511617815250805184870111156108085783860181525b509495945050505050565b5f81831115610823575081610234565b50919050565b815161083583836101d1565b50610840838261023a565b50505050565b5f8083601f840112610856575f80fd5b50813567ffffffffffffffff81111561086d575f80fd5b602083019150836020828501011115610884575f80fd5b9250929050565b5f805f805f6060868803121561089f575f80fd5b853567ffffffffffffffff808211156108b6575f80fd5b6108c289838a01610846565b909750955060208801359150808211156108da575f80fd5b506108e788828901610846565b96999598509660400135949350505050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610234576102346108f9565b5f8261093a57634e487b7160e01b5f52601260045260245ffd5b500690565b81810381811115610234576102346108f9565b8082028115828204841417610234576102346108f956fea164736f6c6343000818000a","storage":{}},"0x19356cc2300833e690088a5a09a2044a3cc2a1e2":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x229c56b7805ab5935a883207f6a6bd5847e65aee":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106102ae5760003560e01c8063906cecc111610175578063b9998a24116100dc578063d547741f11610095578063f2fde38b1161006f578063f2fde38b14610892578063f5243bc4146108b2578063f940e385146108d2578063ffa1ad74146108f257600080fd5b8063d547741f1461083f578063d7db74c71461085f578063ec5273891461087257600080fd5b8063b9998a241461077d578063cc2a9a5b1461079d578063cc2c3fc4146107bd578063ceeb4f50146107dd578063d1f5692c146107fd578063d53913931461081d57600080fd5b8063a3a3f7f61161012e578063a3a3f7f614610690578063a3f4df7e146106b0578063a849d65c146106fd578063aa271e1a1461071d578063b0aa98c71461073d578063b3ab15fb1461075d57600080fd5b8063906cecc1146105e657806391d1485414610606578063983b2d5614610626578063986502751461064657806399e0dd7c1461065b578063a217fddf1461067b57600080fd5b80635b6fa8db11610219578063715018a6116101d2578063715018a61461054b57806371e2a6571461056057806377a2a5891461058057806381c81d35146105a05780638456cb59146105b35780638da5cb5b146105c857600080fd5b80635b6fa8db146104a35780635c975abb146104c35780635cd7e3b3146104d85780635e22cd86146104f85780635fc1964f14610518578063634486da1461053857600080fd5b80633092afd51161026b5780633092afd5146103a857806336568abe146103c85780633f41b614146103e85780633f4ba83a1461042057806351cff8d914610435578063572b6c051461045557600080fd5b806301ffc9a7146102b35780631edb948e146102e857806320c5429b1461030a578063248a9ca31461032a578063268b15ed146103685780632f2ff15d14610388575b600080fd5b3480156102bf57600080fd5b506102d36102ce366004613dc4565b610923565b60405190151581526020015b60405180910390f35b3480156102f457600080fd5b50610308610303366004613e13565b61095a565b005b34801561031657600080fd5b50610308610325366004613e3f565b610b03565b34801561033657600080fd5b5061035a610345366004613e3f565b60009081526097602052604090206001015490565b6040519081526020016102df565b34801561037457600080fd5b50610308610383366004613e99565b610c26565b34801561039457600080fd5b506103086103a3366004613f04565b610cb9565b3480156103b457600080fd5b506103086103c3366004613f34565b610ce3565b3480156103d457600080fd5b506103086103e3366004613f04565b610cf7565b3480156103f457600080fd5b5060c954610408906001600160a01b031681565b6040516001600160a01b0390911681526020016102df565b34801561042c57600080fd5b50610308610d85565b34801561044157600080fd5b50610308610450366004613f34565b610d97565b34801561046157600080fd5b506102d3610470366004613f34565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546001600160a01b0390811691161490565b3480156104af57600080fd5b5060cc54610408906001600160a01b031681565b3480156104cf57600080fd5b506102d3610e37565b3480156104e457600080fd5b506103086104f3366004613fa3565b610e4d565b34801561050457600080fd5b50610308610513366004614062565b6110b1565b34801561052457600080fd5b5061030861053336600461419c565b6112f6565b610308610546366004613f34565b61133e565b34801561055757600080fd5b50610308611401565b34801561056c57600080fd5b5061030861057b36600461419c565b611413565b34801561058c57600080fd5b5060ce54610408906001600160a01b031681565b6103086105ae366004613f34565b61145b565b3480156105bf57600080fd5b506103086114d8565b3480156105d457600080fd5b506033546001600160a01b0316610408565b3480156105f257600080fd5b5061030861060136600461423a565b6114e8565b34801561061257600080fd5b506102d3610621366004613f04565b61156e565b34801561063257600080fd5b50610308610641366004613f34565b611599565b34801561065257600080fd5b506103086115aa565b34801561066757600080fd5b50610308610676366004614295565b6115c4565b34801561068757600080fd5b5061035a600081565b34801561069c57600080fd5b506103086106ab3660046142d6565b6116ab565b3480156106bc57600080fd5b506106f0604051806040016040528060148152602001732aa7299d1026b4b73a34b7339026b0b730b3b2b960611b81525081565b6040516102df919061437c565b34801561070957600080fd5b5060cb54610408906001600160a01b031681565b34801561072957600080fd5b506102d3610738366004613f34565b6116f4565b34801561074957600080fd5b506102d3610758366004613e3f565b61170e565b34801561076957600080fd5b50610308610778366004613f34565b61176c565b34801561078957600080fd5b50610308610798366004613f34565b611796565b3480156107a957600080fd5b506103086107b836600461438f565b6117db565b3480156107c957600080fd5b5060ca54610408906001600160a01b031681565b3480156107e957600080fd5b506103086107f8366004614411565b611cd2565b34801561080957600080fd5b506103086108183660046144c6565b611d76565b34801561082957600080fd5b5061035a600080516020614ef483398151915281565b34801561084b57600080fd5b5061030861085a366004613f04565b611e2d565b61030861086d3660046144fb565b611e52565b34801561087e57600080fd5b5061030861088d366004613e3f565b611fe2565b34801561089e57600080fd5b506103086108ad366004613f34565b612054565b3480156108be57600080fd5b506103086108cd3660046145f0565b612070565b3480156108de57600080fd5b506103086108ed366004614708565b612222565b3480156108fe57600080fd5b506106f060405180604001604052806005815260200164302e352e3160d81b81525081565b60006001600160e01b03198216637965db0b60e01b148061095457506301ffc9a760e01b6001600160e01b03198316145b92915050565b61096561073861239e565b61098a5760405162461bcd60e51b815260040161098190614736565b60405180910390fd5b60c95460405163baef73e960e01b8152600481018390526000916001600160a01b03169063baef73e990602401602060405180830381865afa1580156109d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109f8919061476b565b9050806001600160401b0316600003610a235760405162461bcd60e51b815260040161098190614788565b806001600160401b0316836001600160401b031611610a905760405162461bcd60e51b815260206004820152602360248201527f4d696e74696e674d616e616765723a204558504952595f4e4f545f455854454e60448201526211115160ea1b6064820152608401610981565b60c954604051631fb9763760e11b81526001600160401b0385166004820152602481018490526001600160a01b0390911690633f72ec6e906044015b600060405180830381600087803b158015610ae657600080fd5b505af1158015610afa573d6000803e3d6000fd5b50505050505050565b610b0e61073861239e565b610b2a5760405162461bcd60e51b815260040161098190614736565b60c95460405163baef73e960e01b8152600481018390526001600160a01b039091169063baef73e990602401602060405180830381865afa158015610b73573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b97919061476b565b6001600160401b0316600003610bbf5760405162461bcd60e51b815260040161098190614788565b60c954604051637eee288d60e01b8152306004820152602481018390526001600160a01b0390911690637eee288d90604401600060405180830381600087803b158015610c0b57600080fd5b505af1158015610c1f573d6000803e3d6000fd5b5050505050565b8282828080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250610c6993508592508491506123ad565b610c71610e37565b15610c8e5760405162461bcd60e51b8152600401610981906147cb565b6060610afa610c9b61239e565b610cae88610ca98989612584565b6125b0565b8384600060016126c1565b600082815260976020526040902060010154610cd481612c15565b610cde8383612c26565b505050565b610ceb612cad565b610cf481612d26565b50565b610cff61239e565b6001600160a01b0316816001600160a01b031614610d775760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610981565b610d818282612d3e565b5050565b610d8d612cad565b610d95612dc3565b565b610d9f612cad565b6001600160a01b038116610db257600080fd5b60405147906001600160a01b0383169082156108fc029083906000818181858888f19350505050158015610dea573d6000803e3d6000fd5b50604080516001600160a01b03841681526020810183905260008183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a15050565b600080516020614ed48339815191525460ff1690565b610e5786886147f5565b8051600203610e8c57610e6b61073861239e565b610e875760405162461bcd60e51b8152600401610981906148bf565b610fd1565b6000610e9782612e6b565b60c9549092506001600160a01b0316905063430c2081610eb561239e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015610f00573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f249190614903565b80610fb3575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa158015610f7d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fa19190614903565b8015610fb35750610fb361073861239e565b610fcf5760405162461bcd60e51b815260040161098190614920565b505b610fdb87896147f5565b6000600282511015610fff5760405162461bcd60e51b81526004016109819061496f565b6110546110336000846001865161101691906149ca565b81518110611026576110266149dd565b6020026020010151612ea6565b83600081518110611046576110466149dd565b6020026020010151836123ad565b61105c610e37565b156110795760405162461bcd60e51b8152600401610981906147cb565b6110a38b6110878b8d6147f5565b6110918a8c6147f5565b61109b898b6147f5565b6000896126c1565b505050505050505050505050565b6110bb87896147f5565b80516002036110f0576110cf61073861239e565b6110eb5760405162461bcd60e51b8152600401610981906148bf565b611235565b60006110fb82612e6b565b60c9549092506001600160a01b0316905063430c208161111961239e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015611164573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111889190614903565b80611217575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa1580156111e1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112059190614903565b8015611217575061121761073861239e565b6112335760405162461bcd60e51b815260040161098190614920565b505b61123f888a6147f5565b836002825110156112625760405162461bcd60e51b81526004016109819061496f565b6112796110336000846001865161101691906149ca565b611281610e37565b1561129e5760405162461bcd60e51b8152600401610981906147cb565b60028a146112be5760405162461bcd60e51b8152600401610981906149f3565b6112e78c6112cc8c8e6147f5565b6112d68b8d6147f5565b6112e08a8c6147f5565b89896126c1565b50505050505050505050505050565b6112fe612cad565b60005b8151811015610d815761132c82828151811061131f5761131f6149dd565b6020026020010151612d26565b8061133681614a39565b915050611301565b61134961073861239e565b6113655760405162461bcd60e51b815260040161098190614736565b6001600160a01b0381166113bb5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610981565b6113c481612f5a565b6113cc6115aa565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610d81573d6000803e3d6000fd5b611409612cad565b610d956000612f72565b61141b612cad565b60005b8151811015610d815761144982828151811061143c5761143c6149dd565b6020026020010151612f5a565b8061145381614a39565b91505061141e565b61146661073861239e565b6114825760405162461bcd60e51b815260040161098190614736565b6001600160a01b0381166113c45760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610981565b6114e0612cad565b610d95612fc4565b8282828080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525061152b93508592508491506123ad565b611533610e37565b156115505760405162461bcd60e51b8152600401610981906147cb565b606061156487610cae88610ca98989612584565b5050505050505050565b60009182526097602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6115a1612cad565b610cf481612f5a565b610d95600080516020614ef48339815191526103e361239e565b6115cc612cad565b60c954604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906115fe9085908590600401614a52565b600060405180830381600087803b15801561161857600080fd5b505af115801561162c573d6000803e3d6000fd5b505060cb546001600160a01b0316159150610d8190505760cb54604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906116759085908590600401614a52565b600060405180830381600087803b15801561168f57600080fd5b505af11580156116a3573d6000803e3d6000fd5b505050505050565b6116b3612cad565b610cde83838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525085925061302c915050565b6000610954600080516020614ef48339815191528361156e565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd696020820152908101829052600090611762906060015b6040516020818303038152906040528051906020012090565b5460ff1692915050565b611774612cad565b60ce80546001600160a01b0319166001600160a01b0392909216919091179055565b61179e612cad565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e80546001600160a01b0319166001600160a01b03831617905550565b600054610100900460ff16158080156117fb5750600054600160ff909116105b806118155750303b158015611815575060005460ff166001145b6118785760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610981565b6000805460ff19166001179055801561189b576000805461ff0019166101001790555b60c980546001600160a01b03199081166001600160a01b038a81169190911790925560ca8054821689841617905560cb8054821688841617905560cc8054821687841617905560ce80549091169185169190911790556118f961314c565b611901613183565b61190a826131bc565b6119126131e3565b6040805161036081018252600661032082018181526563727970746f60d01b610340840152825282518084018452818152651dd85b1b195d60d21b602082810191909152808401919091528351808501855260018152600f60fb1b8183015283850152835180850185526003808252621b999d60ea1b82840152606085019190915284518086018652600a815269313637b1b5b1b430b4b760b11b818401526080850152845180860186526007808252663134ba31b7b4b760c91b8285015260a0860191909152855180870187528281526207070760eb1b8185015260c0860152855180870187528281526264616f60e81b8185015260e086015285518087018752828152621e9a5b60ea1b8185015261010086015285518087018752908152663837b63cb3b7b760c91b8184015261012085015284518086018652600b81526a756e73746f707061626c6560a81b81840152610140850152845180860186528381526535b632bb32b960d11b8184015261016085015284518086018652600280825261686960f01b8285015261018086019190915285518087018752848152656b726573757360d01b818501526101a086015285518087018752600580825264616e696d6560d81b828601526101c087019190915286518088018852818152646d616e676160d81b818601526101e087015286518088018852600981526862696e616e6365757360b81b8186015261020087015286518088018852818152647265616c6d60d81b818601526102208701528651808801885291825261676f60f01b82850152610240860191909152855180870187526008815267185b1d1a5b5a5cdd60c21b818501526102608601528551808701875290815264707564677960d81b81840152610280850152845180860186528381526530bab9ba34b760d11b818401526102a08501528451808601865292835265189a5d19d95d60d21b838301526102c08401929092528351808501855291825262706f6760e81b828201526102e083019190915282518084019093526004835263636c617960e01b9083015261030081019190915260005b6019811015611c5c57611c4a828260198110611c3e57611c3e6149dd565b6020020151600061302c565b80611c5481614a39565b915050611c20565b50611c8360405180604001604052806003815260200162636f6d60e81b815250600161302c565b508015610afa576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050505050565b8686868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250611d1593508592508491506123ad565b611d1d610e37565b15611d3a5760405162461bcd60e51b8152600401610981906147cb565b611d698a611d4c8b610ca98c8c612584565b611d56888a6147f5565b611d6087896147f5565b600060016126c1565b5050505050505050505050565b611d7e612cad565b60005b81811015610cde5760c9546001600160a01b03166350960239848484818110611dac57611dac6149dd565b9050602002016020810190611dc19190613f34565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401600060405180830381600087803b158015611e0257600080fd5b505af1158015611e16573d6000803e3d6000fd5b505050508080611e2590614a39565b915050611d81565b600082815260976020526040902060010154611e4881612c15565b610cde8383612d3e565b611e5c898b6147f5565b6000600282511015611e805760405162461bcd60e51b81526004016109819061496f565b611e976110336000846001865161101691906149ca565b611e9f610e37565b15611ebc5760405162461bcd60e51b8152600401610981906147cb565b60028b14611edc5760405162461bcd60e51b8152600401610981906149f3565b611f228d8d8d898960008a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061322392505050565b84341015611f725760405162461bcd60e51b815260206004820181905260248201527f4d696e74696e674d616e616765723a204e4f545f454e4f5547485f46554e44536044820152606401610981565b611f848d8d8d8d8d8d8d8c60006133e3565b843411156112e757611f9461239e565b6001600160a01b03166108fc611faa87346149ca565b6040518115909202916000818181858888f19350505050158015611fd2573d6000803e3d6000fd5b5050505050505050505050505050565b611fea612cad565b611ff38161349f565b61200f5760405162461bcd60e51b815260040161098190614a81565b600081815260cd6020526040812061202691613d76565b60405181907f0aa1aff0f830e739d86baf0e6624d6763da02f7733575e0e463886cd062dea6a90600090a250565b61205c612cad565b612065816134c5565b610cf460008261353b565b61207a8a8c6147f5565b600060028251101561209e5760405162461bcd60e51b81526004016109819061496f565b6120b56110336000846001865161101691906149ca565b6120bd610e37565b156120da5760405162461bcd60e51b8152600401610981906147cb565b60028c146120fa5760405162461bcd60e51b8152600401610981906149f3565b61213f8e8e8e8a898b8a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061322392505050565b856001600160a01b03166323b872dd61215661239e565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152306024820152604481018890526064016020604051808303816000875af11580156121a9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121cd9190614903565b6122115760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610981565b611fd28e8e8e8e8e8e8e8c8e6133e3565b61222a612cad565b6040516370a0823160e01b81523060048201526000906001600160a01b038416906370a0823190602401602060405180830381865afa158015612271573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122959190614ac3565b60405163a9059cbb60e01b81526001600160a01b038481166004830152602482018390529192509084169063a9059cbb906044016020604051808303816000875af11580156122e8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061230c9190614903565b6123505760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610981565b604080516001600160a01b0384811682526020820184905285168183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a1505050565b60006123a8613545565b905090565b6123b68361349f565b6123d25760405162461bcd60e51b815260040161098190614a81565b600083815260cf602052604090205460ff1615156001600160401b03821615151461244e5760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544c445f455850495241424c455f4d496044820152650a69a82a886960d31b6064820152608401610981565b60006124818360408051808201825260008082526020918201528151808301909252825182529182019181019190915290565b9050600a81600001511115612529576124ac6124a0826000600a61358b565b80516020909101512090565b7fb551e0305c8163b812374b8e78b577c77f226f6f10c5ad03e52699578fbc34b8036125295760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544f4b454e5f4c4142454c5f50524f4860448201526512509255115160d21b6064820152608401610981565b612532836135ca565b61257e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a204c4142454c5f494e56414c49440000006044820152606401610981565b50505050565b60608282604051602001612599929190614adc565b604051602081830303815290604052905092915050565b604080516002808252606082810190935260009190816020015b60608152602001906001900390816125ca57905050905082816000815181106125f5576125f56149dd565b602002602001018190525060cd6000858152602001908152602001600020805461261e90614b04565b80601f016020809104026020016040519081016040528092919081815260200182805461264a90614b04565b80156126975780601f1061266c57610100808354040283529160200191612697565b820191906000526020600020905b81548152906001019060200180831161267a57829003601f168201915b5050505050816001815181106126af576126af6149dd565b60209081029190910101529392505050565b60008060006126cf88612e6b565b915091508380156126e1575060028851115b8015612763575060c9546040516331a9108f60e11b8152600481018390526001600160a01b038b8116921690636352211e90602401602060405180830381865afa158015612733573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127579190614b3e565b6001600160a01b031614155b156127c35760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e616765723a20524556455253455f5245434f52445f4e60448201526913d517d0531313d5d15160b21b6064820152608401610981565b60c954604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401602060405180830381865afa15801561280c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128309190614903565b8015612921575060c9546040516331a9108f60e11b81526004810184905230916001600160a01b031690636352211e90602401602060405180830381865afa158015612880573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128a49190614b3e565b6001600160a01b03161480612921575060c95460405163d9548e5360e01b8152600481018490526001600160a01b039091169063d9548e5390602401602060405180830381865afa1580156128fd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129219190614903565b15612a12576001600160401b038516156129a35760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b15801561298a57600080fd5b505af115801561299e573d6000803e3d6000fd5b505050505b60c954604051630fb8df0360e11b81526001600160a01b0390911690631f71be06906129db908c908c908c908c908b90600401614bb0565b600060405180830381600087803b1580156129f557600080fd5b505af1158015612a09573d6000803e3d6000fd5b50505050612c09565b612a1b8261372e565b612a248861378d565b8015612a31575087516002145b8015612a4457506001600160401b038516155b15612b225760ca5488516001600160a01b039091169063c36c2125908b908b90600090612a7357612a736149dd565b602090810291909101015160cc546040516001600160e01b031960e086901b168152612aad9392916001600160a01b031690600401614c0f565b600060405180830381600087803b158015612ac757600080fd5b505af1158015612adb573d6000803e3d6000fd5b50505050600087511115612b1d5760cc54604051633a0deb9d60e21b81526001600160a01b039091169063e837ae74906129db908a908a908790600401614c44565b612c09565b60c95460405163ba5d40b760e01b81526001600160a01b039091169063ba5d40b790612b5a908c908c908c908c908b90600401614bb0565b600060405180830381600087803b158015612b7457600080fd5b505af1158015612b88573d6000803e3d6000fd5b505050506001600160401b03851615612c095760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b158015612bf057600080fd5b505af1158015612c04573d6000803e3d6000fd5b505050505b50979650505050505050565b610cf481612c2161239e565b6137e7565b612c30828261156e565b610d815760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19166001179055612c6961239e565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b612cb561239e565b6001600160a01b0316612cd06033546001600160a01b031690565b6001600160a01b031614610d955760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610981565b610cf4600080516020614ef483398151915282611e2d565b612d48828261156e565b15610d815760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19169055612d7f61239e565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612dcb610e37565b612e0e5760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881393d517d4105554d15160621b6044820152606401610981565b600080516020614ed4833981519152805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa612e4e61239e565b6040516001600160a01b03909116815260200160405180910390a1565b805160009081905b8015612ea057829150612e8c82856110166001856149ca565b925080612e9881614c7a565b915050612e73565b50915091565b60008151600003612ef95760405162461bcd60e51b815260206004820152601b60248201527f4d696e74696e674d616e616765723a204c4142454c5f454d50545900000000006044820152606401610981565b8282604051602001612f0b9190614c91565b60405160208183030381529060405280519060200120604051602001612f3b929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b610cf4600080516020614ef48339815191528261353b565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b612fcc610e37565b15612fe95760405162461bcd60e51b8152600401610981906147cb565b600080516020614ed4833981519152805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258612e4e61239e565b6000613039600084612ea6565b600081815260cd602052604090209091506130548482614cf3565b50600081815260cf602052604090819020805460ff19168415151790555181907f4fce6f6e172b04eaa80325d8e3b0180a34945000f3e214605039e8420fdf8980906130a190869061437c565b60405180910390a260c954604051634f558e7960e01b8152600481018390526001600160a01b0390911690634f558e7990602401602060405180830381865afa1580156130f2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131169190614903565b610cde5760c9546040516307befae360e51b81526001600160a01b039091169063f7df5c6090610acc9084908790600401614db2565b600054610100900460ff166131735760405162461bcd60e51b815260040161098190614dd3565b610d9561317e61239e565b612f72565b600054610100900460ff166131aa5760405162461bcd60e51b815260040161098190614dd3565b610d9560006131b761239e565b61353b565b600054610100900460ff1661179e5760405162461bcd60e51b815260040161098190614dd3565b600054610100900460ff1661320a5760405162461bcd60e51b815260040161098190614dd3565b600080516020614ed4833981519152805460ff19169055565b600061323761323287896147f5565b612e6b565b506040516bffffffffffffffffffffffff1930606090811b821660208401524660348401528b811b82166054840152606883018490526001600160c01b031960c08a901b1660888401526090830188905286901b1660b082015290915060009061331390849061330d9060c401604051602081830303815290604052805190602001206040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c8101829052600090605c01604051602081830303815290604052805190602001209050919050565b9061384b565b905061331e816116f4565b6133765760405162461bcd60e51b8152602060048201526024808201527f4d696e74696e674d616e616765723a205349474e45525f49535f4e4f545f4d49604482015263272a22a960e11b6064820152608401610981565b42866001600160401b0316116133d85760405162461bcd60e51b815260206004820152602160248201527f4d696e74696e674d616e616765723a20455850495245445f5349474e415455526044820152604560f81b6064820152608401610981565b505050505050505050565b600061342a8a6133f38a8c6147f5565b6133fd898b6147f5565b613407888a6147f5565b60008f6001600160a01b031661341b61239e565b6001600160a01b0316146126c1565b9050896001600160a01b031661343e61239e565b6001600160a01b0316827fa545b6fd3355e8d57f8c8147bafe740545bd3ea1f94bef2576a6d532a7c3b605868660405161348b9291909182526001600160a01b0316602082015260400190565b60405180910390a450505050505050505050565b600081815260cd6020526040812080548291906134bb90614b04565b9050119050919050565b6134cd612cad565b6001600160a01b0381166135325760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610981565b610cf481612f72565b610d818282612c26565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546000906001600160a01b03163303613586575060331936013560601c90565b503390565b604080518082019091526000808252602082015260405180604001604052808381526020018486602001516135c09190614e1e565b9052949350505050565b600081516000036135dd57506000919050565b60208201805160f81c603081108015906135fb575060398160ff1611155b15801561361d575060618160ff161015801561361b5750607a8160ff1611155b155b1561362c575060009392505050565b8351600181111561369a5761364e836136466001846149ca565b015160f81c90565b915060308260ff1610158015613668575060398260ff1611155b15801561368a575060618260ff16101580156136885750607a8260ff1611155b155b1561369a57506000949350505050565b60015b6136a86001836149ca565b811015613722578381015160f81c9250602d83148015906136de575060308360ff16101580156136dc575060398360ff1611155b155b80156136ff575060618360ff16101580156136fd5750607a8360ff1611155b155b156137105750600095945050505050565b8061371a81614a39565b91505061369d565b50600195945050505050565b6137378161170e565b156137845760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a20544f4b454e5f424c4f434b45440000006044820152606401610981565b610cf48161386f565b6000806137a46000846001865161101691906149ca565b60ca549091506001600160a01b0316158015906137e05750807f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f145b9392505050565b6137f1828261156e565b610d8157613809816001600160a01b031660146138f3565b6138148360206138f3565b604051602001613825929190614e31565b60408051601f198184030181529082905262461bcd60e51b82526109819160040161437c565b600080600061385a8585613a8e565b9150915061386781613ad3565b509392505050565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd6960208201529081018290526001906138ae90606001611749565b805460ff19169115159190911790556040518181527f2ce5d9351b1d590d5a066db0d2dc7602d55f092506a83a7ee8c4d78ee357d75a9060200160405180910390a150565b60606000613902836002614ea6565b61390d906002614e1e565b6001600160401b0381111561392457613924614133565b6040519080825280601f01601f19166020018201604052801561394e576020820181803683370190505b509050600360fc1b81600081518110613969576139696149dd565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110613998576139986149dd565b60200101906001600160f81b031916908160001a90535060006139bc846002614ea6565b6139c7906001614e1e565b90505b6001811115613a3f576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106139fb576139fb6149dd565b1a60f81b828281518110613a1157613a116149dd565b60200101906001600160f81b031916908160001a90535060049490941c93613a3881614c7a565b90506139ca565b5083156137e05760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610981565b6000808251604103613ac45760208301516040840151606085015160001a613ab887828585613c89565b94509450505050613acc565b506000905060025b9250929050565b6000816004811115613ae757613ae7614ebd565b03613aef5750565b6001816004811115613b0357613b03614ebd565b03613b505760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152606401610981565b6002816004811115613b6457613b64614ebd565b03613bb15760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610981565b6003816004811115613bc557613bc5614ebd565b03613c1d5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b6064820152608401610981565b6004816004811115613c3157613c31614ebd565b03610cf45760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c604482015261756560f01b6064820152608401610981565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613cc05750600090506003613d6d565b8460ff16601b14158015613cd857508460ff16601c14155b15613ce95750600090506004613d6d565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613d3d573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613d6657600060019250925050613d6d565b9150600090505b94509492505050565b508054613d8290614b04565b6000825580601f10613d92575050565b601f016020900490600052602060002090810190610cf491905b80821115613dc05760008155600101613dac565b5090565b600060208284031215613dd657600080fd5b81356001600160e01b0319811681146137e057600080fd5b6001600160401b0381168114610cf457600080fd5b8035613e0e81613dee565b919050565b60008060408385031215613e2657600080fd5b8235613e3181613dee565b946020939093013593505050565b600060208284031215613e5157600080fd5b5035919050565b60008083601f840112613e6a57600080fd5b5081356001600160401b03811115613e8157600080fd5b602083019150836020828501011115613acc57600080fd5b600080600060408486031215613eae57600080fd5b8335925060208401356001600160401b03811115613ecb57600080fd5b613ed786828701613e58565b9497909650939450505050565b6001600160a01b0381168114610cf457600080fd5b8035613e0e81613ee4565b60008060408385031215613f1757600080fd5b823591506020830135613f2981613ee4565b809150509250929050565b600060208284031215613f4657600080fd5b81356137e081613ee4565b60008083601f840112613f6357600080fd5b5081356001600160401b03811115613f7a57600080fd5b6020830191508360208260051b8501011115613acc57600080fd5b8015158114610cf457600080fd5b60008060008060008060008060a0898b031215613fbf57600080fd5b8835613fca81613ee4565b975060208901356001600160401b0380821115613fe657600080fd5b613ff28c838d01613f51565b909950975060408b013591508082111561400b57600080fd5b6140178c838d01613f51565b909750955060608b013591508082111561403057600080fd5b5061403d8b828c01613f51565b909450925050608089013561405181613f95565b809150509295985092959890939650565b600080600080600080600080600060c08a8c03121561408057600080fd5b893561408b81613ee4565b985060208a01356001600160401b03808211156140a757600080fd5b6140b38d838e01613f51565b909a50985060408c01359150808211156140cc57600080fd5b6140d88d838e01613f51565b909850965060608c01359150808211156140f157600080fd5b506140fe8c828d01613f51565b90955093505060808a013561411281613dee565b915060a08a013561412281613f95565b809150509295985092959850929598565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561417157614171614133565b604052919050565b60006001600160401b0382111561419257614192614133565b5060051b60200190565b600060208083850312156141af57600080fd5b82356001600160401b038111156141c557600080fd5b8301601f810185136141d657600080fd5b80356141e96141e482614179565b614149565b81815260059190911b8201830190838101908783111561420857600080fd5b928401925b8284101561422f57833561422081613ee4565b8252928401929084019061420d565b979650505050505050565b6000806000806060858703121561425057600080fd5b843561425b81613ee4565b93506020850135925060408501356001600160401b0381111561427d57600080fd5b61428987828801613e58565b95989497509550505050565b600080602083850312156142a857600080fd5b82356001600160401b038111156142be57600080fd5b6142ca85828601613e58565b90969095509350505050565b6000806000604084860312156142eb57600080fd5b83356001600160401b0381111561430157600080fd5b61430d86828701613e58565b909450925050602084013561432181613f95565b809150509250925092565b60005b8381101561434757818101518382015260200161432f565b50506000910152565b6000815180845261436881602086016020860161432c565b601f01601f19169290920160200192915050565b6020815260006137e06020830184614350565b60008060008060008060c087890312156143a857600080fd5b86356143b381613ee4565b955060208701356143c381613ee4565b945060408701356143d381613ee4565b935060608701356143e381613ee4565b925060808701356143f381613ee4565b915060a087013561440381613ee4565b809150509295509295509295565b60008060008060008060008060a0898b03121561442d57600080fd5b883561443881613ee4565b97506020890135965060408901356001600160401b038082111561445b57600080fd5b6144678c838d01613e58565b909850965060608b013591508082111561448057600080fd5b61448c8c838d01613f51565b909650945060808b01359150808211156144a557600080fd5b506144b28b828c01613f51565b999c989b5096995094979396929594505050565b600080602083850312156144d957600080fd5b82356001600160401b038111156144ef57600080fd5b6142ca85828601613f51565b600080600080600080600080600080600060e08c8e03121561451c57600080fd5b6145258c613ef9565b9a506001600160401b038060208e0135111561454057600080fd5b6145508e60208f01358f01613f51565b909b50995060408d013581101561456657600080fd5b6145768e60408f01358f01613f51565b909950975060608d013581101561458c57600080fd5b61459c8e60608f01358f01613f51565b90975095506145ad60808e01613e03565b945060a08d013593508060c08e013511156145c757600080fd5b506145d88d60c08e01358e01613e58565b81935080925050509295989b509295989b9093969950565b6000806000806000806000806000806000806101008d8f03121561461357600080fd5b61461c8d613ef9565b9b506001600160401b0360208e0135111561463657600080fd5b6146468e60208f01358f01613f51565b909b5099506001600160401b0360408e0135111561466357600080fd5b6146738e60408f01358f01613f51565b90995097506001600160401b0360608e0135111561469057600080fd5b6146a08e60608f01358f01613f51565b90975095506146b160808e01613e03565b94506146bf60a08e01613ef9565b935060c08d013592506001600160401b0360e08e013511156146e057600080fd5b6146f08e60e08f01358f01613e58565b81935080925050509295989b509295989b509295989b565b6000806040838503121561471b57600080fd5b823561472681613ee4565b91506020830135613f2981613ee4565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b60006020828403121561477d57600080fd5b81516137e081613dee565b60208082526023908201527f4d696e74696e674d616e616765723a20544f4b454e5f4e4f545f455850495241604082015262424c4560e81b606082015260800190565b60208082526010908201526f14185d5cd8589b194e8814105554d15160821b604082015260600190565b60006148036141e484614179565b80848252602080830192508560051b85013681111561482157600080fd5b855b818110156148b35780356001600160401b03808211156148435760008081fd5b90880190601f36818401126148585760008081fd5b82358281111561486a5761486a614133565b61487b818301601f19168801614149565b9250808352368782860101111561489457600091508182fd5b8087850188850137600090830187015250865250938201938201614823565b50919695505050505050565b60208082526024908201527f4d696e74696e674d616e616765723a2043414c4c45525f49535f4e4f545f4d49604082015263272a22a960e11b606082015260800190565b60006020828403121561491557600080fd5b81516137e081613f95565b6020808252602f908201527f4d696e74696e674d616e616765723a2053454e4445525f49535f4e4f545f415060408201526e282927ab22a22fa7a92fa7aba722a960891b606082015260800190565b60208082526025908201527f4d696e74696e674d616e616765723a204c4142454c535f4c454e4754485f42456040820152642627abaf9960d91b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b81810381811115610954576109546149b4565b634e487b7160e01b600052603260045260246000fd5b60208082526026908201527f4d696e74696e674d616e616765723a20535542444f4d41494e535f4e4f545f41604082015265131313d5d15160d21b606082015260800190565b600060018201614a4b57614a4b6149b4565b5060010190565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b60208082526022908201527f4d696e74696e674d616e616765723a20544c445f4e4f545f5245474953544552604082015261115160f21b606082015260800190565b600060208284031215614ad557600080fd5b5051919050565b6b756e732d646576746573742d60a01b81528183600c83013760009101600c01908152919050565b600181811c90821680614b1857607f821691505b602082108103614b3857634e487b7160e01b600052602260045260246000fd5b50919050565b600060208284031215614b5057600080fd5b81516137e081613ee4565b600081518084526020808501808196508360051b8101915082860160005b85811015614ba3578284038952614b91848351614350565b98850198935090840190600101614b79565b5091979650505050505050565b6001600160a01b038616815260a060208201819052600090614bd490830187614b5b565b8281036040840152614be68187614b5b565b90508281036060840152614bfa8186614b5b565b91505082151560808301529695505050505050565b600060018060a01b03808616835260606020840152614c316060840186614350565b9150808416604084015250949350505050565b606081526000614c576060830186614b5b565b8281036020840152614c698186614b5b565b915050826040830152949350505050565b600081614c8957614c896149b4565b506000190190565b60008251614ca381846020870161432c565b9190910192915050565b601f821115610cde57600081815260208120601f850160051c81016020861015614cd45750805b601f850160051c820191505b818110156116a357828155600101614ce0565b81516001600160401b03811115614d0c57614d0c614133565b614d2081614d1a8454614b04565b84614cad565b602080601f831160018114614d555760008415614d3d5750858301515b600019600386901b1c1916600185901b1785556116a3565b600085815260208120601f198616915b82811015614d8457888601518255948401946001909101908401614d65565b5085821015614da25787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b828152604060208201526000614dcb6040830184614350565b949350505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b80820180821115610954576109546149b4565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351614e6981601785016020880161432c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351614e9a81602884016020880161432c565b01602801949350505050565b8082028115828204841417610954576109546149b4565b634e487b7160e01b600052602160045260246000fdfe5496787fc1ebdfeba375028c1865f13fbb1d63c0caa356ccc1b29a80f3ebd6229f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000811000a","storage":{}},"0x24f45688d421f46cca60734bdc648ad192db0f2e":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0x1","0x97":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x12d":"0x0","0x15f":"0x5cc819c9915eadfcebd76952b8c1bc36cadd7376","0x13cf90498be59d359caa5b6092b365feab4610605d7107d1f05f8e94ac955652":"0x1","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x54563a9e1cd2dcbd0bca90d3cfa4a647e02c404a","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106102295760003560e01c8063886a69ba11610123578063cf1d21c0116100ab578063e2c49de11161006f578063e2c49de11461091d578063e3dec8fb14610932578063e43009a6146109c8578063e66f9603146109fb578063ea60c7c414610a2557610240565b8063cf1d21c014610844578063d233a3c714610859578063d547741f1461089c578063d81c8e52146108d5578063dc993a23146108ea57610240565b8063a217fddf116100f2578063a217fddf1461078a578063b4b4f63e1461079f578063bc08452b146107b4578063c4d66de8146107e7578063ca15c8731461081a57610240565b8063886a69ba146106c95780639010d07c146106de5780639173b1391461070e57806391d148541461075157610240565b80633138b6f1116101b1578063568b80b511610175578063568b80b5146105fb578063607f2d4214610610578063630fcbfb1461064e5780636cb136b0146106635780636e86b7701461069657610240565b80633138b6f1146104f55780633408e4701461050a57806336568abe1461051f5780633805550f146105585780634faa8a26146105d557610240565b80630f7e5970116101f85780630f7e59701461042357806320379ee514610438578063248a9ca31461045f5780632d0335ab146104895780632f2ff15d146104bc57610240565b806304967702146102455780630c3894bb146102765780630c53c51c146102b15780630c598220146103ea57610240565b366102405761023e610239610a58565b610a68565b005b600080fd5b34801561025157600080fd5b5061025a610b69565b604080516001600160a01b039092168252519081900360200190f35b34801561028257600080fd5b5061023e6004803603604081101561029957600080fd5b506001600160a01b0381358116916020013516610b78565b610375600480360360a08110156102c757600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156102f257600080fd5b82018360208201111561030457600080fd5b8035906020019184600183028401116401000000008311171561032657600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550508235935050506020810135906040013560ff16610cc9565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103af578181015183820152602001610397565b50505050905090810190601f1680156103dc5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156103f657600080fd5b5061023e6004803603604081101561040d57600080fd5b50803590602001356001600160a01b0316610fcc565b34801561042f57600080fd5b506103756110b9565b34801561044457600080fd5b5061044d6110d6565b60408051918252519081900360200190f35b34801561046b57600080fd5b5061044d6004803603602081101561048257600080fd5b50356110dc565b34801561049557600080fd5b5061044d600480360360208110156104ac57600080fd5b50356001600160a01b03166110f4565b3480156104c857600080fd5b5061023e600480360360408110156104df57600080fd5b50803590602001356001600160a01b031661110f565b34801561050157600080fd5b5061025a611176565b34801561051657600080fd5b5061044d611185565b34801561052b57600080fd5b5061023e6004803603604081101561054257600080fd5b50803590602001356001600160a01b0316611189565b34801561056457600080fd5b5061023e6004803603602081101561057b57600080fd5b81019060208101813564010000000081111561059657600080fd5b8201836020820111156105a857600080fd5b803590602001918460018302840111640100000000831117156105ca57600080fd5b5090925090506111ea565b61023e600480360360208110156105eb57600080fd5b50356001600160a01b03166116ec565b34801561060757600080fd5b5061044d6116f8565b34801561061c57600080fd5b5061063a6004803603602081101561063357600080fd5b503561171b565b604080519115158252519081900360200190f35b34801561065a57600080fd5b5061023e611730565b34801561066f57600080fd5b5061023e6004803603602081101561068657600080fd5b50356001600160a01b03166117d6565b3480156106a257600080fd5b5061025a600480360360208110156106b957600080fd5b50356001600160a01b031661186e565b3480156106d557600080fd5b5061044d611889565b3480156106ea57600080fd5b5061025a6004803603604081101561070157600080fd5b50803590602001356118aa565b34801561071a57600080fd5b5061023e6004803603606081101561073157600080fd5b506001600160a01b038135811691602081013590911690604001356118d1565b34801561075d57600080fd5b5061063a6004803603604081101561077457600080fd5b50803590602001356001600160a01b0316611a06565b34801561079657600080fd5b5061044d611a24565b3480156107ab57600080fd5b5061023e611a29565b3480156107c057600080fd5b5061023e600480360360208110156107d757600080fd5b50356001600160a01b0316611acf565b3480156107f357600080fd5b5061023e6004803603602081101561080a57600080fd5b50356001600160a01b0316611b67565b34801561082657600080fd5b5061044d6004803603602081101561083d57600080fd5b5035611c57565b34801561085057600080fd5b5061025a611c6e565b34801561086557600080fd5b5061023e6004803603606081101561087c57600080fd5b506001600160a01b03813581169160208101359091169060400135611c86565b3480156108a857600080fd5b5061023e600480360360408110156108bf57600080fd5b50803590602001356001600160a01b0316611de8565b3480156108e157600080fd5b5061044d611e41565b3480156108f657600080fd5b5061023e6004803603602081101561090d57600080fd5b50356001600160a01b0316611e60565b34801561092957600080fd5b5061025a611f3d565b34801561093e57600080fd5b5061023e6004803603606081101561095557600080fd5b6001600160a01b03823581169260208101359091169181019060608101604082013564010000000081111561098957600080fd5b82018360208201111561099b57600080fd5b803590602001918460018302840111640100000000831117156109bd57600080fd5b509092509050611f4c565b3480156109d457600080fd5b5061044d600480360360208110156109eb57600080fd5b50356001600160a01b0316611fe9565b348015610a0757600080fd5b5061025a60048036036020811015610a1e57600080fd5b5035611ffb565b348015610a3157600080fd5b5061025a60048036036020811015610a4857600080fd5b50356001600160a01b0316612016565b6000610a62612031565b90505b90565b604080513460208083019190915282518083039091018152908201909152610aa58273eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee8361208e565b7fa1829a9003092132f585b6ccdd167c19fe9774dbdea4260287e8a8e8ca8185d7546000908152600260205260408082205490516001600160a01b039091169034908381818185875af1925050503d8060008114610b1f576040519150601f19603f3d011682016040523d82523d6000602084013e610b24565b606091505b5050905080610b645760405162461bcd60e51b815260040180806020018281038252602781526020018061419d6027913960400191505060405180910390fd5b505050565b6009546001600160a01b031681565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020610ba981610ba4610a58565b611a06565b600a90610c495760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b820191906000526020600020905b815481529060010190602001808311610c1d57829003601f168201915b50509250505060405180910390fd5b506001600160a01b03808416600081815260036020908152604080832080546001600160a01b0319908116909155948716808452600483528184208054909616909555838352600590915280822082905551909291907f9e651a8866fbea043e911d816ec254b0e3c992c06fff32d605e72362d6023bd9908490a4505050565b6060610cd3613e2a565b50604080516060810182526001600160a01b0388166000818152600c602090815290849020548352820152908101869052610d118782878787612508565b610d4c5760405162461bcd60e51b81526004018080602001828103825260218152602001806141c46021913960400191505060405180910390fd5b6001600160a01b0387166000908152600c6020526040902054610d7690600163ffffffff6125e516565b6001600160a01b0388166000818152600c602090815260408083209490945583519283523383820181905260609484018581528b51958501959095528a517f5845892132946850460bff5a0083f71031bc5bf9aadcd40f1de79423eac9b10b958d9592948d94919260808501928601918190849084905b83811015610e05578181015183820152602001610ded565b50505050905090810190601f168015610e325780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a160006060306001600160a01b0316888a6040516020018083805190602001908083835b60208310610e835780518252601f199092019160209182019101610e64565b6001836020036101000a038019825116818451168082178552505050505050905001826001600160a01b03166001600160a01b031660601b8152601401925050506040516020818303038152906040526040518082805190602001908083835b60208310610f025780518252601f199092019160209182019101610ee3565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610f64576040519150601f19603f3d011682016040523d82523d6000602084013e610f69565b606091505b509150915081610fc0576040805162461bcd60e51b815260206004820152601c60248201527f46756e6374696f6e2063616c6c206e6f74207375636365737366756c00000000604482015290519081900360640190fd5b98975050505050505050565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020610ff881610ba4610a58565b600a9061105e5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5060008381526002602052604080822080546001600160a01b0319166001600160a01b0386169081179091559051909185917f8643692ae1c12ec91fa18e50b82ed93fa314f580999a236824db6de9ae0d839b9190a3505050565b604051806040016040528060018152602001603160f81b81525081565b600b5490565b6000818152600160205260409020600201545b919050565b6001600160a01b03166000908152600c602052604090205490565b60008281526001602052604090206002015461112d90610ba4610a58565b6111685760405162461bcd60e51b815260040180806020018281038252602f815260200180613f78602f913960400191505060405180910390fd5b611172828261263f565b5050565b6008546001600160a01b031690565b4690565b611191610a58565b6001600160a01b0316816001600160a01b0316146111e05760405162461bcd60e51b815260040180806020018281038252602f815260200180614286602f913960400191505060405180910390fd5b61117282826126ae565b606061123361122e84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061271d92505050565b612798565b905060006112548260028151811061124757fe5b602002602001015161291a565b6112796112748460088151811061126757fe5b6020026020010151612a62565b612b2c565b6112898460098151811061124757fe5b6040516020018084815260200183805190602001908083835b602083106112c15780518252601f1990920191602091820191016112a2565b51815160209384036101000a6000190180199092169116179052920193845250604080518085038152938201815283519382019390932060008181526006909252929020549194505060ff1615915061134d90505760405162461bcd60e51b81526004018080602001828103825260288152602001806142096028913960400191505060405180910390fd5b6000818152600660208190526040909120805460ff19166001179055825160609161138a9161122e9161138591879190811061126757fe5b61271d565b9050611394613e54565b6113b1826003815181106113a457fe5b6020026020010151612798565b6113c18560098151811061124757fe5b815181106113cb57fe5b6020026020010151905060006113fc6113e383612798565b6000815181106113ef57fe5b6020026020010151612c9f565b6001600160a01b0380821660009081526004602052604090205491925016806114565760405162461bcd60e51b81526004018080602001828103825260228152602001806140af6022913960400191505060405180910390fd5b6001600160a01b03808216600090815260056020908152604080832054835260029091529020548751911690611493908890600890811061124757fe5b63ffffffff1916156114d65760405162461bcd60e51b815260040180806020018281038252602581526020018061408a6025913960400191505060405180910390fd5b61151e6114e98860068151811061126757fe5b6114f98960088151811061126757fe5b6115098a60078151811061126757fe5b6115198b60058151811061124757fe5b612d2f565b61156f576040805162461bcd60e51b815260206004820152601f60248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f50524f4f4600604482015290519081900360640190fd5b6115dd6115828860028151811061124757fe5b6115928960038151811061124757fe5b6115a28a60048151811061124757fe5b60001b6115b58b60058151811061124757fe5b60001b6115c88c60008151811061124757fe5b6115d88d60018151811061126757fe5b612f76565b50806001600160a01b0316638274664f6115f5610a58565b846115ff886130bf565b6040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561167b578181015183820152602001611663565b50505050905090810190601f1680156116a85780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b1580156116c957600080fd5b505af11580156116dd573d6000803e3d6000fd5b50505050505050505050505050565b6116f581610a68565b50565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b01902081565b60066020526000908152604090205460ff1681565b600061173e81610ba4610a58565b600a906117a45760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506116f56040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b81525061312d565b60006117e481610ba4610a58565b600a9061184a5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5050600780546001600160a01b0319166001600160a01b0392909216919091179055565b6004602052600090815260409020546001600160a01b031681565b604080516826a0a82faa27a5a2a760b91b8152905190819003600901902081565b60008281526001602052604081206118c8908363ffffffff6131e916565b90505b92915050565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b0190206118fd81610ba4610a58565b600a906119635760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b03848116600090815260036020526040902054161580156119a457506001600160a01b0383811660009081526004602052604090205416155b6119f5576040805162461bcd60e51b815260206004820181905260248201527f526f6f74436861696e4d616e616765723a20414c52454144595f4d4150504544604482015290519081900360640190fd5b611a008484846131f5565b50505050565b60008281526001602052604081206118c8908363ffffffff61348416565b600081565b6000611a3781610ba4610a58565b600a90611a9d5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506116f56040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613499565b6000611add81610ba4610a58565b600a90611b435760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5050600880546001600160a01b0319166001600160a01b0392909216919091179055565b60005460ff1615611bb0576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b611be16040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613537565b611c126040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613499565b611c1d600082611168565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020611c479082611168565b506000805460ff19166001179055565b60008181526001602052604081206118cb90613589565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020611cb281610ba4610a58565b600a90611d185760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b0380851660009081526003602081815260408084205488861685526004835281852054861680865293909252909220549183169290911615611d8e576001600160a01b038116600090815260036020908152604080832080546001600160a01b031916905560059091528120555b6001600160a01b038281166000908152600460205260409020541615611dd5576001600160a01b038216600090815260046020526040902080546001600160a01b03191690555b611de08686866131f5565b505050505050565b600082815260016020526040902060020154611e0690610ba4610a58565b6111e05760405162461bcd60e51b81526004018080602001828103825260308152602001806140f96030913960400191505060405180910390fd5b604080516611115413d4d25560ca1b8152905190819003600701902081565b6000611e6e81610ba4610a58565b600a90611ed45760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b038216611f1a5760405162461bcd60e51b815260040180806020018281038252602d815260200180613fa7602d913960400191505060405180910390fd5b50600980546001600160a01b0319166001600160a01b0392909216919091179055565b6007546001600160a01b031690565b6001600160a01b03831673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee1415611fa85760405162461bcd60e51b81526004018080602001828103825260248152602001806141e56024913960400191505060405180910390fd5b611a00848484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061208e92505050565b60056020526000908152604090205481565b6002602052600090815260409020546001600160a01b031681565b6003602052600090815260409020546001600160a01b031681565b6000333014156120895760606000368080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505050503601516001600160a01b03169150610a659050565b503390565b6001600160a01b03808316600090815260056020908152604080832054600390925290912054909116158015906120c457508015155b6120ff5760405162461bcd60e51b81526004018080602001828103825260228152602001806140af6022913960400191505060405180910390fd5b6000818152600260205260409020546001600160a01b0316806121535760405162461bcd60e51b81526004018080602001828103825260248152602001806140176024913960400191505060405180910390fd5b6001600160a01b0385166121ae576040805162461bcd60e51b815260206004820152601e60248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f555345520000604482015290519081900360640190fd5b806001600160a01b031663e375b64e6121c5610a58565b8787876040518563ffffffff1660e01b815260040180856001600160a01b03166001600160a01b03168152602001846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561225c578181015183820152602001612244565b50505050905090810190601f1680156122895780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b1580156122ab57600080fd5b505af11580156122bf573d6000803e3d6000fd5b50505050606085858560405160200180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015612338578181015183820152602001612320565b50505050905090810190601f1680156123655780820380516001836020036101000a031916815260200191505b5060408051808303601f19018152828252600780546009546611115413d4d25560ca1b865284519586900390920185206020808701828152878701968752855160608901528551959d506001600160a01b039384169c506316f198319b5092909316985096508a955093608001919085019080838360005b838110156123f55781810151838201526020016123dd565b50505050905090810190601f1680156124225780820380516001836020036101000a031916815260200191505b5093505050506040516020818303038152906040526040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561249b578181015183820152602001612483565b50505050905090810190601f1680156124c85780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b1580156124e857600080fd5b505af11580156124fc573d6000803e3d6000fd5b50505050505050505050565b60006001600160a01b03861661254f5760405162461bcd60e51b81526004018080602001828103825260258152602001806141296025913960400191505060405180910390fd5b600161256261255d87613594565b613620565b83868660405160008152602001604052604051808581526020018460ff1660ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa1580156125bc573d6000803e3d6000fd5b505050602060405103516001600160a01b0316866001600160a01b031614905095945050505050565b6000828201838110156118c8576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600082815260016020526040902061265d908263ffffffff61366c16565b156111725761266a610a58565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b60008281526001602052604090206126cc908263ffffffff61368116565b15611172576126d9610a58565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612725613e54565b600082511161277b576040805162461bcd60e51b815260206004820152601f60248201527f524c505265616465723a20494e56414c49445f42595445535f4c454e47544800604482015290519081900360640190fd5b506040805180820190915281518152602082810190820152919050565b60606127a382613696565b6127f4576040805162461bcd60e51b815260206004820152601860248201527f524c505265616465723a204954454d5f4e4f545f4c4953540000000000000000604482015290519081900360640190fd5b60006127ff836136c2565b905060608167ffffffffffffffff8111801561281a57600080fd5b5060405190808252806020026020018201604052801561285457816020015b612841613e54565b8152602001906001900390816128395790505b5090506000612866856020015161374e565b855190915081146128a85760405162461bcd60e51b81526004018080602001828103825260278152602001806142316027913960400191505060405180910390fd5b60006128b786602001516137e2565b60208701510190506000805b8581101561290e576128d48361374e565b91506040518060400160405280838152602001848152508582815181106128f757fe5b6020908102919091010152918101916001016128c3565b50929695505050505050565b600061292582613696565b15612977576040805162461bcd60e51b815260206004820181905260248201527f524c505265616465723a204445434f44494e475f4c4953545f41535f55494e54604482015290519081900360640190fd5b8151602110156129ce576040805162461bcd60e51b815260206004820152601e60248201527f524c505265616465723a20494e56414c49445f55494e545f4c454e4754480000604482015290519081900360640190fd5b60006129dd836020015161374e565b83519091508114612a1f5760405162461bcd60e51b81526004018080602001828103825260278152602001806142b56027913960400191505060405180910390fd5b6000612a2e84602001516137e2565b84516020808701518301805193945091849003929190831015612a5857826020036101000a820491505b5095945050505050565b60606000612a73836020015161374e565b83519091508114612ab55760405162461bcd60e51b81526004018080602001828103825260288152602001806140d16028913960400191505060405180910390fd5b6000612ac484602001516137e2565b845190915081900360608167ffffffffffffffff81118015612ae557600080fd5b506040519080825280601f01601f191660200182016040528015612b10576020820181803683370190505b5090506000816020019050612a58848860200151018285613845565b604080516020810190915260008152815160609190156118cb57600080612b54600086613890565b60f81c90506001811480612b6b57508060ff166003145b15612bfa57600185516002020367ffffffffffffffff81118015612b8e57600080fd5b506040519080825280601f01601f191660200182016040528015612bb9576020820181803683370190505b5092506000612bc9600187613890565b90508084600081518110612bd957fe5b60200101906001600160f81b031916908160001a9053506001925050612c4b565b600285516002020367ffffffffffffffff81118015612c1857600080fd5b506040519080825280601f01601f191660200182016040528015612c43576020820181803683370190505b509250600091505b60ff82165b8351811015612c9657612c6b8360ff16820360020187613890565b848281518110612c7757fe5b60200101906001600160f81b031916908160001a905350600101612c50565b50505092915050565b6000612caa82613696565b15612ce65760405162461bcd60e51b815260040180806020018281038252602381526020018061417a6023913960400191505060405180910390fd5b8151601514612d265760405162461bcd60e51b81526004018080602001828103825260218152602001806142dc6021913960400191505060405180910390fd5b6118cb8261291a565b6000612d39613e54565b612d428461271d565b90506060612d4f82612798565b905060608085600082612d618b612b2c565b9050805160001415612d7d576000975050505050505050612f6e565b60005b8651811015612f65578151831115612da357600098505050505050505050612f6e565b612dbf878281518110612db257fe5b60200260200101516130bf565b955085805190602001208414612de057600098505050505050505050612f6e565b612def8782815181106113a457fe5b9450845160111415612eac578151831415612e4b578c80519060200120612e1c8660108151811061126757fe5b805190602001201415612e3a57600198505050505050505050612f6e565b600098505050505050505050612f6e565b6000828481518110612e5957fe5b016020015160f81c90506010811115612e7e5760009950505050505050505050612f6e565b612e9d868260ff1681518110612e9057fe5b60200260200101516138ed565b94505060019290920191612f5d565b845160021415612e3a576000612ed2612ecb8760008151811061126757fe5b848661398c565b905082518185011415612f28578d80519060200120612ef78760018151811061126757fe5b805190602001201415612f165760019950505050505050505050612f6e565b60009950505050505050505050612f6e565b80612f3f5760009950505050505050505050612f6e565b8084019350612f5486600181518110612e9057fe5b9450612f5d9050565b600101612d80565b50505050505050505b949350505050565b600854604080516320a9cea560e11b81526004810185905290516000928392839283926001600160a01b0316916341539d4a9160248083019260a0929190829003018186803b158015612fc857600080fd5b505afa158015612fdc573d6000803e3d6000fd5b505050506040513d60a0811015612ff257600080fd5b5080516020820151606090920151909450909250905061306161301b8b8463ffffffff613a6b16565b6040805160208082018f90528183018e9052606082018d905260808083018d90528351808403909101815260a0909201909252805191012090858863ffffffff613aad16565b6130b2576040805162461bcd60e51b815260206004820181905260248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f484541444552604482015290519081900360640190fd5b9998505050505050505050565b606080826000015167ffffffffffffffff811180156130dd57600080fd5b506040519080825280601f01601f191660200182016040528015613108576020820181803683370190505b50905060008160200190506131268460200151828660000151613845565b5092915050565b6040518060800160405280604f815260200161403b604f913980516020918201208251838301206040805180820190915260018152603160f81b930192909252907fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc630613198611185565b604080516020808201979097528082019590955260608501939093526001600160a01b03909116608084015260a0808401919091528151808403909101815260c090920190528051910120600b5550565b60006118c88383613c03565b6000818152600260205260409020546001600160a01b03166132485760405162461bcd60e51b815260040180806020018281038252602a815260200180613f07602a913960400191505060405180910390fd5b6001600160a01b03808416600081815260036020908152604080832080549588166001600160a01b031996871681179091558084526004835281842080549096168517909555838352600590915280822085905551849392917f9e651a8866fbea043e911d816ec254b0e3c992c06fff32d605e72362d6023bd991a4604080516001600160a01b0380861660208084019190915281861683850152606083810186905284518085038201815260808086018088526007546009546826a0a82faa27a5a2a760b91b9092528851978890036089018820888701818152898b019a8b528551968a019690965284519499918816986316f1983198939093169690958a9590949293909201919085019080838360005b8381101561337357818101518382015260200161335b565b50505050905090810190601f1680156133a05780820380516001836020036101000a031916815260200191505b5093505050506040516020818303038152906040526040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015613419578181015183820152602001613401565b50505050905090810190601f1680156134465780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b15801561346657600080fd5b505af115801561347a573d6000803e3d6000fd5b5050505050505050565b60006118c8836001600160a01b038416613c67565b806040516020018082805190602001908083835b602083106134cc5780518252601f1990920191602091820191016134ad565b51815160209384036101000a60001901801990921691161790527f3a20494e53554646494349454e545f5045524d495353494f4e530000000000009190930190815260408051808303600519018152601a909201905280516111729550600a94509201919050613e6e565b60005460ff1615613580576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b611c478161312d565b60006118cb82613c7f565b6000604051806080016040528060438152602001613fd460439139805190602001208260000151836020015184604001518051906020012060405160200180858152602001848152602001836001600160a01b03166001600160a01b03168152602001828152602001945050505050604051602081830303815290604052805190602001209050919050565b600061362a6110d6565b82604051602001808061190160f01b81525060020183815260200182815260200192505050604051602081830303815290604052805190602001209050919050565b60006118c8836001600160a01b038416613c83565b60006118c8836001600160a01b038416613ccd565b6020810151805160009190821a9060c08210156136b8576000925050506110ef565b5060019392505050565b6000806000905060006136d884602001516137e2565b602085015185519181019250015b80821015613745576136f78261374e565b820191508082111561373a5760405162461bcd60e51b815260040180806020018281038252602c81526020018061414e602c913960400191505060405180910390fd5b6001909201916136e6565b50909392505050565b80516000908190811a60808110156137695760019150613126565b60b881101561377e57607e1981019150613126565b60c08110156137ab5760b78103600185019450806020036101000a85510460018201810193505050613126565b60f88110156137c05760be1981019150613126565b60019390930151602084900360f7016101000a900490920160f5190192915050565b8051600090811a60808110156137fc5760009150506110ef565b60b8811080613817575060c08110801590613817575060f881105b156138265760019150506110ef565b60c081101561383a5760b5190190506110ef565b60f5190190506110ef565b8061384f57610b64565b5b6020811061386f578251825260209283019290910190601f1901613850565b915181516020939093036101000a6000190180199091169216919091179052565b600060028306156138c15760108260028504815181106138ac57fe5b016020015160f81c816138bb57fe5b066138e3565b60108260028504815181106138d257fe5b016020015160f81c816138e157fe5b045b60f81b9392505050565b6000806138fd836020015161374e565b8351909150811461393f5760405162461bcd60e51b815260040180806020018281038252602e815260200180614258602e913960400191505060405180910390fd5b825160211461397f5760405162461bcd60e51b8152600401808060200182810382526025815260200180613f536025913960400191505060405180910390fd5b5050602001516001015190565b600080606061399a86612b2c565b90506060815167ffffffffffffffff811180156139b657600080fd5b506040519080825280601f01601f1916602001820160405280156139e1576020820181803683370190505b509050845b82518601811015613a3b5760008782815181106139ff57fe5b602001015160f81c60f81b9050808388840381518110613a1b57fe5b60200101906001600160f81b031916908160001a905350506001016139e6565b50808051906020012082805190602001201415613a5b5781519250613a60565b600092505b509095945050505050565b60006118c883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250613d93565b60006020825181613aba57fe5b0615613b04576040805162461bcd60e51b8152602060048201526014602482015273092dcecc2d8d2c840e0e4dedecc40d8cadccee8d60631b604482015290519081900360640190fd5b60006020835181613b1157fe5b0490508060020a8510613b63576040805162461bcd60e51b81526020600482015260156024820152744c65616620696e64657820697320746f6f2062696760581b604482015290519081900360640190fd5b60008660205b85518111613bf55785810151925060028806613bb55781836040516020018083815260200182815260200192505050604051602081830303815290604052805190602001209150613be7565b828260405160200180838152602001828152602001925050506040516020818303038152906040528051906020012091505b600288049750602001613b69565b509094149695505050505050565b81546000908210613c455760405162461bcd60e51b8152600401808060200182810382526022815260200180613f316022913960400191505060405180910390fd5b826000018281548110613c5457fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000613c8f8383613c67565b613cc5575081546001818101845560008481526020808220909301849055845484825282860190935260409020919091556118cb565b5060006118cb565b60008181526001830160205260408120548015613d895783546000198083019190810190600090879083908110613d0057fe5b9060005260206000200154905080876000018481548110613d1d57fe5b600091825260208083209091019290925582815260018981019092526040902090840190558654879080613d4d57fe5b600190038181906000526020600020016000905590558660010160008781526020019081526020016000206000905560019450505050506118cb565b60009150506118cb565b60008184841115613e225760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015613de7578181015183820152602001613dcf565b50505050905090810190601f168015613e145780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60405180606001604052806000815260200160006001600160a01b03168152602001606081525090565b604051806040016040528060008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10613eaf57805160ff1916838001178555613edc565b82800160010185558215613edc579182015b82811115613edc578251825591602001919060010190613ec1565b50613ee8929150613eec565b5090565b610a6591905b80821115613ee85760008155600101613ef256fe526f6f74436861696e4d616e616765723a20544f4b454e5f545950455f4e4f545f535550504f52544544456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473524c505265616465723a20494e56414c49445f55494e545f5354524943545f4c454e475448416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e74526f6f74436861696e4d616e616765723a20494e56414c49445f4348494c445f434841494e5f414444524553534d6574615472616e73616374696f6e2875696e74323536206e6f6e63652c616464726573732066726f6d2c62797465732066756e6374696f6e5369676e617475726529526f6f74436861696e4d616e616765723a20494e56414c49445f544f4b454e5f54595045454950373132446f6d61696e28737472696e67206e616d652c737472696e672076657273696f6e2c6164647265737320766572696679696e67436f6e74726163742c627974657333322073616c7429526f6f74436861696e4d616e616765723a20494e56414c49445f4252414e43485f4d41534b526f6f74436861696e4d616e616765723a20544f4b454e5f4e4f545f4d4150504544524c505265616465723a2042595445535f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b654e61746976654d6574615472616e73616374696f6e3a20494e56414c49445f5349474e4552524c505265616465723a204e554d5f4954454d535f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a204445434f44494e475f4c4953545f41535f41444452455353526f6f74436861696e4d616e616765723a2045544845525f5452414e534645525f4641494c45445369676e657220616e64207369676e617475726520646f206e6f74206d61746368526f6f74436861696e4d616e616765723a20494e56414c49445f524f4f545f544f4b454e526f6f74436861696e4d616e616765723a20455849545f414c52454144595f50524f434553534544524c505265616465723a204c4953545f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a2055494e545f5354524943545f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66524c505265616465723a2055494e545f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a20494e56414c49445f414444524553535f4c454e475448a164736f6c6343000606000a","storage":{"0x0":"0x1","0x7":"0xe0afc4e9e03e4aa67257df7a2eca77454309789d","0x8":"0xbe5deac45dd1ca4ee18dc2d585d84d3d3cb82b0d","0x9":"0x0","0xa":"0x55","0xb":"0x2603903cfd8895fdde3da4d607d44203e86098073e351022fd12745d3436e93a","0xeb5be412f275a18f6e4d622aee4ff40b21467c926224771b782d4c095d1444b":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x162b27a30e878e20728deaa5c9814fd57ccf962b998b8733ce65749bc61c552f":"0x58a175bebc8ec21a94ea63aa5a28743945940ee6","0x1a93463c7bbb7215968307c7cd357c2009c10df2a511dd62c1189098e4f3249b":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x415fec6a4fd7706b96d3a0a30121284bc5e2b28b978c20486c9f5e20d44fc781":"0x1","0x4dc1f0160d96279adc262db20edcc15527e32cb28eda582becc5ac0bc453be34":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x5fc73aa2ab567caef8745f0709fae506c01972ffb297bd9225bc262d6e87746f":"0x1","0x6ce1cd05966f090b8daa7b2ee7f80930bbb39d19b693045725fbae5fa44fda90":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0xa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb49":"0x1","0xc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a8":"0x526f6f74436861696e4d616e616765723a20494e53554646494349454e545f50","0xc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a9":"0x45524d495353494f4e5300000000000000000000000000000000000000000000","0xd61ba0007bb57e62613f82f528c06ba46d36349cf5be567b12f878ef04849a7d":"0x1","0xf960df71fab73e593428c10f56f55e7ea46985963177def0458b97f1afec9576":"0xcf4e755f204163e9213ba8b1305036e386579ccc70731c25c62a101197811f48"}},"0x287dee389caaa49edc112888f2bcfd927b472e25":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c80634f89059e1461002d575b5f80fd5b61004061003b366004610125565b610054565b604051901515815260200160405180910390f35b5f806100985f85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101029050565b60ff1690505f811180156100f857506100f36100b5826001610191565b85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101029050565b60ff16155b9150505b92915050565b5f828281518110610115576101156101b0565b016020015160f81c905092915050565b5f8060208385031215610136575f80fd5b823567ffffffffffffffff8082111561014d575f80fd5b818501915085601f830112610160575f80fd5b81358181111561016e575f80fd5b86602082850101111561017f575f80fd5b60209290920196919550909350505050565b808201808211156100fc57634e487b7160e01b5f52601160045260245ffd5b634e487b7160e01b5f52603260045260245ffdfea164736f6c6343000818000a","storage":{}},"0x3198fc981626687f4b5bdf0fbeabb0a5e0489c03":{"nonce":1,"balance":"0x8ac7230489e80000","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0x1","0x97":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x13cf90498be59d359caa5b6092b365feab4610605d7107d1f05f8e94ac955652":"0x1","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xc2110388dd54228ae0a834119457ede938bf0b57","0x412386de53449251cbf7ce1f4c6a038bf9c0746e62d331b08ef0c3fa7d0ab672":"0x4fbf7b2f171336958be5d15ff762a5cff5363568","0x60793a5062d506d35cc8f1beda67ee5028c16bfcd9c923d5bfc439c04bd929b1":"0x6ac8f19d1e0f81147cdf2a1e53cb1f4e18417204","0x75df8b43665bf2e4996a686913c4c278ca7aed85444740ca40355b1c9a94b504":"0x1","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xf851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004":"0xc965345edac823d56812cd20a10316233916a605"}},"0x39a27956b78d00a4e00ea8833ff0947410a2933f":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xc9":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0xca":"0x4a3c194eb88966178bfdd81744dddafed611b830","0xcb":"0x4872cc1be60a9db9c880a0a437da7a6af134f08f","0xcc":"0xf8c26340c1eaea6c7ff1760b25005e1306953572","0xce":"0xce4bb7dc1eb9dce75743de6a4b48534fd427ef51","0xc6892776bb3da1e1199a03e0d3131aea089754b59c557b750c478ebc85ccaa":"0x6e66740000000000000000000000000000000000000000000000000000000006","0x6cb37a6d512a1e227e627eddc133023e6d00bfedff31a600abb75aa93e9a4a0":"0x6b7265737573000000000000000000000000000000000000000000000000000c","0x8e966fe8b9b43d48017ba1eb562ced91049de778396aaa438773698b3fa8fb6":"0x0","0x94a32b1c7b189ce7293f7ae444cdcab6800d858454022d15355d5ecc5b32b26":"0x0","0xa4b2d73a9f36ca5eed107f7c3d2ba877fb7537d447256726bcde9bac9e9aaee":"0x0","0xe0e3ab102c26f13da20123aa517b31e99cf65b7b720ba0dd7138012fd23eff2":"0x0","0x1203b5e51c7d5be6da42b83f22878d3583e53123857d27fc3cff3df46fb9126c":"0x0","0x13477730039a04f4290adf0e48e98b233579c040281545e4446ce662ba56a9be":"0x7800000000000000000000000000000000000000000000000000000000000002","0x1e06d49ce7b00846691778f302e94a3ac9c2633d745ebe73d68353c941e68dee":"0x626974636f696e0000000000000000000000000000000000000000000000000e","0x1e99199375610ffe00d28ee5827c616cf6469be3de2a2f738d955eb6b62127e8":"0x1","0x21e80eded1b2e1c5d976c85e89dde60bd4e99a8d66346af0e359ac854bceba44":"0x0","0x254d9ade81439f29723741d6ff407eab1fe03caffb042bd85e53955e41fb9792":"0x616c74696d697374000000000000000000000000000000000000000000000010","0x269db12b2cd2aeb7d5f52eda16edb1d211ccbea12da1ebfa60ed5f8f396c1d04":"0x0","0x2a3f03435eedee01de7e1c4386b04ca8469edd8df00408cd6d2b058bce1cecfa":"0x0","0x323a3cb169499006d6635c58232c8c58e23c20bf9e1d309d6b3bc6fb2c7a093d":"0x0","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x229c56b7805ab5935a883207f6a6bd5847e65aee","0x37aac864d4715a975bd45cae6be99de9f7968cf995917cc7f8192940fb62acbf":"0x0","0x3f69f26894a7ae0f7a7aa6c2d77935589dabbff6435aee960da15064dea7cd59":"0x64616f0000000000000000000000000000000000000000000000000000000006","0x467a68fda3230ce33f64703ebdbd91caccf235403282ae9fe390675ef39e9c94":"0x0","0x50ae8c017c4c1fddbe9509bd2b916f5dd9da11ddb639f2a4230322f49a41ac87":"0x1","0x5496787fc1ebdfeba375028c1865f13fbb1d63c0caa356ccc1b29a80f3ebd622":"0x0","0x576dd8d1a7b74aba0a99a213f50d74aa642a2c80bd5a854b24aac7568afea0f7":"0x626974676574000000000000000000000000000000000000000000000000000c","0x5b54338c052ce22ec334b6c5a19c4b122701c5fd4d3a2a5f5890f57050e0aafa":"0x626c6f636b636861696e00000000000000000000000000000000000000000014","0x5d9de30f0e5e02628e726fd23e310ee9e64489866fa6959825148a25d40e4c83":"0x0","0x5e2d99ab4a1a153039a4b2e068d64802da8735071a2d018ee9d04297945bed00":"0x0","0x670006c4193123492fb25db465ed52e62aff2f076289f4f1a5f167237f5e579d":"0x6d616e676100000000000000000000000000000000000000000000000000000a","0x6deac161c541001c0d79afaf7b809418785fa5ca6533d86bcf312e7213ee08fc":"0x0","0x6eaa0db35203bc0d58aff54ca630dd125b27758aa6204f7a11c0617f7c2fa776":"0x706f670000000000000000000000000000000000000000000000000000000006","0x732abe4661f55132b7f119cab9a9985be6630299dfc92870cc910f147795bc44":"0x0","0x743eb517f46c12bb593097087a972028308ce2e819a76cfb5488751f9d1ca34a":"0x7265616c6d00000000000000000000000000000000000000000000000000000a","0x750dfb39c9afc828c341e1a8e8fdca0b3914baf43303e1ef21fbfe8ec8ee016a":"0x0","0x7cbf647b96a1d1a533ea4bc3a4a8a78f166bd91e6a96afb12f063fef0e9cb960":"0x0","0x7dc972254779cfb51850c0eaccfcb71207822b3c10d4840567bec3dfbf0dff13":"0x636f6d0000000000000000000000000000000000000000000000000000000006","0x7dfa160584f41570c33e8e6c42c5314a7b45ddc162f99fd101ccc10c7b5b3dd3":"0x77616c6c6574000000000000000000000000000000000000000000000000000c","0x868a5f38a2d46181ffad442d7bc5b337b3c349a58e4979f2901786c6123b996c":"0x6b6c65766572000000000000000000000000000000000000000000000000000c","0x87b2c647061aef22ef1aba96c67f440d471dfac27e9873ff4a03793b402d32ee":"0x706f6c79676f6e0000000000000000000000000000000000000000000000000e","0x893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e":"0x7c3c91245769c8b7450ad522792dec4bd4bf797f","0x91e744007b4b3621bec7c01ea851c3f48cf196b9cc6c566a48cec8c5faac6e62":"0x0","0x92c5a28dd4caaa50e0a8370243a5c600f64349e8b03604b403cbe111b50f1f7b":"0x3838380000000000000000000000000000000000000000000000000000000006","0x947936973a3a21b10c8980e1a8939a55c7339d302161884a3de05cf090e812f0":"0x1","0x9535d3ea47c5e1398d3405b4fadc73de6b1b1e6a66f674a8886ab7a6c873a390":"0x63727970746f000000000000000000000000000000000000000000000000000c","0x9956a4e94676c45844be3667f17e077c7cb53aa4e87e5a71d65e56b291232715":"0x676f000000000000000000000000000000000000000000000000000000000004","0x9c6ba1ddff1ffbc14dcdc1f97db867554a42a39e00e892c7e882dbb3dca89ebf":"0x6869000000000000000000000000000000000000000000000000000000000004","0x9f836a0f81651f597cee678b440ba8c853c633e6654809efb83d4b22aff06fb2":"0x616e696d6500000000000000000000000000000000000000000000000000000a","0x9fecf1e12f4b8ec337da992721a0f27526ddbd6be1e77885ab963c09afcf0fc1":"0x0","0xab129a0f8c6cf8d160116a28abc7369c2f8a098fc023f00f07dc3e1d5798e47a":"0x0","0xb04c0eb6f034d9a3179a4e6f953bdf8afc78ba2cdcfbc775076e1c2a0bb67818":"0x0","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xbe51b53bc2060a7a6419622b5a9adc00b50a57e6aa741882f2f60f95d4580078":"0x636c617900000000000000000000000000000000000000000000000000000008","0xbf350522e335b8ab3da1d099c93cdc09179f1e15ea6aa1acfaa4afb1ef87eabf":"0x756e73746f707061626c65000000000000000000000000000000000000000016","0xcbf7a3d53e0851ac15a415b99c2ba95a2497dd9dd44068ac261bcbdafdfe8472":"0x707564677900000000000000000000000000000000000000000000000000000a","0xcf4411216f3fdf787d1cfe037bbcfa0d5293d83a8082f8e4141266399e2a784b":"0x61757374696e000000000000000000000000000000000000000000000000000c","0xcfdbac664139565f92cce149a345e5f19355d25b3eb8a70c549d5da3283a15b8":"0x7a696c0000000000000000000000000000000000000000000000000000000006","0xcfeb64c30a93ecd7224f854b09be57bb6b3962e739fa8e3ea3a1851502474c07":"0x1","0xe03c9c593ce8661bd39f77653f7ca6c43f093aa7f3b95890f309f67b57f39e74":"0x0","0xe50c62c16d12655dfdbd61c232155e5c3a1cf61977d2d8e7449cb88611b73832":"0x0","0xeeb0b17d77f2c9069ad443f3927c0802d98d5553e52b17c985d45d4a10b79566":"0x62696e616e636575730000000000000000000000000000000000000000000012","0xf562ef0db022f25a957fb6e49aa07004f14a50ed5b23279e9ac25b4632f7bf1c":"0x0","0xf6776268d6c5847a771099280c742d684a4b22bac609ba615de51f7f893ff2bc":"0x0"}},"0x3f1194b9019002863ad0dbbe295294547c0d36a9":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100b1575f3560e01c80635b0fc9c31161006e5780635b0fc9c3146101a55780635ef2c7f0146101b8578063a22cb465146101cb578063cf408823146101de578063e985e9c5146101f1578063f79fe5381461023c575f80fd5b80630178b8bf146100b557806302571be3146100fd57806306ab59231461011057806314ab90381461013157806316a25cbd146101465780631896f70a14610192575b5f80fd5b6100e06100c3366004610785565b5f908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100e061010b366004610785565b610266565b61012361011e3660046107b7565b610292565b6040519081526020016100f4565b61014461013f366004610800565b61035f565b005b610179610154366004610785565b5f90815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100f4565b6101446101a036600461082a565b61042e565b6101446101b336600461082a565b6104ef565b6101446101c636600461084b565b61058e565b6101446101d936600461089e565b6105af565b6101446101ec3660046108d7565b61061a565b61022c6101ff366004610921565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205460ff1690565b60405190151581526020016100f4565b61022c61024a366004610785565b5f908152602081905260409020546001600160a01b0316151590565b5f818152602081905260408120546001600160a01b031630810361028c57505f92915050565b92915050565b5f8381526020819052604081205484906001600160a01b0316338114806102db57506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b6102e3575f80fd5b604080516020808201899052818301889052825180830384018152606090920190925280519101206103158186610635565b6040516001600160a01b0386168152869088907fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829060200160405180910390a39695505050505050565b5f8281526020819052604090205482906001600160a01b0316338114806103a857506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b6103b0575f80fd5b60405167ffffffffffffffff8416815284907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a250505f91825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b5f8281526020819052604090205482906001600160a01b03163381148061047757506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b61047f575f80fd5b6040516001600160a01b038416815284907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a250505f9182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b5f8281526020819052604090205482906001600160a01b03163381148061053857506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b610540575f80fd5b61054a8484610635565b6040516001600160a01b038416815284907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a250505050565b5f61059a868686610292565b90506105a7818484610662565b505050505050565b335f8181526001602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b61062484846104ef565b61062f848383610662565b50505050565b5f9182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b5f838152602081905260409020600101546001600160a01b038381169116146106e6575f838152602081815260409182902060010180546001600160a01b0319166001600160a01b038616908117909155915191825284917f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a0910160405180910390a25b5f8381526020819052604090206001015467ffffffffffffffff828116600160a01b9092041614610780575f8381526020818152604091829020600101805467ffffffffffffffff60a01b1916600160a01b67ffffffffffffffff861690810291909117909155915191825284917f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa68910160405180910390a25b505050565b5f60208284031215610795575f80fd5b5035919050565b80356001600160a01b03811681146107b2575f80fd5b919050565b5f805f606084860312156107c9575f80fd5b83359250602084013591506107e06040850161079c565b90509250925092565b803567ffffffffffffffff811681146107b2575f80fd5b5f8060408385031215610811575f80fd5b82359150610821602084016107e9565b90509250929050565b5f806040838503121561083b575f80fd5b823591506108216020840161079c565b5f805f805f60a0868803121561085f575f80fd5b85359450602086013593506108766040870161079c565b92506108846060870161079c565b9150610892608087016107e9565b90509295509295909350565b5f80604083850312156108af575f80fd5b6108b88361079c565b9150602083013580151581146108cc575f80fd5b809150509250929050565b5f805f80608085870312156108ea575f80fd5b843593506108fa6020860161079c565b92506109086040860161079c565b9150610916606086016107e9565b905092959194509250565b5f8060408385031215610932575f80fd5b61093b8361079c565b91506108216020840161079c56fea164736f6c6343000818000a","storage":{"0xdd4f47a3b6f87903b728feed7a23273bd8de58e4fa257d37a74a5881e5d92ff":"0xf670681605efc4efc804f5a9b97ee89520473d56","0x14ce109f1cffdc11aa7355660be720f902291be09fb159b4c578958cd0f533bc":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x14ce109f1cffdc11aa7355660be720f902291be09fb159b4c578958cd0f533bd":"0x0","0x1e2c8528d7e8e90443ad0a4e37b6f2b1daed719a574ce3a0c347063e8d839d50":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1e2c8528d7e8e90443ad0a4e37b6f2b1daed719a574ce3a0c347063e8d839d51":"0x0","0x2fb4213711fd985fc1fb1ea2bfa660b0b37fd50c6c74ab531d9b54b29dd5177e":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2fb4213711fd985fc1fb1ea2bfa660b0b37fd50c6c74ab531d9b54b29dd5177f":"0x0","0x859ecef2e168dc10231b000bd53493b42bc9d944cac29d94582c1e1d43592131":"0xc965345edac823d56812cd20a10316233916a605","0x8878c6daefcfc78c7f181d00d719b4a0612dd3e65cafeb72507d15c036a9f690":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0xe4fdf45c2f8d198854f8823809c7a988eeaaa493","0xfb5568c6845cf0d5915af088a5d8ba90a5ff735e102c9a79609ef7d043f1108c":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xfb5568c6845cf0d5915af088a5d8ba90a5ff735e102c9a79609ef7d043f1108d":"0x0"}},"0x4872cc1be60a9db9c880a0a437da7a6af134f08f":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100935760003560e01c80637362d9c8116100665780637362d9c8146101285780637b1039991461014e57806399e0dd7c14610172578063bb5f747b146101e2578063d6cd94731461020857610093565b806310154bad14610098578063291d9549146100c05780633af32abf146100e65780634c5a628c14610120575b600080fd5b6100be600480360360208110156100ae57600080fd5b50356001600160a01b0316610210565b005b6100be600480360360208110156100d657600080fd5b50356001600160a01b0316610260565b61010c600480360360208110156100fc57600080fd5b50356001600160a01b03166102ad565b604080519115158252519081900360200190f35b6100be6102c6565b6100be6004803603602081101561013e57600080fd5b50356001600160a01b03166102d1565b61015661031e565b604080516001600160a01b039092168252519081900360200190f35b6100be6004803603602081101561018857600080fd5b8101906020810181356401000000008111156101a357600080fd5b8201836020820111156101b557600080fd5b803590602001918460018302840111640100000000831117156101d757600080fd5b50909250905061032d565b61010c600480360360208110156101f857600080fd5b50356001600160a01b0316610404565b6100be610416565b61021933610404565b6102545760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d8161041f565b50565b61026933610404565b6102a45760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d81610467565b60006102c060018363ffffffff6104af16565b92915050565b6102cf33610516565b565b6102da33610404565b6103155760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d8161055e565b6002546001600160a01b031690565b610336336102ad565b6103715760405162461bcd60e51b815260040180806020018281038252603a815260200180610712603a913960400191505060405180910390fd5b6002546040516369426cbd60e11b8152602060048201908152602482018490526001600160a01b039092169163d284d97a91859185918190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b1580156103e857600080fd5b505af11580156103fc573d6000803e3d6000fd5b505050505050565b60006102c0818363ffffffff6104af16565b6102cf33610467565b61043060018263ffffffff6105a616565b6040516001600160a01b038216907fee1504a83b6d4a361f4c1dc78ab59bfa30d6a3b6612c403e86bb01ef2984295f90600090a250565b61047860018263ffffffff61062716565b6040516001600160a01b038216907f270d9b30cf5b0793bbfd54c9d5b94aeb49462b8148399000265144a8722da6b690600090a250565b60006001600160a01b0382166104f65760405162461bcd60e51b81526004018080602001828103825260228152602001806106b06022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b61052760008263ffffffff61062716565b6040516001600160a01b038216907f0a8eb35e5ca14b3d6f28e4abf2f128dbab231a58b56e89beb5d636115001e16590600090a250565b61056f60008263ffffffff6105a616565b6040516001600160a01b038216907f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129990600090a250565b6105b082826104af565b15610602576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b61063182826104af565b61066c5760405162461bcd60e51b815260040180806020018281038252602181526020018061068f6021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f206164647265737357686974656c69737441646d696e526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c69737441646d696e20726f6c6557686974656c6973746564526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c697374656420726f6c65a265627a7a72315820debca60946c0819dc5b5c2756c5c1dd8dd8a46f2429fa8a43a4f4362af3030c164736f6c634300050c0032","storage":{"0x2":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x5ac40fcee41fb0272a935f6e51e963102fba5db6f20e897e9361f0347eb2cae6":"0x1","0xdc4aeb95a779c8b92b845e3a94044db8ff2e43acc37da18c4b35a6bbad7c122f":"0x1"}},"0x49da8861c65460639925febe1fb4b5b59b443082":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f7e83aee1461002d575b5f80fd5b61004061003b3660046101ac565b610054565b604051901515815260200160405180910390f35b5f602082146100a95760405162461bcd60e51b815260206004820152601a60248201527f496e76616c6964207368613235362068617368206c656e677468000000000000604482015260640160405180910390fd5b6100eb5f84848080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101459050565b600286866040516100fd929190610213565b602060405180830381855afa158015610118573d5f803e3d5ffd5b5050506040513d601f19601f8201168201806040525081019061013b9190610222565b1495945050505050565b81515f90610154836020610239565b111561015e575f80fd5b50016020015190565b5f8083601f840112610177575f80fd5b50813567ffffffffffffffff81111561018e575f80fd5b6020830191508360208285010111156101a5575f80fd5b9250929050565b5f805f80604085870312156101bf575f80fd5b843567ffffffffffffffff808211156101d6575f80fd5b6101e288838901610167565b909650945060208701359150808211156101fa575f80fd5b5061020787828801610167565b95989497509550505050565b818382375f9101908152919050565b5f60208284031215610232575f80fd5b5051919050565b8082018082111561025857634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x4a3c194eb88966178bfdd81744dddafed611b830":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061009e5760003560e01c806398650275116100665780639865027514610305578063aa271e1a1461030d578063b2da297914610347578063be362e2e146103c5578063c36c2125146104fe5761009e565b80634c0b0ed2146100a35780637b103999146101595780637caf3ad81461017d5780638ad364f814610258578063983b2d56146102df575b600080fd5b610157600480360360408110156100b957600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156100e357600080fd5b8201836020820111156100f557600080fd5b803590602001918460018302840111600160201b8311171561011657600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506105bd945050505050565b005b61016161074c565b604080516001600160a01b039092168252519081900360200190f35b6101576004803603608081101561019357600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156101bd57600080fd5b8201836020820111156101cf57600080fd5b803590602001918460018302840111600160201b831117156101f057600080fd5b919390926001600160a01b0383351692604081019060200135600160201b81111561021a57600080fd5b82018360208201111561022c57600080fd5b803590602001918460018302840111600160201b8311171561024d57600080fd5b50909250905061075b565b6101576004803603606081101561026e57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561029857600080fd5b8201836020820111156102aa57600080fd5b803590602001918460018302840111600160201b831117156102cb57600080fd5b9193509150356001600160a01b0316610957565b610157600480360360208110156102f557600080fd5b50356001600160a01b0316610b2b565b610157610b7b565b6103336004803603602081101561032357600080fd5b50356001600160a01b0316610b86565b604080519115158252519081900360200190f35b6101576004803603604081101561035d57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561038757600080fd5b82018360208201111561039957600080fd5b803590602001918460018302840111600160201b831117156103ba57600080fd5b509092509050610b9e565b610157600480360360608110156103db57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561040557600080fd5b82018360208201111561041757600080fd5b803590602001918460018302840111600160201b8311171561043857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b81111561048a57600080fd5b82018360208201111561049c57600080fd5b803590602001918460018302840111600160201b831117156104bd57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610bf1945050505050565b6101576004803603606081101561051457600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561053e57600080fd5b82018360208201111561055057600080fd5b803590602001918460018302840111600160201b8311171561057157600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550505090356001600160a01b03169150610dec9050565b6105c633610b86565b6106015760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b039092169163b5466669918591849163ebf0c717916004808301926020929190829003018186803b15801561064f57600080fd5b505afa158015610663573d6000803e3d6000fd5b505050506040513d602081101561067957600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052606060448301908152875160648401528751889360840190602085019080838360005b838110156106e25781810151838201526020016106ca565b50505050905090810190601f16801561070f5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15801561073057600080fd5b505af1158015610744573d6000803e3d6000fd5b505050505050565b6001546001600160a01b031690565b6107cf8686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f89018190048102820181019092528781529250879150869081908401838280828437600092019190915250610bf192505050565b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691632525d06a91869184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b15801561082557600080fd5b505afa158015610839573d6000803e3d6000fd5b505050506040513d602081101561084f57600080fd5b5051604080516001600160e01b031960e085901b1681526004810183815260248201928352604482018d90528d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b1580156108bd57600080fd5b505afa1580156108d1573d6000803e3d6000fd5b505050506040513d60208110156108e757600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b15801561093757600080fd5b505af115801561094b573d6000803e3d6000fd5b50505050505050505050565b6109a58484848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250610bf1915050565b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691632525d06a91849184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b1580156109fb57600080fd5b505afa158015610a0f573d6000803e3d6000fd5b505050506040513d6020811015610a2557600080fd5b5051604080516001600160e01b031960e085901b1681526004810183815260248201928352604482018b90528b928b92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b158015610a9357600080fd5b505afa158015610aa7573d6000803e3d6000fd5b505050506040513d6020811015610abd57600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b158015610b0d57600080fd5b505af1158015610b21573d6000803e3d6000fd5b5050505050505050565b610b3433610b86565b610b6f5760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b610b7881611115565b50565b610b843361115d565b565b6000610b98818363ffffffff6111a516565b92915050565b610bec8383838080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250610bf1915050565b505050565b610bfa33610b86565b610c355760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691630467e014918691849163ebf0c717916004808301926020929190829003018186803b158015610c8357600080fd5b505afa158015610c97573d6000803e3d6000fd5b505050506040513d6020811015610cad57600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052608060448301908152885160848401528851899389939291606482019160a40190602087019080838360005b83811015610d1f578181015183820152602001610d07565b50505050905090810190601f168015610d4c5780820380516001836020036101000a031916815260200191505b50838103825284518152845160209182019186019080838360005b83811015610d7f578181015183820152602001610d67565b50505050905090810190601f168015610dac5780820380516001836020036101000a031916815260200191505b509650505050505050600060405180830381600087803b158015610dcf57600080fd5b505af1158015610de3573d6000803e3d6000fd5b50505050505050565b610df533610b86565b610e305760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b039092169163b5466669918691849163ebf0c717916004808301926020929190829003018186803b158015610e7e57600080fd5b505afa158015610e92573d6000803e3d6000fd5b505050506040513d6020811015610ea857600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052606060448301908152885160648401528851899360840190602085019080838360005b83811015610f11578181015183820152602001610ef9565b50505050905090810190601f168015610f3e5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015610f5f57600080fd5b505af1158015610f73573d6000803e3d6000fd5b50506001546040805163ebf0c71760e01b815290516001600160a01b039092169350632525d06a9250849184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b158015610fcd57600080fd5b505afa158015610fe1573d6000803e3d6000fd5b505050506040513d6020811015610ff757600080fd5b5051604080516001600160e01b031960e085901b16815260048101838152602482019283528a5160448301528a518b93919260640190602085019080838360005b83811015611050578181015183820152602001611038565b50505050905090810190601f16801561107d5780820380516001836020036101000a031916815260200191505b50935050505060206040518083038186803b15801561109b57600080fd5b505afa1580156110af573d6000803e3d6000fd5b505050506040513d60208110156110c557600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b158015610dcf57600080fd5b61112660008263ffffffff61120c16565b6040516001600160a01b038216907f6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f690600090a250565b61116e60008263ffffffff61128d16565b6040516001600160a01b038216907fe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb6669290600090a250565b60006001600160a01b0382166111ec5760405162461bcd60e51b81526004018080602001828103825260228152602001806113466022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b61121682826111a5565b15611268576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b61129782826111a5565b6112d25760405162461bcd60e51b81526004018080602001828103825260218152602001806113256021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe4d696e746572526f6c653a2063616c6c657220646f6573206e6f74206861766520746865204d696e74657220726f6c65526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f2061646472657373a265627a7a72315820c058d70355f7d37ff6b3b61cd850cc4a41893e30048389698c062148bf3d2ff464736f6c634300050c0032","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x789b49055833748af4eaa9affbcd84118ce8770f7e4385b5a3f428626b1f0aff":"0x1","0xdc4aeb95a779c8b92b845e3a94044db8ff2e43acc37da18c4b35a6bbad7c122f":"0x1"}},"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061007b5760003560e01c80639623609d1161004e5780639623609d1461011157806399a88ec414610124578063f2fde38b14610144578063f3b7dead1461016457600080fd5b8063204e1c7a14610080578063715018a6146100bc5780637eff275e146100d35780638da5cb5b146100f3575b600080fd5b34801561008c57600080fd5b506100a061009b366004610499565b610184565b6040516001600160a01b03909116815260200160405180910390f35b3480156100c857600080fd5b506100d1610215565b005b3480156100df57600080fd5b506100d16100ee3660046104bd565b610229565b3480156100ff57600080fd5b506000546001600160a01b03166100a0565b6100d161011f36600461050c565b610291565b34801561013057600080fd5b506100d161013f3660046104bd565b610300565b34801561015057600080fd5b506100d161015f366004610499565b610336565b34801561017057600080fd5b506100a061017f366004610499565b6103b4565b6000806000836001600160a01b03166040516101aa90635c60da1b60e01b815260040190565b600060405180830381855afa9150503d80600081146101e5576040519150601f19603f3d011682016040523d82523d6000602084013e6101ea565b606091505b5091509150816101f957600080fd5b8080602001905181019061020d91906105e2565b949350505050565b61021d6103da565b6102276000610434565b565b6102316103da565b6040516308f2839760e41b81526001600160a01b038281166004830152831690638f283970906024015b600060405180830381600087803b15801561027557600080fd5b505af1158015610289573d6000803e3d6000fd5b505050505050565b6102996103da565b60405163278f794360e11b81526001600160a01b03841690634f1ef2869034906102c990869086906004016105ff565b6000604051808303818588803b1580156102e257600080fd5b505af11580156102f6573d6000803e3d6000fd5b5050505050505050565b6103086103da565b604051631b2ce7f360e11b81526001600160a01b038281166004830152831690633659cfe69060240161025b565b61033e6103da565b6001600160a01b0381166103a85760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b6103b181610434565b50565b6000806000836001600160a01b03166040516101aa906303e1469160e61b815260040190565b6000546001600160a01b031633146102275760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161039f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146103b157600080fd5b6000602082840312156104ab57600080fd5b81356104b681610484565b9392505050565b600080604083850312156104d057600080fd5b82356104db81610484565b915060208301356104eb81610484565b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561052157600080fd5b833561052c81610484565b9250602084013561053c81610484565b9150604084013567ffffffffffffffff8082111561055957600080fd5b818601915086601f83011261056d57600080fd5b81358181111561057f5761057f6104f6565b604051601f8201601f19908116603f011681019083821181831017156105a7576105a76104f6565b816040528281528960208487010111156105c057600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000602082840312156105f457600080fd5b81516104b681610484565b60018060a01b038316815260006020604081840152835180604085015260005b8181101561063b5785810183015185820160600152820161061f565b8181111561064d576000606083870101525b50601f01601f19169290920160600194935050505056fea26469706673582212207ad53e1008cce369999f6b5f2f77109510b404ff1de9b47b639981fd68e6239264736f6c63430008090033","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x4e59b44847b379578588920ca78fbf26c0b4956c":{"nonce":0,"balance":"0x0","code":"0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe03601600081602082378035828234f58015156039578182fd5b8082525050506014600cf3","storage":{}},"0x4eb9de1fc0d800e941f326d6699e9e11969557ea":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063100cdd911461002d575b5f80fd5b61004061003b3660046102cd565b610042565b005b5f5b818110156101b8575f7f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e28484848181106100805761008061033c565b905060200201356040516020016100a1929190918252602082015260400190565b60408051808303601f190181529082905280516020909101206331a9108f60e11b82526004820181905291507f000000000000000000000000107733fed96c4cd390c944a31f5425a7fb98ae5e6001600160a01b0316906323b872dd908290636352211e90602401602060405180830381865afa158015610124573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101489190610350565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015261dead6024820152604481018490526064015f604051808303815f87803b158015610195575f80fd5b505af11580156101a7573d5f803e3d5ffd5b505060019093019250610044915050565b5080156102c9577f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e282826101ed60018261037d565b8181106101fc576101fc61033c565b9050602002013560405160200161021d929190918252602082015260400190565b604051602081830303815290604052805190602001205f1c7f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e283835f8181106102685761026861033c565b90506020020135604051602001610289929190918252602082015260400190565b60408051601f19818403018152908290528051602090910120907fdf423376f9b0ab363b1b4d6f0b4cb6821921ec30f491555a97236a8a38ce095a905f90a35b5050565b5f80602083850312156102de575f80fd5b823567ffffffffffffffff808211156102f5575f80fd5b818501915085601f830112610308575f80fd5b813581811115610316575f80fd5b8660208260051b850101111561032a575f80fd5b60209290920196919550909350505050565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215610360575f80fd5b81516001600160a01b0381168114610376575f80fd5b9392505050565b8181038181111561039c57634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x4fbf7b2f171336958be5d15ff762a5cff5363568":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061011b575f3560e01c80638d839ffe1161009d578063aeb8ce9b11610062578063aeb8ce9b14610356578063ce1e09c014610375578063d3419bf3146103a8578063f14fcbc8146103db578063f2fde38b146103fa575f80fd5b80638d839ffe146102a25780638da5cb5b146102d55780639791c097146102f1578063a8e5fbc014610310578063acf1a84114610343575f80fd5b806374694a2b116100e357806374694a2b146101c957806380869853146101dc578063839df9451461022757806383e7f6ff146102525780638a95b09f1461028c575f80fd5b806301ffc9a71461011f5780633ccfd60b146101535780635d3590d51461016957806365a69dcf14610188578063715018a6146101b5575b5f80fd5b34801561012a575f80fd5b5061013e610139366004611145565b610419565b60405190151581526020015b60405180910390f35b34801561015e575f80fd5b5061016761044f565b005b348015610174575f80fd5b50610167610183366004611187565b610489565b348015610193575f80fd5b506101a76101a23660046112e4565b610507565b60405190815260200161014a565b3480156101c0575f80fd5b5061016761058b565b6101676101d73660046113db565b61059e565b3480156101e7575f80fd5b5061020f7f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5681565b6040516001600160a01b03909116815260200161014a565b348015610232575f80fd5b506101a761024136600461149d565b60016020525f908152604090205481565b34801561025d575f80fd5b5061027161026c3660046114b4565b610894565b6040805182518152602092830151928101929092520161014a565b348015610297575f80fd5b506101a76224ea0081565b3480156102ad575f80fd5b506101a77f000000000000000000000000000000000000000000000000000000000000025881565b3480156102e0575f80fd5b505f546001600160a01b031661020f565b3480156102fc575f80fd5b5061013e61030b3660046114f6565b6109c9565b34801561031b575f80fd5b5061020f7f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e1841720481565b610167610351366004611528565b6109dd565b348015610361575f80fd5b5061013e6103703660046114f6565b610b7b565b348015610380575f80fd5b506101a77f000000000000000000000000000000000000000000000000000000000001518081565b3480156103b3575f80fd5b5061020f7f000000000000000000000000ec71e4e674fe0f432693dc2b935c34bd2774c00381565b3480156103e6575f80fd5b506101676103f536600461149d565b610c22565b348015610405575f80fd5b50610167610414366004611570565b610c95565b5f6001600160e01b031982166301ffc9a760e01b148061044957506001600160e01b0319821663612e8c0960e01b145b92915050565b5f80546040516001600160a01b03909116914780156108fc02929091818181858888f19350505050158015610486573d5f803e3d5ffd5b50565b610491610d0b565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af11580156104dd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105019190611589565b50505050565b885160208a01205f90841580159061052657506001600160a01b038716155b15610544576040516334fd817160e21b815260040160405180910390fd5b808a8a8a8a8a8a8a8a6040516020016105659998979695949392919061165e565b604051602081830303815290604052805190602001209150509998505050505050505050565b610593610d0b565b61059c5f610d64565b565b5f6105df8b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c9250610894915050565b602081015181519192506105f2916116d5565b3410156106125760405163044044a560e21b815260040160405180910390fd5b6106b38b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f82011690508083019250505050505050896106ae8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f820116905080830192505050505050508d8d8d8d8d8d8d8d610507565b610db3565b604051635200a4c160e11b81525f906001600160a01b037f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e18417204169063a40149829061070b908f908f908f908f908e908b906004016116e8565b6020604051808303815f875af1158015610727573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061074b9190611732565b9050841561077657610776878d8d604051610767929190611749565b60405180910390208888610ece565b83156107be576107be8c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508b9250339150610f939050565b896001600160a01b03168c8c6040516107d8929190611749565b60405180910390207f69e37f151eb98a09618ddaa80c8cfaf1ce5996867c489f45b555b412271ebf278e8e865f015187602001518760405161081e959493929190611758565b60405180910390a36020820151825161083791906116d5565b341115610886576020820151825133916108fc9161085591906116d5565b61085f9034611788565b6040518115909202915f818181858888f19350505050158015610884573d5f803e3d5ffd5b505b505050505050505050505050565b604080518082019091525f808252602082015282516020840120604051636b727d4360e11b8152600481018290527f000000000000000000000000ec71e4e674fe0f432693dc2b935c34bd2774c0036001600160a01b03908116916350e9a7159187917f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063d6e4fa8690602401602060405180830381865afa158015610940573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109649190611732565b866040518463ffffffff1660e01b8152600401610983939291906117e8565b6040805180830381865afa15801561099d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109c1919061180c565b949350505050565b5f60036109d583611044565b101592915050565b5f83836040516109ee929190611749565b604080519182900382206020601f8701819004810284018101909252858352925082915f91610a39919088908890819084018382808284375f92019190915250889250610894915050565b8051909150341015610a5e5760405163044044a560e21b815260040160405180910390fd5b60405163c475abff60e01b815260048101839052602481018590525f907f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b03169063c475abff906044016020604051808303815f875af1158015610acb573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610aef9190611732565b8251909150341115610b3457815133906108fc90610b0d9034611788565b6040518115909202915f818181858888f19350505050158015610b32573d5f803e3d5ffd5b505b837f3da24c024582931cfaf8267d8ed24d13a82a8068d5bd337d30ec45cea4e506ae88883485604051610b6a9493929190611859565b60405180910390a250505050505050565b805160208201205f90610b8d836109c9565b8015610c1b57506040516312dc929d60e31b8152600481018290527f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b0316906396e494e890602401602060405180830381865afa158015610bf7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c1b9190611589565b9392505050565b5f818152600160205260409020544290610c5d907f0000000000000000000000000000000000000000000000000000000000015180906116d5565b10610c8357604051630a059d7160e01b8152600481018290526024015b60405180910390fd5b5f908152600160205260409020429055565b610c9d610d0b565b6001600160a01b038116610d025760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610c7a565b61048681610d64565b5f546001600160a01b0316331461059c5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610c7a565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f818152600160205260409020544290610dee907f0000000000000000000000000000000000000000000000000000000000000258906116d5565b1115610e1057604051635320bcf960e01b815260048101829052602401610c7a565b5f818152600160205260409020544290610e4b907f0000000000000000000000000000000000000000000000000000000000015180906116d5565b11610e6c5760405163cb7690d760e01b815260048101829052602401610c7a565b610e7583610b7b565b610e9457826040516308eee0fd60e31b8152600401610c7a919061187f565b5f818152600160205260408120556224ea00821015610ec957604051639a71997b60e01b815260048101839052602401610c7a565b505050565b604080517f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae6020808301919091528183018690528251808303840181526060830193849052805191012063e32954eb60e01b90925285906001600160a01b0382169063e32954eb90610f4890859088908890606401611891565b5f604051808303815f875af1158015610f63573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052610f8a91908101906118b3565b50505050505050565b7f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d566001600160a01b0316637a806d6b33838587604051602001610fd691906119a7565b6040516020818303038152906040526040518563ffffffff1660e01b815260040161100494939291906119ce565b6020604051808303815f875af1158015611020573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105019190611732565b80515f90819081905b8082101561113c575f85838151811061106857611068611a0b565b01602001516001600160f81b0319169050600160ff1b811015611097576110906001846116d5565b9250611129565b600760fd1b6001600160f81b0319821610156110b8576110906002846116d5565b600f60fc1b6001600160f81b0319821610156110d9576110906003846116d5565b601f60fb1b6001600160f81b0319821610156110fa576110906004846116d5565b603f60fa1b6001600160f81b03198216101561111b576110906005846116d5565b6111266006846116d5565b92505b508261113481611a1f565b93505061104d565b50909392505050565b5f60208284031215611155575f80fd5b81356001600160e01b031981168114610c1b575f80fd5b80356001600160a01b0381168114611182575f80fd5b919050565b5f805f60608486031215611199575f80fd5b6111a28461116c565b92506111b06020850161116c565b9150604084013590509250925092565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff811182821017156111fd576111fd6111c0565b604052919050565b5f67ffffffffffffffff82111561121e5761121e6111c0565b50601f01601f191660200190565b5f82601f83011261123b575f80fd5b813561124e61124982611205565b6111d4565b818152846020838601011115611262575f80fd5b816020850160208301375f918101602001919091529392505050565b5f8083601f84011261128e575f80fd5b50813567ffffffffffffffff8111156112a5575f80fd5b6020830191508360208260051b85010111156112bf575f80fd5b9250929050565b8015158114610486575f80fd5b803561ffff81168114611182575f80fd5b5f805f805f805f805f6101008a8c0312156112fd575f80fd5b893567ffffffffffffffff80821115611314575f80fd5b6113208d838e0161122c565b9a5061132e60208d0161116c565b995060408c0135985060608c0135975061134a60808d0161116c565b965060a08c013591508082111561135f575f80fd5b5061136c8c828d0161127e565b90955093505060c08a0135611380816112c6565b915061138e60e08b016112d3565b90509295985092959850929598565b5f8083601f8401126113ad575f80fd5b50813567ffffffffffffffff8111156113c4575f80fd5b6020830191508360208285010111156112bf575f80fd5b5f805f805f805f805f806101008b8d0312156113f5575f80fd5b8a3567ffffffffffffffff8082111561140c575f80fd5b6114188e838f0161139d565b909c509a508a915061142c60208e0161116c565b995060408d0135985060608d0135975061144860808e0161116c565b965060a08d013591508082111561145d575f80fd5b5061146a8d828e0161127e565b90955093505060c08b013561147e816112c6565b915061148c60e08c016112d3565b90509295989b9194979a5092959850565b5f602082840312156114ad575f80fd5b5035919050565b5f80604083850312156114c5575f80fd5b823567ffffffffffffffff8111156114db575f80fd5b6114e78582860161122c565b95602094909401359450505050565b5f60208284031215611506575f80fd5b813567ffffffffffffffff81111561151c575f80fd5b6109c18482850161122c565b5f805f6040848603121561153a575f80fd5b833567ffffffffffffffff811115611550575f80fd5b61155c8682870161139d565b909790965060209590950135949350505050565b5f60208284031215611580575f80fd5b610c1b8261116c565b5f60208284031215611599575f80fd5b8151610c1b816112c6565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b5f838385526020808601955060208560051b830101845f5b8781101561165157848303601f19018952813536889003601e19018112611609575f80fd5b8701848101903567ffffffffffffffff811115611624575f80fd5b803603821315611632575f80fd5b61163d8582846115a4565b9a86019a94505050908301906001016115e4565b5090979650505050505050565b8981526001600160a01b03898116602083015260408201899052606082018890528616608082015261010060a082018190525f9061169f83820187896115cc565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610449576104496116c1565b60a081525f6116fb60a08301888a6115a4565b6001600160a01b03968716602084015260408301959095525091909316606082015261ffff90921660809092019190915292915050565b5f60208284031215611742575f80fd5b5051919050565b818382375f9101908152919050565b608081525f61176b6080830187896115a4565b602083019590955250604081019290925260609091015292915050565b81810381811115610449576104496116c1565b5f5b838110156117b557818101518382015260200161179d565b50505f910152565b5f81518084526117d481602086016020860161179b565b601f01601f19169290920160200192915050565b606081525f6117fa60608301866117bd565b60208301949094525060400152919050565b5f6040828403121561181c575f80fd5b6040516040810181811067ffffffffffffffff8211171561183f5761183f6111c0565b604052825181526020928301519281019290925250919050565b606081525f61186c6060830186886115a4565b6020830194909452506040015292915050565b602081525f610c1b60208301846117bd565b838152604060208201525f6118aa6040830184866115cc565b95945050505050565b5f60208083850312156118c4575f80fd5b825167ffffffffffffffff808211156118db575f80fd5b818501915085601f8301126118ee575f80fd5b815181811115611900576119006111c0565b8060051b61190f8582016111d4565b9182528381018501918581019089841115611928575f80fd5b86860192505b8383101561199a57825185811115611944575f80fd5b8601603f81018b13611954575f80fd5b87810151604061196661124983611205565b8281528d82848601011115611979575f80fd5b611988838c830184870161179b565b8552505050918601919086019061192e565b9998505050505050505050565b5f82516119b881846020870161179b565b6305ccae8d60e31b920191825250600401919050565b6001600160a01b0385811682528481166020830152831660408201526080606082018190525f90611a01908301846117bd565b9695505050505050565b634e487b7160e01b5f52603260045260245ffd5b5f60018201611a3057611a306116c1565b506001019056fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x5155f5627bdf9795b3dbb8887001ada1eeba93f2":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063de8f50a11461002d575b5f80fd5b61004761003b3660046100a0565b60019695505050505050565b604051901515815260200160405180910390f35b5f8083601f84011261006b575f80fd5b50813567ffffffffffffffff811115610082575f80fd5b602083019150836020828501011115610099575f80fd5b9250929050565b5f805f805f80606087890312156100b5575f80fd5b863567ffffffffffffffff808211156100cc575f80fd5b6100d88a838b0161005b565b909850965060208901359150808211156100f0575f80fd5b6100fc8a838b0161005b565b90965094506040890135915080821115610114575f80fd5b5061012189828a0161005b565b979a969950949750929593949250505056fea164736f6c6343000818000a","storage":{}},"0x54563a9e1cd2dcbd0bca90d3cfa4a647e02c404a":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106101db575f3560e01c80638da5cb5b116100fd578063c4d66de811610092578063daea85c511610062578063daea85c51461055e578063e7acab241461057d578063f2fde38b1461059c578063ffa1ad74146105bb575f80fd5b8063c4d66de8146104e1578063d539139314610500578063d547741f14610520578063d9caed121461053f575f80fd5b8063a217fddf116100cd578063a217fddf14610452578063a3f4df7e14610465578063a4247400146104a3578063aa271e1a146104c2575f80fd5b80638da5cb5b146103d957806391d1485414610400578063983b2d561461041f578063986502751461043e575f80fd5b80635c975abb11610173578063715018a611610143578063715018a61461037f57806371e2a6571461039357806381c81d35146103b25780638456cb59146103c5575f80fd5b80635c975abb146103165780635fc1964f1461032e578063634486da1461034d5780636ccbae5f14610360575f80fd5b80633092afd5116101ae5780633092afd51461029c57806336568abe146102bb5780633f4ba83a146102da578063572b6c05146102ee575f80fd5b806301ffc9a7146101df5780631bf7e13e14610213578063248a9ca31461023f5780632f2ff15d1461027b575b5f80fd5b3480156101ea575f80fd5b506101fe6101f9366004611ee0565b6105eb565b60405190151581526020015b60405180910390f35b34801561021e575f80fd5b5061023261022d366004611f07565b610621565b60405161020a9190611fe9565b34801561024a575f80fd5b5061026d610259366004611ffb565b5f90815260fb602052604090206001015490565b60405190815260200161020a565b348015610286575f80fd5b5061029a610295366004612036565b6106ea565b005b3480156102a7575f80fd5b5061029a6102b6366004612064565b610713565b3480156102c6575f80fd5b5061029a6102d5366004612036565b610727565b3480156102e5575f80fd5b5061029a6107ba565b3480156102f9575f80fd5b506101fe610308366004612064565b6001600160a01b0316301490565b348015610321575f80fd5b5061012d5460ff166101fe565b348015610339575f80fd5b5061029a6103483660046120eb565b6107d4565b61029a61035b366004612064565b610811565b34801561036b575f80fd5b5061026d61037a366004611ffb565b6108d1565b34801561038a575f80fd5b5061029a61092a565b34801561039e575f80fd5b5061029a6103ad3660046120eb565b61093b565b61029a6103c0366004612064565b610978565b3480156103d0575f80fd5b5061029a6109f5565b3480156103e4575f80fd5b506097546040516001600160a01b03909116815260200161020a565b34801561040b575f80fd5b506101fe61041a366004612036565b610a0d565b34801561042a575f80fd5b5061029a610439366004612064565b610a37565b348015610449575f80fd5b5061029a610a48565b34801561045d575f80fd5b5061026d5f81565b348015610470575f80fd5b506102326040518060400160405280601381526020017229b2b0b837b93a10283937bc3c90213abcb2b960691b81525081565b3480156104ae575f80fd5b506101fe6104bd366004611f07565b610a61565b3480156104cd575f80fd5b506101fe6104dc366004612064565b610ab2565b3480156104ec575f80fd5b5061029a6104fb366004612064565b610aca565b34801561050b575f80fd5b5061026d5f80516020612ea783398151915281565b34801561052b575f80fd5b5061029a61053a366004612036565b610c21565b34801561054a575f80fd5b5061029a61055936600461218b565b610c45565b348015610569575f80fd5b5061029a610578366004612064565b610cf7565b348015610588575f80fd5b506101fe6105973660046121c9565b610dac565b3480156105a7575f80fd5b5061029a6105b6366004612064565b6111db565b3480156105c6575f80fd5b5061023260405180604001604052806005815260200164302e302e3160d81b81525081565b5f6001600160e01b03198216637965db0b60e01b148061061b57506301ffc9a760e01b6001600160e01b03198316145b92915050565b60605f5a9050610632858585610a61565b61064f57604051638baa579f60e01b815260040160405180910390fd5b6106df61065f6020870187612064565b3060408801358461067360608b018b61227b565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f920191909152506111f692505050565b9150505b9392505050565b5f82815260fb6020526040902060010154610704816112d4565b61070e83836112e5565b505050565b61071b61136b565b610724816113e4565b50565b61072f6113fb565b6001600160a01b0316816001600160a01b0316146107ac5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6107b68282611409565b5050565b6107c261136b565b6107ca61148d565b6107d26114d7565b565b6107dc61136b565b5f5b81518110156107b6576108098282815181106107fc576107fc6122bd565b60200260200101516113e4565b6001016107de565b61081c6104dc6113fb565b6108385760405162461bcd60e51b81526004016107a3906122d1565b6001600160a01b03811661088e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016107a3565b61089781611530565b61089f610a48565b6040516001600160a01b038216903480156108fc02915f818181858888f193505050501580156107b6573d5f803e3d5ffd5b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f90610923906060016040516020818303038152906040528051906020012090565b5492915050565b61093261136b565b6107d25f611547565b61094361136b565b5f5b81518110156107b657610970828281518110610963576109636122bd565b6020026020010151611530565b600101610945565b6109836104dc6113fb565b61099f5760405162461bcd60e51b81526004016107a3906122d1565b6001600160a01b0381166108975760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016107a3565b6109fd61136b565b610a05611598565b6107d26115df565b5f91825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610a3f61136b565b61072481611530565b6107d25f80516020612ea78339815191526102d56113fb565b5f610aaa610a6e85612306565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061161e92505050565b949350505050565b5f61061b5f80516020612ea783398151915283610a0d565b5f54610100900460ff1615808015610ae857505f54600160ff909116105b80610b015750303b158015610b0157505f5460ff166001145b610b645760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107a3565b5f805460ff191660011790558015610b85575f805461ff0019166101001790555b61015f80546001600160a01b0319166001600160a01b038416179055610ba9611759565b610bb1611786565b610bb9611786565b610bc1611786565b610bc96117ac565b610bd16117e2565b610bd9611819565b80156107b6575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b5f82815260fb6020526040902060010154610c3b816112d4565b61070e8383611409565b610c4d61136b565b600260335403610c6f5760405162461bcd60e51b81526004016107a3906123c2565b6002603355610c7c611598565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af1158015610cc8573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cec91906123f9565b505060016033555050565b610cff61136b565b600260335403610d215760405162461bcd60e51b81526004016107a3906123c2565b6002603355610d2e611598565b61015f5460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529082169063095ea7b3906044016020604051808303815f875af1158015610d7f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610da391906123f9565b50506001603355565b5f610db86104dc6113fb565b610dd45760405162461bcd60e51b81526004016107a3906122d1565b600260335403610df65760405162461bcd60e51b81526004016107a3906123c2565b6002603355610e03611598565b6001600160a01b038216610e2a576040516311d000e160e31b815260040160405180910390fd5b30610e358780612418565b610e46906040810190602001612064565b6001600160a01b031614610e6d57604051639d3c586b60e01b815260040160405180910390fd5b610e75611e67565b610e7f8780612418565b610e8d906020810190612064565b6001600160a01b03168152610ea28780612418565b610eb3906040810190602001612064565b6001600160a01b03166020820152610ecb8780612418565b610ed9906040810190612437565b808060200260200160405190810160405280939291908181526020015f905b82821015610f2457610f1560a08302860136819003810190612489565b81526020019060010190610ef8565b50505050506040820152610f388780612418565b610f46906060810190612506565b808060200260200160405190810160405280939291908181526020015f905b82821015610f9157610f8260c0830286013681900381019061254a565b81526020019060010190610f65565b50505050506060820152610fa58780612418565b610fb69060a08101906080016125e5565b81608001906004811115610fcc57610fcc6125fe565b90816004811115610fdf57610fdf6125fe565b905250610fec8780612418565b60a090810135908201526110008780612418565b60c090810135908201526110148780612418565b60e090810135908201526110288780612418565b610100908101359082015261103d8780612418565b610120908101359082015261015f54815160405163f07ec37360e01b81526001600160a01b03918216600482015291169063f07ec37390602401602060405180830381865afa158015611092573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110b69190612612565b61014082015261015f546040516379df72bd60e01b8152611133916001600160a01b0316906379df72bd906110ef908590600401612737565b602060405180830381865afa15801561110a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061112e9190612612565b61184c565b61015f546040516339eb2ac960e21b81526001600160a01b039091169063e7acab249061116c908a908a908a908a908a90600401612b24565b6020604051808303815f875af1158015611188573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111ac91906123f9565b9150816111cc57604051636725093760e01b815260040160405180910390fd5b50600160335595945050505050565b6111e361136b565b6111ec81611865565b6107245f826118db565b6060611201856118e5565b5f80876001600160a01b03168661121a8b8a898961194a565b6040516112279190612cfa565b5f604051808303815f8787f1925050503d805f8114611261576040519150601f19603f3d011682016040523d82523d5f602084013e611266565b606091505b509092509050611277603f87612d1f565b5a1161128557611285612d3e565b6112c582826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061197a565b925050505b9695505050505050565b610724816112e06113fb565b6119b3565b6112ef8282610a0d565b6107b6575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191660011790556113276113fb565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6113736113fb565b6001600160a01b031661138e6097546001600160a01b031690565b6001600160a01b0316146107d25760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107a3565b6107245f80516020612ea783398151915282610c21565b5f611404611a17565b905090565b6114138282610a0d565b156107b6575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191690556114496113fb565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b61012d5460ff166107d25760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b60448201526064016107a3565b6114df61148d565b61012d805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6115136113fb565b6040516001600160a01b03909116815260200160405180910390a1565b6107245f80516020612ea7833981519152826118db565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b61012d5460ff16156107d25760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b60448201526064016107a3565b6115e7611598565b61012d805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586115136113fb565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015611662573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116869190612612565b90505f6117338660600151805190602001208688602001516040516020016116d39392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156112ca575085516112ca906001600160a01b03168286611a34565b5f54610100900460ff1661177f5760405162461bcd60e51b81526004016107a390612d52565b6001603355565b5f54610100900460ff166107d25760405162461bcd60e51b81526004016107a390612d52565b5f54610100900460ff166117d25760405162461bcd60e51b81526004016107a390612d52565b6107d26117dd6113fb565b611547565b5f54610100900460ff166118085760405162461bcd60e51b81526004016107a390612d52565b6107d25f6118146113fb565b6118db565b5f54610100900460ff1661183f5760405162461bcd60e51b81526004016107a390612d52565b61012d805460ff19169055565b30330361185c5761072481611b6f565b610724816118e5565b61186d61136b565b6001600160a01b0381166118d25760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107a3565b61072481611547565b6107b682826112e5565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f906060016040516020818303038152906040528051906020012090506119398190565b54611945906001612d9d565b905550565b606082858560405160200161196193929190612db0565b6040516020818303038152906040529050949350505050565b606083156119895750816106e3565b8251156119995782518084602001fd5b8160405162461bcd60e51b81526004016107a39190611fe9565b6119bd8282610a0d565b6107b6576119d5816001600160a01b03166014611b99565b6119e0836020611b99565b6040516020016119f1929190612dee565b60408051601f198184030181529082905262461bcd60e51b82526107a391600401611fe9565b5f303303611a2c575060331936013560601c90565b503390565b90565b5f805f611a418585611d2e565b90925090505f816004811115611a5957611a596125fe565b148015611a775750856001600160a01b0316826001600160a01b0316145b15611a87576001925050506106e3565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401611aae929190612e62565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051611aec9190612cfa565b5f60405180830381855afa9150503d805f8114611b24576040519150601f19603f3d011682016040523d82523d5f602084013e611b29565b606091505b5091509150818015611b3c575080516020145b8015611b6357508051630b135d3f60e11b90611b619083016020908101908401612612565b145b98975050505050505050565b611b77611d70565b811461072457604051635637b6af60e11b8152600481018290526024016107a3565b60605f611ba7836002612e7a565b611bb2906002612d9d565b6001600160401b03811115611bc957611bc961207f565b6040519080825280601f01601f191660200182016040528015611bf3576020820181803683370190505b509050600360fc1b815f81518110611c0d57611c0d6122bd565b60200101906001600160f81b03191690815f1a905350600f60fb1b81600181518110611c3b57611c3b6122bd565b60200101906001600160f81b03191690815f1a9053505f611c5d846002612e7a565b611c68906001612d9d565b90505b6001811115611cdf576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611c9c57611c9c6122bd565b1a60f81b828281518110611cb257611cb26122bd565b60200101906001600160f81b03191690815f1a90535060049490941c93611cd881612e91565b9050611c6b565b5083156106e35760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016107a3565b5f808251604103611d62576020830151604084015160608501515f1a611d5687828585611d82565b94509450505050611d69565b505f905060025b9250929050565b5f303303611a315750601f1936013590565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115611db757505f90506003611e5e565b8460ff16601b14158015611dcf57508460ff16601c14155b15611ddf57505f90506004611e5e565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015611e30573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b038116611e58575f60019250925050611e5e565b91505f90505b94509492505050565b6040518061016001604052805f6001600160a01b031681526020015f6001600160a01b0316815260200160608152602001606081526020015f6004811115611eb157611eb16125fe565b81525f6020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b5f60208284031215611ef0575f80fd5b81356001600160e01b0319811681146106e3575f80fd5b5f805f60408486031215611f19575f80fd5b83356001600160401b0380821115611f2f575f80fd5b9085019060808288031215611f42575f80fd5b90935060208501359080821115611f57575f80fd5b818601915086601f830112611f6a575f80fd5b813581811115611f78575f80fd5b876020828501011115611f89575f80fd5b6020830194508093505050509250925092565b5f5b83811015611fb6578181015183820152602001611f9e565b50505f910152565b5f8151808452611fd5816020860160208601611f9c565b601f01601f19169290920160200192915050565b602081525f6106e36020830184611fbe565b5f6020828403121561200b575f80fd5b5035919050565b6001600160a01b0381168114610724575f80fd5b803561203181612012565b919050565b5f8060408385031215612047575f80fd5b82359150602083013561205981612012565b809150509250929050565b5f60208284031215612074575f80fd5b81356106e381612012565b634e487b7160e01b5f52604160045260245ffd5b604051608081016001600160401b03811182821017156120b5576120b561207f565b60405290565b604051601f8201601f191681016001600160401b03811182821017156120e3576120e361207f565b604052919050565b5f60208083850312156120fc575f80fd5b82356001600160401b0380821115612112575f80fd5b818501915085601f830112612125575f80fd5b8135818111156121375761213761207f565b8060051b91506121488483016120bb565b8181529183018401918481019088841115612161575f80fd5b938501935b83851015611b63578435925061217b83612012565b8282529385019390850190612166565b5f805f6060848603121561219d575f80fd5b83356121a881612012565b925060208401356121b881612012565b929592945050506040919091013590565b5f805f805f608086880312156121dd575f80fd5b85356001600160401b03808211156121f3575f80fd5b9087019060a0828a031215612206575f80fd5b9095506020870135908082111561221b575f80fd5b818801915088601f83011261222e575f80fd5b81358181111561223c575f80fd5b8960208260051b8501011115612250575f80fd5b6020830196508095505050506040860135915061226f60608701612026565b90509295509295909350565b5f808335601e19843603018112612290575f80fd5b8301803591506001600160401b038211156122a9575f80fd5b602001915036819003821315611d69575f80fd5b634e487b7160e01b5f52603260045260245ffd5b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b5f60808236031215612316575f80fd5b61231e612093565b823561232981612012565b8152602083810135818301526040808501359083015260608401356001600160401b0380821115612358575f80fd5b9085019036601f83011261236a575f80fd5b81358181111561237c5761237c61207f565b61238e601f8201601f191685016120bb565b915080825236848285010111156123a3575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b5f60208284031215612409575f80fd5b815180151581146106e3575f80fd5b5f823561015e1983360301811261242d575f80fd5b9190910192915050565b5f808335601e1984360301811261244c575f80fd5b8301803591506001600160401b03821115612465575f80fd5b602001915060a081023603821315611d69575f80fd5b803560068110612031575f80fd5b5f60a08284031215612499575f80fd5b60405160a081018181106001600160401b03821117156124bb576124bb61207f565b6040526124c78361247b565b815260208301356124d781612012565b806020830152506040830135604082015260608301356060820152608083013560808201528091505092915050565b5f808335601e1984360301811261251b575f80fd5b8301803591506001600160401b03821115612534575f80fd5b602001915060c081023603821315611d69575f80fd5b5f60c0828403121561255a575f80fd5b60405160c081018181106001600160401b038211171561257c5761257c61207f565b6040526125888361247b565b8152602083013561259881612012565b8060208301525060408301356040820152606083013560608201526080830135608082015260a08301356125cb81612012565b60a08201529392505050565b803560058110612031575f80fd5b5f602082840312156125f5575f80fd5b6106e3826125d7565b634e487b7160e01b5f52602160045260245ffd5b5f60208284031215612622575f80fd5b5051919050565b60068110612639576126396125fe565b9052565b5f815180845260208085019450602084015f5b838110156126a6578151612665888251612629565b838101516001600160a01b03168885015260408082015190890152606080820151908901526080908101519088015260a09096019590820190600101612650565b509495945050505050565b5f815180845260208085019450602084015f5b838110156126a65781516126d9888251612629565b808401516001600160a01b0390811689860152604080830151908a0152606080830151908a0152608080830151908a015260a091820151169088015260c090960195908201906001016126c4565b60058110612639576126396125fe565b602081526127516020820183516001600160a01b03169052565b5f602083015161276c60408401826001600160a01b03169052565b50604083015161016080606085015261278961018085018361263d565b91506060850151601f198584030160808601526127a683826126b1565b92505060808501516127bb60a0860182612727565b5060a085015160c085015260c085015160e085015260e0850151610100818187015280870151915050610120818187015280870151915050610140818187015280870151838701525050508091505092915050565b5f808335601e19843603018112612825575f80fd5b83016020810192503590506001600160401b03811115612843575f80fd5b60a081023603821315611d69575f80fd5b8183525f60208085019450825f5b858110156126a65761287c876128778461247b565b612629565b8282013561288981612012565b6001600160a01b03168388015260408281013590880152606080830135908801526080808301359088015260a09687019690910190600101612862565b5f808335601e198436030181126128db575f80fd5b83016020810192503590506001600160401b038111156128f9575f80fd5b60c081023603821315611d69575f80fd5b8183525f60208085019450825f5b858110156126a65761292d876128778461247b565b8282013561293a81612012565b6001600160a01b039081168885015260408381013590890152606080840135908901526080808401359089015260a0908382013561297781612012565b169088015260c0968701969190910190600101612918565b80356001600160781b0381168114612031575f80fd5b5f808335601e198436030181126129ba575f80fd5b83016020810192503590506001600160401b038111156129d8575f80fd5b803603821315611d69575f80fd5b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b8183525f6001600160fb1b03831115612a25575f80fd5b8260051b80836020870137939093016020019392505050565b8183526020808401935f91600585811b8301820185855b88811015612b1657858303601f19018a52813536899003609e19018112612a7a575f80fd5b88018035845260a08682013560028110612a92575f80fd5b85880152604082810135908601526060808301359086015260808083013536849003601e19018112612ac2575f80fd5b9092018781019290356001600160401b03811115612ade575f80fd5b80881b3603841315612aee575f80fd5b8282880152612b008388018286612a0e565b9d89019d96505050928601925050600101612a55565b509098975050505050505050565b608081525f610120873561015e19893603018112612b40575f80fd5b60a060808501528801612b65828501612b5883612026565b6001600160a01b03169052565b612b7160208201612026565b610140612b88818701836001600160a01b03169052565b612b956040840184612810565b610160888101529250612bad61028088018483612854565b925050612bbd60608401846128c6565b87840361011f1901610180890152612bd684828461290a565b93505050612be6608084016125d7565b612bf46101a0880182612727565b5060a08301356101c087015260c08301356101e087015260e0830135610200870152610100808401356102208801528484013561024088015281840135610260880152612c4360208d0161298f565b6001600160781b03811660a08901529450612c6060408d0161298f565b6001600160781b03811660c08901529450612c7e60608d018d6129a5565b95509350607f199150818784030160e0880152612c9c8386866129e6565b9450612cab60808d018d6129a5565b945092508187860301818801525050612cc58383836129e6565b925050508281036020840152612cdc818789612a3e565b9150508360408301526112ca60608301846001600160a01b03169052565b5f825161242d818460208701611f9c565b634e487b7160e01b5f52601160045260245ffd5b5f82612d3957634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b8082018082111561061b5761061b612d0b565b5f8451612dc1818460208901611f9c565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081525f8351612e25816017850160208801611f9c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351612e56816028840160208801611f9c565b01602801949350505050565b828152604060208201525f610aaa6040830184611fbe565b808202811582820484141761061b5761061b612d0b565b5f81612e9f57612e9f612d0b565b505f19019056fe9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000818000a","storage":{"0x0":"0xff"}},"0x58a175bebc8ec21a94ea63aa5a28743945940ee6":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106101165760003560e01c806391d14854116100a2578063c4d66de811610071578063c4d66de8146103bb578063ca15c873146103e1578063d547741f146103fe578063e375b64e1461042a578063ec87621c146104b957610116565b806391d14854146103635780639559c0bd146103a3578063a217fddf146103ab578063b017a30f146103b357610116565b80634794b430116100e95780634794b4301461024f57806349f5124b14610257578063609c92b81461025f5780638274664f146102675780639010d07c1461032457610116565b8063150b7a021461011b578063248a9ca3146101c65780632f2ff15d146101f557806336568abe14610223575b600080fd5b6101a96004803603608081101561013157600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561016b57600080fd5b82018360208201111561017d57600080fd5b803590602001918460018302840111600160201b8311171561019e57600080fd5b5090925090506104c1565b604080516001600160e01b03199092168252519081900360200190f35b6101e3600480360360208110156101dc57600080fd5b50356104d2565b60408051918252519081900360200190f35b6102216004803603604081101561020b57600080fd5b50803590602001356001600160a01b03166104ea565b005b6102216004803603604081101561023957600080fd5b50803590602001356001600160a01b0316610556565b6101e36105b7565b6101e36105db565b6101e36105ff565b6102216004803603606081101561027d57600080fd5b6001600160a01b038235811692602081013590911691810190606081016040820135600160201b8111156102b057600080fd5b8201836020820111156102c257600080fd5b803590602001918460018302840111600160201b831117156102e357600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610623945050505050565b6103476004803603604081101561033a57600080fd5b5080359060200135610fa2565b604080516001600160a01b039092168252519081900360200190f35b61038f6004803603604081101561037957600080fd5b50803590602001356001600160a01b0316610fc9565b604080519115158252519081900360200190f35b6101e3610fe7565b6101e3610fec565b6101e3610ff1565b610221600480360360208110156103d157600080fd5b50356001600160a01b0316611015565b6101e3600480360360208110156103f757600080fd5b50356110cf565b6102216004803603604081101561041457600080fd5b50803590602001356001600160a01b03166110e6565b6102216004803603608081101561044057600080fd5b6001600160a01b0382358116926020810135821692604082013590921691810190608081016060820135600160201b81111561047b57600080fd5b82018360208201111561048d57600080fd5b803590602001918460018302840111600160201b831117156104ae57600080fd5b50909250905061113f565b6101e36114e6565b630a85bd0160e11b95945050505050565b6000818152602081905260409020600201545b919050565b60008281526020819052604090206002015461050d906105086114f8565b610fc9565b6105485760405162461bcd60e51b815260040180806020018281038252602f815260200180611f42602f913960400191505060405180910390fd5b61055282826114fd565b5050565b61055e6114f8565b6001600160a01b0316816001600160a01b0316146105ad5760405162461bcd60e51b815260040180806020018281038252602f8152602001806120bb602f913960400191505060405180910390fd5b610552828261156c565b7ff871896b17e9cb7a64941c62c188a4f5c621b86800e3d15452ece01ce56073df81565b7ff94915c6d1fd521cee85359239227480c7e8776d7caf1fc3bacad5c269b66a1481565b7fd4392723c111fcb98b073fe55873efb447bcd23cd3e49ec9ea2581930cd01ddc81565b60008051602061204b83398151915261063e816105086114f8565b6001906106de5760405162461bcd60e51b81526020600482019081528254600260001961010060018416150201909116046024830181905290918291604490910190849080156106cf5780601f106106a4576101008083540402835291602001916106cf565b820191906000526020600020905b8154815290600101906020018083116106b257829003601f168201915b50509250505060405180910390fd5b5060606106f26106ed846115db565b611656565b905060606107138260018151811061070657fe5b6020026020010151611656565b90507fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60001b6107568260008151811061074957fe5b60200260200101516117d8565b141561095457600061076e8260018151811061074957fe5b905060006001600160a01b031661078b8360028151811061074957fe5b6001600160a01b0316146107d05760405162461bcd60e51b815260040180806020018281038252602981526020018061206b6029913960400191505060405180910390fd5b600086905060006107e78460038151811061074957fe5b9050816001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b15801561082d57600080fd5b505afa158015610841573d6000803e3d6000fd5b505050506040513d602081101561085757600080fd5b5051156108d35760408051632142170760e11b81523060048201526001600160a01b038581166024830152604482018490529151918416916342842e0e9160648082019260009290919082900301818387803b1580156108b657600080fd5b505af11580156108ca573d6000803e3d6000fd5b5050505061094c565b816001600160a01b03166340c10f1984836040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b15801561093357600080fd5b505af1158015610947573d6000803e3d6000fd5b505050505b505050610f9a565b7ff871896b17e9cb7a64941c62c188a4f5c621b86800e3d15452ece01ce56073df60001b6109888260008151811061074957fe5b1415610c085760006109a08260018151811061074957fe5b905060606109c1846002815181106109b457fe5b6020026020010151611920565b905060608180602001905160208110156109da57600080fd5b8101908080516040519392919084600160201b8211156109f957600080fd5b908301906020820185811115610a0e57600080fd5b82518660208202830111600160201b82111715610a2a57600080fd5b82525081516020918201928201910280838360005b83811015610a57578181015183820152602001610a3f565b5050505091909101604052505082519293508a9150600090505b82811015610bfd576000848281518110610a8757fe5b60200260200101519050826001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610ad557600080fd5b505afa158015610ae9573d6000803e3d6000fd5b505050506040513d6020811015610aff57600080fd5b505115610b7b5760408051632142170760e11b81523060048201526001600160a01b038981166024830152604482018490529151918516916342842e0e9160648082019260009290919082900301818387803b158015610b5e57600080fd5b505af1158015610b72573d6000803e3d6000fd5b50505050610bf4565b826001600160a01b03166340c10f1988836040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b158015610bdb57600080fd5b505af1158015610bef573d6000803e3d6000fd5b505050505b50600101610a71565b505050505050610f9a565b7ff94915c6d1fd521cee85359239227480c7e8776d7caf1fc3bacad5c269b66a1460001b610c3c8260008151811061074957fe5b1415610f63576000610c548260018151811061074957fe5b905060006001600160a01b0316610c718360028151811061074957fe5b6001600160a01b031614610cb65760405162461bcd60e51b815260040180806020018281038252602981526020018061206b6029913960400191505060405180910390fd5b60008690506000610ccd8460038151811061074957fe5b9050816001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610d1357600080fd5b505afa158015610d27573d6000803e3d6000fd5b505050506040513d6020811015610d3d57600080fd5b505115610d9c5760408051632142170760e11b81523060048201526001600160a01b038581166024830152604482018490529151918416916342842e0e9160648082019260009290919082900301818387803b1580156108b657600080fd5b6060610dae866002815181106109b457fe5b90506060818060200190516020811015610dc757600080fd5b8101908080516040519392919084600160201b821115610de657600080fd5b908301906020820185811115610dfb57600080fd5b8251600160201b811182820188101715610e1457600080fd5b82525081516020918201929091019080838360005b83811015610e41578181015183820152602001610e29565b50505050905090810190601f168015610e6e5780820380516001836020036101000a031916815260200191505b506040525050509050836001600160a01b03166394d008ef8685846040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b0316815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610ef3578181015183820152602001610edb565b50505050905090810190601f168015610f205780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015610f4157600080fd5b505af1158015610f55573d6000803e3d6000fd5b505050505050505050610f9a565b60405162461bcd60e51b815260040180806020018281038252602a815260200180611f71602a913960400191505060405180910390fd5b505050505050565b6000828152602081905260408120610fc0908363ffffffff6119ea16565b90505b92915050565b6000828152602081905260408120610fc0908363ffffffff6119f616565b601481565b600081565b7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef81565b60025460ff161561105e576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b61109c6040518060400160405280601781526020017f4d696e7461626c65455243373231507265646963617465000000000000000000815250611a0b565b6110a7600082610548565b6110bf60008051602061204b83398151915282610548565b506002805460ff19166001179055565b6000818152602081905260408120610fc390611aa9565b600082815260208190526040902060020154611104906105086114f8565b6105ad5760405162461bcd60e51b8152600401808060200182810382526030815260200180611fc36030913960400191505060405180910390fd5b60008051602061204b83398151915261115a816105086114f8565b6001906111c05760405162461bcd60e51b81526020600482019081528254600260001961010060018416150201909116046024830181905290918291604490910190849080156106cf5780601f106106a4576101008083540402835291602001916106cf565b50602082141561129f576000838360208110156111dc57600080fd5b5060408051913580835290519092506001600160a01b038088169289821692918b16917fe13244aa06bdc79480ed5fdc6ebe2bb37202fcdf33ecf45dc449f4201f3dc0879181900360200190a460408051632142170760e11b81526001600160a01b038981166004830152306024830152604482018490529151918716916342842e0e9160648082019260009290919082900301818387803b15801561128157600080fd5b505af1158015611295573d6000803e3d6000fd5b5050505050610f9a565b6060838360208110156112b157600080fd5b810190602081018135600160201b8111156112cb57600080fd5b8201836020820111156112dd57600080fd5b803590602001918460208302840111600160201b831117156112fe57600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f8201169050808301925050505050505091929192905050509050846001600160a01b0316866001600160a01b0316886001600160a01b03167fdb55e3a0ae817693fd7b07170d81eab0eb2c239f36fcecbc98b6b58ac5667e7a846040518080602001828103825283818151815260200191508051906020019060200280838360005b838110156113ca5781810151838201526020016113b2565b505050509050019250505060405180910390a48051601481111561141f5760405162461bcd60e51b815260040180806020018281038252602c81526020018061201f602c913960400191505060405180910390fd5b60005b818110156114db57866001600160a01b03166342842e0e8a3086858151811061144757fe5b60200260200101516040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050600060405180830381600087803b1580156114b757600080fd5b505af11580156114cb573d6000803e3d6000fd5b5050600190920191506114229050565b505050505050505050565b60008051602061204b83398151915281565b335b90565b600082815260208190526040902061151b908263ffffffff611ab416565b15610552576115286114f8565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b600082815260208190526040902061158a908263ffffffff611ac916565b15610552576115976114f8565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b6115e3611e6d565b6000825111611639576040805162461bcd60e51b815260206004820152601f60248201527f524c505265616465723a20494e56414c49445f42595445535f4c454e47544800604482015290519081900360640190fd5b506040805180820190915281518152602082810190820152919050565b606061166182611ade565b6116b2576040805162461bcd60e51b815260206004820152601860248201527f524c505265616465723a204954454d5f4e4f545f4c4953540000000000000000604482015290519081900360640190fd5b60006116bd83611b0a565b905060608167ffffffffffffffff811180156116d857600080fd5b5060405190808252806020026020018201604052801561171257816020015b6116ff611e6d565b8152602001906001900390816116f75790505b50905060006117248560200151611b96565b855190915081146117665760405162461bcd60e51b81526004018080602001828103825260278152602001806120946027913960400191505060405180910390fd5b60006117758660200151611c2f565b60208701510190506000805b858110156117cc5761179283611b96565b91506040518060400160405280838152602001848152508582815181106117b557fe5b602090810291909101015291810191600101611781565b50929695505050505050565b60006117e382611ade565b15611835576040805162461bcd60e51b815260206004820181905260248201527f524c505265616465723a204445434f44494e475f4c4953545f41535f55494e54604482015290519081900360640190fd5b81516021101561188c576040805162461bcd60e51b815260206004820152601e60248201527f524c505265616465723a20494e56414c49445f55494e545f4c454e4754480000604482015290519081900360640190fd5b600061189b8360200151611b96565b835190915081146118dd5760405162461bcd60e51b81526004018080602001828103825260278152602001806120ea6027913960400191505060405180910390fd5b60006118ec8460200151611c2f565b8451602080870151830180519394509184900392919083101561191657826020036101000a820491505b5095945050505050565b606060006119318360200151611b96565b835190915081146119735760405162461bcd60e51b8152600401808060200182810382526028815260200180611f9b6028913960400191505060405180910390fd5b60006119828460200151611c2f565b845190915081900360608167ffffffffffffffff811180156119a357600080fd5b506040519080825280601f01601f1916602001820160405280156119ce576020820181803683370190505b5090506000816020019050611916848860200151018285611c92565b6000610fc08383611cdd565b6000610fc0836001600160a01b038416611d41565b806040516020018082805190602001908083835b60208310611a3e5780518252601f199092019160209182019101611a1f565b51815160209384036101000a60001901801990921691161790527f3a20494e53554646494349454e545f5045524d495353494f4e530000000000009190930190815260408051808303600519018152601a909201905280516105529550600194509201919050611e87565b6000610fc382611d59565b6000610fc0836001600160a01b038416611d5d565b6000610fc0836001600160a01b038416611da7565b6020810151805160009190821a9060c0821015611b00576000925050506104e5565b5060019392505050565b600080600090506000611b208460200151611c2f565b602085015185519181019250015b80821015611b8d57611b3f82611b96565b8201915080821115611b825760405162461bcd60e51b815260040180806020018281038252602c815260200180611ff3602c913960400191505060405180910390fd5b600190920191611b2e565b50909392505050565b80516000908190811a6080811015611bb15760019150611c28565b60b8811015611bc657607e1981019150611c28565b60c0811015611bf35760b78103600185019450806020036101000a85510460018201810193505050611c28565b60f8811015611c085760be1981019150611c28565b60f78103600185019450806020036101000a855104600182018101935050505b5092915050565b8051600090811a6080811015611c495760009150506104e5565b60b8811080611c64575060c08110801590611c64575060f881105b15611c735760019150506104e5565b60c0811015611c875760b5190190506104e5565b60f5190190506104e5565b80611c9c57611cd8565b5b60208110611cbc578251825260209283019290910190601f1901611c9d565b8251825160208390036101000a60001901801990921691161782525b505050565b81546000908210611d1f5760405162461bcd60e51b8152600401808060200182810382526022815260200180611f206022913960400191505060405180910390fd5b826000018281548110611d2e57fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000611d698383611d41565b611d9f57508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610fc3565b506000610fc3565b60008181526001830160205260408120548015611e635783546000198083019190810190600090879083908110611dda57fe5b9060005260206000200154905080876000018481548110611df757fe5b600091825260208083209091019290925582815260018981019092526040902090840190558654879080611e2757fe5b60019003818190600052602060002001600090559055866001016000878152602001908152602001600020600090556001945050505050610fc3565b6000915050610fc3565b604051806040016040528060008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611ec857805160ff1916838001178555611ef5565b82800160010185558215611ef5579182015b82811115611ef5578251825591602001919060010190611eda565b50611f01929150611f05565b5090565b6114fa91905b80821115611f015760008155600101611f0b56fe456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e744d696e7461626c654552433732315072656469636174653a20494e56414c49445f5349474e4154555245524c505265616465723a2042595445535f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b65524c505265616465723a204e554d5f4954454d535f4445434f4445445f4c454e4754485f4d49534d415443484d696e7461626c654552433732315072656469636174653a20455843454544535f42415443485f4c494d4954241ecf16d79d0f8dbfb92cbc07fe17840425976cf0667f022fe9877caa831b084d696e7461626c654552433732315072656469636174653a20494e56414c49445f5245434549564552524c505265616465723a204c4953545f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66524c505265616465723a2055494e545f4445434f4445445f4c454e4754485f4d49534d41544348a164736f6c6343000606000a","storage":{"0x1":"0x63","0x2":"0x1","0x73d5d1a274bdea1400ad3ea4d982f594abdfd528cde1486b6c617faa3ec116":"0x1","0x89011777cfe6194dd982545e7eb24725dfe9a1aacae299c76fc48ef5017ae650":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x89011777cfe6194dd982545e7eb24725dfe9a1aacae299c76fc48ef5017ae651":"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0x1","0xb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6":"0x4d696e7461626c654552433732315072656469636174653a20494e5355464649","0xb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf7":"0x4349454e545f5045524d495353494f4e53000000000000000000000000000000","0xba75a66b8132bebab85d36fd3638083da57ae3d78fbcd8cc41f73514287dadaf":"0x1","0xe6c7d8231a06d7cb67831aeabcbd43ba24e5e4c6569cf23405f1e558de8580e0":"0x2","0xe84508f2c7fa9c351146748b3025cb78b45df37d868e48c6a75102fecdeee645":"0x2","0xe84508f2c7fa9c351146748b3025cb78b45df37d868e48c6a75102fecdeee647":"0x0","0xf0df3dcda05b4fbd9c655cde3d5ceb211e019e72ec816e127a59e7195f2cd7f5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x5cc819c9915eadfcebd76952b8c1bc36cadd7376":{"nonce":2,"balance":"0x0","code":"0x608060405260043610610103575f3560e01c8063a900866b11610092578063f07ec37311610062578063f07ec373146102f7578063f2d12b1214610316578063f47b774014610329578063fb0f3ee114610116578063fd9f1e101461034c575f80fd5b8063a900866b1461028a578063b3a34c4c146102be578063e7acab24146102d1578063ed98a574146102e4575f80fd5b80637423eb3c116100d85780637423eb3c146101f757806379df72bd1461020b57806387201b411461022a578063881477321461024b578063a81744041461026a575f80fd5b801561011657806306fdde031461013e57806346423aa71461015f5780635b34b966146101d5575f80fd5b366101125761011061036b565b005b5f80fd5b610129610124366004615115565b6103f9565b60405190151581526020015b60405180910390f35b348015610149575f80fd5b50610152610408565b604051610135919061518f565b34801561016a575f80fd5b506101b36101793660046151a1565b5f9081526001602052604090205460ff808216926101008304909116916001600160781b03620100008204811692600160881b9092041690565b6040805194151585529215156020850152918301526060820152608001610135565b3480156101e0575f80fd5b506101e9610417565b604051908152602001610135565b348015610202575f80fd5b50610110610420565b348015610216575f80fd5b506101e96102253660046151b8565b6104c1565b61023d61023836600461524c565b6104f8565b6040516101359291906153f0565b348015610256575f80fd5b5061012961026536600461543f565b610571565b61027d61027836600461547d565b61058f565b60405161013591906154e3565b348015610295575f80fd5b506101e96102a43660046154f5565b6001600160a01b03165f9081526002602052604090205490565b6101296102cc36600461550e565b61062a565b6101296102df366004615553565b6106a3565b61023d6102f23660046155d7565b6106e1565b348015610302575f80fd5b506101e96103113660046154f5565b610784565b61027d610324366004615677565b6107a1565b348015610334575f80fd5b5061033d6107ea565b60405161013593929190615719565b348015610357575f80fd5b5061012961036636600461543f565b610801565b7f000000000000000000000000000000000000000000000000000000000000000180156103b357600263929eee145c146103b05763a61be9f05f52346020526024601cfd5b50565b63929eee1454806103e057600263929eee145c146103dc5763a61be9f05f52346020526024601cfd5b5050565b600381146103dc5763a61be9f05f52346020526024601cfd5b5f61040261080c565b92915050565b60606104126109c0565b905090565b5f6104126109d8565b63929eee14546001147f000000000000000000000000000000000000000000000000000000000000000180610453575080155b1561047157604051630f45b98b60e41b815260040160405180910390fd5b61049a7f000000000000000000000000145908bbcfc7b258e4d4d9a586f6e3249ae80216610a45565b6104b7576040516370a4078f60e01b815260040160405180910390fd5b5f63929eee145550565b5f806104cd6004610aa3565b90506104f16104e282610ab35b63ffffffff16565b610140830135610b30565b3590565b9392505050565b60608061055d61051361050b6004610aa3565b610c746104da565b61052a61052260046020610cdc565b610cfa6104da565b61054161053960046040610cdc565b610d526104da565b61055061053960046060610cdc565b89338a15028a0189610daa565b915091509b509b9950505050505050505050565b5f6104f161058a6105826004610aa3565b610de46104da565b610e3c565b606061061f6105a96105a16004610aa3565b610f5d6104da565b604080515f8082526020820190925290610601565b6105ee6040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816105be5790505b5061061961061160046020610cdc565b610fb56104da565b3361100d565b90505b949350505050565b5f6104f161064361063b6004610aa3565b61104b6104da565b604080515f808252602082019092529061069b565b6106886040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816106585790505b5084336110c1565b5f6106d76106bc6106b46004610aa3565b6112406104da565b6106cb61052260046020610cdc565b853386150286016110c1565b9695505050505050565b6060806107736106f46105a16004610aa3565b604080515f808252602082019092529061074c565b6107396040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816107095790505b5061075c61053960046020610cdc565b61076b61053960046040610cdc565b883389610daa565b915091509850989650505050505050565b6001600160a01b0381165f90815260208190526040812054610402565b60606107dc6107b361050b6004610aa3565b6107c261052260046020610cdc565b6107d161061160046040610cdc565b33861502860161100d565b90505b979650505050505050565b60605f806107f661129c565b925092509250909192565b5f6104f183836112e8565b5f61012435600281901c90600316600182118334158214806108315761083134611423565b506003841160a0810260240135906502030203010160d01b861a905f630101020360d01b881a6108648882898888611434565b9096509150506101c4600583901b01355f87600581111561088757610887615329565b036108bc5760443560243517156108a557636ab37ce75f526004601cfd5b6108af8482611751565b6108b7611809565b61099d565b6040805160208082528183019092525f9160208201818036833701905050905060028a60058111156108f0576108f0615329565b036109135761090e60c4356084353360e435610104355b8787611889565b610988565b60038a600581111561092757610927615329565b036109455761090e60c4356084353360e435610104355b87876118d4565b60048a600581111561095957610959615329565b036109735761090e60243533608435604435606435610907565b6109886024353360843560443560643561093e565b610992848261190a565b61099b816119c4565b505b6109a88689846119e8565b6109b0611a5e565b6001995050505050505050505090565b6060602080526707536561706f727460475260606020f35b5f6109e1611ab1565b600143034060801c335f525f60205260405f208054820192508281555050336001600160a01b03167f721c20121297512b72821b97f5326877ea8ecf4bb9948fea5bfcb6453074d37f82604051610a3a91815260200190565b60405180910390a290565b5f816001600160a01b0316600a5a610a5d9190615773565b6040515f8181818686fa925050503d805f8114610a95576040519150601f19603f3d011682016040523d82523d5f602084013e610a9a565b606091505b50909392505050565b5f813563ffffffff168201610402565b5f610ac661016060408051918201905290565b9050610ad58282610140611b28565b610af2610aeb610ae6846040610cdc565b611b31565b6040830152565b5f610b06610b01846060610cdc565b611b84565b9050610b13816060840152565b610b26610b1e825190565b610140840152565b50919050565b0190565b610140820151604080519084015180515f939284927fa66999307ad1bb4fde44d13a5d710bd7718e0c87c1eef68a571629fbf5b93d0292602090910190845b81811015610b9c578251601f1901805186825260c082208652905260209384019390920191600101610b6f565b508060051b6040512094505050505f7f42d81c6929ffdc4eb27a0808e40e82516ad42296c166065de7f812492304ff6e915060405160206060890151015f5b86811015610c08578151601f1901805186825260e082208552905260209283019290910190600101610bdb565b505060408051600587901b9020601f198a0180517ffa445660b7e21515a59617fcd68910b487aa5808b8abda3d78bc85df364b2c2f8252928b01805197815260608c018051938152610140909c019a8b5261018082209390915295909552939097525050925250919050565b5f8063ffffffff8335169050600581901b610c986020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610cca610cc4610cbf8484610cdc565b611240565b82850152565b602001610ca7565b5050505050919050565b5f6104f163ffffffff610cf46104ed8686610b2c8516565b16840190565b5f8063ffffffff8335169050600581901b610d1e6020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610d4a610cc4610d458484610cdc565b611bc7565b602001610d2d565b5f8063ffffffff8335169050600581901b610d766020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610da2610cc4610d9d8484610cdc565b611c09565b602001610d85565b60608036155f80610dbe8c8c85898b611c4c565b91509150610dd18c8b8b8b8b8787612029565b9450945050505097509795505050505050565b5f8063ffffffff8335169050600581901b610e086020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610e34610cc4610e2f8484610cdc565b61215b565b602001610e17565b5f610e45611ab1565b5f805f80855190505f5b81811015610f50575f878281518110610e6a57610e6a615792565b60209081029190910101518051909150600481608001516004811115610e9257610e92615329565b03610e9e575050610f48565b80519450610eab8161219e565b5f8181526001602052604081209850909650610ecd90879089903615156121d7565b50865460ff16610f455780610140015181606001515114610ef057610ef0612265565b610eff85878460200151612272565b865460ff191660011787556040517ff280791efe782edcf06ce15c8f4dff17601db3b88eb3805a0db7d77faf757f0490610f3c9088908490615895565b60405180910390a15b50505b600101610e4f565b5060019695505050505050565b5f8063ffffffff8335169050600581901b610f816020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610fad610cc4610fa88484610cdc565b61104b565b602001610f90565b5f8063ffffffff8335169050600581901b610fd96020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257611005610cc46110008484610cdc565b61230e565b602001610fe8565b60605f36151590505f806110258888858b5189611c4c565b9150915061103282612341565b61103f8887848885612380565b98975050505050505050565b5f61105e61020060408051918201905290565b60a0810180825290915061107a61107484610aa3565b82612453565b61108660016020840152565b61109260016040840152565b6110af6110a86110a3856020610cdc565b612489565b6060840152565b610b266110ba6124b1565b6080840152565b835160808101515f91906110e860048260048111156110e2576110e2615329565b146124cb565b5f80806110f78a36151561256c565b60408051600180825281830190925293965091945092505f9190816020015b61111e615027565b8152602001906001900390816111165790505090508a815f8151811061114657611146615792565b602002602001018190525061115b818b612764565b6111678684848b6128dd565b6040805160018082528183019092525f91602080830190803683375091925050503615156004878181111561119e5761119e615329565b146111c1576111af8d83885f6129dd565b6111bb86868684612a2f565b506111d3565b6111d0888e6080015183612b33565b95505b6111de888c8c612c03565b85825f815181106111f1576111f1615792565b6020026020010181815250506112088d8388612d26565b61122586895f01518a602001518d8c604001518d60600151612df3565b61122d611a5e565b5060019c9b505050505050505050505050565b5f61125361020060408051918201905290565b905061126760208381019083016040611b28565b60a0810180825261127a61107484610aa3565b61128b6110a86110a3856060610cdc565b610b266110ba6110a3856080610cdc565b60605f805f6112a9612e58565b90505f7f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c905060605f5281602052806040526303312e3660635260a05ff35b5f6112f1611ab1565b5f8083815b81811015611408573687878381811061131157611311615792565b90506020028101906113239190615977565b90505f61133360208301836154f5565b90505f61134660408401602085016154f5565b90505f61135960a0850160808601615996565b905081331483331417156004821417871796505f61138d61138261137a8790565b610ab36104da565b866101400135610b30565b5f8181526001602052604090819020805461ffff19166101001781559051909a509091506001600160a01b0380851691908616907f6bacc01dbe442496068f7d234edd811f1a5f833243e0aec824f86ab861f3c90d906113f09085815260200190565b60405180910390a385600101955050505050506112f6565b5050801561141857611418612f35565b506001949350505050565b63a61be9f05f52806020526024601cfd5b5f8061143f5f6124cb565b611447612f42565b426101643511154261014435111715611475576321ccfeb75f5261014435602052610164356040526044601cfd5b610204356102643510156114905763466aa6165f526004601cfd5b7f42d81c6929ffdc4eb27a0808e40e82516ad42296c166065de7f812492304ff6e608081905260a08790526060602460c037604060646101203760e060802061016052610264356102043560051b6102a0016001820181526020810190508881526080602460208301376101608860a0528760c0525f60e0525f6102043593505f5b84811015611566578060400261028401602081610100376040816101203760208101358317925060208401935060e0608020845260a0850194508b85528a6020860152604081606087013750600101611512565b6001850160051b610160206060526102643594505b848110156115b6578060400261028401925060a0840193508a845289602085015260408360608601376020830135919091179060010161157b565b506001600160a01b038111156115d3576339f3e3fd5f526004601cfd5b50505050505f7fa66999307ad1bb4fde44d13a5d710bd7718e0c87c1eef68a571629fbf5b93d029050806080528360a052606060c460c0376020610104610120375060c06080205f9081526020812060e05260843590611647826001600160a01b03165f9081526020819052604090205490565b7ffa445660b7e21515a59617fcd68910b487aa5808b8abda3d78bc85df364b2c2f60808190529091506040608460a03760605161010052896101205260a061014461014037816101e05261018060802094505050506102043560051b61018001828152336020820152608060408201526101206060820152600160808201528360a0820152606060c460c083013760a061026435026101e00160a4356084357f9d9af8e38d66c62e2c12f0225249fd9d721c54b83f48d9352c97c6cacdcb6f318385a35f60605260608101820160405250505f61172383612f8d565b905061172f8389612fde565b7101000000000000000000000000000001000182559150509550959350505050565b60c43560843560e4356101043584156117b9575f6040519050632671a55160e11b815260206004820152600160248201528660448201528460648201528360848201523360a48201528260c48201528160e48201526117b38682610104613033565b50611801565b60028660058111156117cd576117cd615329565b036117f457806001146117e3576117e3816130ea565b6117ef848433856130fb565b611801565b61180184843385856131b0565b505050505050565b346064356084356102643560061b5f80805b8381101561185a5761028481013592506102a481013591508683111561184357611843613287565b82870396506118528284613294565b60400161181b565b508585111561186b5761186b613287565b6118758486613294565b848611156118015761180133868803613294565b61189381836132ca565b816118ba57826001146118a9576118a9836130ea565b6118b5878787876130fb565b6118cb565b6118cb828260028a8a8a8a8a6132e8565b50505050505050565b6118dd83613367565b6118e781836132ca565b816118f9576118b587878787876131b0565b6118cb828260038a8a8a8a8a6132e8565b5f805f805f861561192f57505060843592503391505060c4356101043560e435611944565b50339350506084359150506024356064356044355b801561195257611952613379565b50600586901b6101e403356102643560061b5f80805b838110156119a95761028481013592506102a481013591508a156119935761199083876159b4565b95505b6119a1878a8486898f613386565b604001611968565b506119b886898988888e613386565b50505050505050505050565b60408151146119d05750565b5f6119dc826020015190565b90506103dc81836133bb565b611a048260a4355b331415600182116004909210919091161690565b15611a5957805f611a13825190565b9050608081901c63ffffffff8216611a3484826317b1f94282526001905250565b601c840163fb5014fc6060529350611a5060a4358886856133df565b5f6060526118cb565b505050565b7f00000000000000000000000000000000000000000000000000000000000000018015611a8f575f63929eee145d50565b63929eee145480611aa5575f63929eee145d5050565b50600163929eee145550565b7f00000000000000000000000000000000000000000000000000000000000000018015611af05763929eee145c156103b057637fa8a9875f526004601cfd5b63929eee145480611b135763929eee145c156103dc57637fa8a9875f526004601cfd5b600181146103dc57637fa8a9875f526004601cfd5b80838337505050565b5f63ffffffff8235166040519150808252602082018160051b81018060a084026020870183378293505b81841015611b745780845260209093019260a001611b5b565b60405250919392505050565b9052565b5f63ffffffff8235166040519150808252602082018160051b81018060c084026020870183378293505b81841015611b745780845260209093019260c001611bae565b5f611bd960a060408051918201905290565b9050611be782826080611b28565b611c04611bfd611bf8846080610cdc565b613427565b6080830152565b919050565b5f63ffffffff8235166040519150808252602082018160051b8101808360061b6020870183378293505b81841015611b7457808452602090930192604001611c33565b60605f611c5960016124cb565b86515f90600160e61b82351690806001600160401b03811115611c7e57611c7e61574b565b604051908082528060200260200182016040528015611ca7578160200160208202803683370190505b50945060010160051b91505f60205b83811015611ea8575f611ccc8c83613cce6104da565b90505f805f611cdb848e61256c565b6001600160781b0382166020880152919450925090505f829003611d025750505050611ea0565b6001600160781b0381166040808601919091528a8601849052845160a081015160c0820151608083015192909301518051600184119d909d179c600490931099509092915f5b81811015611dea575f838281518110611d6357611d63615792565b602002602001015190508b8151108d179c505f611d858989846080015161345e565b90508160800151826060015103611da25760608201819052611db7565b611db18989846060015161345e565b60608301525b5f611dd08360600151838a8a611dcb361590565b61349a565b606084018190526080909301929092525050600101611d48565b5087516060015180515f5b81811015611e94575f838281518110611e1057611e10615792565b602002602001015190505f611e2a8b8b846080015161345e565b90508160800151826060015103611e475760608201819052611e5c565b611e568b8b846060015161345e565b60608301525b5f611e718360600151838c8c611dcb36151590565b6060840181905260a0840180516080909501949094529092525050600101611df5565b50505050505050505050505b602001611cb6565b50506001600160e61b018103611ec057611ec06134ed565b50611ecb8888612764565b5f8060205b8381101561200e578581015192508215612006575f611ef28c83613cce6104da565b9050885f03611f0d575f878301819052602090910152612006565b60048151608001516004811115611f2657611f26615329565b14611fa957611f3f8188866001600587901c038e6134fa565b611f55575f878301819052602090910152612006565b602080820151604083015183516080810151930151611f8e9388936001600160781b039081169316913314156001909111168e17612a2f565b611fa4575f878301819052602090910152612006565b611fd4565b611fbb815f015182608001518c612b33565b878301819052935083611fd4575f602090910152612006565b886001900398505f815f01519050611fff85825f015183602001518c85604001518660600151612df3565b6001935050505b602001611ed0565b508061201c5761201c613555565b5050509550959350505050565b85518551606091829161203c81836159c7565b6001600160401b038111156120535761205361574b565b60405190808252806020026020018201604052801561208c57816020015b61207961505a565b8152602001906001900390816120715790505b5092505f5b828110156120e4576120bf8c5f8d84815181106120b0576120b0615792565b60200260200101518c8c613562565b8482815181106120d1576120d1615792565b6020908102919091010152600101612091565b505f5b8181101561213d576121168c60018c848151811061210757612107615792565b60200260200101518c5f613562565b848483018151811061212a5761212a615792565b60209081029190910101526001016120e7565b5061214b8b84888a896135b1565b9350505097509795505050505050565b5f61216c6040808051918201905290565b905061218661218261217d84610aa3565b61389a565b8252565b611c046121976110a3846020610cdc565b6020830152565b5f6121b38260600151518361014001516138b9565b81516001600160a01b03165f90815260208190526040902054610402908390610b30565b82545f90610100900460ff16156121fe5781156121f7576121f7856138c9565b505f610622565b83546201000090046001600160781b0316801561225957831561222957612224866138da565b612259565b8454600160881b90046001600160781b0316811061225957821561225057612250866138eb565b5f915050610622565b50600195945050505050565b632165628a5f526004601cfd5b33831480156122815750505050565b5f61228a612e58565b61190160f01b5f9081526002828152602287815260428320908390528651939450929190601f601d840116106102e260621984011016156122f4576122cf86886138fc565b61190160f01b5f908152600286905260228281526042822091905290975090506122f7565b50815b612304888285858a613992565b5050505050505050565b5f61231f6040808051918201905290565b9050612330612182610d9d84610aa3565b611c04612197610d9d846020610cdc565b80518060051b6040019050602082038051602082527f4b9f2d36e1b4c93de62cc077b00b1a91d84b6c31b4a14e012718dcca230689e78383a190525050565b8351606090806001600160401b0381111561239d5761239d61574b565b6040519080825280602002602001820160405280156123d657816020015b6123c361505a565b8152602001906001900390816123bb5790505b5091505f5b81811015612439575f8782815181106123f6576123f6615792565b6020026020010151905061241389825f0151836020015185613adb565b84838151811061242557612425615792565b6020908102919091010152506001016123db565b5061244787838787876135b1565b50505b95945050505050565b6124608282610160611b28565b612471610aeb610ae6846040610cdc565b6103dc612482610b01846060610cdc565b6060830152565b6040518135601f0163ffffffe01660200180838337913563ffffffff16815290810160405290565b5f6124c3602060408051918201905290565b5f8152905090565b7f000000000000000000000000000000000000000000000000000000000000000180156125185763929eee145c1561250a57637fa8a9875f526004601cfd5b8160010163929eee145d5050565b63929eee14548061254a5763929eee145c1561253b57637fa8a9875f526004601cfd5b8260010163929eee145d505050565b6001811461255f57637fa8a9875f526004601cfd5b505060020163929eee1455565b5f805f80855f015190506125898160a001518260c0015187613c80565b61259c57505f925082915081905061275d565b602086015160408701516001600160781b0391821694501691505f6004826080015160048111156125cf576125cf615329565b036125fc57600183850218905080156125ea576125ea613ca3565b506001935083925082915061275d9050565b50818311831517801561261157612611613ca3565b608082015160011615848411161561262b5761262b613cb0565b6126348261219e565b5f81815260016020526040812091965061265290879083908a6121d7565b61266557505f935083925061275d915050565b805460ff1661268057612680835f0151878a60600151612272565b8054608881901c8061269457869150612757565b6001600160781b038260101c169150600186036126b8578181039650809550612757565b8086036126d357908601858103868211029096039590612757565b80860296810291909502810186810387821102918290039695919003906001600160781b0386111561275757612717565b5f5b8215610b2657908290069190612706565b61272a6127248784612704565b88612704565b8015019687900496909504946001600160781b0386111561275757634e487b715f5260116020526024601cfd5b50505050505b9250925092565b805182515f5b82811015612853575f84828151811061278557612785615792565b602002602001015190505f815f015190508381106127aa576127aa8260200151613cbd565b5f8782815181106127bd576127bd615792565b6020026020010151905080602001516001600160781b03165f036127e35750505061284b565b80516040808201519085015163bfb3f8ce5f8760200151600181111561280b5761280b615329565b14612827575f61281c856060613cce565b9350636088d7de9150505b8251821061283857805f526004601cfd5b612843838389613cd9565b505050505050505b60010161276a565b505f5b818110156128d6575f85828151811061287157612871615792565b6020026020010151905080602001516001600160781b03165f0361289557506128ce565b8051608081015160608201516128b29085908363a8930e9a613d8c565b6128ca8483604001518363d69293326104da613d8c90565b5050505b600101612856565b5050505050565b60a084015160c08501516040860151515f805b8281101561295a575f8960400151828151811061290f5761290f615792565b602002602001015190505f815f01519050801584179350505f612946826060015183608001518c8c8b8b612941361590565b613df3565b6060830152506080018690526001016128f0565b5060808801516004811082168015612974576129746134ed565b505050506060860151515f5b81811015612304575f8860600151828151811061299f5761299f615792565b602002602001015190505f6129c4826060015183608001518b8b8a8a61294136151590565b60608301525060a0810151608090910152600101612980565b8351608081015160208201513314156001821160049092109190911616156128d6575f80612a12858489608001518988613e2e565b63fb5014fc6060529092509050611a5083602001518684846133df565b5f848152600160205260408120805482908290608881901c80612a5457889150612adc565b6001600160781b038260101c169150808803612a7857908801878111935090612adc565b97880297808802979190910288018781119350906001600160781b038083119089111715612adc57612aaa8883612704565b8015019788900497909104906001600160781b038083119089111715612adc57634e487b715f5260116020526024601cfd5b508215612b15578515612b09576040516310fda3e160e01b8152600481018a905260240160405180910390fd5b5f945050505050610622565b8660881b8160101b1760011782556001945050505050949350505050565b5f83610140015184606001515114612b4d57612b4d612265565b83515f8080612b5c8888613fac565b915091505f8082845f885af16001600160a01b0385165f908152600260205260409020805460018101909155606086901b189550925082612bbb578515612bae57612ba5614056565b612bae8561409d565b505f93506104f192505050565b505050505f805f612bd8876040015188606001516104da6140ae90565b925092509250825f14612bee57612bee8461409d565b60408701919091526060860152509392505050565b6040805160208082528183019092525f916020820181803683375050506040850151519091505f5b81811015612c7b575f86604001518281518110612c4a57612c4a615792565b60200260200101519050846080820152612c7281885f0151896101200151876104da61432790565b50600101612c2b565b50506060840151515f90815b81811015612d09575f87606001518281518110612ca657612ca6615792565b602002602001015190505f6005811115612cc257612cc2615329565b81516005811115612cd557612cd5615329565b03612cf1574793508381606001511115612cf157612cf1613287565b612d00813389886143276104da565b50600101612c87565b5050612d14826119c4565b504780156128d6576128d63382613294565b8251608081015160208201515f92839283928392916004811060019091111633909114151615612d8857612d69612d6361010083015190565b5190565b8861441c565b9093509150612d7a60208201612d5f565b945063fb5014fc9350612dd4565b600481608001516004811115612da057612da0615329565b0361230457805194505f8560601b9050612dc187838b608001518b8561445d565b639397928596509094509250612dd49050565b612dde6060859052565b612dea858785856133df565b5f606052612304565b60608290506060829050856001600160a01b0316876001600160a01b03167f9d9af8e38d66c62e2c12f0225249fd9d721c54b83f48d9352c97c6cacdcb6f318a888686604051612e469493929190615a13565b60405180910390a35050505050505050565b5f7f00000000000000000000000000000000000000000000000000000000000005394614612f10575060408051608080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f5f9081527f32b5c112df393a49218d7552f96b2eeb829dfb4272f4f24eef510a586b85feef6020527f95f740a33d720b7cd93c75d515ac95ca3bbaa2594cce46ea48e00974ea8fcd14855246606090815230845260a08220949095529093529190915290565b507f8bebed3dbe91a82da0dc94c8d370c160ad6db1b32164303e65b8544bae7e2f5590565b63fed398fc5f526004601cfd5b600435602014610224356102401416610244356102606102643560061b01141660186101243510600160a01b60843560a4351760c4356024351717101616806103b0576103b0614528565b5f8181526001602081905260409091209060843590612fb290849084903615156121d7565b50815460ff16610b2657610b268184612fd9602463ffffffff6102443516016124896104da565b612272565b5f612feb8260a4356119f0565b15610402575f805f612ffc86614535565b63fb5014fc6060529194509250905061301c60a43587601c8601856133df565b5f60605260209190910160801b1781529392505050565b604080517f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c60ff60a01b175f90815260208690527f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f83526055600b20919092526001600160a01b031690505f805f805260205f85875f875af191505f519050816130c8576130bf614056565b6130c8836145ed565b6001600160e01b03198116632671a55160e11b146118015761180186846145fe565b6369f958275f52806020526024601cfd5b833b61311257635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af1806131a2573d1561318057601f3d0160051c8260051c8160030281831115613169578183036003028280028480020360091c01015b5a60208201101561317c573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b6131c757635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af18061326c573d1561324b57601f3d0160051c8560051c8160030281831115613234578183036003028280028480020360091c01015b5a602082011015613247573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b638ffff9805f526004601cfd5b61329d81613367565b5f805f805f85875af1905080611a59576132b5614056565b63bc806b965f5282602052816040526044601cfd5b5f6132d6836020015190565b9050818114611a5957611a59836119c4565b5f60208851036133225750604080885260208089018a9052632671a55160e11b918901919091526044880152600160648801819052613331565b50606487018051600101908190525b603c60c082028901038781528660208201528560408201528460608201528360808201528260a082015250505050505050505050565b806103b0576391b3e5145f526004601cfd5b636ab37ce75f526004601cfd5b61338f83613367565b61339981836132ca565b816133aa576117ef86868686614613565b611801828260018989895f8a6132e8565b6064810151604082019060c0026044016133d6848383613033565b50506020905250565b5f806001600160e01b03198451165f805260205f85875f8b5af15f51909350149050816134185761340e614056565b846080526024607cfd5b8061180157846080526024607cfd5b5f8063ffffffff83351690506001810160051b61344a8160408051918201905290565b9250613457848483611b28565b5050919050565b5f82840361346d5750806104f1565b82848309156134835763c63cf0895f526004601cfd5b5f61348e8584615aaf565b93909304949350505050565b5f8486146134e357838303428590038082035f6134b7838a615aaf565b6134c1838c615aaf565b6134cb91906159c7565b9050858487830304018115150294505050505061244a565b5092949350505050565b6312d3f5a35f526004601cfd5b8451608081015160208201515f92916004811060019091111633909114151615610f50575f8061353187848b608001518b8a613e2e565b9150915061354b836020015188848463fb5014fc8a614707565b935050505061244a565b63d5da9a1b5f526004601cfd5b61356a61505a565b83515f0361357b5761357b85614774565b5f85600181111561358e5761358e615329565b036135a45761359f86858385614785565b61244a565b61244a86858333876148f5565b84516060905f816001600160401b038111156135cf576135cf61574b565b6040519080825280602002602001820160405280156135f8578160200160208202803683370190505b506040805160208082528183019092529192505f9190602082018180368337505089519192505060010160051b60205b81811015613687575f61363e8b83613cce6104da565b8051606081015191925090801561367c57478111825115161561366857638ffff9805f526004601cfd5b61367c828460200151856040015189614327565b505050602001613628565b50505f5b838110156137f3575f8a82815181106136a6576136a6615792565b6020026020010151905080602001516001600160781b03165f036136ed575f8483815181106136d7576136d7615792565b91151560209283029190910190910152506137eb565b600184838151811061370157613701615792565b911515602092830291909101909101528051604081015180515f5b81811015613786575f83828151811061373757613737615792565b6020026020010151905080606001515f1461377357608081018051908e9052855161012087015161376d9184918c6143276104da565b60808201525b608081015160609091015260010161371c565b505050606081015180515f5b818110156137e5575f8382815181106137ad576137ad615792565b602002602001015190505f81606001519050805f146137d1576137d1888483614a2c565b5060a0810151606090910152600101613792565b50505050505b60010161368b565b506137fd816119c4565b47801561380e5761380e3382613294565b8515613884575f5b848110156138825783818151811061383057613830615792565b60200260200101511561387a5761387a8b828151811061385257613852615792565b60200260200101518a8b848151811061386d5761386d615792565b6020026020010151612d26565b600101613816565b505b61388c611a5e565b509098975050505050505050565b5f6138ad61016060408051918201905290565b9050611c048282612453565b808210156103dc576103dc614a45565b631a5155745f52806020526024601cfd5b63ee9e0e635f52806020526024601cfd5b6310fda3e15f52806020526024601cfd5b5f805f84516001811660410380820360051c9250808752806020018701915050805160e81c6003820191506001811660051b868152825160208218525060015b838110156139685760405f2082821c60051b60209081169182529384018051919094185260010161393c565b50505060405f2091505f61397b82614a52565b5f9081526020939093525050604090209392505050565b5f805f528151602083038051826041035f600182116139f557604087015160608801515f1a83156139d657601b8260ff1c0190506001600160ff1b03821660408a01525b88528a855260205f60808760015afa508385528588526040880152505f515b8a148a1515169450849050613abe57858552604082526044850380516040870351630b135d3f60e11b835289604089035260205f60648b01858f5afa96508615613ab257630b135d3f60e11b5f5114613ab2578b3b15613a5c57634f7fb80d5f526004601cfd5b6001866041031115613a7557638baa579f5f526004601cfd5b64010100000060608901515f1a1a15604187141615613aa557631f003d0a5f5260608801515f1a6020526024601cfd5b63815e1d645f526004601cfd5b8385529152603f198601525b5050508061180157613ace614056565b634f7fb80d5f526004601cfd5b613ae361505a565b8251158451151715613afc576398e9db6e5f526004601cfd5b613b0461505a565b613b118685835f806148f5565b805160608101515f03613b2657509050610622565b613b368787858460800151614785565b82516040828101519082015160208085015190840151855185511891181791181715613b6d5763bced929d5f52846020526024601cfd5b806060015182606001511115613bf4575f865f81518110613b9057613b90615792565b60200260200101519050816060015183606001510389825f015181518110613bba57613bba615792565b60200260200101515f015160600151826020015181518110613bde57613bde615792565b6020026020010151606001818152505050613c75565b5f875f81518110613c0757613c07615792565b60200260200101519050826060015182606001510389825f015181518110613c3157613c31615792565b60200260200101515f015160400151826020015181518110613c5557613c55615792565b602002602001015160600181815250508260600151826060018181525050505b505050949350505050565b428084111590831116818015613c94575080155b156104f1576104f18484614e61565b635a052b325f526004601cfd5b63a11b63ff5f526004601cfd5b63133c37c65f52806020526024601cfd5b5f6104f18284015190565b5f838381518110613cec57613cec615792565b602002602001015190505f815f01519050613d078160031090565b613d1357613d13614e76565b60408201518015613d3657613d318460600151828660800151614e83565b613d49565b60808401515115613d4957613d49614ecd565b6004821460030383816005811115613d6357613d63615329565b90816005811115613d7657613d76615329565b9052505050606090920151604090910152505050565b82515f5b81811015611801575f858281518110613dab57613dab615792565b60209081029190910101518051604082015191925090600382116004881415821515171615613de557855f5288602052836040526044601cfd5b505050806001019050613d90565b5f868803613e0d57613e0686868961345e565b90506107df565b6107dc613e1b87878b61345e565b613e2688888b61345e565b86868661349a565b5f805f613e39614eda565b6301e4d72a815260208082015260408101898152336060830152601c820194509091508751604082015287613e79613e7260a083015190565b60e0840152565b613e8f613e8760c083015190565b610100840152565b613ea5613e9d60e083015190565b610120840152565b610140613eb3816060850152565b5f613ebf604084015190565b90505f613ece82848701614ee4565b928301929050613edf836080870152565b5f613eeb606086015190565b90505f613efa82868901614f4a565b948501949050613f0b8560a0890152565b5f613f188e878a01614faf565b959095019450613f298560c0890152565b8685015f613f378e83614fce565b602497019687019a50613f539050613f4e8c8c0190565b614ffe565b8060408b901b60808b901b17178f610100018181525050613f7d8c82611b8090919063ffffffff16565b60058c8e51613f8c91906159b4565b613f97911b8b6159b4565b99505050505050505050509550959350505050565b5f8083613fb7614eda565b639891976581523360208201908152608060408301819052601c9092019450905f613fe3604085015190565b90505f613ff282848601614ee4565b928301929050614003836040860152565b5f61400f606087015190565b90505f61401e82868801614ee4565b94850194905061402f856060880152565b895f61403d82898901614faf565b9a9d96909a016004019b50949950505050505050505050565b3d1561409b57601f3d0160051c60405160051c8160030281831115614088578183036003028280028480020360091c01015b5a602082011015611a59573d5f803e3d5ffd5b565b63939792855f52806020526024601cfd5b60603d105f8080808080866141205760405f803e5f51935060205192503d60208501113d60208501118082179850505086614120576020845f3e5f51915060208360203e60205190508160071b60208501018160a0026020850101803d10823d101761ffff8486171117985050505f80525b86614152575f8061413584602088018d61415b565b9250975061414783602087018c61423b565b929092179850909550505b5050505061275d565b5f806040519150825160c08602602001830160405285835260208660010160051b8085018360010160051b8701614199858b81811090829003020190565b60010160051b8a861196505b808510156141f957828589015260808a843e6060830151955085608084015260608201518681116141d685856142e2565b17881797505060808a01995060a08301925060a0820191506020850194506141a5565b50505b8183101561422f578083870152608088823e6060810151608082015260808801975060a0810190506020830192506141fc565b50505050935093915050565b604051815180851190808603818710028101602060e08202850181016040528185526001928301600590811b87019390920190911b908185015b8282101561422f57808287015260a088823e60206060890160a083013e606081015160608501516142b26080840151608088015180159114171590565b818311176142c084886142e2565b60a09b909b019a179690961795505060c0938401936020929092019101614275565b5f81516040830151801560038311161561430457506040840151600119909101905b604085015181148551831460208701516020870151141616159250505092915050565b5f8451600581111561433b5761433b615329565b0361437857604084015160208501516001600160a01b0316171561436157614361613379565b61437384608001518560600151613294565b614416565b60018451600581111561438d5761438d615329565b036143be576040840151156143a4576143a4613379565b614373846020015184866080015187606001518686613386565b6002845160058111156143d3576143d3615329565b036143f7576143738460200151848660800151876040015188606001518787611889565b61441684602001518486608001518760400151886060015187876118d4565b50505050565b608082901c63ffffffff604084901c811690808516906144449084906317b1f94290611b8016565b601c830192506144548482614fce565b50509250929050565b5f80614467614eda565b63f4dd92ce815287841860a0820152601c8101925060200160a0808252875f614491604083015190565b90505f6144a082858701614ee4565b9384019390506144b1846020870152565b5f6144bd606085015190565b90505f6144cc82878901614f4a565b9586019590506144dd866040890152565b5f6144ea8d888a01614faf565b9687019690506144fb8760608a0152565b5f6145088d898b01614fce565b905080880197508760040199505050505050505050509550959350505050565b6339f3e3fd5f526004601cfd5b6301e4d72a6102043560051b6080019081525f808260208082015260408101858152336060830152601c919091019061456f608435610aeb565b61458061014460e083016060611b28565b61014061458e816060840152565b61459c60a082016080840152565b61016060a06102643581029290920101906145b8908290840152565b6145c25f82840152565b6020016145d08160c0840152565b5f9181019182526020820196909652939560449095019492505050565b63d13d53d45f52806020526024601cfd5b631cf99b265f5281602052806040526044601cfd5b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166146f85780873b1515166146f857806146e757816146ca573d156146a957601f3d0160051c8360051c8160030281831115614692578183036003028280028480020360091c01015b5a6020820110156146a5573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b5f805f6001600160e01b03198751165f805260205f888a5f8e5af15f5190935014905081614753578361473e575f925050506106d7565b614746614056565b845f52876020526024601cfd5b8061476557845f52876020526024601cfd5b50600198975050505050505050565b63375c24c15f52806020526024601cfd5b5f805f85865160051b87015b808210156148a2576020820191508851825151106147b1576147b16148d6565b81515160051b60208a01015180516020845101515f6040830151602085015115815184101517156147e6575050505050614791565b8260051b60208201015191505060608101935083518901915083511589831060011b17881797508198505f84528a51935086156001811461484f5760608220881860408d01516101208601511860208e015186511817171561484a5761484a6148d6565b614898565b8151855260208201516020860152604082015160408601528a6080860152835160208d015261012084015160408d015260608520975060208d0192508683181561489857865183525b5050505050614791565b5050508160608551015280156148cf57600181036148c7576391b3e5145f526004601cfd5b6148cf6148e3565b5050614416565b637fda72795f526004601cfd5b634e487b715f5260116020526024601cfd5b5f805f86875160051b88015b808210156149f7576020820191508151518a518110614922576149226148d6565b8060051b60208c01015190506020835101515f606083510151602084015115815184101517156149555750505050614901565b8260051b60208201015191505060608101925082518801915082511588831060011b17871796508197505f83528a5192508515600181146149a75760a0822087146149a2576149a26148d6565b6149ee565b815184526020820151602085015260408201516040850152608082015160808501528a60208d01528960408d015260a08220965060208d019250858318156149ee57855183525b50505050614901565b50508551606001839052508015614a255760018103614a1d576391b3e5145f526004601cfd5b614a256148e3565b50506128d6565b63a5f542085f528260205281604052806060526064601cfd5b63466aa6165f526004601cfd5b5f614e58565b5f6009821015614bb1576005821015614b0e576003821015614ac1577f832c58a5b611aadcfa6a082ac9d04bace53d8278387f10040347b7e98eb5b30260018314027fbf8e29b89f29ed9b529c154a63038ffca562f8d7cd1e2545dda53a1b582dde3018610402565b7ff3e8417a785f980bdaf134fa0274a6bf891eeb8195cd94b09d2aa651046e28bc60038314027fa02eb7ff164c884e5e2c336dc85f81c6a93329d8e9adf214b32729b894de2af118610402565b6007821015614b64577f25d02425402d882d211a7ab774c0ed6eca048c4d03d9af40132475744753b2a360058314027f1c19f71958cdd8f081b4c31f7caf5c010b29d12950be2fa1c95070dc47e30b5518610402565b7fb58d772fb09b426b9dece637f61ca9065f2b994f1464b51e9207f55f7c8f594860078314027f7ff98d9d4e55d876c5cfac10b43c04039522f3ddfb0ea9bfe70c68cfb5c7cc1418610402565b6011821015614d0957600d821015614c6657600b821015614c19577f6f0ec38c21f6f583ab7f3c5413c773ffd5344c34fde1d390958e438bf667448f60098314027fd1d97d1ef5eaa37a4ee5fbf234e6f6d64eb511eb562221cd7edfbdde0848da0518610402565b7f32f4e7485d6485f9f6c255929b9905c62ba919758bbe231f231eaeecf33d810c600b8314027fbb98d87cc12922b83759626c5f07d72266da9702d19ffad6a514c73a89002f5f18610402565b600f821015614cbc577f8df51df98847160517f5b1186b4bc3f418d98b8a7f17f1292f392d79d600d79e600d8314027f6b5b04cbae4fcb1a9d78e7b2dfc51a36933d023cf6e347e03d517b472a85259018610402565b7fcc4886e37eedd9aacd6c1c2c9247197a621a71282e87a7cbc673f3736d9aa141600f8314027f1da3eed3ecef6ebaa6e5023c057ec2c75150693fd0dac5c90f4a142f9879fde818610402565b6015821015614db5576013821015614d68577f2d7a3ed6dab270fdb8e054b2ad525f0ce2a8b89cc76c17f0965434740f673a5560118314027fc3939feff011e53ab8c35ca3370aad54c5df1fc2938cd62543174fa6e7d8587718610402565b7f54b3212a178782f104e0d514b41a9a5c4ca9c980bf6597c3cecbf280917e202a60138314027f5a4f867d3d458dabecad65f6201ceeaba0096df2d0c491cc32e6ea4e6435001718610402565b6017821015614e0b577fbb40bf8cea3a5a716e2b6eb08bbdac8ec159f82f380783db3c56904f15a43d0460158314027f3bd8cff538aba49a9c374c806d277181e9651624b3e31111bc0624574f8bca1d18610402565b7f403be09941a31d05cfc2f896505811353d45d38743288b016630cce39435476a60178314027f1d51df90cba8de7637ca3e8fe1e3511d1dc2f23487d05dbdecb781860c21ac1c18610402565b61040282614a58565b6321ccfeb75f5281602052806040526044601cfd5b6394eb6af65f526004601cfd5b5f835f5260205f2060208301835160051b81015b80821015614ebe57815180841160051b93845260209384185260405f209290910190614e97565b50508314905080614416576144165b6309bde3395f526004601cfd5b5f61041260405190565b5f825180835260208401602084018260051b82015b80831015614f375782518051835260208101516020840152604081015160408401526060810151606084015250602083019250608082019150614ef9565b5050508060071b60200191505092915050565b5f80614f54845190565b8084529050602084810190600583901b860181019085015b82821115614f9c575f614f7e84615008565b9050614f8c818360a0615011565b506020929092019160a001614f6c565b60a0840260200194505050505092915050565b5f63ffffffe0603f614fbf855190565b01169050610402838383615011565b5f80614fd8845190565b8084529050600581901b614ff3602086810190860183615011565b602001949350505050565b6103b06040829052565b5f610402825190565b8082828560045afa80153d151715614416575f80fd5b6040518060a0016040528061503a61509c565b81525f602082018190526040820152606080820181905260809091015290565b60408051610100810182525f606082018181526080830182905260a0830182905260c0830182905260e083018290528252602082018190529181019190915290565b6040518061016001604052805f6001600160a01b031681526020015f6001600160a01b0316815260200160608152602001606081526020015f60048111156150e6576150e6615329565b81525f6020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b5f60208284031215615125575f80fd5b81356001600160401b0381111561513a575f80fd5b820161024081850312156104f1575f80fd5b5f81518084525f5b8181101561517057602081850181015186830182015201615154565b505f602082860101526020601f19601f83011685010191505092915050565b602081525f6104f1602083018461514c565b5f602082840312156151b1575f80fd5b5035919050565b5f602082840312156151c8575f80fd5b81356001600160401b038111156151dd575f80fd5b820161016081850312156104f1575f80fd5b5f8083601f8401126151ff575f80fd5b5081356001600160401b03811115615215575f80fd5b6020830191508360208260051b850101111561522f575f80fd5b9250929050565b80356001600160a01b0381168114611c04575f80fd5b5f805f805f805f805f805f60e08c8e031215615266575f80fd5b6001600160401b03808d35111561527b575f80fd5b6152888e8e358f016151ef565b909c509a5060208d013581101561529d575f80fd5b6152ad8e60208f01358f016151ef565b909a50985060408d01358110156152c2575f80fd5b6152d28e60408f01358f016151ef565b909850965060608d01358110156152e7575f80fd5b506152f88d60608e01358e016151ef565b909550935060808c0135925061531060a08d01615236565b915060c08c013590509295989b509295989b9093969950565b634e487b7160e01b5f52602160045260245ffd5b60068110611b8057611b80615329565b61535882825161533d565b6020818101516001600160a01b0390811691840191909152604080830151908401526060808301519084015260809182015116910152565b5f815180845260208085019450602084015f5b838110156153e55781516153b888825161534d565b808401516001600160a01b031660a08901526040015160c088015260e090960195908201906001016153a3565b509495945050505050565b604080825283519082018190525f906020906060840190828701845b8281101561542a57815115158452928401929084019060010161540c565b50505083810360208501526106d78186615390565b5f8060208385031215615450575f80fd5b82356001600160401b03811115615465575f80fd5b615471858286016151ef565b90969095509350505050565b5f805f8060408587031215615490575f80fd5b84356001600160401b03808211156154a6575f80fd5b6154b2888389016151ef565b909650945060208701359150808211156154ca575f80fd5b506154d7878288016151ef565b95989497509550505050565b602081525f6104f16020830184615390565b5f60208284031215615505575f80fd5b6104f182615236565b5f806040838503121561551f575f80fd5b82356001600160401b03811115615534575f80fd5b830160408186031215615545575f80fd5b946020939093013593505050565b5f805f805f60808688031215615567575f80fd5b85356001600160401b038082111561557d575f80fd5b9087019060a0828a031215615590575f80fd5b909550602087013590808211156155a5575f80fd5b506155b2888289016151ef565b909550935050604086013591506155cb60608701615236565b90509295509295909350565b5f805f805f805f8060a0898b0312156155ee575f80fd5b88356001600160401b0380821115615604575f80fd5b6156108c838d016151ef565b909a50985060208b0135915080821115615628575f80fd5b6156348c838d016151ef565b909850965060408b013591508082111561564c575f80fd5b506156598b828c016151ef565b999c989b509699959896976060870135966080013595509350505050565b5f805f805f805f6080888a03121561568d575f80fd5b87356001600160401b03808211156156a3575f80fd5b6156af8b838c016151ef565b909950975060208a01359150808211156156c7575f80fd5b6156d38b838c016151ef565b909750955060408a01359150808211156156eb575f80fd5b506156f88a828b016151ef565b909450925061570b905060608901615236565b905092959891949750929550565b606081525f61572b606083018661514c565b6020830194909452506001600160a01b0391909116604090910152919050565b634e487b7160e01b5f52604160045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b5f8261578d57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f815180845260208085019450602084015f5b838110156153e55781516157ce88825161533d565b838101516001600160a01b03168885015260408082015190890152606080820151908901526080908101519088015260a090960195908201906001016157b9565b5f815180845260208085019450602084015f5b838110156153e557815161583788825161533d565b808401516001600160a01b0390811689860152604080830151908a0152606080830151908a0152608080830151908a015260a091820151169088015260c09096019590820190600101615822565b60058110611b8057611b80615329565b828152604060208201526158b56040820183516001600160a01b03169052565b5f60208301516158d060608401826001600160a01b03169052565b5060408301516101608060808501526158ed6101a08501836157a6565b91506060850151603f198584030160a086015261590a838261580f565b925050608085015161591f60c0860182615885565b5060a085015160e085015260c0850151610100818187015260e0870151915061012082818801528188015192506101409150828288015280880151848801525080870151610180870152505050809150509392505050565b5f823561015e1983360301811261598c575f80fd5b9190910192915050565b5f602082840312156159a6575f80fd5b8135600581106104f1575f80fd5b818103818111156104025761040261575f565b808201808211156104025761040261575f565b5f815180845260208085019450602084015f5b838110156153e557615a0087835161534d565b60a09690960195908201906001016159ed565b5f6080808301878452602060018060a01b03808916602087015260406080604088015283895180865260a08901915060208b0195505f5b81811015615a8b578651615a5f84825161533d565b808701518616848801528481015185850152606090810151908401529585019591870191600101615a4a565b50508781036060890152615a9f818a6159da565b9c9b505050505050505050505050565b80820281158282048414176104025761040261575f56fea164736f6c6343000818000a","storage":{}},"0x6265cc8d1b28edfd4d76c80bf774c0d446fffbde":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610090575f3560e01c80633f15457f116100635780633f15457f1461010f5780637adbf973146101225780637dc0d1d0146101355780638bbedf7514610147578063be27b22c1461015a575f80fd5b806301ffc9a7146100945780631ecfc411146100bc578063224199c2146100d157806330349ebe146100e4575b5f80fd5b6100a76100a23660046115b1565b61016d565b60405190151581526020015b60405180910390f35b6100cf6100ca3660046115ef565b6101a3565b005b6100cf6100df3660046117e0565b6102de565b6002546100f7906001600160a01b031681565b6040516001600160a01b0390911681526020016100b3565b6001546100f7906001600160a01b031681565b6100cf6101303660046115ef565b61063c565b5f546100f7906001600160a01b031681565b6100cf610155366004611889565b61076d565b6100cf61016836600461190b565b6107f1565b5f6001600160e01b031982166301ffc9a760e01b148061019d57506001600160e01b031982166317d8f49b60e01b145b92915050565b6001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa1580156101ea573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061020e919061196b565b90505f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561024d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610271919061196b565b9050336001600160a01b03821614610287575f80fd5b600280546001600160a01b0319166001600160a01b0385169081179091556040519081527f9176b7f47e4504df5e5516c99d90d82ac7cbd49cc77e7f22ba2ac2f2e3a3eba8906020015b60405180910390a1505050565b5f546040516321ae60b160e11b81526001600160a01b039091169063435cc1629061030f90879087906004016119d3565b5f604051808303815f875af115801561032a573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526103519190810190611a6b565b92505f805f610360888761088b565b91945092509050336001600160a01b038216146103da5760405162461bcd60e51b815260206004820152602d60248201527f4f6e6c79206f776e65722063616e2063616c6c2070726f7665416e64436c616960448201526c36abb4ba342932b9b7b63b32b960991b60648201526084015b60405180910390fd5b6001600160a01b038416156105bb576001600160a01b03851661044e5760405162461bcd60e51b815260206004820152602660248201527f43616e6e6f74207365742061646472206966207265736f6c766572206973206e6044820152651bdd081cd95d60d21b60648201526084016103d1565b6001546040516305ef2c7f60e41b815260048101859052602481018490523060448201526001600160a01b0387811660648301525f608483015290911690635ef2c7f09060a4015f604051808303815f87803b1580156104ac575f80fd5b505af11580156104be573d5f803e3d5ffd5b505050505f83836040516020016104df929190918252602082015260400190565b60408051808303601f1901815290829052805160209091012062d5fa2b60e81b8252600482018190526001600160a01b03878116602484015290925087169063d5fa2b00906044015f604051808303815f87803b15801561053e575f80fd5b505af1158015610550573d5f803e3d5ffd5b5050600154604051635b0fc9c360e01b8152600481018590526001600160a01b0386811660248301529091169250635b0fc9c391506044015f604051808303815f87803b15801561059f575f80fd5b505af11580156105b1573d5f803e3d5ffd5b5050505050610632565b6001546040516305ef2c7f60e41b815260048101859052602481018490526001600160a01b03838116604483015287811660648301525f608483015290911690635ef2c7f09060a4015f604051808303815f87803b15801561061b575f80fd5b505af115801561062d573d5f803e3d5ffd5b505050505b5050505050505050565b6001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa158015610683573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106a7919061196b565b90505f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106e6573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061070a919061196b565b9050336001600160a01b03821614610720575f80fd5b5f80546001600160a01b0319166001600160a01b0385169081179091556040519081527fb3eacd0e351fafdfefdec84e1cd19679b38dbcd63ea7c2c24da17fd2bc3b3c0e906020016102d1565b5f546040516321ae60b160e11b81526001600160a01b039091169063435cc1629061079e90859085906004016119d3565b5f604051808303815f875af11580156107b9573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526107e09190810190611a6b565b90506107ec83826107f1565b505050565b5f805f6107fe858561088b565b6001546040516306ab592360e01b815260048101859052602481018490526001600160a01b03808416604483015294975092955090935091909116906306ab5923906064016020604051808303815f875af115801561085f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108839190611add565b505050505050565b5f8080806108998682610a40565b60ff1690506108aa86600183610a63565b92505f6108dc6108bb836001611b08565b6001848a516108ca9190611b1b565b6108d49190611b1b565b899190610a85565b6002546040516327c482cf60e11b81529192506001600160a01b031690634f89059e9061090d908490600401611b2e565b602060405180830381865afa158015610928573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061094c9190611b40565b6109a45760405162461bcd60e51b815260206004820152602360248201527f506172656e74206e616d65206d7573742062652061207075626c6963207375666044820152620ccd2f60eb1b60648201526084016103d1565b6109ae815f610b05565b5f549095506109c7906001600160a01b03168888610de3565b5060408051602081018890529081018690529093506001600160a01b03841690606001604051602081830303815290604052805190602001207fa2e66ce20e6fb2c4f61339c364ad79f15160cf5307230c8bc4d628adbca2ba3989604051610a2f9190611b2e565b60405180910390a350509250925092565b5f828281518110610a5357610a53611b5f565b016020015160f81c905092915050565b82515f90610a718385611b08565b1115610a7b575f80fd5b5091016020012090565b8251606090610a948385611b08565b1115610a9e575f80fd5b5f8267ffffffffffffffff811115610ab857610ab861160a565b6040519080825280601f01601f191660200182016040528015610ae2576020820181803683370190505b50905060208082019086860101610afa82828761100b565b509095945050505050565b5f80610b118484610a40565b60ff169050805f03610b2657505f905061019d565b5f610b4585610b358487611b08565b610b40906001611b08565b610b05565b90505f610b5e610b56866001611b08565b879085610a63565b604080516020810185905290810182905290915060600160408051808303601f190181529082905280516020909101206001546302571be360e01b8352600483018290529095505f916001600160a01b03909116906302571be390602401602060405180830381865afa158015610bd7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bfb919061196b565b90506001600160a01b0381161580610c1b57506001600160a01b03811630145b610c7a5760405162461bcd60e51b815260206004820152602a60248201527f43616e6e6f7420656e61626c652061206e616d65206f776e656420627920736f6044820152696d656f6e6520656c736560b01b60648201526084016103d1565b6001600160a01b0381163014610dd95782610d5e576001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa158015610cd6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cfa919061196b565b60405163232e3b3b60e21b8152600481018590523060248201529091506001600160a01b03821690638cb8ecec906044015f604051808303815f87803b158015610d42575f80fd5b505af1158015610d54573d5f803e3d5ffd5b5050505050610dd9565b6001546040516306ab592360e01b815260048101859052602481018490523060448201526001600160a01b03909116906306ab5923906064016020604051808303815f875af1158015610db3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610dd79190611add565b505b5050505092915050565b5f80610e016040518060400160405280606081526020015f81525090565b610e1985516005610e129190611b08565b8290611060565b50604080518082019091526005815264045f656e7360d81b6020820152610e419082906110c3565b50610e4c81866110c3565b50805160405163021e646f60e21b81525f9182916001600160a01b038a169163087991bc91610e8091601091600401611b73565b606060405180830381865afa158015610e9b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ebf9190611ba7565b93509150506bffffffffffffffffffffffff198216158015610ee057508551155b15610ef3575f8094509450505050611003565b855160208701206bffffffffffffffffffffffff19838116911614610f16575f80fd5b5f610f2187826110ef565b90505b80515160208201511015610ff857610f4b816080015183610f459190611bfc565b4261114a565b610fbd5760405162461bcd60e51b815260206004820152603c60248201527f444e53207265636f7264206973207374616c653b2072656672657368206f722060448201527f64656c657465206974206265666f72652070726f63656564696e672e0000000060648201526084016103d1565b5f80610fcd898460a00151611162565b925090508115610fe857965060019550611003945050505050565b5050610ff3816111d1565b610f24565b505f80945094505050505b935093915050565b602081106110435781518352611022602084611b08565b925061102f602083611b08565b915061103c602082611b1b565b905061100b565b905182516020929092036101000a5f190180199091169116179052565b60408051808201909152606081525f602082015261107f602083611c20565b156110a75761108f602083611c20565b61109a906020611b1b565b6110a49083611b08565b91505b506020828101829052604080518085525f815290920101905290565b60408051808201909152606081525f60208201526110e883845f0151518485516112b6565b9392505050565b6111376040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261019d816111d1565b5f806111568385611c3f565b60030b12159392505050565b5f805b83518310156111c4575f6111798585610a40565b60ff169050611189600185611b08565b93505f8061119887878561139c565b9250905081156111b0579350600192506111ca915050565b6111ba8387611b08565b9550505050611165565b505f9050805b9250929050565b60c081015160208201819052815151116111e85750565b5f6111fa825f015183602001516113f5565b82602001516112099190611b08565b82519091506112189082611454565b61ffff16604083015261122c600282611b08565b825190915061123b9082611454565b61ffff16606083015261124f600282611b08565b825190915061125e908261147a565b63ffffffff166080830152611274600482611b08565b82519091505f906112859083611454565b61ffff169050611296600283611b08565b60a0840181905291506112a98183611b08565b60c0909301929092525050565b60408051808201909152606081525f602082015282518211156112d7575f80fd5b60208501516112e68386611b08565b11156113195761131985611309876020015187866113049190611b08565b6114a2565b611314906002611c66565b6114b8565b5f808651805187602083010193508088870111156113375787860182525b505050602084015b602084106113775780518252611356602083611b08565b9150611363602082611b08565b9050611370602085611b1b565b935061133f565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b5f806113a8858561147a565b63ffffffff1663613d3078146113c257505f905080611003565b602c8310156113d557505f905080611003565b6113e9856113e4866004611b08565b6114d5565b91509150935093915050565b5f815b8351811061140857611408611c7d565b5f6114138583610a40565b60ff169050611423816001611b08565b61142d9083611b08565b9150805f0361143c5750611442565b506113f8565b61144c8382611b1b565b949350505050565b81515f90611463836002611b08565b111561146d575f80fd5b50016002015161ffff1690565b81515f90611489836004611b08565b1115611493575f80fd5b50016004015163ffffffff1690565b5f818311156114b257508161019d565b50919050565b81516114c48383611060565b506114cf83826110c3565b50505050565b5f8060288385516114e69190611b1b565b10156114f657505f9050806111ca565b5f835b611504856028611b08565b8110156115a55760049190911b905f61151d8783610a40565b60ff169050603081101580156115335750603a81105b1561154c57611543603082611b1b565b8317925061159c565b6041811015801561155d5750604781105b1561156d57611543603782611b1b565b6061811015801561157e5750606781105b1561158e57611543605782611b1b565b5f80945094505050506111ca565b506001016114f9565b50946001945092505050565b5f602082840312156115c1575f80fd5b81356001600160e01b0319811681146110e8575f80fd5b6001600160a01b03811681146115ec575f80fd5b50565b5f602082840312156115ff575f80fd5b81356110e8816115d8565b634e487b7160e01b5f52604160045260245ffd5b6040805190810167ffffffffffffffff811182821017156116415761164161160a565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156116705761167061160a565b604052919050565b5f67ffffffffffffffff8211156116915761169161160a565b50601f01601f191660200190565b5f82601f8301126116ae575f80fd5b81356116c16116bc82611678565b611647565b8181528460208386010111156116d5575f80fd5b816020850160208301375f918101602001919091529392505050565b5f82601f830112611700575f80fd5b8135602067ffffffffffffffff8083111561171d5761171d61160a565b8260051b61172c838201611647565b9384528581018301938381019088861115611745575f80fd5b84880192505b858310156117d457823584811115611761575f80fd5b88016040818b03601f1901811315611777575f80fd5b61177f61161e565b878301358781111561178f575f80fd5b61179d8d8a8387010161169f565b8252509082013590868211156117b1575f80fd5b6117bf8c898486010161169f565b8189015284525050918401919084019061174b565b98975050505050505050565b5f805f805f60a086880312156117f4575f80fd5b853567ffffffffffffffff8082111561180b575f80fd5b61181789838a0161169f565b9650602088013591508082111561182c575f80fd5b61183889838a016116f1565b9550604088013591508082111561184d575f80fd5b5061185a8882890161169f565b935050606086013561186b816115d8565b9150608086013561187b816115d8565b809150509295509295909350565b5f805f6060848603121561189b575f80fd5b833567ffffffffffffffff808211156118b2575f80fd5b6118be8783880161169f565b945060208601359150808211156118d3575f80fd5b6118df878388016116f1565b935060408601359150808211156118f4575f80fd5b506119018682870161169f565b9150509250925092565b5f806040838503121561191c575f80fd5b823567ffffffffffffffff80821115611933575f80fd5b61193f8683870161169f565b93506020850135915080821115611954575f80fd5b506119618582860161169f565b9150509250929050565b5f6020828403121561197b575f80fd5b81516110e8816115d8565b5f5b838110156119a0578181015183820152602001611988565b50505f910152565b5f81518084526119bf816020860160208601611986565b601f01601f19169290920160200192915050565b5f60408083016040845280865180835260608601915060608160051b870101925060208089015f5b83811015611a4b57888603605f1901855281518051888852611a1f898901826119a8565b9185015188830389870152919050611a3781836119a8565b9750505093820193908201906001016119fb565b505086840381880152505050611a6181866119a8565b9695505050505050565b5f60208284031215611a7b575f80fd5b815167ffffffffffffffff811115611a91575f80fd5b8201601f81018413611aa1575f80fd5b8051611aaf6116bc82611678565b818152856020838501011115611ac3575f80fd5b611ad4826020830160208601611986565b95945050505050565b5f60208284031215611aed575f80fd5b5051919050565b634e487b7160e01b5f52601160045260245ffd5b8082018082111561019d5761019d611af4565b8181038181111561019d5761019d611af4565b602081525f6110e860208301846119a8565b5f60208284031215611b50575f80fd5b815180151581146110e8575f80fd5b634e487b7160e01b5f52603260045260245ffd5b61ffff83168152604060208201525f61144c60408301846119a8565b805163ffffffff81168114611ba2575f80fd5b919050565b5f805f60608486031215611bb9575f80fd5b611bc284611b8f565b9250611bd060208501611b8f565b915060408401516bffffffffffffffffffffffff1981168114611bf1575f80fd5b809150509250925092565b63ffffffff818116838216019080821115611c1957611c19611af4565b5092915050565b5f82611c3a57634e487b7160e01b5f52601260045260245ffd5b500690565b600382810b9082900b03637fffffff198112637fffffff8213171561019d5761019d611af4565b808202811582820484141761019d5761019d611af4565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{"0x0":"0x9b2565a3545a1312bdcb6e7148a7f7cae8c2706b","0x1":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0x2":"0x287dee389caaa49edc112888f2bcfd927b472e25"}},"0x62b11ad5f582a5c5d378fb310125b030042554f1":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106103af5760003560e01c80637e37479e116101f4578063ba5d40b71161011a578063e985e9c5116100ad578063f5c1f76e1161007c578063f5c1f76e146108d8578063f7df5c60146108eb578063f8c8765e146108fe578063ffa1ad741461091157600080fd5b8063e985e9c51461087a578063ebf0c717146108b6578063ec129eea146108bd578063f25eb5c1146108d057600080fd5b8063c87b56dd116100e9578063c87b56dd1461082e578063ce92b33e14610841578063cf2c52cb14610854578063d9548e531461086757600080fd5b8063ba5d40b7146107b3578063baef73e9146107c6578063bb5b27e114610808578063bebec6b41461081b57600080fd5b8063a22cb46511610192578063ac9650d811610161578063ac9650d81461074c578063b3f9e4cb1461076c578063b85afd281461077f578063b88d4fde146107a057600080fd5b8063a22cb465146106e7578063a3f4df7e146106fa578063a424740014610726578063ab3b87fe1461073957600080fd5b80639508b1c4116101ce5780639508b1c4146106b15780639559c0bd146106c457806395d89b41146106cc57806399e0dd7c146106d457600080fd5b80637e37479e146106785780637eee288d1461068b57806394d008ef1461069e57600080fd5b806342842e0e116102d95780635096023911610277578063663f7b2a11610246578063663f7b2a14610610578063672b9f81146106235780636ccbae5f1461064457806370a082311461066557600080fd5b806350960239146105bb578063572b6c05146105ce5780636352211e146105ea578063638e5c78146105fd57600080fd5b806347c81699116102b357806347c816991461056f5780634a72584d146105825780634f558e791461059557806350382c1a146105a857600080fd5b806342842e0e1461053657806342966c6814610549578063430c20811461055c57600080fd5b80631bf7e13e1161035157806327f189751161032057806327f18975146104ea578063310bd74b146104fd5780633f72ec6e1461051057806340c10f191461052357600080fd5b80631bf7e13e146104905780631f71be06146104a357806323b872dd146104b6578063276fabb1146104c957600080fd5b8063095ea7b31161038d578063095ea7b31461041c578063150b7a02146104315780631bd8cc1a1461045d5780631be5e7ed1461047d57600080fd5b806301ffc9a7146103b457806306fdde03146103dc578063081812fc146103f1575b600080fd5b6103c76103c2366004613f0b565b610935565b60405190151581526020015b60405180910390f35b6103e4610946565b6040516103d39190613f78565b6104046103ff366004613f8b565b6109d8565b6040516001600160a01b0390911681526020016103d3565b61042f61042a366004613fb9565b6109ff565b005b61044461043f366004614026565b610a18565b6040516001600160e01b031990911681526020016103d3565b61047061046b3660046140dc565b610b72565b6040516103d3919061417f565b6103e461048b366004614192565b610c68565b6103e461049e3660046141c9565b610cb3565b61042f6104b1366004614249565b610dbe565b61042f6104c4366004614305565b610e54565b6104dc6104d7366004614346565b610ea7565b6040519081526020016103d3565b61042f6104f8366004614387565b610eb6565b61042f61050b366004613f8b565b610efe565b61042f61051e3660046143fa565b610f39565b61042f610531366004613fb9565b61103b565b61042f610544366004614305565b611088565b61042f610557366004613f8b565b6110a3565b6103c761056a366004613fb9565b6110e7565b61042f61057d366004614424565b6110f3565b61042f610590366004614485565b611132565b6103c76105a3366004613f8b565b611178565b61042f6105b636600461458c565b611197565b61042f6105c93660046145c0565b6111cd565b6103c76105dc3660046145c0565b6001600160a01b0316301490565b6104046105f8366004613f8b565b61122d565b61042f61060b366004613f8b565b61124a565b61042f61061e366004614678565b611295565b6106366106313660046146c0565b611336565b6040516103d39291906146e2565b6104dc610652366004613f8b565b6000908152610100602052604090205490565b6104dc6106733660046145c0565b61134e565b6104dc6106863660046145c0565b6113d4565b61042f610699366004613fb9565b611405565b61042f6106ac366004614707565b61145c565b61042f6106bf366004614762565b6114ab565b6104dc601481565b6103e4611532565b61042f6106e2366004614805565b611541565b61042f6106f536600461483a565b6115c8565b6103e46040518060400160405280600d81526020016c554e533a20526567697374727960981b81525081565b6103c76107343660046141c9565b6115da565b61042f610747366004613fb9565b611625565b61075f61075a366004614346565b61166a565b6040516103d39190614866565b61040461077a366004613f8b565b611746565b61079261078d3660046140dc565b611770565b6040516103d39291906148c8565b61042f6107ae3660046148ed565b611892565b61042f6107c1366004614249565b6118d9565b6107f06107d4366004613f8b565b600090815261013960205260409020546001600160401b031690565b6040516001600160401b0390911681526020016103d3565b6103e4610816366004613f8b565b611962565b6103e46108293660046145c0565b611a04565b6103e461083c366004613f8b565b611ace565b61042f61084f366004614387565b611b34565b61042f610862366004614958565b611b73565b6103c7610875366004613f8b565b611c42565b6103c761088836600461499f565b6001600160a01b039182166000908152606a6020908152604080832093909416825291909152205460ff1690565b60006104dc565b61042f6108cb366004614387565b611c85565b61042f611cc4565b6104706108e6366004614346565b611d4b565b61042f6108f93660046149d8565b611dfe565b61042f61090c366004614a0a565b611e8f565b6103e460405180604001604052806005815260200164302e392e3160d81b81525081565b600061094082612065565b92915050565b60606065805461095590614a66565b80601f016020809104026020016040519081016040528092919081815260200182805461098190614a66565b80156109ce5780601f106109a3576101008083540402835291602001916109ce565b820191906000526020600020905b8154815290600101906020018083116109b157829003601f168201915b5050505050905090565b60006109e3826120b5565b506000908152606960205260409020546001600160a01b031690565b80610a0981612114565b610a13838361217a565b505050565b60007f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378546001600160a01b0316610a4d61229c565b6001600160a01b031603610b0e57610a6361229c565b6001600160a01b03166342966c68856040518263ffffffff1660e01b8152600401610a9091815260200190565b600060405180830381600087803b158015610aaa57600080fd5b505af1158015610abe573d6000803e3d6000fd5b505050821580159150610ad85750610ad882840184614a9a565b15610af657610ae730856122ab565b610af185856123f9565b610b00565b610b0085856122ab565b50630a85bd0160e11b610b69565b60405162461bcd60e51b815260206004820152602560248201527f52656769737472793a204552433732315f524543454956494e475f50524f4849604482015264109255115160da1b60648201526084015b60405180910390fd5b95945050505050565b6060826001600160401b03811115610b8c57610b8c6144d7565b604051908082528060200260200182016040528015610bbf57816020015b6060815260200190600190039081610baa5790505b50905060005b83811015610c6057610c30858583818110610be257610be2614ab5565b9050602002810190610bf49190614acb565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508792506124a4915050565b828281518110610c4257610c42614ab5565b60200260200101819052508080610c5890614b27565b915050610bc5565b509392505050565b6060610cab84848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508692506124a4915050565b949350505050565b606060005a9050610cc58585856115da565b610d215760405162461bcd60e51b815260206004820152602760248201527f554e535265676973747279466f727761726465723a205349474e41545552455f6044820152661253959053125160ca1b6064820152608401610b60565b610db3610d3160208701876145c0565b30604088013584610d4560608b018b614acb565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284376000920191909152506124d992505050565b9150505b9392505050565b610134546001600160a01b0316610dd361229c565b6001600160a01b031614610df95760405162461bcd60e51b8152600401610b6090614b40565b6000610e0d610e08888a614b87565b6125ba565b509050610e1a8982611405565b610e278686868685612612565b8115610e4957610e498982610e44610e3f8b8d614b87565b612680565b612701565b505050505050505050565b80610e66610e6061229c565b82612743565b610e825760405162461bcd60e51b8152600401610b6090614b94565b81610e8c81612114565b610e95836127d4565b610ea0858585612841565b5050505050565b6000610c60610e088385614b87565b80610ec2610e6061229c565b610ede5760405162461bcd60e51b8152600401610b6090614b94565b81610ee881612114565b610ef587878787876129e8565b50505050505050565b80610f0a610e6061229c565b610f265760405162461bcd60e51b8152600401610b6090614b94565b81610f3081612114565b610a13836127d4565b610134546001600160a01b0316610f4e61229c565b6001600160a01b031614610f745760405162461bcd60e51b8152600401610b6090614b40565b610f7d816120b5565b42826001600160401b031611610fd55760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a204558504952595f494e5f5041535400000000000000006044820152606401610b60565b60008181526101396020908152604091829020805467ffffffffffffffff19166001600160401b038616908117909155915191825282917f93feabb03ab84f47fc85bf0c298103fca21d8c8bc376eae0c1e1c56b9d4f7789910160405180910390a25050565b611043612a4b565b6001600160a01b031661105461229c565b6001600160a01b03161461107a5760405162461bcd60e51b8152600401610b6090614bdd565b61108482826122ab565b5050565b610a1383838360405180602001604052806000815250611892565b806110af610e6061229c565b6110cb5760405162461bcd60e51b8152600401610b6090614b94565b816110d581612114565b6110de836127d4565b610a1383612b4c565b6000610db78383612743565b806110ff610e6061229c565b61111b5760405162461bcd60e51b8152600401610b6090614b94565b8161112581612114565b610ef58787878787612bf3565b8061113e610e6061229c565b61115a5760405162461bcd60e51b8152600401610b6090614b94565b8161116481612114565b61117086868686612cd2565b505050505050565b6000818152606760205260408120546001600160a01b03161515610940565b6111ca816040516020016111ab9190614c1f565b6040516020818303038152906040528051906020012060001c82612d72565b50565b610134546001600160a01b03166111e261229c565b6001600160a01b0316146112085760405162461bcd60e51b8152600401610b6090614b40565b6001600160a01b0316600090815261013660205260409020805460ff19166001179055565b600061123882611c42565b6112455761094082612d97565b919050565b80611256610e6061229c565b6112725760405162461bcd60e51b8152600401610b6090614b94565b61128461127d61229c565b3084612841565b61108461128f61229c565b836123f9565b60006112a0826125ba565b5090506112ab61229c565b6001600160a01b03166112bd8261122d565b6001600160a01b0316146113135760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b60565b61131c81612114565b61108461132761229c565b8261133185612680565b612df7565b6060806113438484612e7e565b909590945092505050565b60006001600160a01b0382166113b85760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b6064820152608401610b60565b506001600160a01b031660009081526068602052604090205490565b6001600160a01b038116600090815261013560205260408120546113f781612e9f565b6113ff578091505b50919050565b610134546001600160a01b031661141a61229c565b6001600160a01b0316146114405760405162461bcd60e51b8152600401610b6090614b40565b611449816127d4565b61108461145582612d97565b8383612841565b611464612a4b565b6001600160a01b031661147561229c565b6001600160a01b03161461149b5760405162461bcd60e51b8152600401610b6090614bdd565b6114a584846122ab565b50505050565b6114b58787612ee9565b6114bd61229c565b6001600160a01b03166114cf8661122d565b6001600160a01b0316146115255760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b60565b610ef58484848489612612565b60606066805461095590614a66565b610134546001600160a01b031661155661229c565b6001600160a01b03161461157c5760405162461bcd60e51b8152600401610b6090614b40565b61013361158a828483614c81565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b82826040516115bc929190614d69565b60405180910390a15050565b6110846115d361229c565b8383612f58565b6000610cab6115e885614d7d565b3085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061302692505050565b80611631610e6061229c565b61164d5760405162461bcd60e51b8152600401610b6090614b94565b8161165781612114565b6114a561166384612d97565b8585612841565b606060006116788385614e07565b905030330361173d5760005b8381101561173b5761170b61169761229c565b61169f61316f565b8787858181106116b1576116b1614ab5565b90506020028101906116c39190614acb565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250613183915050565b82828151811061171d5761171d614ab5565b6020026020010181905250808061173390614b27565b915050611684565b505b610cab816131b3565b6000818152606760205260408120546001600160a01b0316611769576000610940565b3092915050565b606080836001600160401b0381111561178b5761178b6144d7565b6040519080825280602002602001820160405280156117be57816020015b60608152602001906001900390816117a95790505b509150836001600160401b038111156117d9576117d96144d7565b60405190808252806020026020018201604052801561180c57816020015b60608152602001906001900390816117f75790505b50905060005b848110156118895761183c86868381811061182f5761182f614ab5565b9050602002013585612e7e565b84838151811061184e5761184e614ab5565b6020026020010184848151811061186757611867614ab5565b602002602001018290528290525050808061188190614b27565b915050611812565b50935093915050565b8161189e610e6061229c565b6118ba5760405162461bcd60e51b8152600401610b6090614b94565b826118c481612114565b6118cd846127d4565b611170868686866132de565b610134546001600160a01b03166118ee61229c565b6001600160a01b0316146119145760405162461bcd60e51b8152600401610b6090614b40565b600080611924610e08898b614b87565b9150915061193181613311565b6119498a83611943610e3f8c8e614b87565b86613371565b6119568787878786612612565b50505050505050505050565b600081815260c96020526040902080546060919061197f90614a66565b80601f01602080910402602001604051908101604052809291908181526020018280546119ab90614a66565b80156119f85780601f106119cd576101008083540402835291602001916119f8565b820191906000526020600020905b8154815290600101906020018083116119db57829003601f168201915b50505050509050919050565b6001600160a01b03811660009081526101356020526040902054606090611a2a81612e9f565b6113ff576000818152610138602052604090208054611a4890614a66565b80601f0160208091040260200160405190810160405280929190818152602001828054611a7490614a66565b8015611ac15780601f10611a9657610100808354040283529160200191611ac1565b820191906000526020600020905b815481529060010190602001808311611aa457829003601f168201915b5050505050915050919050565b6060611ad9826120b5565b6000611ae36133c4565b90506000815111611b035760405180602001604052806000815250610db7565b80611b0d846133d4565b604051602001611b1e929190614e7a565b6040516020818303038152906040529392505050565b80611b40610e6061229c565b611b5c5760405162461bcd60e51b8152600401610b6090614b94565b81611b6681612114565b610ef58787878787612612565b7f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87546001600160a01b0316611ba661229c565b6001600160a01b031614611bcc5760405162461bcd60e51b8152600401610b6090614bdd565b6020819003611bef576000611be382840184613f8b565b90506114a584826122ab565b6000611bfd82840184614ea9565b805190915060005b8181101561117057611c3086848381518110611c2357611c23614ab5565b60200260200101516122ab565b80611c3a81614b27565b915050611c05565b600081815261013960205260408120546001600160401b03161580159061094057505060009081526101396020526040902054426001600160401b039091161090565b80611c91610e6061229c565b611cad5760405162461bcd60e51b8152600401610b6090614b94565b81611cb781612114565b610ef587878787876134d4565b6000611cce61229c565b6001600160a01b0381166000908152610135602052604081205491925003611d425760405162461bcd60e51b815260206004820152602160248201527f52656769737472793a20524556455253455f5245434f52445f49535f454d50546044820152605960f81b6064820152608401610b60565b6111ca816134ea565b6060816001600160401b03811115611d6557611d656144d7565b604051908082528060200260200182016040528015611d9857816020015b6060815260200190600190039081611d835790505b50905060005b82811015611df757611dc7848483818110611dbb57611dbb614ab5565b90506020020135611962565b828281518110611dd957611dd9614ab5565b60200260200101819052508080611def90614b27565b915050611d9e565b5092915050565b610134546001600160a01b0316611e1361229c565b6001600160a01b031614611e395760405162461bcd60e51b8152600401610b6090614b40565b61013454611e50906001600160a01b0316846122ab565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c39528383604051611e82929190614d69565b60405180910390a2505050565b600054610100900460ff1615808015611eaf5750600054600160ff909116105b80611ec95750303b158015611ec9575060005460ff166001145b611f2c5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610b60565b6000805460ff191660011790558015611f4f576000805461ff0019166101001790555b61013480546001600160a01b0319166001600160a01b038716179055837f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec9237880546001600160a01b0319166001600160a01b03929092169190911790556040805180820182526013815272556e73746f707061626c6520446f6d61696e7360681b60208083019190915282518084019093526002835261155160f21b90830152611ff79161352f565b611fff61356f565b61200761356f565b61201083613598565b612019826135c8565b8015610ea0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b60006001600160e01b031982166380ac58cd60e01b148061209657506001600160e01b03198216635b5e139f60e01b145b8061094057506301ffc9a760e01b6001600160e01b0319831614610940565b6000818152606760205260409020546001600160a01b03166111ca5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b60565b3033036121715761212361316f565b81146111ca5760405162461bcd60e51b815260206004820152601760248201527f52656769737472793a20544f4b454e5f494e56414c49440000000000000000006044820152606401610b60565b6111ca816135f8565b600061218582612d97565b9050806001600160a01b0316836001600160a01b0316036121f25760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b6064820152608401610b60565b806001600160a01b031661220461229c565b6001600160a01b0316148061222057506122208161088861229c565b6122925760405162461bcd60e51b815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c00006064820152608401610b60565b610a138383613626565b60006122a6613694565b905090565b6001600160a01b0382166123015760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610b60565b6000818152606760205260409020546001600160a01b0316156123665760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610b60565b612372600083836136af565b6001600160a01b038216600090815260686020526040812080546001929061239b908490614f39565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b03861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b6000612403612a4b565b905061240f8183613626565b60008051602061529383398151915254604080516020808201869052825180830390910181528183019283905263e3dec8fb60e01b9092526001600160a01b0390921691829163e3dec8fb9161246c918891309190604401614f4c565b600060405180830381600087803b15801561248657600080fd5b505af115801561249a573d6000803e3d6000fd5b5050505050505050565b6060610db7836040516020016124ba9190614c1f565b6040516020818303038152906040528051906020012060001c8361378b565b60606124e4856135f8565b600080876001600160a01b0316866124fe8b8a8989613183565b60405161250b9190614c1f565b60006040518083038160008787f1925050503d8060008114612549576040519150601f19603f3d011682016040523d82523d6000602084013e61254e565b606091505b50909250905061255f603f87614f8e565b5a1161256d5761256d614fa2565b6125ad82826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061386d565b9998505050505050505050565b805160009081905b801561260c578291506125f882856125db600185614fb8565b815181106125eb576125eb614ab5565b60200260200101516138a6565b92508061260481614fcb565b9150506125c2565b50915091565b60005b848110156111705761266e86868381811061263257612632614ab5565b90506020028101906126449190614acb565b86868581811061265657612656614ab5565b90506020028101906126689190614acb565b86612bf3565b8061267881614b27565b915050612615565b606060008260008151811061269757612697614ab5565b602002602001015190506000600190505b8351811015611df757818482815181106126c4576126c4614ab5565b60200260200101516040516020016126dd929190614fe2565b604051602081830303815290604052915080806126f990614b27565b9150506126a8565b61dead6001600160a01b0384161480159061273357506001600160a01b03831660009081526101356020526040902054155b15610a1357610a13838383612df7565b60008061274f8361122d565b90506001600160a01b03811615801590610cab5750806001600160a01b0316846001600160a01b031614806127a957506001600160a01b038082166000908152606a602090815260408083209388168352929052205460ff165b80610cab5750836001600160a01b03166127c2846109d8565b6001600160a01b031614949350505050565b6127dd81613952565b6040516020016127ef91815260200190565b60408051601f198184030181528282528051602091820120600085815260cb9092529181209190915582917f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9190a250565b826001600160a01b031661285482612d97565b6001600160a01b0316146128b85760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b6064820152608401610b60565b6001600160a01b03821661291a5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610b60565b6129258383836136af565b612930600082613626565b6001600160a01b0383166000908152606860205260408120805460019290612959908490614fb8565b90915550506001600160a01b0382166000908152606860205260408120805460019290612987908490614f39565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60005b8481101561117057612a39868683818110612a0857612a08614ab5565b90506020020135858584818110612a2157612a21614ab5565b9050602002810190612a339190614acb565b85612cd2565b80612a4381614b27565b9150506129eb565b600080516020615293833981519152546000906001600160a01b03168015612b485760405163721804d360e11b81523060048201526000906001600160a01b0383169063e43009a690602401602060405180830381865afa158015612ab4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ad8919061501e565b60405163e66f960360e01b8152600481018290529091506001600160a01b0383169063e66f960390602401602060405180830381865afa158015612b20573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b449190615037565b9250505b5090565b6000612b5782612d97565b9050612b65816000846136af565b612b70600083613626565b6001600160a01b0381166000908152606860205260408120805460019290612b99908490614fb8565b909155505060008281526067602052604080822080546001600160a01b0319169055518391906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b60008585604051602001612c08929190615054565b60408051601f198184030181528282528051602091820120601f8901829004820284018201909252878352909250612c5c9183918990899081908401838280828437600092019190915250612d7292505050565b6111708187878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061397a915050565b612cdb84613aaf565b612d275760405162461bcd60e51b815260206004820152601c60248201527f5265636f726453746f726167653a204b45595f4e4f545f464f554e44000000006044820152606401610b60565b6114a584612d3486611962565b85858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525087925061397a915050565b612d7b82613aaf565b61108457600082815260c960205260409020610a138282615064565b6000818152606760205260408120546001600160a01b0316806109405760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b60565b6000828152610138602052604090208054612e1190614a66565b9050600003612e3557600082815261013860205260409020612e338282615064565b505b6001600160a01b03831660008181526101356020526040808220859055518492917feb76a21470988c474a21f690cc28fee1ed511bd812dc3c21fd0f49c5e5d4708a91a3505050565b606080612e8a84611962565b9150612e96848461378b565b90509250929050565b6000818152610137602052604081205460ff16801561094057506101366000612ec661229c565b6001600160a01b0316815260208101919091526040016000205460ff1692915050565b60008051602061529383398151915254604051633805550f60e01b81526001600160a01b03909116908190633805550f90612f2a9086908690600401614d69565b600060405180830381600087803b158015612f4457600080fd5b505af1158015610ef5573d6000803e3d6000fd5b816001600160a01b0316836001600160a01b031603612fb95760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610b60565b6001600160a01b038381166000818152606a6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561306d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613091919061501e565b9050600061313f8660600151805190602001208688602001516040516020016130df9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561316557508551613165906001600160a01b03168286613ad5565b9695505050505050565b60003033036131805750601f193601355b90565b606082858560405160200161319a93929190615123565b6040516020818303038152906040529050949350505050565b606081516001600160401b038111156131ce576131ce6144d7565b60405190808252806020026020018201604052801561320157816020015b60608152602001906001900390816131ec5790505b50905060005b82518110156113ff57600080306001600160a01b031685848151811061322f5761322f614ab5565b60200260200101516040516132449190614c1f565b600060405180830381855af49150503d806000811461327f576040519150601f19603f3d011682016040523d82523d6000602084013e613284565b606091505b50915091506132ac82826040518060600160405280602781526020016152b36027913961386d565b8484815181106132be576132be614ab5565b6020026020010181905250505080806132d690614b27565b915050613207565b6132e9848484612841565b6132f584848484613c17565b6114a55760405162461bcd60e51b8152600401610b6090615162565b6000818152610137602052604090205460ff16156111ca5760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a20544f4b454e5f555047524144454400000000000000006044820152606401610b60565b61337b84846122ab565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952836040516133ab9190613f78565b60405180910390a280156114a5576114a5848484612701565b6060610133805461095590614a66565b6060816000036133fb5750506040805180820190915260018152600360fc1b602082015290565b8160005b8115613425578061340f81614b27565b915061341e9050600a83614f8e565b91506133ff565b6000816001600160401b0381111561343f5761343f6144d7565b6040519080825280601f01601f191660200182016040528015613469576020820181803683370190505b5090505b8415610cab5761347e600183614fb8565b915061348b600a866151b4565b613496906030614f39565b60f81b8183815181106134ab576134ab614ab5565b60200101906001600160f81b031916908160001a9053506134cd600a86614f8e565b945061346d565b6134dd816127d4565b610ea08585858585612612565b6001600160a01b03811660008181526101356020526040808220829055517ffcf5eec0cfa3e6332f5f0e63ec242d71f866a61d121d6cdf5c2eb3b668a26c4f9190a250565b600054610100900460ff166135565760405162461bcd60e51b8152600401610b60906151c8565b60656135628382615064565b506066610a138282615064565b600054610100900460ff166135965760405162461bcd60e51b8152600401610b60906151c8565b565b600054610100900460ff166135bf5760405162461bcd60e51b8152600401610b60906151c8565b6111ca81613d1c565b600054610100900460ff166135ef5760405162461bcd60e51b8152600401610b60906151c8565b6111ca81613d75565b60008181526101006020526040902054613613906001614f39565b6000918252610100602052604090912055565b600081815260696020526040902080546001600160a01b0319166001600160a01b038416908117909155819061365b82612d97565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60003033036136aa575060331936013560601c90565b503390565b6001600160a01b0382166136c6576136c681613311565b600081815261013960205260409020546001600160401b031615613761576001600160a01b0382161580159061371557506136ff612a4b565b6001600160a01b0316826001600160a01b031614155b6137615760405162461bcd60e51b815260206004820152601960248201527f52656769737472793a20544f4b454e5f455850495241424c45000000000000006044820152606401610b60565b6001600160a01b03831660009081526101356020526040902054819003610a1357610a13836134ea565b606061379682612e9f565b156137b05750604080516020810190915260008152610940565b60ca60006137bd84613952565b8152602001908152602001600020600084815260200190815260200160002080546137e790614a66565b80601f016020809104026020016040519081016040528092919081815260200182805461381390614a66565b80156138605780601f1061383557610100808354040283529160200191613860565b820191906000526020600020905b81548152906001019060200180831161384357829003601f168201915b5050505050905092915050565b6060831561387c575081610db7565b82511561388c5782518084602001fd5b8160405162461bcd60e51b8152600401610b609190613f78565b600081516000036138f15760405162461bcd60e51b815260206004820152601560248201527452656769737472793a204c4142454c5f454d50545960581b6044820152606401610b60565b82826040516020016139039190614c1f565b60405160208183030381529060405280519060200120604051602001613933929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b600081815260cb602052604081205415612b4857600082815260cb6020526040902054610940565b60ca600061398783613952565b8152602001908152602001600020600085815260200190815260200160002080546139b190614a66565b9050600003613a0957826040516139c89190614c1f565b6040518091039020817f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f8685604051613a009190613f78565b60405180910390a35b8160ca6000613a1784613952565b815260200190815260200160002060008681526020019081526020016000209081613a429190615064565b5081604051613a519190614c1f565b604051809103902083604051613a679190614c1f565b6040518091039020827f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d928686604051613aa19291906146e2565b60405180910390a450505050565b600081815260c9602052604081208054829190613acb90614a66565b9050119050919050565b6000806000613ae48585613dc3565b90925090506000816004811115613afd57613afd615213565b148015613b1b5750856001600160a01b0316826001600160a01b0316145b15613b2b57600192505050610db7565b600080876001600160a01b0316631626ba7e60e01b8888604051602401613b53929190615229565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051613b919190614c1f565b600060405180830381855afa9150503d8060008114613bcc576040519150601f19603f3d011682016040523d82523d6000602084013e613bd1565b606091505b5091509150818015613be4575080516020145b8015613c0b57508051630b135d3f60e11b90613c09908301602090810190840161501e565b145b98975050505050505050565b60006001600160a01b0384163b15613d1457836001600160a01b031663150b7a02613c4061229c565b8786866040518563ffffffff1660e01b8152600401613c629493929190615242565b6020604051808303816000875af1925050508015613c9d575060408051601f3d908101601f19168201909252613c9a91810190615275565b60015b613cfa573d808015613ccb576040519150601f19603f3d011682016040523d82523d6000602084013e613cd0565b606091505b508051600003613cf25760405162461bcd60e51b8152600401610b6090615162565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610cab565b506001610cab565b600054610100900460ff16613d435760405162461bcd60e51b8152600401610b60906151c8565b806000805160206152938339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b600054610100900460ff16613d9c5760405162461bcd60e51b8152600401610b60906151c8565b807f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87613d54565b6000808251604103613df95760208301516040840151606085015160001a613ded87828585613e08565b94509450505050613e01565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613e3f5750600090506003613eec565b8460ff16601b14158015613e5757508460ff16601c14155b15613e685750600090506004613eec565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613ebc573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613ee557600060019250925050613eec565b9150600090505b94509492505050565b6001600160e01b0319811681146111ca57600080fd5b600060208284031215613f1d57600080fd5b8135610db781613ef5565b60005b83811015613f43578181015183820152602001613f2b565b50506000910152565b60008151808452613f64816020860160208601613f28565b601f01601f19169290920160200192915050565b602081526000610db76020830184613f4c565b600060208284031215613f9d57600080fd5b5035919050565b6001600160a01b03811681146111ca57600080fd5b60008060408385031215613fcc57600080fd5b8235613fd781613fa4565b946020939093013593505050565b60008083601f840112613ff757600080fd5b5081356001600160401b0381111561400e57600080fd5b602083019150836020828501011115613e0157600080fd5b60008060008060006080868803121561403e57600080fd5b853561404981613fa4565b9450602086013561405981613fa4565b93506040860135925060608601356001600160401b0381111561407b57600080fd5b61408788828901613fe5565b969995985093965092949392505050565b60008083601f8401126140aa57600080fd5b5081356001600160401b038111156140c157600080fd5b6020830191508360208260051b8501011115613e0157600080fd5b6000806000604084860312156140f157600080fd5b83356001600160401b0381111561410757600080fd5b61411386828701614098565b909790965060209590950135949350505050565b600082825180855260208086019550808260051b84010181860160005b8481101561417257601f19868403018952614160838351613f4c565b98840198925090830190600101614144565b5090979650505050505050565b602081526000610db76020830184614127565b6000806000604084860312156141a757600080fd5b83356001600160401b038111156141bd57600080fd5b61411386828701613fe5565b6000806000604084860312156141de57600080fd5b83356001600160401b03808211156141f557600080fd5b908501906080828803121561420957600080fd5b9093506020850135908082111561421f57600080fd5b5061422c86828701613fe5565b9497909650939450505050565b8035801515811461124557600080fd5b60008060008060008060008060a0898b03121561426557600080fd5b883561427081613fa4565b975060208901356001600160401b038082111561428c57600080fd5b6142988c838d01614098565b909950975060408b01359150808211156142b157600080fd5b6142bd8c838d01614098565b909750955060608b01359150808211156142d657600080fd5b506142e38b828c01614098565b90945092506142f6905060808a01614239565b90509295985092959890939650565b60008060006060848603121561431a57600080fd5b833561432581613fa4565b9250602084013561433581613fa4565b929592945050506040919091013590565b6000806020838503121561435957600080fd5b82356001600160401b0381111561436f57600080fd5b61437b85828601614098565b90969095509350505050565b60008060008060006060868803121561439f57600080fd5b85356001600160401b03808211156143b657600080fd5b6143c289838a01614098565b909750955060208801359150808211156143db57600080fd5b506143e888828901614098565b96999598509660400135949350505050565b6000806040838503121561440d57600080fd5b82356001600160401b0381168114613fd757600080fd5b60008060008060006060868803121561443c57600080fd5b85356001600160401b038082111561445357600080fd5b61445f89838a01613fe5565b9097509550602088013591508082111561447857600080fd5b506143e888828901613fe5565b6000806000806060858703121561449b57600080fd5b8435935060208501356001600160401b038111156144b857600080fd5b6144c487828801613fe5565b9598909750949560400135949350505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715614515576145156144d7565b604052919050565b600082601f83011261452e57600080fd5b81356001600160401b03811115614547576145476144d7565b61455a601f8201601f19166020016144ed565b81815284602083860101111561456f57600080fd5b816020850160208301376000918101602001919091529392505050565b60006020828403121561459e57600080fd5b81356001600160401b038111156145b457600080fd5b610cab8482850161451d565b6000602082840312156145d257600080fd5b8135610db781613fa4565b60006001600160401b038211156145f6576145f66144d7565b5060051b60200190565b600061461361460e846145dd565b6144ed565b8381529050602080820190600585901b84018681111561463257600080fd5b845b8181101561466d5780356001600160401b038111156146535760008081fd5b61465f8982890161451d565b855250928201928201614634565b505050509392505050565b60006020828403121561468a57600080fd5b81356001600160401b038111156146a057600080fd5b8201601f810184136146b157600080fd5b610cab84823560208401614600565b600080604083850312156146d357600080fd5b50508035926020909101359150565b6040815260006146f56040830185613f4c565b8281036020840152610db38185613f4c565b6000806000806060858703121561471d57600080fd5b843561472881613fa4565b93506020850135925060408501356001600160401b0381111561474a57600080fd5b61475687828801613fe5565b95989497509550505050565b60008060008060008060006080888a03121561477d57600080fd5b87356001600160401b038082111561479457600080fd5b6147a08b838c01613fe5565b909950975060208a0135965060408a01359150808211156147c057600080fd5b6147cc8b838c01614098565b909650945060608a01359150808211156147e557600080fd5b506147f28a828b01614098565b989b979a50959850939692959293505050565b6000806020838503121561481857600080fd5b82356001600160401b0381111561482e57600080fd5b61437b85828601613fe5565b6000806040838503121561484d57600080fd5b823561485881613fa4565b9150612e9660208401614239565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156148bb57603f198886030184526148a9858351613f4c565b9450928501929085019060010161488d565b5092979650505050505050565b6040815260006148db6040830185614127565b8281036020840152610db38185614127565b6000806000806080858703121561490357600080fd5b843561490e81613fa4565b9350602085013561491e81613fa4565b92506040850135915060608501356001600160401b0381111561494057600080fd5b61494c8782880161451d565b91505092959194509250565b60008060006040848603121561496d57600080fd5b833561497881613fa4565b925060208401356001600160401b0381111561499357600080fd5b61422c86828701613fe5565b600080604083850312156149b257600080fd5b82356149bd81613fa4565b915060208301356149cd81613fa4565b809150509250929050565b6000806000604084860312156149ed57600080fd5b8335925060208401356001600160401b0381111561499357600080fd5b60008060008060808587031215614a2057600080fd5b8435614a2b81613fa4565b93506020850135614a3b81613fa4565b92506040850135614a4b81613fa4565b91506060850135614a5b81613fa4565b939692955090935050565b600181811c90821680614a7a57607f821691505b6020821081036113ff57634e487b7160e01b600052602260045260246000fd5b600060208284031215614aac57600080fd5b610db782614239565b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112614ae257600080fd5b8301803591506001600160401b03821115614afc57600080fd5b602001915036819003821315613e0157600080fd5b634e487b7160e01b600052601160045260246000fd5b600060018201614b3957614b39614b11565b5060010190565b60208082526027908201527f52656769737472793a2053454e4445525f49535f4e4f545f4d494e54494e475f60408201526626a0a720a3a2a960c91b606082015260800190565b6000610db7368484614600565b60208082526029908201527f52656769737472793a2053454e4445525f49535f4e4f545f415050524f5645446040820152682fa7a92fa7aba722a960b91b606082015260800190565b60208082526022908201527f52656769737472793a20494e53554646494349454e545f5045524d495353494f6040820152614e5360f01b606082015260800190565b60008251614c31818460208701613f28565b9190910192915050565b601f821115610a1357600081815260208120601f850160051c81016020861015614c625750805b601f850160051c820191505b8181101561117057828155600101614c6e565b6001600160401b03831115614c9857614c986144d7565b614cac83614ca68354614a66565b83614c3b565b6000601f841160018114614ce05760008515614cc85750838201355b600019600387901b1c1916600186901b178355610ea0565b600083815260209020601f19861690835b82811015614d115786850135825560209485019460019092019101614cf1565b5086821015614d2e5760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b602081526000610cab602083018486614d40565b600060808236031215614d8f57600080fd5b604051608081016001600160401b038282108183111715614db257614db26144d7565b8160405284359150614dc382613fa4565b81835260208501356020840152604085013560408401526060850135915080821115614dee57600080fd5b50614dfb3682860161451d565b60608301525092915050565b6000614e1561460e846145dd565b80848252602080830192508560051b850136811115614e3357600080fd5b855b81811015614e6e5780356001600160401b03811115614e545760008081fd5b614e6036828a0161451d565b865250938201938201614e35565b50919695505050505050565b60008351614e8c818460208801613f28565b835190830190614ea0818360208801613f28565b01949350505050565b60006020808385031215614ebc57600080fd5b82356001600160401b03811115614ed257600080fd5b8301601f81018513614ee357600080fd5b8035614ef161460e826145dd565b81815260059190911b82018301908381019087831115614f1057600080fd5b928401925b82841015614f2e57833582529284019290840190614f15565b979650505050505050565b8082018082111561094057610940614b11565b6001600160a01b03848116825283166020820152606060408201819052600090610b6990830184613f4c565b634e487b7160e01b600052601260045260246000fd5b600082614f9d57614f9d614f78565b500490565b634e487b7160e01b600052600160045260246000fd5b8181038181111561094057610940614b11565b600081614fda57614fda614b11565b506000190190565b60008351614ff4818460208801613f28565b601760f91b9083019081528351615012816001840160208801613f28565b01600101949350505050565b60006020828403121561503057600080fd5b5051919050565b60006020828403121561504957600080fd5b8151610db781613fa4565b8183823760009101908152919050565b81516001600160401b0381111561507d5761507d6144d7565b6150918161508b8454614a66565b84614c3b565b602080601f8311600181146150c657600084156150ae5750858301515b600019600386901b1c1916600185901b178555611170565b600085815260208120601f198616915b828110156150f5578886015182559484019460019091019084016150d6565b50858210156151135787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60008451615135818460208901613f28565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6000826151c3576151c3614f78565b500690565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b634e487b7160e01b600052602160045260246000fd5b828152604060208201526000610cab6040830184613f4c565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061316590830184613f4c565b60006020828403121561528757600080fd5b8151610db781613ef556febe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a","storage":{}},"0x6ac8f19d1e0f81147cdf2a1e53cb1f4e18417204":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610296575f3560e01c80636352211e11610161578063c93ab3fd116100ca578063e985e9c511610084578063e985e9c5146106c8578063eb8ae530146106db578063ed70554d146106ee578063f242432a1461070d578063f2fde38b14610720578063fd0cd0d914610733575f80fd5b8063c93ab3fd14610647578063cf4088231461065a578063d8c9921a1461066d578063d9a50c1214610680578063da8c229e14610693578063e0dba60f146106b5575f80fd5b8063a22cb4651161011b578063a22cb465146105d5578063a4014982146105e8578063adf4960a146105fb578063b6bcad261461060e578063c475abff14610621578063c658e08614610634575f80fd5b80636352211e146105595780636e5d6ad21461056c578063715018a6146105975780638b4dfa751461059f5780638cf8b41e146105b25780638da5cb5b146105c5575f80fd5b80631f4e1504116102035780633f15457f116101bd5780633f15457f146104b1578063402906fc146104d857806341415eab146105005780634e1273f41461051357806353095467146105335780635d3590d514610546575f80fd5b80631f4e15041461042b57806320c38e2b1461043e57806324c1af44146104515780632b20e397146104645780632eb2c2d61461048b57806333c69ea91461049e575f80fd5b80630e4cd725116102545780630e4cd725146103a05780630e89341c146103b357806314ab9038146103c6578063150b7a02146103d95780631534e177146104055780631896f70a14610418575f80fd5b8062fdd58e1461029a5780630178fe3f146102c057806301ffc9a71461030657806306fdde0314610329578063081812fc14610360578063095ea7b31461038b575b5f80fd5b6102ad6102a8366004614316565b610746565b6040519081526020015b60405180910390f35b6102d36102ce366004614340565b6107f0565b604080516001600160a01b03909416845263ffffffff90921660208401526001600160401b0316908201526060016102b7565b61031961031436600461436c565b61081f565b60405190151581526020016102b7565b6103536040518060400160405280600b81526020016a2730b6b2abb930b83832b960a91b81525081565b6040516102b791906143d4565b61037361036e366004614340565b61085e565b6040516001600160a01b0390911681526020016102b7565b61039e610399366004614316565b6108a0565b005b6103196103ae3660046143e6565b6108e5565b6103536103c1366004614340565b61095e565b61039e6103d436600461442f565b6109cc565b6103ec6103e736600461449d565b610ac0565b6040516001600160e01b031990911681526020016102b7565b61039e61041336600461450a565b610c96565b61039e6104263660046143e6565b610cc0565b600754610373906001600160a01b031681565b61035361044c366004614340565b610d75565b6102ad61045f3660046145f6565b610e0c565b6103737f000000000000000000000000c965345edac823d56812cd20a10316233916a60581565b61039e610499366004614717565b610fe7565b61039e6104ac3660046147bd565b61121a565b6103737f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a981565b6104eb6104e6366004614811565b6113e6565b60405163ffffffff90911681526020016102b7565b61031961050e3660046143e6565b611480565b610526610521366004614832565b6114b8565b6040516102b79190614928565b600554610373906001600160a01b031681565b61039e61055436600461493a565b6115d7565b610373610567366004614340565b611655565b61057f61057a366004614978565b61165f565b6040516001600160401b0390911681526020016102b7565b61039e61178e565b61039e6105ad3660046149aa565b6117a1565b61057f6105c03660046149e9565b6118c0565b5f546001600160a01b0316610373565b61039e6105e3366004614a6b565b611c28565b6102ad6105f6366004614a97565b611cfd565b610319610609366004614b12565b611e38565b61039e61061c36600461450a565b611e5c565b6102ad61062f366004614b33565b61209e565b6102ad610642366004614b53565b6122fd565b61039e610655366004614bc0565b6124bd565b61039e610668366004614c26565b612605565b61039e61067b366004614c5b565b612794565b61031961068e366004614b33565b61285d565b6103196106a136600461450a565b60046020525f908152604090205460ff1681565b61039e6106c3366004614a6b565b612938565b6103196106d6366004614c86565b61299f565b61039e6106e9366004614cb2565b6129cc565b6102ad6106fc366004614340565b60016020525f908152604090205481565b61039e61071b366004614d15565b612d59565b61039e61072e36600461450a565b612e06565b610319610741366004614340565b612e7c565b5f6001600160a01b0383166107b65760405162461bcd60e51b815260206004820152602b60248201527f455243313135353a2062616c616e636520717565727920666f7220746865207a60448201526a65726f206164647265737360a81b60648201526084015b60405180910390fd5b5f6107c083611655565b9050836001600160a01b0316816001600160a01b0316036107e55760019150506107ea565b5f9150505b92915050565b5f8181526001602052604090205460a081901c60c082901c610813838383612f4d565b90959094509092509050565b5f6001600160e01b03198216631b05885b60e31b148061084f57506001600160e01b03198216630a85bd0160e11b145b806107ea57506107ea82612f80565b5f8061086983611655565b90506001600160a01b03811661088157505f92915050565b5f838152600360205260409020546001600160a01b03165b9392505050565b5f6108aa826107f0565b50915050603f1960408216016108d65760405163a2a7201360e01b8152600481018390526024016107ad565b6108e08383612fcf565b505050565b5f8080806108f2866107f0565b925092509250846001600160a01b0316836001600160a01b0316148061091d575061091d838661299f565b8061094157506001600160a01b0385166109368761085e565b6001600160a01b0316145b8015610954575061095282826130de565b155b9695505050505050565b6005546040516303a24d0760e21b8152600481018390526060916001600160a01b031690630e89341c906024015f60405180830381865afa1580156109a5573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526107ea9190810190614d78565b816109d78133611480565b6109f857803360405163168ab55d60e31b81526004016107ad929190614dea565b8260105f610a05836107f0565b5091505063ffffffff8282161615610a335760405163a2a7201360e01b8152600481018490526024016107ad565b604051630295720760e31b8152600481018790526001600160401b03861660248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906314ab9038906044015b5f604051808303815f87803b158015610aa2575f80fd5b505af1158015610ab4573d5f803e3d5ffd5b50505050505050505050565b5f336001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a6051614610b0a5760405163032634a760e31b815260040160405180910390fd5b5f808080610b1a86880188614e01565b83516020850120939750919550935091508890808214610b57576040516331970f3360e21b815260048101829052602481018390526044016107ad565b604051630a3b53db60e21b81526001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906328ed4f6c90610ba59085903090600401614dea565b5f604051808303815f87803b158015610bbc575f80fd5b505af1158015610bce573d5f803e3d5ffd5b5050604051636b727d4360e11b8152600481018d90525f92506276a70091506001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063d6e4fa8690602401602060405180830381865afa158015610c3c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c609190614e64565b610c6a9190614e8f565b9050610c7d87878761ffff16848861310d565b50630a85bd0160e11b9c9b505050505050505050505050565b610c9e613215565b600580546001600160a01b0319166001600160a01b0392909216919091179055565b81610ccb8133611480565b610cec57803360405163168ab55d60e31b81526004016107ad929190614dea565b8260085f610cf9836107f0565b5091505063ffffffff8282161615610d275760405163a2a7201360e01b8152600481018490526024016107ad565b604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a90610a8b9089908990600401614dea565b60066020525f908152604090208054610d8d90614eb6565b80601f0160208091040260200160405190810160405280929190818152602001828054610db990614eb6565b8015610e045780601f10610ddb57610100808354040283529160200191610e04565b820191905f5260205f20905b815481529060010190602001808311610de757829003601f168201915b505050505081565b5f87610e188133611480565b610e3957803360405163168ab55d60e31b81526004016107ad929190614dea565b87516020890120610e4a8a8261326e565b9250610e568a8461329a565b610e6083866133d3565b610e6b8a848b613406565b50610e788a8487876134cd565b9350610e8383613510565b610f33576040516305ef2c7f60e41b8152600481018b9052602481018290523060448201526001600160a01b0388811660648301526001600160401b03881660848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610f0a575f80fd5b505af1158015610f1c573d5f803e3d5ffd5b50505050610f2e8a848b8b89896135c6565b610fda565b6040516305ef2c7f60e41b8152600481018b9052602481018290523060448201526001600160a01b0388811660648301526001600160401b03881660848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610fb6575f80fd5b505af1158015610fc8573d5f803e3d5ffd5b50505050610fda8a848b8b89896135fc565b5050979650505050505050565b81518351146110495760405162461bcd60e51b815260206004820152602860248201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206044820152670dad2e6dac2e8c6d60c31b60648201526084016107ad565b6001600160a01b03841661106f5760405162461bcd60e51b81526004016107ad90614eee565b6001600160a01b03851633148061108b575061108b853361299f565b6110f25760405162461bcd60e51b815260206004820152603260248201527f455243313135353a207472616e736665722063616c6c6572206973206e6f74206044820152711bdddb995c881b9bdc88185c1c1c9bdd995960721b60648201526084016107ad565b5f5b83518110156111ad575f84828151811061111057611110614f33565b602002602001015190505f84838151811061112d5761112d614f33565b602002602001015190505f805f611143856107f0565b9250925092506111548583836136b6565b83600114801561117557508a6001600160a01b0316836001600160a01b0316145b6111915760405162461bcd60e51b81526004016107ad90614f47565b61119d858b848461375d565b50505050508060010190506110f4565b50836001600160a01b0316856001600160a01b0316336001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516111fd929190614f91565b60405180910390a461121333868686868661379d565b5050505050565b5f611225858561326e565b905061123181846133d3565b5f808061123d846107f0565b919450925090506001600160a01b03831615806112ea57506040516302571be360e01b81526004810185905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa1580156112ba573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112de9190614fbe565b6001600160a01b031614155b1561130857604051635374b59960e01b815260040160405180910390fd5b5f806113138a6107f0565b90935091508a905061134f576113298633611480565b61134a57853360405163168ab55d60e31b81526004016107ad929190614dea565b61137a565b6113598a33611480565b61137a57893360405163168ab55d60e31b81526004016107ad929190614dea565b6113858689846138f7565b611390878483613932565b9650620100008416158015906113b457508363ffffffff1688851763ffffffff1614155b156113d55760405163a2a7201360e01b8152600481018790526024016107ad565b96831796610ab486868a868b613977565b5f826113f28133611480565b61141357803360405163168ab55d60e31b81526004016107ad929190614dea565b8360025f611420836107f0565b5091505063ffffffff828216161561144e5760405163a2a7201360e01b8152600481018490526024016107ad565b5f808061145a8a6107f0565b9250925092506114738a84848c61ffff16178485613977565b5098975050505050505050565b5f80808061148d866107f0565b925092509250846001600160a01b0316836001600160a01b031614806109415750610941838661299f565b6060815183511461151d5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b60648201526084016107ad565b5f83516001600160401b0381111561153757611537614525565b604051908082528060200260200182016040528015611560578160200160208202803683370190505b5090505f5b84518110156115cf576115aa85828151811061158357611583614f33565b602002602001015185838151811061159d5761159d614f33565b6020026020010151610746565b8282815181106115bc576115bc614f33565b6020908102919091010152600101611565565b509392505050565b6115df613215565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af115801561162b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061164f9190614fd9565b50505050565b5f6107ea82613a1e565b5f8061166b858561326e565b905061167681613510565b61169357604051635374b59960e01b815260040160405180910390fd5b5f61169e86336108e5565b9050801580156116b557506116b38233611480565b155b156116d757813360405163168ab55d60e31b81526004016107ad929190614dea565b5f80806116e3856107f0565b925092509250831580156116fa5750620400008216155b1561171b5760405163a2a7201360e01b8152600481018690526024016107ad565b5f6117258a6107f0565b92505050611734888383613932565b97506117428685858b613a33565b6040516001600160401b038916815286907ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b1329060200160405180910390a2509598975050505050505050565b611796613215565b61179f5f613a49565b565b6117b85f805160206154fc8339815191528461326e565b6117c28133611480565b6117e357803360405163168ab55d60e31b81526004016107ad929190614dea565b306001600160a01b0384160361181757604051632ca49b0d60e11b81526001600160a01b03841660048201526024016107ad565b6118376118315f805160206154fc8339815191528661326e565b83613a98565b604051632142170760e11b81523060048201526001600160a01b038481166024830152604482018690527f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906342842e0e906064015f604051808303815f87803b1580156118a4575f80fd5b505af11580156118b6573d5f803e3d5ffd5b5050505050505050565b5f8086866040516118d2929190614ff4565b6040519081900381206331a9108f60e11b82526004820181905291505f907f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa15801561193f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119639190614fbe565b90506001600160a01b0381163314801590611a09575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063e985e9c590604401602060405180830381865afa1580156119e3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a079190614fd9565b155b15611a4157611a255f805160206154fc8339815191528361326e565b3360405163168ab55d60e31b81526004016107ad929190614dea565b6040516323b872dd60e01b81526001600160a01b038281166004830152306024830152604482018490527f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906323b872dd906064015f604051808303815f87803b158015611aae575f80fd5b505af1158015611ac0573d5f803e3d5ffd5b5050604051630a3b53db60e21b81526001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a6051692506328ed4f6c9150611b129085903090600401614dea565b5f604051808303815f87803b158015611b29575f80fd5b505af1158015611b3b573d5f803e3d5ffd5b5050604051636b727d4360e11b8152600481018590526276a70092507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b0316915063d6e4fa8690602401602060405180830381865afa158015611ba7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611bcb9190614e64565b611bd59190614e8f565b9250611c1d88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508a9250505061ffff8816868861310d565b505095945050505050565b6001600160a01b0382163303611c925760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084016107ad565b335f8181526002602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b335f9081526004602052604081205460ff16611d2b5760405162461bcd60e51b81526004016107ad90615003565b5f8787604051611d3c929190614ff4565b604051908190038120633f2891eb60e21b8252600482018190523060248301526044820187905291507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b03169063fca247ac906064016020604051808303815f875af1158015611db5573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611dd99190614e64565b9150611e2d88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508a9250505061ffff8616611e276276a70087614e8f565b8861310d565b509695505050505050565b5f80611e43846107f0565b50841663ffffffff908116908516149250505092915050565b611e64613215565b6007546001600160a01b031615611f785760075460405163a22cb46560e01b81526001600160a01b0391821660048201525f60248201527f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063a22cb465906044015f604051808303815f87803b158015611ee0575f80fd5b505af1158015611ef2573d5f803e3d5ffd5b505060075460405163a22cb46560e01b81526001600160a01b0391821660048201525f60248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9909116925063a22cb46591506044015f604051808303815f87803b158015611f61575f80fd5b505af1158015611f73573d5f803e3d5ffd5b505050505b600780546001600160a01b0319166001600160a01b0383169081179091551561209b5760075460405163a22cb46560e01b81526001600160a01b039182166004820152600160248201527f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063a22cb465906044015f604051808303815f87803b158015612007575f80fd5b505af1158015612019573d5f803e3d5ffd5b505060075460405163a22cb46560e01b81526001600160a01b039182166004820152600160248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9909116925063a22cb46591506044015f604051808303815f87803b158015612089575f80fd5b505af1158015611213573d5f803e3d5ffd5b50565b335f9081526004602052604081205460ff166120cc5760405162461bcd60e51b81526004016107ad90615003565b5f6120e45f805160206154fc8339815191528561326e565b60405163c475abff60e01b815260048101869052602481018590529091505f906001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063c475abff906044016020604051808303815f875af1158015612154573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906121789190614e64565b6040516331a9108f60e11b8152600481018790529091507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa9250505080156121fc575060408051601f3d908101601f191682019092526121f991810190614fbe565b60015b6122095791506107ea9050565b6001600160a01b038116301415806122b157506040516302571be360e01b81526004810184905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015612281573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906122a59190614fbe565b6001600160a01b031614155b156122c0575091506107ea9050565b505f6122cf6276a70083614e8f565b5f8481526001602052604090205490915060a081901c6122f185838386613a33565b50919695505050505050565b5f866123098133611480565b61232a57803360405163168ab55d60e31b81526004016107ad929190614dea565b5f878760405161233b929190614ff4565b6040518091039020905061234f898261326e565b925061235b898461329a565b61236583866133d3565b5f6123a68a858b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061340692505050565b90506123b48a8588886134cd565b94506123bf84613510565b61246b576040516306ab592360e01b8152600481018b9052602481018390523060448201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906306ab5923906064016020604051808303815f875af1158015612434573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906124589190614e64565b506124668482898989613b83565b6124b0565b6124b08a858b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508d92508c91508b90506135fc565b5050509695505050505050565b5f6125005f86868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613bc59050565b6007549091506001600160a01b031661252c5760405163093075b560e21b815260040160405180910390fd5b6125368133611480565b61255757803360405163168ab55d60e31b81526004016107ad929190614dea565b5f8080612563846107f0565b919450925090505f6125748561085e565b905061257f85613c81565b60075f9054906101000a90046001600160a01b03166001600160a01b0316639198c2768a8a878787878e8e6040518963ffffffff1660e01b81526004016125cd989796959493929190615073565b5f604051808303815f87803b1580156125e4575f80fd5b505af11580156125f6573d5f803e3d5ffd5b50505050505050505050505050565b836126108133611480565b61263157803360405163168ab55d60e31b81526004016107ad929190614dea565b84601c5f61263e836107f0565b5091505063ffffffff828216161561266c5760405163a2a7201360e01b8152600481018490526024016107ad565b60405163cf40882360e01b8152600481018990523060248201526001600160a01b0387811660448301526001600160401b03871660648301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063cf408823906084015f604051808303815f87803b1580156126e8575f80fd5b505af11580156126fa573d5f803e3d5ffd5b5050506001600160a01b038816905061275f575f612717896107f0565b509150506201ffff196202000082160161274f57604051632ca49b0d60e11b81526001600160a01b03891660048201526024016107ad565b612759895f613a98565b506118b6565b5f61276989611655565b905061278981898b5f1c600160405180602001604052805f815250613d1e565b505050505050505050565b61279e838361326e565b6127a88133611480565b6127c957803360405163168ab55d60e31b81526004016107ad929190614dea565b7f6c32148f748aba23997146d7fe89e962e3cc30271290fb96f5f4337756c03b5284016128095760405163615a470360e01b815260040160405180910390fd5b6001600160a01b038216158061282757506001600160a01b03821630145b1561285057604051632ca49b0d60e11b81526001600160a01b03831660048201526024016107ad565b61164f611831858561326e565b5f80612869848461326e565b90505f61287582613510565b90505f805160206154fc83398151915285146128945791506107ea9050565b6040516331a9108f60e11b8152600481018590527f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa925050508015612915575060408051601f3d908101601f1916820190925261291291810190614fbe565b60015b612923575f925050506107ea565b6001600160a01b0316301492506107ea915050565b612940613215565b6001600160a01b0382165f81815260046020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf8791015b60405180910390a25050565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205460ff1690565b5f80612a105f87878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613dfe9050565b915091505f612a578288888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613bc59050565b90505f612a64828561326e565b5f818152600660205260409020909150612a7f888a8361511e565b507f6c32148f748aba23997146d7fe89e962e3cc30271290fb96f5f4337756c03b528201612ac05760405163615a470360e01b815260040160405180910390fd5b6040516302571be360e01b8152600481018290525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa158015612b25573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612b499190614fbe565b90506001600160a01b0381163314801590612bef575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063e985e9c590604401602060405180830381865afa158015612bc9573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612bed9190614fd9565b155b15612c1157813360405163168ab55d60e31b81526004016107ad929190614dea565b6001600160a01b03861615612c9c57604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a90612c6e9085908a90600401614dea565b5f604051808303815f87803b158015612c85575f80fd5b505af1158015612c97573d5f803e3d5ffd5b505050505b604051635b0fc9c360e01b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635b0fc9c390612cea9085903090600401614dea565b5f604051808303815f87803b158015612d01575f80fd5b505af1158015612d13573d5f803e3d5ffd5b50505050612789828a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201829052508d93509150819050613b83565b6001600160a01b038416612d7f5760405162461bcd60e51b81526004016107ad90614eee565b6001600160a01b038516331480612d9b5750612d9b853361299f565b612df95760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2063616c6c6572206973206e6f74206f776e6572206e6f7260448201526808185c1c1c9bdd995960ba1b60648201526084016107ad565b6112138585858585613d1e565b612e0e613215565b6001600160a01b038116612e735760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107ad565b61209b81613a49565b5f8181526006602052604081208054829190612e9790614eb6565b80601f0160208091040260200160405190810160405280929190818152602001828054612ec390614eb6565b8015612f0e5780601f10612ee557610100808354040283529160200191612f0e565b820191905f5260205f20905b815481529060010190602001808311612ef157829003601f168201915b5050505050905080515f03612f2557505f92915050565b5f80612f318382613dfe565b90925090505f612f418483613bc5565b9050610954818461285d565b5f8042836001600160401b03161015612f775761ffff1962010000851601612f73575f94505b5f93505b50929391925050565b5f6001600160e01b03198216636cdb3d1360e11b1480612fb057506001600160e01b031982166303a24d0760e21b145b806107ea57506301ffc9a760e01b6001600160e01b03198316146107ea565b5f612fd982611655565b9050806001600160a01b0316836001600160a01b0316036130465760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084016107ad565b336001600160a01b03821614806130625750613062813361299f565b6130d45760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016107ad565b6108e08383613eb2565b5f620200008381161480156108995750426130fc6276a700846151d7565b6001600160401b0316109392505050565b845160208601205f61312c5f805160206154fc8339815191528361326e565b90505f61315488604051806040016040528060058152602001626cae8d60e31b815250613f1f565b5f83815260066020526040902090915061316e82826151f7565b50613181828289620300008a1789613b83565b6001600160a01b038416156118b657604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a906131de9085908890600401614dea565b5f604051808303815f87803b1580156131f5575f80fd5b505af1158015613207573d5f803e3d5ffd5b505050505050505050505050565b5f546001600160a01b0316331461179f5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107ad565b604080516020808201949094528082019290925280518083038201815260609092019052805191012090565b5f80806132a6846107f0565b91945092509050426001600160401b0382161080801561336657506001600160a01b038416158061336657506040516302571be360e01b8152600481018690525f906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015613337573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061335b9190614fbe565b6001600160a01b0316145b156133a4575f613375876107f0565b50915050602081161561339e5760405163a2a7201360e01b8152600481018790526024016107ad565b506133cb565b620100008316156133cb5760405163a2a7201360e01b8152600481018690526024016107ad565b505050505050565b63fffdffff81811763ffffffff16146134025760405163a2a7201360e01b8152600481018390526024016107ad565b5050565b60605f6134aa8360065f8881526020019081526020015f20805461342990614eb6565b80601f016020809104026020016040519081016040528092919081815260200182805461345590614eb6565b80156134a05780601f10613477576101008083540402835291602001916134a0565b820191905f5260205f20905b81548152906001019060200180831161348357829003601f168201915b5050505050613f1f565b5f8581526006602052604090209091506134c482826151f7565b50949350505050565b5f806134d8856107f0565b925050505f806134e9885f1c6107f0565b92509250506134f98787846138f7565b613504858483613932565b98975050505050505050565b5f8061351b83611655565b6001600160a01b0316141580156107ea57506040516302571be360e01b81526004810183905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015613592573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906135b69190614fbe565b6001600160a01b03161492915050565b5f86815260066020526040812080546135e491879161342990614eb6565b90506135f38682868686613b83565b50505050505050565b5f8080613608886107f0565b9250925092505f61362f8860065f8d81526020019081526020015f20805461342990614eb6565b5f8a815260066020526040902080549192509061364b90614eb6565b90505f0361366c575f89815260066020526040902061366a82826151f7565b505b61367b89858886178589613977565b6001600160a01b03871661369857613693895f613a98565b610ab4565b610ab484888b5f1c600160405180602001604052805f815250613d1e565b6201ffff19620200008316016136d6576136d36276a700826151d7565b90505b42816001600160401b0316101561370f576201000082161561370a5760405162461bcd60e51b81526004016107ad90614f47565b613734565b60048216156137345760405163a2a7201360e01b8152600481018490526024016107ad565b604082165f036108e05750505f90815260036020526040902080546001600160a01b0319169055565b60c0816001600160401b0316901b60a08363ffffffff16901b846001600160a01b0316171760015f8681526020019081526020015f208190555050505050565b6001600160a01b0384163b156133cb5760405163bc197c8160e01b81526001600160a01b0385169063bc197c81906137e190899089908890889088906004016152b2565b6020604051808303815f875af192505050801561381b575060408051601f3d908101601f1916820190925261381891810190615303565b60015b6138c75761382761531e565b806308c379a003613860575061383b615337565b806138465750613862565b8060405162461bcd60e51b81526004016107ad91906143d4565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e20455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b60648201526084016107ad565b6001600160e01b0319811663bc197c8160e01b146135f35760405162461bcd60e51b81526004016107ad906153bf565b63ffff000082161580159060018316159082906139115750805b156112135760405163a2a7201360e01b8152600481018690526024016107ad565b5f816001600160401b0316846001600160401b03161115613951578193505b826001600160401b0316846001600160401b0316101561396f578293505b509192915050565b61398385858584613a33565b60405163ffffffff8416815285907f39873f00c80f4f94b7bd1594aebcf650f003545b74824d57ddf4939e3ff3a34b9060200160405180910390a2816001600160401b0316816001600160401b03161115611213576040516001600160401b038216815285907ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b132906020015b60405180910390a25050505050565b5f80613a29836107f0565b5090949350505050565b613a3d8483613f96565b61164f8484848461375d565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b613aa3826001611e38565b15613ac45760405163a2a7201360e01b8152600481018390526024016107ad565b613acd82613c81565b604051635b0fc9c360e01b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635b0fc9c390613b1b9085908590600401614dea565b5f604051808303815f87803b158015613b32575f80fd5b505af1158015613b44573d5f803e3d5ffd5b50506040516001600160a01b03841681528492507fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c49150602001612993565b613b8f85848484613fcf565b847f8ce7013e8abebc55c3890a68f5a27c67c3f7efa64e584de5fb22363c606fd34085858585604051613a0f9493929190615407565b5f805f613bd28585613dfe565b909250905081613c435760018551613bea919061544d565b8414613c385760405162461bcd60e51b815260206004820152601d60248201527f6e616d65686173683a204a756e6b20617420656e64206f66206e616d6500000060448201526064016107ad565b505f91506107ea9050565b613c4d8582613bc5565b6040805160208101929092528101839052606001604051602081830303815290604052805190602001209250505092915050565b5f8181526001602052604090205460a081901c60c082901c613ca4838383612f4d565b5f86815260036020526040812080546001600160a01b0319169055909350613cd091508590848461375d565b60408051858152600160208201525f916001600160a01b0386169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b5f805f613d2a866107f0565b925092509250613d3b8683836136b6565b846001148015613d5c5750876001600160a01b0316836001600160a01b0316145b613d785760405162461bcd60e51b81526004016107ad90614f47565b866001600160a01b0316836001600160a01b031603613d9957505050611213565b613da58688848461375d565b60408051878152602081018790526001600160a01b03808a1692908b169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46118b6338989898989614041565b5f8083518310613e505760405162461bcd60e51b815260206004820152601e60248201527f726561644c6162656c3a20496e646578206f7574206f6620626f756e6473000060448201526064016107ad565b5f848481518110613e6357613e63614f33565b016020015160f81c90508015613e8f57613e8885613e82866001615460565b836140fb565b9250613e93565b5f92505b613e9d8185615460565b613ea8906001615460565b9150509250929050565b5f81815260036020526040902080546001600160a01b0319166001600160a01b0384169081179091558190613ee682611655565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6060600183511015613f4457604051631406d65b60e11b815260040160405180910390fd5b60ff83511115613f69578260405163e3ba295f60e01b81526004016107ad91906143d4565b82518383604051602001613f7f93929190615473565b604051602081830303815290604052905092915050565b61ffff811615801590613fae57506201000181811614155b156134025760405163a2a7201360e01b8152600481018390526024016107ad565b613fd98483613f96565b5f848152600160205260409020546001600160a01b0381161561403557613fff85613c81565b6040515f815285907fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c49060200160405180910390a25b6112138585858561411d565b6001600160a01b0384163b156133cb5760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e619061408590899089908890889088906004016154b7565b6020604051808303815f875af19250505080156140bf575060408051601f3d908101601f191682019092526140bc91810190615303565b60015b6140cb5761382761531e565b6001600160e01b0319811663f23a6e6160e01b146135f35760405162461bcd60e51b81526004016107ad906153bf565b82515f906141098385615460565b1115614113575f80fd5b5091016020012090565b835f808061412a846107f0565b9194509250905063ffff000082166001600160401b038087169083161115614150578195505b42826001600160401b03161061416557958617955b6001600160a01b038416156141bc5760405162461bcd60e51b815260206004820152601f60248201527f455243313135353a206d696e74206f66206578697374696e6720746f6b656e0060448201526064016107ad565b6001600160a01b03881661421c5760405162461bcd60e51b815260206004820152602160248201527f455243313135353a206d696e7420746f20746865207a65726f206164647265736044820152607360f81b60648201526084016107ad565b306001600160a01b038916036142915760405162461bcd60e51b815260206004820152603460248201527f455243313135353a206e65774f776e65722063616e6e6f74206265207468652060448201527313985b5955dc985c1c195c8818dbdb9d1c9858dd60621b60648201526084016107ad565b61429d8589898961375d565b60408051868152600160208201526001600160a01b038a16915f9133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4612789335f8a88600160405180602001604052805f815250614041565b6001600160a01b038116811461209b575f80fd5b5f8060408385031215614327575f80fd5b823561433281614302565b946020939093013593505050565b5f60208284031215614350575f80fd5b5035919050565b6001600160e01b03198116811461209b575f80fd5b5f6020828403121561437c575f80fd5b813561089981614357565b5f5b838110156143a1578181015183820152602001614389565b50505f910152565b5f81518084526143c0816020860160208601614387565b601f01601f19169290920160200192915050565b602081525f61089960208301846143a9565b5f80604083850312156143f7575f80fd5b82359150602083013561440981614302565b809150509250929050565b80356001600160401b038116811461442a575f80fd5b919050565b5f8060408385031215614440575f80fd5b8235915061445060208401614414565b90509250929050565b5f8083601f840112614469575f80fd5b5081356001600160401b0381111561447f575f80fd5b602083019150836020828501011115614496575f80fd5b9250929050565b5f805f805f608086880312156144b1575f80fd5b85356144bc81614302565b945060208601356144cc81614302565b93506040860135925060608601356001600160401b038111156144ed575f80fd5b6144f988828901614459565b969995985093965092949392505050565b5f6020828403121561451a575f80fd5b813561089981614302565b634e487b7160e01b5f52604160045260245ffd5b601f8201601f191681016001600160401b038111828210171561455e5761455e614525565b6040525050565b5f6001600160401b0382111561457d5761457d614525565b50601f01601f191660200190565b5f82601f83011261459a575f80fd5b81356145a581614565565b6040516145b28282614539565b8281528560208487010111156145c6575f80fd5b826020860160208301375f92810160200192909252509392505050565b803563ffffffff8116811461442a575f80fd5b5f805f805f805f60e0888a03121561460c575f80fd5b8735965060208801356001600160401b03811115614628575f80fd5b6146348a828b0161458b565b965050604088013561464581614302565b9450606088013561465581614302565b935061466360808901614414565b925061467160a089016145e3565b915061467f60c08901614414565b905092959891949750929550565b5f6001600160401b038211156146a5576146a5614525565b5060051b60200190565b5f82601f8301126146be575f80fd5b813560206146cb8261468d565b6040516146d88282614539565b80915083815260208101915060208460051b8701019350868411156146fb575f80fd5b602086015b84811015611e2d5780358352918301918301614700565b5f805f805f60a0868803121561472b575f80fd5b853561473681614302565b9450602086013561474681614302565b935060408601356001600160401b0380821115614761575f80fd5b61476d89838a016146af565b94506060880135915080821115614782575f80fd5b61478e89838a016146af565b935060808801359150808211156147a3575f80fd5b506147b08882890161458b565b9150509295509295909350565b5f805f80608085870312156147d0575f80fd5b84359350602085013592506147e7604086016145e3565b91506147f560608601614414565b905092959194509250565b803561ffff8116811461442a575f80fd5b5f8060408385031215614822575f80fd5b8235915061445060208401614800565b5f8060408385031215614843575f80fd5b82356001600160401b0380821115614859575f80fd5b818501915085601f83011261486c575f80fd5b813560206148798261468d565b6040516148868282614539565b83815260059390931b85018201928281019150898411156148a5575f80fd5b948201945b838610156148cc5785356148bd81614302565b825294820194908201906148aa565b965050860135925050808211156148e1575f80fd5b50613ea8858286016146af565b5f815180845260208085019450602084015f5b8381101561491d57815187529582019590820190600101614901565b509495945050505050565b602081525f61089960208301846148ee565b5f805f6060848603121561494c575f80fd5b833561495781614302565b9250602084013561496781614302565b929592945050506040919091013590565b5f805f6060848603121561498a575f80fd5b83359250602084013591506149a160408501614414565b90509250925092565b5f805f606084860312156149bc575f80fd5b8335925060208401356149ce81614302565b915060408401356149de81614302565b809150509250925092565b5f805f805f608086880312156149fd575f80fd5b85356001600160401b03811115614a12575f80fd5b614a1e88828901614459565b9096509450506020860135614a3281614302565b9250614a4060408701614800565b91506060860135614a5081614302565b809150509295509295909350565b801515811461209b575f80fd5b5f8060408385031215614a7c575f80fd5b8235614a8781614302565b9150602083013561440981614a5e565b5f805f805f8060a08789031215614aac575f80fd5b86356001600160401b03811115614ac1575f80fd5b614acd89828a01614459565b9097509550506020870135614ae181614302565b9350604087013592506060870135614af881614302565b9150614b0660808801614800565b90509295509295509295565b5f8060408385031215614b23575f80fd5b82359150614450602084016145e3565b5f8060408385031215614b44575f80fd5b50508035926020909101359150565b5f805f805f8060a08789031215614b68575f80fd5b8635955060208701356001600160401b03811115614b84575f80fd5b614b9089828a01614459565b9096509450506040870135614ba481614302565b9250614bb2606088016145e3565b9150614b0660808801614414565b5f805f8060408587031215614bd3575f80fd5b84356001600160401b0380821115614be9575f80fd5b614bf588838901614459565b90965094506020870135915080821115614c0d575f80fd5b50614c1a87828801614459565b95989497509550505050565b5f805f8060808587031215614c39575f80fd5b843593506020850135614c4b81614302565b925060408501356147e781614302565b5f805f60608486031215614c6d575f80fd5b833592506020840135915060408401356149de81614302565b5f8060408385031215614c97575f80fd5b8235614ca281614302565b9150602083013561440981614302565b5f805f8060608587031215614cc5575f80fd5b84356001600160401b03811115614cda575f80fd5b614ce687828801614459565b9095509350506020850135614cfa81614302565b91506040850135614d0a81614302565b939692955090935050565b5f805f805f60a08688031215614d29575f80fd5b8535614d3481614302565b94506020860135614d4481614302565b9350604086013592506060860135915060808601356001600160401b03811115614d6c575f80fd5b6147b08882890161458b565b5f60208284031215614d88575f80fd5b81516001600160401b03811115614d9d575f80fd5b8201601f81018413614dad575f80fd5b8051614db881614565565b604051614dc58282614539565b828152866020848601011115614dd9575f80fd5b610954836020830160208701614387565b9182526001600160a01b0316602082015260400190565b5f805f8060808587031215614e14575f80fd5b84356001600160401b03811115614e29575f80fd5b614e358782880161458b565b9450506020850135614e4681614302565b9250614e5460408601614800565b91506060850135614d0a81614302565b5f60208284031215614e74575f80fd5b5051919050565b634e487b7160e01b5f52601160045260245ffd5b6001600160401b03818116838216019080821115614eaf57614eaf614e7b565b5092915050565b600181811c90821680614eca57607f821691505b602082108103614ee857634e487b7160e01b5f52602260045260245ffd5b50919050565b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b634e487b7160e01b5f52603260045260245ffd5b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b604081525f614fa360408301856148ee565b8281036020840152614fb581856148ee565b95945050505050565b5f60208284031215614fce575f80fd5b815161089981614302565b5f60208284031215614fe9575f80fd5b815161089981614a5e565b818382375f9101908152919050565b60208082526028908201527f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f604082015267373a3937b63632b960c11b606082015260800190565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b60c081525f61508660c083018a8c61504b565b6001600160a01b03898116602085015263ffffffff891660408501526001600160401b03881660608501528616608084015282810360a08401526150cb81858761504b565b9b9a5050505050505050505050565b601f8211156108e057805f5260205f20601f840160051c810160208510156150ff5750805b601f840160051c820191505b81811015611213575f815560010161510b565b6001600160401b0383111561513557615135614525565b615149836151438354614eb6565b836150da565b5f601f84116001811461517a575f85156151635750838201355b5f19600387901b1c1916600186901b178355611213565b5f83815260208120601f198716915b828110156151a95786850135825560209485019460019092019101615189565b50868210156151c5575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b6001600160401b03828116828216039080821115614eaf57614eaf614e7b565b81516001600160401b0381111561521057615210614525565b6152248161521e8454614eb6565b846150da565b602080601f831160018114615257575f84156152405750858301515b5f19600386901b1c1916600185901b1785556133cb565b5f85815260208120601f198616915b8281101561528557888601518255948401946001909101908401615266565b50858210156152a257878501515f19600388901b60f8161c191681555b5050505050600190811b01905550565b6001600160a01b0386811682528516602082015260a0604082018190525f906152dd908301866148ee565b82810360608401526152ef81866148ee565b9050828103608084015261350481856143a9565b5f60208284031215615313575f80fd5b815161089981614357565b5f60033d11156153345760045f803e505f5160e01c5b90565b5f60443d10156153445790565b6040516003193d81016004833e81513d6001600160401b03816024840111818411171561537357505050505090565b828501915081518181111561538b5750505050505090565b843d87010160208285010111156153a55750505050505090565b6153b460208286010187614539565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b608081525f61541960808301876143a9565b6001600160a01b039590951660208301525063ffffffff9290921660408301526001600160401b0316606090910152919050565b818103818111156107ea576107ea614e7b565b808201808211156107ea576107ea614e7b565b60ff60f81b8460f81b1681525f8351615493816001850160208801614387565b8351908301906154aa816001840160208801614387565b0160010195945050505050565b6001600160a01b03868116825285166020820152604081018490526060810183905260a0608082018190525f906154f0908301846143a9565b97965050505050505056fe93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4aea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2a68925cf5169f28586095d5b5b9933b3008f4c793a48be4f59b8b2bc62aa60a":"0x1","0x54cdd369e4e8a8515e52ca72ec816c2101831ad1f18bf44102ed171459c9b4f8":"0x2","0xa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb49":"0xffffffffffffffff000100010000000000000000000000000000000000000000","0xafa26c20e8b3d9a2853d642cfe1021dae26242ffedfac91c97aab212c1a4b93b":"0xffffffffffffffff000100010000000000000000000000000000000000000000","0xef5b11c47ebee44618abc22110e10e3b408ea5e799056d2b38461aa7b97c5a97":"0x1","0xfb9e8e321b8a5ec48f12a7b41f22c6e595d761285c9eb19d8dda7c99edf1b54f":"0x36574680000000000000000000000000000000000000000000000000000000a"}},"0x6e1eb616c7d69491f9a880f815ff5574768cba20":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b506004361061007a575f3560e01c806314ab90381161005857806314ab90381461010357806316a25cbd146101165780631896f70a146101625780635b0fc9c314610175575f80fd5b80630178b8bf1461007e57806302571be3146100c657806306ab5923146100ee575b5f80fd5b6100a961008c366004610403565b5f908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100a96100d4366004610403565b5f908152602081905260409020546001600160a01b031690565b6101016100fc366004610435565b610188565b005b610101610111366004610467565b610242565b610149610124366004610403565b5f90815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100bd565b6101016101703660046104a1565b6102e2565b6101016101833660046104a1565b610374565b5f8381526020819052604090205483906001600160a01b031633146101ab575f80fd5b60408051602080820187905281830186905282518083038401815260608301808552815191909201206001600160a01b0386169091529151859187917fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829181900360800190a35f90815260208190526040902080546001600160a01b0319166001600160a01b039390931692909217909155505050565b5f8281526020819052604090205482906001600160a01b03163314610265575f80fd5b60405167ffffffffffffffff8316815283907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a2505f91825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b5f8281526020819052604090205482906001600160a01b03163314610305575f80fd5b6040516001600160a01b038316815283907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a2505f9182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b5f8281526020819052604090205482906001600160a01b03163314610397575f80fd5b6040516001600160a01b038316815283907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a2505f9182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b5f60208284031215610413575f80fd5b5035919050565b80356001600160a01b0381168114610430575f80fd5b919050565b5f805f60608486031215610447575f80fd5b833592506020840135915061045e6040850161041a565b90509250925092565b5f8060408385031215610478575f80fd5b82359150602083013567ffffffffffffffff81168114610496575f80fd5b809150509250929050565b5f80604083850312156104b2575f80fd5b823591506104c26020840161041a565b9050925092905056fea164736f6c6343000818000a","storage":{"0x859ecef2e168dc10231b000bd53493b42bc9d944cac29d94582c1e1d43592131":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x7bb6cd9be29fab783c0b494a06fed8b2e2596b7a":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100ea5760003560e01c80636debcb8d1161008c578063b34f33c511610066578063b34f33c514610741578063d0778d6c14610814578063ef2c3088146108f2578063f5090c1e14610980576100ea565b80636debcb8d146105ca5780636fab95b3146106585780637b1039991461071d576100ea565b8063511f1112116100c8578063511f1112146103c557806361603dd91461044857806368b6154f146104bd5780636ccbae5f1461059b576100ea565b806307eca395146100ef578063280d9b051461021457806330135293146102f2575b600080fd5b610212600480360360a081101561010557600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561013457600080fd5b82018360208201111561014657600080fd5b803590602001918460018302840111600160201b8311171561016757600080fd5b919390929091602081019035600160201b81111561018457600080fd5b82018360208201111561019657600080fd5b803590602001918460018302840111600160201b831117156101b757600080fd5b919390929091602081019035600160201b8111156101d457600080fd5b8201836020820111156101e657600080fd5b803590602001918460018302840111600160201b8311171561020757600080fd5b509092509050610aae565b005b610212600480360360a081101561022a57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561026457600080fd5b82018360208201111561027657600080fd5b803590602001918460018302840111600160201b8311171561029757600080fd5b919390929091602081019035600160201b8111156102b457600080fd5b8201836020820111156102c657600080fd5b803590602001918460018302840111600160201b831117156102e757600080fd5b509092509050610c92565b6102126004803603608081101561030857600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561033757600080fd5b82018360208201111561034957600080fd5b803590602001918460018302840111600160201b8311171561036a57600080fd5b919390929091602081019035600160201b81111561038757600080fd5b82018360208201111561039957600080fd5b803590602001918460018302840111600160201b831117156103ba57600080fd5b509092509050610e3d565b610212600480360360608110156103db57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561040a57600080fd5b82018360208201111561041c57600080fd5b803590602001918460018302840111600160201b8311171561043d57600080fd5b509092509050610fcc565b6102126004803603604081101561045e57600080fd5b81359190810190604081016020820135600160201b81111561047f57600080fd5b82018360208201111561049157600080fd5b803590602001918460018302840111600160201b831117156104b257600080fd5b5090925090506110c9565b610212600480360360a08110156104d357600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561050d57600080fd5b82018360208201111561051f57600080fd5b803590602001918460018302840111600160201b8311171561054057600080fd5b919390929091602081019035600160201b81111561055d57600080fd5b82018360208201111561056f57600080fd5b803590602001918460018302840111600160201b8311171561059057600080fd5b5090925090506111ae565b6105b8600480360360208110156105b157600080fd5b50356113a8565b60408051918252519081900360200190f35b610212600480360360808110156105e057600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561061a57600080fd5b82018360208201111561062c57600080fd5b803590602001918460018302840111600160201b8311171561064d57600080fd5b5090925090506113ba565b6102126004803603606081101561066e57600080fd5b81359190810190604081016020820135600160201b81111561068f57600080fd5b8201836020820111156106a157600080fd5b803590602001918460018302840111600160201b831117156106c257600080fd5b919390929091602081019035600160201b8111156106df57600080fd5b8201836020820111156106f157600080fd5b803590602001918460018302840111600160201b8311171561071257600080fd5b5090925090506114d4565b610725611675565b604080516001600160a01b039092168252519081900360200190f35b6102126004803603608081101561075757600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561078657600080fd5b82018360208201111561079857600080fd5b803590602001918460018302840111600160201b831117156107b957600080fd5b919390929091602081019035600160201b8111156107d657600080fd5b8201836020820111156107e857600080fd5b803590602001918460018302840111600160201b8311171561080957600080fd5b509092509050611684565b610212600480360360a081101561082a57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561086457600080fd5b82018360208201111561087657600080fd5b803590602001918460018302840111600160201b8311171561089757600080fd5b919390929091602081019035600160201b8111156108b457600080fd5b8201836020820111156108c657600080fd5b803590602001918460018302840111600160201b831117156108e757600080fd5b5090925090506117de565b6102126004803603608081101561090857600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561094257600080fd5b82018360208201111561095457600080fd5b803590602001918460018302840111600160201b8311171561097557600080fd5b5090925090506119e4565b610212600480360360c081101561099657600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156109d057600080fd5b8201836020820111156109e257600080fd5b803590602001918460018302840111600160201b83111715610a0357600080fd5b919390929091602081019035600160201b811115610a2057600080fd5b820183602082011115610a3257600080fd5b803590602001918460018302840111600160201b83111715610a5357600080fd5b919390929091602081019035600160201b811115610a7057600080fd5b820183602082011115610a8257600080fd5b803590602001918460018302840111600160201b83111715610aa357600080fd5b509092509050611ad3565b610bb163ce9fb82b89898989898960405160240180876001600160a01b03166001600160a01b0316815260200186815260200180602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f820116905080830192505050985050505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208884848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b600154604051630119f80560e21b81526001600160a01b038a811660048301908152602483018b9052608060448401908152608484018a90529190931692630467e014928c928c928c928c928c928c92909190606481019060a401878780828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f82011690508083019250505098505050505050505050600060405180830381600087803b158015610c7057600080fd5b505af1158015610c84573d6000803e3d6000fd5b505050505050505050505050565b610d8363b88d4fde888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040516315eab15d60e21b81526001600160a01b03898116600483019081528982166024840152604483018990526080606484019081526084840188905291909316926357aac574928b928b928b928b928b929160a401848480828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b158015610e1c57600080fd5b505af1158015610e30573d6000803e3d6000fd5b5050505050505050505050565b610f09637c69eae28787878760405160240180856001600160a01b03166001600160a01b0316815260200184815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09d909d1b9c909c178c529351909a208a51918d01849004840282018401909a528b81528f985096508b95508a94508493505085019050838280828437600092019190915250611d5492505050565b600154604051630119f80560e21b81526001600160a01b038881166004830190815260248301899052608060448401908152608484018890529190931692630467e014928a928a928a928a9290606481019060a401858580828437600081840152601f19601f8201169050808301925050508381038252600081526020016020019650505050505050600060405180830381600087803b158015610fac57600080fd5b505af1158015610fc0573d6000803e3d6000fd5b50505050505050505050565b604080516001600160a01b038616602482015260448082018690528251808303909101815260649091018252602081810180516001600160e01b0316632392c18960e01b17815291519091208251601f85018390048302810183019093528383526110569290918691908690869081908401838280828437600092019190915250611d5492505050565b60015460408051631292e83560e11b81526001600160a01b0387811660048301526024820187905291519190921691632525d06a91604480830192600092919082900301818387803b1580156110ab57600080fd5b505af11580156110bf573d6000803e3d6000fd5b5050505050505050565b6040805160248082018690528251808303909101815260449091018252602081810180516001600160e01b0316630852cd8d60e31b17815291519091208251601f85018390048302810183019093528383526111449290918691908690869081908401838280828437600092019190915250611d5492505050565b6001546040805163e67ca8a360e01b81526004810186905290516001600160a01b039092169163e67ca8a39160248082019260009290919082900301818387803b15801561119157600080fd5b505af11580156111a5573d6000803e3d6000fd5b50505050505050565b61129f639e5be9a5888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b03909316926302759c37928b928b9286926368b62d32928d928d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561132757600080fd5b505afa15801561133b573d6000803e3d6000fd5b505050506040513d602081101561135157600080fd5b5051604080516001600160e01b031960e087901b1681526001600160a01b03948516600482015292909316602483015260448201529051606480830192600092919082900301818387803b158015610e1c57600080fd5b60009081526020819052604090205490565b604080516001600160a01b0380881660248301528616604482015260648082018690528251808303909101815260849091018252602081810180516001600160e01b0316632142170760e11b17815291519091208251601f850183900483028101830190935283835261144c9290918691908690869081908401838280828437600092019190915250611d5492505050565b600154604080516315eab15d60e21b81526001600160a01b0388811660048301528781166024830152604482018790526080606483015260006084830181905292519316926357aac5749260c48084019391929182900301818387803b1580156114b557600080fd5b505af11580156114c9573d6000803e3d6000fd5b505050505050505050565b611585635cbe11128686866040516024018084815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09c909c1b9b909b178b5293519099208951918c018490048402820184019099528a81528e975095508a9450899350839250508401838280828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b039093169263e67ca8a39284926368b62d32928b928b928b929190606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561160b57600080fd5b505afa15801561161f573d6000803e3d6000fd5b505050506040513d602081101561163557600080fd5b5051604080516001600160e01b031960e085901b168152600481019290925251602480830192600092919082900301818387803b1580156114b557600080fd5b6001546001600160a01b031690565b61175063d8d3cc6e8787878760405160240180856001600160a01b03166001600160a01b0316815260200184815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09d909d1b9c909c178c529351909a208a51918d01849004840282018401909a528b81528f985096508b95508a94508493505085019050838280828437600092019190915250611d5492505050565b60015460405163b546666960e01b81526001600160a01b03888116600483019081526024830189905260606044840190815260648401889052919093169263b5466669928a928a928a928a9290608401848480828437600081840152601f19601f82011690508083019250505095505050505050600060405180830381600087803b158015610fac57600080fd5b6118cf639d743989888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b03909316926357aac574928b928b9286926368b62d32928d928d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561195757600080fd5b505afa15801561196b573d6000803e3d6000fd5b505050506040513d602081101561198157600080fd5b5051604080516001600160e01b031960e087901b1681526001600160a01b039485166004820152929093166024830152604482015260806064820152600060848201819052915160c4808301939282900301818387803b158015610e1c57600080fd5b604080516001600160a01b0380881660248301528616604482015260648082018690528251808303909101815260849091018252602081810180516001600160e01b03166323b872dd60e01b17815291519091208251601f8501839004830281018301909352838352611a769290918691908690869081908401838280828437600092019190915250611d5492505050565b600154604080516302759c3760e01b81526001600160a01b038881166004830152878116602483015260448201879052915191909216916302759c3791606480830192600092919082900301818387803b1580156114b557600080fd5b611bf063c29b52f98a8a8a8a8a8a8a60405160240180886001600160a01b03166001600160a01b03168152602001876001600160a01b03166001600160a01b0316815260200186815260200180602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f82011690508083019250505099505050505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208884848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b8152600481018a815260248201928352604482018990526001600160a01b03909316926357aac574928d928d9286926368b62d32928f928f928f92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b158015611c7857600080fd5b505afa158015611c8c573d6000803e3d6000fd5b505050506040513d6020811015611ca257600080fd5b50516040516001600160e01b031960e086901b1681526001600160a01b0380851660048301908152908416602483015260448201839052608060648301908152608483018b90528b928b92919060a401848480828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b158015611d3157600080fd5b505af1158015611d45573d6000803e3d6000fd5b50505050505050505050505050565b6000828152602081815260408083205481518084018890523060601b81840152605480820183905283518083039091018152607490910190925281519190920120909190611db3908490611da790611ea9565b9063ffffffff611efa16565b90506001600160a01b03811615801590611e4957506001546040805163430c208160e01b81526001600160a01b038481166004830152602482018890529151919092169163430c2081916044808301926020929190829003018186803b158015611e1c57600080fd5b505afa158015611e30573d6000803e3d6000fd5b505050506040513d6020811015611e4657600080fd5b50515b611e8e576040805162461bcd60e51b8152602060048201526011602482015270494e56414c49445f5349474e415455524560781b604482015290519081900360640190fd5b50505060009081526020819052604090208054600101905550565b604080517f19457468657265756d205369676e6564204d6573736167653a0a333200000000602080830191909152603c8083019490945282518083039094018452605c909101909152815191012090565b60008151604114611f0d57506000611fe3565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0821115611f535760009350505050611fe3565b8060ff16601b14158015611f6b57508060ff16601c14155b15611f7c5760009350505050611fe3565b6040805160008152602080820180845289905260ff8416828401526060820186905260808201859052915160019260a0808401939192601f1981019281900390910190855afa158015611fd3573d6000803e3d6000fd5b5050506020604051035193505050505b9291505056fea265627a7a7231582014816bfd0c1519ce8c4cf272eb0526ffdba3abef0df7f17deb0da40bd8abb77f64736f6c634300050c0032","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533"}},"0x7c3c91245769c8b7450ad522792dec4bd4bf797f":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b506004361061003f575f3560e01c80631bf7e13e146100435780636ccbae5f1461006c578063a424740014610099575b5f80fd5b610056610051366004610749565b6100bc565b604051610063919061082c565b60405180910390f35b61008b61007a36600461083e565b5f9081526001602052604090205490565b604051908152602001610063565b6100ac6100a7366004610749565b6101d6565b6040519015158152602001610063565b60605f5a90506100cd8585856101d6565b6101315760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e61676572466f727761726465723a205349474e415455604482015269149157d253959053125160b21b60648201526084015b60405180910390fd5b6101cb6101416020870187610870565b5f546001600160a01b031660408801358461015f60608b018b610889565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f9201919091525061023292505050565b9150505b9392505050565b5f61022a6101e38561093a565b5f54604080516020601f88018190048102820181019092528681526001600160a01b03909216919087908790819084018382808284375f9201919091525061030e92505050565b949350505050565b606061023d85610453565b5f80876001600160a01b0316866102568b8a898961047e565b60405161026391906109f5565b5f604051808303815f8787f1925050503d805f811461029d576040519150601f19603f3d011682016040523d82523d5f602084013e6102a2565b606091505b5090925090506102b3603f87610a10565b5a116102c1576102c1610a2f565b61030182826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506104ae565b9998505050505050505050565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015610352573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103769190610a43565b90505f6104238660600151805190602001208688602001516040516020016103c39392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561044957508551610449906001600160a01b031682866104e7565b9695505050505050565b5f8181526001602081905260409091205461046d91610a5a565b5f9182526001602052604090912055565b606082858560405160200161049593929190610a7f565b6040516020818303038152906040529050949350505050565b606083156104bd5750816101cf565b8251156104cd5782518084602001fd5b8160405162461bcd60e51b8152600401610128919061082c565b5f805f6104f48585610622565b90925090505f81600481111561050c5761050c610abd565b14801561052a5750856001600160a01b0316826001600160a01b0316145b1561053a576001925050506101cf565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401610561929190610ad1565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161059f91906109f5565b5f60405180830381855afa9150503d805f81146105d7576040519150601f19603f3d011682016040523d82523d5f602084013e6105dc565b606091505b50915091508180156105ef575080516020145b801561061657508051630b135d3f60e11b906106149083016020908101908401610a43565b145b98975050505050505050565b5f808251604103610656576020830151604084015160608501515f1a61064a87828585610664565b9450945050505061065d565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561069957505f90506003610740565b8460ff16601b141580156106b157508460ff16601c14155b156106c157505f90506004610740565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610712573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b03811661073a575f60019250925050610740565b91505f90505b94509492505050565b5f805f6040848603121561075b575f80fd5b833567ffffffffffffffff80821115610772575f80fd5b9085019060808288031215610785575f80fd5b9093506020850135908082111561079a575f80fd5b818601915086601f8301126107ad575f80fd5b8135818111156107bb575f80fd5b8760208285010111156107cc575f80fd5b6020830194508093505050509250925092565b5f5b838110156107f95781810151838201526020016107e1565b50505f910152565b5f81518084526108188160208601602086016107df565b601f01601f19169290920160200192915050565b602081525f6101cf6020830184610801565b5f6020828403121561084e575f80fd5b5035919050565b80356001600160a01b038116811461086b575f80fd5b919050565b5f60208284031215610880575f80fd5b6101cf82610855565b5f808335601e1984360301811261089e575f80fd5b83018035915067ffffffffffffffff8211156108b8575f80fd5b60200191503681900382131561065d575f80fd5b634e487b7160e01b5f52604160045260245ffd5b6040516080810167ffffffffffffffff81118282101715610903576109036108cc565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610932576109326108cc565b604052919050565b5f6080823603121561094a575f80fd5b6109526108e0565b61095b83610855565b81526020808401358183015260408401356040830152606084013567ffffffffffffffff8082111561098b575f80fd5b9085019036601f83011261099d575f80fd5b8135818111156109af576109af6108cc565b6109c1601f8201601f19168501610909565b915080825236848285010111156109d6575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b5f8251610a068184602087016107df565b9190910192915050565b5f82610a2a57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b5f60208284031215610a53575f80fd5b5051919050565b80820180821115610a7957634e487b7160e01b5f52601160045260245ffd5b92915050565b5f8451610a908184602089016107df565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f61022a604083018461080156fea164736f6c6343000818000a","storage":{"0x0":"0x39a27956b78d00a4e00ea8833ff0947410a2933f"}},"0x8861cdfa38838531275ce12f9e795c3b9ff29cbe":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x936188f2c3c8e8c95e425b6fe41c2ac9e701585e":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x94f57ed7e9af03a10e8eb23ce1b3c7914a182b0f":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x95f29431aeb52c0d5dbeeec36010b8e2ca69cb3d":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x9b2565a3545a1312bdcb6e7148a7f7cae8c2706b":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c806373cc48a61161008857806398d35f201161006357806398d35f2014610215578063bd7ed31a1461021d578063c327deef14610245578063d7b82ebe1461026d575f80fd5b806373cc48a6146101af5780638438dc04146101ef5780638da5cb5b14610202575f80fd5b806313af4035116100c357806313af40351461015657806328e7677d146101695780632c095cbb1461017c578063435cc1621461018f575f80fd5b8063020ed8d3146100e9578063087991bc146100fe5780630b1a249514610143575b5f80fd5b6100fc6100f73660046122ff565b610280565b005b61011161010c36600461238a565b610300565b6040805163ffffffff94851681529390921660208401526001600160601b031916908201526060015b60405180910390f35b6100fc610151366004612510565b61036c565b6100fc6101643660046125c6565b6104da565b6100fc6101773660046122ff565b610512565b6100fc61018a3660046125e1565b61058a565b6101a261019d366004612674565b610656565b60405161013a919061278c565b6101d76101bd36600461279e565b60046020525f90815260409020546001600160a01b031681565b6040516001600160a01b03909116815260200161013a565b6100fc6101fd3660046122ff565b6106d2565b6001546101d7906001600160a01b031681565b6101a261074a565b6101d761022b36600461279e565b60056020525f90815260409020546001600160a01b031681565b6101d761025336600461279e565b60036020525f90815260409020546001600160a01b031681565b6101a261027b3660046127b7565b6107d5565b6001546001600160a01b03163314610296575f80fd5b60ff82165f8181526003602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527ff73c3c226af96b7f1ba666a21b3ceaf2be3ee6a365e3178fd9cd1eaae0075aa891015b60405180910390a15050565b5f805f8060025f8787604051610317929190612817565b604080519182900390912082526020808301939093529081015f90812061ffff8b16825290925290205463ffffffff80821695506401000000008204169350600160401b900460601b91505093509350939050565b83516020808601919091205f90815260028252604080822061ffff891683529092529081205463ffffffff16906103a385846107ea565b90506103b0818784610889565b6103b8612239565b845151156103d7576103ca85856107ea565b90506103d7818885610889565b5f6103e1836108cc565b602081015190915060fe16156103f5575f80fd5b61040081602761092a565b158015610425575061041381600261092a565b1580610425575061042581600661092a565b61042d575f80fd5b61043e89898561012001518461093a565b156104795787516020808a01919091205f90815260028252604080822061ffff8d1683529092522080546001600160e01b03191690556104cf565b6104988884610120015183856101200151610493876108cc565b610968565b156100e55787516020808a01919091205f90815260028252604080822061ffff8d1683529092522080546001600160e01b03191690555b505050505050505050565b6001546001600160a01b031633146104f0575f80fd5b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6001546001600160a01b03163314610528575f80fd5b60ff82165f8181526004602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527f2fcc274c3b72dd483ab201bfa87295e3817e8b9b10693219873b722ca1af00c791016102f4565b610592612239565b61059c83836107ea565b805190915061ffff16602f146105b0575f80fd5b60a081015184516020808701919091205f90815260028252604080822061ffff8a16835290925220546105e9919063ffffffff16610a7c565b6105f1575f80fd5b5f6105fb82610a94565b9050805151602082015110156100e55761061c818361012001518789610aab565b505082516020808501919091205f90815260028252604080822061ffff881683529092522080546001600160e01b03191690555b50505050565b60605f83838080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201829052509394505050505b85518110156106c7576106bd8682815181106106af576106af612826565b602002602001015183610c4a565b9150600101610691565b5090505b9392505050565b6001546001600160a01b031633146106e8575f80fd5b60ff82165f8181526005602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527fc7eec866a7a1386188cc3ca20ffea75b71bd3e90a60b6791b1d3f0971145118d91016102f4565b5f80546107569061283a565b80601f01602080910402602001604051908101604052809291908181526020018280546107829061283a565b80156107cd5780601f106107a4576101008083540402835291602001916107cd565b820191905f5260205f20905b8154815290600101906020018083116107b057829003601f168201915b505050505081565b60606107e18383610c4a565b90505b92915050565b6107f2612239565b82516107fd90610dc6565b905061080d8160e0015183610ebf565b610815575f80fd5b5f61082382835f0151610f25565b604083015190915060ff16610838825f610fcc565b14610841575f80fd5b610120820181905260808201516108589042610a7c565b610860575f80fd5b61086e428360a00151610a7c565b610876575f80fd5b61088281838686611026565b5092915050565b6108978360a0015182610a7c565b61089f575f80fd5b825161ffff166032146108b0575f80fd5b6108bf83610120015183611106565b6108c7575f80fd5b505050565b6040805160c0810182525f8082526020820181905291810182905260608082018190526080820183905260a08201529061090583610a94565b60a081015160c08201519192506106cb91610921908290612880565b83519190611172565b5f6107e18360a001515f846112b4565b5f6109468284866113c1565b1561095d57610955828661092a565b159050610960565b505f5b949350505050565b60208101515f9060fe161561097b575f80fd5b5f610985866113e6565b90505f610991856113e6565b90505f8061099f8a82611401565b6109aa906001612893565b60ff1690505b8951811015610a6b57836109dc896109d784858f516109cf9190612880565b8f9190611424565b6114a4565b03610a3f575f6109f7876109d785868f516109cf9190612880565b90508660800151841015610a23578381118015610a175750866080015181105b95505050505050610a73565b83811180610a1757508660800151811095505050505050610a73565b905080610a4c8a82611401565b610a57906001612893565b610a649060ff16826128ac565b90506109b0565b505f93505050505b95945050505050565b5f80610a8883856128bf565b60030b12159392505050565b610a9c61228e565b6107e48261010001515f61152d565b60a084015184515f90610abe9083611548565b90505f8660a001518760c00151610ad59190612880565b9050818111610ae2575f80fd5b5f610aed868861159f565b9050805f03610b1a57610b0c610b0384866128ac565b895190876112b4565b15610b15575f80fd5b610b5b565b87515f90610b29908686611424565b90505f8213610b36575f80fd5b5f610b41898361159f565b12156104cf575f610b52888361159f565b126104cf575f80fd5b5050505050505050565b60c08101516020820181905281515111610b7c5750565b5f610b8e825f01518360200151611548565b8260200151610b9d91906128ac565b8251909150610bac90826116ec565b61ffff166040830152610bc06002826128ac565b8251909150610bcf90826116ec565b61ffff166060830152610be36002826128ac565b8251909150610bf29082611712565b63ffffffff166080830152610c086004826128ac565b82519091505f90610c1990836116ec565b61ffff169050610c2a6002836128ac565b60a084018190529150610c3d81836128ac565b60c0909301929092525050565b6060610c54612239565b610c5e84846107ea565b61012081015180516020918201205f908152600282526040808220845161ffff16835290925220805491925090600160401b900460601b6001600160601b03191615610cc35760a08201518154610cbb919063ffffffff16610a7c565b610cc3575f80fd5b604080516060808201835260a085015163ffffffff9081168352608086015181166020808501918252610100880180518051908301206001600160601b0319168688019081526101208a0180518051908501205f908152600285528981208c5161ffff16825290945292889020965187549451915190961c600160401b0268010000000000000000600160e01b03199186166401000000000267ffffffffffffffff19909516969095169590951792909217939093169190911790925551905191517f55ced933cdd5a34dd03eb5d4bef19ec6ebb251dcd7a988eee0c1b9a13baaa88b92610db192916128e6565b60405180910390a15061010001519392505050565b610dce612239565b610dd8825f6116ec565b61ffff168152610de9826002611401565b60ff166020820152610dfc826003611401565b60ff166040820152610e0f826004611712565b63ffffffff9081166060830152610e2b90839060089061171216565b63ffffffff9081166080830152610e47908390600c9061171216565b63ffffffff90811660a0830152610e639083906010906116ec16565b61ffff1660c0820152610e7782601261173a565b60e0820181905251610eb490610e8e9060126128ac565b8260e001515160128551610ea29190612880565b610eac9190612880565b849190611424565b610100820152919050565b5f80610ed5610ece8483611548565b84906116ec565b83516020808601919091208651878301205f90815260028352604080822061ffff90951682529390925291902054600160401b900460601b6001600160601b031990811691161491505092915050565b60605f610f3184610a94565b90505b8051516020820151101561088257606081015161ffff16600114610f56575f80fd5b81515f03610f6e57610f6781611754565b9150610fa7565b60208101518151610f7e91611548565b825114610f89575f80fd5b805160208201518351610f9f9285925f92611775565b610fa7575f80fd5b8261ffff16816040015161ffff1614610fbe575f80fd5b610fc781610b65565b610f34565b5f805b83518310610fdf57610fdf61290a565b5f610fea8585611401565b60ff169050610ffa8160016128ac565b61100490856128ac565b9350805f0361101357506107e1565b61101e6001836128ac565b915050610fcf565b83518360e00151511115611038575f80fd5b61105c5f858560e0015151875161104f9190612880565b60e0870151929190611797565b611064575f80fd5b5f61106f828261152d565b9050602b61ffff16816040015161ffff160361109d576110908484836117cb565b611098575f80fd5b6110ff565b603061ffff16816040015161ffff16036110bc5761109084848361185f565b60405162461bcd60e51b8152602060048201526014602482015273139bc81d985b1a59081c1c9bdbd988199bdd5b9960621b604482015260640160405180910390fd5b5050505050565b5f806111128482611401565b61111d906001612893565b60ff1690505f5b835181101561095d5761113984828785611797565b15611149576001925050506107e4565b6111538482611401565b61115e906001612893565b61116b9060ff16826128ac565b9050611124565b6040805160c0810182525f8082526020820181905291810182905260608082018190526080820183905260a0820152906111ac83856128ac565b90506111c26111bb5f866128ac565b8690611401565b60ff1682526111d56111bb6001866128ac565b60ff1660208301526111f26111eb6002866128ac565b86906116ec565b61ffff1660408301525f61121161120a6004876128ac565b8790611401565b905061121e6005866128ac565b945061122e868660ff8416611424565b606084015261124060ff8216866128ac565b94505f61124d8787611401565b905060208160ff16111561125f575f80fd5b61126a6001876128ac565b955061127a878760ff8416611900565b608085015261128c60ff8216876128ac565b95506112a48661129c8186612880565b899190611424565b60a0850152509195945050505050565b5f60ff600883811c82169183916112cc918616612932565b90505f6112dd600780871690612952565b600160ff919091161b9050855b87518110156113b4575f6112fe8983611401565b90505f61131661130f8460016128ac565b8b90611401565b90508160ff168660ff161015611334575f96505050505050506106cb565b8160ff168660ff1603611393578460ff168160ff161161135c575f96505050505050506106cb565b8361137f61136d60ff8816866128ac565b6113789060026128ac565b8c90611401565b1660ff165f141596505050505050506106cb565b61139e816002612893565b6113ab9060ff16846128ac565b925050506112ea565b505f979650505050505050565b5f806113cd85846114a4565b90505f6113d9856113e6565b9190911495945050505050565b5f6107e460016113f68484611401565b84919060ff1661193d565b5f82828151811061141457611414612826565b016020015160f81c905092915050565b825160609061143383856128ac565b111561143d575f80fd5b5f8267ffffffffffffffff811115611457576114576123d9565b6040519080825280601f01601f191660200182016040528015611481576020820181803683370190505b50905060208082019086860101611499828287611b43565b509095945050505050565b815160ff165f9081526005602052604080822054606085015182860151925163347ced5960e11b81526001600160a01b03909216926368f9dab2926114ee9291879160040161296b565b602060405180830381865afa158015611509573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107e191906129a4565b61153561228e565b82815260c081018290526107e481610b65565b5f815b8351811061155b5761155b61290a565b5f6115668583611401565b60ff1690506115768160016128ac565b61158090836128ac565b9150805f0361158f5750611595565b5061154b565b6109608382612880565b5f6115aa8383611b98565b156115b657505f6107e4565b5f805f805f6115c5885f610fcc565b90505f6115d2885f610fcc565b90505b808211156115fe578593506115ea8987611bb3565b9550816115f6816129bb565b9250506115d5565b81811115611627578492506116138886611bb3565b94508061161f816129bb565b9150506115fe565b5f8211801561163f575061163d89878a88611797565b155b15611674578593506116518987611bb3565b95508492506116608886611bb3565b945061166d600183612880565b9150611627565b855f0361168a575f1996505050505050506107e4565b845f036116a057600196505050505050506107e4565b6116df6116ae8560016128ac565b6116b88b87611401565b60ff168a6116c78760016128ac565b6116d18d89611401565b8e949392919060ff16611bd6565b9998505050505050505050565b81515f906116fb8360026128ac565b1115611705575f80fd5b50016002015161ffff1690565b81515f906117218360046128ac565b111561172b575f80fd5b50016004015163ffffffff1690565b60605f6117478484611548565b9050610960848483611424565b602081015181516060916107e49161176c9082611548565b84519190611424565b5f611781848484611cc6565b61178c878785611cc6565b149695505050505050565b5f6117af83838486516117aa9190612880565b611cc6565b6117c186868789516117aa9190612880565b1495945050505050565b5f806117d685610a94565b90505b8051516020820151101561095d57604081015161ffff166030146117fb575f80fd5b5f61180582611ce8565b90505f61181e5f835184611d049092919063ffffffff16565b905061182c81838989611da0565b1561184f5761184561183d84611754565b868385611e9b565b93505050506106cb565b505061185a81610b65565b6117d9565b5f6118778460e0015161187184611754565b90611b98565b61187f575f80fd5b815151602083015110156118f75761189e8460e0015161187184611754565b6118a6575f80fd5b5f6118b083611ce8565b90505f6118c95f835184611d049092919063ffffffff16565b90506118d781838888611da0565b156118e7576001925050506106cb565b50506118f282610b65565b61187f565b505f9392505050565b5f602082111561190e575f80fd5b835161191a83856128ac565b1115611924575f80fd5b506020919092018101519190036101000a5f1901191690565b5f603482111561194b575f80fd5b5f80805b84811015611a29575f8761196383896128ac565b8151811061197357611973612826565b01602001516001600160f81b0319169050600360fc1b81108015906119a65750603d60f91b6001600160f81b0319821611155b6119ae575f80fd5b604051806080016040528060478152602001612b5c604791396119d6603060f884901c612880565b815181106119e6576119e6612826565b0160209081015160f81c93508311156119fd575f80fd5b611a08600187612880565b8203611a145750611a29565b5060059290921b60ff8216179160010161194f565b505f611a368560056129d0565b9050611a436008866129e7565b5f03611a5a578160ff16600584901b179250611b29565b611a656008866129e7565b600203611a935760028260ff16901c60ff16600384901b179250600281611a8c9190612880565b9050611b29565b611a9e6008866129e7565b600403611ac55760048260ff16901c60ff16600184901b179250600481611a8c9190612880565b611ad06008866129e7565b600503611af75760018260ff16901c60ff16600484901b179250600181611a8c9190612880565b611b026008866129e7565b6007036100e55760038260ff16901c60ff16600284901b179250600381611a8c9190612880565b611b3581610100612880565b9290921b9695505050505050565b60208110611b7b5781518352611b5a6020846128ac565b9250611b676020836128ac565b9150611b74602082612880565b9050611b43565b905182516020929092036101000a5f190180199091169116179052565b5f815183511480156107e157506107e1835f845f8751611775565b5f611bbe8383611401565b60ff16611bcc8360016128ac565b6107e191906128ac565b5f8480831015611be35750815b6020878901810190858701015f5b83811015611cab5782518251808214611c7b575f6020871115611c1657505f19611c52565b600184611c24896020612880565b611c2e91906128ac565b611c399060086129d0565b611c44906002612ada565b611c4e9190612880565b1990505b5f611c61838316858416612ae5565b90508015611c78579750611cbc9650505050505050565b50505b611c866020866128ac565b9450611c936020856128ac565b93505050602081611ca491906128ac565b9050611bf1565b50611cb68589612ae5565b93505050505b9695505050505050565b82515f90611cd483856128ac565b1115611cde575f80fd5b5091016020012090565b60a081015160c08201516060916107e49161176c908290612880565b604080516080810182525f8082526020820181905291810191909152606080820152611d3a611d335f856128ac565b85906116ec565b61ffff168152611d55611d4e6002856128ac565b8590611401565b60ff166020820152611d6b611d4e6003856128ac565b60ff166040820152611d94611d816004856128ac565b611d8c600485612880565b869190611424565b60608201529392505050565b5f846020015160ff16600314611db757505f610960565b826020015160ff16856040015160ff1614611dd357505f610960565b5f611ddd85611f96565b90508360c0015161ffff168161ffff1614611dfb575f915050610960565b8551610100165f03611e10575f915050610960565b60408087015160ff165f908152600360209081529082902054855191860151925163de8f50a160e01b81526001600160a01b039091169263de8f50a192611e5c928a9290600401612b04565b602060405180830381865afa158015611e77573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611cbc9190612b3c565b5f80611ea683611f96565b90505b84515160208601511015611f8b5760a085015160c08601515f91611edb91611ed2908290612880565b88519190611d04565b90508161ffff16815f015161ffff1614611ef55750611f7d565b846040015160ff16816020015160ff1614611f105750611f7d565b60408051808201909152606081525f6020820152611f3c85518951611f3591906128ac565b8290611ff7565b50611f47818961205a565b50611f52818661205a565b50611f698260400151825f0151846060015161207f565b15611f7a5760019350505050610960565b50505b611f8685610b65565b611ea9565b505f95945050505050565b5f805f5b8351811015611fe8576001811615611fbe57611fb68482611401565b60ff16611fd0565b6008611fca8583611401565b60ff16901b5b611fde9061ffff16836128ac565b9150600101611f9a565b506106cb601082901c826128ac565b60408051808201909152606081525f60208201526120166020836129e7565b1561203e576120266020836129e7565b612031906020612880565b61203b90836128ac565b91505b506020828101829052604080518085525f815290920101905290565b60408051808201909152606081525f60208201526107e183845f015151848551612126565b60ff83165f908152600460205260408120546001600160a01b03166120a557505f6106cb565b60ff84165f90815260046020819052604091829020549151637bf41d7760e11b81526001600160a01b039092169163f7e83aee916120e79187918791016128e6565b602060405180830381865afa158015612102573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109609190612b3c565b60408051808201909152606081525f60208201528251821115612147575f80fd5b602085015161215683866128ac565b111561218957612189856121798760200151878661217491906128ac565b61220c565b6121849060026129d0565b612222565b5f808651805187602083010193508088870111156121a75787860182525b505050602084015b602084106121e757805182526121c66020836128ac565b91506121d36020826128ac565b90506121e0602085612880565b93506121af565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b5f8183111561221c5750816107e4565b50919050565b815161222e8383611ff7565b50610650838261205a565b60408051610140810182525f8082526020820181905291810182905260608082018390526080820183905260a0820183905260c082019290925260e08101829052610100810182905261012081019190915290565b6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b803560ff811681146122e3575f80fd5b919050565b6001600160a01b03811681146122fc575f80fd5b50565b5f8060408385031215612310575f80fd5b612319836122d3565b91506020830135612329816122e8565b809150509250929050565b803561ffff811681146122e3575f80fd5b5f8083601f840112612355575f80fd5b50813567ffffffffffffffff81111561236c575f80fd5b602083019150836020828501011115612383575f80fd5b9250929050565b5f805f6040848603121561239c575f80fd5b6123a584612334565b9250602084013567ffffffffffffffff8111156123c0575f80fd5b6123cc86828701612345565b9497909650939450505050565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff81118282101715612416576124166123d9565b604052919050565b5f82601f83011261242d575f80fd5b813567ffffffffffffffff811115612447576124476123d9565b61245a601f8201601f19166020016123ed565b81815284602083860101111561246e575f80fd5b816020850160208301375f918101602001919091529392505050565b5f6040828403121561249a575f80fd5b6040516040810167ffffffffffffffff82821081831117156124be576124be6123d9565b8160405282935084359150808211156124d5575f80fd5b6124e18683870161241e565b835260208501359150808211156124f6575f80fd5b506125038582860161241e565b6020830152505092915050565b5f805f805f60a08688031215612524575f80fd5b61252d86612334565b9450602086013567ffffffffffffffff80821115612549575f80fd5b61255589838a0161241e565b9550604088013591508082111561256a575f80fd5b61257689838a0161248a565b9450606088013591508082111561258b575f80fd5b61259789838a0161248a565b935060808801359150808211156125ac575f80fd5b506125b98882890161241e565b9150509295509295909350565b5f602082840312156125d6575f80fd5b81356107e1816122e8565b5f805f80608085870312156125f4575f80fd5b6125fd85612334565b9350602085013567ffffffffffffffff80821115612619575f80fd5b6126258883890161241e565b9450604087013591508082111561263a575f80fd5b6126468883890161248a565b9350606087013591508082111561265b575f80fd5b506126688782880161241e565b91505092959194509250565b5f805f60408486031215612686575f80fd5b833567ffffffffffffffff8082111561269d575f80fd5b818601915086601f8301126126b0575f80fd5b81356020828211156126c4576126c46123d9565b8160051b6126d38282016123ed565b928352848101820192828101908b8511156126ec575f80fd5b83870192505b8483101561272657823586811115612708575f80fd5b6127168d86838b010161248a565b83525091830191908301906126f2565b985050508701359250508082111561273c575f80fd5b506123cc86828701612345565b5f81518084525f5b8181101561276d57602081850181015186830182015201612751565b505f602082860101526020601f19601f83011685010191505092915050565b602081525f6107e16020830184612749565b5f602082840312156127ae575f80fd5b6107e1826122d3565b5f80604083850312156127c8575f80fd5b823567ffffffffffffffff808211156127df575f80fd5b6127eb8683870161248a565b93506020850135915080821115612800575f80fd5b5061280d8582860161241e565b9150509250929050565b818382375f9101908152919050565b634e487b7160e01b5f52603260045260245ffd5b600181811c9082168061284e57607f821691505b60208210810361221c57634e487b7160e01b5f52602260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b818103818111156107e4576107e461286c565b60ff81811683821601908111156107e4576107e461286c565b808201808211156107e4576107e461286c565b600382810b9082900b03637fffffff198112637fffffff821317156107e4576107e461286c565b604081525f6128f86040830185612749565b8281036020840152610a738185612749565b634e487b7160e01b5f52600160045260245ffd5b634e487b7160e01b5f52601260045260245ffd5b5f61ffff808416806129465761294661291e565b92169190910492915050565b60ff82811682821603908111156107e4576107e461286c565b606081525f61297d6060830186612749565b828103602084015261298f8186612749565b91505061ffff83166040830152949350505050565b5f602082840312156129b4575f80fd5b5051919050565b5f816129c9576129c961286c565b505f190190565b80820281158282048414176107e4576107e461286c565b5f826129f5576129f561291e565b500690565b600181815b80851115612a3457815f1904821115612a1a57612a1a61286c565b80851615612a2757918102915b93841c93908002906129ff565b509250929050565b5f82612a4a575060016107e4565b81612a5657505f6107e4565b8160018114612a6c5760028114612a7657612a92565b60019150506107e4565b60ff841115612a8757612a8761286c565b50506001821b6107e4565b5060208310610133831016604e8410600b8410161715612ab5575081810a6107e4565b612abf83836129fa565b805f1904821115612ad257612ad261286c565b029392505050565b5f6107e18383612a3c565b8181035f8312801583831316838312821617156108825761088261286c565b606081525f612b166060830186612749565b8281036020840152612b288186612749565b90508281036040840152611cbc8185612749565b5f60208284031215612b4c575f80fd5b815180151581146107e1575f80fdfe00010203040506070809ffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fffffffffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fa164736f6c6343000818000a","storage":{"0x0":"0xbd","0x1":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1471eb6eb2c5e789fc3de43f8ce62938c7d1836ec861730447e2ada8fd81017b":"0x17cda4e23f7237277952e075b1c48467aabfacc0","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563":"0x2b000100000e1000244a5c080249aac11d7b6f6446702e54a1607371607a","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e564":"0x1a41855200fd2ce1cdde32f24e8fb500002b000100000e1000244f660802e06d","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e565":"0x44b80b8f1d39a95c0b0d7c65d08458e880409bbc683457104237c7f8ec8d0000","0x3617319a054d772f909f7c479a2cebe5066e836a939412e32403c99029b92eff":"0x5155f5627bdf9795b3dbb8887001ada1eeba93f2","0x85aaa47b6dc46495bb8824fad4583769726fea36efd831a35556690b830a8fbe":"0x6e2822b8856749ed179c77140dbc5f5a27410a4","0x91da3fd0782e51c6b3986e9e672fd566868e71f3dbc2d6c2cd6fbb3e361af2a7":"0x49da8861c65460639925febe1fb4b5b59b443082","0x95c6356c1b7a542b884d2484ef785c9c7224e77e1016c20007bddc15c23b452f":"0x3f9151d3fd1a82dcc5091909589900fd60ee767ee090bba000000000","0xabd6e7cb50984ff9c2f3e18a2660c3353dadf4e3291deeb275dae2cd1e44fe05":"0x458f653495fb8d9bd0e7df468c2bf76d26c7bd9"}},"0x9dc64b2558b458a15c7f01c192d874ef460f0a29":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x9df67c91f1bfcb4d966cf764e9218685e7c59e8a":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101d1575f3560e01c80638b95dd71116100fe578063c86902331161009e578063e32954eb1161006e578063e32954eb146104f2578063e59d895d14610505578063e985e9c514610518578063f1cb7e0614610553575f80fd5b8063c869023314610435578063ce3decdc1461048c578063d5fa2b001461049f578063d700ff33146104b2575f80fd5b8063a8fa5682116100d9578063a8fa5682146103ac578063a9784b3e146103bf578063ac9650d814610402578063bc1c58d114610422575f80fd5b80638b95dd7114610373578063a22cb46514610386578063a4b91a0114610399575f80fd5b80633603d758116101745780635c98042b116101445780635c98042b14610327578063623195b01461033a578063691f34311461034d5780637737221314610360575f80fd5b80633603d758146102975780633b3b57de146102aa5780634cbf6ba4146102bd57806359d1d43c14610307575f80fd5b8063124a319c116101af578063124a319c146102255780632203ab561461025057806329cd62ea14610271578063304e6ade14610284575f80fd5b806301ffc9a7146101d55780630af179d7146101fd57806310f13a8c14610212575b5f80fd5b6101e86101e3366004612267565b610566565b60405190151581526020015b60405180910390f35b61021061020b3660046122bd565b610576565b005b610210610220366004612304565b610778565b610238610233366004612377565b610842565b6040516001600160a01b0390911681526020016101f4565b61026361025e3660046123a1565b610a87565b6040516101f492919061240e565b61021061027f366004612426565b610bb5565b6102106102923660046122bd565b610c4d565b6102106102a536600461244f565b610cc6565b6102386102b836600461244f565b610d64565b6101e86102cb3660046123a1565b5f82815260208181526040808320546001600160401b031683526006825280832094835293815283822092825291909152205461ffff16151590565b61031a6103153660046122bd565b610d93565b6040516101f49190612466565b61031a61033536600461244f565b610e6f565b610210610348366004612478565b610f2a565b61031a61035b36600461244f565b610fc2565b61021061036e3660046122bd565b610ffa565b6102106103813660046124da565b611073565b6102106103943660046125b9565b611150565b6102106103a73660046125e3565b61122a565b61031a6103ba36600461261e565b6112f6565b6101e86103cd36600461265a565b6001600160a01b039283165f908152600c60209081526040808320948352938152838220929094168152925290205460ff1690565b6104156104103660046126ce565b611342565b6040516101f4919061270c565b61031a61043036600461244f565b61134f565b61047761044336600461244f565b5f81815260208181526040808320546001600160401b03168352600982528083209383529290522080546001909101549091565b604080519283526020830191909152016101f4565b61021061049a3660046122bd565b611387565b6102106104ad36600461276e565b6114c3565b6104da6104c036600461244f565b5f602081905290815260409020546001600160401b031681565b6040516001600160401b0390911681526020016101f4565b61041561050036600461279c565b6114e9565b6102106105133660046127d6565b6114fe565b6101e8610526366004612808565b6001600160a01b039182165f908152600b6020908152604080832093909416825291909152205460ff1690565b61031a6105613660046123a1565b6115a2565b5f61057082611666565b92915050565b826105808161168a565b610588575f80fd5b5f84815260208181526040808320548151601f87018490048402810184019092528582528392606092839285926001600160401b039091169183916105eb9183918d908d90819084018382808284375f9201919091525092939250506118b79050565b90505b80515160208201511015610712578661ffff165f03610652578060400151965061061781611912565b94508460405160200161062a9190612834565b60405160208183030381529060405280519060200120925061064b81611933565b9350610704565b5f61065c82611912565b9050816040015161ffff168861ffff16141580610680575061067e868261194f565b155b15610702576106db8c878a8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250505060208801518d91506106d2908290612863565b8b51158a61196a565b8160400151975081602001519650809550858051906020012093506106ff82611933565b94505b505b61070d81611bc9565b6105ee565b5083511561076c5761076c8a85888c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c925061076391508290508f612863565b8951158861196a565b50505050505050505050565b846107828161168a565b61078a575f80fd5b5f86815260208181526040808320546001600160401b03168352600a8252808320898452909152908190209051849184916107c89089908990612876565b908152602001604051809103902091826107e3929190612901565b5084846040516107f4929190612876565b6040518091039020867f448bc014f1536726cf8d54ff3d6481ed3cbc683c2591ca204274009afa09b1a18787878760405161083294939291906129e2565b60405180910390a3505050505050565b5f82815260208181526040808320546001600160401b031683526007825280832085845282528083206001600160e01b0319851684529091528120546001600160a01b03168015610894579050610570565b5f61089e85610d64565b90506001600160a01b0381166108b8575f92505050610570565b6040516301ffc9a760e01b60248201525f9081906001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b1790525161090f9190612834565b5f60405180830381855afa9150503d805f8114610947576040519150601f19603f3d011682016040523d82523d5f602084013e61094c565b606091505b509150915081158061095f575060208151105b80610989575080601f8151811061097857610978612a13565b01602001516001600160f81b031916155b1561099a575f945050505050610570565b6040516001600160e01b0319871660248201526001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b179052516109f09190612834565b5f60405180830381855afa9150503d805f8114610a28576040519150601f19603f3d011682016040523d82523d5f602084013e610a2d565b606091505b509092509050811580610a41575060208151105b80610a6b575080601f81518110610a5a57610a5a612a13565b01602001516001600160f81b031916155b15610a7c575f945050505050610570565b509095945050505050565b5f82815260208181526040808320546001600160401b03168352600180835281842086855290925282206060915b848111610b975780851615801590610ae457505f8181526020839052604081208054610ae090612885565b9050115b15610b8f5780825f8381526020019081526020015f20808054610b0690612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610b3290612885565b8015610b7d5780601f10610b5457610100808354040283529160200191610b7d565b820191905f5260205f20905b815481529060010190602001808311610b6057829003601f168201915b50505050509050935093505050610bae565b60011b610ab5565b505f60405180602001604052805f81525092509250505b9250929050565b82610bbf8161168a565b610bc7575f80fd5b60408051808201825284815260208082018581525f888152808352848120546001600160401b031681526009835284812089825283528490209251835551600190920191909155815185815290810184905285917f1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e4691015b60405180910390a250505050565b82610c578161168a565b610c5f575f80fd5b5f84815260208181526040808320546001600160401b03168352600382528083208784529091529020610c93838583612901565b50837fe379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d75788484604051610c3f929190612a27565b80610cd08161168a565b610cd8575f80fd5b5f82815260208190526040812080546001600160401b031691610cfa83612a3a565b82546101009290920a6001600160401b038181021990931691831602179091555f84815260208181526040918290205491519190921681528492507fc6621ccb8f3f5a04bb6502154b2caf6adf5983fe76dfef1cfc9c42e3579db444910160405180910390a25050565b5f80610d7183603c6115a2565b905080515f03610d8357505f92915050565b610d8c81611cae565b9392505050565b5f83815260208181526040808320546001600160401b03168352600a825280832086845290915290819020905160609190610dd19085908590612876565b90815260200160405180910390208054610dea90612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610e1690612885565b8015610e615780601f10610e3857610100808354040283529160200191610e61565b820191905f5260205f20905b815481529060010190602001808311610e4457829003601f168201915b505050505090509392505050565b5f81815260208181526040808320546001600160401b03168352600482528083208484529091529020805460609190610ea790612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610ed390612885565b8015610f1e5780601f10610ef557610100808354040283529160200191610f1e565b820191905f5260205f20905b815481529060010190602001808311610f0157829003601f168201915b50505050509050919050565b83610f348161168a565b610f3c575f80fd5b83610f48600182612863565b1615610f52575f80fd5b5f85815260208181526040808320546001600160401b031683526001825280832088845282528083208784529091529020610f8e838583612901565b50604051849086907faa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe3905f90a35050505050565b5f81815260208181526040808320546001600160401b03168352600882528083208484529091529020805460609190610ea790612885565b826110048161168a565b61100c575f80fd5b5f84815260208181526040808320546001600160401b03168352600882528083208784529091529020611040838583612901565b50837fb7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f78484604051610c3f929190612a27565b8261107d8161168a565b611085575f80fd5b837f65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af75284846040516110b792919061240e565b60405180910390a2603c830361110e57837f52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd26110f284611cae565b6040516001600160a01b03909116815260200160405180910390a25b5f84815260208181526040808320546001600160401b0316835260028252808320878452825280832086845290915290206111498382612a5f565b5050505050565b6001600160a01b03821633036111bf5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084015b60405180910390fd5b335f818152600b602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6001600160a01b03821633036112825760405162461bcd60e51b815260206004820181905260248201527f53657474696e672064656c65676174652073746174757320666f722073656c6660448201526064016111b6565b335f818152600c6020908152604080832087845282528083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519384529286917ff0ddb3b04746704017f9aa8bd728fcc2c1d11675041205350018915f5e4750a0910160405180910390a4505050565b5f83815260208181526040808320546001600160401b03168352600582528083208684528252808320858452825280832061ffff851684529091529020805460609190610dea90612885565b6060610d8c5f8484611ccb565b5f81815260208181526040808320546001600160401b03168352600382528083208484529091529020805460609190610ea790612885565b826113918161168a565b611399575f80fd5b5f84815260208181526040808320546001600160401b031680845260048352818420888552909252822080549192916113d190612885565b80601f01602080910402602001604051908101604052809291908181526020018280546113fd90612885565b80156114485780601f1061141f57610100808354040283529160200191611448565b820191905f5260205f20905b81548152906001019060200180831161142b57829003601f168201915b505050506001600160401b0384165f9081526004602090815260408083208b8452909152902091925061147e9050858783612901565b50857f8f15ed4b723ef428f250961da8315675b507046737e19319fc1a4d81bfe87f858287876040516114b393929190612b1e565b60405180910390a2505050505050565b816114cd8161168a565b6114d5575f80fd5b6114e483603c61038185611e88565b505050565b60606114f6848484611ccb565b949350505050565b826115088161168a565b611510575f80fd5b5f84815260208181526040808320546001600160401b031683526007825280832087845282528083206001600160e01b031987168085529083529281902080546001600160a01b0319166001600160a01b038716908117909155905190815286917f7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa910160405180910390a350505050565b5f82815260208181526040808320546001600160401b0316835260028252808320858452825280832084845290915290208054606091906115e290612885565b80601f016020809104026020016040519081016040528092919081815260200182805461160e90612885565b80156116595780601f1061163057610100808354040283529160200191611659565b820191905f5260205f20905b81548152906001019060200180831161163c57829003601f168201915b5050505050905092915050565b5f6001600160e01b03198216631674750f60e21b1480610570575061057082611eb8565b5f336001600160a01b037f0000000000000000000000004fbf7b2f171336958be5d15ff762a5cff53635681614806116ea5750336001600160a01b037f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5616145b156116f757506001919050565b6040516302571be360e01b8152600481018390525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa15801561175c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117809190612b4d565b90507f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b0316816001600160a01b031603611845576040516331a9108f60e11b8152600481018490527f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b031690636352211e90602401602060405180830381865afa15801561181e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118429190612b4d565b90505b6001600160a01b03811633148061187e57506001600160a01b0381165f908152600b6020908152604080832033845290915290205460ff165b80610d8c57506001600160a01b0381165f908152600c60209081526040808320868452825280832033845290915290205460ff16610d8c565b6118ff6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261057081611bc9565b602081015181516060916105709161192a9082611edc565b84519190611f33565b60a081015160c08201516060916105709161192a908290612863565b5f81518351148015610d8c5750610d8c835f845f8751611fa7565b865160208801205f61197d878787611f33565b90508315611aa1576001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c168452909152902080546119c690612885565b159050611a23576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611a0783612b68565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091528120611a62916121f9565b897f03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a12078a8a604051611a94929190612b84565b60405180910390a261076c565b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c16845290915290208054611ae290612885565b90505f03611b40576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611b2483612ba9565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091529020611b808282612a5f565b50897f52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b8a8a84604051611bb593929190612bbf565b60405180910390a250505050505050505050565b60c08101516020820181905281515111611be05750565b5f611bf2825f01518360200151611edc565b8260200151611c019190612bed565b8251909150611c109082611fc9565b61ffff166040830152611c24600282612bed565b8251909150611c339082611fc9565b61ffff166060830152611c47600282612bed565b8251909150611c569082611fef565b63ffffffff166080830152611c6c600482612bed565b82519091505f90611c7d9083611fc9565b61ffff169050611c8e600283612bed565b60a084018190529150611ca18183612bed565b60c0909301929092525050565b5f8151601414611cbc575f80fd5b5060200151600160601b900490565b6060816001600160401b03811115611ce557611ce56124c6565b604051908082528060200260200182016040528015611d1857816020015b6060815260200190600190039081611d035790505b5090505f5b82811015611e80578415611dd8575f848483818110611d3e57611d3e612a13565b9050602002810190611d509190612c00565b611d5f91602491600491612c42565b611d6891612c69565b9050858114611dd65760405162461bcd60e51b815260206004820152603460248201527f6d756c746963616c6c3a20416c6c207265636f726473206d7573742068617665604482015273040c240dac2e8c6d0d2dcce40dcc2dacad0c2e6d60631b60648201526084016111b6565b505b5f8030868685818110611ded57611ded612a13565b9050602002810190611dff9190612c00565b604051611e0d929190612876565b5f60405180830381855af49150503d805f8114611e45576040519150601f19603f3d011682016040523d82523d5f602084013e611e4a565b606091505b509150915081611e58575f80fd5b80848481518110611e6b57611e6b612a13565b60209081029190910101525050600101611d1d565b509392505050565b604080516014808252818301909252606091602082018180368337505050600160601b9290920260208301525090565b5f6001600160e01b0319821663c869023360e01b1480610570575061057082612017565b5f815b83518110611eef57611eef612c86565b5f611efa858361203b565b60ff169050611f0a816001612bed565b611f149083612bed565b9150805f03611f235750611f29565b50611edf565b6114f68382612863565b8251606090611f428385612bed565b1115611f4c575f80fd5b5f826001600160401b03811115611f6557611f656124c6565b6040519080825280601f01601f191660200182016040528015611f8f576020820181803683370190505b50905060208082019086860101610a7c82828761205e565b5f611fb38484846120b3565b611fbe8787856120b3565b149695505050505050565b81515f90611fd8836002612bed565b1115611fe2575f80fd5b50016002015161ffff1690565b81515f90611ffe836004612bed565b1115612008575f80fd5b50016004015163ffffffff1690565b5f6001600160e01b0319821663691f343160e01b14806105705750610570826120d5565b5f82828151811061204e5761204e612a13565b016020015160f81c905092915050565b602081106120965781518352612075602084612bed565b9250612082602083612bed565b915061208f602082612863565b905061205e565b905182516020929092036101000a5f190180199091169116179052565b82515f906120c18385612bed565b11156120cb575f80fd5b5091016020012090565b5f6001600160e01b031982166304928c6760e21b14806105705750610570825f6001600160e01b0319821663547d2b4160e11b148061212457506001600160e01b03198216635c98042b60e01b145b806105705750610570825f6001600160e01b0319821663bc1c58d160e01b14806105705750610570825f6001600160e01b03198216631d9dabef60e11b148061217d57506001600160e01b031982166378e5bf0360e11b145b806105705750610570825f6001600160e01b03198216631101d5ab60e11b14806105705750610570825f6001600160e01b0319821663d700ff3360e01b14806105705750610570825f6001600160e01b03198216634fbf043360e01b148061057057506301ffc9a760e01b6001600160e01b0319831614610570565b50805461220590612885565b5f825580601f10612214575050565b601f0160209004905f5260205f20908101906122309190612233565b50565b5b80821115612247575f8155600101612234565b5090565b80356001600160e01b031981168114612262575f80fd5b919050565b5f60208284031215612277575f80fd5b610d8c8261224b565b5f8083601f840112612290575f80fd5b5081356001600160401b038111156122a6575f80fd5b602083019150836020828501011115610bae575f80fd5b5f805f604084860312156122cf575f80fd5b8335925060208401356001600160401b038111156122eb575f80fd5b6122f786828701612280565b9497909650939450505050565b5f805f805f60608688031215612318575f80fd5b8535945060208601356001600160401b0380821115612335575f80fd5b61234189838a01612280565b90965094506040880135915080821115612359575f80fd5b5061236688828901612280565b969995985093965092949392505050565b5f8060408385031215612388575f80fd5b823591506123986020840161224b565b90509250929050565b5f80604083850312156123b2575f80fd5b50508035926020909101359150565b5f5b838110156123db5781810151838201526020016123c3565b50505f910152565b5f81518084526123fa8160208601602086016123c1565b601f01601f19169290920160200192915050565b828152604060208201525f6114f660408301846123e3565b5f805f60608486031215612438575f80fd5b505081359360208301359350604090920135919050565b5f6020828403121561245f575f80fd5b5035919050565b602081525f610d8c60208301846123e3565b5f805f806060858703121561248b575f80fd5b843593506020850135925060408501356001600160401b038111156124ae575f80fd5b6124ba87828801612280565b95989497509550505050565b634e487b7160e01b5f52604160045260245ffd5b5f805f606084860312156124ec575f80fd5b833592506020840135915060408401356001600160401b0380821115612510575f80fd5b818601915086601f830112612523575f80fd5b813581811115612535576125356124c6565b604051601f8201601f19908116603f0116810190838211818310171561255d5761255d6124c6565b81604052828152896020848701011115612575575f80fd5b826020860160208301375f6020848301015280955050505050509250925092565b6001600160a01b0381168114612230575f80fd5b80358015158114612262575f80fd5b5f80604083850312156125ca575f80fd5b82356125d581612596565b9150612398602084016125aa565b5f805f606084860312156125f5575f80fd5b83359250602084013561260781612596565b9150612615604085016125aa565b90509250925092565b5f805f60608486031215612630575f80fd5b8335925060208401359150604084013561ffff8116811461264f575f80fd5b809150509250925092565b5f805f6060848603121561266c575f80fd5b833561267781612596565b925060208401359150604084013561264f81612596565b5f8083601f84011261269e575f80fd5b5081356001600160401b038111156126b4575f80fd5b6020830191508360208260051b8501011115610bae575f80fd5b5f80602083850312156126df575f80fd5b82356001600160401b038111156126f4575f80fd5b6127008582860161268e565b90969095509350505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b8281101561276157603f1988860301845261274f8583516123e3565b94509285019290850190600101612733565b5092979650505050505050565b5f806040838503121561277f575f80fd5b82359150602083013561279181612596565b809150509250929050565b5f805f604084860312156127ae575f80fd5b8335925060208401356001600160401b038111156127ca575f80fd5b6122f78682870161268e565b5f805f606084860312156127e8575f80fd5b833592506127f86020850161224b565b9150604084013561264f81612596565b5f8060408385031215612819575f80fd5b823561282481612596565b9150602083013561279181612596565b5f82516128458184602087016123c1565b9190910192915050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156105705761057061284f565b818382375f9101908152919050565b600181811c9082168061289957607f821691505b6020821081036128b757634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156114e457805f5260205f20601f840160051c810160208510156128e25750805b601f840160051c820191505b81811015611149575f81556001016128ee565b6001600160401b03831115612918576129186124c6565b61292c836129268354612885565b836128bd565b5f601f84116001811461295d575f85156129465750838201355b5f19600387901b1c1916600186901b178355611149565b5f83815260208120601f198716915b8281101561298c578685013582556020948501946001909201910161296c565b50868210156129a8575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b604081525f6129f56040830186886129ba565b8281036020840152612a088185876129ba565b979650505050505050565b634e487b7160e01b5f52603260045260245ffd5b602081525f6114f66020830184866129ba565b5f6001600160401b03808316818103612a5557612a5561284f565b6001019392505050565b81516001600160401b03811115612a7857612a786124c6565b612a8c81612a868454612885565b846128bd565b602080601f831160018114612abf575f8415612aa85750858301515b5f19600386901b1c1916600185901b178555612b16565b5f85815260208120601f198616915b82811015612aed57888601518255948401946001909101908401612ace565b5085821015612b0a57878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b604081525f612b3060408301866123e3565b8281036020840152612b438185876129ba565b9695505050505050565b5f60208284031215612b5d575f80fd5b8151610d8c81612596565b5f61ffff821680612b7b57612b7b61284f565b5f190192915050565b604081525f612b9660408301856123e3565b905061ffff831660208301529392505050565b5f61ffff808316818103612a5557612a5561284f565b606081525f612bd160608301866123e3565b61ffff851660208401528281036040840152612b4381856123e3565b808201808211156105705761057061284f565b5f808335601e19843603018112612c15575f80fd5b8301803591506001600160401b03821115612c2e575f80fd5b602001915036819003821315610bae575f80fd5b5f8085851115612c50575f80fd5b83861115612c5c575f80fd5b5050820193919092039150565b80356020831015610570575f19602084900360031b1b1692915050565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{}},"0xa06a63155145b7f2fda96d9658ec7fef3b9dcf76":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b506004361061004a575f3560e01c80634ce34aa21461004e578063899e104c1461007e5780638df25d9214610091578063c4e8fcb5146100a4575b5f80fd5b61006161005c366004610834565b6100b9565b6040516001600160e01b0319909116815260200160405180910390f35b61006161008c3660046108b4565b610121565b61006161009f36600461091b565b61018a565b6100b76100b2366004610969565b6101c7565b005b5f335f525f60205260405f20546100dd576349ed56f960e11b5f523360045260245ffd5b815f5b81811015610110576101088585838181106100fd576100fd6109a2565b905060c002016102c4565b6001016100e0565b50632671a55160e11b949350505050565b5f335f525f60205260405f2054610145576349ed56f960e11b5f523360045260245ffd5b835f5b8181101561016d576101658787838181106100fd576100fd6109a2565b600101610148565b506101788484610436565b50632267841360e21b95945050505050565b5f335f525f60205260405f20546101ae576349ed56f960e11b5f523360045260245ffd5b6101b88383610436565b506346f92ec960e11b92915050565b336001600160a01b037f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c1614610210576040516336abb4df60e11b815260040160405180910390fd5b6001600160a01b0382165f9081526020819052604090205481151560ff909116151503610268576040516349271a0f60e11b81526001600160a01b038316600482015281151560248201526044015b60405180910390fd5b6001600160a01b0382165f8181526020818152604091829020805460ff191685151590811790915591519182527fae63067d43ac07563b7eb8db6595635fc77f1578a2a5ea06ba91b63e2afa37e2910160405180910390a25050565b60016102d360208301836109ca565b60038111156102e4576102e46109b6565b03610329576103266102fc60408301602084016109ef565b61030c60608401604085016109ef565b61031c60808501606086016109ef565b8460a0013561056c565b50565b600261033860208301836109ca565b6003811115610349576103496109b6565b036103b6578060a00135600114610379576040516369f9582760e01b815260a0820135600482015260240161025f565b61032661038c60408301602084016109ef565b61039c60608401604085016109ef565b6103ac60808501606086016109ef565b8460800135610660565b60036103c560208301836109ca565b60038111156103d6576103d66109b6565b0361041d576103266103ee60408301602084016109ef565b6103fe60608401604085016109ef565b61040e60808501606086016109ef565b84608001358560a00135610715565b604051631e4cbc7f60e21b815260040160405180910390fd5b808280631759616b60e11b6020525f5b8381101561055f57823582018035803b61046b57635f15d6725f52806020526024601cfd5b60a08201358060051b60c0018060808501351460a0606086013514168185013583141615905080156104a657633ae8821360e21b5f5260045ffd5b506020860195506080602084016024378060061b60400190508060a00160a4525f8160c401528060c4018160a0850160c4375f808260205f875af1935083610550573d1561053057601f3d0160051c91508060051c826003028184111561051a578184036003028280028580020360091c01015b5a60208201101561052d573d5f803e3d5ffd5b50505b6357e222f160e11b5f528260045260c0606452608451602001608452805ffd5b50505050600181019050610446565b5050505060806040525050565b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166106515780873b15151661065157806106405781610623573d1561060257601f3d0160051c8360051c81600302818311156105eb578183036003028280028480020360091c01015b5a6020820110156105fe573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b833b61067757635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af180610707573d156106e557601f3d0160051c8260051c81600302818311156106ce578183036003028280028480020360091c01015b5a6020820110156106e1573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b61072c57635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af1806107d1573d156107b057601f3d0160051c8560051c8160030281831115610799578183036003028280028480020360091c01015b5a6020820110156107ac573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b5f8083601f8401126107fc575f80fd5b50813567ffffffffffffffff811115610813575f80fd5b60208301915083602060c08302850101111561082d575f80fd5b9250929050565b5f8060208385031215610845575f80fd5b823567ffffffffffffffff81111561085b575f80fd5b610867858286016107ec565b90969095509350505050565b5f8083601f840112610883575f80fd5b50813567ffffffffffffffff81111561089a575f80fd5b6020830191508360208260051b850101111561082d575f80fd5b5f805f80604085870312156108c7575f80fd5b843567ffffffffffffffff808211156108de575f80fd5b6108ea888389016107ec565b90965094506020870135915080821115610902575f80fd5b5061090f87828801610873565b95989497509550505050565b5f806020838503121561092c575f80fd5b823567ffffffffffffffff811115610942575f80fd5b61086785828601610873565b80356001600160a01b0381168114610964575f80fd5b919050565b5f806040838503121561097a575f80fd5b6109838361094e565b915060208301358015158114610997575f80fd5b809150509250929050565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52602160045260245ffd5b5f602082840312156109da575f80fd5b8135600481106109e8575f80fd5b9392505050565b5f602082840312156109ff575f80fd5b6109e88261094e56fea164736f6c6343000818000a","storage":{}},"0xaa33d7188eb4b4a51c37199eaad2f73cf2bf0204":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0xac52f68f31577e44ae0c7e95a42dc9eb574b9383":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a424740014610090575b600080fd5b610059610054366004610cac565b6100b3565b6040516100669190610d9b565b60405180910390f35b61008261007d366004610dae565b610162565b604051908152602001610066565b6100a361009e366004610cac565b6101d6565b6040519015158152602001610066565b606060005a90506101576100ca6020870187610ddc565b6001546001600160a01b03166040880135846100e960608b018b610df9565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061023592505050565b9150505b9392505050565b600154604051636ccbae5f60e01b8152600481018390526000916001600160a01b031690636ccbae5f90602401602060405180830381865afa1580156101ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d09190610e40565b92915050565b600061022d6101e485610ef1565b600154604080516020601f88018190048102820181019092528681526001600160a01b039092169190879087908190840183828082843760009201919091525061030d92505050565b949350505050565b6060600080876001600160a01b0316866102518b8a8989610355565b60405161025e9190610f9b565b60006040518083038160008787f1925050503d806000811461029c576040519150601f19603f3d011682016040523d82523d6000602084013e6102a1565b606091505b5090925090506102b2603f87610fb7565b5a116102c0576102c0610fd9565b61030082826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061040a565b9998505050505050505050565b600061031a848484610443565b801561022d575060608401516020908101516001600160e01b031990811660009081529182905260409091205460e01b16151561022d565b50565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036103e75760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526103ff82828661058c565b979650505050505050565b6060831561041957508161015b565b8251156104295782518084602001fd5b8160405162461bcd60e51b81526004016103de9190610d9b565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561048a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104ae9190610e40565b9050600061055c8660600151805190602001208688602001516040516020016104fc9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561058257508551610582906001600160a01b03168286610a38565b9695505050505050565b60606001600160e01b03198416631de5861160e31b0361061a576000806000858060200190518101906105bf9190610fef565b92509250925086838383886040516024016105dd9493929190611032565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152935061015b92505050565b6001600160e01b03198416636debcb8d60e01b0361064b576000806000858060200190518101906105bf9190610fef565b6001600160e01b0319841663280d9b0560e01b036106dd576000806000808680602001905181019061067d91906110aa565b935093509350935087848484848a60405160240161069f959493929190611118565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152945061015b9350505050565b6001600160e01b031984166361603dd960e01b0361075c5760008380602001905181019061070b9190610e40565b905084818460405160240161072192919061115d565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152915061015b9050565b6001600160e01b0319841663b34f33c560e01b036107ab5760008060008580602001905181019061078d9190611176565b92509250925086838383886040516024016105dd94939291906111d0565b6001600160e01b03198416633013529360e01b036107dc5760008060008580602001905181019061078d9190611176565b6001600160e01b031984166307eca39560e01b03610830576000806000808680602001905181019061080e9190611209565b935093509350935087848484848a60405160240161069f95949392919061127e565b6001600160e01b031984166368b6154f60e01b03610862576000806000808680602001905181019061067d91906110aa565b6001600160e01b0319841663341de35b60e21b03610894576000806000808680602001905181019061067d91906110aa565b6001600160e01b03198416637a84860f60e11b0361092d576000806000806000878060200190518101906108c891906112cb565b945094509450945094508885858585858c6040516024016108ee96959493929190611360565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152955061015b945050505050565b6001600160e01b03198416636fab95b360e01b036109b2576000808480602001905181019061095c91906113b9565b915091508582828660405160240161097693929190611400565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925061015b915050565b6001600160e01b0319841663288f888960e11b0361015b57600080848060200190518101906109e1919061142b565b91509150858282866040516024016109fb93929190611459565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925050509392505050565b6000806000610a478585610b7a565b90925090506000816004811115610a6057610a60611489565b148015610a7e5750856001600160a01b0316826001600160a01b0316145b15610a8e5760019250505061015b565b600080876001600160a01b0316631626ba7e60e01b8888604051602401610ab692919061115d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051610af49190610f9b565b600060405180830381855afa9150503d8060008114610b2f576040519150601f19603f3d011682016040523d82523d6000602084013e610b34565b606091505b5091509150818015610b47575080516020145b8015610b6e57508051630b135d3f60e11b90610b6c9083016020908101908401610e40565b145b98975050505050505050565b6000808251604103610bb05760208301516040840151606085015160001a610ba487828585610bbf565b94509450505050610bb8565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610bf65750600090506003610ca3565b8460ff16601b14158015610c0e57508460ff16601c14155b15610c1f5750600090506004610ca3565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610c73573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610c9c57600060019250925050610ca3565b9150600090505b94509492505050565b600080600060408486031215610cc157600080fd5b833567ffffffffffffffff80821115610cd957600080fd5b9085019060808288031215610ced57600080fd5b90935060208501359080821115610d0357600080fd5b818601915086601f830112610d1757600080fd5b813581811115610d2657600080fd5b876020828501011115610d3857600080fd5b6020830194508093505050509250925092565b60005b83811015610d66578181015183820152602001610d4e565b50506000910152565b60008151808452610d87816020860160208601610d4b565b601f01601f19169290920160200192915050565b60208152600061015b6020830184610d6f565b600060208284031215610dc057600080fd5b5035919050565b6001600160a01b038116811461035257600080fd5b600060208284031215610dee57600080fd5b813561015b81610dc7565b6000808335601e19843603018112610e1057600080fd5b83018035915067ffffffffffffffff821115610e2b57600080fd5b602001915036819003821315610bb857600080fd5b600060208284031215610e5257600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610e9257610e92610e59565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ec157610ec1610e59565b604052919050565b600067ffffffffffffffff821115610ee357610ee3610e59565b50601f01601f191660200190565b600060808236031215610f0357600080fd5b610f0b610e6f565b8235610f1681610dc7565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610f4657600080fd5b840136601f820112610f5757600080fd5b8035610f6a610f6582610ec9565b610e98565b8181523684838501011115610f7e57600080fd5b818484018583013760009181019093015250606082015292915050565b60008251610fad818460208701610d4b565b9190910192915050565b600082610fd457634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b60008060006060848603121561100457600080fd5b835161100f81610dc7565b602085015190935061102081610dc7565b80925050604084015190509250925092565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061058290830184610d6f565b600082601f83011261107657600080fd5b8151611084610f6582610ec9565b81815284602083860101111561109957600080fd5b61022d826020830160208701610d4b565b600080600080608085870312156110c057600080fd5b84516110cb81610dc7565b60208601519094506110dc81610dc7565b60408601516060870151919450925067ffffffffffffffff81111561110057600080fd5b61110c87828801611065565b91505092959194509250565b6001600160a01b038681168252851660208201526040810184905260a06060820181905260009061114b90830185610d6f565b8281036080840152610b6e8185610d6f565b82815260406020820152600061022d6040830184610d6f565b60008060006060848603121561118b57600080fd5b835161119681610dc7565b60208501516040860151919450925067ffffffffffffffff8111156111ba57600080fd5b6111c686828701611065565b9150509250925092565b60018060a01b03851681528360208201526080604082015260006111f76080830185610d6f565b82810360608401526103ff8185610d6f565b6000806000806080858703121561121f57600080fd5b845161122a81610dc7565b60208601516040870151919550935067ffffffffffffffff8082111561124f57600080fd5b61125b88838901611065565b9350606087015191508082111561127157600080fd5b5061110c87828801611065565b60018060a01b038616815284602082015260a0604082015260006112a560a0830186610d6f565b82810360608401526112b78186610d6f565b90508281036080840152610b6e8185610d6f565b600080600080600060a086880312156112e357600080fd5b85516112ee81610dc7565b60208701519095506112ff81610dc7565b60408701516060880151919550935067ffffffffffffffff8082111561132457600080fd5b61133089838a01611065565b9350608088015191508082111561134657600080fd5b5061135388828901611065565b9150509295509295909350565b6001600160a01b038781168252861660208201526040810185905260c06060820181905260009061139390830186610d6f565b82810360808401526113a58186610d6f565b905082810360a08401526103008185610d6f565b600080604083850312156113cc57600080fd5b82519150602083015167ffffffffffffffff8111156113ea57600080fd5b6113f685828601611065565b9150509250929050565b8381526060602082015260006114196060830185610d6f565b82810360408401526105828185610d6f565b6000806040838503121561143e57600080fd5b825161144981610dc7565b6020939093015192949293505050565b60018060a01b03841681528260208201526060604082015260006114806060830184610d6f565b95945050505050565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a","storage":{"0x1":"0x7bb6cd9be29fab783c0b494a06fed8b2e2596b7a","0xd8b896d609e853134f3f02ce62d8049b2fdfe9356134f6d548fb1beda30db79":"0x30135293","0x4f457f36b92dc6b16c281e5877e2d8d39630135c1b7246fa9174035e1efcefbd":"0x6fab95b3","0x6b7ba3fe9941e089de60543da4a1deaef065baa963222951b2f9a138f9960820":"0x6debcb8d","0x70cff8e4ee4af5aa154324d45bcf258212c235bbe79f0707bb6273110ef4e13a":"0xf5090c1e","0x73efb0e44094dbabc6bbeecd3be1d81f272157c2dae2d647e6315f150b0b1dd2":"0xd0778d6c","0x8b1c4edded6644848281eab03ac2c319242d62b2057cffa3dd4540715bbc155e":"0xef2c3088","0xbeb5ea8fc2aeae43b7170220434aa4429fb067f0866ae25514b29f647641ca8c":"0x511f1112","0xca659f6eb372ce950e69d4d474290a6a4285f6a06a6128ca9f45419371a1e997":"0xb34f33c5","0xd12e300b5f35ba5198dd81dab97a512a154a0ad0e2cda788abdc22deba64f2a7":"0x280d9b05","0xd5453e7f4fff276a1d42f717d1db50865c284ae707a15bd6a590a3895656f27c":"0x7eca395","0xea2575ae4056f10294a848ca5ed6d215dffd1b80838142770bc441f7df607d71":"0x61603dd9","0xf8ca3ef1e3d09a0d88e209301f12626c90bec3ea586d4bce2c7a58e7eae8278f":"0x68b6154f"}},"0xb17aae5b3a7815433fc82cfd67ea245767894f03":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061012a5760003560e01c80638d839ffe116100ab578063aeb8ce9b1161006f578063aeb8ce9b146105d7578063ce1e09c014610688578063f14fcbc81461069d578063f2fde38b146106c7578063f49826be146106fa578063f7a16963146107b95761012a565b80638d839ffe1461045d5780638da5cb5b146104725780638f32d59b146104a35780639791c097146104b8578063acf1a841146105695761012a565b80637e324479116100f25780637e324479146102b8578063839df945146102e857806383e7f6ff1461031257806385f6d155146103c55780638a95b09f146104485761012a565b806301ffc9a71461012f5780633ccfd60b146101775780633d86c52f1461018e578063530e784f14610270578063715018a6146102a3575b600080fd5b34801561013b57600080fd5b506101636004803603602081101561015257600080fd5b50356001600160e01b031916610881565b604080519115158252519081900360200190f35b34801561018357600080fd5b5061018c610a12565b005b34801561019a57600080fd5b5061025e600480360360a08110156101b157600080fd5b810190602081018135600160201b8111156101cb57600080fd5b8201836020820111156101dd57600080fd5b803590602001918460018302840111600160201b831117156101fe57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b0383358116945060208401359360408101358216935060600135169050610a53565b60408051918252519081900360200190f35b34801561027c57600080fd5b5061018c6004803603602081101561029357600080fd5b50356001600160a01b0316610b42565b3480156102af57600080fd5b5061018c610ba3565b3480156102c457600080fd5b5061018c600480360360408110156102db57600080fd5b5080359060200135610bfe565b3480156102f457600080fd5b5061025e6004803603602081101561030b57600080fd5b5035610c1a565b34801561031e57600080fd5b5061025e6004803603604081101561033557600080fd5b810190602081018135600160201b81111561034f57600080fd5b82018360208201111561036157600080fd5b803590602001918460018302840111600160201b8311171561038257600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505091359250610c2c915050565b61018c600480360360808110156103db57600080fd5b810190602081018135600160201b8111156103f557600080fd5b82018360208201111561040757600080fd5b803590602001918460018302840111600160201b8311171561042857600080fd5b91935091506001600160a01b038135169060208101359060400135610d9e565b34801561045457600080fd5b5061025e610de9565b34801561046957600080fd5b5061025e610df0565b34801561047e57600080fd5b50610487610df6565b604080516001600160a01b039092168252519081900360200190f35b3480156104af57600080fd5b50610163610e05565b3480156104c457600080fd5b50610163600480360360208110156104db57600080fd5b810190602081018135600160201b8111156104f557600080fd5b82018360208201111561050757600080fd5b803590602001918460018302840111600160201b8311171561052857600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610e16945050505050565b61018c6004803603604081101561057f57600080fd5b810190602081018135600160201b81111561059957600080fd5b8201836020820111156105ab57600080fd5b803590602001918460018302840111600160201b831117156105cc57600080fd5b919350915035610e2b565b3480156105e357600080fd5b50610163600480360360208110156105fa57600080fd5b810190602081018135600160201b81111561061457600080fd5b82018360208201111561062657600080fd5b803590602001918460018302840111600160201b8311171561064757600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610fcf945050505050565b34801561069457600080fd5b5061025e611069565b3480156106a957600080fd5b5061018c600480360360208110156106c057600080fd5b503561106f565b3480156106d357600080fd5b5061018c600480360360208110156106ea57600080fd5b50356001600160a01b03166110a1565b34801561070657600080fd5b5061025e6004803603606081101561071d57600080fd5b810190602081018135600160201b81111561073757600080fd5b82018360208201111561074957600080fd5b803590602001918460018302840111600160201b8311171561076a57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b0383351693505050602001356110bb565b61018c600480360360c08110156107cf57600080fd5b810190602081018135600160201b8111156107e957600080fd5b8201836020820111156107fb57600080fd5b803590602001918460018302840111600160201b8311171561081c57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b038335811694506020840135936040810135935060608101358216925060800135166110d3565b604080517f737570706f727473496e74657266616365286279746573342900000000000000815290519081900360190190206000906001600160e01b0319838116911614806109c05750604080517472656e657728737472696e672c75696e743235362960581b815290519081900360150181209080602861186a8239604080519182900360280182206e636f6d6d697428627974657333322960881b8352905191829003600f01822090925090806026611892823960260190506040518091039020604051808070617661696c61626c6528737472696e672960781b8152506011019050604051809103902060405180807f72656e74507269636528737472696e672c75696e7432353629000000000000008152506019019050604051809103902018181818186001600160e01b031916826001600160e01b031916145b80610a0c5750604051808061182a60409139604080519182900301812091508060426118b8823960420190506040518091039020186001600160e01b031916826001600160e01b031916145b92915050565b610a1a610e05565b610a2357600080fd5b6040513390303180156108fc02916000818181858888f19350505050158015610a50573d6000803e3d6000fd5b50565b845160208601206000906001600160a01b038416158015610a7b57506001600160a01b038316155b15610acb57604080516020808201939093526bffffffffffffffffffffffff19606089901b1681830152605480820188905282518083039091018152607490910190915280519101209050610b39565b6001600160a01b038416610ade57600080fd5b604080516020808201939093526bffffffffffffffffffffffff19606089811b82168385015287811b8216605484015286901b166068820152607c80820188905282518083039091018152609c909101909152805191012090505b95945050505050565b610b4a610e05565b610b5357600080fd5b600280546001600160a01b0319166001600160a01b0383811691909117918290556040519116907ff261845a790fe29bbd6631e2ca4a5bdc83e6eed7c3271d9590d97287e00e912390600090a250565b610bab610e05565b610bb457600080fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b610c06610e05565b610c0f57600080fd5b600391909155600455565b60056020526000908152604090205481565b815160208084019190912060025460015460408051636b727d4360e11b81526004810185905290516000956001600160a01b03948516946350e9a715948a9491169263d6e4fa8692602480840193919291829003018186803b158015610c9157600080fd5b505afa158015610ca5573d6000803e3d6000fd5b505050506040513d6020811015610cbb57600080fd5b50516040516001600160e01b031960e085901b168152602481018290526044810188905260606004820190815283516064830152835189928291608490910190602087019080838360005b83811015610d1e578181015183820152602001610d06565b50505050905090810190601f168015610d4b5780820380516001836020036101000a031916815260200191505b5094505050505060206040518083038186803b158015610d6a57600080fd5b505afa158015610d7e573d6000803e3d6000fd5b505050506040513d6020811015610d9457600080fd5b5051949350505050565b610de285858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250889350879250869150806110d3565b5050505050565b6224ea0081565b60035481565b6000546001600160a01b031690565b6000546001600160a01b0316331490565b60006003610e2383611646565b101592915050565b6000610e6e84848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250869250610c2c915050565b905080341015610e7d57600080fd5b60008484604051808383808284376040805193909101839003832060015463c475abff60e01b855260048501829052602485018b90529151909750600096506001600160a01b03909116945063c475abff93506044808401936020935082900301818787803b158015610eef57600080fd5b505af1158015610f03573d6000803e3d6000fd5b505050506040513d6020811015610f1957600080fd5b5051905034831015610f565760405133903485900380156108fc02916000818181858888f19350505050158015610f54573d6000803e3d6000fd5b505b817f3da24c024582931cfaf8267d8ed24d13a82a8068d5bd337d30ec45cea4e506ae8787868560405180806020018481526020018381526020018281038252868682818152602001925080828437600083820152604051601f909101601f191690920182900397509095505050505050a2505050505050565b80516020820120600090610fe283610e16565b80156110625750600154604080516312dc929d60e31b81526004810184905290516001600160a01b03909216916396e494e891602480820192602092909190829003018186803b15801561103557600080fd5b505afa158015611049573d6000803e3d6000fd5b505050506040513d602081101561105f57600080fd5b50515b9392505050565b60045481565b6004546000828152600560205260409020544291011061108e57600080fd5b6000908152600560205260409020429055565b6110a9610e05565b6110b257600080fd5b610a508161172e565b60006110cb848484600080610a53565b949350505050565b60006110e28787868686610a53565b905060006110f188878461179c565b885160208a01209091508060006001600160a01b038716156114ac5760015460408051633f2891eb60e21b815260048101859052306024820152604481018c905290516001600160a01b039092169163fca247ac916064808201926020929091908290030181600087803b15801561116857600080fd5b505af115801561117c573d6000803e3d6000fd5b505050506040513d602081101561119257600080fd5b505160015460408051630ddf7fcb60e41b815290519293506000926001600160a01b039092169163ddf7fcb091600480820192602092909190829003018186803b1580156111df57600080fd5b505afa1580156111f3573d6000803e3d6000fd5b505050506040513d602081101561120957600080fd5b50516040805160208181019390935280820187905281518082038301815260608201808452815191850191909120600154633f15457f60e01b90925292519294506001600160a01b031692633f15457f92606480840193829003018186803b15801561127457600080fd5b505afa158015611288573d6000803e3d6000fd5b505050506040513d602081101561129e57600080fd5b505160408051630c4b7b8560e11b8152600481018490526001600160a01b038b8116602483015291519190921691631896f70a91604480830192600092919082900301818387803b1580156112f257600080fd5b505af1158015611306573d6000803e3d6000fd5b505050506001600160a01b0387161561139257876001600160a01b031663d5fa2b0082896040518363ffffffff1660e01b815260040180838152602001826001600160a01b03166001600160a01b0316815260200192505050600060405180830381600087803b15801561137957600080fd5b505af115801561138d573d6000803e3d6000fd5b505050505b60015460408051630a3b53db60e21b8152600481018690526001600160a01b038e81166024830152915191909216916328ed4f6c91604480830192600092919082900301818387803b1580156113e757600080fd5b505af11580156113fb573d6000803e3d6000fd5b50505050600160009054906101000a90046001600160a01b03166001600160a01b03166323b872dd308d866040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050600060405180830381600087803b15801561148e57600080fd5b505af11580156114a2573d6000803e3d6000fd5b505050505061154c565b6001600160a01b038616156114c057600080fd5b60015460408051633f2891eb60e21b8152600481018590526001600160a01b038d81166024830152604482018d90529151919092169163fca247ac9160648083019260209291908290030181600087803b15801561151d57600080fd5b505af1158015611531573d6000803e3d6000fd5b505050506040513d602081101561154757600080fd5b505190505b896001600160a01b0316837fca6abbe9d7f11422cb6ca7629fbf6fe9efb1c621f71ce8f02b9f2a230097404f8d87856040518080602001848152602001838152602001828103825285818151815260200191508051906020019080838360005b838110156115c45781810151838201526020016115ac565b50505050905090810190601f1680156115f15780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a3833411156116395760405133903486900380156108fc02916000818181858888f19350505050158015611637573d6000803e3d6000fd5b505b5050505050505050505050565b8051600090819081905b8082101561172557600085838151811061166657fe5b01602001516001600160f81b0319169050600160ff1b81101561168e57600183019250611719565b600760fd1b6001600160f81b0319821610156116af57600283019250611719565b600f60fc1b6001600160f81b0319821610156116d057600383019250611719565b601f60fb1b6001600160f81b0319821610156116f157600483019250611719565b603f60fa1b6001600160f81b03198216101561171257600583019250611719565b6006830192505b50600190920191611650565b50909392505050565b6001600160a01b03811661174157600080fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b600354600082815260056020526040812054909142910111156117be57600080fd5b600454600083815260056020526040902054429101116117dd57600080fd5b6117e684610fcf565b6117ef57600080fd5b600082815260056020526040812081905561180a8585610c2c565b90506224ea0084101561181c57600080fd5b803410156110cb57600080fdfe6d616b65436f6d6d69746d656e7457697468436f6e66696728737472696e672c616464726573732c627974657333322c616464726573732c6164647265737329726567697374657228737472696e672c616464726573732c75696e743235362c62797465733332296d616b65436f6d6d69746d656e7428737472696e672c616464726573732c6279746573333229726567697374657257697468436f6e66696728737472696e672c616464726573732c75696e743235362c627974657333322c616464726573732c6164647265737329a265627a7a72315820ba74b4e49afb22de09a9ebda5d073d93e2a2a7b2530ce50def390c32cac92ea064736f6c634300050c0032","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1":"0xc965345edac823d56812cd20a10316233916a605","0x2":"0xec71e4e674fe0f432693dc2b935c34bd2774c003","0x3":"0x258","0x4":"0x15180"}},"0xbdefcf6429d0ac68236a6beb321cbd2ce66b463c":{"nonce":2,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c80636d435421116100885780637b37e561116100635780637b37e561146102435780638b9e028b14610256578063906c87cc1461027657806393790f4414610289575f80fd5b80636d435421146101eb5780636e9bfd9f146101fe578063794593bc14610230575f80fd5b806314afd79e116100c357806314afd79e1461018157806333bc8572146101945780634e3f9580146101b757806351710e45146101d8575f80fd5b8063027cc764146100e95780630a96ad391461011957806313ad9cab1461016c575b5f80fd5b6100fc6100f7366004610c39565b61029c565b6040516001600160a01b0390911681526020015b60405180910390f35b604080517f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f81527fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167602082015201610110565b61017f61017a366004610c61565b610339565b005b6100fc61018f366004610ca9565b610531565b6101a76101a2366004610cc9565b61055c565b6040519015158152602001610110565b6101ca6101c5366004610ca9565b610595565b604051908152602001610110565b61017f6101e6366004610ca9565b6105bd565b61017f6101f9366004610cc9565b6106be565b61021161020c366004610cfa565b6107ae565b604080516001600160a01b039093168352901515602083015201610110565b6100fc61023e366004610d11565b610838565b61017f610251366004610ca9565b610a0a565b610269610264366004610ca9565b610aab565b6040516101109190610d32565b6100fc610284366004610ca9565b610b28565b6101ca610297366004610ca9565b610b53565b5f6102a683610b8e565b6001600160a01b0383165f908152602081905260409020600301548083106102f157604051636ceb340b60e01b81526001600160a01b03851660048201526024015b60405180910390fd5b6001600160a01b0384165f90815260208190526040902060030180548490811061031d5761031d610d7e565b5f918252602090912001546001600160a01b0316949350505050565b61034283610bc6565b60405163c4e8fcb560e01b81526001600160a01b038381166004830152821515602483015284169063c4e8fcb5906044015f604051808303815f87803b15801561038a575f80fd5b505af115801561039c573d5f803e3d5ffd5b505050506001600160a01b038381165f908152602081815260408083209386168352600484019091529020548015158380156103d6575080155b15610425576003830180546001810182555f828152602080822090920180546001600160a01b0319166001600160a01b038a169081179091559254928152600486019091526040902055610529565b831580156104305750805b156105295760038301545f198301905f9061044d90600190610d92565b90508181146104d8575f85600301828154811061046c5761046c610d7e565b5f918252602090912001546003870180546001600160a01b03909216925082918590811061049c5761049c610d7e565b5f91825260208083209190910180546001600160a01b0319166001600160a01b0394851617905592909116815260048701909152604090208490555b846003018054806104eb576104eb610db7565b5f828152602080822083015f1990810180546001600160a01b03191690559092019092556001600160a01b0389168252600487019052604081205550505b505050505050565b5f61053b82610b8e565b506001600160a01b039081165f908152602081905260409020600101541690565b5f61056683610b8e565b506001600160a01b039182165f9081526020818152604080832093909416825260049092019091522054151590565b5f61059f82610b8e565b506001600160a01b03165f9081526020819052604090206003015490565b6105c681610b8e565b6001600160a01b038181165f9081526020819052604090206002015416331461060d576040516388c3a11560e01b81526001600160a01b03821660048201526024016102e8565b6040515f907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da908290a26001600160a01b038082165f818152602081905260408082206002810180546001600160a01b031916905560010154905133949190911692917fc8894f26f396ce8c004245c8b7cd1b92103a6e4302fcbab883987149ac01b7ec91a46001600160a01b03165f90815260208190526040902060010180546001600160a01b03191633179055565b6106c782610bc6565b6001600160a01b0381166106f95760405163a388d26360e01b81526001600160a01b03831660048201526024016102e8565b6001600160a01b038083165f9081526020819052604090206002015481169082160361074b576040516365e0406560e11b81526001600160a01b038084166004830152821660248201526044016102e8565b6040516001600160a01b038216907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da905f90a26001600160a01b039182165f90815260208190526040902060020180546001600160a01b03191691909216179055565b5f8060ff60f81b30847f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f6040516020016107eb9493929190610dcb565b60408051601f198184030181529190528051602090910120936001600160a01b0385163f7fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167149350915050565b5f6001600160a01b0382166108605760405163267eaa8160e21b815260040160405180910390fd5b606083901c3314610884576040516332db94d160e21b815260040160405180910390fd5b6040516108c3906001600160f81b031990309086907f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f90602001610dcb565b604051602081830303815290604052805190602001205f1c90507fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167816001600160a01b03163f0361093257604051633194665960e11b81526001600160a01b03821660048201526024016102e8565b8260405161093f90610c16565b8190604051809103905ff590508015801561095c573d5f803e3d5ffd5b50506001600160a01b038181165f81815260208181526040918290206001810180546001600160a01b03191695881695909517909455868455815192835282018690527f4397af6128d529b8ae0442f99db1296d5136062597a15bbc61c1b2a6431a7d15910160405180910390a16040516001600160a01b03808516915f918516907fc8894f26f396ce8c004245c8b7cd1b92103a6e4302fcbab883987149ac01b7ec908390a45092915050565b610a1381610bc6565b6001600160a01b038181165f9081526020819052604090206002015416610a58576040516335809b0b60e11b81526001600160a01b03821660048201526024016102e8565b6040515f907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da908290a26001600160a01b03165f90815260208190526040902060020180546001600160a01b0319169055565b6060610ab682610b8e565b6001600160a01b0382165f908152602081815260409182902060030180548351818402810184019094528084529091830182828015610b1c57602002820191905f5260205f20905b81546001600160a01b03168152600190910190602001808311610afe575b50505050509050919050565b5f610b3282610b8e565b506001600160a01b039081165f908152602081905260409020600201541690565b6001600160a01b0381165f9081526020819052604090205480610b89576040516304ca820960e41b815260040160405180910390fd5b919050565b6001600160a01b0381165f90815260208190526040902054610bc3576040516304ca820960e41b815260040160405180910390fd5b50565b610bcf81610b8e565b6001600160a01b038181165f90815260208190526040902060010154163314610bc35760405163d4ed9a1760e01b81526001600160a01b03821660048201526024016102e8565b610a4180610e0583390190565b80356001600160a01b0381168114610b89575f80fd5b5f8060408385031215610c4a575f80fd5b610c5383610c23565b946020939093013593505050565b5f805f60608486031215610c73575f80fd5b610c7c84610c23565b9250610c8a60208501610c23565b915060408401358015158114610c9e575f80fd5b809150509250925092565b5f60208284031215610cb9575f80fd5b610cc282610c23565b9392505050565b5f8060408385031215610cda575f80fd5b610ce383610c23565b9150610cf160208401610c23565b90509250929050565b5f60208284031215610d0a575f80fd5b5035919050565b5f8060408385031215610d22575f80fd5b82359150610cf160208401610c23565b602080825282518282018190525f9190848201906040850190845b81811015610d725783516001600160a01b031683529284019291840191600101610d4d565b50909695505050505050565b634e487b7160e01b5f52603260045260245ffd5b81810381811115610db157634e487b7160e01b5f52601160045260245ffd5b92915050565b634e487b7160e01b5f52603160045260245ffd5b6001600160f81b031994909416845260609290921b6bffffffffffffffffffffffff19166001840152601583015260358201526055019056fe60a060405234801561000f575f80fd5b5033608052608051610a1561002c5f395f6101d20152610a155ff3fe608060405234801561000f575f80fd5b506004361061004a575f3560e01c80634ce34aa21461004e578063899e104c1461007e5780638df25d9214610091578063c4e8fcb5146100a4575b5f80fd5b61006161005c366004610834565b6100b9565b6040516001600160e01b0319909116815260200160405180910390f35b61006161008c3660046108b4565b610121565b61006161009f36600461091b565b61018a565b6100b76100b2366004610969565b6101c7565b005b5f335f525f60205260405f20546100dd576349ed56f960e11b5f523360045260245ffd5b815f5b81811015610110576101088585838181106100fd576100fd6109a2565b905060c002016102c4565b6001016100e0565b50632671a55160e11b949350505050565b5f335f525f60205260405f2054610145576349ed56f960e11b5f523360045260245ffd5b835f5b8181101561016d576101658787838181106100fd576100fd6109a2565b600101610148565b506101788484610436565b50632267841360e21b95945050505050565b5f335f525f60205260405f20546101ae576349ed56f960e11b5f523360045260245ffd5b6101b88383610436565b506346f92ec960e11b92915050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610210576040516336abb4df60e11b815260040160405180910390fd5b6001600160a01b0382165f9081526020819052604090205481151560ff909116151503610268576040516349271a0f60e11b81526001600160a01b038316600482015281151560248201526044015b60405180910390fd5b6001600160a01b0382165f8181526020818152604091829020805460ff191685151590811790915591519182527fae63067d43ac07563b7eb8db6595635fc77f1578a2a5ea06ba91b63e2afa37e2910160405180910390a25050565b60016102d360208301836109ca565b60038111156102e4576102e46109b6565b03610329576103266102fc60408301602084016109ef565b61030c60608401604085016109ef565b61031c60808501606086016109ef565b8460a0013561056c565b50565b600261033860208301836109ca565b6003811115610349576103496109b6565b036103b6578060a00135600114610379576040516369f9582760e01b815260a0820135600482015260240161025f565b61032661038c60408301602084016109ef565b61039c60608401604085016109ef565b6103ac60808501606086016109ef565b8460800135610660565b60036103c560208301836109ca565b60038111156103d6576103d66109b6565b0361041d576103266103ee60408301602084016109ef565b6103fe60608401604085016109ef565b61040e60808501606086016109ef565b84608001358560a00135610715565b604051631e4cbc7f60e21b815260040160405180910390fd5b808280631759616b60e11b6020525f5b8381101561055f57823582018035803b61046b57635f15d6725f52806020526024601cfd5b60a08201358060051b60c0018060808501351460a0606086013514168185013583141615905080156104a657633ae8821360e21b5f5260045ffd5b506020860195506080602084016024378060061b60400190508060a00160a4525f8160c401528060c4018160a0850160c4375f808260205f875af1935083610550573d1561053057601f3d0160051c91508060051c826003028184111561051a578184036003028280028580020360091c01015b5a60208201101561052d573d5f803e3d5ffd5b50505b6357e222f160e11b5f528260045260c0606452608451602001608452805ffd5b50505050600181019050610446565b5050505060806040525050565b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166106515780873b15151661065157806106405781610623573d1561060257601f3d0160051c8360051c81600302818311156105eb578183036003028280028480020360091c01015b5a6020820110156105fe573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b833b61067757635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af180610707573d156106e557601f3d0160051c8260051c81600302818311156106ce578183036003028280028480020360091c01015b5a6020820110156106e1573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b61072c57635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af1806107d1573d156107b057601f3d0160051c8560051c8160030281831115610799578183036003028280028480020360091c01015b5a6020820110156107ac573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b5f8083601f8401126107fc575f80fd5b50813567ffffffffffffffff811115610813575f80fd5b60208301915083602060c08302850101111561082d575f80fd5b9250929050565b5f8060208385031215610845575f80fd5b823567ffffffffffffffff81111561085b575f80fd5b610867858286016107ec565b90969095509350505050565b5f8083601f840112610883575f80fd5b50813567ffffffffffffffff81111561089a575f80fd5b6020830191508360208260051b850101111561082d575f80fd5b5f805f80604085870312156108c7575f80fd5b843567ffffffffffffffff808211156108de575f80fd5b6108ea888389016107ec565b90965094506020870135915080821115610902575f80fd5b5061090f87828801610873565b95989497509550505050565b5f806020838503121561092c575f80fd5b823567ffffffffffffffff811115610942575f80fd5b61086785828601610873565b80356001600160a01b0381168114610964575f80fd5b919050565b5f806040838503121561097a575f80fd5b6109838361094e565b915060208301358015158114610997575f80fd5b809150509250929050565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52602160045260245ffd5b5f602082840312156109da575f80fd5b8135600481106109e8575f80fd5b9392505050565b5f602082840312156109ff575f80fd5b6109e88261094e56fea164736f6c6343000818000aa164736f6c6343000818000a","storage":{}},"0xbe5deac45dd1ca4ee18dc2d585d84d3d3cb82b0d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c806341539d4a146100465780634d5505d314610097578063afa764d7146100b1575b600080fd5b6100636004803603602081101561005c57600080fd5b50356100dc565b6040805195865260208601949094528484019290925260608401526001600160a01b03166080830152519081900360a00190f35b61009f610114565b60408051918252519081900360200190f35b6100da600480360360608110156100c757600080fd5b508035906020810135906040013561011a565b005b60006020819052908152604090208054600182015460028301546003840154600490940154929391929091906001600160a01b031685565b60015481565b6101226101eb565b506040805160a0810182528481526020808201858152828401858152426060808601918252336080870181815260018054810180825560009081528089528a81208a518155975188830155955160028801559351600387015551600490950180546001600160a01b0319166001600160a01b0390961695909517909455905486518981529485018890528487018a905295519495919491937fba5de06d22af2685c6c7765f60067f7d2b08c2d29f53cdf14d67f6d1c9bfb527929081900390910190a450505050565b6040518060a001604052806000801916815260200160008152602001600081526020016000815260200160006001600160a01b03168152509056fea164736f6c6343000606000a","storage":{"0x1":"0x0"}},"0xbe92182cab5b84fd18b34881a0c32771e84f5b8b":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061021c5760003560e01c80638da5cb5b11610125578063bebec6b4116100ad578063e985e9c51161007c578063e985e9c514610540578063f059235914610553578063f2fde38b14610566578063ffa1ad7414610579578063ffad6f551461059d57600080fd5b8063bebec6b4146104e7578063bfc5429b146104fa578063c15ae7cf1461050d578063c87b56dd1461052d57600080fd5b8063a81ce6f9116100f4578063a81ce6f91461046d578063ac9650d814610480578063b3f9e4cb146104a0578063b85afd28146104b3578063b98b3526146104d457600080fd5b80638da5cb5b146103f157806391015f6b146103f9578063933c051d1461041b578063a3f4df7e1461043d57600080fd5b80634bd79ed0116101a857806370a082311161017757806370a082311461038d578063715018a6146103a05780637e37479e146103a857806383caffbe146103bb578063869b8884146103ce57600080fd5b80634bd79ed0146103335780634f558e79146103465780636352211e14610359578063672b9f811461036c57600080fd5b80631bd8cc1a116101ef5780631bd8cc1a146102ac5780631be5e7ed146102cc578063276fabb1146102ec578063430c20811461030d578063485cc9551461032057600080fd5b806301ffc9a7146102215780630328075514610249578063081812fc1461026c57806313af403514610297575b600080fd5b61023461022f366004612c9d565b6105b0565b60405190151581526020015b60405180910390f35b61025c610257366004612d0b565b610638565b6040516102409493929190612dfe565b61027f61027a366004612e3c565b61065b565b6040516001600160a01b039091168152602001610240565b6102aa6102a5366004612e6a565b610760565b005b6102bf6102ba366004612d0b565b6107d1565b6040516102409190612e87565b6102df6102da366004612edb565b6107f0565b6040516102409190612f12565b6102ff6102fa366004612f25565b61091b565b604051908152602001610240565b61023461031b366004612f66565b61098f565b6102aa61032e366004612f92565b610aa2565b6102aa610341366004612fcb565b610bf5565b610234610354366004612e3c565b610e51565b61027f610367366004612e3c565b610e5c565b61037f61037a366004613036565b610e67565b604051610240929190613058565b6102ff61039b366004612e6a565b610f97565b6102aa611095565b6102ff6103b6366004612e6a565b6110a9565b6102bf6103c936600461307d565b611118565b6103e16103dc366004612fcb565b6114f0565b60405161024094939291906131bb565b61027f6116e6565b61040c610407366004612d0b565b611714565b60405161024093929190613208565b61042e610429366004612fcb565b611734565b60405161024093929190613234565b6102df604051806040016040528060118152602001702aa7299d10283937bc3c902932b0b232b960791b81525081565b61027f61047b366004612e3c565b6118bd565b61049361048e366004612f25565b61198b565b6040516102409190613277565b61027f6104ae366004612e3c565b611a7f565b6104c66104c1366004612d0b565b611b05565b6040516102409291906132d9565b6102df6104e23660046132fe565b611ce1565b6102df6104f5366004612e6a565b611cfb565b6102df6105083660046132fe565b611d6f565b61052061051b366004612f25565b611d89565b6040516102409190613371565b6102df61053b366004612e3c565b611e37565b61023461054e366004612f92565b611f09565b6102aa610561366004612fcb565b611f54565b6102aa610574366004612e6a565b612018565b6102df604051806040016040528060058152602001640302e352e360dc1b81525081565b6102aa6105ab366004613384565b612085565b60006001600160e01b031982166362526e6360e01b14806105e157506001600160e01b03198216636fa624af60e11b145b806105fc57506001600160e01b031982166308da864d60e31b145b8061061757506001600160e01b03198216638584880360e01b145b8061063257506301ffc9a760e01b6001600160e01b03198316145b92915050565b6000806060806106498787876120d8565b93509350935093505b93509350935093565b60006106668261233a565b61067257506000919050565b61067b826123d2565b6106f25760665460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa1580156106c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106ed91906133bd565b610632565b60655460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa15801561073c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061063291906133bd565b600061076a6116e6565b6001600160a01b0316146107c55760405162461bcd60e51b815260206004820152601e60248201527f50726f78795265616465723a204f574e45525f414c52454144595f534554000060448201526064015b60405180910390fd5b6107ce81612419565b50565b60606107e66107e0848661346a565b83612495565b90505b9392505050565b60606107fb826123d2565b1561088057606554604051631be5e7ed60e01b81526001600160a01b0390911690631be5e7ed9061083490879087908790600401613547565b600060405180830381865afa158015610851573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261087991908101906135b0565b90506107e9565b600061088b83612617565b90506001600160a01b0381163b1561091357604051631be5e7ed60e01b81526001600160a01b03821690631be5e7ed906108cd90889088908890600401613547565b600060405180830381865afa92505050801561090b57506040513d6000823e601f3d908101601f1916820160405261090891908101906135b0565b60015b156109135791505b509392505050565b60655460405163276fabb160e01b81526000916001600160a01b03169063276fabb19061094e908690869060040161366c565b602060405180830381865afa15801561096b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613680565b600061099a8261233a565b6109a657506000610632565b6109af826123d2565b610a2d5760665460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a04573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a289190613699565b6107e9565b60655460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a7e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613699565b600054610100900460ff1615808015610ac25750600054600160ff909116105b80610adc5750303b158015610adc575060005460ff166001145b610b3f5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107bc565b6000805460ff191660011790558015610b62576000805461ff0019166101001790555b606580546001600160a01b038086166001600160a01b0319928316179092556066805492851692909116919091179055610b9a61268a565b610ba261268a565b610baa6126b1565b8015610bf0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b610bfd6126e1565b828114610c4c5760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107bc565b60005b83811015610e4a5760006068868684818110610c6d57610c6d6136bb565b9050602002810190610c7f91906136d1565b604051610c8d929190613717565b908152604051908190036020019020541115610cf1576068858583818110610cb757610cb76136bb565b9050602002810190610cc991906136d1565b604051610cd7929190613717565b90815260200160405180910390206000610cf19190612c18565b60005b838383818110610d0657610d066136bb565b9050602002810190610d189190613727565b9050811015610ddc576068868684818110610d3557610d356136bb565b9050602002810190610d4791906136d1565b604051610d55929190613717565b9081526020016040518091039020848484818110610d7557610d756136bb565b9050602002810190610d879190613727565b83818110610d9757610d976136bb565b9050602002810190610da991906136d1565b82546001810184556000938452602090932090920191610dc991836137f8565b5080610dd4816138cd565b915050610cf4565b507fb2b57b54285120d17f49f2490a39ef791441fd0ad1e6b6818c23262bf91f061c858583818110610e1057610e106136bb565b9050602002810190610e2291906136d1565b604051610e309291906138e6565b60405180910390a180610e42816138cd565b915050610c4f565b5050505050565b60006106328261233a565b600061063282612740565b606080610e73836123d2565b15610ef95760655460405163672b9f8160e01b815260048101869052602481018590526001600160a01b039091169063672b9f8190604401600060405180830381865afa158015610ec8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610ef091908101906138fa565b91509150610f90565b6000610f0484612617565b90506001600160a01b0381163b15610f8e5760405163672b9f8160e01b815260048101869052602481018590526001600160a01b0382169063672b9f8190604401600060405180830381865afa925050508015610f8357506040513d6000823e601f3d908101601f19168201604052610f8091908101906138fa565b60015b15610f8e5790935091505b505b9250929050565b6065546040516370a0823160e01b81526001600160a01b03838116600483015260009283929116906370a0823190602401602060405180830381865afa158015610fe5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110099190613680565b6066549091506001600160a01b031615610632576066546040516370a0823160e01b81526001600160a01b038581166004830152909116906370a0823190602401602060405180830381865afa158015611067573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061108b9190613680565b6107e9908261395d565b61109d6126e1565b6110a76000612419565b565b606554604051633f1ba3cf60e11b81526001600160a01b0383811660048301526000921690637e37479e90602401602060405180830381865afa1580156110f4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190613680565b606060006067868660405161112e929190613717565b9081526020016040518091039020805461114790613770565b80601f016020809104026020016040519081016040528092919081815260200182805461117390613770565b80156111c05780601f10611195576101008083540402835291602001916111c0565b820191906000526020600020905b8154815290600101906020018083116111a357829003601f168201915b5050505050905080516000036111d657506114e8565b6000604051806040016040528060068152602001653a37b5b2b71760d11b81525090506000604051806040016040528060088152602001672e6164647265737360c01b81525090506000604051806040016040528060018152602001601760f91b815250905060008385838c8c868d8d8a60405160200161125f99989796959493929190613970565b6040516020818303038152906040529050600060688260405161128291906139f3565b9081526020016040518091039020805480602002602001604051908101604052809291908181526020016000905b8282101561135c5783829060005260206000200180546112cf90613770565b80601f01602080910402602001604051908101604052809291908181526020018280546112fb90613770565b80156113485780601f1061131d57610100808354040283529160200191611348565b820191906000526020600020905b81548152906001019060200180831161132b57829003601f168201915b5050505050815260200190600101906112b0565b50505050905080516003611370919061395d565b6001600160401b03811115611387576113876133da565b6040519080825280602002602001820160405280156113ba57816020015b60608152602001906001900390816113a55790505b50965081876000815181106113d1576113d16136bb565b602002602001018190525060005b815181101561143e578181815181106113fa576113fa6136bb565b602002602001015188826001611410919061395d565b81518110611420576114206136bb565b60200260200101819052508080611436906138cd565b9150506113df565b508486848d8d8860405160200161145a96959493929190613a0f565b6040516020818303038152906040528782516001611478919061395d565b81518110611488576114886136bb565b60200260200101819052508486856040516020016114a893929190613a72565b60405160208183030381529060405287825160026114c6919061395d565b815181106114d6576114d66136bb565b60200260200101819052505050505050505b949350505050565b6060808080846001600160401b0381111561150d5761150d6133da565b604051908082528060200260200182016040528015611536578160200160208202803683370190505b509350846001600160401b03811115611551576115516133da565b60405190808252806020026020018201604052801561157a578160200160208202803683370190505b509250846001600160401b03811115611595576115956133da565b6040519080825280602002602001820160405280156115c857816020015b60608152602001906001900390816115b35790505b509150846001600160401b038111156115e3576115e36133da565b60405190808252806020026020018201604052801561161657816020015b60608152602001906001900390816116015790505b50905060005b858110156116da57611647898989898581811061163b5761163b6136bb565b905060200201356120d8565b888581518110611659576116596136bb565b60200260200101888681518110611672576116726136bb565b6020026020010188878151811061168b5761168b6136bb565b602002602001018888815181106116a4576116a46136bb565b6020908102919091010193909352929091526001600160a01b0392831690915291169052806116d2816138cd565b91505061161c565b50945094509450949050565b7fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c8121905546001600160a01b031690565b6000806060611724868686612761565b9250925092505b93509350939050565b60608080836001600160401b03811115611750576117506133da565b604051908082528060200260200182016040528015611779578160200160208202803683370190505b509250836001600160401b03811115611794576117946133da565b6040519080825280602002602001820160405280156117bd578160200160208202803683370190505b509150836001600160401b038111156117d8576117d86133da565b60405190808252806020026020018201604052801561180b57816020015b60608152602001906001900390816117f65790505b50905060005b848110156118b25761183c8888888885818110611830576118306136bb565b90506020020135612761565b86848151811061184e5761184e6136bb565b60200260200101868581518110611867576118676136bb565b60200260200101868681518110611880576118806136bb565b60209081029190910101929092526001600160a01b0392831690915291169052806118aa816138cd565b915050611811565b509450945094915050565b606554604051634f558e7960e01b8152600481018390526000916001600160a01b031690634f558e7990602401602060405180830381865afa158015611907573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061192b9190613699565b156119415750506065546001600160a01b031690565b6066546001600160a01b03161580159061196d575060006119618361296c565b6001600160a01b031614155b156119835750506066546001600160a01b031690565b506000919050565b6060816001600160401b038111156119a5576119a56133da565b6040519080825280602002602001820160405280156119d857816020015b60608152602001906001900390816119c35790505b50905060005b82811015611a7857611a48308585848181106119fc576119fc6136bb565b9050602002810190611a0e91906136d1565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061299e92505050565b828281518110611a5a57611a5a6136bb565b60200260200101819052508080611a70906138cd565b9150506119de565b5092915050565b6000611a8a8261233a565b611a9657506000919050565b611a9f826123d2565b611ad45760665460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb906024016106ac565b60655460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb9060240161071f565b606080836001600160401b03811115611b2057611b206133da565b604051908082528060200260200182016040528015611b5357816020015b6060815260200190600190039081611b3e5790505b509150836001600160401b03811115611b6e57611b6e6133da565b604051908082528060200260200182016040528015611ba157816020015b6060815260200190600190039081611b8c5790505b509050611bad836123d2565b15611c345760655460405163170b5fa560e31b81526001600160a01b039091169063b85afd2890611be690889088908890600401613ab5565b600060405180830381865afa158015611c03573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611c2b9190810190613b72565b91509150611cd9565b6000611c3f84612617565b90506001600160a01b0381163b15158015611c5957508415155b15611cd75760405163170b5fa560e31b81526001600160a01b0382169063b85afd2890611c8e90899089908990600401613ab5565b600060405180830381865afa925050508015611ccc57506040513d6000823e601f3d908101601f19168201604052611cc99190810190613b72565b60015b15611cd75790935091505b505b935093915050565b6060611cf08686868686612a92565b979650505050505050565b606554604051632fafb1ad60e21b81526001600160a01b038381166004830152606092169063bebec6b4906024015b600060405180830381865afa158015611d47573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261063291908101906135b0565b6060611d7e8686868686612a92565b509695505050505050565b6060816001600160401b03811115611da357611da36133da565b604051908082528060200260200182016040528015611dcc578160200160208202803683370190505b50905060005b82811015611a7857611dfb848483818110611def57611def6136bb565b90506020020135612740565b828281518110611e0d57611e0d6136bb565b6001600160a01b039092166020928302919091019091015280611e2f816138cd565b915050611dd2565b6060611e428261233a565b611e5a57505060408051602081019091526000815290565b611e63826123d2565b611ed85760665460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401600060405180830381865afa158015611eb0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106ed91908101906135b0565b60655460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401611d2a565b60405162461bcd60e51b815260206004820152601f60248201527f50726f78795265616465723a20554e535550504f525445445f4d4554484f440060448201526000906064016107bc565b611f5c6126e1565b828114611fab5760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107bc565b60005b83811015610e4a57612006858583818110611fcb57611fcb6136bb565b9050602002810190611fdd91906136d1565b858585818110611fef57611fef6136bb565b905060200281019061200191906136d1565b612b3e565b80612010816138cd565b915050611fae565b6120206126e1565b6001600160a01b0381166107c55760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107bc565b61208d6126e1565b60005b83811015610e4a576120c68585838181106120ad576120ad6136bb565b90506020028101906120bf91906136d1565b8585612b3e565b806120d0816138cd565b915050612090565b600080606080856001600160401b038111156120f6576120f66133da565b60405190808252806020026020018201604052801561212957816020015b60608152602001906001900390816121145790505b509150856001600160401b03811115612144576121446133da565b60405190808252806020026020018201604052801561217757816020015b60608152602001906001900390816121625790505b509050612183856123d2565b156122845760655460405163b3f9e4cb60e01b8152600481018790526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa1580156121d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121f591906133bd565b935061220085612bad565b60655460405163170b5fa560e31b81529194506001600160a01b03169063b85afd2890612235908a908a908a90600401613ab5565b600060405180830381865afa158015612252573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261227a9190810190613b72565b9092509050610652565b61228d85612617565b93506122988561296c565b92506001600160a01b0384163b151580156122b4575060008251115b156106525760405163170b5fa560e31b81526001600160a01b0385169063b85afd28906122e9908a908a908a90600401613ab5565b600060405180830381865afa92505050801561232757506040513d6000823e601f3d908101601f191682016040526123249190810190613b72565b60015b1561065257909250905093509350935093565b6000612345826123d2565b6123645760006123548361296c565b6001600160a01b03161415610632565b606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e79906024015b602060405180830381865afa1580156123ae573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190613699565b6066546000906001600160a01b031615806106325750606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401612391565b60006124236116e6565b9050817fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c812190580546001600160a01b0319166001600160a01b03928316179055604051838216918316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b606082516001600160401b038111156124b0576124b06133da565b6040519080825280602002602001820160405280156124e357816020015b60608152602001906001900390816124ce5790505b5090506124ef826123d2565b1561257257606554604051630dec660d60e11b81526001600160a01b0390911690631bd8cc1a906125269086908690600401613bcb565b600060405180830381865afa158015612543573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261256b9190810190613bed565b9050610632565b600061257d83612617565b90506001600160a01b0381163b15158015612599575060008451115b15611a7857604051630dec660d60e11b81526001600160a01b03821690631bd8cc1a906125cc9087908790600401613bcb565b600060405180830381865afa92505050801561260a57506040513d6000823e601f3d908101601f191682016040526126079190810190613bed565b60015b15611a7857949350505050565b60665460405163b3f9e4cb60e01b8152600481018390526000916001600160a01b03169063b3f9e4cb906024015b602060405180830381865afa92505050801561267e575060408051601f3d908101601f1916820190925261267b918101906133bd565b60015b61063257506000919050565b600054610100900460ff166110a75760405162461bcd60e51b81526004016107bc90613c21565b600054610100900460ff166126d85760405162461bcd60e51b81526004016107bc90613c21565b6110a733612419565b336126ea6116e6565b6001600160a01b0316146110a75760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107bc565b600061274b826123d2565b612758576106ed8261296c565b61063282612bad565b6000806060846001600160401b0381111561277e5761277e6133da565b6040519080825280602002602001820160405280156127b157816020015b606081526020019060019003908161279c5790505b5090506127bd846123d2565b156128bb5760655460405163b3f9e4cb60e01b8152600481018690526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561280b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061282f91906133bd565b925061283a84612bad565b606554604051630dec660d60e11b81529193506001600160a01b031690631bd8cc1a9061286f90899089908990600401613c6c565b600060405180830381865afa15801561288c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526128b49190810190613bed565b905061172b565b6128c484612617565b92506128cf8461296c565b91506001600160a01b0383163b151580156128e957508415155b1561172b57604051630dec660d60e11b81526001600160a01b03841690631bd8cc1a9061291e90899089908990600401613c6c565b600060405180830381865afa92505050801561295c57506040513d6000823e601f3d908101601f191682016040526129599190810190613bed565b60015b1561172b57905093509350939050565b6066546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401612645565b60606001600160a01b0383163b612a065760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b60648201526084016107bc565b600080846001600160a01b031684604051612a2191906139f3565b600060405180830381855af49150503d8060008114612a5c576040519150601f19603f3d011682016040523d82523d6000602084013e612a61565b606091505b5091509150612a898282604051806060016040528060278152602001613c8160279139612bdf565b95945050505050565b6060806000612aa388888888611118565b90506000612ab18286612495565b905060005b8151811015612b31576000828281518110612ad357612ad36136bb565b6020026020010151511115612b1f57828181518110612af457612af46136bb565b60200260200101519350818181518110612b1057612b106136bb565b60200260200101519450612b31565b80612b29816138cd565b915050612ab6565b5050509550959350505050565b818160678686604051612b52929190613717565b90815260200160405180910390209182612b6d9291906137f8565b507f0bf4b04a0f6d7d0800284e1abb0f58f795c0a25b9088634b6ab847be51001dec8484604051612b9f9291906138e6565b60405180910390a150505050565b6065546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401612645565b60608315612bee5750816107e9565b825115612bfe5782518084602001fd5b8160405162461bcd60e51b81526004016107bc9190612f12565b50805460008255906000526020600020908101906107ce91905b80821115612c4f576000612c468282612c53565b50600101612c32565b5090565b508054612c5f90613770565b6000825580601f10612c6f575050565b601f0160209004906000526020600020908101906107ce91905b80821115612c4f5760008155600101612c89565b600060208284031215612caf57600080fd5b81356001600160e01b0319811681146107e957600080fd5b60008083601f840112612cd957600080fd5b5081356001600160401b03811115612cf057600080fd5b6020830191508360208260051b8501011115610f9057600080fd5b600080600060408486031215612d2057600080fd5b83356001600160401b03811115612d3657600080fd5b612d4286828701612cc7565b909790965060209590950135949350505050565b60005b83811015612d71578181015183820152602001612d59565b50506000910152565b60008151808452612d92816020860160208601612d56565b601f01601f19169290920160200192915050565b600082825180855260208086019550808260051b84010181860160005b84811015612df157601f19868403018952612ddf838351612d7a565b98840198925090830190600101612dc3565b5090979650505050505050565b6001600160a01b03858116825284166020820152608060408201819052600090612e2a90830185612da6565b8281036060840152611cf08185612da6565b600060208284031215612e4e57600080fd5b5035919050565b6001600160a01b03811681146107ce57600080fd5b600060208284031215612e7c57600080fd5b81356107e981612e55565b6020815260006107e96020830184612da6565b60008083601f840112612eac57600080fd5b5081356001600160401b03811115612ec357600080fd5b602083019150836020828501011115610f9057600080fd5b600080600060408486031215612ef057600080fd5b83356001600160401b03811115612f0657600080fd5b612d4286828701612e9a565b6020815260006107e96020830184612d7a565b60008060208385031215612f3857600080fd5b82356001600160401b03811115612f4e57600080fd5b612f5a85828601612cc7565b90969095509350505050565b60008060408385031215612f7957600080fd5b8235612f8481612e55565b946020939093013593505050565b60008060408385031215612fa557600080fd5b8235612fb081612e55565b91506020830135612fc081612e55565b809150509250929050565b60008060008060408587031215612fe157600080fd5b84356001600160401b0380821115612ff857600080fd5b61300488838901612cc7565b9096509450602087013591508082111561301d57600080fd5b5061302a87828801612cc7565b95989497509550505050565b6000806040838503121561304957600080fd5b50508035926020909101359150565b60408152600061306b6040830185612d7a565b8281036020840152612a898185612d7a565b6000806000806040858703121561309357600080fd5b84356001600160401b03808211156130aa57600080fd5b6130b688838901612e9a565b909650945060208701359150808211156130cf57600080fd5b5061302a87828801612e9a565b600081518084526020808501945080840160005b838110156131155781516001600160a01b0316875295820195908201906001016130f0565b509495945050505050565b60008282518085526020808601955060058183821b8501018287016000805b868110156131ac57601f1988850381018c5283518051808752908801908887019080891b88018a01865b8281101561319557858a8303018452613183828651612d7a565b948c0194938c01939150600101613169565b509e8a019e9750505093870193505060010161313f565b50919998505050505050505050565b6080815260006131ce60808301876130dc565b82810360208401526131e081876130dc565b905082810360408401526131f48186613120565b90508281036060840152611cf08185613120565b6001600160a01b03848116825283166020820152606060408201819052600090612a8990830184612da6565b60608152600061324760608301866130dc565b828103602084015261325981866130dc565b9050828103604084015261326d8185613120565b9695505050505050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156132cc57603f198886030184526132ba858351612d7a565b9450928501929085019060010161329e565b5092979650505050505050565b6040815260006132ec6040830185612da6565b8281036020840152612a898185612da6565b60008060008060006060868803121561331657600080fd5b85356001600160401b038082111561332d57600080fd5b61333989838a01612e9a565b9097509550602088013591508082111561335257600080fd5b5061335f88828901612e9a565b96999598509660400135949350505050565b6020815260006107e960208301846130dc565b6000806000806040858703121561339a57600080fd5b84356001600160401b03808211156133b157600080fd5b6130b688838901612cc7565b6000602082840312156133cf57600080fd5b81516107e981612e55565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715613418576134186133da565b604052919050565b60006001600160401b03821115613439576134396133da565b5060051b60200190565b60006001600160401b0382111561345c5761345c6133da565b50601f01601f191660200190565b600061347d61347884613420565b6133f0565b80848252602080830192508560051b85013681111561349b57600080fd5b855b818110156135125780356001600160401b038111156134bc5760008081fd5b870136601f8201126134ce5760008081fd5b80356134dc61347882613443565b81815236868385010111156134f15760008081fd5b8186840187830137600091810186019190915286525093820193820161349d565b50919695505050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60408152600061355b60408301858761351e565b9050826020830152949350505050565b600082601f83011261357c57600080fd5b815161358a61347882613443565b81815284602083860101111561359f57600080fd5b6114e8826020830160208701612d56565b6000602082840312156135c257600080fd5b81516001600160401b038111156135d857600080fd5b6114e88482850161356b565b60008383855260208086019550808560051b8301018460005b87811015612df157848303601f19018952813536889003601e1901811261362357600080fd5b870184810190356001600160401b0381111561363e57600080fd5b80360382131561364d57600080fd5b61365885828461351e565b9a86019a94505050908301906001016135fd565b6020815260006107e66020830184866135e4565b60006020828403121561369257600080fd5b5051919050565b6000602082840312156136ab57600080fd5b815180151581146107e957600080fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e198436030181126136e857600080fd5b8301803591506001600160401b0382111561370257600080fd5b602001915036819003821315610f9057600080fd5b8183823760009101908152919050565b6000808335601e1984360301811261373e57600080fd5b8301803591506001600160401b0382111561375857600080fd5b6020019150600581901b3603821315610f9057600080fd5b600181811c9082168061378457607f821691505b6020821081036137a457634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115610bf057600081815260208120601f850160051c810160208610156137d15750805b601f850160051c820191505b818110156137f0578281556001016137dd565b505050505050565b6001600160401b0383111561380f5761380f6133da565b6138238361381d8354613770565b836137aa565b6000601f841160018114613857576000851561383f5750838201355b600019600387901b1c1916600186901b178355610e4a565b600083815260209020601f19861690835b828110156138885786850135825560209485019460019092019101613868565b50868210156138a55760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b634e487b7160e01b600052601160045260246000fd5b6000600182016138df576138df6138b7565b5060010190565b6020815260006107e660208301848661351e565b6000806040838503121561390d57600080fd5b82516001600160401b038082111561392457600080fd5b6139308683870161356b565b9350602085015191508082111561394657600080fd5b506139538582860161356b565b9150509250929050565b80820180821115610632576106326138b7565b60008a51613982818460208f01612d56565b8a5190830190613996818360208f01612d56565b8a519101906139a9818360208e01612d56565b0187898237600090880190815286516139c6818360208b01612d56565b0184868237600090850190815283516139e3818360208801612d56565b019b9a5050505050505050505050565b60008251613a05818460208701612d56565b9190910192915050565b60008751613a21818460208c01612d56565b875190830190613a35818360208c01612d56565b8751910190613a48818360208b01612d56565b018486823760009085019081528351613a65818360208801612d56565b0198975050505050505050565b60008451613a84818460208901612d56565b845190830190613a98818360208901612d56565b8451910190613aab818360208801612d56565b0195945050505050565b6040808252810183905260006001600160fb1b03841115613ad557600080fd5b8360051b808660608501376020830193909352500160600192915050565b600082601f830112613b0457600080fd5b81516020613b1461347883613420565b82815260059290921b84018101918181019086841115613b3357600080fd5b8286015b84811015611d7e5780516001600160401b03811115613b565760008081fd5b613b648986838b010161356b565b845250918301918301613b37565b60008060408385031215613b8557600080fd5b82516001600160401b0380821115613b9c57600080fd5b613ba886838701613af3565b93506020850151915080821115613bbe57600080fd5b5061395385828601613af3565b604081526000613bde6040830185612da6565b90508260208301529392505050565b600060208284031215613bff57600080fd5b81516001600160401b03811115613c1557600080fd5b6114e884828501613af3565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60408152600061355b6040830185876135e456fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a","storage":{}},"0xc2110388dd54228ae0a834119457ede938bf0b57":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061021e5760003560e01c80638da5cb5b11610123578063acf1a841116100ab578063d547741f1161006f578063d547741f14610682578063f14fcbc8146106a2578063f23a6e61146106c2578063f2fde38b146106e2578063ffa1ad741461070257600080fd5b8063acf1a841146105e0578063bc197c8114610600578063c0c53b8b14610620578063cf01585314610640578063d53913931461066057600080fd5b8063a0e3aef1116100f2578063a0e3aef114610534578063a217fddf14610554578063a3f4df7e14610569578063a4247400146105a0578063aa271e1a146105c057600080fd5b80638da5cb5b146104c157806391d14854146104df578063983b2d56146104ff578063986502751461051f57600080fd5b80635fc1964f116101a65780636ccbae5f116101755780636ccbae5f14610439578063715018a61461045957806371e2a6571461046e57806381c81d351461048e57806383e7f6ff146104a157600080fd5b80635fc1964f146103ae578063634486da146103ce5780636352211e146103e15780636a8be89e1461041957600080fd5b80632f2ff15d116101ed5780632f2ff15d146103035780633092afd51461032557806336568abe14610345578063423f6cef14610365578063572b6c051461038557600080fd5b806301ffc9a71461022a578063150b7a021461025f5780631bf7e13e14610298578063248a9ca3146102c557600080fd5b3661022557005b600080fd5b34801561023657600080fd5b5061024a6102453660046125f2565b610733565b60405190151581526020015b60405180910390f35b34801561026b57600080fd5b5061027f61027a366004612672565b610779565b6040516001600160e01b03199091168152602001610256565b3480156102a457600080fd5b506102b86102b33660046126e4565b6108cb565b60405161025691906127a4565b3480156102d157600080fd5b506102f56102e03660046127b7565b600090815260fb602052604090206001015490565b604051908152602001610256565b34801561030f57600080fd5b5061032361031e3660046127d0565b610997565b005b34801561033157600080fd5b50610323610340366004612800565b6109c1565b34801561035157600080fd5b506103236103603660046127d0565b6109d5565b34801561037157600080fd5b5061032361038036600461281d565b610a68565b34801561039157600080fd5b5061024a6103a0366004612800565b6001600160a01b0316301490565b3480156103ba57600080fd5b506103236103c936600461288f565b610bd9565b6103236103dc366004612800565b610c21565b3480156103ed57600080fd5b506104016103fc3660046127b7565b610ce4565b6040516001600160a01b039091168152602001610256565b34801561042557600080fd5b50610323610434366004612800565b610cef565b34801561044557600080fd5b506102f56104543660046127b7565b610d38565b34801561046557600080fd5b50610323610d7e565b34801561047a57600080fd5b5061032361048936600461288f565b610d92565b61032361049c366004612800565b610dda565b3480156104ad57600080fd5b506102f56104bc366004612934565b610e57565b3480156104cd57600080fd5b506097546001600160a01b0316610401565b3480156104eb57600080fd5b5061024a6104fa3660046127d0565b610efa565b34801561050b57600080fd5b5061032361051a366004612800565b610f25565b34801561052b57600080fd5b50610323610f36565b34801561054057600080fd5b506102f561054f366004612a5c565b610f50565b34801561056057600080fd5b506102f5600081565b34801561057557600080fd5b506102b86040518060400160405280600b81526020016a454e5320437573746f647960a81b81525081565b3480156105ac57600080fd5b5061024a6105bb3660046126e4565b610ffc565b3480156105cc57600080fd5b5061024a6105db366004612800565b61104f565b3480156105ec57600080fd5b506103236105fb366004612934565b611069565b34801561060c57600080fd5b5061027f61061b366004612b35565b611222565b34801561062c57600080fd5b5061032361063b366004612bf3565b6112db565b34801561064c57600080fd5b5061032361065b366004612c3e565b611485565b34801561066c57600080fd5b506102f56000805160206133f583398151915281565b34801561068e57600080fd5b5061032361069d3660046127d0565b611592565b3480156106ae57600080fd5b506103236106bd3660046127b7565b6115b7565b3480156106ce57600080fd5b5061027f6106dd366004612d20565b61162b565b3480156106ee57600080fd5b506103236106fd366004612800565b6116bc565b34801561070e57600080fd5b506102b860405180604001604052806005815260200164302e312e3360d81b81525081565b60006001600160e01b03198216630a85bd0160e11b148061076457506001600160e01b03198216630271189760e51b145b806107735750610773826116d8565b92915050565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004546000906001600160a01b0316806107b061170d565b6001600160a01b0316036108a957600080806107ce86880188612d9b565b9250925092506107dd8361171c565b6001600160a01b03841663b88d4fde30600080516020613415833981519152546040516001600160a01b03909116908c9061082390879030906000908b90602001612dfc565b6040516020818303038152906040526040518563ffffffff1660e01b81526004016108519493929190612e3c565b600060405180830381600087803b15801561086b57600080fd5b505af115801561087f573d6000803e3d6000fd5b5050505061089561088f8261174e565b846117d3565b50630a85bd0160e11b93506108c292505050565b6040516344e7d94960e01b815260040160405180910390fd5b95945050505050565b606060005a90506108dd858585610ffc565b6108fa57604051638baa579f60e01b815260040160405180910390fd5b61098c61090a6020870187612800565b3060408801358461091e60608b018b612e6f565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061185e92505050565b9150505b9392505050565b600082815260fb60205260409020600101546109b28161193f565b6109bc8383611950565b505050565b6109c96119d7565b6109d281611a50565b50565b6109dd61170d565b6001600160a01b0316816001600160a01b031614610a5a5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b610a648282611a68565b5050565b80610a7161170d565b6001600160a01b0316610a8382611aed565b6001600160a01b031614610ac55780610a9a61170d565b604051637ea58b1160e01b815260048101929092526001600160a01b03166024820152604401610a51565b610ace82611c03565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052600090610b22906060015b6040516020818303038152906040528051906020012090565b80546001600160a01b0319166001600160a01b0392909216919091179055600060008051602061341583398151915254604051637921219560e11b81523060048201526001600160a01b038681166024830152604482018690526001606483015260a06084830152600060a48301529091169150819063f242432a9060c401600060405180830381600087803b158015610bbb57600080fd5b505af1158015610bcf573d6000803e3d6000fd5b5050505050505050565b610be16119d7565b60005b8151811015610a6457610c0f828281518110610c0257610c02612eb5565b6020026020010151611a50565b80610c1981612ee1565b915050610be4565b610c2c6105db61170d565b610c485760405162461bcd60e51b8152600401610a5190612efa565b6001600160a01b038116610c9e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a51565b610ca781611c1c565b610caf610f36565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610a64573d6000803e3d6000fd5b600061077382611aed565b610cf76119d7565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c500480546001600160a01b0319166001600160a01b0392909216919091179055565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a838156020820152908101829052600090610d7790606001610b09565b5492915050565b610d866119d7565b610d906000611c34565b565b610d9a6119d7565b60005b8151811015610a6457610dc8828281518110610dbb57610dbb612eb5565b6020026020010151611c1c565b80610dd281612ee1565b915050610d9d565b610de56105db61170d565b610e015760405162461bcd60e51b8152600401610a5190612efa565b6001600160a01b038116610ca75760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a51565b6000805160206133d5833981519152546040516383e7f6ff60e01b81526000916001600160a01b031690829082906383e7f6ff90610e9d90899089908990600401612f58565b6040805180830381865afa158015610eb9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610edd9190612f7c565b60208101518151919250610ef091612fca565b9695505050505050565b600091825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610f2d6119d7565b6109d281611c1c565b610d906000805160206133f583398151915261036061170d565b6000805160206133d5833981519152546000906001600160a01b0316806365a69dcf8d85610f7e5730610f80565b8d5b8d8d8d8d8d8d8d6040518a63ffffffff1660e01b8152600401610fab9998979695949392919061306e565b602060405180830381865afa158015610fc8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fec91906130de565b9c9b505050505050505050505050565b600061104761100a856130f7565b3085858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611c8692505050565b949350505050565b60006107736000805160206133f583398151915283610efa565b6110746105db61170d565b6110905760405162461bcd60e51b8152600401610a5190612efa565b6002603354036110e25760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a51565b60026033556000805160206133d5833981519152546040516383e7f6ff60e01b81526001600160a01b039091169060009082906383e7f6ff9061112d90889088908890600401612f58565b6040805180830381865afa158015611149573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061116d9190612f7c565b6020810151815191925061118091612fca565b4710156111a05760405163050205f960e01b815260040160405180910390fd5b816001600160a01b031663acf1a841826020015183600001516111c39190612fca565b8787876040518563ffffffff1660e01b81526004016111e493929190612f58565b6000604051808303818588803b1580156111fd57600080fd5b505af1158015611211573d6000803e3d6000fd5b505060016033555050505050505050565b6000600080516020613415833981519152546001600160a01b031661124561170d565b6001600160a01b03161461126c576040516344e7d94960e01b815260040160405180910390fd5b600061127a83850185612800565b90506112858161171c565b60005b878110156112c4576112b28989838181106112a5576112a5612eb5565b90506020020135836117d3565b806112bc81612ee1565b915050611288565b5063bc197c8160e01b9a9950505050505050505050565b600054610100900460ff16158080156112fb5750600054600160ff909116105b806113155750303b158015611315575060005460ff166001145b6113785760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610a51565b6000805460ff19166001179055801561139b576000805461ff0019166101001790555b6000805160206133d583398151915280546001600160a01b038087166001600160a01b03199283161790925560008051602061341583398151915280548684169083161790557ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004805492851692909116919091179055611419611dc5565b611421611df3565b611429611df3565b611431611e1a565b611439611e51565b801561147f576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6114906105db61170d565b6114ac5760405162461bcd60e51b8152600401610a5190612efa565b6002603354036114fe5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a51565b600260338190555060006115478c8c8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061174e92505050565b905061155281611c03565b6115708c8c846115625730611564565b8c5b8c8c8c8c8c8c8c611e8a565b8161157f5761157f818b6117d3565b5050600160335550505050505050505050565b600082815260fb60205260409020600101546115ad8161193f565b6109bc8383611a68565b60006000805160206133d583398151915254604051631e29f97960e31b8152600481018490526001600160a01b039091169150819063f14fcbc890602401600060405180830381600087803b15801561160f57600080fd5b505af1158015611623573d6000803e3d6000fd5b505050505050565b6000600080516020613415833981519152546001600160a01b031661164e61170d565b6001600160a01b031614611675576040516344e7d94960e01b815260040160405180910390fd5b6001600160a01b038616156116a957600061169283850185612800565b905061169d8161171c565b6116a786826117d3565b505b5063f23a6e6160e01b9695505050505050565b6116c46119d7565b6116cd81611fd5565b6109d260008261204b565b60006001600160e01b03198216637965db0b60e01b148061077357506301ffc9a760e01b6001600160e01b0319831614610773565b6000611717612055565b905090565b6001600160a01b0381166109d25760405163b20f76e360e01b81526001600160a01b0382166004820152602401610a51565b60007f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae60001b826040516020016117859190613195565b604051602081830303815290604052805190602001206040516020016117b5929190918252602082015260400190565b60408051601f19818403018152919052805160209091012092915050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052819061181190606001610b09565b80546001600160a01b0319166001600160a01b039283161790556040519082169083907f45aa97e368889fb3527c1db60c59c2ae91e82f21778613449e46d4208c1c4b1290600090a35050565b606061186985612073565b600080876001600160a01b0316866118838b8a89896120d9565b6040516118909190613195565b60006040518083038160008787f1925050503d80600081146118ce576040519150601f19603f3d011682016040523d82523d6000602084013e6118d3565b606091505b5090925090506118e4603f876131b1565b5a116118f2576118f26131d3565b61193282826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c4544000000000000815250612109565b9998505050505050505050565b6109d28161194b61170d565b612142565b61195a8282610efa565b610a6457600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff1916600117905561199361170d565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6119df61170d565b6001600160a01b03166119fa6097546001600160a01b031690565b6001600160a01b031614610d905760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a51565b6109d26000805160206133f583398151915282611592565b611a728282610efa565b15610a6457600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff19169055611aa961170d565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101829052600090611b2c90606001610b09565b546001600160a01b0316905080611b595760405163124bad6360e31b815260048101839052602401610a51565b30600080516020613415833981519152546040516331a9108f60e11b8152600481018590526001600160a01b0390911690636352211e90602401602060405180830381865afa158015611bb0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bd491906131e9565b6001600160a01b031614611bfe576040516303b673fd60e21b815260048101839052602401610a51565b919050565b303303611c13576109d2816121a6565b6109d281612073565b6109d26000805160206133f58339815191528261204b565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015611ccd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cf191906130de565b90506000611d9f866060015180519060200120868860200151604051602001611d3f9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b9050818660200151148015610ef057508551610ef0906001600160a01b031682866121d0565b600054610100900460ff16611dec5760405162461bcd60e51b8152600401610a5190613206565b6001603355565b600054610100900460ff16610d905760405162461bcd60e51b8152600401610a5190613206565b600054610100900460ff16611e415760405162461bcd60e51b8152600401610a5190613206565b610d90611e4c61170d565b611c34565b600054610100900460ff16611e785760405162461bcd60e51b8152600401610a5190613206565b610d906000611e8561170d565b61204b565b6000805160206133d5833981519152546040516383e7f6ff60e01b81526001600160a01b039091169060009082906383e7f6ff90611ed0908f908f908e90600401612f58565b6040805180830381865afa158015611eec573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f109190612f7c565b60208101518151919250611f2391612fca565b471015611f435760405163050205f960e01b815260040160405180910390fd5b816001600160a01b03166374694a2b82602001518360000151611f669190612fca565b8e8e8e8e8e8e8e8e8e8e6040518c63ffffffff1660e01b8152600401611f959a99989796959493929190613251565b6000604051808303818588803b158015611fae57600080fd5b505af1158015611fc2573d6000803e3d6000fd5b5050505050505050505050505050505050565b611fdd6119d7565b6001600160a01b0381166120425760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610a51565b6109d281611c34565b610a648282611950565b600030330361206b575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290526000906060016040516020818303038152906040528051906020012090506120c88190565b546120d4906001612fca565b905550565b60608285856040516020016120f0939291906132c3565b6040516020818303038152906040529050949350505050565b60608315612118575081610990565b8251156121285782518084602001fd5b8160405162461bcd60e51b8152600401610a5191906127a4565b61214c8282610efa565b610a6457612164816001600160a01b03166014612312565b61216f836020612312565b604051602001612180929190613302565b60408051601f198184030181529082905262461bcd60e51b8252610a51916004016127a4565b6121ae6124ad565b81146109d257604051635637b6af60e11b815260048101829052602401610a51565b60008060006121df85856124c0565b909250905060008160048111156121f8576121f8613377565b1480156122165750856001600160a01b0316826001600160a01b0316145b1561222657600192505050610990565b600080876001600160a01b0316631626ba7e60e01b888860405160240161224e92919061338d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161228c9190613195565b600060405180830381855afa9150503d80600081146122c7576040519150601f19603f3d011682016040523d82523d6000602084013e6122cc565b606091505b50915091508180156122df575080516020145b801561230657508051630b135d3f60e11b9061230490830160209081019084016130de565b145b98975050505050505050565b606060006123218360026133a6565b61232c906002612fca565b6001600160401b0381111561234357612343612849565b6040519080825280601f01601f19166020018201604052801561236d576020820181803683370190505b509050600360fc1b8160008151811061238857612388612eb5565b60200101906001600160f81b031916908160001a905350600f60fb1b816001815181106123b7576123b7612eb5565b60200101906001600160f81b031916908160001a90535060006123db8460026133a6565b6123e6906001612fca565b90505b600181111561245e576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061241a5761241a612eb5565b1a60f81b82828151811061243057612430612eb5565b60200101906001600160f81b031916908160001a90535060049490941c93612457816133bd565b90506123e9565b5083156109905760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610a51565b60003033036120705750601f1936013590565b60008082516041036124f65760208301516040840151606085015160001a6124ea87828585612505565b945094505050506124fe565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561253c57506000905060036125e9565b8460ff16601b1415801561255457508460ff16601c14155b1561256557506000905060046125e9565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156125b9573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166125e2576000600192509250506125e9565b9150600090505b94509492505050565b60006020828403121561260457600080fd5b81356001600160e01b03198116811461099057600080fd5b6001600160a01b03811681146109d257600080fd5b60008083601f84011261264357600080fd5b5081356001600160401b0381111561265a57600080fd5b6020830191508360208285010111156124fe57600080fd5b60008060008060006080868803121561268a57600080fd5b85356126958161261c565b945060208601356126a58161261c565b93506040860135925060608601356001600160401b038111156126c757600080fd5b6126d388828901612631565b969995985093965092949392505050565b6000806000604084860312156126f957600080fd5b83356001600160401b038082111561271057600080fd5b908501906080828803121561272457600080fd5b9093506020850135908082111561273a57600080fd5b5061274786828701612631565b9497909650939450505050565b60005b8381101561276f578181015183820152602001612757565b50506000910152565b60008151808452612790816020860160208601612754565b601f01601f19169290920160200192915050565b6020815260006109906020830184612778565b6000602082840312156127c957600080fd5b5035919050565b600080604083850312156127e357600080fd5b8235915060208301356127f58161261c565b809150509250929050565b60006020828403121561281257600080fd5b81356109908161261c565b6000806040838503121561283057600080fd5b823561283b8161261c565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561288757612887612849565b604052919050565b600060208083850312156128a257600080fd5b82356001600160401b03808211156128b957600080fd5b818501915085601f8301126128cd57600080fd5b8135818111156128df576128df612849565b8060051b91506128f084830161285f565b818152918301840191848101908884111561290a57600080fd5b938501935b8385101561230657843592506129248361261c565b828252938501939085019061290f565b60008060006040848603121561294957600080fd5b83356001600160401b0381111561295f57600080fd5b61296b86828701612631565b909790965060209590950135949350505050565b60006001600160401b0383111561299857612998612849565b6129ab601f8401601f191660200161285f565b90508281528383830111156129bf57600080fd5b828260208301376000602084830101529392505050565b600082601f8301126129e757600080fd5b6109908383356020850161297f565b60008083601f840112612a0857600080fd5b5081356001600160401b03811115612a1f57600080fd5b6020830191508360208260051b85010111156124fe57600080fd5b80358015158114611bfe57600080fd5b803561ffff81168114611bfe57600080fd5b6000806000806000806000806000806101208b8d031215612a7c57600080fd5b8a356001600160401b0380821115612a9357600080fd5b612a9f8e838f016129d6565b9b5060208d01359150612ab18261261c565b90995060408c0135985060608c0135975060808c013590612ad18261261c565b90965060a08c01359080821115612ae757600080fd5b50612af48d828e016129f6565b9096509450612b07905060c08c01612a3a565b9250612b1560e08c01612a4a565b9150612b246101008c01612a3a565b90509295989b9194979a5092959850565b60008060008060008060008060a0898b031215612b5157600080fd5b8835612b5c8161261c565b97506020890135612b6c8161261c565b965060408901356001600160401b0380821115612b8857600080fd5b612b948c838d016129f6565b909850965060608b0135915080821115612bad57600080fd5b612bb98c838d016129f6565b909650945060808b0135915080821115612bd257600080fd5b50612bdf8b828c01612631565b999c989b5096995094979396929594505050565b600080600060608486031215612c0857600080fd5b8335612c138161261c565b92506020840135612c238161261c565b91506040840135612c338161261c565b809150509250925092565b60008060008060008060008060008060006101208c8e031215612c6057600080fd5b6001600160401b03808d351115612c7657600080fd5b612c838e8e358f01612631565b909c509a50612c9560208e013561261c565b60208d0135995060408d0135985060608d01359750612cb760808e013561261c565b60808d013596508060a08e01351115612ccf57600080fd5b50612ce08d60a08e01358e016129f6565b9095509350612cf160c08d01612a3a565b9250612cff60e08d01612a4a565b9150612d0e6101008d01612a3a565b90509295989b509295989b9093969950565b60008060008060008060a08789031215612d3957600080fd5b8635612d448161261c565b95506020870135612d548161261c565b9450604087013593506060870135925060808701356001600160401b03811115612d7d57600080fd5b612d8989828a01612631565b979a9699509497509295939492505050565b600080600060608486031215612db057600080fd5b8335612dbb8161261c565b92506020840135612dcb8161261c565b915060408401356001600160401b03811115612de657600080fd5b612df2868287016129d6565b9150509250925092565b608081526000612e0f6080830187612778565b6001600160a01b03958616602084015261ffff949094166040830152509216606090920191909152919050565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090610ef090830184612778565b6000808335601e19843603018112612e8657600080fd5b8301803591506001600160401b03821115612ea057600080fd5b6020019150368190038213156124fe57600080fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201612ef357612ef3612ecb565b5060010190565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b604081526000612f6c604083018587612f2f565b9050826020830152949350505050565b600060408284031215612f8e57600080fd5b604051604081018181106001600160401b0382111715612fb057612fb0612849565b604052825181526020928301519281019290925250919050565b8082018082111561077357610773612ecb565b81835260006020808501808196508560051b810191508460005b878110156130615782840389528135601e1988360301811261301857600080fd5b870185810190356001600160401b0381111561303357600080fd5b80360382131561304257600080fd5b61304d868284612f2f565b9a87019a9550505090840190600101612ff7565b5091979650505050505050565b60006101008083526130828184018d612778565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a085015290506130bc818789612fdd565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b6000602082840312156130f057600080fd5b5051919050565b60006080823603121561310957600080fd5b604051608081016001600160401b03828210818311171561312c5761312c612849565b816040528435915061313d8261261c565b8183526020850135602084015260408501356040840152606085013591508082111561316857600080fd5b50830136601f82011261317a57600080fd5b6131893682356020840161297f565b60608301525092915050565b600082516131a7818460208701612754565b9190910192915050565b6000826131ce57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b6000602082840312156131fb57600080fd5b81516109908161261c565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60006101008083526132668184018d8f612f2f565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a085015290506132a0818789612fdd565b94151560c0840152505061ffff9190911660e09091015298975050505050505050565b600084516132d5818460208901612754565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081526000835161333a816017850160208801612754565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835161336b816028840160208801612754565b01602801949350505050565b634e487b7160e01b600052602160045260246000fd5b8281526040602082015260006110476040830184612778565b808202811582820484141761077357610773612ecb565b6000816133cc576133cc612ecb565b50600019019056fe412386de53449251cbf7ce1f4c6a038bf9c0746e62d331b08ef0c3fa7d0ab6729f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a660793a5062d506d35cc8f1beda67ee5028c16bfcd9c923d5bfc439c04bd929b1a164736f6c6343000811000a","storage":{"0x0":"0xff"}},"0xc58206842e4030a3b2cabc78780ae7635173c533":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106102325760003560e01c80637c69eae211610130578063b5466669116100b8578063d284d97a1161007c578063d284d97a14610d4e578063d8d3cc6e14610dbc578063e67ca8a314610e3f578063e985e9c514610e5c578063ebf0c71714610e8a57610232565b8063b5466669146109ce578063b88d4fde14610a51578063c29b52f914610b15578063c87b56dd14610c5e578063ce9fb82b14610c7b57610232565b8063a22cb465116100ff578063a22cb4651461090b578063a7fc7a0714610939578063ab3b87fe1461095f578063b3f9e4cb1461098b578063b429afeb146109a857610232565b80637c69eae21461076457806395d89b41146107e75780639d743989146107ef5780639e5be9a51461087d57610232565b806342842e0e116101be5780635cbe1112116101825780635cbe11121461061d5780636352211e1461069257806366ac3b68146106af57806368b62d32146106b757806370a082311461073e57610232565b806342842e0e146104ed57806342966c6814610523578063430c208114610540578063538361a71461056c57806357aac5741461058f57610232565b8063081812fc11610205578063081812fc146103fa578063095ea7b3146104335780632392c1891461045f57806323b872dd1461048b5780632525d06a146104c157610232565b806301ffc9a71461023757806302759c37146102725780630467e014146102aa57806306fdde031461037d575b600080fd5b61025e6004803603602081101561024d57600080fd5b50356001600160e01b031916610e92565b604080519115158252519081900360200190f35b6102a86004803603606081101561028857600080fd5b506001600160a01b03813581169160208101359091169060400135610eb1565b005b6102a8600480360360808110156102c057600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156102ef57600080fd5b82018360208201111561030157600080fd5b803590602001918460018302840111600160201b8311171561032257600080fd5b919390929091602081019035600160201b81111561033f57600080fd5b82018360208201111561035157600080fd5b803590602001918460018302840111600160201b8311171561037257600080fd5b509092509050610ed3565b610385610f62565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103bf5781810151838201526020016103a7565b50505050905090810190601f1680156103ec5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6104176004803603602081101561041057600080fd5b5035610f84565b604080516001600160a01b039092168252519081900360200190f35b6102a86004803603604081101561044957600080fd5b506001600160a01b038135169060200135610fe6565b6102a86004803603604081101561047557600080fd5b506001600160a01b0381351690602001356110f7565b6102a8600480360360608110156104a157600080fd5b506001600160a01b03813581169160208101359091169060400135611115565b6102a8600480360360408110156104d757600080fd5b506001600160a01b03813516906020013561115a565b6102a86004803603606081101561050357600080fd5b506001600160a01b0381358116916020810135909116906040013561117a565b6102a86004803603602081101561053957600080fd5b5035611195565b61025e6004803603604081101561055657600080fd5b506001600160a01b0381351690602001356111e6565b6102a86004803603604081101561058257600080fd5b50803590602001356111f9565b6102a8600480360360808110156105a557600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156105df57600080fd5b8201836020820111156105f157600080fd5b803590602001918460018302840111600160201b8311171561061257600080fd5b50909250905061124f565b6102a86004803603604081101561063357600080fd5b81359190810190604081016020820135600160201b81111561065457600080fd5b82018360208201111561066657600080fd5b803590602001918460018302840111600160201b8311171561068757600080fd5b5090925090506112be565b610417600480360360208110156106a857600080fd5b5035611320565b6102a861137a565b61072c600480360360408110156106cd57600080fd5b81359190810190604081016020820135600160201b8111156106ee57600080fd5b82018360208201111561070057600080fd5b803590602001918460018302840111600160201b8311171561072157600080fd5b509092509050611385565b60408051918252519081900360200190f35b61072c6004803603602081101561075457600080fd5b50356001600160a01b03166113cf565b6102a86004803603606081101561077a57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156107a957600080fd5b8201836020820111156107bb57600080fd5b803590602001918460018302840111600160201b831117156107dc57600080fd5b509092509050611437565b61038561149a565b6102a86004803603608081101561080557600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561083f57600080fd5b82018360208201111561085157600080fd5b803590602001918460018302840111600160201b8311171561087257600080fd5b5090925090506114b6565b6102a86004803603608081101561089357600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156108cd57600080fd5b8201836020820111156108df57600080fd5b803590602001918460018302840111600160201b8311171561090057600080fd5b509092509050611506565b6102a86004803603604081101561092157600080fd5b506001600160a01b0381351690602001351515611564565b6102a86004803603602081101561094f57600080fd5b50356001600160a01b0316611630565b6102a86004803603604081101561097557600080fd5b506001600160a01b03813516906020013561164b565b610417600480360360208110156109a157600080fd5b5035611672565b61025e600480360360208110156109be57600080fd5b50356001600160a01b0316611694565b6102a8600480360360608110156109e457600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610a1357600080fd5b820183602082011115610a2557600080fd5b803590602001918460018302840111600160201b83111715610a4657600080fd5b5090925090506116a7565b6102a860048036036080811015610a6757600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b811115610aa157600080fd5b820183602082011115610ab357600080fd5b803590602001918460018302840111600160201b83111715610ad457600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506116fa945050505050565b6102a8600480360360a0811015610b2b57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b811115610b6557600080fd5b820183602082011115610b7757600080fd5b803590602001918460018302840111600160201b83111715610b9857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b811115610bea57600080fd5b820183602082011115610bfc57600080fd5b803590602001918460018302840111600160201b83111715610c1d57600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061174c945050505050565b61038560048036036020811015610c7457600080fd5b5035611797565b6102a860048036036080811015610c9157600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610cc057600080fd5b820183602082011115610cd257600080fd5b803590602001918460018302840111600160201b83111715610cf357600080fd5b919390929091602081019035600160201b811115610d1057600080fd5b820183602082011115610d2257600080fd5b803590602001918460018302840111600160201b83111715610d4357600080fd5b509092509050611892565b6102a860048036036020811015610d6457600080fd5b810190602081018135600160201b811115610d7e57600080fd5b820183602082011115610d9057600080fd5b803590602001918460018302840111600160201b83111715610db157600080fd5b50909250905061191b565b6102a860048036036060811015610dd257600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610e0157600080fd5b820183602082011115610e1357600080fd5b803590602001918460018302840111600160201b83111715610e3457600080fd5b50909250905061199e565b6102a860048036036020811015610e5557600080fd5b50356119f3565b61025e60048036036040811015610e7257600080fd5b506001600160a01b0381358116916020013516611a05565b61072c611a33565b6001600160e01b03191660009081526020819052604090205460ff1690565b610eba33611694565b610ec357600080fd5b610ece838383611a57565b505050565b610edc33611694565b610ee557600080fd5b610f5a868686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8a018190048102820181019092528881529250889150879081908401838280828437600092019190915250611a9f92505050565b505050505050565b6040805180820190915260078152662e63727970746f60c81b60208201525b90565b6000610f8f82611ac9565b610fca5760405162461bcd60e51b815260040180806020018281038252602c815260200180612848602c913960400191505060405180910390fd5b506000908152600360205260409020546001600160a01b031690565b6000610ff182611320565b9050806001600160a01b0316836001600160a01b031614156110445760405162461bcd60e51b81526004018080602001828103825260218152602001806128bf6021913960400191505060405180910390fd5b336001600160a01b038216148061106057506110608133611a05565b61109b5760405162461bcd60e51b815260040180806020018281038252603881526020018061279c6038913960400191505060405180910390fd5b60008281526003602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b806111023382611ae6565b61110b57600080fd5b610ece8383611b82565b61111f3382611ae6565b610ec35760405162461bcd60e51b81526004018080602001828103825260318152602001806128e06031913960400191505060405180910390fd5b61116333611694565b61116c57600080fd5b6111768282611b82565b5050565b610ece838383604051806020016040528060008152506116fa565b61119f3382611ae6565b6111da5760405162461bcd60e51b81526004018080602001828103825260308152602001806129366030913960400191505060405180910390fd5b6111e381611bf8565b50565b60006111f28383611ae6565b9392505050565b6000828152600860205260409020546001600160a01b0316331461121c57600080fd5b6040518290829033907ff10fc780c78f994a214c79a2ae8d8b7bfe7cc3f0f935a8f05a29525e71d7f12790600090a45050565b61125833611694565b61126157600080fd5b61126c858585611a57565b6112ae85858585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611c7992505050565b6112b757600080fd5b5050505050565b826112c93382611ae6565b6112d257600080fd5b61131a6113158585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b611bf8565b50505050565b6000818152600260205260408120546001600160a01b0316806113745760405162461bcd60e51b81526004018080602001828103825260298152602001806127fe6029913960400191505060405180910390fd5b92915050565b61138333611e64565b565b60006113c78484848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b949350505050565b60006001600160a01b0382166114165760405162461bcd60e51b815260040180806020018281038252602a8152602001806127d4602a913960400191505060405180910390fd5b6001600160a01b038216600090815260046020526040902061137490611e75565b826114423382611ae6565b61144b57600080fd5b6112b7858585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250611a9f915050565b604080518082019091526002815261155160f21b602082015290565b6112b785858585858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201829052506040805160208101909152908152925061174c915050565b826115113382611ae6565b61151a57600080fd5b610f5a868661155f8787878080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b611a57565b6001600160a01b0382163314156115c2576040805162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604482015290519081900360640190fd5b3360008181526005602090815260408083206001600160a01b03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b61163933611694565b61164257600080fd5b6111e381611e79565b806116563382611ae6565b61165f57600080fd5b610ece61166b83611320565b8484611e8a565b6000818152600860205260408120546001600160a01b03168061137457600080fd5b600061137460018363ffffffff611fce16565b6116b033611694565b6116b957600080fd5b61131a848484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061203592505050565b611705848484611115565b61171184848484611c79565b61131a5760405162461bcd60e51b815260040180806020018281038252603281526020018061271a6032913960400191505060405180910390fd5b826117573382611ae6565b61176057600080fd5b600061176c8585611dac565b9050611779878783611a57565b61178587878386611c79565b61178e57600080fd5b50505050505050565b60606117a282611ac9565b6117ab57600080fd5b600760066000848152602001908152602001600020604051602001808380546001816001161561010002031660029004801561181e5780601f106117fc57610100808354040283529182019161181e565b820191906000526020600020905b81548152906001019060200180831161180a575b5050828054600181600116156101000203166002900480156118775780601f10611855576101008083540402835291820191611877565b820191906000526020600020905b815481529060010190602001808311611863575b505060408051601f1981840301815291905295945050505050565b8461189d3382611ae6565b6118a657600080fd5b61178e878787878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b018190048102820181019092528981529250899150889081908401838280828437600092019190915250611a9f92505050565b61192433611694565b61192d57600080fd5b611939600783836125cf565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b828260405180806020018281038252848482818152602001925080828437600083820152604051601f909101601f19169092018290039550909350505050a15050565b826119a93382611ae6565b6119b257600080fd5b6112b7858585858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061203592505050565b6119fc33611694565b6111da57600080fd5b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b7f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f90565b611a62838383611e8a565b6000818152600860205260409020546001600160a01b031615610ece57600090815260086020526040902080546001600160a01b03191690555050565b611aaa848484612035565b611ac0600085611aba8686611dac565b84611c79565b61131a57600080fd5b6000908152600260205260409020546001600160a01b0316151590565b6000611af182611ac9565b611b2c5760405162461bcd60e51b815260040180806020018281038252602c815260200180612770602c913960400191505060405180910390fd5b6000611b3783611320565b9050806001600160a01b0316846001600160a01b03161480611b725750836001600160a01b0316611b6784610f84565b6001600160a01b0316145b806113c757506113c78185611a05565b611b8b81611ac9565b611b9457600080fd5b6040516001600160a01b0383169082907fb1b34e6d89e1c584527d447f4b29ffad55635a37edeeb564939a6483401b31a590600090a3600090815260086020526040902080546001600160a01b0319166001600160a01b0392909216919091179055565b611c018161220f565b6000818152600860205260409020546001600160a01b031615611c3b57600081815260086020526040902080546001600160a01b03191690555b60008181526006602052604090205460026000196101006001841615020190911604156111e35760008181526006602052604081206111e39161264d565b6000611c8d846001600160a01b0316612221565b611c99575060016113c7565b604051630a85bd0160e11b815233600482018181526001600160a01b03888116602485015260448401879052608060648501908152865160848601528651600095928a169463150b7a029490938c938b938b939260a4019060208501908083838e5b83811015611d13578181015183820152602001611cfb565b50505050905090810190601f168015611d405780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015611d6257600080fd5b505af1158015611d76573d6000803e3d6000fd5b505050506040513d6020811015611d8c57600080fd5b50516001600160e01b031916630a85bd0160e11b14915050949350505050565b6000815160001415611dbd57600080fd5b82826040516020018082805190602001908083835b60208310611df15780518252601f199092019160209182019101611dd2565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040528051906020012060405160200180838152602001828152602001925050506040516020818303038152906040528051906020012060001c905092915050565b6111e360018263ffffffff61222716565b5490565b6111e360018263ffffffff61228e16565b826001600160a01b0316611e9d82611320565b6001600160a01b031614611ee25760405162461bcd60e51b81526004018080602001828103825260298152602001806128966029913960400191505060405180910390fd5b6001600160a01b038216611f275760405162461bcd60e51b815260040180806020018281038252602481526020018061274c6024913960400191505060405180910390fd5b611f308161230f565b6001600160a01b0383166000908152600460205260409020611f519061234a565b6001600160a01b0382166000908152600460205260409020611f7290612361565b60008181526002602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60006001600160a01b0382166120155760405162461bcd60e51b81526004018080602001828103825260228152602001806128746022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b60006120418383611dac565b905061204d848261236a565b815161205857600080fd5b61206181611ac9565b61206a57600080fd5b606082600660008681526020019081526020016000206040516020018083805190602001908083835b602083106120b25780518252601f199092019160209182019101612093565b6001836020036101000a03801982511681845116808217855250505050505090500180601760f91b815250600101828054600181600116156101000203166002900480156121375780601f10612115576101008083540402835291820191612137565b820191906000526020600020905b815481529060010190602001808311612123575b505060408051601f19818403018152918152600087815260066020908152919020825192965061216d9550935085019150612691565b50817fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952826040518080602001828103825283818151815260200191508051906020019080838360005b838110156121ce5781810151838201526020016121b6565b50505050905090810190601f1680156121fb5780820380516001836020036101000a031916815260200191505b509250505060405180910390a25050505050565b6111e361221b82611320565b8261249b565b3b151590565b6122318282611fce565b61226c5760405162461bcd60e51b81526004018080602001828103825260218152602001806128276021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff19169055565b6122988282611fce565b156122ea576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b6000818152600360205260409020546001600160a01b0316156111e357600090815260036020526040902080546001600160a01b0319169055565b805461235d90600163ffffffff61257216565b9055565b80546001019055565b6001600160a01b0382166123c5576040805162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f2061646472657373604482015290519081900360640190fd5b6123ce81611ac9565b15612420576040805162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000604482015290519081900360640190fd5b600081815260026020908152604080832080546001600160a01b0319166001600160a01b03871690811790915583526004909152902061245f90612361565b60405181906001600160a01b038416906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b816001600160a01b03166124ae82611320565b6001600160a01b0316146124f35760405162461bcd60e51b81526004018080602001828103825260258152602001806129116025913960400191505060405180910390fd5b6124fc8161230f565b6001600160a01b038216600090815260046020526040902061251d9061234a565b60008181526002602052604080822080546001600160a01b0319169055518291906001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6000828211156125c9576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106126105782800160ff1982351617855561263d565b8280016001018555821561263d579182015b8281111561263d578235825591602001919060010190612622565b506126499291506126ff565b5090565b50805460018160011615610100020316600290046000825580601f1061267357506111e3565b601f0160209004906000526020600020908101906111e391906126ff565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106126d257805160ff191683800117855561263d565b8280016001018555821561263d579182015b8281111561263d5782518255916020019190600101906126e4565b610f8191905b80821115612649576000815560010161270556fe4552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c654552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e526f6c65733a206163636f756e7420697320746865207a65726f20616464726573734552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f7665644552433732313a206275726e206f6620746f6b656e2074686174206973206e6f74206f776e4552433732314275726e61626c653a2063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564a265627a7a72315820fb6a1b26cc352dbb05e6627fd530bbb44114ac3a349f30d1f071136c656d20dc64736f6c634300050c0032","storage":{"0x7":"0x68747470733a2f2f6578616d706c652e636f6d2f000000000000000000000028","0xbdf39e9e65b2355b1b0b06df799c09159f0ab90f06a9bb2153f5de7d9b0ea81":"0x1","0x1a306d3e9bf29128dee78d8d16c9f378a11bbdf917a9caf986fc6e60846e37e7":"0x63727970746f000000000000000000000000000000000000000000000000000c","0x42c63635470f1fb1d6d4b6441c413cb435b1ebb6fedd1896dd5e25d1399147dd":"0x1","0x605d7a0bb2b20c4004d356eb969ff104dcca62360aa356247072f5e0df6472e3":"0xdead","0x67be87c3ff9960ca1e9cfac5cab2ff4747269cf9ed20c9b7306235ac35a491c5":"0x1","0x70f464f95f9ab7aba03264fd4cac1711d774d3703ce74217180264d4efc2105f":"0x1","0x76a72f26a108e6f3f687141f5f42d21d65857c03cb1b01aa1284f9a9ccd085da":"0x1","0x9562381dfbc2d8b8b66e765249f330164b73e329e5f01670660643571d1974df":"0x1","0x9f23d2403fb64167582d316b1bc5b35a6ed48524341ab24947c71df77304b29e":"0x1","0xf7815fccbf112960a73756e185887fedcb9fc64ca0a16cc5923b7960ed780800":"0x1"}},"0xc965345edac823d56812cd20a10316233916a605":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101c6575f3560e01c806395d89b41116100fe578063c87b56dd1161009e578063e985e9c51161006e578063e985e9c5146103d4578063f2fde38b1461040f578063f6a74ed714610422578063fca247ac14610435575f80fd5b8063c87b56dd14610377578063d6e4fa861461038a578063da8c229e146103a9578063ddf7fcb0146103cb575f80fd5b8063a7fc7a07116100d9578063a7fc7a0714610334578063b88d4fde14610347578063c1a287e21461035a578063c475abff14610364575f80fd5b806395d89b411461030657806396e494e81461030e578063a22cb46514610321575f80fd5b80633f15457f116101695780636352211e116101445780636352211e146102c757806370a08231146102da578063715018a6146102ed5780638da5cb5b146102f5575f80fd5b80633f15457f1461028e57806342842e0e146102a15780634e543b26146102b4575f80fd5b8063095ea7b3116101a4578063095ea7b3146102325780630e297b451461024757806323b872dd1461026857806328ed4f6c1461027b575f80fd5b806301ffc9a7146101ca57806306fdde03146101f2578063081812fc14610207575b5f80fd5b6101dd6101d83660046117dd565b610448565b60405190151581526020015b60405180910390f35b6101fa610499565b6040516101e99190611845565b61021a610215366004611857565b610528565b6040516001600160a01b0390911681526020016101e9565b610245610240366004611882565b61054d565b005b61025a6102553660046118ac565b610666565b6040519081526020016101e9565b6102456102763660046118e1565b61067b565b61024561028936600461190e565b6106ac565b60085461021a906001600160a01b031681565b6102456102af3660046118e1565b6107be565b6102456102c236600461193c565b6107d8565b61021a6102d5366004611857565b610848565b61025a6102e836600461193c565b610869565b6102456108ed565b6006546001600160a01b031661021a565b6101fa610900565b6101dd61031c366004611857565b61090f565b61024561032f366004611957565b610934565b61024561034236600461193c565b610943565b61024561035536600461199b565b610996565b61025a6276a70081565b61025a610372366004611a74565b6109ce565b6101fa610385366004611857565b610b52565b61025a610398366004611857565b5f9081526007602052604090205490565b6101dd6103b736600461193c565b600a6020525f908152604090205460ff1681565b61025a60095481565b6101dd6103e2366004611a94565b6001600160a01b039182165f90815260056020908152604080832093909416825291909152205460ff1690565b61024561041d36600461193c565b610bc2565b61024561043036600461193c565b610c3b565b61025a6104433660046118ac565b610c8b565b5f6001600160e01b031982166301ffc9a760e01b148061047857506001600160e01b031982166380ac58cd60e01b145b8061049357506001600160e01b03198216630a3b53db60e21b145b92915050565b60605f80546104a790611ac0565b80601f01602080910402602001604051908101604052809291908181526020018280546104d390611ac0565b801561051e5780601f106104f55761010080835404028352916020019161051e565b820191905f5260205f20905b81548152906001019060200180831161050157829003601f168201915b5050505050905090565b5f61053282610c99565b505f908152600460205260409020546001600160a01b031690565b5f61055782610cf7565b9050806001600160a01b0316836001600160a01b0316036105c95760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084015b60405180910390fd5b336001600160a01b03821614806105e557506105e581336103e2565b6106575760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016105c0565b6106618383610d56565b505050565b5f6106738484845f610dc3565b949350505050565b6106853382610fc7565b6106a15760405162461bcd60e51b81526004016105c090611af8565b610661838383611040565b6008546009546040516302571be360e01b8152600481019190915230916001600160a01b0316906302571be390602401602060405180830381865afa1580156106f7573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061071b9190611b45565b6001600160a01b03161461072d575f80fd5b6107373383610fc7565b61073f575f80fd5b6008546009546040516306ab592360e01b81526004810191909152602481018490526001600160a01b038381166044830152909116906306ab5923906064016020604051808303815f875af115801561079a573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106619190611b60565b61066183838360405180602001604052805f815250610996565b6107e06111a2565b600854600954604051630c4b7b8560e11b815260048101919091526001600160a01b03838116602483015290911690631896f70a906044015f604051808303815f87803b15801561082f575f80fd5b505af1158015610841573d5f803e3d5ffd5b5050505050565b5f818152600760205260408120544210610860575f80fd5b61049382610cf7565b5f6001600160a01b0382166108d25760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b60648201526084016105c0565b506001600160a01b03165f9081526003602052604090205490565b6108f56111a2565b6108fe5f6111fc565b565b6060600180546104a790611ac0565b5f81815260076020526040812054429061092d906276a70090611b77565b1092915050565b61093f33838361124d565b5050565b61094b6111a2565b6001600160a01b0381165f818152600a6020526040808220805460ff19166001179055517f0a8bb31534c0ed46f380cb867bd5c803a189ced9a764e30b3a4991a9901d74749190a250565b6109a03383610fc7565b6109bc5760405162461bcd60e51b81526004016105c090611af8565b6109c88484848461131a565b50505050565b6008546009546040516302571be360e01b815260048101919091525f9130916001600160a01b03909116906302571be390602401602060405180830381865afa158015610a1d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a419190611b45565b6001600160a01b031614610a53575f80fd5b335f908152600a602052604090205460ff16610a6d575f80fd5b5f838152600760205260409020544290610a8b906276a70090611b77565b1015610a95575f80fd5b610aa26276a70083611b77565b5f848152600760205260409020546276a70090610ac0908590611b77565b610aca9190611b77565b11610ad3575f80fd5b5f8381526007602052604081208054849290610af0908490611b77565b90915550505f838152600760205260409081902054905184917f9b87a00e30f1ac65d898f070f8a3488fe60517182d0a2098e1b4b93a54aa9bd691610b3791815260200190565b60405180910390a250505f9081526007602052604090205490565b6060610b5d82610c99565b5f610b7260408051602081019091525f815290565b90505f815111610b905760405180602001604052805f815250610bbb565b80610b9a8461134d565b604051602001610bab929190611b96565b6040516020818303038152906040525b9392505050565b610bca6111a2565b6001600160a01b038116610c2f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016105c0565b610c38816111fc565b50565b610c436111a2565b6001600160a01b0381165f818152600a6020526040808220805460ff19169055517f33d83959be2573f5453b12eb9d43b3499bc57d96bd2f067ba44803c859e811139190a250565b5f6106738484846001610dc3565b5f818152600260205260409020546001600160a01b0316610c385760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105c0565b5f818152600260205260408120546001600160a01b0316806104935760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105c0565b5f81815260046020526040902080546001600160a01b0319166001600160a01b0384169081179091558190610d8a82610cf7565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6008546009546040516302571be360e01b815260048101919091525f9130916001600160a01b03909116906302571be390602401602060405180830381865afa158015610e12573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e369190611b45565b6001600160a01b031614610e48575f80fd5b335f908152600a602052604090205460ff16610e62575f80fd5b610e6b8561090f565b610e73575f80fd5b610e806276a70042611b77565b6276a700610e8e8542611b77565b610e989190611b77565b11610ea1575f80fd5b610eab8342611b77565b5f868152600760209081526040808320939093556002905220546001600160a01b031615610edc57610edc856113dd565b610ee6848661146f565b8115610f6d576008546009546040516306ab592360e01b81526004810191909152602481018790526001600160a01b038681166044830152909116906306ab5923906064016020604051808303815f875af1158015610f47573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f6b9190611b60565b505b6001600160a01b038416857fb3d987963d01b2f68493b4bdb130988f157ea43070d4ad840fee0466ed9370d9610fa38642611b77565b60405190815260200160405180910390a3610fbe8342611b77565b95945050505050565b5f80610fd283610848565b9050806001600160a01b0316846001600160a01b0316148061100d5750836001600160a01b031661100284610528565b6001600160a01b0316145b8061067357506001600160a01b038082165f9081526005602090815260408083209388168352929052205460ff16610673565b826001600160a01b031661105382610cf7565b6001600160a01b0316146110795760405162461bcd60e51b81526004016105c090611bc4565b6001600160a01b0382166110db5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b60648201526084016105c0565b826001600160a01b03166110ee82610cf7565b6001600160a01b0316146111145760405162461bcd60e51b81526004016105c090611bc4565b5f81815260046020908152604080832080546001600160a01b03199081169091556001600160a01b038781168086526003855283862080545f1901905590871680865283862080546001019055868652600290945282852080549092168417909155905184937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6006546001600160a01b031633146108fe5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016105c0565b600680546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b816001600160a01b0316836001600160a01b0316036112ae5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c65720000000000000060448201526064016105c0565b6001600160a01b038381165f81815260056020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b611325848484611040565b611331848484846115f7565b6109c85760405162461bcd60e51b81526004016105c090611c09565b60605f611359836116f1565b60010190505f8167ffffffffffffffff81111561137857611378611987565b6040519080825280601f01601f1916602001820160405280156113a2576020820181803683370190505b5090508181016020015b5f19016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a85049450846113ac57509392505050565b5f6113e782610cf7565b90506113f282610cf7565b5f83815260046020908152604080832080546001600160a01b03199081169091556001600160a01b0385168085526003845282852080545f190190558785526002909352818420805490911690555192935084927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6001600160a01b0382166114c55760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f206164647265737360448201526064016105c0565b5f818152600260205260409020546001600160a01b0316156115295760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105c0565b5f818152600260205260409020546001600160a01b03161561158d5760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105c0565b6001600160a01b0382165f81815260036020908152604080832080546001019055848352600290915280822080546001600160a01b0319168417905551839291907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b5f6001600160a01b0384163b156116e957604051630a85bd0160e11b81526001600160a01b0385169063150b7a029061163a903390899088908890600401611c5b565b6020604051808303815f875af1925050508015611674575060408051601f3d908101601f1916820190925261167191810190611c97565b60015b6116cf573d8080156116a1576040519150601f19603f3d011682016040523d82523d5f602084013e6116a6565b606091505b5080515f036116c75760405162461bcd60e51b81526004016105c090611c09565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610673565b506001610673565b5f8072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b831061172f5772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef8100000000831061175b576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc10000831061177957662386f26fc10000830492506010015b6305f5e1008310611791576305f5e100830492506008015b61271083106117a557612710830492506004015b606483106117b7576064830492506002015b600a83106104935760010192915050565b6001600160e01b031981168114610c38575f80fd5b5f602082840312156117ed575f80fd5b8135610bbb816117c8565b5f5b838110156118125781810151838201526020016117fa565b50505f910152565b5f81518084526118318160208601602086016117f8565b601f01601f19169290920160200192915050565b602081525f610bbb602083018461181a565b5f60208284031215611867575f80fd5b5035919050565b6001600160a01b0381168114610c38575f80fd5b5f8060408385031215611893575f80fd5b823561189e8161186e565b946020939093013593505050565b5f805f606084860312156118be575f80fd5b8335925060208401356118d08161186e565b929592945050506040919091013590565b5f805f606084860312156118f3575f80fd5b83356118fe8161186e565b925060208401356118d08161186e565b5f806040838503121561191f575f80fd5b8235915060208301356119318161186e565b809150509250929050565b5f6020828403121561194c575f80fd5b8135610bbb8161186e565b5f8060408385031215611968575f80fd5b82356119738161186e565b915060208301358015158114611931575f80fd5b634e487b7160e01b5f52604160045260245ffd5b5f805f80608085870312156119ae575f80fd5b84356119b98161186e565b935060208501356119c98161186e565b925060408501359150606085013567ffffffffffffffff808211156119ec575f80fd5b818701915087601f8301126119ff575f80fd5b813581811115611a1157611a11611987565b604051601f8201601f19908116603f01168101908382118183101715611a3957611a39611987565b816040528281528a6020848701011115611a51575f80fd5b826020860160208301375f60208483010152809550505050505092959194509250565b5f8060408385031215611a85575f80fd5b50508035926020909101359150565b5f8060408385031215611aa5575f80fd5b8235611ab08161186e565b915060208301356119318161186e565b600181811c90821680611ad457607f821691505b602082108103611af257634e487b7160e01b5f52602260045260245ffd5b50919050565b6020808252602d908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526c1c881bdc88185c1c1c9bdd9959609a1b606082015260800190565b5f60208284031215611b55575f80fd5b8151610bbb8161186e565b5f60208284031215611b70575f80fd5b5051919050565b8082018082111561049357634e487b7160e01b5f52601160045260245ffd5b5f8351611ba78184602088016117f8565b835190830190611bbb8183602088016117f8565b01949350505050565b60208082526025908201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060408201526437bbb732b960d91b606082015260800190565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6001600160a01b03858116825284166020820152604081018390526080606082018190525f90611c8d9083018461181a565b9695505050505050565b5f60208284031215611ca7575f80fd5b8151610bbb816117c856fea164736f6c6343000818000a","storage":{"0x0":"0x0","0x1":"0x0","0x6":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x8":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0x9":"0x93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae","0x9b8bc185dce56a7ea1b27d35e40ac15dcdf9144303dfd4d8880220078bf21a2c":"0x1","0xdb5e6a17df8534b92b0c8de590f14b4fb4b5eb2c62ef1bf7a05555e354797508":"0x1","0xe1a982900207b619cb6c39be8cb5e60da1370171412fb65b5efc25e2dce3c34c":"0x1"}},"0xce4bb7dc1eb9dce75743de6a4b48534fd427ef51":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xe85541865bbb62a05064ce5c9f41cc293a8ea996","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0xd178b720229c39de617846f84cf9c8d32a63a23d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610106575f3560e01c806371017a541161009e5780639e32d3641161006e5780639e32d3641461025a578063a424740014610281578063dd6b9e2214610294578063e1c4b65a146102a7578063e35a14e5146102ba575f80fd5b806371017a541461020e5780637b103999146102215780638f0dbd25146102345780639810b69514610247575f80fd5b8063485cc955116100d9578063485cc95514610191578063572b6c05146101a457806358884432146101d05780636ccbae5f146101fb575f80fd5b8063150b7a021461010a5780631694116d1461013b5780631bf7e13e146101505780631c351a9d14610170575b5f80fd5b61011d610118366004611434565b6102e2565b6040516001600160e01b031990911681526020015b60405180910390f35b61014e6101493660046114e3565b610372565b005b61016361015e366004611549565b61040d565b6040516101329190611601565b61018361017e366004611613565b6104d6565b604051908152602001610132565b61014e61019f366004611666565b6105c3565b6101c06101b236600461169d565b6001600160a01b0316301490565b6040519015158152602001610132565b6067546101e3906001600160a01b031681565b6040516001600160a01b039091168152602001610132565b6101836102093660046116b8565b6106f8565b6101e361021c3660046116cf565b610751565b6066546101e3906001600160a01b031681565b61014e6102423660046116ef565b610791565b6101e36102553660046116cf565b610806565b6101837fd81bbfcee722494b885e891546eeac23d0eedcd44038d7a2f6ef9ec2f9e0d23981565b6101c061028f366004611549565b61085f565b6101c06102a236600461172d565b6108a8565b61014e6102b5366004611771565b61091d565b6101e36102c83660046116b8565b5f908152606560205260409020546001600160a01b031690565b6066545f906001600160a01b03166102f8610a43565b6001600160a01b031614158061032257505f848152606560205260409020546001600160a01b0316155b156103605783610330610a43565b60405163634afa0d60e01b815260048101929092526001600160a01b031660248201526044015b60405180910390fd5b50630a85bd0160e11b95945050505050565b828261037e8282610751565b6001600160a01b031661038f610a43565b6001600160a01b0316146103c057604051632cd9b44d60e11b81526004810183905260248101829052604401610357565b5f6103cb8686610806565b90505f5b87811015610402576103fa8989838181106103ec576103ec6117b0565b905060200201358387610a51565b6001016103cf565b505050505050505050565b60605f5a905061041e85858561085f565b61043b57604051638baa579f60e01b815260040160405180910390fd5b6104cb61044b602087018761169d565b3060408801358461045f60608b018b6117c4565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f92019190915250610b8492505050565b9150505b9392505050565b6067545f906001600160a01b031663aa271e1a6104f1610a43565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015610533573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105579190611807565b1580610572575030610567610a43565b6001600160a01b0316145b156105a45761057f610a43565b60405163e2c8c9d560e01b81526001600160a01b039091166004820152602401610357565b5f6105b0858585610c60565b90506105bb81610e73565b949350505050565b5f54610100900460ff16158080156105e157505f54600160ff909116105b806105fa5750303b1580156105fa57505f5460ff166001145b61065d5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610357565b5f805460ff19166001179055801561067e575f805461ff0019166101001790555b606680546001600160a01b038086166001600160a01b031992831617909255606780549285169290911691909117905580156106f3575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f9061074a906060016040516020818303038152906040528051906020012090565b5492915050565b5f80838360405160200161076f929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209150505b92915050565b828261079d8282610751565b6001600160a01b03166107ae610a43565b6001600160a01b0316146107df57604051632cd9b44d60e11b81526004810183905260248101829052604401610357565b856107e981610e73565b6107fd876107f78889610806565b86610a51565b50505050505050565b5f8060026108148585610e8f565b6040516108219190611826565b602060405180830381855afa15801561083c573d5f803e3d5ffd5b5050506040513d601f19601f820116820180604052508101906105bb9190611841565b5f6105bb61086c856118c6565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250610f1492505050565b5f805b8281101561091257846001600160a01b03166108f38585848181106108d2576108d26117b0565b905060200201355f908152606560205260409020546001600160a01b031690565b6001600160a01b03161461090a575f9150506104cf565b6001016108ab565b506001949350505050565b6067546001600160a01b031663aa271e1a610936610a43565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015610978573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061099c9190611807565b15806109b75750306109ac610a43565b6001600160a01b0316145b156109c45761057f610a43565b5f5b818110156106f357610a3a8383838181106109e3576109e36117b0565b90506020028101906109f59190611983565b610a039060208101906117c4565b858585818110610a1557610a156117b0565b9050602002810190610a279190611983565b610a3590602081019061169d565b610c60565b506001016109c6565b5f610a4c611059565b905090565b5f838152606560205260409020546001600160a01b03838116911614610ab4575f83815260656020526040908190205490516326995d8360e11b8152600481018590526001600160a01b0391821660248201529083166044820152606401610357565b5f838152606560205260409081902080546001600160a01b03191690556066549051632142170760e11b81523060048201526001600160a01b03838116602483015260448201869052909116906342842e0e906064015f604051808303815f87803b158015610b21575f80fd5b505af1158015610b33573d5f803e3d5ffd5b50505050806001600160a01b0316610b49610a43565b6001600160a01b0316847f9a471856befea1cabcd7fc8a1c4d70ea07b8ed2ee205cc361f932433542ef3fe60405160405180910390a4505050565b6060610b8f85611076565b5f80876001600160a01b031686610ba88b8a89896110db565b604051610bb59190611826565b5f604051808303815f8787f1925050503d805f8114610bef576040519150601f19603f3d011682016040523d82523d5f602084013e610bf4565b606091505b509092509050610c05603f876119bf565b5a11610c1357610c136119d2565b610c5382826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061110b565b9998505050505050505050565b5f60605f7fd81bbfcee722494b885e891546eeac23d0eedcd44038d7a2f6ef9ec2f9e0d2398686604051602001610c989291906119e6565b60405160208183030381529060405280519060200120604051602001610cc8929190918252602082015260400190565b60408051808303601f19018152828252805160209091012060028084526060840190925292505f9190816020015b6060815260200190600190039081610cf657905050905086868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920182905250855186945090925015159050610d5657610d566117b0565b6020026020010181905250604051806040016040528060038152602001621e9a5b60ea1b81525081600181518110610d9057610d906117b0565b6020908102919091018101919091525f8381526065909152604080822080546001600160a01b0319166001600160a01b03898116919091179091556067549151635cd7e3b360e01b8152911691635cd7e3b391610df891309186918991829190600401611a4d565b5f604051808303815f87803b158015610e0f575f80fd5b505af1158015610e21573d5f803e3d5ffd5b50505050846001600160a01b0316827f08717469d38a4b02325ea6637978c7952f94d3d8fc7848994f618ddbf4d637f18989604051610e61929190611aab565b60405180910390a35095945050505050565b303303610e8657610e8381611144565b50565b610e8381611076565b60605f82610e9f60016020611ad9565b60ff1660208110610eb257610eb26117b0565b1a9050610ec0600282611af2565b60ff1615610ecf576003610ed2565b60025b84604051602001610efc92919060f89290921b6001600160f81b0319168252600182015260210190565b60405160208183030381529060405291505092915050565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015610f58573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f7c9190611841565b90505f611029866060015180519060200120868860200151604051602001610fc99392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561104f5750855161104f906001600160a01b0316828661116e565b9695505050505050565b5f30330361106e575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f906060016040516020818303038152906040528051906020012090506110ca8190565b546110d6906001611b13565b905550565b60608285856040516020016110f293929190611b26565b6040516020818303038152906040529050949350505050565b6060831561111a5750816104cf565b82511561112a5782518084602001fd5b8160405162461bcd60e51b81526004016103579190611601565b61114c6112a9565b8114610e8357604051635637b6af60e11b815260048101829052602401610357565b5f805f61117b85856112bb565b90925090505f81600481111561119357611193611b64565b1480156111b15750856001600160a01b0316826001600160a01b0316145b156111c1576001925050506104cf565b5f80876001600160a01b0316631626ba7e60e01b88886040516024016111e8929190611b78565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516112269190611826565b5f60405180830381855afa9150503d805f811461125e576040519150601f19603f3d011682016040523d82523d5f602084013e611263565b606091505b5091509150818015611276575080516020145b801561129d57508051630b135d3f60e11b9061129b9083016020908101908401611841565b145b98975050505050505050565b5f3033036110735750601f1936013590565b5f8082516041036112ef576020830151604084015160608501515f1a6112e3878285856112fd565b945094505050506112f6565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561133257505f905060036113d9565b8460ff16601b1415801561134a57508460ff16601c14155b1561135a57505f905060046113d9565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156113ab573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b0381166113d3575f600192509250506113d9565b91505f90505b94509492505050565b6001600160a01b0381168114610e83575f80fd5b5f8083601f840112611406575f80fd5b50813567ffffffffffffffff81111561141d575f80fd5b6020830191508360208285010111156112f6575f80fd5b5f805f805f60808688031215611448575f80fd5b8535611453816113e2565b94506020860135611463816113e2565b935060408601359250606086013567ffffffffffffffff811115611485575f80fd5b611491888289016113f6565b969995985093965092949392505050565b5f8083601f8401126114b2575f80fd5b50813567ffffffffffffffff8111156114c9575f80fd5b6020830191508360208260051b85010111156112f6575f80fd5b5f805f805f608086880312156114f7575f80fd5b853567ffffffffffffffff81111561150d575f80fd5b611519888289016114a2565b9096509450506020860135925060408601359150606086013561153b816113e2565b809150509295509295909350565b5f805f6040848603121561155b575f80fd5b833567ffffffffffffffff80821115611572575f80fd5b9085019060808288031215611585575f80fd5b9093506020850135908082111561159a575f80fd5b506115a7868287016113f6565b9497909650939450505050565b5f5b838110156115ce5781810151838201526020016115b6565b50505f910152565b5f81518084526115ed8160208601602086016115b4565b601f01601f19169290920160200192915050565b602081525f6104cf60208301846115d6565b5f805f60408486031215611625575f80fd5b833567ffffffffffffffff81111561163b575f80fd5b611647868287016113f6565b909450925050602084013561165b816113e2565b809150509250925092565b5f8060408385031215611677575f80fd5b8235611682816113e2565b91506020830135611692816113e2565b809150509250929050565b5f602082840312156116ad575f80fd5b81356104cf816113e2565b5f602082840312156116c8575f80fd5b5035919050565b5f80604083850312156116e0575f80fd5b50508035926020909101359150565b5f805f8060808587031215611702575f80fd5b8435935060208501359250604085013591506060850135611722816113e2565b939692955090935050565b5f805f6040848603121561173f575f80fd5b833561174a816113e2565b9250602084013567ffffffffffffffff811115611765575f80fd5b6115a7868287016114a2565b5f8060208385031215611782575f80fd5b823567ffffffffffffffff811115611798575f80fd5b6117a4858286016114a2565b90969095509350505050565b634e487b7160e01b5f52603260045260245ffd5b5f808335601e198436030181126117d9575f80fd5b83018035915067ffffffffffffffff8211156117f3575f80fd5b6020019150368190038213156112f6575f80fd5b5f60208284031215611817575f80fd5b815180151581146104cf575f80fd5b5f82516118378184602087016115b4565b9190910192915050565b5f60208284031215611851575f80fd5b5051919050565b634e487b7160e01b5f52604160045260245ffd5b6040516080810167ffffffffffffffff8111828210171561188f5761188f611858565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156118be576118be611858565b604052919050565b5f608082360312156118d6575f80fd5b6118de61186c565b82356118e9816113e2565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff80821115611919575f80fd5b9085019036601f83011261192b575f80fd5b81358181111561193d5761193d611858565b61194f601f8201601f19168501611895565b91508082523684828501011115611964575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b5f8235603e19833603018112611837575f80fd5b634e487b7160e01b5f52601260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b5f826119cd576119cd611997565b500490565b634e487b7160e01b5f52600160045260245ffd5b818382375f9101908152919050565b5f8282518085526020808601955060208260051b840101602086015f5b84811015611a4057601f19868403018952611a2e8383516115d6565b98840198925090830190600101611a12565b5090979650505050505050565b6001600160a01b038616815260a0602082018190525f90611a70908301876119f5565b8281036040840152611a8281876119f5565b90508281036060840152611a9681866119f5565b91505082151560808301529695505050505050565b60208152816020820152818360408301375f818301604090810191909152601f909201601f19160101919050565b60ff828116828216039081111561078b5761078b6119ab565b5f60ff831680611b0457611b04611997565b8060ff84160691505092915050565b8082018082111561078b5761078b6119ab565b5f8451611b378184602089016115b4565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f6105bb60408301846115d656fea164736f6c6343000818000a","storage":{"0x0":"0xff"}},"0xda9e1b3e395bfb0a45f03c7f615146b9d896c959":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100b1575f3560e01c806340c10f191161006e57806340c10f191461013d57806370a082311461015257806395d89b411461017a578063a457c2d714610182578063a9059cbb14610195578063dd62ed3e146101a8575f80fd5b806306fdde03146100b5578063095ea7b3146100d357806318160ddd146100f657806323b872dd14610108578063313ce5671461011b578063395093511461012a575b5f80fd5b6100bd6101bb565b6040516100ca9190610775565b60405180910390f35b6100e66100e13660046107dc565b61024b565b60405190151581526020016100ca565b6002545b6040519081526020016100ca565b6100e6610116366004610804565b610264565b604051601281526020016100ca565b6100e66101383660046107dc565b610287565b61015061014b3660046107dc565b6102a8565b005b6100fa61016036600461083d565b6001600160a01b03165f9081526020819052604090205490565b6100bd6102b6565b6100e66101903660046107dc565b6102c5565b6100e66101a33660046107dc565b610344565b6100fa6101b636600461085d565b610351565b6060600380546101ca9061088e565b80601f01602080910402602001604051908101604052809291908181526020018280546101f69061088e565b80156102415780601f1061021857610100808354040283529160200191610241565b820191905f5260205f20905b81548152906001019060200180831161022457829003601f168201915b5050505050905090565b5f3361025881858561037b565b60019150505b92915050565b5f3361027185828561049e565b61027c858585610516565b506001949350505050565b5f336102588185856102998383610351565b6102a391906108c6565b61037b565b6102b282826106b8565b5050565b6060600480546101ca9061088e565b5f33816102d28286610351565b9050838110156103375760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b61027c828686840361037b565b5f33610258818585610516565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b6001600160a01b0383166103dd5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161032e565b6001600160a01b03821661043e5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161032e565b6001600160a01b038381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b5f6104a98484610351565b90505f19811461051057818110156105035760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161032e565b610510848484840361037b565b50505050565b6001600160a01b03831661057a5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161032e565b6001600160a01b0382166105dc5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161032e565b6001600160a01b0383165f90815260208190526040902054818110156106535760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161032e565b6001600160a01b038481165f81815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3610510565b6001600160a01b03821661070e5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640161032e565b8060025f82825461071f91906108c6565b90915550506001600160a01b0382165f81815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b5f602080835283518060208501525f5b818110156107a157858101830151858201604001528201610785565b505f604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146107d7575f80fd5b919050565b5f80604083850312156107ed575f80fd5b6107f6836107c1565b946020939093013593505050565b5f805f60608486031215610816575f80fd5b61081f846107c1565b925061082d602085016107c1565b9150604084013590509250925092565b5f6020828403121561084d575f80fd5b610856826107c1565b9392505050565b5f806040838503121561086e575f80fd5b610877836107c1565b9150610885602084016107c1565b90509250929050565b600181811c908216806108a257607f821691505b6020821081036108c057634e487b7160e01b5f52602260045260245ffd5b50919050565b8082018082111561025e57634e487b7160e01b5f52601160045260245ffdfea164736f6c6343000818000a","storage":{"0x2":"0xe8d4a51000","0x3":"0x0","0x4":"0x0","0x47668262eb76f3aa61b856a0c078f33a11f46671cf1466c3616ba74a22fcdd92":"0xe8d4a51000","0x9cc83e833a69122bf7773b58c082655d780ae469ab7cdf5d1047a30229e55875":"0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"}},"0xe0afc4e9e03e4aa67257df7a2eca77454309789d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061002b5760003560e01c806316f1983114610030575b600080fd5b6100b06004803603604081101561004657600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561007157600080fd5b82018360208201111561008357600080fd5b803590602001918460018302840111640100000000831117156100a557600080fd5b5090925090506100b2565b005b826001600160a01b031660017f103fed9db65eac19c4d870f49ab7520fe03b99f1838e5996caf47e9e43308392848460405180806020018281038252848482818152602001925080828437600083820152604051601f909101601f19169092018290039550909350505050a350505056fea164736f6c6343000606000a","storage":{}},"0xe4fdf45c2f8d198854f8823809c7a988eeaaa493":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100a6575f3560e01c80638cb8ecec1161006e5780638cb8ecec1461013e5780638da5cb5b14610151578063cbe9e76414610161578063da8c229e14610183578063e0dba60f146101a5578063f2fde38b146101b8575f80fd5b806301670ba9146100aa57806301ffc9a7146100bf5780633f15457f146100f85780634e543b2614610123578063715018a614610136575b5f80fd5b6100bd6100b8366004610529565b6101cb565b005b6100e36100cd366004610540565b6001600160e01b0319166301ffc9a760e01b1490565b60405190151581526020015b60405180910390f35b60025461010b906001600160a01b031681565b6040516001600160a01b0390911681526020016100ef565b6100bd610131366004610589565b610217565b6100bd610282565b6100bd61014c3660046105a2565b610295565b5f546001600160a01b031661010b565b6100e361016f366004610529565b60036020525f908152604090205460ff1681565b6100e3610191366004610589565b60016020525f908152604090205460ff1681565b6100bd6101b33660046105cc565b6103a2565b6100bd6101c6366004610589565b610408565b6101d3610481565b60405181907f1764176cfa565853ba1ded547a830a9f9bff95231ef6fd228b3ddd6175777569905f90a25f908152600360205260409020805460ff19166001179055565b61021f610481565b600254604051630c4b7b8560e11b81525f60048201526001600160a01b03838116602483015290911690631896f70a906044015f604051808303815f87803b158015610269575f80fd5b505af115801561027b573d5f803e3d5ffd5b5050505050565b61028a610481565b6102935f6104da565b565b335f9081526001602052604090205460ff166103095760405162461bcd60e51b815260206004820152602860248201527f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f604482015267373a3937b63632b960c11b60648201526084015b60405180910390fd5b5f8281526003602052604090205460ff1615610323575f80fd5b6002546040516306ab592360e01b81525f6004820152602481018490526001600160a01b038381166044830152909116906306ab5923906064016020604051808303815f875af1158015610379573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061039d9190610605565b505050565b6103aa610481565b6001600160a01b0382165f81815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b610410610481565b6001600160a01b0381166104755760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610300565b61047e816104da565b50565b5f546001600160a01b031633146102935760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610300565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f60208284031215610539575f80fd5b5035919050565b5f60208284031215610550575f80fd5b81356001600160e01b031981168114610567575f80fd5b9392505050565b80356001600160a01b0381168114610584575f80fd5b919050565b5f60208284031215610599575f80fd5b6105678261056e565b5f80604083850312156105b3575f80fd5b823591506105c36020840161056e565b90509250929050565b5f80604083850312156105dd575f80fd5b6105e68361056e565b9150602083013580151581146105fa575f80fd5b809150509250929050565b5f60208284031215610615575f80fd5b505191905056fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0xbdf39e9e65b2355b1b0b06df799c09159f0ab90f06a9bb2153f5de7d9b0ea81":"0x1","0x97b771283c9c769f7b9399fef71d92816f2bd31de10203b676671b01eb920966":"0x1"}},"0xe85541865bbb62a05064ce5c9f41cc293a8ea996":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610060575f3560e01c8063715018a6146100645780638129fc1c1461006e5780638da5cb5b14610076578063a3f4df7e14610096578063f2fde38b146100cf578063ffa1ad74146100e2575b5f80fd5b61006c610106565b005b61006c610119565b6033546040516001600160a01b0390911681526020015b60405180910390f35b6100c26040518060400160405280600d81526020016c2aa7299d1027b832b930ba37b960991b81525081565b60405161008d91906103bd565b61006c6100dd366004610409565b610229565b6100c2604051806040016040528060058152602001640302e312e360dc1b81525081565b61010e61029f565b6101175f6102f9565b565b5f54610100900460ff161580801561013757505f54600160ff909116105b806101505750303b15801561015057505f5460ff166001145b6101b85760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b5f805460ff1916600117905580156101d9575f805461ff0019166101001790555b6101e161034a565b8015610226575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50565b61023161029f565b6001600160a01b0381166102965760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016101af565b610226816102f9565b6033546001600160a01b031633146101175760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016101af565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff166103b45760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016101af565b610117336102f9565b5f602080835283518060208501525f5b818110156103e9578581018301518582016040015282016103cd565b505f604082860101526040601f19601f8301168501019250505092915050565b5f60208284031215610419575f80fd5b81356001600160a01b038116811461042f575f80fd5b939250505056fea164736f6c6343000818000a","storage":{}},"0xead34b583404e3cb0c9b97c2d1c486be67be9f30":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0xec71e4e674fe0f432693dc2b935c34bd2774c003":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610090575f3560e01c8063a200e15311610063578063a200e15314610146578063a34e35961461016d578063c8a4271f14610180578063cd5d2c74146101bf578063d820ed42146101e6575f80fd5b806301ffc9a7146100945780632c0fd74c146100bc57806350e9a715146100f157806359b6b86c1461011f575b5f80fd5b6100a76100a2366004610600565b61020d565b60405190151581526020015b60405180910390f35b6100e37f000000000000000000000000000000000000000000000000000000000000000081565b6040519081526020016100b3565b6101046100ff366004610627565b610243565b604080518251815260209283015192810192909252016100b3565b6100e37f000000000000000000000000000000000000000000000000000000000000000181565b6100e37f000000000000000000000000000000000000000000000000000000000000000481565b6100e361017b366004610627565b610404565b6101a77f000000000000000000000000f3810eb7d64d1c11ae12727d957c6202b24492f581565b6040516001600160a01b0390911681526020016100b3565b6100e37f000000000000000000000000000000000000000000000000000000000000000081565b6100e37f000000000000000000000000000000000000000000000000000000000000000281565b5f6001600160e01b031982166301ffc9a760e01b148061023d57506001600160e01b031982166350e9a71560e01b145b92915050565b604080518082019091525f80825260208201525f61029586868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061045392505050565b90505f600582106102d1576102ca847f00000000000000000000000000000000000000000000000000000000000000016106b3565b9050610394565b81600403610303576102ca847f00000000000000000000000000000000000000000000000000000000000000026106b3565b81600303610335576102ca847f00000000000000000000000000000000000000000000000000000000000000046106b3565b81600203610367576102ca847f00000000000000000000000000000000000000000000000000000000000000006106b3565b610391847f00000000000000000000000000000000000000000000000000000000000000006106b3565b90505b60405180604001604052806103a883610554565b81526020016103f76103f28a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c92508b91506105f89050565b610554565b9052979650505050505050565b5f61044a6103f286868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508892508791506105f89050565b95945050505050565b80515f90819081905b8082101561054b575f858381518110610477576104776106ca565b01602001516001600160f81b0319169050600160ff1b8110156104a65761049f6001846106de565b9250610538565b600760fd1b6001600160f81b0319821610156104c75761049f6002846106de565b600f60fc1b6001600160f81b0319821610156104e85761049f6003846106de565b601f60fb1b6001600160f81b0319821610156105095761049f6004846106de565b603f60fa1b6001600160f81b03198216101561052a5761049f6005846106de565b6105356006846106de565b92505b5082610543816106f1565b93505061045c565b50909392505050565b5f807f000000000000000000000000f3810eb7d64d1c11ae12727d957c6202b24492f56001600160a01b03166350d25bcd6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105b2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105d69190610709565b9050806105e7846305f5e1006106b3565b6105f19190610720565b9392505050565b5f9392505050565b5f60208284031215610610575f80fd5b81356001600160e01b0319811681146105f1575f80fd5b5f805f806060858703121561063a575f80fd5b843567ffffffffffffffff80821115610651575f80fd5b818701915087601f830112610664575f80fd5b813581811115610672575f80fd5b886020828501011115610683575f80fd5b6020928301999098509187013596604001359550909350505050565b634e487b7160e01b5f52601160045260245ffd5b808202811582820484141761023d5761023d61069f565b634e487b7160e01b5f52603260045260245ffd5b8082018082111561023d5761023d61069f565b5f600182016107025761070261069f565b5060010190565b5f60208284031215610719575f80fd5b5051919050565b5f8261073a57634e487b7160e01b5f52601260045260245ffd5b50049056fea164736f6c6343000818000a","storage":{}},"0xf1ad43dc647f27c2366ab4742d68d21282f7d50e":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101d1575f3560e01c80638b95dd71116100fe578063c86902331161009e578063e32954eb1161006e578063e32954eb146104f2578063e59d895d14610505578063e985e9c514610518578063f1cb7e0614610553575f80fd5b8063c869023314610435578063ce3decdc1461048c578063d5fa2b001461049f578063d700ff33146104b2575f80fd5b8063a8fa5682116100d9578063a8fa5682146103ac578063a9784b3e146103bf578063ac9650d814610402578063bc1c58d114610422575f80fd5b80638b95dd7114610373578063a22cb46514610386578063a4b91a0114610399575f80fd5b80633603d758116101745780635c98042b116101445780635c98042b14610327578063623195b01461033a578063691f34311461034d5780637737221314610360575f80fd5b80633603d758146102975780633b3b57de146102aa5780634cbf6ba4146102bd57806359d1d43c14610307575f80fd5b8063124a319c116101af578063124a319c146102255780632203ab561461025057806329cd62ea14610271578063304e6ade14610284575f80fd5b806301ffc9a7146101d55780630af179d7146101fd57806310f13a8c14610212575b5f80fd5b6101e86101e3366004612267565b610566565b60405190151581526020015b60405180910390f35b61021061020b3660046122bd565b610576565b005b610210610220366004612304565b610778565b610238610233366004612377565b610842565b6040516001600160a01b0390911681526020016101f4565b61026361025e3660046123a1565b610a87565b6040516101f492919061240e565b61021061027f366004612426565b610bb5565b6102106102923660046122bd565b610c4d565b6102106102a536600461244f565b610cc6565b6102386102b836600461244f565b610d64565b6101e86102cb3660046123a1565b5f82815260208181526040808320546001600160401b031683526006825280832094835293815283822092825291909152205461ffff16151590565b61031a6103153660046122bd565b610d93565b6040516101f49190612466565b61031a61033536600461244f565b610e6f565b610210610348366004612478565b610f2a565b61031a61035b36600461244f565b610fc2565b61021061036e3660046122bd565b610ffa565b6102106103813660046124da565b611073565b6102106103943660046125b9565b611150565b6102106103a73660046125e3565b61122a565b61031a6103ba36600461261e565b6112f6565b6101e86103cd36600461265a565b6001600160a01b039283165f908152600c60209081526040808320948352938152838220929094168152925290205460ff1690565b6104156104103660046126ce565b611342565b6040516101f4919061270c565b61031a61043036600461244f565b61134f565b61047761044336600461244f565b5f81815260208181526040808320546001600160401b03168352600982528083209383529290522080546001909101549091565b604080519283526020830191909152016101f4565b61021061049a3660046122bd565b611387565b6102106104ad36600461276e565b6114c3565b6104da6104c036600461244f565b5f602081905290815260409020546001600160401b031681565b6040516001600160401b0390911681526020016101f4565b61041561050036600461279c565b6114e9565b6102106105133660046127d6565b6114fe565b6101e8610526366004612808565b6001600160a01b039182165f908152600b6020908152604080832093909416825291909152205460ff1690565b61031a6105613660046123a1565b6115a2565b5f61057082611666565b92915050565b826105808161168a565b610588575f80fd5b5f84815260208181526040808320548151601f87018490048402810184019092528582528392606092839285926001600160401b039091169183916105eb9183918d908d90819084018382808284375f9201919091525092939250506118b79050565b90505b80515160208201511015610712578661ffff165f03610652578060400151965061061781611912565b94508460405160200161062a9190612834565b60405160208183030381529060405280519060200120925061064b81611933565b9350610704565b5f61065c82611912565b9050816040015161ffff168861ffff16141580610680575061067e868261194f565b155b15610702576106db8c878a8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250505060208801518d91506106d2908290612863565b8b51158a61196a565b8160400151975081602001519650809550858051906020012093506106ff82611933565b94505b505b61070d81611bc9565b6105ee565b5083511561076c5761076c8a85888c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c925061076391508290508f612863565b8951158861196a565b50505050505050505050565b846107828161168a565b61078a575f80fd5b5f86815260208181526040808320546001600160401b03168352600a8252808320898452909152908190209051849184916107c89089908990612876565b908152602001604051809103902091826107e3929190612901565b5084846040516107f4929190612876565b6040518091039020867f448bc014f1536726cf8d54ff3d6481ed3cbc683c2591ca204274009afa09b1a18787878760405161083294939291906129e2565b60405180910390a3505050505050565b5f82815260208181526040808320546001600160401b031683526007825280832085845282528083206001600160e01b0319851684529091528120546001600160a01b03168015610894579050610570565b5f61089e85610d64565b90506001600160a01b0381166108b8575f92505050610570565b6040516301ffc9a760e01b60248201525f9081906001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b1790525161090f9190612834565b5f60405180830381855afa9150503d805f8114610947576040519150601f19603f3d011682016040523d82523d5f602084013e61094c565b606091505b509150915081158061095f575060208151105b80610989575080601f8151811061097857610978612a13565b01602001516001600160f81b031916155b1561099a575f945050505050610570565b6040516001600160e01b0319871660248201526001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b179052516109f09190612834565b5f60405180830381855afa9150503d805f8114610a28576040519150601f19603f3d011682016040523d82523d5f602084013e610a2d565b606091505b509092509050811580610a41575060208151105b80610a6b575080601f81518110610a5a57610a5a612a13565b01602001516001600160f81b031916155b15610a7c575f945050505050610570565b509095945050505050565b5f82815260208181526040808320546001600160401b03168352600180835281842086855290925282206060915b848111610b975780851615801590610ae457505f8181526020839052604081208054610ae090612885565b9050115b15610b8f5780825f8381526020019081526020015f20808054610b0690612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610b3290612885565b8015610b7d5780601f10610b5457610100808354040283529160200191610b7d565b820191905f5260205f20905b815481529060010190602001808311610b6057829003601f168201915b50505050509050935093505050610bae565b60011b610ab5565b505f60405180602001604052805f81525092509250505b9250929050565b82610bbf8161168a565b610bc7575f80fd5b60408051808201825284815260208082018581525f888152808352848120546001600160401b031681526009835284812089825283528490209251835551600190920191909155815185815290810184905285917f1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e4691015b60405180910390a250505050565b82610c578161168a565b610c5f575f80fd5b5f84815260208181526040808320546001600160401b03168352600382528083208784529091529020610c93838583612901565b50837fe379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d75788484604051610c3f929190612a27565b80610cd08161168a565b610cd8575f80fd5b5f82815260208190526040812080546001600160401b031691610cfa83612a3a565b82546101009290920a6001600160401b038181021990931691831602179091555f84815260208181526040918290205491519190921681528492507fc6621ccb8f3f5a04bb6502154b2caf6adf5983fe76dfef1cfc9c42e3579db444910160405180910390a25050565b5f80610d7183603c6115a2565b905080515f03610d8357505f92915050565b610d8c81611cae565b9392505050565b5f83815260208181526040808320546001600160401b03168352600a825280832086845290915290819020905160609190610dd19085908590612876565b90815260200160405180910390208054610dea90612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610e1690612885565b8015610e615780601f10610e3857610100808354040283529160200191610e61565b820191905f5260205f20905b815481529060010190602001808311610e4457829003601f168201915b505050505090509392505050565b5f81815260208181526040808320546001600160401b03168352600482528083208484529091529020805460609190610ea790612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610ed390612885565b8015610f1e5780601f10610ef557610100808354040283529160200191610f1e565b820191905f5260205f20905b815481529060010190602001808311610f0157829003601f168201915b50505050509050919050565b83610f348161168a565b610f3c575f80fd5b83610f48600182612863565b1615610f52575f80fd5b5f85815260208181526040808320546001600160401b031683526001825280832088845282528083208784529091529020610f8e838583612901565b50604051849086907faa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe3905f90a35050505050565b5f81815260208181526040808320546001600160401b03168352600882528083208484529091529020805460609190610ea790612885565b826110048161168a565b61100c575f80fd5b5f84815260208181526040808320546001600160401b03168352600882528083208784529091529020611040838583612901565b50837fb7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f78484604051610c3f929190612a27565b8261107d8161168a565b611085575f80fd5b837f65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af75284846040516110b792919061240e565b60405180910390a2603c830361110e57837f52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd26110f284611cae565b6040516001600160a01b03909116815260200160405180910390a25b5f84815260208181526040808320546001600160401b0316835260028252808320878452825280832086845290915290206111498382612a5f565b5050505050565b6001600160a01b03821633036111bf5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084015b60405180910390fd5b335f818152600b602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6001600160a01b03821633036112825760405162461bcd60e51b815260206004820181905260248201527f53657474696e672064656c65676174652073746174757320666f722073656c6660448201526064016111b6565b335f818152600c6020908152604080832087845282528083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519384529286917ff0ddb3b04746704017f9aa8bd728fcc2c1d11675041205350018915f5e4750a0910160405180910390a4505050565b5f83815260208181526040808320546001600160401b03168352600582528083208684528252808320858452825280832061ffff851684529091529020805460609190610dea90612885565b6060610d8c5f8484611ccb565b5f81815260208181526040808320546001600160401b03168352600382528083208484529091529020805460609190610ea790612885565b826113918161168a565b611399575f80fd5b5f84815260208181526040808320546001600160401b031680845260048352818420888552909252822080549192916113d190612885565b80601f01602080910402602001604051908101604052809291908181526020018280546113fd90612885565b80156114485780601f1061141f57610100808354040283529160200191611448565b820191905f5260205f20905b81548152906001019060200180831161142b57829003601f168201915b505050506001600160401b0384165f9081526004602090815260408083208b8452909152902091925061147e9050858783612901565b50857f8f15ed4b723ef428f250961da8315675b507046737e19319fc1a4d81bfe87f858287876040516114b393929190612b1e565b60405180910390a2505050505050565b816114cd8161168a565b6114d5575f80fd5b6114e483603c61038185611e88565b505050565b60606114f6848484611ccb565b949350505050565b826115088161168a565b611510575f80fd5b5f84815260208181526040808320546001600160401b031683526007825280832087845282528083206001600160e01b031987168085529083529281902080546001600160a01b0319166001600160a01b038716908117909155905190815286917f7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa910160405180910390a350505050565b5f82815260208181526040808320546001600160401b0316835260028252808320858452825280832084845290915290208054606091906115e290612885565b80601f016020809104026020016040519081016040528092919081815260200182805461160e90612885565b80156116595780601f1061163057610100808354040283529160200191611659565b820191905f5260205f20905b81548152906001019060200180831161163c57829003601f168201915b5050505050905092915050565b5f6001600160e01b03198216631674750f60e21b1480610570575061057082611eb8565b5f336001600160a01b037f0000000000000000000000004fbf7b2f171336958be5d15ff762a5cff53635681614806116ea5750336001600160a01b037f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5616145b156116f757506001919050565b6040516302571be360e01b8152600481018390525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa15801561175c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117809190612b4d565b90507f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b0316816001600160a01b031603611845576040516331a9108f60e11b8152600481018490527f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b031690636352211e90602401602060405180830381865afa15801561181e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118429190612b4d565b90505b6001600160a01b03811633148061187e57506001600160a01b0381165f908152600b6020908152604080832033845290915290205460ff165b80610d8c57506001600160a01b0381165f908152600c60209081526040808320868452825280832033845290915290205460ff16610d8c565b6118ff6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261057081611bc9565b602081015181516060916105709161192a9082611edc565b84519190611f33565b60a081015160c08201516060916105709161192a908290612863565b5f81518351148015610d8c5750610d8c835f845f8751611fa7565b865160208801205f61197d878787611f33565b90508315611aa1576001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c168452909152902080546119c690612885565b159050611a23576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611a0783612b68565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091528120611a62916121f9565b897f03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a12078a8a604051611a94929190612b84565b60405180910390a261076c565b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c16845290915290208054611ae290612885565b90505f03611b40576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611b2483612ba9565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091529020611b808282612a5f565b50897f52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b8a8a84604051611bb593929190612bbf565b60405180910390a250505050505050505050565b60c08101516020820181905281515111611be05750565b5f611bf2825f01518360200151611edc565b8260200151611c019190612bed565b8251909150611c109082611fc9565b61ffff166040830152611c24600282612bed565b8251909150611c339082611fc9565b61ffff166060830152611c47600282612bed565b8251909150611c569082611fef565b63ffffffff166080830152611c6c600482612bed565b82519091505f90611c7d9083611fc9565b61ffff169050611c8e600283612bed565b60a084018190529150611ca18183612bed565b60c0909301929092525050565b5f8151601414611cbc575f80fd5b5060200151600160601b900490565b6060816001600160401b03811115611ce557611ce56124c6565b604051908082528060200260200182016040528015611d1857816020015b6060815260200190600190039081611d035790505b5090505f5b82811015611e80578415611dd8575f848483818110611d3e57611d3e612a13565b9050602002810190611d509190612c00565b611d5f91602491600491612c42565b611d6891612c69565b9050858114611dd65760405162461bcd60e51b815260206004820152603460248201527f6d756c746963616c6c3a20416c6c207265636f726473206d7573742068617665604482015273040c240dac2e8c6d0d2dcce40dcc2dacad0c2e6d60631b60648201526084016111b6565b505b5f8030868685818110611ded57611ded612a13565b9050602002810190611dff9190612c00565b604051611e0d929190612876565b5f60405180830381855af49150503d805f8114611e45576040519150601f19603f3d011682016040523d82523d5f602084013e611e4a565b606091505b509150915081611e58575f80fd5b80848481518110611e6b57611e6b612a13565b60209081029190910101525050600101611d1d565b509392505050565b604080516014808252818301909252606091602082018180368337505050600160601b9290920260208301525090565b5f6001600160e01b0319821663c869023360e01b1480610570575061057082612017565b5f815b83518110611eef57611eef612c86565b5f611efa858361203b565b60ff169050611f0a816001612bed565b611f149083612bed565b9150805f03611f235750611f29565b50611edf565b6114f68382612863565b8251606090611f428385612bed565b1115611f4c575f80fd5b5f826001600160401b03811115611f6557611f656124c6565b6040519080825280601f01601f191660200182016040528015611f8f576020820181803683370190505b50905060208082019086860101610a7c82828761205e565b5f611fb38484846120b3565b611fbe8787856120b3565b149695505050505050565b81515f90611fd8836002612bed565b1115611fe2575f80fd5b50016002015161ffff1690565b81515f90611ffe836004612bed565b1115612008575f80fd5b50016004015163ffffffff1690565b5f6001600160e01b0319821663691f343160e01b14806105705750610570826120d5565b5f82828151811061204e5761204e612a13565b016020015160f81c905092915050565b602081106120965781518352612075602084612bed565b9250612082602083612bed565b915061208f602082612863565b905061205e565b905182516020929092036101000a5f190180199091169116179052565b82515f906120c18385612bed565b11156120cb575f80fd5b5091016020012090565b5f6001600160e01b031982166304928c6760e21b14806105705750610570825f6001600160e01b0319821663547d2b4160e11b148061212457506001600160e01b03198216635c98042b60e01b145b806105705750610570825f6001600160e01b0319821663bc1c58d160e01b14806105705750610570825f6001600160e01b03198216631d9dabef60e11b148061217d57506001600160e01b031982166378e5bf0360e11b145b806105705750610570825f6001600160e01b03198216631101d5ab60e11b14806105705750610570825f6001600160e01b0319821663d700ff3360e01b14806105705750610570825f6001600160e01b03198216634fbf043360e01b148061057057506301ffc9a760e01b6001600160e01b0319831614610570565b50805461220590612885565b5f825580601f10612214575050565b601f0160209004905f5260205f20908101906122309190612233565b50565b5b80821115612247575f8155600101612234565b5090565b80356001600160e01b031981168114612262575f80fd5b919050565b5f60208284031215612277575f80fd5b610d8c8261224b565b5f8083601f840112612290575f80fd5b5081356001600160401b038111156122a6575f80fd5b602083019150836020828501011115610bae575f80fd5b5f805f604084860312156122cf575f80fd5b8335925060208401356001600160401b038111156122eb575f80fd5b6122f786828701612280565b9497909650939450505050565b5f805f805f60608688031215612318575f80fd5b8535945060208601356001600160401b0380821115612335575f80fd5b61234189838a01612280565b90965094506040880135915080821115612359575f80fd5b5061236688828901612280565b969995985093965092949392505050565b5f8060408385031215612388575f80fd5b823591506123986020840161224b565b90509250929050565b5f80604083850312156123b2575f80fd5b50508035926020909101359150565b5f5b838110156123db5781810151838201526020016123c3565b50505f910152565b5f81518084526123fa8160208601602086016123c1565b601f01601f19169290920160200192915050565b828152604060208201525f6114f660408301846123e3565b5f805f60608486031215612438575f80fd5b505081359360208301359350604090920135919050565b5f6020828403121561245f575f80fd5b5035919050565b602081525f610d8c60208301846123e3565b5f805f806060858703121561248b575f80fd5b843593506020850135925060408501356001600160401b038111156124ae575f80fd5b6124ba87828801612280565b95989497509550505050565b634e487b7160e01b5f52604160045260245ffd5b5f805f606084860312156124ec575f80fd5b833592506020840135915060408401356001600160401b0380821115612510575f80fd5b818601915086601f830112612523575f80fd5b813581811115612535576125356124c6565b604051601f8201601f19908116603f0116810190838211818310171561255d5761255d6124c6565b81604052828152896020848701011115612575575f80fd5b826020860160208301375f6020848301015280955050505050509250925092565b6001600160a01b0381168114612230575f80fd5b80358015158114612262575f80fd5b5f80604083850312156125ca575f80fd5b82356125d581612596565b9150612398602084016125aa565b5f805f606084860312156125f5575f80fd5b83359250602084013561260781612596565b9150612615604085016125aa565b90509250925092565b5f805f60608486031215612630575f80fd5b8335925060208401359150604084013561ffff8116811461264f575f80fd5b809150509250925092565b5f805f6060848603121561266c575f80fd5b833561267781612596565b925060208401359150604084013561264f81612596565b5f8083601f84011261269e575f80fd5b5081356001600160401b038111156126b4575f80fd5b6020830191508360208260051b8501011115610bae575f80fd5b5f80602083850312156126df575f80fd5b82356001600160401b038111156126f4575f80fd5b6127008582860161268e565b90969095509350505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b8281101561276157603f1988860301845261274f8583516123e3565b94509285019290850190600101612733565b5092979650505050505050565b5f806040838503121561277f575f80fd5b82359150602083013561279181612596565b809150509250929050565b5f805f604084860312156127ae575f80fd5b8335925060208401356001600160401b038111156127ca575f80fd5b6122f78682870161268e565b5f805f606084860312156127e8575f80fd5b833592506127f86020850161224b565b9150604084013561264f81612596565b5f8060408385031215612819575f80fd5b823561282481612596565b9150602083013561279181612596565b5f82516128458184602087016123c1565b9190910192915050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156105705761057061284f565b818382375f9101908152919050565b600181811c9082168061289957607f821691505b6020821081036128b757634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156114e457805f5260205f20601f840160051c810160208510156128e25750805b601f840160051c820191505b81811015611149575f81556001016128ee565b6001600160401b03831115612918576129186124c6565b61292c836129268354612885565b836128bd565b5f601f84116001811461295d575f85156129465750838201355b5f19600387901b1c1916600186901b178355611149565b5f83815260208120601f198716915b8281101561298c578685013582556020948501946001909201910161296c565b50868210156129a8575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b604081525f6129f56040830186886129ba565b8281036020840152612a088185876129ba565b979650505050505050565b634e487b7160e01b5f52603260045260245ffd5b602081525f6114f66020830184866129ba565b5f6001600160401b03808316818103612a5557612a5561284f565b6001019392505050565b81516001600160401b03811115612a7857612a786124c6565b612a8c81612a868454612885565b846128bd565b602080601f831160018114612abf575f8415612aa85750858301515b5f19600386901b1c1916600185901b178555612b16565b5f85815260208120601f198616915b82811015612aed57888601518255948401946001909101908401612ace565b5085821015612b0a57878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b604081525f612b3060408301866123e3565b8281036020840152612b438185876129ba565b9695505050505050565b5f60208284031215612b5d575f80fd5b8151610d8c81612596565b5f61ffff821680612b7b57612b7b61284f565b5f190192915050565b604081525f612b9660408301856123e3565b905061ffff831660208301529392505050565b5f61ffff808316818103612a5557612a5561284f565b606081525f612bd160608301866123e3565b61ffff851660208401528281036040840152612b4381856123e3565b808201808211156105705761057061284f565b5f808335601e19843603018112612c15575f80fd5b8301803591506001600160401b03821115612c2e575f80fd5b602001915036819003821315610bae575f80fd5b5f8085851115612c50575f80fd5b83861115612c5c575f80fd5b5050820193919092039150565b80356020831015610570575f19602084900360031b1b1692915050565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{}},"0xf3810eb7d64d1c11ae12727d957c6202b24492f5":{"nonce":1,"balance":"0x0","code":"0x6080604052348015600e575f80fd5b50600436106030575f3560e01c806350d25bcd146034578063e5c19b2d146048575b5f80fd5b5f5460405190815260200160405180910390f35b605760533660046059565b5f55565b005b5f602082840312156068575f80fd5b503591905056fea164736f6c6343000818000a","storage":{"0x0":"0x5f5e100"}},"0xf670681605efc4efc804f5a9b97ee89520473d56":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c80638da5cb5b11610088578063c66485b211610063578063c66485b2146101da578063da8c229e146101ed578063e0dba60f1461021f578063f2fde38b14610232575f80fd5b80638da5cb5b146101a4578063bffbe61c146101b4578063c47f0027146101c7575f80fd5b806365669631116100c35780636566963114610161578063715018a6146101745780637a806d6b1461017e578063828eab0e14610191575f80fd5b80630f5a5466146100e95780631e83409a1461010f5780633f15457f14610122575b5f80fd5b6100fc6100f7366004610958565b610245565b6040519081526020015b60405180910390f35b6100fc61011d36600461098f565b610258565b6101497f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a981565b6040516001600160a01b039091168152602001610106565b6100fc61016f3660046109aa565b610279565b61017c610526565b005b6100fc61018c366004610a8f565b610539565b600254610149906001600160a01b031681565b5f546001600160a01b0316610149565b6100fc6101c236600461098f565b6105ae565b6100fc6101d5366004610b00565b610608565b61017c6101e836600461098f565b610624565b61020f6101fb36600461098f565b60016020525f908152604090205460ff1681565b6040519015158152602001610106565b61017c61022d366004610b47565b6106e4565b61017c61024036600461098f565b61074a565b5f610251338484610279565b9392505050565b6002545f9061027390339084906001600160a01b0316610279565b92915050565b5f836001600160a01b0381163314806102a05750335f9081526001602052604090205460ff165b80610334575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063e985e9c590604401602060405180830381865afa158015610310573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103349190610b73565b806103435750610343816107c3565b6103e05760405162461bcd60e51b815260206004820152605b60248201527f526576657273655265676973747261723a2043616c6c6572206973206e6f742060448201527f6120636f6e74726f6c6c6572206f7220617574686f726973656420627920616460648201527f6472657373206f7220746865206164647265737320697473656c660000000000608482015260a4015b60405180910390fd5b5f6103ea8661083a565b604080517f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e2602080830191909152818301849052825180830384018152606090920192839052815191012091925081906001600160a01b038916907f6ada868dd3058cf77a48a74489fd7963688e5464b2b0fa957ace976243270e92905f90a36040516305ef2c7f60e41b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26004820152602481018390526001600160a01b03878116604483015286811660648301525f60848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610505575f80fd5b505af1158015610517573d5f803e3d5ffd5b50929998505050505050505050565b61052e61089c565b6105375f6108f5565b565b5f80610546868686610279565b604051637737221360e01b81529091506001600160a01b038516906377372213906105779084908790600401610b8e565b5f604051808303815f87803b15801561058e575f80fd5b505af11580156105a0573d5f803e3d5ffd5b509298975050505050505050565b5f7f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26105d98361083a565b604080516020810193909352820152606001604051602081830303815290604052805190602001209050919050565b6002545f9061027390339081906001600160a01b031685610539565b61062c61089c565b6001600160a01b03811661069b5760405162461bcd60e51b815260206004820152603060248201527f526576657273655265676973747261723a205265736f6c76657220616464726560448201526f07373206d757374206e6f7420626520360841b60648201526084016103d7565b600280546001600160a01b0319166001600160a01b0383169081179091556040517feae17a84d9eb83d8c8eb317f9e7d64857bc363fa51674d996c023f4340c577cf905f90a250565b6106ec61089c565b6001600160a01b0382165f81815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b61075261089c565b6001600160a01b0381166107b75760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016103d7565b6107c0816108f5565b50565b5f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801561081e575060408051601f3d908101601f1916820190925261081b91810190610be2565b60015b61082957505f919050565b6001600160a01b0316331492915050565b5f60285b8015610891575f19016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a81536010909204915f19016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a815360108304925061083e565b505060285f20919050565b5f546001600160a01b031633146105375760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016103d7565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146107c0575f80fd5b5f8060408385031215610969575f80fd5b823561097481610944565b9150602083013561098481610944565b809150509250929050565b5f6020828403121561099f575f80fd5b813561025181610944565b5f805f606084860312156109bc575f80fd5b83356109c781610944565b925060208401356109d781610944565b915060408401356109e781610944565b809150509250925092565b634e487b7160e01b5f52604160045260245ffd5b5f82601f830112610a15575f80fd5b813567ffffffffffffffff80821115610a3057610a306109f2565b604051601f8301601f19908116603f01168101908282118183101715610a5857610a586109f2565b81604052838152866020858801011115610a70575f80fd5b836020870160208301375f602085830101528094505050505092915050565b5f805f8060808587031215610aa2575f80fd5b8435610aad81610944565b93506020850135610abd81610944565b92506040850135610acd81610944565b9150606085013567ffffffffffffffff811115610ae8575f80fd5b610af487828801610a06565b91505092959194509250565b5f60208284031215610b10575f80fd5b813567ffffffffffffffff811115610b26575f80fd5b610b3284828501610a06565b949350505050565b80151581146107c0575f80fd5b5f8060408385031215610b58575f80fd5b8235610b6381610944565b9150602083013561098481610b3a565b5f60208284031215610b83575f80fd5b815161025181610b3a565b8281525f60206040602084015283518060408501525f5b81811015610bc157858101830151858201606001528201610ba5565b505f606082860101526060601f19601f830116850101925050509392505050565b5f60208284031215610bf2575f80fd5b81516102518161094456fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2":"0x9df67c91f1bfcb4d966cf764e9218685e7c59e8a","0x1f5b7623941da966ad7183d9cbb6db584f6d4add26919ac31a2d3f19a164e7e1":"0x1","0xbe5de2149ce76ca5934fa63455cd675fd52e2d30f3328985d298a627ca0f05e9":"0x1"}},"0xf8c26340c1eaea6c7ff1760b25005e1306953572":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061010b5760003560e01c80638c87a4ea116100a2578063b87abc1111610071578063b87abc1114610244578063c597407314610257578063ce92b33e1461026a578063e837ae741461027d578063ec129eea146102905761010b565b80638c87a4ea146101ea5780638f69c188146101fd578063a3557e6c14610210578063b85afd28146102235761010b565b806347c81699116100de57806347c8169914610181578063672b9f81146101945780636ccbae5f146101b55780637b103999146101d55761010b565b80631bd8cc1a146101105780631be5e7ed146101395780632c3d376d14610159578063310bd74b1461016c575b600080fd5b61012361011e3660046117b4565b6102a3565b6040516101309190611eee565b60405180910390f35b61014c610147366004611aec565b6104f2565b6040516101309190611fd6565b61014c610167366004611b21565b610673565b61017f61017a366004611b21565b610714565b005b61017f61018f3660046119b5565b6107c0565b6101a76101a2366004611b94565b6108ef565b604051610130929190611fe7565b6101c86101c3366004611b21565b6109c3565b604051610130919061204c565b6101dd6109d5565b6040516101309190611ea9565b6101236101f836600461191d565b6109e5565b61017f61020b366004611878565b610a74565b61017f61021e366004611878565b610af0565b610236610231366004611951565b610b1b565b604051610130929190611eff565b61017f610252366004611b3f565b610ca9565b61017f610265366004611a39565b610d43565b61017f610278366004611808565b610df9565b61017f61028b366004611808565b610e97565b61017f61029e366004611808565b610f4e565b60015460405163b3f9e4cb60e01b815260609183916001600160a01b039091169063b3f9e4cb906102d890849060040161204c565b60206040518083038186803b1580156102f057600080fd5b505afa158015610304573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610328919081019061178e565b6001600160a01b0316306001600160a01b0316146103615760405162461bcd60e51b81526004016103589061201c565b60405180910390fd5b604080518581526020808702820101909152849060609082801561039957816020015b60608152602001906001900390816103845790505b506000868152600360205260408120549192505b838110156104e557600087815260026020908152604080832085845290915290208989838181106103da57fe5b602002820190508035601e19368490030181126103f657600080fd5b909101602081019150356001600160401b0381111561041457600080fd5b3681900382131561042457600080fd5b604051610432929190611e70565b9081526040805160209281900383018120805460026001821615610100026000190190911604601f810185900485028301850190935282825290929091908301828280156104c15780601f10610496576101008083540402835291602001916104c1565b820191906000526020600020905b8154815290600101906020018083116104a457829003601f168201915b50505050508382815181106104d257fe5b60209081029190910101526001016103ad565b5090979650505050505050565b60015460405163b3f9e4cb60e01b815260609183916001600160a01b039091169063b3f9e4cb9061052790849060040161204c565b60206040518083038186803b15801561053f57600080fd5b505afa158015610553573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610577919081019061178e565b6001600160a01b0316306001600160a01b0316146105a75760405162461bcd60e51b81526004016103589061201c565b6000838152600260209081526040808320600383528184205484529091529081902090516105d6908690611e7d565b9081526040805160209281900383018120805460026001821615610100026000190190911604601f810185900485028301850190935282825290929091908301828280156106655780601f1061063a57610100808354040283529160200191610665565b820191906000526020600020905b81548152906001019060200180831161064857829003601f168201915b505050505091505092915050565b60008181526004602090815260409182902080548351601f60026000196101006001861615020190931692909204918201849004840281018401909452808452606093928301828280156107085780601f106106dd57610100808354040283529160200191610708565b820191906000526020600020905b8154815290600101906020018083116106eb57829003601f168201915b50505050509050919050565b60015460405163430c208160e01b815282916001600160a01b03169063430c2081906107469033908590600401611ec5565b60206040518083038186803b15801561075e57600080fd5b505afa158015610772573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506107969190810190611997565b6107b25760405162461bcd60e51b81526004016103589061202c565b6107bc4283610fec565b5050565b60015460405163430c208160e01b815282916001600160a01b03169063430c2081906107f29033908590600401611ec5565b60206040518083038186803b15801561080a57600080fd5b505afa15801561081e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506108429190810190611997565b61085e5760405162461bcd60e51b81526004016103589061202c565b6108e7600360008481526020019081526020016000205487878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061108e915050565b505050505050565b60015460405163b3f9e4cb60e01b8152606091829184916001600160a01b03169063b3f9e4cb9061092490849060040161204c565b60206040518083038186803b15801561093c57600080fd5b505afa158015610950573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610974919081019061178e565b6001600160a01b0316306001600160a01b0316146109a45760405162461bcd60e51b81526004016103589061201c565b6109ad85610673565b92506109b983856104f2565b9150509250929050565b60009081526020819052604090205490565b6001546001600160a01b03165b90565b6060600082519050606081604051908082528060200260200182016040528015610a2357816020015b6060815260200190600190039081610a0e5790505b50905060005b82811015610a6c57610a4d858281518110610a4057fe5b6020026020010151610673565b828281518110610a5957fe5b6020908102919091010152600101610a29565b509392505050565b610acf63ce92b33e60e01b858585604051602401610a9493929190611f24565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092178252519020838361129f565b600082815260036020526040902054610aea908585856113c3565b50505050565b610b1063ec129eea60e01b858585604051602401610a9493929190611f24565b610aea84848461140a565b60015460405163b3f9e4cb60e01b8152606091829184916001600160a01b03169063b3f9e4cb90610b5090849060040161204c565b60206040518083038186803b158015610b6857600080fd5b505afa158015610b7c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610ba0919081019061178e565b6001600160a01b0316306001600160a01b031614610bd05760405162461bcd60e51b81526004016103589061201c565b8451604080518281526020808402820101909152818015610c0557816020015b6060815260200190600190039081610bf05790505b50935080604051908082528060200260200182016040528015610c3c57816020015b6060815260200190600190039081610c275790505b50925060005b81811015610c9f57610c67878281518110610c5957fe5b6020026020010151876108ef565b8651879084908110610c7557fe5b60200260200101868481518110610c8857fe5b602090810291909101019190915252600101610c42565b5050509250929050565b610d3463310bd74b60e01b84604051602401610cc5919061204c565b60408051601f19818403018152918152602080830180516001600160e01b03166001600160e01b031990951694909417845291519092208251601f8601839004830281018301909352848352918691869086908190840183828082843760009201919091525061129f92505050565b610d3e4284610fec565b505050565b610d676347c8169960e01b8888888888604051602401610cc5959493929190611f96565b610df0600360008581526020019081526020016000205488888080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8c018190048102820181019092528a815292508a915089908190840183828082843760009201919091525089925061108e915050565b50505050505050565b60015460405163430c208160e01b815282916001600160a01b03169063430c208190610e2b9033908590600401611ec5565b60206040518083038186803b158015610e4357600080fd5b505afa158015610e57573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610e7b9190810190611997565b610acf5760405162461bcd60e51b81526004016103589061202c565b6005546040516355138f0d60e11b81526001600160a01b039091169063aa271e1a90610ec7903390600401611eb7565b60206040518083038186803b158015610edf57600080fd5b505afa158015610ef3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610f179190810190611997565b610f335760405162461bcd60e51b81526004016103589061203c565b600081815260036020526040902054610d3e908484846113c3565b60015460405163430c208160e01b815282916001600160a01b03169063430c208190610f809033908590600401611ec5565b60206040518083038186803b158015610f9857600080fd5b505afa158015610fac573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610fd09190810190611997565b610b105760405162461bcd60e51b81526004016103589061202c565b600081815260036020526040808220849055600154905163538361a760e01b81526001600160a01b039091169163538361a79161102d91859160040161205a565b600060405180830381600087803b15801561104757600080fd5b505af115801561105b573d6000803e3d6000fd5b50506040518392507f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9150600090a25050565b825160208085019190912060008381526002835260408082208883529093528281209251919290916110c1908790611e7d565b908152604051602091819003919091018120546001805463538361a760e01b84526002918316156101000260001901909216041592506001600160a01b03169063538361a7906111179086908690600401612075565b600060405180830381600087803b15801561113157600080fd5b505af1158015611145573d6000803e3d6000fd5b50505060008481526002602090815260408083208a8452909152908190209051869250611173908890611e7d565b90815260200160405180910390209080519060200190611194929190611521565b50600082815260046020526040902054600260001961010060018416150201909116046111dc57600082815260046020908152604090912086516111da92880190611521565b505b801561123157846040516111f09190611e7d565b6040518091039020837f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f86876040516112289190611fd6565b60405180910390a35b8360405161123f9190611e7d565b6040518091039020856040516112559190611e7d565b6040518091039020847f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d92888860405161128f929190611fe7565b60405180910390a4505050505050565b6000828152602081815260408083205490519092916112f59185916112e9916112ce918a913091899101611e39565b60405160208183030381529060405280519060200120611414565b9063ffffffff61144416565b90506001600160a01b0381161580159061138c575060015460405163430c208160e01b81526001600160a01b039091169063430c20819061133c9084908890600401611ee0565b60206040518083038186803b15801561135457600080fd5b505afa158015611368573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061138c9190810190611997565b6113a85760405162461bcd60e51b81526004016103589061200c565b50505060009081526020819052604090208054600101905550565b825160005b818110156108e757611402868683815181106113e057fe5b60200260200101518684815181106113f457fe5b60200260200101518661108e565b6001016113c8565b610f334282610fec565b6000816040516020016114279190611e89565b604051602081830303815290604052805190602001209050919050565b600081516041146114575750600061151b565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a082111561149d576000935050505061151b565b8060ff16601b141580156114b557508060ff16601c14155b156114c6576000935050505061151b565b600186828585604051600081526020016040526040516114e99493929190611f58565b6020604051602081039080840390855afa15801561150b573d6000803e3d6000fd5b5050506020604051035193505050505b92915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061156257805160ff191683800117855561158f565b8280016001018555821561158f579182015b8281111561158f578251825591602001919060010190611574565b5061159b92915061159f565b5090565b6109e291905b8082111561159b57600081556001016115a5565b805161151b816121a4565b60008083601f8401126115d657600080fd5b5081356001600160401b038111156115ed57600080fd5b60208301915083602082028301111561160557600080fd5b9250929050565b600082601f83011261161d57600080fd5b813561163061162b826120a9565b612083565b81815260209384019390925082018360005b8381101561166e57813586016116588882611734565b8452506020928301929190910190600101611642565b5050505092915050565b600082601f83011261168957600080fd5b813561169761162b826120a9565b915081818352602084019350602081019050838560208402820111156116bc57600080fd5b60005b8381101561166e57816116d28882611783565b84525060209283019291909101906001016116bf565b805161151b816121bb565b60008083601f84011261170557600080fd5b5081356001600160401b0381111561171c57600080fd5b60208301915083600182028301111561160557600080fd5b600082601f83011261174557600080fd5b813561175361162b826120c9565b9150808252602083016020830185838301111561176f57600080fd5b61177a83828461214b565b50505092915050565b803561151b816121c4565b6000602082840312156117a057600080fd5b60006117ac84846115b9565b949350505050565b6000806000604084860312156117c957600080fd5b83356001600160401b038111156117df57600080fd5b6117eb868287016115c4565b935093505060206117fe86828701611783565b9150509250925092565b60008060006060848603121561181d57600080fd5b83356001600160401b0381111561183357600080fd5b61183f8682870161160c565b93505060208401356001600160401b0381111561185b57600080fd5b6118678682870161160c565b92505060406117fe86828701611783565b6000806000806080858703121561188e57600080fd5b84356001600160401b038111156118a457600080fd5b6118b08782880161160c565b94505060208501356001600160401b038111156118cc57600080fd5b6118d88782880161160c565b93505060406118e987828801611783565b92505060608501356001600160401b0381111561190557600080fd5b61191187828801611734565b91505092959194509250565b60006020828403121561192f57600080fd5b81356001600160401b0381111561194557600080fd5b6117ac84828501611678565b6000806040838503121561196457600080fd5b82356001600160401b0381111561197a57600080fd5b61198685828601611678565b92505060206109b985828601611783565b6000602082840312156119a957600080fd5b60006117ac84846116e8565b6000806000806000606086880312156119cd57600080fd5b85356001600160401b038111156119e357600080fd5b6119ef888289016116f3565b955095505060208601356001600160401b03811115611a0d57600080fd5b611a19888289016116f3565b93509350506040611a2c88828901611783565b9150509295509295909350565b60008060008060008060006080888a031215611a5457600080fd5b87356001600160401b03811115611a6a57600080fd5b611a768a828b016116f3565b975097505060208801356001600160401b03811115611a9457600080fd5b611aa08a828b016116f3565b95509550506040611ab38a828b01611783565b93505060608801356001600160401b03811115611acf57600080fd5b611adb8a828b016116f3565b925092505092959891949750929550565b60008060408385031215611aff57600080fd5b82356001600160401b03811115611b1557600080fd5b61198685828601611734565b600060208284031215611b3357600080fd5b60006117ac8484611783565b600080600060408486031215611b5457600080fd5b6000611b608686611783565b93505060208401356001600160401b03811115611b7c57600080fd5b611b88868287016116f3565b92509250509250925092565b60008060408385031215611ba757600080fd5b60006119868585611783565b6000611bbf8383611ccb565b9392505050565b611bcf8161212a565b82525050565b611bcf81612108565b611bcf611bea82612108565b612183565b6000611bfa826120f6565b611c0481856120fa565b935083602082028501611c16856120f0565b8060005b85811015611c505784840389528151611c338582611bb3565b9450611c3e836120f0565b60209a909a0199925050600101611c1a565b5091979650505050505050565b611bcf816109e2565b611bcf611c72826109e2565b6109e2565b611bcf81612135565b6000611c8c83856120fa565b9350611c9983858461214b565b611ca283612194565b9093019392505050565b6000611cb88385612103565b9350611cc583858461214b565b50500190565b6000611cd6826120f6565b611ce081856120fa565b9350611cf0818560208601612157565b611ca281612194565b6000611d04826120f6565b611d0e8185612103565b9350611d1e818560208601612157565b9290920192915050565b6000611d35601c83612103565b7f19457468657265756d205369676e6564204d6573736167653a0a3332000000008152601c0192915050565b6000611d6e6011836120fa565b70494e56414c49445f5349474e415455524560781b815260200192915050565b6000611d9b601d836120fa565b7f5245534f4c5645525f44455441434845445f46524f4d5f444f4d41494e000000815260200192915050565b6000611dd4601f836120fa565b7f53454e4445525f49535f4e4f545f415050524f5645445f4f525f4f574e455200815260200192915050565b6000611e0d6014836120fa565b7329a2a72222a92fa4a9afa727aa2fa6a4a72a22a960611b815260200192915050565b611bcf81612124565b6000611e458286611c66565b602082019150611e558285611bde565b601482019150611e658284611c66565b506020019392505050565b60006117ac828486611cac565b6000611bbf8284611cf9565b6000611e9482611d28565b9150611ea08284611c66565b50602001919050565b6020810161151b8284611bd5565b6020810161151b8284611bc6565b60408101611ed38285611bc6565b611bbf6020830184611c5d565b60408101611ed38285611bd5565b60208082528101611bbf8184611bef565b60408082528101611f108185611bef565b905081810360208301526117ac8184611bef565b60608082528101611f358186611bef565b90508181036020830152611f498185611bef565b90506117ac6040830184611c5d565b60808101611f668287611c5d565b611f736020830186611e30565b611f806040830185611c5d565b611f8d6060830184611c5d565b95945050505050565b60608082528101611fa8818789611c80565b90508181036020830152611fbd818587611c80565b9050611fcc6040830184611c5d565b9695505050505050565b60208082528101611bbf8184611ccb565b60408082528101611ff88185611ccb565b905081810360208301526117ac8184611ccb565b6020808252810161151b81611d61565b6020808252810161151b81611d8e565b6020808252810161151b81611dc7565b6020808252810161151b81611e00565b6020810161151b8284611c5d565b604081016120688285611c5d565b611bbf6020830184611c77565b60408101611ed38285611c5d565b6040518181016001600160401b03811182821017156120a157600080fd5b604052919050565b60006001600160401b038211156120bf57600080fd5b5060209081020190565b60006001600160401b038211156120df57600080fd5b506020601f91909101601f19160190565b60200190565b5190565b90815260200190565b919050565b600061151b82612118565b151590565b6001600160a01b031690565b60ff1690565b600061151b82612140565b600061151b826109e2565b600061151b82612108565b82818337506000910152565b60005b8381101561217257818101518382015260200161215a565b83811115610aea5750506000910152565b600061151b82600061151b8261219e565b601f01601f191690565b60601b90565b6121ad81612108565b81146121b857600080fd5b50565b6121ad81612113565b6121ad816109e256fea365627a7a723158207a1d8dfd286d14fcafd1812a4c44813691ac746a5a23fa711ac5551c9509654d6c6578706572696d656e74616cf564736f6c634300050c0040","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x5":"0x4a3c194eb88966178bfdd81744dddafed611b830"}},"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa":{"nonce":93,"balance":"0x35aac60bbae01d424b","code":"0x","storage":{}}},"best_block_number":"0x5d"} \ No newline at end of file +{"block":{"number":"0x5d","coinbase":"0x0000000000000000000000000000000000000000","timestamp":"0x664dc88e","gas_limit":"0x6691b7","basefee":"0x1b818","difficulty":"0x0","prevrandao":"0x0000000000000000000000000000000000000000000000000000000000000000","blob_excess_gas_and_price":{"excess_blob_gas":0,"blob_gasprice":1}},"accounts":{"0x0000000000000000000000000000000000000000":{"nonce":0,"balance":"0xc968d22370860","code":"0x","storage":{}},"0x00e39a5004299871ab3b00fed5a39a715f181d02":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x66":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x67":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xd178b720229c39de617846f84cf9c8d32a63a23d","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0x0458f653495fb8d9bd0e7df468c2bf76d26c7bd9":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f7e83aee1461002d575b5f80fd5b61004061003b3660046105ba565b610054565b604051901515815260200160405180910390f35b5f601482146100a95760405162461bcd60e51b815260206004820152601860248201527f496e76616c696420736861312068617368206c656e6774680000000000000000604482015260640160405180910390fd5b5f6100ec5f85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101599050565b6bffffffffffffffffffffffff191690505f61013c87878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061018a92505050565b6bffffffffffffffffffffffff1916919091149695505050505050565b81515f90610168836014610621565b1115610172575f80fd5b5001602001516bffffffffffffffffffffffff191690565b5f6040518251602084019350604067ffffffffffffffc0600183011601600982820310600181036101bc576040820191505b50776745230100efcdab890098badcfe001032547600c3d2e1f061020d565b5f8383101561020657508082015192829003926020841015610206575f1960208590036101000a0119165b9392505050565b5f5b82811015610514576102228482896101db565b85526102328460208301896101db565b60208601526040818503106001810361024e5760808286038701535b506040830381146001810361026b57602086018051600887021790525b5060405b60808110156102f357858101603f19810151603719820151601f19830151600b198401516002911891909218189081027ffffffffefffffffefffffffefffffffefffffffefffffffefffffffefffffffe1663800000009091047c010000000100000001000000010000000100000001000000010000000116179052600c0161026f565b5060805b61014081101561037c57858101607f19810151606f19820151603f198301516017198401516004911891909218189081027ffffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffc1663400000009091047c0300000003000000030000000300000003000000030000000300000003161790526018016102f7565b50815f805f5b60508110156104ea576014810480156103b257600181146103d957600281146103fe576003811461042857610449565b600160281b8504600160501b86048118600160781b870416189350635a8279999250610449565b600160281b8504600160781b8604600160501b870418189350636ed9eba19250610449565b600160501b8504600160781b8604818117600160281b8804169116179350638f1bbcdc9250610449565b600160281b8504600160781b8604600160501b87041818935063ca62c1d692505b50601f600160bb1b8504168063ffffffe06001609b1b87041617905080840190508063ffffffff8616019050808301905080600160e01b600484028c015104019050600160a01b8102600160281b860417945050600160501b633fffffff600160521b86041663c00000006604000000000000870416170277ffffffff00ffffffff000000000000ffffffff00ffffffff8516179350600181019050610382565b5050509190910177ffffffff00ffffffff00ffffffff00ffffffff00ffffffff169060400161020f565b50600160601b63ffffffff821667ffffffff000000006101008404166bffffffff00000000000000006201000085041663ffffffff60601b630100000086041663ffffffff60801b6401000000008704161717171702945050505050919050565b5f8083601f840112610585575f80fd5b50813567ffffffffffffffff81111561059c575f80fd5b6020830191508360208285010111156105b3575f80fd5b9250929050565b5f805f80604085870312156105cd575f80fd5b843567ffffffffffffffff808211156105e4575f80fd5b6105f088838901610575565b90965094506020870135915080821115610608575f80fd5b5061061587828801610575565b95989497509550505050565b8082018082111561064057634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x06e2822b8856749ed179c77140dbc5f5a27410a4":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063de8f50a11461002d575b5f80fd5b61004061003b36600461051c565b610054565b604051901515815260200160405180910390f35b5f6060805f61009c60048b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506102e79050565b60ff1690508015610166576100f060058261ffff168c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b925061015f6101008260056105c3565b61ffff908116906005906101169085168d6105e5565b61012091906105e5565b8c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b915061021d565b6101a960058b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250929392505061038b9050565b90506101f460078261ffff168c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b925061021a6102048260076105c3565b61ffff908116906007906101169085168d6105e5565b91505b5f606061026084868a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152506103b192505050565b90925090508180156102d757506102856020825161027e91906105e5565b82906103cb565b60028b8b6040516102979291906105f8565b602060405180830381855afa1580156102b2573d5f803e3d5ffd5b5050506040513d601f19601f820116820180604052508101906102d59190610607565b145b9c9b505050505050505050505050565b5f8282815181106102fa576102fa61061e565b016020015160f81c90505b92915050565b825160609061031a8385610632565b1115610324575f80fd5b5f8267ffffffffffffffff81111561033e5761033e610645565b6040519080825280601f01601f191660200182016040528015610368576020820181803683370190505b509050602080820190868601016103808282876103ed565b509095945050505050565b81515f9061039a836002610632565b11156103a4575f80fd5b50016002015161ffff1690565b5f60606103bf838587610442565b91509150935093915050565b81515f906103da836020610632565b11156103e4575f80fd5b50016020015190565b602081106104255781518352610404602084610632565b9250610411602083610632565b915061041e6020826105e5565b90506103ed565b905182516020929092036101000a5f190180199091169116179052565b5f60605f85518551855188888860405160200161046496959493929190610686565b6040516020818303038152906040529050835167ffffffffffffffff81111561048f5761048f610645565b6040519080825280601f01601f1916602001820160405280156104b9576020820181803683370190505b50915083516020830182516020840160055afa925050935093915050565b5f8083601f8401126104e7575f80fd5b50813567ffffffffffffffff8111156104fe575f80fd5b602083019150836020828501011115610515575f80fd5b9250929050565b5f805f805f8060608789031215610531575f80fd5b863567ffffffffffffffff80821115610548575f80fd5b6105548a838b016104d7565b9098509650602089013591508082111561056c575f80fd5b6105788a838b016104d7565b90965094506040890135915080821115610590575f80fd5b5061059d89828a016104d7565b979a9699509497509295939492505050565b634e487b7160e01b5f52601160045260245ffd5b61ffff8181168382160190808211156105de576105de6105af565b5092915050565b81810381811115610305576103056105af565b818382375f9101908152919050565b5f60208284031215610617575f80fd5b5051919050565b634e487b7160e01b5f52603260045260245ffd5b80820180821115610305576103056105af565b634e487b7160e01b5f52604160045260245ffd5b5f81515f5b81811015610678576020818501810151868301520161065e565b505f93019283525090919050565b8681528560208201528460408201525f6106b56106af6106a96060850188610659565b86610659565b84610659565b9897505050505050505056fea164736f6c6343000818000a","storage":{}},"0x0712e8e819712c3bfdb098ce51c87a4ac0296fd8":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x0930ffb2c192b0c9a9dd2372cf7f2845ef39cbb6":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x65":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x66":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xbe92182cab5b84fd18b34881a0c32771e84f5b8b","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c8121905":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x107733fed96c4cd390c944a31f5425a7fb98ae5e":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x65":"0x556e73746f707061626c6520446f6d61696e7300000000000000000000000026","0x66":"0x5544000000000000000000000000000000000000000000000000000000000004","0x133":"0x68747470733a2f2f6578616d706c652e636f6d2f000000000000000000000028","0x134":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x9c74364589a7bce52d7a232f90c98b979577d9ab711dbe7e9fb985471178bff":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf29a433ca043c2d5f13825944af9d019209f338df87172c6b8012dce3044881":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf319a2ef598111826b455194189a27454a0286226eb066e1116f605e0373b37":"0x0","0x1257bbdf5bed452b3eda1d974a9839972d4d54d7fb1cde6a652e653346cc29b8":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x12c033f2252861b1bd15e9b5c71ef1cf26ca53de15eabc3b49e06f596e8755ec":"0x0","0x1348552952ac59b1c2522e84f684e36775420b449eddcdbd28f217183ed58b09":"0x0","0x149026695ebdd2bd6be0a7006aec5d10ddffbe46be181e4468980ea83c004fe9":"0x0","0x14c854a78d51371251661a408306c75d2515b5d509b295a58205e48267082bdc":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x18f06622a1abedc7bb78fcc98b2375188aef6c03b9247beee780b0b095d60285":"0x0","0x201ef5e312d372e2aeac4cf173b46ad2985127c7381f4f9acae5ebbd3a5e3861":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x2215c0abaeffcb5feae8a439b3185f8fba5dd6d97529a56c7609cd41fafdf5f1":"0x1","0x23513200931f98893f46373666c13964c7a821c5b40da7951b921629acf02735":"0x0","0x23f87654b79c6db28828f317e47d0c8deb9eaa2ea4e213fef901836c85036bf3":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x2e4566d865f2e159531492d7643e25e502917762b29082282ab9dfee8fbf54c7":"0x0","0x31fc31c15d389c5908095d314bb8b258352d51e18ac8a2f7fe15f3a0af519145":"0x0","0x3467fdbb447be3074b11c625b56e54d7ab44f3804bef205b07dd436d707d06d5":"0x0","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x62b11ad5f582a5c5d378fb310125b030042554f1","0x3cd80e7291e5f6dffa9af6eb70d47145a8fdd40acb8d09dfd0cf374e8c239b37":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x3f86c4990e663ffa5011ed38824fca68af7e0592eb22f41aebdec0ce84ee672e":"0x0","0x406aa3bf31381c8a323679af48792dfa2e7aa09dd0eb919e307dc4bf84216ff6":"0x0","0x47ce17acd30cc86e021ac7b23be8138ea767f6da503362aac5888a0679270eed":"0x0","0x4a7983c36f64e6df4d467cf706c128c273d30c24bbb172e251a5740624cc0bd3":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x4c42d98041cda7cb7d56b5d04731bd436366eb9f05c30f43671f1d1e2c0b0fa4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x55926eed7087c8cbfa1492f6d367f5e4c14c8d8cd59e2918c37184091369efb1":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x5b20f40cb5e9e634a90df9a72b516c11cc52281a4d1b7b67e672e2fe544ff22f":"0x0","0x6dac3e1cfae338e10c9c2f5000f6256d09afa83708761042001cea734f470ac1":"0x0","0x6defc32a546a6fb1b745bd1bb04e27085e94f01d7ef79587aee2c80853c43a53":"0x0","0x760b245be050a725a39b4fc089ad474a5fd40efa17101e112d30195d590779b4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x7bee59fcac76da32acb23def57eaaf959a4372a4fc180978fbd54f7a4c4b2f3d":"0x0","0x804aee9448e0b539a009ee7c6dd57e686c72e7b182e9622a42922b245a97e61e":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x825f7f8567cfd669c3beab41edff07d4aa51436123deeb0d3623b6a8fdec893c":"0x0","0x8717a3236e6a948df94444f035834fa8f7c5ee663a29f3580f3ef43ab051d6bd":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8a34e37883baf84417a33bb02eec8d1e43e363f617029800ff166614df3f112f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8bd1acdc45b63f1edf5db0b1444f1c4a6f82bf0a5a0a7231c2dd7b76a2b1e35c":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87":"0x0","0x8ed4e9fbdf86edd9f3eb1c8d4fbfc53a2eb863faf4cf5e0d2b307c0b33030091":"0x0","0x8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x90d72780b77edcd0c8daffbac0b21264679e851b734cb090e2b144eb3a28bb98":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x93fc964857984ff804a65eaceac4062669948f2b651ddc6b71373ad142bf45e0":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x9770fa903e700367e0306ab8fd70a2bb4f049417d341a2f8a2409d8d6a2218d1":"0x0","0xb1016fe231c2ed9dba8c95d2658191823b4b9ffa61a7aea530802c6b2ff27c41":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xbe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafe":"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f","0xbe7c5c707db1c91bd2c84880bb1e177b65886d295d9a62df8edfe38f8066cc81":"0x0","0xc3cd64a46de7309013ddb93a16a3024c2e46fb931e4744edf2610fb119f716f5":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xc563f9d3175978a619bae1a8175d3ea4be91d3890345085c5eb16f83b678a3d9":"0x0","0xc5b5cdb7b939f9d661f58f28c37e10cf71d45dacfea2581c88ae4a17aaf55e6e":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xd386775169d9e0716e9b5b08561984726edaa9febd0ca8e5468ecffa112078c7":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xe3b736cdcc6a09d7e3a05ffb63b11f11c91958d861443c3409d3fd863e8217bd":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xe3e5b75e3dff543bfbfe5b494e4e3243b4d9d0b3d794725cea46c28fe6be50e4":"0x0","0xe7d61626cac95282d296ee7ab5958e3e72e32eb959a7cab1d37c0f9d6d69c18a":"0x1a","0xeca5e1ccaa645ce2be97a867a1f8aeeb63ea833aeb009c0df0553b42b30c683f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf08305746cdba1d0eaa65036694838a3db122973267ffc57739d605c320c680a":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf0d566acc03395f71b37890f455d51d93197adf754ea72aba21427dc66b437df":"0x0","0xf230898ba4fe40c52f958d03013d995f822e25a5d4fae43bbdc6e92623cea0bd":"0x0","0xf245a9962043f44f4af98f9952a3bd29d91eb05418e4bb567b9de8f27e239b13":"0x0","0xf2a19ade13962e8675aecf2fbe51913877912f9e48e899806b6e06e82f9a980f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf2fab50b0b53245ddfa1bcfcdf4c73e209d6921dad704d173cf04cbbadc8e346":"0x0","0xfa6f3ee10d719cb3457d10c539ff3d77b8e56852ea62f68b2f9f85ad691ed6b4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xfff3abb219acc6ef4eed6e93a5682023229370196f352cdf3a71a88d881e3487":"0x0"}},"0x11dd97b7ca847dfb6504e61b7b9eb30f55e554a0":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a424740014610090575b600080fd5b610059610054366004610ba9565b6100b3565b6040516100669190610c98565b60405180910390f35b61008261007d366004610cab565b6101ce565b604051908152602001610066565b6100a361009e366004610ba9565b610332565b6040519015158152602001610066565b606060005a6001546040805163b3f9e4cb60e01b81529088013560048201529192506000916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561010a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061012e9190610cd9565b90506101c26101406020880188610cf6565b8260408901358561015460608c018c610d13565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8f018190048102820181019092528d815292508d91508c90819084018382808284376000920191909152506103fb92505050565b925050505b9392505050565b60025460015460405163b3f9e4cb60e01b8152600481018490526000926001600160a01b0390811692169063b3f9e4cb90602401602060405180830381865afa92505050801561023b575060408051601f3d908101601f1916820190925261023891810190610cd9565b60015b156102435790505b6001600160a01b0381163b156102c557604051636ccbae5f60e01b81526004810184905281906001600160a01b03821690636ccbae5f90602401602060405180830381865afa9250505080156102b6575060408051601f3d908101601f191682019092526102b391810190610d5a565b60015b156102c357949350505050565b505b600254604051636ccbae5f60e01b8152600481018590526001600160a01b0390911690636ccbae5f90602401602060405180830381865afa15801561030e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101c79190610d5a565b6001546040805163b3f9e4cb60e01b815290850135600482015260009182916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa158015610383573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103a79190610cd9565b90506103f26103b586610e0b565b8286868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506104d392505050565b95945050505050565b6060600080876001600160a01b0316866104178b8a898961051f565b6040516104249190610eb5565b60006040518083038160008787f1925050503d8060008114610462576040519150601f19603f3d011682016040523d82523d6000602084013e610467565b606091505b509092509050610478603f87610ed1565b5a1161048657610486610ef3565b6104c682826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506105d4565b9998505050505050505050565b60006104e084848461060d565b8015610514575060608401516020908101516001600160e01b031990811660009081529182905260409091205460e01b1615155b949350505050565b50565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036105b15760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526105c982828661074c565b979650505050505050565b606083156105e35750816101c7565b8251156105f35782518084602001fd5b8160405162461bcd60e51b81526004016105a89190610c98565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015610654573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106789190610d5a565b905060006107268660600151805190602001208688602001516040516020016106c69392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156101c2575085516101c2906001600160a01b03168286610935565b60606001600160e01b0319841663b87abc1160e01b036107cd5760008380602001905181019061077c9190610d5a565b9050848184604051602401610792929190610f09565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915291506101c79050565b6001600160e01b0319841663c597407360e01b03610859576000806000858060200190518101906107fe9190610f67565b925092509250868383838860405160240161081c9493929190610fd4565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293506101c792505050565b6001600160e01b031984166311ed383160e31b036108a85760008060008580602001905181019061088a91906110a6565b925092509250868383838860405160240161081c9493929190611157565b6001600160e01b031984166328d55f9b60e21b036101c7576000806000858060200190518101906108d991906110a6565b92509250925086838383886040516024016108f79493929190611157565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293505050509392505050565b60008060006109448585610a77565b9092509050600081600481111561095d5761095d61117c565b14801561097b5750856001600160a01b0316826001600160a01b0316145b1561098b576001925050506101c7565b600080876001600160a01b0316631626ba7e60e01b88886040516024016109b3929190610f09565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516109f19190610eb5565b600060405180830381855afa9150503d8060008114610a2c576040519150601f19603f3d011682016040523d82523d6000602084013e610a31565b606091505b5091509150818015610a44575080516020145b8015610a6b57508051630b135d3f60e11b90610a699083016020908101908401610d5a565b145b98975050505050505050565b6000808251604103610aad5760208301516040840151606085015160001a610aa187828585610abc565b94509450505050610ab5565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610af35750600090506003610ba0565b8460ff16601b14158015610b0b57508460ff16601c14155b15610b1c5750600090506004610ba0565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610b70573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610b9957600060019250925050610ba0565b9150600090505b94509492505050565b600080600060408486031215610bbe57600080fd5b833567ffffffffffffffff80821115610bd657600080fd5b9085019060808288031215610bea57600080fd5b90935060208501359080821115610c0057600080fd5b818601915086601f830112610c1457600080fd5b813581811115610c2357600080fd5b876020828501011115610c3557600080fd5b6020830194508093505050509250925092565b60005b83811015610c63578181015183820152602001610c4b565b50506000910152565b60008151808452610c84816020860160208601610c48565b601f01601f19169290920160200192915050565b6020815260006101c76020830184610c6c565b600060208284031215610cbd57600080fd5b5035919050565b6001600160a01b038116811461051c57600080fd5b600060208284031215610ceb57600080fd5b81516101c781610cc4565b600060208284031215610d0857600080fd5b81356101c781610cc4565b6000808335601e19843603018112610d2a57600080fd5b83018035915067ffffffffffffffff821115610d4557600080fd5b602001915036819003821315610ab557600080fd5b600060208284031215610d6c57600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610dac57610dac610d73565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ddb57610ddb610d73565b604052919050565b600067ffffffffffffffff821115610dfd57610dfd610d73565b50601f01601f191660200190565b600060808236031215610e1d57600080fd5b610e25610d89565b8235610e3081610cc4565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610e6057600080fd5b840136601f820112610e7157600080fd5b8035610e84610e7f82610de3565b610db2565b8181523684838501011115610e9857600080fd5b818484018583013760009181019093015250606082015292915050565b60008251610ec7818460208701610c48565b9190910192915050565b600082610eee57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b8281526040602082015260006105146040830184610c6c565b600082601f830112610f3357600080fd5b8151610f41610e7f82610de3565b818152846020838601011115610f5657600080fd5b610514826020830160208701610c48565b600080600060608486031215610f7c57600080fd5b835167ffffffffffffffff80821115610f9457600080fd5b610fa087838801610f22565b94506020860151915080821115610fb657600080fd5b50610fc386828701610f22565b925050604084015190509250925092565b608081526000610fe76080830187610c6c565b8281036020840152610ff98187610c6c565b905084604084015282810360608401526105c98185610c6c565b600082601f83011261102457600080fd5b8151602067ffffffffffffffff8083111561104157611041610d73565b8260051b611050838201610db2565b938452858101830193838101908886111561106a57600080fd5b84880192505b85831015610a6b578251848111156110885760008081fd5b6110968a87838c0101610f22565b8352509184019190840190611070565b6000806000606084860312156110bb57600080fd5b835167ffffffffffffffff808211156110d357600080fd5b6110df87838801611013565b945060208601519150808211156110f557600080fd5b50610fc386828701611013565b600081518084526020808501808196508360051b8101915082860160005b8581101561114a578284038952611138848351610c6c565b98850198935090840190600101611120565b5091979650505050505050565b60808152600061116a6080830187611102565b8281036020840152610ff98187611102565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x2":"0xf8c26340c1eaea6c7ff1760b25005e1306953572","0x1e74f978992d7d64ddac400bd4aae9eefd60fa0b8456650273f5f50148803323":"0xa3557e6c","0x23c84c23be8f829809d1b1502c647c6c59fb6b2345b163a2ca3e7d4f9855975c":"0x8f69c188","0xa0286316c9d3cb00f4f54a9f1096cefaa1748bb5a5395e7fa1563568ebb3e6c3":"0xb87abc11","0xdc138de224807be243ee38fe9e746cce5d437a256b87be90b80240e0811ad043":"0xc5974073"}},"0x145908bbcfc7b258e4d4d9a586f6e3249ae80216":{"nonce":1,"balance":"0x0","code":"0x3d5c","storage":{}},"0x17cda4e23f7237277952e075b1c48467aabfacc0":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c806368f9dab21461002d575b5f80fd5b61004061003b36600461088b565b610052565b60405190815260200160405180910390f35b5f61006f6040518060400160405280606081526020015f81525090565b61008e61007c858861090d565b61008790601061090d565b82906101d1565b506100d085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250859392505061023a9050565b5061011287878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250859392505061023a9050565b505f610120825f0151610266565b905083156101bc5760408051808201909152606081525f602090910181905282515261014c825f610650565b5061018e88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250869392505061023a9050565b505f5b848110156101ba576101a4835f8461067f565b5082516101b090610266565b9150600101610191565b505b6001600160601b031916979650505050505050565b60408051808201909152606081525f60208201526101f0602083610920565b1561021857610200602083610920565b61020b90602061093f565b610215908361090d565b91505b506020808301829052604080518085525f815283019091019052815b92915050565b60408051808201909152606081525f602082015261025f83845f0151518485516106b2565b9392505050565b5f6040518251602084019350604067ffffffffffffffc060018301160160098282031060018103610298576040820191505b50776745230100efcdab890098badcfe001032547600c3d2e1f06102e8565b5f8383101561025f5750808201519282900392602084101561025f575f1960208590036101000a0119169392505050565b5f5b828110156105ef576102fd8482896102b7565b855261030d8460208301896102b7565b6020860152604081850310600181036103295760808286038701535b506040830381146001810361034657602086018051600887021790525b5060405b60808110156103ce57858101603f19810151603719820151601f19830151600b198401516002911891909218189081027ffffffffefffffffefffffffefffffffefffffffefffffffefffffffefffffffe1663800000009091047c010000000100000001000000010000000100000001000000010000000116179052600c0161034a565b5060805b61014081101561045757858101607f19810151606f19820151603f198301516017198401516004911891909218189081027ffffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffc1663400000009091047c0300000003000000030000000300000003000000030000000300000003161790526018016103d2565b50815f805f5b60508110156105c55760148104801561048d57600181146104b457600281146104d9576003811461050357610524565b600160281b8504600160501b86048118600160781b870416189350635a8279999250610524565b600160281b8504600160781b8604600160501b870418189350636ed9eba19250610524565b600160501b8504600160781b8604818117600160281b8804169116179350638f1bbcdc9250610524565b600160281b8504600160781b8604600160501b87041818935063ca62c1d692505b50601f600160bb1b8504168063ffffffe06001609b1b87041617905080840190508063ffffffff8616019050808301905080600160e01b600484028c015104019050600160a01b8102600160281b860417945050600160501b633fffffff600160521b86041663c00000006604000000000000870416170277ffffffff00ffffffff000000000000ffffffff00ffffffff851617935060018101905061045d565b5050509190910177ffffffff00ffffffff00ffffffff00ffffffff00ffffffff16906040016102ea565b50600160601b63ffffffff821667ffffffff000000006101008404166bffffffff00000000000000006201000085041663ffffffff60601b630100000086041663ffffffff60801b6401000000008704161717171702945050505050919050565b60408051808201909152606081525f602082015282515161025f9084906001600160601b031985166014610798565b60408051808201909152606081525f60208201526106aa84846001600160601b031985166014610798565b949350505050565b60408051808201909152606081525f602082015282518211156106d3575f80fd5b60208501516106e2838661090d565b1115610715576107158561070587602001518786610700919061090d565b610813565b610710906002610952565b610829565b5f808651805187602083010193508088870111156107335787860182525b505050602084015b60208410610773578051825261075260208361090d565b915061075f60208261090d565b905061076c60208561093f565b935061073b565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b60408051808201909152606081525f602082015260208501516107bb858461090d565b11156107cf576107cf85610705868561090d565b5f6001836101000a0390508260200360080284901c93508551838682010185831982511617815250805184870111156108085783860181525b509495945050505050565b5f81831115610823575081610234565b50919050565b815161083583836101d1565b50610840838261023a565b50505050565b5f8083601f840112610856575f80fd5b50813567ffffffffffffffff81111561086d575f80fd5b602083019150836020828501011115610884575f80fd5b9250929050565b5f805f805f6060868803121561089f575f80fd5b853567ffffffffffffffff808211156108b6575f80fd5b6108c289838a01610846565b909750955060208801359150808211156108da575f80fd5b506108e788828901610846565b96999598509660400135949350505050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610234576102346108f9565b5f8261093a57634e487b7160e01b5f52601260045260245ffd5b500690565b81810381811115610234576102346108f9565b8082028115828204841417610234576102346108f956fea164736f6c6343000818000a","storage":{}},"0x19356cc2300833e690088a5a09a2044a3cc2a1e2":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x229c56b7805ab5935a883207f6a6bd5847e65aee":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106102ae5760003560e01c8063906cecc111610175578063b9998a24116100dc578063d547741f11610095578063f2fde38b1161006f578063f2fde38b14610892578063f5243bc4146108b2578063f940e385146108d2578063ffa1ad74146108f257600080fd5b8063d547741f1461083f578063d7db74c71461085f578063ec5273891461087257600080fd5b8063b9998a241461077d578063cc2a9a5b1461079d578063cc2c3fc4146107bd578063ceeb4f50146107dd578063d1f5692c146107fd578063d53913931461081d57600080fd5b8063a3a3f7f61161012e578063a3a3f7f614610690578063a3f4df7e146106b0578063a849d65c146106fd578063aa271e1a1461071d578063b0aa98c71461073d578063b3ab15fb1461075d57600080fd5b8063906cecc1146105e657806391d1485414610606578063983b2d5614610626578063986502751461064657806399e0dd7c1461065b578063a217fddf1461067b57600080fd5b80635b6fa8db11610219578063715018a6116101d2578063715018a61461054b57806371e2a6571461056057806377a2a5891461058057806381c81d35146105a05780638456cb59146105b35780638da5cb5b146105c857600080fd5b80635b6fa8db146104a35780635c975abb146104c35780635cd7e3b3146104d85780635e22cd86146104f85780635fc1964f14610518578063634486da1461053857600080fd5b80633092afd51161026b5780633092afd5146103a857806336568abe146103c85780633f41b614146103e85780633f4ba83a1461042057806351cff8d914610435578063572b6c051461045557600080fd5b806301ffc9a7146102b35780631edb948e146102e857806320c5429b1461030a578063248a9ca31461032a578063268b15ed146103685780632f2ff15d14610388575b600080fd5b3480156102bf57600080fd5b506102d36102ce366004613dc4565b610923565b60405190151581526020015b60405180910390f35b3480156102f457600080fd5b50610308610303366004613e13565b61095a565b005b34801561031657600080fd5b50610308610325366004613e3f565b610b03565b34801561033657600080fd5b5061035a610345366004613e3f565b60009081526097602052604090206001015490565b6040519081526020016102df565b34801561037457600080fd5b50610308610383366004613e99565b610c26565b34801561039457600080fd5b506103086103a3366004613f04565b610cb9565b3480156103b457600080fd5b506103086103c3366004613f34565b610ce3565b3480156103d457600080fd5b506103086103e3366004613f04565b610cf7565b3480156103f457600080fd5b5060c954610408906001600160a01b031681565b6040516001600160a01b0390911681526020016102df565b34801561042c57600080fd5b50610308610d85565b34801561044157600080fd5b50610308610450366004613f34565b610d97565b34801561046157600080fd5b506102d3610470366004613f34565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546001600160a01b0390811691161490565b3480156104af57600080fd5b5060cc54610408906001600160a01b031681565b3480156104cf57600080fd5b506102d3610e37565b3480156104e457600080fd5b506103086104f3366004613fa3565b610e4d565b34801561050457600080fd5b50610308610513366004614062565b6110b1565b34801561052457600080fd5b5061030861053336600461419c565b6112f6565b610308610546366004613f34565b61133e565b34801561055757600080fd5b50610308611401565b34801561056c57600080fd5b5061030861057b36600461419c565b611413565b34801561058c57600080fd5b5060ce54610408906001600160a01b031681565b6103086105ae366004613f34565b61145b565b3480156105bf57600080fd5b506103086114d8565b3480156105d457600080fd5b506033546001600160a01b0316610408565b3480156105f257600080fd5b5061030861060136600461423a565b6114e8565b34801561061257600080fd5b506102d3610621366004613f04565b61156e565b34801561063257600080fd5b50610308610641366004613f34565b611599565b34801561065257600080fd5b506103086115aa565b34801561066757600080fd5b50610308610676366004614295565b6115c4565b34801561068757600080fd5b5061035a600081565b34801561069c57600080fd5b506103086106ab3660046142d6565b6116ab565b3480156106bc57600080fd5b506106f0604051806040016040528060148152602001732aa7299d1026b4b73a34b7339026b0b730b3b2b960611b81525081565b6040516102df919061437c565b34801561070957600080fd5b5060cb54610408906001600160a01b031681565b34801561072957600080fd5b506102d3610738366004613f34565b6116f4565b34801561074957600080fd5b506102d3610758366004613e3f565b61170e565b34801561076957600080fd5b50610308610778366004613f34565b61176c565b34801561078957600080fd5b50610308610798366004613f34565b611796565b3480156107a957600080fd5b506103086107b836600461438f565b6117db565b3480156107c957600080fd5b5060ca54610408906001600160a01b031681565b3480156107e957600080fd5b506103086107f8366004614411565b611cd2565b34801561080957600080fd5b506103086108183660046144c6565b611d76565b34801561082957600080fd5b5061035a600080516020614ef483398151915281565b34801561084b57600080fd5b5061030861085a366004613f04565b611e2d565b61030861086d3660046144fb565b611e52565b34801561087e57600080fd5b5061030861088d366004613e3f565b611fe2565b34801561089e57600080fd5b506103086108ad366004613f34565b612054565b3480156108be57600080fd5b506103086108cd3660046145f0565b612070565b3480156108de57600080fd5b506103086108ed366004614708565b612222565b3480156108fe57600080fd5b506106f060405180604001604052806005815260200164302e352e3160d81b81525081565b60006001600160e01b03198216637965db0b60e01b148061095457506301ffc9a760e01b6001600160e01b03198316145b92915050565b61096561073861239e565b61098a5760405162461bcd60e51b815260040161098190614736565b60405180910390fd5b60c95460405163baef73e960e01b8152600481018390526000916001600160a01b03169063baef73e990602401602060405180830381865afa1580156109d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109f8919061476b565b9050806001600160401b0316600003610a235760405162461bcd60e51b815260040161098190614788565b806001600160401b0316836001600160401b031611610a905760405162461bcd60e51b815260206004820152602360248201527f4d696e74696e674d616e616765723a204558504952595f4e4f545f455854454e60448201526211115160ea1b6064820152608401610981565b60c954604051631fb9763760e11b81526001600160401b0385166004820152602481018490526001600160a01b0390911690633f72ec6e906044015b600060405180830381600087803b158015610ae657600080fd5b505af1158015610afa573d6000803e3d6000fd5b50505050505050565b610b0e61073861239e565b610b2a5760405162461bcd60e51b815260040161098190614736565b60c95460405163baef73e960e01b8152600481018390526001600160a01b039091169063baef73e990602401602060405180830381865afa158015610b73573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b97919061476b565b6001600160401b0316600003610bbf5760405162461bcd60e51b815260040161098190614788565b60c954604051637eee288d60e01b8152306004820152602481018390526001600160a01b0390911690637eee288d90604401600060405180830381600087803b158015610c0b57600080fd5b505af1158015610c1f573d6000803e3d6000fd5b5050505050565b8282828080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250610c6993508592508491506123ad565b610c71610e37565b15610c8e5760405162461bcd60e51b8152600401610981906147cb565b6060610afa610c9b61239e565b610cae88610ca98989612584565b6125b0565b8384600060016126c1565b600082815260976020526040902060010154610cd481612c15565b610cde8383612c26565b505050565b610ceb612cad565b610cf481612d26565b50565b610cff61239e565b6001600160a01b0316816001600160a01b031614610d775760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610981565b610d818282612d3e565b5050565b610d8d612cad565b610d95612dc3565b565b610d9f612cad565b6001600160a01b038116610db257600080fd5b60405147906001600160a01b0383169082156108fc029083906000818181858888f19350505050158015610dea573d6000803e3d6000fd5b50604080516001600160a01b03841681526020810183905260008183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a15050565b600080516020614ed48339815191525460ff1690565b610e5786886147f5565b8051600203610e8c57610e6b61073861239e565b610e875760405162461bcd60e51b8152600401610981906148bf565b610fd1565b6000610e9782612e6b565b60c9549092506001600160a01b0316905063430c2081610eb561239e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015610f00573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f249190614903565b80610fb3575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa158015610f7d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fa19190614903565b8015610fb35750610fb361073861239e565b610fcf5760405162461bcd60e51b815260040161098190614920565b505b610fdb87896147f5565b6000600282511015610fff5760405162461bcd60e51b81526004016109819061496f565b6110546110336000846001865161101691906149ca565b81518110611026576110266149dd565b6020026020010151612ea6565b83600081518110611046576110466149dd565b6020026020010151836123ad565b61105c610e37565b156110795760405162461bcd60e51b8152600401610981906147cb565b6110a38b6110878b8d6147f5565b6110918a8c6147f5565b61109b898b6147f5565b6000896126c1565b505050505050505050505050565b6110bb87896147f5565b80516002036110f0576110cf61073861239e565b6110eb5760405162461bcd60e51b8152600401610981906148bf565b611235565b60006110fb82612e6b565b60c9549092506001600160a01b0316905063430c208161111961239e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015611164573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111889190614903565b80611217575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa1580156111e1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112059190614903565b8015611217575061121761073861239e565b6112335760405162461bcd60e51b815260040161098190614920565b505b61123f888a6147f5565b836002825110156112625760405162461bcd60e51b81526004016109819061496f565b6112796110336000846001865161101691906149ca565b611281610e37565b1561129e5760405162461bcd60e51b8152600401610981906147cb565b60028a146112be5760405162461bcd60e51b8152600401610981906149f3565b6112e78c6112cc8c8e6147f5565b6112d68b8d6147f5565b6112e08a8c6147f5565b89896126c1565b50505050505050505050505050565b6112fe612cad565b60005b8151811015610d815761132c82828151811061131f5761131f6149dd565b6020026020010151612d26565b8061133681614a39565b915050611301565b61134961073861239e565b6113655760405162461bcd60e51b815260040161098190614736565b6001600160a01b0381166113bb5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610981565b6113c481612f5a565b6113cc6115aa565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610d81573d6000803e3d6000fd5b611409612cad565b610d956000612f72565b61141b612cad565b60005b8151811015610d815761144982828151811061143c5761143c6149dd565b6020026020010151612f5a565b8061145381614a39565b91505061141e565b61146661073861239e565b6114825760405162461bcd60e51b815260040161098190614736565b6001600160a01b0381166113c45760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610981565b6114e0612cad565b610d95612fc4565b8282828080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525061152b93508592508491506123ad565b611533610e37565b156115505760405162461bcd60e51b8152600401610981906147cb565b606061156487610cae88610ca98989612584565b5050505050505050565b60009182526097602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6115a1612cad565b610cf481612f5a565b610d95600080516020614ef48339815191526103e361239e565b6115cc612cad565b60c954604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906115fe9085908590600401614a52565b600060405180830381600087803b15801561161857600080fd5b505af115801561162c573d6000803e3d6000fd5b505060cb546001600160a01b0316159150610d8190505760cb54604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906116759085908590600401614a52565b600060405180830381600087803b15801561168f57600080fd5b505af11580156116a3573d6000803e3d6000fd5b505050505050565b6116b3612cad565b610cde83838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525085925061302c915050565b6000610954600080516020614ef48339815191528361156e565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd696020820152908101829052600090611762906060015b6040516020818303038152906040528051906020012090565b5460ff1692915050565b611774612cad565b60ce80546001600160a01b0319166001600160a01b0392909216919091179055565b61179e612cad565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e80546001600160a01b0319166001600160a01b03831617905550565b600054610100900460ff16158080156117fb5750600054600160ff909116105b806118155750303b158015611815575060005460ff166001145b6118785760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610981565b6000805460ff19166001179055801561189b576000805461ff0019166101001790555b60c980546001600160a01b03199081166001600160a01b038a81169190911790925560ca8054821689841617905560cb8054821688841617905560cc8054821687841617905560ce80549091169185169190911790556118f961314c565b611901613183565b61190a826131bc565b6119126131e3565b6040805161036081018252600661032082018181526563727970746f60d01b610340840152825282518084018452818152651dd85b1b195d60d21b602082810191909152808401919091528351808501855260018152600f60fb1b8183015283850152835180850185526003808252621b999d60ea1b82840152606085019190915284518086018652600a815269313637b1b5b1b430b4b760b11b818401526080850152845180860186526007808252663134ba31b7b4b760c91b8285015260a0860191909152855180870187528281526207070760eb1b8185015260c0860152855180870187528281526264616f60e81b8185015260e086015285518087018752828152621e9a5b60ea1b8185015261010086015285518087018752908152663837b63cb3b7b760c91b8184015261012085015284518086018652600b81526a756e73746f707061626c6560a81b81840152610140850152845180860186528381526535b632bb32b960d11b8184015261016085015284518086018652600280825261686960f01b8285015261018086019190915285518087018752848152656b726573757360d01b818501526101a086015285518087018752600580825264616e696d6560d81b828601526101c087019190915286518088018852818152646d616e676160d81b818601526101e087015286518088018852600981526862696e616e6365757360b81b8186015261020087015286518088018852818152647265616c6d60d81b818601526102208701528651808801885291825261676f60f01b82850152610240860191909152855180870187526008815267185b1d1a5b5a5cdd60c21b818501526102608601528551808701875290815264707564677960d81b81840152610280850152845180860186528381526530bab9ba34b760d11b818401526102a08501528451808601865292835265189a5d19d95d60d21b838301526102c08401929092528351808501855291825262706f6760e81b828201526102e083019190915282518084019093526004835263636c617960e01b9083015261030081019190915260005b6019811015611c5c57611c4a828260198110611c3e57611c3e6149dd565b6020020151600061302c565b80611c5481614a39565b915050611c20565b50611c8360405180604001604052806003815260200162636f6d60e81b815250600161302c565b508015610afa576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050505050565b8686868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250611d1593508592508491506123ad565b611d1d610e37565b15611d3a5760405162461bcd60e51b8152600401610981906147cb565b611d698a611d4c8b610ca98c8c612584565b611d56888a6147f5565b611d6087896147f5565b600060016126c1565b5050505050505050505050565b611d7e612cad565b60005b81811015610cde5760c9546001600160a01b03166350960239848484818110611dac57611dac6149dd565b9050602002016020810190611dc19190613f34565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401600060405180830381600087803b158015611e0257600080fd5b505af1158015611e16573d6000803e3d6000fd5b505050508080611e2590614a39565b915050611d81565b600082815260976020526040902060010154611e4881612c15565b610cde8383612d3e565b611e5c898b6147f5565b6000600282511015611e805760405162461bcd60e51b81526004016109819061496f565b611e976110336000846001865161101691906149ca565b611e9f610e37565b15611ebc5760405162461bcd60e51b8152600401610981906147cb565b60028b14611edc5760405162461bcd60e51b8152600401610981906149f3565b611f228d8d8d898960008a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061322392505050565b84341015611f725760405162461bcd60e51b815260206004820181905260248201527f4d696e74696e674d616e616765723a204e4f545f454e4f5547485f46554e44536044820152606401610981565b611f848d8d8d8d8d8d8d8c60006133e3565b843411156112e757611f9461239e565b6001600160a01b03166108fc611faa87346149ca565b6040518115909202916000818181858888f19350505050158015611fd2573d6000803e3d6000fd5b5050505050505050505050505050565b611fea612cad565b611ff38161349f565b61200f5760405162461bcd60e51b815260040161098190614a81565b600081815260cd6020526040812061202691613d76565b60405181907f0aa1aff0f830e739d86baf0e6624d6763da02f7733575e0e463886cd062dea6a90600090a250565b61205c612cad565b612065816134c5565b610cf460008261353b565b61207a8a8c6147f5565b600060028251101561209e5760405162461bcd60e51b81526004016109819061496f565b6120b56110336000846001865161101691906149ca565b6120bd610e37565b156120da5760405162461bcd60e51b8152600401610981906147cb565b60028c146120fa5760405162461bcd60e51b8152600401610981906149f3565b61213f8e8e8e8a898b8a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061322392505050565b856001600160a01b03166323b872dd61215661239e565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152306024820152604481018890526064016020604051808303816000875af11580156121a9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121cd9190614903565b6122115760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610981565b611fd28e8e8e8e8e8e8e8c8e6133e3565b61222a612cad565b6040516370a0823160e01b81523060048201526000906001600160a01b038416906370a0823190602401602060405180830381865afa158015612271573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122959190614ac3565b60405163a9059cbb60e01b81526001600160a01b038481166004830152602482018390529192509084169063a9059cbb906044016020604051808303816000875af11580156122e8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061230c9190614903565b6123505760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610981565b604080516001600160a01b0384811682526020820184905285168183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a1505050565b60006123a8613545565b905090565b6123b68361349f565b6123d25760405162461bcd60e51b815260040161098190614a81565b600083815260cf602052604090205460ff1615156001600160401b03821615151461244e5760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544c445f455850495241424c455f4d496044820152650a69a82a886960d31b6064820152608401610981565b60006124818360408051808201825260008082526020918201528151808301909252825182529182019181019190915290565b9050600a81600001511115612529576124ac6124a0826000600a61358b565b80516020909101512090565b7fb551e0305c8163b812374b8e78b577c77f226f6f10c5ad03e52699578fbc34b8036125295760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544f4b454e5f4c4142454c5f50524f4860448201526512509255115160d21b6064820152608401610981565b612532836135ca565b61257e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a204c4142454c5f494e56414c49440000006044820152606401610981565b50505050565b60608282604051602001612599929190614adc565b604051602081830303815290604052905092915050565b604080516002808252606082810190935260009190816020015b60608152602001906001900390816125ca57905050905082816000815181106125f5576125f56149dd565b602002602001018190525060cd6000858152602001908152602001600020805461261e90614b04565b80601f016020809104026020016040519081016040528092919081815260200182805461264a90614b04565b80156126975780601f1061266c57610100808354040283529160200191612697565b820191906000526020600020905b81548152906001019060200180831161267a57829003601f168201915b5050505050816001815181106126af576126af6149dd565b60209081029190910101529392505050565b60008060006126cf88612e6b565b915091508380156126e1575060028851115b8015612763575060c9546040516331a9108f60e11b8152600481018390526001600160a01b038b8116921690636352211e90602401602060405180830381865afa158015612733573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127579190614b3e565b6001600160a01b031614155b156127c35760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e616765723a20524556455253455f5245434f52445f4e60448201526913d517d0531313d5d15160b21b6064820152608401610981565b60c954604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401602060405180830381865afa15801561280c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128309190614903565b8015612921575060c9546040516331a9108f60e11b81526004810184905230916001600160a01b031690636352211e90602401602060405180830381865afa158015612880573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128a49190614b3e565b6001600160a01b03161480612921575060c95460405163d9548e5360e01b8152600481018490526001600160a01b039091169063d9548e5390602401602060405180830381865afa1580156128fd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129219190614903565b15612a12576001600160401b038516156129a35760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b15801561298a57600080fd5b505af115801561299e573d6000803e3d6000fd5b505050505b60c954604051630fb8df0360e11b81526001600160a01b0390911690631f71be06906129db908c908c908c908c908b90600401614bb0565b600060405180830381600087803b1580156129f557600080fd5b505af1158015612a09573d6000803e3d6000fd5b50505050612c09565b612a1b8261372e565b612a248861378d565b8015612a31575087516002145b8015612a4457506001600160401b038516155b15612b225760ca5488516001600160a01b039091169063c36c2125908b908b90600090612a7357612a736149dd565b602090810291909101015160cc546040516001600160e01b031960e086901b168152612aad9392916001600160a01b031690600401614c0f565b600060405180830381600087803b158015612ac757600080fd5b505af1158015612adb573d6000803e3d6000fd5b50505050600087511115612b1d5760cc54604051633a0deb9d60e21b81526001600160a01b039091169063e837ae74906129db908a908a908790600401614c44565b612c09565b60c95460405163ba5d40b760e01b81526001600160a01b039091169063ba5d40b790612b5a908c908c908c908c908b90600401614bb0565b600060405180830381600087803b158015612b7457600080fd5b505af1158015612b88573d6000803e3d6000fd5b505050506001600160401b03851615612c095760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b158015612bf057600080fd5b505af1158015612c04573d6000803e3d6000fd5b505050505b50979650505050505050565b610cf481612c2161239e565b6137e7565b612c30828261156e565b610d815760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19166001179055612c6961239e565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b612cb561239e565b6001600160a01b0316612cd06033546001600160a01b031690565b6001600160a01b031614610d955760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610981565b610cf4600080516020614ef483398151915282611e2d565b612d48828261156e565b15610d815760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19169055612d7f61239e565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612dcb610e37565b612e0e5760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881393d517d4105554d15160621b6044820152606401610981565b600080516020614ed4833981519152805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa612e4e61239e565b6040516001600160a01b03909116815260200160405180910390a1565b805160009081905b8015612ea057829150612e8c82856110166001856149ca565b925080612e9881614c7a565b915050612e73565b50915091565b60008151600003612ef95760405162461bcd60e51b815260206004820152601b60248201527f4d696e74696e674d616e616765723a204c4142454c5f454d50545900000000006044820152606401610981565b8282604051602001612f0b9190614c91565b60405160208183030381529060405280519060200120604051602001612f3b929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b610cf4600080516020614ef48339815191528261353b565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b612fcc610e37565b15612fe95760405162461bcd60e51b8152600401610981906147cb565b600080516020614ed4833981519152805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258612e4e61239e565b6000613039600084612ea6565b600081815260cd602052604090209091506130548482614cf3565b50600081815260cf602052604090819020805460ff19168415151790555181907f4fce6f6e172b04eaa80325d8e3b0180a34945000f3e214605039e8420fdf8980906130a190869061437c565b60405180910390a260c954604051634f558e7960e01b8152600481018390526001600160a01b0390911690634f558e7990602401602060405180830381865afa1580156130f2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131169190614903565b610cde5760c9546040516307befae360e51b81526001600160a01b039091169063f7df5c6090610acc9084908790600401614db2565b600054610100900460ff166131735760405162461bcd60e51b815260040161098190614dd3565b610d9561317e61239e565b612f72565b600054610100900460ff166131aa5760405162461bcd60e51b815260040161098190614dd3565b610d9560006131b761239e565b61353b565b600054610100900460ff1661179e5760405162461bcd60e51b815260040161098190614dd3565b600054610100900460ff1661320a5760405162461bcd60e51b815260040161098190614dd3565b600080516020614ed4833981519152805460ff19169055565b600061323761323287896147f5565b612e6b565b506040516bffffffffffffffffffffffff1930606090811b821660208401524660348401528b811b82166054840152606883018490526001600160c01b031960c08a901b1660888401526090830188905286901b1660b082015290915060009061331390849061330d9060c401604051602081830303815290604052805190602001206040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c8101829052600090605c01604051602081830303815290604052805190602001209050919050565b9061384b565b905061331e816116f4565b6133765760405162461bcd60e51b8152602060048201526024808201527f4d696e74696e674d616e616765723a205349474e45525f49535f4e4f545f4d49604482015263272a22a960e11b6064820152608401610981565b42866001600160401b0316116133d85760405162461bcd60e51b815260206004820152602160248201527f4d696e74696e674d616e616765723a20455850495245445f5349474e415455526044820152604560f81b6064820152608401610981565b505050505050505050565b600061342a8a6133f38a8c6147f5565b6133fd898b6147f5565b613407888a6147f5565b60008f6001600160a01b031661341b61239e565b6001600160a01b0316146126c1565b9050896001600160a01b031661343e61239e565b6001600160a01b0316827fa545b6fd3355e8d57f8c8147bafe740545bd3ea1f94bef2576a6d532a7c3b605868660405161348b9291909182526001600160a01b0316602082015260400190565b60405180910390a450505050505050505050565b600081815260cd6020526040812080548291906134bb90614b04565b9050119050919050565b6134cd612cad565b6001600160a01b0381166135325760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610981565b610cf481612f72565b610d818282612c26565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546000906001600160a01b03163303613586575060331936013560601c90565b503390565b604080518082019091526000808252602082015260405180604001604052808381526020018486602001516135c09190614e1e565b9052949350505050565b600081516000036135dd57506000919050565b60208201805160f81c603081108015906135fb575060398160ff1611155b15801561361d575060618160ff161015801561361b5750607a8160ff1611155b155b1561362c575060009392505050565b8351600181111561369a5761364e836136466001846149ca565b015160f81c90565b915060308260ff1610158015613668575060398260ff1611155b15801561368a575060618260ff16101580156136885750607a8260ff1611155b155b1561369a57506000949350505050565b60015b6136a86001836149ca565b811015613722578381015160f81c9250602d83148015906136de575060308360ff16101580156136dc575060398360ff1611155b155b80156136ff575060618360ff16101580156136fd5750607a8360ff1611155b155b156137105750600095945050505050565b8061371a81614a39565b91505061369d565b50600195945050505050565b6137378161170e565b156137845760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a20544f4b454e5f424c4f434b45440000006044820152606401610981565b610cf48161386f565b6000806137a46000846001865161101691906149ca565b60ca549091506001600160a01b0316158015906137e05750807f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f145b9392505050565b6137f1828261156e565b610d8157613809816001600160a01b031660146138f3565b6138148360206138f3565b604051602001613825929190614e31565b60408051601f198184030181529082905262461bcd60e51b82526109819160040161437c565b600080600061385a8585613a8e565b9150915061386781613ad3565b509392505050565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd6960208201529081018290526001906138ae90606001611749565b805460ff19169115159190911790556040518181527f2ce5d9351b1d590d5a066db0d2dc7602d55f092506a83a7ee8c4d78ee357d75a9060200160405180910390a150565b60606000613902836002614ea6565b61390d906002614e1e565b6001600160401b0381111561392457613924614133565b6040519080825280601f01601f19166020018201604052801561394e576020820181803683370190505b509050600360fc1b81600081518110613969576139696149dd565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110613998576139986149dd565b60200101906001600160f81b031916908160001a90535060006139bc846002614ea6565b6139c7906001614e1e565b90505b6001811115613a3f576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106139fb576139fb6149dd565b1a60f81b828281518110613a1157613a116149dd565b60200101906001600160f81b031916908160001a90535060049490941c93613a3881614c7a565b90506139ca565b5083156137e05760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610981565b6000808251604103613ac45760208301516040840151606085015160001a613ab887828585613c89565b94509450505050613acc565b506000905060025b9250929050565b6000816004811115613ae757613ae7614ebd565b03613aef5750565b6001816004811115613b0357613b03614ebd565b03613b505760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152606401610981565b6002816004811115613b6457613b64614ebd565b03613bb15760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610981565b6003816004811115613bc557613bc5614ebd565b03613c1d5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b6064820152608401610981565b6004816004811115613c3157613c31614ebd565b03610cf45760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c604482015261756560f01b6064820152608401610981565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613cc05750600090506003613d6d565b8460ff16601b14158015613cd857508460ff16601c14155b15613ce95750600090506004613d6d565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613d3d573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613d6657600060019250925050613d6d565b9150600090505b94509492505050565b508054613d8290614b04565b6000825580601f10613d92575050565b601f016020900490600052602060002090810190610cf491905b80821115613dc05760008155600101613dac565b5090565b600060208284031215613dd657600080fd5b81356001600160e01b0319811681146137e057600080fd5b6001600160401b0381168114610cf457600080fd5b8035613e0e81613dee565b919050565b60008060408385031215613e2657600080fd5b8235613e3181613dee565b946020939093013593505050565b600060208284031215613e5157600080fd5b5035919050565b60008083601f840112613e6a57600080fd5b5081356001600160401b03811115613e8157600080fd5b602083019150836020828501011115613acc57600080fd5b600080600060408486031215613eae57600080fd5b8335925060208401356001600160401b03811115613ecb57600080fd5b613ed786828701613e58565b9497909650939450505050565b6001600160a01b0381168114610cf457600080fd5b8035613e0e81613ee4565b60008060408385031215613f1757600080fd5b823591506020830135613f2981613ee4565b809150509250929050565b600060208284031215613f4657600080fd5b81356137e081613ee4565b60008083601f840112613f6357600080fd5b5081356001600160401b03811115613f7a57600080fd5b6020830191508360208260051b8501011115613acc57600080fd5b8015158114610cf457600080fd5b60008060008060008060008060a0898b031215613fbf57600080fd5b8835613fca81613ee4565b975060208901356001600160401b0380821115613fe657600080fd5b613ff28c838d01613f51565b909950975060408b013591508082111561400b57600080fd5b6140178c838d01613f51565b909750955060608b013591508082111561403057600080fd5b5061403d8b828c01613f51565b909450925050608089013561405181613f95565b809150509295985092959890939650565b600080600080600080600080600060c08a8c03121561408057600080fd5b893561408b81613ee4565b985060208a01356001600160401b03808211156140a757600080fd5b6140b38d838e01613f51565b909a50985060408c01359150808211156140cc57600080fd5b6140d88d838e01613f51565b909850965060608c01359150808211156140f157600080fd5b506140fe8c828d01613f51565b90955093505060808a013561411281613dee565b915060a08a013561412281613f95565b809150509295985092959850929598565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561417157614171614133565b604052919050565b60006001600160401b0382111561419257614192614133565b5060051b60200190565b600060208083850312156141af57600080fd5b82356001600160401b038111156141c557600080fd5b8301601f810185136141d657600080fd5b80356141e96141e482614179565b614149565b81815260059190911b8201830190838101908783111561420857600080fd5b928401925b8284101561422f57833561422081613ee4565b8252928401929084019061420d565b979650505050505050565b6000806000806060858703121561425057600080fd5b843561425b81613ee4565b93506020850135925060408501356001600160401b0381111561427d57600080fd5b61428987828801613e58565b95989497509550505050565b600080602083850312156142a857600080fd5b82356001600160401b038111156142be57600080fd5b6142ca85828601613e58565b90969095509350505050565b6000806000604084860312156142eb57600080fd5b83356001600160401b0381111561430157600080fd5b61430d86828701613e58565b909450925050602084013561432181613f95565b809150509250925092565b60005b8381101561434757818101518382015260200161432f565b50506000910152565b6000815180845261436881602086016020860161432c565b601f01601f19169290920160200192915050565b6020815260006137e06020830184614350565b60008060008060008060c087890312156143a857600080fd5b86356143b381613ee4565b955060208701356143c381613ee4565b945060408701356143d381613ee4565b935060608701356143e381613ee4565b925060808701356143f381613ee4565b915060a087013561440381613ee4565b809150509295509295509295565b60008060008060008060008060a0898b03121561442d57600080fd5b883561443881613ee4565b97506020890135965060408901356001600160401b038082111561445b57600080fd5b6144678c838d01613e58565b909850965060608b013591508082111561448057600080fd5b61448c8c838d01613f51565b909650945060808b01359150808211156144a557600080fd5b506144b28b828c01613f51565b999c989b5096995094979396929594505050565b600080602083850312156144d957600080fd5b82356001600160401b038111156144ef57600080fd5b6142ca85828601613f51565b600080600080600080600080600080600060e08c8e03121561451c57600080fd5b6145258c613ef9565b9a506001600160401b038060208e0135111561454057600080fd5b6145508e60208f01358f01613f51565b909b50995060408d013581101561456657600080fd5b6145768e60408f01358f01613f51565b909950975060608d013581101561458c57600080fd5b61459c8e60608f01358f01613f51565b90975095506145ad60808e01613e03565b945060a08d013593508060c08e013511156145c757600080fd5b506145d88d60c08e01358e01613e58565b81935080925050509295989b509295989b9093969950565b6000806000806000806000806000806000806101008d8f03121561461357600080fd5b61461c8d613ef9565b9b506001600160401b0360208e0135111561463657600080fd5b6146468e60208f01358f01613f51565b909b5099506001600160401b0360408e0135111561466357600080fd5b6146738e60408f01358f01613f51565b90995097506001600160401b0360608e0135111561469057600080fd5b6146a08e60608f01358f01613f51565b90975095506146b160808e01613e03565b94506146bf60a08e01613ef9565b935060c08d013592506001600160401b0360e08e013511156146e057600080fd5b6146f08e60e08f01358f01613e58565b81935080925050509295989b509295989b509295989b565b6000806040838503121561471b57600080fd5b823561472681613ee4565b91506020830135613f2981613ee4565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b60006020828403121561477d57600080fd5b81516137e081613dee565b60208082526023908201527f4d696e74696e674d616e616765723a20544f4b454e5f4e4f545f455850495241604082015262424c4560e81b606082015260800190565b60208082526010908201526f14185d5cd8589b194e8814105554d15160821b604082015260600190565b60006148036141e484614179565b80848252602080830192508560051b85013681111561482157600080fd5b855b818110156148b35780356001600160401b03808211156148435760008081fd5b90880190601f36818401126148585760008081fd5b82358281111561486a5761486a614133565b61487b818301601f19168801614149565b9250808352368782860101111561489457600091508182fd5b8087850188850137600090830187015250865250938201938201614823565b50919695505050505050565b60208082526024908201527f4d696e74696e674d616e616765723a2043414c4c45525f49535f4e4f545f4d49604082015263272a22a960e11b606082015260800190565b60006020828403121561491557600080fd5b81516137e081613f95565b6020808252602f908201527f4d696e74696e674d616e616765723a2053454e4445525f49535f4e4f545f415060408201526e282927ab22a22fa7a92fa7aba722a960891b606082015260800190565b60208082526025908201527f4d696e74696e674d616e616765723a204c4142454c535f4c454e4754485f42456040820152642627abaf9960d91b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b81810381811115610954576109546149b4565b634e487b7160e01b600052603260045260246000fd5b60208082526026908201527f4d696e74696e674d616e616765723a20535542444f4d41494e535f4e4f545f41604082015265131313d5d15160d21b606082015260800190565b600060018201614a4b57614a4b6149b4565b5060010190565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b60208082526022908201527f4d696e74696e674d616e616765723a20544c445f4e4f545f5245474953544552604082015261115160f21b606082015260800190565b600060208284031215614ad557600080fd5b5051919050565b6b756e732d646576746573742d60a01b81528183600c83013760009101600c01908152919050565b600181811c90821680614b1857607f821691505b602082108103614b3857634e487b7160e01b600052602260045260246000fd5b50919050565b600060208284031215614b5057600080fd5b81516137e081613ee4565b600081518084526020808501808196508360051b8101915082860160005b85811015614ba3578284038952614b91848351614350565b98850198935090840190600101614b79565b5091979650505050505050565b6001600160a01b038616815260a060208201819052600090614bd490830187614b5b565b8281036040840152614be68187614b5b565b90508281036060840152614bfa8186614b5b565b91505082151560808301529695505050505050565b600060018060a01b03808616835260606020840152614c316060840186614350565b9150808416604084015250949350505050565b606081526000614c576060830186614b5b565b8281036020840152614c698186614b5b565b915050826040830152949350505050565b600081614c8957614c896149b4565b506000190190565b60008251614ca381846020870161432c565b9190910192915050565b601f821115610cde57600081815260208120601f850160051c81016020861015614cd45750805b601f850160051c820191505b818110156116a357828155600101614ce0565b81516001600160401b03811115614d0c57614d0c614133565b614d2081614d1a8454614b04565b84614cad565b602080601f831160018114614d555760008415614d3d5750858301515b600019600386901b1c1916600185901b1785556116a3565b600085815260208120601f198616915b82811015614d8457888601518255948401946001909101908401614d65565b5085821015614da25787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b828152604060208201526000614dcb6040830184614350565b949350505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b80820180821115610954576109546149b4565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351614e6981601785016020880161432c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351614e9a81602884016020880161432c565b01602801949350505050565b8082028115828204841417610954576109546149b4565b634e487b7160e01b600052602160045260246000fdfe5496787fc1ebdfeba375028c1865f13fbb1d63c0caa356ccc1b29a80f3ebd6229f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000811000a","storage":{}},"0x24f45688d421f46cca60734bdc648ad192db0f2e":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0x1","0x97":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x12d":"0x0","0x15f":"0x5cc819c9915eadfcebd76952b8c1bc36cadd7376","0x13cf90498be59d359caa5b6092b365feab4610605d7107d1f05f8e94ac955652":"0x1","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x54563a9e1cd2dcbd0bca90d3cfa4a647e02c404a","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106102295760003560e01c8063886a69ba11610123578063cf1d21c0116100ab578063e2c49de11161006f578063e2c49de11461091d578063e3dec8fb14610932578063e43009a6146109c8578063e66f9603146109fb578063ea60c7c414610a2557610240565b8063cf1d21c014610844578063d233a3c714610859578063d547741f1461089c578063d81c8e52146108d5578063dc993a23146108ea57610240565b8063a217fddf116100f2578063a217fddf1461078a578063b4b4f63e1461079f578063bc08452b146107b4578063c4d66de8146107e7578063ca15c8731461081a57610240565b8063886a69ba146106c95780639010d07c146106de5780639173b1391461070e57806391d148541461075157610240565b80633138b6f1116101b1578063568b80b511610175578063568b80b5146105fb578063607f2d4214610610578063630fcbfb1461064e5780636cb136b0146106635780636e86b7701461069657610240565b80633138b6f1146104f55780633408e4701461050a57806336568abe1461051f5780633805550f146105585780634faa8a26146105d557610240565b80630f7e5970116101f85780630f7e59701461042357806320379ee514610438578063248a9ca31461045f5780632d0335ab146104895780632f2ff15d146104bc57610240565b806304967702146102455780630c3894bb146102765780630c53c51c146102b15780630c598220146103ea57610240565b366102405761023e610239610a58565b610a68565b005b600080fd5b34801561025157600080fd5b5061025a610b69565b604080516001600160a01b039092168252519081900360200190f35b34801561028257600080fd5b5061023e6004803603604081101561029957600080fd5b506001600160a01b0381358116916020013516610b78565b610375600480360360a08110156102c757600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156102f257600080fd5b82018360208201111561030457600080fd5b8035906020019184600183028401116401000000008311171561032657600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550508235935050506020810135906040013560ff16610cc9565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103af578181015183820152602001610397565b50505050905090810190601f1680156103dc5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156103f657600080fd5b5061023e6004803603604081101561040d57600080fd5b50803590602001356001600160a01b0316610fcc565b34801561042f57600080fd5b506103756110b9565b34801561044457600080fd5b5061044d6110d6565b60408051918252519081900360200190f35b34801561046b57600080fd5b5061044d6004803603602081101561048257600080fd5b50356110dc565b34801561049557600080fd5b5061044d600480360360208110156104ac57600080fd5b50356001600160a01b03166110f4565b3480156104c857600080fd5b5061023e600480360360408110156104df57600080fd5b50803590602001356001600160a01b031661110f565b34801561050157600080fd5b5061025a611176565b34801561051657600080fd5b5061044d611185565b34801561052b57600080fd5b5061023e6004803603604081101561054257600080fd5b50803590602001356001600160a01b0316611189565b34801561056457600080fd5b5061023e6004803603602081101561057b57600080fd5b81019060208101813564010000000081111561059657600080fd5b8201836020820111156105a857600080fd5b803590602001918460018302840111640100000000831117156105ca57600080fd5b5090925090506111ea565b61023e600480360360208110156105eb57600080fd5b50356001600160a01b03166116ec565b34801561060757600080fd5b5061044d6116f8565b34801561061c57600080fd5b5061063a6004803603602081101561063357600080fd5b503561171b565b604080519115158252519081900360200190f35b34801561065a57600080fd5b5061023e611730565b34801561066f57600080fd5b5061023e6004803603602081101561068657600080fd5b50356001600160a01b03166117d6565b3480156106a257600080fd5b5061025a600480360360208110156106b957600080fd5b50356001600160a01b031661186e565b3480156106d557600080fd5b5061044d611889565b3480156106ea57600080fd5b5061025a6004803603604081101561070157600080fd5b50803590602001356118aa565b34801561071a57600080fd5b5061023e6004803603606081101561073157600080fd5b506001600160a01b038135811691602081013590911690604001356118d1565b34801561075d57600080fd5b5061063a6004803603604081101561077457600080fd5b50803590602001356001600160a01b0316611a06565b34801561079657600080fd5b5061044d611a24565b3480156107ab57600080fd5b5061023e611a29565b3480156107c057600080fd5b5061023e600480360360208110156107d757600080fd5b50356001600160a01b0316611acf565b3480156107f357600080fd5b5061023e6004803603602081101561080a57600080fd5b50356001600160a01b0316611b67565b34801561082657600080fd5b5061044d6004803603602081101561083d57600080fd5b5035611c57565b34801561085057600080fd5b5061025a611c6e565b34801561086557600080fd5b5061023e6004803603606081101561087c57600080fd5b506001600160a01b03813581169160208101359091169060400135611c86565b3480156108a857600080fd5b5061023e600480360360408110156108bf57600080fd5b50803590602001356001600160a01b0316611de8565b3480156108e157600080fd5b5061044d611e41565b3480156108f657600080fd5b5061023e6004803603602081101561090d57600080fd5b50356001600160a01b0316611e60565b34801561092957600080fd5b5061025a611f3d565b34801561093e57600080fd5b5061023e6004803603606081101561095557600080fd5b6001600160a01b03823581169260208101359091169181019060608101604082013564010000000081111561098957600080fd5b82018360208201111561099b57600080fd5b803590602001918460018302840111640100000000831117156109bd57600080fd5b509092509050611f4c565b3480156109d457600080fd5b5061044d600480360360208110156109eb57600080fd5b50356001600160a01b0316611fe9565b348015610a0757600080fd5b5061025a60048036036020811015610a1e57600080fd5b5035611ffb565b348015610a3157600080fd5b5061025a60048036036020811015610a4857600080fd5b50356001600160a01b0316612016565b6000610a62612031565b90505b90565b604080513460208083019190915282518083039091018152908201909152610aa58273eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee8361208e565b7fa1829a9003092132f585b6ccdd167c19fe9774dbdea4260287e8a8e8ca8185d7546000908152600260205260408082205490516001600160a01b039091169034908381818185875af1925050503d8060008114610b1f576040519150601f19603f3d011682016040523d82523d6000602084013e610b24565b606091505b5050905080610b645760405162461bcd60e51b815260040180806020018281038252602781526020018061419d6027913960400191505060405180910390fd5b505050565b6009546001600160a01b031681565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020610ba981610ba4610a58565b611a06565b600a90610c495760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b820191906000526020600020905b815481529060010190602001808311610c1d57829003601f168201915b50509250505060405180910390fd5b506001600160a01b03808416600081815260036020908152604080832080546001600160a01b0319908116909155948716808452600483528184208054909616909555838352600590915280822082905551909291907f9e651a8866fbea043e911d816ec254b0e3c992c06fff32d605e72362d6023bd9908490a4505050565b6060610cd3613e2a565b50604080516060810182526001600160a01b0388166000818152600c602090815290849020548352820152908101869052610d118782878787612508565b610d4c5760405162461bcd60e51b81526004018080602001828103825260218152602001806141c46021913960400191505060405180910390fd5b6001600160a01b0387166000908152600c6020526040902054610d7690600163ffffffff6125e516565b6001600160a01b0388166000818152600c602090815260408083209490945583519283523383820181905260609484018581528b51958501959095528a517f5845892132946850460bff5a0083f71031bc5bf9aadcd40f1de79423eac9b10b958d9592948d94919260808501928601918190849084905b83811015610e05578181015183820152602001610ded565b50505050905090810190601f168015610e325780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a160006060306001600160a01b0316888a6040516020018083805190602001908083835b60208310610e835780518252601f199092019160209182019101610e64565b6001836020036101000a038019825116818451168082178552505050505050905001826001600160a01b03166001600160a01b031660601b8152601401925050506040516020818303038152906040526040518082805190602001908083835b60208310610f025780518252601f199092019160209182019101610ee3565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610f64576040519150601f19603f3d011682016040523d82523d6000602084013e610f69565b606091505b509150915081610fc0576040805162461bcd60e51b815260206004820152601c60248201527f46756e6374696f6e2063616c6c206e6f74207375636365737366756c00000000604482015290519081900360640190fd5b98975050505050505050565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020610ff881610ba4610a58565b600a9061105e5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5060008381526002602052604080822080546001600160a01b0319166001600160a01b0386169081179091559051909185917f8643692ae1c12ec91fa18e50b82ed93fa314f580999a236824db6de9ae0d839b9190a3505050565b604051806040016040528060018152602001603160f81b81525081565b600b5490565b6000818152600160205260409020600201545b919050565b6001600160a01b03166000908152600c602052604090205490565b60008281526001602052604090206002015461112d90610ba4610a58565b6111685760405162461bcd60e51b815260040180806020018281038252602f815260200180613f78602f913960400191505060405180910390fd5b611172828261263f565b5050565b6008546001600160a01b031690565b4690565b611191610a58565b6001600160a01b0316816001600160a01b0316146111e05760405162461bcd60e51b815260040180806020018281038252602f815260200180614286602f913960400191505060405180910390fd5b61117282826126ae565b606061123361122e84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061271d92505050565b612798565b905060006112548260028151811061124757fe5b602002602001015161291a565b6112796112748460088151811061126757fe5b6020026020010151612a62565b612b2c565b6112898460098151811061124757fe5b6040516020018084815260200183805190602001908083835b602083106112c15780518252601f1990920191602091820191016112a2565b51815160209384036101000a6000190180199092169116179052920193845250604080518085038152938201815283519382019390932060008181526006909252929020549194505060ff1615915061134d90505760405162461bcd60e51b81526004018080602001828103825260288152602001806142096028913960400191505060405180910390fd5b6000818152600660208190526040909120805460ff19166001179055825160609161138a9161122e9161138591879190811061126757fe5b61271d565b9050611394613e54565b6113b1826003815181106113a457fe5b6020026020010151612798565b6113c18560098151811061124757fe5b815181106113cb57fe5b6020026020010151905060006113fc6113e383612798565b6000815181106113ef57fe5b6020026020010151612c9f565b6001600160a01b0380821660009081526004602052604090205491925016806114565760405162461bcd60e51b81526004018080602001828103825260228152602001806140af6022913960400191505060405180910390fd5b6001600160a01b03808216600090815260056020908152604080832054835260029091529020548751911690611493908890600890811061124757fe5b63ffffffff1916156114d65760405162461bcd60e51b815260040180806020018281038252602581526020018061408a6025913960400191505060405180910390fd5b61151e6114e98860068151811061126757fe5b6114f98960088151811061126757fe5b6115098a60078151811061126757fe5b6115198b60058151811061124757fe5b612d2f565b61156f576040805162461bcd60e51b815260206004820152601f60248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f50524f4f4600604482015290519081900360640190fd5b6115dd6115828860028151811061124757fe5b6115928960038151811061124757fe5b6115a28a60048151811061124757fe5b60001b6115b58b60058151811061124757fe5b60001b6115c88c60008151811061124757fe5b6115d88d60018151811061126757fe5b612f76565b50806001600160a01b0316638274664f6115f5610a58565b846115ff886130bf565b6040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561167b578181015183820152602001611663565b50505050905090810190601f1680156116a85780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b1580156116c957600080fd5b505af11580156116dd573d6000803e3d6000fd5b50505050505050505050505050565b6116f581610a68565b50565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b01902081565b60066020526000908152604090205460ff1681565b600061173e81610ba4610a58565b600a906117a45760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506116f56040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b81525061312d565b60006117e481610ba4610a58565b600a9061184a5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5050600780546001600160a01b0319166001600160a01b0392909216919091179055565b6004602052600090815260409020546001600160a01b031681565b604080516826a0a82faa27a5a2a760b91b8152905190819003600901902081565b60008281526001602052604081206118c8908363ffffffff6131e916565b90505b92915050565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b0190206118fd81610ba4610a58565b600a906119635760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b03848116600090815260036020526040902054161580156119a457506001600160a01b0383811660009081526004602052604090205416155b6119f5576040805162461bcd60e51b815260206004820181905260248201527f526f6f74436861696e4d616e616765723a20414c52454144595f4d4150504544604482015290519081900360640190fd5b611a008484846131f5565b50505050565b60008281526001602052604081206118c8908363ffffffff61348416565b600081565b6000611a3781610ba4610a58565b600a90611a9d5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506116f56040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613499565b6000611add81610ba4610a58565b600a90611b435760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5050600880546001600160a01b0319166001600160a01b0392909216919091179055565b60005460ff1615611bb0576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b611be16040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613537565b611c126040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613499565b611c1d600082611168565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020611c479082611168565b506000805460ff19166001179055565b60008181526001602052604081206118cb90613589565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020611cb281610ba4610a58565b600a90611d185760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b0380851660009081526003602081815260408084205488861685526004835281852054861680865293909252909220549183169290911615611d8e576001600160a01b038116600090815260036020908152604080832080546001600160a01b031916905560059091528120555b6001600160a01b038281166000908152600460205260409020541615611dd5576001600160a01b038216600090815260046020526040902080546001600160a01b03191690555b611de08686866131f5565b505050505050565b600082815260016020526040902060020154611e0690610ba4610a58565b6111e05760405162461bcd60e51b81526004018080602001828103825260308152602001806140f96030913960400191505060405180910390fd5b604080516611115413d4d25560ca1b8152905190819003600701902081565b6000611e6e81610ba4610a58565b600a90611ed45760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b038216611f1a5760405162461bcd60e51b815260040180806020018281038252602d815260200180613fa7602d913960400191505060405180910390fd5b50600980546001600160a01b0319166001600160a01b0392909216919091179055565b6007546001600160a01b031690565b6001600160a01b03831673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee1415611fa85760405162461bcd60e51b81526004018080602001828103825260248152602001806141e56024913960400191505060405180910390fd5b611a00848484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061208e92505050565b60056020526000908152604090205481565b6002602052600090815260409020546001600160a01b031681565b6003602052600090815260409020546001600160a01b031681565b6000333014156120895760606000368080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505050503601516001600160a01b03169150610a659050565b503390565b6001600160a01b03808316600090815260056020908152604080832054600390925290912054909116158015906120c457508015155b6120ff5760405162461bcd60e51b81526004018080602001828103825260228152602001806140af6022913960400191505060405180910390fd5b6000818152600260205260409020546001600160a01b0316806121535760405162461bcd60e51b81526004018080602001828103825260248152602001806140176024913960400191505060405180910390fd5b6001600160a01b0385166121ae576040805162461bcd60e51b815260206004820152601e60248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f555345520000604482015290519081900360640190fd5b806001600160a01b031663e375b64e6121c5610a58565b8787876040518563ffffffff1660e01b815260040180856001600160a01b03166001600160a01b03168152602001846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561225c578181015183820152602001612244565b50505050905090810190601f1680156122895780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b1580156122ab57600080fd5b505af11580156122bf573d6000803e3d6000fd5b50505050606085858560405160200180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015612338578181015183820152602001612320565b50505050905090810190601f1680156123655780820380516001836020036101000a031916815260200191505b5060408051808303601f19018152828252600780546009546611115413d4d25560ca1b865284519586900390920185206020808701828152878701968752855160608901528551959d506001600160a01b039384169c506316f198319b5092909316985096508a955093608001919085019080838360005b838110156123f55781810151838201526020016123dd565b50505050905090810190601f1680156124225780820380516001836020036101000a031916815260200191505b5093505050506040516020818303038152906040526040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561249b578181015183820152602001612483565b50505050905090810190601f1680156124c85780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b1580156124e857600080fd5b505af11580156124fc573d6000803e3d6000fd5b50505050505050505050565b60006001600160a01b03861661254f5760405162461bcd60e51b81526004018080602001828103825260258152602001806141296025913960400191505060405180910390fd5b600161256261255d87613594565b613620565b83868660405160008152602001604052604051808581526020018460ff1660ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa1580156125bc573d6000803e3d6000fd5b505050602060405103516001600160a01b0316866001600160a01b031614905095945050505050565b6000828201838110156118c8576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600082815260016020526040902061265d908263ffffffff61366c16565b156111725761266a610a58565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b60008281526001602052604090206126cc908263ffffffff61368116565b15611172576126d9610a58565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612725613e54565b600082511161277b576040805162461bcd60e51b815260206004820152601f60248201527f524c505265616465723a20494e56414c49445f42595445535f4c454e47544800604482015290519081900360640190fd5b506040805180820190915281518152602082810190820152919050565b60606127a382613696565b6127f4576040805162461bcd60e51b815260206004820152601860248201527f524c505265616465723a204954454d5f4e4f545f4c4953540000000000000000604482015290519081900360640190fd5b60006127ff836136c2565b905060608167ffffffffffffffff8111801561281a57600080fd5b5060405190808252806020026020018201604052801561285457816020015b612841613e54565b8152602001906001900390816128395790505b5090506000612866856020015161374e565b855190915081146128a85760405162461bcd60e51b81526004018080602001828103825260278152602001806142316027913960400191505060405180910390fd5b60006128b786602001516137e2565b60208701510190506000805b8581101561290e576128d48361374e565b91506040518060400160405280838152602001848152508582815181106128f757fe5b6020908102919091010152918101916001016128c3565b50929695505050505050565b600061292582613696565b15612977576040805162461bcd60e51b815260206004820181905260248201527f524c505265616465723a204445434f44494e475f4c4953545f41535f55494e54604482015290519081900360640190fd5b8151602110156129ce576040805162461bcd60e51b815260206004820152601e60248201527f524c505265616465723a20494e56414c49445f55494e545f4c454e4754480000604482015290519081900360640190fd5b60006129dd836020015161374e565b83519091508114612a1f5760405162461bcd60e51b81526004018080602001828103825260278152602001806142b56027913960400191505060405180910390fd5b6000612a2e84602001516137e2565b84516020808701518301805193945091849003929190831015612a5857826020036101000a820491505b5095945050505050565b60606000612a73836020015161374e565b83519091508114612ab55760405162461bcd60e51b81526004018080602001828103825260288152602001806140d16028913960400191505060405180910390fd5b6000612ac484602001516137e2565b845190915081900360608167ffffffffffffffff81118015612ae557600080fd5b506040519080825280601f01601f191660200182016040528015612b10576020820181803683370190505b5090506000816020019050612a58848860200151018285613845565b604080516020810190915260008152815160609190156118cb57600080612b54600086613890565b60f81c90506001811480612b6b57508060ff166003145b15612bfa57600185516002020367ffffffffffffffff81118015612b8e57600080fd5b506040519080825280601f01601f191660200182016040528015612bb9576020820181803683370190505b5092506000612bc9600187613890565b90508084600081518110612bd957fe5b60200101906001600160f81b031916908160001a9053506001925050612c4b565b600285516002020367ffffffffffffffff81118015612c1857600080fd5b506040519080825280601f01601f191660200182016040528015612c43576020820181803683370190505b509250600091505b60ff82165b8351811015612c9657612c6b8360ff16820360020187613890565b848281518110612c7757fe5b60200101906001600160f81b031916908160001a905350600101612c50565b50505092915050565b6000612caa82613696565b15612ce65760405162461bcd60e51b815260040180806020018281038252602381526020018061417a6023913960400191505060405180910390fd5b8151601514612d265760405162461bcd60e51b81526004018080602001828103825260218152602001806142dc6021913960400191505060405180910390fd5b6118cb8261291a565b6000612d39613e54565b612d428461271d565b90506060612d4f82612798565b905060608085600082612d618b612b2c565b9050805160001415612d7d576000975050505050505050612f6e565b60005b8651811015612f65578151831115612da357600098505050505050505050612f6e565b612dbf878281518110612db257fe5b60200260200101516130bf565b955085805190602001208414612de057600098505050505050505050612f6e565b612def8782815181106113a457fe5b9450845160111415612eac578151831415612e4b578c80519060200120612e1c8660108151811061126757fe5b805190602001201415612e3a57600198505050505050505050612f6e565b600098505050505050505050612f6e565b6000828481518110612e5957fe5b016020015160f81c90506010811115612e7e5760009950505050505050505050612f6e565b612e9d868260ff1681518110612e9057fe5b60200260200101516138ed565b94505060019290920191612f5d565b845160021415612e3a576000612ed2612ecb8760008151811061126757fe5b848661398c565b905082518185011415612f28578d80519060200120612ef78760018151811061126757fe5b805190602001201415612f165760019950505050505050505050612f6e565b60009950505050505050505050612f6e565b80612f3f5760009950505050505050505050612f6e565b8084019350612f5486600181518110612e9057fe5b9450612f5d9050565b600101612d80565b50505050505050505b949350505050565b600854604080516320a9cea560e11b81526004810185905290516000928392839283926001600160a01b0316916341539d4a9160248083019260a0929190829003018186803b158015612fc857600080fd5b505afa158015612fdc573d6000803e3d6000fd5b505050506040513d60a0811015612ff257600080fd5b5080516020820151606090920151909450909250905061306161301b8b8463ffffffff613a6b16565b6040805160208082018f90528183018e9052606082018d905260808083018d90528351808403909101815260a0909201909252805191012090858863ffffffff613aad16565b6130b2576040805162461bcd60e51b815260206004820181905260248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f484541444552604482015290519081900360640190fd5b9998505050505050505050565b606080826000015167ffffffffffffffff811180156130dd57600080fd5b506040519080825280601f01601f191660200182016040528015613108576020820181803683370190505b50905060008160200190506131268460200151828660000151613845565b5092915050565b6040518060800160405280604f815260200161403b604f913980516020918201208251838301206040805180820190915260018152603160f81b930192909252907fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc630613198611185565b604080516020808201979097528082019590955260608501939093526001600160a01b03909116608084015260a0808401919091528151808403909101815260c090920190528051910120600b5550565b60006118c88383613c03565b6000818152600260205260409020546001600160a01b03166132485760405162461bcd60e51b815260040180806020018281038252602a815260200180613f07602a913960400191505060405180910390fd5b6001600160a01b03808416600081815260036020908152604080832080549588166001600160a01b031996871681179091558084526004835281842080549096168517909555838352600590915280822085905551849392917f9e651a8866fbea043e911d816ec254b0e3c992c06fff32d605e72362d6023bd991a4604080516001600160a01b0380861660208084019190915281861683850152606083810186905284518085038201815260808086018088526007546009546826a0a82faa27a5a2a760b91b9092528851978890036089018820888701818152898b019a8b528551968a019690965284519499918816986316f1983198939093169690958a9590949293909201919085019080838360005b8381101561337357818101518382015260200161335b565b50505050905090810190601f1680156133a05780820380516001836020036101000a031916815260200191505b5093505050506040516020818303038152906040526040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015613419578181015183820152602001613401565b50505050905090810190601f1680156134465780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b15801561346657600080fd5b505af115801561347a573d6000803e3d6000fd5b5050505050505050565b60006118c8836001600160a01b038416613c67565b806040516020018082805190602001908083835b602083106134cc5780518252601f1990920191602091820191016134ad565b51815160209384036101000a60001901801990921691161790527f3a20494e53554646494349454e545f5045524d495353494f4e530000000000009190930190815260408051808303600519018152601a909201905280516111729550600a94509201919050613e6e565b60005460ff1615613580576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b611c478161312d565b60006118cb82613c7f565b6000604051806080016040528060438152602001613fd460439139805190602001208260000151836020015184604001518051906020012060405160200180858152602001848152602001836001600160a01b03166001600160a01b03168152602001828152602001945050505050604051602081830303815290604052805190602001209050919050565b600061362a6110d6565b82604051602001808061190160f01b81525060020183815260200182815260200192505050604051602081830303815290604052805190602001209050919050565b60006118c8836001600160a01b038416613c83565b60006118c8836001600160a01b038416613ccd565b6020810151805160009190821a9060c08210156136b8576000925050506110ef565b5060019392505050565b6000806000905060006136d884602001516137e2565b602085015185519181019250015b80821015613745576136f78261374e565b820191508082111561373a5760405162461bcd60e51b815260040180806020018281038252602c81526020018061414e602c913960400191505060405180910390fd5b6001909201916136e6565b50909392505050565b80516000908190811a60808110156137695760019150613126565b60b881101561377e57607e1981019150613126565b60c08110156137ab5760b78103600185019450806020036101000a85510460018201810193505050613126565b60f88110156137c05760be1981019150613126565b60019390930151602084900360f7016101000a900490920160f5190192915050565b8051600090811a60808110156137fc5760009150506110ef565b60b8811080613817575060c08110801590613817575060f881105b156138265760019150506110ef565b60c081101561383a5760b5190190506110ef565b60f5190190506110ef565b8061384f57610b64565b5b6020811061386f578251825260209283019290910190601f1901613850565b915181516020939093036101000a6000190180199091169216919091179052565b600060028306156138c15760108260028504815181106138ac57fe5b016020015160f81c816138bb57fe5b066138e3565b60108260028504815181106138d257fe5b016020015160f81c816138e157fe5b045b60f81b9392505050565b6000806138fd836020015161374e565b8351909150811461393f5760405162461bcd60e51b815260040180806020018281038252602e815260200180614258602e913960400191505060405180910390fd5b825160211461397f5760405162461bcd60e51b8152600401808060200182810382526025815260200180613f536025913960400191505060405180910390fd5b5050602001516001015190565b600080606061399a86612b2c565b90506060815167ffffffffffffffff811180156139b657600080fd5b506040519080825280601f01601f1916602001820160405280156139e1576020820181803683370190505b509050845b82518601811015613a3b5760008782815181106139ff57fe5b602001015160f81c60f81b9050808388840381518110613a1b57fe5b60200101906001600160f81b031916908160001a905350506001016139e6565b50808051906020012082805190602001201415613a5b5781519250613a60565b600092505b509095945050505050565b60006118c883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250613d93565b60006020825181613aba57fe5b0615613b04576040805162461bcd60e51b8152602060048201526014602482015273092dcecc2d8d2c840e0e4dedecc40d8cadccee8d60631b604482015290519081900360640190fd5b60006020835181613b1157fe5b0490508060020a8510613b63576040805162461bcd60e51b81526020600482015260156024820152744c65616620696e64657820697320746f6f2062696760581b604482015290519081900360640190fd5b60008660205b85518111613bf55785810151925060028806613bb55781836040516020018083815260200182815260200192505050604051602081830303815290604052805190602001209150613be7565b828260405160200180838152602001828152602001925050506040516020818303038152906040528051906020012091505b600288049750602001613b69565b509094149695505050505050565b81546000908210613c455760405162461bcd60e51b8152600401808060200182810382526022815260200180613f316022913960400191505060405180910390fd5b826000018281548110613c5457fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000613c8f8383613c67565b613cc5575081546001818101845560008481526020808220909301849055845484825282860190935260409020919091556118cb565b5060006118cb565b60008181526001830160205260408120548015613d895783546000198083019190810190600090879083908110613d0057fe5b9060005260206000200154905080876000018481548110613d1d57fe5b600091825260208083209091019290925582815260018981019092526040902090840190558654879080613d4d57fe5b600190038181906000526020600020016000905590558660010160008781526020019081526020016000206000905560019450505050506118cb565b60009150506118cb565b60008184841115613e225760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015613de7578181015183820152602001613dcf565b50505050905090810190601f168015613e145780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60405180606001604052806000815260200160006001600160a01b03168152602001606081525090565b604051806040016040528060008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10613eaf57805160ff1916838001178555613edc565b82800160010185558215613edc579182015b82811115613edc578251825591602001919060010190613ec1565b50613ee8929150613eec565b5090565b610a6591905b80821115613ee85760008155600101613ef256fe526f6f74436861696e4d616e616765723a20544f4b454e5f545950455f4e4f545f535550504f52544544456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473524c505265616465723a20494e56414c49445f55494e545f5354524943545f4c454e475448416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e74526f6f74436861696e4d616e616765723a20494e56414c49445f4348494c445f434841494e5f414444524553534d6574615472616e73616374696f6e2875696e74323536206e6f6e63652c616464726573732066726f6d2c62797465732066756e6374696f6e5369676e617475726529526f6f74436861696e4d616e616765723a20494e56414c49445f544f4b454e5f54595045454950373132446f6d61696e28737472696e67206e616d652c737472696e672076657273696f6e2c6164647265737320766572696679696e67436f6e74726163742c627974657333322073616c7429526f6f74436861696e4d616e616765723a20494e56414c49445f4252414e43485f4d41534b526f6f74436861696e4d616e616765723a20544f4b454e5f4e4f545f4d4150504544524c505265616465723a2042595445535f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b654e61746976654d6574615472616e73616374696f6e3a20494e56414c49445f5349474e4552524c505265616465723a204e554d5f4954454d535f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a204445434f44494e475f4c4953545f41535f41444452455353526f6f74436861696e4d616e616765723a2045544845525f5452414e534645525f4641494c45445369676e657220616e64207369676e617475726520646f206e6f74206d61746368526f6f74436861696e4d616e616765723a20494e56414c49445f524f4f545f544f4b454e526f6f74436861696e4d616e616765723a20455849545f414c52454144595f50524f434553534544524c505265616465723a204c4953545f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a2055494e545f5354524943545f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66524c505265616465723a2055494e545f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a20494e56414c49445f414444524553535f4c454e475448a164736f6c6343000606000a","storage":{"0x0":"0x1","0x7":"0xe0afc4e9e03e4aa67257df7a2eca77454309789d","0x8":"0xbe5deac45dd1ca4ee18dc2d585d84d3d3cb82b0d","0x9":"0x0","0xa":"0x55","0xb":"0x2603903cfd8895fdde3da4d607d44203e86098073e351022fd12745d3436e93a","0xeb5be412f275a18f6e4d622aee4ff40b21467c926224771b782d4c095d1444b":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x162b27a30e878e20728deaa5c9814fd57ccf962b998b8733ce65749bc61c552f":"0x58a175bebc8ec21a94ea63aa5a28743945940ee6","0x1a93463c7bbb7215968307c7cd357c2009c10df2a511dd62c1189098e4f3249b":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x415fec6a4fd7706b96d3a0a30121284bc5e2b28b978c20486c9f5e20d44fc781":"0x1","0x4dc1f0160d96279adc262db20edcc15527e32cb28eda582becc5ac0bc453be34":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x5fc73aa2ab567caef8745f0709fae506c01972ffb297bd9225bc262d6e87746f":"0x1","0x6ce1cd05966f090b8daa7b2ee7f80930bbb39d19b693045725fbae5fa44fda90":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0xa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb49":"0x1","0xc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a8":"0x526f6f74436861696e4d616e616765723a20494e53554646494349454e545f50","0xc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a9":"0x45524d495353494f4e5300000000000000000000000000000000000000000000","0xd61ba0007bb57e62613f82f528c06ba46d36349cf5be567b12f878ef04849a7d":"0x1","0xf960df71fab73e593428c10f56f55e7ea46985963177def0458b97f1afec9576":"0xcf4e755f204163e9213ba8b1305036e386579ccc70731c25c62a101197811f48"}},"0x287dee389caaa49edc112888f2bcfd927b472e25":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c80634f89059e1461002d575b5f80fd5b61004061003b366004610125565b610054565b604051901515815260200160405180910390f35b5f806100985f85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101029050565b60ff1690505f811180156100f857506100f36100b5826001610191565b85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101029050565b60ff16155b9150505b92915050565b5f828281518110610115576101156101b0565b016020015160f81c905092915050565b5f8060208385031215610136575f80fd5b823567ffffffffffffffff8082111561014d575f80fd5b818501915085601f830112610160575f80fd5b81358181111561016e575f80fd5b86602082850101111561017f575f80fd5b60209290920196919550909350505050565b808201808211156100fc57634e487b7160e01b5f52601160045260245ffd5b634e487b7160e01b5f52603260045260245ffdfea164736f6c6343000818000a","storage":{}},"0x3198fc981626687f4b5bdf0fbeabb0a5e0489c03":{"nonce":1,"balance":"0x8ac7230489e80000","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0x1","0x97":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x13cf90498be59d359caa5b6092b365feab4610605d7107d1f05f8e94ac955652":"0x1","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xc2110388dd54228ae0a834119457ede938bf0b57","0x412386de53449251cbf7ce1f4c6a038bf9c0746e62d331b08ef0c3fa7d0ab672":"0x4fbf7b2f171336958be5d15ff762a5cff5363568","0x60793a5062d506d35cc8f1beda67ee5028c16bfcd9c923d5bfc439c04bd929b1":"0x6ac8f19d1e0f81147cdf2a1e53cb1f4e18417204","0x75df8b43665bf2e4996a686913c4c278ca7aed85444740ca40355b1c9a94b504":"0x1","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xf851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004":"0xc965345edac823d56812cd20a10316233916a605"}},"0x39a27956b78d00a4e00ea8833ff0947410a2933f":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xc9":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0xca":"0x4a3c194eb88966178bfdd81744dddafed611b830","0xcb":"0x4872cc1be60a9db9c880a0a437da7a6af134f08f","0xcc":"0xf8c26340c1eaea6c7ff1760b25005e1306953572","0xce":"0xce4bb7dc1eb9dce75743de6a4b48534fd427ef51","0xc6892776bb3da1e1199a03e0d3131aea089754b59c557b750c478ebc85ccaa":"0x6e66740000000000000000000000000000000000000000000000000000000006","0x6cb37a6d512a1e227e627eddc133023e6d00bfedff31a600abb75aa93e9a4a0":"0x6b7265737573000000000000000000000000000000000000000000000000000c","0x8e966fe8b9b43d48017ba1eb562ced91049de778396aaa438773698b3fa8fb6":"0x0","0x94a32b1c7b189ce7293f7ae444cdcab6800d858454022d15355d5ecc5b32b26":"0x0","0xa4b2d73a9f36ca5eed107f7c3d2ba877fb7537d447256726bcde9bac9e9aaee":"0x0","0xe0e3ab102c26f13da20123aa517b31e99cf65b7b720ba0dd7138012fd23eff2":"0x0","0x1203b5e51c7d5be6da42b83f22878d3583e53123857d27fc3cff3df46fb9126c":"0x0","0x13477730039a04f4290adf0e48e98b233579c040281545e4446ce662ba56a9be":"0x7800000000000000000000000000000000000000000000000000000000000002","0x1e06d49ce7b00846691778f302e94a3ac9c2633d745ebe73d68353c941e68dee":"0x626974636f696e0000000000000000000000000000000000000000000000000e","0x1e99199375610ffe00d28ee5827c616cf6469be3de2a2f738d955eb6b62127e8":"0x1","0x21e80eded1b2e1c5d976c85e89dde60bd4e99a8d66346af0e359ac854bceba44":"0x0","0x254d9ade81439f29723741d6ff407eab1fe03caffb042bd85e53955e41fb9792":"0x616c74696d697374000000000000000000000000000000000000000000000010","0x269db12b2cd2aeb7d5f52eda16edb1d211ccbea12da1ebfa60ed5f8f396c1d04":"0x0","0x2a3f03435eedee01de7e1c4386b04ca8469edd8df00408cd6d2b058bce1cecfa":"0x0","0x323a3cb169499006d6635c58232c8c58e23c20bf9e1d309d6b3bc6fb2c7a093d":"0x0","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x229c56b7805ab5935a883207f6a6bd5847e65aee","0x37aac864d4715a975bd45cae6be99de9f7968cf995917cc7f8192940fb62acbf":"0x0","0x3f69f26894a7ae0f7a7aa6c2d77935589dabbff6435aee960da15064dea7cd59":"0x64616f0000000000000000000000000000000000000000000000000000000006","0x467a68fda3230ce33f64703ebdbd91caccf235403282ae9fe390675ef39e9c94":"0x0","0x50ae8c017c4c1fddbe9509bd2b916f5dd9da11ddb639f2a4230322f49a41ac87":"0x1","0x5496787fc1ebdfeba375028c1865f13fbb1d63c0caa356ccc1b29a80f3ebd622":"0x0","0x576dd8d1a7b74aba0a99a213f50d74aa642a2c80bd5a854b24aac7568afea0f7":"0x626974676574000000000000000000000000000000000000000000000000000c","0x5b54338c052ce22ec334b6c5a19c4b122701c5fd4d3a2a5f5890f57050e0aafa":"0x626c6f636b636861696e00000000000000000000000000000000000000000014","0x5d9de30f0e5e02628e726fd23e310ee9e64489866fa6959825148a25d40e4c83":"0x0","0x5e2d99ab4a1a153039a4b2e068d64802da8735071a2d018ee9d04297945bed00":"0x0","0x670006c4193123492fb25db465ed52e62aff2f076289f4f1a5f167237f5e579d":"0x6d616e676100000000000000000000000000000000000000000000000000000a","0x6deac161c541001c0d79afaf7b809418785fa5ca6533d86bcf312e7213ee08fc":"0x0","0x6eaa0db35203bc0d58aff54ca630dd125b27758aa6204f7a11c0617f7c2fa776":"0x706f670000000000000000000000000000000000000000000000000000000006","0x732abe4661f55132b7f119cab9a9985be6630299dfc92870cc910f147795bc44":"0x0","0x743eb517f46c12bb593097087a972028308ce2e819a76cfb5488751f9d1ca34a":"0x7265616c6d00000000000000000000000000000000000000000000000000000a","0x750dfb39c9afc828c341e1a8e8fdca0b3914baf43303e1ef21fbfe8ec8ee016a":"0x0","0x7cbf647b96a1d1a533ea4bc3a4a8a78f166bd91e6a96afb12f063fef0e9cb960":"0x0","0x7dc972254779cfb51850c0eaccfcb71207822b3c10d4840567bec3dfbf0dff13":"0x636f6d0000000000000000000000000000000000000000000000000000000006","0x7dfa160584f41570c33e8e6c42c5314a7b45ddc162f99fd101ccc10c7b5b3dd3":"0x77616c6c6574000000000000000000000000000000000000000000000000000c","0x868a5f38a2d46181ffad442d7bc5b337b3c349a58e4979f2901786c6123b996c":"0x6b6c65766572000000000000000000000000000000000000000000000000000c","0x87b2c647061aef22ef1aba96c67f440d471dfac27e9873ff4a03793b402d32ee":"0x706f6c79676f6e0000000000000000000000000000000000000000000000000e","0x893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e":"0x7c3c91245769c8b7450ad522792dec4bd4bf797f","0x91e744007b4b3621bec7c01ea851c3f48cf196b9cc6c566a48cec8c5faac6e62":"0x0","0x92c5a28dd4caaa50e0a8370243a5c600f64349e8b03604b403cbe111b50f1f7b":"0x3838380000000000000000000000000000000000000000000000000000000006","0x947936973a3a21b10c8980e1a8939a55c7339d302161884a3de05cf090e812f0":"0x1","0x9535d3ea47c5e1398d3405b4fadc73de6b1b1e6a66f674a8886ab7a6c873a390":"0x63727970746f000000000000000000000000000000000000000000000000000c","0x9956a4e94676c45844be3667f17e077c7cb53aa4e87e5a71d65e56b291232715":"0x676f000000000000000000000000000000000000000000000000000000000004","0x9c6ba1ddff1ffbc14dcdc1f97db867554a42a39e00e892c7e882dbb3dca89ebf":"0x6869000000000000000000000000000000000000000000000000000000000004","0x9f836a0f81651f597cee678b440ba8c853c633e6654809efb83d4b22aff06fb2":"0x616e696d6500000000000000000000000000000000000000000000000000000a","0x9fecf1e12f4b8ec337da992721a0f27526ddbd6be1e77885ab963c09afcf0fc1":"0x0","0xab129a0f8c6cf8d160116a28abc7369c2f8a098fc023f00f07dc3e1d5798e47a":"0x0","0xb04c0eb6f034d9a3179a4e6f953bdf8afc78ba2cdcfbc775076e1c2a0bb67818":"0x0","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xbe51b53bc2060a7a6419622b5a9adc00b50a57e6aa741882f2f60f95d4580078":"0x636c617900000000000000000000000000000000000000000000000000000008","0xbf350522e335b8ab3da1d099c93cdc09179f1e15ea6aa1acfaa4afb1ef87eabf":"0x756e73746f707061626c65000000000000000000000000000000000000000016","0xcbf7a3d53e0851ac15a415b99c2ba95a2497dd9dd44068ac261bcbdafdfe8472":"0x707564677900000000000000000000000000000000000000000000000000000a","0xcf4411216f3fdf787d1cfe037bbcfa0d5293d83a8082f8e4141266399e2a784b":"0x61757374696e000000000000000000000000000000000000000000000000000c","0xcfdbac664139565f92cce149a345e5f19355d25b3eb8a70c549d5da3283a15b8":"0x7a696c0000000000000000000000000000000000000000000000000000000006","0xcfeb64c30a93ecd7224f854b09be57bb6b3962e739fa8e3ea3a1851502474c07":"0x1","0xe03c9c593ce8661bd39f77653f7ca6c43f093aa7f3b95890f309f67b57f39e74":"0x0","0xe50c62c16d12655dfdbd61c232155e5c3a1cf61977d2d8e7449cb88611b73832":"0x0","0xeeb0b17d77f2c9069ad443f3927c0802d98d5553e52b17c985d45d4a10b79566":"0x62696e616e636575730000000000000000000000000000000000000000000012","0xf562ef0db022f25a957fb6e49aa07004f14a50ed5b23279e9ac25b4632f7bf1c":"0x0","0xf6776268d6c5847a771099280c742d684a4b22bac609ba615de51f7f893ff2bc":"0x0"}},"0x3f1194b9019002863ad0dbbe295294547c0d36a9":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100b1575f3560e01c80635b0fc9c31161006e5780635b0fc9c3146101a55780635ef2c7f0146101b8578063a22cb465146101cb578063cf408823146101de578063e985e9c5146101f1578063f79fe5381461023c575f80fd5b80630178b8bf146100b557806302571be3146100fd57806306ab59231461011057806314ab90381461013157806316a25cbd146101465780631896f70a14610192575b5f80fd5b6100e06100c3366004610785565b5f908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100e061010b366004610785565b610266565b61012361011e3660046107b7565b610292565b6040519081526020016100f4565b61014461013f366004610800565b61035f565b005b610179610154366004610785565b5f90815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100f4565b6101446101a036600461082a565b61042e565b6101446101b336600461082a565b6104ef565b6101446101c636600461084b565b61058e565b6101446101d936600461089e565b6105af565b6101446101ec3660046108d7565b61061a565b61022c6101ff366004610921565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205460ff1690565b60405190151581526020016100f4565b61022c61024a366004610785565b5f908152602081905260409020546001600160a01b0316151590565b5f818152602081905260408120546001600160a01b031630810361028c57505f92915050565b92915050565b5f8381526020819052604081205484906001600160a01b0316338114806102db57506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b6102e3575f80fd5b604080516020808201899052818301889052825180830384018152606090920190925280519101206103158186610635565b6040516001600160a01b0386168152869088907fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829060200160405180910390a39695505050505050565b5f8281526020819052604090205482906001600160a01b0316338114806103a857506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b6103b0575f80fd5b60405167ffffffffffffffff8416815284907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a250505f91825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b5f8281526020819052604090205482906001600160a01b03163381148061047757506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b61047f575f80fd5b6040516001600160a01b038416815284907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a250505f9182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b5f8281526020819052604090205482906001600160a01b03163381148061053857506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b610540575f80fd5b61054a8484610635565b6040516001600160a01b038416815284907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a250505050565b5f61059a868686610292565b90506105a7818484610662565b505050505050565b335f8181526001602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b61062484846104ef565b61062f848383610662565b50505050565b5f9182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b5f838152602081905260409020600101546001600160a01b038381169116146106e6575f838152602081815260409182902060010180546001600160a01b0319166001600160a01b038616908117909155915191825284917f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a0910160405180910390a25b5f8381526020819052604090206001015467ffffffffffffffff828116600160a01b9092041614610780575f8381526020818152604091829020600101805467ffffffffffffffff60a01b1916600160a01b67ffffffffffffffff861690810291909117909155915191825284917f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa68910160405180910390a25b505050565b5f60208284031215610795575f80fd5b5035919050565b80356001600160a01b03811681146107b2575f80fd5b919050565b5f805f606084860312156107c9575f80fd5b83359250602084013591506107e06040850161079c565b90509250925092565b803567ffffffffffffffff811681146107b2575f80fd5b5f8060408385031215610811575f80fd5b82359150610821602084016107e9565b90509250929050565b5f806040838503121561083b575f80fd5b823591506108216020840161079c565b5f805f805f60a0868803121561085f575f80fd5b85359450602086013593506108766040870161079c565b92506108846060870161079c565b9150610892608087016107e9565b90509295509295909350565b5f80604083850312156108af575f80fd5b6108b88361079c565b9150602083013580151581146108cc575f80fd5b809150509250929050565b5f805f80608085870312156108ea575f80fd5b843593506108fa6020860161079c565b92506109086040860161079c565b9150610916606086016107e9565b905092959194509250565b5f8060408385031215610932575f80fd5b61093b8361079c565b91506108216020840161079c56fea164736f6c6343000818000a","storage":{"0xdd4f47a3b6f87903b728feed7a23273bd8de58e4fa257d37a74a5881e5d92ff":"0xf670681605efc4efc804f5a9b97ee89520473d56","0x14ce109f1cffdc11aa7355660be720f902291be09fb159b4c578958cd0f533bc":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x14ce109f1cffdc11aa7355660be720f902291be09fb159b4c578958cd0f533bd":"0x0","0x1e2c8528d7e8e90443ad0a4e37b6f2b1daed719a574ce3a0c347063e8d839d50":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1e2c8528d7e8e90443ad0a4e37b6f2b1daed719a574ce3a0c347063e8d839d51":"0x0","0x2fb4213711fd985fc1fb1ea2bfa660b0b37fd50c6c74ab531d9b54b29dd5177e":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2fb4213711fd985fc1fb1ea2bfa660b0b37fd50c6c74ab531d9b54b29dd5177f":"0x0","0x859ecef2e168dc10231b000bd53493b42bc9d944cac29d94582c1e1d43592131":"0xc965345edac823d56812cd20a10316233916a605","0x8878c6daefcfc78c7f181d00d719b4a0612dd3e65cafeb72507d15c036a9f690":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0xe4fdf45c2f8d198854f8823809c7a988eeaaa493","0xfb5568c6845cf0d5915af088a5d8ba90a5ff735e102c9a79609ef7d043f1108c":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xfb5568c6845cf0d5915af088a5d8ba90a5ff735e102c9a79609ef7d043f1108d":"0x0"}},"0x4872cc1be60a9db9c880a0a437da7a6af134f08f":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100935760003560e01c80637362d9c8116100665780637362d9c8146101285780637b1039991461014e57806399e0dd7c14610172578063bb5f747b146101e2578063d6cd94731461020857610093565b806310154bad14610098578063291d9549146100c05780633af32abf146100e65780634c5a628c14610120575b600080fd5b6100be600480360360208110156100ae57600080fd5b50356001600160a01b0316610210565b005b6100be600480360360208110156100d657600080fd5b50356001600160a01b0316610260565b61010c600480360360208110156100fc57600080fd5b50356001600160a01b03166102ad565b604080519115158252519081900360200190f35b6100be6102c6565b6100be6004803603602081101561013e57600080fd5b50356001600160a01b03166102d1565b61015661031e565b604080516001600160a01b039092168252519081900360200190f35b6100be6004803603602081101561018857600080fd5b8101906020810181356401000000008111156101a357600080fd5b8201836020820111156101b557600080fd5b803590602001918460018302840111640100000000831117156101d757600080fd5b50909250905061032d565b61010c600480360360208110156101f857600080fd5b50356001600160a01b0316610404565b6100be610416565b61021933610404565b6102545760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d8161041f565b50565b61026933610404565b6102a45760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d81610467565b60006102c060018363ffffffff6104af16565b92915050565b6102cf33610516565b565b6102da33610404565b6103155760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d8161055e565b6002546001600160a01b031690565b610336336102ad565b6103715760405162461bcd60e51b815260040180806020018281038252603a815260200180610712603a913960400191505060405180910390fd5b6002546040516369426cbd60e11b8152602060048201908152602482018490526001600160a01b039092169163d284d97a91859185918190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b1580156103e857600080fd5b505af11580156103fc573d6000803e3d6000fd5b505050505050565b60006102c0818363ffffffff6104af16565b6102cf33610467565b61043060018263ffffffff6105a616565b6040516001600160a01b038216907fee1504a83b6d4a361f4c1dc78ab59bfa30d6a3b6612c403e86bb01ef2984295f90600090a250565b61047860018263ffffffff61062716565b6040516001600160a01b038216907f270d9b30cf5b0793bbfd54c9d5b94aeb49462b8148399000265144a8722da6b690600090a250565b60006001600160a01b0382166104f65760405162461bcd60e51b81526004018080602001828103825260228152602001806106b06022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b61052760008263ffffffff61062716565b6040516001600160a01b038216907f0a8eb35e5ca14b3d6f28e4abf2f128dbab231a58b56e89beb5d636115001e16590600090a250565b61056f60008263ffffffff6105a616565b6040516001600160a01b038216907f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129990600090a250565b6105b082826104af565b15610602576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b61063182826104af565b61066c5760405162461bcd60e51b815260040180806020018281038252602181526020018061068f6021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f206164647265737357686974656c69737441646d696e526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c69737441646d696e20726f6c6557686974656c6973746564526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c697374656420726f6c65a265627a7a72315820debca60946c0819dc5b5c2756c5c1dd8dd8a46f2429fa8a43a4f4362af3030c164736f6c634300050c0032","storage":{"0x2":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x5ac40fcee41fb0272a935f6e51e963102fba5db6f20e897e9361f0347eb2cae6":"0x1","0xdc4aeb95a779c8b92b845e3a94044db8ff2e43acc37da18c4b35a6bbad7c122f":"0x1"}},"0x49da8861c65460639925febe1fb4b5b59b443082":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f7e83aee1461002d575b5f80fd5b61004061003b3660046101ac565b610054565b604051901515815260200160405180910390f35b5f602082146100a95760405162461bcd60e51b815260206004820152601a60248201527f496e76616c6964207368613235362068617368206c656e677468000000000000604482015260640160405180910390fd5b6100eb5f84848080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101459050565b600286866040516100fd929190610213565b602060405180830381855afa158015610118573d5f803e3d5ffd5b5050506040513d601f19601f8201168201806040525081019061013b9190610222565b1495945050505050565b81515f90610154836020610239565b111561015e575f80fd5b50016020015190565b5f8083601f840112610177575f80fd5b50813567ffffffffffffffff81111561018e575f80fd5b6020830191508360208285010111156101a5575f80fd5b9250929050565b5f805f80604085870312156101bf575f80fd5b843567ffffffffffffffff808211156101d6575f80fd5b6101e288838901610167565b909650945060208701359150808211156101fa575f80fd5b5061020787828801610167565b95989497509550505050565b818382375f9101908152919050565b5f60208284031215610232575f80fd5b5051919050565b8082018082111561025857634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x4a3c194eb88966178bfdd81744dddafed611b830":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061009e5760003560e01c806398650275116100665780639865027514610305578063aa271e1a1461030d578063b2da297914610347578063be362e2e146103c5578063c36c2125146104fe5761009e565b80634c0b0ed2146100a35780637b103999146101595780637caf3ad81461017d5780638ad364f814610258578063983b2d56146102df575b600080fd5b610157600480360360408110156100b957600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156100e357600080fd5b8201836020820111156100f557600080fd5b803590602001918460018302840111600160201b8311171561011657600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506105bd945050505050565b005b61016161074c565b604080516001600160a01b039092168252519081900360200190f35b6101576004803603608081101561019357600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156101bd57600080fd5b8201836020820111156101cf57600080fd5b803590602001918460018302840111600160201b831117156101f057600080fd5b919390926001600160a01b0383351692604081019060200135600160201b81111561021a57600080fd5b82018360208201111561022c57600080fd5b803590602001918460018302840111600160201b8311171561024d57600080fd5b50909250905061075b565b6101576004803603606081101561026e57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561029857600080fd5b8201836020820111156102aa57600080fd5b803590602001918460018302840111600160201b831117156102cb57600080fd5b9193509150356001600160a01b0316610957565b610157600480360360208110156102f557600080fd5b50356001600160a01b0316610b2b565b610157610b7b565b6103336004803603602081101561032357600080fd5b50356001600160a01b0316610b86565b604080519115158252519081900360200190f35b6101576004803603604081101561035d57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561038757600080fd5b82018360208201111561039957600080fd5b803590602001918460018302840111600160201b831117156103ba57600080fd5b509092509050610b9e565b610157600480360360608110156103db57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561040557600080fd5b82018360208201111561041757600080fd5b803590602001918460018302840111600160201b8311171561043857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b81111561048a57600080fd5b82018360208201111561049c57600080fd5b803590602001918460018302840111600160201b831117156104bd57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610bf1945050505050565b6101576004803603606081101561051457600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561053e57600080fd5b82018360208201111561055057600080fd5b803590602001918460018302840111600160201b8311171561057157600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550505090356001600160a01b03169150610dec9050565b6105c633610b86565b6106015760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b039092169163b5466669918591849163ebf0c717916004808301926020929190829003018186803b15801561064f57600080fd5b505afa158015610663573d6000803e3d6000fd5b505050506040513d602081101561067957600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052606060448301908152875160648401528751889360840190602085019080838360005b838110156106e25781810151838201526020016106ca565b50505050905090810190601f16801561070f5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15801561073057600080fd5b505af1158015610744573d6000803e3d6000fd5b505050505050565b6001546001600160a01b031690565b6107cf8686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f89018190048102820181019092528781529250879150869081908401838280828437600092019190915250610bf192505050565b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691632525d06a91869184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b15801561082557600080fd5b505afa158015610839573d6000803e3d6000fd5b505050506040513d602081101561084f57600080fd5b5051604080516001600160e01b031960e085901b1681526004810183815260248201928352604482018d90528d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b1580156108bd57600080fd5b505afa1580156108d1573d6000803e3d6000fd5b505050506040513d60208110156108e757600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b15801561093757600080fd5b505af115801561094b573d6000803e3d6000fd5b50505050505050505050565b6109a58484848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250610bf1915050565b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691632525d06a91849184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b1580156109fb57600080fd5b505afa158015610a0f573d6000803e3d6000fd5b505050506040513d6020811015610a2557600080fd5b5051604080516001600160e01b031960e085901b1681526004810183815260248201928352604482018b90528b928b92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b158015610a9357600080fd5b505afa158015610aa7573d6000803e3d6000fd5b505050506040513d6020811015610abd57600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b158015610b0d57600080fd5b505af1158015610b21573d6000803e3d6000fd5b5050505050505050565b610b3433610b86565b610b6f5760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b610b7881611115565b50565b610b843361115d565b565b6000610b98818363ffffffff6111a516565b92915050565b610bec8383838080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250610bf1915050565b505050565b610bfa33610b86565b610c355760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691630467e014918691849163ebf0c717916004808301926020929190829003018186803b158015610c8357600080fd5b505afa158015610c97573d6000803e3d6000fd5b505050506040513d6020811015610cad57600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052608060448301908152885160848401528851899389939291606482019160a40190602087019080838360005b83811015610d1f578181015183820152602001610d07565b50505050905090810190601f168015610d4c5780820380516001836020036101000a031916815260200191505b50838103825284518152845160209182019186019080838360005b83811015610d7f578181015183820152602001610d67565b50505050905090810190601f168015610dac5780820380516001836020036101000a031916815260200191505b509650505050505050600060405180830381600087803b158015610dcf57600080fd5b505af1158015610de3573d6000803e3d6000fd5b50505050505050565b610df533610b86565b610e305760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b039092169163b5466669918691849163ebf0c717916004808301926020929190829003018186803b158015610e7e57600080fd5b505afa158015610e92573d6000803e3d6000fd5b505050506040513d6020811015610ea857600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052606060448301908152885160648401528851899360840190602085019080838360005b83811015610f11578181015183820152602001610ef9565b50505050905090810190601f168015610f3e5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015610f5f57600080fd5b505af1158015610f73573d6000803e3d6000fd5b50506001546040805163ebf0c71760e01b815290516001600160a01b039092169350632525d06a9250849184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b158015610fcd57600080fd5b505afa158015610fe1573d6000803e3d6000fd5b505050506040513d6020811015610ff757600080fd5b5051604080516001600160e01b031960e085901b16815260048101838152602482019283528a5160448301528a518b93919260640190602085019080838360005b83811015611050578181015183820152602001611038565b50505050905090810190601f16801561107d5780820380516001836020036101000a031916815260200191505b50935050505060206040518083038186803b15801561109b57600080fd5b505afa1580156110af573d6000803e3d6000fd5b505050506040513d60208110156110c557600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b158015610dcf57600080fd5b61112660008263ffffffff61120c16565b6040516001600160a01b038216907f6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f690600090a250565b61116e60008263ffffffff61128d16565b6040516001600160a01b038216907fe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb6669290600090a250565b60006001600160a01b0382166111ec5760405162461bcd60e51b81526004018080602001828103825260228152602001806113466022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b61121682826111a5565b15611268576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b61129782826111a5565b6112d25760405162461bcd60e51b81526004018080602001828103825260218152602001806113256021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe4d696e746572526f6c653a2063616c6c657220646f6573206e6f74206861766520746865204d696e74657220726f6c65526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f2061646472657373a265627a7a72315820c058d70355f7d37ff6b3b61cd850cc4a41893e30048389698c062148bf3d2ff464736f6c634300050c0032","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x789b49055833748af4eaa9affbcd84118ce8770f7e4385b5a3f428626b1f0aff":"0x1","0xdc4aeb95a779c8b92b845e3a94044db8ff2e43acc37da18c4b35a6bbad7c122f":"0x1"}},"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061007b5760003560e01c80639623609d1161004e5780639623609d1461011157806399a88ec414610124578063f2fde38b14610144578063f3b7dead1461016457600080fd5b8063204e1c7a14610080578063715018a6146100bc5780637eff275e146100d35780638da5cb5b146100f3575b600080fd5b34801561008c57600080fd5b506100a061009b366004610499565b610184565b6040516001600160a01b03909116815260200160405180910390f35b3480156100c857600080fd5b506100d1610215565b005b3480156100df57600080fd5b506100d16100ee3660046104bd565b610229565b3480156100ff57600080fd5b506000546001600160a01b03166100a0565b6100d161011f36600461050c565b610291565b34801561013057600080fd5b506100d161013f3660046104bd565b610300565b34801561015057600080fd5b506100d161015f366004610499565b610336565b34801561017057600080fd5b506100a061017f366004610499565b6103b4565b6000806000836001600160a01b03166040516101aa90635c60da1b60e01b815260040190565b600060405180830381855afa9150503d80600081146101e5576040519150601f19603f3d011682016040523d82523d6000602084013e6101ea565b606091505b5091509150816101f957600080fd5b8080602001905181019061020d91906105e2565b949350505050565b61021d6103da565b6102276000610434565b565b6102316103da565b6040516308f2839760e41b81526001600160a01b038281166004830152831690638f283970906024015b600060405180830381600087803b15801561027557600080fd5b505af1158015610289573d6000803e3d6000fd5b505050505050565b6102996103da565b60405163278f794360e11b81526001600160a01b03841690634f1ef2869034906102c990869086906004016105ff565b6000604051808303818588803b1580156102e257600080fd5b505af11580156102f6573d6000803e3d6000fd5b5050505050505050565b6103086103da565b604051631b2ce7f360e11b81526001600160a01b038281166004830152831690633659cfe69060240161025b565b61033e6103da565b6001600160a01b0381166103a85760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b6103b181610434565b50565b6000806000836001600160a01b03166040516101aa906303e1469160e61b815260040190565b6000546001600160a01b031633146102275760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161039f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146103b157600080fd5b6000602082840312156104ab57600080fd5b81356104b681610484565b9392505050565b600080604083850312156104d057600080fd5b82356104db81610484565b915060208301356104eb81610484565b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561052157600080fd5b833561052c81610484565b9250602084013561053c81610484565b9150604084013567ffffffffffffffff8082111561055957600080fd5b818601915086601f83011261056d57600080fd5b81358181111561057f5761057f6104f6565b604051601f8201601f19908116603f011681019083821181831017156105a7576105a76104f6565b816040528281528960208487010111156105c057600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000602082840312156105f457600080fd5b81516104b681610484565b60018060a01b038316815260006020604081840152835180604085015260005b8181101561063b5785810183015185820160600152820161061f565b8181111561064d576000606083870101525b50601f01601f19169290920160600194935050505056fea26469706673582212207ad53e1008cce369999f6b5f2f77109510b404ff1de9b47b639981fd68e6239264736f6c63430008090033","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x4e59b44847b379578588920ca78fbf26c0b4956c":{"nonce":0,"balance":"0x0","code":"0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe03601600081602082378035828234f58015156039578182fd5b8082525050506014600cf3","storage":{}},"0x4eb9de1fc0d800e941f326d6699e9e11969557ea":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063100cdd911461002d575b5f80fd5b61004061003b3660046102cd565b610042565b005b5f5b818110156101b8575f7f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e28484848181106100805761008061033c565b905060200201356040516020016100a1929190918252602082015260400190565b60408051808303601f190181529082905280516020909101206331a9108f60e11b82526004820181905291507f000000000000000000000000107733fed96c4cd390c944a31f5425a7fb98ae5e6001600160a01b0316906323b872dd908290636352211e90602401602060405180830381865afa158015610124573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101489190610350565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015261dead6024820152604481018490526064015f604051808303815f87803b158015610195575f80fd5b505af11580156101a7573d5f803e3d5ffd5b505060019093019250610044915050565b5080156102c9577f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e282826101ed60018261037d565b8181106101fc576101fc61033c565b9050602002013560405160200161021d929190918252602082015260400190565b604051602081830303815290604052805190602001205f1c7f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e283835f8181106102685761026861033c565b90506020020135604051602001610289929190918252602082015260400190565b60408051601f19818403018152908290528051602090910120907fdf423376f9b0ab363b1b4d6f0b4cb6821921ec30f491555a97236a8a38ce095a905f90a35b5050565b5f80602083850312156102de575f80fd5b823567ffffffffffffffff808211156102f5575f80fd5b818501915085601f830112610308575f80fd5b813581811115610316575f80fd5b8660208260051b850101111561032a575f80fd5b60209290920196919550909350505050565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215610360575f80fd5b81516001600160a01b0381168114610376575f80fd5b9392505050565b8181038181111561039c57634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x4fbf7b2f171336958be5d15ff762a5cff5363568":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061011b575f3560e01c80638d839ffe1161009d578063aeb8ce9b11610062578063aeb8ce9b14610356578063ce1e09c014610375578063d3419bf3146103a8578063f14fcbc8146103db578063f2fde38b146103fa575f80fd5b80638d839ffe146102a25780638da5cb5b146102d55780639791c097146102f1578063a8e5fbc014610310578063acf1a84114610343575f80fd5b806374694a2b116100e357806374694a2b146101c957806380869853146101dc578063839df9451461022757806383e7f6ff146102525780638a95b09f1461028c575f80fd5b806301ffc9a71461011f5780633ccfd60b146101535780635d3590d51461016957806365a69dcf14610188578063715018a6146101b5575b5f80fd5b34801561012a575f80fd5b5061013e610139366004611145565b610419565b60405190151581526020015b60405180910390f35b34801561015e575f80fd5b5061016761044f565b005b348015610174575f80fd5b50610167610183366004611187565b610489565b348015610193575f80fd5b506101a76101a23660046112e4565b610507565b60405190815260200161014a565b3480156101c0575f80fd5b5061016761058b565b6101676101d73660046113db565b61059e565b3480156101e7575f80fd5b5061020f7f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5681565b6040516001600160a01b03909116815260200161014a565b348015610232575f80fd5b506101a761024136600461149d565b60016020525f908152604090205481565b34801561025d575f80fd5b5061027161026c3660046114b4565b610894565b6040805182518152602092830151928101929092520161014a565b348015610297575f80fd5b506101a76224ea0081565b3480156102ad575f80fd5b506101a77f000000000000000000000000000000000000000000000000000000000000025881565b3480156102e0575f80fd5b505f546001600160a01b031661020f565b3480156102fc575f80fd5b5061013e61030b3660046114f6565b6109c9565b34801561031b575f80fd5b5061020f7f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e1841720481565b610167610351366004611528565b6109dd565b348015610361575f80fd5b5061013e6103703660046114f6565b610b7b565b348015610380575f80fd5b506101a77f000000000000000000000000000000000000000000000000000000000001518081565b3480156103b3575f80fd5b5061020f7f000000000000000000000000ec71e4e674fe0f432693dc2b935c34bd2774c00381565b3480156103e6575f80fd5b506101676103f536600461149d565b610c22565b348015610405575f80fd5b50610167610414366004611570565b610c95565b5f6001600160e01b031982166301ffc9a760e01b148061044957506001600160e01b0319821663612e8c0960e01b145b92915050565b5f80546040516001600160a01b03909116914780156108fc02929091818181858888f19350505050158015610486573d5f803e3d5ffd5b50565b610491610d0b565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af11580156104dd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105019190611589565b50505050565b885160208a01205f90841580159061052657506001600160a01b038716155b15610544576040516334fd817160e21b815260040160405180910390fd5b808a8a8a8a8a8a8a8a6040516020016105659998979695949392919061165e565b604051602081830303815290604052805190602001209150509998505050505050505050565b610593610d0b565b61059c5f610d64565b565b5f6105df8b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c9250610894915050565b602081015181519192506105f2916116d5565b3410156106125760405163044044a560e21b815260040160405180910390fd5b6106b38b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f82011690508083019250505050505050896106ae8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f820116905080830192505050505050508d8d8d8d8d8d8d8d610507565b610db3565b604051635200a4c160e11b81525f906001600160a01b037f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e18417204169063a40149829061070b908f908f908f908f908e908b906004016116e8565b6020604051808303815f875af1158015610727573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061074b9190611732565b9050841561077657610776878d8d604051610767929190611749565b60405180910390208888610ece565b83156107be576107be8c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508b9250339150610f939050565b896001600160a01b03168c8c6040516107d8929190611749565b60405180910390207f69e37f151eb98a09618ddaa80c8cfaf1ce5996867c489f45b555b412271ebf278e8e865f015187602001518760405161081e959493929190611758565b60405180910390a36020820151825161083791906116d5565b341115610886576020820151825133916108fc9161085591906116d5565b61085f9034611788565b6040518115909202915f818181858888f19350505050158015610884573d5f803e3d5ffd5b505b505050505050505050505050565b604080518082019091525f808252602082015282516020840120604051636b727d4360e11b8152600481018290527f000000000000000000000000ec71e4e674fe0f432693dc2b935c34bd2774c0036001600160a01b03908116916350e9a7159187917f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063d6e4fa8690602401602060405180830381865afa158015610940573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109649190611732565b866040518463ffffffff1660e01b8152600401610983939291906117e8565b6040805180830381865afa15801561099d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109c1919061180c565b949350505050565b5f60036109d583611044565b101592915050565b5f83836040516109ee929190611749565b604080519182900382206020601f8701819004810284018101909252858352925082915f91610a39919088908890819084018382808284375f92019190915250889250610894915050565b8051909150341015610a5e5760405163044044a560e21b815260040160405180910390fd5b60405163c475abff60e01b815260048101839052602481018590525f907f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b03169063c475abff906044016020604051808303815f875af1158015610acb573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610aef9190611732565b8251909150341115610b3457815133906108fc90610b0d9034611788565b6040518115909202915f818181858888f19350505050158015610b32573d5f803e3d5ffd5b505b837f3da24c024582931cfaf8267d8ed24d13a82a8068d5bd337d30ec45cea4e506ae88883485604051610b6a9493929190611859565b60405180910390a250505050505050565b805160208201205f90610b8d836109c9565b8015610c1b57506040516312dc929d60e31b8152600481018290527f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b0316906396e494e890602401602060405180830381865afa158015610bf7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c1b9190611589565b9392505050565b5f818152600160205260409020544290610c5d907f0000000000000000000000000000000000000000000000000000000000015180906116d5565b10610c8357604051630a059d7160e01b8152600481018290526024015b60405180910390fd5b5f908152600160205260409020429055565b610c9d610d0b565b6001600160a01b038116610d025760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610c7a565b61048681610d64565b5f546001600160a01b0316331461059c5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610c7a565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f818152600160205260409020544290610dee907f0000000000000000000000000000000000000000000000000000000000000258906116d5565b1115610e1057604051635320bcf960e01b815260048101829052602401610c7a565b5f818152600160205260409020544290610e4b907f0000000000000000000000000000000000000000000000000000000000015180906116d5565b11610e6c5760405163cb7690d760e01b815260048101829052602401610c7a565b610e7583610b7b565b610e9457826040516308eee0fd60e31b8152600401610c7a919061187f565b5f818152600160205260408120556224ea00821015610ec957604051639a71997b60e01b815260048101839052602401610c7a565b505050565b604080517f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae6020808301919091528183018690528251808303840181526060830193849052805191012063e32954eb60e01b90925285906001600160a01b0382169063e32954eb90610f4890859088908890606401611891565b5f604051808303815f875af1158015610f63573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052610f8a91908101906118b3565b50505050505050565b7f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d566001600160a01b0316637a806d6b33838587604051602001610fd691906119a7565b6040516020818303038152906040526040518563ffffffff1660e01b815260040161100494939291906119ce565b6020604051808303815f875af1158015611020573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105019190611732565b80515f90819081905b8082101561113c575f85838151811061106857611068611a0b565b01602001516001600160f81b0319169050600160ff1b811015611097576110906001846116d5565b9250611129565b600760fd1b6001600160f81b0319821610156110b8576110906002846116d5565b600f60fc1b6001600160f81b0319821610156110d9576110906003846116d5565b601f60fb1b6001600160f81b0319821610156110fa576110906004846116d5565b603f60fa1b6001600160f81b03198216101561111b576110906005846116d5565b6111266006846116d5565b92505b508261113481611a1f565b93505061104d565b50909392505050565b5f60208284031215611155575f80fd5b81356001600160e01b031981168114610c1b575f80fd5b80356001600160a01b0381168114611182575f80fd5b919050565b5f805f60608486031215611199575f80fd5b6111a28461116c565b92506111b06020850161116c565b9150604084013590509250925092565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff811182821017156111fd576111fd6111c0565b604052919050565b5f67ffffffffffffffff82111561121e5761121e6111c0565b50601f01601f191660200190565b5f82601f83011261123b575f80fd5b813561124e61124982611205565b6111d4565b818152846020838601011115611262575f80fd5b816020850160208301375f918101602001919091529392505050565b5f8083601f84011261128e575f80fd5b50813567ffffffffffffffff8111156112a5575f80fd5b6020830191508360208260051b85010111156112bf575f80fd5b9250929050565b8015158114610486575f80fd5b803561ffff81168114611182575f80fd5b5f805f805f805f805f6101008a8c0312156112fd575f80fd5b893567ffffffffffffffff80821115611314575f80fd5b6113208d838e0161122c565b9a5061132e60208d0161116c565b995060408c0135985060608c0135975061134a60808d0161116c565b965060a08c013591508082111561135f575f80fd5b5061136c8c828d0161127e565b90955093505060c08a0135611380816112c6565b915061138e60e08b016112d3565b90509295985092959850929598565b5f8083601f8401126113ad575f80fd5b50813567ffffffffffffffff8111156113c4575f80fd5b6020830191508360208285010111156112bf575f80fd5b5f805f805f805f805f806101008b8d0312156113f5575f80fd5b8a3567ffffffffffffffff8082111561140c575f80fd5b6114188e838f0161139d565b909c509a508a915061142c60208e0161116c565b995060408d0135985060608d0135975061144860808e0161116c565b965060a08d013591508082111561145d575f80fd5b5061146a8d828e0161127e565b90955093505060c08b013561147e816112c6565b915061148c60e08c016112d3565b90509295989b9194979a5092959850565b5f602082840312156114ad575f80fd5b5035919050565b5f80604083850312156114c5575f80fd5b823567ffffffffffffffff8111156114db575f80fd5b6114e78582860161122c565b95602094909401359450505050565b5f60208284031215611506575f80fd5b813567ffffffffffffffff81111561151c575f80fd5b6109c18482850161122c565b5f805f6040848603121561153a575f80fd5b833567ffffffffffffffff811115611550575f80fd5b61155c8682870161139d565b909790965060209590950135949350505050565b5f60208284031215611580575f80fd5b610c1b8261116c565b5f60208284031215611599575f80fd5b8151610c1b816112c6565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b5f838385526020808601955060208560051b830101845f5b8781101561165157848303601f19018952813536889003601e19018112611609575f80fd5b8701848101903567ffffffffffffffff811115611624575f80fd5b803603821315611632575f80fd5b61163d8582846115a4565b9a86019a94505050908301906001016115e4565b5090979650505050505050565b8981526001600160a01b03898116602083015260408201899052606082018890528616608082015261010060a082018190525f9061169f83820187896115cc565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610449576104496116c1565b60a081525f6116fb60a08301888a6115a4565b6001600160a01b03968716602084015260408301959095525091909316606082015261ffff90921660809092019190915292915050565b5f60208284031215611742575f80fd5b5051919050565b818382375f9101908152919050565b608081525f61176b6080830187896115a4565b602083019590955250604081019290925260609091015292915050565b81810381811115610449576104496116c1565b5f5b838110156117b557818101518382015260200161179d565b50505f910152565b5f81518084526117d481602086016020860161179b565b601f01601f19169290920160200192915050565b606081525f6117fa60608301866117bd565b60208301949094525060400152919050565b5f6040828403121561181c575f80fd5b6040516040810181811067ffffffffffffffff8211171561183f5761183f6111c0565b604052825181526020928301519281019290925250919050565b606081525f61186c6060830186886115a4565b6020830194909452506040015292915050565b602081525f610c1b60208301846117bd565b838152604060208201525f6118aa6040830184866115cc565b95945050505050565b5f60208083850312156118c4575f80fd5b825167ffffffffffffffff808211156118db575f80fd5b818501915085601f8301126118ee575f80fd5b815181811115611900576119006111c0565b8060051b61190f8582016111d4565b9182528381018501918581019089841115611928575f80fd5b86860192505b8383101561199a57825185811115611944575f80fd5b8601603f81018b13611954575f80fd5b87810151604061196661124983611205565b8281528d82848601011115611979575f80fd5b611988838c830184870161179b565b8552505050918601919086019061192e565b9998505050505050505050565b5f82516119b881846020870161179b565b6305ccae8d60e31b920191825250600401919050565b6001600160a01b0385811682528481166020830152831660408201526080606082018190525f90611a01908301846117bd565b9695505050505050565b634e487b7160e01b5f52603260045260245ffd5b5f60018201611a3057611a306116c1565b506001019056fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x5155f5627bdf9795b3dbb8887001ada1eeba93f2":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063de8f50a11461002d575b5f80fd5b61004761003b3660046100a0565b60019695505050505050565b604051901515815260200160405180910390f35b5f8083601f84011261006b575f80fd5b50813567ffffffffffffffff811115610082575f80fd5b602083019150836020828501011115610099575f80fd5b9250929050565b5f805f805f80606087890312156100b5575f80fd5b863567ffffffffffffffff808211156100cc575f80fd5b6100d88a838b0161005b565b909850965060208901359150808211156100f0575f80fd5b6100fc8a838b0161005b565b90965094506040890135915080821115610114575f80fd5b5061012189828a0161005b565b979a969950949750929593949250505056fea164736f6c6343000818000a","storage":{}},"0x54563a9e1cd2dcbd0bca90d3cfa4a647e02c404a":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106101db575f3560e01c80638da5cb5b116100fd578063c4d66de811610092578063daea85c511610062578063daea85c51461055e578063e7acab241461057d578063f2fde38b1461059c578063ffa1ad74146105bb575f80fd5b8063c4d66de8146104e1578063d539139314610500578063d547741f14610520578063d9caed121461053f575f80fd5b8063a217fddf116100cd578063a217fddf14610452578063a3f4df7e14610465578063a4247400146104a3578063aa271e1a146104c2575f80fd5b80638da5cb5b146103d957806391d1485414610400578063983b2d561461041f578063986502751461043e575f80fd5b80635c975abb11610173578063715018a611610143578063715018a61461037f57806371e2a6571461039357806381c81d35146103b25780638456cb59146103c5575f80fd5b80635c975abb146103165780635fc1964f1461032e578063634486da1461034d5780636ccbae5f14610360575f80fd5b80633092afd5116101ae5780633092afd51461029c57806336568abe146102bb5780633f4ba83a146102da578063572b6c05146102ee575f80fd5b806301ffc9a7146101df5780631bf7e13e14610213578063248a9ca31461023f5780632f2ff15d1461027b575b5f80fd5b3480156101ea575f80fd5b506101fe6101f9366004611ee0565b6105eb565b60405190151581526020015b60405180910390f35b34801561021e575f80fd5b5061023261022d366004611f07565b610621565b60405161020a9190611fe9565b34801561024a575f80fd5b5061026d610259366004611ffb565b5f90815260fb602052604090206001015490565b60405190815260200161020a565b348015610286575f80fd5b5061029a610295366004612036565b6106ea565b005b3480156102a7575f80fd5b5061029a6102b6366004612064565b610713565b3480156102c6575f80fd5b5061029a6102d5366004612036565b610727565b3480156102e5575f80fd5b5061029a6107ba565b3480156102f9575f80fd5b506101fe610308366004612064565b6001600160a01b0316301490565b348015610321575f80fd5b5061012d5460ff166101fe565b348015610339575f80fd5b5061029a6103483660046120eb565b6107d4565b61029a61035b366004612064565b610811565b34801561036b575f80fd5b5061026d61037a366004611ffb565b6108d1565b34801561038a575f80fd5b5061029a61092a565b34801561039e575f80fd5b5061029a6103ad3660046120eb565b61093b565b61029a6103c0366004612064565b610978565b3480156103d0575f80fd5b5061029a6109f5565b3480156103e4575f80fd5b506097546040516001600160a01b03909116815260200161020a565b34801561040b575f80fd5b506101fe61041a366004612036565b610a0d565b34801561042a575f80fd5b5061029a610439366004612064565b610a37565b348015610449575f80fd5b5061029a610a48565b34801561045d575f80fd5b5061026d5f81565b348015610470575f80fd5b506102326040518060400160405280601381526020017229b2b0b837b93a10283937bc3c90213abcb2b960691b81525081565b3480156104ae575f80fd5b506101fe6104bd366004611f07565b610a61565b3480156104cd575f80fd5b506101fe6104dc366004612064565b610ab2565b3480156104ec575f80fd5b5061029a6104fb366004612064565b610aca565b34801561050b575f80fd5b5061026d5f80516020612ea783398151915281565b34801561052b575f80fd5b5061029a61053a366004612036565b610c21565b34801561054a575f80fd5b5061029a61055936600461218b565b610c45565b348015610569575f80fd5b5061029a610578366004612064565b610cf7565b348015610588575f80fd5b506101fe6105973660046121c9565b610dac565b3480156105a7575f80fd5b5061029a6105b6366004612064565b6111db565b3480156105c6575f80fd5b5061023260405180604001604052806005815260200164302e302e3160d81b81525081565b5f6001600160e01b03198216637965db0b60e01b148061061b57506301ffc9a760e01b6001600160e01b03198316145b92915050565b60605f5a9050610632858585610a61565b61064f57604051638baa579f60e01b815260040160405180910390fd5b6106df61065f6020870187612064565b3060408801358461067360608b018b61227b565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f920191909152506111f692505050565b9150505b9392505050565b5f82815260fb6020526040902060010154610704816112d4565b61070e83836112e5565b505050565b61071b61136b565b610724816113e4565b50565b61072f6113fb565b6001600160a01b0316816001600160a01b0316146107ac5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6107b68282611409565b5050565b6107c261136b565b6107ca61148d565b6107d26114d7565b565b6107dc61136b565b5f5b81518110156107b6576108098282815181106107fc576107fc6122bd565b60200260200101516113e4565b6001016107de565b61081c6104dc6113fb565b6108385760405162461bcd60e51b81526004016107a3906122d1565b6001600160a01b03811661088e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016107a3565b61089781611530565b61089f610a48565b6040516001600160a01b038216903480156108fc02915f818181858888f193505050501580156107b6573d5f803e3d5ffd5b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f90610923906060016040516020818303038152906040528051906020012090565b5492915050565b61093261136b565b6107d25f611547565b61094361136b565b5f5b81518110156107b657610970828281518110610963576109636122bd565b6020026020010151611530565b600101610945565b6109836104dc6113fb565b61099f5760405162461bcd60e51b81526004016107a3906122d1565b6001600160a01b0381166108975760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016107a3565b6109fd61136b565b610a05611598565b6107d26115df565b5f91825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610a3f61136b565b61072481611530565b6107d25f80516020612ea78339815191526102d56113fb565b5f610aaa610a6e85612306565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061161e92505050565b949350505050565b5f61061b5f80516020612ea783398151915283610a0d565b5f54610100900460ff1615808015610ae857505f54600160ff909116105b80610b015750303b158015610b0157505f5460ff166001145b610b645760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107a3565b5f805460ff191660011790558015610b85575f805461ff0019166101001790555b61015f80546001600160a01b0319166001600160a01b038416179055610ba9611759565b610bb1611786565b610bb9611786565b610bc1611786565b610bc96117ac565b610bd16117e2565b610bd9611819565b80156107b6575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b5f82815260fb6020526040902060010154610c3b816112d4565b61070e8383611409565b610c4d61136b565b600260335403610c6f5760405162461bcd60e51b81526004016107a3906123c2565b6002603355610c7c611598565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af1158015610cc8573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cec91906123f9565b505060016033555050565b610cff61136b565b600260335403610d215760405162461bcd60e51b81526004016107a3906123c2565b6002603355610d2e611598565b61015f5460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529082169063095ea7b3906044016020604051808303815f875af1158015610d7f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610da391906123f9565b50506001603355565b5f610db86104dc6113fb565b610dd45760405162461bcd60e51b81526004016107a3906122d1565b600260335403610df65760405162461bcd60e51b81526004016107a3906123c2565b6002603355610e03611598565b6001600160a01b038216610e2a576040516311d000e160e31b815260040160405180910390fd5b30610e358780612418565b610e46906040810190602001612064565b6001600160a01b031614610e6d57604051639d3c586b60e01b815260040160405180910390fd5b610e75611e67565b610e7f8780612418565b610e8d906020810190612064565b6001600160a01b03168152610ea28780612418565b610eb3906040810190602001612064565b6001600160a01b03166020820152610ecb8780612418565b610ed9906040810190612437565b808060200260200160405190810160405280939291908181526020015f905b82821015610f2457610f1560a08302860136819003810190612489565b81526020019060010190610ef8565b50505050506040820152610f388780612418565b610f46906060810190612506565b808060200260200160405190810160405280939291908181526020015f905b82821015610f9157610f8260c0830286013681900381019061254a565b81526020019060010190610f65565b50505050506060820152610fa58780612418565b610fb69060a08101906080016125e5565b81608001906004811115610fcc57610fcc6125fe565b90816004811115610fdf57610fdf6125fe565b905250610fec8780612418565b60a090810135908201526110008780612418565b60c090810135908201526110148780612418565b60e090810135908201526110288780612418565b610100908101359082015261103d8780612418565b610120908101359082015261015f54815160405163f07ec37360e01b81526001600160a01b03918216600482015291169063f07ec37390602401602060405180830381865afa158015611092573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110b69190612612565b61014082015261015f546040516379df72bd60e01b8152611133916001600160a01b0316906379df72bd906110ef908590600401612737565b602060405180830381865afa15801561110a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061112e9190612612565b61184c565b61015f546040516339eb2ac960e21b81526001600160a01b039091169063e7acab249061116c908a908a908a908a908a90600401612b24565b6020604051808303815f875af1158015611188573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111ac91906123f9565b9150816111cc57604051636725093760e01b815260040160405180910390fd5b50600160335595945050505050565b6111e361136b565b6111ec81611865565b6107245f826118db565b6060611201856118e5565b5f80876001600160a01b03168661121a8b8a898961194a565b6040516112279190612cfa565b5f604051808303815f8787f1925050503d805f8114611261576040519150601f19603f3d011682016040523d82523d5f602084013e611266565b606091505b509092509050611277603f87612d1f565b5a1161128557611285612d3e565b6112c582826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061197a565b925050505b9695505050505050565b610724816112e06113fb565b6119b3565b6112ef8282610a0d565b6107b6575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191660011790556113276113fb565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6113736113fb565b6001600160a01b031661138e6097546001600160a01b031690565b6001600160a01b0316146107d25760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107a3565b6107245f80516020612ea783398151915282610c21565b5f611404611a17565b905090565b6114138282610a0d565b156107b6575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191690556114496113fb565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b61012d5460ff166107d25760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b60448201526064016107a3565b6114df61148d565b61012d805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6115136113fb565b6040516001600160a01b03909116815260200160405180910390a1565b6107245f80516020612ea7833981519152826118db565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b61012d5460ff16156107d25760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b60448201526064016107a3565b6115e7611598565b61012d805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586115136113fb565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015611662573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116869190612612565b90505f6117338660600151805190602001208688602001516040516020016116d39392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156112ca575085516112ca906001600160a01b03168286611a34565b5f54610100900460ff1661177f5760405162461bcd60e51b81526004016107a390612d52565b6001603355565b5f54610100900460ff166107d25760405162461bcd60e51b81526004016107a390612d52565b5f54610100900460ff166117d25760405162461bcd60e51b81526004016107a390612d52565b6107d26117dd6113fb565b611547565b5f54610100900460ff166118085760405162461bcd60e51b81526004016107a390612d52565b6107d25f6118146113fb565b6118db565b5f54610100900460ff1661183f5760405162461bcd60e51b81526004016107a390612d52565b61012d805460ff19169055565b30330361185c5761072481611b6f565b610724816118e5565b61186d61136b565b6001600160a01b0381166118d25760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107a3565b61072481611547565b6107b682826112e5565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f906060016040516020818303038152906040528051906020012090506119398190565b54611945906001612d9d565b905550565b606082858560405160200161196193929190612db0565b6040516020818303038152906040529050949350505050565b606083156119895750816106e3565b8251156119995782518084602001fd5b8160405162461bcd60e51b81526004016107a39190611fe9565b6119bd8282610a0d565b6107b6576119d5816001600160a01b03166014611b99565b6119e0836020611b99565b6040516020016119f1929190612dee565b60408051601f198184030181529082905262461bcd60e51b82526107a391600401611fe9565b5f303303611a2c575060331936013560601c90565b503390565b90565b5f805f611a418585611d2e565b90925090505f816004811115611a5957611a596125fe565b148015611a775750856001600160a01b0316826001600160a01b0316145b15611a87576001925050506106e3565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401611aae929190612e62565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051611aec9190612cfa565b5f60405180830381855afa9150503d805f8114611b24576040519150601f19603f3d011682016040523d82523d5f602084013e611b29565b606091505b5091509150818015611b3c575080516020145b8015611b6357508051630b135d3f60e11b90611b619083016020908101908401612612565b145b98975050505050505050565b611b77611d70565b811461072457604051635637b6af60e11b8152600481018290526024016107a3565b60605f611ba7836002612e7a565b611bb2906002612d9d565b6001600160401b03811115611bc957611bc961207f565b6040519080825280601f01601f191660200182016040528015611bf3576020820181803683370190505b509050600360fc1b815f81518110611c0d57611c0d6122bd565b60200101906001600160f81b03191690815f1a905350600f60fb1b81600181518110611c3b57611c3b6122bd565b60200101906001600160f81b03191690815f1a9053505f611c5d846002612e7a565b611c68906001612d9d565b90505b6001811115611cdf576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611c9c57611c9c6122bd565b1a60f81b828281518110611cb257611cb26122bd565b60200101906001600160f81b03191690815f1a90535060049490941c93611cd881612e91565b9050611c6b565b5083156106e35760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016107a3565b5f808251604103611d62576020830151604084015160608501515f1a611d5687828585611d82565b94509450505050611d69565b505f905060025b9250929050565b5f303303611a315750601f1936013590565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115611db757505f90506003611e5e565b8460ff16601b14158015611dcf57508460ff16601c14155b15611ddf57505f90506004611e5e565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015611e30573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b038116611e58575f60019250925050611e5e565b91505f90505b94509492505050565b6040518061016001604052805f6001600160a01b031681526020015f6001600160a01b0316815260200160608152602001606081526020015f6004811115611eb157611eb16125fe565b81525f6020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b5f60208284031215611ef0575f80fd5b81356001600160e01b0319811681146106e3575f80fd5b5f805f60408486031215611f19575f80fd5b83356001600160401b0380821115611f2f575f80fd5b9085019060808288031215611f42575f80fd5b90935060208501359080821115611f57575f80fd5b818601915086601f830112611f6a575f80fd5b813581811115611f78575f80fd5b876020828501011115611f89575f80fd5b6020830194508093505050509250925092565b5f5b83811015611fb6578181015183820152602001611f9e565b50505f910152565b5f8151808452611fd5816020860160208601611f9c565b601f01601f19169290920160200192915050565b602081525f6106e36020830184611fbe565b5f6020828403121561200b575f80fd5b5035919050565b6001600160a01b0381168114610724575f80fd5b803561203181612012565b919050565b5f8060408385031215612047575f80fd5b82359150602083013561205981612012565b809150509250929050565b5f60208284031215612074575f80fd5b81356106e381612012565b634e487b7160e01b5f52604160045260245ffd5b604051608081016001600160401b03811182821017156120b5576120b561207f565b60405290565b604051601f8201601f191681016001600160401b03811182821017156120e3576120e361207f565b604052919050565b5f60208083850312156120fc575f80fd5b82356001600160401b0380821115612112575f80fd5b818501915085601f830112612125575f80fd5b8135818111156121375761213761207f565b8060051b91506121488483016120bb565b8181529183018401918481019088841115612161575f80fd5b938501935b83851015611b63578435925061217b83612012565b8282529385019390850190612166565b5f805f6060848603121561219d575f80fd5b83356121a881612012565b925060208401356121b881612012565b929592945050506040919091013590565b5f805f805f608086880312156121dd575f80fd5b85356001600160401b03808211156121f3575f80fd5b9087019060a0828a031215612206575f80fd5b9095506020870135908082111561221b575f80fd5b818801915088601f83011261222e575f80fd5b81358181111561223c575f80fd5b8960208260051b8501011115612250575f80fd5b6020830196508095505050506040860135915061226f60608701612026565b90509295509295909350565b5f808335601e19843603018112612290575f80fd5b8301803591506001600160401b038211156122a9575f80fd5b602001915036819003821315611d69575f80fd5b634e487b7160e01b5f52603260045260245ffd5b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b5f60808236031215612316575f80fd5b61231e612093565b823561232981612012565b8152602083810135818301526040808501359083015260608401356001600160401b0380821115612358575f80fd5b9085019036601f83011261236a575f80fd5b81358181111561237c5761237c61207f565b61238e601f8201601f191685016120bb565b915080825236848285010111156123a3575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b5f60208284031215612409575f80fd5b815180151581146106e3575f80fd5b5f823561015e1983360301811261242d575f80fd5b9190910192915050565b5f808335601e1984360301811261244c575f80fd5b8301803591506001600160401b03821115612465575f80fd5b602001915060a081023603821315611d69575f80fd5b803560068110612031575f80fd5b5f60a08284031215612499575f80fd5b60405160a081018181106001600160401b03821117156124bb576124bb61207f565b6040526124c78361247b565b815260208301356124d781612012565b806020830152506040830135604082015260608301356060820152608083013560808201528091505092915050565b5f808335601e1984360301811261251b575f80fd5b8301803591506001600160401b03821115612534575f80fd5b602001915060c081023603821315611d69575f80fd5b5f60c0828403121561255a575f80fd5b60405160c081018181106001600160401b038211171561257c5761257c61207f565b6040526125888361247b565b8152602083013561259881612012565b8060208301525060408301356040820152606083013560608201526080830135608082015260a08301356125cb81612012565b60a08201529392505050565b803560058110612031575f80fd5b5f602082840312156125f5575f80fd5b6106e3826125d7565b634e487b7160e01b5f52602160045260245ffd5b5f60208284031215612622575f80fd5b5051919050565b60068110612639576126396125fe565b9052565b5f815180845260208085019450602084015f5b838110156126a6578151612665888251612629565b838101516001600160a01b03168885015260408082015190890152606080820151908901526080908101519088015260a09096019590820190600101612650565b509495945050505050565b5f815180845260208085019450602084015f5b838110156126a65781516126d9888251612629565b808401516001600160a01b0390811689860152604080830151908a0152606080830151908a0152608080830151908a015260a091820151169088015260c090960195908201906001016126c4565b60058110612639576126396125fe565b602081526127516020820183516001600160a01b03169052565b5f602083015161276c60408401826001600160a01b03169052565b50604083015161016080606085015261278961018085018361263d565b91506060850151601f198584030160808601526127a683826126b1565b92505060808501516127bb60a0860182612727565b5060a085015160c085015260c085015160e085015260e0850151610100818187015280870151915050610120818187015280870151915050610140818187015280870151838701525050508091505092915050565b5f808335601e19843603018112612825575f80fd5b83016020810192503590506001600160401b03811115612843575f80fd5b60a081023603821315611d69575f80fd5b8183525f60208085019450825f5b858110156126a65761287c876128778461247b565b612629565b8282013561288981612012565b6001600160a01b03168388015260408281013590880152606080830135908801526080808301359088015260a09687019690910190600101612862565b5f808335601e198436030181126128db575f80fd5b83016020810192503590506001600160401b038111156128f9575f80fd5b60c081023603821315611d69575f80fd5b8183525f60208085019450825f5b858110156126a65761292d876128778461247b565b8282013561293a81612012565b6001600160a01b039081168885015260408381013590890152606080840135908901526080808401359089015260a0908382013561297781612012565b169088015260c0968701969190910190600101612918565b80356001600160781b0381168114612031575f80fd5b5f808335601e198436030181126129ba575f80fd5b83016020810192503590506001600160401b038111156129d8575f80fd5b803603821315611d69575f80fd5b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b8183525f6001600160fb1b03831115612a25575f80fd5b8260051b80836020870137939093016020019392505050565b8183526020808401935f91600585811b8301820185855b88811015612b1657858303601f19018a52813536899003609e19018112612a7a575f80fd5b88018035845260a08682013560028110612a92575f80fd5b85880152604082810135908601526060808301359086015260808083013536849003601e19018112612ac2575f80fd5b9092018781019290356001600160401b03811115612ade575f80fd5b80881b3603841315612aee575f80fd5b8282880152612b008388018286612a0e565b9d89019d96505050928601925050600101612a55565b509098975050505050505050565b608081525f610120873561015e19893603018112612b40575f80fd5b60a060808501528801612b65828501612b5883612026565b6001600160a01b03169052565b612b7160208201612026565b610140612b88818701836001600160a01b03169052565b612b956040840184612810565b610160888101529250612bad61028088018483612854565b925050612bbd60608401846128c6565b87840361011f1901610180890152612bd684828461290a565b93505050612be6608084016125d7565b612bf46101a0880182612727565b5060a08301356101c087015260c08301356101e087015260e0830135610200870152610100808401356102208801528484013561024088015281840135610260880152612c4360208d0161298f565b6001600160781b03811660a08901529450612c6060408d0161298f565b6001600160781b03811660c08901529450612c7e60608d018d6129a5565b95509350607f199150818784030160e0880152612c9c8386866129e6565b9450612cab60808d018d6129a5565b945092508187860301818801525050612cc58383836129e6565b925050508281036020840152612cdc818789612a3e565b9150508360408301526112ca60608301846001600160a01b03169052565b5f825161242d818460208701611f9c565b634e487b7160e01b5f52601160045260245ffd5b5f82612d3957634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b8082018082111561061b5761061b612d0b565b5f8451612dc1818460208901611f9c565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081525f8351612e25816017850160208801611f9c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351612e56816028840160208801611f9c565b01602801949350505050565b828152604060208201525f610aaa6040830184611fbe565b808202811582820484141761061b5761061b612d0b565b5f81612e9f57612e9f612d0b565b505f19019056fe9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000818000a","storage":{"0x0":"0xff"}},"0x58a175bebc8ec21a94ea63aa5a28743945940ee6":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106101165760003560e01c806391d14854116100a2578063c4d66de811610071578063c4d66de8146103bb578063ca15c873146103e1578063d547741f146103fe578063e375b64e1461042a578063ec87621c146104b957610116565b806391d14854146103635780639559c0bd146103a3578063a217fddf146103ab578063b017a30f146103b357610116565b80634794b430116100e95780634794b4301461024f57806349f5124b14610257578063609c92b81461025f5780638274664f146102675780639010d07c1461032457610116565b8063150b7a021461011b578063248a9ca3146101c65780632f2ff15d146101f557806336568abe14610223575b600080fd5b6101a96004803603608081101561013157600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561016b57600080fd5b82018360208201111561017d57600080fd5b803590602001918460018302840111600160201b8311171561019e57600080fd5b5090925090506104c1565b604080516001600160e01b03199092168252519081900360200190f35b6101e3600480360360208110156101dc57600080fd5b50356104d2565b60408051918252519081900360200190f35b6102216004803603604081101561020b57600080fd5b50803590602001356001600160a01b03166104ea565b005b6102216004803603604081101561023957600080fd5b50803590602001356001600160a01b0316610556565b6101e36105b7565b6101e36105db565b6101e36105ff565b6102216004803603606081101561027d57600080fd5b6001600160a01b038235811692602081013590911691810190606081016040820135600160201b8111156102b057600080fd5b8201836020820111156102c257600080fd5b803590602001918460018302840111600160201b831117156102e357600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610623945050505050565b6103476004803603604081101561033a57600080fd5b5080359060200135610fa2565b604080516001600160a01b039092168252519081900360200190f35b61038f6004803603604081101561037957600080fd5b50803590602001356001600160a01b0316610fc9565b604080519115158252519081900360200190f35b6101e3610fe7565b6101e3610fec565b6101e3610ff1565b610221600480360360208110156103d157600080fd5b50356001600160a01b0316611015565b6101e3600480360360208110156103f757600080fd5b50356110cf565b6102216004803603604081101561041457600080fd5b50803590602001356001600160a01b03166110e6565b6102216004803603608081101561044057600080fd5b6001600160a01b0382358116926020810135821692604082013590921691810190608081016060820135600160201b81111561047b57600080fd5b82018360208201111561048d57600080fd5b803590602001918460018302840111600160201b831117156104ae57600080fd5b50909250905061113f565b6101e36114e6565b630a85bd0160e11b95945050505050565b6000818152602081905260409020600201545b919050565b60008281526020819052604090206002015461050d906105086114f8565b610fc9565b6105485760405162461bcd60e51b815260040180806020018281038252602f815260200180611f42602f913960400191505060405180910390fd5b61055282826114fd565b5050565b61055e6114f8565b6001600160a01b0316816001600160a01b0316146105ad5760405162461bcd60e51b815260040180806020018281038252602f8152602001806120bb602f913960400191505060405180910390fd5b610552828261156c565b7ff871896b17e9cb7a64941c62c188a4f5c621b86800e3d15452ece01ce56073df81565b7ff94915c6d1fd521cee85359239227480c7e8776d7caf1fc3bacad5c269b66a1481565b7fd4392723c111fcb98b073fe55873efb447bcd23cd3e49ec9ea2581930cd01ddc81565b60008051602061204b83398151915261063e816105086114f8565b6001906106de5760405162461bcd60e51b81526020600482019081528254600260001961010060018416150201909116046024830181905290918291604490910190849080156106cf5780601f106106a4576101008083540402835291602001916106cf565b820191906000526020600020905b8154815290600101906020018083116106b257829003601f168201915b50509250505060405180910390fd5b5060606106f26106ed846115db565b611656565b905060606107138260018151811061070657fe5b6020026020010151611656565b90507fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60001b6107568260008151811061074957fe5b60200260200101516117d8565b141561095457600061076e8260018151811061074957fe5b905060006001600160a01b031661078b8360028151811061074957fe5b6001600160a01b0316146107d05760405162461bcd60e51b815260040180806020018281038252602981526020018061206b6029913960400191505060405180910390fd5b600086905060006107e78460038151811061074957fe5b9050816001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b15801561082d57600080fd5b505afa158015610841573d6000803e3d6000fd5b505050506040513d602081101561085757600080fd5b5051156108d35760408051632142170760e11b81523060048201526001600160a01b038581166024830152604482018490529151918416916342842e0e9160648082019260009290919082900301818387803b1580156108b657600080fd5b505af11580156108ca573d6000803e3d6000fd5b5050505061094c565b816001600160a01b03166340c10f1984836040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b15801561093357600080fd5b505af1158015610947573d6000803e3d6000fd5b505050505b505050610f9a565b7ff871896b17e9cb7a64941c62c188a4f5c621b86800e3d15452ece01ce56073df60001b6109888260008151811061074957fe5b1415610c085760006109a08260018151811061074957fe5b905060606109c1846002815181106109b457fe5b6020026020010151611920565b905060608180602001905160208110156109da57600080fd5b8101908080516040519392919084600160201b8211156109f957600080fd5b908301906020820185811115610a0e57600080fd5b82518660208202830111600160201b82111715610a2a57600080fd5b82525081516020918201928201910280838360005b83811015610a57578181015183820152602001610a3f565b5050505091909101604052505082519293508a9150600090505b82811015610bfd576000848281518110610a8757fe5b60200260200101519050826001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610ad557600080fd5b505afa158015610ae9573d6000803e3d6000fd5b505050506040513d6020811015610aff57600080fd5b505115610b7b5760408051632142170760e11b81523060048201526001600160a01b038981166024830152604482018490529151918516916342842e0e9160648082019260009290919082900301818387803b158015610b5e57600080fd5b505af1158015610b72573d6000803e3d6000fd5b50505050610bf4565b826001600160a01b03166340c10f1988836040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b158015610bdb57600080fd5b505af1158015610bef573d6000803e3d6000fd5b505050505b50600101610a71565b505050505050610f9a565b7ff94915c6d1fd521cee85359239227480c7e8776d7caf1fc3bacad5c269b66a1460001b610c3c8260008151811061074957fe5b1415610f63576000610c548260018151811061074957fe5b905060006001600160a01b0316610c718360028151811061074957fe5b6001600160a01b031614610cb65760405162461bcd60e51b815260040180806020018281038252602981526020018061206b6029913960400191505060405180910390fd5b60008690506000610ccd8460038151811061074957fe5b9050816001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610d1357600080fd5b505afa158015610d27573d6000803e3d6000fd5b505050506040513d6020811015610d3d57600080fd5b505115610d9c5760408051632142170760e11b81523060048201526001600160a01b038581166024830152604482018490529151918416916342842e0e9160648082019260009290919082900301818387803b1580156108b657600080fd5b6060610dae866002815181106109b457fe5b90506060818060200190516020811015610dc757600080fd5b8101908080516040519392919084600160201b821115610de657600080fd5b908301906020820185811115610dfb57600080fd5b8251600160201b811182820188101715610e1457600080fd5b82525081516020918201929091019080838360005b83811015610e41578181015183820152602001610e29565b50505050905090810190601f168015610e6e5780820380516001836020036101000a031916815260200191505b506040525050509050836001600160a01b03166394d008ef8685846040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b0316815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610ef3578181015183820152602001610edb565b50505050905090810190601f168015610f205780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015610f4157600080fd5b505af1158015610f55573d6000803e3d6000fd5b505050505050505050610f9a565b60405162461bcd60e51b815260040180806020018281038252602a815260200180611f71602a913960400191505060405180910390fd5b505050505050565b6000828152602081905260408120610fc0908363ffffffff6119ea16565b90505b92915050565b6000828152602081905260408120610fc0908363ffffffff6119f616565b601481565b600081565b7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef81565b60025460ff161561105e576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b61109c6040518060400160405280601781526020017f4d696e7461626c65455243373231507265646963617465000000000000000000815250611a0b565b6110a7600082610548565b6110bf60008051602061204b83398151915282610548565b506002805460ff19166001179055565b6000818152602081905260408120610fc390611aa9565b600082815260208190526040902060020154611104906105086114f8565b6105ad5760405162461bcd60e51b8152600401808060200182810382526030815260200180611fc36030913960400191505060405180910390fd5b60008051602061204b83398151915261115a816105086114f8565b6001906111c05760405162461bcd60e51b81526020600482019081528254600260001961010060018416150201909116046024830181905290918291604490910190849080156106cf5780601f106106a4576101008083540402835291602001916106cf565b50602082141561129f576000838360208110156111dc57600080fd5b5060408051913580835290519092506001600160a01b038088169289821692918b16917fe13244aa06bdc79480ed5fdc6ebe2bb37202fcdf33ecf45dc449f4201f3dc0879181900360200190a460408051632142170760e11b81526001600160a01b038981166004830152306024830152604482018490529151918716916342842e0e9160648082019260009290919082900301818387803b15801561128157600080fd5b505af1158015611295573d6000803e3d6000fd5b5050505050610f9a565b6060838360208110156112b157600080fd5b810190602081018135600160201b8111156112cb57600080fd5b8201836020820111156112dd57600080fd5b803590602001918460208302840111600160201b831117156112fe57600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f8201169050808301925050505050505091929192905050509050846001600160a01b0316866001600160a01b0316886001600160a01b03167fdb55e3a0ae817693fd7b07170d81eab0eb2c239f36fcecbc98b6b58ac5667e7a846040518080602001828103825283818151815260200191508051906020019060200280838360005b838110156113ca5781810151838201526020016113b2565b505050509050019250505060405180910390a48051601481111561141f5760405162461bcd60e51b815260040180806020018281038252602c81526020018061201f602c913960400191505060405180910390fd5b60005b818110156114db57866001600160a01b03166342842e0e8a3086858151811061144757fe5b60200260200101516040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050600060405180830381600087803b1580156114b757600080fd5b505af11580156114cb573d6000803e3d6000fd5b5050600190920191506114229050565b505050505050505050565b60008051602061204b83398151915281565b335b90565b600082815260208190526040902061151b908263ffffffff611ab416565b15610552576115286114f8565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b600082815260208190526040902061158a908263ffffffff611ac916565b15610552576115976114f8565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b6115e3611e6d565b6000825111611639576040805162461bcd60e51b815260206004820152601f60248201527f524c505265616465723a20494e56414c49445f42595445535f4c454e47544800604482015290519081900360640190fd5b506040805180820190915281518152602082810190820152919050565b606061166182611ade565b6116b2576040805162461bcd60e51b815260206004820152601860248201527f524c505265616465723a204954454d5f4e4f545f4c4953540000000000000000604482015290519081900360640190fd5b60006116bd83611b0a565b905060608167ffffffffffffffff811180156116d857600080fd5b5060405190808252806020026020018201604052801561171257816020015b6116ff611e6d565b8152602001906001900390816116f75790505b50905060006117248560200151611b96565b855190915081146117665760405162461bcd60e51b81526004018080602001828103825260278152602001806120946027913960400191505060405180910390fd5b60006117758660200151611c2f565b60208701510190506000805b858110156117cc5761179283611b96565b91506040518060400160405280838152602001848152508582815181106117b557fe5b602090810291909101015291810191600101611781565b50929695505050505050565b60006117e382611ade565b15611835576040805162461bcd60e51b815260206004820181905260248201527f524c505265616465723a204445434f44494e475f4c4953545f41535f55494e54604482015290519081900360640190fd5b81516021101561188c576040805162461bcd60e51b815260206004820152601e60248201527f524c505265616465723a20494e56414c49445f55494e545f4c454e4754480000604482015290519081900360640190fd5b600061189b8360200151611b96565b835190915081146118dd5760405162461bcd60e51b81526004018080602001828103825260278152602001806120ea6027913960400191505060405180910390fd5b60006118ec8460200151611c2f565b8451602080870151830180519394509184900392919083101561191657826020036101000a820491505b5095945050505050565b606060006119318360200151611b96565b835190915081146119735760405162461bcd60e51b8152600401808060200182810382526028815260200180611f9b6028913960400191505060405180910390fd5b60006119828460200151611c2f565b845190915081900360608167ffffffffffffffff811180156119a357600080fd5b506040519080825280601f01601f1916602001820160405280156119ce576020820181803683370190505b5090506000816020019050611916848860200151018285611c92565b6000610fc08383611cdd565b6000610fc0836001600160a01b038416611d41565b806040516020018082805190602001908083835b60208310611a3e5780518252601f199092019160209182019101611a1f565b51815160209384036101000a60001901801990921691161790527f3a20494e53554646494349454e545f5045524d495353494f4e530000000000009190930190815260408051808303600519018152601a909201905280516105529550600194509201919050611e87565b6000610fc382611d59565b6000610fc0836001600160a01b038416611d5d565b6000610fc0836001600160a01b038416611da7565b6020810151805160009190821a9060c0821015611b00576000925050506104e5565b5060019392505050565b600080600090506000611b208460200151611c2f565b602085015185519181019250015b80821015611b8d57611b3f82611b96565b8201915080821115611b825760405162461bcd60e51b815260040180806020018281038252602c815260200180611ff3602c913960400191505060405180910390fd5b600190920191611b2e565b50909392505050565b80516000908190811a6080811015611bb15760019150611c28565b60b8811015611bc657607e1981019150611c28565b60c0811015611bf35760b78103600185019450806020036101000a85510460018201810193505050611c28565b60f8811015611c085760be1981019150611c28565b60f78103600185019450806020036101000a855104600182018101935050505b5092915050565b8051600090811a6080811015611c495760009150506104e5565b60b8811080611c64575060c08110801590611c64575060f881105b15611c735760019150506104e5565b60c0811015611c875760b5190190506104e5565b60f5190190506104e5565b80611c9c57611cd8565b5b60208110611cbc578251825260209283019290910190601f1901611c9d565b8251825160208390036101000a60001901801990921691161782525b505050565b81546000908210611d1f5760405162461bcd60e51b8152600401808060200182810382526022815260200180611f206022913960400191505060405180910390fd5b826000018281548110611d2e57fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000611d698383611d41565b611d9f57508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610fc3565b506000610fc3565b60008181526001830160205260408120548015611e635783546000198083019190810190600090879083908110611dda57fe5b9060005260206000200154905080876000018481548110611df757fe5b600091825260208083209091019290925582815260018981019092526040902090840190558654879080611e2757fe5b60019003818190600052602060002001600090559055866001016000878152602001908152602001600020600090556001945050505050610fc3565b6000915050610fc3565b604051806040016040528060008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611ec857805160ff1916838001178555611ef5565b82800160010185558215611ef5579182015b82811115611ef5578251825591602001919060010190611eda565b50611f01929150611f05565b5090565b6114fa91905b80821115611f015760008155600101611f0b56fe456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e744d696e7461626c654552433732315072656469636174653a20494e56414c49445f5349474e4154555245524c505265616465723a2042595445535f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b65524c505265616465723a204e554d5f4954454d535f4445434f4445445f4c454e4754485f4d49534d415443484d696e7461626c654552433732315072656469636174653a20455843454544535f42415443485f4c494d4954241ecf16d79d0f8dbfb92cbc07fe17840425976cf0667f022fe9877caa831b084d696e7461626c654552433732315072656469636174653a20494e56414c49445f5245434549564552524c505265616465723a204c4953545f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66524c505265616465723a2055494e545f4445434f4445445f4c454e4754485f4d49534d41544348a164736f6c6343000606000a","storage":{"0x1":"0x63","0x2":"0x1","0x73d5d1a274bdea1400ad3ea4d982f594abdfd528cde1486b6c617faa3ec116":"0x1","0x89011777cfe6194dd982545e7eb24725dfe9a1aacae299c76fc48ef5017ae650":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x89011777cfe6194dd982545e7eb24725dfe9a1aacae299c76fc48ef5017ae651":"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0x1","0xb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6":"0x4d696e7461626c654552433732315072656469636174653a20494e5355464649","0xb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf7":"0x4349454e545f5045524d495353494f4e53000000000000000000000000000000","0xba75a66b8132bebab85d36fd3638083da57ae3d78fbcd8cc41f73514287dadaf":"0x1","0xe6c7d8231a06d7cb67831aeabcbd43ba24e5e4c6569cf23405f1e558de8580e0":"0x2","0xe84508f2c7fa9c351146748b3025cb78b45df37d868e48c6a75102fecdeee645":"0x2","0xe84508f2c7fa9c351146748b3025cb78b45df37d868e48c6a75102fecdeee647":"0x0","0xf0df3dcda05b4fbd9c655cde3d5ceb211e019e72ec816e127a59e7195f2cd7f5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x5cc819c9915eadfcebd76952b8c1bc36cadd7376":{"nonce":2,"balance":"0x0","code":"0x608060405260043610610103575f3560e01c8063a900866b11610092578063f07ec37311610062578063f07ec373146102f7578063f2d12b1214610316578063f47b774014610329578063fb0f3ee114610116578063fd9f1e101461034c575f80fd5b8063a900866b1461028a578063b3a34c4c146102be578063e7acab24146102d1578063ed98a574146102e4575f80fd5b80637423eb3c116100d85780637423eb3c146101f757806379df72bd1461020b57806387201b411461022a578063881477321461024b578063a81744041461026a575f80fd5b801561011657806306fdde031461013e57806346423aa71461015f5780635b34b966146101d5575f80fd5b366101125761011061036b565b005b5f80fd5b610129610124366004615115565b6103f9565b60405190151581526020015b60405180910390f35b348015610149575f80fd5b50610152610408565b604051610135919061518f565b34801561016a575f80fd5b506101b36101793660046151a1565b5f9081526001602052604090205460ff808216926101008304909116916001600160781b03620100008204811692600160881b9092041690565b6040805194151585529215156020850152918301526060820152608001610135565b3480156101e0575f80fd5b506101e9610417565b604051908152602001610135565b348015610202575f80fd5b50610110610420565b348015610216575f80fd5b506101e96102253660046151b8565b6104c1565b61023d61023836600461524c565b6104f8565b6040516101359291906153f0565b348015610256575f80fd5b5061012961026536600461543f565b610571565b61027d61027836600461547d565b61058f565b60405161013591906154e3565b348015610295575f80fd5b506101e96102a43660046154f5565b6001600160a01b03165f9081526002602052604090205490565b6101296102cc36600461550e565b61062a565b6101296102df366004615553565b6106a3565b61023d6102f23660046155d7565b6106e1565b348015610302575f80fd5b506101e96103113660046154f5565b610784565b61027d610324366004615677565b6107a1565b348015610334575f80fd5b5061033d6107ea565b60405161013593929190615719565b348015610357575f80fd5b5061012961036636600461543f565b610801565b7f000000000000000000000000000000000000000000000000000000000000000180156103b357600263929eee145c146103b05763a61be9f05f52346020526024601cfd5b50565b63929eee1454806103e057600263929eee145c146103dc5763a61be9f05f52346020526024601cfd5b5050565b600381146103dc5763a61be9f05f52346020526024601cfd5b5f61040261080c565b92915050565b60606104126109c0565b905090565b5f6104126109d8565b63929eee14546001147f000000000000000000000000000000000000000000000000000000000000000180610453575080155b1561047157604051630f45b98b60e41b815260040160405180910390fd5b61049a7f000000000000000000000000145908bbcfc7b258e4d4d9a586f6e3249ae80216610a45565b6104b7576040516370a4078f60e01b815260040160405180910390fd5b5f63929eee145550565b5f806104cd6004610aa3565b90506104f16104e282610ab35b63ffffffff16565b610140830135610b30565b3590565b9392505050565b60608061055d61051361050b6004610aa3565b610c746104da565b61052a61052260046020610cdc565b610cfa6104da565b61054161053960046040610cdc565b610d526104da565b61055061053960046060610cdc565b89338a15028a0189610daa565b915091509b509b9950505050505050505050565b5f6104f161058a6105826004610aa3565b610de46104da565b610e3c565b606061061f6105a96105a16004610aa3565b610f5d6104da565b604080515f8082526020820190925290610601565b6105ee6040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816105be5790505b5061061961061160046020610cdc565b610fb56104da565b3361100d565b90505b949350505050565b5f6104f161064361063b6004610aa3565b61104b6104da565b604080515f808252602082019092529061069b565b6106886040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816106585790505b5084336110c1565b5f6106d76106bc6106b46004610aa3565b6112406104da565b6106cb61052260046020610cdc565b853386150286016110c1565b9695505050505050565b6060806107736106f46105a16004610aa3565b604080515f808252602082019092529061074c565b6107396040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816107095790505b5061075c61053960046020610cdc565b61076b61053960046040610cdc565b883389610daa565b915091509850989650505050505050565b6001600160a01b0381165f90815260208190526040812054610402565b60606107dc6107b361050b6004610aa3565b6107c261052260046020610cdc565b6107d161061160046040610cdc565b33861502860161100d565b90505b979650505050505050565b60605f806107f661129c565b925092509250909192565b5f6104f183836112e8565b5f61012435600281901c90600316600182118334158214806108315761083134611423565b506003841160a0810260240135906502030203010160d01b861a905f630101020360d01b881a6108648882898888611434565b9096509150506101c4600583901b01355f87600581111561088757610887615329565b036108bc5760443560243517156108a557636ab37ce75f526004601cfd5b6108af8482611751565b6108b7611809565b61099d565b6040805160208082528183019092525f9160208201818036833701905050905060028a60058111156108f0576108f0615329565b036109135761090e60c4356084353360e435610104355b8787611889565b610988565b60038a600581111561092757610927615329565b036109455761090e60c4356084353360e435610104355b87876118d4565b60048a600581111561095957610959615329565b036109735761090e60243533608435604435606435610907565b6109886024353360843560443560643561093e565b610992848261190a565b61099b816119c4565b505b6109a88689846119e8565b6109b0611a5e565b6001995050505050505050505090565b6060602080526707536561706f727460475260606020f35b5f6109e1611ab1565b600143034060801c335f525f60205260405f208054820192508281555050336001600160a01b03167f721c20121297512b72821b97f5326877ea8ecf4bb9948fea5bfcb6453074d37f82604051610a3a91815260200190565b60405180910390a290565b5f816001600160a01b0316600a5a610a5d9190615773565b6040515f8181818686fa925050503d805f8114610a95576040519150601f19603f3d011682016040523d82523d5f602084013e610a9a565b606091505b50909392505050565b5f813563ffffffff168201610402565b5f610ac661016060408051918201905290565b9050610ad58282610140611b28565b610af2610aeb610ae6846040610cdc565b611b31565b6040830152565b5f610b06610b01846060610cdc565b611b84565b9050610b13816060840152565b610b26610b1e825190565b610140840152565b50919050565b0190565b610140820151604080519084015180515f939284927fa66999307ad1bb4fde44d13a5d710bd7718e0c87c1eef68a571629fbf5b93d0292602090910190845b81811015610b9c578251601f1901805186825260c082208652905260209384019390920191600101610b6f565b508060051b6040512094505050505f7f42d81c6929ffdc4eb27a0808e40e82516ad42296c166065de7f812492304ff6e915060405160206060890151015f5b86811015610c08578151601f1901805186825260e082208552905260209283019290910190600101610bdb565b505060408051600587901b9020601f198a0180517ffa445660b7e21515a59617fcd68910b487aa5808b8abda3d78bc85df364b2c2f8252928b01805197815260608c018051938152610140909c019a8b5261018082209390915295909552939097525050925250919050565b5f8063ffffffff8335169050600581901b610c986020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610cca610cc4610cbf8484610cdc565b611240565b82850152565b602001610ca7565b5050505050919050565b5f6104f163ffffffff610cf46104ed8686610b2c8516565b16840190565b5f8063ffffffff8335169050600581901b610d1e6020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610d4a610cc4610d458484610cdc565b611bc7565b602001610d2d565b5f8063ffffffff8335169050600581901b610d766020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610da2610cc4610d9d8484610cdc565b611c09565b602001610d85565b60608036155f80610dbe8c8c85898b611c4c565b91509150610dd18c8b8b8b8b8787612029565b9450945050505097509795505050505050565b5f8063ffffffff8335169050600581901b610e086020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610e34610cc4610e2f8484610cdc565b61215b565b602001610e17565b5f610e45611ab1565b5f805f80855190505f5b81811015610f50575f878281518110610e6a57610e6a615792565b60209081029190910101518051909150600481608001516004811115610e9257610e92615329565b03610e9e575050610f48565b80519450610eab8161219e565b5f8181526001602052604081209850909650610ecd90879089903615156121d7565b50865460ff16610f455780610140015181606001515114610ef057610ef0612265565b610eff85878460200151612272565b865460ff191660011787556040517ff280791efe782edcf06ce15c8f4dff17601db3b88eb3805a0db7d77faf757f0490610f3c9088908490615895565b60405180910390a15b50505b600101610e4f565b5060019695505050505050565b5f8063ffffffff8335169050600581901b610f816020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610fad610cc4610fa88484610cdc565b61104b565b602001610f90565b5f8063ffffffff8335169050600581901b610fd96020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257611005610cc46110008484610cdc565b61230e565b602001610fe8565b60605f36151590505f806110258888858b5189611c4c565b9150915061103282612341565b61103f8887848885612380565b98975050505050505050565b5f61105e61020060408051918201905290565b60a0810180825290915061107a61107484610aa3565b82612453565b61108660016020840152565b61109260016040840152565b6110af6110a86110a3856020610cdc565b612489565b6060840152565b610b266110ba6124b1565b6080840152565b835160808101515f91906110e860048260048111156110e2576110e2615329565b146124cb565b5f80806110f78a36151561256c565b60408051600180825281830190925293965091945092505f9190816020015b61111e615027565b8152602001906001900390816111165790505090508a815f8151811061114657611146615792565b602002602001018190525061115b818b612764565b6111678684848b6128dd565b6040805160018082528183019092525f91602080830190803683375091925050503615156004878181111561119e5761119e615329565b146111c1576111af8d83885f6129dd565b6111bb86868684612a2f565b506111d3565b6111d0888e6080015183612b33565b95505b6111de888c8c612c03565b85825f815181106111f1576111f1615792565b6020026020010181815250506112088d8388612d26565b61122586895f01518a602001518d8c604001518d60600151612df3565b61122d611a5e565b5060019c9b505050505050505050505050565b5f61125361020060408051918201905290565b905061126760208381019083016040611b28565b60a0810180825261127a61107484610aa3565b61128b6110a86110a3856060610cdc565b610b266110ba6110a3856080610cdc565b60605f805f6112a9612e58565b90505f7f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c905060605f5281602052806040526303312e3660635260a05ff35b5f6112f1611ab1565b5f8083815b81811015611408573687878381811061131157611311615792565b90506020028101906113239190615977565b90505f61133360208301836154f5565b90505f61134660408401602085016154f5565b90505f61135960a0850160808601615996565b905081331483331417156004821417871796505f61138d61138261137a8790565b610ab36104da565b866101400135610b30565b5f8181526001602052604090819020805461ffff19166101001781559051909a509091506001600160a01b0380851691908616907f6bacc01dbe442496068f7d234edd811f1a5f833243e0aec824f86ab861f3c90d906113f09085815260200190565b60405180910390a385600101955050505050506112f6565b5050801561141857611418612f35565b506001949350505050565b63a61be9f05f52806020526024601cfd5b5f8061143f5f6124cb565b611447612f42565b426101643511154261014435111715611475576321ccfeb75f5261014435602052610164356040526044601cfd5b610204356102643510156114905763466aa6165f526004601cfd5b7f42d81c6929ffdc4eb27a0808e40e82516ad42296c166065de7f812492304ff6e608081905260a08790526060602460c037604060646101203760e060802061016052610264356102043560051b6102a0016001820181526020810190508881526080602460208301376101608860a0528760c0525f60e0525f6102043593505f5b84811015611566578060400261028401602081610100376040816101203760208101358317925060208401935060e0608020845260a0850194508b85528a6020860152604081606087013750600101611512565b6001850160051b610160206060526102643594505b848110156115b6578060400261028401925060a0840193508a845289602085015260408360608601376020830135919091179060010161157b565b506001600160a01b038111156115d3576339f3e3fd5f526004601cfd5b50505050505f7fa66999307ad1bb4fde44d13a5d710bd7718e0c87c1eef68a571629fbf5b93d029050806080528360a052606060c460c0376020610104610120375060c06080205f9081526020812060e05260843590611647826001600160a01b03165f9081526020819052604090205490565b7ffa445660b7e21515a59617fcd68910b487aa5808b8abda3d78bc85df364b2c2f60808190529091506040608460a03760605161010052896101205260a061014461014037816101e05261018060802094505050506102043560051b61018001828152336020820152608060408201526101206060820152600160808201528360a0820152606060c460c083013760a061026435026101e00160a4356084357f9d9af8e38d66c62e2c12f0225249fd9d721c54b83f48d9352c97c6cacdcb6f318385a35f60605260608101820160405250505f61172383612f8d565b905061172f8389612fde565b7101000000000000000000000000000001000182559150509550959350505050565b60c43560843560e4356101043584156117b9575f6040519050632671a55160e11b815260206004820152600160248201528660448201528460648201528360848201523360a48201528260c48201528160e48201526117b38682610104613033565b50611801565b60028660058111156117cd576117cd615329565b036117f457806001146117e3576117e3816130ea565b6117ef848433856130fb565b611801565b61180184843385856131b0565b505050505050565b346064356084356102643560061b5f80805b8381101561185a5761028481013592506102a481013591508683111561184357611843613287565b82870396506118528284613294565b60400161181b565b508585111561186b5761186b613287565b6118758486613294565b848611156118015761180133868803613294565b61189381836132ca565b816118ba57826001146118a9576118a9836130ea565b6118b5878787876130fb565b6118cb565b6118cb828260028a8a8a8a8a6132e8565b50505050505050565b6118dd83613367565b6118e781836132ca565b816118f9576118b587878787876131b0565b6118cb828260038a8a8a8a8a6132e8565b5f805f805f861561192f57505060843592503391505060c4356101043560e435611944565b50339350506084359150506024356064356044355b801561195257611952613379565b50600586901b6101e403356102643560061b5f80805b838110156119a95761028481013592506102a481013591508a156119935761199083876159b4565b95505b6119a1878a8486898f613386565b604001611968565b506119b886898988888e613386565b50505050505050505050565b60408151146119d05750565b5f6119dc826020015190565b90506103dc81836133bb565b611a048260a4355b331415600182116004909210919091161690565b15611a5957805f611a13825190565b9050608081901c63ffffffff8216611a3484826317b1f94282526001905250565b601c840163fb5014fc6060529350611a5060a4358886856133df565b5f6060526118cb565b505050565b7f00000000000000000000000000000000000000000000000000000000000000018015611a8f575f63929eee145d50565b63929eee145480611aa5575f63929eee145d5050565b50600163929eee145550565b7f00000000000000000000000000000000000000000000000000000000000000018015611af05763929eee145c156103b057637fa8a9875f526004601cfd5b63929eee145480611b135763929eee145c156103dc57637fa8a9875f526004601cfd5b600181146103dc57637fa8a9875f526004601cfd5b80838337505050565b5f63ffffffff8235166040519150808252602082018160051b81018060a084026020870183378293505b81841015611b745780845260209093019260a001611b5b565b60405250919392505050565b9052565b5f63ffffffff8235166040519150808252602082018160051b81018060c084026020870183378293505b81841015611b745780845260209093019260c001611bae565b5f611bd960a060408051918201905290565b9050611be782826080611b28565b611c04611bfd611bf8846080610cdc565b613427565b6080830152565b919050565b5f63ffffffff8235166040519150808252602082018160051b8101808360061b6020870183378293505b81841015611b7457808452602090930192604001611c33565b60605f611c5960016124cb565b86515f90600160e61b82351690806001600160401b03811115611c7e57611c7e61574b565b604051908082528060200260200182016040528015611ca7578160200160208202803683370190505b50945060010160051b91505f60205b83811015611ea8575f611ccc8c83613cce6104da565b90505f805f611cdb848e61256c565b6001600160781b0382166020880152919450925090505f829003611d025750505050611ea0565b6001600160781b0381166040808601919091528a8601849052845160a081015160c0820151608083015192909301518051600184119d909d179c600490931099509092915f5b81811015611dea575f838281518110611d6357611d63615792565b602002602001015190508b8151108d179c505f611d858989846080015161345e565b90508160800151826060015103611da25760608201819052611db7565b611db18989846060015161345e565b60608301525b5f611dd08360600151838a8a611dcb361590565b61349a565b606084018190526080909301929092525050600101611d48565b5087516060015180515f5b81811015611e94575f838281518110611e1057611e10615792565b602002602001015190505f611e2a8b8b846080015161345e565b90508160800151826060015103611e475760608201819052611e5c565b611e568b8b846060015161345e565b60608301525b5f611e718360600151838c8c611dcb36151590565b6060840181905260a0840180516080909501949094529092525050600101611df5565b50505050505050505050505b602001611cb6565b50506001600160e61b018103611ec057611ec06134ed565b50611ecb8888612764565b5f8060205b8381101561200e578581015192508215612006575f611ef28c83613cce6104da565b9050885f03611f0d575f878301819052602090910152612006565b60048151608001516004811115611f2657611f26615329565b14611fa957611f3f8188866001600587901c038e6134fa565b611f55575f878301819052602090910152612006565b602080820151604083015183516080810151930151611f8e9388936001600160781b039081169316913314156001909111168e17612a2f565b611fa4575f878301819052602090910152612006565b611fd4565b611fbb815f015182608001518c612b33565b878301819052935083611fd4575f602090910152612006565b886001900398505f815f01519050611fff85825f015183602001518c85604001518660600151612df3565b6001935050505b602001611ed0565b508061201c5761201c613555565b5050509550959350505050565b85518551606091829161203c81836159c7565b6001600160401b038111156120535761205361574b565b60405190808252806020026020018201604052801561208c57816020015b61207961505a565b8152602001906001900390816120715790505b5092505f5b828110156120e4576120bf8c5f8d84815181106120b0576120b0615792565b60200260200101518c8c613562565b8482815181106120d1576120d1615792565b6020908102919091010152600101612091565b505f5b8181101561213d576121168c60018c848151811061210757612107615792565b60200260200101518c5f613562565b848483018151811061212a5761212a615792565b60209081029190910101526001016120e7565b5061214b8b84888a896135b1565b9350505097509795505050505050565b5f61216c6040808051918201905290565b905061218661218261217d84610aa3565b61389a565b8252565b611c046121976110a3846020610cdc565b6020830152565b5f6121b38260600151518361014001516138b9565b81516001600160a01b03165f90815260208190526040902054610402908390610b30565b82545f90610100900460ff16156121fe5781156121f7576121f7856138c9565b505f610622565b83546201000090046001600160781b0316801561225957831561222957612224866138da565b612259565b8454600160881b90046001600160781b0316811061225957821561225057612250866138eb565b5f915050610622565b50600195945050505050565b632165628a5f526004601cfd5b33831480156122815750505050565b5f61228a612e58565b61190160f01b5f9081526002828152602287815260428320908390528651939450929190601f601d840116106102e260621984011016156122f4576122cf86886138fc565b61190160f01b5f908152600286905260228281526042822091905290975090506122f7565b50815b612304888285858a613992565b5050505050505050565b5f61231f6040808051918201905290565b9050612330612182610d9d84610aa3565b611c04612197610d9d846020610cdc565b80518060051b6040019050602082038051602082527f4b9f2d36e1b4c93de62cc077b00b1a91d84b6c31b4a14e012718dcca230689e78383a190525050565b8351606090806001600160401b0381111561239d5761239d61574b565b6040519080825280602002602001820160405280156123d657816020015b6123c361505a565b8152602001906001900390816123bb5790505b5091505f5b81811015612439575f8782815181106123f6576123f6615792565b6020026020010151905061241389825f0151836020015185613adb565b84838151811061242557612425615792565b6020908102919091010152506001016123db565b5061244787838787876135b1565b50505b95945050505050565b6124608282610160611b28565b612471610aeb610ae6846040610cdc565b6103dc612482610b01846060610cdc565b6060830152565b6040518135601f0163ffffffe01660200180838337913563ffffffff16815290810160405290565b5f6124c3602060408051918201905290565b5f8152905090565b7f000000000000000000000000000000000000000000000000000000000000000180156125185763929eee145c1561250a57637fa8a9875f526004601cfd5b8160010163929eee145d5050565b63929eee14548061254a5763929eee145c1561253b57637fa8a9875f526004601cfd5b8260010163929eee145d505050565b6001811461255f57637fa8a9875f526004601cfd5b505060020163929eee1455565b5f805f80855f015190506125898160a001518260c0015187613c80565b61259c57505f925082915081905061275d565b602086015160408701516001600160781b0391821694501691505f6004826080015160048111156125cf576125cf615329565b036125fc57600183850218905080156125ea576125ea613ca3565b506001935083925082915061275d9050565b50818311831517801561261157612611613ca3565b608082015160011615848411161561262b5761262b613cb0565b6126348261219e565b5f81815260016020526040812091965061265290879083908a6121d7565b61266557505f935083925061275d915050565b805460ff1661268057612680835f0151878a60600151612272565b8054608881901c8061269457869150612757565b6001600160781b038260101c169150600186036126b8578181039650809550612757565b8086036126d357908601858103868211029096039590612757565b80860296810291909502810186810387821102918290039695919003906001600160781b0386111561275757612717565b5f5b8215610b2657908290069190612706565b61272a6127248784612704565b88612704565b8015019687900496909504946001600160781b0386111561275757634e487b715f5260116020526024601cfd5b50505050505b9250925092565b805182515f5b82811015612853575f84828151811061278557612785615792565b602002602001015190505f815f015190508381106127aa576127aa8260200151613cbd565b5f8782815181106127bd576127bd615792565b6020026020010151905080602001516001600160781b03165f036127e35750505061284b565b80516040808201519085015163bfb3f8ce5f8760200151600181111561280b5761280b615329565b14612827575f61281c856060613cce565b9350636088d7de9150505b8251821061283857805f526004601cfd5b612843838389613cd9565b505050505050505b60010161276a565b505f5b818110156128d6575f85828151811061287157612871615792565b6020026020010151905080602001516001600160781b03165f0361289557506128ce565b8051608081015160608201516128b29085908363a8930e9a613d8c565b6128ca8483604001518363d69293326104da613d8c90565b5050505b600101612856565b5050505050565b60a084015160c08501516040860151515f805b8281101561295a575f8960400151828151811061290f5761290f615792565b602002602001015190505f815f01519050801584179350505f612946826060015183608001518c8c8b8b612941361590565b613df3565b6060830152506080018690526001016128f0565b5060808801516004811082168015612974576129746134ed565b505050506060860151515f5b81811015612304575f8860600151828151811061299f5761299f615792565b602002602001015190505f6129c4826060015183608001518b8b8a8a61294136151590565b60608301525060a0810151608090910152600101612980565b8351608081015160208201513314156001821160049092109190911616156128d6575f80612a12858489608001518988613e2e565b63fb5014fc6060529092509050611a5083602001518684846133df565b5f848152600160205260408120805482908290608881901c80612a5457889150612adc565b6001600160781b038260101c169150808803612a7857908801878111935090612adc565b97880297808802979190910288018781119350906001600160781b038083119089111715612adc57612aaa8883612704565b8015019788900497909104906001600160781b038083119089111715612adc57634e487b715f5260116020526024601cfd5b508215612b15578515612b09576040516310fda3e160e01b8152600481018a905260240160405180910390fd5b5f945050505050610622565b8660881b8160101b1760011782556001945050505050949350505050565b5f83610140015184606001515114612b4d57612b4d612265565b83515f8080612b5c8888613fac565b915091505f8082845f885af16001600160a01b0385165f908152600260205260409020805460018101909155606086901b189550925082612bbb578515612bae57612ba5614056565b612bae8561409d565b505f93506104f192505050565b505050505f805f612bd8876040015188606001516104da6140ae90565b925092509250825f14612bee57612bee8461409d565b60408701919091526060860152509392505050565b6040805160208082528183019092525f916020820181803683375050506040850151519091505f5b81811015612c7b575f86604001518281518110612c4a57612c4a615792565b60200260200101519050846080820152612c7281885f0151896101200151876104da61432790565b50600101612c2b565b50506060840151515f90815b81811015612d09575f87606001518281518110612ca657612ca6615792565b602002602001015190505f6005811115612cc257612cc2615329565b81516005811115612cd557612cd5615329565b03612cf1574793508381606001511115612cf157612cf1613287565b612d00813389886143276104da565b50600101612c87565b5050612d14826119c4565b504780156128d6576128d63382613294565b8251608081015160208201515f92839283928392916004811060019091111633909114151615612d8857612d69612d6361010083015190565b5190565b8861441c565b9093509150612d7a60208201612d5f565b945063fb5014fc9350612dd4565b600481608001516004811115612da057612da0615329565b0361230457805194505f8560601b9050612dc187838b608001518b8561445d565b639397928596509094509250612dd49050565b612dde6060859052565b612dea858785856133df565b5f606052612304565b60608290506060829050856001600160a01b0316876001600160a01b03167f9d9af8e38d66c62e2c12f0225249fd9d721c54b83f48d9352c97c6cacdcb6f318a888686604051612e469493929190615a13565b60405180910390a35050505050505050565b5f7f00000000000000000000000000000000000000000000000000000000000005394614612f10575060408051608080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f5f9081527f32b5c112df393a49218d7552f96b2eeb829dfb4272f4f24eef510a586b85feef6020527f95f740a33d720b7cd93c75d515ac95ca3bbaa2594cce46ea48e00974ea8fcd14855246606090815230845260a08220949095529093529190915290565b507f8bebed3dbe91a82da0dc94c8d370c160ad6db1b32164303e65b8544bae7e2f5590565b63fed398fc5f526004601cfd5b600435602014610224356102401416610244356102606102643560061b01141660186101243510600160a01b60843560a4351760c4356024351717101616806103b0576103b0614528565b5f8181526001602081905260409091209060843590612fb290849084903615156121d7565b50815460ff16610b2657610b268184612fd9602463ffffffff6102443516016124896104da565b612272565b5f612feb8260a4356119f0565b15610402575f805f612ffc86614535565b63fb5014fc6060529194509250905061301c60a43587601c8601856133df565b5f60605260209190910160801b1781529392505050565b604080517f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c60ff60a01b175f90815260208690527f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f83526055600b20919092526001600160a01b031690505f805f805260205f85875f875af191505f519050816130c8576130bf614056565b6130c8836145ed565b6001600160e01b03198116632671a55160e11b146118015761180186846145fe565b6369f958275f52806020526024601cfd5b833b61311257635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af1806131a2573d1561318057601f3d0160051c8260051c8160030281831115613169578183036003028280028480020360091c01015b5a60208201101561317c573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b6131c757635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af18061326c573d1561324b57601f3d0160051c8560051c8160030281831115613234578183036003028280028480020360091c01015b5a602082011015613247573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b638ffff9805f526004601cfd5b61329d81613367565b5f805f805f85875af1905080611a59576132b5614056565b63bc806b965f5282602052816040526044601cfd5b5f6132d6836020015190565b9050818114611a5957611a59836119c4565b5f60208851036133225750604080885260208089018a9052632671a55160e11b918901919091526044880152600160648801819052613331565b50606487018051600101908190525b603c60c082028901038781528660208201528560408201528460608201528360808201528260a082015250505050505050505050565b806103b0576391b3e5145f526004601cfd5b636ab37ce75f526004601cfd5b61338f83613367565b61339981836132ca565b816133aa576117ef86868686614613565b611801828260018989895f8a6132e8565b6064810151604082019060c0026044016133d6848383613033565b50506020905250565b5f806001600160e01b03198451165f805260205f85875f8b5af15f51909350149050816134185761340e614056565b846080526024607cfd5b8061180157846080526024607cfd5b5f8063ffffffff83351690506001810160051b61344a8160408051918201905290565b9250613457848483611b28565b5050919050565b5f82840361346d5750806104f1565b82848309156134835763c63cf0895f526004601cfd5b5f61348e8584615aaf565b93909304949350505050565b5f8486146134e357838303428590038082035f6134b7838a615aaf565b6134c1838c615aaf565b6134cb91906159c7565b9050858487830304018115150294505050505061244a565b5092949350505050565b6312d3f5a35f526004601cfd5b8451608081015160208201515f92916004811060019091111633909114151615610f50575f8061353187848b608001518b8a613e2e565b9150915061354b836020015188848463fb5014fc8a614707565b935050505061244a565b63d5da9a1b5f526004601cfd5b61356a61505a565b83515f0361357b5761357b85614774565b5f85600181111561358e5761358e615329565b036135a45761359f86858385614785565b61244a565b61244a86858333876148f5565b84516060905f816001600160401b038111156135cf576135cf61574b565b6040519080825280602002602001820160405280156135f8578160200160208202803683370190505b506040805160208082528183019092529192505f9190602082018180368337505089519192505060010160051b60205b81811015613687575f61363e8b83613cce6104da565b8051606081015191925090801561367c57478111825115161561366857638ffff9805f526004601cfd5b61367c828460200151856040015189614327565b505050602001613628565b50505f5b838110156137f3575f8a82815181106136a6576136a6615792565b6020026020010151905080602001516001600160781b03165f036136ed575f8483815181106136d7576136d7615792565b91151560209283029190910190910152506137eb565b600184838151811061370157613701615792565b911515602092830291909101909101528051604081015180515f5b81811015613786575f83828151811061373757613737615792565b6020026020010151905080606001515f1461377357608081018051908e9052855161012087015161376d9184918c6143276104da565b60808201525b608081015160609091015260010161371c565b505050606081015180515f5b818110156137e5575f8382815181106137ad576137ad615792565b602002602001015190505f81606001519050805f146137d1576137d1888483614a2c565b5060a0810151606090910152600101613792565b50505050505b60010161368b565b506137fd816119c4565b47801561380e5761380e3382613294565b8515613884575f5b848110156138825783818151811061383057613830615792565b60200260200101511561387a5761387a8b828151811061385257613852615792565b60200260200101518a8b848151811061386d5761386d615792565b6020026020010151612d26565b600101613816565b505b61388c611a5e565b509098975050505050505050565b5f6138ad61016060408051918201905290565b9050611c048282612453565b808210156103dc576103dc614a45565b631a5155745f52806020526024601cfd5b63ee9e0e635f52806020526024601cfd5b6310fda3e15f52806020526024601cfd5b5f805f84516001811660410380820360051c9250808752806020018701915050805160e81c6003820191506001811660051b868152825160208218525060015b838110156139685760405f2082821c60051b60209081169182529384018051919094185260010161393c565b50505060405f2091505f61397b82614a52565b5f9081526020939093525050604090209392505050565b5f805f528151602083038051826041035f600182116139f557604087015160608801515f1a83156139d657601b8260ff1c0190506001600160ff1b03821660408a01525b88528a855260205f60808760015afa508385528588526040880152505f515b8a148a1515169450849050613abe57858552604082526044850380516040870351630b135d3f60e11b835289604089035260205f60648b01858f5afa96508615613ab257630b135d3f60e11b5f5114613ab2578b3b15613a5c57634f7fb80d5f526004601cfd5b6001866041031115613a7557638baa579f5f526004601cfd5b64010100000060608901515f1a1a15604187141615613aa557631f003d0a5f5260608801515f1a6020526024601cfd5b63815e1d645f526004601cfd5b8385529152603f198601525b5050508061180157613ace614056565b634f7fb80d5f526004601cfd5b613ae361505a565b8251158451151715613afc576398e9db6e5f526004601cfd5b613b0461505a565b613b118685835f806148f5565b805160608101515f03613b2657509050610622565b613b368787858460800151614785565b82516040828101519082015160208085015190840151855185511891181791181715613b6d5763bced929d5f52846020526024601cfd5b806060015182606001511115613bf4575f865f81518110613b9057613b90615792565b60200260200101519050816060015183606001510389825f015181518110613bba57613bba615792565b60200260200101515f015160600151826020015181518110613bde57613bde615792565b6020026020010151606001818152505050613c75565b5f875f81518110613c0757613c07615792565b60200260200101519050826060015182606001510389825f015181518110613c3157613c31615792565b60200260200101515f015160400151826020015181518110613c5557613c55615792565b602002602001015160600181815250508260600151826060018181525050505b505050949350505050565b428084111590831116818015613c94575080155b156104f1576104f18484614e61565b635a052b325f526004601cfd5b63a11b63ff5f526004601cfd5b63133c37c65f52806020526024601cfd5b5f6104f18284015190565b5f838381518110613cec57613cec615792565b602002602001015190505f815f01519050613d078160031090565b613d1357613d13614e76565b60408201518015613d3657613d318460600151828660800151614e83565b613d49565b60808401515115613d4957613d49614ecd565b6004821460030383816005811115613d6357613d63615329565b90816005811115613d7657613d76615329565b9052505050606090920151604090910152505050565b82515f5b81811015611801575f858281518110613dab57613dab615792565b60209081029190910101518051604082015191925090600382116004881415821515171615613de557855f5288602052836040526044601cfd5b505050806001019050613d90565b5f868803613e0d57613e0686868961345e565b90506107df565b6107dc613e1b87878b61345e565b613e2688888b61345e565b86868661349a565b5f805f613e39614eda565b6301e4d72a815260208082015260408101898152336060830152601c820194509091508751604082015287613e79613e7260a083015190565b60e0840152565b613e8f613e8760c083015190565b610100840152565b613ea5613e9d60e083015190565b610120840152565b610140613eb3816060850152565b5f613ebf604084015190565b90505f613ece82848701614ee4565b928301929050613edf836080870152565b5f613eeb606086015190565b90505f613efa82868901614f4a565b948501949050613f0b8560a0890152565b5f613f188e878a01614faf565b959095019450613f298560c0890152565b8685015f613f378e83614fce565b602497019687019a50613f539050613f4e8c8c0190565b614ffe565b8060408b901b60808b901b17178f610100018181525050613f7d8c82611b8090919063ffffffff16565b60058c8e51613f8c91906159b4565b613f97911b8b6159b4565b99505050505050505050509550959350505050565b5f8083613fb7614eda565b639891976581523360208201908152608060408301819052601c9092019450905f613fe3604085015190565b90505f613ff282848601614ee4565b928301929050614003836040860152565b5f61400f606087015190565b90505f61401e82868801614ee4565b94850194905061402f856060880152565b895f61403d82898901614faf565b9a9d96909a016004019b50949950505050505050505050565b3d1561409b57601f3d0160051c60405160051c8160030281831115614088578183036003028280028480020360091c01015b5a602082011015611a59573d5f803e3d5ffd5b565b63939792855f52806020526024601cfd5b60603d105f8080808080866141205760405f803e5f51935060205192503d60208501113d60208501118082179850505086614120576020845f3e5f51915060208360203e60205190508160071b60208501018160a0026020850101803d10823d101761ffff8486171117985050505f80525b86614152575f8061413584602088018d61415b565b9250975061414783602087018c61423b565b929092179850909550505b5050505061275d565b5f806040519150825160c08602602001830160405285835260208660010160051b8085018360010160051b8701614199858b81811090829003020190565b60010160051b8a861196505b808510156141f957828589015260808a843e6060830151955085608084015260608201518681116141d685856142e2565b17881797505060808a01995060a08301925060a0820191506020850194506141a5565b50505b8183101561422f578083870152608088823e6060810151608082015260808801975060a0810190506020830192506141fc565b50505050935093915050565b604051815180851190808603818710028101602060e08202850181016040528185526001928301600590811b87019390920190911b908185015b8282101561422f57808287015260a088823e60206060890160a083013e606081015160608501516142b26080840151608088015180159114171590565b818311176142c084886142e2565b60a09b909b019a179690961795505060c0938401936020929092019101614275565b5f81516040830151801560038311161561430457506040840151600119909101905b604085015181148551831460208701516020870151141616159250505092915050565b5f8451600581111561433b5761433b615329565b0361437857604084015160208501516001600160a01b0316171561436157614361613379565b61437384608001518560600151613294565b614416565b60018451600581111561438d5761438d615329565b036143be576040840151156143a4576143a4613379565b614373846020015184866080015187606001518686613386565b6002845160058111156143d3576143d3615329565b036143f7576143738460200151848660800151876040015188606001518787611889565b61441684602001518486608001518760400151886060015187876118d4565b50505050565b608082901c63ffffffff604084901c811690808516906144449084906317b1f94290611b8016565b601c830192506144548482614fce565b50509250929050565b5f80614467614eda565b63f4dd92ce815287841860a0820152601c8101925060200160a0808252875f614491604083015190565b90505f6144a082858701614ee4565b9384019390506144b1846020870152565b5f6144bd606085015190565b90505f6144cc82878901614f4a565b9586019590506144dd866040890152565b5f6144ea8d888a01614faf565b9687019690506144fb8760608a0152565b5f6145088d898b01614fce565b905080880197508760040199505050505050505050509550959350505050565b6339f3e3fd5f526004601cfd5b6301e4d72a6102043560051b6080019081525f808260208082015260408101858152336060830152601c919091019061456f608435610aeb565b61458061014460e083016060611b28565b61014061458e816060840152565b61459c60a082016080840152565b61016060a06102643581029290920101906145b8908290840152565b6145c25f82840152565b6020016145d08160c0840152565b5f9181019182526020820196909652939560449095019492505050565b63d13d53d45f52806020526024601cfd5b631cf99b265f5281602052806040526044601cfd5b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166146f85780873b1515166146f857806146e757816146ca573d156146a957601f3d0160051c8360051c8160030281831115614692578183036003028280028480020360091c01015b5a6020820110156146a5573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b5f805f6001600160e01b03198751165f805260205f888a5f8e5af15f5190935014905081614753578361473e575f925050506106d7565b614746614056565b845f52876020526024601cfd5b8061476557845f52876020526024601cfd5b50600198975050505050505050565b63375c24c15f52806020526024601cfd5b5f805f85865160051b87015b808210156148a2576020820191508851825151106147b1576147b16148d6565b81515160051b60208a01015180516020845101515f6040830151602085015115815184101517156147e6575050505050614791565b8260051b60208201015191505060608101935083518901915083511589831060011b17881797508198505f84528a51935086156001811461484f5760608220881860408d01516101208601511860208e015186511817171561484a5761484a6148d6565b614898565b8151855260208201516020860152604082015160408601528a6080860152835160208d015261012084015160408d015260608520975060208d0192508683181561489857865183525b5050505050614791565b5050508160608551015280156148cf57600181036148c7576391b3e5145f526004601cfd5b6148cf6148e3565b5050614416565b637fda72795f526004601cfd5b634e487b715f5260116020526024601cfd5b5f805f86875160051b88015b808210156149f7576020820191508151518a518110614922576149226148d6565b8060051b60208c01015190506020835101515f606083510151602084015115815184101517156149555750505050614901565b8260051b60208201015191505060608101925082518801915082511588831060011b17871796508197505f83528a5192508515600181146149a75760a0822087146149a2576149a26148d6565b6149ee565b815184526020820151602085015260408201516040850152608082015160808501528a60208d01528960408d015260a08220965060208d019250858318156149ee57855183525b50505050614901565b50508551606001839052508015614a255760018103614a1d576391b3e5145f526004601cfd5b614a256148e3565b50506128d6565b63a5f542085f528260205281604052806060526064601cfd5b63466aa6165f526004601cfd5b5f614e58565b5f6009821015614bb1576005821015614b0e576003821015614ac1577f832c58a5b611aadcfa6a082ac9d04bace53d8278387f10040347b7e98eb5b30260018314027fbf8e29b89f29ed9b529c154a63038ffca562f8d7cd1e2545dda53a1b582dde3018610402565b7ff3e8417a785f980bdaf134fa0274a6bf891eeb8195cd94b09d2aa651046e28bc60038314027fa02eb7ff164c884e5e2c336dc85f81c6a93329d8e9adf214b32729b894de2af118610402565b6007821015614b64577f25d02425402d882d211a7ab774c0ed6eca048c4d03d9af40132475744753b2a360058314027f1c19f71958cdd8f081b4c31f7caf5c010b29d12950be2fa1c95070dc47e30b5518610402565b7fb58d772fb09b426b9dece637f61ca9065f2b994f1464b51e9207f55f7c8f594860078314027f7ff98d9d4e55d876c5cfac10b43c04039522f3ddfb0ea9bfe70c68cfb5c7cc1418610402565b6011821015614d0957600d821015614c6657600b821015614c19577f6f0ec38c21f6f583ab7f3c5413c773ffd5344c34fde1d390958e438bf667448f60098314027fd1d97d1ef5eaa37a4ee5fbf234e6f6d64eb511eb562221cd7edfbdde0848da0518610402565b7f32f4e7485d6485f9f6c255929b9905c62ba919758bbe231f231eaeecf33d810c600b8314027fbb98d87cc12922b83759626c5f07d72266da9702d19ffad6a514c73a89002f5f18610402565b600f821015614cbc577f8df51df98847160517f5b1186b4bc3f418d98b8a7f17f1292f392d79d600d79e600d8314027f6b5b04cbae4fcb1a9d78e7b2dfc51a36933d023cf6e347e03d517b472a85259018610402565b7fcc4886e37eedd9aacd6c1c2c9247197a621a71282e87a7cbc673f3736d9aa141600f8314027f1da3eed3ecef6ebaa6e5023c057ec2c75150693fd0dac5c90f4a142f9879fde818610402565b6015821015614db5576013821015614d68577f2d7a3ed6dab270fdb8e054b2ad525f0ce2a8b89cc76c17f0965434740f673a5560118314027fc3939feff011e53ab8c35ca3370aad54c5df1fc2938cd62543174fa6e7d8587718610402565b7f54b3212a178782f104e0d514b41a9a5c4ca9c980bf6597c3cecbf280917e202a60138314027f5a4f867d3d458dabecad65f6201ceeaba0096df2d0c491cc32e6ea4e6435001718610402565b6017821015614e0b577fbb40bf8cea3a5a716e2b6eb08bbdac8ec159f82f380783db3c56904f15a43d0460158314027f3bd8cff538aba49a9c374c806d277181e9651624b3e31111bc0624574f8bca1d18610402565b7f403be09941a31d05cfc2f896505811353d45d38743288b016630cce39435476a60178314027f1d51df90cba8de7637ca3e8fe1e3511d1dc2f23487d05dbdecb781860c21ac1c18610402565b61040282614a58565b6321ccfeb75f5281602052806040526044601cfd5b6394eb6af65f526004601cfd5b5f835f5260205f2060208301835160051b81015b80821015614ebe57815180841160051b93845260209384185260405f209290910190614e97565b50508314905080614416576144165b6309bde3395f526004601cfd5b5f61041260405190565b5f825180835260208401602084018260051b82015b80831015614f375782518051835260208101516020840152604081015160408401526060810151606084015250602083019250608082019150614ef9565b5050508060071b60200191505092915050565b5f80614f54845190565b8084529050602084810190600583901b860181019085015b82821115614f9c575f614f7e84615008565b9050614f8c818360a0615011565b506020929092019160a001614f6c565b60a0840260200194505050505092915050565b5f63ffffffe0603f614fbf855190565b01169050610402838383615011565b5f80614fd8845190565b8084529050600581901b614ff3602086810190860183615011565b602001949350505050565b6103b06040829052565b5f610402825190565b8082828560045afa80153d151715614416575f80fd5b6040518060a0016040528061503a61509c565b81525f602082018190526040820152606080820181905260809091015290565b60408051610100810182525f606082018181526080830182905260a0830182905260c0830182905260e083018290528252602082018190529181019190915290565b6040518061016001604052805f6001600160a01b031681526020015f6001600160a01b0316815260200160608152602001606081526020015f60048111156150e6576150e6615329565b81525f6020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b5f60208284031215615125575f80fd5b81356001600160401b0381111561513a575f80fd5b820161024081850312156104f1575f80fd5b5f81518084525f5b8181101561517057602081850181015186830182015201615154565b505f602082860101526020601f19601f83011685010191505092915050565b602081525f6104f1602083018461514c565b5f602082840312156151b1575f80fd5b5035919050565b5f602082840312156151c8575f80fd5b81356001600160401b038111156151dd575f80fd5b820161016081850312156104f1575f80fd5b5f8083601f8401126151ff575f80fd5b5081356001600160401b03811115615215575f80fd5b6020830191508360208260051b850101111561522f575f80fd5b9250929050565b80356001600160a01b0381168114611c04575f80fd5b5f805f805f805f805f805f60e08c8e031215615266575f80fd5b6001600160401b03808d35111561527b575f80fd5b6152888e8e358f016151ef565b909c509a5060208d013581101561529d575f80fd5b6152ad8e60208f01358f016151ef565b909a50985060408d01358110156152c2575f80fd5b6152d28e60408f01358f016151ef565b909850965060608d01358110156152e7575f80fd5b506152f88d60608e01358e016151ef565b909550935060808c0135925061531060a08d01615236565b915060c08c013590509295989b509295989b9093969950565b634e487b7160e01b5f52602160045260245ffd5b60068110611b8057611b80615329565b61535882825161533d565b6020818101516001600160a01b0390811691840191909152604080830151908401526060808301519084015260809182015116910152565b5f815180845260208085019450602084015f5b838110156153e55781516153b888825161534d565b808401516001600160a01b031660a08901526040015160c088015260e090960195908201906001016153a3565b509495945050505050565b604080825283519082018190525f906020906060840190828701845b8281101561542a57815115158452928401929084019060010161540c565b50505083810360208501526106d78186615390565b5f8060208385031215615450575f80fd5b82356001600160401b03811115615465575f80fd5b615471858286016151ef565b90969095509350505050565b5f805f8060408587031215615490575f80fd5b84356001600160401b03808211156154a6575f80fd5b6154b2888389016151ef565b909650945060208701359150808211156154ca575f80fd5b506154d7878288016151ef565b95989497509550505050565b602081525f6104f16020830184615390565b5f60208284031215615505575f80fd5b6104f182615236565b5f806040838503121561551f575f80fd5b82356001600160401b03811115615534575f80fd5b830160408186031215615545575f80fd5b946020939093013593505050565b5f805f805f60808688031215615567575f80fd5b85356001600160401b038082111561557d575f80fd5b9087019060a0828a031215615590575f80fd5b909550602087013590808211156155a5575f80fd5b506155b2888289016151ef565b909550935050604086013591506155cb60608701615236565b90509295509295909350565b5f805f805f805f8060a0898b0312156155ee575f80fd5b88356001600160401b0380821115615604575f80fd5b6156108c838d016151ef565b909a50985060208b0135915080821115615628575f80fd5b6156348c838d016151ef565b909850965060408b013591508082111561564c575f80fd5b506156598b828c016151ef565b999c989b509699959896976060870135966080013595509350505050565b5f805f805f805f6080888a03121561568d575f80fd5b87356001600160401b03808211156156a3575f80fd5b6156af8b838c016151ef565b909950975060208a01359150808211156156c7575f80fd5b6156d38b838c016151ef565b909750955060408a01359150808211156156eb575f80fd5b506156f88a828b016151ef565b909450925061570b905060608901615236565b905092959891949750929550565b606081525f61572b606083018661514c565b6020830194909452506001600160a01b0391909116604090910152919050565b634e487b7160e01b5f52604160045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b5f8261578d57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f815180845260208085019450602084015f5b838110156153e55781516157ce88825161533d565b838101516001600160a01b03168885015260408082015190890152606080820151908901526080908101519088015260a090960195908201906001016157b9565b5f815180845260208085019450602084015f5b838110156153e557815161583788825161533d565b808401516001600160a01b0390811689860152604080830151908a0152606080830151908a0152608080830151908a015260a091820151169088015260c09096019590820190600101615822565b60058110611b8057611b80615329565b828152604060208201526158b56040820183516001600160a01b03169052565b5f60208301516158d060608401826001600160a01b03169052565b5060408301516101608060808501526158ed6101a08501836157a6565b91506060850151603f198584030160a086015261590a838261580f565b925050608085015161591f60c0860182615885565b5060a085015160e085015260c0850151610100818187015260e0870151915061012082818801528188015192506101409150828288015280880151848801525080870151610180870152505050809150509392505050565b5f823561015e1983360301811261598c575f80fd5b9190910192915050565b5f602082840312156159a6575f80fd5b8135600581106104f1575f80fd5b818103818111156104025761040261575f565b808201808211156104025761040261575f565b5f815180845260208085019450602084015f5b838110156153e557615a0087835161534d565b60a09690960195908201906001016159ed565b5f6080808301878452602060018060a01b03808916602087015260406080604088015283895180865260a08901915060208b0195505f5b81811015615a8b578651615a5f84825161533d565b808701518616848801528481015185850152606090810151908401529585019591870191600101615a4a565b50508781036060890152615a9f818a6159da565b9c9b505050505050505050505050565b80820281158282048414176104025761040261575f56fea164736f6c6343000818000a","storage":{}},"0x6265cc8d1b28edfd4d76c80bf774c0d446fffbde":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610090575f3560e01c80633f15457f116100635780633f15457f1461010f5780637adbf973146101225780637dc0d1d0146101355780638bbedf7514610147578063be27b22c1461015a575f80fd5b806301ffc9a7146100945780631ecfc411146100bc578063224199c2146100d157806330349ebe146100e4575b5f80fd5b6100a76100a23660046115b1565b61016d565b60405190151581526020015b60405180910390f35b6100cf6100ca3660046115ef565b6101a3565b005b6100cf6100df3660046117e0565b6102de565b6002546100f7906001600160a01b031681565b6040516001600160a01b0390911681526020016100b3565b6001546100f7906001600160a01b031681565b6100cf6101303660046115ef565b61063c565b5f546100f7906001600160a01b031681565b6100cf610155366004611889565b61076d565b6100cf61016836600461190b565b6107f1565b5f6001600160e01b031982166301ffc9a760e01b148061019d57506001600160e01b031982166317d8f49b60e01b145b92915050565b6001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa1580156101ea573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061020e919061196b565b90505f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561024d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610271919061196b565b9050336001600160a01b03821614610287575f80fd5b600280546001600160a01b0319166001600160a01b0385169081179091556040519081527f9176b7f47e4504df5e5516c99d90d82ac7cbd49cc77e7f22ba2ac2f2e3a3eba8906020015b60405180910390a1505050565b5f546040516321ae60b160e11b81526001600160a01b039091169063435cc1629061030f90879087906004016119d3565b5f604051808303815f875af115801561032a573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526103519190810190611a6b565b92505f805f610360888761088b565b91945092509050336001600160a01b038216146103da5760405162461bcd60e51b815260206004820152602d60248201527f4f6e6c79206f776e65722063616e2063616c6c2070726f7665416e64436c616960448201526c36abb4ba342932b9b7b63b32b960991b60648201526084015b60405180910390fd5b6001600160a01b038416156105bb576001600160a01b03851661044e5760405162461bcd60e51b815260206004820152602660248201527f43616e6e6f74207365742061646472206966207265736f6c766572206973206e6044820152651bdd081cd95d60d21b60648201526084016103d1565b6001546040516305ef2c7f60e41b815260048101859052602481018490523060448201526001600160a01b0387811660648301525f608483015290911690635ef2c7f09060a4015f604051808303815f87803b1580156104ac575f80fd5b505af11580156104be573d5f803e3d5ffd5b505050505f83836040516020016104df929190918252602082015260400190565b60408051808303601f1901815290829052805160209091012062d5fa2b60e81b8252600482018190526001600160a01b03878116602484015290925087169063d5fa2b00906044015f604051808303815f87803b15801561053e575f80fd5b505af1158015610550573d5f803e3d5ffd5b5050600154604051635b0fc9c360e01b8152600481018590526001600160a01b0386811660248301529091169250635b0fc9c391506044015f604051808303815f87803b15801561059f575f80fd5b505af11580156105b1573d5f803e3d5ffd5b5050505050610632565b6001546040516305ef2c7f60e41b815260048101859052602481018490526001600160a01b03838116604483015287811660648301525f608483015290911690635ef2c7f09060a4015f604051808303815f87803b15801561061b575f80fd5b505af115801561062d573d5f803e3d5ffd5b505050505b5050505050505050565b6001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa158015610683573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106a7919061196b565b90505f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106e6573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061070a919061196b565b9050336001600160a01b03821614610720575f80fd5b5f80546001600160a01b0319166001600160a01b0385169081179091556040519081527fb3eacd0e351fafdfefdec84e1cd19679b38dbcd63ea7c2c24da17fd2bc3b3c0e906020016102d1565b5f546040516321ae60b160e11b81526001600160a01b039091169063435cc1629061079e90859085906004016119d3565b5f604051808303815f875af11580156107b9573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526107e09190810190611a6b565b90506107ec83826107f1565b505050565b5f805f6107fe858561088b565b6001546040516306ab592360e01b815260048101859052602481018490526001600160a01b03808416604483015294975092955090935091909116906306ab5923906064016020604051808303815f875af115801561085f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108839190611add565b505050505050565b5f8080806108998682610a40565b60ff1690506108aa86600183610a63565b92505f6108dc6108bb836001611b08565b6001848a516108ca9190611b1b565b6108d49190611b1b565b899190610a85565b6002546040516327c482cf60e11b81529192506001600160a01b031690634f89059e9061090d908490600401611b2e565b602060405180830381865afa158015610928573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061094c9190611b40565b6109a45760405162461bcd60e51b815260206004820152602360248201527f506172656e74206e616d65206d7573742062652061207075626c6963207375666044820152620ccd2f60eb1b60648201526084016103d1565b6109ae815f610b05565b5f549095506109c7906001600160a01b03168888610de3565b5060408051602081018890529081018690529093506001600160a01b03841690606001604051602081830303815290604052805190602001207fa2e66ce20e6fb2c4f61339c364ad79f15160cf5307230c8bc4d628adbca2ba3989604051610a2f9190611b2e565b60405180910390a350509250925092565b5f828281518110610a5357610a53611b5f565b016020015160f81c905092915050565b82515f90610a718385611b08565b1115610a7b575f80fd5b5091016020012090565b8251606090610a948385611b08565b1115610a9e575f80fd5b5f8267ffffffffffffffff811115610ab857610ab861160a565b6040519080825280601f01601f191660200182016040528015610ae2576020820181803683370190505b50905060208082019086860101610afa82828761100b565b509095945050505050565b5f80610b118484610a40565b60ff169050805f03610b2657505f905061019d565b5f610b4585610b358487611b08565b610b40906001611b08565b610b05565b90505f610b5e610b56866001611b08565b879085610a63565b604080516020810185905290810182905290915060600160408051808303601f190181529082905280516020909101206001546302571be360e01b8352600483018290529095505f916001600160a01b03909116906302571be390602401602060405180830381865afa158015610bd7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bfb919061196b565b90506001600160a01b0381161580610c1b57506001600160a01b03811630145b610c7a5760405162461bcd60e51b815260206004820152602a60248201527f43616e6e6f7420656e61626c652061206e616d65206f776e656420627920736f6044820152696d656f6e6520656c736560b01b60648201526084016103d1565b6001600160a01b0381163014610dd95782610d5e576001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa158015610cd6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cfa919061196b565b60405163232e3b3b60e21b8152600481018590523060248201529091506001600160a01b03821690638cb8ecec906044015f604051808303815f87803b158015610d42575f80fd5b505af1158015610d54573d5f803e3d5ffd5b5050505050610dd9565b6001546040516306ab592360e01b815260048101859052602481018490523060448201526001600160a01b03909116906306ab5923906064016020604051808303815f875af1158015610db3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610dd79190611add565b505b5050505092915050565b5f80610e016040518060400160405280606081526020015f81525090565b610e1985516005610e129190611b08565b8290611060565b50604080518082019091526005815264045f656e7360d81b6020820152610e419082906110c3565b50610e4c81866110c3565b50805160405163021e646f60e21b81525f9182916001600160a01b038a169163087991bc91610e8091601091600401611b73565b606060405180830381865afa158015610e9b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ebf9190611ba7565b93509150506bffffffffffffffffffffffff198216158015610ee057508551155b15610ef3575f8094509450505050611003565b855160208701206bffffffffffffffffffffffff19838116911614610f16575f80fd5b5f610f2187826110ef565b90505b80515160208201511015610ff857610f4b816080015183610f459190611bfc565b4261114a565b610fbd5760405162461bcd60e51b815260206004820152603c60248201527f444e53207265636f7264206973207374616c653b2072656672657368206f722060448201527f64656c657465206974206265666f72652070726f63656564696e672e0000000060648201526084016103d1565b5f80610fcd898460a00151611162565b925090508115610fe857965060019550611003945050505050565b5050610ff3816111d1565b610f24565b505f80945094505050505b935093915050565b602081106110435781518352611022602084611b08565b925061102f602083611b08565b915061103c602082611b1b565b905061100b565b905182516020929092036101000a5f190180199091169116179052565b60408051808201909152606081525f602082015261107f602083611c20565b156110a75761108f602083611c20565b61109a906020611b1b565b6110a49083611b08565b91505b506020828101829052604080518085525f815290920101905290565b60408051808201909152606081525f60208201526110e883845f0151518485516112b6565b9392505050565b6111376040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261019d816111d1565b5f806111568385611c3f565b60030b12159392505050565b5f805b83518310156111c4575f6111798585610a40565b60ff169050611189600185611b08565b93505f8061119887878561139c565b9250905081156111b0579350600192506111ca915050565b6111ba8387611b08565b9550505050611165565b505f9050805b9250929050565b60c081015160208201819052815151116111e85750565b5f6111fa825f015183602001516113f5565b82602001516112099190611b08565b82519091506112189082611454565b61ffff16604083015261122c600282611b08565b825190915061123b9082611454565b61ffff16606083015261124f600282611b08565b825190915061125e908261147a565b63ffffffff166080830152611274600482611b08565b82519091505f906112859083611454565b61ffff169050611296600283611b08565b60a0840181905291506112a98183611b08565b60c0909301929092525050565b60408051808201909152606081525f602082015282518211156112d7575f80fd5b60208501516112e68386611b08565b11156113195761131985611309876020015187866113049190611b08565b6114a2565b611314906002611c66565b6114b8565b5f808651805187602083010193508088870111156113375787860182525b505050602084015b602084106113775780518252611356602083611b08565b9150611363602082611b08565b9050611370602085611b1b565b935061133f565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b5f806113a8858561147a565b63ffffffff1663613d3078146113c257505f905080611003565b602c8310156113d557505f905080611003565b6113e9856113e4866004611b08565b6114d5565b91509150935093915050565b5f815b8351811061140857611408611c7d565b5f6114138583610a40565b60ff169050611423816001611b08565b61142d9083611b08565b9150805f0361143c5750611442565b506113f8565b61144c8382611b1b565b949350505050565b81515f90611463836002611b08565b111561146d575f80fd5b50016002015161ffff1690565b81515f90611489836004611b08565b1115611493575f80fd5b50016004015163ffffffff1690565b5f818311156114b257508161019d565b50919050565b81516114c48383611060565b506114cf83826110c3565b50505050565b5f8060288385516114e69190611b1b565b10156114f657505f9050806111ca565b5f835b611504856028611b08565b8110156115a55760049190911b905f61151d8783610a40565b60ff169050603081101580156115335750603a81105b1561154c57611543603082611b1b565b8317925061159c565b6041811015801561155d5750604781105b1561156d57611543603782611b1b565b6061811015801561157e5750606781105b1561158e57611543605782611b1b565b5f80945094505050506111ca565b506001016114f9565b50946001945092505050565b5f602082840312156115c1575f80fd5b81356001600160e01b0319811681146110e8575f80fd5b6001600160a01b03811681146115ec575f80fd5b50565b5f602082840312156115ff575f80fd5b81356110e8816115d8565b634e487b7160e01b5f52604160045260245ffd5b6040805190810167ffffffffffffffff811182821017156116415761164161160a565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156116705761167061160a565b604052919050565b5f67ffffffffffffffff8211156116915761169161160a565b50601f01601f191660200190565b5f82601f8301126116ae575f80fd5b81356116c16116bc82611678565b611647565b8181528460208386010111156116d5575f80fd5b816020850160208301375f918101602001919091529392505050565b5f82601f830112611700575f80fd5b8135602067ffffffffffffffff8083111561171d5761171d61160a565b8260051b61172c838201611647565b9384528581018301938381019088861115611745575f80fd5b84880192505b858310156117d457823584811115611761575f80fd5b88016040818b03601f1901811315611777575f80fd5b61177f61161e565b878301358781111561178f575f80fd5b61179d8d8a8387010161169f565b8252509082013590868211156117b1575f80fd5b6117bf8c898486010161169f565b8189015284525050918401919084019061174b565b98975050505050505050565b5f805f805f60a086880312156117f4575f80fd5b853567ffffffffffffffff8082111561180b575f80fd5b61181789838a0161169f565b9650602088013591508082111561182c575f80fd5b61183889838a016116f1565b9550604088013591508082111561184d575f80fd5b5061185a8882890161169f565b935050606086013561186b816115d8565b9150608086013561187b816115d8565b809150509295509295909350565b5f805f6060848603121561189b575f80fd5b833567ffffffffffffffff808211156118b2575f80fd5b6118be8783880161169f565b945060208601359150808211156118d3575f80fd5b6118df878388016116f1565b935060408601359150808211156118f4575f80fd5b506119018682870161169f565b9150509250925092565b5f806040838503121561191c575f80fd5b823567ffffffffffffffff80821115611933575f80fd5b61193f8683870161169f565b93506020850135915080821115611954575f80fd5b506119618582860161169f565b9150509250929050565b5f6020828403121561197b575f80fd5b81516110e8816115d8565b5f5b838110156119a0578181015183820152602001611988565b50505f910152565b5f81518084526119bf816020860160208601611986565b601f01601f19169290920160200192915050565b5f60408083016040845280865180835260608601915060608160051b870101925060208089015f5b83811015611a4b57888603605f1901855281518051888852611a1f898901826119a8565b9185015188830389870152919050611a3781836119a8565b9750505093820193908201906001016119fb565b505086840381880152505050611a6181866119a8565b9695505050505050565b5f60208284031215611a7b575f80fd5b815167ffffffffffffffff811115611a91575f80fd5b8201601f81018413611aa1575f80fd5b8051611aaf6116bc82611678565b818152856020838501011115611ac3575f80fd5b611ad4826020830160208601611986565b95945050505050565b5f60208284031215611aed575f80fd5b5051919050565b634e487b7160e01b5f52601160045260245ffd5b8082018082111561019d5761019d611af4565b8181038181111561019d5761019d611af4565b602081525f6110e860208301846119a8565b5f60208284031215611b50575f80fd5b815180151581146110e8575f80fd5b634e487b7160e01b5f52603260045260245ffd5b61ffff83168152604060208201525f61144c60408301846119a8565b805163ffffffff81168114611ba2575f80fd5b919050565b5f805f60608486031215611bb9575f80fd5b611bc284611b8f565b9250611bd060208501611b8f565b915060408401516bffffffffffffffffffffffff1981168114611bf1575f80fd5b809150509250925092565b63ffffffff818116838216019080821115611c1957611c19611af4565b5092915050565b5f82611c3a57634e487b7160e01b5f52601260045260245ffd5b500690565b600382810b9082900b03637fffffff198112637fffffff8213171561019d5761019d611af4565b808202811582820484141761019d5761019d611af4565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{"0x0":"0x9b2565a3545a1312bdcb6e7148a7f7cae8c2706b","0x1":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0x2":"0x287dee389caaa49edc112888f2bcfd927b472e25"}},"0x62b11ad5f582a5c5d378fb310125b030042554f1":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106103af5760003560e01c80637e37479e116101f4578063ba5d40b71161011a578063e985e9c5116100ad578063f5c1f76e1161007c578063f5c1f76e146108d8578063f7df5c60146108eb578063f8c8765e146108fe578063ffa1ad741461091157600080fd5b8063e985e9c51461087a578063ebf0c717146108b6578063ec129eea146108bd578063f25eb5c1146108d057600080fd5b8063c87b56dd116100e9578063c87b56dd1461082e578063ce92b33e14610841578063cf2c52cb14610854578063d9548e531461086757600080fd5b8063ba5d40b7146107b3578063baef73e9146107c6578063bb5b27e114610808578063bebec6b41461081b57600080fd5b8063a22cb46511610192578063ac9650d811610161578063ac9650d81461074c578063b3f9e4cb1461076c578063b85afd281461077f578063b88d4fde146107a057600080fd5b8063a22cb465146106e7578063a3f4df7e146106fa578063a424740014610726578063ab3b87fe1461073957600080fd5b80639508b1c4116101ce5780639508b1c4146106b15780639559c0bd146106c457806395d89b41146106cc57806399e0dd7c146106d457600080fd5b80637e37479e146106785780637eee288d1461068b57806394d008ef1461069e57600080fd5b806342842e0e116102d95780635096023911610277578063663f7b2a11610246578063663f7b2a14610610578063672b9f81146106235780636ccbae5f1461064457806370a082311461066557600080fd5b806350960239146105bb578063572b6c05146105ce5780636352211e146105ea578063638e5c78146105fd57600080fd5b806347c81699116102b357806347c816991461056f5780634a72584d146105825780634f558e791461059557806350382c1a146105a857600080fd5b806342842e0e1461053657806342966c6814610549578063430c20811461055c57600080fd5b80631bf7e13e1161035157806327f189751161032057806327f18975146104ea578063310bd74b146104fd5780633f72ec6e1461051057806340c10f191461052357600080fd5b80631bf7e13e146104905780631f71be06146104a357806323b872dd146104b6578063276fabb1146104c957600080fd5b8063095ea7b31161038d578063095ea7b31461041c578063150b7a02146104315780631bd8cc1a1461045d5780631be5e7ed1461047d57600080fd5b806301ffc9a7146103b457806306fdde03146103dc578063081812fc146103f1575b600080fd5b6103c76103c2366004613f0b565b610935565b60405190151581526020015b60405180910390f35b6103e4610946565b6040516103d39190613f78565b6104046103ff366004613f8b565b6109d8565b6040516001600160a01b0390911681526020016103d3565b61042f61042a366004613fb9565b6109ff565b005b61044461043f366004614026565b610a18565b6040516001600160e01b031990911681526020016103d3565b61047061046b3660046140dc565b610b72565b6040516103d3919061417f565b6103e461048b366004614192565b610c68565b6103e461049e3660046141c9565b610cb3565b61042f6104b1366004614249565b610dbe565b61042f6104c4366004614305565b610e54565b6104dc6104d7366004614346565b610ea7565b6040519081526020016103d3565b61042f6104f8366004614387565b610eb6565b61042f61050b366004613f8b565b610efe565b61042f61051e3660046143fa565b610f39565b61042f610531366004613fb9565b61103b565b61042f610544366004614305565b611088565b61042f610557366004613f8b565b6110a3565b6103c761056a366004613fb9565b6110e7565b61042f61057d366004614424565b6110f3565b61042f610590366004614485565b611132565b6103c76105a3366004613f8b565b611178565b61042f6105b636600461458c565b611197565b61042f6105c93660046145c0565b6111cd565b6103c76105dc3660046145c0565b6001600160a01b0316301490565b6104046105f8366004613f8b565b61122d565b61042f61060b366004613f8b565b61124a565b61042f61061e366004614678565b611295565b6106366106313660046146c0565b611336565b6040516103d39291906146e2565b6104dc610652366004613f8b565b6000908152610100602052604090205490565b6104dc6106733660046145c0565b61134e565b6104dc6106863660046145c0565b6113d4565b61042f610699366004613fb9565b611405565b61042f6106ac366004614707565b61145c565b61042f6106bf366004614762565b6114ab565b6104dc601481565b6103e4611532565b61042f6106e2366004614805565b611541565b61042f6106f536600461483a565b6115c8565b6103e46040518060400160405280600d81526020016c554e533a20526567697374727960981b81525081565b6103c76107343660046141c9565b6115da565b61042f610747366004613fb9565b611625565b61075f61075a366004614346565b61166a565b6040516103d39190614866565b61040461077a366004613f8b565b611746565b61079261078d3660046140dc565b611770565b6040516103d39291906148c8565b61042f6107ae3660046148ed565b611892565b61042f6107c1366004614249565b6118d9565b6107f06107d4366004613f8b565b600090815261013960205260409020546001600160401b031690565b6040516001600160401b0390911681526020016103d3565b6103e4610816366004613f8b565b611962565b6103e46108293660046145c0565b611a04565b6103e461083c366004613f8b565b611ace565b61042f61084f366004614387565b611b34565b61042f610862366004614958565b611b73565b6103c7610875366004613f8b565b611c42565b6103c761088836600461499f565b6001600160a01b039182166000908152606a6020908152604080832093909416825291909152205460ff1690565b60006104dc565b61042f6108cb366004614387565b611c85565b61042f611cc4565b6104706108e6366004614346565b611d4b565b61042f6108f93660046149d8565b611dfe565b61042f61090c366004614a0a565b611e8f565b6103e460405180604001604052806005815260200164302e392e3160d81b81525081565b600061094082612065565b92915050565b60606065805461095590614a66565b80601f016020809104026020016040519081016040528092919081815260200182805461098190614a66565b80156109ce5780601f106109a3576101008083540402835291602001916109ce565b820191906000526020600020905b8154815290600101906020018083116109b157829003601f168201915b5050505050905090565b60006109e3826120b5565b506000908152606960205260409020546001600160a01b031690565b80610a0981612114565b610a13838361217a565b505050565b60007f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378546001600160a01b0316610a4d61229c565b6001600160a01b031603610b0e57610a6361229c565b6001600160a01b03166342966c68856040518263ffffffff1660e01b8152600401610a9091815260200190565b600060405180830381600087803b158015610aaa57600080fd5b505af1158015610abe573d6000803e3d6000fd5b505050821580159150610ad85750610ad882840184614a9a565b15610af657610ae730856122ab565b610af185856123f9565b610b00565b610b0085856122ab565b50630a85bd0160e11b610b69565b60405162461bcd60e51b815260206004820152602560248201527f52656769737472793a204552433732315f524543454956494e475f50524f4849604482015264109255115160da1b60648201526084015b60405180910390fd5b95945050505050565b6060826001600160401b03811115610b8c57610b8c6144d7565b604051908082528060200260200182016040528015610bbf57816020015b6060815260200190600190039081610baa5790505b50905060005b83811015610c6057610c30858583818110610be257610be2614ab5565b9050602002810190610bf49190614acb565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508792506124a4915050565b828281518110610c4257610c42614ab5565b60200260200101819052508080610c5890614b27565b915050610bc5565b509392505050565b6060610cab84848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508692506124a4915050565b949350505050565b606060005a9050610cc58585856115da565b610d215760405162461bcd60e51b815260206004820152602760248201527f554e535265676973747279466f727761726465723a205349474e41545552455f6044820152661253959053125160ca1b6064820152608401610b60565b610db3610d3160208701876145c0565b30604088013584610d4560608b018b614acb565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284376000920191909152506124d992505050565b9150505b9392505050565b610134546001600160a01b0316610dd361229c565b6001600160a01b031614610df95760405162461bcd60e51b8152600401610b6090614b40565b6000610e0d610e08888a614b87565b6125ba565b509050610e1a8982611405565b610e278686868685612612565b8115610e4957610e498982610e44610e3f8b8d614b87565b612680565b612701565b505050505050505050565b80610e66610e6061229c565b82612743565b610e825760405162461bcd60e51b8152600401610b6090614b94565b81610e8c81612114565b610e95836127d4565b610ea0858585612841565b5050505050565b6000610c60610e088385614b87565b80610ec2610e6061229c565b610ede5760405162461bcd60e51b8152600401610b6090614b94565b81610ee881612114565b610ef587878787876129e8565b50505050505050565b80610f0a610e6061229c565b610f265760405162461bcd60e51b8152600401610b6090614b94565b81610f3081612114565b610a13836127d4565b610134546001600160a01b0316610f4e61229c565b6001600160a01b031614610f745760405162461bcd60e51b8152600401610b6090614b40565b610f7d816120b5565b42826001600160401b031611610fd55760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a204558504952595f494e5f5041535400000000000000006044820152606401610b60565b60008181526101396020908152604091829020805467ffffffffffffffff19166001600160401b038616908117909155915191825282917f93feabb03ab84f47fc85bf0c298103fca21d8c8bc376eae0c1e1c56b9d4f7789910160405180910390a25050565b611043612a4b565b6001600160a01b031661105461229c565b6001600160a01b03161461107a5760405162461bcd60e51b8152600401610b6090614bdd565b61108482826122ab565b5050565b610a1383838360405180602001604052806000815250611892565b806110af610e6061229c565b6110cb5760405162461bcd60e51b8152600401610b6090614b94565b816110d581612114565b6110de836127d4565b610a1383612b4c565b6000610db78383612743565b806110ff610e6061229c565b61111b5760405162461bcd60e51b8152600401610b6090614b94565b8161112581612114565b610ef58787878787612bf3565b8061113e610e6061229c565b61115a5760405162461bcd60e51b8152600401610b6090614b94565b8161116481612114565b61117086868686612cd2565b505050505050565b6000818152606760205260408120546001600160a01b03161515610940565b6111ca816040516020016111ab9190614c1f565b6040516020818303038152906040528051906020012060001c82612d72565b50565b610134546001600160a01b03166111e261229c565b6001600160a01b0316146112085760405162461bcd60e51b8152600401610b6090614b40565b6001600160a01b0316600090815261013660205260409020805460ff19166001179055565b600061123882611c42565b6112455761094082612d97565b919050565b80611256610e6061229c565b6112725760405162461bcd60e51b8152600401610b6090614b94565b61128461127d61229c565b3084612841565b61108461128f61229c565b836123f9565b60006112a0826125ba565b5090506112ab61229c565b6001600160a01b03166112bd8261122d565b6001600160a01b0316146113135760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b60565b61131c81612114565b61108461132761229c565b8261133185612680565b612df7565b6060806113438484612e7e565b909590945092505050565b60006001600160a01b0382166113b85760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b6064820152608401610b60565b506001600160a01b031660009081526068602052604090205490565b6001600160a01b038116600090815261013560205260408120546113f781612e9f565b6113ff578091505b50919050565b610134546001600160a01b031661141a61229c565b6001600160a01b0316146114405760405162461bcd60e51b8152600401610b6090614b40565b611449816127d4565b61108461145582612d97565b8383612841565b611464612a4b565b6001600160a01b031661147561229c565b6001600160a01b03161461149b5760405162461bcd60e51b8152600401610b6090614bdd565b6114a584846122ab565b50505050565b6114b58787612ee9565b6114bd61229c565b6001600160a01b03166114cf8661122d565b6001600160a01b0316146115255760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b60565b610ef58484848489612612565b60606066805461095590614a66565b610134546001600160a01b031661155661229c565b6001600160a01b03161461157c5760405162461bcd60e51b8152600401610b6090614b40565b61013361158a828483614c81565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b82826040516115bc929190614d69565b60405180910390a15050565b6110846115d361229c565b8383612f58565b6000610cab6115e885614d7d565b3085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061302692505050565b80611631610e6061229c565b61164d5760405162461bcd60e51b8152600401610b6090614b94565b8161165781612114565b6114a561166384612d97565b8585612841565b606060006116788385614e07565b905030330361173d5760005b8381101561173b5761170b61169761229c565b61169f61316f565b8787858181106116b1576116b1614ab5565b90506020028101906116c39190614acb565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250613183915050565b82828151811061171d5761171d614ab5565b6020026020010181905250808061173390614b27565b915050611684565b505b610cab816131b3565b6000818152606760205260408120546001600160a01b0316611769576000610940565b3092915050565b606080836001600160401b0381111561178b5761178b6144d7565b6040519080825280602002602001820160405280156117be57816020015b60608152602001906001900390816117a95790505b509150836001600160401b038111156117d9576117d96144d7565b60405190808252806020026020018201604052801561180c57816020015b60608152602001906001900390816117f75790505b50905060005b848110156118895761183c86868381811061182f5761182f614ab5565b9050602002013585612e7e565b84838151811061184e5761184e614ab5565b6020026020010184848151811061186757611867614ab5565b602002602001018290528290525050808061188190614b27565b915050611812565b50935093915050565b8161189e610e6061229c565b6118ba5760405162461bcd60e51b8152600401610b6090614b94565b826118c481612114565b6118cd846127d4565b611170868686866132de565b610134546001600160a01b03166118ee61229c565b6001600160a01b0316146119145760405162461bcd60e51b8152600401610b6090614b40565b600080611924610e08898b614b87565b9150915061193181613311565b6119498a83611943610e3f8c8e614b87565b86613371565b6119568787878786612612565b50505050505050505050565b600081815260c96020526040902080546060919061197f90614a66565b80601f01602080910402602001604051908101604052809291908181526020018280546119ab90614a66565b80156119f85780601f106119cd576101008083540402835291602001916119f8565b820191906000526020600020905b8154815290600101906020018083116119db57829003601f168201915b50505050509050919050565b6001600160a01b03811660009081526101356020526040902054606090611a2a81612e9f565b6113ff576000818152610138602052604090208054611a4890614a66565b80601f0160208091040260200160405190810160405280929190818152602001828054611a7490614a66565b8015611ac15780601f10611a9657610100808354040283529160200191611ac1565b820191906000526020600020905b815481529060010190602001808311611aa457829003601f168201915b5050505050915050919050565b6060611ad9826120b5565b6000611ae36133c4565b90506000815111611b035760405180602001604052806000815250610db7565b80611b0d846133d4565b604051602001611b1e929190614e7a565b6040516020818303038152906040529392505050565b80611b40610e6061229c565b611b5c5760405162461bcd60e51b8152600401610b6090614b94565b81611b6681612114565b610ef58787878787612612565b7f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87546001600160a01b0316611ba661229c565b6001600160a01b031614611bcc5760405162461bcd60e51b8152600401610b6090614bdd565b6020819003611bef576000611be382840184613f8b565b90506114a584826122ab565b6000611bfd82840184614ea9565b805190915060005b8181101561117057611c3086848381518110611c2357611c23614ab5565b60200260200101516122ab565b80611c3a81614b27565b915050611c05565b600081815261013960205260408120546001600160401b03161580159061094057505060009081526101396020526040902054426001600160401b039091161090565b80611c91610e6061229c565b611cad5760405162461bcd60e51b8152600401610b6090614b94565b81611cb781612114565b610ef587878787876134d4565b6000611cce61229c565b6001600160a01b0381166000908152610135602052604081205491925003611d425760405162461bcd60e51b815260206004820152602160248201527f52656769737472793a20524556455253455f5245434f52445f49535f454d50546044820152605960f81b6064820152608401610b60565b6111ca816134ea565b6060816001600160401b03811115611d6557611d656144d7565b604051908082528060200260200182016040528015611d9857816020015b6060815260200190600190039081611d835790505b50905060005b82811015611df757611dc7848483818110611dbb57611dbb614ab5565b90506020020135611962565b828281518110611dd957611dd9614ab5565b60200260200101819052508080611def90614b27565b915050611d9e565b5092915050565b610134546001600160a01b0316611e1361229c565b6001600160a01b031614611e395760405162461bcd60e51b8152600401610b6090614b40565b61013454611e50906001600160a01b0316846122ab565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c39528383604051611e82929190614d69565b60405180910390a2505050565b600054610100900460ff1615808015611eaf5750600054600160ff909116105b80611ec95750303b158015611ec9575060005460ff166001145b611f2c5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610b60565b6000805460ff191660011790558015611f4f576000805461ff0019166101001790555b61013480546001600160a01b0319166001600160a01b038716179055837f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec9237880546001600160a01b0319166001600160a01b03929092169190911790556040805180820182526013815272556e73746f707061626c6520446f6d61696e7360681b60208083019190915282518084019093526002835261155160f21b90830152611ff79161352f565b611fff61356f565b61200761356f565b61201083613598565b612019826135c8565b8015610ea0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b60006001600160e01b031982166380ac58cd60e01b148061209657506001600160e01b03198216635b5e139f60e01b145b8061094057506301ffc9a760e01b6001600160e01b0319831614610940565b6000818152606760205260409020546001600160a01b03166111ca5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b60565b3033036121715761212361316f565b81146111ca5760405162461bcd60e51b815260206004820152601760248201527f52656769737472793a20544f4b454e5f494e56414c49440000000000000000006044820152606401610b60565b6111ca816135f8565b600061218582612d97565b9050806001600160a01b0316836001600160a01b0316036121f25760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b6064820152608401610b60565b806001600160a01b031661220461229c565b6001600160a01b0316148061222057506122208161088861229c565b6122925760405162461bcd60e51b815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c00006064820152608401610b60565b610a138383613626565b60006122a6613694565b905090565b6001600160a01b0382166123015760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610b60565b6000818152606760205260409020546001600160a01b0316156123665760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610b60565b612372600083836136af565b6001600160a01b038216600090815260686020526040812080546001929061239b908490614f39565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b03861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b6000612403612a4b565b905061240f8183613626565b60008051602061529383398151915254604080516020808201869052825180830390910181528183019283905263e3dec8fb60e01b9092526001600160a01b0390921691829163e3dec8fb9161246c918891309190604401614f4c565b600060405180830381600087803b15801561248657600080fd5b505af115801561249a573d6000803e3d6000fd5b5050505050505050565b6060610db7836040516020016124ba9190614c1f565b6040516020818303038152906040528051906020012060001c8361378b565b60606124e4856135f8565b600080876001600160a01b0316866124fe8b8a8989613183565b60405161250b9190614c1f565b60006040518083038160008787f1925050503d8060008114612549576040519150601f19603f3d011682016040523d82523d6000602084013e61254e565b606091505b50909250905061255f603f87614f8e565b5a1161256d5761256d614fa2565b6125ad82826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061386d565b9998505050505050505050565b805160009081905b801561260c578291506125f882856125db600185614fb8565b815181106125eb576125eb614ab5565b60200260200101516138a6565b92508061260481614fcb565b9150506125c2565b50915091565b60005b848110156111705761266e86868381811061263257612632614ab5565b90506020028101906126449190614acb565b86868581811061265657612656614ab5565b90506020028101906126689190614acb565b86612bf3565b8061267881614b27565b915050612615565b606060008260008151811061269757612697614ab5565b602002602001015190506000600190505b8351811015611df757818482815181106126c4576126c4614ab5565b60200260200101516040516020016126dd929190614fe2565b604051602081830303815290604052915080806126f990614b27565b9150506126a8565b61dead6001600160a01b0384161480159061273357506001600160a01b03831660009081526101356020526040902054155b15610a1357610a13838383612df7565b60008061274f8361122d565b90506001600160a01b03811615801590610cab5750806001600160a01b0316846001600160a01b031614806127a957506001600160a01b038082166000908152606a602090815260408083209388168352929052205460ff165b80610cab5750836001600160a01b03166127c2846109d8565b6001600160a01b031614949350505050565b6127dd81613952565b6040516020016127ef91815260200190565b60408051601f198184030181528282528051602091820120600085815260cb9092529181209190915582917f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9190a250565b826001600160a01b031661285482612d97565b6001600160a01b0316146128b85760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b6064820152608401610b60565b6001600160a01b03821661291a5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610b60565b6129258383836136af565b612930600082613626565b6001600160a01b0383166000908152606860205260408120805460019290612959908490614fb8565b90915550506001600160a01b0382166000908152606860205260408120805460019290612987908490614f39565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60005b8481101561117057612a39868683818110612a0857612a08614ab5565b90506020020135858584818110612a2157612a21614ab5565b9050602002810190612a339190614acb565b85612cd2565b80612a4381614b27565b9150506129eb565b600080516020615293833981519152546000906001600160a01b03168015612b485760405163721804d360e11b81523060048201526000906001600160a01b0383169063e43009a690602401602060405180830381865afa158015612ab4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ad8919061501e565b60405163e66f960360e01b8152600481018290529091506001600160a01b0383169063e66f960390602401602060405180830381865afa158015612b20573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b449190615037565b9250505b5090565b6000612b5782612d97565b9050612b65816000846136af565b612b70600083613626565b6001600160a01b0381166000908152606860205260408120805460019290612b99908490614fb8565b909155505060008281526067602052604080822080546001600160a01b0319169055518391906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b60008585604051602001612c08929190615054565b60408051601f198184030181528282528051602091820120601f8901829004820284018201909252878352909250612c5c9183918990899081908401838280828437600092019190915250612d7292505050565b6111708187878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061397a915050565b612cdb84613aaf565b612d275760405162461bcd60e51b815260206004820152601c60248201527f5265636f726453746f726167653a204b45595f4e4f545f464f554e44000000006044820152606401610b60565b6114a584612d3486611962565b85858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525087925061397a915050565b612d7b82613aaf565b61108457600082815260c960205260409020610a138282615064565b6000818152606760205260408120546001600160a01b0316806109405760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b60565b6000828152610138602052604090208054612e1190614a66565b9050600003612e3557600082815261013860205260409020612e338282615064565b505b6001600160a01b03831660008181526101356020526040808220859055518492917feb76a21470988c474a21f690cc28fee1ed511bd812dc3c21fd0f49c5e5d4708a91a3505050565b606080612e8a84611962565b9150612e96848461378b565b90509250929050565b6000818152610137602052604081205460ff16801561094057506101366000612ec661229c565b6001600160a01b0316815260208101919091526040016000205460ff1692915050565b60008051602061529383398151915254604051633805550f60e01b81526001600160a01b03909116908190633805550f90612f2a9086908690600401614d69565b600060405180830381600087803b158015612f4457600080fd5b505af1158015610ef5573d6000803e3d6000fd5b816001600160a01b0316836001600160a01b031603612fb95760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610b60565b6001600160a01b038381166000818152606a6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561306d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613091919061501e565b9050600061313f8660600151805190602001208688602001516040516020016130df9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561316557508551613165906001600160a01b03168286613ad5565b9695505050505050565b60003033036131805750601f193601355b90565b606082858560405160200161319a93929190615123565b6040516020818303038152906040529050949350505050565b606081516001600160401b038111156131ce576131ce6144d7565b60405190808252806020026020018201604052801561320157816020015b60608152602001906001900390816131ec5790505b50905060005b82518110156113ff57600080306001600160a01b031685848151811061322f5761322f614ab5565b60200260200101516040516132449190614c1f565b600060405180830381855af49150503d806000811461327f576040519150601f19603f3d011682016040523d82523d6000602084013e613284565b606091505b50915091506132ac82826040518060600160405280602781526020016152b36027913961386d565b8484815181106132be576132be614ab5565b6020026020010181905250505080806132d690614b27565b915050613207565b6132e9848484612841565b6132f584848484613c17565b6114a55760405162461bcd60e51b8152600401610b6090615162565b6000818152610137602052604090205460ff16156111ca5760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a20544f4b454e5f555047524144454400000000000000006044820152606401610b60565b61337b84846122ab565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952836040516133ab9190613f78565b60405180910390a280156114a5576114a5848484612701565b6060610133805461095590614a66565b6060816000036133fb5750506040805180820190915260018152600360fc1b602082015290565b8160005b8115613425578061340f81614b27565b915061341e9050600a83614f8e565b91506133ff565b6000816001600160401b0381111561343f5761343f6144d7565b6040519080825280601f01601f191660200182016040528015613469576020820181803683370190505b5090505b8415610cab5761347e600183614fb8565b915061348b600a866151b4565b613496906030614f39565b60f81b8183815181106134ab576134ab614ab5565b60200101906001600160f81b031916908160001a9053506134cd600a86614f8e565b945061346d565b6134dd816127d4565b610ea08585858585612612565b6001600160a01b03811660008181526101356020526040808220829055517ffcf5eec0cfa3e6332f5f0e63ec242d71f866a61d121d6cdf5c2eb3b668a26c4f9190a250565b600054610100900460ff166135565760405162461bcd60e51b8152600401610b60906151c8565b60656135628382615064565b506066610a138282615064565b600054610100900460ff166135965760405162461bcd60e51b8152600401610b60906151c8565b565b600054610100900460ff166135bf5760405162461bcd60e51b8152600401610b60906151c8565b6111ca81613d1c565b600054610100900460ff166135ef5760405162461bcd60e51b8152600401610b60906151c8565b6111ca81613d75565b60008181526101006020526040902054613613906001614f39565b6000918252610100602052604090912055565b600081815260696020526040902080546001600160a01b0319166001600160a01b038416908117909155819061365b82612d97565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60003033036136aa575060331936013560601c90565b503390565b6001600160a01b0382166136c6576136c681613311565b600081815261013960205260409020546001600160401b031615613761576001600160a01b0382161580159061371557506136ff612a4b565b6001600160a01b0316826001600160a01b031614155b6137615760405162461bcd60e51b815260206004820152601960248201527f52656769737472793a20544f4b454e5f455850495241424c45000000000000006044820152606401610b60565b6001600160a01b03831660009081526101356020526040902054819003610a1357610a13836134ea565b606061379682612e9f565b156137b05750604080516020810190915260008152610940565b60ca60006137bd84613952565b8152602001908152602001600020600084815260200190815260200160002080546137e790614a66565b80601f016020809104026020016040519081016040528092919081815260200182805461381390614a66565b80156138605780601f1061383557610100808354040283529160200191613860565b820191906000526020600020905b81548152906001019060200180831161384357829003601f168201915b5050505050905092915050565b6060831561387c575081610db7565b82511561388c5782518084602001fd5b8160405162461bcd60e51b8152600401610b609190613f78565b600081516000036138f15760405162461bcd60e51b815260206004820152601560248201527452656769737472793a204c4142454c5f454d50545960581b6044820152606401610b60565b82826040516020016139039190614c1f565b60405160208183030381529060405280519060200120604051602001613933929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b600081815260cb602052604081205415612b4857600082815260cb6020526040902054610940565b60ca600061398783613952565b8152602001908152602001600020600085815260200190815260200160002080546139b190614a66565b9050600003613a0957826040516139c89190614c1f565b6040518091039020817f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f8685604051613a009190613f78565b60405180910390a35b8160ca6000613a1784613952565b815260200190815260200160002060008681526020019081526020016000209081613a429190615064565b5081604051613a519190614c1f565b604051809103902083604051613a679190614c1f565b6040518091039020827f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d928686604051613aa19291906146e2565b60405180910390a450505050565b600081815260c9602052604081208054829190613acb90614a66565b9050119050919050565b6000806000613ae48585613dc3565b90925090506000816004811115613afd57613afd615213565b148015613b1b5750856001600160a01b0316826001600160a01b0316145b15613b2b57600192505050610db7565b600080876001600160a01b0316631626ba7e60e01b8888604051602401613b53929190615229565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051613b919190614c1f565b600060405180830381855afa9150503d8060008114613bcc576040519150601f19603f3d011682016040523d82523d6000602084013e613bd1565b606091505b5091509150818015613be4575080516020145b8015613c0b57508051630b135d3f60e11b90613c09908301602090810190840161501e565b145b98975050505050505050565b60006001600160a01b0384163b15613d1457836001600160a01b031663150b7a02613c4061229c565b8786866040518563ffffffff1660e01b8152600401613c629493929190615242565b6020604051808303816000875af1925050508015613c9d575060408051601f3d908101601f19168201909252613c9a91810190615275565b60015b613cfa573d808015613ccb576040519150601f19603f3d011682016040523d82523d6000602084013e613cd0565b606091505b508051600003613cf25760405162461bcd60e51b8152600401610b6090615162565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610cab565b506001610cab565b600054610100900460ff16613d435760405162461bcd60e51b8152600401610b60906151c8565b806000805160206152938339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b600054610100900460ff16613d9c5760405162461bcd60e51b8152600401610b60906151c8565b807f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87613d54565b6000808251604103613df95760208301516040840151606085015160001a613ded87828585613e08565b94509450505050613e01565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613e3f5750600090506003613eec565b8460ff16601b14158015613e5757508460ff16601c14155b15613e685750600090506004613eec565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613ebc573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613ee557600060019250925050613eec565b9150600090505b94509492505050565b6001600160e01b0319811681146111ca57600080fd5b600060208284031215613f1d57600080fd5b8135610db781613ef5565b60005b83811015613f43578181015183820152602001613f2b565b50506000910152565b60008151808452613f64816020860160208601613f28565b601f01601f19169290920160200192915050565b602081526000610db76020830184613f4c565b600060208284031215613f9d57600080fd5b5035919050565b6001600160a01b03811681146111ca57600080fd5b60008060408385031215613fcc57600080fd5b8235613fd781613fa4565b946020939093013593505050565b60008083601f840112613ff757600080fd5b5081356001600160401b0381111561400e57600080fd5b602083019150836020828501011115613e0157600080fd5b60008060008060006080868803121561403e57600080fd5b853561404981613fa4565b9450602086013561405981613fa4565b93506040860135925060608601356001600160401b0381111561407b57600080fd5b61408788828901613fe5565b969995985093965092949392505050565b60008083601f8401126140aa57600080fd5b5081356001600160401b038111156140c157600080fd5b6020830191508360208260051b8501011115613e0157600080fd5b6000806000604084860312156140f157600080fd5b83356001600160401b0381111561410757600080fd5b61411386828701614098565b909790965060209590950135949350505050565b600082825180855260208086019550808260051b84010181860160005b8481101561417257601f19868403018952614160838351613f4c565b98840198925090830190600101614144565b5090979650505050505050565b602081526000610db76020830184614127565b6000806000604084860312156141a757600080fd5b83356001600160401b038111156141bd57600080fd5b61411386828701613fe5565b6000806000604084860312156141de57600080fd5b83356001600160401b03808211156141f557600080fd5b908501906080828803121561420957600080fd5b9093506020850135908082111561421f57600080fd5b5061422c86828701613fe5565b9497909650939450505050565b8035801515811461124557600080fd5b60008060008060008060008060a0898b03121561426557600080fd5b883561427081613fa4565b975060208901356001600160401b038082111561428c57600080fd5b6142988c838d01614098565b909950975060408b01359150808211156142b157600080fd5b6142bd8c838d01614098565b909750955060608b01359150808211156142d657600080fd5b506142e38b828c01614098565b90945092506142f6905060808a01614239565b90509295985092959890939650565b60008060006060848603121561431a57600080fd5b833561432581613fa4565b9250602084013561433581613fa4565b929592945050506040919091013590565b6000806020838503121561435957600080fd5b82356001600160401b0381111561436f57600080fd5b61437b85828601614098565b90969095509350505050565b60008060008060006060868803121561439f57600080fd5b85356001600160401b03808211156143b657600080fd5b6143c289838a01614098565b909750955060208801359150808211156143db57600080fd5b506143e888828901614098565b96999598509660400135949350505050565b6000806040838503121561440d57600080fd5b82356001600160401b0381168114613fd757600080fd5b60008060008060006060868803121561443c57600080fd5b85356001600160401b038082111561445357600080fd5b61445f89838a01613fe5565b9097509550602088013591508082111561447857600080fd5b506143e888828901613fe5565b6000806000806060858703121561449b57600080fd5b8435935060208501356001600160401b038111156144b857600080fd5b6144c487828801613fe5565b9598909750949560400135949350505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715614515576145156144d7565b604052919050565b600082601f83011261452e57600080fd5b81356001600160401b03811115614547576145476144d7565b61455a601f8201601f19166020016144ed565b81815284602083860101111561456f57600080fd5b816020850160208301376000918101602001919091529392505050565b60006020828403121561459e57600080fd5b81356001600160401b038111156145b457600080fd5b610cab8482850161451d565b6000602082840312156145d257600080fd5b8135610db781613fa4565b60006001600160401b038211156145f6576145f66144d7565b5060051b60200190565b600061461361460e846145dd565b6144ed565b8381529050602080820190600585901b84018681111561463257600080fd5b845b8181101561466d5780356001600160401b038111156146535760008081fd5b61465f8982890161451d565b855250928201928201614634565b505050509392505050565b60006020828403121561468a57600080fd5b81356001600160401b038111156146a057600080fd5b8201601f810184136146b157600080fd5b610cab84823560208401614600565b600080604083850312156146d357600080fd5b50508035926020909101359150565b6040815260006146f56040830185613f4c565b8281036020840152610db38185613f4c565b6000806000806060858703121561471d57600080fd5b843561472881613fa4565b93506020850135925060408501356001600160401b0381111561474a57600080fd5b61475687828801613fe5565b95989497509550505050565b60008060008060008060006080888a03121561477d57600080fd5b87356001600160401b038082111561479457600080fd5b6147a08b838c01613fe5565b909950975060208a0135965060408a01359150808211156147c057600080fd5b6147cc8b838c01614098565b909650945060608a01359150808211156147e557600080fd5b506147f28a828b01614098565b989b979a50959850939692959293505050565b6000806020838503121561481857600080fd5b82356001600160401b0381111561482e57600080fd5b61437b85828601613fe5565b6000806040838503121561484d57600080fd5b823561485881613fa4565b9150612e9660208401614239565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156148bb57603f198886030184526148a9858351613f4c565b9450928501929085019060010161488d565b5092979650505050505050565b6040815260006148db6040830185614127565b8281036020840152610db38185614127565b6000806000806080858703121561490357600080fd5b843561490e81613fa4565b9350602085013561491e81613fa4565b92506040850135915060608501356001600160401b0381111561494057600080fd5b61494c8782880161451d565b91505092959194509250565b60008060006040848603121561496d57600080fd5b833561497881613fa4565b925060208401356001600160401b0381111561499357600080fd5b61422c86828701613fe5565b600080604083850312156149b257600080fd5b82356149bd81613fa4565b915060208301356149cd81613fa4565b809150509250929050565b6000806000604084860312156149ed57600080fd5b8335925060208401356001600160401b0381111561499357600080fd5b60008060008060808587031215614a2057600080fd5b8435614a2b81613fa4565b93506020850135614a3b81613fa4565b92506040850135614a4b81613fa4565b91506060850135614a5b81613fa4565b939692955090935050565b600181811c90821680614a7a57607f821691505b6020821081036113ff57634e487b7160e01b600052602260045260246000fd5b600060208284031215614aac57600080fd5b610db782614239565b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112614ae257600080fd5b8301803591506001600160401b03821115614afc57600080fd5b602001915036819003821315613e0157600080fd5b634e487b7160e01b600052601160045260246000fd5b600060018201614b3957614b39614b11565b5060010190565b60208082526027908201527f52656769737472793a2053454e4445525f49535f4e4f545f4d494e54494e475f60408201526626a0a720a3a2a960c91b606082015260800190565b6000610db7368484614600565b60208082526029908201527f52656769737472793a2053454e4445525f49535f4e4f545f415050524f5645446040820152682fa7a92fa7aba722a960b91b606082015260800190565b60208082526022908201527f52656769737472793a20494e53554646494349454e545f5045524d495353494f6040820152614e5360f01b606082015260800190565b60008251614c31818460208701613f28565b9190910192915050565b601f821115610a1357600081815260208120601f850160051c81016020861015614c625750805b601f850160051c820191505b8181101561117057828155600101614c6e565b6001600160401b03831115614c9857614c986144d7565b614cac83614ca68354614a66565b83614c3b565b6000601f841160018114614ce05760008515614cc85750838201355b600019600387901b1c1916600186901b178355610ea0565b600083815260209020601f19861690835b82811015614d115786850135825560209485019460019092019101614cf1565b5086821015614d2e5760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b602081526000610cab602083018486614d40565b600060808236031215614d8f57600080fd5b604051608081016001600160401b038282108183111715614db257614db26144d7565b8160405284359150614dc382613fa4565b81835260208501356020840152604085013560408401526060850135915080821115614dee57600080fd5b50614dfb3682860161451d565b60608301525092915050565b6000614e1561460e846145dd565b80848252602080830192508560051b850136811115614e3357600080fd5b855b81811015614e6e5780356001600160401b03811115614e545760008081fd5b614e6036828a0161451d565b865250938201938201614e35565b50919695505050505050565b60008351614e8c818460208801613f28565b835190830190614ea0818360208801613f28565b01949350505050565b60006020808385031215614ebc57600080fd5b82356001600160401b03811115614ed257600080fd5b8301601f81018513614ee357600080fd5b8035614ef161460e826145dd565b81815260059190911b82018301908381019087831115614f1057600080fd5b928401925b82841015614f2e57833582529284019290840190614f15565b979650505050505050565b8082018082111561094057610940614b11565b6001600160a01b03848116825283166020820152606060408201819052600090610b6990830184613f4c565b634e487b7160e01b600052601260045260246000fd5b600082614f9d57614f9d614f78565b500490565b634e487b7160e01b600052600160045260246000fd5b8181038181111561094057610940614b11565b600081614fda57614fda614b11565b506000190190565b60008351614ff4818460208801613f28565b601760f91b9083019081528351615012816001840160208801613f28565b01600101949350505050565b60006020828403121561503057600080fd5b5051919050565b60006020828403121561504957600080fd5b8151610db781613fa4565b8183823760009101908152919050565b81516001600160401b0381111561507d5761507d6144d7565b6150918161508b8454614a66565b84614c3b565b602080601f8311600181146150c657600084156150ae5750858301515b600019600386901b1c1916600185901b178555611170565b600085815260208120601f198616915b828110156150f5578886015182559484019460019091019084016150d6565b50858210156151135787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60008451615135818460208901613f28565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6000826151c3576151c3614f78565b500690565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b634e487b7160e01b600052602160045260246000fd5b828152604060208201526000610cab6040830184613f4c565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061316590830184613f4c565b60006020828403121561528757600080fd5b8151610db781613ef556febe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a","storage":{}},"0x6ac8f19d1e0f81147cdf2a1e53cb1f4e18417204":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610296575f3560e01c80636352211e11610161578063c93ab3fd116100ca578063e985e9c511610084578063e985e9c5146106c8578063eb8ae530146106db578063ed70554d146106ee578063f242432a1461070d578063f2fde38b14610720578063fd0cd0d914610733575f80fd5b8063c93ab3fd14610647578063cf4088231461065a578063d8c9921a1461066d578063d9a50c1214610680578063da8c229e14610693578063e0dba60f146106b5575f80fd5b8063a22cb4651161011b578063a22cb465146105d5578063a4014982146105e8578063adf4960a146105fb578063b6bcad261461060e578063c475abff14610621578063c658e08614610634575f80fd5b80636352211e146105595780636e5d6ad21461056c578063715018a6146105975780638b4dfa751461059f5780638cf8b41e146105b25780638da5cb5b146105c5575f80fd5b80631f4e1504116102035780633f15457f116101bd5780633f15457f146104b1578063402906fc146104d857806341415eab146105005780634e1273f41461051357806353095467146105335780635d3590d514610546575f80fd5b80631f4e15041461042b57806320c38e2b1461043e57806324c1af44146104515780632b20e397146104645780632eb2c2d61461048b57806333c69ea91461049e575f80fd5b80630e4cd725116102545780630e4cd725146103a05780630e89341c146103b357806314ab9038146103c6578063150b7a02146103d95780631534e177146104055780631896f70a14610418575f80fd5b8062fdd58e1461029a5780630178fe3f146102c057806301ffc9a71461030657806306fdde0314610329578063081812fc14610360578063095ea7b31461038b575b5f80fd5b6102ad6102a8366004614316565b610746565b6040519081526020015b60405180910390f35b6102d36102ce366004614340565b6107f0565b604080516001600160a01b03909416845263ffffffff90921660208401526001600160401b0316908201526060016102b7565b61031961031436600461436c565b61081f565b60405190151581526020016102b7565b6103536040518060400160405280600b81526020016a2730b6b2abb930b83832b960a91b81525081565b6040516102b791906143d4565b61037361036e366004614340565b61085e565b6040516001600160a01b0390911681526020016102b7565b61039e610399366004614316565b6108a0565b005b6103196103ae3660046143e6565b6108e5565b6103536103c1366004614340565b61095e565b61039e6103d436600461442f565b6109cc565b6103ec6103e736600461449d565b610ac0565b6040516001600160e01b031990911681526020016102b7565b61039e61041336600461450a565b610c96565b61039e6104263660046143e6565b610cc0565b600754610373906001600160a01b031681565b61035361044c366004614340565b610d75565b6102ad61045f3660046145f6565b610e0c565b6103737f000000000000000000000000c965345edac823d56812cd20a10316233916a60581565b61039e610499366004614717565b610fe7565b61039e6104ac3660046147bd565b61121a565b6103737f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a981565b6104eb6104e6366004614811565b6113e6565b60405163ffffffff90911681526020016102b7565b61031961050e3660046143e6565b611480565b610526610521366004614832565b6114b8565b6040516102b79190614928565b600554610373906001600160a01b031681565b61039e61055436600461493a565b6115d7565b610373610567366004614340565b611655565b61057f61057a366004614978565b61165f565b6040516001600160401b0390911681526020016102b7565b61039e61178e565b61039e6105ad3660046149aa565b6117a1565b61057f6105c03660046149e9565b6118c0565b5f546001600160a01b0316610373565b61039e6105e3366004614a6b565b611c28565b6102ad6105f6366004614a97565b611cfd565b610319610609366004614b12565b611e38565b61039e61061c36600461450a565b611e5c565b6102ad61062f366004614b33565b61209e565b6102ad610642366004614b53565b6122fd565b61039e610655366004614bc0565b6124bd565b61039e610668366004614c26565b612605565b61039e61067b366004614c5b565b612794565b61031961068e366004614b33565b61285d565b6103196106a136600461450a565b60046020525f908152604090205460ff1681565b61039e6106c3366004614a6b565b612938565b6103196106d6366004614c86565b61299f565b61039e6106e9366004614cb2565b6129cc565b6102ad6106fc366004614340565b60016020525f908152604090205481565b61039e61071b366004614d15565b612d59565b61039e61072e36600461450a565b612e06565b610319610741366004614340565b612e7c565b5f6001600160a01b0383166107b65760405162461bcd60e51b815260206004820152602b60248201527f455243313135353a2062616c616e636520717565727920666f7220746865207a60448201526a65726f206164647265737360a81b60648201526084015b60405180910390fd5b5f6107c083611655565b9050836001600160a01b0316816001600160a01b0316036107e55760019150506107ea565b5f9150505b92915050565b5f8181526001602052604090205460a081901c60c082901c610813838383612f4d565b90959094509092509050565b5f6001600160e01b03198216631b05885b60e31b148061084f57506001600160e01b03198216630a85bd0160e11b145b806107ea57506107ea82612f80565b5f8061086983611655565b90506001600160a01b03811661088157505f92915050565b5f838152600360205260409020546001600160a01b03165b9392505050565b5f6108aa826107f0565b50915050603f1960408216016108d65760405163a2a7201360e01b8152600481018390526024016107ad565b6108e08383612fcf565b505050565b5f8080806108f2866107f0565b925092509250846001600160a01b0316836001600160a01b0316148061091d575061091d838661299f565b8061094157506001600160a01b0385166109368761085e565b6001600160a01b0316145b8015610954575061095282826130de565b155b9695505050505050565b6005546040516303a24d0760e21b8152600481018390526060916001600160a01b031690630e89341c906024015f60405180830381865afa1580156109a5573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526107ea9190810190614d78565b816109d78133611480565b6109f857803360405163168ab55d60e31b81526004016107ad929190614dea565b8260105f610a05836107f0565b5091505063ffffffff8282161615610a335760405163a2a7201360e01b8152600481018490526024016107ad565b604051630295720760e31b8152600481018790526001600160401b03861660248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906314ab9038906044015b5f604051808303815f87803b158015610aa2575f80fd5b505af1158015610ab4573d5f803e3d5ffd5b50505050505050505050565b5f336001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a6051614610b0a5760405163032634a760e31b815260040160405180910390fd5b5f808080610b1a86880188614e01565b83516020850120939750919550935091508890808214610b57576040516331970f3360e21b815260048101829052602481018390526044016107ad565b604051630a3b53db60e21b81526001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906328ed4f6c90610ba59085903090600401614dea565b5f604051808303815f87803b158015610bbc575f80fd5b505af1158015610bce573d5f803e3d5ffd5b5050604051636b727d4360e11b8152600481018d90525f92506276a70091506001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063d6e4fa8690602401602060405180830381865afa158015610c3c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c609190614e64565b610c6a9190614e8f565b9050610c7d87878761ffff16848861310d565b50630a85bd0160e11b9c9b505050505050505050505050565b610c9e613215565b600580546001600160a01b0319166001600160a01b0392909216919091179055565b81610ccb8133611480565b610cec57803360405163168ab55d60e31b81526004016107ad929190614dea565b8260085f610cf9836107f0565b5091505063ffffffff8282161615610d275760405163a2a7201360e01b8152600481018490526024016107ad565b604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a90610a8b9089908990600401614dea565b60066020525f908152604090208054610d8d90614eb6565b80601f0160208091040260200160405190810160405280929190818152602001828054610db990614eb6565b8015610e045780601f10610ddb57610100808354040283529160200191610e04565b820191905f5260205f20905b815481529060010190602001808311610de757829003601f168201915b505050505081565b5f87610e188133611480565b610e3957803360405163168ab55d60e31b81526004016107ad929190614dea565b87516020890120610e4a8a8261326e565b9250610e568a8461329a565b610e6083866133d3565b610e6b8a848b613406565b50610e788a8487876134cd565b9350610e8383613510565b610f33576040516305ef2c7f60e41b8152600481018b9052602481018290523060448201526001600160a01b0388811660648301526001600160401b03881660848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610f0a575f80fd5b505af1158015610f1c573d5f803e3d5ffd5b50505050610f2e8a848b8b89896135c6565b610fda565b6040516305ef2c7f60e41b8152600481018b9052602481018290523060448201526001600160a01b0388811660648301526001600160401b03881660848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610fb6575f80fd5b505af1158015610fc8573d5f803e3d5ffd5b50505050610fda8a848b8b89896135fc565b5050979650505050505050565b81518351146110495760405162461bcd60e51b815260206004820152602860248201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206044820152670dad2e6dac2e8c6d60c31b60648201526084016107ad565b6001600160a01b03841661106f5760405162461bcd60e51b81526004016107ad90614eee565b6001600160a01b03851633148061108b575061108b853361299f565b6110f25760405162461bcd60e51b815260206004820152603260248201527f455243313135353a207472616e736665722063616c6c6572206973206e6f74206044820152711bdddb995c881b9bdc88185c1c1c9bdd995960721b60648201526084016107ad565b5f5b83518110156111ad575f84828151811061111057611110614f33565b602002602001015190505f84838151811061112d5761112d614f33565b602002602001015190505f805f611143856107f0565b9250925092506111548583836136b6565b83600114801561117557508a6001600160a01b0316836001600160a01b0316145b6111915760405162461bcd60e51b81526004016107ad90614f47565b61119d858b848461375d565b50505050508060010190506110f4565b50836001600160a01b0316856001600160a01b0316336001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516111fd929190614f91565b60405180910390a461121333868686868661379d565b5050505050565b5f611225858561326e565b905061123181846133d3565b5f808061123d846107f0565b919450925090506001600160a01b03831615806112ea57506040516302571be360e01b81526004810185905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa1580156112ba573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112de9190614fbe565b6001600160a01b031614155b1561130857604051635374b59960e01b815260040160405180910390fd5b5f806113138a6107f0565b90935091508a905061134f576113298633611480565b61134a57853360405163168ab55d60e31b81526004016107ad929190614dea565b61137a565b6113598a33611480565b61137a57893360405163168ab55d60e31b81526004016107ad929190614dea565b6113858689846138f7565b611390878483613932565b9650620100008416158015906113b457508363ffffffff1688851763ffffffff1614155b156113d55760405163a2a7201360e01b8152600481018790526024016107ad565b96831796610ab486868a868b613977565b5f826113f28133611480565b61141357803360405163168ab55d60e31b81526004016107ad929190614dea565b8360025f611420836107f0565b5091505063ffffffff828216161561144e5760405163a2a7201360e01b8152600481018490526024016107ad565b5f808061145a8a6107f0565b9250925092506114738a84848c61ffff16178485613977565b5098975050505050505050565b5f80808061148d866107f0565b925092509250846001600160a01b0316836001600160a01b031614806109415750610941838661299f565b6060815183511461151d5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b60648201526084016107ad565b5f83516001600160401b0381111561153757611537614525565b604051908082528060200260200182016040528015611560578160200160208202803683370190505b5090505f5b84518110156115cf576115aa85828151811061158357611583614f33565b602002602001015185838151811061159d5761159d614f33565b6020026020010151610746565b8282815181106115bc576115bc614f33565b6020908102919091010152600101611565565b509392505050565b6115df613215565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af115801561162b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061164f9190614fd9565b50505050565b5f6107ea82613a1e565b5f8061166b858561326e565b905061167681613510565b61169357604051635374b59960e01b815260040160405180910390fd5b5f61169e86336108e5565b9050801580156116b557506116b38233611480565b155b156116d757813360405163168ab55d60e31b81526004016107ad929190614dea565b5f80806116e3856107f0565b925092509250831580156116fa5750620400008216155b1561171b5760405163a2a7201360e01b8152600481018690526024016107ad565b5f6117258a6107f0565b92505050611734888383613932565b97506117428685858b613a33565b6040516001600160401b038916815286907ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b1329060200160405180910390a2509598975050505050505050565b611796613215565b61179f5f613a49565b565b6117b85f805160206154fc8339815191528461326e565b6117c28133611480565b6117e357803360405163168ab55d60e31b81526004016107ad929190614dea565b306001600160a01b0384160361181757604051632ca49b0d60e11b81526001600160a01b03841660048201526024016107ad565b6118376118315f805160206154fc8339815191528661326e565b83613a98565b604051632142170760e11b81523060048201526001600160a01b038481166024830152604482018690527f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906342842e0e906064015f604051808303815f87803b1580156118a4575f80fd5b505af11580156118b6573d5f803e3d5ffd5b5050505050505050565b5f8086866040516118d2929190614ff4565b6040519081900381206331a9108f60e11b82526004820181905291505f907f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa15801561193f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119639190614fbe565b90506001600160a01b0381163314801590611a09575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063e985e9c590604401602060405180830381865afa1580156119e3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a079190614fd9565b155b15611a4157611a255f805160206154fc8339815191528361326e565b3360405163168ab55d60e31b81526004016107ad929190614dea565b6040516323b872dd60e01b81526001600160a01b038281166004830152306024830152604482018490527f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906323b872dd906064015f604051808303815f87803b158015611aae575f80fd5b505af1158015611ac0573d5f803e3d5ffd5b5050604051630a3b53db60e21b81526001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a6051692506328ed4f6c9150611b129085903090600401614dea565b5f604051808303815f87803b158015611b29575f80fd5b505af1158015611b3b573d5f803e3d5ffd5b5050604051636b727d4360e11b8152600481018590526276a70092507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b0316915063d6e4fa8690602401602060405180830381865afa158015611ba7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611bcb9190614e64565b611bd59190614e8f565b9250611c1d88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508a9250505061ffff8816868861310d565b505095945050505050565b6001600160a01b0382163303611c925760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084016107ad565b335f8181526002602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b335f9081526004602052604081205460ff16611d2b5760405162461bcd60e51b81526004016107ad90615003565b5f8787604051611d3c929190614ff4565b604051908190038120633f2891eb60e21b8252600482018190523060248301526044820187905291507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b03169063fca247ac906064016020604051808303815f875af1158015611db5573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611dd99190614e64565b9150611e2d88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508a9250505061ffff8616611e276276a70087614e8f565b8861310d565b509695505050505050565b5f80611e43846107f0565b50841663ffffffff908116908516149250505092915050565b611e64613215565b6007546001600160a01b031615611f785760075460405163a22cb46560e01b81526001600160a01b0391821660048201525f60248201527f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063a22cb465906044015f604051808303815f87803b158015611ee0575f80fd5b505af1158015611ef2573d5f803e3d5ffd5b505060075460405163a22cb46560e01b81526001600160a01b0391821660048201525f60248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9909116925063a22cb46591506044015f604051808303815f87803b158015611f61575f80fd5b505af1158015611f73573d5f803e3d5ffd5b505050505b600780546001600160a01b0319166001600160a01b0383169081179091551561209b5760075460405163a22cb46560e01b81526001600160a01b039182166004820152600160248201527f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063a22cb465906044015f604051808303815f87803b158015612007575f80fd5b505af1158015612019573d5f803e3d5ffd5b505060075460405163a22cb46560e01b81526001600160a01b039182166004820152600160248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9909116925063a22cb46591506044015f604051808303815f87803b158015612089575f80fd5b505af1158015611213573d5f803e3d5ffd5b50565b335f9081526004602052604081205460ff166120cc5760405162461bcd60e51b81526004016107ad90615003565b5f6120e45f805160206154fc8339815191528561326e565b60405163c475abff60e01b815260048101869052602481018590529091505f906001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063c475abff906044016020604051808303815f875af1158015612154573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906121789190614e64565b6040516331a9108f60e11b8152600481018790529091507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa9250505080156121fc575060408051601f3d908101601f191682019092526121f991810190614fbe565b60015b6122095791506107ea9050565b6001600160a01b038116301415806122b157506040516302571be360e01b81526004810184905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015612281573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906122a59190614fbe565b6001600160a01b031614155b156122c0575091506107ea9050565b505f6122cf6276a70083614e8f565b5f8481526001602052604090205490915060a081901c6122f185838386613a33565b50919695505050505050565b5f866123098133611480565b61232a57803360405163168ab55d60e31b81526004016107ad929190614dea565b5f878760405161233b929190614ff4565b6040518091039020905061234f898261326e565b925061235b898461329a565b61236583866133d3565b5f6123a68a858b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061340692505050565b90506123b48a8588886134cd565b94506123bf84613510565b61246b576040516306ab592360e01b8152600481018b9052602481018390523060448201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906306ab5923906064016020604051808303815f875af1158015612434573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906124589190614e64565b506124668482898989613b83565b6124b0565b6124b08a858b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508d92508c91508b90506135fc565b5050509695505050505050565b5f6125005f86868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613bc59050565b6007549091506001600160a01b031661252c5760405163093075b560e21b815260040160405180910390fd5b6125368133611480565b61255757803360405163168ab55d60e31b81526004016107ad929190614dea565b5f8080612563846107f0565b919450925090505f6125748561085e565b905061257f85613c81565b60075f9054906101000a90046001600160a01b03166001600160a01b0316639198c2768a8a878787878e8e6040518963ffffffff1660e01b81526004016125cd989796959493929190615073565b5f604051808303815f87803b1580156125e4575f80fd5b505af11580156125f6573d5f803e3d5ffd5b50505050505050505050505050565b836126108133611480565b61263157803360405163168ab55d60e31b81526004016107ad929190614dea565b84601c5f61263e836107f0565b5091505063ffffffff828216161561266c5760405163a2a7201360e01b8152600481018490526024016107ad565b60405163cf40882360e01b8152600481018990523060248201526001600160a01b0387811660448301526001600160401b03871660648301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063cf408823906084015f604051808303815f87803b1580156126e8575f80fd5b505af11580156126fa573d5f803e3d5ffd5b5050506001600160a01b038816905061275f575f612717896107f0565b509150506201ffff196202000082160161274f57604051632ca49b0d60e11b81526001600160a01b03891660048201526024016107ad565b612759895f613a98565b506118b6565b5f61276989611655565b905061278981898b5f1c600160405180602001604052805f815250613d1e565b505050505050505050565b61279e838361326e565b6127a88133611480565b6127c957803360405163168ab55d60e31b81526004016107ad929190614dea565b7f6c32148f748aba23997146d7fe89e962e3cc30271290fb96f5f4337756c03b5284016128095760405163615a470360e01b815260040160405180910390fd5b6001600160a01b038216158061282757506001600160a01b03821630145b1561285057604051632ca49b0d60e11b81526001600160a01b03831660048201526024016107ad565b61164f611831858561326e565b5f80612869848461326e565b90505f61287582613510565b90505f805160206154fc83398151915285146128945791506107ea9050565b6040516331a9108f60e11b8152600481018590527f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa925050508015612915575060408051601f3d908101601f1916820190925261291291810190614fbe565b60015b612923575f925050506107ea565b6001600160a01b0316301492506107ea915050565b612940613215565b6001600160a01b0382165f81815260046020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf8791015b60405180910390a25050565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205460ff1690565b5f80612a105f87878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613dfe9050565b915091505f612a578288888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613bc59050565b90505f612a64828561326e565b5f818152600660205260409020909150612a7f888a8361511e565b507f6c32148f748aba23997146d7fe89e962e3cc30271290fb96f5f4337756c03b528201612ac05760405163615a470360e01b815260040160405180910390fd5b6040516302571be360e01b8152600481018290525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa158015612b25573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612b499190614fbe565b90506001600160a01b0381163314801590612bef575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063e985e9c590604401602060405180830381865afa158015612bc9573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612bed9190614fd9565b155b15612c1157813360405163168ab55d60e31b81526004016107ad929190614dea565b6001600160a01b03861615612c9c57604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a90612c6e9085908a90600401614dea565b5f604051808303815f87803b158015612c85575f80fd5b505af1158015612c97573d5f803e3d5ffd5b505050505b604051635b0fc9c360e01b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635b0fc9c390612cea9085903090600401614dea565b5f604051808303815f87803b158015612d01575f80fd5b505af1158015612d13573d5f803e3d5ffd5b50505050612789828a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201829052508d93509150819050613b83565b6001600160a01b038416612d7f5760405162461bcd60e51b81526004016107ad90614eee565b6001600160a01b038516331480612d9b5750612d9b853361299f565b612df95760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2063616c6c6572206973206e6f74206f776e6572206e6f7260448201526808185c1c1c9bdd995960ba1b60648201526084016107ad565b6112138585858585613d1e565b612e0e613215565b6001600160a01b038116612e735760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107ad565b61209b81613a49565b5f8181526006602052604081208054829190612e9790614eb6565b80601f0160208091040260200160405190810160405280929190818152602001828054612ec390614eb6565b8015612f0e5780601f10612ee557610100808354040283529160200191612f0e565b820191905f5260205f20905b815481529060010190602001808311612ef157829003601f168201915b5050505050905080515f03612f2557505f92915050565b5f80612f318382613dfe565b90925090505f612f418483613bc5565b9050610954818461285d565b5f8042836001600160401b03161015612f775761ffff1962010000851601612f73575f94505b5f93505b50929391925050565b5f6001600160e01b03198216636cdb3d1360e11b1480612fb057506001600160e01b031982166303a24d0760e21b145b806107ea57506301ffc9a760e01b6001600160e01b03198316146107ea565b5f612fd982611655565b9050806001600160a01b0316836001600160a01b0316036130465760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084016107ad565b336001600160a01b03821614806130625750613062813361299f565b6130d45760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016107ad565b6108e08383613eb2565b5f620200008381161480156108995750426130fc6276a700846151d7565b6001600160401b0316109392505050565b845160208601205f61312c5f805160206154fc8339815191528361326e565b90505f61315488604051806040016040528060058152602001626cae8d60e31b815250613f1f565b5f83815260066020526040902090915061316e82826151f7565b50613181828289620300008a1789613b83565b6001600160a01b038416156118b657604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a906131de9085908890600401614dea565b5f604051808303815f87803b1580156131f5575f80fd5b505af1158015613207573d5f803e3d5ffd5b505050505050505050505050565b5f546001600160a01b0316331461179f5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107ad565b604080516020808201949094528082019290925280518083038201815260609092019052805191012090565b5f80806132a6846107f0565b91945092509050426001600160401b0382161080801561336657506001600160a01b038416158061336657506040516302571be360e01b8152600481018690525f906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015613337573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061335b9190614fbe565b6001600160a01b0316145b156133a4575f613375876107f0565b50915050602081161561339e5760405163a2a7201360e01b8152600481018790526024016107ad565b506133cb565b620100008316156133cb5760405163a2a7201360e01b8152600481018690526024016107ad565b505050505050565b63fffdffff81811763ffffffff16146134025760405163a2a7201360e01b8152600481018390526024016107ad565b5050565b60605f6134aa8360065f8881526020019081526020015f20805461342990614eb6565b80601f016020809104026020016040519081016040528092919081815260200182805461345590614eb6565b80156134a05780601f10613477576101008083540402835291602001916134a0565b820191905f5260205f20905b81548152906001019060200180831161348357829003601f168201915b5050505050613f1f565b5f8581526006602052604090209091506134c482826151f7565b50949350505050565b5f806134d8856107f0565b925050505f806134e9885f1c6107f0565b92509250506134f98787846138f7565b613504858483613932565b98975050505050505050565b5f8061351b83611655565b6001600160a01b0316141580156107ea57506040516302571be360e01b81526004810183905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015613592573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906135b69190614fbe565b6001600160a01b03161492915050565b5f86815260066020526040812080546135e491879161342990614eb6565b90506135f38682868686613b83565b50505050505050565b5f8080613608886107f0565b9250925092505f61362f8860065f8d81526020019081526020015f20805461342990614eb6565b5f8a815260066020526040902080549192509061364b90614eb6565b90505f0361366c575f89815260066020526040902061366a82826151f7565b505b61367b89858886178589613977565b6001600160a01b03871661369857613693895f613a98565b610ab4565b610ab484888b5f1c600160405180602001604052805f815250613d1e565b6201ffff19620200008316016136d6576136d36276a700826151d7565b90505b42816001600160401b0316101561370f576201000082161561370a5760405162461bcd60e51b81526004016107ad90614f47565b613734565b60048216156137345760405163a2a7201360e01b8152600481018490526024016107ad565b604082165f036108e05750505f90815260036020526040902080546001600160a01b0319169055565b60c0816001600160401b0316901b60a08363ffffffff16901b846001600160a01b0316171760015f8681526020019081526020015f208190555050505050565b6001600160a01b0384163b156133cb5760405163bc197c8160e01b81526001600160a01b0385169063bc197c81906137e190899089908890889088906004016152b2565b6020604051808303815f875af192505050801561381b575060408051601f3d908101601f1916820190925261381891810190615303565b60015b6138c75761382761531e565b806308c379a003613860575061383b615337565b806138465750613862565b8060405162461bcd60e51b81526004016107ad91906143d4565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e20455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b60648201526084016107ad565b6001600160e01b0319811663bc197c8160e01b146135f35760405162461bcd60e51b81526004016107ad906153bf565b63ffff000082161580159060018316159082906139115750805b156112135760405163a2a7201360e01b8152600481018690526024016107ad565b5f816001600160401b0316846001600160401b03161115613951578193505b826001600160401b0316846001600160401b0316101561396f578293505b509192915050565b61398385858584613a33565b60405163ffffffff8416815285907f39873f00c80f4f94b7bd1594aebcf650f003545b74824d57ddf4939e3ff3a34b9060200160405180910390a2816001600160401b0316816001600160401b03161115611213576040516001600160401b038216815285907ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b132906020015b60405180910390a25050505050565b5f80613a29836107f0565b5090949350505050565b613a3d8483613f96565b61164f8484848461375d565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b613aa3826001611e38565b15613ac45760405163a2a7201360e01b8152600481018390526024016107ad565b613acd82613c81565b604051635b0fc9c360e01b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635b0fc9c390613b1b9085908590600401614dea565b5f604051808303815f87803b158015613b32575f80fd5b505af1158015613b44573d5f803e3d5ffd5b50506040516001600160a01b03841681528492507fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c49150602001612993565b613b8f85848484613fcf565b847f8ce7013e8abebc55c3890a68f5a27c67c3f7efa64e584de5fb22363c606fd34085858585604051613a0f9493929190615407565b5f805f613bd28585613dfe565b909250905081613c435760018551613bea919061544d565b8414613c385760405162461bcd60e51b815260206004820152601d60248201527f6e616d65686173683a204a756e6b20617420656e64206f66206e616d6500000060448201526064016107ad565b505f91506107ea9050565b613c4d8582613bc5565b6040805160208101929092528101839052606001604051602081830303815290604052805190602001209250505092915050565b5f8181526001602052604090205460a081901c60c082901c613ca4838383612f4d565b5f86815260036020526040812080546001600160a01b0319169055909350613cd091508590848461375d565b60408051858152600160208201525f916001600160a01b0386169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b5f805f613d2a866107f0565b925092509250613d3b8683836136b6565b846001148015613d5c5750876001600160a01b0316836001600160a01b0316145b613d785760405162461bcd60e51b81526004016107ad90614f47565b866001600160a01b0316836001600160a01b031603613d9957505050611213565b613da58688848461375d565b60408051878152602081018790526001600160a01b03808a1692908b169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46118b6338989898989614041565b5f8083518310613e505760405162461bcd60e51b815260206004820152601e60248201527f726561644c6162656c3a20496e646578206f7574206f6620626f756e6473000060448201526064016107ad565b5f848481518110613e6357613e63614f33565b016020015160f81c90508015613e8f57613e8885613e82866001615460565b836140fb565b9250613e93565b5f92505b613e9d8185615460565b613ea8906001615460565b9150509250929050565b5f81815260036020526040902080546001600160a01b0319166001600160a01b0384169081179091558190613ee682611655565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6060600183511015613f4457604051631406d65b60e11b815260040160405180910390fd5b60ff83511115613f69578260405163e3ba295f60e01b81526004016107ad91906143d4565b82518383604051602001613f7f93929190615473565b604051602081830303815290604052905092915050565b61ffff811615801590613fae57506201000181811614155b156134025760405163a2a7201360e01b8152600481018390526024016107ad565b613fd98483613f96565b5f848152600160205260409020546001600160a01b0381161561403557613fff85613c81565b6040515f815285907fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c49060200160405180910390a25b6112138585858561411d565b6001600160a01b0384163b156133cb5760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e619061408590899089908890889088906004016154b7565b6020604051808303815f875af19250505080156140bf575060408051601f3d908101601f191682019092526140bc91810190615303565b60015b6140cb5761382761531e565b6001600160e01b0319811663f23a6e6160e01b146135f35760405162461bcd60e51b81526004016107ad906153bf565b82515f906141098385615460565b1115614113575f80fd5b5091016020012090565b835f808061412a846107f0565b9194509250905063ffff000082166001600160401b038087169083161115614150578195505b42826001600160401b03161061416557958617955b6001600160a01b038416156141bc5760405162461bcd60e51b815260206004820152601f60248201527f455243313135353a206d696e74206f66206578697374696e6720746f6b656e0060448201526064016107ad565b6001600160a01b03881661421c5760405162461bcd60e51b815260206004820152602160248201527f455243313135353a206d696e7420746f20746865207a65726f206164647265736044820152607360f81b60648201526084016107ad565b306001600160a01b038916036142915760405162461bcd60e51b815260206004820152603460248201527f455243313135353a206e65774f776e65722063616e6e6f74206265207468652060448201527313985b5955dc985c1c195c8818dbdb9d1c9858dd60621b60648201526084016107ad565b61429d8589898961375d565b60408051868152600160208201526001600160a01b038a16915f9133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4612789335f8a88600160405180602001604052805f815250614041565b6001600160a01b038116811461209b575f80fd5b5f8060408385031215614327575f80fd5b823561433281614302565b946020939093013593505050565b5f60208284031215614350575f80fd5b5035919050565b6001600160e01b03198116811461209b575f80fd5b5f6020828403121561437c575f80fd5b813561089981614357565b5f5b838110156143a1578181015183820152602001614389565b50505f910152565b5f81518084526143c0816020860160208601614387565b601f01601f19169290920160200192915050565b602081525f61089960208301846143a9565b5f80604083850312156143f7575f80fd5b82359150602083013561440981614302565b809150509250929050565b80356001600160401b038116811461442a575f80fd5b919050565b5f8060408385031215614440575f80fd5b8235915061445060208401614414565b90509250929050565b5f8083601f840112614469575f80fd5b5081356001600160401b0381111561447f575f80fd5b602083019150836020828501011115614496575f80fd5b9250929050565b5f805f805f608086880312156144b1575f80fd5b85356144bc81614302565b945060208601356144cc81614302565b93506040860135925060608601356001600160401b038111156144ed575f80fd5b6144f988828901614459565b969995985093965092949392505050565b5f6020828403121561451a575f80fd5b813561089981614302565b634e487b7160e01b5f52604160045260245ffd5b601f8201601f191681016001600160401b038111828210171561455e5761455e614525565b6040525050565b5f6001600160401b0382111561457d5761457d614525565b50601f01601f191660200190565b5f82601f83011261459a575f80fd5b81356145a581614565565b6040516145b28282614539565b8281528560208487010111156145c6575f80fd5b826020860160208301375f92810160200192909252509392505050565b803563ffffffff8116811461442a575f80fd5b5f805f805f805f60e0888a03121561460c575f80fd5b8735965060208801356001600160401b03811115614628575f80fd5b6146348a828b0161458b565b965050604088013561464581614302565b9450606088013561465581614302565b935061466360808901614414565b925061467160a089016145e3565b915061467f60c08901614414565b905092959891949750929550565b5f6001600160401b038211156146a5576146a5614525565b5060051b60200190565b5f82601f8301126146be575f80fd5b813560206146cb8261468d565b6040516146d88282614539565b80915083815260208101915060208460051b8701019350868411156146fb575f80fd5b602086015b84811015611e2d5780358352918301918301614700565b5f805f805f60a0868803121561472b575f80fd5b853561473681614302565b9450602086013561474681614302565b935060408601356001600160401b0380821115614761575f80fd5b61476d89838a016146af565b94506060880135915080821115614782575f80fd5b61478e89838a016146af565b935060808801359150808211156147a3575f80fd5b506147b08882890161458b565b9150509295509295909350565b5f805f80608085870312156147d0575f80fd5b84359350602085013592506147e7604086016145e3565b91506147f560608601614414565b905092959194509250565b803561ffff8116811461442a575f80fd5b5f8060408385031215614822575f80fd5b8235915061445060208401614800565b5f8060408385031215614843575f80fd5b82356001600160401b0380821115614859575f80fd5b818501915085601f83011261486c575f80fd5b813560206148798261468d565b6040516148868282614539565b83815260059390931b85018201928281019150898411156148a5575f80fd5b948201945b838610156148cc5785356148bd81614302565b825294820194908201906148aa565b965050860135925050808211156148e1575f80fd5b50613ea8858286016146af565b5f815180845260208085019450602084015f5b8381101561491d57815187529582019590820190600101614901565b509495945050505050565b602081525f61089960208301846148ee565b5f805f6060848603121561494c575f80fd5b833561495781614302565b9250602084013561496781614302565b929592945050506040919091013590565b5f805f6060848603121561498a575f80fd5b83359250602084013591506149a160408501614414565b90509250925092565b5f805f606084860312156149bc575f80fd5b8335925060208401356149ce81614302565b915060408401356149de81614302565b809150509250925092565b5f805f805f608086880312156149fd575f80fd5b85356001600160401b03811115614a12575f80fd5b614a1e88828901614459565b9096509450506020860135614a3281614302565b9250614a4060408701614800565b91506060860135614a5081614302565b809150509295509295909350565b801515811461209b575f80fd5b5f8060408385031215614a7c575f80fd5b8235614a8781614302565b9150602083013561440981614a5e565b5f805f805f8060a08789031215614aac575f80fd5b86356001600160401b03811115614ac1575f80fd5b614acd89828a01614459565b9097509550506020870135614ae181614302565b9350604087013592506060870135614af881614302565b9150614b0660808801614800565b90509295509295509295565b5f8060408385031215614b23575f80fd5b82359150614450602084016145e3565b5f8060408385031215614b44575f80fd5b50508035926020909101359150565b5f805f805f8060a08789031215614b68575f80fd5b8635955060208701356001600160401b03811115614b84575f80fd5b614b9089828a01614459565b9096509450506040870135614ba481614302565b9250614bb2606088016145e3565b9150614b0660808801614414565b5f805f8060408587031215614bd3575f80fd5b84356001600160401b0380821115614be9575f80fd5b614bf588838901614459565b90965094506020870135915080821115614c0d575f80fd5b50614c1a87828801614459565b95989497509550505050565b5f805f8060808587031215614c39575f80fd5b843593506020850135614c4b81614302565b925060408501356147e781614302565b5f805f60608486031215614c6d575f80fd5b833592506020840135915060408401356149de81614302565b5f8060408385031215614c97575f80fd5b8235614ca281614302565b9150602083013561440981614302565b5f805f8060608587031215614cc5575f80fd5b84356001600160401b03811115614cda575f80fd5b614ce687828801614459565b9095509350506020850135614cfa81614302565b91506040850135614d0a81614302565b939692955090935050565b5f805f805f60a08688031215614d29575f80fd5b8535614d3481614302565b94506020860135614d4481614302565b9350604086013592506060860135915060808601356001600160401b03811115614d6c575f80fd5b6147b08882890161458b565b5f60208284031215614d88575f80fd5b81516001600160401b03811115614d9d575f80fd5b8201601f81018413614dad575f80fd5b8051614db881614565565b604051614dc58282614539565b828152866020848601011115614dd9575f80fd5b610954836020830160208701614387565b9182526001600160a01b0316602082015260400190565b5f805f8060808587031215614e14575f80fd5b84356001600160401b03811115614e29575f80fd5b614e358782880161458b565b9450506020850135614e4681614302565b9250614e5460408601614800565b91506060850135614d0a81614302565b5f60208284031215614e74575f80fd5b5051919050565b634e487b7160e01b5f52601160045260245ffd5b6001600160401b03818116838216019080821115614eaf57614eaf614e7b565b5092915050565b600181811c90821680614eca57607f821691505b602082108103614ee857634e487b7160e01b5f52602260045260245ffd5b50919050565b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b634e487b7160e01b5f52603260045260245ffd5b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b604081525f614fa360408301856148ee565b8281036020840152614fb581856148ee565b95945050505050565b5f60208284031215614fce575f80fd5b815161089981614302565b5f60208284031215614fe9575f80fd5b815161089981614a5e565b818382375f9101908152919050565b60208082526028908201527f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f604082015267373a3937b63632b960c11b606082015260800190565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b60c081525f61508660c083018a8c61504b565b6001600160a01b03898116602085015263ffffffff891660408501526001600160401b03881660608501528616608084015282810360a08401526150cb81858761504b565b9b9a5050505050505050505050565b601f8211156108e057805f5260205f20601f840160051c810160208510156150ff5750805b601f840160051c820191505b81811015611213575f815560010161510b565b6001600160401b0383111561513557615135614525565b615149836151438354614eb6565b836150da565b5f601f84116001811461517a575f85156151635750838201355b5f19600387901b1c1916600186901b178355611213565b5f83815260208120601f198716915b828110156151a95786850135825560209485019460019092019101615189565b50868210156151c5575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b6001600160401b03828116828216039080821115614eaf57614eaf614e7b565b81516001600160401b0381111561521057615210614525565b6152248161521e8454614eb6565b846150da565b602080601f831160018114615257575f84156152405750858301515b5f19600386901b1c1916600185901b1785556133cb565b5f85815260208120601f198616915b8281101561528557888601518255948401946001909101908401615266565b50858210156152a257878501515f19600388901b60f8161c191681555b5050505050600190811b01905550565b6001600160a01b0386811682528516602082015260a0604082018190525f906152dd908301866148ee565b82810360608401526152ef81866148ee565b9050828103608084015261350481856143a9565b5f60208284031215615313575f80fd5b815161089981614357565b5f60033d11156153345760045f803e505f5160e01c5b90565b5f60443d10156153445790565b6040516003193d81016004833e81513d6001600160401b03816024840111818411171561537357505050505090565b828501915081518181111561538b5750505050505090565b843d87010160208285010111156153a55750505050505090565b6153b460208286010187614539565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b608081525f61541960808301876143a9565b6001600160a01b039590951660208301525063ffffffff9290921660408301526001600160401b0316606090910152919050565b818103818111156107ea576107ea614e7b565b808201808211156107ea576107ea614e7b565b60ff60f81b8460f81b1681525f8351615493816001850160208801614387565b8351908301906154aa816001840160208801614387565b0160010195945050505050565b6001600160a01b03868116825285166020820152604081018490526060810183905260a0608082018190525f906154f0908301846143a9565b97965050505050505056fe93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4aea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2a68925cf5169f28586095d5b5b9933b3008f4c793a48be4f59b8b2bc62aa60a":"0x1","0x54cdd369e4e8a8515e52ca72ec816c2101831ad1f18bf44102ed171459c9b4f8":"0x2","0xa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb49":"0xffffffffffffffff000100010000000000000000000000000000000000000000","0xafa26c20e8b3d9a2853d642cfe1021dae26242ffedfac91c97aab212c1a4b93b":"0xffffffffffffffff000100010000000000000000000000000000000000000000","0xef5b11c47ebee44618abc22110e10e3b408ea5e799056d2b38461aa7b97c5a97":"0x1","0xfb9e8e321b8a5ec48f12a7b41f22c6e595d761285c9eb19d8dda7c99edf1b54f":"0x36574680000000000000000000000000000000000000000000000000000000a"}},"0x6e1eb616c7d69491f9a880f815ff5574768cba20":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b506004361061007a575f3560e01c806314ab90381161005857806314ab90381461010357806316a25cbd146101165780631896f70a146101625780635b0fc9c314610175575f80fd5b80630178b8bf1461007e57806302571be3146100c657806306ab5923146100ee575b5f80fd5b6100a961008c366004610403565b5f908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100a96100d4366004610403565b5f908152602081905260409020546001600160a01b031690565b6101016100fc366004610435565b610188565b005b610101610111366004610467565b610242565b610149610124366004610403565b5f90815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100bd565b6101016101703660046104a1565b6102e2565b6101016101833660046104a1565b610374565b5f8381526020819052604090205483906001600160a01b031633146101ab575f80fd5b60408051602080820187905281830186905282518083038401815260608301808552815191909201206001600160a01b0386169091529151859187917fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829181900360800190a35f90815260208190526040902080546001600160a01b0319166001600160a01b039390931692909217909155505050565b5f8281526020819052604090205482906001600160a01b03163314610265575f80fd5b60405167ffffffffffffffff8316815283907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a2505f91825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b5f8281526020819052604090205482906001600160a01b03163314610305575f80fd5b6040516001600160a01b038316815283907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a2505f9182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b5f8281526020819052604090205482906001600160a01b03163314610397575f80fd5b6040516001600160a01b038316815283907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a2505f9182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b5f60208284031215610413575f80fd5b5035919050565b80356001600160a01b0381168114610430575f80fd5b919050565b5f805f60608486031215610447575f80fd5b833592506020840135915061045e6040850161041a565b90509250925092565b5f8060408385031215610478575f80fd5b82359150602083013567ffffffffffffffff81168114610496575f80fd5b809150509250929050565b5f80604083850312156104b2575f80fd5b823591506104c26020840161041a565b9050925092905056fea164736f6c6343000818000a","storage":{"0x859ecef2e168dc10231b000bd53493b42bc9d944cac29d94582c1e1d43592131":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x7bb6cd9be29fab783c0b494a06fed8b2e2596b7a":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100ea5760003560e01c80636debcb8d1161008c578063b34f33c511610066578063b34f33c514610741578063d0778d6c14610814578063ef2c3088146108f2578063f5090c1e14610980576100ea565b80636debcb8d146105ca5780636fab95b3146106585780637b1039991461071d576100ea565b8063511f1112116100c8578063511f1112146103c557806361603dd91461044857806368b6154f146104bd5780636ccbae5f1461059b576100ea565b806307eca395146100ef578063280d9b051461021457806330135293146102f2575b600080fd5b610212600480360360a081101561010557600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561013457600080fd5b82018360208201111561014657600080fd5b803590602001918460018302840111600160201b8311171561016757600080fd5b919390929091602081019035600160201b81111561018457600080fd5b82018360208201111561019657600080fd5b803590602001918460018302840111600160201b831117156101b757600080fd5b919390929091602081019035600160201b8111156101d457600080fd5b8201836020820111156101e657600080fd5b803590602001918460018302840111600160201b8311171561020757600080fd5b509092509050610aae565b005b610212600480360360a081101561022a57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561026457600080fd5b82018360208201111561027657600080fd5b803590602001918460018302840111600160201b8311171561029757600080fd5b919390929091602081019035600160201b8111156102b457600080fd5b8201836020820111156102c657600080fd5b803590602001918460018302840111600160201b831117156102e757600080fd5b509092509050610c92565b6102126004803603608081101561030857600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561033757600080fd5b82018360208201111561034957600080fd5b803590602001918460018302840111600160201b8311171561036a57600080fd5b919390929091602081019035600160201b81111561038757600080fd5b82018360208201111561039957600080fd5b803590602001918460018302840111600160201b831117156103ba57600080fd5b509092509050610e3d565b610212600480360360608110156103db57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561040a57600080fd5b82018360208201111561041c57600080fd5b803590602001918460018302840111600160201b8311171561043d57600080fd5b509092509050610fcc565b6102126004803603604081101561045e57600080fd5b81359190810190604081016020820135600160201b81111561047f57600080fd5b82018360208201111561049157600080fd5b803590602001918460018302840111600160201b831117156104b257600080fd5b5090925090506110c9565b610212600480360360a08110156104d357600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561050d57600080fd5b82018360208201111561051f57600080fd5b803590602001918460018302840111600160201b8311171561054057600080fd5b919390929091602081019035600160201b81111561055d57600080fd5b82018360208201111561056f57600080fd5b803590602001918460018302840111600160201b8311171561059057600080fd5b5090925090506111ae565b6105b8600480360360208110156105b157600080fd5b50356113a8565b60408051918252519081900360200190f35b610212600480360360808110156105e057600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561061a57600080fd5b82018360208201111561062c57600080fd5b803590602001918460018302840111600160201b8311171561064d57600080fd5b5090925090506113ba565b6102126004803603606081101561066e57600080fd5b81359190810190604081016020820135600160201b81111561068f57600080fd5b8201836020820111156106a157600080fd5b803590602001918460018302840111600160201b831117156106c257600080fd5b919390929091602081019035600160201b8111156106df57600080fd5b8201836020820111156106f157600080fd5b803590602001918460018302840111600160201b8311171561071257600080fd5b5090925090506114d4565b610725611675565b604080516001600160a01b039092168252519081900360200190f35b6102126004803603608081101561075757600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561078657600080fd5b82018360208201111561079857600080fd5b803590602001918460018302840111600160201b831117156107b957600080fd5b919390929091602081019035600160201b8111156107d657600080fd5b8201836020820111156107e857600080fd5b803590602001918460018302840111600160201b8311171561080957600080fd5b509092509050611684565b610212600480360360a081101561082a57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561086457600080fd5b82018360208201111561087657600080fd5b803590602001918460018302840111600160201b8311171561089757600080fd5b919390929091602081019035600160201b8111156108b457600080fd5b8201836020820111156108c657600080fd5b803590602001918460018302840111600160201b831117156108e757600080fd5b5090925090506117de565b6102126004803603608081101561090857600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561094257600080fd5b82018360208201111561095457600080fd5b803590602001918460018302840111600160201b8311171561097557600080fd5b5090925090506119e4565b610212600480360360c081101561099657600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156109d057600080fd5b8201836020820111156109e257600080fd5b803590602001918460018302840111600160201b83111715610a0357600080fd5b919390929091602081019035600160201b811115610a2057600080fd5b820183602082011115610a3257600080fd5b803590602001918460018302840111600160201b83111715610a5357600080fd5b919390929091602081019035600160201b811115610a7057600080fd5b820183602082011115610a8257600080fd5b803590602001918460018302840111600160201b83111715610aa357600080fd5b509092509050611ad3565b610bb163ce9fb82b89898989898960405160240180876001600160a01b03166001600160a01b0316815260200186815260200180602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f820116905080830192505050985050505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208884848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b600154604051630119f80560e21b81526001600160a01b038a811660048301908152602483018b9052608060448401908152608484018a90529190931692630467e014928c928c928c928c928c928c92909190606481019060a401878780828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f82011690508083019250505098505050505050505050600060405180830381600087803b158015610c7057600080fd5b505af1158015610c84573d6000803e3d6000fd5b505050505050505050505050565b610d8363b88d4fde888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040516315eab15d60e21b81526001600160a01b03898116600483019081528982166024840152604483018990526080606484019081526084840188905291909316926357aac574928b928b928b928b928b929160a401848480828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b158015610e1c57600080fd5b505af1158015610e30573d6000803e3d6000fd5b5050505050505050505050565b610f09637c69eae28787878760405160240180856001600160a01b03166001600160a01b0316815260200184815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09d909d1b9c909c178c529351909a208a51918d01849004840282018401909a528b81528f985096508b95508a94508493505085019050838280828437600092019190915250611d5492505050565b600154604051630119f80560e21b81526001600160a01b038881166004830190815260248301899052608060448401908152608484018890529190931692630467e014928a928a928a928a9290606481019060a401858580828437600081840152601f19601f8201169050808301925050508381038252600081526020016020019650505050505050600060405180830381600087803b158015610fac57600080fd5b505af1158015610fc0573d6000803e3d6000fd5b50505050505050505050565b604080516001600160a01b038616602482015260448082018690528251808303909101815260649091018252602081810180516001600160e01b0316632392c18960e01b17815291519091208251601f85018390048302810183019093528383526110569290918691908690869081908401838280828437600092019190915250611d5492505050565b60015460408051631292e83560e11b81526001600160a01b0387811660048301526024820187905291519190921691632525d06a91604480830192600092919082900301818387803b1580156110ab57600080fd5b505af11580156110bf573d6000803e3d6000fd5b5050505050505050565b6040805160248082018690528251808303909101815260449091018252602081810180516001600160e01b0316630852cd8d60e31b17815291519091208251601f85018390048302810183019093528383526111449290918691908690869081908401838280828437600092019190915250611d5492505050565b6001546040805163e67ca8a360e01b81526004810186905290516001600160a01b039092169163e67ca8a39160248082019260009290919082900301818387803b15801561119157600080fd5b505af11580156111a5573d6000803e3d6000fd5b50505050505050565b61129f639e5be9a5888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b03909316926302759c37928b928b9286926368b62d32928d928d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561132757600080fd5b505afa15801561133b573d6000803e3d6000fd5b505050506040513d602081101561135157600080fd5b5051604080516001600160e01b031960e087901b1681526001600160a01b03948516600482015292909316602483015260448201529051606480830192600092919082900301818387803b158015610e1c57600080fd5b60009081526020819052604090205490565b604080516001600160a01b0380881660248301528616604482015260648082018690528251808303909101815260849091018252602081810180516001600160e01b0316632142170760e11b17815291519091208251601f850183900483028101830190935283835261144c9290918691908690869081908401838280828437600092019190915250611d5492505050565b600154604080516315eab15d60e21b81526001600160a01b0388811660048301528781166024830152604482018790526080606483015260006084830181905292519316926357aac5749260c48084019391929182900301818387803b1580156114b557600080fd5b505af11580156114c9573d6000803e3d6000fd5b505050505050505050565b611585635cbe11128686866040516024018084815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09c909c1b9b909b178b5293519099208951918c018490048402820184019099528a81528e975095508a9450899350839250508401838280828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b039093169263e67ca8a39284926368b62d32928b928b928b929190606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561160b57600080fd5b505afa15801561161f573d6000803e3d6000fd5b505050506040513d602081101561163557600080fd5b5051604080516001600160e01b031960e085901b168152600481019290925251602480830192600092919082900301818387803b1580156114b557600080fd5b6001546001600160a01b031690565b61175063d8d3cc6e8787878760405160240180856001600160a01b03166001600160a01b0316815260200184815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09d909d1b9c909c178c529351909a208a51918d01849004840282018401909a528b81528f985096508b95508a94508493505085019050838280828437600092019190915250611d5492505050565b60015460405163b546666960e01b81526001600160a01b03888116600483019081526024830189905260606044840190815260648401889052919093169263b5466669928a928a928a928a9290608401848480828437600081840152601f19601f82011690508083019250505095505050505050600060405180830381600087803b158015610fac57600080fd5b6118cf639d743989888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b03909316926357aac574928b928b9286926368b62d32928d928d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561195757600080fd5b505afa15801561196b573d6000803e3d6000fd5b505050506040513d602081101561198157600080fd5b5051604080516001600160e01b031960e087901b1681526001600160a01b039485166004820152929093166024830152604482015260806064820152600060848201819052915160c4808301939282900301818387803b158015610e1c57600080fd5b604080516001600160a01b0380881660248301528616604482015260648082018690528251808303909101815260849091018252602081810180516001600160e01b03166323b872dd60e01b17815291519091208251601f8501839004830281018301909352838352611a769290918691908690869081908401838280828437600092019190915250611d5492505050565b600154604080516302759c3760e01b81526001600160a01b038881166004830152878116602483015260448201879052915191909216916302759c3791606480830192600092919082900301818387803b1580156114b557600080fd5b611bf063c29b52f98a8a8a8a8a8a8a60405160240180886001600160a01b03166001600160a01b03168152602001876001600160a01b03166001600160a01b0316815260200186815260200180602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f82011690508083019250505099505050505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208884848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b8152600481018a815260248201928352604482018990526001600160a01b03909316926357aac574928d928d9286926368b62d32928f928f928f92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b158015611c7857600080fd5b505afa158015611c8c573d6000803e3d6000fd5b505050506040513d6020811015611ca257600080fd5b50516040516001600160e01b031960e086901b1681526001600160a01b0380851660048301908152908416602483015260448201839052608060648301908152608483018b90528b928b92919060a401848480828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b158015611d3157600080fd5b505af1158015611d45573d6000803e3d6000fd5b50505050505050505050505050565b6000828152602081815260408083205481518084018890523060601b81840152605480820183905283518083039091018152607490910190925281519190920120909190611db3908490611da790611ea9565b9063ffffffff611efa16565b90506001600160a01b03811615801590611e4957506001546040805163430c208160e01b81526001600160a01b038481166004830152602482018890529151919092169163430c2081916044808301926020929190829003018186803b158015611e1c57600080fd5b505afa158015611e30573d6000803e3d6000fd5b505050506040513d6020811015611e4657600080fd5b50515b611e8e576040805162461bcd60e51b8152602060048201526011602482015270494e56414c49445f5349474e415455524560781b604482015290519081900360640190fd5b50505060009081526020819052604090208054600101905550565b604080517f19457468657265756d205369676e6564204d6573736167653a0a333200000000602080830191909152603c8083019490945282518083039094018452605c909101909152815191012090565b60008151604114611f0d57506000611fe3565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0821115611f535760009350505050611fe3565b8060ff16601b14158015611f6b57508060ff16601c14155b15611f7c5760009350505050611fe3565b6040805160008152602080820180845289905260ff8416828401526060820186905260808201859052915160019260a0808401939192601f1981019281900390910190855afa158015611fd3573d6000803e3d6000fd5b5050506020604051035193505050505b9291505056fea265627a7a7231582014816bfd0c1519ce8c4cf272eb0526ffdba3abef0df7f17deb0da40bd8abb77f64736f6c634300050c0032","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533"}},"0x7c3c91245769c8b7450ad522792dec4bd4bf797f":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b506004361061003f575f3560e01c80631bf7e13e146100435780636ccbae5f1461006c578063a424740014610099575b5f80fd5b610056610051366004610749565b6100bc565b604051610063919061082c565b60405180910390f35b61008b61007a36600461083e565b5f9081526001602052604090205490565b604051908152602001610063565b6100ac6100a7366004610749565b6101d6565b6040519015158152602001610063565b60605f5a90506100cd8585856101d6565b6101315760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e61676572466f727761726465723a205349474e415455604482015269149157d253959053125160b21b60648201526084015b60405180910390fd5b6101cb6101416020870187610870565b5f546001600160a01b031660408801358461015f60608b018b610889565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f9201919091525061023292505050565b9150505b9392505050565b5f61022a6101e38561093a565b5f54604080516020601f88018190048102820181019092528681526001600160a01b03909216919087908790819084018382808284375f9201919091525061030e92505050565b949350505050565b606061023d85610453565b5f80876001600160a01b0316866102568b8a898961047e565b60405161026391906109f5565b5f604051808303815f8787f1925050503d805f811461029d576040519150601f19603f3d011682016040523d82523d5f602084013e6102a2565b606091505b5090925090506102b3603f87610a10565b5a116102c1576102c1610a2f565b61030182826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506104ae565b9998505050505050505050565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015610352573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103769190610a43565b90505f6104238660600151805190602001208688602001516040516020016103c39392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561044957508551610449906001600160a01b031682866104e7565b9695505050505050565b5f8181526001602081905260409091205461046d91610a5a565b5f9182526001602052604090912055565b606082858560405160200161049593929190610a7f565b6040516020818303038152906040529050949350505050565b606083156104bd5750816101cf565b8251156104cd5782518084602001fd5b8160405162461bcd60e51b8152600401610128919061082c565b5f805f6104f48585610622565b90925090505f81600481111561050c5761050c610abd565b14801561052a5750856001600160a01b0316826001600160a01b0316145b1561053a576001925050506101cf565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401610561929190610ad1565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161059f91906109f5565b5f60405180830381855afa9150503d805f81146105d7576040519150601f19603f3d011682016040523d82523d5f602084013e6105dc565b606091505b50915091508180156105ef575080516020145b801561061657508051630b135d3f60e11b906106149083016020908101908401610a43565b145b98975050505050505050565b5f808251604103610656576020830151604084015160608501515f1a61064a87828585610664565b9450945050505061065d565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561069957505f90506003610740565b8460ff16601b141580156106b157508460ff16601c14155b156106c157505f90506004610740565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610712573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b03811661073a575f60019250925050610740565b91505f90505b94509492505050565b5f805f6040848603121561075b575f80fd5b833567ffffffffffffffff80821115610772575f80fd5b9085019060808288031215610785575f80fd5b9093506020850135908082111561079a575f80fd5b818601915086601f8301126107ad575f80fd5b8135818111156107bb575f80fd5b8760208285010111156107cc575f80fd5b6020830194508093505050509250925092565b5f5b838110156107f95781810151838201526020016107e1565b50505f910152565b5f81518084526108188160208601602086016107df565b601f01601f19169290920160200192915050565b602081525f6101cf6020830184610801565b5f6020828403121561084e575f80fd5b5035919050565b80356001600160a01b038116811461086b575f80fd5b919050565b5f60208284031215610880575f80fd5b6101cf82610855565b5f808335601e1984360301811261089e575f80fd5b83018035915067ffffffffffffffff8211156108b8575f80fd5b60200191503681900382131561065d575f80fd5b634e487b7160e01b5f52604160045260245ffd5b6040516080810167ffffffffffffffff81118282101715610903576109036108cc565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610932576109326108cc565b604052919050565b5f6080823603121561094a575f80fd5b6109526108e0565b61095b83610855565b81526020808401358183015260408401356040830152606084013567ffffffffffffffff8082111561098b575f80fd5b9085019036601f83011261099d575f80fd5b8135818111156109af576109af6108cc565b6109c1601f8201601f19168501610909565b915080825236848285010111156109d6575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b5f8251610a068184602087016107df565b9190910192915050565b5f82610a2a57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b5f60208284031215610a53575f80fd5b5051919050565b80820180821115610a7957634e487b7160e01b5f52601160045260245ffd5b92915050565b5f8451610a908184602089016107df565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f61022a604083018461080156fea164736f6c6343000818000a","storage":{"0x0":"0x39a27956b78d00a4e00ea8833ff0947410a2933f"}},"0x8861cdfa38838531275ce12f9e795c3b9ff29cbe":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x936188f2c3c8e8c95e425b6fe41c2ac9e701585e":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x94f57ed7e9af03a10e8eb23ce1b3c7914a182b0f":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x95f29431aeb52c0d5dbeeec36010b8e2ca69cb3d":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x9b2565a3545a1312bdcb6e7148a7f7cae8c2706b":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c806373cc48a61161008857806398d35f201161006357806398d35f2014610215578063bd7ed31a1461021d578063c327deef14610245578063d7b82ebe1461026d575f80fd5b806373cc48a6146101af5780638438dc04146101ef5780638da5cb5b14610202575f80fd5b806313af4035116100c357806313af40351461015657806328e7677d146101695780632c095cbb1461017c578063435cc1621461018f575f80fd5b8063020ed8d3146100e9578063087991bc146100fe5780630b1a249514610143575b5f80fd5b6100fc6100f73660046122ff565b610280565b005b61011161010c36600461238a565b610300565b6040805163ffffffff94851681529390921660208401526001600160601b031916908201526060015b60405180910390f35b6100fc610151366004612510565b61036c565b6100fc6101643660046125c6565b6104da565b6100fc6101773660046122ff565b610512565b6100fc61018a3660046125e1565b61058a565b6101a261019d366004612674565b610656565b60405161013a919061278c565b6101d76101bd36600461279e565b60046020525f90815260409020546001600160a01b031681565b6040516001600160a01b03909116815260200161013a565b6100fc6101fd3660046122ff565b6106d2565b6001546101d7906001600160a01b031681565b6101a261074a565b6101d761022b36600461279e565b60056020525f90815260409020546001600160a01b031681565b6101d761025336600461279e565b60036020525f90815260409020546001600160a01b031681565b6101a261027b3660046127b7565b6107d5565b6001546001600160a01b03163314610296575f80fd5b60ff82165f8181526003602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527ff73c3c226af96b7f1ba666a21b3ceaf2be3ee6a365e3178fd9cd1eaae0075aa891015b60405180910390a15050565b5f805f8060025f8787604051610317929190612817565b604080519182900390912082526020808301939093529081015f90812061ffff8b16825290925290205463ffffffff80821695506401000000008204169350600160401b900460601b91505093509350939050565b83516020808601919091205f90815260028252604080822061ffff891683529092529081205463ffffffff16906103a385846107ea565b90506103b0818784610889565b6103b8612239565b845151156103d7576103ca85856107ea565b90506103d7818885610889565b5f6103e1836108cc565b602081015190915060fe16156103f5575f80fd5b61040081602761092a565b158015610425575061041381600261092a565b1580610425575061042581600661092a565b61042d575f80fd5b61043e89898561012001518461093a565b156104795787516020808a01919091205f90815260028252604080822061ffff8d1683529092522080546001600160e01b03191690556104cf565b6104988884610120015183856101200151610493876108cc565b610968565b156100e55787516020808a01919091205f90815260028252604080822061ffff8d1683529092522080546001600160e01b03191690555b505050505050505050565b6001546001600160a01b031633146104f0575f80fd5b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6001546001600160a01b03163314610528575f80fd5b60ff82165f8181526004602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527f2fcc274c3b72dd483ab201bfa87295e3817e8b9b10693219873b722ca1af00c791016102f4565b610592612239565b61059c83836107ea565b805190915061ffff16602f146105b0575f80fd5b60a081015184516020808701919091205f90815260028252604080822061ffff8a16835290925220546105e9919063ffffffff16610a7c565b6105f1575f80fd5b5f6105fb82610a94565b9050805151602082015110156100e55761061c818361012001518789610aab565b505082516020808501919091205f90815260028252604080822061ffff881683529092522080546001600160e01b03191690555b50505050565b60605f83838080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201829052509394505050505b85518110156106c7576106bd8682815181106106af576106af612826565b602002602001015183610c4a565b9150600101610691565b5090505b9392505050565b6001546001600160a01b031633146106e8575f80fd5b60ff82165f8181526005602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527fc7eec866a7a1386188cc3ca20ffea75b71bd3e90a60b6791b1d3f0971145118d91016102f4565b5f80546107569061283a565b80601f01602080910402602001604051908101604052809291908181526020018280546107829061283a565b80156107cd5780601f106107a4576101008083540402835291602001916107cd565b820191905f5260205f20905b8154815290600101906020018083116107b057829003601f168201915b505050505081565b60606107e18383610c4a565b90505b92915050565b6107f2612239565b82516107fd90610dc6565b905061080d8160e0015183610ebf565b610815575f80fd5b5f61082382835f0151610f25565b604083015190915060ff16610838825f610fcc565b14610841575f80fd5b610120820181905260808201516108589042610a7c565b610860575f80fd5b61086e428360a00151610a7c565b610876575f80fd5b61088281838686611026565b5092915050565b6108978360a0015182610a7c565b61089f575f80fd5b825161ffff166032146108b0575f80fd5b6108bf83610120015183611106565b6108c7575f80fd5b505050565b6040805160c0810182525f8082526020820181905291810182905260608082018190526080820183905260a08201529061090583610a94565b60a081015160c08201519192506106cb91610921908290612880565b83519190611172565b5f6107e18360a001515f846112b4565b5f6109468284866113c1565b1561095d57610955828661092a565b159050610960565b505f5b949350505050565b60208101515f9060fe161561097b575f80fd5b5f610985866113e6565b90505f610991856113e6565b90505f8061099f8a82611401565b6109aa906001612893565b60ff1690505b8951811015610a6b57836109dc896109d784858f516109cf9190612880565b8f9190611424565b6114a4565b03610a3f575f6109f7876109d785868f516109cf9190612880565b90508660800151841015610a23578381118015610a175750866080015181105b95505050505050610a73565b83811180610a1757508660800151811095505050505050610a73565b905080610a4c8a82611401565b610a57906001612893565b610a649060ff16826128ac565b90506109b0565b505f93505050505b95945050505050565b5f80610a8883856128bf565b60030b12159392505050565b610a9c61228e565b6107e48261010001515f61152d565b60a084015184515f90610abe9083611548565b90505f8660a001518760c00151610ad59190612880565b9050818111610ae2575f80fd5b5f610aed868861159f565b9050805f03610b1a57610b0c610b0384866128ac565b895190876112b4565b15610b15575f80fd5b610b5b565b87515f90610b29908686611424565b90505f8213610b36575f80fd5b5f610b41898361159f565b12156104cf575f610b52888361159f565b126104cf575f80fd5b5050505050505050565b60c08101516020820181905281515111610b7c5750565b5f610b8e825f01518360200151611548565b8260200151610b9d91906128ac565b8251909150610bac90826116ec565b61ffff166040830152610bc06002826128ac565b8251909150610bcf90826116ec565b61ffff166060830152610be36002826128ac565b8251909150610bf29082611712565b63ffffffff166080830152610c086004826128ac565b82519091505f90610c1990836116ec565b61ffff169050610c2a6002836128ac565b60a084018190529150610c3d81836128ac565b60c0909301929092525050565b6060610c54612239565b610c5e84846107ea565b61012081015180516020918201205f908152600282526040808220845161ffff16835290925220805491925090600160401b900460601b6001600160601b03191615610cc35760a08201518154610cbb919063ffffffff16610a7c565b610cc3575f80fd5b604080516060808201835260a085015163ffffffff9081168352608086015181166020808501918252610100880180518051908301206001600160601b0319168688019081526101208a0180518051908501205f908152600285528981208c5161ffff16825290945292889020965187549451915190961c600160401b0268010000000000000000600160e01b03199186166401000000000267ffffffffffffffff19909516969095169590951792909217939093169190911790925551905191517f55ced933cdd5a34dd03eb5d4bef19ec6ebb251dcd7a988eee0c1b9a13baaa88b92610db192916128e6565b60405180910390a15061010001519392505050565b610dce612239565b610dd8825f6116ec565b61ffff168152610de9826002611401565b60ff166020820152610dfc826003611401565b60ff166040820152610e0f826004611712565b63ffffffff9081166060830152610e2b90839060089061171216565b63ffffffff9081166080830152610e47908390600c9061171216565b63ffffffff90811660a0830152610e639083906010906116ec16565b61ffff1660c0820152610e7782601261173a565b60e0820181905251610eb490610e8e9060126128ac565b8260e001515160128551610ea29190612880565b610eac9190612880565b849190611424565b610100820152919050565b5f80610ed5610ece8483611548565b84906116ec565b83516020808601919091208651878301205f90815260028352604080822061ffff90951682529390925291902054600160401b900460601b6001600160601b031990811691161491505092915050565b60605f610f3184610a94565b90505b8051516020820151101561088257606081015161ffff16600114610f56575f80fd5b81515f03610f6e57610f6781611754565b9150610fa7565b60208101518151610f7e91611548565b825114610f89575f80fd5b805160208201518351610f9f9285925f92611775565b610fa7575f80fd5b8261ffff16816040015161ffff1614610fbe575f80fd5b610fc781610b65565b610f34565b5f805b83518310610fdf57610fdf61290a565b5f610fea8585611401565b60ff169050610ffa8160016128ac565b61100490856128ac565b9350805f0361101357506107e1565b61101e6001836128ac565b915050610fcf565b83518360e00151511115611038575f80fd5b61105c5f858560e0015151875161104f9190612880565b60e0870151929190611797565b611064575f80fd5b5f61106f828261152d565b9050602b61ffff16816040015161ffff160361109d576110908484836117cb565b611098575f80fd5b6110ff565b603061ffff16816040015161ffff16036110bc5761109084848361185f565b60405162461bcd60e51b8152602060048201526014602482015273139bc81d985b1a59081c1c9bdbd988199bdd5b9960621b604482015260640160405180910390fd5b5050505050565b5f806111128482611401565b61111d906001612893565b60ff1690505f5b835181101561095d5761113984828785611797565b15611149576001925050506107e4565b6111538482611401565b61115e906001612893565b61116b9060ff16826128ac565b9050611124565b6040805160c0810182525f8082526020820181905291810182905260608082018190526080820183905260a0820152906111ac83856128ac565b90506111c26111bb5f866128ac565b8690611401565b60ff1682526111d56111bb6001866128ac565b60ff1660208301526111f26111eb6002866128ac565b86906116ec565b61ffff1660408301525f61121161120a6004876128ac565b8790611401565b905061121e6005866128ac565b945061122e868660ff8416611424565b606084015261124060ff8216866128ac565b94505f61124d8787611401565b905060208160ff16111561125f575f80fd5b61126a6001876128ac565b955061127a878760ff8416611900565b608085015261128c60ff8216876128ac565b95506112a48661129c8186612880565b899190611424565b60a0850152509195945050505050565b5f60ff600883811c82169183916112cc918616612932565b90505f6112dd600780871690612952565b600160ff919091161b9050855b87518110156113b4575f6112fe8983611401565b90505f61131661130f8460016128ac565b8b90611401565b90508160ff168660ff161015611334575f96505050505050506106cb565b8160ff168660ff1603611393578460ff168160ff161161135c575f96505050505050506106cb565b8361137f61136d60ff8816866128ac565b6113789060026128ac565b8c90611401565b1660ff165f141596505050505050506106cb565b61139e816002612893565b6113ab9060ff16846128ac565b925050506112ea565b505f979650505050505050565b5f806113cd85846114a4565b90505f6113d9856113e6565b9190911495945050505050565b5f6107e460016113f68484611401565b84919060ff1661193d565b5f82828151811061141457611414612826565b016020015160f81c905092915050565b825160609061143383856128ac565b111561143d575f80fd5b5f8267ffffffffffffffff811115611457576114576123d9565b6040519080825280601f01601f191660200182016040528015611481576020820181803683370190505b50905060208082019086860101611499828287611b43565b509095945050505050565b815160ff165f9081526005602052604080822054606085015182860151925163347ced5960e11b81526001600160a01b03909216926368f9dab2926114ee9291879160040161296b565b602060405180830381865afa158015611509573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107e191906129a4565b61153561228e565b82815260c081018290526107e481610b65565b5f815b8351811061155b5761155b61290a565b5f6115668583611401565b60ff1690506115768160016128ac565b61158090836128ac565b9150805f0361158f5750611595565b5061154b565b6109608382612880565b5f6115aa8383611b98565b156115b657505f6107e4565b5f805f805f6115c5885f610fcc565b90505f6115d2885f610fcc565b90505b808211156115fe578593506115ea8987611bb3565b9550816115f6816129bb565b9250506115d5565b81811115611627578492506116138886611bb3565b94508061161f816129bb565b9150506115fe565b5f8211801561163f575061163d89878a88611797565b155b15611674578593506116518987611bb3565b95508492506116608886611bb3565b945061166d600183612880565b9150611627565b855f0361168a575f1996505050505050506107e4565b845f036116a057600196505050505050506107e4565b6116df6116ae8560016128ac565b6116b88b87611401565b60ff168a6116c78760016128ac565b6116d18d89611401565b8e949392919060ff16611bd6565b9998505050505050505050565b81515f906116fb8360026128ac565b1115611705575f80fd5b50016002015161ffff1690565b81515f906117218360046128ac565b111561172b575f80fd5b50016004015163ffffffff1690565b60605f6117478484611548565b9050610960848483611424565b602081015181516060916107e49161176c9082611548565b84519190611424565b5f611781848484611cc6565b61178c878785611cc6565b149695505050505050565b5f6117af83838486516117aa9190612880565b611cc6565b6117c186868789516117aa9190612880565b1495945050505050565b5f806117d685610a94565b90505b8051516020820151101561095d57604081015161ffff166030146117fb575f80fd5b5f61180582611ce8565b90505f61181e5f835184611d049092919063ffffffff16565b905061182c81838989611da0565b1561184f5761184561183d84611754565b868385611e9b565b93505050506106cb565b505061185a81610b65565b6117d9565b5f6118778460e0015161187184611754565b90611b98565b61187f575f80fd5b815151602083015110156118f75761189e8460e0015161187184611754565b6118a6575f80fd5b5f6118b083611ce8565b90505f6118c95f835184611d049092919063ffffffff16565b90506118d781838888611da0565b156118e7576001925050506106cb565b50506118f282610b65565b61187f565b505f9392505050565b5f602082111561190e575f80fd5b835161191a83856128ac565b1115611924575f80fd5b506020919092018101519190036101000a5f1901191690565b5f603482111561194b575f80fd5b5f80805b84811015611a29575f8761196383896128ac565b8151811061197357611973612826565b01602001516001600160f81b0319169050600360fc1b81108015906119a65750603d60f91b6001600160f81b0319821611155b6119ae575f80fd5b604051806080016040528060478152602001612b5c604791396119d6603060f884901c612880565b815181106119e6576119e6612826565b0160209081015160f81c93508311156119fd575f80fd5b611a08600187612880565b8203611a145750611a29565b5060059290921b60ff8216179160010161194f565b505f611a368560056129d0565b9050611a436008866129e7565b5f03611a5a578160ff16600584901b179250611b29565b611a656008866129e7565b600203611a935760028260ff16901c60ff16600384901b179250600281611a8c9190612880565b9050611b29565b611a9e6008866129e7565b600403611ac55760048260ff16901c60ff16600184901b179250600481611a8c9190612880565b611ad06008866129e7565b600503611af75760018260ff16901c60ff16600484901b179250600181611a8c9190612880565b611b026008866129e7565b6007036100e55760038260ff16901c60ff16600284901b179250600381611a8c9190612880565b611b3581610100612880565b9290921b9695505050505050565b60208110611b7b5781518352611b5a6020846128ac565b9250611b676020836128ac565b9150611b74602082612880565b9050611b43565b905182516020929092036101000a5f190180199091169116179052565b5f815183511480156107e157506107e1835f845f8751611775565b5f611bbe8383611401565b60ff16611bcc8360016128ac565b6107e191906128ac565b5f8480831015611be35750815b6020878901810190858701015f5b83811015611cab5782518251808214611c7b575f6020871115611c1657505f19611c52565b600184611c24896020612880565b611c2e91906128ac565b611c399060086129d0565b611c44906002612ada565b611c4e9190612880565b1990505b5f611c61838316858416612ae5565b90508015611c78579750611cbc9650505050505050565b50505b611c866020866128ac565b9450611c936020856128ac565b93505050602081611ca491906128ac565b9050611bf1565b50611cb68589612ae5565b93505050505b9695505050505050565b82515f90611cd483856128ac565b1115611cde575f80fd5b5091016020012090565b60a081015160c08201516060916107e49161176c908290612880565b604080516080810182525f8082526020820181905291810191909152606080820152611d3a611d335f856128ac565b85906116ec565b61ffff168152611d55611d4e6002856128ac565b8590611401565b60ff166020820152611d6b611d4e6003856128ac565b60ff166040820152611d94611d816004856128ac565b611d8c600485612880565b869190611424565b60608201529392505050565b5f846020015160ff16600314611db757505f610960565b826020015160ff16856040015160ff1614611dd357505f610960565b5f611ddd85611f96565b90508360c0015161ffff168161ffff1614611dfb575f915050610960565b8551610100165f03611e10575f915050610960565b60408087015160ff165f908152600360209081529082902054855191860151925163de8f50a160e01b81526001600160a01b039091169263de8f50a192611e5c928a9290600401612b04565b602060405180830381865afa158015611e77573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611cbc9190612b3c565b5f80611ea683611f96565b90505b84515160208601511015611f8b5760a085015160c08601515f91611edb91611ed2908290612880565b88519190611d04565b90508161ffff16815f015161ffff1614611ef55750611f7d565b846040015160ff16816020015160ff1614611f105750611f7d565b60408051808201909152606081525f6020820152611f3c85518951611f3591906128ac565b8290611ff7565b50611f47818961205a565b50611f52818661205a565b50611f698260400151825f0151846060015161207f565b15611f7a5760019350505050610960565b50505b611f8685610b65565b611ea9565b505f95945050505050565b5f805f5b8351811015611fe8576001811615611fbe57611fb68482611401565b60ff16611fd0565b6008611fca8583611401565b60ff16901b5b611fde9061ffff16836128ac565b9150600101611f9a565b506106cb601082901c826128ac565b60408051808201909152606081525f60208201526120166020836129e7565b1561203e576120266020836129e7565b612031906020612880565b61203b90836128ac565b91505b506020828101829052604080518085525f815290920101905290565b60408051808201909152606081525f60208201526107e183845f015151848551612126565b60ff83165f908152600460205260408120546001600160a01b03166120a557505f6106cb565b60ff84165f90815260046020819052604091829020549151637bf41d7760e11b81526001600160a01b039092169163f7e83aee916120e79187918791016128e6565b602060405180830381865afa158015612102573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109609190612b3c565b60408051808201909152606081525f60208201528251821115612147575f80fd5b602085015161215683866128ac565b111561218957612189856121798760200151878661217491906128ac565b61220c565b6121849060026129d0565b612222565b5f808651805187602083010193508088870111156121a75787860182525b505050602084015b602084106121e757805182526121c66020836128ac565b91506121d36020826128ac565b90506121e0602085612880565b93506121af565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b5f8183111561221c5750816107e4565b50919050565b815161222e8383611ff7565b50610650838261205a565b60408051610140810182525f8082526020820181905291810182905260608082018390526080820183905260a0820183905260c082019290925260e08101829052610100810182905261012081019190915290565b6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b803560ff811681146122e3575f80fd5b919050565b6001600160a01b03811681146122fc575f80fd5b50565b5f8060408385031215612310575f80fd5b612319836122d3565b91506020830135612329816122e8565b809150509250929050565b803561ffff811681146122e3575f80fd5b5f8083601f840112612355575f80fd5b50813567ffffffffffffffff81111561236c575f80fd5b602083019150836020828501011115612383575f80fd5b9250929050565b5f805f6040848603121561239c575f80fd5b6123a584612334565b9250602084013567ffffffffffffffff8111156123c0575f80fd5b6123cc86828701612345565b9497909650939450505050565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff81118282101715612416576124166123d9565b604052919050565b5f82601f83011261242d575f80fd5b813567ffffffffffffffff811115612447576124476123d9565b61245a601f8201601f19166020016123ed565b81815284602083860101111561246e575f80fd5b816020850160208301375f918101602001919091529392505050565b5f6040828403121561249a575f80fd5b6040516040810167ffffffffffffffff82821081831117156124be576124be6123d9565b8160405282935084359150808211156124d5575f80fd5b6124e18683870161241e565b835260208501359150808211156124f6575f80fd5b506125038582860161241e565b6020830152505092915050565b5f805f805f60a08688031215612524575f80fd5b61252d86612334565b9450602086013567ffffffffffffffff80821115612549575f80fd5b61255589838a0161241e565b9550604088013591508082111561256a575f80fd5b61257689838a0161248a565b9450606088013591508082111561258b575f80fd5b61259789838a0161248a565b935060808801359150808211156125ac575f80fd5b506125b98882890161241e565b9150509295509295909350565b5f602082840312156125d6575f80fd5b81356107e1816122e8565b5f805f80608085870312156125f4575f80fd5b6125fd85612334565b9350602085013567ffffffffffffffff80821115612619575f80fd5b6126258883890161241e565b9450604087013591508082111561263a575f80fd5b6126468883890161248a565b9350606087013591508082111561265b575f80fd5b506126688782880161241e565b91505092959194509250565b5f805f60408486031215612686575f80fd5b833567ffffffffffffffff8082111561269d575f80fd5b818601915086601f8301126126b0575f80fd5b81356020828211156126c4576126c46123d9565b8160051b6126d38282016123ed565b928352848101820192828101908b8511156126ec575f80fd5b83870192505b8483101561272657823586811115612708575f80fd5b6127168d86838b010161248a565b83525091830191908301906126f2565b985050508701359250508082111561273c575f80fd5b506123cc86828701612345565b5f81518084525f5b8181101561276d57602081850181015186830182015201612751565b505f602082860101526020601f19601f83011685010191505092915050565b602081525f6107e16020830184612749565b5f602082840312156127ae575f80fd5b6107e1826122d3565b5f80604083850312156127c8575f80fd5b823567ffffffffffffffff808211156127df575f80fd5b6127eb8683870161248a565b93506020850135915080821115612800575f80fd5b5061280d8582860161241e565b9150509250929050565b818382375f9101908152919050565b634e487b7160e01b5f52603260045260245ffd5b600181811c9082168061284e57607f821691505b60208210810361221c57634e487b7160e01b5f52602260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b818103818111156107e4576107e461286c565b60ff81811683821601908111156107e4576107e461286c565b808201808211156107e4576107e461286c565b600382810b9082900b03637fffffff198112637fffffff821317156107e4576107e461286c565b604081525f6128f86040830185612749565b8281036020840152610a738185612749565b634e487b7160e01b5f52600160045260245ffd5b634e487b7160e01b5f52601260045260245ffd5b5f61ffff808416806129465761294661291e565b92169190910492915050565b60ff82811682821603908111156107e4576107e461286c565b606081525f61297d6060830186612749565b828103602084015261298f8186612749565b91505061ffff83166040830152949350505050565b5f602082840312156129b4575f80fd5b5051919050565b5f816129c9576129c961286c565b505f190190565b80820281158282048414176107e4576107e461286c565b5f826129f5576129f561291e565b500690565b600181815b80851115612a3457815f1904821115612a1a57612a1a61286c565b80851615612a2757918102915b93841c93908002906129ff565b509250929050565b5f82612a4a575060016107e4565b81612a5657505f6107e4565b8160018114612a6c5760028114612a7657612a92565b60019150506107e4565b60ff841115612a8757612a8761286c565b50506001821b6107e4565b5060208310610133831016604e8410600b8410161715612ab5575081810a6107e4565b612abf83836129fa565b805f1904821115612ad257612ad261286c565b029392505050565b5f6107e18383612a3c565b8181035f8312801583831316838312821617156108825761088261286c565b606081525f612b166060830186612749565b8281036020840152612b288186612749565b90508281036040840152611cbc8185612749565b5f60208284031215612b4c575f80fd5b815180151581146107e1575f80fdfe00010203040506070809ffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fffffffffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fa164736f6c6343000818000a","storage":{"0x0":"0xbd","0x1":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1471eb6eb2c5e789fc3de43f8ce62938c7d1836ec861730447e2ada8fd81017b":"0x17cda4e23f7237277952e075b1c48467aabfacc0","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563":"0x2b000100000e1000244a5c080249aac11d7b6f6446702e54a1607371607a","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e564":"0x1a41855200fd2ce1cdde32f24e8fb500002b000100000e1000244f660802e06d","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e565":"0x44b80b8f1d39a95c0b0d7c65d08458e880409bbc683457104237c7f8ec8d0000","0x3617319a054d772f909f7c479a2cebe5066e836a939412e32403c99029b92eff":"0x5155f5627bdf9795b3dbb8887001ada1eeba93f2","0x85aaa47b6dc46495bb8824fad4583769726fea36efd831a35556690b830a8fbe":"0x6e2822b8856749ed179c77140dbc5f5a27410a4","0x91da3fd0782e51c6b3986e9e672fd566868e71f3dbc2d6c2cd6fbb3e361af2a7":"0x49da8861c65460639925febe1fb4b5b59b443082","0x95c6356c1b7a542b884d2484ef785c9c7224e77e1016c20007bddc15c23b452f":"0x3f9151d3fd1a82dcc5091909589900fd60ee767ee090bba000000000","0xabd6e7cb50984ff9c2f3e18a2660c3353dadf4e3291deeb275dae2cd1e44fe05":"0x458f653495fb8d9bd0e7df468c2bf76d26c7bd9"}},"0x9dc64b2558b458a15c7f01c192d874ef460f0a29":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x9df67c91f1bfcb4d966cf764e9218685e7c59e8a":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101d1575f3560e01c80638b95dd71116100fe578063c86902331161009e578063e32954eb1161006e578063e32954eb146104f2578063e59d895d14610505578063e985e9c514610518578063f1cb7e0614610553575f80fd5b8063c869023314610435578063ce3decdc1461048c578063d5fa2b001461049f578063d700ff33146104b2575f80fd5b8063a8fa5682116100d9578063a8fa5682146103ac578063a9784b3e146103bf578063ac9650d814610402578063bc1c58d114610422575f80fd5b80638b95dd7114610373578063a22cb46514610386578063a4b91a0114610399575f80fd5b80633603d758116101745780635c98042b116101445780635c98042b14610327578063623195b01461033a578063691f34311461034d5780637737221314610360575f80fd5b80633603d758146102975780633b3b57de146102aa5780634cbf6ba4146102bd57806359d1d43c14610307575f80fd5b8063124a319c116101af578063124a319c146102255780632203ab561461025057806329cd62ea14610271578063304e6ade14610284575f80fd5b806301ffc9a7146101d55780630af179d7146101fd57806310f13a8c14610212575b5f80fd5b6101e86101e3366004612267565b610566565b60405190151581526020015b60405180910390f35b61021061020b3660046122bd565b610576565b005b610210610220366004612304565b610778565b610238610233366004612377565b610842565b6040516001600160a01b0390911681526020016101f4565b61026361025e3660046123a1565b610a87565b6040516101f492919061240e565b61021061027f366004612426565b610bb5565b6102106102923660046122bd565b610c4d565b6102106102a536600461244f565b610cc6565b6102386102b836600461244f565b610d64565b6101e86102cb3660046123a1565b5f82815260208181526040808320546001600160401b031683526006825280832094835293815283822092825291909152205461ffff16151590565b61031a6103153660046122bd565b610d93565b6040516101f49190612466565b61031a61033536600461244f565b610e6f565b610210610348366004612478565b610f2a565b61031a61035b36600461244f565b610fc2565b61021061036e3660046122bd565b610ffa565b6102106103813660046124da565b611073565b6102106103943660046125b9565b611150565b6102106103a73660046125e3565b61122a565b61031a6103ba36600461261e565b6112f6565b6101e86103cd36600461265a565b6001600160a01b039283165f908152600c60209081526040808320948352938152838220929094168152925290205460ff1690565b6104156104103660046126ce565b611342565b6040516101f4919061270c565b61031a61043036600461244f565b61134f565b61047761044336600461244f565b5f81815260208181526040808320546001600160401b03168352600982528083209383529290522080546001909101549091565b604080519283526020830191909152016101f4565b61021061049a3660046122bd565b611387565b6102106104ad36600461276e565b6114c3565b6104da6104c036600461244f565b5f602081905290815260409020546001600160401b031681565b6040516001600160401b0390911681526020016101f4565b61041561050036600461279c565b6114e9565b6102106105133660046127d6565b6114fe565b6101e8610526366004612808565b6001600160a01b039182165f908152600b6020908152604080832093909416825291909152205460ff1690565b61031a6105613660046123a1565b6115a2565b5f61057082611666565b92915050565b826105808161168a565b610588575f80fd5b5f84815260208181526040808320548151601f87018490048402810184019092528582528392606092839285926001600160401b039091169183916105eb9183918d908d90819084018382808284375f9201919091525092939250506118b79050565b90505b80515160208201511015610712578661ffff165f03610652578060400151965061061781611912565b94508460405160200161062a9190612834565b60405160208183030381529060405280519060200120925061064b81611933565b9350610704565b5f61065c82611912565b9050816040015161ffff168861ffff16141580610680575061067e868261194f565b155b15610702576106db8c878a8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250505060208801518d91506106d2908290612863565b8b51158a61196a565b8160400151975081602001519650809550858051906020012093506106ff82611933565b94505b505b61070d81611bc9565b6105ee565b5083511561076c5761076c8a85888c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c925061076391508290508f612863565b8951158861196a565b50505050505050505050565b846107828161168a565b61078a575f80fd5b5f86815260208181526040808320546001600160401b03168352600a8252808320898452909152908190209051849184916107c89089908990612876565b908152602001604051809103902091826107e3929190612901565b5084846040516107f4929190612876565b6040518091039020867f448bc014f1536726cf8d54ff3d6481ed3cbc683c2591ca204274009afa09b1a18787878760405161083294939291906129e2565b60405180910390a3505050505050565b5f82815260208181526040808320546001600160401b031683526007825280832085845282528083206001600160e01b0319851684529091528120546001600160a01b03168015610894579050610570565b5f61089e85610d64565b90506001600160a01b0381166108b8575f92505050610570565b6040516301ffc9a760e01b60248201525f9081906001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b1790525161090f9190612834565b5f60405180830381855afa9150503d805f8114610947576040519150601f19603f3d011682016040523d82523d5f602084013e61094c565b606091505b509150915081158061095f575060208151105b80610989575080601f8151811061097857610978612a13565b01602001516001600160f81b031916155b1561099a575f945050505050610570565b6040516001600160e01b0319871660248201526001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b179052516109f09190612834565b5f60405180830381855afa9150503d805f8114610a28576040519150601f19603f3d011682016040523d82523d5f602084013e610a2d565b606091505b509092509050811580610a41575060208151105b80610a6b575080601f81518110610a5a57610a5a612a13565b01602001516001600160f81b031916155b15610a7c575f945050505050610570565b509095945050505050565b5f82815260208181526040808320546001600160401b03168352600180835281842086855290925282206060915b848111610b975780851615801590610ae457505f8181526020839052604081208054610ae090612885565b9050115b15610b8f5780825f8381526020019081526020015f20808054610b0690612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610b3290612885565b8015610b7d5780601f10610b5457610100808354040283529160200191610b7d565b820191905f5260205f20905b815481529060010190602001808311610b6057829003601f168201915b50505050509050935093505050610bae565b60011b610ab5565b505f60405180602001604052805f81525092509250505b9250929050565b82610bbf8161168a565b610bc7575f80fd5b60408051808201825284815260208082018581525f888152808352848120546001600160401b031681526009835284812089825283528490209251835551600190920191909155815185815290810184905285917f1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e4691015b60405180910390a250505050565b82610c578161168a565b610c5f575f80fd5b5f84815260208181526040808320546001600160401b03168352600382528083208784529091529020610c93838583612901565b50837fe379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d75788484604051610c3f929190612a27565b80610cd08161168a565b610cd8575f80fd5b5f82815260208190526040812080546001600160401b031691610cfa83612a3a565b82546101009290920a6001600160401b038181021990931691831602179091555f84815260208181526040918290205491519190921681528492507fc6621ccb8f3f5a04bb6502154b2caf6adf5983fe76dfef1cfc9c42e3579db444910160405180910390a25050565b5f80610d7183603c6115a2565b905080515f03610d8357505f92915050565b610d8c81611cae565b9392505050565b5f83815260208181526040808320546001600160401b03168352600a825280832086845290915290819020905160609190610dd19085908590612876565b90815260200160405180910390208054610dea90612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610e1690612885565b8015610e615780601f10610e3857610100808354040283529160200191610e61565b820191905f5260205f20905b815481529060010190602001808311610e4457829003601f168201915b505050505090509392505050565b5f81815260208181526040808320546001600160401b03168352600482528083208484529091529020805460609190610ea790612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610ed390612885565b8015610f1e5780601f10610ef557610100808354040283529160200191610f1e565b820191905f5260205f20905b815481529060010190602001808311610f0157829003601f168201915b50505050509050919050565b83610f348161168a565b610f3c575f80fd5b83610f48600182612863565b1615610f52575f80fd5b5f85815260208181526040808320546001600160401b031683526001825280832088845282528083208784529091529020610f8e838583612901565b50604051849086907faa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe3905f90a35050505050565b5f81815260208181526040808320546001600160401b03168352600882528083208484529091529020805460609190610ea790612885565b826110048161168a565b61100c575f80fd5b5f84815260208181526040808320546001600160401b03168352600882528083208784529091529020611040838583612901565b50837fb7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f78484604051610c3f929190612a27565b8261107d8161168a565b611085575f80fd5b837f65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af75284846040516110b792919061240e565b60405180910390a2603c830361110e57837f52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd26110f284611cae565b6040516001600160a01b03909116815260200160405180910390a25b5f84815260208181526040808320546001600160401b0316835260028252808320878452825280832086845290915290206111498382612a5f565b5050505050565b6001600160a01b03821633036111bf5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084015b60405180910390fd5b335f818152600b602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6001600160a01b03821633036112825760405162461bcd60e51b815260206004820181905260248201527f53657474696e672064656c65676174652073746174757320666f722073656c6660448201526064016111b6565b335f818152600c6020908152604080832087845282528083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519384529286917ff0ddb3b04746704017f9aa8bd728fcc2c1d11675041205350018915f5e4750a0910160405180910390a4505050565b5f83815260208181526040808320546001600160401b03168352600582528083208684528252808320858452825280832061ffff851684529091529020805460609190610dea90612885565b6060610d8c5f8484611ccb565b5f81815260208181526040808320546001600160401b03168352600382528083208484529091529020805460609190610ea790612885565b826113918161168a565b611399575f80fd5b5f84815260208181526040808320546001600160401b031680845260048352818420888552909252822080549192916113d190612885565b80601f01602080910402602001604051908101604052809291908181526020018280546113fd90612885565b80156114485780601f1061141f57610100808354040283529160200191611448565b820191905f5260205f20905b81548152906001019060200180831161142b57829003601f168201915b505050506001600160401b0384165f9081526004602090815260408083208b8452909152902091925061147e9050858783612901565b50857f8f15ed4b723ef428f250961da8315675b507046737e19319fc1a4d81bfe87f858287876040516114b393929190612b1e565b60405180910390a2505050505050565b816114cd8161168a565b6114d5575f80fd5b6114e483603c61038185611e88565b505050565b60606114f6848484611ccb565b949350505050565b826115088161168a565b611510575f80fd5b5f84815260208181526040808320546001600160401b031683526007825280832087845282528083206001600160e01b031987168085529083529281902080546001600160a01b0319166001600160a01b038716908117909155905190815286917f7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa910160405180910390a350505050565b5f82815260208181526040808320546001600160401b0316835260028252808320858452825280832084845290915290208054606091906115e290612885565b80601f016020809104026020016040519081016040528092919081815260200182805461160e90612885565b80156116595780601f1061163057610100808354040283529160200191611659565b820191905f5260205f20905b81548152906001019060200180831161163c57829003601f168201915b5050505050905092915050565b5f6001600160e01b03198216631674750f60e21b1480610570575061057082611eb8565b5f336001600160a01b037f0000000000000000000000004fbf7b2f171336958be5d15ff762a5cff53635681614806116ea5750336001600160a01b037f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5616145b156116f757506001919050565b6040516302571be360e01b8152600481018390525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa15801561175c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117809190612b4d565b90507f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b0316816001600160a01b031603611845576040516331a9108f60e11b8152600481018490527f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b031690636352211e90602401602060405180830381865afa15801561181e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118429190612b4d565b90505b6001600160a01b03811633148061187e57506001600160a01b0381165f908152600b6020908152604080832033845290915290205460ff165b80610d8c57506001600160a01b0381165f908152600c60209081526040808320868452825280832033845290915290205460ff16610d8c565b6118ff6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261057081611bc9565b602081015181516060916105709161192a9082611edc565b84519190611f33565b60a081015160c08201516060916105709161192a908290612863565b5f81518351148015610d8c5750610d8c835f845f8751611fa7565b865160208801205f61197d878787611f33565b90508315611aa1576001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c168452909152902080546119c690612885565b159050611a23576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611a0783612b68565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091528120611a62916121f9565b897f03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a12078a8a604051611a94929190612b84565b60405180910390a261076c565b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c16845290915290208054611ae290612885565b90505f03611b40576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611b2483612ba9565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091529020611b808282612a5f565b50897f52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b8a8a84604051611bb593929190612bbf565b60405180910390a250505050505050505050565b60c08101516020820181905281515111611be05750565b5f611bf2825f01518360200151611edc565b8260200151611c019190612bed565b8251909150611c109082611fc9565b61ffff166040830152611c24600282612bed565b8251909150611c339082611fc9565b61ffff166060830152611c47600282612bed565b8251909150611c569082611fef565b63ffffffff166080830152611c6c600482612bed565b82519091505f90611c7d9083611fc9565b61ffff169050611c8e600283612bed565b60a084018190529150611ca18183612bed565b60c0909301929092525050565b5f8151601414611cbc575f80fd5b5060200151600160601b900490565b6060816001600160401b03811115611ce557611ce56124c6565b604051908082528060200260200182016040528015611d1857816020015b6060815260200190600190039081611d035790505b5090505f5b82811015611e80578415611dd8575f848483818110611d3e57611d3e612a13565b9050602002810190611d509190612c00565b611d5f91602491600491612c42565b611d6891612c69565b9050858114611dd65760405162461bcd60e51b815260206004820152603460248201527f6d756c746963616c6c3a20416c6c207265636f726473206d7573742068617665604482015273040c240dac2e8c6d0d2dcce40dcc2dacad0c2e6d60631b60648201526084016111b6565b505b5f8030868685818110611ded57611ded612a13565b9050602002810190611dff9190612c00565b604051611e0d929190612876565b5f60405180830381855af49150503d805f8114611e45576040519150601f19603f3d011682016040523d82523d5f602084013e611e4a565b606091505b509150915081611e58575f80fd5b80848481518110611e6b57611e6b612a13565b60209081029190910101525050600101611d1d565b509392505050565b604080516014808252818301909252606091602082018180368337505050600160601b9290920260208301525090565b5f6001600160e01b0319821663c869023360e01b1480610570575061057082612017565b5f815b83518110611eef57611eef612c86565b5f611efa858361203b565b60ff169050611f0a816001612bed565b611f149083612bed565b9150805f03611f235750611f29565b50611edf565b6114f68382612863565b8251606090611f428385612bed565b1115611f4c575f80fd5b5f826001600160401b03811115611f6557611f656124c6565b6040519080825280601f01601f191660200182016040528015611f8f576020820181803683370190505b50905060208082019086860101610a7c82828761205e565b5f611fb38484846120b3565b611fbe8787856120b3565b149695505050505050565b81515f90611fd8836002612bed565b1115611fe2575f80fd5b50016002015161ffff1690565b81515f90611ffe836004612bed565b1115612008575f80fd5b50016004015163ffffffff1690565b5f6001600160e01b0319821663691f343160e01b14806105705750610570826120d5565b5f82828151811061204e5761204e612a13565b016020015160f81c905092915050565b602081106120965781518352612075602084612bed565b9250612082602083612bed565b915061208f602082612863565b905061205e565b905182516020929092036101000a5f190180199091169116179052565b82515f906120c18385612bed565b11156120cb575f80fd5b5091016020012090565b5f6001600160e01b031982166304928c6760e21b14806105705750610570825f6001600160e01b0319821663547d2b4160e11b148061212457506001600160e01b03198216635c98042b60e01b145b806105705750610570825f6001600160e01b0319821663bc1c58d160e01b14806105705750610570825f6001600160e01b03198216631d9dabef60e11b148061217d57506001600160e01b031982166378e5bf0360e11b145b806105705750610570825f6001600160e01b03198216631101d5ab60e11b14806105705750610570825f6001600160e01b0319821663d700ff3360e01b14806105705750610570825f6001600160e01b03198216634fbf043360e01b148061057057506301ffc9a760e01b6001600160e01b0319831614610570565b50805461220590612885565b5f825580601f10612214575050565b601f0160209004905f5260205f20908101906122309190612233565b50565b5b80821115612247575f8155600101612234565b5090565b80356001600160e01b031981168114612262575f80fd5b919050565b5f60208284031215612277575f80fd5b610d8c8261224b565b5f8083601f840112612290575f80fd5b5081356001600160401b038111156122a6575f80fd5b602083019150836020828501011115610bae575f80fd5b5f805f604084860312156122cf575f80fd5b8335925060208401356001600160401b038111156122eb575f80fd5b6122f786828701612280565b9497909650939450505050565b5f805f805f60608688031215612318575f80fd5b8535945060208601356001600160401b0380821115612335575f80fd5b61234189838a01612280565b90965094506040880135915080821115612359575f80fd5b5061236688828901612280565b969995985093965092949392505050565b5f8060408385031215612388575f80fd5b823591506123986020840161224b565b90509250929050565b5f80604083850312156123b2575f80fd5b50508035926020909101359150565b5f5b838110156123db5781810151838201526020016123c3565b50505f910152565b5f81518084526123fa8160208601602086016123c1565b601f01601f19169290920160200192915050565b828152604060208201525f6114f660408301846123e3565b5f805f60608486031215612438575f80fd5b505081359360208301359350604090920135919050565b5f6020828403121561245f575f80fd5b5035919050565b602081525f610d8c60208301846123e3565b5f805f806060858703121561248b575f80fd5b843593506020850135925060408501356001600160401b038111156124ae575f80fd5b6124ba87828801612280565b95989497509550505050565b634e487b7160e01b5f52604160045260245ffd5b5f805f606084860312156124ec575f80fd5b833592506020840135915060408401356001600160401b0380821115612510575f80fd5b818601915086601f830112612523575f80fd5b813581811115612535576125356124c6565b604051601f8201601f19908116603f0116810190838211818310171561255d5761255d6124c6565b81604052828152896020848701011115612575575f80fd5b826020860160208301375f6020848301015280955050505050509250925092565b6001600160a01b0381168114612230575f80fd5b80358015158114612262575f80fd5b5f80604083850312156125ca575f80fd5b82356125d581612596565b9150612398602084016125aa565b5f805f606084860312156125f5575f80fd5b83359250602084013561260781612596565b9150612615604085016125aa565b90509250925092565b5f805f60608486031215612630575f80fd5b8335925060208401359150604084013561ffff8116811461264f575f80fd5b809150509250925092565b5f805f6060848603121561266c575f80fd5b833561267781612596565b925060208401359150604084013561264f81612596565b5f8083601f84011261269e575f80fd5b5081356001600160401b038111156126b4575f80fd5b6020830191508360208260051b8501011115610bae575f80fd5b5f80602083850312156126df575f80fd5b82356001600160401b038111156126f4575f80fd5b6127008582860161268e565b90969095509350505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b8281101561276157603f1988860301845261274f8583516123e3565b94509285019290850190600101612733565b5092979650505050505050565b5f806040838503121561277f575f80fd5b82359150602083013561279181612596565b809150509250929050565b5f805f604084860312156127ae575f80fd5b8335925060208401356001600160401b038111156127ca575f80fd5b6122f78682870161268e565b5f805f606084860312156127e8575f80fd5b833592506127f86020850161224b565b9150604084013561264f81612596565b5f8060408385031215612819575f80fd5b823561282481612596565b9150602083013561279181612596565b5f82516128458184602087016123c1565b9190910192915050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156105705761057061284f565b818382375f9101908152919050565b600181811c9082168061289957607f821691505b6020821081036128b757634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156114e457805f5260205f20601f840160051c810160208510156128e25750805b601f840160051c820191505b81811015611149575f81556001016128ee565b6001600160401b03831115612918576129186124c6565b61292c836129268354612885565b836128bd565b5f601f84116001811461295d575f85156129465750838201355b5f19600387901b1c1916600186901b178355611149565b5f83815260208120601f198716915b8281101561298c578685013582556020948501946001909201910161296c565b50868210156129a8575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b604081525f6129f56040830186886129ba565b8281036020840152612a088185876129ba565b979650505050505050565b634e487b7160e01b5f52603260045260245ffd5b602081525f6114f66020830184866129ba565b5f6001600160401b03808316818103612a5557612a5561284f565b6001019392505050565b81516001600160401b03811115612a7857612a786124c6565b612a8c81612a868454612885565b846128bd565b602080601f831160018114612abf575f8415612aa85750858301515b5f19600386901b1c1916600185901b178555612b16565b5f85815260208120601f198616915b82811015612aed57888601518255948401946001909101908401612ace565b5085821015612b0a57878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b604081525f612b3060408301866123e3565b8281036020840152612b438185876129ba565b9695505050505050565b5f60208284031215612b5d575f80fd5b8151610d8c81612596565b5f61ffff821680612b7b57612b7b61284f565b5f190192915050565b604081525f612b9660408301856123e3565b905061ffff831660208301529392505050565b5f61ffff808316818103612a5557612a5561284f565b606081525f612bd160608301866123e3565b61ffff851660208401528281036040840152612b4381856123e3565b808201808211156105705761057061284f565b5f808335601e19843603018112612c15575f80fd5b8301803591506001600160401b03821115612c2e575f80fd5b602001915036819003821315610bae575f80fd5b5f8085851115612c50575f80fd5b83861115612c5c575f80fd5b5050820193919092039150565b80356020831015610570575f19602084900360031b1b1692915050565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{}},"0xa06a63155145b7f2fda96d9658ec7fef3b9dcf76":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b506004361061004a575f3560e01c80634ce34aa21461004e578063899e104c1461007e5780638df25d9214610091578063c4e8fcb5146100a4575b5f80fd5b61006161005c366004610834565b6100b9565b6040516001600160e01b0319909116815260200160405180910390f35b61006161008c3660046108b4565b610121565b61006161009f36600461091b565b61018a565b6100b76100b2366004610969565b6101c7565b005b5f335f525f60205260405f20546100dd576349ed56f960e11b5f523360045260245ffd5b815f5b81811015610110576101088585838181106100fd576100fd6109a2565b905060c002016102c4565b6001016100e0565b50632671a55160e11b949350505050565b5f335f525f60205260405f2054610145576349ed56f960e11b5f523360045260245ffd5b835f5b8181101561016d576101658787838181106100fd576100fd6109a2565b600101610148565b506101788484610436565b50632267841360e21b95945050505050565b5f335f525f60205260405f20546101ae576349ed56f960e11b5f523360045260245ffd5b6101b88383610436565b506346f92ec960e11b92915050565b336001600160a01b037f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c1614610210576040516336abb4df60e11b815260040160405180910390fd5b6001600160a01b0382165f9081526020819052604090205481151560ff909116151503610268576040516349271a0f60e11b81526001600160a01b038316600482015281151560248201526044015b60405180910390fd5b6001600160a01b0382165f8181526020818152604091829020805460ff191685151590811790915591519182527fae63067d43ac07563b7eb8db6595635fc77f1578a2a5ea06ba91b63e2afa37e2910160405180910390a25050565b60016102d360208301836109ca565b60038111156102e4576102e46109b6565b03610329576103266102fc60408301602084016109ef565b61030c60608401604085016109ef565b61031c60808501606086016109ef565b8460a0013561056c565b50565b600261033860208301836109ca565b6003811115610349576103496109b6565b036103b6578060a00135600114610379576040516369f9582760e01b815260a0820135600482015260240161025f565b61032661038c60408301602084016109ef565b61039c60608401604085016109ef565b6103ac60808501606086016109ef565b8460800135610660565b60036103c560208301836109ca565b60038111156103d6576103d66109b6565b0361041d576103266103ee60408301602084016109ef565b6103fe60608401604085016109ef565b61040e60808501606086016109ef565b84608001358560a00135610715565b604051631e4cbc7f60e21b815260040160405180910390fd5b808280631759616b60e11b6020525f5b8381101561055f57823582018035803b61046b57635f15d6725f52806020526024601cfd5b60a08201358060051b60c0018060808501351460a0606086013514168185013583141615905080156104a657633ae8821360e21b5f5260045ffd5b506020860195506080602084016024378060061b60400190508060a00160a4525f8160c401528060c4018160a0850160c4375f808260205f875af1935083610550573d1561053057601f3d0160051c91508060051c826003028184111561051a578184036003028280028580020360091c01015b5a60208201101561052d573d5f803e3d5ffd5b50505b6357e222f160e11b5f528260045260c0606452608451602001608452805ffd5b50505050600181019050610446565b5050505060806040525050565b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166106515780873b15151661065157806106405781610623573d1561060257601f3d0160051c8360051c81600302818311156105eb578183036003028280028480020360091c01015b5a6020820110156105fe573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b833b61067757635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af180610707573d156106e557601f3d0160051c8260051c81600302818311156106ce578183036003028280028480020360091c01015b5a6020820110156106e1573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b61072c57635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af1806107d1573d156107b057601f3d0160051c8560051c8160030281831115610799578183036003028280028480020360091c01015b5a6020820110156107ac573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b5f8083601f8401126107fc575f80fd5b50813567ffffffffffffffff811115610813575f80fd5b60208301915083602060c08302850101111561082d575f80fd5b9250929050565b5f8060208385031215610845575f80fd5b823567ffffffffffffffff81111561085b575f80fd5b610867858286016107ec565b90969095509350505050565b5f8083601f840112610883575f80fd5b50813567ffffffffffffffff81111561089a575f80fd5b6020830191508360208260051b850101111561082d575f80fd5b5f805f80604085870312156108c7575f80fd5b843567ffffffffffffffff808211156108de575f80fd5b6108ea888389016107ec565b90965094506020870135915080821115610902575f80fd5b5061090f87828801610873565b95989497509550505050565b5f806020838503121561092c575f80fd5b823567ffffffffffffffff811115610942575f80fd5b61086785828601610873565b80356001600160a01b0381168114610964575f80fd5b919050565b5f806040838503121561097a575f80fd5b6109838361094e565b915060208301358015158114610997575f80fd5b809150509250929050565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52602160045260245ffd5b5f602082840312156109da575f80fd5b8135600481106109e8575f80fd5b9392505050565b5f602082840312156109ff575f80fd5b6109e88261094e56fea164736f6c6343000818000a","storage":{}},"0xaa33d7188eb4b4a51c37199eaad2f73cf2bf0204":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0xac52f68f31577e44ae0c7e95a42dc9eb574b9383":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a424740014610090575b600080fd5b610059610054366004610cac565b6100b3565b6040516100669190610d9b565b60405180910390f35b61008261007d366004610dae565b610162565b604051908152602001610066565b6100a361009e366004610cac565b6101d6565b6040519015158152602001610066565b606060005a90506101576100ca6020870187610ddc565b6001546001600160a01b03166040880135846100e960608b018b610df9565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061023592505050565b9150505b9392505050565b600154604051636ccbae5f60e01b8152600481018390526000916001600160a01b031690636ccbae5f90602401602060405180830381865afa1580156101ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d09190610e40565b92915050565b600061022d6101e485610ef1565b600154604080516020601f88018190048102820181019092528681526001600160a01b039092169190879087908190840183828082843760009201919091525061030d92505050565b949350505050565b6060600080876001600160a01b0316866102518b8a8989610355565b60405161025e9190610f9b565b60006040518083038160008787f1925050503d806000811461029c576040519150601f19603f3d011682016040523d82523d6000602084013e6102a1565b606091505b5090925090506102b2603f87610fb7565b5a116102c0576102c0610fd9565b61030082826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061040a565b9998505050505050505050565b600061031a848484610443565b801561022d575060608401516020908101516001600160e01b031990811660009081529182905260409091205460e01b16151561022d565b50565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036103e75760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526103ff82828661058c565b979650505050505050565b6060831561041957508161015b565b8251156104295782518084602001fd5b8160405162461bcd60e51b81526004016103de9190610d9b565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561048a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104ae9190610e40565b9050600061055c8660600151805190602001208688602001516040516020016104fc9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561058257508551610582906001600160a01b03168286610a38565b9695505050505050565b60606001600160e01b03198416631de5861160e31b0361061a576000806000858060200190518101906105bf9190610fef565b92509250925086838383886040516024016105dd9493929190611032565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152935061015b92505050565b6001600160e01b03198416636debcb8d60e01b0361064b576000806000858060200190518101906105bf9190610fef565b6001600160e01b0319841663280d9b0560e01b036106dd576000806000808680602001905181019061067d91906110aa565b935093509350935087848484848a60405160240161069f959493929190611118565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152945061015b9350505050565b6001600160e01b031984166361603dd960e01b0361075c5760008380602001905181019061070b9190610e40565b905084818460405160240161072192919061115d565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152915061015b9050565b6001600160e01b0319841663b34f33c560e01b036107ab5760008060008580602001905181019061078d9190611176565b92509250925086838383886040516024016105dd94939291906111d0565b6001600160e01b03198416633013529360e01b036107dc5760008060008580602001905181019061078d9190611176565b6001600160e01b031984166307eca39560e01b03610830576000806000808680602001905181019061080e9190611209565b935093509350935087848484848a60405160240161069f95949392919061127e565b6001600160e01b031984166368b6154f60e01b03610862576000806000808680602001905181019061067d91906110aa565b6001600160e01b0319841663341de35b60e21b03610894576000806000808680602001905181019061067d91906110aa565b6001600160e01b03198416637a84860f60e11b0361092d576000806000806000878060200190518101906108c891906112cb565b945094509450945094508885858585858c6040516024016108ee96959493929190611360565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152955061015b945050505050565b6001600160e01b03198416636fab95b360e01b036109b2576000808480602001905181019061095c91906113b9565b915091508582828660405160240161097693929190611400565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925061015b915050565b6001600160e01b0319841663288f888960e11b0361015b57600080848060200190518101906109e1919061142b565b91509150858282866040516024016109fb93929190611459565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925050509392505050565b6000806000610a478585610b7a565b90925090506000816004811115610a6057610a60611489565b148015610a7e5750856001600160a01b0316826001600160a01b0316145b15610a8e5760019250505061015b565b600080876001600160a01b0316631626ba7e60e01b8888604051602401610ab692919061115d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051610af49190610f9b565b600060405180830381855afa9150503d8060008114610b2f576040519150601f19603f3d011682016040523d82523d6000602084013e610b34565b606091505b5091509150818015610b47575080516020145b8015610b6e57508051630b135d3f60e11b90610b6c9083016020908101908401610e40565b145b98975050505050505050565b6000808251604103610bb05760208301516040840151606085015160001a610ba487828585610bbf565b94509450505050610bb8565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610bf65750600090506003610ca3565b8460ff16601b14158015610c0e57508460ff16601c14155b15610c1f5750600090506004610ca3565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610c73573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610c9c57600060019250925050610ca3565b9150600090505b94509492505050565b600080600060408486031215610cc157600080fd5b833567ffffffffffffffff80821115610cd957600080fd5b9085019060808288031215610ced57600080fd5b90935060208501359080821115610d0357600080fd5b818601915086601f830112610d1757600080fd5b813581811115610d2657600080fd5b876020828501011115610d3857600080fd5b6020830194508093505050509250925092565b60005b83811015610d66578181015183820152602001610d4e565b50506000910152565b60008151808452610d87816020860160208601610d4b565b601f01601f19169290920160200192915050565b60208152600061015b6020830184610d6f565b600060208284031215610dc057600080fd5b5035919050565b6001600160a01b038116811461035257600080fd5b600060208284031215610dee57600080fd5b813561015b81610dc7565b6000808335601e19843603018112610e1057600080fd5b83018035915067ffffffffffffffff821115610e2b57600080fd5b602001915036819003821315610bb857600080fd5b600060208284031215610e5257600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610e9257610e92610e59565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ec157610ec1610e59565b604052919050565b600067ffffffffffffffff821115610ee357610ee3610e59565b50601f01601f191660200190565b600060808236031215610f0357600080fd5b610f0b610e6f565b8235610f1681610dc7565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610f4657600080fd5b840136601f820112610f5757600080fd5b8035610f6a610f6582610ec9565b610e98565b8181523684838501011115610f7e57600080fd5b818484018583013760009181019093015250606082015292915050565b60008251610fad818460208701610d4b565b9190910192915050565b600082610fd457634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b60008060006060848603121561100457600080fd5b835161100f81610dc7565b602085015190935061102081610dc7565b80925050604084015190509250925092565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061058290830184610d6f565b600082601f83011261107657600080fd5b8151611084610f6582610ec9565b81815284602083860101111561109957600080fd5b61022d826020830160208701610d4b565b600080600080608085870312156110c057600080fd5b84516110cb81610dc7565b60208601519094506110dc81610dc7565b60408601516060870151919450925067ffffffffffffffff81111561110057600080fd5b61110c87828801611065565b91505092959194509250565b6001600160a01b038681168252851660208201526040810184905260a06060820181905260009061114b90830185610d6f565b8281036080840152610b6e8185610d6f565b82815260406020820152600061022d6040830184610d6f565b60008060006060848603121561118b57600080fd5b835161119681610dc7565b60208501516040860151919450925067ffffffffffffffff8111156111ba57600080fd5b6111c686828701611065565b9150509250925092565b60018060a01b03851681528360208201526080604082015260006111f76080830185610d6f565b82810360608401526103ff8185610d6f565b6000806000806080858703121561121f57600080fd5b845161122a81610dc7565b60208601516040870151919550935067ffffffffffffffff8082111561124f57600080fd5b61125b88838901611065565b9350606087015191508082111561127157600080fd5b5061110c87828801611065565b60018060a01b038616815284602082015260a0604082015260006112a560a0830186610d6f565b82810360608401526112b78186610d6f565b90508281036080840152610b6e8185610d6f565b600080600080600060a086880312156112e357600080fd5b85516112ee81610dc7565b60208701519095506112ff81610dc7565b60408701516060880151919550935067ffffffffffffffff8082111561132457600080fd5b61133089838a01611065565b9350608088015191508082111561134657600080fd5b5061135388828901611065565b9150509295509295909350565b6001600160a01b038781168252861660208201526040810185905260c06060820181905260009061139390830186610d6f565b82810360808401526113a58186610d6f565b905082810360a08401526103008185610d6f565b600080604083850312156113cc57600080fd5b82519150602083015167ffffffffffffffff8111156113ea57600080fd5b6113f685828601611065565b9150509250929050565b8381526060602082015260006114196060830185610d6f565b82810360408401526105828185610d6f565b6000806040838503121561143e57600080fd5b825161144981610dc7565b6020939093015192949293505050565b60018060a01b03841681528260208201526060604082015260006114806060830184610d6f565b95945050505050565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a","storage":{"0x1":"0x7bb6cd9be29fab783c0b494a06fed8b2e2596b7a","0xd8b896d609e853134f3f02ce62d8049b2fdfe9356134f6d548fb1beda30db79":"0x30135293","0x4f457f36b92dc6b16c281e5877e2d8d39630135c1b7246fa9174035e1efcefbd":"0x6fab95b3","0x6b7ba3fe9941e089de60543da4a1deaef065baa963222951b2f9a138f9960820":"0x6debcb8d","0x70cff8e4ee4af5aa154324d45bcf258212c235bbe79f0707bb6273110ef4e13a":"0xf5090c1e","0x73efb0e44094dbabc6bbeecd3be1d81f272157c2dae2d647e6315f150b0b1dd2":"0xd0778d6c","0x8b1c4edded6644848281eab03ac2c319242d62b2057cffa3dd4540715bbc155e":"0xef2c3088","0xbeb5ea8fc2aeae43b7170220434aa4429fb067f0866ae25514b29f647641ca8c":"0x511f1112","0xca659f6eb372ce950e69d4d474290a6a4285f6a06a6128ca9f45419371a1e997":"0xb34f33c5","0xd12e300b5f35ba5198dd81dab97a512a154a0ad0e2cda788abdc22deba64f2a7":"0x280d9b05","0xd5453e7f4fff276a1d42f717d1db50865c284ae707a15bd6a590a3895656f27c":"0x7eca395","0xea2575ae4056f10294a848ca5ed6d215dffd1b80838142770bc441f7df607d71":"0x61603dd9","0xf8ca3ef1e3d09a0d88e209301f12626c90bec3ea586d4bce2c7a58e7eae8278f":"0x68b6154f"}},"0xb17aae5b3a7815433fc82cfd67ea245767894f03":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061012a5760003560e01c80638d839ffe116100ab578063aeb8ce9b1161006f578063aeb8ce9b146105d7578063ce1e09c014610688578063f14fcbc81461069d578063f2fde38b146106c7578063f49826be146106fa578063f7a16963146107b95761012a565b80638d839ffe1461045d5780638da5cb5b146104725780638f32d59b146104a35780639791c097146104b8578063acf1a841146105695761012a565b80637e324479116100f25780637e324479146102b8578063839df945146102e857806383e7f6ff1461031257806385f6d155146103c55780638a95b09f146104485761012a565b806301ffc9a71461012f5780633ccfd60b146101775780633d86c52f1461018e578063530e784f14610270578063715018a6146102a3575b600080fd5b34801561013b57600080fd5b506101636004803603602081101561015257600080fd5b50356001600160e01b031916610881565b604080519115158252519081900360200190f35b34801561018357600080fd5b5061018c610a12565b005b34801561019a57600080fd5b5061025e600480360360a08110156101b157600080fd5b810190602081018135600160201b8111156101cb57600080fd5b8201836020820111156101dd57600080fd5b803590602001918460018302840111600160201b831117156101fe57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b0383358116945060208401359360408101358216935060600135169050610a53565b60408051918252519081900360200190f35b34801561027c57600080fd5b5061018c6004803603602081101561029357600080fd5b50356001600160a01b0316610b42565b3480156102af57600080fd5b5061018c610ba3565b3480156102c457600080fd5b5061018c600480360360408110156102db57600080fd5b5080359060200135610bfe565b3480156102f457600080fd5b5061025e6004803603602081101561030b57600080fd5b5035610c1a565b34801561031e57600080fd5b5061025e6004803603604081101561033557600080fd5b810190602081018135600160201b81111561034f57600080fd5b82018360208201111561036157600080fd5b803590602001918460018302840111600160201b8311171561038257600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505091359250610c2c915050565b61018c600480360360808110156103db57600080fd5b810190602081018135600160201b8111156103f557600080fd5b82018360208201111561040757600080fd5b803590602001918460018302840111600160201b8311171561042857600080fd5b91935091506001600160a01b038135169060208101359060400135610d9e565b34801561045457600080fd5b5061025e610de9565b34801561046957600080fd5b5061025e610df0565b34801561047e57600080fd5b50610487610df6565b604080516001600160a01b039092168252519081900360200190f35b3480156104af57600080fd5b50610163610e05565b3480156104c457600080fd5b50610163600480360360208110156104db57600080fd5b810190602081018135600160201b8111156104f557600080fd5b82018360208201111561050757600080fd5b803590602001918460018302840111600160201b8311171561052857600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610e16945050505050565b61018c6004803603604081101561057f57600080fd5b810190602081018135600160201b81111561059957600080fd5b8201836020820111156105ab57600080fd5b803590602001918460018302840111600160201b831117156105cc57600080fd5b919350915035610e2b565b3480156105e357600080fd5b50610163600480360360208110156105fa57600080fd5b810190602081018135600160201b81111561061457600080fd5b82018360208201111561062657600080fd5b803590602001918460018302840111600160201b8311171561064757600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610fcf945050505050565b34801561069457600080fd5b5061025e611069565b3480156106a957600080fd5b5061018c600480360360208110156106c057600080fd5b503561106f565b3480156106d357600080fd5b5061018c600480360360208110156106ea57600080fd5b50356001600160a01b03166110a1565b34801561070657600080fd5b5061025e6004803603606081101561071d57600080fd5b810190602081018135600160201b81111561073757600080fd5b82018360208201111561074957600080fd5b803590602001918460018302840111600160201b8311171561076a57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b0383351693505050602001356110bb565b61018c600480360360c08110156107cf57600080fd5b810190602081018135600160201b8111156107e957600080fd5b8201836020820111156107fb57600080fd5b803590602001918460018302840111600160201b8311171561081c57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b038335811694506020840135936040810135935060608101358216925060800135166110d3565b604080517f737570706f727473496e74657266616365286279746573342900000000000000815290519081900360190190206000906001600160e01b0319838116911614806109c05750604080517472656e657728737472696e672c75696e743235362960581b815290519081900360150181209080602861186a8239604080519182900360280182206e636f6d6d697428627974657333322960881b8352905191829003600f01822090925090806026611892823960260190506040518091039020604051808070617661696c61626c6528737472696e672960781b8152506011019050604051809103902060405180807f72656e74507269636528737472696e672c75696e7432353629000000000000008152506019019050604051809103902018181818186001600160e01b031916826001600160e01b031916145b80610a0c5750604051808061182a60409139604080519182900301812091508060426118b8823960420190506040518091039020186001600160e01b031916826001600160e01b031916145b92915050565b610a1a610e05565b610a2357600080fd5b6040513390303180156108fc02916000818181858888f19350505050158015610a50573d6000803e3d6000fd5b50565b845160208601206000906001600160a01b038416158015610a7b57506001600160a01b038316155b15610acb57604080516020808201939093526bffffffffffffffffffffffff19606089901b1681830152605480820188905282518083039091018152607490910190915280519101209050610b39565b6001600160a01b038416610ade57600080fd5b604080516020808201939093526bffffffffffffffffffffffff19606089811b82168385015287811b8216605484015286901b166068820152607c80820188905282518083039091018152609c909101909152805191012090505b95945050505050565b610b4a610e05565b610b5357600080fd5b600280546001600160a01b0319166001600160a01b0383811691909117918290556040519116907ff261845a790fe29bbd6631e2ca4a5bdc83e6eed7c3271d9590d97287e00e912390600090a250565b610bab610e05565b610bb457600080fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b610c06610e05565b610c0f57600080fd5b600391909155600455565b60056020526000908152604090205481565b815160208084019190912060025460015460408051636b727d4360e11b81526004810185905290516000956001600160a01b03948516946350e9a715948a9491169263d6e4fa8692602480840193919291829003018186803b158015610c9157600080fd5b505afa158015610ca5573d6000803e3d6000fd5b505050506040513d6020811015610cbb57600080fd5b50516040516001600160e01b031960e085901b168152602481018290526044810188905260606004820190815283516064830152835189928291608490910190602087019080838360005b83811015610d1e578181015183820152602001610d06565b50505050905090810190601f168015610d4b5780820380516001836020036101000a031916815260200191505b5094505050505060206040518083038186803b158015610d6a57600080fd5b505afa158015610d7e573d6000803e3d6000fd5b505050506040513d6020811015610d9457600080fd5b5051949350505050565b610de285858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250889350879250869150806110d3565b5050505050565b6224ea0081565b60035481565b6000546001600160a01b031690565b6000546001600160a01b0316331490565b60006003610e2383611646565b101592915050565b6000610e6e84848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250869250610c2c915050565b905080341015610e7d57600080fd5b60008484604051808383808284376040805193909101839003832060015463c475abff60e01b855260048501829052602485018b90529151909750600096506001600160a01b03909116945063c475abff93506044808401936020935082900301818787803b158015610eef57600080fd5b505af1158015610f03573d6000803e3d6000fd5b505050506040513d6020811015610f1957600080fd5b5051905034831015610f565760405133903485900380156108fc02916000818181858888f19350505050158015610f54573d6000803e3d6000fd5b505b817f3da24c024582931cfaf8267d8ed24d13a82a8068d5bd337d30ec45cea4e506ae8787868560405180806020018481526020018381526020018281038252868682818152602001925080828437600083820152604051601f909101601f191690920182900397509095505050505050a2505050505050565b80516020820120600090610fe283610e16565b80156110625750600154604080516312dc929d60e31b81526004810184905290516001600160a01b03909216916396e494e891602480820192602092909190829003018186803b15801561103557600080fd5b505afa158015611049573d6000803e3d6000fd5b505050506040513d602081101561105f57600080fd5b50515b9392505050565b60045481565b6004546000828152600560205260409020544291011061108e57600080fd5b6000908152600560205260409020429055565b6110a9610e05565b6110b257600080fd5b610a508161172e565b60006110cb848484600080610a53565b949350505050565b60006110e28787868686610a53565b905060006110f188878461179c565b885160208a01209091508060006001600160a01b038716156114ac5760015460408051633f2891eb60e21b815260048101859052306024820152604481018c905290516001600160a01b039092169163fca247ac916064808201926020929091908290030181600087803b15801561116857600080fd5b505af115801561117c573d6000803e3d6000fd5b505050506040513d602081101561119257600080fd5b505160015460408051630ddf7fcb60e41b815290519293506000926001600160a01b039092169163ddf7fcb091600480820192602092909190829003018186803b1580156111df57600080fd5b505afa1580156111f3573d6000803e3d6000fd5b505050506040513d602081101561120957600080fd5b50516040805160208181019390935280820187905281518082038301815260608201808452815191850191909120600154633f15457f60e01b90925292519294506001600160a01b031692633f15457f92606480840193829003018186803b15801561127457600080fd5b505afa158015611288573d6000803e3d6000fd5b505050506040513d602081101561129e57600080fd5b505160408051630c4b7b8560e11b8152600481018490526001600160a01b038b8116602483015291519190921691631896f70a91604480830192600092919082900301818387803b1580156112f257600080fd5b505af1158015611306573d6000803e3d6000fd5b505050506001600160a01b0387161561139257876001600160a01b031663d5fa2b0082896040518363ffffffff1660e01b815260040180838152602001826001600160a01b03166001600160a01b0316815260200192505050600060405180830381600087803b15801561137957600080fd5b505af115801561138d573d6000803e3d6000fd5b505050505b60015460408051630a3b53db60e21b8152600481018690526001600160a01b038e81166024830152915191909216916328ed4f6c91604480830192600092919082900301818387803b1580156113e757600080fd5b505af11580156113fb573d6000803e3d6000fd5b50505050600160009054906101000a90046001600160a01b03166001600160a01b03166323b872dd308d866040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050600060405180830381600087803b15801561148e57600080fd5b505af11580156114a2573d6000803e3d6000fd5b505050505061154c565b6001600160a01b038616156114c057600080fd5b60015460408051633f2891eb60e21b8152600481018590526001600160a01b038d81166024830152604482018d90529151919092169163fca247ac9160648083019260209291908290030181600087803b15801561151d57600080fd5b505af1158015611531573d6000803e3d6000fd5b505050506040513d602081101561154757600080fd5b505190505b896001600160a01b0316837fca6abbe9d7f11422cb6ca7629fbf6fe9efb1c621f71ce8f02b9f2a230097404f8d87856040518080602001848152602001838152602001828103825285818151815260200191508051906020019080838360005b838110156115c45781810151838201526020016115ac565b50505050905090810190601f1680156115f15780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a3833411156116395760405133903486900380156108fc02916000818181858888f19350505050158015611637573d6000803e3d6000fd5b505b5050505050505050505050565b8051600090819081905b8082101561172557600085838151811061166657fe5b01602001516001600160f81b0319169050600160ff1b81101561168e57600183019250611719565b600760fd1b6001600160f81b0319821610156116af57600283019250611719565b600f60fc1b6001600160f81b0319821610156116d057600383019250611719565b601f60fb1b6001600160f81b0319821610156116f157600483019250611719565b603f60fa1b6001600160f81b03198216101561171257600583019250611719565b6006830192505b50600190920191611650565b50909392505050565b6001600160a01b03811661174157600080fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b600354600082815260056020526040812054909142910111156117be57600080fd5b600454600083815260056020526040902054429101116117dd57600080fd5b6117e684610fcf565b6117ef57600080fd5b600082815260056020526040812081905561180a8585610c2c565b90506224ea0084101561181c57600080fd5b803410156110cb57600080fdfe6d616b65436f6d6d69746d656e7457697468436f6e66696728737472696e672c616464726573732c627974657333322c616464726573732c6164647265737329726567697374657228737472696e672c616464726573732c75696e743235362c62797465733332296d616b65436f6d6d69746d656e7428737472696e672c616464726573732c6279746573333229726567697374657257697468436f6e66696728737472696e672c616464726573732c75696e743235362c627974657333322c616464726573732c6164647265737329a265627a7a72315820ba74b4e49afb22de09a9ebda5d073d93e2a2a7b2530ce50def390c32cac92ea064736f6c634300050c0032","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1":"0xc965345edac823d56812cd20a10316233916a605","0x2":"0xec71e4e674fe0f432693dc2b935c34bd2774c003","0x3":"0x258","0x4":"0x15180"}},"0xbdefcf6429d0ac68236a6beb321cbd2ce66b463c":{"nonce":2,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c80636d435421116100885780637b37e561116100635780637b37e561146102435780638b9e028b14610256578063906c87cc1461027657806393790f4414610289575f80fd5b80636d435421146101eb5780636e9bfd9f146101fe578063794593bc14610230575f80fd5b806314afd79e116100c357806314afd79e1461018157806333bc8572146101945780634e3f9580146101b757806351710e45146101d8575f80fd5b8063027cc764146100e95780630a96ad391461011957806313ad9cab1461016c575b5f80fd5b6100fc6100f7366004610c39565b61029c565b6040516001600160a01b0390911681526020015b60405180910390f35b604080517f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f81527fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167602082015201610110565b61017f61017a366004610c61565b610339565b005b6100fc61018f366004610ca9565b610531565b6101a76101a2366004610cc9565b61055c565b6040519015158152602001610110565b6101ca6101c5366004610ca9565b610595565b604051908152602001610110565b61017f6101e6366004610ca9565b6105bd565b61017f6101f9366004610cc9565b6106be565b61021161020c366004610cfa565b6107ae565b604080516001600160a01b039093168352901515602083015201610110565b6100fc61023e366004610d11565b610838565b61017f610251366004610ca9565b610a0a565b610269610264366004610ca9565b610aab565b6040516101109190610d32565b6100fc610284366004610ca9565b610b28565b6101ca610297366004610ca9565b610b53565b5f6102a683610b8e565b6001600160a01b0383165f908152602081905260409020600301548083106102f157604051636ceb340b60e01b81526001600160a01b03851660048201526024015b60405180910390fd5b6001600160a01b0384165f90815260208190526040902060030180548490811061031d5761031d610d7e565b5f918252602090912001546001600160a01b0316949350505050565b61034283610bc6565b60405163c4e8fcb560e01b81526001600160a01b038381166004830152821515602483015284169063c4e8fcb5906044015f604051808303815f87803b15801561038a575f80fd5b505af115801561039c573d5f803e3d5ffd5b505050506001600160a01b038381165f908152602081815260408083209386168352600484019091529020548015158380156103d6575080155b15610425576003830180546001810182555f828152602080822090920180546001600160a01b0319166001600160a01b038a169081179091559254928152600486019091526040902055610529565b831580156104305750805b156105295760038301545f198301905f9061044d90600190610d92565b90508181146104d8575f85600301828154811061046c5761046c610d7e565b5f918252602090912001546003870180546001600160a01b03909216925082918590811061049c5761049c610d7e565b5f91825260208083209190910180546001600160a01b0319166001600160a01b0394851617905592909116815260048701909152604090208490555b846003018054806104eb576104eb610db7565b5f828152602080822083015f1990810180546001600160a01b03191690559092019092556001600160a01b0389168252600487019052604081205550505b505050505050565b5f61053b82610b8e565b506001600160a01b039081165f908152602081905260409020600101541690565b5f61056683610b8e565b506001600160a01b039182165f9081526020818152604080832093909416825260049092019091522054151590565b5f61059f82610b8e565b506001600160a01b03165f9081526020819052604090206003015490565b6105c681610b8e565b6001600160a01b038181165f9081526020819052604090206002015416331461060d576040516388c3a11560e01b81526001600160a01b03821660048201526024016102e8565b6040515f907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da908290a26001600160a01b038082165f818152602081905260408082206002810180546001600160a01b031916905560010154905133949190911692917fc8894f26f396ce8c004245c8b7cd1b92103a6e4302fcbab883987149ac01b7ec91a46001600160a01b03165f90815260208190526040902060010180546001600160a01b03191633179055565b6106c782610bc6565b6001600160a01b0381166106f95760405163a388d26360e01b81526001600160a01b03831660048201526024016102e8565b6001600160a01b038083165f9081526020819052604090206002015481169082160361074b576040516365e0406560e11b81526001600160a01b038084166004830152821660248201526044016102e8565b6040516001600160a01b038216907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da905f90a26001600160a01b039182165f90815260208190526040902060020180546001600160a01b03191691909216179055565b5f8060ff60f81b30847f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f6040516020016107eb9493929190610dcb565b60408051601f198184030181529190528051602090910120936001600160a01b0385163f7fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167149350915050565b5f6001600160a01b0382166108605760405163267eaa8160e21b815260040160405180910390fd5b606083901c3314610884576040516332db94d160e21b815260040160405180910390fd5b6040516108c3906001600160f81b031990309086907f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f90602001610dcb565b604051602081830303815290604052805190602001205f1c90507fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167816001600160a01b03163f0361093257604051633194665960e11b81526001600160a01b03821660048201526024016102e8565b8260405161093f90610c16565b8190604051809103905ff590508015801561095c573d5f803e3d5ffd5b50506001600160a01b038181165f81815260208181526040918290206001810180546001600160a01b03191695881695909517909455868455815192835282018690527f4397af6128d529b8ae0442f99db1296d5136062597a15bbc61c1b2a6431a7d15910160405180910390a16040516001600160a01b03808516915f918516907fc8894f26f396ce8c004245c8b7cd1b92103a6e4302fcbab883987149ac01b7ec908390a45092915050565b610a1381610bc6565b6001600160a01b038181165f9081526020819052604090206002015416610a58576040516335809b0b60e11b81526001600160a01b03821660048201526024016102e8565b6040515f907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da908290a26001600160a01b03165f90815260208190526040902060020180546001600160a01b0319169055565b6060610ab682610b8e565b6001600160a01b0382165f908152602081815260409182902060030180548351818402810184019094528084529091830182828015610b1c57602002820191905f5260205f20905b81546001600160a01b03168152600190910190602001808311610afe575b50505050509050919050565b5f610b3282610b8e565b506001600160a01b039081165f908152602081905260409020600201541690565b6001600160a01b0381165f9081526020819052604090205480610b89576040516304ca820960e41b815260040160405180910390fd5b919050565b6001600160a01b0381165f90815260208190526040902054610bc3576040516304ca820960e41b815260040160405180910390fd5b50565b610bcf81610b8e565b6001600160a01b038181165f90815260208190526040902060010154163314610bc35760405163d4ed9a1760e01b81526001600160a01b03821660048201526024016102e8565b610a4180610e0583390190565b80356001600160a01b0381168114610b89575f80fd5b5f8060408385031215610c4a575f80fd5b610c5383610c23565b946020939093013593505050565b5f805f60608486031215610c73575f80fd5b610c7c84610c23565b9250610c8a60208501610c23565b915060408401358015158114610c9e575f80fd5b809150509250925092565b5f60208284031215610cb9575f80fd5b610cc282610c23565b9392505050565b5f8060408385031215610cda575f80fd5b610ce383610c23565b9150610cf160208401610c23565b90509250929050565b5f60208284031215610d0a575f80fd5b5035919050565b5f8060408385031215610d22575f80fd5b82359150610cf160208401610c23565b602080825282518282018190525f9190848201906040850190845b81811015610d725783516001600160a01b031683529284019291840191600101610d4d565b50909695505050505050565b634e487b7160e01b5f52603260045260245ffd5b81810381811115610db157634e487b7160e01b5f52601160045260245ffd5b92915050565b634e487b7160e01b5f52603160045260245ffd5b6001600160f81b031994909416845260609290921b6bffffffffffffffffffffffff19166001840152601583015260358201526055019056fe60a060405234801561000f575f80fd5b5033608052608051610a1561002c5f395f6101d20152610a155ff3fe608060405234801561000f575f80fd5b506004361061004a575f3560e01c80634ce34aa21461004e578063899e104c1461007e5780638df25d9214610091578063c4e8fcb5146100a4575b5f80fd5b61006161005c366004610834565b6100b9565b6040516001600160e01b0319909116815260200160405180910390f35b61006161008c3660046108b4565b610121565b61006161009f36600461091b565b61018a565b6100b76100b2366004610969565b6101c7565b005b5f335f525f60205260405f20546100dd576349ed56f960e11b5f523360045260245ffd5b815f5b81811015610110576101088585838181106100fd576100fd6109a2565b905060c002016102c4565b6001016100e0565b50632671a55160e11b949350505050565b5f335f525f60205260405f2054610145576349ed56f960e11b5f523360045260245ffd5b835f5b8181101561016d576101658787838181106100fd576100fd6109a2565b600101610148565b506101788484610436565b50632267841360e21b95945050505050565b5f335f525f60205260405f20546101ae576349ed56f960e11b5f523360045260245ffd5b6101b88383610436565b506346f92ec960e11b92915050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610210576040516336abb4df60e11b815260040160405180910390fd5b6001600160a01b0382165f9081526020819052604090205481151560ff909116151503610268576040516349271a0f60e11b81526001600160a01b038316600482015281151560248201526044015b60405180910390fd5b6001600160a01b0382165f8181526020818152604091829020805460ff191685151590811790915591519182527fae63067d43ac07563b7eb8db6595635fc77f1578a2a5ea06ba91b63e2afa37e2910160405180910390a25050565b60016102d360208301836109ca565b60038111156102e4576102e46109b6565b03610329576103266102fc60408301602084016109ef565b61030c60608401604085016109ef565b61031c60808501606086016109ef565b8460a0013561056c565b50565b600261033860208301836109ca565b6003811115610349576103496109b6565b036103b6578060a00135600114610379576040516369f9582760e01b815260a0820135600482015260240161025f565b61032661038c60408301602084016109ef565b61039c60608401604085016109ef565b6103ac60808501606086016109ef565b8460800135610660565b60036103c560208301836109ca565b60038111156103d6576103d66109b6565b0361041d576103266103ee60408301602084016109ef565b6103fe60608401604085016109ef565b61040e60808501606086016109ef565b84608001358560a00135610715565b604051631e4cbc7f60e21b815260040160405180910390fd5b808280631759616b60e11b6020525f5b8381101561055f57823582018035803b61046b57635f15d6725f52806020526024601cfd5b60a08201358060051b60c0018060808501351460a0606086013514168185013583141615905080156104a657633ae8821360e21b5f5260045ffd5b506020860195506080602084016024378060061b60400190508060a00160a4525f8160c401528060c4018160a0850160c4375f808260205f875af1935083610550573d1561053057601f3d0160051c91508060051c826003028184111561051a578184036003028280028580020360091c01015b5a60208201101561052d573d5f803e3d5ffd5b50505b6357e222f160e11b5f528260045260c0606452608451602001608452805ffd5b50505050600181019050610446565b5050505060806040525050565b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166106515780873b15151661065157806106405781610623573d1561060257601f3d0160051c8360051c81600302818311156105eb578183036003028280028480020360091c01015b5a6020820110156105fe573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b833b61067757635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af180610707573d156106e557601f3d0160051c8260051c81600302818311156106ce578183036003028280028480020360091c01015b5a6020820110156106e1573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b61072c57635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af1806107d1573d156107b057601f3d0160051c8560051c8160030281831115610799578183036003028280028480020360091c01015b5a6020820110156107ac573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b5f8083601f8401126107fc575f80fd5b50813567ffffffffffffffff811115610813575f80fd5b60208301915083602060c08302850101111561082d575f80fd5b9250929050565b5f8060208385031215610845575f80fd5b823567ffffffffffffffff81111561085b575f80fd5b610867858286016107ec565b90969095509350505050565b5f8083601f840112610883575f80fd5b50813567ffffffffffffffff81111561089a575f80fd5b6020830191508360208260051b850101111561082d575f80fd5b5f805f80604085870312156108c7575f80fd5b843567ffffffffffffffff808211156108de575f80fd5b6108ea888389016107ec565b90965094506020870135915080821115610902575f80fd5b5061090f87828801610873565b95989497509550505050565b5f806020838503121561092c575f80fd5b823567ffffffffffffffff811115610942575f80fd5b61086785828601610873565b80356001600160a01b0381168114610964575f80fd5b919050565b5f806040838503121561097a575f80fd5b6109838361094e565b915060208301358015158114610997575f80fd5b809150509250929050565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52602160045260245ffd5b5f602082840312156109da575f80fd5b8135600481106109e8575f80fd5b9392505050565b5f602082840312156109ff575f80fd5b6109e88261094e56fea164736f6c6343000818000aa164736f6c6343000818000a","storage":{}},"0xbe5deac45dd1ca4ee18dc2d585d84d3d3cb82b0d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c806341539d4a146100465780634d5505d314610097578063afa764d7146100b1575b600080fd5b6100636004803603602081101561005c57600080fd5b50356100dc565b6040805195865260208601949094528484019290925260608401526001600160a01b03166080830152519081900360a00190f35b61009f610114565b60408051918252519081900360200190f35b6100da600480360360608110156100c757600080fd5b508035906020810135906040013561011a565b005b60006020819052908152604090208054600182015460028301546003840154600490940154929391929091906001600160a01b031685565b60015481565b6101226101eb565b506040805160a0810182528481526020808201858152828401858152426060808601918252336080870181815260018054810180825560009081528089528a81208a518155975188830155955160028801559351600387015551600490950180546001600160a01b0319166001600160a01b0390961695909517909455905486518981529485018890528487018a905295519495919491937fba5de06d22af2685c6c7765f60067f7d2b08c2d29f53cdf14d67f6d1c9bfb527929081900390910190a450505050565b6040518060a001604052806000801916815260200160008152602001600081526020016000815260200160006001600160a01b03168152509056fea164736f6c6343000606000a","storage":{"0x1":"0x0"}},"0xbe92182cab5b84fd18b34881a0c32771e84f5b8b":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061021c5760003560e01c80638da5cb5b11610125578063bebec6b4116100ad578063e985e9c51161007c578063e985e9c514610540578063f059235914610553578063f2fde38b14610566578063ffa1ad7414610579578063ffad6f551461059d57600080fd5b8063bebec6b4146104e7578063bfc5429b146104fa578063c15ae7cf1461050d578063c87b56dd1461052d57600080fd5b8063a81ce6f9116100f4578063a81ce6f91461046d578063ac9650d814610480578063b3f9e4cb146104a0578063b85afd28146104b3578063b98b3526146104d457600080fd5b80638da5cb5b146103f157806391015f6b146103f9578063933c051d1461041b578063a3f4df7e1461043d57600080fd5b80634bd79ed0116101a857806370a082311161017757806370a082311461038d578063715018a6146103a05780637e37479e146103a857806383caffbe146103bb578063869b8884146103ce57600080fd5b80634bd79ed0146103335780634f558e79146103465780636352211e14610359578063672b9f811461036c57600080fd5b80631bd8cc1a116101ef5780631bd8cc1a146102ac5780631be5e7ed146102cc578063276fabb1146102ec578063430c20811461030d578063485cc9551461032057600080fd5b806301ffc9a7146102215780630328075514610249578063081812fc1461026c57806313af403514610297575b600080fd5b61023461022f366004612c9d565b6105b0565b60405190151581526020015b60405180910390f35b61025c610257366004612d0b565b610638565b6040516102409493929190612dfe565b61027f61027a366004612e3c565b61065b565b6040516001600160a01b039091168152602001610240565b6102aa6102a5366004612e6a565b610760565b005b6102bf6102ba366004612d0b565b6107d1565b6040516102409190612e87565b6102df6102da366004612edb565b6107f0565b6040516102409190612f12565b6102ff6102fa366004612f25565b61091b565b604051908152602001610240565b61023461031b366004612f66565b61098f565b6102aa61032e366004612f92565b610aa2565b6102aa610341366004612fcb565b610bf5565b610234610354366004612e3c565b610e51565b61027f610367366004612e3c565b610e5c565b61037f61037a366004613036565b610e67565b604051610240929190613058565b6102ff61039b366004612e6a565b610f97565b6102aa611095565b6102ff6103b6366004612e6a565b6110a9565b6102bf6103c936600461307d565b611118565b6103e16103dc366004612fcb565b6114f0565b60405161024094939291906131bb565b61027f6116e6565b61040c610407366004612d0b565b611714565b60405161024093929190613208565b61042e610429366004612fcb565b611734565b60405161024093929190613234565b6102df604051806040016040528060118152602001702aa7299d10283937bc3c902932b0b232b960791b81525081565b61027f61047b366004612e3c565b6118bd565b61049361048e366004612f25565b61198b565b6040516102409190613277565b61027f6104ae366004612e3c565b611a7f565b6104c66104c1366004612d0b565b611b05565b6040516102409291906132d9565b6102df6104e23660046132fe565b611ce1565b6102df6104f5366004612e6a565b611cfb565b6102df6105083660046132fe565b611d6f565b61052061051b366004612f25565b611d89565b6040516102409190613371565b6102df61053b366004612e3c565b611e37565b61023461054e366004612f92565b611f09565b6102aa610561366004612fcb565b611f54565b6102aa610574366004612e6a565b612018565b6102df604051806040016040528060058152602001640302e352e360dc1b81525081565b6102aa6105ab366004613384565b612085565b60006001600160e01b031982166362526e6360e01b14806105e157506001600160e01b03198216636fa624af60e11b145b806105fc57506001600160e01b031982166308da864d60e31b145b8061061757506001600160e01b03198216638584880360e01b145b8061063257506301ffc9a760e01b6001600160e01b03198316145b92915050565b6000806060806106498787876120d8565b93509350935093505b93509350935093565b60006106668261233a565b61067257506000919050565b61067b826123d2565b6106f25760665460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa1580156106c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106ed91906133bd565b610632565b60655460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa15801561073c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061063291906133bd565b600061076a6116e6565b6001600160a01b0316146107c55760405162461bcd60e51b815260206004820152601e60248201527f50726f78795265616465723a204f574e45525f414c52454144595f534554000060448201526064015b60405180910390fd5b6107ce81612419565b50565b60606107e66107e0848661346a565b83612495565b90505b9392505050565b60606107fb826123d2565b1561088057606554604051631be5e7ed60e01b81526001600160a01b0390911690631be5e7ed9061083490879087908790600401613547565b600060405180830381865afa158015610851573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261087991908101906135b0565b90506107e9565b600061088b83612617565b90506001600160a01b0381163b1561091357604051631be5e7ed60e01b81526001600160a01b03821690631be5e7ed906108cd90889088908890600401613547565b600060405180830381865afa92505050801561090b57506040513d6000823e601f3d908101601f1916820160405261090891908101906135b0565b60015b156109135791505b509392505050565b60655460405163276fabb160e01b81526000916001600160a01b03169063276fabb19061094e908690869060040161366c565b602060405180830381865afa15801561096b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613680565b600061099a8261233a565b6109a657506000610632565b6109af826123d2565b610a2d5760665460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a04573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a289190613699565b6107e9565b60655460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a7e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613699565b600054610100900460ff1615808015610ac25750600054600160ff909116105b80610adc5750303b158015610adc575060005460ff166001145b610b3f5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107bc565b6000805460ff191660011790558015610b62576000805461ff0019166101001790555b606580546001600160a01b038086166001600160a01b0319928316179092556066805492851692909116919091179055610b9a61268a565b610ba261268a565b610baa6126b1565b8015610bf0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b610bfd6126e1565b828114610c4c5760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107bc565b60005b83811015610e4a5760006068868684818110610c6d57610c6d6136bb565b9050602002810190610c7f91906136d1565b604051610c8d929190613717565b908152604051908190036020019020541115610cf1576068858583818110610cb757610cb76136bb565b9050602002810190610cc991906136d1565b604051610cd7929190613717565b90815260200160405180910390206000610cf19190612c18565b60005b838383818110610d0657610d066136bb565b9050602002810190610d189190613727565b9050811015610ddc576068868684818110610d3557610d356136bb565b9050602002810190610d4791906136d1565b604051610d55929190613717565b9081526020016040518091039020848484818110610d7557610d756136bb565b9050602002810190610d879190613727565b83818110610d9757610d976136bb565b9050602002810190610da991906136d1565b82546001810184556000938452602090932090920191610dc991836137f8565b5080610dd4816138cd565b915050610cf4565b507fb2b57b54285120d17f49f2490a39ef791441fd0ad1e6b6818c23262bf91f061c858583818110610e1057610e106136bb565b9050602002810190610e2291906136d1565b604051610e309291906138e6565b60405180910390a180610e42816138cd565b915050610c4f565b5050505050565b60006106328261233a565b600061063282612740565b606080610e73836123d2565b15610ef95760655460405163672b9f8160e01b815260048101869052602481018590526001600160a01b039091169063672b9f8190604401600060405180830381865afa158015610ec8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610ef091908101906138fa565b91509150610f90565b6000610f0484612617565b90506001600160a01b0381163b15610f8e5760405163672b9f8160e01b815260048101869052602481018590526001600160a01b0382169063672b9f8190604401600060405180830381865afa925050508015610f8357506040513d6000823e601f3d908101601f19168201604052610f8091908101906138fa565b60015b15610f8e5790935091505b505b9250929050565b6065546040516370a0823160e01b81526001600160a01b03838116600483015260009283929116906370a0823190602401602060405180830381865afa158015610fe5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110099190613680565b6066549091506001600160a01b031615610632576066546040516370a0823160e01b81526001600160a01b038581166004830152909116906370a0823190602401602060405180830381865afa158015611067573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061108b9190613680565b6107e9908261395d565b61109d6126e1565b6110a76000612419565b565b606554604051633f1ba3cf60e11b81526001600160a01b0383811660048301526000921690637e37479e90602401602060405180830381865afa1580156110f4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190613680565b606060006067868660405161112e929190613717565b9081526020016040518091039020805461114790613770565b80601f016020809104026020016040519081016040528092919081815260200182805461117390613770565b80156111c05780601f10611195576101008083540402835291602001916111c0565b820191906000526020600020905b8154815290600101906020018083116111a357829003601f168201915b5050505050905080516000036111d657506114e8565b6000604051806040016040528060068152602001653a37b5b2b71760d11b81525090506000604051806040016040528060088152602001672e6164647265737360c01b81525090506000604051806040016040528060018152602001601760f91b815250905060008385838c8c868d8d8a60405160200161125f99989796959493929190613970565b6040516020818303038152906040529050600060688260405161128291906139f3565b9081526020016040518091039020805480602002602001604051908101604052809291908181526020016000905b8282101561135c5783829060005260206000200180546112cf90613770565b80601f01602080910402602001604051908101604052809291908181526020018280546112fb90613770565b80156113485780601f1061131d57610100808354040283529160200191611348565b820191906000526020600020905b81548152906001019060200180831161132b57829003601f168201915b5050505050815260200190600101906112b0565b50505050905080516003611370919061395d565b6001600160401b03811115611387576113876133da565b6040519080825280602002602001820160405280156113ba57816020015b60608152602001906001900390816113a55790505b50965081876000815181106113d1576113d16136bb565b602002602001018190525060005b815181101561143e578181815181106113fa576113fa6136bb565b602002602001015188826001611410919061395d565b81518110611420576114206136bb565b60200260200101819052508080611436906138cd565b9150506113df565b508486848d8d8860405160200161145a96959493929190613a0f565b6040516020818303038152906040528782516001611478919061395d565b81518110611488576114886136bb565b60200260200101819052508486856040516020016114a893929190613a72565b60405160208183030381529060405287825160026114c6919061395d565b815181106114d6576114d66136bb565b60200260200101819052505050505050505b949350505050565b6060808080846001600160401b0381111561150d5761150d6133da565b604051908082528060200260200182016040528015611536578160200160208202803683370190505b509350846001600160401b03811115611551576115516133da565b60405190808252806020026020018201604052801561157a578160200160208202803683370190505b509250846001600160401b03811115611595576115956133da565b6040519080825280602002602001820160405280156115c857816020015b60608152602001906001900390816115b35790505b509150846001600160401b038111156115e3576115e36133da565b60405190808252806020026020018201604052801561161657816020015b60608152602001906001900390816116015790505b50905060005b858110156116da57611647898989898581811061163b5761163b6136bb565b905060200201356120d8565b888581518110611659576116596136bb565b60200260200101888681518110611672576116726136bb565b6020026020010188878151811061168b5761168b6136bb565b602002602001018888815181106116a4576116a46136bb565b6020908102919091010193909352929091526001600160a01b0392831690915291169052806116d2816138cd565b91505061161c565b50945094509450949050565b7fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c8121905546001600160a01b031690565b6000806060611724868686612761565b9250925092505b93509350939050565b60608080836001600160401b03811115611750576117506133da565b604051908082528060200260200182016040528015611779578160200160208202803683370190505b509250836001600160401b03811115611794576117946133da565b6040519080825280602002602001820160405280156117bd578160200160208202803683370190505b509150836001600160401b038111156117d8576117d86133da565b60405190808252806020026020018201604052801561180b57816020015b60608152602001906001900390816117f65790505b50905060005b848110156118b25761183c8888888885818110611830576118306136bb565b90506020020135612761565b86848151811061184e5761184e6136bb565b60200260200101868581518110611867576118676136bb565b60200260200101868681518110611880576118806136bb565b60209081029190910101929092526001600160a01b0392831690915291169052806118aa816138cd565b915050611811565b509450945094915050565b606554604051634f558e7960e01b8152600481018390526000916001600160a01b031690634f558e7990602401602060405180830381865afa158015611907573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061192b9190613699565b156119415750506065546001600160a01b031690565b6066546001600160a01b03161580159061196d575060006119618361296c565b6001600160a01b031614155b156119835750506066546001600160a01b031690565b506000919050565b6060816001600160401b038111156119a5576119a56133da565b6040519080825280602002602001820160405280156119d857816020015b60608152602001906001900390816119c35790505b50905060005b82811015611a7857611a48308585848181106119fc576119fc6136bb565b9050602002810190611a0e91906136d1565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061299e92505050565b828281518110611a5a57611a5a6136bb565b60200260200101819052508080611a70906138cd565b9150506119de565b5092915050565b6000611a8a8261233a565b611a9657506000919050565b611a9f826123d2565b611ad45760665460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb906024016106ac565b60655460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb9060240161071f565b606080836001600160401b03811115611b2057611b206133da565b604051908082528060200260200182016040528015611b5357816020015b6060815260200190600190039081611b3e5790505b509150836001600160401b03811115611b6e57611b6e6133da565b604051908082528060200260200182016040528015611ba157816020015b6060815260200190600190039081611b8c5790505b509050611bad836123d2565b15611c345760655460405163170b5fa560e31b81526001600160a01b039091169063b85afd2890611be690889088908890600401613ab5565b600060405180830381865afa158015611c03573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611c2b9190810190613b72565b91509150611cd9565b6000611c3f84612617565b90506001600160a01b0381163b15158015611c5957508415155b15611cd75760405163170b5fa560e31b81526001600160a01b0382169063b85afd2890611c8e90899089908990600401613ab5565b600060405180830381865afa925050508015611ccc57506040513d6000823e601f3d908101601f19168201604052611cc99190810190613b72565b60015b15611cd75790935091505b505b935093915050565b6060611cf08686868686612a92565b979650505050505050565b606554604051632fafb1ad60e21b81526001600160a01b038381166004830152606092169063bebec6b4906024015b600060405180830381865afa158015611d47573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261063291908101906135b0565b6060611d7e8686868686612a92565b509695505050505050565b6060816001600160401b03811115611da357611da36133da565b604051908082528060200260200182016040528015611dcc578160200160208202803683370190505b50905060005b82811015611a7857611dfb848483818110611def57611def6136bb565b90506020020135612740565b828281518110611e0d57611e0d6136bb565b6001600160a01b039092166020928302919091019091015280611e2f816138cd565b915050611dd2565b6060611e428261233a565b611e5a57505060408051602081019091526000815290565b611e63826123d2565b611ed85760665460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401600060405180830381865afa158015611eb0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106ed91908101906135b0565b60655460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401611d2a565b60405162461bcd60e51b815260206004820152601f60248201527f50726f78795265616465723a20554e535550504f525445445f4d4554484f440060448201526000906064016107bc565b611f5c6126e1565b828114611fab5760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107bc565b60005b83811015610e4a57612006858583818110611fcb57611fcb6136bb565b9050602002810190611fdd91906136d1565b858585818110611fef57611fef6136bb565b905060200281019061200191906136d1565b612b3e565b80612010816138cd565b915050611fae565b6120206126e1565b6001600160a01b0381166107c55760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107bc565b61208d6126e1565b60005b83811015610e4a576120c68585838181106120ad576120ad6136bb565b90506020028101906120bf91906136d1565b8585612b3e565b806120d0816138cd565b915050612090565b600080606080856001600160401b038111156120f6576120f66133da565b60405190808252806020026020018201604052801561212957816020015b60608152602001906001900390816121145790505b509150856001600160401b03811115612144576121446133da565b60405190808252806020026020018201604052801561217757816020015b60608152602001906001900390816121625790505b509050612183856123d2565b156122845760655460405163b3f9e4cb60e01b8152600481018790526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa1580156121d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121f591906133bd565b935061220085612bad565b60655460405163170b5fa560e31b81529194506001600160a01b03169063b85afd2890612235908a908a908a90600401613ab5565b600060405180830381865afa158015612252573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261227a9190810190613b72565b9092509050610652565b61228d85612617565b93506122988561296c565b92506001600160a01b0384163b151580156122b4575060008251115b156106525760405163170b5fa560e31b81526001600160a01b0385169063b85afd28906122e9908a908a908a90600401613ab5565b600060405180830381865afa92505050801561232757506040513d6000823e601f3d908101601f191682016040526123249190810190613b72565b60015b1561065257909250905093509350935093565b6000612345826123d2565b6123645760006123548361296c565b6001600160a01b03161415610632565b606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e79906024015b602060405180830381865afa1580156123ae573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190613699565b6066546000906001600160a01b031615806106325750606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401612391565b60006124236116e6565b9050817fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c812190580546001600160a01b0319166001600160a01b03928316179055604051838216918316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b606082516001600160401b038111156124b0576124b06133da565b6040519080825280602002602001820160405280156124e357816020015b60608152602001906001900390816124ce5790505b5090506124ef826123d2565b1561257257606554604051630dec660d60e11b81526001600160a01b0390911690631bd8cc1a906125269086908690600401613bcb565b600060405180830381865afa158015612543573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261256b9190810190613bed565b9050610632565b600061257d83612617565b90506001600160a01b0381163b15158015612599575060008451115b15611a7857604051630dec660d60e11b81526001600160a01b03821690631bd8cc1a906125cc9087908790600401613bcb565b600060405180830381865afa92505050801561260a57506040513d6000823e601f3d908101601f191682016040526126079190810190613bed565b60015b15611a7857949350505050565b60665460405163b3f9e4cb60e01b8152600481018390526000916001600160a01b03169063b3f9e4cb906024015b602060405180830381865afa92505050801561267e575060408051601f3d908101601f1916820190925261267b918101906133bd565b60015b61063257506000919050565b600054610100900460ff166110a75760405162461bcd60e51b81526004016107bc90613c21565b600054610100900460ff166126d85760405162461bcd60e51b81526004016107bc90613c21565b6110a733612419565b336126ea6116e6565b6001600160a01b0316146110a75760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107bc565b600061274b826123d2565b612758576106ed8261296c565b61063282612bad565b6000806060846001600160401b0381111561277e5761277e6133da565b6040519080825280602002602001820160405280156127b157816020015b606081526020019060019003908161279c5790505b5090506127bd846123d2565b156128bb5760655460405163b3f9e4cb60e01b8152600481018690526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561280b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061282f91906133bd565b925061283a84612bad565b606554604051630dec660d60e11b81529193506001600160a01b031690631bd8cc1a9061286f90899089908990600401613c6c565b600060405180830381865afa15801561288c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526128b49190810190613bed565b905061172b565b6128c484612617565b92506128cf8461296c565b91506001600160a01b0383163b151580156128e957508415155b1561172b57604051630dec660d60e11b81526001600160a01b03841690631bd8cc1a9061291e90899089908990600401613c6c565b600060405180830381865afa92505050801561295c57506040513d6000823e601f3d908101601f191682016040526129599190810190613bed565b60015b1561172b57905093509350939050565b6066546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401612645565b60606001600160a01b0383163b612a065760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b60648201526084016107bc565b600080846001600160a01b031684604051612a2191906139f3565b600060405180830381855af49150503d8060008114612a5c576040519150601f19603f3d011682016040523d82523d6000602084013e612a61565b606091505b5091509150612a898282604051806060016040528060278152602001613c8160279139612bdf565b95945050505050565b6060806000612aa388888888611118565b90506000612ab18286612495565b905060005b8151811015612b31576000828281518110612ad357612ad36136bb565b6020026020010151511115612b1f57828181518110612af457612af46136bb565b60200260200101519350818181518110612b1057612b106136bb565b60200260200101519450612b31565b80612b29816138cd565b915050612ab6565b5050509550959350505050565b818160678686604051612b52929190613717565b90815260200160405180910390209182612b6d9291906137f8565b507f0bf4b04a0f6d7d0800284e1abb0f58f795c0a25b9088634b6ab847be51001dec8484604051612b9f9291906138e6565b60405180910390a150505050565b6065546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401612645565b60608315612bee5750816107e9565b825115612bfe5782518084602001fd5b8160405162461bcd60e51b81526004016107bc9190612f12565b50805460008255906000526020600020908101906107ce91905b80821115612c4f576000612c468282612c53565b50600101612c32565b5090565b508054612c5f90613770565b6000825580601f10612c6f575050565b601f0160209004906000526020600020908101906107ce91905b80821115612c4f5760008155600101612c89565b600060208284031215612caf57600080fd5b81356001600160e01b0319811681146107e957600080fd5b60008083601f840112612cd957600080fd5b5081356001600160401b03811115612cf057600080fd5b6020830191508360208260051b8501011115610f9057600080fd5b600080600060408486031215612d2057600080fd5b83356001600160401b03811115612d3657600080fd5b612d4286828701612cc7565b909790965060209590950135949350505050565b60005b83811015612d71578181015183820152602001612d59565b50506000910152565b60008151808452612d92816020860160208601612d56565b601f01601f19169290920160200192915050565b600082825180855260208086019550808260051b84010181860160005b84811015612df157601f19868403018952612ddf838351612d7a565b98840198925090830190600101612dc3565b5090979650505050505050565b6001600160a01b03858116825284166020820152608060408201819052600090612e2a90830185612da6565b8281036060840152611cf08185612da6565b600060208284031215612e4e57600080fd5b5035919050565b6001600160a01b03811681146107ce57600080fd5b600060208284031215612e7c57600080fd5b81356107e981612e55565b6020815260006107e96020830184612da6565b60008083601f840112612eac57600080fd5b5081356001600160401b03811115612ec357600080fd5b602083019150836020828501011115610f9057600080fd5b600080600060408486031215612ef057600080fd5b83356001600160401b03811115612f0657600080fd5b612d4286828701612e9a565b6020815260006107e96020830184612d7a565b60008060208385031215612f3857600080fd5b82356001600160401b03811115612f4e57600080fd5b612f5a85828601612cc7565b90969095509350505050565b60008060408385031215612f7957600080fd5b8235612f8481612e55565b946020939093013593505050565b60008060408385031215612fa557600080fd5b8235612fb081612e55565b91506020830135612fc081612e55565b809150509250929050565b60008060008060408587031215612fe157600080fd5b84356001600160401b0380821115612ff857600080fd5b61300488838901612cc7565b9096509450602087013591508082111561301d57600080fd5b5061302a87828801612cc7565b95989497509550505050565b6000806040838503121561304957600080fd5b50508035926020909101359150565b60408152600061306b6040830185612d7a565b8281036020840152612a898185612d7a565b6000806000806040858703121561309357600080fd5b84356001600160401b03808211156130aa57600080fd5b6130b688838901612e9a565b909650945060208701359150808211156130cf57600080fd5b5061302a87828801612e9a565b600081518084526020808501945080840160005b838110156131155781516001600160a01b0316875295820195908201906001016130f0565b509495945050505050565b60008282518085526020808601955060058183821b8501018287016000805b868110156131ac57601f1988850381018c5283518051808752908801908887019080891b88018a01865b8281101561319557858a8303018452613183828651612d7a565b948c0194938c01939150600101613169565b509e8a019e9750505093870193505060010161313f565b50919998505050505050505050565b6080815260006131ce60808301876130dc565b82810360208401526131e081876130dc565b905082810360408401526131f48186613120565b90508281036060840152611cf08185613120565b6001600160a01b03848116825283166020820152606060408201819052600090612a8990830184612da6565b60608152600061324760608301866130dc565b828103602084015261325981866130dc565b9050828103604084015261326d8185613120565b9695505050505050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156132cc57603f198886030184526132ba858351612d7a565b9450928501929085019060010161329e565b5092979650505050505050565b6040815260006132ec6040830185612da6565b8281036020840152612a898185612da6565b60008060008060006060868803121561331657600080fd5b85356001600160401b038082111561332d57600080fd5b61333989838a01612e9a565b9097509550602088013591508082111561335257600080fd5b5061335f88828901612e9a565b96999598509660400135949350505050565b6020815260006107e960208301846130dc565b6000806000806040858703121561339a57600080fd5b84356001600160401b03808211156133b157600080fd5b6130b688838901612cc7565b6000602082840312156133cf57600080fd5b81516107e981612e55565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715613418576134186133da565b604052919050565b60006001600160401b03821115613439576134396133da565b5060051b60200190565b60006001600160401b0382111561345c5761345c6133da565b50601f01601f191660200190565b600061347d61347884613420565b6133f0565b80848252602080830192508560051b85013681111561349b57600080fd5b855b818110156135125780356001600160401b038111156134bc5760008081fd5b870136601f8201126134ce5760008081fd5b80356134dc61347882613443565b81815236868385010111156134f15760008081fd5b8186840187830137600091810186019190915286525093820193820161349d565b50919695505050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60408152600061355b60408301858761351e565b9050826020830152949350505050565b600082601f83011261357c57600080fd5b815161358a61347882613443565b81815284602083860101111561359f57600080fd5b6114e8826020830160208701612d56565b6000602082840312156135c257600080fd5b81516001600160401b038111156135d857600080fd5b6114e88482850161356b565b60008383855260208086019550808560051b8301018460005b87811015612df157848303601f19018952813536889003601e1901811261362357600080fd5b870184810190356001600160401b0381111561363e57600080fd5b80360382131561364d57600080fd5b61365885828461351e565b9a86019a94505050908301906001016135fd565b6020815260006107e66020830184866135e4565b60006020828403121561369257600080fd5b5051919050565b6000602082840312156136ab57600080fd5b815180151581146107e957600080fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e198436030181126136e857600080fd5b8301803591506001600160401b0382111561370257600080fd5b602001915036819003821315610f9057600080fd5b8183823760009101908152919050565b6000808335601e1984360301811261373e57600080fd5b8301803591506001600160401b0382111561375857600080fd5b6020019150600581901b3603821315610f9057600080fd5b600181811c9082168061378457607f821691505b6020821081036137a457634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115610bf057600081815260208120601f850160051c810160208610156137d15750805b601f850160051c820191505b818110156137f0578281556001016137dd565b505050505050565b6001600160401b0383111561380f5761380f6133da565b6138238361381d8354613770565b836137aa565b6000601f841160018114613857576000851561383f5750838201355b600019600387901b1c1916600186901b178355610e4a565b600083815260209020601f19861690835b828110156138885786850135825560209485019460019092019101613868565b50868210156138a55760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b634e487b7160e01b600052601160045260246000fd5b6000600182016138df576138df6138b7565b5060010190565b6020815260006107e660208301848661351e565b6000806040838503121561390d57600080fd5b82516001600160401b038082111561392457600080fd5b6139308683870161356b565b9350602085015191508082111561394657600080fd5b506139538582860161356b565b9150509250929050565b80820180821115610632576106326138b7565b60008a51613982818460208f01612d56565b8a5190830190613996818360208f01612d56565b8a519101906139a9818360208e01612d56565b0187898237600090880190815286516139c6818360208b01612d56565b0184868237600090850190815283516139e3818360208801612d56565b019b9a5050505050505050505050565b60008251613a05818460208701612d56565b9190910192915050565b60008751613a21818460208c01612d56565b875190830190613a35818360208c01612d56565b8751910190613a48818360208b01612d56565b018486823760009085019081528351613a65818360208801612d56565b0198975050505050505050565b60008451613a84818460208901612d56565b845190830190613a98818360208901612d56565b8451910190613aab818360208801612d56565b0195945050505050565b6040808252810183905260006001600160fb1b03841115613ad557600080fd5b8360051b808660608501376020830193909352500160600192915050565b600082601f830112613b0457600080fd5b81516020613b1461347883613420565b82815260059290921b84018101918181019086841115613b3357600080fd5b8286015b84811015611d7e5780516001600160401b03811115613b565760008081fd5b613b648986838b010161356b565b845250918301918301613b37565b60008060408385031215613b8557600080fd5b82516001600160401b0380821115613b9c57600080fd5b613ba886838701613af3565b93506020850151915080821115613bbe57600080fd5b5061395385828601613af3565b604081526000613bde6040830185612da6565b90508260208301529392505050565b600060208284031215613bff57600080fd5b81516001600160401b03811115613c1557600080fd5b6114e884828501613af3565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60408152600061355b6040830185876135e456fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a","storage":{}},"0xc2110388dd54228ae0a834119457ede938bf0b57":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061021e5760003560e01c80638da5cb5b11610123578063acf1a841116100ab578063d547741f1161006f578063d547741f14610682578063f14fcbc8146106a2578063f23a6e61146106c2578063f2fde38b146106e2578063ffa1ad741461070257600080fd5b8063acf1a841146105e0578063bc197c8114610600578063c0c53b8b14610620578063cf01585314610640578063d53913931461066057600080fd5b8063a0e3aef1116100f2578063a0e3aef114610534578063a217fddf14610554578063a3f4df7e14610569578063a4247400146105a0578063aa271e1a146105c057600080fd5b80638da5cb5b146104c157806391d14854146104df578063983b2d56146104ff578063986502751461051f57600080fd5b80635fc1964f116101a65780636ccbae5f116101755780636ccbae5f14610439578063715018a61461045957806371e2a6571461046e57806381c81d351461048e57806383e7f6ff146104a157600080fd5b80635fc1964f146103ae578063634486da146103ce5780636352211e146103e15780636a8be89e1461041957600080fd5b80632f2ff15d116101ed5780632f2ff15d146103035780633092afd51461032557806336568abe14610345578063423f6cef14610365578063572b6c051461038557600080fd5b806301ffc9a71461022a578063150b7a021461025f5780631bf7e13e14610298578063248a9ca3146102c557600080fd5b3661022557005b600080fd5b34801561023657600080fd5b5061024a6102453660046125f2565b610733565b60405190151581526020015b60405180910390f35b34801561026b57600080fd5b5061027f61027a366004612672565b610779565b6040516001600160e01b03199091168152602001610256565b3480156102a457600080fd5b506102b86102b33660046126e4565b6108cb565b60405161025691906127a4565b3480156102d157600080fd5b506102f56102e03660046127b7565b600090815260fb602052604090206001015490565b604051908152602001610256565b34801561030f57600080fd5b5061032361031e3660046127d0565b610997565b005b34801561033157600080fd5b50610323610340366004612800565b6109c1565b34801561035157600080fd5b506103236103603660046127d0565b6109d5565b34801561037157600080fd5b5061032361038036600461281d565b610a68565b34801561039157600080fd5b5061024a6103a0366004612800565b6001600160a01b0316301490565b3480156103ba57600080fd5b506103236103c936600461288f565b610bd9565b6103236103dc366004612800565b610c21565b3480156103ed57600080fd5b506104016103fc3660046127b7565b610ce4565b6040516001600160a01b039091168152602001610256565b34801561042557600080fd5b50610323610434366004612800565b610cef565b34801561044557600080fd5b506102f56104543660046127b7565b610d38565b34801561046557600080fd5b50610323610d7e565b34801561047a57600080fd5b5061032361048936600461288f565b610d92565b61032361049c366004612800565b610dda565b3480156104ad57600080fd5b506102f56104bc366004612934565b610e57565b3480156104cd57600080fd5b506097546001600160a01b0316610401565b3480156104eb57600080fd5b5061024a6104fa3660046127d0565b610efa565b34801561050b57600080fd5b5061032361051a366004612800565b610f25565b34801561052b57600080fd5b50610323610f36565b34801561054057600080fd5b506102f561054f366004612a5c565b610f50565b34801561056057600080fd5b506102f5600081565b34801561057557600080fd5b506102b86040518060400160405280600b81526020016a454e5320437573746f647960a81b81525081565b3480156105ac57600080fd5b5061024a6105bb3660046126e4565b610ffc565b3480156105cc57600080fd5b5061024a6105db366004612800565b61104f565b3480156105ec57600080fd5b506103236105fb366004612934565b611069565b34801561060c57600080fd5b5061027f61061b366004612b35565b611222565b34801561062c57600080fd5b5061032361063b366004612bf3565b6112db565b34801561064c57600080fd5b5061032361065b366004612c3e565b611485565b34801561066c57600080fd5b506102f56000805160206133f583398151915281565b34801561068e57600080fd5b5061032361069d3660046127d0565b611592565b3480156106ae57600080fd5b506103236106bd3660046127b7565b6115b7565b3480156106ce57600080fd5b5061027f6106dd366004612d20565b61162b565b3480156106ee57600080fd5b506103236106fd366004612800565b6116bc565b34801561070e57600080fd5b506102b860405180604001604052806005815260200164302e312e3360d81b81525081565b60006001600160e01b03198216630a85bd0160e11b148061076457506001600160e01b03198216630271189760e51b145b806107735750610773826116d8565b92915050565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004546000906001600160a01b0316806107b061170d565b6001600160a01b0316036108a957600080806107ce86880188612d9b565b9250925092506107dd8361171c565b6001600160a01b03841663b88d4fde30600080516020613415833981519152546040516001600160a01b03909116908c9061082390879030906000908b90602001612dfc565b6040516020818303038152906040526040518563ffffffff1660e01b81526004016108519493929190612e3c565b600060405180830381600087803b15801561086b57600080fd5b505af115801561087f573d6000803e3d6000fd5b5050505061089561088f8261174e565b846117d3565b50630a85bd0160e11b93506108c292505050565b6040516344e7d94960e01b815260040160405180910390fd5b95945050505050565b606060005a90506108dd858585610ffc565b6108fa57604051638baa579f60e01b815260040160405180910390fd5b61098c61090a6020870187612800565b3060408801358461091e60608b018b612e6f565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061185e92505050565b9150505b9392505050565b600082815260fb60205260409020600101546109b28161193f565b6109bc8383611950565b505050565b6109c96119d7565b6109d281611a50565b50565b6109dd61170d565b6001600160a01b0316816001600160a01b031614610a5a5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b610a648282611a68565b5050565b80610a7161170d565b6001600160a01b0316610a8382611aed565b6001600160a01b031614610ac55780610a9a61170d565b604051637ea58b1160e01b815260048101929092526001600160a01b03166024820152604401610a51565b610ace82611c03565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052600090610b22906060015b6040516020818303038152906040528051906020012090565b80546001600160a01b0319166001600160a01b0392909216919091179055600060008051602061341583398151915254604051637921219560e11b81523060048201526001600160a01b038681166024830152604482018690526001606483015260a06084830152600060a48301529091169150819063f242432a9060c401600060405180830381600087803b158015610bbb57600080fd5b505af1158015610bcf573d6000803e3d6000fd5b5050505050505050565b610be16119d7565b60005b8151811015610a6457610c0f828281518110610c0257610c02612eb5565b6020026020010151611a50565b80610c1981612ee1565b915050610be4565b610c2c6105db61170d565b610c485760405162461bcd60e51b8152600401610a5190612efa565b6001600160a01b038116610c9e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a51565b610ca781611c1c565b610caf610f36565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610a64573d6000803e3d6000fd5b600061077382611aed565b610cf76119d7565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c500480546001600160a01b0319166001600160a01b0392909216919091179055565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a838156020820152908101829052600090610d7790606001610b09565b5492915050565b610d866119d7565b610d906000611c34565b565b610d9a6119d7565b60005b8151811015610a6457610dc8828281518110610dbb57610dbb612eb5565b6020026020010151611c1c565b80610dd281612ee1565b915050610d9d565b610de56105db61170d565b610e015760405162461bcd60e51b8152600401610a5190612efa565b6001600160a01b038116610ca75760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a51565b6000805160206133d5833981519152546040516383e7f6ff60e01b81526000916001600160a01b031690829082906383e7f6ff90610e9d90899089908990600401612f58565b6040805180830381865afa158015610eb9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610edd9190612f7c565b60208101518151919250610ef091612fca565b9695505050505050565b600091825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610f2d6119d7565b6109d281611c1c565b610d906000805160206133f583398151915261036061170d565b6000805160206133d5833981519152546000906001600160a01b0316806365a69dcf8d85610f7e5730610f80565b8d5b8d8d8d8d8d8d8d6040518a63ffffffff1660e01b8152600401610fab9998979695949392919061306e565b602060405180830381865afa158015610fc8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fec91906130de565b9c9b505050505050505050505050565b600061104761100a856130f7565b3085858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611c8692505050565b949350505050565b60006107736000805160206133f583398151915283610efa565b6110746105db61170d565b6110905760405162461bcd60e51b8152600401610a5190612efa565b6002603354036110e25760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a51565b60026033556000805160206133d5833981519152546040516383e7f6ff60e01b81526001600160a01b039091169060009082906383e7f6ff9061112d90889088908890600401612f58565b6040805180830381865afa158015611149573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061116d9190612f7c565b6020810151815191925061118091612fca565b4710156111a05760405163050205f960e01b815260040160405180910390fd5b816001600160a01b031663acf1a841826020015183600001516111c39190612fca565b8787876040518563ffffffff1660e01b81526004016111e493929190612f58565b6000604051808303818588803b1580156111fd57600080fd5b505af1158015611211573d6000803e3d6000fd5b505060016033555050505050505050565b6000600080516020613415833981519152546001600160a01b031661124561170d565b6001600160a01b03161461126c576040516344e7d94960e01b815260040160405180910390fd5b600061127a83850185612800565b90506112858161171c565b60005b878110156112c4576112b28989838181106112a5576112a5612eb5565b90506020020135836117d3565b806112bc81612ee1565b915050611288565b5063bc197c8160e01b9a9950505050505050505050565b600054610100900460ff16158080156112fb5750600054600160ff909116105b806113155750303b158015611315575060005460ff166001145b6113785760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610a51565b6000805460ff19166001179055801561139b576000805461ff0019166101001790555b6000805160206133d583398151915280546001600160a01b038087166001600160a01b03199283161790925560008051602061341583398151915280548684169083161790557ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004805492851692909116919091179055611419611dc5565b611421611df3565b611429611df3565b611431611e1a565b611439611e51565b801561147f576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6114906105db61170d565b6114ac5760405162461bcd60e51b8152600401610a5190612efa565b6002603354036114fe5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a51565b600260338190555060006115478c8c8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061174e92505050565b905061155281611c03565b6115708c8c846115625730611564565b8c5b8c8c8c8c8c8c8c611e8a565b8161157f5761157f818b6117d3565b5050600160335550505050505050505050565b600082815260fb60205260409020600101546115ad8161193f565b6109bc8383611a68565b60006000805160206133d583398151915254604051631e29f97960e31b8152600481018490526001600160a01b039091169150819063f14fcbc890602401600060405180830381600087803b15801561160f57600080fd5b505af1158015611623573d6000803e3d6000fd5b505050505050565b6000600080516020613415833981519152546001600160a01b031661164e61170d565b6001600160a01b031614611675576040516344e7d94960e01b815260040160405180910390fd5b6001600160a01b038616156116a957600061169283850185612800565b905061169d8161171c565b6116a786826117d3565b505b5063f23a6e6160e01b9695505050505050565b6116c46119d7565b6116cd81611fd5565b6109d260008261204b565b60006001600160e01b03198216637965db0b60e01b148061077357506301ffc9a760e01b6001600160e01b0319831614610773565b6000611717612055565b905090565b6001600160a01b0381166109d25760405163b20f76e360e01b81526001600160a01b0382166004820152602401610a51565b60007f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae60001b826040516020016117859190613195565b604051602081830303815290604052805190602001206040516020016117b5929190918252602082015260400190565b60408051601f19818403018152919052805160209091012092915050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052819061181190606001610b09565b80546001600160a01b0319166001600160a01b039283161790556040519082169083907f45aa97e368889fb3527c1db60c59c2ae91e82f21778613449e46d4208c1c4b1290600090a35050565b606061186985612073565b600080876001600160a01b0316866118838b8a89896120d9565b6040516118909190613195565b60006040518083038160008787f1925050503d80600081146118ce576040519150601f19603f3d011682016040523d82523d6000602084013e6118d3565b606091505b5090925090506118e4603f876131b1565b5a116118f2576118f26131d3565b61193282826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c4544000000000000815250612109565b9998505050505050505050565b6109d28161194b61170d565b612142565b61195a8282610efa565b610a6457600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff1916600117905561199361170d565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6119df61170d565b6001600160a01b03166119fa6097546001600160a01b031690565b6001600160a01b031614610d905760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a51565b6109d26000805160206133f583398151915282611592565b611a728282610efa565b15610a6457600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff19169055611aa961170d565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101829052600090611b2c90606001610b09565b546001600160a01b0316905080611b595760405163124bad6360e31b815260048101839052602401610a51565b30600080516020613415833981519152546040516331a9108f60e11b8152600481018590526001600160a01b0390911690636352211e90602401602060405180830381865afa158015611bb0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bd491906131e9565b6001600160a01b031614611bfe576040516303b673fd60e21b815260048101839052602401610a51565b919050565b303303611c13576109d2816121a6565b6109d281612073565b6109d26000805160206133f58339815191528261204b565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015611ccd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cf191906130de565b90506000611d9f866060015180519060200120868860200151604051602001611d3f9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b9050818660200151148015610ef057508551610ef0906001600160a01b031682866121d0565b600054610100900460ff16611dec5760405162461bcd60e51b8152600401610a5190613206565b6001603355565b600054610100900460ff16610d905760405162461bcd60e51b8152600401610a5190613206565b600054610100900460ff16611e415760405162461bcd60e51b8152600401610a5190613206565b610d90611e4c61170d565b611c34565b600054610100900460ff16611e785760405162461bcd60e51b8152600401610a5190613206565b610d906000611e8561170d565b61204b565b6000805160206133d5833981519152546040516383e7f6ff60e01b81526001600160a01b039091169060009082906383e7f6ff90611ed0908f908f908e90600401612f58565b6040805180830381865afa158015611eec573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f109190612f7c565b60208101518151919250611f2391612fca565b471015611f435760405163050205f960e01b815260040160405180910390fd5b816001600160a01b03166374694a2b82602001518360000151611f669190612fca565b8e8e8e8e8e8e8e8e8e8e6040518c63ffffffff1660e01b8152600401611f959a99989796959493929190613251565b6000604051808303818588803b158015611fae57600080fd5b505af1158015611fc2573d6000803e3d6000fd5b5050505050505050505050505050505050565b611fdd6119d7565b6001600160a01b0381166120425760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610a51565b6109d281611c34565b610a648282611950565b600030330361206b575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290526000906060016040516020818303038152906040528051906020012090506120c88190565b546120d4906001612fca565b905550565b60608285856040516020016120f0939291906132c3565b6040516020818303038152906040529050949350505050565b60608315612118575081610990565b8251156121285782518084602001fd5b8160405162461bcd60e51b8152600401610a5191906127a4565b61214c8282610efa565b610a6457612164816001600160a01b03166014612312565b61216f836020612312565b604051602001612180929190613302565b60408051601f198184030181529082905262461bcd60e51b8252610a51916004016127a4565b6121ae6124ad565b81146109d257604051635637b6af60e11b815260048101829052602401610a51565b60008060006121df85856124c0565b909250905060008160048111156121f8576121f8613377565b1480156122165750856001600160a01b0316826001600160a01b0316145b1561222657600192505050610990565b600080876001600160a01b0316631626ba7e60e01b888860405160240161224e92919061338d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161228c9190613195565b600060405180830381855afa9150503d80600081146122c7576040519150601f19603f3d011682016040523d82523d6000602084013e6122cc565b606091505b50915091508180156122df575080516020145b801561230657508051630b135d3f60e11b9061230490830160209081019084016130de565b145b98975050505050505050565b606060006123218360026133a6565b61232c906002612fca565b6001600160401b0381111561234357612343612849565b6040519080825280601f01601f19166020018201604052801561236d576020820181803683370190505b509050600360fc1b8160008151811061238857612388612eb5565b60200101906001600160f81b031916908160001a905350600f60fb1b816001815181106123b7576123b7612eb5565b60200101906001600160f81b031916908160001a90535060006123db8460026133a6565b6123e6906001612fca565b90505b600181111561245e576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061241a5761241a612eb5565b1a60f81b82828151811061243057612430612eb5565b60200101906001600160f81b031916908160001a90535060049490941c93612457816133bd565b90506123e9565b5083156109905760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610a51565b60003033036120705750601f1936013590565b60008082516041036124f65760208301516040840151606085015160001a6124ea87828585612505565b945094505050506124fe565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561253c57506000905060036125e9565b8460ff16601b1415801561255457508460ff16601c14155b1561256557506000905060046125e9565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156125b9573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166125e2576000600192509250506125e9565b9150600090505b94509492505050565b60006020828403121561260457600080fd5b81356001600160e01b03198116811461099057600080fd5b6001600160a01b03811681146109d257600080fd5b60008083601f84011261264357600080fd5b5081356001600160401b0381111561265a57600080fd5b6020830191508360208285010111156124fe57600080fd5b60008060008060006080868803121561268a57600080fd5b85356126958161261c565b945060208601356126a58161261c565b93506040860135925060608601356001600160401b038111156126c757600080fd5b6126d388828901612631565b969995985093965092949392505050565b6000806000604084860312156126f957600080fd5b83356001600160401b038082111561271057600080fd5b908501906080828803121561272457600080fd5b9093506020850135908082111561273a57600080fd5b5061274786828701612631565b9497909650939450505050565b60005b8381101561276f578181015183820152602001612757565b50506000910152565b60008151808452612790816020860160208601612754565b601f01601f19169290920160200192915050565b6020815260006109906020830184612778565b6000602082840312156127c957600080fd5b5035919050565b600080604083850312156127e357600080fd5b8235915060208301356127f58161261c565b809150509250929050565b60006020828403121561281257600080fd5b81356109908161261c565b6000806040838503121561283057600080fd5b823561283b8161261c565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561288757612887612849565b604052919050565b600060208083850312156128a257600080fd5b82356001600160401b03808211156128b957600080fd5b818501915085601f8301126128cd57600080fd5b8135818111156128df576128df612849565b8060051b91506128f084830161285f565b818152918301840191848101908884111561290a57600080fd5b938501935b8385101561230657843592506129248361261c565b828252938501939085019061290f565b60008060006040848603121561294957600080fd5b83356001600160401b0381111561295f57600080fd5b61296b86828701612631565b909790965060209590950135949350505050565b60006001600160401b0383111561299857612998612849565b6129ab601f8401601f191660200161285f565b90508281528383830111156129bf57600080fd5b828260208301376000602084830101529392505050565b600082601f8301126129e757600080fd5b6109908383356020850161297f565b60008083601f840112612a0857600080fd5b5081356001600160401b03811115612a1f57600080fd5b6020830191508360208260051b85010111156124fe57600080fd5b80358015158114611bfe57600080fd5b803561ffff81168114611bfe57600080fd5b6000806000806000806000806000806101208b8d031215612a7c57600080fd5b8a356001600160401b0380821115612a9357600080fd5b612a9f8e838f016129d6565b9b5060208d01359150612ab18261261c565b90995060408c0135985060608c0135975060808c013590612ad18261261c565b90965060a08c01359080821115612ae757600080fd5b50612af48d828e016129f6565b9096509450612b07905060c08c01612a3a565b9250612b1560e08c01612a4a565b9150612b246101008c01612a3a565b90509295989b9194979a5092959850565b60008060008060008060008060a0898b031215612b5157600080fd5b8835612b5c8161261c565b97506020890135612b6c8161261c565b965060408901356001600160401b0380821115612b8857600080fd5b612b948c838d016129f6565b909850965060608b0135915080821115612bad57600080fd5b612bb98c838d016129f6565b909650945060808b0135915080821115612bd257600080fd5b50612bdf8b828c01612631565b999c989b5096995094979396929594505050565b600080600060608486031215612c0857600080fd5b8335612c138161261c565b92506020840135612c238161261c565b91506040840135612c338161261c565b809150509250925092565b60008060008060008060008060008060006101208c8e031215612c6057600080fd5b6001600160401b03808d351115612c7657600080fd5b612c838e8e358f01612631565b909c509a50612c9560208e013561261c565b60208d0135995060408d0135985060608d01359750612cb760808e013561261c565b60808d013596508060a08e01351115612ccf57600080fd5b50612ce08d60a08e01358e016129f6565b9095509350612cf160c08d01612a3a565b9250612cff60e08d01612a4a565b9150612d0e6101008d01612a3a565b90509295989b509295989b9093969950565b60008060008060008060a08789031215612d3957600080fd5b8635612d448161261c565b95506020870135612d548161261c565b9450604087013593506060870135925060808701356001600160401b03811115612d7d57600080fd5b612d8989828a01612631565b979a9699509497509295939492505050565b600080600060608486031215612db057600080fd5b8335612dbb8161261c565b92506020840135612dcb8161261c565b915060408401356001600160401b03811115612de657600080fd5b612df2868287016129d6565b9150509250925092565b608081526000612e0f6080830187612778565b6001600160a01b03958616602084015261ffff949094166040830152509216606090920191909152919050565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090610ef090830184612778565b6000808335601e19843603018112612e8657600080fd5b8301803591506001600160401b03821115612ea057600080fd5b6020019150368190038213156124fe57600080fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201612ef357612ef3612ecb565b5060010190565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b604081526000612f6c604083018587612f2f565b9050826020830152949350505050565b600060408284031215612f8e57600080fd5b604051604081018181106001600160401b0382111715612fb057612fb0612849565b604052825181526020928301519281019290925250919050565b8082018082111561077357610773612ecb565b81835260006020808501808196508560051b810191508460005b878110156130615782840389528135601e1988360301811261301857600080fd5b870185810190356001600160401b0381111561303357600080fd5b80360382131561304257600080fd5b61304d868284612f2f565b9a87019a9550505090840190600101612ff7565b5091979650505050505050565b60006101008083526130828184018d612778565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a085015290506130bc818789612fdd565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b6000602082840312156130f057600080fd5b5051919050565b60006080823603121561310957600080fd5b604051608081016001600160401b03828210818311171561312c5761312c612849565b816040528435915061313d8261261c565b8183526020850135602084015260408501356040840152606085013591508082111561316857600080fd5b50830136601f82011261317a57600080fd5b6131893682356020840161297f565b60608301525092915050565b600082516131a7818460208701612754565b9190910192915050565b6000826131ce57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b6000602082840312156131fb57600080fd5b81516109908161261c565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60006101008083526132668184018d8f612f2f565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a085015290506132a0818789612fdd565b94151560c0840152505061ffff9190911660e09091015298975050505050505050565b600084516132d5818460208901612754565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081526000835161333a816017850160208801612754565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835161336b816028840160208801612754565b01602801949350505050565b634e487b7160e01b600052602160045260246000fd5b8281526040602082015260006110476040830184612778565b808202811582820484141761077357610773612ecb565b6000816133cc576133cc612ecb565b50600019019056fe412386de53449251cbf7ce1f4c6a038bf9c0746e62d331b08ef0c3fa7d0ab6729f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a660793a5062d506d35cc8f1beda67ee5028c16bfcd9c923d5bfc439c04bd929b1a164736f6c6343000811000a","storage":{"0x0":"0xff"}},"0xc58206842e4030a3b2cabc78780ae7635173c533":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106102325760003560e01c80637c69eae211610130578063b5466669116100b8578063d284d97a1161007c578063d284d97a14610d4e578063d8d3cc6e14610dbc578063e67ca8a314610e3f578063e985e9c514610e5c578063ebf0c71714610e8a57610232565b8063b5466669146109ce578063b88d4fde14610a51578063c29b52f914610b15578063c87b56dd14610c5e578063ce9fb82b14610c7b57610232565b8063a22cb465116100ff578063a22cb4651461090b578063a7fc7a0714610939578063ab3b87fe1461095f578063b3f9e4cb1461098b578063b429afeb146109a857610232565b80637c69eae21461076457806395d89b41146107e75780639d743989146107ef5780639e5be9a51461087d57610232565b806342842e0e116101be5780635cbe1112116101825780635cbe11121461061d5780636352211e1461069257806366ac3b68146106af57806368b62d32146106b757806370a082311461073e57610232565b806342842e0e146104ed57806342966c6814610523578063430c208114610540578063538361a71461056c57806357aac5741461058f57610232565b8063081812fc11610205578063081812fc146103fa578063095ea7b3146104335780632392c1891461045f57806323b872dd1461048b5780632525d06a146104c157610232565b806301ffc9a71461023757806302759c37146102725780630467e014146102aa57806306fdde031461037d575b600080fd5b61025e6004803603602081101561024d57600080fd5b50356001600160e01b031916610e92565b604080519115158252519081900360200190f35b6102a86004803603606081101561028857600080fd5b506001600160a01b03813581169160208101359091169060400135610eb1565b005b6102a8600480360360808110156102c057600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156102ef57600080fd5b82018360208201111561030157600080fd5b803590602001918460018302840111600160201b8311171561032257600080fd5b919390929091602081019035600160201b81111561033f57600080fd5b82018360208201111561035157600080fd5b803590602001918460018302840111600160201b8311171561037257600080fd5b509092509050610ed3565b610385610f62565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103bf5781810151838201526020016103a7565b50505050905090810190601f1680156103ec5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6104176004803603602081101561041057600080fd5b5035610f84565b604080516001600160a01b039092168252519081900360200190f35b6102a86004803603604081101561044957600080fd5b506001600160a01b038135169060200135610fe6565b6102a86004803603604081101561047557600080fd5b506001600160a01b0381351690602001356110f7565b6102a8600480360360608110156104a157600080fd5b506001600160a01b03813581169160208101359091169060400135611115565b6102a8600480360360408110156104d757600080fd5b506001600160a01b03813516906020013561115a565b6102a86004803603606081101561050357600080fd5b506001600160a01b0381358116916020810135909116906040013561117a565b6102a86004803603602081101561053957600080fd5b5035611195565b61025e6004803603604081101561055657600080fd5b506001600160a01b0381351690602001356111e6565b6102a86004803603604081101561058257600080fd5b50803590602001356111f9565b6102a8600480360360808110156105a557600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156105df57600080fd5b8201836020820111156105f157600080fd5b803590602001918460018302840111600160201b8311171561061257600080fd5b50909250905061124f565b6102a86004803603604081101561063357600080fd5b81359190810190604081016020820135600160201b81111561065457600080fd5b82018360208201111561066657600080fd5b803590602001918460018302840111600160201b8311171561068757600080fd5b5090925090506112be565b610417600480360360208110156106a857600080fd5b5035611320565b6102a861137a565b61072c600480360360408110156106cd57600080fd5b81359190810190604081016020820135600160201b8111156106ee57600080fd5b82018360208201111561070057600080fd5b803590602001918460018302840111600160201b8311171561072157600080fd5b509092509050611385565b60408051918252519081900360200190f35b61072c6004803603602081101561075457600080fd5b50356001600160a01b03166113cf565b6102a86004803603606081101561077a57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156107a957600080fd5b8201836020820111156107bb57600080fd5b803590602001918460018302840111600160201b831117156107dc57600080fd5b509092509050611437565b61038561149a565b6102a86004803603608081101561080557600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561083f57600080fd5b82018360208201111561085157600080fd5b803590602001918460018302840111600160201b8311171561087257600080fd5b5090925090506114b6565b6102a86004803603608081101561089357600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156108cd57600080fd5b8201836020820111156108df57600080fd5b803590602001918460018302840111600160201b8311171561090057600080fd5b509092509050611506565b6102a86004803603604081101561092157600080fd5b506001600160a01b0381351690602001351515611564565b6102a86004803603602081101561094f57600080fd5b50356001600160a01b0316611630565b6102a86004803603604081101561097557600080fd5b506001600160a01b03813516906020013561164b565b610417600480360360208110156109a157600080fd5b5035611672565b61025e600480360360208110156109be57600080fd5b50356001600160a01b0316611694565b6102a8600480360360608110156109e457600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610a1357600080fd5b820183602082011115610a2557600080fd5b803590602001918460018302840111600160201b83111715610a4657600080fd5b5090925090506116a7565b6102a860048036036080811015610a6757600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b811115610aa157600080fd5b820183602082011115610ab357600080fd5b803590602001918460018302840111600160201b83111715610ad457600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506116fa945050505050565b6102a8600480360360a0811015610b2b57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b811115610b6557600080fd5b820183602082011115610b7757600080fd5b803590602001918460018302840111600160201b83111715610b9857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b811115610bea57600080fd5b820183602082011115610bfc57600080fd5b803590602001918460018302840111600160201b83111715610c1d57600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061174c945050505050565b61038560048036036020811015610c7457600080fd5b5035611797565b6102a860048036036080811015610c9157600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610cc057600080fd5b820183602082011115610cd257600080fd5b803590602001918460018302840111600160201b83111715610cf357600080fd5b919390929091602081019035600160201b811115610d1057600080fd5b820183602082011115610d2257600080fd5b803590602001918460018302840111600160201b83111715610d4357600080fd5b509092509050611892565b6102a860048036036020811015610d6457600080fd5b810190602081018135600160201b811115610d7e57600080fd5b820183602082011115610d9057600080fd5b803590602001918460018302840111600160201b83111715610db157600080fd5b50909250905061191b565b6102a860048036036060811015610dd257600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610e0157600080fd5b820183602082011115610e1357600080fd5b803590602001918460018302840111600160201b83111715610e3457600080fd5b50909250905061199e565b6102a860048036036020811015610e5557600080fd5b50356119f3565b61025e60048036036040811015610e7257600080fd5b506001600160a01b0381358116916020013516611a05565b61072c611a33565b6001600160e01b03191660009081526020819052604090205460ff1690565b610eba33611694565b610ec357600080fd5b610ece838383611a57565b505050565b610edc33611694565b610ee557600080fd5b610f5a868686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8a018190048102820181019092528881529250889150879081908401838280828437600092019190915250611a9f92505050565b505050505050565b6040805180820190915260078152662e63727970746f60c81b60208201525b90565b6000610f8f82611ac9565b610fca5760405162461bcd60e51b815260040180806020018281038252602c815260200180612848602c913960400191505060405180910390fd5b506000908152600360205260409020546001600160a01b031690565b6000610ff182611320565b9050806001600160a01b0316836001600160a01b031614156110445760405162461bcd60e51b81526004018080602001828103825260218152602001806128bf6021913960400191505060405180910390fd5b336001600160a01b038216148061106057506110608133611a05565b61109b5760405162461bcd60e51b815260040180806020018281038252603881526020018061279c6038913960400191505060405180910390fd5b60008281526003602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b806111023382611ae6565b61110b57600080fd5b610ece8383611b82565b61111f3382611ae6565b610ec35760405162461bcd60e51b81526004018080602001828103825260318152602001806128e06031913960400191505060405180910390fd5b61116333611694565b61116c57600080fd5b6111768282611b82565b5050565b610ece838383604051806020016040528060008152506116fa565b61119f3382611ae6565b6111da5760405162461bcd60e51b81526004018080602001828103825260308152602001806129366030913960400191505060405180910390fd5b6111e381611bf8565b50565b60006111f28383611ae6565b9392505050565b6000828152600860205260409020546001600160a01b0316331461121c57600080fd5b6040518290829033907ff10fc780c78f994a214c79a2ae8d8b7bfe7cc3f0f935a8f05a29525e71d7f12790600090a45050565b61125833611694565b61126157600080fd5b61126c858585611a57565b6112ae85858585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611c7992505050565b6112b757600080fd5b5050505050565b826112c93382611ae6565b6112d257600080fd5b61131a6113158585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b611bf8565b50505050565b6000818152600260205260408120546001600160a01b0316806113745760405162461bcd60e51b81526004018080602001828103825260298152602001806127fe6029913960400191505060405180910390fd5b92915050565b61138333611e64565b565b60006113c78484848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b949350505050565b60006001600160a01b0382166114165760405162461bcd60e51b815260040180806020018281038252602a8152602001806127d4602a913960400191505060405180910390fd5b6001600160a01b038216600090815260046020526040902061137490611e75565b826114423382611ae6565b61144b57600080fd5b6112b7858585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250611a9f915050565b604080518082019091526002815261155160f21b602082015290565b6112b785858585858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201829052506040805160208101909152908152925061174c915050565b826115113382611ae6565b61151a57600080fd5b610f5a868661155f8787878080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b611a57565b6001600160a01b0382163314156115c2576040805162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604482015290519081900360640190fd5b3360008181526005602090815260408083206001600160a01b03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b61163933611694565b61164257600080fd5b6111e381611e79565b806116563382611ae6565b61165f57600080fd5b610ece61166b83611320565b8484611e8a565b6000818152600860205260408120546001600160a01b03168061137457600080fd5b600061137460018363ffffffff611fce16565b6116b033611694565b6116b957600080fd5b61131a848484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061203592505050565b611705848484611115565b61171184848484611c79565b61131a5760405162461bcd60e51b815260040180806020018281038252603281526020018061271a6032913960400191505060405180910390fd5b826117573382611ae6565b61176057600080fd5b600061176c8585611dac565b9050611779878783611a57565b61178587878386611c79565b61178e57600080fd5b50505050505050565b60606117a282611ac9565b6117ab57600080fd5b600760066000848152602001908152602001600020604051602001808380546001816001161561010002031660029004801561181e5780601f106117fc57610100808354040283529182019161181e565b820191906000526020600020905b81548152906001019060200180831161180a575b5050828054600181600116156101000203166002900480156118775780601f10611855576101008083540402835291820191611877565b820191906000526020600020905b815481529060010190602001808311611863575b505060408051601f1981840301815291905295945050505050565b8461189d3382611ae6565b6118a657600080fd5b61178e878787878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b018190048102820181019092528981529250899150889081908401838280828437600092019190915250611a9f92505050565b61192433611694565b61192d57600080fd5b611939600783836125cf565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b828260405180806020018281038252848482818152602001925080828437600083820152604051601f909101601f19169092018290039550909350505050a15050565b826119a93382611ae6565b6119b257600080fd5b6112b7858585858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061203592505050565b6119fc33611694565b6111da57600080fd5b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b7f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f90565b611a62838383611e8a565b6000818152600860205260409020546001600160a01b031615610ece57600090815260086020526040902080546001600160a01b03191690555050565b611aaa848484612035565b611ac0600085611aba8686611dac565b84611c79565b61131a57600080fd5b6000908152600260205260409020546001600160a01b0316151590565b6000611af182611ac9565b611b2c5760405162461bcd60e51b815260040180806020018281038252602c815260200180612770602c913960400191505060405180910390fd5b6000611b3783611320565b9050806001600160a01b0316846001600160a01b03161480611b725750836001600160a01b0316611b6784610f84565b6001600160a01b0316145b806113c757506113c78185611a05565b611b8b81611ac9565b611b9457600080fd5b6040516001600160a01b0383169082907fb1b34e6d89e1c584527d447f4b29ffad55635a37edeeb564939a6483401b31a590600090a3600090815260086020526040902080546001600160a01b0319166001600160a01b0392909216919091179055565b611c018161220f565b6000818152600860205260409020546001600160a01b031615611c3b57600081815260086020526040902080546001600160a01b03191690555b60008181526006602052604090205460026000196101006001841615020190911604156111e35760008181526006602052604081206111e39161264d565b6000611c8d846001600160a01b0316612221565b611c99575060016113c7565b604051630a85bd0160e11b815233600482018181526001600160a01b03888116602485015260448401879052608060648501908152865160848601528651600095928a169463150b7a029490938c938b938b939260a4019060208501908083838e5b83811015611d13578181015183820152602001611cfb565b50505050905090810190601f168015611d405780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015611d6257600080fd5b505af1158015611d76573d6000803e3d6000fd5b505050506040513d6020811015611d8c57600080fd5b50516001600160e01b031916630a85bd0160e11b14915050949350505050565b6000815160001415611dbd57600080fd5b82826040516020018082805190602001908083835b60208310611df15780518252601f199092019160209182019101611dd2565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040528051906020012060405160200180838152602001828152602001925050506040516020818303038152906040528051906020012060001c905092915050565b6111e360018263ffffffff61222716565b5490565b6111e360018263ffffffff61228e16565b826001600160a01b0316611e9d82611320565b6001600160a01b031614611ee25760405162461bcd60e51b81526004018080602001828103825260298152602001806128966029913960400191505060405180910390fd5b6001600160a01b038216611f275760405162461bcd60e51b815260040180806020018281038252602481526020018061274c6024913960400191505060405180910390fd5b611f308161230f565b6001600160a01b0383166000908152600460205260409020611f519061234a565b6001600160a01b0382166000908152600460205260409020611f7290612361565b60008181526002602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60006001600160a01b0382166120155760405162461bcd60e51b81526004018080602001828103825260228152602001806128746022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b60006120418383611dac565b905061204d848261236a565b815161205857600080fd5b61206181611ac9565b61206a57600080fd5b606082600660008681526020019081526020016000206040516020018083805190602001908083835b602083106120b25780518252601f199092019160209182019101612093565b6001836020036101000a03801982511681845116808217855250505050505090500180601760f91b815250600101828054600181600116156101000203166002900480156121375780601f10612115576101008083540402835291820191612137565b820191906000526020600020905b815481529060010190602001808311612123575b505060408051601f19818403018152918152600087815260066020908152919020825192965061216d9550935085019150612691565b50817fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952826040518080602001828103825283818151815260200191508051906020019080838360005b838110156121ce5781810151838201526020016121b6565b50505050905090810190601f1680156121fb5780820380516001836020036101000a031916815260200191505b509250505060405180910390a25050505050565b6111e361221b82611320565b8261249b565b3b151590565b6122318282611fce565b61226c5760405162461bcd60e51b81526004018080602001828103825260218152602001806128276021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff19169055565b6122988282611fce565b156122ea576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b6000818152600360205260409020546001600160a01b0316156111e357600090815260036020526040902080546001600160a01b0319169055565b805461235d90600163ffffffff61257216565b9055565b80546001019055565b6001600160a01b0382166123c5576040805162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f2061646472657373604482015290519081900360640190fd5b6123ce81611ac9565b15612420576040805162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000604482015290519081900360640190fd5b600081815260026020908152604080832080546001600160a01b0319166001600160a01b03871690811790915583526004909152902061245f90612361565b60405181906001600160a01b038416906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b816001600160a01b03166124ae82611320565b6001600160a01b0316146124f35760405162461bcd60e51b81526004018080602001828103825260258152602001806129116025913960400191505060405180910390fd5b6124fc8161230f565b6001600160a01b038216600090815260046020526040902061251d9061234a565b60008181526002602052604080822080546001600160a01b0319169055518291906001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6000828211156125c9576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106126105782800160ff1982351617855561263d565b8280016001018555821561263d579182015b8281111561263d578235825591602001919060010190612622565b506126499291506126ff565b5090565b50805460018160011615610100020316600290046000825580601f1061267357506111e3565b601f0160209004906000526020600020908101906111e391906126ff565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106126d257805160ff191683800117855561263d565b8280016001018555821561263d579182015b8281111561263d5782518255916020019190600101906126e4565b610f8191905b80821115612649576000815560010161270556fe4552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c654552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e526f6c65733a206163636f756e7420697320746865207a65726f20616464726573734552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f7665644552433732313a206275726e206f6620746f6b656e2074686174206973206e6f74206f776e4552433732314275726e61626c653a2063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564a265627a7a72315820fb6a1b26cc352dbb05e6627fd530bbb44114ac3a349f30d1f071136c656d20dc64736f6c634300050c0032","storage":{"0x7":"0x68747470733a2f2f6578616d706c652e636f6d2f000000000000000000000028","0xbdf39e9e65b2355b1b0b06df799c09159f0ab90f06a9bb2153f5de7d9b0ea81":"0x1","0x1a306d3e9bf29128dee78d8d16c9f378a11bbdf917a9caf986fc6e60846e37e7":"0x63727970746f000000000000000000000000000000000000000000000000000c","0x42c63635470f1fb1d6d4b6441c413cb435b1ebb6fedd1896dd5e25d1399147dd":"0x1","0x605d7a0bb2b20c4004d356eb969ff104dcca62360aa356247072f5e0df6472e3":"0xdead","0x67be87c3ff9960ca1e9cfac5cab2ff4747269cf9ed20c9b7306235ac35a491c5":"0x1","0x70f464f95f9ab7aba03264fd4cac1711d774d3703ce74217180264d4efc2105f":"0x1","0x76a72f26a108e6f3f687141f5f42d21d65857c03cb1b01aa1284f9a9ccd085da":"0x1","0x9562381dfbc2d8b8b66e765249f330164b73e329e5f01670660643571d1974df":"0x1","0x9f23d2403fb64167582d316b1bc5b35a6ed48524341ab24947c71df77304b29e":"0x1","0xf7815fccbf112960a73756e185887fedcb9fc64ca0a16cc5923b7960ed780800":"0x1"}},"0xc965345edac823d56812cd20a10316233916a605":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101c6575f3560e01c806395d89b41116100fe578063c87b56dd1161009e578063e985e9c51161006e578063e985e9c5146103d4578063f2fde38b1461040f578063f6a74ed714610422578063fca247ac14610435575f80fd5b8063c87b56dd14610377578063d6e4fa861461038a578063da8c229e146103a9578063ddf7fcb0146103cb575f80fd5b8063a7fc7a07116100d9578063a7fc7a0714610334578063b88d4fde14610347578063c1a287e21461035a578063c475abff14610364575f80fd5b806395d89b411461030657806396e494e81461030e578063a22cb46514610321575f80fd5b80633f15457f116101695780636352211e116101445780636352211e146102c757806370a08231146102da578063715018a6146102ed5780638da5cb5b146102f5575f80fd5b80633f15457f1461028e57806342842e0e146102a15780634e543b26146102b4575f80fd5b8063095ea7b3116101a4578063095ea7b3146102325780630e297b451461024757806323b872dd1461026857806328ed4f6c1461027b575f80fd5b806301ffc9a7146101ca57806306fdde03146101f2578063081812fc14610207575b5f80fd5b6101dd6101d83660046117dd565b610448565b60405190151581526020015b60405180910390f35b6101fa610499565b6040516101e99190611845565b61021a610215366004611857565b610528565b6040516001600160a01b0390911681526020016101e9565b610245610240366004611882565b61054d565b005b61025a6102553660046118ac565b610666565b6040519081526020016101e9565b6102456102763660046118e1565b61067b565b61024561028936600461190e565b6106ac565b60085461021a906001600160a01b031681565b6102456102af3660046118e1565b6107be565b6102456102c236600461193c565b6107d8565b61021a6102d5366004611857565b610848565b61025a6102e836600461193c565b610869565b6102456108ed565b6006546001600160a01b031661021a565b6101fa610900565b6101dd61031c366004611857565b61090f565b61024561032f366004611957565b610934565b61024561034236600461193c565b610943565b61024561035536600461199b565b610996565b61025a6276a70081565b61025a610372366004611a74565b6109ce565b6101fa610385366004611857565b610b52565b61025a610398366004611857565b5f9081526007602052604090205490565b6101dd6103b736600461193c565b600a6020525f908152604090205460ff1681565b61025a60095481565b6101dd6103e2366004611a94565b6001600160a01b039182165f90815260056020908152604080832093909416825291909152205460ff1690565b61024561041d36600461193c565b610bc2565b61024561043036600461193c565b610c3b565b61025a6104433660046118ac565b610c8b565b5f6001600160e01b031982166301ffc9a760e01b148061047857506001600160e01b031982166380ac58cd60e01b145b8061049357506001600160e01b03198216630a3b53db60e21b145b92915050565b60605f80546104a790611ac0565b80601f01602080910402602001604051908101604052809291908181526020018280546104d390611ac0565b801561051e5780601f106104f55761010080835404028352916020019161051e565b820191905f5260205f20905b81548152906001019060200180831161050157829003601f168201915b5050505050905090565b5f61053282610c99565b505f908152600460205260409020546001600160a01b031690565b5f61055782610cf7565b9050806001600160a01b0316836001600160a01b0316036105c95760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084015b60405180910390fd5b336001600160a01b03821614806105e557506105e581336103e2565b6106575760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016105c0565b6106618383610d56565b505050565b5f6106738484845f610dc3565b949350505050565b6106853382610fc7565b6106a15760405162461bcd60e51b81526004016105c090611af8565b610661838383611040565b6008546009546040516302571be360e01b8152600481019190915230916001600160a01b0316906302571be390602401602060405180830381865afa1580156106f7573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061071b9190611b45565b6001600160a01b03161461072d575f80fd5b6107373383610fc7565b61073f575f80fd5b6008546009546040516306ab592360e01b81526004810191909152602481018490526001600160a01b038381166044830152909116906306ab5923906064016020604051808303815f875af115801561079a573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106619190611b60565b61066183838360405180602001604052805f815250610996565b6107e06111a2565b600854600954604051630c4b7b8560e11b815260048101919091526001600160a01b03838116602483015290911690631896f70a906044015f604051808303815f87803b15801561082f575f80fd5b505af1158015610841573d5f803e3d5ffd5b5050505050565b5f818152600760205260408120544210610860575f80fd5b61049382610cf7565b5f6001600160a01b0382166108d25760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b60648201526084016105c0565b506001600160a01b03165f9081526003602052604090205490565b6108f56111a2565b6108fe5f6111fc565b565b6060600180546104a790611ac0565b5f81815260076020526040812054429061092d906276a70090611b77565b1092915050565b61093f33838361124d565b5050565b61094b6111a2565b6001600160a01b0381165f818152600a6020526040808220805460ff19166001179055517f0a8bb31534c0ed46f380cb867bd5c803a189ced9a764e30b3a4991a9901d74749190a250565b6109a03383610fc7565b6109bc5760405162461bcd60e51b81526004016105c090611af8565b6109c88484848461131a565b50505050565b6008546009546040516302571be360e01b815260048101919091525f9130916001600160a01b03909116906302571be390602401602060405180830381865afa158015610a1d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a419190611b45565b6001600160a01b031614610a53575f80fd5b335f908152600a602052604090205460ff16610a6d575f80fd5b5f838152600760205260409020544290610a8b906276a70090611b77565b1015610a95575f80fd5b610aa26276a70083611b77565b5f848152600760205260409020546276a70090610ac0908590611b77565b610aca9190611b77565b11610ad3575f80fd5b5f8381526007602052604081208054849290610af0908490611b77565b90915550505f838152600760205260409081902054905184917f9b87a00e30f1ac65d898f070f8a3488fe60517182d0a2098e1b4b93a54aa9bd691610b3791815260200190565b60405180910390a250505f9081526007602052604090205490565b6060610b5d82610c99565b5f610b7260408051602081019091525f815290565b90505f815111610b905760405180602001604052805f815250610bbb565b80610b9a8461134d565b604051602001610bab929190611b96565b6040516020818303038152906040525b9392505050565b610bca6111a2565b6001600160a01b038116610c2f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016105c0565b610c38816111fc565b50565b610c436111a2565b6001600160a01b0381165f818152600a6020526040808220805460ff19169055517f33d83959be2573f5453b12eb9d43b3499bc57d96bd2f067ba44803c859e811139190a250565b5f6106738484846001610dc3565b5f818152600260205260409020546001600160a01b0316610c385760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105c0565b5f818152600260205260408120546001600160a01b0316806104935760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105c0565b5f81815260046020526040902080546001600160a01b0319166001600160a01b0384169081179091558190610d8a82610cf7565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6008546009546040516302571be360e01b815260048101919091525f9130916001600160a01b03909116906302571be390602401602060405180830381865afa158015610e12573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e369190611b45565b6001600160a01b031614610e48575f80fd5b335f908152600a602052604090205460ff16610e62575f80fd5b610e6b8561090f565b610e73575f80fd5b610e806276a70042611b77565b6276a700610e8e8542611b77565b610e989190611b77565b11610ea1575f80fd5b610eab8342611b77565b5f868152600760209081526040808320939093556002905220546001600160a01b031615610edc57610edc856113dd565b610ee6848661146f565b8115610f6d576008546009546040516306ab592360e01b81526004810191909152602481018790526001600160a01b038681166044830152909116906306ab5923906064016020604051808303815f875af1158015610f47573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f6b9190611b60565b505b6001600160a01b038416857fb3d987963d01b2f68493b4bdb130988f157ea43070d4ad840fee0466ed9370d9610fa38642611b77565b60405190815260200160405180910390a3610fbe8342611b77565b95945050505050565b5f80610fd283610848565b9050806001600160a01b0316846001600160a01b0316148061100d5750836001600160a01b031661100284610528565b6001600160a01b0316145b8061067357506001600160a01b038082165f9081526005602090815260408083209388168352929052205460ff16610673565b826001600160a01b031661105382610cf7565b6001600160a01b0316146110795760405162461bcd60e51b81526004016105c090611bc4565b6001600160a01b0382166110db5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b60648201526084016105c0565b826001600160a01b03166110ee82610cf7565b6001600160a01b0316146111145760405162461bcd60e51b81526004016105c090611bc4565b5f81815260046020908152604080832080546001600160a01b03199081169091556001600160a01b038781168086526003855283862080545f1901905590871680865283862080546001019055868652600290945282852080549092168417909155905184937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6006546001600160a01b031633146108fe5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016105c0565b600680546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b816001600160a01b0316836001600160a01b0316036112ae5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c65720000000000000060448201526064016105c0565b6001600160a01b038381165f81815260056020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b611325848484611040565b611331848484846115f7565b6109c85760405162461bcd60e51b81526004016105c090611c09565b60605f611359836116f1565b60010190505f8167ffffffffffffffff81111561137857611378611987565b6040519080825280601f01601f1916602001820160405280156113a2576020820181803683370190505b5090508181016020015b5f19016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a85049450846113ac57509392505050565b5f6113e782610cf7565b90506113f282610cf7565b5f83815260046020908152604080832080546001600160a01b03199081169091556001600160a01b0385168085526003845282852080545f190190558785526002909352818420805490911690555192935084927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6001600160a01b0382166114c55760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f206164647265737360448201526064016105c0565b5f818152600260205260409020546001600160a01b0316156115295760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105c0565b5f818152600260205260409020546001600160a01b03161561158d5760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105c0565b6001600160a01b0382165f81815260036020908152604080832080546001019055848352600290915280822080546001600160a01b0319168417905551839291907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b5f6001600160a01b0384163b156116e957604051630a85bd0160e11b81526001600160a01b0385169063150b7a029061163a903390899088908890600401611c5b565b6020604051808303815f875af1925050508015611674575060408051601f3d908101601f1916820190925261167191810190611c97565b60015b6116cf573d8080156116a1576040519150601f19603f3d011682016040523d82523d5f602084013e6116a6565b606091505b5080515f036116c75760405162461bcd60e51b81526004016105c090611c09565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610673565b506001610673565b5f8072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b831061172f5772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef8100000000831061175b576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc10000831061177957662386f26fc10000830492506010015b6305f5e1008310611791576305f5e100830492506008015b61271083106117a557612710830492506004015b606483106117b7576064830492506002015b600a83106104935760010192915050565b6001600160e01b031981168114610c38575f80fd5b5f602082840312156117ed575f80fd5b8135610bbb816117c8565b5f5b838110156118125781810151838201526020016117fa565b50505f910152565b5f81518084526118318160208601602086016117f8565b601f01601f19169290920160200192915050565b602081525f610bbb602083018461181a565b5f60208284031215611867575f80fd5b5035919050565b6001600160a01b0381168114610c38575f80fd5b5f8060408385031215611893575f80fd5b823561189e8161186e565b946020939093013593505050565b5f805f606084860312156118be575f80fd5b8335925060208401356118d08161186e565b929592945050506040919091013590565b5f805f606084860312156118f3575f80fd5b83356118fe8161186e565b925060208401356118d08161186e565b5f806040838503121561191f575f80fd5b8235915060208301356119318161186e565b809150509250929050565b5f6020828403121561194c575f80fd5b8135610bbb8161186e565b5f8060408385031215611968575f80fd5b82356119738161186e565b915060208301358015158114611931575f80fd5b634e487b7160e01b5f52604160045260245ffd5b5f805f80608085870312156119ae575f80fd5b84356119b98161186e565b935060208501356119c98161186e565b925060408501359150606085013567ffffffffffffffff808211156119ec575f80fd5b818701915087601f8301126119ff575f80fd5b813581811115611a1157611a11611987565b604051601f8201601f19908116603f01168101908382118183101715611a3957611a39611987565b816040528281528a6020848701011115611a51575f80fd5b826020860160208301375f60208483010152809550505050505092959194509250565b5f8060408385031215611a85575f80fd5b50508035926020909101359150565b5f8060408385031215611aa5575f80fd5b8235611ab08161186e565b915060208301356119318161186e565b600181811c90821680611ad457607f821691505b602082108103611af257634e487b7160e01b5f52602260045260245ffd5b50919050565b6020808252602d908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526c1c881bdc88185c1c1c9bdd9959609a1b606082015260800190565b5f60208284031215611b55575f80fd5b8151610bbb8161186e565b5f60208284031215611b70575f80fd5b5051919050565b8082018082111561049357634e487b7160e01b5f52601160045260245ffd5b5f8351611ba78184602088016117f8565b835190830190611bbb8183602088016117f8565b01949350505050565b60208082526025908201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060408201526437bbb732b960d91b606082015260800190565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6001600160a01b03858116825284166020820152604081018390526080606082018190525f90611c8d9083018461181a565b9695505050505050565b5f60208284031215611ca7575f80fd5b8151610bbb816117c856fea164736f6c6343000818000a","storage":{"0x0":"0x0","0x1":"0x0","0x6":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x8":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0x9":"0x93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae","0x9b8bc185dce56a7ea1b27d35e40ac15dcdf9144303dfd4d8880220078bf21a2c":"0x1","0xdb5e6a17df8534b92b0c8de590f14b4fb4b5eb2c62ef1bf7a05555e354797508":"0x1","0xe1a982900207b619cb6c39be8cb5e60da1370171412fb65b5efc25e2dce3c34c":"0x1"}},"0xce4bb7dc1eb9dce75743de6a4b48534fd427ef51":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xe85541865bbb62a05064ce5c9f41cc293a8ea996","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0xd178b720229c39de617846f84cf9c8d32a63a23d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610106575f3560e01c806371017a541161009e5780639e32d3641161006e5780639e32d3641461025a578063a424740014610281578063dd6b9e2214610294578063e1c4b65a146102a7578063e35a14e5146102ba575f80fd5b806371017a541461020e5780637b103999146102215780638f0dbd25146102345780639810b69514610247575f80fd5b8063485cc955116100d9578063485cc95514610191578063572b6c05146101a457806358884432146101d05780636ccbae5f146101fb575f80fd5b8063150b7a021461010a5780631694116d1461013b5780631bf7e13e146101505780631c351a9d14610170575b5f80fd5b61011d610118366004611434565b6102e2565b6040516001600160e01b031990911681526020015b60405180910390f35b61014e6101493660046114e3565b610372565b005b61016361015e366004611549565b61040d565b6040516101329190611601565b61018361017e366004611613565b6104d6565b604051908152602001610132565b61014e61019f366004611666565b6105c3565b6101c06101b236600461169d565b6001600160a01b0316301490565b6040519015158152602001610132565b6067546101e3906001600160a01b031681565b6040516001600160a01b039091168152602001610132565b6101836102093660046116b8565b6106f8565b6101e361021c3660046116cf565b610751565b6066546101e3906001600160a01b031681565b61014e6102423660046116ef565b610791565b6101e36102553660046116cf565b610806565b6101837fd81bbfcee722494b885e891546eeac23d0eedcd44038d7a2f6ef9ec2f9e0d23981565b6101c061028f366004611549565b61085f565b6101c06102a236600461172d565b6108a8565b61014e6102b5366004611771565b61091d565b6101e36102c83660046116b8565b5f908152606560205260409020546001600160a01b031690565b6066545f906001600160a01b03166102f8610a43565b6001600160a01b031614158061032257505f848152606560205260409020546001600160a01b0316155b156103605783610330610a43565b60405163634afa0d60e01b815260048101929092526001600160a01b031660248201526044015b60405180910390fd5b50630a85bd0160e11b95945050505050565b828261037e8282610751565b6001600160a01b031661038f610a43565b6001600160a01b0316146103c057604051632cd9b44d60e11b81526004810183905260248101829052604401610357565b5f6103cb8686610806565b90505f5b87811015610402576103fa8989838181106103ec576103ec6117b0565b905060200201358387610a51565b6001016103cf565b505050505050505050565b60605f5a905061041e85858561085f565b61043b57604051638baa579f60e01b815260040160405180910390fd5b6104cb61044b602087018761169d565b3060408801358461045f60608b018b6117c4565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f92019190915250610b8492505050565b9150505b9392505050565b6067545f906001600160a01b031663aa271e1a6104f1610a43565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015610533573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105579190611807565b1580610572575030610567610a43565b6001600160a01b0316145b156105a45761057f610a43565b60405163e2c8c9d560e01b81526001600160a01b039091166004820152602401610357565b5f6105b0858585610c60565b90506105bb81610e73565b949350505050565b5f54610100900460ff16158080156105e157505f54600160ff909116105b806105fa5750303b1580156105fa57505f5460ff166001145b61065d5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610357565b5f805460ff19166001179055801561067e575f805461ff0019166101001790555b606680546001600160a01b038086166001600160a01b031992831617909255606780549285169290911691909117905580156106f3575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f9061074a906060016040516020818303038152906040528051906020012090565b5492915050565b5f80838360405160200161076f929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209150505b92915050565b828261079d8282610751565b6001600160a01b03166107ae610a43565b6001600160a01b0316146107df57604051632cd9b44d60e11b81526004810183905260248101829052604401610357565b856107e981610e73565b6107fd876107f78889610806565b86610a51565b50505050505050565b5f8060026108148585610e8f565b6040516108219190611826565b602060405180830381855afa15801561083c573d5f803e3d5ffd5b5050506040513d601f19601f820116820180604052508101906105bb9190611841565b5f6105bb61086c856118c6565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250610f1492505050565b5f805b8281101561091257846001600160a01b03166108f38585848181106108d2576108d26117b0565b905060200201355f908152606560205260409020546001600160a01b031690565b6001600160a01b03161461090a575f9150506104cf565b6001016108ab565b506001949350505050565b6067546001600160a01b031663aa271e1a610936610a43565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015610978573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061099c9190611807565b15806109b75750306109ac610a43565b6001600160a01b0316145b156109c45761057f610a43565b5f5b818110156106f357610a3a8383838181106109e3576109e36117b0565b90506020028101906109f59190611983565b610a039060208101906117c4565b858585818110610a1557610a156117b0565b9050602002810190610a279190611983565b610a3590602081019061169d565b610c60565b506001016109c6565b5f610a4c611059565b905090565b5f838152606560205260409020546001600160a01b03838116911614610ab4575f83815260656020526040908190205490516326995d8360e11b8152600481018590526001600160a01b0391821660248201529083166044820152606401610357565b5f838152606560205260409081902080546001600160a01b03191690556066549051632142170760e11b81523060048201526001600160a01b03838116602483015260448201869052909116906342842e0e906064015f604051808303815f87803b158015610b21575f80fd5b505af1158015610b33573d5f803e3d5ffd5b50505050806001600160a01b0316610b49610a43565b6001600160a01b0316847f9a471856befea1cabcd7fc8a1c4d70ea07b8ed2ee205cc361f932433542ef3fe60405160405180910390a4505050565b6060610b8f85611076565b5f80876001600160a01b031686610ba88b8a89896110db565b604051610bb59190611826565b5f604051808303815f8787f1925050503d805f8114610bef576040519150601f19603f3d011682016040523d82523d5f602084013e610bf4565b606091505b509092509050610c05603f876119bf565b5a11610c1357610c136119d2565b610c5382826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061110b565b9998505050505050505050565b5f60605f7fd81bbfcee722494b885e891546eeac23d0eedcd44038d7a2f6ef9ec2f9e0d2398686604051602001610c989291906119e6565b60405160208183030381529060405280519060200120604051602001610cc8929190918252602082015260400190565b60408051808303601f19018152828252805160209091012060028084526060840190925292505f9190816020015b6060815260200190600190039081610cf657905050905086868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920182905250855186945090925015159050610d5657610d566117b0565b6020026020010181905250604051806040016040528060038152602001621e9a5b60ea1b81525081600181518110610d9057610d906117b0565b6020908102919091018101919091525f8381526065909152604080822080546001600160a01b0319166001600160a01b03898116919091179091556067549151635cd7e3b360e01b8152911691635cd7e3b391610df891309186918991829190600401611a4d565b5f604051808303815f87803b158015610e0f575f80fd5b505af1158015610e21573d5f803e3d5ffd5b50505050846001600160a01b0316827f08717469d38a4b02325ea6637978c7952f94d3d8fc7848994f618ddbf4d637f18989604051610e61929190611aab565b60405180910390a35095945050505050565b303303610e8657610e8381611144565b50565b610e8381611076565b60605f82610e9f60016020611ad9565b60ff1660208110610eb257610eb26117b0565b1a9050610ec0600282611af2565b60ff1615610ecf576003610ed2565b60025b84604051602001610efc92919060f89290921b6001600160f81b0319168252600182015260210190565b60405160208183030381529060405291505092915050565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015610f58573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f7c9190611841565b90505f611029866060015180519060200120868860200151604051602001610fc99392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561104f5750855161104f906001600160a01b0316828661116e565b9695505050505050565b5f30330361106e575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f906060016040516020818303038152906040528051906020012090506110ca8190565b546110d6906001611b13565b905550565b60608285856040516020016110f293929190611b26565b6040516020818303038152906040529050949350505050565b6060831561111a5750816104cf565b82511561112a5782518084602001fd5b8160405162461bcd60e51b81526004016103579190611601565b61114c6112a9565b8114610e8357604051635637b6af60e11b815260048101829052602401610357565b5f805f61117b85856112bb565b90925090505f81600481111561119357611193611b64565b1480156111b15750856001600160a01b0316826001600160a01b0316145b156111c1576001925050506104cf565b5f80876001600160a01b0316631626ba7e60e01b88886040516024016111e8929190611b78565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516112269190611826565b5f60405180830381855afa9150503d805f811461125e576040519150601f19603f3d011682016040523d82523d5f602084013e611263565b606091505b5091509150818015611276575080516020145b801561129d57508051630b135d3f60e11b9061129b9083016020908101908401611841565b145b98975050505050505050565b5f3033036110735750601f1936013590565b5f8082516041036112ef576020830151604084015160608501515f1a6112e3878285856112fd565b945094505050506112f6565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561133257505f905060036113d9565b8460ff16601b1415801561134a57508460ff16601c14155b1561135a57505f905060046113d9565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156113ab573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b0381166113d3575f600192509250506113d9565b91505f90505b94509492505050565b6001600160a01b0381168114610e83575f80fd5b5f8083601f840112611406575f80fd5b50813567ffffffffffffffff81111561141d575f80fd5b6020830191508360208285010111156112f6575f80fd5b5f805f805f60808688031215611448575f80fd5b8535611453816113e2565b94506020860135611463816113e2565b935060408601359250606086013567ffffffffffffffff811115611485575f80fd5b611491888289016113f6565b969995985093965092949392505050565b5f8083601f8401126114b2575f80fd5b50813567ffffffffffffffff8111156114c9575f80fd5b6020830191508360208260051b85010111156112f6575f80fd5b5f805f805f608086880312156114f7575f80fd5b853567ffffffffffffffff81111561150d575f80fd5b611519888289016114a2565b9096509450506020860135925060408601359150606086013561153b816113e2565b809150509295509295909350565b5f805f6040848603121561155b575f80fd5b833567ffffffffffffffff80821115611572575f80fd5b9085019060808288031215611585575f80fd5b9093506020850135908082111561159a575f80fd5b506115a7868287016113f6565b9497909650939450505050565b5f5b838110156115ce5781810151838201526020016115b6565b50505f910152565b5f81518084526115ed8160208601602086016115b4565b601f01601f19169290920160200192915050565b602081525f6104cf60208301846115d6565b5f805f60408486031215611625575f80fd5b833567ffffffffffffffff81111561163b575f80fd5b611647868287016113f6565b909450925050602084013561165b816113e2565b809150509250925092565b5f8060408385031215611677575f80fd5b8235611682816113e2565b91506020830135611692816113e2565b809150509250929050565b5f602082840312156116ad575f80fd5b81356104cf816113e2565b5f602082840312156116c8575f80fd5b5035919050565b5f80604083850312156116e0575f80fd5b50508035926020909101359150565b5f805f8060808587031215611702575f80fd5b8435935060208501359250604085013591506060850135611722816113e2565b939692955090935050565b5f805f6040848603121561173f575f80fd5b833561174a816113e2565b9250602084013567ffffffffffffffff811115611765575f80fd5b6115a7868287016114a2565b5f8060208385031215611782575f80fd5b823567ffffffffffffffff811115611798575f80fd5b6117a4858286016114a2565b90969095509350505050565b634e487b7160e01b5f52603260045260245ffd5b5f808335601e198436030181126117d9575f80fd5b83018035915067ffffffffffffffff8211156117f3575f80fd5b6020019150368190038213156112f6575f80fd5b5f60208284031215611817575f80fd5b815180151581146104cf575f80fd5b5f82516118378184602087016115b4565b9190910192915050565b5f60208284031215611851575f80fd5b5051919050565b634e487b7160e01b5f52604160045260245ffd5b6040516080810167ffffffffffffffff8111828210171561188f5761188f611858565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156118be576118be611858565b604052919050565b5f608082360312156118d6575f80fd5b6118de61186c565b82356118e9816113e2565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff80821115611919575f80fd5b9085019036601f83011261192b575f80fd5b81358181111561193d5761193d611858565b61194f601f8201601f19168501611895565b91508082523684828501011115611964575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b5f8235603e19833603018112611837575f80fd5b634e487b7160e01b5f52601260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b5f826119cd576119cd611997565b500490565b634e487b7160e01b5f52600160045260245ffd5b818382375f9101908152919050565b5f8282518085526020808601955060208260051b840101602086015f5b84811015611a4057601f19868403018952611a2e8383516115d6565b98840198925090830190600101611a12565b5090979650505050505050565b6001600160a01b038616815260a0602082018190525f90611a70908301876119f5565b8281036040840152611a8281876119f5565b90508281036060840152611a9681866119f5565b91505082151560808301529695505050505050565b60208152816020820152818360408301375f818301604090810191909152601f909201601f19160101919050565b60ff828116828216039081111561078b5761078b6119ab565b5f60ff831680611b0457611b04611997565b8060ff84160691505092915050565b8082018082111561078b5761078b6119ab565b5f8451611b378184602089016115b4565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f6105bb60408301846115d656fea164736f6c6343000818000a","storage":{"0x0":"0xff"}},"0xda9e1b3e395bfb0a45f03c7f615146b9d896c959":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100b1575f3560e01c806340c10f191161006e57806340c10f191461013d57806370a082311461015257806395d89b411461017a578063a457c2d714610182578063a9059cbb14610195578063dd62ed3e146101a8575f80fd5b806306fdde03146100b5578063095ea7b3146100d357806318160ddd146100f657806323b872dd14610108578063313ce5671461011b578063395093511461012a575b5f80fd5b6100bd6101bb565b6040516100ca9190610775565b60405180910390f35b6100e66100e13660046107dc565b61024b565b60405190151581526020016100ca565b6002545b6040519081526020016100ca565b6100e6610116366004610804565b610264565b604051601281526020016100ca565b6100e66101383660046107dc565b610287565b61015061014b3660046107dc565b6102a8565b005b6100fa61016036600461083d565b6001600160a01b03165f9081526020819052604090205490565b6100bd6102b6565b6100e66101903660046107dc565b6102c5565b6100e66101a33660046107dc565b610344565b6100fa6101b636600461085d565b610351565b6060600380546101ca9061088e565b80601f01602080910402602001604051908101604052809291908181526020018280546101f69061088e565b80156102415780601f1061021857610100808354040283529160200191610241565b820191905f5260205f20905b81548152906001019060200180831161022457829003601f168201915b5050505050905090565b5f3361025881858561037b565b60019150505b92915050565b5f3361027185828561049e565b61027c858585610516565b506001949350505050565b5f336102588185856102998383610351565b6102a391906108c6565b61037b565b6102b282826106b8565b5050565b6060600480546101ca9061088e565b5f33816102d28286610351565b9050838110156103375760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b61027c828686840361037b565b5f33610258818585610516565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b6001600160a01b0383166103dd5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161032e565b6001600160a01b03821661043e5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161032e565b6001600160a01b038381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b5f6104a98484610351565b90505f19811461051057818110156105035760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161032e565b610510848484840361037b565b50505050565b6001600160a01b03831661057a5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161032e565b6001600160a01b0382166105dc5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161032e565b6001600160a01b0383165f90815260208190526040902054818110156106535760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161032e565b6001600160a01b038481165f81815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3610510565b6001600160a01b03821661070e5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640161032e565b8060025f82825461071f91906108c6565b90915550506001600160a01b0382165f81815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b5f602080835283518060208501525f5b818110156107a157858101830151858201604001528201610785565b505f604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146107d7575f80fd5b919050565b5f80604083850312156107ed575f80fd5b6107f6836107c1565b946020939093013593505050565b5f805f60608486031215610816575f80fd5b61081f846107c1565b925061082d602085016107c1565b9150604084013590509250925092565b5f6020828403121561084d575f80fd5b610856826107c1565b9392505050565b5f806040838503121561086e575f80fd5b610877836107c1565b9150610885602084016107c1565b90509250929050565b600181811c908216806108a257607f821691505b6020821081036108c057634e487b7160e01b5f52602260045260245ffd5b50919050565b8082018082111561025e57634e487b7160e01b5f52601160045260245ffdfea164736f6c6343000818000a","storage":{"0x2":"0xe8d4a51000","0x3":"0x0","0x4":"0x0","0x47668262eb76f3aa61b856a0c078f33a11f46671cf1466c3616ba74a22fcdd92":"0xe8d4a51000","0x9cc83e833a69122bf7773b58c082655d780ae469ab7cdf5d1047a30229e55875":"0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"}},"0xe0afc4e9e03e4aa67257df7a2eca77454309789d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061002b5760003560e01c806316f1983114610030575b600080fd5b6100b06004803603604081101561004657600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561007157600080fd5b82018360208201111561008357600080fd5b803590602001918460018302840111640100000000831117156100a557600080fd5b5090925090506100b2565b005b826001600160a01b031660017f103fed9db65eac19c4d870f49ab7520fe03b99f1838e5996caf47e9e43308392848460405180806020018281038252848482818152602001925080828437600083820152604051601f909101601f19169092018290039550909350505050a350505056fea164736f6c6343000606000a","storage":{}},"0xe4fdf45c2f8d198854f8823809c7a988eeaaa493":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100a6575f3560e01c80638cb8ecec1161006e5780638cb8ecec1461013e5780638da5cb5b14610151578063cbe9e76414610161578063da8c229e14610183578063e0dba60f146101a5578063f2fde38b146101b8575f80fd5b806301670ba9146100aa57806301ffc9a7146100bf5780633f15457f146100f85780634e543b2614610123578063715018a614610136575b5f80fd5b6100bd6100b8366004610529565b6101cb565b005b6100e36100cd366004610540565b6001600160e01b0319166301ffc9a760e01b1490565b60405190151581526020015b60405180910390f35b60025461010b906001600160a01b031681565b6040516001600160a01b0390911681526020016100ef565b6100bd610131366004610589565b610217565b6100bd610282565b6100bd61014c3660046105a2565b610295565b5f546001600160a01b031661010b565b6100e361016f366004610529565b60036020525f908152604090205460ff1681565b6100e3610191366004610589565b60016020525f908152604090205460ff1681565b6100bd6101b33660046105cc565b6103a2565b6100bd6101c6366004610589565b610408565b6101d3610481565b60405181907f1764176cfa565853ba1ded547a830a9f9bff95231ef6fd228b3ddd6175777569905f90a25f908152600360205260409020805460ff19166001179055565b61021f610481565b600254604051630c4b7b8560e11b81525f60048201526001600160a01b03838116602483015290911690631896f70a906044015f604051808303815f87803b158015610269575f80fd5b505af115801561027b573d5f803e3d5ffd5b5050505050565b61028a610481565b6102935f6104da565b565b335f9081526001602052604090205460ff166103095760405162461bcd60e51b815260206004820152602860248201527f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f604482015267373a3937b63632b960c11b60648201526084015b60405180910390fd5b5f8281526003602052604090205460ff1615610323575f80fd5b6002546040516306ab592360e01b81525f6004820152602481018490526001600160a01b038381166044830152909116906306ab5923906064016020604051808303815f875af1158015610379573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061039d9190610605565b505050565b6103aa610481565b6001600160a01b0382165f81815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b610410610481565b6001600160a01b0381166104755760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610300565b61047e816104da565b50565b5f546001600160a01b031633146102935760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610300565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f60208284031215610539575f80fd5b5035919050565b5f60208284031215610550575f80fd5b81356001600160e01b031981168114610567575f80fd5b9392505050565b80356001600160a01b0381168114610584575f80fd5b919050565b5f60208284031215610599575f80fd5b6105678261056e565b5f80604083850312156105b3575f80fd5b823591506105c36020840161056e565b90509250929050565b5f80604083850312156105dd575f80fd5b6105e68361056e565b9150602083013580151581146105fa575f80fd5b809150509250929050565b5f60208284031215610615575f80fd5b505191905056fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0xbdf39e9e65b2355b1b0b06df799c09159f0ab90f06a9bb2153f5de7d9b0ea81":"0x1","0x97b771283c9c769f7b9399fef71d92816f2bd31de10203b676671b01eb920966":"0x1"}},"0xe85541865bbb62a05064ce5c9f41cc293a8ea996":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610060575f3560e01c8063715018a6146100645780638129fc1c1461006e5780638da5cb5b14610076578063a3f4df7e14610096578063f2fde38b146100cf578063ffa1ad74146100e2575b5f80fd5b61006c610106565b005b61006c610119565b6033546040516001600160a01b0390911681526020015b60405180910390f35b6100c26040518060400160405280600d81526020016c2aa7299d1027b832b930ba37b960991b81525081565b60405161008d91906103bd565b61006c6100dd366004610409565b610229565b6100c2604051806040016040528060058152602001640302e312e360dc1b81525081565b61010e61029f565b6101175f6102f9565b565b5f54610100900460ff161580801561013757505f54600160ff909116105b806101505750303b15801561015057505f5460ff166001145b6101b85760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b5f805460ff1916600117905580156101d9575f805461ff0019166101001790555b6101e161034a565b8015610226575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50565b61023161029f565b6001600160a01b0381166102965760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016101af565b610226816102f9565b6033546001600160a01b031633146101175760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016101af565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff166103b45760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016101af565b610117336102f9565b5f602080835283518060208501525f5b818110156103e9578581018301518582016040015282016103cd565b505f604082860101526040601f19601f8301168501019250505092915050565b5f60208284031215610419575f80fd5b81356001600160a01b038116811461042f575f80fd5b939250505056fea164736f6c6343000818000a","storage":{}},"0xead34b583404e3cb0c9b97c2d1c486be67be9f30":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0xec71e4e674fe0f432693dc2b935c34bd2774c003":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610090575f3560e01c8063a200e15311610063578063a200e15314610146578063a34e35961461016d578063c8a4271f14610180578063cd5d2c74146101bf578063d820ed42146101e6575f80fd5b806301ffc9a7146100945780632c0fd74c146100bc57806350e9a715146100f157806359b6b86c1461011f575b5f80fd5b6100a76100a2366004610600565b61020d565b60405190151581526020015b60405180910390f35b6100e37f000000000000000000000000000000000000000000000000000000000000000081565b6040519081526020016100b3565b6101046100ff366004610627565b610243565b604080518251815260209283015192810192909252016100b3565b6100e37f000000000000000000000000000000000000000000000000000000000000000181565b6100e37f000000000000000000000000000000000000000000000000000000000000000481565b6100e361017b366004610627565b610404565b6101a77f000000000000000000000000f3810eb7d64d1c11ae12727d957c6202b24492f581565b6040516001600160a01b0390911681526020016100b3565b6100e37f000000000000000000000000000000000000000000000000000000000000000081565b6100e37f000000000000000000000000000000000000000000000000000000000000000281565b5f6001600160e01b031982166301ffc9a760e01b148061023d57506001600160e01b031982166350e9a71560e01b145b92915050565b604080518082019091525f80825260208201525f61029586868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061045392505050565b90505f600582106102d1576102ca847f00000000000000000000000000000000000000000000000000000000000000016106b3565b9050610394565b81600403610303576102ca847f00000000000000000000000000000000000000000000000000000000000000026106b3565b81600303610335576102ca847f00000000000000000000000000000000000000000000000000000000000000046106b3565b81600203610367576102ca847f00000000000000000000000000000000000000000000000000000000000000006106b3565b610391847f00000000000000000000000000000000000000000000000000000000000000006106b3565b90505b60405180604001604052806103a883610554565b81526020016103f76103f28a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c92508b91506105f89050565b610554565b9052979650505050505050565b5f61044a6103f286868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508892508791506105f89050565b95945050505050565b80515f90819081905b8082101561054b575f858381518110610477576104776106ca565b01602001516001600160f81b0319169050600160ff1b8110156104a65761049f6001846106de565b9250610538565b600760fd1b6001600160f81b0319821610156104c75761049f6002846106de565b600f60fc1b6001600160f81b0319821610156104e85761049f6003846106de565b601f60fb1b6001600160f81b0319821610156105095761049f6004846106de565b603f60fa1b6001600160f81b03198216101561052a5761049f6005846106de565b6105356006846106de565b92505b5082610543816106f1565b93505061045c565b50909392505050565b5f807f000000000000000000000000f3810eb7d64d1c11ae12727d957c6202b24492f56001600160a01b03166350d25bcd6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105b2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105d69190610709565b9050806105e7846305f5e1006106b3565b6105f19190610720565b9392505050565b5f9392505050565b5f60208284031215610610575f80fd5b81356001600160e01b0319811681146105f1575f80fd5b5f805f806060858703121561063a575f80fd5b843567ffffffffffffffff80821115610651575f80fd5b818701915087601f830112610664575f80fd5b813581811115610672575f80fd5b886020828501011115610683575f80fd5b6020928301999098509187013596604001359550909350505050565b634e487b7160e01b5f52601160045260245ffd5b808202811582820484141761023d5761023d61069f565b634e487b7160e01b5f52603260045260245ffd5b8082018082111561023d5761023d61069f565b5f600182016107025761070261069f565b5060010190565b5f60208284031215610719575f80fd5b5051919050565b5f8261073a57634e487b7160e01b5f52601260045260245ffd5b50049056fea164736f6c6343000818000a","storage":{}},"0xf1ad43dc647f27c2366ab4742d68d21282f7d50e":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101d1575f3560e01c80638b95dd71116100fe578063c86902331161009e578063e32954eb1161006e578063e32954eb146104f2578063e59d895d14610505578063e985e9c514610518578063f1cb7e0614610553575f80fd5b8063c869023314610435578063ce3decdc1461048c578063d5fa2b001461049f578063d700ff33146104b2575f80fd5b8063a8fa5682116100d9578063a8fa5682146103ac578063a9784b3e146103bf578063ac9650d814610402578063bc1c58d114610422575f80fd5b80638b95dd7114610373578063a22cb46514610386578063a4b91a0114610399575f80fd5b80633603d758116101745780635c98042b116101445780635c98042b14610327578063623195b01461033a578063691f34311461034d5780637737221314610360575f80fd5b80633603d758146102975780633b3b57de146102aa5780634cbf6ba4146102bd57806359d1d43c14610307575f80fd5b8063124a319c116101af578063124a319c146102255780632203ab561461025057806329cd62ea14610271578063304e6ade14610284575f80fd5b806301ffc9a7146101d55780630af179d7146101fd57806310f13a8c14610212575b5f80fd5b6101e86101e3366004612267565b610566565b60405190151581526020015b60405180910390f35b61021061020b3660046122bd565b610576565b005b610210610220366004612304565b610778565b610238610233366004612377565b610842565b6040516001600160a01b0390911681526020016101f4565b61026361025e3660046123a1565b610a87565b6040516101f492919061240e565b61021061027f366004612426565b610bb5565b6102106102923660046122bd565b610c4d565b6102106102a536600461244f565b610cc6565b6102386102b836600461244f565b610d64565b6101e86102cb3660046123a1565b5f82815260208181526040808320546001600160401b031683526006825280832094835293815283822092825291909152205461ffff16151590565b61031a6103153660046122bd565b610d93565b6040516101f49190612466565b61031a61033536600461244f565b610e6f565b610210610348366004612478565b610f2a565b61031a61035b36600461244f565b610fc2565b61021061036e3660046122bd565b610ffa565b6102106103813660046124da565b611073565b6102106103943660046125b9565b611150565b6102106103a73660046125e3565b61122a565b61031a6103ba36600461261e565b6112f6565b6101e86103cd36600461265a565b6001600160a01b039283165f908152600c60209081526040808320948352938152838220929094168152925290205460ff1690565b6104156104103660046126ce565b611342565b6040516101f4919061270c565b61031a61043036600461244f565b61134f565b61047761044336600461244f565b5f81815260208181526040808320546001600160401b03168352600982528083209383529290522080546001909101549091565b604080519283526020830191909152016101f4565b61021061049a3660046122bd565b611387565b6102106104ad36600461276e565b6114c3565b6104da6104c036600461244f565b5f602081905290815260409020546001600160401b031681565b6040516001600160401b0390911681526020016101f4565b61041561050036600461279c565b6114e9565b6102106105133660046127d6565b6114fe565b6101e8610526366004612808565b6001600160a01b039182165f908152600b6020908152604080832093909416825291909152205460ff1690565b61031a6105613660046123a1565b6115a2565b5f61057082611666565b92915050565b826105808161168a565b610588575f80fd5b5f84815260208181526040808320548151601f87018490048402810184019092528582528392606092839285926001600160401b039091169183916105eb9183918d908d90819084018382808284375f9201919091525092939250506118b79050565b90505b80515160208201511015610712578661ffff165f03610652578060400151965061061781611912565b94508460405160200161062a9190612834565b60405160208183030381529060405280519060200120925061064b81611933565b9350610704565b5f61065c82611912565b9050816040015161ffff168861ffff16141580610680575061067e868261194f565b155b15610702576106db8c878a8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250505060208801518d91506106d2908290612863565b8b51158a61196a565b8160400151975081602001519650809550858051906020012093506106ff82611933565b94505b505b61070d81611bc9565b6105ee565b5083511561076c5761076c8a85888c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c925061076391508290508f612863565b8951158861196a565b50505050505050505050565b846107828161168a565b61078a575f80fd5b5f86815260208181526040808320546001600160401b03168352600a8252808320898452909152908190209051849184916107c89089908990612876565b908152602001604051809103902091826107e3929190612901565b5084846040516107f4929190612876565b6040518091039020867f448bc014f1536726cf8d54ff3d6481ed3cbc683c2591ca204274009afa09b1a18787878760405161083294939291906129e2565b60405180910390a3505050505050565b5f82815260208181526040808320546001600160401b031683526007825280832085845282528083206001600160e01b0319851684529091528120546001600160a01b03168015610894579050610570565b5f61089e85610d64565b90506001600160a01b0381166108b8575f92505050610570565b6040516301ffc9a760e01b60248201525f9081906001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b1790525161090f9190612834565b5f60405180830381855afa9150503d805f8114610947576040519150601f19603f3d011682016040523d82523d5f602084013e61094c565b606091505b509150915081158061095f575060208151105b80610989575080601f8151811061097857610978612a13565b01602001516001600160f81b031916155b1561099a575f945050505050610570565b6040516001600160e01b0319871660248201526001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b179052516109f09190612834565b5f60405180830381855afa9150503d805f8114610a28576040519150601f19603f3d011682016040523d82523d5f602084013e610a2d565b606091505b509092509050811580610a41575060208151105b80610a6b575080601f81518110610a5a57610a5a612a13565b01602001516001600160f81b031916155b15610a7c575f945050505050610570565b509095945050505050565b5f82815260208181526040808320546001600160401b03168352600180835281842086855290925282206060915b848111610b975780851615801590610ae457505f8181526020839052604081208054610ae090612885565b9050115b15610b8f5780825f8381526020019081526020015f20808054610b0690612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610b3290612885565b8015610b7d5780601f10610b5457610100808354040283529160200191610b7d565b820191905f5260205f20905b815481529060010190602001808311610b6057829003601f168201915b50505050509050935093505050610bae565b60011b610ab5565b505f60405180602001604052805f81525092509250505b9250929050565b82610bbf8161168a565b610bc7575f80fd5b60408051808201825284815260208082018581525f888152808352848120546001600160401b031681526009835284812089825283528490209251835551600190920191909155815185815290810184905285917f1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e4691015b60405180910390a250505050565b82610c578161168a565b610c5f575f80fd5b5f84815260208181526040808320546001600160401b03168352600382528083208784529091529020610c93838583612901565b50837fe379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d75788484604051610c3f929190612a27565b80610cd08161168a565b610cd8575f80fd5b5f82815260208190526040812080546001600160401b031691610cfa83612a3a565b82546101009290920a6001600160401b038181021990931691831602179091555f84815260208181526040918290205491519190921681528492507fc6621ccb8f3f5a04bb6502154b2caf6adf5983fe76dfef1cfc9c42e3579db444910160405180910390a25050565b5f80610d7183603c6115a2565b905080515f03610d8357505f92915050565b610d8c81611cae565b9392505050565b5f83815260208181526040808320546001600160401b03168352600a825280832086845290915290819020905160609190610dd19085908590612876565b90815260200160405180910390208054610dea90612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610e1690612885565b8015610e615780601f10610e3857610100808354040283529160200191610e61565b820191905f5260205f20905b815481529060010190602001808311610e4457829003601f168201915b505050505090509392505050565b5f81815260208181526040808320546001600160401b03168352600482528083208484529091529020805460609190610ea790612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610ed390612885565b8015610f1e5780601f10610ef557610100808354040283529160200191610f1e565b820191905f5260205f20905b815481529060010190602001808311610f0157829003601f168201915b50505050509050919050565b83610f348161168a565b610f3c575f80fd5b83610f48600182612863565b1615610f52575f80fd5b5f85815260208181526040808320546001600160401b031683526001825280832088845282528083208784529091529020610f8e838583612901565b50604051849086907faa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe3905f90a35050505050565b5f81815260208181526040808320546001600160401b03168352600882528083208484529091529020805460609190610ea790612885565b826110048161168a565b61100c575f80fd5b5f84815260208181526040808320546001600160401b03168352600882528083208784529091529020611040838583612901565b50837fb7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f78484604051610c3f929190612a27565b8261107d8161168a565b611085575f80fd5b837f65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af75284846040516110b792919061240e565b60405180910390a2603c830361110e57837f52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd26110f284611cae565b6040516001600160a01b03909116815260200160405180910390a25b5f84815260208181526040808320546001600160401b0316835260028252808320878452825280832086845290915290206111498382612a5f565b5050505050565b6001600160a01b03821633036111bf5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084015b60405180910390fd5b335f818152600b602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6001600160a01b03821633036112825760405162461bcd60e51b815260206004820181905260248201527f53657474696e672064656c65676174652073746174757320666f722073656c6660448201526064016111b6565b335f818152600c6020908152604080832087845282528083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519384529286917ff0ddb3b04746704017f9aa8bd728fcc2c1d11675041205350018915f5e4750a0910160405180910390a4505050565b5f83815260208181526040808320546001600160401b03168352600582528083208684528252808320858452825280832061ffff851684529091529020805460609190610dea90612885565b6060610d8c5f8484611ccb565b5f81815260208181526040808320546001600160401b03168352600382528083208484529091529020805460609190610ea790612885565b826113918161168a565b611399575f80fd5b5f84815260208181526040808320546001600160401b031680845260048352818420888552909252822080549192916113d190612885565b80601f01602080910402602001604051908101604052809291908181526020018280546113fd90612885565b80156114485780601f1061141f57610100808354040283529160200191611448565b820191905f5260205f20905b81548152906001019060200180831161142b57829003601f168201915b505050506001600160401b0384165f9081526004602090815260408083208b8452909152902091925061147e9050858783612901565b50857f8f15ed4b723ef428f250961da8315675b507046737e19319fc1a4d81bfe87f858287876040516114b393929190612b1e565b60405180910390a2505050505050565b816114cd8161168a565b6114d5575f80fd5b6114e483603c61038185611e88565b505050565b60606114f6848484611ccb565b949350505050565b826115088161168a565b611510575f80fd5b5f84815260208181526040808320546001600160401b031683526007825280832087845282528083206001600160e01b031987168085529083529281902080546001600160a01b0319166001600160a01b038716908117909155905190815286917f7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa910160405180910390a350505050565b5f82815260208181526040808320546001600160401b0316835260028252808320858452825280832084845290915290208054606091906115e290612885565b80601f016020809104026020016040519081016040528092919081815260200182805461160e90612885565b80156116595780601f1061163057610100808354040283529160200191611659565b820191905f5260205f20905b81548152906001019060200180831161163c57829003601f168201915b5050505050905092915050565b5f6001600160e01b03198216631674750f60e21b1480610570575061057082611eb8565b5f336001600160a01b037f0000000000000000000000004fbf7b2f171336958be5d15ff762a5cff53635681614806116ea5750336001600160a01b037f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5616145b156116f757506001919050565b6040516302571be360e01b8152600481018390525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa15801561175c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117809190612b4d565b90507f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b0316816001600160a01b031603611845576040516331a9108f60e11b8152600481018490527f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b031690636352211e90602401602060405180830381865afa15801561181e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118429190612b4d565b90505b6001600160a01b03811633148061187e57506001600160a01b0381165f908152600b6020908152604080832033845290915290205460ff165b80610d8c57506001600160a01b0381165f908152600c60209081526040808320868452825280832033845290915290205460ff16610d8c565b6118ff6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261057081611bc9565b602081015181516060916105709161192a9082611edc565b84519190611f33565b60a081015160c08201516060916105709161192a908290612863565b5f81518351148015610d8c5750610d8c835f845f8751611fa7565b865160208801205f61197d878787611f33565b90508315611aa1576001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c168452909152902080546119c690612885565b159050611a23576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611a0783612b68565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091528120611a62916121f9565b897f03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a12078a8a604051611a94929190612b84565b60405180910390a261076c565b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c16845290915290208054611ae290612885565b90505f03611b40576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611b2483612ba9565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091529020611b808282612a5f565b50897f52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b8a8a84604051611bb593929190612bbf565b60405180910390a250505050505050505050565b60c08101516020820181905281515111611be05750565b5f611bf2825f01518360200151611edc565b8260200151611c019190612bed565b8251909150611c109082611fc9565b61ffff166040830152611c24600282612bed565b8251909150611c339082611fc9565b61ffff166060830152611c47600282612bed565b8251909150611c569082611fef565b63ffffffff166080830152611c6c600482612bed565b82519091505f90611c7d9083611fc9565b61ffff169050611c8e600283612bed565b60a084018190529150611ca18183612bed565b60c0909301929092525050565b5f8151601414611cbc575f80fd5b5060200151600160601b900490565b6060816001600160401b03811115611ce557611ce56124c6565b604051908082528060200260200182016040528015611d1857816020015b6060815260200190600190039081611d035790505b5090505f5b82811015611e80578415611dd8575f848483818110611d3e57611d3e612a13565b9050602002810190611d509190612c00565b611d5f91602491600491612c42565b611d6891612c69565b9050858114611dd65760405162461bcd60e51b815260206004820152603460248201527f6d756c746963616c6c3a20416c6c207265636f726473206d7573742068617665604482015273040c240dac2e8c6d0d2dcce40dcc2dacad0c2e6d60631b60648201526084016111b6565b505b5f8030868685818110611ded57611ded612a13565b9050602002810190611dff9190612c00565b604051611e0d929190612876565b5f60405180830381855af49150503d805f8114611e45576040519150601f19603f3d011682016040523d82523d5f602084013e611e4a565b606091505b509150915081611e58575f80fd5b80848481518110611e6b57611e6b612a13565b60209081029190910101525050600101611d1d565b509392505050565b604080516014808252818301909252606091602082018180368337505050600160601b9290920260208301525090565b5f6001600160e01b0319821663c869023360e01b1480610570575061057082612017565b5f815b83518110611eef57611eef612c86565b5f611efa858361203b565b60ff169050611f0a816001612bed565b611f149083612bed565b9150805f03611f235750611f29565b50611edf565b6114f68382612863565b8251606090611f428385612bed565b1115611f4c575f80fd5b5f826001600160401b03811115611f6557611f656124c6565b6040519080825280601f01601f191660200182016040528015611f8f576020820181803683370190505b50905060208082019086860101610a7c82828761205e565b5f611fb38484846120b3565b611fbe8787856120b3565b149695505050505050565b81515f90611fd8836002612bed565b1115611fe2575f80fd5b50016002015161ffff1690565b81515f90611ffe836004612bed565b1115612008575f80fd5b50016004015163ffffffff1690565b5f6001600160e01b0319821663691f343160e01b14806105705750610570826120d5565b5f82828151811061204e5761204e612a13565b016020015160f81c905092915050565b602081106120965781518352612075602084612bed565b9250612082602083612bed565b915061208f602082612863565b905061205e565b905182516020929092036101000a5f190180199091169116179052565b82515f906120c18385612bed565b11156120cb575f80fd5b5091016020012090565b5f6001600160e01b031982166304928c6760e21b14806105705750610570825f6001600160e01b0319821663547d2b4160e11b148061212457506001600160e01b03198216635c98042b60e01b145b806105705750610570825f6001600160e01b0319821663bc1c58d160e01b14806105705750610570825f6001600160e01b03198216631d9dabef60e11b148061217d57506001600160e01b031982166378e5bf0360e11b145b806105705750610570825f6001600160e01b03198216631101d5ab60e11b14806105705750610570825f6001600160e01b0319821663d700ff3360e01b14806105705750610570825f6001600160e01b03198216634fbf043360e01b148061057057506301ffc9a760e01b6001600160e01b0319831614610570565b50805461220590612885565b5f825580601f10612214575050565b601f0160209004905f5260205f20908101906122309190612233565b50565b5b80821115612247575f8155600101612234565b5090565b80356001600160e01b031981168114612262575f80fd5b919050565b5f60208284031215612277575f80fd5b610d8c8261224b565b5f8083601f840112612290575f80fd5b5081356001600160401b038111156122a6575f80fd5b602083019150836020828501011115610bae575f80fd5b5f805f604084860312156122cf575f80fd5b8335925060208401356001600160401b038111156122eb575f80fd5b6122f786828701612280565b9497909650939450505050565b5f805f805f60608688031215612318575f80fd5b8535945060208601356001600160401b0380821115612335575f80fd5b61234189838a01612280565b90965094506040880135915080821115612359575f80fd5b5061236688828901612280565b969995985093965092949392505050565b5f8060408385031215612388575f80fd5b823591506123986020840161224b565b90509250929050565b5f80604083850312156123b2575f80fd5b50508035926020909101359150565b5f5b838110156123db5781810151838201526020016123c3565b50505f910152565b5f81518084526123fa8160208601602086016123c1565b601f01601f19169290920160200192915050565b828152604060208201525f6114f660408301846123e3565b5f805f60608486031215612438575f80fd5b505081359360208301359350604090920135919050565b5f6020828403121561245f575f80fd5b5035919050565b602081525f610d8c60208301846123e3565b5f805f806060858703121561248b575f80fd5b843593506020850135925060408501356001600160401b038111156124ae575f80fd5b6124ba87828801612280565b95989497509550505050565b634e487b7160e01b5f52604160045260245ffd5b5f805f606084860312156124ec575f80fd5b833592506020840135915060408401356001600160401b0380821115612510575f80fd5b818601915086601f830112612523575f80fd5b813581811115612535576125356124c6565b604051601f8201601f19908116603f0116810190838211818310171561255d5761255d6124c6565b81604052828152896020848701011115612575575f80fd5b826020860160208301375f6020848301015280955050505050509250925092565b6001600160a01b0381168114612230575f80fd5b80358015158114612262575f80fd5b5f80604083850312156125ca575f80fd5b82356125d581612596565b9150612398602084016125aa565b5f805f606084860312156125f5575f80fd5b83359250602084013561260781612596565b9150612615604085016125aa565b90509250925092565b5f805f60608486031215612630575f80fd5b8335925060208401359150604084013561ffff8116811461264f575f80fd5b809150509250925092565b5f805f6060848603121561266c575f80fd5b833561267781612596565b925060208401359150604084013561264f81612596565b5f8083601f84011261269e575f80fd5b5081356001600160401b038111156126b4575f80fd5b6020830191508360208260051b8501011115610bae575f80fd5b5f80602083850312156126df575f80fd5b82356001600160401b038111156126f4575f80fd5b6127008582860161268e565b90969095509350505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b8281101561276157603f1988860301845261274f8583516123e3565b94509285019290850190600101612733565b5092979650505050505050565b5f806040838503121561277f575f80fd5b82359150602083013561279181612596565b809150509250929050565b5f805f604084860312156127ae575f80fd5b8335925060208401356001600160401b038111156127ca575f80fd5b6122f78682870161268e565b5f805f606084860312156127e8575f80fd5b833592506127f86020850161224b565b9150604084013561264f81612596565b5f8060408385031215612819575f80fd5b823561282481612596565b9150602083013561279181612596565b5f82516128458184602087016123c1565b9190910192915050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156105705761057061284f565b818382375f9101908152919050565b600181811c9082168061289957607f821691505b6020821081036128b757634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156114e457805f5260205f20601f840160051c810160208510156128e25750805b601f840160051c820191505b81811015611149575f81556001016128ee565b6001600160401b03831115612918576129186124c6565b61292c836129268354612885565b836128bd565b5f601f84116001811461295d575f85156129465750838201355b5f19600387901b1c1916600186901b178355611149565b5f83815260208120601f198716915b8281101561298c578685013582556020948501946001909201910161296c565b50868210156129a8575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b604081525f6129f56040830186886129ba565b8281036020840152612a088185876129ba565b979650505050505050565b634e487b7160e01b5f52603260045260245ffd5b602081525f6114f66020830184866129ba565b5f6001600160401b03808316818103612a5557612a5561284f565b6001019392505050565b81516001600160401b03811115612a7857612a786124c6565b612a8c81612a868454612885565b846128bd565b602080601f831160018114612abf575f8415612aa85750858301515b5f19600386901b1c1916600185901b178555612b16565b5f85815260208120601f198616915b82811015612aed57888601518255948401946001909101908401612ace565b5085821015612b0a57878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b604081525f612b3060408301866123e3565b8281036020840152612b438185876129ba565b9695505050505050565b5f60208284031215612b5d575f80fd5b8151610d8c81612596565b5f61ffff821680612b7b57612b7b61284f565b5f190192915050565b604081525f612b9660408301856123e3565b905061ffff831660208301529392505050565b5f61ffff808316818103612a5557612a5561284f565b606081525f612bd160608301866123e3565b61ffff851660208401528281036040840152612b4381856123e3565b808201808211156105705761057061284f565b5f808335601e19843603018112612c15575f80fd5b8301803591506001600160401b03821115612c2e575f80fd5b602001915036819003821315610bae575f80fd5b5f8085851115612c50575f80fd5b83861115612c5c575f80fd5b5050820193919092039150565b80356020831015610570575f19602084900360031b1b1692915050565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{}},"0xf3810eb7d64d1c11ae12727d957c6202b24492f5":{"nonce":1,"balance":"0x0","code":"0x6080604052348015600e575f80fd5b50600436106030575f3560e01c806350d25bcd146034578063e5c19b2d146048575b5f80fd5b5f5460405190815260200160405180910390f35b605760533660046059565b5f55565b005b5f602082840312156068575f80fd5b503591905056fea164736f6c6343000818000a","storage":{"0x0":"0x5f5e100"}},"0xf670681605efc4efc804f5a9b97ee89520473d56":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c80638da5cb5b11610088578063c66485b211610063578063c66485b2146101da578063da8c229e146101ed578063e0dba60f1461021f578063f2fde38b14610232575f80fd5b80638da5cb5b146101a4578063bffbe61c146101b4578063c47f0027146101c7575f80fd5b806365669631116100c35780636566963114610161578063715018a6146101745780637a806d6b1461017e578063828eab0e14610191575f80fd5b80630f5a5466146100e95780631e83409a1461010f5780633f15457f14610122575b5f80fd5b6100fc6100f7366004610958565b610245565b6040519081526020015b60405180910390f35b6100fc61011d36600461098f565b610258565b6101497f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a981565b6040516001600160a01b039091168152602001610106565b6100fc61016f3660046109aa565b610279565b61017c610526565b005b6100fc61018c366004610a8f565b610539565b600254610149906001600160a01b031681565b5f546001600160a01b0316610149565b6100fc6101c236600461098f565b6105ae565b6100fc6101d5366004610b00565b610608565b61017c6101e836600461098f565b610624565b61020f6101fb36600461098f565b60016020525f908152604090205460ff1681565b6040519015158152602001610106565b61017c61022d366004610b47565b6106e4565b61017c61024036600461098f565b61074a565b5f610251338484610279565b9392505050565b6002545f9061027390339084906001600160a01b0316610279565b92915050565b5f836001600160a01b0381163314806102a05750335f9081526001602052604090205460ff165b80610334575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063e985e9c590604401602060405180830381865afa158015610310573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103349190610b73565b806103435750610343816107c3565b6103e05760405162461bcd60e51b815260206004820152605b60248201527f526576657273655265676973747261723a2043616c6c6572206973206e6f742060448201527f6120636f6e74726f6c6c6572206f7220617574686f726973656420627920616460648201527f6472657373206f7220746865206164647265737320697473656c660000000000608482015260a4015b60405180910390fd5b5f6103ea8661083a565b604080517f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e2602080830191909152818301849052825180830384018152606090920192839052815191012091925081906001600160a01b038916907f6ada868dd3058cf77a48a74489fd7963688e5464b2b0fa957ace976243270e92905f90a36040516305ef2c7f60e41b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26004820152602481018390526001600160a01b03878116604483015286811660648301525f60848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610505575f80fd5b505af1158015610517573d5f803e3d5ffd5b50929998505050505050505050565b61052e61089c565b6105375f6108f5565b565b5f80610546868686610279565b604051637737221360e01b81529091506001600160a01b038516906377372213906105779084908790600401610b8e565b5f604051808303815f87803b15801561058e575f80fd5b505af11580156105a0573d5f803e3d5ffd5b509298975050505050505050565b5f7f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26105d98361083a565b604080516020810193909352820152606001604051602081830303815290604052805190602001209050919050565b6002545f9061027390339081906001600160a01b031685610539565b61062c61089c565b6001600160a01b03811661069b5760405162461bcd60e51b815260206004820152603060248201527f526576657273655265676973747261723a205265736f6c76657220616464726560448201526f07373206d757374206e6f7420626520360841b60648201526084016103d7565b600280546001600160a01b0319166001600160a01b0383169081179091556040517feae17a84d9eb83d8c8eb317f9e7d64857bc363fa51674d996c023f4340c577cf905f90a250565b6106ec61089c565b6001600160a01b0382165f81815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b61075261089c565b6001600160a01b0381166107b75760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016103d7565b6107c0816108f5565b50565b5f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801561081e575060408051601f3d908101601f1916820190925261081b91810190610be2565b60015b61082957505f919050565b6001600160a01b0316331492915050565b5f60285b8015610891575f19016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a81536010909204915f19016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a815360108304925061083e565b505060285f20919050565b5f546001600160a01b031633146105375760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016103d7565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146107c0575f80fd5b5f8060408385031215610969575f80fd5b823561097481610944565b9150602083013561098481610944565b809150509250929050565b5f6020828403121561099f575f80fd5b813561025181610944565b5f805f606084860312156109bc575f80fd5b83356109c781610944565b925060208401356109d781610944565b915060408401356109e781610944565b809150509250925092565b634e487b7160e01b5f52604160045260245ffd5b5f82601f830112610a15575f80fd5b813567ffffffffffffffff80821115610a3057610a306109f2565b604051601f8301601f19908116603f01168101908282118183101715610a5857610a586109f2565b81604052838152866020858801011115610a70575f80fd5b836020870160208301375f602085830101528094505050505092915050565b5f805f8060808587031215610aa2575f80fd5b8435610aad81610944565b93506020850135610abd81610944565b92506040850135610acd81610944565b9150606085013567ffffffffffffffff811115610ae8575f80fd5b610af487828801610a06565b91505092959194509250565b5f60208284031215610b10575f80fd5b813567ffffffffffffffff811115610b26575f80fd5b610b3284828501610a06565b949350505050565b80151581146107c0575f80fd5b5f8060408385031215610b58575f80fd5b8235610b6381610944565b9150602083013561098481610b3a565b5f60208284031215610b83575f80fd5b815161025181610b3a565b8281525f60206040602084015283518060408501525f5b81811015610bc157858101830151858201606001528201610ba5565b505f606082860101526060601f19601f830116850101925050509392505050565b5f60208284031215610bf2575f80fd5b81516102518161094456fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2":"0x9df67c91f1bfcb4d966cf764e9218685e7c59e8a","0x1f5b7623941da966ad7183d9cbb6db584f6d4add26919ac31a2d3f19a164e7e1":"0x1","0xbe5de2149ce76ca5934fa63455cd675fd52e2d30f3328985d298a627ca0f05e9":"0x1"}},"0xf8c26340c1eaea6c7ff1760b25005e1306953572":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061010b5760003560e01c80638c87a4ea116100a2578063b87abc1111610071578063b87abc1114610244578063c597407314610257578063ce92b33e1461026a578063e837ae741461027d578063ec129eea146102905761010b565b80638c87a4ea146101ea5780638f69c188146101fd578063a3557e6c14610210578063b85afd28146102235761010b565b806347c81699116100de57806347c8169914610181578063672b9f81146101945780636ccbae5f146101b55780637b103999146101d55761010b565b80631bd8cc1a146101105780631be5e7ed146101395780632c3d376d14610159578063310bd74b1461016c575b600080fd5b61012361011e3660046117b4565b6102a3565b6040516101309190611eee565b60405180910390f35b61014c610147366004611aec565b6104f2565b6040516101309190611fd6565b61014c610167366004611b21565b610673565b61017f61017a366004611b21565b610714565b005b61017f61018f3660046119b5565b6107c0565b6101a76101a2366004611b94565b6108ef565b604051610130929190611fe7565b6101c86101c3366004611b21565b6109c3565b604051610130919061204c565b6101dd6109d5565b6040516101309190611ea9565b6101236101f836600461191d565b6109e5565b61017f61020b366004611878565b610a74565b61017f61021e366004611878565b610af0565b610236610231366004611951565b610b1b565b604051610130929190611eff565b61017f610252366004611b3f565b610ca9565b61017f610265366004611a39565b610d43565b61017f610278366004611808565b610df9565b61017f61028b366004611808565b610e97565b61017f61029e366004611808565b610f4e565b60015460405163b3f9e4cb60e01b815260609183916001600160a01b039091169063b3f9e4cb906102d890849060040161204c565b60206040518083038186803b1580156102f057600080fd5b505afa158015610304573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610328919081019061178e565b6001600160a01b0316306001600160a01b0316146103615760405162461bcd60e51b81526004016103589061201c565b60405180910390fd5b604080518581526020808702820101909152849060609082801561039957816020015b60608152602001906001900390816103845790505b506000868152600360205260408120549192505b838110156104e557600087815260026020908152604080832085845290915290208989838181106103da57fe5b602002820190508035601e19368490030181126103f657600080fd5b909101602081019150356001600160401b0381111561041457600080fd5b3681900382131561042457600080fd5b604051610432929190611e70565b9081526040805160209281900383018120805460026001821615610100026000190190911604601f810185900485028301850190935282825290929091908301828280156104c15780601f10610496576101008083540402835291602001916104c1565b820191906000526020600020905b8154815290600101906020018083116104a457829003601f168201915b50505050508382815181106104d257fe5b60209081029190910101526001016103ad565b5090979650505050505050565b60015460405163b3f9e4cb60e01b815260609183916001600160a01b039091169063b3f9e4cb9061052790849060040161204c565b60206040518083038186803b15801561053f57600080fd5b505afa158015610553573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610577919081019061178e565b6001600160a01b0316306001600160a01b0316146105a75760405162461bcd60e51b81526004016103589061201c565b6000838152600260209081526040808320600383528184205484529091529081902090516105d6908690611e7d565b9081526040805160209281900383018120805460026001821615610100026000190190911604601f810185900485028301850190935282825290929091908301828280156106655780601f1061063a57610100808354040283529160200191610665565b820191906000526020600020905b81548152906001019060200180831161064857829003601f168201915b505050505091505092915050565b60008181526004602090815260409182902080548351601f60026000196101006001861615020190931692909204918201849004840281018401909452808452606093928301828280156107085780601f106106dd57610100808354040283529160200191610708565b820191906000526020600020905b8154815290600101906020018083116106eb57829003601f168201915b50505050509050919050565b60015460405163430c208160e01b815282916001600160a01b03169063430c2081906107469033908590600401611ec5565b60206040518083038186803b15801561075e57600080fd5b505afa158015610772573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506107969190810190611997565b6107b25760405162461bcd60e51b81526004016103589061202c565b6107bc4283610fec565b5050565b60015460405163430c208160e01b815282916001600160a01b03169063430c2081906107f29033908590600401611ec5565b60206040518083038186803b15801561080a57600080fd5b505afa15801561081e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506108429190810190611997565b61085e5760405162461bcd60e51b81526004016103589061202c565b6108e7600360008481526020019081526020016000205487878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061108e915050565b505050505050565b60015460405163b3f9e4cb60e01b8152606091829184916001600160a01b03169063b3f9e4cb9061092490849060040161204c565b60206040518083038186803b15801561093c57600080fd5b505afa158015610950573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610974919081019061178e565b6001600160a01b0316306001600160a01b0316146109a45760405162461bcd60e51b81526004016103589061201c565b6109ad85610673565b92506109b983856104f2565b9150509250929050565b60009081526020819052604090205490565b6001546001600160a01b03165b90565b6060600082519050606081604051908082528060200260200182016040528015610a2357816020015b6060815260200190600190039081610a0e5790505b50905060005b82811015610a6c57610a4d858281518110610a4057fe5b6020026020010151610673565b828281518110610a5957fe5b6020908102919091010152600101610a29565b509392505050565b610acf63ce92b33e60e01b858585604051602401610a9493929190611f24565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092178252519020838361129f565b600082815260036020526040902054610aea908585856113c3565b50505050565b610b1063ec129eea60e01b858585604051602401610a9493929190611f24565b610aea84848461140a565b60015460405163b3f9e4cb60e01b8152606091829184916001600160a01b03169063b3f9e4cb90610b5090849060040161204c565b60206040518083038186803b158015610b6857600080fd5b505afa158015610b7c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610ba0919081019061178e565b6001600160a01b0316306001600160a01b031614610bd05760405162461bcd60e51b81526004016103589061201c565b8451604080518281526020808402820101909152818015610c0557816020015b6060815260200190600190039081610bf05790505b50935080604051908082528060200260200182016040528015610c3c57816020015b6060815260200190600190039081610c275790505b50925060005b81811015610c9f57610c67878281518110610c5957fe5b6020026020010151876108ef565b8651879084908110610c7557fe5b60200260200101868481518110610c8857fe5b602090810291909101019190915252600101610c42565b5050509250929050565b610d3463310bd74b60e01b84604051602401610cc5919061204c565b60408051601f19818403018152918152602080830180516001600160e01b03166001600160e01b031990951694909417845291519092208251601f8601839004830281018301909352848352918691869086908190840183828082843760009201919091525061129f92505050565b610d3e4284610fec565b505050565b610d676347c8169960e01b8888888888604051602401610cc5959493929190611f96565b610df0600360008581526020019081526020016000205488888080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8c018190048102820181019092528a815292508a915089908190840183828082843760009201919091525089925061108e915050565b50505050505050565b60015460405163430c208160e01b815282916001600160a01b03169063430c208190610e2b9033908590600401611ec5565b60206040518083038186803b158015610e4357600080fd5b505afa158015610e57573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610e7b9190810190611997565b610acf5760405162461bcd60e51b81526004016103589061202c565b6005546040516355138f0d60e11b81526001600160a01b039091169063aa271e1a90610ec7903390600401611eb7565b60206040518083038186803b158015610edf57600080fd5b505afa158015610ef3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610f179190810190611997565b610f335760405162461bcd60e51b81526004016103589061203c565b600081815260036020526040902054610d3e908484846113c3565b60015460405163430c208160e01b815282916001600160a01b03169063430c208190610f809033908590600401611ec5565b60206040518083038186803b158015610f9857600080fd5b505afa158015610fac573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610fd09190810190611997565b610b105760405162461bcd60e51b81526004016103589061202c565b600081815260036020526040808220849055600154905163538361a760e01b81526001600160a01b039091169163538361a79161102d91859160040161205a565b600060405180830381600087803b15801561104757600080fd5b505af115801561105b573d6000803e3d6000fd5b50506040518392507f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9150600090a25050565b825160208085019190912060008381526002835260408082208883529093528281209251919290916110c1908790611e7d565b908152604051602091819003919091018120546001805463538361a760e01b84526002918316156101000260001901909216041592506001600160a01b03169063538361a7906111179086908690600401612075565b600060405180830381600087803b15801561113157600080fd5b505af1158015611145573d6000803e3d6000fd5b50505060008481526002602090815260408083208a8452909152908190209051869250611173908890611e7d565b90815260200160405180910390209080519060200190611194929190611521565b50600082815260046020526040902054600260001961010060018416150201909116046111dc57600082815260046020908152604090912086516111da92880190611521565b505b801561123157846040516111f09190611e7d565b6040518091039020837f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f86876040516112289190611fd6565b60405180910390a35b8360405161123f9190611e7d565b6040518091039020856040516112559190611e7d565b6040518091039020847f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d92888860405161128f929190611fe7565b60405180910390a4505050505050565b6000828152602081815260408083205490519092916112f59185916112e9916112ce918a913091899101611e39565b60405160208183030381529060405280519060200120611414565b9063ffffffff61144416565b90506001600160a01b0381161580159061138c575060015460405163430c208160e01b81526001600160a01b039091169063430c20819061133c9084908890600401611ee0565b60206040518083038186803b15801561135457600080fd5b505afa158015611368573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061138c9190810190611997565b6113a85760405162461bcd60e51b81526004016103589061200c565b50505060009081526020819052604090208054600101905550565b825160005b818110156108e757611402868683815181106113e057fe5b60200260200101518684815181106113f457fe5b60200260200101518661108e565b6001016113c8565b610f334282610fec565b6000816040516020016114279190611e89565b604051602081830303815290604052805190602001209050919050565b600081516041146114575750600061151b565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a082111561149d576000935050505061151b565b8060ff16601b141580156114b557508060ff16601c14155b156114c6576000935050505061151b565b600186828585604051600081526020016040526040516114e99493929190611f58565b6020604051602081039080840390855afa15801561150b573d6000803e3d6000fd5b5050506020604051035193505050505b92915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061156257805160ff191683800117855561158f565b8280016001018555821561158f579182015b8281111561158f578251825591602001919060010190611574565b5061159b92915061159f565b5090565b6109e291905b8082111561159b57600081556001016115a5565b805161151b816121a4565b60008083601f8401126115d657600080fd5b5081356001600160401b038111156115ed57600080fd5b60208301915083602082028301111561160557600080fd5b9250929050565b600082601f83011261161d57600080fd5b813561163061162b826120a9565b612083565b81815260209384019390925082018360005b8381101561166e57813586016116588882611734565b8452506020928301929190910190600101611642565b5050505092915050565b600082601f83011261168957600080fd5b813561169761162b826120a9565b915081818352602084019350602081019050838560208402820111156116bc57600080fd5b60005b8381101561166e57816116d28882611783565b84525060209283019291909101906001016116bf565b805161151b816121bb565b60008083601f84011261170557600080fd5b5081356001600160401b0381111561171c57600080fd5b60208301915083600182028301111561160557600080fd5b600082601f83011261174557600080fd5b813561175361162b826120c9565b9150808252602083016020830185838301111561176f57600080fd5b61177a83828461214b565b50505092915050565b803561151b816121c4565b6000602082840312156117a057600080fd5b60006117ac84846115b9565b949350505050565b6000806000604084860312156117c957600080fd5b83356001600160401b038111156117df57600080fd5b6117eb868287016115c4565b935093505060206117fe86828701611783565b9150509250925092565b60008060006060848603121561181d57600080fd5b83356001600160401b0381111561183357600080fd5b61183f8682870161160c565b93505060208401356001600160401b0381111561185b57600080fd5b6118678682870161160c565b92505060406117fe86828701611783565b6000806000806080858703121561188e57600080fd5b84356001600160401b038111156118a457600080fd5b6118b08782880161160c565b94505060208501356001600160401b038111156118cc57600080fd5b6118d88782880161160c565b93505060406118e987828801611783565b92505060608501356001600160401b0381111561190557600080fd5b61191187828801611734565b91505092959194509250565b60006020828403121561192f57600080fd5b81356001600160401b0381111561194557600080fd5b6117ac84828501611678565b6000806040838503121561196457600080fd5b82356001600160401b0381111561197a57600080fd5b61198685828601611678565b92505060206109b985828601611783565b6000602082840312156119a957600080fd5b60006117ac84846116e8565b6000806000806000606086880312156119cd57600080fd5b85356001600160401b038111156119e357600080fd5b6119ef888289016116f3565b955095505060208601356001600160401b03811115611a0d57600080fd5b611a19888289016116f3565b93509350506040611a2c88828901611783565b9150509295509295909350565b60008060008060008060006080888a031215611a5457600080fd5b87356001600160401b03811115611a6a57600080fd5b611a768a828b016116f3565b975097505060208801356001600160401b03811115611a9457600080fd5b611aa08a828b016116f3565b95509550506040611ab38a828b01611783565b93505060608801356001600160401b03811115611acf57600080fd5b611adb8a828b016116f3565b925092505092959891949750929550565b60008060408385031215611aff57600080fd5b82356001600160401b03811115611b1557600080fd5b61198685828601611734565b600060208284031215611b3357600080fd5b60006117ac8484611783565b600080600060408486031215611b5457600080fd5b6000611b608686611783565b93505060208401356001600160401b03811115611b7c57600080fd5b611b88868287016116f3565b92509250509250925092565b60008060408385031215611ba757600080fd5b60006119868585611783565b6000611bbf8383611ccb565b9392505050565b611bcf8161212a565b82525050565b611bcf81612108565b611bcf611bea82612108565b612183565b6000611bfa826120f6565b611c0481856120fa565b935083602082028501611c16856120f0565b8060005b85811015611c505784840389528151611c338582611bb3565b9450611c3e836120f0565b60209a909a0199925050600101611c1a565b5091979650505050505050565b611bcf816109e2565b611bcf611c72826109e2565b6109e2565b611bcf81612135565b6000611c8c83856120fa565b9350611c9983858461214b565b611ca283612194565b9093019392505050565b6000611cb88385612103565b9350611cc583858461214b565b50500190565b6000611cd6826120f6565b611ce081856120fa565b9350611cf0818560208601612157565b611ca281612194565b6000611d04826120f6565b611d0e8185612103565b9350611d1e818560208601612157565b9290920192915050565b6000611d35601c83612103565b7f19457468657265756d205369676e6564204d6573736167653a0a3332000000008152601c0192915050565b6000611d6e6011836120fa565b70494e56414c49445f5349474e415455524560781b815260200192915050565b6000611d9b601d836120fa565b7f5245534f4c5645525f44455441434845445f46524f4d5f444f4d41494e000000815260200192915050565b6000611dd4601f836120fa565b7f53454e4445525f49535f4e4f545f415050524f5645445f4f525f4f574e455200815260200192915050565b6000611e0d6014836120fa565b7329a2a72222a92fa4a9afa727aa2fa6a4a72a22a960611b815260200192915050565b611bcf81612124565b6000611e458286611c66565b602082019150611e558285611bde565b601482019150611e658284611c66565b506020019392505050565b60006117ac828486611cac565b6000611bbf8284611cf9565b6000611e9482611d28565b9150611ea08284611c66565b50602001919050565b6020810161151b8284611bd5565b6020810161151b8284611bc6565b60408101611ed38285611bc6565b611bbf6020830184611c5d565b60408101611ed38285611bd5565b60208082528101611bbf8184611bef565b60408082528101611f108185611bef565b905081810360208301526117ac8184611bef565b60608082528101611f358186611bef565b90508181036020830152611f498185611bef565b90506117ac6040830184611c5d565b60808101611f668287611c5d565b611f736020830186611e30565b611f806040830185611c5d565b611f8d6060830184611c5d565b95945050505050565b60608082528101611fa8818789611c80565b90508181036020830152611fbd818587611c80565b9050611fcc6040830184611c5d565b9695505050505050565b60208082528101611bbf8184611ccb565b60408082528101611ff88185611ccb565b905081810360208301526117ac8184611ccb565b6020808252810161151b81611d61565b6020808252810161151b81611d8e565b6020808252810161151b81611dc7565b6020808252810161151b81611e00565b6020810161151b8284611c5d565b604081016120688285611c5d565b611bbf6020830184611c77565b60408101611ed38285611c5d565b6040518181016001600160401b03811182821017156120a157600080fd5b604052919050565b60006001600160401b038211156120bf57600080fd5b5060209081020190565b60006001600160401b038211156120df57600080fd5b506020601f91909101601f19160190565b60200190565b5190565b90815260200190565b919050565b600061151b82612118565b151590565b6001600160a01b031690565b60ff1690565b600061151b82612140565b600061151b826109e2565b600061151b82612108565b82818337506000910152565b60005b8381101561217257818101518382015260200161215a565b83811115610aea5750506000910152565b600061151b82600061151b8261219e565b601f01601f191690565b60601b90565b6121ad81612108565b81146121b857600080fd5b50565b6121ad81612113565b6121ad816109e256fea365627a7a723158207a1d8dfd286d14fcafd1812a4c44813691ac746a5a23fa711ac5551c9509654d6c6578706572696d656e74616cf564736f6c634300050c0040","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x5":"0x4a3c194eb88966178bfdd81744dddafed611b830"}},"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa":{"nonce":93,"balance":"0x35aac60bbae01d424b","code":"0x","storage":{}}},"best_block_number":"0x5d"} \ No newline at end of file From 4393d22786798f0dce73ccf2113eb9b589b7af3f Mon Sep 17 00:00:00 2001 From: derain Date: Thu, 23 May 2024 13:53:47 +0300 Subject: [PATCH 18/21] [REG-1273] - Rollback to stable nightly build for Anvil. Fix ENS contracts versions. --- artifacts/LegacyENSRegistry.json | 4 ++-- artifacts/LegacyETHRegistrarController.json | 4 ++-- contracts/@ens/LegacyENSRegistry.sol | 2 +- contracts/@ens/LegacyETHRegistrarController.sol | 2 +- contracts/custody/_refs.sol | 2 +- ens-config.json | 8 ++++---- package.json | 4 ++-- sandbox/anvil-server.ts | 6 ++++++ sandbox/foundry-cli.ts | 2 +- sandbox/state.json | 2 +- tsconfig.json | 10 ++++++++-- 11 files changed, 29 insertions(+), 17 deletions(-) diff --git a/artifacts/LegacyENSRegistry.json b/artifacts/LegacyENSRegistry.json index 95a43430..6b76a239 100644 --- a/artifacts/LegacyENSRegistry.json +++ b/artifacts/LegacyENSRegistry.json @@ -225,8 +225,8 @@ "type": "function" } ], - "bytecode": "0x608060405234801561000f575f80fd5b505f8080526020527fad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb580546001600160a01b031916331790556104d8806100555f395ff3fe608060405234801561000f575f80fd5b506004361061007a575f3560e01c806314ab90381161005857806314ab90381461010357806316a25cbd146101165780631896f70a146101625780635b0fc9c314610175575f80fd5b80630178b8bf1461007e57806302571be3146100c657806306ab5923146100ee575b5f80fd5b6100a961008c366004610403565b5f908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100a96100d4366004610403565b5f908152602081905260409020546001600160a01b031690565b6101016100fc366004610435565b610188565b005b610101610111366004610467565b610242565b610149610124366004610403565b5f90815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100bd565b6101016101703660046104a1565b6102e2565b6101016101833660046104a1565b610374565b5f8381526020819052604090205483906001600160a01b031633146101ab575f80fd5b60408051602080820187905281830186905282518083038401815260608301808552815191909201206001600160a01b0386169091529151859187917fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829181900360800190a35f90815260208190526040902080546001600160a01b0319166001600160a01b039390931692909217909155505050565b5f8281526020819052604090205482906001600160a01b03163314610265575f80fd5b60405167ffffffffffffffff8316815283907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a2505f91825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b5f8281526020819052604090205482906001600160a01b03163314610305575f80fd5b6040516001600160a01b038316815283907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a2505f9182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b5f8281526020819052604090205482906001600160a01b03163314610397575f80fd5b6040516001600160a01b038316815283907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a2505f9182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b5f60208284031215610413575f80fd5b5035919050565b80356001600160a01b0381168114610430575f80fd5b919050565b5f805f60608486031215610447575f80fd5b833592506020840135915061045e6040850161041a565b90509250925092565b5f8060408385031215610478575f80fd5b82359150602083013567ffffffffffffffff81168114610496575f80fd5b809150509250929050565b5f80604083850312156104b2575f80fd5b823591506104c26020840161041a565b9050925092905056fea164736f6c6343000818000a", - "deployedBytecode": "0x608060405234801561000f575f80fd5b506004361061007a575f3560e01c806314ab90381161005857806314ab90381461010357806316a25cbd146101165780631896f70a146101625780635b0fc9c314610175575f80fd5b80630178b8bf1461007e57806302571be3146100c657806306ab5923146100ee575b5f80fd5b6100a961008c366004610403565b5f908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100a96100d4366004610403565b5f908152602081905260409020546001600160a01b031690565b6101016100fc366004610435565b610188565b005b610101610111366004610467565b610242565b610149610124366004610403565b5f90815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100bd565b6101016101703660046104a1565b6102e2565b6101016101833660046104a1565b610374565b5f8381526020819052604090205483906001600160a01b031633146101ab575f80fd5b60408051602080820187905281830186905282518083038401815260608301808552815191909201206001600160a01b0386169091529151859187917fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829181900360800190a35f90815260208190526040902080546001600160a01b0319166001600160a01b039390931692909217909155505050565b5f8281526020819052604090205482906001600160a01b03163314610265575f80fd5b60405167ffffffffffffffff8316815283907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a2505f91825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b5f8281526020819052604090205482906001600160a01b03163314610305575f80fd5b6040516001600160a01b038316815283907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a2505f9182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b5f8281526020819052604090205482906001600160a01b03163314610397575f80fd5b6040516001600160a01b038316815283907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a2505f9182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b5f60208284031215610413575f80fd5b5035919050565b80356001600160a01b0381168114610430575f80fd5b919050565b5f805f60608486031215610447575f80fd5b833592506020840135915061045e6040850161041a565b90509250925092565b5f8060408385031215610478575f80fd5b82359150602083013567ffffffffffffffff81168114610496575f80fd5b809150509250929050565b5f80604083850312156104b2575f80fd5b823591506104c26020840161041a565b9050925092905056fea164736f6c6343000818000a", + "bytecode": "0x608060405234801561001057600080fd5b5060008080526020527fad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb580546001600160a01b031916331790556104f6806100596000396000f3fe608060405234801561001057600080fd5b506004361061007d5760003560e01c806314ab90381161005b57806314ab90381461010957806316a25cbd1461011c5780631896f70a146101695780635b0fc9c31461017c57600080fd5b80630178b8bf1461008257806302571be3146100cb57806306ab5923146100f4575b600080fd5b6100ae610090366004610416565b6000908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100ae6100d9366004610416565b6000908152602081905260409020546001600160a01b031690565b61010761010236600461044b565b61018f565b005b610107610117366004610480565b61024c565b61015061012a366004610416565b600090815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100c2565b6101076101773660046104bd565b6102ef565b61010761018a3660046104bd565b610384565b60008381526020819052604090205483906001600160a01b031633146101b457600080fd5b60408051602080820187905281830186905282518083038401815260608301808552815191909201206001600160a01b0386169091529151859187917fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829181900360800190a3600090815260208190526040902080546001600160a01b0319166001600160a01b039390931692909217909155505050565b60008281526020819052604090205482906001600160a01b0316331461027157600080fd5b60405167ffffffffffffffff8316815283907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a250600091825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b60008281526020819052604090205482906001600160a01b0316331461031457600080fd5b6040516001600160a01b038316815283907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a25060009182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b60008281526020819052604090205482906001600160a01b031633146103a957600080fd5b6040516001600160a01b038316815283907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a25060009182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b60006020828403121561042857600080fd5b5035919050565b80356001600160a01b038116811461044657600080fd5b919050565b60008060006060848603121561046057600080fd5b83359250602084013591506104776040850161042f565b90509250925092565b6000806040838503121561049357600080fd5b82359150602083013567ffffffffffffffff811681146104b257600080fd5b809150509250929050565b600080604083850312156104d057600080fd5b823591506104e06020840161042f565b9050925092905056fea164736f6c6343000811000a", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061007d5760003560e01c806314ab90381161005b57806314ab90381461010957806316a25cbd1461011c5780631896f70a146101695780635b0fc9c31461017c57600080fd5b80630178b8bf1461008257806302571be3146100cb57806306ab5923146100f4575b600080fd5b6100ae610090366004610416565b6000908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100ae6100d9366004610416565b6000908152602081905260409020546001600160a01b031690565b61010761010236600461044b565b61018f565b005b610107610117366004610480565b61024c565b61015061012a366004610416565b600090815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100c2565b6101076101773660046104bd565b6102ef565b61010761018a3660046104bd565b610384565b60008381526020819052604090205483906001600160a01b031633146101b457600080fd5b60408051602080820187905281830186905282518083038401815260608301808552815191909201206001600160a01b0386169091529151859187917fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829181900360800190a3600090815260208190526040902080546001600160a01b0319166001600160a01b039390931692909217909155505050565b60008281526020819052604090205482906001600160a01b0316331461027157600080fd5b60405167ffffffffffffffff8316815283907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a250600091825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b60008281526020819052604090205482906001600160a01b0316331461031457600080fd5b6040516001600160a01b038316815283907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a25060009182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b60008281526020819052604090205482906001600160a01b031633146103a957600080fd5b6040516001600160a01b038316815283907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a25060009182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b60006020828403121561042857600080fd5b5035919050565b80356001600160a01b038116811461044657600080fd5b919050565b60008060006060848603121561046057600080fd5b83359250602084013591506104776040850161042f565b90509250925092565b6000806040838503121561049357600080fd5b82359150602083013567ffffffffffffffff811681146104b257600080fd5b809150509250929050565b600080604083850312156104d057600080fd5b823591506104e06020840161042f565b9050925092905056fea164736f6c6343000811000a", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/artifacts/LegacyETHRegistrarController.json b/artifacts/LegacyETHRegistrarController.json index ccf09298..1b3fc0ad 100644 --- a/artifacts/LegacyETHRegistrarController.json +++ b/artifacts/LegacyETHRegistrarController.json @@ -561,8 +561,8 @@ "type": "function" } ], - "bytecode": "0x608060405234801561001057600080fd5b50604051611a13380380611a138339818101604052608081101561003357600080fd5b5080516020820151604080840151606090940151600080546001600160a01b031916331780825592519495939491926001600160a01b0316917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a381811161009d57600080fd5b600180546001600160a01b039586166001600160a01b031991821617909155600280549490951693169290921790925560039190915560045561192e806100e56000396000f3fe60806040526004361061012a5760003560e01c80638d839ffe116100ab578063aeb8ce9b1161006f578063aeb8ce9b146105d7578063ce1e09c014610688578063f14fcbc81461069d578063f2fde38b146106c7578063f49826be146106fa578063f7a16963146107b95761012a565b80638d839ffe1461045d5780638da5cb5b146104725780638f32d59b146104a35780639791c097146104b8578063acf1a841146105695761012a565b80637e324479116100f25780637e324479146102b8578063839df945146102e857806383e7f6ff1461031257806385f6d155146103c55780638a95b09f146104485761012a565b806301ffc9a71461012f5780633ccfd60b146101775780633d86c52f1461018e578063530e784f14610270578063715018a6146102a3575b600080fd5b34801561013b57600080fd5b506101636004803603602081101561015257600080fd5b50356001600160e01b031916610881565b604080519115158252519081900360200190f35b34801561018357600080fd5b5061018c610a12565b005b34801561019a57600080fd5b5061025e600480360360a08110156101b157600080fd5b810190602081018135600160201b8111156101cb57600080fd5b8201836020820111156101dd57600080fd5b803590602001918460018302840111600160201b831117156101fe57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b0383358116945060208401359360408101358216935060600135169050610a53565b60408051918252519081900360200190f35b34801561027c57600080fd5b5061018c6004803603602081101561029357600080fd5b50356001600160a01b0316610b42565b3480156102af57600080fd5b5061018c610ba3565b3480156102c457600080fd5b5061018c600480360360408110156102db57600080fd5b5080359060200135610bfe565b3480156102f457600080fd5b5061025e6004803603602081101561030b57600080fd5b5035610c1a565b34801561031e57600080fd5b5061025e6004803603604081101561033557600080fd5b810190602081018135600160201b81111561034f57600080fd5b82018360208201111561036157600080fd5b803590602001918460018302840111600160201b8311171561038257600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505091359250610c2c915050565b61018c600480360360808110156103db57600080fd5b810190602081018135600160201b8111156103f557600080fd5b82018360208201111561040757600080fd5b803590602001918460018302840111600160201b8311171561042857600080fd5b91935091506001600160a01b038135169060208101359060400135610d9e565b34801561045457600080fd5b5061025e610de9565b34801561046957600080fd5b5061025e610df0565b34801561047e57600080fd5b50610487610df6565b604080516001600160a01b039092168252519081900360200190f35b3480156104af57600080fd5b50610163610e05565b3480156104c457600080fd5b50610163600480360360208110156104db57600080fd5b810190602081018135600160201b8111156104f557600080fd5b82018360208201111561050757600080fd5b803590602001918460018302840111600160201b8311171561052857600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610e16945050505050565b61018c6004803603604081101561057f57600080fd5b810190602081018135600160201b81111561059957600080fd5b8201836020820111156105ab57600080fd5b803590602001918460018302840111600160201b831117156105cc57600080fd5b919350915035610e2b565b3480156105e357600080fd5b50610163600480360360208110156105fa57600080fd5b810190602081018135600160201b81111561061457600080fd5b82018360208201111561062657600080fd5b803590602001918460018302840111600160201b8311171561064757600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610fcf945050505050565b34801561069457600080fd5b5061025e611069565b3480156106a957600080fd5b5061018c600480360360208110156106c057600080fd5b503561106f565b3480156106d357600080fd5b5061018c600480360360208110156106ea57600080fd5b50356001600160a01b03166110a1565b34801561070657600080fd5b5061025e6004803603606081101561071d57600080fd5b810190602081018135600160201b81111561073757600080fd5b82018360208201111561074957600080fd5b803590602001918460018302840111600160201b8311171561076a57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b0383351693505050602001356110bb565b61018c600480360360c08110156107cf57600080fd5b810190602081018135600160201b8111156107e957600080fd5b8201836020820111156107fb57600080fd5b803590602001918460018302840111600160201b8311171561081c57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b038335811694506020840135936040810135935060608101358216925060800135166110d3565b604080517f737570706f727473496e74657266616365286279746573342900000000000000815290519081900360190190206000906001600160e01b0319838116911614806109c05750604080517472656e657728737472696e672c75696e743235362960581b815290519081900360150181209080602861186a8239604080519182900360280182206e636f6d6d697428627974657333322960881b8352905191829003600f01822090925090806026611892823960260190506040518091039020604051808070617661696c61626c6528737472696e672960781b8152506011019050604051809103902060405180807f72656e74507269636528737472696e672c75696e7432353629000000000000008152506019019050604051809103902018181818186001600160e01b031916826001600160e01b031916145b80610a0c5750604051808061182a60409139604080519182900301812091508060426118b8823960420190506040518091039020186001600160e01b031916826001600160e01b031916145b92915050565b610a1a610e05565b610a2357600080fd5b6040513390303180156108fc02916000818181858888f19350505050158015610a50573d6000803e3d6000fd5b50565b845160208601206000906001600160a01b038416158015610a7b57506001600160a01b038316155b15610acb57604080516020808201939093526bffffffffffffffffffffffff19606089901b1681830152605480820188905282518083039091018152607490910190915280519101209050610b39565b6001600160a01b038416610ade57600080fd5b604080516020808201939093526bffffffffffffffffffffffff19606089811b82168385015287811b8216605484015286901b166068820152607c80820188905282518083039091018152609c909101909152805191012090505b95945050505050565b610b4a610e05565b610b5357600080fd5b600280546001600160a01b0319166001600160a01b0383811691909117918290556040519116907ff261845a790fe29bbd6631e2ca4a5bdc83e6eed7c3271d9590d97287e00e912390600090a250565b610bab610e05565b610bb457600080fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b610c06610e05565b610c0f57600080fd5b600391909155600455565b60056020526000908152604090205481565b815160208084019190912060025460015460408051636b727d4360e11b81526004810185905290516000956001600160a01b03948516946350e9a715948a9491169263d6e4fa8692602480840193919291829003018186803b158015610c9157600080fd5b505afa158015610ca5573d6000803e3d6000fd5b505050506040513d6020811015610cbb57600080fd5b50516040516001600160e01b031960e085901b168152602481018290526044810188905260606004820190815283516064830152835189928291608490910190602087019080838360005b83811015610d1e578181015183820152602001610d06565b50505050905090810190601f168015610d4b5780820380516001836020036101000a031916815260200191505b5094505050505060206040518083038186803b158015610d6a57600080fd5b505afa158015610d7e573d6000803e3d6000fd5b505050506040513d6020811015610d9457600080fd5b5051949350505050565b610de285858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250889350879250869150806110d3565b5050505050565b6224ea0081565b60035481565b6000546001600160a01b031690565b6000546001600160a01b0316331490565b60006003610e2383611646565b101592915050565b6000610e6e84848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250869250610c2c915050565b905080341015610e7d57600080fd5b60008484604051808383808284376040805193909101839003832060015463c475abff60e01b855260048501829052602485018b90529151909750600096506001600160a01b03909116945063c475abff93506044808401936020935082900301818787803b158015610eef57600080fd5b505af1158015610f03573d6000803e3d6000fd5b505050506040513d6020811015610f1957600080fd5b5051905034831015610f565760405133903485900380156108fc02916000818181858888f19350505050158015610f54573d6000803e3d6000fd5b505b817f3da24c024582931cfaf8267d8ed24d13a82a8068d5bd337d30ec45cea4e506ae8787868560405180806020018481526020018381526020018281038252868682818152602001925080828437600083820152604051601f909101601f191690920182900397509095505050505050a2505050505050565b80516020820120600090610fe283610e16565b80156110625750600154604080516312dc929d60e31b81526004810184905290516001600160a01b03909216916396e494e891602480820192602092909190829003018186803b15801561103557600080fd5b505afa158015611049573d6000803e3d6000fd5b505050506040513d602081101561105f57600080fd5b50515b9392505050565b60045481565b6004546000828152600560205260409020544291011061108e57600080fd5b6000908152600560205260409020429055565b6110a9610e05565b6110b257600080fd5b610a508161172e565b60006110cb848484600080610a53565b949350505050565b60006110e28787868686610a53565b905060006110f188878461179c565b885160208a01209091508060006001600160a01b038716156114ac5760015460408051633f2891eb60e21b815260048101859052306024820152604481018c905290516001600160a01b039092169163fca247ac916064808201926020929091908290030181600087803b15801561116857600080fd5b505af115801561117c573d6000803e3d6000fd5b505050506040513d602081101561119257600080fd5b505160015460408051630ddf7fcb60e41b815290519293506000926001600160a01b039092169163ddf7fcb091600480820192602092909190829003018186803b1580156111df57600080fd5b505afa1580156111f3573d6000803e3d6000fd5b505050506040513d602081101561120957600080fd5b50516040805160208181019390935280820187905281518082038301815260608201808452815191850191909120600154633f15457f60e01b90925292519294506001600160a01b031692633f15457f92606480840193829003018186803b15801561127457600080fd5b505afa158015611288573d6000803e3d6000fd5b505050506040513d602081101561129e57600080fd5b505160408051630c4b7b8560e11b8152600481018490526001600160a01b038b8116602483015291519190921691631896f70a91604480830192600092919082900301818387803b1580156112f257600080fd5b505af1158015611306573d6000803e3d6000fd5b505050506001600160a01b0387161561139257876001600160a01b031663d5fa2b0082896040518363ffffffff1660e01b815260040180838152602001826001600160a01b03166001600160a01b0316815260200192505050600060405180830381600087803b15801561137957600080fd5b505af115801561138d573d6000803e3d6000fd5b505050505b60015460408051630a3b53db60e21b8152600481018690526001600160a01b038e81166024830152915191909216916328ed4f6c91604480830192600092919082900301818387803b1580156113e757600080fd5b505af11580156113fb573d6000803e3d6000fd5b50505050600160009054906101000a90046001600160a01b03166001600160a01b03166323b872dd308d866040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050600060405180830381600087803b15801561148e57600080fd5b505af11580156114a2573d6000803e3d6000fd5b505050505061154c565b6001600160a01b038616156114c057600080fd5b60015460408051633f2891eb60e21b8152600481018590526001600160a01b038d81166024830152604482018d90529151919092169163fca247ac9160648083019260209291908290030181600087803b15801561151d57600080fd5b505af1158015611531573d6000803e3d6000fd5b505050506040513d602081101561154757600080fd5b505190505b896001600160a01b0316837fca6abbe9d7f11422cb6ca7629fbf6fe9efb1c621f71ce8f02b9f2a230097404f8d87856040518080602001848152602001838152602001828103825285818151815260200191508051906020019080838360005b838110156115c45781810151838201526020016115ac565b50505050905090810190601f1680156115f15780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a3833411156116395760405133903486900380156108fc02916000818181858888f19350505050158015611637573d6000803e3d6000fd5b505b5050505050505050505050565b8051600090819081905b8082101561172557600085838151811061166657fe5b01602001516001600160f81b0319169050600160ff1b81101561168e57600183019250611719565b600760fd1b6001600160f81b0319821610156116af57600283019250611719565b600f60fc1b6001600160f81b0319821610156116d057600383019250611719565b601f60fb1b6001600160f81b0319821610156116f157600483019250611719565b603f60fa1b6001600160f81b03198216101561171257600583019250611719565b6006830192505b50600190920191611650565b50909392505050565b6001600160a01b03811661174157600080fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b600354600082815260056020526040812054909142910111156117be57600080fd5b600454600083815260056020526040902054429101116117dd57600080fd5b6117e684610fcf565b6117ef57600080fd5b600082815260056020526040812081905561180a8585610c2c565b90506224ea0084101561181c57600080fd5b803410156110cb57600080fdfe6d616b65436f6d6d69746d656e7457697468436f6e66696728737472696e672c616464726573732c627974657333322c616464726573732c6164647265737329726567697374657228737472696e672c616464726573732c75696e743235362c62797465733332296d616b65436f6d6d69746d656e7428737472696e672c616464726573732c6279746573333229726567697374657257697468436f6e66696728737472696e672c616464726573732c75696e743235362c627974657333322c616464726573732c6164647265737329a265627a7a72315820ba74b4e49afb22de09a9ebda5d073d93e2a2a7b2530ce50def390c32cac92ea064736f6c634300050c0032", - "deployedBytecode": "0x60806040526004361061012a5760003560e01c80638d839ffe116100ab578063aeb8ce9b1161006f578063aeb8ce9b146105d7578063ce1e09c014610688578063f14fcbc81461069d578063f2fde38b146106c7578063f49826be146106fa578063f7a16963146107b95761012a565b80638d839ffe1461045d5780638da5cb5b146104725780638f32d59b146104a35780639791c097146104b8578063acf1a841146105695761012a565b80637e324479116100f25780637e324479146102b8578063839df945146102e857806383e7f6ff1461031257806385f6d155146103c55780638a95b09f146104485761012a565b806301ffc9a71461012f5780633ccfd60b146101775780633d86c52f1461018e578063530e784f14610270578063715018a6146102a3575b600080fd5b34801561013b57600080fd5b506101636004803603602081101561015257600080fd5b50356001600160e01b031916610881565b604080519115158252519081900360200190f35b34801561018357600080fd5b5061018c610a12565b005b34801561019a57600080fd5b5061025e600480360360a08110156101b157600080fd5b810190602081018135600160201b8111156101cb57600080fd5b8201836020820111156101dd57600080fd5b803590602001918460018302840111600160201b831117156101fe57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b0383358116945060208401359360408101358216935060600135169050610a53565b60408051918252519081900360200190f35b34801561027c57600080fd5b5061018c6004803603602081101561029357600080fd5b50356001600160a01b0316610b42565b3480156102af57600080fd5b5061018c610ba3565b3480156102c457600080fd5b5061018c600480360360408110156102db57600080fd5b5080359060200135610bfe565b3480156102f457600080fd5b5061025e6004803603602081101561030b57600080fd5b5035610c1a565b34801561031e57600080fd5b5061025e6004803603604081101561033557600080fd5b810190602081018135600160201b81111561034f57600080fd5b82018360208201111561036157600080fd5b803590602001918460018302840111600160201b8311171561038257600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505091359250610c2c915050565b61018c600480360360808110156103db57600080fd5b810190602081018135600160201b8111156103f557600080fd5b82018360208201111561040757600080fd5b803590602001918460018302840111600160201b8311171561042857600080fd5b91935091506001600160a01b038135169060208101359060400135610d9e565b34801561045457600080fd5b5061025e610de9565b34801561046957600080fd5b5061025e610df0565b34801561047e57600080fd5b50610487610df6565b604080516001600160a01b039092168252519081900360200190f35b3480156104af57600080fd5b50610163610e05565b3480156104c457600080fd5b50610163600480360360208110156104db57600080fd5b810190602081018135600160201b8111156104f557600080fd5b82018360208201111561050757600080fd5b803590602001918460018302840111600160201b8311171561052857600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610e16945050505050565b61018c6004803603604081101561057f57600080fd5b810190602081018135600160201b81111561059957600080fd5b8201836020820111156105ab57600080fd5b803590602001918460018302840111600160201b831117156105cc57600080fd5b919350915035610e2b565b3480156105e357600080fd5b50610163600480360360208110156105fa57600080fd5b810190602081018135600160201b81111561061457600080fd5b82018360208201111561062657600080fd5b803590602001918460018302840111600160201b8311171561064757600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610fcf945050505050565b34801561069457600080fd5b5061025e611069565b3480156106a957600080fd5b5061018c600480360360208110156106c057600080fd5b503561106f565b3480156106d357600080fd5b5061018c600480360360208110156106ea57600080fd5b50356001600160a01b03166110a1565b34801561070657600080fd5b5061025e6004803603606081101561071d57600080fd5b810190602081018135600160201b81111561073757600080fd5b82018360208201111561074957600080fd5b803590602001918460018302840111600160201b8311171561076a57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b0383351693505050602001356110bb565b61018c600480360360c08110156107cf57600080fd5b810190602081018135600160201b8111156107e957600080fd5b8201836020820111156107fb57600080fd5b803590602001918460018302840111600160201b8311171561081c57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b038335811694506020840135936040810135935060608101358216925060800135166110d3565b604080517f737570706f727473496e74657266616365286279746573342900000000000000815290519081900360190190206000906001600160e01b0319838116911614806109c05750604080517472656e657728737472696e672c75696e743235362960581b815290519081900360150181209080602861186a8239604080519182900360280182206e636f6d6d697428627974657333322960881b8352905191829003600f01822090925090806026611892823960260190506040518091039020604051808070617661696c61626c6528737472696e672960781b8152506011019050604051809103902060405180807f72656e74507269636528737472696e672c75696e7432353629000000000000008152506019019050604051809103902018181818186001600160e01b031916826001600160e01b031916145b80610a0c5750604051808061182a60409139604080519182900301812091508060426118b8823960420190506040518091039020186001600160e01b031916826001600160e01b031916145b92915050565b610a1a610e05565b610a2357600080fd5b6040513390303180156108fc02916000818181858888f19350505050158015610a50573d6000803e3d6000fd5b50565b845160208601206000906001600160a01b038416158015610a7b57506001600160a01b038316155b15610acb57604080516020808201939093526bffffffffffffffffffffffff19606089901b1681830152605480820188905282518083039091018152607490910190915280519101209050610b39565b6001600160a01b038416610ade57600080fd5b604080516020808201939093526bffffffffffffffffffffffff19606089811b82168385015287811b8216605484015286901b166068820152607c80820188905282518083039091018152609c909101909152805191012090505b95945050505050565b610b4a610e05565b610b5357600080fd5b600280546001600160a01b0319166001600160a01b0383811691909117918290556040519116907ff261845a790fe29bbd6631e2ca4a5bdc83e6eed7c3271d9590d97287e00e912390600090a250565b610bab610e05565b610bb457600080fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b610c06610e05565b610c0f57600080fd5b600391909155600455565b60056020526000908152604090205481565b815160208084019190912060025460015460408051636b727d4360e11b81526004810185905290516000956001600160a01b03948516946350e9a715948a9491169263d6e4fa8692602480840193919291829003018186803b158015610c9157600080fd5b505afa158015610ca5573d6000803e3d6000fd5b505050506040513d6020811015610cbb57600080fd5b50516040516001600160e01b031960e085901b168152602481018290526044810188905260606004820190815283516064830152835189928291608490910190602087019080838360005b83811015610d1e578181015183820152602001610d06565b50505050905090810190601f168015610d4b5780820380516001836020036101000a031916815260200191505b5094505050505060206040518083038186803b158015610d6a57600080fd5b505afa158015610d7e573d6000803e3d6000fd5b505050506040513d6020811015610d9457600080fd5b5051949350505050565b610de285858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250889350879250869150806110d3565b5050505050565b6224ea0081565b60035481565b6000546001600160a01b031690565b6000546001600160a01b0316331490565b60006003610e2383611646565b101592915050565b6000610e6e84848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250869250610c2c915050565b905080341015610e7d57600080fd5b60008484604051808383808284376040805193909101839003832060015463c475abff60e01b855260048501829052602485018b90529151909750600096506001600160a01b03909116945063c475abff93506044808401936020935082900301818787803b158015610eef57600080fd5b505af1158015610f03573d6000803e3d6000fd5b505050506040513d6020811015610f1957600080fd5b5051905034831015610f565760405133903485900380156108fc02916000818181858888f19350505050158015610f54573d6000803e3d6000fd5b505b817f3da24c024582931cfaf8267d8ed24d13a82a8068d5bd337d30ec45cea4e506ae8787868560405180806020018481526020018381526020018281038252868682818152602001925080828437600083820152604051601f909101601f191690920182900397509095505050505050a2505050505050565b80516020820120600090610fe283610e16565b80156110625750600154604080516312dc929d60e31b81526004810184905290516001600160a01b03909216916396e494e891602480820192602092909190829003018186803b15801561103557600080fd5b505afa158015611049573d6000803e3d6000fd5b505050506040513d602081101561105f57600080fd5b50515b9392505050565b60045481565b6004546000828152600560205260409020544291011061108e57600080fd5b6000908152600560205260409020429055565b6110a9610e05565b6110b257600080fd5b610a508161172e565b60006110cb848484600080610a53565b949350505050565b60006110e28787868686610a53565b905060006110f188878461179c565b885160208a01209091508060006001600160a01b038716156114ac5760015460408051633f2891eb60e21b815260048101859052306024820152604481018c905290516001600160a01b039092169163fca247ac916064808201926020929091908290030181600087803b15801561116857600080fd5b505af115801561117c573d6000803e3d6000fd5b505050506040513d602081101561119257600080fd5b505160015460408051630ddf7fcb60e41b815290519293506000926001600160a01b039092169163ddf7fcb091600480820192602092909190829003018186803b1580156111df57600080fd5b505afa1580156111f3573d6000803e3d6000fd5b505050506040513d602081101561120957600080fd5b50516040805160208181019390935280820187905281518082038301815260608201808452815191850191909120600154633f15457f60e01b90925292519294506001600160a01b031692633f15457f92606480840193829003018186803b15801561127457600080fd5b505afa158015611288573d6000803e3d6000fd5b505050506040513d602081101561129e57600080fd5b505160408051630c4b7b8560e11b8152600481018490526001600160a01b038b8116602483015291519190921691631896f70a91604480830192600092919082900301818387803b1580156112f257600080fd5b505af1158015611306573d6000803e3d6000fd5b505050506001600160a01b0387161561139257876001600160a01b031663d5fa2b0082896040518363ffffffff1660e01b815260040180838152602001826001600160a01b03166001600160a01b0316815260200192505050600060405180830381600087803b15801561137957600080fd5b505af115801561138d573d6000803e3d6000fd5b505050505b60015460408051630a3b53db60e21b8152600481018690526001600160a01b038e81166024830152915191909216916328ed4f6c91604480830192600092919082900301818387803b1580156113e757600080fd5b505af11580156113fb573d6000803e3d6000fd5b50505050600160009054906101000a90046001600160a01b03166001600160a01b03166323b872dd308d866040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050600060405180830381600087803b15801561148e57600080fd5b505af11580156114a2573d6000803e3d6000fd5b505050505061154c565b6001600160a01b038616156114c057600080fd5b60015460408051633f2891eb60e21b8152600481018590526001600160a01b038d81166024830152604482018d90529151919092169163fca247ac9160648083019260209291908290030181600087803b15801561151d57600080fd5b505af1158015611531573d6000803e3d6000fd5b505050506040513d602081101561154757600080fd5b505190505b896001600160a01b0316837fca6abbe9d7f11422cb6ca7629fbf6fe9efb1c621f71ce8f02b9f2a230097404f8d87856040518080602001848152602001838152602001828103825285818151815260200191508051906020019080838360005b838110156115c45781810151838201526020016115ac565b50505050905090810190601f1680156115f15780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a3833411156116395760405133903486900380156108fc02916000818181858888f19350505050158015611637573d6000803e3d6000fd5b505b5050505050505050505050565b8051600090819081905b8082101561172557600085838151811061166657fe5b01602001516001600160f81b0319169050600160ff1b81101561168e57600183019250611719565b600760fd1b6001600160f81b0319821610156116af57600283019250611719565b600f60fc1b6001600160f81b0319821610156116d057600383019250611719565b601f60fb1b6001600160f81b0319821610156116f157600483019250611719565b603f60fa1b6001600160f81b03198216101561171257600583019250611719565b6006830192505b50600190920191611650565b50909392505050565b6001600160a01b03811661174157600080fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b600354600082815260056020526040812054909142910111156117be57600080fd5b600454600083815260056020526040902054429101116117dd57600080fd5b6117e684610fcf565b6117ef57600080fd5b600082815260056020526040812081905561180a8585610c2c565b90506224ea0084101561181c57600080fd5b803410156110cb57600080fdfe6d616b65436f6d6d69746d656e7457697468436f6e66696728737472696e672c616464726573732c627974657333322c616464726573732c6164647265737329726567697374657228737472696e672c616464726573732c75696e743235362c62797465733332296d616b65436f6d6d69746d656e7428737472696e672c616464726573732c6279746573333229726567697374657257697468436f6e66696728737472696e672c616464726573732c75696e743235362c627974657333322c616464726573732c6164647265737329a265627a7a72315820ba74b4e49afb22de09a9ebda5d073d93e2a2a7b2530ce50def390c32cac92ea064736f6c634300050c0032", + "bytecode": "0x608060405234801561001057600080fd5b50604051611a13380380611a138339818101604052608081101561003357600080fd5b5080516020820151604080840151606090940151600080546001600160a01b031916331780825592519495939491926001600160a01b0316917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a381811161009d57600080fd5b600180546001600160a01b039586166001600160a01b031991821617909155600280549490951693169290921790925560039190915560045561192e806100e56000396000f3fe60806040526004361061012a5760003560e01c80638d839ffe116100ab578063aeb8ce9b1161006f578063aeb8ce9b146105d7578063ce1e09c014610688578063f14fcbc81461069d578063f2fde38b146106c7578063f49826be146106fa578063f7a16963146107b95761012a565b80638d839ffe1461045d5780638da5cb5b146104725780638f32d59b146104a35780639791c097146104b8578063acf1a841146105695761012a565b80637e324479116100f25780637e324479146102b8578063839df945146102e857806383e7f6ff1461031257806385f6d155146103c55780638a95b09f146104485761012a565b806301ffc9a71461012f5780633ccfd60b146101775780633d86c52f1461018e578063530e784f14610270578063715018a6146102a3575b600080fd5b34801561013b57600080fd5b506101636004803603602081101561015257600080fd5b50356001600160e01b031916610881565b604080519115158252519081900360200190f35b34801561018357600080fd5b5061018c610a12565b005b34801561019a57600080fd5b5061025e600480360360a08110156101b157600080fd5b810190602081018135600160201b8111156101cb57600080fd5b8201836020820111156101dd57600080fd5b803590602001918460018302840111600160201b831117156101fe57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b0383358116945060208401359360408101358216935060600135169050610a53565b60408051918252519081900360200190f35b34801561027c57600080fd5b5061018c6004803603602081101561029357600080fd5b50356001600160a01b0316610b42565b3480156102af57600080fd5b5061018c610ba3565b3480156102c457600080fd5b5061018c600480360360408110156102db57600080fd5b5080359060200135610bfe565b3480156102f457600080fd5b5061025e6004803603602081101561030b57600080fd5b5035610c1a565b34801561031e57600080fd5b5061025e6004803603604081101561033557600080fd5b810190602081018135600160201b81111561034f57600080fd5b82018360208201111561036157600080fd5b803590602001918460018302840111600160201b8311171561038257600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505091359250610c2c915050565b61018c600480360360808110156103db57600080fd5b810190602081018135600160201b8111156103f557600080fd5b82018360208201111561040757600080fd5b803590602001918460018302840111600160201b8311171561042857600080fd5b91935091506001600160a01b038135169060208101359060400135610d9e565b34801561045457600080fd5b5061025e610de9565b34801561046957600080fd5b5061025e610df0565b34801561047e57600080fd5b50610487610df6565b604080516001600160a01b039092168252519081900360200190f35b3480156104af57600080fd5b50610163610e05565b3480156104c457600080fd5b50610163600480360360208110156104db57600080fd5b810190602081018135600160201b8111156104f557600080fd5b82018360208201111561050757600080fd5b803590602001918460018302840111600160201b8311171561052857600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610e16945050505050565b61018c6004803603604081101561057f57600080fd5b810190602081018135600160201b81111561059957600080fd5b8201836020820111156105ab57600080fd5b803590602001918460018302840111600160201b831117156105cc57600080fd5b919350915035610e2b565b3480156105e357600080fd5b50610163600480360360208110156105fa57600080fd5b810190602081018135600160201b81111561061457600080fd5b82018360208201111561062657600080fd5b803590602001918460018302840111600160201b8311171561064757600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610fcf945050505050565b34801561069457600080fd5b5061025e611069565b3480156106a957600080fd5b5061018c600480360360208110156106c057600080fd5b503561106f565b3480156106d357600080fd5b5061018c600480360360208110156106ea57600080fd5b50356001600160a01b03166110a1565b34801561070657600080fd5b5061025e6004803603606081101561071d57600080fd5b810190602081018135600160201b81111561073757600080fd5b82018360208201111561074957600080fd5b803590602001918460018302840111600160201b8311171561076a57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b0383351693505050602001356110bb565b61018c600480360360c08110156107cf57600080fd5b810190602081018135600160201b8111156107e957600080fd5b8201836020820111156107fb57600080fd5b803590602001918460018302840111600160201b8311171561081c57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b038335811694506020840135936040810135935060608101358216925060800135166110d3565b604080517f737570706f727473496e74657266616365286279746573342900000000000000815290519081900360190190206000906001600160e01b0319838116911614806109c05750604080517472656e657728737472696e672c75696e743235362960581b815290519081900360150181209080602861186a8239604080519182900360280182206e636f6d6d697428627974657333322960881b8352905191829003600f01822090925090806026611892823960260190506040518091039020604051808070617661696c61626c6528737472696e672960781b8152506011019050604051809103902060405180807f72656e74507269636528737472696e672c75696e7432353629000000000000008152506019019050604051809103902018181818186001600160e01b031916826001600160e01b031916145b80610a0c5750604051808061182a60409139604080519182900301812091508060426118b8823960420190506040518091039020186001600160e01b031916826001600160e01b031916145b92915050565b610a1a610e05565b610a2357600080fd5b6040513390303180156108fc02916000818181858888f19350505050158015610a50573d6000803e3d6000fd5b50565b845160208601206000906001600160a01b038416158015610a7b57506001600160a01b038316155b15610acb57604080516020808201939093526bffffffffffffffffffffffff19606089901b1681830152605480820188905282518083039091018152607490910190915280519101209050610b39565b6001600160a01b038416610ade57600080fd5b604080516020808201939093526bffffffffffffffffffffffff19606089811b82168385015287811b8216605484015286901b166068820152607c80820188905282518083039091018152609c909101909152805191012090505b95945050505050565b610b4a610e05565b610b5357600080fd5b600280546001600160a01b0319166001600160a01b0383811691909117918290556040519116907ff261845a790fe29bbd6631e2ca4a5bdc83e6eed7c3271d9590d97287e00e912390600090a250565b610bab610e05565b610bb457600080fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b610c06610e05565b610c0f57600080fd5b600391909155600455565b60056020526000908152604090205481565b815160208084019190912060025460015460408051636b727d4360e11b81526004810185905290516000956001600160a01b03948516946350e9a715948a9491169263d6e4fa8692602480840193919291829003018186803b158015610c9157600080fd5b505afa158015610ca5573d6000803e3d6000fd5b505050506040513d6020811015610cbb57600080fd5b50516040516001600160e01b031960e085901b168152602481018290526044810188905260606004820190815283516064830152835189928291608490910190602087019080838360005b83811015610d1e578181015183820152602001610d06565b50505050905090810190601f168015610d4b5780820380516001836020036101000a031916815260200191505b5094505050505060206040518083038186803b158015610d6a57600080fd5b505afa158015610d7e573d6000803e3d6000fd5b505050506040513d6020811015610d9457600080fd5b5051949350505050565b610de285858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250889350879250869150806110d3565b5050505050565b6224ea0081565b60035481565b6000546001600160a01b031690565b6000546001600160a01b0316331490565b60006003610e2383611646565b101592915050565b6000610e6e84848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250869250610c2c915050565b905080341015610e7d57600080fd5b60008484604051808383808284376040805193909101839003832060015463c475abff60e01b855260048501829052602485018b90529151909750600096506001600160a01b03909116945063c475abff93506044808401936020935082900301818787803b158015610eef57600080fd5b505af1158015610f03573d6000803e3d6000fd5b505050506040513d6020811015610f1957600080fd5b5051905034831015610f565760405133903485900380156108fc02916000818181858888f19350505050158015610f54573d6000803e3d6000fd5b505b817f3da24c024582931cfaf8267d8ed24d13a82a8068d5bd337d30ec45cea4e506ae8787868560405180806020018481526020018381526020018281038252868682818152602001925080828437600083820152604051601f909101601f191690920182900397509095505050505050a2505050505050565b80516020820120600090610fe283610e16565b80156110625750600154604080516312dc929d60e31b81526004810184905290516001600160a01b03909216916396e494e891602480820192602092909190829003018186803b15801561103557600080fd5b505afa158015611049573d6000803e3d6000fd5b505050506040513d602081101561105f57600080fd5b50515b9392505050565b60045481565b6004546000828152600560205260409020544291011061108e57600080fd5b6000908152600560205260409020429055565b6110a9610e05565b6110b257600080fd5b610a508161172e565b60006110cb848484600080610a53565b949350505050565b60006110e28787868686610a53565b905060006110f188878461179c565b885160208a01209091508060006001600160a01b038716156114ac5760015460408051633f2891eb60e21b815260048101859052306024820152604481018c905290516001600160a01b039092169163fca247ac916064808201926020929091908290030181600087803b15801561116857600080fd5b505af115801561117c573d6000803e3d6000fd5b505050506040513d602081101561119257600080fd5b505160015460408051630ddf7fcb60e41b815290519293506000926001600160a01b039092169163ddf7fcb091600480820192602092909190829003018186803b1580156111df57600080fd5b505afa1580156111f3573d6000803e3d6000fd5b505050506040513d602081101561120957600080fd5b50516040805160208181019390935280820187905281518082038301815260608201808452815191850191909120600154633f15457f60e01b90925292519294506001600160a01b031692633f15457f92606480840193829003018186803b15801561127457600080fd5b505afa158015611288573d6000803e3d6000fd5b505050506040513d602081101561129e57600080fd5b505160408051630c4b7b8560e11b8152600481018490526001600160a01b038b8116602483015291519190921691631896f70a91604480830192600092919082900301818387803b1580156112f257600080fd5b505af1158015611306573d6000803e3d6000fd5b505050506001600160a01b0387161561139257876001600160a01b031663d5fa2b0082896040518363ffffffff1660e01b815260040180838152602001826001600160a01b03166001600160a01b0316815260200192505050600060405180830381600087803b15801561137957600080fd5b505af115801561138d573d6000803e3d6000fd5b505050505b60015460408051630a3b53db60e21b8152600481018690526001600160a01b038e81166024830152915191909216916328ed4f6c91604480830192600092919082900301818387803b1580156113e757600080fd5b505af11580156113fb573d6000803e3d6000fd5b50505050600160009054906101000a90046001600160a01b03166001600160a01b03166323b872dd308d866040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050600060405180830381600087803b15801561148e57600080fd5b505af11580156114a2573d6000803e3d6000fd5b505050505061154c565b6001600160a01b038616156114c057600080fd5b60015460408051633f2891eb60e21b8152600481018590526001600160a01b038d81166024830152604482018d90529151919092169163fca247ac9160648083019260209291908290030181600087803b15801561151d57600080fd5b505af1158015611531573d6000803e3d6000fd5b505050506040513d602081101561154757600080fd5b505190505b896001600160a01b0316837fca6abbe9d7f11422cb6ca7629fbf6fe9efb1c621f71ce8f02b9f2a230097404f8d87856040518080602001848152602001838152602001828103825285818151815260200191508051906020019080838360005b838110156115c45781810151838201526020016115ac565b50505050905090810190601f1680156115f15780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a3833411156116395760405133903486900380156108fc02916000818181858888f19350505050158015611637573d6000803e3d6000fd5b505b5050505050505050505050565b8051600090819081905b8082101561172557600085838151811061166657fe5b01602001516001600160f81b0319169050600160ff1b81101561168e57600183019250611719565b600760fd1b6001600160f81b0319821610156116af57600283019250611719565b600f60fc1b6001600160f81b0319821610156116d057600383019250611719565b601f60fb1b6001600160f81b0319821610156116f157600483019250611719565b603f60fa1b6001600160f81b03198216101561171257600583019250611719565b6006830192505b50600190920191611650565b50909392505050565b6001600160a01b03811661174157600080fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b600354600082815260056020526040812054909142910111156117be57600080fd5b600454600083815260056020526040902054429101116117dd57600080fd5b6117e684610fcf565b6117ef57600080fd5b600082815260056020526040812081905561180a8585610c2c565b90506224ea0084101561181c57600080fd5b803410156110cb57600080fdfe6d616b65436f6d6d69746d656e7457697468436f6e66696728737472696e672c616464726573732c627974657333322c616464726573732c6164647265737329726567697374657228737472696e672c616464726573732c75696e743235362c62797465733332296d616b65436f6d6d69746d656e7428737472696e672c616464726573732c6279746573333229726567697374657257697468436f6e66696728737472696e672c616464726573732c75696e743235362c627974657333322c616464726573732c6164647265737329a265627a7a72315820dbcd3913c2076b23152296f549f9d7284be303cc004736992b455428cb03c12664736f6c634300050c0032", + "deployedBytecode": "0x60806040526004361061012a5760003560e01c80638d839ffe116100ab578063aeb8ce9b1161006f578063aeb8ce9b146105d7578063ce1e09c014610688578063f14fcbc81461069d578063f2fde38b146106c7578063f49826be146106fa578063f7a16963146107b95761012a565b80638d839ffe1461045d5780638da5cb5b146104725780638f32d59b146104a35780639791c097146104b8578063acf1a841146105695761012a565b80637e324479116100f25780637e324479146102b8578063839df945146102e857806383e7f6ff1461031257806385f6d155146103c55780638a95b09f146104485761012a565b806301ffc9a71461012f5780633ccfd60b146101775780633d86c52f1461018e578063530e784f14610270578063715018a6146102a3575b600080fd5b34801561013b57600080fd5b506101636004803603602081101561015257600080fd5b50356001600160e01b031916610881565b604080519115158252519081900360200190f35b34801561018357600080fd5b5061018c610a12565b005b34801561019a57600080fd5b5061025e600480360360a08110156101b157600080fd5b810190602081018135600160201b8111156101cb57600080fd5b8201836020820111156101dd57600080fd5b803590602001918460018302840111600160201b831117156101fe57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b0383358116945060208401359360408101358216935060600135169050610a53565b60408051918252519081900360200190f35b34801561027c57600080fd5b5061018c6004803603602081101561029357600080fd5b50356001600160a01b0316610b42565b3480156102af57600080fd5b5061018c610ba3565b3480156102c457600080fd5b5061018c600480360360408110156102db57600080fd5b5080359060200135610bfe565b3480156102f457600080fd5b5061025e6004803603602081101561030b57600080fd5b5035610c1a565b34801561031e57600080fd5b5061025e6004803603604081101561033557600080fd5b810190602081018135600160201b81111561034f57600080fd5b82018360208201111561036157600080fd5b803590602001918460018302840111600160201b8311171561038257600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505091359250610c2c915050565b61018c600480360360808110156103db57600080fd5b810190602081018135600160201b8111156103f557600080fd5b82018360208201111561040757600080fd5b803590602001918460018302840111600160201b8311171561042857600080fd5b91935091506001600160a01b038135169060208101359060400135610d9e565b34801561045457600080fd5b5061025e610de9565b34801561046957600080fd5b5061025e610df0565b34801561047e57600080fd5b50610487610df6565b604080516001600160a01b039092168252519081900360200190f35b3480156104af57600080fd5b50610163610e05565b3480156104c457600080fd5b50610163600480360360208110156104db57600080fd5b810190602081018135600160201b8111156104f557600080fd5b82018360208201111561050757600080fd5b803590602001918460018302840111600160201b8311171561052857600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610e16945050505050565b61018c6004803603604081101561057f57600080fd5b810190602081018135600160201b81111561059957600080fd5b8201836020820111156105ab57600080fd5b803590602001918460018302840111600160201b831117156105cc57600080fd5b919350915035610e2b565b3480156105e357600080fd5b50610163600480360360208110156105fa57600080fd5b810190602081018135600160201b81111561061457600080fd5b82018360208201111561062657600080fd5b803590602001918460018302840111600160201b8311171561064757600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610fcf945050505050565b34801561069457600080fd5b5061025e611069565b3480156106a957600080fd5b5061018c600480360360208110156106c057600080fd5b503561106f565b3480156106d357600080fd5b5061018c600480360360208110156106ea57600080fd5b50356001600160a01b03166110a1565b34801561070657600080fd5b5061025e6004803603606081101561071d57600080fd5b810190602081018135600160201b81111561073757600080fd5b82018360208201111561074957600080fd5b803590602001918460018302840111600160201b8311171561076a57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b0383351693505050602001356110bb565b61018c600480360360c08110156107cf57600080fd5b810190602081018135600160201b8111156107e957600080fd5b8201836020820111156107fb57600080fd5b803590602001918460018302840111600160201b8311171561081c57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b038335811694506020840135936040810135935060608101358216925060800135166110d3565b604080517f737570706f727473496e74657266616365286279746573342900000000000000815290519081900360190190206000906001600160e01b0319838116911614806109c05750604080517472656e657728737472696e672c75696e743235362960581b815290519081900360150181209080602861186a8239604080519182900360280182206e636f6d6d697428627974657333322960881b8352905191829003600f01822090925090806026611892823960260190506040518091039020604051808070617661696c61626c6528737472696e672960781b8152506011019050604051809103902060405180807f72656e74507269636528737472696e672c75696e7432353629000000000000008152506019019050604051809103902018181818186001600160e01b031916826001600160e01b031916145b80610a0c5750604051808061182a60409139604080519182900301812091508060426118b8823960420190506040518091039020186001600160e01b031916826001600160e01b031916145b92915050565b610a1a610e05565b610a2357600080fd5b6040513390303180156108fc02916000818181858888f19350505050158015610a50573d6000803e3d6000fd5b50565b845160208601206000906001600160a01b038416158015610a7b57506001600160a01b038316155b15610acb57604080516020808201939093526bffffffffffffffffffffffff19606089901b1681830152605480820188905282518083039091018152607490910190915280519101209050610b39565b6001600160a01b038416610ade57600080fd5b604080516020808201939093526bffffffffffffffffffffffff19606089811b82168385015287811b8216605484015286901b166068820152607c80820188905282518083039091018152609c909101909152805191012090505b95945050505050565b610b4a610e05565b610b5357600080fd5b600280546001600160a01b0319166001600160a01b0383811691909117918290556040519116907ff261845a790fe29bbd6631e2ca4a5bdc83e6eed7c3271d9590d97287e00e912390600090a250565b610bab610e05565b610bb457600080fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b610c06610e05565b610c0f57600080fd5b600391909155600455565b60056020526000908152604090205481565b815160208084019190912060025460015460408051636b727d4360e11b81526004810185905290516000956001600160a01b03948516946350e9a715948a9491169263d6e4fa8692602480840193919291829003018186803b158015610c9157600080fd5b505afa158015610ca5573d6000803e3d6000fd5b505050506040513d6020811015610cbb57600080fd5b50516040516001600160e01b031960e085901b168152602481018290526044810188905260606004820190815283516064830152835189928291608490910190602087019080838360005b83811015610d1e578181015183820152602001610d06565b50505050905090810190601f168015610d4b5780820380516001836020036101000a031916815260200191505b5094505050505060206040518083038186803b158015610d6a57600080fd5b505afa158015610d7e573d6000803e3d6000fd5b505050506040513d6020811015610d9457600080fd5b5051949350505050565b610de285858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250889350879250869150806110d3565b5050505050565b6224ea0081565b60035481565b6000546001600160a01b031690565b6000546001600160a01b0316331490565b60006003610e2383611646565b101592915050565b6000610e6e84848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250869250610c2c915050565b905080341015610e7d57600080fd5b60008484604051808383808284376040805193909101839003832060015463c475abff60e01b855260048501829052602485018b90529151909750600096506001600160a01b03909116945063c475abff93506044808401936020935082900301818787803b158015610eef57600080fd5b505af1158015610f03573d6000803e3d6000fd5b505050506040513d6020811015610f1957600080fd5b5051905034831015610f565760405133903485900380156108fc02916000818181858888f19350505050158015610f54573d6000803e3d6000fd5b505b817f3da24c024582931cfaf8267d8ed24d13a82a8068d5bd337d30ec45cea4e506ae8787868560405180806020018481526020018381526020018281038252868682818152602001925080828437600083820152604051601f909101601f191690920182900397509095505050505050a2505050505050565b80516020820120600090610fe283610e16565b80156110625750600154604080516312dc929d60e31b81526004810184905290516001600160a01b03909216916396e494e891602480820192602092909190829003018186803b15801561103557600080fd5b505afa158015611049573d6000803e3d6000fd5b505050506040513d602081101561105f57600080fd5b50515b9392505050565b60045481565b6004546000828152600560205260409020544291011061108e57600080fd5b6000908152600560205260409020429055565b6110a9610e05565b6110b257600080fd5b610a508161172e565b60006110cb848484600080610a53565b949350505050565b60006110e28787868686610a53565b905060006110f188878461179c565b885160208a01209091508060006001600160a01b038716156114ac5760015460408051633f2891eb60e21b815260048101859052306024820152604481018c905290516001600160a01b039092169163fca247ac916064808201926020929091908290030181600087803b15801561116857600080fd5b505af115801561117c573d6000803e3d6000fd5b505050506040513d602081101561119257600080fd5b505160015460408051630ddf7fcb60e41b815290519293506000926001600160a01b039092169163ddf7fcb091600480820192602092909190829003018186803b1580156111df57600080fd5b505afa1580156111f3573d6000803e3d6000fd5b505050506040513d602081101561120957600080fd5b50516040805160208181019390935280820187905281518082038301815260608201808452815191850191909120600154633f15457f60e01b90925292519294506001600160a01b031692633f15457f92606480840193829003018186803b15801561127457600080fd5b505afa158015611288573d6000803e3d6000fd5b505050506040513d602081101561129e57600080fd5b505160408051630c4b7b8560e11b8152600481018490526001600160a01b038b8116602483015291519190921691631896f70a91604480830192600092919082900301818387803b1580156112f257600080fd5b505af1158015611306573d6000803e3d6000fd5b505050506001600160a01b0387161561139257876001600160a01b031663d5fa2b0082896040518363ffffffff1660e01b815260040180838152602001826001600160a01b03166001600160a01b0316815260200192505050600060405180830381600087803b15801561137957600080fd5b505af115801561138d573d6000803e3d6000fd5b505050505b60015460408051630a3b53db60e21b8152600481018690526001600160a01b038e81166024830152915191909216916328ed4f6c91604480830192600092919082900301818387803b1580156113e757600080fd5b505af11580156113fb573d6000803e3d6000fd5b50505050600160009054906101000a90046001600160a01b03166001600160a01b03166323b872dd308d866040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050600060405180830381600087803b15801561148e57600080fd5b505af11580156114a2573d6000803e3d6000fd5b505050505061154c565b6001600160a01b038616156114c057600080fd5b60015460408051633f2891eb60e21b8152600481018590526001600160a01b038d81166024830152604482018d90529151919092169163fca247ac9160648083019260209291908290030181600087803b15801561151d57600080fd5b505af1158015611531573d6000803e3d6000fd5b505050506040513d602081101561154757600080fd5b505190505b896001600160a01b0316837fca6abbe9d7f11422cb6ca7629fbf6fe9efb1c621f71ce8f02b9f2a230097404f8d87856040518080602001848152602001838152602001828103825285818151815260200191508051906020019080838360005b838110156115c45781810151838201526020016115ac565b50505050905090810190601f1680156115f15780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a3833411156116395760405133903486900380156108fc02916000818181858888f19350505050158015611637573d6000803e3d6000fd5b505b5050505050505050505050565b8051600090819081905b8082101561172557600085838151811061166657fe5b01602001516001600160f81b0319169050600160ff1b81101561168e57600183019250611719565b600760fd1b6001600160f81b0319821610156116af57600283019250611719565b600f60fc1b6001600160f81b0319821610156116d057600383019250611719565b601f60fb1b6001600160f81b0319821610156116f157600483019250611719565b603f60fa1b6001600160f81b03198216101561171257600583019250611719565b6006830192505b50600190920191611650565b50909392505050565b6001600160a01b03811661174157600080fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b600354600082815260056020526040812054909142910111156117be57600080fd5b600454600083815260056020526040902054429101116117dd57600080fd5b6117e684610fcf565b6117ef57600080fd5b600082815260056020526040812081905561180a8585610c2c565b90506224ea0084101561181c57600080fd5b803410156110cb57600080fdfe6d616b65436f6d6d69746d656e7457697468436f6e66696728737472696e672c616464726573732c627974657333322c616464726573732c6164647265737329726567697374657228737472696e672c616464726573732c75696e743235362c62797465733332296d616b65436f6d6d69746d656e7428737472696e672c616464726573732c6279746573333229726567697374657257697468436f6e66696728737472696e672c616464726573732c75696e743235362c627974657333322c616464726573732c6164647265737329a265627a7a72315820dbcd3913c2076b23152296f549f9d7284be303cc004736992b455428cb03c12664736f6c634300050c0032", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/contracts/@ens/LegacyENSRegistry.sol b/contracts/@ens/LegacyENSRegistry.sol index 0ddb0794..9699290e 100644 --- a/contracts/@ens/LegacyENSRegistry.sol +++ b/contracts/@ens/LegacyENSRegistry.sol @@ -1,4 +1,4 @@ -pragma solidity >=0.4.24; +pragma solidity >=0.4.24 <=0.8.17; interface LegacyENS { // Logged when the owner of a node assigns a new owner to a subnode. diff --git a/contracts/@ens/LegacyETHRegistrarController.sol b/contracts/@ens/LegacyETHRegistrarController.sol index 6f3f403a..9cb43e63 100644 --- a/contracts/@ens/LegacyETHRegistrarController.sol +++ b/contracts/@ens/LegacyETHRegistrarController.sol @@ -2,7 +2,7 @@ // File: @ensdomains/ethregistrar/contracts/PriceOracle.sol -pragma solidity >=0.4.24; +pragma solidity >=0.4.24 <=0.8.17; interface PriceOracle { /** diff --git a/contracts/custody/_refs.sol b/contracts/custody/_refs.sol index 0e1b4c40..7ad46460 100644 --- a/contracts/custody/_refs.sol +++ b/contracts/custody/_refs.sol @@ -1,7 +1,7 @@ // @author Unstoppable Domains, Inc. // @date May 30th, 2023 -pragma solidity ^0.8.0; +pragma solidity 0.8.17; import '@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController.sol'; import '@ensdomains/ens-contracts/contracts/registry/ENSRegistry.sol'; diff --git a/ens-config.json b/ens-config.json index 7f8894e6..d034f711 100644 --- a/ens-config.json +++ b/ens-config.json @@ -115,15 +115,15 @@ ] }, "ProxyAdmin": { - "address": "0x4e44E79e0cEc05D9e62e952B2088c02A3C450aeC", + "address": "0x3198fc981626687F4B5BDf0fbEABB0a5E0489C03", "deploymentBlock": "0x36", "legacyAddresses": [] }, "ENSCustody": { - "address": "0x3198fc981626687F4B5BDf0fbEABB0a5E0489C03", - "deploymentBlock": "0x5b", + "address": "0x951c830a0471C04DCB60Ce244DEe38eE4b0609ec", + "deploymentBlock": "0x5c", "implementation": "0xc2110388dd54228aE0A834119457edE938BF0B57", - "forwarder": "0x3198fc981626687F4B5BDf0fbEABB0a5E0489C03", + "forwarder": "0x951c830a0471C04DCB60Ce244DEe38eE4b0609ec", "legacyAddresses": [] }, "LegacyENSRegistry": { diff --git a/package.json b/package.json index dfa4151f..32d0bfe4 100644 --- a/package.json +++ b/package.json @@ -10,7 +10,7 @@ "compile": "hardhat compile --force;", "build:package": "yarn compile; rm -Rf dist/*; tsc --project tsconfig.build.json", "build:ci": "yarn build:package && yarn rebuild:sandbox && yarn copy:assets", - "copy:assets": "cp sandbox/db.tgz dist/sandbox/; cp uns-config.json dist/", + "copy:assets": "mkdir -p dist/sandbox/foundry/bin; cp sandbox/state.json dist/sandbox/; cp sandbox/foundry/foundryup.sh dist/sandbox/foundry; cp uns-config.json dist/; cp ens-config.json dist/;", "compile:size": "env ENABLE_CONTRACT_SIZER=true yarn compile", "coverage": "hardhat coverage", "test": "yarn test:sol && yarn test:sandbox", @@ -75,7 +75,6 @@ "ethereumjs-common": "^1.5.2", "ethereumjs-tx": "^1.3.7", "ethereumjs-util": "^7.1.0", - "ethers": "^6.11.1", "hardhat": "~2.20.0", "hardhat-abi-exporter": "^2.2.1", "hardhat-contract-sizer": "~2.6.0", @@ -102,6 +101,7 @@ "@ensdomains/address-encoder": "^0.2.22", "bip39": "^3.0.0", "bip44-constants": "^243.0.0", + "ethers": "^6.11.1", "hdkey": "^2.0.1", "web3": "^1.7.4" }, diff --git a/sandbox/anvil-server.ts b/sandbox/anvil-server.ts index 9cdfb404..0c301130 100644 --- a/sandbox/anvil-server.ts +++ b/sandbox/anvil-server.ts @@ -38,6 +38,8 @@ const ANVIL_ARGUMENTS_MAP: Record; private readonly _anvil: ChildProcessWithoutNullStreams; @@ -72,6 +74,10 @@ export class AnvilServer { } } } + args.push('--disable-default-create2-deployer'); + args.push('--prune-history', BLOCKS_TO_KEEP); + args.push('--order', 'fifo'); + args.push('--transaction-block-keeper', BLOCKS_TO_KEEP); const opts = inherit ? { stdio: 'inherit' } : {}; diff --git a/sandbox/foundry-cli.ts b/sandbox/foundry-cli.ts index 5f0035e7..6fb42c01 100644 --- a/sandbox/foundry-cli.ts +++ b/sandbox/foundry-cli.ts @@ -1,7 +1,7 @@ import { exec, execSync, spawn } from 'child_process'; import path from 'path'; -const FOUNDRY_VERSION = 'nightly-23700c9233314e06ba65be4522daf3aa89130dc0'; +const FOUNDRY_VERSION = 'nightly-de33b6af53005037b463318d2628b5cfcaf39916'; /** * @returns the path to the anvil path to use, if `anvil` is in path then this will be returned diff --git a/sandbox/state.json b/sandbox/state.json index f524b35e..8e8747ce 100644 --- a/sandbox/state.json +++ b/sandbox/state.json @@ -1 +1 @@ -{"block":{"number":"0x5d","coinbase":"0x0000000000000000000000000000000000000000","timestamp":"0x664dc88e","gas_limit":"0x6691b7","basefee":"0x1b818","difficulty":"0x0","prevrandao":"0x0000000000000000000000000000000000000000000000000000000000000000","blob_excess_gas_and_price":{"excess_blob_gas":0,"blob_gasprice":1}},"accounts":{"0x0000000000000000000000000000000000000000":{"nonce":0,"balance":"0xc968d22370860","code":"0x","storage":{}},"0x00e39a5004299871ab3b00fed5a39a715f181d02":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x66":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x67":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xd178b720229c39de617846f84cf9c8d32a63a23d","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0x0458f653495fb8d9bd0e7df468c2bf76d26c7bd9":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f7e83aee1461002d575b5f80fd5b61004061003b3660046105ba565b610054565b604051901515815260200160405180910390f35b5f601482146100a95760405162461bcd60e51b815260206004820152601860248201527f496e76616c696420736861312068617368206c656e6774680000000000000000604482015260640160405180910390fd5b5f6100ec5f85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101599050565b6bffffffffffffffffffffffff191690505f61013c87878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061018a92505050565b6bffffffffffffffffffffffff1916919091149695505050505050565b81515f90610168836014610621565b1115610172575f80fd5b5001602001516bffffffffffffffffffffffff191690565b5f6040518251602084019350604067ffffffffffffffc0600183011601600982820310600181036101bc576040820191505b50776745230100efcdab890098badcfe001032547600c3d2e1f061020d565b5f8383101561020657508082015192829003926020841015610206575f1960208590036101000a0119165b9392505050565b5f5b82811015610514576102228482896101db565b85526102328460208301896101db565b60208601526040818503106001810361024e5760808286038701535b506040830381146001810361026b57602086018051600887021790525b5060405b60808110156102f357858101603f19810151603719820151601f19830151600b198401516002911891909218189081027ffffffffefffffffefffffffefffffffefffffffefffffffefffffffefffffffe1663800000009091047c010000000100000001000000010000000100000001000000010000000116179052600c0161026f565b5060805b61014081101561037c57858101607f19810151606f19820151603f198301516017198401516004911891909218189081027ffffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffc1663400000009091047c0300000003000000030000000300000003000000030000000300000003161790526018016102f7565b50815f805f5b60508110156104ea576014810480156103b257600181146103d957600281146103fe576003811461042857610449565b600160281b8504600160501b86048118600160781b870416189350635a8279999250610449565b600160281b8504600160781b8604600160501b870418189350636ed9eba19250610449565b600160501b8504600160781b8604818117600160281b8804169116179350638f1bbcdc9250610449565b600160281b8504600160781b8604600160501b87041818935063ca62c1d692505b50601f600160bb1b8504168063ffffffe06001609b1b87041617905080840190508063ffffffff8616019050808301905080600160e01b600484028c015104019050600160a01b8102600160281b860417945050600160501b633fffffff600160521b86041663c00000006604000000000000870416170277ffffffff00ffffffff000000000000ffffffff00ffffffff8516179350600181019050610382565b5050509190910177ffffffff00ffffffff00ffffffff00ffffffff00ffffffff169060400161020f565b50600160601b63ffffffff821667ffffffff000000006101008404166bffffffff00000000000000006201000085041663ffffffff60601b630100000086041663ffffffff60801b6401000000008704161717171702945050505050919050565b5f8083601f840112610585575f80fd5b50813567ffffffffffffffff81111561059c575f80fd5b6020830191508360208285010111156105b3575f80fd5b9250929050565b5f805f80604085870312156105cd575f80fd5b843567ffffffffffffffff808211156105e4575f80fd5b6105f088838901610575565b90965094506020870135915080821115610608575f80fd5b5061061587828801610575565b95989497509550505050565b8082018082111561064057634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x06e2822b8856749ed179c77140dbc5f5a27410a4":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063de8f50a11461002d575b5f80fd5b61004061003b36600461051c565b610054565b604051901515815260200160405180910390f35b5f6060805f61009c60048b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506102e79050565b60ff1690508015610166576100f060058261ffff168c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b925061015f6101008260056105c3565b61ffff908116906005906101169085168d6105e5565b61012091906105e5565b8c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b915061021d565b6101a960058b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250929392505061038b9050565b90506101f460078261ffff168c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b925061021a6102048260076105c3565b61ffff908116906007906101169085168d6105e5565b91505b5f606061026084868a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152506103b192505050565b90925090508180156102d757506102856020825161027e91906105e5565b82906103cb565b60028b8b6040516102979291906105f8565b602060405180830381855afa1580156102b2573d5f803e3d5ffd5b5050506040513d601f19601f820116820180604052508101906102d59190610607565b145b9c9b505050505050505050505050565b5f8282815181106102fa576102fa61061e565b016020015160f81c90505b92915050565b825160609061031a8385610632565b1115610324575f80fd5b5f8267ffffffffffffffff81111561033e5761033e610645565b6040519080825280601f01601f191660200182016040528015610368576020820181803683370190505b509050602080820190868601016103808282876103ed565b509095945050505050565b81515f9061039a836002610632565b11156103a4575f80fd5b50016002015161ffff1690565b5f60606103bf838587610442565b91509150935093915050565b81515f906103da836020610632565b11156103e4575f80fd5b50016020015190565b602081106104255781518352610404602084610632565b9250610411602083610632565b915061041e6020826105e5565b90506103ed565b905182516020929092036101000a5f190180199091169116179052565b5f60605f85518551855188888860405160200161046496959493929190610686565b6040516020818303038152906040529050835167ffffffffffffffff81111561048f5761048f610645565b6040519080825280601f01601f1916602001820160405280156104b9576020820181803683370190505b50915083516020830182516020840160055afa925050935093915050565b5f8083601f8401126104e7575f80fd5b50813567ffffffffffffffff8111156104fe575f80fd5b602083019150836020828501011115610515575f80fd5b9250929050565b5f805f805f8060608789031215610531575f80fd5b863567ffffffffffffffff80821115610548575f80fd5b6105548a838b016104d7565b9098509650602089013591508082111561056c575f80fd5b6105788a838b016104d7565b90965094506040890135915080821115610590575f80fd5b5061059d89828a016104d7565b979a9699509497509295939492505050565b634e487b7160e01b5f52601160045260245ffd5b61ffff8181168382160190808211156105de576105de6105af565b5092915050565b81810381811115610305576103056105af565b818382375f9101908152919050565b5f60208284031215610617575f80fd5b5051919050565b634e487b7160e01b5f52603260045260245ffd5b80820180821115610305576103056105af565b634e487b7160e01b5f52604160045260245ffd5b5f81515f5b81811015610678576020818501810151868301520161065e565b505f93019283525090919050565b8681528560208201528460408201525f6106b56106af6106a96060850188610659565b86610659565b84610659565b9897505050505050505056fea164736f6c6343000818000a","storage":{}},"0x0712e8e819712c3bfdb098ce51c87a4ac0296fd8":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x0930ffb2c192b0c9a9dd2372cf7f2845ef39cbb6":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x65":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x66":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xbe92182cab5b84fd18b34881a0c32771e84f5b8b","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c8121905":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x107733fed96c4cd390c944a31f5425a7fb98ae5e":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x65":"0x556e73746f707061626c6520446f6d61696e7300000000000000000000000026","0x66":"0x5544000000000000000000000000000000000000000000000000000000000004","0x133":"0x68747470733a2f2f6578616d706c652e636f6d2f000000000000000000000028","0x134":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x9c74364589a7bce52d7a232f90c98b979577d9ab711dbe7e9fb985471178bff":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf29a433ca043c2d5f13825944af9d019209f338df87172c6b8012dce3044881":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf319a2ef598111826b455194189a27454a0286226eb066e1116f605e0373b37":"0x0","0x1257bbdf5bed452b3eda1d974a9839972d4d54d7fb1cde6a652e653346cc29b8":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x12c033f2252861b1bd15e9b5c71ef1cf26ca53de15eabc3b49e06f596e8755ec":"0x0","0x1348552952ac59b1c2522e84f684e36775420b449eddcdbd28f217183ed58b09":"0x0","0x149026695ebdd2bd6be0a7006aec5d10ddffbe46be181e4468980ea83c004fe9":"0x0","0x14c854a78d51371251661a408306c75d2515b5d509b295a58205e48267082bdc":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x18f06622a1abedc7bb78fcc98b2375188aef6c03b9247beee780b0b095d60285":"0x0","0x201ef5e312d372e2aeac4cf173b46ad2985127c7381f4f9acae5ebbd3a5e3861":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x2215c0abaeffcb5feae8a439b3185f8fba5dd6d97529a56c7609cd41fafdf5f1":"0x1","0x23513200931f98893f46373666c13964c7a821c5b40da7951b921629acf02735":"0x0","0x23f87654b79c6db28828f317e47d0c8deb9eaa2ea4e213fef901836c85036bf3":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x2e4566d865f2e159531492d7643e25e502917762b29082282ab9dfee8fbf54c7":"0x0","0x31fc31c15d389c5908095d314bb8b258352d51e18ac8a2f7fe15f3a0af519145":"0x0","0x3467fdbb447be3074b11c625b56e54d7ab44f3804bef205b07dd436d707d06d5":"0x0","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x62b11ad5f582a5c5d378fb310125b030042554f1","0x3cd80e7291e5f6dffa9af6eb70d47145a8fdd40acb8d09dfd0cf374e8c239b37":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x3f86c4990e663ffa5011ed38824fca68af7e0592eb22f41aebdec0ce84ee672e":"0x0","0x406aa3bf31381c8a323679af48792dfa2e7aa09dd0eb919e307dc4bf84216ff6":"0x0","0x47ce17acd30cc86e021ac7b23be8138ea767f6da503362aac5888a0679270eed":"0x0","0x4a7983c36f64e6df4d467cf706c128c273d30c24bbb172e251a5740624cc0bd3":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x4c42d98041cda7cb7d56b5d04731bd436366eb9f05c30f43671f1d1e2c0b0fa4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x55926eed7087c8cbfa1492f6d367f5e4c14c8d8cd59e2918c37184091369efb1":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x5b20f40cb5e9e634a90df9a72b516c11cc52281a4d1b7b67e672e2fe544ff22f":"0x0","0x6dac3e1cfae338e10c9c2f5000f6256d09afa83708761042001cea734f470ac1":"0x0","0x6defc32a546a6fb1b745bd1bb04e27085e94f01d7ef79587aee2c80853c43a53":"0x0","0x760b245be050a725a39b4fc089ad474a5fd40efa17101e112d30195d590779b4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x7bee59fcac76da32acb23def57eaaf959a4372a4fc180978fbd54f7a4c4b2f3d":"0x0","0x804aee9448e0b539a009ee7c6dd57e686c72e7b182e9622a42922b245a97e61e":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x825f7f8567cfd669c3beab41edff07d4aa51436123deeb0d3623b6a8fdec893c":"0x0","0x8717a3236e6a948df94444f035834fa8f7c5ee663a29f3580f3ef43ab051d6bd":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8a34e37883baf84417a33bb02eec8d1e43e363f617029800ff166614df3f112f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8bd1acdc45b63f1edf5db0b1444f1c4a6f82bf0a5a0a7231c2dd7b76a2b1e35c":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87":"0x0","0x8ed4e9fbdf86edd9f3eb1c8d4fbfc53a2eb863faf4cf5e0d2b307c0b33030091":"0x0","0x8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x90d72780b77edcd0c8daffbac0b21264679e851b734cb090e2b144eb3a28bb98":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x93fc964857984ff804a65eaceac4062669948f2b651ddc6b71373ad142bf45e0":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x9770fa903e700367e0306ab8fd70a2bb4f049417d341a2f8a2409d8d6a2218d1":"0x0","0xb1016fe231c2ed9dba8c95d2658191823b4b9ffa61a7aea530802c6b2ff27c41":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xbe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafe":"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f","0xbe7c5c707db1c91bd2c84880bb1e177b65886d295d9a62df8edfe38f8066cc81":"0x0","0xc3cd64a46de7309013ddb93a16a3024c2e46fb931e4744edf2610fb119f716f5":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xc563f9d3175978a619bae1a8175d3ea4be91d3890345085c5eb16f83b678a3d9":"0x0","0xc5b5cdb7b939f9d661f58f28c37e10cf71d45dacfea2581c88ae4a17aaf55e6e":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xd386775169d9e0716e9b5b08561984726edaa9febd0ca8e5468ecffa112078c7":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xe3b736cdcc6a09d7e3a05ffb63b11f11c91958d861443c3409d3fd863e8217bd":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xe3e5b75e3dff543bfbfe5b494e4e3243b4d9d0b3d794725cea46c28fe6be50e4":"0x0","0xe7d61626cac95282d296ee7ab5958e3e72e32eb959a7cab1d37c0f9d6d69c18a":"0x1a","0xeca5e1ccaa645ce2be97a867a1f8aeeb63ea833aeb009c0df0553b42b30c683f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf08305746cdba1d0eaa65036694838a3db122973267ffc57739d605c320c680a":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf0d566acc03395f71b37890f455d51d93197adf754ea72aba21427dc66b437df":"0x0","0xf230898ba4fe40c52f958d03013d995f822e25a5d4fae43bbdc6e92623cea0bd":"0x0","0xf245a9962043f44f4af98f9952a3bd29d91eb05418e4bb567b9de8f27e239b13":"0x0","0xf2a19ade13962e8675aecf2fbe51913877912f9e48e899806b6e06e82f9a980f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf2fab50b0b53245ddfa1bcfcdf4c73e209d6921dad704d173cf04cbbadc8e346":"0x0","0xfa6f3ee10d719cb3457d10c539ff3d77b8e56852ea62f68b2f9f85ad691ed6b4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xfff3abb219acc6ef4eed6e93a5682023229370196f352cdf3a71a88d881e3487":"0x0"}},"0x11dd97b7ca847dfb6504e61b7b9eb30f55e554a0":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a424740014610090575b600080fd5b610059610054366004610ba9565b6100b3565b6040516100669190610c98565b60405180910390f35b61008261007d366004610cab565b6101ce565b604051908152602001610066565b6100a361009e366004610ba9565b610332565b6040519015158152602001610066565b606060005a6001546040805163b3f9e4cb60e01b81529088013560048201529192506000916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561010a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061012e9190610cd9565b90506101c26101406020880188610cf6565b8260408901358561015460608c018c610d13565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8f018190048102820181019092528d815292508d91508c90819084018382808284376000920191909152506103fb92505050565b925050505b9392505050565b60025460015460405163b3f9e4cb60e01b8152600481018490526000926001600160a01b0390811692169063b3f9e4cb90602401602060405180830381865afa92505050801561023b575060408051601f3d908101601f1916820190925261023891810190610cd9565b60015b156102435790505b6001600160a01b0381163b156102c557604051636ccbae5f60e01b81526004810184905281906001600160a01b03821690636ccbae5f90602401602060405180830381865afa9250505080156102b6575060408051601f3d908101601f191682019092526102b391810190610d5a565b60015b156102c357949350505050565b505b600254604051636ccbae5f60e01b8152600481018590526001600160a01b0390911690636ccbae5f90602401602060405180830381865afa15801561030e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101c79190610d5a565b6001546040805163b3f9e4cb60e01b815290850135600482015260009182916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa158015610383573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103a79190610cd9565b90506103f26103b586610e0b565b8286868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506104d392505050565b95945050505050565b6060600080876001600160a01b0316866104178b8a898961051f565b6040516104249190610eb5565b60006040518083038160008787f1925050503d8060008114610462576040519150601f19603f3d011682016040523d82523d6000602084013e610467565b606091505b509092509050610478603f87610ed1565b5a1161048657610486610ef3565b6104c682826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506105d4565b9998505050505050505050565b60006104e084848461060d565b8015610514575060608401516020908101516001600160e01b031990811660009081529182905260409091205460e01b1615155b949350505050565b50565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036105b15760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526105c982828661074c565b979650505050505050565b606083156105e35750816101c7565b8251156105f35782518084602001fd5b8160405162461bcd60e51b81526004016105a89190610c98565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015610654573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106789190610d5a565b905060006107268660600151805190602001208688602001516040516020016106c69392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156101c2575085516101c2906001600160a01b03168286610935565b60606001600160e01b0319841663b87abc1160e01b036107cd5760008380602001905181019061077c9190610d5a565b9050848184604051602401610792929190610f09565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915291506101c79050565b6001600160e01b0319841663c597407360e01b03610859576000806000858060200190518101906107fe9190610f67565b925092509250868383838860405160240161081c9493929190610fd4565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293506101c792505050565b6001600160e01b031984166311ed383160e31b036108a85760008060008580602001905181019061088a91906110a6565b925092509250868383838860405160240161081c9493929190611157565b6001600160e01b031984166328d55f9b60e21b036101c7576000806000858060200190518101906108d991906110a6565b92509250925086838383886040516024016108f79493929190611157565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293505050509392505050565b60008060006109448585610a77565b9092509050600081600481111561095d5761095d61117c565b14801561097b5750856001600160a01b0316826001600160a01b0316145b1561098b576001925050506101c7565b600080876001600160a01b0316631626ba7e60e01b88886040516024016109b3929190610f09565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516109f19190610eb5565b600060405180830381855afa9150503d8060008114610a2c576040519150601f19603f3d011682016040523d82523d6000602084013e610a31565b606091505b5091509150818015610a44575080516020145b8015610a6b57508051630b135d3f60e11b90610a699083016020908101908401610d5a565b145b98975050505050505050565b6000808251604103610aad5760208301516040840151606085015160001a610aa187828585610abc565b94509450505050610ab5565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610af35750600090506003610ba0565b8460ff16601b14158015610b0b57508460ff16601c14155b15610b1c5750600090506004610ba0565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610b70573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610b9957600060019250925050610ba0565b9150600090505b94509492505050565b600080600060408486031215610bbe57600080fd5b833567ffffffffffffffff80821115610bd657600080fd5b9085019060808288031215610bea57600080fd5b90935060208501359080821115610c0057600080fd5b818601915086601f830112610c1457600080fd5b813581811115610c2357600080fd5b876020828501011115610c3557600080fd5b6020830194508093505050509250925092565b60005b83811015610c63578181015183820152602001610c4b565b50506000910152565b60008151808452610c84816020860160208601610c48565b601f01601f19169290920160200192915050565b6020815260006101c76020830184610c6c565b600060208284031215610cbd57600080fd5b5035919050565b6001600160a01b038116811461051c57600080fd5b600060208284031215610ceb57600080fd5b81516101c781610cc4565b600060208284031215610d0857600080fd5b81356101c781610cc4565b6000808335601e19843603018112610d2a57600080fd5b83018035915067ffffffffffffffff821115610d4557600080fd5b602001915036819003821315610ab557600080fd5b600060208284031215610d6c57600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610dac57610dac610d73565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ddb57610ddb610d73565b604052919050565b600067ffffffffffffffff821115610dfd57610dfd610d73565b50601f01601f191660200190565b600060808236031215610e1d57600080fd5b610e25610d89565b8235610e3081610cc4565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610e6057600080fd5b840136601f820112610e7157600080fd5b8035610e84610e7f82610de3565b610db2565b8181523684838501011115610e9857600080fd5b818484018583013760009181019093015250606082015292915050565b60008251610ec7818460208701610c48565b9190910192915050565b600082610eee57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b8281526040602082015260006105146040830184610c6c565b600082601f830112610f3357600080fd5b8151610f41610e7f82610de3565b818152846020838601011115610f5657600080fd5b610514826020830160208701610c48565b600080600060608486031215610f7c57600080fd5b835167ffffffffffffffff80821115610f9457600080fd5b610fa087838801610f22565b94506020860151915080821115610fb657600080fd5b50610fc386828701610f22565b925050604084015190509250925092565b608081526000610fe76080830187610c6c565b8281036020840152610ff98187610c6c565b905084604084015282810360608401526105c98185610c6c565b600082601f83011261102457600080fd5b8151602067ffffffffffffffff8083111561104157611041610d73565b8260051b611050838201610db2565b938452858101830193838101908886111561106a57600080fd5b84880192505b85831015610a6b578251848111156110885760008081fd5b6110968a87838c0101610f22565b8352509184019190840190611070565b6000806000606084860312156110bb57600080fd5b835167ffffffffffffffff808211156110d357600080fd5b6110df87838801611013565b945060208601519150808211156110f557600080fd5b50610fc386828701611013565b600081518084526020808501808196508360051b8101915082860160005b8581101561114a578284038952611138848351610c6c565b98850198935090840190600101611120565b5091979650505050505050565b60808152600061116a6080830187611102565b8281036020840152610ff98187611102565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x2":"0xf8c26340c1eaea6c7ff1760b25005e1306953572","0x1e74f978992d7d64ddac400bd4aae9eefd60fa0b8456650273f5f50148803323":"0xa3557e6c","0x23c84c23be8f829809d1b1502c647c6c59fb6b2345b163a2ca3e7d4f9855975c":"0x8f69c188","0xa0286316c9d3cb00f4f54a9f1096cefaa1748bb5a5395e7fa1563568ebb3e6c3":"0xb87abc11","0xdc138de224807be243ee38fe9e746cce5d437a256b87be90b80240e0811ad043":"0xc5974073"}},"0x145908bbcfc7b258e4d4d9a586f6e3249ae80216":{"nonce":1,"balance":"0x0","code":"0x3d5c","storage":{}},"0x17cda4e23f7237277952e075b1c48467aabfacc0":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c806368f9dab21461002d575b5f80fd5b61004061003b36600461088b565b610052565b60405190815260200160405180910390f35b5f61006f6040518060400160405280606081526020015f81525090565b61008e61007c858861090d565b61008790601061090d565b82906101d1565b506100d085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250859392505061023a9050565b5061011287878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250859392505061023a9050565b505f610120825f0151610266565b905083156101bc5760408051808201909152606081525f602090910181905282515261014c825f610650565b5061018e88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250869392505061023a9050565b505f5b848110156101ba576101a4835f8461067f565b5082516101b090610266565b9150600101610191565b505b6001600160601b031916979650505050505050565b60408051808201909152606081525f60208201526101f0602083610920565b1561021857610200602083610920565b61020b90602061093f565b610215908361090d565b91505b506020808301829052604080518085525f815283019091019052815b92915050565b60408051808201909152606081525f602082015261025f83845f0151518485516106b2565b9392505050565b5f6040518251602084019350604067ffffffffffffffc060018301160160098282031060018103610298576040820191505b50776745230100efcdab890098badcfe001032547600c3d2e1f06102e8565b5f8383101561025f5750808201519282900392602084101561025f575f1960208590036101000a0119169392505050565b5f5b828110156105ef576102fd8482896102b7565b855261030d8460208301896102b7565b6020860152604081850310600181036103295760808286038701535b506040830381146001810361034657602086018051600887021790525b5060405b60808110156103ce57858101603f19810151603719820151601f19830151600b198401516002911891909218189081027ffffffffefffffffefffffffefffffffefffffffefffffffefffffffefffffffe1663800000009091047c010000000100000001000000010000000100000001000000010000000116179052600c0161034a565b5060805b61014081101561045757858101607f19810151606f19820151603f198301516017198401516004911891909218189081027ffffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffc1663400000009091047c0300000003000000030000000300000003000000030000000300000003161790526018016103d2565b50815f805f5b60508110156105c55760148104801561048d57600181146104b457600281146104d9576003811461050357610524565b600160281b8504600160501b86048118600160781b870416189350635a8279999250610524565b600160281b8504600160781b8604600160501b870418189350636ed9eba19250610524565b600160501b8504600160781b8604818117600160281b8804169116179350638f1bbcdc9250610524565b600160281b8504600160781b8604600160501b87041818935063ca62c1d692505b50601f600160bb1b8504168063ffffffe06001609b1b87041617905080840190508063ffffffff8616019050808301905080600160e01b600484028c015104019050600160a01b8102600160281b860417945050600160501b633fffffff600160521b86041663c00000006604000000000000870416170277ffffffff00ffffffff000000000000ffffffff00ffffffff851617935060018101905061045d565b5050509190910177ffffffff00ffffffff00ffffffff00ffffffff00ffffffff16906040016102ea565b50600160601b63ffffffff821667ffffffff000000006101008404166bffffffff00000000000000006201000085041663ffffffff60601b630100000086041663ffffffff60801b6401000000008704161717171702945050505050919050565b60408051808201909152606081525f602082015282515161025f9084906001600160601b031985166014610798565b60408051808201909152606081525f60208201526106aa84846001600160601b031985166014610798565b949350505050565b60408051808201909152606081525f602082015282518211156106d3575f80fd5b60208501516106e2838661090d565b1115610715576107158561070587602001518786610700919061090d565b610813565b610710906002610952565b610829565b5f808651805187602083010193508088870111156107335787860182525b505050602084015b60208410610773578051825261075260208361090d565b915061075f60208261090d565b905061076c60208561093f565b935061073b565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b60408051808201909152606081525f602082015260208501516107bb858461090d565b11156107cf576107cf85610705868561090d565b5f6001836101000a0390508260200360080284901c93508551838682010185831982511617815250805184870111156108085783860181525b509495945050505050565b5f81831115610823575081610234565b50919050565b815161083583836101d1565b50610840838261023a565b50505050565b5f8083601f840112610856575f80fd5b50813567ffffffffffffffff81111561086d575f80fd5b602083019150836020828501011115610884575f80fd5b9250929050565b5f805f805f6060868803121561089f575f80fd5b853567ffffffffffffffff808211156108b6575f80fd5b6108c289838a01610846565b909750955060208801359150808211156108da575f80fd5b506108e788828901610846565b96999598509660400135949350505050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610234576102346108f9565b5f8261093a57634e487b7160e01b5f52601260045260245ffd5b500690565b81810381811115610234576102346108f9565b8082028115828204841417610234576102346108f956fea164736f6c6343000818000a","storage":{}},"0x19356cc2300833e690088a5a09a2044a3cc2a1e2":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x229c56b7805ab5935a883207f6a6bd5847e65aee":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106102ae5760003560e01c8063906cecc111610175578063b9998a24116100dc578063d547741f11610095578063f2fde38b1161006f578063f2fde38b14610892578063f5243bc4146108b2578063f940e385146108d2578063ffa1ad74146108f257600080fd5b8063d547741f1461083f578063d7db74c71461085f578063ec5273891461087257600080fd5b8063b9998a241461077d578063cc2a9a5b1461079d578063cc2c3fc4146107bd578063ceeb4f50146107dd578063d1f5692c146107fd578063d53913931461081d57600080fd5b8063a3a3f7f61161012e578063a3a3f7f614610690578063a3f4df7e146106b0578063a849d65c146106fd578063aa271e1a1461071d578063b0aa98c71461073d578063b3ab15fb1461075d57600080fd5b8063906cecc1146105e657806391d1485414610606578063983b2d5614610626578063986502751461064657806399e0dd7c1461065b578063a217fddf1461067b57600080fd5b80635b6fa8db11610219578063715018a6116101d2578063715018a61461054b57806371e2a6571461056057806377a2a5891461058057806381c81d35146105a05780638456cb59146105b35780638da5cb5b146105c857600080fd5b80635b6fa8db146104a35780635c975abb146104c35780635cd7e3b3146104d85780635e22cd86146104f85780635fc1964f14610518578063634486da1461053857600080fd5b80633092afd51161026b5780633092afd5146103a857806336568abe146103c85780633f41b614146103e85780633f4ba83a1461042057806351cff8d914610435578063572b6c051461045557600080fd5b806301ffc9a7146102b35780631edb948e146102e857806320c5429b1461030a578063248a9ca31461032a578063268b15ed146103685780632f2ff15d14610388575b600080fd5b3480156102bf57600080fd5b506102d36102ce366004613dc4565b610923565b60405190151581526020015b60405180910390f35b3480156102f457600080fd5b50610308610303366004613e13565b61095a565b005b34801561031657600080fd5b50610308610325366004613e3f565b610b03565b34801561033657600080fd5b5061035a610345366004613e3f565b60009081526097602052604090206001015490565b6040519081526020016102df565b34801561037457600080fd5b50610308610383366004613e99565b610c26565b34801561039457600080fd5b506103086103a3366004613f04565b610cb9565b3480156103b457600080fd5b506103086103c3366004613f34565b610ce3565b3480156103d457600080fd5b506103086103e3366004613f04565b610cf7565b3480156103f457600080fd5b5060c954610408906001600160a01b031681565b6040516001600160a01b0390911681526020016102df565b34801561042c57600080fd5b50610308610d85565b34801561044157600080fd5b50610308610450366004613f34565b610d97565b34801561046157600080fd5b506102d3610470366004613f34565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546001600160a01b0390811691161490565b3480156104af57600080fd5b5060cc54610408906001600160a01b031681565b3480156104cf57600080fd5b506102d3610e37565b3480156104e457600080fd5b506103086104f3366004613fa3565b610e4d565b34801561050457600080fd5b50610308610513366004614062565b6110b1565b34801561052457600080fd5b5061030861053336600461419c565b6112f6565b610308610546366004613f34565b61133e565b34801561055757600080fd5b50610308611401565b34801561056c57600080fd5b5061030861057b36600461419c565b611413565b34801561058c57600080fd5b5060ce54610408906001600160a01b031681565b6103086105ae366004613f34565b61145b565b3480156105bf57600080fd5b506103086114d8565b3480156105d457600080fd5b506033546001600160a01b0316610408565b3480156105f257600080fd5b5061030861060136600461423a565b6114e8565b34801561061257600080fd5b506102d3610621366004613f04565b61156e565b34801561063257600080fd5b50610308610641366004613f34565b611599565b34801561065257600080fd5b506103086115aa565b34801561066757600080fd5b50610308610676366004614295565b6115c4565b34801561068757600080fd5b5061035a600081565b34801561069c57600080fd5b506103086106ab3660046142d6565b6116ab565b3480156106bc57600080fd5b506106f0604051806040016040528060148152602001732aa7299d1026b4b73a34b7339026b0b730b3b2b960611b81525081565b6040516102df919061437c565b34801561070957600080fd5b5060cb54610408906001600160a01b031681565b34801561072957600080fd5b506102d3610738366004613f34565b6116f4565b34801561074957600080fd5b506102d3610758366004613e3f565b61170e565b34801561076957600080fd5b50610308610778366004613f34565b61176c565b34801561078957600080fd5b50610308610798366004613f34565b611796565b3480156107a957600080fd5b506103086107b836600461438f565b6117db565b3480156107c957600080fd5b5060ca54610408906001600160a01b031681565b3480156107e957600080fd5b506103086107f8366004614411565b611cd2565b34801561080957600080fd5b506103086108183660046144c6565b611d76565b34801561082957600080fd5b5061035a600080516020614ef483398151915281565b34801561084b57600080fd5b5061030861085a366004613f04565b611e2d565b61030861086d3660046144fb565b611e52565b34801561087e57600080fd5b5061030861088d366004613e3f565b611fe2565b34801561089e57600080fd5b506103086108ad366004613f34565b612054565b3480156108be57600080fd5b506103086108cd3660046145f0565b612070565b3480156108de57600080fd5b506103086108ed366004614708565b612222565b3480156108fe57600080fd5b506106f060405180604001604052806005815260200164302e352e3160d81b81525081565b60006001600160e01b03198216637965db0b60e01b148061095457506301ffc9a760e01b6001600160e01b03198316145b92915050565b61096561073861239e565b61098a5760405162461bcd60e51b815260040161098190614736565b60405180910390fd5b60c95460405163baef73e960e01b8152600481018390526000916001600160a01b03169063baef73e990602401602060405180830381865afa1580156109d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109f8919061476b565b9050806001600160401b0316600003610a235760405162461bcd60e51b815260040161098190614788565b806001600160401b0316836001600160401b031611610a905760405162461bcd60e51b815260206004820152602360248201527f4d696e74696e674d616e616765723a204558504952595f4e4f545f455854454e60448201526211115160ea1b6064820152608401610981565b60c954604051631fb9763760e11b81526001600160401b0385166004820152602481018490526001600160a01b0390911690633f72ec6e906044015b600060405180830381600087803b158015610ae657600080fd5b505af1158015610afa573d6000803e3d6000fd5b50505050505050565b610b0e61073861239e565b610b2a5760405162461bcd60e51b815260040161098190614736565b60c95460405163baef73e960e01b8152600481018390526001600160a01b039091169063baef73e990602401602060405180830381865afa158015610b73573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b97919061476b565b6001600160401b0316600003610bbf5760405162461bcd60e51b815260040161098190614788565b60c954604051637eee288d60e01b8152306004820152602481018390526001600160a01b0390911690637eee288d90604401600060405180830381600087803b158015610c0b57600080fd5b505af1158015610c1f573d6000803e3d6000fd5b5050505050565b8282828080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250610c6993508592508491506123ad565b610c71610e37565b15610c8e5760405162461bcd60e51b8152600401610981906147cb565b6060610afa610c9b61239e565b610cae88610ca98989612584565b6125b0565b8384600060016126c1565b600082815260976020526040902060010154610cd481612c15565b610cde8383612c26565b505050565b610ceb612cad565b610cf481612d26565b50565b610cff61239e565b6001600160a01b0316816001600160a01b031614610d775760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610981565b610d818282612d3e565b5050565b610d8d612cad565b610d95612dc3565b565b610d9f612cad565b6001600160a01b038116610db257600080fd5b60405147906001600160a01b0383169082156108fc029083906000818181858888f19350505050158015610dea573d6000803e3d6000fd5b50604080516001600160a01b03841681526020810183905260008183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a15050565b600080516020614ed48339815191525460ff1690565b610e5786886147f5565b8051600203610e8c57610e6b61073861239e565b610e875760405162461bcd60e51b8152600401610981906148bf565b610fd1565b6000610e9782612e6b565b60c9549092506001600160a01b0316905063430c2081610eb561239e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015610f00573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f249190614903565b80610fb3575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa158015610f7d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fa19190614903565b8015610fb35750610fb361073861239e565b610fcf5760405162461bcd60e51b815260040161098190614920565b505b610fdb87896147f5565b6000600282511015610fff5760405162461bcd60e51b81526004016109819061496f565b6110546110336000846001865161101691906149ca565b81518110611026576110266149dd565b6020026020010151612ea6565b83600081518110611046576110466149dd565b6020026020010151836123ad565b61105c610e37565b156110795760405162461bcd60e51b8152600401610981906147cb565b6110a38b6110878b8d6147f5565b6110918a8c6147f5565b61109b898b6147f5565b6000896126c1565b505050505050505050505050565b6110bb87896147f5565b80516002036110f0576110cf61073861239e565b6110eb5760405162461bcd60e51b8152600401610981906148bf565b611235565b60006110fb82612e6b565b60c9549092506001600160a01b0316905063430c208161111961239e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015611164573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111889190614903565b80611217575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa1580156111e1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112059190614903565b8015611217575061121761073861239e565b6112335760405162461bcd60e51b815260040161098190614920565b505b61123f888a6147f5565b836002825110156112625760405162461bcd60e51b81526004016109819061496f565b6112796110336000846001865161101691906149ca565b611281610e37565b1561129e5760405162461bcd60e51b8152600401610981906147cb565b60028a146112be5760405162461bcd60e51b8152600401610981906149f3565b6112e78c6112cc8c8e6147f5565b6112d68b8d6147f5565b6112e08a8c6147f5565b89896126c1565b50505050505050505050505050565b6112fe612cad565b60005b8151811015610d815761132c82828151811061131f5761131f6149dd565b6020026020010151612d26565b8061133681614a39565b915050611301565b61134961073861239e565b6113655760405162461bcd60e51b815260040161098190614736565b6001600160a01b0381166113bb5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610981565b6113c481612f5a565b6113cc6115aa565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610d81573d6000803e3d6000fd5b611409612cad565b610d956000612f72565b61141b612cad565b60005b8151811015610d815761144982828151811061143c5761143c6149dd565b6020026020010151612f5a565b8061145381614a39565b91505061141e565b61146661073861239e565b6114825760405162461bcd60e51b815260040161098190614736565b6001600160a01b0381166113c45760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610981565b6114e0612cad565b610d95612fc4565b8282828080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525061152b93508592508491506123ad565b611533610e37565b156115505760405162461bcd60e51b8152600401610981906147cb565b606061156487610cae88610ca98989612584565b5050505050505050565b60009182526097602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6115a1612cad565b610cf481612f5a565b610d95600080516020614ef48339815191526103e361239e565b6115cc612cad565b60c954604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906115fe9085908590600401614a52565b600060405180830381600087803b15801561161857600080fd5b505af115801561162c573d6000803e3d6000fd5b505060cb546001600160a01b0316159150610d8190505760cb54604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906116759085908590600401614a52565b600060405180830381600087803b15801561168f57600080fd5b505af11580156116a3573d6000803e3d6000fd5b505050505050565b6116b3612cad565b610cde83838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525085925061302c915050565b6000610954600080516020614ef48339815191528361156e565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd696020820152908101829052600090611762906060015b6040516020818303038152906040528051906020012090565b5460ff1692915050565b611774612cad565b60ce80546001600160a01b0319166001600160a01b0392909216919091179055565b61179e612cad565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e80546001600160a01b0319166001600160a01b03831617905550565b600054610100900460ff16158080156117fb5750600054600160ff909116105b806118155750303b158015611815575060005460ff166001145b6118785760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610981565b6000805460ff19166001179055801561189b576000805461ff0019166101001790555b60c980546001600160a01b03199081166001600160a01b038a81169190911790925560ca8054821689841617905560cb8054821688841617905560cc8054821687841617905560ce80549091169185169190911790556118f961314c565b611901613183565b61190a826131bc565b6119126131e3565b6040805161036081018252600661032082018181526563727970746f60d01b610340840152825282518084018452818152651dd85b1b195d60d21b602082810191909152808401919091528351808501855260018152600f60fb1b8183015283850152835180850185526003808252621b999d60ea1b82840152606085019190915284518086018652600a815269313637b1b5b1b430b4b760b11b818401526080850152845180860186526007808252663134ba31b7b4b760c91b8285015260a0860191909152855180870187528281526207070760eb1b8185015260c0860152855180870187528281526264616f60e81b8185015260e086015285518087018752828152621e9a5b60ea1b8185015261010086015285518087018752908152663837b63cb3b7b760c91b8184015261012085015284518086018652600b81526a756e73746f707061626c6560a81b81840152610140850152845180860186528381526535b632bb32b960d11b8184015261016085015284518086018652600280825261686960f01b8285015261018086019190915285518087018752848152656b726573757360d01b818501526101a086015285518087018752600580825264616e696d6560d81b828601526101c087019190915286518088018852818152646d616e676160d81b818601526101e087015286518088018852600981526862696e616e6365757360b81b8186015261020087015286518088018852818152647265616c6d60d81b818601526102208701528651808801885291825261676f60f01b82850152610240860191909152855180870187526008815267185b1d1a5b5a5cdd60c21b818501526102608601528551808701875290815264707564677960d81b81840152610280850152845180860186528381526530bab9ba34b760d11b818401526102a08501528451808601865292835265189a5d19d95d60d21b838301526102c08401929092528351808501855291825262706f6760e81b828201526102e083019190915282518084019093526004835263636c617960e01b9083015261030081019190915260005b6019811015611c5c57611c4a828260198110611c3e57611c3e6149dd565b6020020151600061302c565b80611c5481614a39565b915050611c20565b50611c8360405180604001604052806003815260200162636f6d60e81b815250600161302c565b508015610afa576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050505050565b8686868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250611d1593508592508491506123ad565b611d1d610e37565b15611d3a5760405162461bcd60e51b8152600401610981906147cb565b611d698a611d4c8b610ca98c8c612584565b611d56888a6147f5565b611d6087896147f5565b600060016126c1565b5050505050505050505050565b611d7e612cad565b60005b81811015610cde5760c9546001600160a01b03166350960239848484818110611dac57611dac6149dd565b9050602002016020810190611dc19190613f34565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401600060405180830381600087803b158015611e0257600080fd5b505af1158015611e16573d6000803e3d6000fd5b505050508080611e2590614a39565b915050611d81565b600082815260976020526040902060010154611e4881612c15565b610cde8383612d3e565b611e5c898b6147f5565b6000600282511015611e805760405162461bcd60e51b81526004016109819061496f565b611e976110336000846001865161101691906149ca565b611e9f610e37565b15611ebc5760405162461bcd60e51b8152600401610981906147cb565b60028b14611edc5760405162461bcd60e51b8152600401610981906149f3565b611f228d8d8d898960008a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061322392505050565b84341015611f725760405162461bcd60e51b815260206004820181905260248201527f4d696e74696e674d616e616765723a204e4f545f454e4f5547485f46554e44536044820152606401610981565b611f848d8d8d8d8d8d8d8c60006133e3565b843411156112e757611f9461239e565b6001600160a01b03166108fc611faa87346149ca565b6040518115909202916000818181858888f19350505050158015611fd2573d6000803e3d6000fd5b5050505050505050505050505050565b611fea612cad565b611ff38161349f565b61200f5760405162461bcd60e51b815260040161098190614a81565b600081815260cd6020526040812061202691613d76565b60405181907f0aa1aff0f830e739d86baf0e6624d6763da02f7733575e0e463886cd062dea6a90600090a250565b61205c612cad565b612065816134c5565b610cf460008261353b565b61207a8a8c6147f5565b600060028251101561209e5760405162461bcd60e51b81526004016109819061496f565b6120b56110336000846001865161101691906149ca565b6120bd610e37565b156120da5760405162461bcd60e51b8152600401610981906147cb565b60028c146120fa5760405162461bcd60e51b8152600401610981906149f3565b61213f8e8e8e8a898b8a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061322392505050565b856001600160a01b03166323b872dd61215661239e565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152306024820152604481018890526064016020604051808303816000875af11580156121a9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121cd9190614903565b6122115760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610981565b611fd28e8e8e8e8e8e8e8c8e6133e3565b61222a612cad565b6040516370a0823160e01b81523060048201526000906001600160a01b038416906370a0823190602401602060405180830381865afa158015612271573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122959190614ac3565b60405163a9059cbb60e01b81526001600160a01b038481166004830152602482018390529192509084169063a9059cbb906044016020604051808303816000875af11580156122e8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061230c9190614903565b6123505760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610981565b604080516001600160a01b0384811682526020820184905285168183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a1505050565b60006123a8613545565b905090565b6123b68361349f565b6123d25760405162461bcd60e51b815260040161098190614a81565b600083815260cf602052604090205460ff1615156001600160401b03821615151461244e5760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544c445f455850495241424c455f4d496044820152650a69a82a886960d31b6064820152608401610981565b60006124818360408051808201825260008082526020918201528151808301909252825182529182019181019190915290565b9050600a81600001511115612529576124ac6124a0826000600a61358b565b80516020909101512090565b7fb551e0305c8163b812374b8e78b577c77f226f6f10c5ad03e52699578fbc34b8036125295760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544f4b454e5f4c4142454c5f50524f4860448201526512509255115160d21b6064820152608401610981565b612532836135ca565b61257e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a204c4142454c5f494e56414c49440000006044820152606401610981565b50505050565b60608282604051602001612599929190614adc565b604051602081830303815290604052905092915050565b604080516002808252606082810190935260009190816020015b60608152602001906001900390816125ca57905050905082816000815181106125f5576125f56149dd565b602002602001018190525060cd6000858152602001908152602001600020805461261e90614b04565b80601f016020809104026020016040519081016040528092919081815260200182805461264a90614b04565b80156126975780601f1061266c57610100808354040283529160200191612697565b820191906000526020600020905b81548152906001019060200180831161267a57829003601f168201915b5050505050816001815181106126af576126af6149dd565b60209081029190910101529392505050565b60008060006126cf88612e6b565b915091508380156126e1575060028851115b8015612763575060c9546040516331a9108f60e11b8152600481018390526001600160a01b038b8116921690636352211e90602401602060405180830381865afa158015612733573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127579190614b3e565b6001600160a01b031614155b156127c35760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e616765723a20524556455253455f5245434f52445f4e60448201526913d517d0531313d5d15160b21b6064820152608401610981565b60c954604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401602060405180830381865afa15801561280c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128309190614903565b8015612921575060c9546040516331a9108f60e11b81526004810184905230916001600160a01b031690636352211e90602401602060405180830381865afa158015612880573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128a49190614b3e565b6001600160a01b03161480612921575060c95460405163d9548e5360e01b8152600481018490526001600160a01b039091169063d9548e5390602401602060405180830381865afa1580156128fd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129219190614903565b15612a12576001600160401b038516156129a35760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b15801561298a57600080fd5b505af115801561299e573d6000803e3d6000fd5b505050505b60c954604051630fb8df0360e11b81526001600160a01b0390911690631f71be06906129db908c908c908c908c908b90600401614bb0565b600060405180830381600087803b1580156129f557600080fd5b505af1158015612a09573d6000803e3d6000fd5b50505050612c09565b612a1b8261372e565b612a248861378d565b8015612a31575087516002145b8015612a4457506001600160401b038516155b15612b225760ca5488516001600160a01b039091169063c36c2125908b908b90600090612a7357612a736149dd565b602090810291909101015160cc546040516001600160e01b031960e086901b168152612aad9392916001600160a01b031690600401614c0f565b600060405180830381600087803b158015612ac757600080fd5b505af1158015612adb573d6000803e3d6000fd5b50505050600087511115612b1d5760cc54604051633a0deb9d60e21b81526001600160a01b039091169063e837ae74906129db908a908a908790600401614c44565b612c09565b60c95460405163ba5d40b760e01b81526001600160a01b039091169063ba5d40b790612b5a908c908c908c908c908b90600401614bb0565b600060405180830381600087803b158015612b7457600080fd5b505af1158015612b88573d6000803e3d6000fd5b505050506001600160401b03851615612c095760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b158015612bf057600080fd5b505af1158015612c04573d6000803e3d6000fd5b505050505b50979650505050505050565b610cf481612c2161239e565b6137e7565b612c30828261156e565b610d815760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19166001179055612c6961239e565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b612cb561239e565b6001600160a01b0316612cd06033546001600160a01b031690565b6001600160a01b031614610d955760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610981565b610cf4600080516020614ef483398151915282611e2d565b612d48828261156e565b15610d815760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19169055612d7f61239e565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612dcb610e37565b612e0e5760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881393d517d4105554d15160621b6044820152606401610981565b600080516020614ed4833981519152805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa612e4e61239e565b6040516001600160a01b03909116815260200160405180910390a1565b805160009081905b8015612ea057829150612e8c82856110166001856149ca565b925080612e9881614c7a565b915050612e73565b50915091565b60008151600003612ef95760405162461bcd60e51b815260206004820152601b60248201527f4d696e74696e674d616e616765723a204c4142454c5f454d50545900000000006044820152606401610981565b8282604051602001612f0b9190614c91565b60405160208183030381529060405280519060200120604051602001612f3b929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b610cf4600080516020614ef48339815191528261353b565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b612fcc610e37565b15612fe95760405162461bcd60e51b8152600401610981906147cb565b600080516020614ed4833981519152805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258612e4e61239e565b6000613039600084612ea6565b600081815260cd602052604090209091506130548482614cf3565b50600081815260cf602052604090819020805460ff19168415151790555181907f4fce6f6e172b04eaa80325d8e3b0180a34945000f3e214605039e8420fdf8980906130a190869061437c565b60405180910390a260c954604051634f558e7960e01b8152600481018390526001600160a01b0390911690634f558e7990602401602060405180830381865afa1580156130f2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131169190614903565b610cde5760c9546040516307befae360e51b81526001600160a01b039091169063f7df5c6090610acc9084908790600401614db2565b600054610100900460ff166131735760405162461bcd60e51b815260040161098190614dd3565b610d9561317e61239e565b612f72565b600054610100900460ff166131aa5760405162461bcd60e51b815260040161098190614dd3565b610d9560006131b761239e565b61353b565b600054610100900460ff1661179e5760405162461bcd60e51b815260040161098190614dd3565b600054610100900460ff1661320a5760405162461bcd60e51b815260040161098190614dd3565b600080516020614ed4833981519152805460ff19169055565b600061323761323287896147f5565b612e6b565b506040516bffffffffffffffffffffffff1930606090811b821660208401524660348401528b811b82166054840152606883018490526001600160c01b031960c08a901b1660888401526090830188905286901b1660b082015290915060009061331390849061330d9060c401604051602081830303815290604052805190602001206040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c8101829052600090605c01604051602081830303815290604052805190602001209050919050565b9061384b565b905061331e816116f4565b6133765760405162461bcd60e51b8152602060048201526024808201527f4d696e74696e674d616e616765723a205349474e45525f49535f4e4f545f4d49604482015263272a22a960e11b6064820152608401610981565b42866001600160401b0316116133d85760405162461bcd60e51b815260206004820152602160248201527f4d696e74696e674d616e616765723a20455850495245445f5349474e415455526044820152604560f81b6064820152608401610981565b505050505050505050565b600061342a8a6133f38a8c6147f5565b6133fd898b6147f5565b613407888a6147f5565b60008f6001600160a01b031661341b61239e565b6001600160a01b0316146126c1565b9050896001600160a01b031661343e61239e565b6001600160a01b0316827fa545b6fd3355e8d57f8c8147bafe740545bd3ea1f94bef2576a6d532a7c3b605868660405161348b9291909182526001600160a01b0316602082015260400190565b60405180910390a450505050505050505050565b600081815260cd6020526040812080548291906134bb90614b04565b9050119050919050565b6134cd612cad565b6001600160a01b0381166135325760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610981565b610cf481612f72565b610d818282612c26565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546000906001600160a01b03163303613586575060331936013560601c90565b503390565b604080518082019091526000808252602082015260405180604001604052808381526020018486602001516135c09190614e1e565b9052949350505050565b600081516000036135dd57506000919050565b60208201805160f81c603081108015906135fb575060398160ff1611155b15801561361d575060618160ff161015801561361b5750607a8160ff1611155b155b1561362c575060009392505050565b8351600181111561369a5761364e836136466001846149ca565b015160f81c90565b915060308260ff1610158015613668575060398260ff1611155b15801561368a575060618260ff16101580156136885750607a8260ff1611155b155b1561369a57506000949350505050565b60015b6136a86001836149ca565b811015613722578381015160f81c9250602d83148015906136de575060308360ff16101580156136dc575060398360ff1611155b155b80156136ff575060618360ff16101580156136fd5750607a8360ff1611155b155b156137105750600095945050505050565b8061371a81614a39565b91505061369d565b50600195945050505050565b6137378161170e565b156137845760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a20544f4b454e5f424c4f434b45440000006044820152606401610981565b610cf48161386f565b6000806137a46000846001865161101691906149ca565b60ca549091506001600160a01b0316158015906137e05750807f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f145b9392505050565b6137f1828261156e565b610d8157613809816001600160a01b031660146138f3565b6138148360206138f3565b604051602001613825929190614e31565b60408051601f198184030181529082905262461bcd60e51b82526109819160040161437c565b600080600061385a8585613a8e565b9150915061386781613ad3565b509392505050565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd6960208201529081018290526001906138ae90606001611749565b805460ff19169115159190911790556040518181527f2ce5d9351b1d590d5a066db0d2dc7602d55f092506a83a7ee8c4d78ee357d75a9060200160405180910390a150565b60606000613902836002614ea6565b61390d906002614e1e565b6001600160401b0381111561392457613924614133565b6040519080825280601f01601f19166020018201604052801561394e576020820181803683370190505b509050600360fc1b81600081518110613969576139696149dd565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110613998576139986149dd565b60200101906001600160f81b031916908160001a90535060006139bc846002614ea6565b6139c7906001614e1e565b90505b6001811115613a3f576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106139fb576139fb6149dd565b1a60f81b828281518110613a1157613a116149dd565b60200101906001600160f81b031916908160001a90535060049490941c93613a3881614c7a565b90506139ca565b5083156137e05760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610981565b6000808251604103613ac45760208301516040840151606085015160001a613ab887828585613c89565b94509450505050613acc565b506000905060025b9250929050565b6000816004811115613ae757613ae7614ebd565b03613aef5750565b6001816004811115613b0357613b03614ebd565b03613b505760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152606401610981565b6002816004811115613b6457613b64614ebd565b03613bb15760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610981565b6003816004811115613bc557613bc5614ebd565b03613c1d5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b6064820152608401610981565b6004816004811115613c3157613c31614ebd565b03610cf45760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c604482015261756560f01b6064820152608401610981565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613cc05750600090506003613d6d565b8460ff16601b14158015613cd857508460ff16601c14155b15613ce95750600090506004613d6d565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613d3d573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613d6657600060019250925050613d6d565b9150600090505b94509492505050565b508054613d8290614b04565b6000825580601f10613d92575050565b601f016020900490600052602060002090810190610cf491905b80821115613dc05760008155600101613dac565b5090565b600060208284031215613dd657600080fd5b81356001600160e01b0319811681146137e057600080fd5b6001600160401b0381168114610cf457600080fd5b8035613e0e81613dee565b919050565b60008060408385031215613e2657600080fd5b8235613e3181613dee565b946020939093013593505050565b600060208284031215613e5157600080fd5b5035919050565b60008083601f840112613e6a57600080fd5b5081356001600160401b03811115613e8157600080fd5b602083019150836020828501011115613acc57600080fd5b600080600060408486031215613eae57600080fd5b8335925060208401356001600160401b03811115613ecb57600080fd5b613ed786828701613e58565b9497909650939450505050565b6001600160a01b0381168114610cf457600080fd5b8035613e0e81613ee4565b60008060408385031215613f1757600080fd5b823591506020830135613f2981613ee4565b809150509250929050565b600060208284031215613f4657600080fd5b81356137e081613ee4565b60008083601f840112613f6357600080fd5b5081356001600160401b03811115613f7a57600080fd5b6020830191508360208260051b8501011115613acc57600080fd5b8015158114610cf457600080fd5b60008060008060008060008060a0898b031215613fbf57600080fd5b8835613fca81613ee4565b975060208901356001600160401b0380821115613fe657600080fd5b613ff28c838d01613f51565b909950975060408b013591508082111561400b57600080fd5b6140178c838d01613f51565b909750955060608b013591508082111561403057600080fd5b5061403d8b828c01613f51565b909450925050608089013561405181613f95565b809150509295985092959890939650565b600080600080600080600080600060c08a8c03121561408057600080fd5b893561408b81613ee4565b985060208a01356001600160401b03808211156140a757600080fd5b6140b38d838e01613f51565b909a50985060408c01359150808211156140cc57600080fd5b6140d88d838e01613f51565b909850965060608c01359150808211156140f157600080fd5b506140fe8c828d01613f51565b90955093505060808a013561411281613dee565b915060a08a013561412281613f95565b809150509295985092959850929598565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561417157614171614133565b604052919050565b60006001600160401b0382111561419257614192614133565b5060051b60200190565b600060208083850312156141af57600080fd5b82356001600160401b038111156141c557600080fd5b8301601f810185136141d657600080fd5b80356141e96141e482614179565b614149565b81815260059190911b8201830190838101908783111561420857600080fd5b928401925b8284101561422f57833561422081613ee4565b8252928401929084019061420d565b979650505050505050565b6000806000806060858703121561425057600080fd5b843561425b81613ee4565b93506020850135925060408501356001600160401b0381111561427d57600080fd5b61428987828801613e58565b95989497509550505050565b600080602083850312156142a857600080fd5b82356001600160401b038111156142be57600080fd5b6142ca85828601613e58565b90969095509350505050565b6000806000604084860312156142eb57600080fd5b83356001600160401b0381111561430157600080fd5b61430d86828701613e58565b909450925050602084013561432181613f95565b809150509250925092565b60005b8381101561434757818101518382015260200161432f565b50506000910152565b6000815180845261436881602086016020860161432c565b601f01601f19169290920160200192915050565b6020815260006137e06020830184614350565b60008060008060008060c087890312156143a857600080fd5b86356143b381613ee4565b955060208701356143c381613ee4565b945060408701356143d381613ee4565b935060608701356143e381613ee4565b925060808701356143f381613ee4565b915060a087013561440381613ee4565b809150509295509295509295565b60008060008060008060008060a0898b03121561442d57600080fd5b883561443881613ee4565b97506020890135965060408901356001600160401b038082111561445b57600080fd5b6144678c838d01613e58565b909850965060608b013591508082111561448057600080fd5b61448c8c838d01613f51565b909650945060808b01359150808211156144a557600080fd5b506144b28b828c01613f51565b999c989b5096995094979396929594505050565b600080602083850312156144d957600080fd5b82356001600160401b038111156144ef57600080fd5b6142ca85828601613f51565b600080600080600080600080600080600060e08c8e03121561451c57600080fd5b6145258c613ef9565b9a506001600160401b038060208e0135111561454057600080fd5b6145508e60208f01358f01613f51565b909b50995060408d013581101561456657600080fd5b6145768e60408f01358f01613f51565b909950975060608d013581101561458c57600080fd5b61459c8e60608f01358f01613f51565b90975095506145ad60808e01613e03565b945060a08d013593508060c08e013511156145c757600080fd5b506145d88d60c08e01358e01613e58565b81935080925050509295989b509295989b9093969950565b6000806000806000806000806000806000806101008d8f03121561461357600080fd5b61461c8d613ef9565b9b506001600160401b0360208e0135111561463657600080fd5b6146468e60208f01358f01613f51565b909b5099506001600160401b0360408e0135111561466357600080fd5b6146738e60408f01358f01613f51565b90995097506001600160401b0360608e0135111561469057600080fd5b6146a08e60608f01358f01613f51565b90975095506146b160808e01613e03565b94506146bf60a08e01613ef9565b935060c08d013592506001600160401b0360e08e013511156146e057600080fd5b6146f08e60e08f01358f01613e58565b81935080925050509295989b509295989b509295989b565b6000806040838503121561471b57600080fd5b823561472681613ee4565b91506020830135613f2981613ee4565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b60006020828403121561477d57600080fd5b81516137e081613dee565b60208082526023908201527f4d696e74696e674d616e616765723a20544f4b454e5f4e4f545f455850495241604082015262424c4560e81b606082015260800190565b60208082526010908201526f14185d5cd8589b194e8814105554d15160821b604082015260600190565b60006148036141e484614179565b80848252602080830192508560051b85013681111561482157600080fd5b855b818110156148b35780356001600160401b03808211156148435760008081fd5b90880190601f36818401126148585760008081fd5b82358281111561486a5761486a614133565b61487b818301601f19168801614149565b9250808352368782860101111561489457600091508182fd5b8087850188850137600090830187015250865250938201938201614823565b50919695505050505050565b60208082526024908201527f4d696e74696e674d616e616765723a2043414c4c45525f49535f4e4f545f4d49604082015263272a22a960e11b606082015260800190565b60006020828403121561491557600080fd5b81516137e081613f95565b6020808252602f908201527f4d696e74696e674d616e616765723a2053454e4445525f49535f4e4f545f415060408201526e282927ab22a22fa7a92fa7aba722a960891b606082015260800190565b60208082526025908201527f4d696e74696e674d616e616765723a204c4142454c535f4c454e4754485f42456040820152642627abaf9960d91b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b81810381811115610954576109546149b4565b634e487b7160e01b600052603260045260246000fd5b60208082526026908201527f4d696e74696e674d616e616765723a20535542444f4d41494e535f4e4f545f41604082015265131313d5d15160d21b606082015260800190565b600060018201614a4b57614a4b6149b4565b5060010190565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b60208082526022908201527f4d696e74696e674d616e616765723a20544c445f4e4f545f5245474953544552604082015261115160f21b606082015260800190565b600060208284031215614ad557600080fd5b5051919050565b6b756e732d646576746573742d60a01b81528183600c83013760009101600c01908152919050565b600181811c90821680614b1857607f821691505b602082108103614b3857634e487b7160e01b600052602260045260246000fd5b50919050565b600060208284031215614b5057600080fd5b81516137e081613ee4565b600081518084526020808501808196508360051b8101915082860160005b85811015614ba3578284038952614b91848351614350565b98850198935090840190600101614b79565b5091979650505050505050565b6001600160a01b038616815260a060208201819052600090614bd490830187614b5b565b8281036040840152614be68187614b5b565b90508281036060840152614bfa8186614b5b565b91505082151560808301529695505050505050565b600060018060a01b03808616835260606020840152614c316060840186614350565b9150808416604084015250949350505050565b606081526000614c576060830186614b5b565b8281036020840152614c698186614b5b565b915050826040830152949350505050565b600081614c8957614c896149b4565b506000190190565b60008251614ca381846020870161432c565b9190910192915050565b601f821115610cde57600081815260208120601f850160051c81016020861015614cd45750805b601f850160051c820191505b818110156116a357828155600101614ce0565b81516001600160401b03811115614d0c57614d0c614133565b614d2081614d1a8454614b04565b84614cad565b602080601f831160018114614d555760008415614d3d5750858301515b600019600386901b1c1916600185901b1785556116a3565b600085815260208120601f198616915b82811015614d8457888601518255948401946001909101908401614d65565b5085821015614da25787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b828152604060208201526000614dcb6040830184614350565b949350505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b80820180821115610954576109546149b4565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351614e6981601785016020880161432c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351614e9a81602884016020880161432c565b01602801949350505050565b8082028115828204841417610954576109546149b4565b634e487b7160e01b600052602160045260246000fdfe5496787fc1ebdfeba375028c1865f13fbb1d63c0caa356ccc1b29a80f3ebd6229f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000811000a","storage":{}},"0x24f45688d421f46cca60734bdc648ad192db0f2e":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0x1","0x97":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x12d":"0x0","0x15f":"0x5cc819c9915eadfcebd76952b8c1bc36cadd7376","0x13cf90498be59d359caa5b6092b365feab4610605d7107d1f05f8e94ac955652":"0x1","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x54563a9e1cd2dcbd0bca90d3cfa4a647e02c404a","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106102295760003560e01c8063886a69ba11610123578063cf1d21c0116100ab578063e2c49de11161006f578063e2c49de11461091d578063e3dec8fb14610932578063e43009a6146109c8578063e66f9603146109fb578063ea60c7c414610a2557610240565b8063cf1d21c014610844578063d233a3c714610859578063d547741f1461089c578063d81c8e52146108d5578063dc993a23146108ea57610240565b8063a217fddf116100f2578063a217fddf1461078a578063b4b4f63e1461079f578063bc08452b146107b4578063c4d66de8146107e7578063ca15c8731461081a57610240565b8063886a69ba146106c95780639010d07c146106de5780639173b1391461070e57806391d148541461075157610240565b80633138b6f1116101b1578063568b80b511610175578063568b80b5146105fb578063607f2d4214610610578063630fcbfb1461064e5780636cb136b0146106635780636e86b7701461069657610240565b80633138b6f1146104f55780633408e4701461050a57806336568abe1461051f5780633805550f146105585780634faa8a26146105d557610240565b80630f7e5970116101f85780630f7e59701461042357806320379ee514610438578063248a9ca31461045f5780632d0335ab146104895780632f2ff15d146104bc57610240565b806304967702146102455780630c3894bb146102765780630c53c51c146102b15780630c598220146103ea57610240565b366102405761023e610239610a58565b610a68565b005b600080fd5b34801561025157600080fd5b5061025a610b69565b604080516001600160a01b039092168252519081900360200190f35b34801561028257600080fd5b5061023e6004803603604081101561029957600080fd5b506001600160a01b0381358116916020013516610b78565b610375600480360360a08110156102c757600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156102f257600080fd5b82018360208201111561030457600080fd5b8035906020019184600183028401116401000000008311171561032657600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550508235935050506020810135906040013560ff16610cc9565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103af578181015183820152602001610397565b50505050905090810190601f1680156103dc5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156103f657600080fd5b5061023e6004803603604081101561040d57600080fd5b50803590602001356001600160a01b0316610fcc565b34801561042f57600080fd5b506103756110b9565b34801561044457600080fd5b5061044d6110d6565b60408051918252519081900360200190f35b34801561046b57600080fd5b5061044d6004803603602081101561048257600080fd5b50356110dc565b34801561049557600080fd5b5061044d600480360360208110156104ac57600080fd5b50356001600160a01b03166110f4565b3480156104c857600080fd5b5061023e600480360360408110156104df57600080fd5b50803590602001356001600160a01b031661110f565b34801561050157600080fd5b5061025a611176565b34801561051657600080fd5b5061044d611185565b34801561052b57600080fd5b5061023e6004803603604081101561054257600080fd5b50803590602001356001600160a01b0316611189565b34801561056457600080fd5b5061023e6004803603602081101561057b57600080fd5b81019060208101813564010000000081111561059657600080fd5b8201836020820111156105a857600080fd5b803590602001918460018302840111640100000000831117156105ca57600080fd5b5090925090506111ea565b61023e600480360360208110156105eb57600080fd5b50356001600160a01b03166116ec565b34801561060757600080fd5b5061044d6116f8565b34801561061c57600080fd5b5061063a6004803603602081101561063357600080fd5b503561171b565b604080519115158252519081900360200190f35b34801561065a57600080fd5b5061023e611730565b34801561066f57600080fd5b5061023e6004803603602081101561068657600080fd5b50356001600160a01b03166117d6565b3480156106a257600080fd5b5061025a600480360360208110156106b957600080fd5b50356001600160a01b031661186e565b3480156106d557600080fd5b5061044d611889565b3480156106ea57600080fd5b5061025a6004803603604081101561070157600080fd5b50803590602001356118aa565b34801561071a57600080fd5b5061023e6004803603606081101561073157600080fd5b506001600160a01b038135811691602081013590911690604001356118d1565b34801561075d57600080fd5b5061063a6004803603604081101561077457600080fd5b50803590602001356001600160a01b0316611a06565b34801561079657600080fd5b5061044d611a24565b3480156107ab57600080fd5b5061023e611a29565b3480156107c057600080fd5b5061023e600480360360208110156107d757600080fd5b50356001600160a01b0316611acf565b3480156107f357600080fd5b5061023e6004803603602081101561080a57600080fd5b50356001600160a01b0316611b67565b34801561082657600080fd5b5061044d6004803603602081101561083d57600080fd5b5035611c57565b34801561085057600080fd5b5061025a611c6e565b34801561086557600080fd5b5061023e6004803603606081101561087c57600080fd5b506001600160a01b03813581169160208101359091169060400135611c86565b3480156108a857600080fd5b5061023e600480360360408110156108bf57600080fd5b50803590602001356001600160a01b0316611de8565b3480156108e157600080fd5b5061044d611e41565b3480156108f657600080fd5b5061023e6004803603602081101561090d57600080fd5b50356001600160a01b0316611e60565b34801561092957600080fd5b5061025a611f3d565b34801561093e57600080fd5b5061023e6004803603606081101561095557600080fd5b6001600160a01b03823581169260208101359091169181019060608101604082013564010000000081111561098957600080fd5b82018360208201111561099b57600080fd5b803590602001918460018302840111640100000000831117156109bd57600080fd5b509092509050611f4c565b3480156109d457600080fd5b5061044d600480360360208110156109eb57600080fd5b50356001600160a01b0316611fe9565b348015610a0757600080fd5b5061025a60048036036020811015610a1e57600080fd5b5035611ffb565b348015610a3157600080fd5b5061025a60048036036020811015610a4857600080fd5b50356001600160a01b0316612016565b6000610a62612031565b90505b90565b604080513460208083019190915282518083039091018152908201909152610aa58273eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee8361208e565b7fa1829a9003092132f585b6ccdd167c19fe9774dbdea4260287e8a8e8ca8185d7546000908152600260205260408082205490516001600160a01b039091169034908381818185875af1925050503d8060008114610b1f576040519150601f19603f3d011682016040523d82523d6000602084013e610b24565b606091505b5050905080610b645760405162461bcd60e51b815260040180806020018281038252602781526020018061419d6027913960400191505060405180910390fd5b505050565b6009546001600160a01b031681565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020610ba981610ba4610a58565b611a06565b600a90610c495760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b820191906000526020600020905b815481529060010190602001808311610c1d57829003601f168201915b50509250505060405180910390fd5b506001600160a01b03808416600081815260036020908152604080832080546001600160a01b0319908116909155948716808452600483528184208054909616909555838352600590915280822082905551909291907f9e651a8866fbea043e911d816ec254b0e3c992c06fff32d605e72362d6023bd9908490a4505050565b6060610cd3613e2a565b50604080516060810182526001600160a01b0388166000818152600c602090815290849020548352820152908101869052610d118782878787612508565b610d4c5760405162461bcd60e51b81526004018080602001828103825260218152602001806141c46021913960400191505060405180910390fd5b6001600160a01b0387166000908152600c6020526040902054610d7690600163ffffffff6125e516565b6001600160a01b0388166000818152600c602090815260408083209490945583519283523383820181905260609484018581528b51958501959095528a517f5845892132946850460bff5a0083f71031bc5bf9aadcd40f1de79423eac9b10b958d9592948d94919260808501928601918190849084905b83811015610e05578181015183820152602001610ded565b50505050905090810190601f168015610e325780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a160006060306001600160a01b0316888a6040516020018083805190602001908083835b60208310610e835780518252601f199092019160209182019101610e64565b6001836020036101000a038019825116818451168082178552505050505050905001826001600160a01b03166001600160a01b031660601b8152601401925050506040516020818303038152906040526040518082805190602001908083835b60208310610f025780518252601f199092019160209182019101610ee3565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610f64576040519150601f19603f3d011682016040523d82523d6000602084013e610f69565b606091505b509150915081610fc0576040805162461bcd60e51b815260206004820152601c60248201527f46756e6374696f6e2063616c6c206e6f74207375636365737366756c00000000604482015290519081900360640190fd5b98975050505050505050565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020610ff881610ba4610a58565b600a9061105e5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5060008381526002602052604080822080546001600160a01b0319166001600160a01b0386169081179091559051909185917f8643692ae1c12ec91fa18e50b82ed93fa314f580999a236824db6de9ae0d839b9190a3505050565b604051806040016040528060018152602001603160f81b81525081565b600b5490565b6000818152600160205260409020600201545b919050565b6001600160a01b03166000908152600c602052604090205490565b60008281526001602052604090206002015461112d90610ba4610a58565b6111685760405162461bcd60e51b815260040180806020018281038252602f815260200180613f78602f913960400191505060405180910390fd5b611172828261263f565b5050565b6008546001600160a01b031690565b4690565b611191610a58565b6001600160a01b0316816001600160a01b0316146111e05760405162461bcd60e51b815260040180806020018281038252602f815260200180614286602f913960400191505060405180910390fd5b61117282826126ae565b606061123361122e84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061271d92505050565b612798565b905060006112548260028151811061124757fe5b602002602001015161291a565b6112796112748460088151811061126757fe5b6020026020010151612a62565b612b2c565b6112898460098151811061124757fe5b6040516020018084815260200183805190602001908083835b602083106112c15780518252601f1990920191602091820191016112a2565b51815160209384036101000a6000190180199092169116179052920193845250604080518085038152938201815283519382019390932060008181526006909252929020549194505060ff1615915061134d90505760405162461bcd60e51b81526004018080602001828103825260288152602001806142096028913960400191505060405180910390fd5b6000818152600660208190526040909120805460ff19166001179055825160609161138a9161122e9161138591879190811061126757fe5b61271d565b9050611394613e54565b6113b1826003815181106113a457fe5b6020026020010151612798565b6113c18560098151811061124757fe5b815181106113cb57fe5b6020026020010151905060006113fc6113e383612798565b6000815181106113ef57fe5b6020026020010151612c9f565b6001600160a01b0380821660009081526004602052604090205491925016806114565760405162461bcd60e51b81526004018080602001828103825260228152602001806140af6022913960400191505060405180910390fd5b6001600160a01b03808216600090815260056020908152604080832054835260029091529020548751911690611493908890600890811061124757fe5b63ffffffff1916156114d65760405162461bcd60e51b815260040180806020018281038252602581526020018061408a6025913960400191505060405180910390fd5b61151e6114e98860068151811061126757fe5b6114f98960088151811061126757fe5b6115098a60078151811061126757fe5b6115198b60058151811061124757fe5b612d2f565b61156f576040805162461bcd60e51b815260206004820152601f60248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f50524f4f4600604482015290519081900360640190fd5b6115dd6115828860028151811061124757fe5b6115928960038151811061124757fe5b6115a28a60048151811061124757fe5b60001b6115b58b60058151811061124757fe5b60001b6115c88c60008151811061124757fe5b6115d88d60018151811061126757fe5b612f76565b50806001600160a01b0316638274664f6115f5610a58565b846115ff886130bf565b6040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561167b578181015183820152602001611663565b50505050905090810190601f1680156116a85780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b1580156116c957600080fd5b505af11580156116dd573d6000803e3d6000fd5b50505050505050505050505050565b6116f581610a68565b50565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b01902081565b60066020526000908152604090205460ff1681565b600061173e81610ba4610a58565b600a906117a45760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506116f56040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b81525061312d565b60006117e481610ba4610a58565b600a9061184a5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5050600780546001600160a01b0319166001600160a01b0392909216919091179055565b6004602052600090815260409020546001600160a01b031681565b604080516826a0a82faa27a5a2a760b91b8152905190819003600901902081565b60008281526001602052604081206118c8908363ffffffff6131e916565b90505b92915050565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b0190206118fd81610ba4610a58565b600a906119635760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b03848116600090815260036020526040902054161580156119a457506001600160a01b0383811660009081526004602052604090205416155b6119f5576040805162461bcd60e51b815260206004820181905260248201527f526f6f74436861696e4d616e616765723a20414c52454144595f4d4150504544604482015290519081900360640190fd5b611a008484846131f5565b50505050565b60008281526001602052604081206118c8908363ffffffff61348416565b600081565b6000611a3781610ba4610a58565b600a90611a9d5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506116f56040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613499565b6000611add81610ba4610a58565b600a90611b435760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5050600880546001600160a01b0319166001600160a01b0392909216919091179055565b60005460ff1615611bb0576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b611be16040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613537565b611c126040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613499565b611c1d600082611168565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020611c479082611168565b506000805460ff19166001179055565b60008181526001602052604081206118cb90613589565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020611cb281610ba4610a58565b600a90611d185760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b0380851660009081526003602081815260408084205488861685526004835281852054861680865293909252909220549183169290911615611d8e576001600160a01b038116600090815260036020908152604080832080546001600160a01b031916905560059091528120555b6001600160a01b038281166000908152600460205260409020541615611dd5576001600160a01b038216600090815260046020526040902080546001600160a01b03191690555b611de08686866131f5565b505050505050565b600082815260016020526040902060020154611e0690610ba4610a58565b6111e05760405162461bcd60e51b81526004018080602001828103825260308152602001806140f96030913960400191505060405180910390fd5b604080516611115413d4d25560ca1b8152905190819003600701902081565b6000611e6e81610ba4610a58565b600a90611ed45760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b038216611f1a5760405162461bcd60e51b815260040180806020018281038252602d815260200180613fa7602d913960400191505060405180910390fd5b50600980546001600160a01b0319166001600160a01b0392909216919091179055565b6007546001600160a01b031690565b6001600160a01b03831673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee1415611fa85760405162461bcd60e51b81526004018080602001828103825260248152602001806141e56024913960400191505060405180910390fd5b611a00848484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061208e92505050565b60056020526000908152604090205481565b6002602052600090815260409020546001600160a01b031681565b6003602052600090815260409020546001600160a01b031681565b6000333014156120895760606000368080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505050503601516001600160a01b03169150610a659050565b503390565b6001600160a01b03808316600090815260056020908152604080832054600390925290912054909116158015906120c457508015155b6120ff5760405162461bcd60e51b81526004018080602001828103825260228152602001806140af6022913960400191505060405180910390fd5b6000818152600260205260409020546001600160a01b0316806121535760405162461bcd60e51b81526004018080602001828103825260248152602001806140176024913960400191505060405180910390fd5b6001600160a01b0385166121ae576040805162461bcd60e51b815260206004820152601e60248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f555345520000604482015290519081900360640190fd5b806001600160a01b031663e375b64e6121c5610a58565b8787876040518563ffffffff1660e01b815260040180856001600160a01b03166001600160a01b03168152602001846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561225c578181015183820152602001612244565b50505050905090810190601f1680156122895780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b1580156122ab57600080fd5b505af11580156122bf573d6000803e3d6000fd5b50505050606085858560405160200180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015612338578181015183820152602001612320565b50505050905090810190601f1680156123655780820380516001836020036101000a031916815260200191505b5060408051808303601f19018152828252600780546009546611115413d4d25560ca1b865284519586900390920185206020808701828152878701968752855160608901528551959d506001600160a01b039384169c506316f198319b5092909316985096508a955093608001919085019080838360005b838110156123f55781810151838201526020016123dd565b50505050905090810190601f1680156124225780820380516001836020036101000a031916815260200191505b5093505050506040516020818303038152906040526040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561249b578181015183820152602001612483565b50505050905090810190601f1680156124c85780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b1580156124e857600080fd5b505af11580156124fc573d6000803e3d6000fd5b50505050505050505050565b60006001600160a01b03861661254f5760405162461bcd60e51b81526004018080602001828103825260258152602001806141296025913960400191505060405180910390fd5b600161256261255d87613594565b613620565b83868660405160008152602001604052604051808581526020018460ff1660ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa1580156125bc573d6000803e3d6000fd5b505050602060405103516001600160a01b0316866001600160a01b031614905095945050505050565b6000828201838110156118c8576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600082815260016020526040902061265d908263ffffffff61366c16565b156111725761266a610a58565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b60008281526001602052604090206126cc908263ffffffff61368116565b15611172576126d9610a58565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612725613e54565b600082511161277b576040805162461bcd60e51b815260206004820152601f60248201527f524c505265616465723a20494e56414c49445f42595445535f4c454e47544800604482015290519081900360640190fd5b506040805180820190915281518152602082810190820152919050565b60606127a382613696565b6127f4576040805162461bcd60e51b815260206004820152601860248201527f524c505265616465723a204954454d5f4e4f545f4c4953540000000000000000604482015290519081900360640190fd5b60006127ff836136c2565b905060608167ffffffffffffffff8111801561281a57600080fd5b5060405190808252806020026020018201604052801561285457816020015b612841613e54565b8152602001906001900390816128395790505b5090506000612866856020015161374e565b855190915081146128a85760405162461bcd60e51b81526004018080602001828103825260278152602001806142316027913960400191505060405180910390fd5b60006128b786602001516137e2565b60208701510190506000805b8581101561290e576128d48361374e565b91506040518060400160405280838152602001848152508582815181106128f757fe5b6020908102919091010152918101916001016128c3565b50929695505050505050565b600061292582613696565b15612977576040805162461bcd60e51b815260206004820181905260248201527f524c505265616465723a204445434f44494e475f4c4953545f41535f55494e54604482015290519081900360640190fd5b8151602110156129ce576040805162461bcd60e51b815260206004820152601e60248201527f524c505265616465723a20494e56414c49445f55494e545f4c454e4754480000604482015290519081900360640190fd5b60006129dd836020015161374e565b83519091508114612a1f5760405162461bcd60e51b81526004018080602001828103825260278152602001806142b56027913960400191505060405180910390fd5b6000612a2e84602001516137e2565b84516020808701518301805193945091849003929190831015612a5857826020036101000a820491505b5095945050505050565b60606000612a73836020015161374e565b83519091508114612ab55760405162461bcd60e51b81526004018080602001828103825260288152602001806140d16028913960400191505060405180910390fd5b6000612ac484602001516137e2565b845190915081900360608167ffffffffffffffff81118015612ae557600080fd5b506040519080825280601f01601f191660200182016040528015612b10576020820181803683370190505b5090506000816020019050612a58848860200151018285613845565b604080516020810190915260008152815160609190156118cb57600080612b54600086613890565b60f81c90506001811480612b6b57508060ff166003145b15612bfa57600185516002020367ffffffffffffffff81118015612b8e57600080fd5b506040519080825280601f01601f191660200182016040528015612bb9576020820181803683370190505b5092506000612bc9600187613890565b90508084600081518110612bd957fe5b60200101906001600160f81b031916908160001a9053506001925050612c4b565b600285516002020367ffffffffffffffff81118015612c1857600080fd5b506040519080825280601f01601f191660200182016040528015612c43576020820181803683370190505b509250600091505b60ff82165b8351811015612c9657612c6b8360ff16820360020187613890565b848281518110612c7757fe5b60200101906001600160f81b031916908160001a905350600101612c50565b50505092915050565b6000612caa82613696565b15612ce65760405162461bcd60e51b815260040180806020018281038252602381526020018061417a6023913960400191505060405180910390fd5b8151601514612d265760405162461bcd60e51b81526004018080602001828103825260218152602001806142dc6021913960400191505060405180910390fd5b6118cb8261291a565b6000612d39613e54565b612d428461271d565b90506060612d4f82612798565b905060608085600082612d618b612b2c565b9050805160001415612d7d576000975050505050505050612f6e565b60005b8651811015612f65578151831115612da357600098505050505050505050612f6e565b612dbf878281518110612db257fe5b60200260200101516130bf565b955085805190602001208414612de057600098505050505050505050612f6e565b612def8782815181106113a457fe5b9450845160111415612eac578151831415612e4b578c80519060200120612e1c8660108151811061126757fe5b805190602001201415612e3a57600198505050505050505050612f6e565b600098505050505050505050612f6e565b6000828481518110612e5957fe5b016020015160f81c90506010811115612e7e5760009950505050505050505050612f6e565b612e9d868260ff1681518110612e9057fe5b60200260200101516138ed565b94505060019290920191612f5d565b845160021415612e3a576000612ed2612ecb8760008151811061126757fe5b848661398c565b905082518185011415612f28578d80519060200120612ef78760018151811061126757fe5b805190602001201415612f165760019950505050505050505050612f6e565b60009950505050505050505050612f6e565b80612f3f5760009950505050505050505050612f6e565b8084019350612f5486600181518110612e9057fe5b9450612f5d9050565b600101612d80565b50505050505050505b949350505050565b600854604080516320a9cea560e11b81526004810185905290516000928392839283926001600160a01b0316916341539d4a9160248083019260a0929190829003018186803b158015612fc857600080fd5b505afa158015612fdc573d6000803e3d6000fd5b505050506040513d60a0811015612ff257600080fd5b5080516020820151606090920151909450909250905061306161301b8b8463ffffffff613a6b16565b6040805160208082018f90528183018e9052606082018d905260808083018d90528351808403909101815260a0909201909252805191012090858863ffffffff613aad16565b6130b2576040805162461bcd60e51b815260206004820181905260248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f484541444552604482015290519081900360640190fd5b9998505050505050505050565b606080826000015167ffffffffffffffff811180156130dd57600080fd5b506040519080825280601f01601f191660200182016040528015613108576020820181803683370190505b50905060008160200190506131268460200151828660000151613845565b5092915050565b6040518060800160405280604f815260200161403b604f913980516020918201208251838301206040805180820190915260018152603160f81b930192909252907fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc630613198611185565b604080516020808201979097528082019590955260608501939093526001600160a01b03909116608084015260a0808401919091528151808403909101815260c090920190528051910120600b5550565b60006118c88383613c03565b6000818152600260205260409020546001600160a01b03166132485760405162461bcd60e51b815260040180806020018281038252602a815260200180613f07602a913960400191505060405180910390fd5b6001600160a01b03808416600081815260036020908152604080832080549588166001600160a01b031996871681179091558084526004835281842080549096168517909555838352600590915280822085905551849392917f9e651a8866fbea043e911d816ec254b0e3c992c06fff32d605e72362d6023bd991a4604080516001600160a01b0380861660208084019190915281861683850152606083810186905284518085038201815260808086018088526007546009546826a0a82faa27a5a2a760b91b9092528851978890036089018820888701818152898b019a8b528551968a019690965284519499918816986316f1983198939093169690958a9590949293909201919085019080838360005b8381101561337357818101518382015260200161335b565b50505050905090810190601f1680156133a05780820380516001836020036101000a031916815260200191505b5093505050506040516020818303038152906040526040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015613419578181015183820152602001613401565b50505050905090810190601f1680156134465780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b15801561346657600080fd5b505af115801561347a573d6000803e3d6000fd5b5050505050505050565b60006118c8836001600160a01b038416613c67565b806040516020018082805190602001908083835b602083106134cc5780518252601f1990920191602091820191016134ad565b51815160209384036101000a60001901801990921691161790527f3a20494e53554646494349454e545f5045524d495353494f4e530000000000009190930190815260408051808303600519018152601a909201905280516111729550600a94509201919050613e6e565b60005460ff1615613580576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b611c478161312d565b60006118cb82613c7f565b6000604051806080016040528060438152602001613fd460439139805190602001208260000151836020015184604001518051906020012060405160200180858152602001848152602001836001600160a01b03166001600160a01b03168152602001828152602001945050505050604051602081830303815290604052805190602001209050919050565b600061362a6110d6565b82604051602001808061190160f01b81525060020183815260200182815260200192505050604051602081830303815290604052805190602001209050919050565b60006118c8836001600160a01b038416613c83565b60006118c8836001600160a01b038416613ccd565b6020810151805160009190821a9060c08210156136b8576000925050506110ef565b5060019392505050565b6000806000905060006136d884602001516137e2565b602085015185519181019250015b80821015613745576136f78261374e565b820191508082111561373a5760405162461bcd60e51b815260040180806020018281038252602c81526020018061414e602c913960400191505060405180910390fd5b6001909201916136e6565b50909392505050565b80516000908190811a60808110156137695760019150613126565b60b881101561377e57607e1981019150613126565b60c08110156137ab5760b78103600185019450806020036101000a85510460018201810193505050613126565b60f88110156137c05760be1981019150613126565b60019390930151602084900360f7016101000a900490920160f5190192915050565b8051600090811a60808110156137fc5760009150506110ef565b60b8811080613817575060c08110801590613817575060f881105b156138265760019150506110ef565b60c081101561383a5760b5190190506110ef565b60f5190190506110ef565b8061384f57610b64565b5b6020811061386f578251825260209283019290910190601f1901613850565b915181516020939093036101000a6000190180199091169216919091179052565b600060028306156138c15760108260028504815181106138ac57fe5b016020015160f81c816138bb57fe5b066138e3565b60108260028504815181106138d257fe5b016020015160f81c816138e157fe5b045b60f81b9392505050565b6000806138fd836020015161374e565b8351909150811461393f5760405162461bcd60e51b815260040180806020018281038252602e815260200180614258602e913960400191505060405180910390fd5b825160211461397f5760405162461bcd60e51b8152600401808060200182810382526025815260200180613f536025913960400191505060405180910390fd5b5050602001516001015190565b600080606061399a86612b2c565b90506060815167ffffffffffffffff811180156139b657600080fd5b506040519080825280601f01601f1916602001820160405280156139e1576020820181803683370190505b509050845b82518601811015613a3b5760008782815181106139ff57fe5b602001015160f81c60f81b9050808388840381518110613a1b57fe5b60200101906001600160f81b031916908160001a905350506001016139e6565b50808051906020012082805190602001201415613a5b5781519250613a60565b600092505b509095945050505050565b60006118c883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250613d93565b60006020825181613aba57fe5b0615613b04576040805162461bcd60e51b8152602060048201526014602482015273092dcecc2d8d2c840e0e4dedecc40d8cadccee8d60631b604482015290519081900360640190fd5b60006020835181613b1157fe5b0490508060020a8510613b63576040805162461bcd60e51b81526020600482015260156024820152744c65616620696e64657820697320746f6f2062696760581b604482015290519081900360640190fd5b60008660205b85518111613bf55785810151925060028806613bb55781836040516020018083815260200182815260200192505050604051602081830303815290604052805190602001209150613be7565b828260405160200180838152602001828152602001925050506040516020818303038152906040528051906020012091505b600288049750602001613b69565b509094149695505050505050565b81546000908210613c455760405162461bcd60e51b8152600401808060200182810382526022815260200180613f316022913960400191505060405180910390fd5b826000018281548110613c5457fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000613c8f8383613c67565b613cc5575081546001818101845560008481526020808220909301849055845484825282860190935260409020919091556118cb565b5060006118cb565b60008181526001830160205260408120548015613d895783546000198083019190810190600090879083908110613d0057fe5b9060005260206000200154905080876000018481548110613d1d57fe5b600091825260208083209091019290925582815260018981019092526040902090840190558654879080613d4d57fe5b600190038181906000526020600020016000905590558660010160008781526020019081526020016000206000905560019450505050506118cb565b60009150506118cb565b60008184841115613e225760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015613de7578181015183820152602001613dcf565b50505050905090810190601f168015613e145780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60405180606001604052806000815260200160006001600160a01b03168152602001606081525090565b604051806040016040528060008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10613eaf57805160ff1916838001178555613edc565b82800160010185558215613edc579182015b82811115613edc578251825591602001919060010190613ec1565b50613ee8929150613eec565b5090565b610a6591905b80821115613ee85760008155600101613ef256fe526f6f74436861696e4d616e616765723a20544f4b454e5f545950455f4e4f545f535550504f52544544456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473524c505265616465723a20494e56414c49445f55494e545f5354524943545f4c454e475448416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e74526f6f74436861696e4d616e616765723a20494e56414c49445f4348494c445f434841494e5f414444524553534d6574615472616e73616374696f6e2875696e74323536206e6f6e63652c616464726573732066726f6d2c62797465732066756e6374696f6e5369676e617475726529526f6f74436861696e4d616e616765723a20494e56414c49445f544f4b454e5f54595045454950373132446f6d61696e28737472696e67206e616d652c737472696e672076657273696f6e2c6164647265737320766572696679696e67436f6e74726163742c627974657333322073616c7429526f6f74436861696e4d616e616765723a20494e56414c49445f4252414e43485f4d41534b526f6f74436861696e4d616e616765723a20544f4b454e5f4e4f545f4d4150504544524c505265616465723a2042595445535f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b654e61746976654d6574615472616e73616374696f6e3a20494e56414c49445f5349474e4552524c505265616465723a204e554d5f4954454d535f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a204445434f44494e475f4c4953545f41535f41444452455353526f6f74436861696e4d616e616765723a2045544845525f5452414e534645525f4641494c45445369676e657220616e64207369676e617475726520646f206e6f74206d61746368526f6f74436861696e4d616e616765723a20494e56414c49445f524f4f545f544f4b454e526f6f74436861696e4d616e616765723a20455849545f414c52454144595f50524f434553534544524c505265616465723a204c4953545f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a2055494e545f5354524943545f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66524c505265616465723a2055494e545f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a20494e56414c49445f414444524553535f4c454e475448a164736f6c6343000606000a","storage":{"0x0":"0x1","0x7":"0xe0afc4e9e03e4aa67257df7a2eca77454309789d","0x8":"0xbe5deac45dd1ca4ee18dc2d585d84d3d3cb82b0d","0x9":"0x0","0xa":"0x55","0xb":"0x2603903cfd8895fdde3da4d607d44203e86098073e351022fd12745d3436e93a","0xeb5be412f275a18f6e4d622aee4ff40b21467c926224771b782d4c095d1444b":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x162b27a30e878e20728deaa5c9814fd57ccf962b998b8733ce65749bc61c552f":"0x58a175bebc8ec21a94ea63aa5a28743945940ee6","0x1a93463c7bbb7215968307c7cd357c2009c10df2a511dd62c1189098e4f3249b":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x415fec6a4fd7706b96d3a0a30121284bc5e2b28b978c20486c9f5e20d44fc781":"0x1","0x4dc1f0160d96279adc262db20edcc15527e32cb28eda582becc5ac0bc453be34":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x5fc73aa2ab567caef8745f0709fae506c01972ffb297bd9225bc262d6e87746f":"0x1","0x6ce1cd05966f090b8daa7b2ee7f80930bbb39d19b693045725fbae5fa44fda90":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0xa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb49":"0x1","0xc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a8":"0x526f6f74436861696e4d616e616765723a20494e53554646494349454e545f50","0xc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a9":"0x45524d495353494f4e5300000000000000000000000000000000000000000000","0xd61ba0007bb57e62613f82f528c06ba46d36349cf5be567b12f878ef04849a7d":"0x1","0xf960df71fab73e593428c10f56f55e7ea46985963177def0458b97f1afec9576":"0xcf4e755f204163e9213ba8b1305036e386579ccc70731c25c62a101197811f48"}},"0x287dee389caaa49edc112888f2bcfd927b472e25":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c80634f89059e1461002d575b5f80fd5b61004061003b366004610125565b610054565b604051901515815260200160405180910390f35b5f806100985f85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101029050565b60ff1690505f811180156100f857506100f36100b5826001610191565b85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101029050565b60ff16155b9150505b92915050565b5f828281518110610115576101156101b0565b016020015160f81c905092915050565b5f8060208385031215610136575f80fd5b823567ffffffffffffffff8082111561014d575f80fd5b818501915085601f830112610160575f80fd5b81358181111561016e575f80fd5b86602082850101111561017f575f80fd5b60209290920196919550909350505050565b808201808211156100fc57634e487b7160e01b5f52601160045260245ffd5b634e487b7160e01b5f52603260045260245ffdfea164736f6c6343000818000a","storage":{}},"0x3198fc981626687f4b5bdf0fbeabb0a5e0489c03":{"nonce":1,"balance":"0x8ac7230489e80000","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0x1","0x97":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x13cf90498be59d359caa5b6092b365feab4610605d7107d1f05f8e94ac955652":"0x1","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xc2110388dd54228ae0a834119457ede938bf0b57","0x412386de53449251cbf7ce1f4c6a038bf9c0746e62d331b08ef0c3fa7d0ab672":"0x4fbf7b2f171336958be5d15ff762a5cff5363568","0x60793a5062d506d35cc8f1beda67ee5028c16bfcd9c923d5bfc439c04bd929b1":"0x6ac8f19d1e0f81147cdf2a1e53cb1f4e18417204","0x75df8b43665bf2e4996a686913c4c278ca7aed85444740ca40355b1c9a94b504":"0x1","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xf851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004":"0xc965345edac823d56812cd20a10316233916a605"}},"0x39a27956b78d00a4e00ea8833ff0947410a2933f":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xc9":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0xca":"0x4a3c194eb88966178bfdd81744dddafed611b830","0xcb":"0x4872cc1be60a9db9c880a0a437da7a6af134f08f","0xcc":"0xf8c26340c1eaea6c7ff1760b25005e1306953572","0xce":"0xce4bb7dc1eb9dce75743de6a4b48534fd427ef51","0xc6892776bb3da1e1199a03e0d3131aea089754b59c557b750c478ebc85ccaa":"0x6e66740000000000000000000000000000000000000000000000000000000006","0x6cb37a6d512a1e227e627eddc133023e6d00bfedff31a600abb75aa93e9a4a0":"0x6b7265737573000000000000000000000000000000000000000000000000000c","0x8e966fe8b9b43d48017ba1eb562ced91049de778396aaa438773698b3fa8fb6":"0x0","0x94a32b1c7b189ce7293f7ae444cdcab6800d858454022d15355d5ecc5b32b26":"0x0","0xa4b2d73a9f36ca5eed107f7c3d2ba877fb7537d447256726bcde9bac9e9aaee":"0x0","0xe0e3ab102c26f13da20123aa517b31e99cf65b7b720ba0dd7138012fd23eff2":"0x0","0x1203b5e51c7d5be6da42b83f22878d3583e53123857d27fc3cff3df46fb9126c":"0x0","0x13477730039a04f4290adf0e48e98b233579c040281545e4446ce662ba56a9be":"0x7800000000000000000000000000000000000000000000000000000000000002","0x1e06d49ce7b00846691778f302e94a3ac9c2633d745ebe73d68353c941e68dee":"0x626974636f696e0000000000000000000000000000000000000000000000000e","0x1e99199375610ffe00d28ee5827c616cf6469be3de2a2f738d955eb6b62127e8":"0x1","0x21e80eded1b2e1c5d976c85e89dde60bd4e99a8d66346af0e359ac854bceba44":"0x0","0x254d9ade81439f29723741d6ff407eab1fe03caffb042bd85e53955e41fb9792":"0x616c74696d697374000000000000000000000000000000000000000000000010","0x269db12b2cd2aeb7d5f52eda16edb1d211ccbea12da1ebfa60ed5f8f396c1d04":"0x0","0x2a3f03435eedee01de7e1c4386b04ca8469edd8df00408cd6d2b058bce1cecfa":"0x0","0x323a3cb169499006d6635c58232c8c58e23c20bf9e1d309d6b3bc6fb2c7a093d":"0x0","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x229c56b7805ab5935a883207f6a6bd5847e65aee","0x37aac864d4715a975bd45cae6be99de9f7968cf995917cc7f8192940fb62acbf":"0x0","0x3f69f26894a7ae0f7a7aa6c2d77935589dabbff6435aee960da15064dea7cd59":"0x64616f0000000000000000000000000000000000000000000000000000000006","0x467a68fda3230ce33f64703ebdbd91caccf235403282ae9fe390675ef39e9c94":"0x0","0x50ae8c017c4c1fddbe9509bd2b916f5dd9da11ddb639f2a4230322f49a41ac87":"0x1","0x5496787fc1ebdfeba375028c1865f13fbb1d63c0caa356ccc1b29a80f3ebd622":"0x0","0x576dd8d1a7b74aba0a99a213f50d74aa642a2c80bd5a854b24aac7568afea0f7":"0x626974676574000000000000000000000000000000000000000000000000000c","0x5b54338c052ce22ec334b6c5a19c4b122701c5fd4d3a2a5f5890f57050e0aafa":"0x626c6f636b636861696e00000000000000000000000000000000000000000014","0x5d9de30f0e5e02628e726fd23e310ee9e64489866fa6959825148a25d40e4c83":"0x0","0x5e2d99ab4a1a153039a4b2e068d64802da8735071a2d018ee9d04297945bed00":"0x0","0x670006c4193123492fb25db465ed52e62aff2f076289f4f1a5f167237f5e579d":"0x6d616e676100000000000000000000000000000000000000000000000000000a","0x6deac161c541001c0d79afaf7b809418785fa5ca6533d86bcf312e7213ee08fc":"0x0","0x6eaa0db35203bc0d58aff54ca630dd125b27758aa6204f7a11c0617f7c2fa776":"0x706f670000000000000000000000000000000000000000000000000000000006","0x732abe4661f55132b7f119cab9a9985be6630299dfc92870cc910f147795bc44":"0x0","0x743eb517f46c12bb593097087a972028308ce2e819a76cfb5488751f9d1ca34a":"0x7265616c6d00000000000000000000000000000000000000000000000000000a","0x750dfb39c9afc828c341e1a8e8fdca0b3914baf43303e1ef21fbfe8ec8ee016a":"0x0","0x7cbf647b96a1d1a533ea4bc3a4a8a78f166bd91e6a96afb12f063fef0e9cb960":"0x0","0x7dc972254779cfb51850c0eaccfcb71207822b3c10d4840567bec3dfbf0dff13":"0x636f6d0000000000000000000000000000000000000000000000000000000006","0x7dfa160584f41570c33e8e6c42c5314a7b45ddc162f99fd101ccc10c7b5b3dd3":"0x77616c6c6574000000000000000000000000000000000000000000000000000c","0x868a5f38a2d46181ffad442d7bc5b337b3c349a58e4979f2901786c6123b996c":"0x6b6c65766572000000000000000000000000000000000000000000000000000c","0x87b2c647061aef22ef1aba96c67f440d471dfac27e9873ff4a03793b402d32ee":"0x706f6c79676f6e0000000000000000000000000000000000000000000000000e","0x893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e":"0x7c3c91245769c8b7450ad522792dec4bd4bf797f","0x91e744007b4b3621bec7c01ea851c3f48cf196b9cc6c566a48cec8c5faac6e62":"0x0","0x92c5a28dd4caaa50e0a8370243a5c600f64349e8b03604b403cbe111b50f1f7b":"0x3838380000000000000000000000000000000000000000000000000000000006","0x947936973a3a21b10c8980e1a8939a55c7339d302161884a3de05cf090e812f0":"0x1","0x9535d3ea47c5e1398d3405b4fadc73de6b1b1e6a66f674a8886ab7a6c873a390":"0x63727970746f000000000000000000000000000000000000000000000000000c","0x9956a4e94676c45844be3667f17e077c7cb53aa4e87e5a71d65e56b291232715":"0x676f000000000000000000000000000000000000000000000000000000000004","0x9c6ba1ddff1ffbc14dcdc1f97db867554a42a39e00e892c7e882dbb3dca89ebf":"0x6869000000000000000000000000000000000000000000000000000000000004","0x9f836a0f81651f597cee678b440ba8c853c633e6654809efb83d4b22aff06fb2":"0x616e696d6500000000000000000000000000000000000000000000000000000a","0x9fecf1e12f4b8ec337da992721a0f27526ddbd6be1e77885ab963c09afcf0fc1":"0x0","0xab129a0f8c6cf8d160116a28abc7369c2f8a098fc023f00f07dc3e1d5798e47a":"0x0","0xb04c0eb6f034d9a3179a4e6f953bdf8afc78ba2cdcfbc775076e1c2a0bb67818":"0x0","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xbe51b53bc2060a7a6419622b5a9adc00b50a57e6aa741882f2f60f95d4580078":"0x636c617900000000000000000000000000000000000000000000000000000008","0xbf350522e335b8ab3da1d099c93cdc09179f1e15ea6aa1acfaa4afb1ef87eabf":"0x756e73746f707061626c65000000000000000000000000000000000000000016","0xcbf7a3d53e0851ac15a415b99c2ba95a2497dd9dd44068ac261bcbdafdfe8472":"0x707564677900000000000000000000000000000000000000000000000000000a","0xcf4411216f3fdf787d1cfe037bbcfa0d5293d83a8082f8e4141266399e2a784b":"0x61757374696e000000000000000000000000000000000000000000000000000c","0xcfdbac664139565f92cce149a345e5f19355d25b3eb8a70c549d5da3283a15b8":"0x7a696c0000000000000000000000000000000000000000000000000000000006","0xcfeb64c30a93ecd7224f854b09be57bb6b3962e739fa8e3ea3a1851502474c07":"0x1","0xe03c9c593ce8661bd39f77653f7ca6c43f093aa7f3b95890f309f67b57f39e74":"0x0","0xe50c62c16d12655dfdbd61c232155e5c3a1cf61977d2d8e7449cb88611b73832":"0x0","0xeeb0b17d77f2c9069ad443f3927c0802d98d5553e52b17c985d45d4a10b79566":"0x62696e616e636575730000000000000000000000000000000000000000000012","0xf562ef0db022f25a957fb6e49aa07004f14a50ed5b23279e9ac25b4632f7bf1c":"0x0","0xf6776268d6c5847a771099280c742d684a4b22bac609ba615de51f7f893ff2bc":"0x0"}},"0x3f1194b9019002863ad0dbbe295294547c0d36a9":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100b1575f3560e01c80635b0fc9c31161006e5780635b0fc9c3146101a55780635ef2c7f0146101b8578063a22cb465146101cb578063cf408823146101de578063e985e9c5146101f1578063f79fe5381461023c575f80fd5b80630178b8bf146100b557806302571be3146100fd57806306ab59231461011057806314ab90381461013157806316a25cbd146101465780631896f70a14610192575b5f80fd5b6100e06100c3366004610785565b5f908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100e061010b366004610785565b610266565b61012361011e3660046107b7565b610292565b6040519081526020016100f4565b61014461013f366004610800565b61035f565b005b610179610154366004610785565b5f90815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100f4565b6101446101a036600461082a565b61042e565b6101446101b336600461082a565b6104ef565b6101446101c636600461084b565b61058e565b6101446101d936600461089e565b6105af565b6101446101ec3660046108d7565b61061a565b61022c6101ff366004610921565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205460ff1690565b60405190151581526020016100f4565b61022c61024a366004610785565b5f908152602081905260409020546001600160a01b0316151590565b5f818152602081905260408120546001600160a01b031630810361028c57505f92915050565b92915050565b5f8381526020819052604081205484906001600160a01b0316338114806102db57506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b6102e3575f80fd5b604080516020808201899052818301889052825180830384018152606090920190925280519101206103158186610635565b6040516001600160a01b0386168152869088907fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829060200160405180910390a39695505050505050565b5f8281526020819052604090205482906001600160a01b0316338114806103a857506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b6103b0575f80fd5b60405167ffffffffffffffff8416815284907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a250505f91825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b5f8281526020819052604090205482906001600160a01b03163381148061047757506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b61047f575f80fd5b6040516001600160a01b038416815284907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a250505f9182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b5f8281526020819052604090205482906001600160a01b03163381148061053857506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b610540575f80fd5b61054a8484610635565b6040516001600160a01b038416815284907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a250505050565b5f61059a868686610292565b90506105a7818484610662565b505050505050565b335f8181526001602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b61062484846104ef565b61062f848383610662565b50505050565b5f9182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b5f838152602081905260409020600101546001600160a01b038381169116146106e6575f838152602081815260409182902060010180546001600160a01b0319166001600160a01b038616908117909155915191825284917f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a0910160405180910390a25b5f8381526020819052604090206001015467ffffffffffffffff828116600160a01b9092041614610780575f8381526020818152604091829020600101805467ffffffffffffffff60a01b1916600160a01b67ffffffffffffffff861690810291909117909155915191825284917f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa68910160405180910390a25b505050565b5f60208284031215610795575f80fd5b5035919050565b80356001600160a01b03811681146107b2575f80fd5b919050565b5f805f606084860312156107c9575f80fd5b83359250602084013591506107e06040850161079c565b90509250925092565b803567ffffffffffffffff811681146107b2575f80fd5b5f8060408385031215610811575f80fd5b82359150610821602084016107e9565b90509250929050565b5f806040838503121561083b575f80fd5b823591506108216020840161079c565b5f805f805f60a0868803121561085f575f80fd5b85359450602086013593506108766040870161079c565b92506108846060870161079c565b9150610892608087016107e9565b90509295509295909350565b5f80604083850312156108af575f80fd5b6108b88361079c565b9150602083013580151581146108cc575f80fd5b809150509250929050565b5f805f80608085870312156108ea575f80fd5b843593506108fa6020860161079c565b92506109086040860161079c565b9150610916606086016107e9565b905092959194509250565b5f8060408385031215610932575f80fd5b61093b8361079c565b91506108216020840161079c56fea164736f6c6343000818000a","storage":{"0xdd4f47a3b6f87903b728feed7a23273bd8de58e4fa257d37a74a5881e5d92ff":"0xf670681605efc4efc804f5a9b97ee89520473d56","0x14ce109f1cffdc11aa7355660be720f902291be09fb159b4c578958cd0f533bc":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x14ce109f1cffdc11aa7355660be720f902291be09fb159b4c578958cd0f533bd":"0x0","0x1e2c8528d7e8e90443ad0a4e37b6f2b1daed719a574ce3a0c347063e8d839d50":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1e2c8528d7e8e90443ad0a4e37b6f2b1daed719a574ce3a0c347063e8d839d51":"0x0","0x2fb4213711fd985fc1fb1ea2bfa660b0b37fd50c6c74ab531d9b54b29dd5177e":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2fb4213711fd985fc1fb1ea2bfa660b0b37fd50c6c74ab531d9b54b29dd5177f":"0x0","0x859ecef2e168dc10231b000bd53493b42bc9d944cac29d94582c1e1d43592131":"0xc965345edac823d56812cd20a10316233916a605","0x8878c6daefcfc78c7f181d00d719b4a0612dd3e65cafeb72507d15c036a9f690":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0xe4fdf45c2f8d198854f8823809c7a988eeaaa493","0xfb5568c6845cf0d5915af088a5d8ba90a5ff735e102c9a79609ef7d043f1108c":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xfb5568c6845cf0d5915af088a5d8ba90a5ff735e102c9a79609ef7d043f1108d":"0x0"}},"0x4872cc1be60a9db9c880a0a437da7a6af134f08f":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100935760003560e01c80637362d9c8116100665780637362d9c8146101285780637b1039991461014e57806399e0dd7c14610172578063bb5f747b146101e2578063d6cd94731461020857610093565b806310154bad14610098578063291d9549146100c05780633af32abf146100e65780634c5a628c14610120575b600080fd5b6100be600480360360208110156100ae57600080fd5b50356001600160a01b0316610210565b005b6100be600480360360208110156100d657600080fd5b50356001600160a01b0316610260565b61010c600480360360208110156100fc57600080fd5b50356001600160a01b03166102ad565b604080519115158252519081900360200190f35b6100be6102c6565b6100be6004803603602081101561013e57600080fd5b50356001600160a01b03166102d1565b61015661031e565b604080516001600160a01b039092168252519081900360200190f35b6100be6004803603602081101561018857600080fd5b8101906020810181356401000000008111156101a357600080fd5b8201836020820111156101b557600080fd5b803590602001918460018302840111640100000000831117156101d757600080fd5b50909250905061032d565b61010c600480360360208110156101f857600080fd5b50356001600160a01b0316610404565b6100be610416565b61021933610404565b6102545760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d8161041f565b50565b61026933610404565b6102a45760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d81610467565b60006102c060018363ffffffff6104af16565b92915050565b6102cf33610516565b565b6102da33610404565b6103155760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d8161055e565b6002546001600160a01b031690565b610336336102ad565b6103715760405162461bcd60e51b815260040180806020018281038252603a815260200180610712603a913960400191505060405180910390fd5b6002546040516369426cbd60e11b8152602060048201908152602482018490526001600160a01b039092169163d284d97a91859185918190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b1580156103e857600080fd5b505af11580156103fc573d6000803e3d6000fd5b505050505050565b60006102c0818363ffffffff6104af16565b6102cf33610467565b61043060018263ffffffff6105a616565b6040516001600160a01b038216907fee1504a83b6d4a361f4c1dc78ab59bfa30d6a3b6612c403e86bb01ef2984295f90600090a250565b61047860018263ffffffff61062716565b6040516001600160a01b038216907f270d9b30cf5b0793bbfd54c9d5b94aeb49462b8148399000265144a8722da6b690600090a250565b60006001600160a01b0382166104f65760405162461bcd60e51b81526004018080602001828103825260228152602001806106b06022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b61052760008263ffffffff61062716565b6040516001600160a01b038216907f0a8eb35e5ca14b3d6f28e4abf2f128dbab231a58b56e89beb5d636115001e16590600090a250565b61056f60008263ffffffff6105a616565b6040516001600160a01b038216907f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129990600090a250565b6105b082826104af565b15610602576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b61063182826104af565b61066c5760405162461bcd60e51b815260040180806020018281038252602181526020018061068f6021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f206164647265737357686974656c69737441646d696e526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c69737441646d696e20726f6c6557686974656c6973746564526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c697374656420726f6c65a265627a7a72315820debca60946c0819dc5b5c2756c5c1dd8dd8a46f2429fa8a43a4f4362af3030c164736f6c634300050c0032","storage":{"0x2":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x5ac40fcee41fb0272a935f6e51e963102fba5db6f20e897e9361f0347eb2cae6":"0x1","0xdc4aeb95a779c8b92b845e3a94044db8ff2e43acc37da18c4b35a6bbad7c122f":"0x1"}},"0x49da8861c65460639925febe1fb4b5b59b443082":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f7e83aee1461002d575b5f80fd5b61004061003b3660046101ac565b610054565b604051901515815260200160405180910390f35b5f602082146100a95760405162461bcd60e51b815260206004820152601a60248201527f496e76616c6964207368613235362068617368206c656e677468000000000000604482015260640160405180910390fd5b6100eb5f84848080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101459050565b600286866040516100fd929190610213565b602060405180830381855afa158015610118573d5f803e3d5ffd5b5050506040513d601f19601f8201168201806040525081019061013b9190610222565b1495945050505050565b81515f90610154836020610239565b111561015e575f80fd5b50016020015190565b5f8083601f840112610177575f80fd5b50813567ffffffffffffffff81111561018e575f80fd5b6020830191508360208285010111156101a5575f80fd5b9250929050565b5f805f80604085870312156101bf575f80fd5b843567ffffffffffffffff808211156101d6575f80fd5b6101e288838901610167565b909650945060208701359150808211156101fa575f80fd5b5061020787828801610167565b95989497509550505050565b818382375f9101908152919050565b5f60208284031215610232575f80fd5b5051919050565b8082018082111561025857634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x4a3c194eb88966178bfdd81744dddafed611b830":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061009e5760003560e01c806398650275116100665780639865027514610305578063aa271e1a1461030d578063b2da297914610347578063be362e2e146103c5578063c36c2125146104fe5761009e565b80634c0b0ed2146100a35780637b103999146101595780637caf3ad81461017d5780638ad364f814610258578063983b2d56146102df575b600080fd5b610157600480360360408110156100b957600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156100e357600080fd5b8201836020820111156100f557600080fd5b803590602001918460018302840111600160201b8311171561011657600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506105bd945050505050565b005b61016161074c565b604080516001600160a01b039092168252519081900360200190f35b6101576004803603608081101561019357600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156101bd57600080fd5b8201836020820111156101cf57600080fd5b803590602001918460018302840111600160201b831117156101f057600080fd5b919390926001600160a01b0383351692604081019060200135600160201b81111561021a57600080fd5b82018360208201111561022c57600080fd5b803590602001918460018302840111600160201b8311171561024d57600080fd5b50909250905061075b565b6101576004803603606081101561026e57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561029857600080fd5b8201836020820111156102aa57600080fd5b803590602001918460018302840111600160201b831117156102cb57600080fd5b9193509150356001600160a01b0316610957565b610157600480360360208110156102f557600080fd5b50356001600160a01b0316610b2b565b610157610b7b565b6103336004803603602081101561032357600080fd5b50356001600160a01b0316610b86565b604080519115158252519081900360200190f35b6101576004803603604081101561035d57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561038757600080fd5b82018360208201111561039957600080fd5b803590602001918460018302840111600160201b831117156103ba57600080fd5b509092509050610b9e565b610157600480360360608110156103db57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561040557600080fd5b82018360208201111561041757600080fd5b803590602001918460018302840111600160201b8311171561043857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b81111561048a57600080fd5b82018360208201111561049c57600080fd5b803590602001918460018302840111600160201b831117156104bd57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610bf1945050505050565b6101576004803603606081101561051457600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561053e57600080fd5b82018360208201111561055057600080fd5b803590602001918460018302840111600160201b8311171561057157600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550505090356001600160a01b03169150610dec9050565b6105c633610b86565b6106015760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b039092169163b5466669918591849163ebf0c717916004808301926020929190829003018186803b15801561064f57600080fd5b505afa158015610663573d6000803e3d6000fd5b505050506040513d602081101561067957600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052606060448301908152875160648401528751889360840190602085019080838360005b838110156106e25781810151838201526020016106ca565b50505050905090810190601f16801561070f5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15801561073057600080fd5b505af1158015610744573d6000803e3d6000fd5b505050505050565b6001546001600160a01b031690565b6107cf8686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f89018190048102820181019092528781529250879150869081908401838280828437600092019190915250610bf192505050565b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691632525d06a91869184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b15801561082557600080fd5b505afa158015610839573d6000803e3d6000fd5b505050506040513d602081101561084f57600080fd5b5051604080516001600160e01b031960e085901b1681526004810183815260248201928352604482018d90528d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b1580156108bd57600080fd5b505afa1580156108d1573d6000803e3d6000fd5b505050506040513d60208110156108e757600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b15801561093757600080fd5b505af115801561094b573d6000803e3d6000fd5b50505050505050505050565b6109a58484848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250610bf1915050565b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691632525d06a91849184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b1580156109fb57600080fd5b505afa158015610a0f573d6000803e3d6000fd5b505050506040513d6020811015610a2557600080fd5b5051604080516001600160e01b031960e085901b1681526004810183815260248201928352604482018b90528b928b92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b158015610a9357600080fd5b505afa158015610aa7573d6000803e3d6000fd5b505050506040513d6020811015610abd57600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b158015610b0d57600080fd5b505af1158015610b21573d6000803e3d6000fd5b5050505050505050565b610b3433610b86565b610b6f5760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b610b7881611115565b50565b610b843361115d565b565b6000610b98818363ffffffff6111a516565b92915050565b610bec8383838080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250610bf1915050565b505050565b610bfa33610b86565b610c355760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691630467e014918691849163ebf0c717916004808301926020929190829003018186803b158015610c8357600080fd5b505afa158015610c97573d6000803e3d6000fd5b505050506040513d6020811015610cad57600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052608060448301908152885160848401528851899389939291606482019160a40190602087019080838360005b83811015610d1f578181015183820152602001610d07565b50505050905090810190601f168015610d4c5780820380516001836020036101000a031916815260200191505b50838103825284518152845160209182019186019080838360005b83811015610d7f578181015183820152602001610d67565b50505050905090810190601f168015610dac5780820380516001836020036101000a031916815260200191505b509650505050505050600060405180830381600087803b158015610dcf57600080fd5b505af1158015610de3573d6000803e3d6000fd5b50505050505050565b610df533610b86565b610e305760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b039092169163b5466669918691849163ebf0c717916004808301926020929190829003018186803b158015610e7e57600080fd5b505afa158015610e92573d6000803e3d6000fd5b505050506040513d6020811015610ea857600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052606060448301908152885160648401528851899360840190602085019080838360005b83811015610f11578181015183820152602001610ef9565b50505050905090810190601f168015610f3e5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015610f5f57600080fd5b505af1158015610f73573d6000803e3d6000fd5b50506001546040805163ebf0c71760e01b815290516001600160a01b039092169350632525d06a9250849184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b158015610fcd57600080fd5b505afa158015610fe1573d6000803e3d6000fd5b505050506040513d6020811015610ff757600080fd5b5051604080516001600160e01b031960e085901b16815260048101838152602482019283528a5160448301528a518b93919260640190602085019080838360005b83811015611050578181015183820152602001611038565b50505050905090810190601f16801561107d5780820380516001836020036101000a031916815260200191505b50935050505060206040518083038186803b15801561109b57600080fd5b505afa1580156110af573d6000803e3d6000fd5b505050506040513d60208110156110c557600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b158015610dcf57600080fd5b61112660008263ffffffff61120c16565b6040516001600160a01b038216907f6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f690600090a250565b61116e60008263ffffffff61128d16565b6040516001600160a01b038216907fe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb6669290600090a250565b60006001600160a01b0382166111ec5760405162461bcd60e51b81526004018080602001828103825260228152602001806113466022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b61121682826111a5565b15611268576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b61129782826111a5565b6112d25760405162461bcd60e51b81526004018080602001828103825260218152602001806113256021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe4d696e746572526f6c653a2063616c6c657220646f6573206e6f74206861766520746865204d696e74657220726f6c65526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f2061646472657373a265627a7a72315820c058d70355f7d37ff6b3b61cd850cc4a41893e30048389698c062148bf3d2ff464736f6c634300050c0032","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x789b49055833748af4eaa9affbcd84118ce8770f7e4385b5a3f428626b1f0aff":"0x1","0xdc4aeb95a779c8b92b845e3a94044db8ff2e43acc37da18c4b35a6bbad7c122f":"0x1"}},"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061007b5760003560e01c80639623609d1161004e5780639623609d1461011157806399a88ec414610124578063f2fde38b14610144578063f3b7dead1461016457600080fd5b8063204e1c7a14610080578063715018a6146100bc5780637eff275e146100d35780638da5cb5b146100f3575b600080fd5b34801561008c57600080fd5b506100a061009b366004610499565b610184565b6040516001600160a01b03909116815260200160405180910390f35b3480156100c857600080fd5b506100d1610215565b005b3480156100df57600080fd5b506100d16100ee3660046104bd565b610229565b3480156100ff57600080fd5b506000546001600160a01b03166100a0565b6100d161011f36600461050c565b610291565b34801561013057600080fd5b506100d161013f3660046104bd565b610300565b34801561015057600080fd5b506100d161015f366004610499565b610336565b34801561017057600080fd5b506100a061017f366004610499565b6103b4565b6000806000836001600160a01b03166040516101aa90635c60da1b60e01b815260040190565b600060405180830381855afa9150503d80600081146101e5576040519150601f19603f3d011682016040523d82523d6000602084013e6101ea565b606091505b5091509150816101f957600080fd5b8080602001905181019061020d91906105e2565b949350505050565b61021d6103da565b6102276000610434565b565b6102316103da565b6040516308f2839760e41b81526001600160a01b038281166004830152831690638f283970906024015b600060405180830381600087803b15801561027557600080fd5b505af1158015610289573d6000803e3d6000fd5b505050505050565b6102996103da565b60405163278f794360e11b81526001600160a01b03841690634f1ef2869034906102c990869086906004016105ff565b6000604051808303818588803b1580156102e257600080fd5b505af11580156102f6573d6000803e3d6000fd5b5050505050505050565b6103086103da565b604051631b2ce7f360e11b81526001600160a01b038281166004830152831690633659cfe69060240161025b565b61033e6103da565b6001600160a01b0381166103a85760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b6103b181610434565b50565b6000806000836001600160a01b03166040516101aa906303e1469160e61b815260040190565b6000546001600160a01b031633146102275760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161039f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146103b157600080fd5b6000602082840312156104ab57600080fd5b81356104b681610484565b9392505050565b600080604083850312156104d057600080fd5b82356104db81610484565b915060208301356104eb81610484565b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561052157600080fd5b833561052c81610484565b9250602084013561053c81610484565b9150604084013567ffffffffffffffff8082111561055957600080fd5b818601915086601f83011261056d57600080fd5b81358181111561057f5761057f6104f6565b604051601f8201601f19908116603f011681019083821181831017156105a7576105a76104f6565b816040528281528960208487010111156105c057600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000602082840312156105f457600080fd5b81516104b681610484565b60018060a01b038316815260006020604081840152835180604085015260005b8181101561063b5785810183015185820160600152820161061f565b8181111561064d576000606083870101525b50601f01601f19169290920160600194935050505056fea26469706673582212207ad53e1008cce369999f6b5f2f77109510b404ff1de9b47b639981fd68e6239264736f6c63430008090033","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x4e59b44847b379578588920ca78fbf26c0b4956c":{"nonce":0,"balance":"0x0","code":"0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe03601600081602082378035828234f58015156039578182fd5b8082525050506014600cf3","storage":{}},"0x4eb9de1fc0d800e941f326d6699e9e11969557ea":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063100cdd911461002d575b5f80fd5b61004061003b3660046102cd565b610042565b005b5f5b818110156101b8575f7f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e28484848181106100805761008061033c565b905060200201356040516020016100a1929190918252602082015260400190565b60408051808303601f190181529082905280516020909101206331a9108f60e11b82526004820181905291507f000000000000000000000000107733fed96c4cd390c944a31f5425a7fb98ae5e6001600160a01b0316906323b872dd908290636352211e90602401602060405180830381865afa158015610124573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101489190610350565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015261dead6024820152604481018490526064015f604051808303815f87803b158015610195575f80fd5b505af11580156101a7573d5f803e3d5ffd5b505060019093019250610044915050565b5080156102c9577f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e282826101ed60018261037d565b8181106101fc576101fc61033c565b9050602002013560405160200161021d929190918252602082015260400190565b604051602081830303815290604052805190602001205f1c7f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e283835f8181106102685761026861033c565b90506020020135604051602001610289929190918252602082015260400190565b60408051601f19818403018152908290528051602090910120907fdf423376f9b0ab363b1b4d6f0b4cb6821921ec30f491555a97236a8a38ce095a905f90a35b5050565b5f80602083850312156102de575f80fd5b823567ffffffffffffffff808211156102f5575f80fd5b818501915085601f830112610308575f80fd5b813581811115610316575f80fd5b8660208260051b850101111561032a575f80fd5b60209290920196919550909350505050565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215610360575f80fd5b81516001600160a01b0381168114610376575f80fd5b9392505050565b8181038181111561039c57634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x4fbf7b2f171336958be5d15ff762a5cff5363568":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061011b575f3560e01c80638d839ffe1161009d578063aeb8ce9b11610062578063aeb8ce9b14610356578063ce1e09c014610375578063d3419bf3146103a8578063f14fcbc8146103db578063f2fde38b146103fa575f80fd5b80638d839ffe146102a25780638da5cb5b146102d55780639791c097146102f1578063a8e5fbc014610310578063acf1a84114610343575f80fd5b806374694a2b116100e357806374694a2b146101c957806380869853146101dc578063839df9451461022757806383e7f6ff146102525780638a95b09f1461028c575f80fd5b806301ffc9a71461011f5780633ccfd60b146101535780635d3590d51461016957806365a69dcf14610188578063715018a6146101b5575b5f80fd5b34801561012a575f80fd5b5061013e610139366004611145565b610419565b60405190151581526020015b60405180910390f35b34801561015e575f80fd5b5061016761044f565b005b348015610174575f80fd5b50610167610183366004611187565b610489565b348015610193575f80fd5b506101a76101a23660046112e4565b610507565b60405190815260200161014a565b3480156101c0575f80fd5b5061016761058b565b6101676101d73660046113db565b61059e565b3480156101e7575f80fd5b5061020f7f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5681565b6040516001600160a01b03909116815260200161014a565b348015610232575f80fd5b506101a761024136600461149d565b60016020525f908152604090205481565b34801561025d575f80fd5b5061027161026c3660046114b4565b610894565b6040805182518152602092830151928101929092520161014a565b348015610297575f80fd5b506101a76224ea0081565b3480156102ad575f80fd5b506101a77f000000000000000000000000000000000000000000000000000000000000025881565b3480156102e0575f80fd5b505f546001600160a01b031661020f565b3480156102fc575f80fd5b5061013e61030b3660046114f6565b6109c9565b34801561031b575f80fd5b5061020f7f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e1841720481565b610167610351366004611528565b6109dd565b348015610361575f80fd5b5061013e6103703660046114f6565b610b7b565b348015610380575f80fd5b506101a77f000000000000000000000000000000000000000000000000000000000001518081565b3480156103b3575f80fd5b5061020f7f000000000000000000000000ec71e4e674fe0f432693dc2b935c34bd2774c00381565b3480156103e6575f80fd5b506101676103f536600461149d565b610c22565b348015610405575f80fd5b50610167610414366004611570565b610c95565b5f6001600160e01b031982166301ffc9a760e01b148061044957506001600160e01b0319821663612e8c0960e01b145b92915050565b5f80546040516001600160a01b03909116914780156108fc02929091818181858888f19350505050158015610486573d5f803e3d5ffd5b50565b610491610d0b565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af11580156104dd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105019190611589565b50505050565b885160208a01205f90841580159061052657506001600160a01b038716155b15610544576040516334fd817160e21b815260040160405180910390fd5b808a8a8a8a8a8a8a8a6040516020016105659998979695949392919061165e565b604051602081830303815290604052805190602001209150509998505050505050505050565b610593610d0b565b61059c5f610d64565b565b5f6105df8b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c9250610894915050565b602081015181519192506105f2916116d5565b3410156106125760405163044044a560e21b815260040160405180910390fd5b6106b38b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f82011690508083019250505050505050896106ae8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f820116905080830192505050505050508d8d8d8d8d8d8d8d610507565b610db3565b604051635200a4c160e11b81525f906001600160a01b037f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e18417204169063a40149829061070b908f908f908f908f908e908b906004016116e8565b6020604051808303815f875af1158015610727573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061074b9190611732565b9050841561077657610776878d8d604051610767929190611749565b60405180910390208888610ece565b83156107be576107be8c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508b9250339150610f939050565b896001600160a01b03168c8c6040516107d8929190611749565b60405180910390207f69e37f151eb98a09618ddaa80c8cfaf1ce5996867c489f45b555b412271ebf278e8e865f015187602001518760405161081e959493929190611758565b60405180910390a36020820151825161083791906116d5565b341115610886576020820151825133916108fc9161085591906116d5565b61085f9034611788565b6040518115909202915f818181858888f19350505050158015610884573d5f803e3d5ffd5b505b505050505050505050505050565b604080518082019091525f808252602082015282516020840120604051636b727d4360e11b8152600481018290527f000000000000000000000000ec71e4e674fe0f432693dc2b935c34bd2774c0036001600160a01b03908116916350e9a7159187917f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063d6e4fa8690602401602060405180830381865afa158015610940573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109649190611732565b866040518463ffffffff1660e01b8152600401610983939291906117e8565b6040805180830381865afa15801561099d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109c1919061180c565b949350505050565b5f60036109d583611044565b101592915050565b5f83836040516109ee929190611749565b604080519182900382206020601f8701819004810284018101909252858352925082915f91610a39919088908890819084018382808284375f92019190915250889250610894915050565b8051909150341015610a5e5760405163044044a560e21b815260040160405180910390fd5b60405163c475abff60e01b815260048101839052602481018590525f907f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b03169063c475abff906044016020604051808303815f875af1158015610acb573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610aef9190611732565b8251909150341115610b3457815133906108fc90610b0d9034611788565b6040518115909202915f818181858888f19350505050158015610b32573d5f803e3d5ffd5b505b837f3da24c024582931cfaf8267d8ed24d13a82a8068d5bd337d30ec45cea4e506ae88883485604051610b6a9493929190611859565b60405180910390a250505050505050565b805160208201205f90610b8d836109c9565b8015610c1b57506040516312dc929d60e31b8152600481018290527f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b0316906396e494e890602401602060405180830381865afa158015610bf7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c1b9190611589565b9392505050565b5f818152600160205260409020544290610c5d907f0000000000000000000000000000000000000000000000000000000000015180906116d5565b10610c8357604051630a059d7160e01b8152600481018290526024015b60405180910390fd5b5f908152600160205260409020429055565b610c9d610d0b565b6001600160a01b038116610d025760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610c7a565b61048681610d64565b5f546001600160a01b0316331461059c5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610c7a565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f818152600160205260409020544290610dee907f0000000000000000000000000000000000000000000000000000000000000258906116d5565b1115610e1057604051635320bcf960e01b815260048101829052602401610c7a565b5f818152600160205260409020544290610e4b907f0000000000000000000000000000000000000000000000000000000000015180906116d5565b11610e6c5760405163cb7690d760e01b815260048101829052602401610c7a565b610e7583610b7b565b610e9457826040516308eee0fd60e31b8152600401610c7a919061187f565b5f818152600160205260408120556224ea00821015610ec957604051639a71997b60e01b815260048101839052602401610c7a565b505050565b604080517f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae6020808301919091528183018690528251808303840181526060830193849052805191012063e32954eb60e01b90925285906001600160a01b0382169063e32954eb90610f4890859088908890606401611891565b5f604051808303815f875af1158015610f63573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052610f8a91908101906118b3565b50505050505050565b7f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d566001600160a01b0316637a806d6b33838587604051602001610fd691906119a7565b6040516020818303038152906040526040518563ffffffff1660e01b815260040161100494939291906119ce565b6020604051808303815f875af1158015611020573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105019190611732565b80515f90819081905b8082101561113c575f85838151811061106857611068611a0b565b01602001516001600160f81b0319169050600160ff1b811015611097576110906001846116d5565b9250611129565b600760fd1b6001600160f81b0319821610156110b8576110906002846116d5565b600f60fc1b6001600160f81b0319821610156110d9576110906003846116d5565b601f60fb1b6001600160f81b0319821610156110fa576110906004846116d5565b603f60fa1b6001600160f81b03198216101561111b576110906005846116d5565b6111266006846116d5565b92505b508261113481611a1f565b93505061104d565b50909392505050565b5f60208284031215611155575f80fd5b81356001600160e01b031981168114610c1b575f80fd5b80356001600160a01b0381168114611182575f80fd5b919050565b5f805f60608486031215611199575f80fd5b6111a28461116c565b92506111b06020850161116c565b9150604084013590509250925092565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff811182821017156111fd576111fd6111c0565b604052919050565b5f67ffffffffffffffff82111561121e5761121e6111c0565b50601f01601f191660200190565b5f82601f83011261123b575f80fd5b813561124e61124982611205565b6111d4565b818152846020838601011115611262575f80fd5b816020850160208301375f918101602001919091529392505050565b5f8083601f84011261128e575f80fd5b50813567ffffffffffffffff8111156112a5575f80fd5b6020830191508360208260051b85010111156112bf575f80fd5b9250929050565b8015158114610486575f80fd5b803561ffff81168114611182575f80fd5b5f805f805f805f805f6101008a8c0312156112fd575f80fd5b893567ffffffffffffffff80821115611314575f80fd5b6113208d838e0161122c565b9a5061132e60208d0161116c565b995060408c0135985060608c0135975061134a60808d0161116c565b965060a08c013591508082111561135f575f80fd5b5061136c8c828d0161127e565b90955093505060c08a0135611380816112c6565b915061138e60e08b016112d3565b90509295985092959850929598565b5f8083601f8401126113ad575f80fd5b50813567ffffffffffffffff8111156113c4575f80fd5b6020830191508360208285010111156112bf575f80fd5b5f805f805f805f805f806101008b8d0312156113f5575f80fd5b8a3567ffffffffffffffff8082111561140c575f80fd5b6114188e838f0161139d565b909c509a508a915061142c60208e0161116c565b995060408d0135985060608d0135975061144860808e0161116c565b965060a08d013591508082111561145d575f80fd5b5061146a8d828e0161127e565b90955093505060c08b013561147e816112c6565b915061148c60e08c016112d3565b90509295989b9194979a5092959850565b5f602082840312156114ad575f80fd5b5035919050565b5f80604083850312156114c5575f80fd5b823567ffffffffffffffff8111156114db575f80fd5b6114e78582860161122c565b95602094909401359450505050565b5f60208284031215611506575f80fd5b813567ffffffffffffffff81111561151c575f80fd5b6109c18482850161122c565b5f805f6040848603121561153a575f80fd5b833567ffffffffffffffff811115611550575f80fd5b61155c8682870161139d565b909790965060209590950135949350505050565b5f60208284031215611580575f80fd5b610c1b8261116c565b5f60208284031215611599575f80fd5b8151610c1b816112c6565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b5f838385526020808601955060208560051b830101845f5b8781101561165157848303601f19018952813536889003601e19018112611609575f80fd5b8701848101903567ffffffffffffffff811115611624575f80fd5b803603821315611632575f80fd5b61163d8582846115a4565b9a86019a94505050908301906001016115e4565b5090979650505050505050565b8981526001600160a01b03898116602083015260408201899052606082018890528616608082015261010060a082018190525f9061169f83820187896115cc565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610449576104496116c1565b60a081525f6116fb60a08301888a6115a4565b6001600160a01b03968716602084015260408301959095525091909316606082015261ffff90921660809092019190915292915050565b5f60208284031215611742575f80fd5b5051919050565b818382375f9101908152919050565b608081525f61176b6080830187896115a4565b602083019590955250604081019290925260609091015292915050565b81810381811115610449576104496116c1565b5f5b838110156117b557818101518382015260200161179d565b50505f910152565b5f81518084526117d481602086016020860161179b565b601f01601f19169290920160200192915050565b606081525f6117fa60608301866117bd565b60208301949094525060400152919050565b5f6040828403121561181c575f80fd5b6040516040810181811067ffffffffffffffff8211171561183f5761183f6111c0565b604052825181526020928301519281019290925250919050565b606081525f61186c6060830186886115a4565b6020830194909452506040015292915050565b602081525f610c1b60208301846117bd565b838152604060208201525f6118aa6040830184866115cc565b95945050505050565b5f60208083850312156118c4575f80fd5b825167ffffffffffffffff808211156118db575f80fd5b818501915085601f8301126118ee575f80fd5b815181811115611900576119006111c0565b8060051b61190f8582016111d4565b9182528381018501918581019089841115611928575f80fd5b86860192505b8383101561199a57825185811115611944575f80fd5b8601603f81018b13611954575f80fd5b87810151604061196661124983611205565b8281528d82848601011115611979575f80fd5b611988838c830184870161179b565b8552505050918601919086019061192e565b9998505050505050505050565b5f82516119b881846020870161179b565b6305ccae8d60e31b920191825250600401919050565b6001600160a01b0385811682528481166020830152831660408201526080606082018190525f90611a01908301846117bd565b9695505050505050565b634e487b7160e01b5f52603260045260245ffd5b5f60018201611a3057611a306116c1565b506001019056fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x5155f5627bdf9795b3dbb8887001ada1eeba93f2":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063de8f50a11461002d575b5f80fd5b61004761003b3660046100a0565b60019695505050505050565b604051901515815260200160405180910390f35b5f8083601f84011261006b575f80fd5b50813567ffffffffffffffff811115610082575f80fd5b602083019150836020828501011115610099575f80fd5b9250929050565b5f805f805f80606087890312156100b5575f80fd5b863567ffffffffffffffff808211156100cc575f80fd5b6100d88a838b0161005b565b909850965060208901359150808211156100f0575f80fd5b6100fc8a838b0161005b565b90965094506040890135915080821115610114575f80fd5b5061012189828a0161005b565b979a969950949750929593949250505056fea164736f6c6343000818000a","storage":{}},"0x54563a9e1cd2dcbd0bca90d3cfa4a647e02c404a":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106101db575f3560e01c80638da5cb5b116100fd578063c4d66de811610092578063daea85c511610062578063daea85c51461055e578063e7acab241461057d578063f2fde38b1461059c578063ffa1ad74146105bb575f80fd5b8063c4d66de8146104e1578063d539139314610500578063d547741f14610520578063d9caed121461053f575f80fd5b8063a217fddf116100cd578063a217fddf14610452578063a3f4df7e14610465578063a4247400146104a3578063aa271e1a146104c2575f80fd5b80638da5cb5b146103d957806391d1485414610400578063983b2d561461041f578063986502751461043e575f80fd5b80635c975abb11610173578063715018a611610143578063715018a61461037f57806371e2a6571461039357806381c81d35146103b25780638456cb59146103c5575f80fd5b80635c975abb146103165780635fc1964f1461032e578063634486da1461034d5780636ccbae5f14610360575f80fd5b80633092afd5116101ae5780633092afd51461029c57806336568abe146102bb5780633f4ba83a146102da578063572b6c05146102ee575f80fd5b806301ffc9a7146101df5780631bf7e13e14610213578063248a9ca31461023f5780632f2ff15d1461027b575b5f80fd5b3480156101ea575f80fd5b506101fe6101f9366004611ee0565b6105eb565b60405190151581526020015b60405180910390f35b34801561021e575f80fd5b5061023261022d366004611f07565b610621565b60405161020a9190611fe9565b34801561024a575f80fd5b5061026d610259366004611ffb565b5f90815260fb602052604090206001015490565b60405190815260200161020a565b348015610286575f80fd5b5061029a610295366004612036565b6106ea565b005b3480156102a7575f80fd5b5061029a6102b6366004612064565b610713565b3480156102c6575f80fd5b5061029a6102d5366004612036565b610727565b3480156102e5575f80fd5b5061029a6107ba565b3480156102f9575f80fd5b506101fe610308366004612064565b6001600160a01b0316301490565b348015610321575f80fd5b5061012d5460ff166101fe565b348015610339575f80fd5b5061029a6103483660046120eb565b6107d4565b61029a61035b366004612064565b610811565b34801561036b575f80fd5b5061026d61037a366004611ffb565b6108d1565b34801561038a575f80fd5b5061029a61092a565b34801561039e575f80fd5b5061029a6103ad3660046120eb565b61093b565b61029a6103c0366004612064565b610978565b3480156103d0575f80fd5b5061029a6109f5565b3480156103e4575f80fd5b506097546040516001600160a01b03909116815260200161020a565b34801561040b575f80fd5b506101fe61041a366004612036565b610a0d565b34801561042a575f80fd5b5061029a610439366004612064565b610a37565b348015610449575f80fd5b5061029a610a48565b34801561045d575f80fd5b5061026d5f81565b348015610470575f80fd5b506102326040518060400160405280601381526020017229b2b0b837b93a10283937bc3c90213abcb2b960691b81525081565b3480156104ae575f80fd5b506101fe6104bd366004611f07565b610a61565b3480156104cd575f80fd5b506101fe6104dc366004612064565b610ab2565b3480156104ec575f80fd5b5061029a6104fb366004612064565b610aca565b34801561050b575f80fd5b5061026d5f80516020612ea783398151915281565b34801561052b575f80fd5b5061029a61053a366004612036565b610c21565b34801561054a575f80fd5b5061029a61055936600461218b565b610c45565b348015610569575f80fd5b5061029a610578366004612064565b610cf7565b348015610588575f80fd5b506101fe6105973660046121c9565b610dac565b3480156105a7575f80fd5b5061029a6105b6366004612064565b6111db565b3480156105c6575f80fd5b5061023260405180604001604052806005815260200164302e302e3160d81b81525081565b5f6001600160e01b03198216637965db0b60e01b148061061b57506301ffc9a760e01b6001600160e01b03198316145b92915050565b60605f5a9050610632858585610a61565b61064f57604051638baa579f60e01b815260040160405180910390fd5b6106df61065f6020870187612064565b3060408801358461067360608b018b61227b565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f920191909152506111f692505050565b9150505b9392505050565b5f82815260fb6020526040902060010154610704816112d4565b61070e83836112e5565b505050565b61071b61136b565b610724816113e4565b50565b61072f6113fb565b6001600160a01b0316816001600160a01b0316146107ac5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6107b68282611409565b5050565b6107c261136b565b6107ca61148d565b6107d26114d7565b565b6107dc61136b565b5f5b81518110156107b6576108098282815181106107fc576107fc6122bd565b60200260200101516113e4565b6001016107de565b61081c6104dc6113fb565b6108385760405162461bcd60e51b81526004016107a3906122d1565b6001600160a01b03811661088e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016107a3565b61089781611530565b61089f610a48565b6040516001600160a01b038216903480156108fc02915f818181858888f193505050501580156107b6573d5f803e3d5ffd5b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f90610923906060016040516020818303038152906040528051906020012090565b5492915050565b61093261136b565b6107d25f611547565b61094361136b565b5f5b81518110156107b657610970828281518110610963576109636122bd565b6020026020010151611530565b600101610945565b6109836104dc6113fb565b61099f5760405162461bcd60e51b81526004016107a3906122d1565b6001600160a01b0381166108975760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016107a3565b6109fd61136b565b610a05611598565b6107d26115df565b5f91825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610a3f61136b565b61072481611530565b6107d25f80516020612ea78339815191526102d56113fb565b5f610aaa610a6e85612306565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061161e92505050565b949350505050565b5f61061b5f80516020612ea783398151915283610a0d565b5f54610100900460ff1615808015610ae857505f54600160ff909116105b80610b015750303b158015610b0157505f5460ff166001145b610b645760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107a3565b5f805460ff191660011790558015610b85575f805461ff0019166101001790555b61015f80546001600160a01b0319166001600160a01b038416179055610ba9611759565b610bb1611786565b610bb9611786565b610bc1611786565b610bc96117ac565b610bd16117e2565b610bd9611819565b80156107b6575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b5f82815260fb6020526040902060010154610c3b816112d4565b61070e8383611409565b610c4d61136b565b600260335403610c6f5760405162461bcd60e51b81526004016107a3906123c2565b6002603355610c7c611598565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af1158015610cc8573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cec91906123f9565b505060016033555050565b610cff61136b565b600260335403610d215760405162461bcd60e51b81526004016107a3906123c2565b6002603355610d2e611598565b61015f5460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529082169063095ea7b3906044016020604051808303815f875af1158015610d7f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610da391906123f9565b50506001603355565b5f610db86104dc6113fb565b610dd45760405162461bcd60e51b81526004016107a3906122d1565b600260335403610df65760405162461bcd60e51b81526004016107a3906123c2565b6002603355610e03611598565b6001600160a01b038216610e2a576040516311d000e160e31b815260040160405180910390fd5b30610e358780612418565b610e46906040810190602001612064565b6001600160a01b031614610e6d57604051639d3c586b60e01b815260040160405180910390fd5b610e75611e67565b610e7f8780612418565b610e8d906020810190612064565b6001600160a01b03168152610ea28780612418565b610eb3906040810190602001612064565b6001600160a01b03166020820152610ecb8780612418565b610ed9906040810190612437565b808060200260200160405190810160405280939291908181526020015f905b82821015610f2457610f1560a08302860136819003810190612489565b81526020019060010190610ef8565b50505050506040820152610f388780612418565b610f46906060810190612506565b808060200260200160405190810160405280939291908181526020015f905b82821015610f9157610f8260c0830286013681900381019061254a565b81526020019060010190610f65565b50505050506060820152610fa58780612418565b610fb69060a08101906080016125e5565b81608001906004811115610fcc57610fcc6125fe565b90816004811115610fdf57610fdf6125fe565b905250610fec8780612418565b60a090810135908201526110008780612418565b60c090810135908201526110148780612418565b60e090810135908201526110288780612418565b610100908101359082015261103d8780612418565b610120908101359082015261015f54815160405163f07ec37360e01b81526001600160a01b03918216600482015291169063f07ec37390602401602060405180830381865afa158015611092573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110b69190612612565b61014082015261015f546040516379df72bd60e01b8152611133916001600160a01b0316906379df72bd906110ef908590600401612737565b602060405180830381865afa15801561110a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061112e9190612612565b61184c565b61015f546040516339eb2ac960e21b81526001600160a01b039091169063e7acab249061116c908a908a908a908a908a90600401612b24565b6020604051808303815f875af1158015611188573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111ac91906123f9565b9150816111cc57604051636725093760e01b815260040160405180910390fd5b50600160335595945050505050565b6111e361136b565b6111ec81611865565b6107245f826118db565b6060611201856118e5565b5f80876001600160a01b03168661121a8b8a898961194a565b6040516112279190612cfa565b5f604051808303815f8787f1925050503d805f8114611261576040519150601f19603f3d011682016040523d82523d5f602084013e611266565b606091505b509092509050611277603f87612d1f565b5a1161128557611285612d3e565b6112c582826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061197a565b925050505b9695505050505050565b610724816112e06113fb565b6119b3565b6112ef8282610a0d565b6107b6575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191660011790556113276113fb565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6113736113fb565b6001600160a01b031661138e6097546001600160a01b031690565b6001600160a01b0316146107d25760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107a3565b6107245f80516020612ea783398151915282610c21565b5f611404611a17565b905090565b6114138282610a0d565b156107b6575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191690556114496113fb565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b61012d5460ff166107d25760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b60448201526064016107a3565b6114df61148d565b61012d805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6115136113fb565b6040516001600160a01b03909116815260200160405180910390a1565b6107245f80516020612ea7833981519152826118db565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b61012d5460ff16156107d25760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b60448201526064016107a3565b6115e7611598565b61012d805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586115136113fb565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015611662573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116869190612612565b90505f6117338660600151805190602001208688602001516040516020016116d39392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156112ca575085516112ca906001600160a01b03168286611a34565b5f54610100900460ff1661177f5760405162461bcd60e51b81526004016107a390612d52565b6001603355565b5f54610100900460ff166107d25760405162461bcd60e51b81526004016107a390612d52565b5f54610100900460ff166117d25760405162461bcd60e51b81526004016107a390612d52565b6107d26117dd6113fb565b611547565b5f54610100900460ff166118085760405162461bcd60e51b81526004016107a390612d52565b6107d25f6118146113fb565b6118db565b5f54610100900460ff1661183f5760405162461bcd60e51b81526004016107a390612d52565b61012d805460ff19169055565b30330361185c5761072481611b6f565b610724816118e5565b61186d61136b565b6001600160a01b0381166118d25760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107a3565b61072481611547565b6107b682826112e5565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f906060016040516020818303038152906040528051906020012090506119398190565b54611945906001612d9d565b905550565b606082858560405160200161196193929190612db0565b6040516020818303038152906040529050949350505050565b606083156119895750816106e3565b8251156119995782518084602001fd5b8160405162461bcd60e51b81526004016107a39190611fe9565b6119bd8282610a0d565b6107b6576119d5816001600160a01b03166014611b99565b6119e0836020611b99565b6040516020016119f1929190612dee565b60408051601f198184030181529082905262461bcd60e51b82526107a391600401611fe9565b5f303303611a2c575060331936013560601c90565b503390565b90565b5f805f611a418585611d2e565b90925090505f816004811115611a5957611a596125fe565b148015611a775750856001600160a01b0316826001600160a01b0316145b15611a87576001925050506106e3565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401611aae929190612e62565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051611aec9190612cfa565b5f60405180830381855afa9150503d805f8114611b24576040519150601f19603f3d011682016040523d82523d5f602084013e611b29565b606091505b5091509150818015611b3c575080516020145b8015611b6357508051630b135d3f60e11b90611b619083016020908101908401612612565b145b98975050505050505050565b611b77611d70565b811461072457604051635637b6af60e11b8152600481018290526024016107a3565b60605f611ba7836002612e7a565b611bb2906002612d9d565b6001600160401b03811115611bc957611bc961207f565b6040519080825280601f01601f191660200182016040528015611bf3576020820181803683370190505b509050600360fc1b815f81518110611c0d57611c0d6122bd565b60200101906001600160f81b03191690815f1a905350600f60fb1b81600181518110611c3b57611c3b6122bd565b60200101906001600160f81b03191690815f1a9053505f611c5d846002612e7a565b611c68906001612d9d565b90505b6001811115611cdf576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611c9c57611c9c6122bd565b1a60f81b828281518110611cb257611cb26122bd565b60200101906001600160f81b03191690815f1a90535060049490941c93611cd881612e91565b9050611c6b565b5083156106e35760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016107a3565b5f808251604103611d62576020830151604084015160608501515f1a611d5687828585611d82565b94509450505050611d69565b505f905060025b9250929050565b5f303303611a315750601f1936013590565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115611db757505f90506003611e5e565b8460ff16601b14158015611dcf57508460ff16601c14155b15611ddf57505f90506004611e5e565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015611e30573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b038116611e58575f60019250925050611e5e565b91505f90505b94509492505050565b6040518061016001604052805f6001600160a01b031681526020015f6001600160a01b0316815260200160608152602001606081526020015f6004811115611eb157611eb16125fe565b81525f6020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b5f60208284031215611ef0575f80fd5b81356001600160e01b0319811681146106e3575f80fd5b5f805f60408486031215611f19575f80fd5b83356001600160401b0380821115611f2f575f80fd5b9085019060808288031215611f42575f80fd5b90935060208501359080821115611f57575f80fd5b818601915086601f830112611f6a575f80fd5b813581811115611f78575f80fd5b876020828501011115611f89575f80fd5b6020830194508093505050509250925092565b5f5b83811015611fb6578181015183820152602001611f9e565b50505f910152565b5f8151808452611fd5816020860160208601611f9c565b601f01601f19169290920160200192915050565b602081525f6106e36020830184611fbe565b5f6020828403121561200b575f80fd5b5035919050565b6001600160a01b0381168114610724575f80fd5b803561203181612012565b919050565b5f8060408385031215612047575f80fd5b82359150602083013561205981612012565b809150509250929050565b5f60208284031215612074575f80fd5b81356106e381612012565b634e487b7160e01b5f52604160045260245ffd5b604051608081016001600160401b03811182821017156120b5576120b561207f565b60405290565b604051601f8201601f191681016001600160401b03811182821017156120e3576120e361207f565b604052919050565b5f60208083850312156120fc575f80fd5b82356001600160401b0380821115612112575f80fd5b818501915085601f830112612125575f80fd5b8135818111156121375761213761207f565b8060051b91506121488483016120bb565b8181529183018401918481019088841115612161575f80fd5b938501935b83851015611b63578435925061217b83612012565b8282529385019390850190612166565b5f805f6060848603121561219d575f80fd5b83356121a881612012565b925060208401356121b881612012565b929592945050506040919091013590565b5f805f805f608086880312156121dd575f80fd5b85356001600160401b03808211156121f3575f80fd5b9087019060a0828a031215612206575f80fd5b9095506020870135908082111561221b575f80fd5b818801915088601f83011261222e575f80fd5b81358181111561223c575f80fd5b8960208260051b8501011115612250575f80fd5b6020830196508095505050506040860135915061226f60608701612026565b90509295509295909350565b5f808335601e19843603018112612290575f80fd5b8301803591506001600160401b038211156122a9575f80fd5b602001915036819003821315611d69575f80fd5b634e487b7160e01b5f52603260045260245ffd5b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b5f60808236031215612316575f80fd5b61231e612093565b823561232981612012565b8152602083810135818301526040808501359083015260608401356001600160401b0380821115612358575f80fd5b9085019036601f83011261236a575f80fd5b81358181111561237c5761237c61207f565b61238e601f8201601f191685016120bb565b915080825236848285010111156123a3575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b5f60208284031215612409575f80fd5b815180151581146106e3575f80fd5b5f823561015e1983360301811261242d575f80fd5b9190910192915050565b5f808335601e1984360301811261244c575f80fd5b8301803591506001600160401b03821115612465575f80fd5b602001915060a081023603821315611d69575f80fd5b803560068110612031575f80fd5b5f60a08284031215612499575f80fd5b60405160a081018181106001600160401b03821117156124bb576124bb61207f565b6040526124c78361247b565b815260208301356124d781612012565b806020830152506040830135604082015260608301356060820152608083013560808201528091505092915050565b5f808335601e1984360301811261251b575f80fd5b8301803591506001600160401b03821115612534575f80fd5b602001915060c081023603821315611d69575f80fd5b5f60c0828403121561255a575f80fd5b60405160c081018181106001600160401b038211171561257c5761257c61207f565b6040526125888361247b565b8152602083013561259881612012565b8060208301525060408301356040820152606083013560608201526080830135608082015260a08301356125cb81612012565b60a08201529392505050565b803560058110612031575f80fd5b5f602082840312156125f5575f80fd5b6106e3826125d7565b634e487b7160e01b5f52602160045260245ffd5b5f60208284031215612622575f80fd5b5051919050565b60068110612639576126396125fe565b9052565b5f815180845260208085019450602084015f5b838110156126a6578151612665888251612629565b838101516001600160a01b03168885015260408082015190890152606080820151908901526080908101519088015260a09096019590820190600101612650565b509495945050505050565b5f815180845260208085019450602084015f5b838110156126a65781516126d9888251612629565b808401516001600160a01b0390811689860152604080830151908a0152606080830151908a0152608080830151908a015260a091820151169088015260c090960195908201906001016126c4565b60058110612639576126396125fe565b602081526127516020820183516001600160a01b03169052565b5f602083015161276c60408401826001600160a01b03169052565b50604083015161016080606085015261278961018085018361263d565b91506060850151601f198584030160808601526127a683826126b1565b92505060808501516127bb60a0860182612727565b5060a085015160c085015260c085015160e085015260e0850151610100818187015280870151915050610120818187015280870151915050610140818187015280870151838701525050508091505092915050565b5f808335601e19843603018112612825575f80fd5b83016020810192503590506001600160401b03811115612843575f80fd5b60a081023603821315611d69575f80fd5b8183525f60208085019450825f5b858110156126a65761287c876128778461247b565b612629565b8282013561288981612012565b6001600160a01b03168388015260408281013590880152606080830135908801526080808301359088015260a09687019690910190600101612862565b5f808335601e198436030181126128db575f80fd5b83016020810192503590506001600160401b038111156128f9575f80fd5b60c081023603821315611d69575f80fd5b8183525f60208085019450825f5b858110156126a65761292d876128778461247b565b8282013561293a81612012565b6001600160a01b039081168885015260408381013590890152606080840135908901526080808401359089015260a0908382013561297781612012565b169088015260c0968701969190910190600101612918565b80356001600160781b0381168114612031575f80fd5b5f808335601e198436030181126129ba575f80fd5b83016020810192503590506001600160401b038111156129d8575f80fd5b803603821315611d69575f80fd5b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b8183525f6001600160fb1b03831115612a25575f80fd5b8260051b80836020870137939093016020019392505050565b8183526020808401935f91600585811b8301820185855b88811015612b1657858303601f19018a52813536899003609e19018112612a7a575f80fd5b88018035845260a08682013560028110612a92575f80fd5b85880152604082810135908601526060808301359086015260808083013536849003601e19018112612ac2575f80fd5b9092018781019290356001600160401b03811115612ade575f80fd5b80881b3603841315612aee575f80fd5b8282880152612b008388018286612a0e565b9d89019d96505050928601925050600101612a55565b509098975050505050505050565b608081525f610120873561015e19893603018112612b40575f80fd5b60a060808501528801612b65828501612b5883612026565b6001600160a01b03169052565b612b7160208201612026565b610140612b88818701836001600160a01b03169052565b612b956040840184612810565b610160888101529250612bad61028088018483612854565b925050612bbd60608401846128c6565b87840361011f1901610180890152612bd684828461290a565b93505050612be6608084016125d7565b612bf46101a0880182612727565b5060a08301356101c087015260c08301356101e087015260e0830135610200870152610100808401356102208801528484013561024088015281840135610260880152612c4360208d0161298f565b6001600160781b03811660a08901529450612c6060408d0161298f565b6001600160781b03811660c08901529450612c7e60608d018d6129a5565b95509350607f199150818784030160e0880152612c9c8386866129e6565b9450612cab60808d018d6129a5565b945092508187860301818801525050612cc58383836129e6565b925050508281036020840152612cdc818789612a3e565b9150508360408301526112ca60608301846001600160a01b03169052565b5f825161242d818460208701611f9c565b634e487b7160e01b5f52601160045260245ffd5b5f82612d3957634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b8082018082111561061b5761061b612d0b565b5f8451612dc1818460208901611f9c565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081525f8351612e25816017850160208801611f9c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351612e56816028840160208801611f9c565b01602801949350505050565b828152604060208201525f610aaa6040830184611fbe565b808202811582820484141761061b5761061b612d0b565b5f81612e9f57612e9f612d0b565b505f19019056fe9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000818000a","storage":{"0x0":"0xff"}},"0x58a175bebc8ec21a94ea63aa5a28743945940ee6":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106101165760003560e01c806391d14854116100a2578063c4d66de811610071578063c4d66de8146103bb578063ca15c873146103e1578063d547741f146103fe578063e375b64e1461042a578063ec87621c146104b957610116565b806391d14854146103635780639559c0bd146103a3578063a217fddf146103ab578063b017a30f146103b357610116565b80634794b430116100e95780634794b4301461024f57806349f5124b14610257578063609c92b81461025f5780638274664f146102675780639010d07c1461032457610116565b8063150b7a021461011b578063248a9ca3146101c65780632f2ff15d146101f557806336568abe14610223575b600080fd5b6101a96004803603608081101561013157600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561016b57600080fd5b82018360208201111561017d57600080fd5b803590602001918460018302840111600160201b8311171561019e57600080fd5b5090925090506104c1565b604080516001600160e01b03199092168252519081900360200190f35b6101e3600480360360208110156101dc57600080fd5b50356104d2565b60408051918252519081900360200190f35b6102216004803603604081101561020b57600080fd5b50803590602001356001600160a01b03166104ea565b005b6102216004803603604081101561023957600080fd5b50803590602001356001600160a01b0316610556565b6101e36105b7565b6101e36105db565b6101e36105ff565b6102216004803603606081101561027d57600080fd5b6001600160a01b038235811692602081013590911691810190606081016040820135600160201b8111156102b057600080fd5b8201836020820111156102c257600080fd5b803590602001918460018302840111600160201b831117156102e357600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610623945050505050565b6103476004803603604081101561033a57600080fd5b5080359060200135610fa2565b604080516001600160a01b039092168252519081900360200190f35b61038f6004803603604081101561037957600080fd5b50803590602001356001600160a01b0316610fc9565b604080519115158252519081900360200190f35b6101e3610fe7565b6101e3610fec565b6101e3610ff1565b610221600480360360208110156103d157600080fd5b50356001600160a01b0316611015565b6101e3600480360360208110156103f757600080fd5b50356110cf565b6102216004803603604081101561041457600080fd5b50803590602001356001600160a01b03166110e6565b6102216004803603608081101561044057600080fd5b6001600160a01b0382358116926020810135821692604082013590921691810190608081016060820135600160201b81111561047b57600080fd5b82018360208201111561048d57600080fd5b803590602001918460018302840111600160201b831117156104ae57600080fd5b50909250905061113f565b6101e36114e6565b630a85bd0160e11b95945050505050565b6000818152602081905260409020600201545b919050565b60008281526020819052604090206002015461050d906105086114f8565b610fc9565b6105485760405162461bcd60e51b815260040180806020018281038252602f815260200180611f42602f913960400191505060405180910390fd5b61055282826114fd565b5050565b61055e6114f8565b6001600160a01b0316816001600160a01b0316146105ad5760405162461bcd60e51b815260040180806020018281038252602f8152602001806120bb602f913960400191505060405180910390fd5b610552828261156c565b7ff871896b17e9cb7a64941c62c188a4f5c621b86800e3d15452ece01ce56073df81565b7ff94915c6d1fd521cee85359239227480c7e8776d7caf1fc3bacad5c269b66a1481565b7fd4392723c111fcb98b073fe55873efb447bcd23cd3e49ec9ea2581930cd01ddc81565b60008051602061204b83398151915261063e816105086114f8565b6001906106de5760405162461bcd60e51b81526020600482019081528254600260001961010060018416150201909116046024830181905290918291604490910190849080156106cf5780601f106106a4576101008083540402835291602001916106cf565b820191906000526020600020905b8154815290600101906020018083116106b257829003601f168201915b50509250505060405180910390fd5b5060606106f26106ed846115db565b611656565b905060606107138260018151811061070657fe5b6020026020010151611656565b90507fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60001b6107568260008151811061074957fe5b60200260200101516117d8565b141561095457600061076e8260018151811061074957fe5b905060006001600160a01b031661078b8360028151811061074957fe5b6001600160a01b0316146107d05760405162461bcd60e51b815260040180806020018281038252602981526020018061206b6029913960400191505060405180910390fd5b600086905060006107e78460038151811061074957fe5b9050816001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b15801561082d57600080fd5b505afa158015610841573d6000803e3d6000fd5b505050506040513d602081101561085757600080fd5b5051156108d35760408051632142170760e11b81523060048201526001600160a01b038581166024830152604482018490529151918416916342842e0e9160648082019260009290919082900301818387803b1580156108b657600080fd5b505af11580156108ca573d6000803e3d6000fd5b5050505061094c565b816001600160a01b03166340c10f1984836040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b15801561093357600080fd5b505af1158015610947573d6000803e3d6000fd5b505050505b505050610f9a565b7ff871896b17e9cb7a64941c62c188a4f5c621b86800e3d15452ece01ce56073df60001b6109888260008151811061074957fe5b1415610c085760006109a08260018151811061074957fe5b905060606109c1846002815181106109b457fe5b6020026020010151611920565b905060608180602001905160208110156109da57600080fd5b8101908080516040519392919084600160201b8211156109f957600080fd5b908301906020820185811115610a0e57600080fd5b82518660208202830111600160201b82111715610a2a57600080fd5b82525081516020918201928201910280838360005b83811015610a57578181015183820152602001610a3f565b5050505091909101604052505082519293508a9150600090505b82811015610bfd576000848281518110610a8757fe5b60200260200101519050826001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610ad557600080fd5b505afa158015610ae9573d6000803e3d6000fd5b505050506040513d6020811015610aff57600080fd5b505115610b7b5760408051632142170760e11b81523060048201526001600160a01b038981166024830152604482018490529151918516916342842e0e9160648082019260009290919082900301818387803b158015610b5e57600080fd5b505af1158015610b72573d6000803e3d6000fd5b50505050610bf4565b826001600160a01b03166340c10f1988836040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b158015610bdb57600080fd5b505af1158015610bef573d6000803e3d6000fd5b505050505b50600101610a71565b505050505050610f9a565b7ff94915c6d1fd521cee85359239227480c7e8776d7caf1fc3bacad5c269b66a1460001b610c3c8260008151811061074957fe5b1415610f63576000610c548260018151811061074957fe5b905060006001600160a01b0316610c718360028151811061074957fe5b6001600160a01b031614610cb65760405162461bcd60e51b815260040180806020018281038252602981526020018061206b6029913960400191505060405180910390fd5b60008690506000610ccd8460038151811061074957fe5b9050816001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610d1357600080fd5b505afa158015610d27573d6000803e3d6000fd5b505050506040513d6020811015610d3d57600080fd5b505115610d9c5760408051632142170760e11b81523060048201526001600160a01b038581166024830152604482018490529151918416916342842e0e9160648082019260009290919082900301818387803b1580156108b657600080fd5b6060610dae866002815181106109b457fe5b90506060818060200190516020811015610dc757600080fd5b8101908080516040519392919084600160201b821115610de657600080fd5b908301906020820185811115610dfb57600080fd5b8251600160201b811182820188101715610e1457600080fd5b82525081516020918201929091019080838360005b83811015610e41578181015183820152602001610e29565b50505050905090810190601f168015610e6e5780820380516001836020036101000a031916815260200191505b506040525050509050836001600160a01b03166394d008ef8685846040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b0316815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610ef3578181015183820152602001610edb565b50505050905090810190601f168015610f205780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015610f4157600080fd5b505af1158015610f55573d6000803e3d6000fd5b505050505050505050610f9a565b60405162461bcd60e51b815260040180806020018281038252602a815260200180611f71602a913960400191505060405180910390fd5b505050505050565b6000828152602081905260408120610fc0908363ffffffff6119ea16565b90505b92915050565b6000828152602081905260408120610fc0908363ffffffff6119f616565b601481565b600081565b7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef81565b60025460ff161561105e576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b61109c6040518060400160405280601781526020017f4d696e7461626c65455243373231507265646963617465000000000000000000815250611a0b565b6110a7600082610548565b6110bf60008051602061204b83398151915282610548565b506002805460ff19166001179055565b6000818152602081905260408120610fc390611aa9565b600082815260208190526040902060020154611104906105086114f8565b6105ad5760405162461bcd60e51b8152600401808060200182810382526030815260200180611fc36030913960400191505060405180910390fd5b60008051602061204b83398151915261115a816105086114f8565b6001906111c05760405162461bcd60e51b81526020600482019081528254600260001961010060018416150201909116046024830181905290918291604490910190849080156106cf5780601f106106a4576101008083540402835291602001916106cf565b50602082141561129f576000838360208110156111dc57600080fd5b5060408051913580835290519092506001600160a01b038088169289821692918b16917fe13244aa06bdc79480ed5fdc6ebe2bb37202fcdf33ecf45dc449f4201f3dc0879181900360200190a460408051632142170760e11b81526001600160a01b038981166004830152306024830152604482018490529151918716916342842e0e9160648082019260009290919082900301818387803b15801561128157600080fd5b505af1158015611295573d6000803e3d6000fd5b5050505050610f9a565b6060838360208110156112b157600080fd5b810190602081018135600160201b8111156112cb57600080fd5b8201836020820111156112dd57600080fd5b803590602001918460208302840111600160201b831117156112fe57600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f8201169050808301925050505050505091929192905050509050846001600160a01b0316866001600160a01b0316886001600160a01b03167fdb55e3a0ae817693fd7b07170d81eab0eb2c239f36fcecbc98b6b58ac5667e7a846040518080602001828103825283818151815260200191508051906020019060200280838360005b838110156113ca5781810151838201526020016113b2565b505050509050019250505060405180910390a48051601481111561141f5760405162461bcd60e51b815260040180806020018281038252602c81526020018061201f602c913960400191505060405180910390fd5b60005b818110156114db57866001600160a01b03166342842e0e8a3086858151811061144757fe5b60200260200101516040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050600060405180830381600087803b1580156114b757600080fd5b505af11580156114cb573d6000803e3d6000fd5b5050600190920191506114229050565b505050505050505050565b60008051602061204b83398151915281565b335b90565b600082815260208190526040902061151b908263ffffffff611ab416565b15610552576115286114f8565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b600082815260208190526040902061158a908263ffffffff611ac916565b15610552576115976114f8565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b6115e3611e6d565b6000825111611639576040805162461bcd60e51b815260206004820152601f60248201527f524c505265616465723a20494e56414c49445f42595445535f4c454e47544800604482015290519081900360640190fd5b506040805180820190915281518152602082810190820152919050565b606061166182611ade565b6116b2576040805162461bcd60e51b815260206004820152601860248201527f524c505265616465723a204954454d5f4e4f545f4c4953540000000000000000604482015290519081900360640190fd5b60006116bd83611b0a565b905060608167ffffffffffffffff811180156116d857600080fd5b5060405190808252806020026020018201604052801561171257816020015b6116ff611e6d565b8152602001906001900390816116f75790505b50905060006117248560200151611b96565b855190915081146117665760405162461bcd60e51b81526004018080602001828103825260278152602001806120946027913960400191505060405180910390fd5b60006117758660200151611c2f565b60208701510190506000805b858110156117cc5761179283611b96565b91506040518060400160405280838152602001848152508582815181106117b557fe5b602090810291909101015291810191600101611781565b50929695505050505050565b60006117e382611ade565b15611835576040805162461bcd60e51b815260206004820181905260248201527f524c505265616465723a204445434f44494e475f4c4953545f41535f55494e54604482015290519081900360640190fd5b81516021101561188c576040805162461bcd60e51b815260206004820152601e60248201527f524c505265616465723a20494e56414c49445f55494e545f4c454e4754480000604482015290519081900360640190fd5b600061189b8360200151611b96565b835190915081146118dd5760405162461bcd60e51b81526004018080602001828103825260278152602001806120ea6027913960400191505060405180910390fd5b60006118ec8460200151611c2f565b8451602080870151830180519394509184900392919083101561191657826020036101000a820491505b5095945050505050565b606060006119318360200151611b96565b835190915081146119735760405162461bcd60e51b8152600401808060200182810382526028815260200180611f9b6028913960400191505060405180910390fd5b60006119828460200151611c2f565b845190915081900360608167ffffffffffffffff811180156119a357600080fd5b506040519080825280601f01601f1916602001820160405280156119ce576020820181803683370190505b5090506000816020019050611916848860200151018285611c92565b6000610fc08383611cdd565b6000610fc0836001600160a01b038416611d41565b806040516020018082805190602001908083835b60208310611a3e5780518252601f199092019160209182019101611a1f565b51815160209384036101000a60001901801990921691161790527f3a20494e53554646494349454e545f5045524d495353494f4e530000000000009190930190815260408051808303600519018152601a909201905280516105529550600194509201919050611e87565b6000610fc382611d59565b6000610fc0836001600160a01b038416611d5d565b6000610fc0836001600160a01b038416611da7565b6020810151805160009190821a9060c0821015611b00576000925050506104e5565b5060019392505050565b600080600090506000611b208460200151611c2f565b602085015185519181019250015b80821015611b8d57611b3f82611b96565b8201915080821115611b825760405162461bcd60e51b815260040180806020018281038252602c815260200180611ff3602c913960400191505060405180910390fd5b600190920191611b2e565b50909392505050565b80516000908190811a6080811015611bb15760019150611c28565b60b8811015611bc657607e1981019150611c28565b60c0811015611bf35760b78103600185019450806020036101000a85510460018201810193505050611c28565b60f8811015611c085760be1981019150611c28565b60f78103600185019450806020036101000a855104600182018101935050505b5092915050565b8051600090811a6080811015611c495760009150506104e5565b60b8811080611c64575060c08110801590611c64575060f881105b15611c735760019150506104e5565b60c0811015611c875760b5190190506104e5565b60f5190190506104e5565b80611c9c57611cd8565b5b60208110611cbc578251825260209283019290910190601f1901611c9d565b8251825160208390036101000a60001901801990921691161782525b505050565b81546000908210611d1f5760405162461bcd60e51b8152600401808060200182810382526022815260200180611f206022913960400191505060405180910390fd5b826000018281548110611d2e57fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000611d698383611d41565b611d9f57508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610fc3565b506000610fc3565b60008181526001830160205260408120548015611e635783546000198083019190810190600090879083908110611dda57fe5b9060005260206000200154905080876000018481548110611df757fe5b600091825260208083209091019290925582815260018981019092526040902090840190558654879080611e2757fe5b60019003818190600052602060002001600090559055866001016000878152602001908152602001600020600090556001945050505050610fc3565b6000915050610fc3565b604051806040016040528060008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611ec857805160ff1916838001178555611ef5565b82800160010185558215611ef5579182015b82811115611ef5578251825591602001919060010190611eda565b50611f01929150611f05565b5090565b6114fa91905b80821115611f015760008155600101611f0b56fe456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e744d696e7461626c654552433732315072656469636174653a20494e56414c49445f5349474e4154555245524c505265616465723a2042595445535f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b65524c505265616465723a204e554d5f4954454d535f4445434f4445445f4c454e4754485f4d49534d415443484d696e7461626c654552433732315072656469636174653a20455843454544535f42415443485f4c494d4954241ecf16d79d0f8dbfb92cbc07fe17840425976cf0667f022fe9877caa831b084d696e7461626c654552433732315072656469636174653a20494e56414c49445f5245434549564552524c505265616465723a204c4953545f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66524c505265616465723a2055494e545f4445434f4445445f4c454e4754485f4d49534d41544348a164736f6c6343000606000a","storage":{"0x1":"0x63","0x2":"0x1","0x73d5d1a274bdea1400ad3ea4d982f594abdfd528cde1486b6c617faa3ec116":"0x1","0x89011777cfe6194dd982545e7eb24725dfe9a1aacae299c76fc48ef5017ae650":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x89011777cfe6194dd982545e7eb24725dfe9a1aacae299c76fc48ef5017ae651":"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0x1","0xb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6":"0x4d696e7461626c654552433732315072656469636174653a20494e5355464649","0xb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf7":"0x4349454e545f5045524d495353494f4e53000000000000000000000000000000","0xba75a66b8132bebab85d36fd3638083da57ae3d78fbcd8cc41f73514287dadaf":"0x1","0xe6c7d8231a06d7cb67831aeabcbd43ba24e5e4c6569cf23405f1e558de8580e0":"0x2","0xe84508f2c7fa9c351146748b3025cb78b45df37d868e48c6a75102fecdeee645":"0x2","0xe84508f2c7fa9c351146748b3025cb78b45df37d868e48c6a75102fecdeee647":"0x0","0xf0df3dcda05b4fbd9c655cde3d5ceb211e019e72ec816e127a59e7195f2cd7f5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x5cc819c9915eadfcebd76952b8c1bc36cadd7376":{"nonce":2,"balance":"0x0","code":"0x608060405260043610610103575f3560e01c8063a900866b11610092578063f07ec37311610062578063f07ec373146102f7578063f2d12b1214610316578063f47b774014610329578063fb0f3ee114610116578063fd9f1e101461034c575f80fd5b8063a900866b1461028a578063b3a34c4c146102be578063e7acab24146102d1578063ed98a574146102e4575f80fd5b80637423eb3c116100d85780637423eb3c146101f757806379df72bd1461020b57806387201b411461022a578063881477321461024b578063a81744041461026a575f80fd5b801561011657806306fdde031461013e57806346423aa71461015f5780635b34b966146101d5575f80fd5b366101125761011061036b565b005b5f80fd5b610129610124366004615115565b6103f9565b60405190151581526020015b60405180910390f35b348015610149575f80fd5b50610152610408565b604051610135919061518f565b34801561016a575f80fd5b506101b36101793660046151a1565b5f9081526001602052604090205460ff808216926101008304909116916001600160781b03620100008204811692600160881b9092041690565b6040805194151585529215156020850152918301526060820152608001610135565b3480156101e0575f80fd5b506101e9610417565b604051908152602001610135565b348015610202575f80fd5b50610110610420565b348015610216575f80fd5b506101e96102253660046151b8565b6104c1565b61023d61023836600461524c565b6104f8565b6040516101359291906153f0565b348015610256575f80fd5b5061012961026536600461543f565b610571565b61027d61027836600461547d565b61058f565b60405161013591906154e3565b348015610295575f80fd5b506101e96102a43660046154f5565b6001600160a01b03165f9081526002602052604090205490565b6101296102cc36600461550e565b61062a565b6101296102df366004615553565b6106a3565b61023d6102f23660046155d7565b6106e1565b348015610302575f80fd5b506101e96103113660046154f5565b610784565b61027d610324366004615677565b6107a1565b348015610334575f80fd5b5061033d6107ea565b60405161013593929190615719565b348015610357575f80fd5b5061012961036636600461543f565b610801565b7f000000000000000000000000000000000000000000000000000000000000000180156103b357600263929eee145c146103b05763a61be9f05f52346020526024601cfd5b50565b63929eee1454806103e057600263929eee145c146103dc5763a61be9f05f52346020526024601cfd5b5050565b600381146103dc5763a61be9f05f52346020526024601cfd5b5f61040261080c565b92915050565b60606104126109c0565b905090565b5f6104126109d8565b63929eee14546001147f000000000000000000000000000000000000000000000000000000000000000180610453575080155b1561047157604051630f45b98b60e41b815260040160405180910390fd5b61049a7f000000000000000000000000145908bbcfc7b258e4d4d9a586f6e3249ae80216610a45565b6104b7576040516370a4078f60e01b815260040160405180910390fd5b5f63929eee145550565b5f806104cd6004610aa3565b90506104f16104e282610ab35b63ffffffff16565b610140830135610b30565b3590565b9392505050565b60608061055d61051361050b6004610aa3565b610c746104da565b61052a61052260046020610cdc565b610cfa6104da565b61054161053960046040610cdc565b610d526104da565b61055061053960046060610cdc565b89338a15028a0189610daa565b915091509b509b9950505050505050505050565b5f6104f161058a6105826004610aa3565b610de46104da565b610e3c565b606061061f6105a96105a16004610aa3565b610f5d6104da565b604080515f8082526020820190925290610601565b6105ee6040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816105be5790505b5061061961061160046020610cdc565b610fb56104da565b3361100d565b90505b949350505050565b5f6104f161064361063b6004610aa3565b61104b6104da565b604080515f808252602082019092529061069b565b6106886040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816106585790505b5084336110c1565b5f6106d76106bc6106b46004610aa3565b6112406104da565b6106cb61052260046020610cdc565b853386150286016110c1565b9695505050505050565b6060806107736106f46105a16004610aa3565b604080515f808252602082019092529061074c565b6107396040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816107095790505b5061075c61053960046020610cdc565b61076b61053960046040610cdc565b883389610daa565b915091509850989650505050505050565b6001600160a01b0381165f90815260208190526040812054610402565b60606107dc6107b361050b6004610aa3565b6107c261052260046020610cdc565b6107d161061160046040610cdc565b33861502860161100d565b90505b979650505050505050565b60605f806107f661129c565b925092509250909192565b5f6104f183836112e8565b5f61012435600281901c90600316600182118334158214806108315761083134611423565b506003841160a0810260240135906502030203010160d01b861a905f630101020360d01b881a6108648882898888611434565b9096509150506101c4600583901b01355f87600581111561088757610887615329565b036108bc5760443560243517156108a557636ab37ce75f526004601cfd5b6108af8482611751565b6108b7611809565b61099d565b6040805160208082528183019092525f9160208201818036833701905050905060028a60058111156108f0576108f0615329565b036109135761090e60c4356084353360e435610104355b8787611889565b610988565b60038a600581111561092757610927615329565b036109455761090e60c4356084353360e435610104355b87876118d4565b60048a600581111561095957610959615329565b036109735761090e60243533608435604435606435610907565b6109886024353360843560443560643561093e565b610992848261190a565b61099b816119c4565b505b6109a88689846119e8565b6109b0611a5e565b6001995050505050505050505090565b6060602080526707536561706f727460475260606020f35b5f6109e1611ab1565b600143034060801c335f525f60205260405f208054820192508281555050336001600160a01b03167f721c20121297512b72821b97f5326877ea8ecf4bb9948fea5bfcb6453074d37f82604051610a3a91815260200190565b60405180910390a290565b5f816001600160a01b0316600a5a610a5d9190615773565b6040515f8181818686fa925050503d805f8114610a95576040519150601f19603f3d011682016040523d82523d5f602084013e610a9a565b606091505b50909392505050565b5f813563ffffffff168201610402565b5f610ac661016060408051918201905290565b9050610ad58282610140611b28565b610af2610aeb610ae6846040610cdc565b611b31565b6040830152565b5f610b06610b01846060610cdc565b611b84565b9050610b13816060840152565b610b26610b1e825190565b610140840152565b50919050565b0190565b610140820151604080519084015180515f939284927fa66999307ad1bb4fde44d13a5d710bd7718e0c87c1eef68a571629fbf5b93d0292602090910190845b81811015610b9c578251601f1901805186825260c082208652905260209384019390920191600101610b6f565b508060051b6040512094505050505f7f42d81c6929ffdc4eb27a0808e40e82516ad42296c166065de7f812492304ff6e915060405160206060890151015f5b86811015610c08578151601f1901805186825260e082208552905260209283019290910190600101610bdb565b505060408051600587901b9020601f198a0180517ffa445660b7e21515a59617fcd68910b487aa5808b8abda3d78bc85df364b2c2f8252928b01805197815260608c018051938152610140909c019a8b5261018082209390915295909552939097525050925250919050565b5f8063ffffffff8335169050600581901b610c986020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610cca610cc4610cbf8484610cdc565b611240565b82850152565b602001610ca7565b5050505050919050565b5f6104f163ffffffff610cf46104ed8686610b2c8516565b16840190565b5f8063ffffffff8335169050600581901b610d1e6020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610d4a610cc4610d458484610cdc565b611bc7565b602001610d2d565b5f8063ffffffff8335169050600581901b610d766020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610da2610cc4610d9d8484610cdc565b611c09565b602001610d85565b60608036155f80610dbe8c8c85898b611c4c565b91509150610dd18c8b8b8b8b8787612029565b9450945050505097509795505050505050565b5f8063ffffffff8335169050600581901b610e086020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610e34610cc4610e2f8484610cdc565b61215b565b602001610e17565b5f610e45611ab1565b5f805f80855190505f5b81811015610f50575f878281518110610e6a57610e6a615792565b60209081029190910101518051909150600481608001516004811115610e9257610e92615329565b03610e9e575050610f48565b80519450610eab8161219e565b5f8181526001602052604081209850909650610ecd90879089903615156121d7565b50865460ff16610f455780610140015181606001515114610ef057610ef0612265565b610eff85878460200151612272565b865460ff191660011787556040517ff280791efe782edcf06ce15c8f4dff17601db3b88eb3805a0db7d77faf757f0490610f3c9088908490615895565b60405180910390a15b50505b600101610e4f565b5060019695505050505050565b5f8063ffffffff8335169050600581901b610f816020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610fad610cc4610fa88484610cdc565b61104b565b602001610f90565b5f8063ffffffff8335169050600581901b610fd96020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257611005610cc46110008484610cdc565b61230e565b602001610fe8565b60605f36151590505f806110258888858b5189611c4c565b9150915061103282612341565b61103f8887848885612380565b98975050505050505050565b5f61105e61020060408051918201905290565b60a0810180825290915061107a61107484610aa3565b82612453565b61108660016020840152565b61109260016040840152565b6110af6110a86110a3856020610cdc565b612489565b6060840152565b610b266110ba6124b1565b6080840152565b835160808101515f91906110e860048260048111156110e2576110e2615329565b146124cb565b5f80806110f78a36151561256c565b60408051600180825281830190925293965091945092505f9190816020015b61111e615027565b8152602001906001900390816111165790505090508a815f8151811061114657611146615792565b602002602001018190525061115b818b612764565b6111678684848b6128dd565b6040805160018082528183019092525f91602080830190803683375091925050503615156004878181111561119e5761119e615329565b146111c1576111af8d83885f6129dd565b6111bb86868684612a2f565b506111d3565b6111d0888e6080015183612b33565b95505b6111de888c8c612c03565b85825f815181106111f1576111f1615792565b6020026020010181815250506112088d8388612d26565b61122586895f01518a602001518d8c604001518d60600151612df3565b61122d611a5e565b5060019c9b505050505050505050505050565b5f61125361020060408051918201905290565b905061126760208381019083016040611b28565b60a0810180825261127a61107484610aa3565b61128b6110a86110a3856060610cdc565b610b266110ba6110a3856080610cdc565b60605f805f6112a9612e58565b90505f7f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c905060605f5281602052806040526303312e3660635260a05ff35b5f6112f1611ab1565b5f8083815b81811015611408573687878381811061131157611311615792565b90506020028101906113239190615977565b90505f61133360208301836154f5565b90505f61134660408401602085016154f5565b90505f61135960a0850160808601615996565b905081331483331417156004821417871796505f61138d61138261137a8790565b610ab36104da565b866101400135610b30565b5f8181526001602052604090819020805461ffff19166101001781559051909a509091506001600160a01b0380851691908616907f6bacc01dbe442496068f7d234edd811f1a5f833243e0aec824f86ab861f3c90d906113f09085815260200190565b60405180910390a385600101955050505050506112f6565b5050801561141857611418612f35565b506001949350505050565b63a61be9f05f52806020526024601cfd5b5f8061143f5f6124cb565b611447612f42565b426101643511154261014435111715611475576321ccfeb75f5261014435602052610164356040526044601cfd5b610204356102643510156114905763466aa6165f526004601cfd5b7f42d81c6929ffdc4eb27a0808e40e82516ad42296c166065de7f812492304ff6e608081905260a08790526060602460c037604060646101203760e060802061016052610264356102043560051b6102a0016001820181526020810190508881526080602460208301376101608860a0528760c0525f60e0525f6102043593505f5b84811015611566578060400261028401602081610100376040816101203760208101358317925060208401935060e0608020845260a0850194508b85528a6020860152604081606087013750600101611512565b6001850160051b610160206060526102643594505b848110156115b6578060400261028401925060a0840193508a845289602085015260408360608601376020830135919091179060010161157b565b506001600160a01b038111156115d3576339f3e3fd5f526004601cfd5b50505050505f7fa66999307ad1bb4fde44d13a5d710bd7718e0c87c1eef68a571629fbf5b93d029050806080528360a052606060c460c0376020610104610120375060c06080205f9081526020812060e05260843590611647826001600160a01b03165f9081526020819052604090205490565b7ffa445660b7e21515a59617fcd68910b487aa5808b8abda3d78bc85df364b2c2f60808190529091506040608460a03760605161010052896101205260a061014461014037816101e05261018060802094505050506102043560051b61018001828152336020820152608060408201526101206060820152600160808201528360a0820152606060c460c083013760a061026435026101e00160a4356084357f9d9af8e38d66c62e2c12f0225249fd9d721c54b83f48d9352c97c6cacdcb6f318385a35f60605260608101820160405250505f61172383612f8d565b905061172f8389612fde565b7101000000000000000000000000000001000182559150509550959350505050565b60c43560843560e4356101043584156117b9575f6040519050632671a55160e11b815260206004820152600160248201528660448201528460648201528360848201523360a48201528260c48201528160e48201526117b38682610104613033565b50611801565b60028660058111156117cd576117cd615329565b036117f457806001146117e3576117e3816130ea565b6117ef848433856130fb565b611801565b61180184843385856131b0565b505050505050565b346064356084356102643560061b5f80805b8381101561185a5761028481013592506102a481013591508683111561184357611843613287565b82870396506118528284613294565b60400161181b565b508585111561186b5761186b613287565b6118758486613294565b848611156118015761180133868803613294565b61189381836132ca565b816118ba57826001146118a9576118a9836130ea565b6118b5878787876130fb565b6118cb565b6118cb828260028a8a8a8a8a6132e8565b50505050505050565b6118dd83613367565b6118e781836132ca565b816118f9576118b587878787876131b0565b6118cb828260038a8a8a8a8a6132e8565b5f805f805f861561192f57505060843592503391505060c4356101043560e435611944565b50339350506084359150506024356064356044355b801561195257611952613379565b50600586901b6101e403356102643560061b5f80805b838110156119a95761028481013592506102a481013591508a156119935761199083876159b4565b95505b6119a1878a8486898f613386565b604001611968565b506119b886898988888e613386565b50505050505050505050565b60408151146119d05750565b5f6119dc826020015190565b90506103dc81836133bb565b611a048260a4355b331415600182116004909210919091161690565b15611a5957805f611a13825190565b9050608081901c63ffffffff8216611a3484826317b1f94282526001905250565b601c840163fb5014fc6060529350611a5060a4358886856133df565b5f6060526118cb565b505050565b7f00000000000000000000000000000000000000000000000000000000000000018015611a8f575f63929eee145d50565b63929eee145480611aa5575f63929eee145d5050565b50600163929eee145550565b7f00000000000000000000000000000000000000000000000000000000000000018015611af05763929eee145c156103b057637fa8a9875f526004601cfd5b63929eee145480611b135763929eee145c156103dc57637fa8a9875f526004601cfd5b600181146103dc57637fa8a9875f526004601cfd5b80838337505050565b5f63ffffffff8235166040519150808252602082018160051b81018060a084026020870183378293505b81841015611b745780845260209093019260a001611b5b565b60405250919392505050565b9052565b5f63ffffffff8235166040519150808252602082018160051b81018060c084026020870183378293505b81841015611b745780845260209093019260c001611bae565b5f611bd960a060408051918201905290565b9050611be782826080611b28565b611c04611bfd611bf8846080610cdc565b613427565b6080830152565b919050565b5f63ffffffff8235166040519150808252602082018160051b8101808360061b6020870183378293505b81841015611b7457808452602090930192604001611c33565b60605f611c5960016124cb565b86515f90600160e61b82351690806001600160401b03811115611c7e57611c7e61574b565b604051908082528060200260200182016040528015611ca7578160200160208202803683370190505b50945060010160051b91505f60205b83811015611ea8575f611ccc8c83613cce6104da565b90505f805f611cdb848e61256c565b6001600160781b0382166020880152919450925090505f829003611d025750505050611ea0565b6001600160781b0381166040808601919091528a8601849052845160a081015160c0820151608083015192909301518051600184119d909d179c600490931099509092915f5b81811015611dea575f838281518110611d6357611d63615792565b602002602001015190508b8151108d179c505f611d858989846080015161345e565b90508160800151826060015103611da25760608201819052611db7565b611db18989846060015161345e565b60608301525b5f611dd08360600151838a8a611dcb361590565b61349a565b606084018190526080909301929092525050600101611d48565b5087516060015180515f5b81811015611e94575f838281518110611e1057611e10615792565b602002602001015190505f611e2a8b8b846080015161345e565b90508160800151826060015103611e475760608201819052611e5c565b611e568b8b846060015161345e565b60608301525b5f611e718360600151838c8c611dcb36151590565b6060840181905260a0840180516080909501949094529092525050600101611df5565b50505050505050505050505b602001611cb6565b50506001600160e61b018103611ec057611ec06134ed565b50611ecb8888612764565b5f8060205b8381101561200e578581015192508215612006575f611ef28c83613cce6104da565b9050885f03611f0d575f878301819052602090910152612006565b60048151608001516004811115611f2657611f26615329565b14611fa957611f3f8188866001600587901c038e6134fa565b611f55575f878301819052602090910152612006565b602080820151604083015183516080810151930151611f8e9388936001600160781b039081169316913314156001909111168e17612a2f565b611fa4575f878301819052602090910152612006565b611fd4565b611fbb815f015182608001518c612b33565b878301819052935083611fd4575f602090910152612006565b886001900398505f815f01519050611fff85825f015183602001518c85604001518660600151612df3565b6001935050505b602001611ed0565b508061201c5761201c613555565b5050509550959350505050565b85518551606091829161203c81836159c7565b6001600160401b038111156120535761205361574b565b60405190808252806020026020018201604052801561208c57816020015b61207961505a565b8152602001906001900390816120715790505b5092505f5b828110156120e4576120bf8c5f8d84815181106120b0576120b0615792565b60200260200101518c8c613562565b8482815181106120d1576120d1615792565b6020908102919091010152600101612091565b505f5b8181101561213d576121168c60018c848151811061210757612107615792565b60200260200101518c5f613562565b848483018151811061212a5761212a615792565b60209081029190910101526001016120e7565b5061214b8b84888a896135b1565b9350505097509795505050505050565b5f61216c6040808051918201905290565b905061218661218261217d84610aa3565b61389a565b8252565b611c046121976110a3846020610cdc565b6020830152565b5f6121b38260600151518361014001516138b9565b81516001600160a01b03165f90815260208190526040902054610402908390610b30565b82545f90610100900460ff16156121fe5781156121f7576121f7856138c9565b505f610622565b83546201000090046001600160781b0316801561225957831561222957612224866138da565b612259565b8454600160881b90046001600160781b0316811061225957821561225057612250866138eb565b5f915050610622565b50600195945050505050565b632165628a5f526004601cfd5b33831480156122815750505050565b5f61228a612e58565b61190160f01b5f9081526002828152602287815260428320908390528651939450929190601f601d840116106102e260621984011016156122f4576122cf86886138fc565b61190160f01b5f908152600286905260228281526042822091905290975090506122f7565b50815b612304888285858a613992565b5050505050505050565b5f61231f6040808051918201905290565b9050612330612182610d9d84610aa3565b611c04612197610d9d846020610cdc565b80518060051b6040019050602082038051602082527f4b9f2d36e1b4c93de62cc077b00b1a91d84b6c31b4a14e012718dcca230689e78383a190525050565b8351606090806001600160401b0381111561239d5761239d61574b565b6040519080825280602002602001820160405280156123d657816020015b6123c361505a565b8152602001906001900390816123bb5790505b5091505f5b81811015612439575f8782815181106123f6576123f6615792565b6020026020010151905061241389825f0151836020015185613adb565b84838151811061242557612425615792565b6020908102919091010152506001016123db565b5061244787838787876135b1565b50505b95945050505050565b6124608282610160611b28565b612471610aeb610ae6846040610cdc565b6103dc612482610b01846060610cdc565b6060830152565b6040518135601f0163ffffffe01660200180838337913563ffffffff16815290810160405290565b5f6124c3602060408051918201905290565b5f8152905090565b7f000000000000000000000000000000000000000000000000000000000000000180156125185763929eee145c1561250a57637fa8a9875f526004601cfd5b8160010163929eee145d5050565b63929eee14548061254a5763929eee145c1561253b57637fa8a9875f526004601cfd5b8260010163929eee145d505050565b6001811461255f57637fa8a9875f526004601cfd5b505060020163929eee1455565b5f805f80855f015190506125898160a001518260c0015187613c80565b61259c57505f925082915081905061275d565b602086015160408701516001600160781b0391821694501691505f6004826080015160048111156125cf576125cf615329565b036125fc57600183850218905080156125ea576125ea613ca3565b506001935083925082915061275d9050565b50818311831517801561261157612611613ca3565b608082015160011615848411161561262b5761262b613cb0565b6126348261219e565b5f81815260016020526040812091965061265290879083908a6121d7565b61266557505f935083925061275d915050565b805460ff1661268057612680835f0151878a60600151612272565b8054608881901c8061269457869150612757565b6001600160781b038260101c169150600186036126b8578181039650809550612757565b8086036126d357908601858103868211029096039590612757565b80860296810291909502810186810387821102918290039695919003906001600160781b0386111561275757612717565b5f5b8215610b2657908290069190612706565b61272a6127248784612704565b88612704565b8015019687900496909504946001600160781b0386111561275757634e487b715f5260116020526024601cfd5b50505050505b9250925092565b805182515f5b82811015612853575f84828151811061278557612785615792565b602002602001015190505f815f015190508381106127aa576127aa8260200151613cbd565b5f8782815181106127bd576127bd615792565b6020026020010151905080602001516001600160781b03165f036127e35750505061284b565b80516040808201519085015163bfb3f8ce5f8760200151600181111561280b5761280b615329565b14612827575f61281c856060613cce565b9350636088d7de9150505b8251821061283857805f526004601cfd5b612843838389613cd9565b505050505050505b60010161276a565b505f5b818110156128d6575f85828151811061287157612871615792565b6020026020010151905080602001516001600160781b03165f0361289557506128ce565b8051608081015160608201516128b29085908363a8930e9a613d8c565b6128ca8483604001518363d69293326104da613d8c90565b5050505b600101612856565b5050505050565b60a084015160c08501516040860151515f805b8281101561295a575f8960400151828151811061290f5761290f615792565b602002602001015190505f815f01519050801584179350505f612946826060015183608001518c8c8b8b612941361590565b613df3565b6060830152506080018690526001016128f0565b5060808801516004811082168015612974576129746134ed565b505050506060860151515f5b81811015612304575f8860600151828151811061299f5761299f615792565b602002602001015190505f6129c4826060015183608001518b8b8a8a61294136151590565b60608301525060a0810151608090910152600101612980565b8351608081015160208201513314156001821160049092109190911616156128d6575f80612a12858489608001518988613e2e565b63fb5014fc6060529092509050611a5083602001518684846133df565b5f848152600160205260408120805482908290608881901c80612a5457889150612adc565b6001600160781b038260101c169150808803612a7857908801878111935090612adc565b97880297808802979190910288018781119350906001600160781b038083119089111715612adc57612aaa8883612704565b8015019788900497909104906001600160781b038083119089111715612adc57634e487b715f5260116020526024601cfd5b508215612b15578515612b09576040516310fda3e160e01b8152600481018a905260240160405180910390fd5b5f945050505050610622565b8660881b8160101b1760011782556001945050505050949350505050565b5f83610140015184606001515114612b4d57612b4d612265565b83515f8080612b5c8888613fac565b915091505f8082845f885af16001600160a01b0385165f908152600260205260409020805460018101909155606086901b189550925082612bbb578515612bae57612ba5614056565b612bae8561409d565b505f93506104f192505050565b505050505f805f612bd8876040015188606001516104da6140ae90565b925092509250825f14612bee57612bee8461409d565b60408701919091526060860152509392505050565b6040805160208082528183019092525f916020820181803683375050506040850151519091505f5b81811015612c7b575f86604001518281518110612c4a57612c4a615792565b60200260200101519050846080820152612c7281885f0151896101200151876104da61432790565b50600101612c2b565b50506060840151515f90815b81811015612d09575f87606001518281518110612ca657612ca6615792565b602002602001015190505f6005811115612cc257612cc2615329565b81516005811115612cd557612cd5615329565b03612cf1574793508381606001511115612cf157612cf1613287565b612d00813389886143276104da565b50600101612c87565b5050612d14826119c4565b504780156128d6576128d63382613294565b8251608081015160208201515f92839283928392916004811060019091111633909114151615612d8857612d69612d6361010083015190565b5190565b8861441c565b9093509150612d7a60208201612d5f565b945063fb5014fc9350612dd4565b600481608001516004811115612da057612da0615329565b0361230457805194505f8560601b9050612dc187838b608001518b8561445d565b639397928596509094509250612dd49050565b612dde6060859052565b612dea858785856133df565b5f606052612304565b60608290506060829050856001600160a01b0316876001600160a01b03167f9d9af8e38d66c62e2c12f0225249fd9d721c54b83f48d9352c97c6cacdcb6f318a888686604051612e469493929190615a13565b60405180910390a35050505050505050565b5f7f00000000000000000000000000000000000000000000000000000000000005394614612f10575060408051608080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f5f9081527f32b5c112df393a49218d7552f96b2eeb829dfb4272f4f24eef510a586b85feef6020527f95f740a33d720b7cd93c75d515ac95ca3bbaa2594cce46ea48e00974ea8fcd14855246606090815230845260a08220949095529093529190915290565b507f8bebed3dbe91a82da0dc94c8d370c160ad6db1b32164303e65b8544bae7e2f5590565b63fed398fc5f526004601cfd5b600435602014610224356102401416610244356102606102643560061b01141660186101243510600160a01b60843560a4351760c4356024351717101616806103b0576103b0614528565b5f8181526001602081905260409091209060843590612fb290849084903615156121d7565b50815460ff16610b2657610b268184612fd9602463ffffffff6102443516016124896104da565b612272565b5f612feb8260a4356119f0565b15610402575f805f612ffc86614535565b63fb5014fc6060529194509250905061301c60a43587601c8601856133df565b5f60605260209190910160801b1781529392505050565b604080517f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c60ff60a01b175f90815260208690527f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f83526055600b20919092526001600160a01b031690505f805f805260205f85875f875af191505f519050816130c8576130bf614056565b6130c8836145ed565b6001600160e01b03198116632671a55160e11b146118015761180186846145fe565b6369f958275f52806020526024601cfd5b833b61311257635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af1806131a2573d1561318057601f3d0160051c8260051c8160030281831115613169578183036003028280028480020360091c01015b5a60208201101561317c573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b6131c757635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af18061326c573d1561324b57601f3d0160051c8560051c8160030281831115613234578183036003028280028480020360091c01015b5a602082011015613247573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b638ffff9805f526004601cfd5b61329d81613367565b5f805f805f85875af1905080611a59576132b5614056565b63bc806b965f5282602052816040526044601cfd5b5f6132d6836020015190565b9050818114611a5957611a59836119c4565b5f60208851036133225750604080885260208089018a9052632671a55160e11b918901919091526044880152600160648801819052613331565b50606487018051600101908190525b603c60c082028901038781528660208201528560408201528460608201528360808201528260a082015250505050505050505050565b806103b0576391b3e5145f526004601cfd5b636ab37ce75f526004601cfd5b61338f83613367565b61339981836132ca565b816133aa576117ef86868686614613565b611801828260018989895f8a6132e8565b6064810151604082019060c0026044016133d6848383613033565b50506020905250565b5f806001600160e01b03198451165f805260205f85875f8b5af15f51909350149050816134185761340e614056565b846080526024607cfd5b8061180157846080526024607cfd5b5f8063ffffffff83351690506001810160051b61344a8160408051918201905290565b9250613457848483611b28565b5050919050565b5f82840361346d5750806104f1565b82848309156134835763c63cf0895f526004601cfd5b5f61348e8584615aaf565b93909304949350505050565b5f8486146134e357838303428590038082035f6134b7838a615aaf565b6134c1838c615aaf565b6134cb91906159c7565b9050858487830304018115150294505050505061244a565b5092949350505050565b6312d3f5a35f526004601cfd5b8451608081015160208201515f92916004811060019091111633909114151615610f50575f8061353187848b608001518b8a613e2e565b9150915061354b836020015188848463fb5014fc8a614707565b935050505061244a565b63d5da9a1b5f526004601cfd5b61356a61505a565b83515f0361357b5761357b85614774565b5f85600181111561358e5761358e615329565b036135a45761359f86858385614785565b61244a565b61244a86858333876148f5565b84516060905f816001600160401b038111156135cf576135cf61574b565b6040519080825280602002602001820160405280156135f8578160200160208202803683370190505b506040805160208082528183019092529192505f9190602082018180368337505089519192505060010160051b60205b81811015613687575f61363e8b83613cce6104da565b8051606081015191925090801561367c57478111825115161561366857638ffff9805f526004601cfd5b61367c828460200151856040015189614327565b505050602001613628565b50505f5b838110156137f3575f8a82815181106136a6576136a6615792565b6020026020010151905080602001516001600160781b03165f036136ed575f8483815181106136d7576136d7615792565b91151560209283029190910190910152506137eb565b600184838151811061370157613701615792565b911515602092830291909101909101528051604081015180515f5b81811015613786575f83828151811061373757613737615792565b6020026020010151905080606001515f1461377357608081018051908e9052855161012087015161376d9184918c6143276104da565b60808201525b608081015160609091015260010161371c565b505050606081015180515f5b818110156137e5575f8382815181106137ad576137ad615792565b602002602001015190505f81606001519050805f146137d1576137d1888483614a2c565b5060a0810151606090910152600101613792565b50505050505b60010161368b565b506137fd816119c4565b47801561380e5761380e3382613294565b8515613884575f5b848110156138825783818151811061383057613830615792565b60200260200101511561387a5761387a8b828151811061385257613852615792565b60200260200101518a8b848151811061386d5761386d615792565b6020026020010151612d26565b600101613816565b505b61388c611a5e565b509098975050505050505050565b5f6138ad61016060408051918201905290565b9050611c048282612453565b808210156103dc576103dc614a45565b631a5155745f52806020526024601cfd5b63ee9e0e635f52806020526024601cfd5b6310fda3e15f52806020526024601cfd5b5f805f84516001811660410380820360051c9250808752806020018701915050805160e81c6003820191506001811660051b868152825160208218525060015b838110156139685760405f2082821c60051b60209081169182529384018051919094185260010161393c565b50505060405f2091505f61397b82614a52565b5f9081526020939093525050604090209392505050565b5f805f528151602083038051826041035f600182116139f557604087015160608801515f1a83156139d657601b8260ff1c0190506001600160ff1b03821660408a01525b88528a855260205f60808760015afa508385528588526040880152505f515b8a148a1515169450849050613abe57858552604082526044850380516040870351630b135d3f60e11b835289604089035260205f60648b01858f5afa96508615613ab257630b135d3f60e11b5f5114613ab2578b3b15613a5c57634f7fb80d5f526004601cfd5b6001866041031115613a7557638baa579f5f526004601cfd5b64010100000060608901515f1a1a15604187141615613aa557631f003d0a5f5260608801515f1a6020526024601cfd5b63815e1d645f526004601cfd5b8385529152603f198601525b5050508061180157613ace614056565b634f7fb80d5f526004601cfd5b613ae361505a565b8251158451151715613afc576398e9db6e5f526004601cfd5b613b0461505a565b613b118685835f806148f5565b805160608101515f03613b2657509050610622565b613b368787858460800151614785565b82516040828101519082015160208085015190840151855185511891181791181715613b6d5763bced929d5f52846020526024601cfd5b806060015182606001511115613bf4575f865f81518110613b9057613b90615792565b60200260200101519050816060015183606001510389825f015181518110613bba57613bba615792565b60200260200101515f015160600151826020015181518110613bde57613bde615792565b6020026020010151606001818152505050613c75565b5f875f81518110613c0757613c07615792565b60200260200101519050826060015182606001510389825f015181518110613c3157613c31615792565b60200260200101515f015160400151826020015181518110613c5557613c55615792565b602002602001015160600181815250508260600151826060018181525050505b505050949350505050565b428084111590831116818015613c94575080155b156104f1576104f18484614e61565b635a052b325f526004601cfd5b63a11b63ff5f526004601cfd5b63133c37c65f52806020526024601cfd5b5f6104f18284015190565b5f838381518110613cec57613cec615792565b602002602001015190505f815f01519050613d078160031090565b613d1357613d13614e76565b60408201518015613d3657613d318460600151828660800151614e83565b613d49565b60808401515115613d4957613d49614ecd565b6004821460030383816005811115613d6357613d63615329565b90816005811115613d7657613d76615329565b9052505050606090920151604090910152505050565b82515f5b81811015611801575f858281518110613dab57613dab615792565b60209081029190910101518051604082015191925090600382116004881415821515171615613de557855f5288602052836040526044601cfd5b505050806001019050613d90565b5f868803613e0d57613e0686868961345e565b90506107df565b6107dc613e1b87878b61345e565b613e2688888b61345e565b86868661349a565b5f805f613e39614eda565b6301e4d72a815260208082015260408101898152336060830152601c820194509091508751604082015287613e79613e7260a083015190565b60e0840152565b613e8f613e8760c083015190565b610100840152565b613ea5613e9d60e083015190565b610120840152565b610140613eb3816060850152565b5f613ebf604084015190565b90505f613ece82848701614ee4565b928301929050613edf836080870152565b5f613eeb606086015190565b90505f613efa82868901614f4a565b948501949050613f0b8560a0890152565b5f613f188e878a01614faf565b959095019450613f298560c0890152565b8685015f613f378e83614fce565b602497019687019a50613f539050613f4e8c8c0190565b614ffe565b8060408b901b60808b901b17178f610100018181525050613f7d8c82611b8090919063ffffffff16565b60058c8e51613f8c91906159b4565b613f97911b8b6159b4565b99505050505050505050509550959350505050565b5f8083613fb7614eda565b639891976581523360208201908152608060408301819052601c9092019450905f613fe3604085015190565b90505f613ff282848601614ee4565b928301929050614003836040860152565b5f61400f606087015190565b90505f61401e82868801614ee4565b94850194905061402f856060880152565b895f61403d82898901614faf565b9a9d96909a016004019b50949950505050505050505050565b3d1561409b57601f3d0160051c60405160051c8160030281831115614088578183036003028280028480020360091c01015b5a602082011015611a59573d5f803e3d5ffd5b565b63939792855f52806020526024601cfd5b60603d105f8080808080866141205760405f803e5f51935060205192503d60208501113d60208501118082179850505086614120576020845f3e5f51915060208360203e60205190508160071b60208501018160a0026020850101803d10823d101761ffff8486171117985050505f80525b86614152575f8061413584602088018d61415b565b9250975061414783602087018c61423b565b929092179850909550505b5050505061275d565b5f806040519150825160c08602602001830160405285835260208660010160051b8085018360010160051b8701614199858b81811090829003020190565b60010160051b8a861196505b808510156141f957828589015260808a843e6060830151955085608084015260608201518681116141d685856142e2565b17881797505060808a01995060a08301925060a0820191506020850194506141a5565b50505b8183101561422f578083870152608088823e6060810151608082015260808801975060a0810190506020830192506141fc565b50505050935093915050565b604051815180851190808603818710028101602060e08202850181016040528185526001928301600590811b87019390920190911b908185015b8282101561422f57808287015260a088823e60206060890160a083013e606081015160608501516142b26080840151608088015180159114171590565b818311176142c084886142e2565b60a09b909b019a179690961795505060c0938401936020929092019101614275565b5f81516040830151801560038311161561430457506040840151600119909101905b604085015181148551831460208701516020870151141616159250505092915050565b5f8451600581111561433b5761433b615329565b0361437857604084015160208501516001600160a01b0316171561436157614361613379565b61437384608001518560600151613294565b614416565b60018451600581111561438d5761438d615329565b036143be576040840151156143a4576143a4613379565b614373846020015184866080015187606001518686613386565b6002845160058111156143d3576143d3615329565b036143f7576143738460200151848660800151876040015188606001518787611889565b61441684602001518486608001518760400151886060015187876118d4565b50505050565b608082901c63ffffffff604084901c811690808516906144449084906317b1f94290611b8016565b601c830192506144548482614fce565b50509250929050565b5f80614467614eda565b63f4dd92ce815287841860a0820152601c8101925060200160a0808252875f614491604083015190565b90505f6144a082858701614ee4565b9384019390506144b1846020870152565b5f6144bd606085015190565b90505f6144cc82878901614f4a565b9586019590506144dd866040890152565b5f6144ea8d888a01614faf565b9687019690506144fb8760608a0152565b5f6145088d898b01614fce565b905080880197508760040199505050505050505050509550959350505050565b6339f3e3fd5f526004601cfd5b6301e4d72a6102043560051b6080019081525f808260208082015260408101858152336060830152601c919091019061456f608435610aeb565b61458061014460e083016060611b28565b61014061458e816060840152565b61459c60a082016080840152565b61016060a06102643581029290920101906145b8908290840152565b6145c25f82840152565b6020016145d08160c0840152565b5f9181019182526020820196909652939560449095019492505050565b63d13d53d45f52806020526024601cfd5b631cf99b265f5281602052806040526044601cfd5b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166146f85780873b1515166146f857806146e757816146ca573d156146a957601f3d0160051c8360051c8160030281831115614692578183036003028280028480020360091c01015b5a6020820110156146a5573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b5f805f6001600160e01b03198751165f805260205f888a5f8e5af15f5190935014905081614753578361473e575f925050506106d7565b614746614056565b845f52876020526024601cfd5b8061476557845f52876020526024601cfd5b50600198975050505050505050565b63375c24c15f52806020526024601cfd5b5f805f85865160051b87015b808210156148a2576020820191508851825151106147b1576147b16148d6565b81515160051b60208a01015180516020845101515f6040830151602085015115815184101517156147e6575050505050614791565b8260051b60208201015191505060608101935083518901915083511589831060011b17881797508198505f84528a51935086156001811461484f5760608220881860408d01516101208601511860208e015186511817171561484a5761484a6148d6565b614898565b8151855260208201516020860152604082015160408601528a6080860152835160208d015261012084015160408d015260608520975060208d0192508683181561489857865183525b5050505050614791565b5050508160608551015280156148cf57600181036148c7576391b3e5145f526004601cfd5b6148cf6148e3565b5050614416565b637fda72795f526004601cfd5b634e487b715f5260116020526024601cfd5b5f805f86875160051b88015b808210156149f7576020820191508151518a518110614922576149226148d6565b8060051b60208c01015190506020835101515f606083510151602084015115815184101517156149555750505050614901565b8260051b60208201015191505060608101925082518801915082511588831060011b17871796508197505f83528a5192508515600181146149a75760a0822087146149a2576149a26148d6565b6149ee565b815184526020820151602085015260408201516040850152608082015160808501528a60208d01528960408d015260a08220965060208d019250858318156149ee57855183525b50505050614901565b50508551606001839052508015614a255760018103614a1d576391b3e5145f526004601cfd5b614a256148e3565b50506128d6565b63a5f542085f528260205281604052806060526064601cfd5b63466aa6165f526004601cfd5b5f614e58565b5f6009821015614bb1576005821015614b0e576003821015614ac1577f832c58a5b611aadcfa6a082ac9d04bace53d8278387f10040347b7e98eb5b30260018314027fbf8e29b89f29ed9b529c154a63038ffca562f8d7cd1e2545dda53a1b582dde3018610402565b7ff3e8417a785f980bdaf134fa0274a6bf891eeb8195cd94b09d2aa651046e28bc60038314027fa02eb7ff164c884e5e2c336dc85f81c6a93329d8e9adf214b32729b894de2af118610402565b6007821015614b64577f25d02425402d882d211a7ab774c0ed6eca048c4d03d9af40132475744753b2a360058314027f1c19f71958cdd8f081b4c31f7caf5c010b29d12950be2fa1c95070dc47e30b5518610402565b7fb58d772fb09b426b9dece637f61ca9065f2b994f1464b51e9207f55f7c8f594860078314027f7ff98d9d4e55d876c5cfac10b43c04039522f3ddfb0ea9bfe70c68cfb5c7cc1418610402565b6011821015614d0957600d821015614c6657600b821015614c19577f6f0ec38c21f6f583ab7f3c5413c773ffd5344c34fde1d390958e438bf667448f60098314027fd1d97d1ef5eaa37a4ee5fbf234e6f6d64eb511eb562221cd7edfbdde0848da0518610402565b7f32f4e7485d6485f9f6c255929b9905c62ba919758bbe231f231eaeecf33d810c600b8314027fbb98d87cc12922b83759626c5f07d72266da9702d19ffad6a514c73a89002f5f18610402565b600f821015614cbc577f8df51df98847160517f5b1186b4bc3f418d98b8a7f17f1292f392d79d600d79e600d8314027f6b5b04cbae4fcb1a9d78e7b2dfc51a36933d023cf6e347e03d517b472a85259018610402565b7fcc4886e37eedd9aacd6c1c2c9247197a621a71282e87a7cbc673f3736d9aa141600f8314027f1da3eed3ecef6ebaa6e5023c057ec2c75150693fd0dac5c90f4a142f9879fde818610402565b6015821015614db5576013821015614d68577f2d7a3ed6dab270fdb8e054b2ad525f0ce2a8b89cc76c17f0965434740f673a5560118314027fc3939feff011e53ab8c35ca3370aad54c5df1fc2938cd62543174fa6e7d8587718610402565b7f54b3212a178782f104e0d514b41a9a5c4ca9c980bf6597c3cecbf280917e202a60138314027f5a4f867d3d458dabecad65f6201ceeaba0096df2d0c491cc32e6ea4e6435001718610402565b6017821015614e0b577fbb40bf8cea3a5a716e2b6eb08bbdac8ec159f82f380783db3c56904f15a43d0460158314027f3bd8cff538aba49a9c374c806d277181e9651624b3e31111bc0624574f8bca1d18610402565b7f403be09941a31d05cfc2f896505811353d45d38743288b016630cce39435476a60178314027f1d51df90cba8de7637ca3e8fe1e3511d1dc2f23487d05dbdecb781860c21ac1c18610402565b61040282614a58565b6321ccfeb75f5281602052806040526044601cfd5b6394eb6af65f526004601cfd5b5f835f5260205f2060208301835160051b81015b80821015614ebe57815180841160051b93845260209384185260405f209290910190614e97565b50508314905080614416576144165b6309bde3395f526004601cfd5b5f61041260405190565b5f825180835260208401602084018260051b82015b80831015614f375782518051835260208101516020840152604081015160408401526060810151606084015250602083019250608082019150614ef9565b5050508060071b60200191505092915050565b5f80614f54845190565b8084529050602084810190600583901b860181019085015b82821115614f9c575f614f7e84615008565b9050614f8c818360a0615011565b506020929092019160a001614f6c565b60a0840260200194505050505092915050565b5f63ffffffe0603f614fbf855190565b01169050610402838383615011565b5f80614fd8845190565b8084529050600581901b614ff3602086810190860183615011565b602001949350505050565b6103b06040829052565b5f610402825190565b8082828560045afa80153d151715614416575f80fd5b6040518060a0016040528061503a61509c565b81525f602082018190526040820152606080820181905260809091015290565b60408051610100810182525f606082018181526080830182905260a0830182905260c0830182905260e083018290528252602082018190529181019190915290565b6040518061016001604052805f6001600160a01b031681526020015f6001600160a01b0316815260200160608152602001606081526020015f60048111156150e6576150e6615329565b81525f6020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b5f60208284031215615125575f80fd5b81356001600160401b0381111561513a575f80fd5b820161024081850312156104f1575f80fd5b5f81518084525f5b8181101561517057602081850181015186830182015201615154565b505f602082860101526020601f19601f83011685010191505092915050565b602081525f6104f1602083018461514c565b5f602082840312156151b1575f80fd5b5035919050565b5f602082840312156151c8575f80fd5b81356001600160401b038111156151dd575f80fd5b820161016081850312156104f1575f80fd5b5f8083601f8401126151ff575f80fd5b5081356001600160401b03811115615215575f80fd5b6020830191508360208260051b850101111561522f575f80fd5b9250929050565b80356001600160a01b0381168114611c04575f80fd5b5f805f805f805f805f805f60e08c8e031215615266575f80fd5b6001600160401b03808d35111561527b575f80fd5b6152888e8e358f016151ef565b909c509a5060208d013581101561529d575f80fd5b6152ad8e60208f01358f016151ef565b909a50985060408d01358110156152c2575f80fd5b6152d28e60408f01358f016151ef565b909850965060608d01358110156152e7575f80fd5b506152f88d60608e01358e016151ef565b909550935060808c0135925061531060a08d01615236565b915060c08c013590509295989b509295989b9093969950565b634e487b7160e01b5f52602160045260245ffd5b60068110611b8057611b80615329565b61535882825161533d565b6020818101516001600160a01b0390811691840191909152604080830151908401526060808301519084015260809182015116910152565b5f815180845260208085019450602084015f5b838110156153e55781516153b888825161534d565b808401516001600160a01b031660a08901526040015160c088015260e090960195908201906001016153a3565b509495945050505050565b604080825283519082018190525f906020906060840190828701845b8281101561542a57815115158452928401929084019060010161540c565b50505083810360208501526106d78186615390565b5f8060208385031215615450575f80fd5b82356001600160401b03811115615465575f80fd5b615471858286016151ef565b90969095509350505050565b5f805f8060408587031215615490575f80fd5b84356001600160401b03808211156154a6575f80fd5b6154b2888389016151ef565b909650945060208701359150808211156154ca575f80fd5b506154d7878288016151ef565b95989497509550505050565b602081525f6104f16020830184615390565b5f60208284031215615505575f80fd5b6104f182615236565b5f806040838503121561551f575f80fd5b82356001600160401b03811115615534575f80fd5b830160408186031215615545575f80fd5b946020939093013593505050565b5f805f805f60808688031215615567575f80fd5b85356001600160401b038082111561557d575f80fd5b9087019060a0828a031215615590575f80fd5b909550602087013590808211156155a5575f80fd5b506155b2888289016151ef565b909550935050604086013591506155cb60608701615236565b90509295509295909350565b5f805f805f805f8060a0898b0312156155ee575f80fd5b88356001600160401b0380821115615604575f80fd5b6156108c838d016151ef565b909a50985060208b0135915080821115615628575f80fd5b6156348c838d016151ef565b909850965060408b013591508082111561564c575f80fd5b506156598b828c016151ef565b999c989b509699959896976060870135966080013595509350505050565b5f805f805f805f6080888a03121561568d575f80fd5b87356001600160401b03808211156156a3575f80fd5b6156af8b838c016151ef565b909950975060208a01359150808211156156c7575f80fd5b6156d38b838c016151ef565b909750955060408a01359150808211156156eb575f80fd5b506156f88a828b016151ef565b909450925061570b905060608901615236565b905092959891949750929550565b606081525f61572b606083018661514c565b6020830194909452506001600160a01b0391909116604090910152919050565b634e487b7160e01b5f52604160045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b5f8261578d57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f815180845260208085019450602084015f5b838110156153e55781516157ce88825161533d565b838101516001600160a01b03168885015260408082015190890152606080820151908901526080908101519088015260a090960195908201906001016157b9565b5f815180845260208085019450602084015f5b838110156153e557815161583788825161533d565b808401516001600160a01b0390811689860152604080830151908a0152606080830151908a0152608080830151908a015260a091820151169088015260c09096019590820190600101615822565b60058110611b8057611b80615329565b828152604060208201526158b56040820183516001600160a01b03169052565b5f60208301516158d060608401826001600160a01b03169052565b5060408301516101608060808501526158ed6101a08501836157a6565b91506060850151603f198584030160a086015261590a838261580f565b925050608085015161591f60c0860182615885565b5060a085015160e085015260c0850151610100818187015260e0870151915061012082818801528188015192506101409150828288015280880151848801525080870151610180870152505050809150509392505050565b5f823561015e1983360301811261598c575f80fd5b9190910192915050565b5f602082840312156159a6575f80fd5b8135600581106104f1575f80fd5b818103818111156104025761040261575f565b808201808211156104025761040261575f565b5f815180845260208085019450602084015f5b838110156153e557615a0087835161534d565b60a09690960195908201906001016159ed565b5f6080808301878452602060018060a01b03808916602087015260406080604088015283895180865260a08901915060208b0195505f5b81811015615a8b578651615a5f84825161533d565b808701518616848801528481015185850152606090810151908401529585019591870191600101615a4a565b50508781036060890152615a9f818a6159da565b9c9b505050505050505050505050565b80820281158282048414176104025761040261575f56fea164736f6c6343000818000a","storage":{}},"0x6265cc8d1b28edfd4d76c80bf774c0d446fffbde":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610090575f3560e01c80633f15457f116100635780633f15457f1461010f5780637adbf973146101225780637dc0d1d0146101355780638bbedf7514610147578063be27b22c1461015a575f80fd5b806301ffc9a7146100945780631ecfc411146100bc578063224199c2146100d157806330349ebe146100e4575b5f80fd5b6100a76100a23660046115b1565b61016d565b60405190151581526020015b60405180910390f35b6100cf6100ca3660046115ef565b6101a3565b005b6100cf6100df3660046117e0565b6102de565b6002546100f7906001600160a01b031681565b6040516001600160a01b0390911681526020016100b3565b6001546100f7906001600160a01b031681565b6100cf6101303660046115ef565b61063c565b5f546100f7906001600160a01b031681565b6100cf610155366004611889565b61076d565b6100cf61016836600461190b565b6107f1565b5f6001600160e01b031982166301ffc9a760e01b148061019d57506001600160e01b031982166317d8f49b60e01b145b92915050565b6001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa1580156101ea573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061020e919061196b565b90505f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561024d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610271919061196b565b9050336001600160a01b03821614610287575f80fd5b600280546001600160a01b0319166001600160a01b0385169081179091556040519081527f9176b7f47e4504df5e5516c99d90d82ac7cbd49cc77e7f22ba2ac2f2e3a3eba8906020015b60405180910390a1505050565b5f546040516321ae60b160e11b81526001600160a01b039091169063435cc1629061030f90879087906004016119d3565b5f604051808303815f875af115801561032a573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526103519190810190611a6b565b92505f805f610360888761088b565b91945092509050336001600160a01b038216146103da5760405162461bcd60e51b815260206004820152602d60248201527f4f6e6c79206f776e65722063616e2063616c6c2070726f7665416e64436c616960448201526c36abb4ba342932b9b7b63b32b960991b60648201526084015b60405180910390fd5b6001600160a01b038416156105bb576001600160a01b03851661044e5760405162461bcd60e51b815260206004820152602660248201527f43616e6e6f74207365742061646472206966207265736f6c766572206973206e6044820152651bdd081cd95d60d21b60648201526084016103d1565b6001546040516305ef2c7f60e41b815260048101859052602481018490523060448201526001600160a01b0387811660648301525f608483015290911690635ef2c7f09060a4015f604051808303815f87803b1580156104ac575f80fd5b505af11580156104be573d5f803e3d5ffd5b505050505f83836040516020016104df929190918252602082015260400190565b60408051808303601f1901815290829052805160209091012062d5fa2b60e81b8252600482018190526001600160a01b03878116602484015290925087169063d5fa2b00906044015f604051808303815f87803b15801561053e575f80fd5b505af1158015610550573d5f803e3d5ffd5b5050600154604051635b0fc9c360e01b8152600481018590526001600160a01b0386811660248301529091169250635b0fc9c391506044015f604051808303815f87803b15801561059f575f80fd5b505af11580156105b1573d5f803e3d5ffd5b5050505050610632565b6001546040516305ef2c7f60e41b815260048101859052602481018490526001600160a01b03838116604483015287811660648301525f608483015290911690635ef2c7f09060a4015f604051808303815f87803b15801561061b575f80fd5b505af115801561062d573d5f803e3d5ffd5b505050505b5050505050505050565b6001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa158015610683573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106a7919061196b565b90505f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106e6573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061070a919061196b565b9050336001600160a01b03821614610720575f80fd5b5f80546001600160a01b0319166001600160a01b0385169081179091556040519081527fb3eacd0e351fafdfefdec84e1cd19679b38dbcd63ea7c2c24da17fd2bc3b3c0e906020016102d1565b5f546040516321ae60b160e11b81526001600160a01b039091169063435cc1629061079e90859085906004016119d3565b5f604051808303815f875af11580156107b9573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526107e09190810190611a6b565b90506107ec83826107f1565b505050565b5f805f6107fe858561088b565b6001546040516306ab592360e01b815260048101859052602481018490526001600160a01b03808416604483015294975092955090935091909116906306ab5923906064016020604051808303815f875af115801561085f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108839190611add565b505050505050565b5f8080806108998682610a40565b60ff1690506108aa86600183610a63565b92505f6108dc6108bb836001611b08565b6001848a516108ca9190611b1b565b6108d49190611b1b565b899190610a85565b6002546040516327c482cf60e11b81529192506001600160a01b031690634f89059e9061090d908490600401611b2e565b602060405180830381865afa158015610928573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061094c9190611b40565b6109a45760405162461bcd60e51b815260206004820152602360248201527f506172656e74206e616d65206d7573742062652061207075626c6963207375666044820152620ccd2f60eb1b60648201526084016103d1565b6109ae815f610b05565b5f549095506109c7906001600160a01b03168888610de3565b5060408051602081018890529081018690529093506001600160a01b03841690606001604051602081830303815290604052805190602001207fa2e66ce20e6fb2c4f61339c364ad79f15160cf5307230c8bc4d628adbca2ba3989604051610a2f9190611b2e565b60405180910390a350509250925092565b5f828281518110610a5357610a53611b5f565b016020015160f81c905092915050565b82515f90610a718385611b08565b1115610a7b575f80fd5b5091016020012090565b8251606090610a948385611b08565b1115610a9e575f80fd5b5f8267ffffffffffffffff811115610ab857610ab861160a565b6040519080825280601f01601f191660200182016040528015610ae2576020820181803683370190505b50905060208082019086860101610afa82828761100b565b509095945050505050565b5f80610b118484610a40565b60ff169050805f03610b2657505f905061019d565b5f610b4585610b358487611b08565b610b40906001611b08565b610b05565b90505f610b5e610b56866001611b08565b879085610a63565b604080516020810185905290810182905290915060600160408051808303601f190181529082905280516020909101206001546302571be360e01b8352600483018290529095505f916001600160a01b03909116906302571be390602401602060405180830381865afa158015610bd7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bfb919061196b565b90506001600160a01b0381161580610c1b57506001600160a01b03811630145b610c7a5760405162461bcd60e51b815260206004820152602a60248201527f43616e6e6f7420656e61626c652061206e616d65206f776e656420627920736f6044820152696d656f6e6520656c736560b01b60648201526084016103d1565b6001600160a01b0381163014610dd95782610d5e576001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa158015610cd6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cfa919061196b565b60405163232e3b3b60e21b8152600481018590523060248201529091506001600160a01b03821690638cb8ecec906044015f604051808303815f87803b158015610d42575f80fd5b505af1158015610d54573d5f803e3d5ffd5b5050505050610dd9565b6001546040516306ab592360e01b815260048101859052602481018490523060448201526001600160a01b03909116906306ab5923906064016020604051808303815f875af1158015610db3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610dd79190611add565b505b5050505092915050565b5f80610e016040518060400160405280606081526020015f81525090565b610e1985516005610e129190611b08565b8290611060565b50604080518082019091526005815264045f656e7360d81b6020820152610e419082906110c3565b50610e4c81866110c3565b50805160405163021e646f60e21b81525f9182916001600160a01b038a169163087991bc91610e8091601091600401611b73565b606060405180830381865afa158015610e9b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ebf9190611ba7565b93509150506bffffffffffffffffffffffff198216158015610ee057508551155b15610ef3575f8094509450505050611003565b855160208701206bffffffffffffffffffffffff19838116911614610f16575f80fd5b5f610f2187826110ef565b90505b80515160208201511015610ff857610f4b816080015183610f459190611bfc565b4261114a565b610fbd5760405162461bcd60e51b815260206004820152603c60248201527f444e53207265636f7264206973207374616c653b2072656672657368206f722060448201527f64656c657465206974206265666f72652070726f63656564696e672e0000000060648201526084016103d1565b5f80610fcd898460a00151611162565b925090508115610fe857965060019550611003945050505050565b5050610ff3816111d1565b610f24565b505f80945094505050505b935093915050565b602081106110435781518352611022602084611b08565b925061102f602083611b08565b915061103c602082611b1b565b905061100b565b905182516020929092036101000a5f190180199091169116179052565b60408051808201909152606081525f602082015261107f602083611c20565b156110a75761108f602083611c20565b61109a906020611b1b565b6110a49083611b08565b91505b506020828101829052604080518085525f815290920101905290565b60408051808201909152606081525f60208201526110e883845f0151518485516112b6565b9392505050565b6111376040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261019d816111d1565b5f806111568385611c3f565b60030b12159392505050565b5f805b83518310156111c4575f6111798585610a40565b60ff169050611189600185611b08565b93505f8061119887878561139c565b9250905081156111b0579350600192506111ca915050565b6111ba8387611b08565b9550505050611165565b505f9050805b9250929050565b60c081015160208201819052815151116111e85750565b5f6111fa825f015183602001516113f5565b82602001516112099190611b08565b82519091506112189082611454565b61ffff16604083015261122c600282611b08565b825190915061123b9082611454565b61ffff16606083015261124f600282611b08565b825190915061125e908261147a565b63ffffffff166080830152611274600482611b08565b82519091505f906112859083611454565b61ffff169050611296600283611b08565b60a0840181905291506112a98183611b08565b60c0909301929092525050565b60408051808201909152606081525f602082015282518211156112d7575f80fd5b60208501516112e68386611b08565b11156113195761131985611309876020015187866113049190611b08565b6114a2565b611314906002611c66565b6114b8565b5f808651805187602083010193508088870111156113375787860182525b505050602084015b602084106113775780518252611356602083611b08565b9150611363602082611b08565b9050611370602085611b1b565b935061133f565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b5f806113a8858561147a565b63ffffffff1663613d3078146113c257505f905080611003565b602c8310156113d557505f905080611003565b6113e9856113e4866004611b08565b6114d5565b91509150935093915050565b5f815b8351811061140857611408611c7d565b5f6114138583610a40565b60ff169050611423816001611b08565b61142d9083611b08565b9150805f0361143c5750611442565b506113f8565b61144c8382611b1b565b949350505050565b81515f90611463836002611b08565b111561146d575f80fd5b50016002015161ffff1690565b81515f90611489836004611b08565b1115611493575f80fd5b50016004015163ffffffff1690565b5f818311156114b257508161019d565b50919050565b81516114c48383611060565b506114cf83826110c3565b50505050565b5f8060288385516114e69190611b1b565b10156114f657505f9050806111ca565b5f835b611504856028611b08565b8110156115a55760049190911b905f61151d8783610a40565b60ff169050603081101580156115335750603a81105b1561154c57611543603082611b1b565b8317925061159c565b6041811015801561155d5750604781105b1561156d57611543603782611b1b565b6061811015801561157e5750606781105b1561158e57611543605782611b1b565b5f80945094505050506111ca565b506001016114f9565b50946001945092505050565b5f602082840312156115c1575f80fd5b81356001600160e01b0319811681146110e8575f80fd5b6001600160a01b03811681146115ec575f80fd5b50565b5f602082840312156115ff575f80fd5b81356110e8816115d8565b634e487b7160e01b5f52604160045260245ffd5b6040805190810167ffffffffffffffff811182821017156116415761164161160a565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156116705761167061160a565b604052919050565b5f67ffffffffffffffff8211156116915761169161160a565b50601f01601f191660200190565b5f82601f8301126116ae575f80fd5b81356116c16116bc82611678565b611647565b8181528460208386010111156116d5575f80fd5b816020850160208301375f918101602001919091529392505050565b5f82601f830112611700575f80fd5b8135602067ffffffffffffffff8083111561171d5761171d61160a565b8260051b61172c838201611647565b9384528581018301938381019088861115611745575f80fd5b84880192505b858310156117d457823584811115611761575f80fd5b88016040818b03601f1901811315611777575f80fd5b61177f61161e565b878301358781111561178f575f80fd5b61179d8d8a8387010161169f565b8252509082013590868211156117b1575f80fd5b6117bf8c898486010161169f565b8189015284525050918401919084019061174b565b98975050505050505050565b5f805f805f60a086880312156117f4575f80fd5b853567ffffffffffffffff8082111561180b575f80fd5b61181789838a0161169f565b9650602088013591508082111561182c575f80fd5b61183889838a016116f1565b9550604088013591508082111561184d575f80fd5b5061185a8882890161169f565b935050606086013561186b816115d8565b9150608086013561187b816115d8565b809150509295509295909350565b5f805f6060848603121561189b575f80fd5b833567ffffffffffffffff808211156118b2575f80fd5b6118be8783880161169f565b945060208601359150808211156118d3575f80fd5b6118df878388016116f1565b935060408601359150808211156118f4575f80fd5b506119018682870161169f565b9150509250925092565b5f806040838503121561191c575f80fd5b823567ffffffffffffffff80821115611933575f80fd5b61193f8683870161169f565b93506020850135915080821115611954575f80fd5b506119618582860161169f565b9150509250929050565b5f6020828403121561197b575f80fd5b81516110e8816115d8565b5f5b838110156119a0578181015183820152602001611988565b50505f910152565b5f81518084526119bf816020860160208601611986565b601f01601f19169290920160200192915050565b5f60408083016040845280865180835260608601915060608160051b870101925060208089015f5b83811015611a4b57888603605f1901855281518051888852611a1f898901826119a8565b9185015188830389870152919050611a3781836119a8565b9750505093820193908201906001016119fb565b505086840381880152505050611a6181866119a8565b9695505050505050565b5f60208284031215611a7b575f80fd5b815167ffffffffffffffff811115611a91575f80fd5b8201601f81018413611aa1575f80fd5b8051611aaf6116bc82611678565b818152856020838501011115611ac3575f80fd5b611ad4826020830160208601611986565b95945050505050565b5f60208284031215611aed575f80fd5b5051919050565b634e487b7160e01b5f52601160045260245ffd5b8082018082111561019d5761019d611af4565b8181038181111561019d5761019d611af4565b602081525f6110e860208301846119a8565b5f60208284031215611b50575f80fd5b815180151581146110e8575f80fd5b634e487b7160e01b5f52603260045260245ffd5b61ffff83168152604060208201525f61144c60408301846119a8565b805163ffffffff81168114611ba2575f80fd5b919050565b5f805f60608486031215611bb9575f80fd5b611bc284611b8f565b9250611bd060208501611b8f565b915060408401516bffffffffffffffffffffffff1981168114611bf1575f80fd5b809150509250925092565b63ffffffff818116838216019080821115611c1957611c19611af4565b5092915050565b5f82611c3a57634e487b7160e01b5f52601260045260245ffd5b500690565b600382810b9082900b03637fffffff198112637fffffff8213171561019d5761019d611af4565b808202811582820484141761019d5761019d611af4565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{"0x0":"0x9b2565a3545a1312bdcb6e7148a7f7cae8c2706b","0x1":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0x2":"0x287dee389caaa49edc112888f2bcfd927b472e25"}},"0x62b11ad5f582a5c5d378fb310125b030042554f1":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106103af5760003560e01c80637e37479e116101f4578063ba5d40b71161011a578063e985e9c5116100ad578063f5c1f76e1161007c578063f5c1f76e146108d8578063f7df5c60146108eb578063f8c8765e146108fe578063ffa1ad741461091157600080fd5b8063e985e9c51461087a578063ebf0c717146108b6578063ec129eea146108bd578063f25eb5c1146108d057600080fd5b8063c87b56dd116100e9578063c87b56dd1461082e578063ce92b33e14610841578063cf2c52cb14610854578063d9548e531461086757600080fd5b8063ba5d40b7146107b3578063baef73e9146107c6578063bb5b27e114610808578063bebec6b41461081b57600080fd5b8063a22cb46511610192578063ac9650d811610161578063ac9650d81461074c578063b3f9e4cb1461076c578063b85afd281461077f578063b88d4fde146107a057600080fd5b8063a22cb465146106e7578063a3f4df7e146106fa578063a424740014610726578063ab3b87fe1461073957600080fd5b80639508b1c4116101ce5780639508b1c4146106b15780639559c0bd146106c457806395d89b41146106cc57806399e0dd7c146106d457600080fd5b80637e37479e146106785780637eee288d1461068b57806394d008ef1461069e57600080fd5b806342842e0e116102d95780635096023911610277578063663f7b2a11610246578063663f7b2a14610610578063672b9f81146106235780636ccbae5f1461064457806370a082311461066557600080fd5b806350960239146105bb578063572b6c05146105ce5780636352211e146105ea578063638e5c78146105fd57600080fd5b806347c81699116102b357806347c816991461056f5780634a72584d146105825780634f558e791461059557806350382c1a146105a857600080fd5b806342842e0e1461053657806342966c6814610549578063430c20811461055c57600080fd5b80631bf7e13e1161035157806327f189751161032057806327f18975146104ea578063310bd74b146104fd5780633f72ec6e1461051057806340c10f191461052357600080fd5b80631bf7e13e146104905780631f71be06146104a357806323b872dd146104b6578063276fabb1146104c957600080fd5b8063095ea7b31161038d578063095ea7b31461041c578063150b7a02146104315780631bd8cc1a1461045d5780631be5e7ed1461047d57600080fd5b806301ffc9a7146103b457806306fdde03146103dc578063081812fc146103f1575b600080fd5b6103c76103c2366004613f0b565b610935565b60405190151581526020015b60405180910390f35b6103e4610946565b6040516103d39190613f78565b6104046103ff366004613f8b565b6109d8565b6040516001600160a01b0390911681526020016103d3565b61042f61042a366004613fb9565b6109ff565b005b61044461043f366004614026565b610a18565b6040516001600160e01b031990911681526020016103d3565b61047061046b3660046140dc565b610b72565b6040516103d3919061417f565b6103e461048b366004614192565b610c68565b6103e461049e3660046141c9565b610cb3565b61042f6104b1366004614249565b610dbe565b61042f6104c4366004614305565b610e54565b6104dc6104d7366004614346565b610ea7565b6040519081526020016103d3565b61042f6104f8366004614387565b610eb6565b61042f61050b366004613f8b565b610efe565b61042f61051e3660046143fa565b610f39565b61042f610531366004613fb9565b61103b565b61042f610544366004614305565b611088565b61042f610557366004613f8b565b6110a3565b6103c761056a366004613fb9565b6110e7565b61042f61057d366004614424565b6110f3565b61042f610590366004614485565b611132565b6103c76105a3366004613f8b565b611178565b61042f6105b636600461458c565b611197565b61042f6105c93660046145c0565b6111cd565b6103c76105dc3660046145c0565b6001600160a01b0316301490565b6104046105f8366004613f8b565b61122d565b61042f61060b366004613f8b565b61124a565b61042f61061e366004614678565b611295565b6106366106313660046146c0565b611336565b6040516103d39291906146e2565b6104dc610652366004613f8b565b6000908152610100602052604090205490565b6104dc6106733660046145c0565b61134e565b6104dc6106863660046145c0565b6113d4565b61042f610699366004613fb9565b611405565b61042f6106ac366004614707565b61145c565b61042f6106bf366004614762565b6114ab565b6104dc601481565b6103e4611532565b61042f6106e2366004614805565b611541565b61042f6106f536600461483a565b6115c8565b6103e46040518060400160405280600d81526020016c554e533a20526567697374727960981b81525081565b6103c76107343660046141c9565b6115da565b61042f610747366004613fb9565b611625565b61075f61075a366004614346565b61166a565b6040516103d39190614866565b61040461077a366004613f8b565b611746565b61079261078d3660046140dc565b611770565b6040516103d39291906148c8565b61042f6107ae3660046148ed565b611892565b61042f6107c1366004614249565b6118d9565b6107f06107d4366004613f8b565b600090815261013960205260409020546001600160401b031690565b6040516001600160401b0390911681526020016103d3565b6103e4610816366004613f8b565b611962565b6103e46108293660046145c0565b611a04565b6103e461083c366004613f8b565b611ace565b61042f61084f366004614387565b611b34565b61042f610862366004614958565b611b73565b6103c7610875366004613f8b565b611c42565b6103c761088836600461499f565b6001600160a01b039182166000908152606a6020908152604080832093909416825291909152205460ff1690565b60006104dc565b61042f6108cb366004614387565b611c85565b61042f611cc4565b6104706108e6366004614346565b611d4b565b61042f6108f93660046149d8565b611dfe565b61042f61090c366004614a0a565b611e8f565b6103e460405180604001604052806005815260200164302e392e3160d81b81525081565b600061094082612065565b92915050565b60606065805461095590614a66565b80601f016020809104026020016040519081016040528092919081815260200182805461098190614a66565b80156109ce5780601f106109a3576101008083540402835291602001916109ce565b820191906000526020600020905b8154815290600101906020018083116109b157829003601f168201915b5050505050905090565b60006109e3826120b5565b506000908152606960205260409020546001600160a01b031690565b80610a0981612114565b610a13838361217a565b505050565b60007f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378546001600160a01b0316610a4d61229c565b6001600160a01b031603610b0e57610a6361229c565b6001600160a01b03166342966c68856040518263ffffffff1660e01b8152600401610a9091815260200190565b600060405180830381600087803b158015610aaa57600080fd5b505af1158015610abe573d6000803e3d6000fd5b505050821580159150610ad85750610ad882840184614a9a565b15610af657610ae730856122ab565b610af185856123f9565b610b00565b610b0085856122ab565b50630a85bd0160e11b610b69565b60405162461bcd60e51b815260206004820152602560248201527f52656769737472793a204552433732315f524543454956494e475f50524f4849604482015264109255115160da1b60648201526084015b60405180910390fd5b95945050505050565b6060826001600160401b03811115610b8c57610b8c6144d7565b604051908082528060200260200182016040528015610bbf57816020015b6060815260200190600190039081610baa5790505b50905060005b83811015610c6057610c30858583818110610be257610be2614ab5565b9050602002810190610bf49190614acb565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508792506124a4915050565b828281518110610c4257610c42614ab5565b60200260200101819052508080610c5890614b27565b915050610bc5565b509392505050565b6060610cab84848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508692506124a4915050565b949350505050565b606060005a9050610cc58585856115da565b610d215760405162461bcd60e51b815260206004820152602760248201527f554e535265676973747279466f727761726465723a205349474e41545552455f6044820152661253959053125160ca1b6064820152608401610b60565b610db3610d3160208701876145c0565b30604088013584610d4560608b018b614acb565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284376000920191909152506124d992505050565b9150505b9392505050565b610134546001600160a01b0316610dd361229c565b6001600160a01b031614610df95760405162461bcd60e51b8152600401610b6090614b40565b6000610e0d610e08888a614b87565b6125ba565b509050610e1a8982611405565b610e278686868685612612565b8115610e4957610e498982610e44610e3f8b8d614b87565b612680565b612701565b505050505050505050565b80610e66610e6061229c565b82612743565b610e825760405162461bcd60e51b8152600401610b6090614b94565b81610e8c81612114565b610e95836127d4565b610ea0858585612841565b5050505050565b6000610c60610e088385614b87565b80610ec2610e6061229c565b610ede5760405162461bcd60e51b8152600401610b6090614b94565b81610ee881612114565b610ef587878787876129e8565b50505050505050565b80610f0a610e6061229c565b610f265760405162461bcd60e51b8152600401610b6090614b94565b81610f3081612114565b610a13836127d4565b610134546001600160a01b0316610f4e61229c565b6001600160a01b031614610f745760405162461bcd60e51b8152600401610b6090614b40565b610f7d816120b5565b42826001600160401b031611610fd55760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a204558504952595f494e5f5041535400000000000000006044820152606401610b60565b60008181526101396020908152604091829020805467ffffffffffffffff19166001600160401b038616908117909155915191825282917f93feabb03ab84f47fc85bf0c298103fca21d8c8bc376eae0c1e1c56b9d4f7789910160405180910390a25050565b611043612a4b565b6001600160a01b031661105461229c565b6001600160a01b03161461107a5760405162461bcd60e51b8152600401610b6090614bdd565b61108482826122ab565b5050565b610a1383838360405180602001604052806000815250611892565b806110af610e6061229c565b6110cb5760405162461bcd60e51b8152600401610b6090614b94565b816110d581612114565b6110de836127d4565b610a1383612b4c565b6000610db78383612743565b806110ff610e6061229c565b61111b5760405162461bcd60e51b8152600401610b6090614b94565b8161112581612114565b610ef58787878787612bf3565b8061113e610e6061229c565b61115a5760405162461bcd60e51b8152600401610b6090614b94565b8161116481612114565b61117086868686612cd2565b505050505050565b6000818152606760205260408120546001600160a01b03161515610940565b6111ca816040516020016111ab9190614c1f565b6040516020818303038152906040528051906020012060001c82612d72565b50565b610134546001600160a01b03166111e261229c565b6001600160a01b0316146112085760405162461bcd60e51b8152600401610b6090614b40565b6001600160a01b0316600090815261013660205260409020805460ff19166001179055565b600061123882611c42565b6112455761094082612d97565b919050565b80611256610e6061229c565b6112725760405162461bcd60e51b8152600401610b6090614b94565b61128461127d61229c565b3084612841565b61108461128f61229c565b836123f9565b60006112a0826125ba565b5090506112ab61229c565b6001600160a01b03166112bd8261122d565b6001600160a01b0316146113135760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b60565b61131c81612114565b61108461132761229c565b8261133185612680565b612df7565b6060806113438484612e7e565b909590945092505050565b60006001600160a01b0382166113b85760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b6064820152608401610b60565b506001600160a01b031660009081526068602052604090205490565b6001600160a01b038116600090815261013560205260408120546113f781612e9f565b6113ff578091505b50919050565b610134546001600160a01b031661141a61229c565b6001600160a01b0316146114405760405162461bcd60e51b8152600401610b6090614b40565b611449816127d4565b61108461145582612d97565b8383612841565b611464612a4b565b6001600160a01b031661147561229c565b6001600160a01b03161461149b5760405162461bcd60e51b8152600401610b6090614bdd565b6114a584846122ab565b50505050565b6114b58787612ee9565b6114bd61229c565b6001600160a01b03166114cf8661122d565b6001600160a01b0316146115255760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b60565b610ef58484848489612612565b60606066805461095590614a66565b610134546001600160a01b031661155661229c565b6001600160a01b03161461157c5760405162461bcd60e51b8152600401610b6090614b40565b61013361158a828483614c81565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b82826040516115bc929190614d69565b60405180910390a15050565b6110846115d361229c565b8383612f58565b6000610cab6115e885614d7d565b3085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061302692505050565b80611631610e6061229c565b61164d5760405162461bcd60e51b8152600401610b6090614b94565b8161165781612114565b6114a561166384612d97565b8585612841565b606060006116788385614e07565b905030330361173d5760005b8381101561173b5761170b61169761229c565b61169f61316f565b8787858181106116b1576116b1614ab5565b90506020028101906116c39190614acb565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250613183915050565b82828151811061171d5761171d614ab5565b6020026020010181905250808061173390614b27565b915050611684565b505b610cab816131b3565b6000818152606760205260408120546001600160a01b0316611769576000610940565b3092915050565b606080836001600160401b0381111561178b5761178b6144d7565b6040519080825280602002602001820160405280156117be57816020015b60608152602001906001900390816117a95790505b509150836001600160401b038111156117d9576117d96144d7565b60405190808252806020026020018201604052801561180c57816020015b60608152602001906001900390816117f75790505b50905060005b848110156118895761183c86868381811061182f5761182f614ab5565b9050602002013585612e7e565b84838151811061184e5761184e614ab5565b6020026020010184848151811061186757611867614ab5565b602002602001018290528290525050808061188190614b27565b915050611812565b50935093915050565b8161189e610e6061229c565b6118ba5760405162461bcd60e51b8152600401610b6090614b94565b826118c481612114565b6118cd846127d4565b611170868686866132de565b610134546001600160a01b03166118ee61229c565b6001600160a01b0316146119145760405162461bcd60e51b8152600401610b6090614b40565b600080611924610e08898b614b87565b9150915061193181613311565b6119498a83611943610e3f8c8e614b87565b86613371565b6119568787878786612612565b50505050505050505050565b600081815260c96020526040902080546060919061197f90614a66565b80601f01602080910402602001604051908101604052809291908181526020018280546119ab90614a66565b80156119f85780601f106119cd576101008083540402835291602001916119f8565b820191906000526020600020905b8154815290600101906020018083116119db57829003601f168201915b50505050509050919050565b6001600160a01b03811660009081526101356020526040902054606090611a2a81612e9f565b6113ff576000818152610138602052604090208054611a4890614a66565b80601f0160208091040260200160405190810160405280929190818152602001828054611a7490614a66565b8015611ac15780601f10611a9657610100808354040283529160200191611ac1565b820191906000526020600020905b815481529060010190602001808311611aa457829003601f168201915b5050505050915050919050565b6060611ad9826120b5565b6000611ae36133c4565b90506000815111611b035760405180602001604052806000815250610db7565b80611b0d846133d4565b604051602001611b1e929190614e7a565b6040516020818303038152906040529392505050565b80611b40610e6061229c565b611b5c5760405162461bcd60e51b8152600401610b6090614b94565b81611b6681612114565b610ef58787878787612612565b7f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87546001600160a01b0316611ba661229c565b6001600160a01b031614611bcc5760405162461bcd60e51b8152600401610b6090614bdd565b6020819003611bef576000611be382840184613f8b565b90506114a584826122ab565b6000611bfd82840184614ea9565b805190915060005b8181101561117057611c3086848381518110611c2357611c23614ab5565b60200260200101516122ab565b80611c3a81614b27565b915050611c05565b600081815261013960205260408120546001600160401b03161580159061094057505060009081526101396020526040902054426001600160401b039091161090565b80611c91610e6061229c565b611cad5760405162461bcd60e51b8152600401610b6090614b94565b81611cb781612114565b610ef587878787876134d4565b6000611cce61229c565b6001600160a01b0381166000908152610135602052604081205491925003611d425760405162461bcd60e51b815260206004820152602160248201527f52656769737472793a20524556455253455f5245434f52445f49535f454d50546044820152605960f81b6064820152608401610b60565b6111ca816134ea565b6060816001600160401b03811115611d6557611d656144d7565b604051908082528060200260200182016040528015611d9857816020015b6060815260200190600190039081611d835790505b50905060005b82811015611df757611dc7848483818110611dbb57611dbb614ab5565b90506020020135611962565b828281518110611dd957611dd9614ab5565b60200260200101819052508080611def90614b27565b915050611d9e565b5092915050565b610134546001600160a01b0316611e1361229c565b6001600160a01b031614611e395760405162461bcd60e51b8152600401610b6090614b40565b61013454611e50906001600160a01b0316846122ab565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c39528383604051611e82929190614d69565b60405180910390a2505050565b600054610100900460ff1615808015611eaf5750600054600160ff909116105b80611ec95750303b158015611ec9575060005460ff166001145b611f2c5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610b60565b6000805460ff191660011790558015611f4f576000805461ff0019166101001790555b61013480546001600160a01b0319166001600160a01b038716179055837f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec9237880546001600160a01b0319166001600160a01b03929092169190911790556040805180820182526013815272556e73746f707061626c6520446f6d61696e7360681b60208083019190915282518084019093526002835261155160f21b90830152611ff79161352f565b611fff61356f565b61200761356f565b61201083613598565b612019826135c8565b8015610ea0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b60006001600160e01b031982166380ac58cd60e01b148061209657506001600160e01b03198216635b5e139f60e01b145b8061094057506301ffc9a760e01b6001600160e01b0319831614610940565b6000818152606760205260409020546001600160a01b03166111ca5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b60565b3033036121715761212361316f565b81146111ca5760405162461bcd60e51b815260206004820152601760248201527f52656769737472793a20544f4b454e5f494e56414c49440000000000000000006044820152606401610b60565b6111ca816135f8565b600061218582612d97565b9050806001600160a01b0316836001600160a01b0316036121f25760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b6064820152608401610b60565b806001600160a01b031661220461229c565b6001600160a01b0316148061222057506122208161088861229c565b6122925760405162461bcd60e51b815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c00006064820152608401610b60565b610a138383613626565b60006122a6613694565b905090565b6001600160a01b0382166123015760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610b60565b6000818152606760205260409020546001600160a01b0316156123665760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610b60565b612372600083836136af565b6001600160a01b038216600090815260686020526040812080546001929061239b908490614f39565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b03861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b6000612403612a4b565b905061240f8183613626565b60008051602061529383398151915254604080516020808201869052825180830390910181528183019283905263e3dec8fb60e01b9092526001600160a01b0390921691829163e3dec8fb9161246c918891309190604401614f4c565b600060405180830381600087803b15801561248657600080fd5b505af115801561249a573d6000803e3d6000fd5b5050505050505050565b6060610db7836040516020016124ba9190614c1f565b6040516020818303038152906040528051906020012060001c8361378b565b60606124e4856135f8565b600080876001600160a01b0316866124fe8b8a8989613183565b60405161250b9190614c1f565b60006040518083038160008787f1925050503d8060008114612549576040519150601f19603f3d011682016040523d82523d6000602084013e61254e565b606091505b50909250905061255f603f87614f8e565b5a1161256d5761256d614fa2565b6125ad82826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061386d565b9998505050505050505050565b805160009081905b801561260c578291506125f882856125db600185614fb8565b815181106125eb576125eb614ab5565b60200260200101516138a6565b92508061260481614fcb565b9150506125c2565b50915091565b60005b848110156111705761266e86868381811061263257612632614ab5565b90506020028101906126449190614acb565b86868581811061265657612656614ab5565b90506020028101906126689190614acb565b86612bf3565b8061267881614b27565b915050612615565b606060008260008151811061269757612697614ab5565b602002602001015190506000600190505b8351811015611df757818482815181106126c4576126c4614ab5565b60200260200101516040516020016126dd929190614fe2565b604051602081830303815290604052915080806126f990614b27565b9150506126a8565b61dead6001600160a01b0384161480159061273357506001600160a01b03831660009081526101356020526040902054155b15610a1357610a13838383612df7565b60008061274f8361122d565b90506001600160a01b03811615801590610cab5750806001600160a01b0316846001600160a01b031614806127a957506001600160a01b038082166000908152606a602090815260408083209388168352929052205460ff165b80610cab5750836001600160a01b03166127c2846109d8565b6001600160a01b031614949350505050565b6127dd81613952565b6040516020016127ef91815260200190565b60408051601f198184030181528282528051602091820120600085815260cb9092529181209190915582917f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9190a250565b826001600160a01b031661285482612d97565b6001600160a01b0316146128b85760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b6064820152608401610b60565b6001600160a01b03821661291a5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610b60565b6129258383836136af565b612930600082613626565b6001600160a01b0383166000908152606860205260408120805460019290612959908490614fb8565b90915550506001600160a01b0382166000908152606860205260408120805460019290612987908490614f39565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60005b8481101561117057612a39868683818110612a0857612a08614ab5565b90506020020135858584818110612a2157612a21614ab5565b9050602002810190612a339190614acb565b85612cd2565b80612a4381614b27565b9150506129eb565b600080516020615293833981519152546000906001600160a01b03168015612b485760405163721804d360e11b81523060048201526000906001600160a01b0383169063e43009a690602401602060405180830381865afa158015612ab4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ad8919061501e565b60405163e66f960360e01b8152600481018290529091506001600160a01b0383169063e66f960390602401602060405180830381865afa158015612b20573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b449190615037565b9250505b5090565b6000612b5782612d97565b9050612b65816000846136af565b612b70600083613626565b6001600160a01b0381166000908152606860205260408120805460019290612b99908490614fb8565b909155505060008281526067602052604080822080546001600160a01b0319169055518391906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b60008585604051602001612c08929190615054565b60408051601f198184030181528282528051602091820120601f8901829004820284018201909252878352909250612c5c9183918990899081908401838280828437600092019190915250612d7292505050565b6111708187878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061397a915050565b612cdb84613aaf565b612d275760405162461bcd60e51b815260206004820152601c60248201527f5265636f726453746f726167653a204b45595f4e4f545f464f554e44000000006044820152606401610b60565b6114a584612d3486611962565b85858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525087925061397a915050565b612d7b82613aaf565b61108457600082815260c960205260409020610a138282615064565b6000818152606760205260408120546001600160a01b0316806109405760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b60565b6000828152610138602052604090208054612e1190614a66565b9050600003612e3557600082815261013860205260409020612e338282615064565b505b6001600160a01b03831660008181526101356020526040808220859055518492917feb76a21470988c474a21f690cc28fee1ed511bd812dc3c21fd0f49c5e5d4708a91a3505050565b606080612e8a84611962565b9150612e96848461378b565b90509250929050565b6000818152610137602052604081205460ff16801561094057506101366000612ec661229c565b6001600160a01b0316815260208101919091526040016000205460ff1692915050565b60008051602061529383398151915254604051633805550f60e01b81526001600160a01b03909116908190633805550f90612f2a9086908690600401614d69565b600060405180830381600087803b158015612f4457600080fd5b505af1158015610ef5573d6000803e3d6000fd5b816001600160a01b0316836001600160a01b031603612fb95760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610b60565b6001600160a01b038381166000818152606a6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561306d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613091919061501e565b9050600061313f8660600151805190602001208688602001516040516020016130df9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561316557508551613165906001600160a01b03168286613ad5565b9695505050505050565b60003033036131805750601f193601355b90565b606082858560405160200161319a93929190615123565b6040516020818303038152906040529050949350505050565b606081516001600160401b038111156131ce576131ce6144d7565b60405190808252806020026020018201604052801561320157816020015b60608152602001906001900390816131ec5790505b50905060005b82518110156113ff57600080306001600160a01b031685848151811061322f5761322f614ab5565b60200260200101516040516132449190614c1f565b600060405180830381855af49150503d806000811461327f576040519150601f19603f3d011682016040523d82523d6000602084013e613284565b606091505b50915091506132ac82826040518060600160405280602781526020016152b36027913961386d565b8484815181106132be576132be614ab5565b6020026020010181905250505080806132d690614b27565b915050613207565b6132e9848484612841565b6132f584848484613c17565b6114a55760405162461bcd60e51b8152600401610b6090615162565b6000818152610137602052604090205460ff16156111ca5760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a20544f4b454e5f555047524144454400000000000000006044820152606401610b60565b61337b84846122ab565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952836040516133ab9190613f78565b60405180910390a280156114a5576114a5848484612701565b6060610133805461095590614a66565b6060816000036133fb5750506040805180820190915260018152600360fc1b602082015290565b8160005b8115613425578061340f81614b27565b915061341e9050600a83614f8e565b91506133ff565b6000816001600160401b0381111561343f5761343f6144d7565b6040519080825280601f01601f191660200182016040528015613469576020820181803683370190505b5090505b8415610cab5761347e600183614fb8565b915061348b600a866151b4565b613496906030614f39565b60f81b8183815181106134ab576134ab614ab5565b60200101906001600160f81b031916908160001a9053506134cd600a86614f8e565b945061346d565b6134dd816127d4565b610ea08585858585612612565b6001600160a01b03811660008181526101356020526040808220829055517ffcf5eec0cfa3e6332f5f0e63ec242d71f866a61d121d6cdf5c2eb3b668a26c4f9190a250565b600054610100900460ff166135565760405162461bcd60e51b8152600401610b60906151c8565b60656135628382615064565b506066610a138282615064565b600054610100900460ff166135965760405162461bcd60e51b8152600401610b60906151c8565b565b600054610100900460ff166135bf5760405162461bcd60e51b8152600401610b60906151c8565b6111ca81613d1c565b600054610100900460ff166135ef5760405162461bcd60e51b8152600401610b60906151c8565b6111ca81613d75565b60008181526101006020526040902054613613906001614f39565b6000918252610100602052604090912055565b600081815260696020526040902080546001600160a01b0319166001600160a01b038416908117909155819061365b82612d97565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60003033036136aa575060331936013560601c90565b503390565b6001600160a01b0382166136c6576136c681613311565b600081815261013960205260409020546001600160401b031615613761576001600160a01b0382161580159061371557506136ff612a4b565b6001600160a01b0316826001600160a01b031614155b6137615760405162461bcd60e51b815260206004820152601960248201527f52656769737472793a20544f4b454e5f455850495241424c45000000000000006044820152606401610b60565b6001600160a01b03831660009081526101356020526040902054819003610a1357610a13836134ea565b606061379682612e9f565b156137b05750604080516020810190915260008152610940565b60ca60006137bd84613952565b8152602001908152602001600020600084815260200190815260200160002080546137e790614a66565b80601f016020809104026020016040519081016040528092919081815260200182805461381390614a66565b80156138605780601f1061383557610100808354040283529160200191613860565b820191906000526020600020905b81548152906001019060200180831161384357829003601f168201915b5050505050905092915050565b6060831561387c575081610db7565b82511561388c5782518084602001fd5b8160405162461bcd60e51b8152600401610b609190613f78565b600081516000036138f15760405162461bcd60e51b815260206004820152601560248201527452656769737472793a204c4142454c5f454d50545960581b6044820152606401610b60565b82826040516020016139039190614c1f565b60405160208183030381529060405280519060200120604051602001613933929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b600081815260cb602052604081205415612b4857600082815260cb6020526040902054610940565b60ca600061398783613952565b8152602001908152602001600020600085815260200190815260200160002080546139b190614a66565b9050600003613a0957826040516139c89190614c1f565b6040518091039020817f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f8685604051613a009190613f78565b60405180910390a35b8160ca6000613a1784613952565b815260200190815260200160002060008681526020019081526020016000209081613a429190615064565b5081604051613a519190614c1f565b604051809103902083604051613a679190614c1f565b6040518091039020827f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d928686604051613aa19291906146e2565b60405180910390a450505050565b600081815260c9602052604081208054829190613acb90614a66565b9050119050919050565b6000806000613ae48585613dc3565b90925090506000816004811115613afd57613afd615213565b148015613b1b5750856001600160a01b0316826001600160a01b0316145b15613b2b57600192505050610db7565b600080876001600160a01b0316631626ba7e60e01b8888604051602401613b53929190615229565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051613b919190614c1f565b600060405180830381855afa9150503d8060008114613bcc576040519150601f19603f3d011682016040523d82523d6000602084013e613bd1565b606091505b5091509150818015613be4575080516020145b8015613c0b57508051630b135d3f60e11b90613c09908301602090810190840161501e565b145b98975050505050505050565b60006001600160a01b0384163b15613d1457836001600160a01b031663150b7a02613c4061229c565b8786866040518563ffffffff1660e01b8152600401613c629493929190615242565b6020604051808303816000875af1925050508015613c9d575060408051601f3d908101601f19168201909252613c9a91810190615275565b60015b613cfa573d808015613ccb576040519150601f19603f3d011682016040523d82523d6000602084013e613cd0565b606091505b508051600003613cf25760405162461bcd60e51b8152600401610b6090615162565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610cab565b506001610cab565b600054610100900460ff16613d435760405162461bcd60e51b8152600401610b60906151c8565b806000805160206152938339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b600054610100900460ff16613d9c5760405162461bcd60e51b8152600401610b60906151c8565b807f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87613d54565b6000808251604103613df95760208301516040840151606085015160001a613ded87828585613e08565b94509450505050613e01565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613e3f5750600090506003613eec565b8460ff16601b14158015613e5757508460ff16601c14155b15613e685750600090506004613eec565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613ebc573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613ee557600060019250925050613eec565b9150600090505b94509492505050565b6001600160e01b0319811681146111ca57600080fd5b600060208284031215613f1d57600080fd5b8135610db781613ef5565b60005b83811015613f43578181015183820152602001613f2b565b50506000910152565b60008151808452613f64816020860160208601613f28565b601f01601f19169290920160200192915050565b602081526000610db76020830184613f4c565b600060208284031215613f9d57600080fd5b5035919050565b6001600160a01b03811681146111ca57600080fd5b60008060408385031215613fcc57600080fd5b8235613fd781613fa4565b946020939093013593505050565b60008083601f840112613ff757600080fd5b5081356001600160401b0381111561400e57600080fd5b602083019150836020828501011115613e0157600080fd5b60008060008060006080868803121561403e57600080fd5b853561404981613fa4565b9450602086013561405981613fa4565b93506040860135925060608601356001600160401b0381111561407b57600080fd5b61408788828901613fe5565b969995985093965092949392505050565b60008083601f8401126140aa57600080fd5b5081356001600160401b038111156140c157600080fd5b6020830191508360208260051b8501011115613e0157600080fd5b6000806000604084860312156140f157600080fd5b83356001600160401b0381111561410757600080fd5b61411386828701614098565b909790965060209590950135949350505050565b600082825180855260208086019550808260051b84010181860160005b8481101561417257601f19868403018952614160838351613f4c565b98840198925090830190600101614144565b5090979650505050505050565b602081526000610db76020830184614127565b6000806000604084860312156141a757600080fd5b83356001600160401b038111156141bd57600080fd5b61411386828701613fe5565b6000806000604084860312156141de57600080fd5b83356001600160401b03808211156141f557600080fd5b908501906080828803121561420957600080fd5b9093506020850135908082111561421f57600080fd5b5061422c86828701613fe5565b9497909650939450505050565b8035801515811461124557600080fd5b60008060008060008060008060a0898b03121561426557600080fd5b883561427081613fa4565b975060208901356001600160401b038082111561428c57600080fd5b6142988c838d01614098565b909950975060408b01359150808211156142b157600080fd5b6142bd8c838d01614098565b909750955060608b01359150808211156142d657600080fd5b506142e38b828c01614098565b90945092506142f6905060808a01614239565b90509295985092959890939650565b60008060006060848603121561431a57600080fd5b833561432581613fa4565b9250602084013561433581613fa4565b929592945050506040919091013590565b6000806020838503121561435957600080fd5b82356001600160401b0381111561436f57600080fd5b61437b85828601614098565b90969095509350505050565b60008060008060006060868803121561439f57600080fd5b85356001600160401b03808211156143b657600080fd5b6143c289838a01614098565b909750955060208801359150808211156143db57600080fd5b506143e888828901614098565b96999598509660400135949350505050565b6000806040838503121561440d57600080fd5b82356001600160401b0381168114613fd757600080fd5b60008060008060006060868803121561443c57600080fd5b85356001600160401b038082111561445357600080fd5b61445f89838a01613fe5565b9097509550602088013591508082111561447857600080fd5b506143e888828901613fe5565b6000806000806060858703121561449b57600080fd5b8435935060208501356001600160401b038111156144b857600080fd5b6144c487828801613fe5565b9598909750949560400135949350505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715614515576145156144d7565b604052919050565b600082601f83011261452e57600080fd5b81356001600160401b03811115614547576145476144d7565b61455a601f8201601f19166020016144ed565b81815284602083860101111561456f57600080fd5b816020850160208301376000918101602001919091529392505050565b60006020828403121561459e57600080fd5b81356001600160401b038111156145b457600080fd5b610cab8482850161451d565b6000602082840312156145d257600080fd5b8135610db781613fa4565b60006001600160401b038211156145f6576145f66144d7565b5060051b60200190565b600061461361460e846145dd565b6144ed565b8381529050602080820190600585901b84018681111561463257600080fd5b845b8181101561466d5780356001600160401b038111156146535760008081fd5b61465f8982890161451d565b855250928201928201614634565b505050509392505050565b60006020828403121561468a57600080fd5b81356001600160401b038111156146a057600080fd5b8201601f810184136146b157600080fd5b610cab84823560208401614600565b600080604083850312156146d357600080fd5b50508035926020909101359150565b6040815260006146f56040830185613f4c565b8281036020840152610db38185613f4c565b6000806000806060858703121561471d57600080fd5b843561472881613fa4565b93506020850135925060408501356001600160401b0381111561474a57600080fd5b61475687828801613fe5565b95989497509550505050565b60008060008060008060006080888a03121561477d57600080fd5b87356001600160401b038082111561479457600080fd5b6147a08b838c01613fe5565b909950975060208a0135965060408a01359150808211156147c057600080fd5b6147cc8b838c01614098565b909650945060608a01359150808211156147e557600080fd5b506147f28a828b01614098565b989b979a50959850939692959293505050565b6000806020838503121561481857600080fd5b82356001600160401b0381111561482e57600080fd5b61437b85828601613fe5565b6000806040838503121561484d57600080fd5b823561485881613fa4565b9150612e9660208401614239565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156148bb57603f198886030184526148a9858351613f4c565b9450928501929085019060010161488d565b5092979650505050505050565b6040815260006148db6040830185614127565b8281036020840152610db38185614127565b6000806000806080858703121561490357600080fd5b843561490e81613fa4565b9350602085013561491e81613fa4565b92506040850135915060608501356001600160401b0381111561494057600080fd5b61494c8782880161451d565b91505092959194509250565b60008060006040848603121561496d57600080fd5b833561497881613fa4565b925060208401356001600160401b0381111561499357600080fd5b61422c86828701613fe5565b600080604083850312156149b257600080fd5b82356149bd81613fa4565b915060208301356149cd81613fa4565b809150509250929050565b6000806000604084860312156149ed57600080fd5b8335925060208401356001600160401b0381111561499357600080fd5b60008060008060808587031215614a2057600080fd5b8435614a2b81613fa4565b93506020850135614a3b81613fa4565b92506040850135614a4b81613fa4565b91506060850135614a5b81613fa4565b939692955090935050565b600181811c90821680614a7a57607f821691505b6020821081036113ff57634e487b7160e01b600052602260045260246000fd5b600060208284031215614aac57600080fd5b610db782614239565b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112614ae257600080fd5b8301803591506001600160401b03821115614afc57600080fd5b602001915036819003821315613e0157600080fd5b634e487b7160e01b600052601160045260246000fd5b600060018201614b3957614b39614b11565b5060010190565b60208082526027908201527f52656769737472793a2053454e4445525f49535f4e4f545f4d494e54494e475f60408201526626a0a720a3a2a960c91b606082015260800190565b6000610db7368484614600565b60208082526029908201527f52656769737472793a2053454e4445525f49535f4e4f545f415050524f5645446040820152682fa7a92fa7aba722a960b91b606082015260800190565b60208082526022908201527f52656769737472793a20494e53554646494349454e545f5045524d495353494f6040820152614e5360f01b606082015260800190565b60008251614c31818460208701613f28565b9190910192915050565b601f821115610a1357600081815260208120601f850160051c81016020861015614c625750805b601f850160051c820191505b8181101561117057828155600101614c6e565b6001600160401b03831115614c9857614c986144d7565b614cac83614ca68354614a66565b83614c3b565b6000601f841160018114614ce05760008515614cc85750838201355b600019600387901b1c1916600186901b178355610ea0565b600083815260209020601f19861690835b82811015614d115786850135825560209485019460019092019101614cf1565b5086821015614d2e5760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b602081526000610cab602083018486614d40565b600060808236031215614d8f57600080fd5b604051608081016001600160401b038282108183111715614db257614db26144d7565b8160405284359150614dc382613fa4565b81835260208501356020840152604085013560408401526060850135915080821115614dee57600080fd5b50614dfb3682860161451d565b60608301525092915050565b6000614e1561460e846145dd565b80848252602080830192508560051b850136811115614e3357600080fd5b855b81811015614e6e5780356001600160401b03811115614e545760008081fd5b614e6036828a0161451d565b865250938201938201614e35565b50919695505050505050565b60008351614e8c818460208801613f28565b835190830190614ea0818360208801613f28565b01949350505050565b60006020808385031215614ebc57600080fd5b82356001600160401b03811115614ed257600080fd5b8301601f81018513614ee357600080fd5b8035614ef161460e826145dd565b81815260059190911b82018301908381019087831115614f1057600080fd5b928401925b82841015614f2e57833582529284019290840190614f15565b979650505050505050565b8082018082111561094057610940614b11565b6001600160a01b03848116825283166020820152606060408201819052600090610b6990830184613f4c565b634e487b7160e01b600052601260045260246000fd5b600082614f9d57614f9d614f78565b500490565b634e487b7160e01b600052600160045260246000fd5b8181038181111561094057610940614b11565b600081614fda57614fda614b11565b506000190190565b60008351614ff4818460208801613f28565b601760f91b9083019081528351615012816001840160208801613f28565b01600101949350505050565b60006020828403121561503057600080fd5b5051919050565b60006020828403121561504957600080fd5b8151610db781613fa4565b8183823760009101908152919050565b81516001600160401b0381111561507d5761507d6144d7565b6150918161508b8454614a66565b84614c3b565b602080601f8311600181146150c657600084156150ae5750858301515b600019600386901b1c1916600185901b178555611170565b600085815260208120601f198616915b828110156150f5578886015182559484019460019091019084016150d6565b50858210156151135787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60008451615135818460208901613f28565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6000826151c3576151c3614f78565b500690565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b634e487b7160e01b600052602160045260246000fd5b828152604060208201526000610cab6040830184613f4c565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061316590830184613f4c565b60006020828403121561528757600080fd5b8151610db781613ef556febe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a","storage":{}},"0x6ac8f19d1e0f81147cdf2a1e53cb1f4e18417204":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610296575f3560e01c80636352211e11610161578063c93ab3fd116100ca578063e985e9c511610084578063e985e9c5146106c8578063eb8ae530146106db578063ed70554d146106ee578063f242432a1461070d578063f2fde38b14610720578063fd0cd0d914610733575f80fd5b8063c93ab3fd14610647578063cf4088231461065a578063d8c9921a1461066d578063d9a50c1214610680578063da8c229e14610693578063e0dba60f146106b5575f80fd5b8063a22cb4651161011b578063a22cb465146105d5578063a4014982146105e8578063adf4960a146105fb578063b6bcad261461060e578063c475abff14610621578063c658e08614610634575f80fd5b80636352211e146105595780636e5d6ad21461056c578063715018a6146105975780638b4dfa751461059f5780638cf8b41e146105b25780638da5cb5b146105c5575f80fd5b80631f4e1504116102035780633f15457f116101bd5780633f15457f146104b1578063402906fc146104d857806341415eab146105005780634e1273f41461051357806353095467146105335780635d3590d514610546575f80fd5b80631f4e15041461042b57806320c38e2b1461043e57806324c1af44146104515780632b20e397146104645780632eb2c2d61461048b57806333c69ea91461049e575f80fd5b80630e4cd725116102545780630e4cd725146103a05780630e89341c146103b357806314ab9038146103c6578063150b7a02146103d95780631534e177146104055780631896f70a14610418575f80fd5b8062fdd58e1461029a5780630178fe3f146102c057806301ffc9a71461030657806306fdde0314610329578063081812fc14610360578063095ea7b31461038b575b5f80fd5b6102ad6102a8366004614316565b610746565b6040519081526020015b60405180910390f35b6102d36102ce366004614340565b6107f0565b604080516001600160a01b03909416845263ffffffff90921660208401526001600160401b0316908201526060016102b7565b61031961031436600461436c565b61081f565b60405190151581526020016102b7565b6103536040518060400160405280600b81526020016a2730b6b2abb930b83832b960a91b81525081565b6040516102b791906143d4565b61037361036e366004614340565b61085e565b6040516001600160a01b0390911681526020016102b7565b61039e610399366004614316565b6108a0565b005b6103196103ae3660046143e6565b6108e5565b6103536103c1366004614340565b61095e565b61039e6103d436600461442f565b6109cc565b6103ec6103e736600461449d565b610ac0565b6040516001600160e01b031990911681526020016102b7565b61039e61041336600461450a565b610c96565b61039e6104263660046143e6565b610cc0565b600754610373906001600160a01b031681565b61035361044c366004614340565b610d75565b6102ad61045f3660046145f6565b610e0c565b6103737f000000000000000000000000c965345edac823d56812cd20a10316233916a60581565b61039e610499366004614717565b610fe7565b61039e6104ac3660046147bd565b61121a565b6103737f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a981565b6104eb6104e6366004614811565b6113e6565b60405163ffffffff90911681526020016102b7565b61031961050e3660046143e6565b611480565b610526610521366004614832565b6114b8565b6040516102b79190614928565b600554610373906001600160a01b031681565b61039e61055436600461493a565b6115d7565b610373610567366004614340565b611655565b61057f61057a366004614978565b61165f565b6040516001600160401b0390911681526020016102b7565b61039e61178e565b61039e6105ad3660046149aa565b6117a1565b61057f6105c03660046149e9565b6118c0565b5f546001600160a01b0316610373565b61039e6105e3366004614a6b565b611c28565b6102ad6105f6366004614a97565b611cfd565b610319610609366004614b12565b611e38565b61039e61061c36600461450a565b611e5c565b6102ad61062f366004614b33565b61209e565b6102ad610642366004614b53565b6122fd565b61039e610655366004614bc0565b6124bd565b61039e610668366004614c26565b612605565b61039e61067b366004614c5b565b612794565b61031961068e366004614b33565b61285d565b6103196106a136600461450a565b60046020525f908152604090205460ff1681565b61039e6106c3366004614a6b565b612938565b6103196106d6366004614c86565b61299f565b61039e6106e9366004614cb2565b6129cc565b6102ad6106fc366004614340565b60016020525f908152604090205481565b61039e61071b366004614d15565b612d59565b61039e61072e36600461450a565b612e06565b610319610741366004614340565b612e7c565b5f6001600160a01b0383166107b65760405162461bcd60e51b815260206004820152602b60248201527f455243313135353a2062616c616e636520717565727920666f7220746865207a60448201526a65726f206164647265737360a81b60648201526084015b60405180910390fd5b5f6107c083611655565b9050836001600160a01b0316816001600160a01b0316036107e55760019150506107ea565b5f9150505b92915050565b5f8181526001602052604090205460a081901c60c082901c610813838383612f4d565b90959094509092509050565b5f6001600160e01b03198216631b05885b60e31b148061084f57506001600160e01b03198216630a85bd0160e11b145b806107ea57506107ea82612f80565b5f8061086983611655565b90506001600160a01b03811661088157505f92915050565b5f838152600360205260409020546001600160a01b03165b9392505050565b5f6108aa826107f0565b50915050603f1960408216016108d65760405163a2a7201360e01b8152600481018390526024016107ad565b6108e08383612fcf565b505050565b5f8080806108f2866107f0565b925092509250846001600160a01b0316836001600160a01b0316148061091d575061091d838661299f565b8061094157506001600160a01b0385166109368761085e565b6001600160a01b0316145b8015610954575061095282826130de565b155b9695505050505050565b6005546040516303a24d0760e21b8152600481018390526060916001600160a01b031690630e89341c906024015f60405180830381865afa1580156109a5573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526107ea9190810190614d78565b816109d78133611480565b6109f857803360405163168ab55d60e31b81526004016107ad929190614dea565b8260105f610a05836107f0565b5091505063ffffffff8282161615610a335760405163a2a7201360e01b8152600481018490526024016107ad565b604051630295720760e31b8152600481018790526001600160401b03861660248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906314ab9038906044015b5f604051808303815f87803b158015610aa2575f80fd5b505af1158015610ab4573d5f803e3d5ffd5b50505050505050505050565b5f336001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a6051614610b0a5760405163032634a760e31b815260040160405180910390fd5b5f808080610b1a86880188614e01565b83516020850120939750919550935091508890808214610b57576040516331970f3360e21b815260048101829052602481018390526044016107ad565b604051630a3b53db60e21b81526001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906328ed4f6c90610ba59085903090600401614dea565b5f604051808303815f87803b158015610bbc575f80fd5b505af1158015610bce573d5f803e3d5ffd5b5050604051636b727d4360e11b8152600481018d90525f92506276a70091506001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063d6e4fa8690602401602060405180830381865afa158015610c3c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c609190614e64565b610c6a9190614e8f565b9050610c7d87878761ffff16848861310d565b50630a85bd0160e11b9c9b505050505050505050505050565b610c9e613215565b600580546001600160a01b0319166001600160a01b0392909216919091179055565b81610ccb8133611480565b610cec57803360405163168ab55d60e31b81526004016107ad929190614dea565b8260085f610cf9836107f0565b5091505063ffffffff8282161615610d275760405163a2a7201360e01b8152600481018490526024016107ad565b604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a90610a8b9089908990600401614dea565b60066020525f908152604090208054610d8d90614eb6565b80601f0160208091040260200160405190810160405280929190818152602001828054610db990614eb6565b8015610e045780601f10610ddb57610100808354040283529160200191610e04565b820191905f5260205f20905b815481529060010190602001808311610de757829003601f168201915b505050505081565b5f87610e188133611480565b610e3957803360405163168ab55d60e31b81526004016107ad929190614dea565b87516020890120610e4a8a8261326e565b9250610e568a8461329a565b610e6083866133d3565b610e6b8a848b613406565b50610e788a8487876134cd565b9350610e8383613510565b610f33576040516305ef2c7f60e41b8152600481018b9052602481018290523060448201526001600160a01b0388811660648301526001600160401b03881660848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610f0a575f80fd5b505af1158015610f1c573d5f803e3d5ffd5b50505050610f2e8a848b8b89896135c6565b610fda565b6040516305ef2c7f60e41b8152600481018b9052602481018290523060448201526001600160a01b0388811660648301526001600160401b03881660848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610fb6575f80fd5b505af1158015610fc8573d5f803e3d5ffd5b50505050610fda8a848b8b89896135fc565b5050979650505050505050565b81518351146110495760405162461bcd60e51b815260206004820152602860248201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206044820152670dad2e6dac2e8c6d60c31b60648201526084016107ad565b6001600160a01b03841661106f5760405162461bcd60e51b81526004016107ad90614eee565b6001600160a01b03851633148061108b575061108b853361299f565b6110f25760405162461bcd60e51b815260206004820152603260248201527f455243313135353a207472616e736665722063616c6c6572206973206e6f74206044820152711bdddb995c881b9bdc88185c1c1c9bdd995960721b60648201526084016107ad565b5f5b83518110156111ad575f84828151811061111057611110614f33565b602002602001015190505f84838151811061112d5761112d614f33565b602002602001015190505f805f611143856107f0565b9250925092506111548583836136b6565b83600114801561117557508a6001600160a01b0316836001600160a01b0316145b6111915760405162461bcd60e51b81526004016107ad90614f47565b61119d858b848461375d565b50505050508060010190506110f4565b50836001600160a01b0316856001600160a01b0316336001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516111fd929190614f91565b60405180910390a461121333868686868661379d565b5050505050565b5f611225858561326e565b905061123181846133d3565b5f808061123d846107f0565b919450925090506001600160a01b03831615806112ea57506040516302571be360e01b81526004810185905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa1580156112ba573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112de9190614fbe565b6001600160a01b031614155b1561130857604051635374b59960e01b815260040160405180910390fd5b5f806113138a6107f0565b90935091508a905061134f576113298633611480565b61134a57853360405163168ab55d60e31b81526004016107ad929190614dea565b61137a565b6113598a33611480565b61137a57893360405163168ab55d60e31b81526004016107ad929190614dea565b6113858689846138f7565b611390878483613932565b9650620100008416158015906113b457508363ffffffff1688851763ffffffff1614155b156113d55760405163a2a7201360e01b8152600481018790526024016107ad565b96831796610ab486868a868b613977565b5f826113f28133611480565b61141357803360405163168ab55d60e31b81526004016107ad929190614dea565b8360025f611420836107f0565b5091505063ffffffff828216161561144e5760405163a2a7201360e01b8152600481018490526024016107ad565b5f808061145a8a6107f0565b9250925092506114738a84848c61ffff16178485613977565b5098975050505050505050565b5f80808061148d866107f0565b925092509250846001600160a01b0316836001600160a01b031614806109415750610941838661299f565b6060815183511461151d5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b60648201526084016107ad565b5f83516001600160401b0381111561153757611537614525565b604051908082528060200260200182016040528015611560578160200160208202803683370190505b5090505f5b84518110156115cf576115aa85828151811061158357611583614f33565b602002602001015185838151811061159d5761159d614f33565b6020026020010151610746565b8282815181106115bc576115bc614f33565b6020908102919091010152600101611565565b509392505050565b6115df613215565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af115801561162b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061164f9190614fd9565b50505050565b5f6107ea82613a1e565b5f8061166b858561326e565b905061167681613510565b61169357604051635374b59960e01b815260040160405180910390fd5b5f61169e86336108e5565b9050801580156116b557506116b38233611480565b155b156116d757813360405163168ab55d60e31b81526004016107ad929190614dea565b5f80806116e3856107f0565b925092509250831580156116fa5750620400008216155b1561171b5760405163a2a7201360e01b8152600481018690526024016107ad565b5f6117258a6107f0565b92505050611734888383613932565b97506117428685858b613a33565b6040516001600160401b038916815286907ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b1329060200160405180910390a2509598975050505050505050565b611796613215565b61179f5f613a49565b565b6117b85f805160206154fc8339815191528461326e565b6117c28133611480565b6117e357803360405163168ab55d60e31b81526004016107ad929190614dea565b306001600160a01b0384160361181757604051632ca49b0d60e11b81526001600160a01b03841660048201526024016107ad565b6118376118315f805160206154fc8339815191528661326e565b83613a98565b604051632142170760e11b81523060048201526001600160a01b038481166024830152604482018690527f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906342842e0e906064015f604051808303815f87803b1580156118a4575f80fd5b505af11580156118b6573d5f803e3d5ffd5b5050505050505050565b5f8086866040516118d2929190614ff4565b6040519081900381206331a9108f60e11b82526004820181905291505f907f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa15801561193f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119639190614fbe565b90506001600160a01b0381163314801590611a09575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063e985e9c590604401602060405180830381865afa1580156119e3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a079190614fd9565b155b15611a4157611a255f805160206154fc8339815191528361326e565b3360405163168ab55d60e31b81526004016107ad929190614dea565b6040516323b872dd60e01b81526001600160a01b038281166004830152306024830152604482018490527f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906323b872dd906064015f604051808303815f87803b158015611aae575f80fd5b505af1158015611ac0573d5f803e3d5ffd5b5050604051630a3b53db60e21b81526001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a6051692506328ed4f6c9150611b129085903090600401614dea565b5f604051808303815f87803b158015611b29575f80fd5b505af1158015611b3b573d5f803e3d5ffd5b5050604051636b727d4360e11b8152600481018590526276a70092507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b0316915063d6e4fa8690602401602060405180830381865afa158015611ba7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611bcb9190614e64565b611bd59190614e8f565b9250611c1d88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508a9250505061ffff8816868861310d565b505095945050505050565b6001600160a01b0382163303611c925760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084016107ad565b335f8181526002602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b335f9081526004602052604081205460ff16611d2b5760405162461bcd60e51b81526004016107ad90615003565b5f8787604051611d3c929190614ff4565b604051908190038120633f2891eb60e21b8252600482018190523060248301526044820187905291507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b03169063fca247ac906064016020604051808303815f875af1158015611db5573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611dd99190614e64565b9150611e2d88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508a9250505061ffff8616611e276276a70087614e8f565b8861310d565b509695505050505050565b5f80611e43846107f0565b50841663ffffffff908116908516149250505092915050565b611e64613215565b6007546001600160a01b031615611f785760075460405163a22cb46560e01b81526001600160a01b0391821660048201525f60248201527f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063a22cb465906044015f604051808303815f87803b158015611ee0575f80fd5b505af1158015611ef2573d5f803e3d5ffd5b505060075460405163a22cb46560e01b81526001600160a01b0391821660048201525f60248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9909116925063a22cb46591506044015f604051808303815f87803b158015611f61575f80fd5b505af1158015611f73573d5f803e3d5ffd5b505050505b600780546001600160a01b0319166001600160a01b0383169081179091551561209b5760075460405163a22cb46560e01b81526001600160a01b039182166004820152600160248201527f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063a22cb465906044015f604051808303815f87803b158015612007575f80fd5b505af1158015612019573d5f803e3d5ffd5b505060075460405163a22cb46560e01b81526001600160a01b039182166004820152600160248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9909116925063a22cb46591506044015f604051808303815f87803b158015612089575f80fd5b505af1158015611213573d5f803e3d5ffd5b50565b335f9081526004602052604081205460ff166120cc5760405162461bcd60e51b81526004016107ad90615003565b5f6120e45f805160206154fc8339815191528561326e565b60405163c475abff60e01b815260048101869052602481018590529091505f906001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063c475abff906044016020604051808303815f875af1158015612154573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906121789190614e64565b6040516331a9108f60e11b8152600481018790529091507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa9250505080156121fc575060408051601f3d908101601f191682019092526121f991810190614fbe565b60015b6122095791506107ea9050565b6001600160a01b038116301415806122b157506040516302571be360e01b81526004810184905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015612281573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906122a59190614fbe565b6001600160a01b031614155b156122c0575091506107ea9050565b505f6122cf6276a70083614e8f565b5f8481526001602052604090205490915060a081901c6122f185838386613a33565b50919695505050505050565b5f866123098133611480565b61232a57803360405163168ab55d60e31b81526004016107ad929190614dea565b5f878760405161233b929190614ff4565b6040518091039020905061234f898261326e565b925061235b898461329a565b61236583866133d3565b5f6123a68a858b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061340692505050565b90506123b48a8588886134cd565b94506123bf84613510565b61246b576040516306ab592360e01b8152600481018b9052602481018390523060448201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906306ab5923906064016020604051808303815f875af1158015612434573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906124589190614e64565b506124668482898989613b83565b6124b0565b6124b08a858b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508d92508c91508b90506135fc565b5050509695505050505050565b5f6125005f86868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613bc59050565b6007549091506001600160a01b031661252c5760405163093075b560e21b815260040160405180910390fd5b6125368133611480565b61255757803360405163168ab55d60e31b81526004016107ad929190614dea565b5f8080612563846107f0565b919450925090505f6125748561085e565b905061257f85613c81565b60075f9054906101000a90046001600160a01b03166001600160a01b0316639198c2768a8a878787878e8e6040518963ffffffff1660e01b81526004016125cd989796959493929190615073565b5f604051808303815f87803b1580156125e4575f80fd5b505af11580156125f6573d5f803e3d5ffd5b50505050505050505050505050565b836126108133611480565b61263157803360405163168ab55d60e31b81526004016107ad929190614dea565b84601c5f61263e836107f0565b5091505063ffffffff828216161561266c5760405163a2a7201360e01b8152600481018490526024016107ad565b60405163cf40882360e01b8152600481018990523060248201526001600160a01b0387811660448301526001600160401b03871660648301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063cf408823906084015f604051808303815f87803b1580156126e8575f80fd5b505af11580156126fa573d5f803e3d5ffd5b5050506001600160a01b038816905061275f575f612717896107f0565b509150506201ffff196202000082160161274f57604051632ca49b0d60e11b81526001600160a01b03891660048201526024016107ad565b612759895f613a98565b506118b6565b5f61276989611655565b905061278981898b5f1c600160405180602001604052805f815250613d1e565b505050505050505050565b61279e838361326e565b6127a88133611480565b6127c957803360405163168ab55d60e31b81526004016107ad929190614dea565b7f6c32148f748aba23997146d7fe89e962e3cc30271290fb96f5f4337756c03b5284016128095760405163615a470360e01b815260040160405180910390fd5b6001600160a01b038216158061282757506001600160a01b03821630145b1561285057604051632ca49b0d60e11b81526001600160a01b03831660048201526024016107ad565b61164f611831858561326e565b5f80612869848461326e565b90505f61287582613510565b90505f805160206154fc83398151915285146128945791506107ea9050565b6040516331a9108f60e11b8152600481018590527f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa925050508015612915575060408051601f3d908101601f1916820190925261291291810190614fbe565b60015b612923575f925050506107ea565b6001600160a01b0316301492506107ea915050565b612940613215565b6001600160a01b0382165f81815260046020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf8791015b60405180910390a25050565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205460ff1690565b5f80612a105f87878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613dfe9050565b915091505f612a578288888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613bc59050565b90505f612a64828561326e565b5f818152600660205260409020909150612a7f888a8361511e565b507f6c32148f748aba23997146d7fe89e962e3cc30271290fb96f5f4337756c03b528201612ac05760405163615a470360e01b815260040160405180910390fd5b6040516302571be360e01b8152600481018290525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa158015612b25573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612b499190614fbe565b90506001600160a01b0381163314801590612bef575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063e985e9c590604401602060405180830381865afa158015612bc9573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612bed9190614fd9565b155b15612c1157813360405163168ab55d60e31b81526004016107ad929190614dea565b6001600160a01b03861615612c9c57604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a90612c6e9085908a90600401614dea565b5f604051808303815f87803b158015612c85575f80fd5b505af1158015612c97573d5f803e3d5ffd5b505050505b604051635b0fc9c360e01b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635b0fc9c390612cea9085903090600401614dea565b5f604051808303815f87803b158015612d01575f80fd5b505af1158015612d13573d5f803e3d5ffd5b50505050612789828a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201829052508d93509150819050613b83565b6001600160a01b038416612d7f5760405162461bcd60e51b81526004016107ad90614eee565b6001600160a01b038516331480612d9b5750612d9b853361299f565b612df95760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2063616c6c6572206973206e6f74206f776e6572206e6f7260448201526808185c1c1c9bdd995960ba1b60648201526084016107ad565b6112138585858585613d1e565b612e0e613215565b6001600160a01b038116612e735760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107ad565b61209b81613a49565b5f8181526006602052604081208054829190612e9790614eb6565b80601f0160208091040260200160405190810160405280929190818152602001828054612ec390614eb6565b8015612f0e5780601f10612ee557610100808354040283529160200191612f0e565b820191905f5260205f20905b815481529060010190602001808311612ef157829003601f168201915b5050505050905080515f03612f2557505f92915050565b5f80612f318382613dfe565b90925090505f612f418483613bc5565b9050610954818461285d565b5f8042836001600160401b03161015612f775761ffff1962010000851601612f73575f94505b5f93505b50929391925050565b5f6001600160e01b03198216636cdb3d1360e11b1480612fb057506001600160e01b031982166303a24d0760e21b145b806107ea57506301ffc9a760e01b6001600160e01b03198316146107ea565b5f612fd982611655565b9050806001600160a01b0316836001600160a01b0316036130465760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084016107ad565b336001600160a01b03821614806130625750613062813361299f565b6130d45760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016107ad565b6108e08383613eb2565b5f620200008381161480156108995750426130fc6276a700846151d7565b6001600160401b0316109392505050565b845160208601205f61312c5f805160206154fc8339815191528361326e565b90505f61315488604051806040016040528060058152602001626cae8d60e31b815250613f1f565b5f83815260066020526040902090915061316e82826151f7565b50613181828289620300008a1789613b83565b6001600160a01b038416156118b657604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a906131de9085908890600401614dea565b5f604051808303815f87803b1580156131f5575f80fd5b505af1158015613207573d5f803e3d5ffd5b505050505050505050505050565b5f546001600160a01b0316331461179f5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107ad565b604080516020808201949094528082019290925280518083038201815260609092019052805191012090565b5f80806132a6846107f0565b91945092509050426001600160401b0382161080801561336657506001600160a01b038416158061336657506040516302571be360e01b8152600481018690525f906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015613337573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061335b9190614fbe565b6001600160a01b0316145b156133a4575f613375876107f0565b50915050602081161561339e5760405163a2a7201360e01b8152600481018790526024016107ad565b506133cb565b620100008316156133cb5760405163a2a7201360e01b8152600481018690526024016107ad565b505050505050565b63fffdffff81811763ffffffff16146134025760405163a2a7201360e01b8152600481018390526024016107ad565b5050565b60605f6134aa8360065f8881526020019081526020015f20805461342990614eb6565b80601f016020809104026020016040519081016040528092919081815260200182805461345590614eb6565b80156134a05780601f10613477576101008083540402835291602001916134a0565b820191905f5260205f20905b81548152906001019060200180831161348357829003601f168201915b5050505050613f1f565b5f8581526006602052604090209091506134c482826151f7565b50949350505050565b5f806134d8856107f0565b925050505f806134e9885f1c6107f0565b92509250506134f98787846138f7565b613504858483613932565b98975050505050505050565b5f8061351b83611655565b6001600160a01b0316141580156107ea57506040516302571be360e01b81526004810183905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015613592573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906135b69190614fbe565b6001600160a01b03161492915050565b5f86815260066020526040812080546135e491879161342990614eb6565b90506135f38682868686613b83565b50505050505050565b5f8080613608886107f0565b9250925092505f61362f8860065f8d81526020019081526020015f20805461342990614eb6565b5f8a815260066020526040902080549192509061364b90614eb6565b90505f0361366c575f89815260066020526040902061366a82826151f7565b505b61367b89858886178589613977565b6001600160a01b03871661369857613693895f613a98565b610ab4565b610ab484888b5f1c600160405180602001604052805f815250613d1e565b6201ffff19620200008316016136d6576136d36276a700826151d7565b90505b42816001600160401b0316101561370f576201000082161561370a5760405162461bcd60e51b81526004016107ad90614f47565b613734565b60048216156137345760405163a2a7201360e01b8152600481018490526024016107ad565b604082165f036108e05750505f90815260036020526040902080546001600160a01b0319169055565b60c0816001600160401b0316901b60a08363ffffffff16901b846001600160a01b0316171760015f8681526020019081526020015f208190555050505050565b6001600160a01b0384163b156133cb5760405163bc197c8160e01b81526001600160a01b0385169063bc197c81906137e190899089908890889088906004016152b2565b6020604051808303815f875af192505050801561381b575060408051601f3d908101601f1916820190925261381891810190615303565b60015b6138c75761382761531e565b806308c379a003613860575061383b615337565b806138465750613862565b8060405162461bcd60e51b81526004016107ad91906143d4565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e20455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b60648201526084016107ad565b6001600160e01b0319811663bc197c8160e01b146135f35760405162461bcd60e51b81526004016107ad906153bf565b63ffff000082161580159060018316159082906139115750805b156112135760405163a2a7201360e01b8152600481018690526024016107ad565b5f816001600160401b0316846001600160401b03161115613951578193505b826001600160401b0316846001600160401b0316101561396f578293505b509192915050565b61398385858584613a33565b60405163ffffffff8416815285907f39873f00c80f4f94b7bd1594aebcf650f003545b74824d57ddf4939e3ff3a34b9060200160405180910390a2816001600160401b0316816001600160401b03161115611213576040516001600160401b038216815285907ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b132906020015b60405180910390a25050505050565b5f80613a29836107f0565b5090949350505050565b613a3d8483613f96565b61164f8484848461375d565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b613aa3826001611e38565b15613ac45760405163a2a7201360e01b8152600481018390526024016107ad565b613acd82613c81565b604051635b0fc9c360e01b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635b0fc9c390613b1b9085908590600401614dea565b5f604051808303815f87803b158015613b32575f80fd5b505af1158015613b44573d5f803e3d5ffd5b50506040516001600160a01b03841681528492507fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c49150602001612993565b613b8f85848484613fcf565b847f8ce7013e8abebc55c3890a68f5a27c67c3f7efa64e584de5fb22363c606fd34085858585604051613a0f9493929190615407565b5f805f613bd28585613dfe565b909250905081613c435760018551613bea919061544d565b8414613c385760405162461bcd60e51b815260206004820152601d60248201527f6e616d65686173683a204a756e6b20617420656e64206f66206e616d6500000060448201526064016107ad565b505f91506107ea9050565b613c4d8582613bc5565b6040805160208101929092528101839052606001604051602081830303815290604052805190602001209250505092915050565b5f8181526001602052604090205460a081901c60c082901c613ca4838383612f4d565b5f86815260036020526040812080546001600160a01b0319169055909350613cd091508590848461375d565b60408051858152600160208201525f916001600160a01b0386169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b5f805f613d2a866107f0565b925092509250613d3b8683836136b6565b846001148015613d5c5750876001600160a01b0316836001600160a01b0316145b613d785760405162461bcd60e51b81526004016107ad90614f47565b866001600160a01b0316836001600160a01b031603613d9957505050611213565b613da58688848461375d565b60408051878152602081018790526001600160a01b03808a1692908b169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46118b6338989898989614041565b5f8083518310613e505760405162461bcd60e51b815260206004820152601e60248201527f726561644c6162656c3a20496e646578206f7574206f6620626f756e6473000060448201526064016107ad565b5f848481518110613e6357613e63614f33565b016020015160f81c90508015613e8f57613e8885613e82866001615460565b836140fb565b9250613e93565b5f92505b613e9d8185615460565b613ea8906001615460565b9150509250929050565b5f81815260036020526040902080546001600160a01b0319166001600160a01b0384169081179091558190613ee682611655565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6060600183511015613f4457604051631406d65b60e11b815260040160405180910390fd5b60ff83511115613f69578260405163e3ba295f60e01b81526004016107ad91906143d4565b82518383604051602001613f7f93929190615473565b604051602081830303815290604052905092915050565b61ffff811615801590613fae57506201000181811614155b156134025760405163a2a7201360e01b8152600481018390526024016107ad565b613fd98483613f96565b5f848152600160205260409020546001600160a01b0381161561403557613fff85613c81565b6040515f815285907fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c49060200160405180910390a25b6112138585858561411d565b6001600160a01b0384163b156133cb5760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e619061408590899089908890889088906004016154b7565b6020604051808303815f875af19250505080156140bf575060408051601f3d908101601f191682019092526140bc91810190615303565b60015b6140cb5761382761531e565b6001600160e01b0319811663f23a6e6160e01b146135f35760405162461bcd60e51b81526004016107ad906153bf565b82515f906141098385615460565b1115614113575f80fd5b5091016020012090565b835f808061412a846107f0565b9194509250905063ffff000082166001600160401b038087169083161115614150578195505b42826001600160401b03161061416557958617955b6001600160a01b038416156141bc5760405162461bcd60e51b815260206004820152601f60248201527f455243313135353a206d696e74206f66206578697374696e6720746f6b656e0060448201526064016107ad565b6001600160a01b03881661421c5760405162461bcd60e51b815260206004820152602160248201527f455243313135353a206d696e7420746f20746865207a65726f206164647265736044820152607360f81b60648201526084016107ad565b306001600160a01b038916036142915760405162461bcd60e51b815260206004820152603460248201527f455243313135353a206e65774f776e65722063616e6e6f74206265207468652060448201527313985b5955dc985c1c195c8818dbdb9d1c9858dd60621b60648201526084016107ad565b61429d8589898961375d565b60408051868152600160208201526001600160a01b038a16915f9133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4612789335f8a88600160405180602001604052805f815250614041565b6001600160a01b038116811461209b575f80fd5b5f8060408385031215614327575f80fd5b823561433281614302565b946020939093013593505050565b5f60208284031215614350575f80fd5b5035919050565b6001600160e01b03198116811461209b575f80fd5b5f6020828403121561437c575f80fd5b813561089981614357565b5f5b838110156143a1578181015183820152602001614389565b50505f910152565b5f81518084526143c0816020860160208601614387565b601f01601f19169290920160200192915050565b602081525f61089960208301846143a9565b5f80604083850312156143f7575f80fd5b82359150602083013561440981614302565b809150509250929050565b80356001600160401b038116811461442a575f80fd5b919050565b5f8060408385031215614440575f80fd5b8235915061445060208401614414565b90509250929050565b5f8083601f840112614469575f80fd5b5081356001600160401b0381111561447f575f80fd5b602083019150836020828501011115614496575f80fd5b9250929050565b5f805f805f608086880312156144b1575f80fd5b85356144bc81614302565b945060208601356144cc81614302565b93506040860135925060608601356001600160401b038111156144ed575f80fd5b6144f988828901614459565b969995985093965092949392505050565b5f6020828403121561451a575f80fd5b813561089981614302565b634e487b7160e01b5f52604160045260245ffd5b601f8201601f191681016001600160401b038111828210171561455e5761455e614525565b6040525050565b5f6001600160401b0382111561457d5761457d614525565b50601f01601f191660200190565b5f82601f83011261459a575f80fd5b81356145a581614565565b6040516145b28282614539565b8281528560208487010111156145c6575f80fd5b826020860160208301375f92810160200192909252509392505050565b803563ffffffff8116811461442a575f80fd5b5f805f805f805f60e0888a03121561460c575f80fd5b8735965060208801356001600160401b03811115614628575f80fd5b6146348a828b0161458b565b965050604088013561464581614302565b9450606088013561465581614302565b935061466360808901614414565b925061467160a089016145e3565b915061467f60c08901614414565b905092959891949750929550565b5f6001600160401b038211156146a5576146a5614525565b5060051b60200190565b5f82601f8301126146be575f80fd5b813560206146cb8261468d565b6040516146d88282614539565b80915083815260208101915060208460051b8701019350868411156146fb575f80fd5b602086015b84811015611e2d5780358352918301918301614700565b5f805f805f60a0868803121561472b575f80fd5b853561473681614302565b9450602086013561474681614302565b935060408601356001600160401b0380821115614761575f80fd5b61476d89838a016146af565b94506060880135915080821115614782575f80fd5b61478e89838a016146af565b935060808801359150808211156147a3575f80fd5b506147b08882890161458b565b9150509295509295909350565b5f805f80608085870312156147d0575f80fd5b84359350602085013592506147e7604086016145e3565b91506147f560608601614414565b905092959194509250565b803561ffff8116811461442a575f80fd5b5f8060408385031215614822575f80fd5b8235915061445060208401614800565b5f8060408385031215614843575f80fd5b82356001600160401b0380821115614859575f80fd5b818501915085601f83011261486c575f80fd5b813560206148798261468d565b6040516148868282614539565b83815260059390931b85018201928281019150898411156148a5575f80fd5b948201945b838610156148cc5785356148bd81614302565b825294820194908201906148aa565b965050860135925050808211156148e1575f80fd5b50613ea8858286016146af565b5f815180845260208085019450602084015f5b8381101561491d57815187529582019590820190600101614901565b509495945050505050565b602081525f61089960208301846148ee565b5f805f6060848603121561494c575f80fd5b833561495781614302565b9250602084013561496781614302565b929592945050506040919091013590565b5f805f6060848603121561498a575f80fd5b83359250602084013591506149a160408501614414565b90509250925092565b5f805f606084860312156149bc575f80fd5b8335925060208401356149ce81614302565b915060408401356149de81614302565b809150509250925092565b5f805f805f608086880312156149fd575f80fd5b85356001600160401b03811115614a12575f80fd5b614a1e88828901614459565b9096509450506020860135614a3281614302565b9250614a4060408701614800565b91506060860135614a5081614302565b809150509295509295909350565b801515811461209b575f80fd5b5f8060408385031215614a7c575f80fd5b8235614a8781614302565b9150602083013561440981614a5e565b5f805f805f8060a08789031215614aac575f80fd5b86356001600160401b03811115614ac1575f80fd5b614acd89828a01614459565b9097509550506020870135614ae181614302565b9350604087013592506060870135614af881614302565b9150614b0660808801614800565b90509295509295509295565b5f8060408385031215614b23575f80fd5b82359150614450602084016145e3565b5f8060408385031215614b44575f80fd5b50508035926020909101359150565b5f805f805f8060a08789031215614b68575f80fd5b8635955060208701356001600160401b03811115614b84575f80fd5b614b9089828a01614459565b9096509450506040870135614ba481614302565b9250614bb2606088016145e3565b9150614b0660808801614414565b5f805f8060408587031215614bd3575f80fd5b84356001600160401b0380821115614be9575f80fd5b614bf588838901614459565b90965094506020870135915080821115614c0d575f80fd5b50614c1a87828801614459565b95989497509550505050565b5f805f8060808587031215614c39575f80fd5b843593506020850135614c4b81614302565b925060408501356147e781614302565b5f805f60608486031215614c6d575f80fd5b833592506020840135915060408401356149de81614302565b5f8060408385031215614c97575f80fd5b8235614ca281614302565b9150602083013561440981614302565b5f805f8060608587031215614cc5575f80fd5b84356001600160401b03811115614cda575f80fd5b614ce687828801614459565b9095509350506020850135614cfa81614302565b91506040850135614d0a81614302565b939692955090935050565b5f805f805f60a08688031215614d29575f80fd5b8535614d3481614302565b94506020860135614d4481614302565b9350604086013592506060860135915060808601356001600160401b03811115614d6c575f80fd5b6147b08882890161458b565b5f60208284031215614d88575f80fd5b81516001600160401b03811115614d9d575f80fd5b8201601f81018413614dad575f80fd5b8051614db881614565565b604051614dc58282614539565b828152866020848601011115614dd9575f80fd5b610954836020830160208701614387565b9182526001600160a01b0316602082015260400190565b5f805f8060808587031215614e14575f80fd5b84356001600160401b03811115614e29575f80fd5b614e358782880161458b565b9450506020850135614e4681614302565b9250614e5460408601614800565b91506060850135614d0a81614302565b5f60208284031215614e74575f80fd5b5051919050565b634e487b7160e01b5f52601160045260245ffd5b6001600160401b03818116838216019080821115614eaf57614eaf614e7b565b5092915050565b600181811c90821680614eca57607f821691505b602082108103614ee857634e487b7160e01b5f52602260045260245ffd5b50919050565b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b634e487b7160e01b5f52603260045260245ffd5b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b604081525f614fa360408301856148ee565b8281036020840152614fb581856148ee565b95945050505050565b5f60208284031215614fce575f80fd5b815161089981614302565b5f60208284031215614fe9575f80fd5b815161089981614a5e565b818382375f9101908152919050565b60208082526028908201527f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f604082015267373a3937b63632b960c11b606082015260800190565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b60c081525f61508660c083018a8c61504b565b6001600160a01b03898116602085015263ffffffff891660408501526001600160401b03881660608501528616608084015282810360a08401526150cb81858761504b565b9b9a5050505050505050505050565b601f8211156108e057805f5260205f20601f840160051c810160208510156150ff5750805b601f840160051c820191505b81811015611213575f815560010161510b565b6001600160401b0383111561513557615135614525565b615149836151438354614eb6565b836150da565b5f601f84116001811461517a575f85156151635750838201355b5f19600387901b1c1916600186901b178355611213565b5f83815260208120601f198716915b828110156151a95786850135825560209485019460019092019101615189565b50868210156151c5575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b6001600160401b03828116828216039080821115614eaf57614eaf614e7b565b81516001600160401b0381111561521057615210614525565b6152248161521e8454614eb6565b846150da565b602080601f831160018114615257575f84156152405750858301515b5f19600386901b1c1916600185901b1785556133cb565b5f85815260208120601f198616915b8281101561528557888601518255948401946001909101908401615266565b50858210156152a257878501515f19600388901b60f8161c191681555b5050505050600190811b01905550565b6001600160a01b0386811682528516602082015260a0604082018190525f906152dd908301866148ee565b82810360608401526152ef81866148ee565b9050828103608084015261350481856143a9565b5f60208284031215615313575f80fd5b815161089981614357565b5f60033d11156153345760045f803e505f5160e01c5b90565b5f60443d10156153445790565b6040516003193d81016004833e81513d6001600160401b03816024840111818411171561537357505050505090565b828501915081518181111561538b5750505050505090565b843d87010160208285010111156153a55750505050505090565b6153b460208286010187614539565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b608081525f61541960808301876143a9565b6001600160a01b039590951660208301525063ffffffff9290921660408301526001600160401b0316606090910152919050565b818103818111156107ea576107ea614e7b565b808201808211156107ea576107ea614e7b565b60ff60f81b8460f81b1681525f8351615493816001850160208801614387565b8351908301906154aa816001840160208801614387565b0160010195945050505050565b6001600160a01b03868116825285166020820152604081018490526060810183905260a0608082018190525f906154f0908301846143a9565b97965050505050505056fe93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4aea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2a68925cf5169f28586095d5b5b9933b3008f4c793a48be4f59b8b2bc62aa60a":"0x1","0x54cdd369e4e8a8515e52ca72ec816c2101831ad1f18bf44102ed171459c9b4f8":"0x2","0xa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb49":"0xffffffffffffffff000100010000000000000000000000000000000000000000","0xafa26c20e8b3d9a2853d642cfe1021dae26242ffedfac91c97aab212c1a4b93b":"0xffffffffffffffff000100010000000000000000000000000000000000000000","0xef5b11c47ebee44618abc22110e10e3b408ea5e799056d2b38461aa7b97c5a97":"0x1","0xfb9e8e321b8a5ec48f12a7b41f22c6e595d761285c9eb19d8dda7c99edf1b54f":"0x36574680000000000000000000000000000000000000000000000000000000a"}},"0x6e1eb616c7d69491f9a880f815ff5574768cba20":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b506004361061007a575f3560e01c806314ab90381161005857806314ab90381461010357806316a25cbd146101165780631896f70a146101625780635b0fc9c314610175575f80fd5b80630178b8bf1461007e57806302571be3146100c657806306ab5923146100ee575b5f80fd5b6100a961008c366004610403565b5f908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100a96100d4366004610403565b5f908152602081905260409020546001600160a01b031690565b6101016100fc366004610435565b610188565b005b610101610111366004610467565b610242565b610149610124366004610403565b5f90815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100bd565b6101016101703660046104a1565b6102e2565b6101016101833660046104a1565b610374565b5f8381526020819052604090205483906001600160a01b031633146101ab575f80fd5b60408051602080820187905281830186905282518083038401815260608301808552815191909201206001600160a01b0386169091529151859187917fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829181900360800190a35f90815260208190526040902080546001600160a01b0319166001600160a01b039390931692909217909155505050565b5f8281526020819052604090205482906001600160a01b03163314610265575f80fd5b60405167ffffffffffffffff8316815283907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a2505f91825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b5f8281526020819052604090205482906001600160a01b03163314610305575f80fd5b6040516001600160a01b038316815283907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a2505f9182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b5f8281526020819052604090205482906001600160a01b03163314610397575f80fd5b6040516001600160a01b038316815283907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a2505f9182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b5f60208284031215610413575f80fd5b5035919050565b80356001600160a01b0381168114610430575f80fd5b919050565b5f805f60608486031215610447575f80fd5b833592506020840135915061045e6040850161041a565b90509250925092565b5f8060408385031215610478575f80fd5b82359150602083013567ffffffffffffffff81168114610496575f80fd5b809150509250929050565b5f80604083850312156104b2575f80fd5b823591506104c26020840161041a565b9050925092905056fea164736f6c6343000818000a","storage":{"0x859ecef2e168dc10231b000bd53493b42bc9d944cac29d94582c1e1d43592131":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x7bb6cd9be29fab783c0b494a06fed8b2e2596b7a":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100ea5760003560e01c80636debcb8d1161008c578063b34f33c511610066578063b34f33c514610741578063d0778d6c14610814578063ef2c3088146108f2578063f5090c1e14610980576100ea565b80636debcb8d146105ca5780636fab95b3146106585780637b1039991461071d576100ea565b8063511f1112116100c8578063511f1112146103c557806361603dd91461044857806368b6154f146104bd5780636ccbae5f1461059b576100ea565b806307eca395146100ef578063280d9b051461021457806330135293146102f2575b600080fd5b610212600480360360a081101561010557600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561013457600080fd5b82018360208201111561014657600080fd5b803590602001918460018302840111600160201b8311171561016757600080fd5b919390929091602081019035600160201b81111561018457600080fd5b82018360208201111561019657600080fd5b803590602001918460018302840111600160201b831117156101b757600080fd5b919390929091602081019035600160201b8111156101d457600080fd5b8201836020820111156101e657600080fd5b803590602001918460018302840111600160201b8311171561020757600080fd5b509092509050610aae565b005b610212600480360360a081101561022a57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561026457600080fd5b82018360208201111561027657600080fd5b803590602001918460018302840111600160201b8311171561029757600080fd5b919390929091602081019035600160201b8111156102b457600080fd5b8201836020820111156102c657600080fd5b803590602001918460018302840111600160201b831117156102e757600080fd5b509092509050610c92565b6102126004803603608081101561030857600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561033757600080fd5b82018360208201111561034957600080fd5b803590602001918460018302840111600160201b8311171561036a57600080fd5b919390929091602081019035600160201b81111561038757600080fd5b82018360208201111561039957600080fd5b803590602001918460018302840111600160201b831117156103ba57600080fd5b509092509050610e3d565b610212600480360360608110156103db57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561040a57600080fd5b82018360208201111561041c57600080fd5b803590602001918460018302840111600160201b8311171561043d57600080fd5b509092509050610fcc565b6102126004803603604081101561045e57600080fd5b81359190810190604081016020820135600160201b81111561047f57600080fd5b82018360208201111561049157600080fd5b803590602001918460018302840111600160201b831117156104b257600080fd5b5090925090506110c9565b610212600480360360a08110156104d357600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561050d57600080fd5b82018360208201111561051f57600080fd5b803590602001918460018302840111600160201b8311171561054057600080fd5b919390929091602081019035600160201b81111561055d57600080fd5b82018360208201111561056f57600080fd5b803590602001918460018302840111600160201b8311171561059057600080fd5b5090925090506111ae565b6105b8600480360360208110156105b157600080fd5b50356113a8565b60408051918252519081900360200190f35b610212600480360360808110156105e057600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561061a57600080fd5b82018360208201111561062c57600080fd5b803590602001918460018302840111600160201b8311171561064d57600080fd5b5090925090506113ba565b6102126004803603606081101561066e57600080fd5b81359190810190604081016020820135600160201b81111561068f57600080fd5b8201836020820111156106a157600080fd5b803590602001918460018302840111600160201b831117156106c257600080fd5b919390929091602081019035600160201b8111156106df57600080fd5b8201836020820111156106f157600080fd5b803590602001918460018302840111600160201b8311171561071257600080fd5b5090925090506114d4565b610725611675565b604080516001600160a01b039092168252519081900360200190f35b6102126004803603608081101561075757600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561078657600080fd5b82018360208201111561079857600080fd5b803590602001918460018302840111600160201b831117156107b957600080fd5b919390929091602081019035600160201b8111156107d657600080fd5b8201836020820111156107e857600080fd5b803590602001918460018302840111600160201b8311171561080957600080fd5b509092509050611684565b610212600480360360a081101561082a57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561086457600080fd5b82018360208201111561087657600080fd5b803590602001918460018302840111600160201b8311171561089757600080fd5b919390929091602081019035600160201b8111156108b457600080fd5b8201836020820111156108c657600080fd5b803590602001918460018302840111600160201b831117156108e757600080fd5b5090925090506117de565b6102126004803603608081101561090857600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561094257600080fd5b82018360208201111561095457600080fd5b803590602001918460018302840111600160201b8311171561097557600080fd5b5090925090506119e4565b610212600480360360c081101561099657600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156109d057600080fd5b8201836020820111156109e257600080fd5b803590602001918460018302840111600160201b83111715610a0357600080fd5b919390929091602081019035600160201b811115610a2057600080fd5b820183602082011115610a3257600080fd5b803590602001918460018302840111600160201b83111715610a5357600080fd5b919390929091602081019035600160201b811115610a7057600080fd5b820183602082011115610a8257600080fd5b803590602001918460018302840111600160201b83111715610aa357600080fd5b509092509050611ad3565b610bb163ce9fb82b89898989898960405160240180876001600160a01b03166001600160a01b0316815260200186815260200180602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f820116905080830192505050985050505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208884848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b600154604051630119f80560e21b81526001600160a01b038a811660048301908152602483018b9052608060448401908152608484018a90529190931692630467e014928c928c928c928c928c928c92909190606481019060a401878780828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f82011690508083019250505098505050505050505050600060405180830381600087803b158015610c7057600080fd5b505af1158015610c84573d6000803e3d6000fd5b505050505050505050505050565b610d8363b88d4fde888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040516315eab15d60e21b81526001600160a01b03898116600483019081528982166024840152604483018990526080606484019081526084840188905291909316926357aac574928b928b928b928b928b929160a401848480828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b158015610e1c57600080fd5b505af1158015610e30573d6000803e3d6000fd5b5050505050505050505050565b610f09637c69eae28787878760405160240180856001600160a01b03166001600160a01b0316815260200184815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09d909d1b9c909c178c529351909a208a51918d01849004840282018401909a528b81528f985096508b95508a94508493505085019050838280828437600092019190915250611d5492505050565b600154604051630119f80560e21b81526001600160a01b038881166004830190815260248301899052608060448401908152608484018890529190931692630467e014928a928a928a928a9290606481019060a401858580828437600081840152601f19601f8201169050808301925050508381038252600081526020016020019650505050505050600060405180830381600087803b158015610fac57600080fd5b505af1158015610fc0573d6000803e3d6000fd5b50505050505050505050565b604080516001600160a01b038616602482015260448082018690528251808303909101815260649091018252602081810180516001600160e01b0316632392c18960e01b17815291519091208251601f85018390048302810183019093528383526110569290918691908690869081908401838280828437600092019190915250611d5492505050565b60015460408051631292e83560e11b81526001600160a01b0387811660048301526024820187905291519190921691632525d06a91604480830192600092919082900301818387803b1580156110ab57600080fd5b505af11580156110bf573d6000803e3d6000fd5b5050505050505050565b6040805160248082018690528251808303909101815260449091018252602081810180516001600160e01b0316630852cd8d60e31b17815291519091208251601f85018390048302810183019093528383526111449290918691908690869081908401838280828437600092019190915250611d5492505050565b6001546040805163e67ca8a360e01b81526004810186905290516001600160a01b039092169163e67ca8a39160248082019260009290919082900301818387803b15801561119157600080fd5b505af11580156111a5573d6000803e3d6000fd5b50505050505050565b61129f639e5be9a5888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b03909316926302759c37928b928b9286926368b62d32928d928d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561132757600080fd5b505afa15801561133b573d6000803e3d6000fd5b505050506040513d602081101561135157600080fd5b5051604080516001600160e01b031960e087901b1681526001600160a01b03948516600482015292909316602483015260448201529051606480830192600092919082900301818387803b158015610e1c57600080fd5b60009081526020819052604090205490565b604080516001600160a01b0380881660248301528616604482015260648082018690528251808303909101815260849091018252602081810180516001600160e01b0316632142170760e11b17815291519091208251601f850183900483028101830190935283835261144c9290918691908690869081908401838280828437600092019190915250611d5492505050565b600154604080516315eab15d60e21b81526001600160a01b0388811660048301528781166024830152604482018790526080606483015260006084830181905292519316926357aac5749260c48084019391929182900301818387803b1580156114b557600080fd5b505af11580156114c9573d6000803e3d6000fd5b505050505050505050565b611585635cbe11128686866040516024018084815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09c909c1b9b909b178b5293519099208951918c018490048402820184019099528a81528e975095508a9450899350839250508401838280828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b039093169263e67ca8a39284926368b62d32928b928b928b929190606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561160b57600080fd5b505afa15801561161f573d6000803e3d6000fd5b505050506040513d602081101561163557600080fd5b5051604080516001600160e01b031960e085901b168152600481019290925251602480830192600092919082900301818387803b1580156114b557600080fd5b6001546001600160a01b031690565b61175063d8d3cc6e8787878760405160240180856001600160a01b03166001600160a01b0316815260200184815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09d909d1b9c909c178c529351909a208a51918d01849004840282018401909a528b81528f985096508b95508a94508493505085019050838280828437600092019190915250611d5492505050565b60015460405163b546666960e01b81526001600160a01b03888116600483019081526024830189905260606044840190815260648401889052919093169263b5466669928a928a928a928a9290608401848480828437600081840152601f19601f82011690508083019250505095505050505050600060405180830381600087803b158015610fac57600080fd5b6118cf639d743989888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b03909316926357aac574928b928b9286926368b62d32928d928d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561195757600080fd5b505afa15801561196b573d6000803e3d6000fd5b505050506040513d602081101561198157600080fd5b5051604080516001600160e01b031960e087901b1681526001600160a01b039485166004820152929093166024830152604482015260806064820152600060848201819052915160c4808301939282900301818387803b158015610e1c57600080fd5b604080516001600160a01b0380881660248301528616604482015260648082018690528251808303909101815260849091018252602081810180516001600160e01b03166323b872dd60e01b17815291519091208251601f8501839004830281018301909352838352611a769290918691908690869081908401838280828437600092019190915250611d5492505050565b600154604080516302759c3760e01b81526001600160a01b038881166004830152878116602483015260448201879052915191909216916302759c3791606480830192600092919082900301818387803b1580156114b557600080fd5b611bf063c29b52f98a8a8a8a8a8a8a60405160240180886001600160a01b03166001600160a01b03168152602001876001600160a01b03166001600160a01b0316815260200186815260200180602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f82011690508083019250505099505050505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208884848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b8152600481018a815260248201928352604482018990526001600160a01b03909316926357aac574928d928d9286926368b62d32928f928f928f92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b158015611c7857600080fd5b505afa158015611c8c573d6000803e3d6000fd5b505050506040513d6020811015611ca257600080fd5b50516040516001600160e01b031960e086901b1681526001600160a01b0380851660048301908152908416602483015260448201839052608060648301908152608483018b90528b928b92919060a401848480828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b158015611d3157600080fd5b505af1158015611d45573d6000803e3d6000fd5b50505050505050505050505050565b6000828152602081815260408083205481518084018890523060601b81840152605480820183905283518083039091018152607490910190925281519190920120909190611db3908490611da790611ea9565b9063ffffffff611efa16565b90506001600160a01b03811615801590611e4957506001546040805163430c208160e01b81526001600160a01b038481166004830152602482018890529151919092169163430c2081916044808301926020929190829003018186803b158015611e1c57600080fd5b505afa158015611e30573d6000803e3d6000fd5b505050506040513d6020811015611e4657600080fd5b50515b611e8e576040805162461bcd60e51b8152602060048201526011602482015270494e56414c49445f5349474e415455524560781b604482015290519081900360640190fd5b50505060009081526020819052604090208054600101905550565b604080517f19457468657265756d205369676e6564204d6573736167653a0a333200000000602080830191909152603c8083019490945282518083039094018452605c909101909152815191012090565b60008151604114611f0d57506000611fe3565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0821115611f535760009350505050611fe3565b8060ff16601b14158015611f6b57508060ff16601c14155b15611f7c5760009350505050611fe3565b6040805160008152602080820180845289905260ff8416828401526060820186905260808201859052915160019260a0808401939192601f1981019281900390910190855afa158015611fd3573d6000803e3d6000fd5b5050506020604051035193505050505b9291505056fea265627a7a7231582014816bfd0c1519ce8c4cf272eb0526ffdba3abef0df7f17deb0da40bd8abb77f64736f6c634300050c0032","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533"}},"0x7c3c91245769c8b7450ad522792dec4bd4bf797f":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b506004361061003f575f3560e01c80631bf7e13e146100435780636ccbae5f1461006c578063a424740014610099575b5f80fd5b610056610051366004610749565b6100bc565b604051610063919061082c565b60405180910390f35b61008b61007a36600461083e565b5f9081526001602052604090205490565b604051908152602001610063565b6100ac6100a7366004610749565b6101d6565b6040519015158152602001610063565b60605f5a90506100cd8585856101d6565b6101315760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e61676572466f727761726465723a205349474e415455604482015269149157d253959053125160b21b60648201526084015b60405180910390fd5b6101cb6101416020870187610870565b5f546001600160a01b031660408801358461015f60608b018b610889565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f9201919091525061023292505050565b9150505b9392505050565b5f61022a6101e38561093a565b5f54604080516020601f88018190048102820181019092528681526001600160a01b03909216919087908790819084018382808284375f9201919091525061030e92505050565b949350505050565b606061023d85610453565b5f80876001600160a01b0316866102568b8a898961047e565b60405161026391906109f5565b5f604051808303815f8787f1925050503d805f811461029d576040519150601f19603f3d011682016040523d82523d5f602084013e6102a2565b606091505b5090925090506102b3603f87610a10565b5a116102c1576102c1610a2f565b61030182826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506104ae565b9998505050505050505050565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015610352573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103769190610a43565b90505f6104238660600151805190602001208688602001516040516020016103c39392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561044957508551610449906001600160a01b031682866104e7565b9695505050505050565b5f8181526001602081905260409091205461046d91610a5a565b5f9182526001602052604090912055565b606082858560405160200161049593929190610a7f565b6040516020818303038152906040529050949350505050565b606083156104bd5750816101cf565b8251156104cd5782518084602001fd5b8160405162461bcd60e51b8152600401610128919061082c565b5f805f6104f48585610622565b90925090505f81600481111561050c5761050c610abd565b14801561052a5750856001600160a01b0316826001600160a01b0316145b1561053a576001925050506101cf565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401610561929190610ad1565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161059f91906109f5565b5f60405180830381855afa9150503d805f81146105d7576040519150601f19603f3d011682016040523d82523d5f602084013e6105dc565b606091505b50915091508180156105ef575080516020145b801561061657508051630b135d3f60e11b906106149083016020908101908401610a43565b145b98975050505050505050565b5f808251604103610656576020830151604084015160608501515f1a61064a87828585610664565b9450945050505061065d565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561069957505f90506003610740565b8460ff16601b141580156106b157508460ff16601c14155b156106c157505f90506004610740565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610712573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b03811661073a575f60019250925050610740565b91505f90505b94509492505050565b5f805f6040848603121561075b575f80fd5b833567ffffffffffffffff80821115610772575f80fd5b9085019060808288031215610785575f80fd5b9093506020850135908082111561079a575f80fd5b818601915086601f8301126107ad575f80fd5b8135818111156107bb575f80fd5b8760208285010111156107cc575f80fd5b6020830194508093505050509250925092565b5f5b838110156107f95781810151838201526020016107e1565b50505f910152565b5f81518084526108188160208601602086016107df565b601f01601f19169290920160200192915050565b602081525f6101cf6020830184610801565b5f6020828403121561084e575f80fd5b5035919050565b80356001600160a01b038116811461086b575f80fd5b919050565b5f60208284031215610880575f80fd5b6101cf82610855565b5f808335601e1984360301811261089e575f80fd5b83018035915067ffffffffffffffff8211156108b8575f80fd5b60200191503681900382131561065d575f80fd5b634e487b7160e01b5f52604160045260245ffd5b6040516080810167ffffffffffffffff81118282101715610903576109036108cc565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610932576109326108cc565b604052919050565b5f6080823603121561094a575f80fd5b6109526108e0565b61095b83610855565b81526020808401358183015260408401356040830152606084013567ffffffffffffffff8082111561098b575f80fd5b9085019036601f83011261099d575f80fd5b8135818111156109af576109af6108cc565b6109c1601f8201601f19168501610909565b915080825236848285010111156109d6575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b5f8251610a068184602087016107df565b9190910192915050565b5f82610a2a57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b5f60208284031215610a53575f80fd5b5051919050565b80820180821115610a7957634e487b7160e01b5f52601160045260245ffd5b92915050565b5f8451610a908184602089016107df565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f61022a604083018461080156fea164736f6c6343000818000a","storage":{"0x0":"0x39a27956b78d00a4e00ea8833ff0947410a2933f"}},"0x8861cdfa38838531275ce12f9e795c3b9ff29cbe":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x936188f2c3c8e8c95e425b6fe41c2ac9e701585e":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x94f57ed7e9af03a10e8eb23ce1b3c7914a182b0f":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x95f29431aeb52c0d5dbeeec36010b8e2ca69cb3d":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x9b2565a3545a1312bdcb6e7148a7f7cae8c2706b":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c806373cc48a61161008857806398d35f201161006357806398d35f2014610215578063bd7ed31a1461021d578063c327deef14610245578063d7b82ebe1461026d575f80fd5b806373cc48a6146101af5780638438dc04146101ef5780638da5cb5b14610202575f80fd5b806313af4035116100c357806313af40351461015657806328e7677d146101695780632c095cbb1461017c578063435cc1621461018f575f80fd5b8063020ed8d3146100e9578063087991bc146100fe5780630b1a249514610143575b5f80fd5b6100fc6100f73660046122ff565b610280565b005b61011161010c36600461238a565b610300565b6040805163ffffffff94851681529390921660208401526001600160601b031916908201526060015b60405180910390f35b6100fc610151366004612510565b61036c565b6100fc6101643660046125c6565b6104da565b6100fc6101773660046122ff565b610512565b6100fc61018a3660046125e1565b61058a565b6101a261019d366004612674565b610656565b60405161013a919061278c565b6101d76101bd36600461279e565b60046020525f90815260409020546001600160a01b031681565b6040516001600160a01b03909116815260200161013a565b6100fc6101fd3660046122ff565b6106d2565b6001546101d7906001600160a01b031681565b6101a261074a565b6101d761022b36600461279e565b60056020525f90815260409020546001600160a01b031681565b6101d761025336600461279e565b60036020525f90815260409020546001600160a01b031681565b6101a261027b3660046127b7565b6107d5565b6001546001600160a01b03163314610296575f80fd5b60ff82165f8181526003602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527ff73c3c226af96b7f1ba666a21b3ceaf2be3ee6a365e3178fd9cd1eaae0075aa891015b60405180910390a15050565b5f805f8060025f8787604051610317929190612817565b604080519182900390912082526020808301939093529081015f90812061ffff8b16825290925290205463ffffffff80821695506401000000008204169350600160401b900460601b91505093509350939050565b83516020808601919091205f90815260028252604080822061ffff891683529092529081205463ffffffff16906103a385846107ea565b90506103b0818784610889565b6103b8612239565b845151156103d7576103ca85856107ea565b90506103d7818885610889565b5f6103e1836108cc565b602081015190915060fe16156103f5575f80fd5b61040081602761092a565b158015610425575061041381600261092a565b1580610425575061042581600661092a565b61042d575f80fd5b61043e89898561012001518461093a565b156104795787516020808a01919091205f90815260028252604080822061ffff8d1683529092522080546001600160e01b03191690556104cf565b6104988884610120015183856101200151610493876108cc565b610968565b156100e55787516020808a01919091205f90815260028252604080822061ffff8d1683529092522080546001600160e01b03191690555b505050505050505050565b6001546001600160a01b031633146104f0575f80fd5b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6001546001600160a01b03163314610528575f80fd5b60ff82165f8181526004602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527f2fcc274c3b72dd483ab201bfa87295e3817e8b9b10693219873b722ca1af00c791016102f4565b610592612239565b61059c83836107ea565b805190915061ffff16602f146105b0575f80fd5b60a081015184516020808701919091205f90815260028252604080822061ffff8a16835290925220546105e9919063ffffffff16610a7c565b6105f1575f80fd5b5f6105fb82610a94565b9050805151602082015110156100e55761061c818361012001518789610aab565b505082516020808501919091205f90815260028252604080822061ffff881683529092522080546001600160e01b03191690555b50505050565b60605f83838080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201829052509394505050505b85518110156106c7576106bd8682815181106106af576106af612826565b602002602001015183610c4a565b9150600101610691565b5090505b9392505050565b6001546001600160a01b031633146106e8575f80fd5b60ff82165f8181526005602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527fc7eec866a7a1386188cc3ca20ffea75b71bd3e90a60b6791b1d3f0971145118d91016102f4565b5f80546107569061283a565b80601f01602080910402602001604051908101604052809291908181526020018280546107829061283a565b80156107cd5780601f106107a4576101008083540402835291602001916107cd565b820191905f5260205f20905b8154815290600101906020018083116107b057829003601f168201915b505050505081565b60606107e18383610c4a565b90505b92915050565b6107f2612239565b82516107fd90610dc6565b905061080d8160e0015183610ebf565b610815575f80fd5b5f61082382835f0151610f25565b604083015190915060ff16610838825f610fcc565b14610841575f80fd5b610120820181905260808201516108589042610a7c565b610860575f80fd5b61086e428360a00151610a7c565b610876575f80fd5b61088281838686611026565b5092915050565b6108978360a0015182610a7c565b61089f575f80fd5b825161ffff166032146108b0575f80fd5b6108bf83610120015183611106565b6108c7575f80fd5b505050565b6040805160c0810182525f8082526020820181905291810182905260608082018190526080820183905260a08201529061090583610a94565b60a081015160c08201519192506106cb91610921908290612880565b83519190611172565b5f6107e18360a001515f846112b4565b5f6109468284866113c1565b1561095d57610955828661092a565b159050610960565b505f5b949350505050565b60208101515f9060fe161561097b575f80fd5b5f610985866113e6565b90505f610991856113e6565b90505f8061099f8a82611401565b6109aa906001612893565b60ff1690505b8951811015610a6b57836109dc896109d784858f516109cf9190612880565b8f9190611424565b6114a4565b03610a3f575f6109f7876109d785868f516109cf9190612880565b90508660800151841015610a23578381118015610a175750866080015181105b95505050505050610a73565b83811180610a1757508660800151811095505050505050610a73565b905080610a4c8a82611401565b610a57906001612893565b610a649060ff16826128ac565b90506109b0565b505f93505050505b95945050505050565b5f80610a8883856128bf565b60030b12159392505050565b610a9c61228e565b6107e48261010001515f61152d565b60a084015184515f90610abe9083611548565b90505f8660a001518760c00151610ad59190612880565b9050818111610ae2575f80fd5b5f610aed868861159f565b9050805f03610b1a57610b0c610b0384866128ac565b895190876112b4565b15610b15575f80fd5b610b5b565b87515f90610b29908686611424565b90505f8213610b36575f80fd5b5f610b41898361159f565b12156104cf575f610b52888361159f565b126104cf575f80fd5b5050505050505050565b60c08101516020820181905281515111610b7c5750565b5f610b8e825f01518360200151611548565b8260200151610b9d91906128ac565b8251909150610bac90826116ec565b61ffff166040830152610bc06002826128ac565b8251909150610bcf90826116ec565b61ffff166060830152610be36002826128ac565b8251909150610bf29082611712565b63ffffffff166080830152610c086004826128ac565b82519091505f90610c1990836116ec565b61ffff169050610c2a6002836128ac565b60a084018190529150610c3d81836128ac565b60c0909301929092525050565b6060610c54612239565b610c5e84846107ea565b61012081015180516020918201205f908152600282526040808220845161ffff16835290925220805491925090600160401b900460601b6001600160601b03191615610cc35760a08201518154610cbb919063ffffffff16610a7c565b610cc3575f80fd5b604080516060808201835260a085015163ffffffff9081168352608086015181166020808501918252610100880180518051908301206001600160601b0319168688019081526101208a0180518051908501205f908152600285528981208c5161ffff16825290945292889020965187549451915190961c600160401b0268010000000000000000600160e01b03199186166401000000000267ffffffffffffffff19909516969095169590951792909217939093169190911790925551905191517f55ced933cdd5a34dd03eb5d4bef19ec6ebb251dcd7a988eee0c1b9a13baaa88b92610db192916128e6565b60405180910390a15061010001519392505050565b610dce612239565b610dd8825f6116ec565b61ffff168152610de9826002611401565b60ff166020820152610dfc826003611401565b60ff166040820152610e0f826004611712565b63ffffffff9081166060830152610e2b90839060089061171216565b63ffffffff9081166080830152610e47908390600c9061171216565b63ffffffff90811660a0830152610e639083906010906116ec16565b61ffff1660c0820152610e7782601261173a565b60e0820181905251610eb490610e8e9060126128ac565b8260e001515160128551610ea29190612880565b610eac9190612880565b849190611424565b610100820152919050565b5f80610ed5610ece8483611548565b84906116ec565b83516020808601919091208651878301205f90815260028352604080822061ffff90951682529390925291902054600160401b900460601b6001600160601b031990811691161491505092915050565b60605f610f3184610a94565b90505b8051516020820151101561088257606081015161ffff16600114610f56575f80fd5b81515f03610f6e57610f6781611754565b9150610fa7565b60208101518151610f7e91611548565b825114610f89575f80fd5b805160208201518351610f9f9285925f92611775565b610fa7575f80fd5b8261ffff16816040015161ffff1614610fbe575f80fd5b610fc781610b65565b610f34565b5f805b83518310610fdf57610fdf61290a565b5f610fea8585611401565b60ff169050610ffa8160016128ac565b61100490856128ac565b9350805f0361101357506107e1565b61101e6001836128ac565b915050610fcf565b83518360e00151511115611038575f80fd5b61105c5f858560e0015151875161104f9190612880565b60e0870151929190611797565b611064575f80fd5b5f61106f828261152d565b9050602b61ffff16816040015161ffff160361109d576110908484836117cb565b611098575f80fd5b6110ff565b603061ffff16816040015161ffff16036110bc5761109084848361185f565b60405162461bcd60e51b8152602060048201526014602482015273139bc81d985b1a59081c1c9bdbd988199bdd5b9960621b604482015260640160405180910390fd5b5050505050565b5f806111128482611401565b61111d906001612893565b60ff1690505f5b835181101561095d5761113984828785611797565b15611149576001925050506107e4565b6111538482611401565b61115e906001612893565b61116b9060ff16826128ac565b9050611124565b6040805160c0810182525f8082526020820181905291810182905260608082018190526080820183905260a0820152906111ac83856128ac565b90506111c26111bb5f866128ac565b8690611401565b60ff1682526111d56111bb6001866128ac565b60ff1660208301526111f26111eb6002866128ac565b86906116ec565b61ffff1660408301525f61121161120a6004876128ac565b8790611401565b905061121e6005866128ac565b945061122e868660ff8416611424565b606084015261124060ff8216866128ac565b94505f61124d8787611401565b905060208160ff16111561125f575f80fd5b61126a6001876128ac565b955061127a878760ff8416611900565b608085015261128c60ff8216876128ac565b95506112a48661129c8186612880565b899190611424565b60a0850152509195945050505050565b5f60ff600883811c82169183916112cc918616612932565b90505f6112dd600780871690612952565b600160ff919091161b9050855b87518110156113b4575f6112fe8983611401565b90505f61131661130f8460016128ac565b8b90611401565b90508160ff168660ff161015611334575f96505050505050506106cb565b8160ff168660ff1603611393578460ff168160ff161161135c575f96505050505050506106cb565b8361137f61136d60ff8816866128ac565b6113789060026128ac565b8c90611401565b1660ff165f141596505050505050506106cb565b61139e816002612893565b6113ab9060ff16846128ac565b925050506112ea565b505f979650505050505050565b5f806113cd85846114a4565b90505f6113d9856113e6565b9190911495945050505050565b5f6107e460016113f68484611401565b84919060ff1661193d565b5f82828151811061141457611414612826565b016020015160f81c905092915050565b825160609061143383856128ac565b111561143d575f80fd5b5f8267ffffffffffffffff811115611457576114576123d9565b6040519080825280601f01601f191660200182016040528015611481576020820181803683370190505b50905060208082019086860101611499828287611b43565b509095945050505050565b815160ff165f9081526005602052604080822054606085015182860151925163347ced5960e11b81526001600160a01b03909216926368f9dab2926114ee9291879160040161296b565b602060405180830381865afa158015611509573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107e191906129a4565b61153561228e565b82815260c081018290526107e481610b65565b5f815b8351811061155b5761155b61290a565b5f6115668583611401565b60ff1690506115768160016128ac565b61158090836128ac565b9150805f0361158f5750611595565b5061154b565b6109608382612880565b5f6115aa8383611b98565b156115b657505f6107e4565b5f805f805f6115c5885f610fcc565b90505f6115d2885f610fcc565b90505b808211156115fe578593506115ea8987611bb3565b9550816115f6816129bb565b9250506115d5565b81811115611627578492506116138886611bb3565b94508061161f816129bb565b9150506115fe565b5f8211801561163f575061163d89878a88611797565b155b15611674578593506116518987611bb3565b95508492506116608886611bb3565b945061166d600183612880565b9150611627565b855f0361168a575f1996505050505050506107e4565b845f036116a057600196505050505050506107e4565b6116df6116ae8560016128ac565b6116b88b87611401565b60ff168a6116c78760016128ac565b6116d18d89611401565b8e949392919060ff16611bd6565b9998505050505050505050565b81515f906116fb8360026128ac565b1115611705575f80fd5b50016002015161ffff1690565b81515f906117218360046128ac565b111561172b575f80fd5b50016004015163ffffffff1690565b60605f6117478484611548565b9050610960848483611424565b602081015181516060916107e49161176c9082611548565b84519190611424565b5f611781848484611cc6565b61178c878785611cc6565b149695505050505050565b5f6117af83838486516117aa9190612880565b611cc6565b6117c186868789516117aa9190612880565b1495945050505050565b5f806117d685610a94565b90505b8051516020820151101561095d57604081015161ffff166030146117fb575f80fd5b5f61180582611ce8565b90505f61181e5f835184611d049092919063ffffffff16565b905061182c81838989611da0565b1561184f5761184561183d84611754565b868385611e9b565b93505050506106cb565b505061185a81610b65565b6117d9565b5f6118778460e0015161187184611754565b90611b98565b61187f575f80fd5b815151602083015110156118f75761189e8460e0015161187184611754565b6118a6575f80fd5b5f6118b083611ce8565b90505f6118c95f835184611d049092919063ffffffff16565b90506118d781838888611da0565b156118e7576001925050506106cb565b50506118f282610b65565b61187f565b505f9392505050565b5f602082111561190e575f80fd5b835161191a83856128ac565b1115611924575f80fd5b506020919092018101519190036101000a5f1901191690565b5f603482111561194b575f80fd5b5f80805b84811015611a29575f8761196383896128ac565b8151811061197357611973612826565b01602001516001600160f81b0319169050600360fc1b81108015906119a65750603d60f91b6001600160f81b0319821611155b6119ae575f80fd5b604051806080016040528060478152602001612b5c604791396119d6603060f884901c612880565b815181106119e6576119e6612826565b0160209081015160f81c93508311156119fd575f80fd5b611a08600187612880565b8203611a145750611a29565b5060059290921b60ff8216179160010161194f565b505f611a368560056129d0565b9050611a436008866129e7565b5f03611a5a578160ff16600584901b179250611b29565b611a656008866129e7565b600203611a935760028260ff16901c60ff16600384901b179250600281611a8c9190612880565b9050611b29565b611a9e6008866129e7565b600403611ac55760048260ff16901c60ff16600184901b179250600481611a8c9190612880565b611ad06008866129e7565b600503611af75760018260ff16901c60ff16600484901b179250600181611a8c9190612880565b611b026008866129e7565b6007036100e55760038260ff16901c60ff16600284901b179250600381611a8c9190612880565b611b3581610100612880565b9290921b9695505050505050565b60208110611b7b5781518352611b5a6020846128ac565b9250611b676020836128ac565b9150611b74602082612880565b9050611b43565b905182516020929092036101000a5f190180199091169116179052565b5f815183511480156107e157506107e1835f845f8751611775565b5f611bbe8383611401565b60ff16611bcc8360016128ac565b6107e191906128ac565b5f8480831015611be35750815b6020878901810190858701015f5b83811015611cab5782518251808214611c7b575f6020871115611c1657505f19611c52565b600184611c24896020612880565b611c2e91906128ac565b611c399060086129d0565b611c44906002612ada565b611c4e9190612880565b1990505b5f611c61838316858416612ae5565b90508015611c78579750611cbc9650505050505050565b50505b611c866020866128ac565b9450611c936020856128ac565b93505050602081611ca491906128ac565b9050611bf1565b50611cb68589612ae5565b93505050505b9695505050505050565b82515f90611cd483856128ac565b1115611cde575f80fd5b5091016020012090565b60a081015160c08201516060916107e49161176c908290612880565b604080516080810182525f8082526020820181905291810191909152606080820152611d3a611d335f856128ac565b85906116ec565b61ffff168152611d55611d4e6002856128ac565b8590611401565b60ff166020820152611d6b611d4e6003856128ac565b60ff166040820152611d94611d816004856128ac565b611d8c600485612880565b869190611424565b60608201529392505050565b5f846020015160ff16600314611db757505f610960565b826020015160ff16856040015160ff1614611dd357505f610960565b5f611ddd85611f96565b90508360c0015161ffff168161ffff1614611dfb575f915050610960565b8551610100165f03611e10575f915050610960565b60408087015160ff165f908152600360209081529082902054855191860151925163de8f50a160e01b81526001600160a01b039091169263de8f50a192611e5c928a9290600401612b04565b602060405180830381865afa158015611e77573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611cbc9190612b3c565b5f80611ea683611f96565b90505b84515160208601511015611f8b5760a085015160c08601515f91611edb91611ed2908290612880565b88519190611d04565b90508161ffff16815f015161ffff1614611ef55750611f7d565b846040015160ff16816020015160ff1614611f105750611f7d565b60408051808201909152606081525f6020820152611f3c85518951611f3591906128ac565b8290611ff7565b50611f47818961205a565b50611f52818661205a565b50611f698260400151825f0151846060015161207f565b15611f7a5760019350505050610960565b50505b611f8685610b65565b611ea9565b505f95945050505050565b5f805f5b8351811015611fe8576001811615611fbe57611fb68482611401565b60ff16611fd0565b6008611fca8583611401565b60ff16901b5b611fde9061ffff16836128ac565b9150600101611f9a565b506106cb601082901c826128ac565b60408051808201909152606081525f60208201526120166020836129e7565b1561203e576120266020836129e7565b612031906020612880565b61203b90836128ac565b91505b506020828101829052604080518085525f815290920101905290565b60408051808201909152606081525f60208201526107e183845f015151848551612126565b60ff83165f908152600460205260408120546001600160a01b03166120a557505f6106cb565b60ff84165f90815260046020819052604091829020549151637bf41d7760e11b81526001600160a01b039092169163f7e83aee916120e79187918791016128e6565b602060405180830381865afa158015612102573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109609190612b3c565b60408051808201909152606081525f60208201528251821115612147575f80fd5b602085015161215683866128ac565b111561218957612189856121798760200151878661217491906128ac565b61220c565b6121849060026129d0565b612222565b5f808651805187602083010193508088870111156121a75787860182525b505050602084015b602084106121e757805182526121c66020836128ac565b91506121d36020826128ac565b90506121e0602085612880565b93506121af565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b5f8183111561221c5750816107e4565b50919050565b815161222e8383611ff7565b50610650838261205a565b60408051610140810182525f8082526020820181905291810182905260608082018390526080820183905260a0820183905260c082019290925260e08101829052610100810182905261012081019190915290565b6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b803560ff811681146122e3575f80fd5b919050565b6001600160a01b03811681146122fc575f80fd5b50565b5f8060408385031215612310575f80fd5b612319836122d3565b91506020830135612329816122e8565b809150509250929050565b803561ffff811681146122e3575f80fd5b5f8083601f840112612355575f80fd5b50813567ffffffffffffffff81111561236c575f80fd5b602083019150836020828501011115612383575f80fd5b9250929050565b5f805f6040848603121561239c575f80fd5b6123a584612334565b9250602084013567ffffffffffffffff8111156123c0575f80fd5b6123cc86828701612345565b9497909650939450505050565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff81118282101715612416576124166123d9565b604052919050565b5f82601f83011261242d575f80fd5b813567ffffffffffffffff811115612447576124476123d9565b61245a601f8201601f19166020016123ed565b81815284602083860101111561246e575f80fd5b816020850160208301375f918101602001919091529392505050565b5f6040828403121561249a575f80fd5b6040516040810167ffffffffffffffff82821081831117156124be576124be6123d9565b8160405282935084359150808211156124d5575f80fd5b6124e18683870161241e565b835260208501359150808211156124f6575f80fd5b506125038582860161241e565b6020830152505092915050565b5f805f805f60a08688031215612524575f80fd5b61252d86612334565b9450602086013567ffffffffffffffff80821115612549575f80fd5b61255589838a0161241e565b9550604088013591508082111561256a575f80fd5b61257689838a0161248a565b9450606088013591508082111561258b575f80fd5b61259789838a0161248a565b935060808801359150808211156125ac575f80fd5b506125b98882890161241e565b9150509295509295909350565b5f602082840312156125d6575f80fd5b81356107e1816122e8565b5f805f80608085870312156125f4575f80fd5b6125fd85612334565b9350602085013567ffffffffffffffff80821115612619575f80fd5b6126258883890161241e565b9450604087013591508082111561263a575f80fd5b6126468883890161248a565b9350606087013591508082111561265b575f80fd5b506126688782880161241e565b91505092959194509250565b5f805f60408486031215612686575f80fd5b833567ffffffffffffffff8082111561269d575f80fd5b818601915086601f8301126126b0575f80fd5b81356020828211156126c4576126c46123d9565b8160051b6126d38282016123ed565b928352848101820192828101908b8511156126ec575f80fd5b83870192505b8483101561272657823586811115612708575f80fd5b6127168d86838b010161248a565b83525091830191908301906126f2565b985050508701359250508082111561273c575f80fd5b506123cc86828701612345565b5f81518084525f5b8181101561276d57602081850181015186830182015201612751565b505f602082860101526020601f19601f83011685010191505092915050565b602081525f6107e16020830184612749565b5f602082840312156127ae575f80fd5b6107e1826122d3565b5f80604083850312156127c8575f80fd5b823567ffffffffffffffff808211156127df575f80fd5b6127eb8683870161248a565b93506020850135915080821115612800575f80fd5b5061280d8582860161241e565b9150509250929050565b818382375f9101908152919050565b634e487b7160e01b5f52603260045260245ffd5b600181811c9082168061284e57607f821691505b60208210810361221c57634e487b7160e01b5f52602260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b818103818111156107e4576107e461286c565b60ff81811683821601908111156107e4576107e461286c565b808201808211156107e4576107e461286c565b600382810b9082900b03637fffffff198112637fffffff821317156107e4576107e461286c565b604081525f6128f86040830185612749565b8281036020840152610a738185612749565b634e487b7160e01b5f52600160045260245ffd5b634e487b7160e01b5f52601260045260245ffd5b5f61ffff808416806129465761294661291e565b92169190910492915050565b60ff82811682821603908111156107e4576107e461286c565b606081525f61297d6060830186612749565b828103602084015261298f8186612749565b91505061ffff83166040830152949350505050565b5f602082840312156129b4575f80fd5b5051919050565b5f816129c9576129c961286c565b505f190190565b80820281158282048414176107e4576107e461286c565b5f826129f5576129f561291e565b500690565b600181815b80851115612a3457815f1904821115612a1a57612a1a61286c565b80851615612a2757918102915b93841c93908002906129ff565b509250929050565b5f82612a4a575060016107e4565b81612a5657505f6107e4565b8160018114612a6c5760028114612a7657612a92565b60019150506107e4565b60ff841115612a8757612a8761286c565b50506001821b6107e4565b5060208310610133831016604e8410600b8410161715612ab5575081810a6107e4565b612abf83836129fa565b805f1904821115612ad257612ad261286c565b029392505050565b5f6107e18383612a3c565b8181035f8312801583831316838312821617156108825761088261286c565b606081525f612b166060830186612749565b8281036020840152612b288186612749565b90508281036040840152611cbc8185612749565b5f60208284031215612b4c575f80fd5b815180151581146107e1575f80fdfe00010203040506070809ffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fffffffffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fa164736f6c6343000818000a","storage":{"0x0":"0xbd","0x1":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1471eb6eb2c5e789fc3de43f8ce62938c7d1836ec861730447e2ada8fd81017b":"0x17cda4e23f7237277952e075b1c48467aabfacc0","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563":"0x2b000100000e1000244a5c080249aac11d7b6f6446702e54a1607371607a","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e564":"0x1a41855200fd2ce1cdde32f24e8fb500002b000100000e1000244f660802e06d","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e565":"0x44b80b8f1d39a95c0b0d7c65d08458e880409bbc683457104237c7f8ec8d0000","0x3617319a054d772f909f7c479a2cebe5066e836a939412e32403c99029b92eff":"0x5155f5627bdf9795b3dbb8887001ada1eeba93f2","0x85aaa47b6dc46495bb8824fad4583769726fea36efd831a35556690b830a8fbe":"0x6e2822b8856749ed179c77140dbc5f5a27410a4","0x91da3fd0782e51c6b3986e9e672fd566868e71f3dbc2d6c2cd6fbb3e361af2a7":"0x49da8861c65460639925febe1fb4b5b59b443082","0x95c6356c1b7a542b884d2484ef785c9c7224e77e1016c20007bddc15c23b452f":"0x3f9151d3fd1a82dcc5091909589900fd60ee767ee090bba000000000","0xabd6e7cb50984ff9c2f3e18a2660c3353dadf4e3291deeb275dae2cd1e44fe05":"0x458f653495fb8d9bd0e7df468c2bf76d26c7bd9"}},"0x9dc64b2558b458a15c7f01c192d874ef460f0a29":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x9df67c91f1bfcb4d966cf764e9218685e7c59e8a":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101d1575f3560e01c80638b95dd71116100fe578063c86902331161009e578063e32954eb1161006e578063e32954eb146104f2578063e59d895d14610505578063e985e9c514610518578063f1cb7e0614610553575f80fd5b8063c869023314610435578063ce3decdc1461048c578063d5fa2b001461049f578063d700ff33146104b2575f80fd5b8063a8fa5682116100d9578063a8fa5682146103ac578063a9784b3e146103bf578063ac9650d814610402578063bc1c58d114610422575f80fd5b80638b95dd7114610373578063a22cb46514610386578063a4b91a0114610399575f80fd5b80633603d758116101745780635c98042b116101445780635c98042b14610327578063623195b01461033a578063691f34311461034d5780637737221314610360575f80fd5b80633603d758146102975780633b3b57de146102aa5780634cbf6ba4146102bd57806359d1d43c14610307575f80fd5b8063124a319c116101af578063124a319c146102255780632203ab561461025057806329cd62ea14610271578063304e6ade14610284575f80fd5b806301ffc9a7146101d55780630af179d7146101fd57806310f13a8c14610212575b5f80fd5b6101e86101e3366004612267565b610566565b60405190151581526020015b60405180910390f35b61021061020b3660046122bd565b610576565b005b610210610220366004612304565b610778565b610238610233366004612377565b610842565b6040516001600160a01b0390911681526020016101f4565b61026361025e3660046123a1565b610a87565b6040516101f492919061240e565b61021061027f366004612426565b610bb5565b6102106102923660046122bd565b610c4d565b6102106102a536600461244f565b610cc6565b6102386102b836600461244f565b610d64565b6101e86102cb3660046123a1565b5f82815260208181526040808320546001600160401b031683526006825280832094835293815283822092825291909152205461ffff16151590565b61031a6103153660046122bd565b610d93565b6040516101f49190612466565b61031a61033536600461244f565b610e6f565b610210610348366004612478565b610f2a565b61031a61035b36600461244f565b610fc2565b61021061036e3660046122bd565b610ffa565b6102106103813660046124da565b611073565b6102106103943660046125b9565b611150565b6102106103a73660046125e3565b61122a565b61031a6103ba36600461261e565b6112f6565b6101e86103cd36600461265a565b6001600160a01b039283165f908152600c60209081526040808320948352938152838220929094168152925290205460ff1690565b6104156104103660046126ce565b611342565b6040516101f4919061270c565b61031a61043036600461244f565b61134f565b61047761044336600461244f565b5f81815260208181526040808320546001600160401b03168352600982528083209383529290522080546001909101549091565b604080519283526020830191909152016101f4565b61021061049a3660046122bd565b611387565b6102106104ad36600461276e565b6114c3565b6104da6104c036600461244f565b5f602081905290815260409020546001600160401b031681565b6040516001600160401b0390911681526020016101f4565b61041561050036600461279c565b6114e9565b6102106105133660046127d6565b6114fe565b6101e8610526366004612808565b6001600160a01b039182165f908152600b6020908152604080832093909416825291909152205460ff1690565b61031a6105613660046123a1565b6115a2565b5f61057082611666565b92915050565b826105808161168a565b610588575f80fd5b5f84815260208181526040808320548151601f87018490048402810184019092528582528392606092839285926001600160401b039091169183916105eb9183918d908d90819084018382808284375f9201919091525092939250506118b79050565b90505b80515160208201511015610712578661ffff165f03610652578060400151965061061781611912565b94508460405160200161062a9190612834565b60405160208183030381529060405280519060200120925061064b81611933565b9350610704565b5f61065c82611912565b9050816040015161ffff168861ffff16141580610680575061067e868261194f565b155b15610702576106db8c878a8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250505060208801518d91506106d2908290612863565b8b51158a61196a565b8160400151975081602001519650809550858051906020012093506106ff82611933565b94505b505b61070d81611bc9565b6105ee565b5083511561076c5761076c8a85888c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c925061076391508290508f612863565b8951158861196a565b50505050505050505050565b846107828161168a565b61078a575f80fd5b5f86815260208181526040808320546001600160401b03168352600a8252808320898452909152908190209051849184916107c89089908990612876565b908152602001604051809103902091826107e3929190612901565b5084846040516107f4929190612876565b6040518091039020867f448bc014f1536726cf8d54ff3d6481ed3cbc683c2591ca204274009afa09b1a18787878760405161083294939291906129e2565b60405180910390a3505050505050565b5f82815260208181526040808320546001600160401b031683526007825280832085845282528083206001600160e01b0319851684529091528120546001600160a01b03168015610894579050610570565b5f61089e85610d64565b90506001600160a01b0381166108b8575f92505050610570565b6040516301ffc9a760e01b60248201525f9081906001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b1790525161090f9190612834565b5f60405180830381855afa9150503d805f8114610947576040519150601f19603f3d011682016040523d82523d5f602084013e61094c565b606091505b509150915081158061095f575060208151105b80610989575080601f8151811061097857610978612a13565b01602001516001600160f81b031916155b1561099a575f945050505050610570565b6040516001600160e01b0319871660248201526001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b179052516109f09190612834565b5f60405180830381855afa9150503d805f8114610a28576040519150601f19603f3d011682016040523d82523d5f602084013e610a2d565b606091505b509092509050811580610a41575060208151105b80610a6b575080601f81518110610a5a57610a5a612a13565b01602001516001600160f81b031916155b15610a7c575f945050505050610570565b509095945050505050565b5f82815260208181526040808320546001600160401b03168352600180835281842086855290925282206060915b848111610b975780851615801590610ae457505f8181526020839052604081208054610ae090612885565b9050115b15610b8f5780825f8381526020019081526020015f20808054610b0690612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610b3290612885565b8015610b7d5780601f10610b5457610100808354040283529160200191610b7d565b820191905f5260205f20905b815481529060010190602001808311610b6057829003601f168201915b50505050509050935093505050610bae565b60011b610ab5565b505f60405180602001604052805f81525092509250505b9250929050565b82610bbf8161168a565b610bc7575f80fd5b60408051808201825284815260208082018581525f888152808352848120546001600160401b031681526009835284812089825283528490209251835551600190920191909155815185815290810184905285917f1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e4691015b60405180910390a250505050565b82610c578161168a565b610c5f575f80fd5b5f84815260208181526040808320546001600160401b03168352600382528083208784529091529020610c93838583612901565b50837fe379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d75788484604051610c3f929190612a27565b80610cd08161168a565b610cd8575f80fd5b5f82815260208190526040812080546001600160401b031691610cfa83612a3a565b82546101009290920a6001600160401b038181021990931691831602179091555f84815260208181526040918290205491519190921681528492507fc6621ccb8f3f5a04bb6502154b2caf6adf5983fe76dfef1cfc9c42e3579db444910160405180910390a25050565b5f80610d7183603c6115a2565b905080515f03610d8357505f92915050565b610d8c81611cae565b9392505050565b5f83815260208181526040808320546001600160401b03168352600a825280832086845290915290819020905160609190610dd19085908590612876565b90815260200160405180910390208054610dea90612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610e1690612885565b8015610e615780601f10610e3857610100808354040283529160200191610e61565b820191905f5260205f20905b815481529060010190602001808311610e4457829003601f168201915b505050505090509392505050565b5f81815260208181526040808320546001600160401b03168352600482528083208484529091529020805460609190610ea790612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610ed390612885565b8015610f1e5780601f10610ef557610100808354040283529160200191610f1e565b820191905f5260205f20905b815481529060010190602001808311610f0157829003601f168201915b50505050509050919050565b83610f348161168a565b610f3c575f80fd5b83610f48600182612863565b1615610f52575f80fd5b5f85815260208181526040808320546001600160401b031683526001825280832088845282528083208784529091529020610f8e838583612901565b50604051849086907faa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe3905f90a35050505050565b5f81815260208181526040808320546001600160401b03168352600882528083208484529091529020805460609190610ea790612885565b826110048161168a565b61100c575f80fd5b5f84815260208181526040808320546001600160401b03168352600882528083208784529091529020611040838583612901565b50837fb7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f78484604051610c3f929190612a27565b8261107d8161168a565b611085575f80fd5b837f65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af75284846040516110b792919061240e565b60405180910390a2603c830361110e57837f52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd26110f284611cae565b6040516001600160a01b03909116815260200160405180910390a25b5f84815260208181526040808320546001600160401b0316835260028252808320878452825280832086845290915290206111498382612a5f565b5050505050565b6001600160a01b03821633036111bf5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084015b60405180910390fd5b335f818152600b602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6001600160a01b03821633036112825760405162461bcd60e51b815260206004820181905260248201527f53657474696e672064656c65676174652073746174757320666f722073656c6660448201526064016111b6565b335f818152600c6020908152604080832087845282528083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519384529286917ff0ddb3b04746704017f9aa8bd728fcc2c1d11675041205350018915f5e4750a0910160405180910390a4505050565b5f83815260208181526040808320546001600160401b03168352600582528083208684528252808320858452825280832061ffff851684529091529020805460609190610dea90612885565b6060610d8c5f8484611ccb565b5f81815260208181526040808320546001600160401b03168352600382528083208484529091529020805460609190610ea790612885565b826113918161168a565b611399575f80fd5b5f84815260208181526040808320546001600160401b031680845260048352818420888552909252822080549192916113d190612885565b80601f01602080910402602001604051908101604052809291908181526020018280546113fd90612885565b80156114485780601f1061141f57610100808354040283529160200191611448565b820191905f5260205f20905b81548152906001019060200180831161142b57829003601f168201915b505050506001600160401b0384165f9081526004602090815260408083208b8452909152902091925061147e9050858783612901565b50857f8f15ed4b723ef428f250961da8315675b507046737e19319fc1a4d81bfe87f858287876040516114b393929190612b1e565b60405180910390a2505050505050565b816114cd8161168a565b6114d5575f80fd5b6114e483603c61038185611e88565b505050565b60606114f6848484611ccb565b949350505050565b826115088161168a565b611510575f80fd5b5f84815260208181526040808320546001600160401b031683526007825280832087845282528083206001600160e01b031987168085529083529281902080546001600160a01b0319166001600160a01b038716908117909155905190815286917f7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa910160405180910390a350505050565b5f82815260208181526040808320546001600160401b0316835260028252808320858452825280832084845290915290208054606091906115e290612885565b80601f016020809104026020016040519081016040528092919081815260200182805461160e90612885565b80156116595780601f1061163057610100808354040283529160200191611659565b820191905f5260205f20905b81548152906001019060200180831161163c57829003601f168201915b5050505050905092915050565b5f6001600160e01b03198216631674750f60e21b1480610570575061057082611eb8565b5f336001600160a01b037f0000000000000000000000004fbf7b2f171336958be5d15ff762a5cff53635681614806116ea5750336001600160a01b037f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5616145b156116f757506001919050565b6040516302571be360e01b8152600481018390525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa15801561175c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117809190612b4d565b90507f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b0316816001600160a01b031603611845576040516331a9108f60e11b8152600481018490527f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b031690636352211e90602401602060405180830381865afa15801561181e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118429190612b4d565b90505b6001600160a01b03811633148061187e57506001600160a01b0381165f908152600b6020908152604080832033845290915290205460ff165b80610d8c57506001600160a01b0381165f908152600c60209081526040808320868452825280832033845290915290205460ff16610d8c565b6118ff6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261057081611bc9565b602081015181516060916105709161192a9082611edc565b84519190611f33565b60a081015160c08201516060916105709161192a908290612863565b5f81518351148015610d8c5750610d8c835f845f8751611fa7565b865160208801205f61197d878787611f33565b90508315611aa1576001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c168452909152902080546119c690612885565b159050611a23576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611a0783612b68565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091528120611a62916121f9565b897f03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a12078a8a604051611a94929190612b84565b60405180910390a261076c565b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c16845290915290208054611ae290612885565b90505f03611b40576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611b2483612ba9565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091529020611b808282612a5f565b50897f52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b8a8a84604051611bb593929190612bbf565b60405180910390a250505050505050505050565b60c08101516020820181905281515111611be05750565b5f611bf2825f01518360200151611edc565b8260200151611c019190612bed565b8251909150611c109082611fc9565b61ffff166040830152611c24600282612bed565b8251909150611c339082611fc9565b61ffff166060830152611c47600282612bed565b8251909150611c569082611fef565b63ffffffff166080830152611c6c600482612bed565b82519091505f90611c7d9083611fc9565b61ffff169050611c8e600283612bed565b60a084018190529150611ca18183612bed565b60c0909301929092525050565b5f8151601414611cbc575f80fd5b5060200151600160601b900490565b6060816001600160401b03811115611ce557611ce56124c6565b604051908082528060200260200182016040528015611d1857816020015b6060815260200190600190039081611d035790505b5090505f5b82811015611e80578415611dd8575f848483818110611d3e57611d3e612a13565b9050602002810190611d509190612c00565b611d5f91602491600491612c42565b611d6891612c69565b9050858114611dd65760405162461bcd60e51b815260206004820152603460248201527f6d756c746963616c6c3a20416c6c207265636f726473206d7573742068617665604482015273040c240dac2e8c6d0d2dcce40dcc2dacad0c2e6d60631b60648201526084016111b6565b505b5f8030868685818110611ded57611ded612a13565b9050602002810190611dff9190612c00565b604051611e0d929190612876565b5f60405180830381855af49150503d805f8114611e45576040519150601f19603f3d011682016040523d82523d5f602084013e611e4a565b606091505b509150915081611e58575f80fd5b80848481518110611e6b57611e6b612a13565b60209081029190910101525050600101611d1d565b509392505050565b604080516014808252818301909252606091602082018180368337505050600160601b9290920260208301525090565b5f6001600160e01b0319821663c869023360e01b1480610570575061057082612017565b5f815b83518110611eef57611eef612c86565b5f611efa858361203b565b60ff169050611f0a816001612bed565b611f149083612bed565b9150805f03611f235750611f29565b50611edf565b6114f68382612863565b8251606090611f428385612bed565b1115611f4c575f80fd5b5f826001600160401b03811115611f6557611f656124c6565b6040519080825280601f01601f191660200182016040528015611f8f576020820181803683370190505b50905060208082019086860101610a7c82828761205e565b5f611fb38484846120b3565b611fbe8787856120b3565b149695505050505050565b81515f90611fd8836002612bed565b1115611fe2575f80fd5b50016002015161ffff1690565b81515f90611ffe836004612bed565b1115612008575f80fd5b50016004015163ffffffff1690565b5f6001600160e01b0319821663691f343160e01b14806105705750610570826120d5565b5f82828151811061204e5761204e612a13565b016020015160f81c905092915050565b602081106120965781518352612075602084612bed565b9250612082602083612bed565b915061208f602082612863565b905061205e565b905182516020929092036101000a5f190180199091169116179052565b82515f906120c18385612bed565b11156120cb575f80fd5b5091016020012090565b5f6001600160e01b031982166304928c6760e21b14806105705750610570825f6001600160e01b0319821663547d2b4160e11b148061212457506001600160e01b03198216635c98042b60e01b145b806105705750610570825f6001600160e01b0319821663bc1c58d160e01b14806105705750610570825f6001600160e01b03198216631d9dabef60e11b148061217d57506001600160e01b031982166378e5bf0360e11b145b806105705750610570825f6001600160e01b03198216631101d5ab60e11b14806105705750610570825f6001600160e01b0319821663d700ff3360e01b14806105705750610570825f6001600160e01b03198216634fbf043360e01b148061057057506301ffc9a760e01b6001600160e01b0319831614610570565b50805461220590612885565b5f825580601f10612214575050565b601f0160209004905f5260205f20908101906122309190612233565b50565b5b80821115612247575f8155600101612234565b5090565b80356001600160e01b031981168114612262575f80fd5b919050565b5f60208284031215612277575f80fd5b610d8c8261224b565b5f8083601f840112612290575f80fd5b5081356001600160401b038111156122a6575f80fd5b602083019150836020828501011115610bae575f80fd5b5f805f604084860312156122cf575f80fd5b8335925060208401356001600160401b038111156122eb575f80fd5b6122f786828701612280565b9497909650939450505050565b5f805f805f60608688031215612318575f80fd5b8535945060208601356001600160401b0380821115612335575f80fd5b61234189838a01612280565b90965094506040880135915080821115612359575f80fd5b5061236688828901612280565b969995985093965092949392505050565b5f8060408385031215612388575f80fd5b823591506123986020840161224b565b90509250929050565b5f80604083850312156123b2575f80fd5b50508035926020909101359150565b5f5b838110156123db5781810151838201526020016123c3565b50505f910152565b5f81518084526123fa8160208601602086016123c1565b601f01601f19169290920160200192915050565b828152604060208201525f6114f660408301846123e3565b5f805f60608486031215612438575f80fd5b505081359360208301359350604090920135919050565b5f6020828403121561245f575f80fd5b5035919050565b602081525f610d8c60208301846123e3565b5f805f806060858703121561248b575f80fd5b843593506020850135925060408501356001600160401b038111156124ae575f80fd5b6124ba87828801612280565b95989497509550505050565b634e487b7160e01b5f52604160045260245ffd5b5f805f606084860312156124ec575f80fd5b833592506020840135915060408401356001600160401b0380821115612510575f80fd5b818601915086601f830112612523575f80fd5b813581811115612535576125356124c6565b604051601f8201601f19908116603f0116810190838211818310171561255d5761255d6124c6565b81604052828152896020848701011115612575575f80fd5b826020860160208301375f6020848301015280955050505050509250925092565b6001600160a01b0381168114612230575f80fd5b80358015158114612262575f80fd5b5f80604083850312156125ca575f80fd5b82356125d581612596565b9150612398602084016125aa565b5f805f606084860312156125f5575f80fd5b83359250602084013561260781612596565b9150612615604085016125aa565b90509250925092565b5f805f60608486031215612630575f80fd5b8335925060208401359150604084013561ffff8116811461264f575f80fd5b809150509250925092565b5f805f6060848603121561266c575f80fd5b833561267781612596565b925060208401359150604084013561264f81612596565b5f8083601f84011261269e575f80fd5b5081356001600160401b038111156126b4575f80fd5b6020830191508360208260051b8501011115610bae575f80fd5b5f80602083850312156126df575f80fd5b82356001600160401b038111156126f4575f80fd5b6127008582860161268e565b90969095509350505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b8281101561276157603f1988860301845261274f8583516123e3565b94509285019290850190600101612733565b5092979650505050505050565b5f806040838503121561277f575f80fd5b82359150602083013561279181612596565b809150509250929050565b5f805f604084860312156127ae575f80fd5b8335925060208401356001600160401b038111156127ca575f80fd5b6122f78682870161268e565b5f805f606084860312156127e8575f80fd5b833592506127f86020850161224b565b9150604084013561264f81612596565b5f8060408385031215612819575f80fd5b823561282481612596565b9150602083013561279181612596565b5f82516128458184602087016123c1565b9190910192915050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156105705761057061284f565b818382375f9101908152919050565b600181811c9082168061289957607f821691505b6020821081036128b757634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156114e457805f5260205f20601f840160051c810160208510156128e25750805b601f840160051c820191505b81811015611149575f81556001016128ee565b6001600160401b03831115612918576129186124c6565b61292c836129268354612885565b836128bd565b5f601f84116001811461295d575f85156129465750838201355b5f19600387901b1c1916600186901b178355611149565b5f83815260208120601f198716915b8281101561298c578685013582556020948501946001909201910161296c565b50868210156129a8575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b604081525f6129f56040830186886129ba565b8281036020840152612a088185876129ba565b979650505050505050565b634e487b7160e01b5f52603260045260245ffd5b602081525f6114f66020830184866129ba565b5f6001600160401b03808316818103612a5557612a5561284f565b6001019392505050565b81516001600160401b03811115612a7857612a786124c6565b612a8c81612a868454612885565b846128bd565b602080601f831160018114612abf575f8415612aa85750858301515b5f19600386901b1c1916600185901b178555612b16565b5f85815260208120601f198616915b82811015612aed57888601518255948401946001909101908401612ace565b5085821015612b0a57878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b604081525f612b3060408301866123e3565b8281036020840152612b438185876129ba565b9695505050505050565b5f60208284031215612b5d575f80fd5b8151610d8c81612596565b5f61ffff821680612b7b57612b7b61284f565b5f190192915050565b604081525f612b9660408301856123e3565b905061ffff831660208301529392505050565b5f61ffff808316818103612a5557612a5561284f565b606081525f612bd160608301866123e3565b61ffff851660208401528281036040840152612b4381856123e3565b808201808211156105705761057061284f565b5f808335601e19843603018112612c15575f80fd5b8301803591506001600160401b03821115612c2e575f80fd5b602001915036819003821315610bae575f80fd5b5f8085851115612c50575f80fd5b83861115612c5c575f80fd5b5050820193919092039150565b80356020831015610570575f19602084900360031b1b1692915050565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{}},"0xa06a63155145b7f2fda96d9658ec7fef3b9dcf76":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b506004361061004a575f3560e01c80634ce34aa21461004e578063899e104c1461007e5780638df25d9214610091578063c4e8fcb5146100a4575b5f80fd5b61006161005c366004610834565b6100b9565b6040516001600160e01b0319909116815260200160405180910390f35b61006161008c3660046108b4565b610121565b61006161009f36600461091b565b61018a565b6100b76100b2366004610969565b6101c7565b005b5f335f525f60205260405f20546100dd576349ed56f960e11b5f523360045260245ffd5b815f5b81811015610110576101088585838181106100fd576100fd6109a2565b905060c002016102c4565b6001016100e0565b50632671a55160e11b949350505050565b5f335f525f60205260405f2054610145576349ed56f960e11b5f523360045260245ffd5b835f5b8181101561016d576101658787838181106100fd576100fd6109a2565b600101610148565b506101788484610436565b50632267841360e21b95945050505050565b5f335f525f60205260405f20546101ae576349ed56f960e11b5f523360045260245ffd5b6101b88383610436565b506346f92ec960e11b92915050565b336001600160a01b037f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c1614610210576040516336abb4df60e11b815260040160405180910390fd5b6001600160a01b0382165f9081526020819052604090205481151560ff909116151503610268576040516349271a0f60e11b81526001600160a01b038316600482015281151560248201526044015b60405180910390fd5b6001600160a01b0382165f8181526020818152604091829020805460ff191685151590811790915591519182527fae63067d43ac07563b7eb8db6595635fc77f1578a2a5ea06ba91b63e2afa37e2910160405180910390a25050565b60016102d360208301836109ca565b60038111156102e4576102e46109b6565b03610329576103266102fc60408301602084016109ef565b61030c60608401604085016109ef565b61031c60808501606086016109ef565b8460a0013561056c565b50565b600261033860208301836109ca565b6003811115610349576103496109b6565b036103b6578060a00135600114610379576040516369f9582760e01b815260a0820135600482015260240161025f565b61032661038c60408301602084016109ef565b61039c60608401604085016109ef565b6103ac60808501606086016109ef565b8460800135610660565b60036103c560208301836109ca565b60038111156103d6576103d66109b6565b0361041d576103266103ee60408301602084016109ef565b6103fe60608401604085016109ef565b61040e60808501606086016109ef565b84608001358560a00135610715565b604051631e4cbc7f60e21b815260040160405180910390fd5b808280631759616b60e11b6020525f5b8381101561055f57823582018035803b61046b57635f15d6725f52806020526024601cfd5b60a08201358060051b60c0018060808501351460a0606086013514168185013583141615905080156104a657633ae8821360e21b5f5260045ffd5b506020860195506080602084016024378060061b60400190508060a00160a4525f8160c401528060c4018160a0850160c4375f808260205f875af1935083610550573d1561053057601f3d0160051c91508060051c826003028184111561051a578184036003028280028580020360091c01015b5a60208201101561052d573d5f803e3d5ffd5b50505b6357e222f160e11b5f528260045260c0606452608451602001608452805ffd5b50505050600181019050610446565b5050505060806040525050565b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166106515780873b15151661065157806106405781610623573d1561060257601f3d0160051c8360051c81600302818311156105eb578183036003028280028480020360091c01015b5a6020820110156105fe573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b833b61067757635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af180610707573d156106e557601f3d0160051c8260051c81600302818311156106ce578183036003028280028480020360091c01015b5a6020820110156106e1573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b61072c57635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af1806107d1573d156107b057601f3d0160051c8560051c8160030281831115610799578183036003028280028480020360091c01015b5a6020820110156107ac573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b5f8083601f8401126107fc575f80fd5b50813567ffffffffffffffff811115610813575f80fd5b60208301915083602060c08302850101111561082d575f80fd5b9250929050565b5f8060208385031215610845575f80fd5b823567ffffffffffffffff81111561085b575f80fd5b610867858286016107ec565b90969095509350505050565b5f8083601f840112610883575f80fd5b50813567ffffffffffffffff81111561089a575f80fd5b6020830191508360208260051b850101111561082d575f80fd5b5f805f80604085870312156108c7575f80fd5b843567ffffffffffffffff808211156108de575f80fd5b6108ea888389016107ec565b90965094506020870135915080821115610902575f80fd5b5061090f87828801610873565b95989497509550505050565b5f806020838503121561092c575f80fd5b823567ffffffffffffffff811115610942575f80fd5b61086785828601610873565b80356001600160a01b0381168114610964575f80fd5b919050565b5f806040838503121561097a575f80fd5b6109838361094e565b915060208301358015158114610997575f80fd5b809150509250929050565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52602160045260245ffd5b5f602082840312156109da575f80fd5b8135600481106109e8575f80fd5b9392505050565b5f602082840312156109ff575f80fd5b6109e88261094e56fea164736f6c6343000818000a","storage":{}},"0xaa33d7188eb4b4a51c37199eaad2f73cf2bf0204":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0xac52f68f31577e44ae0c7e95a42dc9eb574b9383":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a424740014610090575b600080fd5b610059610054366004610cac565b6100b3565b6040516100669190610d9b565b60405180910390f35b61008261007d366004610dae565b610162565b604051908152602001610066565b6100a361009e366004610cac565b6101d6565b6040519015158152602001610066565b606060005a90506101576100ca6020870187610ddc565b6001546001600160a01b03166040880135846100e960608b018b610df9565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061023592505050565b9150505b9392505050565b600154604051636ccbae5f60e01b8152600481018390526000916001600160a01b031690636ccbae5f90602401602060405180830381865afa1580156101ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d09190610e40565b92915050565b600061022d6101e485610ef1565b600154604080516020601f88018190048102820181019092528681526001600160a01b039092169190879087908190840183828082843760009201919091525061030d92505050565b949350505050565b6060600080876001600160a01b0316866102518b8a8989610355565b60405161025e9190610f9b565b60006040518083038160008787f1925050503d806000811461029c576040519150601f19603f3d011682016040523d82523d6000602084013e6102a1565b606091505b5090925090506102b2603f87610fb7565b5a116102c0576102c0610fd9565b61030082826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061040a565b9998505050505050505050565b600061031a848484610443565b801561022d575060608401516020908101516001600160e01b031990811660009081529182905260409091205460e01b16151561022d565b50565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036103e75760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526103ff82828661058c565b979650505050505050565b6060831561041957508161015b565b8251156104295782518084602001fd5b8160405162461bcd60e51b81526004016103de9190610d9b565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561048a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104ae9190610e40565b9050600061055c8660600151805190602001208688602001516040516020016104fc9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561058257508551610582906001600160a01b03168286610a38565b9695505050505050565b60606001600160e01b03198416631de5861160e31b0361061a576000806000858060200190518101906105bf9190610fef565b92509250925086838383886040516024016105dd9493929190611032565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152935061015b92505050565b6001600160e01b03198416636debcb8d60e01b0361064b576000806000858060200190518101906105bf9190610fef565b6001600160e01b0319841663280d9b0560e01b036106dd576000806000808680602001905181019061067d91906110aa565b935093509350935087848484848a60405160240161069f959493929190611118565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152945061015b9350505050565b6001600160e01b031984166361603dd960e01b0361075c5760008380602001905181019061070b9190610e40565b905084818460405160240161072192919061115d565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152915061015b9050565b6001600160e01b0319841663b34f33c560e01b036107ab5760008060008580602001905181019061078d9190611176565b92509250925086838383886040516024016105dd94939291906111d0565b6001600160e01b03198416633013529360e01b036107dc5760008060008580602001905181019061078d9190611176565b6001600160e01b031984166307eca39560e01b03610830576000806000808680602001905181019061080e9190611209565b935093509350935087848484848a60405160240161069f95949392919061127e565b6001600160e01b031984166368b6154f60e01b03610862576000806000808680602001905181019061067d91906110aa565b6001600160e01b0319841663341de35b60e21b03610894576000806000808680602001905181019061067d91906110aa565b6001600160e01b03198416637a84860f60e11b0361092d576000806000806000878060200190518101906108c891906112cb565b945094509450945094508885858585858c6040516024016108ee96959493929190611360565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152955061015b945050505050565b6001600160e01b03198416636fab95b360e01b036109b2576000808480602001905181019061095c91906113b9565b915091508582828660405160240161097693929190611400565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925061015b915050565b6001600160e01b0319841663288f888960e11b0361015b57600080848060200190518101906109e1919061142b565b91509150858282866040516024016109fb93929190611459565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925050509392505050565b6000806000610a478585610b7a565b90925090506000816004811115610a6057610a60611489565b148015610a7e5750856001600160a01b0316826001600160a01b0316145b15610a8e5760019250505061015b565b600080876001600160a01b0316631626ba7e60e01b8888604051602401610ab692919061115d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051610af49190610f9b565b600060405180830381855afa9150503d8060008114610b2f576040519150601f19603f3d011682016040523d82523d6000602084013e610b34565b606091505b5091509150818015610b47575080516020145b8015610b6e57508051630b135d3f60e11b90610b6c9083016020908101908401610e40565b145b98975050505050505050565b6000808251604103610bb05760208301516040840151606085015160001a610ba487828585610bbf565b94509450505050610bb8565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610bf65750600090506003610ca3565b8460ff16601b14158015610c0e57508460ff16601c14155b15610c1f5750600090506004610ca3565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610c73573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610c9c57600060019250925050610ca3565b9150600090505b94509492505050565b600080600060408486031215610cc157600080fd5b833567ffffffffffffffff80821115610cd957600080fd5b9085019060808288031215610ced57600080fd5b90935060208501359080821115610d0357600080fd5b818601915086601f830112610d1757600080fd5b813581811115610d2657600080fd5b876020828501011115610d3857600080fd5b6020830194508093505050509250925092565b60005b83811015610d66578181015183820152602001610d4e565b50506000910152565b60008151808452610d87816020860160208601610d4b565b601f01601f19169290920160200192915050565b60208152600061015b6020830184610d6f565b600060208284031215610dc057600080fd5b5035919050565b6001600160a01b038116811461035257600080fd5b600060208284031215610dee57600080fd5b813561015b81610dc7565b6000808335601e19843603018112610e1057600080fd5b83018035915067ffffffffffffffff821115610e2b57600080fd5b602001915036819003821315610bb857600080fd5b600060208284031215610e5257600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610e9257610e92610e59565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ec157610ec1610e59565b604052919050565b600067ffffffffffffffff821115610ee357610ee3610e59565b50601f01601f191660200190565b600060808236031215610f0357600080fd5b610f0b610e6f565b8235610f1681610dc7565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610f4657600080fd5b840136601f820112610f5757600080fd5b8035610f6a610f6582610ec9565b610e98565b8181523684838501011115610f7e57600080fd5b818484018583013760009181019093015250606082015292915050565b60008251610fad818460208701610d4b565b9190910192915050565b600082610fd457634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b60008060006060848603121561100457600080fd5b835161100f81610dc7565b602085015190935061102081610dc7565b80925050604084015190509250925092565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061058290830184610d6f565b600082601f83011261107657600080fd5b8151611084610f6582610ec9565b81815284602083860101111561109957600080fd5b61022d826020830160208701610d4b565b600080600080608085870312156110c057600080fd5b84516110cb81610dc7565b60208601519094506110dc81610dc7565b60408601516060870151919450925067ffffffffffffffff81111561110057600080fd5b61110c87828801611065565b91505092959194509250565b6001600160a01b038681168252851660208201526040810184905260a06060820181905260009061114b90830185610d6f565b8281036080840152610b6e8185610d6f565b82815260406020820152600061022d6040830184610d6f565b60008060006060848603121561118b57600080fd5b835161119681610dc7565b60208501516040860151919450925067ffffffffffffffff8111156111ba57600080fd5b6111c686828701611065565b9150509250925092565b60018060a01b03851681528360208201526080604082015260006111f76080830185610d6f565b82810360608401526103ff8185610d6f565b6000806000806080858703121561121f57600080fd5b845161122a81610dc7565b60208601516040870151919550935067ffffffffffffffff8082111561124f57600080fd5b61125b88838901611065565b9350606087015191508082111561127157600080fd5b5061110c87828801611065565b60018060a01b038616815284602082015260a0604082015260006112a560a0830186610d6f565b82810360608401526112b78186610d6f565b90508281036080840152610b6e8185610d6f565b600080600080600060a086880312156112e357600080fd5b85516112ee81610dc7565b60208701519095506112ff81610dc7565b60408701516060880151919550935067ffffffffffffffff8082111561132457600080fd5b61133089838a01611065565b9350608088015191508082111561134657600080fd5b5061135388828901611065565b9150509295509295909350565b6001600160a01b038781168252861660208201526040810185905260c06060820181905260009061139390830186610d6f565b82810360808401526113a58186610d6f565b905082810360a08401526103008185610d6f565b600080604083850312156113cc57600080fd5b82519150602083015167ffffffffffffffff8111156113ea57600080fd5b6113f685828601611065565b9150509250929050565b8381526060602082015260006114196060830185610d6f565b82810360408401526105828185610d6f565b6000806040838503121561143e57600080fd5b825161144981610dc7565b6020939093015192949293505050565b60018060a01b03841681528260208201526060604082015260006114806060830184610d6f565b95945050505050565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a","storage":{"0x1":"0x7bb6cd9be29fab783c0b494a06fed8b2e2596b7a","0xd8b896d609e853134f3f02ce62d8049b2fdfe9356134f6d548fb1beda30db79":"0x30135293","0x4f457f36b92dc6b16c281e5877e2d8d39630135c1b7246fa9174035e1efcefbd":"0x6fab95b3","0x6b7ba3fe9941e089de60543da4a1deaef065baa963222951b2f9a138f9960820":"0x6debcb8d","0x70cff8e4ee4af5aa154324d45bcf258212c235bbe79f0707bb6273110ef4e13a":"0xf5090c1e","0x73efb0e44094dbabc6bbeecd3be1d81f272157c2dae2d647e6315f150b0b1dd2":"0xd0778d6c","0x8b1c4edded6644848281eab03ac2c319242d62b2057cffa3dd4540715bbc155e":"0xef2c3088","0xbeb5ea8fc2aeae43b7170220434aa4429fb067f0866ae25514b29f647641ca8c":"0x511f1112","0xca659f6eb372ce950e69d4d474290a6a4285f6a06a6128ca9f45419371a1e997":"0xb34f33c5","0xd12e300b5f35ba5198dd81dab97a512a154a0ad0e2cda788abdc22deba64f2a7":"0x280d9b05","0xd5453e7f4fff276a1d42f717d1db50865c284ae707a15bd6a590a3895656f27c":"0x7eca395","0xea2575ae4056f10294a848ca5ed6d215dffd1b80838142770bc441f7df607d71":"0x61603dd9","0xf8ca3ef1e3d09a0d88e209301f12626c90bec3ea586d4bce2c7a58e7eae8278f":"0x68b6154f"}},"0xb17aae5b3a7815433fc82cfd67ea245767894f03":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061012a5760003560e01c80638d839ffe116100ab578063aeb8ce9b1161006f578063aeb8ce9b146105d7578063ce1e09c014610688578063f14fcbc81461069d578063f2fde38b146106c7578063f49826be146106fa578063f7a16963146107b95761012a565b80638d839ffe1461045d5780638da5cb5b146104725780638f32d59b146104a35780639791c097146104b8578063acf1a841146105695761012a565b80637e324479116100f25780637e324479146102b8578063839df945146102e857806383e7f6ff1461031257806385f6d155146103c55780638a95b09f146104485761012a565b806301ffc9a71461012f5780633ccfd60b146101775780633d86c52f1461018e578063530e784f14610270578063715018a6146102a3575b600080fd5b34801561013b57600080fd5b506101636004803603602081101561015257600080fd5b50356001600160e01b031916610881565b604080519115158252519081900360200190f35b34801561018357600080fd5b5061018c610a12565b005b34801561019a57600080fd5b5061025e600480360360a08110156101b157600080fd5b810190602081018135600160201b8111156101cb57600080fd5b8201836020820111156101dd57600080fd5b803590602001918460018302840111600160201b831117156101fe57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b0383358116945060208401359360408101358216935060600135169050610a53565b60408051918252519081900360200190f35b34801561027c57600080fd5b5061018c6004803603602081101561029357600080fd5b50356001600160a01b0316610b42565b3480156102af57600080fd5b5061018c610ba3565b3480156102c457600080fd5b5061018c600480360360408110156102db57600080fd5b5080359060200135610bfe565b3480156102f457600080fd5b5061025e6004803603602081101561030b57600080fd5b5035610c1a565b34801561031e57600080fd5b5061025e6004803603604081101561033557600080fd5b810190602081018135600160201b81111561034f57600080fd5b82018360208201111561036157600080fd5b803590602001918460018302840111600160201b8311171561038257600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505091359250610c2c915050565b61018c600480360360808110156103db57600080fd5b810190602081018135600160201b8111156103f557600080fd5b82018360208201111561040757600080fd5b803590602001918460018302840111600160201b8311171561042857600080fd5b91935091506001600160a01b038135169060208101359060400135610d9e565b34801561045457600080fd5b5061025e610de9565b34801561046957600080fd5b5061025e610df0565b34801561047e57600080fd5b50610487610df6565b604080516001600160a01b039092168252519081900360200190f35b3480156104af57600080fd5b50610163610e05565b3480156104c457600080fd5b50610163600480360360208110156104db57600080fd5b810190602081018135600160201b8111156104f557600080fd5b82018360208201111561050757600080fd5b803590602001918460018302840111600160201b8311171561052857600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610e16945050505050565b61018c6004803603604081101561057f57600080fd5b810190602081018135600160201b81111561059957600080fd5b8201836020820111156105ab57600080fd5b803590602001918460018302840111600160201b831117156105cc57600080fd5b919350915035610e2b565b3480156105e357600080fd5b50610163600480360360208110156105fa57600080fd5b810190602081018135600160201b81111561061457600080fd5b82018360208201111561062657600080fd5b803590602001918460018302840111600160201b8311171561064757600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610fcf945050505050565b34801561069457600080fd5b5061025e611069565b3480156106a957600080fd5b5061018c600480360360208110156106c057600080fd5b503561106f565b3480156106d357600080fd5b5061018c600480360360208110156106ea57600080fd5b50356001600160a01b03166110a1565b34801561070657600080fd5b5061025e6004803603606081101561071d57600080fd5b810190602081018135600160201b81111561073757600080fd5b82018360208201111561074957600080fd5b803590602001918460018302840111600160201b8311171561076a57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b0383351693505050602001356110bb565b61018c600480360360c08110156107cf57600080fd5b810190602081018135600160201b8111156107e957600080fd5b8201836020820111156107fb57600080fd5b803590602001918460018302840111600160201b8311171561081c57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b038335811694506020840135936040810135935060608101358216925060800135166110d3565b604080517f737570706f727473496e74657266616365286279746573342900000000000000815290519081900360190190206000906001600160e01b0319838116911614806109c05750604080517472656e657728737472696e672c75696e743235362960581b815290519081900360150181209080602861186a8239604080519182900360280182206e636f6d6d697428627974657333322960881b8352905191829003600f01822090925090806026611892823960260190506040518091039020604051808070617661696c61626c6528737472696e672960781b8152506011019050604051809103902060405180807f72656e74507269636528737472696e672c75696e7432353629000000000000008152506019019050604051809103902018181818186001600160e01b031916826001600160e01b031916145b80610a0c5750604051808061182a60409139604080519182900301812091508060426118b8823960420190506040518091039020186001600160e01b031916826001600160e01b031916145b92915050565b610a1a610e05565b610a2357600080fd5b6040513390303180156108fc02916000818181858888f19350505050158015610a50573d6000803e3d6000fd5b50565b845160208601206000906001600160a01b038416158015610a7b57506001600160a01b038316155b15610acb57604080516020808201939093526bffffffffffffffffffffffff19606089901b1681830152605480820188905282518083039091018152607490910190915280519101209050610b39565b6001600160a01b038416610ade57600080fd5b604080516020808201939093526bffffffffffffffffffffffff19606089811b82168385015287811b8216605484015286901b166068820152607c80820188905282518083039091018152609c909101909152805191012090505b95945050505050565b610b4a610e05565b610b5357600080fd5b600280546001600160a01b0319166001600160a01b0383811691909117918290556040519116907ff261845a790fe29bbd6631e2ca4a5bdc83e6eed7c3271d9590d97287e00e912390600090a250565b610bab610e05565b610bb457600080fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b610c06610e05565b610c0f57600080fd5b600391909155600455565b60056020526000908152604090205481565b815160208084019190912060025460015460408051636b727d4360e11b81526004810185905290516000956001600160a01b03948516946350e9a715948a9491169263d6e4fa8692602480840193919291829003018186803b158015610c9157600080fd5b505afa158015610ca5573d6000803e3d6000fd5b505050506040513d6020811015610cbb57600080fd5b50516040516001600160e01b031960e085901b168152602481018290526044810188905260606004820190815283516064830152835189928291608490910190602087019080838360005b83811015610d1e578181015183820152602001610d06565b50505050905090810190601f168015610d4b5780820380516001836020036101000a031916815260200191505b5094505050505060206040518083038186803b158015610d6a57600080fd5b505afa158015610d7e573d6000803e3d6000fd5b505050506040513d6020811015610d9457600080fd5b5051949350505050565b610de285858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250889350879250869150806110d3565b5050505050565b6224ea0081565b60035481565b6000546001600160a01b031690565b6000546001600160a01b0316331490565b60006003610e2383611646565b101592915050565b6000610e6e84848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250869250610c2c915050565b905080341015610e7d57600080fd5b60008484604051808383808284376040805193909101839003832060015463c475abff60e01b855260048501829052602485018b90529151909750600096506001600160a01b03909116945063c475abff93506044808401936020935082900301818787803b158015610eef57600080fd5b505af1158015610f03573d6000803e3d6000fd5b505050506040513d6020811015610f1957600080fd5b5051905034831015610f565760405133903485900380156108fc02916000818181858888f19350505050158015610f54573d6000803e3d6000fd5b505b817f3da24c024582931cfaf8267d8ed24d13a82a8068d5bd337d30ec45cea4e506ae8787868560405180806020018481526020018381526020018281038252868682818152602001925080828437600083820152604051601f909101601f191690920182900397509095505050505050a2505050505050565b80516020820120600090610fe283610e16565b80156110625750600154604080516312dc929d60e31b81526004810184905290516001600160a01b03909216916396e494e891602480820192602092909190829003018186803b15801561103557600080fd5b505afa158015611049573d6000803e3d6000fd5b505050506040513d602081101561105f57600080fd5b50515b9392505050565b60045481565b6004546000828152600560205260409020544291011061108e57600080fd5b6000908152600560205260409020429055565b6110a9610e05565b6110b257600080fd5b610a508161172e565b60006110cb848484600080610a53565b949350505050565b60006110e28787868686610a53565b905060006110f188878461179c565b885160208a01209091508060006001600160a01b038716156114ac5760015460408051633f2891eb60e21b815260048101859052306024820152604481018c905290516001600160a01b039092169163fca247ac916064808201926020929091908290030181600087803b15801561116857600080fd5b505af115801561117c573d6000803e3d6000fd5b505050506040513d602081101561119257600080fd5b505160015460408051630ddf7fcb60e41b815290519293506000926001600160a01b039092169163ddf7fcb091600480820192602092909190829003018186803b1580156111df57600080fd5b505afa1580156111f3573d6000803e3d6000fd5b505050506040513d602081101561120957600080fd5b50516040805160208181019390935280820187905281518082038301815260608201808452815191850191909120600154633f15457f60e01b90925292519294506001600160a01b031692633f15457f92606480840193829003018186803b15801561127457600080fd5b505afa158015611288573d6000803e3d6000fd5b505050506040513d602081101561129e57600080fd5b505160408051630c4b7b8560e11b8152600481018490526001600160a01b038b8116602483015291519190921691631896f70a91604480830192600092919082900301818387803b1580156112f257600080fd5b505af1158015611306573d6000803e3d6000fd5b505050506001600160a01b0387161561139257876001600160a01b031663d5fa2b0082896040518363ffffffff1660e01b815260040180838152602001826001600160a01b03166001600160a01b0316815260200192505050600060405180830381600087803b15801561137957600080fd5b505af115801561138d573d6000803e3d6000fd5b505050505b60015460408051630a3b53db60e21b8152600481018690526001600160a01b038e81166024830152915191909216916328ed4f6c91604480830192600092919082900301818387803b1580156113e757600080fd5b505af11580156113fb573d6000803e3d6000fd5b50505050600160009054906101000a90046001600160a01b03166001600160a01b03166323b872dd308d866040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050600060405180830381600087803b15801561148e57600080fd5b505af11580156114a2573d6000803e3d6000fd5b505050505061154c565b6001600160a01b038616156114c057600080fd5b60015460408051633f2891eb60e21b8152600481018590526001600160a01b038d81166024830152604482018d90529151919092169163fca247ac9160648083019260209291908290030181600087803b15801561151d57600080fd5b505af1158015611531573d6000803e3d6000fd5b505050506040513d602081101561154757600080fd5b505190505b896001600160a01b0316837fca6abbe9d7f11422cb6ca7629fbf6fe9efb1c621f71ce8f02b9f2a230097404f8d87856040518080602001848152602001838152602001828103825285818151815260200191508051906020019080838360005b838110156115c45781810151838201526020016115ac565b50505050905090810190601f1680156115f15780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a3833411156116395760405133903486900380156108fc02916000818181858888f19350505050158015611637573d6000803e3d6000fd5b505b5050505050505050505050565b8051600090819081905b8082101561172557600085838151811061166657fe5b01602001516001600160f81b0319169050600160ff1b81101561168e57600183019250611719565b600760fd1b6001600160f81b0319821610156116af57600283019250611719565b600f60fc1b6001600160f81b0319821610156116d057600383019250611719565b601f60fb1b6001600160f81b0319821610156116f157600483019250611719565b603f60fa1b6001600160f81b03198216101561171257600583019250611719565b6006830192505b50600190920191611650565b50909392505050565b6001600160a01b03811661174157600080fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b600354600082815260056020526040812054909142910111156117be57600080fd5b600454600083815260056020526040902054429101116117dd57600080fd5b6117e684610fcf565b6117ef57600080fd5b600082815260056020526040812081905561180a8585610c2c565b90506224ea0084101561181c57600080fd5b803410156110cb57600080fdfe6d616b65436f6d6d69746d656e7457697468436f6e66696728737472696e672c616464726573732c627974657333322c616464726573732c6164647265737329726567697374657228737472696e672c616464726573732c75696e743235362c62797465733332296d616b65436f6d6d69746d656e7428737472696e672c616464726573732c6279746573333229726567697374657257697468436f6e66696728737472696e672c616464726573732c75696e743235362c627974657333322c616464726573732c6164647265737329a265627a7a72315820ba74b4e49afb22de09a9ebda5d073d93e2a2a7b2530ce50def390c32cac92ea064736f6c634300050c0032","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1":"0xc965345edac823d56812cd20a10316233916a605","0x2":"0xec71e4e674fe0f432693dc2b935c34bd2774c003","0x3":"0x258","0x4":"0x15180"}},"0xbdefcf6429d0ac68236a6beb321cbd2ce66b463c":{"nonce":2,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c80636d435421116100885780637b37e561116100635780637b37e561146102435780638b9e028b14610256578063906c87cc1461027657806393790f4414610289575f80fd5b80636d435421146101eb5780636e9bfd9f146101fe578063794593bc14610230575f80fd5b806314afd79e116100c357806314afd79e1461018157806333bc8572146101945780634e3f9580146101b757806351710e45146101d8575f80fd5b8063027cc764146100e95780630a96ad391461011957806313ad9cab1461016c575b5f80fd5b6100fc6100f7366004610c39565b61029c565b6040516001600160a01b0390911681526020015b60405180910390f35b604080517f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f81527fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167602082015201610110565b61017f61017a366004610c61565b610339565b005b6100fc61018f366004610ca9565b610531565b6101a76101a2366004610cc9565b61055c565b6040519015158152602001610110565b6101ca6101c5366004610ca9565b610595565b604051908152602001610110565b61017f6101e6366004610ca9565b6105bd565b61017f6101f9366004610cc9565b6106be565b61021161020c366004610cfa565b6107ae565b604080516001600160a01b039093168352901515602083015201610110565b6100fc61023e366004610d11565b610838565b61017f610251366004610ca9565b610a0a565b610269610264366004610ca9565b610aab565b6040516101109190610d32565b6100fc610284366004610ca9565b610b28565b6101ca610297366004610ca9565b610b53565b5f6102a683610b8e565b6001600160a01b0383165f908152602081905260409020600301548083106102f157604051636ceb340b60e01b81526001600160a01b03851660048201526024015b60405180910390fd5b6001600160a01b0384165f90815260208190526040902060030180548490811061031d5761031d610d7e565b5f918252602090912001546001600160a01b0316949350505050565b61034283610bc6565b60405163c4e8fcb560e01b81526001600160a01b038381166004830152821515602483015284169063c4e8fcb5906044015f604051808303815f87803b15801561038a575f80fd5b505af115801561039c573d5f803e3d5ffd5b505050506001600160a01b038381165f908152602081815260408083209386168352600484019091529020548015158380156103d6575080155b15610425576003830180546001810182555f828152602080822090920180546001600160a01b0319166001600160a01b038a169081179091559254928152600486019091526040902055610529565b831580156104305750805b156105295760038301545f198301905f9061044d90600190610d92565b90508181146104d8575f85600301828154811061046c5761046c610d7e565b5f918252602090912001546003870180546001600160a01b03909216925082918590811061049c5761049c610d7e565b5f91825260208083209190910180546001600160a01b0319166001600160a01b0394851617905592909116815260048701909152604090208490555b846003018054806104eb576104eb610db7565b5f828152602080822083015f1990810180546001600160a01b03191690559092019092556001600160a01b0389168252600487019052604081205550505b505050505050565b5f61053b82610b8e565b506001600160a01b039081165f908152602081905260409020600101541690565b5f61056683610b8e565b506001600160a01b039182165f9081526020818152604080832093909416825260049092019091522054151590565b5f61059f82610b8e565b506001600160a01b03165f9081526020819052604090206003015490565b6105c681610b8e565b6001600160a01b038181165f9081526020819052604090206002015416331461060d576040516388c3a11560e01b81526001600160a01b03821660048201526024016102e8565b6040515f907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da908290a26001600160a01b038082165f818152602081905260408082206002810180546001600160a01b031916905560010154905133949190911692917fc8894f26f396ce8c004245c8b7cd1b92103a6e4302fcbab883987149ac01b7ec91a46001600160a01b03165f90815260208190526040902060010180546001600160a01b03191633179055565b6106c782610bc6565b6001600160a01b0381166106f95760405163a388d26360e01b81526001600160a01b03831660048201526024016102e8565b6001600160a01b038083165f9081526020819052604090206002015481169082160361074b576040516365e0406560e11b81526001600160a01b038084166004830152821660248201526044016102e8565b6040516001600160a01b038216907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da905f90a26001600160a01b039182165f90815260208190526040902060020180546001600160a01b03191691909216179055565b5f8060ff60f81b30847f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f6040516020016107eb9493929190610dcb565b60408051601f198184030181529190528051602090910120936001600160a01b0385163f7fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167149350915050565b5f6001600160a01b0382166108605760405163267eaa8160e21b815260040160405180910390fd5b606083901c3314610884576040516332db94d160e21b815260040160405180910390fd5b6040516108c3906001600160f81b031990309086907f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f90602001610dcb565b604051602081830303815290604052805190602001205f1c90507fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167816001600160a01b03163f0361093257604051633194665960e11b81526001600160a01b03821660048201526024016102e8565b8260405161093f90610c16565b8190604051809103905ff590508015801561095c573d5f803e3d5ffd5b50506001600160a01b038181165f81815260208181526040918290206001810180546001600160a01b03191695881695909517909455868455815192835282018690527f4397af6128d529b8ae0442f99db1296d5136062597a15bbc61c1b2a6431a7d15910160405180910390a16040516001600160a01b03808516915f918516907fc8894f26f396ce8c004245c8b7cd1b92103a6e4302fcbab883987149ac01b7ec908390a45092915050565b610a1381610bc6565b6001600160a01b038181165f9081526020819052604090206002015416610a58576040516335809b0b60e11b81526001600160a01b03821660048201526024016102e8565b6040515f907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da908290a26001600160a01b03165f90815260208190526040902060020180546001600160a01b0319169055565b6060610ab682610b8e565b6001600160a01b0382165f908152602081815260409182902060030180548351818402810184019094528084529091830182828015610b1c57602002820191905f5260205f20905b81546001600160a01b03168152600190910190602001808311610afe575b50505050509050919050565b5f610b3282610b8e565b506001600160a01b039081165f908152602081905260409020600201541690565b6001600160a01b0381165f9081526020819052604090205480610b89576040516304ca820960e41b815260040160405180910390fd5b919050565b6001600160a01b0381165f90815260208190526040902054610bc3576040516304ca820960e41b815260040160405180910390fd5b50565b610bcf81610b8e565b6001600160a01b038181165f90815260208190526040902060010154163314610bc35760405163d4ed9a1760e01b81526001600160a01b03821660048201526024016102e8565b610a4180610e0583390190565b80356001600160a01b0381168114610b89575f80fd5b5f8060408385031215610c4a575f80fd5b610c5383610c23565b946020939093013593505050565b5f805f60608486031215610c73575f80fd5b610c7c84610c23565b9250610c8a60208501610c23565b915060408401358015158114610c9e575f80fd5b809150509250925092565b5f60208284031215610cb9575f80fd5b610cc282610c23565b9392505050565b5f8060408385031215610cda575f80fd5b610ce383610c23565b9150610cf160208401610c23565b90509250929050565b5f60208284031215610d0a575f80fd5b5035919050565b5f8060408385031215610d22575f80fd5b82359150610cf160208401610c23565b602080825282518282018190525f9190848201906040850190845b81811015610d725783516001600160a01b031683529284019291840191600101610d4d565b50909695505050505050565b634e487b7160e01b5f52603260045260245ffd5b81810381811115610db157634e487b7160e01b5f52601160045260245ffd5b92915050565b634e487b7160e01b5f52603160045260245ffd5b6001600160f81b031994909416845260609290921b6bffffffffffffffffffffffff19166001840152601583015260358201526055019056fe60a060405234801561000f575f80fd5b5033608052608051610a1561002c5f395f6101d20152610a155ff3fe608060405234801561000f575f80fd5b506004361061004a575f3560e01c80634ce34aa21461004e578063899e104c1461007e5780638df25d9214610091578063c4e8fcb5146100a4575b5f80fd5b61006161005c366004610834565b6100b9565b6040516001600160e01b0319909116815260200160405180910390f35b61006161008c3660046108b4565b610121565b61006161009f36600461091b565b61018a565b6100b76100b2366004610969565b6101c7565b005b5f335f525f60205260405f20546100dd576349ed56f960e11b5f523360045260245ffd5b815f5b81811015610110576101088585838181106100fd576100fd6109a2565b905060c002016102c4565b6001016100e0565b50632671a55160e11b949350505050565b5f335f525f60205260405f2054610145576349ed56f960e11b5f523360045260245ffd5b835f5b8181101561016d576101658787838181106100fd576100fd6109a2565b600101610148565b506101788484610436565b50632267841360e21b95945050505050565b5f335f525f60205260405f20546101ae576349ed56f960e11b5f523360045260245ffd5b6101b88383610436565b506346f92ec960e11b92915050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610210576040516336abb4df60e11b815260040160405180910390fd5b6001600160a01b0382165f9081526020819052604090205481151560ff909116151503610268576040516349271a0f60e11b81526001600160a01b038316600482015281151560248201526044015b60405180910390fd5b6001600160a01b0382165f8181526020818152604091829020805460ff191685151590811790915591519182527fae63067d43ac07563b7eb8db6595635fc77f1578a2a5ea06ba91b63e2afa37e2910160405180910390a25050565b60016102d360208301836109ca565b60038111156102e4576102e46109b6565b03610329576103266102fc60408301602084016109ef565b61030c60608401604085016109ef565b61031c60808501606086016109ef565b8460a0013561056c565b50565b600261033860208301836109ca565b6003811115610349576103496109b6565b036103b6578060a00135600114610379576040516369f9582760e01b815260a0820135600482015260240161025f565b61032661038c60408301602084016109ef565b61039c60608401604085016109ef565b6103ac60808501606086016109ef565b8460800135610660565b60036103c560208301836109ca565b60038111156103d6576103d66109b6565b0361041d576103266103ee60408301602084016109ef565b6103fe60608401604085016109ef565b61040e60808501606086016109ef565b84608001358560a00135610715565b604051631e4cbc7f60e21b815260040160405180910390fd5b808280631759616b60e11b6020525f5b8381101561055f57823582018035803b61046b57635f15d6725f52806020526024601cfd5b60a08201358060051b60c0018060808501351460a0606086013514168185013583141615905080156104a657633ae8821360e21b5f5260045ffd5b506020860195506080602084016024378060061b60400190508060a00160a4525f8160c401528060c4018160a0850160c4375f808260205f875af1935083610550573d1561053057601f3d0160051c91508060051c826003028184111561051a578184036003028280028580020360091c01015b5a60208201101561052d573d5f803e3d5ffd5b50505b6357e222f160e11b5f528260045260c0606452608451602001608452805ffd5b50505050600181019050610446565b5050505060806040525050565b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166106515780873b15151661065157806106405781610623573d1561060257601f3d0160051c8360051c81600302818311156105eb578183036003028280028480020360091c01015b5a6020820110156105fe573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b833b61067757635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af180610707573d156106e557601f3d0160051c8260051c81600302818311156106ce578183036003028280028480020360091c01015b5a6020820110156106e1573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b61072c57635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af1806107d1573d156107b057601f3d0160051c8560051c8160030281831115610799578183036003028280028480020360091c01015b5a6020820110156107ac573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b5f8083601f8401126107fc575f80fd5b50813567ffffffffffffffff811115610813575f80fd5b60208301915083602060c08302850101111561082d575f80fd5b9250929050565b5f8060208385031215610845575f80fd5b823567ffffffffffffffff81111561085b575f80fd5b610867858286016107ec565b90969095509350505050565b5f8083601f840112610883575f80fd5b50813567ffffffffffffffff81111561089a575f80fd5b6020830191508360208260051b850101111561082d575f80fd5b5f805f80604085870312156108c7575f80fd5b843567ffffffffffffffff808211156108de575f80fd5b6108ea888389016107ec565b90965094506020870135915080821115610902575f80fd5b5061090f87828801610873565b95989497509550505050565b5f806020838503121561092c575f80fd5b823567ffffffffffffffff811115610942575f80fd5b61086785828601610873565b80356001600160a01b0381168114610964575f80fd5b919050565b5f806040838503121561097a575f80fd5b6109838361094e565b915060208301358015158114610997575f80fd5b809150509250929050565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52602160045260245ffd5b5f602082840312156109da575f80fd5b8135600481106109e8575f80fd5b9392505050565b5f602082840312156109ff575f80fd5b6109e88261094e56fea164736f6c6343000818000aa164736f6c6343000818000a","storage":{}},"0xbe5deac45dd1ca4ee18dc2d585d84d3d3cb82b0d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c806341539d4a146100465780634d5505d314610097578063afa764d7146100b1575b600080fd5b6100636004803603602081101561005c57600080fd5b50356100dc565b6040805195865260208601949094528484019290925260608401526001600160a01b03166080830152519081900360a00190f35b61009f610114565b60408051918252519081900360200190f35b6100da600480360360608110156100c757600080fd5b508035906020810135906040013561011a565b005b60006020819052908152604090208054600182015460028301546003840154600490940154929391929091906001600160a01b031685565b60015481565b6101226101eb565b506040805160a0810182528481526020808201858152828401858152426060808601918252336080870181815260018054810180825560009081528089528a81208a518155975188830155955160028801559351600387015551600490950180546001600160a01b0319166001600160a01b0390961695909517909455905486518981529485018890528487018a905295519495919491937fba5de06d22af2685c6c7765f60067f7d2b08c2d29f53cdf14d67f6d1c9bfb527929081900390910190a450505050565b6040518060a001604052806000801916815260200160008152602001600081526020016000815260200160006001600160a01b03168152509056fea164736f6c6343000606000a","storage":{"0x1":"0x0"}},"0xbe92182cab5b84fd18b34881a0c32771e84f5b8b":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061021c5760003560e01c80638da5cb5b11610125578063bebec6b4116100ad578063e985e9c51161007c578063e985e9c514610540578063f059235914610553578063f2fde38b14610566578063ffa1ad7414610579578063ffad6f551461059d57600080fd5b8063bebec6b4146104e7578063bfc5429b146104fa578063c15ae7cf1461050d578063c87b56dd1461052d57600080fd5b8063a81ce6f9116100f4578063a81ce6f91461046d578063ac9650d814610480578063b3f9e4cb146104a0578063b85afd28146104b3578063b98b3526146104d457600080fd5b80638da5cb5b146103f157806391015f6b146103f9578063933c051d1461041b578063a3f4df7e1461043d57600080fd5b80634bd79ed0116101a857806370a082311161017757806370a082311461038d578063715018a6146103a05780637e37479e146103a857806383caffbe146103bb578063869b8884146103ce57600080fd5b80634bd79ed0146103335780634f558e79146103465780636352211e14610359578063672b9f811461036c57600080fd5b80631bd8cc1a116101ef5780631bd8cc1a146102ac5780631be5e7ed146102cc578063276fabb1146102ec578063430c20811461030d578063485cc9551461032057600080fd5b806301ffc9a7146102215780630328075514610249578063081812fc1461026c57806313af403514610297575b600080fd5b61023461022f366004612c9d565b6105b0565b60405190151581526020015b60405180910390f35b61025c610257366004612d0b565b610638565b6040516102409493929190612dfe565b61027f61027a366004612e3c565b61065b565b6040516001600160a01b039091168152602001610240565b6102aa6102a5366004612e6a565b610760565b005b6102bf6102ba366004612d0b565b6107d1565b6040516102409190612e87565b6102df6102da366004612edb565b6107f0565b6040516102409190612f12565b6102ff6102fa366004612f25565b61091b565b604051908152602001610240565b61023461031b366004612f66565b61098f565b6102aa61032e366004612f92565b610aa2565b6102aa610341366004612fcb565b610bf5565b610234610354366004612e3c565b610e51565b61027f610367366004612e3c565b610e5c565b61037f61037a366004613036565b610e67565b604051610240929190613058565b6102ff61039b366004612e6a565b610f97565b6102aa611095565b6102ff6103b6366004612e6a565b6110a9565b6102bf6103c936600461307d565b611118565b6103e16103dc366004612fcb565b6114f0565b60405161024094939291906131bb565b61027f6116e6565b61040c610407366004612d0b565b611714565b60405161024093929190613208565b61042e610429366004612fcb565b611734565b60405161024093929190613234565b6102df604051806040016040528060118152602001702aa7299d10283937bc3c902932b0b232b960791b81525081565b61027f61047b366004612e3c565b6118bd565b61049361048e366004612f25565b61198b565b6040516102409190613277565b61027f6104ae366004612e3c565b611a7f565b6104c66104c1366004612d0b565b611b05565b6040516102409291906132d9565b6102df6104e23660046132fe565b611ce1565b6102df6104f5366004612e6a565b611cfb565b6102df6105083660046132fe565b611d6f565b61052061051b366004612f25565b611d89565b6040516102409190613371565b6102df61053b366004612e3c565b611e37565b61023461054e366004612f92565b611f09565b6102aa610561366004612fcb565b611f54565b6102aa610574366004612e6a565b612018565b6102df604051806040016040528060058152602001640302e352e360dc1b81525081565b6102aa6105ab366004613384565b612085565b60006001600160e01b031982166362526e6360e01b14806105e157506001600160e01b03198216636fa624af60e11b145b806105fc57506001600160e01b031982166308da864d60e31b145b8061061757506001600160e01b03198216638584880360e01b145b8061063257506301ffc9a760e01b6001600160e01b03198316145b92915050565b6000806060806106498787876120d8565b93509350935093505b93509350935093565b60006106668261233a565b61067257506000919050565b61067b826123d2565b6106f25760665460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa1580156106c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106ed91906133bd565b610632565b60655460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa15801561073c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061063291906133bd565b600061076a6116e6565b6001600160a01b0316146107c55760405162461bcd60e51b815260206004820152601e60248201527f50726f78795265616465723a204f574e45525f414c52454144595f534554000060448201526064015b60405180910390fd5b6107ce81612419565b50565b60606107e66107e0848661346a565b83612495565b90505b9392505050565b60606107fb826123d2565b1561088057606554604051631be5e7ed60e01b81526001600160a01b0390911690631be5e7ed9061083490879087908790600401613547565b600060405180830381865afa158015610851573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261087991908101906135b0565b90506107e9565b600061088b83612617565b90506001600160a01b0381163b1561091357604051631be5e7ed60e01b81526001600160a01b03821690631be5e7ed906108cd90889088908890600401613547565b600060405180830381865afa92505050801561090b57506040513d6000823e601f3d908101601f1916820160405261090891908101906135b0565b60015b156109135791505b509392505050565b60655460405163276fabb160e01b81526000916001600160a01b03169063276fabb19061094e908690869060040161366c565b602060405180830381865afa15801561096b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613680565b600061099a8261233a565b6109a657506000610632565b6109af826123d2565b610a2d5760665460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a04573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a289190613699565b6107e9565b60655460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a7e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613699565b600054610100900460ff1615808015610ac25750600054600160ff909116105b80610adc5750303b158015610adc575060005460ff166001145b610b3f5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107bc565b6000805460ff191660011790558015610b62576000805461ff0019166101001790555b606580546001600160a01b038086166001600160a01b0319928316179092556066805492851692909116919091179055610b9a61268a565b610ba261268a565b610baa6126b1565b8015610bf0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b610bfd6126e1565b828114610c4c5760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107bc565b60005b83811015610e4a5760006068868684818110610c6d57610c6d6136bb565b9050602002810190610c7f91906136d1565b604051610c8d929190613717565b908152604051908190036020019020541115610cf1576068858583818110610cb757610cb76136bb565b9050602002810190610cc991906136d1565b604051610cd7929190613717565b90815260200160405180910390206000610cf19190612c18565b60005b838383818110610d0657610d066136bb565b9050602002810190610d189190613727565b9050811015610ddc576068868684818110610d3557610d356136bb565b9050602002810190610d4791906136d1565b604051610d55929190613717565b9081526020016040518091039020848484818110610d7557610d756136bb565b9050602002810190610d879190613727565b83818110610d9757610d976136bb565b9050602002810190610da991906136d1565b82546001810184556000938452602090932090920191610dc991836137f8565b5080610dd4816138cd565b915050610cf4565b507fb2b57b54285120d17f49f2490a39ef791441fd0ad1e6b6818c23262bf91f061c858583818110610e1057610e106136bb565b9050602002810190610e2291906136d1565b604051610e309291906138e6565b60405180910390a180610e42816138cd565b915050610c4f565b5050505050565b60006106328261233a565b600061063282612740565b606080610e73836123d2565b15610ef95760655460405163672b9f8160e01b815260048101869052602481018590526001600160a01b039091169063672b9f8190604401600060405180830381865afa158015610ec8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610ef091908101906138fa565b91509150610f90565b6000610f0484612617565b90506001600160a01b0381163b15610f8e5760405163672b9f8160e01b815260048101869052602481018590526001600160a01b0382169063672b9f8190604401600060405180830381865afa925050508015610f8357506040513d6000823e601f3d908101601f19168201604052610f8091908101906138fa565b60015b15610f8e5790935091505b505b9250929050565b6065546040516370a0823160e01b81526001600160a01b03838116600483015260009283929116906370a0823190602401602060405180830381865afa158015610fe5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110099190613680565b6066549091506001600160a01b031615610632576066546040516370a0823160e01b81526001600160a01b038581166004830152909116906370a0823190602401602060405180830381865afa158015611067573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061108b9190613680565b6107e9908261395d565b61109d6126e1565b6110a76000612419565b565b606554604051633f1ba3cf60e11b81526001600160a01b0383811660048301526000921690637e37479e90602401602060405180830381865afa1580156110f4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190613680565b606060006067868660405161112e929190613717565b9081526020016040518091039020805461114790613770565b80601f016020809104026020016040519081016040528092919081815260200182805461117390613770565b80156111c05780601f10611195576101008083540402835291602001916111c0565b820191906000526020600020905b8154815290600101906020018083116111a357829003601f168201915b5050505050905080516000036111d657506114e8565b6000604051806040016040528060068152602001653a37b5b2b71760d11b81525090506000604051806040016040528060088152602001672e6164647265737360c01b81525090506000604051806040016040528060018152602001601760f91b815250905060008385838c8c868d8d8a60405160200161125f99989796959493929190613970565b6040516020818303038152906040529050600060688260405161128291906139f3565b9081526020016040518091039020805480602002602001604051908101604052809291908181526020016000905b8282101561135c5783829060005260206000200180546112cf90613770565b80601f01602080910402602001604051908101604052809291908181526020018280546112fb90613770565b80156113485780601f1061131d57610100808354040283529160200191611348565b820191906000526020600020905b81548152906001019060200180831161132b57829003601f168201915b5050505050815260200190600101906112b0565b50505050905080516003611370919061395d565b6001600160401b03811115611387576113876133da565b6040519080825280602002602001820160405280156113ba57816020015b60608152602001906001900390816113a55790505b50965081876000815181106113d1576113d16136bb565b602002602001018190525060005b815181101561143e578181815181106113fa576113fa6136bb565b602002602001015188826001611410919061395d565b81518110611420576114206136bb565b60200260200101819052508080611436906138cd565b9150506113df565b508486848d8d8860405160200161145a96959493929190613a0f565b6040516020818303038152906040528782516001611478919061395d565b81518110611488576114886136bb565b60200260200101819052508486856040516020016114a893929190613a72565b60405160208183030381529060405287825160026114c6919061395d565b815181106114d6576114d66136bb565b60200260200101819052505050505050505b949350505050565b6060808080846001600160401b0381111561150d5761150d6133da565b604051908082528060200260200182016040528015611536578160200160208202803683370190505b509350846001600160401b03811115611551576115516133da565b60405190808252806020026020018201604052801561157a578160200160208202803683370190505b509250846001600160401b03811115611595576115956133da565b6040519080825280602002602001820160405280156115c857816020015b60608152602001906001900390816115b35790505b509150846001600160401b038111156115e3576115e36133da565b60405190808252806020026020018201604052801561161657816020015b60608152602001906001900390816116015790505b50905060005b858110156116da57611647898989898581811061163b5761163b6136bb565b905060200201356120d8565b888581518110611659576116596136bb565b60200260200101888681518110611672576116726136bb565b6020026020010188878151811061168b5761168b6136bb565b602002602001018888815181106116a4576116a46136bb565b6020908102919091010193909352929091526001600160a01b0392831690915291169052806116d2816138cd565b91505061161c565b50945094509450949050565b7fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c8121905546001600160a01b031690565b6000806060611724868686612761565b9250925092505b93509350939050565b60608080836001600160401b03811115611750576117506133da565b604051908082528060200260200182016040528015611779578160200160208202803683370190505b509250836001600160401b03811115611794576117946133da565b6040519080825280602002602001820160405280156117bd578160200160208202803683370190505b509150836001600160401b038111156117d8576117d86133da565b60405190808252806020026020018201604052801561180b57816020015b60608152602001906001900390816117f65790505b50905060005b848110156118b25761183c8888888885818110611830576118306136bb565b90506020020135612761565b86848151811061184e5761184e6136bb565b60200260200101868581518110611867576118676136bb565b60200260200101868681518110611880576118806136bb565b60209081029190910101929092526001600160a01b0392831690915291169052806118aa816138cd565b915050611811565b509450945094915050565b606554604051634f558e7960e01b8152600481018390526000916001600160a01b031690634f558e7990602401602060405180830381865afa158015611907573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061192b9190613699565b156119415750506065546001600160a01b031690565b6066546001600160a01b03161580159061196d575060006119618361296c565b6001600160a01b031614155b156119835750506066546001600160a01b031690565b506000919050565b6060816001600160401b038111156119a5576119a56133da565b6040519080825280602002602001820160405280156119d857816020015b60608152602001906001900390816119c35790505b50905060005b82811015611a7857611a48308585848181106119fc576119fc6136bb565b9050602002810190611a0e91906136d1565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061299e92505050565b828281518110611a5a57611a5a6136bb565b60200260200101819052508080611a70906138cd565b9150506119de565b5092915050565b6000611a8a8261233a565b611a9657506000919050565b611a9f826123d2565b611ad45760665460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb906024016106ac565b60655460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb9060240161071f565b606080836001600160401b03811115611b2057611b206133da565b604051908082528060200260200182016040528015611b5357816020015b6060815260200190600190039081611b3e5790505b509150836001600160401b03811115611b6e57611b6e6133da565b604051908082528060200260200182016040528015611ba157816020015b6060815260200190600190039081611b8c5790505b509050611bad836123d2565b15611c345760655460405163170b5fa560e31b81526001600160a01b039091169063b85afd2890611be690889088908890600401613ab5565b600060405180830381865afa158015611c03573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611c2b9190810190613b72565b91509150611cd9565b6000611c3f84612617565b90506001600160a01b0381163b15158015611c5957508415155b15611cd75760405163170b5fa560e31b81526001600160a01b0382169063b85afd2890611c8e90899089908990600401613ab5565b600060405180830381865afa925050508015611ccc57506040513d6000823e601f3d908101601f19168201604052611cc99190810190613b72565b60015b15611cd75790935091505b505b935093915050565b6060611cf08686868686612a92565b979650505050505050565b606554604051632fafb1ad60e21b81526001600160a01b038381166004830152606092169063bebec6b4906024015b600060405180830381865afa158015611d47573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261063291908101906135b0565b6060611d7e8686868686612a92565b509695505050505050565b6060816001600160401b03811115611da357611da36133da565b604051908082528060200260200182016040528015611dcc578160200160208202803683370190505b50905060005b82811015611a7857611dfb848483818110611def57611def6136bb565b90506020020135612740565b828281518110611e0d57611e0d6136bb565b6001600160a01b039092166020928302919091019091015280611e2f816138cd565b915050611dd2565b6060611e428261233a565b611e5a57505060408051602081019091526000815290565b611e63826123d2565b611ed85760665460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401600060405180830381865afa158015611eb0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106ed91908101906135b0565b60655460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401611d2a565b60405162461bcd60e51b815260206004820152601f60248201527f50726f78795265616465723a20554e535550504f525445445f4d4554484f440060448201526000906064016107bc565b611f5c6126e1565b828114611fab5760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107bc565b60005b83811015610e4a57612006858583818110611fcb57611fcb6136bb565b9050602002810190611fdd91906136d1565b858585818110611fef57611fef6136bb565b905060200281019061200191906136d1565b612b3e565b80612010816138cd565b915050611fae565b6120206126e1565b6001600160a01b0381166107c55760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107bc565b61208d6126e1565b60005b83811015610e4a576120c68585838181106120ad576120ad6136bb565b90506020028101906120bf91906136d1565b8585612b3e565b806120d0816138cd565b915050612090565b600080606080856001600160401b038111156120f6576120f66133da565b60405190808252806020026020018201604052801561212957816020015b60608152602001906001900390816121145790505b509150856001600160401b03811115612144576121446133da565b60405190808252806020026020018201604052801561217757816020015b60608152602001906001900390816121625790505b509050612183856123d2565b156122845760655460405163b3f9e4cb60e01b8152600481018790526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa1580156121d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121f591906133bd565b935061220085612bad565b60655460405163170b5fa560e31b81529194506001600160a01b03169063b85afd2890612235908a908a908a90600401613ab5565b600060405180830381865afa158015612252573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261227a9190810190613b72565b9092509050610652565b61228d85612617565b93506122988561296c565b92506001600160a01b0384163b151580156122b4575060008251115b156106525760405163170b5fa560e31b81526001600160a01b0385169063b85afd28906122e9908a908a908a90600401613ab5565b600060405180830381865afa92505050801561232757506040513d6000823e601f3d908101601f191682016040526123249190810190613b72565b60015b1561065257909250905093509350935093565b6000612345826123d2565b6123645760006123548361296c565b6001600160a01b03161415610632565b606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e79906024015b602060405180830381865afa1580156123ae573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190613699565b6066546000906001600160a01b031615806106325750606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401612391565b60006124236116e6565b9050817fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c812190580546001600160a01b0319166001600160a01b03928316179055604051838216918316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b606082516001600160401b038111156124b0576124b06133da565b6040519080825280602002602001820160405280156124e357816020015b60608152602001906001900390816124ce5790505b5090506124ef826123d2565b1561257257606554604051630dec660d60e11b81526001600160a01b0390911690631bd8cc1a906125269086908690600401613bcb565b600060405180830381865afa158015612543573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261256b9190810190613bed565b9050610632565b600061257d83612617565b90506001600160a01b0381163b15158015612599575060008451115b15611a7857604051630dec660d60e11b81526001600160a01b03821690631bd8cc1a906125cc9087908790600401613bcb565b600060405180830381865afa92505050801561260a57506040513d6000823e601f3d908101601f191682016040526126079190810190613bed565b60015b15611a7857949350505050565b60665460405163b3f9e4cb60e01b8152600481018390526000916001600160a01b03169063b3f9e4cb906024015b602060405180830381865afa92505050801561267e575060408051601f3d908101601f1916820190925261267b918101906133bd565b60015b61063257506000919050565b600054610100900460ff166110a75760405162461bcd60e51b81526004016107bc90613c21565b600054610100900460ff166126d85760405162461bcd60e51b81526004016107bc90613c21565b6110a733612419565b336126ea6116e6565b6001600160a01b0316146110a75760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107bc565b600061274b826123d2565b612758576106ed8261296c565b61063282612bad565b6000806060846001600160401b0381111561277e5761277e6133da565b6040519080825280602002602001820160405280156127b157816020015b606081526020019060019003908161279c5790505b5090506127bd846123d2565b156128bb5760655460405163b3f9e4cb60e01b8152600481018690526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561280b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061282f91906133bd565b925061283a84612bad565b606554604051630dec660d60e11b81529193506001600160a01b031690631bd8cc1a9061286f90899089908990600401613c6c565b600060405180830381865afa15801561288c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526128b49190810190613bed565b905061172b565b6128c484612617565b92506128cf8461296c565b91506001600160a01b0383163b151580156128e957508415155b1561172b57604051630dec660d60e11b81526001600160a01b03841690631bd8cc1a9061291e90899089908990600401613c6c565b600060405180830381865afa92505050801561295c57506040513d6000823e601f3d908101601f191682016040526129599190810190613bed565b60015b1561172b57905093509350939050565b6066546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401612645565b60606001600160a01b0383163b612a065760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b60648201526084016107bc565b600080846001600160a01b031684604051612a2191906139f3565b600060405180830381855af49150503d8060008114612a5c576040519150601f19603f3d011682016040523d82523d6000602084013e612a61565b606091505b5091509150612a898282604051806060016040528060278152602001613c8160279139612bdf565b95945050505050565b6060806000612aa388888888611118565b90506000612ab18286612495565b905060005b8151811015612b31576000828281518110612ad357612ad36136bb565b6020026020010151511115612b1f57828181518110612af457612af46136bb565b60200260200101519350818181518110612b1057612b106136bb565b60200260200101519450612b31565b80612b29816138cd565b915050612ab6565b5050509550959350505050565b818160678686604051612b52929190613717565b90815260200160405180910390209182612b6d9291906137f8565b507f0bf4b04a0f6d7d0800284e1abb0f58f795c0a25b9088634b6ab847be51001dec8484604051612b9f9291906138e6565b60405180910390a150505050565b6065546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401612645565b60608315612bee5750816107e9565b825115612bfe5782518084602001fd5b8160405162461bcd60e51b81526004016107bc9190612f12565b50805460008255906000526020600020908101906107ce91905b80821115612c4f576000612c468282612c53565b50600101612c32565b5090565b508054612c5f90613770565b6000825580601f10612c6f575050565b601f0160209004906000526020600020908101906107ce91905b80821115612c4f5760008155600101612c89565b600060208284031215612caf57600080fd5b81356001600160e01b0319811681146107e957600080fd5b60008083601f840112612cd957600080fd5b5081356001600160401b03811115612cf057600080fd5b6020830191508360208260051b8501011115610f9057600080fd5b600080600060408486031215612d2057600080fd5b83356001600160401b03811115612d3657600080fd5b612d4286828701612cc7565b909790965060209590950135949350505050565b60005b83811015612d71578181015183820152602001612d59565b50506000910152565b60008151808452612d92816020860160208601612d56565b601f01601f19169290920160200192915050565b600082825180855260208086019550808260051b84010181860160005b84811015612df157601f19868403018952612ddf838351612d7a565b98840198925090830190600101612dc3565b5090979650505050505050565b6001600160a01b03858116825284166020820152608060408201819052600090612e2a90830185612da6565b8281036060840152611cf08185612da6565b600060208284031215612e4e57600080fd5b5035919050565b6001600160a01b03811681146107ce57600080fd5b600060208284031215612e7c57600080fd5b81356107e981612e55565b6020815260006107e96020830184612da6565b60008083601f840112612eac57600080fd5b5081356001600160401b03811115612ec357600080fd5b602083019150836020828501011115610f9057600080fd5b600080600060408486031215612ef057600080fd5b83356001600160401b03811115612f0657600080fd5b612d4286828701612e9a565b6020815260006107e96020830184612d7a565b60008060208385031215612f3857600080fd5b82356001600160401b03811115612f4e57600080fd5b612f5a85828601612cc7565b90969095509350505050565b60008060408385031215612f7957600080fd5b8235612f8481612e55565b946020939093013593505050565b60008060408385031215612fa557600080fd5b8235612fb081612e55565b91506020830135612fc081612e55565b809150509250929050565b60008060008060408587031215612fe157600080fd5b84356001600160401b0380821115612ff857600080fd5b61300488838901612cc7565b9096509450602087013591508082111561301d57600080fd5b5061302a87828801612cc7565b95989497509550505050565b6000806040838503121561304957600080fd5b50508035926020909101359150565b60408152600061306b6040830185612d7a565b8281036020840152612a898185612d7a565b6000806000806040858703121561309357600080fd5b84356001600160401b03808211156130aa57600080fd5b6130b688838901612e9a565b909650945060208701359150808211156130cf57600080fd5b5061302a87828801612e9a565b600081518084526020808501945080840160005b838110156131155781516001600160a01b0316875295820195908201906001016130f0565b509495945050505050565b60008282518085526020808601955060058183821b8501018287016000805b868110156131ac57601f1988850381018c5283518051808752908801908887019080891b88018a01865b8281101561319557858a8303018452613183828651612d7a565b948c0194938c01939150600101613169565b509e8a019e9750505093870193505060010161313f565b50919998505050505050505050565b6080815260006131ce60808301876130dc565b82810360208401526131e081876130dc565b905082810360408401526131f48186613120565b90508281036060840152611cf08185613120565b6001600160a01b03848116825283166020820152606060408201819052600090612a8990830184612da6565b60608152600061324760608301866130dc565b828103602084015261325981866130dc565b9050828103604084015261326d8185613120565b9695505050505050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156132cc57603f198886030184526132ba858351612d7a565b9450928501929085019060010161329e565b5092979650505050505050565b6040815260006132ec6040830185612da6565b8281036020840152612a898185612da6565b60008060008060006060868803121561331657600080fd5b85356001600160401b038082111561332d57600080fd5b61333989838a01612e9a565b9097509550602088013591508082111561335257600080fd5b5061335f88828901612e9a565b96999598509660400135949350505050565b6020815260006107e960208301846130dc565b6000806000806040858703121561339a57600080fd5b84356001600160401b03808211156133b157600080fd5b6130b688838901612cc7565b6000602082840312156133cf57600080fd5b81516107e981612e55565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715613418576134186133da565b604052919050565b60006001600160401b03821115613439576134396133da565b5060051b60200190565b60006001600160401b0382111561345c5761345c6133da565b50601f01601f191660200190565b600061347d61347884613420565b6133f0565b80848252602080830192508560051b85013681111561349b57600080fd5b855b818110156135125780356001600160401b038111156134bc5760008081fd5b870136601f8201126134ce5760008081fd5b80356134dc61347882613443565b81815236868385010111156134f15760008081fd5b8186840187830137600091810186019190915286525093820193820161349d565b50919695505050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60408152600061355b60408301858761351e565b9050826020830152949350505050565b600082601f83011261357c57600080fd5b815161358a61347882613443565b81815284602083860101111561359f57600080fd5b6114e8826020830160208701612d56565b6000602082840312156135c257600080fd5b81516001600160401b038111156135d857600080fd5b6114e88482850161356b565b60008383855260208086019550808560051b8301018460005b87811015612df157848303601f19018952813536889003601e1901811261362357600080fd5b870184810190356001600160401b0381111561363e57600080fd5b80360382131561364d57600080fd5b61365885828461351e565b9a86019a94505050908301906001016135fd565b6020815260006107e66020830184866135e4565b60006020828403121561369257600080fd5b5051919050565b6000602082840312156136ab57600080fd5b815180151581146107e957600080fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e198436030181126136e857600080fd5b8301803591506001600160401b0382111561370257600080fd5b602001915036819003821315610f9057600080fd5b8183823760009101908152919050565b6000808335601e1984360301811261373e57600080fd5b8301803591506001600160401b0382111561375857600080fd5b6020019150600581901b3603821315610f9057600080fd5b600181811c9082168061378457607f821691505b6020821081036137a457634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115610bf057600081815260208120601f850160051c810160208610156137d15750805b601f850160051c820191505b818110156137f0578281556001016137dd565b505050505050565b6001600160401b0383111561380f5761380f6133da565b6138238361381d8354613770565b836137aa565b6000601f841160018114613857576000851561383f5750838201355b600019600387901b1c1916600186901b178355610e4a565b600083815260209020601f19861690835b828110156138885786850135825560209485019460019092019101613868565b50868210156138a55760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b634e487b7160e01b600052601160045260246000fd5b6000600182016138df576138df6138b7565b5060010190565b6020815260006107e660208301848661351e565b6000806040838503121561390d57600080fd5b82516001600160401b038082111561392457600080fd5b6139308683870161356b565b9350602085015191508082111561394657600080fd5b506139538582860161356b565b9150509250929050565b80820180821115610632576106326138b7565b60008a51613982818460208f01612d56565b8a5190830190613996818360208f01612d56565b8a519101906139a9818360208e01612d56565b0187898237600090880190815286516139c6818360208b01612d56565b0184868237600090850190815283516139e3818360208801612d56565b019b9a5050505050505050505050565b60008251613a05818460208701612d56565b9190910192915050565b60008751613a21818460208c01612d56565b875190830190613a35818360208c01612d56565b8751910190613a48818360208b01612d56565b018486823760009085019081528351613a65818360208801612d56565b0198975050505050505050565b60008451613a84818460208901612d56565b845190830190613a98818360208901612d56565b8451910190613aab818360208801612d56565b0195945050505050565b6040808252810183905260006001600160fb1b03841115613ad557600080fd5b8360051b808660608501376020830193909352500160600192915050565b600082601f830112613b0457600080fd5b81516020613b1461347883613420565b82815260059290921b84018101918181019086841115613b3357600080fd5b8286015b84811015611d7e5780516001600160401b03811115613b565760008081fd5b613b648986838b010161356b565b845250918301918301613b37565b60008060408385031215613b8557600080fd5b82516001600160401b0380821115613b9c57600080fd5b613ba886838701613af3565b93506020850151915080821115613bbe57600080fd5b5061395385828601613af3565b604081526000613bde6040830185612da6565b90508260208301529392505050565b600060208284031215613bff57600080fd5b81516001600160401b03811115613c1557600080fd5b6114e884828501613af3565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60408152600061355b6040830185876135e456fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a","storage":{}},"0xc2110388dd54228ae0a834119457ede938bf0b57":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061021e5760003560e01c80638da5cb5b11610123578063acf1a841116100ab578063d547741f1161006f578063d547741f14610682578063f14fcbc8146106a2578063f23a6e61146106c2578063f2fde38b146106e2578063ffa1ad741461070257600080fd5b8063acf1a841146105e0578063bc197c8114610600578063c0c53b8b14610620578063cf01585314610640578063d53913931461066057600080fd5b8063a0e3aef1116100f2578063a0e3aef114610534578063a217fddf14610554578063a3f4df7e14610569578063a4247400146105a0578063aa271e1a146105c057600080fd5b80638da5cb5b146104c157806391d14854146104df578063983b2d56146104ff578063986502751461051f57600080fd5b80635fc1964f116101a65780636ccbae5f116101755780636ccbae5f14610439578063715018a61461045957806371e2a6571461046e57806381c81d351461048e57806383e7f6ff146104a157600080fd5b80635fc1964f146103ae578063634486da146103ce5780636352211e146103e15780636a8be89e1461041957600080fd5b80632f2ff15d116101ed5780632f2ff15d146103035780633092afd51461032557806336568abe14610345578063423f6cef14610365578063572b6c051461038557600080fd5b806301ffc9a71461022a578063150b7a021461025f5780631bf7e13e14610298578063248a9ca3146102c557600080fd5b3661022557005b600080fd5b34801561023657600080fd5b5061024a6102453660046125f2565b610733565b60405190151581526020015b60405180910390f35b34801561026b57600080fd5b5061027f61027a366004612672565b610779565b6040516001600160e01b03199091168152602001610256565b3480156102a457600080fd5b506102b86102b33660046126e4565b6108cb565b60405161025691906127a4565b3480156102d157600080fd5b506102f56102e03660046127b7565b600090815260fb602052604090206001015490565b604051908152602001610256565b34801561030f57600080fd5b5061032361031e3660046127d0565b610997565b005b34801561033157600080fd5b50610323610340366004612800565b6109c1565b34801561035157600080fd5b506103236103603660046127d0565b6109d5565b34801561037157600080fd5b5061032361038036600461281d565b610a68565b34801561039157600080fd5b5061024a6103a0366004612800565b6001600160a01b0316301490565b3480156103ba57600080fd5b506103236103c936600461288f565b610bd9565b6103236103dc366004612800565b610c21565b3480156103ed57600080fd5b506104016103fc3660046127b7565b610ce4565b6040516001600160a01b039091168152602001610256565b34801561042557600080fd5b50610323610434366004612800565b610cef565b34801561044557600080fd5b506102f56104543660046127b7565b610d38565b34801561046557600080fd5b50610323610d7e565b34801561047a57600080fd5b5061032361048936600461288f565b610d92565b61032361049c366004612800565b610dda565b3480156104ad57600080fd5b506102f56104bc366004612934565b610e57565b3480156104cd57600080fd5b506097546001600160a01b0316610401565b3480156104eb57600080fd5b5061024a6104fa3660046127d0565b610efa565b34801561050b57600080fd5b5061032361051a366004612800565b610f25565b34801561052b57600080fd5b50610323610f36565b34801561054057600080fd5b506102f561054f366004612a5c565b610f50565b34801561056057600080fd5b506102f5600081565b34801561057557600080fd5b506102b86040518060400160405280600b81526020016a454e5320437573746f647960a81b81525081565b3480156105ac57600080fd5b5061024a6105bb3660046126e4565b610ffc565b3480156105cc57600080fd5b5061024a6105db366004612800565b61104f565b3480156105ec57600080fd5b506103236105fb366004612934565b611069565b34801561060c57600080fd5b5061027f61061b366004612b35565b611222565b34801561062c57600080fd5b5061032361063b366004612bf3565b6112db565b34801561064c57600080fd5b5061032361065b366004612c3e565b611485565b34801561066c57600080fd5b506102f56000805160206133f583398151915281565b34801561068e57600080fd5b5061032361069d3660046127d0565b611592565b3480156106ae57600080fd5b506103236106bd3660046127b7565b6115b7565b3480156106ce57600080fd5b5061027f6106dd366004612d20565b61162b565b3480156106ee57600080fd5b506103236106fd366004612800565b6116bc565b34801561070e57600080fd5b506102b860405180604001604052806005815260200164302e312e3360d81b81525081565b60006001600160e01b03198216630a85bd0160e11b148061076457506001600160e01b03198216630271189760e51b145b806107735750610773826116d8565b92915050565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004546000906001600160a01b0316806107b061170d565b6001600160a01b0316036108a957600080806107ce86880188612d9b565b9250925092506107dd8361171c565b6001600160a01b03841663b88d4fde30600080516020613415833981519152546040516001600160a01b03909116908c9061082390879030906000908b90602001612dfc565b6040516020818303038152906040526040518563ffffffff1660e01b81526004016108519493929190612e3c565b600060405180830381600087803b15801561086b57600080fd5b505af115801561087f573d6000803e3d6000fd5b5050505061089561088f8261174e565b846117d3565b50630a85bd0160e11b93506108c292505050565b6040516344e7d94960e01b815260040160405180910390fd5b95945050505050565b606060005a90506108dd858585610ffc565b6108fa57604051638baa579f60e01b815260040160405180910390fd5b61098c61090a6020870187612800565b3060408801358461091e60608b018b612e6f565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061185e92505050565b9150505b9392505050565b600082815260fb60205260409020600101546109b28161193f565b6109bc8383611950565b505050565b6109c96119d7565b6109d281611a50565b50565b6109dd61170d565b6001600160a01b0316816001600160a01b031614610a5a5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b610a648282611a68565b5050565b80610a7161170d565b6001600160a01b0316610a8382611aed565b6001600160a01b031614610ac55780610a9a61170d565b604051637ea58b1160e01b815260048101929092526001600160a01b03166024820152604401610a51565b610ace82611c03565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052600090610b22906060015b6040516020818303038152906040528051906020012090565b80546001600160a01b0319166001600160a01b0392909216919091179055600060008051602061341583398151915254604051637921219560e11b81523060048201526001600160a01b038681166024830152604482018690526001606483015260a06084830152600060a48301529091169150819063f242432a9060c401600060405180830381600087803b158015610bbb57600080fd5b505af1158015610bcf573d6000803e3d6000fd5b5050505050505050565b610be16119d7565b60005b8151811015610a6457610c0f828281518110610c0257610c02612eb5565b6020026020010151611a50565b80610c1981612ee1565b915050610be4565b610c2c6105db61170d565b610c485760405162461bcd60e51b8152600401610a5190612efa565b6001600160a01b038116610c9e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a51565b610ca781611c1c565b610caf610f36565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610a64573d6000803e3d6000fd5b600061077382611aed565b610cf76119d7565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c500480546001600160a01b0319166001600160a01b0392909216919091179055565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a838156020820152908101829052600090610d7790606001610b09565b5492915050565b610d866119d7565b610d906000611c34565b565b610d9a6119d7565b60005b8151811015610a6457610dc8828281518110610dbb57610dbb612eb5565b6020026020010151611c1c565b80610dd281612ee1565b915050610d9d565b610de56105db61170d565b610e015760405162461bcd60e51b8152600401610a5190612efa565b6001600160a01b038116610ca75760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a51565b6000805160206133d5833981519152546040516383e7f6ff60e01b81526000916001600160a01b031690829082906383e7f6ff90610e9d90899089908990600401612f58565b6040805180830381865afa158015610eb9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610edd9190612f7c565b60208101518151919250610ef091612fca565b9695505050505050565b600091825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610f2d6119d7565b6109d281611c1c565b610d906000805160206133f583398151915261036061170d565b6000805160206133d5833981519152546000906001600160a01b0316806365a69dcf8d85610f7e5730610f80565b8d5b8d8d8d8d8d8d8d6040518a63ffffffff1660e01b8152600401610fab9998979695949392919061306e565b602060405180830381865afa158015610fc8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fec91906130de565b9c9b505050505050505050505050565b600061104761100a856130f7565b3085858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611c8692505050565b949350505050565b60006107736000805160206133f583398151915283610efa565b6110746105db61170d565b6110905760405162461bcd60e51b8152600401610a5190612efa565b6002603354036110e25760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a51565b60026033556000805160206133d5833981519152546040516383e7f6ff60e01b81526001600160a01b039091169060009082906383e7f6ff9061112d90889088908890600401612f58565b6040805180830381865afa158015611149573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061116d9190612f7c565b6020810151815191925061118091612fca565b4710156111a05760405163050205f960e01b815260040160405180910390fd5b816001600160a01b031663acf1a841826020015183600001516111c39190612fca565b8787876040518563ffffffff1660e01b81526004016111e493929190612f58565b6000604051808303818588803b1580156111fd57600080fd5b505af1158015611211573d6000803e3d6000fd5b505060016033555050505050505050565b6000600080516020613415833981519152546001600160a01b031661124561170d565b6001600160a01b03161461126c576040516344e7d94960e01b815260040160405180910390fd5b600061127a83850185612800565b90506112858161171c565b60005b878110156112c4576112b28989838181106112a5576112a5612eb5565b90506020020135836117d3565b806112bc81612ee1565b915050611288565b5063bc197c8160e01b9a9950505050505050505050565b600054610100900460ff16158080156112fb5750600054600160ff909116105b806113155750303b158015611315575060005460ff166001145b6113785760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610a51565b6000805460ff19166001179055801561139b576000805461ff0019166101001790555b6000805160206133d583398151915280546001600160a01b038087166001600160a01b03199283161790925560008051602061341583398151915280548684169083161790557ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004805492851692909116919091179055611419611dc5565b611421611df3565b611429611df3565b611431611e1a565b611439611e51565b801561147f576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6114906105db61170d565b6114ac5760405162461bcd60e51b8152600401610a5190612efa565b6002603354036114fe5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a51565b600260338190555060006115478c8c8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061174e92505050565b905061155281611c03565b6115708c8c846115625730611564565b8c5b8c8c8c8c8c8c8c611e8a565b8161157f5761157f818b6117d3565b5050600160335550505050505050505050565b600082815260fb60205260409020600101546115ad8161193f565b6109bc8383611a68565b60006000805160206133d583398151915254604051631e29f97960e31b8152600481018490526001600160a01b039091169150819063f14fcbc890602401600060405180830381600087803b15801561160f57600080fd5b505af1158015611623573d6000803e3d6000fd5b505050505050565b6000600080516020613415833981519152546001600160a01b031661164e61170d565b6001600160a01b031614611675576040516344e7d94960e01b815260040160405180910390fd5b6001600160a01b038616156116a957600061169283850185612800565b905061169d8161171c565b6116a786826117d3565b505b5063f23a6e6160e01b9695505050505050565b6116c46119d7565b6116cd81611fd5565b6109d260008261204b565b60006001600160e01b03198216637965db0b60e01b148061077357506301ffc9a760e01b6001600160e01b0319831614610773565b6000611717612055565b905090565b6001600160a01b0381166109d25760405163b20f76e360e01b81526001600160a01b0382166004820152602401610a51565b60007f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae60001b826040516020016117859190613195565b604051602081830303815290604052805190602001206040516020016117b5929190918252602082015260400190565b60408051601f19818403018152919052805160209091012092915050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052819061181190606001610b09565b80546001600160a01b0319166001600160a01b039283161790556040519082169083907f45aa97e368889fb3527c1db60c59c2ae91e82f21778613449e46d4208c1c4b1290600090a35050565b606061186985612073565b600080876001600160a01b0316866118838b8a89896120d9565b6040516118909190613195565b60006040518083038160008787f1925050503d80600081146118ce576040519150601f19603f3d011682016040523d82523d6000602084013e6118d3565b606091505b5090925090506118e4603f876131b1565b5a116118f2576118f26131d3565b61193282826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c4544000000000000815250612109565b9998505050505050505050565b6109d28161194b61170d565b612142565b61195a8282610efa565b610a6457600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff1916600117905561199361170d565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6119df61170d565b6001600160a01b03166119fa6097546001600160a01b031690565b6001600160a01b031614610d905760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a51565b6109d26000805160206133f583398151915282611592565b611a728282610efa565b15610a6457600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff19169055611aa961170d565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101829052600090611b2c90606001610b09565b546001600160a01b0316905080611b595760405163124bad6360e31b815260048101839052602401610a51565b30600080516020613415833981519152546040516331a9108f60e11b8152600481018590526001600160a01b0390911690636352211e90602401602060405180830381865afa158015611bb0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bd491906131e9565b6001600160a01b031614611bfe576040516303b673fd60e21b815260048101839052602401610a51565b919050565b303303611c13576109d2816121a6565b6109d281612073565b6109d26000805160206133f58339815191528261204b565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015611ccd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cf191906130de565b90506000611d9f866060015180519060200120868860200151604051602001611d3f9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b9050818660200151148015610ef057508551610ef0906001600160a01b031682866121d0565b600054610100900460ff16611dec5760405162461bcd60e51b8152600401610a5190613206565b6001603355565b600054610100900460ff16610d905760405162461bcd60e51b8152600401610a5190613206565b600054610100900460ff16611e415760405162461bcd60e51b8152600401610a5190613206565b610d90611e4c61170d565b611c34565b600054610100900460ff16611e785760405162461bcd60e51b8152600401610a5190613206565b610d906000611e8561170d565b61204b565b6000805160206133d5833981519152546040516383e7f6ff60e01b81526001600160a01b039091169060009082906383e7f6ff90611ed0908f908f908e90600401612f58565b6040805180830381865afa158015611eec573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f109190612f7c565b60208101518151919250611f2391612fca565b471015611f435760405163050205f960e01b815260040160405180910390fd5b816001600160a01b03166374694a2b82602001518360000151611f669190612fca565b8e8e8e8e8e8e8e8e8e8e6040518c63ffffffff1660e01b8152600401611f959a99989796959493929190613251565b6000604051808303818588803b158015611fae57600080fd5b505af1158015611fc2573d6000803e3d6000fd5b5050505050505050505050505050505050565b611fdd6119d7565b6001600160a01b0381166120425760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610a51565b6109d281611c34565b610a648282611950565b600030330361206b575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290526000906060016040516020818303038152906040528051906020012090506120c88190565b546120d4906001612fca565b905550565b60608285856040516020016120f0939291906132c3565b6040516020818303038152906040529050949350505050565b60608315612118575081610990565b8251156121285782518084602001fd5b8160405162461bcd60e51b8152600401610a5191906127a4565b61214c8282610efa565b610a6457612164816001600160a01b03166014612312565b61216f836020612312565b604051602001612180929190613302565b60408051601f198184030181529082905262461bcd60e51b8252610a51916004016127a4565b6121ae6124ad565b81146109d257604051635637b6af60e11b815260048101829052602401610a51565b60008060006121df85856124c0565b909250905060008160048111156121f8576121f8613377565b1480156122165750856001600160a01b0316826001600160a01b0316145b1561222657600192505050610990565b600080876001600160a01b0316631626ba7e60e01b888860405160240161224e92919061338d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161228c9190613195565b600060405180830381855afa9150503d80600081146122c7576040519150601f19603f3d011682016040523d82523d6000602084013e6122cc565b606091505b50915091508180156122df575080516020145b801561230657508051630b135d3f60e11b9061230490830160209081019084016130de565b145b98975050505050505050565b606060006123218360026133a6565b61232c906002612fca565b6001600160401b0381111561234357612343612849565b6040519080825280601f01601f19166020018201604052801561236d576020820181803683370190505b509050600360fc1b8160008151811061238857612388612eb5565b60200101906001600160f81b031916908160001a905350600f60fb1b816001815181106123b7576123b7612eb5565b60200101906001600160f81b031916908160001a90535060006123db8460026133a6565b6123e6906001612fca565b90505b600181111561245e576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061241a5761241a612eb5565b1a60f81b82828151811061243057612430612eb5565b60200101906001600160f81b031916908160001a90535060049490941c93612457816133bd565b90506123e9565b5083156109905760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610a51565b60003033036120705750601f1936013590565b60008082516041036124f65760208301516040840151606085015160001a6124ea87828585612505565b945094505050506124fe565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561253c57506000905060036125e9565b8460ff16601b1415801561255457508460ff16601c14155b1561256557506000905060046125e9565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156125b9573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166125e2576000600192509250506125e9565b9150600090505b94509492505050565b60006020828403121561260457600080fd5b81356001600160e01b03198116811461099057600080fd5b6001600160a01b03811681146109d257600080fd5b60008083601f84011261264357600080fd5b5081356001600160401b0381111561265a57600080fd5b6020830191508360208285010111156124fe57600080fd5b60008060008060006080868803121561268a57600080fd5b85356126958161261c565b945060208601356126a58161261c565b93506040860135925060608601356001600160401b038111156126c757600080fd5b6126d388828901612631565b969995985093965092949392505050565b6000806000604084860312156126f957600080fd5b83356001600160401b038082111561271057600080fd5b908501906080828803121561272457600080fd5b9093506020850135908082111561273a57600080fd5b5061274786828701612631565b9497909650939450505050565b60005b8381101561276f578181015183820152602001612757565b50506000910152565b60008151808452612790816020860160208601612754565b601f01601f19169290920160200192915050565b6020815260006109906020830184612778565b6000602082840312156127c957600080fd5b5035919050565b600080604083850312156127e357600080fd5b8235915060208301356127f58161261c565b809150509250929050565b60006020828403121561281257600080fd5b81356109908161261c565b6000806040838503121561283057600080fd5b823561283b8161261c565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561288757612887612849565b604052919050565b600060208083850312156128a257600080fd5b82356001600160401b03808211156128b957600080fd5b818501915085601f8301126128cd57600080fd5b8135818111156128df576128df612849565b8060051b91506128f084830161285f565b818152918301840191848101908884111561290a57600080fd5b938501935b8385101561230657843592506129248361261c565b828252938501939085019061290f565b60008060006040848603121561294957600080fd5b83356001600160401b0381111561295f57600080fd5b61296b86828701612631565b909790965060209590950135949350505050565b60006001600160401b0383111561299857612998612849565b6129ab601f8401601f191660200161285f565b90508281528383830111156129bf57600080fd5b828260208301376000602084830101529392505050565b600082601f8301126129e757600080fd5b6109908383356020850161297f565b60008083601f840112612a0857600080fd5b5081356001600160401b03811115612a1f57600080fd5b6020830191508360208260051b85010111156124fe57600080fd5b80358015158114611bfe57600080fd5b803561ffff81168114611bfe57600080fd5b6000806000806000806000806000806101208b8d031215612a7c57600080fd5b8a356001600160401b0380821115612a9357600080fd5b612a9f8e838f016129d6565b9b5060208d01359150612ab18261261c565b90995060408c0135985060608c0135975060808c013590612ad18261261c565b90965060a08c01359080821115612ae757600080fd5b50612af48d828e016129f6565b9096509450612b07905060c08c01612a3a565b9250612b1560e08c01612a4a565b9150612b246101008c01612a3a565b90509295989b9194979a5092959850565b60008060008060008060008060a0898b031215612b5157600080fd5b8835612b5c8161261c565b97506020890135612b6c8161261c565b965060408901356001600160401b0380821115612b8857600080fd5b612b948c838d016129f6565b909850965060608b0135915080821115612bad57600080fd5b612bb98c838d016129f6565b909650945060808b0135915080821115612bd257600080fd5b50612bdf8b828c01612631565b999c989b5096995094979396929594505050565b600080600060608486031215612c0857600080fd5b8335612c138161261c565b92506020840135612c238161261c565b91506040840135612c338161261c565b809150509250925092565b60008060008060008060008060008060006101208c8e031215612c6057600080fd5b6001600160401b03808d351115612c7657600080fd5b612c838e8e358f01612631565b909c509a50612c9560208e013561261c565b60208d0135995060408d0135985060608d01359750612cb760808e013561261c565b60808d013596508060a08e01351115612ccf57600080fd5b50612ce08d60a08e01358e016129f6565b9095509350612cf160c08d01612a3a565b9250612cff60e08d01612a4a565b9150612d0e6101008d01612a3a565b90509295989b509295989b9093969950565b60008060008060008060a08789031215612d3957600080fd5b8635612d448161261c565b95506020870135612d548161261c565b9450604087013593506060870135925060808701356001600160401b03811115612d7d57600080fd5b612d8989828a01612631565b979a9699509497509295939492505050565b600080600060608486031215612db057600080fd5b8335612dbb8161261c565b92506020840135612dcb8161261c565b915060408401356001600160401b03811115612de657600080fd5b612df2868287016129d6565b9150509250925092565b608081526000612e0f6080830187612778565b6001600160a01b03958616602084015261ffff949094166040830152509216606090920191909152919050565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090610ef090830184612778565b6000808335601e19843603018112612e8657600080fd5b8301803591506001600160401b03821115612ea057600080fd5b6020019150368190038213156124fe57600080fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201612ef357612ef3612ecb565b5060010190565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b604081526000612f6c604083018587612f2f565b9050826020830152949350505050565b600060408284031215612f8e57600080fd5b604051604081018181106001600160401b0382111715612fb057612fb0612849565b604052825181526020928301519281019290925250919050565b8082018082111561077357610773612ecb565b81835260006020808501808196508560051b810191508460005b878110156130615782840389528135601e1988360301811261301857600080fd5b870185810190356001600160401b0381111561303357600080fd5b80360382131561304257600080fd5b61304d868284612f2f565b9a87019a9550505090840190600101612ff7565b5091979650505050505050565b60006101008083526130828184018d612778565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a085015290506130bc818789612fdd565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b6000602082840312156130f057600080fd5b5051919050565b60006080823603121561310957600080fd5b604051608081016001600160401b03828210818311171561312c5761312c612849565b816040528435915061313d8261261c565b8183526020850135602084015260408501356040840152606085013591508082111561316857600080fd5b50830136601f82011261317a57600080fd5b6131893682356020840161297f565b60608301525092915050565b600082516131a7818460208701612754565b9190910192915050565b6000826131ce57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b6000602082840312156131fb57600080fd5b81516109908161261c565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60006101008083526132668184018d8f612f2f565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a085015290506132a0818789612fdd565b94151560c0840152505061ffff9190911660e09091015298975050505050505050565b600084516132d5818460208901612754565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081526000835161333a816017850160208801612754565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835161336b816028840160208801612754565b01602801949350505050565b634e487b7160e01b600052602160045260246000fd5b8281526040602082015260006110476040830184612778565b808202811582820484141761077357610773612ecb565b6000816133cc576133cc612ecb565b50600019019056fe412386de53449251cbf7ce1f4c6a038bf9c0746e62d331b08ef0c3fa7d0ab6729f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a660793a5062d506d35cc8f1beda67ee5028c16bfcd9c923d5bfc439c04bd929b1a164736f6c6343000811000a","storage":{"0x0":"0xff"}},"0xc58206842e4030a3b2cabc78780ae7635173c533":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106102325760003560e01c80637c69eae211610130578063b5466669116100b8578063d284d97a1161007c578063d284d97a14610d4e578063d8d3cc6e14610dbc578063e67ca8a314610e3f578063e985e9c514610e5c578063ebf0c71714610e8a57610232565b8063b5466669146109ce578063b88d4fde14610a51578063c29b52f914610b15578063c87b56dd14610c5e578063ce9fb82b14610c7b57610232565b8063a22cb465116100ff578063a22cb4651461090b578063a7fc7a0714610939578063ab3b87fe1461095f578063b3f9e4cb1461098b578063b429afeb146109a857610232565b80637c69eae21461076457806395d89b41146107e75780639d743989146107ef5780639e5be9a51461087d57610232565b806342842e0e116101be5780635cbe1112116101825780635cbe11121461061d5780636352211e1461069257806366ac3b68146106af57806368b62d32146106b757806370a082311461073e57610232565b806342842e0e146104ed57806342966c6814610523578063430c208114610540578063538361a71461056c57806357aac5741461058f57610232565b8063081812fc11610205578063081812fc146103fa578063095ea7b3146104335780632392c1891461045f57806323b872dd1461048b5780632525d06a146104c157610232565b806301ffc9a71461023757806302759c37146102725780630467e014146102aa57806306fdde031461037d575b600080fd5b61025e6004803603602081101561024d57600080fd5b50356001600160e01b031916610e92565b604080519115158252519081900360200190f35b6102a86004803603606081101561028857600080fd5b506001600160a01b03813581169160208101359091169060400135610eb1565b005b6102a8600480360360808110156102c057600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156102ef57600080fd5b82018360208201111561030157600080fd5b803590602001918460018302840111600160201b8311171561032257600080fd5b919390929091602081019035600160201b81111561033f57600080fd5b82018360208201111561035157600080fd5b803590602001918460018302840111600160201b8311171561037257600080fd5b509092509050610ed3565b610385610f62565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103bf5781810151838201526020016103a7565b50505050905090810190601f1680156103ec5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6104176004803603602081101561041057600080fd5b5035610f84565b604080516001600160a01b039092168252519081900360200190f35b6102a86004803603604081101561044957600080fd5b506001600160a01b038135169060200135610fe6565b6102a86004803603604081101561047557600080fd5b506001600160a01b0381351690602001356110f7565b6102a8600480360360608110156104a157600080fd5b506001600160a01b03813581169160208101359091169060400135611115565b6102a8600480360360408110156104d757600080fd5b506001600160a01b03813516906020013561115a565b6102a86004803603606081101561050357600080fd5b506001600160a01b0381358116916020810135909116906040013561117a565b6102a86004803603602081101561053957600080fd5b5035611195565b61025e6004803603604081101561055657600080fd5b506001600160a01b0381351690602001356111e6565b6102a86004803603604081101561058257600080fd5b50803590602001356111f9565b6102a8600480360360808110156105a557600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156105df57600080fd5b8201836020820111156105f157600080fd5b803590602001918460018302840111600160201b8311171561061257600080fd5b50909250905061124f565b6102a86004803603604081101561063357600080fd5b81359190810190604081016020820135600160201b81111561065457600080fd5b82018360208201111561066657600080fd5b803590602001918460018302840111600160201b8311171561068757600080fd5b5090925090506112be565b610417600480360360208110156106a857600080fd5b5035611320565b6102a861137a565b61072c600480360360408110156106cd57600080fd5b81359190810190604081016020820135600160201b8111156106ee57600080fd5b82018360208201111561070057600080fd5b803590602001918460018302840111600160201b8311171561072157600080fd5b509092509050611385565b60408051918252519081900360200190f35b61072c6004803603602081101561075457600080fd5b50356001600160a01b03166113cf565b6102a86004803603606081101561077a57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156107a957600080fd5b8201836020820111156107bb57600080fd5b803590602001918460018302840111600160201b831117156107dc57600080fd5b509092509050611437565b61038561149a565b6102a86004803603608081101561080557600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561083f57600080fd5b82018360208201111561085157600080fd5b803590602001918460018302840111600160201b8311171561087257600080fd5b5090925090506114b6565b6102a86004803603608081101561089357600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156108cd57600080fd5b8201836020820111156108df57600080fd5b803590602001918460018302840111600160201b8311171561090057600080fd5b509092509050611506565b6102a86004803603604081101561092157600080fd5b506001600160a01b0381351690602001351515611564565b6102a86004803603602081101561094f57600080fd5b50356001600160a01b0316611630565b6102a86004803603604081101561097557600080fd5b506001600160a01b03813516906020013561164b565b610417600480360360208110156109a157600080fd5b5035611672565b61025e600480360360208110156109be57600080fd5b50356001600160a01b0316611694565b6102a8600480360360608110156109e457600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610a1357600080fd5b820183602082011115610a2557600080fd5b803590602001918460018302840111600160201b83111715610a4657600080fd5b5090925090506116a7565b6102a860048036036080811015610a6757600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b811115610aa157600080fd5b820183602082011115610ab357600080fd5b803590602001918460018302840111600160201b83111715610ad457600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506116fa945050505050565b6102a8600480360360a0811015610b2b57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b811115610b6557600080fd5b820183602082011115610b7757600080fd5b803590602001918460018302840111600160201b83111715610b9857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b811115610bea57600080fd5b820183602082011115610bfc57600080fd5b803590602001918460018302840111600160201b83111715610c1d57600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061174c945050505050565b61038560048036036020811015610c7457600080fd5b5035611797565b6102a860048036036080811015610c9157600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610cc057600080fd5b820183602082011115610cd257600080fd5b803590602001918460018302840111600160201b83111715610cf357600080fd5b919390929091602081019035600160201b811115610d1057600080fd5b820183602082011115610d2257600080fd5b803590602001918460018302840111600160201b83111715610d4357600080fd5b509092509050611892565b6102a860048036036020811015610d6457600080fd5b810190602081018135600160201b811115610d7e57600080fd5b820183602082011115610d9057600080fd5b803590602001918460018302840111600160201b83111715610db157600080fd5b50909250905061191b565b6102a860048036036060811015610dd257600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610e0157600080fd5b820183602082011115610e1357600080fd5b803590602001918460018302840111600160201b83111715610e3457600080fd5b50909250905061199e565b6102a860048036036020811015610e5557600080fd5b50356119f3565b61025e60048036036040811015610e7257600080fd5b506001600160a01b0381358116916020013516611a05565b61072c611a33565b6001600160e01b03191660009081526020819052604090205460ff1690565b610eba33611694565b610ec357600080fd5b610ece838383611a57565b505050565b610edc33611694565b610ee557600080fd5b610f5a868686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8a018190048102820181019092528881529250889150879081908401838280828437600092019190915250611a9f92505050565b505050505050565b6040805180820190915260078152662e63727970746f60c81b60208201525b90565b6000610f8f82611ac9565b610fca5760405162461bcd60e51b815260040180806020018281038252602c815260200180612848602c913960400191505060405180910390fd5b506000908152600360205260409020546001600160a01b031690565b6000610ff182611320565b9050806001600160a01b0316836001600160a01b031614156110445760405162461bcd60e51b81526004018080602001828103825260218152602001806128bf6021913960400191505060405180910390fd5b336001600160a01b038216148061106057506110608133611a05565b61109b5760405162461bcd60e51b815260040180806020018281038252603881526020018061279c6038913960400191505060405180910390fd5b60008281526003602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b806111023382611ae6565b61110b57600080fd5b610ece8383611b82565b61111f3382611ae6565b610ec35760405162461bcd60e51b81526004018080602001828103825260318152602001806128e06031913960400191505060405180910390fd5b61116333611694565b61116c57600080fd5b6111768282611b82565b5050565b610ece838383604051806020016040528060008152506116fa565b61119f3382611ae6565b6111da5760405162461bcd60e51b81526004018080602001828103825260308152602001806129366030913960400191505060405180910390fd5b6111e381611bf8565b50565b60006111f28383611ae6565b9392505050565b6000828152600860205260409020546001600160a01b0316331461121c57600080fd5b6040518290829033907ff10fc780c78f994a214c79a2ae8d8b7bfe7cc3f0f935a8f05a29525e71d7f12790600090a45050565b61125833611694565b61126157600080fd5b61126c858585611a57565b6112ae85858585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611c7992505050565b6112b757600080fd5b5050505050565b826112c93382611ae6565b6112d257600080fd5b61131a6113158585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b611bf8565b50505050565b6000818152600260205260408120546001600160a01b0316806113745760405162461bcd60e51b81526004018080602001828103825260298152602001806127fe6029913960400191505060405180910390fd5b92915050565b61138333611e64565b565b60006113c78484848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b949350505050565b60006001600160a01b0382166114165760405162461bcd60e51b815260040180806020018281038252602a8152602001806127d4602a913960400191505060405180910390fd5b6001600160a01b038216600090815260046020526040902061137490611e75565b826114423382611ae6565b61144b57600080fd5b6112b7858585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250611a9f915050565b604080518082019091526002815261155160f21b602082015290565b6112b785858585858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201829052506040805160208101909152908152925061174c915050565b826115113382611ae6565b61151a57600080fd5b610f5a868661155f8787878080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b611a57565b6001600160a01b0382163314156115c2576040805162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604482015290519081900360640190fd5b3360008181526005602090815260408083206001600160a01b03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b61163933611694565b61164257600080fd5b6111e381611e79565b806116563382611ae6565b61165f57600080fd5b610ece61166b83611320565b8484611e8a565b6000818152600860205260408120546001600160a01b03168061137457600080fd5b600061137460018363ffffffff611fce16565b6116b033611694565b6116b957600080fd5b61131a848484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061203592505050565b611705848484611115565b61171184848484611c79565b61131a5760405162461bcd60e51b815260040180806020018281038252603281526020018061271a6032913960400191505060405180910390fd5b826117573382611ae6565b61176057600080fd5b600061176c8585611dac565b9050611779878783611a57565b61178587878386611c79565b61178e57600080fd5b50505050505050565b60606117a282611ac9565b6117ab57600080fd5b600760066000848152602001908152602001600020604051602001808380546001816001161561010002031660029004801561181e5780601f106117fc57610100808354040283529182019161181e565b820191906000526020600020905b81548152906001019060200180831161180a575b5050828054600181600116156101000203166002900480156118775780601f10611855576101008083540402835291820191611877565b820191906000526020600020905b815481529060010190602001808311611863575b505060408051601f1981840301815291905295945050505050565b8461189d3382611ae6565b6118a657600080fd5b61178e878787878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b018190048102820181019092528981529250899150889081908401838280828437600092019190915250611a9f92505050565b61192433611694565b61192d57600080fd5b611939600783836125cf565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b828260405180806020018281038252848482818152602001925080828437600083820152604051601f909101601f19169092018290039550909350505050a15050565b826119a93382611ae6565b6119b257600080fd5b6112b7858585858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061203592505050565b6119fc33611694565b6111da57600080fd5b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b7f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f90565b611a62838383611e8a565b6000818152600860205260409020546001600160a01b031615610ece57600090815260086020526040902080546001600160a01b03191690555050565b611aaa848484612035565b611ac0600085611aba8686611dac565b84611c79565b61131a57600080fd5b6000908152600260205260409020546001600160a01b0316151590565b6000611af182611ac9565b611b2c5760405162461bcd60e51b815260040180806020018281038252602c815260200180612770602c913960400191505060405180910390fd5b6000611b3783611320565b9050806001600160a01b0316846001600160a01b03161480611b725750836001600160a01b0316611b6784610f84565b6001600160a01b0316145b806113c757506113c78185611a05565b611b8b81611ac9565b611b9457600080fd5b6040516001600160a01b0383169082907fb1b34e6d89e1c584527d447f4b29ffad55635a37edeeb564939a6483401b31a590600090a3600090815260086020526040902080546001600160a01b0319166001600160a01b0392909216919091179055565b611c018161220f565b6000818152600860205260409020546001600160a01b031615611c3b57600081815260086020526040902080546001600160a01b03191690555b60008181526006602052604090205460026000196101006001841615020190911604156111e35760008181526006602052604081206111e39161264d565b6000611c8d846001600160a01b0316612221565b611c99575060016113c7565b604051630a85bd0160e11b815233600482018181526001600160a01b03888116602485015260448401879052608060648501908152865160848601528651600095928a169463150b7a029490938c938b938b939260a4019060208501908083838e5b83811015611d13578181015183820152602001611cfb565b50505050905090810190601f168015611d405780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015611d6257600080fd5b505af1158015611d76573d6000803e3d6000fd5b505050506040513d6020811015611d8c57600080fd5b50516001600160e01b031916630a85bd0160e11b14915050949350505050565b6000815160001415611dbd57600080fd5b82826040516020018082805190602001908083835b60208310611df15780518252601f199092019160209182019101611dd2565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040528051906020012060405160200180838152602001828152602001925050506040516020818303038152906040528051906020012060001c905092915050565b6111e360018263ffffffff61222716565b5490565b6111e360018263ffffffff61228e16565b826001600160a01b0316611e9d82611320565b6001600160a01b031614611ee25760405162461bcd60e51b81526004018080602001828103825260298152602001806128966029913960400191505060405180910390fd5b6001600160a01b038216611f275760405162461bcd60e51b815260040180806020018281038252602481526020018061274c6024913960400191505060405180910390fd5b611f308161230f565b6001600160a01b0383166000908152600460205260409020611f519061234a565b6001600160a01b0382166000908152600460205260409020611f7290612361565b60008181526002602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60006001600160a01b0382166120155760405162461bcd60e51b81526004018080602001828103825260228152602001806128746022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b60006120418383611dac565b905061204d848261236a565b815161205857600080fd5b61206181611ac9565b61206a57600080fd5b606082600660008681526020019081526020016000206040516020018083805190602001908083835b602083106120b25780518252601f199092019160209182019101612093565b6001836020036101000a03801982511681845116808217855250505050505090500180601760f91b815250600101828054600181600116156101000203166002900480156121375780601f10612115576101008083540402835291820191612137565b820191906000526020600020905b815481529060010190602001808311612123575b505060408051601f19818403018152918152600087815260066020908152919020825192965061216d9550935085019150612691565b50817fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952826040518080602001828103825283818151815260200191508051906020019080838360005b838110156121ce5781810151838201526020016121b6565b50505050905090810190601f1680156121fb5780820380516001836020036101000a031916815260200191505b509250505060405180910390a25050505050565b6111e361221b82611320565b8261249b565b3b151590565b6122318282611fce565b61226c5760405162461bcd60e51b81526004018080602001828103825260218152602001806128276021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff19169055565b6122988282611fce565b156122ea576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b6000818152600360205260409020546001600160a01b0316156111e357600090815260036020526040902080546001600160a01b0319169055565b805461235d90600163ffffffff61257216565b9055565b80546001019055565b6001600160a01b0382166123c5576040805162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f2061646472657373604482015290519081900360640190fd5b6123ce81611ac9565b15612420576040805162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000604482015290519081900360640190fd5b600081815260026020908152604080832080546001600160a01b0319166001600160a01b03871690811790915583526004909152902061245f90612361565b60405181906001600160a01b038416906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b816001600160a01b03166124ae82611320565b6001600160a01b0316146124f35760405162461bcd60e51b81526004018080602001828103825260258152602001806129116025913960400191505060405180910390fd5b6124fc8161230f565b6001600160a01b038216600090815260046020526040902061251d9061234a565b60008181526002602052604080822080546001600160a01b0319169055518291906001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6000828211156125c9576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106126105782800160ff1982351617855561263d565b8280016001018555821561263d579182015b8281111561263d578235825591602001919060010190612622565b506126499291506126ff565b5090565b50805460018160011615610100020316600290046000825580601f1061267357506111e3565b601f0160209004906000526020600020908101906111e391906126ff565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106126d257805160ff191683800117855561263d565b8280016001018555821561263d579182015b8281111561263d5782518255916020019190600101906126e4565b610f8191905b80821115612649576000815560010161270556fe4552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c654552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e526f6c65733a206163636f756e7420697320746865207a65726f20616464726573734552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f7665644552433732313a206275726e206f6620746f6b656e2074686174206973206e6f74206f776e4552433732314275726e61626c653a2063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564a265627a7a72315820fb6a1b26cc352dbb05e6627fd530bbb44114ac3a349f30d1f071136c656d20dc64736f6c634300050c0032","storage":{"0x7":"0x68747470733a2f2f6578616d706c652e636f6d2f000000000000000000000028","0xbdf39e9e65b2355b1b0b06df799c09159f0ab90f06a9bb2153f5de7d9b0ea81":"0x1","0x1a306d3e9bf29128dee78d8d16c9f378a11bbdf917a9caf986fc6e60846e37e7":"0x63727970746f000000000000000000000000000000000000000000000000000c","0x42c63635470f1fb1d6d4b6441c413cb435b1ebb6fedd1896dd5e25d1399147dd":"0x1","0x605d7a0bb2b20c4004d356eb969ff104dcca62360aa356247072f5e0df6472e3":"0xdead","0x67be87c3ff9960ca1e9cfac5cab2ff4747269cf9ed20c9b7306235ac35a491c5":"0x1","0x70f464f95f9ab7aba03264fd4cac1711d774d3703ce74217180264d4efc2105f":"0x1","0x76a72f26a108e6f3f687141f5f42d21d65857c03cb1b01aa1284f9a9ccd085da":"0x1","0x9562381dfbc2d8b8b66e765249f330164b73e329e5f01670660643571d1974df":"0x1","0x9f23d2403fb64167582d316b1bc5b35a6ed48524341ab24947c71df77304b29e":"0x1","0xf7815fccbf112960a73756e185887fedcb9fc64ca0a16cc5923b7960ed780800":"0x1"}},"0xc965345edac823d56812cd20a10316233916a605":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101c6575f3560e01c806395d89b41116100fe578063c87b56dd1161009e578063e985e9c51161006e578063e985e9c5146103d4578063f2fde38b1461040f578063f6a74ed714610422578063fca247ac14610435575f80fd5b8063c87b56dd14610377578063d6e4fa861461038a578063da8c229e146103a9578063ddf7fcb0146103cb575f80fd5b8063a7fc7a07116100d9578063a7fc7a0714610334578063b88d4fde14610347578063c1a287e21461035a578063c475abff14610364575f80fd5b806395d89b411461030657806396e494e81461030e578063a22cb46514610321575f80fd5b80633f15457f116101695780636352211e116101445780636352211e146102c757806370a08231146102da578063715018a6146102ed5780638da5cb5b146102f5575f80fd5b80633f15457f1461028e57806342842e0e146102a15780634e543b26146102b4575f80fd5b8063095ea7b3116101a4578063095ea7b3146102325780630e297b451461024757806323b872dd1461026857806328ed4f6c1461027b575f80fd5b806301ffc9a7146101ca57806306fdde03146101f2578063081812fc14610207575b5f80fd5b6101dd6101d83660046117dd565b610448565b60405190151581526020015b60405180910390f35b6101fa610499565b6040516101e99190611845565b61021a610215366004611857565b610528565b6040516001600160a01b0390911681526020016101e9565b610245610240366004611882565b61054d565b005b61025a6102553660046118ac565b610666565b6040519081526020016101e9565b6102456102763660046118e1565b61067b565b61024561028936600461190e565b6106ac565b60085461021a906001600160a01b031681565b6102456102af3660046118e1565b6107be565b6102456102c236600461193c565b6107d8565b61021a6102d5366004611857565b610848565b61025a6102e836600461193c565b610869565b6102456108ed565b6006546001600160a01b031661021a565b6101fa610900565b6101dd61031c366004611857565b61090f565b61024561032f366004611957565b610934565b61024561034236600461193c565b610943565b61024561035536600461199b565b610996565b61025a6276a70081565b61025a610372366004611a74565b6109ce565b6101fa610385366004611857565b610b52565b61025a610398366004611857565b5f9081526007602052604090205490565b6101dd6103b736600461193c565b600a6020525f908152604090205460ff1681565b61025a60095481565b6101dd6103e2366004611a94565b6001600160a01b039182165f90815260056020908152604080832093909416825291909152205460ff1690565b61024561041d36600461193c565b610bc2565b61024561043036600461193c565b610c3b565b61025a6104433660046118ac565b610c8b565b5f6001600160e01b031982166301ffc9a760e01b148061047857506001600160e01b031982166380ac58cd60e01b145b8061049357506001600160e01b03198216630a3b53db60e21b145b92915050565b60605f80546104a790611ac0565b80601f01602080910402602001604051908101604052809291908181526020018280546104d390611ac0565b801561051e5780601f106104f55761010080835404028352916020019161051e565b820191905f5260205f20905b81548152906001019060200180831161050157829003601f168201915b5050505050905090565b5f61053282610c99565b505f908152600460205260409020546001600160a01b031690565b5f61055782610cf7565b9050806001600160a01b0316836001600160a01b0316036105c95760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084015b60405180910390fd5b336001600160a01b03821614806105e557506105e581336103e2565b6106575760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016105c0565b6106618383610d56565b505050565b5f6106738484845f610dc3565b949350505050565b6106853382610fc7565b6106a15760405162461bcd60e51b81526004016105c090611af8565b610661838383611040565b6008546009546040516302571be360e01b8152600481019190915230916001600160a01b0316906302571be390602401602060405180830381865afa1580156106f7573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061071b9190611b45565b6001600160a01b03161461072d575f80fd5b6107373383610fc7565b61073f575f80fd5b6008546009546040516306ab592360e01b81526004810191909152602481018490526001600160a01b038381166044830152909116906306ab5923906064016020604051808303815f875af115801561079a573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106619190611b60565b61066183838360405180602001604052805f815250610996565b6107e06111a2565b600854600954604051630c4b7b8560e11b815260048101919091526001600160a01b03838116602483015290911690631896f70a906044015f604051808303815f87803b15801561082f575f80fd5b505af1158015610841573d5f803e3d5ffd5b5050505050565b5f818152600760205260408120544210610860575f80fd5b61049382610cf7565b5f6001600160a01b0382166108d25760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b60648201526084016105c0565b506001600160a01b03165f9081526003602052604090205490565b6108f56111a2565b6108fe5f6111fc565b565b6060600180546104a790611ac0565b5f81815260076020526040812054429061092d906276a70090611b77565b1092915050565b61093f33838361124d565b5050565b61094b6111a2565b6001600160a01b0381165f818152600a6020526040808220805460ff19166001179055517f0a8bb31534c0ed46f380cb867bd5c803a189ced9a764e30b3a4991a9901d74749190a250565b6109a03383610fc7565b6109bc5760405162461bcd60e51b81526004016105c090611af8565b6109c88484848461131a565b50505050565b6008546009546040516302571be360e01b815260048101919091525f9130916001600160a01b03909116906302571be390602401602060405180830381865afa158015610a1d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a419190611b45565b6001600160a01b031614610a53575f80fd5b335f908152600a602052604090205460ff16610a6d575f80fd5b5f838152600760205260409020544290610a8b906276a70090611b77565b1015610a95575f80fd5b610aa26276a70083611b77565b5f848152600760205260409020546276a70090610ac0908590611b77565b610aca9190611b77565b11610ad3575f80fd5b5f8381526007602052604081208054849290610af0908490611b77565b90915550505f838152600760205260409081902054905184917f9b87a00e30f1ac65d898f070f8a3488fe60517182d0a2098e1b4b93a54aa9bd691610b3791815260200190565b60405180910390a250505f9081526007602052604090205490565b6060610b5d82610c99565b5f610b7260408051602081019091525f815290565b90505f815111610b905760405180602001604052805f815250610bbb565b80610b9a8461134d565b604051602001610bab929190611b96565b6040516020818303038152906040525b9392505050565b610bca6111a2565b6001600160a01b038116610c2f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016105c0565b610c38816111fc565b50565b610c436111a2565b6001600160a01b0381165f818152600a6020526040808220805460ff19169055517f33d83959be2573f5453b12eb9d43b3499bc57d96bd2f067ba44803c859e811139190a250565b5f6106738484846001610dc3565b5f818152600260205260409020546001600160a01b0316610c385760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105c0565b5f818152600260205260408120546001600160a01b0316806104935760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105c0565b5f81815260046020526040902080546001600160a01b0319166001600160a01b0384169081179091558190610d8a82610cf7565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6008546009546040516302571be360e01b815260048101919091525f9130916001600160a01b03909116906302571be390602401602060405180830381865afa158015610e12573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e369190611b45565b6001600160a01b031614610e48575f80fd5b335f908152600a602052604090205460ff16610e62575f80fd5b610e6b8561090f565b610e73575f80fd5b610e806276a70042611b77565b6276a700610e8e8542611b77565b610e989190611b77565b11610ea1575f80fd5b610eab8342611b77565b5f868152600760209081526040808320939093556002905220546001600160a01b031615610edc57610edc856113dd565b610ee6848661146f565b8115610f6d576008546009546040516306ab592360e01b81526004810191909152602481018790526001600160a01b038681166044830152909116906306ab5923906064016020604051808303815f875af1158015610f47573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f6b9190611b60565b505b6001600160a01b038416857fb3d987963d01b2f68493b4bdb130988f157ea43070d4ad840fee0466ed9370d9610fa38642611b77565b60405190815260200160405180910390a3610fbe8342611b77565b95945050505050565b5f80610fd283610848565b9050806001600160a01b0316846001600160a01b0316148061100d5750836001600160a01b031661100284610528565b6001600160a01b0316145b8061067357506001600160a01b038082165f9081526005602090815260408083209388168352929052205460ff16610673565b826001600160a01b031661105382610cf7565b6001600160a01b0316146110795760405162461bcd60e51b81526004016105c090611bc4565b6001600160a01b0382166110db5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b60648201526084016105c0565b826001600160a01b03166110ee82610cf7565b6001600160a01b0316146111145760405162461bcd60e51b81526004016105c090611bc4565b5f81815260046020908152604080832080546001600160a01b03199081169091556001600160a01b038781168086526003855283862080545f1901905590871680865283862080546001019055868652600290945282852080549092168417909155905184937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6006546001600160a01b031633146108fe5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016105c0565b600680546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b816001600160a01b0316836001600160a01b0316036112ae5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c65720000000000000060448201526064016105c0565b6001600160a01b038381165f81815260056020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b611325848484611040565b611331848484846115f7565b6109c85760405162461bcd60e51b81526004016105c090611c09565b60605f611359836116f1565b60010190505f8167ffffffffffffffff81111561137857611378611987565b6040519080825280601f01601f1916602001820160405280156113a2576020820181803683370190505b5090508181016020015b5f19016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a85049450846113ac57509392505050565b5f6113e782610cf7565b90506113f282610cf7565b5f83815260046020908152604080832080546001600160a01b03199081169091556001600160a01b0385168085526003845282852080545f190190558785526002909352818420805490911690555192935084927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6001600160a01b0382166114c55760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f206164647265737360448201526064016105c0565b5f818152600260205260409020546001600160a01b0316156115295760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105c0565b5f818152600260205260409020546001600160a01b03161561158d5760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105c0565b6001600160a01b0382165f81815260036020908152604080832080546001019055848352600290915280822080546001600160a01b0319168417905551839291907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b5f6001600160a01b0384163b156116e957604051630a85bd0160e11b81526001600160a01b0385169063150b7a029061163a903390899088908890600401611c5b565b6020604051808303815f875af1925050508015611674575060408051601f3d908101601f1916820190925261167191810190611c97565b60015b6116cf573d8080156116a1576040519150601f19603f3d011682016040523d82523d5f602084013e6116a6565b606091505b5080515f036116c75760405162461bcd60e51b81526004016105c090611c09565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610673565b506001610673565b5f8072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b831061172f5772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef8100000000831061175b576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc10000831061177957662386f26fc10000830492506010015b6305f5e1008310611791576305f5e100830492506008015b61271083106117a557612710830492506004015b606483106117b7576064830492506002015b600a83106104935760010192915050565b6001600160e01b031981168114610c38575f80fd5b5f602082840312156117ed575f80fd5b8135610bbb816117c8565b5f5b838110156118125781810151838201526020016117fa565b50505f910152565b5f81518084526118318160208601602086016117f8565b601f01601f19169290920160200192915050565b602081525f610bbb602083018461181a565b5f60208284031215611867575f80fd5b5035919050565b6001600160a01b0381168114610c38575f80fd5b5f8060408385031215611893575f80fd5b823561189e8161186e565b946020939093013593505050565b5f805f606084860312156118be575f80fd5b8335925060208401356118d08161186e565b929592945050506040919091013590565b5f805f606084860312156118f3575f80fd5b83356118fe8161186e565b925060208401356118d08161186e565b5f806040838503121561191f575f80fd5b8235915060208301356119318161186e565b809150509250929050565b5f6020828403121561194c575f80fd5b8135610bbb8161186e565b5f8060408385031215611968575f80fd5b82356119738161186e565b915060208301358015158114611931575f80fd5b634e487b7160e01b5f52604160045260245ffd5b5f805f80608085870312156119ae575f80fd5b84356119b98161186e565b935060208501356119c98161186e565b925060408501359150606085013567ffffffffffffffff808211156119ec575f80fd5b818701915087601f8301126119ff575f80fd5b813581811115611a1157611a11611987565b604051601f8201601f19908116603f01168101908382118183101715611a3957611a39611987565b816040528281528a6020848701011115611a51575f80fd5b826020860160208301375f60208483010152809550505050505092959194509250565b5f8060408385031215611a85575f80fd5b50508035926020909101359150565b5f8060408385031215611aa5575f80fd5b8235611ab08161186e565b915060208301356119318161186e565b600181811c90821680611ad457607f821691505b602082108103611af257634e487b7160e01b5f52602260045260245ffd5b50919050565b6020808252602d908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526c1c881bdc88185c1c1c9bdd9959609a1b606082015260800190565b5f60208284031215611b55575f80fd5b8151610bbb8161186e565b5f60208284031215611b70575f80fd5b5051919050565b8082018082111561049357634e487b7160e01b5f52601160045260245ffd5b5f8351611ba78184602088016117f8565b835190830190611bbb8183602088016117f8565b01949350505050565b60208082526025908201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060408201526437bbb732b960d91b606082015260800190565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6001600160a01b03858116825284166020820152604081018390526080606082018190525f90611c8d9083018461181a565b9695505050505050565b5f60208284031215611ca7575f80fd5b8151610bbb816117c856fea164736f6c6343000818000a","storage":{"0x0":"0x0","0x1":"0x0","0x6":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x8":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0x9":"0x93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae","0x9b8bc185dce56a7ea1b27d35e40ac15dcdf9144303dfd4d8880220078bf21a2c":"0x1","0xdb5e6a17df8534b92b0c8de590f14b4fb4b5eb2c62ef1bf7a05555e354797508":"0x1","0xe1a982900207b619cb6c39be8cb5e60da1370171412fb65b5efc25e2dce3c34c":"0x1"}},"0xce4bb7dc1eb9dce75743de6a4b48534fd427ef51":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xe85541865bbb62a05064ce5c9f41cc293a8ea996","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0xd178b720229c39de617846f84cf9c8d32a63a23d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610106575f3560e01c806371017a541161009e5780639e32d3641161006e5780639e32d3641461025a578063a424740014610281578063dd6b9e2214610294578063e1c4b65a146102a7578063e35a14e5146102ba575f80fd5b806371017a541461020e5780637b103999146102215780638f0dbd25146102345780639810b69514610247575f80fd5b8063485cc955116100d9578063485cc95514610191578063572b6c05146101a457806358884432146101d05780636ccbae5f146101fb575f80fd5b8063150b7a021461010a5780631694116d1461013b5780631bf7e13e146101505780631c351a9d14610170575b5f80fd5b61011d610118366004611434565b6102e2565b6040516001600160e01b031990911681526020015b60405180910390f35b61014e6101493660046114e3565b610372565b005b61016361015e366004611549565b61040d565b6040516101329190611601565b61018361017e366004611613565b6104d6565b604051908152602001610132565b61014e61019f366004611666565b6105c3565b6101c06101b236600461169d565b6001600160a01b0316301490565b6040519015158152602001610132565b6067546101e3906001600160a01b031681565b6040516001600160a01b039091168152602001610132565b6101836102093660046116b8565b6106f8565b6101e361021c3660046116cf565b610751565b6066546101e3906001600160a01b031681565b61014e6102423660046116ef565b610791565b6101e36102553660046116cf565b610806565b6101837fd81bbfcee722494b885e891546eeac23d0eedcd44038d7a2f6ef9ec2f9e0d23981565b6101c061028f366004611549565b61085f565b6101c06102a236600461172d565b6108a8565b61014e6102b5366004611771565b61091d565b6101e36102c83660046116b8565b5f908152606560205260409020546001600160a01b031690565b6066545f906001600160a01b03166102f8610a43565b6001600160a01b031614158061032257505f848152606560205260409020546001600160a01b0316155b156103605783610330610a43565b60405163634afa0d60e01b815260048101929092526001600160a01b031660248201526044015b60405180910390fd5b50630a85bd0160e11b95945050505050565b828261037e8282610751565b6001600160a01b031661038f610a43565b6001600160a01b0316146103c057604051632cd9b44d60e11b81526004810183905260248101829052604401610357565b5f6103cb8686610806565b90505f5b87811015610402576103fa8989838181106103ec576103ec6117b0565b905060200201358387610a51565b6001016103cf565b505050505050505050565b60605f5a905061041e85858561085f565b61043b57604051638baa579f60e01b815260040160405180910390fd5b6104cb61044b602087018761169d565b3060408801358461045f60608b018b6117c4565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f92019190915250610b8492505050565b9150505b9392505050565b6067545f906001600160a01b031663aa271e1a6104f1610a43565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015610533573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105579190611807565b1580610572575030610567610a43565b6001600160a01b0316145b156105a45761057f610a43565b60405163e2c8c9d560e01b81526001600160a01b039091166004820152602401610357565b5f6105b0858585610c60565b90506105bb81610e73565b949350505050565b5f54610100900460ff16158080156105e157505f54600160ff909116105b806105fa5750303b1580156105fa57505f5460ff166001145b61065d5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610357565b5f805460ff19166001179055801561067e575f805461ff0019166101001790555b606680546001600160a01b038086166001600160a01b031992831617909255606780549285169290911691909117905580156106f3575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f9061074a906060016040516020818303038152906040528051906020012090565b5492915050565b5f80838360405160200161076f929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209150505b92915050565b828261079d8282610751565b6001600160a01b03166107ae610a43565b6001600160a01b0316146107df57604051632cd9b44d60e11b81526004810183905260248101829052604401610357565b856107e981610e73565b6107fd876107f78889610806565b86610a51565b50505050505050565b5f8060026108148585610e8f565b6040516108219190611826565b602060405180830381855afa15801561083c573d5f803e3d5ffd5b5050506040513d601f19601f820116820180604052508101906105bb9190611841565b5f6105bb61086c856118c6565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250610f1492505050565b5f805b8281101561091257846001600160a01b03166108f38585848181106108d2576108d26117b0565b905060200201355f908152606560205260409020546001600160a01b031690565b6001600160a01b03161461090a575f9150506104cf565b6001016108ab565b506001949350505050565b6067546001600160a01b031663aa271e1a610936610a43565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015610978573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061099c9190611807565b15806109b75750306109ac610a43565b6001600160a01b0316145b156109c45761057f610a43565b5f5b818110156106f357610a3a8383838181106109e3576109e36117b0565b90506020028101906109f59190611983565b610a039060208101906117c4565b858585818110610a1557610a156117b0565b9050602002810190610a279190611983565b610a3590602081019061169d565b610c60565b506001016109c6565b5f610a4c611059565b905090565b5f838152606560205260409020546001600160a01b03838116911614610ab4575f83815260656020526040908190205490516326995d8360e11b8152600481018590526001600160a01b0391821660248201529083166044820152606401610357565b5f838152606560205260409081902080546001600160a01b03191690556066549051632142170760e11b81523060048201526001600160a01b03838116602483015260448201869052909116906342842e0e906064015f604051808303815f87803b158015610b21575f80fd5b505af1158015610b33573d5f803e3d5ffd5b50505050806001600160a01b0316610b49610a43565b6001600160a01b0316847f9a471856befea1cabcd7fc8a1c4d70ea07b8ed2ee205cc361f932433542ef3fe60405160405180910390a4505050565b6060610b8f85611076565b5f80876001600160a01b031686610ba88b8a89896110db565b604051610bb59190611826565b5f604051808303815f8787f1925050503d805f8114610bef576040519150601f19603f3d011682016040523d82523d5f602084013e610bf4565b606091505b509092509050610c05603f876119bf565b5a11610c1357610c136119d2565b610c5382826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061110b565b9998505050505050505050565b5f60605f7fd81bbfcee722494b885e891546eeac23d0eedcd44038d7a2f6ef9ec2f9e0d2398686604051602001610c989291906119e6565b60405160208183030381529060405280519060200120604051602001610cc8929190918252602082015260400190565b60408051808303601f19018152828252805160209091012060028084526060840190925292505f9190816020015b6060815260200190600190039081610cf657905050905086868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920182905250855186945090925015159050610d5657610d566117b0565b6020026020010181905250604051806040016040528060038152602001621e9a5b60ea1b81525081600181518110610d9057610d906117b0565b6020908102919091018101919091525f8381526065909152604080822080546001600160a01b0319166001600160a01b03898116919091179091556067549151635cd7e3b360e01b8152911691635cd7e3b391610df891309186918991829190600401611a4d565b5f604051808303815f87803b158015610e0f575f80fd5b505af1158015610e21573d5f803e3d5ffd5b50505050846001600160a01b0316827f08717469d38a4b02325ea6637978c7952f94d3d8fc7848994f618ddbf4d637f18989604051610e61929190611aab565b60405180910390a35095945050505050565b303303610e8657610e8381611144565b50565b610e8381611076565b60605f82610e9f60016020611ad9565b60ff1660208110610eb257610eb26117b0565b1a9050610ec0600282611af2565b60ff1615610ecf576003610ed2565b60025b84604051602001610efc92919060f89290921b6001600160f81b0319168252600182015260210190565b60405160208183030381529060405291505092915050565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015610f58573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f7c9190611841565b90505f611029866060015180519060200120868860200151604051602001610fc99392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561104f5750855161104f906001600160a01b0316828661116e565b9695505050505050565b5f30330361106e575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f906060016040516020818303038152906040528051906020012090506110ca8190565b546110d6906001611b13565b905550565b60608285856040516020016110f293929190611b26565b6040516020818303038152906040529050949350505050565b6060831561111a5750816104cf565b82511561112a5782518084602001fd5b8160405162461bcd60e51b81526004016103579190611601565b61114c6112a9565b8114610e8357604051635637b6af60e11b815260048101829052602401610357565b5f805f61117b85856112bb565b90925090505f81600481111561119357611193611b64565b1480156111b15750856001600160a01b0316826001600160a01b0316145b156111c1576001925050506104cf565b5f80876001600160a01b0316631626ba7e60e01b88886040516024016111e8929190611b78565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516112269190611826565b5f60405180830381855afa9150503d805f811461125e576040519150601f19603f3d011682016040523d82523d5f602084013e611263565b606091505b5091509150818015611276575080516020145b801561129d57508051630b135d3f60e11b9061129b9083016020908101908401611841565b145b98975050505050505050565b5f3033036110735750601f1936013590565b5f8082516041036112ef576020830151604084015160608501515f1a6112e3878285856112fd565b945094505050506112f6565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561133257505f905060036113d9565b8460ff16601b1415801561134a57508460ff16601c14155b1561135a57505f905060046113d9565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156113ab573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b0381166113d3575f600192509250506113d9565b91505f90505b94509492505050565b6001600160a01b0381168114610e83575f80fd5b5f8083601f840112611406575f80fd5b50813567ffffffffffffffff81111561141d575f80fd5b6020830191508360208285010111156112f6575f80fd5b5f805f805f60808688031215611448575f80fd5b8535611453816113e2565b94506020860135611463816113e2565b935060408601359250606086013567ffffffffffffffff811115611485575f80fd5b611491888289016113f6565b969995985093965092949392505050565b5f8083601f8401126114b2575f80fd5b50813567ffffffffffffffff8111156114c9575f80fd5b6020830191508360208260051b85010111156112f6575f80fd5b5f805f805f608086880312156114f7575f80fd5b853567ffffffffffffffff81111561150d575f80fd5b611519888289016114a2565b9096509450506020860135925060408601359150606086013561153b816113e2565b809150509295509295909350565b5f805f6040848603121561155b575f80fd5b833567ffffffffffffffff80821115611572575f80fd5b9085019060808288031215611585575f80fd5b9093506020850135908082111561159a575f80fd5b506115a7868287016113f6565b9497909650939450505050565b5f5b838110156115ce5781810151838201526020016115b6565b50505f910152565b5f81518084526115ed8160208601602086016115b4565b601f01601f19169290920160200192915050565b602081525f6104cf60208301846115d6565b5f805f60408486031215611625575f80fd5b833567ffffffffffffffff81111561163b575f80fd5b611647868287016113f6565b909450925050602084013561165b816113e2565b809150509250925092565b5f8060408385031215611677575f80fd5b8235611682816113e2565b91506020830135611692816113e2565b809150509250929050565b5f602082840312156116ad575f80fd5b81356104cf816113e2565b5f602082840312156116c8575f80fd5b5035919050565b5f80604083850312156116e0575f80fd5b50508035926020909101359150565b5f805f8060808587031215611702575f80fd5b8435935060208501359250604085013591506060850135611722816113e2565b939692955090935050565b5f805f6040848603121561173f575f80fd5b833561174a816113e2565b9250602084013567ffffffffffffffff811115611765575f80fd5b6115a7868287016114a2565b5f8060208385031215611782575f80fd5b823567ffffffffffffffff811115611798575f80fd5b6117a4858286016114a2565b90969095509350505050565b634e487b7160e01b5f52603260045260245ffd5b5f808335601e198436030181126117d9575f80fd5b83018035915067ffffffffffffffff8211156117f3575f80fd5b6020019150368190038213156112f6575f80fd5b5f60208284031215611817575f80fd5b815180151581146104cf575f80fd5b5f82516118378184602087016115b4565b9190910192915050565b5f60208284031215611851575f80fd5b5051919050565b634e487b7160e01b5f52604160045260245ffd5b6040516080810167ffffffffffffffff8111828210171561188f5761188f611858565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156118be576118be611858565b604052919050565b5f608082360312156118d6575f80fd5b6118de61186c565b82356118e9816113e2565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff80821115611919575f80fd5b9085019036601f83011261192b575f80fd5b81358181111561193d5761193d611858565b61194f601f8201601f19168501611895565b91508082523684828501011115611964575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b5f8235603e19833603018112611837575f80fd5b634e487b7160e01b5f52601260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b5f826119cd576119cd611997565b500490565b634e487b7160e01b5f52600160045260245ffd5b818382375f9101908152919050565b5f8282518085526020808601955060208260051b840101602086015f5b84811015611a4057601f19868403018952611a2e8383516115d6565b98840198925090830190600101611a12565b5090979650505050505050565b6001600160a01b038616815260a0602082018190525f90611a70908301876119f5565b8281036040840152611a8281876119f5565b90508281036060840152611a9681866119f5565b91505082151560808301529695505050505050565b60208152816020820152818360408301375f818301604090810191909152601f909201601f19160101919050565b60ff828116828216039081111561078b5761078b6119ab565b5f60ff831680611b0457611b04611997565b8060ff84160691505092915050565b8082018082111561078b5761078b6119ab565b5f8451611b378184602089016115b4565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f6105bb60408301846115d656fea164736f6c6343000818000a","storage":{"0x0":"0xff"}},"0xda9e1b3e395bfb0a45f03c7f615146b9d896c959":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100b1575f3560e01c806340c10f191161006e57806340c10f191461013d57806370a082311461015257806395d89b411461017a578063a457c2d714610182578063a9059cbb14610195578063dd62ed3e146101a8575f80fd5b806306fdde03146100b5578063095ea7b3146100d357806318160ddd146100f657806323b872dd14610108578063313ce5671461011b578063395093511461012a575b5f80fd5b6100bd6101bb565b6040516100ca9190610775565b60405180910390f35b6100e66100e13660046107dc565b61024b565b60405190151581526020016100ca565b6002545b6040519081526020016100ca565b6100e6610116366004610804565b610264565b604051601281526020016100ca565b6100e66101383660046107dc565b610287565b61015061014b3660046107dc565b6102a8565b005b6100fa61016036600461083d565b6001600160a01b03165f9081526020819052604090205490565b6100bd6102b6565b6100e66101903660046107dc565b6102c5565b6100e66101a33660046107dc565b610344565b6100fa6101b636600461085d565b610351565b6060600380546101ca9061088e565b80601f01602080910402602001604051908101604052809291908181526020018280546101f69061088e565b80156102415780601f1061021857610100808354040283529160200191610241565b820191905f5260205f20905b81548152906001019060200180831161022457829003601f168201915b5050505050905090565b5f3361025881858561037b565b60019150505b92915050565b5f3361027185828561049e565b61027c858585610516565b506001949350505050565b5f336102588185856102998383610351565b6102a391906108c6565b61037b565b6102b282826106b8565b5050565b6060600480546101ca9061088e565b5f33816102d28286610351565b9050838110156103375760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b61027c828686840361037b565b5f33610258818585610516565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b6001600160a01b0383166103dd5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161032e565b6001600160a01b03821661043e5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161032e565b6001600160a01b038381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b5f6104a98484610351565b90505f19811461051057818110156105035760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161032e565b610510848484840361037b565b50505050565b6001600160a01b03831661057a5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161032e565b6001600160a01b0382166105dc5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161032e565b6001600160a01b0383165f90815260208190526040902054818110156106535760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161032e565b6001600160a01b038481165f81815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3610510565b6001600160a01b03821661070e5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640161032e565b8060025f82825461071f91906108c6565b90915550506001600160a01b0382165f81815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b5f602080835283518060208501525f5b818110156107a157858101830151858201604001528201610785565b505f604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146107d7575f80fd5b919050565b5f80604083850312156107ed575f80fd5b6107f6836107c1565b946020939093013593505050565b5f805f60608486031215610816575f80fd5b61081f846107c1565b925061082d602085016107c1565b9150604084013590509250925092565b5f6020828403121561084d575f80fd5b610856826107c1565b9392505050565b5f806040838503121561086e575f80fd5b610877836107c1565b9150610885602084016107c1565b90509250929050565b600181811c908216806108a257607f821691505b6020821081036108c057634e487b7160e01b5f52602260045260245ffd5b50919050565b8082018082111561025e57634e487b7160e01b5f52601160045260245ffdfea164736f6c6343000818000a","storage":{"0x2":"0xe8d4a51000","0x3":"0x0","0x4":"0x0","0x47668262eb76f3aa61b856a0c078f33a11f46671cf1466c3616ba74a22fcdd92":"0xe8d4a51000","0x9cc83e833a69122bf7773b58c082655d780ae469ab7cdf5d1047a30229e55875":"0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"}},"0xe0afc4e9e03e4aa67257df7a2eca77454309789d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061002b5760003560e01c806316f1983114610030575b600080fd5b6100b06004803603604081101561004657600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561007157600080fd5b82018360208201111561008357600080fd5b803590602001918460018302840111640100000000831117156100a557600080fd5b5090925090506100b2565b005b826001600160a01b031660017f103fed9db65eac19c4d870f49ab7520fe03b99f1838e5996caf47e9e43308392848460405180806020018281038252848482818152602001925080828437600083820152604051601f909101601f19169092018290039550909350505050a350505056fea164736f6c6343000606000a","storage":{}},"0xe4fdf45c2f8d198854f8823809c7a988eeaaa493":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100a6575f3560e01c80638cb8ecec1161006e5780638cb8ecec1461013e5780638da5cb5b14610151578063cbe9e76414610161578063da8c229e14610183578063e0dba60f146101a5578063f2fde38b146101b8575f80fd5b806301670ba9146100aa57806301ffc9a7146100bf5780633f15457f146100f85780634e543b2614610123578063715018a614610136575b5f80fd5b6100bd6100b8366004610529565b6101cb565b005b6100e36100cd366004610540565b6001600160e01b0319166301ffc9a760e01b1490565b60405190151581526020015b60405180910390f35b60025461010b906001600160a01b031681565b6040516001600160a01b0390911681526020016100ef565b6100bd610131366004610589565b610217565b6100bd610282565b6100bd61014c3660046105a2565b610295565b5f546001600160a01b031661010b565b6100e361016f366004610529565b60036020525f908152604090205460ff1681565b6100e3610191366004610589565b60016020525f908152604090205460ff1681565b6100bd6101b33660046105cc565b6103a2565b6100bd6101c6366004610589565b610408565b6101d3610481565b60405181907f1764176cfa565853ba1ded547a830a9f9bff95231ef6fd228b3ddd6175777569905f90a25f908152600360205260409020805460ff19166001179055565b61021f610481565b600254604051630c4b7b8560e11b81525f60048201526001600160a01b03838116602483015290911690631896f70a906044015f604051808303815f87803b158015610269575f80fd5b505af115801561027b573d5f803e3d5ffd5b5050505050565b61028a610481565b6102935f6104da565b565b335f9081526001602052604090205460ff166103095760405162461bcd60e51b815260206004820152602860248201527f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f604482015267373a3937b63632b960c11b60648201526084015b60405180910390fd5b5f8281526003602052604090205460ff1615610323575f80fd5b6002546040516306ab592360e01b81525f6004820152602481018490526001600160a01b038381166044830152909116906306ab5923906064016020604051808303815f875af1158015610379573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061039d9190610605565b505050565b6103aa610481565b6001600160a01b0382165f81815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b610410610481565b6001600160a01b0381166104755760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610300565b61047e816104da565b50565b5f546001600160a01b031633146102935760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610300565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f60208284031215610539575f80fd5b5035919050565b5f60208284031215610550575f80fd5b81356001600160e01b031981168114610567575f80fd5b9392505050565b80356001600160a01b0381168114610584575f80fd5b919050565b5f60208284031215610599575f80fd5b6105678261056e565b5f80604083850312156105b3575f80fd5b823591506105c36020840161056e565b90509250929050565b5f80604083850312156105dd575f80fd5b6105e68361056e565b9150602083013580151581146105fa575f80fd5b809150509250929050565b5f60208284031215610615575f80fd5b505191905056fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0xbdf39e9e65b2355b1b0b06df799c09159f0ab90f06a9bb2153f5de7d9b0ea81":"0x1","0x97b771283c9c769f7b9399fef71d92816f2bd31de10203b676671b01eb920966":"0x1"}},"0xe85541865bbb62a05064ce5c9f41cc293a8ea996":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610060575f3560e01c8063715018a6146100645780638129fc1c1461006e5780638da5cb5b14610076578063a3f4df7e14610096578063f2fde38b146100cf578063ffa1ad74146100e2575b5f80fd5b61006c610106565b005b61006c610119565b6033546040516001600160a01b0390911681526020015b60405180910390f35b6100c26040518060400160405280600d81526020016c2aa7299d1027b832b930ba37b960991b81525081565b60405161008d91906103bd565b61006c6100dd366004610409565b610229565b6100c2604051806040016040528060058152602001640302e312e360dc1b81525081565b61010e61029f565b6101175f6102f9565b565b5f54610100900460ff161580801561013757505f54600160ff909116105b806101505750303b15801561015057505f5460ff166001145b6101b85760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b5f805460ff1916600117905580156101d9575f805461ff0019166101001790555b6101e161034a565b8015610226575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50565b61023161029f565b6001600160a01b0381166102965760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016101af565b610226816102f9565b6033546001600160a01b031633146101175760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016101af565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff166103b45760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016101af565b610117336102f9565b5f602080835283518060208501525f5b818110156103e9578581018301518582016040015282016103cd565b505f604082860101526040601f19601f8301168501019250505092915050565b5f60208284031215610419575f80fd5b81356001600160a01b038116811461042f575f80fd5b939250505056fea164736f6c6343000818000a","storage":{}},"0xead34b583404e3cb0c9b97c2d1c486be67be9f30":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0xec71e4e674fe0f432693dc2b935c34bd2774c003":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610090575f3560e01c8063a200e15311610063578063a200e15314610146578063a34e35961461016d578063c8a4271f14610180578063cd5d2c74146101bf578063d820ed42146101e6575f80fd5b806301ffc9a7146100945780632c0fd74c146100bc57806350e9a715146100f157806359b6b86c1461011f575b5f80fd5b6100a76100a2366004610600565b61020d565b60405190151581526020015b60405180910390f35b6100e37f000000000000000000000000000000000000000000000000000000000000000081565b6040519081526020016100b3565b6101046100ff366004610627565b610243565b604080518251815260209283015192810192909252016100b3565b6100e37f000000000000000000000000000000000000000000000000000000000000000181565b6100e37f000000000000000000000000000000000000000000000000000000000000000481565b6100e361017b366004610627565b610404565b6101a77f000000000000000000000000f3810eb7d64d1c11ae12727d957c6202b24492f581565b6040516001600160a01b0390911681526020016100b3565b6100e37f000000000000000000000000000000000000000000000000000000000000000081565b6100e37f000000000000000000000000000000000000000000000000000000000000000281565b5f6001600160e01b031982166301ffc9a760e01b148061023d57506001600160e01b031982166350e9a71560e01b145b92915050565b604080518082019091525f80825260208201525f61029586868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061045392505050565b90505f600582106102d1576102ca847f00000000000000000000000000000000000000000000000000000000000000016106b3565b9050610394565b81600403610303576102ca847f00000000000000000000000000000000000000000000000000000000000000026106b3565b81600303610335576102ca847f00000000000000000000000000000000000000000000000000000000000000046106b3565b81600203610367576102ca847f00000000000000000000000000000000000000000000000000000000000000006106b3565b610391847f00000000000000000000000000000000000000000000000000000000000000006106b3565b90505b60405180604001604052806103a883610554565b81526020016103f76103f28a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c92508b91506105f89050565b610554565b9052979650505050505050565b5f61044a6103f286868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508892508791506105f89050565b95945050505050565b80515f90819081905b8082101561054b575f858381518110610477576104776106ca565b01602001516001600160f81b0319169050600160ff1b8110156104a65761049f6001846106de565b9250610538565b600760fd1b6001600160f81b0319821610156104c75761049f6002846106de565b600f60fc1b6001600160f81b0319821610156104e85761049f6003846106de565b601f60fb1b6001600160f81b0319821610156105095761049f6004846106de565b603f60fa1b6001600160f81b03198216101561052a5761049f6005846106de565b6105356006846106de565b92505b5082610543816106f1565b93505061045c565b50909392505050565b5f807f000000000000000000000000f3810eb7d64d1c11ae12727d957c6202b24492f56001600160a01b03166350d25bcd6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105b2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105d69190610709565b9050806105e7846305f5e1006106b3565b6105f19190610720565b9392505050565b5f9392505050565b5f60208284031215610610575f80fd5b81356001600160e01b0319811681146105f1575f80fd5b5f805f806060858703121561063a575f80fd5b843567ffffffffffffffff80821115610651575f80fd5b818701915087601f830112610664575f80fd5b813581811115610672575f80fd5b886020828501011115610683575f80fd5b6020928301999098509187013596604001359550909350505050565b634e487b7160e01b5f52601160045260245ffd5b808202811582820484141761023d5761023d61069f565b634e487b7160e01b5f52603260045260245ffd5b8082018082111561023d5761023d61069f565b5f600182016107025761070261069f565b5060010190565b5f60208284031215610719575f80fd5b5051919050565b5f8261073a57634e487b7160e01b5f52601260045260245ffd5b50049056fea164736f6c6343000818000a","storage":{}},"0xf1ad43dc647f27c2366ab4742d68d21282f7d50e":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101d1575f3560e01c80638b95dd71116100fe578063c86902331161009e578063e32954eb1161006e578063e32954eb146104f2578063e59d895d14610505578063e985e9c514610518578063f1cb7e0614610553575f80fd5b8063c869023314610435578063ce3decdc1461048c578063d5fa2b001461049f578063d700ff33146104b2575f80fd5b8063a8fa5682116100d9578063a8fa5682146103ac578063a9784b3e146103bf578063ac9650d814610402578063bc1c58d114610422575f80fd5b80638b95dd7114610373578063a22cb46514610386578063a4b91a0114610399575f80fd5b80633603d758116101745780635c98042b116101445780635c98042b14610327578063623195b01461033a578063691f34311461034d5780637737221314610360575f80fd5b80633603d758146102975780633b3b57de146102aa5780634cbf6ba4146102bd57806359d1d43c14610307575f80fd5b8063124a319c116101af578063124a319c146102255780632203ab561461025057806329cd62ea14610271578063304e6ade14610284575f80fd5b806301ffc9a7146101d55780630af179d7146101fd57806310f13a8c14610212575b5f80fd5b6101e86101e3366004612267565b610566565b60405190151581526020015b60405180910390f35b61021061020b3660046122bd565b610576565b005b610210610220366004612304565b610778565b610238610233366004612377565b610842565b6040516001600160a01b0390911681526020016101f4565b61026361025e3660046123a1565b610a87565b6040516101f492919061240e565b61021061027f366004612426565b610bb5565b6102106102923660046122bd565b610c4d565b6102106102a536600461244f565b610cc6565b6102386102b836600461244f565b610d64565b6101e86102cb3660046123a1565b5f82815260208181526040808320546001600160401b031683526006825280832094835293815283822092825291909152205461ffff16151590565b61031a6103153660046122bd565b610d93565b6040516101f49190612466565b61031a61033536600461244f565b610e6f565b610210610348366004612478565b610f2a565b61031a61035b36600461244f565b610fc2565b61021061036e3660046122bd565b610ffa565b6102106103813660046124da565b611073565b6102106103943660046125b9565b611150565b6102106103a73660046125e3565b61122a565b61031a6103ba36600461261e565b6112f6565b6101e86103cd36600461265a565b6001600160a01b039283165f908152600c60209081526040808320948352938152838220929094168152925290205460ff1690565b6104156104103660046126ce565b611342565b6040516101f4919061270c565b61031a61043036600461244f565b61134f565b61047761044336600461244f565b5f81815260208181526040808320546001600160401b03168352600982528083209383529290522080546001909101549091565b604080519283526020830191909152016101f4565b61021061049a3660046122bd565b611387565b6102106104ad36600461276e565b6114c3565b6104da6104c036600461244f565b5f602081905290815260409020546001600160401b031681565b6040516001600160401b0390911681526020016101f4565b61041561050036600461279c565b6114e9565b6102106105133660046127d6565b6114fe565b6101e8610526366004612808565b6001600160a01b039182165f908152600b6020908152604080832093909416825291909152205460ff1690565b61031a6105613660046123a1565b6115a2565b5f61057082611666565b92915050565b826105808161168a565b610588575f80fd5b5f84815260208181526040808320548151601f87018490048402810184019092528582528392606092839285926001600160401b039091169183916105eb9183918d908d90819084018382808284375f9201919091525092939250506118b79050565b90505b80515160208201511015610712578661ffff165f03610652578060400151965061061781611912565b94508460405160200161062a9190612834565b60405160208183030381529060405280519060200120925061064b81611933565b9350610704565b5f61065c82611912565b9050816040015161ffff168861ffff16141580610680575061067e868261194f565b155b15610702576106db8c878a8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250505060208801518d91506106d2908290612863565b8b51158a61196a565b8160400151975081602001519650809550858051906020012093506106ff82611933565b94505b505b61070d81611bc9565b6105ee565b5083511561076c5761076c8a85888c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c925061076391508290508f612863565b8951158861196a565b50505050505050505050565b846107828161168a565b61078a575f80fd5b5f86815260208181526040808320546001600160401b03168352600a8252808320898452909152908190209051849184916107c89089908990612876565b908152602001604051809103902091826107e3929190612901565b5084846040516107f4929190612876565b6040518091039020867f448bc014f1536726cf8d54ff3d6481ed3cbc683c2591ca204274009afa09b1a18787878760405161083294939291906129e2565b60405180910390a3505050505050565b5f82815260208181526040808320546001600160401b031683526007825280832085845282528083206001600160e01b0319851684529091528120546001600160a01b03168015610894579050610570565b5f61089e85610d64565b90506001600160a01b0381166108b8575f92505050610570565b6040516301ffc9a760e01b60248201525f9081906001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b1790525161090f9190612834565b5f60405180830381855afa9150503d805f8114610947576040519150601f19603f3d011682016040523d82523d5f602084013e61094c565b606091505b509150915081158061095f575060208151105b80610989575080601f8151811061097857610978612a13565b01602001516001600160f81b031916155b1561099a575f945050505050610570565b6040516001600160e01b0319871660248201526001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b179052516109f09190612834565b5f60405180830381855afa9150503d805f8114610a28576040519150601f19603f3d011682016040523d82523d5f602084013e610a2d565b606091505b509092509050811580610a41575060208151105b80610a6b575080601f81518110610a5a57610a5a612a13565b01602001516001600160f81b031916155b15610a7c575f945050505050610570565b509095945050505050565b5f82815260208181526040808320546001600160401b03168352600180835281842086855290925282206060915b848111610b975780851615801590610ae457505f8181526020839052604081208054610ae090612885565b9050115b15610b8f5780825f8381526020019081526020015f20808054610b0690612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610b3290612885565b8015610b7d5780601f10610b5457610100808354040283529160200191610b7d565b820191905f5260205f20905b815481529060010190602001808311610b6057829003601f168201915b50505050509050935093505050610bae565b60011b610ab5565b505f60405180602001604052805f81525092509250505b9250929050565b82610bbf8161168a565b610bc7575f80fd5b60408051808201825284815260208082018581525f888152808352848120546001600160401b031681526009835284812089825283528490209251835551600190920191909155815185815290810184905285917f1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e4691015b60405180910390a250505050565b82610c578161168a565b610c5f575f80fd5b5f84815260208181526040808320546001600160401b03168352600382528083208784529091529020610c93838583612901565b50837fe379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d75788484604051610c3f929190612a27565b80610cd08161168a565b610cd8575f80fd5b5f82815260208190526040812080546001600160401b031691610cfa83612a3a565b82546101009290920a6001600160401b038181021990931691831602179091555f84815260208181526040918290205491519190921681528492507fc6621ccb8f3f5a04bb6502154b2caf6adf5983fe76dfef1cfc9c42e3579db444910160405180910390a25050565b5f80610d7183603c6115a2565b905080515f03610d8357505f92915050565b610d8c81611cae565b9392505050565b5f83815260208181526040808320546001600160401b03168352600a825280832086845290915290819020905160609190610dd19085908590612876565b90815260200160405180910390208054610dea90612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610e1690612885565b8015610e615780601f10610e3857610100808354040283529160200191610e61565b820191905f5260205f20905b815481529060010190602001808311610e4457829003601f168201915b505050505090509392505050565b5f81815260208181526040808320546001600160401b03168352600482528083208484529091529020805460609190610ea790612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610ed390612885565b8015610f1e5780601f10610ef557610100808354040283529160200191610f1e565b820191905f5260205f20905b815481529060010190602001808311610f0157829003601f168201915b50505050509050919050565b83610f348161168a565b610f3c575f80fd5b83610f48600182612863565b1615610f52575f80fd5b5f85815260208181526040808320546001600160401b031683526001825280832088845282528083208784529091529020610f8e838583612901565b50604051849086907faa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe3905f90a35050505050565b5f81815260208181526040808320546001600160401b03168352600882528083208484529091529020805460609190610ea790612885565b826110048161168a565b61100c575f80fd5b5f84815260208181526040808320546001600160401b03168352600882528083208784529091529020611040838583612901565b50837fb7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f78484604051610c3f929190612a27565b8261107d8161168a565b611085575f80fd5b837f65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af75284846040516110b792919061240e565b60405180910390a2603c830361110e57837f52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd26110f284611cae565b6040516001600160a01b03909116815260200160405180910390a25b5f84815260208181526040808320546001600160401b0316835260028252808320878452825280832086845290915290206111498382612a5f565b5050505050565b6001600160a01b03821633036111bf5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084015b60405180910390fd5b335f818152600b602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6001600160a01b03821633036112825760405162461bcd60e51b815260206004820181905260248201527f53657474696e672064656c65676174652073746174757320666f722073656c6660448201526064016111b6565b335f818152600c6020908152604080832087845282528083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519384529286917ff0ddb3b04746704017f9aa8bd728fcc2c1d11675041205350018915f5e4750a0910160405180910390a4505050565b5f83815260208181526040808320546001600160401b03168352600582528083208684528252808320858452825280832061ffff851684529091529020805460609190610dea90612885565b6060610d8c5f8484611ccb565b5f81815260208181526040808320546001600160401b03168352600382528083208484529091529020805460609190610ea790612885565b826113918161168a565b611399575f80fd5b5f84815260208181526040808320546001600160401b031680845260048352818420888552909252822080549192916113d190612885565b80601f01602080910402602001604051908101604052809291908181526020018280546113fd90612885565b80156114485780601f1061141f57610100808354040283529160200191611448565b820191905f5260205f20905b81548152906001019060200180831161142b57829003601f168201915b505050506001600160401b0384165f9081526004602090815260408083208b8452909152902091925061147e9050858783612901565b50857f8f15ed4b723ef428f250961da8315675b507046737e19319fc1a4d81bfe87f858287876040516114b393929190612b1e565b60405180910390a2505050505050565b816114cd8161168a565b6114d5575f80fd5b6114e483603c61038185611e88565b505050565b60606114f6848484611ccb565b949350505050565b826115088161168a565b611510575f80fd5b5f84815260208181526040808320546001600160401b031683526007825280832087845282528083206001600160e01b031987168085529083529281902080546001600160a01b0319166001600160a01b038716908117909155905190815286917f7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa910160405180910390a350505050565b5f82815260208181526040808320546001600160401b0316835260028252808320858452825280832084845290915290208054606091906115e290612885565b80601f016020809104026020016040519081016040528092919081815260200182805461160e90612885565b80156116595780601f1061163057610100808354040283529160200191611659565b820191905f5260205f20905b81548152906001019060200180831161163c57829003601f168201915b5050505050905092915050565b5f6001600160e01b03198216631674750f60e21b1480610570575061057082611eb8565b5f336001600160a01b037f0000000000000000000000004fbf7b2f171336958be5d15ff762a5cff53635681614806116ea5750336001600160a01b037f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5616145b156116f757506001919050565b6040516302571be360e01b8152600481018390525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa15801561175c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117809190612b4d565b90507f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b0316816001600160a01b031603611845576040516331a9108f60e11b8152600481018490527f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b031690636352211e90602401602060405180830381865afa15801561181e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118429190612b4d565b90505b6001600160a01b03811633148061187e57506001600160a01b0381165f908152600b6020908152604080832033845290915290205460ff165b80610d8c57506001600160a01b0381165f908152600c60209081526040808320868452825280832033845290915290205460ff16610d8c565b6118ff6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261057081611bc9565b602081015181516060916105709161192a9082611edc565b84519190611f33565b60a081015160c08201516060916105709161192a908290612863565b5f81518351148015610d8c5750610d8c835f845f8751611fa7565b865160208801205f61197d878787611f33565b90508315611aa1576001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c168452909152902080546119c690612885565b159050611a23576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611a0783612b68565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091528120611a62916121f9565b897f03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a12078a8a604051611a94929190612b84565b60405180910390a261076c565b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c16845290915290208054611ae290612885565b90505f03611b40576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611b2483612ba9565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091529020611b808282612a5f565b50897f52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b8a8a84604051611bb593929190612bbf565b60405180910390a250505050505050505050565b60c08101516020820181905281515111611be05750565b5f611bf2825f01518360200151611edc565b8260200151611c019190612bed565b8251909150611c109082611fc9565b61ffff166040830152611c24600282612bed565b8251909150611c339082611fc9565b61ffff166060830152611c47600282612bed565b8251909150611c569082611fef565b63ffffffff166080830152611c6c600482612bed565b82519091505f90611c7d9083611fc9565b61ffff169050611c8e600283612bed565b60a084018190529150611ca18183612bed565b60c0909301929092525050565b5f8151601414611cbc575f80fd5b5060200151600160601b900490565b6060816001600160401b03811115611ce557611ce56124c6565b604051908082528060200260200182016040528015611d1857816020015b6060815260200190600190039081611d035790505b5090505f5b82811015611e80578415611dd8575f848483818110611d3e57611d3e612a13565b9050602002810190611d509190612c00565b611d5f91602491600491612c42565b611d6891612c69565b9050858114611dd65760405162461bcd60e51b815260206004820152603460248201527f6d756c746963616c6c3a20416c6c207265636f726473206d7573742068617665604482015273040c240dac2e8c6d0d2dcce40dcc2dacad0c2e6d60631b60648201526084016111b6565b505b5f8030868685818110611ded57611ded612a13565b9050602002810190611dff9190612c00565b604051611e0d929190612876565b5f60405180830381855af49150503d805f8114611e45576040519150601f19603f3d011682016040523d82523d5f602084013e611e4a565b606091505b509150915081611e58575f80fd5b80848481518110611e6b57611e6b612a13565b60209081029190910101525050600101611d1d565b509392505050565b604080516014808252818301909252606091602082018180368337505050600160601b9290920260208301525090565b5f6001600160e01b0319821663c869023360e01b1480610570575061057082612017565b5f815b83518110611eef57611eef612c86565b5f611efa858361203b565b60ff169050611f0a816001612bed565b611f149083612bed565b9150805f03611f235750611f29565b50611edf565b6114f68382612863565b8251606090611f428385612bed565b1115611f4c575f80fd5b5f826001600160401b03811115611f6557611f656124c6565b6040519080825280601f01601f191660200182016040528015611f8f576020820181803683370190505b50905060208082019086860101610a7c82828761205e565b5f611fb38484846120b3565b611fbe8787856120b3565b149695505050505050565b81515f90611fd8836002612bed565b1115611fe2575f80fd5b50016002015161ffff1690565b81515f90611ffe836004612bed565b1115612008575f80fd5b50016004015163ffffffff1690565b5f6001600160e01b0319821663691f343160e01b14806105705750610570826120d5565b5f82828151811061204e5761204e612a13565b016020015160f81c905092915050565b602081106120965781518352612075602084612bed565b9250612082602083612bed565b915061208f602082612863565b905061205e565b905182516020929092036101000a5f190180199091169116179052565b82515f906120c18385612bed565b11156120cb575f80fd5b5091016020012090565b5f6001600160e01b031982166304928c6760e21b14806105705750610570825f6001600160e01b0319821663547d2b4160e11b148061212457506001600160e01b03198216635c98042b60e01b145b806105705750610570825f6001600160e01b0319821663bc1c58d160e01b14806105705750610570825f6001600160e01b03198216631d9dabef60e11b148061217d57506001600160e01b031982166378e5bf0360e11b145b806105705750610570825f6001600160e01b03198216631101d5ab60e11b14806105705750610570825f6001600160e01b0319821663d700ff3360e01b14806105705750610570825f6001600160e01b03198216634fbf043360e01b148061057057506301ffc9a760e01b6001600160e01b0319831614610570565b50805461220590612885565b5f825580601f10612214575050565b601f0160209004905f5260205f20908101906122309190612233565b50565b5b80821115612247575f8155600101612234565b5090565b80356001600160e01b031981168114612262575f80fd5b919050565b5f60208284031215612277575f80fd5b610d8c8261224b565b5f8083601f840112612290575f80fd5b5081356001600160401b038111156122a6575f80fd5b602083019150836020828501011115610bae575f80fd5b5f805f604084860312156122cf575f80fd5b8335925060208401356001600160401b038111156122eb575f80fd5b6122f786828701612280565b9497909650939450505050565b5f805f805f60608688031215612318575f80fd5b8535945060208601356001600160401b0380821115612335575f80fd5b61234189838a01612280565b90965094506040880135915080821115612359575f80fd5b5061236688828901612280565b969995985093965092949392505050565b5f8060408385031215612388575f80fd5b823591506123986020840161224b565b90509250929050565b5f80604083850312156123b2575f80fd5b50508035926020909101359150565b5f5b838110156123db5781810151838201526020016123c3565b50505f910152565b5f81518084526123fa8160208601602086016123c1565b601f01601f19169290920160200192915050565b828152604060208201525f6114f660408301846123e3565b5f805f60608486031215612438575f80fd5b505081359360208301359350604090920135919050565b5f6020828403121561245f575f80fd5b5035919050565b602081525f610d8c60208301846123e3565b5f805f806060858703121561248b575f80fd5b843593506020850135925060408501356001600160401b038111156124ae575f80fd5b6124ba87828801612280565b95989497509550505050565b634e487b7160e01b5f52604160045260245ffd5b5f805f606084860312156124ec575f80fd5b833592506020840135915060408401356001600160401b0380821115612510575f80fd5b818601915086601f830112612523575f80fd5b813581811115612535576125356124c6565b604051601f8201601f19908116603f0116810190838211818310171561255d5761255d6124c6565b81604052828152896020848701011115612575575f80fd5b826020860160208301375f6020848301015280955050505050509250925092565b6001600160a01b0381168114612230575f80fd5b80358015158114612262575f80fd5b5f80604083850312156125ca575f80fd5b82356125d581612596565b9150612398602084016125aa565b5f805f606084860312156125f5575f80fd5b83359250602084013561260781612596565b9150612615604085016125aa565b90509250925092565b5f805f60608486031215612630575f80fd5b8335925060208401359150604084013561ffff8116811461264f575f80fd5b809150509250925092565b5f805f6060848603121561266c575f80fd5b833561267781612596565b925060208401359150604084013561264f81612596565b5f8083601f84011261269e575f80fd5b5081356001600160401b038111156126b4575f80fd5b6020830191508360208260051b8501011115610bae575f80fd5b5f80602083850312156126df575f80fd5b82356001600160401b038111156126f4575f80fd5b6127008582860161268e565b90969095509350505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b8281101561276157603f1988860301845261274f8583516123e3565b94509285019290850190600101612733565b5092979650505050505050565b5f806040838503121561277f575f80fd5b82359150602083013561279181612596565b809150509250929050565b5f805f604084860312156127ae575f80fd5b8335925060208401356001600160401b038111156127ca575f80fd5b6122f78682870161268e565b5f805f606084860312156127e8575f80fd5b833592506127f86020850161224b565b9150604084013561264f81612596565b5f8060408385031215612819575f80fd5b823561282481612596565b9150602083013561279181612596565b5f82516128458184602087016123c1565b9190910192915050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156105705761057061284f565b818382375f9101908152919050565b600181811c9082168061289957607f821691505b6020821081036128b757634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156114e457805f5260205f20601f840160051c810160208510156128e25750805b601f840160051c820191505b81811015611149575f81556001016128ee565b6001600160401b03831115612918576129186124c6565b61292c836129268354612885565b836128bd565b5f601f84116001811461295d575f85156129465750838201355b5f19600387901b1c1916600186901b178355611149565b5f83815260208120601f198716915b8281101561298c578685013582556020948501946001909201910161296c565b50868210156129a8575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b604081525f6129f56040830186886129ba565b8281036020840152612a088185876129ba565b979650505050505050565b634e487b7160e01b5f52603260045260245ffd5b602081525f6114f66020830184866129ba565b5f6001600160401b03808316818103612a5557612a5561284f565b6001019392505050565b81516001600160401b03811115612a7857612a786124c6565b612a8c81612a868454612885565b846128bd565b602080601f831160018114612abf575f8415612aa85750858301515b5f19600386901b1c1916600185901b178555612b16565b5f85815260208120601f198616915b82811015612aed57888601518255948401946001909101908401612ace565b5085821015612b0a57878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b604081525f612b3060408301866123e3565b8281036020840152612b438185876129ba565b9695505050505050565b5f60208284031215612b5d575f80fd5b8151610d8c81612596565b5f61ffff821680612b7b57612b7b61284f565b5f190192915050565b604081525f612b9660408301856123e3565b905061ffff831660208301529392505050565b5f61ffff808316818103612a5557612a5561284f565b606081525f612bd160608301866123e3565b61ffff851660208401528281036040840152612b4381856123e3565b808201808211156105705761057061284f565b5f808335601e19843603018112612c15575f80fd5b8301803591506001600160401b03821115612c2e575f80fd5b602001915036819003821315610bae575f80fd5b5f8085851115612c50575f80fd5b83861115612c5c575f80fd5b5050820193919092039150565b80356020831015610570575f19602084900360031b1b1692915050565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{}},"0xf3810eb7d64d1c11ae12727d957c6202b24492f5":{"nonce":1,"balance":"0x0","code":"0x6080604052348015600e575f80fd5b50600436106030575f3560e01c806350d25bcd146034578063e5c19b2d146048575b5f80fd5b5f5460405190815260200160405180910390f35b605760533660046059565b5f55565b005b5f602082840312156068575f80fd5b503591905056fea164736f6c6343000818000a","storage":{"0x0":"0x5f5e100"}},"0xf670681605efc4efc804f5a9b97ee89520473d56":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c80638da5cb5b11610088578063c66485b211610063578063c66485b2146101da578063da8c229e146101ed578063e0dba60f1461021f578063f2fde38b14610232575f80fd5b80638da5cb5b146101a4578063bffbe61c146101b4578063c47f0027146101c7575f80fd5b806365669631116100c35780636566963114610161578063715018a6146101745780637a806d6b1461017e578063828eab0e14610191575f80fd5b80630f5a5466146100e95780631e83409a1461010f5780633f15457f14610122575b5f80fd5b6100fc6100f7366004610958565b610245565b6040519081526020015b60405180910390f35b6100fc61011d36600461098f565b610258565b6101497f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a981565b6040516001600160a01b039091168152602001610106565b6100fc61016f3660046109aa565b610279565b61017c610526565b005b6100fc61018c366004610a8f565b610539565b600254610149906001600160a01b031681565b5f546001600160a01b0316610149565b6100fc6101c236600461098f565b6105ae565b6100fc6101d5366004610b00565b610608565b61017c6101e836600461098f565b610624565b61020f6101fb36600461098f565b60016020525f908152604090205460ff1681565b6040519015158152602001610106565b61017c61022d366004610b47565b6106e4565b61017c61024036600461098f565b61074a565b5f610251338484610279565b9392505050565b6002545f9061027390339084906001600160a01b0316610279565b92915050565b5f836001600160a01b0381163314806102a05750335f9081526001602052604090205460ff165b80610334575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063e985e9c590604401602060405180830381865afa158015610310573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103349190610b73565b806103435750610343816107c3565b6103e05760405162461bcd60e51b815260206004820152605b60248201527f526576657273655265676973747261723a2043616c6c6572206973206e6f742060448201527f6120636f6e74726f6c6c6572206f7220617574686f726973656420627920616460648201527f6472657373206f7220746865206164647265737320697473656c660000000000608482015260a4015b60405180910390fd5b5f6103ea8661083a565b604080517f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e2602080830191909152818301849052825180830384018152606090920192839052815191012091925081906001600160a01b038916907f6ada868dd3058cf77a48a74489fd7963688e5464b2b0fa957ace976243270e92905f90a36040516305ef2c7f60e41b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26004820152602481018390526001600160a01b03878116604483015286811660648301525f60848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610505575f80fd5b505af1158015610517573d5f803e3d5ffd5b50929998505050505050505050565b61052e61089c565b6105375f6108f5565b565b5f80610546868686610279565b604051637737221360e01b81529091506001600160a01b038516906377372213906105779084908790600401610b8e565b5f604051808303815f87803b15801561058e575f80fd5b505af11580156105a0573d5f803e3d5ffd5b509298975050505050505050565b5f7f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26105d98361083a565b604080516020810193909352820152606001604051602081830303815290604052805190602001209050919050565b6002545f9061027390339081906001600160a01b031685610539565b61062c61089c565b6001600160a01b03811661069b5760405162461bcd60e51b815260206004820152603060248201527f526576657273655265676973747261723a205265736f6c76657220616464726560448201526f07373206d757374206e6f7420626520360841b60648201526084016103d7565b600280546001600160a01b0319166001600160a01b0383169081179091556040517feae17a84d9eb83d8c8eb317f9e7d64857bc363fa51674d996c023f4340c577cf905f90a250565b6106ec61089c565b6001600160a01b0382165f81815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b61075261089c565b6001600160a01b0381166107b75760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016103d7565b6107c0816108f5565b50565b5f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801561081e575060408051601f3d908101601f1916820190925261081b91810190610be2565b60015b61082957505f919050565b6001600160a01b0316331492915050565b5f60285b8015610891575f19016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a81536010909204915f19016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a815360108304925061083e565b505060285f20919050565b5f546001600160a01b031633146105375760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016103d7565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146107c0575f80fd5b5f8060408385031215610969575f80fd5b823561097481610944565b9150602083013561098481610944565b809150509250929050565b5f6020828403121561099f575f80fd5b813561025181610944565b5f805f606084860312156109bc575f80fd5b83356109c781610944565b925060208401356109d781610944565b915060408401356109e781610944565b809150509250925092565b634e487b7160e01b5f52604160045260245ffd5b5f82601f830112610a15575f80fd5b813567ffffffffffffffff80821115610a3057610a306109f2565b604051601f8301601f19908116603f01168101908282118183101715610a5857610a586109f2565b81604052838152866020858801011115610a70575f80fd5b836020870160208301375f602085830101528094505050505092915050565b5f805f8060808587031215610aa2575f80fd5b8435610aad81610944565b93506020850135610abd81610944565b92506040850135610acd81610944565b9150606085013567ffffffffffffffff811115610ae8575f80fd5b610af487828801610a06565b91505092959194509250565b5f60208284031215610b10575f80fd5b813567ffffffffffffffff811115610b26575f80fd5b610b3284828501610a06565b949350505050565b80151581146107c0575f80fd5b5f8060408385031215610b58575f80fd5b8235610b6381610944565b9150602083013561098481610b3a565b5f60208284031215610b83575f80fd5b815161025181610b3a565b8281525f60206040602084015283518060408501525f5b81811015610bc157858101830151858201606001528201610ba5565b505f606082860101526060601f19601f830116850101925050509392505050565b5f60208284031215610bf2575f80fd5b81516102518161094456fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2":"0x9df67c91f1bfcb4d966cf764e9218685e7c59e8a","0x1f5b7623941da966ad7183d9cbb6db584f6d4add26919ac31a2d3f19a164e7e1":"0x1","0xbe5de2149ce76ca5934fa63455cd675fd52e2d30f3328985d298a627ca0f05e9":"0x1"}},"0xf8c26340c1eaea6c7ff1760b25005e1306953572":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061010b5760003560e01c80638c87a4ea116100a2578063b87abc1111610071578063b87abc1114610244578063c597407314610257578063ce92b33e1461026a578063e837ae741461027d578063ec129eea146102905761010b565b80638c87a4ea146101ea5780638f69c188146101fd578063a3557e6c14610210578063b85afd28146102235761010b565b806347c81699116100de57806347c8169914610181578063672b9f81146101945780636ccbae5f146101b55780637b103999146101d55761010b565b80631bd8cc1a146101105780631be5e7ed146101395780632c3d376d14610159578063310bd74b1461016c575b600080fd5b61012361011e3660046117b4565b6102a3565b6040516101309190611eee565b60405180910390f35b61014c610147366004611aec565b6104f2565b6040516101309190611fd6565b61014c610167366004611b21565b610673565b61017f61017a366004611b21565b610714565b005b61017f61018f3660046119b5565b6107c0565b6101a76101a2366004611b94565b6108ef565b604051610130929190611fe7565b6101c86101c3366004611b21565b6109c3565b604051610130919061204c565b6101dd6109d5565b6040516101309190611ea9565b6101236101f836600461191d565b6109e5565b61017f61020b366004611878565b610a74565b61017f61021e366004611878565b610af0565b610236610231366004611951565b610b1b565b604051610130929190611eff565b61017f610252366004611b3f565b610ca9565b61017f610265366004611a39565b610d43565b61017f610278366004611808565b610df9565b61017f61028b366004611808565b610e97565b61017f61029e366004611808565b610f4e565b60015460405163b3f9e4cb60e01b815260609183916001600160a01b039091169063b3f9e4cb906102d890849060040161204c565b60206040518083038186803b1580156102f057600080fd5b505afa158015610304573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610328919081019061178e565b6001600160a01b0316306001600160a01b0316146103615760405162461bcd60e51b81526004016103589061201c565b60405180910390fd5b604080518581526020808702820101909152849060609082801561039957816020015b60608152602001906001900390816103845790505b506000868152600360205260408120549192505b838110156104e557600087815260026020908152604080832085845290915290208989838181106103da57fe5b602002820190508035601e19368490030181126103f657600080fd5b909101602081019150356001600160401b0381111561041457600080fd5b3681900382131561042457600080fd5b604051610432929190611e70565b9081526040805160209281900383018120805460026001821615610100026000190190911604601f810185900485028301850190935282825290929091908301828280156104c15780601f10610496576101008083540402835291602001916104c1565b820191906000526020600020905b8154815290600101906020018083116104a457829003601f168201915b50505050508382815181106104d257fe5b60209081029190910101526001016103ad565b5090979650505050505050565b60015460405163b3f9e4cb60e01b815260609183916001600160a01b039091169063b3f9e4cb9061052790849060040161204c565b60206040518083038186803b15801561053f57600080fd5b505afa158015610553573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610577919081019061178e565b6001600160a01b0316306001600160a01b0316146105a75760405162461bcd60e51b81526004016103589061201c565b6000838152600260209081526040808320600383528184205484529091529081902090516105d6908690611e7d565b9081526040805160209281900383018120805460026001821615610100026000190190911604601f810185900485028301850190935282825290929091908301828280156106655780601f1061063a57610100808354040283529160200191610665565b820191906000526020600020905b81548152906001019060200180831161064857829003601f168201915b505050505091505092915050565b60008181526004602090815260409182902080548351601f60026000196101006001861615020190931692909204918201849004840281018401909452808452606093928301828280156107085780601f106106dd57610100808354040283529160200191610708565b820191906000526020600020905b8154815290600101906020018083116106eb57829003601f168201915b50505050509050919050565b60015460405163430c208160e01b815282916001600160a01b03169063430c2081906107469033908590600401611ec5565b60206040518083038186803b15801561075e57600080fd5b505afa158015610772573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506107969190810190611997565b6107b25760405162461bcd60e51b81526004016103589061202c565b6107bc4283610fec565b5050565b60015460405163430c208160e01b815282916001600160a01b03169063430c2081906107f29033908590600401611ec5565b60206040518083038186803b15801561080a57600080fd5b505afa15801561081e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506108429190810190611997565b61085e5760405162461bcd60e51b81526004016103589061202c565b6108e7600360008481526020019081526020016000205487878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061108e915050565b505050505050565b60015460405163b3f9e4cb60e01b8152606091829184916001600160a01b03169063b3f9e4cb9061092490849060040161204c565b60206040518083038186803b15801561093c57600080fd5b505afa158015610950573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610974919081019061178e565b6001600160a01b0316306001600160a01b0316146109a45760405162461bcd60e51b81526004016103589061201c565b6109ad85610673565b92506109b983856104f2565b9150509250929050565b60009081526020819052604090205490565b6001546001600160a01b03165b90565b6060600082519050606081604051908082528060200260200182016040528015610a2357816020015b6060815260200190600190039081610a0e5790505b50905060005b82811015610a6c57610a4d858281518110610a4057fe5b6020026020010151610673565b828281518110610a5957fe5b6020908102919091010152600101610a29565b509392505050565b610acf63ce92b33e60e01b858585604051602401610a9493929190611f24565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092178252519020838361129f565b600082815260036020526040902054610aea908585856113c3565b50505050565b610b1063ec129eea60e01b858585604051602401610a9493929190611f24565b610aea84848461140a565b60015460405163b3f9e4cb60e01b8152606091829184916001600160a01b03169063b3f9e4cb90610b5090849060040161204c565b60206040518083038186803b158015610b6857600080fd5b505afa158015610b7c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610ba0919081019061178e565b6001600160a01b0316306001600160a01b031614610bd05760405162461bcd60e51b81526004016103589061201c565b8451604080518281526020808402820101909152818015610c0557816020015b6060815260200190600190039081610bf05790505b50935080604051908082528060200260200182016040528015610c3c57816020015b6060815260200190600190039081610c275790505b50925060005b81811015610c9f57610c67878281518110610c5957fe5b6020026020010151876108ef565b8651879084908110610c7557fe5b60200260200101868481518110610c8857fe5b602090810291909101019190915252600101610c42565b5050509250929050565b610d3463310bd74b60e01b84604051602401610cc5919061204c565b60408051601f19818403018152918152602080830180516001600160e01b03166001600160e01b031990951694909417845291519092208251601f8601839004830281018301909352848352918691869086908190840183828082843760009201919091525061129f92505050565b610d3e4284610fec565b505050565b610d676347c8169960e01b8888888888604051602401610cc5959493929190611f96565b610df0600360008581526020019081526020016000205488888080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8c018190048102820181019092528a815292508a915089908190840183828082843760009201919091525089925061108e915050565b50505050505050565b60015460405163430c208160e01b815282916001600160a01b03169063430c208190610e2b9033908590600401611ec5565b60206040518083038186803b158015610e4357600080fd5b505afa158015610e57573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610e7b9190810190611997565b610acf5760405162461bcd60e51b81526004016103589061202c565b6005546040516355138f0d60e11b81526001600160a01b039091169063aa271e1a90610ec7903390600401611eb7565b60206040518083038186803b158015610edf57600080fd5b505afa158015610ef3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610f179190810190611997565b610f335760405162461bcd60e51b81526004016103589061203c565b600081815260036020526040902054610d3e908484846113c3565b60015460405163430c208160e01b815282916001600160a01b03169063430c208190610f809033908590600401611ec5565b60206040518083038186803b158015610f9857600080fd5b505afa158015610fac573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610fd09190810190611997565b610b105760405162461bcd60e51b81526004016103589061202c565b600081815260036020526040808220849055600154905163538361a760e01b81526001600160a01b039091169163538361a79161102d91859160040161205a565b600060405180830381600087803b15801561104757600080fd5b505af115801561105b573d6000803e3d6000fd5b50506040518392507f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9150600090a25050565b825160208085019190912060008381526002835260408082208883529093528281209251919290916110c1908790611e7d565b908152604051602091819003919091018120546001805463538361a760e01b84526002918316156101000260001901909216041592506001600160a01b03169063538361a7906111179086908690600401612075565b600060405180830381600087803b15801561113157600080fd5b505af1158015611145573d6000803e3d6000fd5b50505060008481526002602090815260408083208a8452909152908190209051869250611173908890611e7d565b90815260200160405180910390209080519060200190611194929190611521565b50600082815260046020526040902054600260001961010060018416150201909116046111dc57600082815260046020908152604090912086516111da92880190611521565b505b801561123157846040516111f09190611e7d565b6040518091039020837f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f86876040516112289190611fd6565b60405180910390a35b8360405161123f9190611e7d565b6040518091039020856040516112559190611e7d565b6040518091039020847f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d92888860405161128f929190611fe7565b60405180910390a4505050505050565b6000828152602081815260408083205490519092916112f59185916112e9916112ce918a913091899101611e39565b60405160208183030381529060405280519060200120611414565b9063ffffffff61144416565b90506001600160a01b0381161580159061138c575060015460405163430c208160e01b81526001600160a01b039091169063430c20819061133c9084908890600401611ee0565b60206040518083038186803b15801561135457600080fd5b505afa158015611368573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061138c9190810190611997565b6113a85760405162461bcd60e51b81526004016103589061200c565b50505060009081526020819052604090208054600101905550565b825160005b818110156108e757611402868683815181106113e057fe5b60200260200101518684815181106113f457fe5b60200260200101518661108e565b6001016113c8565b610f334282610fec565b6000816040516020016114279190611e89565b604051602081830303815290604052805190602001209050919050565b600081516041146114575750600061151b565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a082111561149d576000935050505061151b565b8060ff16601b141580156114b557508060ff16601c14155b156114c6576000935050505061151b565b600186828585604051600081526020016040526040516114e99493929190611f58565b6020604051602081039080840390855afa15801561150b573d6000803e3d6000fd5b5050506020604051035193505050505b92915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061156257805160ff191683800117855561158f565b8280016001018555821561158f579182015b8281111561158f578251825591602001919060010190611574565b5061159b92915061159f565b5090565b6109e291905b8082111561159b57600081556001016115a5565b805161151b816121a4565b60008083601f8401126115d657600080fd5b5081356001600160401b038111156115ed57600080fd5b60208301915083602082028301111561160557600080fd5b9250929050565b600082601f83011261161d57600080fd5b813561163061162b826120a9565b612083565b81815260209384019390925082018360005b8381101561166e57813586016116588882611734565b8452506020928301929190910190600101611642565b5050505092915050565b600082601f83011261168957600080fd5b813561169761162b826120a9565b915081818352602084019350602081019050838560208402820111156116bc57600080fd5b60005b8381101561166e57816116d28882611783565b84525060209283019291909101906001016116bf565b805161151b816121bb565b60008083601f84011261170557600080fd5b5081356001600160401b0381111561171c57600080fd5b60208301915083600182028301111561160557600080fd5b600082601f83011261174557600080fd5b813561175361162b826120c9565b9150808252602083016020830185838301111561176f57600080fd5b61177a83828461214b565b50505092915050565b803561151b816121c4565b6000602082840312156117a057600080fd5b60006117ac84846115b9565b949350505050565b6000806000604084860312156117c957600080fd5b83356001600160401b038111156117df57600080fd5b6117eb868287016115c4565b935093505060206117fe86828701611783565b9150509250925092565b60008060006060848603121561181d57600080fd5b83356001600160401b0381111561183357600080fd5b61183f8682870161160c565b93505060208401356001600160401b0381111561185b57600080fd5b6118678682870161160c565b92505060406117fe86828701611783565b6000806000806080858703121561188e57600080fd5b84356001600160401b038111156118a457600080fd5b6118b08782880161160c565b94505060208501356001600160401b038111156118cc57600080fd5b6118d88782880161160c565b93505060406118e987828801611783565b92505060608501356001600160401b0381111561190557600080fd5b61191187828801611734565b91505092959194509250565b60006020828403121561192f57600080fd5b81356001600160401b0381111561194557600080fd5b6117ac84828501611678565b6000806040838503121561196457600080fd5b82356001600160401b0381111561197a57600080fd5b61198685828601611678565b92505060206109b985828601611783565b6000602082840312156119a957600080fd5b60006117ac84846116e8565b6000806000806000606086880312156119cd57600080fd5b85356001600160401b038111156119e357600080fd5b6119ef888289016116f3565b955095505060208601356001600160401b03811115611a0d57600080fd5b611a19888289016116f3565b93509350506040611a2c88828901611783565b9150509295509295909350565b60008060008060008060006080888a031215611a5457600080fd5b87356001600160401b03811115611a6a57600080fd5b611a768a828b016116f3565b975097505060208801356001600160401b03811115611a9457600080fd5b611aa08a828b016116f3565b95509550506040611ab38a828b01611783565b93505060608801356001600160401b03811115611acf57600080fd5b611adb8a828b016116f3565b925092505092959891949750929550565b60008060408385031215611aff57600080fd5b82356001600160401b03811115611b1557600080fd5b61198685828601611734565b600060208284031215611b3357600080fd5b60006117ac8484611783565b600080600060408486031215611b5457600080fd5b6000611b608686611783565b93505060208401356001600160401b03811115611b7c57600080fd5b611b88868287016116f3565b92509250509250925092565b60008060408385031215611ba757600080fd5b60006119868585611783565b6000611bbf8383611ccb565b9392505050565b611bcf8161212a565b82525050565b611bcf81612108565b611bcf611bea82612108565b612183565b6000611bfa826120f6565b611c0481856120fa565b935083602082028501611c16856120f0565b8060005b85811015611c505784840389528151611c338582611bb3565b9450611c3e836120f0565b60209a909a0199925050600101611c1a565b5091979650505050505050565b611bcf816109e2565b611bcf611c72826109e2565b6109e2565b611bcf81612135565b6000611c8c83856120fa565b9350611c9983858461214b565b611ca283612194565b9093019392505050565b6000611cb88385612103565b9350611cc583858461214b565b50500190565b6000611cd6826120f6565b611ce081856120fa565b9350611cf0818560208601612157565b611ca281612194565b6000611d04826120f6565b611d0e8185612103565b9350611d1e818560208601612157565b9290920192915050565b6000611d35601c83612103565b7f19457468657265756d205369676e6564204d6573736167653a0a3332000000008152601c0192915050565b6000611d6e6011836120fa565b70494e56414c49445f5349474e415455524560781b815260200192915050565b6000611d9b601d836120fa565b7f5245534f4c5645525f44455441434845445f46524f4d5f444f4d41494e000000815260200192915050565b6000611dd4601f836120fa565b7f53454e4445525f49535f4e4f545f415050524f5645445f4f525f4f574e455200815260200192915050565b6000611e0d6014836120fa565b7329a2a72222a92fa4a9afa727aa2fa6a4a72a22a960611b815260200192915050565b611bcf81612124565b6000611e458286611c66565b602082019150611e558285611bde565b601482019150611e658284611c66565b506020019392505050565b60006117ac828486611cac565b6000611bbf8284611cf9565b6000611e9482611d28565b9150611ea08284611c66565b50602001919050565b6020810161151b8284611bd5565b6020810161151b8284611bc6565b60408101611ed38285611bc6565b611bbf6020830184611c5d565b60408101611ed38285611bd5565b60208082528101611bbf8184611bef565b60408082528101611f108185611bef565b905081810360208301526117ac8184611bef565b60608082528101611f358186611bef565b90508181036020830152611f498185611bef565b90506117ac6040830184611c5d565b60808101611f668287611c5d565b611f736020830186611e30565b611f806040830185611c5d565b611f8d6060830184611c5d565b95945050505050565b60608082528101611fa8818789611c80565b90508181036020830152611fbd818587611c80565b9050611fcc6040830184611c5d565b9695505050505050565b60208082528101611bbf8184611ccb565b60408082528101611ff88185611ccb565b905081810360208301526117ac8184611ccb565b6020808252810161151b81611d61565b6020808252810161151b81611d8e565b6020808252810161151b81611dc7565b6020808252810161151b81611e00565b6020810161151b8284611c5d565b604081016120688285611c5d565b611bbf6020830184611c77565b60408101611ed38285611c5d565b6040518181016001600160401b03811182821017156120a157600080fd5b604052919050565b60006001600160401b038211156120bf57600080fd5b5060209081020190565b60006001600160401b038211156120df57600080fd5b506020601f91909101601f19160190565b60200190565b5190565b90815260200190565b919050565b600061151b82612118565b151590565b6001600160a01b031690565b60ff1690565b600061151b82612140565b600061151b826109e2565b600061151b82612108565b82818337506000910152565b60005b8381101561217257818101518382015260200161215a565b83811115610aea5750506000910152565b600061151b82600061151b8261219e565b601f01601f191690565b60601b90565b6121ad81612108565b81146121b857600080fd5b50565b6121ad81612113565b6121ad816109e256fea365627a7a723158207a1d8dfd286d14fcafd1812a4c44813691ac746a5a23fa711ac5551c9509654d6c6578706572696d656e74616cf564736f6c634300050c0040","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x5":"0x4a3c194eb88966178bfdd81744dddafed611b830"}},"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa":{"nonce":93,"balance":"0x35aac60bbae01d424b","code":"0x","storage":{}}},"best_block_number":"0x5d"} \ No newline at end of file +{"block":{"number":"0x5e","coinbase":"0x0000000000000000000000000000000000000000","timestamp":"0x664e5e98","gas_limit":"0x6691b7","basefee":"0x18871","difficulty":"0x0","prevrandao":"0x0000000000000000000000000000000000000000000000000000000000000000","blob_excess_gas_and_price":{"excess_blob_gas":0,"blob_gasprice":1}},"accounts":{"0x0000000000000000000000000000000000000000":{"nonce":0,"balance":"0x103d21234bcf30e","code":"0x","storage":{}},"0x00e39a5004299871ab3b00fed5a39a715f181d02":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x66":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x67":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xd178b720229c39de617846f84cf9c8d32a63a23d","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0x0458f653495fb8d9bd0e7df468c2bf76d26c7bd9":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f7e83aee1461002d575b5f80fd5b61004061003b3660046105ba565b610054565b604051901515815260200160405180910390f35b5f601482146100a95760405162461bcd60e51b815260206004820152601860248201527f496e76616c696420736861312068617368206c656e6774680000000000000000604482015260640160405180910390fd5b5f6100ec5f85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101599050565b6bffffffffffffffffffffffff191690505f61013c87878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061018a92505050565b6bffffffffffffffffffffffff1916919091149695505050505050565b81515f90610168836014610621565b1115610172575f80fd5b5001602001516bffffffffffffffffffffffff191690565b5f6040518251602084019350604067ffffffffffffffc0600183011601600982820310600181036101bc576040820191505b50776745230100efcdab890098badcfe001032547600c3d2e1f061020d565b5f8383101561020657508082015192829003926020841015610206575f1960208590036101000a0119165b9392505050565b5f5b82811015610514576102228482896101db565b85526102328460208301896101db565b60208601526040818503106001810361024e5760808286038701535b506040830381146001810361026b57602086018051600887021790525b5060405b60808110156102f357858101603f19810151603719820151601f19830151600b198401516002911891909218189081027ffffffffefffffffefffffffefffffffefffffffefffffffefffffffefffffffe1663800000009091047c010000000100000001000000010000000100000001000000010000000116179052600c0161026f565b5060805b61014081101561037c57858101607f19810151606f19820151603f198301516017198401516004911891909218189081027ffffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffc1663400000009091047c0300000003000000030000000300000003000000030000000300000003161790526018016102f7565b50815f805f5b60508110156104ea576014810480156103b257600181146103d957600281146103fe576003811461042857610449565b600160281b8504600160501b86048118600160781b870416189350635a8279999250610449565b600160281b8504600160781b8604600160501b870418189350636ed9eba19250610449565b600160501b8504600160781b8604818117600160281b8804169116179350638f1bbcdc9250610449565b600160281b8504600160781b8604600160501b87041818935063ca62c1d692505b50601f600160bb1b8504168063ffffffe06001609b1b87041617905080840190508063ffffffff8616019050808301905080600160e01b600484028c015104019050600160a01b8102600160281b860417945050600160501b633fffffff600160521b86041663c00000006604000000000000870416170277ffffffff00ffffffff000000000000ffffffff00ffffffff8516179350600181019050610382565b5050509190910177ffffffff00ffffffff00ffffffff00ffffffff00ffffffff169060400161020f565b50600160601b63ffffffff821667ffffffff000000006101008404166bffffffff00000000000000006201000085041663ffffffff60601b630100000086041663ffffffff60801b6401000000008704161717171702945050505050919050565b5f8083601f840112610585575f80fd5b50813567ffffffffffffffff81111561059c575f80fd5b6020830191508360208285010111156105b3575f80fd5b9250929050565b5f805f80604085870312156105cd575f80fd5b843567ffffffffffffffff808211156105e4575f80fd5b6105f088838901610575565b90965094506020870135915080821115610608575f80fd5b5061061587828801610575565b95989497509550505050565b8082018082111561064057634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x06e2822b8856749ed179c77140dbc5f5a27410a4":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063de8f50a11461002d575b5f80fd5b61004061003b36600461051c565b610054565b604051901515815260200160405180910390f35b5f6060805f61009c60048b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506102e79050565b60ff1690508015610166576100f060058261ffff168c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b925061015f6101008260056105c3565b61ffff908116906005906101169085168d6105e5565b61012091906105e5565b8c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b915061021d565b6101a960058b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250929392505061038b9050565b90506101f460078261ffff168c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b925061021a6102048260076105c3565b61ffff908116906007906101169085168d6105e5565b91505b5f606061026084868a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152506103b192505050565b90925090508180156102d757506102856020825161027e91906105e5565b82906103cb565b60028b8b6040516102979291906105f8565b602060405180830381855afa1580156102b2573d5f803e3d5ffd5b5050506040513d601f19601f820116820180604052508101906102d59190610607565b145b9c9b505050505050505050505050565b5f8282815181106102fa576102fa61061e565b016020015160f81c90505b92915050565b825160609061031a8385610632565b1115610324575f80fd5b5f8267ffffffffffffffff81111561033e5761033e610645565b6040519080825280601f01601f191660200182016040528015610368576020820181803683370190505b509050602080820190868601016103808282876103ed565b509095945050505050565b81515f9061039a836002610632565b11156103a4575f80fd5b50016002015161ffff1690565b5f60606103bf838587610442565b91509150935093915050565b81515f906103da836020610632565b11156103e4575f80fd5b50016020015190565b602081106104255781518352610404602084610632565b9250610411602083610632565b915061041e6020826105e5565b90506103ed565b905182516020929092036101000a5f190180199091169116179052565b5f60605f85518551855188888860405160200161046496959493929190610686565b6040516020818303038152906040529050835167ffffffffffffffff81111561048f5761048f610645565b6040519080825280601f01601f1916602001820160405280156104b9576020820181803683370190505b50915083516020830182516020840160055afa925050935093915050565b5f8083601f8401126104e7575f80fd5b50813567ffffffffffffffff8111156104fe575f80fd5b602083019150836020828501011115610515575f80fd5b9250929050565b5f805f805f8060608789031215610531575f80fd5b863567ffffffffffffffff80821115610548575f80fd5b6105548a838b016104d7565b9098509650602089013591508082111561056c575f80fd5b6105788a838b016104d7565b90965094506040890135915080821115610590575f80fd5b5061059d89828a016104d7565b979a9699509497509295939492505050565b634e487b7160e01b5f52601160045260245ffd5b61ffff8181168382160190808211156105de576105de6105af565b5092915050565b81810381811115610305576103056105af565b818382375f9101908152919050565b5f60208284031215610617575f80fd5b5051919050565b634e487b7160e01b5f52603260045260245ffd5b80820180821115610305576103056105af565b634e487b7160e01b5f52604160045260245ffd5b5f81515f5b81811015610678576020818501810151868301520161065e565b505f93019283525090919050565b8681528560208201528460408201525f6106b56106af6106a96060850188610659565b86610659565b84610659565b9897505050505050505056fea164736f6c6343000818000a","storage":{}},"0x0712e8e819712c3bfdb098ce51c87a4ac0296fd8":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x0930ffb2c192b0c9a9dd2372cf7f2845ef39cbb6":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x65":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x66":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xbe92182cab5b84fd18b34881a0c32771e84f5b8b","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c8121905":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x107733fed96c4cd390c944a31f5425a7fb98ae5e":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x65":"0x556e73746f707061626c6520446f6d61696e7300000000000000000000000026","0x66":"0x5544000000000000000000000000000000000000000000000000000000000004","0x133":"0x68747470733a2f2f6578616d706c652e636f6d2f000000000000000000000028","0x134":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x9c74364589a7bce52d7a232f90c98b979577d9ab711dbe7e9fb985471178bff":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf29a433ca043c2d5f13825944af9d019209f338df87172c6b8012dce3044881":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf319a2ef598111826b455194189a27454a0286226eb066e1116f605e0373b37":"0x0","0x1257bbdf5bed452b3eda1d974a9839972d4d54d7fb1cde6a652e653346cc29b8":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x12c033f2252861b1bd15e9b5c71ef1cf26ca53de15eabc3b49e06f596e8755ec":"0x0","0x1348552952ac59b1c2522e84f684e36775420b449eddcdbd28f217183ed58b09":"0x0","0x149026695ebdd2bd6be0a7006aec5d10ddffbe46be181e4468980ea83c004fe9":"0x0","0x14c854a78d51371251661a408306c75d2515b5d509b295a58205e48267082bdc":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x18f06622a1abedc7bb78fcc98b2375188aef6c03b9247beee780b0b095d60285":"0x0","0x201ef5e312d372e2aeac4cf173b46ad2985127c7381f4f9acae5ebbd3a5e3861":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x2215c0abaeffcb5feae8a439b3185f8fba5dd6d97529a56c7609cd41fafdf5f1":"0x1","0x23513200931f98893f46373666c13964c7a821c5b40da7951b921629acf02735":"0x0","0x23f87654b79c6db28828f317e47d0c8deb9eaa2ea4e213fef901836c85036bf3":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x2e4566d865f2e159531492d7643e25e502917762b29082282ab9dfee8fbf54c7":"0x0","0x31fc31c15d389c5908095d314bb8b258352d51e18ac8a2f7fe15f3a0af519145":"0x0","0x3467fdbb447be3074b11c625b56e54d7ab44f3804bef205b07dd436d707d06d5":"0x0","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x62b11ad5f582a5c5d378fb310125b030042554f1","0x3cd80e7291e5f6dffa9af6eb70d47145a8fdd40acb8d09dfd0cf374e8c239b37":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x3f86c4990e663ffa5011ed38824fca68af7e0592eb22f41aebdec0ce84ee672e":"0x0","0x406aa3bf31381c8a323679af48792dfa2e7aa09dd0eb919e307dc4bf84216ff6":"0x0","0x47ce17acd30cc86e021ac7b23be8138ea767f6da503362aac5888a0679270eed":"0x0","0x4a7983c36f64e6df4d467cf706c128c273d30c24bbb172e251a5740624cc0bd3":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x4c42d98041cda7cb7d56b5d04731bd436366eb9f05c30f43671f1d1e2c0b0fa4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x55926eed7087c8cbfa1492f6d367f5e4c14c8d8cd59e2918c37184091369efb1":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x5b20f40cb5e9e634a90df9a72b516c11cc52281a4d1b7b67e672e2fe544ff22f":"0x0","0x6dac3e1cfae338e10c9c2f5000f6256d09afa83708761042001cea734f470ac1":"0x0","0x6defc32a546a6fb1b745bd1bb04e27085e94f01d7ef79587aee2c80853c43a53":"0x0","0x760b245be050a725a39b4fc089ad474a5fd40efa17101e112d30195d590779b4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x7bee59fcac76da32acb23def57eaaf959a4372a4fc180978fbd54f7a4c4b2f3d":"0x0","0x804aee9448e0b539a009ee7c6dd57e686c72e7b182e9622a42922b245a97e61e":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x825f7f8567cfd669c3beab41edff07d4aa51436123deeb0d3623b6a8fdec893c":"0x0","0x8717a3236e6a948df94444f035834fa8f7c5ee663a29f3580f3ef43ab051d6bd":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8a34e37883baf84417a33bb02eec8d1e43e363f617029800ff166614df3f112f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8bd1acdc45b63f1edf5db0b1444f1c4a6f82bf0a5a0a7231c2dd7b76a2b1e35c":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87":"0x0","0x8ed4e9fbdf86edd9f3eb1c8d4fbfc53a2eb863faf4cf5e0d2b307c0b33030091":"0x0","0x8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x90d72780b77edcd0c8daffbac0b21264679e851b734cb090e2b144eb3a28bb98":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x93fc964857984ff804a65eaceac4062669948f2b651ddc6b71373ad142bf45e0":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x9770fa903e700367e0306ab8fd70a2bb4f049417d341a2f8a2409d8d6a2218d1":"0x0","0xb1016fe231c2ed9dba8c95d2658191823b4b9ffa61a7aea530802c6b2ff27c41":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xbe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafe":"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f","0xbe7c5c707db1c91bd2c84880bb1e177b65886d295d9a62df8edfe38f8066cc81":"0x0","0xc3cd64a46de7309013ddb93a16a3024c2e46fb931e4744edf2610fb119f716f5":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xc563f9d3175978a619bae1a8175d3ea4be91d3890345085c5eb16f83b678a3d9":"0x0","0xc5b5cdb7b939f9d661f58f28c37e10cf71d45dacfea2581c88ae4a17aaf55e6e":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xd386775169d9e0716e9b5b08561984726edaa9febd0ca8e5468ecffa112078c7":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xe3b736cdcc6a09d7e3a05ffb63b11f11c91958d861443c3409d3fd863e8217bd":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xe3e5b75e3dff543bfbfe5b494e4e3243b4d9d0b3d794725cea46c28fe6be50e4":"0x0","0xe7d61626cac95282d296ee7ab5958e3e72e32eb959a7cab1d37c0f9d6d69c18a":"0x1a","0xeca5e1ccaa645ce2be97a867a1f8aeeb63ea833aeb009c0df0553b42b30c683f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf08305746cdba1d0eaa65036694838a3db122973267ffc57739d605c320c680a":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf0d566acc03395f71b37890f455d51d93197adf754ea72aba21427dc66b437df":"0x0","0xf230898ba4fe40c52f958d03013d995f822e25a5d4fae43bbdc6e92623cea0bd":"0x0","0xf245a9962043f44f4af98f9952a3bd29d91eb05418e4bb567b9de8f27e239b13":"0x0","0xf2a19ade13962e8675aecf2fbe51913877912f9e48e899806b6e06e82f9a980f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf2fab50b0b53245ddfa1bcfcdf4c73e209d6921dad704d173cf04cbbadc8e346":"0x0","0xfa6f3ee10d719cb3457d10c539ff3d77b8e56852ea62f68b2f9f85ad691ed6b4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xfff3abb219acc6ef4eed6e93a5682023229370196f352cdf3a71a88d881e3487":"0x0"}},"0x11dd97b7ca847dfb6504e61b7b9eb30f55e554a0":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a424740014610090575b600080fd5b610059610054366004610ba9565b6100b3565b6040516100669190610c98565b60405180910390f35b61008261007d366004610cab565b6101ce565b604051908152602001610066565b6100a361009e366004610ba9565b610332565b6040519015158152602001610066565b606060005a6001546040805163b3f9e4cb60e01b81529088013560048201529192506000916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561010a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061012e9190610cd9565b90506101c26101406020880188610cf6565b8260408901358561015460608c018c610d13565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8f018190048102820181019092528d815292508d91508c90819084018382808284376000920191909152506103fb92505050565b925050505b9392505050565b60025460015460405163b3f9e4cb60e01b8152600481018490526000926001600160a01b0390811692169063b3f9e4cb90602401602060405180830381865afa92505050801561023b575060408051601f3d908101601f1916820190925261023891810190610cd9565b60015b156102435790505b6001600160a01b0381163b156102c557604051636ccbae5f60e01b81526004810184905281906001600160a01b03821690636ccbae5f90602401602060405180830381865afa9250505080156102b6575060408051601f3d908101601f191682019092526102b391810190610d5a565b60015b156102c357949350505050565b505b600254604051636ccbae5f60e01b8152600481018590526001600160a01b0390911690636ccbae5f90602401602060405180830381865afa15801561030e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101c79190610d5a565b6001546040805163b3f9e4cb60e01b815290850135600482015260009182916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa158015610383573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103a79190610cd9565b90506103f26103b586610e0b565b8286868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506104d392505050565b95945050505050565b6060600080876001600160a01b0316866104178b8a898961051f565b6040516104249190610eb5565b60006040518083038160008787f1925050503d8060008114610462576040519150601f19603f3d011682016040523d82523d6000602084013e610467565b606091505b509092509050610478603f87610ed1565b5a1161048657610486610ef3565b6104c682826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506105d4565b9998505050505050505050565b60006104e084848461060d565b8015610514575060608401516020908101516001600160e01b031990811660009081529182905260409091205460e01b1615155b949350505050565b50565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036105b15760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526105c982828661074c565b979650505050505050565b606083156105e35750816101c7565b8251156105f35782518084602001fd5b8160405162461bcd60e51b81526004016105a89190610c98565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015610654573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106789190610d5a565b905060006107268660600151805190602001208688602001516040516020016106c69392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156101c2575085516101c2906001600160a01b03168286610935565b60606001600160e01b0319841663b87abc1160e01b036107cd5760008380602001905181019061077c9190610d5a565b9050848184604051602401610792929190610f09565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915291506101c79050565b6001600160e01b0319841663c597407360e01b03610859576000806000858060200190518101906107fe9190610f67565b925092509250868383838860405160240161081c9493929190610fd4565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293506101c792505050565b6001600160e01b031984166311ed383160e31b036108a85760008060008580602001905181019061088a91906110a6565b925092509250868383838860405160240161081c9493929190611157565b6001600160e01b031984166328d55f9b60e21b036101c7576000806000858060200190518101906108d991906110a6565b92509250925086838383886040516024016108f79493929190611157565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293505050509392505050565b60008060006109448585610a77565b9092509050600081600481111561095d5761095d61117c565b14801561097b5750856001600160a01b0316826001600160a01b0316145b1561098b576001925050506101c7565b600080876001600160a01b0316631626ba7e60e01b88886040516024016109b3929190610f09565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516109f19190610eb5565b600060405180830381855afa9150503d8060008114610a2c576040519150601f19603f3d011682016040523d82523d6000602084013e610a31565b606091505b5091509150818015610a44575080516020145b8015610a6b57508051630b135d3f60e11b90610a699083016020908101908401610d5a565b145b98975050505050505050565b6000808251604103610aad5760208301516040840151606085015160001a610aa187828585610abc565b94509450505050610ab5565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610af35750600090506003610ba0565b8460ff16601b14158015610b0b57508460ff16601c14155b15610b1c5750600090506004610ba0565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610b70573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610b9957600060019250925050610ba0565b9150600090505b94509492505050565b600080600060408486031215610bbe57600080fd5b833567ffffffffffffffff80821115610bd657600080fd5b9085019060808288031215610bea57600080fd5b90935060208501359080821115610c0057600080fd5b818601915086601f830112610c1457600080fd5b813581811115610c2357600080fd5b876020828501011115610c3557600080fd5b6020830194508093505050509250925092565b60005b83811015610c63578181015183820152602001610c4b565b50506000910152565b60008151808452610c84816020860160208601610c48565b601f01601f19169290920160200192915050565b6020815260006101c76020830184610c6c565b600060208284031215610cbd57600080fd5b5035919050565b6001600160a01b038116811461051c57600080fd5b600060208284031215610ceb57600080fd5b81516101c781610cc4565b600060208284031215610d0857600080fd5b81356101c781610cc4565b6000808335601e19843603018112610d2a57600080fd5b83018035915067ffffffffffffffff821115610d4557600080fd5b602001915036819003821315610ab557600080fd5b600060208284031215610d6c57600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610dac57610dac610d73565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ddb57610ddb610d73565b604052919050565b600067ffffffffffffffff821115610dfd57610dfd610d73565b50601f01601f191660200190565b600060808236031215610e1d57600080fd5b610e25610d89565b8235610e3081610cc4565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610e6057600080fd5b840136601f820112610e7157600080fd5b8035610e84610e7f82610de3565b610db2565b8181523684838501011115610e9857600080fd5b818484018583013760009181019093015250606082015292915050565b60008251610ec7818460208701610c48565b9190910192915050565b600082610eee57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b8281526040602082015260006105146040830184610c6c565b600082601f830112610f3357600080fd5b8151610f41610e7f82610de3565b818152846020838601011115610f5657600080fd5b610514826020830160208701610c48565b600080600060608486031215610f7c57600080fd5b835167ffffffffffffffff80821115610f9457600080fd5b610fa087838801610f22565b94506020860151915080821115610fb657600080fd5b50610fc386828701610f22565b925050604084015190509250925092565b608081526000610fe76080830187610c6c565b8281036020840152610ff98187610c6c565b905084604084015282810360608401526105c98185610c6c565b600082601f83011261102457600080fd5b8151602067ffffffffffffffff8083111561104157611041610d73565b8260051b611050838201610db2565b938452858101830193838101908886111561106a57600080fd5b84880192505b85831015610a6b578251848111156110885760008081fd5b6110968a87838c0101610f22565b8352509184019190840190611070565b6000806000606084860312156110bb57600080fd5b835167ffffffffffffffff808211156110d357600080fd5b6110df87838801611013565b945060208601519150808211156110f557600080fd5b50610fc386828701611013565b600081518084526020808501808196508360051b8101915082860160005b8581101561114a578284038952611138848351610c6c565b98850198935090840190600101611120565b5091979650505050505050565b60808152600061116a6080830187611102565b8281036020840152610ff98187611102565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x2":"0xf8c26340c1eaea6c7ff1760b25005e1306953572","0x1e74f978992d7d64ddac400bd4aae9eefd60fa0b8456650273f5f50148803323":"0xa3557e6c","0x23c84c23be8f829809d1b1502c647c6c59fb6b2345b163a2ca3e7d4f9855975c":"0x8f69c188","0xa0286316c9d3cb00f4f54a9f1096cefaa1748bb5a5395e7fa1563568ebb3e6c3":"0xb87abc11","0xdc138de224807be243ee38fe9e746cce5d437a256b87be90b80240e0811ad043":"0xc5974073"}},"0x145908bbcfc7b258e4d4d9a586f6e3249ae80216":{"nonce":1,"balance":"0x0","code":"0x3d5c","storage":{}},"0x17cda4e23f7237277952e075b1c48467aabfacc0":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c806368f9dab21461002d575b5f80fd5b61004061003b36600461088b565b610052565b60405190815260200160405180910390f35b5f61006f6040518060400160405280606081526020015f81525090565b61008e61007c858861090d565b61008790601061090d565b82906101d1565b506100d085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250859392505061023a9050565b5061011287878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250859392505061023a9050565b505f610120825f0151610266565b905083156101bc5760408051808201909152606081525f602090910181905282515261014c825f610650565b5061018e88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250869392505061023a9050565b505f5b848110156101ba576101a4835f8461067f565b5082516101b090610266565b9150600101610191565b505b6001600160601b031916979650505050505050565b60408051808201909152606081525f60208201526101f0602083610920565b1561021857610200602083610920565b61020b90602061093f565b610215908361090d565b91505b506020808301829052604080518085525f815283019091019052815b92915050565b60408051808201909152606081525f602082015261025f83845f0151518485516106b2565b9392505050565b5f6040518251602084019350604067ffffffffffffffc060018301160160098282031060018103610298576040820191505b50776745230100efcdab890098badcfe001032547600c3d2e1f06102e8565b5f8383101561025f5750808201519282900392602084101561025f575f1960208590036101000a0119169392505050565b5f5b828110156105ef576102fd8482896102b7565b855261030d8460208301896102b7565b6020860152604081850310600181036103295760808286038701535b506040830381146001810361034657602086018051600887021790525b5060405b60808110156103ce57858101603f19810151603719820151601f19830151600b198401516002911891909218189081027ffffffffefffffffefffffffefffffffefffffffefffffffefffffffefffffffe1663800000009091047c010000000100000001000000010000000100000001000000010000000116179052600c0161034a565b5060805b61014081101561045757858101607f19810151606f19820151603f198301516017198401516004911891909218189081027ffffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffc1663400000009091047c0300000003000000030000000300000003000000030000000300000003161790526018016103d2565b50815f805f5b60508110156105c55760148104801561048d57600181146104b457600281146104d9576003811461050357610524565b600160281b8504600160501b86048118600160781b870416189350635a8279999250610524565b600160281b8504600160781b8604600160501b870418189350636ed9eba19250610524565b600160501b8504600160781b8604818117600160281b8804169116179350638f1bbcdc9250610524565b600160281b8504600160781b8604600160501b87041818935063ca62c1d692505b50601f600160bb1b8504168063ffffffe06001609b1b87041617905080840190508063ffffffff8616019050808301905080600160e01b600484028c015104019050600160a01b8102600160281b860417945050600160501b633fffffff600160521b86041663c00000006604000000000000870416170277ffffffff00ffffffff000000000000ffffffff00ffffffff851617935060018101905061045d565b5050509190910177ffffffff00ffffffff00ffffffff00ffffffff00ffffffff16906040016102ea565b50600160601b63ffffffff821667ffffffff000000006101008404166bffffffff00000000000000006201000085041663ffffffff60601b630100000086041663ffffffff60801b6401000000008704161717171702945050505050919050565b60408051808201909152606081525f602082015282515161025f9084906001600160601b031985166014610798565b60408051808201909152606081525f60208201526106aa84846001600160601b031985166014610798565b949350505050565b60408051808201909152606081525f602082015282518211156106d3575f80fd5b60208501516106e2838661090d565b1115610715576107158561070587602001518786610700919061090d565b610813565b610710906002610952565b610829565b5f808651805187602083010193508088870111156107335787860182525b505050602084015b60208410610773578051825261075260208361090d565b915061075f60208261090d565b905061076c60208561093f565b935061073b565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b60408051808201909152606081525f602082015260208501516107bb858461090d565b11156107cf576107cf85610705868561090d565b5f6001836101000a0390508260200360080284901c93508551838682010185831982511617815250805184870111156108085783860181525b509495945050505050565b5f81831115610823575081610234565b50919050565b815161083583836101d1565b50610840838261023a565b50505050565b5f8083601f840112610856575f80fd5b50813567ffffffffffffffff81111561086d575f80fd5b602083019150836020828501011115610884575f80fd5b9250929050565b5f805f805f6060868803121561089f575f80fd5b853567ffffffffffffffff808211156108b6575f80fd5b6108c289838a01610846565b909750955060208801359150808211156108da575f80fd5b506108e788828901610846565b96999598509660400135949350505050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610234576102346108f9565b5f8261093a57634e487b7160e01b5f52601260045260245ffd5b500690565b81810381811115610234576102346108f9565b8082028115828204841417610234576102346108f956fea164736f6c6343000818000a","storage":{}},"0x19356cc2300833e690088a5a09a2044a3cc2a1e2":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x229c56b7805ab5935a883207f6a6bd5847e65aee":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106102ae5760003560e01c8063906cecc111610175578063b9998a24116100dc578063d547741f11610095578063f2fde38b1161006f578063f2fde38b14610892578063f5243bc4146108b2578063f940e385146108d2578063ffa1ad74146108f257600080fd5b8063d547741f1461083f578063d7db74c71461085f578063ec5273891461087257600080fd5b8063b9998a241461077d578063cc2a9a5b1461079d578063cc2c3fc4146107bd578063ceeb4f50146107dd578063d1f5692c146107fd578063d53913931461081d57600080fd5b8063a3a3f7f61161012e578063a3a3f7f614610690578063a3f4df7e146106b0578063a849d65c146106fd578063aa271e1a1461071d578063b0aa98c71461073d578063b3ab15fb1461075d57600080fd5b8063906cecc1146105e657806391d1485414610606578063983b2d5614610626578063986502751461064657806399e0dd7c1461065b578063a217fddf1461067b57600080fd5b80635b6fa8db11610219578063715018a6116101d2578063715018a61461054b57806371e2a6571461056057806377a2a5891461058057806381c81d35146105a05780638456cb59146105b35780638da5cb5b146105c857600080fd5b80635b6fa8db146104a35780635c975abb146104c35780635cd7e3b3146104d85780635e22cd86146104f85780635fc1964f14610518578063634486da1461053857600080fd5b80633092afd51161026b5780633092afd5146103a857806336568abe146103c85780633f41b614146103e85780633f4ba83a1461042057806351cff8d914610435578063572b6c051461045557600080fd5b806301ffc9a7146102b35780631edb948e146102e857806320c5429b1461030a578063248a9ca31461032a578063268b15ed146103685780632f2ff15d14610388575b600080fd5b3480156102bf57600080fd5b506102d36102ce366004613dc4565b610923565b60405190151581526020015b60405180910390f35b3480156102f457600080fd5b50610308610303366004613e13565b61095a565b005b34801561031657600080fd5b50610308610325366004613e3f565b610b03565b34801561033657600080fd5b5061035a610345366004613e3f565b60009081526097602052604090206001015490565b6040519081526020016102df565b34801561037457600080fd5b50610308610383366004613e99565b610c26565b34801561039457600080fd5b506103086103a3366004613f04565b610cb9565b3480156103b457600080fd5b506103086103c3366004613f34565b610ce3565b3480156103d457600080fd5b506103086103e3366004613f04565b610cf7565b3480156103f457600080fd5b5060c954610408906001600160a01b031681565b6040516001600160a01b0390911681526020016102df565b34801561042c57600080fd5b50610308610d85565b34801561044157600080fd5b50610308610450366004613f34565b610d97565b34801561046157600080fd5b506102d3610470366004613f34565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546001600160a01b0390811691161490565b3480156104af57600080fd5b5060cc54610408906001600160a01b031681565b3480156104cf57600080fd5b506102d3610e37565b3480156104e457600080fd5b506103086104f3366004613fa3565b610e4d565b34801561050457600080fd5b50610308610513366004614062565b6110b1565b34801561052457600080fd5b5061030861053336600461419c565b6112f6565b610308610546366004613f34565b61133e565b34801561055757600080fd5b50610308611401565b34801561056c57600080fd5b5061030861057b36600461419c565b611413565b34801561058c57600080fd5b5060ce54610408906001600160a01b031681565b6103086105ae366004613f34565b61145b565b3480156105bf57600080fd5b506103086114d8565b3480156105d457600080fd5b506033546001600160a01b0316610408565b3480156105f257600080fd5b5061030861060136600461423a565b6114e8565b34801561061257600080fd5b506102d3610621366004613f04565b61156e565b34801561063257600080fd5b50610308610641366004613f34565b611599565b34801561065257600080fd5b506103086115aa565b34801561066757600080fd5b50610308610676366004614295565b6115c4565b34801561068757600080fd5b5061035a600081565b34801561069c57600080fd5b506103086106ab3660046142d6565b6116ab565b3480156106bc57600080fd5b506106f0604051806040016040528060148152602001732aa7299d1026b4b73a34b7339026b0b730b3b2b960611b81525081565b6040516102df919061437c565b34801561070957600080fd5b5060cb54610408906001600160a01b031681565b34801561072957600080fd5b506102d3610738366004613f34565b6116f4565b34801561074957600080fd5b506102d3610758366004613e3f565b61170e565b34801561076957600080fd5b50610308610778366004613f34565b61176c565b34801561078957600080fd5b50610308610798366004613f34565b611796565b3480156107a957600080fd5b506103086107b836600461438f565b6117db565b3480156107c957600080fd5b5060ca54610408906001600160a01b031681565b3480156107e957600080fd5b506103086107f8366004614411565b611cd2565b34801561080957600080fd5b506103086108183660046144c6565b611d76565b34801561082957600080fd5b5061035a600080516020614ef483398151915281565b34801561084b57600080fd5b5061030861085a366004613f04565b611e2d565b61030861086d3660046144fb565b611e52565b34801561087e57600080fd5b5061030861088d366004613e3f565b611fe2565b34801561089e57600080fd5b506103086108ad366004613f34565b612054565b3480156108be57600080fd5b506103086108cd3660046145f0565b612070565b3480156108de57600080fd5b506103086108ed366004614708565b612222565b3480156108fe57600080fd5b506106f060405180604001604052806005815260200164302e352e3160d81b81525081565b60006001600160e01b03198216637965db0b60e01b148061095457506301ffc9a760e01b6001600160e01b03198316145b92915050565b61096561073861239e565b61098a5760405162461bcd60e51b815260040161098190614736565b60405180910390fd5b60c95460405163baef73e960e01b8152600481018390526000916001600160a01b03169063baef73e990602401602060405180830381865afa1580156109d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109f8919061476b565b9050806001600160401b0316600003610a235760405162461bcd60e51b815260040161098190614788565b806001600160401b0316836001600160401b031611610a905760405162461bcd60e51b815260206004820152602360248201527f4d696e74696e674d616e616765723a204558504952595f4e4f545f455854454e60448201526211115160ea1b6064820152608401610981565b60c954604051631fb9763760e11b81526001600160401b0385166004820152602481018490526001600160a01b0390911690633f72ec6e906044015b600060405180830381600087803b158015610ae657600080fd5b505af1158015610afa573d6000803e3d6000fd5b50505050505050565b610b0e61073861239e565b610b2a5760405162461bcd60e51b815260040161098190614736565b60c95460405163baef73e960e01b8152600481018390526001600160a01b039091169063baef73e990602401602060405180830381865afa158015610b73573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b97919061476b565b6001600160401b0316600003610bbf5760405162461bcd60e51b815260040161098190614788565b60c954604051637eee288d60e01b8152306004820152602481018390526001600160a01b0390911690637eee288d90604401600060405180830381600087803b158015610c0b57600080fd5b505af1158015610c1f573d6000803e3d6000fd5b5050505050565b8282828080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250610c6993508592508491506123ad565b610c71610e37565b15610c8e5760405162461bcd60e51b8152600401610981906147cb565b6060610afa610c9b61239e565b610cae88610ca98989612584565b6125b0565b8384600060016126c1565b600082815260976020526040902060010154610cd481612c15565b610cde8383612c26565b505050565b610ceb612cad565b610cf481612d26565b50565b610cff61239e565b6001600160a01b0316816001600160a01b031614610d775760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610981565b610d818282612d3e565b5050565b610d8d612cad565b610d95612dc3565b565b610d9f612cad565b6001600160a01b038116610db257600080fd5b60405147906001600160a01b0383169082156108fc029083906000818181858888f19350505050158015610dea573d6000803e3d6000fd5b50604080516001600160a01b03841681526020810183905260008183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a15050565b600080516020614ed48339815191525460ff1690565b610e5786886147f5565b8051600203610e8c57610e6b61073861239e565b610e875760405162461bcd60e51b8152600401610981906148bf565b610fd1565b6000610e9782612e6b565b60c9549092506001600160a01b0316905063430c2081610eb561239e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015610f00573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f249190614903565b80610fb3575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa158015610f7d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fa19190614903565b8015610fb35750610fb361073861239e565b610fcf5760405162461bcd60e51b815260040161098190614920565b505b610fdb87896147f5565b6000600282511015610fff5760405162461bcd60e51b81526004016109819061496f565b6110546110336000846001865161101691906149ca565b81518110611026576110266149dd565b6020026020010151612ea6565b83600081518110611046576110466149dd565b6020026020010151836123ad565b61105c610e37565b156110795760405162461bcd60e51b8152600401610981906147cb565b6110a38b6110878b8d6147f5565b6110918a8c6147f5565b61109b898b6147f5565b6000896126c1565b505050505050505050505050565b6110bb87896147f5565b80516002036110f0576110cf61073861239e565b6110eb5760405162461bcd60e51b8152600401610981906148bf565b611235565b60006110fb82612e6b565b60c9549092506001600160a01b0316905063430c208161111961239e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015611164573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111889190614903565b80611217575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa1580156111e1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112059190614903565b8015611217575061121761073861239e565b6112335760405162461bcd60e51b815260040161098190614920565b505b61123f888a6147f5565b836002825110156112625760405162461bcd60e51b81526004016109819061496f565b6112796110336000846001865161101691906149ca565b611281610e37565b1561129e5760405162461bcd60e51b8152600401610981906147cb565b60028a146112be5760405162461bcd60e51b8152600401610981906149f3565b6112e78c6112cc8c8e6147f5565b6112d68b8d6147f5565b6112e08a8c6147f5565b89896126c1565b50505050505050505050505050565b6112fe612cad565b60005b8151811015610d815761132c82828151811061131f5761131f6149dd565b6020026020010151612d26565b8061133681614a39565b915050611301565b61134961073861239e565b6113655760405162461bcd60e51b815260040161098190614736565b6001600160a01b0381166113bb5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610981565b6113c481612f5a565b6113cc6115aa565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610d81573d6000803e3d6000fd5b611409612cad565b610d956000612f72565b61141b612cad565b60005b8151811015610d815761144982828151811061143c5761143c6149dd565b6020026020010151612f5a565b8061145381614a39565b91505061141e565b61146661073861239e565b6114825760405162461bcd60e51b815260040161098190614736565b6001600160a01b0381166113c45760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610981565b6114e0612cad565b610d95612fc4565b8282828080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525061152b93508592508491506123ad565b611533610e37565b156115505760405162461bcd60e51b8152600401610981906147cb565b606061156487610cae88610ca98989612584565b5050505050505050565b60009182526097602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6115a1612cad565b610cf481612f5a565b610d95600080516020614ef48339815191526103e361239e565b6115cc612cad565b60c954604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906115fe9085908590600401614a52565b600060405180830381600087803b15801561161857600080fd5b505af115801561162c573d6000803e3d6000fd5b505060cb546001600160a01b0316159150610d8190505760cb54604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906116759085908590600401614a52565b600060405180830381600087803b15801561168f57600080fd5b505af11580156116a3573d6000803e3d6000fd5b505050505050565b6116b3612cad565b610cde83838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525085925061302c915050565b6000610954600080516020614ef48339815191528361156e565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd696020820152908101829052600090611762906060015b6040516020818303038152906040528051906020012090565b5460ff1692915050565b611774612cad565b60ce80546001600160a01b0319166001600160a01b0392909216919091179055565b61179e612cad565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e80546001600160a01b0319166001600160a01b03831617905550565b600054610100900460ff16158080156117fb5750600054600160ff909116105b806118155750303b158015611815575060005460ff166001145b6118785760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610981565b6000805460ff19166001179055801561189b576000805461ff0019166101001790555b60c980546001600160a01b03199081166001600160a01b038a81169190911790925560ca8054821689841617905560cb8054821688841617905560cc8054821687841617905560ce80549091169185169190911790556118f961314c565b611901613183565b61190a826131bc565b6119126131e3565b6040805161036081018252600661032082018181526563727970746f60d01b610340840152825282518084018452818152651dd85b1b195d60d21b602082810191909152808401919091528351808501855260018152600f60fb1b8183015283850152835180850185526003808252621b999d60ea1b82840152606085019190915284518086018652600a815269313637b1b5b1b430b4b760b11b818401526080850152845180860186526007808252663134ba31b7b4b760c91b8285015260a0860191909152855180870187528281526207070760eb1b8185015260c0860152855180870187528281526264616f60e81b8185015260e086015285518087018752828152621e9a5b60ea1b8185015261010086015285518087018752908152663837b63cb3b7b760c91b8184015261012085015284518086018652600b81526a756e73746f707061626c6560a81b81840152610140850152845180860186528381526535b632bb32b960d11b8184015261016085015284518086018652600280825261686960f01b8285015261018086019190915285518087018752848152656b726573757360d01b818501526101a086015285518087018752600580825264616e696d6560d81b828601526101c087019190915286518088018852818152646d616e676160d81b818601526101e087015286518088018852600981526862696e616e6365757360b81b8186015261020087015286518088018852818152647265616c6d60d81b818601526102208701528651808801885291825261676f60f01b82850152610240860191909152855180870187526008815267185b1d1a5b5a5cdd60c21b818501526102608601528551808701875290815264707564677960d81b81840152610280850152845180860186528381526530bab9ba34b760d11b818401526102a08501528451808601865292835265189a5d19d95d60d21b838301526102c08401929092528351808501855291825262706f6760e81b828201526102e083019190915282518084019093526004835263636c617960e01b9083015261030081019190915260005b6019811015611c5c57611c4a828260198110611c3e57611c3e6149dd565b6020020151600061302c565b80611c5481614a39565b915050611c20565b50611c8360405180604001604052806003815260200162636f6d60e81b815250600161302c565b508015610afa576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050505050565b8686868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250611d1593508592508491506123ad565b611d1d610e37565b15611d3a5760405162461bcd60e51b8152600401610981906147cb565b611d698a611d4c8b610ca98c8c612584565b611d56888a6147f5565b611d6087896147f5565b600060016126c1565b5050505050505050505050565b611d7e612cad565b60005b81811015610cde5760c9546001600160a01b03166350960239848484818110611dac57611dac6149dd565b9050602002016020810190611dc19190613f34565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401600060405180830381600087803b158015611e0257600080fd5b505af1158015611e16573d6000803e3d6000fd5b505050508080611e2590614a39565b915050611d81565b600082815260976020526040902060010154611e4881612c15565b610cde8383612d3e565b611e5c898b6147f5565b6000600282511015611e805760405162461bcd60e51b81526004016109819061496f565b611e976110336000846001865161101691906149ca565b611e9f610e37565b15611ebc5760405162461bcd60e51b8152600401610981906147cb565b60028b14611edc5760405162461bcd60e51b8152600401610981906149f3565b611f228d8d8d898960008a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061322392505050565b84341015611f725760405162461bcd60e51b815260206004820181905260248201527f4d696e74696e674d616e616765723a204e4f545f454e4f5547485f46554e44536044820152606401610981565b611f848d8d8d8d8d8d8d8c60006133e3565b843411156112e757611f9461239e565b6001600160a01b03166108fc611faa87346149ca565b6040518115909202916000818181858888f19350505050158015611fd2573d6000803e3d6000fd5b5050505050505050505050505050565b611fea612cad565b611ff38161349f565b61200f5760405162461bcd60e51b815260040161098190614a81565b600081815260cd6020526040812061202691613d76565b60405181907f0aa1aff0f830e739d86baf0e6624d6763da02f7733575e0e463886cd062dea6a90600090a250565b61205c612cad565b612065816134c5565b610cf460008261353b565b61207a8a8c6147f5565b600060028251101561209e5760405162461bcd60e51b81526004016109819061496f565b6120b56110336000846001865161101691906149ca565b6120bd610e37565b156120da5760405162461bcd60e51b8152600401610981906147cb565b60028c146120fa5760405162461bcd60e51b8152600401610981906149f3565b61213f8e8e8e8a898b8a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061322392505050565b856001600160a01b03166323b872dd61215661239e565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152306024820152604481018890526064016020604051808303816000875af11580156121a9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121cd9190614903565b6122115760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610981565b611fd28e8e8e8e8e8e8e8c8e6133e3565b61222a612cad565b6040516370a0823160e01b81523060048201526000906001600160a01b038416906370a0823190602401602060405180830381865afa158015612271573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122959190614ac3565b60405163a9059cbb60e01b81526001600160a01b038481166004830152602482018390529192509084169063a9059cbb906044016020604051808303816000875af11580156122e8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061230c9190614903565b6123505760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610981565b604080516001600160a01b0384811682526020820184905285168183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a1505050565b60006123a8613545565b905090565b6123b68361349f565b6123d25760405162461bcd60e51b815260040161098190614a81565b600083815260cf602052604090205460ff1615156001600160401b03821615151461244e5760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544c445f455850495241424c455f4d496044820152650a69a82a886960d31b6064820152608401610981565b60006124818360408051808201825260008082526020918201528151808301909252825182529182019181019190915290565b9050600a81600001511115612529576124ac6124a0826000600a61358b565b80516020909101512090565b7fb551e0305c8163b812374b8e78b577c77f226f6f10c5ad03e52699578fbc34b8036125295760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544f4b454e5f4c4142454c5f50524f4860448201526512509255115160d21b6064820152608401610981565b612532836135ca565b61257e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a204c4142454c5f494e56414c49440000006044820152606401610981565b50505050565b60608282604051602001612599929190614adc565b604051602081830303815290604052905092915050565b604080516002808252606082810190935260009190816020015b60608152602001906001900390816125ca57905050905082816000815181106125f5576125f56149dd565b602002602001018190525060cd6000858152602001908152602001600020805461261e90614b04565b80601f016020809104026020016040519081016040528092919081815260200182805461264a90614b04565b80156126975780601f1061266c57610100808354040283529160200191612697565b820191906000526020600020905b81548152906001019060200180831161267a57829003601f168201915b5050505050816001815181106126af576126af6149dd565b60209081029190910101529392505050565b60008060006126cf88612e6b565b915091508380156126e1575060028851115b8015612763575060c9546040516331a9108f60e11b8152600481018390526001600160a01b038b8116921690636352211e90602401602060405180830381865afa158015612733573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127579190614b3e565b6001600160a01b031614155b156127c35760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e616765723a20524556455253455f5245434f52445f4e60448201526913d517d0531313d5d15160b21b6064820152608401610981565b60c954604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401602060405180830381865afa15801561280c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128309190614903565b8015612921575060c9546040516331a9108f60e11b81526004810184905230916001600160a01b031690636352211e90602401602060405180830381865afa158015612880573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128a49190614b3e565b6001600160a01b03161480612921575060c95460405163d9548e5360e01b8152600481018490526001600160a01b039091169063d9548e5390602401602060405180830381865afa1580156128fd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129219190614903565b15612a12576001600160401b038516156129a35760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b15801561298a57600080fd5b505af115801561299e573d6000803e3d6000fd5b505050505b60c954604051630fb8df0360e11b81526001600160a01b0390911690631f71be06906129db908c908c908c908c908b90600401614bb0565b600060405180830381600087803b1580156129f557600080fd5b505af1158015612a09573d6000803e3d6000fd5b50505050612c09565b612a1b8261372e565b612a248861378d565b8015612a31575087516002145b8015612a4457506001600160401b038516155b15612b225760ca5488516001600160a01b039091169063c36c2125908b908b90600090612a7357612a736149dd565b602090810291909101015160cc546040516001600160e01b031960e086901b168152612aad9392916001600160a01b031690600401614c0f565b600060405180830381600087803b158015612ac757600080fd5b505af1158015612adb573d6000803e3d6000fd5b50505050600087511115612b1d5760cc54604051633a0deb9d60e21b81526001600160a01b039091169063e837ae74906129db908a908a908790600401614c44565b612c09565b60c95460405163ba5d40b760e01b81526001600160a01b039091169063ba5d40b790612b5a908c908c908c908c908b90600401614bb0565b600060405180830381600087803b158015612b7457600080fd5b505af1158015612b88573d6000803e3d6000fd5b505050506001600160401b03851615612c095760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b158015612bf057600080fd5b505af1158015612c04573d6000803e3d6000fd5b505050505b50979650505050505050565b610cf481612c2161239e565b6137e7565b612c30828261156e565b610d815760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19166001179055612c6961239e565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b612cb561239e565b6001600160a01b0316612cd06033546001600160a01b031690565b6001600160a01b031614610d955760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610981565b610cf4600080516020614ef483398151915282611e2d565b612d48828261156e565b15610d815760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19169055612d7f61239e565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612dcb610e37565b612e0e5760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881393d517d4105554d15160621b6044820152606401610981565b600080516020614ed4833981519152805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa612e4e61239e565b6040516001600160a01b03909116815260200160405180910390a1565b805160009081905b8015612ea057829150612e8c82856110166001856149ca565b925080612e9881614c7a565b915050612e73565b50915091565b60008151600003612ef95760405162461bcd60e51b815260206004820152601b60248201527f4d696e74696e674d616e616765723a204c4142454c5f454d50545900000000006044820152606401610981565b8282604051602001612f0b9190614c91565b60405160208183030381529060405280519060200120604051602001612f3b929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b610cf4600080516020614ef48339815191528261353b565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b612fcc610e37565b15612fe95760405162461bcd60e51b8152600401610981906147cb565b600080516020614ed4833981519152805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258612e4e61239e565b6000613039600084612ea6565b600081815260cd602052604090209091506130548482614cf3565b50600081815260cf602052604090819020805460ff19168415151790555181907f4fce6f6e172b04eaa80325d8e3b0180a34945000f3e214605039e8420fdf8980906130a190869061437c565b60405180910390a260c954604051634f558e7960e01b8152600481018390526001600160a01b0390911690634f558e7990602401602060405180830381865afa1580156130f2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131169190614903565b610cde5760c9546040516307befae360e51b81526001600160a01b039091169063f7df5c6090610acc9084908790600401614db2565b600054610100900460ff166131735760405162461bcd60e51b815260040161098190614dd3565b610d9561317e61239e565b612f72565b600054610100900460ff166131aa5760405162461bcd60e51b815260040161098190614dd3565b610d9560006131b761239e565b61353b565b600054610100900460ff1661179e5760405162461bcd60e51b815260040161098190614dd3565b600054610100900460ff1661320a5760405162461bcd60e51b815260040161098190614dd3565b600080516020614ed4833981519152805460ff19169055565b600061323761323287896147f5565b612e6b565b506040516bffffffffffffffffffffffff1930606090811b821660208401524660348401528b811b82166054840152606883018490526001600160c01b031960c08a901b1660888401526090830188905286901b1660b082015290915060009061331390849061330d9060c401604051602081830303815290604052805190602001206040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c8101829052600090605c01604051602081830303815290604052805190602001209050919050565b9061384b565b905061331e816116f4565b6133765760405162461bcd60e51b8152602060048201526024808201527f4d696e74696e674d616e616765723a205349474e45525f49535f4e4f545f4d49604482015263272a22a960e11b6064820152608401610981565b42866001600160401b0316116133d85760405162461bcd60e51b815260206004820152602160248201527f4d696e74696e674d616e616765723a20455850495245445f5349474e415455526044820152604560f81b6064820152608401610981565b505050505050505050565b600061342a8a6133f38a8c6147f5565b6133fd898b6147f5565b613407888a6147f5565b60008f6001600160a01b031661341b61239e565b6001600160a01b0316146126c1565b9050896001600160a01b031661343e61239e565b6001600160a01b0316827fa545b6fd3355e8d57f8c8147bafe740545bd3ea1f94bef2576a6d532a7c3b605868660405161348b9291909182526001600160a01b0316602082015260400190565b60405180910390a450505050505050505050565b600081815260cd6020526040812080548291906134bb90614b04565b9050119050919050565b6134cd612cad565b6001600160a01b0381166135325760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610981565b610cf481612f72565b610d818282612c26565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546000906001600160a01b03163303613586575060331936013560601c90565b503390565b604080518082019091526000808252602082015260405180604001604052808381526020018486602001516135c09190614e1e565b9052949350505050565b600081516000036135dd57506000919050565b60208201805160f81c603081108015906135fb575060398160ff1611155b15801561361d575060618160ff161015801561361b5750607a8160ff1611155b155b1561362c575060009392505050565b8351600181111561369a5761364e836136466001846149ca565b015160f81c90565b915060308260ff1610158015613668575060398260ff1611155b15801561368a575060618260ff16101580156136885750607a8260ff1611155b155b1561369a57506000949350505050565b60015b6136a86001836149ca565b811015613722578381015160f81c9250602d83148015906136de575060308360ff16101580156136dc575060398360ff1611155b155b80156136ff575060618360ff16101580156136fd5750607a8360ff1611155b155b156137105750600095945050505050565b8061371a81614a39565b91505061369d565b50600195945050505050565b6137378161170e565b156137845760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a20544f4b454e5f424c4f434b45440000006044820152606401610981565b610cf48161386f565b6000806137a46000846001865161101691906149ca565b60ca549091506001600160a01b0316158015906137e05750807f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f145b9392505050565b6137f1828261156e565b610d8157613809816001600160a01b031660146138f3565b6138148360206138f3565b604051602001613825929190614e31565b60408051601f198184030181529082905262461bcd60e51b82526109819160040161437c565b600080600061385a8585613a8e565b9150915061386781613ad3565b509392505050565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd6960208201529081018290526001906138ae90606001611749565b805460ff19169115159190911790556040518181527f2ce5d9351b1d590d5a066db0d2dc7602d55f092506a83a7ee8c4d78ee357d75a9060200160405180910390a150565b60606000613902836002614ea6565b61390d906002614e1e565b6001600160401b0381111561392457613924614133565b6040519080825280601f01601f19166020018201604052801561394e576020820181803683370190505b509050600360fc1b81600081518110613969576139696149dd565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110613998576139986149dd565b60200101906001600160f81b031916908160001a90535060006139bc846002614ea6565b6139c7906001614e1e565b90505b6001811115613a3f576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106139fb576139fb6149dd565b1a60f81b828281518110613a1157613a116149dd565b60200101906001600160f81b031916908160001a90535060049490941c93613a3881614c7a565b90506139ca565b5083156137e05760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610981565b6000808251604103613ac45760208301516040840151606085015160001a613ab887828585613c89565b94509450505050613acc565b506000905060025b9250929050565b6000816004811115613ae757613ae7614ebd565b03613aef5750565b6001816004811115613b0357613b03614ebd565b03613b505760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152606401610981565b6002816004811115613b6457613b64614ebd565b03613bb15760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610981565b6003816004811115613bc557613bc5614ebd565b03613c1d5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b6064820152608401610981565b6004816004811115613c3157613c31614ebd565b03610cf45760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c604482015261756560f01b6064820152608401610981565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613cc05750600090506003613d6d565b8460ff16601b14158015613cd857508460ff16601c14155b15613ce95750600090506004613d6d565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613d3d573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613d6657600060019250925050613d6d565b9150600090505b94509492505050565b508054613d8290614b04565b6000825580601f10613d92575050565b601f016020900490600052602060002090810190610cf491905b80821115613dc05760008155600101613dac565b5090565b600060208284031215613dd657600080fd5b81356001600160e01b0319811681146137e057600080fd5b6001600160401b0381168114610cf457600080fd5b8035613e0e81613dee565b919050565b60008060408385031215613e2657600080fd5b8235613e3181613dee565b946020939093013593505050565b600060208284031215613e5157600080fd5b5035919050565b60008083601f840112613e6a57600080fd5b5081356001600160401b03811115613e8157600080fd5b602083019150836020828501011115613acc57600080fd5b600080600060408486031215613eae57600080fd5b8335925060208401356001600160401b03811115613ecb57600080fd5b613ed786828701613e58565b9497909650939450505050565b6001600160a01b0381168114610cf457600080fd5b8035613e0e81613ee4565b60008060408385031215613f1757600080fd5b823591506020830135613f2981613ee4565b809150509250929050565b600060208284031215613f4657600080fd5b81356137e081613ee4565b60008083601f840112613f6357600080fd5b5081356001600160401b03811115613f7a57600080fd5b6020830191508360208260051b8501011115613acc57600080fd5b8015158114610cf457600080fd5b60008060008060008060008060a0898b031215613fbf57600080fd5b8835613fca81613ee4565b975060208901356001600160401b0380821115613fe657600080fd5b613ff28c838d01613f51565b909950975060408b013591508082111561400b57600080fd5b6140178c838d01613f51565b909750955060608b013591508082111561403057600080fd5b5061403d8b828c01613f51565b909450925050608089013561405181613f95565b809150509295985092959890939650565b600080600080600080600080600060c08a8c03121561408057600080fd5b893561408b81613ee4565b985060208a01356001600160401b03808211156140a757600080fd5b6140b38d838e01613f51565b909a50985060408c01359150808211156140cc57600080fd5b6140d88d838e01613f51565b909850965060608c01359150808211156140f157600080fd5b506140fe8c828d01613f51565b90955093505060808a013561411281613dee565b915060a08a013561412281613f95565b809150509295985092959850929598565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561417157614171614133565b604052919050565b60006001600160401b0382111561419257614192614133565b5060051b60200190565b600060208083850312156141af57600080fd5b82356001600160401b038111156141c557600080fd5b8301601f810185136141d657600080fd5b80356141e96141e482614179565b614149565b81815260059190911b8201830190838101908783111561420857600080fd5b928401925b8284101561422f57833561422081613ee4565b8252928401929084019061420d565b979650505050505050565b6000806000806060858703121561425057600080fd5b843561425b81613ee4565b93506020850135925060408501356001600160401b0381111561427d57600080fd5b61428987828801613e58565b95989497509550505050565b600080602083850312156142a857600080fd5b82356001600160401b038111156142be57600080fd5b6142ca85828601613e58565b90969095509350505050565b6000806000604084860312156142eb57600080fd5b83356001600160401b0381111561430157600080fd5b61430d86828701613e58565b909450925050602084013561432181613f95565b809150509250925092565b60005b8381101561434757818101518382015260200161432f565b50506000910152565b6000815180845261436881602086016020860161432c565b601f01601f19169290920160200192915050565b6020815260006137e06020830184614350565b60008060008060008060c087890312156143a857600080fd5b86356143b381613ee4565b955060208701356143c381613ee4565b945060408701356143d381613ee4565b935060608701356143e381613ee4565b925060808701356143f381613ee4565b915060a087013561440381613ee4565b809150509295509295509295565b60008060008060008060008060a0898b03121561442d57600080fd5b883561443881613ee4565b97506020890135965060408901356001600160401b038082111561445b57600080fd5b6144678c838d01613e58565b909850965060608b013591508082111561448057600080fd5b61448c8c838d01613f51565b909650945060808b01359150808211156144a557600080fd5b506144b28b828c01613f51565b999c989b5096995094979396929594505050565b600080602083850312156144d957600080fd5b82356001600160401b038111156144ef57600080fd5b6142ca85828601613f51565b600080600080600080600080600080600060e08c8e03121561451c57600080fd5b6145258c613ef9565b9a506001600160401b038060208e0135111561454057600080fd5b6145508e60208f01358f01613f51565b909b50995060408d013581101561456657600080fd5b6145768e60408f01358f01613f51565b909950975060608d013581101561458c57600080fd5b61459c8e60608f01358f01613f51565b90975095506145ad60808e01613e03565b945060a08d013593508060c08e013511156145c757600080fd5b506145d88d60c08e01358e01613e58565b81935080925050509295989b509295989b9093969950565b6000806000806000806000806000806000806101008d8f03121561461357600080fd5b61461c8d613ef9565b9b506001600160401b0360208e0135111561463657600080fd5b6146468e60208f01358f01613f51565b909b5099506001600160401b0360408e0135111561466357600080fd5b6146738e60408f01358f01613f51565b90995097506001600160401b0360608e0135111561469057600080fd5b6146a08e60608f01358f01613f51565b90975095506146b160808e01613e03565b94506146bf60a08e01613ef9565b935060c08d013592506001600160401b0360e08e013511156146e057600080fd5b6146f08e60e08f01358f01613e58565b81935080925050509295989b509295989b509295989b565b6000806040838503121561471b57600080fd5b823561472681613ee4565b91506020830135613f2981613ee4565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b60006020828403121561477d57600080fd5b81516137e081613dee565b60208082526023908201527f4d696e74696e674d616e616765723a20544f4b454e5f4e4f545f455850495241604082015262424c4560e81b606082015260800190565b60208082526010908201526f14185d5cd8589b194e8814105554d15160821b604082015260600190565b60006148036141e484614179565b80848252602080830192508560051b85013681111561482157600080fd5b855b818110156148b35780356001600160401b03808211156148435760008081fd5b90880190601f36818401126148585760008081fd5b82358281111561486a5761486a614133565b61487b818301601f19168801614149565b9250808352368782860101111561489457600091508182fd5b8087850188850137600090830187015250865250938201938201614823565b50919695505050505050565b60208082526024908201527f4d696e74696e674d616e616765723a2043414c4c45525f49535f4e4f545f4d49604082015263272a22a960e11b606082015260800190565b60006020828403121561491557600080fd5b81516137e081613f95565b6020808252602f908201527f4d696e74696e674d616e616765723a2053454e4445525f49535f4e4f545f415060408201526e282927ab22a22fa7a92fa7aba722a960891b606082015260800190565b60208082526025908201527f4d696e74696e674d616e616765723a204c4142454c535f4c454e4754485f42456040820152642627abaf9960d91b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b81810381811115610954576109546149b4565b634e487b7160e01b600052603260045260246000fd5b60208082526026908201527f4d696e74696e674d616e616765723a20535542444f4d41494e535f4e4f545f41604082015265131313d5d15160d21b606082015260800190565b600060018201614a4b57614a4b6149b4565b5060010190565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b60208082526022908201527f4d696e74696e674d616e616765723a20544c445f4e4f545f5245474953544552604082015261115160f21b606082015260800190565b600060208284031215614ad557600080fd5b5051919050565b6b756e732d646576746573742d60a01b81528183600c83013760009101600c01908152919050565b600181811c90821680614b1857607f821691505b602082108103614b3857634e487b7160e01b600052602260045260246000fd5b50919050565b600060208284031215614b5057600080fd5b81516137e081613ee4565b600081518084526020808501808196508360051b8101915082860160005b85811015614ba3578284038952614b91848351614350565b98850198935090840190600101614b79565b5091979650505050505050565b6001600160a01b038616815260a060208201819052600090614bd490830187614b5b565b8281036040840152614be68187614b5b565b90508281036060840152614bfa8186614b5b565b91505082151560808301529695505050505050565b600060018060a01b03808616835260606020840152614c316060840186614350565b9150808416604084015250949350505050565b606081526000614c576060830186614b5b565b8281036020840152614c698186614b5b565b915050826040830152949350505050565b600081614c8957614c896149b4565b506000190190565b60008251614ca381846020870161432c565b9190910192915050565b601f821115610cde57600081815260208120601f850160051c81016020861015614cd45750805b601f850160051c820191505b818110156116a357828155600101614ce0565b81516001600160401b03811115614d0c57614d0c614133565b614d2081614d1a8454614b04565b84614cad565b602080601f831160018114614d555760008415614d3d5750858301515b600019600386901b1c1916600185901b1785556116a3565b600085815260208120601f198616915b82811015614d8457888601518255948401946001909101908401614d65565b5085821015614da25787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b828152604060208201526000614dcb6040830184614350565b949350505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b80820180821115610954576109546149b4565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351614e6981601785016020880161432c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351614e9a81602884016020880161432c565b01602801949350505050565b8082028115828204841417610954576109546149b4565b634e487b7160e01b600052602160045260246000fdfe5496787fc1ebdfeba375028c1865f13fbb1d63c0caa356ccc1b29a80f3ebd6229f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000811000a","storage":{}},"0x24f45688d421f46cca60734bdc648ad192db0f2e":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0x1","0x97":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x12d":"0x0","0x15f":"0x5cc819c9915eadfcebd76952b8c1bc36cadd7376","0x13cf90498be59d359caa5b6092b365feab4610605d7107d1f05f8e94ac955652":"0x1","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x54563a9e1cd2dcbd0bca90d3cfa4a647e02c404a","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106102295760003560e01c8063886a69ba11610123578063cf1d21c0116100ab578063e2c49de11161006f578063e2c49de11461091d578063e3dec8fb14610932578063e43009a6146109c8578063e66f9603146109fb578063ea60c7c414610a2557610240565b8063cf1d21c014610844578063d233a3c714610859578063d547741f1461089c578063d81c8e52146108d5578063dc993a23146108ea57610240565b8063a217fddf116100f2578063a217fddf1461078a578063b4b4f63e1461079f578063bc08452b146107b4578063c4d66de8146107e7578063ca15c8731461081a57610240565b8063886a69ba146106c95780639010d07c146106de5780639173b1391461070e57806391d148541461075157610240565b80633138b6f1116101b1578063568b80b511610175578063568b80b5146105fb578063607f2d4214610610578063630fcbfb1461064e5780636cb136b0146106635780636e86b7701461069657610240565b80633138b6f1146104f55780633408e4701461050a57806336568abe1461051f5780633805550f146105585780634faa8a26146105d557610240565b80630f7e5970116101f85780630f7e59701461042357806320379ee514610438578063248a9ca31461045f5780632d0335ab146104895780632f2ff15d146104bc57610240565b806304967702146102455780630c3894bb146102765780630c53c51c146102b15780630c598220146103ea57610240565b366102405761023e610239610a58565b610a68565b005b600080fd5b34801561025157600080fd5b5061025a610b69565b604080516001600160a01b039092168252519081900360200190f35b34801561028257600080fd5b5061023e6004803603604081101561029957600080fd5b506001600160a01b0381358116916020013516610b78565b610375600480360360a08110156102c757600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156102f257600080fd5b82018360208201111561030457600080fd5b8035906020019184600183028401116401000000008311171561032657600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550508235935050506020810135906040013560ff16610cc9565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103af578181015183820152602001610397565b50505050905090810190601f1680156103dc5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156103f657600080fd5b5061023e6004803603604081101561040d57600080fd5b50803590602001356001600160a01b0316610fcc565b34801561042f57600080fd5b506103756110b9565b34801561044457600080fd5b5061044d6110d6565b60408051918252519081900360200190f35b34801561046b57600080fd5b5061044d6004803603602081101561048257600080fd5b50356110dc565b34801561049557600080fd5b5061044d600480360360208110156104ac57600080fd5b50356001600160a01b03166110f4565b3480156104c857600080fd5b5061023e600480360360408110156104df57600080fd5b50803590602001356001600160a01b031661110f565b34801561050157600080fd5b5061025a611176565b34801561051657600080fd5b5061044d611185565b34801561052b57600080fd5b5061023e6004803603604081101561054257600080fd5b50803590602001356001600160a01b0316611189565b34801561056457600080fd5b5061023e6004803603602081101561057b57600080fd5b81019060208101813564010000000081111561059657600080fd5b8201836020820111156105a857600080fd5b803590602001918460018302840111640100000000831117156105ca57600080fd5b5090925090506111ea565b61023e600480360360208110156105eb57600080fd5b50356001600160a01b03166116ec565b34801561060757600080fd5b5061044d6116f8565b34801561061c57600080fd5b5061063a6004803603602081101561063357600080fd5b503561171b565b604080519115158252519081900360200190f35b34801561065a57600080fd5b5061023e611730565b34801561066f57600080fd5b5061023e6004803603602081101561068657600080fd5b50356001600160a01b03166117d6565b3480156106a257600080fd5b5061025a600480360360208110156106b957600080fd5b50356001600160a01b031661186e565b3480156106d557600080fd5b5061044d611889565b3480156106ea57600080fd5b5061025a6004803603604081101561070157600080fd5b50803590602001356118aa565b34801561071a57600080fd5b5061023e6004803603606081101561073157600080fd5b506001600160a01b038135811691602081013590911690604001356118d1565b34801561075d57600080fd5b5061063a6004803603604081101561077457600080fd5b50803590602001356001600160a01b0316611a06565b34801561079657600080fd5b5061044d611a24565b3480156107ab57600080fd5b5061023e611a29565b3480156107c057600080fd5b5061023e600480360360208110156107d757600080fd5b50356001600160a01b0316611acf565b3480156107f357600080fd5b5061023e6004803603602081101561080a57600080fd5b50356001600160a01b0316611b67565b34801561082657600080fd5b5061044d6004803603602081101561083d57600080fd5b5035611c57565b34801561085057600080fd5b5061025a611c6e565b34801561086557600080fd5b5061023e6004803603606081101561087c57600080fd5b506001600160a01b03813581169160208101359091169060400135611c86565b3480156108a857600080fd5b5061023e600480360360408110156108bf57600080fd5b50803590602001356001600160a01b0316611de8565b3480156108e157600080fd5b5061044d611e41565b3480156108f657600080fd5b5061023e6004803603602081101561090d57600080fd5b50356001600160a01b0316611e60565b34801561092957600080fd5b5061025a611f3d565b34801561093e57600080fd5b5061023e6004803603606081101561095557600080fd5b6001600160a01b03823581169260208101359091169181019060608101604082013564010000000081111561098957600080fd5b82018360208201111561099b57600080fd5b803590602001918460018302840111640100000000831117156109bd57600080fd5b509092509050611f4c565b3480156109d457600080fd5b5061044d600480360360208110156109eb57600080fd5b50356001600160a01b0316611fe9565b348015610a0757600080fd5b5061025a60048036036020811015610a1e57600080fd5b5035611ffb565b348015610a3157600080fd5b5061025a60048036036020811015610a4857600080fd5b50356001600160a01b0316612016565b6000610a62612031565b90505b90565b604080513460208083019190915282518083039091018152908201909152610aa58273eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee8361208e565b7fa1829a9003092132f585b6ccdd167c19fe9774dbdea4260287e8a8e8ca8185d7546000908152600260205260408082205490516001600160a01b039091169034908381818185875af1925050503d8060008114610b1f576040519150601f19603f3d011682016040523d82523d6000602084013e610b24565b606091505b5050905080610b645760405162461bcd60e51b815260040180806020018281038252602781526020018061419d6027913960400191505060405180910390fd5b505050565b6009546001600160a01b031681565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020610ba981610ba4610a58565b611a06565b600a90610c495760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b820191906000526020600020905b815481529060010190602001808311610c1d57829003601f168201915b50509250505060405180910390fd5b506001600160a01b03808416600081815260036020908152604080832080546001600160a01b0319908116909155948716808452600483528184208054909616909555838352600590915280822082905551909291907f9e651a8866fbea043e911d816ec254b0e3c992c06fff32d605e72362d6023bd9908490a4505050565b6060610cd3613e2a565b50604080516060810182526001600160a01b0388166000818152600c602090815290849020548352820152908101869052610d118782878787612508565b610d4c5760405162461bcd60e51b81526004018080602001828103825260218152602001806141c46021913960400191505060405180910390fd5b6001600160a01b0387166000908152600c6020526040902054610d7690600163ffffffff6125e516565b6001600160a01b0388166000818152600c602090815260408083209490945583519283523383820181905260609484018581528b51958501959095528a517f5845892132946850460bff5a0083f71031bc5bf9aadcd40f1de79423eac9b10b958d9592948d94919260808501928601918190849084905b83811015610e05578181015183820152602001610ded565b50505050905090810190601f168015610e325780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a160006060306001600160a01b0316888a6040516020018083805190602001908083835b60208310610e835780518252601f199092019160209182019101610e64565b6001836020036101000a038019825116818451168082178552505050505050905001826001600160a01b03166001600160a01b031660601b8152601401925050506040516020818303038152906040526040518082805190602001908083835b60208310610f025780518252601f199092019160209182019101610ee3565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610f64576040519150601f19603f3d011682016040523d82523d6000602084013e610f69565b606091505b509150915081610fc0576040805162461bcd60e51b815260206004820152601c60248201527f46756e6374696f6e2063616c6c206e6f74207375636365737366756c00000000604482015290519081900360640190fd5b98975050505050505050565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020610ff881610ba4610a58565b600a9061105e5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5060008381526002602052604080822080546001600160a01b0319166001600160a01b0386169081179091559051909185917f8643692ae1c12ec91fa18e50b82ed93fa314f580999a236824db6de9ae0d839b9190a3505050565b604051806040016040528060018152602001603160f81b81525081565b600b5490565b6000818152600160205260409020600201545b919050565b6001600160a01b03166000908152600c602052604090205490565b60008281526001602052604090206002015461112d90610ba4610a58565b6111685760405162461bcd60e51b815260040180806020018281038252602f815260200180613f78602f913960400191505060405180910390fd5b611172828261263f565b5050565b6008546001600160a01b031690565b4690565b611191610a58565b6001600160a01b0316816001600160a01b0316146111e05760405162461bcd60e51b815260040180806020018281038252602f815260200180614286602f913960400191505060405180910390fd5b61117282826126ae565b606061123361122e84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061271d92505050565b612798565b905060006112548260028151811061124757fe5b602002602001015161291a565b6112796112748460088151811061126757fe5b6020026020010151612a62565b612b2c565b6112898460098151811061124757fe5b6040516020018084815260200183805190602001908083835b602083106112c15780518252601f1990920191602091820191016112a2565b51815160209384036101000a6000190180199092169116179052920193845250604080518085038152938201815283519382019390932060008181526006909252929020549194505060ff1615915061134d90505760405162461bcd60e51b81526004018080602001828103825260288152602001806142096028913960400191505060405180910390fd5b6000818152600660208190526040909120805460ff19166001179055825160609161138a9161122e9161138591879190811061126757fe5b61271d565b9050611394613e54565b6113b1826003815181106113a457fe5b6020026020010151612798565b6113c18560098151811061124757fe5b815181106113cb57fe5b6020026020010151905060006113fc6113e383612798565b6000815181106113ef57fe5b6020026020010151612c9f565b6001600160a01b0380821660009081526004602052604090205491925016806114565760405162461bcd60e51b81526004018080602001828103825260228152602001806140af6022913960400191505060405180910390fd5b6001600160a01b03808216600090815260056020908152604080832054835260029091529020548751911690611493908890600890811061124757fe5b63ffffffff1916156114d65760405162461bcd60e51b815260040180806020018281038252602581526020018061408a6025913960400191505060405180910390fd5b61151e6114e98860068151811061126757fe5b6114f98960088151811061126757fe5b6115098a60078151811061126757fe5b6115198b60058151811061124757fe5b612d2f565b61156f576040805162461bcd60e51b815260206004820152601f60248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f50524f4f4600604482015290519081900360640190fd5b6115dd6115828860028151811061124757fe5b6115928960038151811061124757fe5b6115a28a60048151811061124757fe5b60001b6115b58b60058151811061124757fe5b60001b6115c88c60008151811061124757fe5b6115d88d60018151811061126757fe5b612f76565b50806001600160a01b0316638274664f6115f5610a58565b846115ff886130bf565b6040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561167b578181015183820152602001611663565b50505050905090810190601f1680156116a85780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b1580156116c957600080fd5b505af11580156116dd573d6000803e3d6000fd5b50505050505050505050505050565b6116f581610a68565b50565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b01902081565b60066020526000908152604090205460ff1681565b600061173e81610ba4610a58565b600a906117a45760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506116f56040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b81525061312d565b60006117e481610ba4610a58565b600a9061184a5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5050600780546001600160a01b0319166001600160a01b0392909216919091179055565b6004602052600090815260409020546001600160a01b031681565b604080516826a0a82faa27a5a2a760b91b8152905190819003600901902081565b60008281526001602052604081206118c8908363ffffffff6131e916565b90505b92915050565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b0190206118fd81610ba4610a58565b600a906119635760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b03848116600090815260036020526040902054161580156119a457506001600160a01b0383811660009081526004602052604090205416155b6119f5576040805162461bcd60e51b815260206004820181905260248201527f526f6f74436861696e4d616e616765723a20414c52454144595f4d4150504544604482015290519081900360640190fd5b611a008484846131f5565b50505050565b60008281526001602052604081206118c8908363ffffffff61348416565b600081565b6000611a3781610ba4610a58565b600a90611a9d5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506116f56040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613499565b6000611add81610ba4610a58565b600a90611b435760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5050600880546001600160a01b0319166001600160a01b0392909216919091179055565b60005460ff1615611bb0576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b611be16040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613537565b611c126040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613499565b611c1d600082611168565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020611c479082611168565b506000805460ff19166001179055565b60008181526001602052604081206118cb90613589565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020611cb281610ba4610a58565b600a90611d185760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b0380851660009081526003602081815260408084205488861685526004835281852054861680865293909252909220549183169290911615611d8e576001600160a01b038116600090815260036020908152604080832080546001600160a01b031916905560059091528120555b6001600160a01b038281166000908152600460205260409020541615611dd5576001600160a01b038216600090815260046020526040902080546001600160a01b03191690555b611de08686866131f5565b505050505050565b600082815260016020526040902060020154611e0690610ba4610a58565b6111e05760405162461bcd60e51b81526004018080602001828103825260308152602001806140f96030913960400191505060405180910390fd5b604080516611115413d4d25560ca1b8152905190819003600701902081565b6000611e6e81610ba4610a58565b600a90611ed45760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b038216611f1a5760405162461bcd60e51b815260040180806020018281038252602d815260200180613fa7602d913960400191505060405180910390fd5b50600980546001600160a01b0319166001600160a01b0392909216919091179055565b6007546001600160a01b031690565b6001600160a01b03831673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee1415611fa85760405162461bcd60e51b81526004018080602001828103825260248152602001806141e56024913960400191505060405180910390fd5b611a00848484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061208e92505050565b60056020526000908152604090205481565b6002602052600090815260409020546001600160a01b031681565b6003602052600090815260409020546001600160a01b031681565b6000333014156120895760606000368080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505050503601516001600160a01b03169150610a659050565b503390565b6001600160a01b03808316600090815260056020908152604080832054600390925290912054909116158015906120c457508015155b6120ff5760405162461bcd60e51b81526004018080602001828103825260228152602001806140af6022913960400191505060405180910390fd5b6000818152600260205260409020546001600160a01b0316806121535760405162461bcd60e51b81526004018080602001828103825260248152602001806140176024913960400191505060405180910390fd5b6001600160a01b0385166121ae576040805162461bcd60e51b815260206004820152601e60248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f555345520000604482015290519081900360640190fd5b806001600160a01b031663e375b64e6121c5610a58565b8787876040518563ffffffff1660e01b815260040180856001600160a01b03166001600160a01b03168152602001846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561225c578181015183820152602001612244565b50505050905090810190601f1680156122895780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b1580156122ab57600080fd5b505af11580156122bf573d6000803e3d6000fd5b50505050606085858560405160200180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015612338578181015183820152602001612320565b50505050905090810190601f1680156123655780820380516001836020036101000a031916815260200191505b5060408051808303601f19018152828252600780546009546611115413d4d25560ca1b865284519586900390920185206020808701828152878701968752855160608901528551959d506001600160a01b039384169c506316f198319b5092909316985096508a955093608001919085019080838360005b838110156123f55781810151838201526020016123dd565b50505050905090810190601f1680156124225780820380516001836020036101000a031916815260200191505b5093505050506040516020818303038152906040526040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561249b578181015183820152602001612483565b50505050905090810190601f1680156124c85780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b1580156124e857600080fd5b505af11580156124fc573d6000803e3d6000fd5b50505050505050505050565b60006001600160a01b03861661254f5760405162461bcd60e51b81526004018080602001828103825260258152602001806141296025913960400191505060405180910390fd5b600161256261255d87613594565b613620565b83868660405160008152602001604052604051808581526020018460ff1660ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa1580156125bc573d6000803e3d6000fd5b505050602060405103516001600160a01b0316866001600160a01b031614905095945050505050565b6000828201838110156118c8576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600082815260016020526040902061265d908263ffffffff61366c16565b156111725761266a610a58565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b60008281526001602052604090206126cc908263ffffffff61368116565b15611172576126d9610a58565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612725613e54565b600082511161277b576040805162461bcd60e51b815260206004820152601f60248201527f524c505265616465723a20494e56414c49445f42595445535f4c454e47544800604482015290519081900360640190fd5b506040805180820190915281518152602082810190820152919050565b60606127a382613696565b6127f4576040805162461bcd60e51b815260206004820152601860248201527f524c505265616465723a204954454d5f4e4f545f4c4953540000000000000000604482015290519081900360640190fd5b60006127ff836136c2565b905060608167ffffffffffffffff8111801561281a57600080fd5b5060405190808252806020026020018201604052801561285457816020015b612841613e54565b8152602001906001900390816128395790505b5090506000612866856020015161374e565b855190915081146128a85760405162461bcd60e51b81526004018080602001828103825260278152602001806142316027913960400191505060405180910390fd5b60006128b786602001516137e2565b60208701510190506000805b8581101561290e576128d48361374e565b91506040518060400160405280838152602001848152508582815181106128f757fe5b6020908102919091010152918101916001016128c3565b50929695505050505050565b600061292582613696565b15612977576040805162461bcd60e51b815260206004820181905260248201527f524c505265616465723a204445434f44494e475f4c4953545f41535f55494e54604482015290519081900360640190fd5b8151602110156129ce576040805162461bcd60e51b815260206004820152601e60248201527f524c505265616465723a20494e56414c49445f55494e545f4c454e4754480000604482015290519081900360640190fd5b60006129dd836020015161374e565b83519091508114612a1f5760405162461bcd60e51b81526004018080602001828103825260278152602001806142b56027913960400191505060405180910390fd5b6000612a2e84602001516137e2565b84516020808701518301805193945091849003929190831015612a5857826020036101000a820491505b5095945050505050565b60606000612a73836020015161374e565b83519091508114612ab55760405162461bcd60e51b81526004018080602001828103825260288152602001806140d16028913960400191505060405180910390fd5b6000612ac484602001516137e2565b845190915081900360608167ffffffffffffffff81118015612ae557600080fd5b506040519080825280601f01601f191660200182016040528015612b10576020820181803683370190505b5090506000816020019050612a58848860200151018285613845565b604080516020810190915260008152815160609190156118cb57600080612b54600086613890565b60f81c90506001811480612b6b57508060ff166003145b15612bfa57600185516002020367ffffffffffffffff81118015612b8e57600080fd5b506040519080825280601f01601f191660200182016040528015612bb9576020820181803683370190505b5092506000612bc9600187613890565b90508084600081518110612bd957fe5b60200101906001600160f81b031916908160001a9053506001925050612c4b565b600285516002020367ffffffffffffffff81118015612c1857600080fd5b506040519080825280601f01601f191660200182016040528015612c43576020820181803683370190505b509250600091505b60ff82165b8351811015612c9657612c6b8360ff16820360020187613890565b848281518110612c7757fe5b60200101906001600160f81b031916908160001a905350600101612c50565b50505092915050565b6000612caa82613696565b15612ce65760405162461bcd60e51b815260040180806020018281038252602381526020018061417a6023913960400191505060405180910390fd5b8151601514612d265760405162461bcd60e51b81526004018080602001828103825260218152602001806142dc6021913960400191505060405180910390fd5b6118cb8261291a565b6000612d39613e54565b612d428461271d565b90506060612d4f82612798565b905060608085600082612d618b612b2c565b9050805160001415612d7d576000975050505050505050612f6e565b60005b8651811015612f65578151831115612da357600098505050505050505050612f6e565b612dbf878281518110612db257fe5b60200260200101516130bf565b955085805190602001208414612de057600098505050505050505050612f6e565b612def8782815181106113a457fe5b9450845160111415612eac578151831415612e4b578c80519060200120612e1c8660108151811061126757fe5b805190602001201415612e3a57600198505050505050505050612f6e565b600098505050505050505050612f6e565b6000828481518110612e5957fe5b016020015160f81c90506010811115612e7e5760009950505050505050505050612f6e565b612e9d868260ff1681518110612e9057fe5b60200260200101516138ed565b94505060019290920191612f5d565b845160021415612e3a576000612ed2612ecb8760008151811061126757fe5b848661398c565b905082518185011415612f28578d80519060200120612ef78760018151811061126757fe5b805190602001201415612f165760019950505050505050505050612f6e565b60009950505050505050505050612f6e565b80612f3f5760009950505050505050505050612f6e565b8084019350612f5486600181518110612e9057fe5b9450612f5d9050565b600101612d80565b50505050505050505b949350505050565b600854604080516320a9cea560e11b81526004810185905290516000928392839283926001600160a01b0316916341539d4a9160248083019260a0929190829003018186803b158015612fc857600080fd5b505afa158015612fdc573d6000803e3d6000fd5b505050506040513d60a0811015612ff257600080fd5b5080516020820151606090920151909450909250905061306161301b8b8463ffffffff613a6b16565b6040805160208082018f90528183018e9052606082018d905260808083018d90528351808403909101815260a0909201909252805191012090858863ffffffff613aad16565b6130b2576040805162461bcd60e51b815260206004820181905260248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f484541444552604482015290519081900360640190fd5b9998505050505050505050565b606080826000015167ffffffffffffffff811180156130dd57600080fd5b506040519080825280601f01601f191660200182016040528015613108576020820181803683370190505b50905060008160200190506131268460200151828660000151613845565b5092915050565b6040518060800160405280604f815260200161403b604f913980516020918201208251838301206040805180820190915260018152603160f81b930192909252907fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc630613198611185565b604080516020808201979097528082019590955260608501939093526001600160a01b03909116608084015260a0808401919091528151808403909101815260c090920190528051910120600b5550565b60006118c88383613c03565b6000818152600260205260409020546001600160a01b03166132485760405162461bcd60e51b815260040180806020018281038252602a815260200180613f07602a913960400191505060405180910390fd5b6001600160a01b03808416600081815260036020908152604080832080549588166001600160a01b031996871681179091558084526004835281842080549096168517909555838352600590915280822085905551849392917f9e651a8866fbea043e911d816ec254b0e3c992c06fff32d605e72362d6023bd991a4604080516001600160a01b0380861660208084019190915281861683850152606083810186905284518085038201815260808086018088526007546009546826a0a82faa27a5a2a760b91b9092528851978890036089018820888701818152898b019a8b528551968a019690965284519499918816986316f1983198939093169690958a9590949293909201919085019080838360005b8381101561337357818101518382015260200161335b565b50505050905090810190601f1680156133a05780820380516001836020036101000a031916815260200191505b5093505050506040516020818303038152906040526040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015613419578181015183820152602001613401565b50505050905090810190601f1680156134465780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b15801561346657600080fd5b505af115801561347a573d6000803e3d6000fd5b5050505050505050565b60006118c8836001600160a01b038416613c67565b806040516020018082805190602001908083835b602083106134cc5780518252601f1990920191602091820191016134ad565b51815160209384036101000a60001901801990921691161790527f3a20494e53554646494349454e545f5045524d495353494f4e530000000000009190930190815260408051808303600519018152601a909201905280516111729550600a94509201919050613e6e565b60005460ff1615613580576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b611c478161312d565b60006118cb82613c7f565b6000604051806080016040528060438152602001613fd460439139805190602001208260000151836020015184604001518051906020012060405160200180858152602001848152602001836001600160a01b03166001600160a01b03168152602001828152602001945050505050604051602081830303815290604052805190602001209050919050565b600061362a6110d6565b82604051602001808061190160f01b81525060020183815260200182815260200192505050604051602081830303815290604052805190602001209050919050565b60006118c8836001600160a01b038416613c83565b60006118c8836001600160a01b038416613ccd565b6020810151805160009190821a9060c08210156136b8576000925050506110ef565b5060019392505050565b6000806000905060006136d884602001516137e2565b602085015185519181019250015b80821015613745576136f78261374e565b820191508082111561373a5760405162461bcd60e51b815260040180806020018281038252602c81526020018061414e602c913960400191505060405180910390fd5b6001909201916136e6565b50909392505050565b80516000908190811a60808110156137695760019150613126565b60b881101561377e57607e1981019150613126565b60c08110156137ab5760b78103600185019450806020036101000a85510460018201810193505050613126565b60f88110156137c05760be1981019150613126565b60019390930151602084900360f7016101000a900490920160f5190192915050565b8051600090811a60808110156137fc5760009150506110ef565b60b8811080613817575060c08110801590613817575060f881105b156138265760019150506110ef565b60c081101561383a5760b5190190506110ef565b60f5190190506110ef565b8061384f57610b64565b5b6020811061386f578251825260209283019290910190601f1901613850565b915181516020939093036101000a6000190180199091169216919091179052565b600060028306156138c15760108260028504815181106138ac57fe5b016020015160f81c816138bb57fe5b066138e3565b60108260028504815181106138d257fe5b016020015160f81c816138e157fe5b045b60f81b9392505050565b6000806138fd836020015161374e565b8351909150811461393f5760405162461bcd60e51b815260040180806020018281038252602e815260200180614258602e913960400191505060405180910390fd5b825160211461397f5760405162461bcd60e51b8152600401808060200182810382526025815260200180613f536025913960400191505060405180910390fd5b5050602001516001015190565b600080606061399a86612b2c565b90506060815167ffffffffffffffff811180156139b657600080fd5b506040519080825280601f01601f1916602001820160405280156139e1576020820181803683370190505b509050845b82518601811015613a3b5760008782815181106139ff57fe5b602001015160f81c60f81b9050808388840381518110613a1b57fe5b60200101906001600160f81b031916908160001a905350506001016139e6565b50808051906020012082805190602001201415613a5b5781519250613a60565b600092505b509095945050505050565b60006118c883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250613d93565b60006020825181613aba57fe5b0615613b04576040805162461bcd60e51b8152602060048201526014602482015273092dcecc2d8d2c840e0e4dedecc40d8cadccee8d60631b604482015290519081900360640190fd5b60006020835181613b1157fe5b0490508060020a8510613b63576040805162461bcd60e51b81526020600482015260156024820152744c65616620696e64657820697320746f6f2062696760581b604482015290519081900360640190fd5b60008660205b85518111613bf55785810151925060028806613bb55781836040516020018083815260200182815260200192505050604051602081830303815290604052805190602001209150613be7565b828260405160200180838152602001828152602001925050506040516020818303038152906040528051906020012091505b600288049750602001613b69565b509094149695505050505050565b81546000908210613c455760405162461bcd60e51b8152600401808060200182810382526022815260200180613f316022913960400191505060405180910390fd5b826000018281548110613c5457fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000613c8f8383613c67565b613cc5575081546001818101845560008481526020808220909301849055845484825282860190935260409020919091556118cb565b5060006118cb565b60008181526001830160205260408120548015613d895783546000198083019190810190600090879083908110613d0057fe5b9060005260206000200154905080876000018481548110613d1d57fe5b600091825260208083209091019290925582815260018981019092526040902090840190558654879080613d4d57fe5b600190038181906000526020600020016000905590558660010160008781526020019081526020016000206000905560019450505050506118cb565b60009150506118cb565b60008184841115613e225760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015613de7578181015183820152602001613dcf565b50505050905090810190601f168015613e145780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60405180606001604052806000815260200160006001600160a01b03168152602001606081525090565b604051806040016040528060008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10613eaf57805160ff1916838001178555613edc565b82800160010185558215613edc579182015b82811115613edc578251825591602001919060010190613ec1565b50613ee8929150613eec565b5090565b610a6591905b80821115613ee85760008155600101613ef256fe526f6f74436861696e4d616e616765723a20544f4b454e5f545950455f4e4f545f535550504f52544544456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473524c505265616465723a20494e56414c49445f55494e545f5354524943545f4c454e475448416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e74526f6f74436861696e4d616e616765723a20494e56414c49445f4348494c445f434841494e5f414444524553534d6574615472616e73616374696f6e2875696e74323536206e6f6e63652c616464726573732066726f6d2c62797465732066756e6374696f6e5369676e617475726529526f6f74436861696e4d616e616765723a20494e56414c49445f544f4b454e5f54595045454950373132446f6d61696e28737472696e67206e616d652c737472696e672076657273696f6e2c6164647265737320766572696679696e67436f6e74726163742c627974657333322073616c7429526f6f74436861696e4d616e616765723a20494e56414c49445f4252414e43485f4d41534b526f6f74436861696e4d616e616765723a20544f4b454e5f4e4f545f4d4150504544524c505265616465723a2042595445535f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b654e61746976654d6574615472616e73616374696f6e3a20494e56414c49445f5349474e4552524c505265616465723a204e554d5f4954454d535f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a204445434f44494e475f4c4953545f41535f41444452455353526f6f74436861696e4d616e616765723a2045544845525f5452414e534645525f4641494c45445369676e657220616e64207369676e617475726520646f206e6f74206d61746368526f6f74436861696e4d616e616765723a20494e56414c49445f524f4f545f544f4b454e526f6f74436861696e4d616e616765723a20455849545f414c52454144595f50524f434553534544524c505265616465723a204c4953545f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a2055494e545f5354524943545f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66524c505265616465723a2055494e545f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a20494e56414c49445f414444524553535f4c454e475448a164736f6c6343000606000a","storage":{"0x0":"0x1","0x7":"0xe0afc4e9e03e4aa67257df7a2eca77454309789d","0x8":"0xbe5deac45dd1ca4ee18dc2d585d84d3d3cb82b0d","0x9":"0x0","0xa":"0x55","0xb":"0x2603903cfd8895fdde3da4d607d44203e86098073e351022fd12745d3436e93a","0xeb5be412f275a18f6e4d622aee4ff40b21467c926224771b782d4c095d1444b":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x162b27a30e878e20728deaa5c9814fd57ccf962b998b8733ce65749bc61c552f":"0x58a175bebc8ec21a94ea63aa5a28743945940ee6","0x1a93463c7bbb7215968307c7cd357c2009c10df2a511dd62c1189098e4f3249b":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x415fec6a4fd7706b96d3a0a30121284bc5e2b28b978c20486c9f5e20d44fc781":"0x1","0x4dc1f0160d96279adc262db20edcc15527e32cb28eda582becc5ac0bc453be34":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x5fc73aa2ab567caef8745f0709fae506c01972ffb297bd9225bc262d6e87746f":"0x1","0x6ce1cd05966f090b8daa7b2ee7f80930bbb39d19b693045725fbae5fa44fda90":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0xa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb49":"0x1","0xc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a8":"0x526f6f74436861696e4d616e616765723a20494e53554646494349454e545f50","0xc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a9":"0x45524d495353494f4e5300000000000000000000000000000000000000000000","0xd61ba0007bb57e62613f82f528c06ba46d36349cf5be567b12f878ef04849a7d":"0x1","0xf960df71fab73e593428c10f56f55e7ea46985963177def0458b97f1afec9576":"0xcf4e755f204163e9213ba8b1305036e386579ccc70731c25c62a101197811f48"}},"0x287dee389caaa49edc112888f2bcfd927b472e25":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c80634f89059e1461002d575b5f80fd5b61004061003b366004610125565b610054565b604051901515815260200160405180910390f35b5f806100985f85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101029050565b60ff1690505f811180156100f857506100f36100b5826001610191565b85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101029050565b60ff16155b9150505b92915050565b5f828281518110610115576101156101b0565b016020015160f81c905092915050565b5f8060208385031215610136575f80fd5b823567ffffffffffffffff8082111561014d575f80fd5b818501915085601f830112610160575f80fd5b81358181111561016e575f80fd5b86602082850101111561017f575f80fd5b60209290920196919550909350505050565b808201808211156100fc57634e487b7160e01b5f52601160045260245ffd5b634e487b7160e01b5f52603260045260245ffdfea164736f6c6343000818000a","storage":{}},"0x3198fc981626687f4b5bdf0fbeabb0a5e0489c03":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061007b5760003560e01c80639623609d1161004e5780639623609d1461011157806399a88ec414610124578063f2fde38b14610144578063f3b7dead1461016457600080fd5b8063204e1c7a14610080578063715018a6146100bc5780637eff275e146100d35780638da5cb5b146100f3575b600080fd5b34801561008c57600080fd5b506100a061009b366004610499565b610184565b6040516001600160a01b03909116815260200160405180910390f35b3480156100c857600080fd5b506100d1610215565b005b3480156100df57600080fd5b506100d16100ee3660046104bd565b610229565b3480156100ff57600080fd5b506000546001600160a01b03166100a0565b6100d161011f36600461050c565b610291565b34801561013057600080fd5b506100d161013f3660046104bd565b610300565b34801561015057600080fd5b506100d161015f366004610499565b610336565b34801561017057600080fd5b506100a061017f366004610499565b6103b4565b6000806000836001600160a01b03166040516101aa90635c60da1b60e01b815260040190565b600060405180830381855afa9150503d80600081146101e5576040519150601f19603f3d011682016040523d82523d6000602084013e6101ea565b606091505b5091509150816101f957600080fd5b8080602001905181019061020d91906105e2565b949350505050565b61021d6103da565b6102276000610434565b565b6102316103da565b6040516308f2839760e41b81526001600160a01b038281166004830152831690638f283970906024015b600060405180830381600087803b15801561027557600080fd5b505af1158015610289573d6000803e3d6000fd5b505050505050565b6102996103da565b60405163278f794360e11b81526001600160a01b03841690634f1ef2869034906102c990869086906004016105ff565b6000604051808303818588803b1580156102e257600080fd5b505af11580156102f6573d6000803e3d6000fd5b5050505050505050565b6103086103da565b604051631b2ce7f360e11b81526001600160a01b038281166004830152831690633659cfe69060240161025b565b61033e6103da565b6001600160a01b0381166103a85760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b6103b181610434565b50565b6000806000836001600160a01b03166040516101aa906303e1469160e61b815260040190565b6000546001600160a01b031633146102275760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161039f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146103b157600080fd5b6000602082840312156104ab57600080fd5b81356104b681610484565b9392505050565b600080604083850312156104d057600080fd5b82356104db81610484565b915060208301356104eb81610484565b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561052157600080fd5b833561052c81610484565b9250602084013561053c81610484565b9150604084013567ffffffffffffffff8082111561055957600080fd5b818601915086601f83011261056d57600080fd5b81358181111561057f5761057f6104f6565b604051601f8201601f19908116603f011681019083821181831017156105a7576105a76104f6565b816040528281528960208487010111156105c057600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000602082840312156105f457600080fd5b81516104b681610484565b60018060a01b038316815260006020604081840152835180604085015260005b8181101561063b5785810183015185820160600152820161061f565b8181111561064d576000606083870101525b50601f01601f19169290920160600194935050505056fea26469706673582212207ad53e1008cce369999f6b5f2f77109510b404ff1de9b47b639981fd68e6239264736f6c63430008090033","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x39a27956b78d00a4e00ea8833ff0947410a2933f":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xc9":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0xca":"0x4a3c194eb88966178bfdd81744dddafed611b830","0xcb":"0x4872cc1be60a9db9c880a0a437da7a6af134f08f","0xcc":"0xf8c26340c1eaea6c7ff1760b25005e1306953572","0xce":"0xce4bb7dc1eb9dce75743de6a4b48534fd427ef51","0xc6892776bb3da1e1199a03e0d3131aea089754b59c557b750c478ebc85ccaa":"0x6e66740000000000000000000000000000000000000000000000000000000006","0x6cb37a6d512a1e227e627eddc133023e6d00bfedff31a600abb75aa93e9a4a0":"0x6b7265737573000000000000000000000000000000000000000000000000000c","0x8e966fe8b9b43d48017ba1eb562ced91049de778396aaa438773698b3fa8fb6":"0x0","0x94a32b1c7b189ce7293f7ae444cdcab6800d858454022d15355d5ecc5b32b26":"0x0","0xa4b2d73a9f36ca5eed107f7c3d2ba877fb7537d447256726bcde9bac9e9aaee":"0x0","0xe0e3ab102c26f13da20123aa517b31e99cf65b7b720ba0dd7138012fd23eff2":"0x0","0x1203b5e51c7d5be6da42b83f22878d3583e53123857d27fc3cff3df46fb9126c":"0x0","0x13477730039a04f4290adf0e48e98b233579c040281545e4446ce662ba56a9be":"0x7800000000000000000000000000000000000000000000000000000000000002","0x1e06d49ce7b00846691778f302e94a3ac9c2633d745ebe73d68353c941e68dee":"0x626974636f696e0000000000000000000000000000000000000000000000000e","0x1e99199375610ffe00d28ee5827c616cf6469be3de2a2f738d955eb6b62127e8":"0x1","0x21e80eded1b2e1c5d976c85e89dde60bd4e99a8d66346af0e359ac854bceba44":"0x0","0x254d9ade81439f29723741d6ff407eab1fe03caffb042bd85e53955e41fb9792":"0x616c74696d697374000000000000000000000000000000000000000000000010","0x269db12b2cd2aeb7d5f52eda16edb1d211ccbea12da1ebfa60ed5f8f396c1d04":"0x0","0x2a3f03435eedee01de7e1c4386b04ca8469edd8df00408cd6d2b058bce1cecfa":"0x0","0x323a3cb169499006d6635c58232c8c58e23c20bf9e1d309d6b3bc6fb2c7a093d":"0x0","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x229c56b7805ab5935a883207f6a6bd5847e65aee","0x37aac864d4715a975bd45cae6be99de9f7968cf995917cc7f8192940fb62acbf":"0x0","0x3f69f26894a7ae0f7a7aa6c2d77935589dabbff6435aee960da15064dea7cd59":"0x64616f0000000000000000000000000000000000000000000000000000000006","0x467a68fda3230ce33f64703ebdbd91caccf235403282ae9fe390675ef39e9c94":"0x0","0x50ae8c017c4c1fddbe9509bd2b916f5dd9da11ddb639f2a4230322f49a41ac87":"0x1","0x5496787fc1ebdfeba375028c1865f13fbb1d63c0caa356ccc1b29a80f3ebd622":"0x0","0x576dd8d1a7b74aba0a99a213f50d74aa642a2c80bd5a854b24aac7568afea0f7":"0x626974676574000000000000000000000000000000000000000000000000000c","0x5b54338c052ce22ec334b6c5a19c4b122701c5fd4d3a2a5f5890f57050e0aafa":"0x626c6f636b636861696e00000000000000000000000000000000000000000014","0x5d9de30f0e5e02628e726fd23e310ee9e64489866fa6959825148a25d40e4c83":"0x0","0x5e2d99ab4a1a153039a4b2e068d64802da8735071a2d018ee9d04297945bed00":"0x0","0x670006c4193123492fb25db465ed52e62aff2f076289f4f1a5f167237f5e579d":"0x6d616e676100000000000000000000000000000000000000000000000000000a","0x6deac161c541001c0d79afaf7b809418785fa5ca6533d86bcf312e7213ee08fc":"0x0","0x6eaa0db35203bc0d58aff54ca630dd125b27758aa6204f7a11c0617f7c2fa776":"0x706f670000000000000000000000000000000000000000000000000000000006","0x732abe4661f55132b7f119cab9a9985be6630299dfc92870cc910f147795bc44":"0x0","0x743eb517f46c12bb593097087a972028308ce2e819a76cfb5488751f9d1ca34a":"0x7265616c6d00000000000000000000000000000000000000000000000000000a","0x750dfb39c9afc828c341e1a8e8fdca0b3914baf43303e1ef21fbfe8ec8ee016a":"0x0","0x7cbf647b96a1d1a533ea4bc3a4a8a78f166bd91e6a96afb12f063fef0e9cb960":"0x0","0x7dc972254779cfb51850c0eaccfcb71207822b3c10d4840567bec3dfbf0dff13":"0x636f6d0000000000000000000000000000000000000000000000000000000006","0x7dfa160584f41570c33e8e6c42c5314a7b45ddc162f99fd101ccc10c7b5b3dd3":"0x77616c6c6574000000000000000000000000000000000000000000000000000c","0x868a5f38a2d46181ffad442d7bc5b337b3c349a58e4979f2901786c6123b996c":"0x6b6c65766572000000000000000000000000000000000000000000000000000c","0x87b2c647061aef22ef1aba96c67f440d471dfac27e9873ff4a03793b402d32ee":"0x706f6c79676f6e0000000000000000000000000000000000000000000000000e","0x893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e":"0x7c3c91245769c8b7450ad522792dec4bd4bf797f","0x91e744007b4b3621bec7c01ea851c3f48cf196b9cc6c566a48cec8c5faac6e62":"0x0","0x92c5a28dd4caaa50e0a8370243a5c600f64349e8b03604b403cbe111b50f1f7b":"0x3838380000000000000000000000000000000000000000000000000000000006","0x947936973a3a21b10c8980e1a8939a55c7339d302161884a3de05cf090e812f0":"0x1","0x9535d3ea47c5e1398d3405b4fadc73de6b1b1e6a66f674a8886ab7a6c873a390":"0x63727970746f000000000000000000000000000000000000000000000000000c","0x9956a4e94676c45844be3667f17e077c7cb53aa4e87e5a71d65e56b291232715":"0x676f000000000000000000000000000000000000000000000000000000000004","0x9c6ba1ddff1ffbc14dcdc1f97db867554a42a39e00e892c7e882dbb3dca89ebf":"0x6869000000000000000000000000000000000000000000000000000000000004","0x9f836a0f81651f597cee678b440ba8c853c633e6654809efb83d4b22aff06fb2":"0x616e696d6500000000000000000000000000000000000000000000000000000a","0x9fecf1e12f4b8ec337da992721a0f27526ddbd6be1e77885ab963c09afcf0fc1":"0x0","0xab129a0f8c6cf8d160116a28abc7369c2f8a098fc023f00f07dc3e1d5798e47a":"0x0","0xb04c0eb6f034d9a3179a4e6f953bdf8afc78ba2cdcfbc775076e1c2a0bb67818":"0x0","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xbe51b53bc2060a7a6419622b5a9adc00b50a57e6aa741882f2f60f95d4580078":"0x636c617900000000000000000000000000000000000000000000000000000008","0xbf350522e335b8ab3da1d099c93cdc09179f1e15ea6aa1acfaa4afb1ef87eabf":"0x756e73746f707061626c65000000000000000000000000000000000000000016","0xcbf7a3d53e0851ac15a415b99c2ba95a2497dd9dd44068ac261bcbdafdfe8472":"0x707564677900000000000000000000000000000000000000000000000000000a","0xcf4411216f3fdf787d1cfe037bbcfa0d5293d83a8082f8e4141266399e2a784b":"0x61757374696e000000000000000000000000000000000000000000000000000c","0xcfdbac664139565f92cce149a345e5f19355d25b3eb8a70c549d5da3283a15b8":"0x7a696c0000000000000000000000000000000000000000000000000000000006","0xcfeb64c30a93ecd7224f854b09be57bb6b3962e739fa8e3ea3a1851502474c07":"0x1","0xe03c9c593ce8661bd39f77653f7ca6c43f093aa7f3b95890f309f67b57f39e74":"0x0","0xe50c62c16d12655dfdbd61c232155e5c3a1cf61977d2d8e7449cb88611b73832":"0x0","0xeeb0b17d77f2c9069ad443f3927c0802d98d5553e52b17c985d45d4a10b79566":"0x62696e616e636575730000000000000000000000000000000000000000000012","0xf562ef0db022f25a957fb6e49aa07004f14a50ed5b23279e9ac25b4632f7bf1c":"0x0","0xf6776268d6c5847a771099280c742d684a4b22bac609ba615de51f7f893ff2bc":"0x0"}},"0x3f1194b9019002863ad0dbbe295294547c0d36a9":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100b1575f3560e01c80635b0fc9c31161006e5780635b0fc9c3146101a55780635ef2c7f0146101b8578063a22cb465146101cb578063cf408823146101de578063e985e9c5146101f1578063f79fe5381461023c575f80fd5b80630178b8bf146100b557806302571be3146100fd57806306ab59231461011057806314ab90381461013157806316a25cbd146101465780631896f70a14610192575b5f80fd5b6100e06100c3366004610785565b5f908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100e061010b366004610785565b610266565b61012361011e3660046107b7565b610292565b6040519081526020016100f4565b61014461013f366004610800565b61035f565b005b610179610154366004610785565b5f90815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100f4565b6101446101a036600461082a565b61042e565b6101446101b336600461082a565b6104ef565b6101446101c636600461084b565b61058e565b6101446101d936600461089e565b6105af565b6101446101ec3660046108d7565b61061a565b61022c6101ff366004610921565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205460ff1690565b60405190151581526020016100f4565b61022c61024a366004610785565b5f908152602081905260409020546001600160a01b0316151590565b5f818152602081905260408120546001600160a01b031630810361028c57505f92915050565b92915050565b5f8381526020819052604081205484906001600160a01b0316338114806102db57506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b6102e3575f80fd5b604080516020808201899052818301889052825180830384018152606090920190925280519101206103158186610635565b6040516001600160a01b0386168152869088907fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829060200160405180910390a39695505050505050565b5f8281526020819052604090205482906001600160a01b0316338114806103a857506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b6103b0575f80fd5b60405167ffffffffffffffff8416815284907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a250505f91825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b5f8281526020819052604090205482906001600160a01b03163381148061047757506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b61047f575f80fd5b6040516001600160a01b038416815284907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a250505f9182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b5f8281526020819052604090205482906001600160a01b03163381148061053857506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b610540575f80fd5b61054a8484610635565b6040516001600160a01b038416815284907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a250505050565b5f61059a868686610292565b90506105a7818484610662565b505050505050565b335f8181526001602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b61062484846104ef565b61062f848383610662565b50505050565b5f9182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b5f838152602081905260409020600101546001600160a01b038381169116146106e6575f838152602081815260409182902060010180546001600160a01b0319166001600160a01b038616908117909155915191825284917f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a0910160405180910390a25b5f8381526020819052604090206001015467ffffffffffffffff828116600160a01b9092041614610780575f8381526020818152604091829020600101805467ffffffffffffffff60a01b1916600160a01b67ffffffffffffffff861690810291909117909155915191825284917f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa68910160405180910390a25b505050565b5f60208284031215610795575f80fd5b5035919050565b80356001600160a01b03811681146107b2575f80fd5b919050565b5f805f606084860312156107c9575f80fd5b83359250602084013591506107e06040850161079c565b90509250925092565b803567ffffffffffffffff811681146107b2575f80fd5b5f8060408385031215610811575f80fd5b82359150610821602084016107e9565b90509250929050565b5f806040838503121561083b575f80fd5b823591506108216020840161079c565b5f805f805f60a0868803121561085f575f80fd5b85359450602086013593506108766040870161079c565b92506108846060870161079c565b9150610892608087016107e9565b90509295509295909350565b5f80604083850312156108af575f80fd5b6108b88361079c565b9150602083013580151581146108cc575f80fd5b809150509250929050565b5f805f80608085870312156108ea575f80fd5b843593506108fa6020860161079c565b92506109086040860161079c565b9150610916606086016107e9565b905092959194509250565b5f8060408385031215610932575f80fd5b61093b8361079c565b91506108216020840161079c56fea164736f6c6343000818000a","storage":{"0xdd4f47a3b6f87903b728feed7a23273bd8de58e4fa257d37a74a5881e5d92ff":"0xf670681605efc4efc804f5a9b97ee89520473d56","0x14ce109f1cffdc11aa7355660be720f902291be09fb159b4c578958cd0f533bc":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x14ce109f1cffdc11aa7355660be720f902291be09fb159b4c578958cd0f533bd":"0x0","0x1e2c8528d7e8e90443ad0a4e37b6f2b1daed719a574ce3a0c347063e8d839d50":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1e2c8528d7e8e90443ad0a4e37b6f2b1daed719a574ce3a0c347063e8d839d51":"0x0","0x2fb4213711fd985fc1fb1ea2bfa660b0b37fd50c6c74ab531d9b54b29dd5177e":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2fb4213711fd985fc1fb1ea2bfa660b0b37fd50c6c74ab531d9b54b29dd5177f":"0x0","0x859ecef2e168dc10231b000bd53493b42bc9d944cac29d94582c1e1d43592131":"0xc965345edac823d56812cd20a10316233916a605","0x8878c6daefcfc78c7f181d00d719b4a0612dd3e65cafeb72507d15c036a9f690":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0xe4fdf45c2f8d198854f8823809c7a988eeaaa493","0xfb5568c6845cf0d5915af088a5d8ba90a5ff735e102c9a79609ef7d043f1108c":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xfb5568c6845cf0d5915af088a5d8ba90a5ff735e102c9a79609ef7d043f1108d":"0x0"}},"0x4872cc1be60a9db9c880a0a437da7a6af134f08f":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100935760003560e01c80637362d9c8116100665780637362d9c8146101285780637b1039991461014e57806399e0dd7c14610172578063bb5f747b146101e2578063d6cd94731461020857610093565b806310154bad14610098578063291d9549146100c05780633af32abf146100e65780634c5a628c14610120575b600080fd5b6100be600480360360208110156100ae57600080fd5b50356001600160a01b0316610210565b005b6100be600480360360208110156100d657600080fd5b50356001600160a01b0316610260565b61010c600480360360208110156100fc57600080fd5b50356001600160a01b03166102ad565b604080519115158252519081900360200190f35b6100be6102c6565b6100be6004803603602081101561013e57600080fd5b50356001600160a01b03166102d1565b61015661031e565b604080516001600160a01b039092168252519081900360200190f35b6100be6004803603602081101561018857600080fd5b8101906020810181356401000000008111156101a357600080fd5b8201836020820111156101b557600080fd5b803590602001918460018302840111640100000000831117156101d757600080fd5b50909250905061032d565b61010c600480360360208110156101f857600080fd5b50356001600160a01b0316610404565b6100be610416565b61021933610404565b6102545760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d8161041f565b50565b61026933610404565b6102a45760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d81610467565b60006102c060018363ffffffff6104af16565b92915050565b6102cf33610516565b565b6102da33610404565b6103155760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d8161055e565b6002546001600160a01b031690565b610336336102ad565b6103715760405162461bcd60e51b815260040180806020018281038252603a815260200180610712603a913960400191505060405180910390fd5b6002546040516369426cbd60e11b8152602060048201908152602482018490526001600160a01b039092169163d284d97a91859185918190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b1580156103e857600080fd5b505af11580156103fc573d6000803e3d6000fd5b505050505050565b60006102c0818363ffffffff6104af16565b6102cf33610467565b61043060018263ffffffff6105a616565b6040516001600160a01b038216907fee1504a83b6d4a361f4c1dc78ab59bfa30d6a3b6612c403e86bb01ef2984295f90600090a250565b61047860018263ffffffff61062716565b6040516001600160a01b038216907f270d9b30cf5b0793bbfd54c9d5b94aeb49462b8148399000265144a8722da6b690600090a250565b60006001600160a01b0382166104f65760405162461bcd60e51b81526004018080602001828103825260228152602001806106b06022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b61052760008263ffffffff61062716565b6040516001600160a01b038216907f0a8eb35e5ca14b3d6f28e4abf2f128dbab231a58b56e89beb5d636115001e16590600090a250565b61056f60008263ffffffff6105a616565b6040516001600160a01b038216907f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129990600090a250565b6105b082826104af565b15610602576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b61063182826104af565b61066c5760405162461bcd60e51b815260040180806020018281038252602181526020018061068f6021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f206164647265737357686974656c69737441646d696e526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c69737441646d696e20726f6c6557686974656c6973746564526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c697374656420726f6c65a265627a7a72315820debca60946c0819dc5b5c2756c5c1dd8dd8a46f2429fa8a43a4f4362af3030c164736f6c634300050c0032","storage":{"0x2":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x5ac40fcee41fb0272a935f6e51e963102fba5db6f20e897e9361f0347eb2cae6":"0x1","0xdc4aeb95a779c8b92b845e3a94044db8ff2e43acc37da18c4b35a6bbad7c122f":"0x1"}},"0x49da8861c65460639925febe1fb4b5b59b443082":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f7e83aee1461002d575b5f80fd5b61004061003b3660046101ac565b610054565b604051901515815260200160405180910390f35b5f602082146100a95760405162461bcd60e51b815260206004820152601a60248201527f496e76616c6964207368613235362068617368206c656e677468000000000000604482015260640160405180910390fd5b6100eb5f84848080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101459050565b600286866040516100fd929190610213565b602060405180830381855afa158015610118573d5f803e3d5ffd5b5050506040513d601f19601f8201168201806040525081019061013b9190610222565b1495945050505050565b81515f90610154836020610239565b111561015e575f80fd5b50016020015190565b5f8083601f840112610177575f80fd5b50813567ffffffffffffffff81111561018e575f80fd5b6020830191508360208285010111156101a5575f80fd5b9250929050565b5f805f80604085870312156101bf575f80fd5b843567ffffffffffffffff808211156101d6575f80fd5b6101e288838901610167565b909650945060208701359150808211156101fa575f80fd5b5061020787828801610167565b95989497509550505050565b818382375f9101908152919050565b5f60208284031215610232575f80fd5b5051919050565b8082018082111561025857634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x4a3c194eb88966178bfdd81744dddafed611b830":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061009e5760003560e01c806398650275116100665780639865027514610305578063aa271e1a1461030d578063b2da297914610347578063be362e2e146103c5578063c36c2125146104fe5761009e565b80634c0b0ed2146100a35780637b103999146101595780637caf3ad81461017d5780638ad364f814610258578063983b2d56146102df575b600080fd5b610157600480360360408110156100b957600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156100e357600080fd5b8201836020820111156100f557600080fd5b803590602001918460018302840111600160201b8311171561011657600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506105bd945050505050565b005b61016161074c565b604080516001600160a01b039092168252519081900360200190f35b6101576004803603608081101561019357600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156101bd57600080fd5b8201836020820111156101cf57600080fd5b803590602001918460018302840111600160201b831117156101f057600080fd5b919390926001600160a01b0383351692604081019060200135600160201b81111561021a57600080fd5b82018360208201111561022c57600080fd5b803590602001918460018302840111600160201b8311171561024d57600080fd5b50909250905061075b565b6101576004803603606081101561026e57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561029857600080fd5b8201836020820111156102aa57600080fd5b803590602001918460018302840111600160201b831117156102cb57600080fd5b9193509150356001600160a01b0316610957565b610157600480360360208110156102f557600080fd5b50356001600160a01b0316610b2b565b610157610b7b565b6103336004803603602081101561032357600080fd5b50356001600160a01b0316610b86565b604080519115158252519081900360200190f35b6101576004803603604081101561035d57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561038757600080fd5b82018360208201111561039957600080fd5b803590602001918460018302840111600160201b831117156103ba57600080fd5b509092509050610b9e565b610157600480360360608110156103db57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561040557600080fd5b82018360208201111561041757600080fd5b803590602001918460018302840111600160201b8311171561043857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b81111561048a57600080fd5b82018360208201111561049c57600080fd5b803590602001918460018302840111600160201b831117156104bd57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610bf1945050505050565b6101576004803603606081101561051457600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561053e57600080fd5b82018360208201111561055057600080fd5b803590602001918460018302840111600160201b8311171561057157600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550505090356001600160a01b03169150610dec9050565b6105c633610b86565b6106015760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b039092169163b5466669918591849163ebf0c717916004808301926020929190829003018186803b15801561064f57600080fd5b505afa158015610663573d6000803e3d6000fd5b505050506040513d602081101561067957600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052606060448301908152875160648401528751889360840190602085019080838360005b838110156106e25781810151838201526020016106ca565b50505050905090810190601f16801561070f5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15801561073057600080fd5b505af1158015610744573d6000803e3d6000fd5b505050505050565b6001546001600160a01b031690565b6107cf8686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f89018190048102820181019092528781529250879150869081908401838280828437600092019190915250610bf192505050565b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691632525d06a91869184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b15801561082557600080fd5b505afa158015610839573d6000803e3d6000fd5b505050506040513d602081101561084f57600080fd5b5051604080516001600160e01b031960e085901b1681526004810183815260248201928352604482018d90528d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b1580156108bd57600080fd5b505afa1580156108d1573d6000803e3d6000fd5b505050506040513d60208110156108e757600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b15801561093757600080fd5b505af115801561094b573d6000803e3d6000fd5b50505050505050505050565b6109a58484848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250610bf1915050565b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691632525d06a91849184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b1580156109fb57600080fd5b505afa158015610a0f573d6000803e3d6000fd5b505050506040513d6020811015610a2557600080fd5b5051604080516001600160e01b031960e085901b1681526004810183815260248201928352604482018b90528b928b92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b158015610a9357600080fd5b505afa158015610aa7573d6000803e3d6000fd5b505050506040513d6020811015610abd57600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b158015610b0d57600080fd5b505af1158015610b21573d6000803e3d6000fd5b5050505050505050565b610b3433610b86565b610b6f5760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b610b7881611115565b50565b610b843361115d565b565b6000610b98818363ffffffff6111a516565b92915050565b610bec8383838080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250610bf1915050565b505050565b610bfa33610b86565b610c355760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691630467e014918691849163ebf0c717916004808301926020929190829003018186803b158015610c8357600080fd5b505afa158015610c97573d6000803e3d6000fd5b505050506040513d6020811015610cad57600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052608060448301908152885160848401528851899389939291606482019160a40190602087019080838360005b83811015610d1f578181015183820152602001610d07565b50505050905090810190601f168015610d4c5780820380516001836020036101000a031916815260200191505b50838103825284518152845160209182019186019080838360005b83811015610d7f578181015183820152602001610d67565b50505050905090810190601f168015610dac5780820380516001836020036101000a031916815260200191505b509650505050505050600060405180830381600087803b158015610dcf57600080fd5b505af1158015610de3573d6000803e3d6000fd5b50505050505050565b610df533610b86565b610e305760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b039092169163b5466669918691849163ebf0c717916004808301926020929190829003018186803b158015610e7e57600080fd5b505afa158015610e92573d6000803e3d6000fd5b505050506040513d6020811015610ea857600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052606060448301908152885160648401528851899360840190602085019080838360005b83811015610f11578181015183820152602001610ef9565b50505050905090810190601f168015610f3e5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015610f5f57600080fd5b505af1158015610f73573d6000803e3d6000fd5b50506001546040805163ebf0c71760e01b815290516001600160a01b039092169350632525d06a9250849184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b158015610fcd57600080fd5b505afa158015610fe1573d6000803e3d6000fd5b505050506040513d6020811015610ff757600080fd5b5051604080516001600160e01b031960e085901b16815260048101838152602482019283528a5160448301528a518b93919260640190602085019080838360005b83811015611050578181015183820152602001611038565b50505050905090810190601f16801561107d5780820380516001836020036101000a031916815260200191505b50935050505060206040518083038186803b15801561109b57600080fd5b505afa1580156110af573d6000803e3d6000fd5b505050506040513d60208110156110c557600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b158015610dcf57600080fd5b61112660008263ffffffff61120c16565b6040516001600160a01b038216907f6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f690600090a250565b61116e60008263ffffffff61128d16565b6040516001600160a01b038216907fe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb6669290600090a250565b60006001600160a01b0382166111ec5760405162461bcd60e51b81526004018080602001828103825260228152602001806113466022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b61121682826111a5565b15611268576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b61129782826111a5565b6112d25760405162461bcd60e51b81526004018080602001828103825260218152602001806113256021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe4d696e746572526f6c653a2063616c6c657220646f6573206e6f74206861766520746865204d696e74657220726f6c65526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f2061646472657373a265627a7a72315820c058d70355f7d37ff6b3b61cd850cc4a41893e30048389698c062148bf3d2ff464736f6c634300050c0032","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x789b49055833748af4eaa9affbcd84118ce8770f7e4385b5a3f428626b1f0aff":"0x1","0xdc4aeb95a779c8b92b845e3a94044db8ff2e43acc37da18c4b35a6bbad7c122f":"0x1"}},"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061007b5760003560e01c80639623609d1161004e5780639623609d1461011157806399a88ec414610124578063f2fde38b14610144578063f3b7dead1461016457600080fd5b8063204e1c7a14610080578063715018a6146100bc5780637eff275e146100d35780638da5cb5b146100f3575b600080fd5b34801561008c57600080fd5b506100a061009b366004610499565b610184565b6040516001600160a01b03909116815260200160405180910390f35b3480156100c857600080fd5b506100d1610215565b005b3480156100df57600080fd5b506100d16100ee3660046104bd565b610229565b3480156100ff57600080fd5b506000546001600160a01b03166100a0565b6100d161011f36600461050c565b610291565b34801561013057600080fd5b506100d161013f3660046104bd565b610300565b34801561015057600080fd5b506100d161015f366004610499565b610336565b34801561017057600080fd5b506100a061017f366004610499565b6103b4565b6000806000836001600160a01b03166040516101aa90635c60da1b60e01b815260040190565b600060405180830381855afa9150503d80600081146101e5576040519150601f19603f3d011682016040523d82523d6000602084013e6101ea565b606091505b5091509150816101f957600080fd5b8080602001905181019061020d91906105e2565b949350505050565b61021d6103da565b6102276000610434565b565b6102316103da565b6040516308f2839760e41b81526001600160a01b038281166004830152831690638f283970906024015b600060405180830381600087803b15801561027557600080fd5b505af1158015610289573d6000803e3d6000fd5b505050505050565b6102996103da565b60405163278f794360e11b81526001600160a01b03841690634f1ef2869034906102c990869086906004016105ff565b6000604051808303818588803b1580156102e257600080fd5b505af11580156102f6573d6000803e3d6000fd5b5050505050505050565b6103086103da565b604051631b2ce7f360e11b81526001600160a01b038281166004830152831690633659cfe69060240161025b565b61033e6103da565b6001600160a01b0381166103a85760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b6103b181610434565b50565b6000806000836001600160a01b03166040516101aa906303e1469160e61b815260040190565b6000546001600160a01b031633146102275760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161039f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146103b157600080fd5b6000602082840312156104ab57600080fd5b81356104b681610484565b9392505050565b600080604083850312156104d057600080fd5b82356104db81610484565b915060208301356104eb81610484565b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561052157600080fd5b833561052c81610484565b9250602084013561053c81610484565b9150604084013567ffffffffffffffff8082111561055957600080fd5b818601915086601f83011261056d57600080fd5b81358181111561057f5761057f6104f6565b604051601f8201601f19908116603f011681019083821181831017156105a7576105a76104f6565b816040528281528960208487010111156105c057600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000602082840312156105f457600080fd5b81516104b681610484565b60018060a01b038316815260006020604081840152835180604085015260005b8181101561063b5785810183015185820160600152820161061f565b8181111561064d576000606083870101525b50601f01601f19169290920160600194935050505056fea26469706673582212207ad53e1008cce369999f6b5f2f77109510b404ff1de9b47b639981fd68e6239264736f6c63430008090033","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x4eb9de1fc0d800e941f326d6699e9e11969557ea":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063100cdd911461002d575b5f80fd5b61004061003b3660046102cd565b610042565b005b5f5b818110156101b8575f7f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e28484848181106100805761008061033c565b905060200201356040516020016100a1929190918252602082015260400190565b60408051808303601f190181529082905280516020909101206331a9108f60e11b82526004820181905291507f000000000000000000000000107733fed96c4cd390c944a31f5425a7fb98ae5e6001600160a01b0316906323b872dd908290636352211e90602401602060405180830381865afa158015610124573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101489190610350565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015261dead6024820152604481018490526064015f604051808303815f87803b158015610195575f80fd5b505af11580156101a7573d5f803e3d5ffd5b505060019093019250610044915050565b5080156102c9577f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e282826101ed60018261037d565b8181106101fc576101fc61033c565b9050602002013560405160200161021d929190918252602082015260400190565b604051602081830303815290604052805190602001205f1c7f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e283835f8181106102685761026861033c565b90506020020135604051602001610289929190918252602082015260400190565b60408051601f19818403018152908290528051602090910120907fdf423376f9b0ab363b1b4d6f0b4cb6821921ec30f491555a97236a8a38ce095a905f90a35b5050565b5f80602083850312156102de575f80fd5b823567ffffffffffffffff808211156102f5575f80fd5b818501915085601f830112610308575f80fd5b813581811115610316575f80fd5b8660208260051b850101111561032a575f80fd5b60209290920196919550909350505050565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215610360575f80fd5b81516001600160a01b0381168114610376575f80fd5b9392505050565b8181038181111561039c57634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x4fbf7b2f171336958be5d15ff762a5cff5363568":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061011b575f3560e01c80638d839ffe1161009d578063aeb8ce9b11610062578063aeb8ce9b14610356578063ce1e09c014610375578063d3419bf3146103a8578063f14fcbc8146103db578063f2fde38b146103fa575f80fd5b80638d839ffe146102a25780638da5cb5b146102d55780639791c097146102f1578063a8e5fbc014610310578063acf1a84114610343575f80fd5b806374694a2b116100e357806374694a2b146101c957806380869853146101dc578063839df9451461022757806383e7f6ff146102525780638a95b09f1461028c575f80fd5b806301ffc9a71461011f5780633ccfd60b146101535780635d3590d51461016957806365a69dcf14610188578063715018a6146101b5575b5f80fd5b34801561012a575f80fd5b5061013e610139366004611145565b610419565b60405190151581526020015b60405180910390f35b34801561015e575f80fd5b5061016761044f565b005b348015610174575f80fd5b50610167610183366004611187565b610489565b348015610193575f80fd5b506101a76101a23660046112e4565b610507565b60405190815260200161014a565b3480156101c0575f80fd5b5061016761058b565b6101676101d73660046113db565b61059e565b3480156101e7575f80fd5b5061020f7f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5681565b6040516001600160a01b03909116815260200161014a565b348015610232575f80fd5b506101a761024136600461149d565b60016020525f908152604090205481565b34801561025d575f80fd5b5061027161026c3660046114b4565b610894565b6040805182518152602092830151928101929092520161014a565b348015610297575f80fd5b506101a76224ea0081565b3480156102ad575f80fd5b506101a77f000000000000000000000000000000000000000000000000000000000000025881565b3480156102e0575f80fd5b505f546001600160a01b031661020f565b3480156102fc575f80fd5b5061013e61030b3660046114f6565b6109c9565b34801561031b575f80fd5b5061020f7f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e1841720481565b610167610351366004611528565b6109dd565b348015610361575f80fd5b5061013e6103703660046114f6565b610b7b565b348015610380575f80fd5b506101a77f000000000000000000000000000000000000000000000000000000000001518081565b3480156103b3575f80fd5b5061020f7f000000000000000000000000ec71e4e674fe0f432693dc2b935c34bd2774c00381565b3480156103e6575f80fd5b506101676103f536600461149d565b610c22565b348015610405575f80fd5b50610167610414366004611570565b610c95565b5f6001600160e01b031982166301ffc9a760e01b148061044957506001600160e01b0319821663612e8c0960e01b145b92915050565b5f80546040516001600160a01b03909116914780156108fc02929091818181858888f19350505050158015610486573d5f803e3d5ffd5b50565b610491610d0b565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af11580156104dd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105019190611589565b50505050565b885160208a01205f90841580159061052657506001600160a01b038716155b15610544576040516334fd817160e21b815260040160405180910390fd5b808a8a8a8a8a8a8a8a6040516020016105659998979695949392919061165e565b604051602081830303815290604052805190602001209150509998505050505050505050565b610593610d0b565b61059c5f610d64565b565b5f6105df8b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c9250610894915050565b602081015181519192506105f2916116d5565b3410156106125760405163044044a560e21b815260040160405180910390fd5b6106b38b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f82011690508083019250505050505050896106ae8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f820116905080830192505050505050508d8d8d8d8d8d8d8d610507565b610db3565b604051635200a4c160e11b81525f906001600160a01b037f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e18417204169063a40149829061070b908f908f908f908f908e908b906004016116e8565b6020604051808303815f875af1158015610727573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061074b9190611732565b9050841561077657610776878d8d604051610767929190611749565b60405180910390208888610ece565b83156107be576107be8c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508b9250339150610f939050565b896001600160a01b03168c8c6040516107d8929190611749565b60405180910390207f69e37f151eb98a09618ddaa80c8cfaf1ce5996867c489f45b555b412271ebf278e8e865f015187602001518760405161081e959493929190611758565b60405180910390a36020820151825161083791906116d5565b341115610886576020820151825133916108fc9161085591906116d5565b61085f9034611788565b6040518115909202915f818181858888f19350505050158015610884573d5f803e3d5ffd5b505b505050505050505050505050565b604080518082019091525f808252602082015282516020840120604051636b727d4360e11b8152600481018290527f000000000000000000000000ec71e4e674fe0f432693dc2b935c34bd2774c0036001600160a01b03908116916350e9a7159187917f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063d6e4fa8690602401602060405180830381865afa158015610940573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109649190611732565b866040518463ffffffff1660e01b8152600401610983939291906117e8565b6040805180830381865afa15801561099d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109c1919061180c565b949350505050565b5f60036109d583611044565b101592915050565b5f83836040516109ee929190611749565b604080519182900382206020601f8701819004810284018101909252858352925082915f91610a39919088908890819084018382808284375f92019190915250889250610894915050565b8051909150341015610a5e5760405163044044a560e21b815260040160405180910390fd5b60405163c475abff60e01b815260048101839052602481018590525f907f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b03169063c475abff906044016020604051808303815f875af1158015610acb573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610aef9190611732565b8251909150341115610b3457815133906108fc90610b0d9034611788565b6040518115909202915f818181858888f19350505050158015610b32573d5f803e3d5ffd5b505b837f3da24c024582931cfaf8267d8ed24d13a82a8068d5bd337d30ec45cea4e506ae88883485604051610b6a9493929190611859565b60405180910390a250505050505050565b805160208201205f90610b8d836109c9565b8015610c1b57506040516312dc929d60e31b8152600481018290527f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b0316906396e494e890602401602060405180830381865afa158015610bf7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c1b9190611589565b9392505050565b5f818152600160205260409020544290610c5d907f0000000000000000000000000000000000000000000000000000000000015180906116d5565b10610c8357604051630a059d7160e01b8152600481018290526024015b60405180910390fd5b5f908152600160205260409020429055565b610c9d610d0b565b6001600160a01b038116610d025760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610c7a565b61048681610d64565b5f546001600160a01b0316331461059c5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610c7a565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f818152600160205260409020544290610dee907f0000000000000000000000000000000000000000000000000000000000000258906116d5565b1115610e1057604051635320bcf960e01b815260048101829052602401610c7a565b5f818152600160205260409020544290610e4b907f0000000000000000000000000000000000000000000000000000000000015180906116d5565b11610e6c5760405163cb7690d760e01b815260048101829052602401610c7a565b610e7583610b7b565b610e9457826040516308eee0fd60e31b8152600401610c7a919061187f565b5f818152600160205260408120556224ea00821015610ec957604051639a71997b60e01b815260048101839052602401610c7a565b505050565b604080517f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae6020808301919091528183018690528251808303840181526060830193849052805191012063e32954eb60e01b90925285906001600160a01b0382169063e32954eb90610f4890859088908890606401611891565b5f604051808303815f875af1158015610f63573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052610f8a91908101906118b3565b50505050505050565b7f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d566001600160a01b0316637a806d6b33838587604051602001610fd691906119a7565b6040516020818303038152906040526040518563ffffffff1660e01b815260040161100494939291906119ce565b6020604051808303815f875af1158015611020573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105019190611732565b80515f90819081905b8082101561113c575f85838151811061106857611068611a0b565b01602001516001600160f81b0319169050600160ff1b811015611097576110906001846116d5565b9250611129565b600760fd1b6001600160f81b0319821610156110b8576110906002846116d5565b600f60fc1b6001600160f81b0319821610156110d9576110906003846116d5565b601f60fb1b6001600160f81b0319821610156110fa576110906004846116d5565b603f60fa1b6001600160f81b03198216101561111b576110906005846116d5565b6111266006846116d5565b92505b508261113481611a1f565b93505061104d565b50909392505050565b5f60208284031215611155575f80fd5b81356001600160e01b031981168114610c1b575f80fd5b80356001600160a01b0381168114611182575f80fd5b919050565b5f805f60608486031215611199575f80fd5b6111a28461116c565b92506111b06020850161116c565b9150604084013590509250925092565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff811182821017156111fd576111fd6111c0565b604052919050565b5f67ffffffffffffffff82111561121e5761121e6111c0565b50601f01601f191660200190565b5f82601f83011261123b575f80fd5b813561124e61124982611205565b6111d4565b818152846020838601011115611262575f80fd5b816020850160208301375f918101602001919091529392505050565b5f8083601f84011261128e575f80fd5b50813567ffffffffffffffff8111156112a5575f80fd5b6020830191508360208260051b85010111156112bf575f80fd5b9250929050565b8015158114610486575f80fd5b803561ffff81168114611182575f80fd5b5f805f805f805f805f6101008a8c0312156112fd575f80fd5b893567ffffffffffffffff80821115611314575f80fd5b6113208d838e0161122c565b9a5061132e60208d0161116c565b995060408c0135985060608c0135975061134a60808d0161116c565b965060a08c013591508082111561135f575f80fd5b5061136c8c828d0161127e565b90955093505060c08a0135611380816112c6565b915061138e60e08b016112d3565b90509295985092959850929598565b5f8083601f8401126113ad575f80fd5b50813567ffffffffffffffff8111156113c4575f80fd5b6020830191508360208285010111156112bf575f80fd5b5f805f805f805f805f806101008b8d0312156113f5575f80fd5b8a3567ffffffffffffffff8082111561140c575f80fd5b6114188e838f0161139d565b909c509a508a915061142c60208e0161116c565b995060408d0135985060608d0135975061144860808e0161116c565b965060a08d013591508082111561145d575f80fd5b5061146a8d828e0161127e565b90955093505060c08b013561147e816112c6565b915061148c60e08c016112d3565b90509295989b9194979a5092959850565b5f602082840312156114ad575f80fd5b5035919050565b5f80604083850312156114c5575f80fd5b823567ffffffffffffffff8111156114db575f80fd5b6114e78582860161122c565b95602094909401359450505050565b5f60208284031215611506575f80fd5b813567ffffffffffffffff81111561151c575f80fd5b6109c18482850161122c565b5f805f6040848603121561153a575f80fd5b833567ffffffffffffffff811115611550575f80fd5b61155c8682870161139d565b909790965060209590950135949350505050565b5f60208284031215611580575f80fd5b610c1b8261116c565b5f60208284031215611599575f80fd5b8151610c1b816112c6565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b5f838385526020808601955060208560051b830101845f5b8781101561165157848303601f19018952813536889003601e19018112611609575f80fd5b8701848101903567ffffffffffffffff811115611624575f80fd5b803603821315611632575f80fd5b61163d8582846115a4565b9a86019a94505050908301906001016115e4565b5090979650505050505050565b8981526001600160a01b03898116602083015260408201899052606082018890528616608082015261010060a082018190525f9061169f83820187896115cc565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610449576104496116c1565b60a081525f6116fb60a08301888a6115a4565b6001600160a01b03968716602084015260408301959095525091909316606082015261ffff90921660809092019190915292915050565b5f60208284031215611742575f80fd5b5051919050565b818382375f9101908152919050565b608081525f61176b6080830187896115a4565b602083019590955250604081019290925260609091015292915050565b81810381811115610449576104496116c1565b5f5b838110156117b557818101518382015260200161179d565b50505f910152565b5f81518084526117d481602086016020860161179b565b601f01601f19169290920160200192915050565b606081525f6117fa60608301866117bd565b60208301949094525060400152919050565b5f6040828403121561181c575f80fd5b6040516040810181811067ffffffffffffffff8211171561183f5761183f6111c0565b604052825181526020928301519281019290925250919050565b606081525f61186c6060830186886115a4565b6020830194909452506040015292915050565b602081525f610c1b60208301846117bd565b838152604060208201525f6118aa6040830184866115cc565b95945050505050565b5f60208083850312156118c4575f80fd5b825167ffffffffffffffff808211156118db575f80fd5b818501915085601f8301126118ee575f80fd5b815181811115611900576119006111c0565b8060051b61190f8582016111d4565b9182528381018501918581019089841115611928575f80fd5b86860192505b8383101561199a57825185811115611944575f80fd5b8601603f81018b13611954575f80fd5b87810151604061196661124983611205565b8281528d82848601011115611979575f80fd5b611988838c830184870161179b565b8552505050918601919086019061192e565b9998505050505050505050565b5f82516119b881846020870161179b565b6305ccae8d60e31b920191825250600401919050565b6001600160a01b0385811682528481166020830152831660408201526080606082018190525f90611a01908301846117bd565b9695505050505050565b634e487b7160e01b5f52603260045260245ffd5b5f60018201611a3057611a306116c1565b506001019056fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x5155f5627bdf9795b3dbb8887001ada1eeba93f2":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063de8f50a11461002d575b5f80fd5b61004761003b3660046100a0565b60019695505050505050565b604051901515815260200160405180910390f35b5f8083601f84011261006b575f80fd5b50813567ffffffffffffffff811115610082575f80fd5b602083019150836020828501011115610099575f80fd5b9250929050565b5f805f805f80606087890312156100b5575f80fd5b863567ffffffffffffffff808211156100cc575f80fd5b6100d88a838b0161005b565b909850965060208901359150808211156100f0575f80fd5b6100fc8a838b0161005b565b90965094506040890135915080821115610114575f80fd5b5061012189828a0161005b565b979a969950949750929593949250505056fea164736f6c6343000818000a","storage":{}},"0x54563a9e1cd2dcbd0bca90d3cfa4a647e02c404a":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106101db575f3560e01c80638da5cb5b116100fd578063c4d66de811610092578063daea85c511610062578063daea85c51461055e578063e7acab241461057d578063f2fde38b1461059c578063ffa1ad74146105bb575f80fd5b8063c4d66de8146104e1578063d539139314610500578063d547741f14610520578063d9caed121461053f575f80fd5b8063a217fddf116100cd578063a217fddf14610452578063a3f4df7e14610465578063a4247400146104a3578063aa271e1a146104c2575f80fd5b80638da5cb5b146103d957806391d1485414610400578063983b2d561461041f578063986502751461043e575f80fd5b80635c975abb11610173578063715018a611610143578063715018a61461037f57806371e2a6571461039357806381c81d35146103b25780638456cb59146103c5575f80fd5b80635c975abb146103165780635fc1964f1461032e578063634486da1461034d5780636ccbae5f14610360575f80fd5b80633092afd5116101ae5780633092afd51461029c57806336568abe146102bb5780633f4ba83a146102da578063572b6c05146102ee575f80fd5b806301ffc9a7146101df5780631bf7e13e14610213578063248a9ca31461023f5780632f2ff15d1461027b575b5f80fd5b3480156101ea575f80fd5b506101fe6101f9366004611ee0565b6105eb565b60405190151581526020015b60405180910390f35b34801561021e575f80fd5b5061023261022d366004611f07565b610621565b60405161020a9190611fe9565b34801561024a575f80fd5b5061026d610259366004611ffb565b5f90815260fb602052604090206001015490565b60405190815260200161020a565b348015610286575f80fd5b5061029a610295366004612036565b6106ea565b005b3480156102a7575f80fd5b5061029a6102b6366004612064565b610713565b3480156102c6575f80fd5b5061029a6102d5366004612036565b610727565b3480156102e5575f80fd5b5061029a6107ba565b3480156102f9575f80fd5b506101fe610308366004612064565b6001600160a01b0316301490565b348015610321575f80fd5b5061012d5460ff166101fe565b348015610339575f80fd5b5061029a6103483660046120eb565b6107d4565b61029a61035b366004612064565b610811565b34801561036b575f80fd5b5061026d61037a366004611ffb565b6108d1565b34801561038a575f80fd5b5061029a61092a565b34801561039e575f80fd5b5061029a6103ad3660046120eb565b61093b565b61029a6103c0366004612064565b610978565b3480156103d0575f80fd5b5061029a6109f5565b3480156103e4575f80fd5b506097546040516001600160a01b03909116815260200161020a565b34801561040b575f80fd5b506101fe61041a366004612036565b610a0d565b34801561042a575f80fd5b5061029a610439366004612064565b610a37565b348015610449575f80fd5b5061029a610a48565b34801561045d575f80fd5b5061026d5f81565b348015610470575f80fd5b506102326040518060400160405280601381526020017229b2b0b837b93a10283937bc3c90213abcb2b960691b81525081565b3480156104ae575f80fd5b506101fe6104bd366004611f07565b610a61565b3480156104cd575f80fd5b506101fe6104dc366004612064565b610ab2565b3480156104ec575f80fd5b5061029a6104fb366004612064565b610aca565b34801561050b575f80fd5b5061026d5f80516020612ea783398151915281565b34801561052b575f80fd5b5061029a61053a366004612036565b610c21565b34801561054a575f80fd5b5061029a61055936600461218b565b610c45565b348015610569575f80fd5b5061029a610578366004612064565b610cf7565b348015610588575f80fd5b506101fe6105973660046121c9565b610dac565b3480156105a7575f80fd5b5061029a6105b6366004612064565b6111db565b3480156105c6575f80fd5b5061023260405180604001604052806005815260200164302e302e3160d81b81525081565b5f6001600160e01b03198216637965db0b60e01b148061061b57506301ffc9a760e01b6001600160e01b03198316145b92915050565b60605f5a9050610632858585610a61565b61064f57604051638baa579f60e01b815260040160405180910390fd5b6106df61065f6020870187612064565b3060408801358461067360608b018b61227b565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f920191909152506111f692505050565b9150505b9392505050565b5f82815260fb6020526040902060010154610704816112d4565b61070e83836112e5565b505050565b61071b61136b565b610724816113e4565b50565b61072f6113fb565b6001600160a01b0316816001600160a01b0316146107ac5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6107b68282611409565b5050565b6107c261136b565b6107ca61148d565b6107d26114d7565b565b6107dc61136b565b5f5b81518110156107b6576108098282815181106107fc576107fc6122bd565b60200260200101516113e4565b6001016107de565b61081c6104dc6113fb565b6108385760405162461bcd60e51b81526004016107a3906122d1565b6001600160a01b03811661088e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016107a3565b61089781611530565b61089f610a48565b6040516001600160a01b038216903480156108fc02915f818181858888f193505050501580156107b6573d5f803e3d5ffd5b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f90610923906060016040516020818303038152906040528051906020012090565b5492915050565b61093261136b565b6107d25f611547565b61094361136b565b5f5b81518110156107b657610970828281518110610963576109636122bd565b6020026020010151611530565b600101610945565b6109836104dc6113fb565b61099f5760405162461bcd60e51b81526004016107a3906122d1565b6001600160a01b0381166108975760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016107a3565b6109fd61136b565b610a05611598565b6107d26115df565b5f91825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610a3f61136b565b61072481611530565b6107d25f80516020612ea78339815191526102d56113fb565b5f610aaa610a6e85612306565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061161e92505050565b949350505050565b5f61061b5f80516020612ea783398151915283610a0d565b5f54610100900460ff1615808015610ae857505f54600160ff909116105b80610b015750303b158015610b0157505f5460ff166001145b610b645760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107a3565b5f805460ff191660011790558015610b85575f805461ff0019166101001790555b61015f80546001600160a01b0319166001600160a01b038416179055610ba9611759565b610bb1611786565b610bb9611786565b610bc1611786565b610bc96117ac565b610bd16117e2565b610bd9611819565b80156107b6575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b5f82815260fb6020526040902060010154610c3b816112d4565b61070e8383611409565b610c4d61136b565b600260335403610c6f5760405162461bcd60e51b81526004016107a3906123c2565b6002603355610c7c611598565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af1158015610cc8573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cec91906123f9565b505060016033555050565b610cff61136b565b600260335403610d215760405162461bcd60e51b81526004016107a3906123c2565b6002603355610d2e611598565b61015f5460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529082169063095ea7b3906044016020604051808303815f875af1158015610d7f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610da391906123f9565b50506001603355565b5f610db86104dc6113fb565b610dd45760405162461bcd60e51b81526004016107a3906122d1565b600260335403610df65760405162461bcd60e51b81526004016107a3906123c2565b6002603355610e03611598565b6001600160a01b038216610e2a576040516311d000e160e31b815260040160405180910390fd5b30610e358780612418565b610e46906040810190602001612064565b6001600160a01b031614610e6d57604051639d3c586b60e01b815260040160405180910390fd5b610e75611e67565b610e7f8780612418565b610e8d906020810190612064565b6001600160a01b03168152610ea28780612418565b610eb3906040810190602001612064565b6001600160a01b03166020820152610ecb8780612418565b610ed9906040810190612437565b808060200260200160405190810160405280939291908181526020015f905b82821015610f2457610f1560a08302860136819003810190612489565b81526020019060010190610ef8565b50505050506040820152610f388780612418565b610f46906060810190612506565b808060200260200160405190810160405280939291908181526020015f905b82821015610f9157610f8260c0830286013681900381019061254a565b81526020019060010190610f65565b50505050506060820152610fa58780612418565b610fb69060a08101906080016125e5565b81608001906004811115610fcc57610fcc6125fe565b90816004811115610fdf57610fdf6125fe565b905250610fec8780612418565b60a090810135908201526110008780612418565b60c090810135908201526110148780612418565b60e090810135908201526110288780612418565b610100908101359082015261103d8780612418565b610120908101359082015261015f54815160405163f07ec37360e01b81526001600160a01b03918216600482015291169063f07ec37390602401602060405180830381865afa158015611092573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110b69190612612565b61014082015261015f546040516379df72bd60e01b8152611133916001600160a01b0316906379df72bd906110ef908590600401612737565b602060405180830381865afa15801561110a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061112e9190612612565b61184c565b61015f546040516339eb2ac960e21b81526001600160a01b039091169063e7acab249061116c908a908a908a908a908a90600401612b24565b6020604051808303815f875af1158015611188573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111ac91906123f9565b9150816111cc57604051636725093760e01b815260040160405180910390fd5b50600160335595945050505050565b6111e361136b565b6111ec81611865565b6107245f826118db565b6060611201856118e5565b5f80876001600160a01b03168661121a8b8a898961194a565b6040516112279190612cfa565b5f604051808303815f8787f1925050503d805f8114611261576040519150601f19603f3d011682016040523d82523d5f602084013e611266565b606091505b509092509050611277603f87612d1f565b5a1161128557611285612d3e565b6112c582826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061197a565b925050505b9695505050505050565b610724816112e06113fb565b6119b3565b6112ef8282610a0d565b6107b6575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191660011790556113276113fb565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6113736113fb565b6001600160a01b031661138e6097546001600160a01b031690565b6001600160a01b0316146107d25760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107a3565b6107245f80516020612ea783398151915282610c21565b5f611404611a17565b905090565b6114138282610a0d565b156107b6575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191690556114496113fb565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b61012d5460ff166107d25760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b60448201526064016107a3565b6114df61148d565b61012d805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6115136113fb565b6040516001600160a01b03909116815260200160405180910390a1565b6107245f80516020612ea7833981519152826118db565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b61012d5460ff16156107d25760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b60448201526064016107a3565b6115e7611598565b61012d805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586115136113fb565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015611662573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116869190612612565b90505f6117338660600151805190602001208688602001516040516020016116d39392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156112ca575085516112ca906001600160a01b03168286611a34565b5f54610100900460ff1661177f5760405162461bcd60e51b81526004016107a390612d52565b6001603355565b5f54610100900460ff166107d25760405162461bcd60e51b81526004016107a390612d52565b5f54610100900460ff166117d25760405162461bcd60e51b81526004016107a390612d52565b6107d26117dd6113fb565b611547565b5f54610100900460ff166118085760405162461bcd60e51b81526004016107a390612d52565b6107d25f6118146113fb565b6118db565b5f54610100900460ff1661183f5760405162461bcd60e51b81526004016107a390612d52565b61012d805460ff19169055565b30330361185c5761072481611b6f565b610724816118e5565b61186d61136b565b6001600160a01b0381166118d25760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107a3565b61072481611547565b6107b682826112e5565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f906060016040516020818303038152906040528051906020012090506119398190565b54611945906001612d9d565b905550565b606082858560405160200161196193929190612db0565b6040516020818303038152906040529050949350505050565b606083156119895750816106e3565b8251156119995782518084602001fd5b8160405162461bcd60e51b81526004016107a39190611fe9565b6119bd8282610a0d565b6107b6576119d5816001600160a01b03166014611b99565b6119e0836020611b99565b6040516020016119f1929190612dee565b60408051601f198184030181529082905262461bcd60e51b82526107a391600401611fe9565b5f303303611a2c575060331936013560601c90565b503390565b90565b5f805f611a418585611d2e565b90925090505f816004811115611a5957611a596125fe565b148015611a775750856001600160a01b0316826001600160a01b0316145b15611a87576001925050506106e3565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401611aae929190612e62565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051611aec9190612cfa565b5f60405180830381855afa9150503d805f8114611b24576040519150601f19603f3d011682016040523d82523d5f602084013e611b29565b606091505b5091509150818015611b3c575080516020145b8015611b6357508051630b135d3f60e11b90611b619083016020908101908401612612565b145b98975050505050505050565b611b77611d70565b811461072457604051635637b6af60e11b8152600481018290526024016107a3565b60605f611ba7836002612e7a565b611bb2906002612d9d565b6001600160401b03811115611bc957611bc961207f565b6040519080825280601f01601f191660200182016040528015611bf3576020820181803683370190505b509050600360fc1b815f81518110611c0d57611c0d6122bd565b60200101906001600160f81b03191690815f1a905350600f60fb1b81600181518110611c3b57611c3b6122bd565b60200101906001600160f81b03191690815f1a9053505f611c5d846002612e7a565b611c68906001612d9d565b90505b6001811115611cdf576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611c9c57611c9c6122bd565b1a60f81b828281518110611cb257611cb26122bd565b60200101906001600160f81b03191690815f1a90535060049490941c93611cd881612e91565b9050611c6b565b5083156106e35760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016107a3565b5f808251604103611d62576020830151604084015160608501515f1a611d5687828585611d82565b94509450505050611d69565b505f905060025b9250929050565b5f303303611a315750601f1936013590565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115611db757505f90506003611e5e565b8460ff16601b14158015611dcf57508460ff16601c14155b15611ddf57505f90506004611e5e565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015611e30573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b038116611e58575f60019250925050611e5e565b91505f90505b94509492505050565b6040518061016001604052805f6001600160a01b031681526020015f6001600160a01b0316815260200160608152602001606081526020015f6004811115611eb157611eb16125fe565b81525f6020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b5f60208284031215611ef0575f80fd5b81356001600160e01b0319811681146106e3575f80fd5b5f805f60408486031215611f19575f80fd5b83356001600160401b0380821115611f2f575f80fd5b9085019060808288031215611f42575f80fd5b90935060208501359080821115611f57575f80fd5b818601915086601f830112611f6a575f80fd5b813581811115611f78575f80fd5b876020828501011115611f89575f80fd5b6020830194508093505050509250925092565b5f5b83811015611fb6578181015183820152602001611f9e565b50505f910152565b5f8151808452611fd5816020860160208601611f9c565b601f01601f19169290920160200192915050565b602081525f6106e36020830184611fbe565b5f6020828403121561200b575f80fd5b5035919050565b6001600160a01b0381168114610724575f80fd5b803561203181612012565b919050565b5f8060408385031215612047575f80fd5b82359150602083013561205981612012565b809150509250929050565b5f60208284031215612074575f80fd5b81356106e381612012565b634e487b7160e01b5f52604160045260245ffd5b604051608081016001600160401b03811182821017156120b5576120b561207f565b60405290565b604051601f8201601f191681016001600160401b03811182821017156120e3576120e361207f565b604052919050565b5f60208083850312156120fc575f80fd5b82356001600160401b0380821115612112575f80fd5b818501915085601f830112612125575f80fd5b8135818111156121375761213761207f565b8060051b91506121488483016120bb565b8181529183018401918481019088841115612161575f80fd5b938501935b83851015611b63578435925061217b83612012565b8282529385019390850190612166565b5f805f6060848603121561219d575f80fd5b83356121a881612012565b925060208401356121b881612012565b929592945050506040919091013590565b5f805f805f608086880312156121dd575f80fd5b85356001600160401b03808211156121f3575f80fd5b9087019060a0828a031215612206575f80fd5b9095506020870135908082111561221b575f80fd5b818801915088601f83011261222e575f80fd5b81358181111561223c575f80fd5b8960208260051b8501011115612250575f80fd5b6020830196508095505050506040860135915061226f60608701612026565b90509295509295909350565b5f808335601e19843603018112612290575f80fd5b8301803591506001600160401b038211156122a9575f80fd5b602001915036819003821315611d69575f80fd5b634e487b7160e01b5f52603260045260245ffd5b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b5f60808236031215612316575f80fd5b61231e612093565b823561232981612012565b8152602083810135818301526040808501359083015260608401356001600160401b0380821115612358575f80fd5b9085019036601f83011261236a575f80fd5b81358181111561237c5761237c61207f565b61238e601f8201601f191685016120bb565b915080825236848285010111156123a3575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b5f60208284031215612409575f80fd5b815180151581146106e3575f80fd5b5f823561015e1983360301811261242d575f80fd5b9190910192915050565b5f808335601e1984360301811261244c575f80fd5b8301803591506001600160401b03821115612465575f80fd5b602001915060a081023603821315611d69575f80fd5b803560068110612031575f80fd5b5f60a08284031215612499575f80fd5b60405160a081018181106001600160401b03821117156124bb576124bb61207f565b6040526124c78361247b565b815260208301356124d781612012565b806020830152506040830135604082015260608301356060820152608083013560808201528091505092915050565b5f808335601e1984360301811261251b575f80fd5b8301803591506001600160401b03821115612534575f80fd5b602001915060c081023603821315611d69575f80fd5b5f60c0828403121561255a575f80fd5b60405160c081018181106001600160401b038211171561257c5761257c61207f565b6040526125888361247b565b8152602083013561259881612012565b8060208301525060408301356040820152606083013560608201526080830135608082015260a08301356125cb81612012565b60a08201529392505050565b803560058110612031575f80fd5b5f602082840312156125f5575f80fd5b6106e3826125d7565b634e487b7160e01b5f52602160045260245ffd5b5f60208284031215612622575f80fd5b5051919050565b60068110612639576126396125fe565b9052565b5f815180845260208085019450602084015f5b838110156126a6578151612665888251612629565b838101516001600160a01b03168885015260408082015190890152606080820151908901526080908101519088015260a09096019590820190600101612650565b509495945050505050565b5f815180845260208085019450602084015f5b838110156126a65781516126d9888251612629565b808401516001600160a01b0390811689860152604080830151908a0152606080830151908a0152608080830151908a015260a091820151169088015260c090960195908201906001016126c4565b60058110612639576126396125fe565b602081526127516020820183516001600160a01b03169052565b5f602083015161276c60408401826001600160a01b03169052565b50604083015161016080606085015261278961018085018361263d565b91506060850151601f198584030160808601526127a683826126b1565b92505060808501516127bb60a0860182612727565b5060a085015160c085015260c085015160e085015260e0850151610100818187015280870151915050610120818187015280870151915050610140818187015280870151838701525050508091505092915050565b5f808335601e19843603018112612825575f80fd5b83016020810192503590506001600160401b03811115612843575f80fd5b60a081023603821315611d69575f80fd5b8183525f60208085019450825f5b858110156126a65761287c876128778461247b565b612629565b8282013561288981612012565b6001600160a01b03168388015260408281013590880152606080830135908801526080808301359088015260a09687019690910190600101612862565b5f808335601e198436030181126128db575f80fd5b83016020810192503590506001600160401b038111156128f9575f80fd5b60c081023603821315611d69575f80fd5b8183525f60208085019450825f5b858110156126a65761292d876128778461247b565b8282013561293a81612012565b6001600160a01b039081168885015260408381013590890152606080840135908901526080808401359089015260a0908382013561297781612012565b169088015260c0968701969190910190600101612918565b80356001600160781b0381168114612031575f80fd5b5f808335601e198436030181126129ba575f80fd5b83016020810192503590506001600160401b038111156129d8575f80fd5b803603821315611d69575f80fd5b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b8183525f6001600160fb1b03831115612a25575f80fd5b8260051b80836020870137939093016020019392505050565b8183526020808401935f91600585811b8301820185855b88811015612b1657858303601f19018a52813536899003609e19018112612a7a575f80fd5b88018035845260a08682013560028110612a92575f80fd5b85880152604082810135908601526060808301359086015260808083013536849003601e19018112612ac2575f80fd5b9092018781019290356001600160401b03811115612ade575f80fd5b80881b3603841315612aee575f80fd5b8282880152612b008388018286612a0e565b9d89019d96505050928601925050600101612a55565b509098975050505050505050565b608081525f610120873561015e19893603018112612b40575f80fd5b60a060808501528801612b65828501612b5883612026565b6001600160a01b03169052565b612b7160208201612026565b610140612b88818701836001600160a01b03169052565b612b956040840184612810565b610160888101529250612bad61028088018483612854565b925050612bbd60608401846128c6565b87840361011f1901610180890152612bd684828461290a565b93505050612be6608084016125d7565b612bf46101a0880182612727565b5060a08301356101c087015260c08301356101e087015260e0830135610200870152610100808401356102208801528484013561024088015281840135610260880152612c4360208d0161298f565b6001600160781b03811660a08901529450612c6060408d0161298f565b6001600160781b03811660c08901529450612c7e60608d018d6129a5565b95509350607f199150818784030160e0880152612c9c8386866129e6565b9450612cab60808d018d6129a5565b945092508187860301818801525050612cc58383836129e6565b925050508281036020840152612cdc818789612a3e565b9150508360408301526112ca60608301846001600160a01b03169052565b5f825161242d818460208701611f9c565b634e487b7160e01b5f52601160045260245ffd5b5f82612d3957634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b8082018082111561061b5761061b612d0b565b5f8451612dc1818460208901611f9c565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081525f8351612e25816017850160208801611f9c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351612e56816028840160208801611f9c565b01602801949350505050565b828152604060208201525f610aaa6040830184611fbe565b808202811582820484141761061b5761061b612d0b565b5f81612e9f57612e9f612d0b565b505f19019056fe9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000818000a","storage":{"0x0":"0xff"}},"0x58a175bebc8ec21a94ea63aa5a28743945940ee6":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106101165760003560e01c806391d14854116100a2578063c4d66de811610071578063c4d66de8146103bb578063ca15c873146103e1578063d547741f146103fe578063e375b64e1461042a578063ec87621c146104b957610116565b806391d14854146103635780639559c0bd146103a3578063a217fddf146103ab578063b017a30f146103b357610116565b80634794b430116100e95780634794b4301461024f57806349f5124b14610257578063609c92b81461025f5780638274664f146102675780639010d07c1461032457610116565b8063150b7a021461011b578063248a9ca3146101c65780632f2ff15d146101f557806336568abe14610223575b600080fd5b6101a96004803603608081101561013157600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561016b57600080fd5b82018360208201111561017d57600080fd5b803590602001918460018302840111600160201b8311171561019e57600080fd5b5090925090506104c1565b604080516001600160e01b03199092168252519081900360200190f35b6101e3600480360360208110156101dc57600080fd5b50356104d2565b60408051918252519081900360200190f35b6102216004803603604081101561020b57600080fd5b50803590602001356001600160a01b03166104ea565b005b6102216004803603604081101561023957600080fd5b50803590602001356001600160a01b0316610556565b6101e36105b7565b6101e36105db565b6101e36105ff565b6102216004803603606081101561027d57600080fd5b6001600160a01b038235811692602081013590911691810190606081016040820135600160201b8111156102b057600080fd5b8201836020820111156102c257600080fd5b803590602001918460018302840111600160201b831117156102e357600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610623945050505050565b6103476004803603604081101561033a57600080fd5b5080359060200135610fa2565b604080516001600160a01b039092168252519081900360200190f35b61038f6004803603604081101561037957600080fd5b50803590602001356001600160a01b0316610fc9565b604080519115158252519081900360200190f35b6101e3610fe7565b6101e3610fec565b6101e3610ff1565b610221600480360360208110156103d157600080fd5b50356001600160a01b0316611015565b6101e3600480360360208110156103f757600080fd5b50356110cf565b6102216004803603604081101561041457600080fd5b50803590602001356001600160a01b03166110e6565b6102216004803603608081101561044057600080fd5b6001600160a01b0382358116926020810135821692604082013590921691810190608081016060820135600160201b81111561047b57600080fd5b82018360208201111561048d57600080fd5b803590602001918460018302840111600160201b831117156104ae57600080fd5b50909250905061113f565b6101e36114e6565b630a85bd0160e11b95945050505050565b6000818152602081905260409020600201545b919050565b60008281526020819052604090206002015461050d906105086114f8565b610fc9565b6105485760405162461bcd60e51b815260040180806020018281038252602f815260200180611f42602f913960400191505060405180910390fd5b61055282826114fd565b5050565b61055e6114f8565b6001600160a01b0316816001600160a01b0316146105ad5760405162461bcd60e51b815260040180806020018281038252602f8152602001806120bb602f913960400191505060405180910390fd5b610552828261156c565b7ff871896b17e9cb7a64941c62c188a4f5c621b86800e3d15452ece01ce56073df81565b7ff94915c6d1fd521cee85359239227480c7e8776d7caf1fc3bacad5c269b66a1481565b7fd4392723c111fcb98b073fe55873efb447bcd23cd3e49ec9ea2581930cd01ddc81565b60008051602061204b83398151915261063e816105086114f8565b6001906106de5760405162461bcd60e51b81526020600482019081528254600260001961010060018416150201909116046024830181905290918291604490910190849080156106cf5780601f106106a4576101008083540402835291602001916106cf565b820191906000526020600020905b8154815290600101906020018083116106b257829003601f168201915b50509250505060405180910390fd5b5060606106f26106ed846115db565b611656565b905060606107138260018151811061070657fe5b6020026020010151611656565b90507fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60001b6107568260008151811061074957fe5b60200260200101516117d8565b141561095457600061076e8260018151811061074957fe5b905060006001600160a01b031661078b8360028151811061074957fe5b6001600160a01b0316146107d05760405162461bcd60e51b815260040180806020018281038252602981526020018061206b6029913960400191505060405180910390fd5b600086905060006107e78460038151811061074957fe5b9050816001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b15801561082d57600080fd5b505afa158015610841573d6000803e3d6000fd5b505050506040513d602081101561085757600080fd5b5051156108d35760408051632142170760e11b81523060048201526001600160a01b038581166024830152604482018490529151918416916342842e0e9160648082019260009290919082900301818387803b1580156108b657600080fd5b505af11580156108ca573d6000803e3d6000fd5b5050505061094c565b816001600160a01b03166340c10f1984836040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b15801561093357600080fd5b505af1158015610947573d6000803e3d6000fd5b505050505b505050610f9a565b7ff871896b17e9cb7a64941c62c188a4f5c621b86800e3d15452ece01ce56073df60001b6109888260008151811061074957fe5b1415610c085760006109a08260018151811061074957fe5b905060606109c1846002815181106109b457fe5b6020026020010151611920565b905060608180602001905160208110156109da57600080fd5b8101908080516040519392919084600160201b8211156109f957600080fd5b908301906020820185811115610a0e57600080fd5b82518660208202830111600160201b82111715610a2a57600080fd5b82525081516020918201928201910280838360005b83811015610a57578181015183820152602001610a3f565b5050505091909101604052505082519293508a9150600090505b82811015610bfd576000848281518110610a8757fe5b60200260200101519050826001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610ad557600080fd5b505afa158015610ae9573d6000803e3d6000fd5b505050506040513d6020811015610aff57600080fd5b505115610b7b5760408051632142170760e11b81523060048201526001600160a01b038981166024830152604482018490529151918516916342842e0e9160648082019260009290919082900301818387803b158015610b5e57600080fd5b505af1158015610b72573d6000803e3d6000fd5b50505050610bf4565b826001600160a01b03166340c10f1988836040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b158015610bdb57600080fd5b505af1158015610bef573d6000803e3d6000fd5b505050505b50600101610a71565b505050505050610f9a565b7ff94915c6d1fd521cee85359239227480c7e8776d7caf1fc3bacad5c269b66a1460001b610c3c8260008151811061074957fe5b1415610f63576000610c548260018151811061074957fe5b905060006001600160a01b0316610c718360028151811061074957fe5b6001600160a01b031614610cb65760405162461bcd60e51b815260040180806020018281038252602981526020018061206b6029913960400191505060405180910390fd5b60008690506000610ccd8460038151811061074957fe5b9050816001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610d1357600080fd5b505afa158015610d27573d6000803e3d6000fd5b505050506040513d6020811015610d3d57600080fd5b505115610d9c5760408051632142170760e11b81523060048201526001600160a01b038581166024830152604482018490529151918416916342842e0e9160648082019260009290919082900301818387803b1580156108b657600080fd5b6060610dae866002815181106109b457fe5b90506060818060200190516020811015610dc757600080fd5b8101908080516040519392919084600160201b821115610de657600080fd5b908301906020820185811115610dfb57600080fd5b8251600160201b811182820188101715610e1457600080fd5b82525081516020918201929091019080838360005b83811015610e41578181015183820152602001610e29565b50505050905090810190601f168015610e6e5780820380516001836020036101000a031916815260200191505b506040525050509050836001600160a01b03166394d008ef8685846040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b0316815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610ef3578181015183820152602001610edb565b50505050905090810190601f168015610f205780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015610f4157600080fd5b505af1158015610f55573d6000803e3d6000fd5b505050505050505050610f9a565b60405162461bcd60e51b815260040180806020018281038252602a815260200180611f71602a913960400191505060405180910390fd5b505050505050565b6000828152602081905260408120610fc0908363ffffffff6119ea16565b90505b92915050565b6000828152602081905260408120610fc0908363ffffffff6119f616565b601481565b600081565b7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef81565b60025460ff161561105e576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b61109c6040518060400160405280601781526020017f4d696e7461626c65455243373231507265646963617465000000000000000000815250611a0b565b6110a7600082610548565b6110bf60008051602061204b83398151915282610548565b506002805460ff19166001179055565b6000818152602081905260408120610fc390611aa9565b600082815260208190526040902060020154611104906105086114f8565b6105ad5760405162461bcd60e51b8152600401808060200182810382526030815260200180611fc36030913960400191505060405180910390fd5b60008051602061204b83398151915261115a816105086114f8565b6001906111c05760405162461bcd60e51b81526020600482019081528254600260001961010060018416150201909116046024830181905290918291604490910190849080156106cf5780601f106106a4576101008083540402835291602001916106cf565b50602082141561129f576000838360208110156111dc57600080fd5b5060408051913580835290519092506001600160a01b038088169289821692918b16917fe13244aa06bdc79480ed5fdc6ebe2bb37202fcdf33ecf45dc449f4201f3dc0879181900360200190a460408051632142170760e11b81526001600160a01b038981166004830152306024830152604482018490529151918716916342842e0e9160648082019260009290919082900301818387803b15801561128157600080fd5b505af1158015611295573d6000803e3d6000fd5b5050505050610f9a565b6060838360208110156112b157600080fd5b810190602081018135600160201b8111156112cb57600080fd5b8201836020820111156112dd57600080fd5b803590602001918460208302840111600160201b831117156112fe57600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f8201169050808301925050505050505091929192905050509050846001600160a01b0316866001600160a01b0316886001600160a01b03167fdb55e3a0ae817693fd7b07170d81eab0eb2c239f36fcecbc98b6b58ac5667e7a846040518080602001828103825283818151815260200191508051906020019060200280838360005b838110156113ca5781810151838201526020016113b2565b505050509050019250505060405180910390a48051601481111561141f5760405162461bcd60e51b815260040180806020018281038252602c81526020018061201f602c913960400191505060405180910390fd5b60005b818110156114db57866001600160a01b03166342842e0e8a3086858151811061144757fe5b60200260200101516040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050600060405180830381600087803b1580156114b757600080fd5b505af11580156114cb573d6000803e3d6000fd5b5050600190920191506114229050565b505050505050505050565b60008051602061204b83398151915281565b335b90565b600082815260208190526040902061151b908263ffffffff611ab416565b15610552576115286114f8565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b600082815260208190526040902061158a908263ffffffff611ac916565b15610552576115976114f8565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b6115e3611e6d565b6000825111611639576040805162461bcd60e51b815260206004820152601f60248201527f524c505265616465723a20494e56414c49445f42595445535f4c454e47544800604482015290519081900360640190fd5b506040805180820190915281518152602082810190820152919050565b606061166182611ade565b6116b2576040805162461bcd60e51b815260206004820152601860248201527f524c505265616465723a204954454d5f4e4f545f4c4953540000000000000000604482015290519081900360640190fd5b60006116bd83611b0a565b905060608167ffffffffffffffff811180156116d857600080fd5b5060405190808252806020026020018201604052801561171257816020015b6116ff611e6d565b8152602001906001900390816116f75790505b50905060006117248560200151611b96565b855190915081146117665760405162461bcd60e51b81526004018080602001828103825260278152602001806120946027913960400191505060405180910390fd5b60006117758660200151611c2f565b60208701510190506000805b858110156117cc5761179283611b96565b91506040518060400160405280838152602001848152508582815181106117b557fe5b602090810291909101015291810191600101611781565b50929695505050505050565b60006117e382611ade565b15611835576040805162461bcd60e51b815260206004820181905260248201527f524c505265616465723a204445434f44494e475f4c4953545f41535f55494e54604482015290519081900360640190fd5b81516021101561188c576040805162461bcd60e51b815260206004820152601e60248201527f524c505265616465723a20494e56414c49445f55494e545f4c454e4754480000604482015290519081900360640190fd5b600061189b8360200151611b96565b835190915081146118dd5760405162461bcd60e51b81526004018080602001828103825260278152602001806120ea6027913960400191505060405180910390fd5b60006118ec8460200151611c2f565b8451602080870151830180519394509184900392919083101561191657826020036101000a820491505b5095945050505050565b606060006119318360200151611b96565b835190915081146119735760405162461bcd60e51b8152600401808060200182810382526028815260200180611f9b6028913960400191505060405180910390fd5b60006119828460200151611c2f565b845190915081900360608167ffffffffffffffff811180156119a357600080fd5b506040519080825280601f01601f1916602001820160405280156119ce576020820181803683370190505b5090506000816020019050611916848860200151018285611c92565b6000610fc08383611cdd565b6000610fc0836001600160a01b038416611d41565b806040516020018082805190602001908083835b60208310611a3e5780518252601f199092019160209182019101611a1f565b51815160209384036101000a60001901801990921691161790527f3a20494e53554646494349454e545f5045524d495353494f4e530000000000009190930190815260408051808303600519018152601a909201905280516105529550600194509201919050611e87565b6000610fc382611d59565b6000610fc0836001600160a01b038416611d5d565b6000610fc0836001600160a01b038416611da7565b6020810151805160009190821a9060c0821015611b00576000925050506104e5565b5060019392505050565b600080600090506000611b208460200151611c2f565b602085015185519181019250015b80821015611b8d57611b3f82611b96565b8201915080821115611b825760405162461bcd60e51b815260040180806020018281038252602c815260200180611ff3602c913960400191505060405180910390fd5b600190920191611b2e565b50909392505050565b80516000908190811a6080811015611bb15760019150611c28565b60b8811015611bc657607e1981019150611c28565b60c0811015611bf35760b78103600185019450806020036101000a85510460018201810193505050611c28565b60f8811015611c085760be1981019150611c28565b60f78103600185019450806020036101000a855104600182018101935050505b5092915050565b8051600090811a6080811015611c495760009150506104e5565b60b8811080611c64575060c08110801590611c64575060f881105b15611c735760019150506104e5565b60c0811015611c875760b5190190506104e5565b60f5190190506104e5565b80611c9c57611cd8565b5b60208110611cbc578251825260209283019290910190601f1901611c9d565b8251825160208390036101000a60001901801990921691161782525b505050565b81546000908210611d1f5760405162461bcd60e51b8152600401808060200182810382526022815260200180611f206022913960400191505060405180910390fd5b826000018281548110611d2e57fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000611d698383611d41565b611d9f57508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610fc3565b506000610fc3565b60008181526001830160205260408120548015611e635783546000198083019190810190600090879083908110611dda57fe5b9060005260206000200154905080876000018481548110611df757fe5b600091825260208083209091019290925582815260018981019092526040902090840190558654879080611e2757fe5b60019003818190600052602060002001600090559055866001016000878152602001908152602001600020600090556001945050505050610fc3565b6000915050610fc3565b604051806040016040528060008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611ec857805160ff1916838001178555611ef5565b82800160010185558215611ef5579182015b82811115611ef5578251825591602001919060010190611eda565b50611f01929150611f05565b5090565b6114fa91905b80821115611f015760008155600101611f0b56fe456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e744d696e7461626c654552433732315072656469636174653a20494e56414c49445f5349474e4154555245524c505265616465723a2042595445535f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b65524c505265616465723a204e554d5f4954454d535f4445434f4445445f4c454e4754485f4d49534d415443484d696e7461626c654552433732315072656469636174653a20455843454544535f42415443485f4c494d4954241ecf16d79d0f8dbfb92cbc07fe17840425976cf0667f022fe9877caa831b084d696e7461626c654552433732315072656469636174653a20494e56414c49445f5245434549564552524c505265616465723a204c4953545f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66524c505265616465723a2055494e545f4445434f4445445f4c454e4754485f4d49534d41544348a164736f6c6343000606000a","storage":{"0x1":"0x63","0x2":"0x1","0x73d5d1a274bdea1400ad3ea4d982f594abdfd528cde1486b6c617faa3ec116":"0x1","0x89011777cfe6194dd982545e7eb24725dfe9a1aacae299c76fc48ef5017ae650":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x89011777cfe6194dd982545e7eb24725dfe9a1aacae299c76fc48ef5017ae651":"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0x1","0xb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6":"0x4d696e7461626c654552433732315072656469636174653a20494e5355464649","0xb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf7":"0x4349454e545f5045524d495353494f4e53000000000000000000000000000000","0xba75a66b8132bebab85d36fd3638083da57ae3d78fbcd8cc41f73514287dadaf":"0x1","0xe6c7d8231a06d7cb67831aeabcbd43ba24e5e4c6569cf23405f1e558de8580e0":"0x2","0xe84508f2c7fa9c351146748b3025cb78b45df37d868e48c6a75102fecdeee645":"0x2","0xe84508f2c7fa9c351146748b3025cb78b45df37d868e48c6a75102fecdeee647":"0x0","0xf0df3dcda05b4fbd9c655cde3d5ceb211e019e72ec816e127a59e7195f2cd7f5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x5cc819c9915eadfcebd76952b8c1bc36cadd7376":{"nonce":2,"balance":"0x0","code":"0x608060405260043610610103575f3560e01c8063a900866b11610092578063f07ec37311610062578063f07ec373146102f7578063f2d12b1214610316578063f47b774014610329578063fb0f3ee114610116578063fd9f1e101461034c575f80fd5b8063a900866b1461028a578063b3a34c4c146102be578063e7acab24146102d1578063ed98a574146102e4575f80fd5b80637423eb3c116100d85780637423eb3c146101f757806379df72bd1461020b57806387201b411461022a578063881477321461024b578063a81744041461026a575f80fd5b801561011657806306fdde031461013e57806346423aa71461015f5780635b34b966146101d5575f80fd5b366101125761011061036b565b005b5f80fd5b610129610124366004615115565b6103f9565b60405190151581526020015b60405180910390f35b348015610149575f80fd5b50610152610408565b604051610135919061518f565b34801561016a575f80fd5b506101b36101793660046151a1565b5f9081526001602052604090205460ff808216926101008304909116916001600160781b03620100008204811692600160881b9092041690565b6040805194151585529215156020850152918301526060820152608001610135565b3480156101e0575f80fd5b506101e9610417565b604051908152602001610135565b348015610202575f80fd5b50610110610420565b348015610216575f80fd5b506101e96102253660046151b8565b6104c1565b61023d61023836600461524c565b6104f8565b6040516101359291906153f0565b348015610256575f80fd5b5061012961026536600461543f565b610571565b61027d61027836600461547d565b61058f565b60405161013591906154e3565b348015610295575f80fd5b506101e96102a43660046154f5565b6001600160a01b03165f9081526002602052604090205490565b6101296102cc36600461550e565b61062a565b6101296102df366004615553565b6106a3565b61023d6102f23660046155d7565b6106e1565b348015610302575f80fd5b506101e96103113660046154f5565b610784565b61027d610324366004615677565b6107a1565b348015610334575f80fd5b5061033d6107ea565b60405161013593929190615719565b348015610357575f80fd5b5061012961036636600461543f565b610801565b7f000000000000000000000000000000000000000000000000000000000000000180156103b357600263929eee145c146103b05763a61be9f05f52346020526024601cfd5b50565b63929eee1454806103e057600263929eee145c146103dc5763a61be9f05f52346020526024601cfd5b5050565b600381146103dc5763a61be9f05f52346020526024601cfd5b5f61040261080c565b92915050565b60606104126109c0565b905090565b5f6104126109d8565b63929eee14546001147f000000000000000000000000000000000000000000000000000000000000000180610453575080155b1561047157604051630f45b98b60e41b815260040160405180910390fd5b61049a7f000000000000000000000000145908bbcfc7b258e4d4d9a586f6e3249ae80216610a45565b6104b7576040516370a4078f60e01b815260040160405180910390fd5b5f63929eee145550565b5f806104cd6004610aa3565b90506104f16104e282610ab35b63ffffffff16565b610140830135610b30565b3590565b9392505050565b60608061055d61051361050b6004610aa3565b610c746104da565b61052a61052260046020610cdc565b610cfa6104da565b61054161053960046040610cdc565b610d526104da565b61055061053960046060610cdc565b89338a15028a0189610daa565b915091509b509b9950505050505050505050565b5f6104f161058a6105826004610aa3565b610de46104da565b610e3c565b606061061f6105a96105a16004610aa3565b610f5d6104da565b604080515f8082526020820190925290610601565b6105ee6040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816105be5790505b5061061961061160046020610cdc565b610fb56104da565b3361100d565b90505b949350505050565b5f6104f161064361063b6004610aa3565b61104b6104da565b604080515f808252602082019092529061069b565b6106886040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816106585790505b5084336110c1565b5f6106d76106bc6106b46004610aa3565b6112406104da565b6106cb61052260046020610cdc565b853386150286016110c1565b9695505050505050565b6060806107736106f46105a16004610aa3565b604080515f808252602082019092529061074c565b6107396040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816107095790505b5061075c61053960046020610cdc565b61076b61053960046040610cdc565b883389610daa565b915091509850989650505050505050565b6001600160a01b0381165f90815260208190526040812054610402565b60606107dc6107b361050b6004610aa3565b6107c261052260046020610cdc565b6107d161061160046040610cdc565b33861502860161100d565b90505b979650505050505050565b60605f806107f661129c565b925092509250909192565b5f6104f183836112e8565b5f61012435600281901c90600316600182118334158214806108315761083134611423565b506003841160a0810260240135906502030203010160d01b861a905f630101020360d01b881a6108648882898888611434565b9096509150506101c4600583901b01355f87600581111561088757610887615329565b036108bc5760443560243517156108a557636ab37ce75f526004601cfd5b6108af8482611751565b6108b7611809565b61099d565b6040805160208082528183019092525f9160208201818036833701905050905060028a60058111156108f0576108f0615329565b036109135761090e60c4356084353360e435610104355b8787611889565b610988565b60038a600581111561092757610927615329565b036109455761090e60c4356084353360e435610104355b87876118d4565b60048a600581111561095957610959615329565b036109735761090e60243533608435604435606435610907565b6109886024353360843560443560643561093e565b610992848261190a565b61099b816119c4565b505b6109a88689846119e8565b6109b0611a5e565b6001995050505050505050505090565b6060602080526707536561706f727460475260606020f35b5f6109e1611ab1565b600143034060801c335f525f60205260405f208054820192508281555050336001600160a01b03167f721c20121297512b72821b97f5326877ea8ecf4bb9948fea5bfcb6453074d37f82604051610a3a91815260200190565b60405180910390a290565b5f816001600160a01b0316600a5a610a5d9190615773565b6040515f8181818686fa925050503d805f8114610a95576040519150601f19603f3d011682016040523d82523d5f602084013e610a9a565b606091505b50909392505050565b5f813563ffffffff168201610402565b5f610ac661016060408051918201905290565b9050610ad58282610140611b28565b610af2610aeb610ae6846040610cdc565b611b31565b6040830152565b5f610b06610b01846060610cdc565b611b84565b9050610b13816060840152565b610b26610b1e825190565b610140840152565b50919050565b0190565b610140820151604080519084015180515f939284927fa66999307ad1bb4fde44d13a5d710bd7718e0c87c1eef68a571629fbf5b93d0292602090910190845b81811015610b9c578251601f1901805186825260c082208652905260209384019390920191600101610b6f565b508060051b6040512094505050505f7f42d81c6929ffdc4eb27a0808e40e82516ad42296c166065de7f812492304ff6e915060405160206060890151015f5b86811015610c08578151601f1901805186825260e082208552905260209283019290910190600101610bdb565b505060408051600587901b9020601f198a0180517ffa445660b7e21515a59617fcd68910b487aa5808b8abda3d78bc85df364b2c2f8252928b01805197815260608c018051938152610140909c019a8b5261018082209390915295909552939097525050925250919050565b5f8063ffffffff8335169050600581901b610c986020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610cca610cc4610cbf8484610cdc565b611240565b82850152565b602001610ca7565b5050505050919050565b5f6104f163ffffffff610cf46104ed8686610b2c8516565b16840190565b5f8063ffffffff8335169050600581901b610d1e6020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610d4a610cc4610d458484610cdc565b611bc7565b602001610d2d565b5f8063ffffffff8335169050600581901b610d766020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610da2610cc4610d9d8484610cdc565b611c09565b602001610d85565b60608036155f80610dbe8c8c85898b611c4c565b91509150610dd18c8b8b8b8b8787612029565b9450945050505097509795505050505050565b5f8063ffffffff8335169050600581901b610e086020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610e34610cc4610e2f8484610cdc565b61215b565b602001610e17565b5f610e45611ab1565b5f805f80855190505f5b81811015610f50575f878281518110610e6a57610e6a615792565b60209081029190910101518051909150600481608001516004811115610e9257610e92615329565b03610e9e575050610f48565b80519450610eab8161219e565b5f8181526001602052604081209850909650610ecd90879089903615156121d7565b50865460ff16610f455780610140015181606001515114610ef057610ef0612265565b610eff85878460200151612272565b865460ff191660011787556040517ff280791efe782edcf06ce15c8f4dff17601db3b88eb3805a0db7d77faf757f0490610f3c9088908490615895565b60405180910390a15b50505b600101610e4f565b5060019695505050505050565b5f8063ffffffff8335169050600581901b610f816020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610fad610cc4610fa88484610cdc565b61104b565b602001610f90565b5f8063ffffffff8335169050600581901b610fd96020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257611005610cc46110008484610cdc565b61230e565b602001610fe8565b60605f36151590505f806110258888858b5189611c4c565b9150915061103282612341565b61103f8887848885612380565b98975050505050505050565b5f61105e61020060408051918201905290565b60a0810180825290915061107a61107484610aa3565b82612453565b61108660016020840152565b61109260016040840152565b6110af6110a86110a3856020610cdc565b612489565b6060840152565b610b266110ba6124b1565b6080840152565b835160808101515f91906110e860048260048111156110e2576110e2615329565b146124cb565b5f80806110f78a36151561256c565b60408051600180825281830190925293965091945092505f9190816020015b61111e615027565b8152602001906001900390816111165790505090508a815f8151811061114657611146615792565b602002602001018190525061115b818b612764565b6111678684848b6128dd565b6040805160018082528183019092525f91602080830190803683375091925050503615156004878181111561119e5761119e615329565b146111c1576111af8d83885f6129dd565b6111bb86868684612a2f565b506111d3565b6111d0888e6080015183612b33565b95505b6111de888c8c612c03565b85825f815181106111f1576111f1615792565b6020026020010181815250506112088d8388612d26565b61122586895f01518a602001518d8c604001518d60600151612df3565b61122d611a5e565b5060019c9b505050505050505050505050565b5f61125361020060408051918201905290565b905061126760208381019083016040611b28565b60a0810180825261127a61107484610aa3565b61128b6110a86110a3856060610cdc565b610b266110ba6110a3856080610cdc565b60605f805f6112a9612e58565b90505f7f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c905060605f5281602052806040526303312e3660635260a05ff35b5f6112f1611ab1565b5f8083815b81811015611408573687878381811061131157611311615792565b90506020028101906113239190615977565b90505f61133360208301836154f5565b90505f61134660408401602085016154f5565b90505f61135960a0850160808601615996565b905081331483331417156004821417871796505f61138d61138261137a8790565b610ab36104da565b866101400135610b30565b5f8181526001602052604090819020805461ffff19166101001781559051909a509091506001600160a01b0380851691908616907f6bacc01dbe442496068f7d234edd811f1a5f833243e0aec824f86ab861f3c90d906113f09085815260200190565b60405180910390a385600101955050505050506112f6565b5050801561141857611418612f35565b506001949350505050565b63a61be9f05f52806020526024601cfd5b5f8061143f5f6124cb565b611447612f42565b426101643511154261014435111715611475576321ccfeb75f5261014435602052610164356040526044601cfd5b610204356102643510156114905763466aa6165f526004601cfd5b7f42d81c6929ffdc4eb27a0808e40e82516ad42296c166065de7f812492304ff6e608081905260a08790526060602460c037604060646101203760e060802061016052610264356102043560051b6102a0016001820181526020810190508881526080602460208301376101608860a0528760c0525f60e0525f6102043593505f5b84811015611566578060400261028401602081610100376040816101203760208101358317925060208401935060e0608020845260a0850194508b85528a6020860152604081606087013750600101611512565b6001850160051b610160206060526102643594505b848110156115b6578060400261028401925060a0840193508a845289602085015260408360608601376020830135919091179060010161157b565b506001600160a01b038111156115d3576339f3e3fd5f526004601cfd5b50505050505f7fa66999307ad1bb4fde44d13a5d710bd7718e0c87c1eef68a571629fbf5b93d029050806080528360a052606060c460c0376020610104610120375060c06080205f9081526020812060e05260843590611647826001600160a01b03165f9081526020819052604090205490565b7ffa445660b7e21515a59617fcd68910b487aa5808b8abda3d78bc85df364b2c2f60808190529091506040608460a03760605161010052896101205260a061014461014037816101e05261018060802094505050506102043560051b61018001828152336020820152608060408201526101206060820152600160808201528360a0820152606060c460c083013760a061026435026101e00160a4356084357f9d9af8e38d66c62e2c12f0225249fd9d721c54b83f48d9352c97c6cacdcb6f318385a35f60605260608101820160405250505f61172383612f8d565b905061172f8389612fde565b7101000000000000000000000000000001000182559150509550959350505050565b60c43560843560e4356101043584156117b9575f6040519050632671a55160e11b815260206004820152600160248201528660448201528460648201528360848201523360a48201528260c48201528160e48201526117b38682610104613033565b50611801565b60028660058111156117cd576117cd615329565b036117f457806001146117e3576117e3816130ea565b6117ef848433856130fb565b611801565b61180184843385856131b0565b505050505050565b346064356084356102643560061b5f80805b8381101561185a5761028481013592506102a481013591508683111561184357611843613287565b82870396506118528284613294565b60400161181b565b508585111561186b5761186b613287565b6118758486613294565b848611156118015761180133868803613294565b61189381836132ca565b816118ba57826001146118a9576118a9836130ea565b6118b5878787876130fb565b6118cb565b6118cb828260028a8a8a8a8a6132e8565b50505050505050565b6118dd83613367565b6118e781836132ca565b816118f9576118b587878787876131b0565b6118cb828260038a8a8a8a8a6132e8565b5f805f805f861561192f57505060843592503391505060c4356101043560e435611944565b50339350506084359150506024356064356044355b801561195257611952613379565b50600586901b6101e403356102643560061b5f80805b838110156119a95761028481013592506102a481013591508a156119935761199083876159b4565b95505b6119a1878a8486898f613386565b604001611968565b506119b886898988888e613386565b50505050505050505050565b60408151146119d05750565b5f6119dc826020015190565b90506103dc81836133bb565b611a048260a4355b331415600182116004909210919091161690565b15611a5957805f611a13825190565b9050608081901c63ffffffff8216611a3484826317b1f94282526001905250565b601c840163fb5014fc6060529350611a5060a4358886856133df565b5f6060526118cb565b505050565b7f00000000000000000000000000000000000000000000000000000000000000018015611a8f575f63929eee145d50565b63929eee145480611aa5575f63929eee145d5050565b50600163929eee145550565b7f00000000000000000000000000000000000000000000000000000000000000018015611af05763929eee145c156103b057637fa8a9875f526004601cfd5b63929eee145480611b135763929eee145c156103dc57637fa8a9875f526004601cfd5b600181146103dc57637fa8a9875f526004601cfd5b80838337505050565b5f63ffffffff8235166040519150808252602082018160051b81018060a084026020870183378293505b81841015611b745780845260209093019260a001611b5b565b60405250919392505050565b9052565b5f63ffffffff8235166040519150808252602082018160051b81018060c084026020870183378293505b81841015611b745780845260209093019260c001611bae565b5f611bd960a060408051918201905290565b9050611be782826080611b28565b611c04611bfd611bf8846080610cdc565b613427565b6080830152565b919050565b5f63ffffffff8235166040519150808252602082018160051b8101808360061b6020870183378293505b81841015611b7457808452602090930192604001611c33565b60605f611c5960016124cb565b86515f90600160e61b82351690806001600160401b03811115611c7e57611c7e61574b565b604051908082528060200260200182016040528015611ca7578160200160208202803683370190505b50945060010160051b91505f60205b83811015611ea8575f611ccc8c83613cce6104da565b90505f805f611cdb848e61256c565b6001600160781b0382166020880152919450925090505f829003611d025750505050611ea0565b6001600160781b0381166040808601919091528a8601849052845160a081015160c0820151608083015192909301518051600184119d909d179c600490931099509092915f5b81811015611dea575f838281518110611d6357611d63615792565b602002602001015190508b8151108d179c505f611d858989846080015161345e565b90508160800151826060015103611da25760608201819052611db7565b611db18989846060015161345e565b60608301525b5f611dd08360600151838a8a611dcb361590565b61349a565b606084018190526080909301929092525050600101611d48565b5087516060015180515f5b81811015611e94575f838281518110611e1057611e10615792565b602002602001015190505f611e2a8b8b846080015161345e565b90508160800151826060015103611e475760608201819052611e5c565b611e568b8b846060015161345e565b60608301525b5f611e718360600151838c8c611dcb36151590565b6060840181905260a0840180516080909501949094529092525050600101611df5565b50505050505050505050505b602001611cb6565b50506001600160e61b018103611ec057611ec06134ed565b50611ecb8888612764565b5f8060205b8381101561200e578581015192508215612006575f611ef28c83613cce6104da565b9050885f03611f0d575f878301819052602090910152612006565b60048151608001516004811115611f2657611f26615329565b14611fa957611f3f8188866001600587901c038e6134fa565b611f55575f878301819052602090910152612006565b602080820151604083015183516080810151930151611f8e9388936001600160781b039081169316913314156001909111168e17612a2f565b611fa4575f878301819052602090910152612006565b611fd4565b611fbb815f015182608001518c612b33565b878301819052935083611fd4575f602090910152612006565b886001900398505f815f01519050611fff85825f015183602001518c85604001518660600151612df3565b6001935050505b602001611ed0565b508061201c5761201c613555565b5050509550959350505050565b85518551606091829161203c81836159c7565b6001600160401b038111156120535761205361574b565b60405190808252806020026020018201604052801561208c57816020015b61207961505a565b8152602001906001900390816120715790505b5092505f5b828110156120e4576120bf8c5f8d84815181106120b0576120b0615792565b60200260200101518c8c613562565b8482815181106120d1576120d1615792565b6020908102919091010152600101612091565b505f5b8181101561213d576121168c60018c848151811061210757612107615792565b60200260200101518c5f613562565b848483018151811061212a5761212a615792565b60209081029190910101526001016120e7565b5061214b8b84888a896135b1565b9350505097509795505050505050565b5f61216c6040808051918201905290565b905061218661218261217d84610aa3565b61389a565b8252565b611c046121976110a3846020610cdc565b6020830152565b5f6121b38260600151518361014001516138b9565b81516001600160a01b03165f90815260208190526040902054610402908390610b30565b82545f90610100900460ff16156121fe5781156121f7576121f7856138c9565b505f610622565b83546201000090046001600160781b0316801561225957831561222957612224866138da565b612259565b8454600160881b90046001600160781b0316811061225957821561225057612250866138eb565b5f915050610622565b50600195945050505050565b632165628a5f526004601cfd5b33831480156122815750505050565b5f61228a612e58565b61190160f01b5f9081526002828152602287815260428320908390528651939450929190601f601d840116106102e260621984011016156122f4576122cf86886138fc565b61190160f01b5f908152600286905260228281526042822091905290975090506122f7565b50815b612304888285858a613992565b5050505050505050565b5f61231f6040808051918201905290565b9050612330612182610d9d84610aa3565b611c04612197610d9d846020610cdc565b80518060051b6040019050602082038051602082527f4b9f2d36e1b4c93de62cc077b00b1a91d84b6c31b4a14e012718dcca230689e78383a190525050565b8351606090806001600160401b0381111561239d5761239d61574b565b6040519080825280602002602001820160405280156123d657816020015b6123c361505a565b8152602001906001900390816123bb5790505b5091505f5b81811015612439575f8782815181106123f6576123f6615792565b6020026020010151905061241389825f0151836020015185613adb565b84838151811061242557612425615792565b6020908102919091010152506001016123db565b5061244787838787876135b1565b50505b95945050505050565b6124608282610160611b28565b612471610aeb610ae6846040610cdc565b6103dc612482610b01846060610cdc565b6060830152565b6040518135601f0163ffffffe01660200180838337913563ffffffff16815290810160405290565b5f6124c3602060408051918201905290565b5f8152905090565b7f000000000000000000000000000000000000000000000000000000000000000180156125185763929eee145c1561250a57637fa8a9875f526004601cfd5b8160010163929eee145d5050565b63929eee14548061254a5763929eee145c1561253b57637fa8a9875f526004601cfd5b8260010163929eee145d505050565b6001811461255f57637fa8a9875f526004601cfd5b505060020163929eee1455565b5f805f80855f015190506125898160a001518260c0015187613c80565b61259c57505f925082915081905061275d565b602086015160408701516001600160781b0391821694501691505f6004826080015160048111156125cf576125cf615329565b036125fc57600183850218905080156125ea576125ea613ca3565b506001935083925082915061275d9050565b50818311831517801561261157612611613ca3565b608082015160011615848411161561262b5761262b613cb0565b6126348261219e565b5f81815260016020526040812091965061265290879083908a6121d7565b61266557505f935083925061275d915050565b805460ff1661268057612680835f0151878a60600151612272565b8054608881901c8061269457869150612757565b6001600160781b038260101c169150600186036126b8578181039650809550612757565b8086036126d357908601858103868211029096039590612757565b80860296810291909502810186810387821102918290039695919003906001600160781b0386111561275757612717565b5f5b8215610b2657908290069190612706565b61272a6127248784612704565b88612704565b8015019687900496909504946001600160781b0386111561275757634e487b715f5260116020526024601cfd5b50505050505b9250925092565b805182515f5b82811015612853575f84828151811061278557612785615792565b602002602001015190505f815f015190508381106127aa576127aa8260200151613cbd565b5f8782815181106127bd576127bd615792565b6020026020010151905080602001516001600160781b03165f036127e35750505061284b565b80516040808201519085015163bfb3f8ce5f8760200151600181111561280b5761280b615329565b14612827575f61281c856060613cce565b9350636088d7de9150505b8251821061283857805f526004601cfd5b612843838389613cd9565b505050505050505b60010161276a565b505f5b818110156128d6575f85828151811061287157612871615792565b6020026020010151905080602001516001600160781b03165f0361289557506128ce565b8051608081015160608201516128b29085908363a8930e9a613d8c565b6128ca8483604001518363d69293326104da613d8c90565b5050505b600101612856565b5050505050565b60a084015160c08501516040860151515f805b8281101561295a575f8960400151828151811061290f5761290f615792565b602002602001015190505f815f01519050801584179350505f612946826060015183608001518c8c8b8b612941361590565b613df3565b6060830152506080018690526001016128f0565b5060808801516004811082168015612974576129746134ed565b505050506060860151515f5b81811015612304575f8860600151828151811061299f5761299f615792565b602002602001015190505f6129c4826060015183608001518b8b8a8a61294136151590565b60608301525060a0810151608090910152600101612980565b8351608081015160208201513314156001821160049092109190911616156128d6575f80612a12858489608001518988613e2e565b63fb5014fc6060529092509050611a5083602001518684846133df565b5f848152600160205260408120805482908290608881901c80612a5457889150612adc565b6001600160781b038260101c169150808803612a7857908801878111935090612adc565b97880297808802979190910288018781119350906001600160781b038083119089111715612adc57612aaa8883612704565b8015019788900497909104906001600160781b038083119089111715612adc57634e487b715f5260116020526024601cfd5b508215612b15578515612b09576040516310fda3e160e01b8152600481018a905260240160405180910390fd5b5f945050505050610622565b8660881b8160101b1760011782556001945050505050949350505050565b5f83610140015184606001515114612b4d57612b4d612265565b83515f8080612b5c8888613fac565b915091505f8082845f885af16001600160a01b0385165f908152600260205260409020805460018101909155606086901b189550925082612bbb578515612bae57612ba5614056565b612bae8561409d565b505f93506104f192505050565b505050505f805f612bd8876040015188606001516104da6140ae90565b925092509250825f14612bee57612bee8461409d565b60408701919091526060860152509392505050565b6040805160208082528183019092525f916020820181803683375050506040850151519091505f5b81811015612c7b575f86604001518281518110612c4a57612c4a615792565b60200260200101519050846080820152612c7281885f0151896101200151876104da61432790565b50600101612c2b565b50506060840151515f90815b81811015612d09575f87606001518281518110612ca657612ca6615792565b602002602001015190505f6005811115612cc257612cc2615329565b81516005811115612cd557612cd5615329565b03612cf1574793508381606001511115612cf157612cf1613287565b612d00813389886143276104da565b50600101612c87565b5050612d14826119c4565b504780156128d6576128d63382613294565b8251608081015160208201515f92839283928392916004811060019091111633909114151615612d8857612d69612d6361010083015190565b5190565b8861441c565b9093509150612d7a60208201612d5f565b945063fb5014fc9350612dd4565b600481608001516004811115612da057612da0615329565b0361230457805194505f8560601b9050612dc187838b608001518b8561445d565b639397928596509094509250612dd49050565b612dde6060859052565b612dea858785856133df565b5f606052612304565b60608290506060829050856001600160a01b0316876001600160a01b03167f9d9af8e38d66c62e2c12f0225249fd9d721c54b83f48d9352c97c6cacdcb6f318a888686604051612e469493929190615a13565b60405180910390a35050505050505050565b5f7f00000000000000000000000000000000000000000000000000000000000005394614612f10575060408051608080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f5f9081527f32b5c112df393a49218d7552f96b2eeb829dfb4272f4f24eef510a586b85feef6020527f95f740a33d720b7cd93c75d515ac95ca3bbaa2594cce46ea48e00974ea8fcd14855246606090815230845260a08220949095529093529190915290565b507f8bebed3dbe91a82da0dc94c8d370c160ad6db1b32164303e65b8544bae7e2f5590565b63fed398fc5f526004601cfd5b600435602014610224356102401416610244356102606102643560061b01141660186101243510600160a01b60843560a4351760c4356024351717101616806103b0576103b0614528565b5f8181526001602081905260409091209060843590612fb290849084903615156121d7565b50815460ff16610b2657610b268184612fd9602463ffffffff6102443516016124896104da565b612272565b5f612feb8260a4356119f0565b15610402575f805f612ffc86614535565b63fb5014fc6060529194509250905061301c60a43587601c8601856133df565b5f60605260209190910160801b1781529392505050565b604080517f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c60ff60a01b175f90815260208690527f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f83526055600b20919092526001600160a01b031690505f805f805260205f85875f875af191505f519050816130c8576130bf614056565b6130c8836145ed565b6001600160e01b03198116632671a55160e11b146118015761180186846145fe565b6369f958275f52806020526024601cfd5b833b61311257635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af1806131a2573d1561318057601f3d0160051c8260051c8160030281831115613169578183036003028280028480020360091c01015b5a60208201101561317c573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b6131c757635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af18061326c573d1561324b57601f3d0160051c8560051c8160030281831115613234578183036003028280028480020360091c01015b5a602082011015613247573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b638ffff9805f526004601cfd5b61329d81613367565b5f805f805f85875af1905080611a59576132b5614056565b63bc806b965f5282602052816040526044601cfd5b5f6132d6836020015190565b9050818114611a5957611a59836119c4565b5f60208851036133225750604080885260208089018a9052632671a55160e11b918901919091526044880152600160648801819052613331565b50606487018051600101908190525b603c60c082028901038781528660208201528560408201528460608201528360808201528260a082015250505050505050505050565b806103b0576391b3e5145f526004601cfd5b636ab37ce75f526004601cfd5b61338f83613367565b61339981836132ca565b816133aa576117ef86868686614613565b611801828260018989895f8a6132e8565b6064810151604082019060c0026044016133d6848383613033565b50506020905250565b5f806001600160e01b03198451165f805260205f85875f8b5af15f51909350149050816134185761340e614056565b846080526024607cfd5b8061180157846080526024607cfd5b5f8063ffffffff83351690506001810160051b61344a8160408051918201905290565b9250613457848483611b28565b5050919050565b5f82840361346d5750806104f1565b82848309156134835763c63cf0895f526004601cfd5b5f61348e8584615aaf565b93909304949350505050565b5f8486146134e357838303428590038082035f6134b7838a615aaf565b6134c1838c615aaf565b6134cb91906159c7565b9050858487830304018115150294505050505061244a565b5092949350505050565b6312d3f5a35f526004601cfd5b8451608081015160208201515f92916004811060019091111633909114151615610f50575f8061353187848b608001518b8a613e2e565b9150915061354b836020015188848463fb5014fc8a614707565b935050505061244a565b63d5da9a1b5f526004601cfd5b61356a61505a565b83515f0361357b5761357b85614774565b5f85600181111561358e5761358e615329565b036135a45761359f86858385614785565b61244a565b61244a86858333876148f5565b84516060905f816001600160401b038111156135cf576135cf61574b565b6040519080825280602002602001820160405280156135f8578160200160208202803683370190505b506040805160208082528183019092529192505f9190602082018180368337505089519192505060010160051b60205b81811015613687575f61363e8b83613cce6104da565b8051606081015191925090801561367c57478111825115161561366857638ffff9805f526004601cfd5b61367c828460200151856040015189614327565b505050602001613628565b50505f5b838110156137f3575f8a82815181106136a6576136a6615792565b6020026020010151905080602001516001600160781b03165f036136ed575f8483815181106136d7576136d7615792565b91151560209283029190910190910152506137eb565b600184838151811061370157613701615792565b911515602092830291909101909101528051604081015180515f5b81811015613786575f83828151811061373757613737615792565b6020026020010151905080606001515f1461377357608081018051908e9052855161012087015161376d9184918c6143276104da565b60808201525b608081015160609091015260010161371c565b505050606081015180515f5b818110156137e5575f8382815181106137ad576137ad615792565b602002602001015190505f81606001519050805f146137d1576137d1888483614a2c565b5060a0810151606090910152600101613792565b50505050505b60010161368b565b506137fd816119c4565b47801561380e5761380e3382613294565b8515613884575f5b848110156138825783818151811061383057613830615792565b60200260200101511561387a5761387a8b828151811061385257613852615792565b60200260200101518a8b848151811061386d5761386d615792565b6020026020010151612d26565b600101613816565b505b61388c611a5e565b509098975050505050505050565b5f6138ad61016060408051918201905290565b9050611c048282612453565b808210156103dc576103dc614a45565b631a5155745f52806020526024601cfd5b63ee9e0e635f52806020526024601cfd5b6310fda3e15f52806020526024601cfd5b5f805f84516001811660410380820360051c9250808752806020018701915050805160e81c6003820191506001811660051b868152825160208218525060015b838110156139685760405f2082821c60051b60209081169182529384018051919094185260010161393c565b50505060405f2091505f61397b82614a52565b5f9081526020939093525050604090209392505050565b5f805f528151602083038051826041035f600182116139f557604087015160608801515f1a83156139d657601b8260ff1c0190506001600160ff1b03821660408a01525b88528a855260205f60808760015afa508385528588526040880152505f515b8a148a1515169450849050613abe57858552604082526044850380516040870351630b135d3f60e11b835289604089035260205f60648b01858f5afa96508615613ab257630b135d3f60e11b5f5114613ab2578b3b15613a5c57634f7fb80d5f526004601cfd5b6001866041031115613a7557638baa579f5f526004601cfd5b64010100000060608901515f1a1a15604187141615613aa557631f003d0a5f5260608801515f1a6020526024601cfd5b63815e1d645f526004601cfd5b8385529152603f198601525b5050508061180157613ace614056565b634f7fb80d5f526004601cfd5b613ae361505a565b8251158451151715613afc576398e9db6e5f526004601cfd5b613b0461505a565b613b118685835f806148f5565b805160608101515f03613b2657509050610622565b613b368787858460800151614785565b82516040828101519082015160208085015190840151855185511891181791181715613b6d5763bced929d5f52846020526024601cfd5b806060015182606001511115613bf4575f865f81518110613b9057613b90615792565b60200260200101519050816060015183606001510389825f015181518110613bba57613bba615792565b60200260200101515f015160600151826020015181518110613bde57613bde615792565b6020026020010151606001818152505050613c75565b5f875f81518110613c0757613c07615792565b60200260200101519050826060015182606001510389825f015181518110613c3157613c31615792565b60200260200101515f015160400151826020015181518110613c5557613c55615792565b602002602001015160600181815250508260600151826060018181525050505b505050949350505050565b428084111590831116818015613c94575080155b156104f1576104f18484614e61565b635a052b325f526004601cfd5b63a11b63ff5f526004601cfd5b63133c37c65f52806020526024601cfd5b5f6104f18284015190565b5f838381518110613cec57613cec615792565b602002602001015190505f815f01519050613d078160031090565b613d1357613d13614e76565b60408201518015613d3657613d318460600151828660800151614e83565b613d49565b60808401515115613d4957613d49614ecd565b6004821460030383816005811115613d6357613d63615329565b90816005811115613d7657613d76615329565b9052505050606090920151604090910152505050565b82515f5b81811015611801575f858281518110613dab57613dab615792565b60209081029190910101518051604082015191925090600382116004881415821515171615613de557855f5288602052836040526044601cfd5b505050806001019050613d90565b5f868803613e0d57613e0686868961345e565b90506107df565b6107dc613e1b87878b61345e565b613e2688888b61345e565b86868661349a565b5f805f613e39614eda565b6301e4d72a815260208082015260408101898152336060830152601c820194509091508751604082015287613e79613e7260a083015190565b60e0840152565b613e8f613e8760c083015190565b610100840152565b613ea5613e9d60e083015190565b610120840152565b610140613eb3816060850152565b5f613ebf604084015190565b90505f613ece82848701614ee4565b928301929050613edf836080870152565b5f613eeb606086015190565b90505f613efa82868901614f4a565b948501949050613f0b8560a0890152565b5f613f188e878a01614faf565b959095019450613f298560c0890152565b8685015f613f378e83614fce565b602497019687019a50613f539050613f4e8c8c0190565b614ffe565b8060408b901b60808b901b17178f610100018181525050613f7d8c82611b8090919063ffffffff16565b60058c8e51613f8c91906159b4565b613f97911b8b6159b4565b99505050505050505050509550959350505050565b5f8083613fb7614eda565b639891976581523360208201908152608060408301819052601c9092019450905f613fe3604085015190565b90505f613ff282848601614ee4565b928301929050614003836040860152565b5f61400f606087015190565b90505f61401e82868801614ee4565b94850194905061402f856060880152565b895f61403d82898901614faf565b9a9d96909a016004019b50949950505050505050505050565b3d1561409b57601f3d0160051c60405160051c8160030281831115614088578183036003028280028480020360091c01015b5a602082011015611a59573d5f803e3d5ffd5b565b63939792855f52806020526024601cfd5b60603d105f8080808080866141205760405f803e5f51935060205192503d60208501113d60208501118082179850505086614120576020845f3e5f51915060208360203e60205190508160071b60208501018160a0026020850101803d10823d101761ffff8486171117985050505f80525b86614152575f8061413584602088018d61415b565b9250975061414783602087018c61423b565b929092179850909550505b5050505061275d565b5f806040519150825160c08602602001830160405285835260208660010160051b8085018360010160051b8701614199858b81811090829003020190565b60010160051b8a861196505b808510156141f957828589015260808a843e6060830151955085608084015260608201518681116141d685856142e2565b17881797505060808a01995060a08301925060a0820191506020850194506141a5565b50505b8183101561422f578083870152608088823e6060810151608082015260808801975060a0810190506020830192506141fc565b50505050935093915050565b604051815180851190808603818710028101602060e08202850181016040528185526001928301600590811b87019390920190911b908185015b8282101561422f57808287015260a088823e60206060890160a083013e606081015160608501516142b26080840151608088015180159114171590565b818311176142c084886142e2565b60a09b909b019a179690961795505060c0938401936020929092019101614275565b5f81516040830151801560038311161561430457506040840151600119909101905b604085015181148551831460208701516020870151141616159250505092915050565b5f8451600581111561433b5761433b615329565b0361437857604084015160208501516001600160a01b0316171561436157614361613379565b61437384608001518560600151613294565b614416565b60018451600581111561438d5761438d615329565b036143be576040840151156143a4576143a4613379565b614373846020015184866080015187606001518686613386565b6002845160058111156143d3576143d3615329565b036143f7576143738460200151848660800151876040015188606001518787611889565b61441684602001518486608001518760400151886060015187876118d4565b50505050565b608082901c63ffffffff604084901c811690808516906144449084906317b1f94290611b8016565b601c830192506144548482614fce565b50509250929050565b5f80614467614eda565b63f4dd92ce815287841860a0820152601c8101925060200160a0808252875f614491604083015190565b90505f6144a082858701614ee4565b9384019390506144b1846020870152565b5f6144bd606085015190565b90505f6144cc82878901614f4a565b9586019590506144dd866040890152565b5f6144ea8d888a01614faf565b9687019690506144fb8760608a0152565b5f6145088d898b01614fce565b905080880197508760040199505050505050505050509550959350505050565b6339f3e3fd5f526004601cfd5b6301e4d72a6102043560051b6080019081525f808260208082015260408101858152336060830152601c919091019061456f608435610aeb565b61458061014460e083016060611b28565b61014061458e816060840152565b61459c60a082016080840152565b61016060a06102643581029290920101906145b8908290840152565b6145c25f82840152565b6020016145d08160c0840152565b5f9181019182526020820196909652939560449095019492505050565b63d13d53d45f52806020526024601cfd5b631cf99b265f5281602052806040526044601cfd5b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166146f85780873b1515166146f857806146e757816146ca573d156146a957601f3d0160051c8360051c8160030281831115614692578183036003028280028480020360091c01015b5a6020820110156146a5573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b5f805f6001600160e01b03198751165f805260205f888a5f8e5af15f5190935014905081614753578361473e575f925050506106d7565b614746614056565b845f52876020526024601cfd5b8061476557845f52876020526024601cfd5b50600198975050505050505050565b63375c24c15f52806020526024601cfd5b5f805f85865160051b87015b808210156148a2576020820191508851825151106147b1576147b16148d6565b81515160051b60208a01015180516020845101515f6040830151602085015115815184101517156147e6575050505050614791565b8260051b60208201015191505060608101935083518901915083511589831060011b17881797508198505f84528a51935086156001811461484f5760608220881860408d01516101208601511860208e015186511817171561484a5761484a6148d6565b614898565b8151855260208201516020860152604082015160408601528a6080860152835160208d015261012084015160408d015260608520975060208d0192508683181561489857865183525b5050505050614791565b5050508160608551015280156148cf57600181036148c7576391b3e5145f526004601cfd5b6148cf6148e3565b5050614416565b637fda72795f526004601cfd5b634e487b715f5260116020526024601cfd5b5f805f86875160051b88015b808210156149f7576020820191508151518a518110614922576149226148d6565b8060051b60208c01015190506020835101515f606083510151602084015115815184101517156149555750505050614901565b8260051b60208201015191505060608101925082518801915082511588831060011b17871796508197505f83528a5192508515600181146149a75760a0822087146149a2576149a26148d6565b6149ee565b815184526020820151602085015260408201516040850152608082015160808501528a60208d01528960408d015260a08220965060208d019250858318156149ee57855183525b50505050614901565b50508551606001839052508015614a255760018103614a1d576391b3e5145f526004601cfd5b614a256148e3565b50506128d6565b63a5f542085f528260205281604052806060526064601cfd5b63466aa6165f526004601cfd5b5f614e58565b5f6009821015614bb1576005821015614b0e576003821015614ac1577f832c58a5b611aadcfa6a082ac9d04bace53d8278387f10040347b7e98eb5b30260018314027fbf8e29b89f29ed9b529c154a63038ffca562f8d7cd1e2545dda53a1b582dde3018610402565b7ff3e8417a785f980bdaf134fa0274a6bf891eeb8195cd94b09d2aa651046e28bc60038314027fa02eb7ff164c884e5e2c336dc85f81c6a93329d8e9adf214b32729b894de2af118610402565b6007821015614b64577f25d02425402d882d211a7ab774c0ed6eca048c4d03d9af40132475744753b2a360058314027f1c19f71958cdd8f081b4c31f7caf5c010b29d12950be2fa1c95070dc47e30b5518610402565b7fb58d772fb09b426b9dece637f61ca9065f2b994f1464b51e9207f55f7c8f594860078314027f7ff98d9d4e55d876c5cfac10b43c04039522f3ddfb0ea9bfe70c68cfb5c7cc1418610402565b6011821015614d0957600d821015614c6657600b821015614c19577f6f0ec38c21f6f583ab7f3c5413c773ffd5344c34fde1d390958e438bf667448f60098314027fd1d97d1ef5eaa37a4ee5fbf234e6f6d64eb511eb562221cd7edfbdde0848da0518610402565b7f32f4e7485d6485f9f6c255929b9905c62ba919758bbe231f231eaeecf33d810c600b8314027fbb98d87cc12922b83759626c5f07d72266da9702d19ffad6a514c73a89002f5f18610402565b600f821015614cbc577f8df51df98847160517f5b1186b4bc3f418d98b8a7f17f1292f392d79d600d79e600d8314027f6b5b04cbae4fcb1a9d78e7b2dfc51a36933d023cf6e347e03d517b472a85259018610402565b7fcc4886e37eedd9aacd6c1c2c9247197a621a71282e87a7cbc673f3736d9aa141600f8314027f1da3eed3ecef6ebaa6e5023c057ec2c75150693fd0dac5c90f4a142f9879fde818610402565b6015821015614db5576013821015614d68577f2d7a3ed6dab270fdb8e054b2ad525f0ce2a8b89cc76c17f0965434740f673a5560118314027fc3939feff011e53ab8c35ca3370aad54c5df1fc2938cd62543174fa6e7d8587718610402565b7f54b3212a178782f104e0d514b41a9a5c4ca9c980bf6597c3cecbf280917e202a60138314027f5a4f867d3d458dabecad65f6201ceeaba0096df2d0c491cc32e6ea4e6435001718610402565b6017821015614e0b577fbb40bf8cea3a5a716e2b6eb08bbdac8ec159f82f380783db3c56904f15a43d0460158314027f3bd8cff538aba49a9c374c806d277181e9651624b3e31111bc0624574f8bca1d18610402565b7f403be09941a31d05cfc2f896505811353d45d38743288b016630cce39435476a60178314027f1d51df90cba8de7637ca3e8fe1e3511d1dc2f23487d05dbdecb781860c21ac1c18610402565b61040282614a58565b6321ccfeb75f5281602052806040526044601cfd5b6394eb6af65f526004601cfd5b5f835f5260205f2060208301835160051b81015b80821015614ebe57815180841160051b93845260209384185260405f209290910190614e97565b50508314905080614416576144165b6309bde3395f526004601cfd5b5f61041260405190565b5f825180835260208401602084018260051b82015b80831015614f375782518051835260208101516020840152604081015160408401526060810151606084015250602083019250608082019150614ef9565b5050508060071b60200191505092915050565b5f80614f54845190565b8084529050602084810190600583901b860181019085015b82821115614f9c575f614f7e84615008565b9050614f8c818360a0615011565b506020929092019160a001614f6c565b60a0840260200194505050505092915050565b5f63ffffffe0603f614fbf855190565b01169050610402838383615011565b5f80614fd8845190565b8084529050600581901b614ff3602086810190860183615011565b602001949350505050565b6103b06040829052565b5f610402825190565b8082828560045afa80153d151715614416575f80fd5b6040518060a0016040528061503a61509c565b81525f602082018190526040820152606080820181905260809091015290565b60408051610100810182525f606082018181526080830182905260a0830182905260c0830182905260e083018290528252602082018190529181019190915290565b6040518061016001604052805f6001600160a01b031681526020015f6001600160a01b0316815260200160608152602001606081526020015f60048111156150e6576150e6615329565b81525f6020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b5f60208284031215615125575f80fd5b81356001600160401b0381111561513a575f80fd5b820161024081850312156104f1575f80fd5b5f81518084525f5b8181101561517057602081850181015186830182015201615154565b505f602082860101526020601f19601f83011685010191505092915050565b602081525f6104f1602083018461514c565b5f602082840312156151b1575f80fd5b5035919050565b5f602082840312156151c8575f80fd5b81356001600160401b038111156151dd575f80fd5b820161016081850312156104f1575f80fd5b5f8083601f8401126151ff575f80fd5b5081356001600160401b03811115615215575f80fd5b6020830191508360208260051b850101111561522f575f80fd5b9250929050565b80356001600160a01b0381168114611c04575f80fd5b5f805f805f805f805f805f60e08c8e031215615266575f80fd5b6001600160401b03808d35111561527b575f80fd5b6152888e8e358f016151ef565b909c509a5060208d013581101561529d575f80fd5b6152ad8e60208f01358f016151ef565b909a50985060408d01358110156152c2575f80fd5b6152d28e60408f01358f016151ef565b909850965060608d01358110156152e7575f80fd5b506152f88d60608e01358e016151ef565b909550935060808c0135925061531060a08d01615236565b915060c08c013590509295989b509295989b9093969950565b634e487b7160e01b5f52602160045260245ffd5b60068110611b8057611b80615329565b61535882825161533d565b6020818101516001600160a01b0390811691840191909152604080830151908401526060808301519084015260809182015116910152565b5f815180845260208085019450602084015f5b838110156153e55781516153b888825161534d565b808401516001600160a01b031660a08901526040015160c088015260e090960195908201906001016153a3565b509495945050505050565b604080825283519082018190525f906020906060840190828701845b8281101561542a57815115158452928401929084019060010161540c565b50505083810360208501526106d78186615390565b5f8060208385031215615450575f80fd5b82356001600160401b03811115615465575f80fd5b615471858286016151ef565b90969095509350505050565b5f805f8060408587031215615490575f80fd5b84356001600160401b03808211156154a6575f80fd5b6154b2888389016151ef565b909650945060208701359150808211156154ca575f80fd5b506154d7878288016151ef565b95989497509550505050565b602081525f6104f16020830184615390565b5f60208284031215615505575f80fd5b6104f182615236565b5f806040838503121561551f575f80fd5b82356001600160401b03811115615534575f80fd5b830160408186031215615545575f80fd5b946020939093013593505050565b5f805f805f60808688031215615567575f80fd5b85356001600160401b038082111561557d575f80fd5b9087019060a0828a031215615590575f80fd5b909550602087013590808211156155a5575f80fd5b506155b2888289016151ef565b909550935050604086013591506155cb60608701615236565b90509295509295909350565b5f805f805f805f8060a0898b0312156155ee575f80fd5b88356001600160401b0380821115615604575f80fd5b6156108c838d016151ef565b909a50985060208b0135915080821115615628575f80fd5b6156348c838d016151ef565b909850965060408b013591508082111561564c575f80fd5b506156598b828c016151ef565b999c989b509699959896976060870135966080013595509350505050565b5f805f805f805f6080888a03121561568d575f80fd5b87356001600160401b03808211156156a3575f80fd5b6156af8b838c016151ef565b909950975060208a01359150808211156156c7575f80fd5b6156d38b838c016151ef565b909750955060408a01359150808211156156eb575f80fd5b506156f88a828b016151ef565b909450925061570b905060608901615236565b905092959891949750929550565b606081525f61572b606083018661514c565b6020830194909452506001600160a01b0391909116604090910152919050565b634e487b7160e01b5f52604160045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b5f8261578d57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f815180845260208085019450602084015f5b838110156153e55781516157ce88825161533d565b838101516001600160a01b03168885015260408082015190890152606080820151908901526080908101519088015260a090960195908201906001016157b9565b5f815180845260208085019450602084015f5b838110156153e557815161583788825161533d565b808401516001600160a01b0390811689860152604080830151908a0152606080830151908a0152608080830151908a015260a091820151169088015260c09096019590820190600101615822565b60058110611b8057611b80615329565b828152604060208201526158b56040820183516001600160a01b03169052565b5f60208301516158d060608401826001600160a01b03169052565b5060408301516101608060808501526158ed6101a08501836157a6565b91506060850151603f198584030160a086015261590a838261580f565b925050608085015161591f60c0860182615885565b5060a085015160e085015260c0850151610100818187015260e0870151915061012082818801528188015192506101409150828288015280880151848801525080870151610180870152505050809150509392505050565b5f823561015e1983360301811261598c575f80fd5b9190910192915050565b5f602082840312156159a6575f80fd5b8135600581106104f1575f80fd5b818103818111156104025761040261575f565b808201808211156104025761040261575f565b5f815180845260208085019450602084015f5b838110156153e557615a0087835161534d565b60a09690960195908201906001016159ed565b5f6080808301878452602060018060a01b03808916602087015260406080604088015283895180865260a08901915060208b0195505f5b81811015615a8b578651615a5f84825161533d565b808701518616848801528481015185850152606090810151908401529585019591870191600101615a4a565b50508781036060890152615a9f818a6159da565b9c9b505050505050505050505050565b80820281158282048414176104025761040261575f56fea164736f6c6343000818000a","storage":{}},"0x6265cc8d1b28edfd4d76c80bf774c0d446fffbde":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610090575f3560e01c80633f15457f116100635780633f15457f1461010f5780637adbf973146101225780637dc0d1d0146101355780638bbedf7514610147578063be27b22c1461015a575f80fd5b806301ffc9a7146100945780631ecfc411146100bc578063224199c2146100d157806330349ebe146100e4575b5f80fd5b6100a76100a23660046115b1565b61016d565b60405190151581526020015b60405180910390f35b6100cf6100ca3660046115ef565b6101a3565b005b6100cf6100df3660046117e0565b6102de565b6002546100f7906001600160a01b031681565b6040516001600160a01b0390911681526020016100b3565b6001546100f7906001600160a01b031681565b6100cf6101303660046115ef565b61063c565b5f546100f7906001600160a01b031681565b6100cf610155366004611889565b61076d565b6100cf61016836600461190b565b6107f1565b5f6001600160e01b031982166301ffc9a760e01b148061019d57506001600160e01b031982166317d8f49b60e01b145b92915050565b6001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa1580156101ea573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061020e919061196b565b90505f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561024d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610271919061196b565b9050336001600160a01b03821614610287575f80fd5b600280546001600160a01b0319166001600160a01b0385169081179091556040519081527f9176b7f47e4504df5e5516c99d90d82ac7cbd49cc77e7f22ba2ac2f2e3a3eba8906020015b60405180910390a1505050565b5f546040516321ae60b160e11b81526001600160a01b039091169063435cc1629061030f90879087906004016119d3565b5f604051808303815f875af115801561032a573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526103519190810190611a6b565b92505f805f610360888761088b565b91945092509050336001600160a01b038216146103da5760405162461bcd60e51b815260206004820152602d60248201527f4f6e6c79206f776e65722063616e2063616c6c2070726f7665416e64436c616960448201526c36abb4ba342932b9b7b63b32b960991b60648201526084015b60405180910390fd5b6001600160a01b038416156105bb576001600160a01b03851661044e5760405162461bcd60e51b815260206004820152602660248201527f43616e6e6f74207365742061646472206966207265736f6c766572206973206e6044820152651bdd081cd95d60d21b60648201526084016103d1565b6001546040516305ef2c7f60e41b815260048101859052602481018490523060448201526001600160a01b0387811660648301525f608483015290911690635ef2c7f09060a4015f604051808303815f87803b1580156104ac575f80fd5b505af11580156104be573d5f803e3d5ffd5b505050505f83836040516020016104df929190918252602082015260400190565b60408051808303601f1901815290829052805160209091012062d5fa2b60e81b8252600482018190526001600160a01b03878116602484015290925087169063d5fa2b00906044015f604051808303815f87803b15801561053e575f80fd5b505af1158015610550573d5f803e3d5ffd5b5050600154604051635b0fc9c360e01b8152600481018590526001600160a01b0386811660248301529091169250635b0fc9c391506044015f604051808303815f87803b15801561059f575f80fd5b505af11580156105b1573d5f803e3d5ffd5b5050505050610632565b6001546040516305ef2c7f60e41b815260048101859052602481018490526001600160a01b03838116604483015287811660648301525f608483015290911690635ef2c7f09060a4015f604051808303815f87803b15801561061b575f80fd5b505af115801561062d573d5f803e3d5ffd5b505050505b5050505050505050565b6001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa158015610683573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106a7919061196b565b90505f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106e6573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061070a919061196b565b9050336001600160a01b03821614610720575f80fd5b5f80546001600160a01b0319166001600160a01b0385169081179091556040519081527fb3eacd0e351fafdfefdec84e1cd19679b38dbcd63ea7c2c24da17fd2bc3b3c0e906020016102d1565b5f546040516321ae60b160e11b81526001600160a01b039091169063435cc1629061079e90859085906004016119d3565b5f604051808303815f875af11580156107b9573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526107e09190810190611a6b565b90506107ec83826107f1565b505050565b5f805f6107fe858561088b565b6001546040516306ab592360e01b815260048101859052602481018490526001600160a01b03808416604483015294975092955090935091909116906306ab5923906064016020604051808303815f875af115801561085f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108839190611add565b505050505050565b5f8080806108998682610a40565b60ff1690506108aa86600183610a63565b92505f6108dc6108bb836001611b08565b6001848a516108ca9190611b1b565b6108d49190611b1b565b899190610a85565b6002546040516327c482cf60e11b81529192506001600160a01b031690634f89059e9061090d908490600401611b2e565b602060405180830381865afa158015610928573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061094c9190611b40565b6109a45760405162461bcd60e51b815260206004820152602360248201527f506172656e74206e616d65206d7573742062652061207075626c6963207375666044820152620ccd2f60eb1b60648201526084016103d1565b6109ae815f610b05565b5f549095506109c7906001600160a01b03168888610de3565b5060408051602081018890529081018690529093506001600160a01b03841690606001604051602081830303815290604052805190602001207fa2e66ce20e6fb2c4f61339c364ad79f15160cf5307230c8bc4d628adbca2ba3989604051610a2f9190611b2e565b60405180910390a350509250925092565b5f828281518110610a5357610a53611b5f565b016020015160f81c905092915050565b82515f90610a718385611b08565b1115610a7b575f80fd5b5091016020012090565b8251606090610a948385611b08565b1115610a9e575f80fd5b5f8267ffffffffffffffff811115610ab857610ab861160a565b6040519080825280601f01601f191660200182016040528015610ae2576020820181803683370190505b50905060208082019086860101610afa82828761100b565b509095945050505050565b5f80610b118484610a40565b60ff169050805f03610b2657505f905061019d565b5f610b4585610b358487611b08565b610b40906001611b08565b610b05565b90505f610b5e610b56866001611b08565b879085610a63565b604080516020810185905290810182905290915060600160408051808303601f190181529082905280516020909101206001546302571be360e01b8352600483018290529095505f916001600160a01b03909116906302571be390602401602060405180830381865afa158015610bd7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bfb919061196b565b90506001600160a01b0381161580610c1b57506001600160a01b03811630145b610c7a5760405162461bcd60e51b815260206004820152602a60248201527f43616e6e6f7420656e61626c652061206e616d65206f776e656420627920736f6044820152696d656f6e6520656c736560b01b60648201526084016103d1565b6001600160a01b0381163014610dd95782610d5e576001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa158015610cd6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cfa919061196b565b60405163232e3b3b60e21b8152600481018590523060248201529091506001600160a01b03821690638cb8ecec906044015f604051808303815f87803b158015610d42575f80fd5b505af1158015610d54573d5f803e3d5ffd5b5050505050610dd9565b6001546040516306ab592360e01b815260048101859052602481018490523060448201526001600160a01b03909116906306ab5923906064016020604051808303815f875af1158015610db3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610dd79190611add565b505b5050505092915050565b5f80610e016040518060400160405280606081526020015f81525090565b610e1985516005610e129190611b08565b8290611060565b50604080518082019091526005815264045f656e7360d81b6020820152610e419082906110c3565b50610e4c81866110c3565b50805160405163021e646f60e21b81525f9182916001600160a01b038a169163087991bc91610e8091601091600401611b73565b606060405180830381865afa158015610e9b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ebf9190611ba7565b93509150506bffffffffffffffffffffffff198216158015610ee057508551155b15610ef3575f8094509450505050611003565b855160208701206bffffffffffffffffffffffff19838116911614610f16575f80fd5b5f610f2187826110ef565b90505b80515160208201511015610ff857610f4b816080015183610f459190611bfc565b4261114a565b610fbd5760405162461bcd60e51b815260206004820152603c60248201527f444e53207265636f7264206973207374616c653b2072656672657368206f722060448201527f64656c657465206974206265666f72652070726f63656564696e672e0000000060648201526084016103d1565b5f80610fcd898460a00151611162565b925090508115610fe857965060019550611003945050505050565b5050610ff3816111d1565b610f24565b505f80945094505050505b935093915050565b602081106110435781518352611022602084611b08565b925061102f602083611b08565b915061103c602082611b1b565b905061100b565b905182516020929092036101000a5f190180199091169116179052565b60408051808201909152606081525f602082015261107f602083611c20565b156110a75761108f602083611c20565b61109a906020611b1b565b6110a49083611b08565b91505b506020828101829052604080518085525f815290920101905290565b60408051808201909152606081525f60208201526110e883845f0151518485516112b6565b9392505050565b6111376040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261019d816111d1565b5f806111568385611c3f565b60030b12159392505050565b5f805b83518310156111c4575f6111798585610a40565b60ff169050611189600185611b08565b93505f8061119887878561139c565b9250905081156111b0579350600192506111ca915050565b6111ba8387611b08565b9550505050611165565b505f9050805b9250929050565b60c081015160208201819052815151116111e85750565b5f6111fa825f015183602001516113f5565b82602001516112099190611b08565b82519091506112189082611454565b61ffff16604083015261122c600282611b08565b825190915061123b9082611454565b61ffff16606083015261124f600282611b08565b825190915061125e908261147a565b63ffffffff166080830152611274600482611b08565b82519091505f906112859083611454565b61ffff169050611296600283611b08565b60a0840181905291506112a98183611b08565b60c0909301929092525050565b60408051808201909152606081525f602082015282518211156112d7575f80fd5b60208501516112e68386611b08565b11156113195761131985611309876020015187866113049190611b08565b6114a2565b611314906002611c66565b6114b8565b5f808651805187602083010193508088870111156113375787860182525b505050602084015b602084106113775780518252611356602083611b08565b9150611363602082611b08565b9050611370602085611b1b565b935061133f565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b5f806113a8858561147a565b63ffffffff1663613d3078146113c257505f905080611003565b602c8310156113d557505f905080611003565b6113e9856113e4866004611b08565b6114d5565b91509150935093915050565b5f815b8351811061140857611408611c7d565b5f6114138583610a40565b60ff169050611423816001611b08565b61142d9083611b08565b9150805f0361143c5750611442565b506113f8565b61144c8382611b1b565b949350505050565b81515f90611463836002611b08565b111561146d575f80fd5b50016002015161ffff1690565b81515f90611489836004611b08565b1115611493575f80fd5b50016004015163ffffffff1690565b5f818311156114b257508161019d565b50919050565b81516114c48383611060565b506114cf83826110c3565b50505050565b5f8060288385516114e69190611b1b565b10156114f657505f9050806111ca565b5f835b611504856028611b08565b8110156115a55760049190911b905f61151d8783610a40565b60ff169050603081101580156115335750603a81105b1561154c57611543603082611b1b565b8317925061159c565b6041811015801561155d5750604781105b1561156d57611543603782611b1b565b6061811015801561157e5750606781105b1561158e57611543605782611b1b565b5f80945094505050506111ca565b506001016114f9565b50946001945092505050565b5f602082840312156115c1575f80fd5b81356001600160e01b0319811681146110e8575f80fd5b6001600160a01b03811681146115ec575f80fd5b50565b5f602082840312156115ff575f80fd5b81356110e8816115d8565b634e487b7160e01b5f52604160045260245ffd5b6040805190810167ffffffffffffffff811182821017156116415761164161160a565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156116705761167061160a565b604052919050565b5f67ffffffffffffffff8211156116915761169161160a565b50601f01601f191660200190565b5f82601f8301126116ae575f80fd5b81356116c16116bc82611678565b611647565b8181528460208386010111156116d5575f80fd5b816020850160208301375f918101602001919091529392505050565b5f82601f830112611700575f80fd5b8135602067ffffffffffffffff8083111561171d5761171d61160a565b8260051b61172c838201611647565b9384528581018301938381019088861115611745575f80fd5b84880192505b858310156117d457823584811115611761575f80fd5b88016040818b03601f1901811315611777575f80fd5b61177f61161e565b878301358781111561178f575f80fd5b61179d8d8a8387010161169f565b8252509082013590868211156117b1575f80fd5b6117bf8c898486010161169f565b8189015284525050918401919084019061174b565b98975050505050505050565b5f805f805f60a086880312156117f4575f80fd5b853567ffffffffffffffff8082111561180b575f80fd5b61181789838a0161169f565b9650602088013591508082111561182c575f80fd5b61183889838a016116f1565b9550604088013591508082111561184d575f80fd5b5061185a8882890161169f565b935050606086013561186b816115d8565b9150608086013561187b816115d8565b809150509295509295909350565b5f805f6060848603121561189b575f80fd5b833567ffffffffffffffff808211156118b2575f80fd5b6118be8783880161169f565b945060208601359150808211156118d3575f80fd5b6118df878388016116f1565b935060408601359150808211156118f4575f80fd5b506119018682870161169f565b9150509250925092565b5f806040838503121561191c575f80fd5b823567ffffffffffffffff80821115611933575f80fd5b61193f8683870161169f565b93506020850135915080821115611954575f80fd5b506119618582860161169f565b9150509250929050565b5f6020828403121561197b575f80fd5b81516110e8816115d8565b5f5b838110156119a0578181015183820152602001611988565b50505f910152565b5f81518084526119bf816020860160208601611986565b601f01601f19169290920160200192915050565b5f60408083016040845280865180835260608601915060608160051b870101925060208089015f5b83811015611a4b57888603605f1901855281518051888852611a1f898901826119a8565b9185015188830389870152919050611a3781836119a8565b9750505093820193908201906001016119fb565b505086840381880152505050611a6181866119a8565b9695505050505050565b5f60208284031215611a7b575f80fd5b815167ffffffffffffffff811115611a91575f80fd5b8201601f81018413611aa1575f80fd5b8051611aaf6116bc82611678565b818152856020838501011115611ac3575f80fd5b611ad4826020830160208601611986565b95945050505050565b5f60208284031215611aed575f80fd5b5051919050565b634e487b7160e01b5f52601160045260245ffd5b8082018082111561019d5761019d611af4565b8181038181111561019d5761019d611af4565b602081525f6110e860208301846119a8565b5f60208284031215611b50575f80fd5b815180151581146110e8575f80fd5b634e487b7160e01b5f52603260045260245ffd5b61ffff83168152604060208201525f61144c60408301846119a8565b805163ffffffff81168114611ba2575f80fd5b919050565b5f805f60608486031215611bb9575f80fd5b611bc284611b8f565b9250611bd060208501611b8f565b915060408401516bffffffffffffffffffffffff1981168114611bf1575f80fd5b809150509250925092565b63ffffffff818116838216019080821115611c1957611c19611af4565b5092915050565b5f82611c3a57634e487b7160e01b5f52601260045260245ffd5b500690565b600382810b9082900b03637fffffff198112637fffffff8213171561019d5761019d611af4565b808202811582820484141761019d5761019d611af4565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{"0x0":"0x9b2565a3545a1312bdcb6e7148a7f7cae8c2706b","0x1":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0x2":"0x287dee389caaa49edc112888f2bcfd927b472e25"}},"0x62b11ad5f582a5c5d378fb310125b030042554f1":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106103af5760003560e01c80637e37479e116101f4578063ba5d40b71161011a578063e985e9c5116100ad578063f5c1f76e1161007c578063f5c1f76e146108d8578063f7df5c60146108eb578063f8c8765e146108fe578063ffa1ad741461091157600080fd5b8063e985e9c51461087a578063ebf0c717146108b6578063ec129eea146108bd578063f25eb5c1146108d057600080fd5b8063c87b56dd116100e9578063c87b56dd1461082e578063ce92b33e14610841578063cf2c52cb14610854578063d9548e531461086757600080fd5b8063ba5d40b7146107b3578063baef73e9146107c6578063bb5b27e114610808578063bebec6b41461081b57600080fd5b8063a22cb46511610192578063ac9650d811610161578063ac9650d81461074c578063b3f9e4cb1461076c578063b85afd281461077f578063b88d4fde146107a057600080fd5b8063a22cb465146106e7578063a3f4df7e146106fa578063a424740014610726578063ab3b87fe1461073957600080fd5b80639508b1c4116101ce5780639508b1c4146106b15780639559c0bd146106c457806395d89b41146106cc57806399e0dd7c146106d457600080fd5b80637e37479e146106785780637eee288d1461068b57806394d008ef1461069e57600080fd5b806342842e0e116102d95780635096023911610277578063663f7b2a11610246578063663f7b2a14610610578063672b9f81146106235780636ccbae5f1461064457806370a082311461066557600080fd5b806350960239146105bb578063572b6c05146105ce5780636352211e146105ea578063638e5c78146105fd57600080fd5b806347c81699116102b357806347c816991461056f5780634a72584d146105825780634f558e791461059557806350382c1a146105a857600080fd5b806342842e0e1461053657806342966c6814610549578063430c20811461055c57600080fd5b80631bf7e13e1161035157806327f189751161032057806327f18975146104ea578063310bd74b146104fd5780633f72ec6e1461051057806340c10f191461052357600080fd5b80631bf7e13e146104905780631f71be06146104a357806323b872dd146104b6578063276fabb1146104c957600080fd5b8063095ea7b31161038d578063095ea7b31461041c578063150b7a02146104315780631bd8cc1a1461045d5780631be5e7ed1461047d57600080fd5b806301ffc9a7146103b457806306fdde03146103dc578063081812fc146103f1575b600080fd5b6103c76103c2366004613f0b565b610935565b60405190151581526020015b60405180910390f35b6103e4610946565b6040516103d39190613f78565b6104046103ff366004613f8b565b6109d8565b6040516001600160a01b0390911681526020016103d3565b61042f61042a366004613fb9565b6109ff565b005b61044461043f366004614026565b610a18565b6040516001600160e01b031990911681526020016103d3565b61047061046b3660046140dc565b610b72565b6040516103d3919061417f565b6103e461048b366004614192565b610c68565b6103e461049e3660046141c9565b610cb3565b61042f6104b1366004614249565b610dbe565b61042f6104c4366004614305565b610e54565b6104dc6104d7366004614346565b610ea7565b6040519081526020016103d3565b61042f6104f8366004614387565b610eb6565b61042f61050b366004613f8b565b610efe565b61042f61051e3660046143fa565b610f39565b61042f610531366004613fb9565b61103b565b61042f610544366004614305565b611088565b61042f610557366004613f8b565b6110a3565b6103c761056a366004613fb9565b6110e7565b61042f61057d366004614424565b6110f3565b61042f610590366004614485565b611132565b6103c76105a3366004613f8b565b611178565b61042f6105b636600461458c565b611197565b61042f6105c93660046145c0565b6111cd565b6103c76105dc3660046145c0565b6001600160a01b0316301490565b6104046105f8366004613f8b565b61122d565b61042f61060b366004613f8b565b61124a565b61042f61061e366004614678565b611295565b6106366106313660046146c0565b611336565b6040516103d39291906146e2565b6104dc610652366004613f8b565b6000908152610100602052604090205490565b6104dc6106733660046145c0565b61134e565b6104dc6106863660046145c0565b6113d4565b61042f610699366004613fb9565b611405565b61042f6106ac366004614707565b61145c565b61042f6106bf366004614762565b6114ab565b6104dc601481565b6103e4611532565b61042f6106e2366004614805565b611541565b61042f6106f536600461483a565b6115c8565b6103e46040518060400160405280600d81526020016c554e533a20526567697374727960981b81525081565b6103c76107343660046141c9565b6115da565b61042f610747366004613fb9565b611625565b61075f61075a366004614346565b61166a565b6040516103d39190614866565b61040461077a366004613f8b565b611746565b61079261078d3660046140dc565b611770565b6040516103d39291906148c8565b61042f6107ae3660046148ed565b611892565b61042f6107c1366004614249565b6118d9565b6107f06107d4366004613f8b565b600090815261013960205260409020546001600160401b031690565b6040516001600160401b0390911681526020016103d3565b6103e4610816366004613f8b565b611962565b6103e46108293660046145c0565b611a04565b6103e461083c366004613f8b565b611ace565b61042f61084f366004614387565b611b34565b61042f610862366004614958565b611b73565b6103c7610875366004613f8b565b611c42565b6103c761088836600461499f565b6001600160a01b039182166000908152606a6020908152604080832093909416825291909152205460ff1690565b60006104dc565b61042f6108cb366004614387565b611c85565b61042f611cc4565b6104706108e6366004614346565b611d4b565b61042f6108f93660046149d8565b611dfe565b61042f61090c366004614a0a565b611e8f565b6103e460405180604001604052806005815260200164302e392e3160d81b81525081565b600061094082612065565b92915050565b60606065805461095590614a66565b80601f016020809104026020016040519081016040528092919081815260200182805461098190614a66565b80156109ce5780601f106109a3576101008083540402835291602001916109ce565b820191906000526020600020905b8154815290600101906020018083116109b157829003601f168201915b5050505050905090565b60006109e3826120b5565b506000908152606960205260409020546001600160a01b031690565b80610a0981612114565b610a13838361217a565b505050565b60007f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378546001600160a01b0316610a4d61229c565b6001600160a01b031603610b0e57610a6361229c565b6001600160a01b03166342966c68856040518263ffffffff1660e01b8152600401610a9091815260200190565b600060405180830381600087803b158015610aaa57600080fd5b505af1158015610abe573d6000803e3d6000fd5b505050821580159150610ad85750610ad882840184614a9a565b15610af657610ae730856122ab565b610af185856123f9565b610b00565b610b0085856122ab565b50630a85bd0160e11b610b69565b60405162461bcd60e51b815260206004820152602560248201527f52656769737472793a204552433732315f524543454956494e475f50524f4849604482015264109255115160da1b60648201526084015b60405180910390fd5b95945050505050565b6060826001600160401b03811115610b8c57610b8c6144d7565b604051908082528060200260200182016040528015610bbf57816020015b6060815260200190600190039081610baa5790505b50905060005b83811015610c6057610c30858583818110610be257610be2614ab5565b9050602002810190610bf49190614acb565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508792506124a4915050565b828281518110610c4257610c42614ab5565b60200260200101819052508080610c5890614b27565b915050610bc5565b509392505050565b6060610cab84848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508692506124a4915050565b949350505050565b606060005a9050610cc58585856115da565b610d215760405162461bcd60e51b815260206004820152602760248201527f554e535265676973747279466f727761726465723a205349474e41545552455f6044820152661253959053125160ca1b6064820152608401610b60565b610db3610d3160208701876145c0565b30604088013584610d4560608b018b614acb565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284376000920191909152506124d992505050565b9150505b9392505050565b610134546001600160a01b0316610dd361229c565b6001600160a01b031614610df95760405162461bcd60e51b8152600401610b6090614b40565b6000610e0d610e08888a614b87565b6125ba565b509050610e1a8982611405565b610e278686868685612612565b8115610e4957610e498982610e44610e3f8b8d614b87565b612680565b612701565b505050505050505050565b80610e66610e6061229c565b82612743565b610e825760405162461bcd60e51b8152600401610b6090614b94565b81610e8c81612114565b610e95836127d4565b610ea0858585612841565b5050505050565b6000610c60610e088385614b87565b80610ec2610e6061229c565b610ede5760405162461bcd60e51b8152600401610b6090614b94565b81610ee881612114565b610ef587878787876129e8565b50505050505050565b80610f0a610e6061229c565b610f265760405162461bcd60e51b8152600401610b6090614b94565b81610f3081612114565b610a13836127d4565b610134546001600160a01b0316610f4e61229c565b6001600160a01b031614610f745760405162461bcd60e51b8152600401610b6090614b40565b610f7d816120b5565b42826001600160401b031611610fd55760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a204558504952595f494e5f5041535400000000000000006044820152606401610b60565b60008181526101396020908152604091829020805467ffffffffffffffff19166001600160401b038616908117909155915191825282917f93feabb03ab84f47fc85bf0c298103fca21d8c8bc376eae0c1e1c56b9d4f7789910160405180910390a25050565b611043612a4b565b6001600160a01b031661105461229c565b6001600160a01b03161461107a5760405162461bcd60e51b8152600401610b6090614bdd565b61108482826122ab565b5050565b610a1383838360405180602001604052806000815250611892565b806110af610e6061229c565b6110cb5760405162461bcd60e51b8152600401610b6090614b94565b816110d581612114565b6110de836127d4565b610a1383612b4c565b6000610db78383612743565b806110ff610e6061229c565b61111b5760405162461bcd60e51b8152600401610b6090614b94565b8161112581612114565b610ef58787878787612bf3565b8061113e610e6061229c565b61115a5760405162461bcd60e51b8152600401610b6090614b94565b8161116481612114565b61117086868686612cd2565b505050505050565b6000818152606760205260408120546001600160a01b03161515610940565b6111ca816040516020016111ab9190614c1f565b6040516020818303038152906040528051906020012060001c82612d72565b50565b610134546001600160a01b03166111e261229c565b6001600160a01b0316146112085760405162461bcd60e51b8152600401610b6090614b40565b6001600160a01b0316600090815261013660205260409020805460ff19166001179055565b600061123882611c42565b6112455761094082612d97565b919050565b80611256610e6061229c565b6112725760405162461bcd60e51b8152600401610b6090614b94565b61128461127d61229c565b3084612841565b61108461128f61229c565b836123f9565b60006112a0826125ba565b5090506112ab61229c565b6001600160a01b03166112bd8261122d565b6001600160a01b0316146113135760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b60565b61131c81612114565b61108461132761229c565b8261133185612680565b612df7565b6060806113438484612e7e565b909590945092505050565b60006001600160a01b0382166113b85760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b6064820152608401610b60565b506001600160a01b031660009081526068602052604090205490565b6001600160a01b038116600090815261013560205260408120546113f781612e9f565b6113ff578091505b50919050565b610134546001600160a01b031661141a61229c565b6001600160a01b0316146114405760405162461bcd60e51b8152600401610b6090614b40565b611449816127d4565b61108461145582612d97565b8383612841565b611464612a4b565b6001600160a01b031661147561229c565b6001600160a01b03161461149b5760405162461bcd60e51b8152600401610b6090614bdd565b6114a584846122ab565b50505050565b6114b58787612ee9565b6114bd61229c565b6001600160a01b03166114cf8661122d565b6001600160a01b0316146115255760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b60565b610ef58484848489612612565b60606066805461095590614a66565b610134546001600160a01b031661155661229c565b6001600160a01b03161461157c5760405162461bcd60e51b8152600401610b6090614b40565b61013361158a828483614c81565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b82826040516115bc929190614d69565b60405180910390a15050565b6110846115d361229c565b8383612f58565b6000610cab6115e885614d7d565b3085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061302692505050565b80611631610e6061229c565b61164d5760405162461bcd60e51b8152600401610b6090614b94565b8161165781612114565b6114a561166384612d97565b8585612841565b606060006116788385614e07565b905030330361173d5760005b8381101561173b5761170b61169761229c565b61169f61316f565b8787858181106116b1576116b1614ab5565b90506020028101906116c39190614acb565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250613183915050565b82828151811061171d5761171d614ab5565b6020026020010181905250808061173390614b27565b915050611684565b505b610cab816131b3565b6000818152606760205260408120546001600160a01b0316611769576000610940565b3092915050565b606080836001600160401b0381111561178b5761178b6144d7565b6040519080825280602002602001820160405280156117be57816020015b60608152602001906001900390816117a95790505b509150836001600160401b038111156117d9576117d96144d7565b60405190808252806020026020018201604052801561180c57816020015b60608152602001906001900390816117f75790505b50905060005b848110156118895761183c86868381811061182f5761182f614ab5565b9050602002013585612e7e565b84838151811061184e5761184e614ab5565b6020026020010184848151811061186757611867614ab5565b602002602001018290528290525050808061188190614b27565b915050611812565b50935093915050565b8161189e610e6061229c565b6118ba5760405162461bcd60e51b8152600401610b6090614b94565b826118c481612114565b6118cd846127d4565b611170868686866132de565b610134546001600160a01b03166118ee61229c565b6001600160a01b0316146119145760405162461bcd60e51b8152600401610b6090614b40565b600080611924610e08898b614b87565b9150915061193181613311565b6119498a83611943610e3f8c8e614b87565b86613371565b6119568787878786612612565b50505050505050505050565b600081815260c96020526040902080546060919061197f90614a66565b80601f01602080910402602001604051908101604052809291908181526020018280546119ab90614a66565b80156119f85780601f106119cd576101008083540402835291602001916119f8565b820191906000526020600020905b8154815290600101906020018083116119db57829003601f168201915b50505050509050919050565b6001600160a01b03811660009081526101356020526040902054606090611a2a81612e9f565b6113ff576000818152610138602052604090208054611a4890614a66565b80601f0160208091040260200160405190810160405280929190818152602001828054611a7490614a66565b8015611ac15780601f10611a9657610100808354040283529160200191611ac1565b820191906000526020600020905b815481529060010190602001808311611aa457829003601f168201915b5050505050915050919050565b6060611ad9826120b5565b6000611ae36133c4565b90506000815111611b035760405180602001604052806000815250610db7565b80611b0d846133d4565b604051602001611b1e929190614e7a565b6040516020818303038152906040529392505050565b80611b40610e6061229c565b611b5c5760405162461bcd60e51b8152600401610b6090614b94565b81611b6681612114565b610ef58787878787612612565b7f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87546001600160a01b0316611ba661229c565b6001600160a01b031614611bcc5760405162461bcd60e51b8152600401610b6090614bdd565b6020819003611bef576000611be382840184613f8b565b90506114a584826122ab565b6000611bfd82840184614ea9565b805190915060005b8181101561117057611c3086848381518110611c2357611c23614ab5565b60200260200101516122ab565b80611c3a81614b27565b915050611c05565b600081815261013960205260408120546001600160401b03161580159061094057505060009081526101396020526040902054426001600160401b039091161090565b80611c91610e6061229c565b611cad5760405162461bcd60e51b8152600401610b6090614b94565b81611cb781612114565b610ef587878787876134d4565b6000611cce61229c565b6001600160a01b0381166000908152610135602052604081205491925003611d425760405162461bcd60e51b815260206004820152602160248201527f52656769737472793a20524556455253455f5245434f52445f49535f454d50546044820152605960f81b6064820152608401610b60565b6111ca816134ea565b6060816001600160401b03811115611d6557611d656144d7565b604051908082528060200260200182016040528015611d9857816020015b6060815260200190600190039081611d835790505b50905060005b82811015611df757611dc7848483818110611dbb57611dbb614ab5565b90506020020135611962565b828281518110611dd957611dd9614ab5565b60200260200101819052508080611def90614b27565b915050611d9e565b5092915050565b610134546001600160a01b0316611e1361229c565b6001600160a01b031614611e395760405162461bcd60e51b8152600401610b6090614b40565b61013454611e50906001600160a01b0316846122ab565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c39528383604051611e82929190614d69565b60405180910390a2505050565b600054610100900460ff1615808015611eaf5750600054600160ff909116105b80611ec95750303b158015611ec9575060005460ff166001145b611f2c5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610b60565b6000805460ff191660011790558015611f4f576000805461ff0019166101001790555b61013480546001600160a01b0319166001600160a01b038716179055837f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec9237880546001600160a01b0319166001600160a01b03929092169190911790556040805180820182526013815272556e73746f707061626c6520446f6d61696e7360681b60208083019190915282518084019093526002835261155160f21b90830152611ff79161352f565b611fff61356f565b61200761356f565b61201083613598565b612019826135c8565b8015610ea0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b60006001600160e01b031982166380ac58cd60e01b148061209657506001600160e01b03198216635b5e139f60e01b145b8061094057506301ffc9a760e01b6001600160e01b0319831614610940565b6000818152606760205260409020546001600160a01b03166111ca5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b60565b3033036121715761212361316f565b81146111ca5760405162461bcd60e51b815260206004820152601760248201527f52656769737472793a20544f4b454e5f494e56414c49440000000000000000006044820152606401610b60565b6111ca816135f8565b600061218582612d97565b9050806001600160a01b0316836001600160a01b0316036121f25760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b6064820152608401610b60565b806001600160a01b031661220461229c565b6001600160a01b0316148061222057506122208161088861229c565b6122925760405162461bcd60e51b815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c00006064820152608401610b60565b610a138383613626565b60006122a6613694565b905090565b6001600160a01b0382166123015760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610b60565b6000818152606760205260409020546001600160a01b0316156123665760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610b60565b612372600083836136af565b6001600160a01b038216600090815260686020526040812080546001929061239b908490614f39565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b03861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b6000612403612a4b565b905061240f8183613626565b60008051602061529383398151915254604080516020808201869052825180830390910181528183019283905263e3dec8fb60e01b9092526001600160a01b0390921691829163e3dec8fb9161246c918891309190604401614f4c565b600060405180830381600087803b15801561248657600080fd5b505af115801561249a573d6000803e3d6000fd5b5050505050505050565b6060610db7836040516020016124ba9190614c1f565b6040516020818303038152906040528051906020012060001c8361378b565b60606124e4856135f8565b600080876001600160a01b0316866124fe8b8a8989613183565b60405161250b9190614c1f565b60006040518083038160008787f1925050503d8060008114612549576040519150601f19603f3d011682016040523d82523d6000602084013e61254e565b606091505b50909250905061255f603f87614f8e565b5a1161256d5761256d614fa2565b6125ad82826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061386d565b9998505050505050505050565b805160009081905b801561260c578291506125f882856125db600185614fb8565b815181106125eb576125eb614ab5565b60200260200101516138a6565b92508061260481614fcb565b9150506125c2565b50915091565b60005b848110156111705761266e86868381811061263257612632614ab5565b90506020028101906126449190614acb565b86868581811061265657612656614ab5565b90506020028101906126689190614acb565b86612bf3565b8061267881614b27565b915050612615565b606060008260008151811061269757612697614ab5565b602002602001015190506000600190505b8351811015611df757818482815181106126c4576126c4614ab5565b60200260200101516040516020016126dd929190614fe2565b604051602081830303815290604052915080806126f990614b27565b9150506126a8565b61dead6001600160a01b0384161480159061273357506001600160a01b03831660009081526101356020526040902054155b15610a1357610a13838383612df7565b60008061274f8361122d565b90506001600160a01b03811615801590610cab5750806001600160a01b0316846001600160a01b031614806127a957506001600160a01b038082166000908152606a602090815260408083209388168352929052205460ff165b80610cab5750836001600160a01b03166127c2846109d8565b6001600160a01b031614949350505050565b6127dd81613952565b6040516020016127ef91815260200190565b60408051601f198184030181528282528051602091820120600085815260cb9092529181209190915582917f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9190a250565b826001600160a01b031661285482612d97565b6001600160a01b0316146128b85760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b6064820152608401610b60565b6001600160a01b03821661291a5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610b60565b6129258383836136af565b612930600082613626565b6001600160a01b0383166000908152606860205260408120805460019290612959908490614fb8565b90915550506001600160a01b0382166000908152606860205260408120805460019290612987908490614f39565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60005b8481101561117057612a39868683818110612a0857612a08614ab5565b90506020020135858584818110612a2157612a21614ab5565b9050602002810190612a339190614acb565b85612cd2565b80612a4381614b27565b9150506129eb565b600080516020615293833981519152546000906001600160a01b03168015612b485760405163721804d360e11b81523060048201526000906001600160a01b0383169063e43009a690602401602060405180830381865afa158015612ab4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ad8919061501e565b60405163e66f960360e01b8152600481018290529091506001600160a01b0383169063e66f960390602401602060405180830381865afa158015612b20573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b449190615037565b9250505b5090565b6000612b5782612d97565b9050612b65816000846136af565b612b70600083613626565b6001600160a01b0381166000908152606860205260408120805460019290612b99908490614fb8565b909155505060008281526067602052604080822080546001600160a01b0319169055518391906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b60008585604051602001612c08929190615054565b60408051601f198184030181528282528051602091820120601f8901829004820284018201909252878352909250612c5c9183918990899081908401838280828437600092019190915250612d7292505050565b6111708187878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061397a915050565b612cdb84613aaf565b612d275760405162461bcd60e51b815260206004820152601c60248201527f5265636f726453746f726167653a204b45595f4e4f545f464f554e44000000006044820152606401610b60565b6114a584612d3486611962565b85858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525087925061397a915050565b612d7b82613aaf565b61108457600082815260c960205260409020610a138282615064565b6000818152606760205260408120546001600160a01b0316806109405760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b60565b6000828152610138602052604090208054612e1190614a66565b9050600003612e3557600082815261013860205260409020612e338282615064565b505b6001600160a01b03831660008181526101356020526040808220859055518492917feb76a21470988c474a21f690cc28fee1ed511bd812dc3c21fd0f49c5e5d4708a91a3505050565b606080612e8a84611962565b9150612e96848461378b565b90509250929050565b6000818152610137602052604081205460ff16801561094057506101366000612ec661229c565b6001600160a01b0316815260208101919091526040016000205460ff1692915050565b60008051602061529383398151915254604051633805550f60e01b81526001600160a01b03909116908190633805550f90612f2a9086908690600401614d69565b600060405180830381600087803b158015612f4457600080fd5b505af1158015610ef5573d6000803e3d6000fd5b816001600160a01b0316836001600160a01b031603612fb95760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610b60565b6001600160a01b038381166000818152606a6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561306d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613091919061501e565b9050600061313f8660600151805190602001208688602001516040516020016130df9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561316557508551613165906001600160a01b03168286613ad5565b9695505050505050565b60003033036131805750601f193601355b90565b606082858560405160200161319a93929190615123565b6040516020818303038152906040529050949350505050565b606081516001600160401b038111156131ce576131ce6144d7565b60405190808252806020026020018201604052801561320157816020015b60608152602001906001900390816131ec5790505b50905060005b82518110156113ff57600080306001600160a01b031685848151811061322f5761322f614ab5565b60200260200101516040516132449190614c1f565b600060405180830381855af49150503d806000811461327f576040519150601f19603f3d011682016040523d82523d6000602084013e613284565b606091505b50915091506132ac82826040518060600160405280602781526020016152b36027913961386d565b8484815181106132be576132be614ab5565b6020026020010181905250505080806132d690614b27565b915050613207565b6132e9848484612841565b6132f584848484613c17565b6114a55760405162461bcd60e51b8152600401610b6090615162565b6000818152610137602052604090205460ff16156111ca5760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a20544f4b454e5f555047524144454400000000000000006044820152606401610b60565b61337b84846122ab565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952836040516133ab9190613f78565b60405180910390a280156114a5576114a5848484612701565b6060610133805461095590614a66565b6060816000036133fb5750506040805180820190915260018152600360fc1b602082015290565b8160005b8115613425578061340f81614b27565b915061341e9050600a83614f8e565b91506133ff565b6000816001600160401b0381111561343f5761343f6144d7565b6040519080825280601f01601f191660200182016040528015613469576020820181803683370190505b5090505b8415610cab5761347e600183614fb8565b915061348b600a866151b4565b613496906030614f39565b60f81b8183815181106134ab576134ab614ab5565b60200101906001600160f81b031916908160001a9053506134cd600a86614f8e565b945061346d565b6134dd816127d4565b610ea08585858585612612565b6001600160a01b03811660008181526101356020526040808220829055517ffcf5eec0cfa3e6332f5f0e63ec242d71f866a61d121d6cdf5c2eb3b668a26c4f9190a250565b600054610100900460ff166135565760405162461bcd60e51b8152600401610b60906151c8565b60656135628382615064565b506066610a138282615064565b600054610100900460ff166135965760405162461bcd60e51b8152600401610b60906151c8565b565b600054610100900460ff166135bf5760405162461bcd60e51b8152600401610b60906151c8565b6111ca81613d1c565b600054610100900460ff166135ef5760405162461bcd60e51b8152600401610b60906151c8565b6111ca81613d75565b60008181526101006020526040902054613613906001614f39565b6000918252610100602052604090912055565b600081815260696020526040902080546001600160a01b0319166001600160a01b038416908117909155819061365b82612d97565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60003033036136aa575060331936013560601c90565b503390565b6001600160a01b0382166136c6576136c681613311565b600081815261013960205260409020546001600160401b031615613761576001600160a01b0382161580159061371557506136ff612a4b565b6001600160a01b0316826001600160a01b031614155b6137615760405162461bcd60e51b815260206004820152601960248201527f52656769737472793a20544f4b454e5f455850495241424c45000000000000006044820152606401610b60565b6001600160a01b03831660009081526101356020526040902054819003610a1357610a13836134ea565b606061379682612e9f565b156137b05750604080516020810190915260008152610940565b60ca60006137bd84613952565b8152602001908152602001600020600084815260200190815260200160002080546137e790614a66565b80601f016020809104026020016040519081016040528092919081815260200182805461381390614a66565b80156138605780601f1061383557610100808354040283529160200191613860565b820191906000526020600020905b81548152906001019060200180831161384357829003601f168201915b5050505050905092915050565b6060831561387c575081610db7565b82511561388c5782518084602001fd5b8160405162461bcd60e51b8152600401610b609190613f78565b600081516000036138f15760405162461bcd60e51b815260206004820152601560248201527452656769737472793a204c4142454c5f454d50545960581b6044820152606401610b60565b82826040516020016139039190614c1f565b60405160208183030381529060405280519060200120604051602001613933929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b600081815260cb602052604081205415612b4857600082815260cb6020526040902054610940565b60ca600061398783613952565b8152602001908152602001600020600085815260200190815260200160002080546139b190614a66565b9050600003613a0957826040516139c89190614c1f565b6040518091039020817f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f8685604051613a009190613f78565b60405180910390a35b8160ca6000613a1784613952565b815260200190815260200160002060008681526020019081526020016000209081613a429190615064565b5081604051613a519190614c1f565b604051809103902083604051613a679190614c1f565b6040518091039020827f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d928686604051613aa19291906146e2565b60405180910390a450505050565b600081815260c9602052604081208054829190613acb90614a66565b9050119050919050565b6000806000613ae48585613dc3565b90925090506000816004811115613afd57613afd615213565b148015613b1b5750856001600160a01b0316826001600160a01b0316145b15613b2b57600192505050610db7565b600080876001600160a01b0316631626ba7e60e01b8888604051602401613b53929190615229565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051613b919190614c1f565b600060405180830381855afa9150503d8060008114613bcc576040519150601f19603f3d011682016040523d82523d6000602084013e613bd1565b606091505b5091509150818015613be4575080516020145b8015613c0b57508051630b135d3f60e11b90613c09908301602090810190840161501e565b145b98975050505050505050565b60006001600160a01b0384163b15613d1457836001600160a01b031663150b7a02613c4061229c565b8786866040518563ffffffff1660e01b8152600401613c629493929190615242565b6020604051808303816000875af1925050508015613c9d575060408051601f3d908101601f19168201909252613c9a91810190615275565b60015b613cfa573d808015613ccb576040519150601f19603f3d011682016040523d82523d6000602084013e613cd0565b606091505b508051600003613cf25760405162461bcd60e51b8152600401610b6090615162565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610cab565b506001610cab565b600054610100900460ff16613d435760405162461bcd60e51b8152600401610b60906151c8565b806000805160206152938339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b600054610100900460ff16613d9c5760405162461bcd60e51b8152600401610b60906151c8565b807f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87613d54565b6000808251604103613df95760208301516040840151606085015160001a613ded87828585613e08565b94509450505050613e01565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613e3f5750600090506003613eec565b8460ff16601b14158015613e5757508460ff16601c14155b15613e685750600090506004613eec565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613ebc573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613ee557600060019250925050613eec565b9150600090505b94509492505050565b6001600160e01b0319811681146111ca57600080fd5b600060208284031215613f1d57600080fd5b8135610db781613ef5565b60005b83811015613f43578181015183820152602001613f2b565b50506000910152565b60008151808452613f64816020860160208601613f28565b601f01601f19169290920160200192915050565b602081526000610db76020830184613f4c565b600060208284031215613f9d57600080fd5b5035919050565b6001600160a01b03811681146111ca57600080fd5b60008060408385031215613fcc57600080fd5b8235613fd781613fa4565b946020939093013593505050565b60008083601f840112613ff757600080fd5b5081356001600160401b0381111561400e57600080fd5b602083019150836020828501011115613e0157600080fd5b60008060008060006080868803121561403e57600080fd5b853561404981613fa4565b9450602086013561405981613fa4565b93506040860135925060608601356001600160401b0381111561407b57600080fd5b61408788828901613fe5565b969995985093965092949392505050565b60008083601f8401126140aa57600080fd5b5081356001600160401b038111156140c157600080fd5b6020830191508360208260051b8501011115613e0157600080fd5b6000806000604084860312156140f157600080fd5b83356001600160401b0381111561410757600080fd5b61411386828701614098565b909790965060209590950135949350505050565b600082825180855260208086019550808260051b84010181860160005b8481101561417257601f19868403018952614160838351613f4c565b98840198925090830190600101614144565b5090979650505050505050565b602081526000610db76020830184614127565b6000806000604084860312156141a757600080fd5b83356001600160401b038111156141bd57600080fd5b61411386828701613fe5565b6000806000604084860312156141de57600080fd5b83356001600160401b03808211156141f557600080fd5b908501906080828803121561420957600080fd5b9093506020850135908082111561421f57600080fd5b5061422c86828701613fe5565b9497909650939450505050565b8035801515811461124557600080fd5b60008060008060008060008060a0898b03121561426557600080fd5b883561427081613fa4565b975060208901356001600160401b038082111561428c57600080fd5b6142988c838d01614098565b909950975060408b01359150808211156142b157600080fd5b6142bd8c838d01614098565b909750955060608b01359150808211156142d657600080fd5b506142e38b828c01614098565b90945092506142f6905060808a01614239565b90509295985092959890939650565b60008060006060848603121561431a57600080fd5b833561432581613fa4565b9250602084013561433581613fa4565b929592945050506040919091013590565b6000806020838503121561435957600080fd5b82356001600160401b0381111561436f57600080fd5b61437b85828601614098565b90969095509350505050565b60008060008060006060868803121561439f57600080fd5b85356001600160401b03808211156143b657600080fd5b6143c289838a01614098565b909750955060208801359150808211156143db57600080fd5b506143e888828901614098565b96999598509660400135949350505050565b6000806040838503121561440d57600080fd5b82356001600160401b0381168114613fd757600080fd5b60008060008060006060868803121561443c57600080fd5b85356001600160401b038082111561445357600080fd5b61445f89838a01613fe5565b9097509550602088013591508082111561447857600080fd5b506143e888828901613fe5565b6000806000806060858703121561449b57600080fd5b8435935060208501356001600160401b038111156144b857600080fd5b6144c487828801613fe5565b9598909750949560400135949350505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715614515576145156144d7565b604052919050565b600082601f83011261452e57600080fd5b81356001600160401b03811115614547576145476144d7565b61455a601f8201601f19166020016144ed565b81815284602083860101111561456f57600080fd5b816020850160208301376000918101602001919091529392505050565b60006020828403121561459e57600080fd5b81356001600160401b038111156145b457600080fd5b610cab8482850161451d565b6000602082840312156145d257600080fd5b8135610db781613fa4565b60006001600160401b038211156145f6576145f66144d7565b5060051b60200190565b600061461361460e846145dd565b6144ed565b8381529050602080820190600585901b84018681111561463257600080fd5b845b8181101561466d5780356001600160401b038111156146535760008081fd5b61465f8982890161451d565b855250928201928201614634565b505050509392505050565b60006020828403121561468a57600080fd5b81356001600160401b038111156146a057600080fd5b8201601f810184136146b157600080fd5b610cab84823560208401614600565b600080604083850312156146d357600080fd5b50508035926020909101359150565b6040815260006146f56040830185613f4c565b8281036020840152610db38185613f4c565b6000806000806060858703121561471d57600080fd5b843561472881613fa4565b93506020850135925060408501356001600160401b0381111561474a57600080fd5b61475687828801613fe5565b95989497509550505050565b60008060008060008060006080888a03121561477d57600080fd5b87356001600160401b038082111561479457600080fd5b6147a08b838c01613fe5565b909950975060208a0135965060408a01359150808211156147c057600080fd5b6147cc8b838c01614098565b909650945060608a01359150808211156147e557600080fd5b506147f28a828b01614098565b989b979a50959850939692959293505050565b6000806020838503121561481857600080fd5b82356001600160401b0381111561482e57600080fd5b61437b85828601613fe5565b6000806040838503121561484d57600080fd5b823561485881613fa4565b9150612e9660208401614239565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156148bb57603f198886030184526148a9858351613f4c565b9450928501929085019060010161488d565b5092979650505050505050565b6040815260006148db6040830185614127565b8281036020840152610db38185614127565b6000806000806080858703121561490357600080fd5b843561490e81613fa4565b9350602085013561491e81613fa4565b92506040850135915060608501356001600160401b0381111561494057600080fd5b61494c8782880161451d565b91505092959194509250565b60008060006040848603121561496d57600080fd5b833561497881613fa4565b925060208401356001600160401b0381111561499357600080fd5b61422c86828701613fe5565b600080604083850312156149b257600080fd5b82356149bd81613fa4565b915060208301356149cd81613fa4565b809150509250929050565b6000806000604084860312156149ed57600080fd5b8335925060208401356001600160401b0381111561499357600080fd5b60008060008060808587031215614a2057600080fd5b8435614a2b81613fa4565b93506020850135614a3b81613fa4565b92506040850135614a4b81613fa4565b91506060850135614a5b81613fa4565b939692955090935050565b600181811c90821680614a7a57607f821691505b6020821081036113ff57634e487b7160e01b600052602260045260246000fd5b600060208284031215614aac57600080fd5b610db782614239565b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112614ae257600080fd5b8301803591506001600160401b03821115614afc57600080fd5b602001915036819003821315613e0157600080fd5b634e487b7160e01b600052601160045260246000fd5b600060018201614b3957614b39614b11565b5060010190565b60208082526027908201527f52656769737472793a2053454e4445525f49535f4e4f545f4d494e54494e475f60408201526626a0a720a3a2a960c91b606082015260800190565b6000610db7368484614600565b60208082526029908201527f52656769737472793a2053454e4445525f49535f4e4f545f415050524f5645446040820152682fa7a92fa7aba722a960b91b606082015260800190565b60208082526022908201527f52656769737472793a20494e53554646494349454e545f5045524d495353494f6040820152614e5360f01b606082015260800190565b60008251614c31818460208701613f28565b9190910192915050565b601f821115610a1357600081815260208120601f850160051c81016020861015614c625750805b601f850160051c820191505b8181101561117057828155600101614c6e565b6001600160401b03831115614c9857614c986144d7565b614cac83614ca68354614a66565b83614c3b565b6000601f841160018114614ce05760008515614cc85750838201355b600019600387901b1c1916600186901b178355610ea0565b600083815260209020601f19861690835b82811015614d115786850135825560209485019460019092019101614cf1565b5086821015614d2e5760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b602081526000610cab602083018486614d40565b600060808236031215614d8f57600080fd5b604051608081016001600160401b038282108183111715614db257614db26144d7565b8160405284359150614dc382613fa4565b81835260208501356020840152604085013560408401526060850135915080821115614dee57600080fd5b50614dfb3682860161451d565b60608301525092915050565b6000614e1561460e846145dd565b80848252602080830192508560051b850136811115614e3357600080fd5b855b81811015614e6e5780356001600160401b03811115614e545760008081fd5b614e6036828a0161451d565b865250938201938201614e35565b50919695505050505050565b60008351614e8c818460208801613f28565b835190830190614ea0818360208801613f28565b01949350505050565b60006020808385031215614ebc57600080fd5b82356001600160401b03811115614ed257600080fd5b8301601f81018513614ee357600080fd5b8035614ef161460e826145dd565b81815260059190911b82018301908381019087831115614f1057600080fd5b928401925b82841015614f2e57833582529284019290840190614f15565b979650505050505050565b8082018082111561094057610940614b11565b6001600160a01b03848116825283166020820152606060408201819052600090610b6990830184613f4c565b634e487b7160e01b600052601260045260246000fd5b600082614f9d57614f9d614f78565b500490565b634e487b7160e01b600052600160045260246000fd5b8181038181111561094057610940614b11565b600081614fda57614fda614b11565b506000190190565b60008351614ff4818460208801613f28565b601760f91b9083019081528351615012816001840160208801613f28565b01600101949350505050565b60006020828403121561503057600080fd5b5051919050565b60006020828403121561504957600080fd5b8151610db781613fa4565b8183823760009101908152919050565b81516001600160401b0381111561507d5761507d6144d7565b6150918161508b8454614a66565b84614c3b565b602080601f8311600181146150c657600084156150ae5750858301515b600019600386901b1c1916600185901b178555611170565b600085815260208120601f198616915b828110156150f5578886015182559484019460019091019084016150d6565b50858210156151135787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60008451615135818460208901613f28565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6000826151c3576151c3614f78565b500690565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b634e487b7160e01b600052602160045260246000fd5b828152604060208201526000610cab6040830184613f4c565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061316590830184613f4c565b60006020828403121561528757600080fd5b8151610db781613ef556febe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a","storage":{}},"0x6ac8f19d1e0f81147cdf2a1e53cb1f4e18417204":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610296575f3560e01c80636352211e11610161578063c93ab3fd116100ca578063e985e9c511610084578063e985e9c5146106c8578063eb8ae530146106db578063ed70554d146106ee578063f242432a1461070d578063f2fde38b14610720578063fd0cd0d914610733575f80fd5b8063c93ab3fd14610647578063cf4088231461065a578063d8c9921a1461066d578063d9a50c1214610680578063da8c229e14610693578063e0dba60f146106b5575f80fd5b8063a22cb4651161011b578063a22cb465146105d5578063a4014982146105e8578063adf4960a146105fb578063b6bcad261461060e578063c475abff14610621578063c658e08614610634575f80fd5b80636352211e146105595780636e5d6ad21461056c578063715018a6146105975780638b4dfa751461059f5780638cf8b41e146105b25780638da5cb5b146105c5575f80fd5b80631f4e1504116102035780633f15457f116101bd5780633f15457f146104b1578063402906fc146104d857806341415eab146105005780634e1273f41461051357806353095467146105335780635d3590d514610546575f80fd5b80631f4e15041461042b57806320c38e2b1461043e57806324c1af44146104515780632b20e397146104645780632eb2c2d61461048b57806333c69ea91461049e575f80fd5b80630e4cd725116102545780630e4cd725146103a05780630e89341c146103b357806314ab9038146103c6578063150b7a02146103d95780631534e177146104055780631896f70a14610418575f80fd5b8062fdd58e1461029a5780630178fe3f146102c057806301ffc9a71461030657806306fdde0314610329578063081812fc14610360578063095ea7b31461038b575b5f80fd5b6102ad6102a8366004614316565b610746565b6040519081526020015b60405180910390f35b6102d36102ce366004614340565b6107f0565b604080516001600160a01b03909416845263ffffffff90921660208401526001600160401b0316908201526060016102b7565b61031961031436600461436c565b61081f565b60405190151581526020016102b7565b6103536040518060400160405280600b81526020016a2730b6b2abb930b83832b960a91b81525081565b6040516102b791906143d4565b61037361036e366004614340565b61085e565b6040516001600160a01b0390911681526020016102b7565b61039e610399366004614316565b6108a0565b005b6103196103ae3660046143e6565b6108e5565b6103536103c1366004614340565b61095e565b61039e6103d436600461442f565b6109cc565b6103ec6103e736600461449d565b610ac0565b6040516001600160e01b031990911681526020016102b7565b61039e61041336600461450a565b610c96565b61039e6104263660046143e6565b610cc0565b600754610373906001600160a01b031681565b61035361044c366004614340565b610d75565b6102ad61045f3660046145f6565b610e0c565b6103737f000000000000000000000000c965345edac823d56812cd20a10316233916a60581565b61039e610499366004614717565b610fe7565b61039e6104ac3660046147bd565b61121a565b6103737f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a981565b6104eb6104e6366004614811565b6113e6565b60405163ffffffff90911681526020016102b7565b61031961050e3660046143e6565b611480565b610526610521366004614832565b6114b8565b6040516102b79190614928565b600554610373906001600160a01b031681565b61039e61055436600461493a565b6115d7565b610373610567366004614340565b611655565b61057f61057a366004614978565b61165f565b6040516001600160401b0390911681526020016102b7565b61039e61178e565b61039e6105ad3660046149aa565b6117a1565b61057f6105c03660046149e9565b6118c0565b5f546001600160a01b0316610373565b61039e6105e3366004614a6b565b611c28565b6102ad6105f6366004614a97565b611cfd565b610319610609366004614b12565b611e38565b61039e61061c36600461450a565b611e5c565b6102ad61062f366004614b33565b61209e565b6102ad610642366004614b53565b6122fd565b61039e610655366004614bc0565b6124bd565b61039e610668366004614c26565b612605565b61039e61067b366004614c5b565b612794565b61031961068e366004614b33565b61285d565b6103196106a136600461450a565b60046020525f908152604090205460ff1681565b61039e6106c3366004614a6b565b612938565b6103196106d6366004614c86565b61299f565b61039e6106e9366004614cb2565b6129cc565b6102ad6106fc366004614340565b60016020525f908152604090205481565b61039e61071b366004614d15565b612d59565b61039e61072e36600461450a565b612e06565b610319610741366004614340565b612e7c565b5f6001600160a01b0383166107b65760405162461bcd60e51b815260206004820152602b60248201527f455243313135353a2062616c616e636520717565727920666f7220746865207a60448201526a65726f206164647265737360a81b60648201526084015b60405180910390fd5b5f6107c083611655565b9050836001600160a01b0316816001600160a01b0316036107e55760019150506107ea565b5f9150505b92915050565b5f8181526001602052604090205460a081901c60c082901c610813838383612f4d565b90959094509092509050565b5f6001600160e01b03198216631b05885b60e31b148061084f57506001600160e01b03198216630a85bd0160e11b145b806107ea57506107ea82612f80565b5f8061086983611655565b90506001600160a01b03811661088157505f92915050565b5f838152600360205260409020546001600160a01b03165b9392505050565b5f6108aa826107f0565b50915050603f1960408216016108d65760405163a2a7201360e01b8152600481018390526024016107ad565b6108e08383612fcf565b505050565b5f8080806108f2866107f0565b925092509250846001600160a01b0316836001600160a01b0316148061091d575061091d838661299f565b8061094157506001600160a01b0385166109368761085e565b6001600160a01b0316145b8015610954575061095282826130de565b155b9695505050505050565b6005546040516303a24d0760e21b8152600481018390526060916001600160a01b031690630e89341c906024015f60405180830381865afa1580156109a5573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526107ea9190810190614d78565b816109d78133611480565b6109f857803360405163168ab55d60e31b81526004016107ad929190614dea565b8260105f610a05836107f0565b5091505063ffffffff8282161615610a335760405163a2a7201360e01b8152600481018490526024016107ad565b604051630295720760e31b8152600481018790526001600160401b03861660248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906314ab9038906044015b5f604051808303815f87803b158015610aa2575f80fd5b505af1158015610ab4573d5f803e3d5ffd5b50505050505050505050565b5f336001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a6051614610b0a5760405163032634a760e31b815260040160405180910390fd5b5f808080610b1a86880188614e01565b83516020850120939750919550935091508890808214610b57576040516331970f3360e21b815260048101829052602481018390526044016107ad565b604051630a3b53db60e21b81526001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906328ed4f6c90610ba59085903090600401614dea565b5f604051808303815f87803b158015610bbc575f80fd5b505af1158015610bce573d5f803e3d5ffd5b5050604051636b727d4360e11b8152600481018d90525f92506276a70091506001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063d6e4fa8690602401602060405180830381865afa158015610c3c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c609190614e64565b610c6a9190614e8f565b9050610c7d87878761ffff16848861310d565b50630a85bd0160e11b9c9b505050505050505050505050565b610c9e613215565b600580546001600160a01b0319166001600160a01b0392909216919091179055565b81610ccb8133611480565b610cec57803360405163168ab55d60e31b81526004016107ad929190614dea565b8260085f610cf9836107f0565b5091505063ffffffff8282161615610d275760405163a2a7201360e01b8152600481018490526024016107ad565b604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a90610a8b9089908990600401614dea565b60066020525f908152604090208054610d8d90614eb6565b80601f0160208091040260200160405190810160405280929190818152602001828054610db990614eb6565b8015610e045780601f10610ddb57610100808354040283529160200191610e04565b820191905f5260205f20905b815481529060010190602001808311610de757829003601f168201915b505050505081565b5f87610e188133611480565b610e3957803360405163168ab55d60e31b81526004016107ad929190614dea565b87516020890120610e4a8a8261326e565b9250610e568a8461329a565b610e6083866133d3565b610e6b8a848b613406565b50610e788a8487876134cd565b9350610e8383613510565b610f33576040516305ef2c7f60e41b8152600481018b9052602481018290523060448201526001600160a01b0388811660648301526001600160401b03881660848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610f0a575f80fd5b505af1158015610f1c573d5f803e3d5ffd5b50505050610f2e8a848b8b89896135c6565b610fda565b6040516305ef2c7f60e41b8152600481018b9052602481018290523060448201526001600160a01b0388811660648301526001600160401b03881660848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610fb6575f80fd5b505af1158015610fc8573d5f803e3d5ffd5b50505050610fda8a848b8b89896135fc565b5050979650505050505050565b81518351146110495760405162461bcd60e51b815260206004820152602860248201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206044820152670dad2e6dac2e8c6d60c31b60648201526084016107ad565b6001600160a01b03841661106f5760405162461bcd60e51b81526004016107ad90614eee565b6001600160a01b03851633148061108b575061108b853361299f565b6110f25760405162461bcd60e51b815260206004820152603260248201527f455243313135353a207472616e736665722063616c6c6572206973206e6f74206044820152711bdddb995c881b9bdc88185c1c1c9bdd995960721b60648201526084016107ad565b5f5b83518110156111ad575f84828151811061111057611110614f33565b602002602001015190505f84838151811061112d5761112d614f33565b602002602001015190505f805f611143856107f0565b9250925092506111548583836136b6565b83600114801561117557508a6001600160a01b0316836001600160a01b0316145b6111915760405162461bcd60e51b81526004016107ad90614f47565b61119d858b848461375d565b50505050508060010190506110f4565b50836001600160a01b0316856001600160a01b0316336001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516111fd929190614f91565b60405180910390a461121333868686868661379d565b5050505050565b5f611225858561326e565b905061123181846133d3565b5f808061123d846107f0565b919450925090506001600160a01b03831615806112ea57506040516302571be360e01b81526004810185905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa1580156112ba573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112de9190614fbe565b6001600160a01b031614155b1561130857604051635374b59960e01b815260040160405180910390fd5b5f806113138a6107f0565b90935091508a905061134f576113298633611480565b61134a57853360405163168ab55d60e31b81526004016107ad929190614dea565b61137a565b6113598a33611480565b61137a57893360405163168ab55d60e31b81526004016107ad929190614dea565b6113858689846138f7565b611390878483613932565b9650620100008416158015906113b457508363ffffffff1688851763ffffffff1614155b156113d55760405163a2a7201360e01b8152600481018790526024016107ad565b96831796610ab486868a868b613977565b5f826113f28133611480565b61141357803360405163168ab55d60e31b81526004016107ad929190614dea565b8360025f611420836107f0565b5091505063ffffffff828216161561144e5760405163a2a7201360e01b8152600481018490526024016107ad565b5f808061145a8a6107f0565b9250925092506114738a84848c61ffff16178485613977565b5098975050505050505050565b5f80808061148d866107f0565b925092509250846001600160a01b0316836001600160a01b031614806109415750610941838661299f565b6060815183511461151d5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b60648201526084016107ad565b5f83516001600160401b0381111561153757611537614525565b604051908082528060200260200182016040528015611560578160200160208202803683370190505b5090505f5b84518110156115cf576115aa85828151811061158357611583614f33565b602002602001015185838151811061159d5761159d614f33565b6020026020010151610746565b8282815181106115bc576115bc614f33565b6020908102919091010152600101611565565b509392505050565b6115df613215565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af115801561162b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061164f9190614fd9565b50505050565b5f6107ea82613a1e565b5f8061166b858561326e565b905061167681613510565b61169357604051635374b59960e01b815260040160405180910390fd5b5f61169e86336108e5565b9050801580156116b557506116b38233611480565b155b156116d757813360405163168ab55d60e31b81526004016107ad929190614dea565b5f80806116e3856107f0565b925092509250831580156116fa5750620400008216155b1561171b5760405163a2a7201360e01b8152600481018690526024016107ad565b5f6117258a6107f0565b92505050611734888383613932565b97506117428685858b613a33565b6040516001600160401b038916815286907ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b1329060200160405180910390a2509598975050505050505050565b611796613215565b61179f5f613a49565b565b6117b85f805160206154fc8339815191528461326e565b6117c28133611480565b6117e357803360405163168ab55d60e31b81526004016107ad929190614dea565b306001600160a01b0384160361181757604051632ca49b0d60e11b81526001600160a01b03841660048201526024016107ad565b6118376118315f805160206154fc8339815191528661326e565b83613a98565b604051632142170760e11b81523060048201526001600160a01b038481166024830152604482018690527f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906342842e0e906064015f604051808303815f87803b1580156118a4575f80fd5b505af11580156118b6573d5f803e3d5ffd5b5050505050505050565b5f8086866040516118d2929190614ff4565b6040519081900381206331a9108f60e11b82526004820181905291505f907f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa15801561193f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119639190614fbe565b90506001600160a01b0381163314801590611a09575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063e985e9c590604401602060405180830381865afa1580156119e3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a079190614fd9565b155b15611a4157611a255f805160206154fc8339815191528361326e565b3360405163168ab55d60e31b81526004016107ad929190614dea565b6040516323b872dd60e01b81526001600160a01b038281166004830152306024830152604482018490527f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906323b872dd906064015f604051808303815f87803b158015611aae575f80fd5b505af1158015611ac0573d5f803e3d5ffd5b5050604051630a3b53db60e21b81526001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a6051692506328ed4f6c9150611b129085903090600401614dea565b5f604051808303815f87803b158015611b29575f80fd5b505af1158015611b3b573d5f803e3d5ffd5b5050604051636b727d4360e11b8152600481018590526276a70092507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b0316915063d6e4fa8690602401602060405180830381865afa158015611ba7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611bcb9190614e64565b611bd59190614e8f565b9250611c1d88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508a9250505061ffff8816868861310d565b505095945050505050565b6001600160a01b0382163303611c925760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084016107ad565b335f8181526002602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b335f9081526004602052604081205460ff16611d2b5760405162461bcd60e51b81526004016107ad90615003565b5f8787604051611d3c929190614ff4565b604051908190038120633f2891eb60e21b8252600482018190523060248301526044820187905291507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b03169063fca247ac906064016020604051808303815f875af1158015611db5573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611dd99190614e64565b9150611e2d88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508a9250505061ffff8616611e276276a70087614e8f565b8861310d565b509695505050505050565b5f80611e43846107f0565b50841663ffffffff908116908516149250505092915050565b611e64613215565b6007546001600160a01b031615611f785760075460405163a22cb46560e01b81526001600160a01b0391821660048201525f60248201527f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063a22cb465906044015f604051808303815f87803b158015611ee0575f80fd5b505af1158015611ef2573d5f803e3d5ffd5b505060075460405163a22cb46560e01b81526001600160a01b0391821660048201525f60248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9909116925063a22cb46591506044015f604051808303815f87803b158015611f61575f80fd5b505af1158015611f73573d5f803e3d5ffd5b505050505b600780546001600160a01b0319166001600160a01b0383169081179091551561209b5760075460405163a22cb46560e01b81526001600160a01b039182166004820152600160248201527f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063a22cb465906044015f604051808303815f87803b158015612007575f80fd5b505af1158015612019573d5f803e3d5ffd5b505060075460405163a22cb46560e01b81526001600160a01b039182166004820152600160248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9909116925063a22cb46591506044015f604051808303815f87803b158015612089575f80fd5b505af1158015611213573d5f803e3d5ffd5b50565b335f9081526004602052604081205460ff166120cc5760405162461bcd60e51b81526004016107ad90615003565b5f6120e45f805160206154fc8339815191528561326e565b60405163c475abff60e01b815260048101869052602481018590529091505f906001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063c475abff906044016020604051808303815f875af1158015612154573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906121789190614e64565b6040516331a9108f60e11b8152600481018790529091507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa9250505080156121fc575060408051601f3d908101601f191682019092526121f991810190614fbe565b60015b6122095791506107ea9050565b6001600160a01b038116301415806122b157506040516302571be360e01b81526004810184905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015612281573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906122a59190614fbe565b6001600160a01b031614155b156122c0575091506107ea9050565b505f6122cf6276a70083614e8f565b5f8481526001602052604090205490915060a081901c6122f185838386613a33565b50919695505050505050565b5f866123098133611480565b61232a57803360405163168ab55d60e31b81526004016107ad929190614dea565b5f878760405161233b929190614ff4565b6040518091039020905061234f898261326e565b925061235b898461329a565b61236583866133d3565b5f6123a68a858b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061340692505050565b90506123b48a8588886134cd565b94506123bf84613510565b61246b576040516306ab592360e01b8152600481018b9052602481018390523060448201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906306ab5923906064016020604051808303815f875af1158015612434573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906124589190614e64565b506124668482898989613b83565b6124b0565b6124b08a858b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508d92508c91508b90506135fc565b5050509695505050505050565b5f6125005f86868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613bc59050565b6007549091506001600160a01b031661252c5760405163093075b560e21b815260040160405180910390fd5b6125368133611480565b61255757803360405163168ab55d60e31b81526004016107ad929190614dea565b5f8080612563846107f0565b919450925090505f6125748561085e565b905061257f85613c81565b60075f9054906101000a90046001600160a01b03166001600160a01b0316639198c2768a8a878787878e8e6040518963ffffffff1660e01b81526004016125cd989796959493929190615073565b5f604051808303815f87803b1580156125e4575f80fd5b505af11580156125f6573d5f803e3d5ffd5b50505050505050505050505050565b836126108133611480565b61263157803360405163168ab55d60e31b81526004016107ad929190614dea565b84601c5f61263e836107f0565b5091505063ffffffff828216161561266c5760405163a2a7201360e01b8152600481018490526024016107ad565b60405163cf40882360e01b8152600481018990523060248201526001600160a01b0387811660448301526001600160401b03871660648301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063cf408823906084015f604051808303815f87803b1580156126e8575f80fd5b505af11580156126fa573d5f803e3d5ffd5b5050506001600160a01b038816905061275f575f612717896107f0565b509150506201ffff196202000082160161274f57604051632ca49b0d60e11b81526001600160a01b03891660048201526024016107ad565b612759895f613a98565b506118b6565b5f61276989611655565b905061278981898b5f1c600160405180602001604052805f815250613d1e565b505050505050505050565b61279e838361326e565b6127a88133611480565b6127c957803360405163168ab55d60e31b81526004016107ad929190614dea565b7f6c32148f748aba23997146d7fe89e962e3cc30271290fb96f5f4337756c03b5284016128095760405163615a470360e01b815260040160405180910390fd5b6001600160a01b038216158061282757506001600160a01b03821630145b1561285057604051632ca49b0d60e11b81526001600160a01b03831660048201526024016107ad565b61164f611831858561326e565b5f80612869848461326e565b90505f61287582613510565b90505f805160206154fc83398151915285146128945791506107ea9050565b6040516331a9108f60e11b8152600481018590527f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa925050508015612915575060408051601f3d908101601f1916820190925261291291810190614fbe565b60015b612923575f925050506107ea565b6001600160a01b0316301492506107ea915050565b612940613215565b6001600160a01b0382165f81815260046020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf8791015b60405180910390a25050565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205460ff1690565b5f80612a105f87878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613dfe9050565b915091505f612a578288888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613bc59050565b90505f612a64828561326e565b5f818152600660205260409020909150612a7f888a8361511e565b507f6c32148f748aba23997146d7fe89e962e3cc30271290fb96f5f4337756c03b528201612ac05760405163615a470360e01b815260040160405180910390fd5b6040516302571be360e01b8152600481018290525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa158015612b25573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612b499190614fbe565b90506001600160a01b0381163314801590612bef575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063e985e9c590604401602060405180830381865afa158015612bc9573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612bed9190614fd9565b155b15612c1157813360405163168ab55d60e31b81526004016107ad929190614dea565b6001600160a01b03861615612c9c57604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a90612c6e9085908a90600401614dea565b5f604051808303815f87803b158015612c85575f80fd5b505af1158015612c97573d5f803e3d5ffd5b505050505b604051635b0fc9c360e01b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635b0fc9c390612cea9085903090600401614dea565b5f604051808303815f87803b158015612d01575f80fd5b505af1158015612d13573d5f803e3d5ffd5b50505050612789828a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201829052508d93509150819050613b83565b6001600160a01b038416612d7f5760405162461bcd60e51b81526004016107ad90614eee565b6001600160a01b038516331480612d9b5750612d9b853361299f565b612df95760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2063616c6c6572206973206e6f74206f776e6572206e6f7260448201526808185c1c1c9bdd995960ba1b60648201526084016107ad565b6112138585858585613d1e565b612e0e613215565b6001600160a01b038116612e735760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107ad565b61209b81613a49565b5f8181526006602052604081208054829190612e9790614eb6565b80601f0160208091040260200160405190810160405280929190818152602001828054612ec390614eb6565b8015612f0e5780601f10612ee557610100808354040283529160200191612f0e565b820191905f5260205f20905b815481529060010190602001808311612ef157829003601f168201915b5050505050905080515f03612f2557505f92915050565b5f80612f318382613dfe565b90925090505f612f418483613bc5565b9050610954818461285d565b5f8042836001600160401b03161015612f775761ffff1962010000851601612f73575f94505b5f93505b50929391925050565b5f6001600160e01b03198216636cdb3d1360e11b1480612fb057506001600160e01b031982166303a24d0760e21b145b806107ea57506301ffc9a760e01b6001600160e01b03198316146107ea565b5f612fd982611655565b9050806001600160a01b0316836001600160a01b0316036130465760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084016107ad565b336001600160a01b03821614806130625750613062813361299f565b6130d45760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016107ad565b6108e08383613eb2565b5f620200008381161480156108995750426130fc6276a700846151d7565b6001600160401b0316109392505050565b845160208601205f61312c5f805160206154fc8339815191528361326e565b90505f61315488604051806040016040528060058152602001626cae8d60e31b815250613f1f565b5f83815260066020526040902090915061316e82826151f7565b50613181828289620300008a1789613b83565b6001600160a01b038416156118b657604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a906131de9085908890600401614dea565b5f604051808303815f87803b1580156131f5575f80fd5b505af1158015613207573d5f803e3d5ffd5b505050505050505050505050565b5f546001600160a01b0316331461179f5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107ad565b604080516020808201949094528082019290925280518083038201815260609092019052805191012090565b5f80806132a6846107f0565b91945092509050426001600160401b0382161080801561336657506001600160a01b038416158061336657506040516302571be360e01b8152600481018690525f906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015613337573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061335b9190614fbe565b6001600160a01b0316145b156133a4575f613375876107f0565b50915050602081161561339e5760405163a2a7201360e01b8152600481018790526024016107ad565b506133cb565b620100008316156133cb5760405163a2a7201360e01b8152600481018690526024016107ad565b505050505050565b63fffdffff81811763ffffffff16146134025760405163a2a7201360e01b8152600481018390526024016107ad565b5050565b60605f6134aa8360065f8881526020019081526020015f20805461342990614eb6565b80601f016020809104026020016040519081016040528092919081815260200182805461345590614eb6565b80156134a05780601f10613477576101008083540402835291602001916134a0565b820191905f5260205f20905b81548152906001019060200180831161348357829003601f168201915b5050505050613f1f565b5f8581526006602052604090209091506134c482826151f7565b50949350505050565b5f806134d8856107f0565b925050505f806134e9885f1c6107f0565b92509250506134f98787846138f7565b613504858483613932565b98975050505050505050565b5f8061351b83611655565b6001600160a01b0316141580156107ea57506040516302571be360e01b81526004810183905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015613592573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906135b69190614fbe565b6001600160a01b03161492915050565b5f86815260066020526040812080546135e491879161342990614eb6565b90506135f38682868686613b83565b50505050505050565b5f8080613608886107f0565b9250925092505f61362f8860065f8d81526020019081526020015f20805461342990614eb6565b5f8a815260066020526040902080549192509061364b90614eb6565b90505f0361366c575f89815260066020526040902061366a82826151f7565b505b61367b89858886178589613977565b6001600160a01b03871661369857613693895f613a98565b610ab4565b610ab484888b5f1c600160405180602001604052805f815250613d1e565b6201ffff19620200008316016136d6576136d36276a700826151d7565b90505b42816001600160401b0316101561370f576201000082161561370a5760405162461bcd60e51b81526004016107ad90614f47565b613734565b60048216156137345760405163a2a7201360e01b8152600481018490526024016107ad565b604082165f036108e05750505f90815260036020526040902080546001600160a01b0319169055565b60c0816001600160401b0316901b60a08363ffffffff16901b846001600160a01b0316171760015f8681526020019081526020015f208190555050505050565b6001600160a01b0384163b156133cb5760405163bc197c8160e01b81526001600160a01b0385169063bc197c81906137e190899089908890889088906004016152b2565b6020604051808303815f875af192505050801561381b575060408051601f3d908101601f1916820190925261381891810190615303565b60015b6138c75761382761531e565b806308c379a003613860575061383b615337565b806138465750613862565b8060405162461bcd60e51b81526004016107ad91906143d4565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e20455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b60648201526084016107ad565b6001600160e01b0319811663bc197c8160e01b146135f35760405162461bcd60e51b81526004016107ad906153bf565b63ffff000082161580159060018316159082906139115750805b156112135760405163a2a7201360e01b8152600481018690526024016107ad565b5f816001600160401b0316846001600160401b03161115613951578193505b826001600160401b0316846001600160401b0316101561396f578293505b509192915050565b61398385858584613a33565b60405163ffffffff8416815285907f39873f00c80f4f94b7bd1594aebcf650f003545b74824d57ddf4939e3ff3a34b9060200160405180910390a2816001600160401b0316816001600160401b03161115611213576040516001600160401b038216815285907ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b132906020015b60405180910390a25050505050565b5f80613a29836107f0565b5090949350505050565b613a3d8483613f96565b61164f8484848461375d565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b613aa3826001611e38565b15613ac45760405163a2a7201360e01b8152600481018390526024016107ad565b613acd82613c81565b604051635b0fc9c360e01b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635b0fc9c390613b1b9085908590600401614dea565b5f604051808303815f87803b158015613b32575f80fd5b505af1158015613b44573d5f803e3d5ffd5b50506040516001600160a01b03841681528492507fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c49150602001612993565b613b8f85848484613fcf565b847f8ce7013e8abebc55c3890a68f5a27c67c3f7efa64e584de5fb22363c606fd34085858585604051613a0f9493929190615407565b5f805f613bd28585613dfe565b909250905081613c435760018551613bea919061544d565b8414613c385760405162461bcd60e51b815260206004820152601d60248201527f6e616d65686173683a204a756e6b20617420656e64206f66206e616d6500000060448201526064016107ad565b505f91506107ea9050565b613c4d8582613bc5565b6040805160208101929092528101839052606001604051602081830303815290604052805190602001209250505092915050565b5f8181526001602052604090205460a081901c60c082901c613ca4838383612f4d565b5f86815260036020526040812080546001600160a01b0319169055909350613cd091508590848461375d565b60408051858152600160208201525f916001600160a01b0386169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b5f805f613d2a866107f0565b925092509250613d3b8683836136b6565b846001148015613d5c5750876001600160a01b0316836001600160a01b0316145b613d785760405162461bcd60e51b81526004016107ad90614f47565b866001600160a01b0316836001600160a01b031603613d9957505050611213565b613da58688848461375d565b60408051878152602081018790526001600160a01b03808a1692908b169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46118b6338989898989614041565b5f8083518310613e505760405162461bcd60e51b815260206004820152601e60248201527f726561644c6162656c3a20496e646578206f7574206f6620626f756e6473000060448201526064016107ad565b5f848481518110613e6357613e63614f33565b016020015160f81c90508015613e8f57613e8885613e82866001615460565b836140fb565b9250613e93565b5f92505b613e9d8185615460565b613ea8906001615460565b9150509250929050565b5f81815260036020526040902080546001600160a01b0319166001600160a01b0384169081179091558190613ee682611655565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6060600183511015613f4457604051631406d65b60e11b815260040160405180910390fd5b60ff83511115613f69578260405163e3ba295f60e01b81526004016107ad91906143d4565b82518383604051602001613f7f93929190615473565b604051602081830303815290604052905092915050565b61ffff811615801590613fae57506201000181811614155b156134025760405163a2a7201360e01b8152600481018390526024016107ad565b613fd98483613f96565b5f848152600160205260409020546001600160a01b0381161561403557613fff85613c81565b6040515f815285907fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c49060200160405180910390a25b6112138585858561411d565b6001600160a01b0384163b156133cb5760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e619061408590899089908890889088906004016154b7565b6020604051808303815f875af19250505080156140bf575060408051601f3d908101601f191682019092526140bc91810190615303565b60015b6140cb5761382761531e565b6001600160e01b0319811663f23a6e6160e01b146135f35760405162461bcd60e51b81526004016107ad906153bf565b82515f906141098385615460565b1115614113575f80fd5b5091016020012090565b835f808061412a846107f0565b9194509250905063ffff000082166001600160401b038087169083161115614150578195505b42826001600160401b03161061416557958617955b6001600160a01b038416156141bc5760405162461bcd60e51b815260206004820152601f60248201527f455243313135353a206d696e74206f66206578697374696e6720746f6b656e0060448201526064016107ad565b6001600160a01b03881661421c5760405162461bcd60e51b815260206004820152602160248201527f455243313135353a206d696e7420746f20746865207a65726f206164647265736044820152607360f81b60648201526084016107ad565b306001600160a01b038916036142915760405162461bcd60e51b815260206004820152603460248201527f455243313135353a206e65774f776e65722063616e6e6f74206265207468652060448201527313985b5955dc985c1c195c8818dbdb9d1c9858dd60621b60648201526084016107ad565b61429d8589898961375d565b60408051868152600160208201526001600160a01b038a16915f9133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4612789335f8a88600160405180602001604052805f815250614041565b6001600160a01b038116811461209b575f80fd5b5f8060408385031215614327575f80fd5b823561433281614302565b946020939093013593505050565b5f60208284031215614350575f80fd5b5035919050565b6001600160e01b03198116811461209b575f80fd5b5f6020828403121561437c575f80fd5b813561089981614357565b5f5b838110156143a1578181015183820152602001614389565b50505f910152565b5f81518084526143c0816020860160208601614387565b601f01601f19169290920160200192915050565b602081525f61089960208301846143a9565b5f80604083850312156143f7575f80fd5b82359150602083013561440981614302565b809150509250929050565b80356001600160401b038116811461442a575f80fd5b919050565b5f8060408385031215614440575f80fd5b8235915061445060208401614414565b90509250929050565b5f8083601f840112614469575f80fd5b5081356001600160401b0381111561447f575f80fd5b602083019150836020828501011115614496575f80fd5b9250929050565b5f805f805f608086880312156144b1575f80fd5b85356144bc81614302565b945060208601356144cc81614302565b93506040860135925060608601356001600160401b038111156144ed575f80fd5b6144f988828901614459565b969995985093965092949392505050565b5f6020828403121561451a575f80fd5b813561089981614302565b634e487b7160e01b5f52604160045260245ffd5b601f8201601f191681016001600160401b038111828210171561455e5761455e614525565b6040525050565b5f6001600160401b0382111561457d5761457d614525565b50601f01601f191660200190565b5f82601f83011261459a575f80fd5b81356145a581614565565b6040516145b28282614539565b8281528560208487010111156145c6575f80fd5b826020860160208301375f92810160200192909252509392505050565b803563ffffffff8116811461442a575f80fd5b5f805f805f805f60e0888a03121561460c575f80fd5b8735965060208801356001600160401b03811115614628575f80fd5b6146348a828b0161458b565b965050604088013561464581614302565b9450606088013561465581614302565b935061466360808901614414565b925061467160a089016145e3565b915061467f60c08901614414565b905092959891949750929550565b5f6001600160401b038211156146a5576146a5614525565b5060051b60200190565b5f82601f8301126146be575f80fd5b813560206146cb8261468d565b6040516146d88282614539565b80915083815260208101915060208460051b8701019350868411156146fb575f80fd5b602086015b84811015611e2d5780358352918301918301614700565b5f805f805f60a0868803121561472b575f80fd5b853561473681614302565b9450602086013561474681614302565b935060408601356001600160401b0380821115614761575f80fd5b61476d89838a016146af565b94506060880135915080821115614782575f80fd5b61478e89838a016146af565b935060808801359150808211156147a3575f80fd5b506147b08882890161458b565b9150509295509295909350565b5f805f80608085870312156147d0575f80fd5b84359350602085013592506147e7604086016145e3565b91506147f560608601614414565b905092959194509250565b803561ffff8116811461442a575f80fd5b5f8060408385031215614822575f80fd5b8235915061445060208401614800565b5f8060408385031215614843575f80fd5b82356001600160401b0380821115614859575f80fd5b818501915085601f83011261486c575f80fd5b813560206148798261468d565b6040516148868282614539565b83815260059390931b85018201928281019150898411156148a5575f80fd5b948201945b838610156148cc5785356148bd81614302565b825294820194908201906148aa565b965050860135925050808211156148e1575f80fd5b50613ea8858286016146af565b5f815180845260208085019450602084015f5b8381101561491d57815187529582019590820190600101614901565b509495945050505050565b602081525f61089960208301846148ee565b5f805f6060848603121561494c575f80fd5b833561495781614302565b9250602084013561496781614302565b929592945050506040919091013590565b5f805f6060848603121561498a575f80fd5b83359250602084013591506149a160408501614414565b90509250925092565b5f805f606084860312156149bc575f80fd5b8335925060208401356149ce81614302565b915060408401356149de81614302565b809150509250925092565b5f805f805f608086880312156149fd575f80fd5b85356001600160401b03811115614a12575f80fd5b614a1e88828901614459565b9096509450506020860135614a3281614302565b9250614a4060408701614800565b91506060860135614a5081614302565b809150509295509295909350565b801515811461209b575f80fd5b5f8060408385031215614a7c575f80fd5b8235614a8781614302565b9150602083013561440981614a5e565b5f805f805f8060a08789031215614aac575f80fd5b86356001600160401b03811115614ac1575f80fd5b614acd89828a01614459565b9097509550506020870135614ae181614302565b9350604087013592506060870135614af881614302565b9150614b0660808801614800565b90509295509295509295565b5f8060408385031215614b23575f80fd5b82359150614450602084016145e3565b5f8060408385031215614b44575f80fd5b50508035926020909101359150565b5f805f805f8060a08789031215614b68575f80fd5b8635955060208701356001600160401b03811115614b84575f80fd5b614b9089828a01614459565b9096509450506040870135614ba481614302565b9250614bb2606088016145e3565b9150614b0660808801614414565b5f805f8060408587031215614bd3575f80fd5b84356001600160401b0380821115614be9575f80fd5b614bf588838901614459565b90965094506020870135915080821115614c0d575f80fd5b50614c1a87828801614459565b95989497509550505050565b5f805f8060808587031215614c39575f80fd5b843593506020850135614c4b81614302565b925060408501356147e781614302565b5f805f60608486031215614c6d575f80fd5b833592506020840135915060408401356149de81614302565b5f8060408385031215614c97575f80fd5b8235614ca281614302565b9150602083013561440981614302565b5f805f8060608587031215614cc5575f80fd5b84356001600160401b03811115614cda575f80fd5b614ce687828801614459565b9095509350506020850135614cfa81614302565b91506040850135614d0a81614302565b939692955090935050565b5f805f805f60a08688031215614d29575f80fd5b8535614d3481614302565b94506020860135614d4481614302565b9350604086013592506060860135915060808601356001600160401b03811115614d6c575f80fd5b6147b08882890161458b565b5f60208284031215614d88575f80fd5b81516001600160401b03811115614d9d575f80fd5b8201601f81018413614dad575f80fd5b8051614db881614565565b604051614dc58282614539565b828152866020848601011115614dd9575f80fd5b610954836020830160208701614387565b9182526001600160a01b0316602082015260400190565b5f805f8060808587031215614e14575f80fd5b84356001600160401b03811115614e29575f80fd5b614e358782880161458b565b9450506020850135614e4681614302565b9250614e5460408601614800565b91506060850135614d0a81614302565b5f60208284031215614e74575f80fd5b5051919050565b634e487b7160e01b5f52601160045260245ffd5b6001600160401b03818116838216019080821115614eaf57614eaf614e7b565b5092915050565b600181811c90821680614eca57607f821691505b602082108103614ee857634e487b7160e01b5f52602260045260245ffd5b50919050565b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b634e487b7160e01b5f52603260045260245ffd5b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b604081525f614fa360408301856148ee565b8281036020840152614fb581856148ee565b95945050505050565b5f60208284031215614fce575f80fd5b815161089981614302565b5f60208284031215614fe9575f80fd5b815161089981614a5e565b818382375f9101908152919050565b60208082526028908201527f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f604082015267373a3937b63632b960c11b606082015260800190565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b60c081525f61508660c083018a8c61504b565b6001600160a01b03898116602085015263ffffffff891660408501526001600160401b03881660608501528616608084015282810360a08401526150cb81858761504b565b9b9a5050505050505050505050565b601f8211156108e057805f5260205f20601f840160051c810160208510156150ff5750805b601f840160051c820191505b81811015611213575f815560010161510b565b6001600160401b0383111561513557615135614525565b615149836151438354614eb6565b836150da565b5f601f84116001811461517a575f85156151635750838201355b5f19600387901b1c1916600186901b178355611213565b5f83815260208120601f198716915b828110156151a95786850135825560209485019460019092019101615189565b50868210156151c5575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b6001600160401b03828116828216039080821115614eaf57614eaf614e7b565b81516001600160401b0381111561521057615210614525565b6152248161521e8454614eb6565b846150da565b602080601f831160018114615257575f84156152405750858301515b5f19600386901b1c1916600185901b1785556133cb565b5f85815260208120601f198616915b8281101561528557888601518255948401946001909101908401615266565b50858210156152a257878501515f19600388901b60f8161c191681555b5050505050600190811b01905550565b6001600160a01b0386811682528516602082015260a0604082018190525f906152dd908301866148ee565b82810360608401526152ef81866148ee565b9050828103608084015261350481856143a9565b5f60208284031215615313575f80fd5b815161089981614357565b5f60033d11156153345760045f803e505f5160e01c5b90565b5f60443d10156153445790565b6040516003193d81016004833e81513d6001600160401b03816024840111818411171561537357505050505090565b828501915081518181111561538b5750505050505090565b843d87010160208285010111156153a55750505050505090565b6153b460208286010187614539565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b608081525f61541960808301876143a9565b6001600160a01b039590951660208301525063ffffffff9290921660408301526001600160401b0316606090910152919050565b818103818111156107ea576107ea614e7b565b808201808211156107ea576107ea614e7b565b60ff60f81b8460f81b1681525f8351615493816001850160208801614387565b8351908301906154aa816001840160208801614387565b0160010195945050505050565b6001600160a01b03868116825285166020820152604081018490526060810183905260a0608082018190525f906154f0908301846143a9565b97965050505050505056fe93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4aea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2a68925cf5169f28586095d5b5b9933b3008f4c793a48be4f59b8b2bc62aa60a":"0x1","0x54cdd369e4e8a8515e52ca72ec816c2101831ad1f18bf44102ed171459c9b4f8":"0x2","0xa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb49":"0xffffffffffffffff000100010000000000000000000000000000000000000000","0xafa26c20e8b3d9a2853d642cfe1021dae26242ffedfac91c97aab212c1a4b93b":"0xffffffffffffffff000100010000000000000000000000000000000000000000","0xef5b11c47ebee44618abc22110e10e3b408ea5e799056d2b38461aa7b97c5a97":"0x1","0xfb9e8e321b8a5ec48f12a7b41f22c6e595d761285c9eb19d8dda7c99edf1b54f":"0x36574680000000000000000000000000000000000000000000000000000000a"}},"0x6e1eb616c7d69491f9a880f815ff5574768cba20":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061007d5760003560e01c806314ab90381161005b57806314ab90381461010957806316a25cbd1461011c5780631896f70a146101695780635b0fc9c31461017c57600080fd5b80630178b8bf1461008257806302571be3146100cb57806306ab5923146100f4575b600080fd5b6100ae610090366004610416565b6000908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100ae6100d9366004610416565b6000908152602081905260409020546001600160a01b031690565b61010761010236600461044b565b61018f565b005b610107610117366004610480565b61024c565b61015061012a366004610416565b600090815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100c2565b6101076101773660046104bd565b6102ef565b61010761018a3660046104bd565b610384565b60008381526020819052604090205483906001600160a01b031633146101b457600080fd5b60408051602080820187905281830186905282518083038401815260608301808552815191909201206001600160a01b0386169091529151859187917fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829181900360800190a3600090815260208190526040902080546001600160a01b0319166001600160a01b039390931692909217909155505050565b60008281526020819052604090205482906001600160a01b0316331461027157600080fd5b60405167ffffffffffffffff8316815283907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a250600091825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b60008281526020819052604090205482906001600160a01b0316331461031457600080fd5b6040516001600160a01b038316815283907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a25060009182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b60008281526020819052604090205482906001600160a01b031633146103a957600080fd5b6040516001600160a01b038316815283907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a25060009182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b60006020828403121561042857600080fd5b5035919050565b80356001600160a01b038116811461044657600080fd5b919050565b60008060006060848603121561046057600080fd5b83359250602084013591506104776040850161042f565b90509250925092565b6000806040838503121561049357600080fd5b82359150602083013567ffffffffffffffff811681146104b257600080fd5b809150509250929050565b600080604083850312156104d057600080fd5b823591506104e06020840161042f565b9050925092905056fea164736f6c6343000811000a","storage":{"0x859ecef2e168dc10231b000bd53493b42bc9d944cac29d94582c1e1d43592131":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x7bb6cd9be29fab783c0b494a06fed8b2e2596b7a":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100ea5760003560e01c80636debcb8d1161008c578063b34f33c511610066578063b34f33c514610741578063d0778d6c14610814578063ef2c3088146108f2578063f5090c1e14610980576100ea565b80636debcb8d146105ca5780636fab95b3146106585780637b1039991461071d576100ea565b8063511f1112116100c8578063511f1112146103c557806361603dd91461044857806368b6154f146104bd5780636ccbae5f1461059b576100ea565b806307eca395146100ef578063280d9b051461021457806330135293146102f2575b600080fd5b610212600480360360a081101561010557600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561013457600080fd5b82018360208201111561014657600080fd5b803590602001918460018302840111600160201b8311171561016757600080fd5b919390929091602081019035600160201b81111561018457600080fd5b82018360208201111561019657600080fd5b803590602001918460018302840111600160201b831117156101b757600080fd5b919390929091602081019035600160201b8111156101d457600080fd5b8201836020820111156101e657600080fd5b803590602001918460018302840111600160201b8311171561020757600080fd5b509092509050610aae565b005b610212600480360360a081101561022a57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561026457600080fd5b82018360208201111561027657600080fd5b803590602001918460018302840111600160201b8311171561029757600080fd5b919390929091602081019035600160201b8111156102b457600080fd5b8201836020820111156102c657600080fd5b803590602001918460018302840111600160201b831117156102e757600080fd5b509092509050610c92565b6102126004803603608081101561030857600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561033757600080fd5b82018360208201111561034957600080fd5b803590602001918460018302840111600160201b8311171561036a57600080fd5b919390929091602081019035600160201b81111561038757600080fd5b82018360208201111561039957600080fd5b803590602001918460018302840111600160201b831117156103ba57600080fd5b509092509050610e3d565b610212600480360360608110156103db57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561040a57600080fd5b82018360208201111561041c57600080fd5b803590602001918460018302840111600160201b8311171561043d57600080fd5b509092509050610fcc565b6102126004803603604081101561045e57600080fd5b81359190810190604081016020820135600160201b81111561047f57600080fd5b82018360208201111561049157600080fd5b803590602001918460018302840111600160201b831117156104b257600080fd5b5090925090506110c9565b610212600480360360a08110156104d357600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561050d57600080fd5b82018360208201111561051f57600080fd5b803590602001918460018302840111600160201b8311171561054057600080fd5b919390929091602081019035600160201b81111561055d57600080fd5b82018360208201111561056f57600080fd5b803590602001918460018302840111600160201b8311171561059057600080fd5b5090925090506111ae565b6105b8600480360360208110156105b157600080fd5b50356113a8565b60408051918252519081900360200190f35b610212600480360360808110156105e057600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561061a57600080fd5b82018360208201111561062c57600080fd5b803590602001918460018302840111600160201b8311171561064d57600080fd5b5090925090506113ba565b6102126004803603606081101561066e57600080fd5b81359190810190604081016020820135600160201b81111561068f57600080fd5b8201836020820111156106a157600080fd5b803590602001918460018302840111600160201b831117156106c257600080fd5b919390929091602081019035600160201b8111156106df57600080fd5b8201836020820111156106f157600080fd5b803590602001918460018302840111600160201b8311171561071257600080fd5b5090925090506114d4565b610725611675565b604080516001600160a01b039092168252519081900360200190f35b6102126004803603608081101561075757600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561078657600080fd5b82018360208201111561079857600080fd5b803590602001918460018302840111600160201b831117156107b957600080fd5b919390929091602081019035600160201b8111156107d657600080fd5b8201836020820111156107e857600080fd5b803590602001918460018302840111600160201b8311171561080957600080fd5b509092509050611684565b610212600480360360a081101561082a57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561086457600080fd5b82018360208201111561087657600080fd5b803590602001918460018302840111600160201b8311171561089757600080fd5b919390929091602081019035600160201b8111156108b457600080fd5b8201836020820111156108c657600080fd5b803590602001918460018302840111600160201b831117156108e757600080fd5b5090925090506117de565b6102126004803603608081101561090857600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561094257600080fd5b82018360208201111561095457600080fd5b803590602001918460018302840111600160201b8311171561097557600080fd5b5090925090506119e4565b610212600480360360c081101561099657600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156109d057600080fd5b8201836020820111156109e257600080fd5b803590602001918460018302840111600160201b83111715610a0357600080fd5b919390929091602081019035600160201b811115610a2057600080fd5b820183602082011115610a3257600080fd5b803590602001918460018302840111600160201b83111715610a5357600080fd5b919390929091602081019035600160201b811115610a7057600080fd5b820183602082011115610a8257600080fd5b803590602001918460018302840111600160201b83111715610aa357600080fd5b509092509050611ad3565b610bb163ce9fb82b89898989898960405160240180876001600160a01b03166001600160a01b0316815260200186815260200180602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f820116905080830192505050985050505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208884848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b600154604051630119f80560e21b81526001600160a01b038a811660048301908152602483018b9052608060448401908152608484018a90529190931692630467e014928c928c928c928c928c928c92909190606481019060a401878780828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f82011690508083019250505098505050505050505050600060405180830381600087803b158015610c7057600080fd5b505af1158015610c84573d6000803e3d6000fd5b505050505050505050505050565b610d8363b88d4fde888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040516315eab15d60e21b81526001600160a01b03898116600483019081528982166024840152604483018990526080606484019081526084840188905291909316926357aac574928b928b928b928b928b929160a401848480828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b158015610e1c57600080fd5b505af1158015610e30573d6000803e3d6000fd5b5050505050505050505050565b610f09637c69eae28787878760405160240180856001600160a01b03166001600160a01b0316815260200184815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09d909d1b9c909c178c529351909a208a51918d01849004840282018401909a528b81528f985096508b95508a94508493505085019050838280828437600092019190915250611d5492505050565b600154604051630119f80560e21b81526001600160a01b038881166004830190815260248301899052608060448401908152608484018890529190931692630467e014928a928a928a928a9290606481019060a401858580828437600081840152601f19601f8201169050808301925050508381038252600081526020016020019650505050505050600060405180830381600087803b158015610fac57600080fd5b505af1158015610fc0573d6000803e3d6000fd5b50505050505050505050565b604080516001600160a01b038616602482015260448082018690528251808303909101815260649091018252602081810180516001600160e01b0316632392c18960e01b17815291519091208251601f85018390048302810183019093528383526110569290918691908690869081908401838280828437600092019190915250611d5492505050565b60015460408051631292e83560e11b81526001600160a01b0387811660048301526024820187905291519190921691632525d06a91604480830192600092919082900301818387803b1580156110ab57600080fd5b505af11580156110bf573d6000803e3d6000fd5b5050505050505050565b6040805160248082018690528251808303909101815260449091018252602081810180516001600160e01b0316630852cd8d60e31b17815291519091208251601f85018390048302810183019093528383526111449290918691908690869081908401838280828437600092019190915250611d5492505050565b6001546040805163e67ca8a360e01b81526004810186905290516001600160a01b039092169163e67ca8a39160248082019260009290919082900301818387803b15801561119157600080fd5b505af11580156111a5573d6000803e3d6000fd5b50505050505050565b61129f639e5be9a5888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b03909316926302759c37928b928b9286926368b62d32928d928d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561132757600080fd5b505afa15801561133b573d6000803e3d6000fd5b505050506040513d602081101561135157600080fd5b5051604080516001600160e01b031960e087901b1681526001600160a01b03948516600482015292909316602483015260448201529051606480830192600092919082900301818387803b158015610e1c57600080fd5b60009081526020819052604090205490565b604080516001600160a01b0380881660248301528616604482015260648082018690528251808303909101815260849091018252602081810180516001600160e01b0316632142170760e11b17815291519091208251601f850183900483028101830190935283835261144c9290918691908690869081908401838280828437600092019190915250611d5492505050565b600154604080516315eab15d60e21b81526001600160a01b0388811660048301528781166024830152604482018790526080606483015260006084830181905292519316926357aac5749260c48084019391929182900301818387803b1580156114b557600080fd5b505af11580156114c9573d6000803e3d6000fd5b505050505050505050565b611585635cbe11128686866040516024018084815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09c909c1b9b909b178b5293519099208951918c018490048402820184019099528a81528e975095508a9450899350839250508401838280828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b039093169263e67ca8a39284926368b62d32928b928b928b929190606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561160b57600080fd5b505afa15801561161f573d6000803e3d6000fd5b505050506040513d602081101561163557600080fd5b5051604080516001600160e01b031960e085901b168152600481019290925251602480830192600092919082900301818387803b1580156114b557600080fd5b6001546001600160a01b031690565b61175063d8d3cc6e8787878760405160240180856001600160a01b03166001600160a01b0316815260200184815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09d909d1b9c909c178c529351909a208a51918d01849004840282018401909a528b81528f985096508b95508a94508493505085019050838280828437600092019190915250611d5492505050565b60015460405163b546666960e01b81526001600160a01b03888116600483019081526024830189905260606044840190815260648401889052919093169263b5466669928a928a928a928a9290608401848480828437600081840152601f19601f82011690508083019250505095505050505050600060405180830381600087803b158015610fac57600080fd5b6118cf639d743989888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b03909316926357aac574928b928b9286926368b62d32928d928d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561195757600080fd5b505afa15801561196b573d6000803e3d6000fd5b505050506040513d602081101561198157600080fd5b5051604080516001600160e01b031960e087901b1681526001600160a01b039485166004820152929093166024830152604482015260806064820152600060848201819052915160c4808301939282900301818387803b158015610e1c57600080fd5b604080516001600160a01b0380881660248301528616604482015260648082018690528251808303909101815260849091018252602081810180516001600160e01b03166323b872dd60e01b17815291519091208251601f8501839004830281018301909352838352611a769290918691908690869081908401838280828437600092019190915250611d5492505050565b600154604080516302759c3760e01b81526001600160a01b038881166004830152878116602483015260448201879052915191909216916302759c3791606480830192600092919082900301818387803b1580156114b557600080fd5b611bf063c29b52f98a8a8a8a8a8a8a60405160240180886001600160a01b03166001600160a01b03168152602001876001600160a01b03166001600160a01b0316815260200186815260200180602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f82011690508083019250505099505050505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208884848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b8152600481018a815260248201928352604482018990526001600160a01b03909316926357aac574928d928d9286926368b62d32928f928f928f92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b158015611c7857600080fd5b505afa158015611c8c573d6000803e3d6000fd5b505050506040513d6020811015611ca257600080fd5b50516040516001600160e01b031960e086901b1681526001600160a01b0380851660048301908152908416602483015260448201839052608060648301908152608483018b90528b928b92919060a401848480828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b158015611d3157600080fd5b505af1158015611d45573d6000803e3d6000fd5b50505050505050505050505050565b6000828152602081815260408083205481518084018890523060601b81840152605480820183905283518083039091018152607490910190925281519190920120909190611db3908490611da790611ea9565b9063ffffffff611efa16565b90506001600160a01b03811615801590611e4957506001546040805163430c208160e01b81526001600160a01b038481166004830152602482018890529151919092169163430c2081916044808301926020929190829003018186803b158015611e1c57600080fd5b505afa158015611e30573d6000803e3d6000fd5b505050506040513d6020811015611e4657600080fd5b50515b611e8e576040805162461bcd60e51b8152602060048201526011602482015270494e56414c49445f5349474e415455524560781b604482015290519081900360640190fd5b50505060009081526020819052604090208054600101905550565b604080517f19457468657265756d205369676e6564204d6573736167653a0a333200000000602080830191909152603c8083019490945282518083039094018452605c909101909152815191012090565b60008151604114611f0d57506000611fe3565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0821115611f535760009350505050611fe3565b8060ff16601b14158015611f6b57508060ff16601c14155b15611f7c5760009350505050611fe3565b6040805160008152602080820180845289905260ff8416828401526060820186905260808201859052915160019260a0808401939192601f1981019281900390910190855afa158015611fd3573d6000803e3d6000fd5b5050506020604051035193505050505b9291505056fea265627a7a7231582014816bfd0c1519ce8c4cf272eb0526ffdba3abef0df7f17deb0da40bd8abb77f64736f6c634300050c0032","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533"}},"0x7c3c91245769c8b7450ad522792dec4bd4bf797f":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b506004361061003f575f3560e01c80631bf7e13e146100435780636ccbae5f1461006c578063a424740014610099575b5f80fd5b610056610051366004610749565b6100bc565b604051610063919061082c565b60405180910390f35b61008b61007a36600461083e565b5f9081526001602052604090205490565b604051908152602001610063565b6100ac6100a7366004610749565b6101d6565b6040519015158152602001610063565b60605f5a90506100cd8585856101d6565b6101315760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e61676572466f727761726465723a205349474e415455604482015269149157d253959053125160b21b60648201526084015b60405180910390fd5b6101cb6101416020870187610870565b5f546001600160a01b031660408801358461015f60608b018b610889565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f9201919091525061023292505050565b9150505b9392505050565b5f61022a6101e38561093a565b5f54604080516020601f88018190048102820181019092528681526001600160a01b03909216919087908790819084018382808284375f9201919091525061030e92505050565b949350505050565b606061023d85610453565b5f80876001600160a01b0316866102568b8a898961047e565b60405161026391906109f5565b5f604051808303815f8787f1925050503d805f811461029d576040519150601f19603f3d011682016040523d82523d5f602084013e6102a2565b606091505b5090925090506102b3603f87610a10565b5a116102c1576102c1610a2f565b61030182826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506104ae565b9998505050505050505050565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015610352573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103769190610a43565b90505f6104238660600151805190602001208688602001516040516020016103c39392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561044957508551610449906001600160a01b031682866104e7565b9695505050505050565b5f8181526001602081905260409091205461046d91610a5a565b5f9182526001602052604090912055565b606082858560405160200161049593929190610a7f565b6040516020818303038152906040529050949350505050565b606083156104bd5750816101cf565b8251156104cd5782518084602001fd5b8160405162461bcd60e51b8152600401610128919061082c565b5f805f6104f48585610622565b90925090505f81600481111561050c5761050c610abd565b14801561052a5750856001600160a01b0316826001600160a01b0316145b1561053a576001925050506101cf565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401610561929190610ad1565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161059f91906109f5565b5f60405180830381855afa9150503d805f81146105d7576040519150601f19603f3d011682016040523d82523d5f602084013e6105dc565b606091505b50915091508180156105ef575080516020145b801561061657508051630b135d3f60e11b906106149083016020908101908401610a43565b145b98975050505050505050565b5f808251604103610656576020830151604084015160608501515f1a61064a87828585610664565b9450945050505061065d565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561069957505f90506003610740565b8460ff16601b141580156106b157508460ff16601c14155b156106c157505f90506004610740565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610712573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b03811661073a575f60019250925050610740565b91505f90505b94509492505050565b5f805f6040848603121561075b575f80fd5b833567ffffffffffffffff80821115610772575f80fd5b9085019060808288031215610785575f80fd5b9093506020850135908082111561079a575f80fd5b818601915086601f8301126107ad575f80fd5b8135818111156107bb575f80fd5b8760208285010111156107cc575f80fd5b6020830194508093505050509250925092565b5f5b838110156107f95781810151838201526020016107e1565b50505f910152565b5f81518084526108188160208601602086016107df565b601f01601f19169290920160200192915050565b602081525f6101cf6020830184610801565b5f6020828403121561084e575f80fd5b5035919050565b80356001600160a01b038116811461086b575f80fd5b919050565b5f60208284031215610880575f80fd5b6101cf82610855565b5f808335601e1984360301811261089e575f80fd5b83018035915067ffffffffffffffff8211156108b8575f80fd5b60200191503681900382131561065d575f80fd5b634e487b7160e01b5f52604160045260245ffd5b6040516080810167ffffffffffffffff81118282101715610903576109036108cc565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610932576109326108cc565b604052919050565b5f6080823603121561094a575f80fd5b6109526108e0565b61095b83610855565b81526020808401358183015260408401356040830152606084013567ffffffffffffffff8082111561098b575f80fd5b9085019036601f83011261099d575f80fd5b8135818111156109af576109af6108cc565b6109c1601f8201601f19168501610909565b915080825236848285010111156109d6575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b5f8251610a068184602087016107df565b9190910192915050565b5f82610a2a57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b5f60208284031215610a53575f80fd5b5051919050565b80820180821115610a7957634e487b7160e01b5f52601160045260245ffd5b92915050565b5f8451610a908184602089016107df565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f61022a604083018461080156fea164736f6c6343000818000a","storage":{"0x0":"0x39a27956b78d00a4e00ea8833ff0947410a2933f"}},"0x8861cdfa38838531275ce12f9e795c3b9ff29cbe":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x936188f2c3c8e8c95e425b6fe41c2ac9e701585e":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x94f57ed7e9af03a10e8eb23ce1b3c7914a182b0f":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x951c830a0471c04dcb60ce244dee38ee4b0609ec":{"nonce":1,"balance":"0x8ac7230489e80000","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0x1","0x97":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x13cf90498be59d359caa5b6092b365feab4610605d7107d1f05f8e94ac955652":"0x1","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xc2110388dd54228ae0a834119457ede938bf0b57","0x412386de53449251cbf7ce1f4c6a038bf9c0746e62d331b08ef0c3fa7d0ab672":"0x4fbf7b2f171336958be5d15ff762a5cff5363568","0x60793a5062d506d35cc8f1beda67ee5028c16bfcd9c923d5bfc439c04bd929b1":"0x6ac8f19d1e0f81147cdf2a1e53cb1f4e18417204","0x75df8b43665bf2e4996a686913c4c278ca7aed85444740ca40355b1c9a94b504":"0x1","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x3198fc981626687f4b5bdf0fbeabb0a5e0489c03","0xf851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004":"0xc965345edac823d56812cd20a10316233916a605"}},"0x95f29431aeb52c0d5dbeeec36010b8e2ca69cb3d":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x9b2565a3545a1312bdcb6e7148a7f7cae8c2706b":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c806373cc48a61161008857806398d35f201161006357806398d35f2014610215578063bd7ed31a1461021d578063c327deef14610245578063d7b82ebe1461026d575f80fd5b806373cc48a6146101af5780638438dc04146101ef5780638da5cb5b14610202575f80fd5b806313af4035116100c357806313af40351461015657806328e7677d146101695780632c095cbb1461017c578063435cc1621461018f575f80fd5b8063020ed8d3146100e9578063087991bc146100fe5780630b1a249514610143575b5f80fd5b6100fc6100f73660046122ff565b610280565b005b61011161010c36600461238a565b610300565b6040805163ffffffff94851681529390921660208401526001600160601b031916908201526060015b60405180910390f35b6100fc610151366004612510565b61036c565b6100fc6101643660046125c6565b6104da565b6100fc6101773660046122ff565b610512565b6100fc61018a3660046125e1565b61058a565b6101a261019d366004612674565b610656565b60405161013a919061278c565b6101d76101bd36600461279e565b60046020525f90815260409020546001600160a01b031681565b6040516001600160a01b03909116815260200161013a565b6100fc6101fd3660046122ff565b6106d2565b6001546101d7906001600160a01b031681565b6101a261074a565b6101d761022b36600461279e565b60056020525f90815260409020546001600160a01b031681565b6101d761025336600461279e565b60036020525f90815260409020546001600160a01b031681565b6101a261027b3660046127b7565b6107d5565b6001546001600160a01b03163314610296575f80fd5b60ff82165f8181526003602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527ff73c3c226af96b7f1ba666a21b3ceaf2be3ee6a365e3178fd9cd1eaae0075aa891015b60405180910390a15050565b5f805f8060025f8787604051610317929190612817565b604080519182900390912082526020808301939093529081015f90812061ffff8b16825290925290205463ffffffff80821695506401000000008204169350600160401b900460601b91505093509350939050565b83516020808601919091205f90815260028252604080822061ffff891683529092529081205463ffffffff16906103a385846107ea565b90506103b0818784610889565b6103b8612239565b845151156103d7576103ca85856107ea565b90506103d7818885610889565b5f6103e1836108cc565b602081015190915060fe16156103f5575f80fd5b61040081602761092a565b158015610425575061041381600261092a565b1580610425575061042581600661092a565b61042d575f80fd5b61043e89898561012001518461093a565b156104795787516020808a01919091205f90815260028252604080822061ffff8d1683529092522080546001600160e01b03191690556104cf565b6104988884610120015183856101200151610493876108cc565b610968565b156100e55787516020808a01919091205f90815260028252604080822061ffff8d1683529092522080546001600160e01b03191690555b505050505050505050565b6001546001600160a01b031633146104f0575f80fd5b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6001546001600160a01b03163314610528575f80fd5b60ff82165f8181526004602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527f2fcc274c3b72dd483ab201bfa87295e3817e8b9b10693219873b722ca1af00c791016102f4565b610592612239565b61059c83836107ea565b805190915061ffff16602f146105b0575f80fd5b60a081015184516020808701919091205f90815260028252604080822061ffff8a16835290925220546105e9919063ffffffff16610a7c565b6105f1575f80fd5b5f6105fb82610a94565b9050805151602082015110156100e55761061c818361012001518789610aab565b505082516020808501919091205f90815260028252604080822061ffff881683529092522080546001600160e01b03191690555b50505050565b60605f83838080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201829052509394505050505b85518110156106c7576106bd8682815181106106af576106af612826565b602002602001015183610c4a565b9150600101610691565b5090505b9392505050565b6001546001600160a01b031633146106e8575f80fd5b60ff82165f8181526005602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527fc7eec866a7a1386188cc3ca20ffea75b71bd3e90a60b6791b1d3f0971145118d91016102f4565b5f80546107569061283a565b80601f01602080910402602001604051908101604052809291908181526020018280546107829061283a565b80156107cd5780601f106107a4576101008083540402835291602001916107cd565b820191905f5260205f20905b8154815290600101906020018083116107b057829003601f168201915b505050505081565b60606107e18383610c4a565b90505b92915050565b6107f2612239565b82516107fd90610dc6565b905061080d8160e0015183610ebf565b610815575f80fd5b5f61082382835f0151610f25565b604083015190915060ff16610838825f610fcc565b14610841575f80fd5b610120820181905260808201516108589042610a7c565b610860575f80fd5b61086e428360a00151610a7c565b610876575f80fd5b61088281838686611026565b5092915050565b6108978360a0015182610a7c565b61089f575f80fd5b825161ffff166032146108b0575f80fd5b6108bf83610120015183611106565b6108c7575f80fd5b505050565b6040805160c0810182525f8082526020820181905291810182905260608082018190526080820183905260a08201529061090583610a94565b60a081015160c08201519192506106cb91610921908290612880565b83519190611172565b5f6107e18360a001515f846112b4565b5f6109468284866113c1565b1561095d57610955828661092a565b159050610960565b505f5b949350505050565b60208101515f9060fe161561097b575f80fd5b5f610985866113e6565b90505f610991856113e6565b90505f8061099f8a82611401565b6109aa906001612893565b60ff1690505b8951811015610a6b57836109dc896109d784858f516109cf9190612880565b8f9190611424565b6114a4565b03610a3f575f6109f7876109d785868f516109cf9190612880565b90508660800151841015610a23578381118015610a175750866080015181105b95505050505050610a73565b83811180610a1757508660800151811095505050505050610a73565b905080610a4c8a82611401565b610a57906001612893565b610a649060ff16826128ac565b90506109b0565b505f93505050505b95945050505050565b5f80610a8883856128bf565b60030b12159392505050565b610a9c61228e565b6107e48261010001515f61152d565b60a084015184515f90610abe9083611548565b90505f8660a001518760c00151610ad59190612880565b9050818111610ae2575f80fd5b5f610aed868861159f565b9050805f03610b1a57610b0c610b0384866128ac565b895190876112b4565b15610b15575f80fd5b610b5b565b87515f90610b29908686611424565b90505f8213610b36575f80fd5b5f610b41898361159f565b12156104cf575f610b52888361159f565b126104cf575f80fd5b5050505050505050565b60c08101516020820181905281515111610b7c5750565b5f610b8e825f01518360200151611548565b8260200151610b9d91906128ac565b8251909150610bac90826116ec565b61ffff166040830152610bc06002826128ac565b8251909150610bcf90826116ec565b61ffff166060830152610be36002826128ac565b8251909150610bf29082611712565b63ffffffff166080830152610c086004826128ac565b82519091505f90610c1990836116ec565b61ffff169050610c2a6002836128ac565b60a084018190529150610c3d81836128ac565b60c0909301929092525050565b6060610c54612239565b610c5e84846107ea565b61012081015180516020918201205f908152600282526040808220845161ffff16835290925220805491925090600160401b900460601b6001600160601b03191615610cc35760a08201518154610cbb919063ffffffff16610a7c565b610cc3575f80fd5b604080516060808201835260a085015163ffffffff9081168352608086015181166020808501918252610100880180518051908301206001600160601b0319168688019081526101208a0180518051908501205f908152600285528981208c5161ffff16825290945292889020965187549451915190961c600160401b0268010000000000000000600160e01b03199186166401000000000267ffffffffffffffff19909516969095169590951792909217939093169190911790925551905191517f55ced933cdd5a34dd03eb5d4bef19ec6ebb251dcd7a988eee0c1b9a13baaa88b92610db192916128e6565b60405180910390a15061010001519392505050565b610dce612239565b610dd8825f6116ec565b61ffff168152610de9826002611401565b60ff166020820152610dfc826003611401565b60ff166040820152610e0f826004611712565b63ffffffff9081166060830152610e2b90839060089061171216565b63ffffffff9081166080830152610e47908390600c9061171216565b63ffffffff90811660a0830152610e639083906010906116ec16565b61ffff1660c0820152610e7782601261173a565b60e0820181905251610eb490610e8e9060126128ac565b8260e001515160128551610ea29190612880565b610eac9190612880565b849190611424565b610100820152919050565b5f80610ed5610ece8483611548565b84906116ec565b83516020808601919091208651878301205f90815260028352604080822061ffff90951682529390925291902054600160401b900460601b6001600160601b031990811691161491505092915050565b60605f610f3184610a94565b90505b8051516020820151101561088257606081015161ffff16600114610f56575f80fd5b81515f03610f6e57610f6781611754565b9150610fa7565b60208101518151610f7e91611548565b825114610f89575f80fd5b805160208201518351610f9f9285925f92611775565b610fa7575f80fd5b8261ffff16816040015161ffff1614610fbe575f80fd5b610fc781610b65565b610f34565b5f805b83518310610fdf57610fdf61290a565b5f610fea8585611401565b60ff169050610ffa8160016128ac565b61100490856128ac565b9350805f0361101357506107e1565b61101e6001836128ac565b915050610fcf565b83518360e00151511115611038575f80fd5b61105c5f858560e0015151875161104f9190612880565b60e0870151929190611797565b611064575f80fd5b5f61106f828261152d565b9050602b61ffff16816040015161ffff160361109d576110908484836117cb565b611098575f80fd5b6110ff565b603061ffff16816040015161ffff16036110bc5761109084848361185f565b60405162461bcd60e51b8152602060048201526014602482015273139bc81d985b1a59081c1c9bdbd988199bdd5b9960621b604482015260640160405180910390fd5b5050505050565b5f806111128482611401565b61111d906001612893565b60ff1690505f5b835181101561095d5761113984828785611797565b15611149576001925050506107e4565b6111538482611401565b61115e906001612893565b61116b9060ff16826128ac565b9050611124565b6040805160c0810182525f8082526020820181905291810182905260608082018190526080820183905260a0820152906111ac83856128ac565b90506111c26111bb5f866128ac565b8690611401565b60ff1682526111d56111bb6001866128ac565b60ff1660208301526111f26111eb6002866128ac565b86906116ec565b61ffff1660408301525f61121161120a6004876128ac565b8790611401565b905061121e6005866128ac565b945061122e868660ff8416611424565b606084015261124060ff8216866128ac565b94505f61124d8787611401565b905060208160ff16111561125f575f80fd5b61126a6001876128ac565b955061127a878760ff8416611900565b608085015261128c60ff8216876128ac565b95506112a48661129c8186612880565b899190611424565b60a0850152509195945050505050565b5f60ff600883811c82169183916112cc918616612932565b90505f6112dd600780871690612952565b600160ff919091161b9050855b87518110156113b4575f6112fe8983611401565b90505f61131661130f8460016128ac565b8b90611401565b90508160ff168660ff161015611334575f96505050505050506106cb565b8160ff168660ff1603611393578460ff168160ff161161135c575f96505050505050506106cb565b8361137f61136d60ff8816866128ac565b6113789060026128ac565b8c90611401565b1660ff165f141596505050505050506106cb565b61139e816002612893565b6113ab9060ff16846128ac565b925050506112ea565b505f979650505050505050565b5f806113cd85846114a4565b90505f6113d9856113e6565b9190911495945050505050565b5f6107e460016113f68484611401565b84919060ff1661193d565b5f82828151811061141457611414612826565b016020015160f81c905092915050565b825160609061143383856128ac565b111561143d575f80fd5b5f8267ffffffffffffffff811115611457576114576123d9565b6040519080825280601f01601f191660200182016040528015611481576020820181803683370190505b50905060208082019086860101611499828287611b43565b509095945050505050565b815160ff165f9081526005602052604080822054606085015182860151925163347ced5960e11b81526001600160a01b03909216926368f9dab2926114ee9291879160040161296b565b602060405180830381865afa158015611509573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107e191906129a4565b61153561228e565b82815260c081018290526107e481610b65565b5f815b8351811061155b5761155b61290a565b5f6115668583611401565b60ff1690506115768160016128ac565b61158090836128ac565b9150805f0361158f5750611595565b5061154b565b6109608382612880565b5f6115aa8383611b98565b156115b657505f6107e4565b5f805f805f6115c5885f610fcc565b90505f6115d2885f610fcc565b90505b808211156115fe578593506115ea8987611bb3565b9550816115f6816129bb565b9250506115d5565b81811115611627578492506116138886611bb3565b94508061161f816129bb565b9150506115fe565b5f8211801561163f575061163d89878a88611797565b155b15611674578593506116518987611bb3565b95508492506116608886611bb3565b945061166d600183612880565b9150611627565b855f0361168a575f1996505050505050506107e4565b845f036116a057600196505050505050506107e4565b6116df6116ae8560016128ac565b6116b88b87611401565b60ff168a6116c78760016128ac565b6116d18d89611401565b8e949392919060ff16611bd6565b9998505050505050505050565b81515f906116fb8360026128ac565b1115611705575f80fd5b50016002015161ffff1690565b81515f906117218360046128ac565b111561172b575f80fd5b50016004015163ffffffff1690565b60605f6117478484611548565b9050610960848483611424565b602081015181516060916107e49161176c9082611548565b84519190611424565b5f611781848484611cc6565b61178c878785611cc6565b149695505050505050565b5f6117af83838486516117aa9190612880565b611cc6565b6117c186868789516117aa9190612880565b1495945050505050565b5f806117d685610a94565b90505b8051516020820151101561095d57604081015161ffff166030146117fb575f80fd5b5f61180582611ce8565b90505f61181e5f835184611d049092919063ffffffff16565b905061182c81838989611da0565b1561184f5761184561183d84611754565b868385611e9b565b93505050506106cb565b505061185a81610b65565b6117d9565b5f6118778460e0015161187184611754565b90611b98565b61187f575f80fd5b815151602083015110156118f75761189e8460e0015161187184611754565b6118a6575f80fd5b5f6118b083611ce8565b90505f6118c95f835184611d049092919063ffffffff16565b90506118d781838888611da0565b156118e7576001925050506106cb565b50506118f282610b65565b61187f565b505f9392505050565b5f602082111561190e575f80fd5b835161191a83856128ac565b1115611924575f80fd5b506020919092018101519190036101000a5f1901191690565b5f603482111561194b575f80fd5b5f80805b84811015611a29575f8761196383896128ac565b8151811061197357611973612826565b01602001516001600160f81b0319169050600360fc1b81108015906119a65750603d60f91b6001600160f81b0319821611155b6119ae575f80fd5b604051806080016040528060478152602001612b5c604791396119d6603060f884901c612880565b815181106119e6576119e6612826565b0160209081015160f81c93508311156119fd575f80fd5b611a08600187612880565b8203611a145750611a29565b5060059290921b60ff8216179160010161194f565b505f611a368560056129d0565b9050611a436008866129e7565b5f03611a5a578160ff16600584901b179250611b29565b611a656008866129e7565b600203611a935760028260ff16901c60ff16600384901b179250600281611a8c9190612880565b9050611b29565b611a9e6008866129e7565b600403611ac55760048260ff16901c60ff16600184901b179250600481611a8c9190612880565b611ad06008866129e7565b600503611af75760018260ff16901c60ff16600484901b179250600181611a8c9190612880565b611b026008866129e7565b6007036100e55760038260ff16901c60ff16600284901b179250600381611a8c9190612880565b611b3581610100612880565b9290921b9695505050505050565b60208110611b7b5781518352611b5a6020846128ac565b9250611b676020836128ac565b9150611b74602082612880565b9050611b43565b905182516020929092036101000a5f190180199091169116179052565b5f815183511480156107e157506107e1835f845f8751611775565b5f611bbe8383611401565b60ff16611bcc8360016128ac565b6107e191906128ac565b5f8480831015611be35750815b6020878901810190858701015f5b83811015611cab5782518251808214611c7b575f6020871115611c1657505f19611c52565b600184611c24896020612880565b611c2e91906128ac565b611c399060086129d0565b611c44906002612ada565b611c4e9190612880565b1990505b5f611c61838316858416612ae5565b90508015611c78579750611cbc9650505050505050565b50505b611c866020866128ac565b9450611c936020856128ac565b93505050602081611ca491906128ac565b9050611bf1565b50611cb68589612ae5565b93505050505b9695505050505050565b82515f90611cd483856128ac565b1115611cde575f80fd5b5091016020012090565b60a081015160c08201516060916107e49161176c908290612880565b604080516080810182525f8082526020820181905291810191909152606080820152611d3a611d335f856128ac565b85906116ec565b61ffff168152611d55611d4e6002856128ac565b8590611401565b60ff166020820152611d6b611d4e6003856128ac565b60ff166040820152611d94611d816004856128ac565b611d8c600485612880565b869190611424565b60608201529392505050565b5f846020015160ff16600314611db757505f610960565b826020015160ff16856040015160ff1614611dd357505f610960565b5f611ddd85611f96565b90508360c0015161ffff168161ffff1614611dfb575f915050610960565b8551610100165f03611e10575f915050610960565b60408087015160ff165f908152600360209081529082902054855191860151925163de8f50a160e01b81526001600160a01b039091169263de8f50a192611e5c928a9290600401612b04565b602060405180830381865afa158015611e77573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611cbc9190612b3c565b5f80611ea683611f96565b90505b84515160208601511015611f8b5760a085015160c08601515f91611edb91611ed2908290612880565b88519190611d04565b90508161ffff16815f015161ffff1614611ef55750611f7d565b846040015160ff16816020015160ff1614611f105750611f7d565b60408051808201909152606081525f6020820152611f3c85518951611f3591906128ac565b8290611ff7565b50611f47818961205a565b50611f52818661205a565b50611f698260400151825f0151846060015161207f565b15611f7a5760019350505050610960565b50505b611f8685610b65565b611ea9565b505f95945050505050565b5f805f5b8351811015611fe8576001811615611fbe57611fb68482611401565b60ff16611fd0565b6008611fca8583611401565b60ff16901b5b611fde9061ffff16836128ac565b9150600101611f9a565b506106cb601082901c826128ac565b60408051808201909152606081525f60208201526120166020836129e7565b1561203e576120266020836129e7565b612031906020612880565b61203b90836128ac565b91505b506020828101829052604080518085525f815290920101905290565b60408051808201909152606081525f60208201526107e183845f015151848551612126565b60ff83165f908152600460205260408120546001600160a01b03166120a557505f6106cb565b60ff84165f90815260046020819052604091829020549151637bf41d7760e11b81526001600160a01b039092169163f7e83aee916120e79187918791016128e6565b602060405180830381865afa158015612102573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109609190612b3c565b60408051808201909152606081525f60208201528251821115612147575f80fd5b602085015161215683866128ac565b111561218957612189856121798760200151878661217491906128ac565b61220c565b6121849060026129d0565b612222565b5f808651805187602083010193508088870111156121a75787860182525b505050602084015b602084106121e757805182526121c66020836128ac565b91506121d36020826128ac565b90506121e0602085612880565b93506121af565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b5f8183111561221c5750816107e4565b50919050565b815161222e8383611ff7565b50610650838261205a565b60408051610140810182525f8082526020820181905291810182905260608082018390526080820183905260a0820183905260c082019290925260e08101829052610100810182905261012081019190915290565b6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b803560ff811681146122e3575f80fd5b919050565b6001600160a01b03811681146122fc575f80fd5b50565b5f8060408385031215612310575f80fd5b612319836122d3565b91506020830135612329816122e8565b809150509250929050565b803561ffff811681146122e3575f80fd5b5f8083601f840112612355575f80fd5b50813567ffffffffffffffff81111561236c575f80fd5b602083019150836020828501011115612383575f80fd5b9250929050565b5f805f6040848603121561239c575f80fd5b6123a584612334565b9250602084013567ffffffffffffffff8111156123c0575f80fd5b6123cc86828701612345565b9497909650939450505050565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff81118282101715612416576124166123d9565b604052919050565b5f82601f83011261242d575f80fd5b813567ffffffffffffffff811115612447576124476123d9565b61245a601f8201601f19166020016123ed565b81815284602083860101111561246e575f80fd5b816020850160208301375f918101602001919091529392505050565b5f6040828403121561249a575f80fd5b6040516040810167ffffffffffffffff82821081831117156124be576124be6123d9565b8160405282935084359150808211156124d5575f80fd5b6124e18683870161241e565b835260208501359150808211156124f6575f80fd5b506125038582860161241e565b6020830152505092915050565b5f805f805f60a08688031215612524575f80fd5b61252d86612334565b9450602086013567ffffffffffffffff80821115612549575f80fd5b61255589838a0161241e565b9550604088013591508082111561256a575f80fd5b61257689838a0161248a565b9450606088013591508082111561258b575f80fd5b61259789838a0161248a565b935060808801359150808211156125ac575f80fd5b506125b98882890161241e565b9150509295509295909350565b5f602082840312156125d6575f80fd5b81356107e1816122e8565b5f805f80608085870312156125f4575f80fd5b6125fd85612334565b9350602085013567ffffffffffffffff80821115612619575f80fd5b6126258883890161241e565b9450604087013591508082111561263a575f80fd5b6126468883890161248a565b9350606087013591508082111561265b575f80fd5b506126688782880161241e565b91505092959194509250565b5f805f60408486031215612686575f80fd5b833567ffffffffffffffff8082111561269d575f80fd5b818601915086601f8301126126b0575f80fd5b81356020828211156126c4576126c46123d9565b8160051b6126d38282016123ed565b928352848101820192828101908b8511156126ec575f80fd5b83870192505b8483101561272657823586811115612708575f80fd5b6127168d86838b010161248a565b83525091830191908301906126f2565b985050508701359250508082111561273c575f80fd5b506123cc86828701612345565b5f81518084525f5b8181101561276d57602081850181015186830182015201612751565b505f602082860101526020601f19601f83011685010191505092915050565b602081525f6107e16020830184612749565b5f602082840312156127ae575f80fd5b6107e1826122d3565b5f80604083850312156127c8575f80fd5b823567ffffffffffffffff808211156127df575f80fd5b6127eb8683870161248a565b93506020850135915080821115612800575f80fd5b5061280d8582860161241e565b9150509250929050565b818382375f9101908152919050565b634e487b7160e01b5f52603260045260245ffd5b600181811c9082168061284e57607f821691505b60208210810361221c57634e487b7160e01b5f52602260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b818103818111156107e4576107e461286c565b60ff81811683821601908111156107e4576107e461286c565b808201808211156107e4576107e461286c565b600382810b9082900b03637fffffff198112637fffffff821317156107e4576107e461286c565b604081525f6128f86040830185612749565b8281036020840152610a738185612749565b634e487b7160e01b5f52600160045260245ffd5b634e487b7160e01b5f52601260045260245ffd5b5f61ffff808416806129465761294661291e565b92169190910492915050565b60ff82811682821603908111156107e4576107e461286c565b606081525f61297d6060830186612749565b828103602084015261298f8186612749565b91505061ffff83166040830152949350505050565b5f602082840312156129b4575f80fd5b5051919050565b5f816129c9576129c961286c565b505f190190565b80820281158282048414176107e4576107e461286c565b5f826129f5576129f561291e565b500690565b600181815b80851115612a3457815f1904821115612a1a57612a1a61286c565b80851615612a2757918102915b93841c93908002906129ff565b509250929050565b5f82612a4a575060016107e4565b81612a5657505f6107e4565b8160018114612a6c5760028114612a7657612a92565b60019150506107e4565b60ff841115612a8757612a8761286c565b50506001821b6107e4565b5060208310610133831016604e8410600b8410161715612ab5575081810a6107e4565b612abf83836129fa565b805f1904821115612ad257612ad261286c565b029392505050565b5f6107e18383612a3c565b8181035f8312801583831316838312821617156108825761088261286c565b606081525f612b166060830186612749565b8281036020840152612b288186612749565b90508281036040840152611cbc8185612749565b5f60208284031215612b4c575f80fd5b815180151581146107e1575f80fdfe00010203040506070809ffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fffffffffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fa164736f6c6343000818000a","storage":{"0x0":"0xbd","0x1":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1471eb6eb2c5e789fc3de43f8ce62938c7d1836ec861730447e2ada8fd81017b":"0x17cda4e23f7237277952e075b1c48467aabfacc0","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563":"0x2b000100000e1000244a5c080249aac11d7b6f6446702e54a1607371607a","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e564":"0x1a41855200fd2ce1cdde32f24e8fb500002b000100000e1000244f660802e06d","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e565":"0x44b80b8f1d39a95c0b0d7c65d08458e880409bbc683457104237c7f8ec8d0000","0x3617319a054d772f909f7c479a2cebe5066e836a939412e32403c99029b92eff":"0x5155f5627bdf9795b3dbb8887001ada1eeba93f2","0x85aaa47b6dc46495bb8824fad4583769726fea36efd831a35556690b830a8fbe":"0x6e2822b8856749ed179c77140dbc5f5a27410a4","0x91da3fd0782e51c6b3986e9e672fd566868e71f3dbc2d6c2cd6fbb3e361af2a7":"0x49da8861c65460639925febe1fb4b5b59b443082","0x95c6356c1b7a542b884d2484ef785c9c7224e77e1016c20007bddc15c23b452f":"0x3f9151d3fd1a82dcc5091909589900fd60ee767ee090bba000000000","0xabd6e7cb50984ff9c2f3e18a2660c3353dadf4e3291deeb275dae2cd1e44fe05":"0x458f653495fb8d9bd0e7df468c2bf76d26c7bd9"}},"0x9dc64b2558b458a15c7f01c192d874ef460f0a29":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x9df67c91f1bfcb4d966cf764e9218685e7c59e8a":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101d1575f3560e01c80638b95dd71116100fe578063c86902331161009e578063e32954eb1161006e578063e32954eb146104f2578063e59d895d14610505578063e985e9c514610518578063f1cb7e0614610553575f80fd5b8063c869023314610435578063ce3decdc1461048c578063d5fa2b001461049f578063d700ff33146104b2575f80fd5b8063a8fa5682116100d9578063a8fa5682146103ac578063a9784b3e146103bf578063ac9650d814610402578063bc1c58d114610422575f80fd5b80638b95dd7114610373578063a22cb46514610386578063a4b91a0114610399575f80fd5b80633603d758116101745780635c98042b116101445780635c98042b14610327578063623195b01461033a578063691f34311461034d5780637737221314610360575f80fd5b80633603d758146102975780633b3b57de146102aa5780634cbf6ba4146102bd57806359d1d43c14610307575f80fd5b8063124a319c116101af578063124a319c146102255780632203ab561461025057806329cd62ea14610271578063304e6ade14610284575f80fd5b806301ffc9a7146101d55780630af179d7146101fd57806310f13a8c14610212575b5f80fd5b6101e86101e3366004612267565b610566565b60405190151581526020015b60405180910390f35b61021061020b3660046122bd565b610576565b005b610210610220366004612304565b610778565b610238610233366004612377565b610842565b6040516001600160a01b0390911681526020016101f4565b61026361025e3660046123a1565b610a87565b6040516101f492919061240e565b61021061027f366004612426565b610bb5565b6102106102923660046122bd565b610c4d565b6102106102a536600461244f565b610cc6565b6102386102b836600461244f565b610d64565b6101e86102cb3660046123a1565b5f82815260208181526040808320546001600160401b031683526006825280832094835293815283822092825291909152205461ffff16151590565b61031a6103153660046122bd565b610d93565b6040516101f49190612466565b61031a61033536600461244f565b610e6f565b610210610348366004612478565b610f2a565b61031a61035b36600461244f565b610fc2565b61021061036e3660046122bd565b610ffa565b6102106103813660046124da565b611073565b6102106103943660046125b9565b611150565b6102106103a73660046125e3565b61122a565b61031a6103ba36600461261e565b6112f6565b6101e86103cd36600461265a565b6001600160a01b039283165f908152600c60209081526040808320948352938152838220929094168152925290205460ff1690565b6104156104103660046126ce565b611342565b6040516101f4919061270c565b61031a61043036600461244f565b61134f565b61047761044336600461244f565b5f81815260208181526040808320546001600160401b03168352600982528083209383529290522080546001909101549091565b604080519283526020830191909152016101f4565b61021061049a3660046122bd565b611387565b6102106104ad36600461276e565b6114c3565b6104da6104c036600461244f565b5f602081905290815260409020546001600160401b031681565b6040516001600160401b0390911681526020016101f4565b61041561050036600461279c565b6114e9565b6102106105133660046127d6565b6114fe565b6101e8610526366004612808565b6001600160a01b039182165f908152600b6020908152604080832093909416825291909152205460ff1690565b61031a6105613660046123a1565b6115a2565b5f61057082611666565b92915050565b826105808161168a565b610588575f80fd5b5f84815260208181526040808320548151601f87018490048402810184019092528582528392606092839285926001600160401b039091169183916105eb9183918d908d90819084018382808284375f9201919091525092939250506118b79050565b90505b80515160208201511015610712578661ffff165f03610652578060400151965061061781611912565b94508460405160200161062a9190612834565b60405160208183030381529060405280519060200120925061064b81611933565b9350610704565b5f61065c82611912565b9050816040015161ffff168861ffff16141580610680575061067e868261194f565b155b15610702576106db8c878a8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250505060208801518d91506106d2908290612863565b8b51158a61196a565b8160400151975081602001519650809550858051906020012093506106ff82611933565b94505b505b61070d81611bc9565b6105ee565b5083511561076c5761076c8a85888c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c925061076391508290508f612863565b8951158861196a565b50505050505050505050565b846107828161168a565b61078a575f80fd5b5f86815260208181526040808320546001600160401b03168352600a8252808320898452909152908190209051849184916107c89089908990612876565b908152602001604051809103902091826107e3929190612901565b5084846040516107f4929190612876565b6040518091039020867f448bc014f1536726cf8d54ff3d6481ed3cbc683c2591ca204274009afa09b1a18787878760405161083294939291906129e2565b60405180910390a3505050505050565b5f82815260208181526040808320546001600160401b031683526007825280832085845282528083206001600160e01b0319851684529091528120546001600160a01b03168015610894579050610570565b5f61089e85610d64565b90506001600160a01b0381166108b8575f92505050610570565b6040516301ffc9a760e01b60248201525f9081906001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b1790525161090f9190612834565b5f60405180830381855afa9150503d805f8114610947576040519150601f19603f3d011682016040523d82523d5f602084013e61094c565b606091505b509150915081158061095f575060208151105b80610989575080601f8151811061097857610978612a13565b01602001516001600160f81b031916155b1561099a575f945050505050610570565b6040516001600160e01b0319871660248201526001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b179052516109f09190612834565b5f60405180830381855afa9150503d805f8114610a28576040519150601f19603f3d011682016040523d82523d5f602084013e610a2d565b606091505b509092509050811580610a41575060208151105b80610a6b575080601f81518110610a5a57610a5a612a13565b01602001516001600160f81b031916155b15610a7c575f945050505050610570565b509095945050505050565b5f82815260208181526040808320546001600160401b03168352600180835281842086855290925282206060915b848111610b975780851615801590610ae457505f8181526020839052604081208054610ae090612885565b9050115b15610b8f5780825f8381526020019081526020015f20808054610b0690612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610b3290612885565b8015610b7d5780601f10610b5457610100808354040283529160200191610b7d565b820191905f5260205f20905b815481529060010190602001808311610b6057829003601f168201915b50505050509050935093505050610bae565b60011b610ab5565b505f60405180602001604052805f81525092509250505b9250929050565b82610bbf8161168a565b610bc7575f80fd5b60408051808201825284815260208082018581525f888152808352848120546001600160401b031681526009835284812089825283528490209251835551600190920191909155815185815290810184905285917f1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e4691015b60405180910390a250505050565b82610c578161168a565b610c5f575f80fd5b5f84815260208181526040808320546001600160401b03168352600382528083208784529091529020610c93838583612901565b50837fe379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d75788484604051610c3f929190612a27565b80610cd08161168a565b610cd8575f80fd5b5f82815260208190526040812080546001600160401b031691610cfa83612a3a565b82546101009290920a6001600160401b038181021990931691831602179091555f84815260208181526040918290205491519190921681528492507fc6621ccb8f3f5a04bb6502154b2caf6adf5983fe76dfef1cfc9c42e3579db444910160405180910390a25050565b5f80610d7183603c6115a2565b905080515f03610d8357505f92915050565b610d8c81611cae565b9392505050565b5f83815260208181526040808320546001600160401b03168352600a825280832086845290915290819020905160609190610dd19085908590612876565b90815260200160405180910390208054610dea90612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610e1690612885565b8015610e615780601f10610e3857610100808354040283529160200191610e61565b820191905f5260205f20905b815481529060010190602001808311610e4457829003601f168201915b505050505090509392505050565b5f81815260208181526040808320546001600160401b03168352600482528083208484529091529020805460609190610ea790612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610ed390612885565b8015610f1e5780601f10610ef557610100808354040283529160200191610f1e565b820191905f5260205f20905b815481529060010190602001808311610f0157829003601f168201915b50505050509050919050565b83610f348161168a565b610f3c575f80fd5b83610f48600182612863565b1615610f52575f80fd5b5f85815260208181526040808320546001600160401b031683526001825280832088845282528083208784529091529020610f8e838583612901565b50604051849086907faa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe3905f90a35050505050565b5f81815260208181526040808320546001600160401b03168352600882528083208484529091529020805460609190610ea790612885565b826110048161168a565b61100c575f80fd5b5f84815260208181526040808320546001600160401b03168352600882528083208784529091529020611040838583612901565b50837fb7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f78484604051610c3f929190612a27565b8261107d8161168a565b611085575f80fd5b837f65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af75284846040516110b792919061240e565b60405180910390a2603c830361110e57837f52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd26110f284611cae565b6040516001600160a01b03909116815260200160405180910390a25b5f84815260208181526040808320546001600160401b0316835260028252808320878452825280832086845290915290206111498382612a5f565b5050505050565b6001600160a01b03821633036111bf5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084015b60405180910390fd5b335f818152600b602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6001600160a01b03821633036112825760405162461bcd60e51b815260206004820181905260248201527f53657474696e672064656c65676174652073746174757320666f722073656c6660448201526064016111b6565b335f818152600c6020908152604080832087845282528083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519384529286917ff0ddb3b04746704017f9aa8bd728fcc2c1d11675041205350018915f5e4750a0910160405180910390a4505050565b5f83815260208181526040808320546001600160401b03168352600582528083208684528252808320858452825280832061ffff851684529091529020805460609190610dea90612885565b6060610d8c5f8484611ccb565b5f81815260208181526040808320546001600160401b03168352600382528083208484529091529020805460609190610ea790612885565b826113918161168a565b611399575f80fd5b5f84815260208181526040808320546001600160401b031680845260048352818420888552909252822080549192916113d190612885565b80601f01602080910402602001604051908101604052809291908181526020018280546113fd90612885565b80156114485780601f1061141f57610100808354040283529160200191611448565b820191905f5260205f20905b81548152906001019060200180831161142b57829003601f168201915b505050506001600160401b0384165f9081526004602090815260408083208b8452909152902091925061147e9050858783612901565b50857f8f15ed4b723ef428f250961da8315675b507046737e19319fc1a4d81bfe87f858287876040516114b393929190612b1e565b60405180910390a2505050505050565b816114cd8161168a565b6114d5575f80fd5b6114e483603c61038185611e88565b505050565b60606114f6848484611ccb565b949350505050565b826115088161168a565b611510575f80fd5b5f84815260208181526040808320546001600160401b031683526007825280832087845282528083206001600160e01b031987168085529083529281902080546001600160a01b0319166001600160a01b038716908117909155905190815286917f7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa910160405180910390a350505050565b5f82815260208181526040808320546001600160401b0316835260028252808320858452825280832084845290915290208054606091906115e290612885565b80601f016020809104026020016040519081016040528092919081815260200182805461160e90612885565b80156116595780601f1061163057610100808354040283529160200191611659565b820191905f5260205f20905b81548152906001019060200180831161163c57829003601f168201915b5050505050905092915050565b5f6001600160e01b03198216631674750f60e21b1480610570575061057082611eb8565b5f336001600160a01b037f0000000000000000000000004fbf7b2f171336958be5d15ff762a5cff53635681614806116ea5750336001600160a01b037f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5616145b156116f757506001919050565b6040516302571be360e01b8152600481018390525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa15801561175c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117809190612b4d565b90507f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b0316816001600160a01b031603611845576040516331a9108f60e11b8152600481018490527f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b031690636352211e90602401602060405180830381865afa15801561181e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118429190612b4d565b90505b6001600160a01b03811633148061187e57506001600160a01b0381165f908152600b6020908152604080832033845290915290205460ff165b80610d8c57506001600160a01b0381165f908152600c60209081526040808320868452825280832033845290915290205460ff16610d8c565b6118ff6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261057081611bc9565b602081015181516060916105709161192a9082611edc565b84519190611f33565b60a081015160c08201516060916105709161192a908290612863565b5f81518351148015610d8c5750610d8c835f845f8751611fa7565b865160208801205f61197d878787611f33565b90508315611aa1576001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c168452909152902080546119c690612885565b159050611a23576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611a0783612b68565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091528120611a62916121f9565b897f03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a12078a8a604051611a94929190612b84565b60405180910390a261076c565b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c16845290915290208054611ae290612885565b90505f03611b40576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611b2483612ba9565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091529020611b808282612a5f565b50897f52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b8a8a84604051611bb593929190612bbf565b60405180910390a250505050505050505050565b60c08101516020820181905281515111611be05750565b5f611bf2825f01518360200151611edc565b8260200151611c019190612bed565b8251909150611c109082611fc9565b61ffff166040830152611c24600282612bed565b8251909150611c339082611fc9565b61ffff166060830152611c47600282612bed565b8251909150611c569082611fef565b63ffffffff166080830152611c6c600482612bed565b82519091505f90611c7d9083611fc9565b61ffff169050611c8e600283612bed565b60a084018190529150611ca18183612bed565b60c0909301929092525050565b5f8151601414611cbc575f80fd5b5060200151600160601b900490565b6060816001600160401b03811115611ce557611ce56124c6565b604051908082528060200260200182016040528015611d1857816020015b6060815260200190600190039081611d035790505b5090505f5b82811015611e80578415611dd8575f848483818110611d3e57611d3e612a13565b9050602002810190611d509190612c00565b611d5f91602491600491612c42565b611d6891612c69565b9050858114611dd65760405162461bcd60e51b815260206004820152603460248201527f6d756c746963616c6c3a20416c6c207265636f726473206d7573742068617665604482015273040c240dac2e8c6d0d2dcce40dcc2dacad0c2e6d60631b60648201526084016111b6565b505b5f8030868685818110611ded57611ded612a13565b9050602002810190611dff9190612c00565b604051611e0d929190612876565b5f60405180830381855af49150503d805f8114611e45576040519150601f19603f3d011682016040523d82523d5f602084013e611e4a565b606091505b509150915081611e58575f80fd5b80848481518110611e6b57611e6b612a13565b60209081029190910101525050600101611d1d565b509392505050565b604080516014808252818301909252606091602082018180368337505050600160601b9290920260208301525090565b5f6001600160e01b0319821663c869023360e01b1480610570575061057082612017565b5f815b83518110611eef57611eef612c86565b5f611efa858361203b565b60ff169050611f0a816001612bed565b611f149083612bed565b9150805f03611f235750611f29565b50611edf565b6114f68382612863565b8251606090611f428385612bed565b1115611f4c575f80fd5b5f826001600160401b03811115611f6557611f656124c6565b6040519080825280601f01601f191660200182016040528015611f8f576020820181803683370190505b50905060208082019086860101610a7c82828761205e565b5f611fb38484846120b3565b611fbe8787856120b3565b149695505050505050565b81515f90611fd8836002612bed565b1115611fe2575f80fd5b50016002015161ffff1690565b81515f90611ffe836004612bed565b1115612008575f80fd5b50016004015163ffffffff1690565b5f6001600160e01b0319821663691f343160e01b14806105705750610570826120d5565b5f82828151811061204e5761204e612a13565b016020015160f81c905092915050565b602081106120965781518352612075602084612bed565b9250612082602083612bed565b915061208f602082612863565b905061205e565b905182516020929092036101000a5f190180199091169116179052565b82515f906120c18385612bed565b11156120cb575f80fd5b5091016020012090565b5f6001600160e01b031982166304928c6760e21b14806105705750610570825f6001600160e01b0319821663547d2b4160e11b148061212457506001600160e01b03198216635c98042b60e01b145b806105705750610570825f6001600160e01b0319821663bc1c58d160e01b14806105705750610570825f6001600160e01b03198216631d9dabef60e11b148061217d57506001600160e01b031982166378e5bf0360e11b145b806105705750610570825f6001600160e01b03198216631101d5ab60e11b14806105705750610570825f6001600160e01b0319821663d700ff3360e01b14806105705750610570825f6001600160e01b03198216634fbf043360e01b148061057057506301ffc9a760e01b6001600160e01b0319831614610570565b50805461220590612885565b5f825580601f10612214575050565b601f0160209004905f5260205f20908101906122309190612233565b50565b5b80821115612247575f8155600101612234565b5090565b80356001600160e01b031981168114612262575f80fd5b919050565b5f60208284031215612277575f80fd5b610d8c8261224b565b5f8083601f840112612290575f80fd5b5081356001600160401b038111156122a6575f80fd5b602083019150836020828501011115610bae575f80fd5b5f805f604084860312156122cf575f80fd5b8335925060208401356001600160401b038111156122eb575f80fd5b6122f786828701612280565b9497909650939450505050565b5f805f805f60608688031215612318575f80fd5b8535945060208601356001600160401b0380821115612335575f80fd5b61234189838a01612280565b90965094506040880135915080821115612359575f80fd5b5061236688828901612280565b969995985093965092949392505050565b5f8060408385031215612388575f80fd5b823591506123986020840161224b565b90509250929050565b5f80604083850312156123b2575f80fd5b50508035926020909101359150565b5f5b838110156123db5781810151838201526020016123c3565b50505f910152565b5f81518084526123fa8160208601602086016123c1565b601f01601f19169290920160200192915050565b828152604060208201525f6114f660408301846123e3565b5f805f60608486031215612438575f80fd5b505081359360208301359350604090920135919050565b5f6020828403121561245f575f80fd5b5035919050565b602081525f610d8c60208301846123e3565b5f805f806060858703121561248b575f80fd5b843593506020850135925060408501356001600160401b038111156124ae575f80fd5b6124ba87828801612280565b95989497509550505050565b634e487b7160e01b5f52604160045260245ffd5b5f805f606084860312156124ec575f80fd5b833592506020840135915060408401356001600160401b0380821115612510575f80fd5b818601915086601f830112612523575f80fd5b813581811115612535576125356124c6565b604051601f8201601f19908116603f0116810190838211818310171561255d5761255d6124c6565b81604052828152896020848701011115612575575f80fd5b826020860160208301375f6020848301015280955050505050509250925092565b6001600160a01b0381168114612230575f80fd5b80358015158114612262575f80fd5b5f80604083850312156125ca575f80fd5b82356125d581612596565b9150612398602084016125aa565b5f805f606084860312156125f5575f80fd5b83359250602084013561260781612596565b9150612615604085016125aa565b90509250925092565b5f805f60608486031215612630575f80fd5b8335925060208401359150604084013561ffff8116811461264f575f80fd5b809150509250925092565b5f805f6060848603121561266c575f80fd5b833561267781612596565b925060208401359150604084013561264f81612596565b5f8083601f84011261269e575f80fd5b5081356001600160401b038111156126b4575f80fd5b6020830191508360208260051b8501011115610bae575f80fd5b5f80602083850312156126df575f80fd5b82356001600160401b038111156126f4575f80fd5b6127008582860161268e565b90969095509350505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b8281101561276157603f1988860301845261274f8583516123e3565b94509285019290850190600101612733565b5092979650505050505050565b5f806040838503121561277f575f80fd5b82359150602083013561279181612596565b809150509250929050565b5f805f604084860312156127ae575f80fd5b8335925060208401356001600160401b038111156127ca575f80fd5b6122f78682870161268e565b5f805f606084860312156127e8575f80fd5b833592506127f86020850161224b565b9150604084013561264f81612596565b5f8060408385031215612819575f80fd5b823561282481612596565b9150602083013561279181612596565b5f82516128458184602087016123c1565b9190910192915050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156105705761057061284f565b818382375f9101908152919050565b600181811c9082168061289957607f821691505b6020821081036128b757634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156114e457805f5260205f20601f840160051c810160208510156128e25750805b601f840160051c820191505b81811015611149575f81556001016128ee565b6001600160401b03831115612918576129186124c6565b61292c836129268354612885565b836128bd565b5f601f84116001811461295d575f85156129465750838201355b5f19600387901b1c1916600186901b178355611149565b5f83815260208120601f198716915b8281101561298c578685013582556020948501946001909201910161296c565b50868210156129a8575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b604081525f6129f56040830186886129ba565b8281036020840152612a088185876129ba565b979650505050505050565b634e487b7160e01b5f52603260045260245ffd5b602081525f6114f66020830184866129ba565b5f6001600160401b03808316818103612a5557612a5561284f565b6001019392505050565b81516001600160401b03811115612a7857612a786124c6565b612a8c81612a868454612885565b846128bd565b602080601f831160018114612abf575f8415612aa85750858301515b5f19600386901b1c1916600185901b178555612b16565b5f85815260208120601f198616915b82811015612aed57888601518255948401946001909101908401612ace565b5085821015612b0a57878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b604081525f612b3060408301866123e3565b8281036020840152612b438185876129ba565b9695505050505050565b5f60208284031215612b5d575f80fd5b8151610d8c81612596565b5f61ffff821680612b7b57612b7b61284f565b5f190192915050565b604081525f612b9660408301856123e3565b905061ffff831660208301529392505050565b5f61ffff808316818103612a5557612a5561284f565b606081525f612bd160608301866123e3565b61ffff851660208401528281036040840152612b4381856123e3565b808201808211156105705761057061284f565b5f808335601e19843603018112612c15575f80fd5b8301803591506001600160401b03821115612c2e575f80fd5b602001915036819003821315610bae575f80fd5b5f8085851115612c50575f80fd5b83861115612c5c575f80fd5b5050820193919092039150565b80356020831015610570575f19602084900360031b1b1692915050565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{}},"0xa06a63155145b7f2fda96d9658ec7fef3b9dcf76":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b506004361061004a575f3560e01c80634ce34aa21461004e578063899e104c1461007e5780638df25d9214610091578063c4e8fcb5146100a4575b5f80fd5b61006161005c366004610834565b6100b9565b6040516001600160e01b0319909116815260200160405180910390f35b61006161008c3660046108b4565b610121565b61006161009f36600461091b565b61018a565b6100b76100b2366004610969565b6101c7565b005b5f335f525f60205260405f20546100dd576349ed56f960e11b5f523360045260245ffd5b815f5b81811015610110576101088585838181106100fd576100fd6109a2565b905060c002016102c4565b6001016100e0565b50632671a55160e11b949350505050565b5f335f525f60205260405f2054610145576349ed56f960e11b5f523360045260245ffd5b835f5b8181101561016d576101658787838181106100fd576100fd6109a2565b600101610148565b506101788484610436565b50632267841360e21b95945050505050565b5f335f525f60205260405f20546101ae576349ed56f960e11b5f523360045260245ffd5b6101b88383610436565b506346f92ec960e11b92915050565b336001600160a01b037f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c1614610210576040516336abb4df60e11b815260040160405180910390fd5b6001600160a01b0382165f9081526020819052604090205481151560ff909116151503610268576040516349271a0f60e11b81526001600160a01b038316600482015281151560248201526044015b60405180910390fd5b6001600160a01b0382165f8181526020818152604091829020805460ff191685151590811790915591519182527fae63067d43ac07563b7eb8db6595635fc77f1578a2a5ea06ba91b63e2afa37e2910160405180910390a25050565b60016102d360208301836109ca565b60038111156102e4576102e46109b6565b03610329576103266102fc60408301602084016109ef565b61030c60608401604085016109ef565b61031c60808501606086016109ef565b8460a0013561056c565b50565b600261033860208301836109ca565b6003811115610349576103496109b6565b036103b6578060a00135600114610379576040516369f9582760e01b815260a0820135600482015260240161025f565b61032661038c60408301602084016109ef565b61039c60608401604085016109ef565b6103ac60808501606086016109ef565b8460800135610660565b60036103c560208301836109ca565b60038111156103d6576103d66109b6565b0361041d576103266103ee60408301602084016109ef565b6103fe60608401604085016109ef565b61040e60808501606086016109ef565b84608001358560a00135610715565b604051631e4cbc7f60e21b815260040160405180910390fd5b808280631759616b60e11b6020525f5b8381101561055f57823582018035803b61046b57635f15d6725f52806020526024601cfd5b60a08201358060051b60c0018060808501351460a0606086013514168185013583141615905080156104a657633ae8821360e21b5f5260045ffd5b506020860195506080602084016024378060061b60400190508060a00160a4525f8160c401528060c4018160a0850160c4375f808260205f875af1935083610550573d1561053057601f3d0160051c91508060051c826003028184111561051a578184036003028280028580020360091c01015b5a60208201101561052d573d5f803e3d5ffd5b50505b6357e222f160e11b5f528260045260c0606452608451602001608452805ffd5b50505050600181019050610446565b5050505060806040525050565b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166106515780873b15151661065157806106405781610623573d1561060257601f3d0160051c8360051c81600302818311156105eb578183036003028280028480020360091c01015b5a6020820110156105fe573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b833b61067757635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af180610707573d156106e557601f3d0160051c8260051c81600302818311156106ce578183036003028280028480020360091c01015b5a6020820110156106e1573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b61072c57635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af1806107d1573d156107b057601f3d0160051c8560051c8160030281831115610799578183036003028280028480020360091c01015b5a6020820110156107ac573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b5f8083601f8401126107fc575f80fd5b50813567ffffffffffffffff811115610813575f80fd5b60208301915083602060c08302850101111561082d575f80fd5b9250929050565b5f8060208385031215610845575f80fd5b823567ffffffffffffffff81111561085b575f80fd5b610867858286016107ec565b90969095509350505050565b5f8083601f840112610883575f80fd5b50813567ffffffffffffffff81111561089a575f80fd5b6020830191508360208260051b850101111561082d575f80fd5b5f805f80604085870312156108c7575f80fd5b843567ffffffffffffffff808211156108de575f80fd5b6108ea888389016107ec565b90965094506020870135915080821115610902575f80fd5b5061090f87828801610873565b95989497509550505050565b5f806020838503121561092c575f80fd5b823567ffffffffffffffff811115610942575f80fd5b61086785828601610873565b80356001600160a01b0381168114610964575f80fd5b919050565b5f806040838503121561097a575f80fd5b6109838361094e565b915060208301358015158114610997575f80fd5b809150509250929050565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52602160045260245ffd5b5f602082840312156109da575f80fd5b8135600481106109e8575f80fd5b9392505050565b5f602082840312156109ff575f80fd5b6109e88261094e56fea164736f6c6343000818000a","storage":{}},"0xaa33d7188eb4b4a51c37199eaad2f73cf2bf0204":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0xac52f68f31577e44ae0c7e95a42dc9eb574b9383":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a424740014610090575b600080fd5b610059610054366004610cac565b6100b3565b6040516100669190610d9b565b60405180910390f35b61008261007d366004610dae565b610162565b604051908152602001610066565b6100a361009e366004610cac565b6101d6565b6040519015158152602001610066565b606060005a90506101576100ca6020870187610ddc565b6001546001600160a01b03166040880135846100e960608b018b610df9565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061023592505050565b9150505b9392505050565b600154604051636ccbae5f60e01b8152600481018390526000916001600160a01b031690636ccbae5f90602401602060405180830381865afa1580156101ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d09190610e40565b92915050565b600061022d6101e485610ef1565b600154604080516020601f88018190048102820181019092528681526001600160a01b039092169190879087908190840183828082843760009201919091525061030d92505050565b949350505050565b6060600080876001600160a01b0316866102518b8a8989610355565b60405161025e9190610f9b565b60006040518083038160008787f1925050503d806000811461029c576040519150601f19603f3d011682016040523d82523d6000602084013e6102a1565b606091505b5090925090506102b2603f87610fb7565b5a116102c0576102c0610fd9565b61030082826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061040a565b9998505050505050505050565b600061031a848484610443565b801561022d575060608401516020908101516001600160e01b031990811660009081529182905260409091205460e01b16151561022d565b50565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036103e75760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526103ff82828661058c565b979650505050505050565b6060831561041957508161015b565b8251156104295782518084602001fd5b8160405162461bcd60e51b81526004016103de9190610d9b565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561048a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104ae9190610e40565b9050600061055c8660600151805190602001208688602001516040516020016104fc9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561058257508551610582906001600160a01b03168286610a38565b9695505050505050565b60606001600160e01b03198416631de5861160e31b0361061a576000806000858060200190518101906105bf9190610fef565b92509250925086838383886040516024016105dd9493929190611032565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152935061015b92505050565b6001600160e01b03198416636debcb8d60e01b0361064b576000806000858060200190518101906105bf9190610fef565b6001600160e01b0319841663280d9b0560e01b036106dd576000806000808680602001905181019061067d91906110aa565b935093509350935087848484848a60405160240161069f959493929190611118565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152945061015b9350505050565b6001600160e01b031984166361603dd960e01b0361075c5760008380602001905181019061070b9190610e40565b905084818460405160240161072192919061115d565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152915061015b9050565b6001600160e01b0319841663b34f33c560e01b036107ab5760008060008580602001905181019061078d9190611176565b92509250925086838383886040516024016105dd94939291906111d0565b6001600160e01b03198416633013529360e01b036107dc5760008060008580602001905181019061078d9190611176565b6001600160e01b031984166307eca39560e01b03610830576000806000808680602001905181019061080e9190611209565b935093509350935087848484848a60405160240161069f95949392919061127e565b6001600160e01b031984166368b6154f60e01b03610862576000806000808680602001905181019061067d91906110aa565b6001600160e01b0319841663341de35b60e21b03610894576000806000808680602001905181019061067d91906110aa565b6001600160e01b03198416637a84860f60e11b0361092d576000806000806000878060200190518101906108c891906112cb565b945094509450945094508885858585858c6040516024016108ee96959493929190611360565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152955061015b945050505050565b6001600160e01b03198416636fab95b360e01b036109b2576000808480602001905181019061095c91906113b9565b915091508582828660405160240161097693929190611400565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925061015b915050565b6001600160e01b0319841663288f888960e11b0361015b57600080848060200190518101906109e1919061142b565b91509150858282866040516024016109fb93929190611459565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925050509392505050565b6000806000610a478585610b7a565b90925090506000816004811115610a6057610a60611489565b148015610a7e5750856001600160a01b0316826001600160a01b0316145b15610a8e5760019250505061015b565b600080876001600160a01b0316631626ba7e60e01b8888604051602401610ab692919061115d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051610af49190610f9b565b600060405180830381855afa9150503d8060008114610b2f576040519150601f19603f3d011682016040523d82523d6000602084013e610b34565b606091505b5091509150818015610b47575080516020145b8015610b6e57508051630b135d3f60e11b90610b6c9083016020908101908401610e40565b145b98975050505050505050565b6000808251604103610bb05760208301516040840151606085015160001a610ba487828585610bbf565b94509450505050610bb8565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610bf65750600090506003610ca3565b8460ff16601b14158015610c0e57508460ff16601c14155b15610c1f5750600090506004610ca3565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610c73573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610c9c57600060019250925050610ca3565b9150600090505b94509492505050565b600080600060408486031215610cc157600080fd5b833567ffffffffffffffff80821115610cd957600080fd5b9085019060808288031215610ced57600080fd5b90935060208501359080821115610d0357600080fd5b818601915086601f830112610d1757600080fd5b813581811115610d2657600080fd5b876020828501011115610d3857600080fd5b6020830194508093505050509250925092565b60005b83811015610d66578181015183820152602001610d4e565b50506000910152565b60008151808452610d87816020860160208601610d4b565b601f01601f19169290920160200192915050565b60208152600061015b6020830184610d6f565b600060208284031215610dc057600080fd5b5035919050565b6001600160a01b038116811461035257600080fd5b600060208284031215610dee57600080fd5b813561015b81610dc7565b6000808335601e19843603018112610e1057600080fd5b83018035915067ffffffffffffffff821115610e2b57600080fd5b602001915036819003821315610bb857600080fd5b600060208284031215610e5257600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610e9257610e92610e59565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ec157610ec1610e59565b604052919050565b600067ffffffffffffffff821115610ee357610ee3610e59565b50601f01601f191660200190565b600060808236031215610f0357600080fd5b610f0b610e6f565b8235610f1681610dc7565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610f4657600080fd5b840136601f820112610f5757600080fd5b8035610f6a610f6582610ec9565b610e98565b8181523684838501011115610f7e57600080fd5b818484018583013760009181019093015250606082015292915050565b60008251610fad818460208701610d4b565b9190910192915050565b600082610fd457634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b60008060006060848603121561100457600080fd5b835161100f81610dc7565b602085015190935061102081610dc7565b80925050604084015190509250925092565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061058290830184610d6f565b600082601f83011261107657600080fd5b8151611084610f6582610ec9565b81815284602083860101111561109957600080fd5b61022d826020830160208701610d4b565b600080600080608085870312156110c057600080fd5b84516110cb81610dc7565b60208601519094506110dc81610dc7565b60408601516060870151919450925067ffffffffffffffff81111561110057600080fd5b61110c87828801611065565b91505092959194509250565b6001600160a01b038681168252851660208201526040810184905260a06060820181905260009061114b90830185610d6f565b8281036080840152610b6e8185610d6f565b82815260406020820152600061022d6040830184610d6f565b60008060006060848603121561118b57600080fd5b835161119681610dc7565b60208501516040860151919450925067ffffffffffffffff8111156111ba57600080fd5b6111c686828701611065565b9150509250925092565b60018060a01b03851681528360208201526080604082015260006111f76080830185610d6f565b82810360608401526103ff8185610d6f565b6000806000806080858703121561121f57600080fd5b845161122a81610dc7565b60208601516040870151919550935067ffffffffffffffff8082111561124f57600080fd5b61125b88838901611065565b9350606087015191508082111561127157600080fd5b5061110c87828801611065565b60018060a01b038616815284602082015260a0604082015260006112a560a0830186610d6f565b82810360608401526112b78186610d6f565b90508281036080840152610b6e8185610d6f565b600080600080600060a086880312156112e357600080fd5b85516112ee81610dc7565b60208701519095506112ff81610dc7565b60408701516060880151919550935067ffffffffffffffff8082111561132457600080fd5b61133089838a01611065565b9350608088015191508082111561134657600080fd5b5061135388828901611065565b9150509295509295909350565b6001600160a01b038781168252861660208201526040810185905260c06060820181905260009061139390830186610d6f565b82810360808401526113a58186610d6f565b905082810360a08401526103008185610d6f565b600080604083850312156113cc57600080fd5b82519150602083015167ffffffffffffffff8111156113ea57600080fd5b6113f685828601611065565b9150509250929050565b8381526060602082015260006114196060830185610d6f565b82810360408401526105828185610d6f565b6000806040838503121561143e57600080fd5b825161144981610dc7565b6020939093015192949293505050565b60018060a01b03841681528260208201526060604082015260006114806060830184610d6f565b95945050505050565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a","storage":{"0x1":"0x7bb6cd9be29fab783c0b494a06fed8b2e2596b7a","0xd8b896d609e853134f3f02ce62d8049b2fdfe9356134f6d548fb1beda30db79":"0x30135293","0x4f457f36b92dc6b16c281e5877e2d8d39630135c1b7246fa9174035e1efcefbd":"0x6fab95b3","0x6b7ba3fe9941e089de60543da4a1deaef065baa963222951b2f9a138f9960820":"0x6debcb8d","0x70cff8e4ee4af5aa154324d45bcf258212c235bbe79f0707bb6273110ef4e13a":"0xf5090c1e","0x73efb0e44094dbabc6bbeecd3be1d81f272157c2dae2d647e6315f150b0b1dd2":"0xd0778d6c","0x8b1c4edded6644848281eab03ac2c319242d62b2057cffa3dd4540715bbc155e":"0xef2c3088","0xbeb5ea8fc2aeae43b7170220434aa4429fb067f0866ae25514b29f647641ca8c":"0x511f1112","0xca659f6eb372ce950e69d4d474290a6a4285f6a06a6128ca9f45419371a1e997":"0xb34f33c5","0xd12e300b5f35ba5198dd81dab97a512a154a0ad0e2cda788abdc22deba64f2a7":"0x280d9b05","0xd5453e7f4fff276a1d42f717d1db50865c284ae707a15bd6a590a3895656f27c":"0x7eca395","0xea2575ae4056f10294a848ca5ed6d215dffd1b80838142770bc441f7df607d71":"0x61603dd9","0xf8ca3ef1e3d09a0d88e209301f12626c90bec3ea586d4bce2c7a58e7eae8278f":"0x68b6154f"}},"0xb17aae5b3a7815433fc82cfd67ea245767894f03":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061012a5760003560e01c80638d839ffe116100ab578063aeb8ce9b1161006f578063aeb8ce9b146105d7578063ce1e09c014610688578063f14fcbc81461069d578063f2fde38b146106c7578063f49826be146106fa578063f7a16963146107b95761012a565b80638d839ffe1461045d5780638da5cb5b146104725780638f32d59b146104a35780639791c097146104b8578063acf1a841146105695761012a565b80637e324479116100f25780637e324479146102b8578063839df945146102e857806383e7f6ff1461031257806385f6d155146103c55780638a95b09f146104485761012a565b806301ffc9a71461012f5780633ccfd60b146101775780633d86c52f1461018e578063530e784f14610270578063715018a6146102a3575b600080fd5b34801561013b57600080fd5b506101636004803603602081101561015257600080fd5b50356001600160e01b031916610881565b604080519115158252519081900360200190f35b34801561018357600080fd5b5061018c610a12565b005b34801561019a57600080fd5b5061025e600480360360a08110156101b157600080fd5b810190602081018135600160201b8111156101cb57600080fd5b8201836020820111156101dd57600080fd5b803590602001918460018302840111600160201b831117156101fe57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b0383358116945060208401359360408101358216935060600135169050610a53565b60408051918252519081900360200190f35b34801561027c57600080fd5b5061018c6004803603602081101561029357600080fd5b50356001600160a01b0316610b42565b3480156102af57600080fd5b5061018c610ba3565b3480156102c457600080fd5b5061018c600480360360408110156102db57600080fd5b5080359060200135610bfe565b3480156102f457600080fd5b5061025e6004803603602081101561030b57600080fd5b5035610c1a565b34801561031e57600080fd5b5061025e6004803603604081101561033557600080fd5b810190602081018135600160201b81111561034f57600080fd5b82018360208201111561036157600080fd5b803590602001918460018302840111600160201b8311171561038257600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505091359250610c2c915050565b61018c600480360360808110156103db57600080fd5b810190602081018135600160201b8111156103f557600080fd5b82018360208201111561040757600080fd5b803590602001918460018302840111600160201b8311171561042857600080fd5b91935091506001600160a01b038135169060208101359060400135610d9e565b34801561045457600080fd5b5061025e610de9565b34801561046957600080fd5b5061025e610df0565b34801561047e57600080fd5b50610487610df6565b604080516001600160a01b039092168252519081900360200190f35b3480156104af57600080fd5b50610163610e05565b3480156104c457600080fd5b50610163600480360360208110156104db57600080fd5b810190602081018135600160201b8111156104f557600080fd5b82018360208201111561050757600080fd5b803590602001918460018302840111600160201b8311171561052857600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610e16945050505050565b61018c6004803603604081101561057f57600080fd5b810190602081018135600160201b81111561059957600080fd5b8201836020820111156105ab57600080fd5b803590602001918460018302840111600160201b831117156105cc57600080fd5b919350915035610e2b565b3480156105e357600080fd5b50610163600480360360208110156105fa57600080fd5b810190602081018135600160201b81111561061457600080fd5b82018360208201111561062657600080fd5b803590602001918460018302840111600160201b8311171561064757600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610fcf945050505050565b34801561069457600080fd5b5061025e611069565b3480156106a957600080fd5b5061018c600480360360208110156106c057600080fd5b503561106f565b3480156106d357600080fd5b5061018c600480360360208110156106ea57600080fd5b50356001600160a01b03166110a1565b34801561070657600080fd5b5061025e6004803603606081101561071d57600080fd5b810190602081018135600160201b81111561073757600080fd5b82018360208201111561074957600080fd5b803590602001918460018302840111600160201b8311171561076a57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b0383351693505050602001356110bb565b61018c600480360360c08110156107cf57600080fd5b810190602081018135600160201b8111156107e957600080fd5b8201836020820111156107fb57600080fd5b803590602001918460018302840111600160201b8311171561081c57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b038335811694506020840135936040810135935060608101358216925060800135166110d3565b604080517f737570706f727473496e74657266616365286279746573342900000000000000815290519081900360190190206000906001600160e01b0319838116911614806109c05750604080517472656e657728737472696e672c75696e743235362960581b815290519081900360150181209080602861186a8239604080519182900360280182206e636f6d6d697428627974657333322960881b8352905191829003600f01822090925090806026611892823960260190506040518091039020604051808070617661696c61626c6528737472696e672960781b8152506011019050604051809103902060405180807f72656e74507269636528737472696e672c75696e7432353629000000000000008152506019019050604051809103902018181818186001600160e01b031916826001600160e01b031916145b80610a0c5750604051808061182a60409139604080519182900301812091508060426118b8823960420190506040518091039020186001600160e01b031916826001600160e01b031916145b92915050565b610a1a610e05565b610a2357600080fd5b6040513390303180156108fc02916000818181858888f19350505050158015610a50573d6000803e3d6000fd5b50565b845160208601206000906001600160a01b038416158015610a7b57506001600160a01b038316155b15610acb57604080516020808201939093526bffffffffffffffffffffffff19606089901b1681830152605480820188905282518083039091018152607490910190915280519101209050610b39565b6001600160a01b038416610ade57600080fd5b604080516020808201939093526bffffffffffffffffffffffff19606089811b82168385015287811b8216605484015286901b166068820152607c80820188905282518083039091018152609c909101909152805191012090505b95945050505050565b610b4a610e05565b610b5357600080fd5b600280546001600160a01b0319166001600160a01b0383811691909117918290556040519116907ff261845a790fe29bbd6631e2ca4a5bdc83e6eed7c3271d9590d97287e00e912390600090a250565b610bab610e05565b610bb457600080fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b610c06610e05565b610c0f57600080fd5b600391909155600455565b60056020526000908152604090205481565b815160208084019190912060025460015460408051636b727d4360e11b81526004810185905290516000956001600160a01b03948516946350e9a715948a9491169263d6e4fa8692602480840193919291829003018186803b158015610c9157600080fd5b505afa158015610ca5573d6000803e3d6000fd5b505050506040513d6020811015610cbb57600080fd5b50516040516001600160e01b031960e085901b168152602481018290526044810188905260606004820190815283516064830152835189928291608490910190602087019080838360005b83811015610d1e578181015183820152602001610d06565b50505050905090810190601f168015610d4b5780820380516001836020036101000a031916815260200191505b5094505050505060206040518083038186803b158015610d6a57600080fd5b505afa158015610d7e573d6000803e3d6000fd5b505050506040513d6020811015610d9457600080fd5b5051949350505050565b610de285858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250889350879250869150806110d3565b5050505050565b6224ea0081565b60035481565b6000546001600160a01b031690565b6000546001600160a01b0316331490565b60006003610e2383611646565b101592915050565b6000610e6e84848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250869250610c2c915050565b905080341015610e7d57600080fd5b60008484604051808383808284376040805193909101839003832060015463c475abff60e01b855260048501829052602485018b90529151909750600096506001600160a01b03909116945063c475abff93506044808401936020935082900301818787803b158015610eef57600080fd5b505af1158015610f03573d6000803e3d6000fd5b505050506040513d6020811015610f1957600080fd5b5051905034831015610f565760405133903485900380156108fc02916000818181858888f19350505050158015610f54573d6000803e3d6000fd5b505b817f3da24c024582931cfaf8267d8ed24d13a82a8068d5bd337d30ec45cea4e506ae8787868560405180806020018481526020018381526020018281038252868682818152602001925080828437600083820152604051601f909101601f191690920182900397509095505050505050a2505050505050565b80516020820120600090610fe283610e16565b80156110625750600154604080516312dc929d60e31b81526004810184905290516001600160a01b03909216916396e494e891602480820192602092909190829003018186803b15801561103557600080fd5b505afa158015611049573d6000803e3d6000fd5b505050506040513d602081101561105f57600080fd5b50515b9392505050565b60045481565b6004546000828152600560205260409020544291011061108e57600080fd5b6000908152600560205260409020429055565b6110a9610e05565b6110b257600080fd5b610a508161172e565b60006110cb848484600080610a53565b949350505050565b60006110e28787868686610a53565b905060006110f188878461179c565b885160208a01209091508060006001600160a01b038716156114ac5760015460408051633f2891eb60e21b815260048101859052306024820152604481018c905290516001600160a01b039092169163fca247ac916064808201926020929091908290030181600087803b15801561116857600080fd5b505af115801561117c573d6000803e3d6000fd5b505050506040513d602081101561119257600080fd5b505160015460408051630ddf7fcb60e41b815290519293506000926001600160a01b039092169163ddf7fcb091600480820192602092909190829003018186803b1580156111df57600080fd5b505afa1580156111f3573d6000803e3d6000fd5b505050506040513d602081101561120957600080fd5b50516040805160208181019390935280820187905281518082038301815260608201808452815191850191909120600154633f15457f60e01b90925292519294506001600160a01b031692633f15457f92606480840193829003018186803b15801561127457600080fd5b505afa158015611288573d6000803e3d6000fd5b505050506040513d602081101561129e57600080fd5b505160408051630c4b7b8560e11b8152600481018490526001600160a01b038b8116602483015291519190921691631896f70a91604480830192600092919082900301818387803b1580156112f257600080fd5b505af1158015611306573d6000803e3d6000fd5b505050506001600160a01b0387161561139257876001600160a01b031663d5fa2b0082896040518363ffffffff1660e01b815260040180838152602001826001600160a01b03166001600160a01b0316815260200192505050600060405180830381600087803b15801561137957600080fd5b505af115801561138d573d6000803e3d6000fd5b505050505b60015460408051630a3b53db60e21b8152600481018690526001600160a01b038e81166024830152915191909216916328ed4f6c91604480830192600092919082900301818387803b1580156113e757600080fd5b505af11580156113fb573d6000803e3d6000fd5b50505050600160009054906101000a90046001600160a01b03166001600160a01b03166323b872dd308d866040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050600060405180830381600087803b15801561148e57600080fd5b505af11580156114a2573d6000803e3d6000fd5b505050505061154c565b6001600160a01b038616156114c057600080fd5b60015460408051633f2891eb60e21b8152600481018590526001600160a01b038d81166024830152604482018d90529151919092169163fca247ac9160648083019260209291908290030181600087803b15801561151d57600080fd5b505af1158015611531573d6000803e3d6000fd5b505050506040513d602081101561154757600080fd5b505190505b896001600160a01b0316837fca6abbe9d7f11422cb6ca7629fbf6fe9efb1c621f71ce8f02b9f2a230097404f8d87856040518080602001848152602001838152602001828103825285818151815260200191508051906020019080838360005b838110156115c45781810151838201526020016115ac565b50505050905090810190601f1680156115f15780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a3833411156116395760405133903486900380156108fc02916000818181858888f19350505050158015611637573d6000803e3d6000fd5b505b5050505050505050505050565b8051600090819081905b8082101561172557600085838151811061166657fe5b01602001516001600160f81b0319169050600160ff1b81101561168e57600183019250611719565b600760fd1b6001600160f81b0319821610156116af57600283019250611719565b600f60fc1b6001600160f81b0319821610156116d057600383019250611719565b601f60fb1b6001600160f81b0319821610156116f157600483019250611719565b603f60fa1b6001600160f81b03198216101561171257600583019250611719565b6006830192505b50600190920191611650565b50909392505050565b6001600160a01b03811661174157600080fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b600354600082815260056020526040812054909142910111156117be57600080fd5b600454600083815260056020526040902054429101116117dd57600080fd5b6117e684610fcf565b6117ef57600080fd5b600082815260056020526040812081905561180a8585610c2c565b90506224ea0084101561181c57600080fd5b803410156110cb57600080fdfe6d616b65436f6d6d69746d656e7457697468436f6e66696728737472696e672c616464726573732c627974657333322c616464726573732c6164647265737329726567697374657228737472696e672c616464726573732c75696e743235362c62797465733332296d616b65436f6d6d69746d656e7428737472696e672c616464726573732c6279746573333229726567697374657257697468436f6e66696728737472696e672c616464726573732c75696e743235362c627974657333322c616464726573732c6164647265737329a265627a7a72315820dbcd3913c2076b23152296f549f9d7284be303cc004736992b455428cb03c12664736f6c634300050c0032","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1":"0xc965345edac823d56812cd20a10316233916a605","0x2":"0xec71e4e674fe0f432693dc2b935c34bd2774c003","0x3":"0x258","0x4":"0x15180"}},"0xbdefcf6429d0ac68236a6beb321cbd2ce66b463c":{"nonce":2,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c80636d435421116100885780637b37e561116100635780637b37e561146102435780638b9e028b14610256578063906c87cc1461027657806393790f4414610289575f80fd5b80636d435421146101eb5780636e9bfd9f146101fe578063794593bc14610230575f80fd5b806314afd79e116100c357806314afd79e1461018157806333bc8572146101945780634e3f9580146101b757806351710e45146101d8575f80fd5b8063027cc764146100e95780630a96ad391461011957806313ad9cab1461016c575b5f80fd5b6100fc6100f7366004610c39565b61029c565b6040516001600160a01b0390911681526020015b60405180910390f35b604080517f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f81527fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167602082015201610110565b61017f61017a366004610c61565b610339565b005b6100fc61018f366004610ca9565b610531565b6101a76101a2366004610cc9565b61055c565b6040519015158152602001610110565b6101ca6101c5366004610ca9565b610595565b604051908152602001610110565b61017f6101e6366004610ca9565b6105bd565b61017f6101f9366004610cc9565b6106be565b61021161020c366004610cfa565b6107ae565b604080516001600160a01b039093168352901515602083015201610110565b6100fc61023e366004610d11565b610838565b61017f610251366004610ca9565b610a0a565b610269610264366004610ca9565b610aab565b6040516101109190610d32565b6100fc610284366004610ca9565b610b28565b6101ca610297366004610ca9565b610b53565b5f6102a683610b8e565b6001600160a01b0383165f908152602081905260409020600301548083106102f157604051636ceb340b60e01b81526001600160a01b03851660048201526024015b60405180910390fd5b6001600160a01b0384165f90815260208190526040902060030180548490811061031d5761031d610d7e565b5f918252602090912001546001600160a01b0316949350505050565b61034283610bc6565b60405163c4e8fcb560e01b81526001600160a01b038381166004830152821515602483015284169063c4e8fcb5906044015f604051808303815f87803b15801561038a575f80fd5b505af115801561039c573d5f803e3d5ffd5b505050506001600160a01b038381165f908152602081815260408083209386168352600484019091529020548015158380156103d6575080155b15610425576003830180546001810182555f828152602080822090920180546001600160a01b0319166001600160a01b038a169081179091559254928152600486019091526040902055610529565b831580156104305750805b156105295760038301545f198301905f9061044d90600190610d92565b90508181146104d8575f85600301828154811061046c5761046c610d7e565b5f918252602090912001546003870180546001600160a01b03909216925082918590811061049c5761049c610d7e565b5f91825260208083209190910180546001600160a01b0319166001600160a01b0394851617905592909116815260048701909152604090208490555b846003018054806104eb576104eb610db7565b5f828152602080822083015f1990810180546001600160a01b03191690559092019092556001600160a01b0389168252600487019052604081205550505b505050505050565b5f61053b82610b8e565b506001600160a01b039081165f908152602081905260409020600101541690565b5f61056683610b8e565b506001600160a01b039182165f9081526020818152604080832093909416825260049092019091522054151590565b5f61059f82610b8e565b506001600160a01b03165f9081526020819052604090206003015490565b6105c681610b8e565b6001600160a01b038181165f9081526020819052604090206002015416331461060d576040516388c3a11560e01b81526001600160a01b03821660048201526024016102e8565b6040515f907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da908290a26001600160a01b038082165f818152602081905260408082206002810180546001600160a01b031916905560010154905133949190911692917fc8894f26f396ce8c004245c8b7cd1b92103a6e4302fcbab883987149ac01b7ec91a46001600160a01b03165f90815260208190526040902060010180546001600160a01b03191633179055565b6106c782610bc6565b6001600160a01b0381166106f95760405163a388d26360e01b81526001600160a01b03831660048201526024016102e8565b6001600160a01b038083165f9081526020819052604090206002015481169082160361074b576040516365e0406560e11b81526001600160a01b038084166004830152821660248201526044016102e8565b6040516001600160a01b038216907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da905f90a26001600160a01b039182165f90815260208190526040902060020180546001600160a01b03191691909216179055565b5f8060ff60f81b30847f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f6040516020016107eb9493929190610dcb565b60408051601f198184030181529190528051602090910120936001600160a01b0385163f7fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167149350915050565b5f6001600160a01b0382166108605760405163267eaa8160e21b815260040160405180910390fd5b606083901c3314610884576040516332db94d160e21b815260040160405180910390fd5b6040516108c3906001600160f81b031990309086907f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f90602001610dcb565b604051602081830303815290604052805190602001205f1c90507fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167816001600160a01b03163f0361093257604051633194665960e11b81526001600160a01b03821660048201526024016102e8565b8260405161093f90610c16565b8190604051809103905ff590508015801561095c573d5f803e3d5ffd5b50506001600160a01b038181165f81815260208181526040918290206001810180546001600160a01b03191695881695909517909455868455815192835282018690527f4397af6128d529b8ae0442f99db1296d5136062597a15bbc61c1b2a6431a7d15910160405180910390a16040516001600160a01b03808516915f918516907fc8894f26f396ce8c004245c8b7cd1b92103a6e4302fcbab883987149ac01b7ec908390a45092915050565b610a1381610bc6565b6001600160a01b038181165f9081526020819052604090206002015416610a58576040516335809b0b60e11b81526001600160a01b03821660048201526024016102e8565b6040515f907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da908290a26001600160a01b03165f90815260208190526040902060020180546001600160a01b0319169055565b6060610ab682610b8e565b6001600160a01b0382165f908152602081815260409182902060030180548351818402810184019094528084529091830182828015610b1c57602002820191905f5260205f20905b81546001600160a01b03168152600190910190602001808311610afe575b50505050509050919050565b5f610b3282610b8e565b506001600160a01b039081165f908152602081905260409020600201541690565b6001600160a01b0381165f9081526020819052604090205480610b89576040516304ca820960e41b815260040160405180910390fd5b919050565b6001600160a01b0381165f90815260208190526040902054610bc3576040516304ca820960e41b815260040160405180910390fd5b50565b610bcf81610b8e565b6001600160a01b038181165f90815260208190526040902060010154163314610bc35760405163d4ed9a1760e01b81526001600160a01b03821660048201526024016102e8565b610a4180610e0583390190565b80356001600160a01b0381168114610b89575f80fd5b5f8060408385031215610c4a575f80fd5b610c5383610c23565b946020939093013593505050565b5f805f60608486031215610c73575f80fd5b610c7c84610c23565b9250610c8a60208501610c23565b915060408401358015158114610c9e575f80fd5b809150509250925092565b5f60208284031215610cb9575f80fd5b610cc282610c23565b9392505050565b5f8060408385031215610cda575f80fd5b610ce383610c23565b9150610cf160208401610c23565b90509250929050565b5f60208284031215610d0a575f80fd5b5035919050565b5f8060408385031215610d22575f80fd5b82359150610cf160208401610c23565b602080825282518282018190525f9190848201906040850190845b81811015610d725783516001600160a01b031683529284019291840191600101610d4d565b50909695505050505050565b634e487b7160e01b5f52603260045260245ffd5b81810381811115610db157634e487b7160e01b5f52601160045260245ffd5b92915050565b634e487b7160e01b5f52603160045260245ffd5b6001600160f81b031994909416845260609290921b6bffffffffffffffffffffffff19166001840152601583015260358201526055019056fe60a060405234801561000f575f80fd5b5033608052608051610a1561002c5f395f6101d20152610a155ff3fe608060405234801561000f575f80fd5b506004361061004a575f3560e01c80634ce34aa21461004e578063899e104c1461007e5780638df25d9214610091578063c4e8fcb5146100a4575b5f80fd5b61006161005c366004610834565b6100b9565b6040516001600160e01b0319909116815260200160405180910390f35b61006161008c3660046108b4565b610121565b61006161009f36600461091b565b61018a565b6100b76100b2366004610969565b6101c7565b005b5f335f525f60205260405f20546100dd576349ed56f960e11b5f523360045260245ffd5b815f5b81811015610110576101088585838181106100fd576100fd6109a2565b905060c002016102c4565b6001016100e0565b50632671a55160e11b949350505050565b5f335f525f60205260405f2054610145576349ed56f960e11b5f523360045260245ffd5b835f5b8181101561016d576101658787838181106100fd576100fd6109a2565b600101610148565b506101788484610436565b50632267841360e21b95945050505050565b5f335f525f60205260405f20546101ae576349ed56f960e11b5f523360045260245ffd5b6101b88383610436565b506346f92ec960e11b92915050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610210576040516336abb4df60e11b815260040160405180910390fd5b6001600160a01b0382165f9081526020819052604090205481151560ff909116151503610268576040516349271a0f60e11b81526001600160a01b038316600482015281151560248201526044015b60405180910390fd5b6001600160a01b0382165f8181526020818152604091829020805460ff191685151590811790915591519182527fae63067d43ac07563b7eb8db6595635fc77f1578a2a5ea06ba91b63e2afa37e2910160405180910390a25050565b60016102d360208301836109ca565b60038111156102e4576102e46109b6565b03610329576103266102fc60408301602084016109ef565b61030c60608401604085016109ef565b61031c60808501606086016109ef565b8460a0013561056c565b50565b600261033860208301836109ca565b6003811115610349576103496109b6565b036103b6578060a00135600114610379576040516369f9582760e01b815260a0820135600482015260240161025f565b61032661038c60408301602084016109ef565b61039c60608401604085016109ef565b6103ac60808501606086016109ef565b8460800135610660565b60036103c560208301836109ca565b60038111156103d6576103d66109b6565b0361041d576103266103ee60408301602084016109ef565b6103fe60608401604085016109ef565b61040e60808501606086016109ef565b84608001358560a00135610715565b604051631e4cbc7f60e21b815260040160405180910390fd5b808280631759616b60e11b6020525f5b8381101561055f57823582018035803b61046b57635f15d6725f52806020526024601cfd5b60a08201358060051b60c0018060808501351460a0606086013514168185013583141615905080156104a657633ae8821360e21b5f5260045ffd5b506020860195506080602084016024378060061b60400190508060a00160a4525f8160c401528060c4018160a0850160c4375f808260205f875af1935083610550573d1561053057601f3d0160051c91508060051c826003028184111561051a578184036003028280028580020360091c01015b5a60208201101561052d573d5f803e3d5ffd5b50505b6357e222f160e11b5f528260045260c0606452608451602001608452805ffd5b50505050600181019050610446565b5050505060806040525050565b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166106515780873b15151661065157806106405781610623573d1561060257601f3d0160051c8360051c81600302818311156105eb578183036003028280028480020360091c01015b5a6020820110156105fe573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b833b61067757635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af180610707573d156106e557601f3d0160051c8260051c81600302818311156106ce578183036003028280028480020360091c01015b5a6020820110156106e1573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b61072c57635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af1806107d1573d156107b057601f3d0160051c8560051c8160030281831115610799578183036003028280028480020360091c01015b5a6020820110156107ac573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b5f8083601f8401126107fc575f80fd5b50813567ffffffffffffffff811115610813575f80fd5b60208301915083602060c08302850101111561082d575f80fd5b9250929050565b5f8060208385031215610845575f80fd5b823567ffffffffffffffff81111561085b575f80fd5b610867858286016107ec565b90969095509350505050565b5f8083601f840112610883575f80fd5b50813567ffffffffffffffff81111561089a575f80fd5b6020830191508360208260051b850101111561082d575f80fd5b5f805f80604085870312156108c7575f80fd5b843567ffffffffffffffff808211156108de575f80fd5b6108ea888389016107ec565b90965094506020870135915080821115610902575f80fd5b5061090f87828801610873565b95989497509550505050565b5f806020838503121561092c575f80fd5b823567ffffffffffffffff811115610942575f80fd5b61086785828601610873565b80356001600160a01b0381168114610964575f80fd5b919050565b5f806040838503121561097a575f80fd5b6109838361094e565b915060208301358015158114610997575f80fd5b809150509250929050565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52602160045260245ffd5b5f602082840312156109da575f80fd5b8135600481106109e8575f80fd5b9392505050565b5f602082840312156109ff575f80fd5b6109e88261094e56fea164736f6c6343000818000aa164736f6c6343000818000a","storage":{}},"0xbe5deac45dd1ca4ee18dc2d585d84d3d3cb82b0d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c806341539d4a146100465780634d5505d314610097578063afa764d7146100b1575b600080fd5b6100636004803603602081101561005c57600080fd5b50356100dc565b6040805195865260208601949094528484019290925260608401526001600160a01b03166080830152519081900360a00190f35b61009f610114565b60408051918252519081900360200190f35b6100da600480360360608110156100c757600080fd5b508035906020810135906040013561011a565b005b60006020819052908152604090208054600182015460028301546003840154600490940154929391929091906001600160a01b031685565b60015481565b6101226101eb565b506040805160a0810182528481526020808201858152828401858152426060808601918252336080870181815260018054810180825560009081528089528a81208a518155975188830155955160028801559351600387015551600490950180546001600160a01b0319166001600160a01b0390961695909517909455905486518981529485018890528487018a905295519495919491937fba5de06d22af2685c6c7765f60067f7d2b08c2d29f53cdf14d67f6d1c9bfb527929081900390910190a450505050565b6040518060a001604052806000801916815260200160008152602001600081526020016000815260200160006001600160a01b03168152509056fea164736f6c6343000606000a","storage":{"0x1":"0x0"}},"0xbe92182cab5b84fd18b34881a0c32771e84f5b8b":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061021c5760003560e01c80638da5cb5b11610125578063bebec6b4116100ad578063e985e9c51161007c578063e985e9c514610540578063f059235914610553578063f2fde38b14610566578063ffa1ad7414610579578063ffad6f551461059d57600080fd5b8063bebec6b4146104e7578063bfc5429b146104fa578063c15ae7cf1461050d578063c87b56dd1461052d57600080fd5b8063a81ce6f9116100f4578063a81ce6f91461046d578063ac9650d814610480578063b3f9e4cb146104a0578063b85afd28146104b3578063b98b3526146104d457600080fd5b80638da5cb5b146103f157806391015f6b146103f9578063933c051d1461041b578063a3f4df7e1461043d57600080fd5b80634bd79ed0116101a857806370a082311161017757806370a082311461038d578063715018a6146103a05780637e37479e146103a857806383caffbe146103bb578063869b8884146103ce57600080fd5b80634bd79ed0146103335780634f558e79146103465780636352211e14610359578063672b9f811461036c57600080fd5b80631bd8cc1a116101ef5780631bd8cc1a146102ac5780631be5e7ed146102cc578063276fabb1146102ec578063430c20811461030d578063485cc9551461032057600080fd5b806301ffc9a7146102215780630328075514610249578063081812fc1461026c57806313af403514610297575b600080fd5b61023461022f366004612c9d565b6105b0565b60405190151581526020015b60405180910390f35b61025c610257366004612d0b565b610638565b6040516102409493929190612dfe565b61027f61027a366004612e3c565b61065b565b6040516001600160a01b039091168152602001610240565b6102aa6102a5366004612e6a565b610760565b005b6102bf6102ba366004612d0b565b6107d1565b6040516102409190612e87565b6102df6102da366004612edb565b6107f0565b6040516102409190612f12565b6102ff6102fa366004612f25565b61091b565b604051908152602001610240565b61023461031b366004612f66565b61098f565b6102aa61032e366004612f92565b610aa2565b6102aa610341366004612fcb565b610bf5565b610234610354366004612e3c565b610e51565b61027f610367366004612e3c565b610e5c565b61037f61037a366004613036565b610e67565b604051610240929190613058565b6102ff61039b366004612e6a565b610f97565b6102aa611095565b6102ff6103b6366004612e6a565b6110a9565b6102bf6103c936600461307d565b611118565b6103e16103dc366004612fcb565b6114f0565b60405161024094939291906131bb565b61027f6116e6565b61040c610407366004612d0b565b611714565b60405161024093929190613208565b61042e610429366004612fcb565b611734565b60405161024093929190613234565b6102df604051806040016040528060118152602001702aa7299d10283937bc3c902932b0b232b960791b81525081565b61027f61047b366004612e3c565b6118bd565b61049361048e366004612f25565b61198b565b6040516102409190613277565b61027f6104ae366004612e3c565b611a7f565b6104c66104c1366004612d0b565b611b05565b6040516102409291906132d9565b6102df6104e23660046132fe565b611ce1565b6102df6104f5366004612e6a565b611cfb565b6102df6105083660046132fe565b611d6f565b61052061051b366004612f25565b611d89565b6040516102409190613371565b6102df61053b366004612e3c565b611e37565b61023461054e366004612f92565b611f09565b6102aa610561366004612fcb565b611f54565b6102aa610574366004612e6a565b612018565b6102df604051806040016040528060058152602001640302e352e360dc1b81525081565b6102aa6105ab366004613384565b612085565b60006001600160e01b031982166362526e6360e01b14806105e157506001600160e01b03198216636fa624af60e11b145b806105fc57506001600160e01b031982166308da864d60e31b145b8061061757506001600160e01b03198216638584880360e01b145b8061063257506301ffc9a760e01b6001600160e01b03198316145b92915050565b6000806060806106498787876120d8565b93509350935093505b93509350935093565b60006106668261233a565b61067257506000919050565b61067b826123d2565b6106f25760665460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa1580156106c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106ed91906133bd565b610632565b60655460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa15801561073c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061063291906133bd565b600061076a6116e6565b6001600160a01b0316146107c55760405162461bcd60e51b815260206004820152601e60248201527f50726f78795265616465723a204f574e45525f414c52454144595f534554000060448201526064015b60405180910390fd5b6107ce81612419565b50565b60606107e66107e0848661346a565b83612495565b90505b9392505050565b60606107fb826123d2565b1561088057606554604051631be5e7ed60e01b81526001600160a01b0390911690631be5e7ed9061083490879087908790600401613547565b600060405180830381865afa158015610851573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261087991908101906135b0565b90506107e9565b600061088b83612617565b90506001600160a01b0381163b1561091357604051631be5e7ed60e01b81526001600160a01b03821690631be5e7ed906108cd90889088908890600401613547565b600060405180830381865afa92505050801561090b57506040513d6000823e601f3d908101601f1916820160405261090891908101906135b0565b60015b156109135791505b509392505050565b60655460405163276fabb160e01b81526000916001600160a01b03169063276fabb19061094e908690869060040161366c565b602060405180830381865afa15801561096b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613680565b600061099a8261233a565b6109a657506000610632565b6109af826123d2565b610a2d5760665460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a04573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a289190613699565b6107e9565b60655460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a7e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613699565b600054610100900460ff1615808015610ac25750600054600160ff909116105b80610adc5750303b158015610adc575060005460ff166001145b610b3f5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107bc565b6000805460ff191660011790558015610b62576000805461ff0019166101001790555b606580546001600160a01b038086166001600160a01b0319928316179092556066805492851692909116919091179055610b9a61268a565b610ba261268a565b610baa6126b1565b8015610bf0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b610bfd6126e1565b828114610c4c5760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107bc565b60005b83811015610e4a5760006068868684818110610c6d57610c6d6136bb565b9050602002810190610c7f91906136d1565b604051610c8d929190613717565b908152604051908190036020019020541115610cf1576068858583818110610cb757610cb76136bb565b9050602002810190610cc991906136d1565b604051610cd7929190613717565b90815260200160405180910390206000610cf19190612c18565b60005b838383818110610d0657610d066136bb565b9050602002810190610d189190613727565b9050811015610ddc576068868684818110610d3557610d356136bb565b9050602002810190610d4791906136d1565b604051610d55929190613717565b9081526020016040518091039020848484818110610d7557610d756136bb565b9050602002810190610d879190613727565b83818110610d9757610d976136bb565b9050602002810190610da991906136d1565b82546001810184556000938452602090932090920191610dc991836137f8565b5080610dd4816138cd565b915050610cf4565b507fb2b57b54285120d17f49f2490a39ef791441fd0ad1e6b6818c23262bf91f061c858583818110610e1057610e106136bb565b9050602002810190610e2291906136d1565b604051610e309291906138e6565b60405180910390a180610e42816138cd565b915050610c4f565b5050505050565b60006106328261233a565b600061063282612740565b606080610e73836123d2565b15610ef95760655460405163672b9f8160e01b815260048101869052602481018590526001600160a01b039091169063672b9f8190604401600060405180830381865afa158015610ec8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610ef091908101906138fa565b91509150610f90565b6000610f0484612617565b90506001600160a01b0381163b15610f8e5760405163672b9f8160e01b815260048101869052602481018590526001600160a01b0382169063672b9f8190604401600060405180830381865afa925050508015610f8357506040513d6000823e601f3d908101601f19168201604052610f8091908101906138fa565b60015b15610f8e5790935091505b505b9250929050565b6065546040516370a0823160e01b81526001600160a01b03838116600483015260009283929116906370a0823190602401602060405180830381865afa158015610fe5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110099190613680565b6066549091506001600160a01b031615610632576066546040516370a0823160e01b81526001600160a01b038581166004830152909116906370a0823190602401602060405180830381865afa158015611067573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061108b9190613680565b6107e9908261395d565b61109d6126e1565b6110a76000612419565b565b606554604051633f1ba3cf60e11b81526001600160a01b0383811660048301526000921690637e37479e90602401602060405180830381865afa1580156110f4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190613680565b606060006067868660405161112e929190613717565b9081526020016040518091039020805461114790613770565b80601f016020809104026020016040519081016040528092919081815260200182805461117390613770565b80156111c05780601f10611195576101008083540402835291602001916111c0565b820191906000526020600020905b8154815290600101906020018083116111a357829003601f168201915b5050505050905080516000036111d657506114e8565b6000604051806040016040528060068152602001653a37b5b2b71760d11b81525090506000604051806040016040528060088152602001672e6164647265737360c01b81525090506000604051806040016040528060018152602001601760f91b815250905060008385838c8c868d8d8a60405160200161125f99989796959493929190613970565b6040516020818303038152906040529050600060688260405161128291906139f3565b9081526020016040518091039020805480602002602001604051908101604052809291908181526020016000905b8282101561135c5783829060005260206000200180546112cf90613770565b80601f01602080910402602001604051908101604052809291908181526020018280546112fb90613770565b80156113485780601f1061131d57610100808354040283529160200191611348565b820191906000526020600020905b81548152906001019060200180831161132b57829003601f168201915b5050505050815260200190600101906112b0565b50505050905080516003611370919061395d565b6001600160401b03811115611387576113876133da565b6040519080825280602002602001820160405280156113ba57816020015b60608152602001906001900390816113a55790505b50965081876000815181106113d1576113d16136bb565b602002602001018190525060005b815181101561143e578181815181106113fa576113fa6136bb565b602002602001015188826001611410919061395d565b81518110611420576114206136bb565b60200260200101819052508080611436906138cd565b9150506113df565b508486848d8d8860405160200161145a96959493929190613a0f565b6040516020818303038152906040528782516001611478919061395d565b81518110611488576114886136bb565b60200260200101819052508486856040516020016114a893929190613a72565b60405160208183030381529060405287825160026114c6919061395d565b815181106114d6576114d66136bb565b60200260200101819052505050505050505b949350505050565b6060808080846001600160401b0381111561150d5761150d6133da565b604051908082528060200260200182016040528015611536578160200160208202803683370190505b509350846001600160401b03811115611551576115516133da565b60405190808252806020026020018201604052801561157a578160200160208202803683370190505b509250846001600160401b03811115611595576115956133da565b6040519080825280602002602001820160405280156115c857816020015b60608152602001906001900390816115b35790505b509150846001600160401b038111156115e3576115e36133da565b60405190808252806020026020018201604052801561161657816020015b60608152602001906001900390816116015790505b50905060005b858110156116da57611647898989898581811061163b5761163b6136bb565b905060200201356120d8565b888581518110611659576116596136bb565b60200260200101888681518110611672576116726136bb565b6020026020010188878151811061168b5761168b6136bb565b602002602001018888815181106116a4576116a46136bb565b6020908102919091010193909352929091526001600160a01b0392831690915291169052806116d2816138cd565b91505061161c565b50945094509450949050565b7fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c8121905546001600160a01b031690565b6000806060611724868686612761565b9250925092505b93509350939050565b60608080836001600160401b03811115611750576117506133da565b604051908082528060200260200182016040528015611779578160200160208202803683370190505b509250836001600160401b03811115611794576117946133da565b6040519080825280602002602001820160405280156117bd578160200160208202803683370190505b509150836001600160401b038111156117d8576117d86133da565b60405190808252806020026020018201604052801561180b57816020015b60608152602001906001900390816117f65790505b50905060005b848110156118b25761183c8888888885818110611830576118306136bb565b90506020020135612761565b86848151811061184e5761184e6136bb565b60200260200101868581518110611867576118676136bb565b60200260200101868681518110611880576118806136bb565b60209081029190910101929092526001600160a01b0392831690915291169052806118aa816138cd565b915050611811565b509450945094915050565b606554604051634f558e7960e01b8152600481018390526000916001600160a01b031690634f558e7990602401602060405180830381865afa158015611907573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061192b9190613699565b156119415750506065546001600160a01b031690565b6066546001600160a01b03161580159061196d575060006119618361296c565b6001600160a01b031614155b156119835750506066546001600160a01b031690565b506000919050565b6060816001600160401b038111156119a5576119a56133da565b6040519080825280602002602001820160405280156119d857816020015b60608152602001906001900390816119c35790505b50905060005b82811015611a7857611a48308585848181106119fc576119fc6136bb565b9050602002810190611a0e91906136d1565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061299e92505050565b828281518110611a5a57611a5a6136bb565b60200260200101819052508080611a70906138cd565b9150506119de565b5092915050565b6000611a8a8261233a565b611a9657506000919050565b611a9f826123d2565b611ad45760665460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb906024016106ac565b60655460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb9060240161071f565b606080836001600160401b03811115611b2057611b206133da565b604051908082528060200260200182016040528015611b5357816020015b6060815260200190600190039081611b3e5790505b509150836001600160401b03811115611b6e57611b6e6133da565b604051908082528060200260200182016040528015611ba157816020015b6060815260200190600190039081611b8c5790505b509050611bad836123d2565b15611c345760655460405163170b5fa560e31b81526001600160a01b039091169063b85afd2890611be690889088908890600401613ab5565b600060405180830381865afa158015611c03573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611c2b9190810190613b72565b91509150611cd9565b6000611c3f84612617565b90506001600160a01b0381163b15158015611c5957508415155b15611cd75760405163170b5fa560e31b81526001600160a01b0382169063b85afd2890611c8e90899089908990600401613ab5565b600060405180830381865afa925050508015611ccc57506040513d6000823e601f3d908101601f19168201604052611cc99190810190613b72565b60015b15611cd75790935091505b505b935093915050565b6060611cf08686868686612a92565b979650505050505050565b606554604051632fafb1ad60e21b81526001600160a01b038381166004830152606092169063bebec6b4906024015b600060405180830381865afa158015611d47573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261063291908101906135b0565b6060611d7e8686868686612a92565b509695505050505050565b6060816001600160401b03811115611da357611da36133da565b604051908082528060200260200182016040528015611dcc578160200160208202803683370190505b50905060005b82811015611a7857611dfb848483818110611def57611def6136bb565b90506020020135612740565b828281518110611e0d57611e0d6136bb565b6001600160a01b039092166020928302919091019091015280611e2f816138cd565b915050611dd2565b6060611e428261233a565b611e5a57505060408051602081019091526000815290565b611e63826123d2565b611ed85760665460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401600060405180830381865afa158015611eb0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106ed91908101906135b0565b60655460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401611d2a565b60405162461bcd60e51b815260206004820152601f60248201527f50726f78795265616465723a20554e535550504f525445445f4d4554484f440060448201526000906064016107bc565b611f5c6126e1565b828114611fab5760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107bc565b60005b83811015610e4a57612006858583818110611fcb57611fcb6136bb565b9050602002810190611fdd91906136d1565b858585818110611fef57611fef6136bb565b905060200281019061200191906136d1565b612b3e565b80612010816138cd565b915050611fae565b6120206126e1565b6001600160a01b0381166107c55760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107bc565b61208d6126e1565b60005b83811015610e4a576120c68585838181106120ad576120ad6136bb565b90506020028101906120bf91906136d1565b8585612b3e565b806120d0816138cd565b915050612090565b600080606080856001600160401b038111156120f6576120f66133da565b60405190808252806020026020018201604052801561212957816020015b60608152602001906001900390816121145790505b509150856001600160401b03811115612144576121446133da565b60405190808252806020026020018201604052801561217757816020015b60608152602001906001900390816121625790505b509050612183856123d2565b156122845760655460405163b3f9e4cb60e01b8152600481018790526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa1580156121d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121f591906133bd565b935061220085612bad565b60655460405163170b5fa560e31b81529194506001600160a01b03169063b85afd2890612235908a908a908a90600401613ab5565b600060405180830381865afa158015612252573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261227a9190810190613b72565b9092509050610652565b61228d85612617565b93506122988561296c565b92506001600160a01b0384163b151580156122b4575060008251115b156106525760405163170b5fa560e31b81526001600160a01b0385169063b85afd28906122e9908a908a908a90600401613ab5565b600060405180830381865afa92505050801561232757506040513d6000823e601f3d908101601f191682016040526123249190810190613b72565b60015b1561065257909250905093509350935093565b6000612345826123d2565b6123645760006123548361296c565b6001600160a01b03161415610632565b606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e79906024015b602060405180830381865afa1580156123ae573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190613699565b6066546000906001600160a01b031615806106325750606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401612391565b60006124236116e6565b9050817fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c812190580546001600160a01b0319166001600160a01b03928316179055604051838216918316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b606082516001600160401b038111156124b0576124b06133da565b6040519080825280602002602001820160405280156124e357816020015b60608152602001906001900390816124ce5790505b5090506124ef826123d2565b1561257257606554604051630dec660d60e11b81526001600160a01b0390911690631bd8cc1a906125269086908690600401613bcb565b600060405180830381865afa158015612543573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261256b9190810190613bed565b9050610632565b600061257d83612617565b90506001600160a01b0381163b15158015612599575060008451115b15611a7857604051630dec660d60e11b81526001600160a01b03821690631bd8cc1a906125cc9087908790600401613bcb565b600060405180830381865afa92505050801561260a57506040513d6000823e601f3d908101601f191682016040526126079190810190613bed565b60015b15611a7857949350505050565b60665460405163b3f9e4cb60e01b8152600481018390526000916001600160a01b03169063b3f9e4cb906024015b602060405180830381865afa92505050801561267e575060408051601f3d908101601f1916820190925261267b918101906133bd565b60015b61063257506000919050565b600054610100900460ff166110a75760405162461bcd60e51b81526004016107bc90613c21565b600054610100900460ff166126d85760405162461bcd60e51b81526004016107bc90613c21565b6110a733612419565b336126ea6116e6565b6001600160a01b0316146110a75760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107bc565b600061274b826123d2565b612758576106ed8261296c565b61063282612bad565b6000806060846001600160401b0381111561277e5761277e6133da565b6040519080825280602002602001820160405280156127b157816020015b606081526020019060019003908161279c5790505b5090506127bd846123d2565b156128bb5760655460405163b3f9e4cb60e01b8152600481018690526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561280b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061282f91906133bd565b925061283a84612bad565b606554604051630dec660d60e11b81529193506001600160a01b031690631bd8cc1a9061286f90899089908990600401613c6c565b600060405180830381865afa15801561288c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526128b49190810190613bed565b905061172b565b6128c484612617565b92506128cf8461296c565b91506001600160a01b0383163b151580156128e957508415155b1561172b57604051630dec660d60e11b81526001600160a01b03841690631bd8cc1a9061291e90899089908990600401613c6c565b600060405180830381865afa92505050801561295c57506040513d6000823e601f3d908101601f191682016040526129599190810190613bed565b60015b1561172b57905093509350939050565b6066546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401612645565b60606001600160a01b0383163b612a065760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b60648201526084016107bc565b600080846001600160a01b031684604051612a2191906139f3565b600060405180830381855af49150503d8060008114612a5c576040519150601f19603f3d011682016040523d82523d6000602084013e612a61565b606091505b5091509150612a898282604051806060016040528060278152602001613c8160279139612bdf565b95945050505050565b6060806000612aa388888888611118565b90506000612ab18286612495565b905060005b8151811015612b31576000828281518110612ad357612ad36136bb565b6020026020010151511115612b1f57828181518110612af457612af46136bb565b60200260200101519350818181518110612b1057612b106136bb565b60200260200101519450612b31565b80612b29816138cd565b915050612ab6565b5050509550959350505050565b818160678686604051612b52929190613717565b90815260200160405180910390209182612b6d9291906137f8565b507f0bf4b04a0f6d7d0800284e1abb0f58f795c0a25b9088634b6ab847be51001dec8484604051612b9f9291906138e6565b60405180910390a150505050565b6065546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401612645565b60608315612bee5750816107e9565b825115612bfe5782518084602001fd5b8160405162461bcd60e51b81526004016107bc9190612f12565b50805460008255906000526020600020908101906107ce91905b80821115612c4f576000612c468282612c53565b50600101612c32565b5090565b508054612c5f90613770565b6000825580601f10612c6f575050565b601f0160209004906000526020600020908101906107ce91905b80821115612c4f5760008155600101612c89565b600060208284031215612caf57600080fd5b81356001600160e01b0319811681146107e957600080fd5b60008083601f840112612cd957600080fd5b5081356001600160401b03811115612cf057600080fd5b6020830191508360208260051b8501011115610f9057600080fd5b600080600060408486031215612d2057600080fd5b83356001600160401b03811115612d3657600080fd5b612d4286828701612cc7565b909790965060209590950135949350505050565b60005b83811015612d71578181015183820152602001612d59565b50506000910152565b60008151808452612d92816020860160208601612d56565b601f01601f19169290920160200192915050565b600082825180855260208086019550808260051b84010181860160005b84811015612df157601f19868403018952612ddf838351612d7a565b98840198925090830190600101612dc3565b5090979650505050505050565b6001600160a01b03858116825284166020820152608060408201819052600090612e2a90830185612da6565b8281036060840152611cf08185612da6565b600060208284031215612e4e57600080fd5b5035919050565b6001600160a01b03811681146107ce57600080fd5b600060208284031215612e7c57600080fd5b81356107e981612e55565b6020815260006107e96020830184612da6565b60008083601f840112612eac57600080fd5b5081356001600160401b03811115612ec357600080fd5b602083019150836020828501011115610f9057600080fd5b600080600060408486031215612ef057600080fd5b83356001600160401b03811115612f0657600080fd5b612d4286828701612e9a565b6020815260006107e96020830184612d7a565b60008060208385031215612f3857600080fd5b82356001600160401b03811115612f4e57600080fd5b612f5a85828601612cc7565b90969095509350505050565b60008060408385031215612f7957600080fd5b8235612f8481612e55565b946020939093013593505050565b60008060408385031215612fa557600080fd5b8235612fb081612e55565b91506020830135612fc081612e55565b809150509250929050565b60008060008060408587031215612fe157600080fd5b84356001600160401b0380821115612ff857600080fd5b61300488838901612cc7565b9096509450602087013591508082111561301d57600080fd5b5061302a87828801612cc7565b95989497509550505050565b6000806040838503121561304957600080fd5b50508035926020909101359150565b60408152600061306b6040830185612d7a565b8281036020840152612a898185612d7a565b6000806000806040858703121561309357600080fd5b84356001600160401b03808211156130aa57600080fd5b6130b688838901612e9a565b909650945060208701359150808211156130cf57600080fd5b5061302a87828801612e9a565b600081518084526020808501945080840160005b838110156131155781516001600160a01b0316875295820195908201906001016130f0565b509495945050505050565b60008282518085526020808601955060058183821b8501018287016000805b868110156131ac57601f1988850381018c5283518051808752908801908887019080891b88018a01865b8281101561319557858a8303018452613183828651612d7a565b948c0194938c01939150600101613169565b509e8a019e9750505093870193505060010161313f565b50919998505050505050505050565b6080815260006131ce60808301876130dc565b82810360208401526131e081876130dc565b905082810360408401526131f48186613120565b90508281036060840152611cf08185613120565b6001600160a01b03848116825283166020820152606060408201819052600090612a8990830184612da6565b60608152600061324760608301866130dc565b828103602084015261325981866130dc565b9050828103604084015261326d8185613120565b9695505050505050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156132cc57603f198886030184526132ba858351612d7a565b9450928501929085019060010161329e565b5092979650505050505050565b6040815260006132ec6040830185612da6565b8281036020840152612a898185612da6565b60008060008060006060868803121561331657600080fd5b85356001600160401b038082111561332d57600080fd5b61333989838a01612e9a565b9097509550602088013591508082111561335257600080fd5b5061335f88828901612e9a565b96999598509660400135949350505050565b6020815260006107e960208301846130dc565b6000806000806040858703121561339a57600080fd5b84356001600160401b03808211156133b157600080fd5b6130b688838901612cc7565b6000602082840312156133cf57600080fd5b81516107e981612e55565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715613418576134186133da565b604052919050565b60006001600160401b03821115613439576134396133da565b5060051b60200190565b60006001600160401b0382111561345c5761345c6133da565b50601f01601f191660200190565b600061347d61347884613420565b6133f0565b80848252602080830192508560051b85013681111561349b57600080fd5b855b818110156135125780356001600160401b038111156134bc5760008081fd5b870136601f8201126134ce5760008081fd5b80356134dc61347882613443565b81815236868385010111156134f15760008081fd5b8186840187830137600091810186019190915286525093820193820161349d565b50919695505050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60408152600061355b60408301858761351e565b9050826020830152949350505050565b600082601f83011261357c57600080fd5b815161358a61347882613443565b81815284602083860101111561359f57600080fd5b6114e8826020830160208701612d56565b6000602082840312156135c257600080fd5b81516001600160401b038111156135d857600080fd5b6114e88482850161356b565b60008383855260208086019550808560051b8301018460005b87811015612df157848303601f19018952813536889003601e1901811261362357600080fd5b870184810190356001600160401b0381111561363e57600080fd5b80360382131561364d57600080fd5b61365885828461351e565b9a86019a94505050908301906001016135fd565b6020815260006107e66020830184866135e4565b60006020828403121561369257600080fd5b5051919050565b6000602082840312156136ab57600080fd5b815180151581146107e957600080fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e198436030181126136e857600080fd5b8301803591506001600160401b0382111561370257600080fd5b602001915036819003821315610f9057600080fd5b8183823760009101908152919050565b6000808335601e1984360301811261373e57600080fd5b8301803591506001600160401b0382111561375857600080fd5b6020019150600581901b3603821315610f9057600080fd5b600181811c9082168061378457607f821691505b6020821081036137a457634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115610bf057600081815260208120601f850160051c810160208610156137d15750805b601f850160051c820191505b818110156137f0578281556001016137dd565b505050505050565b6001600160401b0383111561380f5761380f6133da565b6138238361381d8354613770565b836137aa565b6000601f841160018114613857576000851561383f5750838201355b600019600387901b1c1916600186901b178355610e4a565b600083815260209020601f19861690835b828110156138885786850135825560209485019460019092019101613868565b50868210156138a55760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b634e487b7160e01b600052601160045260246000fd5b6000600182016138df576138df6138b7565b5060010190565b6020815260006107e660208301848661351e565b6000806040838503121561390d57600080fd5b82516001600160401b038082111561392457600080fd5b6139308683870161356b565b9350602085015191508082111561394657600080fd5b506139538582860161356b565b9150509250929050565b80820180821115610632576106326138b7565b60008a51613982818460208f01612d56565b8a5190830190613996818360208f01612d56565b8a519101906139a9818360208e01612d56565b0187898237600090880190815286516139c6818360208b01612d56565b0184868237600090850190815283516139e3818360208801612d56565b019b9a5050505050505050505050565b60008251613a05818460208701612d56565b9190910192915050565b60008751613a21818460208c01612d56565b875190830190613a35818360208c01612d56565b8751910190613a48818360208b01612d56565b018486823760009085019081528351613a65818360208801612d56565b0198975050505050505050565b60008451613a84818460208901612d56565b845190830190613a98818360208901612d56565b8451910190613aab818360208801612d56565b0195945050505050565b6040808252810183905260006001600160fb1b03841115613ad557600080fd5b8360051b808660608501376020830193909352500160600192915050565b600082601f830112613b0457600080fd5b81516020613b1461347883613420565b82815260059290921b84018101918181019086841115613b3357600080fd5b8286015b84811015611d7e5780516001600160401b03811115613b565760008081fd5b613b648986838b010161356b565b845250918301918301613b37565b60008060408385031215613b8557600080fd5b82516001600160401b0380821115613b9c57600080fd5b613ba886838701613af3565b93506020850151915080821115613bbe57600080fd5b5061395385828601613af3565b604081526000613bde6040830185612da6565b90508260208301529392505050565b600060208284031215613bff57600080fd5b81516001600160401b03811115613c1557600080fd5b6114e884828501613af3565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60408152600061355b6040830185876135e456fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a","storage":{}},"0xc2110388dd54228ae0a834119457ede938bf0b57":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061021e5760003560e01c80638da5cb5b11610123578063acf1a841116100ab578063d547741f1161006f578063d547741f14610682578063f14fcbc8146106a2578063f23a6e61146106c2578063f2fde38b146106e2578063ffa1ad741461070257600080fd5b8063acf1a841146105e0578063bc197c8114610600578063c0c53b8b14610620578063cf01585314610640578063d53913931461066057600080fd5b8063a0e3aef1116100f2578063a0e3aef114610534578063a217fddf14610554578063a3f4df7e14610569578063a4247400146105a0578063aa271e1a146105c057600080fd5b80638da5cb5b146104c157806391d14854146104df578063983b2d56146104ff578063986502751461051f57600080fd5b80635fc1964f116101a65780636ccbae5f116101755780636ccbae5f14610439578063715018a61461045957806371e2a6571461046e57806381c81d351461048e57806383e7f6ff146104a157600080fd5b80635fc1964f146103ae578063634486da146103ce5780636352211e146103e15780636a8be89e1461041957600080fd5b80632f2ff15d116101ed5780632f2ff15d146103035780633092afd51461032557806336568abe14610345578063423f6cef14610365578063572b6c051461038557600080fd5b806301ffc9a71461022a578063150b7a021461025f5780631bf7e13e14610298578063248a9ca3146102c557600080fd5b3661022557005b600080fd5b34801561023657600080fd5b5061024a6102453660046125f2565b610733565b60405190151581526020015b60405180910390f35b34801561026b57600080fd5b5061027f61027a366004612672565b610779565b6040516001600160e01b03199091168152602001610256565b3480156102a457600080fd5b506102b86102b33660046126e4565b6108cb565b60405161025691906127a4565b3480156102d157600080fd5b506102f56102e03660046127b7565b600090815260fb602052604090206001015490565b604051908152602001610256565b34801561030f57600080fd5b5061032361031e3660046127d0565b610997565b005b34801561033157600080fd5b50610323610340366004612800565b6109c1565b34801561035157600080fd5b506103236103603660046127d0565b6109d5565b34801561037157600080fd5b5061032361038036600461281d565b610a68565b34801561039157600080fd5b5061024a6103a0366004612800565b6001600160a01b0316301490565b3480156103ba57600080fd5b506103236103c936600461288f565b610bd9565b6103236103dc366004612800565b610c21565b3480156103ed57600080fd5b506104016103fc3660046127b7565b610ce4565b6040516001600160a01b039091168152602001610256565b34801561042557600080fd5b50610323610434366004612800565b610cef565b34801561044557600080fd5b506102f56104543660046127b7565b610d38565b34801561046557600080fd5b50610323610d7e565b34801561047a57600080fd5b5061032361048936600461288f565b610d92565b61032361049c366004612800565b610dda565b3480156104ad57600080fd5b506102f56104bc366004612934565b610e57565b3480156104cd57600080fd5b506097546001600160a01b0316610401565b3480156104eb57600080fd5b5061024a6104fa3660046127d0565b610efa565b34801561050b57600080fd5b5061032361051a366004612800565b610f25565b34801561052b57600080fd5b50610323610f36565b34801561054057600080fd5b506102f561054f366004612a5c565b610f50565b34801561056057600080fd5b506102f5600081565b34801561057557600080fd5b506102b86040518060400160405280600b81526020016a454e5320437573746f647960a81b81525081565b3480156105ac57600080fd5b5061024a6105bb3660046126e4565b610ffc565b3480156105cc57600080fd5b5061024a6105db366004612800565b61104f565b3480156105ec57600080fd5b506103236105fb366004612934565b611069565b34801561060c57600080fd5b5061027f61061b366004612b35565b611222565b34801561062c57600080fd5b5061032361063b366004612bf3565b6112db565b34801561064c57600080fd5b5061032361065b366004612c3e565b611485565b34801561066c57600080fd5b506102f56000805160206133f583398151915281565b34801561068e57600080fd5b5061032361069d3660046127d0565b611592565b3480156106ae57600080fd5b506103236106bd3660046127b7565b6115b7565b3480156106ce57600080fd5b5061027f6106dd366004612d20565b61162b565b3480156106ee57600080fd5b506103236106fd366004612800565b6116bc565b34801561070e57600080fd5b506102b860405180604001604052806005815260200164302e312e3360d81b81525081565b60006001600160e01b03198216630a85bd0160e11b148061076457506001600160e01b03198216630271189760e51b145b806107735750610773826116d8565b92915050565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004546000906001600160a01b0316806107b061170d565b6001600160a01b0316036108a957600080806107ce86880188612d9b565b9250925092506107dd8361171c565b6001600160a01b03841663b88d4fde30600080516020613415833981519152546040516001600160a01b03909116908c9061082390879030906000908b90602001612dfc565b6040516020818303038152906040526040518563ffffffff1660e01b81526004016108519493929190612e3c565b600060405180830381600087803b15801561086b57600080fd5b505af115801561087f573d6000803e3d6000fd5b5050505061089561088f8261174e565b846117d3565b50630a85bd0160e11b93506108c292505050565b6040516344e7d94960e01b815260040160405180910390fd5b95945050505050565b606060005a90506108dd858585610ffc565b6108fa57604051638baa579f60e01b815260040160405180910390fd5b61098c61090a6020870187612800565b3060408801358461091e60608b018b612e6f565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061185e92505050565b9150505b9392505050565b600082815260fb60205260409020600101546109b28161193f565b6109bc8383611950565b505050565b6109c96119d7565b6109d281611a50565b50565b6109dd61170d565b6001600160a01b0316816001600160a01b031614610a5a5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b610a648282611a68565b5050565b80610a7161170d565b6001600160a01b0316610a8382611aed565b6001600160a01b031614610ac55780610a9a61170d565b604051637ea58b1160e01b815260048101929092526001600160a01b03166024820152604401610a51565b610ace82611c03565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052600090610b22906060015b6040516020818303038152906040528051906020012090565b80546001600160a01b0319166001600160a01b0392909216919091179055600060008051602061341583398151915254604051637921219560e11b81523060048201526001600160a01b038681166024830152604482018690526001606483015260a06084830152600060a48301529091169150819063f242432a9060c401600060405180830381600087803b158015610bbb57600080fd5b505af1158015610bcf573d6000803e3d6000fd5b5050505050505050565b610be16119d7565b60005b8151811015610a6457610c0f828281518110610c0257610c02612eb5565b6020026020010151611a50565b80610c1981612ee1565b915050610be4565b610c2c6105db61170d565b610c485760405162461bcd60e51b8152600401610a5190612efa565b6001600160a01b038116610c9e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a51565b610ca781611c1c565b610caf610f36565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610a64573d6000803e3d6000fd5b600061077382611aed565b610cf76119d7565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c500480546001600160a01b0319166001600160a01b0392909216919091179055565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a838156020820152908101829052600090610d7790606001610b09565b5492915050565b610d866119d7565b610d906000611c34565b565b610d9a6119d7565b60005b8151811015610a6457610dc8828281518110610dbb57610dbb612eb5565b6020026020010151611c1c565b80610dd281612ee1565b915050610d9d565b610de56105db61170d565b610e015760405162461bcd60e51b8152600401610a5190612efa565b6001600160a01b038116610ca75760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a51565b6000805160206133d5833981519152546040516383e7f6ff60e01b81526000916001600160a01b031690829082906383e7f6ff90610e9d90899089908990600401612f58565b6040805180830381865afa158015610eb9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610edd9190612f7c565b60208101518151919250610ef091612fca565b9695505050505050565b600091825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610f2d6119d7565b6109d281611c1c565b610d906000805160206133f583398151915261036061170d565b6000805160206133d5833981519152546000906001600160a01b0316806365a69dcf8d85610f7e5730610f80565b8d5b8d8d8d8d8d8d8d6040518a63ffffffff1660e01b8152600401610fab9998979695949392919061306e565b602060405180830381865afa158015610fc8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fec91906130de565b9c9b505050505050505050505050565b600061104761100a856130f7565b3085858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611c8692505050565b949350505050565b60006107736000805160206133f583398151915283610efa565b6110746105db61170d565b6110905760405162461bcd60e51b8152600401610a5190612efa565b6002603354036110e25760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a51565b60026033556000805160206133d5833981519152546040516383e7f6ff60e01b81526001600160a01b039091169060009082906383e7f6ff9061112d90889088908890600401612f58565b6040805180830381865afa158015611149573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061116d9190612f7c565b6020810151815191925061118091612fca565b4710156111a05760405163050205f960e01b815260040160405180910390fd5b816001600160a01b031663acf1a841826020015183600001516111c39190612fca565b8787876040518563ffffffff1660e01b81526004016111e493929190612f58565b6000604051808303818588803b1580156111fd57600080fd5b505af1158015611211573d6000803e3d6000fd5b505060016033555050505050505050565b6000600080516020613415833981519152546001600160a01b031661124561170d565b6001600160a01b03161461126c576040516344e7d94960e01b815260040160405180910390fd5b600061127a83850185612800565b90506112858161171c565b60005b878110156112c4576112b28989838181106112a5576112a5612eb5565b90506020020135836117d3565b806112bc81612ee1565b915050611288565b5063bc197c8160e01b9a9950505050505050505050565b600054610100900460ff16158080156112fb5750600054600160ff909116105b806113155750303b158015611315575060005460ff166001145b6113785760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610a51565b6000805460ff19166001179055801561139b576000805461ff0019166101001790555b6000805160206133d583398151915280546001600160a01b038087166001600160a01b03199283161790925560008051602061341583398151915280548684169083161790557ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004805492851692909116919091179055611419611dc5565b611421611df3565b611429611df3565b611431611e1a565b611439611e51565b801561147f576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6114906105db61170d565b6114ac5760405162461bcd60e51b8152600401610a5190612efa565b6002603354036114fe5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a51565b600260338190555060006115478c8c8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061174e92505050565b905061155281611c03565b6115708c8c846115625730611564565b8c5b8c8c8c8c8c8c8c611e8a565b8161157f5761157f818b6117d3565b5050600160335550505050505050505050565b600082815260fb60205260409020600101546115ad8161193f565b6109bc8383611a68565b60006000805160206133d583398151915254604051631e29f97960e31b8152600481018490526001600160a01b039091169150819063f14fcbc890602401600060405180830381600087803b15801561160f57600080fd5b505af1158015611623573d6000803e3d6000fd5b505050505050565b6000600080516020613415833981519152546001600160a01b031661164e61170d565b6001600160a01b031614611675576040516344e7d94960e01b815260040160405180910390fd5b6001600160a01b038616156116a957600061169283850185612800565b905061169d8161171c565b6116a786826117d3565b505b5063f23a6e6160e01b9695505050505050565b6116c46119d7565b6116cd81611fd5565b6109d260008261204b565b60006001600160e01b03198216637965db0b60e01b148061077357506301ffc9a760e01b6001600160e01b0319831614610773565b6000611717612055565b905090565b6001600160a01b0381166109d25760405163b20f76e360e01b81526001600160a01b0382166004820152602401610a51565b60007f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae60001b826040516020016117859190613195565b604051602081830303815290604052805190602001206040516020016117b5929190918252602082015260400190565b60408051601f19818403018152919052805160209091012092915050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052819061181190606001610b09565b80546001600160a01b0319166001600160a01b039283161790556040519082169083907f45aa97e368889fb3527c1db60c59c2ae91e82f21778613449e46d4208c1c4b1290600090a35050565b606061186985612073565b600080876001600160a01b0316866118838b8a89896120d9565b6040516118909190613195565b60006040518083038160008787f1925050503d80600081146118ce576040519150601f19603f3d011682016040523d82523d6000602084013e6118d3565b606091505b5090925090506118e4603f876131b1565b5a116118f2576118f26131d3565b61193282826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c4544000000000000815250612109565b9998505050505050505050565b6109d28161194b61170d565b612142565b61195a8282610efa565b610a6457600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff1916600117905561199361170d565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6119df61170d565b6001600160a01b03166119fa6097546001600160a01b031690565b6001600160a01b031614610d905760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a51565b6109d26000805160206133f583398151915282611592565b611a728282610efa565b15610a6457600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff19169055611aa961170d565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101829052600090611b2c90606001610b09565b546001600160a01b0316905080611b595760405163124bad6360e31b815260048101839052602401610a51565b30600080516020613415833981519152546040516331a9108f60e11b8152600481018590526001600160a01b0390911690636352211e90602401602060405180830381865afa158015611bb0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bd491906131e9565b6001600160a01b031614611bfe576040516303b673fd60e21b815260048101839052602401610a51565b919050565b303303611c13576109d2816121a6565b6109d281612073565b6109d26000805160206133f58339815191528261204b565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015611ccd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cf191906130de565b90506000611d9f866060015180519060200120868860200151604051602001611d3f9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b9050818660200151148015610ef057508551610ef0906001600160a01b031682866121d0565b600054610100900460ff16611dec5760405162461bcd60e51b8152600401610a5190613206565b6001603355565b600054610100900460ff16610d905760405162461bcd60e51b8152600401610a5190613206565b600054610100900460ff16611e415760405162461bcd60e51b8152600401610a5190613206565b610d90611e4c61170d565b611c34565b600054610100900460ff16611e785760405162461bcd60e51b8152600401610a5190613206565b610d906000611e8561170d565b61204b565b6000805160206133d5833981519152546040516383e7f6ff60e01b81526001600160a01b039091169060009082906383e7f6ff90611ed0908f908f908e90600401612f58565b6040805180830381865afa158015611eec573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f109190612f7c565b60208101518151919250611f2391612fca565b471015611f435760405163050205f960e01b815260040160405180910390fd5b816001600160a01b03166374694a2b82602001518360000151611f669190612fca565b8e8e8e8e8e8e8e8e8e8e6040518c63ffffffff1660e01b8152600401611f959a99989796959493929190613251565b6000604051808303818588803b158015611fae57600080fd5b505af1158015611fc2573d6000803e3d6000fd5b5050505050505050505050505050505050565b611fdd6119d7565b6001600160a01b0381166120425760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610a51565b6109d281611c34565b610a648282611950565b600030330361206b575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290526000906060016040516020818303038152906040528051906020012090506120c88190565b546120d4906001612fca565b905550565b60608285856040516020016120f0939291906132c3565b6040516020818303038152906040529050949350505050565b60608315612118575081610990565b8251156121285782518084602001fd5b8160405162461bcd60e51b8152600401610a5191906127a4565b61214c8282610efa565b610a6457612164816001600160a01b03166014612312565b61216f836020612312565b604051602001612180929190613302565b60408051601f198184030181529082905262461bcd60e51b8252610a51916004016127a4565b6121ae6124ad565b81146109d257604051635637b6af60e11b815260048101829052602401610a51565b60008060006121df85856124c0565b909250905060008160048111156121f8576121f8613377565b1480156122165750856001600160a01b0316826001600160a01b0316145b1561222657600192505050610990565b600080876001600160a01b0316631626ba7e60e01b888860405160240161224e92919061338d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161228c9190613195565b600060405180830381855afa9150503d80600081146122c7576040519150601f19603f3d011682016040523d82523d6000602084013e6122cc565b606091505b50915091508180156122df575080516020145b801561230657508051630b135d3f60e11b9061230490830160209081019084016130de565b145b98975050505050505050565b606060006123218360026133a6565b61232c906002612fca565b6001600160401b0381111561234357612343612849565b6040519080825280601f01601f19166020018201604052801561236d576020820181803683370190505b509050600360fc1b8160008151811061238857612388612eb5565b60200101906001600160f81b031916908160001a905350600f60fb1b816001815181106123b7576123b7612eb5565b60200101906001600160f81b031916908160001a90535060006123db8460026133a6565b6123e6906001612fca565b90505b600181111561245e576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061241a5761241a612eb5565b1a60f81b82828151811061243057612430612eb5565b60200101906001600160f81b031916908160001a90535060049490941c93612457816133bd565b90506123e9565b5083156109905760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610a51565b60003033036120705750601f1936013590565b60008082516041036124f65760208301516040840151606085015160001a6124ea87828585612505565b945094505050506124fe565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561253c57506000905060036125e9565b8460ff16601b1415801561255457508460ff16601c14155b1561256557506000905060046125e9565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156125b9573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166125e2576000600192509250506125e9565b9150600090505b94509492505050565b60006020828403121561260457600080fd5b81356001600160e01b03198116811461099057600080fd5b6001600160a01b03811681146109d257600080fd5b60008083601f84011261264357600080fd5b5081356001600160401b0381111561265a57600080fd5b6020830191508360208285010111156124fe57600080fd5b60008060008060006080868803121561268a57600080fd5b85356126958161261c565b945060208601356126a58161261c565b93506040860135925060608601356001600160401b038111156126c757600080fd5b6126d388828901612631565b969995985093965092949392505050565b6000806000604084860312156126f957600080fd5b83356001600160401b038082111561271057600080fd5b908501906080828803121561272457600080fd5b9093506020850135908082111561273a57600080fd5b5061274786828701612631565b9497909650939450505050565b60005b8381101561276f578181015183820152602001612757565b50506000910152565b60008151808452612790816020860160208601612754565b601f01601f19169290920160200192915050565b6020815260006109906020830184612778565b6000602082840312156127c957600080fd5b5035919050565b600080604083850312156127e357600080fd5b8235915060208301356127f58161261c565b809150509250929050565b60006020828403121561281257600080fd5b81356109908161261c565b6000806040838503121561283057600080fd5b823561283b8161261c565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561288757612887612849565b604052919050565b600060208083850312156128a257600080fd5b82356001600160401b03808211156128b957600080fd5b818501915085601f8301126128cd57600080fd5b8135818111156128df576128df612849565b8060051b91506128f084830161285f565b818152918301840191848101908884111561290a57600080fd5b938501935b8385101561230657843592506129248361261c565b828252938501939085019061290f565b60008060006040848603121561294957600080fd5b83356001600160401b0381111561295f57600080fd5b61296b86828701612631565b909790965060209590950135949350505050565b60006001600160401b0383111561299857612998612849565b6129ab601f8401601f191660200161285f565b90508281528383830111156129bf57600080fd5b828260208301376000602084830101529392505050565b600082601f8301126129e757600080fd5b6109908383356020850161297f565b60008083601f840112612a0857600080fd5b5081356001600160401b03811115612a1f57600080fd5b6020830191508360208260051b85010111156124fe57600080fd5b80358015158114611bfe57600080fd5b803561ffff81168114611bfe57600080fd5b6000806000806000806000806000806101208b8d031215612a7c57600080fd5b8a356001600160401b0380821115612a9357600080fd5b612a9f8e838f016129d6565b9b5060208d01359150612ab18261261c565b90995060408c0135985060608c0135975060808c013590612ad18261261c565b90965060a08c01359080821115612ae757600080fd5b50612af48d828e016129f6565b9096509450612b07905060c08c01612a3a565b9250612b1560e08c01612a4a565b9150612b246101008c01612a3a565b90509295989b9194979a5092959850565b60008060008060008060008060a0898b031215612b5157600080fd5b8835612b5c8161261c565b97506020890135612b6c8161261c565b965060408901356001600160401b0380821115612b8857600080fd5b612b948c838d016129f6565b909850965060608b0135915080821115612bad57600080fd5b612bb98c838d016129f6565b909650945060808b0135915080821115612bd257600080fd5b50612bdf8b828c01612631565b999c989b5096995094979396929594505050565b600080600060608486031215612c0857600080fd5b8335612c138161261c565b92506020840135612c238161261c565b91506040840135612c338161261c565b809150509250925092565b60008060008060008060008060008060006101208c8e031215612c6057600080fd5b6001600160401b03808d351115612c7657600080fd5b612c838e8e358f01612631565b909c509a50612c9560208e013561261c565b60208d0135995060408d0135985060608d01359750612cb760808e013561261c565b60808d013596508060a08e01351115612ccf57600080fd5b50612ce08d60a08e01358e016129f6565b9095509350612cf160c08d01612a3a565b9250612cff60e08d01612a4a565b9150612d0e6101008d01612a3a565b90509295989b509295989b9093969950565b60008060008060008060a08789031215612d3957600080fd5b8635612d448161261c565b95506020870135612d548161261c565b9450604087013593506060870135925060808701356001600160401b03811115612d7d57600080fd5b612d8989828a01612631565b979a9699509497509295939492505050565b600080600060608486031215612db057600080fd5b8335612dbb8161261c565b92506020840135612dcb8161261c565b915060408401356001600160401b03811115612de657600080fd5b612df2868287016129d6565b9150509250925092565b608081526000612e0f6080830187612778565b6001600160a01b03958616602084015261ffff949094166040830152509216606090920191909152919050565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090610ef090830184612778565b6000808335601e19843603018112612e8657600080fd5b8301803591506001600160401b03821115612ea057600080fd5b6020019150368190038213156124fe57600080fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201612ef357612ef3612ecb565b5060010190565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b604081526000612f6c604083018587612f2f565b9050826020830152949350505050565b600060408284031215612f8e57600080fd5b604051604081018181106001600160401b0382111715612fb057612fb0612849565b604052825181526020928301519281019290925250919050565b8082018082111561077357610773612ecb565b81835260006020808501808196508560051b810191508460005b878110156130615782840389528135601e1988360301811261301857600080fd5b870185810190356001600160401b0381111561303357600080fd5b80360382131561304257600080fd5b61304d868284612f2f565b9a87019a9550505090840190600101612ff7565b5091979650505050505050565b60006101008083526130828184018d612778565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a085015290506130bc818789612fdd565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b6000602082840312156130f057600080fd5b5051919050565b60006080823603121561310957600080fd5b604051608081016001600160401b03828210818311171561312c5761312c612849565b816040528435915061313d8261261c565b8183526020850135602084015260408501356040840152606085013591508082111561316857600080fd5b50830136601f82011261317a57600080fd5b6131893682356020840161297f565b60608301525092915050565b600082516131a7818460208701612754565b9190910192915050565b6000826131ce57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b6000602082840312156131fb57600080fd5b81516109908161261c565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60006101008083526132668184018d8f612f2f565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a085015290506132a0818789612fdd565b94151560c0840152505061ffff9190911660e09091015298975050505050505050565b600084516132d5818460208901612754565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081526000835161333a816017850160208801612754565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835161336b816028840160208801612754565b01602801949350505050565b634e487b7160e01b600052602160045260246000fd5b8281526040602082015260006110476040830184612778565b808202811582820484141761077357610773612ecb565b6000816133cc576133cc612ecb565b50600019019056fe412386de53449251cbf7ce1f4c6a038bf9c0746e62d331b08ef0c3fa7d0ab6729f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a660793a5062d506d35cc8f1beda67ee5028c16bfcd9c923d5bfc439c04bd929b1a164736f6c6343000811000a","storage":{"0x0":"0xff"}},"0xc58206842e4030a3b2cabc78780ae7635173c533":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106102325760003560e01c80637c69eae211610130578063b5466669116100b8578063d284d97a1161007c578063d284d97a14610d4e578063d8d3cc6e14610dbc578063e67ca8a314610e3f578063e985e9c514610e5c578063ebf0c71714610e8a57610232565b8063b5466669146109ce578063b88d4fde14610a51578063c29b52f914610b15578063c87b56dd14610c5e578063ce9fb82b14610c7b57610232565b8063a22cb465116100ff578063a22cb4651461090b578063a7fc7a0714610939578063ab3b87fe1461095f578063b3f9e4cb1461098b578063b429afeb146109a857610232565b80637c69eae21461076457806395d89b41146107e75780639d743989146107ef5780639e5be9a51461087d57610232565b806342842e0e116101be5780635cbe1112116101825780635cbe11121461061d5780636352211e1461069257806366ac3b68146106af57806368b62d32146106b757806370a082311461073e57610232565b806342842e0e146104ed57806342966c6814610523578063430c208114610540578063538361a71461056c57806357aac5741461058f57610232565b8063081812fc11610205578063081812fc146103fa578063095ea7b3146104335780632392c1891461045f57806323b872dd1461048b5780632525d06a146104c157610232565b806301ffc9a71461023757806302759c37146102725780630467e014146102aa57806306fdde031461037d575b600080fd5b61025e6004803603602081101561024d57600080fd5b50356001600160e01b031916610e92565b604080519115158252519081900360200190f35b6102a86004803603606081101561028857600080fd5b506001600160a01b03813581169160208101359091169060400135610eb1565b005b6102a8600480360360808110156102c057600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156102ef57600080fd5b82018360208201111561030157600080fd5b803590602001918460018302840111600160201b8311171561032257600080fd5b919390929091602081019035600160201b81111561033f57600080fd5b82018360208201111561035157600080fd5b803590602001918460018302840111600160201b8311171561037257600080fd5b509092509050610ed3565b610385610f62565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103bf5781810151838201526020016103a7565b50505050905090810190601f1680156103ec5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6104176004803603602081101561041057600080fd5b5035610f84565b604080516001600160a01b039092168252519081900360200190f35b6102a86004803603604081101561044957600080fd5b506001600160a01b038135169060200135610fe6565b6102a86004803603604081101561047557600080fd5b506001600160a01b0381351690602001356110f7565b6102a8600480360360608110156104a157600080fd5b506001600160a01b03813581169160208101359091169060400135611115565b6102a8600480360360408110156104d757600080fd5b506001600160a01b03813516906020013561115a565b6102a86004803603606081101561050357600080fd5b506001600160a01b0381358116916020810135909116906040013561117a565b6102a86004803603602081101561053957600080fd5b5035611195565b61025e6004803603604081101561055657600080fd5b506001600160a01b0381351690602001356111e6565b6102a86004803603604081101561058257600080fd5b50803590602001356111f9565b6102a8600480360360808110156105a557600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156105df57600080fd5b8201836020820111156105f157600080fd5b803590602001918460018302840111600160201b8311171561061257600080fd5b50909250905061124f565b6102a86004803603604081101561063357600080fd5b81359190810190604081016020820135600160201b81111561065457600080fd5b82018360208201111561066657600080fd5b803590602001918460018302840111600160201b8311171561068757600080fd5b5090925090506112be565b610417600480360360208110156106a857600080fd5b5035611320565b6102a861137a565b61072c600480360360408110156106cd57600080fd5b81359190810190604081016020820135600160201b8111156106ee57600080fd5b82018360208201111561070057600080fd5b803590602001918460018302840111600160201b8311171561072157600080fd5b509092509050611385565b60408051918252519081900360200190f35b61072c6004803603602081101561075457600080fd5b50356001600160a01b03166113cf565b6102a86004803603606081101561077a57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156107a957600080fd5b8201836020820111156107bb57600080fd5b803590602001918460018302840111600160201b831117156107dc57600080fd5b509092509050611437565b61038561149a565b6102a86004803603608081101561080557600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561083f57600080fd5b82018360208201111561085157600080fd5b803590602001918460018302840111600160201b8311171561087257600080fd5b5090925090506114b6565b6102a86004803603608081101561089357600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156108cd57600080fd5b8201836020820111156108df57600080fd5b803590602001918460018302840111600160201b8311171561090057600080fd5b509092509050611506565b6102a86004803603604081101561092157600080fd5b506001600160a01b0381351690602001351515611564565b6102a86004803603602081101561094f57600080fd5b50356001600160a01b0316611630565b6102a86004803603604081101561097557600080fd5b506001600160a01b03813516906020013561164b565b610417600480360360208110156109a157600080fd5b5035611672565b61025e600480360360208110156109be57600080fd5b50356001600160a01b0316611694565b6102a8600480360360608110156109e457600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610a1357600080fd5b820183602082011115610a2557600080fd5b803590602001918460018302840111600160201b83111715610a4657600080fd5b5090925090506116a7565b6102a860048036036080811015610a6757600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b811115610aa157600080fd5b820183602082011115610ab357600080fd5b803590602001918460018302840111600160201b83111715610ad457600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506116fa945050505050565b6102a8600480360360a0811015610b2b57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b811115610b6557600080fd5b820183602082011115610b7757600080fd5b803590602001918460018302840111600160201b83111715610b9857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b811115610bea57600080fd5b820183602082011115610bfc57600080fd5b803590602001918460018302840111600160201b83111715610c1d57600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061174c945050505050565b61038560048036036020811015610c7457600080fd5b5035611797565b6102a860048036036080811015610c9157600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610cc057600080fd5b820183602082011115610cd257600080fd5b803590602001918460018302840111600160201b83111715610cf357600080fd5b919390929091602081019035600160201b811115610d1057600080fd5b820183602082011115610d2257600080fd5b803590602001918460018302840111600160201b83111715610d4357600080fd5b509092509050611892565b6102a860048036036020811015610d6457600080fd5b810190602081018135600160201b811115610d7e57600080fd5b820183602082011115610d9057600080fd5b803590602001918460018302840111600160201b83111715610db157600080fd5b50909250905061191b565b6102a860048036036060811015610dd257600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610e0157600080fd5b820183602082011115610e1357600080fd5b803590602001918460018302840111600160201b83111715610e3457600080fd5b50909250905061199e565b6102a860048036036020811015610e5557600080fd5b50356119f3565b61025e60048036036040811015610e7257600080fd5b506001600160a01b0381358116916020013516611a05565b61072c611a33565b6001600160e01b03191660009081526020819052604090205460ff1690565b610eba33611694565b610ec357600080fd5b610ece838383611a57565b505050565b610edc33611694565b610ee557600080fd5b610f5a868686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8a018190048102820181019092528881529250889150879081908401838280828437600092019190915250611a9f92505050565b505050505050565b6040805180820190915260078152662e63727970746f60c81b60208201525b90565b6000610f8f82611ac9565b610fca5760405162461bcd60e51b815260040180806020018281038252602c815260200180612848602c913960400191505060405180910390fd5b506000908152600360205260409020546001600160a01b031690565b6000610ff182611320565b9050806001600160a01b0316836001600160a01b031614156110445760405162461bcd60e51b81526004018080602001828103825260218152602001806128bf6021913960400191505060405180910390fd5b336001600160a01b038216148061106057506110608133611a05565b61109b5760405162461bcd60e51b815260040180806020018281038252603881526020018061279c6038913960400191505060405180910390fd5b60008281526003602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b806111023382611ae6565b61110b57600080fd5b610ece8383611b82565b61111f3382611ae6565b610ec35760405162461bcd60e51b81526004018080602001828103825260318152602001806128e06031913960400191505060405180910390fd5b61116333611694565b61116c57600080fd5b6111768282611b82565b5050565b610ece838383604051806020016040528060008152506116fa565b61119f3382611ae6565b6111da5760405162461bcd60e51b81526004018080602001828103825260308152602001806129366030913960400191505060405180910390fd5b6111e381611bf8565b50565b60006111f28383611ae6565b9392505050565b6000828152600860205260409020546001600160a01b0316331461121c57600080fd5b6040518290829033907ff10fc780c78f994a214c79a2ae8d8b7bfe7cc3f0f935a8f05a29525e71d7f12790600090a45050565b61125833611694565b61126157600080fd5b61126c858585611a57565b6112ae85858585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611c7992505050565b6112b757600080fd5b5050505050565b826112c93382611ae6565b6112d257600080fd5b61131a6113158585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b611bf8565b50505050565b6000818152600260205260408120546001600160a01b0316806113745760405162461bcd60e51b81526004018080602001828103825260298152602001806127fe6029913960400191505060405180910390fd5b92915050565b61138333611e64565b565b60006113c78484848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b949350505050565b60006001600160a01b0382166114165760405162461bcd60e51b815260040180806020018281038252602a8152602001806127d4602a913960400191505060405180910390fd5b6001600160a01b038216600090815260046020526040902061137490611e75565b826114423382611ae6565b61144b57600080fd5b6112b7858585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250611a9f915050565b604080518082019091526002815261155160f21b602082015290565b6112b785858585858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201829052506040805160208101909152908152925061174c915050565b826115113382611ae6565b61151a57600080fd5b610f5a868661155f8787878080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b611a57565b6001600160a01b0382163314156115c2576040805162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604482015290519081900360640190fd5b3360008181526005602090815260408083206001600160a01b03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b61163933611694565b61164257600080fd5b6111e381611e79565b806116563382611ae6565b61165f57600080fd5b610ece61166b83611320565b8484611e8a565b6000818152600860205260408120546001600160a01b03168061137457600080fd5b600061137460018363ffffffff611fce16565b6116b033611694565b6116b957600080fd5b61131a848484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061203592505050565b611705848484611115565b61171184848484611c79565b61131a5760405162461bcd60e51b815260040180806020018281038252603281526020018061271a6032913960400191505060405180910390fd5b826117573382611ae6565b61176057600080fd5b600061176c8585611dac565b9050611779878783611a57565b61178587878386611c79565b61178e57600080fd5b50505050505050565b60606117a282611ac9565b6117ab57600080fd5b600760066000848152602001908152602001600020604051602001808380546001816001161561010002031660029004801561181e5780601f106117fc57610100808354040283529182019161181e565b820191906000526020600020905b81548152906001019060200180831161180a575b5050828054600181600116156101000203166002900480156118775780601f10611855576101008083540402835291820191611877565b820191906000526020600020905b815481529060010190602001808311611863575b505060408051601f1981840301815291905295945050505050565b8461189d3382611ae6565b6118a657600080fd5b61178e878787878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b018190048102820181019092528981529250899150889081908401838280828437600092019190915250611a9f92505050565b61192433611694565b61192d57600080fd5b611939600783836125cf565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b828260405180806020018281038252848482818152602001925080828437600083820152604051601f909101601f19169092018290039550909350505050a15050565b826119a93382611ae6565b6119b257600080fd5b6112b7858585858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061203592505050565b6119fc33611694565b6111da57600080fd5b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b7f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f90565b611a62838383611e8a565b6000818152600860205260409020546001600160a01b031615610ece57600090815260086020526040902080546001600160a01b03191690555050565b611aaa848484612035565b611ac0600085611aba8686611dac565b84611c79565b61131a57600080fd5b6000908152600260205260409020546001600160a01b0316151590565b6000611af182611ac9565b611b2c5760405162461bcd60e51b815260040180806020018281038252602c815260200180612770602c913960400191505060405180910390fd5b6000611b3783611320565b9050806001600160a01b0316846001600160a01b03161480611b725750836001600160a01b0316611b6784610f84565b6001600160a01b0316145b806113c757506113c78185611a05565b611b8b81611ac9565b611b9457600080fd5b6040516001600160a01b0383169082907fb1b34e6d89e1c584527d447f4b29ffad55635a37edeeb564939a6483401b31a590600090a3600090815260086020526040902080546001600160a01b0319166001600160a01b0392909216919091179055565b611c018161220f565b6000818152600860205260409020546001600160a01b031615611c3b57600081815260086020526040902080546001600160a01b03191690555b60008181526006602052604090205460026000196101006001841615020190911604156111e35760008181526006602052604081206111e39161264d565b6000611c8d846001600160a01b0316612221565b611c99575060016113c7565b604051630a85bd0160e11b815233600482018181526001600160a01b03888116602485015260448401879052608060648501908152865160848601528651600095928a169463150b7a029490938c938b938b939260a4019060208501908083838e5b83811015611d13578181015183820152602001611cfb565b50505050905090810190601f168015611d405780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015611d6257600080fd5b505af1158015611d76573d6000803e3d6000fd5b505050506040513d6020811015611d8c57600080fd5b50516001600160e01b031916630a85bd0160e11b14915050949350505050565b6000815160001415611dbd57600080fd5b82826040516020018082805190602001908083835b60208310611df15780518252601f199092019160209182019101611dd2565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040528051906020012060405160200180838152602001828152602001925050506040516020818303038152906040528051906020012060001c905092915050565b6111e360018263ffffffff61222716565b5490565b6111e360018263ffffffff61228e16565b826001600160a01b0316611e9d82611320565b6001600160a01b031614611ee25760405162461bcd60e51b81526004018080602001828103825260298152602001806128966029913960400191505060405180910390fd5b6001600160a01b038216611f275760405162461bcd60e51b815260040180806020018281038252602481526020018061274c6024913960400191505060405180910390fd5b611f308161230f565b6001600160a01b0383166000908152600460205260409020611f519061234a565b6001600160a01b0382166000908152600460205260409020611f7290612361565b60008181526002602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60006001600160a01b0382166120155760405162461bcd60e51b81526004018080602001828103825260228152602001806128746022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b60006120418383611dac565b905061204d848261236a565b815161205857600080fd5b61206181611ac9565b61206a57600080fd5b606082600660008681526020019081526020016000206040516020018083805190602001908083835b602083106120b25780518252601f199092019160209182019101612093565b6001836020036101000a03801982511681845116808217855250505050505090500180601760f91b815250600101828054600181600116156101000203166002900480156121375780601f10612115576101008083540402835291820191612137565b820191906000526020600020905b815481529060010190602001808311612123575b505060408051601f19818403018152918152600087815260066020908152919020825192965061216d9550935085019150612691565b50817fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952826040518080602001828103825283818151815260200191508051906020019080838360005b838110156121ce5781810151838201526020016121b6565b50505050905090810190601f1680156121fb5780820380516001836020036101000a031916815260200191505b509250505060405180910390a25050505050565b6111e361221b82611320565b8261249b565b3b151590565b6122318282611fce565b61226c5760405162461bcd60e51b81526004018080602001828103825260218152602001806128276021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff19169055565b6122988282611fce565b156122ea576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b6000818152600360205260409020546001600160a01b0316156111e357600090815260036020526040902080546001600160a01b0319169055565b805461235d90600163ffffffff61257216565b9055565b80546001019055565b6001600160a01b0382166123c5576040805162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f2061646472657373604482015290519081900360640190fd5b6123ce81611ac9565b15612420576040805162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000604482015290519081900360640190fd5b600081815260026020908152604080832080546001600160a01b0319166001600160a01b03871690811790915583526004909152902061245f90612361565b60405181906001600160a01b038416906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b816001600160a01b03166124ae82611320565b6001600160a01b0316146124f35760405162461bcd60e51b81526004018080602001828103825260258152602001806129116025913960400191505060405180910390fd5b6124fc8161230f565b6001600160a01b038216600090815260046020526040902061251d9061234a565b60008181526002602052604080822080546001600160a01b0319169055518291906001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6000828211156125c9576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106126105782800160ff1982351617855561263d565b8280016001018555821561263d579182015b8281111561263d578235825591602001919060010190612622565b506126499291506126ff565b5090565b50805460018160011615610100020316600290046000825580601f1061267357506111e3565b601f0160209004906000526020600020908101906111e391906126ff565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106126d257805160ff191683800117855561263d565b8280016001018555821561263d579182015b8281111561263d5782518255916020019190600101906126e4565b610f8191905b80821115612649576000815560010161270556fe4552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c654552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e526f6c65733a206163636f756e7420697320746865207a65726f20616464726573734552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f7665644552433732313a206275726e206f6620746f6b656e2074686174206973206e6f74206f776e4552433732314275726e61626c653a2063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564a265627a7a72315820fb6a1b26cc352dbb05e6627fd530bbb44114ac3a349f30d1f071136c656d20dc64736f6c634300050c0032","storage":{"0x7":"0x68747470733a2f2f6578616d706c652e636f6d2f000000000000000000000028","0xbdf39e9e65b2355b1b0b06df799c09159f0ab90f06a9bb2153f5de7d9b0ea81":"0x1","0x1a306d3e9bf29128dee78d8d16c9f378a11bbdf917a9caf986fc6e60846e37e7":"0x63727970746f000000000000000000000000000000000000000000000000000c","0x42c63635470f1fb1d6d4b6441c413cb435b1ebb6fedd1896dd5e25d1399147dd":"0x1","0x605d7a0bb2b20c4004d356eb969ff104dcca62360aa356247072f5e0df6472e3":"0xdead","0x67be87c3ff9960ca1e9cfac5cab2ff4747269cf9ed20c9b7306235ac35a491c5":"0x1","0x70f464f95f9ab7aba03264fd4cac1711d774d3703ce74217180264d4efc2105f":"0x1","0x76a72f26a108e6f3f687141f5f42d21d65857c03cb1b01aa1284f9a9ccd085da":"0x1","0x9562381dfbc2d8b8b66e765249f330164b73e329e5f01670660643571d1974df":"0x1","0x9f23d2403fb64167582d316b1bc5b35a6ed48524341ab24947c71df77304b29e":"0x1","0xf7815fccbf112960a73756e185887fedcb9fc64ca0a16cc5923b7960ed780800":"0x1"}},"0xc965345edac823d56812cd20a10316233916a605":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101c6575f3560e01c806395d89b41116100fe578063c87b56dd1161009e578063e985e9c51161006e578063e985e9c5146103d4578063f2fde38b1461040f578063f6a74ed714610422578063fca247ac14610435575f80fd5b8063c87b56dd14610377578063d6e4fa861461038a578063da8c229e146103a9578063ddf7fcb0146103cb575f80fd5b8063a7fc7a07116100d9578063a7fc7a0714610334578063b88d4fde14610347578063c1a287e21461035a578063c475abff14610364575f80fd5b806395d89b411461030657806396e494e81461030e578063a22cb46514610321575f80fd5b80633f15457f116101695780636352211e116101445780636352211e146102c757806370a08231146102da578063715018a6146102ed5780638da5cb5b146102f5575f80fd5b80633f15457f1461028e57806342842e0e146102a15780634e543b26146102b4575f80fd5b8063095ea7b3116101a4578063095ea7b3146102325780630e297b451461024757806323b872dd1461026857806328ed4f6c1461027b575f80fd5b806301ffc9a7146101ca57806306fdde03146101f2578063081812fc14610207575b5f80fd5b6101dd6101d83660046117dd565b610448565b60405190151581526020015b60405180910390f35b6101fa610499565b6040516101e99190611845565b61021a610215366004611857565b610528565b6040516001600160a01b0390911681526020016101e9565b610245610240366004611882565b61054d565b005b61025a6102553660046118ac565b610666565b6040519081526020016101e9565b6102456102763660046118e1565b61067b565b61024561028936600461190e565b6106ac565b60085461021a906001600160a01b031681565b6102456102af3660046118e1565b6107be565b6102456102c236600461193c565b6107d8565b61021a6102d5366004611857565b610848565b61025a6102e836600461193c565b610869565b6102456108ed565b6006546001600160a01b031661021a565b6101fa610900565b6101dd61031c366004611857565b61090f565b61024561032f366004611957565b610934565b61024561034236600461193c565b610943565b61024561035536600461199b565b610996565b61025a6276a70081565b61025a610372366004611a74565b6109ce565b6101fa610385366004611857565b610b52565b61025a610398366004611857565b5f9081526007602052604090205490565b6101dd6103b736600461193c565b600a6020525f908152604090205460ff1681565b61025a60095481565b6101dd6103e2366004611a94565b6001600160a01b039182165f90815260056020908152604080832093909416825291909152205460ff1690565b61024561041d36600461193c565b610bc2565b61024561043036600461193c565b610c3b565b61025a6104433660046118ac565b610c8b565b5f6001600160e01b031982166301ffc9a760e01b148061047857506001600160e01b031982166380ac58cd60e01b145b8061049357506001600160e01b03198216630a3b53db60e21b145b92915050565b60605f80546104a790611ac0565b80601f01602080910402602001604051908101604052809291908181526020018280546104d390611ac0565b801561051e5780601f106104f55761010080835404028352916020019161051e565b820191905f5260205f20905b81548152906001019060200180831161050157829003601f168201915b5050505050905090565b5f61053282610c99565b505f908152600460205260409020546001600160a01b031690565b5f61055782610cf7565b9050806001600160a01b0316836001600160a01b0316036105c95760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084015b60405180910390fd5b336001600160a01b03821614806105e557506105e581336103e2565b6106575760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016105c0565b6106618383610d56565b505050565b5f6106738484845f610dc3565b949350505050565b6106853382610fc7565b6106a15760405162461bcd60e51b81526004016105c090611af8565b610661838383611040565b6008546009546040516302571be360e01b8152600481019190915230916001600160a01b0316906302571be390602401602060405180830381865afa1580156106f7573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061071b9190611b45565b6001600160a01b03161461072d575f80fd5b6107373383610fc7565b61073f575f80fd5b6008546009546040516306ab592360e01b81526004810191909152602481018490526001600160a01b038381166044830152909116906306ab5923906064016020604051808303815f875af115801561079a573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106619190611b60565b61066183838360405180602001604052805f815250610996565b6107e06111a2565b600854600954604051630c4b7b8560e11b815260048101919091526001600160a01b03838116602483015290911690631896f70a906044015f604051808303815f87803b15801561082f575f80fd5b505af1158015610841573d5f803e3d5ffd5b5050505050565b5f818152600760205260408120544210610860575f80fd5b61049382610cf7565b5f6001600160a01b0382166108d25760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b60648201526084016105c0565b506001600160a01b03165f9081526003602052604090205490565b6108f56111a2565b6108fe5f6111fc565b565b6060600180546104a790611ac0565b5f81815260076020526040812054429061092d906276a70090611b77565b1092915050565b61093f33838361124d565b5050565b61094b6111a2565b6001600160a01b0381165f818152600a6020526040808220805460ff19166001179055517f0a8bb31534c0ed46f380cb867bd5c803a189ced9a764e30b3a4991a9901d74749190a250565b6109a03383610fc7565b6109bc5760405162461bcd60e51b81526004016105c090611af8565b6109c88484848461131a565b50505050565b6008546009546040516302571be360e01b815260048101919091525f9130916001600160a01b03909116906302571be390602401602060405180830381865afa158015610a1d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a419190611b45565b6001600160a01b031614610a53575f80fd5b335f908152600a602052604090205460ff16610a6d575f80fd5b5f838152600760205260409020544290610a8b906276a70090611b77565b1015610a95575f80fd5b610aa26276a70083611b77565b5f848152600760205260409020546276a70090610ac0908590611b77565b610aca9190611b77565b11610ad3575f80fd5b5f8381526007602052604081208054849290610af0908490611b77565b90915550505f838152600760205260409081902054905184917f9b87a00e30f1ac65d898f070f8a3488fe60517182d0a2098e1b4b93a54aa9bd691610b3791815260200190565b60405180910390a250505f9081526007602052604090205490565b6060610b5d82610c99565b5f610b7260408051602081019091525f815290565b90505f815111610b905760405180602001604052805f815250610bbb565b80610b9a8461134d565b604051602001610bab929190611b96565b6040516020818303038152906040525b9392505050565b610bca6111a2565b6001600160a01b038116610c2f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016105c0565b610c38816111fc565b50565b610c436111a2565b6001600160a01b0381165f818152600a6020526040808220805460ff19169055517f33d83959be2573f5453b12eb9d43b3499bc57d96bd2f067ba44803c859e811139190a250565b5f6106738484846001610dc3565b5f818152600260205260409020546001600160a01b0316610c385760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105c0565b5f818152600260205260408120546001600160a01b0316806104935760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105c0565b5f81815260046020526040902080546001600160a01b0319166001600160a01b0384169081179091558190610d8a82610cf7565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6008546009546040516302571be360e01b815260048101919091525f9130916001600160a01b03909116906302571be390602401602060405180830381865afa158015610e12573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e369190611b45565b6001600160a01b031614610e48575f80fd5b335f908152600a602052604090205460ff16610e62575f80fd5b610e6b8561090f565b610e73575f80fd5b610e806276a70042611b77565b6276a700610e8e8542611b77565b610e989190611b77565b11610ea1575f80fd5b610eab8342611b77565b5f868152600760209081526040808320939093556002905220546001600160a01b031615610edc57610edc856113dd565b610ee6848661146f565b8115610f6d576008546009546040516306ab592360e01b81526004810191909152602481018790526001600160a01b038681166044830152909116906306ab5923906064016020604051808303815f875af1158015610f47573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f6b9190611b60565b505b6001600160a01b038416857fb3d987963d01b2f68493b4bdb130988f157ea43070d4ad840fee0466ed9370d9610fa38642611b77565b60405190815260200160405180910390a3610fbe8342611b77565b95945050505050565b5f80610fd283610848565b9050806001600160a01b0316846001600160a01b0316148061100d5750836001600160a01b031661100284610528565b6001600160a01b0316145b8061067357506001600160a01b038082165f9081526005602090815260408083209388168352929052205460ff16610673565b826001600160a01b031661105382610cf7565b6001600160a01b0316146110795760405162461bcd60e51b81526004016105c090611bc4565b6001600160a01b0382166110db5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b60648201526084016105c0565b826001600160a01b03166110ee82610cf7565b6001600160a01b0316146111145760405162461bcd60e51b81526004016105c090611bc4565b5f81815260046020908152604080832080546001600160a01b03199081169091556001600160a01b038781168086526003855283862080545f1901905590871680865283862080546001019055868652600290945282852080549092168417909155905184937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6006546001600160a01b031633146108fe5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016105c0565b600680546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b816001600160a01b0316836001600160a01b0316036112ae5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c65720000000000000060448201526064016105c0565b6001600160a01b038381165f81815260056020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b611325848484611040565b611331848484846115f7565b6109c85760405162461bcd60e51b81526004016105c090611c09565b60605f611359836116f1565b60010190505f8167ffffffffffffffff81111561137857611378611987565b6040519080825280601f01601f1916602001820160405280156113a2576020820181803683370190505b5090508181016020015b5f19016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a85049450846113ac57509392505050565b5f6113e782610cf7565b90506113f282610cf7565b5f83815260046020908152604080832080546001600160a01b03199081169091556001600160a01b0385168085526003845282852080545f190190558785526002909352818420805490911690555192935084927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6001600160a01b0382166114c55760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f206164647265737360448201526064016105c0565b5f818152600260205260409020546001600160a01b0316156115295760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105c0565b5f818152600260205260409020546001600160a01b03161561158d5760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105c0565b6001600160a01b0382165f81815260036020908152604080832080546001019055848352600290915280822080546001600160a01b0319168417905551839291907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b5f6001600160a01b0384163b156116e957604051630a85bd0160e11b81526001600160a01b0385169063150b7a029061163a903390899088908890600401611c5b565b6020604051808303815f875af1925050508015611674575060408051601f3d908101601f1916820190925261167191810190611c97565b60015b6116cf573d8080156116a1576040519150601f19603f3d011682016040523d82523d5f602084013e6116a6565b606091505b5080515f036116c75760405162461bcd60e51b81526004016105c090611c09565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610673565b506001610673565b5f8072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b831061172f5772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef8100000000831061175b576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc10000831061177957662386f26fc10000830492506010015b6305f5e1008310611791576305f5e100830492506008015b61271083106117a557612710830492506004015b606483106117b7576064830492506002015b600a83106104935760010192915050565b6001600160e01b031981168114610c38575f80fd5b5f602082840312156117ed575f80fd5b8135610bbb816117c8565b5f5b838110156118125781810151838201526020016117fa565b50505f910152565b5f81518084526118318160208601602086016117f8565b601f01601f19169290920160200192915050565b602081525f610bbb602083018461181a565b5f60208284031215611867575f80fd5b5035919050565b6001600160a01b0381168114610c38575f80fd5b5f8060408385031215611893575f80fd5b823561189e8161186e565b946020939093013593505050565b5f805f606084860312156118be575f80fd5b8335925060208401356118d08161186e565b929592945050506040919091013590565b5f805f606084860312156118f3575f80fd5b83356118fe8161186e565b925060208401356118d08161186e565b5f806040838503121561191f575f80fd5b8235915060208301356119318161186e565b809150509250929050565b5f6020828403121561194c575f80fd5b8135610bbb8161186e565b5f8060408385031215611968575f80fd5b82356119738161186e565b915060208301358015158114611931575f80fd5b634e487b7160e01b5f52604160045260245ffd5b5f805f80608085870312156119ae575f80fd5b84356119b98161186e565b935060208501356119c98161186e565b925060408501359150606085013567ffffffffffffffff808211156119ec575f80fd5b818701915087601f8301126119ff575f80fd5b813581811115611a1157611a11611987565b604051601f8201601f19908116603f01168101908382118183101715611a3957611a39611987565b816040528281528a6020848701011115611a51575f80fd5b826020860160208301375f60208483010152809550505050505092959194509250565b5f8060408385031215611a85575f80fd5b50508035926020909101359150565b5f8060408385031215611aa5575f80fd5b8235611ab08161186e565b915060208301356119318161186e565b600181811c90821680611ad457607f821691505b602082108103611af257634e487b7160e01b5f52602260045260245ffd5b50919050565b6020808252602d908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526c1c881bdc88185c1c1c9bdd9959609a1b606082015260800190565b5f60208284031215611b55575f80fd5b8151610bbb8161186e565b5f60208284031215611b70575f80fd5b5051919050565b8082018082111561049357634e487b7160e01b5f52601160045260245ffd5b5f8351611ba78184602088016117f8565b835190830190611bbb8183602088016117f8565b01949350505050565b60208082526025908201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060408201526437bbb732b960d91b606082015260800190565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6001600160a01b03858116825284166020820152604081018390526080606082018190525f90611c8d9083018461181a565b9695505050505050565b5f60208284031215611ca7575f80fd5b8151610bbb816117c856fea164736f6c6343000818000a","storage":{"0x0":"0x0","0x1":"0x0","0x6":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x8":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0x9":"0x93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae","0x9b8bc185dce56a7ea1b27d35e40ac15dcdf9144303dfd4d8880220078bf21a2c":"0x1","0xdb5e6a17df8534b92b0c8de590f14b4fb4b5eb2c62ef1bf7a05555e354797508":"0x1","0xe1a982900207b619cb6c39be8cb5e60da1370171412fb65b5efc25e2dce3c34c":"0x1"}},"0xce4bb7dc1eb9dce75743de6a4b48534fd427ef51":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xe85541865bbb62a05064ce5c9f41cc293a8ea996","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0xd178b720229c39de617846f84cf9c8d32a63a23d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610106575f3560e01c806371017a541161009e5780639e32d3641161006e5780639e32d3641461025a578063a424740014610281578063dd6b9e2214610294578063e1c4b65a146102a7578063e35a14e5146102ba575f80fd5b806371017a541461020e5780637b103999146102215780638f0dbd25146102345780639810b69514610247575f80fd5b8063485cc955116100d9578063485cc95514610191578063572b6c05146101a457806358884432146101d05780636ccbae5f146101fb575f80fd5b8063150b7a021461010a5780631694116d1461013b5780631bf7e13e146101505780631c351a9d14610170575b5f80fd5b61011d610118366004611434565b6102e2565b6040516001600160e01b031990911681526020015b60405180910390f35b61014e6101493660046114e3565b610372565b005b61016361015e366004611549565b61040d565b6040516101329190611601565b61018361017e366004611613565b6104d6565b604051908152602001610132565b61014e61019f366004611666565b6105c3565b6101c06101b236600461169d565b6001600160a01b0316301490565b6040519015158152602001610132565b6067546101e3906001600160a01b031681565b6040516001600160a01b039091168152602001610132565b6101836102093660046116b8565b6106f8565b6101e361021c3660046116cf565b610751565b6066546101e3906001600160a01b031681565b61014e6102423660046116ef565b610791565b6101e36102553660046116cf565b610806565b6101837fd81bbfcee722494b885e891546eeac23d0eedcd44038d7a2f6ef9ec2f9e0d23981565b6101c061028f366004611549565b61085f565b6101c06102a236600461172d565b6108a8565b61014e6102b5366004611771565b61091d565b6101e36102c83660046116b8565b5f908152606560205260409020546001600160a01b031690565b6066545f906001600160a01b03166102f8610a43565b6001600160a01b031614158061032257505f848152606560205260409020546001600160a01b0316155b156103605783610330610a43565b60405163634afa0d60e01b815260048101929092526001600160a01b031660248201526044015b60405180910390fd5b50630a85bd0160e11b95945050505050565b828261037e8282610751565b6001600160a01b031661038f610a43565b6001600160a01b0316146103c057604051632cd9b44d60e11b81526004810183905260248101829052604401610357565b5f6103cb8686610806565b90505f5b87811015610402576103fa8989838181106103ec576103ec6117b0565b905060200201358387610a51565b6001016103cf565b505050505050505050565b60605f5a905061041e85858561085f565b61043b57604051638baa579f60e01b815260040160405180910390fd5b6104cb61044b602087018761169d565b3060408801358461045f60608b018b6117c4565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f92019190915250610b8492505050565b9150505b9392505050565b6067545f906001600160a01b031663aa271e1a6104f1610a43565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015610533573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105579190611807565b1580610572575030610567610a43565b6001600160a01b0316145b156105a45761057f610a43565b60405163e2c8c9d560e01b81526001600160a01b039091166004820152602401610357565b5f6105b0858585610c60565b90506105bb81610e73565b949350505050565b5f54610100900460ff16158080156105e157505f54600160ff909116105b806105fa5750303b1580156105fa57505f5460ff166001145b61065d5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610357565b5f805460ff19166001179055801561067e575f805461ff0019166101001790555b606680546001600160a01b038086166001600160a01b031992831617909255606780549285169290911691909117905580156106f3575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f9061074a906060016040516020818303038152906040528051906020012090565b5492915050565b5f80838360405160200161076f929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209150505b92915050565b828261079d8282610751565b6001600160a01b03166107ae610a43565b6001600160a01b0316146107df57604051632cd9b44d60e11b81526004810183905260248101829052604401610357565b856107e981610e73565b6107fd876107f78889610806565b86610a51565b50505050505050565b5f8060026108148585610e8f565b6040516108219190611826565b602060405180830381855afa15801561083c573d5f803e3d5ffd5b5050506040513d601f19601f820116820180604052508101906105bb9190611841565b5f6105bb61086c856118c6565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250610f1492505050565b5f805b8281101561091257846001600160a01b03166108f38585848181106108d2576108d26117b0565b905060200201355f908152606560205260409020546001600160a01b031690565b6001600160a01b03161461090a575f9150506104cf565b6001016108ab565b506001949350505050565b6067546001600160a01b031663aa271e1a610936610a43565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015610978573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061099c9190611807565b15806109b75750306109ac610a43565b6001600160a01b0316145b156109c45761057f610a43565b5f5b818110156106f357610a3a8383838181106109e3576109e36117b0565b90506020028101906109f59190611983565b610a039060208101906117c4565b858585818110610a1557610a156117b0565b9050602002810190610a279190611983565b610a3590602081019061169d565b610c60565b506001016109c6565b5f610a4c611059565b905090565b5f838152606560205260409020546001600160a01b03838116911614610ab4575f83815260656020526040908190205490516326995d8360e11b8152600481018590526001600160a01b0391821660248201529083166044820152606401610357565b5f838152606560205260409081902080546001600160a01b03191690556066549051632142170760e11b81523060048201526001600160a01b03838116602483015260448201869052909116906342842e0e906064015f604051808303815f87803b158015610b21575f80fd5b505af1158015610b33573d5f803e3d5ffd5b50505050806001600160a01b0316610b49610a43565b6001600160a01b0316847f9a471856befea1cabcd7fc8a1c4d70ea07b8ed2ee205cc361f932433542ef3fe60405160405180910390a4505050565b6060610b8f85611076565b5f80876001600160a01b031686610ba88b8a89896110db565b604051610bb59190611826565b5f604051808303815f8787f1925050503d805f8114610bef576040519150601f19603f3d011682016040523d82523d5f602084013e610bf4565b606091505b509092509050610c05603f876119bf565b5a11610c1357610c136119d2565b610c5382826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061110b565b9998505050505050505050565b5f60605f7fd81bbfcee722494b885e891546eeac23d0eedcd44038d7a2f6ef9ec2f9e0d2398686604051602001610c989291906119e6565b60405160208183030381529060405280519060200120604051602001610cc8929190918252602082015260400190565b60408051808303601f19018152828252805160209091012060028084526060840190925292505f9190816020015b6060815260200190600190039081610cf657905050905086868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920182905250855186945090925015159050610d5657610d566117b0565b6020026020010181905250604051806040016040528060038152602001621e9a5b60ea1b81525081600181518110610d9057610d906117b0565b6020908102919091018101919091525f8381526065909152604080822080546001600160a01b0319166001600160a01b03898116919091179091556067549151635cd7e3b360e01b8152911691635cd7e3b391610df891309186918991829190600401611a4d565b5f604051808303815f87803b158015610e0f575f80fd5b505af1158015610e21573d5f803e3d5ffd5b50505050846001600160a01b0316827f08717469d38a4b02325ea6637978c7952f94d3d8fc7848994f618ddbf4d637f18989604051610e61929190611aab565b60405180910390a35095945050505050565b303303610e8657610e8381611144565b50565b610e8381611076565b60605f82610e9f60016020611ad9565b60ff1660208110610eb257610eb26117b0565b1a9050610ec0600282611af2565b60ff1615610ecf576003610ed2565b60025b84604051602001610efc92919060f89290921b6001600160f81b0319168252600182015260210190565b60405160208183030381529060405291505092915050565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015610f58573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f7c9190611841565b90505f611029866060015180519060200120868860200151604051602001610fc99392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561104f5750855161104f906001600160a01b0316828661116e565b9695505050505050565b5f30330361106e575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f906060016040516020818303038152906040528051906020012090506110ca8190565b546110d6906001611b13565b905550565b60608285856040516020016110f293929190611b26565b6040516020818303038152906040529050949350505050565b6060831561111a5750816104cf565b82511561112a5782518084602001fd5b8160405162461bcd60e51b81526004016103579190611601565b61114c6112a9565b8114610e8357604051635637b6af60e11b815260048101829052602401610357565b5f805f61117b85856112bb565b90925090505f81600481111561119357611193611b64565b1480156111b15750856001600160a01b0316826001600160a01b0316145b156111c1576001925050506104cf565b5f80876001600160a01b0316631626ba7e60e01b88886040516024016111e8929190611b78565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516112269190611826565b5f60405180830381855afa9150503d805f811461125e576040519150601f19603f3d011682016040523d82523d5f602084013e611263565b606091505b5091509150818015611276575080516020145b801561129d57508051630b135d3f60e11b9061129b9083016020908101908401611841565b145b98975050505050505050565b5f3033036110735750601f1936013590565b5f8082516041036112ef576020830151604084015160608501515f1a6112e3878285856112fd565b945094505050506112f6565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561133257505f905060036113d9565b8460ff16601b1415801561134a57508460ff16601c14155b1561135a57505f905060046113d9565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156113ab573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b0381166113d3575f600192509250506113d9565b91505f90505b94509492505050565b6001600160a01b0381168114610e83575f80fd5b5f8083601f840112611406575f80fd5b50813567ffffffffffffffff81111561141d575f80fd5b6020830191508360208285010111156112f6575f80fd5b5f805f805f60808688031215611448575f80fd5b8535611453816113e2565b94506020860135611463816113e2565b935060408601359250606086013567ffffffffffffffff811115611485575f80fd5b611491888289016113f6565b969995985093965092949392505050565b5f8083601f8401126114b2575f80fd5b50813567ffffffffffffffff8111156114c9575f80fd5b6020830191508360208260051b85010111156112f6575f80fd5b5f805f805f608086880312156114f7575f80fd5b853567ffffffffffffffff81111561150d575f80fd5b611519888289016114a2565b9096509450506020860135925060408601359150606086013561153b816113e2565b809150509295509295909350565b5f805f6040848603121561155b575f80fd5b833567ffffffffffffffff80821115611572575f80fd5b9085019060808288031215611585575f80fd5b9093506020850135908082111561159a575f80fd5b506115a7868287016113f6565b9497909650939450505050565b5f5b838110156115ce5781810151838201526020016115b6565b50505f910152565b5f81518084526115ed8160208601602086016115b4565b601f01601f19169290920160200192915050565b602081525f6104cf60208301846115d6565b5f805f60408486031215611625575f80fd5b833567ffffffffffffffff81111561163b575f80fd5b611647868287016113f6565b909450925050602084013561165b816113e2565b809150509250925092565b5f8060408385031215611677575f80fd5b8235611682816113e2565b91506020830135611692816113e2565b809150509250929050565b5f602082840312156116ad575f80fd5b81356104cf816113e2565b5f602082840312156116c8575f80fd5b5035919050565b5f80604083850312156116e0575f80fd5b50508035926020909101359150565b5f805f8060808587031215611702575f80fd5b8435935060208501359250604085013591506060850135611722816113e2565b939692955090935050565b5f805f6040848603121561173f575f80fd5b833561174a816113e2565b9250602084013567ffffffffffffffff811115611765575f80fd5b6115a7868287016114a2565b5f8060208385031215611782575f80fd5b823567ffffffffffffffff811115611798575f80fd5b6117a4858286016114a2565b90969095509350505050565b634e487b7160e01b5f52603260045260245ffd5b5f808335601e198436030181126117d9575f80fd5b83018035915067ffffffffffffffff8211156117f3575f80fd5b6020019150368190038213156112f6575f80fd5b5f60208284031215611817575f80fd5b815180151581146104cf575f80fd5b5f82516118378184602087016115b4565b9190910192915050565b5f60208284031215611851575f80fd5b5051919050565b634e487b7160e01b5f52604160045260245ffd5b6040516080810167ffffffffffffffff8111828210171561188f5761188f611858565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156118be576118be611858565b604052919050565b5f608082360312156118d6575f80fd5b6118de61186c565b82356118e9816113e2565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff80821115611919575f80fd5b9085019036601f83011261192b575f80fd5b81358181111561193d5761193d611858565b61194f601f8201601f19168501611895565b91508082523684828501011115611964575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b5f8235603e19833603018112611837575f80fd5b634e487b7160e01b5f52601260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b5f826119cd576119cd611997565b500490565b634e487b7160e01b5f52600160045260245ffd5b818382375f9101908152919050565b5f8282518085526020808601955060208260051b840101602086015f5b84811015611a4057601f19868403018952611a2e8383516115d6565b98840198925090830190600101611a12565b5090979650505050505050565b6001600160a01b038616815260a0602082018190525f90611a70908301876119f5565b8281036040840152611a8281876119f5565b90508281036060840152611a9681866119f5565b91505082151560808301529695505050505050565b60208152816020820152818360408301375f818301604090810191909152601f909201601f19160101919050565b60ff828116828216039081111561078b5761078b6119ab565b5f60ff831680611b0457611b04611997565b8060ff84160691505092915050565b8082018082111561078b5761078b6119ab565b5f8451611b378184602089016115b4565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f6105bb60408301846115d656fea164736f6c6343000818000a","storage":{"0x0":"0xff"}},"0xda9e1b3e395bfb0a45f03c7f615146b9d896c959":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100b1575f3560e01c806340c10f191161006e57806340c10f191461013d57806370a082311461015257806395d89b411461017a578063a457c2d714610182578063a9059cbb14610195578063dd62ed3e146101a8575f80fd5b806306fdde03146100b5578063095ea7b3146100d357806318160ddd146100f657806323b872dd14610108578063313ce5671461011b578063395093511461012a575b5f80fd5b6100bd6101bb565b6040516100ca9190610775565b60405180910390f35b6100e66100e13660046107dc565b61024b565b60405190151581526020016100ca565b6002545b6040519081526020016100ca565b6100e6610116366004610804565b610264565b604051601281526020016100ca565b6100e66101383660046107dc565b610287565b61015061014b3660046107dc565b6102a8565b005b6100fa61016036600461083d565b6001600160a01b03165f9081526020819052604090205490565b6100bd6102b6565b6100e66101903660046107dc565b6102c5565b6100e66101a33660046107dc565b610344565b6100fa6101b636600461085d565b610351565b6060600380546101ca9061088e565b80601f01602080910402602001604051908101604052809291908181526020018280546101f69061088e565b80156102415780601f1061021857610100808354040283529160200191610241565b820191905f5260205f20905b81548152906001019060200180831161022457829003601f168201915b5050505050905090565b5f3361025881858561037b565b60019150505b92915050565b5f3361027185828561049e565b61027c858585610516565b506001949350505050565b5f336102588185856102998383610351565b6102a391906108c6565b61037b565b6102b282826106b8565b5050565b6060600480546101ca9061088e565b5f33816102d28286610351565b9050838110156103375760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b61027c828686840361037b565b5f33610258818585610516565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b6001600160a01b0383166103dd5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161032e565b6001600160a01b03821661043e5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161032e565b6001600160a01b038381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b5f6104a98484610351565b90505f19811461051057818110156105035760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161032e565b610510848484840361037b565b50505050565b6001600160a01b03831661057a5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161032e565b6001600160a01b0382166105dc5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161032e565b6001600160a01b0383165f90815260208190526040902054818110156106535760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161032e565b6001600160a01b038481165f81815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3610510565b6001600160a01b03821661070e5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640161032e565b8060025f82825461071f91906108c6565b90915550506001600160a01b0382165f81815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b5f602080835283518060208501525f5b818110156107a157858101830151858201604001528201610785565b505f604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146107d7575f80fd5b919050565b5f80604083850312156107ed575f80fd5b6107f6836107c1565b946020939093013593505050565b5f805f60608486031215610816575f80fd5b61081f846107c1565b925061082d602085016107c1565b9150604084013590509250925092565b5f6020828403121561084d575f80fd5b610856826107c1565b9392505050565b5f806040838503121561086e575f80fd5b610877836107c1565b9150610885602084016107c1565b90509250929050565b600181811c908216806108a257607f821691505b6020821081036108c057634e487b7160e01b5f52602260045260245ffd5b50919050565b8082018082111561025e57634e487b7160e01b5f52601160045260245ffdfea164736f6c6343000818000a","storage":{"0x2":"0xe8d4a51000","0x3":"0x0","0x4":"0x0","0x47668262eb76f3aa61b856a0c078f33a11f46671cf1466c3616ba74a22fcdd92":"0xe8d4a51000","0x9cc83e833a69122bf7773b58c082655d780ae469ab7cdf5d1047a30229e55875":"0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"}},"0xe0afc4e9e03e4aa67257df7a2eca77454309789d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061002b5760003560e01c806316f1983114610030575b600080fd5b6100b06004803603604081101561004657600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561007157600080fd5b82018360208201111561008357600080fd5b803590602001918460018302840111640100000000831117156100a557600080fd5b5090925090506100b2565b005b826001600160a01b031660017f103fed9db65eac19c4d870f49ab7520fe03b99f1838e5996caf47e9e43308392848460405180806020018281038252848482818152602001925080828437600083820152604051601f909101601f19169092018290039550909350505050a350505056fea164736f6c6343000606000a","storage":{}},"0xe4fdf45c2f8d198854f8823809c7a988eeaaa493":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100a6575f3560e01c80638cb8ecec1161006e5780638cb8ecec1461013e5780638da5cb5b14610151578063cbe9e76414610161578063da8c229e14610183578063e0dba60f146101a5578063f2fde38b146101b8575f80fd5b806301670ba9146100aa57806301ffc9a7146100bf5780633f15457f146100f85780634e543b2614610123578063715018a614610136575b5f80fd5b6100bd6100b8366004610529565b6101cb565b005b6100e36100cd366004610540565b6001600160e01b0319166301ffc9a760e01b1490565b60405190151581526020015b60405180910390f35b60025461010b906001600160a01b031681565b6040516001600160a01b0390911681526020016100ef565b6100bd610131366004610589565b610217565b6100bd610282565b6100bd61014c3660046105a2565b610295565b5f546001600160a01b031661010b565b6100e361016f366004610529565b60036020525f908152604090205460ff1681565b6100e3610191366004610589565b60016020525f908152604090205460ff1681565b6100bd6101b33660046105cc565b6103a2565b6100bd6101c6366004610589565b610408565b6101d3610481565b60405181907f1764176cfa565853ba1ded547a830a9f9bff95231ef6fd228b3ddd6175777569905f90a25f908152600360205260409020805460ff19166001179055565b61021f610481565b600254604051630c4b7b8560e11b81525f60048201526001600160a01b03838116602483015290911690631896f70a906044015f604051808303815f87803b158015610269575f80fd5b505af115801561027b573d5f803e3d5ffd5b5050505050565b61028a610481565b6102935f6104da565b565b335f9081526001602052604090205460ff166103095760405162461bcd60e51b815260206004820152602860248201527f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f604482015267373a3937b63632b960c11b60648201526084015b60405180910390fd5b5f8281526003602052604090205460ff1615610323575f80fd5b6002546040516306ab592360e01b81525f6004820152602481018490526001600160a01b038381166044830152909116906306ab5923906064016020604051808303815f875af1158015610379573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061039d9190610605565b505050565b6103aa610481565b6001600160a01b0382165f81815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b610410610481565b6001600160a01b0381166104755760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610300565b61047e816104da565b50565b5f546001600160a01b031633146102935760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610300565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f60208284031215610539575f80fd5b5035919050565b5f60208284031215610550575f80fd5b81356001600160e01b031981168114610567575f80fd5b9392505050565b80356001600160a01b0381168114610584575f80fd5b919050565b5f60208284031215610599575f80fd5b6105678261056e565b5f80604083850312156105b3575f80fd5b823591506105c36020840161056e565b90509250929050565b5f80604083850312156105dd575f80fd5b6105e68361056e565b9150602083013580151581146105fa575f80fd5b809150509250929050565b5f60208284031215610615575f80fd5b505191905056fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0xbdf39e9e65b2355b1b0b06df799c09159f0ab90f06a9bb2153f5de7d9b0ea81":"0x1","0x97b771283c9c769f7b9399fef71d92816f2bd31de10203b676671b01eb920966":"0x1"}},"0xe85541865bbb62a05064ce5c9f41cc293a8ea996":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610060575f3560e01c8063715018a6146100645780638129fc1c1461006e5780638da5cb5b14610076578063a3f4df7e14610096578063f2fde38b146100cf578063ffa1ad74146100e2575b5f80fd5b61006c610106565b005b61006c610119565b6033546040516001600160a01b0390911681526020015b60405180910390f35b6100c26040518060400160405280600d81526020016c2aa7299d1027b832b930ba37b960991b81525081565b60405161008d91906103bd565b61006c6100dd366004610409565b610229565b6100c2604051806040016040528060058152602001640302e312e360dc1b81525081565b61010e61029f565b6101175f6102f9565b565b5f54610100900460ff161580801561013757505f54600160ff909116105b806101505750303b15801561015057505f5460ff166001145b6101b85760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b5f805460ff1916600117905580156101d9575f805461ff0019166101001790555b6101e161034a565b8015610226575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50565b61023161029f565b6001600160a01b0381166102965760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016101af565b610226816102f9565b6033546001600160a01b031633146101175760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016101af565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff166103b45760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016101af565b610117336102f9565b5f602080835283518060208501525f5b818110156103e9578581018301518582016040015282016103cd565b505f604082860101526040601f19601f8301168501019250505092915050565b5f60208284031215610419575f80fd5b81356001600160a01b038116811461042f575f80fd5b939250505056fea164736f6c6343000818000a","storage":{}},"0xead34b583404e3cb0c9b97c2d1c486be67be9f30":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0xec71e4e674fe0f432693dc2b935c34bd2774c003":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610090575f3560e01c8063a200e15311610063578063a200e15314610146578063a34e35961461016d578063c8a4271f14610180578063cd5d2c74146101bf578063d820ed42146101e6575f80fd5b806301ffc9a7146100945780632c0fd74c146100bc57806350e9a715146100f157806359b6b86c1461011f575b5f80fd5b6100a76100a2366004610600565b61020d565b60405190151581526020015b60405180910390f35b6100e37f000000000000000000000000000000000000000000000000000000000000000081565b6040519081526020016100b3565b6101046100ff366004610627565b610243565b604080518251815260209283015192810192909252016100b3565b6100e37f000000000000000000000000000000000000000000000000000000000000000181565b6100e37f000000000000000000000000000000000000000000000000000000000000000481565b6100e361017b366004610627565b610404565b6101a77f000000000000000000000000f3810eb7d64d1c11ae12727d957c6202b24492f581565b6040516001600160a01b0390911681526020016100b3565b6100e37f000000000000000000000000000000000000000000000000000000000000000081565b6100e37f000000000000000000000000000000000000000000000000000000000000000281565b5f6001600160e01b031982166301ffc9a760e01b148061023d57506001600160e01b031982166350e9a71560e01b145b92915050565b604080518082019091525f80825260208201525f61029586868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061045392505050565b90505f600582106102d1576102ca847f00000000000000000000000000000000000000000000000000000000000000016106b3565b9050610394565b81600403610303576102ca847f00000000000000000000000000000000000000000000000000000000000000026106b3565b81600303610335576102ca847f00000000000000000000000000000000000000000000000000000000000000046106b3565b81600203610367576102ca847f00000000000000000000000000000000000000000000000000000000000000006106b3565b610391847f00000000000000000000000000000000000000000000000000000000000000006106b3565b90505b60405180604001604052806103a883610554565b81526020016103f76103f28a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c92508b91506105f89050565b610554565b9052979650505050505050565b5f61044a6103f286868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508892508791506105f89050565b95945050505050565b80515f90819081905b8082101561054b575f858381518110610477576104776106ca565b01602001516001600160f81b0319169050600160ff1b8110156104a65761049f6001846106de565b9250610538565b600760fd1b6001600160f81b0319821610156104c75761049f6002846106de565b600f60fc1b6001600160f81b0319821610156104e85761049f6003846106de565b601f60fb1b6001600160f81b0319821610156105095761049f6004846106de565b603f60fa1b6001600160f81b03198216101561052a5761049f6005846106de565b6105356006846106de565b92505b5082610543816106f1565b93505061045c565b50909392505050565b5f807f000000000000000000000000f3810eb7d64d1c11ae12727d957c6202b24492f56001600160a01b03166350d25bcd6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105b2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105d69190610709565b9050806105e7846305f5e1006106b3565b6105f19190610720565b9392505050565b5f9392505050565b5f60208284031215610610575f80fd5b81356001600160e01b0319811681146105f1575f80fd5b5f805f806060858703121561063a575f80fd5b843567ffffffffffffffff80821115610651575f80fd5b818701915087601f830112610664575f80fd5b813581811115610672575f80fd5b886020828501011115610683575f80fd5b6020928301999098509187013596604001359550909350505050565b634e487b7160e01b5f52601160045260245ffd5b808202811582820484141761023d5761023d61069f565b634e487b7160e01b5f52603260045260245ffd5b8082018082111561023d5761023d61069f565b5f600182016107025761070261069f565b5060010190565b5f60208284031215610719575f80fd5b5051919050565b5f8261073a57634e487b7160e01b5f52601260045260245ffd5b50049056fea164736f6c6343000818000a","storage":{}},"0xf1ad43dc647f27c2366ab4742d68d21282f7d50e":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101d1575f3560e01c80638b95dd71116100fe578063c86902331161009e578063e32954eb1161006e578063e32954eb146104f2578063e59d895d14610505578063e985e9c514610518578063f1cb7e0614610553575f80fd5b8063c869023314610435578063ce3decdc1461048c578063d5fa2b001461049f578063d700ff33146104b2575f80fd5b8063a8fa5682116100d9578063a8fa5682146103ac578063a9784b3e146103bf578063ac9650d814610402578063bc1c58d114610422575f80fd5b80638b95dd7114610373578063a22cb46514610386578063a4b91a0114610399575f80fd5b80633603d758116101745780635c98042b116101445780635c98042b14610327578063623195b01461033a578063691f34311461034d5780637737221314610360575f80fd5b80633603d758146102975780633b3b57de146102aa5780634cbf6ba4146102bd57806359d1d43c14610307575f80fd5b8063124a319c116101af578063124a319c146102255780632203ab561461025057806329cd62ea14610271578063304e6ade14610284575f80fd5b806301ffc9a7146101d55780630af179d7146101fd57806310f13a8c14610212575b5f80fd5b6101e86101e3366004612267565b610566565b60405190151581526020015b60405180910390f35b61021061020b3660046122bd565b610576565b005b610210610220366004612304565b610778565b610238610233366004612377565b610842565b6040516001600160a01b0390911681526020016101f4565b61026361025e3660046123a1565b610a87565b6040516101f492919061240e565b61021061027f366004612426565b610bb5565b6102106102923660046122bd565b610c4d565b6102106102a536600461244f565b610cc6565b6102386102b836600461244f565b610d64565b6101e86102cb3660046123a1565b5f82815260208181526040808320546001600160401b031683526006825280832094835293815283822092825291909152205461ffff16151590565b61031a6103153660046122bd565b610d93565b6040516101f49190612466565b61031a61033536600461244f565b610e6f565b610210610348366004612478565b610f2a565b61031a61035b36600461244f565b610fc2565b61021061036e3660046122bd565b610ffa565b6102106103813660046124da565b611073565b6102106103943660046125b9565b611150565b6102106103a73660046125e3565b61122a565b61031a6103ba36600461261e565b6112f6565b6101e86103cd36600461265a565b6001600160a01b039283165f908152600c60209081526040808320948352938152838220929094168152925290205460ff1690565b6104156104103660046126ce565b611342565b6040516101f4919061270c565b61031a61043036600461244f565b61134f565b61047761044336600461244f565b5f81815260208181526040808320546001600160401b03168352600982528083209383529290522080546001909101549091565b604080519283526020830191909152016101f4565b61021061049a3660046122bd565b611387565b6102106104ad36600461276e565b6114c3565b6104da6104c036600461244f565b5f602081905290815260409020546001600160401b031681565b6040516001600160401b0390911681526020016101f4565b61041561050036600461279c565b6114e9565b6102106105133660046127d6565b6114fe565b6101e8610526366004612808565b6001600160a01b039182165f908152600b6020908152604080832093909416825291909152205460ff1690565b61031a6105613660046123a1565b6115a2565b5f61057082611666565b92915050565b826105808161168a565b610588575f80fd5b5f84815260208181526040808320548151601f87018490048402810184019092528582528392606092839285926001600160401b039091169183916105eb9183918d908d90819084018382808284375f9201919091525092939250506118b79050565b90505b80515160208201511015610712578661ffff165f03610652578060400151965061061781611912565b94508460405160200161062a9190612834565b60405160208183030381529060405280519060200120925061064b81611933565b9350610704565b5f61065c82611912565b9050816040015161ffff168861ffff16141580610680575061067e868261194f565b155b15610702576106db8c878a8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250505060208801518d91506106d2908290612863565b8b51158a61196a565b8160400151975081602001519650809550858051906020012093506106ff82611933565b94505b505b61070d81611bc9565b6105ee565b5083511561076c5761076c8a85888c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c925061076391508290508f612863565b8951158861196a565b50505050505050505050565b846107828161168a565b61078a575f80fd5b5f86815260208181526040808320546001600160401b03168352600a8252808320898452909152908190209051849184916107c89089908990612876565b908152602001604051809103902091826107e3929190612901565b5084846040516107f4929190612876565b6040518091039020867f448bc014f1536726cf8d54ff3d6481ed3cbc683c2591ca204274009afa09b1a18787878760405161083294939291906129e2565b60405180910390a3505050505050565b5f82815260208181526040808320546001600160401b031683526007825280832085845282528083206001600160e01b0319851684529091528120546001600160a01b03168015610894579050610570565b5f61089e85610d64565b90506001600160a01b0381166108b8575f92505050610570565b6040516301ffc9a760e01b60248201525f9081906001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b1790525161090f9190612834565b5f60405180830381855afa9150503d805f8114610947576040519150601f19603f3d011682016040523d82523d5f602084013e61094c565b606091505b509150915081158061095f575060208151105b80610989575080601f8151811061097857610978612a13565b01602001516001600160f81b031916155b1561099a575f945050505050610570565b6040516001600160e01b0319871660248201526001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b179052516109f09190612834565b5f60405180830381855afa9150503d805f8114610a28576040519150601f19603f3d011682016040523d82523d5f602084013e610a2d565b606091505b509092509050811580610a41575060208151105b80610a6b575080601f81518110610a5a57610a5a612a13565b01602001516001600160f81b031916155b15610a7c575f945050505050610570565b509095945050505050565b5f82815260208181526040808320546001600160401b03168352600180835281842086855290925282206060915b848111610b975780851615801590610ae457505f8181526020839052604081208054610ae090612885565b9050115b15610b8f5780825f8381526020019081526020015f20808054610b0690612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610b3290612885565b8015610b7d5780601f10610b5457610100808354040283529160200191610b7d565b820191905f5260205f20905b815481529060010190602001808311610b6057829003601f168201915b50505050509050935093505050610bae565b60011b610ab5565b505f60405180602001604052805f81525092509250505b9250929050565b82610bbf8161168a565b610bc7575f80fd5b60408051808201825284815260208082018581525f888152808352848120546001600160401b031681526009835284812089825283528490209251835551600190920191909155815185815290810184905285917f1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e4691015b60405180910390a250505050565b82610c578161168a565b610c5f575f80fd5b5f84815260208181526040808320546001600160401b03168352600382528083208784529091529020610c93838583612901565b50837fe379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d75788484604051610c3f929190612a27565b80610cd08161168a565b610cd8575f80fd5b5f82815260208190526040812080546001600160401b031691610cfa83612a3a565b82546101009290920a6001600160401b038181021990931691831602179091555f84815260208181526040918290205491519190921681528492507fc6621ccb8f3f5a04bb6502154b2caf6adf5983fe76dfef1cfc9c42e3579db444910160405180910390a25050565b5f80610d7183603c6115a2565b905080515f03610d8357505f92915050565b610d8c81611cae565b9392505050565b5f83815260208181526040808320546001600160401b03168352600a825280832086845290915290819020905160609190610dd19085908590612876565b90815260200160405180910390208054610dea90612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610e1690612885565b8015610e615780601f10610e3857610100808354040283529160200191610e61565b820191905f5260205f20905b815481529060010190602001808311610e4457829003601f168201915b505050505090509392505050565b5f81815260208181526040808320546001600160401b03168352600482528083208484529091529020805460609190610ea790612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610ed390612885565b8015610f1e5780601f10610ef557610100808354040283529160200191610f1e565b820191905f5260205f20905b815481529060010190602001808311610f0157829003601f168201915b50505050509050919050565b83610f348161168a565b610f3c575f80fd5b83610f48600182612863565b1615610f52575f80fd5b5f85815260208181526040808320546001600160401b031683526001825280832088845282528083208784529091529020610f8e838583612901565b50604051849086907faa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe3905f90a35050505050565b5f81815260208181526040808320546001600160401b03168352600882528083208484529091529020805460609190610ea790612885565b826110048161168a565b61100c575f80fd5b5f84815260208181526040808320546001600160401b03168352600882528083208784529091529020611040838583612901565b50837fb7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f78484604051610c3f929190612a27565b8261107d8161168a565b611085575f80fd5b837f65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af75284846040516110b792919061240e565b60405180910390a2603c830361110e57837f52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd26110f284611cae565b6040516001600160a01b03909116815260200160405180910390a25b5f84815260208181526040808320546001600160401b0316835260028252808320878452825280832086845290915290206111498382612a5f565b5050505050565b6001600160a01b03821633036111bf5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084015b60405180910390fd5b335f818152600b602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6001600160a01b03821633036112825760405162461bcd60e51b815260206004820181905260248201527f53657474696e672064656c65676174652073746174757320666f722073656c6660448201526064016111b6565b335f818152600c6020908152604080832087845282528083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519384529286917ff0ddb3b04746704017f9aa8bd728fcc2c1d11675041205350018915f5e4750a0910160405180910390a4505050565b5f83815260208181526040808320546001600160401b03168352600582528083208684528252808320858452825280832061ffff851684529091529020805460609190610dea90612885565b6060610d8c5f8484611ccb565b5f81815260208181526040808320546001600160401b03168352600382528083208484529091529020805460609190610ea790612885565b826113918161168a565b611399575f80fd5b5f84815260208181526040808320546001600160401b031680845260048352818420888552909252822080549192916113d190612885565b80601f01602080910402602001604051908101604052809291908181526020018280546113fd90612885565b80156114485780601f1061141f57610100808354040283529160200191611448565b820191905f5260205f20905b81548152906001019060200180831161142b57829003601f168201915b505050506001600160401b0384165f9081526004602090815260408083208b8452909152902091925061147e9050858783612901565b50857f8f15ed4b723ef428f250961da8315675b507046737e19319fc1a4d81bfe87f858287876040516114b393929190612b1e565b60405180910390a2505050505050565b816114cd8161168a565b6114d5575f80fd5b6114e483603c61038185611e88565b505050565b60606114f6848484611ccb565b949350505050565b826115088161168a565b611510575f80fd5b5f84815260208181526040808320546001600160401b031683526007825280832087845282528083206001600160e01b031987168085529083529281902080546001600160a01b0319166001600160a01b038716908117909155905190815286917f7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa910160405180910390a350505050565b5f82815260208181526040808320546001600160401b0316835260028252808320858452825280832084845290915290208054606091906115e290612885565b80601f016020809104026020016040519081016040528092919081815260200182805461160e90612885565b80156116595780601f1061163057610100808354040283529160200191611659565b820191905f5260205f20905b81548152906001019060200180831161163c57829003601f168201915b5050505050905092915050565b5f6001600160e01b03198216631674750f60e21b1480610570575061057082611eb8565b5f336001600160a01b037f0000000000000000000000004fbf7b2f171336958be5d15ff762a5cff53635681614806116ea5750336001600160a01b037f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5616145b156116f757506001919050565b6040516302571be360e01b8152600481018390525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa15801561175c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117809190612b4d565b90507f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b0316816001600160a01b031603611845576040516331a9108f60e11b8152600481018490527f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b031690636352211e90602401602060405180830381865afa15801561181e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118429190612b4d565b90505b6001600160a01b03811633148061187e57506001600160a01b0381165f908152600b6020908152604080832033845290915290205460ff165b80610d8c57506001600160a01b0381165f908152600c60209081526040808320868452825280832033845290915290205460ff16610d8c565b6118ff6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261057081611bc9565b602081015181516060916105709161192a9082611edc565b84519190611f33565b60a081015160c08201516060916105709161192a908290612863565b5f81518351148015610d8c5750610d8c835f845f8751611fa7565b865160208801205f61197d878787611f33565b90508315611aa1576001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c168452909152902080546119c690612885565b159050611a23576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611a0783612b68565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091528120611a62916121f9565b897f03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a12078a8a604051611a94929190612b84565b60405180910390a261076c565b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c16845290915290208054611ae290612885565b90505f03611b40576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611b2483612ba9565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091529020611b808282612a5f565b50897f52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b8a8a84604051611bb593929190612bbf565b60405180910390a250505050505050505050565b60c08101516020820181905281515111611be05750565b5f611bf2825f01518360200151611edc565b8260200151611c019190612bed565b8251909150611c109082611fc9565b61ffff166040830152611c24600282612bed565b8251909150611c339082611fc9565b61ffff166060830152611c47600282612bed565b8251909150611c569082611fef565b63ffffffff166080830152611c6c600482612bed565b82519091505f90611c7d9083611fc9565b61ffff169050611c8e600283612bed565b60a084018190529150611ca18183612bed565b60c0909301929092525050565b5f8151601414611cbc575f80fd5b5060200151600160601b900490565b6060816001600160401b03811115611ce557611ce56124c6565b604051908082528060200260200182016040528015611d1857816020015b6060815260200190600190039081611d035790505b5090505f5b82811015611e80578415611dd8575f848483818110611d3e57611d3e612a13565b9050602002810190611d509190612c00565b611d5f91602491600491612c42565b611d6891612c69565b9050858114611dd65760405162461bcd60e51b815260206004820152603460248201527f6d756c746963616c6c3a20416c6c207265636f726473206d7573742068617665604482015273040c240dac2e8c6d0d2dcce40dcc2dacad0c2e6d60631b60648201526084016111b6565b505b5f8030868685818110611ded57611ded612a13565b9050602002810190611dff9190612c00565b604051611e0d929190612876565b5f60405180830381855af49150503d805f8114611e45576040519150601f19603f3d011682016040523d82523d5f602084013e611e4a565b606091505b509150915081611e58575f80fd5b80848481518110611e6b57611e6b612a13565b60209081029190910101525050600101611d1d565b509392505050565b604080516014808252818301909252606091602082018180368337505050600160601b9290920260208301525090565b5f6001600160e01b0319821663c869023360e01b1480610570575061057082612017565b5f815b83518110611eef57611eef612c86565b5f611efa858361203b565b60ff169050611f0a816001612bed565b611f149083612bed565b9150805f03611f235750611f29565b50611edf565b6114f68382612863565b8251606090611f428385612bed565b1115611f4c575f80fd5b5f826001600160401b03811115611f6557611f656124c6565b6040519080825280601f01601f191660200182016040528015611f8f576020820181803683370190505b50905060208082019086860101610a7c82828761205e565b5f611fb38484846120b3565b611fbe8787856120b3565b149695505050505050565b81515f90611fd8836002612bed565b1115611fe2575f80fd5b50016002015161ffff1690565b81515f90611ffe836004612bed565b1115612008575f80fd5b50016004015163ffffffff1690565b5f6001600160e01b0319821663691f343160e01b14806105705750610570826120d5565b5f82828151811061204e5761204e612a13565b016020015160f81c905092915050565b602081106120965781518352612075602084612bed565b9250612082602083612bed565b915061208f602082612863565b905061205e565b905182516020929092036101000a5f190180199091169116179052565b82515f906120c18385612bed565b11156120cb575f80fd5b5091016020012090565b5f6001600160e01b031982166304928c6760e21b14806105705750610570825f6001600160e01b0319821663547d2b4160e11b148061212457506001600160e01b03198216635c98042b60e01b145b806105705750610570825f6001600160e01b0319821663bc1c58d160e01b14806105705750610570825f6001600160e01b03198216631d9dabef60e11b148061217d57506001600160e01b031982166378e5bf0360e11b145b806105705750610570825f6001600160e01b03198216631101d5ab60e11b14806105705750610570825f6001600160e01b0319821663d700ff3360e01b14806105705750610570825f6001600160e01b03198216634fbf043360e01b148061057057506301ffc9a760e01b6001600160e01b0319831614610570565b50805461220590612885565b5f825580601f10612214575050565b601f0160209004905f5260205f20908101906122309190612233565b50565b5b80821115612247575f8155600101612234565b5090565b80356001600160e01b031981168114612262575f80fd5b919050565b5f60208284031215612277575f80fd5b610d8c8261224b565b5f8083601f840112612290575f80fd5b5081356001600160401b038111156122a6575f80fd5b602083019150836020828501011115610bae575f80fd5b5f805f604084860312156122cf575f80fd5b8335925060208401356001600160401b038111156122eb575f80fd5b6122f786828701612280565b9497909650939450505050565b5f805f805f60608688031215612318575f80fd5b8535945060208601356001600160401b0380821115612335575f80fd5b61234189838a01612280565b90965094506040880135915080821115612359575f80fd5b5061236688828901612280565b969995985093965092949392505050565b5f8060408385031215612388575f80fd5b823591506123986020840161224b565b90509250929050565b5f80604083850312156123b2575f80fd5b50508035926020909101359150565b5f5b838110156123db5781810151838201526020016123c3565b50505f910152565b5f81518084526123fa8160208601602086016123c1565b601f01601f19169290920160200192915050565b828152604060208201525f6114f660408301846123e3565b5f805f60608486031215612438575f80fd5b505081359360208301359350604090920135919050565b5f6020828403121561245f575f80fd5b5035919050565b602081525f610d8c60208301846123e3565b5f805f806060858703121561248b575f80fd5b843593506020850135925060408501356001600160401b038111156124ae575f80fd5b6124ba87828801612280565b95989497509550505050565b634e487b7160e01b5f52604160045260245ffd5b5f805f606084860312156124ec575f80fd5b833592506020840135915060408401356001600160401b0380821115612510575f80fd5b818601915086601f830112612523575f80fd5b813581811115612535576125356124c6565b604051601f8201601f19908116603f0116810190838211818310171561255d5761255d6124c6565b81604052828152896020848701011115612575575f80fd5b826020860160208301375f6020848301015280955050505050509250925092565b6001600160a01b0381168114612230575f80fd5b80358015158114612262575f80fd5b5f80604083850312156125ca575f80fd5b82356125d581612596565b9150612398602084016125aa565b5f805f606084860312156125f5575f80fd5b83359250602084013561260781612596565b9150612615604085016125aa565b90509250925092565b5f805f60608486031215612630575f80fd5b8335925060208401359150604084013561ffff8116811461264f575f80fd5b809150509250925092565b5f805f6060848603121561266c575f80fd5b833561267781612596565b925060208401359150604084013561264f81612596565b5f8083601f84011261269e575f80fd5b5081356001600160401b038111156126b4575f80fd5b6020830191508360208260051b8501011115610bae575f80fd5b5f80602083850312156126df575f80fd5b82356001600160401b038111156126f4575f80fd5b6127008582860161268e565b90969095509350505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b8281101561276157603f1988860301845261274f8583516123e3565b94509285019290850190600101612733565b5092979650505050505050565b5f806040838503121561277f575f80fd5b82359150602083013561279181612596565b809150509250929050565b5f805f604084860312156127ae575f80fd5b8335925060208401356001600160401b038111156127ca575f80fd5b6122f78682870161268e565b5f805f606084860312156127e8575f80fd5b833592506127f86020850161224b565b9150604084013561264f81612596565b5f8060408385031215612819575f80fd5b823561282481612596565b9150602083013561279181612596565b5f82516128458184602087016123c1565b9190910192915050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156105705761057061284f565b818382375f9101908152919050565b600181811c9082168061289957607f821691505b6020821081036128b757634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156114e457805f5260205f20601f840160051c810160208510156128e25750805b601f840160051c820191505b81811015611149575f81556001016128ee565b6001600160401b03831115612918576129186124c6565b61292c836129268354612885565b836128bd565b5f601f84116001811461295d575f85156129465750838201355b5f19600387901b1c1916600186901b178355611149565b5f83815260208120601f198716915b8281101561298c578685013582556020948501946001909201910161296c565b50868210156129a8575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b604081525f6129f56040830186886129ba565b8281036020840152612a088185876129ba565b979650505050505050565b634e487b7160e01b5f52603260045260245ffd5b602081525f6114f66020830184866129ba565b5f6001600160401b03808316818103612a5557612a5561284f565b6001019392505050565b81516001600160401b03811115612a7857612a786124c6565b612a8c81612a868454612885565b846128bd565b602080601f831160018114612abf575f8415612aa85750858301515b5f19600386901b1c1916600185901b178555612b16565b5f85815260208120601f198616915b82811015612aed57888601518255948401946001909101908401612ace565b5085821015612b0a57878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b604081525f612b3060408301866123e3565b8281036020840152612b438185876129ba565b9695505050505050565b5f60208284031215612b5d575f80fd5b8151610d8c81612596565b5f61ffff821680612b7b57612b7b61284f565b5f190192915050565b604081525f612b9660408301856123e3565b905061ffff831660208301529392505050565b5f61ffff808316818103612a5557612a5561284f565b606081525f612bd160608301866123e3565b61ffff851660208401528281036040840152612b4381856123e3565b808201808211156105705761057061284f565b5f808335601e19843603018112612c15575f80fd5b8301803591506001600160401b03821115612c2e575f80fd5b602001915036819003821315610bae575f80fd5b5f8085851115612c50575f80fd5b83861115612c5c575f80fd5b5050820193919092039150565b80356020831015610570575f19602084900360031b1b1692915050565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{}},"0xf3810eb7d64d1c11ae12727d957c6202b24492f5":{"nonce":1,"balance":"0x0","code":"0x6080604052348015600e575f80fd5b50600436106030575f3560e01c806350d25bcd146034578063e5c19b2d146048575b5f80fd5b5f5460405190815260200160405180910390f35b605760533660046059565b5f55565b005b5f602082840312156068575f80fd5b503591905056fea164736f6c6343000818000a","storage":{"0x0":"0x5f5e100"}},"0xf670681605efc4efc804f5a9b97ee89520473d56":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c80638da5cb5b11610088578063c66485b211610063578063c66485b2146101da578063da8c229e146101ed578063e0dba60f1461021f578063f2fde38b14610232575f80fd5b80638da5cb5b146101a4578063bffbe61c146101b4578063c47f0027146101c7575f80fd5b806365669631116100c35780636566963114610161578063715018a6146101745780637a806d6b1461017e578063828eab0e14610191575f80fd5b80630f5a5466146100e95780631e83409a1461010f5780633f15457f14610122575b5f80fd5b6100fc6100f7366004610958565b610245565b6040519081526020015b60405180910390f35b6100fc61011d36600461098f565b610258565b6101497f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a981565b6040516001600160a01b039091168152602001610106565b6100fc61016f3660046109aa565b610279565b61017c610526565b005b6100fc61018c366004610a8f565b610539565b600254610149906001600160a01b031681565b5f546001600160a01b0316610149565b6100fc6101c236600461098f565b6105ae565b6100fc6101d5366004610b00565b610608565b61017c6101e836600461098f565b610624565b61020f6101fb36600461098f565b60016020525f908152604090205460ff1681565b6040519015158152602001610106565b61017c61022d366004610b47565b6106e4565b61017c61024036600461098f565b61074a565b5f610251338484610279565b9392505050565b6002545f9061027390339084906001600160a01b0316610279565b92915050565b5f836001600160a01b0381163314806102a05750335f9081526001602052604090205460ff165b80610334575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063e985e9c590604401602060405180830381865afa158015610310573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103349190610b73565b806103435750610343816107c3565b6103e05760405162461bcd60e51b815260206004820152605b60248201527f526576657273655265676973747261723a2043616c6c6572206973206e6f742060448201527f6120636f6e74726f6c6c6572206f7220617574686f726973656420627920616460648201527f6472657373206f7220746865206164647265737320697473656c660000000000608482015260a4015b60405180910390fd5b5f6103ea8661083a565b604080517f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e2602080830191909152818301849052825180830384018152606090920192839052815191012091925081906001600160a01b038916907f6ada868dd3058cf77a48a74489fd7963688e5464b2b0fa957ace976243270e92905f90a36040516305ef2c7f60e41b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26004820152602481018390526001600160a01b03878116604483015286811660648301525f60848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610505575f80fd5b505af1158015610517573d5f803e3d5ffd5b50929998505050505050505050565b61052e61089c565b6105375f6108f5565b565b5f80610546868686610279565b604051637737221360e01b81529091506001600160a01b038516906377372213906105779084908790600401610b8e565b5f604051808303815f87803b15801561058e575f80fd5b505af11580156105a0573d5f803e3d5ffd5b509298975050505050505050565b5f7f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26105d98361083a565b604080516020810193909352820152606001604051602081830303815290604052805190602001209050919050565b6002545f9061027390339081906001600160a01b031685610539565b61062c61089c565b6001600160a01b03811661069b5760405162461bcd60e51b815260206004820152603060248201527f526576657273655265676973747261723a205265736f6c76657220616464726560448201526f07373206d757374206e6f7420626520360841b60648201526084016103d7565b600280546001600160a01b0319166001600160a01b0383169081179091556040517feae17a84d9eb83d8c8eb317f9e7d64857bc363fa51674d996c023f4340c577cf905f90a250565b6106ec61089c565b6001600160a01b0382165f81815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b61075261089c565b6001600160a01b0381166107b75760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016103d7565b6107c0816108f5565b50565b5f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801561081e575060408051601f3d908101601f1916820190925261081b91810190610be2565b60015b61082957505f919050565b6001600160a01b0316331492915050565b5f60285b8015610891575f19016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a81536010909204915f19016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a815360108304925061083e565b505060285f20919050565b5f546001600160a01b031633146105375760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016103d7565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146107c0575f80fd5b5f8060408385031215610969575f80fd5b823561097481610944565b9150602083013561098481610944565b809150509250929050565b5f6020828403121561099f575f80fd5b813561025181610944565b5f805f606084860312156109bc575f80fd5b83356109c781610944565b925060208401356109d781610944565b915060408401356109e781610944565b809150509250925092565b634e487b7160e01b5f52604160045260245ffd5b5f82601f830112610a15575f80fd5b813567ffffffffffffffff80821115610a3057610a306109f2565b604051601f8301601f19908116603f01168101908282118183101715610a5857610a586109f2565b81604052838152866020858801011115610a70575f80fd5b836020870160208301375f602085830101528094505050505092915050565b5f805f8060808587031215610aa2575f80fd5b8435610aad81610944565b93506020850135610abd81610944565b92506040850135610acd81610944565b9150606085013567ffffffffffffffff811115610ae8575f80fd5b610af487828801610a06565b91505092959194509250565b5f60208284031215610b10575f80fd5b813567ffffffffffffffff811115610b26575f80fd5b610b3284828501610a06565b949350505050565b80151581146107c0575f80fd5b5f8060408385031215610b58575f80fd5b8235610b6381610944565b9150602083013561098481610b3a565b5f60208284031215610b83575f80fd5b815161025181610b3a565b8281525f60206040602084015283518060408501525f5b81811015610bc157858101830151858201606001528201610ba5565b505f606082860101526060601f19601f830116850101925050509392505050565b5f60208284031215610bf2575f80fd5b81516102518161094456fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2":"0x9df67c91f1bfcb4d966cf764e9218685e7c59e8a","0x1f5b7623941da966ad7183d9cbb6db584f6d4add26919ac31a2d3f19a164e7e1":"0x1","0xbe5de2149ce76ca5934fa63455cd675fd52e2d30f3328985d298a627ca0f05e9":"0x1"}},"0xf8c26340c1eaea6c7ff1760b25005e1306953572":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061010b5760003560e01c80638c87a4ea116100a2578063b87abc1111610071578063b87abc1114610244578063c597407314610257578063ce92b33e1461026a578063e837ae741461027d578063ec129eea146102905761010b565b80638c87a4ea146101ea5780638f69c188146101fd578063a3557e6c14610210578063b85afd28146102235761010b565b806347c81699116100de57806347c8169914610181578063672b9f81146101945780636ccbae5f146101b55780637b103999146101d55761010b565b80631bd8cc1a146101105780631be5e7ed146101395780632c3d376d14610159578063310bd74b1461016c575b600080fd5b61012361011e3660046117b4565b6102a3565b6040516101309190611eee565b60405180910390f35b61014c610147366004611aec565b6104f2565b6040516101309190611fd6565b61014c610167366004611b21565b610673565b61017f61017a366004611b21565b610714565b005b61017f61018f3660046119b5565b6107c0565b6101a76101a2366004611b94565b6108ef565b604051610130929190611fe7565b6101c86101c3366004611b21565b6109c3565b604051610130919061204c565b6101dd6109d5565b6040516101309190611ea9565b6101236101f836600461191d565b6109e5565b61017f61020b366004611878565b610a74565b61017f61021e366004611878565b610af0565b610236610231366004611951565b610b1b565b604051610130929190611eff565b61017f610252366004611b3f565b610ca9565b61017f610265366004611a39565b610d43565b61017f610278366004611808565b610df9565b61017f61028b366004611808565b610e97565b61017f61029e366004611808565b610f4e565b60015460405163b3f9e4cb60e01b815260609183916001600160a01b039091169063b3f9e4cb906102d890849060040161204c565b60206040518083038186803b1580156102f057600080fd5b505afa158015610304573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610328919081019061178e565b6001600160a01b0316306001600160a01b0316146103615760405162461bcd60e51b81526004016103589061201c565b60405180910390fd5b604080518581526020808702820101909152849060609082801561039957816020015b60608152602001906001900390816103845790505b506000868152600360205260408120549192505b838110156104e557600087815260026020908152604080832085845290915290208989838181106103da57fe5b602002820190508035601e19368490030181126103f657600080fd5b909101602081019150356001600160401b0381111561041457600080fd5b3681900382131561042457600080fd5b604051610432929190611e70565b9081526040805160209281900383018120805460026001821615610100026000190190911604601f810185900485028301850190935282825290929091908301828280156104c15780601f10610496576101008083540402835291602001916104c1565b820191906000526020600020905b8154815290600101906020018083116104a457829003601f168201915b50505050508382815181106104d257fe5b60209081029190910101526001016103ad565b5090979650505050505050565b60015460405163b3f9e4cb60e01b815260609183916001600160a01b039091169063b3f9e4cb9061052790849060040161204c565b60206040518083038186803b15801561053f57600080fd5b505afa158015610553573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610577919081019061178e565b6001600160a01b0316306001600160a01b0316146105a75760405162461bcd60e51b81526004016103589061201c565b6000838152600260209081526040808320600383528184205484529091529081902090516105d6908690611e7d565b9081526040805160209281900383018120805460026001821615610100026000190190911604601f810185900485028301850190935282825290929091908301828280156106655780601f1061063a57610100808354040283529160200191610665565b820191906000526020600020905b81548152906001019060200180831161064857829003601f168201915b505050505091505092915050565b60008181526004602090815260409182902080548351601f60026000196101006001861615020190931692909204918201849004840281018401909452808452606093928301828280156107085780601f106106dd57610100808354040283529160200191610708565b820191906000526020600020905b8154815290600101906020018083116106eb57829003601f168201915b50505050509050919050565b60015460405163430c208160e01b815282916001600160a01b03169063430c2081906107469033908590600401611ec5565b60206040518083038186803b15801561075e57600080fd5b505afa158015610772573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506107969190810190611997565b6107b25760405162461bcd60e51b81526004016103589061202c565b6107bc4283610fec565b5050565b60015460405163430c208160e01b815282916001600160a01b03169063430c2081906107f29033908590600401611ec5565b60206040518083038186803b15801561080a57600080fd5b505afa15801561081e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506108429190810190611997565b61085e5760405162461bcd60e51b81526004016103589061202c565b6108e7600360008481526020019081526020016000205487878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061108e915050565b505050505050565b60015460405163b3f9e4cb60e01b8152606091829184916001600160a01b03169063b3f9e4cb9061092490849060040161204c565b60206040518083038186803b15801561093c57600080fd5b505afa158015610950573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610974919081019061178e565b6001600160a01b0316306001600160a01b0316146109a45760405162461bcd60e51b81526004016103589061201c565b6109ad85610673565b92506109b983856104f2565b9150509250929050565b60009081526020819052604090205490565b6001546001600160a01b03165b90565b6060600082519050606081604051908082528060200260200182016040528015610a2357816020015b6060815260200190600190039081610a0e5790505b50905060005b82811015610a6c57610a4d858281518110610a4057fe5b6020026020010151610673565b828281518110610a5957fe5b6020908102919091010152600101610a29565b509392505050565b610acf63ce92b33e60e01b858585604051602401610a9493929190611f24565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092178252519020838361129f565b600082815260036020526040902054610aea908585856113c3565b50505050565b610b1063ec129eea60e01b858585604051602401610a9493929190611f24565b610aea84848461140a565b60015460405163b3f9e4cb60e01b8152606091829184916001600160a01b03169063b3f9e4cb90610b5090849060040161204c565b60206040518083038186803b158015610b6857600080fd5b505afa158015610b7c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610ba0919081019061178e565b6001600160a01b0316306001600160a01b031614610bd05760405162461bcd60e51b81526004016103589061201c565b8451604080518281526020808402820101909152818015610c0557816020015b6060815260200190600190039081610bf05790505b50935080604051908082528060200260200182016040528015610c3c57816020015b6060815260200190600190039081610c275790505b50925060005b81811015610c9f57610c67878281518110610c5957fe5b6020026020010151876108ef565b8651879084908110610c7557fe5b60200260200101868481518110610c8857fe5b602090810291909101019190915252600101610c42565b5050509250929050565b610d3463310bd74b60e01b84604051602401610cc5919061204c565b60408051601f19818403018152918152602080830180516001600160e01b03166001600160e01b031990951694909417845291519092208251601f8601839004830281018301909352848352918691869086908190840183828082843760009201919091525061129f92505050565b610d3e4284610fec565b505050565b610d676347c8169960e01b8888888888604051602401610cc5959493929190611f96565b610df0600360008581526020019081526020016000205488888080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8c018190048102820181019092528a815292508a915089908190840183828082843760009201919091525089925061108e915050565b50505050505050565b60015460405163430c208160e01b815282916001600160a01b03169063430c208190610e2b9033908590600401611ec5565b60206040518083038186803b158015610e4357600080fd5b505afa158015610e57573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610e7b9190810190611997565b610acf5760405162461bcd60e51b81526004016103589061202c565b6005546040516355138f0d60e11b81526001600160a01b039091169063aa271e1a90610ec7903390600401611eb7565b60206040518083038186803b158015610edf57600080fd5b505afa158015610ef3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610f179190810190611997565b610f335760405162461bcd60e51b81526004016103589061203c565b600081815260036020526040902054610d3e908484846113c3565b60015460405163430c208160e01b815282916001600160a01b03169063430c208190610f809033908590600401611ec5565b60206040518083038186803b158015610f9857600080fd5b505afa158015610fac573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610fd09190810190611997565b610b105760405162461bcd60e51b81526004016103589061202c565b600081815260036020526040808220849055600154905163538361a760e01b81526001600160a01b039091169163538361a79161102d91859160040161205a565b600060405180830381600087803b15801561104757600080fd5b505af115801561105b573d6000803e3d6000fd5b50506040518392507f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9150600090a25050565b825160208085019190912060008381526002835260408082208883529093528281209251919290916110c1908790611e7d565b908152604051602091819003919091018120546001805463538361a760e01b84526002918316156101000260001901909216041592506001600160a01b03169063538361a7906111179086908690600401612075565b600060405180830381600087803b15801561113157600080fd5b505af1158015611145573d6000803e3d6000fd5b50505060008481526002602090815260408083208a8452909152908190209051869250611173908890611e7d565b90815260200160405180910390209080519060200190611194929190611521565b50600082815260046020526040902054600260001961010060018416150201909116046111dc57600082815260046020908152604090912086516111da92880190611521565b505b801561123157846040516111f09190611e7d565b6040518091039020837f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f86876040516112289190611fd6565b60405180910390a35b8360405161123f9190611e7d565b6040518091039020856040516112559190611e7d565b6040518091039020847f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d92888860405161128f929190611fe7565b60405180910390a4505050505050565b6000828152602081815260408083205490519092916112f59185916112e9916112ce918a913091899101611e39565b60405160208183030381529060405280519060200120611414565b9063ffffffff61144416565b90506001600160a01b0381161580159061138c575060015460405163430c208160e01b81526001600160a01b039091169063430c20819061133c9084908890600401611ee0565b60206040518083038186803b15801561135457600080fd5b505afa158015611368573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061138c9190810190611997565b6113a85760405162461bcd60e51b81526004016103589061200c565b50505060009081526020819052604090208054600101905550565b825160005b818110156108e757611402868683815181106113e057fe5b60200260200101518684815181106113f457fe5b60200260200101518661108e565b6001016113c8565b610f334282610fec565b6000816040516020016114279190611e89565b604051602081830303815290604052805190602001209050919050565b600081516041146114575750600061151b565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a082111561149d576000935050505061151b565b8060ff16601b141580156114b557508060ff16601c14155b156114c6576000935050505061151b565b600186828585604051600081526020016040526040516114e99493929190611f58565b6020604051602081039080840390855afa15801561150b573d6000803e3d6000fd5b5050506020604051035193505050505b92915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061156257805160ff191683800117855561158f565b8280016001018555821561158f579182015b8281111561158f578251825591602001919060010190611574565b5061159b92915061159f565b5090565b6109e291905b8082111561159b57600081556001016115a5565b805161151b816121a4565b60008083601f8401126115d657600080fd5b5081356001600160401b038111156115ed57600080fd5b60208301915083602082028301111561160557600080fd5b9250929050565b600082601f83011261161d57600080fd5b813561163061162b826120a9565b612083565b81815260209384019390925082018360005b8381101561166e57813586016116588882611734565b8452506020928301929190910190600101611642565b5050505092915050565b600082601f83011261168957600080fd5b813561169761162b826120a9565b915081818352602084019350602081019050838560208402820111156116bc57600080fd5b60005b8381101561166e57816116d28882611783565b84525060209283019291909101906001016116bf565b805161151b816121bb565b60008083601f84011261170557600080fd5b5081356001600160401b0381111561171c57600080fd5b60208301915083600182028301111561160557600080fd5b600082601f83011261174557600080fd5b813561175361162b826120c9565b9150808252602083016020830185838301111561176f57600080fd5b61177a83828461214b565b50505092915050565b803561151b816121c4565b6000602082840312156117a057600080fd5b60006117ac84846115b9565b949350505050565b6000806000604084860312156117c957600080fd5b83356001600160401b038111156117df57600080fd5b6117eb868287016115c4565b935093505060206117fe86828701611783565b9150509250925092565b60008060006060848603121561181d57600080fd5b83356001600160401b0381111561183357600080fd5b61183f8682870161160c565b93505060208401356001600160401b0381111561185b57600080fd5b6118678682870161160c565b92505060406117fe86828701611783565b6000806000806080858703121561188e57600080fd5b84356001600160401b038111156118a457600080fd5b6118b08782880161160c565b94505060208501356001600160401b038111156118cc57600080fd5b6118d88782880161160c565b93505060406118e987828801611783565b92505060608501356001600160401b0381111561190557600080fd5b61191187828801611734565b91505092959194509250565b60006020828403121561192f57600080fd5b81356001600160401b0381111561194557600080fd5b6117ac84828501611678565b6000806040838503121561196457600080fd5b82356001600160401b0381111561197a57600080fd5b61198685828601611678565b92505060206109b985828601611783565b6000602082840312156119a957600080fd5b60006117ac84846116e8565b6000806000806000606086880312156119cd57600080fd5b85356001600160401b038111156119e357600080fd5b6119ef888289016116f3565b955095505060208601356001600160401b03811115611a0d57600080fd5b611a19888289016116f3565b93509350506040611a2c88828901611783565b9150509295509295909350565b60008060008060008060006080888a031215611a5457600080fd5b87356001600160401b03811115611a6a57600080fd5b611a768a828b016116f3565b975097505060208801356001600160401b03811115611a9457600080fd5b611aa08a828b016116f3565b95509550506040611ab38a828b01611783565b93505060608801356001600160401b03811115611acf57600080fd5b611adb8a828b016116f3565b925092505092959891949750929550565b60008060408385031215611aff57600080fd5b82356001600160401b03811115611b1557600080fd5b61198685828601611734565b600060208284031215611b3357600080fd5b60006117ac8484611783565b600080600060408486031215611b5457600080fd5b6000611b608686611783565b93505060208401356001600160401b03811115611b7c57600080fd5b611b88868287016116f3565b92509250509250925092565b60008060408385031215611ba757600080fd5b60006119868585611783565b6000611bbf8383611ccb565b9392505050565b611bcf8161212a565b82525050565b611bcf81612108565b611bcf611bea82612108565b612183565b6000611bfa826120f6565b611c0481856120fa565b935083602082028501611c16856120f0565b8060005b85811015611c505784840389528151611c338582611bb3565b9450611c3e836120f0565b60209a909a0199925050600101611c1a565b5091979650505050505050565b611bcf816109e2565b611bcf611c72826109e2565b6109e2565b611bcf81612135565b6000611c8c83856120fa565b9350611c9983858461214b565b611ca283612194565b9093019392505050565b6000611cb88385612103565b9350611cc583858461214b565b50500190565b6000611cd6826120f6565b611ce081856120fa565b9350611cf0818560208601612157565b611ca281612194565b6000611d04826120f6565b611d0e8185612103565b9350611d1e818560208601612157565b9290920192915050565b6000611d35601c83612103565b7f19457468657265756d205369676e6564204d6573736167653a0a3332000000008152601c0192915050565b6000611d6e6011836120fa565b70494e56414c49445f5349474e415455524560781b815260200192915050565b6000611d9b601d836120fa565b7f5245534f4c5645525f44455441434845445f46524f4d5f444f4d41494e000000815260200192915050565b6000611dd4601f836120fa565b7f53454e4445525f49535f4e4f545f415050524f5645445f4f525f4f574e455200815260200192915050565b6000611e0d6014836120fa565b7329a2a72222a92fa4a9afa727aa2fa6a4a72a22a960611b815260200192915050565b611bcf81612124565b6000611e458286611c66565b602082019150611e558285611bde565b601482019150611e658284611c66565b506020019392505050565b60006117ac828486611cac565b6000611bbf8284611cf9565b6000611e9482611d28565b9150611ea08284611c66565b50602001919050565b6020810161151b8284611bd5565b6020810161151b8284611bc6565b60408101611ed38285611bc6565b611bbf6020830184611c5d565b60408101611ed38285611bd5565b60208082528101611bbf8184611bef565b60408082528101611f108185611bef565b905081810360208301526117ac8184611bef565b60608082528101611f358186611bef565b90508181036020830152611f498185611bef565b90506117ac6040830184611c5d565b60808101611f668287611c5d565b611f736020830186611e30565b611f806040830185611c5d565b611f8d6060830184611c5d565b95945050505050565b60608082528101611fa8818789611c80565b90508181036020830152611fbd818587611c80565b9050611fcc6040830184611c5d565b9695505050505050565b60208082528101611bbf8184611ccb565b60408082528101611ff88185611ccb565b905081810360208301526117ac8184611ccb565b6020808252810161151b81611d61565b6020808252810161151b81611d8e565b6020808252810161151b81611dc7565b6020808252810161151b81611e00565b6020810161151b8284611c5d565b604081016120688285611c5d565b611bbf6020830184611c77565b60408101611ed38285611c5d565b6040518181016001600160401b03811182821017156120a157600080fd5b604052919050565b60006001600160401b038211156120bf57600080fd5b5060209081020190565b60006001600160401b038211156120df57600080fd5b506020601f91909101601f19160190565b60200190565b5190565b90815260200190565b919050565b600061151b82612118565b151590565b6001600160a01b031690565b60ff1690565b600061151b82612140565b600061151b826109e2565b600061151b82612108565b82818337506000910152565b60005b8381101561217257818101518382015260200161215a565b83811115610aea5750506000910152565b600061151b82600061151b8261219e565b601f01601f191690565b60601b90565b6121ad81612108565b81146121b857600080fd5b50565b6121ad81612113565b6121ad816109e256fea365627a7a723158207a1d8dfd286d14fcafd1812a4c44813691ac746a5a23fa711ac5551c9509654d6c6578706572696d656e74616cf564736f6c634300050c0040","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x5":"0x4a3c194eb88966178bfdd81744dddafed611b830"}},"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa":{"nonce":94,"balance":"0x35a9ced02802e622c6","code":"0x","storage":{}}}} \ No newline at end of file diff --git a/tsconfig.json b/tsconfig.json index 81306307..b8a01327 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -29,6 +29,12 @@ "./sandbox/**/*.ts", "./src/*.ts", "./scripts/**/*.ts", - "./test/**/*.ts" - ] + "./test/**/*.ts", + ], + "exclude": [ + "./sandbox/foundry/bin/anvil", + "./sandbox/foundry/bin/cast", + "./sandbox/foundry/bin/chisel", + "./sandbox/foundry/bin/forge", + ], } From aa14f49e8e071e6f051cbbbd4681a8696bae5846 Mon Sep 17 00:00:00 2001 From: derain Date: Thu, 23 May 2024 18:33:41 +0300 Subject: [PATCH 19/21] [REG-1273] - Fix assets copy command --- package.json | 2 +- sandbox/foundry/bin/.gitignore | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/package.json b/package.json index 32d0bfe4..ff8509a3 100644 --- a/package.json +++ b/package.json @@ -10,7 +10,7 @@ "compile": "hardhat compile --force;", "build:package": "yarn compile; rm -Rf dist/*; tsc --project tsconfig.build.json", "build:ci": "yarn build:package && yarn rebuild:sandbox && yarn copy:assets", - "copy:assets": "mkdir -p dist/sandbox/foundry/bin; cp sandbox/state.json dist/sandbox/; cp sandbox/foundry/foundryup.sh dist/sandbox/foundry; cp uns-config.json dist/; cp ens-config.json dist/;", + "copy:assets": "mkdir -p dist/sandbox/foundry/bin; cp sandbox/foundry/bin/.gitignore dist/sandbox/foundry/bin; cp sandbox/state.json dist/sandbox/; cp sandbox/foundry/foundryup.sh dist/sandbox/foundry; cp uns-config.json dist/; cp ens-config.json dist/;", "compile:size": "env ENABLE_CONTRACT_SIZER=true yarn compile", "coverage": "hardhat coverage", "test": "yarn test:sol && yarn test:sandbox", diff --git a/sandbox/foundry/bin/.gitignore b/sandbox/foundry/bin/.gitignore index 72e8ffc0..d6b7ef32 100644 --- a/sandbox/foundry/bin/.gitignore +++ b/sandbox/foundry/bin/.gitignore @@ -1 +1,2 @@ * +!.gitignore From 64e7eb5b6981aa64d7870d5519203964ae7613ee Mon Sep 17 00:00:00 2001 From: derain Date: Fri, 24 May 2024 12:52:42 +0300 Subject: [PATCH 20/21] [REG-1273] - Code review fixes --- artifacts/SeaportProxyBuyer.json | 4 +-- contracts/marketplace/SeaportProxyBuyer.sol | 39 ++++++++++++--------- ens-config.json | 8 ++--- package.json | 2 +- sandbox/foundry/bin/.gitignore | 1 + sandbox/foundry/bin/gitkeep | 0 sandbox/foundry/foundryup.sh | 5 +++ sandbox/state.json | 2 +- test/marketplace/SeaportProxyBuyer.test.ts | 18 ---------- 9 files changed, 36 insertions(+), 43 deletions(-) create mode 100644 sandbox/foundry/bin/gitkeep diff --git a/artifacts/SeaportProxyBuyer.json b/artifacts/SeaportProxyBuyer.json index 32c0b43e..ce871aaf 100644 --- a/artifacts/SeaportProxyBuyer.json +++ b/artifacts/SeaportProxyBuyer.json @@ -888,8 +888,8 @@ "type": "function" } ], - "bytecode": "0x608060405234801562000010575f80fd5b506200001b62000021565b620000e0565b5f54610100900460ff16156200008d5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b5f5460ff9081161015620000de575f805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b612ed380620000ee5f395ff3fe6080604052600436106101db575f3560e01c80638da5cb5b116100fd578063c4d66de811610092578063daea85c511610062578063daea85c51461055e578063e7acab241461057d578063f2fde38b1461059c578063ffa1ad74146105bb575f80fd5b8063c4d66de8146104e1578063d539139314610500578063d547741f14610520578063d9caed121461053f575f80fd5b8063a217fddf116100cd578063a217fddf14610452578063a3f4df7e14610465578063a4247400146104a3578063aa271e1a146104c2575f80fd5b80638da5cb5b146103d957806391d1485414610400578063983b2d561461041f578063986502751461043e575f80fd5b80635c975abb11610173578063715018a611610143578063715018a61461037f57806371e2a6571461039357806381c81d35146103b25780638456cb59146103c5575f80fd5b80635c975abb146103165780635fc1964f1461032e578063634486da1461034d5780636ccbae5f14610360575f80fd5b80633092afd5116101ae5780633092afd51461029c57806336568abe146102bb5780633f4ba83a146102da578063572b6c05146102ee575f80fd5b806301ffc9a7146101df5780631bf7e13e14610213578063248a9ca31461023f5780632f2ff15d1461027b575b5f80fd5b3480156101ea575f80fd5b506101fe6101f9366004611ee0565b6105eb565b60405190151581526020015b60405180910390f35b34801561021e575f80fd5b5061023261022d366004611f07565b610621565b60405161020a9190611fe9565b34801561024a575f80fd5b5061026d610259366004611ffb565b5f90815260fb602052604090206001015490565b60405190815260200161020a565b348015610286575f80fd5b5061029a610295366004612036565b6106ea565b005b3480156102a7575f80fd5b5061029a6102b6366004612064565b610713565b3480156102c6575f80fd5b5061029a6102d5366004612036565b610727565b3480156102e5575f80fd5b5061029a6107ba565b3480156102f9575f80fd5b506101fe610308366004612064565b6001600160a01b0316301490565b348015610321575f80fd5b5061012d5460ff166101fe565b348015610339575f80fd5b5061029a6103483660046120eb565b6107d4565b61029a61035b366004612064565b610811565b34801561036b575f80fd5b5061026d61037a366004611ffb565b6108d1565b34801561038a575f80fd5b5061029a61092a565b34801561039e575f80fd5b5061029a6103ad3660046120eb565b61093b565b61029a6103c0366004612064565b610978565b3480156103d0575f80fd5b5061029a6109f5565b3480156103e4575f80fd5b506097546040516001600160a01b03909116815260200161020a565b34801561040b575f80fd5b506101fe61041a366004612036565b610a0d565b34801561042a575f80fd5b5061029a610439366004612064565b610a37565b348015610449575f80fd5b5061029a610a48565b34801561045d575f80fd5b5061026d5f81565b348015610470575f80fd5b506102326040518060400160405280601381526020017229b2b0b837b93a10283937bc3c90213abcb2b960691b81525081565b3480156104ae575f80fd5b506101fe6104bd366004611f07565b610a61565b3480156104cd575f80fd5b506101fe6104dc366004612064565b610ab2565b3480156104ec575f80fd5b5061029a6104fb366004612064565b610aca565b34801561050b575f80fd5b5061026d5f80516020612ea783398151915281565b34801561052b575f80fd5b5061029a61053a366004612036565b610c21565b34801561054a575f80fd5b5061029a61055936600461218b565b610c45565b348015610569575f80fd5b5061029a610578366004612064565b610cf7565b348015610588575f80fd5b506101fe6105973660046121c9565b610dac565b3480156105a7575f80fd5b5061029a6105b6366004612064565b6111db565b3480156105c6575f80fd5b5061023260405180604001604052806005815260200164302e302e3160d81b81525081565b5f6001600160e01b03198216637965db0b60e01b148061061b57506301ffc9a760e01b6001600160e01b03198316145b92915050565b60605f5a9050610632858585610a61565b61064f57604051638baa579f60e01b815260040160405180910390fd5b6106df61065f6020870187612064565b3060408801358461067360608b018b61227b565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f920191909152506111f692505050565b9150505b9392505050565b5f82815260fb6020526040902060010154610704816112d4565b61070e83836112e5565b505050565b61071b61136b565b610724816113e4565b50565b61072f6113fb565b6001600160a01b0316816001600160a01b0316146107ac5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6107b68282611409565b5050565b6107c261136b565b6107ca61148d565b6107d26114d7565b565b6107dc61136b565b5f5b81518110156107b6576108098282815181106107fc576107fc6122bd565b60200260200101516113e4565b6001016107de565b61081c6104dc6113fb565b6108385760405162461bcd60e51b81526004016107a3906122d1565b6001600160a01b03811661088e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016107a3565b61089781611530565b61089f610a48565b6040516001600160a01b038216903480156108fc02915f818181858888f193505050501580156107b6573d5f803e3d5ffd5b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f90610923906060016040516020818303038152906040528051906020012090565b5492915050565b61093261136b565b6107d25f611547565b61094361136b565b5f5b81518110156107b657610970828281518110610963576109636122bd565b6020026020010151611530565b600101610945565b6109836104dc6113fb565b61099f5760405162461bcd60e51b81526004016107a3906122d1565b6001600160a01b0381166108975760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016107a3565b6109fd61136b565b610a05611598565b6107d26115df565b5f91825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610a3f61136b565b61072481611530565b6107d25f80516020612ea78339815191526102d56113fb565b5f610aaa610a6e85612306565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061161e92505050565b949350505050565b5f61061b5f80516020612ea783398151915283610a0d565b5f54610100900460ff1615808015610ae857505f54600160ff909116105b80610b015750303b158015610b0157505f5460ff166001145b610b645760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107a3565b5f805460ff191660011790558015610b85575f805461ff0019166101001790555b61015f80546001600160a01b0319166001600160a01b038416179055610ba9611759565b610bb1611786565b610bb9611786565b610bc1611786565b610bc96117ac565b610bd16117e2565b610bd9611819565b80156107b6575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b5f82815260fb6020526040902060010154610c3b816112d4565b61070e8383611409565b610c4d61136b565b600260335403610c6f5760405162461bcd60e51b81526004016107a3906123c2565b6002603355610c7c611598565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af1158015610cc8573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cec91906123f9565b505060016033555050565b610cff61136b565b600260335403610d215760405162461bcd60e51b81526004016107a3906123c2565b6002603355610d2e611598565b61015f5460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529082169063095ea7b3906044016020604051808303815f875af1158015610d7f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610da391906123f9565b50506001603355565b5f610db86104dc6113fb565b610dd45760405162461bcd60e51b81526004016107a3906122d1565b600260335403610df65760405162461bcd60e51b81526004016107a3906123c2565b6002603355610e03611598565b6001600160a01b038216610e2a576040516311d000e160e31b815260040160405180910390fd5b30610e358780612418565b610e46906040810190602001612064565b6001600160a01b031614610e6d57604051639d3c586b60e01b815260040160405180910390fd5b610e75611e67565b610e7f8780612418565b610e8d906020810190612064565b6001600160a01b03168152610ea28780612418565b610eb3906040810190602001612064565b6001600160a01b03166020820152610ecb8780612418565b610ed9906040810190612437565b808060200260200160405190810160405280939291908181526020015f905b82821015610f2457610f1560a08302860136819003810190612489565b81526020019060010190610ef8565b50505050506040820152610f388780612418565b610f46906060810190612506565b808060200260200160405190810160405280939291908181526020015f905b82821015610f9157610f8260c0830286013681900381019061254a565b81526020019060010190610f65565b50505050506060820152610fa58780612418565b610fb69060a08101906080016125e5565b81608001906004811115610fcc57610fcc6125fe565b90816004811115610fdf57610fdf6125fe565b905250610fec8780612418565b60a090810135908201526110008780612418565b60c090810135908201526110148780612418565b60e090810135908201526110288780612418565b610100908101359082015261103d8780612418565b610120908101359082015261015f54815160405163f07ec37360e01b81526001600160a01b03918216600482015291169063f07ec37390602401602060405180830381865afa158015611092573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110b69190612612565b61014082015261015f546040516379df72bd60e01b8152611133916001600160a01b0316906379df72bd906110ef908590600401612737565b602060405180830381865afa15801561110a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061112e9190612612565b61184c565b61015f546040516339eb2ac960e21b81526001600160a01b039091169063e7acab249061116c908a908a908a908a908a90600401612b24565b6020604051808303815f875af1158015611188573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111ac91906123f9565b9150816111cc57604051636725093760e01b815260040160405180910390fd5b50600160335595945050505050565b6111e361136b565b6111ec81611865565b6107245f826118db565b6060611201856118e5565b5f80876001600160a01b03168661121a8b8a898961194a565b6040516112279190612cfa565b5f604051808303815f8787f1925050503d805f8114611261576040519150601f19603f3d011682016040523d82523d5f602084013e611266565b606091505b509092509050611277603f87612d1f565b5a1161128557611285612d3e565b6112c582826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061197a565b925050505b9695505050505050565b610724816112e06113fb565b6119b3565b6112ef8282610a0d565b6107b6575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191660011790556113276113fb565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6113736113fb565b6001600160a01b031661138e6097546001600160a01b031690565b6001600160a01b0316146107d25760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107a3565b6107245f80516020612ea783398151915282610c21565b5f611404611a17565b905090565b6114138282610a0d565b156107b6575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191690556114496113fb565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b61012d5460ff166107d25760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b60448201526064016107a3565b6114df61148d565b61012d805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6115136113fb565b6040516001600160a01b03909116815260200160405180910390a1565b6107245f80516020612ea7833981519152826118db565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b61012d5460ff16156107d25760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b60448201526064016107a3565b6115e7611598565b61012d805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586115136113fb565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015611662573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116869190612612565b90505f6117338660600151805190602001208688602001516040516020016116d39392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156112ca575085516112ca906001600160a01b03168286611a34565b5f54610100900460ff1661177f5760405162461bcd60e51b81526004016107a390612d52565b6001603355565b5f54610100900460ff166107d25760405162461bcd60e51b81526004016107a390612d52565b5f54610100900460ff166117d25760405162461bcd60e51b81526004016107a390612d52565b6107d26117dd6113fb565b611547565b5f54610100900460ff166118085760405162461bcd60e51b81526004016107a390612d52565b6107d25f6118146113fb565b6118db565b5f54610100900460ff1661183f5760405162461bcd60e51b81526004016107a390612d52565b61012d805460ff19169055565b30330361185c5761072481611b6f565b610724816118e5565b61186d61136b565b6001600160a01b0381166118d25760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107a3565b61072481611547565b6107b682826112e5565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f906060016040516020818303038152906040528051906020012090506119398190565b54611945906001612d9d565b905550565b606082858560405160200161196193929190612db0565b6040516020818303038152906040529050949350505050565b606083156119895750816106e3565b8251156119995782518084602001fd5b8160405162461bcd60e51b81526004016107a39190611fe9565b6119bd8282610a0d565b6107b6576119d5816001600160a01b03166014611b99565b6119e0836020611b99565b6040516020016119f1929190612dee565b60408051601f198184030181529082905262461bcd60e51b82526107a391600401611fe9565b5f303303611a2c575060331936013560601c90565b503390565b90565b5f805f611a418585611d2e565b90925090505f816004811115611a5957611a596125fe565b148015611a775750856001600160a01b0316826001600160a01b0316145b15611a87576001925050506106e3565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401611aae929190612e62565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051611aec9190612cfa565b5f60405180830381855afa9150503d805f8114611b24576040519150601f19603f3d011682016040523d82523d5f602084013e611b29565b606091505b5091509150818015611b3c575080516020145b8015611b6357508051630b135d3f60e11b90611b619083016020908101908401612612565b145b98975050505050505050565b611b77611d70565b811461072457604051635637b6af60e11b8152600481018290526024016107a3565b60605f611ba7836002612e7a565b611bb2906002612d9d565b6001600160401b03811115611bc957611bc961207f565b6040519080825280601f01601f191660200182016040528015611bf3576020820181803683370190505b509050600360fc1b815f81518110611c0d57611c0d6122bd565b60200101906001600160f81b03191690815f1a905350600f60fb1b81600181518110611c3b57611c3b6122bd565b60200101906001600160f81b03191690815f1a9053505f611c5d846002612e7a565b611c68906001612d9d565b90505b6001811115611cdf576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611c9c57611c9c6122bd565b1a60f81b828281518110611cb257611cb26122bd565b60200101906001600160f81b03191690815f1a90535060049490941c93611cd881612e91565b9050611c6b565b5083156106e35760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016107a3565b5f808251604103611d62576020830151604084015160608501515f1a611d5687828585611d82565b94509450505050611d69565b505f905060025b9250929050565b5f303303611a315750601f1936013590565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115611db757505f90506003611e5e565b8460ff16601b14158015611dcf57508460ff16601c14155b15611ddf57505f90506004611e5e565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015611e30573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b038116611e58575f60019250925050611e5e565b91505f90505b94509492505050565b6040518061016001604052805f6001600160a01b031681526020015f6001600160a01b0316815260200160608152602001606081526020015f6004811115611eb157611eb16125fe565b81525f6020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b5f60208284031215611ef0575f80fd5b81356001600160e01b0319811681146106e3575f80fd5b5f805f60408486031215611f19575f80fd5b83356001600160401b0380821115611f2f575f80fd5b9085019060808288031215611f42575f80fd5b90935060208501359080821115611f57575f80fd5b818601915086601f830112611f6a575f80fd5b813581811115611f78575f80fd5b876020828501011115611f89575f80fd5b6020830194508093505050509250925092565b5f5b83811015611fb6578181015183820152602001611f9e565b50505f910152565b5f8151808452611fd5816020860160208601611f9c565b601f01601f19169290920160200192915050565b602081525f6106e36020830184611fbe565b5f6020828403121561200b575f80fd5b5035919050565b6001600160a01b0381168114610724575f80fd5b803561203181612012565b919050565b5f8060408385031215612047575f80fd5b82359150602083013561205981612012565b809150509250929050565b5f60208284031215612074575f80fd5b81356106e381612012565b634e487b7160e01b5f52604160045260245ffd5b604051608081016001600160401b03811182821017156120b5576120b561207f565b60405290565b604051601f8201601f191681016001600160401b03811182821017156120e3576120e361207f565b604052919050565b5f60208083850312156120fc575f80fd5b82356001600160401b0380821115612112575f80fd5b818501915085601f830112612125575f80fd5b8135818111156121375761213761207f565b8060051b91506121488483016120bb565b8181529183018401918481019088841115612161575f80fd5b938501935b83851015611b63578435925061217b83612012565b8282529385019390850190612166565b5f805f6060848603121561219d575f80fd5b83356121a881612012565b925060208401356121b881612012565b929592945050506040919091013590565b5f805f805f608086880312156121dd575f80fd5b85356001600160401b03808211156121f3575f80fd5b9087019060a0828a031215612206575f80fd5b9095506020870135908082111561221b575f80fd5b818801915088601f83011261222e575f80fd5b81358181111561223c575f80fd5b8960208260051b8501011115612250575f80fd5b6020830196508095505050506040860135915061226f60608701612026565b90509295509295909350565b5f808335601e19843603018112612290575f80fd5b8301803591506001600160401b038211156122a9575f80fd5b602001915036819003821315611d69575f80fd5b634e487b7160e01b5f52603260045260245ffd5b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b5f60808236031215612316575f80fd5b61231e612093565b823561232981612012565b8152602083810135818301526040808501359083015260608401356001600160401b0380821115612358575f80fd5b9085019036601f83011261236a575f80fd5b81358181111561237c5761237c61207f565b61238e601f8201601f191685016120bb565b915080825236848285010111156123a3575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b5f60208284031215612409575f80fd5b815180151581146106e3575f80fd5b5f823561015e1983360301811261242d575f80fd5b9190910192915050565b5f808335601e1984360301811261244c575f80fd5b8301803591506001600160401b03821115612465575f80fd5b602001915060a081023603821315611d69575f80fd5b803560068110612031575f80fd5b5f60a08284031215612499575f80fd5b60405160a081018181106001600160401b03821117156124bb576124bb61207f565b6040526124c78361247b565b815260208301356124d781612012565b806020830152506040830135604082015260608301356060820152608083013560808201528091505092915050565b5f808335601e1984360301811261251b575f80fd5b8301803591506001600160401b03821115612534575f80fd5b602001915060c081023603821315611d69575f80fd5b5f60c0828403121561255a575f80fd5b60405160c081018181106001600160401b038211171561257c5761257c61207f565b6040526125888361247b565b8152602083013561259881612012565b8060208301525060408301356040820152606083013560608201526080830135608082015260a08301356125cb81612012565b60a08201529392505050565b803560058110612031575f80fd5b5f602082840312156125f5575f80fd5b6106e3826125d7565b634e487b7160e01b5f52602160045260245ffd5b5f60208284031215612622575f80fd5b5051919050565b60068110612639576126396125fe565b9052565b5f815180845260208085019450602084015f5b838110156126a6578151612665888251612629565b838101516001600160a01b03168885015260408082015190890152606080820151908901526080908101519088015260a09096019590820190600101612650565b509495945050505050565b5f815180845260208085019450602084015f5b838110156126a65781516126d9888251612629565b808401516001600160a01b0390811689860152604080830151908a0152606080830151908a0152608080830151908a015260a091820151169088015260c090960195908201906001016126c4565b60058110612639576126396125fe565b602081526127516020820183516001600160a01b03169052565b5f602083015161276c60408401826001600160a01b03169052565b50604083015161016080606085015261278961018085018361263d565b91506060850151601f198584030160808601526127a683826126b1565b92505060808501516127bb60a0860182612727565b5060a085015160c085015260c085015160e085015260e0850151610100818187015280870151915050610120818187015280870151915050610140818187015280870151838701525050508091505092915050565b5f808335601e19843603018112612825575f80fd5b83016020810192503590506001600160401b03811115612843575f80fd5b60a081023603821315611d69575f80fd5b8183525f60208085019450825f5b858110156126a65761287c876128778461247b565b612629565b8282013561288981612012565b6001600160a01b03168388015260408281013590880152606080830135908801526080808301359088015260a09687019690910190600101612862565b5f808335601e198436030181126128db575f80fd5b83016020810192503590506001600160401b038111156128f9575f80fd5b60c081023603821315611d69575f80fd5b8183525f60208085019450825f5b858110156126a65761292d876128778461247b565b8282013561293a81612012565b6001600160a01b039081168885015260408381013590890152606080840135908901526080808401359089015260a0908382013561297781612012565b169088015260c0968701969190910190600101612918565b80356001600160781b0381168114612031575f80fd5b5f808335601e198436030181126129ba575f80fd5b83016020810192503590506001600160401b038111156129d8575f80fd5b803603821315611d69575f80fd5b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b8183525f6001600160fb1b03831115612a25575f80fd5b8260051b80836020870137939093016020019392505050565b8183526020808401935f91600585811b8301820185855b88811015612b1657858303601f19018a52813536899003609e19018112612a7a575f80fd5b88018035845260a08682013560028110612a92575f80fd5b85880152604082810135908601526060808301359086015260808083013536849003601e19018112612ac2575f80fd5b9092018781019290356001600160401b03811115612ade575f80fd5b80881b3603841315612aee575f80fd5b8282880152612b008388018286612a0e565b9d89019d96505050928601925050600101612a55565b509098975050505050505050565b608081525f610120873561015e19893603018112612b40575f80fd5b60a060808501528801612b65828501612b5883612026565b6001600160a01b03169052565b612b7160208201612026565b610140612b88818701836001600160a01b03169052565b612b956040840184612810565b610160888101529250612bad61028088018483612854565b925050612bbd60608401846128c6565b87840361011f1901610180890152612bd684828461290a565b93505050612be6608084016125d7565b612bf46101a0880182612727565b5060a08301356101c087015260c08301356101e087015260e0830135610200870152610100808401356102208801528484013561024088015281840135610260880152612c4360208d0161298f565b6001600160781b03811660a08901529450612c6060408d0161298f565b6001600160781b03811660c08901529450612c7e60608d018d6129a5565b95509350607f199150818784030160e0880152612c9c8386866129e6565b9450612cab60808d018d6129a5565b945092508187860301818801525050612cc58383836129e6565b925050508281036020840152612cdc818789612a3e565b9150508360408301526112ca60608301846001600160a01b03169052565b5f825161242d818460208701611f9c565b634e487b7160e01b5f52601160045260245ffd5b5f82612d3957634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b8082018082111561061b5761061b612d0b565b5f8451612dc1818460208901611f9c565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081525f8351612e25816017850160208801611f9c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351612e56816028840160208801611f9c565b01602801949350505050565b828152604060208201525f610aaa6040830184611fbe565b808202811582820484141761061b5761061b612d0b565b5f81612e9f57612e9f612d0b565b505f19019056fe9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000818000a", - "deployedBytecode": "0x6080604052600436106101db575f3560e01c80638da5cb5b116100fd578063c4d66de811610092578063daea85c511610062578063daea85c51461055e578063e7acab241461057d578063f2fde38b1461059c578063ffa1ad74146105bb575f80fd5b8063c4d66de8146104e1578063d539139314610500578063d547741f14610520578063d9caed121461053f575f80fd5b8063a217fddf116100cd578063a217fddf14610452578063a3f4df7e14610465578063a4247400146104a3578063aa271e1a146104c2575f80fd5b80638da5cb5b146103d957806391d1485414610400578063983b2d561461041f578063986502751461043e575f80fd5b80635c975abb11610173578063715018a611610143578063715018a61461037f57806371e2a6571461039357806381c81d35146103b25780638456cb59146103c5575f80fd5b80635c975abb146103165780635fc1964f1461032e578063634486da1461034d5780636ccbae5f14610360575f80fd5b80633092afd5116101ae5780633092afd51461029c57806336568abe146102bb5780633f4ba83a146102da578063572b6c05146102ee575f80fd5b806301ffc9a7146101df5780631bf7e13e14610213578063248a9ca31461023f5780632f2ff15d1461027b575b5f80fd5b3480156101ea575f80fd5b506101fe6101f9366004611ee0565b6105eb565b60405190151581526020015b60405180910390f35b34801561021e575f80fd5b5061023261022d366004611f07565b610621565b60405161020a9190611fe9565b34801561024a575f80fd5b5061026d610259366004611ffb565b5f90815260fb602052604090206001015490565b60405190815260200161020a565b348015610286575f80fd5b5061029a610295366004612036565b6106ea565b005b3480156102a7575f80fd5b5061029a6102b6366004612064565b610713565b3480156102c6575f80fd5b5061029a6102d5366004612036565b610727565b3480156102e5575f80fd5b5061029a6107ba565b3480156102f9575f80fd5b506101fe610308366004612064565b6001600160a01b0316301490565b348015610321575f80fd5b5061012d5460ff166101fe565b348015610339575f80fd5b5061029a6103483660046120eb565b6107d4565b61029a61035b366004612064565b610811565b34801561036b575f80fd5b5061026d61037a366004611ffb565b6108d1565b34801561038a575f80fd5b5061029a61092a565b34801561039e575f80fd5b5061029a6103ad3660046120eb565b61093b565b61029a6103c0366004612064565b610978565b3480156103d0575f80fd5b5061029a6109f5565b3480156103e4575f80fd5b506097546040516001600160a01b03909116815260200161020a565b34801561040b575f80fd5b506101fe61041a366004612036565b610a0d565b34801561042a575f80fd5b5061029a610439366004612064565b610a37565b348015610449575f80fd5b5061029a610a48565b34801561045d575f80fd5b5061026d5f81565b348015610470575f80fd5b506102326040518060400160405280601381526020017229b2b0b837b93a10283937bc3c90213abcb2b960691b81525081565b3480156104ae575f80fd5b506101fe6104bd366004611f07565b610a61565b3480156104cd575f80fd5b506101fe6104dc366004612064565b610ab2565b3480156104ec575f80fd5b5061029a6104fb366004612064565b610aca565b34801561050b575f80fd5b5061026d5f80516020612ea783398151915281565b34801561052b575f80fd5b5061029a61053a366004612036565b610c21565b34801561054a575f80fd5b5061029a61055936600461218b565b610c45565b348015610569575f80fd5b5061029a610578366004612064565b610cf7565b348015610588575f80fd5b506101fe6105973660046121c9565b610dac565b3480156105a7575f80fd5b5061029a6105b6366004612064565b6111db565b3480156105c6575f80fd5b5061023260405180604001604052806005815260200164302e302e3160d81b81525081565b5f6001600160e01b03198216637965db0b60e01b148061061b57506301ffc9a760e01b6001600160e01b03198316145b92915050565b60605f5a9050610632858585610a61565b61064f57604051638baa579f60e01b815260040160405180910390fd5b6106df61065f6020870187612064565b3060408801358461067360608b018b61227b565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f920191909152506111f692505050565b9150505b9392505050565b5f82815260fb6020526040902060010154610704816112d4565b61070e83836112e5565b505050565b61071b61136b565b610724816113e4565b50565b61072f6113fb565b6001600160a01b0316816001600160a01b0316146107ac5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6107b68282611409565b5050565b6107c261136b565b6107ca61148d565b6107d26114d7565b565b6107dc61136b565b5f5b81518110156107b6576108098282815181106107fc576107fc6122bd565b60200260200101516113e4565b6001016107de565b61081c6104dc6113fb565b6108385760405162461bcd60e51b81526004016107a3906122d1565b6001600160a01b03811661088e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016107a3565b61089781611530565b61089f610a48565b6040516001600160a01b038216903480156108fc02915f818181858888f193505050501580156107b6573d5f803e3d5ffd5b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f90610923906060016040516020818303038152906040528051906020012090565b5492915050565b61093261136b565b6107d25f611547565b61094361136b565b5f5b81518110156107b657610970828281518110610963576109636122bd565b6020026020010151611530565b600101610945565b6109836104dc6113fb565b61099f5760405162461bcd60e51b81526004016107a3906122d1565b6001600160a01b0381166108975760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016107a3565b6109fd61136b565b610a05611598565b6107d26115df565b5f91825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610a3f61136b565b61072481611530565b6107d25f80516020612ea78339815191526102d56113fb565b5f610aaa610a6e85612306565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061161e92505050565b949350505050565b5f61061b5f80516020612ea783398151915283610a0d565b5f54610100900460ff1615808015610ae857505f54600160ff909116105b80610b015750303b158015610b0157505f5460ff166001145b610b645760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107a3565b5f805460ff191660011790558015610b85575f805461ff0019166101001790555b61015f80546001600160a01b0319166001600160a01b038416179055610ba9611759565b610bb1611786565b610bb9611786565b610bc1611786565b610bc96117ac565b610bd16117e2565b610bd9611819565b80156107b6575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b5f82815260fb6020526040902060010154610c3b816112d4565b61070e8383611409565b610c4d61136b565b600260335403610c6f5760405162461bcd60e51b81526004016107a3906123c2565b6002603355610c7c611598565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af1158015610cc8573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cec91906123f9565b505060016033555050565b610cff61136b565b600260335403610d215760405162461bcd60e51b81526004016107a3906123c2565b6002603355610d2e611598565b61015f5460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529082169063095ea7b3906044016020604051808303815f875af1158015610d7f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610da391906123f9565b50506001603355565b5f610db86104dc6113fb565b610dd45760405162461bcd60e51b81526004016107a3906122d1565b600260335403610df65760405162461bcd60e51b81526004016107a3906123c2565b6002603355610e03611598565b6001600160a01b038216610e2a576040516311d000e160e31b815260040160405180910390fd5b30610e358780612418565b610e46906040810190602001612064565b6001600160a01b031614610e6d57604051639d3c586b60e01b815260040160405180910390fd5b610e75611e67565b610e7f8780612418565b610e8d906020810190612064565b6001600160a01b03168152610ea28780612418565b610eb3906040810190602001612064565b6001600160a01b03166020820152610ecb8780612418565b610ed9906040810190612437565b808060200260200160405190810160405280939291908181526020015f905b82821015610f2457610f1560a08302860136819003810190612489565b81526020019060010190610ef8565b50505050506040820152610f388780612418565b610f46906060810190612506565b808060200260200160405190810160405280939291908181526020015f905b82821015610f9157610f8260c0830286013681900381019061254a565b81526020019060010190610f65565b50505050506060820152610fa58780612418565b610fb69060a08101906080016125e5565b81608001906004811115610fcc57610fcc6125fe565b90816004811115610fdf57610fdf6125fe565b905250610fec8780612418565b60a090810135908201526110008780612418565b60c090810135908201526110148780612418565b60e090810135908201526110288780612418565b610100908101359082015261103d8780612418565b610120908101359082015261015f54815160405163f07ec37360e01b81526001600160a01b03918216600482015291169063f07ec37390602401602060405180830381865afa158015611092573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110b69190612612565b61014082015261015f546040516379df72bd60e01b8152611133916001600160a01b0316906379df72bd906110ef908590600401612737565b602060405180830381865afa15801561110a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061112e9190612612565b61184c565b61015f546040516339eb2ac960e21b81526001600160a01b039091169063e7acab249061116c908a908a908a908a908a90600401612b24565b6020604051808303815f875af1158015611188573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111ac91906123f9565b9150816111cc57604051636725093760e01b815260040160405180910390fd5b50600160335595945050505050565b6111e361136b565b6111ec81611865565b6107245f826118db565b6060611201856118e5565b5f80876001600160a01b03168661121a8b8a898961194a565b6040516112279190612cfa565b5f604051808303815f8787f1925050503d805f8114611261576040519150601f19603f3d011682016040523d82523d5f602084013e611266565b606091505b509092509050611277603f87612d1f565b5a1161128557611285612d3e565b6112c582826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061197a565b925050505b9695505050505050565b610724816112e06113fb565b6119b3565b6112ef8282610a0d565b6107b6575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191660011790556113276113fb565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6113736113fb565b6001600160a01b031661138e6097546001600160a01b031690565b6001600160a01b0316146107d25760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107a3565b6107245f80516020612ea783398151915282610c21565b5f611404611a17565b905090565b6114138282610a0d565b156107b6575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191690556114496113fb565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b61012d5460ff166107d25760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b60448201526064016107a3565b6114df61148d565b61012d805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6115136113fb565b6040516001600160a01b03909116815260200160405180910390a1565b6107245f80516020612ea7833981519152826118db565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b61012d5460ff16156107d25760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b60448201526064016107a3565b6115e7611598565b61012d805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586115136113fb565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015611662573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116869190612612565b90505f6117338660600151805190602001208688602001516040516020016116d39392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156112ca575085516112ca906001600160a01b03168286611a34565b5f54610100900460ff1661177f5760405162461bcd60e51b81526004016107a390612d52565b6001603355565b5f54610100900460ff166107d25760405162461bcd60e51b81526004016107a390612d52565b5f54610100900460ff166117d25760405162461bcd60e51b81526004016107a390612d52565b6107d26117dd6113fb565b611547565b5f54610100900460ff166118085760405162461bcd60e51b81526004016107a390612d52565b6107d25f6118146113fb565b6118db565b5f54610100900460ff1661183f5760405162461bcd60e51b81526004016107a390612d52565b61012d805460ff19169055565b30330361185c5761072481611b6f565b610724816118e5565b61186d61136b565b6001600160a01b0381166118d25760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107a3565b61072481611547565b6107b682826112e5565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f906060016040516020818303038152906040528051906020012090506119398190565b54611945906001612d9d565b905550565b606082858560405160200161196193929190612db0565b6040516020818303038152906040529050949350505050565b606083156119895750816106e3565b8251156119995782518084602001fd5b8160405162461bcd60e51b81526004016107a39190611fe9565b6119bd8282610a0d565b6107b6576119d5816001600160a01b03166014611b99565b6119e0836020611b99565b6040516020016119f1929190612dee565b60408051601f198184030181529082905262461bcd60e51b82526107a391600401611fe9565b5f303303611a2c575060331936013560601c90565b503390565b90565b5f805f611a418585611d2e565b90925090505f816004811115611a5957611a596125fe565b148015611a775750856001600160a01b0316826001600160a01b0316145b15611a87576001925050506106e3565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401611aae929190612e62565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051611aec9190612cfa565b5f60405180830381855afa9150503d805f8114611b24576040519150601f19603f3d011682016040523d82523d5f602084013e611b29565b606091505b5091509150818015611b3c575080516020145b8015611b6357508051630b135d3f60e11b90611b619083016020908101908401612612565b145b98975050505050505050565b611b77611d70565b811461072457604051635637b6af60e11b8152600481018290526024016107a3565b60605f611ba7836002612e7a565b611bb2906002612d9d565b6001600160401b03811115611bc957611bc961207f565b6040519080825280601f01601f191660200182016040528015611bf3576020820181803683370190505b509050600360fc1b815f81518110611c0d57611c0d6122bd565b60200101906001600160f81b03191690815f1a905350600f60fb1b81600181518110611c3b57611c3b6122bd565b60200101906001600160f81b03191690815f1a9053505f611c5d846002612e7a565b611c68906001612d9d565b90505b6001811115611cdf576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611c9c57611c9c6122bd565b1a60f81b828281518110611cb257611cb26122bd565b60200101906001600160f81b03191690815f1a90535060049490941c93611cd881612e91565b9050611c6b565b5083156106e35760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016107a3565b5f808251604103611d62576020830151604084015160608501515f1a611d5687828585611d82565b94509450505050611d69565b505f905060025b9250929050565b5f303303611a315750601f1936013590565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115611db757505f90506003611e5e565b8460ff16601b14158015611dcf57508460ff16601c14155b15611ddf57505f90506004611e5e565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015611e30573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b038116611e58575f60019250925050611e5e565b91505f90505b94509492505050565b6040518061016001604052805f6001600160a01b031681526020015f6001600160a01b0316815260200160608152602001606081526020015f6004811115611eb157611eb16125fe565b81525f6020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b5f60208284031215611ef0575f80fd5b81356001600160e01b0319811681146106e3575f80fd5b5f805f60408486031215611f19575f80fd5b83356001600160401b0380821115611f2f575f80fd5b9085019060808288031215611f42575f80fd5b90935060208501359080821115611f57575f80fd5b818601915086601f830112611f6a575f80fd5b813581811115611f78575f80fd5b876020828501011115611f89575f80fd5b6020830194508093505050509250925092565b5f5b83811015611fb6578181015183820152602001611f9e565b50505f910152565b5f8151808452611fd5816020860160208601611f9c565b601f01601f19169290920160200192915050565b602081525f6106e36020830184611fbe565b5f6020828403121561200b575f80fd5b5035919050565b6001600160a01b0381168114610724575f80fd5b803561203181612012565b919050565b5f8060408385031215612047575f80fd5b82359150602083013561205981612012565b809150509250929050565b5f60208284031215612074575f80fd5b81356106e381612012565b634e487b7160e01b5f52604160045260245ffd5b604051608081016001600160401b03811182821017156120b5576120b561207f565b60405290565b604051601f8201601f191681016001600160401b03811182821017156120e3576120e361207f565b604052919050565b5f60208083850312156120fc575f80fd5b82356001600160401b0380821115612112575f80fd5b818501915085601f830112612125575f80fd5b8135818111156121375761213761207f565b8060051b91506121488483016120bb565b8181529183018401918481019088841115612161575f80fd5b938501935b83851015611b63578435925061217b83612012565b8282529385019390850190612166565b5f805f6060848603121561219d575f80fd5b83356121a881612012565b925060208401356121b881612012565b929592945050506040919091013590565b5f805f805f608086880312156121dd575f80fd5b85356001600160401b03808211156121f3575f80fd5b9087019060a0828a031215612206575f80fd5b9095506020870135908082111561221b575f80fd5b818801915088601f83011261222e575f80fd5b81358181111561223c575f80fd5b8960208260051b8501011115612250575f80fd5b6020830196508095505050506040860135915061226f60608701612026565b90509295509295909350565b5f808335601e19843603018112612290575f80fd5b8301803591506001600160401b038211156122a9575f80fd5b602001915036819003821315611d69575f80fd5b634e487b7160e01b5f52603260045260245ffd5b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b5f60808236031215612316575f80fd5b61231e612093565b823561232981612012565b8152602083810135818301526040808501359083015260608401356001600160401b0380821115612358575f80fd5b9085019036601f83011261236a575f80fd5b81358181111561237c5761237c61207f565b61238e601f8201601f191685016120bb565b915080825236848285010111156123a3575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b5f60208284031215612409575f80fd5b815180151581146106e3575f80fd5b5f823561015e1983360301811261242d575f80fd5b9190910192915050565b5f808335601e1984360301811261244c575f80fd5b8301803591506001600160401b03821115612465575f80fd5b602001915060a081023603821315611d69575f80fd5b803560068110612031575f80fd5b5f60a08284031215612499575f80fd5b60405160a081018181106001600160401b03821117156124bb576124bb61207f565b6040526124c78361247b565b815260208301356124d781612012565b806020830152506040830135604082015260608301356060820152608083013560808201528091505092915050565b5f808335601e1984360301811261251b575f80fd5b8301803591506001600160401b03821115612534575f80fd5b602001915060c081023603821315611d69575f80fd5b5f60c0828403121561255a575f80fd5b60405160c081018181106001600160401b038211171561257c5761257c61207f565b6040526125888361247b565b8152602083013561259881612012565b8060208301525060408301356040820152606083013560608201526080830135608082015260a08301356125cb81612012565b60a08201529392505050565b803560058110612031575f80fd5b5f602082840312156125f5575f80fd5b6106e3826125d7565b634e487b7160e01b5f52602160045260245ffd5b5f60208284031215612622575f80fd5b5051919050565b60068110612639576126396125fe565b9052565b5f815180845260208085019450602084015f5b838110156126a6578151612665888251612629565b838101516001600160a01b03168885015260408082015190890152606080820151908901526080908101519088015260a09096019590820190600101612650565b509495945050505050565b5f815180845260208085019450602084015f5b838110156126a65781516126d9888251612629565b808401516001600160a01b0390811689860152604080830151908a0152606080830151908a0152608080830151908a015260a091820151169088015260c090960195908201906001016126c4565b60058110612639576126396125fe565b602081526127516020820183516001600160a01b03169052565b5f602083015161276c60408401826001600160a01b03169052565b50604083015161016080606085015261278961018085018361263d565b91506060850151601f198584030160808601526127a683826126b1565b92505060808501516127bb60a0860182612727565b5060a085015160c085015260c085015160e085015260e0850151610100818187015280870151915050610120818187015280870151915050610140818187015280870151838701525050508091505092915050565b5f808335601e19843603018112612825575f80fd5b83016020810192503590506001600160401b03811115612843575f80fd5b60a081023603821315611d69575f80fd5b8183525f60208085019450825f5b858110156126a65761287c876128778461247b565b612629565b8282013561288981612012565b6001600160a01b03168388015260408281013590880152606080830135908801526080808301359088015260a09687019690910190600101612862565b5f808335601e198436030181126128db575f80fd5b83016020810192503590506001600160401b038111156128f9575f80fd5b60c081023603821315611d69575f80fd5b8183525f60208085019450825f5b858110156126a65761292d876128778461247b565b8282013561293a81612012565b6001600160a01b039081168885015260408381013590890152606080840135908901526080808401359089015260a0908382013561297781612012565b169088015260c0968701969190910190600101612918565b80356001600160781b0381168114612031575f80fd5b5f808335601e198436030181126129ba575f80fd5b83016020810192503590506001600160401b038111156129d8575f80fd5b803603821315611d69575f80fd5b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b8183525f6001600160fb1b03831115612a25575f80fd5b8260051b80836020870137939093016020019392505050565b8183526020808401935f91600585811b8301820185855b88811015612b1657858303601f19018a52813536899003609e19018112612a7a575f80fd5b88018035845260a08682013560028110612a92575f80fd5b85880152604082810135908601526060808301359086015260808083013536849003601e19018112612ac2575f80fd5b9092018781019290356001600160401b03811115612ade575f80fd5b80881b3603841315612aee575f80fd5b8282880152612b008388018286612a0e565b9d89019d96505050928601925050600101612a55565b509098975050505050505050565b608081525f610120873561015e19893603018112612b40575f80fd5b60a060808501528801612b65828501612b5883612026565b6001600160a01b03169052565b612b7160208201612026565b610140612b88818701836001600160a01b03169052565b612b956040840184612810565b610160888101529250612bad61028088018483612854565b925050612bbd60608401846128c6565b87840361011f1901610180890152612bd684828461290a565b93505050612be6608084016125d7565b612bf46101a0880182612727565b5060a08301356101c087015260c08301356101e087015260e0830135610200870152610100808401356102208801528484013561024088015281840135610260880152612c4360208d0161298f565b6001600160781b03811660a08901529450612c6060408d0161298f565b6001600160781b03811660c08901529450612c7e60608d018d6129a5565b95509350607f199150818784030160e0880152612c9c8386866129e6565b9450612cab60808d018d6129a5565b945092508187860301818801525050612cc58383836129e6565b925050508281036020840152612cdc818789612a3e565b9150508360408301526112ca60608301846001600160a01b03169052565b5f825161242d818460208701611f9c565b634e487b7160e01b5f52601160045260245ffd5b5f82612d3957634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b8082018082111561061b5761061b612d0b565b5f8451612dc1818460208901611f9c565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081525f8351612e25816017850160208801611f9c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351612e56816028840160208801611f9c565b01602801949350505050565b828152604060208201525f610aaa6040830184611fbe565b808202811582820484141761061b5761061b612d0b565b5f81612e9f57612e9f612d0b565b505f19019056fe9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000818000a", + "bytecode": "0x608060405234801562000010575f80fd5b506200001b62000021565b620000e0565b5f54610100900460ff16156200008d5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b5f5460ff9081161015620000de575f805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b612e5b80620000ee5f395ff3fe6080604052600436106101db575f3560e01c80638da5cb5b116100fd578063c4d66de811610092578063daea85c511610062578063daea85c51461055e578063e7acab241461057d578063f2fde38b1461059c578063ffa1ad74146105bb575f80fd5b8063c4d66de8146104e1578063d539139314610500578063d547741f14610520578063d9caed121461053f575f80fd5b8063a217fddf116100cd578063a217fddf14610452578063a3f4df7e14610465578063a4247400146104a3578063aa271e1a146104c2575f80fd5b80638da5cb5b146103d957806391d1485414610400578063983b2d561461041f578063986502751461043e575f80fd5b80635c975abb11610173578063715018a611610143578063715018a61461037f57806371e2a6571461039357806381c81d35146103b25780638456cb59146103c5575f80fd5b80635c975abb146103165780635fc1964f1461032e578063634486da1461034d5780636ccbae5f14610360575f80fd5b80633092afd5116101ae5780633092afd51461029c57806336568abe146102bb5780633f4ba83a146102da578063572b6c05146102ee575f80fd5b806301ffc9a7146101df5780631bf7e13e14610213578063248a9ca31461023f5780632f2ff15d1461027b575b5f80fd5b3480156101ea575f80fd5b506101fe6101f9366004611e68565b6105eb565b60405190151581526020015b60405180910390f35b34801561021e575f80fd5b5061023261022d366004611e8f565b610621565b60405161020a9190611f71565b34801561024a575f80fd5b5061026d610259366004611f83565b5f90815260fb602052604090206001015490565b60405190815260200161020a565b348015610286575f80fd5b5061029a610295366004611fbe565b6106ea565b005b3480156102a7575f80fd5b5061029a6102b6366004611fec565b610713565b3480156102c6575f80fd5b5061029a6102d5366004611fbe565b610727565b3480156102e5575f80fd5b5061029a6107ba565b3480156102f9575f80fd5b506101fe610308366004611fec565b6001600160a01b0316301490565b348015610321575f80fd5b5061012d5460ff166101fe565b348015610339575f80fd5b5061029a610348366004612073565b6107d4565b61029a61035b366004611fec565b610811565b34801561036b575f80fd5b5061026d61037a366004611f83565b6108d1565b34801561038a575f80fd5b5061029a61092a565b34801561039e575f80fd5b5061029a6103ad366004612073565b61093b565b61029a6103c0366004611fec565b610978565b3480156103d0575f80fd5b5061029a6109f5565b3480156103e4575f80fd5b506097546040516001600160a01b03909116815260200161020a565b34801561040b575f80fd5b506101fe61041a366004611fbe565b610a0d565b34801561042a575f80fd5b5061029a610439366004611fec565b610a37565b348015610449575f80fd5b5061029a610a48565b34801561045d575f80fd5b5061026d5f81565b348015610470575f80fd5b506102326040518060400160405280601381526020017229b2b0b837b93a10283937bc3c90213abcb2b960691b81525081565b3480156104ae575f80fd5b506101fe6104bd366004611e8f565b610a61565b3480156104cd575f80fd5b506101fe6104dc366004611fec565b610ab2565b3480156104ec575f80fd5b5061029a6104fb366004611fec565b610aca565b34801561050b575f80fd5b5061026d5f80516020612e2f83398151915281565b34801561052b575f80fd5b5061029a61053a366004611fbe565b610c21565b34801561054a575f80fd5b5061029a610559366004612113565b610c45565b348015610569575f80fd5b5061029a610578366004611fec565b610cef565b348015610588575f80fd5b506101fe610597366004612151565b610d9c565b3480156105a7575f80fd5b5061029a6105b6366004611fec565b6111dc565b3480156105c6575f80fd5b50610232604051806040016040528060058152602001640302e312e360dc1b81525081565b5f6001600160e01b03198216637965db0b60e01b148061061b57506301ffc9a760e01b6001600160e01b03198316145b92915050565b60605f5a9050610632858585610a61565b61064f57604051638baa579f60e01b815260040160405180910390fd5b6106df61065f6020870187611fec565b3060408801358461067360608b018b612203565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f920191909152506111f792505050565b9150505b9392505050565b5f82815260fb6020526040902060010154610704816112d5565b61070e83836112e6565b505050565b61071b61136c565b610724816113e5565b50565b61072f6113fc565b6001600160a01b0316816001600160a01b0316146107ac5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6107b6828261140a565b5050565b6107c261136c565b6107ca61148e565b6107d26114d8565b565b6107dc61136c565b5f5b81518110156107b6576108098282815181106107fc576107fc612245565b60200260200101516113e5565b6001016107de565b61081c6104dc6113fc565b6108385760405162461bcd60e51b81526004016107a390612259565b6001600160a01b03811661088e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016107a3565b61089781611531565b61089f610a48565b6040516001600160a01b038216903480156108fc02915f818181858888f193505050501580156107b6573d5f803e3d5ffd5b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f90610923906060016040516020818303038152906040528051906020012090565b5492915050565b61093261136c565b6107d25f611548565b61094361136c565b5f5b81518110156107b65761097082828151811061096357610963612245565b6020026020010151611531565b600101610945565b6109836104dc6113fc565b61099f5760405162461bcd60e51b81526004016107a390612259565b6001600160a01b0381166108975760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016107a3565b6109fd61136c565b610a05611599565b6107d26115e0565b5f91825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610a3f61136c565b61072481611531565b6107d25f80516020612e2f8339815191526102d56113fc565b5f610aaa610a6e8561228e565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061161f92505050565b949350505050565b5f61061b5f80516020612e2f83398151915283610a0d565b5f54610100900460ff1615808015610ae857505f54600160ff909116105b80610b015750303b158015610b0157505f5460ff166001145b610b645760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107a3565b5f805460ff191660011790558015610b85575f805461ff0019166101001790555b61015f80546001600160a01b0319166001600160a01b038416179055610ba961175a565b610bb1611787565b610bb9611787565b610bc1611787565b610bc96117ad565b610bd16117e3565b610bd961181a565b80156107b6575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b5f82815260fb6020526040902060010154610c3b816112d5565b61070e838361140a565b610c4d61136c565b600260335403610c6f5760405162461bcd60e51b81526004016107a39061234a565b600260335560405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af1158015610cc0573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ce49190612381565b505060016033555050565b610cf761136c565b600260335403610d195760405162461bcd60e51b81526004016107a39061234a565b600260335561015f5460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529082169063095ea7b3906044016020604051808303815f875af1158015610d6f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d939190612381565b50506001603355565b5f610da86104dc6113fc565b610dc45760405162461bcd60e51b81526004016107a390612259565b600260335403610de65760405162461bcd60e51b81526004016107a39061234a565b6002603355610df3611599565b6001600160a01b038216610e1a576040516311d000e160e31b815260040160405180910390fd5b30610e2587806123a0565b610e36906040810190602001611fec565b6001600160a01b031614610e5d57604051639d3c586b60e01b815260040160405180910390fd5b61015f54604080516101608101909152611135916001600160a01b0316906379df72bd9080610e8c8b806123a0565b610e9a906020810190611fec565b6001600160a01b03168152602001610eb28b806123a0565b610ec3906040810190602001611fec565b6001600160a01b03168152602001610edb8b806123a0565b610ee99060408101906123bf565b808060200260200160405190810160405280939291908181526020015f905b82821015610f3457610f2560a08302860136819003810190612411565b81526020019060010190610f08565b5050509183525050602001610f498b806123a0565b610f5790606081019061248e565b808060200260200160405190810160405280939291908181526020015f905b82821015610fa257610f9360c083028601368190038101906124d2565b81526020019060010190610f76565b5050509183525050602001610fb78b806123a0565b610fc89060a081019060800161256d565b6004811115610fd957610fd9612586565b8152602001610fe88b806123a0565b60a001358152602001610ffb8b806123a0565b60c00135815260200161100e8b806123a0565b60e0013581526020016110218b806123a0565b610100013581526020016110358b806123a0565b6101200135815261015f546020909101906001600160a01b031663f07ec37361105e8d806123a0565b61106c906020810190611fec565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa1580156110ae573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110d2919061259a565b8152506040518263ffffffff1660e01b81526004016110f191906126bf565b602060405180830381865afa15801561110c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611130919061259a565b61184d565b61015f546040516339eb2ac960e21b81526001600160a01b039091169063e7acab249061116e9089908990899089908990600401612aac565b6020604051808303815f875af115801561118a573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111ae9190612381565b9050806111ce57604051636725093760e01b815260040160405180910390fd5b600160335595945050505050565b6111e461136c565b6111ed81611866565b6107245f826118dc565b6060611202856118e6565b5f80876001600160a01b03168661121b8b8a898961194b565b6040516112289190612c82565b5f604051808303815f8787f1925050503d805f8114611262576040519150601f19603f3d011682016040523d82523d5f602084013e611267565b606091505b509092509050611278603f87612ca7565b5a1161128657611286612cc6565b6112c682826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061197b565b925050505b9695505050505050565b610724816112e16113fc565b6119b4565b6112f08282610a0d565b6107b6575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191660011790556113286113fc565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6113746113fc565b6001600160a01b031661138f6097546001600160a01b031690565b6001600160a01b0316146107d25760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107a3565b6107245f80516020612e2f83398151915282610c21565b5f611405611a18565b905090565b6114148282610a0d565b156107b6575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff1916905561144a6113fc565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b61012d5460ff166107d25760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b60448201526064016107a3565b6114e061148e565b61012d805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6115146113fc565b6040516001600160a01b03909116815260200160405180910390a1565b6107245f80516020612e2f833981519152826118dc565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b61012d5460ff16156107d25760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b60448201526064016107a3565b6115e8611599565b61012d805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586115146113fc565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015611663573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611687919061259a565b90505f6117348660600151805190602001208688602001516040516020016116d49392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156112cb575085516112cb906001600160a01b03168286611a35565b5f54610100900460ff166117805760405162461bcd60e51b81526004016107a390612cda565b6001603355565b5f54610100900460ff166107d25760405162461bcd60e51b81526004016107a390612cda565b5f54610100900460ff166117d35760405162461bcd60e51b81526004016107a390612cda565b6107d26117de6113fc565b611548565b5f54610100900460ff166118095760405162461bcd60e51b81526004016107a390612cda565b6107d25f6118156113fc565b6118dc565b5f54610100900460ff166118405760405162461bcd60e51b81526004016107a390612cda565b61012d805460ff19169055565b30330361185d5761072481611b70565b610724816118e6565b61186e61136c565b6001600160a01b0381166118d35760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107a3565b61072481611548565b6107b682826112e6565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f9060600160405160208183030381529060405280519060200120905061193a8190565b54611946906001612d25565b905550565b606082858560405160200161196293929190612d38565b6040516020818303038152906040529050949350505050565b6060831561198a5750816106e3565b82511561199a5782518084602001fd5b8160405162461bcd60e51b81526004016107a39190611f71565b6119be8282610a0d565b6107b6576119d6816001600160a01b03166014611b9a565b6119e1836020611b9a565b6040516020016119f2929190612d76565b60408051601f198184030181529082905262461bcd60e51b82526107a391600401611f71565b5f303303611a2d575060331936013560601c90565b503390565b90565b5f805f611a428585611d2f565b90925090505f816004811115611a5a57611a5a612586565b148015611a785750856001600160a01b0316826001600160a01b0316145b15611a88576001925050506106e3565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401611aaf929190612dea565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051611aed9190612c82565b5f60405180830381855afa9150503d805f8114611b25576040519150601f19603f3d011682016040523d82523d5f602084013e611b2a565b606091505b5091509150818015611b3d575080516020145b8015611b6457508051630b135d3f60e11b90611b62908301602090810190840161259a565b145b98975050505050505050565b611b78611d71565b811461072457604051635637b6af60e11b8152600481018290526024016107a3565b60605f611ba8836002612e02565b611bb3906002612d25565b6001600160401b03811115611bca57611bca612007565b6040519080825280601f01601f191660200182016040528015611bf4576020820181803683370190505b509050600360fc1b815f81518110611c0e57611c0e612245565b60200101906001600160f81b03191690815f1a905350600f60fb1b81600181518110611c3c57611c3c612245565b60200101906001600160f81b03191690815f1a9053505f611c5e846002612e02565b611c69906001612d25565b90505b6001811115611ce0576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611c9d57611c9d612245565b1a60f81b828281518110611cb357611cb3612245565b60200101906001600160f81b03191690815f1a90535060049490941c93611cd981612e19565b9050611c6c565b5083156106e35760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016107a3565b5f808251604103611d63576020830151604084015160608501515f1a611d5787828585611d83565b94509450505050611d6a565b505f905060025b9250929050565b5f303303611a325750601f1936013590565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115611db857505f90506003611e5f565b8460ff16601b14158015611dd057508460ff16601c14155b15611de057505f90506004611e5f565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015611e31573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b038116611e59575f60019250925050611e5f565b91505f90505b94509492505050565b5f60208284031215611e78575f80fd5b81356001600160e01b0319811681146106e3575f80fd5b5f805f60408486031215611ea1575f80fd5b83356001600160401b0380821115611eb7575f80fd5b9085019060808288031215611eca575f80fd5b90935060208501359080821115611edf575f80fd5b818601915086601f830112611ef2575f80fd5b813581811115611f00575f80fd5b876020828501011115611f11575f80fd5b6020830194508093505050509250925092565b5f5b83811015611f3e578181015183820152602001611f26565b50505f910152565b5f8151808452611f5d816020860160208601611f24565b601f01601f19169290920160200192915050565b602081525f6106e36020830184611f46565b5f60208284031215611f93575f80fd5b5035919050565b6001600160a01b0381168114610724575f80fd5b8035611fb981611f9a565b919050565b5f8060408385031215611fcf575f80fd5b823591506020830135611fe181611f9a565b809150509250929050565b5f60208284031215611ffc575f80fd5b81356106e381611f9a565b634e487b7160e01b5f52604160045260245ffd5b604051608081016001600160401b038111828210171561203d5761203d612007565b60405290565b604051601f8201601f191681016001600160401b038111828210171561206b5761206b612007565b604052919050565b5f6020808385031215612084575f80fd5b82356001600160401b038082111561209a575f80fd5b818501915085601f8301126120ad575f80fd5b8135818111156120bf576120bf612007565b8060051b91506120d0848301612043565b81815291830184019184810190888411156120e9575f80fd5b938501935b83851015611b64578435925061210383611f9a565b82825293850193908501906120ee565b5f805f60608486031215612125575f80fd5b833561213081611f9a565b9250602084013561214081611f9a565b929592945050506040919091013590565b5f805f805f60808688031215612165575f80fd5b85356001600160401b038082111561217b575f80fd5b9087019060a0828a03121561218e575f80fd5b909550602087013590808211156121a3575f80fd5b818801915088601f8301126121b6575f80fd5b8135818111156121c4575f80fd5b8960208260051b85010111156121d8575f80fd5b602083019650809550505050604086013591506121f760608701611fae565b90509295509295909350565b5f808335601e19843603018112612218575f80fd5b8301803591506001600160401b03821115612231575f80fd5b602001915036819003821315611d6a575f80fd5b634e487b7160e01b5f52603260045260245ffd5b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b5f6080823603121561229e575f80fd5b6122a661201b565b82356122b181611f9a565b8152602083810135818301526040808501359083015260608401356001600160401b03808211156122e0575f80fd5b9085019036601f8301126122f2575f80fd5b81358181111561230457612304612007565b612316601f8201601f19168501612043565b9150808252368482850101111561232b575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b5f60208284031215612391575f80fd5b815180151581146106e3575f80fd5b5f823561015e198336030181126123b5575f80fd5b9190910192915050565b5f808335601e198436030181126123d4575f80fd5b8301803591506001600160401b038211156123ed575f80fd5b602001915060a081023603821315611d6a575f80fd5b803560068110611fb9575f80fd5b5f60a08284031215612421575f80fd5b60405160a081018181106001600160401b038211171561244357612443612007565b60405261244f83612403565b8152602083013561245f81611f9a565b806020830152506040830135604082015260608301356060820152608083013560808201528091505092915050565b5f808335601e198436030181126124a3575f80fd5b8301803591506001600160401b038211156124bc575f80fd5b602001915060c081023603821315611d6a575f80fd5b5f60c082840312156124e2575f80fd5b60405160c081018181106001600160401b038211171561250457612504612007565b60405261251083612403565b8152602083013561252081611f9a565b8060208301525060408301356040820152606083013560608201526080830135608082015260a083013561255381611f9a565b60a08201529392505050565b803560058110611fb9575f80fd5b5f6020828403121561257d575f80fd5b6106e38261255f565b634e487b7160e01b5f52602160045260245ffd5b5f602082840312156125aa575f80fd5b5051919050565b600681106125c1576125c1612586565b9052565b5f815180845260208085019450602084015f5b8381101561262e5781516125ed8882516125b1565b838101516001600160a01b03168885015260408082015190890152606080820151908901526080908101519088015260a090960195908201906001016125d8565b509495945050505050565b5f815180845260208085019450602084015f5b8381101561262e5781516126618882516125b1565b808401516001600160a01b0390811689860152604080830151908a0152606080830151908a0152608080830151908a015260a091820151169088015260c0909601959082019060010161264c565b600581106125c1576125c1612586565b602081526126d96020820183516001600160a01b03169052565b5f60208301516126f460408401826001600160a01b03169052565b5060408301516101608060608501526127116101808501836125c5565b91506060850151601f1985840301608086015261272e8382612639565b925050608085015161274360a08601826126af565b5060a085015160c085015260c085015160e085015260e0850151610100818187015280870151915050610120818187015280870151915050610140818187015280870151838701525050508091505092915050565b5f808335601e198436030181126127ad575f80fd5b83016020810192503590506001600160401b038111156127cb575f80fd5b60a081023603821315611d6a575f80fd5b8183525f60208085019450825f5b8581101561262e57612804876127ff84612403565b6125b1565b8282013561281181611f9a565b6001600160a01b03168388015260408281013590880152606080830135908801526080808301359088015260a096870196909101906001016127ea565b5f808335601e19843603018112612863575f80fd5b83016020810192503590506001600160401b03811115612881575f80fd5b60c081023603821315611d6a575f80fd5b8183525f60208085019450825f5b8581101561262e576128b5876127ff84612403565b828201356128c281611f9a565b6001600160a01b039081168885015260408381013590890152606080840135908901526080808401359089015260a090838201356128ff81611f9a565b169088015260c09687019691909101906001016128a0565b80356001600160781b0381168114611fb9575f80fd5b5f808335601e19843603018112612942575f80fd5b83016020810192503590506001600160401b03811115612960575f80fd5b803603821315611d6a575f80fd5b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b8183525f6001600160fb1b038311156129ad575f80fd5b8260051b80836020870137939093016020019392505050565b8183526020808401935f91600585811b8301820185855b88811015612a9e57858303601f19018a52813536899003609e19018112612a02575f80fd5b88018035845260a08682013560028110612a1a575f80fd5b85880152604082810135908601526060808301359086015260808083013536849003601e19018112612a4a575f80fd5b9092018781019290356001600160401b03811115612a66575f80fd5b80881b3603841315612a76575f80fd5b8282880152612a888388018286612996565b9d89019d965050509286019250506001016129dd565b509098975050505050505050565b608081525f610120873561015e19893603018112612ac8575f80fd5b60a060808501528801612aed828501612ae083611fae565b6001600160a01b03169052565b612af960208201611fae565b610140612b10818701836001600160a01b03169052565b612b1d6040840184612798565b610160888101529250612b35610280880184836127dc565b925050612b45606084018461284e565b87840361011f1901610180890152612b5e848284612892565b93505050612b6e6080840161255f565b612b7c6101a08801826126af565b5060a08301356101c087015260c08301356101e087015260e0830135610200870152610100808401356102208801528484013561024088015281840135610260880152612bcb60208d01612917565b6001600160781b03811660a08901529450612be860408d01612917565b6001600160781b03811660c08901529450612c0660608d018d61292d565b95509350607f199150818784030160e0880152612c2483868661296e565b9450612c3360808d018d61292d565b945092508187860301818801525050612c4d83838361296e565b925050508281036020840152612c648187896129c6565b9150508360408301526112cb60608301846001600160a01b03169052565b5f82516123b5818460208701611f24565b634e487b7160e01b5f52601160045260245ffd5b5f82612cc157634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b8082018082111561061b5761061b612c93565b5f8451612d49818460208901611f24565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081525f8351612dad816017850160208801611f24565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351612dde816028840160208801611f24565b01602801949350505050565b828152604060208201525f610aaa6040830184611f46565b808202811582820484141761061b5761061b612c93565b5f81612e2757612e27612c93565b505f19019056fe9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000818000a", + "deployedBytecode": "0x6080604052600436106101db575f3560e01c80638da5cb5b116100fd578063c4d66de811610092578063daea85c511610062578063daea85c51461055e578063e7acab241461057d578063f2fde38b1461059c578063ffa1ad74146105bb575f80fd5b8063c4d66de8146104e1578063d539139314610500578063d547741f14610520578063d9caed121461053f575f80fd5b8063a217fddf116100cd578063a217fddf14610452578063a3f4df7e14610465578063a4247400146104a3578063aa271e1a146104c2575f80fd5b80638da5cb5b146103d957806391d1485414610400578063983b2d561461041f578063986502751461043e575f80fd5b80635c975abb11610173578063715018a611610143578063715018a61461037f57806371e2a6571461039357806381c81d35146103b25780638456cb59146103c5575f80fd5b80635c975abb146103165780635fc1964f1461032e578063634486da1461034d5780636ccbae5f14610360575f80fd5b80633092afd5116101ae5780633092afd51461029c57806336568abe146102bb5780633f4ba83a146102da578063572b6c05146102ee575f80fd5b806301ffc9a7146101df5780631bf7e13e14610213578063248a9ca31461023f5780632f2ff15d1461027b575b5f80fd5b3480156101ea575f80fd5b506101fe6101f9366004611e68565b6105eb565b60405190151581526020015b60405180910390f35b34801561021e575f80fd5b5061023261022d366004611e8f565b610621565b60405161020a9190611f71565b34801561024a575f80fd5b5061026d610259366004611f83565b5f90815260fb602052604090206001015490565b60405190815260200161020a565b348015610286575f80fd5b5061029a610295366004611fbe565b6106ea565b005b3480156102a7575f80fd5b5061029a6102b6366004611fec565b610713565b3480156102c6575f80fd5b5061029a6102d5366004611fbe565b610727565b3480156102e5575f80fd5b5061029a6107ba565b3480156102f9575f80fd5b506101fe610308366004611fec565b6001600160a01b0316301490565b348015610321575f80fd5b5061012d5460ff166101fe565b348015610339575f80fd5b5061029a610348366004612073565b6107d4565b61029a61035b366004611fec565b610811565b34801561036b575f80fd5b5061026d61037a366004611f83565b6108d1565b34801561038a575f80fd5b5061029a61092a565b34801561039e575f80fd5b5061029a6103ad366004612073565b61093b565b61029a6103c0366004611fec565b610978565b3480156103d0575f80fd5b5061029a6109f5565b3480156103e4575f80fd5b506097546040516001600160a01b03909116815260200161020a565b34801561040b575f80fd5b506101fe61041a366004611fbe565b610a0d565b34801561042a575f80fd5b5061029a610439366004611fec565b610a37565b348015610449575f80fd5b5061029a610a48565b34801561045d575f80fd5b5061026d5f81565b348015610470575f80fd5b506102326040518060400160405280601381526020017229b2b0b837b93a10283937bc3c90213abcb2b960691b81525081565b3480156104ae575f80fd5b506101fe6104bd366004611e8f565b610a61565b3480156104cd575f80fd5b506101fe6104dc366004611fec565b610ab2565b3480156104ec575f80fd5b5061029a6104fb366004611fec565b610aca565b34801561050b575f80fd5b5061026d5f80516020612e2f83398151915281565b34801561052b575f80fd5b5061029a61053a366004611fbe565b610c21565b34801561054a575f80fd5b5061029a610559366004612113565b610c45565b348015610569575f80fd5b5061029a610578366004611fec565b610cef565b348015610588575f80fd5b506101fe610597366004612151565b610d9c565b3480156105a7575f80fd5b5061029a6105b6366004611fec565b6111dc565b3480156105c6575f80fd5b50610232604051806040016040528060058152602001640302e312e360dc1b81525081565b5f6001600160e01b03198216637965db0b60e01b148061061b57506301ffc9a760e01b6001600160e01b03198316145b92915050565b60605f5a9050610632858585610a61565b61064f57604051638baa579f60e01b815260040160405180910390fd5b6106df61065f6020870187611fec565b3060408801358461067360608b018b612203565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f920191909152506111f792505050565b9150505b9392505050565b5f82815260fb6020526040902060010154610704816112d5565b61070e83836112e6565b505050565b61071b61136c565b610724816113e5565b50565b61072f6113fc565b6001600160a01b0316816001600160a01b0316146107ac5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6107b6828261140a565b5050565b6107c261136c565b6107ca61148e565b6107d26114d8565b565b6107dc61136c565b5f5b81518110156107b6576108098282815181106107fc576107fc612245565b60200260200101516113e5565b6001016107de565b61081c6104dc6113fc565b6108385760405162461bcd60e51b81526004016107a390612259565b6001600160a01b03811661088e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016107a3565b61089781611531565b61089f610a48565b6040516001600160a01b038216903480156108fc02915f818181858888f193505050501580156107b6573d5f803e3d5ffd5b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f90610923906060016040516020818303038152906040528051906020012090565b5492915050565b61093261136c565b6107d25f611548565b61094361136c565b5f5b81518110156107b65761097082828151811061096357610963612245565b6020026020010151611531565b600101610945565b6109836104dc6113fc565b61099f5760405162461bcd60e51b81526004016107a390612259565b6001600160a01b0381166108975760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016107a3565b6109fd61136c565b610a05611599565b6107d26115e0565b5f91825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610a3f61136c565b61072481611531565b6107d25f80516020612e2f8339815191526102d56113fc565b5f610aaa610a6e8561228e565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061161f92505050565b949350505050565b5f61061b5f80516020612e2f83398151915283610a0d565b5f54610100900460ff1615808015610ae857505f54600160ff909116105b80610b015750303b158015610b0157505f5460ff166001145b610b645760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107a3565b5f805460ff191660011790558015610b85575f805461ff0019166101001790555b61015f80546001600160a01b0319166001600160a01b038416179055610ba961175a565b610bb1611787565b610bb9611787565b610bc1611787565b610bc96117ad565b610bd16117e3565b610bd961181a565b80156107b6575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b5f82815260fb6020526040902060010154610c3b816112d5565b61070e838361140a565b610c4d61136c565b600260335403610c6f5760405162461bcd60e51b81526004016107a39061234a565b600260335560405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af1158015610cc0573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ce49190612381565b505060016033555050565b610cf761136c565b600260335403610d195760405162461bcd60e51b81526004016107a39061234a565b600260335561015f5460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529082169063095ea7b3906044016020604051808303815f875af1158015610d6f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d939190612381565b50506001603355565b5f610da86104dc6113fc565b610dc45760405162461bcd60e51b81526004016107a390612259565b600260335403610de65760405162461bcd60e51b81526004016107a39061234a565b6002603355610df3611599565b6001600160a01b038216610e1a576040516311d000e160e31b815260040160405180910390fd5b30610e2587806123a0565b610e36906040810190602001611fec565b6001600160a01b031614610e5d57604051639d3c586b60e01b815260040160405180910390fd5b61015f54604080516101608101909152611135916001600160a01b0316906379df72bd9080610e8c8b806123a0565b610e9a906020810190611fec565b6001600160a01b03168152602001610eb28b806123a0565b610ec3906040810190602001611fec565b6001600160a01b03168152602001610edb8b806123a0565b610ee99060408101906123bf565b808060200260200160405190810160405280939291908181526020015f905b82821015610f3457610f2560a08302860136819003810190612411565b81526020019060010190610f08565b5050509183525050602001610f498b806123a0565b610f5790606081019061248e565b808060200260200160405190810160405280939291908181526020015f905b82821015610fa257610f9360c083028601368190038101906124d2565b81526020019060010190610f76565b5050509183525050602001610fb78b806123a0565b610fc89060a081019060800161256d565b6004811115610fd957610fd9612586565b8152602001610fe88b806123a0565b60a001358152602001610ffb8b806123a0565b60c00135815260200161100e8b806123a0565b60e0013581526020016110218b806123a0565b610100013581526020016110358b806123a0565b6101200135815261015f546020909101906001600160a01b031663f07ec37361105e8d806123a0565b61106c906020810190611fec565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa1580156110ae573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110d2919061259a565b8152506040518263ffffffff1660e01b81526004016110f191906126bf565b602060405180830381865afa15801561110c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611130919061259a565b61184d565b61015f546040516339eb2ac960e21b81526001600160a01b039091169063e7acab249061116e9089908990899089908990600401612aac565b6020604051808303815f875af115801561118a573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111ae9190612381565b9050806111ce57604051636725093760e01b815260040160405180910390fd5b600160335595945050505050565b6111e461136c565b6111ed81611866565b6107245f826118dc565b6060611202856118e6565b5f80876001600160a01b03168661121b8b8a898961194b565b6040516112289190612c82565b5f604051808303815f8787f1925050503d805f8114611262576040519150601f19603f3d011682016040523d82523d5f602084013e611267565b606091505b509092509050611278603f87612ca7565b5a1161128657611286612cc6565b6112c682826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061197b565b925050505b9695505050505050565b610724816112e16113fc565b6119b4565b6112f08282610a0d565b6107b6575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191660011790556113286113fc565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6113746113fc565b6001600160a01b031661138f6097546001600160a01b031690565b6001600160a01b0316146107d25760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107a3565b6107245f80516020612e2f83398151915282610c21565b5f611405611a18565b905090565b6114148282610a0d565b156107b6575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff1916905561144a6113fc565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b61012d5460ff166107d25760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b60448201526064016107a3565b6114e061148e565b61012d805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6115146113fc565b6040516001600160a01b03909116815260200160405180910390a1565b6107245f80516020612e2f833981519152826118dc565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b61012d5460ff16156107d25760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b60448201526064016107a3565b6115e8611599565b61012d805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586115146113fc565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015611663573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611687919061259a565b90505f6117348660600151805190602001208688602001516040516020016116d49392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156112cb575085516112cb906001600160a01b03168286611a35565b5f54610100900460ff166117805760405162461bcd60e51b81526004016107a390612cda565b6001603355565b5f54610100900460ff166107d25760405162461bcd60e51b81526004016107a390612cda565b5f54610100900460ff166117d35760405162461bcd60e51b81526004016107a390612cda565b6107d26117de6113fc565b611548565b5f54610100900460ff166118095760405162461bcd60e51b81526004016107a390612cda565b6107d25f6118156113fc565b6118dc565b5f54610100900460ff166118405760405162461bcd60e51b81526004016107a390612cda565b61012d805460ff19169055565b30330361185d5761072481611b70565b610724816118e6565b61186e61136c565b6001600160a01b0381166118d35760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107a3565b61072481611548565b6107b682826112e6565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f9060600160405160208183030381529060405280519060200120905061193a8190565b54611946906001612d25565b905550565b606082858560405160200161196293929190612d38565b6040516020818303038152906040529050949350505050565b6060831561198a5750816106e3565b82511561199a5782518084602001fd5b8160405162461bcd60e51b81526004016107a39190611f71565b6119be8282610a0d565b6107b6576119d6816001600160a01b03166014611b9a565b6119e1836020611b9a565b6040516020016119f2929190612d76565b60408051601f198184030181529082905262461bcd60e51b82526107a391600401611f71565b5f303303611a2d575060331936013560601c90565b503390565b90565b5f805f611a428585611d2f565b90925090505f816004811115611a5a57611a5a612586565b148015611a785750856001600160a01b0316826001600160a01b0316145b15611a88576001925050506106e3565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401611aaf929190612dea565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051611aed9190612c82565b5f60405180830381855afa9150503d805f8114611b25576040519150601f19603f3d011682016040523d82523d5f602084013e611b2a565b606091505b5091509150818015611b3d575080516020145b8015611b6457508051630b135d3f60e11b90611b62908301602090810190840161259a565b145b98975050505050505050565b611b78611d71565b811461072457604051635637b6af60e11b8152600481018290526024016107a3565b60605f611ba8836002612e02565b611bb3906002612d25565b6001600160401b03811115611bca57611bca612007565b6040519080825280601f01601f191660200182016040528015611bf4576020820181803683370190505b509050600360fc1b815f81518110611c0e57611c0e612245565b60200101906001600160f81b03191690815f1a905350600f60fb1b81600181518110611c3c57611c3c612245565b60200101906001600160f81b03191690815f1a9053505f611c5e846002612e02565b611c69906001612d25565b90505b6001811115611ce0576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611c9d57611c9d612245565b1a60f81b828281518110611cb357611cb3612245565b60200101906001600160f81b03191690815f1a90535060049490941c93611cd981612e19565b9050611c6c565b5083156106e35760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016107a3565b5f808251604103611d63576020830151604084015160608501515f1a611d5787828585611d83565b94509450505050611d6a565b505f905060025b9250929050565b5f303303611a325750601f1936013590565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115611db857505f90506003611e5f565b8460ff16601b14158015611dd057508460ff16601c14155b15611de057505f90506004611e5f565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015611e31573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b038116611e59575f60019250925050611e5f565b91505f90505b94509492505050565b5f60208284031215611e78575f80fd5b81356001600160e01b0319811681146106e3575f80fd5b5f805f60408486031215611ea1575f80fd5b83356001600160401b0380821115611eb7575f80fd5b9085019060808288031215611eca575f80fd5b90935060208501359080821115611edf575f80fd5b818601915086601f830112611ef2575f80fd5b813581811115611f00575f80fd5b876020828501011115611f11575f80fd5b6020830194508093505050509250925092565b5f5b83811015611f3e578181015183820152602001611f26565b50505f910152565b5f8151808452611f5d816020860160208601611f24565b601f01601f19169290920160200192915050565b602081525f6106e36020830184611f46565b5f60208284031215611f93575f80fd5b5035919050565b6001600160a01b0381168114610724575f80fd5b8035611fb981611f9a565b919050565b5f8060408385031215611fcf575f80fd5b823591506020830135611fe181611f9a565b809150509250929050565b5f60208284031215611ffc575f80fd5b81356106e381611f9a565b634e487b7160e01b5f52604160045260245ffd5b604051608081016001600160401b038111828210171561203d5761203d612007565b60405290565b604051601f8201601f191681016001600160401b038111828210171561206b5761206b612007565b604052919050565b5f6020808385031215612084575f80fd5b82356001600160401b038082111561209a575f80fd5b818501915085601f8301126120ad575f80fd5b8135818111156120bf576120bf612007565b8060051b91506120d0848301612043565b81815291830184019184810190888411156120e9575f80fd5b938501935b83851015611b64578435925061210383611f9a565b82825293850193908501906120ee565b5f805f60608486031215612125575f80fd5b833561213081611f9a565b9250602084013561214081611f9a565b929592945050506040919091013590565b5f805f805f60808688031215612165575f80fd5b85356001600160401b038082111561217b575f80fd5b9087019060a0828a03121561218e575f80fd5b909550602087013590808211156121a3575f80fd5b818801915088601f8301126121b6575f80fd5b8135818111156121c4575f80fd5b8960208260051b85010111156121d8575f80fd5b602083019650809550505050604086013591506121f760608701611fae565b90509295509295909350565b5f808335601e19843603018112612218575f80fd5b8301803591506001600160401b03821115612231575f80fd5b602001915036819003821315611d6a575f80fd5b634e487b7160e01b5f52603260045260245ffd5b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b5f6080823603121561229e575f80fd5b6122a661201b565b82356122b181611f9a565b8152602083810135818301526040808501359083015260608401356001600160401b03808211156122e0575f80fd5b9085019036601f8301126122f2575f80fd5b81358181111561230457612304612007565b612316601f8201601f19168501612043565b9150808252368482850101111561232b575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b5f60208284031215612391575f80fd5b815180151581146106e3575f80fd5b5f823561015e198336030181126123b5575f80fd5b9190910192915050565b5f808335601e198436030181126123d4575f80fd5b8301803591506001600160401b038211156123ed575f80fd5b602001915060a081023603821315611d6a575f80fd5b803560068110611fb9575f80fd5b5f60a08284031215612421575f80fd5b60405160a081018181106001600160401b038211171561244357612443612007565b60405261244f83612403565b8152602083013561245f81611f9a565b806020830152506040830135604082015260608301356060820152608083013560808201528091505092915050565b5f808335601e198436030181126124a3575f80fd5b8301803591506001600160401b038211156124bc575f80fd5b602001915060c081023603821315611d6a575f80fd5b5f60c082840312156124e2575f80fd5b60405160c081018181106001600160401b038211171561250457612504612007565b60405261251083612403565b8152602083013561252081611f9a565b8060208301525060408301356040820152606083013560608201526080830135608082015260a083013561255381611f9a565b60a08201529392505050565b803560058110611fb9575f80fd5b5f6020828403121561257d575f80fd5b6106e38261255f565b634e487b7160e01b5f52602160045260245ffd5b5f602082840312156125aa575f80fd5b5051919050565b600681106125c1576125c1612586565b9052565b5f815180845260208085019450602084015f5b8381101561262e5781516125ed8882516125b1565b838101516001600160a01b03168885015260408082015190890152606080820151908901526080908101519088015260a090960195908201906001016125d8565b509495945050505050565b5f815180845260208085019450602084015f5b8381101561262e5781516126618882516125b1565b808401516001600160a01b0390811689860152604080830151908a0152606080830151908a0152608080830151908a015260a091820151169088015260c0909601959082019060010161264c565b600581106125c1576125c1612586565b602081526126d96020820183516001600160a01b03169052565b5f60208301516126f460408401826001600160a01b03169052565b5060408301516101608060608501526127116101808501836125c5565b91506060850151601f1985840301608086015261272e8382612639565b925050608085015161274360a08601826126af565b5060a085015160c085015260c085015160e085015260e0850151610100818187015280870151915050610120818187015280870151915050610140818187015280870151838701525050508091505092915050565b5f808335601e198436030181126127ad575f80fd5b83016020810192503590506001600160401b038111156127cb575f80fd5b60a081023603821315611d6a575f80fd5b8183525f60208085019450825f5b8581101561262e57612804876127ff84612403565b6125b1565b8282013561281181611f9a565b6001600160a01b03168388015260408281013590880152606080830135908801526080808301359088015260a096870196909101906001016127ea565b5f808335601e19843603018112612863575f80fd5b83016020810192503590506001600160401b03811115612881575f80fd5b60c081023603821315611d6a575f80fd5b8183525f60208085019450825f5b8581101561262e576128b5876127ff84612403565b828201356128c281611f9a565b6001600160a01b039081168885015260408381013590890152606080840135908901526080808401359089015260a090838201356128ff81611f9a565b169088015260c09687019691909101906001016128a0565b80356001600160781b0381168114611fb9575f80fd5b5f808335601e19843603018112612942575f80fd5b83016020810192503590506001600160401b03811115612960575f80fd5b803603821315611d6a575f80fd5b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b8183525f6001600160fb1b038311156129ad575f80fd5b8260051b80836020870137939093016020019392505050565b8183526020808401935f91600585811b8301820185855b88811015612a9e57858303601f19018a52813536899003609e19018112612a02575f80fd5b88018035845260a08682013560028110612a1a575f80fd5b85880152604082810135908601526060808301359086015260808083013536849003601e19018112612a4a575f80fd5b9092018781019290356001600160401b03811115612a66575f80fd5b80881b3603841315612a76575f80fd5b8282880152612a888388018286612996565b9d89019d965050509286019250506001016129dd565b509098975050505050505050565b608081525f610120873561015e19893603018112612ac8575f80fd5b60a060808501528801612aed828501612ae083611fae565b6001600160a01b03169052565b612af960208201611fae565b610140612b10818701836001600160a01b03169052565b612b1d6040840184612798565b610160888101529250612b35610280880184836127dc565b925050612b45606084018461284e565b87840361011f1901610180890152612b5e848284612892565b93505050612b6e6080840161255f565b612b7c6101a08801826126af565b5060a08301356101c087015260c08301356101e087015260e0830135610200870152610100808401356102208801528484013561024088015281840135610260880152612bcb60208d01612917565b6001600160781b03811660a08901529450612be860408d01612917565b6001600160781b03811660c08901529450612c0660608d018d61292d565b95509350607f199150818784030160e0880152612c2483868661296e565b9450612c3360808d018d61292d565b945092508187860301818801525050612c4d83838361296e565b925050508281036020840152612c648187896129c6565b9150508360408301526112cb60608301846001600160a01b03169052565b5f82516123b5818460208701611f24565b634e487b7160e01b5f52601160045260245ffd5b5f82612cc157634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b8082018082111561061b5761061b612c93565b5f8451612d49818460208901611f24565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081525f8351612dad816017850160208801611f24565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351612dde816028840160208801611f24565b01602801949350505050565b828152604060208201525f610aaa6040830184611f46565b808202811582820484141761061b5761061b612c93565b5f81612e2757612e27612c93565b505f19019056fe9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000818000a", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/contracts/marketplace/SeaportProxyBuyer.sol b/contracts/marketplace/SeaportProxyBuyer.sol index 15b9b65c..a02e042f 100644 --- a/contracts/marketplace/SeaportProxyBuyer.sol +++ b/contracts/marketplace/SeaportProxyBuyer.sol @@ -26,7 +26,7 @@ contract SeaportProxyBuyer is ISeaportProxyBuyer { string public constant NAME = 'Seaport Proxy Buyer'; - string public constant VERSION = '0.0.1'; + string public constant VERSION = '0.1.0'; ConsiderationInterface private _seaport; @@ -60,20 +60,25 @@ contract SeaportProxyBuyer is revert InvalidZone(); } - OrderComponents memory orderComponents; - orderComponents.offerer = advancedOrder.parameters.offerer; - orderComponents.zone = advancedOrder.parameters.zone; - orderComponents.offer = advancedOrder.parameters.offer; - orderComponents.consideration = advancedOrder.parameters.consideration; - orderComponents.orderType = advancedOrder.parameters.orderType; - orderComponents.startTime = advancedOrder.parameters.startTime; - orderComponents.endTime = advancedOrder.parameters.endTime; - orderComponents.zoneHash = advancedOrder.parameters.zoneHash; - orderComponents.salt = advancedOrder.parameters.salt; - orderComponents.conduitKey = advancedOrder.parameters.conduitKey; - orderComponents.counter = _seaport.getCounter(orderComponents.offerer); - - _protectTokenOperation(uint256(_seaport.getOrderHash(orderComponents))); + _protectTokenOperation( + uint256( + _seaport.getOrderHash( + OrderComponents({ + offerer: advancedOrder.parameters.offerer, + zone: advancedOrder.parameters.zone, + offer: advancedOrder.parameters.offer, + consideration: advancedOrder.parameters.consideration, + orderType: advancedOrder.parameters.orderType, + startTime: advancedOrder.parameters.startTime, + endTime: advancedOrder.parameters.endTime, + zoneHash: advancedOrder.parameters.zoneHash, + salt: advancedOrder.parameters.salt, + conduitKey: advancedOrder.parameters.conduitKey, + counter: _seaport.getCounter(advancedOrder.parameters.offerer) + }) + ) + ) + ); fulfilled = _seaport.fulfillAdvancedOrder(advancedOrder, criteriaResolvers, fulfillerConduitKey, recipient); if (!fulfilled) { @@ -81,11 +86,11 @@ contract SeaportProxyBuyer is } } - function approve(address token) external onlyOwner nonReentrant whenNotPaused { + function approve(address token) external onlyOwner nonReentrant { IERC20(token).approve(address(_seaport), type(uint256).max); } - function withdraw(address token, address recipient, uint256 amount) external onlyOwner nonReentrant whenNotPaused { + function withdraw(address token, address recipient, uint256 amount) external onlyOwner nonReentrant { IERC20(token).transfer(recipient, amount); } diff --git a/ens-config.json b/ens-config.json index d034f711..7f8894e6 100644 --- a/ens-config.json +++ b/ens-config.json @@ -115,15 +115,15 @@ ] }, "ProxyAdmin": { - "address": "0x3198fc981626687F4B5BDf0fbEABB0a5E0489C03", + "address": "0x4e44E79e0cEc05D9e62e952B2088c02A3C450aeC", "deploymentBlock": "0x36", "legacyAddresses": [] }, "ENSCustody": { - "address": "0x951c830a0471C04DCB60Ce244DEe38eE4b0609ec", - "deploymentBlock": "0x5c", + "address": "0x3198fc981626687F4B5BDf0fbEABB0a5E0489C03", + "deploymentBlock": "0x5b", "implementation": "0xc2110388dd54228aE0A834119457edE938BF0B57", - "forwarder": "0x951c830a0471C04DCB60Ce244DEe38eE4b0609ec", + "forwarder": "0x3198fc981626687F4B5BDf0fbEABB0a5E0489C03", "legacyAddresses": [] }, "LegacyENSRegistry": { diff --git a/package.json b/package.json index ff8509a3..447f232f 100644 --- a/package.json +++ b/package.json @@ -10,7 +10,7 @@ "compile": "hardhat compile --force;", "build:package": "yarn compile; rm -Rf dist/*; tsc --project tsconfig.build.json", "build:ci": "yarn build:package && yarn rebuild:sandbox && yarn copy:assets", - "copy:assets": "mkdir -p dist/sandbox/foundry/bin; cp sandbox/foundry/bin/.gitignore dist/sandbox/foundry/bin; cp sandbox/state.json dist/sandbox/; cp sandbox/foundry/foundryup.sh dist/sandbox/foundry; cp uns-config.json dist/; cp ens-config.json dist/;", + "copy:assets": "mkdir -p dist/sandbox/foundry/bin; cp sandbox/foundry/bin/gitkeep dist/sandbox/foundry/bin/gitkeep; cp sandbox/state.json dist/sandbox/; cp sandbox/foundry/foundryup.sh dist/sandbox/foundry; cp uns-config.json dist/; cp ens-config.json dist/;", "compile:size": "env ENABLE_CONTRACT_SIZER=true yarn compile", "coverage": "hardhat coverage", "test": "yarn test:sol && yarn test:sandbox", diff --git a/sandbox/foundry/bin/.gitignore b/sandbox/foundry/bin/.gitignore index d6b7ef32..4da2e760 100644 --- a/sandbox/foundry/bin/.gitignore +++ b/sandbox/foundry/bin/.gitignore @@ -1,2 +1,3 @@ * !.gitignore +!gitkeep diff --git a/sandbox/foundry/bin/gitkeep b/sandbox/foundry/bin/gitkeep new file mode 100644 index 00000000..e69de29b diff --git a/sandbox/foundry/foundryup.sh b/sandbox/foundry/foundryup.sh index f36be170..5f89bf4d 100755 --- a/sandbox/foundry/foundryup.sh +++ b/sandbox/foundry/foundryup.sh @@ -1,4 +1,9 @@ #!/usr/bin/env bash + +# foundryup - Foundry Installer +# Readme: https://github.com/foundry-rs/foundry/blob/master/foundryup/README.md +# Source: https://github.com/foundry-rs/foundry/blob/master/foundryup/foundryup + set -eo pipefail BASE_DIR=${XDG_CONFIG_HOME:-$HOME} diff --git a/sandbox/state.json b/sandbox/state.json index 8e8747ce..1ce59f9f 100644 --- a/sandbox/state.json +++ b/sandbox/state.json @@ -1 +1 @@ -{"block":{"number":"0x5e","coinbase":"0x0000000000000000000000000000000000000000","timestamp":"0x664e5e98","gas_limit":"0x6691b7","basefee":"0x18871","difficulty":"0x0","prevrandao":"0x0000000000000000000000000000000000000000000000000000000000000000","blob_excess_gas_and_price":{"excess_blob_gas":0,"blob_gasprice":1}},"accounts":{"0x0000000000000000000000000000000000000000":{"nonce":0,"balance":"0x103d21234bcf30e","code":"0x","storage":{}},"0x00e39a5004299871ab3b00fed5a39a715f181d02":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x66":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x67":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xd178b720229c39de617846f84cf9c8d32a63a23d","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0x0458f653495fb8d9bd0e7df468c2bf76d26c7bd9":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f7e83aee1461002d575b5f80fd5b61004061003b3660046105ba565b610054565b604051901515815260200160405180910390f35b5f601482146100a95760405162461bcd60e51b815260206004820152601860248201527f496e76616c696420736861312068617368206c656e6774680000000000000000604482015260640160405180910390fd5b5f6100ec5f85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101599050565b6bffffffffffffffffffffffff191690505f61013c87878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061018a92505050565b6bffffffffffffffffffffffff1916919091149695505050505050565b81515f90610168836014610621565b1115610172575f80fd5b5001602001516bffffffffffffffffffffffff191690565b5f6040518251602084019350604067ffffffffffffffc0600183011601600982820310600181036101bc576040820191505b50776745230100efcdab890098badcfe001032547600c3d2e1f061020d565b5f8383101561020657508082015192829003926020841015610206575f1960208590036101000a0119165b9392505050565b5f5b82811015610514576102228482896101db565b85526102328460208301896101db565b60208601526040818503106001810361024e5760808286038701535b506040830381146001810361026b57602086018051600887021790525b5060405b60808110156102f357858101603f19810151603719820151601f19830151600b198401516002911891909218189081027ffffffffefffffffefffffffefffffffefffffffefffffffefffffffefffffffe1663800000009091047c010000000100000001000000010000000100000001000000010000000116179052600c0161026f565b5060805b61014081101561037c57858101607f19810151606f19820151603f198301516017198401516004911891909218189081027ffffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffc1663400000009091047c0300000003000000030000000300000003000000030000000300000003161790526018016102f7565b50815f805f5b60508110156104ea576014810480156103b257600181146103d957600281146103fe576003811461042857610449565b600160281b8504600160501b86048118600160781b870416189350635a8279999250610449565b600160281b8504600160781b8604600160501b870418189350636ed9eba19250610449565b600160501b8504600160781b8604818117600160281b8804169116179350638f1bbcdc9250610449565b600160281b8504600160781b8604600160501b87041818935063ca62c1d692505b50601f600160bb1b8504168063ffffffe06001609b1b87041617905080840190508063ffffffff8616019050808301905080600160e01b600484028c015104019050600160a01b8102600160281b860417945050600160501b633fffffff600160521b86041663c00000006604000000000000870416170277ffffffff00ffffffff000000000000ffffffff00ffffffff8516179350600181019050610382565b5050509190910177ffffffff00ffffffff00ffffffff00ffffffff00ffffffff169060400161020f565b50600160601b63ffffffff821667ffffffff000000006101008404166bffffffff00000000000000006201000085041663ffffffff60601b630100000086041663ffffffff60801b6401000000008704161717171702945050505050919050565b5f8083601f840112610585575f80fd5b50813567ffffffffffffffff81111561059c575f80fd5b6020830191508360208285010111156105b3575f80fd5b9250929050565b5f805f80604085870312156105cd575f80fd5b843567ffffffffffffffff808211156105e4575f80fd5b6105f088838901610575565b90965094506020870135915080821115610608575f80fd5b5061061587828801610575565b95989497509550505050565b8082018082111561064057634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x06e2822b8856749ed179c77140dbc5f5a27410a4":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063de8f50a11461002d575b5f80fd5b61004061003b36600461051c565b610054565b604051901515815260200160405180910390f35b5f6060805f61009c60048b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506102e79050565b60ff1690508015610166576100f060058261ffff168c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b925061015f6101008260056105c3565b61ffff908116906005906101169085168d6105e5565b61012091906105e5565b8c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b915061021d565b6101a960058b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250929392505061038b9050565b90506101f460078261ffff168c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b925061021a6102048260076105c3565b61ffff908116906007906101169085168d6105e5565b91505b5f606061026084868a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152506103b192505050565b90925090508180156102d757506102856020825161027e91906105e5565b82906103cb565b60028b8b6040516102979291906105f8565b602060405180830381855afa1580156102b2573d5f803e3d5ffd5b5050506040513d601f19601f820116820180604052508101906102d59190610607565b145b9c9b505050505050505050505050565b5f8282815181106102fa576102fa61061e565b016020015160f81c90505b92915050565b825160609061031a8385610632565b1115610324575f80fd5b5f8267ffffffffffffffff81111561033e5761033e610645565b6040519080825280601f01601f191660200182016040528015610368576020820181803683370190505b509050602080820190868601016103808282876103ed565b509095945050505050565b81515f9061039a836002610632565b11156103a4575f80fd5b50016002015161ffff1690565b5f60606103bf838587610442565b91509150935093915050565b81515f906103da836020610632565b11156103e4575f80fd5b50016020015190565b602081106104255781518352610404602084610632565b9250610411602083610632565b915061041e6020826105e5565b90506103ed565b905182516020929092036101000a5f190180199091169116179052565b5f60605f85518551855188888860405160200161046496959493929190610686565b6040516020818303038152906040529050835167ffffffffffffffff81111561048f5761048f610645565b6040519080825280601f01601f1916602001820160405280156104b9576020820181803683370190505b50915083516020830182516020840160055afa925050935093915050565b5f8083601f8401126104e7575f80fd5b50813567ffffffffffffffff8111156104fe575f80fd5b602083019150836020828501011115610515575f80fd5b9250929050565b5f805f805f8060608789031215610531575f80fd5b863567ffffffffffffffff80821115610548575f80fd5b6105548a838b016104d7565b9098509650602089013591508082111561056c575f80fd5b6105788a838b016104d7565b90965094506040890135915080821115610590575f80fd5b5061059d89828a016104d7565b979a9699509497509295939492505050565b634e487b7160e01b5f52601160045260245ffd5b61ffff8181168382160190808211156105de576105de6105af565b5092915050565b81810381811115610305576103056105af565b818382375f9101908152919050565b5f60208284031215610617575f80fd5b5051919050565b634e487b7160e01b5f52603260045260245ffd5b80820180821115610305576103056105af565b634e487b7160e01b5f52604160045260245ffd5b5f81515f5b81811015610678576020818501810151868301520161065e565b505f93019283525090919050565b8681528560208201528460408201525f6106b56106af6106a96060850188610659565b86610659565b84610659565b9897505050505050505056fea164736f6c6343000818000a","storage":{}},"0x0712e8e819712c3bfdb098ce51c87a4ac0296fd8":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x0930ffb2c192b0c9a9dd2372cf7f2845ef39cbb6":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x65":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x66":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xbe92182cab5b84fd18b34881a0c32771e84f5b8b","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c8121905":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x107733fed96c4cd390c944a31f5425a7fb98ae5e":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x65":"0x556e73746f707061626c6520446f6d61696e7300000000000000000000000026","0x66":"0x5544000000000000000000000000000000000000000000000000000000000004","0x133":"0x68747470733a2f2f6578616d706c652e636f6d2f000000000000000000000028","0x134":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x9c74364589a7bce52d7a232f90c98b979577d9ab711dbe7e9fb985471178bff":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf29a433ca043c2d5f13825944af9d019209f338df87172c6b8012dce3044881":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf319a2ef598111826b455194189a27454a0286226eb066e1116f605e0373b37":"0x0","0x1257bbdf5bed452b3eda1d974a9839972d4d54d7fb1cde6a652e653346cc29b8":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x12c033f2252861b1bd15e9b5c71ef1cf26ca53de15eabc3b49e06f596e8755ec":"0x0","0x1348552952ac59b1c2522e84f684e36775420b449eddcdbd28f217183ed58b09":"0x0","0x149026695ebdd2bd6be0a7006aec5d10ddffbe46be181e4468980ea83c004fe9":"0x0","0x14c854a78d51371251661a408306c75d2515b5d509b295a58205e48267082bdc":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x18f06622a1abedc7bb78fcc98b2375188aef6c03b9247beee780b0b095d60285":"0x0","0x201ef5e312d372e2aeac4cf173b46ad2985127c7381f4f9acae5ebbd3a5e3861":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x2215c0abaeffcb5feae8a439b3185f8fba5dd6d97529a56c7609cd41fafdf5f1":"0x1","0x23513200931f98893f46373666c13964c7a821c5b40da7951b921629acf02735":"0x0","0x23f87654b79c6db28828f317e47d0c8deb9eaa2ea4e213fef901836c85036bf3":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x2e4566d865f2e159531492d7643e25e502917762b29082282ab9dfee8fbf54c7":"0x0","0x31fc31c15d389c5908095d314bb8b258352d51e18ac8a2f7fe15f3a0af519145":"0x0","0x3467fdbb447be3074b11c625b56e54d7ab44f3804bef205b07dd436d707d06d5":"0x0","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x62b11ad5f582a5c5d378fb310125b030042554f1","0x3cd80e7291e5f6dffa9af6eb70d47145a8fdd40acb8d09dfd0cf374e8c239b37":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x3f86c4990e663ffa5011ed38824fca68af7e0592eb22f41aebdec0ce84ee672e":"0x0","0x406aa3bf31381c8a323679af48792dfa2e7aa09dd0eb919e307dc4bf84216ff6":"0x0","0x47ce17acd30cc86e021ac7b23be8138ea767f6da503362aac5888a0679270eed":"0x0","0x4a7983c36f64e6df4d467cf706c128c273d30c24bbb172e251a5740624cc0bd3":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x4c42d98041cda7cb7d56b5d04731bd436366eb9f05c30f43671f1d1e2c0b0fa4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x55926eed7087c8cbfa1492f6d367f5e4c14c8d8cd59e2918c37184091369efb1":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x5b20f40cb5e9e634a90df9a72b516c11cc52281a4d1b7b67e672e2fe544ff22f":"0x0","0x6dac3e1cfae338e10c9c2f5000f6256d09afa83708761042001cea734f470ac1":"0x0","0x6defc32a546a6fb1b745bd1bb04e27085e94f01d7ef79587aee2c80853c43a53":"0x0","0x760b245be050a725a39b4fc089ad474a5fd40efa17101e112d30195d590779b4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x7bee59fcac76da32acb23def57eaaf959a4372a4fc180978fbd54f7a4c4b2f3d":"0x0","0x804aee9448e0b539a009ee7c6dd57e686c72e7b182e9622a42922b245a97e61e":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x825f7f8567cfd669c3beab41edff07d4aa51436123deeb0d3623b6a8fdec893c":"0x0","0x8717a3236e6a948df94444f035834fa8f7c5ee663a29f3580f3ef43ab051d6bd":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8a34e37883baf84417a33bb02eec8d1e43e363f617029800ff166614df3f112f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8bd1acdc45b63f1edf5db0b1444f1c4a6f82bf0a5a0a7231c2dd7b76a2b1e35c":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87":"0x0","0x8ed4e9fbdf86edd9f3eb1c8d4fbfc53a2eb863faf4cf5e0d2b307c0b33030091":"0x0","0x8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x90d72780b77edcd0c8daffbac0b21264679e851b734cb090e2b144eb3a28bb98":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x93fc964857984ff804a65eaceac4062669948f2b651ddc6b71373ad142bf45e0":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x9770fa903e700367e0306ab8fd70a2bb4f049417d341a2f8a2409d8d6a2218d1":"0x0","0xb1016fe231c2ed9dba8c95d2658191823b4b9ffa61a7aea530802c6b2ff27c41":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xbe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafe":"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f","0xbe7c5c707db1c91bd2c84880bb1e177b65886d295d9a62df8edfe38f8066cc81":"0x0","0xc3cd64a46de7309013ddb93a16a3024c2e46fb931e4744edf2610fb119f716f5":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xc563f9d3175978a619bae1a8175d3ea4be91d3890345085c5eb16f83b678a3d9":"0x0","0xc5b5cdb7b939f9d661f58f28c37e10cf71d45dacfea2581c88ae4a17aaf55e6e":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xd386775169d9e0716e9b5b08561984726edaa9febd0ca8e5468ecffa112078c7":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xe3b736cdcc6a09d7e3a05ffb63b11f11c91958d861443c3409d3fd863e8217bd":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xe3e5b75e3dff543bfbfe5b494e4e3243b4d9d0b3d794725cea46c28fe6be50e4":"0x0","0xe7d61626cac95282d296ee7ab5958e3e72e32eb959a7cab1d37c0f9d6d69c18a":"0x1a","0xeca5e1ccaa645ce2be97a867a1f8aeeb63ea833aeb009c0df0553b42b30c683f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf08305746cdba1d0eaa65036694838a3db122973267ffc57739d605c320c680a":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf0d566acc03395f71b37890f455d51d93197adf754ea72aba21427dc66b437df":"0x0","0xf230898ba4fe40c52f958d03013d995f822e25a5d4fae43bbdc6e92623cea0bd":"0x0","0xf245a9962043f44f4af98f9952a3bd29d91eb05418e4bb567b9de8f27e239b13":"0x0","0xf2a19ade13962e8675aecf2fbe51913877912f9e48e899806b6e06e82f9a980f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf2fab50b0b53245ddfa1bcfcdf4c73e209d6921dad704d173cf04cbbadc8e346":"0x0","0xfa6f3ee10d719cb3457d10c539ff3d77b8e56852ea62f68b2f9f85ad691ed6b4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xfff3abb219acc6ef4eed6e93a5682023229370196f352cdf3a71a88d881e3487":"0x0"}},"0x11dd97b7ca847dfb6504e61b7b9eb30f55e554a0":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a424740014610090575b600080fd5b610059610054366004610ba9565b6100b3565b6040516100669190610c98565b60405180910390f35b61008261007d366004610cab565b6101ce565b604051908152602001610066565b6100a361009e366004610ba9565b610332565b6040519015158152602001610066565b606060005a6001546040805163b3f9e4cb60e01b81529088013560048201529192506000916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561010a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061012e9190610cd9565b90506101c26101406020880188610cf6565b8260408901358561015460608c018c610d13565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8f018190048102820181019092528d815292508d91508c90819084018382808284376000920191909152506103fb92505050565b925050505b9392505050565b60025460015460405163b3f9e4cb60e01b8152600481018490526000926001600160a01b0390811692169063b3f9e4cb90602401602060405180830381865afa92505050801561023b575060408051601f3d908101601f1916820190925261023891810190610cd9565b60015b156102435790505b6001600160a01b0381163b156102c557604051636ccbae5f60e01b81526004810184905281906001600160a01b03821690636ccbae5f90602401602060405180830381865afa9250505080156102b6575060408051601f3d908101601f191682019092526102b391810190610d5a565b60015b156102c357949350505050565b505b600254604051636ccbae5f60e01b8152600481018590526001600160a01b0390911690636ccbae5f90602401602060405180830381865afa15801561030e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101c79190610d5a565b6001546040805163b3f9e4cb60e01b815290850135600482015260009182916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa158015610383573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103a79190610cd9565b90506103f26103b586610e0b565b8286868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506104d392505050565b95945050505050565b6060600080876001600160a01b0316866104178b8a898961051f565b6040516104249190610eb5565b60006040518083038160008787f1925050503d8060008114610462576040519150601f19603f3d011682016040523d82523d6000602084013e610467565b606091505b509092509050610478603f87610ed1565b5a1161048657610486610ef3565b6104c682826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506105d4565b9998505050505050505050565b60006104e084848461060d565b8015610514575060608401516020908101516001600160e01b031990811660009081529182905260409091205460e01b1615155b949350505050565b50565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036105b15760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526105c982828661074c565b979650505050505050565b606083156105e35750816101c7565b8251156105f35782518084602001fd5b8160405162461bcd60e51b81526004016105a89190610c98565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015610654573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106789190610d5a565b905060006107268660600151805190602001208688602001516040516020016106c69392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156101c2575085516101c2906001600160a01b03168286610935565b60606001600160e01b0319841663b87abc1160e01b036107cd5760008380602001905181019061077c9190610d5a565b9050848184604051602401610792929190610f09565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915291506101c79050565b6001600160e01b0319841663c597407360e01b03610859576000806000858060200190518101906107fe9190610f67565b925092509250868383838860405160240161081c9493929190610fd4565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293506101c792505050565b6001600160e01b031984166311ed383160e31b036108a85760008060008580602001905181019061088a91906110a6565b925092509250868383838860405160240161081c9493929190611157565b6001600160e01b031984166328d55f9b60e21b036101c7576000806000858060200190518101906108d991906110a6565b92509250925086838383886040516024016108f79493929190611157565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293505050509392505050565b60008060006109448585610a77565b9092509050600081600481111561095d5761095d61117c565b14801561097b5750856001600160a01b0316826001600160a01b0316145b1561098b576001925050506101c7565b600080876001600160a01b0316631626ba7e60e01b88886040516024016109b3929190610f09565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516109f19190610eb5565b600060405180830381855afa9150503d8060008114610a2c576040519150601f19603f3d011682016040523d82523d6000602084013e610a31565b606091505b5091509150818015610a44575080516020145b8015610a6b57508051630b135d3f60e11b90610a699083016020908101908401610d5a565b145b98975050505050505050565b6000808251604103610aad5760208301516040840151606085015160001a610aa187828585610abc565b94509450505050610ab5565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610af35750600090506003610ba0565b8460ff16601b14158015610b0b57508460ff16601c14155b15610b1c5750600090506004610ba0565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610b70573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610b9957600060019250925050610ba0565b9150600090505b94509492505050565b600080600060408486031215610bbe57600080fd5b833567ffffffffffffffff80821115610bd657600080fd5b9085019060808288031215610bea57600080fd5b90935060208501359080821115610c0057600080fd5b818601915086601f830112610c1457600080fd5b813581811115610c2357600080fd5b876020828501011115610c3557600080fd5b6020830194508093505050509250925092565b60005b83811015610c63578181015183820152602001610c4b565b50506000910152565b60008151808452610c84816020860160208601610c48565b601f01601f19169290920160200192915050565b6020815260006101c76020830184610c6c565b600060208284031215610cbd57600080fd5b5035919050565b6001600160a01b038116811461051c57600080fd5b600060208284031215610ceb57600080fd5b81516101c781610cc4565b600060208284031215610d0857600080fd5b81356101c781610cc4565b6000808335601e19843603018112610d2a57600080fd5b83018035915067ffffffffffffffff821115610d4557600080fd5b602001915036819003821315610ab557600080fd5b600060208284031215610d6c57600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610dac57610dac610d73565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ddb57610ddb610d73565b604052919050565b600067ffffffffffffffff821115610dfd57610dfd610d73565b50601f01601f191660200190565b600060808236031215610e1d57600080fd5b610e25610d89565b8235610e3081610cc4565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610e6057600080fd5b840136601f820112610e7157600080fd5b8035610e84610e7f82610de3565b610db2565b8181523684838501011115610e9857600080fd5b818484018583013760009181019093015250606082015292915050565b60008251610ec7818460208701610c48565b9190910192915050565b600082610eee57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b8281526040602082015260006105146040830184610c6c565b600082601f830112610f3357600080fd5b8151610f41610e7f82610de3565b818152846020838601011115610f5657600080fd5b610514826020830160208701610c48565b600080600060608486031215610f7c57600080fd5b835167ffffffffffffffff80821115610f9457600080fd5b610fa087838801610f22565b94506020860151915080821115610fb657600080fd5b50610fc386828701610f22565b925050604084015190509250925092565b608081526000610fe76080830187610c6c565b8281036020840152610ff98187610c6c565b905084604084015282810360608401526105c98185610c6c565b600082601f83011261102457600080fd5b8151602067ffffffffffffffff8083111561104157611041610d73565b8260051b611050838201610db2565b938452858101830193838101908886111561106a57600080fd5b84880192505b85831015610a6b578251848111156110885760008081fd5b6110968a87838c0101610f22565b8352509184019190840190611070565b6000806000606084860312156110bb57600080fd5b835167ffffffffffffffff808211156110d357600080fd5b6110df87838801611013565b945060208601519150808211156110f557600080fd5b50610fc386828701611013565b600081518084526020808501808196508360051b8101915082860160005b8581101561114a578284038952611138848351610c6c565b98850198935090840190600101611120565b5091979650505050505050565b60808152600061116a6080830187611102565b8281036020840152610ff98187611102565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x2":"0xf8c26340c1eaea6c7ff1760b25005e1306953572","0x1e74f978992d7d64ddac400bd4aae9eefd60fa0b8456650273f5f50148803323":"0xa3557e6c","0x23c84c23be8f829809d1b1502c647c6c59fb6b2345b163a2ca3e7d4f9855975c":"0x8f69c188","0xa0286316c9d3cb00f4f54a9f1096cefaa1748bb5a5395e7fa1563568ebb3e6c3":"0xb87abc11","0xdc138de224807be243ee38fe9e746cce5d437a256b87be90b80240e0811ad043":"0xc5974073"}},"0x145908bbcfc7b258e4d4d9a586f6e3249ae80216":{"nonce":1,"balance":"0x0","code":"0x3d5c","storage":{}},"0x17cda4e23f7237277952e075b1c48467aabfacc0":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c806368f9dab21461002d575b5f80fd5b61004061003b36600461088b565b610052565b60405190815260200160405180910390f35b5f61006f6040518060400160405280606081526020015f81525090565b61008e61007c858861090d565b61008790601061090d565b82906101d1565b506100d085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250859392505061023a9050565b5061011287878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250859392505061023a9050565b505f610120825f0151610266565b905083156101bc5760408051808201909152606081525f602090910181905282515261014c825f610650565b5061018e88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250869392505061023a9050565b505f5b848110156101ba576101a4835f8461067f565b5082516101b090610266565b9150600101610191565b505b6001600160601b031916979650505050505050565b60408051808201909152606081525f60208201526101f0602083610920565b1561021857610200602083610920565b61020b90602061093f565b610215908361090d565b91505b506020808301829052604080518085525f815283019091019052815b92915050565b60408051808201909152606081525f602082015261025f83845f0151518485516106b2565b9392505050565b5f6040518251602084019350604067ffffffffffffffc060018301160160098282031060018103610298576040820191505b50776745230100efcdab890098badcfe001032547600c3d2e1f06102e8565b5f8383101561025f5750808201519282900392602084101561025f575f1960208590036101000a0119169392505050565b5f5b828110156105ef576102fd8482896102b7565b855261030d8460208301896102b7565b6020860152604081850310600181036103295760808286038701535b506040830381146001810361034657602086018051600887021790525b5060405b60808110156103ce57858101603f19810151603719820151601f19830151600b198401516002911891909218189081027ffffffffefffffffefffffffefffffffefffffffefffffffefffffffefffffffe1663800000009091047c010000000100000001000000010000000100000001000000010000000116179052600c0161034a565b5060805b61014081101561045757858101607f19810151606f19820151603f198301516017198401516004911891909218189081027ffffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffc1663400000009091047c0300000003000000030000000300000003000000030000000300000003161790526018016103d2565b50815f805f5b60508110156105c55760148104801561048d57600181146104b457600281146104d9576003811461050357610524565b600160281b8504600160501b86048118600160781b870416189350635a8279999250610524565b600160281b8504600160781b8604600160501b870418189350636ed9eba19250610524565b600160501b8504600160781b8604818117600160281b8804169116179350638f1bbcdc9250610524565b600160281b8504600160781b8604600160501b87041818935063ca62c1d692505b50601f600160bb1b8504168063ffffffe06001609b1b87041617905080840190508063ffffffff8616019050808301905080600160e01b600484028c015104019050600160a01b8102600160281b860417945050600160501b633fffffff600160521b86041663c00000006604000000000000870416170277ffffffff00ffffffff000000000000ffffffff00ffffffff851617935060018101905061045d565b5050509190910177ffffffff00ffffffff00ffffffff00ffffffff00ffffffff16906040016102ea565b50600160601b63ffffffff821667ffffffff000000006101008404166bffffffff00000000000000006201000085041663ffffffff60601b630100000086041663ffffffff60801b6401000000008704161717171702945050505050919050565b60408051808201909152606081525f602082015282515161025f9084906001600160601b031985166014610798565b60408051808201909152606081525f60208201526106aa84846001600160601b031985166014610798565b949350505050565b60408051808201909152606081525f602082015282518211156106d3575f80fd5b60208501516106e2838661090d565b1115610715576107158561070587602001518786610700919061090d565b610813565b610710906002610952565b610829565b5f808651805187602083010193508088870111156107335787860182525b505050602084015b60208410610773578051825261075260208361090d565b915061075f60208261090d565b905061076c60208561093f565b935061073b565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b60408051808201909152606081525f602082015260208501516107bb858461090d565b11156107cf576107cf85610705868561090d565b5f6001836101000a0390508260200360080284901c93508551838682010185831982511617815250805184870111156108085783860181525b509495945050505050565b5f81831115610823575081610234565b50919050565b815161083583836101d1565b50610840838261023a565b50505050565b5f8083601f840112610856575f80fd5b50813567ffffffffffffffff81111561086d575f80fd5b602083019150836020828501011115610884575f80fd5b9250929050565b5f805f805f6060868803121561089f575f80fd5b853567ffffffffffffffff808211156108b6575f80fd5b6108c289838a01610846565b909750955060208801359150808211156108da575f80fd5b506108e788828901610846565b96999598509660400135949350505050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610234576102346108f9565b5f8261093a57634e487b7160e01b5f52601260045260245ffd5b500690565b81810381811115610234576102346108f9565b8082028115828204841417610234576102346108f956fea164736f6c6343000818000a","storage":{}},"0x19356cc2300833e690088a5a09a2044a3cc2a1e2":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x229c56b7805ab5935a883207f6a6bd5847e65aee":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106102ae5760003560e01c8063906cecc111610175578063b9998a24116100dc578063d547741f11610095578063f2fde38b1161006f578063f2fde38b14610892578063f5243bc4146108b2578063f940e385146108d2578063ffa1ad74146108f257600080fd5b8063d547741f1461083f578063d7db74c71461085f578063ec5273891461087257600080fd5b8063b9998a241461077d578063cc2a9a5b1461079d578063cc2c3fc4146107bd578063ceeb4f50146107dd578063d1f5692c146107fd578063d53913931461081d57600080fd5b8063a3a3f7f61161012e578063a3a3f7f614610690578063a3f4df7e146106b0578063a849d65c146106fd578063aa271e1a1461071d578063b0aa98c71461073d578063b3ab15fb1461075d57600080fd5b8063906cecc1146105e657806391d1485414610606578063983b2d5614610626578063986502751461064657806399e0dd7c1461065b578063a217fddf1461067b57600080fd5b80635b6fa8db11610219578063715018a6116101d2578063715018a61461054b57806371e2a6571461056057806377a2a5891461058057806381c81d35146105a05780638456cb59146105b35780638da5cb5b146105c857600080fd5b80635b6fa8db146104a35780635c975abb146104c35780635cd7e3b3146104d85780635e22cd86146104f85780635fc1964f14610518578063634486da1461053857600080fd5b80633092afd51161026b5780633092afd5146103a857806336568abe146103c85780633f41b614146103e85780633f4ba83a1461042057806351cff8d914610435578063572b6c051461045557600080fd5b806301ffc9a7146102b35780631edb948e146102e857806320c5429b1461030a578063248a9ca31461032a578063268b15ed146103685780632f2ff15d14610388575b600080fd5b3480156102bf57600080fd5b506102d36102ce366004613dc4565b610923565b60405190151581526020015b60405180910390f35b3480156102f457600080fd5b50610308610303366004613e13565b61095a565b005b34801561031657600080fd5b50610308610325366004613e3f565b610b03565b34801561033657600080fd5b5061035a610345366004613e3f565b60009081526097602052604090206001015490565b6040519081526020016102df565b34801561037457600080fd5b50610308610383366004613e99565b610c26565b34801561039457600080fd5b506103086103a3366004613f04565b610cb9565b3480156103b457600080fd5b506103086103c3366004613f34565b610ce3565b3480156103d457600080fd5b506103086103e3366004613f04565b610cf7565b3480156103f457600080fd5b5060c954610408906001600160a01b031681565b6040516001600160a01b0390911681526020016102df565b34801561042c57600080fd5b50610308610d85565b34801561044157600080fd5b50610308610450366004613f34565b610d97565b34801561046157600080fd5b506102d3610470366004613f34565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546001600160a01b0390811691161490565b3480156104af57600080fd5b5060cc54610408906001600160a01b031681565b3480156104cf57600080fd5b506102d3610e37565b3480156104e457600080fd5b506103086104f3366004613fa3565b610e4d565b34801561050457600080fd5b50610308610513366004614062565b6110b1565b34801561052457600080fd5b5061030861053336600461419c565b6112f6565b610308610546366004613f34565b61133e565b34801561055757600080fd5b50610308611401565b34801561056c57600080fd5b5061030861057b36600461419c565b611413565b34801561058c57600080fd5b5060ce54610408906001600160a01b031681565b6103086105ae366004613f34565b61145b565b3480156105bf57600080fd5b506103086114d8565b3480156105d457600080fd5b506033546001600160a01b0316610408565b3480156105f257600080fd5b5061030861060136600461423a565b6114e8565b34801561061257600080fd5b506102d3610621366004613f04565b61156e565b34801561063257600080fd5b50610308610641366004613f34565b611599565b34801561065257600080fd5b506103086115aa565b34801561066757600080fd5b50610308610676366004614295565b6115c4565b34801561068757600080fd5b5061035a600081565b34801561069c57600080fd5b506103086106ab3660046142d6565b6116ab565b3480156106bc57600080fd5b506106f0604051806040016040528060148152602001732aa7299d1026b4b73a34b7339026b0b730b3b2b960611b81525081565b6040516102df919061437c565b34801561070957600080fd5b5060cb54610408906001600160a01b031681565b34801561072957600080fd5b506102d3610738366004613f34565b6116f4565b34801561074957600080fd5b506102d3610758366004613e3f565b61170e565b34801561076957600080fd5b50610308610778366004613f34565b61176c565b34801561078957600080fd5b50610308610798366004613f34565b611796565b3480156107a957600080fd5b506103086107b836600461438f565b6117db565b3480156107c957600080fd5b5060ca54610408906001600160a01b031681565b3480156107e957600080fd5b506103086107f8366004614411565b611cd2565b34801561080957600080fd5b506103086108183660046144c6565b611d76565b34801561082957600080fd5b5061035a600080516020614ef483398151915281565b34801561084b57600080fd5b5061030861085a366004613f04565b611e2d565b61030861086d3660046144fb565b611e52565b34801561087e57600080fd5b5061030861088d366004613e3f565b611fe2565b34801561089e57600080fd5b506103086108ad366004613f34565b612054565b3480156108be57600080fd5b506103086108cd3660046145f0565b612070565b3480156108de57600080fd5b506103086108ed366004614708565b612222565b3480156108fe57600080fd5b506106f060405180604001604052806005815260200164302e352e3160d81b81525081565b60006001600160e01b03198216637965db0b60e01b148061095457506301ffc9a760e01b6001600160e01b03198316145b92915050565b61096561073861239e565b61098a5760405162461bcd60e51b815260040161098190614736565b60405180910390fd5b60c95460405163baef73e960e01b8152600481018390526000916001600160a01b03169063baef73e990602401602060405180830381865afa1580156109d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109f8919061476b565b9050806001600160401b0316600003610a235760405162461bcd60e51b815260040161098190614788565b806001600160401b0316836001600160401b031611610a905760405162461bcd60e51b815260206004820152602360248201527f4d696e74696e674d616e616765723a204558504952595f4e4f545f455854454e60448201526211115160ea1b6064820152608401610981565b60c954604051631fb9763760e11b81526001600160401b0385166004820152602481018490526001600160a01b0390911690633f72ec6e906044015b600060405180830381600087803b158015610ae657600080fd5b505af1158015610afa573d6000803e3d6000fd5b50505050505050565b610b0e61073861239e565b610b2a5760405162461bcd60e51b815260040161098190614736565b60c95460405163baef73e960e01b8152600481018390526001600160a01b039091169063baef73e990602401602060405180830381865afa158015610b73573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b97919061476b565b6001600160401b0316600003610bbf5760405162461bcd60e51b815260040161098190614788565b60c954604051637eee288d60e01b8152306004820152602481018390526001600160a01b0390911690637eee288d90604401600060405180830381600087803b158015610c0b57600080fd5b505af1158015610c1f573d6000803e3d6000fd5b5050505050565b8282828080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250610c6993508592508491506123ad565b610c71610e37565b15610c8e5760405162461bcd60e51b8152600401610981906147cb565b6060610afa610c9b61239e565b610cae88610ca98989612584565b6125b0565b8384600060016126c1565b600082815260976020526040902060010154610cd481612c15565b610cde8383612c26565b505050565b610ceb612cad565b610cf481612d26565b50565b610cff61239e565b6001600160a01b0316816001600160a01b031614610d775760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610981565b610d818282612d3e565b5050565b610d8d612cad565b610d95612dc3565b565b610d9f612cad565b6001600160a01b038116610db257600080fd5b60405147906001600160a01b0383169082156108fc029083906000818181858888f19350505050158015610dea573d6000803e3d6000fd5b50604080516001600160a01b03841681526020810183905260008183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a15050565b600080516020614ed48339815191525460ff1690565b610e5786886147f5565b8051600203610e8c57610e6b61073861239e565b610e875760405162461bcd60e51b8152600401610981906148bf565b610fd1565b6000610e9782612e6b565b60c9549092506001600160a01b0316905063430c2081610eb561239e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015610f00573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f249190614903565b80610fb3575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa158015610f7d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fa19190614903565b8015610fb35750610fb361073861239e565b610fcf5760405162461bcd60e51b815260040161098190614920565b505b610fdb87896147f5565b6000600282511015610fff5760405162461bcd60e51b81526004016109819061496f565b6110546110336000846001865161101691906149ca565b81518110611026576110266149dd565b6020026020010151612ea6565b83600081518110611046576110466149dd565b6020026020010151836123ad565b61105c610e37565b156110795760405162461bcd60e51b8152600401610981906147cb565b6110a38b6110878b8d6147f5565b6110918a8c6147f5565b61109b898b6147f5565b6000896126c1565b505050505050505050505050565b6110bb87896147f5565b80516002036110f0576110cf61073861239e565b6110eb5760405162461bcd60e51b8152600401610981906148bf565b611235565b60006110fb82612e6b565b60c9549092506001600160a01b0316905063430c208161111961239e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015611164573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111889190614903565b80611217575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa1580156111e1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112059190614903565b8015611217575061121761073861239e565b6112335760405162461bcd60e51b815260040161098190614920565b505b61123f888a6147f5565b836002825110156112625760405162461bcd60e51b81526004016109819061496f565b6112796110336000846001865161101691906149ca565b611281610e37565b1561129e5760405162461bcd60e51b8152600401610981906147cb565b60028a146112be5760405162461bcd60e51b8152600401610981906149f3565b6112e78c6112cc8c8e6147f5565b6112d68b8d6147f5565b6112e08a8c6147f5565b89896126c1565b50505050505050505050505050565b6112fe612cad565b60005b8151811015610d815761132c82828151811061131f5761131f6149dd565b6020026020010151612d26565b8061133681614a39565b915050611301565b61134961073861239e565b6113655760405162461bcd60e51b815260040161098190614736565b6001600160a01b0381166113bb5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610981565b6113c481612f5a565b6113cc6115aa565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610d81573d6000803e3d6000fd5b611409612cad565b610d956000612f72565b61141b612cad565b60005b8151811015610d815761144982828151811061143c5761143c6149dd565b6020026020010151612f5a565b8061145381614a39565b91505061141e565b61146661073861239e565b6114825760405162461bcd60e51b815260040161098190614736565b6001600160a01b0381166113c45760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610981565b6114e0612cad565b610d95612fc4565b8282828080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525061152b93508592508491506123ad565b611533610e37565b156115505760405162461bcd60e51b8152600401610981906147cb565b606061156487610cae88610ca98989612584565b5050505050505050565b60009182526097602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6115a1612cad565b610cf481612f5a565b610d95600080516020614ef48339815191526103e361239e565b6115cc612cad565b60c954604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906115fe9085908590600401614a52565b600060405180830381600087803b15801561161857600080fd5b505af115801561162c573d6000803e3d6000fd5b505060cb546001600160a01b0316159150610d8190505760cb54604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906116759085908590600401614a52565b600060405180830381600087803b15801561168f57600080fd5b505af11580156116a3573d6000803e3d6000fd5b505050505050565b6116b3612cad565b610cde83838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525085925061302c915050565b6000610954600080516020614ef48339815191528361156e565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd696020820152908101829052600090611762906060015b6040516020818303038152906040528051906020012090565b5460ff1692915050565b611774612cad565b60ce80546001600160a01b0319166001600160a01b0392909216919091179055565b61179e612cad565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e80546001600160a01b0319166001600160a01b03831617905550565b600054610100900460ff16158080156117fb5750600054600160ff909116105b806118155750303b158015611815575060005460ff166001145b6118785760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610981565b6000805460ff19166001179055801561189b576000805461ff0019166101001790555b60c980546001600160a01b03199081166001600160a01b038a81169190911790925560ca8054821689841617905560cb8054821688841617905560cc8054821687841617905560ce80549091169185169190911790556118f961314c565b611901613183565b61190a826131bc565b6119126131e3565b6040805161036081018252600661032082018181526563727970746f60d01b610340840152825282518084018452818152651dd85b1b195d60d21b602082810191909152808401919091528351808501855260018152600f60fb1b8183015283850152835180850185526003808252621b999d60ea1b82840152606085019190915284518086018652600a815269313637b1b5b1b430b4b760b11b818401526080850152845180860186526007808252663134ba31b7b4b760c91b8285015260a0860191909152855180870187528281526207070760eb1b8185015260c0860152855180870187528281526264616f60e81b8185015260e086015285518087018752828152621e9a5b60ea1b8185015261010086015285518087018752908152663837b63cb3b7b760c91b8184015261012085015284518086018652600b81526a756e73746f707061626c6560a81b81840152610140850152845180860186528381526535b632bb32b960d11b8184015261016085015284518086018652600280825261686960f01b8285015261018086019190915285518087018752848152656b726573757360d01b818501526101a086015285518087018752600580825264616e696d6560d81b828601526101c087019190915286518088018852818152646d616e676160d81b818601526101e087015286518088018852600981526862696e616e6365757360b81b8186015261020087015286518088018852818152647265616c6d60d81b818601526102208701528651808801885291825261676f60f01b82850152610240860191909152855180870187526008815267185b1d1a5b5a5cdd60c21b818501526102608601528551808701875290815264707564677960d81b81840152610280850152845180860186528381526530bab9ba34b760d11b818401526102a08501528451808601865292835265189a5d19d95d60d21b838301526102c08401929092528351808501855291825262706f6760e81b828201526102e083019190915282518084019093526004835263636c617960e01b9083015261030081019190915260005b6019811015611c5c57611c4a828260198110611c3e57611c3e6149dd565b6020020151600061302c565b80611c5481614a39565b915050611c20565b50611c8360405180604001604052806003815260200162636f6d60e81b815250600161302c565b508015610afa576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050505050565b8686868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250611d1593508592508491506123ad565b611d1d610e37565b15611d3a5760405162461bcd60e51b8152600401610981906147cb565b611d698a611d4c8b610ca98c8c612584565b611d56888a6147f5565b611d6087896147f5565b600060016126c1565b5050505050505050505050565b611d7e612cad565b60005b81811015610cde5760c9546001600160a01b03166350960239848484818110611dac57611dac6149dd565b9050602002016020810190611dc19190613f34565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401600060405180830381600087803b158015611e0257600080fd5b505af1158015611e16573d6000803e3d6000fd5b505050508080611e2590614a39565b915050611d81565b600082815260976020526040902060010154611e4881612c15565b610cde8383612d3e565b611e5c898b6147f5565b6000600282511015611e805760405162461bcd60e51b81526004016109819061496f565b611e976110336000846001865161101691906149ca565b611e9f610e37565b15611ebc5760405162461bcd60e51b8152600401610981906147cb565b60028b14611edc5760405162461bcd60e51b8152600401610981906149f3565b611f228d8d8d898960008a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061322392505050565b84341015611f725760405162461bcd60e51b815260206004820181905260248201527f4d696e74696e674d616e616765723a204e4f545f454e4f5547485f46554e44536044820152606401610981565b611f848d8d8d8d8d8d8d8c60006133e3565b843411156112e757611f9461239e565b6001600160a01b03166108fc611faa87346149ca565b6040518115909202916000818181858888f19350505050158015611fd2573d6000803e3d6000fd5b5050505050505050505050505050565b611fea612cad565b611ff38161349f565b61200f5760405162461bcd60e51b815260040161098190614a81565b600081815260cd6020526040812061202691613d76565b60405181907f0aa1aff0f830e739d86baf0e6624d6763da02f7733575e0e463886cd062dea6a90600090a250565b61205c612cad565b612065816134c5565b610cf460008261353b565b61207a8a8c6147f5565b600060028251101561209e5760405162461bcd60e51b81526004016109819061496f565b6120b56110336000846001865161101691906149ca565b6120bd610e37565b156120da5760405162461bcd60e51b8152600401610981906147cb565b60028c146120fa5760405162461bcd60e51b8152600401610981906149f3565b61213f8e8e8e8a898b8a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061322392505050565b856001600160a01b03166323b872dd61215661239e565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152306024820152604481018890526064016020604051808303816000875af11580156121a9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121cd9190614903565b6122115760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610981565b611fd28e8e8e8e8e8e8e8c8e6133e3565b61222a612cad565b6040516370a0823160e01b81523060048201526000906001600160a01b038416906370a0823190602401602060405180830381865afa158015612271573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122959190614ac3565b60405163a9059cbb60e01b81526001600160a01b038481166004830152602482018390529192509084169063a9059cbb906044016020604051808303816000875af11580156122e8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061230c9190614903565b6123505760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610981565b604080516001600160a01b0384811682526020820184905285168183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a1505050565b60006123a8613545565b905090565b6123b68361349f565b6123d25760405162461bcd60e51b815260040161098190614a81565b600083815260cf602052604090205460ff1615156001600160401b03821615151461244e5760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544c445f455850495241424c455f4d496044820152650a69a82a886960d31b6064820152608401610981565b60006124818360408051808201825260008082526020918201528151808301909252825182529182019181019190915290565b9050600a81600001511115612529576124ac6124a0826000600a61358b565b80516020909101512090565b7fb551e0305c8163b812374b8e78b577c77f226f6f10c5ad03e52699578fbc34b8036125295760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544f4b454e5f4c4142454c5f50524f4860448201526512509255115160d21b6064820152608401610981565b612532836135ca565b61257e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a204c4142454c5f494e56414c49440000006044820152606401610981565b50505050565b60608282604051602001612599929190614adc565b604051602081830303815290604052905092915050565b604080516002808252606082810190935260009190816020015b60608152602001906001900390816125ca57905050905082816000815181106125f5576125f56149dd565b602002602001018190525060cd6000858152602001908152602001600020805461261e90614b04565b80601f016020809104026020016040519081016040528092919081815260200182805461264a90614b04565b80156126975780601f1061266c57610100808354040283529160200191612697565b820191906000526020600020905b81548152906001019060200180831161267a57829003601f168201915b5050505050816001815181106126af576126af6149dd565b60209081029190910101529392505050565b60008060006126cf88612e6b565b915091508380156126e1575060028851115b8015612763575060c9546040516331a9108f60e11b8152600481018390526001600160a01b038b8116921690636352211e90602401602060405180830381865afa158015612733573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127579190614b3e565b6001600160a01b031614155b156127c35760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e616765723a20524556455253455f5245434f52445f4e60448201526913d517d0531313d5d15160b21b6064820152608401610981565b60c954604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401602060405180830381865afa15801561280c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128309190614903565b8015612921575060c9546040516331a9108f60e11b81526004810184905230916001600160a01b031690636352211e90602401602060405180830381865afa158015612880573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128a49190614b3e565b6001600160a01b03161480612921575060c95460405163d9548e5360e01b8152600481018490526001600160a01b039091169063d9548e5390602401602060405180830381865afa1580156128fd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129219190614903565b15612a12576001600160401b038516156129a35760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b15801561298a57600080fd5b505af115801561299e573d6000803e3d6000fd5b505050505b60c954604051630fb8df0360e11b81526001600160a01b0390911690631f71be06906129db908c908c908c908c908b90600401614bb0565b600060405180830381600087803b1580156129f557600080fd5b505af1158015612a09573d6000803e3d6000fd5b50505050612c09565b612a1b8261372e565b612a248861378d565b8015612a31575087516002145b8015612a4457506001600160401b038516155b15612b225760ca5488516001600160a01b039091169063c36c2125908b908b90600090612a7357612a736149dd565b602090810291909101015160cc546040516001600160e01b031960e086901b168152612aad9392916001600160a01b031690600401614c0f565b600060405180830381600087803b158015612ac757600080fd5b505af1158015612adb573d6000803e3d6000fd5b50505050600087511115612b1d5760cc54604051633a0deb9d60e21b81526001600160a01b039091169063e837ae74906129db908a908a908790600401614c44565b612c09565b60c95460405163ba5d40b760e01b81526001600160a01b039091169063ba5d40b790612b5a908c908c908c908c908b90600401614bb0565b600060405180830381600087803b158015612b7457600080fd5b505af1158015612b88573d6000803e3d6000fd5b505050506001600160401b03851615612c095760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b158015612bf057600080fd5b505af1158015612c04573d6000803e3d6000fd5b505050505b50979650505050505050565b610cf481612c2161239e565b6137e7565b612c30828261156e565b610d815760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19166001179055612c6961239e565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b612cb561239e565b6001600160a01b0316612cd06033546001600160a01b031690565b6001600160a01b031614610d955760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610981565b610cf4600080516020614ef483398151915282611e2d565b612d48828261156e565b15610d815760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19169055612d7f61239e565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612dcb610e37565b612e0e5760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881393d517d4105554d15160621b6044820152606401610981565b600080516020614ed4833981519152805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa612e4e61239e565b6040516001600160a01b03909116815260200160405180910390a1565b805160009081905b8015612ea057829150612e8c82856110166001856149ca565b925080612e9881614c7a565b915050612e73565b50915091565b60008151600003612ef95760405162461bcd60e51b815260206004820152601b60248201527f4d696e74696e674d616e616765723a204c4142454c5f454d50545900000000006044820152606401610981565b8282604051602001612f0b9190614c91565b60405160208183030381529060405280519060200120604051602001612f3b929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b610cf4600080516020614ef48339815191528261353b565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b612fcc610e37565b15612fe95760405162461bcd60e51b8152600401610981906147cb565b600080516020614ed4833981519152805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258612e4e61239e565b6000613039600084612ea6565b600081815260cd602052604090209091506130548482614cf3565b50600081815260cf602052604090819020805460ff19168415151790555181907f4fce6f6e172b04eaa80325d8e3b0180a34945000f3e214605039e8420fdf8980906130a190869061437c565b60405180910390a260c954604051634f558e7960e01b8152600481018390526001600160a01b0390911690634f558e7990602401602060405180830381865afa1580156130f2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131169190614903565b610cde5760c9546040516307befae360e51b81526001600160a01b039091169063f7df5c6090610acc9084908790600401614db2565b600054610100900460ff166131735760405162461bcd60e51b815260040161098190614dd3565b610d9561317e61239e565b612f72565b600054610100900460ff166131aa5760405162461bcd60e51b815260040161098190614dd3565b610d9560006131b761239e565b61353b565b600054610100900460ff1661179e5760405162461bcd60e51b815260040161098190614dd3565b600054610100900460ff1661320a5760405162461bcd60e51b815260040161098190614dd3565b600080516020614ed4833981519152805460ff19169055565b600061323761323287896147f5565b612e6b565b506040516bffffffffffffffffffffffff1930606090811b821660208401524660348401528b811b82166054840152606883018490526001600160c01b031960c08a901b1660888401526090830188905286901b1660b082015290915060009061331390849061330d9060c401604051602081830303815290604052805190602001206040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c8101829052600090605c01604051602081830303815290604052805190602001209050919050565b9061384b565b905061331e816116f4565b6133765760405162461bcd60e51b8152602060048201526024808201527f4d696e74696e674d616e616765723a205349474e45525f49535f4e4f545f4d49604482015263272a22a960e11b6064820152608401610981565b42866001600160401b0316116133d85760405162461bcd60e51b815260206004820152602160248201527f4d696e74696e674d616e616765723a20455850495245445f5349474e415455526044820152604560f81b6064820152608401610981565b505050505050505050565b600061342a8a6133f38a8c6147f5565b6133fd898b6147f5565b613407888a6147f5565b60008f6001600160a01b031661341b61239e565b6001600160a01b0316146126c1565b9050896001600160a01b031661343e61239e565b6001600160a01b0316827fa545b6fd3355e8d57f8c8147bafe740545bd3ea1f94bef2576a6d532a7c3b605868660405161348b9291909182526001600160a01b0316602082015260400190565b60405180910390a450505050505050505050565b600081815260cd6020526040812080548291906134bb90614b04565b9050119050919050565b6134cd612cad565b6001600160a01b0381166135325760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610981565b610cf481612f72565b610d818282612c26565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546000906001600160a01b03163303613586575060331936013560601c90565b503390565b604080518082019091526000808252602082015260405180604001604052808381526020018486602001516135c09190614e1e565b9052949350505050565b600081516000036135dd57506000919050565b60208201805160f81c603081108015906135fb575060398160ff1611155b15801561361d575060618160ff161015801561361b5750607a8160ff1611155b155b1561362c575060009392505050565b8351600181111561369a5761364e836136466001846149ca565b015160f81c90565b915060308260ff1610158015613668575060398260ff1611155b15801561368a575060618260ff16101580156136885750607a8260ff1611155b155b1561369a57506000949350505050565b60015b6136a86001836149ca565b811015613722578381015160f81c9250602d83148015906136de575060308360ff16101580156136dc575060398360ff1611155b155b80156136ff575060618360ff16101580156136fd5750607a8360ff1611155b155b156137105750600095945050505050565b8061371a81614a39565b91505061369d565b50600195945050505050565b6137378161170e565b156137845760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a20544f4b454e5f424c4f434b45440000006044820152606401610981565b610cf48161386f565b6000806137a46000846001865161101691906149ca565b60ca549091506001600160a01b0316158015906137e05750807f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f145b9392505050565b6137f1828261156e565b610d8157613809816001600160a01b031660146138f3565b6138148360206138f3565b604051602001613825929190614e31565b60408051601f198184030181529082905262461bcd60e51b82526109819160040161437c565b600080600061385a8585613a8e565b9150915061386781613ad3565b509392505050565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd6960208201529081018290526001906138ae90606001611749565b805460ff19169115159190911790556040518181527f2ce5d9351b1d590d5a066db0d2dc7602d55f092506a83a7ee8c4d78ee357d75a9060200160405180910390a150565b60606000613902836002614ea6565b61390d906002614e1e565b6001600160401b0381111561392457613924614133565b6040519080825280601f01601f19166020018201604052801561394e576020820181803683370190505b509050600360fc1b81600081518110613969576139696149dd565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110613998576139986149dd565b60200101906001600160f81b031916908160001a90535060006139bc846002614ea6565b6139c7906001614e1e565b90505b6001811115613a3f576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106139fb576139fb6149dd565b1a60f81b828281518110613a1157613a116149dd565b60200101906001600160f81b031916908160001a90535060049490941c93613a3881614c7a565b90506139ca565b5083156137e05760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610981565b6000808251604103613ac45760208301516040840151606085015160001a613ab887828585613c89565b94509450505050613acc565b506000905060025b9250929050565b6000816004811115613ae757613ae7614ebd565b03613aef5750565b6001816004811115613b0357613b03614ebd565b03613b505760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152606401610981565b6002816004811115613b6457613b64614ebd565b03613bb15760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610981565b6003816004811115613bc557613bc5614ebd565b03613c1d5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b6064820152608401610981565b6004816004811115613c3157613c31614ebd565b03610cf45760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c604482015261756560f01b6064820152608401610981565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613cc05750600090506003613d6d565b8460ff16601b14158015613cd857508460ff16601c14155b15613ce95750600090506004613d6d565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613d3d573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613d6657600060019250925050613d6d565b9150600090505b94509492505050565b508054613d8290614b04565b6000825580601f10613d92575050565b601f016020900490600052602060002090810190610cf491905b80821115613dc05760008155600101613dac565b5090565b600060208284031215613dd657600080fd5b81356001600160e01b0319811681146137e057600080fd5b6001600160401b0381168114610cf457600080fd5b8035613e0e81613dee565b919050565b60008060408385031215613e2657600080fd5b8235613e3181613dee565b946020939093013593505050565b600060208284031215613e5157600080fd5b5035919050565b60008083601f840112613e6a57600080fd5b5081356001600160401b03811115613e8157600080fd5b602083019150836020828501011115613acc57600080fd5b600080600060408486031215613eae57600080fd5b8335925060208401356001600160401b03811115613ecb57600080fd5b613ed786828701613e58565b9497909650939450505050565b6001600160a01b0381168114610cf457600080fd5b8035613e0e81613ee4565b60008060408385031215613f1757600080fd5b823591506020830135613f2981613ee4565b809150509250929050565b600060208284031215613f4657600080fd5b81356137e081613ee4565b60008083601f840112613f6357600080fd5b5081356001600160401b03811115613f7a57600080fd5b6020830191508360208260051b8501011115613acc57600080fd5b8015158114610cf457600080fd5b60008060008060008060008060a0898b031215613fbf57600080fd5b8835613fca81613ee4565b975060208901356001600160401b0380821115613fe657600080fd5b613ff28c838d01613f51565b909950975060408b013591508082111561400b57600080fd5b6140178c838d01613f51565b909750955060608b013591508082111561403057600080fd5b5061403d8b828c01613f51565b909450925050608089013561405181613f95565b809150509295985092959890939650565b600080600080600080600080600060c08a8c03121561408057600080fd5b893561408b81613ee4565b985060208a01356001600160401b03808211156140a757600080fd5b6140b38d838e01613f51565b909a50985060408c01359150808211156140cc57600080fd5b6140d88d838e01613f51565b909850965060608c01359150808211156140f157600080fd5b506140fe8c828d01613f51565b90955093505060808a013561411281613dee565b915060a08a013561412281613f95565b809150509295985092959850929598565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561417157614171614133565b604052919050565b60006001600160401b0382111561419257614192614133565b5060051b60200190565b600060208083850312156141af57600080fd5b82356001600160401b038111156141c557600080fd5b8301601f810185136141d657600080fd5b80356141e96141e482614179565b614149565b81815260059190911b8201830190838101908783111561420857600080fd5b928401925b8284101561422f57833561422081613ee4565b8252928401929084019061420d565b979650505050505050565b6000806000806060858703121561425057600080fd5b843561425b81613ee4565b93506020850135925060408501356001600160401b0381111561427d57600080fd5b61428987828801613e58565b95989497509550505050565b600080602083850312156142a857600080fd5b82356001600160401b038111156142be57600080fd5b6142ca85828601613e58565b90969095509350505050565b6000806000604084860312156142eb57600080fd5b83356001600160401b0381111561430157600080fd5b61430d86828701613e58565b909450925050602084013561432181613f95565b809150509250925092565b60005b8381101561434757818101518382015260200161432f565b50506000910152565b6000815180845261436881602086016020860161432c565b601f01601f19169290920160200192915050565b6020815260006137e06020830184614350565b60008060008060008060c087890312156143a857600080fd5b86356143b381613ee4565b955060208701356143c381613ee4565b945060408701356143d381613ee4565b935060608701356143e381613ee4565b925060808701356143f381613ee4565b915060a087013561440381613ee4565b809150509295509295509295565b60008060008060008060008060a0898b03121561442d57600080fd5b883561443881613ee4565b97506020890135965060408901356001600160401b038082111561445b57600080fd5b6144678c838d01613e58565b909850965060608b013591508082111561448057600080fd5b61448c8c838d01613f51565b909650945060808b01359150808211156144a557600080fd5b506144b28b828c01613f51565b999c989b5096995094979396929594505050565b600080602083850312156144d957600080fd5b82356001600160401b038111156144ef57600080fd5b6142ca85828601613f51565b600080600080600080600080600080600060e08c8e03121561451c57600080fd5b6145258c613ef9565b9a506001600160401b038060208e0135111561454057600080fd5b6145508e60208f01358f01613f51565b909b50995060408d013581101561456657600080fd5b6145768e60408f01358f01613f51565b909950975060608d013581101561458c57600080fd5b61459c8e60608f01358f01613f51565b90975095506145ad60808e01613e03565b945060a08d013593508060c08e013511156145c757600080fd5b506145d88d60c08e01358e01613e58565b81935080925050509295989b509295989b9093969950565b6000806000806000806000806000806000806101008d8f03121561461357600080fd5b61461c8d613ef9565b9b506001600160401b0360208e0135111561463657600080fd5b6146468e60208f01358f01613f51565b909b5099506001600160401b0360408e0135111561466357600080fd5b6146738e60408f01358f01613f51565b90995097506001600160401b0360608e0135111561469057600080fd5b6146a08e60608f01358f01613f51565b90975095506146b160808e01613e03565b94506146bf60a08e01613ef9565b935060c08d013592506001600160401b0360e08e013511156146e057600080fd5b6146f08e60e08f01358f01613e58565b81935080925050509295989b509295989b509295989b565b6000806040838503121561471b57600080fd5b823561472681613ee4565b91506020830135613f2981613ee4565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b60006020828403121561477d57600080fd5b81516137e081613dee565b60208082526023908201527f4d696e74696e674d616e616765723a20544f4b454e5f4e4f545f455850495241604082015262424c4560e81b606082015260800190565b60208082526010908201526f14185d5cd8589b194e8814105554d15160821b604082015260600190565b60006148036141e484614179565b80848252602080830192508560051b85013681111561482157600080fd5b855b818110156148b35780356001600160401b03808211156148435760008081fd5b90880190601f36818401126148585760008081fd5b82358281111561486a5761486a614133565b61487b818301601f19168801614149565b9250808352368782860101111561489457600091508182fd5b8087850188850137600090830187015250865250938201938201614823565b50919695505050505050565b60208082526024908201527f4d696e74696e674d616e616765723a2043414c4c45525f49535f4e4f545f4d49604082015263272a22a960e11b606082015260800190565b60006020828403121561491557600080fd5b81516137e081613f95565b6020808252602f908201527f4d696e74696e674d616e616765723a2053454e4445525f49535f4e4f545f415060408201526e282927ab22a22fa7a92fa7aba722a960891b606082015260800190565b60208082526025908201527f4d696e74696e674d616e616765723a204c4142454c535f4c454e4754485f42456040820152642627abaf9960d91b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b81810381811115610954576109546149b4565b634e487b7160e01b600052603260045260246000fd5b60208082526026908201527f4d696e74696e674d616e616765723a20535542444f4d41494e535f4e4f545f41604082015265131313d5d15160d21b606082015260800190565b600060018201614a4b57614a4b6149b4565b5060010190565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b60208082526022908201527f4d696e74696e674d616e616765723a20544c445f4e4f545f5245474953544552604082015261115160f21b606082015260800190565b600060208284031215614ad557600080fd5b5051919050565b6b756e732d646576746573742d60a01b81528183600c83013760009101600c01908152919050565b600181811c90821680614b1857607f821691505b602082108103614b3857634e487b7160e01b600052602260045260246000fd5b50919050565b600060208284031215614b5057600080fd5b81516137e081613ee4565b600081518084526020808501808196508360051b8101915082860160005b85811015614ba3578284038952614b91848351614350565b98850198935090840190600101614b79565b5091979650505050505050565b6001600160a01b038616815260a060208201819052600090614bd490830187614b5b565b8281036040840152614be68187614b5b565b90508281036060840152614bfa8186614b5b565b91505082151560808301529695505050505050565b600060018060a01b03808616835260606020840152614c316060840186614350565b9150808416604084015250949350505050565b606081526000614c576060830186614b5b565b8281036020840152614c698186614b5b565b915050826040830152949350505050565b600081614c8957614c896149b4565b506000190190565b60008251614ca381846020870161432c565b9190910192915050565b601f821115610cde57600081815260208120601f850160051c81016020861015614cd45750805b601f850160051c820191505b818110156116a357828155600101614ce0565b81516001600160401b03811115614d0c57614d0c614133565b614d2081614d1a8454614b04565b84614cad565b602080601f831160018114614d555760008415614d3d5750858301515b600019600386901b1c1916600185901b1785556116a3565b600085815260208120601f198616915b82811015614d8457888601518255948401946001909101908401614d65565b5085821015614da25787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b828152604060208201526000614dcb6040830184614350565b949350505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b80820180821115610954576109546149b4565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351614e6981601785016020880161432c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351614e9a81602884016020880161432c565b01602801949350505050565b8082028115828204841417610954576109546149b4565b634e487b7160e01b600052602160045260246000fdfe5496787fc1ebdfeba375028c1865f13fbb1d63c0caa356ccc1b29a80f3ebd6229f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000811000a","storage":{}},"0x24f45688d421f46cca60734bdc648ad192db0f2e":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0x1","0x97":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x12d":"0x0","0x15f":"0x5cc819c9915eadfcebd76952b8c1bc36cadd7376","0x13cf90498be59d359caa5b6092b365feab4610605d7107d1f05f8e94ac955652":"0x1","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x54563a9e1cd2dcbd0bca90d3cfa4a647e02c404a","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106102295760003560e01c8063886a69ba11610123578063cf1d21c0116100ab578063e2c49de11161006f578063e2c49de11461091d578063e3dec8fb14610932578063e43009a6146109c8578063e66f9603146109fb578063ea60c7c414610a2557610240565b8063cf1d21c014610844578063d233a3c714610859578063d547741f1461089c578063d81c8e52146108d5578063dc993a23146108ea57610240565b8063a217fddf116100f2578063a217fddf1461078a578063b4b4f63e1461079f578063bc08452b146107b4578063c4d66de8146107e7578063ca15c8731461081a57610240565b8063886a69ba146106c95780639010d07c146106de5780639173b1391461070e57806391d148541461075157610240565b80633138b6f1116101b1578063568b80b511610175578063568b80b5146105fb578063607f2d4214610610578063630fcbfb1461064e5780636cb136b0146106635780636e86b7701461069657610240565b80633138b6f1146104f55780633408e4701461050a57806336568abe1461051f5780633805550f146105585780634faa8a26146105d557610240565b80630f7e5970116101f85780630f7e59701461042357806320379ee514610438578063248a9ca31461045f5780632d0335ab146104895780632f2ff15d146104bc57610240565b806304967702146102455780630c3894bb146102765780630c53c51c146102b15780630c598220146103ea57610240565b366102405761023e610239610a58565b610a68565b005b600080fd5b34801561025157600080fd5b5061025a610b69565b604080516001600160a01b039092168252519081900360200190f35b34801561028257600080fd5b5061023e6004803603604081101561029957600080fd5b506001600160a01b0381358116916020013516610b78565b610375600480360360a08110156102c757600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156102f257600080fd5b82018360208201111561030457600080fd5b8035906020019184600183028401116401000000008311171561032657600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550508235935050506020810135906040013560ff16610cc9565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103af578181015183820152602001610397565b50505050905090810190601f1680156103dc5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156103f657600080fd5b5061023e6004803603604081101561040d57600080fd5b50803590602001356001600160a01b0316610fcc565b34801561042f57600080fd5b506103756110b9565b34801561044457600080fd5b5061044d6110d6565b60408051918252519081900360200190f35b34801561046b57600080fd5b5061044d6004803603602081101561048257600080fd5b50356110dc565b34801561049557600080fd5b5061044d600480360360208110156104ac57600080fd5b50356001600160a01b03166110f4565b3480156104c857600080fd5b5061023e600480360360408110156104df57600080fd5b50803590602001356001600160a01b031661110f565b34801561050157600080fd5b5061025a611176565b34801561051657600080fd5b5061044d611185565b34801561052b57600080fd5b5061023e6004803603604081101561054257600080fd5b50803590602001356001600160a01b0316611189565b34801561056457600080fd5b5061023e6004803603602081101561057b57600080fd5b81019060208101813564010000000081111561059657600080fd5b8201836020820111156105a857600080fd5b803590602001918460018302840111640100000000831117156105ca57600080fd5b5090925090506111ea565b61023e600480360360208110156105eb57600080fd5b50356001600160a01b03166116ec565b34801561060757600080fd5b5061044d6116f8565b34801561061c57600080fd5b5061063a6004803603602081101561063357600080fd5b503561171b565b604080519115158252519081900360200190f35b34801561065a57600080fd5b5061023e611730565b34801561066f57600080fd5b5061023e6004803603602081101561068657600080fd5b50356001600160a01b03166117d6565b3480156106a257600080fd5b5061025a600480360360208110156106b957600080fd5b50356001600160a01b031661186e565b3480156106d557600080fd5b5061044d611889565b3480156106ea57600080fd5b5061025a6004803603604081101561070157600080fd5b50803590602001356118aa565b34801561071a57600080fd5b5061023e6004803603606081101561073157600080fd5b506001600160a01b038135811691602081013590911690604001356118d1565b34801561075d57600080fd5b5061063a6004803603604081101561077457600080fd5b50803590602001356001600160a01b0316611a06565b34801561079657600080fd5b5061044d611a24565b3480156107ab57600080fd5b5061023e611a29565b3480156107c057600080fd5b5061023e600480360360208110156107d757600080fd5b50356001600160a01b0316611acf565b3480156107f357600080fd5b5061023e6004803603602081101561080a57600080fd5b50356001600160a01b0316611b67565b34801561082657600080fd5b5061044d6004803603602081101561083d57600080fd5b5035611c57565b34801561085057600080fd5b5061025a611c6e565b34801561086557600080fd5b5061023e6004803603606081101561087c57600080fd5b506001600160a01b03813581169160208101359091169060400135611c86565b3480156108a857600080fd5b5061023e600480360360408110156108bf57600080fd5b50803590602001356001600160a01b0316611de8565b3480156108e157600080fd5b5061044d611e41565b3480156108f657600080fd5b5061023e6004803603602081101561090d57600080fd5b50356001600160a01b0316611e60565b34801561092957600080fd5b5061025a611f3d565b34801561093e57600080fd5b5061023e6004803603606081101561095557600080fd5b6001600160a01b03823581169260208101359091169181019060608101604082013564010000000081111561098957600080fd5b82018360208201111561099b57600080fd5b803590602001918460018302840111640100000000831117156109bd57600080fd5b509092509050611f4c565b3480156109d457600080fd5b5061044d600480360360208110156109eb57600080fd5b50356001600160a01b0316611fe9565b348015610a0757600080fd5b5061025a60048036036020811015610a1e57600080fd5b5035611ffb565b348015610a3157600080fd5b5061025a60048036036020811015610a4857600080fd5b50356001600160a01b0316612016565b6000610a62612031565b90505b90565b604080513460208083019190915282518083039091018152908201909152610aa58273eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee8361208e565b7fa1829a9003092132f585b6ccdd167c19fe9774dbdea4260287e8a8e8ca8185d7546000908152600260205260408082205490516001600160a01b039091169034908381818185875af1925050503d8060008114610b1f576040519150601f19603f3d011682016040523d82523d6000602084013e610b24565b606091505b5050905080610b645760405162461bcd60e51b815260040180806020018281038252602781526020018061419d6027913960400191505060405180910390fd5b505050565b6009546001600160a01b031681565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020610ba981610ba4610a58565b611a06565b600a90610c495760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b820191906000526020600020905b815481529060010190602001808311610c1d57829003601f168201915b50509250505060405180910390fd5b506001600160a01b03808416600081815260036020908152604080832080546001600160a01b0319908116909155948716808452600483528184208054909616909555838352600590915280822082905551909291907f9e651a8866fbea043e911d816ec254b0e3c992c06fff32d605e72362d6023bd9908490a4505050565b6060610cd3613e2a565b50604080516060810182526001600160a01b0388166000818152600c602090815290849020548352820152908101869052610d118782878787612508565b610d4c5760405162461bcd60e51b81526004018080602001828103825260218152602001806141c46021913960400191505060405180910390fd5b6001600160a01b0387166000908152600c6020526040902054610d7690600163ffffffff6125e516565b6001600160a01b0388166000818152600c602090815260408083209490945583519283523383820181905260609484018581528b51958501959095528a517f5845892132946850460bff5a0083f71031bc5bf9aadcd40f1de79423eac9b10b958d9592948d94919260808501928601918190849084905b83811015610e05578181015183820152602001610ded565b50505050905090810190601f168015610e325780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a160006060306001600160a01b0316888a6040516020018083805190602001908083835b60208310610e835780518252601f199092019160209182019101610e64565b6001836020036101000a038019825116818451168082178552505050505050905001826001600160a01b03166001600160a01b031660601b8152601401925050506040516020818303038152906040526040518082805190602001908083835b60208310610f025780518252601f199092019160209182019101610ee3565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610f64576040519150601f19603f3d011682016040523d82523d6000602084013e610f69565b606091505b509150915081610fc0576040805162461bcd60e51b815260206004820152601c60248201527f46756e6374696f6e2063616c6c206e6f74207375636365737366756c00000000604482015290519081900360640190fd5b98975050505050505050565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020610ff881610ba4610a58565b600a9061105e5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5060008381526002602052604080822080546001600160a01b0319166001600160a01b0386169081179091559051909185917f8643692ae1c12ec91fa18e50b82ed93fa314f580999a236824db6de9ae0d839b9190a3505050565b604051806040016040528060018152602001603160f81b81525081565b600b5490565b6000818152600160205260409020600201545b919050565b6001600160a01b03166000908152600c602052604090205490565b60008281526001602052604090206002015461112d90610ba4610a58565b6111685760405162461bcd60e51b815260040180806020018281038252602f815260200180613f78602f913960400191505060405180910390fd5b611172828261263f565b5050565b6008546001600160a01b031690565b4690565b611191610a58565b6001600160a01b0316816001600160a01b0316146111e05760405162461bcd60e51b815260040180806020018281038252602f815260200180614286602f913960400191505060405180910390fd5b61117282826126ae565b606061123361122e84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061271d92505050565b612798565b905060006112548260028151811061124757fe5b602002602001015161291a565b6112796112748460088151811061126757fe5b6020026020010151612a62565b612b2c565b6112898460098151811061124757fe5b6040516020018084815260200183805190602001908083835b602083106112c15780518252601f1990920191602091820191016112a2565b51815160209384036101000a6000190180199092169116179052920193845250604080518085038152938201815283519382019390932060008181526006909252929020549194505060ff1615915061134d90505760405162461bcd60e51b81526004018080602001828103825260288152602001806142096028913960400191505060405180910390fd5b6000818152600660208190526040909120805460ff19166001179055825160609161138a9161122e9161138591879190811061126757fe5b61271d565b9050611394613e54565b6113b1826003815181106113a457fe5b6020026020010151612798565b6113c18560098151811061124757fe5b815181106113cb57fe5b6020026020010151905060006113fc6113e383612798565b6000815181106113ef57fe5b6020026020010151612c9f565b6001600160a01b0380821660009081526004602052604090205491925016806114565760405162461bcd60e51b81526004018080602001828103825260228152602001806140af6022913960400191505060405180910390fd5b6001600160a01b03808216600090815260056020908152604080832054835260029091529020548751911690611493908890600890811061124757fe5b63ffffffff1916156114d65760405162461bcd60e51b815260040180806020018281038252602581526020018061408a6025913960400191505060405180910390fd5b61151e6114e98860068151811061126757fe5b6114f98960088151811061126757fe5b6115098a60078151811061126757fe5b6115198b60058151811061124757fe5b612d2f565b61156f576040805162461bcd60e51b815260206004820152601f60248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f50524f4f4600604482015290519081900360640190fd5b6115dd6115828860028151811061124757fe5b6115928960038151811061124757fe5b6115a28a60048151811061124757fe5b60001b6115b58b60058151811061124757fe5b60001b6115c88c60008151811061124757fe5b6115d88d60018151811061126757fe5b612f76565b50806001600160a01b0316638274664f6115f5610a58565b846115ff886130bf565b6040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561167b578181015183820152602001611663565b50505050905090810190601f1680156116a85780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b1580156116c957600080fd5b505af11580156116dd573d6000803e3d6000fd5b50505050505050505050505050565b6116f581610a68565b50565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b01902081565b60066020526000908152604090205460ff1681565b600061173e81610ba4610a58565b600a906117a45760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506116f56040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b81525061312d565b60006117e481610ba4610a58565b600a9061184a5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5050600780546001600160a01b0319166001600160a01b0392909216919091179055565b6004602052600090815260409020546001600160a01b031681565b604080516826a0a82faa27a5a2a760b91b8152905190819003600901902081565b60008281526001602052604081206118c8908363ffffffff6131e916565b90505b92915050565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b0190206118fd81610ba4610a58565b600a906119635760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b03848116600090815260036020526040902054161580156119a457506001600160a01b0383811660009081526004602052604090205416155b6119f5576040805162461bcd60e51b815260206004820181905260248201527f526f6f74436861696e4d616e616765723a20414c52454144595f4d4150504544604482015290519081900360640190fd5b611a008484846131f5565b50505050565b60008281526001602052604081206118c8908363ffffffff61348416565b600081565b6000611a3781610ba4610a58565b600a90611a9d5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506116f56040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613499565b6000611add81610ba4610a58565b600a90611b435760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5050600880546001600160a01b0319166001600160a01b0392909216919091179055565b60005460ff1615611bb0576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b611be16040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613537565b611c126040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613499565b611c1d600082611168565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020611c479082611168565b506000805460ff19166001179055565b60008181526001602052604081206118cb90613589565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020611cb281610ba4610a58565b600a90611d185760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b0380851660009081526003602081815260408084205488861685526004835281852054861680865293909252909220549183169290911615611d8e576001600160a01b038116600090815260036020908152604080832080546001600160a01b031916905560059091528120555b6001600160a01b038281166000908152600460205260409020541615611dd5576001600160a01b038216600090815260046020526040902080546001600160a01b03191690555b611de08686866131f5565b505050505050565b600082815260016020526040902060020154611e0690610ba4610a58565b6111e05760405162461bcd60e51b81526004018080602001828103825260308152602001806140f96030913960400191505060405180910390fd5b604080516611115413d4d25560ca1b8152905190819003600701902081565b6000611e6e81610ba4610a58565b600a90611ed45760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b038216611f1a5760405162461bcd60e51b815260040180806020018281038252602d815260200180613fa7602d913960400191505060405180910390fd5b50600980546001600160a01b0319166001600160a01b0392909216919091179055565b6007546001600160a01b031690565b6001600160a01b03831673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee1415611fa85760405162461bcd60e51b81526004018080602001828103825260248152602001806141e56024913960400191505060405180910390fd5b611a00848484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061208e92505050565b60056020526000908152604090205481565b6002602052600090815260409020546001600160a01b031681565b6003602052600090815260409020546001600160a01b031681565b6000333014156120895760606000368080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505050503601516001600160a01b03169150610a659050565b503390565b6001600160a01b03808316600090815260056020908152604080832054600390925290912054909116158015906120c457508015155b6120ff5760405162461bcd60e51b81526004018080602001828103825260228152602001806140af6022913960400191505060405180910390fd5b6000818152600260205260409020546001600160a01b0316806121535760405162461bcd60e51b81526004018080602001828103825260248152602001806140176024913960400191505060405180910390fd5b6001600160a01b0385166121ae576040805162461bcd60e51b815260206004820152601e60248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f555345520000604482015290519081900360640190fd5b806001600160a01b031663e375b64e6121c5610a58565b8787876040518563ffffffff1660e01b815260040180856001600160a01b03166001600160a01b03168152602001846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561225c578181015183820152602001612244565b50505050905090810190601f1680156122895780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b1580156122ab57600080fd5b505af11580156122bf573d6000803e3d6000fd5b50505050606085858560405160200180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015612338578181015183820152602001612320565b50505050905090810190601f1680156123655780820380516001836020036101000a031916815260200191505b5060408051808303601f19018152828252600780546009546611115413d4d25560ca1b865284519586900390920185206020808701828152878701968752855160608901528551959d506001600160a01b039384169c506316f198319b5092909316985096508a955093608001919085019080838360005b838110156123f55781810151838201526020016123dd565b50505050905090810190601f1680156124225780820380516001836020036101000a031916815260200191505b5093505050506040516020818303038152906040526040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561249b578181015183820152602001612483565b50505050905090810190601f1680156124c85780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b1580156124e857600080fd5b505af11580156124fc573d6000803e3d6000fd5b50505050505050505050565b60006001600160a01b03861661254f5760405162461bcd60e51b81526004018080602001828103825260258152602001806141296025913960400191505060405180910390fd5b600161256261255d87613594565b613620565b83868660405160008152602001604052604051808581526020018460ff1660ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa1580156125bc573d6000803e3d6000fd5b505050602060405103516001600160a01b0316866001600160a01b031614905095945050505050565b6000828201838110156118c8576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600082815260016020526040902061265d908263ffffffff61366c16565b156111725761266a610a58565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b60008281526001602052604090206126cc908263ffffffff61368116565b15611172576126d9610a58565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612725613e54565b600082511161277b576040805162461bcd60e51b815260206004820152601f60248201527f524c505265616465723a20494e56414c49445f42595445535f4c454e47544800604482015290519081900360640190fd5b506040805180820190915281518152602082810190820152919050565b60606127a382613696565b6127f4576040805162461bcd60e51b815260206004820152601860248201527f524c505265616465723a204954454d5f4e4f545f4c4953540000000000000000604482015290519081900360640190fd5b60006127ff836136c2565b905060608167ffffffffffffffff8111801561281a57600080fd5b5060405190808252806020026020018201604052801561285457816020015b612841613e54565b8152602001906001900390816128395790505b5090506000612866856020015161374e565b855190915081146128a85760405162461bcd60e51b81526004018080602001828103825260278152602001806142316027913960400191505060405180910390fd5b60006128b786602001516137e2565b60208701510190506000805b8581101561290e576128d48361374e565b91506040518060400160405280838152602001848152508582815181106128f757fe5b6020908102919091010152918101916001016128c3565b50929695505050505050565b600061292582613696565b15612977576040805162461bcd60e51b815260206004820181905260248201527f524c505265616465723a204445434f44494e475f4c4953545f41535f55494e54604482015290519081900360640190fd5b8151602110156129ce576040805162461bcd60e51b815260206004820152601e60248201527f524c505265616465723a20494e56414c49445f55494e545f4c454e4754480000604482015290519081900360640190fd5b60006129dd836020015161374e565b83519091508114612a1f5760405162461bcd60e51b81526004018080602001828103825260278152602001806142b56027913960400191505060405180910390fd5b6000612a2e84602001516137e2565b84516020808701518301805193945091849003929190831015612a5857826020036101000a820491505b5095945050505050565b60606000612a73836020015161374e565b83519091508114612ab55760405162461bcd60e51b81526004018080602001828103825260288152602001806140d16028913960400191505060405180910390fd5b6000612ac484602001516137e2565b845190915081900360608167ffffffffffffffff81118015612ae557600080fd5b506040519080825280601f01601f191660200182016040528015612b10576020820181803683370190505b5090506000816020019050612a58848860200151018285613845565b604080516020810190915260008152815160609190156118cb57600080612b54600086613890565b60f81c90506001811480612b6b57508060ff166003145b15612bfa57600185516002020367ffffffffffffffff81118015612b8e57600080fd5b506040519080825280601f01601f191660200182016040528015612bb9576020820181803683370190505b5092506000612bc9600187613890565b90508084600081518110612bd957fe5b60200101906001600160f81b031916908160001a9053506001925050612c4b565b600285516002020367ffffffffffffffff81118015612c1857600080fd5b506040519080825280601f01601f191660200182016040528015612c43576020820181803683370190505b509250600091505b60ff82165b8351811015612c9657612c6b8360ff16820360020187613890565b848281518110612c7757fe5b60200101906001600160f81b031916908160001a905350600101612c50565b50505092915050565b6000612caa82613696565b15612ce65760405162461bcd60e51b815260040180806020018281038252602381526020018061417a6023913960400191505060405180910390fd5b8151601514612d265760405162461bcd60e51b81526004018080602001828103825260218152602001806142dc6021913960400191505060405180910390fd5b6118cb8261291a565b6000612d39613e54565b612d428461271d565b90506060612d4f82612798565b905060608085600082612d618b612b2c565b9050805160001415612d7d576000975050505050505050612f6e565b60005b8651811015612f65578151831115612da357600098505050505050505050612f6e565b612dbf878281518110612db257fe5b60200260200101516130bf565b955085805190602001208414612de057600098505050505050505050612f6e565b612def8782815181106113a457fe5b9450845160111415612eac578151831415612e4b578c80519060200120612e1c8660108151811061126757fe5b805190602001201415612e3a57600198505050505050505050612f6e565b600098505050505050505050612f6e565b6000828481518110612e5957fe5b016020015160f81c90506010811115612e7e5760009950505050505050505050612f6e565b612e9d868260ff1681518110612e9057fe5b60200260200101516138ed565b94505060019290920191612f5d565b845160021415612e3a576000612ed2612ecb8760008151811061126757fe5b848661398c565b905082518185011415612f28578d80519060200120612ef78760018151811061126757fe5b805190602001201415612f165760019950505050505050505050612f6e565b60009950505050505050505050612f6e565b80612f3f5760009950505050505050505050612f6e565b8084019350612f5486600181518110612e9057fe5b9450612f5d9050565b600101612d80565b50505050505050505b949350505050565b600854604080516320a9cea560e11b81526004810185905290516000928392839283926001600160a01b0316916341539d4a9160248083019260a0929190829003018186803b158015612fc857600080fd5b505afa158015612fdc573d6000803e3d6000fd5b505050506040513d60a0811015612ff257600080fd5b5080516020820151606090920151909450909250905061306161301b8b8463ffffffff613a6b16565b6040805160208082018f90528183018e9052606082018d905260808083018d90528351808403909101815260a0909201909252805191012090858863ffffffff613aad16565b6130b2576040805162461bcd60e51b815260206004820181905260248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f484541444552604482015290519081900360640190fd5b9998505050505050505050565b606080826000015167ffffffffffffffff811180156130dd57600080fd5b506040519080825280601f01601f191660200182016040528015613108576020820181803683370190505b50905060008160200190506131268460200151828660000151613845565b5092915050565b6040518060800160405280604f815260200161403b604f913980516020918201208251838301206040805180820190915260018152603160f81b930192909252907fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc630613198611185565b604080516020808201979097528082019590955260608501939093526001600160a01b03909116608084015260a0808401919091528151808403909101815260c090920190528051910120600b5550565b60006118c88383613c03565b6000818152600260205260409020546001600160a01b03166132485760405162461bcd60e51b815260040180806020018281038252602a815260200180613f07602a913960400191505060405180910390fd5b6001600160a01b03808416600081815260036020908152604080832080549588166001600160a01b031996871681179091558084526004835281842080549096168517909555838352600590915280822085905551849392917f9e651a8866fbea043e911d816ec254b0e3c992c06fff32d605e72362d6023bd991a4604080516001600160a01b0380861660208084019190915281861683850152606083810186905284518085038201815260808086018088526007546009546826a0a82faa27a5a2a760b91b9092528851978890036089018820888701818152898b019a8b528551968a019690965284519499918816986316f1983198939093169690958a9590949293909201919085019080838360005b8381101561337357818101518382015260200161335b565b50505050905090810190601f1680156133a05780820380516001836020036101000a031916815260200191505b5093505050506040516020818303038152906040526040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015613419578181015183820152602001613401565b50505050905090810190601f1680156134465780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b15801561346657600080fd5b505af115801561347a573d6000803e3d6000fd5b5050505050505050565b60006118c8836001600160a01b038416613c67565b806040516020018082805190602001908083835b602083106134cc5780518252601f1990920191602091820191016134ad565b51815160209384036101000a60001901801990921691161790527f3a20494e53554646494349454e545f5045524d495353494f4e530000000000009190930190815260408051808303600519018152601a909201905280516111729550600a94509201919050613e6e565b60005460ff1615613580576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b611c478161312d565b60006118cb82613c7f565b6000604051806080016040528060438152602001613fd460439139805190602001208260000151836020015184604001518051906020012060405160200180858152602001848152602001836001600160a01b03166001600160a01b03168152602001828152602001945050505050604051602081830303815290604052805190602001209050919050565b600061362a6110d6565b82604051602001808061190160f01b81525060020183815260200182815260200192505050604051602081830303815290604052805190602001209050919050565b60006118c8836001600160a01b038416613c83565b60006118c8836001600160a01b038416613ccd565b6020810151805160009190821a9060c08210156136b8576000925050506110ef565b5060019392505050565b6000806000905060006136d884602001516137e2565b602085015185519181019250015b80821015613745576136f78261374e565b820191508082111561373a5760405162461bcd60e51b815260040180806020018281038252602c81526020018061414e602c913960400191505060405180910390fd5b6001909201916136e6565b50909392505050565b80516000908190811a60808110156137695760019150613126565b60b881101561377e57607e1981019150613126565b60c08110156137ab5760b78103600185019450806020036101000a85510460018201810193505050613126565b60f88110156137c05760be1981019150613126565b60019390930151602084900360f7016101000a900490920160f5190192915050565b8051600090811a60808110156137fc5760009150506110ef565b60b8811080613817575060c08110801590613817575060f881105b156138265760019150506110ef565b60c081101561383a5760b5190190506110ef565b60f5190190506110ef565b8061384f57610b64565b5b6020811061386f578251825260209283019290910190601f1901613850565b915181516020939093036101000a6000190180199091169216919091179052565b600060028306156138c15760108260028504815181106138ac57fe5b016020015160f81c816138bb57fe5b066138e3565b60108260028504815181106138d257fe5b016020015160f81c816138e157fe5b045b60f81b9392505050565b6000806138fd836020015161374e565b8351909150811461393f5760405162461bcd60e51b815260040180806020018281038252602e815260200180614258602e913960400191505060405180910390fd5b825160211461397f5760405162461bcd60e51b8152600401808060200182810382526025815260200180613f536025913960400191505060405180910390fd5b5050602001516001015190565b600080606061399a86612b2c565b90506060815167ffffffffffffffff811180156139b657600080fd5b506040519080825280601f01601f1916602001820160405280156139e1576020820181803683370190505b509050845b82518601811015613a3b5760008782815181106139ff57fe5b602001015160f81c60f81b9050808388840381518110613a1b57fe5b60200101906001600160f81b031916908160001a905350506001016139e6565b50808051906020012082805190602001201415613a5b5781519250613a60565b600092505b509095945050505050565b60006118c883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250613d93565b60006020825181613aba57fe5b0615613b04576040805162461bcd60e51b8152602060048201526014602482015273092dcecc2d8d2c840e0e4dedecc40d8cadccee8d60631b604482015290519081900360640190fd5b60006020835181613b1157fe5b0490508060020a8510613b63576040805162461bcd60e51b81526020600482015260156024820152744c65616620696e64657820697320746f6f2062696760581b604482015290519081900360640190fd5b60008660205b85518111613bf55785810151925060028806613bb55781836040516020018083815260200182815260200192505050604051602081830303815290604052805190602001209150613be7565b828260405160200180838152602001828152602001925050506040516020818303038152906040528051906020012091505b600288049750602001613b69565b509094149695505050505050565b81546000908210613c455760405162461bcd60e51b8152600401808060200182810382526022815260200180613f316022913960400191505060405180910390fd5b826000018281548110613c5457fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000613c8f8383613c67565b613cc5575081546001818101845560008481526020808220909301849055845484825282860190935260409020919091556118cb565b5060006118cb565b60008181526001830160205260408120548015613d895783546000198083019190810190600090879083908110613d0057fe5b9060005260206000200154905080876000018481548110613d1d57fe5b600091825260208083209091019290925582815260018981019092526040902090840190558654879080613d4d57fe5b600190038181906000526020600020016000905590558660010160008781526020019081526020016000206000905560019450505050506118cb565b60009150506118cb565b60008184841115613e225760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015613de7578181015183820152602001613dcf565b50505050905090810190601f168015613e145780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60405180606001604052806000815260200160006001600160a01b03168152602001606081525090565b604051806040016040528060008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10613eaf57805160ff1916838001178555613edc565b82800160010185558215613edc579182015b82811115613edc578251825591602001919060010190613ec1565b50613ee8929150613eec565b5090565b610a6591905b80821115613ee85760008155600101613ef256fe526f6f74436861696e4d616e616765723a20544f4b454e5f545950455f4e4f545f535550504f52544544456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473524c505265616465723a20494e56414c49445f55494e545f5354524943545f4c454e475448416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e74526f6f74436861696e4d616e616765723a20494e56414c49445f4348494c445f434841494e5f414444524553534d6574615472616e73616374696f6e2875696e74323536206e6f6e63652c616464726573732066726f6d2c62797465732066756e6374696f6e5369676e617475726529526f6f74436861696e4d616e616765723a20494e56414c49445f544f4b454e5f54595045454950373132446f6d61696e28737472696e67206e616d652c737472696e672076657273696f6e2c6164647265737320766572696679696e67436f6e74726163742c627974657333322073616c7429526f6f74436861696e4d616e616765723a20494e56414c49445f4252414e43485f4d41534b526f6f74436861696e4d616e616765723a20544f4b454e5f4e4f545f4d4150504544524c505265616465723a2042595445535f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b654e61746976654d6574615472616e73616374696f6e3a20494e56414c49445f5349474e4552524c505265616465723a204e554d5f4954454d535f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a204445434f44494e475f4c4953545f41535f41444452455353526f6f74436861696e4d616e616765723a2045544845525f5452414e534645525f4641494c45445369676e657220616e64207369676e617475726520646f206e6f74206d61746368526f6f74436861696e4d616e616765723a20494e56414c49445f524f4f545f544f4b454e526f6f74436861696e4d616e616765723a20455849545f414c52454144595f50524f434553534544524c505265616465723a204c4953545f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a2055494e545f5354524943545f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66524c505265616465723a2055494e545f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a20494e56414c49445f414444524553535f4c454e475448a164736f6c6343000606000a","storage":{"0x0":"0x1","0x7":"0xe0afc4e9e03e4aa67257df7a2eca77454309789d","0x8":"0xbe5deac45dd1ca4ee18dc2d585d84d3d3cb82b0d","0x9":"0x0","0xa":"0x55","0xb":"0x2603903cfd8895fdde3da4d607d44203e86098073e351022fd12745d3436e93a","0xeb5be412f275a18f6e4d622aee4ff40b21467c926224771b782d4c095d1444b":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x162b27a30e878e20728deaa5c9814fd57ccf962b998b8733ce65749bc61c552f":"0x58a175bebc8ec21a94ea63aa5a28743945940ee6","0x1a93463c7bbb7215968307c7cd357c2009c10df2a511dd62c1189098e4f3249b":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x415fec6a4fd7706b96d3a0a30121284bc5e2b28b978c20486c9f5e20d44fc781":"0x1","0x4dc1f0160d96279adc262db20edcc15527e32cb28eda582becc5ac0bc453be34":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x5fc73aa2ab567caef8745f0709fae506c01972ffb297bd9225bc262d6e87746f":"0x1","0x6ce1cd05966f090b8daa7b2ee7f80930bbb39d19b693045725fbae5fa44fda90":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0xa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb49":"0x1","0xc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a8":"0x526f6f74436861696e4d616e616765723a20494e53554646494349454e545f50","0xc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a9":"0x45524d495353494f4e5300000000000000000000000000000000000000000000","0xd61ba0007bb57e62613f82f528c06ba46d36349cf5be567b12f878ef04849a7d":"0x1","0xf960df71fab73e593428c10f56f55e7ea46985963177def0458b97f1afec9576":"0xcf4e755f204163e9213ba8b1305036e386579ccc70731c25c62a101197811f48"}},"0x287dee389caaa49edc112888f2bcfd927b472e25":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c80634f89059e1461002d575b5f80fd5b61004061003b366004610125565b610054565b604051901515815260200160405180910390f35b5f806100985f85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101029050565b60ff1690505f811180156100f857506100f36100b5826001610191565b85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101029050565b60ff16155b9150505b92915050565b5f828281518110610115576101156101b0565b016020015160f81c905092915050565b5f8060208385031215610136575f80fd5b823567ffffffffffffffff8082111561014d575f80fd5b818501915085601f830112610160575f80fd5b81358181111561016e575f80fd5b86602082850101111561017f575f80fd5b60209290920196919550909350505050565b808201808211156100fc57634e487b7160e01b5f52601160045260245ffd5b634e487b7160e01b5f52603260045260245ffdfea164736f6c6343000818000a","storage":{}},"0x3198fc981626687f4b5bdf0fbeabb0a5e0489c03":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061007b5760003560e01c80639623609d1161004e5780639623609d1461011157806399a88ec414610124578063f2fde38b14610144578063f3b7dead1461016457600080fd5b8063204e1c7a14610080578063715018a6146100bc5780637eff275e146100d35780638da5cb5b146100f3575b600080fd5b34801561008c57600080fd5b506100a061009b366004610499565b610184565b6040516001600160a01b03909116815260200160405180910390f35b3480156100c857600080fd5b506100d1610215565b005b3480156100df57600080fd5b506100d16100ee3660046104bd565b610229565b3480156100ff57600080fd5b506000546001600160a01b03166100a0565b6100d161011f36600461050c565b610291565b34801561013057600080fd5b506100d161013f3660046104bd565b610300565b34801561015057600080fd5b506100d161015f366004610499565b610336565b34801561017057600080fd5b506100a061017f366004610499565b6103b4565b6000806000836001600160a01b03166040516101aa90635c60da1b60e01b815260040190565b600060405180830381855afa9150503d80600081146101e5576040519150601f19603f3d011682016040523d82523d6000602084013e6101ea565b606091505b5091509150816101f957600080fd5b8080602001905181019061020d91906105e2565b949350505050565b61021d6103da565b6102276000610434565b565b6102316103da565b6040516308f2839760e41b81526001600160a01b038281166004830152831690638f283970906024015b600060405180830381600087803b15801561027557600080fd5b505af1158015610289573d6000803e3d6000fd5b505050505050565b6102996103da565b60405163278f794360e11b81526001600160a01b03841690634f1ef2869034906102c990869086906004016105ff565b6000604051808303818588803b1580156102e257600080fd5b505af11580156102f6573d6000803e3d6000fd5b5050505050505050565b6103086103da565b604051631b2ce7f360e11b81526001600160a01b038281166004830152831690633659cfe69060240161025b565b61033e6103da565b6001600160a01b0381166103a85760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b6103b181610434565b50565b6000806000836001600160a01b03166040516101aa906303e1469160e61b815260040190565b6000546001600160a01b031633146102275760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161039f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146103b157600080fd5b6000602082840312156104ab57600080fd5b81356104b681610484565b9392505050565b600080604083850312156104d057600080fd5b82356104db81610484565b915060208301356104eb81610484565b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561052157600080fd5b833561052c81610484565b9250602084013561053c81610484565b9150604084013567ffffffffffffffff8082111561055957600080fd5b818601915086601f83011261056d57600080fd5b81358181111561057f5761057f6104f6565b604051601f8201601f19908116603f011681019083821181831017156105a7576105a76104f6565b816040528281528960208487010111156105c057600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000602082840312156105f457600080fd5b81516104b681610484565b60018060a01b038316815260006020604081840152835180604085015260005b8181101561063b5785810183015185820160600152820161061f565b8181111561064d576000606083870101525b50601f01601f19169290920160600194935050505056fea26469706673582212207ad53e1008cce369999f6b5f2f77109510b404ff1de9b47b639981fd68e6239264736f6c63430008090033","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x39a27956b78d00a4e00ea8833ff0947410a2933f":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xc9":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0xca":"0x4a3c194eb88966178bfdd81744dddafed611b830","0xcb":"0x4872cc1be60a9db9c880a0a437da7a6af134f08f","0xcc":"0xf8c26340c1eaea6c7ff1760b25005e1306953572","0xce":"0xce4bb7dc1eb9dce75743de6a4b48534fd427ef51","0xc6892776bb3da1e1199a03e0d3131aea089754b59c557b750c478ebc85ccaa":"0x6e66740000000000000000000000000000000000000000000000000000000006","0x6cb37a6d512a1e227e627eddc133023e6d00bfedff31a600abb75aa93e9a4a0":"0x6b7265737573000000000000000000000000000000000000000000000000000c","0x8e966fe8b9b43d48017ba1eb562ced91049de778396aaa438773698b3fa8fb6":"0x0","0x94a32b1c7b189ce7293f7ae444cdcab6800d858454022d15355d5ecc5b32b26":"0x0","0xa4b2d73a9f36ca5eed107f7c3d2ba877fb7537d447256726bcde9bac9e9aaee":"0x0","0xe0e3ab102c26f13da20123aa517b31e99cf65b7b720ba0dd7138012fd23eff2":"0x0","0x1203b5e51c7d5be6da42b83f22878d3583e53123857d27fc3cff3df46fb9126c":"0x0","0x13477730039a04f4290adf0e48e98b233579c040281545e4446ce662ba56a9be":"0x7800000000000000000000000000000000000000000000000000000000000002","0x1e06d49ce7b00846691778f302e94a3ac9c2633d745ebe73d68353c941e68dee":"0x626974636f696e0000000000000000000000000000000000000000000000000e","0x1e99199375610ffe00d28ee5827c616cf6469be3de2a2f738d955eb6b62127e8":"0x1","0x21e80eded1b2e1c5d976c85e89dde60bd4e99a8d66346af0e359ac854bceba44":"0x0","0x254d9ade81439f29723741d6ff407eab1fe03caffb042bd85e53955e41fb9792":"0x616c74696d697374000000000000000000000000000000000000000000000010","0x269db12b2cd2aeb7d5f52eda16edb1d211ccbea12da1ebfa60ed5f8f396c1d04":"0x0","0x2a3f03435eedee01de7e1c4386b04ca8469edd8df00408cd6d2b058bce1cecfa":"0x0","0x323a3cb169499006d6635c58232c8c58e23c20bf9e1d309d6b3bc6fb2c7a093d":"0x0","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x229c56b7805ab5935a883207f6a6bd5847e65aee","0x37aac864d4715a975bd45cae6be99de9f7968cf995917cc7f8192940fb62acbf":"0x0","0x3f69f26894a7ae0f7a7aa6c2d77935589dabbff6435aee960da15064dea7cd59":"0x64616f0000000000000000000000000000000000000000000000000000000006","0x467a68fda3230ce33f64703ebdbd91caccf235403282ae9fe390675ef39e9c94":"0x0","0x50ae8c017c4c1fddbe9509bd2b916f5dd9da11ddb639f2a4230322f49a41ac87":"0x1","0x5496787fc1ebdfeba375028c1865f13fbb1d63c0caa356ccc1b29a80f3ebd622":"0x0","0x576dd8d1a7b74aba0a99a213f50d74aa642a2c80bd5a854b24aac7568afea0f7":"0x626974676574000000000000000000000000000000000000000000000000000c","0x5b54338c052ce22ec334b6c5a19c4b122701c5fd4d3a2a5f5890f57050e0aafa":"0x626c6f636b636861696e00000000000000000000000000000000000000000014","0x5d9de30f0e5e02628e726fd23e310ee9e64489866fa6959825148a25d40e4c83":"0x0","0x5e2d99ab4a1a153039a4b2e068d64802da8735071a2d018ee9d04297945bed00":"0x0","0x670006c4193123492fb25db465ed52e62aff2f076289f4f1a5f167237f5e579d":"0x6d616e676100000000000000000000000000000000000000000000000000000a","0x6deac161c541001c0d79afaf7b809418785fa5ca6533d86bcf312e7213ee08fc":"0x0","0x6eaa0db35203bc0d58aff54ca630dd125b27758aa6204f7a11c0617f7c2fa776":"0x706f670000000000000000000000000000000000000000000000000000000006","0x732abe4661f55132b7f119cab9a9985be6630299dfc92870cc910f147795bc44":"0x0","0x743eb517f46c12bb593097087a972028308ce2e819a76cfb5488751f9d1ca34a":"0x7265616c6d00000000000000000000000000000000000000000000000000000a","0x750dfb39c9afc828c341e1a8e8fdca0b3914baf43303e1ef21fbfe8ec8ee016a":"0x0","0x7cbf647b96a1d1a533ea4bc3a4a8a78f166bd91e6a96afb12f063fef0e9cb960":"0x0","0x7dc972254779cfb51850c0eaccfcb71207822b3c10d4840567bec3dfbf0dff13":"0x636f6d0000000000000000000000000000000000000000000000000000000006","0x7dfa160584f41570c33e8e6c42c5314a7b45ddc162f99fd101ccc10c7b5b3dd3":"0x77616c6c6574000000000000000000000000000000000000000000000000000c","0x868a5f38a2d46181ffad442d7bc5b337b3c349a58e4979f2901786c6123b996c":"0x6b6c65766572000000000000000000000000000000000000000000000000000c","0x87b2c647061aef22ef1aba96c67f440d471dfac27e9873ff4a03793b402d32ee":"0x706f6c79676f6e0000000000000000000000000000000000000000000000000e","0x893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e":"0x7c3c91245769c8b7450ad522792dec4bd4bf797f","0x91e744007b4b3621bec7c01ea851c3f48cf196b9cc6c566a48cec8c5faac6e62":"0x0","0x92c5a28dd4caaa50e0a8370243a5c600f64349e8b03604b403cbe111b50f1f7b":"0x3838380000000000000000000000000000000000000000000000000000000006","0x947936973a3a21b10c8980e1a8939a55c7339d302161884a3de05cf090e812f0":"0x1","0x9535d3ea47c5e1398d3405b4fadc73de6b1b1e6a66f674a8886ab7a6c873a390":"0x63727970746f000000000000000000000000000000000000000000000000000c","0x9956a4e94676c45844be3667f17e077c7cb53aa4e87e5a71d65e56b291232715":"0x676f000000000000000000000000000000000000000000000000000000000004","0x9c6ba1ddff1ffbc14dcdc1f97db867554a42a39e00e892c7e882dbb3dca89ebf":"0x6869000000000000000000000000000000000000000000000000000000000004","0x9f836a0f81651f597cee678b440ba8c853c633e6654809efb83d4b22aff06fb2":"0x616e696d6500000000000000000000000000000000000000000000000000000a","0x9fecf1e12f4b8ec337da992721a0f27526ddbd6be1e77885ab963c09afcf0fc1":"0x0","0xab129a0f8c6cf8d160116a28abc7369c2f8a098fc023f00f07dc3e1d5798e47a":"0x0","0xb04c0eb6f034d9a3179a4e6f953bdf8afc78ba2cdcfbc775076e1c2a0bb67818":"0x0","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xbe51b53bc2060a7a6419622b5a9adc00b50a57e6aa741882f2f60f95d4580078":"0x636c617900000000000000000000000000000000000000000000000000000008","0xbf350522e335b8ab3da1d099c93cdc09179f1e15ea6aa1acfaa4afb1ef87eabf":"0x756e73746f707061626c65000000000000000000000000000000000000000016","0xcbf7a3d53e0851ac15a415b99c2ba95a2497dd9dd44068ac261bcbdafdfe8472":"0x707564677900000000000000000000000000000000000000000000000000000a","0xcf4411216f3fdf787d1cfe037bbcfa0d5293d83a8082f8e4141266399e2a784b":"0x61757374696e000000000000000000000000000000000000000000000000000c","0xcfdbac664139565f92cce149a345e5f19355d25b3eb8a70c549d5da3283a15b8":"0x7a696c0000000000000000000000000000000000000000000000000000000006","0xcfeb64c30a93ecd7224f854b09be57bb6b3962e739fa8e3ea3a1851502474c07":"0x1","0xe03c9c593ce8661bd39f77653f7ca6c43f093aa7f3b95890f309f67b57f39e74":"0x0","0xe50c62c16d12655dfdbd61c232155e5c3a1cf61977d2d8e7449cb88611b73832":"0x0","0xeeb0b17d77f2c9069ad443f3927c0802d98d5553e52b17c985d45d4a10b79566":"0x62696e616e636575730000000000000000000000000000000000000000000012","0xf562ef0db022f25a957fb6e49aa07004f14a50ed5b23279e9ac25b4632f7bf1c":"0x0","0xf6776268d6c5847a771099280c742d684a4b22bac609ba615de51f7f893ff2bc":"0x0"}},"0x3f1194b9019002863ad0dbbe295294547c0d36a9":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100b1575f3560e01c80635b0fc9c31161006e5780635b0fc9c3146101a55780635ef2c7f0146101b8578063a22cb465146101cb578063cf408823146101de578063e985e9c5146101f1578063f79fe5381461023c575f80fd5b80630178b8bf146100b557806302571be3146100fd57806306ab59231461011057806314ab90381461013157806316a25cbd146101465780631896f70a14610192575b5f80fd5b6100e06100c3366004610785565b5f908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100e061010b366004610785565b610266565b61012361011e3660046107b7565b610292565b6040519081526020016100f4565b61014461013f366004610800565b61035f565b005b610179610154366004610785565b5f90815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100f4565b6101446101a036600461082a565b61042e565b6101446101b336600461082a565b6104ef565b6101446101c636600461084b565b61058e565b6101446101d936600461089e565b6105af565b6101446101ec3660046108d7565b61061a565b61022c6101ff366004610921565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205460ff1690565b60405190151581526020016100f4565b61022c61024a366004610785565b5f908152602081905260409020546001600160a01b0316151590565b5f818152602081905260408120546001600160a01b031630810361028c57505f92915050565b92915050565b5f8381526020819052604081205484906001600160a01b0316338114806102db57506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b6102e3575f80fd5b604080516020808201899052818301889052825180830384018152606090920190925280519101206103158186610635565b6040516001600160a01b0386168152869088907fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829060200160405180910390a39695505050505050565b5f8281526020819052604090205482906001600160a01b0316338114806103a857506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b6103b0575f80fd5b60405167ffffffffffffffff8416815284907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a250505f91825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b5f8281526020819052604090205482906001600160a01b03163381148061047757506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b61047f575f80fd5b6040516001600160a01b038416815284907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a250505f9182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b5f8281526020819052604090205482906001600160a01b03163381148061053857506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b610540575f80fd5b61054a8484610635565b6040516001600160a01b038416815284907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a250505050565b5f61059a868686610292565b90506105a7818484610662565b505050505050565b335f8181526001602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b61062484846104ef565b61062f848383610662565b50505050565b5f9182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b5f838152602081905260409020600101546001600160a01b038381169116146106e6575f838152602081815260409182902060010180546001600160a01b0319166001600160a01b038616908117909155915191825284917f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a0910160405180910390a25b5f8381526020819052604090206001015467ffffffffffffffff828116600160a01b9092041614610780575f8381526020818152604091829020600101805467ffffffffffffffff60a01b1916600160a01b67ffffffffffffffff861690810291909117909155915191825284917f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa68910160405180910390a25b505050565b5f60208284031215610795575f80fd5b5035919050565b80356001600160a01b03811681146107b2575f80fd5b919050565b5f805f606084860312156107c9575f80fd5b83359250602084013591506107e06040850161079c565b90509250925092565b803567ffffffffffffffff811681146107b2575f80fd5b5f8060408385031215610811575f80fd5b82359150610821602084016107e9565b90509250929050565b5f806040838503121561083b575f80fd5b823591506108216020840161079c565b5f805f805f60a0868803121561085f575f80fd5b85359450602086013593506108766040870161079c565b92506108846060870161079c565b9150610892608087016107e9565b90509295509295909350565b5f80604083850312156108af575f80fd5b6108b88361079c565b9150602083013580151581146108cc575f80fd5b809150509250929050565b5f805f80608085870312156108ea575f80fd5b843593506108fa6020860161079c565b92506109086040860161079c565b9150610916606086016107e9565b905092959194509250565b5f8060408385031215610932575f80fd5b61093b8361079c565b91506108216020840161079c56fea164736f6c6343000818000a","storage":{"0xdd4f47a3b6f87903b728feed7a23273bd8de58e4fa257d37a74a5881e5d92ff":"0xf670681605efc4efc804f5a9b97ee89520473d56","0x14ce109f1cffdc11aa7355660be720f902291be09fb159b4c578958cd0f533bc":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x14ce109f1cffdc11aa7355660be720f902291be09fb159b4c578958cd0f533bd":"0x0","0x1e2c8528d7e8e90443ad0a4e37b6f2b1daed719a574ce3a0c347063e8d839d50":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1e2c8528d7e8e90443ad0a4e37b6f2b1daed719a574ce3a0c347063e8d839d51":"0x0","0x2fb4213711fd985fc1fb1ea2bfa660b0b37fd50c6c74ab531d9b54b29dd5177e":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2fb4213711fd985fc1fb1ea2bfa660b0b37fd50c6c74ab531d9b54b29dd5177f":"0x0","0x859ecef2e168dc10231b000bd53493b42bc9d944cac29d94582c1e1d43592131":"0xc965345edac823d56812cd20a10316233916a605","0x8878c6daefcfc78c7f181d00d719b4a0612dd3e65cafeb72507d15c036a9f690":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0xe4fdf45c2f8d198854f8823809c7a988eeaaa493","0xfb5568c6845cf0d5915af088a5d8ba90a5ff735e102c9a79609ef7d043f1108c":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xfb5568c6845cf0d5915af088a5d8ba90a5ff735e102c9a79609ef7d043f1108d":"0x0"}},"0x4872cc1be60a9db9c880a0a437da7a6af134f08f":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100935760003560e01c80637362d9c8116100665780637362d9c8146101285780637b1039991461014e57806399e0dd7c14610172578063bb5f747b146101e2578063d6cd94731461020857610093565b806310154bad14610098578063291d9549146100c05780633af32abf146100e65780634c5a628c14610120575b600080fd5b6100be600480360360208110156100ae57600080fd5b50356001600160a01b0316610210565b005b6100be600480360360208110156100d657600080fd5b50356001600160a01b0316610260565b61010c600480360360208110156100fc57600080fd5b50356001600160a01b03166102ad565b604080519115158252519081900360200190f35b6100be6102c6565b6100be6004803603602081101561013e57600080fd5b50356001600160a01b03166102d1565b61015661031e565b604080516001600160a01b039092168252519081900360200190f35b6100be6004803603602081101561018857600080fd5b8101906020810181356401000000008111156101a357600080fd5b8201836020820111156101b557600080fd5b803590602001918460018302840111640100000000831117156101d757600080fd5b50909250905061032d565b61010c600480360360208110156101f857600080fd5b50356001600160a01b0316610404565b6100be610416565b61021933610404565b6102545760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d8161041f565b50565b61026933610404565b6102a45760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d81610467565b60006102c060018363ffffffff6104af16565b92915050565b6102cf33610516565b565b6102da33610404565b6103155760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d8161055e565b6002546001600160a01b031690565b610336336102ad565b6103715760405162461bcd60e51b815260040180806020018281038252603a815260200180610712603a913960400191505060405180910390fd5b6002546040516369426cbd60e11b8152602060048201908152602482018490526001600160a01b039092169163d284d97a91859185918190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b1580156103e857600080fd5b505af11580156103fc573d6000803e3d6000fd5b505050505050565b60006102c0818363ffffffff6104af16565b6102cf33610467565b61043060018263ffffffff6105a616565b6040516001600160a01b038216907fee1504a83b6d4a361f4c1dc78ab59bfa30d6a3b6612c403e86bb01ef2984295f90600090a250565b61047860018263ffffffff61062716565b6040516001600160a01b038216907f270d9b30cf5b0793bbfd54c9d5b94aeb49462b8148399000265144a8722da6b690600090a250565b60006001600160a01b0382166104f65760405162461bcd60e51b81526004018080602001828103825260228152602001806106b06022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b61052760008263ffffffff61062716565b6040516001600160a01b038216907f0a8eb35e5ca14b3d6f28e4abf2f128dbab231a58b56e89beb5d636115001e16590600090a250565b61056f60008263ffffffff6105a616565b6040516001600160a01b038216907f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129990600090a250565b6105b082826104af565b15610602576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b61063182826104af565b61066c5760405162461bcd60e51b815260040180806020018281038252602181526020018061068f6021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f206164647265737357686974656c69737441646d696e526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c69737441646d696e20726f6c6557686974656c6973746564526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c697374656420726f6c65a265627a7a72315820debca60946c0819dc5b5c2756c5c1dd8dd8a46f2429fa8a43a4f4362af3030c164736f6c634300050c0032","storage":{"0x2":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x5ac40fcee41fb0272a935f6e51e963102fba5db6f20e897e9361f0347eb2cae6":"0x1","0xdc4aeb95a779c8b92b845e3a94044db8ff2e43acc37da18c4b35a6bbad7c122f":"0x1"}},"0x49da8861c65460639925febe1fb4b5b59b443082":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f7e83aee1461002d575b5f80fd5b61004061003b3660046101ac565b610054565b604051901515815260200160405180910390f35b5f602082146100a95760405162461bcd60e51b815260206004820152601a60248201527f496e76616c6964207368613235362068617368206c656e677468000000000000604482015260640160405180910390fd5b6100eb5f84848080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101459050565b600286866040516100fd929190610213565b602060405180830381855afa158015610118573d5f803e3d5ffd5b5050506040513d601f19601f8201168201806040525081019061013b9190610222565b1495945050505050565b81515f90610154836020610239565b111561015e575f80fd5b50016020015190565b5f8083601f840112610177575f80fd5b50813567ffffffffffffffff81111561018e575f80fd5b6020830191508360208285010111156101a5575f80fd5b9250929050565b5f805f80604085870312156101bf575f80fd5b843567ffffffffffffffff808211156101d6575f80fd5b6101e288838901610167565b909650945060208701359150808211156101fa575f80fd5b5061020787828801610167565b95989497509550505050565b818382375f9101908152919050565b5f60208284031215610232575f80fd5b5051919050565b8082018082111561025857634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x4a3c194eb88966178bfdd81744dddafed611b830":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061009e5760003560e01c806398650275116100665780639865027514610305578063aa271e1a1461030d578063b2da297914610347578063be362e2e146103c5578063c36c2125146104fe5761009e565b80634c0b0ed2146100a35780637b103999146101595780637caf3ad81461017d5780638ad364f814610258578063983b2d56146102df575b600080fd5b610157600480360360408110156100b957600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156100e357600080fd5b8201836020820111156100f557600080fd5b803590602001918460018302840111600160201b8311171561011657600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506105bd945050505050565b005b61016161074c565b604080516001600160a01b039092168252519081900360200190f35b6101576004803603608081101561019357600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156101bd57600080fd5b8201836020820111156101cf57600080fd5b803590602001918460018302840111600160201b831117156101f057600080fd5b919390926001600160a01b0383351692604081019060200135600160201b81111561021a57600080fd5b82018360208201111561022c57600080fd5b803590602001918460018302840111600160201b8311171561024d57600080fd5b50909250905061075b565b6101576004803603606081101561026e57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561029857600080fd5b8201836020820111156102aa57600080fd5b803590602001918460018302840111600160201b831117156102cb57600080fd5b9193509150356001600160a01b0316610957565b610157600480360360208110156102f557600080fd5b50356001600160a01b0316610b2b565b610157610b7b565b6103336004803603602081101561032357600080fd5b50356001600160a01b0316610b86565b604080519115158252519081900360200190f35b6101576004803603604081101561035d57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561038757600080fd5b82018360208201111561039957600080fd5b803590602001918460018302840111600160201b831117156103ba57600080fd5b509092509050610b9e565b610157600480360360608110156103db57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561040557600080fd5b82018360208201111561041757600080fd5b803590602001918460018302840111600160201b8311171561043857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b81111561048a57600080fd5b82018360208201111561049c57600080fd5b803590602001918460018302840111600160201b831117156104bd57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610bf1945050505050565b6101576004803603606081101561051457600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561053e57600080fd5b82018360208201111561055057600080fd5b803590602001918460018302840111600160201b8311171561057157600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550505090356001600160a01b03169150610dec9050565b6105c633610b86565b6106015760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b039092169163b5466669918591849163ebf0c717916004808301926020929190829003018186803b15801561064f57600080fd5b505afa158015610663573d6000803e3d6000fd5b505050506040513d602081101561067957600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052606060448301908152875160648401528751889360840190602085019080838360005b838110156106e25781810151838201526020016106ca565b50505050905090810190601f16801561070f5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15801561073057600080fd5b505af1158015610744573d6000803e3d6000fd5b505050505050565b6001546001600160a01b031690565b6107cf8686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f89018190048102820181019092528781529250879150869081908401838280828437600092019190915250610bf192505050565b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691632525d06a91869184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b15801561082557600080fd5b505afa158015610839573d6000803e3d6000fd5b505050506040513d602081101561084f57600080fd5b5051604080516001600160e01b031960e085901b1681526004810183815260248201928352604482018d90528d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b1580156108bd57600080fd5b505afa1580156108d1573d6000803e3d6000fd5b505050506040513d60208110156108e757600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b15801561093757600080fd5b505af115801561094b573d6000803e3d6000fd5b50505050505050505050565b6109a58484848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250610bf1915050565b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691632525d06a91849184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b1580156109fb57600080fd5b505afa158015610a0f573d6000803e3d6000fd5b505050506040513d6020811015610a2557600080fd5b5051604080516001600160e01b031960e085901b1681526004810183815260248201928352604482018b90528b928b92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b158015610a9357600080fd5b505afa158015610aa7573d6000803e3d6000fd5b505050506040513d6020811015610abd57600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b158015610b0d57600080fd5b505af1158015610b21573d6000803e3d6000fd5b5050505050505050565b610b3433610b86565b610b6f5760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b610b7881611115565b50565b610b843361115d565b565b6000610b98818363ffffffff6111a516565b92915050565b610bec8383838080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250610bf1915050565b505050565b610bfa33610b86565b610c355760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691630467e014918691849163ebf0c717916004808301926020929190829003018186803b158015610c8357600080fd5b505afa158015610c97573d6000803e3d6000fd5b505050506040513d6020811015610cad57600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052608060448301908152885160848401528851899389939291606482019160a40190602087019080838360005b83811015610d1f578181015183820152602001610d07565b50505050905090810190601f168015610d4c5780820380516001836020036101000a031916815260200191505b50838103825284518152845160209182019186019080838360005b83811015610d7f578181015183820152602001610d67565b50505050905090810190601f168015610dac5780820380516001836020036101000a031916815260200191505b509650505050505050600060405180830381600087803b158015610dcf57600080fd5b505af1158015610de3573d6000803e3d6000fd5b50505050505050565b610df533610b86565b610e305760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b039092169163b5466669918691849163ebf0c717916004808301926020929190829003018186803b158015610e7e57600080fd5b505afa158015610e92573d6000803e3d6000fd5b505050506040513d6020811015610ea857600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052606060448301908152885160648401528851899360840190602085019080838360005b83811015610f11578181015183820152602001610ef9565b50505050905090810190601f168015610f3e5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015610f5f57600080fd5b505af1158015610f73573d6000803e3d6000fd5b50506001546040805163ebf0c71760e01b815290516001600160a01b039092169350632525d06a9250849184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b158015610fcd57600080fd5b505afa158015610fe1573d6000803e3d6000fd5b505050506040513d6020811015610ff757600080fd5b5051604080516001600160e01b031960e085901b16815260048101838152602482019283528a5160448301528a518b93919260640190602085019080838360005b83811015611050578181015183820152602001611038565b50505050905090810190601f16801561107d5780820380516001836020036101000a031916815260200191505b50935050505060206040518083038186803b15801561109b57600080fd5b505afa1580156110af573d6000803e3d6000fd5b505050506040513d60208110156110c557600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b158015610dcf57600080fd5b61112660008263ffffffff61120c16565b6040516001600160a01b038216907f6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f690600090a250565b61116e60008263ffffffff61128d16565b6040516001600160a01b038216907fe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb6669290600090a250565b60006001600160a01b0382166111ec5760405162461bcd60e51b81526004018080602001828103825260228152602001806113466022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b61121682826111a5565b15611268576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b61129782826111a5565b6112d25760405162461bcd60e51b81526004018080602001828103825260218152602001806113256021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe4d696e746572526f6c653a2063616c6c657220646f6573206e6f74206861766520746865204d696e74657220726f6c65526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f2061646472657373a265627a7a72315820c058d70355f7d37ff6b3b61cd850cc4a41893e30048389698c062148bf3d2ff464736f6c634300050c0032","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x789b49055833748af4eaa9affbcd84118ce8770f7e4385b5a3f428626b1f0aff":"0x1","0xdc4aeb95a779c8b92b845e3a94044db8ff2e43acc37da18c4b35a6bbad7c122f":"0x1"}},"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061007b5760003560e01c80639623609d1161004e5780639623609d1461011157806399a88ec414610124578063f2fde38b14610144578063f3b7dead1461016457600080fd5b8063204e1c7a14610080578063715018a6146100bc5780637eff275e146100d35780638da5cb5b146100f3575b600080fd5b34801561008c57600080fd5b506100a061009b366004610499565b610184565b6040516001600160a01b03909116815260200160405180910390f35b3480156100c857600080fd5b506100d1610215565b005b3480156100df57600080fd5b506100d16100ee3660046104bd565b610229565b3480156100ff57600080fd5b506000546001600160a01b03166100a0565b6100d161011f36600461050c565b610291565b34801561013057600080fd5b506100d161013f3660046104bd565b610300565b34801561015057600080fd5b506100d161015f366004610499565b610336565b34801561017057600080fd5b506100a061017f366004610499565b6103b4565b6000806000836001600160a01b03166040516101aa90635c60da1b60e01b815260040190565b600060405180830381855afa9150503d80600081146101e5576040519150601f19603f3d011682016040523d82523d6000602084013e6101ea565b606091505b5091509150816101f957600080fd5b8080602001905181019061020d91906105e2565b949350505050565b61021d6103da565b6102276000610434565b565b6102316103da565b6040516308f2839760e41b81526001600160a01b038281166004830152831690638f283970906024015b600060405180830381600087803b15801561027557600080fd5b505af1158015610289573d6000803e3d6000fd5b505050505050565b6102996103da565b60405163278f794360e11b81526001600160a01b03841690634f1ef2869034906102c990869086906004016105ff565b6000604051808303818588803b1580156102e257600080fd5b505af11580156102f6573d6000803e3d6000fd5b5050505050505050565b6103086103da565b604051631b2ce7f360e11b81526001600160a01b038281166004830152831690633659cfe69060240161025b565b61033e6103da565b6001600160a01b0381166103a85760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b6103b181610434565b50565b6000806000836001600160a01b03166040516101aa906303e1469160e61b815260040190565b6000546001600160a01b031633146102275760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161039f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146103b157600080fd5b6000602082840312156104ab57600080fd5b81356104b681610484565b9392505050565b600080604083850312156104d057600080fd5b82356104db81610484565b915060208301356104eb81610484565b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561052157600080fd5b833561052c81610484565b9250602084013561053c81610484565b9150604084013567ffffffffffffffff8082111561055957600080fd5b818601915086601f83011261056d57600080fd5b81358181111561057f5761057f6104f6565b604051601f8201601f19908116603f011681019083821181831017156105a7576105a76104f6565b816040528281528960208487010111156105c057600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000602082840312156105f457600080fd5b81516104b681610484565b60018060a01b038316815260006020604081840152835180604085015260005b8181101561063b5785810183015185820160600152820161061f565b8181111561064d576000606083870101525b50601f01601f19169290920160600194935050505056fea26469706673582212207ad53e1008cce369999f6b5f2f77109510b404ff1de9b47b639981fd68e6239264736f6c63430008090033","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x4eb9de1fc0d800e941f326d6699e9e11969557ea":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063100cdd911461002d575b5f80fd5b61004061003b3660046102cd565b610042565b005b5f5b818110156101b8575f7f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e28484848181106100805761008061033c565b905060200201356040516020016100a1929190918252602082015260400190565b60408051808303601f190181529082905280516020909101206331a9108f60e11b82526004820181905291507f000000000000000000000000107733fed96c4cd390c944a31f5425a7fb98ae5e6001600160a01b0316906323b872dd908290636352211e90602401602060405180830381865afa158015610124573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101489190610350565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015261dead6024820152604481018490526064015f604051808303815f87803b158015610195575f80fd5b505af11580156101a7573d5f803e3d5ffd5b505060019093019250610044915050565b5080156102c9577f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e282826101ed60018261037d565b8181106101fc576101fc61033c565b9050602002013560405160200161021d929190918252602082015260400190565b604051602081830303815290604052805190602001205f1c7f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e283835f8181106102685761026861033c565b90506020020135604051602001610289929190918252602082015260400190565b60408051601f19818403018152908290528051602090910120907fdf423376f9b0ab363b1b4d6f0b4cb6821921ec30f491555a97236a8a38ce095a905f90a35b5050565b5f80602083850312156102de575f80fd5b823567ffffffffffffffff808211156102f5575f80fd5b818501915085601f830112610308575f80fd5b813581811115610316575f80fd5b8660208260051b850101111561032a575f80fd5b60209290920196919550909350505050565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215610360575f80fd5b81516001600160a01b0381168114610376575f80fd5b9392505050565b8181038181111561039c57634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x4fbf7b2f171336958be5d15ff762a5cff5363568":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061011b575f3560e01c80638d839ffe1161009d578063aeb8ce9b11610062578063aeb8ce9b14610356578063ce1e09c014610375578063d3419bf3146103a8578063f14fcbc8146103db578063f2fde38b146103fa575f80fd5b80638d839ffe146102a25780638da5cb5b146102d55780639791c097146102f1578063a8e5fbc014610310578063acf1a84114610343575f80fd5b806374694a2b116100e357806374694a2b146101c957806380869853146101dc578063839df9451461022757806383e7f6ff146102525780638a95b09f1461028c575f80fd5b806301ffc9a71461011f5780633ccfd60b146101535780635d3590d51461016957806365a69dcf14610188578063715018a6146101b5575b5f80fd5b34801561012a575f80fd5b5061013e610139366004611145565b610419565b60405190151581526020015b60405180910390f35b34801561015e575f80fd5b5061016761044f565b005b348015610174575f80fd5b50610167610183366004611187565b610489565b348015610193575f80fd5b506101a76101a23660046112e4565b610507565b60405190815260200161014a565b3480156101c0575f80fd5b5061016761058b565b6101676101d73660046113db565b61059e565b3480156101e7575f80fd5b5061020f7f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5681565b6040516001600160a01b03909116815260200161014a565b348015610232575f80fd5b506101a761024136600461149d565b60016020525f908152604090205481565b34801561025d575f80fd5b5061027161026c3660046114b4565b610894565b6040805182518152602092830151928101929092520161014a565b348015610297575f80fd5b506101a76224ea0081565b3480156102ad575f80fd5b506101a77f000000000000000000000000000000000000000000000000000000000000025881565b3480156102e0575f80fd5b505f546001600160a01b031661020f565b3480156102fc575f80fd5b5061013e61030b3660046114f6565b6109c9565b34801561031b575f80fd5b5061020f7f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e1841720481565b610167610351366004611528565b6109dd565b348015610361575f80fd5b5061013e6103703660046114f6565b610b7b565b348015610380575f80fd5b506101a77f000000000000000000000000000000000000000000000000000000000001518081565b3480156103b3575f80fd5b5061020f7f000000000000000000000000ec71e4e674fe0f432693dc2b935c34bd2774c00381565b3480156103e6575f80fd5b506101676103f536600461149d565b610c22565b348015610405575f80fd5b50610167610414366004611570565b610c95565b5f6001600160e01b031982166301ffc9a760e01b148061044957506001600160e01b0319821663612e8c0960e01b145b92915050565b5f80546040516001600160a01b03909116914780156108fc02929091818181858888f19350505050158015610486573d5f803e3d5ffd5b50565b610491610d0b565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af11580156104dd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105019190611589565b50505050565b885160208a01205f90841580159061052657506001600160a01b038716155b15610544576040516334fd817160e21b815260040160405180910390fd5b808a8a8a8a8a8a8a8a6040516020016105659998979695949392919061165e565b604051602081830303815290604052805190602001209150509998505050505050505050565b610593610d0b565b61059c5f610d64565b565b5f6105df8b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c9250610894915050565b602081015181519192506105f2916116d5565b3410156106125760405163044044a560e21b815260040160405180910390fd5b6106b38b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f82011690508083019250505050505050896106ae8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f820116905080830192505050505050508d8d8d8d8d8d8d8d610507565b610db3565b604051635200a4c160e11b81525f906001600160a01b037f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e18417204169063a40149829061070b908f908f908f908f908e908b906004016116e8565b6020604051808303815f875af1158015610727573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061074b9190611732565b9050841561077657610776878d8d604051610767929190611749565b60405180910390208888610ece565b83156107be576107be8c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508b9250339150610f939050565b896001600160a01b03168c8c6040516107d8929190611749565b60405180910390207f69e37f151eb98a09618ddaa80c8cfaf1ce5996867c489f45b555b412271ebf278e8e865f015187602001518760405161081e959493929190611758565b60405180910390a36020820151825161083791906116d5565b341115610886576020820151825133916108fc9161085591906116d5565b61085f9034611788565b6040518115909202915f818181858888f19350505050158015610884573d5f803e3d5ffd5b505b505050505050505050505050565b604080518082019091525f808252602082015282516020840120604051636b727d4360e11b8152600481018290527f000000000000000000000000ec71e4e674fe0f432693dc2b935c34bd2774c0036001600160a01b03908116916350e9a7159187917f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063d6e4fa8690602401602060405180830381865afa158015610940573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109649190611732565b866040518463ffffffff1660e01b8152600401610983939291906117e8565b6040805180830381865afa15801561099d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109c1919061180c565b949350505050565b5f60036109d583611044565b101592915050565b5f83836040516109ee929190611749565b604080519182900382206020601f8701819004810284018101909252858352925082915f91610a39919088908890819084018382808284375f92019190915250889250610894915050565b8051909150341015610a5e5760405163044044a560e21b815260040160405180910390fd5b60405163c475abff60e01b815260048101839052602481018590525f907f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b03169063c475abff906044016020604051808303815f875af1158015610acb573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610aef9190611732565b8251909150341115610b3457815133906108fc90610b0d9034611788565b6040518115909202915f818181858888f19350505050158015610b32573d5f803e3d5ffd5b505b837f3da24c024582931cfaf8267d8ed24d13a82a8068d5bd337d30ec45cea4e506ae88883485604051610b6a9493929190611859565b60405180910390a250505050505050565b805160208201205f90610b8d836109c9565b8015610c1b57506040516312dc929d60e31b8152600481018290527f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b0316906396e494e890602401602060405180830381865afa158015610bf7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c1b9190611589565b9392505050565b5f818152600160205260409020544290610c5d907f0000000000000000000000000000000000000000000000000000000000015180906116d5565b10610c8357604051630a059d7160e01b8152600481018290526024015b60405180910390fd5b5f908152600160205260409020429055565b610c9d610d0b565b6001600160a01b038116610d025760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610c7a565b61048681610d64565b5f546001600160a01b0316331461059c5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610c7a565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f818152600160205260409020544290610dee907f0000000000000000000000000000000000000000000000000000000000000258906116d5565b1115610e1057604051635320bcf960e01b815260048101829052602401610c7a565b5f818152600160205260409020544290610e4b907f0000000000000000000000000000000000000000000000000000000000015180906116d5565b11610e6c5760405163cb7690d760e01b815260048101829052602401610c7a565b610e7583610b7b565b610e9457826040516308eee0fd60e31b8152600401610c7a919061187f565b5f818152600160205260408120556224ea00821015610ec957604051639a71997b60e01b815260048101839052602401610c7a565b505050565b604080517f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae6020808301919091528183018690528251808303840181526060830193849052805191012063e32954eb60e01b90925285906001600160a01b0382169063e32954eb90610f4890859088908890606401611891565b5f604051808303815f875af1158015610f63573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052610f8a91908101906118b3565b50505050505050565b7f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d566001600160a01b0316637a806d6b33838587604051602001610fd691906119a7565b6040516020818303038152906040526040518563ffffffff1660e01b815260040161100494939291906119ce565b6020604051808303815f875af1158015611020573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105019190611732565b80515f90819081905b8082101561113c575f85838151811061106857611068611a0b565b01602001516001600160f81b0319169050600160ff1b811015611097576110906001846116d5565b9250611129565b600760fd1b6001600160f81b0319821610156110b8576110906002846116d5565b600f60fc1b6001600160f81b0319821610156110d9576110906003846116d5565b601f60fb1b6001600160f81b0319821610156110fa576110906004846116d5565b603f60fa1b6001600160f81b03198216101561111b576110906005846116d5565b6111266006846116d5565b92505b508261113481611a1f565b93505061104d565b50909392505050565b5f60208284031215611155575f80fd5b81356001600160e01b031981168114610c1b575f80fd5b80356001600160a01b0381168114611182575f80fd5b919050565b5f805f60608486031215611199575f80fd5b6111a28461116c565b92506111b06020850161116c565b9150604084013590509250925092565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff811182821017156111fd576111fd6111c0565b604052919050565b5f67ffffffffffffffff82111561121e5761121e6111c0565b50601f01601f191660200190565b5f82601f83011261123b575f80fd5b813561124e61124982611205565b6111d4565b818152846020838601011115611262575f80fd5b816020850160208301375f918101602001919091529392505050565b5f8083601f84011261128e575f80fd5b50813567ffffffffffffffff8111156112a5575f80fd5b6020830191508360208260051b85010111156112bf575f80fd5b9250929050565b8015158114610486575f80fd5b803561ffff81168114611182575f80fd5b5f805f805f805f805f6101008a8c0312156112fd575f80fd5b893567ffffffffffffffff80821115611314575f80fd5b6113208d838e0161122c565b9a5061132e60208d0161116c565b995060408c0135985060608c0135975061134a60808d0161116c565b965060a08c013591508082111561135f575f80fd5b5061136c8c828d0161127e565b90955093505060c08a0135611380816112c6565b915061138e60e08b016112d3565b90509295985092959850929598565b5f8083601f8401126113ad575f80fd5b50813567ffffffffffffffff8111156113c4575f80fd5b6020830191508360208285010111156112bf575f80fd5b5f805f805f805f805f806101008b8d0312156113f5575f80fd5b8a3567ffffffffffffffff8082111561140c575f80fd5b6114188e838f0161139d565b909c509a508a915061142c60208e0161116c565b995060408d0135985060608d0135975061144860808e0161116c565b965060a08d013591508082111561145d575f80fd5b5061146a8d828e0161127e565b90955093505060c08b013561147e816112c6565b915061148c60e08c016112d3565b90509295989b9194979a5092959850565b5f602082840312156114ad575f80fd5b5035919050565b5f80604083850312156114c5575f80fd5b823567ffffffffffffffff8111156114db575f80fd5b6114e78582860161122c565b95602094909401359450505050565b5f60208284031215611506575f80fd5b813567ffffffffffffffff81111561151c575f80fd5b6109c18482850161122c565b5f805f6040848603121561153a575f80fd5b833567ffffffffffffffff811115611550575f80fd5b61155c8682870161139d565b909790965060209590950135949350505050565b5f60208284031215611580575f80fd5b610c1b8261116c565b5f60208284031215611599575f80fd5b8151610c1b816112c6565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b5f838385526020808601955060208560051b830101845f5b8781101561165157848303601f19018952813536889003601e19018112611609575f80fd5b8701848101903567ffffffffffffffff811115611624575f80fd5b803603821315611632575f80fd5b61163d8582846115a4565b9a86019a94505050908301906001016115e4565b5090979650505050505050565b8981526001600160a01b03898116602083015260408201899052606082018890528616608082015261010060a082018190525f9061169f83820187896115cc565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610449576104496116c1565b60a081525f6116fb60a08301888a6115a4565b6001600160a01b03968716602084015260408301959095525091909316606082015261ffff90921660809092019190915292915050565b5f60208284031215611742575f80fd5b5051919050565b818382375f9101908152919050565b608081525f61176b6080830187896115a4565b602083019590955250604081019290925260609091015292915050565b81810381811115610449576104496116c1565b5f5b838110156117b557818101518382015260200161179d565b50505f910152565b5f81518084526117d481602086016020860161179b565b601f01601f19169290920160200192915050565b606081525f6117fa60608301866117bd565b60208301949094525060400152919050565b5f6040828403121561181c575f80fd5b6040516040810181811067ffffffffffffffff8211171561183f5761183f6111c0565b604052825181526020928301519281019290925250919050565b606081525f61186c6060830186886115a4565b6020830194909452506040015292915050565b602081525f610c1b60208301846117bd565b838152604060208201525f6118aa6040830184866115cc565b95945050505050565b5f60208083850312156118c4575f80fd5b825167ffffffffffffffff808211156118db575f80fd5b818501915085601f8301126118ee575f80fd5b815181811115611900576119006111c0565b8060051b61190f8582016111d4565b9182528381018501918581019089841115611928575f80fd5b86860192505b8383101561199a57825185811115611944575f80fd5b8601603f81018b13611954575f80fd5b87810151604061196661124983611205565b8281528d82848601011115611979575f80fd5b611988838c830184870161179b565b8552505050918601919086019061192e565b9998505050505050505050565b5f82516119b881846020870161179b565b6305ccae8d60e31b920191825250600401919050565b6001600160a01b0385811682528481166020830152831660408201526080606082018190525f90611a01908301846117bd565b9695505050505050565b634e487b7160e01b5f52603260045260245ffd5b5f60018201611a3057611a306116c1565b506001019056fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x5155f5627bdf9795b3dbb8887001ada1eeba93f2":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063de8f50a11461002d575b5f80fd5b61004761003b3660046100a0565b60019695505050505050565b604051901515815260200160405180910390f35b5f8083601f84011261006b575f80fd5b50813567ffffffffffffffff811115610082575f80fd5b602083019150836020828501011115610099575f80fd5b9250929050565b5f805f805f80606087890312156100b5575f80fd5b863567ffffffffffffffff808211156100cc575f80fd5b6100d88a838b0161005b565b909850965060208901359150808211156100f0575f80fd5b6100fc8a838b0161005b565b90965094506040890135915080821115610114575f80fd5b5061012189828a0161005b565b979a969950949750929593949250505056fea164736f6c6343000818000a","storage":{}},"0x54563a9e1cd2dcbd0bca90d3cfa4a647e02c404a":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106101db575f3560e01c80638da5cb5b116100fd578063c4d66de811610092578063daea85c511610062578063daea85c51461055e578063e7acab241461057d578063f2fde38b1461059c578063ffa1ad74146105bb575f80fd5b8063c4d66de8146104e1578063d539139314610500578063d547741f14610520578063d9caed121461053f575f80fd5b8063a217fddf116100cd578063a217fddf14610452578063a3f4df7e14610465578063a4247400146104a3578063aa271e1a146104c2575f80fd5b80638da5cb5b146103d957806391d1485414610400578063983b2d561461041f578063986502751461043e575f80fd5b80635c975abb11610173578063715018a611610143578063715018a61461037f57806371e2a6571461039357806381c81d35146103b25780638456cb59146103c5575f80fd5b80635c975abb146103165780635fc1964f1461032e578063634486da1461034d5780636ccbae5f14610360575f80fd5b80633092afd5116101ae5780633092afd51461029c57806336568abe146102bb5780633f4ba83a146102da578063572b6c05146102ee575f80fd5b806301ffc9a7146101df5780631bf7e13e14610213578063248a9ca31461023f5780632f2ff15d1461027b575b5f80fd5b3480156101ea575f80fd5b506101fe6101f9366004611ee0565b6105eb565b60405190151581526020015b60405180910390f35b34801561021e575f80fd5b5061023261022d366004611f07565b610621565b60405161020a9190611fe9565b34801561024a575f80fd5b5061026d610259366004611ffb565b5f90815260fb602052604090206001015490565b60405190815260200161020a565b348015610286575f80fd5b5061029a610295366004612036565b6106ea565b005b3480156102a7575f80fd5b5061029a6102b6366004612064565b610713565b3480156102c6575f80fd5b5061029a6102d5366004612036565b610727565b3480156102e5575f80fd5b5061029a6107ba565b3480156102f9575f80fd5b506101fe610308366004612064565b6001600160a01b0316301490565b348015610321575f80fd5b5061012d5460ff166101fe565b348015610339575f80fd5b5061029a6103483660046120eb565b6107d4565b61029a61035b366004612064565b610811565b34801561036b575f80fd5b5061026d61037a366004611ffb565b6108d1565b34801561038a575f80fd5b5061029a61092a565b34801561039e575f80fd5b5061029a6103ad3660046120eb565b61093b565b61029a6103c0366004612064565b610978565b3480156103d0575f80fd5b5061029a6109f5565b3480156103e4575f80fd5b506097546040516001600160a01b03909116815260200161020a565b34801561040b575f80fd5b506101fe61041a366004612036565b610a0d565b34801561042a575f80fd5b5061029a610439366004612064565b610a37565b348015610449575f80fd5b5061029a610a48565b34801561045d575f80fd5b5061026d5f81565b348015610470575f80fd5b506102326040518060400160405280601381526020017229b2b0b837b93a10283937bc3c90213abcb2b960691b81525081565b3480156104ae575f80fd5b506101fe6104bd366004611f07565b610a61565b3480156104cd575f80fd5b506101fe6104dc366004612064565b610ab2565b3480156104ec575f80fd5b5061029a6104fb366004612064565b610aca565b34801561050b575f80fd5b5061026d5f80516020612ea783398151915281565b34801561052b575f80fd5b5061029a61053a366004612036565b610c21565b34801561054a575f80fd5b5061029a61055936600461218b565b610c45565b348015610569575f80fd5b5061029a610578366004612064565b610cf7565b348015610588575f80fd5b506101fe6105973660046121c9565b610dac565b3480156105a7575f80fd5b5061029a6105b6366004612064565b6111db565b3480156105c6575f80fd5b5061023260405180604001604052806005815260200164302e302e3160d81b81525081565b5f6001600160e01b03198216637965db0b60e01b148061061b57506301ffc9a760e01b6001600160e01b03198316145b92915050565b60605f5a9050610632858585610a61565b61064f57604051638baa579f60e01b815260040160405180910390fd5b6106df61065f6020870187612064565b3060408801358461067360608b018b61227b565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f920191909152506111f692505050565b9150505b9392505050565b5f82815260fb6020526040902060010154610704816112d4565b61070e83836112e5565b505050565b61071b61136b565b610724816113e4565b50565b61072f6113fb565b6001600160a01b0316816001600160a01b0316146107ac5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6107b68282611409565b5050565b6107c261136b565b6107ca61148d565b6107d26114d7565b565b6107dc61136b565b5f5b81518110156107b6576108098282815181106107fc576107fc6122bd565b60200260200101516113e4565b6001016107de565b61081c6104dc6113fb565b6108385760405162461bcd60e51b81526004016107a3906122d1565b6001600160a01b03811661088e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016107a3565b61089781611530565b61089f610a48565b6040516001600160a01b038216903480156108fc02915f818181858888f193505050501580156107b6573d5f803e3d5ffd5b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f90610923906060016040516020818303038152906040528051906020012090565b5492915050565b61093261136b565b6107d25f611547565b61094361136b565b5f5b81518110156107b657610970828281518110610963576109636122bd565b6020026020010151611530565b600101610945565b6109836104dc6113fb565b61099f5760405162461bcd60e51b81526004016107a3906122d1565b6001600160a01b0381166108975760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016107a3565b6109fd61136b565b610a05611598565b6107d26115df565b5f91825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610a3f61136b565b61072481611530565b6107d25f80516020612ea78339815191526102d56113fb565b5f610aaa610a6e85612306565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061161e92505050565b949350505050565b5f61061b5f80516020612ea783398151915283610a0d565b5f54610100900460ff1615808015610ae857505f54600160ff909116105b80610b015750303b158015610b0157505f5460ff166001145b610b645760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107a3565b5f805460ff191660011790558015610b85575f805461ff0019166101001790555b61015f80546001600160a01b0319166001600160a01b038416179055610ba9611759565b610bb1611786565b610bb9611786565b610bc1611786565b610bc96117ac565b610bd16117e2565b610bd9611819565b80156107b6575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b5f82815260fb6020526040902060010154610c3b816112d4565b61070e8383611409565b610c4d61136b565b600260335403610c6f5760405162461bcd60e51b81526004016107a3906123c2565b6002603355610c7c611598565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af1158015610cc8573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cec91906123f9565b505060016033555050565b610cff61136b565b600260335403610d215760405162461bcd60e51b81526004016107a3906123c2565b6002603355610d2e611598565b61015f5460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529082169063095ea7b3906044016020604051808303815f875af1158015610d7f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610da391906123f9565b50506001603355565b5f610db86104dc6113fb565b610dd45760405162461bcd60e51b81526004016107a3906122d1565b600260335403610df65760405162461bcd60e51b81526004016107a3906123c2565b6002603355610e03611598565b6001600160a01b038216610e2a576040516311d000e160e31b815260040160405180910390fd5b30610e358780612418565b610e46906040810190602001612064565b6001600160a01b031614610e6d57604051639d3c586b60e01b815260040160405180910390fd5b610e75611e67565b610e7f8780612418565b610e8d906020810190612064565b6001600160a01b03168152610ea28780612418565b610eb3906040810190602001612064565b6001600160a01b03166020820152610ecb8780612418565b610ed9906040810190612437565b808060200260200160405190810160405280939291908181526020015f905b82821015610f2457610f1560a08302860136819003810190612489565b81526020019060010190610ef8565b50505050506040820152610f388780612418565b610f46906060810190612506565b808060200260200160405190810160405280939291908181526020015f905b82821015610f9157610f8260c0830286013681900381019061254a565b81526020019060010190610f65565b50505050506060820152610fa58780612418565b610fb69060a08101906080016125e5565b81608001906004811115610fcc57610fcc6125fe565b90816004811115610fdf57610fdf6125fe565b905250610fec8780612418565b60a090810135908201526110008780612418565b60c090810135908201526110148780612418565b60e090810135908201526110288780612418565b610100908101359082015261103d8780612418565b610120908101359082015261015f54815160405163f07ec37360e01b81526001600160a01b03918216600482015291169063f07ec37390602401602060405180830381865afa158015611092573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110b69190612612565b61014082015261015f546040516379df72bd60e01b8152611133916001600160a01b0316906379df72bd906110ef908590600401612737565b602060405180830381865afa15801561110a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061112e9190612612565b61184c565b61015f546040516339eb2ac960e21b81526001600160a01b039091169063e7acab249061116c908a908a908a908a908a90600401612b24565b6020604051808303815f875af1158015611188573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111ac91906123f9565b9150816111cc57604051636725093760e01b815260040160405180910390fd5b50600160335595945050505050565b6111e361136b565b6111ec81611865565b6107245f826118db565b6060611201856118e5565b5f80876001600160a01b03168661121a8b8a898961194a565b6040516112279190612cfa565b5f604051808303815f8787f1925050503d805f8114611261576040519150601f19603f3d011682016040523d82523d5f602084013e611266565b606091505b509092509050611277603f87612d1f565b5a1161128557611285612d3e565b6112c582826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061197a565b925050505b9695505050505050565b610724816112e06113fb565b6119b3565b6112ef8282610a0d565b6107b6575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191660011790556113276113fb565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6113736113fb565b6001600160a01b031661138e6097546001600160a01b031690565b6001600160a01b0316146107d25760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107a3565b6107245f80516020612ea783398151915282610c21565b5f611404611a17565b905090565b6114138282610a0d565b156107b6575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191690556114496113fb565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b61012d5460ff166107d25760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b60448201526064016107a3565b6114df61148d565b61012d805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6115136113fb565b6040516001600160a01b03909116815260200160405180910390a1565b6107245f80516020612ea7833981519152826118db565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b61012d5460ff16156107d25760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b60448201526064016107a3565b6115e7611598565b61012d805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586115136113fb565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015611662573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116869190612612565b90505f6117338660600151805190602001208688602001516040516020016116d39392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156112ca575085516112ca906001600160a01b03168286611a34565b5f54610100900460ff1661177f5760405162461bcd60e51b81526004016107a390612d52565b6001603355565b5f54610100900460ff166107d25760405162461bcd60e51b81526004016107a390612d52565b5f54610100900460ff166117d25760405162461bcd60e51b81526004016107a390612d52565b6107d26117dd6113fb565b611547565b5f54610100900460ff166118085760405162461bcd60e51b81526004016107a390612d52565b6107d25f6118146113fb565b6118db565b5f54610100900460ff1661183f5760405162461bcd60e51b81526004016107a390612d52565b61012d805460ff19169055565b30330361185c5761072481611b6f565b610724816118e5565b61186d61136b565b6001600160a01b0381166118d25760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107a3565b61072481611547565b6107b682826112e5565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f906060016040516020818303038152906040528051906020012090506119398190565b54611945906001612d9d565b905550565b606082858560405160200161196193929190612db0565b6040516020818303038152906040529050949350505050565b606083156119895750816106e3565b8251156119995782518084602001fd5b8160405162461bcd60e51b81526004016107a39190611fe9565b6119bd8282610a0d565b6107b6576119d5816001600160a01b03166014611b99565b6119e0836020611b99565b6040516020016119f1929190612dee565b60408051601f198184030181529082905262461bcd60e51b82526107a391600401611fe9565b5f303303611a2c575060331936013560601c90565b503390565b90565b5f805f611a418585611d2e565b90925090505f816004811115611a5957611a596125fe565b148015611a775750856001600160a01b0316826001600160a01b0316145b15611a87576001925050506106e3565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401611aae929190612e62565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051611aec9190612cfa565b5f60405180830381855afa9150503d805f8114611b24576040519150601f19603f3d011682016040523d82523d5f602084013e611b29565b606091505b5091509150818015611b3c575080516020145b8015611b6357508051630b135d3f60e11b90611b619083016020908101908401612612565b145b98975050505050505050565b611b77611d70565b811461072457604051635637b6af60e11b8152600481018290526024016107a3565b60605f611ba7836002612e7a565b611bb2906002612d9d565b6001600160401b03811115611bc957611bc961207f565b6040519080825280601f01601f191660200182016040528015611bf3576020820181803683370190505b509050600360fc1b815f81518110611c0d57611c0d6122bd565b60200101906001600160f81b03191690815f1a905350600f60fb1b81600181518110611c3b57611c3b6122bd565b60200101906001600160f81b03191690815f1a9053505f611c5d846002612e7a565b611c68906001612d9d565b90505b6001811115611cdf576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611c9c57611c9c6122bd565b1a60f81b828281518110611cb257611cb26122bd565b60200101906001600160f81b03191690815f1a90535060049490941c93611cd881612e91565b9050611c6b565b5083156106e35760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016107a3565b5f808251604103611d62576020830151604084015160608501515f1a611d5687828585611d82565b94509450505050611d69565b505f905060025b9250929050565b5f303303611a315750601f1936013590565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115611db757505f90506003611e5e565b8460ff16601b14158015611dcf57508460ff16601c14155b15611ddf57505f90506004611e5e565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015611e30573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b038116611e58575f60019250925050611e5e565b91505f90505b94509492505050565b6040518061016001604052805f6001600160a01b031681526020015f6001600160a01b0316815260200160608152602001606081526020015f6004811115611eb157611eb16125fe565b81525f6020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b5f60208284031215611ef0575f80fd5b81356001600160e01b0319811681146106e3575f80fd5b5f805f60408486031215611f19575f80fd5b83356001600160401b0380821115611f2f575f80fd5b9085019060808288031215611f42575f80fd5b90935060208501359080821115611f57575f80fd5b818601915086601f830112611f6a575f80fd5b813581811115611f78575f80fd5b876020828501011115611f89575f80fd5b6020830194508093505050509250925092565b5f5b83811015611fb6578181015183820152602001611f9e565b50505f910152565b5f8151808452611fd5816020860160208601611f9c565b601f01601f19169290920160200192915050565b602081525f6106e36020830184611fbe565b5f6020828403121561200b575f80fd5b5035919050565b6001600160a01b0381168114610724575f80fd5b803561203181612012565b919050565b5f8060408385031215612047575f80fd5b82359150602083013561205981612012565b809150509250929050565b5f60208284031215612074575f80fd5b81356106e381612012565b634e487b7160e01b5f52604160045260245ffd5b604051608081016001600160401b03811182821017156120b5576120b561207f565b60405290565b604051601f8201601f191681016001600160401b03811182821017156120e3576120e361207f565b604052919050565b5f60208083850312156120fc575f80fd5b82356001600160401b0380821115612112575f80fd5b818501915085601f830112612125575f80fd5b8135818111156121375761213761207f565b8060051b91506121488483016120bb565b8181529183018401918481019088841115612161575f80fd5b938501935b83851015611b63578435925061217b83612012565b8282529385019390850190612166565b5f805f6060848603121561219d575f80fd5b83356121a881612012565b925060208401356121b881612012565b929592945050506040919091013590565b5f805f805f608086880312156121dd575f80fd5b85356001600160401b03808211156121f3575f80fd5b9087019060a0828a031215612206575f80fd5b9095506020870135908082111561221b575f80fd5b818801915088601f83011261222e575f80fd5b81358181111561223c575f80fd5b8960208260051b8501011115612250575f80fd5b6020830196508095505050506040860135915061226f60608701612026565b90509295509295909350565b5f808335601e19843603018112612290575f80fd5b8301803591506001600160401b038211156122a9575f80fd5b602001915036819003821315611d69575f80fd5b634e487b7160e01b5f52603260045260245ffd5b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b5f60808236031215612316575f80fd5b61231e612093565b823561232981612012565b8152602083810135818301526040808501359083015260608401356001600160401b0380821115612358575f80fd5b9085019036601f83011261236a575f80fd5b81358181111561237c5761237c61207f565b61238e601f8201601f191685016120bb565b915080825236848285010111156123a3575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b5f60208284031215612409575f80fd5b815180151581146106e3575f80fd5b5f823561015e1983360301811261242d575f80fd5b9190910192915050565b5f808335601e1984360301811261244c575f80fd5b8301803591506001600160401b03821115612465575f80fd5b602001915060a081023603821315611d69575f80fd5b803560068110612031575f80fd5b5f60a08284031215612499575f80fd5b60405160a081018181106001600160401b03821117156124bb576124bb61207f565b6040526124c78361247b565b815260208301356124d781612012565b806020830152506040830135604082015260608301356060820152608083013560808201528091505092915050565b5f808335601e1984360301811261251b575f80fd5b8301803591506001600160401b03821115612534575f80fd5b602001915060c081023603821315611d69575f80fd5b5f60c0828403121561255a575f80fd5b60405160c081018181106001600160401b038211171561257c5761257c61207f565b6040526125888361247b565b8152602083013561259881612012565b8060208301525060408301356040820152606083013560608201526080830135608082015260a08301356125cb81612012565b60a08201529392505050565b803560058110612031575f80fd5b5f602082840312156125f5575f80fd5b6106e3826125d7565b634e487b7160e01b5f52602160045260245ffd5b5f60208284031215612622575f80fd5b5051919050565b60068110612639576126396125fe565b9052565b5f815180845260208085019450602084015f5b838110156126a6578151612665888251612629565b838101516001600160a01b03168885015260408082015190890152606080820151908901526080908101519088015260a09096019590820190600101612650565b509495945050505050565b5f815180845260208085019450602084015f5b838110156126a65781516126d9888251612629565b808401516001600160a01b0390811689860152604080830151908a0152606080830151908a0152608080830151908a015260a091820151169088015260c090960195908201906001016126c4565b60058110612639576126396125fe565b602081526127516020820183516001600160a01b03169052565b5f602083015161276c60408401826001600160a01b03169052565b50604083015161016080606085015261278961018085018361263d565b91506060850151601f198584030160808601526127a683826126b1565b92505060808501516127bb60a0860182612727565b5060a085015160c085015260c085015160e085015260e0850151610100818187015280870151915050610120818187015280870151915050610140818187015280870151838701525050508091505092915050565b5f808335601e19843603018112612825575f80fd5b83016020810192503590506001600160401b03811115612843575f80fd5b60a081023603821315611d69575f80fd5b8183525f60208085019450825f5b858110156126a65761287c876128778461247b565b612629565b8282013561288981612012565b6001600160a01b03168388015260408281013590880152606080830135908801526080808301359088015260a09687019690910190600101612862565b5f808335601e198436030181126128db575f80fd5b83016020810192503590506001600160401b038111156128f9575f80fd5b60c081023603821315611d69575f80fd5b8183525f60208085019450825f5b858110156126a65761292d876128778461247b565b8282013561293a81612012565b6001600160a01b039081168885015260408381013590890152606080840135908901526080808401359089015260a0908382013561297781612012565b169088015260c0968701969190910190600101612918565b80356001600160781b0381168114612031575f80fd5b5f808335601e198436030181126129ba575f80fd5b83016020810192503590506001600160401b038111156129d8575f80fd5b803603821315611d69575f80fd5b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b8183525f6001600160fb1b03831115612a25575f80fd5b8260051b80836020870137939093016020019392505050565b8183526020808401935f91600585811b8301820185855b88811015612b1657858303601f19018a52813536899003609e19018112612a7a575f80fd5b88018035845260a08682013560028110612a92575f80fd5b85880152604082810135908601526060808301359086015260808083013536849003601e19018112612ac2575f80fd5b9092018781019290356001600160401b03811115612ade575f80fd5b80881b3603841315612aee575f80fd5b8282880152612b008388018286612a0e565b9d89019d96505050928601925050600101612a55565b509098975050505050505050565b608081525f610120873561015e19893603018112612b40575f80fd5b60a060808501528801612b65828501612b5883612026565b6001600160a01b03169052565b612b7160208201612026565b610140612b88818701836001600160a01b03169052565b612b956040840184612810565b610160888101529250612bad61028088018483612854565b925050612bbd60608401846128c6565b87840361011f1901610180890152612bd684828461290a565b93505050612be6608084016125d7565b612bf46101a0880182612727565b5060a08301356101c087015260c08301356101e087015260e0830135610200870152610100808401356102208801528484013561024088015281840135610260880152612c4360208d0161298f565b6001600160781b03811660a08901529450612c6060408d0161298f565b6001600160781b03811660c08901529450612c7e60608d018d6129a5565b95509350607f199150818784030160e0880152612c9c8386866129e6565b9450612cab60808d018d6129a5565b945092508187860301818801525050612cc58383836129e6565b925050508281036020840152612cdc818789612a3e565b9150508360408301526112ca60608301846001600160a01b03169052565b5f825161242d818460208701611f9c565b634e487b7160e01b5f52601160045260245ffd5b5f82612d3957634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b8082018082111561061b5761061b612d0b565b5f8451612dc1818460208901611f9c565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081525f8351612e25816017850160208801611f9c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351612e56816028840160208801611f9c565b01602801949350505050565b828152604060208201525f610aaa6040830184611fbe565b808202811582820484141761061b5761061b612d0b565b5f81612e9f57612e9f612d0b565b505f19019056fe9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000818000a","storage":{"0x0":"0xff"}},"0x58a175bebc8ec21a94ea63aa5a28743945940ee6":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106101165760003560e01c806391d14854116100a2578063c4d66de811610071578063c4d66de8146103bb578063ca15c873146103e1578063d547741f146103fe578063e375b64e1461042a578063ec87621c146104b957610116565b806391d14854146103635780639559c0bd146103a3578063a217fddf146103ab578063b017a30f146103b357610116565b80634794b430116100e95780634794b4301461024f57806349f5124b14610257578063609c92b81461025f5780638274664f146102675780639010d07c1461032457610116565b8063150b7a021461011b578063248a9ca3146101c65780632f2ff15d146101f557806336568abe14610223575b600080fd5b6101a96004803603608081101561013157600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561016b57600080fd5b82018360208201111561017d57600080fd5b803590602001918460018302840111600160201b8311171561019e57600080fd5b5090925090506104c1565b604080516001600160e01b03199092168252519081900360200190f35b6101e3600480360360208110156101dc57600080fd5b50356104d2565b60408051918252519081900360200190f35b6102216004803603604081101561020b57600080fd5b50803590602001356001600160a01b03166104ea565b005b6102216004803603604081101561023957600080fd5b50803590602001356001600160a01b0316610556565b6101e36105b7565b6101e36105db565b6101e36105ff565b6102216004803603606081101561027d57600080fd5b6001600160a01b038235811692602081013590911691810190606081016040820135600160201b8111156102b057600080fd5b8201836020820111156102c257600080fd5b803590602001918460018302840111600160201b831117156102e357600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610623945050505050565b6103476004803603604081101561033a57600080fd5b5080359060200135610fa2565b604080516001600160a01b039092168252519081900360200190f35b61038f6004803603604081101561037957600080fd5b50803590602001356001600160a01b0316610fc9565b604080519115158252519081900360200190f35b6101e3610fe7565b6101e3610fec565b6101e3610ff1565b610221600480360360208110156103d157600080fd5b50356001600160a01b0316611015565b6101e3600480360360208110156103f757600080fd5b50356110cf565b6102216004803603604081101561041457600080fd5b50803590602001356001600160a01b03166110e6565b6102216004803603608081101561044057600080fd5b6001600160a01b0382358116926020810135821692604082013590921691810190608081016060820135600160201b81111561047b57600080fd5b82018360208201111561048d57600080fd5b803590602001918460018302840111600160201b831117156104ae57600080fd5b50909250905061113f565b6101e36114e6565b630a85bd0160e11b95945050505050565b6000818152602081905260409020600201545b919050565b60008281526020819052604090206002015461050d906105086114f8565b610fc9565b6105485760405162461bcd60e51b815260040180806020018281038252602f815260200180611f42602f913960400191505060405180910390fd5b61055282826114fd565b5050565b61055e6114f8565b6001600160a01b0316816001600160a01b0316146105ad5760405162461bcd60e51b815260040180806020018281038252602f8152602001806120bb602f913960400191505060405180910390fd5b610552828261156c565b7ff871896b17e9cb7a64941c62c188a4f5c621b86800e3d15452ece01ce56073df81565b7ff94915c6d1fd521cee85359239227480c7e8776d7caf1fc3bacad5c269b66a1481565b7fd4392723c111fcb98b073fe55873efb447bcd23cd3e49ec9ea2581930cd01ddc81565b60008051602061204b83398151915261063e816105086114f8565b6001906106de5760405162461bcd60e51b81526020600482019081528254600260001961010060018416150201909116046024830181905290918291604490910190849080156106cf5780601f106106a4576101008083540402835291602001916106cf565b820191906000526020600020905b8154815290600101906020018083116106b257829003601f168201915b50509250505060405180910390fd5b5060606106f26106ed846115db565b611656565b905060606107138260018151811061070657fe5b6020026020010151611656565b90507fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60001b6107568260008151811061074957fe5b60200260200101516117d8565b141561095457600061076e8260018151811061074957fe5b905060006001600160a01b031661078b8360028151811061074957fe5b6001600160a01b0316146107d05760405162461bcd60e51b815260040180806020018281038252602981526020018061206b6029913960400191505060405180910390fd5b600086905060006107e78460038151811061074957fe5b9050816001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b15801561082d57600080fd5b505afa158015610841573d6000803e3d6000fd5b505050506040513d602081101561085757600080fd5b5051156108d35760408051632142170760e11b81523060048201526001600160a01b038581166024830152604482018490529151918416916342842e0e9160648082019260009290919082900301818387803b1580156108b657600080fd5b505af11580156108ca573d6000803e3d6000fd5b5050505061094c565b816001600160a01b03166340c10f1984836040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b15801561093357600080fd5b505af1158015610947573d6000803e3d6000fd5b505050505b505050610f9a565b7ff871896b17e9cb7a64941c62c188a4f5c621b86800e3d15452ece01ce56073df60001b6109888260008151811061074957fe5b1415610c085760006109a08260018151811061074957fe5b905060606109c1846002815181106109b457fe5b6020026020010151611920565b905060608180602001905160208110156109da57600080fd5b8101908080516040519392919084600160201b8211156109f957600080fd5b908301906020820185811115610a0e57600080fd5b82518660208202830111600160201b82111715610a2a57600080fd5b82525081516020918201928201910280838360005b83811015610a57578181015183820152602001610a3f565b5050505091909101604052505082519293508a9150600090505b82811015610bfd576000848281518110610a8757fe5b60200260200101519050826001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610ad557600080fd5b505afa158015610ae9573d6000803e3d6000fd5b505050506040513d6020811015610aff57600080fd5b505115610b7b5760408051632142170760e11b81523060048201526001600160a01b038981166024830152604482018490529151918516916342842e0e9160648082019260009290919082900301818387803b158015610b5e57600080fd5b505af1158015610b72573d6000803e3d6000fd5b50505050610bf4565b826001600160a01b03166340c10f1988836040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b158015610bdb57600080fd5b505af1158015610bef573d6000803e3d6000fd5b505050505b50600101610a71565b505050505050610f9a565b7ff94915c6d1fd521cee85359239227480c7e8776d7caf1fc3bacad5c269b66a1460001b610c3c8260008151811061074957fe5b1415610f63576000610c548260018151811061074957fe5b905060006001600160a01b0316610c718360028151811061074957fe5b6001600160a01b031614610cb65760405162461bcd60e51b815260040180806020018281038252602981526020018061206b6029913960400191505060405180910390fd5b60008690506000610ccd8460038151811061074957fe5b9050816001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610d1357600080fd5b505afa158015610d27573d6000803e3d6000fd5b505050506040513d6020811015610d3d57600080fd5b505115610d9c5760408051632142170760e11b81523060048201526001600160a01b038581166024830152604482018490529151918416916342842e0e9160648082019260009290919082900301818387803b1580156108b657600080fd5b6060610dae866002815181106109b457fe5b90506060818060200190516020811015610dc757600080fd5b8101908080516040519392919084600160201b821115610de657600080fd5b908301906020820185811115610dfb57600080fd5b8251600160201b811182820188101715610e1457600080fd5b82525081516020918201929091019080838360005b83811015610e41578181015183820152602001610e29565b50505050905090810190601f168015610e6e5780820380516001836020036101000a031916815260200191505b506040525050509050836001600160a01b03166394d008ef8685846040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b0316815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610ef3578181015183820152602001610edb565b50505050905090810190601f168015610f205780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015610f4157600080fd5b505af1158015610f55573d6000803e3d6000fd5b505050505050505050610f9a565b60405162461bcd60e51b815260040180806020018281038252602a815260200180611f71602a913960400191505060405180910390fd5b505050505050565b6000828152602081905260408120610fc0908363ffffffff6119ea16565b90505b92915050565b6000828152602081905260408120610fc0908363ffffffff6119f616565b601481565b600081565b7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef81565b60025460ff161561105e576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b61109c6040518060400160405280601781526020017f4d696e7461626c65455243373231507265646963617465000000000000000000815250611a0b565b6110a7600082610548565b6110bf60008051602061204b83398151915282610548565b506002805460ff19166001179055565b6000818152602081905260408120610fc390611aa9565b600082815260208190526040902060020154611104906105086114f8565b6105ad5760405162461bcd60e51b8152600401808060200182810382526030815260200180611fc36030913960400191505060405180910390fd5b60008051602061204b83398151915261115a816105086114f8565b6001906111c05760405162461bcd60e51b81526020600482019081528254600260001961010060018416150201909116046024830181905290918291604490910190849080156106cf5780601f106106a4576101008083540402835291602001916106cf565b50602082141561129f576000838360208110156111dc57600080fd5b5060408051913580835290519092506001600160a01b038088169289821692918b16917fe13244aa06bdc79480ed5fdc6ebe2bb37202fcdf33ecf45dc449f4201f3dc0879181900360200190a460408051632142170760e11b81526001600160a01b038981166004830152306024830152604482018490529151918716916342842e0e9160648082019260009290919082900301818387803b15801561128157600080fd5b505af1158015611295573d6000803e3d6000fd5b5050505050610f9a565b6060838360208110156112b157600080fd5b810190602081018135600160201b8111156112cb57600080fd5b8201836020820111156112dd57600080fd5b803590602001918460208302840111600160201b831117156112fe57600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f8201169050808301925050505050505091929192905050509050846001600160a01b0316866001600160a01b0316886001600160a01b03167fdb55e3a0ae817693fd7b07170d81eab0eb2c239f36fcecbc98b6b58ac5667e7a846040518080602001828103825283818151815260200191508051906020019060200280838360005b838110156113ca5781810151838201526020016113b2565b505050509050019250505060405180910390a48051601481111561141f5760405162461bcd60e51b815260040180806020018281038252602c81526020018061201f602c913960400191505060405180910390fd5b60005b818110156114db57866001600160a01b03166342842e0e8a3086858151811061144757fe5b60200260200101516040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050600060405180830381600087803b1580156114b757600080fd5b505af11580156114cb573d6000803e3d6000fd5b5050600190920191506114229050565b505050505050505050565b60008051602061204b83398151915281565b335b90565b600082815260208190526040902061151b908263ffffffff611ab416565b15610552576115286114f8565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b600082815260208190526040902061158a908263ffffffff611ac916565b15610552576115976114f8565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b6115e3611e6d565b6000825111611639576040805162461bcd60e51b815260206004820152601f60248201527f524c505265616465723a20494e56414c49445f42595445535f4c454e47544800604482015290519081900360640190fd5b506040805180820190915281518152602082810190820152919050565b606061166182611ade565b6116b2576040805162461bcd60e51b815260206004820152601860248201527f524c505265616465723a204954454d5f4e4f545f4c4953540000000000000000604482015290519081900360640190fd5b60006116bd83611b0a565b905060608167ffffffffffffffff811180156116d857600080fd5b5060405190808252806020026020018201604052801561171257816020015b6116ff611e6d565b8152602001906001900390816116f75790505b50905060006117248560200151611b96565b855190915081146117665760405162461bcd60e51b81526004018080602001828103825260278152602001806120946027913960400191505060405180910390fd5b60006117758660200151611c2f565b60208701510190506000805b858110156117cc5761179283611b96565b91506040518060400160405280838152602001848152508582815181106117b557fe5b602090810291909101015291810191600101611781565b50929695505050505050565b60006117e382611ade565b15611835576040805162461bcd60e51b815260206004820181905260248201527f524c505265616465723a204445434f44494e475f4c4953545f41535f55494e54604482015290519081900360640190fd5b81516021101561188c576040805162461bcd60e51b815260206004820152601e60248201527f524c505265616465723a20494e56414c49445f55494e545f4c454e4754480000604482015290519081900360640190fd5b600061189b8360200151611b96565b835190915081146118dd5760405162461bcd60e51b81526004018080602001828103825260278152602001806120ea6027913960400191505060405180910390fd5b60006118ec8460200151611c2f565b8451602080870151830180519394509184900392919083101561191657826020036101000a820491505b5095945050505050565b606060006119318360200151611b96565b835190915081146119735760405162461bcd60e51b8152600401808060200182810382526028815260200180611f9b6028913960400191505060405180910390fd5b60006119828460200151611c2f565b845190915081900360608167ffffffffffffffff811180156119a357600080fd5b506040519080825280601f01601f1916602001820160405280156119ce576020820181803683370190505b5090506000816020019050611916848860200151018285611c92565b6000610fc08383611cdd565b6000610fc0836001600160a01b038416611d41565b806040516020018082805190602001908083835b60208310611a3e5780518252601f199092019160209182019101611a1f565b51815160209384036101000a60001901801990921691161790527f3a20494e53554646494349454e545f5045524d495353494f4e530000000000009190930190815260408051808303600519018152601a909201905280516105529550600194509201919050611e87565b6000610fc382611d59565b6000610fc0836001600160a01b038416611d5d565b6000610fc0836001600160a01b038416611da7565b6020810151805160009190821a9060c0821015611b00576000925050506104e5565b5060019392505050565b600080600090506000611b208460200151611c2f565b602085015185519181019250015b80821015611b8d57611b3f82611b96565b8201915080821115611b825760405162461bcd60e51b815260040180806020018281038252602c815260200180611ff3602c913960400191505060405180910390fd5b600190920191611b2e565b50909392505050565b80516000908190811a6080811015611bb15760019150611c28565b60b8811015611bc657607e1981019150611c28565b60c0811015611bf35760b78103600185019450806020036101000a85510460018201810193505050611c28565b60f8811015611c085760be1981019150611c28565b60f78103600185019450806020036101000a855104600182018101935050505b5092915050565b8051600090811a6080811015611c495760009150506104e5565b60b8811080611c64575060c08110801590611c64575060f881105b15611c735760019150506104e5565b60c0811015611c875760b5190190506104e5565b60f5190190506104e5565b80611c9c57611cd8565b5b60208110611cbc578251825260209283019290910190601f1901611c9d565b8251825160208390036101000a60001901801990921691161782525b505050565b81546000908210611d1f5760405162461bcd60e51b8152600401808060200182810382526022815260200180611f206022913960400191505060405180910390fd5b826000018281548110611d2e57fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000611d698383611d41565b611d9f57508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610fc3565b506000610fc3565b60008181526001830160205260408120548015611e635783546000198083019190810190600090879083908110611dda57fe5b9060005260206000200154905080876000018481548110611df757fe5b600091825260208083209091019290925582815260018981019092526040902090840190558654879080611e2757fe5b60019003818190600052602060002001600090559055866001016000878152602001908152602001600020600090556001945050505050610fc3565b6000915050610fc3565b604051806040016040528060008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611ec857805160ff1916838001178555611ef5565b82800160010185558215611ef5579182015b82811115611ef5578251825591602001919060010190611eda565b50611f01929150611f05565b5090565b6114fa91905b80821115611f015760008155600101611f0b56fe456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e744d696e7461626c654552433732315072656469636174653a20494e56414c49445f5349474e4154555245524c505265616465723a2042595445535f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b65524c505265616465723a204e554d5f4954454d535f4445434f4445445f4c454e4754485f4d49534d415443484d696e7461626c654552433732315072656469636174653a20455843454544535f42415443485f4c494d4954241ecf16d79d0f8dbfb92cbc07fe17840425976cf0667f022fe9877caa831b084d696e7461626c654552433732315072656469636174653a20494e56414c49445f5245434549564552524c505265616465723a204c4953545f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66524c505265616465723a2055494e545f4445434f4445445f4c454e4754485f4d49534d41544348a164736f6c6343000606000a","storage":{"0x1":"0x63","0x2":"0x1","0x73d5d1a274bdea1400ad3ea4d982f594abdfd528cde1486b6c617faa3ec116":"0x1","0x89011777cfe6194dd982545e7eb24725dfe9a1aacae299c76fc48ef5017ae650":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x89011777cfe6194dd982545e7eb24725dfe9a1aacae299c76fc48ef5017ae651":"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0x1","0xb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6":"0x4d696e7461626c654552433732315072656469636174653a20494e5355464649","0xb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf7":"0x4349454e545f5045524d495353494f4e53000000000000000000000000000000","0xba75a66b8132bebab85d36fd3638083da57ae3d78fbcd8cc41f73514287dadaf":"0x1","0xe6c7d8231a06d7cb67831aeabcbd43ba24e5e4c6569cf23405f1e558de8580e0":"0x2","0xe84508f2c7fa9c351146748b3025cb78b45df37d868e48c6a75102fecdeee645":"0x2","0xe84508f2c7fa9c351146748b3025cb78b45df37d868e48c6a75102fecdeee647":"0x0","0xf0df3dcda05b4fbd9c655cde3d5ceb211e019e72ec816e127a59e7195f2cd7f5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x5cc819c9915eadfcebd76952b8c1bc36cadd7376":{"nonce":2,"balance":"0x0","code":"0x608060405260043610610103575f3560e01c8063a900866b11610092578063f07ec37311610062578063f07ec373146102f7578063f2d12b1214610316578063f47b774014610329578063fb0f3ee114610116578063fd9f1e101461034c575f80fd5b8063a900866b1461028a578063b3a34c4c146102be578063e7acab24146102d1578063ed98a574146102e4575f80fd5b80637423eb3c116100d85780637423eb3c146101f757806379df72bd1461020b57806387201b411461022a578063881477321461024b578063a81744041461026a575f80fd5b801561011657806306fdde031461013e57806346423aa71461015f5780635b34b966146101d5575f80fd5b366101125761011061036b565b005b5f80fd5b610129610124366004615115565b6103f9565b60405190151581526020015b60405180910390f35b348015610149575f80fd5b50610152610408565b604051610135919061518f565b34801561016a575f80fd5b506101b36101793660046151a1565b5f9081526001602052604090205460ff808216926101008304909116916001600160781b03620100008204811692600160881b9092041690565b6040805194151585529215156020850152918301526060820152608001610135565b3480156101e0575f80fd5b506101e9610417565b604051908152602001610135565b348015610202575f80fd5b50610110610420565b348015610216575f80fd5b506101e96102253660046151b8565b6104c1565b61023d61023836600461524c565b6104f8565b6040516101359291906153f0565b348015610256575f80fd5b5061012961026536600461543f565b610571565b61027d61027836600461547d565b61058f565b60405161013591906154e3565b348015610295575f80fd5b506101e96102a43660046154f5565b6001600160a01b03165f9081526002602052604090205490565b6101296102cc36600461550e565b61062a565b6101296102df366004615553565b6106a3565b61023d6102f23660046155d7565b6106e1565b348015610302575f80fd5b506101e96103113660046154f5565b610784565b61027d610324366004615677565b6107a1565b348015610334575f80fd5b5061033d6107ea565b60405161013593929190615719565b348015610357575f80fd5b5061012961036636600461543f565b610801565b7f000000000000000000000000000000000000000000000000000000000000000180156103b357600263929eee145c146103b05763a61be9f05f52346020526024601cfd5b50565b63929eee1454806103e057600263929eee145c146103dc5763a61be9f05f52346020526024601cfd5b5050565b600381146103dc5763a61be9f05f52346020526024601cfd5b5f61040261080c565b92915050565b60606104126109c0565b905090565b5f6104126109d8565b63929eee14546001147f000000000000000000000000000000000000000000000000000000000000000180610453575080155b1561047157604051630f45b98b60e41b815260040160405180910390fd5b61049a7f000000000000000000000000145908bbcfc7b258e4d4d9a586f6e3249ae80216610a45565b6104b7576040516370a4078f60e01b815260040160405180910390fd5b5f63929eee145550565b5f806104cd6004610aa3565b90506104f16104e282610ab35b63ffffffff16565b610140830135610b30565b3590565b9392505050565b60608061055d61051361050b6004610aa3565b610c746104da565b61052a61052260046020610cdc565b610cfa6104da565b61054161053960046040610cdc565b610d526104da565b61055061053960046060610cdc565b89338a15028a0189610daa565b915091509b509b9950505050505050505050565b5f6104f161058a6105826004610aa3565b610de46104da565b610e3c565b606061061f6105a96105a16004610aa3565b610f5d6104da565b604080515f8082526020820190925290610601565b6105ee6040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816105be5790505b5061061961061160046020610cdc565b610fb56104da565b3361100d565b90505b949350505050565b5f6104f161064361063b6004610aa3565b61104b6104da565b604080515f808252602082019092529061069b565b6106886040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816106585790505b5084336110c1565b5f6106d76106bc6106b46004610aa3565b6112406104da565b6106cb61052260046020610cdc565b853386150286016110c1565b9695505050505050565b6060806107736106f46105a16004610aa3565b604080515f808252602082019092529061074c565b6107396040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816107095790505b5061075c61053960046020610cdc565b61076b61053960046040610cdc565b883389610daa565b915091509850989650505050505050565b6001600160a01b0381165f90815260208190526040812054610402565b60606107dc6107b361050b6004610aa3565b6107c261052260046020610cdc565b6107d161061160046040610cdc565b33861502860161100d565b90505b979650505050505050565b60605f806107f661129c565b925092509250909192565b5f6104f183836112e8565b5f61012435600281901c90600316600182118334158214806108315761083134611423565b506003841160a0810260240135906502030203010160d01b861a905f630101020360d01b881a6108648882898888611434565b9096509150506101c4600583901b01355f87600581111561088757610887615329565b036108bc5760443560243517156108a557636ab37ce75f526004601cfd5b6108af8482611751565b6108b7611809565b61099d565b6040805160208082528183019092525f9160208201818036833701905050905060028a60058111156108f0576108f0615329565b036109135761090e60c4356084353360e435610104355b8787611889565b610988565b60038a600581111561092757610927615329565b036109455761090e60c4356084353360e435610104355b87876118d4565b60048a600581111561095957610959615329565b036109735761090e60243533608435604435606435610907565b6109886024353360843560443560643561093e565b610992848261190a565b61099b816119c4565b505b6109a88689846119e8565b6109b0611a5e565b6001995050505050505050505090565b6060602080526707536561706f727460475260606020f35b5f6109e1611ab1565b600143034060801c335f525f60205260405f208054820192508281555050336001600160a01b03167f721c20121297512b72821b97f5326877ea8ecf4bb9948fea5bfcb6453074d37f82604051610a3a91815260200190565b60405180910390a290565b5f816001600160a01b0316600a5a610a5d9190615773565b6040515f8181818686fa925050503d805f8114610a95576040519150601f19603f3d011682016040523d82523d5f602084013e610a9a565b606091505b50909392505050565b5f813563ffffffff168201610402565b5f610ac661016060408051918201905290565b9050610ad58282610140611b28565b610af2610aeb610ae6846040610cdc565b611b31565b6040830152565b5f610b06610b01846060610cdc565b611b84565b9050610b13816060840152565b610b26610b1e825190565b610140840152565b50919050565b0190565b610140820151604080519084015180515f939284927fa66999307ad1bb4fde44d13a5d710bd7718e0c87c1eef68a571629fbf5b93d0292602090910190845b81811015610b9c578251601f1901805186825260c082208652905260209384019390920191600101610b6f565b508060051b6040512094505050505f7f42d81c6929ffdc4eb27a0808e40e82516ad42296c166065de7f812492304ff6e915060405160206060890151015f5b86811015610c08578151601f1901805186825260e082208552905260209283019290910190600101610bdb565b505060408051600587901b9020601f198a0180517ffa445660b7e21515a59617fcd68910b487aa5808b8abda3d78bc85df364b2c2f8252928b01805197815260608c018051938152610140909c019a8b5261018082209390915295909552939097525050925250919050565b5f8063ffffffff8335169050600581901b610c986020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610cca610cc4610cbf8484610cdc565b611240565b82850152565b602001610ca7565b5050505050919050565b5f6104f163ffffffff610cf46104ed8686610b2c8516565b16840190565b5f8063ffffffff8335169050600581901b610d1e6020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610d4a610cc4610d458484610cdc565b611bc7565b602001610d2d565b5f8063ffffffff8335169050600581901b610d766020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610da2610cc4610d9d8484610cdc565b611c09565b602001610d85565b60608036155f80610dbe8c8c85898b611c4c565b91509150610dd18c8b8b8b8b8787612029565b9450945050505097509795505050505050565b5f8063ffffffff8335169050600581901b610e086020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610e34610cc4610e2f8484610cdc565b61215b565b602001610e17565b5f610e45611ab1565b5f805f80855190505f5b81811015610f50575f878281518110610e6a57610e6a615792565b60209081029190910101518051909150600481608001516004811115610e9257610e92615329565b03610e9e575050610f48565b80519450610eab8161219e565b5f8181526001602052604081209850909650610ecd90879089903615156121d7565b50865460ff16610f455780610140015181606001515114610ef057610ef0612265565b610eff85878460200151612272565b865460ff191660011787556040517ff280791efe782edcf06ce15c8f4dff17601db3b88eb3805a0db7d77faf757f0490610f3c9088908490615895565b60405180910390a15b50505b600101610e4f565b5060019695505050505050565b5f8063ffffffff8335169050600581901b610f816020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610fad610cc4610fa88484610cdc565b61104b565b602001610f90565b5f8063ffffffff8335169050600581901b610fd96020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257611005610cc46110008484610cdc565b61230e565b602001610fe8565b60605f36151590505f806110258888858b5189611c4c565b9150915061103282612341565b61103f8887848885612380565b98975050505050505050565b5f61105e61020060408051918201905290565b60a0810180825290915061107a61107484610aa3565b82612453565b61108660016020840152565b61109260016040840152565b6110af6110a86110a3856020610cdc565b612489565b6060840152565b610b266110ba6124b1565b6080840152565b835160808101515f91906110e860048260048111156110e2576110e2615329565b146124cb565b5f80806110f78a36151561256c565b60408051600180825281830190925293965091945092505f9190816020015b61111e615027565b8152602001906001900390816111165790505090508a815f8151811061114657611146615792565b602002602001018190525061115b818b612764565b6111678684848b6128dd565b6040805160018082528183019092525f91602080830190803683375091925050503615156004878181111561119e5761119e615329565b146111c1576111af8d83885f6129dd565b6111bb86868684612a2f565b506111d3565b6111d0888e6080015183612b33565b95505b6111de888c8c612c03565b85825f815181106111f1576111f1615792565b6020026020010181815250506112088d8388612d26565b61122586895f01518a602001518d8c604001518d60600151612df3565b61122d611a5e565b5060019c9b505050505050505050505050565b5f61125361020060408051918201905290565b905061126760208381019083016040611b28565b60a0810180825261127a61107484610aa3565b61128b6110a86110a3856060610cdc565b610b266110ba6110a3856080610cdc565b60605f805f6112a9612e58565b90505f7f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c905060605f5281602052806040526303312e3660635260a05ff35b5f6112f1611ab1565b5f8083815b81811015611408573687878381811061131157611311615792565b90506020028101906113239190615977565b90505f61133360208301836154f5565b90505f61134660408401602085016154f5565b90505f61135960a0850160808601615996565b905081331483331417156004821417871796505f61138d61138261137a8790565b610ab36104da565b866101400135610b30565b5f8181526001602052604090819020805461ffff19166101001781559051909a509091506001600160a01b0380851691908616907f6bacc01dbe442496068f7d234edd811f1a5f833243e0aec824f86ab861f3c90d906113f09085815260200190565b60405180910390a385600101955050505050506112f6565b5050801561141857611418612f35565b506001949350505050565b63a61be9f05f52806020526024601cfd5b5f8061143f5f6124cb565b611447612f42565b426101643511154261014435111715611475576321ccfeb75f5261014435602052610164356040526044601cfd5b610204356102643510156114905763466aa6165f526004601cfd5b7f42d81c6929ffdc4eb27a0808e40e82516ad42296c166065de7f812492304ff6e608081905260a08790526060602460c037604060646101203760e060802061016052610264356102043560051b6102a0016001820181526020810190508881526080602460208301376101608860a0528760c0525f60e0525f6102043593505f5b84811015611566578060400261028401602081610100376040816101203760208101358317925060208401935060e0608020845260a0850194508b85528a6020860152604081606087013750600101611512565b6001850160051b610160206060526102643594505b848110156115b6578060400261028401925060a0840193508a845289602085015260408360608601376020830135919091179060010161157b565b506001600160a01b038111156115d3576339f3e3fd5f526004601cfd5b50505050505f7fa66999307ad1bb4fde44d13a5d710bd7718e0c87c1eef68a571629fbf5b93d029050806080528360a052606060c460c0376020610104610120375060c06080205f9081526020812060e05260843590611647826001600160a01b03165f9081526020819052604090205490565b7ffa445660b7e21515a59617fcd68910b487aa5808b8abda3d78bc85df364b2c2f60808190529091506040608460a03760605161010052896101205260a061014461014037816101e05261018060802094505050506102043560051b61018001828152336020820152608060408201526101206060820152600160808201528360a0820152606060c460c083013760a061026435026101e00160a4356084357f9d9af8e38d66c62e2c12f0225249fd9d721c54b83f48d9352c97c6cacdcb6f318385a35f60605260608101820160405250505f61172383612f8d565b905061172f8389612fde565b7101000000000000000000000000000001000182559150509550959350505050565b60c43560843560e4356101043584156117b9575f6040519050632671a55160e11b815260206004820152600160248201528660448201528460648201528360848201523360a48201528260c48201528160e48201526117b38682610104613033565b50611801565b60028660058111156117cd576117cd615329565b036117f457806001146117e3576117e3816130ea565b6117ef848433856130fb565b611801565b61180184843385856131b0565b505050505050565b346064356084356102643560061b5f80805b8381101561185a5761028481013592506102a481013591508683111561184357611843613287565b82870396506118528284613294565b60400161181b565b508585111561186b5761186b613287565b6118758486613294565b848611156118015761180133868803613294565b61189381836132ca565b816118ba57826001146118a9576118a9836130ea565b6118b5878787876130fb565b6118cb565b6118cb828260028a8a8a8a8a6132e8565b50505050505050565b6118dd83613367565b6118e781836132ca565b816118f9576118b587878787876131b0565b6118cb828260038a8a8a8a8a6132e8565b5f805f805f861561192f57505060843592503391505060c4356101043560e435611944565b50339350506084359150506024356064356044355b801561195257611952613379565b50600586901b6101e403356102643560061b5f80805b838110156119a95761028481013592506102a481013591508a156119935761199083876159b4565b95505b6119a1878a8486898f613386565b604001611968565b506119b886898988888e613386565b50505050505050505050565b60408151146119d05750565b5f6119dc826020015190565b90506103dc81836133bb565b611a048260a4355b331415600182116004909210919091161690565b15611a5957805f611a13825190565b9050608081901c63ffffffff8216611a3484826317b1f94282526001905250565b601c840163fb5014fc6060529350611a5060a4358886856133df565b5f6060526118cb565b505050565b7f00000000000000000000000000000000000000000000000000000000000000018015611a8f575f63929eee145d50565b63929eee145480611aa5575f63929eee145d5050565b50600163929eee145550565b7f00000000000000000000000000000000000000000000000000000000000000018015611af05763929eee145c156103b057637fa8a9875f526004601cfd5b63929eee145480611b135763929eee145c156103dc57637fa8a9875f526004601cfd5b600181146103dc57637fa8a9875f526004601cfd5b80838337505050565b5f63ffffffff8235166040519150808252602082018160051b81018060a084026020870183378293505b81841015611b745780845260209093019260a001611b5b565b60405250919392505050565b9052565b5f63ffffffff8235166040519150808252602082018160051b81018060c084026020870183378293505b81841015611b745780845260209093019260c001611bae565b5f611bd960a060408051918201905290565b9050611be782826080611b28565b611c04611bfd611bf8846080610cdc565b613427565b6080830152565b919050565b5f63ffffffff8235166040519150808252602082018160051b8101808360061b6020870183378293505b81841015611b7457808452602090930192604001611c33565b60605f611c5960016124cb565b86515f90600160e61b82351690806001600160401b03811115611c7e57611c7e61574b565b604051908082528060200260200182016040528015611ca7578160200160208202803683370190505b50945060010160051b91505f60205b83811015611ea8575f611ccc8c83613cce6104da565b90505f805f611cdb848e61256c565b6001600160781b0382166020880152919450925090505f829003611d025750505050611ea0565b6001600160781b0381166040808601919091528a8601849052845160a081015160c0820151608083015192909301518051600184119d909d179c600490931099509092915f5b81811015611dea575f838281518110611d6357611d63615792565b602002602001015190508b8151108d179c505f611d858989846080015161345e565b90508160800151826060015103611da25760608201819052611db7565b611db18989846060015161345e565b60608301525b5f611dd08360600151838a8a611dcb361590565b61349a565b606084018190526080909301929092525050600101611d48565b5087516060015180515f5b81811015611e94575f838281518110611e1057611e10615792565b602002602001015190505f611e2a8b8b846080015161345e565b90508160800151826060015103611e475760608201819052611e5c565b611e568b8b846060015161345e565b60608301525b5f611e718360600151838c8c611dcb36151590565b6060840181905260a0840180516080909501949094529092525050600101611df5565b50505050505050505050505b602001611cb6565b50506001600160e61b018103611ec057611ec06134ed565b50611ecb8888612764565b5f8060205b8381101561200e578581015192508215612006575f611ef28c83613cce6104da565b9050885f03611f0d575f878301819052602090910152612006565b60048151608001516004811115611f2657611f26615329565b14611fa957611f3f8188866001600587901c038e6134fa565b611f55575f878301819052602090910152612006565b602080820151604083015183516080810151930151611f8e9388936001600160781b039081169316913314156001909111168e17612a2f565b611fa4575f878301819052602090910152612006565b611fd4565b611fbb815f015182608001518c612b33565b878301819052935083611fd4575f602090910152612006565b886001900398505f815f01519050611fff85825f015183602001518c85604001518660600151612df3565b6001935050505b602001611ed0565b508061201c5761201c613555565b5050509550959350505050565b85518551606091829161203c81836159c7565b6001600160401b038111156120535761205361574b565b60405190808252806020026020018201604052801561208c57816020015b61207961505a565b8152602001906001900390816120715790505b5092505f5b828110156120e4576120bf8c5f8d84815181106120b0576120b0615792565b60200260200101518c8c613562565b8482815181106120d1576120d1615792565b6020908102919091010152600101612091565b505f5b8181101561213d576121168c60018c848151811061210757612107615792565b60200260200101518c5f613562565b848483018151811061212a5761212a615792565b60209081029190910101526001016120e7565b5061214b8b84888a896135b1565b9350505097509795505050505050565b5f61216c6040808051918201905290565b905061218661218261217d84610aa3565b61389a565b8252565b611c046121976110a3846020610cdc565b6020830152565b5f6121b38260600151518361014001516138b9565b81516001600160a01b03165f90815260208190526040902054610402908390610b30565b82545f90610100900460ff16156121fe5781156121f7576121f7856138c9565b505f610622565b83546201000090046001600160781b0316801561225957831561222957612224866138da565b612259565b8454600160881b90046001600160781b0316811061225957821561225057612250866138eb565b5f915050610622565b50600195945050505050565b632165628a5f526004601cfd5b33831480156122815750505050565b5f61228a612e58565b61190160f01b5f9081526002828152602287815260428320908390528651939450929190601f601d840116106102e260621984011016156122f4576122cf86886138fc565b61190160f01b5f908152600286905260228281526042822091905290975090506122f7565b50815b612304888285858a613992565b5050505050505050565b5f61231f6040808051918201905290565b9050612330612182610d9d84610aa3565b611c04612197610d9d846020610cdc565b80518060051b6040019050602082038051602082527f4b9f2d36e1b4c93de62cc077b00b1a91d84b6c31b4a14e012718dcca230689e78383a190525050565b8351606090806001600160401b0381111561239d5761239d61574b565b6040519080825280602002602001820160405280156123d657816020015b6123c361505a565b8152602001906001900390816123bb5790505b5091505f5b81811015612439575f8782815181106123f6576123f6615792565b6020026020010151905061241389825f0151836020015185613adb565b84838151811061242557612425615792565b6020908102919091010152506001016123db565b5061244787838787876135b1565b50505b95945050505050565b6124608282610160611b28565b612471610aeb610ae6846040610cdc565b6103dc612482610b01846060610cdc565b6060830152565b6040518135601f0163ffffffe01660200180838337913563ffffffff16815290810160405290565b5f6124c3602060408051918201905290565b5f8152905090565b7f000000000000000000000000000000000000000000000000000000000000000180156125185763929eee145c1561250a57637fa8a9875f526004601cfd5b8160010163929eee145d5050565b63929eee14548061254a5763929eee145c1561253b57637fa8a9875f526004601cfd5b8260010163929eee145d505050565b6001811461255f57637fa8a9875f526004601cfd5b505060020163929eee1455565b5f805f80855f015190506125898160a001518260c0015187613c80565b61259c57505f925082915081905061275d565b602086015160408701516001600160781b0391821694501691505f6004826080015160048111156125cf576125cf615329565b036125fc57600183850218905080156125ea576125ea613ca3565b506001935083925082915061275d9050565b50818311831517801561261157612611613ca3565b608082015160011615848411161561262b5761262b613cb0565b6126348261219e565b5f81815260016020526040812091965061265290879083908a6121d7565b61266557505f935083925061275d915050565b805460ff1661268057612680835f0151878a60600151612272565b8054608881901c8061269457869150612757565b6001600160781b038260101c169150600186036126b8578181039650809550612757565b8086036126d357908601858103868211029096039590612757565b80860296810291909502810186810387821102918290039695919003906001600160781b0386111561275757612717565b5f5b8215610b2657908290069190612706565b61272a6127248784612704565b88612704565b8015019687900496909504946001600160781b0386111561275757634e487b715f5260116020526024601cfd5b50505050505b9250925092565b805182515f5b82811015612853575f84828151811061278557612785615792565b602002602001015190505f815f015190508381106127aa576127aa8260200151613cbd565b5f8782815181106127bd576127bd615792565b6020026020010151905080602001516001600160781b03165f036127e35750505061284b565b80516040808201519085015163bfb3f8ce5f8760200151600181111561280b5761280b615329565b14612827575f61281c856060613cce565b9350636088d7de9150505b8251821061283857805f526004601cfd5b612843838389613cd9565b505050505050505b60010161276a565b505f5b818110156128d6575f85828151811061287157612871615792565b6020026020010151905080602001516001600160781b03165f0361289557506128ce565b8051608081015160608201516128b29085908363a8930e9a613d8c565b6128ca8483604001518363d69293326104da613d8c90565b5050505b600101612856565b5050505050565b60a084015160c08501516040860151515f805b8281101561295a575f8960400151828151811061290f5761290f615792565b602002602001015190505f815f01519050801584179350505f612946826060015183608001518c8c8b8b612941361590565b613df3565b6060830152506080018690526001016128f0565b5060808801516004811082168015612974576129746134ed565b505050506060860151515f5b81811015612304575f8860600151828151811061299f5761299f615792565b602002602001015190505f6129c4826060015183608001518b8b8a8a61294136151590565b60608301525060a0810151608090910152600101612980565b8351608081015160208201513314156001821160049092109190911616156128d6575f80612a12858489608001518988613e2e565b63fb5014fc6060529092509050611a5083602001518684846133df565b5f848152600160205260408120805482908290608881901c80612a5457889150612adc565b6001600160781b038260101c169150808803612a7857908801878111935090612adc565b97880297808802979190910288018781119350906001600160781b038083119089111715612adc57612aaa8883612704565b8015019788900497909104906001600160781b038083119089111715612adc57634e487b715f5260116020526024601cfd5b508215612b15578515612b09576040516310fda3e160e01b8152600481018a905260240160405180910390fd5b5f945050505050610622565b8660881b8160101b1760011782556001945050505050949350505050565b5f83610140015184606001515114612b4d57612b4d612265565b83515f8080612b5c8888613fac565b915091505f8082845f885af16001600160a01b0385165f908152600260205260409020805460018101909155606086901b189550925082612bbb578515612bae57612ba5614056565b612bae8561409d565b505f93506104f192505050565b505050505f805f612bd8876040015188606001516104da6140ae90565b925092509250825f14612bee57612bee8461409d565b60408701919091526060860152509392505050565b6040805160208082528183019092525f916020820181803683375050506040850151519091505f5b81811015612c7b575f86604001518281518110612c4a57612c4a615792565b60200260200101519050846080820152612c7281885f0151896101200151876104da61432790565b50600101612c2b565b50506060840151515f90815b81811015612d09575f87606001518281518110612ca657612ca6615792565b602002602001015190505f6005811115612cc257612cc2615329565b81516005811115612cd557612cd5615329565b03612cf1574793508381606001511115612cf157612cf1613287565b612d00813389886143276104da565b50600101612c87565b5050612d14826119c4565b504780156128d6576128d63382613294565b8251608081015160208201515f92839283928392916004811060019091111633909114151615612d8857612d69612d6361010083015190565b5190565b8861441c565b9093509150612d7a60208201612d5f565b945063fb5014fc9350612dd4565b600481608001516004811115612da057612da0615329565b0361230457805194505f8560601b9050612dc187838b608001518b8561445d565b639397928596509094509250612dd49050565b612dde6060859052565b612dea858785856133df565b5f606052612304565b60608290506060829050856001600160a01b0316876001600160a01b03167f9d9af8e38d66c62e2c12f0225249fd9d721c54b83f48d9352c97c6cacdcb6f318a888686604051612e469493929190615a13565b60405180910390a35050505050505050565b5f7f00000000000000000000000000000000000000000000000000000000000005394614612f10575060408051608080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f5f9081527f32b5c112df393a49218d7552f96b2eeb829dfb4272f4f24eef510a586b85feef6020527f95f740a33d720b7cd93c75d515ac95ca3bbaa2594cce46ea48e00974ea8fcd14855246606090815230845260a08220949095529093529190915290565b507f8bebed3dbe91a82da0dc94c8d370c160ad6db1b32164303e65b8544bae7e2f5590565b63fed398fc5f526004601cfd5b600435602014610224356102401416610244356102606102643560061b01141660186101243510600160a01b60843560a4351760c4356024351717101616806103b0576103b0614528565b5f8181526001602081905260409091209060843590612fb290849084903615156121d7565b50815460ff16610b2657610b268184612fd9602463ffffffff6102443516016124896104da565b612272565b5f612feb8260a4356119f0565b15610402575f805f612ffc86614535565b63fb5014fc6060529194509250905061301c60a43587601c8601856133df565b5f60605260209190910160801b1781529392505050565b604080517f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c60ff60a01b175f90815260208690527f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f83526055600b20919092526001600160a01b031690505f805f805260205f85875f875af191505f519050816130c8576130bf614056565b6130c8836145ed565b6001600160e01b03198116632671a55160e11b146118015761180186846145fe565b6369f958275f52806020526024601cfd5b833b61311257635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af1806131a2573d1561318057601f3d0160051c8260051c8160030281831115613169578183036003028280028480020360091c01015b5a60208201101561317c573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b6131c757635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af18061326c573d1561324b57601f3d0160051c8560051c8160030281831115613234578183036003028280028480020360091c01015b5a602082011015613247573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b638ffff9805f526004601cfd5b61329d81613367565b5f805f805f85875af1905080611a59576132b5614056565b63bc806b965f5282602052816040526044601cfd5b5f6132d6836020015190565b9050818114611a5957611a59836119c4565b5f60208851036133225750604080885260208089018a9052632671a55160e11b918901919091526044880152600160648801819052613331565b50606487018051600101908190525b603c60c082028901038781528660208201528560408201528460608201528360808201528260a082015250505050505050505050565b806103b0576391b3e5145f526004601cfd5b636ab37ce75f526004601cfd5b61338f83613367565b61339981836132ca565b816133aa576117ef86868686614613565b611801828260018989895f8a6132e8565b6064810151604082019060c0026044016133d6848383613033565b50506020905250565b5f806001600160e01b03198451165f805260205f85875f8b5af15f51909350149050816134185761340e614056565b846080526024607cfd5b8061180157846080526024607cfd5b5f8063ffffffff83351690506001810160051b61344a8160408051918201905290565b9250613457848483611b28565b5050919050565b5f82840361346d5750806104f1565b82848309156134835763c63cf0895f526004601cfd5b5f61348e8584615aaf565b93909304949350505050565b5f8486146134e357838303428590038082035f6134b7838a615aaf565b6134c1838c615aaf565b6134cb91906159c7565b9050858487830304018115150294505050505061244a565b5092949350505050565b6312d3f5a35f526004601cfd5b8451608081015160208201515f92916004811060019091111633909114151615610f50575f8061353187848b608001518b8a613e2e565b9150915061354b836020015188848463fb5014fc8a614707565b935050505061244a565b63d5da9a1b5f526004601cfd5b61356a61505a565b83515f0361357b5761357b85614774565b5f85600181111561358e5761358e615329565b036135a45761359f86858385614785565b61244a565b61244a86858333876148f5565b84516060905f816001600160401b038111156135cf576135cf61574b565b6040519080825280602002602001820160405280156135f8578160200160208202803683370190505b506040805160208082528183019092529192505f9190602082018180368337505089519192505060010160051b60205b81811015613687575f61363e8b83613cce6104da565b8051606081015191925090801561367c57478111825115161561366857638ffff9805f526004601cfd5b61367c828460200151856040015189614327565b505050602001613628565b50505f5b838110156137f3575f8a82815181106136a6576136a6615792565b6020026020010151905080602001516001600160781b03165f036136ed575f8483815181106136d7576136d7615792565b91151560209283029190910190910152506137eb565b600184838151811061370157613701615792565b911515602092830291909101909101528051604081015180515f5b81811015613786575f83828151811061373757613737615792565b6020026020010151905080606001515f1461377357608081018051908e9052855161012087015161376d9184918c6143276104da565b60808201525b608081015160609091015260010161371c565b505050606081015180515f5b818110156137e5575f8382815181106137ad576137ad615792565b602002602001015190505f81606001519050805f146137d1576137d1888483614a2c565b5060a0810151606090910152600101613792565b50505050505b60010161368b565b506137fd816119c4565b47801561380e5761380e3382613294565b8515613884575f5b848110156138825783818151811061383057613830615792565b60200260200101511561387a5761387a8b828151811061385257613852615792565b60200260200101518a8b848151811061386d5761386d615792565b6020026020010151612d26565b600101613816565b505b61388c611a5e565b509098975050505050505050565b5f6138ad61016060408051918201905290565b9050611c048282612453565b808210156103dc576103dc614a45565b631a5155745f52806020526024601cfd5b63ee9e0e635f52806020526024601cfd5b6310fda3e15f52806020526024601cfd5b5f805f84516001811660410380820360051c9250808752806020018701915050805160e81c6003820191506001811660051b868152825160208218525060015b838110156139685760405f2082821c60051b60209081169182529384018051919094185260010161393c565b50505060405f2091505f61397b82614a52565b5f9081526020939093525050604090209392505050565b5f805f528151602083038051826041035f600182116139f557604087015160608801515f1a83156139d657601b8260ff1c0190506001600160ff1b03821660408a01525b88528a855260205f60808760015afa508385528588526040880152505f515b8a148a1515169450849050613abe57858552604082526044850380516040870351630b135d3f60e11b835289604089035260205f60648b01858f5afa96508615613ab257630b135d3f60e11b5f5114613ab2578b3b15613a5c57634f7fb80d5f526004601cfd5b6001866041031115613a7557638baa579f5f526004601cfd5b64010100000060608901515f1a1a15604187141615613aa557631f003d0a5f5260608801515f1a6020526024601cfd5b63815e1d645f526004601cfd5b8385529152603f198601525b5050508061180157613ace614056565b634f7fb80d5f526004601cfd5b613ae361505a565b8251158451151715613afc576398e9db6e5f526004601cfd5b613b0461505a565b613b118685835f806148f5565b805160608101515f03613b2657509050610622565b613b368787858460800151614785565b82516040828101519082015160208085015190840151855185511891181791181715613b6d5763bced929d5f52846020526024601cfd5b806060015182606001511115613bf4575f865f81518110613b9057613b90615792565b60200260200101519050816060015183606001510389825f015181518110613bba57613bba615792565b60200260200101515f015160600151826020015181518110613bde57613bde615792565b6020026020010151606001818152505050613c75565b5f875f81518110613c0757613c07615792565b60200260200101519050826060015182606001510389825f015181518110613c3157613c31615792565b60200260200101515f015160400151826020015181518110613c5557613c55615792565b602002602001015160600181815250508260600151826060018181525050505b505050949350505050565b428084111590831116818015613c94575080155b156104f1576104f18484614e61565b635a052b325f526004601cfd5b63a11b63ff5f526004601cfd5b63133c37c65f52806020526024601cfd5b5f6104f18284015190565b5f838381518110613cec57613cec615792565b602002602001015190505f815f01519050613d078160031090565b613d1357613d13614e76565b60408201518015613d3657613d318460600151828660800151614e83565b613d49565b60808401515115613d4957613d49614ecd565b6004821460030383816005811115613d6357613d63615329565b90816005811115613d7657613d76615329565b9052505050606090920151604090910152505050565b82515f5b81811015611801575f858281518110613dab57613dab615792565b60209081029190910101518051604082015191925090600382116004881415821515171615613de557855f5288602052836040526044601cfd5b505050806001019050613d90565b5f868803613e0d57613e0686868961345e565b90506107df565b6107dc613e1b87878b61345e565b613e2688888b61345e565b86868661349a565b5f805f613e39614eda565b6301e4d72a815260208082015260408101898152336060830152601c820194509091508751604082015287613e79613e7260a083015190565b60e0840152565b613e8f613e8760c083015190565b610100840152565b613ea5613e9d60e083015190565b610120840152565b610140613eb3816060850152565b5f613ebf604084015190565b90505f613ece82848701614ee4565b928301929050613edf836080870152565b5f613eeb606086015190565b90505f613efa82868901614f4a565b948501949050613f0b8560a0890152565b5f613f188e878a01614faf565b959095019450613f298560c0890152565b8685015f613f378e83614fce565b602497019687019a50613f539050613f4e8c8c0190565b614ffe565b8060408b901b60808b901b17178f610100018181525050613f7d8c82611b8090919063ffffffff16565b60058c8e51613f8c91906159b4565b613f97911b8b6159b4565b99505050505050505050509550959350505050565b5f8083613fb7614eda565b639891976581523360208201908152608060408301819052601c9092019450905f613fe3604085015190565b90505f613ff282848601614ee4565b928301929050614003836040860152565b5f61400f606087015190565b90505f61401e82868801614ee4565b94850194905061402f856060880152565b895f61403d82898901614faf565b9a9d96909a016004019b50949950505050505050505050565b3d1561409b57601f3d0160051c60405160051c8160030281831115614088578183036003028280028480020360091c01015b5a602082011015611a59573d5f803e3d5ffd5b565b63939792855f52806020526024601cfd5b60603d105f8080808080866141205760405f803e5f51935060205192503d60208501113d60208501118082179850505086614120576020845f3e5f51915060208360203e60205190508160071b60208501018160a0026020850101803d10823d101761ffff8486171117985050505f80525b86614152575f8061413584602088018d61415b565b9250975061414783602087018c61423b565b929092179850909550505b5050505061275d565b5f806040519150825160c08602602001830160405285835260208660010160051b8085018360010160051b8701614199858b81811090829003020190565b60010160051b8a861196505b808510156141f957828589015260808a843e6060830151955085608084015260608201518681116141d685856142e2565b17881797505060808a01995060a08301925060a0820191506020850194506141a5565b50505b8183101561422f578083870152608088823e6060810151608082015260808801975060a0810190506020830192506141fc565b50505050935093915050565b604051815180851190808603818710028101602060e08202850181016040528185526001928301600590811b87019390920190911b908185015b8282101561422f57808287015260a088823e60206060890160a083013e606081015160608501516142b26080840151608088015180159114171590565b818311176142c084886142e2565b60a09b909b019a179690961795505060c0938401936020929092019101614275565b5f81516040830151801560038311161561430457506040840151600119909101905b604085015181148551831460208701516020870151141616159250505092915050565b5f8451600581111561433b5761433b615329565b0361437857604084015160208501516001600160a01b0316171561436157614361613379565b61437384608001518560600151613294565b614416565b60018451600581111561438d5761438d615329565b036143be576040840151156143a4576143a4613379565b614373846020015184866080015187606001518686613386565b6002845160058111156143d3576143d3615329565b036143f7576143738460200151848660800151876040015188606001518787611889565b61441684602001518486608001518760400151886060015187876118d4565b50505050565b608082901c63ffffffff604084901c811690808516906144449084906317b1f94290611b8016565b601c830192506144548482614fce565b50509250929050565b5f80614467614eda565b63f4dd92ce815287841860a0820152601c8101925060200160a0808252875f614491604083015190565b90505f6144a082858701614ee4565b9384019390506144b1846020870152565b5f6144bd606085015190565b90505f6144cc82878901614f4a565b9586019590506144dd866040890152565b5f6144ea8d888a01614faf565b9687019690506144fb8760608a0152565b5f6145088d898b01614fce565b905080880197508760040199505050505050505050509550959350505050565b6339f3e3fd5f526004601cfd5b6301e4d72a6102043560051b6080019081525f808260208082015260408101858152336060830152601c919091019061456f608435610aeb565b61458061014460e083016060611b28565b61014061458e816060840152565b61459c60a082016080840152565b61016060a06102643581029290920101906145b8908290840152565b6145c25f82840152565b6020016145d08160c0840152565b5f9181019182526020820196909652939560449095019492505050565b63d13d53d45f52806020526024601cfd5b631cf99b265f5281602052806040526044601cfd5b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166146f85780873b1515166146f857806146e757816146ca573d156146a957601f3d0160051c8360051c8160030281831115614692578183036003028280028480020360091c01015b5a6020820110156146a5573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b5f805f6001600160e01b03198751165f805260205f888a5f8e5af15f5190935014905081614753578361473e575f925050506106d7565b614746614056565b845f52876020526024601cfd5b8061476557845f52876020526024601cfd5b50600198975050505050505050565b63375c24c15f52806020526024601cfd5b5f805f85865160051b87015b808210156148a2576020820191508851825151106147b1576147b16148d6565b81515160051b60208a01015180516020845101515f6040830151602085015115815184101517156147e6575050505050614791565b8260051b60208201015191505060608101935083518901915083511589831060011b17881797508198505f84528a51935086156001811461484f5760608220881860408d01516101208601511860208e015186511817171561484a5761484a6148d6565b614898565b8151855260208201516020860152604082015160408601528a6080860152835160208d015261012084015160408d015260608520975060208d0192508683181561489857865183525b5050505050614791565b5050508160608551015280156148cf57600181036148c7576391b3e5145f526004601cfd5b6148cf6148e3565b5050614416565b637fda72795f526004601cfd5b634e487b715f5260116020526024601cfd5b5f805f86875160051b88015b808210156149f7576020820191508151518a518110614922576149226148d6565b8060051b60208c01015190506020835101515f606083510151602084015115815184101517156149555750505050614901565b8260051b60208201015191505060608101925082518801915082511588831060011b17871796508197505f83528a5192508515600181146149a75760a0822087146149a2576149a26148d6565b6149ee565b815184526020820151602085015260408201516040850152608082015160808501528a60208d01528960408d015260a08220965060208d019250858318156149ee57855183525b50505050614901565b50508551606001839052508015614a255760018103614a1d576391b3e5145f526004601cfd5b614a256148e3565b50506128d6565b63a5f542085f528260205281604052806060526064601cfd5b63466aa6165f526004601cfd5b5f614e58565b5f6009821015614bb1576005821015614b0e576003821015614ac1577f832c58a5b611aadcfa6a082ac9d04bace53d8278387f10040347b7e98eb5b30260018314027fbf8e29b89f29ed9b529c154a63038ffca562f8d7cd1e2545dda53a1b582dde3018610402565b7ff3e8417a785f980bdaf134fa0274a6bf891eeb8195cd94b09d2aa651046e28bc60038314027fa02eb7ff164c884e5e2c336dc85f81c6a93329d8e9adf214b32729b894de2af118610402565b6007821015614b64577f25d02425402d882d211a7ab774c0ed6eca048c4d03d9af40132475744753b2a360058314027f1c19f71958cdd8f081b4c31f7caf5c010b29d12950be2fa1c95070dc47e30b5518610402565b7fb58d772fb09b426b9dece637f61ca9065f2b994f1464b51e9207f55f7c8f594860078314027f7ff98d9d4e55d876c5cfac10b43c04039522f3ddfb0ea9bfe70c68cfb5c7cc1418610402565b6011821015614d0957600d821015614c6657600b821015614c19577f6f0ec38c21f6f583ab7f3c5413c773ffd5344c34fde1d390958e438bf667448f60098314027fd1d97d1ef5eaa37a4ee5fbf234e6f6d64eb511eb562221cd7edfbdde0848da0518610402565b7f32f4e7485d6485f9f6c255929b9905c62ba919758bbe231f231eaeecf33d810c600b8314027fbb98d87cc12922b83759626c5f07d72266da9702d19ffad6a514c73a89002f5f18610402565b600f821015614cbc577f8df51df98847160517f5b1186b4bc3f418d98b8a7f17f1292f392d79d600d79e600d8314027f6b5b04cbae4fcb1a9d78e7b2dfc51a36933d023cf6e347e03d517b472a85259018610402565b7fcc4886e37eedd9aacd6c1c2c9247197a621a71282e87a7cbc673f3736d9aa141600f8314027f1da3eed3ecef6ebaa6e5023c057ec2c75150693fd0dac5c90f4a142f9879fde818610402565b6015821015614db5576013821015614d68577f2d7a3ed6dab270fdb8e054b2ad525f0ce2a8b89cc76c17f0965434740f673a5560118314027fc3939feff011e53ab8c35ca3370aad54c5df1fc2938cd62543174fa6e7d8587718610402565b7f54b3212a178782f104e0d514b41a9a5c4ca9c980bf6597c3cecbf280917e202a60138314027f5a4f867d3d458dabecad65f6201ceeaba0096df2d0c491cc32e6ea4e6435001718610402565b6017821015614e0b577fbb40bf8cea3a5a716e2b6eb08bbdac8ec159f82f380783db3c56904f15a43d0460158314027f3bd8cff538aba49a9c374c806d277181e9651624b3e31111bc0624574f8bca1d18610402565b7f403be09941a31d05cfc2f896505811353d45d38743288b016630cce39435476a60178314027f1d51df90cba8de7637ca3e8fe1e3511d1dc2f23487d05dbdecb781860c21ac1c18610402565b61040282614a58565b6321ccfeb75f5281602052806040526044601cfd5b6394eb6af65f526004601cfd5b5f835f5260205f2060208301835160051b81015b80821015614ebe57815180841160051b93845260209384185260405f209290910190614e97565b50508314905080614416576144165b6309bde3395f526004601cfd5b5f61041260405190565b5f825180835260208401602084018260051b82015b80831015614f375782518051835260208101516020840152604081015160408401526060810151606084015250602083019250608082019150614ef9565b5050508060071b60200191505092915050565b5f80614f54845190565b8084529050602084810190600583901b860181019085015b82821115614f9c575f614f7e84615008565b9050614f8c818360a0615011565b506020929092019160a001614f6c565b60a0840260200194505050505092915050565b5f63ffffffe0603f614fbf855190565b01169050610402838383615011565b5f80614fd8845190565b8084529050600581901b614ff3602086810190860183615011565b602001949350505050565b6103b06040829052565b5f610402825190565b8082828560045afa80153d151715614416575f80fd5b6040518060a0016040528061503a61509c565b81525f602082018190526040820152606080820181905260809091015290565b60408051610100810182525f606082018181526080830182905260a0830182905260c0830182905260e083018290528252602082018190529181019190915290565b6040518061016001604052805f6001600160a01b031681526020015f6001600160a01b0316815260200160608152602001606081526020015f60048111156150e6576150e6615329565b81525f6020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b5f60208284031215615125575f80fd5b81356001600160401b0381111561513a575f80fd5b820161024081850312156104f1575f80fd5b5f81518084525f5b8181101561517057602081850181015186830182015201615154565b505f602082860101526020601f19601f83011685010191505092915050565b602081525f6104f1602083018461514c565b5f602082840312156151b1575f80fd5b5035919050565b5f602082840312156151c8575f80fd5b81356001600160401b038111156151dd575f80fd5b820161016081850312156104f1575f80fd5b5f8083601f8401126151ff575f80fd5b5081356001600160401b03811115615215575f80fd5b6020830191508360208260051b850101111561522f575f80fd5b9250929050565b80356001600160a01b0381168114611c04575f80fd5b5f805f805f805f805f805f60e08c8e031215615266575f80fd5b6001600160401b03808d35111561527b575f80fd5b6152888e8e358f016151ef565b909c509a5060208d013581101561529d575f80fd5b6152ad8e60208f01358f016151ef565b909a50985060408d01358110156152c2575f80fd5b6152d28e60408f01358f016151ef565b909850965060608d01358110156152e7575f80fd5b506152f88d60608e01358e016151ef565b909550935060808c0135925061531060a08d01615236565b915060c08c013590509295989b509295989b9093969950565b634e487b7160e01b5f52602160045260245ffd5b60068110611b8057611b80615329565b61535882825161533d565b6020818101516001600160a01b0390811691840191909152604080830151908401526060808301519084015260809182015116910152565b5f815180845260208085019450602084015f5b838110156153e55781516153b888825161534d565b808401516001600160a01b031660a08901526040015160c088015260e090960195908201906001016153a3565b509495945050505050565b604080825283519082018190525f906020906060840190828701845b8281101561542a57815115158452928401929084019060010161540c565b50505083810360208501526106d78186615390565b5f8060208385031215615450575f80fd5b82356001600160401b03811115615465575f80fd5b615471858286016151ef565b90969095509350505050565b5f805f8060408587031215615490575f80fd5b84356001600160401b03808211156154a6575f80fd5b6154b2888389016151ef565b909650945060208701359150808211156154ca575f80fd5b506154d7878288016151ef565b95989497509550505050565b602081525f6104f16020830184615390565b5f60208284031215615505575f80fd5b6104f182615236565b5f806040838503121561551f575f80fd5b82356001600160401b03811115615534575f80fd5b830160408186031215615545575f80fd5b946020939093013593505050565b5f805f805f60808688031215615567575f80fd5b85356001600160401b038082111561557d575f80fd5b9087019060a0828a031215615590575f80fd5b909550602087013590808211156155a5575f80fd5b506155b2888289016151ef565b909550935050604086013591506155cb60608701615236565b90509295509295909350565b5f805f805f805f8060a0898b0312156155ee575f80fd5b88356001600160401b0380821115615604575f80fd5b6156108c838d016151ef565b909a50985060208b0135915080821115615628575f80fd5b6156348c838d016151ef565b909850965060408b013591508082111561564c575f80fd5b506156598b828c016151ef565b999c989b509699959896976060870135966080013595509350505050565b5f805f805f805f6080888a03121561568d575f80fd5b87356001600160401b03808211156156a3575f80fd5b6156af8b838c016151ef565b909950975060208a01359150808211156156c7575f80fd5b6156d38b838c016151ef565b909750955060408a01359150808211156156eb575f80fd5b506156f88a828b016151ef565b909450925061570b905060608901615236565b905092959891949750929550565b606081525f61572b606083018661514c565b6020830194909452506001600160a01b0391909116604090910152919050565b634e487b7160e01b5f52604160045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b5f8261578d57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f815180845260208085019450602084015f5b838110156153e55781516157ce88825161533d565b838101516001600160a01b03168885015260408082015190890152606080820151908901526080908101519088015260a090960195908201906001016157b9565b5f815180845260208085019450602084015f5b838110156153e557815161583788825161533d565b808401516001600160a01b0390811689860152604080830151908a0152606080830151908a0152608080830151908a015260a091820151169088015260c09096019590820190600101615822565b60058110611b8057611b80615329565b828152604060208201526158b56040820183516001600160a01b03169052565b5f60208301516158d060608401826001600160a01b03169052565b5060408301516101608060808501526158ed6101a08501836157a6565b91506060850151603f198584030160a086015261590a838261580f565b925050608085015161591f60c0860182615885565b5060a085015160e085015260c0850151610100818187015260e0870151915061012082818801528188015192506101409150828288015280880151848801525080870151610180870152505050809150509392505050565b5f823561015e1983360301811261598c575f80fd5b9190910192915050565b5f602082840312156159a6575f80fd5b8135600581106104f1575f80fd5b818103818111156104025761040261575f565b808201808211156104025761040261575f565b5f815180845260208085019450602084015f5b838110156153e557615a0087835161534d565b60a09690960195908201906001016159ed565b5f6080808301878452602060018060a01b03808916602087015260406080604088015283895180865260a08901915060208b0195505f5b81811015615a8b578651615a5f84825161533d565b808701518616848801528481015185850152606090810151908401529585019591870191600101615a4a565b50508781036060890152615a9f818a6159da565b9c9b505050505050505050505050565b80820281158282048414176104025761040261575f56fea164736f6c6343000818000a","storage":{}},"0x6265cc8d1b28edfd4d76c80bf774c0d446fffbde":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610090575f3560e01c80633f15457f116100635780633f15457f1461010f5780637adbf973146101225780637dc0d1d0146101355780638bbedf7514610147578063be27b22c1461015a575f80fd5b806301ffc9a7146100945780631ecfc411146100bc578063224199c2146100d157806330349ebe146100e4575b5f80fd5b6100a76100a23660046115b1565b61016d565b60405190151581526020015b60405180910390f35b6100cf6100ca3660046115ef565b6101a3565b005b6100cf6100df3660046117e0565b6102de565b6002546100f7906001600160a01b031681565b6040516001600160a01b0390911681526020016100b3565b6001546100f7906001600160a01b031681565b6100cf6101303660046115ef565b61063c565b5f546100f7906001600160a01b031681565b6100cf610155366004611889565b61076d565b6100cf61016836600461190b565b6107f1565b5f6001600160e01b031982166301ffc9a760e01b148061019d57506001600160e01b031982166317d8f49b60e01b145b92915050565b6001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa1580156101ea573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061020e919061196b565b90505f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561024d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610271919061196b565b9050336001600160a01b03821614610287575f80fd5b600280546001600160a01b0319166001600160a01b0385169081179091556040519081527f9176b7f47e4504df5e5516c99d90d82ac7cbd49cc77e7f22ba2ac2f2e3a3eba8906020015b60405180910390a1505050565b5f546040516321ae60b160e11b81526001600160a01b039091169063435cc1629061030f90879087906004016119d3565b5f604051808303815f875af115801561032a573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526103519190810190611a6b565b92505f805f610360888761088b565b91945092509050336001600160a01b038216146103da5760405162461bcd60e51b815260206004820152602d60248201527f4f6e6c79206f776e65722063616e2063616c6c2070726f7665416e64436c616960448201526c36abb4ba342932b9b7b63b32b960991b60648201526084015b60405180910390fd5b6001600160a01b038416156105bb576001600160a01b03851661044e5760405162461bcd60e51b815260206004820152602660248201527f43616e6e6f74207365742061646472206966207265736f6c766572206973206e6044820152651bdd081cd95d60d21b60648201526084016103d1565b6001546040516305ef2c7f60e41b815260048101859052602481018490523060448201526001600160a01b0387811660648301525f608483015290911690635ef2c7f09060a4015f604051808303815f87803b1580156104ac575f80fd5b505af11580156104be573d5f803e3d5ffd5b505050505f83836040516020016104df929190918252602082015260400190565b60408051808303601f1901815290829052805160209091012062d5fa2b60e81b8252600482018190526001600160a01b03878116602484015290925087169063d5fa2b00906044015f604051808303815f87803b15801561053e575f80fd5b505af1158015610550573d5f803e3d5ffd5b5050600154604051635b0fc9c360e01b8152600481018590526001600160a01b0386811660248301529091169250635b0fc9c391506044015f604051808303815f87803b15801561059f575f80fd5b505af11580156105b1573d5f803e3d5ffd5b5050505050610632565b6001546040516305ef2c7f60e41b815260048101859052602481018490526001600160a01b03838116604483015287811660648301525f608483015290911690635ef2c7f09060a4015f604051808303815f87803b15801561061b575f80fd5b505af115801561062d573d5f803e3d5ffd5b505050505b5050505050505050565b6001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa158015610683573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106a7919061196b565b90505f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106e6573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061070a919061196b565b9050336001600160a01b03821614610720575f80fd5b5f80546001600160a01b0319166001600160a01b0385169081179091556040519081527fb3eacd0e351fafdfefdec84e1cd19679b38dbcd63ea7c2c24da17fd2bc3b3c0e906020016102d1565b5f546040516321ae60b160e11b81526001600160a01b039091169063435cc1629061079e90859085906004016119d3565b5f604051808303815f875af11580156107b9573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526107e09190810190611a6b565b90506107ec83826107f1565b505050565b5f805f6107fe858561088b565b6001546040516306ab592360e01b815260048101859052602481018490526001600160a01b03808416604483015294975092955090935091909116906306ab5923906064016020604051808303815f875af115801561085f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108839190611add565b505050505050565b5f8080806108998682610a40565b60ff1690506108aa86600183610a63565b92505f6108dc6108bb836001611b08565b6001848a516108ca9190611b1b565b6108d49190611b1b565b899190610a85565b6002546040516327c482cf60e11b81529192506001600160a01b031690634f89059e9061090d908490600401611b2e565b602060405180830381865afa158015610928573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061094c9190611b40565b6109a45760405162461bcd60e51b815260206004820152602360248201527f506172656e74206e616d65206d7573742062652061207075626c6963207375666044820152620ccd2f60eb1b60648201526084016103d1565b6109ae815f610b05565b5f549095506109c7906001600160a01b03168888610de3565b5060408051602081018890529081018690529093506001600160a01b03841690606001604051602081830303815290604052805190602001207fa2e66ce20e6fb2c4f61339c364ad79f15160cf5307230c8bc4d628adbca2ba3989604051610a2f9190611b2e565b60405180910390a350509250925092565b5f828281518110610a5357610a53611b5f565b016020015160f81c905092915050565b82515f90610a718385611b08565b1115610a7b575f80fd5b5091016020012090565b8251606090610a948385611b08565b1115610a9e575f80fd5b5f8267ffffffffffffffff811115610ab857610ab861160a565b6040519080825280601f01601f191660200182016040528015610ae2576020820181803683370190505b50905060208082019086860101610afa82828761100b565b509095945050505050565b5f80610b118484610a40565b60ff169050805f03610b2657505f905061019d565b5f610b4585610b358487611b08565b610b40906001611b08565b610b05565b90505f610b5e610b56866001611b08565b879085610a63565b604080516020810185905290810182905290915060600160408051808303601f190181529082905280516020909101206001546302571be360e01b8352600483018290529095505f916001600160a01b03909116906302571be390602401602060405180830381865afa158015610bd7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bfb919061196b565b90506001600160a01b0381161580610c1b57506001600160a01b03811630145b610c7a5760405162461bcd60e51b815260206004820152602a60248201527f43616e6e6f7420656e61626c652061206e616d65206f776e656420627920736f6044820152696d656f6e6520656c736560b01b60648201526084016103d1565b6001600160a01b0381163014610dd95782610d5e576001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa158015610cd6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cfa919061196b565b60405163232e3b3b60e21b8152600481018590523060248201529091506001600160a01b03821690638cb8ecec906044015f604051808303815f87803b158015610d42575f80fd5b505af1158015610d54573d5f803e3d5ffd5b5050505050610dd9565b6001546040516306ab592360e01b815260048101859052602481018490523060448201526001600160a01b03909116906306ab5923906064016020604051808303815f875af1158015610db3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610dd79190611add565b505b5050505092915050565b5f80610e016040518060400160405280606081526020015f81525090565b610e1985516005610e129190611b08565b8290611060565b50604080518082019091526005815264045f656e7360d81b6020820152610e419082906110c3565b50610e4c81866110c3565b50805160405163021e646f60e21b81525f9182916001600160a01b038a169163087991bc91610e8091601091600401611b73565b606060405180830381865afa158015610e9b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ebf9190611ba7565b93509150506bffffffffffffffffffffffff198216158015610ee057508551155b15610ef3575f8094509450505050611003565b855160208701206bffffffffffffffffffffffff19838116911614610f16575f80fd5b5f610f2187826110ef565b90505b80515160208201511015610ff857610f4b816080015183610f459190611bfc565b4261114a565b610fbd5760405162461bcd60e51b815260206004820152603c60248201527f444e53207265636f7264206973207374616c653b2072656672657368206f722060448201527f64656c657465206974206265666f72652070726f63656564696e672e0000000060648201526084016103d1565b5f80610fcd898460a00151611162565b925090508115610fe857965060019550611003945050505050565b5050610ff3816111d1565b610f24565b505f80945094505050505b935093915050565b602081106110435781518352611022602084611b08565b925061102f602083611b08565b915061103c602082611b1b565b905061100b565b905182516020929092036101000a5f190180199091169116179052565b60408051808201909152606081525f602082015261107f602083611c20565b156110a75761108f602083611c20565b61109a906020611b1b565b6110a49083611b08565b91505b506020828101829052604080518085525f815290920101905290565b60408051808201909152606081525f60208201526110e883845f0151518485516112b6565b9392505050565b6111376040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261019d816111d1565b5f806111568385611c3f565b60030b12159392505050565b5f805b83518310156111c4575f6111798585610a40565b60ff169050611189600185611b08565b93505f8061119887878561139c565b9250905081156111b0579350600192506111ca915050565b6111ba8387611b08565b9550505050611165565b505f9050805b9250929050565b60c081015160208201819052815151116111e85750565b5f6111fa825f015183602001516113f5565b82602001516112099190611b08565b82519091506112189082611454565b61ffff16604083015261122c600282611b08565b825190915061123b9082611454565b61ffff16606083015261124f600282611b08565b825190915061125e908261147a565b63ffffffff166080830152611274600482611b08565b82519091505f906112859083611454565b61ffff169050611296600283611b08565b60a0840181905291506112a98183611b08565b60c0909301929092525050565b60408051808201909152606081525f602082015282518211156112d7575f80fd5b60208501516112e68386611b08565b11156113195761131985611309876020015187866113049190611b08565b6114a2565b611314906002611c66565b6114b8565b5f808651805187602083010193508088870111156113375787860182525b505050602084015b602084106113775780518252611356602083611b08565b9150611363602082611b08565b9050611370602085611b1b565b935061133f565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b5f806113a8858561147a565b63ffffffff1663613d3078146113c257505f905080611003565b602c8310156113d557505f905080611003565b6113e9856113e4866004611b08565b6114d5565b91509150935093915050565b5f815b8351811061140857611408611c7d565b5f6114138583610a40565b60ff169050611423816001611b08565b61142d9083611b08565b9150805f0361143c5750611442565b506113f8565b61144c8382611b1b565b949350505050565b81515f90611463836002611b08565b111561146d575f80fd5b50016002015161ffff1690565b81515f90611489836004611b08565b1115611493575f80fd5b50016004015163ffffffff1690565b5f818311156114b257508161019d565b50919050565b81516114c48383611060565b506114cf83826110c3565b50505050565b5f8060288385516114e69190611b1b565b10156114f657505f9050806111ca565b5f835b611504856028611b08565b8110156115a55760049190911b905f61151d8783610a40565b60ff169050603081101580156115335750603a81105b1561154c57611543603082611b1b565b8317925061159c565b6041811015801561155d5750604781105b1561156d57611543603782611b1b565b6061811015801561157e5750606781105b1561158e57611543605782611b1b565b5f80945094505050506111ca565b506001016114f9565b50946001945092505050565b5f602082840312156115c1575f80fd5b81356001600160e01b0319811681146110e8575f80fd5b6001600160a01b03811681146115ec575f80fd5b50565b5f602082840312156115ff575f80fd5b81356110e8816115d8565b634e487b7160e01b5f52604160045260245ffd5b6040805190810167ffffffffffffffff811182821017156116415761164161160a565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156116705761167061160a565b604052919050565b5f67ffffffffffffffff8211156116915761169161160a565b50601f01601f191660200190565b5f82601f8301126116ae575f80fd5b81356116c16116bc82611678565b611647565b8181528460208386010111156116d5575f80fd5b816020850160208301375f918101602001919091529392505050565b5f82601f830112611700575f80fd5b8135602067ffffffffffffffff8083111561171d5761171d61160a565b8260051b61172c838201611647565b9384528581018301938381019088861115611745575f80fd5b84880192505b858310156117d457823584811115611761575f80fd5b88016040818b03601f1901811315611777575f80fd5b61177f61161e565b878301358781111561178f575f80fd5b61179d8d8a8387010161169f565b8252509082013590868211156117b1575f80fd5b6117bf8c898486010161169f565b8189015284525050918401919084019061174b565b98975050505050505050565b5f805f805f60a086880312156117f4575f80fd5b853567ffffffffffffffff8082111561180b575f80fd5b61181789838a0161169f565b9650602088013591508082111561182c575f80fd5b61183889838a016116f1565b9550604088013591508082111561184d575f80fd5b5061185a8882890161169f565b935050606086013561186b816115d8565b9150608086013561187b816115d8565b809150509295509295909350565b5f805f6060848603121561189b575f80fd5b833567ffffffffffffffff808211156118b2575f80fd5b6118be8783880161169f565b945060208601359150808211156118d3575f80fd5b6118df878388016116f1565b935060408601359150808211156118f4575f80fd5b506119018682870161169f565b9150509250925092565b5f806040838503121561191c575f80fd5b823567ffffffffffffffff80821115611933575f80fd5b61193f8683870161169f565b93506020850135915080821115611954575f80fd5b506119618582860161169f565b9150509250929050565b5f6020828403121561197b575f80fd5b81516110e8816115d8565b5f5b838110156119a0578181015183820152602001611988565b50505f910152565b5f81518084526119bf816020860160208601611986565b601f01601f19169290920160200192915050565b5f60408083016040845280865180835260608601915060608160051b870101925060208089015f5b83811015611a4b57888603605f1901855281518051888852611a1f898901826119a8565b9185015188830389870152919050611a3781836119a8565b9750505093820193908201906001016119fb565b505086840381880152505050611a6181866119a8565b9695505050505050565b5f60208284031215611a7b575f80fd5b815167ffffffffffffffff811115611a91575f80fd5b8201601f81018413611aa1575f80fd5b8051611aaf6116bc82611678565b818152856020838501011115611ac3575f80fd5b611ad4826020830160208601611986565b95945050505050565b5f60208284031215611aed575f80fd5b5051919050565b634e487b7160e01b5f52601160045260245ffd5b8082018082111561019d5761019d611af4565b8181038181111561019d5761019d611af4565b602081525f6110e860208301846119a8565b5f60208284031215611b50575f80fd5b815180151581146110e8575f80fd5b634e487b7160e01b5f52603260045260245ffd5b61ffff83168152604060208201525f61144c60408301846119a8565b805163ffffffff81168114611ba2575f80fd5b919050565b5f805f60608486031215611bb9575f80fd5b611bc284611b8f565b9250611bd060208501611b8f565b915060408401516bffffffffffffffffffffffff1981168114611bf1575f80fd5b809150509250925092565b63ffffffff818116838216019080821115611c1957611c19611af4565b5092915050565b5f82611c3a57634e487b7160e01b5f52601260045260245ffd5b500690565b600382810b9082900b03637fffffff198112637fffffff8213171561019d5761019d611af4565b808202811582820484141761019d5761019d611af4565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{"0x0":"0x9b2565a3545a1312bdcb6e7148a7f7cae8c2706b","0x1":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0x2":"0x287dee389caaa49edc112888f2bcfd927b472e25"}},"0x62b11ad5f582a5c5d378fb310125b030042554f1":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106103af5760003560e01c80637e37479e116101f4578063ba5d40b71161011a578063e985e9c5116100ad578063f5c1f76e1161007c578063f5c1f76e146108d8578063f7df5c60146108eb578063f8c8765e146108fe578063ffa1ad741461091157600080fd5b8063e985e9c51461087a578063ebf0c717146108b6578063ec129eea146108bd578063f25eb5c1146108d057600080fd5b8063c87b56dd116100e9578063c87b56dd1461082e578063ce92b33e14610841578063cf2c52cb14610854578063d9548e531461086757600080fd5b8063ba5d40b7146107b3578063baef73e9146107c6578063bb5b27e114610808578063bebec6b41461081b57600080fd5b8063a22cb46511610192578063ac9650d811610161578063ac9650d81461074c578063b3f9e4cb1461076c578063b85afd281461077f578063b88d4fde146107a057600080fd5b8063a22cb465146106e7578063a3f4df7e146106fa578063a424740014610726578063ab3b87fe1461073957600080fd5b80639508b1c4116101ce5780639508b1c4146106b15780639559c0bd146106c457806395d89b41146106cc57806399e0dd7c146106d457600080fd5b80637e37479e146106785780637eee288d1461068b57806394d008ef1461069e57600080fd5b806342842e0e116102d95780635096023911610277578063663f7b2a11610246578063663f7b2a14610610578063672b9f81146106235780636ccbae5f1461064457806370a082311461066557600080fd5b806350960239146105bb578063572b6c05146105ce5780636352211e146105ea578063638e5c78146105fd57600080fd5b806347c81699116102b357806347c816991461056f5780634a72584d146105825780634f558e791461059557806350382c1a146105a857600080fd5b806342842e0e1461053657806342966c6814610549578063430c20811461055c57600080fd5b80631bf7e13e1161035157806327f189751161032057806327f18975146104ea578063310bd74b146104fd5780633f72ec6e1461051057806340c10f191461052357600080fd5b80631bf7e13e146104905780631f71be06146104a357806323b872dd146104b6578063276fabb1146104c957600080fd5b8063095ea7b31161038d578063095ea7b31461041c578063150b7a02146104315780631bd8cc1a1461045d5780631be5e7ed1461047d57600080fd5b806301ffc9a7146103b457806306fdde03146103dc578063081812fc146103f1575b600080fd5b6103c76103c2366004613f0b565b610935565b60405190151581526020015b60405180910390f35b6103e4610946565b6040516103d39190613f78565b6104046103ff366004613f8b565b6109d8565b6040516001600160a01b0390911681526020016103d3565b61042f61042a366004613fb9565b6109ff565b005b61044461043f366004614026565b610a18565b6040516001600160e01b031990911681526020016103d3565b61047061046b3660046140dc565b610b72565b6040516103d3919061417f565b6103e461048b366004614192565b610c68565b6103e461049e3660046141c9565b610cb3565b61042f6104b1366004614249565b610dbe565b61042f6104c4366004614305565b610e54565b6104dc6104d7366004614346565b610ea7565b6040519081526020016103d3565b61042f6104f8366004614387565b610eb6565b61042f61050b366004613f8b565b610efe565b61042f61051e3660046143fa565b610f39565b61042f610531366004613fb9565b61103b565b61042f610544366004614305565b611088565b61042f610557366004613f8b565b6110a3565b6103c761056a366004613fb9565b6110e7565b61042f61057d366004614424565b6110f3565b61042f610590366004614485565b611132565b6103c76105a3366004613f8b565b611178565b61042f6105b636600461458c565b611197565b61042f6105c93660046145c0565b6111cd565b6103c76105dc3660046145c0565b6001600160a01b0316301490565b6104046105f8366004613f8b565b61122d565b61042f61060b366004613f8b565b61124a565b61042f61061e366004614678565b611295565b6106366106313660046146c0565b611336565b6040516103d39291906146e2565b6104dc610652366004613f8b565b6000908152610100602052604090205490565b6104dc6106733660046145c0565b61134e565b6104dc6106863660046145c0565b6113d4565b61042f610699366004613fb9565b611405565b61042f6106ac366004614707565b61145c565b61042f6106bf366004614762565b6114ab565b6104dc601481565b6103e4611532565b61042f6106e2366004614805565b611541565b61042f6106f536600461483a565b6115c8565b6103e46040518060400160405280600d81526020016c554e533a20526567697374727960981b81525081565b6103c76107343660046141c9565b6115da565b61042f610747366004613fb9565b611625565b61075f61075a366004614346565b61166a565b6040516103d39190614866565b61040461077a366004613f8b565b611746565b61079261078d3660046140dc565b611770565b6040516103d39291906148c8565b61042f6107ae3660046148ed565b611892565b61042f6107c1366004614249565b6118d9565b6107f06107d4366004613f8b565b600090815261013960205260409020546001600160401b031690565b6040516001600160401b0390911681526020016103d3565b6103e4610816366004613f8b565b611962565b6103e46108293660046145c0565b611a04565b6103e461083c366004613f8b565b611ace565b61042f61084f366004614387565b611b34565b61042f610862366004614958565b611b73565b6103c7610875366004613f8b565b611c42565b6103c761088836600461499f565b6001600160a01b039182166000908152606a6020908152604080832093909416825291909152205460ff1690565b60006104dc565b61042f6108cb366004614387565b611c85565b61042f611cc4565b6104706108e6366004614346565b611d4b565b61042f6108f93660046149d8565b611dfe565b61042f61090c366004614a0a565b611e8f565b6103e460405180604001604052806005815260200164302e392e3160d81b81525081565b600061094082612065565b92915050565b60606065805461095590614a66565b80601f016020809104026020016040519081016040528092919081815260200182805461098190614a66565b80156109ce5780601f106109a3576101008083540402835291602001916109ce565b820191906000526020600020905b8154815290600101906020018083116109b157829003601f168201915b5050505050905090565b60006109e3826120b5565b506000908152606960205260409020546001600160a01b031690565b80610a0981612114565b610a13838361217a565b505050565b60007f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378546001600160a01b0316610a4d61229c565b6001600160a01b031603610b0e57610a6361229c565b6001600160a01b03166342966c68856040518263ffffffff1660e01b8152600401610a9091815260200190565b600060405180830381600087803b158015610aaa57600080fd5b505af1158015610abe573d6000803e3d6000fd5b505050821580159150610ad85750610ad882840184614a9a565b15610af657610ae730856122ab565b610af185856123f9565b610b00565b610b0085856122ab565b50630a85bd0160e11b610b69565b60405162461bcd60e51b815260206004820152602560248201527f52656769737472793a204552433732315f524543454956494e475f50524f4849604482015264109255115160da1b60648201526084015b60405180910390fd5b95945050505050565b6060826001600160401b03811115610b8c57610b8c6144d7565b604051908082528060200260200182016040528015610bbf57816020015b6060815260200190600190039081610baa5790505b50905060005b83811015610c6057610c30858583818110610be257610be2614ab5565b9050602002810190610bf49190614acb565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508792506124a4915050565b828281518110610c4257610c42614ab5565b60200260200101819052508080610c5890614b27565b915050610bc5565b509392505050565b6060610cab84848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508692506124a4915050565b949350505050565b606060005a9050610cc58585856115da565b610d215760405162461bcd60e51b815260206004820152602760248201527f554e535265676973747279466f727761726465723a205349474e41545552455f6044820152661253959053125160ca1b6064820152608401610b60565b610db3610d3160208701876145c0565b30604088013584610d4560608b018b614acb565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284376000920191909152506124d992505050565b9150505b9392505050565b610134546001600160a01b0316610dd361229c565b6001600160a01b031614610df95760405162461bcd60e51b8152600401610b6090614b40565b6000610e0d610e08888a614b87565b6125ba565b509050610e1a8982611405565b610e278686868685612612565b8115610e4957610e498982610e44610e3f8b8d614b87565b612680565b612701565b505050505050505050565b80610e66610e6061229c565b82612743565b610e825760405162461bcd60e51b8152600401610b6090614b94565b81610e8c81612114565b610e95836127d4565b610ea0858585612841565b5050505050565b6000610c60610e088385614b87565b80610ec2610e6061229c565b610ede5760405162461bcd60e51b8152600401610b6090614b94565b81610ee881612114565b610ef587878787876129e8565b50505050505050565b80610f0a610e6061229c565b610f265760405162461bcd60e51b8152600401610b6090614b94565b81610f3081612114565b610a13836127d4565b610134546001600160a01b0316610f4e61229c565b6001600160a01b031614610f745760405162461bcd60e51b8152600401610b6090614b40565b610f7d816120b5565b42826001600160401b031611610fd55760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a204558504952595f494e5f5041535400000000000000006044820152606401610b60565b60008181526101396020908152604091829020805467ffffffffffffffff19166001600160401b038616908117909155915191825282917f93feabb03ab84f47fc85bf0c298103fca21d8c8bc376eae0c1e1c56b9d4f7789910160405180910390a25050565b611043612a4b565b6001600160a01b031661105461229c565b6001600160a01b03161461107a5760405162461bcd60e51b8152600401610b6090614bdd565b61108482826122ab565b5050565b610a1383838360405180602001604052806000815250611892565b806110af610e6061229c565b6110cb5760405162461bcd60e51b8152600401610b6090614b94565b816110d581612114565b6110de836127d4565b610a1383612b4c565b6000610db78383612743565b806110ff610e6061229c565b61111b5760405162461bcd60e51b8152600401610b6090614b94565b8161112581612114565b610ef58787878787612bf3565b8061113e610e6061229c565b61115a5760405162461bcd60e51b8152600401610b6090614b94565b8161116481612114565b61117086868686612cd2565b505050505050565b6000818152606760205260408120546001600160a01b03161515610940565b6111ca816040516020016111ab9190614c1f565b6040516020818303038152906040528051906020012060001c82612d72565b50565b610134546001600160a01b03166111e261229c565b6001600160a01b0316146112085760405162461bcd60e51b8152600401610b6090614b40565b6001600160a01b0316600090815261013660205260409020805460ff19166001179055565b600061123882611c42565b6112455761094082612d97565b919050565b80611256610e6061229c565b6112725760405162461bcd60e51b8152600401610b6090614b94565b61128461127d61229c565b3084612841565b61108461128f61229c565b836123f9565b60006112a0826125ba565b5090506112ab61229c565b6001600160a01b03166112bd8261122d565b6001600160a01b0316146113135760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b60565b61131c81612114565b61108461132761229c565b8261133185612680565b612df7565b6060806113438484612e7e565b909590945092505050565b60006001600160a01b0382166113b85760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b6064820152608401610b60565b506001600160a01b031660009081526068602052604090205490565b6001600160a01b038116600090815261013560205260408120546113f781612e9f565b6113ff578091505b50919050565b610134546001600160a01b031661141a61229c565b6001600160a01b0316146114405760405162461bcd60e51b8152600401610b6090614b40565b611449816127d4565b61108461145582612d97565b8383612841565b611464612a4b565b6001600160a01b031661147561229c565b6001600160a01b03161461149b5760405162461bcd60e51b8152600401610b6090614bdd565b6114a584846122ab565b50505050565b6114b58787612ee9565b6114bd61229c565b6001600160a01b03166114cf8661122d565b6001600160a01b0316146115255760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b60565b610ef58484848489612612565b60606066805461095590614a66565b610134546001600160a01b031661155661229c565b6001600160a01b03161461157c5760405162461bcd60e51b8152600401610b6090614b40565b61013361158a828483614c81565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b82826040516115bc929190614d69565b60405180910390a15050565b6110846115d361229c565b8383612f58565b6000610cab6115e885614d7d565b3085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061302692505050565b80611631610e6061229c565b61164d5760405162461bcd60e51b8152600401610b6090614b94565b8161165781612114565b6114a561166384612d97565b8585612841565b606060006116788385614e07565b905030330361173d5760005b8381101561173b5761170b61169761229c565b61169f61316f565b8787858181106116b1576116b1614ab5565b90506020028101906116c39190614acb565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250613183915050565b82828151811061171d5761171d614ab5565b6020026020010181905250808061173390614b27565b915050611684565b505b610cab816131b3565b6000818152606760205260408120546001600160a01b0316611769576000610940565b3092915050565b606080836001600160401b0381111561178b5761178b6144d7565b6040519080825280602002602001820160405280156117be57816020015b60608152602001906001900390816117a95790505b509150836001600160401b038111156117d9576117d96144d7565b60405190808252806020026020018201604052801561180c57816020015b60608152602001906001900390816117f75790505b50905060005b848110156118895761183c86868381811061182f5761182f614ab5565b9050602002013585612e7e565b84838151811061184e5761184e614ab5565b6020026020010184848151811061186757611867614ab5565b602002602001018290528290525050808061188190614b27565b915050611812565b50935093915050565b8161189e610e6061229c565b6118ba5760405162461bcd60e51b8152600401610b6090614b94565b826118c481612114565b6118cd846127d4565b611170868686866132de565b610134546001600160a01b03166118ee61229c565b6001600160a01b0316146119145760405162461bcd60e51b8152600401610b6090614b40565b600080611924610e08898b614b87565b9150915061193181613311565b6119498a83611943610e3f8c8e614b87565b86613371565b6119568787878786612612565b50505050505050505050565b600081815260c96020526040902080546060919061197f90614a66565b80601f01602080910402602001604051908101604052809291908181526020018280546119ab90614a66565b80156119f85780601f106119cd576101008083540402835291602001916119f8565b820191906000526020600020905b8154815290600101906020018083116119db57829003601f168201915b50505050509050919050565b6001600160a01b03811660009081526101356020526040902054606090611a2a81612e9f565b6113ff576000818152610138602052604090208054611a4890614a66565b80601f0160208091040260200160405190810160405280929190818152602001828054611a7490614a66565b8015611ac15780601f10611a9657610100808354040283529160200191611ac1565b820191906000526020600020905b815481529060010190602001808311611aa457829003601f168201915b5050505050915050919050565b6060611ad9826120b5565b6000611ae36133c4565b90506000815111611b035760405180602001604052806000815250610db7565b80611b0d846133d4565b604051602001611b1e929190614e7a565b6040516020818303038152906040529392505050565b80611b40610e6061229c565b611b5c5760405162461bcd60e51b8152600401610b6090614b94565b81611b6681612114565b610ef58787878787612612565b7f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87546001600160a01b0316611ba661229c565b6001600160a01b031614611bcc5760405162461bcd60e51b8152600401610b6090614bdd565b6020819003611bef576000611be382840184613f8b565b90506114a584826122ab565b6000611bfd82840184614ea9565b805190915060005b8181101561117057611c3086848381518110611c2357611c23614ab5565b60200260200101516122ab565b80611c3a81614b27565b915050611c05565b600081815261013960205260408120546001600160401b03161580159061094057505060009081526101396020526040902054426001600160401b039091161090565b80611c91610e6061229c565b611cad5760405162461bcd60e51b8152600401610b6090614b94565b81611cb781612114565b610ef587878787876134d4565b6000611cce61229c565b6001600160a01b0381166000908152610135602052604081205491925003611d425760405162461bcd60e51b815260206004820152602160248201527f52656769737472793a20524556455253455f5245434f52445f49535f454d50546044820152605960f81b6064820152608401610b60565b6111ca816134ea565b6060816001600160401b03811115611d6557611d656144d7565b604051908082528060200260200182016040528015611d9857816020015b6060815260200190600190039081611d835790505b50905060005b82811015611df757611dc7848483818110611dbb57611dbb614ab5565b90506020020135611962565b828281518110611dd957611dd9614ab5565b60200260200101819052508080611def90614b27565b915050611d9e565b5092915050565b610134546001600160a01b0316611e1361229c565b6001600160a01b031614611e395760405162461bcd60e51b8152600401610b6090614b40565b61013454611e50906001600160a01b0316846122ab565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c39528383604051611e82929190614d69565b60405180910390a2505050565b600054610100900460ff1615808015611eaf5750600054600160ff909116105b80611ec95750303b158015611ec9575060005460ff166001145b611f2c5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610b60565b6000805460ff191660011790558015611f4f576000805461ff0019166101001790555b61013480546001600160a01b0319166001600160a01b038716179055837f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec9237880546001600160a01b0319166001600160a01b03929092169190911790556040805180820182526013815272556e73746f707061626c6520446f6d61696e7360681b60208083019190915282518084019093526002835261155160f21b90830152611ff79161352f565b611fff61356f565b61200761356f565b61201083613598565b612019826135c8565b8015610ea0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b60006001600160e01b031982166380ac58cd60e01b148061209657506001600160e01b03198216635b5e139f60e01b145b8061094057506301ffc9a760e01b6001600160e01b0319831614610940565b6000818152606760205260409020546001600160a01b03166111ca5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b60565b3033036121715761212361316f565b81146111ca5760405162461bcd60e51b815260206004820152601760248201527f52656769737472793a20544f4b454e5f494e56414c49440000000000000000006044820152606401610b60565b6111ca816135f8565b600061218582612d97565b9050806001600160a01b0316836001600160a01b0316036121f25760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b6064820152608401610b60565b806001600160a01b031661220461229c565b6001600160a01b0316148061222057506122208161088861229c565b6122925760405162461bcd60e51b815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c00006064820152608401610b60565b610a138383613626565b60006122a6613694565b905090565b6001600160a01b0382166123015760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610b60565b6000818152606760205260409020546001600160a01b0316156123665760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610b60565b612372600083836136af565b6001600160a01b038216600090815260686020526040812080546001929061239b908490614f39565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b03861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b6000612403612a4b565b905061240f8183613626565b60008051602061529383398151915254604080516020808201869052825180830390910181528183019283905263e3dec8fb60e01b9092526001600160a01b0390921691829163e3dec8fb9161246c918891309190604401614f4c565b600060405180830381600087803b15801561248657600080fd5b505af115801561249a573d6000803e3d6000fd5b5050505050505050565b6060610db7836040516020016124ba9190614c1f565b6040516020818303038152906040528051906020012060001c8361378b565b60606124e4856135f8565b600080876001600160a01b0316866124fe8b8a8989613183565b60405161250b9190614c1f565b60006040518083038160008787f1925050503d8060008114612549576040519150601f19603f3d011682016040523d82523d6000602084013e61254e565b606091505b50909250905061255f603f87614f8e565b5a1161256d5761256d614fa2565b6125ad82826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061386d565b9998505050505050505050565b805160009081905b801561260c578291506125f882856125db600185614fb8565b815181106125eb576125eb614ab5565b60200260200101516138a6565b92508061260481614fcb565b9150506125c2565b50915091565b60005b848110156111705761266e86868381811061263257612632614ab5565b90506020028101906126449190614acb565b86868581811061265657612656614ab5565b90506020028101906126689190614acb565b86612bf3565b8061267881614b27565b915050612615565b606060008260008151811061269757612697614ab5565b602002602001015190506000600190505b8351811015611df757818482815181106126c4576126c4614ab5565b60200260200101516040516020016126dd929190614fe2565b604051602081830303815290604052915080806126f990614b27565b9150506126a8565b61dead6001600160a01b0384161480159061273357506001600160a01b03831660009081526101356020526040902054155b15610a1357610a13838383612df7565b60008061274f8361122d565b90506001600160a01b03811615801590610cab5750806001600160a01b0316846001600160a01b031614806127a957506001600160a01b038082166000908152606a602090815260408083209388168352929052205460ff165b80610cab5750836001600160a01b03166127c2846109d8565b6001600160a01b031614949350505050565b6127dd81613952565b6040516020016127ef91815260200190565b60408051601f198184030181528282528051602091820120600085815260cb9092529181209190915582917f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9190a250565b826001600160a01b031661285482612d97565b6001600160a01b0316146128b85760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b6064820152608401610b60565b6001600160a01b03821661291a5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610b60565b6129258383836136af565b612930600082613626565b6001600160a01b0383166000908152606860205260408120805460019290612959908490614fb8565b90915550506001600160a01b0382166000908152606860205260408120805460019290612987908490614f39565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60005b8481101561117057612a39868683818110612a0857612a08614ab5565b90506020020135858584818110612a2157612a21614ab5565b9050602002810190612a339190614acb565b85612cd2565b80612a4381614b27565b9150506129eb565b600080516020615293833981519152546000906001600160a01b03168015612b485760405163721804d360e11b81523060048201526000906001600160a01b0383169063e43009a690602401602060405180830381865afa158015612ab4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ad8919061501e565b60405163e66f960360e01b8152600481018290529091506001600160a01b0383169063e66f960390602401602060405180830381865afa158015612b20573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b449190615037565b9250505b5090565b6000612b5782612d97565b9050612b65816000846136af565b612b70600083613626565b6001600160a01b0381166000908152606860205260408120805460019290612b99908490614fb8565b909155505060008281526067602052604080822080546001600160a01b0319169055518391906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b60008585604051602001612c08929190615054565b60408051601f198184030181528282528051602091820120601f8901829004820284018201909252878352909250612c5c9183918990899081908401838280828437600092019190915250612d7292505050565b6111708187878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061397a915050565b612cdb84613aaf565b612d275760405162461bcd60e51b815260206004820152601c60248201527f5265636f726453746f726167653a204b45595f4e4f545f464f554e44000000006044820152606401610b60565b6114a584612d3486611962565b85858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525087925061397a915050565b612d7b82613aaf565b61108457600082815260c960205260409020610a138282615064565b6000818152606760205260408120546001600160a01b0316806109405760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b60565b6000828152610138602052604090208054612e1190614a66565b9050600003612e3557600082815261013860205260409020612e338282615064565b505b6001600160a01b03831660008181526101356020526040808220859055518492917feb76a21470988c474a21f690cc28fee1ed511bd812dc3c21fd0f49c5e5d4708a91a3505050565b606080612e8a84611962565b9150612e96848461378b565b90509250929050565b6000818152610137602052604081205460ff16801561094057506101366000612ec661229c565b6001600160a01b0316815260208101919091526040016000205460ff1692915050565b60008051602061529383398151915254604051633805550f60e01b81526001600160a01b03909116908190633805550f90612f2a9086908690600401614d69565b600060405180830381600087803b158015612f4457600080fd5b505af1158015610ef5573d6000803e3d6000fd5b816001600160a01b0316836001600160a01b031603612fb95760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610b60565b6001600160a01b038381166000818152606a6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561306d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613091919061501e565b9050600061313f8660600151805190602001208688602001516040516020016130df9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561316557508551613165906001600160a01b03168286613ad5565b9695505050505050565b60003033036131805750601f193601355b90565b606082858560405160200161319a93929190615123565b6040516020818303038152906040529050949350505050565b606081516001600160401b038111156131ce576131ce6144d7565b60405190808252806020026020018201604052801561320157816020015b60608152602001906001900390816131ec5790505b50905060005b82518110156113ff57600080306001600160a01b031685848151811061322f5761322f614ab5565b60200260200101516040516132449190614c1f565b600060405180830381855af49150503d806000811461327f576040519150601f19603f3d011682016040523d82523d6000602084013e613284565b606091505b50915091506132ac82826040518060600160405280602781526020016152b36027913961386d565b8484815181106132be576132be614ab5565b6020026020010181905250505080806132d690614b27565b915050613207565b6132e9848484612841565b6132f584848484613c17565b6114a55760405162461bcd60e51b8152600401610b6090615162565b6000818152610137602052604090205460ff16156111ca5760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a20544f4b454e5f555047524144454400000000000000006044820152606401610b60565b61337b84846122ab565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952836040516133ab9190613f78565b60405180910390a280156114a5576114a5848484612701565b6060610133805461095590614a66565b6060816000036133fb5750506040805180820190915260018152600360fc1b602082015290565b8160005b8115613425578061340f81614b27565b915061341e9050600a83614f8e565b91506133ff565b6000816001600160401b0381111561343f5761343f6144d7565b6040519080825280601f01601f191660200182016040528015613469576020820181803683370190505b5090505b8415610cab5761347e600183614fb8565b915061348b600a866151b4565b613496906030614f39565b60f81b8183815181106134ab576134ab614ab5565b60200101906001600160f81b031916908160001a9053506134cd600a86614f8e565b945061346d565b6134dd816127d4565b610ea08585858585612612565b6001600160a01b03811660008181526101356020526040808220829055517ffcf5eec0cfa3e6332f5f0e63ec242d71f866a61d121d6cdf5c2eb3b668a26c4f9190a250565b600054610100900460ff166135565760405162461bcd60e51b8152600401610b60906151c8565b60656135628382615064565b506066610a138282615064565b600054610100900460ff166135965760405162461bcd60e51b8152600401610b60906151c8565b565b600054610100900460ff166135bf5760405162461bcd60e51b8152600401610b60906151c8565b6111ca81613d1c565b600054610100900460ff166135ef5760405162461bcd60e51b8152600401610b60906151c8565b6111ca81613d75565b60008181526101006020526040902054613613906001614f39565b6000918252610100602052604090912055565b600081815260696020526040902080546001600160a01b0319166001600160a01b038416908117909155819061365b82612d97565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60003033036136aa575060331936013560601c90565b503390565b6001600160a01b0382166136c6576136c681613311565b600081815261013960205260409020546001600160401b031615613761576001600160a01b0382161580159061371557506136ff612a4b565b6001600160a01b0316826001600160a01b031614155b6137615760405162461bcd60e51b815260206004820152601960248201527f52656769737472793a20544f4b454e5f455850495241424c45000000000000006044820152606401610b60565b6001600160a01b03831660009081526101356020526040902054819003610a1357610a13836134ea565b606061379682612e9f565b156137b05750604080516020810190915260008152610940565b60ca60006137bd84613952565b8152602001908152602001600020600084815260200190815260200160002080546137e790614a66565b80601f016020809104026020016040519081016040528092919081815260200182805461381390614a66565b80156138605780601f1061383557610100808354040283529160200191613860565b820191906000526020600020905b81548152906001019060200180831161384357829003601f168201915b5050505050905092915050565b6060831561387c575081610db7565b82511561388c5782518084602001fd5b8160405162461bcd60e51b8152600401610b609190613f78565b600081516000036138f15760405162461bcd60e51b815260206004820152601560248201527452656769737472793a204c4142454c5f454d50545960581b6044820152606401610b60565b82826040516020016139039190614c1f565b60405160208183030381529060405280519060200120604051602001613933929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b600081815260cb602052604081205415612b4857600082815260cb6020526040902054610940565b60ca600061398783613952565b8152602001908152602001600020600085815260200190815260200160002080546139b190614a66565b9050600003613a0957826040516139c89190614c1f565b6040518091039020817f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f8685604051613a009190613f78565b60405180910390a35b8160ca6000613a1784613952565b815260200190815260200160002060008681526020019081526020016000209081613a429190615064565b5081604051613a519190614c1f565b604051809103902083604051613a679190614c1f565b6040518091039020827f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d928686604051613aa19291906146e2565b60405180910390a450505050565b600081815260c9602052604081208054829190613acb90614a66565b9050119050919050565b6000806000613ae48585613dc3565b90925090506000816004811115613afd57613afd615213565b148015613b1b5750856001600160a01b0316826001600160a01b0316145b15613b2b57600192505050610db7565b600080876001600160a01b0316631626ba7e60e01b8888604051602401613b53929190615229565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051613b919190614c1f565b600060405180830381855afa9150503d8060008114613bcc576040519150601f19603f3d011682016040523d82523d6000602084013e613bd1565b606091505b5091509150818015613be4575080516020145b8015613c0b57508051630b135d3f60e11b90613c09908301602090810190840161501e565b145b98975050505050505050565b60006001600160a01b0384163b15613d1457836001600160a01b031663150b7a02613c4061229c565b8786866040518563ffffffff1660e01b8152600401613c629493929190615242565b6020604051808303816000875af1925050508015613c9d575060408051601f3d908101601f19168201909252613c9a91810190615275565b60015b613cfa573d808015613ccb576040519150601f19603f3d011682016040523d82523d6000602084013e613cd0565b606091505b508051600003613cf25760405162461bcd60e51b8152600401610b6090615162565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610cab565b506001610cab565b600054610100900460ff16613d435760405162461bcd60e51b8152600401610b60906151c8565b806000805160206152938339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b600054610100900460ff16613d9c5760405162461bcd60e51b8152600401610b60906151c8565b807f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87613d54565b6000808251604103613df95760208301516040840151606085015160001a613ded87828585613e08565b94509450505050613e01565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613e3f5750600090506003613eec565b8460ff16601b14158015613e5757508460ff16601c14155b15613e685750600090506004613eec565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613ebc573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613ee557600060019250925050613eec565b9150600090505b94509492505050565b6001600160e01b0319811681146111ca57600080fd5b600060208284031215613f1d57600080fd5b8135610db781613ef5565b60005b83811015613f43578181015183820152602001613f2b565b50506000910152565b60008151808452613f64816020860160208601613f28565b601f01601f19169290920160200192915050565b602081526000610db76020830184613f4c565b600060208284031215613f9d57600080fd5b5035919050565b6001600160a01b03811681146111ca57600080fd5b60008060408385031215613fcc57600080fd5b8235613fd781613fa4565b946020939093013593505050565b60008083601f840112613ff757600080fd5b5081356001600160401b0381111561400e57600080fd5b602083019150836020828501011115613e0157600080fd5b60008060008060006080868803121561403e57600080fd5b853561404981613fa4565b9450602086013561405981613fa4565b93506040860135925060608601356001600160401b0381111561407b57600080fd5b61408788828901613fe5565b969995985093965092949392505050565b60008083601f8401126140aa57600080fd5b5081356001600160401b038111156140c157600080fd5b6020830191508360208260051b8501011115613e0157600080fd5b6000806000604084860312156140f157600080fd5b83356001600160401b0381111561410757600080fd5b61411386828701614098565b909790965060209590950135949350505050565b600082825180855260208086019550808260051b84010181860160005b8481101561417257601f19868403018952614160838351613f4c565b98840198925090830190600101614144565b5090979650505050505050565b602081526000610db76020830184614127565b6000806000604084860312156141a757600080fd5b83356001600160401b038111156141bd57600080fd5b61411386828701613fe5565b6000806000604084860312156141de57600080fd5b83356001600160401b03808211156141f557600080fd5b908501906080828803121561420957600080fd5b9093506020850135908082111561421f57600080fd5b5061422c86828701613fe5565b9497909650939450505050565b8035801515811461124557600080fd5b60008060008060008060008060a0898b03121561426557600080fd5b883561427081613fa4565b975060208901356001600160401b038082111561428c57600080fd5b6142988c838d01614098565b909950975060408b01359150808211156142b157600080fd5b6142bd8c838d01614098565b909750955060608b01359150808211156142d657600080fd5b506142e38b828c01614098565b90945092506142f6905060808a01614239565b90509295985092959890939650565b60008060006060848603121561431a57600080fd5b833561432581613fa4565b9250602084013561433581613fa4565b929592945050506040919091013590565b6000806020838503121561435957600080fd5b82356001600160401b0381111561436f57600080fd5b61437b85828601614098565b90969095509350505050565b60008060008060006060868803121561439f57600080fd5b85356001600160401b03808211156143b657600080fd5b6143c289838a01614098565b909750955060208801359150808211156143db57600080fd5b506143e888828901614098565b96999598509660400135949350505050565b6000806040838503121561440d57600080fd5b82356001600160401b0381168114613fd757600080fd5b60008060008060006060868803121561443c57600080fd5b85356001600160401b038082111561445357600080fd5b61445f89838a01613fe5565b9097509550602088013591508082111561447857600080fd5b506143e888828901613fe5565b6000806000806060858703121561449b57600080fd5b8435935060208501356001600160401b038111156144b857600080fd5b6144c487828801613fe5565b9598909750949560400135949350505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715614515576145156144d7565b604052919050565b600082601f83011261452e57600080fd5b81356001600160401b03811115614547576145476144d7565b61455a601f8201601f19166020016144ed565b81815284602083860101111561456f57600080fd5b816020850160208301376000918101602001919091529392505050565b60006020828403121561459e57600080fd5b81356001600160401b038111156145b457600080fd5b610cab8482850161451d565b6000602082840312156145d257600080fd5b8135610db781613fa4565b60006001600160401b038211156145f6576145f66144d7565b5060051b60200190565b600061461361460e846145dd565b6144ed565b8381529050602080820190600585901b84018681111561463257600080fd5b845b8181101561466d5780356001600160401b038111156146535760008081fd5b61465f8982890161451d565b855250928201928201614634565b505050509392505050565b60006020828403121561468a57600080fd5b81356001600160401b038111156146a057600080fd5b8201601f810184136146b157600080fd5b610cab84823560208401614600565b600080604083850312156146d357600080fd5b50508035926020909101359150565b6040815260006146f56040830185613f4c565b8281036020840152610db38185613f4c565b6000806000806060858703121561471d57600080fd5b843561472881613fa4565b93506020850135925060408501356001600160401b0381111561474a57600080fd5b61475687828801613fe5565b95989497509550505050565b60008060008060008060006080888a03121561477d57600080fd5b87356001600160401b038082111561479457600080fd5b6147a08b838c01613fe5565b909950975060208a0135965060408a01359150808211156147c057600080fd5b6147cc8b838c01614098565b909650945060608a01359150808211156147e557600080fd5b506147f28a828b01614098565b989b979a50959850939692959293505050565b6000806020838503121561481857600080fd5b82356001600160401b0381111561482e57600080fd5b61437b85828601613fe5565b6000806040838503121561484d57600080fd5b823561485881613fa4565b9150612e9660208401614239565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156148bb57603f198886030184526148a9858351613f4c565b9450928501929085019060010161488d565b5092979650505050505050565b6040815260006148db6040830185614127565b8281036020840152610db38185614127565b6000806000806080858703121561490357600080fd5b843561490e81613fa4565b9350602085013561491e81613fa4565b92506040850135915060608501356001600160401b0381111561494057600080fd5b61494c8782880161451d565b91505092959194509250565b60008060006040848603121561496d57600080fd5b833561497881613fa4565b925060208401356001600160401b0381111561499357600080fd5b61422c86828701613fe5565b600080604083850312156149b257600080fd5b82356149bd81613fa4565b915060208301356149cd81613fa4565b809150509250929050565b6000806000604084860312156149ed57600080fd5b8335925060208401356001600160401b0381111561499357600080fd5b60008060008060808587031215614a2057600080fd5b8435614a2b81613fa4565b93506020850135614a3b81613fa4565b92506040850135614a4b81613fa4565b91506060850135614a5b81613fa4565b939692955090935050565b600181811c90821680614a7a57607f821691505b6020821081036113ff57634e487b7160e01b600052602260045260246000fd5b600060208284031215614aac57600080fd5b610db782614239565b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112614ae257600080fd5b8301803591506001600160401b03821115614afc57600080fd5b602001915036819003821315613e0157600080fd5b634e487b7160e01b600052601160045260246000fd5b600060018201614b3957614b39614b11565b5060010190565b60208082526027908201527f52656769737472793a2053454e4445525f49535f4e4f545f4d494e54494e475f60408201526626a0a720a3a2a960c91b606082015260800190565b6000610db7368484614600565b60208082526029908201527f52656769737472793a2053454e4445525f49535f4e4f545f415050524f5645446040820152682fa7a92fa7aba722a960b91b606082015260800190565b60208082526022908201527f52656769737472793a20494e53554646494349454e545f5045524d495353494f6040820152614e5360f01b606082015260800190565b60008251614c31818460208701613f28565b9190910192915050565b601f821115610a1357600081815260208120601f850160051c81016020861015614c625750805b601f850160051c820191505b8181101561117057828155600101614c6e565b6001600160401b03831115614c9857614c986144d7565b614cac83614ca68354614a66565b83614c3b565b6000601f841160018114614ce05760008515614cc85750838201355b600019600387901b1c1916600186901b178355610ea0565b600083815260209020601f19861690835b82811015614d115786850135825560209485019460019092019101614cf1565b5086821015614d2e5760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b602081526000610cab602083018486614d40565b600060808236031215614d8f57600080fd5b604051608081016001600160401b038282108183111715614db257614db26144d7565b8160405284359150614dc382613fa4565b81835260208501356020840152604085013560408401526060850135915080821115614dee57600080fd5b50614dfb3682860161451d565b60608301525092915050565b6000614e1561460e846145dd565b80848252602080830192508560051b850136811115614e3357600080fd5b855b81811015614e6e5780356001600160401b03811115614e545760008081fd5b614e6036828a0161451d565b865250938201938201614e35565b50919695505050505050565b60008351614e8c818460208801613f28565b835190830190614ea0818360208801613f28565b01949350505050565b60006020808385031215614ebc57600080fd5b82356001600160401b03811115614ed257600080fd5b8301601f81018513614ee357600080fd5b8035614ef161460e826145dd565b81815260059190911b82018301908381019087831115614f1057600080fd5b928401925b82841015614f2e57833582529284019290840190614f15565b979650505050505050565b8082018082111561094057610940614b11565b6001600160a01b03848116825283166020820152606060408201819052600090610b6990830184613f4c565b634e487b7160e01b600052601260045260246000fd5b600082614f9d57614f9d614f78565b500490565b634e487b7160e01b600052600160045260246000fd5b8181038181111561094057610940614b11565b600081614fda57614fda614b11565b506000190190565b60008351614ff4818460208801613f28565b601760f91b9083019081528351615012816001840160208801613f28565b01600101949350505050565b60006020828403121561503057600080fd5b5051919050565b60006020828403121561504957600080fd5b8151610db781613fa4565b8183823760009101908152919050565b81516001600160401b0381111561507d5761507d6144d7565b6150918161508b8454614a66565b84614c3b565b602080601f8311600181146150c657600084156150ae5750858301515b600019600386901b1c1916600185901b178555611170565b600085815260208120601f198616915b828110156150f5578886015182559484019460019091019084016150d6565b50858210156151135787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60008451615135818460208901613f28565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6000826151c3576151c3614f78565b500690565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b634e487b7160e01b600052602160045260246000fd5b828152604060208201526000610cab6040830184613f4c565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061316590830184613f4c565b60006020828403121561528757600080fd5b8151610db781613ef556febe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a","storage":{}},"0x6ac8f19d1e0f81147cdf2a1e53cb1f4e18417204":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610296575f3560e01c80636352211e11610161578063c93ab3fd116100ca578063e985e9c511610084578063e985e9c5146106c8578063eb8ae530146106db578063ed70554d146106ee578063f242432a1461070d578063f2fde38b14610720578063fd0cd0d914610733575f80fd5b8063c93ab3fd14610647578063cf4088231461065a578063d8c9921a1461066d578063d9a50c1214610680578063da8c229e14610693578063e0dba60f146106b5575f80fd5b8063a22cb4651161011b578063a22cb465146105d5578063a4014982146105e8578063adf4960a146105fb578063b6bcad261461060e578063c475abff14610621578063c658e08614610634575f80fd5b80636352211e146105595780636e5d6ad21461056c578063715018a6146105975780638b4dfa751461059f5780638cf8b41e146105b25780638da5cb5b146105c5575f80fd5b80631f4e1504116102035780633f15457f116101bd5780633f15457f146104b1578063402906fc146104d857806341415eab146105005780634e1273f41461051357806353095467146105335780635d3590d514610546575f80fd5b80631f4e15041461042b57806320c38e2b1461043e57806324c1af44146104515780632b20e397146104645780632eb2c2d61461048b57806333c69ea91461049e575f80fd5b80630e4cd725116102545780630e4cd725146103a05780630e89341c146103b357806314ab9038146103c6578063150b7a02146103d95780631534e177146104055780631896f70a14610418575f80fd5b8062fdd58e1461029a5780630178fe3f146102c057806301ffc9a71461030657806306fdde0314610329578063081812fc14610360578063095ea7b31461038b575b5f80fd5b6102ad6102a8366004614316565b610746565b6040519081526020015b60405180910390f35b6102d36102ce366004614340565b6107f0565b604080516001600160a01b03909416845263ffffffff90921660208401526001600160401b0316908201526060016102b7565b61031961031436600461436c565b61081f565b60405190151581526020016102b7565b6103536040518060400160405280600b81526020016a2730b6b2abb930b83832b960a91b81525081565b6040516102b791906143d4565b61037361036e366004614340565b61085e565b6040516001600160a01b0390911681526020016102b7565b61039e610399366004614316565b6108a0565b005b6103196103ae3660046143e6565b6108e5565b6103536103c1366004614340565b61095e565b61039e6103d436600461442f565b6109cc565b6103ec6103e736600461449d565b610ac0565b6040516001600160e01b031990911681526020016102b7565b61039e61041336600461450a565b610c96565b61039e6104263660046143e6565b610cc0565b600754610373906001600160a01b031681565b61035361044c366004614340565b610d75565b6102ad61045f3660046145f6565b610e0c565b6103737f000000000000000000000000c965345edac823d56812cd20a10316233916a60581565b61039e610499366004614717565b610fe7565b61039e6104ac3660046147bd565b61121a565b6103737f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a981565b6104eb6104e6366004614811565b6113e6565b60405163ffffffff90911681526020016102b7565b61031961050e3660046143e6565b611480565b610526610521366004614832565b6114b8565b6040516102b79190614928565b600554610373906001600160a01b031681565b61039e61055436600461493a565b6115d7565b610373610567366004614340565b611655565b61057f61057a366004614978565b61165f565b6040516001600160401b0390911681526020016102b7565b61039e61178e565b61039e6105ad3660046149aa565b6117a1565b61057f6105c03660046149e9565b6118c0565b5f546001600160a01b0316610373565b61039e6105e3366004614a6b565b611c28565b6102ad6105f6366004614a97565b611cfd565b610319610609366004614b12565b611e38565b61039e61061c36600461450a565b611e5c565b6102ad61062f366004614b33565b61209e565b6102ad610642366004614b53565b6122fd565b61039e610655366004614bc0565b6124bd565b61039e610668366004614c26565b612605565b61039e61067b366004614c5b565b612794565b61031961068e366004614b33565b61285d565b6103196106a136600461450a565b60046020525f908152604090205460ff1681565b61039e6106c3366004614a6b565b612938565b6103196106d6366004614c86565b61299f565b61039e6106e9366004614cb2565b6129cc565b6102ad6106fc366004614340565b60016020525f908152604090205481565b61039e61071b366004614d15565b612d59565b61039e61072e36600461450a565b612e06565b610319610741366004614340565b612e7c565b5f6001600160a01b0383166107b65760405162461bcd60e51b815260206004820152602b60248201527f455243313135353a2062616c616e636520717565727920666f7220746865207a60448201526a65726f206164647265737360a81b60648201526084015b60405180910390fd5b5f6107c083611655565b9050836001600160a01b0316816001600160a01b0316036107e55760019150506107ea565b5f9150505b92915050565b5f8181526001602052604090205460a081901c60c082901c610813838383612f4d565b90959094509092509050565b5f6001600160e01b03198216631b05885b60e31b148061084f57506001600160e01b03198216630a85bd0160e11b145b806107ea57506107ea82612f80565b5f8061086983611655565b90506001600160a01b03811661088157505f92915050565b5f838152600360205260409020546001600160a01b03165b9392505050565b5f6108aa826107f0565b50915050603f1960408216016108d65760405163a2a7201360e01b8152600481018390526024016107ad565b6108e08383612fcf565b505050565b5f8080806108f2866107f0565b925092509250846001600160a01b0316836001600160a01b0316148061091d575061091d838661299f565b8061094157506001600160a01b0385166109368761085e565b6001600160a01b0316145b8015610954575061095282826130de565b155b9695505050505050565b6005546040516303a24d0760e21b8152600481018390526060916001600160a01b031690630e89341c906024015f60405180830381865afa1580156109a5573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526107ea9190810190614d78565b816109d78133611480565b6109f857803360405163168ab55d60e31b81526004016107ad929190614dea565b8260105f610a05836107f0565b5091505063ffffffff8282161615610a335760405163a2a7201360e01b8152600481018490526024016107ad565b604051630295720760e31b8152600481018790526001600160401b03861660248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906314ab9038906044015b5f604051808303815f87803b158015610aa2575f80fd5b505af1158015610ab4573d5f803e3d5ffd5b50505050505050505050565b5f336001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a6051614610b0a5760405163032634a760e31b815260040160405180910390fd5b5f808080610b1a86880188614e01565b83516020850120939750919550935091508890808214610b57576040516331970f3360e21b815260048101829052602481018390526044016107ad565b604051630a3b53db60e21b81526001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906328ed4f6c90610ba59085903090600401614dea565b5f604051808303815f87803b158015610bbc575f80fd5b505af1158015610bce573d5f803e3d5ffd5b5050604051636b727d4360e11b8152600481018d90525f92506276a70091506001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063d6e4fa8690602401602060405180830381865afa158015610c3c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c609190614e64565b610c6a9190614e8f565b9050610c7d87878761ffff16848861310d565b50630a85bd0160e11b9c9b505050505050505050505050565b610c9e613215565b600580546001600160a01b0319166001600160a01b0392909216919091179055565b81610ccb8133611480565b610cec57803360405163168ab55d60e31b81526004016107ad929190614dea565b8260085f610cf9836107f0565b5091505063ffffffff8282161615610d275760405163a2a7201360e01b8152600481018490526024016107ad565b604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a90610a8b9089908990600401614dea565b60066020525f908152604090208054610d8d90614eb6565b80601f0160208091040260200160405190810160405280929190818152602001828054610db990614eb6565b8015610e045780601f10610ddb57610100808354040283529160200191610e04565b820191905f5260205f20905b815481529060010190602001808311610de757829003601f168201915b505050505081565b5f87610e188133611480565b610e3957803360405163168ab55d60e31b81526004016107ad929190614dea565b87516020890120610e4a8a8261326e565b9250610e568a8461329a565b610e6083866133d3565b610e6b8a848b613406565b50610e788a8487876134cd565b9350610e8383613510565b610f33576040516305ef2c7f60e41b8152600481018b9052602481018290523060448201526001600160a01b0388811660648301526001600160401b03881660848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610f0a575f80fd5b505af1158015610f1c573d5f803e3d5ffd5b50505050610f2e8a848b8b89896135c6565b610fda565b6040516305ef2c7f60e41b8152600481018b9052602481018290523060448201526001600160a01b0388811660648301526001600160401b03881660848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610fb6575f80fd5b505af1158015610fc8573d5f803e3d5ffd5b50505050610fda8a848b8b89896135fc565b5050979650505050505050565b81518351146110495760405162461bcd60e51b815260206004820152602860248201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206044820152670dad2e6dac2e8c6d60c31b60648201526084016107ad565b6001600160a01b03841661106f5760405162461bcd60e51b81526004016107ad90614eee565b6001600160a01b03851633148061108b575061108b853361299f565b6110f25760405162461bcd60e51b815260206004820152603260248201527f455243313135353a207472616e736665722063616c6c6572206973206e6f74206044820152711bdddb995c881b9bdc88185c1c1c9bdd995960721b60648201526084016107ad565b5f5b83518110156111ad575f84828151811061111057611110614f33565b602002602001015190505f84838151811061112d5761112d614f33565b602002602001015190505f805f611143856107f0565b9250925092506111548583836136b6565b83600114801561117557508a6001600160a01b0316836001600160a01b0316145b6111915760405162461bcd60e51b81526004016107ad90614f47565b61119d858b848461375d565b50505050508060010190506110f4565b50836001600160a01b0316856001600160a01b0316336001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516111fd929190614f91565b60405180910390a461121333868686868661379d565b5050505050565b5f611225858561326e565b905061123181846133d3565b5f808061123d846107f0565b919450925090506001600160a01b03831615806112ea57506040516302571be360e01b81526004810185905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa1580156112ba573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112de9190614fbe565b6001600160a01b031614155b1561130857604051635374b59960e01b815260040160405180910390fd5b5f806113138a6107f0565b90935091508a905061134f576113298633611480565b61134a57853360405163168ab55d60e31b81526004016107ad929190614dea565b61137a565b6113598a33611480565b61137a57893360405163168ab55d60e31b81526004016107ad929190614dea565b6113858689846138f7565b611390878483613932565b9650620100008416158015906113b457508363ffffffff1688851763ffffffff1614155b156113d55760405163a2a7201360e01b8152600481018790526024016107ad565b96831796610ab486868a868b613977565b5f826113f28133611480565b61141357803360405163168ab55d60e31b81526004016107ad929190614dea565b8360025f611420836107f0565b5091505063ffffffff828216161561144e5760405163a2a7201360e01b8152600481018490526024016107ad565b5f808061145a8a6107f0565b9250925092506114738a84848c61ffff16178485613977565b5098975050505050505050565b5f80808061148d866107f0565b925092509250846001600160a01b0316836001600160a01b031614806109415750610941838661299f565b6060815183511461151d5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b60648201526084016107ad565b5f83516001600160401b0381111561153757611537614525565b604051908082528060200260200182016040528015611560578160200160208202803683370190505b5090505f5b84518110156115cf576115aa85828151811061158357611583614f33565b602002602001015185838151811061159d5761159d614f33565b6020026020010151610746565b8282815181106115bc576115bc614f33565b6020908102919091010152600101611565565b509392505050565b6115df613215565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af115801561162b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061164f9190614fd9565b50505050565b5f6107ea82613a1e565b5f8061166b858561326e565b905061167681613510565b61169357604051635374b59960e01b815260040160405180910390fd5b5f61169e86336108e5565b9050801580156116b557506116b38233611480565b155b156116d757813360405163168ab55d60e31b81526004016107ad929190614dea565b5f80806116e3856107f0565b925092509250831580156116fa5750620400008216155b1561171b5760405163a2a7201360e01b8152600481018690526024016107ad565b5f6117258a6107f0565b92505050611734888383613932565b97506117428685858b613a33565b6040516001600160401b038916815286907ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b1329060200160405180910390a2509598975050505050505050565b611796613215565b61179f5f613a49565b565b6117b85f805160206154fc8339815191528461326e565b6117c28133611480565b6117e357803360405163168ab55d60e31b81526004016107ad929190614dea565b306001600160a01b0384160361181757604051632ca49b0d60e11b81526001600160a01b03841660048201526024016107ad565b6118376118315f805160206154fc8339815191528661326e565b83613a98565b604051632142170760e11b81523060048201526001600160a01b038481166024830152604482018690527f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906342842e0e906064015f604051808303815f87803b1580156118a4575f80fd5b505af11580156118b6573d5f803e3d5ffd5b5050505050505050565b5f8086866040516118d2929190614ff4565b6040519081900381206331a9108f60e11b82526004820181905291505f907f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa15801561193f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119639190614fbe565b90506001600160a01b0381163314801590611a09575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063e985e9c590604401602060405180830381865afa1580156119e3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a079190614fd9565b155b15611a4157611a255f805160206154fc8339815191528361326e565b3360405163168ab55d60e31b81526004016107ad929190614dea565b6040516323b872dd60e01b81526001600160a01b038281166004830152306024830152604482018490527f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906323b872dd906064015f604051808303815f87803b158015611aae575f80fd5b505af1158015611ac0573d5f803e3d5ffd5b5050604051630a3b53db60e21b81526001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a6051692506328ed4f6c9150611b129085903090600401614dea565b5f604051808303815f87803b158015611b29575f80fd5b505af1158015611b3b573d5f803e3d5ffd5b5050604051636b727d4360e11b8152600481018590526276a70092507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b0316915063d6e4fa8690602401602060405180830381865afa158015611ba7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611bcb9190614e64565b611bd59190614e8f565b9250611c1d88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508a9250505061ffff8816868861310d565b505095945050505050565b6001600160a01b0382163303611c925760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084016107ad565b335f8181526002602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b335f9081526004602052604081205460ff16611d2b5760405162461bcd60e51b81526004016107ad90615003565b5f8787604051611d3c929190614ff4565b604051908190038120633f2891eb60e21b8252600482018190523060248301526044820187905291507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b03169063fca247ac906064016020604051808303815f875af1158015611db5573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611dd99190614e64565b9150611e2d88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508a9250505061ffff8616611e276276a70087614e8f565b8861310d565b509695505050505050565b5f80611e43846107f0565b50841663ffffffff908116908516149250505092915050565b611e64613215565b6007546001600160a01b031615611f785760075460405163a22cb46560e01b81526001600160a01b0391821660048201525f60248201527f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063a22cb465906044015f604051808303815f87803b158015611ee0575f80fd5b505af1158015611ef2573d5f803e3d5ffd5b505060075460405163a22cb46560e01b81526001600160a01b0391821660048201525f60248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9909116925063a22cb46591506044015f604051808303815f87803b158015611f61575f80fd5b505af1158015611f73573d5f803e3d5ffd5b505050505b600780546001600160a01b0319166001600160a01b0383169081179091551561209b5760075460405163a22cb46560e01b81526001600160a01b039182166004820152600160248201527f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063a22cb465906044015f604051808303815f87803b158015612007575f80fd5b505af1158015612019573d5f803e3d5ffd5b505060075460405163a22cb46560e01b81526001600160a01b039182166004820152600160248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9909116925063a22cb46591506044015f604051808303815f87803b158015612089575f80fd5b505af1158015611213573d5f803e3d5ffd5b50565b335f9081526004602052604081205460ff166120cc5760405162461bcd60e51b81526004016107ad90615003565b5f6120e45f805160206154fc8339815191528561326e565b60405163c475abff60e01b815260048101869052602481018590529091505f906001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063c475abff906044016020604051808303815f875af1158015612154573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906121789190614e64565b6040516331a9108f60e11b8152600481018790529091507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa9250505080156121fc575060408051601f3d908101601f191682019092526121f991810190614fbe565b60015b6122095791506107ea9050565b6001600160a01b038116301415806122b157506040516302571be360e01b81526004810184905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015612281573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906122a59190614fbe565b6001600160a01b031614155b156122c0575091506107ea9050565b505f6122cf6276a70083614e8f565b5f8481526001602052604090205490915060a081901c6122f185838386613a33565b50919695505050505050565b5f866123098133611480565b61232a57803360405163168ab55d60e31b81526004016107ad929190614dea565b5f878760405161233b929190614ff4565b6040518091039020905061234f898261326e565b925061235b898461329a565b61236583866133d3565b5f6123a68a858b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061340692505050565b90506123b48a8588886134cd565b94506123bf84613510565b61246b576040516306ab592360e01b8152600481018b9052602481018390523060448201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906306ab5923906064016020604051808303815f875af1158015612434573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906124589190614e64565b506124668482898989613b83565b6124b0565b6124b08a858b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508d92508c91508b90506135fc565b5050509695505050505050565b5f6125005f86868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613bc59050565b6007549091506001600160a01b031661252c5760405163093075b560e21b815260040160405180910390fd5b6125368133611480565b61255757803360405163168ab55d60e31b81526004016107ad929190614dea565b5f8080612563846107f0565b919450925090505f6125748561085e565b905061257f85613c81565b60075f9054906101000a90046001600160a01b03166001600160a01b0316639198c2768a8a878787878e8e6040518963ffffffff1660e01b81526004016125cd989796959493929190615073565b5f604051808303815f87803b1580156125e4575f80fd5b505af11580156125f6573d5f803e3d5ffd5b50505050505050505050505050565b836126108133611480565b61263157803360405163168ab55d60e31b81526004016107ad929190614dea565b84601c5f61263e836107f0565b5091505063ffffffff828216161561266c5760405163a2a7201360e01b8152600481018490526024016107ad565b60405163cf40882360e01b8152600481018990523060248201526001600160a01b0387811660448301526001600160401b03871660648301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063cf408823906084015f604051808303815f87803b1580156126e8575f80fd5b505af11580156126fa573d5f803e3d5ffd5b5050506001600160a01b038816905061275f575f612717896107f0565b509150506201ffff196202000082160161274f57604051632ca49b0d60e11b81526001600160a01b03891660048201526024016107ad565b612759895f613a98565b506118b6565b5f61276989611655565b905061278981898b5f1c600160405180602001604052805f815250613d1e565b505050505050505050565b61279e838361326e565b6127a88133611480565b6127c957803360405163168ab55d60e31b81526004016107ad929190614dea565b7f6c32148f748aba23997146d7fe89e962e3cc30271290fb96f5f4337756c03b5284016128095760405163615a470360e01b815260040160405180910390fd5b6001600160a01b038216158061282757506001600160a01b03821630145b1561285057604051632ca49b0d60e11b81526001600160a01b03831660048201526024016107ad565b61164f611831858561326e565b5f80612869848461326e565b90505f61287582613510565b90505f805160206154fc83398151915285146128945791506107ea9050565b6040516331a9108f60e11b8152600481018590527f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa925050508015612915575060408051601f3d908101601f1916820190925261291291810190614fbe565b60015b612923575f925050506107ea565b6001600160a01b0316301492506107ea915050565b612940613215565b6001600160a01b0382165f81815260046020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf8791015b60405180910390a25050565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205460ff1690565b5f80612a105f87878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613dfe9050565b915091505f612a578288888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613bc59050565b90505f612a64828561326e565b5f818152600660205260409020909150612a7f888a8361511e565b507f6c32148f748aba23997146d7fe89e962e3cc30271290fb96f5f4337756c03b528201612ac05760405163615a470360e01b815260040160405180910390fd5b6040516302571be360e01b8152600481018290525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa158015612b25573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612b499190614fbe565b90506001600160a01b0381163314801590612bef575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063e985e9c590604401602060405180830381865afa158015612bc9573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612bed9190614fd9565b155b15612c1157813360405163168ab55d60e31b81526004016107ad929190614dea565b6001600160a01b03861615612c9c57604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a90612c6e9085908a90600401614dea565b5f604051808303815f87803b158015612c85575f80fd5b505af1158015612c97573d5f803e3d5ffd5b505050505b604051635b0fc9c360e01b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635b0fc9c390612cea9085903090600401614dea565b5f604051808303815f87803b158015612d01575f80fd5b505af1158015612d13573d5f803e3d5ffd5b50505050612789828a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201829052508d93509150819050613b83565b6001600160a01b038416612d7f5760405162461bcd60e51b81526004016107ad90614eee565b6001600160a01b038516331480612d9b5750612d9b853361299f565b612df95760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2063616c6c6572206973206e6f74206f776e6572206e6f7260448201526808185c1c1c9bdd995960ba1b60648201526084016107ad565b6112138585858585613d1e565b612e0e613215565b6001600160a01b038116612e735760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107ad565b61209b81613a49565b5f8181526006602052604081208054829190612e9790614eb6565b80601f0160208091040260200160405190810160405280929190818152602001828054612ec390614eb6565b8015612f0e5780601f10612ee557610100808354040283529160200191612f0e565b820191905f5260205f20905b815481529060010190602001808311612ef157829003601f168201915b5050505050905080515f03612f2557505f92915050565b5f80612f318382613dfe565b90925090505f612f418483613bc5565b9050610954818461285d565b5f8042836001600160401b03161015612f775761ffff1962010000851601612f73575f94505b5f93505b50929391925050565b5f6001600160e01b03198216636cdb3d1360e11b1480612fb057506001600160e01b031982166303a24d0760e21b145b806107ea57506301ffc9a760e01b6001600160e01b03198316146107ea565b5f612fd982611655565b9050806001600160a01b0316836001600160a01b0316036130465760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084016107ad565b336001600160a01b03821614806130625750613062813361299f565b6130d45760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016107ad565b6108e08383613eb2565b5f620200008381161480156108995750426130fc6276a700846151d7565b6001600160401b0316109392505050565b845160208601205f61312c5f805160206154fc8339815191528361326e565b90505f61315488604051806040016040528060058152602001626cae8d60e31b815250613f1f565b5f83815260066020526040902090915061316e82826151f7565b50613181828289620300008a1789613b83565b6001600160a01b038416156118b657604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a906131de9085908890600401614dea565b5f604051808303815f87803b1580156131f5575f80fd5b505af1158015613207573d5f803e3d5ffd5b505050505050505050505050565b5f546001600160a01b0316331461179f5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107ad565b604080516020808201949094528082019290925280518083038201815260609092019052805191012090565b5f80806132a6846107f0565b91945092509050426001600160401b0382161080801561336657506001600160a01b038416158061336657506040516302571be360e01b8152600481018690525f906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015613337573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061335b9190614fbe565b6001600160a01b0316145b156133a4575f613375876107f0565b50915050602081161561339e5760405163a2a7201360e01b8152600481018790526024016107ad565b506133cb565b620100008316156133cb5760405163a2a7201360e01b8152600481018690526024016107ad565b505050505050565b63fffdffff81811763ffffffff16146134025760405163a2a7201360e01b8152600481018390526024016107ad565b5050565b60605f6134aa8360065f8881526020019081526020015f20805461342990614eb6565b80601f016020809104026020016040519081016040528092919081815260200182805461345590614eb6565b80156134a05780601f10613477576101008083540402835291602001916134a0565b820191905f5260205f20905b81548152906001019060200180831161348357829003601f168201915b5050505050613f1f565b5f8581526006602052604090209091506134c482826151f7565b50949350505050565b5f806134d8856107f0565b925050505f806134e9885f1c6107f0565b92509250506134f98787846138f7565b613504858483613932565b98975050505050505050565b5f8061351b83611655565b6001600160a01b0316141580156107ea57506040516302571be360e01b81526004810183905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015613592573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906135b69190614fbe565b6001600160a01b03161492915050565b5f86815260066020526040812080546135e491879161342990614eb6565b90506135f38682868686613b83565b50505050505050565b5f8080613608886107f0565b9250925092505f61362f8860065f8d81526020019081526020015f20805461342990614eb6565b5f8a815260066020526040902080549192509061364b90614eb6565b90505f0361366c575f89815260066020526040902061366a82826151f7565b505b61367b89858886178589613977565b6001600160a01b03871661369857613693895f613a98565b610ab4565b610ab484888b5f1c600160405180602001604052805f815250613d1e565b6201ffff19620200008316016136d6576136d36276a700826151d7565b90505b42816001600160401b0316101561370f576201000082161561370a5760405162461bcd60e51b81526004016107ad90614f47565b613734565b60048216156137345760405163a2a7201360e01b8152600481018490526024016107ad565b604082165f036108e05750505f90815260036020526040902080546001600160a01b0319169055565b60c0816001600160401b0316901b60a08363ffffffff16901b846001600160a01b0316171760015f8681526020019081526020015f208190555050505050565b6001600160a01b0384163b156133cb5760405163bc197c8160e01b81526001600160a01b0385169063bc197c81906137e190899089908890889088906004016152b2565b6020604051808303815f875af192505050801561381b575060408051601f3d908101601f1916820190925261381891810190615303565b60015b6138c75761382761531e565b806308c379a003613860575061383b615337565b806138465750613862565b8060405162461bcd60e51b81526004016107ad91906143d4565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e20455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b60648201526084016107ad565b6001600160e01b0319811663bc197c8160e01b146135f35760405162461bcd60e51b81526004016107ad906153bf565b63ffff000082161580159060018316159082906139115750805b156112135760405163a2a7201360e01b8152600481018690526024016107ad565b5f816001600160401b0316846001600160401b03161115613951578193505b826001600160401b0316846001600160401b0316101561396f578293505b509192915050565b61398385858584613a33565b60405163ffffffff8416815285907f39873f00c80f4f94b7bd1594aebcf650f003545b74824d57ddf4939e3ff3a34b9060200160405180910390a2816001600160401b0316816001600160401b03161115611213576040516001600160401b038216815285907ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b132906020015b60405180910390a25050505050565b5f80613a29836107f0565b5090949350505050565b613a3d8483613f96565b61164f8484848461375d565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b613aa3826001611e38565b15613ac45760405163a2a7201360e01b8152600481018390526024016107ad565b613acd82613c81565b604051635b0fc9c360e01b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635b0fc9c390613b1b9085908590600401614dea565b5f604051808303815f87803b158015613b32575f80fd5b505af1158015613b44573d5f803e3d5ffd5b50506040516001600160a01b03841681528492507fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c49150602001612993565b613b8f85848484613fcf565b847f8ce7013e8abebc55c3890a68f5a27c67c3f7efa64e584de5fb22363c606fd34085858585604051613a0f9493929190615407565b5f805f613bd28585613dfe565b909250905081613c435760018551613bea919061544d565b8414613c385760405162461bcd60e51b815260206004820152601d60248201527f6e616d65686173683a204a756e6b20617420656e64206f66206e616d6500000060448201526064016107ad565b505f91506107ea9050565b613c4d8582613bc5565b6040805160208101929092528101839052606001604051602081830303815290604052805190602001209250505092915050565b5f8181526001602052604090205460a081901c60c082901c613ca4838383612f4d565b5f86815260036020526040812080546001600160a01b0319169055909350613cd091508590848461375d565b60408051858152600160208201525f916001600160a01b0386169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b5f805f613d2a866107f0565b925092509250613d3b8683836136b6565b846001148015613d5c5750876001600160a01b0316836001600160a01b0316145b613d785760405162461bcd60e51b81526004016107ad90614f47565b866001600160a01b0316836001600160a01b031603613d9957505050611213565b613da58688848461375d565b60408051878152602081018790526001600160a01b03808a1692908b169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46118b6338989898989614041565b5f8083518310613e505760405162461bcd60e51b815260206004820152601e60248201527f726561644c6162656c3a20496e646578206f7574206f6620626f756e6473000060448201526064016107ad565b5f848481518110613e6357613e63614f33565b016020015160f81c90508015613e8f57613e8885613e82866001615460565b836140fb565b9250613e93565b5f92505b613e9d8185615460565b613ea8906001615460565b9150509250929050565b5f81815260036020526040902080546001600160a01b0319166001600160a01b0384169081179091558190613ee682611655565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6060600183511015613f4457604051631406d65b60e11b815260040160405180910390fd5b60ff83511115613f69578260405163e3ba295f60e01b81526004016107ad91906143d4565b82518383604051602001613f7f93929190615473565b604051602081830303815290604052905092915050565b61ffff811615801590613fae57506201000181811614155b156134025760405163a2a7201360e01b8152600481018390526024016107ad565b613fd98483613f96565b5f848152600160205260409020546001600160a01b0381161561403557613fff85613c81565b6040515f815285907fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c49060200160405180910390a25b6112138585858561411d565b6001600160a01b0384163b156133cb5760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e619061408590899089908890889088906004016154b7565b6020604051808303815f875af19250505080156140bf575060408051601f3d908101601f191682019092526140bc91810190615303565b60015b6140cb5761382761531e565b6001600160e01b0319811663f23a6e6160e01b146135f35760405162461bcd60e51b81526004016107ad906153bf565b82515f906141098385615460565b1115614113575f80fd5b5091016020012090565b835f808061412a846107f0565b9194509250905063ffff000082166001600160401b038087169083161115614150578195505b42826001600160401b03161061416557958617955b6001600160a01b038416156141bc5760405162461bcd60e51b815260206004820152601f60248201527f455243313135353a206d696e74206f66206578697374696e6720746f6b656e0060448201526064016107ad565b6001600160a01b03881661421c5760405162461bcd60e51b815260206004820152602160248201527f455243313135353a206d696e7420746f20746865207a65726f206164647265736044820152607360f81b60648201526084016107ad565b306001600160a01b038916036142915760405162461bcd60e51b815260206004820152603460248201527f455243313135353a206e65774f776e65722063616e6e6f74206265207468652060448201527313985b5955dc985c1c195c8818dbdb9d1c9858dd60621b60648201526084016107ad565b61429d8589898961375d565b60408051868152600160208201526001600160a01b038a16915f9133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4612789335f8a88600160405180602001604052805f815250614041565b6001600160a01b038116811461209b575f80fd5b5f8060408385031215614327575f80fd5b823561433281614302565b946020939093013593505050565b5f60208284031215614350575f80fd5b5035919050565b6001600160e01b03198116811461209b575f80fd5b5f6020828403121561437c575f80fd5b813561089981614357565b5f5b838110156143a1578181015183820152602001614389565b50505f910152565b5f81518084526143c0816020860160208601614387565b601f01601f19169290920160200192915050565b602081525f61089960208301846143a9565b5f80604083850312156143f7575f80fd5b82359150602083013561440981614302565b809150509250929050565b80356001600160401b038116811461442a575f80fd5b919050565b5f8060408385031215614440575f80fd5b8235915061445060208401614414565b90509250929050565b5f8083601f840112614469575f80fd5b5081356001600160401b0381111561447f575f80fd5b602083019150836020828501011115614496575f80fd5b9250929050565b5f805f805f608086880312156144b1575f80fd5b85356144bc81614302565b945060208601356144cc81614302565b93506040860135925060608601356001600160401b038111156144ed575f80fd5b6144f988828901614459565b969995985093965092949392505050565b5f6020828403121561451a575f80fd5b813561089981614302565b634e487b7160e01b5f52604160045260245ffd5b601f8201601f191681016001600160401b038111828210171561455e5761455e614525565b6040525050565b5f6001600160401b0382111561457d5761457d614525565b50601f01601f191660200190565b5f82601f83011261459a575f80fd5b81356145a581614565565b6040516145b28282614539565b8281528560208487010111156145c6575f80fd5b826020860160208301375f92810160200192909252509392505050565b803563ffffffff8116811461442a575f80fd5b5f805f805f805f60e0888a03121561460c575f80fd5b8735965060208801356001600160401b03811115614628575f80fd5b6146348a828b0161458b565b965050604088013561464581614302565b9450606088013561465581614302565b935061466360808901614414565b925061467160a089016145e3565b915061467f60c08901614414565b905092959891949750929550565b5f6001600160401b038211156146a5576146a5614525565b5060051b60200190565b5f82601f8301126146be575f80fd5b813560206146cb8261468d565b6040516146d88282614539565b80915083815260208101915060208460051b8701019350868411156146fb575f80fd5b602086015b84811015611e2d5780358352918301918301614700565b5f805f805f60a0868803121561472b575f80fd5b853561473681614302565b9450602086013561474681614302565b935060408601356001600160401b0380821115614761575f80fd5b61476d89838a016146af565b94506060880135915080821115614782575f80fd5b61478e89838a016146af565b935060808801359150808211156147a3575f80fd5b506147b08882890161458b565b9150509295509295909350565b5f805f80608085870312156147d0575f80fd5b84359350602085013592506147e7604086016145e3565b91506147f560608601614414565b905092959194509250565b803561ffff8116811461442a575f80fd5b5f8060408385031215614822575f80fd5b8235915061445060208401614800565b5f8060408385031215614843575f80fd5b82356001600160401b0380821115614859575f80fd5b818501915085601f83011261486c575f80fd5b813560206148798261468d565b6040516148868282614539565b83815260059390931b85018201928281019150898411156148a5575f80fd5b948201945b838610156148cc5785356148bd81614302565b825294820194908201906148aa565b965050860135925050808211156148e1575f80fd5b50613ea8858286016146af565b5f815180845260208085019450602084015f5b8381101561491d57815187529582019590820190600101614901565b509495945050505050565b602081525f61089960208301846148ee565b5f805f6060848603121561494c575f80fd5b833561495781614302565b9250602084013561496781614302565b929592945050506040919091013590565b5f805f6060848603121561498a575f80fd5b83359250602084013591506149a160408501614414565b90509250925092565b5f805f606084860312156149bc575f80fd5b8335925060208401356149ce81614302565b915060408401356149de81614302565b809150509250925092565b5f805f805f608086880312156149fd575f80fd5b85356001600160401b03811115614a12575f80fd5b614a1e88828901614459565b9096509450506020860135614a3281614302565b9250614a4060408701614800565b91506060860135614a5081614302565b809150509295509295909350565b801515811461209b575f80fd5b5f8060408385031215614a7c575f80fd5b8235614a8781614302565b9150602083013561440981614a5e565b5f805f805f8060a08789031215614aac575f80fd5b86356001600160401b03811115614ac1575f80fd5b614acd89828a01614459565b9097509550506020870135614ae181614302565b9350604087013592506060870135614af881614302565b9150614b0660808801614800565b90509295509295509295565b5f8060408385031215614b23575f80fd5b82359150614450602084016145e3565b5f8060408385031215614b44575f80fd5b50508035926020909101359150565b5f805f805f8060a08789031215614b68575f80fd5b8635955060208701356001600160401b03811115614b84575f80fd5b614b9089828a01614459565b9096509450506040870135614ba481614302565b9250614bb2606088016145e3565b9150614b0660808801614414565b5f805f8060408587031215614bd3575f80fd5b84356001600160401b0380821115614be9575f80fd5b614bf588838901614459565b90965094506020870135915080821115614c0d575f80fd5b50614c1a87828801614459565b95989497509550505050565b5f805f8060808587031215614c39575f80fd5b843593506020850135614c4b81614302565b925060408501356147e781614302565b5f805f60608486031215614c6d575f80fd5b833592506020840135915060408401356149de81614302565b5f8060408385031215614c97575f80fd5b8235614ca281614302565b9150602083013561440981614302565b5f805f8060608587031215614cc5575f80fd5b84356001600160401b03811115614cda575f80fd5b614ce687828801614459565b9095509350506020850135614cfa81614302565b91506040850135614d0a81614302565b939692955090935050565b5f805f805f60a08688031215614d29575f80fd5b8535614d3481614302565b94506020860135614d4481614302565b9350604086013592506060860135915060808601356001600160401b03811115614d6c575f80fd5b6147b08882890161458b565b5f60208284031215614d88575f80fd5b81516001600160401b03811115614d9d575f80fd5b8201601f81018413614dad575f80fd5b8051614db881614565565b604051614dc58282614539565b828152866020848601011115614dd9575f80fd5b610954836020830160208701614387565b9182526001600160a01b0316602082015260400190565b5f805f8060808587031215614e14575f80fd5b84356001600160401b03811115614e29575f80fd5b614e358782880161458b565b9450506020850135614e4681614302565b9250614e5460408601614800565b91506060850135614d0a81614302565b5f60208284031215614e74575f80fd5b5051919050565b634e487b7160e01b5f52601160045260245ffd5b6001600160401b03818116838216019080821115614eaf57614eaf614e7b565b5092915050565b600181811c90821680614eca57607f821691505b602082108103614ee857634e487b7160e01b5f52602260045260245ffd5b50919050565b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b634e487b7160e01b5f52603260045260245ffd5b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b604081525f614fa360408301856148ee565b8281036020840152614fb581856148ee565b95945050505050565b5f60208284031215614fce575f80fd5b815161089981614302565b5f60208284031215614fe9575f80fd5b815161089981614a5e565b818382375f9101908152919050565b60208082526028908201527f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f604082015267373a3937b63632b960c11b606082015260800190565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b60c081525f61508660c083018a8c61504b565b6001600160a01b03898116602085015263ffffffff891660408501526001600160401b03881660608501528616608084015282810360a08401526150cb81858761504b565b9b9a5050505050505050505050565b601f8211156108e057805f5260205f20601f840160051c810160208510156150ff5750805b601f840160051c820191505b81811015611213575f815560010161510b565b6001600160401b0383111561513557615135614525565b615149836151438354614eb6565b836150da565b5f601f84116001811461517a575f85156151635750838201355b5f19600387901b1c1916600186901b178355611213565b5f83815260208120601f198716915b828110156151a95786850135825560209485019460019092019101615189565b50868210156151c5575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b6001600160401b03828116828216039080821115614eaf57614eaf614e7b565b81516001600160401b0381111561521057615210614525565b6152248161521e8454614eb6565b846150da565b602080601f831160018114615257575f84156152405750858301515b5f19600386901b1c1916600185901b1785556133cb565b5f85815260208120601f198616915b8281101561528557888601518255948401946001909101908401615266565b50858210156152a257878501515f19600388901b60f8161c191681555b5050505050600190811b01905550565b6001600160a01b0386811682528516602082015260a0604082018190525f906152dd908301866148ee565b82810360608401526152ef81866148ee565b9050828103608084015261350481856143a9565b5f60208284031215615313575f80fd5b815161089981614357565b5f60033d11156153345760045f803e505f5160e01c5b90565b5f60443d10156153445790565b6040516003193d81016004833e81513d6001600160401b03816024840111818411171561537357505050505090565b828501915081518181111561538b5750505050505090565b843d87010160208285010111156153a55750505050505090565b6153b460208286010187614539565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b608081525f61541960808301876143a9565b6001600160a01b039590951660208301525063ffffffff9290921660408301526001600160401b0316606090910152919050565b818103818111156107ea576107ea614e7b565b808201808211156107ea576107ea614e7b565b60ff60f81b8460f81b1681525f8351615493816001850160208801614387565b8351908301906154aa816001840160208801614387565b0160010195945050505050565b6001600160a01b03868116825285166020820152604081018490526060810183905260a0608082018190525f906154f0908301846143a9565b97965050505050505056fe93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4aea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2a68925cf5169f28586095d5b5b9933b3008f4c793a48be4f59b8b2bc62aa60a":"0x1","0x54cdd369e4e8a8515e52ca72ec816c2101831ad1f18bf44102ed171459c9b4f8":"0x2","0xa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb49":"0xffffffffffffffff000100010000000000000000000000000000000000000000","0xafa26c20e8b3d9a2853d642cfe1021dae26242ffedfac91c97aab212c1a4b93b":"0xffffffffffffffff000100010000000000000000000000000000000000000000","0xef5b11c47ebee44618abc22110e10e3b408ea5e799056d2b38461aa7b97c5a97":"0x1","0xfb9e8e321b8a5ec48f12a7b41f22c6e595d761285c9eb19d8dda7c99edf1b54f":"0x36574680000000000000000000000000000000000000000000000000000000a"}},"0x6e1eb616c7d69491f9a880f815ff5574768cba20":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061007d5760003560e01c806314ab90381161005b57806314ab90381461010957806316a25cbd1461011c5780631896f70a146101695780635b0fc9c31461017c57600080fd5b80630178b8bf1461008257806302571be3146100cb57806306ab5923146100f4575b600080fd5b6100ae610090366004610416565b6000908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100ae6100d9366004610416565b6000908152602081905260409020546001600160a01b031690565b61010761010236600461044b565b61018f565b005b610107610117366004610480565b61024c565b61015061012a366004610416565b600090815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100c2565b6101076101773660046104bd565b6102ef565b61010761018a3660046104bd565b610384565b60008381526020819052604090205483906001600160a01b031633146101b457600080fd5b60408051602080820187905281830186905282518083038401815260608301808552815191909201206001600160a01b0386169091529151859187917fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829181900360800190a3600090815260208190526040902080546001600160a01b0319166001600160a01b039390931692909217909155505050565b60008281526020819052604090205482906001600160a01b0316331461027157600080fd5b60405167ffffffffffffffff8316815283907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a250600091825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b60008281526020819052604090205482906001600160a01b0316331461031457600080fd5b6040516001600160a01b038316815283907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a25060009182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b60008281526020819052604090205482906001600160a01b031633146103a957600080fd5b6040516001600160a01b038316815283907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a25060009182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b60006020828403121561042857600080fd5b5035919050565b80356001600160a01b038116811461044657600080fd5b919050565b60008060006060848603121561046057600080fd5b83359250602084013591506104776040850161042f565b90509250925092565b6000806040838503121561049357600080fd5b82359150602083013567ffffffffffffffff811681146104b257600080fd5b809150509250929050565b600080604083850312156104d057600080fd5b823591506104e06020840161042f565b9050925092905056fea164736f6c6343000811000a","storage":{"0x859ecef2e168dc10231b000bd53493b42bc9d944cac29d94582c1e1d43592131":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x7bb6cd9be29fab783c0b494a06fed8b2e2596b7a":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100ea5760003560e01c80636debcb8d1161008c578063b34f33c511610066578063b34f33c514610741578063d0778d6c14610814578063ef2c3088146108f2578063f5090c1e14610980576100ea565b80636debcb8d146105ca5780636fab95b3146106585780637b1039991461071d576100ea565b8063511f1112116100c8578063511f1112146103c557806361603dd91461044857806368b6154f146104bd5780636ccbae5f1461059b576100ea565b806307eca395146100ef578063280d9b051461021457806330135293146102f2575b600080fd5b610212600480360360a081101561010557600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561013457600080fd5b82018360208201111561014657600080fd5b803590602001918460018302840111600160201b8311171561016757600080fd5b919390929091602081019035600160201b81111561018457600080fd5b82018360208201111561019657600080fd5b803590602001918460018302840111600160201b831117156101b757600080fd5b919390929091602081019035600160201b8111156101d457600080fd5b8201836020820111156101e657600080fd5b803590602001918460018302840111600160201b8311171561020757600080fd5b509092509050610aae565b005b610212600480360360a081101561022a57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561026457600080fd5b82018360208201111561027657600080fd5b803590602001918460018302840111600160201b8311171561029757600080fd5b919390929091602081019035600160201b8111156102b457600080fd5b8201836020820111156102c657600080fd5b803590602001918460018302840111600160201b831117156102e757600080fd5b509092509050610c92565b6102126004803603608081101561030857600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561033757600080fd5b82018360208201111561034957600080fd5b803590602001918460018302840111600160201b8311171561036a57600080fd5b919390929091602081019035600160201b81111561038757600080fd5b82018360208201111561039957600080fd5b803590602001918460018302840111600160201b831117156103ba57600080fd5b509092509050610e3d565b610212600480360360608110156103db57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561040a57600080fd5b82018360208201111561041c57600080fd5b803590602001918460018302840111600160201b8311171561043d57600080fd5b509092509050610fcc565b6102126004803603604081101561045e57600080fd5b81359190810190604081016020820135600160201b81111561047f57600080fd5b82018360208201111561049157600080fd5b803590602001918460018302840111600160201b831117156104b257600080fd5b5090925090506110c9565b610212600480360360a08110156104d357600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561050d57600080fd5b82018360208201111561051f57600080fd5b803590602001918460018302840111600160201b8311171561054057600080fd5b919390929091602081019035600160201b81111561055d57600080fd5b82018360208201111561056f57600080fd5b803590602001918460018302840111600160201b8311171561059057600080fd5b5090925090506111ae565b6105b8600480360360208110156105b157600080fd5b50356113a8565b60408051918252519081900360200190f35b610212600480360360808110156105e057600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561061a57600080fd5b82018360208201111561062c57600080fd5b803590602001918460018302840111600160201b8311171561064d57600080fd5b5090925090506113ba565b6102126004803603606081101561066e57600080fd5b81359190810190604081016020820135600160201b81111561068f57600080fd5b8201836020820111156106a157600080fd5b803590602001918460018302840111600160201b831117156106c257600080fd5b919390929091602081019035600160201b8111156106df57600080fd5b8201836020820111156106f157600080fd5b803590602001918460018302840111600160201b8311171561071257600080fd5b5090925090506114d4565b610725611675565b604080516001600160a01b039092168252519081900360200190f35b6102126004803603608081101561075757600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561078657600080fd5b82018360208201111561079857600080fd5b803590602001918460018302840111600160201b831117156107b957600080fd5b919390929091602081019035600160201b8111156107d657600080fd5b8201836020820111156107e857600080fd5b803590602001918460018302840111600160201b8311171561080957600080fd5b509092509050611684565b610212600480360360a081101561082a57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561086457600080fd5b82018360208201111561087657600080fd5b803590602001918460018302840111600160201b8311171561089757600080fd5b919390929091602081019035600160201b8111156108b457600080fd5b8201836020820111156108c657600080fd5b803590602001918460018302840111600160201b831117156108e757600080fd5b5090925090506117de565b6102126004803603608081101561090857600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561094257600080fd5b82018360208201111561095457600080fd5b803590602001918460018302840111600160201b8311171561097557600080fd5b5090925090506119e4565b610212600480360360c081101561099657600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156109d057600080fd5b8201836020820111156109e257600080fd5b803590602001918460018302840111600160201b83111715610a0357600080fd5b919390929091602081019035600160201b811115610a2057600080fd5b820183602082011115610a3257600080fd5b803590602001918460018302840111600160201b83111715610a5357600080fd5b919390929091602081019035600160201b811115610a7057600080fd5b820183602082011115610a8257600080fd5b803590602001918460018302840111600160201b83111715610aa357600080fd5b509092509050611ad3565b610bb163ce9fb82b89898989898960405160240180876001600160a01b03166001600160a01b0316815260200186815260200180602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f820116905080830192505050985050505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208884848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b600154604051630119f80560e21b81526001600160a01b038a811660048301908152602483018b9052608060448401908152608484018a90529190931692630467e014928c928c928c928c928c928c92909190606481019060a401878780828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f82011690508083019250505098505050505050505050600060405180830381600087803b158015610c7057600080fd5b505af1158015610c84573d6000803e3d6000fd5b505050505050505050505050565b610d8363b88d4fde888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040516315eab15d60e21b81526001600160a01b03898116600483019081528982166024840152604483018990526080606484019081526084840188905291909316926357aac574928b928b928b928b928b929160a401848480828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b158015610e1c57600080fd5b505af1158015610e30573d6000803e3d6000fd5b5050505050505050505050565b610f09637c69eae28787878760405160240180856001600160a01b03166001600160a01b0316815260200184815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09d909d1b9c909c178c529351909a208a51918d01849004840282018401909a528b81528f985096508b95508a94508493505085019050838280828437600092019190915250611d5492505050565b600154604051630119f80560e21b81526001600160a01b038881166004830190815260248301899052608060448401908152608484018890529190931692630467e014928a928a928a928a9290606481019060a401858580828437600081840152601f19601f8201169050808301925050508381038252600081526020016020019650505050505050600060405180830381600087803b158015610fac57600080fd5b505af1158015610fc0573d6000803e3d6000fd5b50505050505050505050565b604080516001600160a01b038616602482015260448082018690528251808303909101815260649091018252602081810180516001600160e01b0316632392c18960e01b17815291519091208251601f85018390048302810183019093528383526110569290918691908690869081908401838280828437600092019190915250611d5492505050565b60015460408051631292e83560e11b81526001600160a01b0387811660048301526024820187905291519190921691632525d06a91604480830192600092919082900301818387803b1580156110ab57600080fd5b505af11580156110bf573d6000803e3d6000fd5b5050505050505050565b6040805160248082018690528251808303909101815260449091018252602081810180516001600160e01b0316630852cd8d60e31b17815291519091208251601f85018390048302810183019093528383526111449290918691908690869081908401838280828437600092019190915250611d5492505050565b6001546040805163e67ca8a360e01b81526004810186905290516001600160a01b039092169163e67ca8a39160248082019260009290919082900301818387803b15801561119157600080fd5b505af11580156111a5573d6000803e3d6000fd5b50505050505050565b61129f639e5be9a5888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b03909316926302759c37928b928b9286926368b62d32928d928d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561132757600080fd5b505afa15801561133b573d6000803e3d6000fd5b505050506040513d602081101561135157600080fd5b5051604080516001600160e01b031960e087901b1681526001600160a01b03948516600482015292909316602483015260448201529051606480830192600092919082900301818387803b158015610e1c57600080fd5b60009081526020819052604090205490565b604080516001600160a01b0380881660248301528616604482015260648082018690528251808303909101815260849091018252602081810180516001600160e01b0316632142170760e11b17815291519091208251601f850183900483028101830190935283835261144c9290918691908690869081908401838280828437600092019190915250611d5492505050565b600154604080516315eab15d60e21b81526001600160a01b0388811660048301528781166024830152604482018790526080606483015260006084830181905292519316926357aac5749260c48084019391929182900301818387803b1580156114b557600080fd5b505af11580156114c9573d6000803e3d6000fd5b505050505050505050565b611585635cbe11128686866040516024018084815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09c909c1b9b909b178b5293519099208951918c018490048402820184019099528a81528e975095508a9450899350839250508401838280828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b039093169263e67ca8a39284926368b62d32928b928b928b929190606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561160b57600080fd5b505afa15801561161f573d6000803e3d6000fd5b505050506040513d602081101561163557600080fd5b5051604080516001600160e01b031960e085901b168152600481019290925251602480830192600092919082900301818387803b1580156114b557600080fd5b6001546001600160a01b031690565b61175063d8d3cc6e8787878760405160240180856001600160a01b03166001600160a01b0316815260200184815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09d909d1b9c909c178c529351909a208a51918d01849004840282018401909a528b81528f985096508b95508a94508493505085019050838280828437600092019190915250611d5492505050565b60015460405163b546666960e01b81526001600160a01b03888116600483019081526024830189905260606044840190815260648401889052919093169263b5466669928a928a928a928a9290608401848480828437600081840152601f19601f82011690508083019250505095505050505050600060405180830381600087803b158015610fac57600080fd5b6118cf639d743989888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b03909316926357aac574928b928b9286926368b62d32928d928d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561195757600080fd5b505afa15801561196b573d6000803e3d6000fd5b505050506040513d602081101561198157600080fd5b5051604080516001600160e01b031960e087901b1681526001600160a01b039485166004820152929093166024830152604482015260806064820152600060848201819052915160c4808301939282900301818387803b158015610e1c57600080fd5b604080516001600160a01b0380881660248301528616604482015260648082018690528251808303909101815260849091018252602081810180516001600160e01b03166323b872dd60e01b17815291519091208251601f8501839004830281018301909352838352611a769290918691908690869081908401838280828437600092019190915250611d5492505050565b600154604080516302759c3760e01b81526001600160a01b038881166004830152878116602483015260448201879052915191909216916302759c3791606480830192600092919082900301818387803b1580156114b557600080fd5b611bf063c29b52f98a8a8a8a8a8a8a60405160240180886001600160a01b03166001600160a01b03168152602001876001600160a01b03166001600160a01b0316815260200186815260200180602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f82011690508083019250505099505050505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208884848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b8152600481018a815260248201928352604482018990526001600160a01b03909316926357aac574928d928d9286926368b62d32928f928f928f92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b158015611c7857600080fd5b505afa158015611c8c573d6000803e3d6000fd5b505050506040513d6020811015611ca257600080fd5b50516040516001600160e01b031960e086901b1681526001600160a01b0380851660048301908152908416602483015260448201839052608060648301908152608483018b90528b928b92919060a401848480828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b158015611d3157600080fd5b505af1158015611d45573d6000803e3d6000fd5b50505050505050505050505050565b6000828152602081815260408083205481518084018890523060601b81840152605480820183905283518083039091018152607490910190925281519190920120909190611db3908490611da790611ea9565b9063ffffffff611efa16565b90506001600160a01b03811615801590611e4957506001546040805163430c208160e01b81526001600160a01b038481166004830152602482018890529151919092169163430c2081916044808301926020929190829003018186803b158015611e1c57600080fd5b505afa158015611e30573d6000803e3d6000fd5b505050506040513d6020811015611e4657600080fd5b50515b611e8e576040805162461bcd60e51b8152602060048201526011602482015270494e56414c49445f5349474e415455524560781b604482015290519081900360640190fd5b50505060009081526020819052604090208054600101905550565b604080517f19457468657265756d205369676e6564204d6573736167653a0a333200000000602080830191909152603c8083019490945282518083039094018452605c909101909152815191012090565b60008151604114611f0d57506000611fe3565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0821115611f535760009350505050611fe3565b8060ff16601b14158015611f6b57508060ff16601c14155b15611f7c5760009350505050611fe3565b6040805160008152602080820180845289905260ff8416828401526060820186905260808201859052915160019260a0808401939192601f1981019281900390910190855afa158015611fd3573d6000803e3d6000fd5b5050506020604051035193505050505b9291505056fea265627a7a7231582014816bfd0c1519ce8c4cf272eb0526ffdba3abef0df7f17deb0da40bd8abb77f64736f6c634300050c0032","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533"}},"0x7c3c91245769c8b7450ad522792dec4bd4bf797f":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b506004361061003f575f3560e01c80631bf7e13e146100435780636ccbae5f1461006c578063a424740014610099575b5f80fd5b610056610051366004610749565b6100bc565b604051610063919061082c565b60405180910390f35b61008b61007a36600461083e565b5f9081526001602052604090205490565b604051908152602001610063565b6100ac6100a7366004610749565b6101d6565b6040519015158152602001610063565b60605f5a90506100cd8585856101d6565b6101315760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e61676572466f727761726465723a205349474e415455604482015269149157d253959053125160b21b60648201526084015b60405180910390fd5b6101cb6101416020870187610870565b5f546001600160a01b031660408801358461015f60608b018b610889565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f9201919091525061023292505050565b9150505b9392505050565b5f61022a6101e38561093a565b5f54604080516020601f88018190048102820181019092528681526001600160a01b03909216919087908790819084018382808284375f9201919091525061030e92505050565b949350505050565b606061023d85610453565b5f80876001600160a01b0316866102568b8a898961047e565b60405161026391906109f5565b5f604051808303815f8787f1925050503d805f811461029d576040519150601f19603f3d011682016040523d82523d5f602084013e6102a2565b606091505b5090925090506102b3603f87610a10565b5a116102c1576102c1610a2f565b61030182826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506104ae565b9998505050505050505050565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015610352573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103769190610a43565b90505f6104238660600151805190602001208688602001516040516020016103c39392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561044957508551610449906001600160a01b031682866104e7565b9695505050505050565b5f8181526001602081905260409091205461046d91610a5a565b5f9182526001602052604090912055565b606082858560405160200161049593929190610a7f565b6040516020818303038152906040529050949350505050565b606083156104bd5750816101cf565b8251156104cd5782518084602001fd5b8160405162461bcd60e51b8152600401610128919061082c565b5f805f6104f48585610622565b90925090505f81600481111561050c5761050c610abd565b14801561052a5750856001600160a01b0316826001600160a01b0316145b1561053a576001925050506101cf565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401610561929190610ad1565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161059f91906109f5565b5f60405180830381855afa9150503d805f81146105d7576040519150601f19603f3d011682016040523d82523d5f602084013e6105dc565b606091505b50915091508180156105ef575080516020145b801561061657508051630b135d3f60e11b906106149083016020908101908401610a43565b145b98975050505050505050565b5f808251604103610656576020830151604084015160608501515f1a61064a87828585610664565b9450945050505061065d565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561069957505f90506003610740565b8460ff16601b141580156106b157508460ff16601c14155b156106c157505f90506004610740565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610712573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b03811661073a575f60019250925050610740565b91505f90505b94509492505050565b5f805f6040848603121561075b575f80fd5b833567ffffffffffffffff80821115610772575f80fd5b9085019060808288031215610785575f80fd5b9093506020850135908082111561079a575f80fd5b818601915086601f8301126107ad575f80fd5b8135818111156107bb575f80fd5b8760208285010111156107cc575f80fd5b6020830194508093505050509250925092565b5f5b838110156107f95781810151838201526020016107e1565b50505f910152565b5f81518084526108188160208601602086016107df565b601f01601f19169290920160200192915050565b602081525f6101cf6020830184610801565b5f6020828403121561084e575f80fd5b5035919050565b80356001600160a01b038116811461086b575f80fd5b919050565b5f60208284031215610880575f80fd5b6101cf82610855565b5f808335601e1984360301811261089e575f80fd5b83018035915067ffffffffffffffff8211156108b8575f80fd5b60200191503681900382131561065d575f80fd5b634e487b7160e01b5f52604160045260245ffd5b6040516080810167ffffffffffffffff81118282101715610903576109036108cc565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610932576109326108cc565b604052919050565b5f6080823603121561094a575f80fd5b6109526108e0565b61095b83610855565b81526020808401358183015260408401356040830152606084013567ffffffffffffffff8082111561098b575f80fd5b9085019036601f83011261099d575f80fd5b8135818111156109af576109af6108cc565b6109c1601f8201601f19168501610909565b915080825236848285010111156109d6575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b5f8251610a068184602087016107df565b9190910192915050565b5f82610a2a57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b5f60208284031215610a53575f80fd5b5051919050565b80820180821115610a7957634e487b7160e01b5f52601160045260245ffd5b92915050565b5f8451610a908184602089016107df565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f61022a604083018461080156fea164736f6c6343000818000a","storage":{"0x0":"0x39a27956b78d00a4e00ea8833ff0947410a2933f"}},"0x8861cdfa38838531275ce12f9e795c3b9ff29cbe":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x936188f2c3c8e8c95e425b6fe41c2ac9e701585e":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x94f57ed7e9af03a10e8eb23ce1b3c7914a182b0f":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x951c830a0471c04dcb60ce244dee38ee4b0609ec":{"nonce":1,"balance":"0x8ac7230489e80000","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0x1","0x97":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x13cf90498be59d359caa5b6092b365feab4610605d7107d1f05f8e94ac955652":"0x1","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xc2110388dd54228ae0a834119457ede938bf0b57","0x412386de53449251cbf7ce1f4c6a038bf9c0746e62d331b08ef0c3fa7d0ab672":"0x4fbf7b2f171336958be5d15ff762a5cff5363568","0x60793a5062d506d35cc8f1beda67ee5028c16bfcd9c923d5bfc439c04bd929b1":"0x6ac8f19d1e0f81147cdf2a1e53cb1f4e18417204","0x75df8b43665bf2e4996a686913c4c278ca7aed85444740ca40355b1c9a94b504":"0x1","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x3198fc981626687f4b5bdf0fbeabb0a5e0489c03","0xf851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004":"0xc965345edac823d56812cd20a10316233916a605"}},"0x95f29431aeb52c0d5dbeeec36010b8e2ca69cb3d":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x9b2565a3545a1312bdcb6e7148a7f7cae8c2706b":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c806373cc48a61161008857806398d35f201161006357806398d35f2014610215578063bd7ed31a1461021d578063c327deef14610245578063d7b82ebe1461026d575f80fd5b806373cc48a6146101af5780638438dc04146101ef5780638da5cb5b14610202575f80fd5b806313af4035116100c357806313af40351461015657806328e7677d146101695780632c095cbb1461017c578063435cc1621461018f575f80fd5b8063020ed8d3146100e9578063087991bc146100fe5780630b1a249514610143575b5f80fd5b6100fc6100f73660046122ff565b610280565b005b61011161010c36600461238a565b610300565b6040805163ffffffff94851681529390921660208401526001600160601b031916908201526060015b60405180910390f35b6100fc610151366004612510565b61036c565b6100fc6101643660046125c6565b6104da565b6100fc6101773660046122ff565b610512565b6100fc61018a3660046125e1565b61058a565b6101a261019d366004612674565b610656565b60405161013a919061278c565b6101d76101bd36600461279e565b60046020525f90815260409020546001600160a01b031681565b6040516001600160a01b03909116815260200161013a565b6100fc6101fd3660046122ff565b6106d2565b6001546101d7906001600160a01b031681565b6101a261074a565b6101d761022b36600461279e565b60056020525f90815260409020546001600160a01b031681565b6101d761025336600461279e565b60036020525f90815260409020546001600160a01b031681565b6101a261027b3660046127b7565b6107d5565b6001546001600160a01b03163314610296575f80fd5b60ff82165f8181526003602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527ff73c3c226af96b7f1ba666a21b3ceaf2be3ee6a365e3178fd9cd1eaae0075aa891015b60405180910390a15050565b5f805f8060025f8787604051610317929190612817565b604080519182900390912082526020808301939093529081015f90812061ffff8b16825290925290205463ffffffff80821695506401000000008204169350600160401b900460601b91505093509350939050565b83516020808601919091205f90815260028252604080822061ffff891683529092529081205463ffffffff16906103a385846107ea565b90506103b0818784610889565b6103b8612239565b845151156103d7576103ca85856107ea565b90506103d7818885610889565b5f6103e1836108cc565b602081015190915060fe16156103f5575f80fd5b61040081602761092a565b158015610425575061041381600261092a565b1580610425575061042581600661092a565b61042d575f80fd5b61043e89898561012001518461093a565b156104795787516020808a01919091205f90815260028252604080822061ffff8d1683529092522080546001600160e01b03191690556104cf565b6104988884610120015183856101200151610493876108cc565b610968565b156100e55787516020808a01919091205f90815260028252604080822061ffff8d1683529092522080546001600160e01b03191690555b505050505050505050565b6001546001600160a01b031633146104f0575f80fd5b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6001546001600160a01b03163314610528575f80fd5b60ff82165f8181526004602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527f2fcc274c3b72dd483ab201bfa87295e3817e8b9b10693219873b722ca1af00c791016102f4565b610592612239565b61059c83836107ea565b805190915061ffff16602f146105b0575f80fd5b60a081015184516020808701919091205f90815260028252604080822061ffff8a16835290925220546105e9919063ffffffff16610a7c565b6105f1575f80fd5b5f6105fb82610a94565b9050805151602082015110156100e55761061c818361012001518789610aab565b505082516020808501919091205f90815260028252604080822061ffff881683529092522080546001600160e01b03191690555b50505050565b60605f83838080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201829052509394505050505b85518110156106c7576106bd8682815181106106af576106af612826565b602002602001015183610c4a565b9150600101610691565b5090505b9392505050565b6001546001600160a01b031633146106e8575f80fd5b60ff82165f8181526005602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527fc7eec866a7a1386188cc3ca20ffea75b71bd3e90a60b6791b1d3f0971145118d91016102f4565b5f80546107569061283a565b80601f01602080910402602001604051908101604052809291908181526020018280546107829061283a565b80156107cd5780601f106107a4576101008083540402835291602001916107cd565b820191905f5260205f20905b8154815290600101906020018083116107b057829003601f168201915b505050505081565b60606107e18383610c4a565b90505b92915050565b6107f2612239565b82516107fd90610dc6565b905061080d8160e0015183610ebf565b610815575f80fd5b5f61082382835f0151610f25565b604083015190915060ff16610838825f610fcc565b14610841575f80fd5b610120820181905260808201516108589042610a7c565b610860575f80fd5b61086e428360a00151610a7c565b610876575f80fd5b61088281838686611026565b5092915050565b6108978360a0015182610a7c565b61089f575f80fd5b825161ffff166032146108b0575f80fd5b6108bf83610120015183611106565b6108c7575f80fd5b505050565b6040805160c0810182525f8082526020820181905291810182905260608082018190526080820183905260a08201529061090583610a94565b60a081015160c08201519192506106cb91610921908290612880565b83519190611172565b5f6107e18360a001515f846112b4565b5f6109468284866113c1565b1561095d57610955828661092a565b159050610960565b505f5b949350505050565b60208101515f9060fe161561097b575f80fd5b5f610985866113e6565b90505f610991856113e6565b90505f8061099f8a82611401565b6109aa906001612893565b60ff1690505b8951811015610a6b57836109dc896109d784858f516109cf9190612880565b8f9190611424565b6114a4565b03610a3f575f6109f7876109d785868f516109cf9190612880565b90508660800151841015610a23578381118015610a175750866080015181105b95505050505050610a73565b83811180610a1757508660800151811095505050505050610a73565b905080610a4c8a82611401565b610a57906001612893565b610a649060ff16826128ac565b90506109b0565b505f93505050505b95945050505050565b5f80610a8883856128bf565b60030b12159392505050565b610a9c61228e565b6107e48261010001515f61152d565b60a084015184515f90610abe9083611548565b90505f8660a001518760c00151610ad59190612880565b9050818111610ae2575f80fd5b5f610aed868861159f565b9050805f03610b1a57610b0c610b0384866128ac565b895190876112b4565b15610b15575f80fd5b610b5b565b87515f90610b29908686611424565b90505f8213610b36575f80fd5b5f610b41898361159f565b12156104cf575f610b52888361159f565b126104cf575f80fd5b5050505050505050565b60c08101516020820181905281515111610b7c5750565b5f610b8e825f01518360200151611548565b8260200151610b9d91906128ac565b8251909150610bac90826116ec565b61ffff166040830152610bc06002826128ac565b8251909150610bcf90826116ec565b61ffff166060830152610be36002826128ac565b8251909150610bf29082611712565b63ffffffff166080830152610c086004826128ac565b82519091505f90610c1990836116ec565b61ffff169050610c2a6002836128ac565b60a084018190529150610c3d81836128ac565b60c0909301929092525050565b6060610c54612239565b610c5e84846107ea565b61012081015180516020918201205f908152600282526040808220845161ffff16835290925220805491925090600160401b900460601b6001600160601b03191615610cc35760a08201518154610cbb919063ffffffff16610a7c565b610cc3575f80fd5b604080516060808201835260a085015163ffffffff9081168352608086015181166020808501918252610100880180518051908301206001600160601b0319168688019081526101208a0180518051908501205f908152600285528981208c5161ffff16825290945292889020965187549451915190961c600160401b0268010000000000000000600160e01b03199186166401000000000267ffffffffffffffff19909516969095169590951792909217939093169190911790925551905191517f55ced933cdd5a34dd03eb5d4bef19ec6ebb251dcd7a988eee0c1b9a13baaa88b92610db192916128e6565b60405180910390a15061010001519392505050565b610dce612239565b610dd8825f6116ec565b61ffff168152610de9826002611401565b60ff166020820152610dfc826003611401565b60ff166040820152610e0f826004611712565b63ffffffff9081166060830152610e2b90839060089061171216565b63ffffffff9081166080830152610e47908390600c9061171216565b63ffffffff90811660a0830152610e639083906010906116ec16565b61ffff1660c0820152610e7782601261173a565b60e0820181905251610eb490610e8e9060126128ac565b8260e001515160128551610ea29190612880565b610eac9190612880565b849190611424565b610100820152919050565b5f80610ed5610ece8483611548565b84906116ec565b83516020808601919091208651878301205f90815260028352604080822061ffff90951682529390925291902054600160401b900460601b6001600160601b031990811691161491505092915050565b60605f610f3184610a94565b90505b8051516020820151101561088257606081015161ffff16600114610f56575f80fd5b81515f03610f6e57610f6781611754565b9150610fa7565b60208101518151610f7e91611548565b825114610f89575f80fd5b805160208201518351610f9f9285925f92611775565b610fa7575f80fd5b8261ffff16816040015161ffff1614610fbe575f80fd5b610fc781610b65565b610f34565b5f805b83518310610fdf57610fdf61290a565b5f610fea8585611401565b60ff169050610ffa8160016128ac565b61100490856128ac565b9350805f0361101357506107e1565b61101e6001836128ac565b915050610fcf565b83518360e00151511115611038575f80fd5b61105c5f858560e0015151875161104f9190612880565b60e0870151929190611797565b611064575f80fd5b5f61106f828261152d565b9050602b61ffff16816040015161ffff160361109d576110908484836117cb565b611098575f80fd5b6110ff565b603061ffff16816040015161ffff16036110bc5761109084848361185f565b60405162461bcd60e51b8152602060048201526014602482015273139bc81d985b1a59081c1c9bdbd988199bdd5b9960621b604482015260640160405180910390fd5b5050505050565b5f806111128482611401565b61111d906001612893565b60ff1690505f5b835181101561095d5761113984828785611797565b15611149576001925050506107e4565b6111538482611401565b61115e906001612893565b61116b9060ff16826128ac565b9050611124565b6040805160c0810182525f8082526020820181905291810182905260608082018190526080820183905260a0820152906111ac83856128ac565b90506111c26111bb5f866128ac565b8690611401565b60ff1682526111d56111bb6001866128ac565b60ff1660208301526111f26111eb6002866128ac565b86906116ec565b61ffff1660408301525f61121161120a6004876128ac565b8790611401565b905061121e6005866128ac565b945061122e868660ff8416611424565b606084015261124060ff8216866128ac565b94505f61124d8787611401565b905060208160ff16111561125f575f80fd5b61126a6001876128ac565b955061127a878760ff8416611900565b608085015261128c60ff8216876128ac565b95506112a48661129c8186612880565b899190611424565b60a0850152509195945050505050565b5f60ff600883811c82169183916112cc918616612932565b90505f6112dd600780871690612952565b600160ff919091161b9050855b87518110156113b4575f6112fe8983611401565b90505f61131661130f8460016128ac565b8b90611401565b90508160ff168660ff161015611334575f96505050505050506106cb565b8160ff168660ff1603611393578460ff168160ff161161135c575f96505050505050506106cb565b8361137f61136d60ff8816866128ac565b6113789060026128ac565b8c90611401565b1660ff165f141596505050505050506106cb565b61139e816002612893565b6113ab9060ff16846128ac565b925050506112ea565b505f979650505050505050565b5f806113cd85846114a4565b90505f6113d9856113e6565b9190911495945050505050565b5f6107e460016113f68484611401565b84919060ff1661193d565b5f82828151811061141457611414612826565b016020015160f81c905092915050565b825160609061143383856128ac565b111561143d575f80fd5b5f8267ffffffffffffffff811115611457576114576123d9565b6040519080825280601f01601f191660200182016040528015611481576020820181803683370190505b50905060208082019086860101611499828287611b43565b509095945050505050565b815160ff165f9081526005602052604080822054606085015182860151925163347ced5960e11b81526001600160a01b03909216926368f9dab2926114ee9291879160040161296b565b602060405180830381865afa158015611509573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107e191906129a4565b61153561228e565b82815260c081018290526107e481610b65565b5f815b8351811061155b5761155b61290a565b5f6115668583611401565b60ff1690506115768160016128ac565b61158090836128ac565b9150805f0361158f5750611595565b5061154b565b6109608382612880565b5f6115aa8383611b98565b156115b657505f6107e4565b5f805f805f6115c5885f610fcc565b90505f6115d2885f610fcc565b90505b808211156115fe578593506115ea8987611bb3565b9550816115f6816129bb565b9250506115d5565b81811115611627578492506116138886611bb3565b94508061161f816129bb565b9150506115fe565b5f8211801561163f575061163d89878a88611797565b155b15611674578593506116518987611bb3565b95508492506116608886611bb3565b945061166d600183612880565b9150611627565b855f0361168a575f1996505050505050506107e4565b845f036116a057600196505050505050506107e4565b6116df6116ae8560016128ac565b6116b88b87611401565b60ff168a6116c78760016128ac565b6116d18d89611401565b8e949392919060ff16611bd6565b9998505050505050505050565b81515f906116fb8360026128ac565b1115611705575f80fd5b50016002015161ffff1690565b81515f906117218360046128ac565b111561172b575f80fd5b50016004015163ffffffff1690565b60605f6117478484611548565b9050610960848483611424565b602081015181516060916107e49161176c9082611548565b84519190611424565b5f611781848484611cc6565b61178c878785611cc6565b149695505050505050565b5f6117af83838486516117aa9190612880565b611cc6565b6117c186868789516117aa9190612880565b1495945050505050565b5f806117d685610a94565b90505b8051516020820151101561095d57604081015161ffff166030146117fb575f80fd5b5f61180582611ce8565b90505f61181e5f835184611d049092919063ffffffff16565b905061182c81838989611da0565b1561184f5761184561183d84611754565b868385611e9b565b93505050506106cb565b505061185a81610b65565b6117d9565b5f6118778460e0015161187184611754565b90611b98565b61187f575f80fd5b815151602083015110156118f75761189e8460e0015161187184611754565b6118a6575f80fd5b5f6118b083611ce8565b90505f6118c95f835184611d049092919063ffffffff16565b90506118d781838888611da0565b156118e7576001925050506106cb565b50506118f282610b65565b61187f565b505f9392505050565b5f602082111561190e575f80fd5b835161191a83856128ac565b1115611924575f80fd5b506020919092018101519190036101000a5f1901191690565b5f603482111561194b575f80fd5b5f80805b84811015611a29575f8761196383896128ac565b8151811061197357611973612826565b01602001516001600160f81b0319169050600360fc1b81108015906119a65750603d60f91b6001600160f81b0319821611155b6119ae575f80fd5b604051806080016040528060478152602001612b5c604791396119d6603060f884901c612880565b815181106119e6576119e6612826565b0160209081015160f81c93508311156119fd575f80fd5b611a08600187612880565b8203611a145750611a29565b5060059290921b60ff8216179160010161194f565b505f611a368560056129d0565b9050611a436008866129e7565b5f03611a5a578160ff16600584901b179250611b29565b611a656008866129e7565b600203611a935760028260ff16901c60ff16600384901b179250600281611a8c9190612880565b9050611b29565b611a9e6008866129e7565b600403611ac55760048260ff16901c60ff16600184901b179250600481611a8c9190612880565b611ad06008866129e7565b600503611af75760018260ff16901c60ff16600484901b179250600181611a8c9190612880565b611b026008866129e7565b6007036100e55760038260ff16901c60ff16600284901b179250600381611a8c9190612880565b611b3581610100612880565b9290921b9695505050505050565b60208110611b7b5781518352611b5a6020846128ac565b9250611b676020836128ac565b9150611b74602082612880565b9050611b43565b905182516020929092036101000a5f190180199091169116179052565b5f815183511480156107e157506107e1835f845f8751611775565b5f611bbe8383611401565b60ff16611bcc8360016128ac565b6107e191906128ac565b5f8480831015611be35750815b6020878901810190858701015f5b83811015611cab5782518251808214611c7b575f6020871115611c1657505f19611c52565b600184611c24896020612880565b611c2e91906128ac565b611c399060086129d0565b611c44906002612ada565b611c4e9190612880565b1990505b5f611c61838316858416612ae5565b90508015611c78579750611cbc9650505050505050565b50505b611c866020866128ac565b9450611c936020856128ac565b93505050602081611ca491906128ac565b9050611bf1565b50611cb68589612ae5565b93505050505b9695505050505050565b82515f90611cd483856128ac565b1115611cde575f80fd5b5091016020012090565b60a081015160c08201516060916107e49161176c908290612880565b604080516080810182525f8082526020820181905291810191909152606080820152611d3a611d335f856128ac565b85906116ec565b61ffff168152611d55611d4e6002856128ac565b8590611401565b60ff166020820152611d6b611d4e6003856128ac565b60ff166040820152611d94611d816004856128ac565b611d8c600485612880565b869190611424565b60608201529392505050565b5f846020015160ff16600314611db757505f610960565b826020015160ff16856040015160ff1614611dd357505f610960565b5f611ddd85611f96565b90508360c0015161ffff168161ffff1614611dfb575f915050610960565b8551610100165f03611e10575f915050610960565b60408087015160ff165f908152600360209081529082902054855191860151925163de8f50a160e01b81526001600160a01b039091169263de8f50a192611e5c928a9290600401612b04565b602060405180830381865afa158015611e77573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611cbc9190612b3c565b5f80611ea683611f96565b90505b84515160208601511015611f8b5760a085015160c08601515f91611edb91611ed2908290612880565b88519190611d04565b90508161ffff16815f015161ffff1614611ef55750611f7d565b846040015160ff16816020015160ff1614611f105750611f7d565b60408051808201909152606081525f6020820152611f3c85518951611f3591906128ac565b8290611ff7565b50611f47818961205a565b50611f52818661205a565b50611f698260400151825f0151846060015161207f565b15611f7a5760019350505050610960565b50505b611f8685610b65565b611ea9565b505f95945050505050565b5f805f5b8351811015611fe8576001811615611fbe57611fb68482611401565b60ff16611fd0565b6008611fca8583611401565b60ff16901b5b611fde9061ffff16836128ac565b9150600101611f9a565b506106cb601082901c826128ac565b60408051808201909152606081525f60208201526120166020836129e7565b1561203e576120266020836129e7565b612031906020612880565b61203b90836128ac565b91505b506020828101829052604080518085525f815290920101905290565b60408051808201909152606081525f60208201526107e183845f015151848551612126565b60ff83165f908152600460205260408120546001600160a01b03166120a557505f6106cb565b60ff84165f90815260046020819052604091829020549151637bf41d7760e11b81526001600160a01b039092169163f7e83aee916120e79187918791016128e6565b602060405180830381865afa158015612102573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109609190612b3c565b60408051808201909152606081525f60208201528251821115612147575f80fd5b602085015161215683866128ac565b111561218957612189856121798760200151878661217491906128ac565b61220c565b6121849060026129d0565b612222565b5f808651805187602083010193508088870111156121a75787860182525b505050602084015b602084106121e757805182526121c66020836128ac565b91506121d36020826128ac565b90506121e0602085612880565b93506121af565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b5f8183111561221c5750816107e4565b50919050565b815161222e8383611ff7565b50610650838261205a565b60408051610140810182525f8082526020820181905291810182905260608082018390526080820183905260a0820183905260c082019290925260e08101829052610100810182905261012081019190915290565b6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b803560ff811681146122e3575f80fd5b919050565b6001600160a01b03811681146122fc575f80fd5b50565b5f8060408385031215612310575f80fd5b612319836122d3565b91506020830135612329816122e8565b809150509250929050565b803561ffff811681146122e3575f80fd5b5f8083601f840112612355575f80fd5b50813567ffffffffffffffff81111561236c575f80fd5b602083019150836020828501011115612383575f80fd5b9250929050565b5f805f6040848603121561239c575f80fd5b6123a584612334565b9250602084013567ffffffffffffffff8111156123c0575f80fd5b6123cc86828701612345565b9497909650939450505050565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff81118282101715612416576124166123d9565b604052919050565b5f82601f83011261242d575f80fd5b813567ffffffffffffffff811115612447576124476123d9565b61245a601f8201601f19166020016123ed565b81815284602083860101111561246e575f80fd5b816020850160208301375f918101602001919091529392505050565b5f6040828403121561249a575f80fd5b6040516040810167ffffffffffffffff82821081831117156124be576124be6123d9565b8160405282935084359150808211156124d5575f80fd5b6124e18683870161241e565b835260208501359150808211156124f6575f80fd5b506125038582860161241e565b6020830152505092915050565b5f805f805f60a08688031215612524575f80fd5b61252d86612334565b9450602086013567ffffffffffffffff80821115612549575f80fd5b61255589838a0161241e565b9550604088013591508082111561256a575f80fd5b61257689838a0161248a565b9450606088013591508082111561258b575f80fd5b61259789838a0161248a565b935060808801359150808211156125ac575f80fd5b506125b98882890161241e565b9150509295509295909350565b5f602082840312156125d6575f80fd5b81356107e1816122e8565b5f805f80608085870312156125f4575f80fd5b6125fd85612334565b9350602085013567ffffffffffffffff80821115612619575f80fd5b6126258883890161241e565b9450604087013591508082111561263a575f80fd5b6126468883890161248a565b9350606087013591508082111561265b575f80fd5b506126688782880161241e565b91505092959194509250565b5f805f60408486031215612686575f80fd5b833567ffffffffffffffff8082111561269d575f80fd5b818601915086601f8301126126b0575f80fd5b81356020828211156126c4576126c46123d9565b8160051b6126d38282016123ed565b928352848101820192828101908b8511156126ec575f80fd5b83870192505b8483101561272657823586811115612708575f80fd5b6127168d86838b010161248a565b83525091830191908301906126f2565b985050508701359250508082111561273c575f80fd5b506123cc86828701612345565b5f81518084525f5b8181101561276d57602081850181015186830182015201612751565b505f602082860101526020601f19601f83011685010191505092915050565b602081525f6107e16020830184612749565b5f602082840312156127ae575f80fd5b6107e1826122d3565b5f80604083850312156127c8575f80fd5b823567ffffffffffffffff808211156127df575f80fd5b6127eb8683870161248a565b93506020850135915080821115612800575f80fd5b5061280d8582860161241e565b9150509250929050565b818382375f9101908152919050565b634e487b7160e01b5f52603260045260245ffd5b600181811c9082168061284e57607f821691505b60208210810361221c57634e487b7160e01b5f52602260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b818103818111156107e4576107e461286c565b60ff81811683821601908111156107e4576107e461286c565b808201808211156107e4576107e461286c565b600382810b9082900b03637fffffff198112637fffffff821317156107e4576107e461286c565b604081525f6128f86040830185612749565b8281036020840152610a738185612749565b634e487b7160e01b5f52600160045260245ffd5b634e487b7160e01b5f52601260045260245ffd5b5f61ffff808416806129465761294661291e565b92169190910492915050565b60ff82811682821603908111156107e4576107e461286c565b606081525f61297d6060830186612749565b828103602084015261298f8186612749565b91505061ffff83166040830152949350505050565b5f602082840312156129b4575f80fd5b5051919050565b5f816129c9576129c961286c565b505f190190565b80820281158282048414176107e4576107e461286c565b5f826129f5576129f561291e565b500690565b600181815b80851115612a3457815f1904821115612a1a57612a1a61286c565b80851615612a2757918102915b93841c93908002906129ff565b509250929050565b5f82612a4a575060016107e4565b81612a5657505f6107e4565b8160018114612a6c5760028114612a7657612a92565b60019150506107e4565b60ff841115612a8757612a8761286c565b50506001821b6107e4565b5060208310610133831016604e8410600b8410161715612ab5575081810a6107e4565b612abf83836129fa565b805f1904821115612ad257612ad261286c565b029392505050565b5f6107e18383612a3c565b8181035f8312801583831316838312821617156108825761088261286c565b606081525f612b166060830186612749565b8281036020840152612b288186612749565b90508281036040840152611cbc8185612749565b5f60208284031215612b4c575f80fd5b815180151581146107e1575f80fdfe00010203040506070809ffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fffffffffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fa164736f6c6343000818000a","storage":{"0x0":"0xbd","0x1":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1471eb6eb2c5e789fc3de43f8ce62938c7d1836ec861730447e2ada8fd81017b":"0x17cda4e23f7237277952e075b1c48467aabfacc0","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563":"0x2b000100000e1000244a5c080249aac11d7b6f6446702e54a1607371607a","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e564":"0x1a41855200fd2ce1cdde32f24e8fb500002b000100000e1000244f660802e06d","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e565":"0x44b80b8f1d39a95c0b0d7c65d08458e880409bbc683457104237c7f8ec8d0000","0x3617319a054d772f909f7c479a2cebe5066e836a939412e32403c99029b92eff":"0x5155f5627bdf9795b3dbb8887001ada1eeba93f2","0x85aaa47b6dc46495bb8824fad4583769726fea36efd831a35556690b830a8fbe":"0x6e2822b8856749ed179c77140dbc5f5a27410a4","0x91da3fd0782e51c6b3986e9e672fd566868e71f3dbc2d6c2cd6fbb3e361af2a7":"0x49da8861c65460639925febe1fb4b5b59b443082","0x95c6356c1b7a542b884d2484ef785c9c7224e77e1016c20007bddc15c23b452f":"0x3f9151d3fd1a82dcc5091909589900fd60ee767ee090bba000000000","0xabd6e7cb50984ff9c2f3e18a2660c3353dadf4e3291deeb275dae2cd1e44fe05":"0x458f653495fb8d9bd0e7df468c2bf76d26c7bd9"}},"0x9dc64b2558b458a15c7f01c192d874ef460f0a29":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x9df67c91f1bfcb4d966cf764e9218685e7c59e8a":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101d1575f3560e01c80638b95dd71116100fe578063c86902331161009e578063e32954eb1161006e578063e32954eb146104f2578063e59d895d14610505578063e985e9c514610518578063f1cb7e0614610553575f80fd5b8063c869023314610435578063ce3decdc1461048c578063d5fa2b001461049f578063d700ff33146104b2575f80fd5b8063a8fa5682116100d9578063a8fa5682146103ac578063a9784b3e146103bf578063ac9650d814610402578063bc1c58d114610422575f80fd5b80638b95dd7114610373578063a22cb46514610386578063a4b91a0114610399575f80fd5b80633603d758116101745780635c98042b116101445780635c98042b14610327578063623195b01461033a578063691f34311461034d5780637737221314610360575f80fd5b80633603d758146102975780633b3b57de146102aa5780634cbf6ba4146102bd57806359d1d43c14610307575f80fd5b8063124a319c116101af578063124a319c146102255780632203ab561461025057806329cd62ea14610271578063304e6ade14610284575f80fd5b806301ffc9a7146101d55780630af179d7146101fd57806310f13a8c14610212575b5f80fd5b6101e86101e3366004612267565b610566565b60405190151581526020015b60405180910390f35b61021061020b3660046122bd565b610576565b005b610210610220366004612304565b610778565b610238610233366004612377565b610842565b6040516001600160a01b0390911681526020016101f4565b61026361025e3660046123a1565b610a87565b6040516101f492919061240e565b61021061027f366004612426565b610bb5565b6102106102923660046122bd565b610c4d565b6102106102a536600461244f565b610cc6565b6102386102b836600461244f565b610d64565b6101e86102cb3660046123a1565b5f82815260208181526040808320546001600160401b031683526006825280832094835293815283822092825291909152205461ffff16151590565b61031a6103153660046122bd565b610d93565b6040516101f49190612466565b61031a61033536600461244f565b610e6f565b610210610348366004612478565b610f2a565b61031a61035b36600461244f565b610fc2565b61021061036e3660046122bd565b610ffa565b6102106103813660046124da565b611073565b6102106103943660046125b9565b611150565b6102106103a73660046125e3565b61122a565b61031a6103ba36600461261e565b6112f6565b6101e86103cd36600461265a565b6001600160a01b039283165f908152600c60209081526040808320948352938152838220929094168152925290205460ff1690565b6104156104103660046126ce565b611342565b6040516101f4919061270c565b61031a61043036600461244f565b61134f565b61047761044336600461244f565b5f81815260208181526040808320546001600160401b03168352600982528083209383529290522080546001909101549091565b604080519283526020830191909152016101f4565b61021061049a3660046122bd565b611387565b6102106104ad36600461276e565b6114c3565b6104da6104c036600461244f565b5f602081905290815260409020546001600160401b031681565b6040516001600160401b0390911681526020016101f4565b61041561050036600461279c565b6114e9565b6102106105133660046127d6565b6114fe565b6101e8610526366004612808565b6001600160a01b039182165f908152600b6020908152604080832093909416825291909152205460ff1690565b61031a6105613660046123a1565b6115a2565b5f61057082611666565b92915050565b826105808161168a565b610588575f80fd5b5f84815260208181526040808320548151601f87018490048402810184019092528582528392606092839285926001600160401b039091169183916105eb9183918d908d90819084018382808284375f9201919091525092939250506118b79050565b90505b80515160208201511015610712578661ffff165f03610652578060400151965061061781611912565b94508460405160200161062a9190612834565b60405160208183030381529060405280519060200120925061064b81611933565b9350610704565b5f61065c82611912565b9050816040015161ffff168861ffff16141580610680575061067e868261194f565b155b15610702576106db8c878a8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250505060208801518d91506106d2908290612863565b8b51158a61196a565b8160400151975081602001519650809550858051906020012093506106ff82611933565b94505b505b61070d81611bc9565b6105ee565b5083511561076c5761076c8a85888c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c925061076391508290508f612863565b8951158861196a565b50505050505050505050565b846107828161168a565b61078a575f80fd5b5f86815260208181526040808320546001600160401b03168352600a8252808320898452909152908190209051849184916107c89089908990612876565b908152602001604051809103902091826107e3929190612901565b5084846040516107f4929190612876565b6040518091039020867f448bc014f1536726cf8d54ff3d6481ed3cbc683c2591ca204274009afa09b1a18787878760405161083294939291906129e2565b60405180910390a3505050505050565b5f82815260208181526040808320546001600160401b031683526007825280832085845282528083206001600160e01b0319851684529091528120546001600160a01b03168015610894579050610570565b5f61089e85610d64565b90506001600160a01b0381166108b8575f92505050610570565b6040516301ffc9a760e01b60248201525f9081906001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b1790525161090f9190612834565b5f60405180830381855afa9150503d805f8114610947576040519150601f19603f3d011682016040523d82523d5f602084013e61094c565b606091505b509150915081158061095f575060208151105b80610989575080601f8151811061097857610978612a13565b01602001516001600160f81b031916155b1561099a575f945050505050610570565b6040516001600160e01b0319871660248201526001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b179052516109f09190612834565b5f60405180830381855afa9150503d805f8114610a28576040519150601f19603f3d011682016040523d82523d5f602084013e610a2d565b606091505b509092509050811580610a41575060208151105b80610a6b575080601f81518110610a5a57610a5a612a13565b01602001516001600160f81b031916155b15610a7c575f945050505050610570565b509095945050505050565b5f82815260208181526040808320546001600160401b03168352600180835281842086855290925282206060915b848111610b975780851615801590610ae457505f8181526020839052604081208054610ae090612885565b9050115b15610b8f5780825f8381526020019081526020015f20808054610b0690612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610b3290612885565b8015610b7d5780601f10610b5457610100808354040283529160200191610b7d565b820191905f5260205f20905b815481529060010190602001808311610b6057829003601f168201915b50505050509050935093505050610bae565b60011b610ab5565b505f60405180602001604052805f81525092509250505b9250929050565b82610bbf8161168a565b610bc7575f80fd5b60408051808201825284815260208082018581525f888152808352848120546001600160401b031681526009835284812089825283528490209251835551600190920191909155815185815290810184905285917f1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e4691015b60405180910390a250505050565b82610c578161168a565b610c5f575f80fd5b5f84815260208181526040808320546001600160401b03168352600382528083208784529091529020610c93838583612901565b50837fe379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d75788484604051610c3f929190612a27565b80610cd08161168a565b610cd8575f80fd5b5f82815260208190526040812080546001600160401b031691610cfa83612a3a565b82546101009290920a6001600160401b038181021990931691831602179091555f84815260208181526040918290205491519190921681528492507fc6621ccb8f3f5a04bb6502154b2caf6adf5983fe76dfef1cfc9c42e3579db444910160405180910390a25050565b5f80610d7183603c6115a2565b905080515f03610d8357505f92915050565b610d8c81611cae565b9392505050565b5f83815260208181526040808320546001600160401b03168352600a825280832086845290915290819020905160609190610dd19085908590612876565b90815260200160405180910390208054610dea90612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610e1690612885565b8015610e615780601f10610e3857610100808354040283529160200191610e61565b820191905f5260205f20905b815481529060010190602001808311610e4457829003601f168201915b505050505090509392505050565b5f81815260208181526040808320546001600160401b03168352600482528083208484529091529020805460609190610ea790612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610ed390612885565b8015610f1e5780601f10610ef557610100808354040283529160200191610f1e565b820191905f5260205f20905b815481529060010190602001808311610f0157829003601f168201915b50505050509050919050565b83610f348161168a565b610f3c575f80fd5b83610f48600182612863565b1615610f52575f80fd5b5f85815260208181526040808320546001600160401b031683526001825280832088845282528083208784529091529020610f8e838583612901565b50604051849086907faa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe3905f90a35050505050565b5f81815260208181526040808320546001600160401b03168352600882528083208484529091529020805460609190610ea790612885565b826110048161168a565b61100c575f80fd5b5f84815260208181526040808320546001600160401b03168352600882528083208784529091529020611040838583612901565b50837fb7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f78484604051610c3f929190612a27565b8261107d8161168a565b611085575f80fd5b837f65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af75284846040516110b792919061240e565b60405180910390a2603c830361110e57837f52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd26110f284611cae565b6040516001600160a01b03909116815260200160405180910390a25b5f84815260208181526040808320546001600160401b0316835260028252808320878452825280832086845290915290206111498382612a5f565b5050505050565b6001600160a01b03821633036111bf5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084015b60405180910390fd5b335f818152600b602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6001600160a01b03821633036112825760405162461bcd60e51b815260206004820181905260248201527f53657474696e672064656c65676174652073746174757320666f722073656c6660448201526064016111b6565b335f818152600c6020908152604080832087845282528083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519384529286917ff0ddb3b04746704017f9aa8bd728fcc2c1d11675041205350018915f5e4750a0910160405180910390a4505050565b5f83815260208181526040808320546001600160401b03168352600582528083208684528252808320858452825280832061ffff851684529091529020805460609190610dea90612885565b6060610d8c5f8484611ccb565b5f81815260208181526040808320546001600160401b03168352600382528083208484529091529020805460609190610ea790612885565b826113918161168a565b611399575f80fd5b5f84815260208181526040808320546001600160401b031680845260048352818420888552909252822080549192916113d190612885565b80601f01602080910402602001604051908101604052809291908181526020018280546113fd90612885565b80156114485780601f1061141f57610100808354040283529160200191611448565b820191905f5260205f20905b81548152906001019060200180831161142b57829003601f168201915b505050506001600160401b0384165f9081526004602090815260408083208b8452909152902091925061147e9050858783612901565b50857f8f15ed4b723ef428f250961da8315675b507046737e19319fc1a4d81bfe87f858287876040516114b393929190612b1e565b60405180910390a2505050505050565b816114cd8161168a565b6114d5575f80fd5b6114e483603c61038185611e88565b505050565b60606114f6848484611ccb565b949350505050565b826115088161168a565b611510575f80fd5b5f84815260208181526040808320546001600160401b031683526007825280832087845282528083206001600160e01b031987168085529083529281902080546001600160a01b0319166001600160a01b038716908117909155905190815286917f7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa910160405180910390a350505050565b5f82815260208181526040808320546001600160401b0316835260028252808320858452825280832084845290915290208054606091906115e290612885565b80601f016020809104026020016040519081016040528092919081815260200182805461160e90612885565b80156116595780601f1061163057610100808354040283529160200191611659565b820191905f5260205f20905b81548152906001019060200180831161163c57829003601f168201915b5050505050905092915050565b5f6001600160e01b03198216631674750f60e21b1480610570575061057082611eb8565b5f336001600160a01b037f0000000000000000000000004fbf7b2f171336958be5d15ff762a5cff53635681614806116ea5750336001600160a01b037f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5616145b156116f757506001919050565b6040516302571be360e01b8152600481018390525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa15801561175c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117809190612b4d565b90507f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b0316816001600160a01b031603611845576040516331a9108f60e11b8152600481018490527f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b031690636352211e90602401602060405180830381865afa15801561181e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118429190612b4d565b90505b6001600160a01b03811633148061187e57506001600160a01b0381165f908152600b6020908152604080832033845290915290205460ff165b80610d8c57506001600160a01b0381165f908152600c60209081526040808320868452825280832033845290915290205460ff16610d8c565b6118ff6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261057081611bc9565b602081015181516060916105709161192a9082611edc565b84519190611f33565b60a081015160c08201516060916105709161192a908290612863565b5f81518351148015610d8c5750610d8c835f845f8751611fa7565b865160208801205f61197d878787611f33565b90508315611aa1576001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c168452909152902080546119c690612885565b159050611a23576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611a0783612b68565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091528120611a62916121f9565b897f03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a12078a8a604051611a94929190612b84565b60405180910390a261076c565b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c16845290915290208054611ae290612885565b90505f03611b40576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611b2483612ba9565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091529020611b808282612a5f565b50897f52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b8a8a84604051611bb593929190612bbf565b60405180910390a250505050505050505050565b60c08101516020820181905281515111611be05750565b5f611bf2825f01518360200151611edc565b8260200151611c019190612bed565b8251909150611c109082611fc9565b61ffff166040830152611c24600282612bed565b8251909150611c339082611fc9565b61ffff166060830152611c47600282612bed565b8251909150611c569082611fef565b63ffffffff166080830152611c6c600482612bed565b82519091505f90611c7d9083611fc9565b61ffff169050611c8e600283612bed565b60a084018190529150611ca18183612bed565b60c0909301929092525050565b5f8151601414611cbc575f80fd5b5060200151600160601b900490565b6060816001600160401b03811115611ce557611ce56124c6565b604051908082528060200260200182016040528015611d1857816020015b6060815260200190600190039081611d035790505b5090505f5b82811015611e80578415611dd8575f848483818110611d3e57611d3e612a13565b9050602002810190611d509190612c00565b611d5f91602491600491612c42565b611d6891612c69565b9050858114611dd65760405162461bcd60e51b815260206004820152603460248201527f6d756c746963616c6c3a20416c6c207265636f726473206d7573742068617665604482015273040c240dac2e8c6d0d2dcce40dcc2dacad0c2e6d60631b60648201526084016111b6565b505b5f8030868685818110611ded57611ded612a13565b9050602002810190611dff9190612c00565b604051611e0d929190612876565b5f60405180830381855af49150503d805f8114611e45576040519150601f19603f3d011682016040523d82523d5f602084013e611e4a565b606091505b509150915081611e58575f80fd5b80848481518110611e6b57611e6b612a13565b60209081029190910101525050600101611d1d565b509392505050565b604080516014808252818301909252606091602082018180368337505050600160601b9290920260208301525090565b5f6001600160e01b0319821663c869023360e01b1480610570575061057082612017565b5f815b83518110611eef57611eef612c86565b5f611efa858361203b565b60ff169050611f0a816001612bed565b611f149083612bed565b9150805f03611f235750611f29565b50611edf565b6114f68382612863565b8251606090611f428385612bed565b1115611f4c575f80fd5b5f826001600160401b03811115611f6557611f656124c6565b6040519080825280601f01601f191660200182016040528015611f8f576020820181803683370190505b50905060208082019086860101610a7c82828761205e565b5f611fb38484846120b3565b611fbe8787856120b3565b149695505050505050565b81515f90611fd8836002612bed565b1115611fe2575f80fd5b50016002015161ffff1690565b81515f90611ffe836004612bed565b1115612008575f80fd5b50016004015163ffffffff1690565b5f6001600160e01b0319821663691f343160e01b14806105705750610570826120d5565b5f82828151811061204e5761204e612a13565b016020015160f81c905092915050565b602081106120965781518352612075602084612bed565b9250612082602083612bed565b915061208f602082612863565b905061205e565b905182516020929092036101000a5f190180199091169116179052565b82515f906120c18385612bed565b11156120cb575f80fd5b5091016020012090565b5f6001600160e01b031982166304928c6760e21b14806105705750610570825f6001600160e01b0319821663547d2b4160e11b148061212457506001600160e01b03198216635c98042b60e01b145b806105705750610570825f6001600160e01b0319821663bc1c58d160e01b14806105705750610570825f6001600160e01b03198216631d9dabef60e11b148061217d57506001600160e01b031982166378e5bf0360e11b145b806105705750610570825f6001600160e01b03198216631101d5ab60e11b14806105705750610570825f6001600160e01b0319821663d700ff3360e01b14806105705750610570825f6001600160e01b03198216634fbf043360e01b148061057057506301ffc9a760e01b6001600160e01b0319831614610570565b50805461220590612885565b5f825580601f10612214575050565b601f0160209004905f5260205f20908101906122309190612233565b50565b5b80821115612247575f8155600101612234565b5090565b80356001600160e01b031981168114612262575f80fd5b919050565b5f60208284031215612277575f80fd5b610d8c8261224b565b5f8083601f840112612290575f80fd5b5081356001600160401b038111156122a6575f80fd5b602083019150836020828501011115610bae575f80fd5b5f805f604084860312156122cf575f80fd5b8335925060208401356001600160401b038111156122eb575f80fd5b6122f786828701612280565b9497909650939450505050565b5f805f805f60608688031215612318575f80fd5b8535945060208601356001600160401b0380821115612335575f80fd5b61234189838a01612280565b90965094506040880135915080821115612359575f80fd5b5061236688828901612280565b969995985093965092949392505050565b5f8060408385031215612388575f80fd5b823591506123986020840161224b565b90509250929050565b5f80604083850312156123b2575f80fd5b50508035926020909101359150565b5f5b838110156123db5781810151838201526020016123c3565b50505f910152565b5f81518084526123fa8160208601602086016123c1565b601f01601f19169290920160200192915050565b828152604060208201525f6114f660408301846123e3565b5f805f60608486031215612438575f80fd5b505081359360208301359350604090920135919050565b5f6020828403121561245f575f80fd5b5035919050565b602081525f610d8c60208301846123e3565b5f805f806060858703121561248b575f80fd5b843593506020850135925060408501356001600160401b038111156124ae575f80fd5b6124ba87828801612280565b95989497509550505050565b634e487b7160e01b5f52604160045260245ffd5b5f805f606084860312156124ec575f80fd5b833592506020840135915060408401356001600160401b0380821115612510575f80fd5b818601915086601f830112612523575f80fd5b813581811115612535576125356124c6565b604051601f8201601f19908116603f0116810190838211818310171561255d5761255d6124c6565b81604052828152896020848701011115612575575f80fd5b826020860160208301375f6020848301015280955050505050509250925092565b6001600160a01b0381168114612230575f80fd5b80358015158114612262575f80fd5b5f80604083850312156125ca575f80fd5b82356125d581612596565b9150612398602084016125aa565b5f805f606084860312156125f5575f80fd5b83359250602084013561260781612596565b9150612615604085016125aa565b90509250925092565b5f805f60608486031215612630575f80fd5b8335925060208401359150604084013561ffff8116811461264f575f80fd5b809150509250925092565b5f805f6060848603121561266c575f80fd5b833561267781612596565b925060208401359150604084013561264f81612596565b5f8083601f84011261269e575f80fd5b5081356001600160401b038111156126b4575f80fd5b6020830191508360208260051b8501011115610bae575f80fd5b5f80602083850312156126df575f80fd5b82356001600160401b038111156126f4575f80fd5b6127008582860161268e565b90969095509350505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b8281101561276157603f1988860301845261274f8583516123e3565b94509285019290850190600101612733565b5092979650505050505050565b5f806040838503121561277f575f80fd5b82359150602083013561279181612596565b809150509250929050565b5f805f604084860312156127ae575f80fd5b8335925060208401356001600160401b038111156127ca575f80fd5b6122f78682870161268e565b5f805f606084860312156127e8575f80fd5b833592506127f86020850161224b565b9150604084013561264f81612596565b5f8060408385031215612819575f80fd5b823561282481612596565b9150602083013561279181612596565b5f82516128458184602087016123c1565b9190910192915050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156105705761057061284f565b818382375f9101908152919050565b600181811c9082168061289957607f821691505b6020821081036128b757634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156114e457805f5260205f20601f840160051c810160208510156128e25750805b601f840160051c820191505b81811015611149575f81556001016128ee565b6001600160401b03831115612918576129186124c6565b61292c836129268354612885565b836128bd565b5f601f84116001811461295d575f85156129465750838201355b5f19600387901b1c1916600186901b178355611149565b5f83815260208120601f198716915b8281101561298c578685013582556020948501946001909201910161296c565b50868210156129a8575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b604081525f6129f56040830186886129ba565b8281036020840152612a088185876129ba565b979650505050505050565b634e487b7160e01b5f52603260045260245ffd5b602081525f6114f66020830184866129ba565b5f6001600160401b03808316818103612a5557612a5561284f565b6001019392505050565b81516001600160401b03811115612a7857612a786124c6565b612a8c81612a868454612885565b846128bd565b602080601f831160018114612abf575f8415612aa85750858301515b5f19600386901b1c1916600185901b178555612b16565b5f85815260208120601f198616915b82811015612aed57888601518255948401946001909101908401612ace565b5085821015612b0a57878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b604081525f612b3060408301866123e3565b8281036020840152612b438185876129ba565b9695505050505050565b5f60208284031215612b5d575f80fd5b8151610d8c81612596565b5f61ffff821680612b7b57612b7b61284f565b5f190192915050565b604081525f612b9660408301856123e3565b905061ffff831660208301529392505050565b5f61ffff808316818103612a5557612a5561284f565b606081525f612bd160608301866123e3565b61ffff851660208401528281036040840152612b4381856123e3565b808201808211156105705761057061284f565b5f808335601e19843603018112612c15575f80fd5b8301803591506001600160401b03821115612c2e575f80fd5b602001915036819003821315610bae575f80fd5b5f8085851115612c50575f80fd5b83861115612c5c575f80fd5b5050820193919092039150565b80356020831015610570575f19602084900360031b1b1692915050565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{}},"0xa06a63155145b7f2fda96d9658ec7fef3b9dcf76":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b506004361061004a575f3560e01c80634ce34aa21461004e578063899e104c1461007e5780638df25d9214610091578063c4e8fcb5146100a4575b5f80fd5b61006161005c366004610834565b6100b9565b6040516001600160e01b0319909116815260200160405180910390f35b61006161008c3660046108b4565b610121565b61006161009f36600461091b565b61018a565b6100b76100b2366004610969565b6101c7565b005b5f335f525f60205260405f20546100dd576349ed56f960e11b5f523360045260245ffd5b815f5b81811015610110576101088585838181106100fd576100fd6109a2565b905060c002016102c4565b6001016100e0565b50632671a55160e11b949350505050565b5f335f525f60205260405f2054610145576349ed56f960e11b5f523360045260245ffd5b835f5b8181101561016d576101658787838181106100fd576100fd6109a2565b600101610148565b506101788484610436565b50632267841360e21b95945050505050565b5f335f525f60205260405f20546101ae576349ed56f960e11b5f523360045260245ffd5b6101b88383610436565b506346f92ec960e11b92915050565b336001600160a01b037f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c1614610210576040516336abb4df60e11b815260040160405180910390fd5b6001600160a01b0382165f9081526020819052604090205481151560ff909116151503610268576040516349271a0f60e11b81526001600160a01b038316600482015281151560248201526044015b60405180910390fd5b6001600160a01b0382165f8181526020818152604091829020805460ff191685151590811790915591519182527fae63067d43ac07563b7eb8db6595635fc77f1578a2a5ea06ba91b63e2afa37e2910160405180910390a25050565b60016102d360208301836109ca565b60038111156102e4576102e46109b6565b03610329576103266102fc60408301602084016109ef565b61030c60608401604085016109ef565b61031c60808501606086016109ef565b8460a0013561056c565b50565b600261033860208301836109ca565b6003811115610349576103496109b6565b036103b6578060a00135600114610379576040516369f9582760e01b815260a0820135600482015260240161025f565b61032661038c60408301602084016109ef565b61039c60608401604085016109ef565b6103ac60808501606086016109ef565b8460800135610660565b60036103c560208301836109ca565b60038111156103d6576103d66109b6565b0361041d576103266103ee60408301602084016109ef565b6103fe60608401604085016109ef565b61040e60808501606086016109ef565b84608001358560a00135610715565b604051631e4cbc7f60e21b815260040160405180910390fd5b808280631759616b60e11b6020525f5b8381101561055f57823582018035803b61046b57635f15d6725f52806020526024601cfd5b60a08201358060051b60c0018060808501351460a0606086013514168185013583141615905080156104a657633ae8821360e21b5f5260045ffd5b506020860195506080602084016024378060061b60400190508060a00160a4525f8160c401528060c4018160a0850160c4375f808260205f875af1935083610550573d1561053057601f3d0160051c91508060051c826003028184111561051a578184036003028280028580020360091c01015b5a60208201101561052d573d5f803e3d5ffd5b50505b6357e222f160e11b5f528260045260c0606452608451602001608452805ffd5b50505050600181019050610446565b5050505060806040525050565b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166106515780873b15151661065157806106405781610623573d1561060257601f3d0160051c8360051c81600302818311156105eb578183036003028280028480020360091c01015b5a6020820110156105fe573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b833b61067757635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af180610707573d156106e557601f3d0160051c8260051c81600302818311156106ce578183036003028280028480020360091c01015b5a6020820110156106e1573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b61072c57635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af1806107d1573d156107b057601f3d0160051c8560051c8160030281831115610799578183036003028280028480020360091c01015b5a6020820110156107ac573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b5f8083601f8401126107fc575f80fd5b50813567ffffffffffffffff811115610813575f80fd5b60208301915083602060c08302850101111561082d575f80fd5b9250929050565b5f8060208385031215610845575f80fd5b823567ffffffffffffffff81111561085b575f80fd5b610867858286016107ec565b90969095509350505050565b5f8083601f840112610883575f80fd5b50813567ffffffffffffffff81111561089a575f80fd5b6020830191508360208260051b850101111561082d575f80fd5b5f805f80604085870312156108c7575f80fd5b843567ffffffffffffffff808211156108de575f80fd5b6108ea888389016107ec565b90965094506020870135915080821115610902575f80fd5b5061090f87828801610873565b95989497509550505050565b5f806020838503121561092c575f80fd5b823567ffffffffffffffff811115610942575f80fd5b61086785828601610873565b80356001600160a01b0381168114610964575f80fd5b919050565b5f806040838503121561097a575f80fd5b6109838361094e565b915060208301358015158114610997575f80fd5b809150509250929050565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52602160045260245ffd5b5f602082840312156109da575f80fd5b8135600481106109e8575f80fd5b9392505050565b5f602082840312156109ff575f80fd5b6109e88261094e56fea164736f6c6343000818000a","storage":{}},"0xaa33d7188eb4b4a51c37199eaad2f73cf2bf0204":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0xac52f68f31577e44ae0c7e95a42dc9eb574b9383":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a424740014610090575b600080fd5b610059610054366004610cac565b6100b3565b6040516100669190610d9b565b60405180910390f35b61008261007d366004610dae565b610162565b604051908152602001610066565b6100a361009e366004610cac565b6101d6565b6040519015158152602001610066565b606060005a90506101576100ca6020870187610ddc565b6001546001600160a01b03166040880135846100e960608b018b610df9565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061023592505050565b9150505b9392505050565b600154604051636ccbae5f60e01b8152600481018390526000916001600160a01b031690636ccbae5f90602401602060405180830381865afa1580156101ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d09190610e40565b92915050565b600061022d6101e485610ef1565b600154604080516020601f88018190048102820181019092528681526001600160a01b039092169190879087908190840183828082843760009201919091525061030d92505050565b949350505050565b6060600080876001600160a01b0316866102518b8a8989610355565b60405161025e9190610f9b565b60006040518083038160008787f1925050503d806000811461029c576040519150601f19603f3d011682016040523d82523d6000602084013e6102a1565b606091505b5090925090506102b2603f87610fb7565b5a116102c0576102c0610fd9565b61030082826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061040a565b9998505050505050505050565b600061031a848484610443565b801561022d575060608401516020908101516001600160e01b031990811660009081529182905260409091205460e01b16151561022d565b50565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036103e75760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526103ff82828661058c565b979650505050505050565b6060831561041957508161015b565b8251156104295782518084602001fd5b8160405162461bcd60e51b81526004016103de9190610d9b565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561048a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104ae9190610e40565b9050600061055c8660600151805190602001208688602001516040516020016104fc9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561058257508551610582906001600160a01b03168286610a38565b9695505050505050565b60606001600160e01b03198416631de5861160e31b0361061a576000806000858060200190518101906105bf9190610fef565b92509250925086838383886040516024016105dd9493929190611032565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152935061015b92505050565b6001600160e01b03198416636debcb8d60e01b0361064b576000806000858060200190518101906105bf9190610fef565b6001600160e01b0319841663280d9b0560e01b036106dd576000806000808680602001905181019061067d91906110aa565b935093509350935087848484848a60405160240161069f959493929190611118565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152945061015b9350505050565b6001600160e01b031984166361603dd960e01b0361075c5760008380602001905181019061070b9190610e40565b905084818460405160240161072192919061115d565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152915061015b9050565b6001600160e01b0319841663b34f33c560e01b036107ab5760008060008580602001905181019061078d9190611176565b92509250925086838383886040516024016105dd94939291906111d0565b6001600160e01b03198416633013529360e01b036107dc5760008060008580602001905181019061078d9190611176565b6001600160e01b031984166307eca39560e01b03610830576000806000808680602001905181019061080e9190611209565b935093509350935087848484848a60405160240161069f95949392919061127e565b6001600160e01b031984166368b6154f60e01b03610862576000806000808680602001905181019061067d91906110aa565b6001600160e01b0319841663341de35b60e21b03610894576000806000808680602001905181019061067d91906110aa565b6001600160e01b03198416637a84860f60e11b0361092d576000806000806000878060200190518101906108c891906112cb565b945094509450945094508885858585858c6040516024016108ee96959493929190611360565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152955061015b945050505050565b6001600160e01b03198416636fab95b360e01b036109b2576000808480602001905181019061095c91906113b9565b915091508582828660405160240161097693929190611400565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925061015b915050565b6001600160e01b0319841663288f888960e11b0361015b57600080848060200190518101906109e1919061142b565b91509150858282866040516024016109fb93929190611459565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925050509392505050565b6000806000610a478585610b7a565b90925090506000816004811115610a6057610a60611489565b148015610a7e5750856001600160a01b0316826001600160a01b0316145b15610a8e5760019250505061015b565b600080876001600160a01b0316631626ba7e60e01b8888604051602401610ab692919061115d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051610af49190610f9b565b600060405180830381855afa9150503d8060008114610b2f576040519150601f19603f3d011682016040523d82523d6000602084013e610b34565b606091505b5091509150818015610b47575080516020145b8015610b6e57508051630b135d3f60e11b90610b6c9083016020908101908401610e40565b145b98975050505050505050565b6000808251604103610bb05760208301516040840151606085015160001a610ba487828585610bbf565b94509450505050610bb8565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610bf65750600090506003610ca3565b8460ff16601b14158015610c0e57508460ff16601c14155b15610c1f5750600090506004610ca3565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610c73573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610c9c57600060019250925050610ca3565b9150600090505b94509492505050565b600080600060408486031215610cc157600080fd5b833567ffffffffffffffff80821115610cd957600080fd5b9085019060808288031215610ced57600080fd5b90935060208501359080821115610d0357600080fd5b818601915086601f830112610d1757600080fd5b813581811115610d2657600080fd5b876020828501011115610d3857600080fd5b6020830194508093505050509250925092565b60005b83811015610d66578181015183820152602001610d4e565b50506000910152565b60008151808452610d87816020860160208601610d4b565b601f01601f19169290920160200192915050565b60208152600061015b6020830184610d6f565b600060208284031215610dc057600080fd5b5035919050565b6001600160a01b038116811461035257600080fd5b600060208284031215610dee57600080fd5b813561015b81610dc7565b6000808335601e19843603018112610e1057600080fd5b83018035915067ffffffffffffffff821115610e2b57600080fd5b602001915036819003821315610bb857600080fd5b600060208284031215610e5257600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610e9257610e92610e59565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ec157610ec1610e59565b604052919050565b600067ffffffffffffffff821115610ee357610ee3610e59565b50601f01601f191660200190565b600060808236031215610f0357600080fd5b610f0b610e6f565b8235610f1681610dc7565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610f4657600080fd5b840136601f820112610f5757600080fd5b8035610f6a610f6582610ec9565b610e98565b8181523684838501011115610f7e57600080fd5b818484018583013760009181019093015250606082015292915050565b60008251610fad818460208701610d4b565b9190910192915050565b600082610fd457634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b60008060006060848603121561100457600080fd5b835161100f81610dc7565b602085015190935061102081610dc7565b80925050604084015190509250925092565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061058290830184610d6f565b600082601f83011261107657600080fd5b8151611084610f6582610ec9565b81815284602083860101111561109957600080fd5b61022d826020830160208701610d4b565b600080600080608085870312156110c057600080fd5b84516110cb81610dc7565b60208601519094506110dc81610dc7565b60408601516060870151919450925067ffffffffffffffff81111561110057600080fd5b61110c87828801611065565b91505092959194509250565b6001600160a01b038681168252851660208201526040810184905260a06060820181905260009061114b90830185610d6f565b8281036080840152610b6e8185610d6f565b82815260406020820152600061022d6040830184610d6f565b60008060006060848603121561118b57600080fd5b835161119681610dc7565b60208501516040860151919450925067ffffffffffffffff8111156111ba57600080fd5b6111c686828701611065565b9150509250925092565b60018060a01b03851681528360208201526080604082015260006111f76080830185610d6f565b82810360608401526103ff8185610d6f565b6000806000806080858703121561121f57600080fd5b845161122a81610dc7565b60208601516040870151919550935067ffffffffffffffff8082111561124f57600080fd5b61125b88838901611065565b9350606087015191508082111561127157600080fd5b5061110c87828801611065565b60018060a01b038616815284602082015260a0604082015260006112a560a0830186610d6f565b82810360608401526112b78186610d6f565b90508281036080840152610b6e8185610d6f565b600080600080600060a086880312156112e357600080fd5b85516112ee81610dc7565b60208701519095506112ff81610dc7565b60408701516060880151919550935067ffffffffffffffff8082111561132457600080fd5b61133089838a01611065565b9350608088015191508082111561134657600080fd5b5061135388828901611065565b9150509295509295909350565b6001600160a01b038781168252861660208201526040810185905260c06060820181905260009061139390830186610d6f565b82810360808401526113a58186610d6f565b905082810360a08401526103008185610d6f565b600080604083850312156113cc57600080fd5b82519150602083015167ffffffffffffffff8111156113ea57600080fd5b6113f685828601611065565b9150509250929050565b8381526060602082015260006114196060830185610d6f565b82810360408401526105828185610d6f565b6000806040838503121561143e57600080fd5b825161144981610dc7565b6020939093015192949293505050565b60018060a01b03841681528260208201526060604082015260006114806060830184610d6f565b95945050505050565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a","storage":{"0x1":"0x7bb6cd9be29fab783c0b494a06fed8b2e2596b7a","0xd8b896d609e853134f3f02ce62d8049b2fdfe9356134f6d548fb1beda30db79":"0x30135293","0x4f457f36b92dc6b16c281e5877e2d8d39630135c1b7246fa9174035e1efcefbd":"0x6fab95b3","0x6b7ba3fe9941e089de60543da4a1deaef065baa963222951b2f9a138f9960820":"0x6debcb8d","0x70cff8e4ee4af5aa154324d45bcf258212c235bbe79f0707bb6273110ef4e13a":"0xf5090c1e","0x73efb0e44094dbabc6bbeecd3be1d81f272157c2dae2d647e6315f150b0b1dd2":"0xd0778d6c","0x8b1c4edded6644848281eab03ac2c319242d62b2057cffa3dd4540715bbc155e":"0xef2c3088","0xbeb5ea8fc2aeae43b7170220434aa4429fb067f0866ae25514b29f647641ca8c":"0x511f1112","0xca659f6eb372ce950e69d4d474290a6a4285f6a06a6128ca9f45419371a1e997":"0xb34f33c5","0xd12e300b5f35ba5198dd81dab97a512a154a0ad0e2cda788abdc22deba64f2a7":"0x280d9b05","0xd5453e7f4fff276a1d42f717d1db50865c284ae707a15bd6a590a3895656f27c":"0x7eca395","0xea2575ae4056f10294a848ca5ed6d215dffd1b80838142770bc441f7df607d71":"0x61603dd9","0xf8ca3ef1e3d09a0d88e209301f12626c90bec3ea586d4bce2c7a58e7eae8278f":"0x68b6154f"}},"0xb17aae5b3a7815433fc82cfd67ea245767894f03":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061012a5760003560e01c80638d839ffe116100ab578063aeb8ce9b1161006f578063aeb8ce9b146105d7578063ce1e09c014610688578063f14fcbc81461069d578063f2fde38b146106c7578063f49826be146106fa578063f7a16963146107b95761012a565b80638d839ffe1461045d5780638da5cb5b146104725780638f32d59b146104a35780639791c097146104b8578063acf1a841146105695761012a565b80637e324479116100f25780637e324479146102b8578063839df945146102e857806383e7f6ff1461031257806385f6d155146103c55780638a95b09f146104485761012a565b806301ffc9a71461012f5780633ccfd60b146101775780633d86c52f1461018e578063530e784f14610270578063715018a6146102a3575b600080fd5b34801561013b57600080fd5b506101636004803603602081101561015257600080fd5b50356001600160e01b031916610881565b604080519115158252519081900360200190f35b34801561018357600080fd5b5061018c610a12565b005b34801561019a57600080fd5b5061025e600480360360a08110156101b157600080fd5b810190602081018135600160201b8111156101cb57600080fd5b8201836020820111156101dd57600080fd5b803590602001918460018302840111600160201b831117156101fe57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b0383358116945060208401359360408101358216935060600135169050610a53565b60408051918252519081900360200190f35b34801561027c57600080fd5b5061018c6004803603602081101561029357600080fd5b50356001600160a01b0316610b42565b3480156102af57600080fd5b5061018c610ba3565b3480156102c457600080fd5b5061018c600480360360408110156102db57600080fd5b5080359060200135610bfe565b3480156102f457600080fd5b5061025e6004803603602081101561030b57600080fd5b5035610c1a565b34801561031e57600080fd5b5061025e6004803603604081101561033557600080fd5b810190602081018135600160201b81111561034f57600080fd5b82018360208201111561036157600080fd5b803590602001918460018302840111600160201b8311171561038257600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505091359250610c2c915050565b61018c600480360360808110156103db57600080fd5b810190602081018135600160201b8111156103f557600080fd5b82018360208201111561040757600080fd5b803590602001918460018302840111600160201b8311171561042857600080fd5b91935091506001600160a01b038135169060208101359060400135610d9e565b34801561045457600080fd5b5061025e610de9565b34801561046957600080fd5b5061025e610df0565b34801561047e57600080fd5b50610487610df6565b604080516001600160a01b039092168252519081900360200190f35b3480156104af57600080fd5b50610163610e05565b3480156104c457600080fd5b50610163600480360360208110156104db57600080fd5b810190602081018135600160201b8111156104f557600080fd5b82018360208201111561050757600080fd5b803590602001918460018302840111600160201b8311171561052857600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610e16945050505050565b61018c6004803603604081101561057f57600080fd5b810190602081018135600160201b81111561059957600080fd5b8201836020820111156105ab57600080fd5b803590602001918460018302840111600160201b831117156105cc57600080fd5b919350915035610e2b565b3480156105e357600080fd5b50610163600480360360208110156105fa57600080fd5b810190602081018135600160201b81111561061457600080fd5b82018360208201111561062657600080fd5b803590602001918460018302840111600160201b8311171561064757600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610fcf945050505050565b34801561069457600080fd5b5061025e611069565b3480156106a957600080fd5b5061018c600480360360208110156106c057600080fd5b503561106f565b3480156106d357600080fd5b5061018c600480360360208110156106ea57600080fd5b50356001600160a01b03166110a1565b34801561070657600080fd5b5061025e6004803603606081101561071d57600080fd5b810190602081018135600160201b81111561073757600080fd5b82018360208201111561074957600080fd5b803590602001918460018302840111600160201b8311171561076a57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b0383351693505050602001356110bb565b61018c600480360360c08110156107cf57600080fd5b810190602081018135600160201b8111156107e957600080fd5b8201836020820111156107fb57600080fd5b803590602001918460018302840111600160201b8311171561081c57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b038335811694506020840135936040810135935060608101358216925060800135166110d3565b604080517f737570706f727473496e74657266616365286279746573342900000000000000815290519081900360190190206000906001600160e01b0319838116911614806109c05750604080517472656e657728737472696e672c75696e743235362960581b815290519081900360150181209080602861186a8239604080519182900360280182206e636f6d6d697428627974657333322960881b8352905191829003600f01822090925090806026611892823960260190506040518091039020604051808070617661696c61626c6528737472696e672960781b8152506011019050604051809103902060405180807f72656e74507269636528737472696e672c75696e7432353629000000000000008152506019019050604051809103902018181818186001600160e01b031916826001600160e01b031916145b80610a0c5750604051808061182a60409139604080519182900301812091508060426118b8823960420190506040518091039020186001600160e01b031916826001600160e01b031916145b92915050565b610a1a610e05565b610a2357600080fd5b6040513390303180156108fc02916000818181858888f19350505050158015610a50573d6000803e3d6000fd5b50565b845160208601206000906001600160a01b038416158015610a7b57506001600160a01b038316155b15610acb57604080516020808201939093526bffffffffffffffffffffffff19606089901b1681830152605480820188905282518083039091018152607490910190915280519101209050610b39565b6001600160a01b038416610ade57600080fd5b604080516020808201939093526bffffffffffffffffffffffff19606089811b82168385015287811b8216605484015286901b166068820152607c80820188905282518083039091018152609c909101909152805191012090505b95945050505050565b610b4a610e05565b610b5357600080fd5b600280546001600160a01b0319166001600160a01b0383811691909117918290556040519116907ff261845a790fe29bbd6631e2ca4a5bdc83e6eed7c3271d9590d97287e00e912390600090a250565b610bab610e05565b610bb457600080fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b610c06610e05565b610c0f57600080fd5b600391909155600455565b60056020526000908152604090205481565b815160208084019190912060025460015460408051636b727d4360e11b81526004810185905290516000956001600160a01b03948516946350e9a715948a9491169263d6e4fa8692602480840193919291829003018186803b158015610c9157600080fd5b505afa158015610ca5573d6000803e3d6000fd5b505050506040513d6020811015610cbb57600080fd5b50516040516001600160e01b031960e085901b168152602481018290526044810188905260606004820190815283516064830152835189928291608490910190602087019080838360005b83811015610d1e578181015183820152602001610d06565b50505050905090810190601f168015610d4b5780820380516001836020036101000a031916815260200191505b5094505050505060206040518083038186803b158015610d6a57600080fd5b505afa158015610d7e573d6000803e3d6000fd5b505050506040513d6020811015610d9457600080fd5b5051949350505050565b610de285858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250889350879250869150806110d3565b5050505050565b6224ea0081565b60035481565b6000546001600160a01b031690565b6000546001600160a01b0316331490565b60006003610e2383611646565b101592915050565b6000610e6e84848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250869250610c2c915050565b905080341015610e7d57600080fd5b60008484604051808383808284376040805193909101839003832060015463c475abff60e01b855260048501829052602485018b90529151909750600096506001600160a01b03909116945063c475abff93506044808401936020935082900301818787803b158015610eef57600080fd5b505af1158015610f03573d6000803e3d6000fd5b505050506040513d6020811015610f1957600080fd5b5051905034831015610f565760405133903485900380156108fc02916000818181858888f19350505050158015610f54573d6000803e3d6000fd5b505b817f3da24c024582931cfaf8267d8ed24d13a82a8068d5bd337d30ec45cea4e506ae8787868560405180806020018481526020018381526020018281038252868682818152602001925080828437600083820152604051601f909101601f191690920182900397509095505050505050a2505050505050565b80516020820120600090610fe283610e16565b80156110625750600154604080516312dc929d60e31b81526004810184905290516001600160a01b03909216916396e494e891602480820192602092909190829003018186803b15801561103557600080fd5b505afa158015611049573d6000803e3d6000fd5b505050506040513d602081101561105f57600080fd5b50515b9392505050565b60045481565b6004546000828152600560205260409020544291011061108e57600080fd5b6000908152600560205260409020429055565b6110a9610e05565b6110b257600080fd5b610a508161172e565b60006110cb848484600080610a53565b949350505050565b60006110e28787868686610a53565b905060006110f188878461179c565b885160208a01209091508060006001600160a01b038716156114ac5760015460408051633f2891eb60e21b815260048101859052306024820152604481018c905290516001600160a01b039092169163fca247ac916064808201926020929091908290030181600087803b15801561116857600080fd5b505af115801561117c573d6000803e3d6000fd5b505050506040513d602081101561119257600080fd5b505160015460408051630ddf7fcb60e41b815290519293506000926001600160a01b039092169163ddf7fcb091600480820192602092909190829003018186803b1580156111df57600080fd5b505afa1580156111f3573d6000803e3d6000fd5b505050506040513d602081101561120957600080fd5b50516040805160208181019390935280820187905281518082038301815260608201808452815191850191909120600154633f15457f60e01b90925292519294506001600160a01b031692633f15457f92606480840193829003018186803b15801561127457600080fd5b505afa158015611288573d6000803e3d6000fd5b505050506040513d602081101561129e57600080fd5b505160408051630c4b7b8560e11b8152600481018490526001600160a01b038b8116602483015291519190921691631896f70a91604480830192600092919082900301818387803b1580156112f257600080fd5b505af1158015611306573d6000803e3d6000fd5b505050506001600160a01b0387161561139257876001600160a01b031663d5fa2b0082896040518363ffffffff1660e01b815260040180838152602001826001600160a01b03166001600160a01b0316815260200192505050600060405180830381600087803b15801561137957600080fd5b505af115801561138d573d6000803e3d6000fd5b505050505b60015460408051630a3b53db60e21b8152600481018690526001600160a01b038e81166024830152915191909216916328ed4f6c91604480830192600092919082900301818387803b1580156113e757600080fd5b505af11580156113fb573d6000803e3d6000fd5b50505050600160009054906101000a90046001600160a01b03166001600160a01b03166323b872dd308d866040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050600060405180830381600087803b15801561148e57600080fd5b505af11580156114a2573d6000803e3d6000fd5b505050505061154c565b6001600160a01b038616156114c057600080fd5b60015460408051633f2891eb60e21b8152600481018590526001600160a01b038d81166024830152604482018d90529151919092169163fca247ac9160648083019260209291908290030181600087803b15801561151d57600080fd5b505af1158015611531573d6000803e3d6000fd5b505050506040513d602081101561154757600080fd5b505190505b896001600160a01b0316837fca6abbe9d7f11422cb6ca7629fbf6fe9efb1c621f71ce8f02b9f2a230097404f8d87856040518080602001848152602001838152602001828103825285818151815260200191508051906020019080838360005b838110156115c45781810151838201526020016115ac565b50505050905090810190601f1680156115f15780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a3833411156116395760405133903486900380156108fc02916000818181858888f19350505050158015611637573d6000803e3d6000fd5b505b5050505050505050505050565b8051600090819081905b8082101561172557600085838151811061166657fe5b01602001516001600160f81b0319169050600160ff1b81101561168e57600183019250611719565b600760fd1b6001600160f81b0319821610156116af57600283019250611719565b600f60fc1b6001600160f81b0319821610156116d057600383019250611719565b601f60fb1b6001600160f81b0319821610156116f157600483019250611719565b603f60fa1b6001600160f81b03198216101561171257600583019250611719565b6006830192505b50600190920191611650565b50909392505050565b6001600160a01b03811661174157600080fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b600354600082815260056020526040812054909142910111156117be57600080fd5b600454600083815260056020526040902054429101116117dd57600080fd5b6117e684610fcf565b6117ef57600080fd5b600082815260056020526040812081905561180a8585610c2c565b90506224ea0084101561181c57600080fd5b803410156110cb57600080fdfe6d616b65436f6d6d69746d656e7457697468436f6e66696728737472696e672c616464726573732c627974657333322c616464726573732c6164647265737329726567697374657228737472696e672c616464726573732c75696e743235362c62797465733332296d616b65436f6d6d69746d656e7428737472696e672c616464726573732c6279746573333229726567697374657257697468436f6e66696728737472696e672c616464726573732c75696e743235362c627974657333322c616464726573732c6164647265737329a265627a7a72315820dbcd3913c2076b23152296f549f9d7284be303cc004736992b455428cb03c12664736f6c634300050c0032","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1":"0xc965345edac823d56812cd20a10316233916a605","0x2":"0xec71e4e674fe0f432693dc2b935c34bd2774c003","0x3":"0x258","0x4":"0x15180"}},"0xbdefcf6429d0ac68236a6beb321cbd2ce66b463c":{"nonce":2,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c80636d435421116100885780637b37e561116100635780637b37e561146102435780638b9e028b14610256578063906c87cc1461027657806393790f4414610289575f80fd5b80636d435421146101eb5780636e9bfd9f146101fe578063794593bc14610230575f80fd5b806314afd79e116100c357806314afd79e1461018157806333bc8572146101945780634e3f9580146101b757806351710e45146101d8575f80fd5b8063027cc764146100e95780630a96ad391461011957806313ad9cab1461016c575b5f80fd5b6100fc6100f7366004610c39565b61029c565b6040516001600160a01b0390911681526020015b60405180910390f35b604080517f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f81527fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167602082015201610110565b61017f61017a366004610c61565b610339565b005b6100fc61018f366004610ca9565b610531565b6101a76101a2366004610cc9565b61055c565b6040519015158152602001610110565b6101ca6101c5366004610ca9565b610595565b604051908152602001610110565b61017f6101e6366004610ca9565b6105bd565b61017f6101f9366004610cc9565b6106be565b61021161020c366004610cfa565b6107ae565b604080516001600160a01b039093168352901515602083015201610110565b6100fc61023e366004610d11565b610838565b61017f610251366004610ca9565b610a0a565b610269610264366004610ca9565b610aab565b6040516101109190610d32565b6100fc610284366004610ca9565b610b28565b6101ca610297366004610ca9565b610b53565b5f6102a683610b8e565b6001600160a01b0383165f908152602081905260409020600301548083106102f157604051636ceb340b60e01b81526001600160a01b03851660048201526024015b60405180910390fd5b6001600160a01b0384165f90815260208190526040902060030180548490811061031d5761031d610d7e565b5f918252602090912001546001600160a01b0316949350505050565b61034283610bc6565b60405163c4e8fcb560e01b81526001600160a01b038381166004830152821515602483015284169063c4e8fcb5906044015f604051808303815f87803b15801561038a575f80fd5b505af115801561039c573d5f803e3d5ffd5b505050506001600160a01b038381165f908152602081815260408083209386168352600484019091529020548015158380156103d6575080155b15610425576003830180546001810182555f828152602080822090920180546001600160a01b0319166001600160a01b038a169081179091559254928152600486019091526040902055610529565b831580156104305750805b156105295760038301545f198301905f9061044d90600190610d92565b90508181146104d8575f85600301828154811061046c5761046c610d7e565b5f918252602090912001546003870180546001600160a01b03909216925082918590811061049c5761049c610d7e565b5f91825260208083209190910180546001600160a01b0319166001600160a01b0394851617905592909116815260048701909152604090208490555b846003018054806104eb576104eb610db7565b5f828152602080822083015f1990810180546001600160a01b03191690559092019092556001600160a01b0389168252600487019052604081205550505b505050505050565b5f61053b82610b8e565b506001600160a01b039081165f908152602081905260409020600101541690565b5f61056683610b8e565b506001600160a01b039182165f9081526020818152604080832093909416825260049092019091522054151590565b5f61059f82610b8e565b506001600160a01b03165f9081526020819052604090206003015490565b6105c681610b8e565b6001600160a01b038181165f9081526020819052604090206002015416331461060d576040516388c3a11560e01b81526001600160a01b03821660048201526024016102e8565b6040515f907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da908290a26001600160a01b038082165f818152602081905260408082206002810180546001600160a01b031916905560010154905133949190911692917fc8894f26f396ce8c004245c8b7cd1b92103a6e4302fcbab883987149ac01b7ec91a46001600160a01b03165f90815260208190526040902060010180546001600160a01b03191633179055565b6106c782610bc6565b6001600160a01b0381166106f95760405163a388d26360e01b81526001600160a01b03831660048201526024016102e8565b6001600160a01b038083165f9081526020819052604090206002015481169082160361074b576040516365e0406560e11b81526001600160a01b038084166004830152821660248201526044016102e8565b6040516001600160a01b038216907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da905f90a26001600160a01b039182165f90815260208190526040902060020180546001600160a01b03191691909216179055565b5f8060ff60f81b30847f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f6040516020016107eb9493929190610dcb565b60408051601f198184030181529190528051602090910120936001600160a01b0385163f7fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167149350915050565b5f6001600160a01b0382166108605760405163267eaa8160e21b815260040160405180910390fd5b606083901c3314610884576040516332db94d160e21b815260040160405180910390fd5b6040516108c3906001600160f81b031990309086907f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f90602001610dcb565b604051602081830303815290604052805190602001205f1c90507fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167816001600160a01b03163f0361093257604051633194665960e11b81526001600160a01b03821660048201526024016102e8565b8260405161093f90610c16565b8190604051809103905ff590508015801561095c573d5f803e3d5ffd5b50506001600160a01b038181165f81815260208181526040918290206001810180546001600160a01b03191695881695909517909455868455815192835282018690527f4397af6128d529b8ae0442f99db1296d5136062597a15bbc61c1b2a6431a7d15910160405180910390a16040516001600160a01b03808516915f918516907fc8894f26f396ce8c004245c8b7cd1b92103a6e4302fcbab883987149ac01b7ec908390a45092915050565b610a1381610bc6565b6001600160a01b038181165f9081526020819052604090206002015416610a58576040516335809b0b60e11b81526001600160a01b03821660048201526024016102e8565b6040515f907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da908290a26001600160a01b03165f90815260208190526040902060020180546001600160a01b0319169055565b6060610ab682610b8e565b6001600160a01b0382165f908152602081815260409182902060030180548351818402810184019094528084529091830182828015610b1c57602002820191905f5260205f20905b81546001600160a01b03168152600190910190602001808311610afe575b50505050509050919050565b5f610b3282610b8e565b506001600160a01b039081165f908152602081905260409020600201541690565b6001600160a01b0381165f9081526020819052604090205480610b89576040516304ca820960e41b815260040160405180910390fd5b919050565b6001600160a01b0381165f90815260208190526040902054610bc3576040516304ca820960e41b815260040160405180910390fd5b50565b610bcf81610b8e565b6001600160a01b038181165f90815260208190526040902060010154163314610bc35760405163d4ed9a1760e01b81526001600160a01b03821660048201526024016102e8565b610a4180610e0583390190565b80356001600160a01b0381168114610b89575f80fd5b5f8060408385031215610c4a575f80fd5b610c5383610c23565b946020939093013593505050565b5f805f60608486031215610c73575f80fd5b610c7c84610c23565b9250610c8a60208501610c23565b915060408401358015158114610c9e575f80fd5b809150509250925092565b5f60208284031215610cb9575f80fd5b610cc282610c23565b9392505050565b5f8060408385031215610cda575f80fd5b610ce383610c23565b9150610cf160208401610c23565b90509250929050565b5f60208284031215610d0a575f80fd5b5035919050565b5f8060408385031215610d22575f80fd5b82359150610cf160208401610c23565b602080825282518282018190525f9190848201906040850190845b81811015610d725783516001600160a01b031683529284019291840191600101610d4d565b50909695505050505050565b634e487b7160e01b5f52603260045260245ffd5b81810381811115610db157634e487b7160e01b5f52601160045260245ffd5b92915050565b634e487b7160e01b5f52603160045260245ffd5b6001600160f81b031994909416845260609290921b6bffffffffffffffffffffffff19166001840152601583015260358201526055019056fe60a060405234801561000f575f80fd5b5033608052608051610a1561002c5f395f6101d20152610a155ff3fe608060405234801561000f575f80fd5b506004361061004a575f3560e01c80634ce34aa21461004e578063899e104c1461007e5780638df25d9214610091578063c4e8fcb5146100a4575b5f80fd5b61006161005c366004610834565b6100b9565b6040516001600160e01b0319909116815260200160405180910390f35b61006161008c3660046108b4565b610121565b61006161009f36600461091b565b61018a565b6100b76100b2366004610969565b6101c7565b005b5f335f525f60205260405f20546100dd576349ed56f960e11b5f523360045260245ffd5b815f5b81811015610110576101088585838181106100fd576100fd6109a2565b905060c002016102c4565b6001016100e0565b50632671a55160e11b949350505050565b5f335f525f60205260405f2054610145576349ed56f960e11b5f523360045260245ffd5b835f5b8181101561016d576101658787838181106100fd576100fd6109a2565b600101610148565b506101788484610436565b50632267841360e21b95945050505050565b5f335f525f60205260405f20546101ae576349ed56f960e11b5f523360045260245ffd5b6101b88383610436565b506346f92ec960e11b92915050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610210576040516336abb4df60e11b815260040160405180910390fd5b6001600160a01b0382165f9081526020819052604090205481151560ff909116151503610268576040516349271a0f60e11b81526001600160a01b038316600482015281151560248201526044015b60405180910390fd5b6001600160a01b0382165f8181526020818152604091829020805460ff191685151590811790915591519182527fae63067d43ac07563b7eb8db6595635fc77f1578a2a5ea06ba91b63e2afa37e2910160405180910390a25050565b60016102d360208301836109ca565b60038111156102e4576102e46109b6565b03610329576103266102fc60408301602084016109ef565b61030c60608401604085016109ef565b61031c60808501606086016109ef565b8460a0013561056c565b50565b600261033860208301836109ca565b6003811115610349576103496109b6565b036103b6578060a00135600114610379576040516369f9582760e01b815260a0820135600482015260240161025f565b61032661038c60408301602084016109ef565b61039c60608401604085016109ef565b6103ac60808501606086016109ef565b8460800135610660565b60036103c560208301836109ca565b60038111156103d6576103d66109b6565b0361041d576103266103ee60408301602084016109ef565b6103fe60608401604085016109ef565b61040e60808501606086016109ef565b84608001358560a00135610715565b604051631e4cbc7f60e21b815260040160405180910390fd5b808280631759616b60e11b6020525f5b8381101561055f57823582018035803b61046b57635f15d6725f52806020526024601cfd5b60a08201358060051b60c0018060808501351460a0606086013514168185013583141615905080156104a657633ae8821360e21b5f5260045ffd5b506020860195506080602084016024378060061b60400190508060a00160a4525f8160c401528060c4018160a0850160c4375f808260205f875af1935083610550573d1561053057601f3d0160051c91508060051c826003028184111561051a578184036003028280028580020360091c01015b5a60208201101561052d573d5f803e3d5ffd5b50505b6357e222f160e11b5f528260045260c0606452608451602001608452805ffd5b50505050600181019050610446565b5050505060806040525050565b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166106515780873b15151661065157806106405781610623573d1561060257601f3d0160051c8360051c81600302818311156105eb578183036003028280028480020360091c01015b5a6020820110156105fe573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b833b61067757635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af180610707573d156106e557601f3d0160051c8260051c81600302818311156106ce578183036003028280028480020360091c01015b5a6020820110156106e1573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b61072c57635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af1806107d1573d156107b057601f3d0160051c8560051c8160030281831115610799578183036003028280028480020360091c01015b5a6020820110156107ac573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b5f8083601f8401126107fc575f80fd5b50813567ffffffffffffffff811115610813575f80fd5b60208301915083602060c08302850101111561082d575f80fd5b9250929050565b5f8060208385031215610845575f80fd5b823567ffffffffffffffff81111561085b575f80fd5b610867858286016107ec565b90969095509350505050565b5f8083601f840112610883575f80fd5b50813567ffffffffffffffff81111561089a575f80fd5b6020830191508360208260051b850101111561082d575f80fd5b5f805f80604085870312156108c7575f80fd5b843567ffffffffffffffff808211156108de575f80fd5b6108ea888389016107ec565b90965094506020870135915080821115610902575f80fd5b5061090f87828801610873565b95989497509550505050565b5f806020838503121561092c575f80fd5b823567ffffffffffffffff811115610942575f80fd5b61086785828601610873565b80356001600160a01b0381168114610964575f80fd5b919050565b5f806040838503121561097a575f80fd5b6109838361094e565b915060208301358015158114610997575f80fd5b809150509250929050565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52602160045260245ffd5b5f602082840312156109da575f80fd5b8135600481106109e8575f80fd5b9392505050565b5f602082840312156109ff575f80fd5b6109e88261094e56fea164736f6c6343000818000aa164736f6c6343000818000a","storage":{}},"0xbe5deac45dd1ca4ee18dc2d585d84d3d3cb82b0d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c806341539d4a146100465780634d5505d314610097578063afa764d7146100b1575b600080fd5b6100636004803603602081101561005c57600080fd5b50356100dc565b6040805195865260208601949094528484019290925260608401526001600160a01b03166080830152519081900360a00190f35b61009f610114565b60408051918252519081900360200190f35b6100da600480360360608110156100c757600080fd5b508035906020810135906040013561011a565b005b60006020819052908152604090208054600182015460028301546003840154600490940154929391929091906001600160a01b031685565b60015481565b6101226101eb565b506040805160a0810182528481526020808201858152828401858152426060808601918252336080870181815260018054810180825560009081528089528a81208a518155975188830155955160028801559351600387015551600490950180546001600160a01b0319166001600160a01b0390961695909517909455905486518981529485018890528487018a905295519495919491937fba5de06d22af2685c6c7765f60067f7d2b08c2d29f53cdf14d67f6d1c9bfb527929081900390910190a450505050565b6040518060a001604052806000801916815260200160008152602001600081526020016000815260200160006001600160a01b03168152509056fea164736f6c6343000606000a","storage":{"0x1":"0x0"}},"0xbe92182cab5b84fd18b34881a0c32771e84f5b8b":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061021c5760003560e01c80638da5cb5b11610125578063bebec6b4116100ad578063e985e9c51161007c578063e985e9c514610540578063f059235914610553578063f2fde38b14610566578063ffa1ad7414610579578063ffad6f551461059d57600080fd5b8063bebec6b4146104e7578063bfc5429b146104fa578063c15ae7cf1461050d578063c87b56dd1461052d57600080fd5b8063a81ce6f9116100f4578063a81ce6f91461046d578063ac9650d814610480578063b3f9e4cb146104a0578063b85afd28146104b3578063b98b3526146104d457600080fd5b80638da5cb5b146103f157806391015f6b146103f9578063933c051d1461041b578063a3f4df7e1461043d57600080fd5b80634bd79ed0116101a857806370a082311161017757806370a082311461038d578063715018a6146103a05780637e37479e146103a857806383caffbe146103bb578063869b8884146103ce57600080fd5b80634bd79ed0146103335780634f558e79146103465780636352211e14610359578063672b9f811461036c57600080fd5b80631bd8cc1a116101ef5780631bd8cc1a146102ac5780631be5e7ed146102cc578063276fabb1146102ec578063430c20811461030d578063485cc9551461032057600080fd5b806301ffc9a7146102215780630328075514610249578063081812fc1461026c57806313af403514610297575b600080fd5b61023461022f366004612c9d565b6105b0565b60405190151581526020015b60405180910390f35b61025c610257366004612d0b565b610638565b6040516102409493929190612dfe565b61027f61027a366004612e3c565b61065b565b6040516001600160a01b039091168152602001610240565b6102aa6102a5366004612e6a565b610760565b005b6102bf6102ba366004612d0b565b6107d1565b6040516102409190612e87565b6102df6102da366004612edb565b6107f0565b6040516102409190612f12565b6102ff6102fa366004612f25565b61091b565b604051908152602001610240565b61023461031b366004612f66565b61098f565b6102aa61032e366004612f92565b610aa2565b6102aa610341366004612fcb565b610bf5565b610234610354366004612e3c565b610e51565b61027f610367366004612e3c565b610e5c565b61037f61037a366004613036565b610e67565b604051610240929190613058565b6102ff61039b366004612e6a565b610f97565b6102aa611095565b6102ff6103b6366004612e6a565b6110a9565b6102bf6103c936600461307d565b611118565b6103e16103dc366004612fcb565b6114f0565b60405161024094939291906131bb565b61027f6116e6565b61040c610407366004612d0b565b611714565b60405161024093929190613208565b61042e610429366004612fcb565b611734565b60405161024093929190613234565b6102df604051806040016040528060118152602001702aa7299d10283937bc3c902932b0b232b960791b81525081565b61027f61047b366004612e3c565b6118bd565b61049361048e366004612f25565b61198b565b6040516102409190613277565b61027f6104ae366004612e3c565b611a7f565b6104c66104c1366004612d0b565b611b05565b6040516102409291906132d9565b6102df6104e23660046132fe565b611ce1565b6102df6104f5366004612e6a565b611cfb565b6102df6105083660046132fe565b611d6f565b61052061051b366004612f25565b611d89565b6040516102409190613371565b6102df61053b366004612e3c565b611e37565b61023461054e366004612f92565b611f09565b6102aa610561366004612fcb565b611f54565b6102aa610574366004612e6a565b612018565b6102df604051806040016040528060058152602001640302e352e360dc1b81525081565b6102aa6105ab366004613384565b612085565b60006001600160e01b031982166362526e6360e01b14806105e157506001600160e01b03198216636fa624af60e11b145b806105fc57506001600160e01b031982166308da864d60e31b145b8061061757506001600160e01b03198216638584880360e01b145b8061063257506301ffc9a760e01b6001600160e01b03198316145b92915050565b6000806060806106498787876120d8565b93509350935093505b93509350935093565b60006106668261233a565b61067257506000919050565b61067b826123d2565b6106f25760665460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa1580156106c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106ed91906133bd565b610632565b60655460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa15801561073c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061063291906133bd565b600061076a6116e6565b6001600160a01b0316146107c55760405162461bcd60e51b815260206004820152601e60248201527f50726f78795265616465723a204f574e45525f414c52454144595f534554000060448201526064015b60405180910390fd5b6107ce81612419565b50565b60606107e66107e0848661346a565b83612495565b90505b9392505050565b60606107fb826123d2565b1561088057606554604051631be5e7ed60e01b81526001600160a01b0390911690631be5e7ed9061083490879087908790600401613547565b600060405180830381865afa158015610851573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261087991908101906135b0565b90506107e9565b600061088b83612617565b90506001600160a01b0381163b1561091357604051631be5e7ed60e01b81526001600160a01b03821690631be5e7ed906108cd90889088908890600401613547565b600060405180830381865afa92505050801561090b57506040513d6000823e601f3d908101601f1916820160405261090891908101906135b0565b60015b156109135791505b509392505050565b60655460405163276fabb160e01b81526000916001600160a01b03169063276fabb19061094e908690869060040161366c565b602060405180830381865afa15801561096b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613680565b600061099a8261233a565b6109a657506000610632565b6109af826123d2565b610a2d5760665460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a04573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a289190613699565b6107e9565b60655460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a7e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613699565b600054610100900460ff1615808015610ac25750600054600160ff909116105b80610adc5750303b158015610adc575060005460ff166001145b610b3f5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107bc565b6000805460ff191660011790558015610b62576000805461ff0019166101001790555b606580546001600160a01b038086166001600160a01b0319928316179092556066805492851692909116919091179055610b9a61268a565b610ba261268a565b610baa6126b1565b8015610bf0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b610bfd6126e1565b828114610c4c5760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107bc565b60005b83811015610e4a5760006068868684818110610c6d57610c6d6136bb565b9050602002810190610c7f91906136d1565b604051610c8d929190613717565b908152604051908190036020019020541115610cf1576068858583818110610cb757610cb76136bb565b9050602002810190610cc991906136d1565b604051610cd7929190613717565b90815260200160405180910390206000610cf19190612c18565b60005b838383818110610d0657610d066136bb565b9050602002810190610d189190613727565b9050811015610ddc576068868684818110610d3557610d356136bb565b9050602002810190610d4791906136d1565b604051610d55929190613717565b9081526020016040518091039020848484818110610d7557610d756136bb565b9050602002810190610d879190613727565b83818110610d9757610d976136bb565b9050602002810190610da991906136d1565b82546001810184556000938452602090932090920191610dc991836137f8565b5080610dd4816138cd565b915050610cf4565b507fb2b57b54285120d17f49f2490a39ef791441fd0ad1e6b6818c23262bf91f061c858583818110610e1057610e106136bb565b9050602002810190610e2291906136d1565b604051610e309291906138e6565b60405180910390a180610e42816138cd565b915050610c4f565b5050505050565b60006106328261233a565b600061063282612740565b606080610e73836123d2565b15610ef95760655460405163672b9f8160e01b815260048101869052602481018590526001600160a01b039091169063672b9f8190604401600060405180830381865afa158015610ec8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610ef091908101906138fa565b91509150610f90565b6000610f0484612617565b90506001600160a01b0381163b15610f8e5760405163672b9f8160e01b815260048101869052602481018590526001600160a01b0382169063672b9f8190604401600060405180830381865afa925050508015610f8357506040513d6000823e601f3d908101601f19168201604052610f8091908101906138fa565b60015b15610f8e5790935091505b505b9250929050565b6065546040516370a0823160e01b81526001600160a01b03838116600483015260009283929116906370a0823190602401602060405180830381865afa158015610fe5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110099190613680565b6066549091506001600160a01b031615610632576066546040516370a0823160e01b81526001600160a01b038581166004830152909116906370a0823190602401602060405180830381865afa158015611067573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061108b9190613680565b6107e9908261395d565b61109d6126e1565b6110a76000612419565b565b606554604051633f1ba3cf60e11b81526001600160a01b0383811660048301526000921690637e37479e90602401602060405180830381865afa1580156110f4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190613680565b606060006067868660405161112e929190613717565b9081526020016040518091039020805461114790613770565b80601f016020809104026020016040519081016040528092919081815260200182805461117390613770565b80156111c05780601f10611195576101008083540402835291602001916111c0565b820191906000526020600020905b8154815290600101906020018083116111a357829003601f168201915b5050505050905080516000036111d657506114e8565b6000604051806040016040528060068152602001653a37b5b2b71760d11b81525090506000604051806040016040528060088152602001672e6164647265737360c01b81525090506000604051806040016040528060018152602001601760f91b815250905060008385838c8c868d8d8a60405160200161125f99989796959493929190613970565b6040516020818303038152906040529050600060688260405161128291906139f3565b9081526020016040518091039020805480602002602001604051908101604052809291908181526020016000905b8282101561135c5783829060005260206000200180546112cf90613770565b80601f01602080910402602001604051908101604052809291908181526020018280546112fb90613770565b80156113485780601f1061131d57610100808354040283529160200191611348565b820191906000526020600020905b81548152906001019060200180831161132b57829003601f168201915b5050505050815260200190600101906112b0565b50505050905080516003611370919061395d565b6001600160401b03811115611387576113876133da565b6040519080825280602002602001820160405280156113ba57816020015b60608152602001906001900390816113a55790505b50965081876000815181106113d1576113d16136bb565b602002602001018190525060005b815181101561143e578181815181106113fa576113fa6136bb565b602002602001015188826001611410919061395d565b81518110611420576114206136bb565b60200260200101819052508080611436906138cd565b9150506113df565b508486848d8d8860405160200161145a96959493929190613a0f565b6040516020818303038152906040528782516001611478919061395d565b81518110611488576114886136bb565b60200260200101819052508486856040516020016114a893929190613a72565b60405160208183030381529060405287825160026114c6919061395d565b815181106114d6576114d66136bb565b60200260200101819052505050505050505b949350505050565b6060808080846001600160401b0381111561150d5761150d6133da565b604051908082528060200260200182016040528015611536578160200160208202803683370190505b509350846001600160401b03811115611551576115516133da565b60405190808252806020026020018201604052801561157a578160200160208202803683370190505b509250846001600160401b03811115611595576115956133da565b6040519080825280602002602001820160405280156115c857816020015b60608152602001906001900390816115b35790505b509150846001600160401b038111156115e3576115e36133da565b60405190808252806020026020018201604052801561161657816020015b60608152602001906001900390816116015790505b50905060005b858110156116da57611647898989898581811061163b5761163b6136bb565b905060200201356120d8565b888581518110611659576116596136bb565b60200260200101888681518110611672576116726136bb565b6020026020010188878151811061168b5761168b6136bb565b602002602001018888815181106116a4576116a46136bb565b6020908102919091010193909352929091526001600160a01b0392831690915291169052806116d2816138cd565b91505061161c565b50945094509450949050565b7fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c8121905546001600160a01b031690565b6000806060611724868686612761565b9250925092505b93509350939050565b60608080836001600160401b03811115611750576117506133da565b604051908082528060200260200182016040528015611779578160200160208202803683370190505b509250836001600160401b03811115611794576117946133da565b6040519080825280602002602001820160405280156117bd578160200160208202803683370190505b509150836001600160401b038111156117d8576117d86133da565b60405190808252806020026020018201604052801561180b57816020015b60608152602001906001900390816117f65790505b50905060005b848110156118b25761183c8888888885818110611830576118306136bb565b90506020020135612761565b86848151811061184e5761184e6136bb565b60200260200101868581518110611867576118676136bb565b60200260200101868681518110611880576118806136bb565b60209081029190910101929092526001600160a01b0392831690915291169052806118aa816138cd565b915050611811565b509450945094915050565b606554604051634f558e7960e01b8152600481018390526000916001600160a01b031690634f558e7990602401602060405180830381865afa158015611907573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061192b9190613699565b156119415750506065546001600160a01b031690565b6066546001600160a01b03161580159061196d575060006119618361296c565b6001600160a01b031614155b156119835750506066546001600160a01b031690565b506000919050565b6060816001600160401b038111156119a5576119a56133da565b6040519080825280602002602001820160405280156119d857816020015b60608152602001906001900390816119c35790505b50905060005b82811015611a7857611a48308585848181106119fc576119fc6136bb565b9050602002810190611a0e91906136d1565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061299e92505050565b828281518110611a5a57611a5a6136bb565b60200260200101819052508080611a70906138cd565b9150506119de565b5092915050565b6000611a8a8261233a565b611a9657506000919050565b611a9f826123d2565b611ad45760665460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb906024016106ac565b60655460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb9060240161071f565b606080836001600160401b03811115611b2057611b206133da565b604051908082528060200260200182016040528015611b5357816020015b6060815260200190600190039081611b3e5790505b509150836001600160401b03811115611b6e57611b6e6133da565b604051908082528060200260200182016040528015611ba157816020015b6060815260200190600190039081611b8c5790505b509050611bad836123d2565b15611c345760655460405163170b5fa560e31b81526001600160a01b039091169063b85afd2890611be690889088908890600401613ab5565b600060405180830381865afa158015611c03573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611c2b9190810190613b72565b91509150611cd9565b6000611c3f84612617565b90506001600160a01b0381163b15158015611c5957508415155b15611cd75760405163170b5fa560e31b81526001600160a01b0382169063b85afd2890611c8e90899089908990600401613ab5565b600060405180830381865afa925050508015611ccc57506040513d6000823e601f3d908101601f19168201604052611cc99190810190613b72565b60015b15611cd75790935091505b505b935093915050565b6060611cf08686868686612a92565b979650505050505050565b606554604051632fafb1ad60e21b81526001600160a01b038381166004830152606092169063bebec6b4906024015b600060405180830381865afa158015611d47573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261063291908101906135b0565b6060611d7e8686868686612a92565b509695505050505050565b6060816001600160401b03811115611da357611da36133da565b604051908082528060200260200182016040528015611dcc578160200160208202803683370190505b50905060005b82811015611a7857611dfb848483818110611def57611def6136bb565b90506020020135612740565b828281518110611e0d57611e0d6136bb565b6001600160a01b039092166020928302919091019091015280611e2f816138cd565b915050611dd2565b6060611e428261233a565b611e5a57505060408051602081019091526000815290565b611e63826123d2565b611ed85760665460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401600060405180830381865afa158015611eb0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106ed91908101906135b0565b60655460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401611d2a565b60405162461bcd60e51b815260206004820152601f60248201527f50726f78795265616465723a20554e535550504f525445445f4d4554484f440060448201526000906064016107bc565b611f5c6126e1565b828114611fab5760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107bc565b60005b83811015610e4a57612006858583818110611fcb57611fcb6136bb565b9050602002810190611fdd91906136d1565b858585818110611fef57611fef6136bb565b905060200281019061200191906136d1565b612b3e565b80612010816138cd565b915050611fae565b6120206126e1565b6001600160a01b0381166107c55760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107bc565b61208d6126e1565b60005b83811015610e4a576120c68585838181106120ad576120ad6136bb565b90506020028101906120bf91906136d1565b8585612b3e565b806120d0816138cd565b915050612090565b600080606080856001600160401b038111156120f6576120f66133da565b60405190808252806020026020018201604052801561212957816020015b60608152602001906001900390816121145790505b509150856001600160401b03811115612144576121446133da565b60405190808252806020026020018201604052801561217757816020015b60608152602001906001900390816121625790505b509050612183856123d2565b156122845760655460405163b3f9e4cb60e01b8152600481018790526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa1580156121d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121f591906133bd565b935061220085612bad565b60655460405163170b5fa560e31b81529194506001600160a01b03169063b85afd2890612235908a908a908a90600401613ab5565b600060405180830381865afa158015612252573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261227a9190810190613b72565b9092509050610652565b61228d85612617565b93506122988561296c565b92506001600160a01b0384163b151580156122b4575060008251115b156106525760405163170b5fa560e31b81526001600160a01b0385169063b85afd28906122e9908a908a908a90600401613ab5565b600060405180830381865afa92505050801561232757506040513d6000823e601f3d908101601f191682016040526123249190810190613b72565b60015b1561065257909250905093509350935093565b6000612345826123d2565b6123645760006123548361296c565b6001600160a01b03161415610632565b606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e79906024015b602060405180830381865afa1580156123ae573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190613699565b6066546000906001600160a01b031615806106325750606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401612391565b60006124236116e6565b9050817fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c812190580546001600160a01b0319166001600160a01b03928316179055604051838216918316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b606082516001600160401b038111156124b0576124b06133da565b6040519080825280602002602001820160405280156124e357816020015b60608152602001906001900390816124ce5790505b5090506124ef826123d2565b1561257257606554604051630dec660d60e11b81526001600160a01b0390911690631bd8cc1a906125269086908690600401613bcb565b600060405180830381865afa158015612543573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261256b9190810190613bed565b9050610632565b600061257d83612617565b90506001600160a01b0381163b15158015612599575060008451115b15611a7857604051630dec660d60e11b81526001600160a01b03821690631bd8cc1a906125cc9087908790600401613bcb565b600060405180830381865afa92505050801561260a57506040513d6000823e601f3d908101601f191682016040526126079190810190613bed565b60015b15611a7857949350505050565b60665460405163b3f9e4cb60e01b8152600481018390526000916001600160a01b03169063b3f9e4cb906024015b602060405180830381865afa92505050801561267e575060408051601f3d908101601f1916820190925261267b918101906133bd565b60015b61063257506000919050565b600054610100900460ff166110a75760405162461bcd60e51b81526004016107bc90613c21565b600054610100900460ff166126d85760405162461bcd60e51b81526004016107bc90613c21565b6110a733612419565b336126ea6116e6565b6001600160a01b0316146110a75760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107bc565b600061274b826123d2565b612758576106ed8261296c565b61063282612bad565b6000806060846001600160401b0381111561277e5761277e6133da565b6040519080825280602002602001820160405280156127b157816020015b606081526020019060019003908161279c5790505b5090506127bd846123d2565b156128bb5760655460405163b3f9e4cb60e01b8152600481018690526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561280b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061282f91906133bd565b925061283a84612bad565b606554604051630dec660d60e11b81529193506001600160a01b031690631bd8cc1a9061286f90899089908990600401613c6c565b600060405180830381865afa15801561288c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526128b49190810190613bed565b905061172b565b6128c484612617565b92506128cf8461296c565b91506001600160a01b0383163b151580156128e957508415155b1561172b57604051630dec660d60e11b81526001600160a01b03841690631bd8cc1a9061291e90899089908990600401613c6c565b600060405180830381865afa92505050801561295c57506040513d6000823e601f3d908101601f191682016040526129599190810190613bed565b60015b1561172b57905093509350939050565b6066546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401612645565b60606001600160a01b0383163b612a065760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b60648201526084016107bc565b600080846001600160a01b031684604051612a2191906139f3565b600060405180830381855af49150503d8060008114612a5c576040519150601f19603f3d011682016040523d82523d6000602084013e612a61565b606091505b5091509150612a898282604051806060016040528060278152602001613c8160279139612bdf565b95945050505050565b6060806000612aa388888888611118565b90506000612ab18286612495565b905060005b8151811015612b31576000828281518110612ad357612ad36136bb565b6020026020010151511115612b1f57828181518110612af457612af46136bb565b60200260200101519350818181518110612b1057612b106136bb565b60200260200101519450612b31565b80612b29816138cd565b915050612ab6565b5050509550959350505050565b818160678686604051612b52929190613717565b90815260200160405180910390209182612b6d9291906137f8565b507f0bf4b04a0f6d7d0800284e1abb0f58f795c0a25b9088634b6ab847be51001dec8484604051612b9f9291906138e6565b60405180910390a150505050565b6065546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401612645565b60608315612bee5750816107e9565b825115612bfe5782518084602001fd5b8160405162461bcd60e51b81526004016107bc9190612f12565b50805460008255906000526020600020908101906107ce91905b80821115612c4f576000612c468282612c53565b50600101612c32565b5090565b508054612c5f90613770565b6000825580601f10612c6f575050565b601f0160209004906000526020600020908101906107ce91905b80821115612c4f5760008155600101612c89565b600060208284031215612caf57600080fd5b81356001600160e01b0319811681146107e957600080fd5b60008083601f840112612cd957600080fd5b5081356001600160401b03811115612cf057600080fd5b6020830191508360208260051b8501011115610f9057600080fd5b600080600060408486031215612d2057600080fd5b83356001600160401b03811115612d3657600080fd5b612d4286828701612cc7565b909790965060209590950135949350505050565b60005b83811015612d71578181015183820152602001612d59565b50506000910152565b60008151808452612d92816020860160208601612d56565b601f01601f19169290920160200192915050565b600082825180855260208086019550808260051b84010181860160005b84811015612df157601f19868403018952612ddf838351612d7a565b98840198925090830190600101612dc3565b5090979650505050505050565b6001600160a01b03858116825284166020820152608060408201819052600090612e2a90830185612da6565b8281036060840152611cf08185612da6565b600060208284031215612e4e57600080fd5b5035919050565b6001600160a01b03811681146107ce57600080fd5b600060208284031215612e7c57600080fd5b81356107e981612e55565b6020815260006107e96020830184612da6565b60008083601f840112612eac57600080fd5b5081356001600160401b03811115612ec357600080fd5b602083019150836020828501011115610f9057600080fd5b600080600060408486031215612ef057600080fd5b83356001600160401b03811115612f0657600080fd5b612d4286828701612e9a565b6020815260006107e96020830184612d7a565b60008060208385031215612f3857600080fd5b82356001600160401b03811115612f4e57600080fd5b612f5a85828601612cc7565b90969095509350505050565b60008060408385031215612f7957600080fd5b8235612f8481612e55565b946020939093013593505050565b60008060408385031215612fa557600080fd5b8235612fb081612e55565b91506020830135612fc081612e55565b809150509250929050565b60008060008060408587031215612fe157600080fd5b84356001600160401b0380821115612ff857600080fd5b61300488838901612cc7565b9096509450602087013591508082111561301d57600080fd5b5061302a87828801612cc7565b95989497509550505050565b6000806040838503121561304957600080fd5b50508035926020909101359150565b60408152600061306b6040830185612d7a565b8281036020840152612a898185612d7a565b6000806000806040858703121561309357600080fd5b84356001600160401b03808211156130aa57600080fd5b6130b688838901612e9a565b909650945060208701359150808211156130cf57600080fd5b5061302a87828801612e9a565b600081518084526020808501945080840160005b838110156131155781516001600160a01b0316875295820195908201906001016130f0565b509495945050505050565b60008282518085526020808601955060058183821b8501018287016000805b868110156131ac57601f1988850381018c5283518051808752908801908887019080891b88018a01865b8281101561319557858a8303018452613183828651612d7a565b948c0194938c01939150600101613169565b509e8a019e9750505093870193505060010161313f565b50919998505050505050505050565b6080815260006131ce60808301876130dc565b82810360208401526131e081876130dc565b905082810360408401526131f48186613120565b90508281036060840152611cf08185613120565b6001600160a01b03848116825283166020820152606060408201819052600090612a8990830184612da6565b60608152600061324760608301866130dc565b828103602084015261325981866130dc565b9050828103604084015261326d8185613120565b9695505050505050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156132cc57603f198886030184526132ba858351612d7a565b9450928501929085019060010161329e565b5092979650505050505050565b6040815260006132ec6040830185612da6565b8281036020840152612a898185612da6565b60008060008060006060868803121561331657600080fd5b85356001600160401b038082111561332d57600080fd5b61333989838a01612e9a565b9097509550602088013591508082111561335257600080fd5b5061335f88828901612e9a565b96999598509660400135949350505050565b6020815260006107e960208301846130dc565b6000806000806040858703121561339a57600080fd5b84356001600160401b03808211156133b157600080fd5b6130b688838901612cc7565b6000602082840312156133cf57600080fd5b81516107e981612e55565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715613418576134186133da565b604052919050565b60006001600160401b03821115613439576134396133da565b5060051b60200190565b60006001600160401b0382111561345c5761345c6133da565b50601f01601f191660200190565b600061347d61347884613420565b6133f0565b80848252602080830192508560051b85013681111561349b57600080fd5b855b818110156135125780356001600160401b038111156134bc5760008081fd5b870136601f8201126134ce5760008081fd5b80356134dc61347882613443565b81815236868385010111156134f15760008081fd5b8186840187830137600091810186019190915286525093820193820161349d565b50919695505050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60408152600061355b60408301858761351e565b9050826020830152949350505050565b600082601f83011261357c57600080fd5b815161358a61347882613443565b81815284602083860101111561359f57600080fd5b6114e8826020830160208701612d56565b6000602082840312156135c257600080fd5b81516001600160401b038111156135d857600080fd5b6114e88482850161356b565b60008383855260208086019550808560051b8301018460005b87811015612df157848303601f19018952813536889003601e1901811261362357600080fd5b870184810190356001600160401b0381111561363e57600080fd5b80360382131561364d57600080fd5b61365885828461351e565b9a86019a94505050908301906001016135fd565b6020815260006107e66020830184866135e4565b60006020828403121561369257600080fd5b5051919050565b6000602082840312156136ab57600080fd5b815180151581146107e957600080fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e198436030181126136e857600080fd5b8301803591506001600160401b0382111561370257600080fd5b602001915036819003821315610f9057600080fd5b8183823760009101908152919050565b6000808335601e1984360301811261373e57600080fd5b8301803591506001600160401b0382111561375857600080fd5b6020019150600581901b3603821315610f9057600080fd5b600181811c9082168061378457607f821691505b6020821081036137a457634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115610bf057600081815260208120601f850160051c810160208610156137d15750805b601f850160051c820191505b818110156137f0578281556001016137dd565b505050505050565b6001600160401b0383111561380f5761380f6133da565b6138238361381d8354613770565b836137aa565b6000601f841160018114613857576000851561383f5750838201355b600019600387901b1c1916600186901b178355610e4a565b600083815260209020601f19861690835b828110156138885786850135825560209485019460019092019101613868565b50868210156138a55760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b634e487b7160e01b600052601160045260246000fd5b6000600182016138df576138df6138b7565b5060010190565b6020815260006107e660208301848661351e565b6000806040838503121561390d57600080fd5b82516001600160401b038082111561392457600080fd5b6139308683870161356b565b9350602085015191508082111561394657600080fd5b506139538582860161356b565b9150509250929050565b80820180821115610632576106326138b7565b60008a51613982818460208f01612d56565b8a5190830190613996818360208f01612d56565b8a519101906139a9818360208e01612d56565b0187898237600090880190815286516139c6818360208b01612d56565b0184868237600090850190815283516139e3818360208801612d56565b019b9a5050505050505050505050565b60008251613a05818460208701612d56565b9190910192915050565b60008751613a21818460208c01612d56565b875190830190613a35818360208c01612d56565b8751910190613a48818360208b01612d56565b018486823760009085019081528351613a65818360208801612d56565b0198975050505050505050565b60008451613a84818460208901612d56565b845190830190613a98818360208901612d56565b8451910190613aab818360208801612d56565b0195945050505050565b6040808252810183905260006001600160fb1b03841115613ad557600080fd5b8360051b808660608501376020830193909352500160600192915050565b600082601f830112613b0457600080fd5b81516020613b1461347883613420565b82815260059290921b84018101918181019086841115613b3357600080fd5b8286015b84811015611d7e5780516001600160401b03811115613b565760008081fd5b613b648986838b010161356b565b845250918301918301613b37565b60008060408385031215613b8557600080fd5b82516001600160401b0380821115613b9c57600080fd5b613ba886838701613af3565b93506020850151915080821115613bbe57600080fd5b5061395385828601613af3565b604081526000613bde6040830185612da6565b90508260208301529392505050565b600060208284031215613bff57600080fd5b81516001600160401b03811115613c1557600080fd5b6114e884828501613af3565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60408152600061355b6040830185876135e456fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a","storage":{}},"0xc2110388dd54228ae0a834119457ede938bf0b57":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061021e5760003560e01c80638da5cb5b11610123578063acf1a841116100ab578063d547741f1161006f578063d547741f14610682578063f14fcbc8146106a2578063f23a6e61146106c2578063f2fde38b146106e2578063ffa1ad741461070257600080fd5b8063acf1a841146105e0578063bc197c8114610600578063c0c53b8b14610620578063cf01585314610640578063d53913931461066057600080fd5b8063a0e3aef1116100f2578063a0e3aef114610534578063a217fddf14610554578063a3f4df7e14610569578063a4247400146105a0578063aa271e1a146105c057600080fd5b80638da5cb5b146104c157806391d14854146104df578063983b2d56146104ff578063986502751461051f57600080fd5b80635fc1964f116101a65780636ccbae5f116101755780636ccbae5f14610439578063715018a61461045957806371e2a6571461046e57806381c81d351461048e57806383e7f6ff146104a157600080fd5b80635fc1964f146103ae578063634486da146103ce5780636352211e146103e15780636a8be89e1461041957600080fd5b80632f2ff15d116101ed5780632f2ff15d146103035780633092afd51461032557806336568abe14610345578063423f6cef14610365578063572b6c051461038557600080fd5b806301ffc9a71461022a578063150b7a021461025f5780631bf7e13e14610298578063248a9ca3146102c557600080fd5b3661022557005b600080fd5b34801561023657600080fd5b5061024a6102453660046125f2565b610733565b60405190151581526020015b60405180910390f35b34801561026b57600080fd5b5061027f61027a366004612672565b610779565b6040516001600160e01b03199091168152602001610256565b3480156102a457600080fd5b506102b86102b33660046126e4565b6108cb565b60405161025691906127a4565b3480156102d157600080fd5b506102f56102e03660046127b7565b600090815260fb602052604090206001015490565b604051908152602001610256565b34801561030f57600080fd5b5061032361031e3660046127d0565b610997565b005b34801561033157600080fd5b50610323610340366004612800565b6109c1565b34801561035157600080fd5b506103236103603660046127d0565b6109d5565b34801561037157600080fd5b5061032361038036600461281d565b610a68565b34801561039157600080fd5b5061024a6103a0366004612800565b6001600160a01b0316301490565b3480156103ba57600080fd5b506103236103c936600461288f565b610bd9565b6103236103dc366004612800565b610c21565b3480156103ed57600080fd5b506104016103fc3660046127b7565b610ce4565b6040516001600160a01b039091168152602001610256565b34801561042557600080fd5b50610323610434366004612800565b610cef565b34801561044557600080fd5b506102f56104543660046127b7565b610d38565b34801561046557600080fd5b50610323610d7e565b34801561047a57600080fd5b5061032361048936600461288f565b610d92565b61032361049c366004612800565b610dda565b3480156104ad57600080fd5b506102f56104bc366004612934565b610e57565b3480156104cd57600080fd5b506097546001600160a01b0316610401565b3480156104eb57600080fd5b5061024a6104fa3660046127d0565b610efa565b34801561050b57600080fd5b5061032361051a366004612800565b610f25565b34801561052b57600080fd5b50610323610f36565b34801561054057600080fd5b506102f561054f366004612a5c565b610f50565b34801561056057600080fd5b506102f5600081565b34801561057557600080fd5b506102b86040518060400160405280600b81526020016a454e5320437573746f647960a81b81525081565b3480156105ac57600080fd5b5061024a6105bb3660046126e4565b610ffc565b3480156105cc57600080fd5b5061024a6105db366004612800565b61104f565b3480156105ec57600080fd5b506103236105fb366004612934565b611069565b34801561060c57600080fd5b5061027f61061b366004612b35565b611222565b34801561062c57600080fd5b5061032361063b366004612bf3565b6112db565b34801561064c57600080fd5b5061032361065b366004612c3e565b611485565b34801561066c57600080fd5b506102f56000805160206133f583398151915281565b34801561068e57600080fd5b5061032361069d3660046127d0565b611592565b3480156106ae57600080fd5b506103236106bd3660046127b7565b6115b7565b3480156106ce57600080fd5b5061027f6106dd366004612d20565b61162b565b3480156106ee57600080fd5b506103236106fd366004612800565b6116bc565b34801561070e57600080fd5b506102b860405180604001604052806005815260200164302e312e3360d81b81525081565b60006001600160e01b03198216630a85bd0160e11b148061076457506001600160e01b03198216630271189760e51b145b806107735750610773826116d8565b92915050565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004546000906001600160a01b0316806107b061170d565b6001600160a01b0316036108a957600080806107ce86880188612d9b565b9250925092506107dd8361171c565b6001600160a01b03841663b88d4fde30600080516020613415833981519152546040516001600160a01b03909116908c9061082390879030906000908b90602001612dfc565b6040516020818303038152906040526040518563ffffffff1660e01b81526004016108519493929190612e3c565b600060405180830381600087803b15801561086b57600080fd5b505af115801561087f573d6000803e3d6000fd5b5050505061089561088f8261174e565b846117d3565b50630a85bd0160e11b93506108c292505050565b6040516344e7d94960e01b815260040160405180910390fd5b95945050505050565b606060005a90506108dd858585610ffc565b6108fa57604051638baa579f60e01b815260040160405180910390fd5b61098c61090a6020870187612800565b3060408801358461091e60608b018b612e6f565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061185e92505050565b9150505b9392505050565b600082815260fb60205260409020600101546109b28161193f565b6109bc8383611950565b505050565b6109c96119d7565b6109d281611a50565b50565b6109dd61170d565b6001600160a01b0316816001600160a01b031614610a5a5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b610a648282611a68565b5050565b80610a7161170d565b6001600160a01b0316610a8382611aed565b6001600160a01b031614610ac55780610a9a61170d565b604051637ea58b1160e01b815260048101929092526001600160a01b03166024820152604401610a51565b610ace82611c03565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052600090610b22906060015b6040516020818303038152906040528051906020012090565b80546001600160a01b0319166001600160a01b0392909216919091179055600060008051602061341583398151915254604051637921219560e11b81523060048201526001600160a01b038681166024830152604482018690526001606483015260a06084830152600060a48301529091169150819063f242432a9060c401600060405180830381600087803b158015610bbb57600080fd5b505af1158015610bcf573d6000803e3d6000fd5b5050505050505050565b610be16119d7565b60005b8151811015610a6457610c0f828281518110610c0257610c02612eb5565b6020026020010151611a50565b80610c1981612ee1565b915050610be4565b610c2c6105db61170d565b610c485760405162461bcd60e51b8152600401610a5190612efa565b6001600160a01b038116610c9e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a51565b610ca781611c1c565b610caf610f36565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610a64573d6000803e3d6000fd5b600061077382611aed565b610cf76119d7565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c500480546001600160a01b0319166001600160a01b0392909216919091179055565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a838156020820152908101829052600090610d7790606001610b09565b5492915050565b610d866119d7565b610d906000611c34565b565b610d9a6119d7565b60005b8151811015610a6457610dc8828281518110610dbb57610dbb612eb5565b6020026020010151611c1c565b80610dd281612ee1565b915050610d9d565b610de56105db61170d565b610e015760405162461bcd60e51b8152600401610a5190612efa565b6001600160a01b038116610ca75760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a51565b6000805160206133d5833981519152546040516383e7f6ff60e01b81526000916001600160a01b031690829082906383e7f6ff90610e9d90899089908990600401612f58565b6040805180830381865afa158015610eb9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610edd9190612f7c565b60208101518151919250610ef091612fca565b9695505050505050565b600091825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610f2d6119d7565b6109d281611c1c565b610d906000805160206133f583398151915261036061170d565b6000805160206133d5833981519152546000906001600160a01b0316806365a69dcf8d85610f7e5730610f80565b8d5b8d8d8d8d8d8d8d6040518a63ffffffff1660e01b8152600401610fab9998979695949392919061306e565b602060405180830381865afa158015610fc8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fec91906130de565b9c9b505050505050505050505050565b600061104761100a856130f7565b3085858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611c8692505050565b949350505050565b60006107736000805160206133f583398151915283610efa565b6110746105db61170d565b6110905760405162461bcd60e51b8152600401610a5190612efa565b6002603354036110e25760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a51565b60026033556000805160206133d5833981519152546040516383e7f6ff60e01b81526001600160a01b039091169060009082906383e7f6ff9061112d90889088908890600401612f58565b6040805180830381865afa158015611149573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061116d9190612f7c565b6020810151815191925061118091612fca565b4710156111a05760405163050205f960e01b815260040160405180910390fd5b816001600160a01b031663acf1a841826020015183600001516111c39190612fca565b8787876040518563ffffffff1660e01b81526004016111e493929190612f58565b6000604051808303818588803b1580156111fd57600080fd5b505af1158015611211573d6000803e3d6000fd5b505060016033555050505050505050565b6000600080516020613415833981519152546001600160a01b031661124561170d565b6001600160a01b03161461126c576040516344e7d94960e01b815260040160405180910390fd5b600061127a83850185612800565b90506112858161171c565b60005b878110156112c4576112b28989838181106112a5576112a5612eb5565b90506020020135836117d3565b806112bc81612ee1565b915050611288565b5063bc197c8160e01b9a9950505050505050505050565b600054610100900460ff16158080156112fb5750600054600160ff909116105b806113155750303b158015611315575060005460ff166001145b6113785760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610a51565b6000805460ff19166001179055801561139b576000805461ff0019166101001790555b6000805160206133d583398151915280546001600160a01b038087166001600160a01b03199283161790925560008051602061341583398151915280548684169083161790557ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004805492851692909116919091179055611419611dc5565b611421611df3565b611429611df3565b611431611e1a565b611439611e51565b801561147f576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6114906105db61170d565b6114ac5760405162461bcd60e51b8152600401610a5190612efa565b6002603354036114fe5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a51565b600260338190555060006115478c8c8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061174e92505050565b905061155281611c03565b6115708c8c846115625730611564565b8c5b8c8c8c8c8c8c8c611e8a565b8161157f5761157f818b6117d3565b5050600160335550505050505050505050565b600082815260fb60205260409020600101546115ad8161193f565b6109bc8383611a68565b60006000805160206133d583398151915254604051631e29f97960e31b8152600481018490526001600160a01b039091169150819063f14fcbc890602401600060405180830381600087803b15801561160f57600080fd5b505af1158015611623573d6000803e3d6000fd5b505050505050565b6000600080516020613415833981519152546001600160a01b031661164e61170d565b6001600160a01b031614611675576040516344e7d94960e01b815260040160405180910390fd5b6001600160a01b038616156116a957600061169283850185612800565b905061169d8161171c565b6116a786826117d3565b505b5063f23a6e6160e01b9695505050505050565b6116c46119d7565b6116cd81611fd5565b6109d260008261204b565b60006001600160e01b03198216637965db0b60e01b148061077357506301ffc9a760e01b6001600160e01b0319831614610773565b6000611717612055565b905090565b6001600160a01b0381166109d25760405163b20f76e360e01b81526001600160a01b0382166004820152602401610a51565b60007f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae60001b826040516020016117859190613195565b604051602081830303815290604052805190602001206040516020016117b5929190918252602082015260400190565b60408051601f19818403018152919052805160209091012092915050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052819061181190606001610b09565b80546001600160a01b0319166001600160a01b039283161790556040519082169083907f45aa97e368889fb3527c1db60c59c2ae91e82f21778613449e46d4208c1c4b1290600090a35050565b606061186985612073565b600080876001600160a01b0316866118838b8a89896120d9565b6040516118909190613195565b60006040518083038160008787f1925050503d80600081146118ce576040519150601f19603f3d011682016040523d82523d6000602084013e6118d3565b606091505b5090925090506118e4603f876131b1565b5a116118f2576118f26131d3565b61193282826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c4544000000000000815250612109565b9998505050505050505050565b6109d28161194b61170d565b612142565b61195a8282610efa565b610a6457600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff1916600117905561199361170d565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6119df61170d565b6001600160a01b03166119fa6097546001600160a01b031690565b6001600160a01b031614610d905760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a51565b6109d26000805160206133f583398151915282611592565b611a728282610efa565b15610a6457600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff19169055611aa961170d565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101829052600090611b2c90606001610b09565b546001600160a01b0316905080611b595760405163124bad6360e31b815260048101839052602401610a51565b30600080516020613415833981519152546040516331a9108f60e11b8152600481018590526001600160a01b0390911690636352211e90602401602060405180830381865afa158015611bb0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bd491906131e9565b6001600160a01b031614611bfe576040516303b673fd60e21b815260048101839052602401610a51565b919050565b303303611c13576109d2816121a6565b6109d281612073565b6109d26000805160206133f58339815191528261204b565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015611ccd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cf191906130de565b90506000611d9f866060015180519060200120868860200151604051602001611d3f9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b9050818660200151148015610ef057508551610ef0906001600160a01b031682866121d0565b600054610100900460ff16611dec5760405162461bcd60e51b8152600401610a5190613206565b6001603355565b600054610100900460ff16610d905760405162461bcd60e51b8152600401610a5190613206565b600054610100900460ff16611e415760405162461bcd60e51b8152600401610a5190613206565b610d90611e4c61170d565b611c34565b600054610100900460ff16611e785760405162461bcd60e51b8152600401610a5190613206565b610d906000611e8561170d565b61204b565b6000805160206133d5833981519152546040516383e7f6ff60e01b81526001600160a01b039091169060009082906383e7f6ff90611ed0908f908f908e90600401612f58565b6040805180830381865afa158015611eec573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f109190612f7c565b60208101518151919250611f2391612fca565b471015611f435760405163050205f960e01b815260040160405180910390fd5b816001600160a01b03166374694a2b82602001518360000151611f669190612fca565b8e8e8e8e8e8e8e8e8e8e6040518c63ffffffff1660e01b8152600401611f959a99989796959493929190613251565b6000604051808303818588803b158015611fae57600080fd5b505af1158015611fc2573d6000803e3d6000fd5b5050505050505050505050505050505050565b611fdd6119d7565b6001600160a01b0381166120425760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610a51565b6109d281611c34565b610a648282611950565b600030330361206b575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290526000906060016040516020818303038152906040528051906020012090506120c88190565b546120d4906001612fca565b905550565b60608285856040516020016120f0939291906132c3565b6040516020818303038152906040529050949350505050565b60608315612118575081610990565b8251156121285782518084602001fd5b8160405162461bcd60e51b8152600401610a5191906127a4565b61214c8282610efa565b610a6457612164816001600160a01b03166014612312565b61216f836020612312565b604051602001612180929190613302565b60408051601f198184030181529082905262461bcd60e51b8252610a51916004016127a4565b6121ae6124ad565b81146109d257604051635637b6af60e11b815260048101829052602401610a51565b60008060006121df85856124c0565b909250905060008160048111156121f8576121f8613377565b1480156122165750856001600160a01b0316826001600160a01b0316145b1561222657600192505050610990565b600080876001600160a01b0316631626ba7e60e01b888860405160240161224e92919061338d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161228c9190613195565b600060405180830381855afa9150503d80600081146122c7576040519150601f19603f3d011682016040523d82523d6000602084013e6122cc565b606091505b50915091508180156122df575080516020145b801561230657508051630b135d3f60e11b9061230490830160209081019084016130de565b145b98975050505050505050565b606060006123218360026133a6565b61232c906002612fca565b6001600160401b0381111561234357612343612849565b6040519080825280601f01601f19166020018201604052801561236d576020820181803683370190505b509050600360fc1b8160008151811061238857612388612eb5565b60200101906001600160f81b031916908160001a905350600f60fb1b816001815181106123b7576123b7612eb5565b60200101906001600160f81b031916908160001a90535060006123db8460026133a6565b6123e6906001612fca565b90505b600181111561245e576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061241a5761241a612eb5565b1a60f81b82828151811061243057612430612eb5565b60200101906001600160f81b031916908160001a90535060049490941c93612457816133bd565b90506123e9565b5083156109905760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610a51565b60003033036120705750601f1936013590565b60008082516041036124f65760208301516040840151606085015160001a6124ea87828585612505565b945094505050506124fe565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561253c57506000905060036125e9565b8460ff16601b1415801561255457508460ff16601c14155b1561256557506000905060046125e9565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156125b9573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166125e2576000600192509250506125e9565b9150600090505b94509492505050565b60006020828403121561260457600080fd5b81356001600160e01b03198116811461099057600080fd5b6001600160a01b03811681146109d257600080fd5b60008083601f84011261264357600080fd5b5081356001600160401b0381111561265a57600080fd5b6020830191508360208285010111156124fe57600080fd5b60008060008060006080868803121561268a57600080fd5b85356126958161261c565b945060208601356126a58161261c565b93506040860135925060608601356001600160401b038111156126c757600080fd5b6126d388828901612631565b969995985093965092949392505050565b6000806000604084860312156126f957600080fd5b83356001600160401b038082111561271057600080fd5b908501906080828803121561272457600080fd5b9093506020850135908082111561273a57600080fd5b5061274786828701612631565b9497909650939450505050565b60005b8381101561276f578181015183820152602001612757565b50506000910152565b60008151808452612790816020860160208601612754565b601f01601f19169290920160200192915050565b6020815260006109906020830184612778565b6000602082840312156127c957600080fd5b5035919050565b600080604083850312156127e357600080fd5b8235915060208301356127f58161261c565b809150509250929050565b60006020828403121561281257600080fd5b81356109908161261c565b6000806040838503121561283057600080fd5b823561283b8161261c565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561288757612887612849565b604052919050565b600060208083850312156128a257600080fd5b82356001600160401b03808211156128b957600080fd5b818501915085601f8301126128cd57600080fd5b8135818111156128df576128df612849565b8060051b91506128f084830161285f565b818152918301840191848101908884111561290a57600080fd5b938501935b8385101561230657843592506129248361261c565b828252938501939085019061290f565b60008060006040848603121561294957600080fd5b83356001600160401b0381111561295f57600080fd5b61296b86828701612631565b909790965060209590950135949350505050565b60006001600160401b0383111561299857612998612849565b6129ab601f8401601f191660200161285f565b90508281528383830111156129bf57600080fd5b828260208301376000602084830101529392505050565b600082601f8301126129e757600080fd5b6109908383356020850161297f565b60008083601f840112612a0857600080fd5b5081356001600160401b03811115612a1f57600080fd5b6020830191508360208260051b85010111156124fe57600080fd5b80358015158114611bfe57600080fd5b803561ffff81168114611bfe57600080fd5b6000806000806000806000806000806101208b8d031215612a7c57600080fd5b8a356001600160401b0380821115612a9357600080fd5b612a9f8e838f016129d6565b9b5060208d01359150612ab18261261c565b90995060408c0135985060608c0135975060808c013590612ad18261261c565b90965060a08c01359080821115612ae757600080fd5b50612af48d828e016129f6565b9096509450612b07905060c08c01612a3a565b9250612b1560e08c01612a4a565b9150612b246101008c01612a3a565b90509295989b9194979a5092959850565b60008060008060008060008060a0898b031215612b5157600080fd5b8835612b5c8161261c565b97506020890135612b6c8161261c565b965060408901356001600160401b0380821115612b8857600080fd5b612b948c838d016129f6565b909850965060608b0135915080821115612bad57600080fd5b612bb98c838d016129f6565b909650945060808b0135915080821115612bd257600080fd5b50612bdf8b828c01612631565b999c989b5096995094979396929594505050565b600080600060608486031215612c0857600080fd5b8335612c138161261c565b92506020840135612c238161261c565b91506040840135612c338161261c565b809150509250925092565b60008060008060008060008060008060006101208c8e031215612c6057600080fd5b6001600160401b03808d351115612c7657600080fd5b612c838e8e358f01612631565b909c509a50612c9560208e013561261c565b60208d0135995060408d0135985060608d01359750612cb760808e013561261c565b60808d013596508060a08e01351115612ccf57600080fd5b50612ce08d60a08e01358e016129f6565b9095509350612cf160c08d01612a3a565b9250612cff60e08d01612a4a565b9150612d0e6101008d01612a3a565b90509295989b509295989b9093969950565b60008060008060008060a08789031215612d3957600080fd5b8635612d448161261c565b95506020870135612d548161261c565b9450604087013593506060870135925060808701356001600160401b03811115612d7d57600080fd5b612d8989828a01612631565b979a9699509497509295939492505050565b600080600060608486031215612db057600080fd5b8335612dbb8161261c565b92506020840135612dcb8161261c565b915060408401356001600160401b03811115612de657600080fd5b612df2868287016129d6565b9150509250925092565b608081526000612e0f6080830187612778565b6001600160a01b03958616602084015261ffff949094166040830152509216606090920191909152919050565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090610ef090830184612778565b6000808335601e19843603018112612e8657600080fd5b8301803591506001600160401b03821115612ea057600080fd5b6020019150368190038213156124fe57600080fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201612ef357612ef3612ecb565b5060010190565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b604081526000612f6c604083018587612f2f565b9050826020830152949350505050565b600060408284031215612f8e57600080fd5b604051604081018181106001600160401b0382111715612fb057612fb0612849565b604052825181526020928301519281019290925250919050565b8082018082111561077357610773612ecb565b81835260006020808501808196508560051b810191508460005b878110156130615782840389528135601e1988360301811261301857600080fd5b870185810190356001600160401b0381111561303357600080fd5b80360382131561304257600080fd5b61304d868284612f2f565b9a87019a9550505090840190600101612ff7565b5091979650505050505050565b60006101008083526130828184018d612778565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a085015290506130bc818789612fdd565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b6000602082840312156130f057600080fd5b5051919050565b60006080823603121561310957600080fd5b604051608081016001600160401b03828210818311171561312c5761312c612849565b816040528435915061313d8261261c565b8183526020850135602084015260408501356040840152606085013591508082111561316857600080fd5b50830136601f82011261317a57600080fd5b6131893682356020840161297f565b60608301525092915050565b600082516131a7818460208701612754565b9190910192915050565b6000826131ce57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b6000602082840312156131fb57600080fd5b81516109908161261c565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60006101008083526132668184018d8f612f2f565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a085015290506132a0818789612fdd565b94151560c0840152505061ffff9190911660e09091015298975050505050505050565b600084516132d5818460208901612754565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081526000835161333a816017850160208801612754565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835161336b816028840160208801612754565b01602801949350505050565b634e487b7160e01b600052602160045260246000fd5b8281526040602082015260006110476040830184612778565b808202811582820484141761077357610773612ecb565b6000816133cc576133cc612ecb565b50600019019056fe412386de53449251cbf7ce1f4c6a038bf9c0746e62d331b08ef0c3fa7d0ab6729f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a660793a5062d506d35cc8f1beda67ee5028c16bfcd9c923d5bfc439c04bd929b1a164736f6c6343000811000a","storage":{"0x0":"0xff"}},"0xc58206842e4030a3b2cabc78780ae7635173c533":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106102325760003560e01c80637c69eae211610130578063b5466669116100b8578063d284d97a1161007c578063d284d97a14610d4e578063d8d3cc6e14610dbc578063e67ca8a314610e3f578063e985e9c514610e5c578063ebf0c71714610e8a57610232565b8063b5466669146109ce578063b88d4fde14610a51578063c29b52f914610b15578063c87b56dd14610c5e578063ce9fb82b14610c7b57610232565b8063a22cb465116100ff578063a22cb4651461090b578063a7fc7a0714610939578063ab3b87fe1461095f578063b3f9e4cb1461098b578063b429afeb146109a857610232565b80637c69eae21461076457806395d89b41146107e75780639d743989146107ef5780639e5be9a51461087d57610232565b806342842e0e116101be5780635cbe1112116101825780635cbe11121461061d5780636352211e1461069257806366ac3b68146106af57806368b62d32146106b757806370a082311461073e57610232565b806342842e0e146104ed57806342966c6814610523578063430c208114610540578063538361a71461056c57806357aac5741461058f57610232565b8063081812fc11610205578063081812fc146103fa578063095ea7b3146104335780632392c1891461045f57806323b872dd1461048b5780632525d06a146104c157610232565b806301ffc9a71461023757806302759c37146102725780630467e014146102aa57806306fdde031461037d575b600080fd5b61025e6004803603602081101561024d57600080fd5b50356001600160e01b031916610e92565b604080519115158252519081900360200190f35b6102a86004803603606081101561028857600080fd5b506001600160a01b03813581169160208101359091169060400135610eb1565b005b6102a8600480360360808110156102c057600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156102ef57600080fd5b82018360208201111561030157600080fd5b803590602001918460018302840111600160201b8311171561032257600080fd5b919390929091602081019035600160201b81111561033f57600080fd5b82018360208201111561035157600080fd5b803590602001918460018302840111600160201b8311171561037257600080fd5b509092509050610ed3565b610385610f62565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103bf5781810151838201526020016103a7565b50505050905090810190601f1680156103ec5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6104176004803603602081101561041057600080fd5b5035610f84565b604080516001600160a01b039092168252519081900360200190f35b6102a86004803603604081101561044957600080fd5b506001600160a01b038135169060200135610fe6565b6102a86004803603604081101561047557600080fd5b506001600160a01b0381351690602001356110f7565b6102a8600480360360608110156104a157600080fd5b506001600160a01b03813581169160208101359091169060400135611115565b6102a8600480360360408110156104d757600080fd5b506001600160a01b03813516906020013561115a565b6102a86004803603606081101561050357600080fd5b506001600160a01b0381358116916020810135909116906040013561117a565b6102a86004803603602081101561053957600080fd5b5035611195565b61025e6004803603604081101561055657600080fd5b506001600160a01b0381351690602001356111e6565b6102a86004803603604081101561058257600080fd5b50803590602001356111f9565b6102a8600480360360808110156105a557600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156105df57600080fd5b8201836020820111156105f157600080fd5b803590602001918460018302840111600160201b8311171561061257600080fd5b50909250905061124f565b6102a86004803603604081101561063357600080fd5b81359190810190604081016020820135600160201b81111561065457600080fd5b82018360208201111561066657600080fd5b803590602001918460018302840111600160201b8311171561068757600080fd5b5090925090506112be565b610417600480360360208110156106a857600080fd5b5035611320565b6102a861137a565b61072c600480360360408110156106cd57600080fd5b81359190810190604081016020820135600160201b8111156106ee57600080fd5b82018360208201111561070057600080fd5b803590602001918460018302840111600160201b8311171561072157600080fd5b509092509050611385565b60408051918252519081900360200190f35b61072c6004803603602081101561075457600080fd5b50356001600160a01b03166113cf565b6102a86004803603606081101561077a57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156107a957600080fd5b8201836020820111156107bb57600080fd5b803590602001918460018302840111600160201b831117156107dc57600080fd5b509092509050611437565b61038561149a565b6102a86004803603608081101561080557600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561083f57600080fd5b82018360208201111561085157600080fd5b803590602001918460018302840111600160201b8311171561087257600080fd5b5090925090506114b6565b6102a86004803603608081101561089357600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156108cd57600080fd5b8201836020820111156108df57600080fd5b803590602001918460018302840111600160201b8311171561090057600080fd5b509092509050611506565b6102a86004803603604081101561092157600080fd5b506001600160a01b0381351690602001351515611564565b6102a86004803603602081101561094f57600080fd5b50356001600160a01b0316611630565b6102a86004803603604081101561097557600080fd5b506001600160a01b03813516906020013561164b565b610417600480360360208110156109a157600080fd5b5035611672565b61025e600480360360208110156109be57600080fd5b50356001600160a01b0316611694565b6102a8600480360360608110156109e457600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610a1357600080fd5b820183602082011115610a2557600080fd5b803590602001918460018302840111600160201b83111715610a4657600080fd5b5090925090506116a7565b6102a860048036036080811015610a6757600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b811115610aa157600080fd5b820183602082011115610ab357600080fd5b803590602001918460018302840111600160201b83111715610ad457600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506116fa945050505050565b6102a8600480360360a0811015610b2b57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b811115610b6557600080fd5b820183602082011115610b7757600080fd5b803590602001918460018302840111600160201b83111715610b9857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b811115610bea57600080fd5b820183602082011115610bfc57600080fd5b803590602001918460018302840111600160201b83111715610c1d57600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061174c945050505050565b61038560048036036020811015610c7457600080fd5b5035611797565b6102a860048036036080811015610c9157600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610cc057600080fd5b820183602082011115610cd257600080fd5b803590602001918460018302840111600160201b83111715610cf357600080fd5b919390929091602081019035600160201b811115610d1057600080fd5b820183602082011115610d2257600080fd5b803590602001918460018302840111600160201b83111715610d4357600080fd5b509092509050611892565b6102a860048036036020811015610d6457600080fd5b810190602081018135600160201b811115610d7e57600080fd5b820183602082011115610d9057600080fd5b803590602001918460018302840111600160201b83111715610db157600080fd5b50909250905061191b565b6102a860048036036060811015610dd257600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610e0157600080fd5b820183602082011115610e1357600080fd5b803590602001918460018302840111600160201b83111715610e3457600080fd5b50909250905061199e565b6102a860048036036020811015610e5557600080fd5b50356119f3565b61025e60048036036040811015610e7257600080fd5b506001600160a01b0381358116916020013516611a05565b61072c611a33565b6001600160e01b03191660009081526020819052604090205460ff1690565b610eba33611694565b610ec357600080fd5b610ece838383611a57565b505050565b610edc33611694565b610ee557600080fd5b610f5a868686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8a018190048102820181019092528881529250889150879081908401838280828437600092019190915250611a9f92505050565b505050505050565b6040805180820190915260078152662e63727970746f60c81b60208201525b90565b6000610f8f82611ac9565b610fca5760405162461bcd60e51b815260040180806020018281038252602c815260200180612848602c913960400191505060405180910390fd5b506000908152600360205260409020546001600160a01b031690565b6000610ff182611320565b9050806001600160a01b0316836001600160a01b031614156110445760405162461bcd60e51b81526004018080602001828103825260218152602001806128bf6021913960400191505060405180910390fd5b336001600160a01b038216148061106057506110608133611a05565b61109b5760405162461bcd60e51b815260040180806020018281038252603881526020018061279c6038913960400191505060405180910390fd5b60008281526003602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b806111023382611ae6565b61110b57600080fd5b610ece8383611b82565b61111f3382611ae6565b610ec35760405162461bcd60e51b81526004018080602001828103825260318152602001806128e06031913960400191505060405180910390fd5b61116333611694565b61116c57600080fd5b6111768282611b82565b5050565b610ece838383604051806020016040528060008152506116fa565b61119f3382611ae6565b6111da5760405162461bcd60e51b81526004018080602001828103825260308152602001806129366030913960400191505060405180910390fd5b6111e381611bf8565b50565b60006111f28383611ae6565b9392505050565b6000828152600860205260409020546001600160a01b0316331461121c57600080fd5b6040518290829033907ff10fc780c78f994a214c79a2ae8d8b7bfe7cc3f0f935a8f05a29525e71d7f12790600090a45050565b61125833611694565b61126157600080fd5b61126c858585611a57565b6112ae85858585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611c7992505050565b6112b757600080fd5b5050505050565b826112c93382611ae6565b6112d257600080fd5b61131a6113158585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b611bf8565b50505050565b6000818152600260205260408120546001600160a01b0316806113745760405162461bcd60e51b81526004018080602001828103825260298152602001806127fe6029913960400191505060405180910390fd5b92915050565b61138333611e64565b565b60006113c78484848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b949350505050565b60006001600160a01b0382166114165760405162461bcd60e51b815260040180806020018281038252602a8152602001806127d4602a913960400191505060405180910390fd5b6001600160a01b038216600090815260046020526040902061137490611e75565b826114423382611ae6565b61144b57600080fd5b6112b7858585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250611a9f915050565b604080518082019091526002815261155160f21b602082015290565b6112b785858585858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201829052506040805160208101909152908152925061174c915050565b826115113382611ae6565b61151a57600080fd5b610f5a868661155f8787878080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b611a57565b6001600160a01b0382163314156115c2576040805162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604482015290519081900360640190fd5b3360008181526005602090815260408083206001600160a01b03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b61163933611694565b61164257600080fd5b6111e381611e79565b806116563382611ae6565b61165f57600080fd5b610ece61166b83611320565b8484611e8a565b6000818152600860205260408120546001600160a01b03168061137457600080fd5b600061137460018363ffffffff611fce16565b6116b033611694565b6116b957600080fd5b61131a848484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061203592505050565b611705848484611115565b61171184848484611c79565b61131a5760405162461bcd60e51b815260040180806020018281038252603281526020018061271a6032913960400191505060405180910390fd5b826117573382611ae6565b61176057600080fd5b600061176c8585611dac565b9050611779878783611a57565b61178587878386611c79565b61178e57600080fd5b50505050505050565b60606117a282611ac9565b6117ab57600080fd5b600760066000848152602001908152602001600020604051602001808380546001816001161561010002031660029004801561181e5780601f106117fc57610100808354040283529182019161181e565b820191906000526020600020905b81548152906001019060200180831161180a575b5050828054600181600116156101000203166002900480156118775780601f10611855576101008083540402835291820191611877565b820191906000526020600020905b815481529060010190602001808311611863575b505060408051601f1981840301815291905295945050505050565b8461189d3382611ae6565b6118a657600080fd5b61178e878787878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b018190048102820181019092528981529250899150889081908401838280828437600092019190915250611a9f92505050565b61192433611694565b61192d57600080fd5b611939600783836125cf565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b828260405180806020018281038252848482818152602001925080828437600083820152604051601f909101601f19169092018290039550909350505050a15050565b826119a93382611ae6565b6119b257600080fd5b6112b7858585858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061203592505050565b6119fc33611694565b6111da57600080fd5b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b7f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f90565b611a62838383611e8a565b6000818152600860205260409020546001600160a01b031615610ece57600090815260086020526040902080546001600160a01b03191690555050565b611aaa848484612035565b611ac0600085611aba8686611dac565b84611c79565b61131a57600080fd5b6000908152600260205260409020546001600160a01b0316151590565b6000611af182611ac9565b611b2c5760405162461bcd60e51b815260040180806020018281038252602c815260200180612770602c913960400191505060405180910390fd5b6000611b3783611320565b9050806001600160a01b0316846001600160a01b03161480611b725750836001600160a01b0316611b6784610f84565b6001600160a01b0316145b806113c757506113c78185611a05565b611b8b81611ac9565b611b9457600080fd5b6040516001600160a01b0383169082907fb1b34e6d89e1c584527d447f4b29ffad55635a37edeeb564939a6483401b31a590600090a3600090815260086020526040902080546001600160a01b0319166001600160a01b0392909216919091179055565b611c018161220f565b6000818152600860205260409020546001600160a01b031615611c3b57600081815260086020526040902080546001600160a01b03191690555b60008181526006602052604090205460026000196101006001841615020190911604156111e35760008181526006602052604081206111e39161264d565b6000611c8d846001600160a01b0316612221565b611c99575060016113c7565b604051630a85bd0160e11b815233600482018181526001600160a01b03888116602485015260448401879052608060648501908152865160848601528651600095928a169463150b7a029490938c938b938b939260a4019060208501908083838e5b83811015611d13578181015183820152602001611cfb565b50505050905090810190601f168015611d405780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015611d6257600080fd5b505af1158015611d76573d6000803e3d6000fd5b505050506040513d6020811015611d8c57600080fd5b50516001600160e01b031916630a85bd0160e11b14915050949350505050565b6000815160001415611dbd57600080fd5b82826040516020018082805190602001908083835b60208310611df15780518252601f199092019160209182019101611dd2565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040528051906020012060405160200180838152602001828152602001925050506040516020818303038152906040528051906020012060001c905092915050565b6111e360018263ffffffff61222716565b5490565b6111e360018263ffffffff61228e16565b826001600160a01b0316611e9d82611320565b6001600160a01b031614611ee25760405162461bcd60e51b81526004018080602001828103825260298152602001806128966029913960400191505060405180910390fd5b6001600160a01b038216611f275760405162461bcd60e51b815260040180806020018281038252602481526020018061274c6024913960400191505060405180910390fd5b611f308161230f565b6001600160a01b0383166000908152600460205260409020611f519061234a565b6001600160a01b0382166000908152600460205260409020611f7290612361565b60008181526002602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60006001600160a01b0382166120155760405162461bcd60e51b81526004018080602001828103825260228152602001806128746022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b60006120418383611dac565b905061204d848261236a565b815161205857600080fd5b61206181611ac9565b61206a57600080fd5b606082600660008681526020019081526020016000206040516020018083805190602001908083835b602083106120b25780518252601f199092019160209182019101612093565b6001836020036101000a03801982511681845116808217855250505050505090500180601760f91b815250600101828054600181600116156101000203166002900480156121375780601f10612115576101008083540402835291820191612137565b820191906000526020600020905b815481529060010190602001808311612123575b505060408051601f19818403018152918152600087815260066020908152919020825192965061216d9550935085019150612691565b50817fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952826040518080602001828103825283818151815260200191508051906020019080838360005b838110156121ce5781810151838201526020016121b6565b50505050905090810190601f1680156121fb5780820380516001836020036101000a031916815260200191505b509250505060405180910390a25050505050565b6111e361221b82611320565b8261249b565b3b151590565b6122318282611fce565b61226c5760405162461bcd60e51b81526004018080602001828103825260218152602001806128276021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff19169055565b6122988282611fce565b156122ea576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b6000818152600360205260409020546001600160a01b0316156111e357600090815260036020526040902080546001600160a01b0319169055565b805461235d90600163ffffffff61257216565b9055565b80546001019055565b6001600160a01b0382166123c5576040805162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f2061646472657373604482015290519081900360640190fd5b6123ce81611ac9565b15612420576040805162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000604482015290519081900360640190fd5b600081815260026020908152604080832080546001600160a01b0319166001600160a01b03871690811790915583526004909152902061245f90612361565b60405181906001600160a01b038416906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b816001600160a01b03166124ae82611320565b6001600160a01b0316146124f35760405162461bcd60e51b81526004018080602001828103825260258152602001806129116025913960400191505060405180910390fd5b6124fc8161230f565b6001600160a01b038216600090815260046020526040902061251d9061234a565b60008181526002602052604080822080546001600160a01b0319169055518291906001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6000828211156125c9576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106126105782800160ff1982351617855561263d565b8280016001018555821561263d579182015b8281111561263d578235825591602001919060010190612622565b506126499291506126ff565b5090565b50805460018160011615610100020316600290046000825580601f1061267357506111e3565b601f0160209004906000526020600020908101906111e391906126ff565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106126d257805160ff191683800117855561263d565b8280016001018555821561263d579182015b8281111561263d5782518255916020019190600101906126e4565b610f8191905b80821115612649576000815560010161270556fe4552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c654552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e526f6c65733a206163636f756e7420697320746865207a65726f20616464726573734552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f7665644552433732313a206275726e206f6620746f6b656e2074686174206973206e6f74206f776e4552433732314275726e61626c653a2063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564a265627a7a72315820fb6a1b26cc352dbb05e6627fd530bbb44114ac3a349f30d1f071136c656d20dc64736f6c634300050c0032","storage":{"0x7":"0x68747470733a2f2f6578616d706c652e636f6d2f000000000000000000000028","0xbdf39e9e65b2355b1b0b06df799c09159f0ab90f06a9bb2153f5de7d9b0ea81":"0x1","0x1a306d3e9bf29128dee78d8d16c9f378a11bbdf917a9caf986fc6e60846e37e7":"0x63727970746f000000000000000000000000000000000000000000000000000c","0x42c63635470f1fb1d6d4b6441c413cb435b1ebb6fedd1896dd5e25d1399147dd":"0x1","0x605d7a0bb2b20c4004d356eb969ff104dcca62360aa356247072f5e0df6472e3":"0xdead","0x67be87c3ff9960ca1e9cfac5cab2ff4747269cf9ed20c9b7306235ac35a491c5":"0x1","0x70f464f95f9ab7aba03264fd4cac1711d774d3703ce74217180264d4efc2105f":"0x1","0x76a72f26a108e6f3f687141f5f42d21d65857c03cb1b01aa1284f9a9ccd085da":"0x1","0x9562381dfbc2d8b8b66e765249f330164b73e329e5f01670660643571d1974df":"0x1","0x9f23d2403fb64167582d316b1bc5b35a6ed48524341ab24947c71df77304b29e":"0x1","0xf7815fccbf112960a73756e185887fedcb9fc64ca0a16cc5923b7960ed780800":"0x1"}},"0xc965345edac823d56812cd20a10316233916a605":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101c6575f3560e01c806395d89b41116100fe578063c87b56dd1161009e578063e985e9c51161006e578063e985e9c5146103d4578063f2fde38b1461040f578063f6a74ed714610422578063fca247ac14610435575f80fd5b8063c87b56dd14610377578063d6e4fa861461038a578063da8c229e146103a9578063ddf7fcb0146103cb575f80fd5b8063a7fc7a07116100d9578063a7fc7a0714610334578063b88d4fde14610347578063c1a287e21461035a578063c475abff14610364575f80fd5b806395d89b411461030657806396e494e81461030e578063a22cb46514610321575f80fd5b80633f15457f116101695780636352211e116101445780636352211e146102c757806370a08231146102da578063715018a6146102ed5780638da5cb5b146102f5575f80fd5b80633f15457f1461028e57806342842e0e146102a15780634e543b26146102b4575f80fd5b8063095ea7b3116101a4578063095ea7b3146102325780630e297b451461024757806323b872dd1461026857806328ed4f6c1461027b575f80fd5b806301ffc9a7146101ca57806306fdde03146101f2578063081812fc14610207575b5f80fd5b6101dd6101d83660046117dd565b610448565b60405190151581526020015b60405180910390f35b6101fa610499565b6040516101e99190611845565b61021a610215366004611857565b610528565b6040516001600160a01b0390911681526020016101e9565b610245610240366004611882565b61054d565b005b61025a6102553660046118ac565b610666565b6040519081526020016101e9565b6102456102763660046118e1565b61067b565b61024561028936600461190e565b6106ac565b60085461021a906001600160a01b031681565b6102456102af3660046118e1565b6107be565b6102456102c236600461193c565b6107d8565b61021a6102d5366004611857565b610848565b61025a6102e836600461193c565b610869565b6102456108ed565b6006546001600160a01b031661021a565b6101fa610900565b6101dd61031c366004611857565b61090f565b61024561032f366004611957565b610934565b61024561034236600461193c565b610943565b61024561035536600461199b565b610996565b61025a6276a70081565b61025a610372366004611a74565b6109ce565b6101fa610385366004611857565b610b52565b61025a610398366004611857565b5f9081526007602052604090205490565b6101dd6103b736600461193c565b600a6020525f908152604090205460ff1681565b61025a60095481565b6101dd6103e2366004611a94565b6001600160a01b039182165f90815260056020908152604080832093909416825291909152205460ff1690565b61024561041d36600461193c565b610bc2565b61024561043036600461193c565b610c3b565b61025a6104433660046118ac565b610c8b565b5f6001600160e01b031982166301ffc9a760e01b148061047857506001600160e01b031982166380ac58cd60e01b145b8061049357506001600160e01b03198216630a3b53db60e21b145b92915050565b60605f80546104a790611ac0565b80601f01602080910402602001604051908101604052809291908181526020018280546104d390611ac0565b801561051e5780601f106104f55761010080835404028352916020019161051e565b820191905f5260205f20905b81548152906001019060200180831161050157829003601f168201915b5050505050905090565b5f61053282610c99565b505f908152600460205260409020546001600160a01b031690565b5f61055782610cf7565b9050806001600160a01b0316836001600160a01b0316036105c95760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084015b60405180910390fd5b336001600160a01b03821614806105e557506105e581336103e2565b6106575760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016105c0565b6106618383610d56565b505050565b5f6106738484845f610dc3565b949350505050565b6106853382610fc7565b6106a15760405162461bcd60e51b81526004016105c090611af8565b610661838383611040565b6008546009546040516302571be360e01b8152600481019190915230916001600160a01b0316906302571be390602401602060405180830381865afa1580156106f7573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061071b9190611b45565b6001600160a01b03161461072d575f80fd5b6107373383610fc7565b61073f575f80fd5b6008546009546040516306ab592360e01b81526004810191909152602481018490526001600160a01b038381166044830152909116906306ab5923906064016020604051808303815f875af115801561079a573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106619190611b60565b61066183838360405180602001604052805f815250610996565b6107e06111a2565b600854600954604051630c4b7b8560e11b815260048101919091526001600160a01b03838116602483015290911690631896f70a906044015f604051808303815f87803b15801561082f575f80fd5b505af1158015610841573d5f803e3d5ffd5b5050505050565b5f818152600760205260408120544210610860575f80fd5b61049382610cf7565b5f6001600160a01b0382166108d25760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b60648201526084016105c0565b506001600160a01b03165f9081526003602052604090205490565b6108f56111a2565b6108fe5f6111fc565b565b6060600180546104a790611ac0565b5f81815260076020526040812054429061092d906276a70090611b77565b1092915050565b61093f33838361124d565b5050565b61094b6111a2565b6001600160a01b0381165f818152600a6020526040808220805460ff19166001179055517f0a8bb31534c0ed46f380cb867bd5c803a189ced9a764e30b3a4991a9901d74749190a250565b6109a03383610fc7565b6109bc5760405162461bcd60e51b81526004016105c090611af8565b6109c88484848461131a565b50505050565b6008546009546040516302571be360e01b815260048101919091525f9130916001600160a01b03909116906302571be390602401602060405180830381865afa158015610a1d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a419190611b45565b6001600160a01b031614610a53575f80fd5b335f908152600a602052604090205460ff16610a6d575f80fd5b5f838152600760205260409020544290610a8b906276a70090611b77565b1015610a95575f80fd5b610aa26276a70083611b77565b5f848152600760205260409020546276a70090610ac0908590611b77565b610aca9190611b77565b11610ad3575f80fd5b5f8381526007602052604081208054849290610af0908490611b77565b90915550505f838152600760205260409081902054905184917f9b87a00e30f1ac65d898f070f8a3488fe60517182d0a2098e1b4b93a54aa9bd691610b3791815260200190565b60405180910390a250505f9081526007602052604090205490565b6060610b5d82610c99565b5f610b7260408051602081019091525f815290565b90505f815111610b905760405180602001604052805f815250610bbb565b80610b9a8461134d565b604051602001610bab929190611b96565b6040516020818303038152906040525b9392505050565b610bca6111a2565b6001600160a01b038116610c2f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016105c0565b610c38816111fc565b50565b610c436111a2565b6001600160a01b0381165f818152600a6020526040808220805460ff19169055517f33d83959be2573f5453b12eb9d43b3499bc57d96bd2f067ba44803c859e811139190a250565b5f6106738484846001610dc3565b5f818152600260205260409020546001600160a01b0316610c385760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105c0565b5f818152600260205260408120546001600160a01b0316806104935760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105c0565b5f81815260046020526040902080546001600160a01b0319166001600160a01b0384169081179091558190610d8a82610cf7565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6008546009546040516302571be360e01b815260048101919091525f9130916001600160a01b03909116906302571be390602401602060405180830381865afa158015610e12573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e369190611b45565b6001600160a01b031614610e48575f80fd5b335f908152600a602052604090205460ff16610e62575f80fd5b610e6b8561090f565b610e73575f80fd5b610e806276a70042611b77565b6276a700610e8e8542611b77565b610e989190611b77565b11610ea1575f80fd5b610eab8342611b77565b5f868152600760209081526040808320939093556002905220546001600160a01b031615610edc57610edc856113dd565b610ee6848661146f565b8115610f6d576008546009546040516306ab592360e01b81526004810191909152602481018790526001600160a01b038681166044830152909116906306ab5923906064016020604051808303815f875af1158015610f47573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f6b9190611b60565b505b6001600160a01b038416857fb3d987963d01b2f68493b4bdb130988f157ea43070d4ad840fee0466ed9370d9610fa38642611b77565b60405190815260200160405180910390a3610fbe8342611b77565b95945050505050565b5f80610fd283610848565b9050806001600160a01b0316846001600160a01b0316148061100d5750836001600160a01b031661100284610528565b6001600160a01b0316145b8061067357506001600160a01b038082165f9081526005602090815260408083209388168352929052205460ff16610673565b826001600160a01b031661105382610cf7565b6001600160a01b0316146110795760405162461bcd60e51b81526004016105c090611bc4565b6001600160a01b0382166110db5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b60648201526084016105c0565b826001600160a01b03166110ee82610cf7565b6001600160a01b0316146111145760405162461bcd60e51b81526004016105c090611bc4565b5f81815260046020908152604080832080546001600160a01b03199081169091556001600160a01b038781168086526003855283862080545f1901905590871680865283862080546001019055868652600290945282852080549092168417909155905184937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6006546001600160a01b031633146108fe5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016105c0565b600680546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b816001600160a01b0316836001600160a01b0316036112ae5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c65720000000000000060448201526064016105c0565b6001600160a01b038381165f81815260056020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b611325848484611040565b611331848484846115f7565b6109c85760405162461bcd60e51b81526004016105c090611c09565b60605f611359836116f1565b60010190505f8167ffffffffffffffff81111561137857611378611987565b6040519080825280601f01601f1916602001820160405280156113a2576020820181803683370190505b5090508181016020015b5f19016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a85049450846113ac57509392505050565b5f6113e782610cf7565b90506113f282610cf7565b5f83815260046020908152604080832080546001600160a01b03199081169091556001600160a01b0385168085526003845282852080545f190190558785526002909352818420805490911690555192935084927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6001600160a01b0382166114c55760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f206164647265737360448201526064016105c0565b5f818152600260205260409020546001600160a01b0316156115295760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105c0565b5f818152600260205260409020546001600160a01b03161561158d5760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105c0565b6001600160a01b0382165f81815260036020908152604080832080546001019055848352600290915280822080546001600160a01b0319168417905551839291907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b5f6001600160a01b0384163b156116e957604051630a85bd0160e11b81526001600160a01b0385169063150b7a029061163a903390899088908890600401611c5b565b6020604051808303815f875af1925050508015611674575060408051601f3d908101601f1916820190925261167191810190611c97565b60015b6116cf573d8080156116a1576040519150601f19603f3d011682016040523d82523d5f602084013e6116a6565b606091505b5080515f036116c75760405162461bcd60e51b81526004016105c090611c09565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610673565b506001610673565b5f8072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b831061172f5772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef8100000000831061175b576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc10000831061177957662386f26fc10000830492506010015b6305f5e1008310611791576305f5e100830492506008015b61271083106117a557612710830492506004015b606483106117b7576064830492506002015b600a83106104935760010192915050565b6001600160e01b031981168114610c38575f80fd5b5f602082840312156117ed575f80fd5b8135610bbb816117c8565b5f5b838110156118125781810151838201526020016117fa565b50505f910152565b5f81518084526118318160208601602086016117f8565b601f01601f19169290920160200192915050565b602081525f610bbb602083018461181a565b5f60208284031215611867575f80fd5b5035919050565b6001600160a01b0381168114610c38575f80fd5b5f8060408385031215611893575f80fd5b823561189e8161186e565b946020939093013593505050565b5f805f606084860312156118be575f80fd5b8335925060208401356118d08161186e565b929592945050506040919091013590565b5f805f606084860312156118f3575f80fd5b83356118fe8161186e565b925060208401356118d08161186e565b5f806040838503121561191f575f80fd5b8235915060208301356119318161186e565b809150509250929050565b5f6020828403121561194c575f80fd5b8135610bbb8161186e565b5f8060408385031215611968575f80fd5b82356119738161186e565b915060208301358015158114611931575f80fd5b634e487b7160e01b5f52604160045260245ffd5b5f805f80608085870312156119ae575f80fd5b84356119b98161186e565b935060208501356119c98161186e565b925060408501359150606085013567ffffffffffffffff808211156119ec575f80fd5b818701915087601f8301126119ff575f80fd5b813581811115611a1157611a11611987565b604051601f8201601f19908116603f01168101908382118183101715611a3957611a39611987565b816040528281528a6020848701011115611a51575f80fd5b826020860160208301375f60208483010152809550505050505092959194509250565b5f8060408385031215611a85575f80fd5b50508035926020909101359150565b5f8060408385031215611aa5575f80fd5b8235611ab08161186e565b915060208301356119318161186e565b600181811c90821680611ad457607f821691505b602082108103611af257634e487b7160e01b5f52602260045260245ffd5b50919050565b6020808252602d908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526c1c881bdc88185c1c1c9bdd9959609a1b606082015260800190565b5f60208284031215611b55575f80fd5b8151610bbb8161186e565b5f60208284031215611b70575f80fd5b5051919050565b8082018082111561049357634e487b7160e01b5f52601160045260245ffd5b5f8351611ba78184602088016117f8565b835190830190611bbb8183602088016117f8565b01949350505050565b60208082526025908201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060408201526437bbb732b960d91b606082015260800190565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6001600160a01b03858116825284166020820152604081018390526080606082018190525f90611c8d9083018461181a565b9695505050505050565b5f60208284031215611ca7575f80fd5b8151610bbb816117c856fea164736f6c6343000818000a","storage":{"0x0":"0x0","0x1":"0x0","0x6":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x8":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0x9":"0x93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae","0x9b8bc185dce56a7ea1b27d35e40ac15dcdf9144303dfd4d8880220078bf21a2c":"0x1","0xdb5e6a17df8534b92b0c8de590f14b4fb4b5eb2c62ef1bf7a05555e354797508":"0x1","0xe1a982900207b619cb6c39be8cb5e60da1370171412fb65b5efc25e2dce3c34c":"0x1"}},"0xce4bb7dc1eb9dce75743de6a4b48534fd427ef51":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xe85541865bbb62a05064ce5c9f41cc293a8ea996","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0xd178b720229c39de617846f84cf9c8d32a63a23d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610106575f3560e01c806371017a541161009e5780639e32d3641161006e5780639e32d3641461025a578063a424740014610281578063dd6b9e2214610294578063e1c4b65a146102a7578063e35a14e5146102ba575f80fd5b806371017a541461020e5780637b103999146102215780638f0dbd25146102345780639810b69514610247575f80fd5b8063485cc955116100d9578063485cc95514610191578063572b6c05146101a457806358884432146101d05780636ccbae5f146101fb575f80fd5b8063150b7a021461010a5780631694116d1461013b5780631bf7e13e146101505780631c351a9d14610170575b5f80fd5b61011d610118366004611434565b6102e2565b6040516001600160e01b031990911681526020015b60405180910390f35b61014e6101493660046114e3565b610372565b005b61016361015e366004611549565b61040d565b6040516101329190611601565b61018361017e366004611613565b6104d6565b604051908152602001610132565b61014e61019f366004611666565b6105c3565b6101c06101b236600461169d565b6001600160a01b0316301490565b6040519015158152602001610132565b6067546101e3906001600160a01b031681565b6040516001600160a01b039091168152602001610132565b6101836102093660046116b8565b6106f8565b6101e361021c3660046116cf565b610751565b6066546101e3906001600160a01b031681565b61014e6102423660046116ef565b610791565b6101e36102553660046116cf565b610806565b6101837fd81bbfcee722494b885e891546eeac23d0eedcd44038d7a2f6ef9ec2f9e0d23981565b6101c061028f366004611549565b61085f565b6101c06102a236600461172d565b6108a8565b61014e6102b5366004611771565b61091d565b6101e36102c83660046116b8565b5f908152606560205260409020546001600160a01b031690565b6066545f906001600160a01b03166102f8610a43565b6001600160a01b031614158061032257505f848152606560205260409020546001600160a01b0316155b156103605783610330610a43565b60405163634afa0d60e01b815260048101929092526001600160a01b031660248201526044015b60405180910390fd5b50630a85bd0160e11b95945050505050565b828261037e8282610751565b6001600160a01b031661038f610a43565b6001600160a01b0316146103c057604051632cd9b44d60e11b81526004810183905260248101829052604401610357565b5f6103cb8686610806565b90505f5b87811015610402576103fa8989838181106103ec576103ec6117b0565b905060200201358387610a51565b6001016103cf565b505050505050505050565b60605f5a905061041e85858561085f565b61043b57604051638baa579f60e01b815260040160405180910390fd5b6104cb61044b602087018761169d565b3060408801358461045f60608b018b6117c4565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f92019190915250610b8492505050565b9150505b9392505050565b6067545f906001600160a01b031663aa271e1a6104f1610a43565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015610533573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105579190611807565b1580610572575030610567610a43565b6001600160a01b0316145b156105a45761057f610a43565b60405163e2c8c9d560e01b81526001600160a01b039091166004820152602401610357565b5f6105b0858585610c60565b90506105bb81610e73565b949350505050565b5f54610100900460ff16158080156105e157505f54600160ff909116105b806105fa5750303b1580156105fa57505f5460ff166001145b61065d5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610357565b5f805460ff19166001179055801561067e575f805461ff0019166101001790555b606680546001600160a01b038086166001600160a01b031992831617909255606780549285169290911691909117905580156106f3575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f9061074a906060016040516020818303038152906040528051906020012090565b5492915050565b5f80838360405160200161076f929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209150505b92915050565b828261079d8282610751565b6001600160a01b03166107ae610a43565b6001600160a01b0316146107df57604051632cd9b44d60e11b81526004810183905260248101829052604401610357565b856107e981610e73565b6107fd876107f78889610806565b86610a51565b50505050505050565b5f8060026108148585610e8f565b6040516108219190611826565b602060405180830381855afa15801561083c573d5f803e3d5ffd5b5050506040513d601f19601f820116820180604052508101906105bb9190611841565b5f6105bb61086c856118c6565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250610f1492505050565b5f805b8281101561091257846001600160a01b03166108f38585848181106108d2576108d26117b0565b905060200201355f908152606560205260409020546001600160a01b031690565b6001600160a01b03161461090a575f9150506104cf565b6001016108ab565b506001949350505050565b6067546001600160a01b031663aa271e1a610936610a43565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015610978573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061099c9190611807565b15806109b75750306109ac610a43565b6001600160a01b0316145b156109c45761057f610a43565b5f5b818110156106f357610a3a8383838181106109e3576109e36117b0565b90506020028101906109f59190611983565b610a039060208101906117c4565b858585818110610a1557610a156117b0565b9050602002810190610a279190611983565b610a3590602081019061169d565b610c60565b506001016109c6565b5f610a4c611059565b905090565b5f838152606560205260409020546001600160a01b03838116911614610ab4575f83815260656020526040908190205490516326995d8360e11b8152600481018590526001600160a01b0391821660248201529083166044820152606401610357565b5f838152606560205260409081902080546001600160a01b03191690556066549051632142170760e11b81523060048201526001600160a01b03838116602483015260448201869052909116906342842e0e906064015f604051808303815f87803b158015610b21575f80fd5b505af1158015610b33573d5f803e3d5ffd5b50505050806001600160a01b0316610b49610a43565b6001600160a01b0316847f9a471856befea1cabcd7fc8a1c4d70ea07b8ed2ee205cc361f932433542ef3fe60405160405180910390a4505050565b6060610b8f85611076565b5f80876001600160a01b031686610ba88b8a89896110db565b604051610bb59190611826565b5f604051808303815f8787f1925050503d805f8114610bef576040519150601f19603f3d011682016040523d82523d5f602084013e610bf4565b606091505b509092509050610c05603f876119bf565b5a11610c1357610c136119d2565b610c5382826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061110b565b9998505050505050505050565b5f60605f7fd81bbfcee722494b885e891546eeac23d0eedcd44038d7a2f6ef9ec2f9e0d2398686604051602001610c989291906119e6565b60405160208183030381529060405280519060200120604051602001610cc8929190918252602082015260400190565b60408051808303601f19018152828252805160209091012060028084526060840190925292505f9190816020015b6060815260200190600190039081610cf657905050905086868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920182905250855186945090925015159050610d5657610d566117b0565b6020026020010181905250604051806040016040528060038152602001621e9a5b60ea1b81525081600181518110610d9057610d906117b0565b6020908102919091018101919091525f8381526065909152604080822080546001600160a01b0319166001600160a01b03898116919091179091556067549151635cd7e3b360e01b8152911691635cd7e3b391610df891309186918991829190600401611a4d565b5f604051808303815f87803b158015610e0f575f80fd5b505af1158015610e21573d5f803e3d5ffd5b50505050846001600160a01b0316827f08717469d38a4b02325ea6637978c7952f94d3d8fc7848994f618ddbf4d637f18989604051610e61929190611aab565b60405180910390a35095945050505050565b303303610e8657610e8381611144565b50565b610e8381611076565b60605f82610e9f60016020611ad9565b60ff1660208110610eb257610eb26117b0565b1a9050610ec0600282611af2565b60ff1615610ecf576003610ed2565b60025b84604051602001610efc92919060f89290921b6001600160f81b0319168252600182015260210190565b60405160208183030381529060405291505092915050565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015610f58573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f7c9190611841565b90505f611029866060015180519060200120868860200151604051602001610fc99392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561104f5750855161104f906001600160a01b0316828661116e565b9695505050505050565b5f30330361106e575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f906060016040516020818303038152906040528051906020012090506110ca8190565b546110d6906001611b13565b905550565b60608285856040516020016110f293929190611b26565b6040516020818303038152906040529050949350505050565b6060831561111a5750816104cf565b82511561112a5782518084602001fd5b8160405162461bcd60e51b81526004016103579190611601565b61114c6112a9565b8114610e8357604051635637b6af60e11b815260048101829052602401610357565b5f805f61117b85856112bb565b90925090505f81600481111561119357611193611b64565b1480156111b15750856001600160a01b0316826001600160a01b0316145b156111c1576001925050506104cf565b5f80876001600160a01b0316631626ba7e60e01b88886040516024016111e8929190611b78565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516112269190611826565b5f60405180830381855afa9150503d805f811461125e576040519150601f19603f3d011682016040523d82523d5f602084013e611263565b606091505b5091509150818015611276575080516020145b801561129d57508051630b135d3f60e11b9061129b9083016020908101908401611841565b145b98975050505050505050565b5f3033036110735750601f1936013590565b5f8082516041036112ef576020830151604084015160608501515f1a6112e3878285856112fd565b945094505050506112f6565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561133257505f905060036113d9565b8460ff16601b1415801561134a57508460ff16601c14155b1561135a57505f905060046113d9565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156113ab573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b0381166113d3575f600192509250506113d9565b91505f90505b94509492505050565b6001600160a01b0381168114610e83575f80fd5b5f8083601f840112611406575f80fd5b50813567ffffffffffffffff81111561141d575f80fd5b6020830191508360208285010111156112f6575f80fd5b5f805f805f60808688031215611448575f80fd5b8535611453816113e2565b94506020860135611463816113e2565b935060408601359250606086013567ffffffffffffffff811115611485575f80fd5b611491888289016113f6565b969995985093965092949392505050565b5f8083601f8401126114b2575f80fd5b50813567ffffffffffffffff8111156114c9575f80fd5b6020830191508360208260051b85010111156112f6575f80fd5b5f805f805f608086880312156114f7575f80fd5b853567ffffffffffffffff81111561150d575f80fd5b611519888289016114a2565b9096509450506020860135925060408601359150606086013561153b816113e2565b809150509295509295909350565b5f805f6040848603121561155b575f80fd5b833567ffffffffffffffff80821115611572575f80fd5b9085019060808288031215611585575f80fd5b9093506020850135908082111561159a575f80fd5b506115a7868287016113f6565b9497909650939450505050565b5f5b838110156115ce5781810151838201526020016115b6565b50505f910152565b5f81518084526115ed8160208601602086016115b4565b601f01601f19169290920160200192915050565b602081525f6104cf60208301846115d6565b5f805f60408486031215611625575f80fd5b833567ffffffffffffffff81111561163b575f80fd5b611647868287016113f6565b909450925050602084013561165b816113e2565b809150509250925092565b5f8060408385031215611677575f80fd5b8235611682816113e2565b91506020830135611692816113e2565b809150509250929050565b5f602082840312156116ad575f80fd5b81356104cf816113e2565b5f602082840312156116c8575f80fd5b5035919050565b5f80604083850312156116e0575f80fd5b50508035926020909101359150565b5f805f8060808587031215611702575f80fd5b8435935060208501359250604085013591506060850135611722816113e2565b939692955090935050565b5f805f6040848603121561173f575f80fd5b833561174a816113e2565b9250602084013567ffffffffffffffff811115611765575f80fd5b6115a7868287016114a2565b5f8060208385031215611782575f80fd5b823567ffffffffffffffff811115611798575f80fd5b6117a4858286016114a2565b90969095509350505050565b634e487b7160e01b5f52603260045260245ffd5b5f808335601e198436030181126117d9575f80fd5b83018035915067ffffffffffffffff8211156117f3575f80fd5b6020019150368190038213156112f6575f80fd5b5f60208284031215611817575f80fd5b815180151581146104cf575f80fd5b5f82516118378184602087016115b4565b9190910192915050565b5f60208284031215611851575f80fd5b5051919050565b634e487b7160e01b5f52604160045260245ffd5b6040516080810167ffffffffffffffff8111828210171561188f5761188f611858565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156118be576118be611858565b604052919050565b5f608082360312156118d6575f80fd5b6118de61186c565b82356118e9816113e2565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff80821115611919575f80fd5b9085019036601f83011261192b575f80fd5b81358181111561193d5761193d611858565b61194f601f8201601f19168501611895565b91508082523684828501011115611964575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b5f8235603e19833603018112611837575f80fd5b634e487b7160e01b5f52601260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b5f826119cd576119cd611997565b500490565b634e487b7160e01b5f52600160045260245ffd5b818382375f9101908152919050565b5f8282518085526020808601955060208260051b840101602086015f5b84811015611a4057601f19868403018952611a2e8383516115d6565b98840198925090830190600101611a12565b5090979650505050505050565b6001600160a01b038616815260a0602082018190525f90611a70908301876119f5565b8281036040840152611a8281876119f5565b90508281036060840152611a9681866119f5565b91505082151560808301529695505050505050565b60208152816020820152818360408301375f818301604090810191909152601f909201601f19160101919050565b60ff828116828216039081111561078b5761078b6119ab565b5f60ff831680611b0457611b04611997565b8060ff84160691505092915050565b8082018082111561078b5761078b6119ab565b5f8451611b378184602089016115b4565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f6105bb60408301846115d656fea164736f6c6343000818000a","storage":{"0x0":"0xff"}},"0xda9e1b3e395bfb0a45f03c7f615146b9d896c959":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100b1575f3560e01c806340c10f191161006e57806340c10f191461013d57806370a082311461015257806395d89b411461017a578063a457c2d714610182578063a9059cbb14610195578063dd62ed3e146101a8575f80fd5b806306fdde03146100b5578063095ea7b3146100d357806318160ddd146100f657806323b872dd14610108578063313ce5671461011b578063395093511461012a575b5f80fd5b6100bd6101bb565b6040516100ca9190610775565b60405180910390f35b6100e66100e13660046107dc565b61024b565b60405190151581526020016100ca565b6002545b6040519081526020016100ca565b6100e6610116366004610804565b610264565b604051601281526020016100ca565b6100e66101383660046107dc565b610287565b61015061014b3660046107dc565b6102a8565b005b6100fa61016036600461083d565b6001600160a01b03165f9081526020819052604090205490565b6100bd6102b6565b6100e66101903660046107dc565b6102c5565b6100e66101a33660046107dc565b610344565b6100fa6101b636600461085d565b610351565b6060600380546101ca9061088e565b80601f01602080910402602001604051908101604052809291908181526020018280546101f69061088e565b80156102415780601f1061021857610100808354040283529160200191610241565b820191905f5260205f20905b81548152906001019060200180831161022457829003601f168201915b5050505050905090565b5f3361025881858561037b565b60019150505b92915050565b5f3361027185828561049e565b61027c858585610516565b506001949350505050565b5f336102588185856102998383610351565b6102a391906108c6565b61037b565b6102b282826106b8565b5050565b6060600480546101ca9061088e565b5f33816102d28286610351565b9050838110156103375760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b61027c828686840361037b565b5f33610258818585610516565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b6001600160a01b0383166103dd5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161032e565b6001600160a01b03821661043e5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161032e565b6001600160a01b038381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b5f6104a98484610351565b90505f19811461051057818110156105035760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161032e565b610510848484840361037b565b50505050565b6001600160a01b03831661057a5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161032e565b6001600160a01b0382166105dc5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161032e565b6001600160a01b0383165f90815260208190526040902054818110156106535760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161032e565b6001600160a01b038481165f81815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3610510565b6001600160a01b03821661070e5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640161032e565b8060025f82825461071f91906108c6565b90915550506001600160a01b0382165f81815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b5f602080835283518060208501525f5b818110156107a157858101830151858201604001528201610785565b505f604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146107d7575f80fd5b919050565b5f80604083850312156107ed575f80fd5b6107f6836107c1565b946020939093013593505050565b5f805f60608486031215610816575f80fd5b61081f846107c1565b925061082d602085016107c1565b9150604084013590509250925092565b5f6020828403121561084d575f80fd5b610856826107c1565b9392505050565b5f806040838503121561086e575f80fd5b610877836107c1565b9150610885602084016107c1565b90509250929050565b600181811c908216806108a257607f821691505b6020821081036108c057634e487b7160e01b5f52602260045260245ffd5b50919050565b8082018082111561025e57634e487b7160e01b5f52601160045260245ffdfea164736f6c6343000818000a","storage":{"0x2":"0xe8d4a51000","0x3":"0x0","0x4":"0x0","0x47668262eb76f3aa61b856a0c078f33a11f46671cf1466c3616ba74a22fcdd92":"0xe8d4a51000","0x9cc83e833a69122bf7773b58c082655d780ae469ab7cdf5d1047a30229e55875":"0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"}},"0xe0afc4e9e03e4aa67257df7a2eca77454309789d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061002b5760003560e01c806316f1983114610030575b600080fd5b6100b06004803603604081101561004657600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561007157600080fd5b82018360208201111561008357600080fd5b803590602001918460018302840111640100000000831117156100a557600080fd5b5090925090506100b2565b005b826001600160a01b031660017f103fed9db65eac19c4d870f49ab7520fe03b99f1838e5996caf47e9e43308392848460405180806020018281038252848482818152602001925080828437600083820152604051601f909101601f19169092018290039550909350505050a350505056fea164736f6c6343000606000a","storage":{}},"0xe4fdf45c2f8d198854f8823809c7a988eeaaa493":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100a6575f3560e01c80638cb8ecec1161006e5780638cb8ecec1461013e5780638da5cb5b14610151578063cbe9e76414610161578063da8c229e14610183578063e0dba60f146101a5578063f2fde38b146101b8575f80fd5b806301670ba9146100aa57806301ffc9a7146100bf5780633f15457f146100f85780634e543b2614610123578063715018a614610136575b5f80fd5b6100bd6100b8366004610529565b6101cb565b005b6100e36100cd366004610540565b6001600160e01b0319166301ffc9a760e01b1490565b60405190151581526020015b60405180910390f35b60025461010b906001600160a01b031681565b6040516001600160a01b0390911681526020016100ef565b6100bd610131366004610589565b610217565b6100bd610282565b6100bd61014c3660046105a2565b610295565b5f546001600160a01b031661010b565b6100e361016f366004610529565b60036020525f908152604090205460ff1681565b6100e3610191366004610589565b60016020525f908152604090205460ff1681565b6100bd6101b33660046105cc565b6103a2565b6100bd6101c6366004610589565b610408565b6101d3610481565b60405181907f1764176cfa565853ba1ded547a830a9f9bff95231ef6fd228b3ddd6175777569905f90a25f908152600360205260409020805460ff19166001179055565b61021f610481565b600254604051630c4b7b8560e11b81525f60048201526001600160a01b03838116602483015290911690631896f70a906044015f604051808303815f87803b158015610269575f80fd5b505af115801561027b573d5f803e3d5ffd5b5050505050565b61028a610481565b6102935f6104da565b565b335f9081526001602052604090205460ff166103095760405162461bcd60e51b815260206004820152602860248201527f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f604482015267373a3937b63632b960c11b60648201526084015b60405180910390fd5b5f8281526003602052604090205460ff1615610323575f80fd5b6002546040516306ab592360e01b81525f6004820152602481018490526001600160a01b038381166044830152909116906306ab5923906064016020604051808303815f875af1158015610379573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061039d9190610605565b505050565b6103aa610481565b6001600160a01b0382165f81815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b610410610481565b6001600160a01b0381166104755760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610300565b61047e816104da565b50565b5f546001600160a01b031633146102935760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610300565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f60208284031215610539575f80fd5b5035919050565b5f60208284031215610550575f80fd5b81356001600160e01b031981168114610567575f80fd5b9392505050565b80356001600160a01b0381168114610584575f80fd5b919050565b5f60208284031215610599575f80fd5b6105678261056e565b5f80604083850312156105b3575f80fd5b823591506105c36020840161056e565b90509250929050565b5f80604083850312156105dd575f80fd5b6105e68361056e565b9150602083013580151581146105fa575f80fd5b809150509250929050565b5f60208284031215610615575f80fd5b505191905056fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0xbdf39e9e65b2355b1b0b06df799c09159f0ab90f06a9bb2153f5de7d9b0ea81":"0x1","0x97b771283c9c769f7b9399fef71d92816f2bd31de10203b676671b01eb920966":"0x1"}},"0xe85541865bbb62a05064ce5c9f41cc293a8ea996":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610060575f3560e01c8063715018a6146100645780638129fc1c1461006e5780638da5cb5b14610076578063a3f4df7e14610096578063f2fde38b146100cf578063ffa1ad74146100e2575b5f80fd5b61006c610106565b005b61006c610119565b6033546040516001600160a01b0390911681526020015b60405180910390f35b6100c26040518060400160405280600d81526020016c2aa7299d1027b832b930ba37b960991b81525081565b60405161008d91906103bd565b61006c6100dd366004610409565b610229565b6100c2604051806040016040528060058152602001640302e312e360dc1b81525081565b61010e61029f565b6101175f6102f9565b565b5f54610100900460ff161580801561013757505f54600160ff909116105b806101505750303b15801561015057505f5460ff166001145b6101b85760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b5f805460ff1916600117905580156101d9575f805461ff0019166101001790555b6101e161034a565b8015610226575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50565b61023161029f565b6001600160a01b0381166102965760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016101af565b610226816102f9565b6033546001600160a01b031633146101175760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016101af565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff166103b45760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016101af565b610117336102f9565b5f602080835283518060208501525f5b818110156103e9578581018301518582016040015282016103cd565b505f604082860101526040601f19601f8301168501019250505092915050565b5f60208284031215610419575f80fd5b81356001600160a01b038116811461042f575f80fd5b939250505056fea164736f6c6343000818000a","storage":{}},"0xead34b583404e3cb0c9b97c2d1c486be67be9f30":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0xec71e4e674fe0f432693dc2b935c34bd2774c003":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610090575f3560e01c8063a200e15311610063578063a200e15314610146578063a34e35961461016d578063c8a4271f14610180578063cd5d2c74146101bf578063d820ed42146101e6575f80fd5b806301ffc9a7146100945780632c0fd74c146100bc57806350e9a715146100f157806359b6b86c1461011f575b5f80fd5b6100a76100a2366004610600565b61020d565b60405190151581526020015b60405180910390f35b6100e37f000000000000000000000000000000000000000000000000000000000000000081565b6040519081526020016100b3565b6101046100ff366004610627565b610243565b604080518251815260209283015192810192909252016100b3565b6100e37f000000000000000000000000000000000000000000000000000000000000000181565b6100e37f000000000000000000000000000000000000000000000000000000000000000481565b6100e361017b366004610627565b610404565b6101a77f000000000000000000000000f3810eb7d64d1c11ae12727d957c6202b24492f581565b6040516001600160a01b0390911681526020016100b3565b6100e37f000000000000000000000000000000000000000000000000000000000000000081565b6100e37f000000000000000000000000000000000000000000000000000000000000000281565b5f6001600160e01b031982166301ffc9a760e01b148061023d57506001600160e01b031982166350e9a71560e01b145b92915050565b604080518082019091525f80825260208201525f61029586868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061045392505050565b90505f600582106102d1576102ca847f00000000000000000000000000000000000000000000000000000000000000016106b3565b9050610394565b81600403610303576102ca847f00000000000000000000000000000000000000000000000000000000000000026106b3565b81600303610335576102ca847f00000000000000000000000000000000000000000000000000000000000000046106b3565b81600203610367576102ca847f00000000000000000000000000000000000000000000000000000000000000006106b3565b610391847f00000000000000000000000000000000000000000000000000000000000000006106b3565b90505b60405180604001604052806103a883610554565b81526020016103f76103f28a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c92508b91506105f89050565b610554565b9052979650505050505050565b5f61044a6103f286868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508892508791506105f89050565b95945050505050565b80515f90819081905b8082101561054b575f858381518110610477576104776106ca565b01602001516001600160f81b0319169050600160ff1b8110156104a65761049f6001846106de565b9250610538565b600760fd1b6001600160f81b0319821610156104c75761049f6002846106de565b600f60fc1b6001600160f81b0319821610156104e85761049f6003846106de565b601f60fb1b6001600160f81b0319821610156105095761049f6004846106de565b603f60fa1b6001600160f81b03198216101561052a5761049f6005846106de565b6105356006846106de565b92505b5082610543816106f1565b93505061045c565b50909392505050565b5f807f000000000000000000000000f3810eb7d64d1c11ae12727d957c6202b24492f56001600160a01b03166350d25bcd6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105b2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105d69190610709565b9050806105e7846305f5e1006106b3565b6105f19190610720565b9392505050565b5f9392505050565b5f60208284031215610610575f80fd5b81356001600160e01b0319811681146105f1575f80fd5b5f805f806060858703121561063a575f80fd5b843567ffffffffffffffff80821115610651575f80fd5b818701915087601f830112610664575f80fd5b813581811115610672575f80fd5b886020828501011115610683575f80fd5b6020928301999098509187013596604001359550909350505050565b634e487b7160e01b5f52601160045260245ffd5b808202811582820484141761023d5761023d61069f565b634e487b7160e01b5f52603260045260245ffd5b8082018082111561023d5761023d61069f565b5f600182016107025761070261069f565b5060010190565b5f60208284031215610719575f80fd5b5051919050565b5f8261073a57634e487b7160e01b5f52601260045260245ffd5b50049056fea164736f6c6343000818000a","storage":{}},"0xf1ad43dc647f27c2366ab4742d68d21282f7d50e":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101d1575f3560e01c80638b95dd71116100fe578063c86902331161009e578063e32954eb1161006e578063e32954eb146104f2578063e59d895d14610505578063e985e9c514610518578063f1cb7e0614610553575f80fd5b8063c869023314610435578063ce3decdc1461048c578063d5fa2b001461049f578063d700ff33146104b2575f80fd5b8063a8fa5682116100d9578063a8fa5682146103ac578063a9784b3e146103bf578063ac9650d814610402578063bc1c58d114610422575f80fd5b80638b95dd7114610373578063a22cb46514610386578063a4b91a0114610399575f80fd5b80633603d758116101745780635c98042b116101445780635c98042b14610327578063623195b01461033a578063691f34311461034d5780637737221314610360575f80fd5b80633603d758146102975780633b3b57de146102aa5780634cbf6ba4146102bd57806359d1d43c14610307575f80fd5b8063124a319c116101af578063124a319c146102255780632203ab561461025057806329cd62ea14610271578063304e6ade14610284575f80fd5b806301ffc9a7146101d55780630af179d7146101fd57806310f13a8c14610212575b5f80fd5b6101e86101e3366004612267565b610566565b60405190151581526020015b60405180910390f35b61021061020b3660046122bd565b610576565b005b610210610220366004612304565b610778565b610238610233366004612377565b610842565b6040516001600160a01b0390911681526020016101f4565b61026361025e3660046123a1565b610a87565b6040516101f492919061240e565b61021061027f366004612426565b610bb5565b6102106102923660046122bd565b610c4d565b6102106102a536600461244f565b610cc6565b6102386102b836600461244f565b610d64565b6101e86102cb3660046123a1565b5f82815260208181526040808320546001600160401b031683526006825280832094835293815283822092825291909152205461ffff16151590565b61031a6103153660046122bd565b610d93565b6040516101f49190612466565b61031a61033536600461244f565b610e6f565b610210610348366004612478565b610f2a565b61031a61035b36600461244f565b610fc2565b61021061036e3660046122bd565b610ffa565b6102106103813660046124da565b611073565b6102106103943660046125b9565b611150565b6102106103a73660046125e3565b61122a565b61031a6103ba36600461261e565b6112f6565b6101e86103cd36600461265a565b6001600160a01b039283165f908152600c60209081526040808320948352938152838220929094168152925290205460ff1690565b6104156104103660046126ce565b611342565b6040516101f4919061270c565b61031a61043036600461244f565b61134f565b61047761044336600461244f565b5f81815260208181526040808320546001600160401b03168352600982528083209383529290522080546001909101549091565b604080519283526020830191909152016101f4565b61021061049a3660046122bd565b611387565b6102106104ad36600461276e565b6114c3565b6104da6104c036600461244f565b5f602081905290815260409020546001600160401b031681565b6040516001600160401b0390911681526020016101f4565b61041561050036600461279c565b6114e9565b6102106105133660046127d6565b6114fe565b6101e8610526366004612808565b6001600160a01b039182165f908152600b6020908152604080832093909416825291909152205460ff1690565b61031a6105613660046123a1565b6115a2565b5f61057082611666565b92915050565b826105808161168a565b610588575f80fd5b5f84815260208181526040808320548151601f87018490048402810184019092528582528392606092839285926001600160401b039091169183916105eb9183918d908d90819084018382808284375f9201919091525092939250506118b79050565b90505b80515160208201511015610712578661ffff165f03610652578060400151965061061781611912565b94508460405160200161062a9190612834565b60405160208183030381529060405280519060200120925061064b81611933565b9350610704565b5f61065c82611912565b9050816040015161ffff168861ffff16141580610680575061067e868261194f565b155b15610702576106db8c878a8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250505060208801518d91506106d2908290612863565b8b51158a61196a565b8160400151975081602001519650809550858051906020012093506106ff82611933565b94505b505b61070d81611bc9565b6105ee565b5083511561076c5761076c8a85888c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c925061076391508290508f612863565b8951158861196a565b50505050505050505050565b846107828161168a565b61078a575f80fd5b5f86815260208181526040808320546001600160401b03168352600a8252808320898452909152908190209051849184916107c89089908990612876565b908152602001604051809103902091826107e3929190612901565b5084846040516107f4929190612876565b6040518091039020867f448bc014f1536726cf8d54ff3d6481ed3cbc683c2591ca204274009afa09b1a18787878760405161083294939291906129e2565b60405180910390a3505050505050565b5f82815260208181526040808320546001600160401b031683526007825280832085845282528083206001600160e01b0319851684529091528120546001600160a01b03168015610894579050610570565b5f61089e85610d64565b90506001600160a01b0381166108b8575f92505050610570565b6040516301ffc9a760e01b60248201525f9081906001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b1790525161090f9190612834565b5f60405180830381855afa9150503d805f8114610947576040519150601f19603f3d011682016040523d82523d5f602084013e61094c565b606091505b509150915081158061095f575060208151105b80610989575080601f8151811061097857610978612a13565b01602001516001600160f81b031916155b1561099a575f945050505050610570565b6040516001600160e01b0319871660248201526001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b179052516109f09190612834565b5f60405180830381855afa9150503d805f8114610a28576040519150601f19603f3d011682016040523d82523d5f602084013e610a2d565b606091505b509092509050811580610a41575060208151105b80610a6b575080601f81518110610a5a57610a5a612a13565b01602001516001600160f81b031916155b15610a7c575f945050505050610570565b509095945050505050565b5f82815260208181526040808320546001600160401b03168352600180835281842086855290925282206060915b848111610b975780851615801590610ae457505f8181526020839052604081208054610ae090612885565b9050115b15610b8f5780825f8381526020019081526020015f20808054610b0690612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610b3290612885565b8015610b7d5780601f10610b5457610100808354040283529160200191610b7d565b820191905f5260205f20905b815481529060010190602001808311610b6057829003601f168201915b50505050509050935093505050610bae565b60011b610ab5565b505f60405180602001604052805f81525092509250505b9250929050565b82610bbf8161168a565b610bc7575f80fd5b60408051808201825284815260208082018581525f888152808352848120546001600160401b031681526009835284812089825283528490209251835551600190920191909155815185815290810184905285917f1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e4691015b60405180910390a250505050565b82610c578161168a565b610c5f575f80fd5b5f84815260208181526040808320546001600160401b03168352600382528083208784529091529020610c93838583612901565b50837fe379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d75788484604051610c3f929190612a27565b80610cd08161168a565b610cd8575f80fd5b5f82815260208190526040812080546001600160401b031691610cfa83612a3a565b82546101009290920a6001600160401b038181021990931691831602179091555f84815260208181526040918290205491519190921681528492507fc6621ccb8f3f5a04bb6502154b2caf6adf5983fe76dfef1cfc9c42e3579db444910160405180910390a25050565b5f80610d7183603c6115a2565b905080515f03610d8357505f92915050565b610d8c81611cae565b9392505050565b5f83815260208181526040808320546001600160401b03168352600a825280832086845290915290819020905160609190610dd19085908590612876565b90815260200160405180910390208054610dea90612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610e1690612885565b8015610e615780601f10610e3857610100808354040283529160200191610e61565b820191905f5260205f20905b815481529060010190602001808311610e4457829003601f168201915b505050505090509392505050565b5f81815260208181526040808320546001600160401b03168352600482528083208484529091529020805460609190610ea790612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610ed390612885565b8015610f1e5780601f10610ef557610100808354040283529160200191610f1e565b820191905f5260205f20905b815481529060010190602001808311610f0157829003601f168201915b50505050509050919050565b83610f348161168a565b610f3c575f80fd5b83610f48600182612863565b1615610f52575f80fd5b5f85815260208181526040808320546001600160401b031683526001825280832088845282528083208784529091529020610f8e838583612901565b50604051849086907faa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe3905f90a35050505050565b5f81815260208181526040808320546001600160401b03168352600882528083208484529091529020805460609190610ea790612885565b826110048161168a565b61100c575f80fd5b5f84815260208181526040808320546001600160401b03168352600882528083208784529091529020611040838583612901565b50837fb7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f78484604051610c3f929190612a27565b8261107d8161168a565b611085575f80fd5b837f65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af75284846040516110b792919061240e565b60405180910390a2603c830361110e57837f52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd26110f284611cae565b6040516001600160a01b03909116815260200160405180910390a25b5f84815260208181526040808320546001600160401b0316835260028252808320878452825280832086845290915290206111498382612a5f565b5050505050565b6001600160a01b03821633036111bf5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084015b60405180910390fd5b335f818152600b602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6001600160a01b03821633036112825760405162461bcd60e51b815260206004820181905260248201527f53657474696e672064656c65676174652073746174757320666f722073656c6660448201526064016111b6565b335f818152600c6020908152604080832087845282528083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519384529286917ff0ddb3b04746704017f9aa8bd728fcc2c1d11675041205350018915f5e4750a0910160405180910390a4505050565b5f83815260208181526040808320546001600160401b03168352600582528083208684528252808320858452825280832061ffff851684529091529020805460609190610dea90612885565b6060610d8c5f8484611ccb565b5f81815260208181526040808320546001600160401b03168352600382528083208484529091529020805460609190610ea790612885565b826113918161168a565b611399575f80fd5b5f84815260208181526040808320546001600160401b031680845260048352818420888552909252822080549192916113d190612885565b80601f01602080910402602001604051908101604052809291908181526020018280546113fd90612885565b80156114485780601f1061141f57610100808354040283529160200191611448565b820191905f5260205f20905b81548152906001019060200180831161142b57829003601f168201915b505050506001600160401b0384165f9081526004602090815260408083208b8452909152902091925061147e9050858783612901565b50857f8f15ed4b723ef428f250961da8315675b507046737e19319fc1a4d81bfe87f858287876040516114b393929190612b1e565b60405180910390a2505050505050565b816114cd8161168a565b6114d5575f80fd5b6114e483603c61038185611e88565b505050565b60606114f6848484611ccb565b949350505050565b826115088161168a565b611510575f80fd5b5f84815260208181526040808320546001600160401b031683526007825280832087845282528083206001600160e01b031987168085529083529281902080546001600160a01b0319166001600160a01b038716908117909155905190815286917f7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa910160405180910390a350505050565b5f82815260208181526040808320546001600160401b0316835260028252808320858452825280832084845290915290208054606091906115e290612885565b80601f016020809104026020016040519081016040528092919081815260200182805461160e90612885565b80156116595780601f1061163057610100808354040283529160200191611659565b820191905f5260205f20905b81548152906001019060200180831161163c57829003601f168201915b5050505050905092915050565b5f6001600160e01b03198216631674750f60e21b1480610570575061057082611eb8565b5f336001600160a01b037f0000000000000000000000004fbf7b2f171336958be5d15ff762a5cff53635681614806116ea5750336001600160a01b037f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5616145b156116f757506001919050565b6040516302571be360e01b8152600481018390525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa15801561175c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117809190612b4d565b90507f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b0316816001600160a01b031603611845576040516331a9108f60e11b8152600481018490527f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b031690636352211e90602401602060405180830381865afa15801561181e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118429190612b4d565b90505b6001600160a01b03811633148061187e57506001600160a01b0381165f908152600b6020908152604080832033845290915290205460ff165b80610d8c57506001600160a01b0381165f908152600c60209081526040808320868452825280832033845290915290205460ff16610d8c565b6118ff6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261057081611bc9565b602081015181516060916105709161192a9082611edc565b84519190611f33565b60a081015160c08201516060916105709161192a908290612863565b5f81518351148015610d8c5750610d8c835f845f8751611fa7565b865160208801205f61197d878787611f33565b90508315611aa1576001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c168452909152902080546119c690612885565b159050611a23576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611a0783612b68565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091528120611a62916121f9565b897f03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a12078a8a604051611a94929190612b84565b60405180910390a261076c565b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c16845290915290208054611ae290612885565b90505f03611b40576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611b2483612ba9565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091529020611b808282612a5f565b50897f52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b8a8a84604051611bb593929190612bbf565b60405180910390a250505050505050505050565b60c08101516020820181905281515111611be05750565b5f611bf2825f01518360200151611edc565b8260200151611c019190612bed565b8251909150611c109082611fc9565b61ffff166040830152611c24600282612bed565b8251909150611c339082611fc9565b61ffff166060830152611c47600282612bed565b8251909150611c569082611fef565b63ffffffff166080830152611c6c600482612bed565b82519091505f90611c7d9083611fc9565b61ffff169050611c8e600283612bed565b60a084018190529150611ca18183612bed565b60c0909301929092525050565b5f8151601414611cbc575f80fd5b5060200151600160601b900490565b6060816001600160401b03811115611ce557611ce56124c6565b604051908082528060200260200182016040528015611d1857816020015b6060815260200190600190039081611d035790505b5090505f5b82811015611e80578415611dd8575f848483818110611d3e57611d3e612a13565b9050602002810190611d509190612c00565b611d5f91602491600491612c42565b611d6891612c69565b9050858114611dd65760405162461bcd60e51b815260206004820152603460248201527f6d756c746963616c6c3a20416c6c207265636f726473206d7573742068617665604482015273040c240dac2e8c6d0d2dcce40dcc2dacad0c2e6d60631b60648201526084016111b6565b505b5f8030868685818110611ded57611ded612a13565b9050602002810190611dff9190612c00565b604051611e0d929190612876565b5f60405180830381855af49150503d805f8114611e45576040519150601f19603f3d011682016040523d82523d5f602084013e611e4a565b606091505b509150915081611e58575f80fd5b80848481518110611e6b57611e6b612a13565b60209081029190910101525050600101611d1d565b509392505050565b604080516014808252818301909252606091602082018180368337505050600160601b9290920260208301525090565b5f6001600160e01b0319821663c869023360e01b1480610570575061057082612017565b5f815b83518110611eef57611eef612c86565b5f611efa858361203b565b60ff169050611f0a816001612bed565b611f149083612bed565b9150805f03611f235750611f29565b50611edf565b6114f68382612863565b8251606090611f428385612bed565b1115611f4c575f80fd5b5f826001600160401b03811115611f6557611f656124c6565b6040519080825280601f01601f191660200182016040528015611f8f576020820181803683370190505b50905060208082019086860101610a7c82828761205e565b5f611fb38484846120b3565b611fbe8787856120b3565b149695505050505050565b81515f90611fd8836002612bed565b1115611fe2575f80fd5b50016002015161ffff1690565b81515f90611ffe836004612bed565b1115612008575f80fd5b50016004015163ffffffff1690565b5f6001600160e01b0319821663691f343160e01b14806105705750610570826120d5565b5f82828151811061204e5761204e612a13565b016020015160f81c905092915050565b602081106120965781518352612075602084612bed565b9250612082602083612bed565b915061208f602082612863565b905061205e565b905182516020929092036101000a5f190180199091169116179052565b82515f906120c18385612bed565b11156120cb575f80fd5b5091016020012090565b5f6001600160e01b031982166304928c6760e21b14806105705750610570825f6001600160e01b0319821663547d2b4160e11b148061212457506001600160e01b03198216635c98042b60e01b145b806105705750610570825f6001600160e01b0319821663bc1c58d160e01b14806105705750610570825f6001600160e01b03198216631d9dabef60e11b148061217d57506001600160e01b031982166378e5bf0360e11b145b806105705750610570825f6001600160e01b03198216631101d5ab60e11b14806105705750610570825f6001600160e01b0319821663d700ff3360e01b14806105705750610570825f6001600160e01b03198216634fbf043360e01b148061057057506301ffc9a760e01b6001600160e01b0319831614610570565b50805461220590612885565b5f825580601f10612214575050565b601f0160209004905f5260205f20908101906122309190612233565b50565b5b80821115612247575f8155600101612234565b5090565b80356001600160e01b031981168114612262575f80fd5b919050565b5f60208284031215612277575f80fd5b610d8c8261224b565b5f8083601f840112612290575f80fd5b5081356001600160401b038111156122a6575f80fd5b602083019150836020828501011115610bae575f80fd5b5f805f604084860312156122cf575f80fd5b8335925060208401356001600160401b038111156122eb575f80fd5b6122f786828701612280565b9497909650939450505050565b5f805f805f60608688031215612318575f80fd5b8535945060208601356001600160401b0380821115612335575f80fd5b61234189838a01612280565b90965094506040880135915080821115612359575f80fd5b5061236688828901612280565b969995985093965092949392505050565b5f8060408385031215612388575f80fd5b823591506123986020840161224b565b90509250929050565b5f80604083850312156123b2575f80fd5b50508035926020909101359150565b5f5b838110156123db5781810151838201526020016123c3565b50505f910152565b5f81518084526123fa8160208601602086016123c1565b601f01601f19169290920160200192915050565b828152604060208201525f6114f660408301846123e3565b5f805f60608486031215612438575f80fd5b505081359360208301359350604090920135919050565b5f6020828403121561245f575f80fd5b5035919050565b602081525f610d8c60208301846123e3565b5f805f806060858703121561248b575f80fd5b843593506020850135925060408501356001600160401b038111156124ae575f80fd5b6124ba87828801612280565b95989497509550505050565b634e487b7160e01b5f52604160045260245ffd5b5f805f606084860312156124ec575f80fd5b833592506020840135915060408401356001600160401b0380821115612510575f80fd5b818601915086601f830112612523575f80fd5b813581811115612535576125356124c6565b604051601f8201601f19908116603f0116810190838211818310171561255d5761255d6124c6565b81604052828152896020848701011115612575575f80fd5b826020860160208301375f6020848301015280955050505050509250925092565b6001600160a01b0381168114612230575f80fd5b80358015158114612262575f80fd5b5f80604083850312156125ca575f80fd5b82356125d581612596565b9150612398602084016125aa565b5f805f606084860312156125f5575f80fd5b83359250602084013561260781612596565b9150612615604085016125aa565b90509250925092565b5f805f60608486031215612630575f80fd5b8335925060208401359150604084013561ffff8116811461264f575f80fd5b809150509250925092565b5f805f6060848603121561266c575f80fd5b833561267781612596565b925060208401359150604084013561264f81612596565b5f8083601f84011261269e575f80fd5b5081356001600160401b038111156126b4575f80fd5b6020830191508360208260051b8501011115610bae575f80fd5b5f80602083850312156126df575f80fd5b82356001600160401b038111156126f4575f80fd5b6127008582860161268e565b90969095509350505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b8281101561276157603f1988860301845261274f8583516123e3565b94509285019290850190600101612733565b5092979650505050505050565b5f806040838503121561277f575f80fd5b82359150602083013561279181612596565b809150509250929050565b5f805f604084860312156127ae575f80fd5b8335925060208401356001600160401b038111156127ca575f80fd5b6122f78682870161268e565b5f805f606084860312156127e8575f80fd5b833592506127f86020850161224b565b9150604084013561264f81612596565b5f8060408385031215612819575f80fd5b823561282481612596565b9150602083013561279181612596565b5f82516128458184602087016123c1565b9190910192915050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156105705761057061284f565b818382375f9101908152919050565b600181811c9082168061289957607f821691505b6020821081036128b757634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156114e457805f5260205f20601f840160051c810160208510156128e25750805b601f840160051c820191505b81811015611149575f81556001016128ee565b6001600160401b03831115612918576129186124c6565b61292c836129268354612885565b836128bd565b5f601f84116001811461295d575f85156129465750838201355b5f19600387901b1c1916600186901b178355611149565b5f83815260208120601f198716915b8281101561298c578685013582556020948501946001909201910161296c565b50868210156129a8575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b604081525f6129f56040830186886129ba565b8281036020840152612a088185876129ba565b979650505050505050565b634e487b7160e01b5f52603260045260245ffd5b602081525f6114f66020830184866129ba565b5f6001600160401b03808316818103612a5557612a5561284f565b6001019392505050565b81516001600160401b03811115612a7857612a786124c6565b612a8c81612a868454612885565b846128bd565b602080601f831160018114612abf575f8415612aa85750858301515b5f19600386901b1c1916600185901b178555612b16565b5f85815260208120601f198616915b82811015612aed57888601518255948401946001909101908401612ace565b5085821015612b0a57878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b604081525f612b3060408301866123e3565b8281036020840152612b438185876129ba565b9695505050505050565b5f60208284031215612b5d575f80fd5b8151610d8c81612596565b5f61ffff821680612b7b57612b7b61284f565b5f190192915050565b604081525f612b9660408301856123e3565b905061ffff831660208301529392505050565b5f61ffff808316818103612a5557612a5561284f565b606081525f612bd160608301866123e3565b61ffff851660208401528281036040840152612b4381856123e3565b808201808211156105705761057061284f565b5f808335601e19843603018112612c15575f80fd5b8301803591506001600160401b03821115612c2e575f80fd5b602001915036819003821315610bae575f80fd5b5f8085851115612c50575f80fd5b83861115612c5c575f80fd5b5050820193919092039150565b80356020831015610570575f19602084900360031b1b1692915050565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{}},"0xf3810eb7d64d1c11ae12727d957c6202b24492f5":{"nonce":1,"balance":"0x0","code":"0x6080604052348015600e575f80fd5b50600436106030575f3560e01c806350d25bcd146034578063e5c19b2d146048575b5f80fd5b5f5460405190815260200160405180910390f35b605760533660046059565b5f55565b005b5f602082840312156068575f80fd5b503591905056fea164736f6c6343000818000a","storage":{"0x0":"0x5f5e100"}},"0xf670681605efc4efc804f5a9b97ee89520473d56":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c80638da5cb5b11610088578063c66485b211610063578063c66485b2146101da578063da8c229e146101ed578063e0dba60f1461021f578063f2fde38b14610232575f80fd5b80638da5cb5b146101a4578063bffbe61c146101b4578063c47f0027146101c7575f80fd5b806365669631116100c35780636566963114610161578063715018a6146101745780637a806d6b1461017e578063828eab0e14610191575f80fd5b80630f5a5466146100e95780631e83409a1461010f5780633f15457f14610122575b5f80fd5b6100fc6100f7366004610958565b610245565b6040519081526020015b60405180910390f35b6100fc61011d36600461098f565b610258565b6101497f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a981565b6040516001600160a01b039091168152602001610106565b6100fc61016f3660046109aa565b610279565b61017c610526565b005b6100fc61018c366004610a8f565b610539565b600254610149906001600160a01b031681565b5f546001600160a01b0316610149565b6100fc6101c236600461098f565b6105ae565b6100fc6101d5366004610b00565b610608565b61017c6101e836600461098f565b610624565b61020f6101fb36600461098f565b60016020525f908152604090205460ff1681565b6040519015158152602001610106565b61017c61022d366004610b47565b6106e4565b61017c61024036600461098f565b61074a565b5f610251338484610279565b9392505050565b6002545f9061027390339084906001600160a01b0316610279565b92915050565b5f836001600160a01b0381163314806102a05750335f9081526001602052604090205460ff165b80610334575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063e985e9c590604401602060405180830381865afa158015610310573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103349190610b73565b806103435750610343816107c3565b6103e05760405162461bcd60e51b815260206004820152605b60248201527f526576657273655265676973747261723a2043616c6c6572206973206e6f742060448201527f6120636f6e74726f6c6c6572206f7220617574686f726973656420627920616460648201527f6472657373206f7220746865206164647265737320697473656c660000000000608482015260a4015b60405180910390fd5b5f6103ea8661083a565b604080517f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e2602080830191909152818301849052825180830384018152606090920192839052815191012091925081906001600160a01b038916907f6ada868dd3058cf77a48a74489fd7963688e5464b2b0fa957ace976243270e92905f90a36040516305ef2c7f60e41b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26004820152602481018390526001600160a01b03878116604483015286811660648301525f60848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610505575f80fd5b505af1158015610517573d5f803e3d5ffd5b50929998505050505050505050565b61052e61089c565b6105375f6108f5565b565b5f80610546868686610279565b604051637737221360e01b81529091506001600160a01b038516906377372213906105779084908790600401610b8e565b5f604051808303815f87803b15801561058e575f80fd5b505af11580156105a0573d5f803e3d5ffd5b509298975050505050505050565b5f7f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26105d98361083a565b604080516020810193909352820152606001604051602081830303815290604052805190602001209050919050565b6002545f9061027390339081906001600160a01b031685610539565b61062c61089c565b6001600160a01b03811661069b5760405162461bcd60e51b815260206004820152603060248201527f526576657273655265676973747261723a205265736f6c76657220616464726560448201526f07373206d757374206e6f7420626520360841b60648201526084016103d7565b600280546001600160a01b0319166001600160a01b0383169081179091556040517feae17a84d9eb83d8c8eb317f9e7d64857bc363fa51674d996c023f4340c577cf905f90a250565b6106ec61089c565b6001600160a01b0382165f81815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b61075261089c565b6001600160a01b0381166107b75760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016103d7565b6107c0816108f5565b50565b5f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801561081e575060408051601f3d908101601f1916820190925261081b91810190610be2565b60015b61082957505f919050565b6001600160a01b0316331492915050565b5f60285b8015610891575f19016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a81536010909204915f19016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a815360108304925061083e565b505060285f20919050565b5f546001600160a01b031633146105375760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016103d7565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146107c0575f80fd5b5f8060408385031215610969575f80fd5b823561097481610944565b9150602083013561098481610944565b809150509250929050565b5f6020828403121561099f575f80fd5b813561025181610944565b5f805f606084860312156109bc575f80fd5b83356109c781610944565b925060208401356109d781610944565b915060408401356109e781610944565b809150509250925092565b634e487b7160e01b5f52604160045260245ffd5b5f82601f830112610a15575f80fd5b813567ffffffffffffffff80821115610a3057610a306109f2565b604051601f8301601f19908116603f01168101908282118183101715610a5857610a586109f2565b81604052838152866020858801011115610a70575f80fd5b836020870160208301375f602085830101528094505050505092915050565b5f805f8060808587031215610aa2575f80fd5b8435610aad81610944565b93506020850135610abd81610944565b92506040850135610acd81610944565b9150606085013567ffffffffffffffff811115610ae8575f80fd5b610af487828801610a06565b91505092959194509250565b5f60208284031215610b10575f80fd5b813567ffffffffffffffff811115610b26575f80fd5b610b3284828501610a06565b949350505050565b80151581146107c0575f80fd5b5f8060408385031215610b58575f80fd5b8235610b6381610944565b9150602083013561098481610b3a565b5f60208284031215610b83575f80fd5b815161025181610b3a565b8281525f60206040602084015283518060408501525f5b81811015610bc157858101830151858201606001528201610ba5565b505f606082860101526060601f19601f830116850101925050509392505050565b5f60208284031215610bf2575f80fd5b81516102518161094456fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2":"0x9df67c91f1bfcb4d966cf764e9218685e7c59e8a","0x1f5b7623941da966ad7183d9cbb6db584f6d4add26919ac31a2d3f19a164e7e1":"0x1","0xbe5de2149ce76ca5934fa63455cd675fd52e2d30f3328985d298a627ca0f05e9":"0x1"}},"0xf8c26340c1eaea6c7ff1760b25005e1306953572":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061010b5760003560e01c80638c87a4ea116100a2578063b87abc1111610071578063b87abc1114610244578063c597407314610257578063ce92b33e1461026a578063e837ae741461027d578063ec129eea146102905761010b565b80638c87a4ea146101ea5780638f69c188146101fd578063a3557e6c14610210578063b85afd28146102235761010b565b806347c81699116100de57806347c8169914610181578063672b9f81146101945780636ccbae5f146101b55780637b103999146101d55761010b565b80631bd8cc1a146101105780631be5e7ed146101395780632c3d376d14610159578063310bd74b1461016c575b600080fd5b61012361011e3660046117b4565b6102a3565b6040516101309190611eee565b60405180910390f35b61014c610147366004611aec565b6104f2565b6040516101309190611fd6565b61014c610167366004611b21565b610673565b61017f61017a366004611b21565b610714565b005b61017f61018f3660046119b5565b6107c0565b6101a76101a2366004611b94565b6108ef565b604051610130929190611fe7565b6101c86101c3366004611b21565b6109c3565b604051610130919061204c565b6101dd6109d5565b6040516101309190611ea9565b6101236101f836600461191d565b6109e5565b61017f61020b366004611878565b610a74565b61017f61021e366004611878565b610af0565b610236610231366004611951565b610b1b565b604051610130929190611eff565b61017f610252366004611b3f565b610ca9565b61017f610265366004611a39565b610d43565b61017f610278366004611808565b610df9565b61017f61028b366004611808565b610e97565b61017f61029e366004611808565b610f4e565b60015460405163b3f9e4cb60e01b815260609183916001600160a01b039091169063b3f9e4cb906102d890849060040161204c565b60206040518083038186803b1580156102f057600080fd5b505afa158015610304573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610328919081019061178e565b6001600160a01b0316306001600160a01b0316146103615760405162461bcd60e51b81526004016103589061201c565b60405180910390fd5b604080518581526020808702820101909152849060609082801561039957816020015b60608152602001906001900390816103845790505b506000868152600360205260408120549192505b838110156104e557600087815260026020908152604080832085845290915290208989838181106103da57fe5b602002820190508035601e19368490030181126103f657600080fd5b909101602081019150356001600160401b0381111561041457600080fd5b3681900382131561042457600080fd5b604051610432929190611e70565b9081526040805160209281900383018120805460026001821615610100026000190190911604601f810185900485028301850190935282825290929091908301828280156104c15780601f10610496576101008083540402835291602001916104c1565b820191906000526020600020905b8154815290600101906020018083116104a457829003601f168201915b50505050508382815181106104d257fe5b60209081029190910101526001016103ad565b5090979650505050505050565b60015460405163b3f9e4cb60e01b815260609183916001600160a01b039091169063b3f9e4cb9061052790849060040161204c565b60206040518083038186803b15801561053f57600080fd5b505afa158015610553573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610577919081019061178e565b6001600160a01b0316306001600160a01b0316146105a75760405162461bcd60e51b81526004016103589061201c565b6000838152600260209081526040808320600383528184205484529091529081902090516105d6908690611e7d565b9081526040805160209281900383018120805460026001821615610100026000190190911604601f810185900485028301850190935282825290929091908301828280156106655780601f1061063a57610100808354040283529160200191610665565b820191906000526020600020905b81548152906001019060200180831161064857829003601f168201915b505050505091505092915050565b60008181526004602090815260409182902080548351601f60026000196101006001861615020190931692909204918201849004840281018401909452808452606093928301828280156107085780601f106106dd57610100808354040283529160200191610708565b820191906000526020600020905b8154815290600101906020018083116106eb57829003601f168201915b50505050509050919050565b60015460405163430c208160e01b815282916001600160a01b03169063430c2081906107469033908590600401611ec5565b60206040518083038186803b15801561075e57600080fd5b505afa158015610772573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506107969190810190611997565b6107b25760405162461bcd60e51b81526004016103589061202c565b6107bc4283610fec565b5050565b60015460405163430c208160e01b815282916001600160a01b03169063430c2081906107f29033908590600401611ec5565b60206040518083038186803b15801561080a57600080fd5b505afa15801561081e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506108429190810190611997565b61085e5760405162461bcd60e51b81526004016103589061202c565b6108e7600360008481526020019081526020016000205487878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061108e915050565b505050505050565b60015460405163b3f9e4cb60e01b8152606091829184916001600160a01b03169063b3f9e4cb9061092490849060040161204c565b60206040518083038186803b15801561093c57600080fd5b505afa158015610950573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610974919081019061178e565b6001600160a01b0316306001600160a01b0316146109a45760405162461bcd60e51b81526004016103589061201c565b6109ad85610673565b92506109b983856104f2565b9150509250929050565b60009081526020819052604090205490565b6001546001600160a01b03165b90565b6060600082519050606081604051908082528060200260200182016040528015610a2357816020015b6060815260200190600190039081610a0e5790505b50905060005b82811015610a6c57610a4d858281518110610a4057fe5b6020026020010151610673565b828281518110610a5957fe5b6020908102919091010152600101610a29565b509392505050565b610acf63ce92b33e60e01b858585604051602401610a9493929190611f24565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092178252519020838361129f565b600082815260036020526040902054610aea908585856113c3565b50505050565b610b1063ec129eea60e01b858585604051602401610a9493929190611f24565b610aea84848461140a565b60015460405163b3f9e4cb60e01b8152606091829184916001600160a01b03169063b3f9e4cb90610b5090849060040161204c565b60206040518083038186803b158015610b6857600080fd5b505afa158015610b7c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610ba0919081019061178e565b6001600160a01b0316306001600160a01b031614610bd05760405162461bcd60e51b81526004016103589061201c565b8451604080518281526020808402820101909152818015610c0557816020015b6060815260200190600190039081610bf05790505b50935080604051908082528060200260200182016040528015610c3c57816020015b6060815260200190600190039081610c275790505b50925060005b81811015610c9f57610c67878281518110610c5957fe5b6020026020010151876108ef565b8651879084908110610c7557fe5b60200260200101868481518110610c8857fe5b602090810291909101019190915252600101610c42565b5050509250929050565b610d3463310bd74b60e01b84604051602401610cc5919061204c565b60408051601f19818403018152918152602080830180516001600160e01b03166001600160e01b031990951694909417845291519092208251601f8601839004830281018301909352848352918691869086908190840183828082843760009201919091525061129f92505050565b610d3e4284610fec565b505050565b610d676347c8169960e01b8888888888604051602401610cc5959493929190611f96565b610df0600360008581526020019081526020016000205488888080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8c018190048102820181019092528a815292508a915089908190840183828082843760009201919091525089925061108e915050565b50505050505050565b60015460405163430c208160e01b815282916001600160a01b03169063430c208190610e2b9033908590600401611ec5565b60206040518083038186803b158015610e4357600080fd5b505afa158015610e57573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610e7b9190810190611997565b610acf5760405162461bcd60e51b81526004016103589061202c565b6005546040516355138f0d60e11b81526001600160a01b039091169063aa271e1a90610ec7903390600401611eb7565b60206040518083038186803b158015610edf57600080fd5b505afa158015610ef3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610f179190810190611997565b610f335760405162461bcd60e51b81526004016103589061203c565b600081815260036020526040902054610d3e908484846113c3565b60015460405163430c208160e01b815282916001600160a01b03169063430c208190610f809033908590600401611ec5565b60206040518083038186803b158015610f9857600080fd5b505afa158015610fac573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610fd09190810190611997565b610b105760405162461bcd60e51b81526004016103589061202c565b600081815260036020526040808220849055600154905163538361a760e01b81526001600160a01b039091169163538361a79161102d91859160040161205a565b600060405180830381600087803b15801561104757600080fd5b505af115801561105b573d6000803e3d6000fd5b50506040518392507f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9150600090a25050565b825160208085019190912060008381526002835260408082208883529093528281209251919290916110c1908790611e7d565b908152604051602091819003919091018120546001805463538361a760e01b84526002918316156101000260001901909216041592506001600160a01b03169063538361a7906111179086908690600401612075565b600060405180830381600087803b15801561113157600080fd5b505af1158015611145573d6000803e3d6000fd5b50505060008481526002602090815260408083208a8452909152908190209051869250611173908890611e7d565b90815260200160405180910390209080519060200190611194929190611521565b50600082815260046020526040902054600260001961010060018416150201909116046111dc57600082815260046020908152604090912086516111da92880190611521565b505b801561123157846040516111f09190611e7d565b6040518091039020837f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f86876040516112289190611fd6565b60405180910390a35b8360405161123f9190611e7d565b6040518091039020856040516112559190611e7d565b6040518091039020847f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d92888860405161128f929190611fe7565b60405180910390a4505050505050565b6000828152602081815260408083205490519092916112f59185916112e9916112ce918a913091899101611e39565b60405160208183030381529060405280519060200120611414565b9063ffffffff61144416565b90506001600160a01b0381161580159061138c575060015460405163430c208160e01b81526001600160a01b039091169063430c20819061133c9084908890600401611ee0565b60206040518083038186803b15801561135457600080fd5b505afa158015611368573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061138c9190810190611997565b6113a85760405162461bcd60e51b81526004016103589061200c565b50505060009081526020819052604090208054600101905550565b825160005b818110156108e757611402868683815181106113e057fe5b60200260200101518684815181106113f457fe5b60200260200101518661108e565b6001016113c8565b610f334282610fec565b6000816040516020016114279190611e89565b604051602081830303815290604052805190602001209050919050565b600081516041146114575750600061151b565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a082111561149d576000935050505061151b565b8060ff16601b141580156114b557508060ff16601c14155b156114c6576000935050505061151b565b600186828585604051600081526020016040526040516114e99493929190611f58565b6020604051602081039080840390855afa15801561150b573d6000803e3d6000fd5b5050506020604051035193505050505b92915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061156257805160ff191683800117855561158f565b8280016001018555821561158f579182015b8281111561158f578251825591602001919060010190611574565b5061159b92915061159f565b5090565b6109e291905b8082111561159b57600081556001016115a5565b805161151b816121a4565b60008083601f8401126115d657600080fd5b5081356001600160401b038111156115ed57600080fd5b60208301915083602082028301111561160557600080fd5b9250929050565b600082601f83011261161d57600080fd5b813561163061162b826120a9565b612083565b81815260209384019390925082018360005b8381101561166e57813586016116588882611734565b8452506020928301929190910190600101611642565b5050505092915050565b600082601f83011261168957600080fd5b813561169761162b826120a9565b915081818352602084019350602081019050838560208402820111156116bc57600080fd5b60005b8381101561166e57816116d28882611783565b84525060209283019291909101906001016116bf565b805161151b816121bb565b60008083601f84011261170557600080fd5b5081356001600160401b0381111561171c57600080fd5b60208301915083600182028301111561160557600080fd5b600082601f83011261174557600080fd5b813561175361162b826120c9565b9150808252602083016020830185838301111561176f57600080fd5b61177a83828461214b565b50505092915050565b803561151b816121c4565b6000602082840312156117a057600080fd5b60006117ac84846115b9565b949350505050565b6000806000604084860312156117c957600080fd5b83356001600160401b038111156117df57600080fd5b6117eb868287016115c4565b935093505060206117fe86828701611783565b9150509250925092565b60008060006060848603121561181d57600080fd5b83356001600160401b0381111561183357600080fd5b61183f8682870161160c565b93505060208401356001600160401b0381111561185b57600080fd5b6118678682870161160c565b92505060406117fe86828701611783565b6000806000806080858703121561188e57600080fd5b84356001600160401b038111156118a457600080fd5b6118b08782880161160c565b94505060208501356001600160401b038111156118cc57600080fd5b6118d88782880161160c565b93505060406118e987828801611783565b92505060608501356001600160401b0381111561190557600080fd5b61191187828801611734565b91505092959194509250565b60006020828403121561192f57600080fd5b81356001600160401b0381111561194557600080fd5b6117ac84828501611678565b6000806040838503121561196457600080fd5b82356001600160401b0381111561197a57600080fd5b61198685828601611678565b92505060206109b985828601611783565b6000602082840312156119a957600080fd5b60006117ac84846116e8565b6000806000806000606086880312156119cd57600080fd5b85356001600160401b038111156119e357600080fd5b6119ef888289016116f3565b955095505060208601356001600160401b03811115611a0d57600080fd5b611a19888289016116f3565b93509350506040611a2c88828901611783565b9150509295509295909350565b60008060008060008060006080888a031215611a5457600080fd5b87356001600160401b03811115611a6a57600080fd5b611a768a828b016116f3565b975097505060208801356001600160401b03811115611a9457600080fd5b611aa08a828b016116f3565b95509550506040611ab38a828b01611783565b93505060608801356001600160401b03811115611acf57600080fd5b611adb8a828b016116f3565b925092505092959891949750929550565b60008060408385031215611aff57600080fd5b82356001600160401b03811115611b1557600080fd5b61198685828601611734565b600060208284031215611b3357600080fd5b60006117ac8484611783565b600080600060408486031215611b5457600080fd5b6000611b608686611783565b93505060208401356001600160401b03811115611b7c57600080fd5b611b88868287016116f3565b92509250509250925092565b60008060408385031215611ba757600080fd5b60006119868585611783565b6000611bbf8383611ccb565b9392505050565b611bcf8161212a565b82525050565b611bcf81612108565b611bcf611bea82612108565b612183565b6000611bfa826120f6565b611c0481856120fa565b935083602082028501611c16856120f0565b8060005b85811015611c505784840389528151611c338582611bb3565b9450611c3e836120f0565b60209a909a0199925050600101611c1a565b5091979650505050505050565b611bcf816109e2565b611bcf611c72826109e2565b6109e2565b611bcf81612135565b6000611c8c83856120fa565b9350611c9983858461214b565b611ca283612194565b9093019392505050565b6000611cb88385612103565b9350611cc583858461214b565b50500190565b6000611cd6826120f6565b611ce081856120fa565b9350611cf0818560208601612157565b611ca281612194565b6000611d04826120f6565b611d0e8185612103565b9350611d1e818560208601612157565b9290920192915050565b6000611d35601c83612103565b7f19457468657265756d205369676e6564204d6573736167653a0a3332000000008152601c0192915050565b6000611d6e6011836120fa565b70494e56414c49445f5349474e415455524560781b815260200192915050565b6000611d9b601d836120fa565b7f5245534f4c5645525f44455441434845445f46524f4d5f444f4d41494e000000815260200192915050565b6000611dd4601f836120fa565b7f53454e4445525f49535f4e4f545f415050524f5645445f4f525f4f574e455200815260200192915050565b6000611e0d6014836120fa565b7329a2a72222a92fa4a9afa727aa2fa6a4a72a22a960611b815260200192915050565b611bcf81612124565b6000611e458286611c66565b602082019150611e558285611bde565b601482019150611e658284611c66565b506020019392505050565b60006117ac828486611cac565b6000611bbf8284611cf9565b6000611e9482611d28565b9150611ea08284611c66565b50602001919050565b6020810161151b8284611bd5565b6020810161151b8284611bc6565b60408101611ed38285611bc6565b611bbf6020830184611c5d565b60408101611ed38285611bd5565b60208082528101611bbf8184611bef565b60408082528101611f108185611bef565b905081810360208301526117ac8184611bef565b60608082528101611f358186611bef565b90508181036020830152611f498185611bef565b90506117ac6040830184611c5d565b60808101611f668287611c5d565b611f736020830186611e30565b611f806040830185611c5d565b611f8d6060830184611c5d565b95945050505050565b60608082528101611fa8818789611c80565b90508181036020830152611fbd818587611c80565b9050611fcc6040830184611c5d565b9695505050505050565b60208082528101611bbf8184611ccb565b60408082528101611ff88185611ccb565b905081810360208301526117ac8184611ccb565b6020808252810161151b81611d61565b6020808252810161151b81611d8e565b6020808252810161151b81611dc7565b6020808252810161151b81611e00565b6020810161151b8284611c5d565b604081016120688285611c5d565b611bbf6020830184611c77565b60408101611ed38285611c5d565b6040518181016001600160401b03811182821017156120a157600080fd5b604052919050565b60006001600160401b038211156120bf57600080fd5b5060209081020190565b60006001600160401b038211156120df57600080fd5b506020601f91909101601f19160190565b60200190565b5190565b90815260200190565b919050565b600061151b82612118565b151590565b6001600160a01b031690565b60ff1690565b600061151b82612140565b600061151b826109e2565b600061151b82612108565b82818337506000910152565b60005b8381101561217257818101518382015260200161215a565b83811115610aea5750506000910152565b600061151b82600061151b8261219e565b601f01601f191690565b60601b90565b6121ad81612108565b81146121b857600080fd5b50565b6121ad81612113565b6121ad816109e256fea365627a7a723158207a1d8dfd286d14fcafd1812a4c44813691ac746a5a23fa711ac5551c9509654d6c6578706572696d656e74616cf564736f6c634300050c0040","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x5":"0x4a3c194eb88966178bfdd81744dddafed611b830"}},"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa":{"nonce":94,"balance":"0x35a9ced02802e622c6","code":"0x","storage":{}}}} \ No newline at end of file +{"block":{"number":"0x5d","coinbase":"0x0000000000000000000000000000000000000000","timestamp":"0x66506392","gas_limit":"0x6691b7","basefee":"0x1b7bc","difficulty":"0x0","prevrandao":"0x0000000000000000000000000000000000000000000000000000000000000000","blob_excess_gas_and_price":{"excess_blob_gas":0,"blob_gasprice":1}},"accounts":{"0x0000000000000000000000000000000000000000":{"nonce":0,"balance":"0x10225595542b90e","code":"0x","storage":{}},"0x00e39a5004299871ab3b00fed5a39a715f181d02":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x66":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x67":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xd178b720229c39de617846f84cf9c8d32a63a23d","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0x0458f653495fb8d9bd0e7df468c2bf76d26c7bd9":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f7e83aee1461002d575b5f80fd5b61004061003b3660046105ba565b610054565b604051901515815260200160405180910390f35b5f601482146100a95760405162461bcd60e51b815260206004820152601860248201527f496e76616c696420736861312068617368206c656e6774680000000000000000604482015260640160405180910390fd5b5f6100ec5f85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101599050565b6bffffffffffffffffffffffff191690505f61013c87878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061018a92505050565b6bffffffffffffffffffffffff1916919091149695505050505050565b81515f90610168836014610621565b1115610172575f80fd5b5001602001516bffffffffffffffffffffffff191690565b5f6040518251602084019350604067ffffffffffffffc0600183011601600982820310600181036101bc576040820191505b50776745230100efcdab890098badcfe001032547600c3d2e1f061020d565b5f8383101561020657508082015192829003926020841015610206575f1960208590036101000a0119165b9392505050565b5f5b82811015610514576102228482896101db565b85526102328460208301896101db565b60208601526040818503106001810361024e5760808286038701535b506040830381146001810361026b57602086018051600887021790525b5060405b60808110156102f357858101603f19810151603719820151601f19830151600b198401516002911891909218189081027ffffffffefffffffefffffffefffffffefffffffefffffffefffffffefffffffe1663800000009091047c010000000100000001000000010000000100000001000000010000000116179052600c0161026f565b5060805b61014081101561037c57858101607f19810151606f19820151603f198301516017198401516004911891909218189081027ffffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffc1663400000009091047c0300000003000000030000000300000003000000030000000300000003161790526018016102f7565b50815f805f5b60508110156104ea576014810480156103b257600181146103d957600281146103fe576003811461042857610449565b600160281b8504600160501b86048118600160781b870416189350635a8279999250610449565b600160281b8504600160781b8604600160501b870418189350636ed9eba19250610449565b600160501b8504600160781b8604818117600160281b8804169116179350638f1bbcdc9250610449565b600160281b8504600160781b8604600160501b87041818935063ca62c1d692505b50601f600160bb1b8504168063ffffffe06001609b1b87041617905080840190508063ffffffff8616019050808301905080600160e01b600484028c015104019050600160a01b8102600160281b860417945050600160501b633fffffff600160521b86041663c00000006604000000000000870416170277ffffffff00ffffffff000000000000ffffffff00ffffffff8516179350600181019050610382565b5050509190910177ffffffff00ffffffff00ffffffff00ffffffff00ffffffff169060400161020f565b50600160601b63ffffffff821667ffffffff000000006101008404166bffffffff00000000000000006201000085041663ffffffff60601b630100000086041663ffffffff60801b6401000000008704161717171702945050505050919050565b5f8083601f840112610585575f80fd5b50813567ffffffffffffffff81111561059c575f80fd5b6020830191508360208285010111156105b3575f80fd5b9250929050565b5f805f80604085870312156105cd575f80fd5b843567ffffffffffffffff808211156105e4575f80fd5b6105f088838901610575565b90965094506020870135915080821115610608575f80fd5b5061061587828801610575565b95989497509550505050565b8082018082111561064057634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x06e2822b8856749ed179c77140dbc5f5a27410a4":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063de8f50a11461002d575b5f80fd5b61004061003b36600461051c565b610054565b604051901515815260200160405180910390f35b5f6060805f61009c60048b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506102e79050565b60ff1690508015610166576100f060058261ffff168c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b925061015f6101008260056105c3565b61ffff908116906005906101169085168d6105e5565b61012091906105e5565b8c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b915061021d565b6101a960058b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250929392505061038b9050565b90506101f460078261ffff168c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061030b9050565b925061021a6102048260076105c3565b61ffff908116906007906101169085168d6105e5565b91505b5f606061026084868a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152506103b192505050565b90925090508180156102d757506102856020825161027e91906105e5565b82906103cb565b60028b8b6040516102979291906105f8565b602060405180830381855afa1580156102b2573d5f803e3d5ffd5b5050506040513d601f19601f820116820180604052508101906102d59190610607565b145b9c9b505050505050505050505050565b5f8282815181106102fa576102fa61061e565b016020015160f81c90505b92915050565b825160609061031a8385610632565b1115610324575f80fd5b5f8267ffffffffffffffff81111561033e5761033e610645565b6040519080825280601f01601f191660200182016040528015610368576020820181803683370190505b509050602080820190868601016103808282876103ed565b509095945050505050565b81515f9061039a836002610632565b11156103a4575f80fd5b50016002015161ffff1690565b5f60606103bf838587610442565b91509150935093915050565b81515f906103da836020610632565b11156103e4575f80fd5b50016020015190565b602081106104255781518352610404602084610632565b9250610411602083610632565b915061041e6020826105e5565b90506103ed565b905182516020929092036101000a5f190180199091169116179052565b5f60605f85518551855188888860405160200161046496959493929190610686565b6040516020818303038152906040529050835167ffffffffffffffff81111561048f5761048f610645565b6040519080825280601f01601f1916602001820160405280156104b9576020820181803683370190505b50915083516020830182516020840160055afa925050935093915050565b5f8083601f8401126104e7575f80fd5b50813567ffffffffffffffff8111156104fe575f80fd5b602083019150836020828501011115610515575f80fd5b9250929050565b5f805f805f8060608789031215610531575f80fd5b863567ffffffffffffffff80821115610548575f80fd5b6105548a838b016104d7565b9098509650602089013591508082111561056c575f80fd5b6105788a838b016104d7565b90965094506040890135915080821115610590575f80fd5b5061059d89828a016104d7565b979a9699509497509295939492505050565b634e487b7160e01b5f52601160045260245ffd5b61ffff8181168382160190808211156105de576105de6105af565b5092915050565b81810381811115610305576103056105af565b818382375f9101908152919050565b5f60208284031215610617575f80fd5b5051919050565b634e487b7160e01b5f52603260045260245ffd5b80820180821115610305576103056105af565b634e487b7160e01b5f52604160045260245ffd5b5f81515f5b81811015610678576020818501810151868301520161065e565b505f93019283525090919050565b8681528560208201528460408201525f6106b56106af6106a96060850188610659565b86610659565b84610659565b9897505050505050505056fea164736f6c6343000818000a","storage":{}},"0x0712e8e819712c3bfdb098ce51c87a4ac0296fd8":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x0930ffb2c192b0c9a9dd2372cf7f2845ef39cbb6":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x65":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x66":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xbe92182cab5b84fd18b34881a0c32771e84f5b8b","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c8121905":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x107733fed96c4cd390c944a31f5425a7fb98ae5e":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x65":"0x556e73746f707061626c6520446f6d61696e7300000000000000000000000026","0x66":"0x5544000000000000000000000000000000000000000000000000000000000004","0x133":"0x68747470733a2f2f6578616d706c652e636f6d2f000000000000000000000028","0x134":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x9c74364589a7bce52d7a232f90c98b979577d9ab711dbe7e9fb985471178bff":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf29a433ca043c2d5f13825944af9d019209f338df87172c6b8012dce3044881":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf319a2ef598111826b455194189a27454a0286226eb066e1116f605e0373b37":"0x0","0x1257bbdf5bed452b3eda1d974a9839972d4d54d7fb1cde6a652e653346cc29b8":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x12c033f2252861b1bd15e9b5c71ef1cf26ca53de15eabc3b49e06f596e8755ec":"0x0","0x1348552952ac59b1c2522e84f684e36775420b449eddcdbd28f217183ed58b09":"0x0","0x149026695ebdd2bd6be0a7006aec5d10ddffbe46be181e4468980ea83c004fe9":"0x0","0x14c854a78d51371251661a408306c75d2515b5d509b295a58205e48267082bdc":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x18f06622a1abedc7bb78fcc98b2375188aef6c03b9247beee780b0b095d60285":"0x0","0x201ef5e312d372e2aeac4cf173b46ad2985127c7381f4f9acae5ebbd3a5e3861":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x2215c0abaeffcb5feae8a439b3185f8fba5dd6d97529a56c7609cd41fafdf5f1":"0x1","0x23513200931f98893f46373666c13964c7a821c5b40da7951b921629acf02735":"0x0","0x23f87654b79c6db28828f317e47d0c8deb9eaa2ea4e213fef901836c85036bf3":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x2e4566d865f2e159531492d7643e25e502917762b29082282ab9dfee8fbf54c7":"0x0","0x31fc31c15d389c5908095d314bb8b258352d51e18ac8a2f7fe15f3a0af519145":"0x0","0x3467fdbb447be3074b11c625b56e54d7ab44f3804bef205b07dd436d707d06d5":"0x0","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x62b11ad5f582a5c5d378fb310125b030042554f1","0x3cd80e7291e5f6dffa9af6eb70d47145a8fdd40acb8d09dfd0cf374e8c239b37":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x3f86c4990e663ffa5011ed38824fca68af7e0592eb22f41aebdec0ce84ee672e":"0x0","0x406aa3bf31381c8a323679af48792dfa2e7aa09dd0eb919e307dc4bf84216ff6":"0x0","0x47ce17acd30cc86e021ac7b23be8138ea767f6da503362aac5888a0679270eed":"0x0","0x4a7983c36f64e6df4d467cf706c128c273d30c24bbb172e251a5740624cc0bd3":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x4c42d98041cda7cb7d56b5d04731bd436366eb9f05c30f43671f1d1e2c0b0fa4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x55926eed7087c8cbfa1492f6d367f5e4c14c8d8cd59e2918c37184091369efb1":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x5b20f40cb5e9e634a90df9a72b516c11cc52281a4d1b7b67e672e2fe544ff22f":"0x0","0x6dac3e1cfae338e10c9c2f5000f6256d09afa83708761042001cea734f470ac1":"0x0","0x6defc32a546a6fb1b745bd1bb04e27085e94f01d7ef79587aee2c80853c43a53":"0x0","0x760b245be050a725a39b4fc089ad474a5fd40efa17101e112d30195d590779b4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x7bee59fcac76da32acb23def57eaaf959a4372a4fc180978fbd54f7a4c4b2f3d":"0x0","0x804aee9448e0b539a009ee7c6dd57e686c72e7b182e9622a42922b245a97e61e":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x825f7f8567cfd669c3beab41edff07d4aa51436123deeb0d3623b6a8fdec893c":"0x0","0x8717a3236e6a948df94444f035834fa8f7c5ee663a29f3580f3ef43ab051d6bd":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8a34e37883baf84417a33bb02eec8d1e43e363f617029800ff166614df3f112f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8bd1acdc45b63f1edf5db0b1444f1c4a6f82bf0a5a0a7231c2dd7b76a2b1e35c":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87":"0x0","0x8ed4e9fbdf86edd9f3eb1c8d4fbfc53a2eb863faf4cf5e0d2b307c0b33030091":"0x0","0x8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x90d72780b77edcd0c8daffbac0b21264679e851b734cb090e2b144eb3a28bb98":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x93fc964857984ff804a65eaceac4062669948f2b651ddc6b71373ad142bf45e0":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0x9770fa903e700367e0306ab8fd70a2bb4f049417d341a2f8a2409d8d6a2218d1":"0x0","0xb1016fe231c2ed9dba8c95d2658191823b4b9ffa61a7aea530802c6b2ff27c41":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xbe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafe":"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f","0xbe7c5c707db1c91bd2c84880bb1e177b65886d295d9a62df8edfe38f8066cc81":"0x0","0xc3cd64a46de7309013ddb93a16a3024c2e46fb931e4744edf2610fb119f716f5":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xc563f9d3175978a619bae1a8175d3ea4be91d3890345085c5eb16f83b678a3d9":"0x0","0xc5b5cdb7b939f9d661f58f28c37e10cf71d45dacfea2581c88ae4a17aaf55e6e":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xd386775169d9e0716e9b5b08561984726edaa9febd0ca8e5468ecffa112078c7":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xe3b736cdcc6a09d7e3a05ffb63b11f11c91958d861443c3409d3fd863e8217bd":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xe3e5b75e3dff543bfbfe5b494e4e3243b4d9d0b3d794725cea46c28fe6be50e4":"0x0","0xe7d61626cac95282d296ee7ab5958e3e72e32eb959a7cab1d37c0f9d6d69c18a":"0x1a","0xeca5e1ccaa645ce2be97a867a1f8aeeb63ea833aeb009c0df0553b42b30c683f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf08305746cdba1d0eaa65036694838a3db122973267ffc57739d605c320c680a":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf0d566acc03395f71b37890f455d51d93197adf754ea72aba21427dc66b437df":"0x0","0xf230898ba4fe40c52f958d03013d995f822e25a5d4fae43bbdc6e92623cea0bd":"0x0","0xf245a9962043f44f4af98f9952a3bd29d91eb05418e4bb567b9de8f27e239b13":"0x0","0xf2a19ade13962e8675aecf2fbe51913877912f9e48e899806b6e06e82f9a980f":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xf2fab50b0b53245ddfa1bcfcdf4c73e209d6921dad704d173cf04cbbadc8e346":"0x0","0xfa6f3ee10d719cb3457d10c539ff3d77b8e56852ea62f68b2f9f85ad691ed6b4":"0x39a27956b78d00a4e00ea8833ff0947410a2933f","0xfff3abb219acc6ef4eed6e93a5682023229370196f352cdf3a71a88d881e3487":"0x0"}},"0x11dd97b7ca847dfb6504e61b7b9eb30f55e554a0":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a424740014610090575b600080fd5b610059610054366004610ba9565b6100b3565b6040516100669190610c98565b60405180910390f35b61008261007d366004610cab565b6101ce565b604051908152602001610066565b6100a361009e366004610ba9565b610332565b6040519015158152602001610066565b606060005a6001546040805163b3f9e4cb60e01b81529088013560048201529192506000916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561010a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061012e9190610cd9565b90506101c26101406020880188610cf6565b8260408901358561015460608c018c610d13565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8f018190048102820181019092528d815292508d91508c90819084018382808284376000920191909152506103fb92505050565b925050505b9392505050565b60025460015460405163b3f9e4cb60e01b8152600481018490526000926001600160a01b0390811692169063b3f9e4cb90602401602060405180830381865afa92505050801561023b575060408051601f3d908101601f1916820190925261023891810190610cd9565b60015b156102435790505b6001600160a01b0381163b156102c557604051636ccbae5f60e01b81526004810184905281906001600160a01b03821690636ccbae5f90602401602060405180830381865afa9250505080156102b6575060408051601f3d908101601f191682019092526102b391810190610d5a565b60015b156102c357949350505050565b505b600254604051636ccbae5f60e01b8152600481018590526001600160a01b0390911690636ccbae5f90602401602060405180830381865afa15801561030e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101c79190610d5a565b6001546040805163b3f9e4cb60e01b815290850135600482015260009182916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa158015610383573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103a79190610cd9565b90506103f26103b586610e0b565b8286868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506104d392505050565b95945050505050565b6060600080876001600160a01b0316866104178b8a898961051f565b6040516104249190610eb5565b60006040518083038160008787f1925050503d8060008114610462576040519150601f19603f3d011682016040523d82523d6000602084013e610467565b606091505b509092509050610478603f87610ed1565b5a1161048657610486610ef3565b6104c682826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506105d4565b9998505050505050505050565b60006104e084848461060d565b8015610514575060608401516020908101516001600160e01b031990811660009081529182905260409091205460e01b1615155b949350505050565b50565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036105b15760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526105c982828661074c565b979650505050505050565b606083156105e35750816101c7565b8251156105f35782518084602001fd5b8160405162461bcd60e51b81526004016105a89190610c98565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015610654573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106789190610d5a565b905060006107268660600151805190602001208688602001516040516020016106c69392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156101c2575085516101c2906001600160a01b03168286610935565b60606001600160e01b0319841663b87abc1160e01b036107cd5760008380602001905181019061077c9190610d5a565b9050848184604051602401610792929190610f09565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915291506101c79050565b6001600160e01b0319841663c597407360e01b03610859576000806000858060200190518101906107fe9190610f67565b925092509250868383838860405160240161081c9493929190610fd4565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293506101c792505050565b6001600160e01b031984166311ed383160e31b036108a85760008060008580602001905181019061088a91906110a6565b925092509250868383838860405160240161081c9493929190611157565b6001600160e01b031984166328d55f9b60e21b036101c7576000806000858060200190518101906108d991906110a6565b92509250925086838383886040516024016108f79493929190611157565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293505050509392505050565b60008060006109448585610a77565b9092509050600081600481111561095d5761095d61117c565b14801561097b5750856001600160a01b0316826001600160a01b0316145b1561098b576001925050506101c7565b600080876001600160a01b0316631626ba7e60e01b88886040516024016109b3929190610f09565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516109f19190610eb5565b600060405180830381855afa9150503d8060008114610a2c576040519150601f19603f3d011682016040523d82523d6000602084013e610a31565b606091505b5091509150818015610a44575080516020145b8015610a6b57508051630b135d3f60e11b90610a699083016020908101908401610d5a565b145b98975050505050505050565b6000808251604103610aad5760208301516040840151606085015160001a610aa187828585610abc565b94509450505050610ab5565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610af35750600090506003610ba0565b8460ff16601b14158015610b0b57508460ff16601c14155b15610b1c5750600090506004610ba0565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610b70573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610b9957600060019250925050610ba0565b9150600090505b94509492505050565b600080600060408486031215610bbe57600080fd5b833567ffffffffffffffff80821115610bd657600080fd5b9085019060808288031215610bea57600080fd5b90935060208501359080821115610c0057600080fd5b818601915086601f830112610c1457600080fd5b813581811115610c2357600080fd5b876020828501011115610c3557600080fd5b6020830194508093505050509250925092565b60005b83811015610c63578181015183820152602001610c4b565b50506000910152565b60008151808452610c84816020860160208601610c48565b601f01601f19169290920160200192915050565b6020815260006101c76020830184610c6c565b600060208284031215610cbd57600080fd5b5035919050565b6001600160a01b038116811461051c57600080fd5b600060208284031215610ceb57600080fd5b81516101c781610cc4565b600060208284031215610d0857600080fd5b81356101c781610cc4565b6000808335601e19843603018112610d2a57600080fd5b83018035915067ffffffffffffffff821115610d4557600080fd5b602001915036819003821315610ab557600080fd5b600060208284031215610d6c57600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610dac57610dac610d73565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ddb57610ddb610d73565b604052919050565b600067ffffffffffffffff821115610dfd57610dfd610d73565b50601f01601f191660200190565b600060808236031215610e1d57600080fd5b610e25610d89565b8235610e3081610cc4565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610e6057600080fd5b840136601f820112610e7157600080fd5b8035610e84610e7f82610de3565b610db2565b8181523684838501011115610e9857600080fd5b818484018583013760009181019093015250606082015292915050565b60008251610ec7818460208701610c48565b9190910192915050565b600082610eee57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b8281526040602082015260006105146040830184610c6c565b600082601f830112610f3357600080fd5b8151610f41610e7f82610de3565b818152846020838601011115610f5657600080fd5b610514826020830160208701610c48565b600080600060608486031215610f7c57600080fd5b835167ffffffffffffffff80821115610f9457600080fd5b610fa087838801610f22565b94506020860151915080821115610fb657600080fd5b50610fc386828701610f22565b925050604084015190509250925092565b608081526000610fe76080830187610c6c565b8281036020840152610ff98187610c6c565b905084604084015282810360608401526105c98185610c6c565b600082601f83011261102457600080fd5b8151602067ffffffffffffffff8083111561104157611041610d73565b8260051b611050838201610db2565b938452858101830193838101908886111561106a57600080fd5b84880192505b85831015610a6b578251848111156110885760008081fd5b6110968a87838c0101610f22565b8352509184019190840190611070565b6000806000606084860312156110bb57600080fd5b835167ffffffffffffffff808211156110d357600080fd5b6110df87838801611013565b945060208601519150808211156110f557600080fd5b50610fc386828701611013565b600081518084526020808501808196508360051b8101915082860160005b8581101561114a578284038952611138848351610c6c565b98850198935090840190600101611120565b5091979650505050505050565b60808152600061116a6080830187611102565b8281036020840152610ff98187611102565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x2":"0xf8c26340c1eaea6c7ff1760b25005e1306953572","0x1e74f978992d7d64ddac400bd4aae9eefd60fa0b8456650273f5f50148803323":"0xa3557e6c","0x23c84c23be8f829809d1b1502c647c6c59fb6b2345b163a2ca3e7d4f9855975c":"0x8f69c188","0xa0286316c9d3cb00f4f54a9f1096cefaa1748bb5a5395e7fa1563568ebb3e6c3":"0xb87abc11","0xdc138de224807be243ee38fe9e746cce5d437a256b87be90b80240e0811ad043":"0xc5974073"}},"0x145908bbcfc7b258e4d4d9a586f6e3249ae80216":{"nonce":1,"balance":"0x0","code":"0x3d5c","storage":{}},"0x17cda4e23f7237277952e075b1c48467aabfacc0":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c806368f9dab21461002d575b5f80fd5b61004061003b36600461088b565b610052565b60405190815260200160405180910390f35b5f61006f6040518060400160405280606081526020015f81525090565b61008e61007c858861090d565b61008790601061090d565b82906101d1565b506100d085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250859392505061023a9050565b5061011287878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250859392505061023a9050565b505f610120825f0151610266565b905083156101bc5760408051808201909152606081525f602090910181905282515261014c825f610650565b5061018e88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250869392505061023a9050565b505f5b848110156101ba576101a4835f8461067f565b5082516101b090610266565b9150600101610191565b505b6001600160601b031916979650505050505050565b60408051808201909152606081525f60208201526101f0602083610920565b1561021857610200602083610920565b61020b90602061093f565b610215908361090d565b91505b506020808301829052604080518085525f815283019091019052815b92915050565b60408051808201909152606081525f602082015261025f83845f0151518485516106b2565b9392505050565b5f6040518251602084019350604067ffffffffffffffc060018301160160098282031060018103610298576040820191505b50776745230100efcdab890098badcfe001032547600c3d2e1f06102e8565b5f8383101561025f5750808201519282900392602084101561025f575f1960208590036101000a0119169392505050565b5f5b828110156105ef576102fd8482896102b7565b855261030d8460208301896102b7565b6020860152604081850310600181036103295760808286038701535b506040830381146001810361034657602086018051600887021790525b5060405b60808110156103ce57858101603f19810151603719820151601f19830151600b198401516002911891909218189081027ffffffffefffffffefffffffefffffffefffffffefffffffefffffffefffffffe1663800000009091047c010000000100000001000000010000000100000001000000010000000116179052600c0161034a565b5060805b61014081101561045757858101607f19810151606f19820151603f198301516017198401516004911891909218189081027ffffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffc1663400000009091047c0300000003000000030000000300000003000000030000000300000003161790526018016103d2565b50815f805f5b60508110156105c55760148104801561048d57600181146104b457600281146104d9576003811461050357610524565b600160281b8504600160501b86048118600160781b870416189350635a8279999250610524565b600160281b8504600160781b8604600160501b870418189350636ed9eba19250610524565b600160501b8504600160781b8604818117600160281b8804169116179350638f1bbcdc9250610524565b600160281b8504600160781b8604600160501b87041818935063ca62c1d692505b50601f600160bb1b8504168063ffffffe06001609b1b87041617905080840190508063ffffffff8616019050808301905080600160e01b600484028c015104019050600160a01b8102600160281b860417945050600160501b633fffffff600160521b86041663c00000006604000000000000870416170277ffffffff00ffffffff000000000000ffffffff00ffffffff851617935060018101905061045d565b5050509190910177ffffffff00ffffffff00ffffffff00ffffffff00ffffffff16906040016102ea565b50600160601b63ffffffff821667ffffffff000000006101008404166bffffffff00000000000000006201000085041663ffffffff60601b630100000086041663ffffffff60801b6401000000008704161717171702945050505050919050565b60408051808201909152606081525f602082015282515161025f9084906001600160601b031985166014610798565b60408051808201909152606081525f60208201526106aa84846001600160601b031985166014610798565b949350505050565b60408051808201909152606081525f602082015282518211156106d3575f80fd5b60208501516106e2838661090d565b1115610715576107158561070587602001518786610700919061090d565b610813565b610710906002610952565b610829565b5f808651805187602083010193508088870111156107335787860182525b505050602084015b60208410610773578051825261075260208361090d565b915061075f60208261090d565b905061076c60208561093f565b935061073b565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b60408051808201909152606081525f602082015260208501516107bb858461090d565b11156107cf576107cf85610705868561090d565b5f6001836101000a0390508260200360080284901c93508551838682010185831982511617815250805184870111156108085783860181525b509495945050505050565b5f81831115610823575081610234565b50919050565b815161083583836101d1565b50610840838261023a565b50505050565b5f8083601f840112610856575f80fd5b50813567ffffffffffffffff81111561086d575f80fd5b602083019150836020828501011115610884575f80fd5b9250929050565b5f805f805f6060868803121561089f575f80fd5b853567ffffffffffffffff808211156108b6575f80fd5b6108c289838a01610846565b909750955060208801359150808211156108da575f80fd5b506108e788828901610846565b96999598509660400135949350505050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610234576102346108f9565b5f8261093a57634e487b7160e01b5f52601260045260245ffd5b500690565b81810381811115610234576102346108f9565b8082028115828204841417610234576102346108f956fea164736f6c6343000818000a","storage":{}},"0x19356cc2300833e690088a5a09a2044a3cc2a1e2":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x229c56b7805ab5935a883207f6a6bd5847e65aee":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106102ae5760003560e01c8063906cecc111610175578063b9998a24116100dc578063d547741f11610095578063f2fde38b1161006f578063f2fde38b14610892578063f5243bc4146108b2578063f940e385146108d2578063ffa1ad74146108f257600080fd5b8063d547741f1461083f578063d7db74c71461085f578063ec5273891461087257600080fd5b8063b9998a241461077d578063cc2a9a5b1461079d578063cc2c3fc4146107bd578063ceeb4f50146107dd578063d1f5692c146107fd578063d53913931461081d57600080fd5b8063a3a3f7f61161012e578063a3a3f7f614610690578063a3f4df7e146106b0578063a849d65c146106fd578063aa271e1a1461071d578063b0aa98c71461073d578063b3ab15fb1461075d57600080fd5b8063906cecc1146105e657806391d1485414610606578063983b2d5614610626578063986502751461064657806399e0dd7c1461065b578063a217fddf1461067b57600080fd5b80635b6fa8db11610219578063715018a6116101d2578063715018a61461054b57806371e2a6571461056057806377a2a5891461058057806381c81d35146105a05780638456cb59146105b35780638da5cb5b146105c857600080fd5b80635b6fa8db146104a35780635c975abb146104c35780635cd7e3b3146104d85780635e22cd86146104f85780635fc1964f14610518578063634486da1461053857600080fd5b80633092afd51161026b5780633092afd5146103a857806336568abe146103c85780633f41b614146103e85780633f4ba83a1461042057806351cff8d914610435578063572b6c051461045557600080fd5b806301ffc9a7146102b35780631edb948e146102e857806320c5429b1461030a578063248a9ca31461032a578063268b15ed146103685780632f2ff15d14610388575b600080fd5b3480156102bf57600080fd5b506102d36102ce366004613dc4565b610923565b60405190151581526020015b60405180910390f35b3480156102f457600080fd5b50610308610303366004613e13565b61095a565b005b34801561031657600080fd5b50610308610325366004613e3f565b610b03565b34801561033657600080fd5b5061035a610345366004613e3f565b60009081526097602052604090206001015490565b6040519081526020016102df565b34801561037457600080fd5b50610308610383366004613e99565b610c26565b34801561039457600080fd5b506103086103a3366004613f04565b610cb9565b3480156103b457600080fd5b506103086103c3366004613f34565b610ce3565b3480156103d457600080fd5b506103086103e3366004613f04565b610cf7565b3480156103f457600080fd5b5060c954610408906001600160a01b031681565b6040516001600160a01b0390911681526020016102df565b34801561042c57600080fd5b50610308610d85565b34801561044157600080fd5b50610308610450366004613f34565b610d97565b34801561046157600080fd5b506102d3610470366004613f34565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546001600160a01b0390811691161490565b3480156104af57600080fd5b5060cc54610408906001600160a01b031681565b3480156104cf57600080fd5b506102d3610e37565b3480156104e457600080fd5b506103086104f3366004613fa3565b610e4d565b34801561050457600080fd5b50610308610513366004614062565b6110b1565b34801561052457600080fd5b5061030861053336600461419c565b6112f6565b610308610546366004613f34565b61133e565b34801561055757600080fd5b50610308611401565b34801561056c57600080fd5b5061030861057b36600461419c565b611413565b34801561058c57600080fd5b5060ce54610408906001600160a01b031681565b6103086105ae366004613f34565b61145b565b3480156105bf57600080fd5b506103086114d8565b3480156105d457600080fd5b506033546001600160a01b0316610408565b3480156105f257600080fd5b5061030861060136600461423a565b6114e8565b34801561061257600080fd5b506102d3610621366004613f04565b61156e565b34801561063257600080fd5b50610308610641366004613f34565b611599565b34801561065257600080fd5b506103086115aa565b34801561066757600080fd5b50610308610676366004614295565b6115c4565b34801561068757600080fd5b5061035a600081565b34801561069c57600080fd5b506103086106ab3660046142d6565b6116ab565b3480156106bc57600080fd5b506106f0604051806040016040528060148152602001732aa7299d1026b4b73a34b7339026b0b730b3b2b960611b81525081565b6040516102df919061437c565b34801561070957600080fd5b5060cb54610408906001600160a01b031681565b34801561072957600080fd5b506102d3610738366004613f34565b6116f4565b34801561074957600080fd5b506102d3610758366004613e3f565b61170e565b34801561076957600080fd5b50610308610778366004613f34565b61176c565b34801561078957600080fd5b50610308610798366004613f34565b611796565b3480156107a957600080fd5b506103086107b836600461438f565b6117db565b3480156107c957600080fd5b5060ca54610408906001600160a01b031681565b3480156107e957600080fd5b506103086107f8366004614411565b611cd2565b34801561080957600080fd5b506103086108183660046144c6565b611d76565b34801561082957600080fd5b5061035a600080516020614ef483398151915281565b34801561084b57600080fd5b5061030861085a366004613f04565b611e2d565b61030861086d3660046144fb565b611e52565b34801561087e57600080fd5b5061030861088d366004613e3f565b611fe2565b34801561089e57600080fd5b506103086108ad366004613f34565b612054565b3480156108be57600080fd5b506103086108cd3660046145f0565b612070565b3480156108de57600080fd5b506103086108ed366004614708565b612222565b3480156108fe57600080fd5b506106f060405180604001604052806005815260200164302e352e3160d81b81525081565b60006001600160e01b03198216637965db0b60e01b148061095457506301ffc9a760e01b6001600160e01b03198316145b92915050565b61096561073861239e565b61098a5760405162461bcd60e51b815260040161098190614736565b60405180910390fd5b60c95460405163baef73e960e01b8152600481018390526000916001600160a01b03169063baef73e990602401602060405180830381865afa1580156109d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109f8919061476b565b9050806001600160401b0316600003610a235760405162461bcd60e51b815260040161098190614788565b806001600160401b0316836001600160401b031611610a905760405162461bcd60e51b815260206004820152602360248201527f4d696e74696e674d616e616765723a204558504952595f4e4f545f455854454e60448201526211115160ea1b6064820152608401610981565b60c954604051631fb9763760e11b81526001600160401b0385166004820152602481018490526001600160a01b0390911690633f72ec6e906044015b600060405180830381600087803b158015610ae657600080fd5b505af1158015610afa573d6000803e3d6000fd5b50505050505050565b610b0e61073861239e565b610b2a5760405162461bcd60e51b815260040161098190614736565b60c95460405163baef73e960e01b8152600481018390526001600160a01b039091169063baef73e990602401602060405180830381865afa158015610b73573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b97919061476b565b6001600160401b0316600003610bbf5760405162461bcd60e51b815260040161098190614788565b60c954604051637eee288d60e01b8152306004820152602481018390526001600160a01b0390911690637eee288d90604401600060405180830381600087803b158015610c0b57600080fd5b505af1158015610c1f573d6000803e3d6000fd5b5050505050565b8282828080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250610c6993508592508491506123ad565b610c71610e37565b15610c8e5760405162461bcd60e51b8152600401610981906147cb565b6060610afa610c9b61239e565b610cae88610ca98989612584565b6125b0565b8384600060016126c1565b600082815260976020526040902060010154610cd481612c15565b610cde8383612c26565b505050565b610ceb612cad565b610cf481612d26565b50565b610cff61239e565b6001600160a01b0316816001600160a01b031614610d775760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610981565b610d818282612d3e565b5050565b610d8d612cad565b610d95612dc3565b565b610d9f612cad565b6001600160a01b038116610db257600080fd5b60405147906001600160a01b0383169082156108fc029083906000818181858888f19350505050158015610dea573d6000803e3d6000fd5b50604080516001600160a01b03841681526020810183905260008183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a15050565b600080516020614ed48339815191525460ff1690565b610e5786886147f5565b8051600203610e8c57610e6b61073861239e565b610e875760405162461bcd60e51b8152600401610981906148bf565b610fd1565b6000610e9782612e6b565b60c9549092506001600160a01b0316905063430c2081610eb561239e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015610f00573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f249190614903565b80610fb3575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa158015610f7d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fa19190614903565b8015610fb35750610fb361073861239e565b610fcf5760405162461bcd60e51b815260040161098190614920565b505b610fdb87896147f5565b6000600282511015610fff5760405162461bcd60e51b81526004016109819061496f565b6110546110336000846001865161101691906149ca565b81518110611026576110266149dd565b6020026020010151612ea6565b83600081518110611046576110466149dd565b6020026020010151836123ad565b61105c610e37565b156110795760405162461bcd60e51b8152600401610981906147cb565b6110a38b6110878b8d6147f5565b6110918a8c6147f5565b61109b898b6147f5565b6000896126c1565b505050505050505050505050565b6110bb87896147f5565b80516002036110f0576110cf61073861239e565b6110eb5760405162461bcd60e51b8152600401610981906148bf565b611235565b60006110fb82612e6b565b60c9549092506001600160a01b0316905063430c208161111961239e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015611164573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111889190614903565b80611217575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa1580156111e1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112059190614903565b8015611217575061121761073861239e565b6112335760405162461bcd60e51b815260040161098190614920565b505b61123f888a6147f5565b836002825110156112625760405162461bcd60e51b81526004016109819061496f565b6112796110336000846001865161101691906149ca565b611281610e37565b1561129e5760405162461bcd60e51b8152600401610981906147cb565b60028a146112be5760405162461bcd60e51b8152600401610981906149f3565b6112e78c6112cc8c8e6147f5565b6112d68b8d6147f5565b6112e08a8c6147f5565b89896126c1565b50505050505050505050505050565b6112fe612cad565b60005b8151811015610d815761132c82828151811061131f5761131f6149dd565b6020026020010151612d26565b8061133681614a39565b915050611301565b61134961073861239e565b6113655760405162461bcd60e51b815260040161098190614736565b6001600160a01b0381166113bb5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610981565b6113c481612f5a565b6113cc6115aa565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610d81573d6000803e3d6000fd5b611409612cad565b610d956000612f72565b61141b612cad565b60005b8151811015610d815761144982828151811061143c5761143c6149dd565b6020026020010151612f5a565b8061145381614a39565b91505061141e565b61146661073861239e565b6114825760405162461bcd60e51b815260040161098190614736565b6001600160a01b0381166113c45760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610981565b6114e0612cad565b610d95612fc4565b8282828080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525061152b93508592508491506123ad565b611533610e37565b156115505760405162461bcd60e51b8152600401610981906147cb565b606061156487610cae88610ca98989612584565b5050505050505050565b60009182526097602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6115a1612cad565b610cf481612f5a565b610d95600080516020614ef48339815191526103e361239e565b6115cc612cad565b60c954604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906115fe9085908590600401614a52565b600060405180830381600087803b15801561161857600080fd5b505af115801561162c573d6000803e3d6000fd5b505060cb546001600160a01b0316159150610d8190505760cb54604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906116759085908590600401614a52565b600060405180830381600087803b15801561168f57600080fd5b505af11580156116a3573d6000803e3d6000fd5b505050505050565b6116b3612cad565b610cde83838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525085925061302c915050565b6000610954600080516020614ef48339815191528361156e565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd696020820152908101829052600090611762906060015b6040516020818303038152906040528051906020012090565b5460ff1692915050565b611774612cad565b60ce80546001600160a01b0319166001600160a01b0392909216919091179055565b61179e612cad565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e80546001600160a01b0319166001600160a01b03831617905550565b600054610100900460ff16158080156117fb5750600054600160ff909116105b806118155750303b158015611815575060005460ff166001145b6118785760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610981565b6000805460ff19166001179055801561189b576000805461ff0019166101001790555b60c980546001600160a01b03199081166001600160a01b038a81169190911790925560ca8054821689841617905560cb8054821688841617905560cc8054821687841617905560ce80549091169185169190911790556118f961314c565b611901613183565b61190a826131bc565b6119126131e3565b6040805161036081018252600661032082018181526563727970746f60d01b610340840152825282518084018452818152651dd85b1b195d60d21b602082810191909152808401919091528351808501855260018152600f60fb1b8183015283850152835180850185526003808252621b999d60ea1b82840152606085019190915284518086018652600a815269313637b1b5b1b430b4b760b11b818401526080850152845180860186526007808252663134ba31b7b4b760c91b8285015260a0860191909152855180870187528281526207070760eb1b8185015260c0860152855180870187528281526264616f60e81b8185015260e086015285518087018752828152621e9a5b60ea1b8185015261010086015285518087018752908152663837b63cb3b7b760c91b8184015261012085015284518086018652600b81526a756e73746f707061626c6560a81b81840152610140850152845180860186528381526535b632bb32b960d11b8184015261016085015284518086018652600280825261686960f01b8285015261018086019190915285518087018752848152656b726573757360d01b818501526101a086015285518087018752600580825264616e696d6560d81b828601526101c087019190915286518088018852818152646d616e676160d81b818601526101e087015286518088018852600981526862696e616e6365757360b81b8186015261020087015286518088018852818152647265616c6d60d81b818601526102208701528651808801885291825261676f60f01b82850152610240860191909152855180870187526008815267185b1d1a5b5a5cdd60c21b818501526102608601528551808701875290815264707564677960d81b81840152610280850152845180860186528381526530bab9ba34b760d11b818401526102a08501528451808601865292835265189a5d19d95d60d21b838301526102c08401929092528351808501855291825262706f6760e81b828201526102e083019190915282518084019093526004835263636c617960e01b9083015261030081019190915260005b6019811015611c5c57611c4a828260198110611c3e57611c3e6149dd565b6020020151600061302c565b80611c5481614a39565b915050611c20565b50611c8360405180604001604052806003815260200162636f6d60e81b815250600161302c565b508015610afa576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050505050565b8686868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250611d1593508592508491506123ad565b611d1d610e37565b15611d3a5760405162461bcd60e51b8152600401610981906147cb565b611d698a611d4c8b610ca98c8c612584565b611d56888a6147f5565b611d6087896147f5565b600060016126c1565b5050505050505050505050565b611d7e612cad565b60005b81811015610cde5760c9546001600160a01b03166350960239848484818110611dac57611dac6149dd565b9050602002016020810190611dc19190613f34565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401600060405180830381600087803b158015611e0257600080fd5b505af1158015611e16573d6000803e3d6000fd5b505050508080611e2590614a39565b915050611d81565b600082815260976020526040902060010154611e4881612c15565b610cde8383612d3e565b611e5c898b6147f5565b6000600282511015611e805760405162461bcd60e51b81526004016109819061496f565b611e976110336000846001865161101691906149ca565b611e9f610e37565b15611ebc5760405162461bcd60e51b8152600401610981906147cb565b60028b14611edc5760405162461bcd60e51b8152600401610981906149f3565b611f228d8d8d898960008a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061322392505050565b84341015611f725760405162461bcd60e51b815260206004820181905260248201527f4d696e74696e674d616e616765723a204e4f545f454e4f5547485f46554e44536044820152606401610981565b611f848d8d8d8d8d8d8d8c60006133e3565b843411156112e757611f9461239e565b6001600160a01b03166108fc611faa87346149ca565b6040518115909202916000818181858888f19350505050158015611fd2573d6000803e3d6000fd5b5050505050505050505050505050565b611fea612cad565b611ff38161349f565b61200f5760405162461bcd60e51b815260040161098190614a81565b600081815260cd6020526040812061202691613d76565b60405181907f0aa1aff0f830e739d86baf0e6624d6763da02f7733575e0e463886cd062dea6a90600090a250565b61205c612cad565b612065816134c5565b610cf460008261353b565b61207a8a8c6147f5565b600060028251101561209e5760405162461bcd60e51b81526004016109819061496f565b6120b56110336000846001865161101691906149ca565b6120bd610e37565b156120da5760405162461bcd60e51b8152600401610981906147cb565b60028c146120fa5760405162461bcd60e51b8152600401610981906149f3565b61213f8e8e8e8a898b8a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061322392505050565b856001600160a01b03166323b872dd61215661239e565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152306024820152604481018890526064016020604051808303816000875af11580156121a9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121cd9190614903565b6122115760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610981565b611fd28e8e8e8e8e8e8e8c8e6133e3565b61222a612cad565b6040516370a0823160e01b81523060048201526000906001600160a01b038416906370a0823190602401602060405180830381865afa158015612271573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122959190614ac3565b60405163a9059cbb60e01b81526001600160a01b038481166004830152602482018390529192509084169063a9059cbb906044016020604051808303816000875af11580156122e8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061230c9190614903565b6123505760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610981565b604080516001600160a01b0384811682526020820184905285168183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a1505050565b60006123a8613545565b905090565b6123b68361349f565b6123d25760405162461bcd60e51b815260040161098190614a81565b600083815260cf602052604090205460ff1615156001600160401b03821615151461244e5760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544c445f455850495241424c455f4d496044820152650a69a82a886960d31b6064820152608401610981565b60006124818360408051808201825260008082526020918201528151808301909252825182529182019181019190915290565b9050600a81600001511115612529576124ac6124a0826000600a61358b565b80516020909101512090565b7fb551e0305c8163b812374b8e78b577c77f226f6f10c5ad03e52699578fbc34b8036125295760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544f4b454e5f4c4142454c5f50524f4860448201526512509255115160d21b6064820152608401610981565b612532836135ca565b61257e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a204c4142454c5f494e56414c49440000006044820152606401610981565b50505050565b60608282604051602001612599929190614adc565b604051602081830303815290604052905092915050565b604080516002808252606082810190935260009190816020015b60608152602001906001900390816125ca57905050905082816000815181106125f5576125f56149dd565b602002602001018190525060cd6000858152602001908152602001600020805461261e90614b04565b80601f016020809104026020016040519081016040528092919081815260200182805461264a90614b04565b80156126975780601f1061266c57610100808354040283529160200191612697565b820191906000526020600020905b81548152906001019060200180831161267a57829003601f168201915b5050505050816001815181106126af576126af6149dd565b60209081029190910101529392505050565b60008060006126cf88612e6b565b915091508380156126e1575060028851115b8015612763575060c9546040516331a9108f60e11b8152600481018390526001600160a01b038b8116921690636352211e90602401602060405180830381865afa158015612733573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127579190614b3e565b6001600160a01b031614155b156127c35760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e616765723a20524556455253455f5245434f52445f4e60448201526913d517d0531313d5d15160b21b6064820152608401610981565b60c954604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401602060405180830381865afa15801561280c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128309190614903565b8015612921575060c9546040516331a9108f60e11b81526004810184905230916001600160a01b031690636352211e90602401602060405180830381865afa158015612880573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128a49190614b3e565b6001600160a01b03161480612921575060c95460405163d9548e5360e01b8152600481018490526001600160a01b039091169063d9548e5390602401602060405180830381865afa1580156128fd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129219190614903565b15612a12576001600160401b038516156129a35760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b15801561298a57600080fd5b505af115801561299e573d6000803e3d6000fd5b505050505b60c954604051630fb8df0360e11b81526001600160a01b0390911690631f71be06906129db908c908c908c908c908b90600401614bb0565b600060405180830381600087803b1580156129f557600080fd5b505af1158015612a09573d6000803e3d6000fd5b50505050612c09565b612a1b8261372e565b612a248861378d565b8015612a31575087516002145b8015612a4457506001600160401b038516155b15612b225760ca5488516001600160a01b039091169063c36c2125908b908b90600090612a7357612a736149dd565b602090810291909101015160cc546040516001600160e01b031960e086901b168152612aad9392916001600160a01b031690600401614c0f565b600060405180830381600087803b158015612ac757600080fd5b505af1158015612adb573d6000803e3d6000fd5b50505050600087511115612b1d5760cc54604051633a0deb9d60e21b81526001600160a01b039091169063e837ae74906129db908a908a908790600401614c44565b612c09565b60c95460405163ba5d40b760e01b81526001600160a01b039091169063ba5d40b790612b5a908c908c908c908c908b90600401614bb0565b600060405180830381600087803b158015612b7457600080fd5b505af1158015612b88573d6000803e3d6000fd5b505050506001600160401b03851615612c095760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b158015612bf057600080fd5b505af1158015612c04573d6000803e3d6000fd5b505050505b50979650505050505050565b610cf481612c2161239e565b6137e7565b612c30828261156e565b610d815760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19166001179055612c6961239e565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b612cb561239e565b6001600160a01b0316612cd06033546001600160a01b031690565b6001600160a01b031614610d955760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610981565b610cf4600080516020614ef483398151915282611e2d565b612d48828261156e565b15610d815760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19169055612d7f61239e565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612dcb610e37565b612e0e5760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881393d517d4105554d15160621b6044820152606401610981565b600080516020614ed4833981519152805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa612e4e61239e565b6040516001600160a01b03909116815260200160405180910390a1565b805160009081905b8015612ea057829150612e8c82856110166001856149ca565b925080612e9881614c7a565b915050612e73565b50915091565b60008151600003612ef95760405162461bcd60e51b815260206004820152601b60248201527f4d696e74696e674d616e616765723a204c4142454c5f454d50545900000000006044820152606401610981565b8282604051602001612f0b9190614c91565b60405160208183030381529060405280519060200120604051602001612f3b929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b610cf4600080516020614ef48339815191528261353b565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b612fcc610e37565b15612fe95760405162461bcd60e51b8152600401610981906147cb565b600080516020614ed4833981519152805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258612e4e61239e565b6000613039600084612ea6565b600081815260cd602052604090209091506130548482614cf3565b50600081815260cf602052604090819020805460ff19168415151790555181907f4fce6f6e172b04eaa80325d8e3b0180a34945000f3e214605039e8420fdf8980906130a190869061437c565b60405180910390a260c954604051634f558e7960e01b8152600481018390526001600160a01b0390911690634f558e7990602401602060405180830381865afa1580156130f2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131169190614903565b610cde5760c9546040516307befae360e51b81526001600160a01b039091169063f7df5c6090610acc9084908790600401614db2565b600054610100900460ff166131735760405162461bcd60e51b815260040161098190614dd3565b610d9561317e61239e565b612f72565b600054610100900460ff166131aa5760405162461bcd60e51b815260040161098190614dd3565b610d9560006131b761239e565b61353b565b600054610100900460ff1661179e5760405162461bcd60e51b815260040161098190614dd3565b600054610100900460ff1661320a5760405162461bcd60e51b815260040161098190614dd3565b600080516020614ed4833981519152805460ff19169055565b600061323761323287896147f5565b612e6b565b506040516bffffffffffffffffffffffff1930606090811b821660208401524660348401528b811b82166054840152606883018490526001600160c01b031960c08a901b1660888401526090830188905286901b1660b082015290915060009061331390849061330d9060c401604051602081830303815290604052805190602001206040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c8101829052600090605c01604051602081830303815290604052805190602001209050919050565b9061384b565b905061331e816116f4565b6133765760405162461bcd60e51b8152602060048201526024808201527f4d696e74696e674d616e616765723a205349474e45525f49535f4e4f545f4d49604482015263272a22a960e11b6064820152608401610981565b42866001600160401b0316116133d85760405162461bcd60e51b815260206004820152602160248201527f4d696e74696e674d616e616765723a20455850495245445f5349474e415455526044820152604560f81b6064820152608401610981565b505050505050505050565b600061342a8a6133f38a8c6147f5565b6133fd898b6147f5565b613407888a6147f5565b60008f6001600160a01b031661341b61239e565b6001600160a01b0316146126c1565b9050896001600160a01b031661343e61239e565b6001600160a01b0316827fa545b6fd3355e8d57f8c8147bafe740545bd3ea1f94bef2576a6d532a7c3b605868660405161348b9291909182526001600160a01b0316602082015260400190565b60405180910390a450505050505050505050565b600081815260cd6020526040812080548291906134bb90614b04565b9050119050919050565b6134cd612cad565b6001600160a01b0381166135325760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610981565b610cf481612f72565b610d818282612c26565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546000906001600160a01b03163303613586575060331936013560601c90565b503390565b604080518082019091526000808252602082015260405180604001604052808381526020018486602001516135c09190614e1e565b9052949350505050565b600081516000036135dd57506000919050565b60208201805160f81c603081108015906135fb575060398160ff1611155b15801561361d575060618160ff161015801561361b5750607a8160ff1611155b155b1561362c575060009392505050565b8351600181111561369a5761364e836136466001846149ca565b015160f81c90565b915060308260ff1610158015613668575060398260ff1611155b15801561368a575060618260ff16101580156136885750607a8260ff1611155b155b1561369a57506000949350505050565b60015b6136a86001836149ca565b811015613722578381015160f81c9250602d83148015906136de575060308360ff16101580156136dc575060398360ff1611155b155b80156136ff575060618360ff16101580156136fd5750607a8360ff1611155b155b156137105750600095945050505050565b8061371a81614a39565b91505061369d565b50600195945050505050565b6137378161170e565b156137845760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a20544f4b454e5f424c4f434b45440000006044820152606401610981565b610cf48161386f565b6000806137a46000846001865161101691906149ca565b60ca549091506001600160a01b0316158015906137e05750807f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f145b9392505050565b6137f1828261156e565b610d8157613809816001600160a01b031660146138f3565b6138148360206138f3565b604051602001613825929190614e31565b60408051601f198184030181529082905262461bcd60e51b82526109819160040161437c565b600080600061385a8585613a8e565b9150915061386781613ad3565b509392505050565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd6960208201529081018290526001906138ae90606001611749565b805460ff19169115159190911790556040518181527f2ce5d9351b1d590d5a066db0d2dc7602d55f092506a83a7ee8c4d78ee357d75a9060200160405180910390a150565b60606000613902836002614ea6565b61390d906002614e1e565b6001600160401b0381111561392457613924614133565b6040519080825280601f01601f19166020018201604052801561394e576020820181803683370190505b509050600360fc1b81600081518110613969576139696149dd565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110613998576139986149dd565b60200101906001600160f81b031916908160001a90535060006139bc846002614ea6565b6139c7906001614e1e565b90505b6001811115613a3f576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106139fb576139fb6149dd565b1a60f81b828281518110613a1157613a116149dd565b60200101906001600160f81b031916908160001a90535060049490941c93613a3881614c7a565b90506139ca565b5083156137e05760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610981565b6000808251604103613ac45760208301516040840151606085015160001a613ab887828585613c89565b94509450505050613acc565b506000905060025b9250929050565b6000816004811115613ae757613ae7614ebd565b03613aef5750565b6001816004811115613b0357613b03614ebd565b03613b505760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152606401610981565b6002816004811115613b6457613b64614ebd565b03613bb15760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610981565b6003816004811115613bc557613bc5614ebd565b03613c1d5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b6064820152608401610981565b6004816004811115613c3157613c31614ebd565b03610cf45760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c604482015261756560f01b6064820152608401610981565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613cc05750600090506003613d6d565b8460ff16601b14158015613cd857508460ff16601c14155b15613ce95750600090506004613d6d565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613d3d573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613d6657600060019250925050613d6d565b9150600090505b94509492505050565b508054613d8290614b04565b6000825580601f10613d92575050565b601f016020900490600052602060002090810190610cf491905b80821115613dc05760008155600101613dac565b5090565b600060208284031215613dd657600080fd5b81356001600160e01b0319811681146137e057600080fd5b6001600160401b0381168114610cf457600080fd5b8035613e0e81613dee565b919050565b60008060408385031215613e2657600080fd5b8235613e3181613dee565b946020939093013593505050565b600060208284031215613e5157600080fd5b5035919050565b60008083601f840112613e6a57600080fd5b5081356001600160401b03811115613e8157600080fd5b602083019150836020828501011115613acc57600080fd5b600080600060408486031215613eae57600080fd5b8335925060208401356001600160401b03811115613ecb57600080fd5b613ed786828701613e58565b9497909650939450505050565b6001600160a01b0381168114610cf457600080fd5b8035613e0e81613ee4565b60008060408385031215613f1757600080fd5b823591506020830135613f2981613ee4565b809150509250929050565b600060208284031215613f4657600080fd5b81356137e081613ee4565b60008083601f840112613f6357600080fd5b5081356001600160401b03811115613f7a57600080fd5b6020830191508360208260051b8501011115613acc57600080fd5b8015158114610cf457600080fd5b60008060008060008060008060a0898b031215613fbf57600080fd5b8835613fca81613ee4565b975060208901356001600160401b0380821115613fe657600080fd5b613ff28c838d01613f51565b909950975060408b013591508082111561400b57600080fd5b6140178c838d01613f51565b909750955060608b013591508082111561403057600080fd5b5061403d8b828c01613f51565b909450925050608089013561405181613f95565b809150509295985092959890939650565b600080600080600080600080600060c08a8c03121561408057600080fd5b893561408b81613ee4565b985060208a01356001600160401b03808211156140a757600080fd5b6140b38d838e01613f51565b909a50985060408c01359150808211156140cc57600080fd5b6140d88d838e01613f51565b909850965060608c01359150808211156140f157600080fd5b506140fe8c828d01613f51565b90955093505060808a013561411281613dee565b915060a08a013561412281613f95565b809150509295985092959850929598565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561417157614171614133565b604052919050565b60006001600160401b0382111561419257614192614133565b5060051b60200190565b600060208083850312156141af57600080fd5b82356001600160401b038111156141c557600080fd5b8301601f810185136141d657600080fd5b80356141e96141e482614179565b614149565b81815260059190911b8201830190838101908783111561420857600080fd5b928401925b8284101561422f57833561422081613ee4565b8252928401929084019061420d565b979650505050505050565b6000806000806060858703121561425057600080fd5b843561425b81613ee4565b93506020850135925060408501356001600160401b0381111561427d57600080fd5b61428987828801613e58565b95989497509550505050565b600080602083850312156142a857600080fd5b82356001600160401b038111156142be57600080fd5b6142ca85828601613e58565b90969095509350505050565b6000806000604084860312156142eb57600080fd5b83356001600160401b0381111561430157600080fd5b61430d86828701613e58565b909450925050602084013561432181613f95565b809150509250925092565b60005b8381101561434757818101518382015260200161432f565b50506000910152565b6000815180845261436881602086016020860161432c565b601f01601f19169290920160200192915050565b6020815260006137e06020830184614350565b60008060008060008060c087890312156143a857600080fd5b86356143b381613ee4565b955060208701356143c381613ee4565b945060408701356143d381613ee4565b935060608701356143e381613ee4565b925060808701356143f381613ee4565b915060a087013561440381613ee4565b809150509295509295509295565b60008060008060008060008060a0898b03121561442d57600080fd5b883561443881613ee4565b97506020890135965060408901356001600160401b038082111561445b57600080fd5b6144678c838d01613e58565b909850965060608b013591508082111561448057600080fd5b61448c8c838d01613f51565b909650945060808b01359150808211156144a557600080fd5b506144b28b828c01613f51565b999c989b5096995094979396929594505050565b600080602083850312156144d957600080fd5b82356001600160401b038111156144ef57600080fd5b6142ca85828601613f51565b600080600080600080600080600080600060e08c8e03121561451c57600080fd5b6145258c613ef9565b9a506001600160401b038060208e0135111561454057600080fd5b6145508e60208f01358f01613f51565b909b50995060408d013581101561456657600080fd5b6145768e60408f01358f01613f51565b909950975060608d013581101561458c57600080fd5b61459c8e60608f01358f01613f51565b90975095506145ad60808e01613e03565b945060a08d013593508060c08e013511156145c757600080fd5b506145d88d60c08e01358e01613e58565b81935080925050509295989b509295989b9093969950565b6000806000806000806000806000806000806101008d8f03121561461357600080fd5b61461c8d613ef9565b9b506001600160401b0360208e0135111561463657600080fd5b6146468e60208f01358f01613f51565b909b5099506001600160401b0360408e0135111561466357600080fd5b6146738e60408f01358f01613f51565b90995097506001600160401b0360608e0135111561469057600080fd5b6146a08e60608f01358f01613f51565b90975095506146b160808e01613e03565b94506146bf60a08e01613ef9565b935060c08d013592506001600160401b0360e08e013511156146e057600080fd5b6146f08e60e08f01358f01613e58565b81935080925050509295989b509295989b509295989b565b6000806040838503121561471b57600080fd5b823561472681613ee4565b91506020830135613f2981613ee4565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b60006020828403121561477d57600080fd5b81516137e081613dee565b60208082526023908201527f4d696e74696e674d616e616765723a20544f4b454e5f4e4f545f455850495241604082015262424c4560e81b606082015260800190565b60208082526010908201526f14185d5cd8589b194e8814105554d15160821b604082015260600190565b60006148036141e484614179565b80848252602080830192508560051b85013681111561482157600080fd5b855b818110156148b35780356001600160401b03808211156148435760008081fd5b90880190601f36818401126148585760008081fd5b82358281111561486a5761486a614133565b61487b818301601f19168801614149565b9250808352368782860101111561489457600091508182fd5b8087850188850137600090830187015250865250938201938201614823565b50919695505050505050565b60208082526024908201527f4d696e74696e674d616e616765723a2043414c4c45525f49535f4e4f545f4d49604082015263272a22a960e11b606082015260800190565b60006020828403121561491557600080fd5b81516137e081613f95565b6020808252602f908201527f4d696e74696e674d616e616765723a2053454e4445525f49535f4e4f545f415060408201526e282927ab22a22fa7a92fa7aba722a960891b606082015260800190565b60208082526025908201527f4d696e74696e674d616e616765723a204c4142454c535f4c454e4754485f42456040820152642627abaf9960d91b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b81810381811115610954576109546149b4565b634e487b7160e01b600052603260045260246000fd5b60208082526026908201527f4d696e74696e674d616e616765723a20535542444f4d41494e535f4e4f545f41604082015265131313d5d15160d21b606082015260800190565b600060018201614a4b57614a4b6149b4565b5060010190565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b60208082526022908201527f4d696e74696e674d616e616765723a20544c445f4e4f545f5245474953544552604082015261115160f21b606082015260800190565b600060208284031215614ad557600080fd5b5051919050565b6b756e732d646576746573742d60a01b81528183600c83013760009101600c01908152919050565b600181811c90821680614b1857607f821691505b602082108103614b3857634e487b7160e01b600052602260045260246000fd5b50919050565b600060208284031215614b5057600080fd5b81516137e081613ee4565b600081518084526020808501808196508360051b8101915082860160005b85811015614ba3578284038952614b91848351614350565b98850198935090840190600101614b79565b5091979650505050505050565b6001600160a01b038616815260a060208201819052600090614bd490830187614b5b565b8281036040840152614be68187614b5b565b90508281036060840152614bfa8186614b5b565b91505082151560808301529695505050505050565b600060018060a01b03808616835260606020840152614c316060840186614350565b9150808416604084015250949350505050565b606081526000614c576060830186614b5b565b8281036020840152614c698186614b5b565b915050826040830152949350505050565b600081614c8957614c896149b4565b506000190190565b60008251614ca381846020870161432c565b9190910192915050565b601f821115610cde57600081815260208120601f850160051c81016020861015614cd45750805b601f850160051c820191505b818110156116a357828155600101614ce0565b81516001600160401b03811115614d0c57614d0c614133565b614d2081614d1a8454614b04565b84614cad565b602080601f831160018114614d555760008415614d3d5750858301515b600019600386901b1c1916600185901b1785556116a3565b600085815260208120601f198616915b82811015614d8457888601518255948401946001909101908401614d65565b5085821015614da25787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b828152604060208201526000614dcb6040830184614350565b949350505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b80820180821115610954576109546149b4565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351614e6981601785016020880161432c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351614e9a81602884016020880161432c565b01602801949350505050565b8082028115828204841417610954576109546149b4565b634e487b7160e01b600052602160045260246000fdfe5496787fc1ebdfeba375028c1865f13fbb1d63c0caa356ccc1b29a80f3ebd6229f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000811000a","storage":{}},"0x24f45688d421f46cca60734bdc648ad192db0f2e":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0x1","0x97":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x12d":"0x0","0x15f":"0x5cc819c9915eadfcebd76952b8c1bc36cadd7376","0x13cf90498be59d359caa5b6092b365feab4610605d7107d1f05f8e94ac955652":"0x1","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x54563a9e1cd2dcbd0bca90d3cfa4a647e02c404a","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106102295760003560e01c8063886a69ba11610123578063cf1d21c0116100ab578063e2c49de11161006f578063e2c49de11461091d578063e3dec8fb14610932578063e43009a6146109c8578063e66f9603146109fb578063ea60c7c414610a2557610240565b8063cf1d21c014610844578063d233a3c714610859578063d547741f1461089c578063d81c8e52146108d5578063dc993a23146108ea57610240565b8063a217fddf116100f2578063a217fddf1461078a578063b4b4f63e1461079f578063bc08452b146107b4578063c4d66de8146107e7578063ca15c8731461081a57610240565b8063886a69ba146106c95780639010d07c146106de5780639173b1391461070e57806391d148541461075157610240565b80633138b6f1116101b1578063568b80b511610175578063568b80b5146105fb578063607f2d4214610610578063630fcbfb1461064e5780636cb136b0146106635780636e86b7701461069657610240565b80633138b6f1146104f55780633408e4701461050a57806336568abe1461051f5780633805550f146105585780634faa8a26146105d557610240565b80630f7e5970116101f85780630f7e59701461042357806320379ee514610438578063248a9ca31461045f5780632d0335ab146104895780632f2ff15d146104bc57610240565b806304967702146102455780630c3894bb146102765780630c53c51c146102b15780630c598220146103ea57610240565b366102405761023e610239610a58565b610a68565b005b600080fd5b34801561025157600080fd5b5061025a610b69565b604080516001600160a01b039092168252519081900360200190f35b34801561028257600080fd5b5061023e6004803603604081101561029957600080fd5b506001600160a01b0381358116916020013516610b78565b610375600480360360a08110156102c757600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156102f257600080fd5b82018360208201111561030457600080fd5b8035906020019184600183028401116401000000008311171561032657600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550508235935050506020810135906040013560ff16610cc9565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103af578181015183820152602001610397565b50505050905090810190601f1680156103dc5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156103f657600080fd5b5061023e6004803603604081101561040d57600080fd5b50803590602001356001600160a01b0316610fcc565b34801561042f57600080fd5b506103756110b9565b34801561044457600080fd5b5061044d6110d6565b60408051918252519081900360200190f35b34801561046b57600080fd5b5061044d6004803603602081101561048257600080fd5b50356110dc565b34801561049557600080fd5b5061044d600480360360208110156104ac57600080fd5b50356001600160a01b03166110f4565b3480156104c857600080fd5b5061023e600480360360408110156104df57600080fd5b50803590602001356001600160a01b031661110f565b34801561050157600080fd5b5061025a611176565b34801561051657600080fd5b5061044d611185565b34801561052b57600080fd5b5061023e6004803603604081101561054257600080fd5b50803590602001356001600160a01b0316611189565b34801561056457600080fd5b5061023e6004803603602081101561057b57600080fd5b81019060208101813564010000000081111561059657600080fd5b8201836020820111156105a857600080fd5b803590602001918460018302840111640100000000831117156105ca57600080fd5b5090925090506111ea565b61023e600480360360208110156105eb57600080fd5b50356001600160a01b03166116ec565b34801561060757600080fd5b5061044d6116f8565b34801561061c57600080fd5b5061063a6004803603602081101561063357600080fd5b503561171b565b604080519115158252519081900360200190f35b34801561065a57600080fd5b5061023e611730565b34801561066f57600080fd5b5061023e6004803603602081101561068657600080fd5b50356001600160a01b03166117d6565b3480156106a257600080fd5b5061025a600480360360208110156106b957600080fd5b50356001600160a01b031661186e565b3480156106d557600080fd5b5061044d611889565b3480156106ea57600080fd5b5061025a6004803603604081101561070157600080fd5b50803590602001356118aa565b34801561071a57600080fd5b5061023e6004803603606081101561073157600080fd5b506001600160a01b038135811691602081013590911690604001356118d1565b34801561075d57600080fd5b5061063a6004803603604081101561077457600080fd5b50803590602001356001600160a01b0316611a06565b34801561079657600080fd5b5061044d611a24565b3480156107ab57600080fd5b5061023e611a29565b3480156107c057600080fd5b5061023e600480360360208110156107d757600080fd5b50356001600160a01b0316611acf565b3480156107f357600080fd5b5061023e6004803603602081101561080a57600080fd5b50356001600160a01b0316611b67565b34801561082657600080fd5b5061044d6004803603602081101561083d57600080fd5b5035611c57565b34801561085057600080fd5b5061025a611c6e565b34801561086557600080fd5b5061023e6004803603606081101561087c57600080fd5b506001600160a01b03813581169160208101359091169060400135611c86565b3480156108a857600080fd5b5061023e600480360360408110156108bf57600080fd5b50803590602001356001600160a01b0316611de8565b3480156108e157600080fd5b5061044d611e41565b3480156108f657600080fd5b5061023e6004803603602081101561090d57600080fd5b50356001600160a01b0316611e60565b34801561092957600080fd5b5061025a611f3d565b34801561093e57600080fd5b5061023e6004803603606081101561095557600080fd5b6001600160a01b03823581169260208101359091169181019060608101604082013564010000000081111561098957600080fd5b82018360208201111561099b57600080fd5b803590602001918460018302840111640100000000831117156109bd57600080fd5b509092509050611f4c565b3480156109d457600080fd5b5061044d600480360360208110156109eb57600080fd5b50356001600160a01b0316611fe9565b348015610a0757600080fd5b5061025a60048036036020811015610a1e57600080fd5b5035611ffb565b348015610a3157600080fd5b5061025a60048036036020811015610a4857600080fd5b50356001600160a01b0316612016565b6000610a62612031565b90505b90565b604080513460208083019190915282518083039091018152908201909152610aa58273eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee8361208e565b7fa1829a9003092132f585b6ccdd167c19fe9774dbdea4260287e8a8e8ca8185d7546000908152600260205260408082205490516001600160a01b039091169034908381818185875af1925050503d8060008114610b1f576040519150601f19603f3d011682016040523d82523d6000602084013e610b24565b606091505b5050905080610b645760405162461bcd60e51b815260040180806020018281038252602781526020018061419d6027913960400191505060405180910390fd5b505050565b6009546001600160a01b031681565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020610ba981610ba4610a58565b611a06565b600a90610c495760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b820191906000526020600020905b815481529060010190602001808311610c1d57829003601f168201915b50509250505060405180910390fd5b506001600160a01b03808416600081815260036020908152604080832080546001600160a01b0319908116909155948716808452600483528184208054909616909555838352600590915280822082905551909291907f9e651a8866fbea043e911d816ec254b0e3c992c06fff32d605e72362d6023bd9908490a4505050565b6060610cd3613e2a565b50604080516060810182526001600160a01b0388166000818152600c602090815290849020548352820152908101869052610d118782878787612508565b610d4c5760405162461bcd60e51b81526004018080602001828103825260218152602001806141c46021913960400191505060405180910390fd5b6001600160a01b0387166000908152600c6020526040902054610d7690600163ffffffff6125e516565b6001600160a01b0388166000818152600c602090815260408083209490945583519283523383820181905260609484018581528b51958501959095528a517f5845892132946850460bff5a0083f71031bc5bf9aadcd40f1de79423eac9b10b958d9592948d94919260808501928601918190849084905b83811015610e05578181015183820152602001610ded565b50505050905090810190601f168015610e325780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a160006060306001600160a01b0316888a6040516020018083805190602001908083835b60208310610e835780518252601f199092019160209182019101610e64565b6001836020036101000a038019825116818451168082178552505050505050905001826001600160a01b03166001600160a01b031660601b8152601401925050506040516020818303038152906040526040518082805190602001908083835b60208310610f025780518252601f199092019160209182019101610ee3565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610f64576040519150601f19603f3d011682016040523d82523d6000602084013e610f69565b606091505b509150915081610fc0576040805162461bcd60e51b815260206004820152601c60248201527f46756e6374696f6e2063616c6c206e6f74207375636365737366756c00000000604482015290519081900360640190fd5b98975050505050505050565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020610ff881610ba4610a58565b600a9061105e5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5060008381526002602052604080822080546001600160a01b0319166001600160a01b0386169081179091559051909185917f8643692ae1c12ec91fa18e50b82ed93fa314f580999a236824db6de9ae0d839b9190a3505050565b604051806040016040528060018152602001603160f81b81525081565b600b5490565b6000818152600160205260409020600201545b919050565b6001600160a01b03166000908152600c602052604090205490565b60008281526001602052604090206002015461112d90610ba4610a58565b6111685760405162461bcd60e51b815260040180806020018281038252602f815260200180613f78602f913960400191505060405180910390fd5b611172828261263f565b5050565b6008546001600160a01b031690565b4690565b611191610a58565b6001600160a01b0316816001600160a01b0316146111e05760405162461bcd60e51b815260040180806020018281038252602f815260200180614286602f913960400191505060405180910390fd5b61117282826126ae565b606061123361122e84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061271d92505050565b612798565b905060006112548260028151811061124757fe5b602002602001015161291a565b6112796112748460088151811061126757fe5b6020026020010151612a62565b612b2c565b6112898460098151811061124757fe5b6040516020018084815260200183805190602001908083835b602083106112c15780518252601f1990920191602091820191016112a2565b51815160209384036101000a6000190180199092169116179052920193845250604080518085038152938201815283519382019390932060008181526006909252929020549194505060ff1615915061134d90505760405162461bcd60e51b81526004018080602001828103825260288152602001806142096028913960400191505060405180910390fd5b6000818152600660208190526040909120805460ff19166001179055825160609161138a9161122e9161138591879190811061126757fe5b61271d565b9050611394613e54565b6113b1826003815181106113a457fe5b6020026020010151612798565b6113c18560098151811061124757fe5b815181106113cb57fe5b6020026020010151905060006113fc6113e383612798565b6000815181106113ef57fe5b6020026020010151612c9f565b6001600160a01b0380821660009081526004602052604090205491925016806114565760405162461bcd60e51b81526004018080602001828103825260228152602001806140af6022913960400191505060405180910390fd5b6001600160a01b03808216600090815260056020908152604080832054835260029091529020548751911690611493908890600890811061124757fe5b63ffffffff1916156114d65760405162461bcd60e51b815260040180806020018281038252602581526020018061408a6025913960400191505060405180910390fd5b61151e6114e98860068151811061126757fe5b6114f98960088151811061126757fe5b6115098a60078151811061126757fe5b6115198b60058151811061124757fe5b612d2f565b61156f576040805162461bcd60e51b815260206004820152601f60248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f50524f4f4600604482015290519081900360640190fd5b6115dd6115828860028151811061124757fe5b6115928960038151811061124757fe5b6115a28a60048151811061124757fe5b60001b6115b58b60058151811061124757fe5b60001b6115c88c60008151811061124757fe5b6115d88d60018151811061126757fe5b612f76565b50806001600160a01b0316638274664f6115f5610a58565b846115ff886130bf565b6040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561167b578181015183820152602001611663565b50505050905090810190601f1680156116a85780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b1580156116c957600080fd5b505af11580156116dd573d6000803e3d6000fd5b50505050505050505050505050565b6116f581610a68565b50565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b01902081565b60066020526000908152604090205460ff1681565b600061173e81610ba4610a58565b600a906117a45760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506116f56040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b81525061312d565b60006117e481610ba4610a58565b600a9061184a5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5050600780546001600160a01b0319166001600160a01b0392909216919091179055565b6004602052600090815260409020546001600160a01b031681565b604080516826a0a82faa27a5a2a760b91b8152905190819003600901902081565b60008281526001602052604081206118c8908363ffffffff6131e916565b90505b92915050565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b0190206118fd81610ba4610a58565b600a906119635760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b03848116600090815260036020526040902054161580156119a457506001600160a01b0383811660009081526004602052604090205416155b6119f5576040805162461bcd60e51b815260206004820181905260248201527f526f6f74436861696e4d616e616765723a20414c52454144595f4d4150504544604482015290519081900360640190fd5b611a008484846131f5565b50505050565b60008281526001602052604081206118c8908363ffffffff61348416565b600081565b6000611a3781610ba4610a58565b600a90611a9d5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506116f56040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613499565b6000611add81610ba4610a58565b600a90611b435760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5050600880546001600160a01b0319166001600160a01b0392909216919091179055565b60005460ff1615611bb0576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b611be16040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613537565b611c126040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613499565b611c1d600082611168565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020611c479082611168565b506000805460ff19166001179055565b60008181526001602052604081206118cb90613589565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020611cb281610ba4610a58565b600a90611d185760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b0380851660009081526003602081815260408084205488861685526004835281852054861680865293909252909220549183169290911615611d8e576001600160a01b038116600090815260036020908152604080832080546001600160a01b031916905560059091528120555b6001600160a01b038281166000908152600460205260409020541615611dd5576001600160a01b038216600090815260046020526040902080546001600160a01b03191690555b611de08686866131f5565b505050505050565b600082815260016020526040902060020154611e0690610ba4610a58565b6111e05760405162461bcd60e51b81526004018080602001828103825260308152602001806140f96030913960400191505060405180910390fd5b604080516611115413d4d25560ca1b8152905190819003600701902081565b6000611e6e81610ba4610a58565b600a90611ed45760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b038216611f1a5760405162461bcd60e51b815260040180806020018281038252602d815260200180613fa7602d913960400191505060405180910390fd5b50600980546001600160a01b0319166001600160a01b0392909216919091179055565b6007546001600160a01b031690565b6001600160a01b03831673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee1415611fa85760405162461bcd60e51b81526004018080602001828103825260248152602001806141e56024913960400191505060405180910390fd5b611a00848484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061208e92505050565b60056020526000908152604090205481565b6002602052600090815260409020546001600160a01b031681565b6003602052600090815260409020546001600160a01b031681565b6000333014156120895760606000368080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505050503601516001600160a01b03169150610a659050565b503390565b6001600160a01b03808316600090815260056020908152604080832054600390925290912054909116158015906120c457508015155b6120ff5760405162461bcd60e51b81526004018080602001828103825260228152602001806140af6022913960400191505060405180910390fd5b6000818152600260205260409020546001600160a01b0316806121535760405162461bcd60e51b81526004018080602001828103825260248152602001806140176024913960400191505060405180910390fd5b6001600160a01b0385166121ae576040805162461bcd60e51b815260206004820152601e60248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f555345520000604482015290519081900360640190fd5b806001600160a01b031663e375b64e6121c5610a58565b8787876040518563ffffffff1660e01b815260040180856001600160a01b03166001600160a01b03168152602001846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561225c578181015183820152602001612244565b50505050905090810190601f1680156122895780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b1580156122ab57600080fd5b505af11580156122bf573d6000803e3d6000fd5b50505050606085858560405160200180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015612338578181015183820152602001612320565b50505050905090810190601f1680156123655780820380516001836020036101000a031916815260200191505b5060408051808303601f19018152828252600780546009546611115413d4d25560ca1b865284519586900390920185206020808701828152878701968752855160608901528551959d506001600160a01b039384169c506316f198319b5092909316985096508a955093608001919085019080838360005b838110156123f55781810151838201526020016123dd565b50505050905090810190601f1680156124225780820380516001836020036101000a031916815260200191505b5093505050506040516020818303038152906040526040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561249b578181015183820152602001612483565b50505050905090810190601f1680156124c85780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b1580156124e857600080fd5b505af11580156124fc573d6000803e3d6000fd5b50505050505050505050565b60006001600160a01b03861661254f5760405162461bcd60e51b81526004018080602001828103825260258152602001806141296025913960400191505060405180910390fd5b600161256261255d87613594565b613620565b83868660405160008152602001604052604051808581526020018460ff1660ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa1580156125bc573d6000803e3d6000fd5b505050602060405103516001600160a01b0316866001600160a01b031614905095945050505050565b6000828201838110156118c8576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600082815260016020526040902061265d908263ffffffff61366c16565b156111725761266a610a58565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b60008281526001602052604090206126cc908263ffffffff61368116565b15611172576126d9610a58565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612725613e54565b600082511161277b576040805162461bcd60e51b815260206004820152601f60248201527f524c505265616465723a20494e56414c49445f42595445535f4c454e47544800604482015290519081900360640190fd5b506040805180820190915281518152602082810190820152919050565b60606127a382613696565b6127f4576040805162461bcd60e51b815260206004820152601860248201527f524c505265616465723a204954454d5f4e4f545f4c4953540000000000000000604482015290519081900360640190fd5b60006127ff836136c2565b905060608167ffffffffffffffff8111801561281a57600080fd5b5060405190808252806020026020018201604052801561285457816020015b612841613e54565b8152602001906001900390816128395790505b5090506000612866856020015161374e565b855190915081146128a85760405162461bcd60e51b81526004018080602001828103825260278152602001806142316027913960400191505060405180910390fd5b60006128b786602001516137e2565b60208701510190506000805b8581101561290e576128d48361374e565b91506040518060400160405280838152602001848152508582815181106128f757fe5b6020908102919091010152918101916001016128c3565b50929695505050505050565b600061292582613696565b15612977576040805162461bcd60e51b815260206004820181905260248201527f524c505265616465723a204445434f44494e475f4c4953545f41535f55494e54604482015290519081900360640190fd5b8151602110156129ce576040805162461bcd60e51b815260206004820152601e60248201527f524c505265616465723a20494e56414c49445f55494e545f4c454e4754480000604482015290519081900360640190fd5b60006129dd836020015161374e565b83519091508114612a1f5760405162461bcd60e51b81526004018080602001828103825260278152602001806142b56027913960400191505060405180910390fd5b6000612a2e84602001516137e2565b84516020808701518301805193945091849003929190831015612a5857826020036101000a820491505b5095945050505050565b60606000612a73836020015161374e565b83519091508114612ab55760405162461bcd60e51b81526004018080602001828103825260288152602001806140d16028913960400191505060405180910390fd5b6000612ac484602001516137e2565b845190915081900360608167ffffffffffffffff81118015612ae557600080fd5b506040519080825280601f01601f191660200182016040528015612b10576020820181803683370190505b5090506000816020019050612a58848860200151018285613845565b604080516020810190915260008152815160609190156118cb57600080612b54600086613890565b60f81c90506001811480612b6b57508060ff166003145b15612bfa57600185516002020367ffffffffffffffff81118015612b8e57600080fd5b506040519080825280601f01601f191660200182016040528015612bb9576020820181803683370190505b5092506000612bc9600187613890565b90508084600081518110612bd957fe5b60200101906001600160f81b031916908160001a9053506001925050612c4b565b600285516002020367ffffffffffffffff81118015612c1857600080fd5b506040519080825280601f01601f191660200182016040528015612c43576020820181803683370190505b509250600091505b60ff82165b8351811015612c9657612c6b8360ff16820360020187613890565b848281518110612c7757fe5b60200101906001600160f81b031916908160001a905350600101612c50565b50505092915050565b6000612caa82613696565b15612ce65760405162461bcd60e51b815260040180806020018281038252602381526020018061417a6023913960400191505060405180910390fd5b8151601514612d265760405162461bcd60e51b81526004018080602001828103825260218152602001806142dc6021913960400191505060405180910390fd5b6118cb8261291a565b6000612d39613e54565b612d428461271d565b90506060612d4f82612798565b905060608085600082612d618b612b2c565b9050805160001415612d7d576000975050505050505050612f6e565b60005b8651811015612f65578151831115612da357600098505050505050505050612f6e565b612dbf878281518110612db257fe5b60200260200101516130bf565b955085805190602001208414612de057600098505050505050505050612f6e565b612def8782815181106113a457fe5b9450845160111415612eac578151831415612e4b578c80519060200120612e1c8660108151811061126757fe5b805190602001201415612e3a57600198505050505050505050612f6e565b600098505050505050505050612f6e565b6000828481518110612e5957fe5b016020015160f81c90506010811115612e7e5760009950505050505050505050612f6e565b612e9d868260ff1681518110612e9057fe5b60200260200101516138ed565b94505060019290920191612f5d565b845160021415612e3a576000612ed2612ecb8760008151811061126757fe5b848661398c565b905082518185011415612f28578d80519060200120612ef78760018151811061126757fe5b805190602001201415612f165760019950505050505050505050612f6e565b60009950505050505050505050612f6e565b80612f3f5760009950505050505050505050612f6e565b8084019350612f5486600181518110612e9057fe5b9450612f5d9050565b600101612d80565b50505050505050505b949350505050565b600854604080516320a9cea560e11b81526004810185905290516000928392839283926001600160a01b0316916341539d4a9160248083019260a0929190829003018186803b158015612fc857600080fd5b505afa158015612fdc573d6000803e3d6000fd5b505050506040513d60a0811015612ff257600080fd5b5080516020820151606090920151909450909250905061306161301b8b8463ffffffff613a6b16565b6040805160208082018f90528183018e9052606082018d905260808083018d90528351808403909101815260a0909201909252805191012090858863ffffffff613aad16565b6130b2576040805162461bcd60e51b815260206004820181905260248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f484541444552604482015290519081900360640190fd5b9998505050505050505050565b606080826000015167ffffffffffffffff811180156130dd57600080fd5b506040519080825280601f01601f191660200182016040528015613108576020820181803683370190505b50905060008160200190506131268460200151828660000151613845565b5092915050565b6040518060800160405280604f815260200161403b604f913980516020918201208251838301206040805180820190915260018152603160f81b930192909252907fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc630613198611185565b604080516020808201979097528082019590955260608501939093526001600160a01b03909116608084015260a0808401919091528151808403909101815260c090920190528051910120600b5550565b60006118c88383613c03565b6000818152600260205260409020546001600160a01b03166132485760405162461bcd60e51b815260040180806020018281038252602a815260200180613f07602a913960400191505060405180910390fd5b6001600160a01b03808416600081815260036020908152604080832080549588166001600160a01b031996871681179091558084526004835281842080549096168517909555838352600590915280822085905551849392917f9e651a8866fbea043e911d816ec254b0e3c992c06fff32d605e72362d6023bd991a4604080516001600160a01b0380861660208084019190915281861683850152606083810186905284518085038201815260808086018088526007546009546826a0a82faa27a5a2a760b91b9092528851978890036089018820888701818152898b019a8b528551968a019690965284519499918816986316f1983198939093169690958a9590949293909201919085019080838360005b8381101561337357818101518382015260200161335b565b50505050905090810190601f1680156133a05780820380516001836020036101000a031916815260200191505b5093505050506040516020818303038152906040526040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015613419578181015183820152602001613401565b50505050905090810190601f1680156134465780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b15801561346657600080fd5b505af115801561347a573d6000803e3d6000fd5b5050505050505050565b60006118c8836001600160a01b038416613c67565b806040516020018082805190602001908083835b602083106134cc5780518252601f1990920191602091820191016134ad565b51815160209384036101000a60001901801990921691161790527f3a20494e53554646494349454e545f5045524d495353494f4e530000000000009190930190815260408051808303600519018152601a909201905280516111729550600a94509201919050613e6e565b60005460ff1615613580576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b611c478161312d565b60006118cb82613c7f565b6000604051806080016040528060438152602001613fd460439139805190602001208260000151836020015184604001518051906020012060405160200180858152602001848152602001836001600160a01b03166001600160a01b03168152602001828152602001945050505050604051602081830303815290604052805190602001209050919050565b600061362a6110d6565b82604051602001808061190160f01b81525060020183815260200182815260200192505050604051602081830303815290604052805190602001209050919050565b60006118c8836001600160a01b038416613c83565b60006118c8836001600160a01b038416613ccd565b6020810151805160009190821a9060c08210156136b8576000925050506110ef565b5060019392505050565b6000806000905060006136d884602001516137e2565b602085015185519181019250015b80821015613745576136f78261374e565b820191508082111561373a5760405162461bcd60e51b815260040180806020018281038252602c81526020018061414e602c913960400191505060405180910390fd5b6001909201916136e6565b50909392505050565b80516000908190811a60808110156137695760019150613126565b60b881101561377e57607e1981019150613126565b60c08110156137ab5760b78103600185019450806020036101000a85510460018201810193505050613126565b60f88110156137c05760be1981019150613126565b60019390930151602084900360f7016101000a900490920160f5190192915050565b8051600090811a60808110156137fc5760009150506110ef565b60b8811080613817575060c08110801590613817575060f881105b156138265760019150506110ef565b60c081101561383a5760b5190190506110ef565b60f5190190506110ef565b8061384f57610b64565b5b6020811061386f578251825260209283019290910190601f1901613850565b915181516020939093036101000a6000190180199091169216919091179052565b600060028306156138c15760108260028504815181106138ac57fe5b016020015160f81c816138bb57fe5b066138e3565b60108260028504815181106138d257fe5b016020015160f81c816138e157fe5b045b60f81b9392505050565b6000806138fd836020015161374e565b8351909150811461393f5760405162461bcd60e51b815260040180806020018281038252602e815260200180614258602e913960400191505060405180910390fd5b825160211461397f5760405162461bcd60e51b8152600401808060200182810382526025815260200180613f536025913960400191505060405180910390fd5b5050602001516001015190565b600080606061399a86612b2c565b90506060815167ffffffffffffffff811180156139b657600080fd5b506040519080825280601f01601f1916602001820160405280156139e1576020820181803683370190505b509050845b82518601811015613a3b5760008782815181106139ff57fe5b602001015160f81c60f81b9050808388840381518110613a1b57fe5b60200101906001600160f81b031916908160001a905350506001016139e6565b50808051906020012082805190602001201415613a5b5781519250613a60565b600092505b509095945050505050565b60006118c883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250613d93565b60006020825181613aba57fe5b0615613b04576040805162461bcd60e51b8152602060048201526014602482015273092dcecc2d8d2c840e0e4dedecc40d8cadccee8d60631b604482015290519081900360640190fd5b60006020835181613b1157fe5b0490508060020a8510613b63576040805162461bcd60e51b81526020600482015260156024820152744c65616620696e64657820697320746f6f2062696760581b604482015290519081900360640190fd5b60008660205b85518111613bf55785810151925060028806613bb55781836040516020018083815260200182815260200192505050604051602081830303815290604052805190602001209150613be7565b828260405160200180838152602001828152602001925050506040516020818303038152906040528051906020012091505b600288049750602001613b69565b509094149695505050505050565b81546000908210613c455760405162461bcd60e51b8152600401808060200182810382526022815260200180613f316022913960400191505060405180910390fd5b826000018281548110613c5457fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000613c8f8383613c67565b613cc5575081546001818101845560008481526020808220909301849055845484825282860190935260409020919091556118cb565b5060006118cb565b60008181526001830160205260408120548015613d895783546000198083019190810190600090879083908110613d0057fe5b9060005260206000200154905080876000018481548110613d1d57fe5b600091825260208083209091019290925582815260018981019092526040902090840190558654879080613d4d57fe5b600190038181906000526020600020016000905590558660010160008781526020019081526020016000206000905560019450505050506118cb565b60009150506118cb565b60008184841115613e225760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015613de7578181015183820152602001613dcf565b50505050905090810190601f168015613e145780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60405180606001604052806000815260200160006001600160a01b03168152602001606081525090565b604051806040016040528060008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10613eaf57805160ff1916838001178555613edc565b82800160010185558215613edc579182015b82811115613edc578251825591602001919060010190613ec1565b50613ee8929150613eec565b5090565b610a6591905b80821115613ee85760008155600101613ef256fe526f6f74436861696e4d616e616765723a20544f4b454e5f545950455f4e4f545f535550504f52544544456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473524c505265616465723a20494e56414c49445f55494e545f5354524943545f4c454e475448416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e74526f6f74436861696e4d616e616765723a20494e56414c49445f4348494c445f434841494e5f414444524553534d6574615472616e73616374696f6e2875696e74323536206e6f6e63652c616464726573732066726f6d2c62797465732066756e6374696f6e5369676e617475726529526f6f74436861696e4d616e616765723a20494e56414c49445f544f4b454e5f54595045454950373132446f6d61696e28737472696e67206e616d652c737472696e672076657273696f6e2c6164647265737320766572696679696e67436f6e74726163742c627974657333322073616c7429526f6f74436861696e4d616e616765723a20494e56414c49445f4252414e43485f4d41534b526f6f74436861696e4d616e616765723a20544f4b454e5f4e4f545f4d4150504544524c505265616465723a2042595445535f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b654e61746976654d6574615472616e73616374696f6e3a20494e56414c49445f5349474e4552524c505265616465723a204e554d5f4954454d535f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a204445434f44494e475f4c4953545f41535f41444452455353526f6f74436861696e4d616e616765723a2045544845525f5452414e534645525f4641494c45445369676e657220616e64207369676e617475726520646f206e6f74206d61746368526f6f74436861696e4d616e616765723a20494e56414c49445f524f4f545f544f4b454e526f6f74436861696e4d616e616765723a20455849545f414c52454144595f50524f434553534544524c505265616465723a204c4953545f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a2055494e545f5354524943545f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66524c505265616465723a2055494e545f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a20494e56414c49445f414444524553535f4c454e475448a164736f6c6343000606000a","storage":{"0x0":"0x1","0x7":"0xe0afc4e9e03e4aa67257df7a2eca77454309789d","0x8":"0xbe5deac45dd1ca4ee18dc2d585d84d3d3cb82b0d","0x9":"0x0","0xa":"0x55","0xb":"0x2603903cfd8895fdde3da4d607d44203e86098073e351022fd12745d3436e93a","0xeb5be412f275a18f6e4d622aee4ff40b21467c926224771b782d4c095d1444b":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x162b27a30e878e20728deaa5c9814fd57ccf962b998b8733ce65749bc61c552f":"0x58a175bebc8ec21a94ea63aa5a28743945940ee6","0x1a93463c7bbb7215968307c7cd357c2009c10df2a511dd62c1189098e4f3249b":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x415fec6a4fd7706b96d3a0a30121284bc5e2b28b978c20486c9f5e20d44fc781":"0x1","0x4dc1f0160d96279adc262db20edcc15527e32cb28eda582becc5ac0bc453be34":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0x5fc73aa2ab567caef8745f0709fae506c01972ffb297bd9225bc262d6e87746f":"0x1","0x6ce1cd05966f090b8daa7b2ee7f80930bbb39d19b693045725fbae5fa44fda90":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0xa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb49":"0x1","0xc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a8":"0x526f6f74436861696e4d616e616765723a20494e53554646494349454e545f50","0xc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a9":"0x45524d495353494f4e5300000000000000000000000000000000000000000000","0xd61ba0007bb57e62613f82f528c06ba46d36349cf5be567b12f878ef04849a7d":"0x1","0xf960df71fab73e593428c10f56f55e7ea46985963177def0458b97f1afec9576":"0xcf4e755f204163e9213ba8b1305036e386579ccc70731c25c62a101197811f48"}},"0x287dee389caaa49edc112888f2bcfd927b472e25":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c80634f89059e1461002d575b5f80fd5b61004061003b366004610125565b610054565b604051901515815260200160405180910390f35b5f806100985f85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101029050565b60ff1690505f811180156100f857506100f36100b5826001610191565b85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101029050565b60ff16155b9150505b92915050565b5f828281518110610115576101156101b0565b016020015160f81c905092915050565b5f8060208385031215610136575f80fd5b823567ffffffffffffffff8082111561014d575f80fd5b818501915085601f830112610160575f80fd5b81358181111561016e575f80fd5b86602082850101111561017f575f80fd5b60209290920196919550909350505050565b808201808211156100fc57634e487b7160e01b5f52601160045260245ffd5b634e487b7160e01b5f52603260045260245ffdfea164736f6c6343000818000a","storage":{}},"0x3198fc981626687f4b5bdf0fbeabb0a5e0489c03":{"nonce":1,"balance":"0x8ac7230489e80000","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0x1","0x97":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x13cf90498be59d359caa5b6092b365feab4610605d7107d1f05f8e94ac955652":"0x1","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xc2110388dd54228ae0a834119457ede938bf0b57","0x412386de53449251cbf7ce1f4c6a038bf9c0746e62d331b08ef0c3fa7d0ab672":"0x4fbf7b2f171336958be5d15ff762a5cff5363568","0x60793a5062d506d35cc8f1beda67ee5028c16bfcd9c923d5bfc439c04bd929b1":"0x6ac8f19d1e0f81147cdf2a1e53cb1f4e18417204","0x75df8b43665bf2e4996a686913c4c278ca7aed85444740ca40355b1c9a94b504":"0x1","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xf851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004":"0xc965345edac823d56812cd20a10316233916a605"}},"0x39a27956b78d00a4e00ea8833ff0947410a2933f":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xc9":"0x107733fed96c4cd390c944a31f5425a7fb98ae5e","0xca":"0x4a3c194eb88966178bfdd81744dddafed611b830","0xcb":"0x4872cc1be60a9db9c880a0a437da7a6af134f08f","0xcc":"0xf8c26340c1eaea6c7ff1760b25005e1306953572","0xce":"0xce4bb7dc1eb9dce75743de6a4b48534fd427ef51","0xc6892776bb3da1e1199a03e0d3131aea089754b59c557b750c478ebc85ccaa":"0x6e66740000000000000000000000000000000000000000000000000000000006","0x6cb37a6d512a1e227e627eddc133023e6d00bfedff31a600abb75aa93e9a4a0":"0x6b7265737573000000000000000000000000000000000000000000000000000c","0x8e966fe8b9b43d48017ba1eb562ced91049de778396aaa438773698b3fa8fb6":"0x0","0x94a32b1c7b189ce7293f7ae444cdcab6800d858454022d15355d5ecc5b32b26":"0x0","0xa4b2d73a9f36ca5eed107f7c3d2ba877fb7537d447256726bcde9bac9e9aaee":"0x0","0xe0e3ab102c26f13da20123aa517b31e99cf65b7b720ba0dd7138012fd23eff2":"0x0","0x1203b5e51c7d5be6da42b83f22878d3583e53123857d27fc3cff3df46fb9126c":"0x0","0x13477730039a04f4290adf0e48e98b233579c040281545e4446ce662ba56a9be":"0x7800000000000000000000000000000000000000000000000000000000000002","0x1e06d49ce7b00846691778f302e94a3ac9c2633d745ebe73d68353c941e68dee":"0x626974636f696e0000000000000000000000000000000000000000000000000e","0x1e99199375610ffe00d28ee5827c616cf6469be3de2a2f738d955eb6b62127e8":"0x1","0x21e80eded1b2e1c5d976c85e89dde60bd4e99a8d66346af0e359ac854bceba44":"0x0","0x254d9ade81439f29723741d6ff407eab1fe03caffb042bd85e53955e41fb9792":"0x616c74696d697374000000000000000000000000000000000000000000000010","0x269db12b2cd2aeb7d5f52eda16edb1d211ccbea12da1ebfa60ed5f8f396c1d04":"0x0","0x2a3f03435eedee01de7e1c4386b04ca8469edd8df00408cd6d2b058bce1cecfa":"0x0","0x323a3cb169499006d6635c58232c8c58e23c20bf9e1d309d6b3bc6fb2c7a093d":"0x0","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0x229c56b7805ab5935a883207f6a6bd5847e65aee","0x37aac864d4715a975bd45cae6be99de9f7968cf995917cc7f8192940fb62acbf":"0x0","0x3f69f26894a7ae0f7a7aa6c2d77935589dabbff6435aee960da15064dea7cd59":"0x64616f0000000000000000000000000000000000000000000000000000000006","0x467a68fda3230ce33f64703ebdbd91caccf235403282ae9fe390675ef39e9c94":"0x0","0x50ae8c017c4c1fddbe9509bd2b916f5dd9da11ddb639f2a4230322f49a41ac87":"0x1","0x5496787fc1ebdfeba375028c1865f13fbb1d63c0caa356ccc1b29a80f3ebd622":"0x0","0x576dd8d1a7b74aba0a99a213f50d74aa642a2c80bd5a854b24aac7568afea0f7":"0x626974676574000000000000000000000000000000000000000000000000000c","0x5b54338c052ce22ec334b6c5a19c4b122701c5fd4d3a2a5f5890f57050e0aafa":"0x626c6f636b636861696e00000000000000000000000000000000000000000014","0x5d9de30f0e5e02628e726fd23e310ee9e64489866fa6959825148a25d40e4c83":"0x0","0x5e2d99ab4a1a153039a4b2e068d64802da8735071a2d018ee9d04297945bed00":"0x0","0x670006c4193123492fb25db465ed52e62aff2f076289f4f1a5f167237f5e579d":"0x6d616e676100000000000000000000000000000000000000000000000000000a","0x6deac161c541001c0d79afaf7b809418785fa5ca6533d86bcf312e7213ee08fc":"0x0","0x6eaa0db35203bc0d58aff54ca630dd125b27758aa6204f7a11c0617f7c2fa776":"0x706f670000000000000000000000000000000000000000000000000000000006","0x732abe4661f55132b7f119cab9a9985be6630299dfc92870cc910f147795bc44":"0x0","0x743eb517f46c12bb593097087a972028308ce2e819a76cfb5488751f9d1ca34a":"0x7265616c6d00000000000000000000000000000000000000000000000000000a","0x750dfb39c9afc828c341e1a8e8fdca0b3914baf43303e1ef21fbfe8ec8ee016a":"0x0","0x7cbf647b96a1d1a533ea4bc3a4a8a78f166bd91e6a96afb12f063fef0e9cb960":"0x0","0x7dc972254779cfb51850c0eaccfcb71207822b3c10d4840567bec3dfbf0dff13":"0x636f6d0000000000000000000000000000000000000000000000000000000006","0x7dfa160584f41570c33e8e6c42c5314a7b45ddc162f99fd101ccc10c7b5b3dd3":"0x77616c6c6574000000000000000000000000000000000000000000000000000c","0x868a5f38a2d46181ffad442d7bc5b337b3c349a58e4979f2901786c6123b996c":"0x6b6c65766572000000000000000000000000000000000000000000000000000c","0x87b2c647061aef22ef1aba96c67f440d471dfac27e9873ff4a03793b402d32ee":"0x706f6c79676f6e0000000000000000000000000000000000000000000000000e","0x893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e":"0x7c3c91245769c8b7450ad522792dec4bd4bf797f","0x91e744007b4b3621bec7c01ea851c3f48cf196b9cc6c566a48cec8c5faac6e62":"0x0","0x92c5a28dd4caaa50e0a8370243a5c600f64349e8b03604b403cbe111b50f1f7b":"0x3838380000000000000000000000000000000000000000000000000000000006","0x947936973a3a21b10c8980e1a8939a55c7339d302161884a3de05cf090e812f0":"0x1","0x9535d3ea47c5e1398d3405b4fadc73de6b1b1e6a66f674a8886ab7a6c873a390":"0x63727970746f000000000000000000000000000000000000000000000000000c","0x9956a4e94676c45844be3667f17e077c7cb53aa4e87e5a71d65e56b291232715":"0x676f000000000000000000000000000000000000000000000000000000000004","0x9c6ba1ddff1ffbc14dcdc1f97db867554a42a39e00e892c7e882dbb3dca89ebf":"0x6869000000000000000000000000000000000000000000000000000000000004","0x9f836a0f81651f597cee678b440ba8c853c633e6654809efb83d4b22aff06fb2":"0x616e696d6500000000000000000000000000000000000000000000000000000a","0x9fecf1e12f4b8ec337da992721a0f27526ddbd6be1e77885ab963c09afcf0fc1":"0x0","0xab129a0f8c6cf8d160116a28abc7369c2f8a098fc023f00f07dc3e1d5798e47a":"0x0","0xb04c0eb6f034d9a3179a4e6f953bdf8afc78ba2cdcfbc775076e1c2a0bb67818":"0x0","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec","0xbe51b53bc2060a7a6419622b5a9adc00b50a57e6aa741882f2f60f95d4580078":"0x636c617900000000000000000000000000000000000000000000000000000008","0xbf350522e335b8ab3da1d099c93cdc09179f1e15ea6aa1acfaa4afb1ef87eabf":"0x756e73746f707061626c65000000000000000000000000000000000000000016","0xcbf7a3d53e0851ac15a415b99c2ba95a2497dd9dd44068ac261bcbdafdfe8472":"0x707564677900000000000000000000000000000000000000000000000000000a","0xcf4411216f3fdf787d1cfe037bbcfa0d5293d83a8082f8e4141266399e2a784b":"0x61757374696e000000000000000000000000000000000000000000000000000c","0xcfdbac664139565f92cce149a345e5f19355d25b3eb8a70c549d5da3283a15b8":"0x7a696c0000000000000000000000000000000000000000000000000000000006","0xcfeb64c30a93ecd7224f854b09be57bb6b3962e739fa8e3ea3a1851502474c07":"0x1","0xe03c9c593ce8661bd39f77653f7ca6c43f093aa7f3b95890f309f67b57f39e74":"0x0","0xe50c62c16d12655dfdbd61c232155e5c3a1cf61977d2d8e7449cb88611b73832":"0x0","0xeeb0b17d77f2c9069ad443f3927c0802d98d5553e52b17c985d45d4a10b79566":"0x62696e616e636575730000000000000000000000000000000000000000000012","0xf562ef0db022f25a957fb6e49aa07004f14a50ed5b23279e9ac25b4632f7bf1c":"0x0","0xf6776268d6c5847a771099280c742d684a4b22bac609ba615de51f7f893ff2bc":"0x0"}},"0x3f1194b9019002863ad0dbbe295294547c0d36a9":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100b1575f3560e01c80635b0fc9c31161006e5780635b0fc9c3146101a55780635ef2c7f0146101b8578063a22cb465146101cb578063cf408823146101de578063e985e9c5146101f1578063f79fe5381461023c575f80fd5b80630178b8bf146100b557806302571be3146100fd57806306ab59231461011057806314ab90381461013157806316a25cbd146101465780631896f70a14610192575b5f80fd5b6100e06100c3366004610785565b5f908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100e061010b366004610785565b610266565b61012361011e3660046107b7565b610292565b6040519081526020016100f4565b61014461013f366004610800565b61035f565b005b610179610154366004610785565b5f90815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100f4565b6101446101a036600461082a565b61042e565b6101446101b336600461082a565b6104ef565b6101446101c636600461084b565b61058e565b6101446101d936600461089e565b6105af565b6101446101ec3660046108d7565b61061a565b61022c6101ff366004610921565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205460ff1690565b60405190151581526020016100f4565b61022c61024a366004610785565b5f908152602081905260409020546001600160a01b0316151590565b5f818152602081905260408120546001600160a01b031630810361028c57505f92915050565b92915050565b5f8381526020819052604081205484906001600160a01b0316338114806102db57506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b6102e3575f80fd5b604080516020808201899052818301889052825180830384018152606090920190925280519101206103158186610635565b6040516001600160a01b0386168152869088907fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829060200160405180910390a39695505050505050565b5f8281526020819052604090205482906001600160a01b0316338114806103a857506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b6103b0575f80fd5b60405167ffffffffffffffff8416815284907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a250505f91825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b5f8281526020819052604090205482906001600160a01b03163381148061047757506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b61047f575f80fd5b6040516001600160a01b038416815284907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a250505f9182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b5f8281526020819052604090205482906001600160a01b03163381148061053857506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b610540575f80fd5b61054a8484610635565b6040516001600160a01b038416815284907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a250505050565b5f61059a868686610292565b90506105a7818484610662565b505050505050565b335f8181526001602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b61062484846104ef565b61062f848383610662565b50505050565b5f9182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b5f838152602081905260409020600101546001600160a01b038381169116146106e6575f838152602081815260409182902060010180546001600160a01b0319166001600160a01b038616908117909155915191825284917f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a0910160405180910390a25b5f8381526020819052604090206001015467ffffffffffffffff828116600160a01b9092041614610780575f8381526020818152604091829020600101805467ffffffffffffffff60a01b1916600160a01b67ffffffffffffffff861690810291909117909155915191825284917f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa68910160405180910390a25b505050565b5f60208284031215610795575f80fd5b5035919050565b80356001600160a01b03811681146107b2575f80fd5b919050565b5f805f606084860312156107c9575f80fd5b83359250602084013591506107e06040850161079c565b90509250925092565b803567ffffffffffffffff811681146107b2575f80fd5b5f8060408385031215610811575f80fd5b82359150610821602084016107e9565b90509250929050565b5f806040838503121561083b575f80fd5b823591506108216020840161079c565b5f805f805f60a0868803121561085f575f80fd5b85359450602086013593506108766040870161079c565b92506108846060870161079c565b9150610892608087016107e9565b90509295509295909350565b5f80604083850312156108af575f80fd5b6108b88361079c565b9150602083013580151581146108cc575f80fd5b809150509250929050565b5f805f80608085870312156108ea575f80fd5b843593506108fa6020860161079c565b92506109086040860161079c565b9150610916606086016107e9565b905092959194509250565b5f8060408385031215610932575f80fd5b61093b8361079c565b91506108216020840161079c56fea164736f6c6343000818000a","storage":{"0xdd4f47a3b6f87903b728feed7a23273bd8de58e4fa257d37a74a5881e5d92ff":"0xf670681605efc4efc804f5a9b97ee89520473d56","0x14ce109f1cffdc11aa7355660be720f902291be09fb159b4c578958cd0f533bc":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x14ce109f1cffdc11aa7355660be720f902291be09fb159b4c578958cd0f533bd":"0x0","0x1e2c8528d7e8e90443ad0a4e37b6f2b1daed719a574ce3a0c347063e8d839d50":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1e2c8528d7e8e90443ad0a4e37b6f2b1daed719a574ce3a0c347063e8d839d51":"0x0","0x2fb4213711fd985fc1fb1ea2bfa660b0b37fd50c6c74ab531d9b54b29dd5177e":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2fb4213711fd985fc1fb1ea2bfa660b0b37fd50c6c74ab531d9b54b29dd5177f":"0x0","0x859ecef2e168dc10231b000bd53493b42bc9d944cac29d94582c1e1d43592131":"0xc965345edac823d56812cd20a10316233916a605","0x8878c6daefcfc78c7f181d00d719b4a0612dd3e65cafeb72507d15c036a9f690":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0xe4fdf45c2f8d198854f8823809c7a988eeaaa493","0xfb5568c6845cf0d5915af088a5d8ba90a5ff735e102c9a79609ef7d043f1108c":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xfb5568c6845cf0d5915af088a5d8ba90a5ff735e102c9a79609ef7d043f1108d":"0x0"}},"0x4872cc1be60a9db9c880a0a437da7a6af134f08f":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100935760003560e01c80637362d9c8116100665780637362d9c8146101285780637b1039991461014e57806399e0dd7c14610172578063bb5f747b146101e2578063d6cd94731461020857610093565b806310154bad14610098578063291d9549146100c05780633af32abf146100e65780634c5a628c14610120575b600080fd5b6100be600480360360208110156100ae57600080fd5b50356001600160a01b0316610210565b005b6100be600480360360208110156100d657600080fd5b50356001600160a01b0316610260565b61010c600480360360208110156100fc57600080fd5b50356001600160a01b03166102ad565b604080519115158252519081900360200190f35b6100be6102c6565b6100be6004803603602081101561013e57600080fd5b50356001600160a01b03166102d1565b61015661031e565b604080516001600160a01b039092168252519081900360200190f35b6100be6004803603602081101561018857600080fd5b8101906020810181356401000000008111156101a357600080fd5b8201836020820111156101b557600080fd5b803590602001918460018302840111640100000000831117156101d757600080fd5b50909250905061032d565b61010c600480360360208110156101f857600080fd5b50356001600160a01b0316610404565b6100be610416565b61021933610404565b6102545760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d8161041f565b50565b61026933610404565b6102a45760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d81610467565b60006102c060018363ffffffff6104af16565b92915050565b6102cf33610516565b565b6102da33610404565b6103155760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d8161055e565b6002546001600160a01b031690565b610336336102ad565b6103715760405162461bcd60e51b815260040180806020018281038252603a815260200180610712603a913960400191505060405180910390fd5b6002546040516369426cbd60e11b8152602060048201908152602482018490526001600160a01b039092169163d284d97a91859185918190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b1580156103e857600080fd5b505af11580156103fc573d6000803e3d6000fd5b505050505050565b60006102c0818363ffffffff6104af16565b6102cf33610467565b61043060018263ffffffff6105a616565b6040516001600160a01b038216907fee1504a83b6d4a361f4c1dc78ab59bfa30d6a3b6612c403e86bb01ef2984295f90600090a250565b61047860018263ffffffff61062716565b6040516001600160a01b038216907f270d9b30cf5b0793bbfd54c9d5b94aeb49462b8148399000265144a8722da6b690600090a250565b60006001600160a01b0382166104f65760405162461bcd60e51b81526004018080602001828103825260228152602001806106b06022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b61052760008263ffffffff61062716565b6040516001600160a01b038216907f0a8eb35e5ca14b3d6f28e4abf2f128dbab231a58b56e89beb5d636115001e16590600090a250565b61056f60008263ffffffff6105a616565b6040516001600160a01b038216907f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129990600090a250565b6105b082826104af565b15610602576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b61063182826104af565b61066c5760405162461bcd60e51b815260040180806020018281038252602181526020018061068f6021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f206164647265737357686974656c69737441646d696e526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c69737441646d696e20726f6c6557686974656c6973746564526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c697374656420726f6c65a265627a7a72315820debca60946c0819dc5b5c2756c5c1dd8dd8a46f2429fa8a43a4f4362af3030c164736f6c634300050c0032","storage":{"0x2":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x5ac40fcee41fb0272a935f6e51e963102fba5db6f20e897e9361f0347eb2cae6":"0x1","0xdc4aeb95a779c8b92b845e3a94044db8ff2e43acc37da18c4b35a6bbad7c122f":"0x1"}},"0x49da8861c65460639925febe1fb4b5b59b443082":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f7e83aee1461002d575b5f80fd5b61004061003b3660046101ac565b610054565b604051901515815260200160405180910390f35b5f602082146100a95760405162461bcd60e51b815260206004820152601a60248201527f496e76616c6964207368613235362068617368206c656e677468000000000000604482015260640160405180910390fd5b6100eb5f84848080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092939250506101459050565b600286866040516100fd929190610213565b602060405180830381855afa158015610118573d5f803e3d5ffd5b5050506040513d601f19601f8201168201806040525081019061013b9190610222565b1495945050505050565b81515f90610154836020610239565b111561015e575f80fd5b50016020015190565b5f8083601f840112610177575f80fd5b50813567ffffffffffffffff81111561018e575f80fd5b6020830191508360208285010111156101a5575f80fd5b9250929050565b5f805f80604085870312156101bf575f80fd5b843567ffffffffffffffff808211156101d6575f80fd5b6101e288838901610167565b909650945060208701359150808211156101fa575f80fd5b5061020787828801610167565b95989497509550505050565b818382375f9101908152919050565b5f60208284031215610232575f80fd5b5051919050565b8082018082111561025857634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x4a3c194eb88966178bfdd81744dddafed611b830":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061009e5760003560e01c806398650275116100665780639865027514610305578063aa271e1a1461030d578063b2da297914610347578063be362e2e146103c5578063c36c2125146104fe5761009e565b80634c0b0ed2146100a35780637b103999146101595780637caf3ad81461017d5780638ad364f814610258578063983b2d56146102df575b600080fd5b610157600480360360408110156100b957600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156100e357600080fd5b8201836020820111156100f557600080fd5b803590602001918460018302840111600160201b8311171561011657600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506105bd945050505050565b005b61016161074c565b604080516001600160a01b039092168252519081900360200190f35b6101576004803603608081101561019357600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156101bd57600080fd5b8201836020820111156101cf57600080fd5b803590602001918460018302840111600160201b831117156101f057600080fd5b919390926001600160a01b0383351692604081019060200135600160201b81111561021a57600080fd5b82018360208201111561022c57600080fd5b803590602001918460018302840111600160201b8311171561024d57600080fd5b50909250905061075b565b6101576004803603606081101561026e57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561029857600080fd5b8201836020820111156102aa57600080fd5b803590602001918460018302840111600160201b831117156102cb57600080fd5b9193509150356001600160a01b0316610957565b610157600480360360208110156102f557600080fd5b50356001600160a01b0316610b2b565b610157610b7b565b6103336004803603602081101561032357600080fd5b50356001600160a01b0316610b86565b604080519115158252519081900360200190f35b6101576004803603604081101561035d57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561038757600080fd5b82018360208201111561039957600080fd5b803590602001918460018302840111600160201b831117156103ba57600080fd5b509092509050610b9e565b610157600480360360608110156103db57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561040557600080fd5b82018360208201111561041757600080fd5b803590602001918460018302840111600160201b8311171561043857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b81111561048a57600080fd5b82018360208201111561049c57600080fd5b803590602001918460018302840111600160201b831117156104bd57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610bf1945050505050565b6101576004803603606081101561051457600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561053e57600080fd5b82018360208201111561055057600080fd5b803590602001918460018302840111600160201b8311171561057157600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550505090356001600160a01b03169150610dec9050565b6105c633610b86565b6106015760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b039092169163b5466669918591849163ebf0c717916004808301926020929190829003018186803b15801561064f57600080fd5b505afa158015610663573d6000803e3d6000fd5b505050506040513d602081101561067957600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052606060448301908152875160648401528751889360840190602085019080838360005b838110156106e25781810151838201526020016106ca565b50505050905090810190601f16801561070f5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15801561073057600080fd5b505af1158015610744573d6000803e3d6000fd5b505050505050565b6001546001600160a01b031690565b6107cf8686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f89018190048102820181019092528781529250879150869081908401838280828437600092019190915250610bf192505050565b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691632525d06a91869184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b15801561082557600080fd5b505afa158015610839573d6000803e3d6000fd5b505050506040513d602081101561084f57600080fd5b5051604080516001600160e01b031960e085901b1681526004810183815260248201928352604482018d90528d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b1580156108bd57600080fd5b505afa1580156108d1573d6000803e3d6000fd5b505050506040513d60208110156108e757600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b15801561093757600080fd5b505af115801561094b573d6000803e3d6000fd5b50505050505050505050565b6109a58484848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250610bf1915050565b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691632525d06a91849184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b1580156109fb57600080fd5b505afa158015610a0f573d6000803e3d6000fd5b505050506040513d6020811015610a2557600080fd5b5051604080516001600160e01b031960e085901b1681526004810183815260248201928352604482018b90528b928b92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b158015610a9357600080fd5b505afa158015610aa7573d6000803e3d6000fd5b505050506040513d6020811015610abd57600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b158015610b0d57600080fd5b505af1158015610b21573d6000803e3d6000fd5b5050505050505050565b610b3433610b86565b610b6f5760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b610b7881611115565b50565b610b843361115d565b565b6000610b98818363ffffffff6111a516565b92915050565b610bec8383838080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250610bf1915050565b505050565b610bfa33610b86565b610c355760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691630467e014918691849163ebf0c717916004808301926020929190829003018186803b158015610c8357600080fd5b505afa158015610c97573d6000803e3d6000fd5b505050506040513d6020811015610cad57600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052608060448301908152885160848401528851899389939291606482019160a40190602087019080838360005b83811015610d1f578181015183820152602001610d07565b50505050905090810190601f168015610d4c5780820380516001836020036101000a031916815260200191505b50838103825284518152845160209182019186019080838360005b83811015610d7f578181015183820152602001610d67565b50505050905090810190601f168015610dac5780820380516001836020036101000a031916815260200191505b509650505050505050600060405180830381600087803b158015610dcf57600080fd5b505af1158015610de3573d6000803e3d6000fd5b50505050505050565b610df533610b86565b610e305760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b039092169163b5466669918691849163ebf0c717916004808301926020929190829003018186803b158015610e7e57600080fd5b505afa158015610e92573d6000803e3d6000fd5b505050506040513d6020811015610ea857600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052606060448301908152885160648401528851899360840190602085019080838360005b83811015610f11578181015183820152602001610ef9565b50505050905090810190601f168015610f3e5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015610f5f57600080fd5b505af1158015610f73573d6000803e3d6000fd5b50506001546040805163ebf0c71760e01b815290516001600160a01b039092169350632525d06a9250849184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b158015610fcd57600080fd5b505afa158015610fe1573d6000803e3d6000fd5b505050506040513d6020811015610ff757600080fd5b5051604080516001600160e01b031960e085901b16815260048101838152602482019283528a5160448301528a518b93919260640190602085019080838360005b83811015611050578181015183820152602001611038565b50505050905090810190601f16801561107d5780820380516001836020036101000a031916815260200191505b50935050505060206040518083038186803b15801561109b57600080fd5b505afa1580156110af573d6000803e3d6000fd5b505050506040513d60208110156110c557600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b158015610dcf57600080fd5b61112660008263ffffffff61120c16565b6040516001600160a01b038216907f6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f690600090a250565b61116e60008263ffffffff61128d16565b6040516001600160a01b038216907fe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb6669290600090a250565b60006001600160a01b0382166111ec5760405162461bcd60e51b81526004018080602001828103825260228152602001806113466022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b61121682826111a5565b15611268576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b61129782826111a5565b6112d25760405162461bcd60e51b81526004018080602001828103825260218152602001806113256021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe4d696e746572526f6c653a2063616c6c657220646f6573206e6f74206861766520746865204d696e74657220726f6c65526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f2061646472657373a265627a7a72315820c058d70355f7d37ff6b3b61cd850cc4a41893e30048389698c062148bf3d2ff464736f6c634300050c0032","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x789b49055833748af4eaa9affbcd84118ce8770f7e4385b5a3f428626b1f0aff":"0x1","0xdc4aeb95a779c8b92b845e3a94044db8ff2e43acc37da18c4b35a6bbad7c122f":"0x1"}},"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061007b5760003560e01c80639623609d1161004e5780639623609d1461011157806399a88ec414610124578063f2fde38b14610144578063f3b7dead1461016457600080fd5b8063204e1c7a14610080578063715018a6146100bc5780637eff275e146100d35780638da5cb5b146100f3575b600080fd5b34801561008c57600080fd5b506100a061009b366004610499565b610184565b6040516001600160a01b03909116815260200160405180910390f35b3480156100c857600080fd5b506100d1610215565b005b3480156100df57600080fd5b506100d16100ee3660046104bd565b610229565b3480156100ff57600080fd5b506000546001600160a01b03166100a0565b6100d161011f36600461050c565b610291565b34801561013057600080fd5b506100d161013f3660046104bd565b610300565b34801561015057600080fd5b506100d161015f366004610499565b610336565b34801561017057600080fd5b506100a061017f366004610499565b6103b4565b6000806000836001600160a01b03166040516101aa90635c60da1b60e01b815260040190565b600060405180830381855afa9150503d80600081146101e5576040519150601f19603f3d011682016040523d82523d6000602084013e6101ea565b606091505b5091509150816101f957600080fd5b8080602001905181019061020d91906105e2565b949350505050565b61021d6103da565b6102276000610434565b565b6102316103da565b6040516308f2839760e41b81526001600160a01b038281166004830152831690638f283970906024015b600060405180830381600087803b15801561027557600080fd5b505af1158015610289573d6000803e3d6000fd5b505050505050565b6102996103da565b60405163278f794360e11b81526001600160a01b03841690634f1ef2869034906102c990869086906004016105ff565b6000604051808303818588803b1580156102e257600080fd5b505af11580156102f6573d6000803e3d6000fd5b5050505050505050565b6103086103da565b604051631b2ce7f360e11b81526001600160a01b038281166004830152831690633659cfe69060240161025b565b61033e6103da565b6001600160a01b0381166103a85760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b6103b181610434565b50565b6000806000836001600160a01b03166040516101aa906303e1469160e61b815260040190565b6000546001600160a01b031633146102275760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161039f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146103b157600080fd5b6000602082840312156104ab57600080fd5b81356104b681610484565b9392505050565b600080604083850312156104d057600080fd5b82356104db81610484565b915060208301356104eb81610484565b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561052157600080fd5b833561052c81610484565b9250602084013561053c81610484565b9150604084013567ffffffffffffffff8082111561055957600080fd5b818601915086601f83011261056d57600080fd5b81358181111561057f5761057f6104f6565b604051601f8201601f19908116603f011681019083821181831017156105a7576105a76104f6565b816040528281528960208487010111156105c057600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000602082840312156105f457600080fd5b81516104b681610484565b60018060a01b038316815260006020604081840152835180604085015260005b8181101561063b5785810183015185820160600152820161061f565b8181111561064d576000606083870101525b50601f01601f19169290920160600194935050505056fea26469706673582212207ad53e1008cce369999f6b5f2f77109510b404ff1de9b47b639981fd68e6239264736f6c63430008090033","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x4eb9de1fc0d800e941f326d6699e9e11969557ea":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063100cdd911461002d575b5f80fd5b61004061003b3660046102cd565b610042565b005b5f5b818110156101b8575f7f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e28484848181106100805761008061033c565b905060200201356040516020016100a1929190918252602082015260400190565b60408051808303601f190181529082905280516020909101206331a9108f60e11b82526004820181905291507f000000000000000000000000107733fed96c4cd390c944a31f5425a7fb98ae5e6001600160a01b0316906323b872dd908290636352211e90602401602060405180830381865afa158015610124573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101489190610350565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015261dead6024820152604481018490526064015f604051808303815f87803b158015610195575f80fd5b505af11580156101a7573d5f803e3d5ffd5b505060019093019250610044915050565b5080156102c9577f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e282826101ed60018261037d565b8181106101fc576101fc61033c565b9050602002013560405160200161021d929190918252602082015260400190565b604051602081830303815290604052805190602001205f1c7f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e283835f8181106102685761026861033c565b90506020020135604051602001610289929190918252602082015260400190565b60408051601f19818403018152908290528051602090910120907fdf423376f9b0ab363b1b4d6f0b4cb6821921ec30f491555a97236a8a38ce095a905f90a35b5050565b5f80602083850312156102de575f80fd5b823567ffffffffffffffff808211156102f5575f80fd5b818501915085601f830112610308575f80fd5b813581811115610316575f80fd5b8660208260051b850101111561032a575f80fd5b60209290920196919550909350505050565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215610360575f80fd5b81516001600160a01b0381168114610376575f80fd5b9392505050565b8181038181111561039c57634e487b7160e01b5f52601160045260245ffd5b9291505056fea164736f6c6343000818000a","storage":{}},"0x4fbf7b2f171336958be5d15ff762a5cff5363568":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061011b575f3560e01c80638d839ffe1161009d578063aeb8ce9b11610062578063aeb8ce9b14610356578063ce1e09c014610375578063d3419bf3146103a8578063f14fcbc8146103db578063f2fde38b146103fa575f80fd5b80638d839ffe146102a25780638da5cb5b146102d55780639791c097146102f1578063a8e5fbc014610310578063acf1a84114610343575f80fd5b806374694a2b116100e357806374694a2b146101c957806380869853146101dc578063839df9451461022757806383e7f6ff146102525780638a95b09f1461028c575f80fd5b806301ffc9a71461011f5780633ccfd60b146101535780635d3590d51461016957806365a69dcf14610188578063715018a6146101b5575b5f80fd5b34801561012a575f80fd5b5061013e610139366004611145565b610419565b60405190151581526020015b60405180910390f35b34801561015e575f80fd5b5061016761044f565b005b348015610174575f80fd5b50610167610183366004611187565b610489565b348015610193575f80fd5b506101a76101a23660046112e4565b610507565b60405190815260200161014a565b3480156101c0575f80fd5b5061016761058b565b6101676101d73660046113db565b61059e565b3480156101e7575f80fd5b5061020f7f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5681565b6040516001600160a01b03909116815260200161014a565b348015610232575f80fd5b506101a761024136600461149d565b60016020525f908152604090205481565b34801561025d575f80fd5b5061027161026c3660046114b4565b610894565b6040805182518152602092830151928101929092520161014a565b348015610297575f80fd5b506101a76224ea0081565b3480156102ad575f80fd5b506101a77f000000000000000000000000000000000000000000000000000000000000025881565b3480156102e0575f80fd5b505f546001600160a01b031661020f565b3480156102fc575f80fd5b5061013e61030b3660046114f6565b6109c9565b34801561031b575f80fd5b5061020f7f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e1841720481565b610167610351366004611528565b6109dd565b348015610361575f80fd5b5061013e6103703660046114f6565b610b7b565b348015610380575f80fd5b506101a77f000000000000000000000000000000000000000000000000000000000001518081565b3480156103b3575f80fd5b5061020f7f000000000000000000000000ec71e4e674fe0f432693dc2b935c34bd2774c00381565b3480156103e6575f80fd5b506101676103f536600461149d565b610c22565b348015610405575f80fd5b50610167610414366004611570565b610c95565b5f6001600160e01b031982166301ffc9a760e01b148061044957506001600160e01b0319821663612e8c0960e01b145b92915050565b5f80546040516001600160a01b03909116914780156108fc02929091818181858888f19350505050158015610486573d5f803e3d5ffd5b50565b610491610d0b565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af11580156104dd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105019190611589565b50505050565b885160208a01205f90841580159061052657506001600160a01b038716155b15610544576040516334fd817160e21b815260040160405180910390fd5b808a8a8a8a8a8a8a8a6040516020016105659998979695949392919061165e565b604051602081830303815290604052805190602001209150509998505050505050505050565b610593610d0b565b61059c5f610d64565b565b5f6105df8b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c9250610894915050565b602081015181519192506105f2916116d5565b3410156106125760405163044044a560e21b815260040160405180910390fd5b6106b38b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f82011690508083019250505050505050896106ae8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f820116905080830192505050505050508d8d8d8d8d8d8d8d610507565b610db3565b604051635200a4c160e11b81525f906001600160a01b037f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e18417204169063a40149829061070b908f908f908f908f908e908b906004016116e8565b6020604051808303815f875af1158015610727573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061074b9190611732565b9050841561077657610776878d8d604051610767929190611749565b60405180910390208888610ece565b83156107be576107be8c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508b9250339150610f939050565b896001600160a01b03168c8c6040516107d8929190611749565b60405180910390207f69e37f151eb98a09618ddaa80c8cfaf1ce5996867c489f45b555b412271ebf278e8e865f015187602001518760405161081e959493929190611758565b60405180910390a36020820151825161083791906116d5565b341115610886576020820151825133916108fc9161085591906116d5565b61085f9034611788565b6040518115909202915f818181858888f19350505050158015610884573d5f803e3d5ffd5b505b505050505050505050505050565b604080518082019091525f808252602082015282516020840120604051636b727d4360e11b8152600481018290527f000000000000000000000000ec71e4e674fe0f432693dc2b935c34bd2774c0036001600160a01b03908116916350e9a7159187917f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063d6e4fa8690602401602060405180830381865afa158015610940573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109649190611732565b866040518463ffffffff1660e01b8152600401610983939291906117e8565b6040805180830381865afa15801561099d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109c1919061180c565b949350505050565b5f60036109d583611044565b101592915050565b5f83836040516109ee929190611749565b604080519182900382206020601f8701819004810284018101909252858352925082915f91610a39919088908890819084018382808284375f92019190915250889250610894915050565b8051909150341015610a5e5760405163044044a560e21b815260040160405180910390fd5b60405163c475abff60e01b815260048101839052602481018590525f907f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b03169063c475abff906044016020604051808303815f875af1158015610acb573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610aef9190611732565b8251909150341115610b3457815133906108fc90610b0d9034611788565b6040518115909202915f818181858888f19350505050158015610b32573d5f803e3d5ffd5b505b837f3da24c024582931cfaf8267d8ed24d13a82a8068d5bd337d30ec45cea4e506ae88883485604051610b6a9493929190611859565b60405180910390a250505050505050565b805160208201205f90610b8d836109c9565b8015610c1b57506040516312dc929d60e31b8152600481018290527f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b0316906396e494e890602401602060405180830381865afa158015610bf7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c1b9190611589565b9392505050565b5f818152600160205260409020544290610c5d907f0000000000000000000000000000000000000000000000000000000000015180906116d5565b10610c8357604051630a059d7160e01b8152600481018290526024015b60405180910390fd5b5f908152600160205260409020429055565b610c9d610d0b565b6001600160a01b038116610d025760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610c7a565b61048681610d64565b5f546001600160a01b0316331461059c5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610c7a565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f818152600160205260409020544290610dee907f0000000000000000000000000000000000000000000000000000000000000258906116d5565b1115610e1057604051635320bcf960e01b815260048101829052602401610c7a565b5f818152600160205260409020544290610e4b907f0000000000000000000000000000000000000000000000000000000000015180906116d5565b11610e6c5760405163cb7690d760e01b815260048101829052602401610c7a565b610e7583610b7b565b610e9457826040516308eee0fd60e31b8152600401610c7a919061187f565b5f818152600160205260408120556224ea00821015610ec957604051639a71997b60e01b815260048101839052602401610c7a565b505050565b604080517f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae6020808301919091528183018690528251808303840181526060830193849052805191012063e32954eb60e01b90925285906001600160a01b0382169063e32954eb90610f4890859088908890606401611891565b5f604051808303815f875af1158015610f63573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052610f8a91908101906118b3565b50505050505050565b7f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d566001600160a01b0316637a806d6b33838587604051602001610fd691906119a7565b6040516020818303038152906040526040518563ffffffff1660e01b815260040161100494939291906119ce565b6020604051808303815f875af1158015611020573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105019190611732565b80515f90819081905b8082101561113c575f85838151811061106857611068611a0b565b01602001516001600160f81b0319169050600160ff1b811015611097576110906001846116d5565b9250611129565b600760fd1b6001600160f81b0319821610156110b8576110906002846116d5565b600f60fc1b6001600160f81b0319821610156110d9576110906003846116d5565b601f60fb1b6001600160f81b0319821610156110fa576110906004846116d5565b603f60fa1b6001600160f81b03198216101561111b576110906005846116d5565b6111266006846116d5565b92505b508261113481611a1f565b93505061104d565b50909392505050565b5f60208284031215611155575f80fd5b81356001600160e01b031981168114610c1b575f80fd5b80356001600160a01b0381168114611182575f80fd5b919050565b5f805f60608486031215611199575f80fd5b6111a28461116c565b92506111b06020850161116c565b9150604084013590509250925092565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff811182821017156111fd576111fd6111c0565b604052919050565b5f67ffffffffffffffff82111561121e5761121e6111c0565b50601f01601f191660200190565b5f82601f83011261123b575f80fd5b813561124e61124982611205565b6111d4565b818152846020838601011115611262575f80fd5b816020850160208301375f918101602001919091529392505050565b5f8083601f84011261128e575f80fd5b50813567ffffffffffffffff8111156112a5575f80fd5b6020830191508360208260051b85010111156112bf575f80fd5b9250929050565b8015158114610486575f80fd5b803561ffff81168114611182575f80fd5b5f805f805f805f805f6101008a8c0312156112fd575f80fd5b893567ffffffffffffffff80821115611314575f80fd5b6113208d838e0161122c565b9a5061132e60208d0161116c565b995060408c0135985060608c0135975061134a60808d0161116c565b965060a08c013591508082111561135f575f80fd5b5061136c8c828d0161127e565b90955093505060c08a0135611380816112c6565b915061138e60e08b016112d3565b90509295985092959850929598565b5f8083601f8401126113ad575f80fd5b50813567ffffffffffffffff8111156113c4575f80fd5b6020830191508360208285010111156112bf575f80fd5b5f805f805f805f805f806101008b8d0312156113f5575f80fd5b8a3567ffffffffffffffff8082111561140c575f80fd5b6114188e838f0161139d565b909c509a508a915061142c60208e0161116c565b995060408d0135985060608d0135975061144860808e0161116c565b965060a08d013591508082111561145d575f80fd5b5061146a8d828e0161127e565b90955093505060c08b013561147e816112c6565b915061148c60e08c016112d3565b90509295989b9194979a5092959850565b5f602082840312156114ad575f80fd5b5035919050565b5f80604083850312156114c5575f80fd5b823567ffffffffffffffff8111156114db575f80fd5b6114e78582860161122c565b95602094909401359450505050565b5f60208284031215611506575f80fd5b813567ffffffffffffffff81111561151c575f80fd5b6109c18482850161122c565b5f805f6040848603121561153a575f80fd5b833567ffffffffffffffff811115611550575f80fd5b61155c8682870161139d565b909790965060209590950135949350505050565b5f60208284031215611580575f80fd5b610c1b8261116c565b5f60208284031215611599575f80fd5b8151610c1b816112c6565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b5f838385526020808601955060208560051b830101845f5b8781101561165157848303601f19018952813536889003601e19018112611609575f80fd5b8701848101903567ffffffffffffffff811115611624575f80fd5b803603821315611632575f80fd5b61163d8582846115a4565b9a86019a94505050908301906001016115e4565b5090979650505050505050565b8981526001600160a01b03898116602083015260408201899052606082018890528616608082015261010060a082018190525f9061169f83820187896115cc565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b634e487b7160e01b5f52601160045260245ffd5b80820180821115610449576104496116c1565b60a081525f6116fb60a08301888a6115a4565b6001600160a01b03968716602084015260408301959095525091909316606082015261ffff90921660809092019190915292915050565b5f60208284031215611742575f80fd5b5051919050565b818382375f9101908152919050565b608081525f61176b6080830187896115a4565b602083019590955250604081019290925260609091015292915050565b81810381811115610449576104496116c1565b5f5b838110156117b557818101518382015260200161179d565b50505f910152565b5f81518084526117d481602086016020860161179b565b601f01601f19169290920160200192915050565b606081525f6117fa60608301866117bd565b60208301949094525060400152919050565b5f6040828403121561181c575f80fd5b6040516040810181811067ffffffffffffffff8211171561183f5761183f6111c0565b604052825181526020928301519281019290925250919050565b606081525f61186c6060830186886115a4565b6020830194909452506040015292915050565b602081525f610c1b60208301846117bd565b838152604060208201525f6118aa6040830184866115cc565b95945050505050565b5f60208083850312156118c4575f80fd5b825167ffffffffffffffff808211156118db575f80fd5b818501915085601f8301126118ee575f80fd5b815181811115611900576119006111c0565b8060051b61190f8582016111d4565b9182528381018501918581019089841115611928575f80fd5b86860192505b8383101561199a57825185811115611944575f80fd5b8601603f81018b13611954575f80fd5b87810151604061196661124983611205565b8281528d82848601011115611979575f80fd5b611988838c830184870161179b565b8552505050918601919086019061192e565b9998505050505050505050565b5f82516119b881846020870161179b565b6305ccae8d60e31b920191825250600401919050565b6001600160a01b0385811682528481166020830152831660408201526080606082018190525f90611a01908301846117bd565b9695505050505050565b634e487b7160e01b5f52603260045260245ffd5b5f60018201611a3057611a306116c1565b506001019056fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x5155f5627bdf9795b3dbb8887001ada1eeba93f2":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063de8f50a11461002d575b5f80fd5b61004761003b3660046100a0565b60019695505050505050565b604051901515815260200160405180910390f35b5f8083601f84011261006b575f80fd5b50813567ffffffffffffffff811115610082575f80fd5b602083019150836020828501011115610099575f80fd5b9250929050565b5f805f805f80606087890312156100b5575f80fd5b863567ffffffffffffffff808211156100cc575f80fd5b6100d88a838b0161005b565b909850965060208901359150808211156100f0575f80fd5b6100fc8a838b0161005b565b90965094506040890135915080821115610114575f80fd5b5061012189828a0161005b565b979a969950949750929593949250505056fea164736f6c6343000818000a","storage":{}},"0x54563a9e1cd2dcbd0bca90d3cfa4a647e02c404a":{"nonce":1,"balance":"0x0","code":"0x6080604052600436106101db575f3560e01c80638da5cb5b116100fd578063c4d66de811610092578063daea85c511610062578063daea85c51461055e578063e7acab241461057d578063f2fde38b1461059c578063ffa1ad74146105bb575f80fd5b8063c4d66de8146104e1578063d539139314610500578063d547741f14610520578063d9caed121461053f575f80fd5b8063a217fddf116100cd578063a217fddf14610452578063a3f4df7e14610465578063a4247400146104a3578063aa271e1a146104c2575f80fd5b80638da5cb5b146103d957806391d1485414610400578063983b2d561461041f578063986502751461043e575f80fd5b80635c975abb11610173578063715018a611610143578063715018a61461037f57806371e2a6571461039357806381c81d35146103b25780638456cb59146103c5575f80fd5b80635c975abb146103165780635fc1964f1461032e578063634486da1461034d5780636ccbae5f14610360575f80fd5b80633092afd5116101ae5780633092afd51461029c57806336568abe146102bb5780633f4ba83a146102da578063572b6c05146102ee575f80fd5b806301ffc9a7146101df5780631bf7e13e14610213578063248a9ca31461023f5780632f2ff15d1461027b575b5f80fd5b3480156101ea575f80fd5b506101fe6101f9366004611e68565b6105eb565b60405190151581526020015b60405180910390f35b34801561021e575f80fd5b5061023261022d366004611e8f565b610621565b60405161020a9190611f71565b34801561024a575f80fd5b5061026d610259366004611f83565b5f90815260fb602052604090206001015490565b60405190815260200161020a565b348015610286575f80fd5b5061029a610295366004611fbe565b6106ea565b005b3480156102a7575f80fd5b5061029a6102b6366004611fec565b610713565b3480156102c6575f80fd5b5061029a6102d5366004611fbe565b610727565b3480156102e5575f80fd5b5061029a6107ba565b3480156102f9575f80fd5b506101fe610308366004611fec565b6001600160a01b0316301490565b348015610321575f80fd5b5061012d5460ff166101fe565b348015610339575f80fd5b5061029a610348366004612073565b6107d4565b61029a61035b366004611fec565b610811565b34801561036b575f80fd5b5061026d61037a366004611f83565b6108d1565b34801561038a575f80fd5b5061029a61092a565b34801561039e575f80fd5b5061029a6103ad366004612073565b61093b565b61029a6103c0366004611fec565b610978565b3480156103d0575f80fd5b5061029a6109f5565b3480156103e4575f80fd5b506097546040516001600160a01b03909116815260200161020a565b34801561040b575f80fd5b506101fe61041a366004611fbe565b610a0d565b34801561042a575f80fd5b5061029a610439366004611fec565b610a37565b348015610449575f80fd5b5061029a610a48565b34801561045d575f80fd5b5061026d5f81565b348015610470575f80fd5b506102326040518060400160405280601381526020017229b2b0b837b93a10283937bc3c90213abcb2b960691b81525081565b3480156104ae575f80fd5b506101fe6104bd366004611e8f565b610a61565b3480156104cd575f80fd5b506101fe6104dc366004611fec565b610ab2565b3480156104ec575f80fd5b5061029a6104fb366004611fec565b610aca565b34801561050b575f80fd5b5061026d5f80516020612e2f83398151915281565b34801561052b575f80fd5b5061029a61053a366004611fbe565b610c21565b34801561054a575f80fd5b5061029a610559366004612113565b610c45565b348015610569575f80fd5b5061029a610578366004611fec565b610cef565b348015610588575f80fd5b506101fe610597366004612151565b610d9c565b3480156105a7575f80fd5b5061029a6105b6366004611fec565b6111dc565b3480156105c6575f80fd5b50610232604051806040016040528060058152602001640302e312e360dc1b81525081565b5f6001600160e01b03198216637965db0b60e01b148061061b57506301ffc9a760e01b6001600160e01b03198316145b92915050565b60605f5a9050610632858585610a61565b61064f57604051638baa579f60e01b815260040160405180910390fd5b6106df61065f6020870187611fec565b3060408801358461067360608b018b612203565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f920191909152506111f792505050565b9150505b9392505050565b5f82815260fb6020526040902060010154610704816112d5565b61070e83836112e6565b505050565b61071b61136c565b610724816113e5565b50565b61072f6113fc565b6001600160a01b0316816001600160a01b0316146107ac5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6107b6828261140a565b5050565b6107c261136c565b6107ca61148e565b6107d26114d8565b565b6107dc61136c565b5f5b81518110156107b6576108098282815181106107fc576107fc612245565b60200260200101516113e5565b6001016107de565b61081c6104dc6113fc565b6108385760405162461bcd60e51b81526004016107a390612259565b6001600160a01b03811661088e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016107a3565b61089781611531565b61089f610a48565b6040516001600160a01b038216903480156108fc02915f818181858888f193505050501580156107b6573d5f803e3d5ffd5b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f90610923906060016040516020818303038152906040528051906020012090565b5492915050565b61093261136c565b6107d25f611548565b61094361136c565b5f5b81518110156107b65761097082828151811061096357610963612245565b6020026020010151611531565b600101610945565b6109836104dc6113fc565b61099f5760405162461bcd60e51b81526004016107a390612259565b6001600160a01b0381166108975760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016107a3565b6109fd61136c565b610a05611599565b6107d26115e0565b5f91825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610a3f61136c565b61072481611531565b6107d25f80516020612e2f8339815191526102d56113fc565b5f610aaa610a6e8561228e565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061161f92505050565b949350505050565b5f61061b5f80516020612e2f83398151915283610a0d565b5f54610100900460ff1615808015610ae857505f54600160ff909116105b80610b015750303b158015610b0157505f5460ff166001145b610b645760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107a3565b5f805460ff191660011790558015610b85575f805461ff0019166101001790555b61015f80546001600160a01b0319166001600160a01b038416179055610ba961175a565b610bb1611787565b610bb9611787565b610bc1611787565b610bc96117ad565b610bd16117e3565b610bd961181a565b80156107b6575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b5f82815260fb6020526040902060010154610c3b816112d5565b61070e838361140a565b610c4d61136c565b600260335403610c6f5760405162461bcd60e51b81526004016107a39061234a565b600260335560405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af1158015610cc0573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ce49190612381565b505060016033555050565b610cf761136c565b600260335403610d195760405162461bcd60e51b81526004016107a39061234a565b600260335561015f5460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529082169063095ea7b3906044016020604051808303815f875af1158015610d6f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d939190612381565b50506001603355565b5f610da86104dc6113fc565b610dc45760405162461bcd60e51b81526004016107a390612259565b600260335403610de65760405162461bcd60e51b81526004016107a39061234a565b6002603355610df3611599565b6001600160a01b038216610e1a576040516311d000e160e31b815260040160405180910390fd5b30610e2587806123a0565b610e36906040810190602001611fec565b6001600160a01b031614610e5d57604051639d3c586b60e01b815260040160405180910390fd5b61015f54604080516101608101909152611135916001600160a01b0316906379df72bd9080610e8c8b806123a0565b610e9a906020810190611fec565b6001600160a01b03168152602001610eb28b806123a0565b610ec3906040810190602001611fec565b6001600160a01b03168152602001610edb8b806123a0565b610ee99060408101906123bf565b808060200260200160405190810160405280939291908181526020015f905b82821015610f3457610f2560a08302860136819003810190612411565b81526020019060010190610f08565b5050509183525050602001610f498b806123a0565b610f5790606081019061248e565b808060200260200160405190810160405280939291908181526020015f905b82821015610fa257610f9360c083028601368190038101906124d2565b81526020019060010190610f76565b5050509183525050602001610fb78b806123a0565b610fc89060a081019060800161256d565b6004811115610fd957610fd9612586565b8152602001610fe88b806123a0565b60a001358152602001610ffb8b806123a0565b60c00135815260200161100e8b806123a0565b60e0013581526020016110218b806123a0565b610100013581526020016110358b806123a0565b6101200135815261015f546020909101906001600160a01b031663f07ec37361105e8d806123a0565b61106c906020810190611fec565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa1580156110ae573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110d2919061259a565b8152506040518263ffffffff1660e01b81526004016110f191906126bf565b602060405180830381865afa15801561110c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611130919061259a565b61184d565b61015f546040516339eb2ac960e21b81526001600160a01b039091169063e7acab249061116e9089908990899089908990600401612aac565b6020604051808303815f875af115801561118a573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111ae9190612381565b9050806111ce57604051636725093760e01b815260040160405180910390fd5b600160335595945050505050565b6111e461136c565b6111ed81611866565b6107245f826118dc565b6060611202856118e6565b5f80876001600160a01b03168661121b8b8a898961194b565b6040516112289190612c82565b5f604051808303815f8787f1925050503d805f8114611262576040519150601f19603f3d011682016040523d82523d5f602084013e611267565b606091505b509092509050611278603f87612ca7565b5a1161128657611286612cc6565b6112c682826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061197b565b925050505b9695505050505050565b610724816112e16113fc565b6119b4565b6112f08282610a0d565b6107b6575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff191660011790556113286113fc565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6113746113fc565b6001600160a01b031661138f6097546001600160a01b031690565b6001600160a01b0316146107d25760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107a3565b6107245f80516020612e2f83398151915282610c21565b5f611405611a18565b905090565b6114148282610a0d565b156107b6575f82815260fb602090815260408083206001600160a01b03851684529091529020805460ff1916905561144a6113fc565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b61012d5460ff166107d25760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b60448201526064016107a3565b6114e061148e565b61012d805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6115146113fc565b6040516001600160a01b03909116815260200160405180910390a1565b6107245f80516020612e2f833981519152826118dc565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b61012d5460ff16156107d25760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b60448201526064016107a3565b6115e8611599565b61012d805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586115146113fc565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015611663573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611687919061259a565b90505f6117348660600151805190602001208688602001516040516020016116d49392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156112cb575085516112cb906001600160a01b03168286611a35565b5f54610100900460ff166117805760405162461bcd60e51b81526004016107a390612cda565b6001603355565b5f54610100900460ff166107d25760405162461bcd60e51b81526004016107a390612cda565b5f54610100900460ff166117d35760405162461bcd60e51b81526004016107a390612cda565b6107d26117de6113fc565b611548565b5f54610100900460ff166118095760405162461bcd60e51b81526004016107a390612cda565b6107d25f6118156113fc565b6118dc565b5f54610100900460ff166118405760405162461bcd60e51b81526004016107a390612cda565b61012d805460ff19169055565b30330361185d5761072481611b70565b610724816118e6565b61186e61136c565b6001600160a01b0381166118d35760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107a3565b61072481611548565b6107b682826112e6565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f9060600160405160208183030381529060405280519060200120905061193a8190565b54611946906001612d25565b905550565b606082858560405160200161196293929190612d38565b6040516020818303038152906040529050949350505050565b6060831561198a5750816106e3565b82511561199a5782518084602001fd5b8160405162461bcd60e51b81526004016107a39190611f71565b6119be8282610a0d565b6107b6576119d6816001600160a01b03166014611b9a565b6119e1836020611b9a565b6040516020016119f2929190612d76565b60408051601f198184030181529082905262461bcd60e51b82526107a391600401611f71565b5f303303611a2d575060331936013560601c90565b503390565b90565b5f805f611a428585611d2f565b90925090505f816004811115611a5a57611a5a612586565b148015611a785750856001600160a01b0316826001600160a01b0316145b15611a88576001925050506106e3565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401611aaf929190612dea565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051611aed9190612c82565b5f60405180830381855afa9150503d805f8114611b25576040519150601f19603f3d011682016040523d82523d5f602084013e611b2a565b606091505b5091509150818015611b3d575080516020145b8015611b6457508051630b135d3f60e11b90611b62908301602090810190840161259a565b145b98975050505050505050565b611b78611d71565b811461072457604051635637b6af60e11b8152600481018290526024016107a3565b60605f611ba8836002612e02565b611bb3906002612d25565b6001600160401b03811115611bca57611bca612007565b6040519080825280601f01601f191660200182016040528015611bf4576020820181803683370190505b509050600360fc1b815f81518110611c0e57611c0e612245565b60200101906001600160f81b03191690815f1a905350600f60fb1b81600181518110611c3c57611c3c612245565b60200101906001600160f81b03191690815f1a9053505f611c5e846002612e02565b611c69906001612d25565b90505b6001811115611ce0576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611c9d57611c9d612245565b1a60f81b828281518110611cb357611cb3612245565b60200101906001600160f81b03191690815f1a90535060049490941c93611cd981612e19565b9050611c6c565b5083156106e35760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016107a3565b5f808251604103611d63576020830151604084015160608501515f1a611d5787828585611d83565b94509450505050611d6a565b505f905060025b9250929050565b5f303303611a325750601f1936013590565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115611db857505f90506003611e5f565b8460ff16601b14158015611dd057508460ff16601c14155b15611de057505f90506004611e5f565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015611e31573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b038116611e59575f60019250925050611e5f565b91505f90505b94509492505050565b5f60208284031215611e78575f80fd5b81356001600160e01b0319811681146106e3575f80fd5b5f805f60408486031215611ea1575f80fd5b83356001600160401b0380821115611eb7575f80fd5b9085019060808288031215611eca575f80fd5b90935060208501359080821115611edf575f80fd5b818601915086601f830112611ef2575f80fd5b813581811115611f00575f80fd5b876020828501011115611f11575f80fd5b6020830194508093505050509250925092565b5f5b83811015611f3e578181015183820152602001611f26565b50505f910152565b5f8151808452611f5d816020860160208601611f24565b601f01601f19169290920160200192915050565b602081525f6106e36020830184611f46565b5f60208284031215611f93575f80fd5b5035919050565b6001600160a01b0381168114610724575f80fd5b8035611fb981611f9a565b919050565b5f8060408385031215611fcf575f80fd5b823591506020830135611fe181611f9a565b809150509250929050565b5f60208284031215611ffc575f80fd5b81356106e381611f9a565b634e487b7160e01b5f52604160045260245ffd5b604051608081016001600160401b038111828210171561203d5761203d612007565b60405290565b604051601f8201601f191681016001600160401b038111828210171561206b5761206b612007565b604052919050565b5f6020808385031215612084575f80fd5b82356001600160401b038082111561209a575f80fd5b818501915085601f8301126120ad575f80fd5b8135818111156120bf576120bf612007565b8060051b91506120d0848301612043565b81815291830184019184810190888411156120e9575f80fd5b938501935b83851015611b64578435925061210383611f9a565b82825293850193908501906120ee565b5f805f60608486031215612125575f80fd5b833561213081611f9a565b9250602084013561214081611f9a565b929592945050506040919091013590565b5f805f805f60808688031215612165575f80fd5b85356001600160401b038082111561217b575f80fd5b9087019060a0828a03121561218e575f80fd5b909550602087013590808211156121a3575f80fd5b818801915088601f8301126121b6575f80fd5b8135818111156121c4575f80fd5b8960208260051b85010111156121d8575f80fd5b602083019650809550505050604086013591506121f760608701611fae565b90509295509295909350565b5f808335601e19843603018112612218575f80fd5b8301803591506001600160401b03821115612231575f80fd5b602001915036819003821315611d6a575f80fd5b634e487b7160e01b5f52603260045260245ffd5b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b5f6080823603121561229e575f80fd5b6122a661201b565b82356122b181611f9a565b8152602083810135818301526040808501359083015260608401356001600160401b03808211156122e0575f80fd5b9085019036601f8301126122f2575f80fd5b81358181111561230457612304612007565b612316601f8201601f19168501612043565b9150808252368482850101111561232b575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b5f60208284031215612391575f80fd5b815180151581146106e3575f80fd5b5f823561015e198336030181126123b5575f80fd5b9190910192915050565b5f808335601e198436030181126123d4575f80fd5b8301803591506001600160401b038211156123ed575f80fd5b602001915060a081023603821315611d6a575f80fd5b803560068110611fb9575f80fd5b5f60a08284031215612421575f80fd5b60405160a081018181106001600160401b038211171561244357612443612007565b60405261244f83612403565b8152602083013561245f81611f9a565b806020830152506040830135604082015260608301356060820152608083013560808201528091505092915050565b5f808335601e198436030181126124a3575f80fd5b8301803591506001600160401b038211156124bc575f80fd5b602001915060c081023603821315611d6a575f80fd5b5f60c082840312156124e2575f80fd5b60405160c081018181106001600160401b038211171561250457612504612007565b60405261251083612403565b8152602083013561252081611f9a565b8060208301525060408301356040820152606083013560608201526080830135608082015260a083013561255381611f9a565b60a08201529392505050565b803560058110611fb9575f80fd5b5f6020828403121561257d575f80fd5b6106e38261255f565b634e487b7160e01b5f52602160045260245ffd5b5f602082840312156125aa575f80fd5b5051919050565b600681106125c1576125c1612586565b9052565b5f815180845260208085019450602084015f5b8381101561262e5781516125ed8882516125b1565b838101516001600160a01b03168885015260408082015190890152606080820151908901526080908101519088015260a090960195908201906001016125d8565b509495945050505050565b5f815180845260208085019450602084015f5b8381101561262e5781516126618882516125b1565b808401516001600160a01b0390811689860152604080830151908a0152606080830151908a0152608080830151908a015260a091820151169088015260c0909601959082019060010161264c565b600581106125c1576125c1612586565b602081526126d96020820183516001600160a01b03169052565b5f60208301516126f460408401826001600160a01b03169052565b5060408301516101608060608501526127116101808501836125c5565b91506060850151601f1985840301608086015261272e8382612639565b925050608085015161274360a08601826126af565b5060a085015160c085015260c085015160e085015260e0850151610100818187015280870151915050610120818187015280870151915050610140818187015280870151838701525050508091505092915050565b5f808335601e198436030181126127ad575f80fd5b83016020810192503590506001600160401b038111156127cb575f80fd5b60a081023603821315611d6a575f80fd5b8183525f60208085019450825f5b8581101561262e57612804876127ff84612403565b6125b1565b8282013561281181611f9a565b6001600160a01b03168388015260408281013590880152606080830135908801526080808301359088015260a096870196909101906001016127ea565b5f808335601e19843603018112612863575f80fd5b83016020810192503590506001600160401b03811115612881575f80fd5b60c081023603821315611d6a575f80fd5b8183525f60208085019450825f5b8581101561262e576128b5876127ff84612403565b828201356128c281611f9a565b6001600160a01b039081168885015260408381013590890152606080840135908901526080808401359089015260a090838201356128ff81611f9a565b169088015260c09687019691909101906001016128a0565b80356001600160781b0381168114611fb9575f80fd5b5f808335601e19843603018112612942575f80fd5b83016020810192503590506001600160401b03811115612960575f80fd5b803603821315611d6a575f80fd5b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b8183525f6001600160fb1b038311156129ad575f80fd5b8260051b80836020870137939093016020019392505050565b8183526020808401935f91600585811b8301820185855b88811015612a9e57858303601f19018a52813536899003609e19018112612a02575f80fd5b88018035845260a08682013560028110612a1a575f80fd5b85880152604082810135908601526060808301359086015260808083013536849003601e19018112612a4a575f80fd5b9092018781019290356001600160401b03811115612a66575f80fd5b80881b3603841315612a76575f80fd5b8282880152612a888388018286612996565b9d89019d965050509286019250506001016129dd565b509098975050505050505050565b608081525f610120873561015e19893603018112612ac8575f80fd5b60a060808501528801612aed828501612ae083611fae565b6001600160a01b03169052565b612af960208201611fae565b610140612b10818701836001600160a01b03169052565b612b1d6040840184612798565b610160888101529250612b35610280880184836127dc565b925050612b45606084018461284e565b87840361011f1901610180890152612b5e848284612892565b93505050612b6e6080840161255f565b612b7c6101a08801826126af565b5060a08301356101c087015260c08301356101e087015260e0830135610200870152610100808401356102208801528484013561024088015281840135610260880152612bcb60208d01612917565b6001600160781b03811660a08901529450612be860408d01612917565b6001600160781b03811660c08901529450612c0660608d018d61292d565b95509350607f199150818784030160e0880152612c2483868661296e565b9450612c3360808d018d61292d565b945092508187860301818801525050612c4d83838361296e565b925050508281036020840152612c648187896129c6565b9150508360408301526112cb60608301846001600160a01b03169052565b5f82516123b5818460208701611f24565b634e487b7160e01b5f52601160045260245ffd5b5f82612cc157634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b8082018082111561061b5761061b612c93565b5f8451612d49818460208901611f24565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081525f8351612dad816017850160208801611f24565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351612dde816028840160208801611f24565b01602801949350505050565b828152604060208201525f610aaa6040830184611f46565b808202811582820484141761061b5761061b612c93565b5f81612e2757612e27612c93565b505f19019056fe9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000818000a","storage":{"0x0":"0xff"}},"0x58a175bebc8ec21a94ea63aa5a28743945940ee6":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106101165760003560e01c806391d14854116100a2578063c4d66de811610071578063c4d66de8146103bb578063ca15c873146103e1578063d547741f146103fe578063e375b64e1461042a578063ec87621c146104b957610116565b806391d14854146103635780639559c0bd146103a3578063a217fddf146103ab578063b017a30f146103b357610116565b80634794b430116100e95780634794b4301461024f57806349f5124b14610257578063609c92b81461025f5780638274664f146102675780639010d07c1461032457610116565b8063150b7a021461011b578063248a9ca3146101c65780632f2ff15d146101f557806336568abe14610223575b600080fd5b6101a96004803603608081101561013157600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561016b57600080fd5b82018360208201111561017d57600080fd5b803590602001918460018302840111600160201b8311171561019e57600080fd5b5090925090506104c1565b604080516001600160e01b03199092168252519081900360200190f35b6101e3600480360360208110156101dc57600080fd5b50356104d2565b60408051918252519081900360200190f35b6102216004803603604081101561020b57600080fd5b50803590602001356001600160a01b03166104ea565b005b6102216004803603604081101561023957600080fd5b50803590602001356001600160a01b0316610556565b6101e36105b7565b6101e36105db565b6101e36105ff565b6102216004803603606081101561027d57600080fd5b6001600160a01b038235811692602081013590911691810190606081016040820135600160201b8111156102b057600080fd5b8201836020820111156102c257600080fd5b803590602001918460018302840111600160201b831117156102e357600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610623945050505050565b6103476004803603604081101561033a57600080fd5b5080359060200135610fa2565b604080516001600160a01b039092168252519081900360200190f35b61038f6004803603604081101561037957600080fd5b50803590602001356001600160a01b0316610fc9565b604080519115158252519081900360200190f35b6101e3610fe7565b6101e3610fec565b6101e3610ff1565b610221600480360360208110156103d157600080fd5b50356001600160a01b0316611015565b6101e3600480360360208110156103f757600080fd5b50356110cf565b6102216004803603604081101561041457600080fd5b50803590602001356001600160a01b03166110e6565b6102216004803603608081101561044057600080fd5b6001600160a01b0382358116926020810135821692604082013590921691810190608081016060820135600160201b81111561047b57600080fd5b82018360208201111561048d57600080fd5b803590602001918460018302840111600160201b831117156104ae57600080fd5b50909250905061113f565b6101e36114e6565b630a85bd0160e11b95945050505050565b6000818152602081905260409020600201545b919050565b60008281526020819052604090206002015461050d906105086114f8565b610fc9565b6105485760405162461bcd60e51b815260040180806020018281038252602f815260200180611f42602f913960400191505060405180910390fd5b61055282826114fd565b5050565b61055e6114f8565b6001600160a01b0316816001600160a01b0316146105ad5760405162461bcd60e51b815260040180806020018281038252602f8152602001806120bb602f913960400191505060405180910390fd5b610552828261156c565b7ff871896b17e9cb7a64941c62c188a4f5c621b86800e3d15452ece01ce56073df81565b7ff94915c6d1fd521cee85359239227480c7e8776d7caf1fc3bacad5c269b66a1481565b7fd4392723c111fcb98b073fe55873efb447bcd23cd3e49ec9ea2581930cd01ddc81565b60008051602061204b83398151915261063e816105086114f8565b6001906106de5760405162461bcd60e51b81526020600482019081528254600260001961010060018416150201909116046024830181905290918291604490910190849080156106cf5780601f106106a4576101008083540402835291602001916106cf565b820191906000526020600020905b8154815290600101906020018083116106b257829003601f168201915b50509250505060405180910390fd5b5060606106f26106ed846115db565b611656565b905060606107138260018151811061070657fe5b6020026020010151611656565b90507fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60001b6107568260008151811061074957fe5b60200260200101516117d8565b141561095457600061076e8260018151811061074957fe5b905060006001600160a01b031661078b8360028151811061074957fe5b6001600160a01b0316146107d05760405162461bcd60e51b815260040180806020018281038252602981526020018061206b6029913960400191505060405180910390fd5b600086905060006107e78460038151811061074957fe5b9050816001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b15801561082d57600080fd5b505afa158015610841573d6000803e3d6000fd5b505050506040513d602081101561085757600080fd5b5051156108d35760408051632142170760e11b81523060048201526001600160a01b038581166024830152604482018490529151918416916342842e0e9160648082019260009290919082900301818387803b1580156108b657600080fd5b505af11580156108ca573d6000803e3d6000fd5b5050505061094c565b816001600160a01b03166340c10f1984836040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b15801561093357600080fd5b505af1158015610947573d6000803e3d6000fd5b505050505b505050610f9a565b7ff871896b17e9cb7a64941c62c188a4f5c621b86800e3d15452ece01ce56073df60001b6109888260008151811061074957fe5b1415610c085760006109a08260018151811061074957fe5b905060606109c1846002815181106109b457fe5b6020026020010151611920565b905060608180602001905160208110156109da57600080fd5b8101908080516040519392919084600160201b8211156109f957600080fd5b908301906020820185811115610a0e57600080fd5b82518660208202830111600160201b82111715610a2a57600080fd5b82525081516020918201928201910280838360005b83811015610a57578181015183820152602001610a3f565b5050505091909101604052505082519293508a9150600090505b82811015610bfd576000848281518110610a8757fe5b60200260200101519050826001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610ad557600080fd5b505afa158015610ae9573d6000803e3d6000fd5b505050506040513d6020811015610aff57600080fd5b505115610b7b5760408051632142170760e11b81523060048201526001600160a01b038981166024830152604482018490529151918516916342842e0e9160648082019260009290919082900301818387803b158015610b5e57600080fd5b505af1158015610b72573d6000803e3d6000fd5b50505050610bf4565b826001600160a01b03166340c10f1988836040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b158015610bdb57600080fd5b505af1158015610bef573d6000803e3d6000fd5b505050505b50600101610a71565b505050505050610f9a565b7ff94915c6d1fd521cee85359239227480c7e8776d7caf1fc3bacad5c269b66a1460001b610c3c8260008151811061074957fe5b1415610f63576000610c548260018151811061074957fe5b905060006001600160a01b0316610c718360028151811061074957fe5b6001600160a01b031614610cb65760405162461bcd60e51b815260040180806020018281038252602981526020018061206b6029913960400191505060405180910390fd5b60008690506000610ccd8460038151811061074957fe5b9050816001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610d1357600080fd5b505afa158015610d27573d6000803e3d6000fd5b505050506040513d6020811015610d3d57600080fd5b505115610d9c5760408051632142170760e11b81523060048201526001600160a01b038581166024830152604482018490529151918416916342842e0e9160648082019260009290919082900301818387803b1580156108b657600080fd5b6060610dae866002815181106109b457fe5b90506060818060200190516020811015610dc757600080fd5b8101908080516040519392919084600160201b821115610de657600080fd5b908301906020820185811115610dfb57600080fd5b8251600160201b811182820188101715610e1457600080fd5b82525081516020918201929091019080838360005b83811015610e41578181015183820152602001610e29565b50505050905090810190601f168015610e6e5780820380516001836020036101000a031916815260200191505b506040525050509050836001600160a01b03166394d008ef8685846040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b0316815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610ef3578181015183820152602001610edb565b50505050905090810190601f168015610f205780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015610f4157600080fd5b505af1158015610f55573d6000803e3d6000fd5b505050505050505050610f9a565b60405162461bcd60e51b815260040180806020018281038252602a815260200180611f71602a913960400191505060405180910390fd5b505050505050565b6000828152602081905260408120610fc0908363ffffffff6119ea16565b90505b92915050565b6000828152602081905260408120610fc0908363ffffffff6119f616565b601481565b600081565b7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef81565b60025460ff161561105e576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b61109c6040518060400160405280601781526020017f4d696e7461626c65455243373231507265646963617465000000000000000000815250611a0b565b6110a7600082610548565b6110bf60008051602061204b83398151915282610548565b506002805460ff19166001179055565b6000818152602081905260408120610fc390611aa9565b600082815260208190526040902060020154611104906105086114f8565b6105ad5760405162461bcd60e51b8152600401808060200182810382526030815260200180611fc36030913960400191505060405180910390fd5b60008051602061204b83398151915261115a816105086114f8565b6001906111c05760405162461bcd60e51b81526020600482019081528254600260001961010060018416150201909116046024830181905290918291604490910190849080156106cf5780601f106106a4576101008083540402835291602001916106cf565b50602082141561129f576000838360208110156111dc57600080fd5b5060408051913580835290519092506001600160a01b038088169289821692918b16917fe13244aa06bdc79480ed5fdc6ebe2bb37202fcdf33ecf45dc449f4201f3dc0879181900360200190a460408051632142170760e11b81526001600160a01b038981166004830152306024830152604482018490529151918716916342842e0e9160648082019260009290919082900301818387803b15801561128157600080fd5b505af1158015611295573d6000803e3d6000fd5b5050505050610f9a565b6060838360208110156112b157600080fd5b810190602081018135600160201b8111156112cb57600080fd5b8201836020820111156112dd57600080fd5b803590602001918460208302840111600160201b831117156112fe57600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f8201169050808301925050505050505091929192905050509050846001600160a01b0316866001600160a01b0316886001600160a01b03167fdb55e3a0ae817693fd7b07170d81eab0eb2c239f36fcecbc98b6b58ac5667e7a846040518080602001828103825283818151815260200191508051906020019060200280838360005b838110156113ca5781810151838201526020016113b2565b505050509050019250505060405180910390a48051601481111561141f5760405162461bcd60e51b815260040180806020018281038252602c81526020018061201f602c913960400191505060405180910390fd5b60005b818110156114db57866001600160a01b03166342842e0e8a3086858151811061144757fe5b60200260200101516040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050600060405180830381600087803b1580156114b757600080fd5b505af11580156114cb573d6000803e3d6000fd5b5050600190920191506114229050565b505050505050505050565b60008051602061204b83398151915281565b335b90565b600082815260208190526040902061151b908263ffffffff611ab416565b15610552576115286114f8565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b600082815260208190526040902061158a908263ffffffff611ac916565b15610552576115976114f8565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b6115e3611e6d565b6000825111611639576040805162461bcd60e51b815260206004820152601f60248201527f524c505265616465723a20494e56414c49445f42595445535f4c454e47544800604482015290519081900360640190fd5b506040805180820190915281518152602082810190820152919050565b606061166182611ade565b6116b2576040805162461bcd60e51b815260206004820152601860248201527f524c505265616465723a204954454d5f4e4f545f4c4953540000000000000000604482015290519081900360640190fd5b60006116bd83611b0a565b905060608167ffffffffffffffff811180156116d857600080fd5b5060405190808252806020026020018201604052801561171257816020015b6116ff611e6d565b8152602001906001900390816116f75790505b50905060006117248560200151611b96565b855190915081146117665760405162461bcd60e51b81526004018080602001828103825260278152602001806120946027913960400191505060405180910390fd5b60006117758660200151611c2f565b60208701510190506000805b858110156117cc5761179283611b96565b91506040518060400160405280838152602001848152508582815181106117b557fe5b602090810291909101015291810191600101611781565b50929695505050505050565b60006117e382611ade565b15611835576040805162461bcd60e51b815260206004820181905260248201527f524c505265616465723a204445434f44494e475f4c4953545f41535f55494e54604482015290519081900360640190fd5b81516021101561188c576040805162461bcd60e51b815260206004820152601e60248201527f524c505265616465723a20494e56414c49445f55494e545f4c454e4754480000604482015290519081900360640190fd5b600061189b8360200151611b96565b835190915081146118dd5760405162461bcd60e51b81526004018080602001828103825260278152602001806120ea6027913960400191505060405180910390fd5b60006118ec8460200151611c2f565b8451602080870151830180519394509184900392919083101561191657826020036101000a820491505b5095945050505050565b606060006119318360200151611b96565b835190915081146119735760405162461bcd60e51b8152600401808060200182810382526028815260200180611f9b6028913960400191505060405180910390fd5b60006119828460200151611c2f565b845190915081900360608167ffffffffffffffff811180156119a357600080fd5b506040519080825280601f01601f1916602001820160405280156119ce576020820181803683370190505b5090506000816020019050611916848860200151018285611c92565b6000610fc08383611cdd565b6000610fc0836001600160a01b038416611d41565b806040516020018082805190602001908083835b60208310611a3e5780518252601f199092019160209182019101611a1f565b51815160209384036101000a60001901801990921691161790527f3a20494e53554646494349454e545f5045524d495353494f4e530000000000009190930190815260408051808303600519018152601a909201905280516105529550600194509201919050611e87565b6000610fc382611d59565b6000610fc0836001600160a01b038416611d5d565b6000610fc0836001600160a01b038416611da7565b6020810151805160009190821a9060c0821015611b00576000925050506104e5565b5060019392505050565b600080600090506000611b208460200151611c2f565b602085015185519181019250015b80821015611b8d57611b3f82611b96565b8201915080821115611b825760405162461bcd60e51b815260040180806020018281038252602c815260200180611ff3602c913960400191505060405180910390fd5b600190920191611b2e565b50909392505050565b80516000908190811a6080811015611bb15760019150611c28565b60b8811015611bc657607e1981019150611c28565b60c0811015611bf35760b78103600185019450806020036101000a85510460018201810193505050611c28565b60f8811015611c085760be1981019150611c28565b60f78103600185019450806020036101000a855104600182018101935050505b5092915050565b8051600090811a6080811015611c495760009150506104e5565b60b8811080611c64575060c08110801590611c64575060f881105b15611c735760019150506104e5565b60c0811015611c875760b5190190506104e5565b60f5190190506104e5565b80611c9c57611cd8565b5b60208110611cbc578251825260209283019290910190601f1901611c9d565b8251825160208390036101000a60001901801990921691161782525b505050565b81546000908210611d1f5760405162461bcd60e51b8152600401808060200182810382526022815260200180611f206022913960400191505060405180910390fd5b826000018281548110611d2e57fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000611d698383611d41565b611d9f57508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610fc3565b506000610fc3565b60008181526001830160205260408120548015611e635783546000198083019190810190600090879083908110611dda57fe5b9060005260206000200154905080876000018481548110611df757fe5b600091825260208083209091019290925582815260018981019092526040902090840190558654879080611e2757fe5b60019003818190600052602060002001600090559055866001016000878152602001908152602001600020600090556001945050505050610fc3565b6000915050610fc3565b604051806040016040528060008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611ec857805160ff1916838001178555611ef5565b82800160010185558215611ef5579182015b82811115611ef5578251825591602001919060010190611eda565b50611f01929150611f05565b5090565b6114fa91905b80821115611f015760008155600101611f0b56fe456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e744d696e7461626c654552433732315072656469636174653a20494e56414c49445f5349474e4154555245524c505265616465723a2042595445535f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b65524c505265616465723a204e554d5f4954454d535f4445434f4445445f4c454e4754485f4d49534d415443484d696e7461626c654552433732315072656469636174653a20455843454544535f42415443485f4c494d4954241ecf16d79d0f8dbfb92cbc07fe17840425976cf0667f022fe9877caa831b084d696e7461626c654552433732315072656469636174653a20494e56414c49445f5245434549564552524c505265616465723a204c4953545f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66524c505265616465723a2055494e545f4445434f4445445f4c454e4754485f4d49534d41544348a164736f6c6343000606000a","storage":{"0x1":"0x63","0x2":"0x1","0x73d5d1a274bdea1400ad3ea4d982f594abdfd528cde1486b6c617faa3ec116":"0x1","0x89011777cfe6194dd982545e7eb24725dfe9a1aacae299c76fc48ef5017ae650":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x89011777cfe6194dd982545e7eb24725dfe9a1aacae299c76fc48ef5017ae651":"0x27935e7e85db3c4e7885eb828b9e889ba69a4e7f","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0x1","0xb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6":"0x4d696e7461626c654552433732315072656469636174653a20494e5355464649","0xb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf7":"0x4349454e545f5045524d495353494f4e53000000000000000000000000000000","0xba75a66b8132bebab85d36fd3638083da57ae3d78fbcd8cc41f73514287dadaf":"0x1","0xe6c7d8231a06d7cb67831aeabcbd43ba24e5e4c6569cf23405f1e558de8580e0":"0x2","0xe84508f2c7fa9c351146748b3025cb78b45df37d868e48c6a75102fecdeee645":"0x2","0xe84508f2c7fa9c351146748b3025cb78b45df37d868e48c6a75102fecdeee647":"0x0","0xf0df3dcda05b4fbd9c655cde3d5ceb211e019e72ec816e127a59e7195f2cd7f5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x5cc819c9915eadfcebd76952b8c1bc36cadd7376":{"nonce":2,"balance":"0x0","code":"0x608060405260043610610103575f3560e01c8063a900866b11610092578063f07ec37311610062578063f07ec373146102f7578063f2d12b1214610316578063f47b774014610329578063fb0f3ee114610116578063fd9f1e101461034c575f80fd5b8063a900866b1461028a578063b3a34c4c146102be578063e7acab24146102d1578063ed98a574146102e4575f80fd5b80637423eb3c116100d85780637423eb3c146101f757806379df72bd1461020b57806387201b411461022a578063881477321461024b578063a81744041461026a575f80fd5b801561011657806306fdde031461013e57806346423aa71461015f5780635b34b966146101d5575f80fd5b366101125761011061036b565b005b5f80fd5b610129610124366004615115565b6103f9565b60405190151581526020015b60405180910390f35b348015610149575f80fd5b50610152610408565b604051610135919061518f565b34801561016a575f80fd5b506101b36101793660046151a1565b5f9081526001602052604090205460ff808216926101008304909116916001600160781b03620100008204811692600160881b9092041690565b6040805194151585529215156020850152918301526060820152608001610135565b3480156101e0575f80fd5b506101e9610417565b604051908152602001610135565b348015610202575f80fd5b50610110610420565b348015610216575f80fd5b506101e96102253660046151b8565b6104c1565b61023d61023836600461524c565b6104f8565b6040516101359291906153f0565b348015610256575f80fd5b5061012961026536600461543f565b610571565b61027d61027836600461547d565b61058f565b60405161013591906154e3565b348015610295575f80fd5b506101e96102a43660046154f5565b6001600160a01b03165f9081526002602052604090205490565b6101296102cc36600461550e565b61062a565b6101296102df366004615553565b6106a3565b61023d6102f23660046155d7565b6106e1565b348015610302575f80fd5b506101e96103113660046154f5565b610784565b61027d610324366004615677565b6107a1565b348015610334575f80fd5b5061033d6107ea565b60405161013593929190615719565b348015610357575f80fd5b5061012961036636600461543f565b610801565b7f000000000000000000000000000000000000000000000000000000000000000180156103b357600263929eee145c146103b05763a61be9f05f52346020526024601cfd5b50565b63929eee1454806103e057600263929eee145c146103dc5763a61be9f05f52346020526024601cfd5b5050565b600381146103dc5763a61be9f05f52346020526024601cfd5b5f61040261080c565b92915050565b60606104126109c0565b905090565b5f6104126109d8565b63929eee14546001147f000000000000000000000000000000000000000000000000000000000000000180610453575080155b1561047157604051630f45b98b60e41b815260040160405180910390fd5b61049a7f000000000000000000000000145908bbcfc7b258e4d4d9a586f6e3249ae80216610a45565b6104b7576040516370a4078f60e01b815260040160405180910390fd5b5f63929eee145550565b5f806104cd6004610aa3565b90506104f16104e282610ab35b63ffffffff16565b610140830135610b30565b3590565b9392505050565b60608061055d61051361050b6004610aa3565b610c746104da565b61052a61052260046020610cdc565b610cfa6104da565b61054161053960046040610cdc565b610d526104da565b61055061053960046060610cdc565b89338a15028a0189610daa565b915091509b509b9950505050505050505050565b5f6104f161058a6105826004610aa3565b610de46104da565b610e3c565b606061061f6105a96105a16004610aa3565b610f5d6104da565b604080515f8082526020820190925290610601565b6105ee6040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816105be5790505b5061061961061160046020610cdc565b610fb56104da565b3361100d565b90505b949350505050565b5f6104f161064361063b6004610aa3565b61104b6104da565b604080515f808252602082019092529061069b565b6106886040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816106585790505b5084336110c1565b5f6106d76106bc6106b46004610aa3565b6112406104da565b6106cb61052260046020610cdc565b853386150286016110c1565b9695505050505050565b6060806107736106f46105a16004610aa3565b604080515f808252602082019092529061074c565b6107396040805160a081019091525f808252602082019081526020015f81526020015f8152602001606081525090565b8152602001906001900390816107095790505b5061075c61053960046020610cdc565b61076b61053960046040610cdc565b883389610daa565b915091509850989650505050505050565b6001600160a01b0381165f90815260208190526040812054610402565b60606107dc6107b361050b6004610aa3565b6107c261052260046020610cdc565b6107d161061160046040610cdc565b33861502860161100d565b90505b979650505050505050565b60605f806107f661129c565b925092509250909192565b5f6104f183836112e8565b5f61012435600281901c90600316600182118334158214806108315761083134611423565b506003841160a0810260240135906502030203010160d01b861a905f630101020360d01b881a6108648882898888611434565b9096509150506101c4600583901b01355f87600581111561088757610887615329565b036108bc5760443560243517156108a557636ab37ce75f526004601cfd5b6108af8482611751565b6108b7611809565b61099d565b6040805160208082528183019092525f9160208201818036833701905050905060028a60058111156108f0576108f0615329565b036109135761090e60c4356084353360e435610104355b8787611889565b610988565b60038a600581111561092757610927615329565b036109455761090e60c4356084353360e435610104355b87876118d4565b60048a600581111561095957610959615329565b036109735761090e60243533608435604435606435610907565b6109886024353360843560443560643561093e565b610992848261190a565b61099b816119c4565b505b6109a88689846119e8565b6109b0611a5e565b6001995050505050505050505090565b6060602080526707536561706f727460475260606020f35b5f6109e1611ab1565b600143034060801c335f525f60205260405f208054820192508281555050336001600160a01b03167f721c20121297512b72821b97f5326877ea8ecf4bb9948fea5bfcb6453074d37f82604051610a3a91815260200190565b60405180910390a290565b5f816001600160a01b0316600a5a610a5d9190615773565b6040515f8181818686fa925050503d805f8114610a95576040519150601f19603f3d011682016040523d82523d5f602084013e610a9a565b606091505b50909392505050565b5f813563ffffffff168201610402565b5f610ac661016060408051918201905290565b9050610ad58282610140611b28565b610af2610aeb610ae6846040610cdc565b611b31565b6040830152565b5f610b06610b01846060610cdc565b611b84565b9050610b13816060840152565b610b26610b1e825190565b610140840152565b50919050565b0190565b610140820151604080519084015180515f939284927fa66999307ad1bb4fde44d13a5d710bd7718e0c87c1eef68a571629fbf5b93d0292602090910190845b81811015610b9c578251601f1901805186825260c082208652905260209384019390920191600101610b6f565b508060051b6040512094505050505f7f42d81c6929ffdc4eb27a0808e40e82516ad42296c166065de7f812492304ff6e915060405160206060890151015f5b86811015610c08578151601f1901805186825260e082208552905260209283019290910190600101610bdb565b505060408051600587901b9020601f198a0180517ffa445660b7e21515a59617fcd68910b487aa5808b8abda3d78bc85df364b2c2f8252928b01805197815260608c018051938152610140909c019a8b5261018082209390915295909552939097525050925250919050565b5f8063ffffffff8335169050600581901b610c986020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610cca610cc4610cbf8484610cdc565b611240565b82850152565b602001610ca7565b5050505050919050565b5f6104f163ffffffff610cf46104ed8686610b2c8516565b16840190565b5f8063ffffffff8335169050600581901b610d1e6020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610d4a610cc4610d458484610cdc565b611bc7565b602001610d2d565b5f8063ffffffff8335169050600581901b610d766020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610da2610cc4610d9d8484610cdc565b611c09565b602001610d85565b60608036155f80610dbe8c8c85898b611c4c565b91509150610dd18c8b8b8b8b8787612029565b9450945050505097509795505050505050565b5f8063ffffffff8335169050600581901b610e086020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610e34610cc4610e2f8484610cdc565b61215b565b602001610e17565b5f610e45611ab1565b5f805f80855190505f5b81811015610f50575f878281518110610e6a57610e6a615792565b60209081029190910101518051909150600481608001516004811115610e9257610e92615329565b03610e9e575050610f48565b80519450610eab8161219e565b5f8181526001602052604081209850909650610ecd90879089903615156121d7565b50865460ff16610f455780610140015181606001515114610ef057610ef0612265565b610eff85878460200151612272565b865460ff191660011787556040517ff280791efe782edcf06ce15c8f4dff17601db3b88eb3805a0db7d77faf757f0490610f3c9088908490615895565b60405180910390a15b50505b600101610e4f565b5060019695505050505050565b5f8063ffffffff8335169050600581901b610f816020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257610fad610cc4610fa88484610cdc565b61104b565b602001610f90565b5f8063ffffffff8335169050600581901b610fd96020820160408051918201905290565b828152925060208381019085015f5b83811015610cd257611005610cc46110008484610cdc565b61230e565b602001610fe8565b60605f36151590505f806110258888858b5189611c4c565b9150915061103282612341565b61103f8887848885612380565b98975050505050505050565b5f61105e61020060408051918201905290565b60a0810180825290915061107a61107484610aa3565b82612453565b61108660016020840152565b61109260016040840152565b6110af6110a86110a3856020610cdc565b612489565b6060840152565b610b266110ba6124b1565b6080840152565b835160808101515f91906110e860048260048111156110e2576110e2615329565b146124cb565b5f80806110f78a36151561256c565b60408051600180825281830190925293965091945092505f9190816020015b61111e615027565b8152602001906001900390816111165790505090508a815f8151811061114657611146615792565b602002602001018190525061115b818b612764565b6111678684848b6128dd565b6040805160018082528183019092525f91602080830190803683375091925050503615156004878181111561119e5761119e615329565b146111c1576111af8d83885f6129dd565b6111bb86868684612a2f565b506111d3565b6111d0888e6080015183612b33565b95505b6111de888c8c612c03565b85825f815181106111f1576111f1615792565b6020026020010181815250506112088d8388612d26565b61122586895f01518a602001518d8c604001518d60600151612df3565b61122d611a5e565b5060019c9b505050505050505050505050565b5f61125361020060408051918201905290565b905061126760208381019083016040611b28565b60a0810180825261127a61107484610aa3565b61128b6110a86110a3856060610cdc565b610b266110ba6110a3856080610cdc565b60605f805f6112a9612e58565b90505f7f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c905060605f5281602052806040526303312e3660635260a05ff35b5f6112f1611ab1565b5f8083815b81811015611408573687878381811061131157611311615792565b90506020028101906113239190615977565b90505f61133360208301836154f5565b90505f61134660408401602085016154f5565b90505f61135960a0850160808601615996565b905081331483331417156004821417871796505f61138d61138261137a8790565b610ab36104da565b866101400135610b30565b5f8181526001602052604090819020805461ffff19166101001781559051909a509091506001600160a01b0380851691908616907f6bacc01dbe442496068f7d234edd811f1a5f833243e0aec824f86ab861f3c90d906113f09085815260200190565b60405180910390a385600101955050505050506112f6565b5050801561141857611418612f35565b506001949350505050565b63a61be9f05f52806020526024601cfd5b5f8061143f5f6124cb565b611447612f42565b426101643511154261014435111715611475576321ccfeb75f5261014435602052610164356040526044601cfd5b610204356102643510156114905763466aa6165f526004601cfd5b7f42d81c6929ffdc4eb27a0808e40e82516ad42296c166065de7f812492304ff6e608081905260a08790526060602460c037604060646101203760e060802061016052610264356102043560051b6102a0016001820181526020810190508881526080602460208301376101608860a0528760c0525f60e0525f6102043593505f5b84811015611566578060400261028401602081610100376040816101203760208101358317925060208401935060e0608020845260a0850194508b85528a6020860152604081606087013750600101611512565b6001850160051b610160206060526102643594505b848110156115b6578060400261028401925060a0840193508a845289602085015260408360608601376020830135919091179060010161157b565b506001600160a01b038111156115d3576339f3e3fd5f526004601cfd5b50505050505f7fa66999307ad1bb4fde44d13a5d710bd7718e0c87c1eef68a571629fbf5b93d029050806080528360a052606060c460c0376020610104610120375060c06080205f9081526020812060e05260843590611647826001600160a01b03165f9081526020819052604090205490565b7ffa445660b7e21515a59617fcd68910b487aa5808b8abda3d78bc85df364b2c2f60808190529091506040608460a03760605161010052896101205260a061014461014037816101e05261018060802094505050506102043560051b61018001828152336020820152608060408201526101206060820152600160808201528360a0820152606060c460c083013760a061026435026101e00160a4356084357f9d9af8e38d66c62e2c12f0225249fd9d721c54b83f48d9352c97c6cacdcb6f318385a35f60605260608101820160405250505f61172383612f8d565b905061172f8389612fde565b7101000000000000000000000000000001000182559150509550959350505050565b60c43560843560e4356101043584156117b9575f6040519050632671a55160e11b815260206004820152600160248201528660448201528460648201528360848201523360a48201528260c48201528160e48201526117b38682610104613033565b50611801565b60028660058111156117cd576117cd615329565b036117f457806001146117e3576117e3816130ea565b6117ef848433856130fb565b611801565b61180184843385856131b0565b505050505050565b346064356084356102643560061b5f80805b8381101561185a5761028481013592506102a481013591508683111561184357611843613287565b82870396506118528284613294565b60400161181b565b508585111561186b5761186b613287565b6118758486613294565b848611156118015761180133868803613294565b61189381836132ca565b816118ba57826001146118a9576118a9836130ea565b6118b5878787876130fb565b6118cb565b6118cb828260028a8a8a8a8a6132e8565b50505050505050565b6118dd83613367565b6118e781836132ca565b816118f9576118b587878787876131b0565b6118cb828260038a8a8a8a8a6132e8565b5f805f805f861561192f57505060843592503391505060c4356101043560e435611944565b50339350506084359150506024356064356044355b801561195257611952613379565b50600586901b6101e403356102643560061b5f80805b838110156119a95761028481013592506102a481013591508a156119935761199083876159b4565b95505b6119a1878a8486898f613386565b604001611968565b506119b886898988888e613386565b50505050505050505050565b60408151146119d05750565b5f6119dc826020015190565b90506103dc81836133bb565b611a048260a4355b331415600182116004909210919091161690565b15611a5957805f611a13825190565b9050608081901c63ffffffff8216611a3484826317b1f94282526001905250565b601c840163fb5014fc6060529350611a5060a4358886856133df565b5f6060526118cb565b505050565b7f00000000000000000000000000000000000000000000000000000000000000018015611a8f575f63929eee145d50565b63929eee145480611aa5575f63929eee145d5050565b50600163929eee145550565b7f00000000000000000000000000000000000000000000000000000000000000018015611af05763929eee145c156103b057637fa8a9875f526004601cfd5b63929eee145480611b135763929eee145c156103dc57637fa8a9875f526004601cfd5b600181146103dc57637fa8a9875f526004601cfd5b80838337505050565b5f63ffffffff8235166040519150808252602082018160051b81018060a084026020870183378293505b81841015611b745780845260209093019260a001611b5b565b60405250919392505050565b9052565b5f63ffffffff8235166040519150808252602082018160051b81018060c084026020870183378293505b81841015611b745780845260209093019260c001611bae565b5f611bd960a060408051918201905290565b9050611be782826080611b28565b611c04611bfd611bf8846080610cdc565b613427565b6080830152565b919050565b5f63ffffffff8235166040519150808252602082018160051b8101808360061b6020870183378293505b81841015611b7457808452602090930192604001611c33565b60605f611c5960016124cb565b86515f90600160e61b82351690806001600160401b03811115611c7e57611c7e61574b565b604051908082528060200260200182016040528015611ca7578160200160208202803683370190505b50945060010160051b91505f60205b83811015611ea8575f611ccc8c83613cce6104da565b90505f805f611cdb848e61256c565b6001600160781b0382166020880152919450925090505f829003611d025750505050611ea0565b6001600160781b0381166040808601919091528a8601849052845160a081015160c0820151608083015192909301518051600184119d909d179c600490931099509092915f5b81811015611dea575f838281518110611d6357611d63615792565b602002602001015190508b8151108d179c505f611d858989846080015161345e565b90508160800151826060015103611da25760608201819052611db7565b611db18989846060015161345e565b60608301525b5f611dd08360600151838a8a611dcb361590565b61349a565b606084018190526080909301929092525050600101611d48565b5087516060015180515f5b81811015611e94575f838281518110611e1057611e10615792565b602002602001015190505f611e2a8b8b846080015161345e565b90508160800151826060015103611e475760608201819052611e5c565b611e568b8b846060015161345e565b60608301525b5f611e718360600151838c8c611dcb36151590565b6060840181905260a0840180516080909501949094529092525050600101611df5565b50505050505050505050505b602001611cb6565b50506001600160e61b018103611ec057611ec06134ed565b50611ecb8888612764565b5f8060205b8381101561200e578581015192508215612006575f611ef28c83613cce6104da565b9050885f03611f0d575f878301819052602090910152612006565b60048151608001516004811115611f2657611f26615329565b14611fa957611f3f8188866001600587901c038e6134fa565b611f55575f878301819052602090910152612006565b602080820151604083015183516080810151930151611f8e9388936001600160781b039081169316913314156001909111168e17612a2f565b611fa4575f878301819052602090910152612006565b611fd4565b611fbb815f015182608001518c612b33565b878301819052935083611fd4575f602090910152612006565b886001900398505f815f01519050611fff85825f015183602001518c85604001518660600151612df3565b6001935050505b602001611ed0565b508061201c5761201c613555565b5050509550959350505050565b85518551606091829161203c81836159c7565b6001600160401b038111156120535761205361574b565b60405190808252806020026020018201604052801561208c57816020015b61207961505a565b8152602001906001900390816120715790505b5092505f5b828110156120e4576120bf8c5f8d84815181106120b0576120b0615792565b60200260200101518c8c613562565b8482815181106120d1576120d1615792565b6020908102919091010152600101612091565b505f5b8181101561213d576121168c60018c848151811061210757612107615792565b60200260200101518c5f613562565b848483018151811061212a5761212a615792565b60209081029190910101526001016120e7565b5061214b8b84888a896135b1565b9350505097509795505050505050565b5f61216c6040808051918201905290565b905061218661218261217d84610aa3565b61389a565b8252565b611c046121976110a3846020610cdc565b6020830152565b5f6121b38260600151518361014001516138b9565b81516001600160a01b03165f90815260208190526040902054610402908390610b30565b82545f90610100900460ff16156121fe5781156121f7576121f7856138c9565b505f610622565b83546201000090046001600160781b0316801561225957831561222957612224866138da565b612259565b8454600160881b90046001600160781b0316811061225957821561225057612250866138eb565b5f915050610622565b50600195945050505050565b632165628a5f526004601cfd5b33831480156122815750505050565b5f61228a612e58565b61190160f01b5f9081526002828152602287815260428320908390528651939450929190601f601d840116106102e260621984011016156122f4576122cf86886138fc565b61190160f01b5f908152600286905260228281526042822091905290975090506122f7565b50815b612304888285858a613992565b5050505050505050565b5f61231f6040808051918201905290565b9050612330612182610d9d84610aa3565b611c04612197610d9d846020610cdc565b80518060051b6040019050602082038051602082527f4b9f2d36e1b4c93de62cc077b00b1a91d84b6c31b4a14e012718dcca230689e78383a190525050565b8351606090806001600160401b0381111561239d5761239d61574b565b6040519080825280602002602001820160405280156123d657816020015b6123c361505a565b8152602001906001900390816123bb5790505b5091505f5b81811015612439575f8782815181106123f6576123f6615792565b6020026020010151905061241389825f0151836020015185613adb565b84838151811061242557612425615792565b6020908102919091010152506001016123db565b5061244787838787876135b1565b50505b95945050505050565b6124608282610160611b28565b612471610aeb610ae6846040610cdc565b6103dc612482610b01846060610cdc565b6060830152565b6040518135601f0163ffffffe01660200180838337913563ffffffff16815290810160405290565b5f6124c3602060408051918201905290565b5f8152905090565b7f000000000000000000000000000000000000000000000000000000000000000180156125185763929eee145c1561250a57637fa8a9875f526004601cfd5b8160010163929eee145d5050565b63929eee14548061254a5763929eee145c1561253b57637fa8a9875f526004601cfd5b8260010163929eee145d505050565b6001811461255f57637fa8a9875f526004601cfd5b505060020163929eee1455565b5f805f80855f015190506125898160a001518260c0015187613c80565b61259c57505f925082915081905061275d565b602086015160408701516001600160781b0391821694501691505f6004826080015160048111156125cf576125cf615329565b036125fc57600183850218905080156125ea576125ea613ca3565b506001935083925082915061275d9050565b50818311831517801561261157612611613ca3565b608082015160011615848411161561262b5761262b613cb0565b6126348261219e565b5f81815260016020526040812091965061265290879083908a6121d7565b61266557505f935083925061275d915050565b805460ff1661268057612680835f0151878a60600151612272565b8054608881901c8061269457869150612757565b6001600160781b038260101c169150600186036126b8578181039650809550612757565b8086036126d357908601858103868211029096039590612757565b80860296810291909502810186810387821102918290039695919003906001600160781b0386111561275757612717565b5f5b8215610b2657908290069190612706565b61272a6127248784612704565b88612704565b8015019687900496909504946001600160781b0386111561275757634e487b715f5260116020526024601cfd5b50505050505b9250925092565b805182515f5b82811015612853575f84828151811061278557612785615792565b602002602001015190505f815f015190508381106127aa576127aa8260200151613cbd565b5f8782815181106127bd576127bd615792565b6020026020010151905080602001516001600160781b03165f036127e35750505061284b565b80516040808201519085015163bfb3f8ce5f8760200151600181111561280b5761280b615329565b14612827575f61281c856060613cce565b9350636088d7de9150505b8251821061283857805f526004601cfd5b612843838389613cd9565b505050505050505b60010161276a565b505f5b818110156128d6575f85828151811061287157612871615792565b6020026020010151905080602001516001600160781b03165f0361289557506128ce565b8051608081015160608201516128b29085908363a8930e9a613d8c565b6128ca8483604001518363d69293326104da613d8c90565b5050505b600101612856565b5050505050565b60a084015160c08501516040860151515f805b8281101561295a575f8960400151828151811061290f5761290f615792565b602002602001015190505f815f01519050801584179350505f612946826060015183608001518c8c8b8b612941361590565b613df3565b6060830152506080018690526001016128f0565b5060808801516004811082168015612974576129746134ed565b505050506060860151515f5b81811015612304575f8860600151828151811061299f5761299f615792565b602002602001015190505f6129c4826060015183608001518b8b8a8a61294136151590565b60608301525060a0810151608090910152600101612980565b8351608081015160208201513314156001821160049092109190911616156128d6575f80612a12858489608001518988613e2e565b63fb5014fc6060529092509050611a5083602001518684846133df565b5f848152600160205260408120805482908290608881901c80612a5457889150612adc565b6001600160781b038260101c169150808803612a7857908801878111935090612adc565b97880297808802979190910288018781119350906001600160781b038083119089111715612adc57612aaa8883612704565b8015019788900497909104906001600160781b038083119089111715612adc57634e487b715f5260116020526024601cfd5b508215612b15578515612b09576040516310fda3e160e01b8152600481018a905260240160405180910390fd5b5f945050505050610622565b8660881b8160101b1760011782556001945050505050949350505050565b5f83610140015184606001515114612b4d57612b4d612265565b83515f8080612b5c8888613fac565b915091505f8082845f885af16001600160a01b0385165f908152600260205260409020805460018101909155606086901b189550925082612bbb578515612bae57612ba5614056565b612bae8561409d565b505f93506104f192505050565b505050505f805f612bd8876040015188606001516104da6140ae90565b925092509250825f14612bee57612bee8461409d565b60408701919091526060860152509392505050565b6040805160208082528183019092525f916020820181803683375050506040850151519091505f5b81811015612c7b575f86604001518281518110612c4a57612c4a615792565b60200260200101519050846080820152612c7281885f0151896101200151876104da61432790565b50600101612c2b565b50506060840151515f90815b81811015612d09575f87606001518281518110612ca657612ca6615792565b602002602001015190505f6005811115612cc257612cc2615329565b81516005811115612cd557612cd5615329565b03612cf1574793508381606001511115612cf157612cf1613287565b612d00813389886143276104da565b50600101612c87565b5050612d14826119c4565b504780156128d6576128d63382613294565b8251608081015160208201515f92839283928392916004811060019091111633909114151615612d8857612d69612d6361010083015190565b5190565b8861441c565b9093509150612d7a60208201612d5f565b945063fb5014fc9350612dd4565b600481608001516004811115612da057612da0615329565b0361230457805194505f8560601b9050612dc187838b608001518b8561445d565b639397928596509094509250612dd49050565b612dde6060859052565b612dea858785856133df565b5f606052612304565b60608290506060829050856001600160a01b0316876001600160a01b03167f9d9af8e38d66c62e2c12f0225249fd9d721c54b83f48d9352c97c6cacdcb6f318a888686604051612e469493929190615a13565b60405180910390a35050505050505050565b5f7f00000000000000000000000000000000000000000000000000000000000005394614612f10575060408051608080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f5f9081527f32b5c112df393a49218d7552f96b2eeb829dfb4272f4f24eef510a586b85feef6020527f95f740a33d720b7cd93c75d515ac95ca3bbaa2594cce46ea48e00974ea8fcd14855246606090815230845260a08220949095529093529190915290565b507f8bebed3dbe91a82da0dc94c8d370c160ad6db1b32164303e65b8544bae7e2f5590565b63fed398fc5f526004601cfd5b600435602014610224356102401416610244356102606102643560061b01141660186101243510600160a01b60843560a4351760c4356024351717101616806103b0576103b0614528565b5f8181526001602081905260409091209060843590612fb290849084903615156121d7565b50815460ff16610b2657610b268184612fd9602463ffffffff6102443516016124896104da565b612272565b5f612feb8260a4356119f0565b15610402575f805f612ffc86614535565b63fb5014fc6060529194509250905061301c60a43587601c8601856133df565b5f60605260209190910160801b1781529392505050565b604080517f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c60ff60a01b175f90815260208690527f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f83526055600b20919092526001600160a01b031690505f805f805260205f85875f875af191505f519050816130c8576130bf614056565b6130c8836145ed565b6001600160e01b03198116632671a55160e11b146118015761180186846145fe565b6369f958275f52806020526024601cfd5b833b61311257635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af1806131a2573d1561318057601f3d0160051c8260051c8160030281831115613169578183036003028280028480020360091c01015b5a60208201101561317c573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b6131c757635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af18061326c573d1561324b57601f3d0160051c8560051c8160030281831115613234578183036003028280028480020360091c01015b5a602082011015613247573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b638ffff9805f526004601cfd5b61329d81613367565b5f805f805f85875af1905080611a59576132b5614056565b63bc806b965f5282602052816040526044601cfd5b5f6132d6836020015190565b9050818114611a5957611a59836119c4565b5f60208851036133225750604080885260208089018a9052632671a55160e11b918901919091526044880152600160648801819052613331565b50606487018051600101908190525b603c60c082028901038781528660208201528560408201528460608201528360808201528260a082015250505050505050505050565b806103b0576391b3e5145f526004601cfd5b636ab37ce75f526004601cfd5b61338f83613367565b61339981836132ca565b816133aa576117ef86868686614613565b611801828260018989895f8a6132e8565b6064810151604082019060c0026044016133d6848383613033565b50506020905250565b5f806001600160e01b03198451165f805260205f85875f8b5af15f51909350149050816134185761340e614056565b846080526024607cfd5b8061180157846080526024607cfd5b5f8063ffffffff83351690506001810160051b61344a8160408051918201905290565b9250613457848483611b28565b5050919050565b5f82840361346d5750806104f1565b82848309156134835763c63cf0895f526004601cfd5b5f61348e8584615aaf565b93909304949350505050565b5f8486146134e357838303428590038082035f6134b7838a615aaf565b6134c1838c615aaf565b6134cb91906159c7565b9050858487830304018115150294505050505061244a565b5092949350505050565b6312d3f5a35f526004601cfd5b8451608081015160208201515f92916004811060019091111633909114151615610f50575f8061353187848b608001518b8a613e2e565b9150915061354b836020015188848463fb5014fc8a614707565b935050505061244a565b63d5da9a1b5f526004601cfd5b61356a61505a565b83515f0361357b5761357b85614774565b5f85600181111561358e5761358e615329565b036135a45761359f86858385614785565b61244a565b61244a86858333876148f5565b84516060905f816001600160401b038111156135cf576135cf61574b565b6040519080825280602002602001820160405280156135f8578160200160208202803683370190505b506040805160208082528183019092529192505f9190602082018180368337505089519192505060010160051b60205b81811015613687575f61363e8b83613cce6104da565b8051606081015191925090801561367c57478111825115161561366857638ffff9805f526004601cfd5b61367c828460200151856040015189614327565b505050602001613628565b50505f5b838110156137f3575f8a82815181106136a6576136a6615792565b6020026020010151905080602001516001600160781b03165f036136ed575f8483815181106136d7576136d7615792565b91151560209283029190910190910152506137eb565b600184838151811061370157613701615792565b911515602092830291909101909101528051604081015180515f5b81811015613786575f83828151811061373757613737615792565b6020026020010151905080606001515f1461377357608081018051908e9052855161012087015161376d9184918c6143276104da565b60808201525b608081015160609091015260010161371c565b505050606081015180515f5b818110156137e5575f8382815181106137ad576137ad615792565b602002602001015190505f81606001519050805f146137d1576137d1888483614a2c565b5060a0810151606090910152600101613792565b50505050505b60010161368b565b506137fd816119c4565b47801561380e5761380e3382613294565b8515613884575f5b848110156138825783818151811061383057613830615792565b60200260200101511561387a5761387a8b828151811061385257613852615792565b60200260200101518a8b848151811061386d5761386d615792565b6020026020010151612d26565b600101613816565b505b61388c611a5e565b509098975050505050505050565b5f6138ad61016060408051918201905290565b9050611c048282612453565b808210156103dc576103dc614a45565b631a5155745f52806020526024601cfd5b63ee9e0e635f52806020526024601cfd5b6310fda3e15f52806020526024601cfd5b5f805f84516001811660410380820360051c9250808752806020018701915050805160e81c6003820191506001811660051b868152825160208218525060015b838110156139685760405f2082821c60051b60209081169182529384018051919094185260010161393c565b50505060405f2091505f61397b82614a52565b5f9081526020939093525050604090209392505050565b5f805f528151602083038051826041035f600182116139f557604087015160608801515f1a83156139d657601b8260ff1c0190506001600160ff1b03821660408a01525b88528a855260205f60808760015afa508385528588526040880152505f515b8a148a1515169450849050613abe57858552604082526044850380516040870351630b135d3f60e11b835289604089035260205f60648b01858f5afa96508615613ab257630b135d3f60e11b5f5114613ab2578b3b15613a5c57634f7fb80d5f526004601cfd5b6001866041031115613a7557638baa579f5f526004601cfd5b64010100000060608901515f1a1a15604187141615613aa557631f003d0a5f5260608801515f1a6020526024601cfd5b63815e1d645f526004601cfd5b8385529152603f198601525b5050508061180157613ace614056565b634f7fb80d5f526004601cfd5b613ae361505a565b8251158451151715613afc576398e9db6e5f526004601cfd5b613b0461505a565b613b118685835f806148f5565b805160608101515f03613b2657509050610622565b613b368787858460800151614785565b82516040828101519082015160208085015190840151855185511891181791181715613b6d5763bced929d5f52846020526024601cfd5b806060015182606001511115613bf4575f865f81518110613b9057613b90615792565b60200260200101519050816060015183606001510389825f015181518110613bba57613bba615792565b60200260200101515f015160600151826020015181518110613bde57613bde615792565b6020026020010151606001818152505050613c75565b5f875f81518110613c0757613c07615792565b60200260200101519050826060015182606001510389825f015181518110613c3157613c31615792565b60200260200101515f015160400151826020015181518110613c5557613c55615792565b602002602001015160600181815250508260600151826060018181525050505b505050949350505050565b428084111590831116818015613c94575080155b156104f1576104f18484614e61565b635a052b325f526004601cfd5b63a11b63ff5f526004601cfd5b63133c37c65f52806020526024601cfd5b5f6104f18284015190565b5f838381518110613cec57613cec615792565b602002602001015190505f815f01519050613d078160031090565b613d1357613d13614e76565b60408201518015613d3657613d318460600151828660800151614e83565b613d49565b60808401515115613d4957613d49614ecd565b6004821460030383816005811115613d6357613d63615329565b90816005811115613d7657613d76615329565b9052505050606090920151604090910152505050565b82515f5b81811015611801575f858281518110613dab57613dab615792565b60209081029190910101518051604082015191925090600382116004881415821515171615613de557855f5288602052836040526044601cfd5b505050806001019050613d90565b5f868803613e0d57613e0686868961345e565b90506107df565b6107dc613e1b87878b61345e565b613e2688888b61345e565b86868661349a565b5f805f613e39614eda565b6301e4d72a815260208082015260408101898152336060830152601c820194509091508751604082015287613e79613e7260a083015190565b60e0840152565b613e8f613e8760c083015190565b610100840152565b613ea5613e9d60e083015190565b610120840152565b610140613eb3816060850152565b5f613ebf604084015190565b90505f613ece82848701614ee4565b928301929050613edf836080870152565b5f613eeb606086015190565b90505f613efa82868901614f4a565b948501949050613f0b8560a0890152565b5f613f188e878a01614faf565b959095019450613f298560c0890152565b8685015f613f378e83614fce565b602497019687019a50613f539050613f4e8c8c0190565b614ffe565b8060408b901b60808b901b17178f610100018181525050613f7d8c82611b8090919063ffffffff16565b60058c8e51613f8c91906159b4565b613f97911b8b6159b4565b99505050505050505050509550959350505050565b5f8083613fb7614eda565b639891976581523360208201908152608060408301819052601c9092019450905f613fe3604085015190565b90505f613ff282848601614ee4565b928301929050614003836040860152565b5f61400f606087015190565b90505f61401e82868801614ee4565b94850194905061402f856060880152565b895f61403d82898901614faf565b9a9d96909a016004019b50949950505050505050505050565b3d1561409b57601f3d0160051c60405160051c8160030281831115614088578183036003028280028480020360091c01015b5a602082011015611a59573d5f803e3d5ffd5b565b63939792855f52806020526024601cfd5b60603d105f8080808080866141205760405f803e5f51935060205192503d60208501113d60208501118082179850505086614120576020845f3e5f51915060208360203e60205190508160071b60208501018160a0026020850101803d10823d101761ffff8486171117985050505f80525b86614152575f8061413584602088018d61415b565b9250975061414783602087018c61423b565b929092179850909550505b5050505061275d565b5f806040519150825160c08602602001830160405285835260208660010160051b8085018360010160051b8701614199858b81811090829003020190565b60010160051b8a861196505b808510156141f957828589015260808a843e6060830151955085608084015260608201518681116141d685856142e2565b17881797505060808a01995060a08301925060a0820191506020850194506141a5565b50505b8183101561422f578083870152608088823e6060810151608082015260808801975060a0810190506020830192506141fc565b50505050935093915050565b604051815180851190808603818710028101602060e08202850181016040528185526001928301600590811b87019390920190911b908185015b8282101561422f57808287015260a088823e60206060890160a083013e606081015160608501516142b26080840151608088015180159114171590565b818311176142c084886142e2565b60a09b909b019a179690961795505060c0938401936020929092019101614275565b5f81516040830151801560038311161561430457506040840151600119909101905b604085015181148551831460208701516020870151141616159250505092915050565b5f8451600581111561433b5761433b615329565b0361437857604084015160208501516001600160a01b0316171561436157614361613379565b61437384608001518560600151613294565b614416565b60018451600581111561438d5761438d615329565b036143be576040840151156143a4576143a4613379565b614373846020015184866080015187606001518686613386565b6002845160058111156143d3576143d3615329565b036143f7576143738460200151848660800151876040015188606001518787611889565b61441684602001518486608001518760400151886060015187876118d4565b50505050565b608082901c63ffffffff604084901c811690808516906144449084906317b1f94290611b8016565b601c830192506144548482614fce565b50509250929050565b5f80614467614eda565b63f4dd92ce815287841860a0820152601c8101925060200160a0808252875f614491604083015190565b90505f6144a082858701614ee4565b9384019390506144b1846020870152565b5f6144bd606085015190565b90505f6144cc82878901614f4a565b9586019590506144dd866040890152565b5f6144ea8d888a01614faf565b9687019690506144fb8760608a0152565b5f6145088d898b01614fce565b905080880197508760040199505050505050505050509550959350505050565b6339f3e3fd5f526004601cfd5b6301e4d72a6102043560051b6080019081525f808260208082015260408101858152336060830152601c919091019061456f608435610aeb565b61458061014460e083016060611b28565b61014061458e816060840152565b61459c60a082016080840152565b61016060a06102643581029290920101906145b8908290840152565b6145c25f82840152565b6020016145d08160c0840152565b5f9181019182526020820196909652939560449095019492505050565b63d13d53d45f52806020526024601cfd5b631cf99b265f5281602052806040526044601cfd5b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166146f85780873b1515166146f857806146e757816146ca573d156146a957601f3d0160051c8360051c8160030281831115614692578183036003028280028480020360091c01015b5a6020820110156146a5573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b5f805f6001600160e01b03198751165f805260205f888a5f8e5af15f5190935014905081614753578361473e575f925050506106d7565b614746614056565b845f52876020526024601cfd5b8061476557845f52876020526024601cfd5b50600198975050505050505050565b63375c24c15f52806020526024601cfd5b5f805f85865160051b87015b808210156148a2576020820191508851825151106147b1576147b16148d6565b81515160051b60208a01015180516020845101515f6040830151602085015115815184101517156147e6575050505050614791565b8260051b60208201015191505060608101935083518901915083511589831060011b17881797508198505f84528a51935086156001811461484f5760608220881860408d01516101208601511860208e015186511817171561484a5761484a6148d6565b614898565b8151855260208201516020860152604082015160408601528a6080860152835160208d015261012084015160408d015260608520975060208d0192508683181561489857865183525b5050505050614791565b5050508160608551015280156148cf57600181036148c7576391b3e5145f526004601cfd5b6148cf6148e3565b5050614416565b637fda72795f526004601cfd5b634e487b715f5260116020526024601cfd5b5f805f86875160051b88015b808210156149f7576020820191508151518a518110614922576149226148d6565b8060051b60208c01015190506020835101515f606083510151602084015115815184101517156149555750505050614901565b8260051b60208201015191505060608101925082518801915082511588831060011b17871796508197505f83528a5192508515600181146149a75760a0822087146149a2576149a26148d6565b6149ee565b815184526020820151602085015260408201516040850152608082015160808501528a60208d01528960408d015260a08220965060208d019250858318156149ee57855183525b50505050614901565b50508551606001839052508015614a255760018103614a1d576391b3e5145f526004601cfd5b614a256148e3565b50506128d6565b63a5f542085f528260205281604052806060526064601cfd5b63466aa6165f526004601cfd5b5f614e58565b5f6009821015614bb1576005821015614b0e576003821015614ac1577f832c58a5b611aadcfa6a082ac9d04bace53d8278387f10040347b7e98eb5b30260018314027fbf8e29b89f29ed9b529c154a63038ffca562f8d7cd1e2545dda53a1b582dde3018610402565b7ff3e8417a785f980bdaf134fa0274a6bf891eeb8195cd94b09d2aa651046e28bc60038314027fa02eb7ff164c884e5e2c336dc85f81c6a93329d8e9adf214b32729b894de2af118610402565b6007821015614b64577f25d02425402d882d211a7ab774c0ed6eca048c4d03d9af40132475744753b2a360058314027f1c19f71958cdd8f081b4c31f7caf5c010b29d12950be2fa1c95070dc47e30b5518610402565b7fb58d772fb09b426b9dece637f61ca9065f2b994f1464b51e9207f55f7c8f594860078314027f7ff98d9d4e55d876c5cfac10b43c04039522f3ddfb0ea9bfe70c68cfb5c7cc1418610402565b6011821015614d0957600d821015614c6657600b821015614c19577f6f0ec38c21f6f583ab7f3c5413c773ffd5344c34fde1d390958e438bf667448f60098314027fd1d97d1ef5eaa37a4ee5fbf234e6f6d64eb511eb562221cd7edfbdde0848da0518610402565b7f32f4e7485d6485f9f6c255929b9905c62ba919758bbe231f231eaeecf33d810c600b8314027fbb98d87cc12922b83759626c5f07d72266da9702d19ffad6a514c73a89002f5f18610402565b600f821015614cbc577f8df51df98847160517f5b1186b4bc3f418d98b8a7f17f1292f392d79d600d79e600d8314027f6b5b04cbae4fcb1a9d78e7b2dfc51a36933d023cf6e347e03d517b472a85259018610402565b7fcc4886e37eedd9aacd6c1c2c9247197a621a71282e87a7cbc673f3736d9aa141600f8314027f1da3eed3ecef6ebaa6e5023c057ec2c75150693fd0dac5c90f4a142f9879fde818610402565b6015821015614db5576013821015614d68577f2d7a3ed6dab270fdb8e054b2ad525f0ce2a8b89cc76c17f0965434740f673a5560118314027fc3939feff011e53ab8c35ca3370aad54c5df1fc2938cd62543174fa6e7d8587718610402565b7f54b3212a178782f104e0d514b41a9a5c4ca9c980bf6597c3cecbf280917e202a60138314027f5a4f867d3d458dabecad65f6201ceeaba0096df2d0c491cc32e6ea4e6435001718610402565b6017821015614e0b577fbb40bf8cea3a5a716e2b6eb08bbdac8ec159f82f380783db3c56904f15a43d0460158314027f3bd8cff538aba49a9c374c806d277181e9651624b3e31111bc0624574f8bca1d18610402565b7f403be09941a31d05cfc2f896505811353d45d38743288b016630cce39435476a60178314027f1d51df90cba8de7637ca3e8fe1e3511d1dc2f23487d05dbdecb781860c21ac1c18610402565b61040282614a58565b6321ccfeb75f5281602052806040526044601cfd5b6394eb6af65f526004601cfd5b5f835f5260205f2060208301835160051b81015b80821015614ebe57815180841160051b93845260209384185260405f209290910190614e97565b50508314905080614416576144165b6309bde3395f526004601cfd5b5f61041260405190565b5f825180835260208401602084018260051b82015b80831015614f375782518051835260208101516020840152604081015160408401526060810151606084015250602083019250608082019150614ef9565b5050508060071b60200191505092915050565b5f80614f54845190565b8084529050602084810190600583901b860181019085015b82821115614f9c575f614f7e84615008565b9050614f8c818360a0615011565b506020929092019160a001614f6c565b60a0840260200194505050505092915050565b5f63ffffffe0603f614fbf855190565b01169050610402838383615011565b5f80614fd8845190565b8084529050600581901b614ff3602086810190860183615011565b602001949350505050565b6103b06040829052565b5f610402825190565b8082828560045afa80153d151715614416575f80fd5b6040518060a0016040528061503a61509c565b81525f602082018190526040820152606080820181905260809091015290565b60408051610100810182525f606082018181526080830182905260a0830182905260c0830182905260e083018290528252602082018190529181019190915290565b6040518061016001604052805f6001600160a01b031681526020015f6001600160a01b0316815260200160608152602001606081526020015f60048111156150e6576150e6615329565b81525f6020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b5f60208284031215615125575f80fd5b81356001600160401b0381111561513a575f80fd5b820161024081850312156104f1575f80fd5b5f81518084525f5b8181101561517057602081850181015186830182015201615154565b505f602082860101526020601f19601f83011685010191505092915050565b602081525f6104f1602083018461514c565b5f602082840312156151b1575f80fd5b5035919050565b5f602082840312156151c8575f80fd5b81356001600160401b038111156151dd575f80fd5b820161016081850312156104f1575f80fd5b5f8083601f8401126151ff575f80fd5b5081356001600160401b03811115615215575f80fd5b6020830191508360208260051b850101111561522f575f80fd5b9250929050565b80356001600160a01b0381168114611c04575f80fd5b5f805f805f805f805f805f60e08c8e031215615266575f80fd5b6001600160401b03808d35111561527b575f80fd5b6152888e8e358f016151ef565b909c509a5060208d013581101561529d575f80fd5b6152ad8e60208f01358f016151ef565b909a50985060408d01358110156152c2575f80fd5b6152d28e60408f01358f016151ef565b909850965060608d01358110156152e7575f80fd5b506152f88d60608e01358e016151ef565b909550935060808c0135925061531060a08d01615236565b915060c08c013590509295989b509295989b9093969950565b634e487b7160e01b5f52602160045260245ffd5b60068110611b8057611b80615329565b61535882825161533d565b6020818101516001600160a01b0390811691840191909152604080830151908401526060808301519084015260809182015116910152565b5f815180845260208085019450602084015f5b838110156153e55781516153b888825161534d565b808401516001600160a01b031660a08901526040015160c088015260e090960195908201906001016153a3565b509495945050505050565b604080825283519082018190525f906020906060840190828701845b8281101561542a57815115158452928401929084019060010161540c565b50505083810360208501526106d78186615390565b5f8060208385031215615450575f80fd5b82356001600160401b03811115615465575f80fd5b615471858286016151ef565b90969095509350505050565b5f805f8060408587031215615490575f80fd5b84356001600160401b03808211156154a6575f80fd5b6154b2888389016151ef565b909650945060208701359150808211156154ca575f80fd5b506154d7878288016151ef565b95989497509550505050565b602081525f6104f16020830184615390565b5f60208284031215615505575f80fd5b6104f182615236565b5f806040838503121561551f575f80fd5b82356001600160401b03811115615534575f80fd5b830160408186031215615545575f80fd5b946020939093013593505050565b5f805f805f60808688031215615567575f80fd5b85356001600160401b038082111561557d575f80fd5b9087019060a0828a031215615590575f80fd5b909550602087013590808211156155a5575f80fd5b506155b2888289016151ef565b909550935050604086013591506155cb60608701615236565b90509295509295909350565b5f805f805f805f8060a0898b0312156155ee575f80fd5b88356001600160401b0380821115615604575f80fd5b6156108c838d016151ef565b909a50985060208b0135915080821115615628575f80fd5b6156348c838d016151ef565b909850965060408b013591508082111561564c575f80fd5b506156598b828c016151ef565b999c989b509699959896976060870135966080013595509350505050565b5f805f805f805f6080888a03121561568d575f80fd5b87356001600160401b03808211156156a3575f80fd5b6156af8b838c016151ef565b909950975060208a01359150808211156156c7575f80fd5b6156d38b838c016151ef565b909750955060408a01359150808211156156eb575f80fd5b506156f88a828b016151ef565b909450925061570b905060608901615236565b905092959891949750929550565b606081525f61572b606083018661514c565b6020830194909452506001600160a01b0391909116604090910152919050565b634e487b7160e01b5f52604160045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b5f8261578d57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f815180845260208085019450602084015f5b838110156153e55781516157ce88825161533d565b838101516001600160a01b03168885015260408082015190890152606080820151908901526080908101519088015260a090960195908201906001016157b9565b5f815180845260208085019450602084015f5b838110156153e557815161583788825161533d565b808401516001600160a01b0390811689860152604080830151908a0152606080830151908a0152608080830151908a015260a091820151169088015260c09096019590820190600101615822565b60058110611b8057611b80615329565b828152604060208201526158b56040820183516001600160a01b03169052565b5f60208301516158d060608401826001600160a01b03169052565b5060408301516101608060808501526158ed6101a08501836157a6565b91506060850151603f198584030160a086015261590a838261580f565b925050608085015161591f60c0860182615885565b5060a085015160e085015260c0850151610100818187015260e0870151915061012082818801528188015192506101409150828288015280880151848801525080870151610180870152505050809150509392505050565b5f823561015e1983360301811261598c575f80fd5b9190910192915050565b5f602082840312156159a6575f80fd5b8135600581106104f1575f80fd5b818103818111156104025761040261575f565b808201808211156104025761040261575f565b5f815180845260208085019450602084015f5b838110156153e557615a0087835161534d565b60a09690960195908201906001016159ed565b5f6080808301878452602060018060a01b03808916602087015260406080604088015283895180865260a08901915060208b0195505f5b81811015615a8b578651615a5f84825161533d565b808701518616848801528481015185850152606090810151908401529585019591870191600101615a4a565b50508781036060890152615a9f818a6159da565b9c9b505050505050505050505050565b80820281158282048414176104025761040261575f56fea164736f6c6343000818000a","storage":{}},"0x6265cc8d1b28edfd4d76c80bf774c0d446fffbde":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610090575f3560e01c80633f15457f116100635780633f15457f1461010f5780637adbf973146101225780637dc0d1d0146101355780638bbedf7514610147578063be27b22c1461015a575f80fd5b806301ffc9a7146100945780631ecfc411146100bc578063224199c2146100d157806330349ebe146100e4575b5f80fd5b6100a76100a23660046115b1565b61016d565b60405190151581526020015b60405180910390f35b6100cf6100ca3660046115ef565b6101a3565b005b6100cf6100df3660046117e0565b6102de565b6002546100f7906001600160a01b031681565b6040516001600160a01b0390911681526020016100b3565b6001546100f7906001600160a01b031681565b6100cf6101303660046115ef565b61063c565b5f546100f7906001600160a01b031681565b6100cf610155366004611889565b61076d565b6100cf61016836600461190b565b6107f1565b5f6001600160e01b031982166301ffc9a760e01b148061019d57506001600160e01b031982166317d8f49b60e01b145b92915050565b6001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa1580156101ea573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061020e919061196b565b90505f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561024d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610271919061196b565b9050336001600160a01b03821614610287575f80fd5b600280546001600160a01b0319166001600160a01b0385169081179091556040519081527f9176b7f47e4504df5e5516c99d90d82ac7cbd49cc77e7f22ba2ac2f2e3a3eba8906020015b60405180910390a1505050565b5f546040516321ae60b160e11b81526001600160a01b039091169063435cc1629061030f90879087906004016119d3565b5f604051808303815f875af115801561032a573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526103519190810190611a6b565b92505f805f610360888761088b565b91945092509050336001600160a01b038216146103da5760405162461bcd60e51b815260206004820152602d60248201527f4f6e6c79206f776e65722063616e2063616c6c2070726f7665416e64436c616960448201526c36abb4ba342932b9b7b63b32b960991b60648201526084015b60405180910390fd5b6001600160a01b038416156105bb576001600160a01b03851661044e5760405162461bcd60e51b815260206004820152602660248201527f43616e6e6f74207365742061646472206966207265736f6c766572206973206e6044820152651bdd081cd95d60d21b60648201526084016103d1565b6001546040516305ef2c7f60e41b815260048101859052602481018490523060448201526001600160a01b0387811660648301525f608483015290911690635ef2c7f09060a4015f604051808303815f87803b1580156104ac575f80fd5b505af11580156104be573d5f803e3d5ffd5b505050505f83836040516020016104df929190918252602082015260400190565b60408051808303601f1901815290829052805160209091012062d5fa2b60e81b8252600482018190526001600160a01b03878116602484015290925087169063d5fa2b00906044015f604051808303815f87803b15801561053e575f80fd5b505af1158015610550573d5f803e3d5ffd5b5050600154604051635b0fc9c360e01b8152600481018590526001600160a01b0386811660248301529091169250635b0fc9c391506044015f604051808303815f87803b15801561059f575f80fd5b505af11580156105b1573d5f803e3d5ffd5b5050505050610632565b6001546040516305ef2c7f60e41b815260048101859052602481018490526001600160a01b03838116604483015287811660648301525f608483015290911690635ef2c7f09060a4015f604051808303815f87803b15801561061b575f80fd5b505af115801561062d573d5f803e3d5ffd5b505050505b5050505050505050565b6001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa158015610683573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106a7919061196b565b90505f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106e6573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061070a919061196b565b9050336001600160a01b03821614610720575f80fd5b5f80546001600160a01b0319166001600160a01b0385169081179091556040519081527fb3eacd0e351fafdfefdec84e1cd19679b38dbcd63ea7c2c24da17fd2bc3b3c0e906020016102d1565b5f546040516321ae60b160e11b81526001600160a01b039091169063435cc1629061079e90859085906004016119d3565b5f604051808303815f875af11580156107b9573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526107e09190810190611a6b565b90506107ec83826107f1565b505050565b5f805f6107fe858561088b565b6001546040516306ab592360e01b815260048101859052602481018490526001600160a01b03808416604483015294975092955090935091909116906306ab5923906064016020604051808303815f875af115801561085f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108839190611add565b505050505050565b5f8080806108998682610a40565b60ff1690506108aa86600183610a63565b92505f6108dc6108bb836001611b08565b6001848a516108ca9190611b1b565b6108d49190611b1b565b899190610a85565b6002546040516327c482cf60e11b81529192506001600160a01b031690634f89059e9061090d908490600401611b2e565b602060405180830381865afa158015610928573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061094c9190611b40565b6109a45760405162461bcd60e51b815260206004820152602360248201527f506172656e74206e616d65206d7573742062652061207075626c6963207375666044820152620ccd2f60eb1b60648201526084016103d1565b6109ae815f610b05565b5f549095506109c7906001600160a01b03168888610de3565b5060408051602081018890529081018690529093506001600160a01b03841690606001604051602081830303815290604052805190602001207fa2e66ce20e6fb2c4f61339c364ad79f15160cf5307230c8bc4d628adbca2ba3989604051610a2f9190611b2e565b60405180910390a350509250925092565b5f828281518110610a5357610a53611b5f565b016020015160f81c905092915050565b82515f90610a718385611b08565b1115610a7b575f80fd5b5091016020012090565b8251606090610a948385611b08565b1115610a9e575f80fd5b5f8267ffffffffffffffff811115610ab857610ab861160a565b6040519080825280601f01601f191660200182016040528015610ae2576020820181803683370190505b50905060208082019086860101610afa82828761100b565b509095945050505050565b5f80610b118484610a40565b60ff169050805f03610b2657505f905061019d565b5f610b4585610b358487611b08565b610b40906001611b08565b610b05565b90505f610b5e610b56866001611b08565b879085610a63565b604080516020810185905290810182905290915060600160408051808303601f190181529082905280516020909101206001546302571be360e01b8352600483018290529095505f916001600160a01b03909116906302571be390602401602060405180830381865afa158015610bd7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bfb919061196b565b90506001600160a01b0381161580610c1b57506001600160a01b03811630145b610c7a5760405162461bcd60e51b815260206004820152602a60248201527f43616e6e6f7420656e61626c652061206e616d65206f776e656420627920736f6044820152696d656f6e6520656c736560b01b60648201526084016103d1565b6001600160a01b0381163014610dd95782610d5e576001546040516302571be360e01b81525f60048201819052916001600160a01b0316906302571be390602401602060405180830381865afa158015610cd6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cfa919061196b565b60405163232e3b3b60e21b8152600481018590523060248201529091506001600160a01b03821690638cb8ecec906044015f604051808303815f87803b158015610d42575f80fd5b505af1158015610d54573d5f803e3d5ffd5b5050505050610dd9565b6001546040516306ab592360e01b815260048101859052602481018490523060448201526001600160a01b03909116906306ab5923906064016020604051808303815f875af1158015610db3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610dd79190611add565b505b5050505092915050565b5f80610e016040518060400160405280606081526020015f81525090565b610e1985516005610e129190611b08565b8290611060565b50604080518082019091526005815264045f656e7360d81b6020820152610e419082906110c3565b50610e4c81866110c3565b50805160405163021e646f60e21b81525f9182916001600160a01b038a169163087991bc91610e8091601091600401611b73565b606060405180830381865afa158015610e9b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ebf9190611ba7565b93509150506bffffffffffffffffffffffff198216158015610ee057508551155b15610ef3575f8094509450505050611003565b855160208701206bffffffffffffffffffffffff19838116911614610f16575f80fd5b5f610f2187826110ef565b90505b80515160208201511015610ff857610f4b816080015183610f459190611bfc565b4261114a565b610fbd5760405162461bcd60e51b815260206004820152603c60248201527f444e53207265636f7264206973207374616c653b2072656672657368206f722060448201527f64656c657465206974206265666f72652070726f63656564696e672e0000000060648201526084016103d1565b5f80610fcd898460a00151611162565b925090508115610fe857965060019550611003945050505050565b5050610ff3816111d1565b610f24565b505f80945094505050505b935093915050565b602081106110435781518352611022602084611b08565b925061102f602083611b08565b915061103c602082611b1b565b905061100b565b905182516020929092036101000a5f190180199091169116179052565b60408051808201909152606081525f602082015261107f602083611c20565b156110a75761108f602083611c20565b61109a906020611b1b565b6110a49083611b08565b91505b506020828101829052604080518085525f815290920101905290565b60408051808201909152606081525f60208201526110e883845f0151518485516112b6565b9392505050565b6111376040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261019d816111d1565b5f806111568385611c3f565b60030b12159392505050565b5f805b83518310156111c4575f6111798585610a40565b60ff169050611189600185611b08565b93505f8061119887878561139c565b9250905081156111b0579350600192506111ca915050565b6111ba8387611b08565b9550505050611165565b505f9050805b9250929050565b60c081015160208201819052815151116111e85750565b5f6111fa825f015183602001516113f5565b82602001516112099190611b08565b82519091506112189082611454565b61ffff16604083015261122c600282611b08565b825190915061123b9082611454565b61ffff16606083015261124f600282611b08565b825190915061125e908261147a565b63ffffffff166080830152611274600482611b08565b82519091505f906112859083611454565b61ffff169050611296600283611b08565b60a0840181905291506112a98183611b08565b60c0909301929092525050565b60408051808201909152606081525f602082015282518211156112d7575f80fd5b60208501516112e68386611b08565b11156113195761131985611309876020015187866113049190611b08565b6114a2565b611314906002611c66565b6114b8565b5f808651805187602083010193508088870111156113375787860182525b505050602084015b602084106113775780518252611356602083611b08565b9150611363602082611b08565b9050611370602085611b1b565b935061133f565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b5f806113a8858561147a565b63ffffffff1663613d3078146113c257505f905080611003565b602c8310156113d557505f905080611003565b6113e9856113e4866004611b08565b6114d5565b91509150935093915050565b5f815b8351811061140857611408611c7d565b5f6114138583610a40565b60ff169050611423816001611b08565b61142d9083611b08565b9150805f0361143c5750611442565b506113f8565b61144c8382611b1b565b949350505050565b81515f90611463836002611b08565b111561146d575f80fd5b50016002015161ffff1690565b81515f90611489836004611b08565b1115611493575f80fd5b50016004015163ffffffff1690565b5f818311156114b257508161019d565b50919050565b81516114c48383611060565b506114cf83826110c3565b50505050565b5f8060288385516114e69190611b1b565b10156114f657505f9050806111ca565b5f835b611504856028611b08565b8110156115a55760049190911b905f61151d8783610a40565b60ff169050603081101580156115335750603a81105b1561154c57611543603082611b1b565b8317925061159c565b6041811015801561155d5750604781105b1561156d57611543603782611b1b565b6061811015801561157e5750606781105b1561158e57611543605782611b1b565b5f80945094505050506111ca565b506001016114f9565b50946001945092505050565b5f602082840312156115c1575f80fd5b81356001600160e01b0319811681146110e8575f80fd5b6001600160a01b03811681146115ec575f80fd5b50565b5f602082840312156115ff575f80fd5b81356110e8816115d8565b634e487b7160e01b5f52604160045260245ffd5b6040805190810167ffffffffffffffff811182821017156116415761164161160a565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156116705761167061160a565b604052919050565b5f67ffffffffffffffff8211156116915761169161160a565b50601f01601f191660200190565b5f82601f8301126116ae575f80fd5b81356116c16116bc82611678565b611647565b8181528460208386010111156116d5575f80fd5b816020850160208301375f918101602001919091529392505050565b5f82601f830112611700575f80fd5b8135602067ffffffffffffffff8083111561171d5761171d61160a565b8260051b61172c838201611647565b9384528581018301938381019088861115611745575f80fd5b84880192505b858310156117d457823584811115611761575f80fd5b88016040818b03601f1901811315611777575f80fd5b61177f61161e565b878301358781111561178f575f80fd5b61179d8d8a8387010161169f565b8252509082013590868211156117b1575f80fd5b6117bf8c898486010161169f565b8189015284525050918401919084019061174b565b98975050505050505050565b5f805f805f60a086880312156117f4575f80fd5b853567ffffffffffffffff8082111561180b575f80fd5b61181789838a0161169f565b9650602088013591508082111561182c575f80fd5b61183889838a016116f1565b9550604088013591508082111561184d575f80fd5b5061185a8882890161169f565b935050606086013561186b816115d8565b9150608086013561187b816115d8565b809150509295509295909350565b5f805f6060848603121561189b575f80fd5b833567ffffffffffffffff808211156118b2575f80fd5b6118be8783880161169f565b945060208601359150808211156118d3575f80fd5b6118df878388016116f1565b935060408601359150808211156118f4575f80fd5b506119018682870161169f565b9150509250925092565b5f806040838503121561191c575f80fd5b823567ffffffffffffffff80821115611933575f80fd5b61193f8683870161169f565b93506020850135915080821115611954575f80fd5b506119618582860161169f565b9150509250929050565b5f6020828403121561197b575f80fd5b81516110e8816115d8565b5f5b838110156119a0578181015183820152602001611988565b50505f910152565b5f81518084526119bf816020860160208601611986565b601f01601f19169290920160200192915050565b5f60408083016040845280865180835260608601915060608160051b870101925060208089015f5b83811015611a4b57888603605f1901855281518051888852611a1f898901826119a8565b9185015188830389870152919050611a3781836119a8565b9750505093820193908201906001016119fb565b505086840381880152505050611a6181866119a8565b9695505050505050565b5f60208284031215611a7b575f80fd5b815167ffffffffffffffff811115611a91575f80fd5b8201601f81018413611aa1575f80fd5b8051611aaf6116bc82611678565b818152856020838501011115611ac3575f80fd5b611ad4826020830160208601611986565b95945050505050565b5f60208284031215611aed575f80fd5b5051919050565b634e487b7160e01b5f52601160045260245ffd5b8082018082111561019d5761019d611af4565b8181038181111561019d5761019d611af4565b602081525f6110e860208301846119a8565b5f60208284031215611b50575f80fd5b815180151581146110e8575f80fd5b634e487b7160e01b5f52603260045260245ffd5b61ffff83168152604060208201525f61144c60408301846119a8565b805163ffffffff81168114611ba2575f80fd5b919050565b5f805f60608486031215611bb9575f80fd5b611bc284611b8f565b9250611bd060208501611b8f565b915060408401516bffffffffffffffffffffffff1981168114611bf1575f80fd5b809150509250925092565b63ffffffff818116838216019080821115611c1957611c19611af4565b5092915050565b5f82611c3a57634e487b7160e01b5f52601260045260245ffd5b500690565b600382810b9082900b03637fffffff198112637fffffff8213171561019d5761019d611af4565b808202811582820484141761019d5761019d611af4565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{"0x0":"0x9b2565a3545a1312bdcb6e7148a7f7cae8c2706b","0x1":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0x2":"0x287dee389caaa49edc112888f2bcfd927b472e25"}},"0x62b11ad5f582a5c5d378fb310125b030042554f1":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106103af5760003560e01c80637e37479e116101f4578063ba5d40b71161011a578063e985e9c5116100ad578063f5c1f76e1161007c578063f5c1f76e146108d8578063f7df5c60146108eb578063f8c8765e146108fe578063ffa1ad741461091157600080fd5b8063e985e9c51461087a578063ebf0c717146108b6578063ec129eea146108bd578063f25eb5c1146108d057600080fd5b8063c87b56dd116100e9578063c87b56dd1461082e578063ce92b33e14610841578063cf2c52cb14610854578063d9548e531461086757600080fd5b8063ba5d40b7146107b3578063baef73e9146107c6578063bb5b27e114610808578063bebec6b41461081b57600080fd5b8063a22cb46511610192578063ac9650d811610161578063ac9650d81461074c578063b3f9e4cb1461076c578063b85afd281461077f578063b88d4fde146107a057600080fd5b8063a22cb465146106e7578063a3f4df7e146106fa578063a424740014610726578063ab3b87fe1461073957600080fd5b80639508b1c4116101ce5780639508b1c4146106b15780639559c0bd146106c457806395d89b41146106cc57806399e0dd7c146106d457600080fd5b80637e37479e146106785780637eee288d1461068b57806394d008ef1461069e57600080fd5b806342842e0e116102d95780635096023911610277578063663f7b2a11610246578063663f7b2a14610610578063672b9f81146106235780636ccbae5f1461064457806370a082311461066557600080fd5b806350960239146105bb578063572b6c05146105ce5780636352211e146105ea578063638e5c78146105fd57600080fd5b806347c81699116102b357806347c816991461056f5780634a72584d146105825780634f558e791461059557806350382c1a146105a857600080fd5b806342842e0e1461053657806342966c6814610549578063430c20811461055c57600080fd5b80631bf7e13e1161035157806327f189751161032057806327f18975146104ea578063310bd74b146104fd5780633f72ec6e1461051057806340c10f191461052357600080fd5b80631bf7e13e146104905780631f71be06146104a357806323b872dd146104b6578063276fabb1146104c957600080fd5b8063095ea7b31161038d578063095ea7b31461041c578063150b7a02146104315780631bd8cc1a1461045d5780631be5e7ed1461047d57600080fd5b806301ffc9a7146103b457806306fdde03146103dc578063081812fc146103f1575b600080fd5b6103c76103c2366004613f0b565b610935565b60405190151581526020015b60405180910390f35b6103e4610946565b6040516103d39190613f78565b6104046103ff366004613f8b565b6109d8565b6040516001600160a01b0390911681526020016103d3565b61042f61042a366004613fb9565b6109ff565b005b61044461043f366004614026565b610a18565b6040516001600160e01b031990911681526020016103d3565b61047061046b3660046140dc565b610b72565b6040516103d3919061417f565b6103e461048b366004614192565b610c68565b6103e461049e3660046141c9565b610cb3565b61042f6104b1366004614249565b610dbe565b61042f6104c4366004614305565b610e54565b6104dc6104d7366004614346565b610ea7565b6040519081526020016103d3565b61042f6104f8366004614387565b610eb6565b61042f61050b366004613f8b565b610efe565b61042f61051e3660046143fa565b610f39565b61042f610531366004613fb9565b61103b565b61042f610544366004614305565b611088565b61042f610557366004613f8b565b6110a3565b6103c761056a366004613fb9565b6110e7565b61042f61057d366004614424565b6110f3565b61042f610590366004614485565b611132565b6103c76105a3366004613f8b565b611178565b61042f6105b636600461458c565b611197565b61042f6105c93660046145c0565b6111cd565b6103c76105dc3660046145c0565b6001600160a01b0316301490565b6104046105f8366004613f8b565b61122d565b61042f61060b366004613f8b565b61124a565b61042f61061e366004614678565b611295565b6106366106313660046146c0565b611336565b6040516103d39291906146e2565b6104dc610652366004613f8b565b6000908152610100602052604090205490565b6104dc6106733660046145c0565b61134e565b6104dc6106863660046145c0565b6113d4565b61042f610699366004613fb9565b611405565b61042f6106ac366004614707565b61145c565b61042f6106bf366004614762565b6114ab565b6104dc601481565b6103e4611532565b61042f6106e2366004614805565b611541565b61042f6106f536600461483a565b6115c8565b6103e46040518060400160405280600d81526020016c554e533a20526567697374727960981b81525081565b6103c76107343660046141c9565b6115da565b61042f610747366004613fb9565b611625565b61075f61075a366004614346565b61166a565b6040516103d39190614866565b61040461077a366004613f8b565b611746565b61079261078d3660046140dc565b611770565b6040516103d39291906148c8565b61042f6107ae3660046148ed565b611892565b61042f6107c1366004614249565b6118d9565b6107f06107d4366004613f8b565b600090815261013960205260409020546001600160401b031690565b6040516001600160401b0390911681526020016103d3565b6103e4610816366004613f8b565b611962565b6103e46108293660046145c0565b611a04565b6103e461083c366004613f8b565b611ace565b61042f61084f366004614387565b611b34565b61042f610862366004614958565b611b73565b6103c7610875366004613f8b565b611c42565b6103c761088836600461499f565b6001600160a01b039182166000908152606a6020908152604080832093909416825291909152205460ff1690565b60006104dc565b61042f6108cb366004614387565b611c85565b61042f611cc4565b6104706108e6366004614346565b611d4b565b61042f6108f93660046149d8565b611dfe565b61042f61090c366004614a0a565b611e8f565b6103e460405180604001604052806005815260200164302e392e3160d81b81525081565b600061094082612065565b92915050565b60606065805461095590614a66565b80601f016020809104026020016040519081016040528092919081815260200182805461098190614a66565b80156109ce5780601f106109a3576101008083540402835291602001916109ce565b820191906000526020600020905b8154815290600101906020018083116109b157829003601f168201915b5050505050905090565b60006109e3826120b5565b506000908152606960205260409020546001600160a01b031690565b80610a0981612114565b610a13838361217a565b505050565b60007f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378546001600160a01b0316610a4d61229c565b6001600160a01b031603610b0e57610a6361229c565b6001600160a01b03166342966c68856040518263ffffffff1660e01b8152600401610a9091815260200190565b600060405180830381600087803b158015610aaa57600080fd5b505af1158015610abe573d6000803e3d6000fd5b505050821580159150610ad85750610ad882840184614a9a565b15610af657610ae730856122ab565b610af185856123f9565b610b00565b610b0085856122ab565b50630a85bd0160e11b610b69565b60405162461bcd60e51b815260206004820152602560248201527f52656769737472793a204552433732315f524543454956494e475f50524f4849604482015264109255115160da1b60648201526084015b60405180910390fd5b95945050505050565b6060826001600160401b03811115610b8c57610b8c6144d7565b604051908082528060200260200182016040528015610bbf57816020015b6060815260200190600190039081610baa5790505b50905060005b83811015610c6057610c30858583818110610be257610be2614ab5565b9050602002810190610bf49190614acb565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508792506124a4915050565b828281518110610c4257610c42614ab5565b60200260200101819052508080610c5890614b27565b915050610bc5565b509392505050565b6060610cab84848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508692506124a4915050565b949350505050565b606060005a9050610cc58585856115da565b610d215760405162461bcd60e51b815260206004820152602760248201527f554e535265676973747279466f727761726465723a205349474e41545552455f6044820152661253959053125160ca1b6064820152608401610b60565b610db3610d3160208701876145c0565b30604088013584610d4560608b018b614acb565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284376000920191909152506124d992505050565b9150505b9392505050565b610134546001600160a01b0316610dd361229c565b6001600160a01b031614610df95760405162461bcd60e51b8152600401610b6090614b40565b6000610e0d610e08888a614b87565b6125ba565b509050610e1a8982611405565b610e278686868685612612565b8115610e4957610e498982610e44610e3f8b8d614b87565b612680565b612701565b505050505050505050565b80610e66610e6061229c565b82612743565b610e825760405162461bcd60e51b8152600401610b6090614b94565b81610e8c81612114565b610e95836127d4565b610ea0858585612841565b5050505050565b6000610c60610e088385614b87565b80610ec2610e6061229c565b610ede5760405162461bcd60e51b8152600401610b6090614b94565b81610ee881612114565b610ef587878787876129e8565b50505050505050565b80610f0a610e6061229c565b610f265760405162461bcd60e51b8152600401610b6090614b94565b81610f3081612114565b610a13836127d4565b610134546001600160a01b0316610f4e61229c565b6001600160a01b031614610f745760405162461bcd60e51b8152600401610b6090614b40565b610f7d816120b5565b42826001600160401b031611610fd55760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a204558504952595f494e5f5041535400000000000000006044820152606401610b60565b60008181526101396020908152604091829020805467ffffffffffffffff19166001600160401b038616908117909155915191825282917f93feabb03ab84f47fc85bf0c298103fca21d8c8bc376eae0c1e1c56b9d4f7789910160405180910390a25050565b611043612a4b565b6001600160a01b031661105461229c565b6001600160a01b03161461107a5760405162461bcd60e51b8152600401610b6090614bdd565b61108482826122ab565b5050565b610a1383838360405180602001604052806000815250611892565b806110af610e6061229c565b6110cb5760405162461bcd60e51b8152600401610b6090614b94565b816110d581612114565b6110de836127d4565b610a1383612b4c565b6000610db78383612743565b806110ff610e6061229c565b61111b5760405162461bcd60e51b8152600401610b6090614b94565b8161112581612114565b610ef58787878787612bf3565b8061113e610e6061229c565b61115a5760405162461bcd60e51b8152600401610b6090614b94565b8161116481612114565b61117086868686612cd2565b505050505050565b6000818152606760205260408120546001600160a01b03161515610940565b6111ca816040516020016111ab9190614c1f565b6040516020818303038152906040528051906020012060001c82612d72565b50565b610134546001600160a01b03166111e261229c565b6001600160a01b0316146112085760405162461bcd60e51b8152600401610b6090614b40565b6001600160a01b0316600090815261013660205260409020805460ff19166001179055565b600061123882611c42565b6112455761094082612d97565b919050565b80611256610e6061229c565b6112725760405162461bcd60e51b8152600401610b6090614b94565b61128461127d61229c565b3084612841565b61108461128f61229c565b836123f9565b60006112a0826125ba565b5090506112ab61229c565b6001600160a01b03166112bd8261122d565b6001600160a01b0316146113135760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b60565b61131c81612114565b61108461132761229c565b8261133185612680565b612df7565b6060806113438484612e7e565b909590945092505050565b60006001600160a01b0382166113b85760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b6064820152608401610b60565b506001600160a01b031660009081526068602052604090205490565b6001600160a01b038116600090815261013560205260408120546113f781612e9f565b6113ff578091505b50919050565b610134546001600160a01b031661141a61229c565b6001600160a01b0316146114405760405162461bcd60e51b8152600401610b6090614b40565b611449816127d4565b61108461145582612d97565b8383612841565b611464612a4b565b6001600160a01b031661147561229c565b6001600160a01b03161461149b5760405162461bcd60e51b8152600401610b6090614bdd565b6114a584846122ab565b50505050565b6114b58787612ee9565b6114bd61229c565b6001600160a01b03166114cf8661122d565b6001600160a01b0316146115255760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b60565b610ef58484848489612612565b60606066805461095590614a66565b610134546001600160a01b031661155661229c565b6001600160a01b03161461157c5760405162461bcd60e51b8152600401610b6090614b40565b61013361158a828483614c81565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b82826040516115bc929190614d69565b60405180910390a15050565b6110846115d361229c565b8383612f58565b6000610cab6115e885614d7d565b3085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061302692505050565b80611631610e6061229c565b61164d5760405162461bcd60e51b8152600401610b6090614b94565b8161165781612114565b6114a561166384612d97565b8585612841565b606060006116788385614e07565b905030330361173d5760005b8381101561173b5761170b61169761229c565b61169f61316f565b8787858181106116b1576116b1614ab5565b90506020028101906116c39190614acb565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250613183915050565b82828151811061171d5761171d614ab5565b6020026020010181905250808061173390614b27565b915050611684565b505b610cab816131b3565b6000818152606760205260408120546001600160a01b0316611769576000610940565b3092915050565b606080836001600160401b0381111561178b5761178b6144d7565b6040519080825280602002602001820160405280156117be57816020015b60608152602001906001900390816117a95790505b509150836001600160401b038111156117d9576117d96144d7565b60405190808252806020026020018201604052801561180c57816020015b60608152602001906001900390816117f75790505b50905060005b848110156118895761183c86868381811061182f5761182f614ab5565b9050602002013585612e7e565b84838151811061184e5761184e614ab5565b6020026020010184848151811061186757611867614ab5565b602002602001018290528290525050808061188190614b27565b915050611812565b50935093915050565b8161189e610e6061229c565b6118ba5760405162461bcd60e51b8152600401610b6090614b94565b826118c481612114565b6118cd846127d4565b611170868686866132de565b610134546001600160a01b03166118ee61229c565b6001600160a01b0316146119145760405162461bcd60e51b8152600401610b6090614b40565b600080611924610e08898b614b87565b9150915061193181613311565b6119498a83611943610e3f8c8e614b87565b86613371565b6119568787878786612612565b50505050505050505050565b600081815260c96020526040902080546060919061197f90614a66565b80601f01602080910402602001604051908101604052809291908181526020018280546119ab90614a66565b80156119f85780601f106119cd576101008083540402835291602001916119f8565b820191906000526020600020905b8154815290600101906020018083116119db57829003601f168201915b50505050509050919050565b6001600160a01b03811660009081526101356020526040902054606090611a2a81612e9f565b6113ff576000818152610138602052604090208054611a4890614a66565b80601f0160208091040260200160405190810160405280929190818152602001828054611a7490614a66565b8015611ac15780601f10611a9657610100808354040283529160200191611ac1565b820191906000526020600020905b815481529060010190602001808311611aa457829003601f168201915b5050505050915050919050565b6060611ad9826120b5565b6000611ae36133c4565b90506000815111611b035760405180602001604052806000815250610db7565b80611b0d846133d4565b604051602001611b1e929190614e7a565b6040516020818303038152906040529392505050565b80611b40610e6061229c565b611b5c5760405162461bcd60e51b8152600401610b6090614b94565b81611b6681612114565b610ef58787878787612612565b7f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87546001600160a01b0316611ba661229c565b6001600160a01b031614611bcc5760405162461bcd60e51b8152600401610b6090614bdd565b6020819003611bef576000611be382840184613f8b565b90506114a584826122ab565b6000611bfd82840184614ea9565b805190915060005b8181101561117057611c3086848381518110611c2357611c23614ab5565b60200260200101516122ab565b80611c3a81614b27565b915050611c05565b600081815261013960205260408120546001600160401b03161580159061094057505060009081526101396020526040902054426001600160401b039091161090565b80611c91610e6061229c565b611cad5760405162461bcd60e51b8152600401610b6090614b94565b81611cb781612114565b610ef587878787876134d4565b6000611cce61229c565b6001600160a01b0381166000908152610135602052604081205491925003611d425760405162461bcd60e51b815260206004820152602160248201527f52656769737472793a20524556455253455f5245434f52445f49535f454d50546044820152605960f81b6064820152608401610b60565b6111ca816134ea565b6060816001600160401b03811115611d6557611d656144d7565b604051908082528060200260200182016040528015611d9857816020015b6060815260200190600190039081611d835790505b50905060005b82811015611df757611dc7848483818110611dbb57611dbb614ab5565b90506020020135611962565b828281518110611dd957611dd9614ab5565b60200260200101819052508080611def90614b27565b915050611d9e565b5092915050565b610134546001600160a01b0316611e1361229c565b6001600160a01b031614611e395760405162461bcd60e51b8152600401610b6090614b40565b61013454611e50906001600160a01b0316846122ab565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c39528383604051611e82929190614d69565b60405180910390a2505050565b600054610100900460ff1615808015611eaf5750600054600160ff909116105b80611ec95750303b158015611ec9575060005460ff166001145b611f2c5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610b60565b6000805460ff191660011790558015611f4f576000805461ff0019166101001790555b61013480546001600160a01b0319166001600160a01b038716179055837f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec9237880546001600160a01b0319166001600160a01b03929092169190911790556040805180820182526013815272556e73746f707061626c6520446f6d61696e7360681b60208083019190915282518084019093526002835261155160f21b90830152611ff79161352f565b611fff61356f565b61200761356f565b61201083613598565b612019826135c8565b8015610ea0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b60006001600160e01b031982166380ac58cd60e01b148061209657506001600160e01b03198216635b5e139f60e01b145b8061094057506301ffc9a760e01b6001600160e01b0319831614610940565b6000818152606760205260409020546001600160a01b03166111ca5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b60565b3033036121715761212361316f565b81146111ca5760405162461bcd60e51b815260206004820152601760248201527f52656769737472793a20544f4b454e5f494e56414c49440000000000000000006044820152606401610b60565b6111ca816135f8565b600061218582612d97565b9050806001600160a01b0316836001600160a01b0316036121f25760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b6064820152608401610b60565b806001600160a01b031661220461229c565b6001600160a01b0316148061222057506122208161088861229c565b6122925760405162461bcd60e51b815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c00006064820152608401610b60565b610a138383613626565b60006122a6613694565b905090565b6001600160a01b0382166123015760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610b60565b6000818152606760205260409020546001600160a01b0316156123665760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610b60565b612372600083836136af565b6001600160a01b038216600090815260686020526040812080546001929061239b908490614f39565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b03861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b6000612403612a4b565b905061240f8183613626565b60008051602061529383398151915254604080516020808201869052825180830390910181528183019283905263e3dec8fb60e01b9092526001600160a01b0390921691829163e3dec8fb9161246c918891309190604401614f4c565b600060405180830381600087803b15801561248657600080fd5b505af115801561249a573d6000803e3d6000fd5b5050505050505050565b6060610db7836040516020016124ba9190614c1f565b6040516020818303038152906040528051906020012060001c8361378b565b60606124e4856135f8565b600080876001600160a01b0316866124fe8b8a8989613183565b60405161250b9190614c1f565b60006040518083038160008787f1925050503d8060008114612549576040519150601f19603f3d011682016040523d82523d6000602084013e61254e565b606091505b50909250905061255f603f87614f8e565b5a1161256d5761256d614fa2565b6125ad82826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061386d565b9998505050505050505050565b805160009081905b801561260c578291506125f882856125db600185614fb8565b815181106125eb576125eb614ab5565b60200260200101516138a6565b92508061260481614fcb565b9150506125c2565b50915091565b60005b848110156111705761266e86868381811061263257612632614ab5565b90506020028101906126449190614acb565b86868581811061265657612656614ab5565b90506020028101906126689190614acb565b86612bf3565b8061267881614b27565b915050612615565b606060008260008151811061269757612697614ab5565b602002602001015190506000600190505b8351811015611df757818482815181106126c4576126c4614ab5565b60200260200101516040516020016126dd929190614fe2565b604051602081830303815290604052915080806126f990614b27565b9150506126a8565b61dead6001600160a01b0384161480159061273357506001600160a01b03831660009081526101356020526040902054155b15610a1357610a13838383612df7565b60008061274f8361122d565b90506001600160a01b03811615801590610cab5750806001600160a01b0316846001600160a01b031614806127a957506001600160a01b038082166000908152606a602090815260408083209388168352929052205460ff165b80610cab5750836001600160a01b03166127c2846109d8565b6001600160a01b031614949350505050565b6127dd81613952565b6040516020016127ef91815260200190565b60408051601f198184030181528282528051602091820120600085815260cb9092529181209190915582917f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9190a250565b826001600160a01b031661285482612d97565b6001600160a01b0316146128b85760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b6064820152608401610b60565b6001600160a01b03821661291a5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610b60565b6129258383836136af565b612930600082613626565b6001600160a01b0383166000908152606860205260408120805460019290612959908490614fb8565b90915550506001600160a01b0382166000908152606860205260408120805460019290612987908490614f39565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60005b8481101561117057612a39868683818110612a0857612a08614ab5565b90506020020135858584818110612a2157612a21614ab5565b9050602002810190612a339190614acb565b85612cd2565b80612a4381614b27565b9150506129eb565b600080516020615293833981519152546000906001600160a01b03168015612b485760405163721804d360e11b81523060048201526000906001600160a01b0383169063e43009a690602401602060405180830381865afa158015612ab4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ad8919061501e565b60405163e66f960360e01b8152600481018290529091506001600160a01b0383169063e66f960390602401602060405180830381865afa158015612b20573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b449190615037565b9250505b5090565b6000612b5782612d97565b9050612b65816000846136af565b612b70600083613626565b6001600160a01b0381166000908152606860205260408120805460019290612b99908490614fb8565b909155505060008281526067602052604080822080546001600160a01b0319169055518391906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b60008585604051602001612c08929190615054565b60408051601f198184030181528282528051602091820120601f8901829004820284018201909252878352909250612c5c9183918990899081908401838280828437600092019190915250612d7292505050565b6111708187878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061397a915050565b612cdb84613aaf565b612d275760405162461bcd60e51b815260206004820152601c60248201527f5265636f726453746f726167653a204b45595f4e4f545f464f554e44000000006044820152606401610b60565b6114a584612d3486611962565b85858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525087925061397a915050565b612d7b82613aaf565b61108457600082815260c960205260409020610a138282615064565b6000818152606760205260408120546001600160a01b0316806109405760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b60565b6000828152610138602052604090208054612e1190614a66565b9050600003612e3557600082815261013860205260409020612e338282615064565b505b6001600160a01b03831660008181526101356020526040808220859055518492917feb76a21470988c474a21f690cc28fee1ed511bd812dc3c21fd0f49c5e5d4708a91a3505050565b606080612e8a84611962565b9150612e96848461378b565b90509250929050565b6000818152610137602052604081205460ff16801561094057506101366000612ec661229c565b6001600160a01b0316815260208101919091526040016000205460ff1692915050565b60008051602061529383398151915254604051633805550f60e01b81526001600160a01b03909116908190633805550f90612f2a9086908690600401614d69565b600060405180830381600087803b158015612f4457600080fd5b505af1158015610ef5573d6000803e3d6000fd5b816001600160a01b0316836001600160a01b031603612fb95760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610b60565b6001600160a01b038381166000818152606a6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561306d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613091919061501e565b9050600061313f8660600151805190602001208688602001516040516020016130df9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561316557508551613165906001600160a01b03168286613ad5565b9695505050505050565b60003033036131805750601f193601355b90565b606082858560405160200161319a93929190615123565b6040516020818303038152906040529050949350505050565b606081516001600160401b038111156131ce576131ce6144d7565b60405190808252806020026020018201604052801561320157816020015b60608152602001906001900390816131ec5790505b50905060005b82518110156113ff57600080306001600160a01b031685848151811061322f5761322f614ab5565b60200260200101516040516132449190614c1f565b600060405180830381855af49150503d806000811461327f576040519150601f19603f3d011682016040523d82523d6000602084013e613284565b606091505b50915091506132ac82826040518060600160405280602781526020016152b36027913961386d565b8484815181106132be576132be614ab5565b6020026020010181905250505080806132d690614b27565b915050613207565b6132e9848484612841565b6132f584848484613c17565b6114a55760405162461bcd60e51b8152600401610b6090615162565b6000818152610137602052604090205460ff16156111ca5760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a20544f4b454e5f555047524144454400000000000000006044820152606401610b60565b61337b84846122ab565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952836040516133ab9190613f78565b60405180910390a280156114a5576114a5848484612701565b6060610133805461095590614a66565b6060816000036133fb5750506040805180820190915260018152600360fc1b602082015290565b8160005b8115613425578061340f81614b27565b915061341e9050600a83614f8e565b91506133ff565b6000816001600160401b0381111561343f5761343f6144d7565b6040519080825280601f01601f191660200182016040528015613469576020820181803683370190505b5090505b8415610cab5761347e600183614fb8565b915061348b600a866151b4565b613496906030614f39565b60f81b8183815181106134ab576134ab614ab5565b60200101906001600160f81b031916908160001a9053506134cd600a86614f8e565b945061346d565b6134dd816127d4565b610ea08585858585612612565b6001600160a01b03811660008181526101356020526040808220829055517ffcf5eec0cfa3e6332f5f0e63ec242d71f866a61d121d6cdf5c2eb3b668a26c4f9190a250565b600054610100900460ff166135565760405162461bcd60e51b8152600401610b60906151c8565b60656135628382615064565b506066610a138282615064565b600054610100900460ff166135965760405162461bcd60e51b8152600401610b60906151c8565b565b600054610100900460ff166135bf5760405162461bcd60e51b8152600401610b60906151c8565b6111ca81613d1c565b600054610100900460ff166135ef5760405162461bcd60e51b8152600401610b60906151c8565b6111ca81613d75565b60008181526101006020526040902054613613906001614f39565b6000918252610100602052604090912055565b600081815260696020526040902080546001600160a01b0319166001600160a01b038416908117909155819061365b82612d97565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60003033036136aa575060331936013560601c90565b503390565b6001600160a01b0382166136c6576136c681613311565b600081815261013960205260409020546001600160401b031615613761576001600160a01b0382161580159061371557506136ff612a4b565b6001600160a01b0316826001600160a01b031614155b6137615760405162461bcd60e51b815260206004820152601960248201527f52656769737472793a20544f4b454e5f455850495241424c45000000000000006044820152606401610b60565b6001600160a01b03831660009081526101356020526040902054819003610a1357610a13836134ea565b606061379682612e9f565b156137b05750604080516020810190915260008152610940565b60ca60006137bd84613952565b8152602001908152602001600020600084815260200190815260200160002080546137e790614a66565b80601f016020809104026020016040519081016040528092919081815260200182805461381390614a66565b80156138605780601f1061383557610100808354040283529160200191613860565b820191906000526020600020905b81548152906001019060200180831161384357829003601f168201915b5050505050905092915050565b6060831561387c575081610db7565b82511561388c5782518084602001fd5b8160405162461bcd60e51b8152600401610b609190613f78565b600081516000036138f15760405162461bcd60e51b815260206004820152601560248201527452656769737472793a204c4142454c5f454d50545960581b6044820152606401610b60565b82826040516020016139039190614c1f565b60405160208183030381529060405280519060200120604051602001613933929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b600081815260cb602052604081205415612b4857600082815260cb6020526040902054610940565b60ca600061398783613952565b8152602001908152602001600020600085815260200190815260200160002080546139b190614a66565b9050600003613a0957826040516139c89190614c1f565b6040518091039020817f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f8685604051613a009190613f78565b60405180910390a35b8160ca6000613a1784613952565b815260200190815260200160002060008681526020019081526020016000209081613a429190615064565b5081604051613a519190614c1f565b604051809103902083604051613a679190614c1f565b6040518091039020827f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d928686604051613aa19291906146e2565b60405180910390a450505050565b600081815260c9602052604081208054829190613acb90614a66565b9050119050919050565b6000806000613ae48585613dc3565b90925090506000816004811115613afd57613afd615213565b148015613b1b5750856001600160a01b0316826001600160a01b0316145b15613b2b57600192505050610db7565b600080876001600160a01b0316631626ba7e60e01b8888604051602401613b53929190615229565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051613b919190614c1f565b600060405180830381855afa9150503d8060008114613bcc576040519150601f19603f3d011682016040523d82523d6000602084013e613bd1565b606091505b5091509150818015613be4575080516020145b8015613c0b57508051630b135d3f60e11b90613c09908301602090810190840161501e565b145b98975050505050505050565b60006001600160a01b0384163b15613d1457836001600160a01b031663150b7a02613c4061229c565b8786866040518563ffffffff1660e01b8152600401613c629493929190615242565b6020604051808303816000875af1925050508015613c9d575060408051601f3d908101601f19168201909252613c9a91810190615275565b60015b613cfa573d808015613ccb576040519150601f19603f3d011682016040523d82523d6000602084013e613cd0565b606091505b508051600003613cf25760405162461bcd60e51b8152600401610b6090615162565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610cab565b506001610cab565b600054610100900460ff16613d435760405162461bcd60e51b8152600401610b60906151c8565b806000805160206152938339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b600054610100900460ff16613d9c5760405162461bcd60e51b8152600401610b60906151c8565b807f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87613d54565b6000808251604103613df95760208301516040840151606085015160001a613ded87828585613e08565b94509450505050613e01565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613e3f5750600090506003613eec565b8460ff16601b14158015613e5757508460ff16601c14155b15613e685750600090506004613eec565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613ebc573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613ee557600060019250925050613eec565b9150600090505b94509492505050565b6001600160e01b0319811681146111ca57600080fd5b600060208284031215613f1d57600080fd5b8135610db781613ef5565b60005b83811015613f43578181015183820152602001613f2b565b50506000910152565b60008151808452613f64816020860160208601613f28565b601f01601f19169290920160200192915050565b602081526000610db76020830184613f4c565b600060208284031215613f9d57600080fd5b5035919050565b6001600160a01b03811681146111ca57600080fd5b60008060408385031215613fcc57600080fd5b8235613fd781613fa4565b946020939093013593505050565b60008083601f840112613ff757600080fd5b5081356001600160401b0381111561400e57600080fd5b602083019150836020828501011115613e0157600080fd5b60008060008060006080868803121561403e57600080fd5b853561404981613fa4565b9450602086013561405981613fa4565b93506040860135925060608601356001600160401b0381111561407b57600080fd5b61408788828901613fe5565b969995985093965092949392505050565b60008083601f8401126140aa57600080fd5b5081356001600160401b038111156140c157600080fd5b6020830191508360208260051b8501011115613e0157600080fd5b6000806000604084860312156140f157600080fd5b83356001600160401b0381111561410757600080fd5b61411386828701614098565b909790965060209590950135949350505050565b600082825180855260208086019550808260051b84010181860160005b8481101561417257601f19868403018952614160838351613f4c565b98840198925090830190600101614144565b5090979650505050505050565b602081526000610db76020830184614127565b6000806000604084860312156141a757600080fd5b83356001600160401b038111156141bd57600080fd5b61411386828701613fe5565b6000806000604084860312156141de57600080fd5b83356001600160401b03808211156141f557600080fd5b908501906080828803121561420957600080fd5b9093506020850135908082111561421f57600080fd5b5061422c86828701613fe5565b9497909650939450505050565b8035801515811461124557600080fd5b60008060008060008060008060a0898b03121561426557600080fd5b883561427081613fa4565b975060208901356001600160401b038082111561428c57600080fd5b6142988c838d01614098565b909950975060408b01359150808211156142b157600080fd5b6142bd8c838d01614098565b909750955060608b01359150808211156142d657600080fd5b506142e38b828c01614098565b90945092506142f6905060808a01614239565b90509295985092959890939650565b60008060006060848603121561431a57600080fd5b833561432581613fa4565b9250602084013561433581613fa4565b929592945050506040919091013590565b6000806020838503121561435957600080fd5b82356001600160401b0381111561436f57600080fd5b61437b85828601614098565b90969095509350505050565b60008060008060006060868803121561439f57600080fd5b85356001600160401b03808211156143b657600080fd5b6143c289838a01614098565b909750955060208801359150808211156143db57600080fd5b506143e888828901614098565b96999598509660400135949350505050565b6000806040838503121561440d57600080fd5b82356001600160401b0381168114613fd757600080fd5b60008060008060006060868803121561443c57600080fd5b85356001600160401b038082111561445357600080fd5b61445f89838a01613fe5565b9097509550602088013591508082111561447857600080fd5b506143e888828901613fe5565b6000806000806060858703121561449b57600080fd5b8435935060208501356001600160401b038111156144b857600080fd5b6144c487828801613fe5565b9598909750949560400135949350505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715614515576145156144d7565b604052919050565b600082601f83011261452e57600080fd5b81356001600160401b03811115614547576145476144d7565b61455a601f8201601f19166020016144ed565b81815284602083860101111561456f57600080fd5b816020850160208301376000918101602001919091529392505050565b60006020828403121561459e57600080fd5b81356001600160401b038111156145b457600080fd5b610cab8482850161451d565b6000602082840312156145d257600080fd5b8135610db781613fa4565b60006001600160401b038211156145f6576145f66144d7565b5060051b60200190565b600061461361460e846145dd565b6144ed565b8381529050602080820190600585901b84018681111561463257600080fd5b845b8181101561466d5780356001600160401b038111156146535760008081fd5b61465f8982890161451d565b855250928201928201614634565b505050509392505050565b60006020828403121561468a57600080fd5b81356001600160401b038111156146a057600080fd5b8201601f810184136146b157600080fd5b610cab84823560208401614600565b600080604083850312156146d357600080fd5b50508035926020909101359150565b6040815260006146f56040830185613f4c565b8281036020840152610db38185613f4c565b6000806000806060858703121561471d57600080fd5b843561472881613fa4565b93506020850135925060408501356001600160401b0381111561474a57600080fd5b61475687828801613fe5565b95989497509550505050565b60008060008060008060006080888a03121561477d57600080fd5b87356001600160401b038082111561479457600080fd5b6147a08b838c01613fe5565b909950975060208a0135965060408a01359150808211156147c057600080fd5b6147cc8b838c01614098565b909650945060608a01359150808211156147e557600080fd5b506147f28a828b01614098565b989b979a50959850939692959293505050565b6000806020838503121561481857600080fd5b82356001600160401b0381111561482e57600080fd5b61437b85828601613fe5565b6000806040838503121561484d57600080fd5b823561485881613fa4565b9150612e9660208401614239565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156148bb57603f198886030184526148a9858351613f4c565b9450928501929085019060010161488d565b5092979650505050505050565b6040815260006148db6040830185614127565b8281036020840152610db38185614127565b6000806000806080858703121561490357600080fd5b843561490e81613fa4565b9350602085013561491e81613fa4565b92506040850135915060608501356001600160401b0381111561494057600080fd5b61494c8782880161451d565b91505092959194509250565b60008060006040848603121561496d57600080fd5b833561497881613fa4565b925060208401356001600160401b0381111561499357600080fd5b61422c86828701613fe5565b600080604083850312156149b257600080fd5b82356149bd81613fa4565b915060208301356149cd81613fa4565b809150509250929050565b6000806000604084860312156149ed57600080fd5b8335925060208401356001600160401b0381111561499357600080fd5b60008060008060808587031215614a2057600080fd5b8435614a2b81613fa4565b93506020850135614a3b81613fa4565b92506040850135614a4b81613fa4565b91506060850135614a5b81613fa4565b939692955090935050565b600181811c90821680614a7a57607f821691505b6020821081036113ff57634e487b7160e01b600052602260045260246000fd5b600060208284031215614aac57600080fd5b610db782614239565b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112614ae257600080fd5b8301803591506001600160401b03821115614afc57600080fd5b602001915036819003821315613e0157600080fd5b634e487b7160e01b600052601160045260246000fd5b600060018201614b3957614b39614b11565b5060010190565b60208082526027908201527f52656769737472793a2053454e4445525f49535f4e4f545f4d494e54494e475f60408201526626a0a720a3a2a960c91b606082015260800190565b6000610db7368484614600565b60208082526029908201527f52656769737472793a2053454e4445525f49535f4e4f545f415050524f5645446040820152682fa7a92fa7aba722a960b91b606082015260800190565b60208082526022908201527f52656769737472793a20494e53554646494349454e545f5045524d495353494f6040820152614e5360f01b606082015260800190565b60008251614c31818460208701613f28565b9190910192915050565b601f821115610a1357600081815260208120601f850160051c81016020861015614c625750805b601f850160051c820191505b8181101561117057828155600101614c6e565b6001600160401b03831115614c9857614c986144d7565b614cac83614ca68354614a66565b83614c3b565b6000601f841160018114614ce05760008515614cc85750838201355b600019600387901b1c1916600186901b178355610ea0565b600083815260209020601f19861690835b82811015614d115786850135825560209485019460019092019101614cf1565b5086821015614d2e5760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b602081526000610cab602083018486614d40565b600060808236031215614d8f57600080fd5b604051608081016001600160401b038282108183111715614db257614db26144d7565b8160405284359150614dc382613fa4565b81835260208501356020840152604085013560408401526060850135915080821115614dee57600080fd5b50614dfb3682860161451d565b60608301525092915050565b6000614e1561460e846145dd565b80848252602080830192508560051b850136811115614e3357600080fd5b855b81811015614e6e5780356001600160401b03811115614e545760008081fd5b614e6036828a0161451d565b865250938201938201614e35565b50919695505050505050565b60008351614e8c818460208801613f28565b835190830190614ea0818360208801613f28565b01949350505050565b60006020808385031215614ebc57600080fd5b82356001600160401b03811115614ed257600080fd5b8301601f81018513614ee357600080fd5b8035614ef161460e826145dd565b81815260059190911b82018301908381019087831115614f1057600080fd5b928401925b82841015614f2e57833582529284019290840190614f15565b979650505050505050565b8082018082111561094057610940614b11565b6001600160a01b03848116825283166020820152606060408201819052600090610b6990830184613f4c565b634e487b7160e01b600052601260045260246000fd5b600082614f9d57614f9d614f78565b500490565b634e487b7160e01b600052600160045260246000fd5b8181038181111561094057610940614b11565b600081614fda57614fda614b11565b506000190190565b60008351614ff4818460208801613f28565b601760f91b9083019081528351615012816001840160208801613f28565b01600101949350505050565b60006020828403121561503057600080fd5b5051919050565b60006020828403121561504957600080fd5b8151610db781613fa4565b8183823760009101908152919050565b81516001600160401b0381111561507d5761507d6144d7565b6150918161508b8454614a66565b84614c3b565b602080601f8311600181146150c657600084156150ae5750858301515b600019600386901b1c1916600185901b178555611170565b600085815260208120601f198616915b828110156150f5578886015182559484019460019091019084016150d6565b50858210156151135787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60008451615135818460208901613f28565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6000826151c3576151c3614f78565b500690565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b634e487b7160e01b600052602160045260246000fd5b828152604060208201526000610cab6040830184613f4c565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061316590830184613f4c565b60006020828403121561528757600080fd5b8151610db781613ef556febe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a","storage":{}},"0x6ac8f19d1e0f81147cdf2a1e53cb1f4e18417204":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610296575f3560e01c80636352211e11610161578063c93ab3fd116100ca578063e985e9c511610084578063e985e9c5146106c8578063eb8ae530146106db578063ed70554d146106ee578063f242432a1461070d578063f2fde38b14610720578063fd0cd0d914610733575f80fd5b8063c93ab3fd14610647578063cf4088231461065a578063d8c9921a1461066d578063d9a50c1214610680578063da8c229e14610693578063e0dba60f146106b5575f80fd5b8063a22cb4651161011b578063a22cb465146105d5578063a4014982146105e8578063adf4960a146105fb578063b6bcad261461060e578063c475abff14610621578063c658e08614610634575f80fd5b80636352211e146105595780636e5d6ad21461056c578063715018a6146105975780638b4dfa751461059f5780638cf8b41e146105b25780638da5cb5b146105c5575f80fd5b80631f4e1504116102035780633f15457f116101bd5780633f15457f146104b1578063402906fc146104d857806341415eab146105005780634e1273f41461051357806353095467146105335780635d3590d514610546575f80fd5b80631f4e15041461042b57806320c38e2b1461043e57806324c1af44146104515780632b20e397146104645780632eb2c2d61461048b57806333c69ea91461049e575f80fd5b80630e4cd725116102545780630e4cd725146103a05780630e89341c146103b357806314ab9038146103c6578063150b7a02146103d95780631534e177146104055780631896f70a14610418575f80fd5b8062fdd58e1461029a5780630178fe3f146102c057806301ffc9a71461030657806306fdde0314610329578063081812fc14610360578063095ea7b31461038b575b5f80fd5b6102ad6102a8366004614316565b610746565b6040519081526020015b60405180910390f35b6102d36102ce366004614340565b6107f0565b604080516001600160a01b03909416845263ffffffff90921660208401526001600160401b0316908201526060016102b7565b61031961031436600461436c565b61081f565b60405190151581526020016102b7565b6103536040518060400160405280600b81526020016a2730b6b2abb930b83832b960a91b81525081565b6040516102b791906143d4565b61037361036e366004614340565b61085e565b6040516001600160a01b0390911681526020016102b7565b61039e610399366004614316565b6108a0565b005b6103196103ae3660046143e6565b6108e5565b6103536103c1366004614340565b61095e565b61039e6103d436600461442f565b6109cc565b6103ec6103e736600461449d565b610ac0565b6040516001600160e01b031990911681526020016102b7565b61039e61041336600461450a565b610c96565b61039e6104263660046143e6565b610cc0565b600754610373906001600160a01b031681565b61035361044c366004614340565b610d75565b6102ad61045f3660046145f6565b610e0c565b6103737f000000000000000000000000c965345edac823d56812cd20a10316233916a60581565b61039e610499366004614717565b610fe7565b61039e6104ac3660046147bd565b61121a565b6103737f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a981565b6104eb6104e6366004614811565b6113e6565b60405163ffffffff90911681526020016102b7565b61031961050e3660046143e6565b611480565b610526610521366004614832565b6114b8565b6040516102b79190614928565b600554610373906001600160a01b031681565b61039e61055436600461493a565b6115d7565b610373610567366004614340565b611655565b61057f61057a366004614978565b61165f565b6040516001600160401b0390911681526020016102b7565b61039e61178e565b61039e6105ad3660046149aa565b6117a1565b61057f6105c03660046149e9565b6118c0565b5f546001600160a01b0316610373565b61039e6105e3366004614a6b565b611c28565b6102ad6105f6366004614a97565b611cfd565b610319610609366004614b12565b611e38565b61039e61061c36600461450a565b611e5c565b6102ad61062f366004614b33565b61209e565b6102ad610642366004614b53565b6122fd565b61039e610655366004614bc0565b6124bd565b61039e610668366004614c26565b612605565b61039e61067b366004614c5b565b612794565b61031961068e366004614b33565b61285d565b6103196106a136600461450a565b60046020525f908152604090205460ff1681565b61039e6106c3366004614a6b565b612938565b6103196106d6366004614c86565b61299f565b61039e6106e9366004614cb2565b6129cc565b6102ad6106fc366004614340565b60016020525f908152604090205481565b61039e61071b366004614d15565b612d59565b61039e61072e36600461450a565b612e06565b610319610741366004614340565b612e7c565b5f6001600160a01b0383166107b65760405162461bcd60e51b815260206004820152602b60248201527f455243313135353a2062616c616e636520717565727920666f7220746865207a60448201526a65726f206164647265737360a81b60648201526084015b60405180910390fd5b5f6107c083611655565b9050836001600160a01b0316816001600160a01b0316036107e55760019150506107ea565b5f9150505b92915050565b5f8181526001602052604090205460a081901c60c082901c610813838383612f4d565b90959094509092509050565b5f6001600160e01b03198216631b05885b60e31b148061084f57506001600160e01b03198216630a85bd0160e11b145b806107ea57506107ea82612f80565b5f8061086983611655565b90506001600160a01b03811661088157505f92915050565b5f838152600360205260409020546001600160a01b03165b9392505050565b5f6108aa826107f0565b50915050603f1960408216016108d65760405163a2a7201360e01b8152600481018390526024016107ad565b6108e08383612fcf565b505050565b5f8080806108f2866107f0565b925092509250846001600160a01b0316836001600160a01b0316148061091d575061091d838661299f565b8061094157506001600160a01b0385166109368761085e565b6001600160a01b0316145b8015610954575061095282826130de565b155b9695505050505050565b6005546040516303a24d0760e21b8152600481018390526060916001600160a01b031690630e89341c906024015f60405180830381865afa1580156109a5573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526107ea9190810190614d78565b816109d78133611480565b6109f857803360405163168ab55d60e31b81526004016107ad929190614dea565b8260105f610a05836107f0565b5091505063ffffffff8282161615610a335760405163a2a7201360e01b8152600481018490526024016107ad565b604051630295720760e31b8152600481018790526001600160401b03861660248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906314ab9038906044015b5f604051808303815f87803b158015610aa2575f80fd5b505af1158015610ab4573d5f803e3d5ffd5b50505050505050505050565b5f336001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a6051614610b0a5760405163032634a760e31b815260040160405180910390fd5b5f808080610b1a86880188614e01565b83516020850120939750919550935091508890808214610b57576040516331970f3360e21b815260048101829052602481018390526044016107ad565b604051630a3b53db60e21b81526001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906328ed4f6c90610ba59085903090600401614dea565b5f604051808303815f87803b158015610bbc575f80fd5b505af1158015610bce573d5f803e3d5ffd5b5050604051636b727d4360e11b8152600481018d90525f92506276a70091506001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063d6e4fa8690602401602060405180830381865afa158015610c3c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c609190614e64565b610c6a9190614e8f565b9050610c7d87878761ffff16848861310d565b50630a85bd0160e11b9c9b505050505050505050505050565b610c9e613215565b600580546001600160a01b0319166001600160a01b0392909216919091179055565b81610ccb8133611480565b610cec57803360405163168ab55d60e31b81526004016107ad929190614dea565b8260085f610cf9836107f0565b5091505063ffffffff8282161615610d275760405163a2a7201360e01b8152600481018490526024016107ad565b604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a90610a8b9089908990600401614dea565b60066020525f908152604090208054610d8d90614eb6565b80601f0160208091040260200160405190810160405280929190818152602001828054610db990614eb6565b8015610e045780601f10610ddb57610100808354040283529160200191610e04565b820191905f5260205f20905b815481529060010190602001808311610de757829003601f168201915b505050505081565b5f87610e188133611480565b610e3957803360405163168ab55d60e31b81526004016107ad929190614dea565b87516020890120610e4a8a8261326e565b9250610e568a8461329a565b610e6083866133d3565b610e6b8a848b613406565b50610e788a8487876134cd565b9350610e8383613510565b610f33576040516305ef2c7f60e41b8152600481018b9052602481018290523060448201526001600160a01b0388811660648301526001600160401b03881660848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610f0a575f80fd5b505af1158015610f1c573d5f803e3d5ffd5b50505050610f2e8a848b8b89896135c6565b610fda565b6040516305ef2c7f60e41b8152600481018b9052602481018290523060448201526001600160a01b0388811660648301526001600160401b03881660848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610fb6575f80fd5b505af1158015610fc8573d5f803e3d5ffd5b50505050610fda8a848b8b89896135fc565b5050979650505050505050565b81518351146110495760405162461bcd60e51b815260206004820152602860248201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206044820152670dad2e6dac2e8c6d60c31b60648201526084016107ad565b6001600160a01b03841661106f5760405162461bcd60e51b81526004016107ad90614eee565b6001600160a01b03851633148061108b575061108b853361299f565b6110f25760405162461bcd60e51b815260206004820152603260248201527f455243313135353a207472616e736665722063616c6c6572206973206e6f74206044820152711bdddb995c881b9bdc88185c1c1c9bdd995960721b60648201526084016107ad565b5f5b83518110156111ad575f84828151811061111057611110614f33565b602002602001015190505f84838151811061112d5761112d614f33565b602002602001015190505f805f611143856107f0565b9250925092506111548583836136b6565b83600114801561117557508a6001600160a01b0316836001600160a01b0316145b6111915760405162461bcd60e51b81526004016107ad90614f47565b61119d858b848461375d565b50505050508060010190506110f4565b50836001600160a01b0316856001600160a01b0316336001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516111fd929190614f91565b60405180910390a461121333868686868661379d565b5050505050565b5f611225858561326e565b905061123181846133d3565b5f808061123d846107f0565b919450925090506001600160a01b03831615806112ea57506040516302571be360e01b81526004810185905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa1580156112ba573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112de9190614fbe565b6001600160a01b031614155b1561130857604051635374b59960e01b815260040160405180910390fd5b5f806113138a6107f0565b90935091508a905061134f576113298633611480565b61134a57853360405163168ab55d60e31b81526004016107ad929190614dea565b61137a565b6113598a33611480565b61137a57893360405163168ab55d60e31b81526004016107ad929190614dea565b6113858689846138f7565b611390878483613932565b9650620100008416158015906113b457508363ffffffff1688851763ffffffff1614155b156113d55760405163a2a7201360e01b8152600481018790526024016107ad565b96831796610ab486868a868b613977565b5f826113f28133611480565b61141357803360405163168ab55d60e31b81526004016107ad929190614dea565b8360025f611420836107f0565b5091505063ffffffff828216161561144e5760405163a2a7201360e01b8152600481018490526024016107ad565b5f808061145a8a6107f0565b9250925092506114738a84848c61ffff16178485613977565b5098975050505050505050565b5f80808061148d866107f0565b925092509250846001600160a01b0316836001600160a01b031614806109415750610941838661299f565b6060815183511461151d5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b60648201526084016107ad565b5f83516001600160401b0381111561153757611537614525565b604051908082528060200260200182016040528015611560578160200160208202803683370190505b5090505f5b84518110156115cf576115aa85828151811061158357611583614f33565b602002602001015185838151811061159d5761159d614f33565b6020026020010151610746565b8282815181106115bc576115bc614f33565b6020908102919091010152600101611565565b509392505050565b6115df613215565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af115801561162b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061164f9190614fd9565b50505050565b5f6107ea82613a1e565b5f8061166b858561326e565b905061167681613510565b61169357604051635374b59960e01b815260040160405180910390fd5b5f61169e86336108e5565b9050801580156116b557506116b38233611480565b155b156116d757813360405163168ab55d60e31b81526004016107ad929190614dea565b5f80806116e3856107f0565b925092509250831580156116fa5750620400008216155b1561171b5760405163a2a7201360e01b8152600481018690526024016107ad565b5f6117258a6107f0565b92505050611734888383613932565b97506117428685858b613a33565b6040516001600160401b038916815286907ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b1329060200160405180910390a2509598975050505050505050565b611796613215565b61179f5f613a49565b565b6117b85f805160206154fc8339815191528461326e565b6117c28133611480565b6117e357803360405163168ab55d60e31b81526004016107ad929190614dea565b306001600160a01b0384160361181757604051632ca49b0d60e11b81526001600160a01b03841660048201526024016107ad565b6118376118315f805160206154fc8339815191528661326e565b83613a98565b604051632142170760e11b81523060048201526001600160a01b038481166024830152604482018690527f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906342842e0e906064015f604051808303815f87803b1580156118a4575f80fd5b505af11580156118b6573d5f803e3d5ffd5b5050505050505050565b5f8086866040516118d2929190614ff4565b6040519081900381206331a9108f60e11b82526004820181905291505f907f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa15801561193f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119639190614fbe565b90506001600160a01b0381163314801590611a09575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063e985e9c590604401602060405180830381865afa1580156119e3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a079190614fd9565b155b15611a4157611a255f805160206154fc8339815191528361326e565b3360405163168ab55d60e31b81526004016107ad929190614dea565b6040516323b872dd60e01b81526001600160a01b038281166004830152306024830152604482018490527f000000000000000000000000c965345edac823d56812cd20a10316233916a60516906323b872dd906064015f604051808303815f87803b158015611aae575f80fd5b505af1158015611ac0573d5f803e3d5ffd5b5050604051630a3b53db60e21b81526001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a6051692506328ed4f6c9150611b129085903090600401614dea565b5f604051808303815f87803b158015611b29575f80fd5b505af1158015611b3b573d5f803e3d5ffd5b5050604051636b727d4360e11b8152600481018590526276a70092507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b0316915063d6e4fa8690602401602060405180830381865afa158015611ba7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611bcb9190614e64565b611bd59190614e8f565b9250611c1d88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508a9250505061ffff8816868861310d565b505095945050505050565b6001600160a01b0382163303611c925760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084016107ad565b335f8181526002602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b335f9081526004602052604081205460ff16611d2b5760405162461bcd60e51b81526004016107ad90615003565b5f8787604051611d3c929190614ff4565b604051908190038120633f2891eb60e21b8252600482018190523060248301526044820187905291507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b03169063fca247ac906064016020604051808303815f875af1158015611db5573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611dd99190614e64565b9150611e2d88888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508a9250505061ffff8616611e276276a70087614e8f565b8861310d565b509695505050505050565b5f80611e43846107f0565b50841663ffffffff908116908516149250505092915050565b611e64613215565b6007546001600160a01b031615611f785760075460405163a22cb46560e01b81526001600160a01b0391821660048201525f60248201527f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063a22cb465906044015f604051808303815f87803b158015611ee0575f80fd5b505af1158015611ef2573d5f803e3d5ffd5b505060075460405163a22cb46560e01b81526001600160a01b0391821660048201525f60248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9909116925063a22cb46591506044015f604051808303815f87803b158015611f61575f80fd5b505af1158015611f73573d5f803e3d5ffd5b505050505b600780546001600160a01b0319166001600160a01b0383169081179091551561209b5760075460405163a22cb46560e01b81526001600160a01b039182166004820152600160248201527f000000000000000000000000c965345edac823d56812cd20a10316233916a6059091169063a22cb465906044015f604051808303815f87803b158015612007575f80fd5b505af1158015612019573d5f803e3d5ffd5b505060075460405163a22cb46560e01b81526001600160a01b039182166004820152600160248201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9909116925063a22cb46591506044015f604051808303815f87803b158015612089575f80fd5b505af1158015611213573d5f803e3d5ffd5b50565b335f9081526004602052604081205460ff166120cc5760405162461bcd60e51b81526004016107ad90615003565b5f6120e45f805160206154fc8339815191528561326e565b60405163c475abff60e01b815260048101869052602481018590529091505f906001600160a01b037f000000000000000000000000c965345edac823d56812cd20a10316233916a605169063c475abff906044016020604051808303815f875af1158015612154573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906121789190614e64565b6040516331a9108f60e11b8152600481018790529091507f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa9250505080156121fc575060408051601f3d908101601f191682019092526121f991810190614fbe565b60015b6122095791506107ea9050565b6001600160a01b038116301415806122b157506040516302571be360e01b81526004810184905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015612281573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906122a59190614fbe565b6001600160a01b031614155b156122c0575091506107ea9050565b505f6122cf6276a70083614e8f565b5f8481526001602052604090205490915060a081901c6122f185838386613a33565b50919695505050505050565b5f866123098133611480565b61232a57803360405163168ab55d60e31b81526004016107ad929190614dea565b5f878760405161233b929190614ff4565b6040518091039020905061234f898261326e565b925061235b898461329a565b61236583866133d3565b5f6123a68a858b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061340692505050565b90506123b48a8588886134cd565b94506123bf84613510565b61246b576040516306ab592360e01b8152600481018b9052602481018390523060448201527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906306ab5923906064016020604051808303815f875af1158015612434573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906124589190614e64565b506124668482898989613b83565b6124b0565b6124b08a858b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508d92508c91508b90506135fc565b5050509695505050505050565b5f6125005f86868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613bc59050565b6007549091506001600160a01b031661252c5760405163093075b560e21b815260040160405180910390fd5b6125368133611480565b61255757803360405163168ab55d60e31b81526004016107ad929190614dea565b5f8080612563846107f0565b919450925090505f6125748561085e565b905061257f85613c81565b60075f9054906101000a90046001600160a01b03166001600160a01b0316639198c2768a8a878787878e8e6040518963ffffffff1660e01b81526004016125cd989796959493929190615073565b5f604051808303815f87803b1580156125e4575f80fd5b505af11580156125f6573d5f803e3d5ffd5b50505050505050505050505050565b836126108133611480565b61263157803360405163168ab55d60e31b81526004016107ad929190614dea565b84601c5f61263e836107f0565b5091505063ffffffff828216161561266c5760405163a2a7201360e01b8152600481018490526024016107ad565b60405163cf40882360e01b8152600481018990523060248201526001600160a01b0387811660448301526001600160401b03871660648301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063cf408823906084015f604051808303815f87803b1580156126e8575f80fd5b505af11580156126fa573d5f803e3d5ffd5b5050506001600160a01b038816905061275f575f612717896107f0565b509150506201ffff196202000082160161274f57604051632ca49b0d60e11b81526001600160a01b03891660048201526024016107ad565b612759895f613a98565b506118b6565b5f61276989611655565b905061278981898b5f1c600160405180602001604052805f815250613d1e565b505050505050505050565b61279e838361326e565b6127a88133611480565b6127c957803360405163168ab55d60e31b81526004016107ad929190614dea565b7f6c32148f748aba23997146d7fe89e962e3cc30271290fb96f5f4337756c03b5284016128095760405163615a470360e01b815260040160405180910390fd5b6001600160a01b038216158061282757506001600160a01b03821630145b1561285057604051632ca49b0d60e11b81526001600160a01b03831660048201526024016107ad565b61164f611831858561326e565b5f80612869848461326e565b90505f61287582613510565b90505f805160206154fc83398151915285146128945791506107ea9050565b6040516331a9108f60e11b8152600481018590527f000000000000000000000000c965345edac823d56812cd20a10316233916a6056001600160a01b031690636352211e90602401602060405180830381865afa925050508015612915575060408051601f3d908101601f1916820190925261291291810190614fbe565b60015b612923575f925050506107ea565b6001600160a01b0316301492506107ea915050565b612940613215565b6001600160a01b0382165f81815260046020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf8791015b60405180910390a25050565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205460ff1690565b5f80612a105f87878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613dfe9050565b915091505f612a578288888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509293925050613bc59050565b90505f612a64828561326e565b5f818152600660205260409020909150612a7f888a8361511e565b507f6c32148f748aba23997146d7fe89e962e3cc30271290fb96f5f4337756c03b528201612ac05760405163615a470360e01b815260040160405180910390fd5b6040516302571be360e01b8152600481018290525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa158015612b25573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612b499190614fbe565b90506001600160a01b0381163314801590612bef575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063e985e9c590604401602060405180830381865afa158015612bc9573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612bed9190614fd9565b155b15612c1157813360405163168ab55d60e31b81526004016107ad929190614dea565b6001600160a01b03861615612c9c57604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a90612c6e9085908a90600401614dea565b5f604051808303815f87803b158015612c85575f80fd5b505af1158015612c97573d5f803e3d5ffd5b505050505b604051635b0fc9c360e01b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635b0fc9c390612cea9085903090600401614dea565b5f604051808303815f87803b158015612d01575f80fd5b505af1158015612d13573d5f803e3d5ffd5b50505050612789828a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201829052508d93509150819050613b83565b6001600160a01b038416612d7f5760405162461bcd60e51b81526004016107ad90614eee565b6001600160a01b038516331480612d9b5750612d9b853361299f565b612df95760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2063616c6c6572206973206e6f74206f776e6572206e6f7260448201526808185c1c1c9bdd995960ba1b60648201526084016107ad565b6112138585858585613d1e565b612e0e613215565b6001600160a01b038116612e735760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107ad565b61209b81613a49565b5f8181526006602052604081208054829190612e9790614eb6565b80601f0160208091040260200160405190810160405280929190818152602001828054612ec390614eb6565b8015612f0e5780601f10612ee557610100808354040283529160200191612f0e565b820191905f5260205f20905b815481529060010190602001808311612ef157829003601f168201915b5050505050905080515f03612f2557505f92915050565b5f80612f318382613dfe565b90925090505f612f418483613bc5565b9050610954818461285d565b5f8042836001600160401b03161015612f775761ffff1962010000851601612f73575f94505b5f93505b50929391925050565b5f6001600160e01b03198216636cdb3d1360e11b1480612fb057506001600160e01b031982166303a24d0760e21b145b806107ea57506301ffc9a760e01b6001600160e01b03198316146107ea565b5f612fd982611655565b9050806001600160a01b0316836001600160a01b0316036130465760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084016107ad565b336001600160a01b03821614806130625750613062813361299f565b6130d45760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016107ad565b6108e08383613eb2565b5f620200008381161480156108995750426130fc6276a700846151d7565b6001600160401b0316109392505050565b845160208601205f61312c5f805160206154fc8339815191528361326e565b90505f61315488604051806040016040528060058152602001626cae8d60e31b815250613f1f565b5f83815260066020526040902090915061316e82826151f7565b50613181828289620300008a1789613b83565b6001600160a01b038416156118b657604051630c4b7b8560e11b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690631896f70a906131de9085908890600401614dea565b5f604051808303815f87803b1580156131f5575f80fd5b505af1158015613207573d5f803e3d5ffd5b505050505050505050505050565b5f546001600160a01b0316331461179f5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107ad565b604080516020808201949094528082019290925280518083038201815260609092019052805191012090565b5f80806132a6846107f0565b91945092509050426001600160401b0382161080801561336657506001600160a01b038416158061336657506040516302571be360e01b8152600481018690525f906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015613337573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061335b9190614fbe565b6001600160a01b0316145b156133a4575f613375876107f0565b50915050602081161561339e5760405163a2a7201360e01b8152600481018790526024016107ad565b506133cb565b620100008316156133cb5760405163a2a7201360e01b8152600481018690526024016107ad565b505050505050565b63fffdffff81811763ffffffff16146134025760405163a2a7201360e01b8152600481018390526024016107ad565b5050565b60605f6134aa8360065f8881526020019081526020015f20805461342990614eb6565b80601f016020809104026020016040519081016040528092919081815260200182805461345590614eb6565b80156134a05780601f10613477576101008083540402835291602001916134a0565b820191905f5260205f20905b81548152906001019060200180831161348357829003601f168201915b5050505050613f1f565b5f8581526006602052604090209091506134c482826151f7565b50949350505050565b5f806134d8856107f0565b925050505f806134e9885f1c6107f0565b92509250506134f98787846138f7565b613504858483613932565b98975050505050505050565b5f8061351b83611655565b6001600160a01b0316141580156107ea57506040516302571be360e01b81526004810183905230906001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a916906302571be390602401602060405180830381865afa158015613592573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906135b69190614fbe565b6001600160a01b03161492915050565b5f86815260066020526040812080546135e491879161342990614eb6565b90506135f38682868686613b83565b50505050505050565b5f8080613608886107f0565b9250925092505f61362f8860065f8d81526020019081526020015f20805461342990614eb6565b5f8a815260066020526040902080549192509061364b90614eb6565b90505f0361366c575f89815260066020526040902061366a82826151f7565b505b61367b89858886178589613977565b6001600160a01b03871661369857613693895f613a98565b610ab4565b610ab484888b5f1c600160405180602001604052805f815250613d1e565b6201ffff19620200008316016136d6576136d36276a700826151d7565b90505b42816001600160401b0316101561370f576201000082161561370a5760405162461bcd60e51b81526004016107ad90614f47565b613734565b60048216156137345760405163a2a7201360e01b8152600481018490526024016107ad565b604082165f036108e05750505f90815260036020526040902080546001600160a01b0319169055565b60c0816001600160401b0316901b60a08363ffffffff16901b846001600160a01b0316171760015f8681526020019081526020015f208190555050505050565b6001600160a01b0384163b156133cb5760405163bc197c8160e01b81526001600160a01b0385169063bc197c81906137e190899089908890889088906004016152b2565b6020604051808303815f875af192505050801561381b575060408051601f3d908101601f1916820190925261381891810190615303565b60015b6138c75761382761531e565b806308c379a003613860575061383b615337565b806138465750613862565b8060405162461bcd60e51b81526004016107ad91906143d4565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e20455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b60648201526084016107ad565b6001600160e01b0319811663bc197c8160e01b146135f35760405162461bcd60e51b81526004016107ad906153bf565b63ffff000082161580159060018316159082906139115750805b156112135760405163a2a7201360e01b8152600481018690526024016107ad565b5f816001600160401b0316846001600160401b03161115613951578193505b826001600160401b0316846001600160401b0316101561396f578293505b509192915050565b61398385858584613a33565b60405163ffffffff8416815285907f39873f00c80f4f94b7bd1594aebcf650f003545b74824d57ddf4939e3ff3a34b9060200160405180910390a2816001600160401b0316816001600160401b03161115611213576040516001600160401b038216815285907ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b132906020015b60405180910390a25050505050565b5f80613a29836107f0565b5090949350505050565b613a3d8483613f96565b61164f8484848461375d565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b613aa3826001611e38565b15613ac45760405163a2a7201360e01b8152600481018390526024016107ad565b613acd82613c81565b604051635b0fc9c360e01b81526001600160a01b037f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635b0fc9c390613b1b9085908590600401614dea565b5f604051808303815f87803b158015613b32575f80fd5b505af1158015613b44573d5f803e3d5ffd5b50506040516001600160a01b03841681528492507fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c49150602001612993565b613b8f85848484613fcf565b847f8ce7013e8abebc55c3890a68f5a27c67c3f7efa64e584de5fb22363c606fd34085858585604051613a0f9493929190615407565b5f805f613bd28585613dfe565b909250905081613c435760018551613bea919061544d565b8414613c385760405162461bcd60e51b815260206004820152601d60248201527f6e616d65686173683a204a756e6b20617420656e64206f66206e616d6500000060448201526064016107ad565b505f91506107ea9050565b613c4d8582613bc5565b6040805160208101929092528101839052606001604051602081830303815290604052805190602001209250505092915050565b5f8181526001602052604090205460a081901c60c082901c613ca4838383612f4d565b5f86815260036020526040812080546001600160a01b0319169055909350613cd091508590848461375d565b60408051858152600160208201525f916001600160a01b0386169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b5f805f613d2a866107f0565b925092509250613d3b8683836136b6565b846001148015613d5c5750876001600160a01b0316836001600160a01b0316145b613d785760405162461bcd60e51b81526004016107ad90614f47565b866001600160a01b0316836001600160a01b031603613d9957505050611213565b613da58688848461375d565b60408051878152602081018790526001600160a01b03808a1692908b169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46118b6338989898989614041565b5f8083518310613e505760405162461bcd60e51b815260206004820152601e60248201527f726561644c6162656c3a20496e646578206f7574206f6620626f756e6473000060448201526064016107ad565b5f848481518110613e6357613e63614f33565b016020015160f81c90508015613e8f57613e8885613e82866001615460565b836140fb565b9250613e93565b5f92505b613e9d8185615460565b613ea8906001615460565b9150509250929050565b5f81815260036020526040902080546001600160a01b0319166001600160a01b0384169081179091558190613ee682611655565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6060600183511015613f4457604051631406d65b60e11b815260040160405180910390fd5b60ff83511115613f69578260405163e3ba295f60e01b81526004016107ad91906143d4565b82518383604051602001613f7f93929190615473565b604051602081830303815290604052905092915050565b61ffff811615801590613fae57506201000181811614155b156134025760405163a2a7201360e01b8152600481018390526024016107ad565b613fd98483613f96565b5f848152600160205260409020546001600160a01b0381161561403557613fff85613c81565b6040515f815285907fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c49060200160405180910390a25b6112138585858561411d565b6001600160a01b0384163b156133cb5760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e619061408590899089908890889088906004016154b7565b6020604051808303815f875af19250505080156140bf575060408051601f3d908101601f191682019092526140bc91810190615303565b60015b6140cb5761382761531e565b6001600160e01b0319811663f23a6e6160e01b146135f35760405162461bcd60e51b81526004016107ad906153bf565b82515f906141098385615460565b1115614113575f80fd5b5091016020012090565b835f808061412a846107f0565b9194509250905063ffff000082166001600160401b038087169083161115614150578195505b42826001600160401b03161061416557958617955b6001600160a01b038416156141bc5760405162461bcd60e51b815260206004820152601f60248201527f455243313135353a206d696e74206f66206578697374696e6720746f6b656e0060448201526064016107ad565b6001600160a01b03881661421c5760405162461bcd60e51b815260206004820152602160248201527f455243313135353a206d696e7420746f20746865207a65726f206164647265736044820152607360f81b60648201526084016107ad565b306001600160a01b038916036142915760405162461bcd60e51b815260206004820152603460248201527f455243313135353a206e65774f776e65722063616e6e6f74206265207468652060448201527313985b5955dc985c1c195c8818dbdb9d1c9858dd60621b60648201526084016107ad565b61429d8589898961375d565b60408051868152600160208201526001600160a01b038a16915f9133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4612789335f8a88600160405180602001604052805f815250614041565b6001600160a01b038116811461209b575f80fd5b5f8060408385031215614327575f80fd5b823561433281614302565b946020939093013593505050565b5f60208284031215614350575f80fd5b5035919050565b6001600160e01b03198116811461209b575f80fd5b5f6020828403121561437c575f80fd5b813561089981614357565b5f5b838110156143a1578181015183820152602001614389565b50505f910152565b5f81518084526143c0816020860160208601614387565b601f01601f19169290920160200192915050565b602081525f61089960208301846143a9565b5f80604083850312156143f7575f80fd5b82359150602083013561440981614302565b809150509250929050565b80356001600160401b038116811461442a575f80fd5b919050565b5f8060408385031215614440575f80fd5b8235915061445060208401614414565b90509250929050565b5f8083601f840112614469575f80fd5b5081356001600160401b0381111561447f575f80fd5b602083019150836020828501011115614496575f80fd5b9250929050565b5f805f805f608086880312156144b1575f80fd5b85356144bc81614302565b945060208601356144cc81614302565b93506040860135925060608601356001600160401b038111156144ed575f80fd5b6144f988828901614459565b969995985093965092949392505050565b5f6020828403121561451a575f80fd5b813561089981614302565b634e487b7160e01b5f52604160045260245ffd5b601f8201601f191681016001600160401b038111828210171561455e5761455e614525565b6040525050565b5f6001600160401b0382111561457d5761457d614525565b50601f01601f191660200190565b5f82601f83011261459a575f80fd5b81356145a581614565565b6040516145b28282614539565b8281528560208487010111156145c6575f80fd5b826020860160208301375f92810160200192909252509392505050565b803563ffffffff8116811461442a575f80fd5b5f805f805f805f60e0888a03121561460c575f80fd5b8735965060208801356001600160401b03811115614628575f80fd5b6146348a828b0161458b565b965050604088013561464581614302565b9450606088013561465581614302565b935061466360808901614414565b925061467160a089016145e3565b915061467f60c08901614414565b905092959891949750929550565b5f6001600160401b038211156146a5576146a5614525565b5060051b60200190565b5f82601f8301126146be575f80fd5b813560206146cb8261468d565b6040516146d88282614539565b80915083815260208101915060208460051b8701019350868411156146fb575f80fd5b602086015b84811015611e2d5780358352918301918301614700565b5f805f805f60a0868803121561472b575f80fd5b853561473681614302565b9450602086013561474681614302565b935060408601356001600160401b0380821115614761575f80fd5b61476d89838a016146af565b94506060880135915080821115614782575f80fd5b61478e89838a016146af565b935060808801359150808211156147a3575f80fd5b506147b08882890161458b565b9150509295509295909350565b5f805f80608085870312156147d0575f80fd5b84359350602085013592506147e7604086016145e3565b91506147f560608601614414565b905092959194509250565b803561ffff8116811461442a575f80fd5b5f8060408385031215614822575f80fd5b8235915061445060208401614800565b5f8060408385031215614843575f80fd5b82356001600160401b0380821115614859575f80fd5b818501915085601f83011261486c575f80fd5b813560206148798261468d565b6040516148868282614539565b83815260059390931b85018201928281019150898411156148a5575f80fd5b948201945b838610156148cc5785356148bd81614302565b825294820194908201906148aa565b965050860135925050808211156148e1575f80fd5b50613ea8858286016146af565b5f815180845260208085019450602084015f5b8381101561491d57815187529582019590820190600101614901565b509495945050505050565b602081525f61089960208301846148ee565b5f805f6060848603121561494c575f80fd5b833561495781614302565b9250602084013561496781614302565b929592945050506040919091013590565b5f805f6060848603121561498a575f80fd5b83359250602084013591506149a160408501614414565b90509250925092565b5f805f606084860312156149bc575f80fd5b8335925060208401356149ce81614302565b915060408401356149de81614302565b809150509250925092565b5f805f805f608086880312156149fd575f80fd5b85356001600160401b03811115614a12575f80fd5b614a1e88828901614459565b9096509450506020860135614a3281614302565b9250614a4060408701614800565b91506060860135614a5081614302565b809150509295509295909350565b801515811461209b575f80fd5b5f8060408385031215614a7c575f80fd5b8235614a8781614302565b9150602083013561440981614a5e565b5f805f805f8060a08789031215614aac575f80fd5b86356001600160401b03811115614ac1575f80fd5b614acd89828a01614459565b9097509550506020870135614ae181614302565b9350604087013592506060870135614af881614302565b9150614b0660808801614800565b90509295509295509295565b5f8060408385031215614b23575f80fd5b82359150614450602084016145e3565b5f8060408385031215614b44575f80fd5b50508035926020909101359150565b5f805f805f8060a08789031215614b68575f80fd5b8635955060208701356001600160401b03811115614b84575f80fd5b614b9089828a01614459565b9096509450506040870135614ba481614302565b9250614bb2606088016145e3565b9150614b0660808801614414565b5f805f8060408587031215614bd3575f80fd5b84356001600160401b0380821115614be9575f80fd5b614bf588838901614459565b90965094506020870135915080821115614c0d575f80fd5b50614c1a87828801614459565b95989497509550505050565b5f805f8060808587031215614c39575f80fd5b843593506020850135614c4b81614302565b925060408501356147e781614302565b5f805f60608486031215614c6d575f80fd5b833592506020840135915060408401356149de81614302565b5f8060408385031215614c97575f80fd5b8235614ca281614302565b9150602083013561440981614302565b5f805f8060608587031215614cc5575f80fd5b84356001600160401b03811115614cda575f80fd5b614ce687828801614459565b9095509350506020850135614cfa81614302565b91506040850135614d0a81614302565b939692955090935050565b5f805f805f60a08688031215614d29575f80fd5b8535614d3481614302565b94506020860135614d4481614302565b9350604086013592506060860135915060808601356001600160401b03811115614d6c575f80fd5b6147b08882890161458b565b5f60208284031215614d88575f80fd5b81516001600160401b03811115614d9d575f80fd5b8201601f81018413614dad575f80fd5b8051614db881614565565b604051614dc58282614539565b828152866020848601011115614dd9575f80fd5b610954836020830160208701614387565b9182526001600160a01b0316602082015260400190565b5f805f8060808587031215614e14575f80fd5b84356001600160401b03811115614e29575f80fd5b614e358782880161458b565b9450506020850135614e4681614302565b9250614e5460408601614800565b91506060850135614d0a81614302565b5f60208284031215614e74575f80fd5b5051919050565b634e487b7160e01b5f52601160045260245ffd5b6001600160401b03818116838216019080821115614eaf57614eaf614e7b565b5092915050565b600181811c90821680614eca57607f821691505b602082108103614ee857634e487b7160e01b5f52602260045260245ffd5b50919050565b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b634e487b7160e01b5f52603260045260245ffd5b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b604081525f614fa360408301856148ee565b8281036020840152614fb581856148ee565b95945050505050565b5f60208284031215614fce575f80fd5b815161089981614302565b5f60208284031215614fe9575f80fd5b815161089981614a5e565b818382375f9101908152919050565b60208082526028908201527f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f604082015267373a3937b63632b960c11b606082015260800190565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b60c081525f61508660c083018a8c61504b565b6001600160a01b03898116602085015263ffffffff891660408501526001600160401b03881660608501528616608084015282810360a08401526150cb81858761504b565b9b9a5050505050505050505050565b601f8211156108e057805f5260205f20601f840160051c810160208510156150ff5750805b601f840160051c820191505b81811015611213575f815560010161510b565b6001600160401b0383111561513557615135614525565b615149836151438354614eb6565b836150da565b5f601f84116001811461517a575f85156151635750838201355b5f19600387901b1c1916600186901b178355611213565b5f83815260208120601f198716915b828110156151a95786850135825560209485019460019092019101615189565b50868210156151c5575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b6001600160401b03828116828216039080821115614eaf57614eaf614e7b565b81516001600160401b0381111561521057615210614525565b6152248161521e8454614eb6565b846150da565b602080601f831160018114615257575f84156152405750858301515b5f19600386901b1c1916600185901b1785556133cb565b5f85815260208120601f198616915b8281101561528557888601518255948401946001909101908401615266565b50858210156152a257878501515f19600388901b60f8161c191681555b5050505050600190811b01905550565b6001600160a01b0386811682528516602082015260a0604082018190525f906152dd908301866148ee565b82810360608401526152ef81866148ee565b9050828103608084015261350481856143a9565b5f60208284031215615313575f80fd5b815161089981614357565b5f60033d11156153345760045f803e505f5160e01c5b90565b5f60443d10156153445790565b6040516003193d81016004833e81513d6001600160401b03816024840111818411171561537357505050505090565b828501915081518181111561538b5750505050505090565b843d87010160208285010111156153a55750505050505090565b6153b460208286010187614539565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b608081525f61541960808301876143a9565b6001600160a01b039590951660208301525063ffffffff9290921660408301526001600160401b0316606090910152919050565b818103818111156107ea576107ea614e7b565b808201808211156107ea576107ea614e7b565b60ff60f81b8460f81b1681525f8351615493816001850160208801614387565b8351908301906154aa816001840160208801614387565b0160010195945050505050565b6001600160a01b03868116825285166020820152604081018490526060810183905260a0608082018190525f906154f0908301846143a9565b97965050505050505056fe93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4aea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2a68925cf5169f28586095d5b5b9933b3008f4c793a48be4f59b8b2bc62aa60a":"0x1","0x54cdd369e4e8a8515e52ca72ec816c2101831ad1f18bf44102ed171459c9b4f8":"0x2","0xa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb49":"0xffffffffffffffff000100010000000000000000000000000000000000000000","0xafa26c20e8b3d9a2853d642cfe1021dae26242ffedfac91c97aab212c1a4b93b":"0xffffffffffffffff000100010000000000000000000000000000000000000000","0xef5b11c47ebee44618abc22110e10e3b408ea5e799056d2b38461aa7b97c5a97":"0x1","0xfb9e8e321b8a5ec48f12a7b41f22c6e595d761285c9eb19d8dda7c99edf1b54f":"0x36574680000000000000000000000000000000000000000000000000000000a"}},"0x6e1eb616c7d69491f9a880f815ff5574768cba20":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061007d5760003560e01c806314ab90381161005b57806314ab90381461010957806316a25cbd1461011c5780631896f70a146101695780635b0fc9c31461017c57600080fd5b80630178b8bf1461008257806302571be3146100cb57806306ab5923146100f4575b600080fd5b6100ae610090366004610416565b6000908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100ae6100d9366004610416565b6000908152602081905260409020546001600160a01b031690565b61010761010236600461044b565b61018f565b005b610107610117366004610480565b61024c565b61015061012a366004610416565b600090815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100c2565b6101076101773660046104bd565b6102ef565b61010761018a3660046104bd565b610384565b60008381526020819052604090205483906001600160a01b031633146101b457600080fd5b60408051602080820187905281830186905282518083038401815260608301808552815191909201206001600160a01b0386169091529151859187917fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829181900360800190a3600090815260208190526040902080546001600160a01b0319166001600160a01b039390931692909217909155505050565b60008281526020819052604090205482906001600160a01b0316331461027157600080fd5b60405167ffffffffffffffff8316815283907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a250600091825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b60008281526020819052604090205482906001600160a01b0316331461031457600080fd5b6040516001600160a01b038316815283907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a25060009182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b60008281526020819052604090205482906001600160a01b031633146103a957600080fd5b6040516001600160a01b038316815283907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a25060009182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b60006020828403121561042857600080fd5b5035919050565b80356001600160a01b038116811461044657600080fd5b919050565b60008060006060848603121561046057600080fd5b83359250602084013591506104776040850161042f565b90509250925092565b6000806040838503121561049357600080fd5b82359150602083013567ffffffffffffffff811681146104b257600080fd5b809150509250929050565b600080604083850312156104d057600080fd5b823591506104e06020840161042f565b9050925092905056fea164736f6c6343000811000a","storage":{"0x859ecef2e168dc10231b000bd53493b42bc9d944cac29d94582c1e1d43592131":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0xad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa"}},"0x7bb6cd9be29fab783c0b494a06fed8b2e2596b7a":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100ea5760003560e01c80636debcb8d1161008c578063b34f33c511610066578063b34f33c514610741578063d0778d6c14610814578063ef2c3088146108f2578063f5090c1e14610980576100ea565b80636debcb8d146105ca5780636fab95b3146106585780637b1039991461071d576100ea565b8063511f1112116100c8578063511f1112146103c557806361603dd91461044857806368b6154f146104bd5780636ccbae5f1461059b576100ea565b806307eca395146100ef578063280d9b051461021457806330135293146102f2575b600080fd5b610212600480360360a081101561010557600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561013457600080fd5b82018360208201111561014657600080fd5b803590602001918460018302840111600160201b8311171561016757600080fd5b919390929091602081019035600160201b81111561018457600080fd5b82018360208201111561019657600080fd5b803590602001918460018302840111600160201b831117156101b757600080fd5b919390929091602081019035600160201b8111156101d457600080fd5b8201836020820111156101e657600080fd5b803590602001918460018302840111600160201b8311171561020757600080fd5b509092509050610aae565b005b610212600480360360a081101561022a57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561026457600080fd5b82018360208201111561027657600080fd5b803590602001918460018302840111600160201b8311171561029757600080fd5b919390929091602081019035600160201b8111156102b457600080fd5b8201836020820111156102c657600080fd5b803590602001918460018302840111600160201b831117156102e757600080fd5b509092509050610c92565b6102126004803603608081101561030857600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561033757600080fd5b82018360208201111561034957600080fd5b803590602001918460018302840111600160201b8311171561036a57600080fd5b919390929091602081019035600160201b81111561038757600080fd5b82018360208201111561039957600080fd5b803590602001918460018302840111600160201b831117156103ba57600080fd5b509092509050610e3d565b610212600480360360608110156103db57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561040a57600080fd5b82018360208201111561041c57600080fd5b803590602001918460018302840111600160201b8311171561043d57600080fd5b509092509050610fcc565b6102126004803603604081101561045e57600080fd5b81359190810190604081016020820135600160201b81111561047f57600080fd5b82018360208201111561049157600080fd5b803590602001918460018302840111600160201b831117156104b257600080fd5b5090925090506110c9565b610212600480360360a08110156104d357600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561050d57600080fd5b82018360208201111561051f57600080fd5b803590602001918460018302840111600160201b8311171561054057600080fd5b919390929091602081019035600160201b81111561055d57600080fd5b82018360208201111561056f57600080fd5b803590602001918460018302840111600160201b8311171561059057600080fd5b5090925090506111ae565b6105b8600480360360208110156105b157600080fd5b50356113a8565b60408051918252519081900360200190f35b610212600480360360808110156105e057600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561061a57600080fd5b82018360208201111561062c57600080fd5b803590602001918460018302840111600160201b8311171561064d57600080fd5b5090925090506113ba565b6102126004803603606081101561066e57600080fd5b81359190810190604081016020820135600160201b81111561068f57600080fd5b8201836020820111156106a157600080fd5b803590602001918460018302840111600160201b831117156106c257600080fd5b919390929091602081019035600160201b8111156106df57600080fd5b8201836020820111156106f157600080fd5b803590602001918460018302840111600160201b8311171561071257600080fd5b5090925090506114d4565b610725611675565b604080516001600160a01b039092168252519081900360200190f35b6102126004803603608081101561075757600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561078657600080fd5b82018360208201111561079857600080fd5b803590602001918460018302840111600160201b831117156107b957600080fd5b919390929091602081019035600160201b8111156107d657600080fd5b8201836020820111156107e857600080fd5b803590602001918460018302840111600160201b8311171561080957600080fd5b509092509050611684565b610212600480360360a081101561082a57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561086457600080fd5b82018360208201111561087657600080fd5b803590602001918460018302840111600160201b8311171561089757600080fd5b919390929091602081019035600160201b8111156108b457600080fd5b8201836020820111156108c657600080fd5b803590602001918460018302840111600160201b831117156108e757600080fd5b5090925090506117de565b6102126004803603608081101561090857600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561094257600080fd5b82018360208201111561095457600080fd5b803590602001918460018302840111600160201b8311171561097557600080fd5b5090925090506119e4565b610212600480360360c081101561099657600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156109d057600080fd5b8201836020820111156109e257600080fd5b803590602001918460018302840111600160201b83111715610a0357600080fd5b919390929091602081019035600160201b811115610a2057600080fd5b820183602082011115610a3257600080fd5b803590602001918460018302840111600160201b83111715610a5357600080fd5b919390929091602081019035600160201b811115610a7057600080fd5b820183602082011115610a8257600080fd5b803590602001918460018302840111600160201b83111715610aa357600080fd5b509092509050611ad3565b610bb163ce9fb82b89898989898960405160240180876001600160a01b03166001600160a01b0316815260200186815260200180602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f820116905080830192505050985050505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208884848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b600154604051630119f80560e21b81526001600160a01b038a811660048301908152602483018b9052608060448401908152608484018a90529190931692630467e014928c928c928c928c928c928c92909190606481019060a401878780828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f82011690508083019250505098505050505050505050600060405180830381600087803b158015610c7057600080fd5b505af1158015610c84573d6000803e3d6000fd5b505050505050505050505050565b610d8363b88d4fde888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040516315eab15d60e21b81526001600160a01b03898116600483019081528982166024840152604483018990526080606484019081526084840188905291909316926357aac574928b928b928b928b928b929160a401848480828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b158015610e1c57600080fd5b505af1158015610e30573d6000803e3d6000fd5b5050505050505050505050565b610f09637c69eae28787878760405160240180856001600160a01b03166001600160a01b0316815260200184815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09d909d1b9c909c178c529351909a208a51918d01849004840282018401909a528b81528f985096508b95508a94508493505085019050838280828437600092019190915250611d5492505050565b600154604051630119f80560e21b81526001600160a01b038881166004830190815260248301899052608060448401908152608484018890529190931692630467e014928a928a928a928a9290606481019060a401858580828437600081840152601f19601f8201169050808301925050508381038252600081526020016020019650505050505050600060405180830381600087803b158015610fac57600080fd5b505af1158015610fc0573d6000803e3d6000fd5b50505050505050505050565b604080516001600160a01b038616602482015260448082018690528251808303909101815260649091018252602081810180516001600160e01b0316632392c18960e01b17815291519091208251601f85018390048302810183019093528383526110569290918691908690869081908401838280828437600092019190915250611d5492505050565b60015460408051631292e83560e11b81526001600160a01b0387811660048301526024820187905291519190921691632525d06a91604480830192600092919082900301818387803b1580156110ab57600080fd5b505af11580156110bf573d6000803e3d6000fd5b5050505050505050565b6040805160248082018690528251808303909101815260449091018252602081810180516001600160e01b0316630852cd8d60e31b17815291519091208251601f85018390048302810183019093528383526111449290918691908690869081908401838280828437600092019190915250611d5492505050565b6001546040805163e67ca8a360e01b81526004810186905290516001600160a01b039092169163e67ca8a39160248082019260009290919082900301818387803b15801561119157600080fd5b505af11580156111a5573d6000803e3d6000fd5b50505050505050565b61129f639e5be9a5888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b03909316926302759c37928b928b9286926368b62d32928d928d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561132757600080fd5b505afa15801561133b573d6000803e3d6000fd5b505050506040513d602081101561135157600080fd5b5051604080516001600160e01b031960e087901b1681526001600160a01b03948516600482015292909316602483015260448201529051606480830192600092919082900301818387803b158015610e1c57600080fd5b60009081526020819052604090205490565b604080516001600160a01b0380881660248301528616604482015260648082018690528251808303909101815260849091018252602081810180516001600160e01b0316632142170760e11b17815291519091208251601f850183900483028101830190935283835261144c9290918691908690869081908401838280828437600092019190915250611d5492505050565b600154604080516315eab15d60e21b81526001600160a01b0388811660048301528781166024830152604482018790526080606483015260006084830181905292519316926357aac5749260c48084019391929182900301818387803b1580156114b557600080fd5b505af11580156114c9573d6000803e3d6000fd5b505050505050505050565b611585635cbe11128686866040516024018084815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09c909c1b9b909b178b5293519099208951918c018490048402820184019099528a81528e975095508a9450899350839250508401838280828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b039093169263e67ca8a39284926368b62d32928b928b928b929190606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561160b57600080fd5b505afa15801561161f573d6000803e3d6000fd5b505050506040513d602081101561163557600080fd5b5051604080516001600160e01b031960e085901b168152600481019290925251602480830192600092919082900301818387803b1580156114b557600080fd5b6001546001600160a01b031690565b61175063d8d3cc6e8787878760405160240180856001600160a01b03166001600160a01b0316815260200184815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09d909d1b9c909c178c529351909a208a51918d01849004840282018401909a528b81528f985096508b95508a94508493505085019050838280828437600092019190915250611d5492505050565b60015460405163b546666960e01b81526001600160a01b03888116600483019081526024830189905260606044840190815260648401889052919093169263b5466669928a928a928a928a9290608401848480828437600081840152601f19601f82011690508083019250505095505050505050600060405180830381600087803b158015610fac57600080fd5b6118cf639d743989888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b03909316926357aac574928b928b9286926368b62d32928d928d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561195757600080fd5b505afa15801561196b573d6000803e3d6000fd5b505050506040513d602081101561198157600080fd5b5051604080516001600160e01b031960e087901b1681526001600160a01b039485166004820152929093166024830152604482015260806064820152600060848201819052915160c4808301939282900301818387803b158015610e1c57600080fd5b604080516001600160a01b0380881660248301528616604482015260648082018690528251808303909101815260849091018252602081810180516001600160e01b03166323b872dd60e01b17815291519091208251601f8501839004830281018301909352838352611a769290918691908690869081908401838280828437600092019190915250611d5492505050565b600154604080516302759c3760e01b81526001600160a01b038881166004830152878116602483015260448201879052915191909216916302759c3791606480830192600092919082900301818387803b1580156114b557600080fd5b611bf063c29b52f98a8a8a8a8a8a8a60405160240180886001600160a01b03166001600160a01b03168152602001876001600160a01b03166001600160a01b0316815260200186815260200180602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f82011690508083019250505099505050505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208884848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b8152600481018a815260248201928352604482018990526001600160a01b03909316926357aac574928d928d9286926368b62d32928f928f928f92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b158015611c7857600080fd5b505afa158015611c8c573d6000803e3d6000fd5b505050506040513d6020811015611ca257600080fd5b50516040516001600160e01b031960e086901b1681526001600160a01b0380851660048301908152908416602483015260448201839052608060648301908152608483018b90528b928b92919060a401848480828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b158015611d3157600080fd5b505af1158015611d45573d6000803e3d6000fd5b50505050505050505050505050565b6000828152602081815260408083205481518084018890523060601b81840152605480820183905283518083039091018152607490910190925281519190920120909190611db3908490611da790611ea9565b9063ffffffff611efa16565b90506001600160a01b03811615801590611e4957506001546040805163430c208160e01b81526001600160a01b038481166004830152602482018890529151919092169163430c2081916044808301926020929190829003018186803b158015611e1c57600080fd5b505afa158015611e30573d6000803e3d6000fd5b505050506040513d6020811015611e4657600080fd5b50515b611e8e576040805162461bcd60e51b8152602060048201526011602482015270494e56414c49445f5349474e415455524560781b604482015290519081900360640190fd5b50505060009081526020819052604090208054600101905550565b604080517f19457468657265756d205369676e6564204d6573736167653a0a333200000000602080830191909152603c8083019490945282518083039094018452605c909101909152815191012090565b60008151604114611f0d57506000611fe3565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0821115611f535760009350505050611fe3565b8060ff16601b14158015611f6b57508060ff16601c14155b15611f7c5760009350505050611fe3565b6040805160008152602080820180845289905260ff8416828401526060820186905260808201859052915160019260a0808401939192601f1981019281900390910190855afa158015611fd3573d6000803e3d6000fd5b5050506020604051035193505050505b9291505056fea265627a7a7231582014816bfd0c1519ce8c4cf272eb0526ffdba3abef0df7f17deb0da40bd8abb77f64736f6c634300050c0032","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533"}},"0x7c3c91245769c8b7450ad522792dec4bd4bf797f":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b506004361061003f575f3560e01c80631bf7e13e146100435780636ccbae5f1461006c578063a424740014610099575b5f80fd5b610056610051366004610749565b6100bc565b604051610063919061082c565b60405180910390f35b61008b61007a36600461083e565b5f9081526001602052604090205490565b604051908152602001610063565b6100ac6100a7366004610749565b6101d6565b6040519015158152602001610063565b60605f5a90506100cd8585856101d6565b6101315760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e61676572466f727761726465723a205349474e415455604482015269149157d253959053125160b21b60648201526084015b60405180910390fd5b6101cb6101416020870187610870565b5f546001600160a01b031660408801358461015f60608b018b610889565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f9201919091525061023292505050565b9150505b9392505050565b5f61022a6101e38561093a565b5f54604080516020601f88018190048102820181019092528681526001600160a01b03909216919087908790819084018382808284375f9201919091525061030e92505050565b949350505050565b606061023d85610453565b5f80876001600160a01b0316866102568b8a898961047e565b60405161026391906109f5565b5f604051808303815f8787f1925050503d805f811461029d576040519150601f19603f3d011682016040523d82523d5f602084013e6102a2565b606091505b5090925090506102b3603f87610a10565b5a116102c1576102c1610a2f565b61030182826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506104ae565b9998505050505050505050565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015610352573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103769190610a43565b90505f6104238660600151805190602001208688602001516040516020016103c39392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561044957508551610449906001600160a01b031682866104e7565b9695505050505050565b5f8181526001602081905260409091205461046d91610a5a565b5f9182526001602052604090912055565b606082858560405160200161049593929190610a7f565b6040516020818303038152906040529050949350505050565b606083156104bd5750816101cf565b8251156104cd5782518084602001fd5b8160405162461bcd60e51b8152600401610128919061082c565b5f805f6104f48585610622565b90925090505f81600481111561050c5761050c610abd565b14801561052a5750856001600160a01b0316826001600160a01b0316145b1561053a576001925050506101cf565b5f80876001600160a01b0316631626ba7e60e01b8888604051602401610561929190610ad1565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161059f91906109f5565b5f60405180830381855afa9150503d805f81146105d7576040519150601f19603f3d011682016040523d82523d5f602084013e6105dc565b606091505b50915091508180156105ef575080516020145b801561061657508051630b135d3f60e11b906106149083016020908101908401610a43565b145b98975050505050505050565b5f808251604103610656576020830151604084015160608501515f1a61064a87828585610664565b9450945050505061065d565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561069957505f90506003610740565b8460ff16601b141580156106b157508460ff16601c14155b156106c157505f90506004610740565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610712573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b03811661073a575f60019250925050610740565b91505f90505b94509492505050565b5f805f6040848603121561075b575f80fd5b833567ffffffffffffffff80821115610772575f80fd5b9085019060808288031215610785575f80fd5b9093506020850135908082111561079a575f80fd5b818601915086601f8301126107ad575f80fd5b8135818111156107bb575f80fd5b8760208285010111156107cc575f80fd5b6020830194508093505050509250925092565b5f5b838110156107f95781810151838201526020016107e1565b50505f910152565b5f81518084526108188160208601602086016107df565b601f01601f19169290920160200192915050565b602081525f6101cf6020830184610801565b5f6020828403121561084e575f80fd5b5035919050565b80356001600160a01b038116811461086b575f80fd5b919050565b5f60208284031215610880575f80fd5b6101cf82610855565b5f808335601e1984360301811261089e575f80fd5b83018035915067ffffffffffffffff8211156108b8575f80fd5b60200191503681900382131561065d575f80fd5b634e487b7160e01b5f52604160045260245ffd5b6040516080810167ffffffffffffffff81118282101715610903576109036108cc565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610932576109326108cc565b604052919050565b5f6080823603121561094a575f80fd5b6109526108e0565b61095b83610855565b81526020808401358183015260408401356040830152606084013567ffffffffffffffff8082111561098b575f80fd5b9085019036601f83011261099d575f80fd5b8135818111156109af576109af6108cc565b6109c1601f8201601f19168501610909565b915080825236848285010111156109d6575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b5f8251610a068184602087016107df565b9190910192915050565b5f82610a2a57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52600160045260245ffd5b5f60208284031215610a53575f80fd5b5051919050565b80820180821115610a7957634e487b7160e01b5f52601160045260245ffd5b92915050565b5f8451610a908184602089016107df565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f61022a604083018461080156fea164736f6c6343000818000a","storage":{"0x0":"0x39a27956b78d00a4e00ea8833ff0947410a2933f"}},"0x8861cdfa38838531275ce12f9e795c3b9ff29cbe":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x936188f2c3c8e8c95e425b6fe41c2ac9e701585e":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x94f57ed7e9af03a10e8eb23ce1b3c7914a182b0f":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x95f29431aeb52c0d5dbeeec36010b8e2ca69cb3d":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x9b2565a3545a1312bdcb6e7148a7f7cae8c2706b":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c806373cc48a61161008857806398d35f201161006357806398d35f2014610215578063bd7ed31a1461021d578063c327deef14610245578063d7b82ebe1461026d575f80fd5b806373cc48a6146101af5780638438dc04146101ef5780638da5cb5b14610202575f80fd5b806313af4035116100c357806313af40351461015657806328e7677d146101695780632c095cbb1461017c578063435cc1621461018f575f80fd5b8063020ed8d3146100e9578063087991bc146100fe5780630b1a249514610143575b5f80fd5b6100fc6100f73660046122ff565b610280565b005b61011161010c36600461238a565b610300565b6040805163ffffffff94851681529390921660208401526001600160601b031916908201526060015b60405180910390f35b6100fc610151366004612510565b61036c565b6100fc6101643660046125c6565b6104da565b6100fc6101773660046122ff565b610512565b6100fc61018a3660046125e1565b61058a565b6101a261019d366004612674565b610656565b60405161013a919061278c565b6101d76101bd36600461279e565b60046020525f90815260409020546001600160a01b031681565b6040516001600160a01b03909116815260200161013a565b6100fc6101fd3660046122ff565b6106d2565b6001546101d7906001600160a01b031681565b6101a261074a565b6101d761022b36600461279e565b60056020525f90815260409020546001600160a01b031681565b6101d761025336600461279e565b60036020525f90815260409020546001600160a01b031681565b6101a261027b3660046127b7565b6107d5565b6001546001600160a01b03163314610296575f80fd5b60ff82165f8181526003602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527ff73c3c226af96b7f1ba666a21b3ceaf2be3ee6a365e3178fd9cd1eaae0075aa891015b60405180910390a15050565b5f805f8060025f8787604051610317929190612817565b604080519182900390912082526020808301939093529081015f90812061ffff8b16825290925290205463ffffffff80821695506401000000008204169350600160401b900460601b91505093509350939050565b83516020808601919091205f90815260028252604080822061ffff891683529092529081205463ffffffff16906103a385846107ea565b90506103b0818784610889565b6103b8612239565b845151156103d7576103ca85856107ea565b90506103d7818885610889565b5f6103e1836108cc565b602081015190915060fe16156103f5575f80fd5b61040081602761092a565b158015610425575061041381600261092a565b1580610425575061042581600661092a565b61042d575f80fd5b61043e89898561012001518461093a565b156104795787516020808a01919091205f90815260028252604080822061ffff8d1683529092522080546001600160e01b03191690556104cf565b6104988884610120015183856101200151610493876108cc565b610968565b156100e55787516020808a01919091205f90815260028252604080822061ffff8d1683529092522080546001600160e01b03191690555b505050505050505050565b6001546001600160a01b031633146104f0575f80fd5b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6001546001600160a01b03163314610528575f80fd5b60ff82165f8181526004602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527f2fcc274c3b72dd483ab201bfa87295e3817e8b9b10693219873b722ca1af00c791016102f4565b610592612239565b61059c83836107ea565b805190915061ffff16602f146105b0575f80fd5b60a081015184516020808701919091205f90815260028252604080822061ffff8a16835290925220546105e9919063ffffffff16610a7c565b6105f1575f80fd5b5f6105fb82610a94565b9050805151602082015110156100e55761061c818361012001518789610aab565b505082516020808501919091205f90815260028252604080822061ffff881683529092522080546001600160e01b03191690555b50505050565b60605f83838080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201829052509394505050505b85518110156106c7576106bd8682815181106106af576106af612826565b602002602001015183610c4a565b9150600101610691565b5090505b9392505050565b6001546001600160a01b031633146106e8575f80fd5b60ff82165f8181526005602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527fc7eec866a7a1386188cc3ca20ffea75b71bd3e90a60b6791b1d3f0971145118d91016102f4565b5f80546107569061283a565b80601f01602080910402602001604051908101604052809291908181526020018280546107829061283a565b80156107cd5780601f106107a4576101008083540402835291602001916107cd565b820191905f5260205f20905b8154815290600101906020018083116107b057829003601f168201915b505050505081565b60606107e18383610c4a565b90505b92915050565b6107f2612239565b82516107fd90610dc6565b905061080d8160e0015183610ebf565b610815575f80fd5b5f61082382835f0151610f25565b604083015190915060ff16610838825f610fcc565b14610841575f80fd5b610120820181905260808201516108589042610a7c565b610860575f80fd5b61086e428360a00151610a7c565b610876575f80fd5b61088281838686611026565b5092915050565b6108978360a0015182610a7c565b61089f575f80fd5b825161ffff166032146108b0575f80fd5b6108bf83610120015183611106565b6108c7575f80fd5b505050565b6040805160c0810182525f8082526020820181905291810182905260608082018190526080820183905260a08201529061090583610a94565b60a081015160c08201519192506106cb91610921908290612880565b83519190611172565b5f6107e18360a001515f846112b4565b5f6109468284866113c1565b1561095d57610955828661092a565b159050610960565b505f5b949350505050565b60208101515f9060fe161561097b575f80fd5b5f610985866113e6565b90505f610991856113e6565b90505f8061099f8a82611401565b6109aa906001612893565b60ff1690505b8951811015610a6b57836109dc896109d784858f516109cf9190612880565b8f9190611424565b6114a4565b03610a3f575f6109f7876109d785868f516109cf9190612880565b90508660800151841015610a23578381118015610a175750866080015181105b95505050505050610a73565b83811180610a1757508660800151811095505050505050610a73565b905080610a4c8a82611401565b610a57906001612893565b610a649060ff16826128ac565b90506109b0565b505f93505050505b95945050505050565b5f80610a8883856128bf565b60030b12159392505050565b610a9c61228e565b6107e48261010001515f61152d565b60a084015184515f90610abe9083611548565b90505f8660a001518760c00151610ad59190612880565b9050818111610ae2575f80fd5b5f610aed868861159f565b9050805f03610b1a57610b0c610b0384866128ac565b895190876112b4565b15610b15575f80fd5b610b5b565b87515f90610b29908686611424565b90505f8213610b36575f80fd5b5f610b41898361159f565b12156104cf575f610b52888361159f565b126104cf575f80fd5b5050505050505050565b60c08101516020820181905281515111610b7c5750565b5f610b8e825f01518360200151611548565b8260200151610b9d91906128ac565b8251909150610bac90826116ec565b61ffff166040830152610bc06002826128ac565b8251909150610bcf90826116ec565b61ffff166060830152610be36002826128ac565b8251909150610bf29082611712565b63ffffffff166080830152610c086004826128ac565b82519091505f90610c1990836116ec565b61ffff169050610c2a6002836128ac565b60a084018190529150610c3d81836128ac565b60c0909301929092525050565b6060610c54612239565b610c5e84846107ea565b61012081015180516020918201205f908152600282526040808220845161ffff16835290925220805491925090600160401b900460601b6001600160601b03191615610cc35760a08201518154610cbb919063ffffffff16610a7c565b610cc3575f80fd5b604080516060808201835260a085015163ffffffff9081168352608086015181166020808501918252610100880180518051908301206001600160601b0319168688019081526101208a0180518051908501205f908152600285528981208c5161ffff16825290945292889020965187549451915190961c600160401b0268010000000000000000600160e01b03199186166401000000000267ffffffffffffffff19909516969095169590951792909217939093169190911790925551905191517f55ced933cdd5a34dd03eb5d4bef19ec6ebb251dcd7a988eee0c1b9a13baaa88b92610db192916128e6565b60405180910390a15061010001519392505050565b610dce612239565b610dd8825f6116ec565b61ffff168152610de9826002611401565b60ff166020820152610dfc826003611401565b60ff166040820152610e0f826004611712565b63ffffffff9081166060830152610e2b90839060089061171216565b63ffffffff9081166080830152610e47908390600c9061171216565b63ffffffff90811660a0830152610e639083906010906116ec16565b61ffff1660c0820152610e7782601261173a565b60e0820181905251610eb490610e8e9060126128ac565b8260e001515160128551610ea29190612880565b610eac9190612880565b849190611424565b610100820152919050565b5f80610ed5610ece8483611548565b84906116ec565b83516020808601919091208651878301205f90815260028352604080822061ffff90951682529390925291902054600160401b900460601b6001600160601b031990811691161491505092915050565b60605f610f3184610a94565b90505b8051516020820151101561088257606081015161ffff16600114610f56575f80fd5b81515f03610f6e57610f6781611754565b9150610fa7565b60208101518151610f7e91611548565b825114610f89575f80fd5b805160208201518351610f9f9285925f92611775565b610fa7575f80fd5b8261ffff16816040015161ffff1614610fbe575f80fd5b610fc781610b65565b610f34565b5f805b83518310610fdf57610fdf61290a565b5f610fea8585611401565b60ff169050610ffa8160016128ac565b61100490856128ac565b9350805f0361101357506107e1565b61101e6001836128ac565b915050610fcf565b83518360e00151511115611038575f80fd5b61105c5f858560e0015151875161104f9190612880565b60e0870151929190611797565b611064575f80fd5b5f61106f828261152d565b9050602b61ffff16816040015161ffff160361109d576110908484836117cb565b611098575f80fd5b6110ff565b603061ffff16816040015161ffff16036110bc5761109084848361185f565b60405162461bcd60e51b8152602060048201526014602482015273139bc81d985b1a59081c1c9bdbd988199bdd5b9960621b604482015260640160405180910390fd5b5050505050565b5f806111128482611401565b61111d906001612893565b60ff1690505f5b835181101561095d5761113984828785611797565b15611149576001925050506107e4565b6111538482611401565b61115e906001612893565b61116b9060ff16826128ac565b9050611124565b6040805160c0810182525f8082526020820181905291810182905260608082018190526080820183905260a0820152906111ac83856128ac565b90506111c26111bb5f866128ac565b8690611401565b60ff1682526111d56111bb6001866128ac565b60ff1660208301526111f26111eb6002866128ac565b86906116ec565b61ffff1660408301525f61121161120a6004876128ac565b8790611401565b905061121e6005866128ac565b945061122e868660ff8416611424565b606084015261124060ff8216866128ac565b94505f61124d8787611401565b905060208160ff16111561125f575f80fd5b61126a6001876128ac565b955061127a878760ff8416611900565b608085015261128c60ff8216876128ac565b95506112a48661129c8186612880565b899190611424565b60a0850152509195945050505050565b5f60ff600883811c82169183916112cc918616612932565b90505f6112dd600780871690612952565b600160ff919091161b9050855b87518110156113b4575f6112fe8983611401565b90505f61131661130f8460016128ac565b8b90611401565b90508160ff168660ff161015611334575f96505050505050506106cb565b8160ff168660ff1603611393578460ff168160ff161161135c575f96505050505050506106cb565b8361137f61136d60ff8816866128ac565b6113789060026128ac565b8c90611401565b1660ff165f141596505050505050506106cb565b61139e816002612893565b6113ab9060ff16846128ac565b925050506112ea565b505f979650505050505050565b5f806113cd85846114a4565b90505f6113d9856113e6565b9190911495945050505050565b5f6107e460016113f68484611401565b84919060ff1661193d565b5f82828151811061141457611414612826565b016020015160f81c905092915050565b825160609061143383856128ac565b111561143d575f80fd5b5f8267ffffffffffffffff811115611457576114576123d9565b6040519080825280601f01601f191660200182016040528015611481576020820181803683370190505b50905060208082019086860101611499828287611b43565b509095945050505050565b815160ff165f9081526005602052604080822054606085015182860151925163347ced5960e11b81526001600160a01b03909216926368f9dab2926114ee9291879160040161296b565b602060405180830381865afa158015611509573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107e191906129a4565b61153561228e565b82815260c081018290526107e481610b65565b5f815b8351811061155b5761155b61290a565b5f6115668583611401565b60ff1690506115768160016128ac565b61158090836128ac565b9150805f0361158f5750611595565b5061154b565b6109608382612880565b5f6115aa8383611b98565b156115b657505f6107e4565b5f805f805f6115c5885f610fcc565b90505f6115d2885f610fcc565b90505b808211156115fe578593506115ea8987611bb3565b9550816115f6816129bb565b9250506115d5565b81811115611627578492506116138886611bb3565b94508061161f816129bb565b9150506115fe565b5f8211801561163f575061163d89878a88611797565b155b15611674578593506116518987611bb3565b95508492506116608886611bb3565b945061166d600183612880565b9150611627565b855f0361168a575f1996505050505050506107e4565b845f036116a057600196505050505050506107e4565b6116df6116ae8560016128ac565b6116b88b87611401565b60ff168a6116c78760016128ac565b6116d18d89611401565b8e949392919060ff16611bd6565b9998505050505050505050565b81515f906116fb8360026128ac565b1115611705575f80fd5b50016002015161ffff1690565b81515f906117218360046128ac565b111561172b575f80fd5b50016004015163ffffffff1690565b60605f6117478484611548565b9050610960848483611424565b602081015181516060916107e49161176c9082611548565b84519190611424565b5f611781848484611cc6565b61178c878785611cc6565b149695505050505050565b5f6117af83838486516117aa9190612880565b611cc6565b6117c186868789516117aa9190612880565b1495945050505050565b5f806117d685610a94565b90505b8051516020820151101561095d57604081015161ffff166030146117fb575f80fd5b5f61180582611ce8565b90505f61181e5f835184611d049092919063ffffffff16565b905061182c81838989611da0565b1561184f5761184561183d84611754565b868385611e9b565b93505050506106cb565b505061185a81610b65565b6117d9565b5f6118778460e0015161187184611754565b90611b98565b61187f575f80fd5b815151602083015110156118f75761189e8460e0015161187184611754565b6118a6575f80fd5b5f6118b083611ce8565b90505f6118c95f835184611d049092919063ffffffff16565b90506118d781838888611da0565b156118e7576001925050506106cb565b50506118f282610b65565b61187f565b505f9392505050565b5f602082111561190e575f80fd5b835161191a83856128ac565b1115611924575f80fd5b506020919092018101519190036101000a5f1901191690565b5f603482111561194b575f80fd5b5f80805b84811015611a29575f8761196383896128ac565b8151811061197357611973612826565b01602001516001600160f81b0319169050600360fc1b81108015906119a65750603d60f91b6001600160f81b0319821611155b6119ae575f80fd5b604051806080016040528060478152602001612b5c604791396119d6603060f884901c612880565b815181106119e6576119e6612826565b0160209081015160f81c93508311156119fd575f80fd5b611a08600187612880565b8203611a145750611a29565b5060059290921b60ff8216179160010161194f565b505f611a368560056129d0565b9050611a436008866129e7565b5f03611a5a578160ff16600584901b179250611b29565b611a656008866129e7565b600203611a935760028260ff16901c60ff16600384901b179250600281611a8c9190612880565b9050611b29565b611a9e6008866129e7565b600403611ac55760048260ff16901c60ff16600184901b179250600481611a8c9190612880565b611ad06008866129e7565b600503611af75760018260ff16901c60ff16600484901b179250600181611a8c9190612880565b611b026008866129e7565b6007036100e55760038260ff16901c60ff16600284901b179250600381611a8c9190612880565b611b3581610100612880565b9290921b9695505050505050565b60208110611b7b5781518352611b5a6020846128ac565b9250611b676020836128ac565b9150611b74602082612880565b9050611b43565b905182516020929092036101000a5f190180199091169116179052565b5f815183511480156107e157506107e1835f845f8751611775565b5f611bbe8383611401565b60ff16611bcc8360016128ac565b6107e191906128ac565b5f8480831015611be35750815b6020878901810190858701015f5b83811015611cab5782518251808214611c7b575f6020871115611c1657505f19611c52565b600184611c24896020612880565b611c2e91906128ac565b611c399060086129d0565b611c44906002612ada565b611c4e9190612880565b1990505b5f611c61838316858416612ae5565b90508015611c78579750611cbc9650505050505050565b50505b611c866020866128ac565b9450611c936020856128ac565b93505050602081611ca491906128ac565b9050611bf1565b50611cb68589612ae5565b93505050505b9695505050505050565b82515f90611cd483856128ac565b1115611cde575f80fd5b5091016020012090565b60a081015160c08201516060916107e49161176c908290612880565b604080516080810182525f8082526020820181905291810191909152606080820152611d3a611d335f856128ac565b85906116ec565b61ffff168152611d55611d4e6002856128ac565b8590611401565b60ff166020820152611d6b611d4e6003856128ac565b60ff166040820152611d94611d816004856128ac565b611d8c600485612880565b869190611424565b60608201529392505050565b5f846020015160ff16600314611db757505f610960565b826020015160ff16856040015160ff1614611dd357505f610960565b5f611ddd85611f96565b90508360c0015161ffff168161ffff1614611dfb575f915050610960565b8551610100165f03611e10575f915050610960565b60408087015160ff165f908152600360209081529082902054855191860151925163de8f50a160e01b81526001600160a01b039091169263de8f50a192611e5c928a9290600401612b04565b602060405180830381865afa158015611e77573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611cbc9190612b3c565b5f80611ea683611f96565b90505b84515160208601511015611f8b5760a085015160c08601515f91611edb91611ed2908290612880565b88519190611d04565b90508161ffff16815f015161ffff1614611ef55750611f7d565b846040015160ff16816020015160ff1614611f105750611f7d565b60408051808201909152606081525f6020820152611f3c85518951611f3591906128ac565b8290611ff7565b50611f47818961205a565b50611f52818661205a565b50611f698260400151825f0151846060015161207f565b15611f7a5760019350505050610960565b50505b611f8685610b65565b611ea9565b505f95945050505050565b5f805f5b8351811015611fe8576001811615611fbe57611fb68482611401565b60ff16611fd0565b6008611fca8583611401565b60ff16901b5b611fde9061ffff16836128ac565b9150600101611f9a565b506106cb601082901c826128ac565b60408051808201909152606081525f60208201526120166020836129e7565b1561203e576120266020836129e7565b612031906020612880565b61203b90836128ac565b91505b506020828101829052604080518085525f815290920101905290565b60408051808201909152606081525f60208201526107e183845f015151848551612126565b60ff83165f908152600460205260408120546001600160a01b03166120a557505f6106cb565b60ff84165f90815260046020819052604091829020549151637bf41d7760e11b81526001600160a01b039092169163f7e83aee916120e79187918791016128e6565b602060405180830381865afa158015612102573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109609190612b3c565b60408051808201909152606081525f60208201528251821115612147575f80fd5b602085015161215683866128ac565b111561218957612189856121798760200151878661217491906128ac565b61220c565b6121849060026129d0565b612222565b5f808651805187602083010193508088870111156121a75787860182525b505050602084015b602084106121e757805182526121c66020836128ac565b91506121d36020826128ac565b90506121e0602085612880565b93506121af565b5181515f1960208690036101000a019081169019919091161790525083949350505050565b5f8183111561221c5750816107e4565b50919050565b815161222e8383611ff7565b50610650838261205a565b60408051610140810182525f8082526020820181905291810182905260608082018390526080820183905260a0820183905260c082019290925260e08101829052610100810182905261012081019190915290565b6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b803560ff811681146122e3575f80fd5b919050565b6001600160a01b03811681146122fc575f80fd5b50565b5f8060408385031215612310575f80fd5b612319836122d3565b91506020830135612329816122e8565b809150509250929050565b803561ffff811681146122e3575f80fd5b5f8083601f840112612355575f80fd5b50813567ffffffffffffffff81111561236c575f80fd5b602083019150836020828501011115612383575f80fd5b9250929050565b5f805f6040848603121561239c575f80fd5b6123a584612334565b9250602084013567ffffffffffffffff8111156123c0575f80fd5b6123cc86828701612345565b9497909650939450505050565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff81118282101715612416576124166123d9565b604052919050565b5f82601f83011261242d575f80fd5b813567ffffffffffffffff811115612447576124476123d9565b61245a601f8201601f19166020016123ed565b81815284602083860101111561246e575f80fd5b816020850160208301375f918101602001919091529392505050565b5f6040828403121561249a575f80fd5b6040516040810167ffffffffffffffff82821081831117156124be576124be6123d9565b8160405282935084359150808211156124d5575f80fd5b6124e18683870161241e565b835260208501359150808211156124f6575f80fd5b506125038582860161241e565b6020830152505092915050565b5f805f805f60a08688031215612524575f80fd5b61252d86612334565b9450602086013567ffffffffffffffff80821115612549575f80fd5b61255589838a0161241e565b9550604088013591508082111561256a575f80fd5b61257689838a0161248a565b9450606088013591508082111561258b575f80fd5b61259789838a0161248a565b935060808801359150808211156125ac575f80fd5b506125b98882890161241e565b9150509295509295909350565b5f602082840312156125d6575f80fd5b81356107e1816122e8565b5f805f80608085870312156125f4575f80fd5b6125fd85612334565b9350602085013567ffffffffffffffff80821115612619575f80fd5b6126258883890161241e565b9450604087013591508082111561263a575f80fd5b6126468883890161248a565b9350606087013591508082111561265b575f80fd5b506126688782880161241e565b91505092959194509250565b5f805f60408486031215612686575f80fd5b833567ffffffffffffffff8082111561269d575f80fd5b818601915086601f8301126126b0575f80fd5b81356020828211156126c4576126c46123d9565b8160051b6126d38282016123ed565b928352848101820192828101908b8511156126ec575f80fd5b83870192505b8483101561272657823586811115612708575f80fd5b6127168d86838b010161248a565b83525091830191908301906126f2565b985050508701359250508082111561273c575f80fd5b506123cc86828701612345565b5f81518084525f5b8181101561276d57602081850181015186830182015201612751565b505f602082860101526020601f19601f83011685010191505092915050565b602081525f6107e16020830184612749565b5f602082840312156127ae575f80fd5b6107e1826122d3565b5f80604083850312156127c8575f80fd5b823567ffffffffffffffff808211156127df575f80fd5b6127eb8683870161248a565b93506020850135915080821115612800575f80fd5b5061280d8582860161241e565b9150509250929050565b818382375f9101908152919050565b634e487b7160e01b5f52603260045260245ffd5b600181811c9082168061284e57607f821691505b60208210810361221c57634e487b7160e01b5f52602260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b818103818111156107e4576107e461286c565b60ff81811683821601908111156107e4576107e461286c565b808201808211156107e4576107e461286c565b600382810b9082900b03637fffffff198112637fffffff821317156107e4576107e461286c565b604081525f6128f86040830185612749565b8281036020840152610a738185612749565b634e487b7160e01b5f52600160045260245ffd5b634e487b7160e01b5f52601260045260245ffd5b5f61ffff808416806129465761294661291e565b92169190910492915050565b60ff82811682821603908111156107e4576107e461286c565b606081525f61297d6060830186612749565b828103602084015261298f8186612749565b91505061ffff83166040830152949350505050565b5f602082840312156129b4575f80fd5b5051919050565b5f816129c9576129c961286c565b505f190190565b80820281158282048414176107e4576107e461286c565b5f826129f5576129f561291e565b500690565b600181815b80851115612a3457815f1904821115612a1a57612a1a61286c565b80851615612a2757918102915b93841c93908002906129ff565b509250929050565b5f82612a4a575060016107e4565b81612a5657505f6107e4565b8160018114612a6c5760028114612a7657612a92565b60019150506107e4565b60ff841115612a8757612a8761286c565b50506001821b6107e4565b5060208310610133831016604e8410600b8410161715612ab5575081810a6107e4565b612abf83836129fa565b805f1904821115612ad257612ad261286c565b029392505050565b5f6107e18383612a3c565b8181035f8312801583831316838312821617156108825761088261286c565b606081525f612b166060830186612749565b8281036020840152612b288186612749565b90508281036040840152611cbc8185612749565b5f60208284031215612b4c575f80fd5b815180151581146107e1575f80fdfe00010203040506070809ffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fffffffffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fa164736f6c6343000818000a","storage":{"0x0":"0xbd","0x1":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1471eb6eb2c5e789fc3de43f8ce62938c7d1836ec861730447e2ada8fd81017b":"0x17cda4e23f7237277952e075b1c48467aabfacc0","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563":"0x2b000100000e1000244a5c080249aac11d7b6f6446702e54a1607371607a","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e564":"0x1a41855200fd2ce1cdde32f24e8fb500002b000100000e1000244f660802e06d","0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e565":"0x44b80b8f1d39a95c0b0d7c65d08458e880409bbc683457104237c7f8ec8d0000","0x3617319a054d772f909f7c479a2cebe5066e836a939412e32403c99029b92eff":"0x5155f5627bdf9795b3dbb8887001ada1eeba93f2","0x85aaa47b6dc46495bb8824fad4583769726fea36efd831a35556690b830a8fbe":"0x6e2822b8856749ed179c77140dbc5f5a27410a4","0x91da3fd0782e51c6b3986e9e672fd566868e71f3dbc2d6c2cd6fbb3e361af2a7":"0x49da8861c65460639925febe1fb4b5b59b443082","0x95c6356c1b7a542b884d2484ef785c9c7224e77e1016c20007bddc15c23b452f":"0x3f9151d3fd1a82dcc5091909589900fd60ee767ee090bba000000000","0xabd6e7cb50984ff9c2f3e18a2660c3353dadf4e3291deeb275dae2cd1e44fe05":"0x458f653495fb8d9bd0e7df468c2bf76d26c7bd9"}},"0x9dc64b2558b458a15c7f01c192d874ef460f0a29":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0x9df67c91f1bfcb4d966cf764e9218685e7c59e8a":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101d1575f3560e01c80638b95dd71116100fe578063c86902331161009e578063e32954eb1161006e578063e32954eb146104f2578063e59d895d14610505578063e985e9c514610518578063f1cb7e0614610553575f80fd5b8063c869023314610435578063ce3decdc1461048c578063d5fa2b001461049f578063d700ff33146104b2575f80fd5b8063a8fa5682116100d9578063a8fa5682146103ac578063a9784b3e146103bf578063ac9650d814610402578063bc1c58d114610422575f80fd5b80638b95dd7114610373578063a22cb46514610386578063a4b91a0114610399575f80fd5b80633603d758116101745780635c98042b116101445780635c98042b14610327578063623195b01461033a578063691f34311461034d5780637737221314610360575f80fd5b80633603d758146102975780633b3b57de146102aa5780634cbf6ba4146102bd57806359d1d43c14610307575f80fd5b8063124a319c116101af578063124a319c146102255780632203ab561461025057806329cd62ea14610271578063304e6ade14610284575f80fd5b806301ffc9a7146101d55780630af179d7146101fd57806310f13a8c14610212575b5f80fd5b6101e86101e3366004612267565b610566565b60405190151581526020015b60405180910390f35b61021061020b3660046122bd565b610576565b005b610210610220366004612304565b610778565b610238610233366004612377565b610842565b6040516001600160a01b0390911681526020016101f4565b61026361025e3660046123a1565b610a87565b6040516101f492919061240e565b61021061027f366004612426565b610bb5565b6102106102923660046122bd565b610c4d565b6102106102a536600461244f565b610cc6565b6102386102b836600461244f565b610d64565b6101e86102cb3660046123a1565b5f82815260208181526040808320546001600160401b031683526006825280832094835293815283822092825291909152205461ffff16151590565b61031a6103153660046122bd565b610d93565b6040516101f49190612466565b61031a61033536600461244f565b610e6f565b610210610348366004612478565b610f2a565b61031a61035b36600461244f565b610fc2565b61021061036e3660046122bd565b610ffa565b6102106103813660046124da565b611073565b6102106103943660046125b9565b611150565b6102106103a73660046125e3565b61122a565b61031a6103ba36600461261e565b6112f6565b6101e86103cd36600461265a565b6001600160a01b039283165f908152600c60209081526040808320948352938152838220929094168152925290205460ff1690565b6104156104103660046126ce565b611342565b6040516101f4919061270c565b61031a61043036600461244f565b61134f565b61047761044336600461244f565b5f81815260208181526040808320546001600160401b03168352600982528083209383529290522080546001909101549091565b604080519283526020830191909152016101f4565b61021061049a3660046122bd565b611387565b6102106104ad36600461276e565b6114c3565b6104da6104c036600461244f565b5f602081905290815260409020546001600160401b031681565b6040516001600160401b0390911681526020016101f4565b61041561050036600461279c565b6114e9565b6102106105133660046127d6565b6114fe565b6101e8610526366004612808565b6001600160a01b039182165f908152600b6020908152604080832093909416825291909152205460ff1690565b61031a6105613660046123a1565b6115a2565b5f61057082611666565b92915050565b826105808161168a565b610588575f80fd5b5f84815260208181526040808320548151601f87018490048402810184019092528582528392606092839285926001600160401b039091169183916105eb9183918d908d90819084018382808284375f9201919091525092939250506118b79050565b90505b80515160208201511015610712578661ffff165f03610652578060400151965061061781611912565b94508460405160200161062a9190612834565b60405160208183030381529060405280519060200120925061064b81611933565b9350610704565b5f61065c82611912565b9050816040015161ffff168861ffff16141580610680575061067e868261194f565b155b15610702576106db8c878a8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250505060208801518d91506106d2908290612863565b8b51158a61196a565b8160400151975081602001519650809550858051906020012093506106ff82611933565b94505b505b61070d81611bc9565b6105ee565b5083511561076c5761076c8a85888c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c925061076391508290508f612863565b8951158861196a565b50505050505050505050565b846107828161168a565b61078a575f80fd5b5f86815260208181526040808320546001600160401b03168352600a8252808320898452909152908190209051849184916107c89089908990612876565b908152602001604051809103902091826107e3929190612901565b5084846040516107f4929190612876565b6040518091039020867f448bc014f1536726cf8d54ff3d6481ed3cbc683c2591ca204274009afa09b1a18787878760405161083294939291906129e2565b60405180910390a3505050505050565b5f82815260208181526040808320546001600160401b031683526007825280832085845282528083206001600160e01b0319851684529091528120546001600160a01b03168015610894579050610570565b5f61089e85610d64565b90506001600160a01b0381166108b8575f92505050610570565b6040516301ffc9a760e01b60248201525f9081906001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b1790525161090f9190612834565b5f60405180830381855afa9150503d805f8114610947576040519150601f19603f3d011682016040523d82523d5f602084013e61094c565b606091505b509150915081158061095f575060208151105b80610989575080601f8151811061097857610978612a13565b01602001516001600160f81b031916155b1561099a575f945050505050610570565b6040516001600160e01b0319871660248201526001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b179052516109f09190612834565b5f60405180830381855afa9150503d805f8114610a28576040519150601f19603f3d011682016040523d82523d5f602084013e610a2d565b606091505b509092509050811580610a41575060208151105b80610a6b575080601f81518110610a5a57610a5a612a13565b01602001516001600160f81b031916155b15610a7c575f945050505050610570565b509095945050505050565b5f82815260208181526040808320546001600160401b03168352600180835281842086855290925282206060915b848111610b975780851615801590610ae457505f8181526020839052604081208054610ae090612885565b9050115b15610b8f5780825f8381526020019081526020015f20808054610b0690612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610b3290612885565b8015610b7d5780601f10610b5457610100808354040283529160200191610b7d565b820191905f5260205f20905b815481529060010190602001808311610b6057829003601f168201915b50505050509050935093505050610bae565b60011b610ab5565b505f60405180602001604052805f81525092509250505b9250929050565b82610bbf8161168a565b610bc7575f80fd5b60408051808201825284815260208082018581525f888152808352848120546001600160401b031681526009835284812089825283528490209251835551600190920191909155815185815290810184905285917f1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e4691015b60405180910390a250505050565b82610c578161168a565b610c5f575f80fd5b5f84815260208181526040808320546001600160401b03168352600382528083208784529091529020610c93838583612901565b50837fe379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d75788484604051610c3f929190612a27565b80610cd08161168a565b610cd8575f80fd5b5f82815260208190526040812080546001600160401b031691610cfa83612a3a565b82546101009290920a6001600160401b038181021990931691831602179091555f84815260208181526040918290205491519190921681528492507fc6621ccb8f3f5a04bb6502154b2caf6adf5983fe76dfef1cfc9c42e3579db444910160405180910390a25050565b5f80610d7183603c6115a2565b905080515f03610d8357505f92915050565b610d8c81611cae565b9392505050565b5f83815260208181526040808320546001600160401b03168352600a825280832086845290915290819020905160609190610dd19085908590612876565b90815260200160405180910390208054610dea90612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610e1690612885565b8015610e615780601f10610e3857610100808354040283529160200191610e61565b820191905f5260205f20905b815481529060010190602001808311610e4457829003601f168201915b505050505090509392505050565b5f81815260208181526040808320546001600160401b03168352600482528083208484529091529020805460609190610ea790612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610ed390612885565b8015610f1e5780601f10610ef557610100808354040283529160200191610f1e565b820191905f5260205f20905b815481529060010190602001808311610f0157829003601f168201915b50505050509050919050565b83610f348161168a565b610f3c575f80fd5b83610f48600182612863565b1615610f52575f80fd5b5f85815260208181526040808320546001600160401b031683526001825280832088845282528083208784529091529020610f8e838583612901565b50604051849086907faa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe3905f90a35050505050565b5f81815260208181526040808320546001600160401b03168352600882528083208484529091529020805460609190610ea790612885565b826110048161168a565b61100c575f80fd5b5f84815260208181526040808320546001600160401b03168352600882528083208784529091529020611040838583612901565b50837fb7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f78484604051610c3f929190612a27565b8261107d8161168a565b611085575f80fd5b837f65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af75284846040516110b792919061240e565b60405180910390a2603c830361110e57837f52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd26110f284611cae565b6040516001600160a01b03909116815260200160405180910390a25b5f84815260208181526040808320546001600160401b0316835260028252808320878452825280832086845290915290206111498382612a5f565b5050505050565b6001600160a01b03821633036111bf5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084015b60405180910390fd5b335f818152600b602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6001600160a01b03821633036112825760405162461bcd60e51b815260206004820181905260248201527f53657474696e672064656c65676174652073746174757320666f722073656c6660448201526064016111b6565b335f818152600c6020908152604080832087845282528083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519384529286917ff0ddb3b04746704017f9aa8bd728fcc2c1d11675041205350018915f5e4750a0910160405180910390a4505050565b5f83815260208181526040808320546001600160401b03168352600582528083208684528252808320858452825280832061ffff851684529091529020805460609190610dea90612885565b6060610d8c5f8484611ccb565b5f81815260208181526040808320546001600160401b03168352600382528083208484529091529020805460609190610ea790612885565b826113918161168a565b611399575f80fd5b5f84815260208181526040808320546001600160401b031680845260048352818420888552909252822080549192916113d190612885565b80601f01602080910402602001604051908101604052809291908181526020018280546113fd90612885565b80156114485780601f1061141f57610100808354040283529160200191611448565b820191905f5260205f20905b81548152906001019060200180831161142b57829003601f168201915b505050506001600160401b0384165f9081526004602090815260408083208b8452909152902091925061147e9050858783612901565b50857f8f15ed4b723ef428f250961da8315675b507046737e19319fc1a4d81bfe87f858287876040516114b393929190612b1e565b60405180910390a2505050505050565b816114cd8161168a565b6114d5575f80fd5b6114e483603c61038185611e88565b505050565b60606114f6848484611ccb565b949350505050565b826115088161168a565b611510575f80fd5b5f84815260208181526040808320546001600160401b031683526007825280832087845282528083206001600160e01b031987168085529083529281902080546001600160a01b0319166001600160a01b038716908117909155905190815286917f7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa910160405180910390a350505050565b5f82815260208181526040808320546001600160401b0316835260028252808320858452825280832084845290915290208054606091906115e290612885565b80601f016020809104026020016040519081016040528092919081815260200182805461160e90612885565b80156116595780601f1061163057610100808354040283529160200191611659565b820191905f5260205f20905b81548152906001019060200180831161163c57829003601f168201915b5050505050905092915050565b5f6001600160e01b03198216631674750f60e21b1480610570575061057082611eb8565b5f336001600160a01b037f0000000000000000000000004fbf7b2f171336958be5d15ff762a5cff53635681614806116ea5750336001600160a01b037f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5616145b156116f757506001919050565b6040516302571be360e01b8152600481018390525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa15801561175c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117809190612b4d565b90507f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b0316816001600160a01b031603611845576040516331a9108f60e11b8152600481018490527f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b031690636352211e90602401602060405180830381865afa15801561181e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118429190612b4d565b90505b6001600160a01b03811633148061187e57506001600160a01b0381165f908152600b6020908152604080832033845290915290205460ff165b80610d8c57506001600160a01b0381165f908152600c60209081526040808320868452825280832033845290915290205460ff16610d8c565b6118ff6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261057081611bc9565b602081015181516060916105709161192a9082611edc565b84519190611f33565b60a081015160c08201516060916105709161192a908290612863565b5f81518351148015610d8c5750610d8c835f845f8751611fa7565b865160208801205f61197d878787611f33565b90508315611aa1576001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c168452909152902080546119c690612885565b159050611a23576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611a0783612b68565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091528120611a62916121f9565b897f03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a12078a8a604051611a94929190612b84565b60405180910390a261076c565b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c16845290915290208054611ae290612885565b90505f03611b40576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611b2483612ba9565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091529020611b808282612a5f565b50897f52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b8a8a84604051611bb593929190612bbf565b60405180910390a250505050505050505050565b60c08101516020820181905281515111611be05750565b5f611bf2825f01518360200151611edc565b8260200151611c019190612bed565b8251909150611c109082611fc9565b61ffff166040830152611c24600282612bed565b8251909150611c339082611fc9565b61ffff166060830152611c47600282612bed565b8251909150611c569082611fef565b63ffffffff166080830152611c6c600482612bed565b82519091505f90611c7d9083611fc9565b61ffff169050611c8e600283612bed565b60a084018190529150611ca18183612bed565b60c0909301929092525050565b5f8151601414611cbc575f80fd5b5060200151600160601b900490565b6060816001600160401b03811115611ce557611ce56124c6565b604051908082528060200260200182016040528015611d1857816020015b6060815260200190600190039081611d035790505b5090505f5b82811015611e80578415611dd8575f848483818110611d3e57611d3e612a13565b9050602002810190611d509190612c00565b611d5f91602491600491612c42565b611d6891612c69565b9050858114611dd65760405162461bcd60e51b815260206004820152603460248201527f6d756c746963616c6c3a20416c6c207265636f726473206d7573742068617665604482015273040c240dac2e8c6d0d2dcce40dcc2dacad0c2e6d60631b60648201526084016111b6565b505b5f8030868685818110611ded57611ded612a13565b9050602002810190611dff9190612c00565b604051611e0d929190612876565b5f60405180830381855af49150503d805f8114611e45576040519150601f19603f3d011682016040523d82523d5f602084013e611e4a565b606091505b509150915081611e58575f80fd5b80848481518110611e6b57611e6b612a13565b60209081029190910101525050600101611d1d565b509392505050565b604080516014808252818301909252606091602082018180368337505050600160601b9290920260208301525090565b5f6001600160e01b0319821663c869023360e01b1480610570575061057082612017565b5f815b83518110611eef57611eef612c86565b5f611efa858361203b565b60ff169050611f0a816001612bed565b611f149083612bed565b9150805f03611f235750611f29565b50611edf565b6114f68382612863565b8251606090611f428385612bed565b1115611f4c575f80fd5b5f826001600160401b03811115611f6557611f656124c6565b6040519080825280601f01601f191660200182016040528015611f8f576020820181803683370190505b50905060208082019086860101610a7c82828761205e565b5f611fb38484846120b3565b611fbe8787856120b3565b149695505050505050565b81515f90611fd8836002612bed565b1115611fe2575f80fd5b50016002015161ffff1690565b81515f90611ffe836004612bed565b1115612008575f80fd5b50016004015163ffffffff1690565b5f6001600160e01b0319821663691f343160e01b14806105705750610570826120d5565b5f82828151811061204e5761204e612a13565b016020015160f81c905092915050565b602081106120965781518352612075602084612bed565b9250612082602083612bed565b915061208f602082612863565b905061205e565b905182516020929092036101000a5f190180199091169116179052565b82515f906120c18385612bed565b11156120cb575f80fd5b5091016020012090565b5f6001600160e01b031982166304928c6760e21b14806105705750610570825f6001600160e01b0319821663547d2b4160e11b148061212457506001600160e01b03198216635c98042b60e01b145b806105705750610570825f6001600160e01b0319821663bc1c58d160e01b14806105705750610570825f6001600160e01b03198216631d9dabef60e11b148061217d57506001600160e01b031982166378e5bf0360e11b145b806105705750610570825f6001600160e01b03198216631101d5ab60e11b14806105705750610570825f6001600160e01b0319821663d700ff3360e01b14806105705750610570825f6001600160e01b03198216634fbf043360e01b148061057057506301ffc9a760e01b6001600160e01b0319831614610570565b50805461220590612885565b5f825580601f10612214575050565b601f0160209004905f5260205f20908101906122309190612233565b50565b5b80821115612247575f8155600101612234565b5090565b80356001600160e01b031981168114612262575f80fd5b919050565b5f60208284031215612277575f80fd5b610d8c8261224b565b5f8083601f840112612290575f80fd5b5081356001600160401b038111156122a6575f80fd5b602083019150836020828501011115610bae575f80fd5b5f805f604084860312156122cf575f80fd5b8335925060208401356001600160401b038111156122eb575f80fd5b6122f786828701612280565b9497909650939450505050565b5f805f805f60608688031215612318575f80fd5b8535945060208601356001600160401b0380821115612335575f80fd5b61234189838a01612280565b90965094506040880135915080821115612359575f80fd5b5061236688828901612280565b969995985093965092949392505050565b5f8060408385031215612388575f80fd5b823591506123986020840161224b565b90509250929050565b5f80604083850312156123b2575f80fd5b50508035926020909101359150565b5f5b838110156123db5781810151838201526020016123c3565b50505f910152565b5f81518084526123fa8160208601602086016123c1565b601f01601f19169290920160200192915050565b828152604060208201525f6114f660408301846123e3565b5f805f60608486031215612438575f80fd5b505081359360208301359350604090920135919050565b5f6020828403121561245f575f80fd5b5035919050565b602081525f610d8c60208301846123e3565b5f805f806060858703121561248b575f80fd5b843593506020850135925060408501356001600160401b038111156124ae575f80fd5b6124ba87828801612280565b95989497509550505050565b634e487b7160e01b5f52604160045260245ffd5b5f805f606084860312156124ec575f80fd5b833592506020840135915060408401356001600160401b0380821115612510575f80fd5b818601915086601f830112612523575f80fd5b813581811115612535576125356124c6565b604051601f8201601f19908116603f0116810190838211818310171561255d5761255d6124c6565b81604052828152896020848701011115612575575f80fd5b826020860160208301375f6020848301015280955050505050509250925092565b6001600160a01b0381168114612230575f80fd5b80358015158114612262575f80fd5b5f80604083850312156125ca575f80fd5b82356125d581612596565b9150612398602084016125aa565b5f805f606084860312156125f5575f80fd5b83359250602084013561260781612596565b9150612615604085016125aa565b90509250925092565b5f805f60608486031215612630575f80fd5b8335925060208401359150604084013561ffff8116811461264f575f80fd5b809150509250925092565b5f805f6060848603121561266c575f80fd5b833561267781612596565b925060208401359150604084013561264f81612596565b5f8083601f84011261269e575f80fd5b5081356001600160401b038111156126b4575f80fd5b6020830191508360208260051b8501011115610bae575f80fd5b5f80602083850312156126df575f80fd5b82356001600160401b038111156126f4575f80fd5b6127008582860161268e565b90969095509350505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b8281101561276157603f1988860301845261274f8583516123e3565b94509285019290850190600101612733565b5092979650505050505050565b5f806040838503121561277f575f80fd5b82359150602083013561279181612596565b809150509250929050565b5f805f604084860312156127ae575f80fd5b8335925060208401356001600160401b038111156127ca575f80fd5b6122f78682870161268e565b5f805f606084860312156127e8575f80fd5b833592506127f86020850161224b565b9150604084013561264f81612596565b5f8060408385031215612819575f80fd5b823561282481612596565b9150602083013561279181612596565b5f82516128458184602087016123c1565b9190910192915050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156105705761057061284f565b818382375f9101908152919050565b600181811c9082168061289957607f821691505b6020821081036128b757634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156114e457805f5260205f20601f840160051c810160208510156128e25750805b601f840160051c820191505b81811015611149575f81556001016128ee565b6001600160401b03831115612918576129186124c6565b61292c836129268354612885565b836128bd565b5f601f84116001811461295d575f85156129465750838201355b5f19600387901b1c1916600186901b178355611149565b5f83815260208120601f198716915b8281101561298c578685013582556020948501946001909201910161296c565b50868210156129a8575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b604081525f6129f56040830186886129ba565b8281036020840152612a088185876129ba565b979650505050505050565b634e487b7160e01b5f52603260045260245ffd5b602081525f6114f66020830184866129ba565b5f6001600160401b03808316818103612a5557612a5561284f565b6001019392505050565b81516001600160401b03811115612a7857612a786124c6565b612a8c81612a868454612885565b846128bd565b602080601f831160018114612abf575f8415612aa85750858301515b5f19600386901b1c1916600185901b178555612b16565b5f85815260208120601f198616915b82811015612aed57888601518255948401946001909101908401612ace565b5085821015612b0a57878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b604081525f612b3060408301866123e3565b8281036020840152612b438185876129ba565b9695505050505050565b5f60208284031215612b5d575f80fd5b8151610d8c81612596565b5f61ffff821680612b7b57612b7b61284f565b5f190192915050565b604081525f612b9660408301856123e3565b905061ffff831660208301529392505050565b5f61ffff808316818103612a5557612a5561284f565b606081525f612bd160608301866123e3565b61ffff851660208401528281036040840152612b4381856123e3565b808201808211156105705761057061284f565b5f808335601e19843603018112612c15575f80fd5b8301803591506001600160401b03821115612c2e575f80fd5b602001915036819003821315610bae575f80fd5b5f8085851115612c50575f80fd5b83861115612c5c575f80fd5b5050820193919092039150565b80356020831015610570575f19602084900360031b1b1692915050565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{}},"0xa06a63155145b7f2fda96d9658ec7fef3b9dcf76":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b506004361061004a575f3560e01c80634ce34aa21461004e578063899e104c1461007e5780638df25d9214610091578063c4e8fcb5146100a4575b5f80fd5b61006161005c366004610834565b6100b9565b6040516001600160e01b0319909116815260200160405180910390f35b61006161008c3660046108b4565b610121565b61006161009f36600461091b565b61018a565b6100b76100b2366004610969565b6101c7565b005b5f335f525f60205260405f20546100dd576349ed56f960e11b5f523360045260245ffd5b815f5b81811015610110576101088585838181106100fd576100fd6109a2565b905060c002016102c4565b6001016100e0565b50632671a55160e11b949350505050565b5f335f525f60205260405f2054610145576349ed56f960e11b5f523360045260245ffd5b835f5b8181101561016d576101658787838181106100fd576100fd6109a2565b600101610148565b506101788484610436565b50632267841360e21b95945050505050565b5f335f525f60205260405f20546101ae576349ed56f960e11b5f523360045260245ffd5b6101b88383610436565b506346f92ec960e11b92915050565b336001600160a01b037f000000000000000000000000bdefcf6429d0ac68236a6beb321cbd2ce66b463c1614610210576040516336abb4df60e11b815260040160405180910390fd5b6001600160a01b0382165f9081526020819052604090205481151560ff909116151503610268576040516349271a0f60e11b81526001600160a01b038316600482015281151560248201526044015b60405180910390fd5b6001600160a01b0382165f8181526020818152604091829020805460ff191685151590811790915591519182527fae63067d43ac07563b7eb8db6595635fc77f1578a2a5ea06ba91b63e2afa37e2910160405180910390a25050565b60016102d360208301836109ca565b60038111156102e4576102e46109b6565b03610329576103266102fc60408301602084016109ef565b61030c60608401604085016109ef565b61031c60808501606086016109ef565b8460a0013561056c565b50565b600261033860208301836109ca565b6003811115610349576103496109b6565b036103b6578060a00135600114610379576040516369f9582760e01b815260a0820135600482015260240161025f565b61032661038c60408301602084016109ef565b61039c60608401604085016109ef565b6103ac60808501606086016109ef565b8460800135610660565b60036103c560208301836109ca565b60038111156103d6576103d66109b6565b0361041d576103266103ee60408301602084016109ef565b6103fe60608401604085016109ef565b61040e60808501606086016109ef565b84608001358560a00135610715565b604051631e4cbc7f60e21b815260040160405180910390fd5b808280631759616b60e11b6020525f5b8381101561055f57823582018035803b61046b57635f15d6725f52806020526024601cfd5b60a08201358060051b60c0018060808501351460a0606086013514168185013583141615905080156104a657633ae8821360e21b5f5260045ffd5b506020860195506080602084016024378060061b60400190508060a00160a4525f8160c401528060c4018160a0850160c4375f808260205f875af1935083610550573d1561053057601f3d0160051c91508060051c826003028184111561051a578184036003028280028580020360091c01015b5a60208201101561052d573d5f803e3d5ffd5b50505b6357e222f160e11b5f528260045260c0606452608451602001608452805ffd5b50505050600181019050610446565b5050505060806040525050565b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166106515780873b15151661065157806106405781610623573d1561060257601f3d0160051c8360051c81600302818311156105eb578183036003028280028480020360091c01015b5a6020820110156105fe573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b833b61067757635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af180610707573d156106e557601f3d0160051c8260051c81600302818311156106ce578183036003028280028480020360091c01015b5a6020820110156106e1573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b61072c57635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af1806107d1573d156107b057601f3d0160051c8560051c8160030281831115610799578183036003028280028480020360091c01015b5a6020820110156107ac573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b5f8083601f8401126107fc575f80fd5b50813567ffffffffffffffff811115610813575f80fd5b60208301915083602060c08302850101111561082d575f80fd5b9250929050565b5f8060208385031215610845575f80fd5b823567ffffffffffffffff81111561085b575f80fd5b610867858286016107ec565b90969095509350505050565b5f8083601f840112610883575f80fd5b50813567ffffffffffffffff81111561089a575f80fd5b6020830191508360208260051b850101111561082d575f80fd5b5f805f80604085870312156108c7575f80fd5b843567ffffffffffffffff808211156108de575f80fd5b6108ea888389016107ec565b90965094506020870135915080821115610902575f80fd5b5061090f87828801610873565b95989497509550505050565b5f806020838503121561092c575f80fd5b823567ffffffffffffffff811115610942575f80fd5b61086785828601610873565b80356001600160a01b0381168114610964575f80fd5b919050565b5f806040838503121561097a575f80fd5b6109838361094e565b915060208301358015158114610997575f80fd5b809150509250929050565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52602160045260245ffd5b5f602082840312156109da575f80fd5b8135600481106109e8575f80fd5b9392505050565b5f602082840312156109ff575f80fd5b6109e88261094e56fea164736f6c6343000818000a","storage":{}},"0xaa33d7188eb4b4a51c37199eaad2f73cf2bf0204":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0xac52f68f31577e44ae0c7e95a42dc9eb574b9383":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a424740014610090575b600080fd5b610059610054366004610cac565b6100b3565b6040516100669190610d9b565b60405180910390f35b61008261007d366004610dae565b610162565b604051908152602001610066565b6100a361009e366004610cac565b6101d6565b6040519015158152602001610066565b606060005a90506101576100ca6020870187610ddc565b6001546001600160a01b03166040880135846100e960608b018b610df9565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061023592505050565b9150505b9392505050565b600154604051636ccbae5f60e01b8152600481018390526000916001600160a01b031690636ccbae5f90602401602060405180830381865afa1580156101ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d09190610e40565b92915050565b600061022d6101e485610ef1565b600154604080516020601f88018190048102820181019092528681526001600160a01b039092169190879087908190840183828082843760009201919091525061030d92505050565b949350505050565b6060600080876001600160a01b0316866102518b8a8989610355565b60405161025e9190610f9b565b60006040518083038160008787f1925050503d806000811461029c576040519150601f19603f3d011682016040523d82523d6000602084013e6102a1565b606091505b5090925090506102b2603f87610fb7565b5a116102c0576102c0610fd9565b61030082826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061040a565b9998505050505050505050565b600061031a848484610443565b801561022d575060608401516020908101516001600160e01b031990811660009081529182905260409091205460e01b16151561022d565b50565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036103e75760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526103ff82828661058c565b979650505050505050565b6060831561041957508161015b565b8251156104295782518084602001fd5b8160405162461bcd60e51b81526004016103de9190610d9b565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561048a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104ae9190610e40565b9050600061055c8660600151805190602001208688602001516040516020016104fc9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561058257508551610582906001600160a01b03168286610a38565b9695505050505050565b60606001600160e01b03198416631de5861160e31b0361061a576000806000858060200190518101906105bf9190610fef565b92509250925086838383886040516024016105dd9493929190611032565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152935061015b92505050565b6001600160e01b03198416636debcb8d60e01b0361064b576000806000858060200190518101906105bf9190610fef565b6001600160e01b0319841663280d9b0560e01b036106dd576000806000808680602001905181019061067d91906110aa565b935093509350935087848484848a60405160240161069f959493929190611118565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152945061015b9350505050565b6001600160e01b031984166361603dd960e01b0361075c5760008380602001905181019061070b9190610e40565b905084818460405160240161072192919061115d565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152915061015b9050565b6001600160e01b0319841663b34f33c560e01b036107ab5760008060008580602001905181019061078d9190611176565b92509250925086838383886040516024016105dd94939291906111d0565b6001600160e01b03198416633013529360e01b036107dc5760008060008580602001905181019061078d9190611176565b6001600160e01b031984166307eca39560e01b03610830576000806000808680602001905181019061080e9190611209565b935093509350935087848484848a60405160240161069f95949392919061127e565b6001600160e01b031984166368b6154f60e01b03610862576000806000808680602001905181019061067d91906110aa565b6001600160e01b0319841663341de35b60e21b03610894576000806000808680602001905181019061067d91906110aa565b6001600160e01b03198416637a84860f60e11b0361092d576000806000806000878060200190518101906108c891906112cb565b945094509450945094508885858585858c6040516024016108ee96959493929190611360565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152955061015b945050505050565b6001600160e01b03198416636fab95b360e01b036109b2576000808480602001905181019061095c91906113b9565b915091508582828660405160240161097693929190611400565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925061015b915050565b6001600160e01b0319841663288f888960e11b0361015b57600080848060200190518101906109e1919061142b565b91509150858282866040516024016109fb93929190611459565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925050509392505050565b6000806000610a478585610b7a565b90925090506000816004811115610a6057610a60611489565b148015610a7e5750856001600160a01b0316826001600160a01b0316145b15610a8e5760019250505061015b565b600080876001600160a01b0316631626ba7e60e01b8888604051602401610ab692919061115d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051610af49190610f9b565b600060405180830381855afa9150503d8060008114610b2f576040519150601f19603f3d011682016040523d82523d6000602084013e610b34565b606091505b5091509150818015610b47575080516020145b8015610b6e57508051630b135d3f60e11b90610b6c9083016020908101908401610e40565b145b98975050505050505050565b6000808251604103610bb05760208301516040840151606085015160001a610ba487828585610bbf565b94509450505050610bb8565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610bf65750600090506003610ca3565b8460ff16601b14158015610c0e57508460ff16601c14155b15610c1f5750600090506004610ca3565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610c73573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610c9c57600060019250925050610ca3565b9150600090505b94509492505050565b600080600060408486031215610cc157600080fd5b833567ffffffffffffffff80821115610cd957600080fd5b9085019060808288031215610ced57600080fd5b90935060208501359080821115610d0357600080fd5b818601915086601f830112610d1757600080fd5b813581811115610d2657600080fd5b876020828501011115610d3857600080fd5b6020830194508093505050509250925092565b60005b83811015610d66578181015183820152602001610d4e565b50506000910152565b60008151808452610d87816020860160208601610d4b565b601f01601f19169290920160200192915050565b60208152600061015b6020830184610d6f565b600060208284031215610dc057600080fd5b5035919050565b6001600160a01b038116811461035257600080fd5b600060208284031215610dee57600080fd5b813561015b81610dc7565b6000808335601e19843603018112610e1057600080fd5b83018035915067ffffffffffffffff821115610e2b57600080fd5b602001915036819003821315610bb857600080fd5b600060208284031215610e5257600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610e9257610e92610e59565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ec157610ec1610e59565b604052919050565b600067ffffffffffffffff821115610ee357610ee3610e59565b50601f01601f191660200190565b600060808236031215610f0357600080fd5b610f0b610e6f565b8235610f1681610dc7565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610f4657600080fd5b840136601f820112610f5757600080fd5b8035610f6a610f6582610ec9565b610e98565b8181523684838501011115610f7e57600080fd5b818484018583013760009181019093015250606082015292915050565b60008251610fad818460208701610d4b565b9190910192915050565b600082610fd457634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b60008060006060848603121561100457600080fd5b835161100f81610dc7565b602085015190935061102081610dc7565b80925050604084015190509250925092565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061058290830184610d6f565b600082601f83011261107657600080fd5b8151611084610f6582610ec9565b81815284602083860101111561109957600080fd5b61022d826020830160208701610d4b565b600080600080608085870312156110c057600080fd5b84516110cb81610dc7565b60208601519094506110dc81610dc7565b60408601516060870151919450925067ffffffffffffffff81111561110057600080fd5b61110c87828801611065565b91505092959194509250565b6001600160a01b038681168252851660208201526040810184905260a06060820181905260009061114b90830185610d6f565b8281036080840152610b6e8185610d6f565b82815260406020820152600061022d6040830184610d6f565b60008060006060848603121561118b57600080fd5b835161119681610dc7565b60208501516040860151919450925067ffffffffffffffff8111156111ba57600080fd5b6111c686828701611065565b9150509250925092565b60018060a01b03851681528360208201526080604082015260006111f76080830185610d6f565b82810360608401526103ff8185610d6f565b6000806000806080858703121561121f57600080fd5b845161122a81610dc7565b60208601516040870151919550935067ffffffffffffffff8082111561124f57600080fd5b61125b88838901611065565b9350606087015191508082111561127157600080fd5b5061110c87828801611065565b60018060a01b038616815284602082015260a0604082015260006112a560a0830186610d6f565b82810360608401526112b78186610d6f565b90508281036080840152610b6e8185610d6f565b600080600080600060a086880312156112e357600080fd5b85516112ee81610dc7565b60208701519095506112ff81610dc7565b60408701516060880151919550935067ffffffffffffffff8082111561132457600080fd5b61133089838a01611065565b9350608088015191508082111561134657600080fd5b5061135388828901611065565b9150509295509295909350565b6001600160a01b038781168252861660208201526040810185905260c06060820181905260009061139390830186610d6f565b82810360808401526113a58186610d6f565b905082810360a08401526103008185610d6f565b600080604083850312156113cc57600080fd5b82519150602083015167ffffffffffffffff8111156113ea57600080fd5b6113f685828601611065565b9150509250929050565b8381526060602082015260006114196060830185610d6f565b82810360408401526105828185610d6f565b6000806040838503121561143e57600080fd5b825161144981610dc7565b6020939093015192949293505050565b60018060a01b03841681528260208201526060604082015260006114806060830184610d6f565b95945050505050565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a","storage":{"0x1":"0x7bb6cd9be29fab783c0b494a06fed8b2e2596b7a","0xd8b896d609e853134f3f02ce62d8049b2fdfe9356134f6d548fb1beda30db79":"0x30135293","0x4f457f36b92dc6b16c281e5877e2d8d39630135c1b7246fa9174035e1efcefbd":"0x6fab95b3","0x6b7ba3fe9941e089de60543da4a1deaef065baa963222951b2f9a138f9960820":"0x6debcb8d","0x70cff8e4ee4af5aa154324d45bcf258212c235bbe79f0707bb6273110ef4e13a":"0xf5090c1e","0x73efb0e44094dbabc6bbeecd3be1d81f272157c2dae2d647e6315f150b0b1dd2":"0xd0778d6c","0x8b1c4edded6644848281eab03ac2c319242d62b2057cffa3dd4540715bbc155e":"0xef2c3088","0xbeb5ea8fc2aeae43b7170220434aa4429fb067f0866ae25514b29f647641ca8c":"0x511f1112","0xca659f6eb372ce950e69d4d474290a6a4285f6a06a6128ca9f45419371a1e997":"0xb34f33c5","0xd12e300b5f35ba5198dd81dab97a512a154a0ad0e2cda788abdc22deba64f2a7":"0x280d9b05","0xd5453e7f4fff276a1d42f717d1db50865c284ae707a15bd6a590a3895656f27c":"0x7eca395","0xea2575ae4056f10294a848ca5ed6d215dffd1b80838142770bc441f7df607d71":"0x61603dd9","0xf8ca3ef1e3d09a0d88e209301f12626c90bec3ea586d4bce2c7a58e7eae8278f":"0x68b6154f"}},"0xb17aae5b3a7815433fc82cfd67ea245767894f03":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061012a5760003560e01c80638d839ffe116100ab578063aeb8ce9b1161006f578063aeb8ce9b146105d7578063ce1e09c014610688578063f14fcbc81461069d578063f2fde38b146106c7578063f49826be146106fa578063f7a16963146107b95761012a565b80638d839ffe1461045d5780638da5cb5b146104725780638f32d59b146104a35780639791c097146104b8578063acf1a841146105695761012a565b80637e324479116100f25780637e324479146102b8578063839df945146102e857806383e7f6ff1461031257806385f6d155146103c55780638a95b09f146104485761012a565b806301ffc9a71461012f5780633ccfd60b146101775780633d86c52f1461018e578063530e784f14610270578063715018a6146102a3575b600080fd5b34801561013b57600080fd5b506101636004803603602081101561015257600080fd5b50356001600160e01b031916610881565b604080519115158252519081900360200190f35b34801561018357600080fd5b5061018c610a12565b005b34801561019a57600080fd5b5061025e600480360360a08110156101b157600080fd5b810190602081018135600160201b8111156101cb57600080fd5b8201836020820111156101dd57600080fd5b803590602001918460018302840111600160201b831117156101fe57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b0383358116945060208401359360408101358216935060600135169050610a53565b60408051918252519081900360200190f35b34801561027c57600080fd5b5061018c6004803603602081101561029357600080fd5b50356001600160a01b0316610b42565b3480156102af57600080fd5b5061018c610ba3565b3480156102c457600080fd5b5061018c600480360360408110156102db57600080fd5b5080359060200135610bfe565b3480156102f457600080fd5b5061025e6004803603602081101561030b57600080fd5b5035610c1a565b34801561031e57600080fd5b5061025e6004803603604081101561033557600080fd5b810190602081018135600160201b81111561034f57600080fd5b82018360208201111561036157600080fd5b803590602001918460018302840111600160201b8311171561038257600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505091359250610c2c915050565b61018c600480360360808110156103db57600080fd5b810190602081018135600160201b8111156103f557600080fd5b82018360208201111561040757600080fd5b803590602001918460018302840111600160201b8311171561042857600080fd5b91935091506001600160a01b038135169060208101359060400135610d9e565b34801561045457600080fd5b5061025e610de9565b34801561046957600080fd5b5061025e610df0565b34801561047e57600080fd5b50610487610df6565b604080516001600160a01b039092168252519081900360200190f35b3480156104af57600080fd5b50610163610e05565b3480156104c457600080fd5b50610163600480360360208110156104db57600080fd5b810190602081018135600160201b8111156104f557600080fd5b82018360208201111561050757600080fd5b803590602001918460018302840111600160201b8311171561052857600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610e16945050505050565b61018c6004803603604081101561057f57600080fd5b810190602081018135600160201b81111561059957600080fd5b8201836020820111156105ab57600080fd5b803590602001918460018302840111600160201b831117156105cc57600080fd5b919350915035610e2b565b3480156105e357600080fd5b50610163600480360360208110156105fa57600080fd5b810190602081018135600160201b81111561061457600080fd5b82018360208201111561062657600080fd5b803590602001918460018302840111600160201b8311171561064757600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610fcf945050505050565b34801561069457600080fd5b5061025e611069565b3480156106a957600080fd5b5061018c600480360360208110156106c057600080fd5b503561106f565b3480156106d357600080fd5b5061018c600480360360208110156106ea57600080fd5b50356001600160a01b03166110a1565b34801561070657600080fd5b5061025e6004803603606081101561071d57600080fd5b810190602081018135600160201b81111561073757600080fd5b82018360208201111561074957600080fd5b803590602001918460018302840111600160201b8311171561076a57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b0383351693505050602001356110bb565b61018c600480360360c08110156107cf57600080fd5b810190602081018135600160201b8111156107e957600080fd5b8201836020820111156107fb57600080fd5b803590602001918460018302840111600160201b8311171561081c57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b038335811694506020840135936040810135935060608101358216925060800135166110d3565b604080517f737570706f727473496e74657266616365286279746573342900000000000000815290519081900360190190206000906001600160e01b0319838116911614806109c05750604080517472656e657728737472696e672c75696e743235362960581b815290519081900360150181209080602861186a8239604080519182900360280182206e636f6d6d697428627974657333322960881b8352905191829003600f01822090925090806026611892823960260190506040518091039020604051808070617661696c61626c6528737472696e672960781b8152506011019050604051809103902060405180807f72656e74507269636528737472696e672c75696e7432353629000000000000008152506019019050604051809103902018181818186001600160e01b031916826001600160e01b031916145b80610a0c5750604051808061182a60409139604080519182900301812091508060426118b8823960420190506040518091039020186001600160e01b031916826001600160e01b031916145b92915050565b610a1a610e05565b610a2357600080fd5b6040513390303180156108fc02916000818181858888f19350505050158015610a50573d6000803e3d6000fd5b50565b845160208601206000906001600160a01b038416158015610a7b57506001600160a01b038316155b15610acb57604080516020808201939093526bffffffffffffffffffffffff19606089901b1681830152605480820188905282518083039091018152607490910190915280519101209050610b39565b6001600160a01b038416610ade57600080fd5b604080516020808201939093526bffffffffffffffffffffffff19606089811b82168385015287811b8216605484015286901b166068820152607c80820188905282518083039091018152609c909101909152805191012090505b95945050505050565b610b4a610e05565b610b5357600080fd5b600280546001600160a01b0319166001600160a01b0383811691909117918290556040519116907ff261845a790fe29bbd6631e2ca4a5bdc83e6eed7c3271d9590d97287e00e912390600090a250565b610bab610e05565b610bb457600080fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b610c06610e05565b610c0f57600080fd5b600391909155600455565b60056020526000908152604090205481565b815160208084019190912060025460015460408051636b727d4360e11b81526004810185905290516000956001600160a01b03948516946350e9a715948a9491169263d6e4fa8692602480840193919291829003018186803b158015610c9157600080fd5b505afa158015610ca5573d6000803e3d6000fd5b505050506040513d6020811015610cbb57600080fd5b50516040516001600160e01b031960e085901b168152602481018290526044810188905260606004820190815283516064830152835189928291608490910190602087019080838360005b83811015610d1e578181015183820152602001610d06565b50505050905090810190601f168015610d4b5780820380516001836020036101000a031916815260200191505b5094505050505060206040518083038186803b158015610d6a57600080fd5b505afa158015610d7e573d6000803e3d6000fd5b505050506040513d6020811015610d9457600080fd5b5051949350505050565b610de285858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250889350879250869150806110d3565b5050505050565b6224ea0081565b60035481565b6000546001600160a01b031690565b6000546001600160a01b0316331490565b60006003610e2383611646565b101592915050565b6000610e6e84848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250869250610c2c915050565b905080341015610e7d57600080fd5b60008484604051808383808284376040805193909101839003832060015463c475abff60e01b855260048501829052602485018b90529151909750600096506001600160a01b03909116945063c475abff93506044808401936020935082900301818787803b158015610eef57600080fd5b505af1158015610f03573d6000803e3d6000fd5b505050506040513d6020811015610f1957600080fd5b5051905034831015610f565760405133903485900380156108fc02916000818181858888f19350505050158015610f54573d6000803e3d6000fd5b505b817f3da24c024582931cfaf8267d8ed24d13a82a8068d5bd337d30ec45cea4e506ae8787868560405180806020018481526020018381526020018281038252868682818152602001925080828437600083820152604051601f909101601f191690920182900397509095505050505050a2505050505050565b80516020820120600090610fe283610e16565b80156110625750600154604080516312dc929d60e31b81526004810184905290516001600160a01b03909216916396e494e891602480820192602092909190829003018186803b15801561103557600080fd5b505afa158015611049573d6000803e3d6000fd5b505050506040513d602081101561105f57600080fd5b50515b9392505050565b60045481565b6004546000828152600560205260409020544291011061108e57600080fd5b6000908152600560205260409020429055565b6110a9610e05565b6110b257600080fd5b610a508161172e565b60006110cb848484600080610a53565b949350505050565b60006110e28787868686610a53565b905060006110f188878461179c565b885160208a01209091508060006001600160a01b038716156114ac5760015460408051633f2891eb60e21b815260048101859052306024820152604481018c905290516001600160a01b039092169163fca247ac916064808201926020929091908290030181600087803b15801561116857600080fd5b505af115801561117c573d6000803e3d6000fd5b505050506040513d602081101561119257600080fd5b505160015460408051630ddf7fcb60e41b815290519293506000926001600160a01b039092169163ddf7fcb091600480820192602092909190829003018186803b1580156111df57600080fd5b505afa1580156111f3573d6000803e3d6000fd5b505050506040513d602081101561120957600080fd5b50516040805160208181019390935280820187905281518082038301815260608201808452815191850191909120600154633f15457f60e01b90925292519294506001600160a01b031692633f15457f92606480840193829003018186803b15801561127457600080fd5b505afa158015611288573d6000803e3d6000fd5b505050506040513d602081101561129e57600080fd5b505160408051630c4b7b8560e11b8152600481018490526001600160a01b038b8116602483015291519190921691631896f70a91604480830192600092919082900301818387803b1580156112f257600080fd5b505af1158015611306573d6000803e3d6000fd5b505050506001600160a01b0387161561139257876001600160a01b031663d5fa2b0082896040518363ffffffff1660e01b815260040180838152602001826001600160a01b03166001600160a01b0316815260200192505050600060405180830381600087803b15801561137957600080fd5b505af115801561138d573d6000803e3d6000fd5b505050505b60015460408051630a3b53db60e21b8152600481018690526001600160a01b038e81166024830152915191909216916328ed4f6c91604480830192600092919082900301818387803b1580156113e757600080fd5b505af11580156113fb573d6000803e3d6000fd5b50505050600160009054906101000a90046001600160a01b03166001600160a01b03166323b872dd308d866040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050600060405180830381600087803b15801561148e57600080fd5b505af11580156114a2573d6000803e3d6000fd5b505050505061154c565b6001600160a01b038616156114c057600080fd5b60015460408051633f2891eb60e21b8152600481018590526001600160a01b038d81166024830152604482018d90529151919092169163fca247ac9160648083019260209291908290030181600087803b15801561151d57600080fd5b505af1158015611531573d6000803e3d6000fd5b505050506040513d602081101561154757600080fd5b505190505b896001600160a01b0316837fca6abbe9d7f11422cb6ca7629fbf6fe9efb1c621f71ce8f02b9f2a230097404f8d87856040518080602001848152602001838152602001828103825285818151815260200191508051906020019080838360005b838110156115c45781810151838201526020016115ac565b50505050905090810190601f1680156115f15780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a3833411156116395760405133903486900380156108fc02916000818181858888f19350505050158015611637573d6000803e3d6000fd5b505b5050505050505050505050565b8051600090819081905b8082101561172557600085838151811061166657fe5b01602001516001600160f81b0319169050600160ff1b81101561168e57600183019250611719565b600760fd1b6001600160f81b0319821610156116af57600283019250611719565b600f60fc1b6001600160f81b0319821610156116d057600383019250611719565b601f60fb1b6001600160f81b0319821610156116f157600483019250611719565b603f60fa1b6001600160f81b03198216101561171257600583019250611719565b6006830192505b50600190920191611650565b50909392505050565b6001600160a01b03811661174157600080fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b600354600082815260056020526040812054909142910111156117be57600080fd5b600454600083815260056020526040902054429101116117dd57600080fd5b6117e684610fcf565b6117ef57600080fd5b600082815260056020526040812081905561180a8585610c2c565b90506224ea0084101561181c57600080fd5b803410156110cb57600080fdfe6d616b65436f6d6d69746d656e7457697468436f6e66696728737472696e672c616464726573732c627974657333322c616464726573732c6164647265737329726567697374657228737472696e672c616464726573732c75696e743235362c62797465733332296d616b65436f6d6d69746d656e7428737472696e672c616464726573732c6279746573333229726567697374657257697468436f6e66696728737472696e672c616464726573732c75696e743235362c627974657333322c616464726573732c6164647265737329a265627a7a72315820dbcd3913c2076b23152296f549f9d7284be303cc004736992b455428cb03c12664736f6c634300050c0032","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x1":"0xc965345edac823d56812cd20a10316233916a605","0x2":"0xec71e4e674fe0f432693dc2b935c34bd2774c003","0x3":"0x258","0x4":"0x15180"}},"0xbdefcf6429d0ac68236a6beb321cbd2ce66b463c":{"nonce":2,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c80636d435421116100885780637b37e561116100635780637b37e561146102435780638b9e028b14610256578063906c87cc1461027657806393790f4414610289575f80fd5b80636d435421146101eb5780636e9bfd9f146101fe578063794593bc14610230575f80fd5b806314afd79e116100c357806314afd79e1461018157806333bc8572146101945780634e3f9580146101b757806351710e45146101d8575f80fd5b8063027cc764146100e95780630a96ad391461011957806313ad9cab1461016c575b5f80fd5b6100fc6100f7366004610c39565b61029c565b6040516001600160a01b0390911681526020015b60405180910390f35b604080517f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f81527fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167602082015201610110565b61017f61017a366004610c61565b610339565b005b6100fc61018f366004610ca9565b610531565b6101a76101a2366004610cc9565b61055c565b6040519015158152602001610110565b6101ca6101c5366004610ca9565b610595565b604051908152602001610110565b61017f6101e6366004610ca9565b6105bd565b61017f6101f9366004610cc9565b6106be565b61021161020c366004610cfa565b6107ae565b604080516001600160a01b039093168352901515602083015201610110565b6100fc61023e366004610d11565b610838565b61017f610251366004610ca9565b610a0a565b610269610264366004610ca9565b610aab565b6040516101109190610d32565b6100fc610284366004610ca9565b610b28565b6101ca610297366004610ca9565b610b53565b5f6102a683610b8e565b6001600160a01b0383165f908152602081905260409020600301548083106102f157604051636ceb340b60e01b81526001600160a01b03851660048201526024015b60405180910390fd5b6001600160a01b0384165f90815260208190526040902060030180548490811061031d5761031d610d7e565b5f918252602090912001546001600160a01b0316949350505050565b61034283610bc6565b60405163c4e8fcb560e01b81526001600160a01b038381166004830152821515602483015284169063c4e8fcb5906044015f604051808303815f87803b15801561038a575f80fd5b505af115801561039c573d5f803e3d5ffd5b505050506001600160a01b038381165f908152602081815260408083209386168352600484019091529020548015158380156103d6575080155b15610425576003830180546001810182555f828152602080822090920180546001600160a01b0319166001600160a01b038a169081179091559254928152600486019091526040902055610529565b831580156104305750805b156105295760038301545f198301905f9061044d90600190610d92565b90508181146104d8575f85600301828154811061046c5761046c610d7e565b5f918252602090912001546003870180546001600160a01b03909216925082918590811061049c5761049c610d7e565b5f91825260208083209190910180546001600160a01b0319166001600160a01b0394851617905592909116815260048701909152604090208490555b846003018054806104eb576104eb610db7565b5f828152602080822083015f1990810180546001600160a01b03191690559092019092556001600160a01b0389168252600487019052604081205550505b505050505050565b5f61053b82610b8e565b506001600160a01b039081165f908152602081905260409020600101541690565b5f61056683610b8e565b506001600160a01b039182165f9081526020818152604080832093909416825260049092019091522054151590565b5f61059f82610b8e565b506001600160a01b03165f9081526020819052604090206003015490565b6105c681610b8e565b6001600160a01b038181165f9081526020819052604090206002015416331461060d576040516388c3a11560e01b81526001600160a01b03821660048201526024016102e8565b6040515f907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da908290a26001600160a01b038082165f818152602081905260408082206002810180546001600160a01b031916905560010154905133949190911692917fc8894f26f396ce8c004245c8b7cd1b92103a6e4302fcbab883987149ac01b7ec91a46001600160a01b03165f90815260208190526040902060010180546001600160a01b03191633179055565b6106c782610bc6565b6001600160a01b0381166106f95760405163a388d26360e01b81526001600160a01b03831660048201526024016102e8565b6001600160a01b038083165f9081526020819052604090206002015481169082160361074b576040516365e0406560e11b81526001600160a01b038084166004830152821660248201526044016102e8565b6040516001600160a01b038216907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da905f90a26001600160a01b039182165f90815260208190526040902060020180546001600160a01b03191691909216179055565b5f8060ff60f81b30847f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f6040516020016107eb9493929190610dcb565b60408051601f198184030181529190528051602090910120936001600160a01b0385163f7fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167149350915050565b5f6001600160a01b0382166108605760405163267eaa8160e21b815260040160405180910390fd5b606083901c3314610884576040516332db94d160e21b815260040160405180910390fd5b6040516108c3906001600160f81b031990309086907f6ca1fbc523294317ba2167126e2f1bf211f6e6d2140e056b7e95702bf83e833f90602001610dcb565b604051602081830303815290604052805190602001205f1c90507fc60a911f166d494bc3f347aff977ce726d7b78702e3f3e1ae125046768868167816001600160a01b03163f0361093257604051633194665960e11b81526001600160a01b03821660048201526024016102e8565b8260405161093f90610c16565b8190604051809103905ff590508015801561095c573d5f803e3d5ffd5b50506001600160a01b038181165f81815260208181526040918290206001810180546001600160a01b03191695881695909517909455868455815192835282018690527f4397af6128d529b8ae0442f99db1296d5136062597a15bbc61c1b2a6431a7d15910160405180910390a16040516001600160a01b03808516915f918516907fc8894f26f396ce8c004245c8b7cd1b92103a6e4302fcbab883987149ac01b7ec908390a45092915050565b610a1381610bc6565b6001600160a01b038181165f9081526020819052604090206002015416610a58576040516335809b0b60e11b81526001600160a01b03821660048201526024016102e8565b6040515f907f11a3cf439fb225bfe74225716b6774765670ec1060e3796802e62139d69974da908290a26001600160a01b03165f90815260208190526040902060020180546001600160a01b0319169055565b6060610ab682610b8e565b6001600160a01b0382165f908152602081815260409182902060030180548351818402810184019094528084529091830182828015610b1c57602002820191905f5260205f20905b81546001600160a01b03168152600190910190602001808311610afe575b50505050509050919050565b5f610b3282610b8e565b506001600160a01b039081165f908152602081905260409020600201541690565b6001600160a01b0381165f9081526020819052604090205480610b89576040516304ca820960e41b815260040160405180910390fd5b919050565b6001600160a01b0381165f90815260208190526040902054610bc3576040516304ca820960e41b815260040160405180910390fd5b50565b610bcf81610b8e565b6001600160a01b038181165f90815260208190526040902060010154163314610bc35760405163d4ed9a1760e01b81526001600160a01b03821660048201526024016102e8565b610a4180610e0583390190565b80356001600160a01b0381168114610b89575f80fd5b5f8060408385031215610c4a575f80fd5b610c5383610c23565b946020939093013593505050565b5f805f60608486031215610c73575f80fd5b610c7c84610c23565b9250610c8a60208501610c23565b915060408401358015158114610c9e575f80fd5b809150509250925092565b5f60208284031215610cb9575f80fd5b610cc282610c23565b9392505050565b5f8060408385031215610cda575f80fd5b610ce383610c23565b9150610cf160208401610c23565b90509250929050565b5f60208284031215610d0a575f80fd5b5035919050565b5f8060408385031215610d22575f80fd5b82359150610cf160208401610c23565b602080825282518282018190525f9190848201906040850190845b81811015610d725783516001600160a01b031683529284019291840191600101610d4d565b50909695505050505050565b634e487b7160e01b5f52603260045260245ffd5b81810381811115610db157634e487b7160e01b5f52601160045260245ffd5b92915050565b634e487b7160e01b5f52603160045260245ffd5b6001600160f81b031994909416845260609290921b6bffffffffffffffffffffffff19166001840152601583015260358201526055019056fe60a060405234801561000f575f80fd5b5033608052608051610a1561002c5f395f6101d20152610a155ff3fe608060405234801561000f575f80fd5b506004361061004a575f3560e01c80634ce34aa21461004e578063899e104c1461007e5780638df25d9214610091578063c4e8fcb5146100a4575b5f80fd5b61006161005c366004610834565b6100b9565b6040516001600160e01b0319909116815260200160405180910390f35b61006161008c3660046108b4565b610121565b61006161009f36600461091b565b61018a565b6100b76100b2366004610969565b6101c7565b005b5f335f525f60205260405f20546100dd576349ed56f960e11b5f523360045260245ffd5b815f5b81811015610110576101088585838181106100fd576100fd6109a2565b905060c002016102c4565b6001016100e0565b50632671a55160e11b949350505050565b5f335f525f60205260405f2054610145576349ed56f960e11b5f523360045260245ffd5b835f5b8181101561016d576101658787838181106100fd576100fd6109a2565b600101610148565b506101788484610436565b50632267841360e21b95945050505050565b5f335f525f60205260405f20546101ae576349ed56f960e11b5f523360045260245ffd5b6101b88383610436565b506346f92ec960e11b92915050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610210576040516336abb4df60e11b815260040160405180910390fd5b6001600160a01b0382165f9081526020819052604090205481151560ff909116151503610268576040516349271a0f60e11b81526001600160a01b038316600482015281151560248201526044015b60405180910390fd5b6001600160a01b0382165f8181526020818152604091829020805460ff191685151590811790915591519182527fae63067d43ac07563b7eb8db6595635fc77f1578a2a5ea06ba91b63e2afa37e2910160405180910390a25050565b60016102d360208301836109ca565b60038111156102e4576102e46109b6565b03610329576103266102fc60408301602084016109ef565b61030c60608401604085016109ef565b61031c60808501606086016109ef565b8460a0013561056c565b50565b600261033860208301836109ca565b6003811115610349576103496109b6565b036103b6578060a00135600114610379576040516369f9582760e01b815260a0820135600482015260240161025f565b61032661038c60408301602084016109ef565b61039c60608401604085016109ef565b6103ac60808501606086016109ef565b8460800135610660565b60036103c560208301836109ca565b60038111156103d6576103d66109b6565b0361041d576103266103ee60408301602084016109ef565b6103fe60608401604085016109ef565b61040e60808501606086016109ef565b84608001358560a00135610715565b604051631e4cbc7f60e21b815260040160405180910390fd5b808280631759616b60e11b6020525f5b8381101561055f57823582018035803b61046b57635f15d6725f52806020526024601cfd5b60a08201358060051b60c0018060808501351460a0606086013514168185013583141615905080156104a657633ae8821360e21b5f5260045ffd5b506020860195506080602084016024378060061b60400190508060a00160a4525f8160c401528060c4018160a0850160c4375f808260205f875af1935083610550573d1561053057601f3d0160051c91508060051c826003028184111561051a578184036003028280028580020360091c01015b5a60208201101561052d573d5f803e3d5ffd5b50505b6357e222f160e11b5f528260045260c0606452608451602001608452805ffd5b50505050600181019050610446565b5050505060806040525050565b6040516323b872dd60e01b5f5283600452826024528160445260205f60645f80895af1803d15601f3d1160015f51141617163d151581166106515780873b15151661065157806106405781610623573d1561060257601f3d0160051c8360051c81600302818311156105eb578183036003028280028480020360091c01015b5a6020820110156105fe573d5f803e3d5ffd5b5050505b63f486bc875f528660205285604052846060525f6080528360a05260a4601cfd5b63988919235f52866020528560405284606052836080526084601cfd5b635f15d6725f52866020526024601cfd5b505060405250505f6060525050565b833b61067757635f15d6725f52836020526024601cfd5b6040516323b872dd60e01b5f528360045282602452816044525f8060645f80895af180610707573d156106e557601f3d0160051c8260051c81600302818311156106ce578183036003028280028480020360091c01015b5a6020820110156106e1573d5f803e3d5ffd5b5050505b63f486bc875f5285602052846040528360605282608052600160a05260a4601cfd5b5060405250505f6060525050565b843b61072c57635f15d6725f52846020526024601cfd5b60405160805160a05160c051637921219560e11b5f528760045286602452856044528460645260a06084525f60a4525f8060c45f808d5af1806107d1573d156107b057601f3d0160051c8560051c8160030281831115610799578183036003028280028480020360091c01015b5a6020820110156107ac573d5f803e3d5ffd5b5050505b63f486bc875f52896020528860405287606052866080528560a05260a4601cfd5b5060809290925260a05260c05260405250505f606052505050565b5f8083601f8401126107fc575f80fd5b50813567ffffffffffffffff811115610813575f80fd5b60208301915083602060c08302850101111561082d575f80fd5b9250929050565b5f8060208385031215610845575f80fd5b823567ffffffffffffffff81111561085b575f80fd5b610867858286016107ec565b90969095509350505050565b5f8083601f840112610883575f80fd5b50813567ffffffffffffffff81111561089a575f80fd5b6020830191508360208260051b850101111561082d575f80fd5b5f805f80604085870312156108c7575f80fd5b843567ffffffffffffffff808211156108de575f80fd5b6108ea888389016107ec565b90965094506020870135915080821115610902575f80fd5b5061090f87828801610873565b95989497509550505050565b5f806020838503121561092c575f80fd5b823567ffffffffffffffff811115610942575f80fd5b61086785828601610873565b80356001600160a01b0381168114610964575f80fd5b919050565b5f806040838503121561097a575f80fd5b6109838361094e565b915060208301358015158114610997575f80fd5b809150509250929050565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52602160045260245ffd5b5f602082840312156109da575f80fd5b8135600481106109e8575f80fd5b9392505050565b5f602082840312156109ff575f80fd5b6109e88261094e56fea164736f6c6343000818000aa164736f6c6343000818000a","storage":{}},"0xbe5deac45dd1ca4ee18dc2d585d84d3d3cb82b0d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106100415760003560e01c806341539d4a146100465780634d5505d314610097578063afa764d7146100b1575b600080fd5b6100636004803603602081101561005c57600080fd5b50356100dc565b6040805195865260208601949094528484019290925260608401526001600160a01b03166080830152519081900360a00190f35b61009f610114565b60408051918252519081900360200190f35b6100da600480360360608110156100c757600080fd5b508035906020810135906040013561011a565b005b60006020819052908152604090208054600182015460028301546003840154600490940154929391929091906001600160a01b031685565b60015481565b6101226101eb565b506040805160a0810182528481526020808201858152828401858152426060808601918252336080870181815260018054810180825560009081528089528a81208a518155975188830155955160028801559351600387015551600490950180546001600160a01b0319166001600160a01b0390961695909517909455905486518981529485018890528487018a905295519495919491937fba5de06d22af2685c6c7765f60067f7d2b08c2d29f53cdf14d67f6d1c9bfb527929081900390910190a450505050565b6040518060a001604052806000801916815260200160008152602001600081526020016000815260200160006001600160a01b03168152509056fea164736f6c6343000606000a","storage":{"0x1":"0x0"}},"0xbe92182cab5b84fd18b34881a0c32771e84f5b8b":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061021c5760003560e01c80638da5cb5b11610125578063bebec6b4116100ad578063e985e9c51161007c578063e985e9c514610540578063f059235914610553578063f2fde38b14610566578063ffa1ad7414610579578063ffad6f551461059d57600080fd5b8063bebec6b4146104e7578063bfc5429b146104fa578063c15ae7cf1461050d578063c87b56dd1461052d57600080fd5b8063a81ce6f9116100f4578063a81ce6f91461046d578063ac9650d814610480578063b3f9e4cb146104a0578063b85afd28146104b3578063b98b3526146104d457600080fd5b80638da5cb5b146103f157806391015f6b146103f9578063933c051d1461041b578063a3f4df7e1461043d57600080fd5b80634bd79ed0116101a857806370a082311161017757806370a082311461038d578063715018a6146103a05780637e37479e146103a857806383caffbe146103bb578063869b8884146103ce57600080fd5b80634bd79ed0146103335780634f558e79146103465780636352211e14610359578063672b9f811461036c57600080fd5b80631bd8cc1a116101ef5780631bd8cc1a146102ac5780631be5e7ed146102cc578063276fabb1146102ec578063430c20811461030d578063485cc9551461032057600080fd5b806301ffc9a7146102215780630328075514610249578063081812fc1461026c57806313af403514610297575b600080fd5b61023461022f366004612c9d565b6105b0565b60405190151581526020015b60405180910390f35b61025c610257366004612d0b565b610638565b6040516102409493929190612dfe565b61027f61027a366004612e3c565b61065b565b6040516001600160a01b039091168152602001610240565b6102aa6102a5366004612e6a565b610760565b005b6102bf6102ba366004612d0b565b6107d1565b6040516102409190612e87565b6102df6102da366004612edb565b6107f0565b6040516102409190612f12565b6102ff6102fa366004612f25565b61091b565b604051908152602001610240565b61023461031b366004612f66565b61098f565b6102aa61032e366004612f92565b610aa2565b6102aa610341366004612fcb565b610bf5565b610234610354366004612e3c565b610e51565b61027f610367366004612e3c565b610e5c565b61037f61037a366004613036565b610e67565b604051610240929190613058565b6102ff61039b366004612e6a565b610f97565b6102aa611095565b6102ff6103b6366004612e6a565b6110a9565b6102bf6103c936600461307d565b611118565b6103e16103dc366004612fcb565b6114f0565b60405161024094939291906131bb565b61027f6116e6565b61040c610407366004612d0b565b611714565b60405161024093929190613208565b61042e610429366004612fcb565b611734565b60405161024093929190613234565b6102df604051806040016040528060118152602001702aa7299d10283937bc3c902932b0b232b960791b81525081565b61027f61047b366004612e3c565b6118bd565b61049361048e366004612f25565b61198b565b6040516102409190613277565b61027f6104ae366004612e3c565b611a7f565b6104c66104c1366004612d0b565b611b05565b6040516102409291906132d9565b6102df6104e23660046132fe565b611ce1565b6102df6104f5366004612e6a565b611cfb565b6102df6105083660046132fe565b611d6f565b61052061051b366004612f25565b611d89565b6040516102409190613371565b6102df61053b366004612e3c565b611e37565b61023461054e366004612f92565b611f09565b6102aa610561366004612fcb565b611f54565b6102aa610574366004612e6a565b612018565b6102df604051806040016040528060058152602001640302e352e360dc1b81525081565b6102aa6105ab366004613384565b612085565b60006001600160e01b031982166362526e6360e01b14806105e157506001600160e01b03198216636fa624af60e11b145b806105fc57506001600160e01b031982166308da864d60e31b145b8061061757506001600160e01b03198216638584880360e01b145b8061063257506301ffc9a760e01b6001600160e01b03198316145b92915050565b6000806060806106498787876120d8565b93509350935093505b93509350935093565b60006106668261233a565b61067257506000919050565b61067b826123d2565b6106f25760665460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa1580156106c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106ed91906133bd565b610632565b60655460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa15801561073c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061063291906133bd565b600061076a6116e6565b6001600160a01b0316146107c55760405162461bcd60e51b815260206004820152601e60248201527f50726f78795265616465723a204f574e45525f414c52454144595f534554000060448201526064015b60405180910390fd5b6107ce81612419565b50565b60606107e66107e0848661346a565b83612495565b90505b9392505050565b60606107fb826123d2565b1561088057606554604051631be5e7ed60e01b81526001600160a01b0390911690631be5e7ed9061083490879087908790600401613547565b600060405180830381865afa158015610851573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261087991908101906135b0565b90506107e9565b600061088b83612617565b90506001600160a01b0381163b1561091357604051631be5e7ed60e01b81526001600160a01b03821690631be5e7ed906108cd90889088908890600401613547565b600060405180830381865afa92505050801561090b57506040513d6000823e601f3d908101601f1916820160405261090891908101906135b0565b60015b156109135791505b509392505050565b60655460405163276fabb160e01b81526000916001600160a01b03169063276fabb19061094e908690869060040161366c565b602060405180830381865afa15801561096b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613680565b600061099a8261233a565b6109a657506000610632565b6109af826123d2565b610a2d5760665460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a04573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a289190613699565b6107e9565b60655460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a7e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613699565b600054610100900460ff1615808015610ac25750600054600160ff909116105b80610adc5750303b158015610adc575060005460ff166001145b610b3f5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107bc565b6000805460ff191660011790558015610b62576000805461ff0019166101001790555b606580546001600160a01b038086166001600160a01b0319928316179092556066805492851692909116919091179055610b9a61268a565b610ba261268a565b610baa6126b1565b8015610bf0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b610bfd6126e1565b828114610c4c5760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107bc565b60005b83811015610e4a5760006068868684818110610c6d57610c6d6136bb565b9050602002810190610c7f91906136d1565b604051610c8d929190613717565b908152604051908190036020019020541115610cf1576068858583818110610cb757610cb76136bb565b9050602002810190610cc991906136d1565b604051610cd7929190613717565b90815260200160405180910390206000610cf19190612c18565b60005b838383818110610d0657610d066136bb565b9050602002810190610d189190613727565b9050811015610ddc576068868684818110610d3557610d356136bb565b9050602002810190610d4791906136d1565b604051610d55929190613717565b9081526020016040518091039020848484818110610d7557610d756136bb565b9050602002810190610d879190613727565b83818110610d9757610d976136bb565b9050602002810190610da991906136d1565b82546001810184556000938452602090932090920191610dc991836137f8565b5080610dd4816138cd565b915050610cf4565b507fb2b57b54285120d17f49f2490a39ef791441fd0ad1e6b6818c23262bf91f061c858583818110610e1057610e106136bb565b9050602002810190610e2291906136d1565b604051610e309291906138e6565b60405180910390a180610e42816138cd565b915050610c4f565b5050505050565b60006106328261233a565b600061063282612740565b606080610e73836123d2565b15610ef95760655460405163672b9f8160e01b815260048101869052602481018590526001600160a01b039091169063672b9f8190604401600060405180830381865afa158015610ec8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610ef091908101906138fa565b91509150610f90565b6000610f0484612617565b90506001600160a01b0381163b15610f8e5760405163672b9f8160e01b815260048101869052602481018590526001600160a01b0382169063672b9f8190604401600060405180830381865afa925050508015610f8357506040513d6000823e601f3d908101601f19168201604052610f8091908101906138fa565b60015b15610f8e5790935091505b505b9250929050565b6065546040516370a0823160e01b81526001600160a01b03838116600483015260009283929116906370a0823190602401602060405180830381865afa158015610fe5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110099190613680565b6066549091506001600160a01b031615610632576066546040516370a0823160e01b81526001600160a01b038581166004830152909116906370a0823190602401602060405180830381865afa158015611067573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061108b9190613680565b6107e9908261395d565b61109d6126e1565b6110a76000612419565b565b606554604051633f1ba3cf60e11b81526001600160a01b0383811660048301526000921690637e37479e90602401602060405180830381865afa1580156110f4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190613680565b606060006067868660405161112e929190613717565b9081526020016040518091039020805461114790613770565b80601f016020809104026020016040519081016040528092919081815260200182805461117390613770565b80156111c05780601f10611195576101008083540402835291602001916111c0565b820191906000526020600020905b8154815290600101906020018083116111a357829003601f168201915b5050505050905080516000036111d657506114e8565b6000604051806040016040528060068152602001653a37b5b2b71760d11b81525090506000604051806040016040528060088152602001672e6164647265737360c01b81525090506000604051806040016040528060018152602001601760f91b815250905060008385838c8c868d8d8a60405160200161125f99989796959493929190613970565b6040516020818303038152906040529050600060688260405161128291906139f3565b9081526020016040518091039020805480602002602001604051908101604052809291908181526020016000905b8282101561135c5783829060005260206000200180546112cf90613770565b80601f01602080910402602001604051908101604052809291908181526020018280546112fb90613770565b80156113485780601f1061131d57610100808354040283529160200191611348565b820191906000526020600020905b81548152906001019060200180831161132b57829003601f168201915b5050505050815260200190600101906112b0565b50505050905080516003611370919061395d565b6001600160401b03811115611387576113876133da565b6040519080825280602002602001820160405280156113ba57816020015b60608152602001906001900390816113a55790505b50965081876000815181106113d1576113d16136bb565b602002602001018190525060005b815181101561143e578181815181106113fa576113fa6136bb565b602002602001015188826001611410919061395d565b81518110611420576114206136bb565b60200260200101819052508080611436906138cd565b9150506113df565b508486848d8d8860405160200161145a96959493929190613a0f565b6040516020818303038152906040528782516001611478919061395d565b81518110611488576114886136bb565b60200260200101819052508486856040516020016114a893929190613a72565b60405160208183030381529060405287825160026114c6919061395d565b815181106114d6576114d66136bb565b60200260200101819052505050505050505b949350505050565b6060808080846001600160401b0381111561150d5761150d6133da565b604051908082528060200260200182016040528015611536578160200160208202803683370190505b509350846001600160401b03811115611551576115516133da565b60405190808252806020026020018201604052801561157a578160200160208202803683370190505b509250846001600160401b03811115611595576115956133da565b6040519080825280602002602001820160405280156115c857816020015b60608152602001906001900390816115b35790505b509150846001600160401b038111156115e3576115e36133da565b60405190808252806020026020018201604052801561161657816020015b60608152602001906001900390816116015790505b50905060005b858110156116da57611647898989898581811061163b5761163b6136bb565b905060200201356120d8565b888581518110611659576116596136bb565b60200260200101888681518110611672576116726136bb565b6020026020010188878151811061168b5761168b6136bb565b602002602001018888815181106116a4576116a46136bb565b6020908102919091010193909352929091526001600160a01b0392831690915291169052806116d2816138cd565b91505061161c565b50945094509450949050565b7fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c8121905546001600160a01b031690565b6000806060611724868686612761565b9250925092505b93509350939050565b60608080836001600160401b03811115611750576117506133da565b604051908082528060200260200182016040528015611779578160200160208202803683370190505b509250836001600160401b03811115611794576117946133da565b6040519080825280602002602001820160405280156117bd578160200160208202803683370190505b509150836001600160401b038111156117d8576117d86133da565b60405190808252806020026020018201604052801561180b57816020015b60608152602001906001900390816117f65790505b50905060005b848110156118b25761183c8888888885818110611830576118306136bb565b90506020020135612761565b86848151811061184e5761184e6136bb565b60200260200101868581518110611867576118676136bb565b60200260200101868681518110611880576118806136bb565b60209081029190910101929092526001600160a01b0392831690915291169052806118aa816138cd565b915050611811565b509450945094915050565b606554604051634f558e7960e01b8152600481018390526000916001600160a01b031690634f558e7990602401602060405180830381865afa158015611907573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061192b9190613699565b156119415750506065546001600160a01b031690565b6066546001600160a01b03161580159061196d575060006119618361296c565b6001600160a01b031614155b156119835750506066546001600160a01b031690565b506000919050565b6060816001600160401b038111156119a5576119a56133da565b6040519080825280602002602001820160405280156119d857816020015b60608152602001906001900390816119c35790505b50905060005b82811015611a7857611a48308585848181106119fc576119fc6136bb565b9050602002810190611a0e91906136d1565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061299e92505050565b828281518110611a5a57611a5a6136bb565b60200260200101819052508080611a70906138cd565b9150506119de565b5092915050565b6000611a8a8261233a565b611a9657506000919050565b611a9f826123d2565b611ad45760665460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb906024016106ac565b60655460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb9060240161071f565b606080836001600160401b03811115611b2057611b206133da565b604051908082528060200260200182016040528015611b5357816020015b6060815260200190600190039081611b3e5790505b509150836001600160401b03811115611b6e57611b6e6133da565b604051908082528060200260200182016040528015611ba157816020015b6060815260200190600190039081611b8c5790505b509050611bad836123d2565b15611c345760655460405163170b5fa560e31b81526001600160a01b039091169063b85afd2890611be690889088908890600401613ab5565b600060405180830381865afa158015611c03573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611c2b9190810190613b72565b91509150611cd9565b6000611c3f84612617565b90506001600160a01b0381163b15158015611c5957508415155b15611cd75760405163170b5fa560e31b81526001600160a01b0382169063b85afd2890611c8e90899089908990600401613ab5565b600060405180830381865afa925050508015611ccc57506040513d6000823e601f3d908101601f19168201604052611cc99190810190613b72565b60015b15611cd75790935091505b505b935093915050565b6060611cf08686868686612a92565b979650505050505050565b606554604051632fafb1ad60e21b81526001600160a01b038381166004830152606092169063bebec6b4906024015b600060405180830381865afa158015611d47573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261063291908101906135b0565b6060611d7e8686868686612a92565b509695505050505050565b6060816001600160401b03811115611da357611da36133da565b604051908082528060200260200182016040528015611dcc578160200160208202803683370190505b50905060005b82811015611a7857611dfb848483818110611def57611def6136bb565b90506020020135612740565b828281518110611e0d57611e0d6136bb565b6001600160a01b039092166020928302919091019091015280611e2f816138cd565b915050611dd2565b6060611e428261233a565b611e5a57505060408051602081019091526000815290565b611e63826123d2565b611ed85760665460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401600060405180830381865afa158015611eb0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106ed91908101906135b0565b60655460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401611d2a565b60405162461bcd60e51b815260206004820152601f60248201527f50726f78795265616465723a20554e535550504f525445445f4d4554484f440060448201526000906064016107bc565b611f5c6126e1565b828114611fab5760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107bc565b60005b83811015610e4a57612006858583818110611fcb57611fcb6136bb565b9050602002810190611fdd91906136d1565b858585818110611fef57611fef6136bb565b905060200281019061200191906136d1565b612b3e565b80612010816138cd565b915050611fae565b6120206126e1565b6001600160a01b0381166107c55760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107bc565b61208d6126e1565b60005b83811015610e4a576120c68585838181106120ad576120ad6136bb565b90506020028101906120bf91906136d1565b8585612b3e565b806120d0816138cd565b915050612090565b600080606080856001600160401b038111156120f6576120f66133da565b60405190808252806020026020018201604052801561212957816020015b60608152602001906001900390816121145790505b509150856001600160401b03811115612144576121446133da565b60405190808252806020026020018201604052801561217757816020015b60608152602001906001900390816121625790505b509050612183856123d2565b156122845760655460405163b3f9e4cb60e01b8152600481018790526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa1580156121d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121f591906133bd565b935061220085612bad565b60655460405163170b5fa560e31b81529194506001600160a01b03169063b85afd2890612235908a908a908a90600401613ab5565b600060405180830381865afa158015612252573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261227a9190810190613b72565b9092509050610652565b61228d85612617565b93506122988561296c565b92506001600160a01b0384163b151580156122b4575060008251115b156106525760405163170b5fa560e31b81526001600160a01b0385169063b85afd28906122e9908a908a908a90600401613ab5565b600060405180830381865afa92505050801561232757506040513d6000823e601f3d908101601f191682016040526123249190810190613b72565b60015b1561065257909250905093509350935093565b6000612345826123d2565b6123645760006123548361296c565b6001600160a01b03161415610632565b606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e79906024015b602060405180830381865afa1580156123ae573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190613699565b6066546000906001600160a01b031615806106325750606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401612391565b60006124236116e6565b9050817fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c812190580546001600160a01b0319166001600160a01b03928316179055604051838216918316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b606082516001600160401b038111156124b0576124b06133da565b6040519080825280602002602001820160405280156124e357816020015b60608152602001906001900390816124ce5790505b5090506124ef826123d2565b1561257257606554604051630dec660d60e11b81526001600160a01b0390911690631bd8cc1a906125269086908690600401613bcb565b600060405180830381865afa158015612543573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261256b9190810190613bed565b9050610632565b600061257d83612617565b90506001600160a01b0381163b15158015612599575060008451115b15611a7857604051630dec660d60e11b81526001600160a01b03821690631bd8cc1a906125cc9087908790600401613bcb565b600060405180830381865afa92505050801561260a57506040513d6000823e601f3d908101601f191682016040526126079190810190613bed565b60015b15611a7857949350505050565b60665460405163b3f9e4cb60e01b8152600481018390526000916001600160a01b03169063b3f9e4cb906024015b602060405180830381865afa92505050801561267e575060408051601f3d908101601f1916820190925261267b918101906133bd565b60015b61063257506000919050565b600054610100900460ff166110a75760405162461bcd60e51b81526004016107bc90613c21565b600054610100900460ff166126d85760405162461bcd60e51b81526004016107bc90613c21565b6110a733612419565b336126ea6116e6565b6001600160a01b0316146110a75760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107bc565b600061274b826123d2565b612758576106ed8261296c565b61063282612bad565b6000806060846001600160401b0381111561277e5761277e6133da565b6040519080825280602002602001820160405280156127b157816020015b606081526020019060019003908161279c5790505b5090506127bd846123d2565b156128bb5760655460405163b3f9e4cb60e01b8152600481018690526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561280b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061282f91906133bd565b925061283a84612bad565b606554604051630dec660d60e11b81529193506001600160a01b031690631bd8cc1a9061286f90899089908990600401613c6c565b600060405180830381865afa15801561288c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526128b49190810190613bed565b905061172b565b6128c484612617565b92506128cf8461296c565b91506001600160a01b0383163b151580156128e957508415155b1561172b57604051630dec660d60e11b81526001600160a01b03841690631bd8cc1a9061291e90899089908990600401613c6c565b600060405180830381865afa92505050801561295c57506040513d6000823e601f3d908101601f191682016040526129599190810190613bed565b60015b1561172b57905093509350939050565b6066546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401612645565b60606001600160a01b0383163b612a065760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b60648201526084016107bc565b600080846001600160a01b031684604051612a2191906139f3565b600060405180830381855af49150503d8060008114612a5c576040519150601f19603f3d011682016040523d82523d6000602084013e612a61565b606091505b5091509150612a898282604051806060016040528060278152602001613c8160279139612bdf565b95945050505050565b6060806000612aa388888888611118565b90506000612ab18286612495565b905060005b8151811015612b31576000828281518110612ad357612ad36136bb565b6020026020010151511115612b1f57828181518110612af457612af46136bb565b60200260200101519350818181518110612b1057612b106136bb565b60200260200101519450612b31565b80612b29816138cd565b915050612ab6565b5050509550959350505050565b818160678686604051612b52929190613717565b90815260200160405180910390209182612b6d9291906137f8565b507f0bf4b04a0f6d7d0800284e1abb0f58f795c0a25b9088634b6ab847be51001dec8484604051612b9f9291906138e6565b60405180910390a150505050565b6065546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401612645565b60608315612bee5750816107e9565b825115612bfe5782518084602001fd5b8160405162461bcd60e51b81526004016107bc9190612f12565b50805460008255906000526020600020908101906107ce91905b80821115612c4f576000612c468282612c53565b50600101612c32565b5090565b508054612c5f90613770565b6000825580601f10612c6f575050565b601f0160209004906000526020600020908101906107ce91905b80821115612c4f5760008155600101612c89565b600060208284031215612caf57600080fd5b81356001600160e01b0319811681146107e957600080fd5b60008083601f840112612cd957600080fd5b5081356001600160401b03811115612cf057600080fd5b6020830191508360208260051b8501011115610f9057600080fd5b600080600060408486031215612d2057600080fd5b83356001600160401b03811115612d3657600080fd5b612d4286828701612cc7565b909790965060209590950135949350505050565b60005b83811015612d71578181015183820152602001612d59565b50506000910152565b60008151808452612d92816020860160208601612d56565b601f01601f19169290920160200192915050565b600082825180855260208086019550808260051b84010181860160005b84811015612df157601f19868403018952612ddf838351612d7a565b98840198925090830190600101612dc3565b5090979650505050505050565b6001600160a01b03858116825284166020820152608060408201819052600090612e2a90830185612da6565b8281036060840152611cf08185612da6565b600060208284031215612e4e57600080fd5b5035919050565b6001600160a01b03811681146107ce57600080fd5b600060208284031215612e7c57600080fd5b81356107e981612e55565b6020815260006107e96020830184612da6565b60008083601f840112612eac57600080fd5b5081356001600160401b03811115612ec357600080fd5b602083019150836020828501011115610f9057600080fd5b600080600060408486031215612ef057600080fd5b83356001600160401b03811115612f0657600080fd5b612d4286828701612e9a565b6020815260006107e96020830184612d7a565b60008060208385031215612f3857600080fd5b82356001600160401b03811115612f4e57600080fd5b612f5a85828601612cc7565b90969095509350505050565b60008060408385031215612f7957600080fd5b8235612f8481612e55565b946020939093013593505050565b60008060408385031215612fa557600080fd5b8235612fb081612e55565b91506020830135612fc081612e55565b809150509250929050565b60008060008060408587031215612fe157600080fd5b84356001600160401b0380821115612ff857600080fd5b61300488838901612cc7565b9096509450602087013591508082111561301d57600080fd5b5061302a87828801612cc7565b95989497509550505050565b6000806040838503121561304957600080fd5b50508035926020909101359150565b60408152600061306b6040830185612d7a565b8281036020840152612a898185612d7a565b6000806000806040858703121561309357600080fd5b84356001600160401b03808211156130aa57600080fd5b6130b688838901612e9a565b909650945060208701359150808211156130cf57600080fd5b5061302a87828801612e9a565b600081518084526020808501945080840160005b838110156131155781516001600160a01b0316875295820195908201906001016130f0565b509495945050505050565b60008282518085526020808601955060058183821b8501018287016000805b868110156131ac57601f1988850381018c5283518051808752908801908887019080891b88018a01865b8281101561319557858a8303018452613183828651612d7a565b948c0194938c01939150600101613169565b509e8a019e9750505093870193505060010161313f565b50919998505050505050505050565b6080815260006131ce60808301876130dc565b82810360208401526131e081876130dc565b905082810360408401526131f48186613120565b90508281036060840152611cf08185613120565b6001600160a01b03848116825283166020820152606060408201819052600090612a8990830184612da6565b60608152600061324760608301866130dc565b828103602084015261325981866130dc565b9050828103604084015261326d8185613120565b9695505050505050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156132cc57603f198886030184526132ba858351612d7a565b9450928501929085019060010161329e565b5092979650505050505050565b6040815260006132ec6040830185612da6565b8281036020840152612a898185612da6565b60008060008060006060868803121561331657600080fd5b85356001600160401b038082111561332d57600080fd5b61333989838a01612e9a565b9097509550602088013591508082111561335257600080fd5b5061335f88828901612e9a565b96999598509660400135949350505050565b6020815260006107e960208301846130dc565b6000806000806040858703121561339a57600080fd5b84356001600160401b03808211156133b157600080fd5b6130b688838901612cc7565b6000602082840312156133cf57600080fd5b81516107e981612e55565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715613418576134186133da565b604052919050565b60006001600160401b03821115613439576134396133da565b5060051b60200190565b60006001600160401b0382111561345c5761345c6133da565b50601f01601f191660200190565b600061347d61347884613420565b6133f0565b80848252602080830192508560051b85013681111561349b57600080fd5b855b818110156135125780356001600160401b038111156134bc5760008081fd5b870136601f8201126134ce5760008081fd5b80356134dc61347882613443565b81815236868385010111156134f15760008081fd5b8186840187830137600091810186019190915286525093820193820161349d565b50919695505050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60408152600061355b60408301858761351e565b9050826020830152949350505050565b600082601f83011261357c57600080fd5b815161358a61347882613443565b81815284602083860101111561359f57600080fd5b6114e8826020830160208701612d56565b6000602082840312156135c257600080fd5b81516001600160401b038111156135d857600080fd5b6114e88482850161356b565b60008383855260208086019550808560051b8301018460005b87811015612df157848303601f19018952813536889003601e1901811261362357600080fd5b870184810190356001600160401b0381111561363e57600080fd5b80360382131561364d57600080fd5b61365885828461351e565b9a86019a94505050908301906001016135fd565b6020815260006107e66020830184866135e4565b60006020828403121561369257600080fd5b5051919050565b6000602082840312156136ab57600080fd5b815180151581146107e957600080fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e198436030181126136e857600080fd5b8301803591506001600160401b0382111561370257600080fd5b602001915036819003821315610f9057600080fd5b8183823760009101908152919050565b6000808335601e1984360301811261373e57600080fd5b8301803591506001600160401b0382111561375857600080fd5b6020019150600581901b3603821315610f9057600080fd5b600181811c9082168061378457607f821691505b6020821081036137a457634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115610bf057600081815260208120601f850160051c810160208610156137d15750805b601f850160051c820191505b818110156137f0578281556001016137dd565b505050505050565b6001600160401b0383111561380f5761380f6133da565b6138238361381d8354613770565b836137aa565b6000601f841160018114613857576000851561383f5750838201355b600019600387901b1c1916600186901b178355610e4a565b600083815260209020601f19861690835b828110156138885786850135825560209485019460019092019101613868565b50868210156138a55760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b634e487b7160e01b600052601160045260246000fd5b6000600182016138df576138df6138b7565b5060010190565b6020815260006107e660208301848661351e565b6000806040838503121561390d57600080fd5b82516001600160401b038082111561392457600080fd5b6139308683870161356b565b9350602085015191508082111561394657600080fd5b506139538582860161356b565b9150509250929050565b80820180821115610632576106326138b7565b60008a51613982818460208f01612d56565b8a5190830190613996818360208f01612d56565b8a519101906139a9818360208e01612d56565b0187898237600090880190815286516139c6818360208b01612d56565b0184868237600090850190815283516139e3818360208801612d56565b019b9a5050505050505050505050565b60008251613a05818460208701612d56565b9190910192915050565b60008751613a21818460208c01612d56565b875190830190613a35818360208c01612d56565b8751910190613a48818360208b01612d56565b018486823760009085019081528351613a65818360208801612d56565b0198975050505050505050565b60008451613a84818460208901612d56565b845190830190613a98818360208901612d56565b8451910190613aab818360208801612d56565b0195945050505050565b6040808252810183905260006001600160fb1b03841115613ad557600080fd5b8360051b808660608501376020830193909352500160600192915050565b600082601f830112613b0457600080fd5b81516020613b1461347883613420565b82815260059290921b84018101918181019086841115613b3357600080fd5b8286015b84811015611d7e5780516001600160401b03811115613b565760008081fd5b613b648986838b010161356b565b845250918301918301613b37565b60008060408385031215613b8557600080fd5b82516001600160401b0380821115613b9c57600080fd5b613ba886838701613af3565b93506020850151915080821115613bbe57600080fd5b5061395385828601613af3565b604081526000613bde6040830185612da6565b90508260208301529392505050565b600060208284031215613bff57600080fd5b81516001600160401b03811115613c1557600080fd5b6114e884828501613af3565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60408152600061355b6040830185876135e456fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a","storage":{}},"0xc2110388dd54228ae0a834119457ede938bf0b57":{"nonce":1,"balance":"0x0","code":"0x60806040526004361061021e5760003560e01c80638da5cb5b11610123578063acf1a841116100ab578063d547741f1161006f578063d547741f14610682578063f14fcbc8146106a2578063f23a6e61146106c2578063f2fde38b146106e2578063ffa1ad741461070257600080fd5b8063acf1a841146105e0578063bc197c8114610600578063c0c53b8b14610620578063cf01585314610640578063d53913931461066057600080fd5b8063a0e3aef1116100f2578063a0e3aef114610534578063a217fddf14610554578063a3f4df7e14610569578063a4247400146105a0578063aa271e1a146105c057600080fd5b80638da5cb5b146104c157806391d14854146104df578063983b2d56146104ff578063986502751461051f57600080fd5b80635fc1964f116101a65780636ccbae5f116101755780636ccbae5f14610439578063715018a61461045957806371e2a6571461046e57806381c81d351461048e57806383e7f6ff146104a157600080fd5b80635fc1964f146103ae578063634486da146103ce5780636352211e146103e15780636a8be89e1461041957600080fd5b80632f2ff15d116101ed5780632f2ff15d146103035780633092afd51461032557806336568abe14610345578063423f6cef14610365578063572b6c051461038557600080fd5b806301ffc9a71461022a578063150b7a021461025f5780631bf7e13e14610298578063248a9ca3146102c557600080fd5b3661022557005b600080fd5b34801561023657600080fd5b5061024a6102453660046125f2565b610733565b60405190151581526020015b60405180910390f35b34801561026b57600080fd5b5061027f61027a366004612672565b610779565b6040516001600160e01b03199091168152602001610256565b3480156102a457600080fd5b506102b86102b33660046126e4565b6108cb565b60405161025691906127a4565b3480156102d157600080fd5b506102f56102e03660046127b7565b600090815260fb602052604090206001015490565b604051908152602001610256565b34801561030f57600080fd5b5061032361031e3660046127d0565b610997565b005b34801561033157600080fd5b50610323610340366004612800565b6109c1565b34801561035157600080fd5b506103236103603660046127d0565b6109d5565b34801561037157600080fd5b5061032361038036600461281d565b610a68565b34801561039157600080fd5b5061024a6103a0366004612800565b6001600160a01b0316301490565b3480156103ba57600080fd5b506103236103c936600461288f565b610bd9565b6103236103dc366004612800565b610c21565b3480156103ed57600080fd5b506104016103fc3660046127b7565b610ce4565b6040516001600160a01b039091168152602001610256565b34801561042557600080fd5b50610323610434366004612800565b610cef565b34801561044557600080fd5b506102f56104543660046127b7565b610d38565b34801561046557600080fd5b50610323610d7e565b34801561047a57600080fd5b5061032361048936600461288f565b610d92565b61032361049c366004612800565b610dda565b3480156104ad57600080fd5b506102f56104bc366004612934565b610e57565b3480156104cd57600080fd5b506097546001600160a01b0316610401565b3480156104eb57600080fd5b5061024a6104fa3660046127d0565b610efa565b34801561050b57600080fd5b5061032361051a366004612800565b610f25565b34801561052b57600080fd5b50610323610f36565b34801561054057600080fd5b506102f561054f366004612a5c565b610f50565b34801561056057600080fd5b506102f5600081565b34801561057557600080fd5b506102b86040518060400160405280600b81526020016a454e5320437573746f647960a81b81525081565b3480156105ac57600080fd5b5061024a6105bb3660046126e4565b610ffc565b3480156105cc57600080fd5b5061024a6105db366004612800565b61104f565b3480156105ec57600080fd5b506103236105fb366004612934565b611069565b34801561060c57600080fd5b5061027f61061b366004612b35565b611222565b34801561062c57600080fd5b5061032361063b366004612bf3565b6112db565b34801561064c57600080fd5b5061032361065b366004612c3e565b611485565b34801561066c57600080fd5b506102f56000805160206133f583398151915281565b34801561068e57600080fd5b5061032361069d3660046127d0565b611592565b3480156106ae57600080fd5b506103236106bd3660046127b7565b6115b7565b3480156106ce57600080fd5b5061027f6106dd366004612d20565b61162b565b3480156106ee57600080fd5b506103236106fd366004612800565b6116bc565b34801561070e57600080fd5b506102b860405180604001604052806005815260200164302e312e3360d81b81525081565b60006001600160e01b03198216630a85bd0160e11b148061076457506001600160e01b03198216630271189760e51b145b806107735750610773826116d8565b92915050565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004546000906001600160a01b0316806107b061170d565b6001600160a01b0316036108a957600080806107ce86880188612d9b565b9250925092506107dd8361171c565b6001600160a01b03841663b88d4fde30600080516020613415833981519152546040516001600160a01b03909116908c9061082390879030906000908b90602001612dfc565b6040516020818303038152906040526040518563ffffffff1660e01b81526004016108519493929190612e3c565b600060405180830381600087803b15801561086b57600080fd5b505af115801561087f573d6000803e3d6000fd5b5050505061089561088f8261174e565b846117d3565b50630a85bd0160e11b93506108c292505050565b6040516344e7d94960e01b815260040160405180910390fd5b95945050505050565b606060005a90506108dd858585610ffc565b6108fa57604051638baa579f60e01b815260040160405180910390fd5b61098c61090a6020870187612800565b3060408801358461091e60608b018b612e6f565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061185e92505050565b9150505b9392505050565b600082815260fb60205260409020600101546109b28161193f565b6109bc8383611950565b505050565b6109c96119d7565b6109d281611a50565b50565b6109dd61170d565b6001600160a01b0316816001600160a01b031614610a5a5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b610a648282611a68565b5050565b80610a7161170d565b6001600160a01b0316610a8382611aed565b6001600160a01b031614610ac55780610a9a61170d565b604051637ea58b1160e01b815260048101929092526001600160a01b03166024820152604401610a51565b610ace82611c03565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052600090610b22906060015b6040516020818303038152906040528051906020012090565b80546001600160a01b0319166001600160a01b0392909216919091179055600060008051602061341583398151915254604051637921219560e11b81523060048201526001600160a01b038681166024830152604482018690526001606483015260a06084830152600060a48301529091169150819063f242432a9060c401600060405180830381600087803b158015610bbb57600080fd5b505af1158015610bcf573d6000803e3d6000fd5b5050505050505050565b610be16119d7565b60005b8151811015610a6457610c0f828281518110610c0257610c02612eb5565b6020026020010151611a50565b80610c1981612ee1565b915050610be4565b610c2c6105db61170d565b610c485760405162461bcd60e51b8152600401610a5190612efa565b6001600160a01b038116610c9e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a51565b610ca781611c1c565b610caf610f36565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610a64573d6000803e3d6000fd5b600061077382611aed565b610cf76119d7565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c500480546001600160a01b0319166001600160a01b0392909216919091179055565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a838156020820152908101829052600090610d7790606001610b09565b5492915050565b610d866119d7565b610d906000611c34565b565b610d9a6119d7565b60005b8151811015610a6457610dc8828281518110610dbb57610dbb612eb5565b6020026020010151611c1c565b80610dd281612ee1565b915050610d9d565b610de56105db61170d565b610e015760405162461bcd60e51b8152600401610a5190612efa565b6001600160a01b038116610ca75760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a51565b6000805160206133d5833981519152546040516383e7f6ff60e01b81526000916001600160a01b031690829082906383e7f6ff90610e9d90899089908990600401612f58565b6040805180830381865afa158015610eb9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610edd9190612f7c565b60208101518151919250610ef091612fca565b9695505050505050565b600091825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610f2d6119d7565b6109d281611c1c565b610d906000805160206133f583398151915261036061170d565b6000805160206133d5833981519152546000906001600160a01b0316806365a69dcf8d85610f7e5730610f80565b8d5b8d8d8d8d8d8d8d6040518a63ffffffff1660e01b8152600401610fab9998979695949392919061306e565b602060405180830381865afa158015610fc8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fec91906130de565b9c9b505050505050505050505050565b600061104761100a856130f7565b3085858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611c8692505050565b949350505050565b60006107736000805160206133f583398151915283610efa565b6110746105db61170d565b6110905760405162461bcd60e51b8152600401610a5190612efa565b6002603354036110e25760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a51565b60026033556000805160206133d5833981519152546040516383e7f6ff60e01b81526001600160a01b039091169060009082906383e7f6ff9061112d90889088908890600401612f58565b6040805180830381865afa158015611149573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061116d9190612f7c565b6020810151815191925061118091612fca565b4710156111a05760405163050205f960e01b815260040160405180910390fd5b816001600160a01b031663acf1a841826020015183600001516111c39190612fca565b8787876040518563ffffffff1660e01b81526004016111e493929190612f58565b6000604051808303818588803b1580156111fd57600080fd5b505af1158015611211573d6000803e3d6000fd5b505060016033555050505050505050565b6000600080516020613415833981519152546001600160a01b031661124561170d565b6001600160a01b03161461126c576040516344e7d94960e01b815260040160405180910390fd5b600061127a83850185612800565b90506112858161171c565b60005b878110156112c4576112b28989838181106112a5576112a5612eb5565b90506020020135836117d3565b806112bc81612ee1565b915050611288565b5063bc197c8160e01b9a9950505050505050505050565b600054610100900460ff16158080156112fb5750600054600160ff909116105b806113155750303b158015611315575060005460ff166001145b6113785760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610a51565b6000805460ff19166001179055801561139b576000805461ff0019166101001790555b6000805160206133d583398151915280546001600160a01b038087166001600160a01b03199283161790925560008051602061341583398151915280548684169083161790557ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004805492851692909116919091179055611419611dc5565b611421611df3565b611429611df3565b611431611e1a565b611439611e51565b801561147f576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6114906105db61170d565b6114ac5760405162461bcd60e51b8152600401610a5190612efa565b6002603354036114fe5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a51565b600260338190555060006115478c8c8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061174e92505050565b905061155281611c03565b6115708c8c846115625730611564565b8c5b8c8c8c8c8c8c8c611e8a565b8161157f5761157f818b6117d3565b5050600160335550505050505050505050565b600082815260fb60205260409020600101546115ad8161193f565b6109bc8383611a68565b60006000805160206133d583398151915254604051631e29f97960e31b8152600481018490526001600160a01b039091169150819063f14fcbc890602401600060405180830381600087803b15801561160f57600080fd5b505af1158015611623573d6000803e3d6000fd5b505050505050565b6000600080516020613415833981519152546001600160a01b031661164e61170d565b6001600160a01b031614611675576040516344e7d94960e01b815260040160405180910390fd5b6001600160a01b038616156116a957600061169283850185612800565b905061169d8161171c565b6116a786826117d3565b505b5063f23a6e6160e01b9695505050505050565b6116c46119d7565b6116cd81611fd5565b6109d260008261204b565b60006001600160e01b03198216637965db0b60e01b148061077357506301ffc9a760e01b6001600160e01b0319831614610773565b6000611717612055565b905090565b6001600160a01b0381166109d25760405163b20f76e360e01b81526001600160a01b0382166004820152602401610a51565b60007f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae60001b826040516020016117859190613195565b604051602081830303815290604052805190602001206040516020016117b5929190918252602082015260400190565b60408051601f19818403018152919052805160209091012092915050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052819061181190606001610b09565b80546001600160a01b0319166001600160a01b039283161790556040519082169083907f45aa97e368889fb3527c1db60c59c2ae91e82f21778613449e46d4208c1c4b1290600090a35050565b606061186985612073565b600080876001600160a01b0316866118838b8a89896120d9565b6040516118909190613195565b60006040518083038160008787f1925050503d80600081146118ce576040519150601f19603f3d011682016040523d82523d6000602084013e6118d3565b606091505b5090925090506118e4603f876131b1565b5a116118f2576118f26131d3565b61193282826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c4544000000000000815250612109565b9998505050505050505050565b6109d28161194b61170d565b612142565b61195a8282610efa565b610a6457600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff1916600117905561199361170d565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6119df61170d565b6001600160a01b03166119fa6097546001600160a01b031690565b6001600160a01b031614610d905760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a51565b6109d26000805160206133f583398151915282611592565b611a728282610efa565b15610a6457600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff19169055611aa961170d565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101829052600090611b2c90606001610b09565b546001600160a01b0316905080611b595760405163124bad6360e31b815260048101839052602401610a51565b30600080516020613415833981519152546040516331a9108f60e11b8152600481018590526001600160a01b0390911690636352211e90602401602060405180830381865afa158015611bb0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bd491906131e9565b6001600160a01b031614611bfe576040516303b673fd60e21b815260048101839052602401610a51565b919050565b303303611c13576109d2816121a6565b6109d281612073565b6109d26000805160206133f58339815191528261204b565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015611ccd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cf191906130de565b90506000611d9f866060015180519060200120868860200151604051602001611d3f9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b9050818660200151148015610ef057508551610ef0906001600160a01b031682866121d0565b600054610100900460ff16611dec5760405162461bcd60e51b8152600401610a5190613206565b6001603355565b600054610100900460ff16610d905760405162461bcd60e51b8152600401610a5190613206565b600054610100900460ff16611e415760405162461bcd60e51b8152600401610a5190613206565b610d90611e4c61170d565b611c34565b600054610100900460ff16611e785760405162461bcd60e51b8152600401610a5190613206565b610d906000611e8561170d565b61204b565b6000805160206133d5833981519152546040516383e7f6ff60e01b81526001600160a01b039091169060009082906383e7f6ff90611ed0908f908f908e90600401612f58565b6040805180830381865afa158015611eec573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f109190612f7c565b60208101518151919250611f2391612fca565b471015611f435760405163050205f960e01b815260040160405180910390fd5b816001600160a01b03166374694a2b82602001518360000151611f669190612fca565b8e8e8e8e8e8e8e8e8e8e6040518c63ffffffff1660e01b8152600401611f959a99989796959493929190613251565b6000604051808303818588803b158015611fae57600080fd5b505af1158015611fc2573d6000803e3d6000fd5b5050505050505050505050505050505050565b611fdd6119d7565b6001600160a01b0381166120425760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610a51565b6109d281611c34565b610a648282611950565b600030330361206b575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290526000906060016040516020818303038152906040528051906020012090506120c88190565b546120d4906001612fca565b905550565b60608285856040516020016120f0939291906132c3565b6040516020818303038152906040529050949350505050565b60608315612118575081610990565b8251156121285782518084602001fd5b8160405162461bcd60e51b8152600401610a5191906127a4565b61214c8282610efa565b610a6457612164816001600160a01b03166014612312565b61216f836020612312565b604051602001612180929190613302565b60408051601f198184030181529082905262461bcd60e51b8252610a51916004016127a4565b6121ae6124ad565b81146109d257604051635637b6af60e11b815260048101829052602401610a51565b60008060006121df85856124c0565b909250905060008160048111156121f8576121f8613377565b1480156122165750856001600160a01b0316826001600160a01b0316145b1561222657600192505050610990565b600080876001600160a01b0316631626ba7e60e01b888860405160240161224e92919061338d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161228c9190613195565b600060405180830381855afa9150503d80600081146122c7576040519150601f19603f3d011682016040523d82523d6000602084013e6122cc565b606091505b50915091508180156122df575080516020145b801561230657508051630b135d3f60e11b9061230490830160209081019084016130de565b145b98975050505050505050565b606060006123218360026133a6565b61232c906002612fca565b6001600160401b0381111561234357612343612849565b6040519080825280601f01601f19166020018201604052801561236d576020820181803683370190505b509050600360fc1b8160008151811061238857612388612eb5565b60200101906001600160f81b031916908160001a905350600f60fb1b816001815181106123b7576123b7612eb5565b60200101906001600160f81b031916908160001a90535060006123db8460026133a6565b6123e6906001612fca565b90505b600181111561245e576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061241a5761241a612eb5565b1a60f81b82828151811061243057612430612eb5565b60200101906001600160f81b031916908160001a90535060049490941c93612457816133bd565b90506123e9565b5083156109905760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610a51565b60003033036120705750601f1936013590565b60008082516041036124f65760208301516040840151606085015160001a6124ea87828585612505565b945094505050506124fe565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561253c57506000905060036125e9565b8460ff16601b1415801561255457508460ff16601c14155b1561256557506000905060046125e9565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156125b9573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166125e2576000600192509250506125e9565b9150600090505b94509492505050565b60006020828403121561260457600080fd5b81356001600160e01b03198116811461099057600080fd5b6001600160a01b03811681146109d257600080fd5b60008083601f84011261264357600080fd5b5081356001600160401b0381111561265a57600080fd5b6020830191508360208285010111156124fe57600080fd5b60008060008060006080868803121561268a57600080fd5b85356126958161261c565b945060208601356126a58161261c565b93506040860135925060608601356001600160401b038111156126c757600080fd5b6126d388828901612631565b969995985093965092949392505050565b6000806000604084860312156126f957600080fd5b83356001600160401b038082111561271057600080fd5b908501906080828803121561272457600080fd5b9093506020850135908082111561273a57600080fd5b5061274786828701612631565b9497909650939450505050565b60005b8381101561276f578181015183820152602001612757565b50506000910152565b60008151808452612790816020860160208601612754565b601f01601f19169290920160200192915050565b6020815260006109906020830184612778565b6000602082840312156127c957600080fd5b5035919050565b600080604083850312156127e357600080fd5b8235915060208301356127f58161261c565b809150509250929050565b60006020828403121561281257600080fd5b81356109908161261c565b6000806040838503121561283057600080fd5b823561283b8161261c565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561288757612887612849565b604052919050565b600060208083850312156128a257600080fd5b82356001600160401b03808211156128b957600080fd5b818501915085601f8301126128cd57600080fd5b8135818111156128df576128df612849565b8060051b91506128f084830161285f565b818152918301840191848101908884111561290a57600080fd5b938501935b8385101561230657843592506129248361261c565b828252938501939085019061290f565b60008060006040848603121561294957600080fd5b83356001600160401b0381111561295f57600080fd5b61296b86828701612631565b909790965060209590950135949350505050565b60006001600160401b0383111561299857612998612849565b6129ab601f8401601f191660200161285f565b90508281528383830111156129bf57600080fd5b828260208301376000602084830101529392505050565b600082601f8301126129e757600080fd5b6109908383356020850161297f565b60008083601f840112612a0857600080fd5b5081356001600160401b03811115612a1f57600080fd5b6020830191508360208260051b85010111156124fe57600080fd5b80358015158114611bfe57600080fd5b803561ffff81168114611bfe57600080fd5b6000806000806000806000806000806101208b8d031215612a7c57600080fd5b8a356001600160401b0380821115612a9357600080fd5b612a9f8e838f016129d6565b9b5060208d01359150612ab18261261c565b90995060408c0135985060608c0135975060808c013590612ad18261261c565b90965060a08c01359080821115612ae757600080fd5b50612af48d828e016129f6565b9096509450612b07905060c08c01612a3a565b9250612b1560e08c01612a4a565b9150612b246101008c01612a3a565b90509295989b9194979a5092959850565b60008060008060008060008060a0898b031215612b5157600080fd5b8835612b5c8161261c565b97506020890135612b6c8161261c565b965060408901356001600160401b0380821115612b8857600080fd5b612b948c838d016129f6565b909850965060608b0135915080821115612bad57600080fd5b612bb98c838d016129f6565b909650945060808b0135915080821115612bd257600080fd5b50612bdf8b828c01612631565b999c989b5096995094979396929594505050565b600080600060608486031215612c0857600080fd5b8335612c138161261c565b92506020840135612c238161261c565b91506040840135612c338161261c565b809150509250925092565b60008060008060008060008060008060006101208c8e031215612c6057600080fd5b6001600160401b03808d351115612c7657600080fd5b612c838e8e358f01612631565b909c509a50612c9560208e013561261c565b60208d0135995060408d0135985060608d01359750612cb760808e013561261c565b60808d013596508060a08e01351115612ccf57600080fd5b50612ce08d60a08e01358e016129f6565b9095509350612cf160c08d01612a3a565b9250612cff60e08d01612a4a565b9150612d0e6101008d01612a3a565b90509295989b509295989b9093969950565b60008060008060008060a08789031215612d3957600080fd5b8635612d448161261c565b95506020870135612d548161261c565b9450604087013593506060870135925060808701356001600160401b03811115612d7d57600080fd5b612d8989828a01612631565b979a9699509497509295939492505050565b600080600060608486031215612db057600080fd5b8335612dbb8161261c565b92506020840135612dcb8161261c565b915060408401356001600160401b03811115612de657600080fd5b612df2868287016129d6565b9150509250925092565b608081526000612e0f6080830187612778565b6001600160a01b03958616602084015261ffff949094166040830152509216606090920191909152919050565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090610ef090830184612778565b6000808335601e19843603018112612e8657600080fd5b8301803591506001600160401b03821115612ea057600080fd5b6020019150368190038213156124fe57600080fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201612ef357612ef3612ecb565b5060010190565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b604081526000612f6c604083018587612f2f565b9050826020830152949350505050565b600060408284031215612f8e57600080fd5b604051604081018181106001600160401b0382111715612fb057612fb0612849565b604052825181526020928301519281019290925250919050565b8082018082111561077357610773612ecb565b81835260006020808501808196508560051b810191508460005b878110156130615782840389528135601e1988360301811261301857600080fd5b870185810190356001600160401b0381111561303357600080fd5b80360382131561304257600080fd5b61304d868284612f2f565b9a87019a9550505090840190600101612ff7565b5091979650505050505050565b60006101008083526130828184018d612778565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a085015290506130bc818789612fdd565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b6000602082840312156130f057600080fd5b5051919050565b60006080823603121561310957600080fd5b604051608081016001600160401b03828210818311171561312c5761312c612849565b816040528435915061313d8261261c565b8183526020850135602084015260408501356040840152606085013591508082111561316857600080fd5b50830136601f82011261317a57600080fd5b6131893682356020840161297f565b60608301525092915050565b600082516131a7818460208701612754565b9190910192915050565b6000826131ce57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b6000602082840312156131fb57600080fd5b81516109908161261c565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60006101008083526132668184018d8f612f2f565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a085015290506132a0818789612fdd565b94151560c0840152505061ffff9190911660e09091015298975050505050505050565b600084516132d5818460208901612754565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081526000835161333a816017850160208801612754565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835161336b816028840160208801612754565b01602801949350505050565b634e487b7160e01b600052602160045260246000fd5b8281526040602082015260006110476040830184612778565b808202811582820484141761077357610773612ecb565b6000816133cc576133cc612ecb565b50600019019056fe412386de53449251cbf7ce1f4c6a038bf9c0746e62d331b08ef0c3fa7d0ab6729f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a660793a5062d506d35cc8f1beda67ee5028c16bfcd9c923d5bfc439c04bd929b1a164736f6c6343000811000a","storage":{"0x0":"0xff"}},"0xc58206842e4030a3b2cabc78780ae7635173c533":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b50600436106102325760003560e01c80637c69eae211610130578063b5466669116100b8578063d284d97a1161007c578063d284d97a14610d4e578063d8d3cc6e14610dbc578063e67ca8a314610e3f578063e985e9c514610e5c578063ebf0c71714610e8a57610232565b8063b5466669146109ce578063b88d4fde14610a51578063c29b52f914610b15578063c87b56dd14610c5e578063ce9fb82b14610c7b57610232565b8063a22cb465116100ff578063a22cb4651461090b578063a7fc7a0714610939578063ab3b87fe1461095f578063b3f9e4cb1461098b578063b429afeb146109a857610232565b80637c69eae21461076457806395d89b41146107e75780639d743989146107ef5780639e5be9a51461087d57610232565b806342842e0e116101be5780635cbe1112116101825780635cbe11121461061d5780636352211e1461069257806366ac3b68146106af57806368b62d32146106b757806370a082311461073e57610232565b806342842e0e146104ed57806342966c6814610523578063430c208114610540578063538361a71461056c57806357aac5741461058f57610232565b8063081812fc11610205578063081812fc146103fa578063095ea7b3146104335780632392c1891461045f57806323b872dd1461048b5780632525d06a146104c157610232565b806301ffc9a71461023757806302759c37146102725780630467e014146102aa57806306fdde031461037d575b600080fd5b61025e6004803603602081101561024d57600080fd5b50356001600160e01b031916610e92565b604080519115158252519081900360200190f35b6102a86004803603606081101561028857600080fd5b506001600160a01b03813581169160208101359091169060400135610eb1565b005b6102a8600480360360808110156102c057600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156102ef57600080fd5b82018360208201111561030157600080fd5b803590602001918460018302840111600160201b8311171561032257600080fd5b919390929091602081019035600160201b81111561033f57600080fd5b82018360208201111561035157600080fd5b803590602001918460018302840111600160201b8311171561037257600080fd5b509092509050610ed3565b610385610f62565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103bf5781810151838201526020016103a7565b50505050905090810190601f1680156103ec5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6104176004803603602081101561041057600080fd5b5035610f84565b604080516001600160a01b039092168252519081900360200190f35b6102a86004803603604081101561044957600080fd5b506001600160a01b038135169060200135610fe6565b6102a86004803603604081101561047557600080fd5b506001600160a01b0381351690602001356110f7565b6102a8600480360360608110156104a157600080fd5b506001600160a01b03813581169160208101359091169060400135611115565b6102a8600480360360408110156104d757600080fd5b506001600160a01b03813516906020013561115a565b6102a86004803603606081101561050357600080fd5b506001600160a01b0381358116916020810135909116906040013561117a565b6102a86004803603602081101561053957600080fd5b5035611195565b61025e6004803603604081101561055657600080fd5b506001600160a01b0381351690602001356111e6565b6102a86004803603604081101561058257600080fd5b50803590602001356111f9565b6102a8600480360360808110156105a557600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156105df57600080fd5b8201836020820111156105f157600080fd5b803590602001918460018302840111600160201b8311171561061257600080fd5b50909250905061124f565b6102a86004803603604081101561063357600080fd5b81359190810190604081016020820135600160201b81111561065457600080fd5b82018360208201111561066657600080fd5b803590602001918460018302840111600160201b8311171561068757600080fd5b5090925090506112be565b610417600480360360208110156106a857600080fd5b5035611320565b6102a861137a565b61072c600480360360408110156106cd57600080fd5b81359190810190604081016020820135600160201b8111156106ee57600080fd5b82018360208201111561070057600080fd5b803590602001918460018302840111600160201b8311171561072157600080fd5b509092509050611385565b60408051918252519081900360200190f35b61072c6004803603602081101561075457600080fd5b50356001600160a01b03166113cf565b6102a86004803603606081101561077a57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156107a957600080fd5b8201836020820111156107bb57600080fd5b803590602001918460018302840111600160201b831117156107dc57600080fd5b509092509050611437565b61038561149a565b6102a86004803603608081101561080557600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561083f57600080fd5b82018360208201111561085157600080fd5b803590602001918460018302840111600160201b8311171561087257600080fd5b5090925090506114b6565b6102a86004803603608081101561089357600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156108cd57600080fd5b8201836020820111156108df57600080fd5b803590602001918460018302840111600160201b8311171561090057600080fd5b509092509050611506565b6102a86004803603604081101561092157600080fd5b506001600160a01b0381351690602001351515611564565b6102a86004803603602081101561094f57600080fd5b50356001600160a01b0316611630565b6102a86004803603604081101561097557600080fd5b506001600160a01b03813516906020013561164b565b610417600480360360208110156109a157600080fd5b5035611672565b61025e600480360360208110156109be57600080fd5b50356001600160a01b0316611694565b6102a8600480360360608110156109e457600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610a1357600080fd5b820183602082011115610a2557600080fd5b803590602001918460018302840111600160201b83111715610a4657600080fd5b5090925090506116a7565b6102a860048036036080811015610a6757600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b811115610aa157600080fd5b820183602082011115610ab357600080fd5b803590602001918460018302840111600160201b83111715610ad457600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506116fa945050505050565b6102a8600480360360a0811015610b2b57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b811115610b6557600080fd5b820183602082011115610b7757600080fd5b803590602001918460018302840111600160201b83111715610b9857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b811115610bea57600080fd5b820183602082011115610bfc57600080fd5b803590602001918460018302840111600160201b83111715610c1d57600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061174c945050505050565b61038560048036036020811015610c7457600080fd5b5035611797565b6102a860048036036080811015610c9157600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610cc057600080fd5b820183602082011115610cd257600080fd5b803590602001918460018302840111600160201b83111715610cf357600080fd5b919390929091602081019035600160201b811115610d1057600080fd5b820183602082011115610d2257600080fd5b803590602001918460018302840111600160201b83111715610d4357600080fd5b509092509050611892565b6102a860048036036020811015610d6457600080fd5b810190602081018135600160201b811115610d7e57600080fd5b820183602082011115610d9057600080fd5b803590602001918460018302840111600160201b83111715610db157600080fd5b50909250905061191b565b6102a860048036036060811015610dd257600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610e0157600080fd5b820183602082011115610e1357600080fd5b803590602001918460018302840111600160201b83111715610e3457600080fd5b50909250905061199e565b6102a860048036036020811015610e5557600080fd5b50356119f3565b61025e60048036036040811015610e7257600080fd5b506001600160a01b0381358116916020013516611a05565b61072c611a33565b6001600160e01b03191660009081526020819052604090205460ff1690565b610eba33611694565b610ec357600080fd5b610ece838383611a57565b505050565b610edc33611694565b610ee557600080fd5b610f5a868686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8a018190048102820181019092528881529250889150879081908401838280828437600092019190915250611a9f92505050565b505050505050565b6040805180820190915260078152662e63727970746f60c81b60208201525b90565b6000610f8f82611ac9565b610fca5760405162461bcd60e51b815260040180806020018281038252602c815260200180612848602c913960400191505060405180910390fd5b506000908152600360205260409020546001600160a01b031690565b6000610ff182611320565b9050806001600160a01b0316836001600160a01b031614156110445760405162461bcd60e51b81526004018080602001828103825260218152602001806128bf6021913960400191505060405180910390fd5b336001600160a01b038216148061106057506110608133611a05565b61109b5760405162461bcd60e51b815260040180806020018281038252603881526020018061279c6038913960400191505060405180910390fd5b60008281526003602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b806111023382611ae6565b61110b57600080fd5b610ece8383611b82565b61111f3382611ae6565b610ec35760405162461bcd60e51b81526004018080602001828103825260318152602001806128e06031913960400191505060405180910390fd5b61116333611694565b61116c57600080fd5b6111768282611b82565b5050565b610ece838383604051806020016040528060008152506116fa565b61119f3382611ae6565b6111da5760405162461bcd60e51b81526004018080602001828103825260308152602001806129366030913960400191505060405180910390fd5b6111e381611bf8565b50565b60006111f28383611ae6565b9392505050565b6000828152600860205260409020546001600160a01b0316331461121c57600080fd5b6040518290829033907ff10fc780c78f994a214c79a2ae8d8b7bfe7cc3f0f935a8f05a29525e71d7f12790600090a45050565b61125833611694565b61126157600080fd5b61126c858585611a57565b6112ae85858585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611c7992505050565b6112b757600080fd5b5050505050565b826112c93382611ae6565b6112d257600080fd5b61131a6113158585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b611bf8565b50505050565b6000818152600260205260408120546001600160a01b0316806113745760405162461bcd60e51b81526004018080602001828103825260298152602001806127fe6029913960400191505060405180910390fd5b92915050565b61138333611e64565b565b60006113c78484848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b949350505050565b60006001600160a01b0382166114165760405162461bcd60e51b815260040180806020018281038252602a8152602001806127d4602a913960400191505060405180910390fd5b6001600160a01b038216600090815260046020526040902061137490611e75565b826114423382611ae6565b61144b57600080fd5b6112b7858585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250611a9f915050565b604080518082019091526002815261155160f21b602082015290565b6112b785858585858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201829052506040805160208101909152908152925061174c915050565b826115113382611ae6565b61151a57600080fd5b610f5a868661155f8787878080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b611a57565b6001600160a01b0382163314156115c2576040805162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604482015290519081900360640190fd5b3360008181526005602090815260408083206001600160a01b03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b61163933611694565b61164257600080fd5b6111e381611e79565b806116563382611ae6565b61165f57600080fd5b610ece61166b83611320565b8484611e8a565b6000818152600860205260408120546001600160a01b03168061137457600080fd5b600061137460018363ffffffff611fce16565b6116b033611694565b6116b957600080fd5b61131a848484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061203592505050565b611705848484611115565b61171184848484611c79565b61131a5760405162461bcd60e51b815260040180806020018281038252603281526020018061271a6032913960400191505060405180910390fd5b826117573382611ae6565b61176057600080fd5b600061176c8585611dac565b9050611779878783611a57565b61178587878386611c79565b61178e57600080fd5b50505050505050565b60606117a282611ac9565b6117ab57600080fd5b600760066000848152602001908152602001600020604051602001808380546001816001161561010002031660029004801561181e5780601f106117fc57610100808354040283529182019161181e565b820191906000526020600020905b81548152906001019060200180831161180a575b5050828054600181600116156101000203166002900480156118775780601f10611855576101008083540402835291820191611877565b820191906000526020600020905b815481529060010190602001808311611863575b505060408051601f1981840301815291905295945050505050565b8461189d3382611ae6565b6118a657600080fd5b61178e878787878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b018190048102820181019092528981529250899150889081908401838280828437600092019190915250611a9f92505050565b61192433611694565b61192d57600080fd5b611939600783836125cf565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b828260405180806020018281038252848482818152602001925080828437600083820152604051601f909101601f19169092018290039550909350505050a15050565b826119a93382611ae6565b6119b257600080fd5b6112b7858585858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061203592505050565b6119fc33611694565b6111da57600080fd5b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b7f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f90565b611a62838383611e8a565b6000818152600860205260409020546001600160a01b031615610ece57600090815260086020526040902080546001600160a01b03191690555050565b611aaa848484612035565b611ac0600085611aba8686611dac565b84611c79565b61131a57600080fd5b6000908152600260205260409020546001600160a01b0316151590565b6000611af182611ac9565b611b2c5760405162461bcd60e51b815260040180806020018281038252602c815260200180612770602c913960400191505060405180910390fd5b6000611b3783611320565b9050806001600160a01b0316846001600160a01b03161480611b725750836001600160a01b0316611b6784610f84565b6001600160a01b0316145b806113c757506113c78185611a05565b611b8b81611ac9565b611b9457600080fd5b6040516001600160a01b0383169082907fb1b34e6d89e1c584527d447f4b29ffad55635a37edeeb564939a6483401b31a590600090a3600090815260086020526040902080546001600160a01b0319166001600160a01b0392909216919091179055565b611c018161220f565b6000818152600860205260409020546001600160a01b031615611c3b57600081815260086020526040902080546001600160a01b03191690555b60008181526006602052604090205460026000196101006001841615020190911604156111e35760008181526006602052604081206111e39161264d565b6000611c8d846001600160a01b0316612221565b611c99575060016113c7565b604051630a85bd0160e11b815233600482018181526001600160a01b03888116602485015260448401879052608060648501908152865160848601528651600095928a169463150b7a029490938c938b938b939260a4019060208501908083838e5b83811015611d13578181015183820152602001611cfb565b50505050905090810190601f168015611d405780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015611d6257600080fd5b505af1158015611d76573d6000803e3d6000fd5b505050506040513d6020811015611d8c57600080fd5b50516001600160e01b031916630a85bd0160e11b14915050949350505050565b6000815160001415611dbd57600080fd5b82826040516020018082805190602001908083835b60208310611df15780518252601f199092019160209182019101611dd2565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040528051906020012060405160200180838152602001828152602001925050506040516020818303038152906040528051906020012060001c905092915050565b6111e360018263ffffffff61222716565b5490565b6111e360018263ffffffff61228e16565b826001600160a01b0316611e9d82611320565b6001600160a01b031614611ee25760405162461bcd60e51b81526004018080602001828103825260298152602001806128966029913960400191505060405180910390fd5b6001600160a01b038216611f275760405162461bcd60e51b815260040180806020018281038252602481526020018061274c6024913960400191505060405180910390fd5b611f308161230f565b6001600160a01b0383166000908152600460205260409020611f519061234a565b6001600160a01b0382166000908152600460205260409020611f7290612361565b60008181526002602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60006001600160a01b0382166120155760405162461bcd60e51b81526004018080602001828103825260228152602001806128746022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b60006120418383611dac565b905061204d848261236a565b815161205857600080fd5b61206181611ac9565b61206a57600080fd5b606082600660008681526020019081526020016000206040516020018083805190602001908083835b602083106120b25780518252601f199092019160209182019101612093565b6001836020036101000a03801982511681845116808217855250505050505090500180601760f91b815250600101828054600181600116156101000203166002900480156121375780601f10612115576101008083540402835291820191612137565b820191906000526020600020905b815481529060010190602001808311612123575b505060408051601f19818403018152918152600087815260066020908152919020825192965061216d9550935085019150612691565b50817fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952826040518080602001828103825283818151815260200191508051906020019080838360005b838110156121ce5781810151838201526020016121b6565b50505050905090810190601f1680156121fb5780820380516001836020036101000a031916815260200191505b509250505060405180910390a25050505050565b6111e361221b82611320565b8261249b565b3b151590565b6122318282611fce565b61226c5760405162461bcd60e51b81526004018080602001828103825260218152602001806128276021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff19169055565b6122988282611fce565b156122ea576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b6000818152600360205260409020546001600160a01b0316156111e357600090815260036020526040902080546001600160a01b0319169055565b805461235d90600163ffffffff61257216565b9055565b80546001019055565b6001600160a01b0382166123c5576040805162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f2061646472657373604482015290519081900360640190fd5b6123ce81611ac9565b15612420576040805162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000604482015290519081900360640190fd5b600081815260026020908152604080832080546001600160a01b0319166001600160a01b03871690811790915583526004909152902061245f90612361565b60405181906001600160a01b038416906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b816001600160a01b03166124ae82611320565b6001600160a01b0316146124f35760405162461bcd60e51b81526004018080602001828103825260258152602001806129116025913960400191505060405180910390fd5b6124fc8161230f565b6001600160a01b038216600090815260046020526040902061251d9061234a565b60008181526002602052604080822080546001600160a01b0319169055518291906001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6000828211156125c9576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106126105782800160ff1982351617855561263d565b8280016001018555821561263d579182015b8281111561263d578235825591602001919060010190612622565b506126499291506126ff565b5090565b50805460018160011615610100020316600290046000825580601f1061267357506111e3565b601f0160209004906000526020600020908101906111e391906126ff565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106126d257805160ff191683800117855561263d565b8280016001018555821561263d579182015b8281111561263d5782518255916020019190600101906126e4565b610f8191905b80821115612649576000815560010161270556fe4552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c654552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e526f6c65733a206163636f756e7420697320746865207a65726f20616464726573734552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f7665644552433732313a206275726e206f6620746f6b656e2074686174206973206e6f74206f776e4552433732314275726e61626c653a2063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564a265627a7a72315820fb6a1b26cc352dbb05e6627fd530bbb44114ac3a349f30d1f071136c656d20dc64736f6c634300050c0032","storage":{"0x7":"0x68747470733a2f2f6578616d706c652e636f6d2f000000000000000000000028","0xbdf39e9e65b2355b1b0b06df799c09159f0ab90f06a9bb2153f5de7d9b0ea81":"0x1","0x1a306d3e9bf29128dee78d8d16c9f378a11bbdf917a9caf986fc6e60846e37e7":"0x63727970746f000000000000000000000000000000000000000000000000000c","0x42c63635470f1fb1d6d4b6441c413cb435b1ebb6fedd1896dd5e25d1399147dd":"0x1","0x605d7a0bb2b20c4004d356eb969ff104dcca62360aa356247072f5e0df6472e3":"0xdead","0x67be87c3ff9960ca1e9cfac5cab2ff4747269cf9ed20c9b7306235ac35a491c5":"0x1","0x70f464f95f9ab7aba03264fd4cac1711d774d3703ce74217180264d4efc2105f":"0x1","0x76a72f26a108e6f3f687141f5f42d21d65857c03cb1b01aa1284f9a9ccd085da":"0x1","0x9562381dfbc2d8b8b66e765249f330164b73e329e5f01670660643571d1974df":"0x1","0x9f23d2403fb64167582d316b1bc5b35a6ed48524341ab24947c71df77304b29e":"0x1","0xf7815fccbf112960a73756e185887fedcb9fc64ca0a16cc5923b7960ed780800":"0x1"}},"0xc965345edac823d56812cd20a10316233916a605":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101c6575f3560e01c806395d89b41116100fe578063c87b56dd1161009e578063e985e9c51161006e578063e985e9c5146103d4578063f2fde38b1461040f578063f6a74ed714610422578063fca247ac14610435575f80fd5b8063c87b56dd14610377578063d6e4fa861461038a578063da8c229e146103a9578063ddf7fcb0146103cb575f80fd5b8063a7fc7a07116100d9578063a7fc7a0714610334578063b88d4fde14610347578063c1a287e21461035a578063c475abff14610364575f80fd5b806395d89b411461030657806396e494e81461030e578063a22cb46514610321575f80fd5b80633f15457f116101695780636352211e116101445780636352211e146102c757806370a08231146102da578063715018a6146102ed5780638da5cb5b146102f5575f80fd5b80633f15457f1461028e57806342842e0e146102a15780634e543b26146102b4575f80fd5b8063095ea7b3116101a4578063095ea7b3146102325780630e297b451461024757806323b872dd1461026857806328ed4f6c1461027b575f80fd5b806301ffc9a7146101ca57806306fdde03146101f2578063081812fc14610207575b5f80fd5b6101dd6101d83660046117dd565b610448565b60405190151581526020015b60405180910390f35b6101fa610499565b6040516101e99190611845565b61021a610215366004611857565b610528565b6040516001600160a01b0390911681526020016101e9565b610245610240366004611882565b61054d565b005b61025a6102553660046118ac565b610666565b6040519081526020016101e9565b6102456102763660046118e1565b61067b565b61024561028936600461190e565b6106ac565b60085461021a906001600160a01b031681565b6102456102af3660046118e1565b6107be565b6102456102c236600461193c565b6107d8565b61021a6102d5366004611857565b610848565b61025a6102e836600461193c565b610869565b6102456108ed565b6006546001600160a01b031661021a565b6101fa610900565b6101dd61031c366004611857565b61090f565b61024561032f366004611957565b610934565b61024561034236600461193c565b610943565b61024561035536600461199b565b610996565b61025a6276a70081565b61025a610372366004611a74565b6109ce565b6101fa610385366004611857565b610b52565b61025a610398366004611857565b5f9081526007602052604090205490565b6101dd6103b736600461193c565b600a6020525f908152604090205460ff1681565b61025a60095481565b6101dd6103e2366004611a94565b6001600160a01b039182165f90815260056020908152604080832093909416825291909152205460ff1690565b61024561041d36600461193c565b610bc2565b61024561043036600461193c565b610c3b565b61025a6104433660046118ac565b610c8b565b5f6001600160e01b031982166301ffc9a760e01b148061047857506001600160e01b031982166380ac58cd60e01b145b8061049357506001600160e01b03198216630a3b53db60e21b145b92915050565b60605f80546104a790611ac0565b80601f01602080910402602001604051908101604052809291908181526020018280546104d390611ac0565b801561051e5780601f106104f55761010080835404028352916020019161051e565b820191905f5260205f20905b81548152906001019060200180831161050157829003601f168201915b5050505050905090565b5f61053282610c99565b505f908152600460205260409020546001600160a01b031690565b5f61055782610cf7565b9050806001600160a01b0316836001600160a01b0316036105c95760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084015b60405180910390fd5b336001600160a01b03821614806105e557506105e581336103e2565b6106575760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016105c0565b6106618383610d56565b505050565b5f6106738484845f610dc3565b949350505050565b6106853382610fc7565b6106a15760405162461bcd60e51b81526004016105c090611af8565b610661838383611040565b6008546009546040516302571be360e01b8152600481019190915230916001600160a01b0316906302571be390602401602060405180830381865afa1580156106f7573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061071b9190611b45565b6001600160a01b03161461072d575f80fd5b6107373383610fc7565b61073f575f80fd5b6008546009546040516306ab592360e01b81526004810191909152602481018490526001600160a01b038381166044830152909116906306ab5923906064016020604051808303815f875af115801561079a573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106619190611b60565b61066183838360405180602001604052805f815250610996565b6107e06111a2565b600854600954604051630c4b7b8560e11b815260048101919091526001600160a01b03838116602483015290911690631896f70a906044015f604051808303815f87803b15801561082f575f80fd5b505af1158015610841573d5f803e3d5ffd5b5050505050565b5f818152600760205260408120544210610860575f80fd5b61049382610cf7565b5f6001600160a01b0382166108d25760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b60648201526084016105c0565b506001600160a01b03165f9081526003602052604090205490565b6108f56111a2565b6108fe5f6111fc565b565b6060600180546104a790611ac0565b5f81815260076020526040812054429061092d906276a70090611b77565b1092915050565b61093f33838361124d565b5050565b61094b6111a2565b6001600160a01b0381165f818152600a6020526040808220805460ff19166001179055517f0a8bb31534c0ed46f380cb867bd5c803a189ced9a764e30b3a4991a9901d74749190a250565b6109a03383610fc7565b6109bc5760405162461bcd60e51b81526004016105c090611af8565b6109c88484848461131a565b50505050565b6008546009546040516302571be360e01b815260048101919091525f9130916001600160a01b03909116906302571be390602401602060405180830381865afa158015610a1d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a419190611b45565b6001600160a01b031614610a53575f80fd5b335f908152600a602052604090205460ff16610a6d575f80fd5b5f838152600760205260409020544290610a8b906276a70090611b77565b1015610a95575f80fd5b610aa26276a70083611b77565b5f848152600760205260409020546276a70090610ac0908590611b77565b610aca9190611b77565b11610ad3575f80fd5b5f8381526007602052604081208054849290610af0908490611b77565b90915550505f838152600760205260409081902054905184917f9b87a00e30f1ac65d898f070f8a3488fe60517182d0a2098e1b4b93a54aa9bd691610b3791815260200190565b60405180910390a250505f9081526007602052604090205490565b6060610b5d82610c99565b5f610b7260408051602081019091525f815290565b90505f815111610b905760405180602001604052805f815250610bbb565b80610b9a8461134d565b604051602001610bab929190611b96565b6040516020818303038152906040525b9392505050565b610bca6111a2565b6001600160a01b038116610c2f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016105c0565b610c38816111fc565b50565b610c436111a2565b6001600160a01b0381165f818152600a6020526040808220805460ff19169055517f33d83959be2573f5453b12eb9d43b3499bc57d96bd2f067ba44803c859e811139190a250565b5f6106738484846001610dc3565b5f818152600260205260409020546001600160a01b0316610c385760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105c0565b5f818152600260205260408120546001600160a01b0316806104935760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105c0565b5f81815260046020526040902080546001600160a01b0319166001600160a01b0384169081179091558190610d8a82610cf7565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6008546009546040516302571be360e01b815260048101919091525f9130916001600160a01b03909116906302571be390602401602060405180830381865afa158015610e12573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e369190611b45565b6001600160a01b031614610e48575f80fd5b335f908152600a602052604090205460ff16610e62575f80fd5b610e6b8561090f565b610e73575f80fd5b610e806276a70042611b77565b6276a700610e8e8542611b77565b610e989190611b77565b11610ea1575f80fd5b610eab8342611b77565b5f868152600760209081526040808320939093556002905220546001600160a01b031615610edc57610edc856113dd565b610ee6848661146f565b8115610f6d576008546009546040516306ab592360e01b81526004810191909152602481018790526001600160a01b038681166044830152909116906306ab5923906064016020604051808303815f875af1158015610f47573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f6b9190611b60565b505b6001600160a01b038416857fb3d987963d01b2f68493b4bdb130988f157ea43070d4ad840fee0466ed9370d9610fa38642611b77565b60405190815260200160405180910390a3610fbe8342611b77565b95945050505050565b5f80610fd283610848565b9050806001600160a01b0316846001600160a01b0316148061100d5750836001600160a01b031661100284610528565b6001600160a01b0316145b8061067357506001600160a01b038082165f9081526005602090815260408083209388168352929052205460ff16610673565b826001600160a01b031661105382610cf7565b6001600160a01b0316146110795760405162461bcd60e51b81526004016105c090611bc4565b6001600160a01b0382166110db5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b60648201526084016105c0565b826001600160a01b03166110ee82610cf7565b6001600160a01b0316146111145760405162461bcd60e51b81526004016105c090611bc4565b5f81815260046020908152604080832080546001600160a01b03199081169091556001600160a01b038781168086526003855283862080545f1901905590871680865283862080546001019055868652600290945282852080549092168417909155905184937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6006546001600160a01b031633146108fe5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016105c0565b600680546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b816001600160a01b0316836001600160a01b0316036112ae5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c65720000000000000060448201526064016105c0565b6001600160a01b038381165f81815260056020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b611325848484611040565b611331848484846115f7565b6109c85760405162461bcd60e51b81526004016105c090611c09565b60605f611359836116f1565b60010190505f8167ffffffffffffffff81111561137857611378611987565b6040519080825280601f01601f1916602001820160405280156113a2576020820181803683370190505b5090508181016020015b5f19016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a85049450846113ac57509392505050565b5f6113e782610cf7565b90506113f282610cf7565b5f83815260046020908152604080832080546001600160a01b03199081169091556001600160a01b0385168085526003845282852080545f190190558785526002909352818420805490911690555192935084927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6001600160a01b0382166114c55760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f206164647265737360448201526064016105c0565b5f818152600260205260409020546001600160a01b0316156115295760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105c0565b5f818152600260205260409020546001600160a01b03161561158d5760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105c0565b6001600160a01b0382165f81815260036020908152604080832080546001019055848352600290915280822080546001600160a01b0319168417905551839291907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b5f6001600160a01b0384163b156116e957604051630a85bd0160e11b81526001600160a01b0385169063150b7a029061163a903390899088908890600401611c5b565b6020604051808303815f875af1925050508015611674575060408051601f3d908101601f1916820190925261167191810190611c97565b60015b6116cf573d8080156116a1576040519150601f19603f3d011682016040523d82523d5f602084013e6116a6565b606091505b5080515f036116c75760405162461bcd60e51b81526004016105c090611c09565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610673565b506001610673565b5f8072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b831061172f5772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef8100000000831061175b576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc10000831061177957662386f26fc10000830492506010015b6305f5e1008310611791576305f5e100830492506008015b61271083106117a557612710830492506004015b606483106117b7576064830492506002015b600a83106104935760010192915050565b6001600160e01b031981168114610c38575f80fd5b5f602082840312156117ed575f80fd5b8135610bbb816117c8565b5f5b838110156118125781810151838201526020016117fa565b50505f910152565b5f81518084526118318160208601602086016117f8565b601f01601f19169290920160200192915050565b602081525f610bbb602083018461181a565b5f60208284031215611867575f80fd5b5035919050565b6001600160a01b0381168114610c38575f80fd5b5f8060408385031215611893575f80fd5b823561189e8161186e565b946020939093013593505050565b5f805f606084860312156118be575f80fd5b8335925060208401356118d08161186e565b929592945050506040919091013590565b5f805f606084860312156118f3575f80fd5b83356118fe8161186e565b925060208401356118d08161186e565b5f806040838503121561191f575f80fd5b8235915060208301356119318161186e565b809150509250929050565b5f6020828403121561194c575f80fd5b8135610bbb8161186e565b5f8060408385031215611968575f80fd5b82356119738161186e565b915060208301358015158114611931575f80fd5b634e487b7160e01b5f52604160045260245ffd5b5f805f80608085870312156119ae575f80fd5b84356119b98161186e565b935060208501356119c98161186e565b925060408501359150606085013567ffffffffffffffff808211156119ec575f80fd5b818701915087601f8301126119ff575f80fd5b813581811115611a1157611a11611987565b604051601f8201601f19908116603f01168101908382118183101715611a3957611a39611987565b816040528281528a6020848701011115611a51575f80fd5b826020860160208301375f60208483010152809550505050505092959194509250565b5f8060408385031215611a85575f80fd5b50508035926020909101359150565b5f8060408385031215611aa5575f80fd5b8235611ab08161186e565b915060208301356119318161186e565b600181811c90821680611ad457607f821691505b602082108103611af257634e487b7160e01b5f52602260045260245ffd5b50919050565b6020808252602d908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526c1c881bdc88185c1c1c9bdd9959609a1b606082015260800190565b5f60208284031215611b55575f80fd5b8151610bbb8161186e565b5f60208284031215611b70575f80fd5b5051919050565b8082018082111561049357634e487b7160e01b5f52601160045260245ffd5b5f8351611ba78184602088016117f8565b835190830190611bbb8183602088016117f8565b01949350505050565b60208082526025908201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060408201526437bbb732b960d91b606082015260800190565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6001600160a01b03858116825284166020820152604081018390526080606082018190525f90611c8d9083018461181a565b9695505050505050565b5f60208284031215611ca7575f80fd5b8151610bbb816117c856fea164736f6c6343000818000a","storage":{"0x0":"0x0","0x1":"0x0","0x6":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x8":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0x9":"0x93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae","0x9b8bc185dce56a7ea1b27d35e40ac15dcdf9144303dfd4d8880220078bf21a2c":"0x1","0xdb5e6a17df8534b92b0c8de590f14b4fb4b5eb2c62ef1bf7a05555e354797508":"0x1","0xe1a982900207b619cb6c39be8cb5e60da1370171412fb65b5efc25e2dce3c34c":"0x1"}},"0xce4bb7dc1eb9dce75743de6a4b48534fd427ef51":{"nonce":1,"balance":"0x0","code":"0x60806040523661001357610011610017565b005b6100115b61001f6101b7565b6001600160a01b0316336001600160a01b0316141561016f5760606001600160e01b031960003516631b2ce7f360e11b8114156100655761005e6101ea565b9150610167565b6001600160e01b0319811663278f794360e11b14156100865761005e610241565b6001600160e01b031981166308f2839760e41b14156100a75761005e610287565b6001600160e01b031981166303e1469160e61b14156100c85761005e6102b8565b6001600160e01b03198116635c60da1b60e01b14156100e95761005e6102f8565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b61017761030c565b565b606061019e83836040518060600160405280602781526020016108576027913961031c565b9392505050565b90565b6001600160a01b03163b151590565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60606101f4610394565b600061020336600481846106a2565b81019061021091906106e8565b905061022d8160405180602001604052806000815250600061039f565b505060408051602081019091526000815290565b606060008061025336600481846106a2565b8101906102609190610719565b915091506102708282600161039f565b604051806020016040528060008152509250505090565b6060610291610394565b60006102a036600481846106a2565b8101906102ad91906106e8565b905061022d816103cb565b60606102c2610394565b60006102cc6101b7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b6060610302610394565b60006102cc610422565b610177610317610422565b610431565b6060600080856001600160a01b0316856040516103399190610807565b600060405180830381855af49150503d8060008114610374576040519150601f19603f3d011682016040523d82523d6000602084013e610379565b606091505b509150915061038a86838387610455565b9695505050505050565b341561017757600080fd5b6103a8836104d3565b6000825111806103b55750805b156103c6576103c48383610179565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103f46101b7565b604080516001600160a01b03928316815291841660208301520160405180910390a161041f81610513565b50565b600061042c6105bc565b905090565b3660008037600080366000845af43d6000803e808015610450573d6000f35b3d6000fd5b606083156104c15782516104ba576001600160a01b0385163b6104ba5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161015e565b50816104cb565b6104cb83836105e4565b949350505050565b6104dc8161060e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161015e565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101db565b8151156105f45781518083602001fd5b8060405162461bcd60e51b815260040161015e9190610823565b6001600160a01b0381163b61067b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161015e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61059b565b600080858511156106b257600080fd5b838611156106bf57600080fd5b5050820193919092039150565b80356001600160a01b03811681146106e357600080fd5b919050565b6000602082840312156106fa57600080fd5b61019e826106cc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561072c57600080fd5b610735836106cc565b9150602083013567ffffffffffffffff8082111561075257600080fd5b818501915085601f83011261076657600080fd5b81358181111561077857610778610703565b604051601f8201601f19908116603f011681019083821181831017156107a0576107a0610703565b816040528281528860208487010111156107b957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156107f65781810151838201526020016107de565b838111156103c45750506000910152565b600082516108198184602087016107db565b9190910192915050565b60208152600082518060208401526108428160408501602087016107db565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012bb4f564f73959a03513dc74fc3c6e40e8386e6f02c16b78d6db00ce0aa16af64736f6c63430008090033","storage":{"0x0":"0x1","0x33":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc":"0xe85541865bbb62a05064ce5c9f41cc293a8ea996","0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103":"0x4e44e79e0cec05d9e62e952b2088c02a3c450aec"}},"0xd178b720229c39de617846f84cf9c8d32a63a23d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610106575f3560e01c806371017a541161009e5780639e32d3641161006e5780639e32d3641461025a578063a424740014610281578063dd6b9e2214610294578063e1c4b65a146102a7578063e35a14e5146102ba575f80fd5b806371017a541461020e5780637b103999146102215780638f0dbd25146102345780639810b69514610247575f80fd5b8063485cc955116100d9578063485cc95514610191578063572b6c05146101a457806358884432146101d05780636ccbae5f146101fb575f80fd5b8063150b7a021461010a5780631694116d1461013b5780631bf7e13e146101505780631c351a9d14610170575b5f80fd5b61011d610118366004611434565b6102e2565b6040516001600160e01b031990911681526020015b60405180910390f35b61014e6101493660046114e3565b610372565b005b61016361015e366004611549565b61040d565b6040516101329190611601565b61018361017e366004611613565b6104d6565b604051908152602001610132565b61014e61019f366004611666565b6105c3565b6101c06101b236600461169d565b6001600160a01b0316301490565b6040519015158152602001610132565b6067546101e3906001600160a01b031681565b6040516001600160a01b039091168152602001610132565b6101836102093660046116b8565b6106f8565b6101e361021c3660046116cf565b610751565b6066546101e3906001600160a01b031681565b61014e6102423660046116ef565b610791565b6101e36102553660046116cf565b610806565b6101837fd81bbfcee722494b885e891546eeac23d0eedcd44038d7a2f6ef9ec2f9e0d23981565b6101c061028f366004611549565b61085f565b6101c06102a236600461172d565b6108a8565b61014e6102b5366004611771565b61091d565b6101e36102c83660046116b8565b5f908152606560205260409020546001600160a01b031690565b6066545f906001600160a01b03166102f8610a43565b6001600160a01b031614158061032257505f848152606560205260409020546001600160a01b0316155b156103605783610330610a43565b60405163634afa0d60e01b815260048101929092526001600160a01b031660248201526044015b60405180910390fd5b50630a85bd0160e11b95945050505050565b828261037e8282610751565b6001600160a01b031661038f610a43565b6001600160a01b0316146103c057604051632cd9b44d60e11b81526004810183905260248101829052604401610357565b5f6103cb8686610806565b90505f5b87811015610402576103fa8989838181106103ec576103ec6117b0565b905060200201358387610a51565b6001016103cf565b505050505050505050565b60605f5a905061041e85858561085f565b61043b57604051638baa579f60e01b815260040160405180910390fd5b6104cb61044b602087018761169d565b3060408801358461045f60608b018b6117c4565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284375f92019190915250610b8492505050565b9150505b9392505050565b6067545f906001600160a01b031663aa271e1a6104f1610a43565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015610533573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105579190611807565b1580610572575030610567610a43565b6001600160a01b0316145b156105a45761057f610a43565b60405163e2c8c9d560e01b81526001600160a01b039091166004820152602401610357565b5f6105b0858585610c60565b90506105bb81610e73565b949350505050565b5f54610100900460ff16158080156105e157505f54600160ff909116105b806105fa5750303b1580156105fa57505f5460ff166001145b61065d5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610357565b5f805460ff19166001179055801561067e575f805461ff0019166101001790555b606680546001600160a01b038086166001600160a01b031992831617909255606780549285169290911691909117905580156106f3575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f9061074a906060016040516020818303038152906040528051906020012090565b5492915050565b5f80838360405160200161076f929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209150505b92915050565b828261079d8282610751565b6001600160a01b03166107ae610a43565b6001600160a01b0316146107df57604051632cd9b44d60e11b81526004810183905260248101829052604401610357565b856107e981610e73565b6107fd876107f78889610806565b86610a51565b50505050505050565b5f8060026108148585610e8f565b6040516108219190611826565b602060405180830381855afa15801561083c573d5f803e3d5ffd5b5050506040513d601f19601f820116820180604052508101906105bb9190611841565b5f6105bb61086c856118c6565b3085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250610f1492505050565b5f805b8281101561091257846001600160a01b03166108f38585848181106108d2576108d26117b0565b905060200201355f908152606560205260409020546001600160a01b031690565b6001600160a01b03161461090a575f9150506104cf565b6001016108ab565b506001949350505050565b6067546001600160a01b031663aa271e1a610936610a43565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015610978573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061099c9190611807565b15806109b75750306109ac610a43565b6001600160a01b0316145b156109c45761057f610a43565b5f5b818110156106f357610a3a8383838181106109e3576109e36117b0565b90506020028101906109f59190611983565b610a039060208101906117c4565b858585818110610a1557610a156117b0565b9050602002810190610a279190611983565b610a3590602081019061169d565b610c60565b506001016109c6565b5f610a4c611059565b905090565b5f838152606560205260409020546001600160a01b03838116911614610ab4575f83815260656020526040908190205490516326995d8360e11b8152600481018590526001600160a01b0391821660248201529083166044820152606401610357565b5f838152606560205260409081902080546001600160a01b03191690556066549051632142170760e11b81523060048201526001600160a01b03838116602483015260448201869052909116906342842e0e906064015f604051808303815f87803b158015610b21575f80fd5b505af1158015610b33573d5f803e3d5ffd5b50505050806001600160a01b0316610b49610a43565b6001600160a01b0316847f9a471856befea1cabcd7fc8a1c4d70ea07b8ed2ee205cc361f932433542ef3fe60405160405180910390a4505050565b6060610b8f85611076565b5f80876001600160a01b031686610ba88b8a89896110db565b604051610bb59190611826565b5f604051808303815f8787f1925050503d805f8114610bef576040519150601f19603f3d011682016040523d82523d5f602084013e610bf4565b606091505b509092509050610c05603f876119bf565b5a11610c1357610c136119d2565b610c5382826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061110b565b9998505050505050505050565b5f60605f7fd81bbfcee722494b885e891546eeac23d0eedcd44038d7a2f6ef9ec2f9e0d2398686604051602001610c989291906119e6565b60405160208183030381529060405280519060200120604051602001610cc8929190918252602082015260400190565b60408051808303601f19018152828252805160209091012060028084526060840190925292505f9190816020015b6060815260200190600190039081610cf657905050905086868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920182905250855186945090925015159050610d5657610d566117b0565b6020026020010181905250604051806040016040528060038152602001621e9a5b60ea1b81525081600181518110610d9057610d906117b0565b6020908102919091018101919091525f8381526065909152604080822080546001600160a01b0319166001600160a01b03898116919091179091556067549151635cd7e3b360e01b8152911691635cd7e3b391610df891309186918991829190600401611a4d565b5f604051808303815f87803b158015610e0f575f80fd5b505af1158015610e21573d5f803e3d5ffd5b50505050846001600160a01b0316827f08717469d38a4b02325ea6637978c7952f94d3d8fc7848994f618ddbf4d637f18989604051610e61929190611aab565b60405180910390a35095945050505050565b303303610e8657610e8381611144565b50565b610e8381611076565b60605f82610e9f60016020611ad9565b60ff1660208110610eb257610eb26117b0565b1a9050610ec0600282611af2565b60ff1615610ecf576003610ed2565b60025b84604051602001610efc92919060f89290921b6001600160f81b0319168252600182015260210190565b60405160208183030381529060405291505092915050565b6040838101519051636ccbae5f60e01b815260048101919091525f9081903090636ccbae5f90602401602060405180830381865afa158015610f58573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f7c9190611841565b90505f611029866060015180519060200120868860200151604051602001610fc99392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561104f5750855161104f906001600160a01b0316828661116e565b9695505050505050565b5f30330361106e575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290525f906060016040516020818303038152906040528051906020012090506110ca8190565b546110d6906001611b13565b905550565b60608285856040516020016110f293929190611b26565b6040516020818303038152906040529050949350505050565b6060831561111a5750816104cf565b82511561112a5782518084602001fd5b8160405162461bcd60e51b81526004016103579190611601565b61114c6112a9565b8114610e8357604051635637b6af60e11b815260048101829052602401610357565b5f805f61117b85856112bb565b90925090505f81600481111561119357611193611b64565b1480156111b15750856001600160a01b0316826001600160a01b0316145b156111c1576001925050506104cf565b5f80876001600160a01b0316631626ba7e60e01b88886040516024016111e8929190611b78565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516112269190611826565b5f60405180830381855afa9150503d805f811461125e576040519150601f19603f3d011682016040523d82523d5f602084013e611263565b606091505b5091509150818015611276575080516020145b801561129d57508051630b135d3f60e11b9061129b9083016020908101908401611841565b145b98975050505050505050565b5f3033036110735750601f1936013590565b5f8082516041036112ef576020830151604084015160608501515f1a6112e3878285856112fd565b945094505050506112f6565b505f905060025b9250929050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561133257505f905060036113d9565b8460ff16601b1415801561134a57508460ff16601c14155b1561135a57505f905060046113d9565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156113ab573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b0381166113d3575f600192509250506113d9565b91505f90505b94509492505050565b6001600160a01b0381168114610e83575f80fd5b5f8083601f840112611406575f80fd5b50813567ffffffffffffffff81111561141d575f80fd5b6020830191508360208285010111156112f6575f80fd5b5f805f805f60808688031215611448575f80fd5b8535611453816113e2565b94506020860135611463816113e2565b935060408601359250606086013567ffffffffffffffff811115611485575f80fd5b611491888289016113f6565b969995985093965092949392505050565b5f8083601f8401126114b2575f80fd5b50813567ffffffffffffffff8111156114c9575f80fd5b6020830191508360208260051b85010111156112f6575f80fd5b5f805f805f608086880312156114f7575f80fd5b853567ffffffffffffffff81111561150d575f80fd5b611519888289016114a2565b9096509450506020860135925060408601359150606086013561153b816113e2565b809150509295509295909350565b5f805f6040848603121561155b575f80fd5b833567ffffffffffffffff80821115611572575f80fd5b9085019060808288031215611585575f80fd5b9093506020850135908082111561159a575f80fd5b506115a7868287016113f6565b9497909650939450505050565b5f5b838110156115ce5781810151838201526020016115b6565b50505f910152565b5f81518084526115ed8160208601602086016115b4565b601f01601f19169290920160200192915050565b602081525f6104cf60208301846115d6565b5f805f60408486031215611625575f80fd5b833567ffffffffffffffff81111561163b575f80fd5b611647868287016113f6565b909450925050602084013561165b816113e2565b809150509250925092565b5f8060408385031215611677575f80fd5b8235611682816113e2565b91506020830135611692816113e2565b809150509250929050565b5f602082840312156116ad575f80fd5b81356104cf816113e2565b5f602082840312156116c8575f80fd5b5035919050565b5f80604083850312156116e0575f80fd5b50508035926020909101359150565b5f805f8060808587031215611702575f80fd5b8435935060208501359250604085013591506060850135611722816113e2565b939692955090935050565b5f805f6040848603121561173f575f80fd5b833561174a816113e2565b9250602084013567ffffffffffffffff811115611765575f80fd5b6115a7868287016114a2565b5f8060208385031215611782575f80fd5b823567ffffffffffffffff811115611798575f80fd5b6117a4858286016114a2565b90969095509350505050565b634e487b7160e01b5f52603260045260245ffd5b5f808335601e198436030181126117d9575f80fd5b83018035915067ffffffffffffffff8211156117f3575f80fd5b6020019150368190038213156112f6575f80fd5b5f60208284031215611817575f80fd5b815180151581146104cf575f80fd5b5f82516118378184602087016115b4565b9190910192915050565b5f60208284031215611851575f80fd5b5051919050565b634e487b7160e01b5f52604160045260245ffd5b6040516080810167ffffffffffffffff8111828210171561188f5761188f611858565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156118be576118be611858565b604052919050565b5f608082360312156118d6575f80fd5b6118de61186c565b82356118e9816113e2565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff80821115611919575f80fd5b9085019036601f83011261192b575f80fd5b81358181111561193d5761193d611858565b61194f601f8201601f19168501611895565b91508082523684828501011115611964575f80fd5b80848401858401375f9082019093019290925250606082015292915050565b5f8235603e19833603018112611837575f80fd5b634e487b7160e01b5f52601260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b5f826119cd576119cd611997565b500490565b634e487b7160e01b5f52600160045260245ffd5b818382375f9101908152919050565b5f8282518085526020808601955060208260051b840101602086015f5b84811015611a4057601f19868403018952611a2e8383516115d6565b98840198925090830190600101611a12565b5090979650505050505050565b6001600160a01b038616815260a0602082018190525f90611a70908301876119f5565b8281036040840152611a8281876119f5565b90508281036060840152611a9681866119f5565b91505082151560808301529695505050505050565b60208152816020820152818360408301375f818301604090810191909152601f909201601f19160101919050565b60ff828116828216039081111561078b5761078b6119ab565b5f60ff831680611b0457611b04611997565b8060ff84160691505092915050565b8082018082111561078b5761078b6119ab565b5f8451611b378184602089016115b4565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b5f52602160045260245ffd5b828152604060208201525f6105bb60408301846115d656fea164736f6c6343000818000a","storage":{"0x0":"0xff"}},"0xda9e1b3e395bfb0a45f03c7f615146b9d896c959":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100b1575f3560e01c806340c10f191161006e57806340c10f191461013d57806370a082311461015257806395d89b411461017a578063a457c2d714610182578063a9059cbb14610195578063dd62ed3e146101a8575f80fd5b806306fdde03146100b5578063095ea7b3146100d357806318160ddd146100f657806323b872dd14610108578063313ce5671461011b578063395093511461012a575b5f80fd5b6100bd6101bb565b6040516100ca9190610775565b60405180910390f35b6100e66100e13660046107dc565b61024b565b60405190151581526020016100ca565b6002545b6040519081526020016100ca565b6100e6610116366004610804565b610264565b604051601281526020016100ca565b6100e66101383660046107dc565b610287565b61015061014b3660046107dc565b6102a8565b005b6100fa61016036600461083d565b6001600160a01b03165f9081526020819052604090205490565b6100bd6102b6565b6100e66101903660046107dc565b6102c5565b6100e66101a33660046107dc565b610344565b6100fa6101b636600461085d565b610351565b6060600380546101ca9061088e565b80601f01602080910402602001604051908101604052809291908181526020018280546101f69061088e565b80156102415780601f1061021857610100808354040283529160200191610241565b820191905f5260205f20905b81548152906001019060200180831161022457829003601f168201915b5050505050905090565b5f3361025881858561037b565b60019150505b92915050565b5f3361027185828561049e565b61027c858585610516565b506001949350505050565b5f336102588185856102998383610351565b6102a391906108c6565b61037b565b6102b282826106b8565b5050565b6060600480546101ca9061088e565b5f33816102d28286610351565b9050838110156103375760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b61027c828686840361037b565b5f33610258818585610516565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b6001600160a01b0383166103dd5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161032e565b6001600160a01b03821661043e5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161032e565b6001600160a01b038381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b5f6104a98484610351565b90505f19811461051057818110156105035760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161032e565b610510848484840361037b565b50505050565b6001600160a01b03831661057a5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161032e565b6001600160a01b0382166105dc5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161032e565b6001600160a01b0383165f90815260208190526040902054818110156106535760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161032e565b6001600160a01b038481165f81815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3610510565b6001600160a01b03821661070e5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640161032e565b8060025f82825461071f91906108c6565b90915550506001600160a01b0382165f81815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b5f602080835283518060208501525f5b818110156107a157858101830151858201604001528201610785565b505f604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146107d7575f80fd5b919050565b5f80604083850312156107ed575f80fd5b6107f6836107c1565b946020939093013593505050565b5f805f60608486031215610816575f80fd5b61081f846107c1565b925061082d602085016107c1565b9150604084013590509250925092565b5f6020828403121561084d575f80fd5b610856826107c1565b9392505050565b5f806040838503121561086e575f80fd5b610877836107c1565b9150610885602084016107c1565b90509250929050565b600181811c908216806108a257607f821691505b6020821081036108c057634e487b7160e01b5f52602260045260245ffd5b50919050565b8082018082111561025e57634e487b7160e01b5f52601160045260245ffdfea164736f6c6343000818000a","storage":{"0x2":"0xe8d4a51000","0x3":"0x0","0x4":"0x0","0x47668262eb76f3aa61b856a0c078f33a11f46671cf1466c3616ba74a22fcdd92":"0xe8d4a51000","0x9cc83e833a69122bf7773b58c082655d780ae469ab7cdf5d1047a30229e55875":"0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"}},"0xe0afc4e9e03e4aa67257df7a2eca77454309789d":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061002b5760003560e01c806316f1983114610030575b600080fd5b6100b06004803603604081101561004657600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561007157600080fd5b82018360208201111561008357600080fd5b803590602001918460018302840111640100000000831117156100a557600080fd5b5090925090506100b2565b005b826001600160a01b031660017f103fed9db65eac19c4d870f49ab7520fe03b99f1838e5996caf47e9e43308392848460405180806020018281038252848482818152602001925080828437600083820152604051601f909101601f19169092018290039550909350505050a350505056fea164736f6c6343000606000a","storage":{}},"0xe4fdf45c2f8d198854f8823809c7a988eeaaa493":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100a6575f3560e01c80638cb8ecec1161006e5780638cb8ecec1461013e5780638da5cb5b14610151578063cbe9e76414610161578063da8c229e14610183578063e0dba60f146101a5578063f2fde38b146101b8575f80fd5b806301670ba9146100aa57806301ffc9a7146100bf5780633f15457f146100f85780634e543b2614610123578063715018a614610136575b5f80fd5b6100bd6100b8366004610529565b6101cb565b005b6100e36100cd366004610540565b6001600160e01b0319166301ffc9a760e01b1490565b60405190151581526020015b60405180910390f35b60025461010b906001600160a01b031681565b6040516001600160a01b0390911681526020016100ef565b6100bd610131366004610589565b610217565b6100bd610282565b6100bd61014c3660046105a2565b610295565b5f546001600160a01b031661010b565b6100e361016f366004610529565b60036020525f908152604090205460ff1681565b6100e3610191366004610589565b60016020525f908152604090205460ff1681565b6100bd6101b33660046105cc565b6103a2565b6100bd6101c6366004610589565b610408565b6101d3610481565b60405181907f1764176cfa565853ba1ded547a830a9f9bff95231ef6fd228b3ddd6175777569905f90a25f908152600360205260409020805460ff19166001179055565b61021f610481565b600254604051630c4b7b8560e11b81525f60048201526001600160a01b03838116602483015290911690631896f70a906044015f604051808303815f87803b158015610269575f80fd5b505af115801561027b573d5f803e3d5ffd5b5050505050565b61028a610481565b6102935f6104da565b565b335f9081526001602052604090205460ff166103095760405162461bcd60e51b815260206004820152602860248201527f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f604482015267373a3937b63632b960c11b60648201526084015b60405180910390fd5b5f8281526003602052604090205460ff1615610323575f80fd5b6002546040516306ab592360e01b81525f6004820152602481018490526001600160a01b038381166044830152909116906306ab5923906064016020604051808303815f875af1158015610379573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061039d9190610605565b505050565b6103aa610481565b6001600160a01b0382165f81815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b610410610481565b6001600160a01b0381166104755760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610300565b61047e816104da565b50565b5f546001600160a01b031633146102935760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610300565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f60208284031215610539575f80fd5b5035919050565b5f60208284031215610550575f80fd5b81356001600160e01b031981168114610567575f80fd5b9392505050565b80356001600160a01b0381168114610584575f80fd5b919050565b5f60208284031215610599575f80fd5b6105678261056e565b5f80604083850312156105b3575f80fd5b823591506105c36020840161056e565b90509250929050565b5f80604083850312156105dd575f80fd5b6105e68361056e565b9150602083013580151581146105fa575f80fd5b809150509250929050565b5f60208284031215610615575f80fd5b505191905056fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2":"0x3f1194b9019002863ad0dbbe295294547c0d36a9","0xbdf39e9e65b2355b1b0b06df799c09159f0ab90f06a9bb2153f5de7d9b0ea81":"0x1","0x97b771283c9c769f7b9399fef71d92816f2bd31de10203b676671b01eb920966":"0x1"}},"0xe85541865bbb62a05064ce5c9f41cc293a8ea996":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610060575f3560e01c8063715018a6146100645780638129fc1c1461006e5780638da5cb5b14610076578063a3f4df7e14610096578063f2fde38b146100cf578063ffa1ad74146100e2575b5f80fd5b61006c610106565b005b61006c610119565b6033546040516001600160a01b0390911681526020015b60405180910390f35b6100c26040518060400160405280600d81526020016c2aa7299d1027b832b930ba37b960991b81525081565b60405161008d91906103bd565b61006c6100dd366004610409565b610229565b6100c2604051806040016040528060058152602001640302e312e360dc1b81525081565b61010e61029f565b6101175f6102f9565b565b5f54610100900460ff161580801561013757505f54600160ff909116105b806101505750303b15801561015057505f5460ff166001145b6101b85760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b5f805460ff1916600117905580156101d9575f805461ff0019166101001790555b6101e161034a565b8015610226575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50565b61023161029f565b6001600160a01b0381166102965760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016101af565b610226816102f9565b6033546001600160a01b031633146101175760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016101af565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff166103b45760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016101af565b610117336102f9565b5f602080835283518060208501525f5b818110156103e9578581018301518582016040015282016103cd565b505f604082860101526040601f19601f8301168501019250505092915050565b5f60208284031215610419575f80fd5b81356001600160a01b038116811461042f575f80fd5b939250505056fea164736f6c6343000818000a","storage":{}},"0xead34b583404e3cb0c9b97c2d1c486be67be9f30":{"nonce":0,"balance":"0x3635c9adc5dea00000","code":"0x","storage":{}},"0xec71e4e674fe0f432693dc2b935c34bd2774c003":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b5060043610610090575f3560e01c8063a200e15311610063578063a200e15314610146578063a34e35961461016d578063c8a4271f14610180578063cd5d2c74146101bf578063d820ed42146101e6575f80fd5b806301ffc9a7146100945780632c0fd74c146100bc57806350e9a715146100f157806359b6b86c1461011f575b5f80fd5b6100a76100a2366004610600565b61020d565b60405190151581526020015b60405180910390f35b6100e37f000000000000000000000000000000000000000000000000000000000000000081565b6040519081526020016100b3565b6101046100ff366004610627565b610243565b604080518251815260209283015192810192909252016100b3565b6100e37f000000000000000000000000000000000000000000000000000000000000000181565b6100e37f000000000000000000000000000000000000000000000000000000000000000481565b6100e361017b366004610627565b610404565b6101a77f000000000000000000000000f3810eb7d64d1c11ae12727d957c6202b24492f581565b6040516001600160a01b0390911681526020016100b3565b6100e37f000000000000000000000000000000000000000000000000000000000000000081565b6100e37f000000000000000000000000000000000000000000000000000000000000000281565b5f6001600160e01b031982166301ffc9a760e01b148061023d57506001600160e01b031982166350e9a71560e01b145b92915050565b604080518082019091525f80825260208201525f61029586868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061045392505050565b90505f600582106102d1576102ca847f00000000000000000000000000000000000000000000000000000000000000016106b3565b9050610394565b81600403610303576102ca847f00000000000000000000000000000000000000000000000000000000000000026106b3565b81600303610335576102ca847f00000000000000000000000000000000000000000000000000000000000000046106b3565b81600203610367576102ca847f00000000000000000000000000000000000000000000000000000000000000006106b3565b610391847f00000000000000000000000000000000000000000000000000000000000000006106b3565b90505b60405180604001604052806103a883610554565b81526020016103f76103f28a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c92508b91506105f89050565b610554565b9052979650505050505050565b5f61044a6103f286868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508892508791506105f89050565b95945050505050565b80515f90819081905b8082101561054b575f858381518110610477576104776106ca565b01602001516001600160f81b0319169050600160ff1b8110156104a65761049f6001846106de565b9250610538565b600760fd1b6001600160f81b0319821610156104c75761049f6002846106de565b600f60fc1b6001600160f81b0319821610156104e85761049f6003846106de565b601f60fb1b6001600160f81b0319821610156105095761049f6004846106de565b603f60fa1b6001600160f81b03198216101561052a5761049f6005846106de565b6105356006846106de565b92505b5082610543816106f1565b93505061045c565b50909392505050565b5f807f000000000000000000000000f3810eb7d64d1c11ae12727d957c6202b24492f56001600160a01b03166350d25bcd6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105b2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105d69190610709565b9050806105e7846305f5e1006106b3565b6105f19190610720565b9392505050565b5f9392505050565b5f60208284031215610610575f80fd5b81356001600160e01b0319811681146105f1575f80fd5b5f805f806060858703121561063a575f80fd5b843567ffffffffffffffff80821115610651575f80fd5b818701915087601f830112610664575f80fd5b813581811115610672575f80fd5b886020828501011115610683575f80fd5b6020928301999098509187013596604001359550909350505050565b634e487b7160e01b5f52601160045260245ffd5b808202811582820484141761023d5761023d61069f565b634e487b7160e01b5f52603260045260245ffd5b8082018082111561023d5761023d61069f565b5f600182016107025761070261069f565b5060010190565b5f60208284031215610719575f80fd5b5051919050565b5f8261073a57634e487b7160e01b5f52601260045260245ffd5b50049056fea164736f6c6343000818000a","storage":{}},"0xf1ad43dc647f27c2366ab4742d68d21282f7d50e":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106101d1575f3560e01c80638b95dd71116100fe578063c86902331161009e578063e32954eb1161006e578063e32954eb146104f2578063e59d895d14610505578063e985e9c514610518578063f1cb7e0614610553575f80fd5b8063c869023314610435578063ce3decdc1461048c578063d5fa2b001461049f578063d700ff33146104b2575f80fd5b8063a8fa5682116100d9578063a8fa5682146103ac578063a9784b3e146103bf578063ac9650d814610402578063bc1c58d114610422575f80fd5b80638b95dd7114610373578063a22cb46514610386578063a4b91a0114610399575f80fd5b80633603d758116101745780635c98042b116101445780635c98042b14610327578063623195b01461033a578063691f34311461034d5780637737221314610360575f80fd5b80633603d758146102975780633b3b57de146102aa5780634cbf6ba4146102bd57806359d1d43c14610307575f80fd5b8063124a319c116101af578063124a319c146102255780632203ab561461025057806329cd62ea14610271578063304e6ade14610284575f80fd5b806301ffc9a7146101d55780630af179d7146101fd57806310f13a8c14610212575b5f80fd5b6101e86101e3366004612267565b610566565b60405190151581526020015b60405180910390f35b61021061020b3660046122bd565b610576565b005b610210610220366004612304565b610778565b610238610233366004612377565b610842565b6040516001600160a01b0390911681526020016101f4565b61026361025e3660046123a1565b610a87565b6040516101f492919061240e565b61021061027f366004612426565b610bb5565b6102106102923660046122bd565b610c4d565b6102106102a536600461244f565b610cc6565b6102386102b836600461244f565b610d64565b6101e86102cb3660046123a1565b5f82815260208181526040808320546001600160401b031683526006825280832094835293815283822092825291909152205461ffff16151590565b61031a6103153660046122bd565b610d93565b6040516101f49190612466565b61031a61033536600461244f565b610e6f565b610210610348366004612478565b610f2a565b61031a61035b36600461244f565b610fc2565b61021061036e3660046122bd565b610ffa565b6102106103813660046124da565b611073565b6102106103943660046125b9565b611150565b6102106103a73660046125e3565b61122a565b61031a6103ba36600461261e565b6112f6565b6101e86103cd36600461265a565b6001600160a01b039283165f908152600c60209081526040808320948352938152838220929094168152925290205460ff1690565b6104156104103660046126ce565b611342565b6040516101f4919061270c565b61031a61043036600461244f565b61134f565b61047761044336600461244f565b5f81815260208181526040808320546001600160401b03168352600982528083209383529290522080546001909101549091565b604080519283526020830191909152016101f4565b61021061049a3660046122bd565b611387565b6102106104ad36600461276e565b6114c3565b6104da6104c036600461244f565b5f602081905290815260409020546001600160401b031681565b6040516001600160401b0390911681526020016101f4565b61041561050036600461279c565b6114e9565b6102106105133660046127d6565b6114fe565b6101e8610526366004612808565b6001600160a01b039182165f908152600b6020908152604080832093909416825291909152205460ff1690565b61031a6105613660046123a1565b6115a2565b5f61057082611666565b92915050565b826105808161168a565b610588575f80fd5b5f84815260208181526040808320548151601f87018490048402810184019092528582528392606092839285926001600160401b039091169183916105eb9183918d908d90819084018382808284375f9201919091525092939250506118b79050565b90505b80515160208201511015610712578661ffff165f03610652578060400151965061061781611912565b94508460405160200161062a9190612834565b60405160208183030381529060405280519060200120925061064b81611933565b9350610704565b5f61065c82611912565b9050816040015161ffff168861ffff16141580610680575061067e868261194f565b155b15610702576106db8c878a8e8e8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250505060208801518d91506106d2908290612863565b8b51158a61196a565b8160400151975081602001519650809550858051906020012093506106ff82611933565b94505b505b61070d81611bc9565b6105ee565b5083511561076c5761076c8a85888c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508c925061076391508290508f612863565b8951158861196a565b50505050505050505050565b846107828161168a565b61078a575f80fd5b5f86815260208181526040808320546001600160401b03168352600a8252808320898452909152908190209051849184916107c89089908990612876565b908152602001604051809103902091826107e3929190612901565b5084846040516107f4929190612876565b6040518091039020867f448bc014f1536726cf8d54ff3d6481ed3cbc683c2591ca204274009afa09b1a18787878760405161083294939291906129e2565b60405180910390a3505050505050565b5f82815260208181526040808320546001600160401b031683526007825280832085845282528083206001600160e01b0319851684529091528120546001600160a01b03168015610894579050610570565b5f61089e85610d64565b90506001600160a01b0381166108b8575f92505050610570565b6040516301ffc9a760e01b60248201525f9081906001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b1790525161090f9190612834565b5f60405180830381855afa9150503d805f8114610947576040519150601f19603f3d011682016040523d82523d5f602084013e61094c565b606091505b509150915081158061095f575060208151105b80610989575080601f8151811061097857610978612a13565b01602001516001600160f81b031916155b1561099a575f945050505050610570565b6040516001600160e01b0319871660248201526001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b179052516109f09190612834565b5f60405180830381855afa9150503d805f8114610a28576040519150601f19603f3d011682016040523d82523d5f602084013e610a2d565b606091505b509092509050811580610a41575060208151105b80610a6b575080601f81518110610a5a57610a5a612a13565b01602001516001600160f81b031916155b15610a7c575f945050505050610570565b509095945050505050565b5f82815260208181526040808320546001600160401b03168352600180835281842086855290925282206060915b848111610b975780851615801590610ae457505f8181526020839052604081208054610ae090612885565b9050115b15610b8f5780825f8381526020019081526020015f20808054610b0690612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610b3290612885565b8015610b7d5780601f10610b5457610100808354040283529160200191610b7d565b820191905f5260205f20905b815481529060010190602001808311610b6057829003601f168201915b50505050509050935093505050610bae565b60011b610ab5565b505f60405180602001604052805f81525092509250505b9250929050565b82610bbf8161168a565b610bc7575f80fd5b60408051808201825284815260208082018581525f888152808352848120546001600160401b031681526009835284812089825283528490209251835551600190920191909155815185815290810184905285917f1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e4691015b60405180910390a250505050565b82610c578161168a565b610c5f575f80fd5b5f84815260208181526040808320546001600160401b03168352600382528083208784529091529020610c93838583612901565b50837fe379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d75788484604051610c3f929190612a27565b80610cd08161168a565b610cd8575f80fd5b5f82815260208190526040812080546001600160401b031691610cfa83612a3a565b82546101009290920a6001600160401b038181021990931691831602179091555f84815260208181526040918290205491519190921681528492507fc6621ccb8f3f5a04bb6502154b2caf6adf5983fe76dfef1cfc9c42e3579db444910160405180910390a25050565b5f80610d7183603c6115a2565b905080515f03610d8357505f92915050565b610d8c81611cae565b9392505050565b5f83815260208181526040808320546001600160401b03168352600a825280832086845290915290819020905160609190610dd19085908590612876565b90815260200160405180910390208054610dea90612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610e1690612885565b8015610e615780601f10610e3857610100808354040283529160200191610e61565b820191905f5260205f20905b815481529060010190602001808311610e4457829003601f168201915b505050505090509392505050565b5f81815260208181526040808320546001600160401b03168352600482528083208484529091529020805460609190610ea790612885565b80601f0160208091040260200160405190810160405280929190818152602001828054610ed390612885565b8015610f1e5780601f10610ef557610100808354040283529160200191610f1e565b820191905f5260205f20905b815481529060010190602001808311610f0157829003601f168201915b50505050509050919050565b83610f348161168a565b610f3c575f80fd5b83610f48600182612863565b1615610f52575f80fd5b5f85815260208181526040808320546001600160401b031683526001825280832088845282528083208784529091529020610f8e838583612901565b50604051849086907faa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe3905f90a35050505050565b5f81815260208181526040808320546001600160401b03168352600882528083208484529091529020805460609190610ea790612885565b826110048161168a565b61100c575f80fd5b5f84815260208181526040808320546001600160401b03168352600882528083208784529091529020611040838583612901565b50837fb7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f78484604051610c3f929190612a27565b8261107d8161168a565b611085575f80fd5b837f65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af75284846040516110b792919061240e565b60405180910390a2603c830361110e57837f52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd26110f284611cae565b6040516001600160a01b03909116815260200160405180910390a25b5f84815260208181526040808320546001600160401b0316835260028252808320878452825280832086845290915290206111498382612a5f565b5050505050565b6001600160a01b03821633036111bf5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084015b60405180910390fd5b335f818152600b602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6001600160a01b03821633036112825760405162461bcd60e51b815260206004820181905260248201527f53657474696e672064656c65676174652073746174757320666f722073656c6660448201526064016111b6565b335f818152600c6020908152604080832087845282528083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519384529286917ff0ddb3b04746704017f9aa8bd728fcc2c1d11675041205350018915f5e4750a0910160405180910390a4505050565b5f83815260208181526040808320546001600160401b03168352600582528083208684528252808320858452825280832061ffff851684529091529020805460609190610dea90612885565b6060610d8c5f8484611ccb565b5f81815260208181526040808320546001600160401b03168352600382528083208484529091529020805460609190610ea790612885565b826113918161168a565b611399575f80fd5b5f84815260208181526040808320546001600160401b031680845260048352818420888552909252822080549192916113d190612885565b80601f01602080910402602001604051908101604052809291908181526020018280546113fd90612885565b80156114485780601f1061141f57610100808354040283529160200191611448565b820191905f5260205f20905b81548152906001019060200180831161142b57829003601f168201915b505050506001600160401b0384165f9081526004602090815260408083208b8452909152902091925061147e9050858783612901565b50857f8f15ed4b723ef428f250961da8315675b507046737e19319fc1a4d81bfe87f858287876040516114b393929190612b1e565b60405180910390a2505050505050565b816114cd8161168a565b6114d5575f80fd5b6114e483603c61038185611e88565b505050565b60606114f6848484611ccb565b949350505050565b826115088161168a565b611510575f80fd5b5f84815260208181526040808320546001600160401b031683526007825280832087845282528083206001600160e01b031987168085529083529281902080546001600160a01b0319166001600160a01b038716908117909155905190815286917f7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa910160405180910390a350505050565b5f82815260208181526040808320546001600160401b0316835260028252808320858452825280832084845290915290208054606091906115e290612885565b80601f016020809104026020016040519081016040528092919081815260200182805461160e90612885565b80156116595780601f1061163057610100808354040283529160200191611659565b820191905f5260205f20905b81548152906001019060200180831161163c57829003601f168201915b5050505050905092915050565b5f6001600160e01b03198216631674750f60e21b1480610570575061057082611eb8565b5f336001600160a01b037f0000000000000000000000004fbf7b2f171336958be5d15ff762a5cff53635681614806116ea5750336001600160a01b037f000000000000000000000000f670681605efc4efc804f5a9b97ee89520473d5616145b156116f757506001919050565b6040516302571be360e01b8152600481018390525f907f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a96001600160a01b0316906302571be390602401602060405180830381865afa15801561175c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117809190612b4d565b90507f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b0316816001600160a01b031603611845576040516331a9108f60e11b8152600481018490527f0000000000000000000000006ac8f19d1e0f81147cdf2a1e53cb1f4e184172046001600160a01b031690636352211e90602401602060405180830381865afa15801561181e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118429190612b4d565b90505b6001600160a01b03811633148061187e57506001600160a01b0381165f908152600b6020908152604080832033845290915290205460ff165b80610d8c57506001600160a01b0381165f908152600c60209081526040808320868452825280832033845290915290205460ff16610d8c565b6118ff6040518060e00160405280606081526020015f81526020015f61ffff1681526020015f61ffff1681526020015f63ffffffff1681526020015f81526020015f81525090565b82815260c0810182905261057081611bc9565b602081015181516060916105709161192a9082611edc565b84519190611f33565b60a081015160c08201516060916105709161192a908290612863565b5f81518351148015610d8c5750610d8c835f845f8751611fa7565b865160208801205f61197d878787611f33565b90508315611aa1576001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c168452909152902080546119c690612885565b159050611a23576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611a0783612b68565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091528120611a62916121f9565b897f03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a12078a8a604051611a94929190612b84565b60405180910390a261076c565b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c16845290915290208054611ae290612885565b90505f03611b40576001600160401b0383165f9081526006602090815260408083208d845282528083208584529091528120805461ffff1691611b2483612ba9565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b0383165f9081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091529020611b808282612a5f565b50897f52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b8a8a84604051611bb593929190612bbf565b60405180910390a250505050505050505050565b60c08101516020820181905281515111611be05750565b5f611bf2825f01518360200151611edc565b8260200151611c019190612bed565b8251909150611c109082611fc9565b61ffff166040830152611c24600282612bed565b8251909150611c339082611fc9565b61ffff166060830152611c47600282612bed565b8251909150611c569082611fef565b63ffffffff166080830152611c6c600482612bed565b82519091505f90611c7d9083611fc9565b61ffff169050611c8e600283612bed565b60a084018190529150611ca18183612bed565b60c0909301929092525050565b5f8151601414611cbc575f80fd5b5060200151600160601b900490565b6060816001600160401b03811115611ce557611ce56124c6565b604051908082528060200260200182016040528015611d1857816020015b6060815260200190600190039081611d035790505b5090505f5b82811015611e80578415611dd8575f848483818110611d3e57611d3e612a13565b9050602002810190611d509190612c00565b611d5f91602491600491612c42565b611d6891612c69565b9050858114611dd65760405162461bcd60e51b815260206004820152603460248201527f6d756c746963616c6c3a20416c6c207265636f726473206d7573742068617665604482015273040c240dac2e8c6d0d2dcce40dcc2dacad0c2e6d60631b60648201526084016111b6565b505b5f8030868685818110611ded57611ded612a13565b9050602002810190611dff9190612c00565b604051611e0d929190612876565b5f60405180830381855af49150503d805f8114611e45576040519150601f19603f3d011682016040523d82523d5f602084013e611e4a565b606091505b509150915081611e58575f80fd5b80848481518110611e6b57611e6b612a13565b60209081029190910101525050600101611d1d565b509392505050565b604080516014808252818301909252606091602082018180368337505050600160601b9290920260208301525090565b5f6001600160e01b0319821663c869023360e01b1480610570575061057082612017565b5f815b83518110611eef57611eef612c86565b5f611efa858361203b565b60ff169050611f0a816001612bed565b611f149083612bed565b9150805f03611f235750611f29565b50611edf565b6114f68382612863565b8251606090611f428385612bed565b1115611f4c575f80fd5b5f826001600160401b03811115611f6557611f656124c6565b6040519080825280601f01601f191660200182016040528015611f8f576020820181803683370190505b50905060208082019086860101610a7c82828761205e565b5f611fb38484846120b3565b611fbe8787856120b3565b149695505050505050565b81515f90611fd8836002612bed565b1115611fe2575f80fd5b50016002015161ffff1690565b81515f90611ffe836004612bed565b1115612008575f80fd5b50016004015163ffffffff1690565b5f6001600160e01b0319821663691f343160e01b14806105705750610570826120d5565b5f82828151811061204e5761204e612a13565b016020015160f81c905092915050565b602081106120965781518352612075602084612bed565b9250612082602083612bed565b915061208f602082612863565b905061205e565b905182516020929092036101000a5f190180199091169116179052565b82515f906120c18385612bed565b11156120cb575f80fd5b5091016020012090565b5f6001600160e01b031982166304928c6760e21b14806105705750610570825f6001600160e01b0319821663547d2b4160e11b148061212457506001600160e01b03198216635c98042b60e01b145b806105705750610570825f6001600160e01b0319821663bc1c58d160e01b14806105705750610570825f6001600160e01b03198216631d9dabef60e11b148061217d57506001600160e01b031982166378e5bf0360e11b145b806105705750610570825f6001600160e01b03198216631101d5ab60e11b14806105705750610570825f6001600160e01b0319821663d700ff3360e01b14806105705750610570825f6001600160e01b03198216634fbf043360e01b148061057057506301ffc9a760e01b6001600160e01b0319831614610570565b50805461220590612885565b5f825580601f10612214575050565b601f0160209004905f5260205f20908101906122309190612233565b50565b5b80821115612247575f8155600101612234565b5090565b80356001600160e01b031981168114612262575f80fd5b919050565b5f60208284031215612277575f80fd5b610d8c8261224b565b5f8083601f840112612290575f80fd5b5081356001600160401b038111156122a6575f80fd5b602083019150836020828501011115610bae575f80fd5b5f805f604084860312156122cf575f80fd5b8335925060208401356001600160401b038111156122eb575f80fd5b6122f786828701612280565b9497909650939450505050565b5f805f805f60608688031215612318575f80fd5b8535945060208601356001600160401b0380821115612335575f80fd5b61234189838a01612280565b90965094506040880135915080821115612359575f80fd5b5061236688828901612280565b969995985093965092949392505050565b5f8060408385031215612388575f80fd5b823591506123986020840161224b565b90509250929050565b5f80604083850312156123b2575f80fd5b50508035926020909101359150565b5f5b838110156123db5781810151838201526020016123c3565b50505f910152565b5f81518084526123fa8160208601602086016123c1565b601f01601f19169290920160200192915050565b828152604060208201525f6114f660408301846123e3565b5f805f60608486031215612438575f80fd5b505081359360208301359350604090920135919050565b5f6020828403121561245f575f80fd5b5035919050565b602081525f610d8c60208301846123e3565b5f805f806060858703121561248b575f80fd5b843593506020850135925060408501356001600160401b038111156124ae575f80fd5b6124ba87828801612280565b95989497509550505050565b634e487b7160e01b5f52604160045260245ffd5b5f805f606084860312156124ec575f80fd5b833592506020840135915060408401356001600160401b0380821115612510575f80fd5b818601915086601f830112612523575f80fd5b813581811115612535576125356124c6565b604051601f8201601f19908116603f0116810190838211818310171561255d5761255d6124c6565b81604052828152896020848701011115612575575f80fd5b826020860160208301375f6020848301015280955050505050509250925092565b6001600160a01b0381168114612230575f80fd5b80358015158114612262575f80fd5b5f80604083850312156125ca575f80fd5b82356125d581612596565b9150612398602084016125aa565b5f805f606084860312156125f5575f80fd5b83359250602084013561260781612596565b9150612615604085016125aa565b90509250925092565b5f805f60608486031215612630575f80fd5b8335925060208401359150604084013561ffff8116811461264f575f80fd5b809150509250925092565b5f805f6060848603121561266c575f80fd5b833561267781612596565b925060208401359150604084013561264f81612596565b5f8083601f84011261269e575f80fd5b5081356001600160401b038111156126b4575f80fd5b6020830191508360208260051b8501011115610bae575f80fd5b5f80602083850312156126df575f80fd5b82356001600160401b038111156126f4575f80fd5b6127008582860161268e565b90969095509350505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b8281101561276157603f1988860301845261274f8583516123e3565b94509285019290850190600101612733565b5092979650505050505050565b5f806040838503121561277f575f80fd5b82359150602083013561279181612596565b809150509250929050565b5f805f604084860312156127ae575f80fd5b8335925060208401356001600160401b038111156127ca575f80fd5b6122f78682870161268e565b5f805f606084860312156127e8575f80fd5b833592506127f86020850161224b565b9150604084013561264f81612596565b5f8060408385031215612819575f80fd5b823561282481612596565b9150602083013561279181612596565b5f82516128458184602087016123c1565b9190910192915050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156105705761057061284f565b818382375f9101908152919050565b600181811c9082168061289957607f821691505b6020821081036128b757634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156114e457805f5260205f20601f840160051c810160208510156128e25750805b601f840160051c820191505b81811015611149575f81556001016128ee565b6001600160401b03831115612918576129186124c6565b61292c836129268354612885565b836128bd565b5f601f84116001811461295d575f85156129465750838201355b5f19600387901b1c1916600186901b178355611149565b5f83815260208120601f198716915b8281101561298c578685013582556020948501946001909201910161296c565b50868210156129a8575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b604081525f6129f56040830186886129ba565b8281036020840152612a088185876129ba565b979650505050505050565b634e487b7160e01b5f52603260045260245ffd5b602081525f6114f66020830184866129ba565b5f6001600160401b03808316818103612a5557612a5561284f565b6001019392505050565b81516001600160401b03811115612a7857612a786124c6565b612a8c81612a868454612885565b846128bd565b602080601f831160018114612abf575f8415612aa85750858301515b5f19600386901b1c1916600185901b178555612b16565b5f85815260208120601f198616915b82811015612aed57888601518255948401946001909101908401612ace565b5085821015612b0a57878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b604081525f612b3060408301866123e3565b8281036020840152612b438185876129ba565b9695505050505050565b5f60208284031215612b5d575f80fd5b8151610d8c81612596565b5f61ffff821680612b7b57612b7b61284f565b5f190192915050565b604081525f612b9660408301856123e3565b905061ffff831660208301529392505050565b5f61ffff808316818103612a5557612a5561284f565b606081525f612bd160608301866123e3565b61ffff851660208401528281036040840152612b4381856123e3565b808201808211156105705761057061284f565b5f808335601e19843603018112612c15575f80fd5b8301803591506001600160401b03821115612c2e575f80fd5b602001915036819003821315610bae575f80fd5b5f8085851115612c50575f80fd5b83861115612c5c575f80fd5b5050820193919092039150565b80356020831015610570575f19602084900360031b1b1692915050565b634e487b7160e01b5f52600160045260245ffdfea164736f6c6343000818000a","storage":{}},"0xf3810eb7d64d1c11ae12727d957c6202b24492f5":{"nonce":1,"balance":"0x0","code":"0x6080604052348015600e575f80fd5b50600436106030575f3560e01c806350d25bcd146034578063e5c19b2d146048575b5f80fd5b5f5460405190815260200160405180910390f35b605760533660046059565b5f55565b005b5f602082840312156068575f80fd5b503591905056fea164736f6c6343000818000a","storage":{"0x0":"0x5f5e100"}},"0xf670681605efc4efc804f5a9b97ee89520473d56":{"nonce":1,"balance":"0x0","code":"0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c80638da5cb5b11610088578063c66485b211610063578063c66485b2146101da578063da8c229e146101ed578063e0dba60f1461021f578063f2fde38b14610232575f80fd5b80638da5cb5b146101a4578063bffbe61c146101b4578063c47f0027146101c7575f80fd5b806365669631116100c35780636566963114610161578063715018a6146101745780637a806d6b1461017e578063828eab0e14610191575f80fd5b80630f5a5466146100e95780631e83409a1461010f5780633f15457f14610122575b5f80fd5b6100fc6100f7366004610958565b610245565b6040519081526020015b60405180910390f35b6100fc61011d36600461098f565b610258565b6101497f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a981565b6040516001600160a01b039091168152602001610106565b6100fc61016f3660046109aa565b610279565b61017c610526565b005b6100fc61018c366004610a8f565b610539565b600254610149906001600160a01b031681565b5f546001600160a01b0316610149565b6100fc6101c236600461098f565b6105ae565b6100fc6101d5366004610b00565b610608565b61017c6101e836600461098f565b610624565b61020f6101fb36600461098f565b60016020525f908152604090205460ff1681565b6040519015158152602001610106565b61017c61022d366004610b47565b6106e4565b61017c61024036600461098f565b61074a565b5f610251338484610279565b9392505050565b6002545f9061027390339084906001600160a01b0316610279565b92915050565b5f836001600160a01b0381163314806102a05750335f9081526001602052604090205460ff165b80610334575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a9169063e985e9c590604401602060405180830381865afa158015610310573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103349190610b73565b806103435750610343816107c3565b6103e05760405162461bcd60e51b815260206004820152605b60248201527f526576657273655265676973747261723a2043616c6c6572206973206e6f742060448201527f6120636f6e74726f6c6c6572206f7220617574686f726973656420627920616460648201527f6472657373206f7220746865206164647265737320697473656c660000000000608482015260a4015b60405180910390fd5b5f6103ea8661083a565b604080517f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e2602080830191909152818301849052825180830384018152606090920192839052815191012091925081906001600160a01b038916907f6ada868dd3058cf77a48a74489fd7963688e5464b2b0fa957ace976243270e92905f90a36040516305ef2c7f60e41b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26004820152602481018390526001600160a01b03878116604483015286811660648301525f60848301527f0000000000000000000000003f1194b9019002863ad0dbbe295294547c0d36a91690635ef2c7f09060a4015f604051808303815f87803b158015610505575f80fd5b505af1158015610517573d5f803e3d5ffd5b50929998505050505050505050565b61052e61089c565b6105375f6108f5565b565b5f80610546868686610279565b604051637737221360e01b81529091506001600160a01b038516906377372213906105779084908790600401610b8e565b5f604051808303815f87803b15801561058e575f80fd5b505af11580156105a0573d5f803e3d5ffd5b509298975050505050505050565b5f7f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26105d98361083a565b604080516020810193909352820152606001604051602081830303815290604052805190602001209050919050565b6002545f9061027390339081906001600160a01b031685610539565b61062c61089c565b6001600160a01b03811661069b5760405162461bcd60e51b815260206004820152603060248201527f526576657273655265676973747261723a205265736f6c76657220616464726560448201526f07373206d757374206e6f7420626520360841b60648201526084016103d7565b600280546001600160a01b0319166001600160a01b0383169081179091556040517feae17a84d9eb83d8c8eb317f9e7d64857bc363fa51674d996c023f4340c577cf905f90a250565b6106ec61089c565b6001600160a01b0382165f81815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b61075261089c565b6001600160a01b0381166107b75760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016103d7565b6107c0816108f5565b50565b5f816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801561081e575060408051601f3d908101601f1916820190925261081b91810190610be2565b60015b61082957505f919050565b6001600160a01b0316331492915050565b5f60285b8015610891575f19016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a81536010909204915f19016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a815360108304925061083e565b505060285f20919050565b5f546001600160a01b031633146105375760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016103d7565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146107c0575f80fd5b5f8060408385031215610969575f80fd5b823561097481610944565b9150602083013561098481610944565b809150509250929050565b5f6020828403121561099f575f80fd5b813561025181610944565b5f805f606084860312156109bc575f80fd5b83356109c781610944565b925060208401356109d781610944565b915060408401356109e781610944565b809150509250925092565b634e487b7160e01b5f52604160045260245ffd5b5f82601f830112610a15575f80fd5b813567ffffffffffffffff80821115610a3057610a306109f2565b604051601f8301601f19908116603f01168101908282118183101715610a5857610a586109f2565b81604052838152866020858801011115610a70575f80fd5b836020870160208301375f602085830101528094505050505092915050565b5f805f8060808587031215610aa2575f80fd5b8435610aad81610944565b93506020850135610abd81610944565b92506040850135610acd81610944565b9150606085013567ffffffffffffffff811115610ae8575f80fd5b610af487828801610a06565b91505092959194509250565b5f60208284031215610b10575f80fd5b813567ffffffffffffffff811115610b26575f80fd5b610b3284828501610a06565b949350505050565b80151581146107c0575f80fd5b5f8060408385031215610b58575f80fd5b8235610b6381610944565b9150602083013561098481610b3a565b5f60208284031215610b83575f80fd5b815161025181610b3a565b8281525f60206040602084015283518060408501525f5b81811015610bc157858101830151858201606001528201610ba5565b505f606082860101526060601f19601f830116850101925050509392505050565b5f60208284031215610bf2575f80fd5b81516102518161094456fea164736f6c6343000818000a","storage":{"0x0":"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa","0x2":"0x9df67c91f1bfcb4d966cf764e9218685e7c59e8a","0x1f5b7623941da966ad7183d9cbb6db584f6d4add26919ac31a2d3f19a164e7e1":"0x1","0xbe5de2149ce76ca5934fa63455cd675fd52e2d30f3328985d298a627ca0f05e9":"0x1"}},"0xf8c26340c1eaea6c7ff1760b25005e1306953572":{"nonce":1,"balance":"0x0","code":"0x608060405234801561001057600080fd5b506004361061010b5760003560e01c80638c87a4ea116100a2578063b87abc1111610071578063b87abc1114610244578063c597407314610257578063ce92b33e1461026a578063e837ae741461027d578063ec129eea146102905761010b565b80638c87a4ea146101ea5780638f69c188146101fd578063a3557e6c14610210578063b85afd28146102235761010b565b806347c81699116100de57806347c8169914610181578063672b9f81146101945780636ccbae5f146101b55780637b103999146101d55761010b565b80631bd8cc1a146101105780631be5e7ed146101395780632c3d376d14610159578063310bd74b1461016c575b600080fd5b61012361011e3660046117b4565b6102a3565b6040516101309190611eee565b60405180910390f35b61014c610147366004611aec565b6104f2565b6040516101309190611fd6565b61014c610167366004611b21565b610673565b61017f61017a366004611b21565b610714565b005b61017f61018f3660046119b5565b6107c0565b6101a76101a2366004611b94565b6108ef565b604051610130929190611fe7565b6101c86101c3366004611b21565b6109c3565b604051610130919061204c565b6101dd6109d5565b6040516101309190611ea9565b6101236101f836600461191d565b6109e5565b61017f61020b366004611878565b610a74565b61017f61021e366004611878565b610af0565b610236610231366004611951565b610b1b565b604051610130929190611eff565b61017f610252366004611b3f565b610ca9565b61017f610265366004611a39565b610d43565b61017f610278366004611808565b610df9565b61017f61028b366004611808565b610e97565b61017f61029e366004611808565b610f4e565b60015460405163b3f9e4cb60e01b815260609183916001600160a01b039091169063b3f9e4cb906102d890849060040161204c565b60206040518083038186803b1580156102f057600080fd5b505afa158015610304573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610328919081019061178e565b6001600160a01b0316306001600160a01b0316146103615760405162461bcd60e51b81526004016103589061201c565b60405180910390fd5b604080518581526020808702820101909152849060609082801561039957816020015b60608152602001906001900390816103845790505b506000868152600360205260408120549192505b838110156104e557600087815260026020908152604080832085845290915290208989838181106103da57fe5b602002820190508035601e19368490030181126103f657600080fd5b909101602081019150356001600160401b0381111561041457600080fd5b3681900382131561042457600080fd5b604051610432929190611e70565b9081526040805160209281900383018120805460026001821615610100026000190190911604601f810185900485028301850190935282825290929091908301828280156104c15780601f10610496576101008083540402835291602001916104c1565b820191906000526020600020905b8154815290600101906020018083116104a457829003601f168201915b50505050508382815181106104d257fe5b60209081029190910101526001016103ad565b5090979650505050505050565b60015460405163b3f9e4cb60e01b815260609183916001600160a01b039091169063b3f9e4cb9061052790849060040161204c565b60206040518083038186803b15801561053f57600080fd5b505afa158015610553573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610577919081019061178e565b6001600160a01b0316306001600160a01b0316146105a75760405162461bcd60e51b81526004016103589061201c565b6000838152600260209081526040808320600383528184205484529091529081902090516105d6908690611e7d565b9081526040805160209281900383018120805460026001821615610100026000190190911604601f810185900485028301850190935282825290929091908301828280156106655780601f1061063a57610100808354040283529160200191610665565b820191906000526020600020905b81548152906001019060200180831161064857829003601f168201915b505050505091505092915050565b60008181526004602090815260409182902080548351601f60026000196101006001861615020190931692909204918201849004840281018401909452808452606093928301828280156107085780601f106106dd57610100808354040283529160200191610708565b820191906000526020600020905b8154815290600101906020018083116106eb57829003601f168201915b50505050509050919050565b60015460405163430c208160e01b815282916001600160a01b03169063430c2081906107469033908590600401611ec5565b60206040518083038186803b15801561075e57600080fd5b505afa158015610772573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506107969190810190611997565b6107b25760405162461bcd60e51b81526004016103589061202c565b6107bc4283610fec565b5050565b60015460405163430c208160e01b815282916001600160a01b03169063430c2081906107f29033908590600401611ec5565b60206040518083038186803b15801561080a57600080fd5b505afa15801561081e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506108429190810190611997565b61085e5760405162461bcd60e51b81526004016103589061202c565b6108e7600360008481526020019081526020016000205487878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061108e915050565b505050505050565b60015460405163b3f9e4cb60e01b8152606091829184916001600160a01b03169063b3f9e4cb9061092490849060040161204c565b60206040518083038186803b15801561093c57600080fd5b505afa158015610950573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610974919081019061178e565b6001600160a01b0316306001600160a01b0316146109a45760405162461bcd60e51b81526004016103589061201c565b6109ad85610673565b92506109b983856104f2565b9150509250929050565b60009081526020819052604090205490565b6001546001600160a01b03165b90565b6060600082519050606081604051908082528060200260200182016040528015610a2357816020015b6060815260200190600190039081610a0e5790505b50905060005b82811015610a6c57610a4d858281518110610a4057fe5b6020026020010151610673565b828281518110610a5957fe5b6020908102919091010152600101610a29565b509392505050565b610acf63ce92b33e60e01b858585604051602401610a9493929190611f24565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092178252519020838361129f565b600082815260036020526040902054610aea908585856113c3565b50505050565b610b1063ec129eea60e01b858585604051602401610a9493929190611f24565b610aea84848461140a565b60015460405163b3f9e4cb60e01b8152606091829184916001600160a01b03169063b3f9e4cb90610b5090849060040161204c565b60206040518083038186803b158015610b6857600080fd5b505afa158015610b7c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610ba0919081019061178e565b6001600160a01b0316306001600160a01b031614610bd05760405162461bcd60e51b81526004016103589061201c565b8451604080518281526020808402820101909152818015610c0557816020015b6060815260200190600190039081610bf05790505b50935080604051908082528060200260200182016040528015610c3c57816020015b6060815260200190600190039081610c275790505b50925060005b81811015610c9f57610c67878281518110610c5957fe5b6020026020010151876108ef565b8651879084908110610c7557fe5b60200260200101868481518110610c8857fe5b602090810291909101019190915252600101610c42565b5050509250929050565b610d3463310bd74b60e01b84604051602401610cc5919061204c565b60408051601f19818403018152918152602080830180516001600160e01b03166001600160e01b031990951694909417845291519092208251601f8601839004830281018301909352848352918691869086908190840183828082843760009201919091525061129f92505050565b610d3e4284610fec565b505050565b610d676347c8169960e01b8888888888604051602401610cc5959493929190611f96565b610df0600360008581526020019081526020016000205488888080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8c018190048102820181019092528a815292508a915089908190840183828082843760009201919091525089925061108e915050565b50505050505050565b60015460405163430c208160e01b815282916001600160a01b03169063430c208190610e2b9033908590600401611ec5565b60206040518083038186803b158015610e4357600080fd5b505afa158015610e57573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610e7b9190810190611997565b610acf5760405162461bcd60e51b81526004016103589061202c565b6005546040516355138f0d60e11b81526001600160a01b039091169063aa271e1a90610ec7903390600401611eb7565b60206040518083038186803b158015610edf57600080fd5b505afa158015610ef3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610f179190810190611997565b610f335760405162461bcd60e51b81526004016103589061203c565b600081815260036020526040902054610d3e908484846113c3565b60015460405163430c208160e01b815282916001600160a01b03169063430c208190610f809033908590600401611ec5565b60206040518083038186803b158015610f9857600080fd5b505afa158015610fac573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610fd09190810190611997565b610b105760405162461bcd60e51b81526004016103589061202c565b600081815260036020526040808220849055600154905163538361a760e01b81526001600160a01b039091169163538361a79161102d91859160040161205a565b600060405180830381600087803b15801561104757600080fd5b505af115801561105b573d6000803e3d6000fd5b50506040518392507f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9150600090a25050565b825160208085019190912060008381526002835260408082208883529093528281209251919290916110c1908790611e7d565b908152604051602091819003919091018120546001805463538361a760e01b84526002918316156101000260001901909216041592506001600160a01b03169063538361a7906111179086908690600401612075565b600060405180830381600087803b15801561113157600080fd5b505af1158015611145573d6000803e3d6000fd5b50505060008481526002602090815260408083208a8452909152908190209051869250611173908890611e7d565b90815260200160405180910390209080519060200190611194929190611521565b50600082815260046020526040902054600260001961010060018416150201909116046111dc57600082815260046020908152604090912086516111da92880190611521565b505b801561123157846040516111f09190611e7d565b6040518091039020837f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f86876040516112289190611fd6565b60405180910390a35b8360405161123f9190611e7d565b6040518091039020856040516112559190611e7d565b6040518091039020847f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d92888860405161128f929190611fe7565b60405180910390a4505050505050565b6000828152602081815260408083205490519092916112f59185916112e9916112ce918a913091899101611e39565b60405160208183030381529060405280519060200120611414565b9063ffffffff61144416565b90506001600160a01b0381161580159061138c575060015460405163430c208160e01b81526001600160a01b039091169063430c20819061133c9084908890600401611ee0565b60206040518083038186803b15801561135457600080fd5b505afa158015611368573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061138c9190810190611997565b6113a85760405162461bcd60e51b81526004016103589061200c565b50505060009081526020819052604090208054600101905550565b825160005b818110156108e757611402868683815181106113e057fe5b60200260200101518684815181106113f457fe5b60200260200101518661108e565b6001016113c8565b610f334282610fec565b6000816040516020016114279190611e89565b604051602081830303815290604052805190602001209050919050565b600081516041146114575750600061151b565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a082111561149d576000935050505061151b565b8060ff16601b141580156114b557508060ff16601c14155b156114c6576000935050505061151b565b600186828585604051600081526020016040526040516114e99493929190611f58565b6020604051602081039080840390855afa15801561150b573d6000803e3d6000fd5b5050506020604051035193505050505b92915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061156257805160ff191683800117855561158f565b8280016001018555821561158f579182015b8281111561158f578251825591602001919060010190611574565b5061159b92915061159f565b5090565b6109e291905b8082111561159b57600081556001016115a5565b805161151b816121a4565b60008083601f8401126115d657600080fd5b5081356001600160401b038111156115ed57600080fd5b60208301915083602082028301111561160557600080fd5b9250929050565b600082601f83011261161d57600080fd5b813561163061162b826120a9565b612083565b81815260209384019390925082018360005b8381101561166e57813586016116588882611734565b8452506020928301929190910190600101611642565b5050505092915050565b600082601f83011261168957600080fd5b813561169761162b826120a9565b915081818352602084019350602081019050838560208402820111156116bc57600080fd5b60005b8381101561166e57816116d28882611783565b84525060209283019291909101906001016116bf565b805161151b816121bb565b60008083601f84011261170557600080fd5b5081356001600160401b0381111561171c57600080fd5b60208301915083600182028301111561160557600080fd5b600082601f83011261174557600080fd5b813561175361162b826120c9565b9150808252602083016020830185838301111561176f57600080fd5b61177a83828461214b565b50505092915050565b803561151b816121c4565b6000602082840312156117a057600080fd5b60006117ac84846115b9565b949350505050565b6000806000604084860312156117c957600080fd5b83356001600160401b038111156117df57600080fd5b6117eb868287016115c4565b935093505060206117fe86828701611783565b9150509250925092565b60008060006060848603121561181d57600080fd5b83356001600160401b0381111561183357600080fd5b61183f8682870161160c565b93505060208401356001600160401b0381111561185b57600080fd5b6118678682870161160c565b92505060406117fe86828701611783565b6000806000806080858703121561188e57600080fd5b84356001600160401b038111156118a457600080fd5b6118b08782880161160c565b94505060208501356001600160401b038111156118cc57600080fd5b6118d88782880161160c565b93505060406118e987828801611783565b92505060608501356001600160401b0381111561190557600080fd5b61191187828801611734565b91505092959194509250565b60006020828403121561192f57600080fd5b81356001600160401b0381111561194557600080fd5b6117ac84828501611678565b6000806040838503121561196457600080fd5b82356001600160401b0381111561197a57600080fd5b61198685828601611678565b92505060206109b985828601611783565b6000602082840312156119a957600080fd5b60006117ac84846116e8565b6000806000806000606086880312156119cd57600080fd5b85356001600160401b038111156119e357600080fd5b6119ef888289016116f3565b955095505060208601356001600160401b03811115611a0d57600080fd5b611a19888289016116f3565b93509350506040611a2c88828901611783565b9150509295509295909350565b60008060008060008060006080888a031215611a5457600080fd5b87356001600160401b03811115611a6a57600080fd5b611a768a828b016116f3565b975097505060208801356001600160401b03811115611a9457600080fd5b611aa08a828b016116f3565b95509550506040611ab38a828b01611783565b93505060608801356001600160401b03811115611acf57600080fd5b611adb8a828b016116f3565b925092505092959891949750929550565b60008060408385031215611aff57600080fd5b82356001600160401b03811115611b1557600080fd5b61198685828601611734565b600060208284031215611b3357600080fd5b60006117ac8484611783565b600080600060408486031215611b5457600080fd5b6000611b608686611783565b93505060208401356001600160401b03811115611b7c57600080fd5b611b88868287016116f3565b92509250509250925092565b60008060408385031215611ba757600080fd5b60006119868585611783565b6000611bbf8383611ccb565b9392505050565b611bcf8161212a565b82525050565b611bcf81612108565b611bcf611bea82612108565b612183565b6000611bfa826120f6565b611c0481856120fa565b935083602082028501611c16856120f0565b8060005b85811015611c505784840389528151611c338582611bb3565b9450611c3e836120f0565b60209a909a0199925050600101611c1a565b5091979650505050505050565b611bcf816109e2565b611bcf611c72826109e2565b6109e2565b611bcf81612135565b6000611c8c83856120fa565b9350611c9983858461214b565b611ca283612194565b9093019392505050565b6000611cb88385612103565b9350611cc583858461214b565b50500190565b6000611cd6826120f6565b611ce081856120fa565b9350611cf0818560208601612157565b611ca281612194565b6000611d04826120f6565b611d0e8185612103565b9350611d1e818560208601612157565b9290920192915050565b6000611d35601c83612103565b7f19457468657265756d205369676e6564204d6573736167653a0a3332000000008152601c0192915050565b6000611d6e6011836120fa565b70494e56414c49445f5349474e415455524560781b815260200192915050565b6000611d9b601d836120fa565b7f5245534f4c5645525f44455441434845445f46524f4d5f444f4d41494e000000815260200192915050565b6000611dd4601f836120fa565b7f53454e4445525f49535f4e4f545f415050524f5645445f4f525f4f574e455200815260200192915050565b6000611e0d6014836120fa565b7329a2a72222a92fa4a9afa727aa2fa6a4a72a22a960611b815260200192915050565b611bcf81612124565b6000611e458286611c66565b602082019150611e558285611bde565b601482019150611e658284611c66565b506020019392505050565b60006117ac828486611cac565b6000611bbf8284611cf9565b6000611e9482611d28565b9150611ea08284611c66565b50602001919050565b6020810161151b8284611bd5565b6020810161151b8284611bc6565b60408101611ed38285611bc6565b611bbf6020830184611c5d565b60408101611ed38285611bd5565b60208082528101611bbf8184611bef565b60408082528101611f108185611bef565b905081810360208301526117ac8184611bef565b60608082528101611f358186611bef565b90508181036020830152611f498185611bef565b90506117ac6040830184611c5d565b60808101611f668287611c5d565b611f736020830186611e30565b611f806040830185611c5d565b611f8d6060830184611c5d565b95945050505050565b60608082528101611fa8818789611c80565b90508181036020830152611fbd818587611c80565b9050611fcc6040830184611c5d565b9695505050505050565b60208082528101611bbf8184611ccb565b60408082528101611ff88185611ccb565b905081810360208301526117ac8184611ccb565b6020808252810161151b81611d61565b6020808252810161151b81611d8e565b6020808252810161151b81611dc7565b6020808252810161151b81611e00565b6020810161151b8284611c5d565b604081016120688285611c5d565b611bbf6020830184611c77565b60408101611ed38285611c5d565b6040518181016001600160401b03811182821017156120a157600080fd5b604052919050565b60006001600160401b038211156120bf57600080fd5b5060209081020190565b60006001600160401b038211156120df57600080fd5b506020601f91909101601f19160190565b60200190565b5190565b90815260200190565b919050565b600061151b82612118565b151590565b6001600160a01b031690565b60ff1690565b600061151b82612140565b600061151b826109e2565b600061151b82612108565b82818337506000910152565b60005b8381101561217257818101518382015260200161215a565b83811115610aea5750506000910152565b600061151b82600061151b8261219e565b601f01601f191690565b60601b90565b6121ad81612108565b81146121b857600080fd5b50565b6121ad81612113565b6121ad816109e256fea365627a7a723158207a1d8dfd286d14fcafd1812a4c44813691ac746a5a23fa711ac5551c9509654d6c6578706572696d656e74616cf564736f6c634300050c0040","storage":{"0x1":"0xc58206842e4030a3b2cabc78780ae7635173c533","0x5":"0x4a3c194eb88966178bfdd81744dddafed611b830"}},"0xfe84ab89b7fc902ff3cfd756403a8f085b1639aa":{"nonce":93,"balance":"0x35a9d07e076f2c5c63","code":"0x","storage":{}}}} \ No newline at end of file diff --git a/test/marketplace/SeaportProxyBuyer.test.ts b/test/marketplace/SeaportProxyBuyer.test.ts index 093699d1..75872e83 100644 --- a/test/marketplace/SeaportProxyBuyer.test.ts +++ b/test/marketplace/SeaportProxyBuyer.test.ts @@ -199,16 +199,6 @@ describe('SeaportProxyBuyer', async () => { await seaportProxyBuyer.connect(coinbase).unpause(); }); - it('should not withdraw USDC from Proxy if contract is paused', async () => { - await seaportProxyBuyer.connect(coinbase).pause(); - const amountToWithdraw = BigInt(ethers.parseUnits('100', 6)); - await expect( - seaportProxyBuyer.connect(coinbase) - .withdraw(await usdcMock.getAddress(), feesRecipient.address, amountToWithdraw), - ).to.be.revertedWith('Pausable: paused'); - await seaportProxyBuyer.connect(coinbase).unpause(); - }); - it('should unpause contract', async () => { await seaportProxyBuyer.connect(coinbase).pause(); await seaportProxyBuyer.connect(coinbase).unpause(); @@ -280,14 +270,6 @@ describe('SeaportProxyBuyer', async () => { await expect(seaportProxyBuyer.connect(buyer).approve(await erc20Mock.getAddress())) .to.be.revertedWith('Ownable: caller is not the owner'); }); - - it('should not approve ERC20 spending to Seaport contract if contract is paused', async () => { - const erc20Mock = await new ERC20Mock__factory(coinbase).deploy(); - await seaportProxyBuyer.connect(coinbase).pause(); - await expect(seaportProxyBuyer.connect(coinbase).approve(await erc20Mock.getAddress())) - .to.be.revertedWith('Pausable: paused'); - await seaportProxyBuyer.connect(coinbase).unpause(); - }); }); describe('Meta transactions', async () => { From b6771e199b5afb60c1c87d4226ec05e5b7353f60 Mon Sep 17 00:00:00 2001 From: derain Date: Tue, 28 May 2024 14:19:29 +0300 Subject: [PATCH 21/21] [REG-1273] - Code review fixes --- contracts/marketplace/ISeaportProxyBuyer.sol | 2 +- contracts/marketplace/SeaportProxyBuyer.sol | 2 +- contracts/marketplace/_refs.sol | 2 +- package.json | 2 +- sandbox/anvil-server.ts | 2 +- sandbox/foundry/bin/.gitignore | 2 +- sandbox/foundry/bin/{gitkeep => .gitkeep} | 0 tsconfig.json | 5 +---- 8 files changed, 7 insertions(+), 10 deletions(-) rename sandbox/foundry/bin/{gitkeep => .gitkeep} (100%) diff --git a/contracts/marketplace/ISeaportProxyBuyer.sol b/contracts/marketplace/ISeaportProxyBuyer.sol index 91daf31a..188ecc91 100644 --- a/contracts/marketplace/ISeaportProxyBuyer.sol +++ b/contracts/marketplace/ISeaportProxyBuyer.sol @@ -1,7 +1,7 @@ // @author Unstoppable Domains, Inc. // @date April 25th, 2024 -pragma solidity 0.8.24; +pragma solidity ^0.8.24; import {AdvancedOrder, CriteriaResolver} from 'seaport-types/src/lib/ConsiderationStructs.sol'; diff --git a/contracts/marketplace/SeaportProxyBuyer.sol b/contracts/marketplace/SeaportProxyBuyer.sol index a02e042f..497b6218 100644 --- a/contracts/marketplace/SeaportProxyBuyer.sol +++ b/contracts/marketplace/SeaportProxyBuyer.sol @@ -1,7 +1,7 @@ // @author Unstoppable Domains, Inc. // @date April 25th, 2024 -pragma solidity 0.8.24; +pragma solidity ^0.8.24; import {Initializable} from '@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol'; import {ContextUpgradeable} from '@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol'; diff --git a/contracts/marketplace/_refs.sol b/contracts/marketplace/_refs.sol index 2c6605e2..f69983e6 100644 --- a/contracts/marketplace/_refs.sol +++ b/contracts/marketplace/_refs.sol @@ -1,7 +1,7 @@ // @author Unstoppable Domains, Inc. // @date April 25th, 2024 -pragma solidity 0.8.24; +pragma solidity ^0.8.24; import {Seaport} from 'seaport-core/src/Seaport.sol'; import {ConduitController} from 'seaport-core/src/conduit/ConduitController.sol'; diff --git a/package.json b/package.json index 447f232f..7307e6ba 100644 --- a/package.json +++ b/package.json @@ -10,7 +10,7 @@ "compile": "hardhat compile --force;", "build:package": "yarn compile; rm -Rf dist/*; tsc --project tsconfig.build.json", "build:ci": "yarn build:package && yarn rebuild:sandbox && yarn copy:assets", - "copy:assets": "mkdir -p dist/sandbox/foundry/bin; cp sandbox/foundry/bin/gitkeep dist/sandbox/foundry/bin/gitkeep; cp sandbox/state.json dist/sandbox/; cp sandbox/foundry/foundryup.sh dist/sandbox/foundry; cp uns-config.json dist/; cp ens-config.json dist/;", + "copy:assets": "mkdir -p dist/sandbox/foundry/bin; cp sandbox/foundry/bin/.gitkeep dist/sandbox/foundry/bin/.gitkeep; cp sandbox/state.json dist/sandbox/; cp sandbox/foundry/foundryup.sh dist/sandbox/foundry; cp uns-config.json dist/; cp ens-config.json dist/;", "compile:size": "env ENABLE_CONTRACT_SIZER=true yarn compile", "coverage": "hardhat coverage", "test": "yarn test:sol && yarn test:sandbox", diff --git a/sandbox/anvil-server.ts b/sandbox/anvil-server.ts index 0c301130..086c8536 100644 --- a/sandbox/anvil-server.ts +++ b/sandbox/anvil-server.ts @@ -38,7 +38,7 @@ const ANVIL_ARGUMENTS_MAP: Record; diff --git a/sandbox/foundry/bin/.gitignore b/sandbox/foundry/bin/.gitignore index 4da2e760..bf27f311 100644 --- a/sandbox/foundry/bin/.gitignore +++ b/sandbox/foundry/bin/.gitignore @@ -1,3 +1,3 @@ * !.gitignore -!gitkeep +!.gitkeep diff --git a/sandbox/foundry/bin/gitkeep b/sandbox/foundry/bin/.gitkeep similarity index 100% rename from sandbox/foundry/bin/gitkeep rename to sandbox/foundry/bin/.gitkeep diff --git a/tsconfig.json b/tsconfig.json index b8a01327..2e9267cc 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -32,9 +32,6 @@ "./test/**/*.ts", ], "exclude": [ - "./sandbox/foundry/bin/anvil", - "./sandbox/foundry/bin/cast", - "./sandbox/foundry/bin/chisel", - "./sandbox/foundry/bin/forge", + "./sandbox/foundry/bin/*", ], }

$~D?>C;UwI{(`=Km9m8} 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%0DufPU`NdD|#v?d`>x3{{LdN^ThPYI{`A_|xU!{ht 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 - stopServer(): Promise; - private validateAndTransformOptions; - private snakeCase; -} -//# sourceMappingURL=ganache-service.d.ts.map \ No newline at end of file diff --git a/dist/sandbox/ganache-service.d.ts.map b/dist/sandbox/ganache-service.d.ts.map deleted file mode 100644 index eb0bdbb4..00000000 --- a/dist/sandbox/ganache-service.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ganache-service.d.ts","sourceRoot":"","sources":["../../sandbox/ganache-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,MAAM,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAI1E,oBAAY,mBAAmB,GAAG,aAAa,GAAG;IAChD,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,qBAAa,cAAc;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,gBAAgB,CAAC;IAElC,OAAO,CAAC,OAAO,CAAsB;gBAExB,OAAO,EAAE,mBAAmB;IAMzC,WAAW;IAUX,UAAU;IAIV,OAAO,CAAC,2BAA2B;IAuBnC,OAAO,CAAC,SAAS;CAGlB"} \ No newline at end of file diff --git a/dist/sandbox/ganache-service.js b/dist/sandbox/ganache-service.js deleted file mode 100644 index ec290806..00000000 --- a/dist/sandbox/ganache-service.js +++ /dev/null @@ -1,43 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.GanacheService = void 0; -const ganache_1 = require("ganache"); -const DEFAULT_PORT = 7545; -class GanacheService { - constructor(options) { - this.options = this.validateAndTransformOptions(options); - this.server = (0, ganache_1.server)(this.options); - this.provider = this.server.provider; - } - startServer() { - const { port } = this.options; - if (!port) { - throw new Error('Port sohuld be defined in the ServerConfigOptions URL'); - } - return this.server.listen(port); - } - stopServer() { - return this.server.close(); - } - validateAndTransformOptions(options) { - const validatedOptions = options; - const url = new URL(options.url); - if (url.hostname !== 'localhost' && url.hostname !== '127.0.0.1') { - throw new Error('Ganache network only works with localhost'); - } - validatedOptions.hostname = url.hostname; - validatedOptions.port = url.port !== undefined && url.port !== '' ? parseInt(url.port, 10) : DEFAULT_PORT; - const optionsToInclude = ['accountsKeyPath', 'dbPath', 'defaultBalanceEther', 'totalAccounts', 'unlockedAccounts']; - for (const [key, value] of Object.entries(options)) { - if (value !== undefined && optionsToInclude.includes(key)) { - validatedOptions[this.snakeCase(key)] = value; - delete validatedOptions[key]; - } - } - return validatedOptions; - } - snakeCase(value) { - return value.replace(/([A-Z]){1}/g, (match) => `_${match.toLowerCase()}`); - } -} -exports.GanacheService = GanacheService; diff --git a/dist/sandbox/index.d.ts b/dist/sandbox/index.d.ts deleted file mode 100644 index 5d4dc8f4..00000000 --- a/dist/sandbox/index.d.ts +++ /dev/null @@ -1,57 +0,0 @@ -import type { HttpNetworkUserConfig } from 'hardhat/types'; -import { GanacheService } from './ganache-service'; -export declare type SandboxNetworkOptions = { - url: string; - port?: number; - hostname?: string; - chainId: number; - hardfork: string; - gasPrice: number; - gasLimit: number; - allowUnlimitedContractSize: boolean; - locked: boolean; - mnemonic: string; - hdPath: string; - totalAccounts: number; - defaultBalanceEther: number; - dbPath: string; - snapshotPath: string; - keepAliveTimeout: number; - vmErrorsOnRpcResponse: boolean; - logger: { - log: (message: string) => void; - }; -}; -export declare type SandboxOptions = { - verbose?: boolean; - clean?: boolean; - extract?: boolean; - network?: Partial; -}; -export declare type SandboxStartOptions = { - noSnapshot?: boolean; -}; -export declare type SandboxAccount = { - address: string; - privateKey: string; -}; -export declare class Sandbox { - static defaultNetworkOptions(): HttpNetworkUserConfig; - static start(options?: SandboxOptions): Promise; - static create(options: SandboxOptions): Promise; - version: string; - accounts: Record; - options: SandboxOptions; - private ganacheService; - private provider; - private snapshotId?; - constructor(service: GanacheService, options?: SandboxOptions); - start(options?: SandboxStartOptions): Promise; - stop(): Promise; - reset(): Promise; - private snapshot; - private revert; - private getAccounts; - private uncompressedPublicKeyToAddress; -} -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/sandbox/index.d.ts.map b/dist/sandbox/index.d.ts.map deleted file mode 100644 index e66ca737..00000000 --- a/dist/sandbox/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../sandbox/index.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAE3D,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAInD,oBAAY,qBAAqB,GAAG;IAClC,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,0BAA0B,EAAE,OAAO,CAAC;IACpC,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,qBAAqB,EAAE,OAAO,CAAC;IAC/B,MAAM,EAAE;QAAE,GAAG,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;KAAE,CAAC;CAC5C,CAAC;AAEF,oBAAY,cAAc,GAAG;IAC3B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC,qBAAqB,CAAC,CAAC;CAC1C,CAAC;AAEF,oBAAY,mBAAmB,GAAG;IAChC,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB,CAAC;AAEF,oBAAY,cAAc,GAAG;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAqBF,qBAAa,OAAO;IAClB,MAAM,CAAC,qBAAqB,IAAK,qBAAqB;WAYzC,KAAK,CAAE,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,OAAO,CAAC;WAMtD,MAAM,CAAE,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC;IAmC/D,OAAO,EAAE,MAAM,CAAC;IACT,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IACzC,OAAO,EAAE,cAAc,CAAC;IAE/B,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,QAAQ,CAAmB;IACnC,OAAO,CAAC,UAAU,CAAC,CAAS;gBAEf,OAAO,EAAE,cAAc,EAAE,OAAO,GAAE,cAAmB;IAyB5D,KAAK,CAAE,OAAO,GAAE,mBAA2C,GAAG,OAAO,CAAC,IAAI,CAAC;IAU3E,IAAI,IAAK,OAAO,CAAC,IAAI,CAAC;IAYtB,KAAK,IAAK,OAAO,CAAC,IAAI,CAAC;YAYf,QAAQ;YAIR,MAAM;IAIpB,OAAO,CAAC,WAAW;IAkBnB,OAAO,CAAC,8BAA8B;CAUvC"} \ No newline at end of file diff --git a/dist/sandbox/index.js b/dist/sandbox/index.js deleted file mode 100644 index c1686974..00000000 --- a/dist/sandbox/index.js +++ /dev/null @@ -1,173 +0,0 @@ -"use strict"; -var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { - function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } - return new (P || (P = Promise))(function (resolve, reject) { - function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } - function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } - function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); -}; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.Sandbox = void 0; -const fs_1 = __importDefault(require("fs")); -const path_1 = __importDefault(require("path")); -const tar_1 = __importDefault(require("tar")); -const hdkey_1 = __importDefault(require("hdkey")); -const bip39_1 = require("bip39"); -const secp256k1_1 = __importDefault(require("secp256k1")); -const keccak_1 = __importDefault(require("keccak")); -const debug_1 = __importDefault(require("debug")); -const utils_1 = require("../src/utils"); -const ganache_service_1 = require("./ganache-service"); -const log = (0, debug_1.default)('UNS:sandbox'); -const DEFAULT_SERVER_CONFIG = { - url: 'http://localhost:7545', - gasPrice: 20000000000, - gasLimit: 6721975, - defaultBalanceEther: 1000, - totalAccounts: 10, - hardfork: 'london', - allowUnlimitedContractSize: false, - locked: false, - hdPath: 'm/44\'/60\'/0\'/0/', - keepAliveTimeout: 5000, - mnemonic: 'mimic dune forward party defy island absorb insane deputy obvious brother immense', - chainId: 1337, - dbPath: './.sandbox', - snapshotPath: path_1.default.join(__dirname, 'db.tgz'), - vmErrorsOnRpcResponse: true, - logger: { log: () => { } }, -}; -class Sandbox { - constructor(service, options = {}) { - this.ganacheService = service; - this.options = options; - this.provider = service.provider; - this.snapshotId = undefined; - this.version = '0.6'; - const accounts = this.getAccounts((0, utils_1.unwrap)(this.options, 'network')); - this.accounts || (this.accounts = { - owner: accounts[0], - minter: accounts[1], - faucet: accounts[9], - }); - accounts.forEach((account, index) => { - this.accounts[index] = account; - }); - log('Initialized sandbox', { - options: this.options, - accounts: this.accounts, - }); - } - static defaultNetworkOptions() { - return { - url: DEFAULT_SERVER_CONFIG.url, - chainId: DEFAULT_SERVER_CONFIG.chainId, - accounts: { - mnemonic: DEFAULT_SERVER_CONFIG.mnemonic, - path: DEFAULT_SERVER_CONFIG.hdPath, - count: DEFAULT_SERVER_CONFIG.totalAccounts, - }, - }; - } - static start(options = {}) { - return __awaiter(this, void 0, void 0, function* () { - const sandbox = yield Sandbox.create(options); - yield sandbox.start(); - return sandbox; - }); - } - static create(options) { - return __awaiter(this, void 0, void 0, function* () { - options = Object.assign({ clean: true, extract: true, verbose: false }, options); - const networkOptions = Object.assign(Object.assign({}, DEFAULT_SERVER_CONFIG), options.network); - if (options.verbose) { - debug_1.default.enable('UNS:sandbox*'); - } - const { dbPath, snapshotPath } = networkOptions; - if (options.clean) { - if (fs_1.default.existsSync(dbPath)) { - fs_1.default.rmdirSync(dbPath, { recursive: true }); - } - fs_1.default.mkdirSync(dbPath, { recursive: true }); - log(`Cleaned sandbox database. Path: ${dbPath}`); - } - if (options.extract) { - yield tar_1.default.extract({ cwd: dbPath, file: snapshotPath }); - log(`Prepared sandbox database. [Source: ${snapshotPath}, TargetDir: ${dbPath}]`); - } - const service = new ganache_service_1.GanacheService(Object.assign({}, networkOptions)); - return new Sandbox(service, Object.assign(Object.assign({}, options), { network: networkOptions })); - }); - } - start(options = { noSnapshot: false }) { - return __awaiter(this, void 0, void 0, function* () { - yield this.ganacheService.startServer(); - log('Started sandbox'); - if (options.noSnapshot) - return; - this.snapshotId = yield this.snapshot(); - log('Created snapshot', this.snapshotId); - }); - } - stop() { - return __awaiter(this, void 0, void 0, function* () { - try { - yield this.ganacheService.stopServer(); - log('Stopped sandbox'); - } - catch (e) { - if (e.message.includes('Server is not running')) { - return; - } - throw e; - } - }); - } - reset() { - return __awaiter(this, void 0, void 0, function* () { - if (!this.snapshotId) { - throw new Error('Snapshot not found. Most probably Sandbox has not been started.'); - } - yield this.revert(this.snapshotId); - log('Reverted snapshot', this.snapshotId); - this.snapshotId = yield this.snapshot(); - log('Created snapshot', this.snapshotId); - }); - } - snapshot() { - return __awaiter(this, void 0, void 0, function* () { - return yield this.provider.send('evm_snapshot'); - }); - } - revert(snapshotId) { - return __awaiter(this, void 0, void 0, function* () { - return yield this.provider.send('evm_revert', [snapshotId]); - }); - } - getAccounts(options) { - const { mnemonic, hdPath, totalAccounts } = options; - const hdKey = hdkey_1.default.fromMasterSeed((0, bip39_1.mnemonicToSeedSync)(mnemonic)); - const accounts = Array(totalAccounts); - for (let index = 0; index < totalAccounts; index++) { - const acc = hdKey.derive(hdPath + index); - accounts[index] = { - privateKey: '0x' + acc.privateKey.toString('hex'), - address: '0x' + this.uncompressedPublicKeyToAddress(acc.publicKey), - }; - } - return accounts; - } - uncompressedPublicKeyToAddress(uncompressedPublicKey) { - var _a; - const compresedPublicKey = secp256k1_1.default.publicKeyConvert(uncompressedPublicKey, false).slice(1); - const hasher = (0, keccak_1.default)('keccak256'); - (_a = hasher['_state']) === null || _a === void 0 ? void 0 : _a.absorb(compresedPublicKey); - return hasher.digest().subarray(-20).toString('hex'); - } -} -exports.Sandbox = Sandbox; diff --git a/dist/src/config.d.ts b/dist/src/config.d.ts deleted file mode 100644 index 4a17db44..00000000 --- a/dist/src/config.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { NsConfig, NsNetworkConfig } from './types'; -export declare enum NameService { - UNS = "UNS", - ENS = "ENS" -} -export declare function getConfig(nameService?: NameService): NsConfig; -export declare function getNetworkConfig(chainId: number, nameService?: NameService): NsNetworkConfig; -export declare function mergeNetworkConfig(config: NsConfig, nameService?: NameService): void; -//# sourceMappingURL=config.d.ts.map \ No newline at end of file diff --git a/dist/src/config.d.ts.map b/dist/src/config.d.ts.map deleted file mode 100644 index 1d1b572b..00000000 --- a/dist/src/config.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAEpD,oBAAY,WAAW;IACrB,GAAG,QAAQ;IACX,GAAG,QAAQ;CACZ;AAOD,wBAAgB,SAAS,CAAE,WAAW,cAAkB,GAAG,QAAQ,CAIlE;AAED,wBAAgB,gBAAgB,CAAE,OAAO,EAAE,MAAM,EAAE,WAAW,cAAkB,GAAG,eAAe,CAGjG;AAED,wBAAgB,kBAAkB,CAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,cAAkB,QAGlF"} \ No newline at end of file diff --git a/dist/src/config.js b/dist/src/config.js deleted file mode 100644 index 0b160307..00000000 --- a/dist/src/config.js +++ /dev/null @@ -1,33 +0,0 @@ -"use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.mergeNetworkConfig = exports.getNetworkConfig = exports.getConfig = exports.NameService = void 0; -const fs_1 = __importDefault(require("fs")); -const lodash_1 = require("lodash"); -var NameService; -(function (NameService) { - NameService["UNS"] = "UNS"; - NameService["ENS"] = "ENS"; -})(NameService = exports.NameService || (exports.NameService = {})); -const configPathMap = { - UNS: './uns-config.json', - ENS: './ens-config.json', -}; -function getConfig(nameService = NameService.UNS) { - const path = configPathMap[nameService]; - const file = fs_1.default.existsSync(path) ? fs_1.default.readFileSync(path).toString() : '{}'; - return JSON.parse(file.length ? file : '{}'); -} -exports.getConfig = getConfig; -function getNetworkConfig(chainId, nameService = NameService.UNS) { - const { networks } = getConfig(nameService); - return networks[chainId]; -} -exports.getNetworkConfig = getNetworkConfig; -function mergeNetworkConfig(config, nameService = NameService.UNS) { - const _config = (0, lodash_1.merge)(getConfig(nameService), config); - fs_1.default.writeFileSync(configPathMap[nameService], `${JSON.stringify(_config, null, 4)}\n`); -} -exports.mergeNetworkConfig = mergeNetworkConfig; diff --git a/dist/src/types.d.ts b/dist/src/types.d.ts deleted file mode 100644 index ee4d59f0..00000000 --- a/dist/src/types.d.ts +++ /dev/null @@ -1,101 +0,0 @@ -export declare enum ArtifactName { - CNSRegistry = "CNSRegistry", - CNSRegistryForwarder = "CNSRegistryForwarder", - SignatureController = "SignatureController", - MintingController = "MintingController", - URIPrefixController = "URIPrefixController", - Resolver = "dot-crypto/contracts/Resolver.sol:Resolver", - ResolverForwarder = "ResolverForwarder", - UNSRegistry = "UNSRegistry", - MintingManager = "MintingManager", - UNSOperator = "UNSOperator", - MintingManagerForwarder = "MintingManagerForwarder", - ProxyReader = "contracts/ProxyReader.sol:ProxyReader", - DummyStateSender = "DummyStateSender", - CheckpointManager = "SimpleCheckpointManager", - MintableERC721Predicate = "MintableERC721Predicate", - RootChainManager = "RootChainManager", - DotCoinBurner = "DotCoinBurner", - ZilliqaRecover = "ZilliqaRecover", - ENSRegistry = "ENSRegistry", - BaseRegistrarImplementation = "BaseRegistrarImplementation", - ReverseRegistrar = "ReverseRegistrar", - NameWrapper = "NameWrapper", - DummyOracle = "DummyOracle", - StablePriceOracle = "StablePriceOracle", - ETHRegistrarController = "ETHRegistrarController", - PublicResolver = "PublicResolver", - ENSCustody = "ENSCustody", - LegacyENSRegistry = "LegacyENSRegistry", - LegacyETHRegistrarController = "LegacyETHRegistrarController", - DNSRegistrar = "DNSRegistrar", - DNSSECImpl = "DNSSECImpl", - TLDPublicSuffixList = "TLDPublicSuffixList", - RSASHA256Algorithm = "RSASHA256Algorithm", - DummyAlgorithm = "DummyAlgorithm", - SHA1Digest = "SHA1Digest", - SHA256Digest = "SHA256Digest", - SHA1NSEC3Digest = "SHA1NSEC3Digest", - Root = "Root" -} -export declare enum UnsContractName { - UNSRegistry = "UNSRegistry", - CNSRegistry = "CNSRegistry", - MintingManager = "MintingManager", - UNSOperator = "UNSOperator", - ProxyAdmin = "ProxyAdmin", - SignatureController = "SignatureController", - MintingController = "MintingController", - WhitelistedMinter = "WhitelistedMinter", - URIPrefixController = "URIPrefixController", - DomainZoneController = "DomainZoneController", - Resolver = "Resolver", - ProxyReader = "ProxyReader", - TwitterValidationOperator = "TwitterValidationOperator", - FreeMinter = "FreeMinter", - MintableERC721Predicate = "MintableERC721Predicate", - RootChainManager = "RootChainManager", - DotCoinBurner = "DotCoinBurner", - ZilliqaRecover = "ZilliqaRecover" -} -export declare enum EnsContractName { - ENSRegistry = "ENSRegistry", - BaseRegistrarImplementation = "BaseRegistrarImplementation", - ReverseRegistrar = "ReverseRegistrar", - NameWrapper = "NameWrapper", - DummyOracle = "DummyOracle", - StablePriceOracle = "StablePriceOracle", - ETHRegistrarController = "ETHRegistrarController", - PublicResolver = "PublicResolver", - ENSCustody = "ENSCustody", - LegacyENSRegistry = "LegacyENSRegistry", - LegacyETHRegistrarController = "LegacyETHRegistrarController", - DNSRegistrar = "DNSRegistrar", - DNSSECImpl = "DNSSECImpl", - Root = "Root" -} -export declare type ContractName = EnsContractName | UnsContractName; -export declare type ContractConfig = { - address: string; - legacyAddresses: string[]; - deploymentBlock: string; - implementation?: string; - forwarder?: string; - deprecated?: boolean; -}; -export declare type NsNetworkConfig = { - contracts: ContractConfigMap; -}; -export declare type ContractConfigMap = { - [k in ContractName]: ContractConfig; -}; -export declare type NsConfig = { - version?: string; - networks: { - [chainId: number]: NsNetworkConfig; - }; -}; -export declare type DependenciesMap = { - [k in ArtifactName]?: ContractConfig; -}; -//# sourceMappingURL=types.d.ts.map \ No newline at end of file diff --git a/dist/src/types.d.ts.map b/dist/src/types.d.ts.map deleted file mode 100644 index b0d8f8ca..00000000 --- a/dist/src/types.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAIA,oBAAY,YAAY;IACtB,WAAW,gBAAgB;IAC3B,oBAAoB,yBAAyB;IAC7C,mBAAmB,wBAAwB;IAC3C,iBAAiB,sBAAsB;IACvC,mBAAmB,wBAAwB;IAC3C,QAAQ,+CAA+C;IACvD,iBAAiB,sBAAsB;IACvC,WAAW,gBAAgB;IAC3B,cAAc,mBAAmB;IACjC,WAAW,gBAAgB;IAC3B,uBAAuB,4BAA4B;IACnD,WAAW,0CAA0C;IACrD,gBAAgB,qBAAqB;IACrC,iBAAiB,4BAA4B;IAC7C,uBAAuB,4BAA4B;IACnD,gBAAgB,qBAAqB;IACrC,aAAa,kBAAkB;IAC/B,cAAc,mBAAmB;IAGjC,WAAW,gBAAgB;IAC3B,2BAA2B,gCAAgC;IAC3D,gBAAgB,qBAAqB;IACrC,WAAW,gBAAgB;IAC3B,WAAW,gBAAgB;IAC3B,iBAAiB,sBAAsB;IACvC,sBAAsB,2BAA2B;IACjD,cAAc,mBAAmB;IACjC,UAAU,eAAe;IACzB,iBAAiB,sBAAsB;IACvC,4BAA4B,iCAAiC;IAC7D,YAAY,iBAAiB;IAC7B,UAAU,eAAe;IACzB,mBAAmB,wBAAwB;IAC3C,kBAAkB,uBAAuB;IACzC,cAAc,mBAAmB;IACjC,UAAU,eAAe;IACzB,YAAY,iBAAiB;IAC7B,eAAe,oBAAoB;IACnC,IAAI,SAAS;CACd;AAED,oBAAY,eAAe;IACzB,WAAW,gBAAgB;IAC3B,WAAW,gBAAgB;IAC3B,cAAc,mBAAmB;IACjC,WAAW,gBAAgB;IAC3B,UAAU,eAAe;IACzB,mBAAmB,wBAAwB;IAC3C,iBAAiB,sBAAsB;IACvC,iBAAiB,sBAAsB;IACvC,mBAAmB,wBAAwB;IAC3C,oBAAoB,yBAAyB;IAC7C,QAAQ,aAAa;IACrB,WAAW,gBAAgB;IAC3B,yBAAyB,8BAA8B;IACvD,UAAU,eAAe;IACzB,uBAAuB,4BAA4B;IACnD,gBAAgB,qBAAqB;IACrC,aAAa,kBAAkB;IAC/B,cAAc,mBAAmB;CAClC;AAED,oBAAY,eAAe;IACzB,WAAW,gBAAgB;IAC3B,2BAA2B,gCAAgC;IAC3D,gBAAgB,qBAAqB;IACrC,WAAW,gBAAgB;IAC3B,WAAW,gBAAgB;IAC3B,iBAAiB,sBAAsB;IACvC,sBAAsB,2BAA2B;IACjD,cAAc,mBAAmB;IACjC,UAAU,eAAe;IACzB,iBAAiB,sBAAsB;IACvC,4BAA4B,iCAAiC;IAC7D,YAAY,iBAAiB;IAC7B,UAAU,eAAe;IACzB,IAAI,SAAS;CACd;AAED,oBAAY,YAAY,GAAG,eAAe,GAAG,eAAe,CAAC;AAE7D,oBAAY,cAAc,GAAG;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,eAAe,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB,CAAA;AAED,oBAAY,eAAe,GAAG;IAC5B,SAAS,EAAE,iBAAiB,CAAA;CAC7B,CAAA;AAED,oBAAY,iBAAiB,GAAG;KAC7B,CAAC,IAAI,YAAY,GAAG,cAAc;CACpC,CAAA;AAED,oBAAY,QAAQ,GAAG;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE;QACR,CAAC,OAAO,EAAE,MAAM,GAAG,eAAe,CAAA;KACnC,CAAC;CACH,CAAA;AAED,oBAAY,eAAe,GAAG;KAC3B,CAAC,IAAI,YAAY,CAAC,CAAC,EAAE,cAAc;CACrC,CAAA"} \ No newline at end of file diff --git a/dist/src/types.js b/dist/src/types.js deleted file mode 100644 index a9a38925..00000000 --- a/dist/src/types.js +++ /dev/null @@ -1,82 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.EnsContractName = exports.UnsContractName = exports.ArtifactName = void 0; -var ArtifactName; -(function (ArtifactName) { - ArtifactName["CNSRegistry"] = "CNSRegistry"; - ArtifactName["CNSRegistryForwarder"] = "CNSRegistryForwarder"; - ArtifactName["SignatureController"] = "SignatureController"; - ArtifactName["MintingController"] = "MintingController"; - ArtifactName["URIPrefixController"] = "URIPrefixController"; - ArtifactName["Resolver"] = "dot-crypto/contracts/Resolver.sol:Resolver"; - ArtifactName["ResolverForwarder"] = "ResolverForwarder"; - ArtifactName["UNSRegistry"] = "UNSRegistry"; - ArtifactName["MintingManager"] = "MintingManager"; - ArtifactName["UNSOperator"] = "UNSOperator"; - ArtifactName["MintingManagerForwarder"] = "MintingManagerForwarder"; - ArtifactName["ProxyReader"] = "contracts/ProxyReader.sol:ProxyReader"; - ArtifactName["DummyStateSender"] = "DummyStateSender"; - ArtifactName["CheckpointManager"] = "SimpleCheckpointManager"; - ArtifactName["MintableERC721Predicate"] = "MintableERC721Predicate"; - ArtifactName["RootChainManager"] = "RootChainManager"; - ArtifactName["DotCoinBurner"] = "DotCoinBurner"; - ArtifactName["ZilliqaRecover"] = "ZilliqaRecover"; - ArtifactName["ENSRegistry"] = "ENSRegistry"; - ArtifactName["BaseRegistrarImplementation"] = "BaseRegistrarImplementation"; - ArtifactName["ReverseRegistrar"] = "ReverseRegistrar"; - ArtifactName["NameWrapper"] = "NameWrapper"; - ArtifactName["DummyOracle"] = "DummyOracle"; - ArtifactName["StablePriceOracle"] = "StablePriceOracle"; - ArtifactName["ETHRegistrarController"] = "ETHRegistrarController"; - ArtifactName["PublicResolver"] = "PublicResolver"; - ArtifactName["ENSCustody"] = "ENSCustody"; - ArtifactName["LegacyENSRegistry"] = "LegacyENSRegistry"; - ArtifactName["LegacyETHRegistrarController"] = "LegacyETHRegistrarController"; - ArtifactName["DNSRegistrar"] = "DNSRegistrar"; - ArtifactName["DNSSECImpl"] = "DNSSECImpl"; - ArtifactName["TLDPublicSuffixList"] = "TLDPublicSuffixList"; - ArtifactName["RSASHA256Algorithm"] = "RSASHA256Algorithm"; - ArtifactName["DummyAlgorithm"] = "DummyAlgorithm"; - ArtifactName["SHA1Digest"] = "SHA1Digest"; - ArtifactName["SHA256Digest"] = "SHA256Digest"; - ArtifactName["SHA1NSEC3Digest"] = "SHA1NSEC3Digest"; - ArtifactName["Root"] = "Root"; -})(ArtifactName = exports.ArtifactName || (exports.ArtifactName = {})); -var UnsContractName; -(function (UnsContractName) { - UnsContractName["UNSRegistry"] = "UNSRegistry"; - UnsContractName["CNSRegistry"] = "CNSRegistry"; - UnsContractName["MintingManager"] = "MintingManager"; - UnsContractName["UNSOperator"] = "UNSOperator"; - UnsContractName["ProxyAdmin"] = "ProxyAdmin"; - UnsContractName["SignatureController"] = "SignatureController"; - UnsContractName["MintingController"] = "MintingController"; - UnsContractName["WhitelistedMinter"] = "WhitelistedMinter"; - UnsContractName["URIPrefixController"] = "URIPrefixController"; - UnsContractName["DomainZoneController"] = "DomainZoneController"; - UnsContractName["Resolver"] = "Resolver"; - UnsContractName["ProxyReader"] = "ProxyReader"; - UnsContractName["TwitterValidationOperator"] = "TwitterValidationOperator"; - UnsContractName["FreeMinter"] = "FreeMinter"; - UnsContractName["MintableERC721Predicate"] = "MintableERC721Predicate"; - UnsContractName["RootChainManager"] = "RootChainManager"; - UnsContractName["DotCoinBurner"] = "DotCoinBurner"; - UnsContractName["ZilliqaRecover"] = "ZilliqaRecover"; -})(UnsContractName = exports.UnsContractName || (exports.UnsContractName = {})); -var EnsContractName; -(function (EnsContractName) { - EnsContractName["ENSRegistry"] = "ENSRegistry"; - EnsContractName["BaseRegistrarImplementation"] = "BaseRegistrarImplementation"; - EnsContractName["ReverseRegistrar"] = "ReverseRegistrar"; - EnsContractName["NameWrapper"] = "NameWrapper"; - EnsContractName["DummyOracle"] = "DummyOracle"; - EnsContractName["StablePriceOracle"] = "StablePriceOracle"; - EnsContractName["ETHRegistrarController"] = "ETHRegistrarController"; - EnsContractName["PublicResolver"] = "PublicResolver"; - EnsContractName["ENSCustody"] = "ENSCustody"; - EnsContractName["LegacyENSRegistry"] = "LegacyENSRegistry"; - EnsContractName["LegacyETHRegistrarController"] = "LegacyETHRegistrarController"; - EnsContractName["DNSRegistrar"] = "DNSRegistrar"; - EnsContractName["DNSSECImpl"] = "DNSSECImpl"; - EnsContractName["Root"] = "Root"; -})(EnsContractName = exports.EnsContractName || (exports.EnsContractName = {})); diff --git a/dist/src/utils.d.ts b/dist/src/utils.d.ts deleted file mode 100644 index 9326fc1b..00000000 --- a/dist/src/utils.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import type { ContractConfig, ContractName, DependenciesMap } from './types'; -export declare function unwrap(object: object, key: string): any; -export declare function unwrapDependencies(dependencies: DependenciesMap, keys: ContractName[]): ContractConfig[]; -export declare function notNullSha(value: string): string; -//# sourceMappingURL=utils.d.ts.map \ No newline at end of file diff --git a/dist/src/utils.d.ts.map b/dist/src/utils.d.ts.map deleted file mode 100644 index 017ed157..00000000 --- a/dist/src/utils.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAG7E,wBAAgB,MAAM,CAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,GAAG,CAMxD;AAED,wBAAgB,kBAAkB,CAAE,YAAY,EAAE,eAAe,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,cAAc,EAAE,CAEzG;AAED,wBAAgB,UAAU,CAAE,KAAK,EAAE,MAAM,UAOxC"} \ No newline at end of file diff --git a/dist/src/utils.js b/dist/src/utils.js deleted file mode 100644 index 4c3dcf6b..00000000 --- a/dist/src/utils.js +++ /dev/null @@ -1,23 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.notNullSha = exports.unwrapDependencies = exports.unwrap = void 0; -const web3_utils_1 = require("web3-utils"); -function unwrap(object, key) { - if (!object[key]) { - throw new Error(`Unwrap: cannot find key ${key} on object ${object.toString()}`); - } - return object[key]; -} -exports.unwrap = unwrap; -function unwrapDependencies(dependencies, keys) { - return keys.map((key) => unwrap(dependencies, key)); -} -exports.unwrapDependencies = unwrapDependencies; -function notNullSha(value) { - const res = (0, web3_utils_1.sha3)(value); - if (!res) { - throw new Error('notNullSha: SHA returns null'); - } - return res; -} -exports.notNullSha = notNullSha; diff --git a/dist/types/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils.d.ts deleted file mode 100644 index 64d1db82..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils.d.ts +++ /dev/null @@ -1,21 +0,0 @@ -import type { BaseContract, FunctionFragment, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener } from "../../../../common"; -export interface BytesUtilsInterface extends Interface { -} -export interface BytesUtils extends BaseContract { - connect(runner?: ContractRunner | null): BytesUtils; - waitForDeployment(): Promise; - interface: BytesUtilsInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - getFunction(key: string | FunctionFragment): T; - filters: {}; -} -//# sourceMappingURL=BytesUtils.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils.d.ts.map deleted file mode 100644 index cc772b7b..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"BytesUtils.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,gBAAgB,EAChB,SAAS,EACT,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,aAAa,EACd,MAAM,oBAAoB,CAAC;AAE5B,MAAM,WAAW,mBAAoB,SAAQ,SAAS;CAAG;AAEzD,MAAM,WAAW,UAAW,SAAQ,YAAY;IAC9C,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,UAAU,CAAC;IACpD,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,mBAAmB,CAAC;IAE/B,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,OAAO,EAAE,EAAE,CAAC;CACb"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils.js b/dist/types/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/dnssec-oracle/index.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/dnssec-oracle/index.d.ts deleted file mode 100644 index 899ea03a..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/dnssec-oracle/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export type { BytesUtils } from "./BytesUtils"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/dnssec-oracle/index.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/dnssec-oracle/index.d.ts.map deleted file mode 100644 index 3ddab7c9..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/dnssec-oracle/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/dnssec-oracle/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/dnssec-oracle/index.js b/dist/types/@ensdomains/ens-contracts/contracts/dnssec-oracle/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/dnssec-oracle/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation.d.ts deleted file mode 100644 index acb74773..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation.d.ts +++ /dev/null @@ -1,434 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; -export interface BaseRegistrarImplementationInterface extends Interface { - getFunction(nameOrSignature: "GRACE_PERIOD" | "addController" | "approve" | "available" | "balanceOf" | "baseNode" | "controllers" | "ens" | "getApproved" | "isApprovedForAll" | "name" | "nameExpires" | "owner" | "ownerOf" | "reclaim" | "register" | "registerOnly" | "removeController" | "renew" | "renounceOwnership" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "setApprovalForAll" | "setResolver" | "supportsInterface" | "symbol" | "tokenURI" | "transferFrom" | "transferOwnership"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "ControllerAdded" | "ControllerRemoved" | "NameMigrated" | "NameRegistered" | "NameRenewed" | "OwnershipTransferred" | "Transfer"): EventFragment; - encodeFunctionData(functionFragment: "GRACE_PERIOD", values?: undefined): string; - encodeFunctionData(functionFragment: "addController", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "available", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "baseNode", values?: undefined): string; - encodeFunctionData(functionFragment: "controllers", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "ens", values?: undefined): string; - encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "name", values?: undefined): string; - encodeFunctionData(functionFragment: "nameExpires", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "owner", values?: undefined): string; - encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "reclaim", values: [BigNumberish, AddressLike]): string; - encodeFunctionData(functionFragment: "register", values: [BigNumberish, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "registerOnly", values: [BigNumberish, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "removeController", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "renew", values: [BigNumberish, BigNumberish]): string; - encodeFunctionData(functionFragment: "renounceOwnership", values?: undefined): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; - encodeFunctionData(functionFragment: "setResolver", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "symbol", values?: undefined): string; - encodeFunctionData(functionFragment: "tokenURI", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "transferOwnership", values: [AddressLike]): string; - decodeFunctionResult(functionFragment: "GRACE_PERIOD", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "addController", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "available", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "baseNode", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "controllers", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ens", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "nameExpires", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "reclaim", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "register", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "registerOnly", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "removeController", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renew", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceOwnership", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setResolver", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "tokenURI", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result; -} -export declare namespace ApprovalEvent { - type InputTuple = [ - owner: AddressLike, - approved: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [owner: string, approved: string, tokenId: bigint]; - interface OutputObject { - owner: string; - approved: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ApprovalForAllEvent { - type InputTuple = [ - owner: AddressLike, - operator: AddressLike, - approved: boolean - ]; - type OutputTuple = [ - owner: string, - operator: string, - approved: boolean - ]; - interface OutputObject { - owner: string; - operator: string; - approved: boolean; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ControllerAddedEvent { - type InputTuple = [controller: AddressLike]; - type OutputTuple = [controller: string]; - interface OutputObject { - controller: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ControllerRemovedEvent { - type InputTuple = [controller: AddressLike]; - type OutputTuple = [controller: string]; - interface OutputObject { - controller: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NameMigratedEvent { - type InputTuple = [ - id: BigNumberish, - owner: AddressLike, - expires: BigNumberish - ]; - type OutputTuple = [id: bigint, owner: string, expires: bigint]; - interface OutputObject { - id: bigint; - owner: string; - expires: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NameRegisteredEvent { - type InputTuple = [ - id: BigNumberish, - owner: AddressLike, - expires: BigNumberish - ]; - type OutputTuple = [id: bigint, owner: string, expires: bigint]; - interface OutputObject { - id: bigint; - owner: string; - expires: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NameRenewedEvent { - type InputTuple = [id: BigNumberish, expires: BigNumberish]; - type OutputTuple = [id: bigint, expires: bigint]; - interface OutputObject { - id: bigint; - expires: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace OwnershipTransferredEvent { - type InputTuple = [previousOwner: AddressLike, newOwner: AddressLike]; - type OutputTuple = [previousOwner: string, newOwner: string]; - interface OutputObject { - previousOwner: string; - newOwner: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferEvent { - type InputTuple = [ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [from: string, to: string, tokenId: bigint]; - interface OutputObject { - from: string; - to: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface BaseRegistrarImplementation extends BaseContract { - connect(runner?: ContractRunner | null): BaseRegistrarImplementation; - waitForDeployment(): Promise; - interface: BaseRegistrarImplementationInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - GRACE_PERIOD: TypedContractMethod<[], [bigint], "view">; - addController: TypedContractMethod<[ - controller: AddressLike - ], [ - void - ], "nonpayable">; - approve: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - available: TypedContractMethod<[id: BigNumberish], [boolean], "view">; - balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; - baseNode: TypedContractMethod<[], [string], "view">; - controllers: TypedContractMethod<[arg0: AddressLike], [boolean], "view">; - ens: TypedContractMethod<[], [string], "view">; - getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - isApprovedForAll: TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - name: TypedContractMethod<[], [string], "view">; - nameExpires: TypedContractMethod<[id: BigNumberish], [bigint], "view">; - owner: TypedContractMethod<[], [string], "view">; - ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - reclaim: TypedContractMethod<[ - id: BigNumberish, - owner: AddressLike - ], [ - void - ], "nonpayable">; - register: TypedContractMethod<[ - id: BigNumberish, - owner: AddressLike, - duration: BigNumberish - ], [ - bigint - ], "nonpayable">; - registerOnly: TypedContractMethod<[ - id: BigNumberish, - owner: AddressLike, - duration: BigNumberish - ], [ - bigint - ], "nonpayable">; - removeController: TypedContractMethod<[ - controller: AddressLike - ], [ - void - ], "nonpayable">; - renew: TypedContractMethod<[ - id: BigNumberish, - duration: BigNumberish - ], [ - bigint - ], "nonpayable">; - renounceOwnership: TypedContractMethod<[], [void], "nonpayable">; - "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - setApprovalForAll: TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - setResolver: TypedContractMethod<[ - resolver: AddressLike - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceID: BytesLike - ], [ - boolean - ], "view">; - symbol: TypedContractMethod<[], [string], "view">; - tokenURI: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - transferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - transferOwnership: TypedContractMethod<[ - newOwner: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "GRACE_PERIOD"): TypedContractMethod<[], [bigint], "view">; - getFunction(nameOrSignature: "addController"): TypedContractMethod<[controller: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "approve"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "available"): TypedContractMethod<[id: BigNumberish], [boolean], "view">; - getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; - getFunction(nameOrSignature: "baseNode"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "controllers"): TypedContractMethod<[arg0: AddressLike], [boolean], "view">; - getFunction(nameOrSignature: "ens"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "nameExpires"): TypedContractMethod<[id: BigNumberish], [bigint], "view">; - getFunction(nameOrSignature: "owner"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "reclaim"): TypedContractMethod<[ - id: BigNumberish, - owner: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "register"): TypedContractMethod<[ - id: BigNumberish, - owner: AddressLike, - duration: BigNumberish - ], [ - bigint - ], "nonpayable">; - getFunction(nameOrSignature: "registerOnly"): TypedContractMethod<[ - id: BigNumberish, - owner: AddressLike, - duration: BigNumberish - ], [ - bigint - ], "nonpayable">; - getFunction(nameOrSignature: "removeController"): TypedContractMethod<[controller: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "renew"): TypedContractMethod<[ - id: BigNumberish, - duration: BigNumberish - ], [ - bigint - ], "nonpayable">; - getFunction(nameOrSignature: "renounceOwnership"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setResolver"): TypedContractMethod<[resolver: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceID: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "symbol"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "tokenURI"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "transferOwnership"): TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">; - getEvent(key: "Approval"): TypedContractEvent; - getEvent(key: "ApprovalForAll"): TypedContractEvent; - getEvent(key: "ControllerAdded"): TypedContractEvent; - getEvent(key: "ControllerRemoved"): TypedContractEvent; - getEvent(key: "NameMigrated"): TypedContractEvent; - getEvent(key: "NameRegistered"): TypedContractEvent; - getEvent(key: "NameRenewed"): TypedContractEvent; - getEvent(key: "OwnershipTransferred"): TypedContractEvent; - getEvent(key: "Transfer"): TypedContractEvent; - filters: { - "Approval(address,address,uint256)": TypedContractEvent; - Approval: TypedContractEvent; - "ApprovalForAll(address,address,bool)": TypedContractEvent; - ApprovalForAll: TypedContractEvent; - "ControllerAdded(address)": TypedContractEvent; - ControllerAdded: TypedContractEvent; - "ControllerRemoved(address)": TypedContractEvent; - ControllerRemoved: TypedContractEvent; - "NameMigrated(uint256,address,uint256)": TypedContractEvent; - NameMigrated: TypedContractEvent; - "NameRegistered(uint256,address,uint256)": TypedContractEvent; - NameRegistered: TypedContractEvent; - "NameRenewed(uint256,uint256)": TypedContractEvent; - NameRenewed: TypedContractEvent; - "OwnershipTransferred(address,address)": TypedContractEvent; - OwnershipTransferred: TypedContractEvent; - "Transfer(address,address,uint256)": TypedContractEvent; - Transfer: TypedContractEvent; - }; -} -//# sourceMappingURL=BaseRegistrarImplementation.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation.d.ts.map deleted file mode 100644 index 1e59e36d..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"BaseRegistrarImplementation.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation.js b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle.d.ts deleted file mode 100644 index 7ad4230c..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle.d.ts +++ /dev/null @@ -1,30 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; -export interface DummyOracleInterface extends Interface { - getFunction(nameOrSignature: "latestAnswer" | "set"): FunctionFragment; - encodeFunctionData(functionFragment: "latestAnswer", values?: undefined): string; - encodeFunctionData(functionFragment: "set", values: [BigNumberish]): string; - decodeFunctionResult(functionFragment: "latestAnswer", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "set", data: BytesLike): Result; -} -export interface DummyOracle extends BaseContract { - connect(runner?: ContractRunner | null): DummyOracle; - waitForDeployment(): Promise; - interface: DummyOracleInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - latestAnswer: TypedContractMethod<[], [bigint], "view">; - set: TypedContractMethod<[_value: BigNumberish], [void], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "latestAnswer"): TypedContractMethod<[], [bigint], "view">; - getFunction(nameOrSignature: "set"): TypedContractMethod<[_value: BigNumberish], [void], "nonpayable">; - filters: {}; -} -//# sourceMappingURL=DummyOracle.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle.d.ts.map deleted file mode 100644 index 3f19a598..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"DummyOracle.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle.js b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController.d.ts deleted file mode 100644 index bdeff9f6..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController.d.ts +++ /dev/null @@ -1,291 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; -export declare namespace IPriceOracle { - type PriceStruct = { - base: BigNumberish; - premium: BigNumberish; - }; - type PriceStructOutput = [base: bigint, premium: bigint] & { - base: bigint; - premium: bigint; - }; -} -export interface ETHRegistrarControllerInterface extends Interface { - getFunction(nameOrSignature: "MIN_REGISTRATION_DURATION" | "available" | "commit" | "commitments" | "makeCommitment" | "maxCommitmentAge" | "minCommitmentAge" | "nameWrapper" | "owner" | "prices" | "recoverFunds" | "register" | "renew" | "renounceOwnership" | "rentPrice" | "reverseRegistrar" | "supportsInterface" | "transferOwnership" | "valid" | "withdraw"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "NameRegistered" | "NameRenewed" | "OwnershipTransferred"): EventFragment; - encodeFunctionData(functionFragment: "MIN_REGISTRATION_DURATION", values?: undefined): string; - encodeFunctionData(functionFragment: "available", values: [string]): string; - encodeFunctionData(functionFragment: "commit", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "commitments", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "makeCommitment", values: [ - string, - AddressLike, - BigNumberish, - BytesLike, - AddressLike, - BytesLike[], - boolean, - BigNumberish - ]): string; - encodeFunctionData(functionFragment: "maxCommitmentAge", values?: undefined): string; - encodeFunctionData(functionFragment: "minCommitmentAge", values?: undefined): string; - encodeFunctionData(functionFragment: "nameWrapper", values?: undefined): string; - encodeFunctionData(functionFragment: "owner", values?: undefined): string; - encodeFunctionData(functionFragment: "prices", values?: undefined): string; - encodeFunctionData(functionFragment: "recoverFunds", values: [AddressLike, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "register", values: [ - string, - AddressLike, - BigNumberish, - BytesLike, - AddressLike, - BytesLike[], - boolean, - BigNumberish - ]): string; - encodeFunctionData(functionFragment: "renew", values: [string, BigNumberish]): string; - encodeFunctionData(functionFragment: "renounceOwnership", values?: undefined): string; - encodeFunctionData(functionFragment: "rentPrice", values: [string, BigNumberish]): string; - encodeFunctionData(functionFragment: "reverseRegistrar", values?: undefined): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "transferOwnership", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "valid", values: [string]): string; - encodeFunctionData(functionFragment: "withdraw", values?: undefined): string; - decodeFunctionResult(functionFragment: "MIN_REGISTRATION_DURATION", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "available", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "commit", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "commitments", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "makeCommitment", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "maxCommitmentAge", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "minCommitmentAge", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "nameWrapper", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "prices", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "recoverFunds", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "register", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renew", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceOwnership", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "rentPrice", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "reverseRegistrar", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "valid", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "withdraw", data: BytesLike): Result; -} -export declare namespace NameRegisteredEvent { - type InputTuple = [ - name: string, - label: BytesLike, - owner: AddressLike, - baseCost: BigNumberish, - premium: BigNumberish, - expires: BigNumberish - ]; - type OutputTuple = [ - name: string, - label: string, - owner: string, - baseCost: bigint, - premium: bigint, - expires: bigint - ]; - interface OutputObject { - name: string; - label: string; - owner: string; - baseCost: bigint; - premium: bigint; - expires: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NameRenewedEvent { - type InputTuple = [ - name: string, - label: BytesLike, - cost: BigNumberish, - expires: BigNumberish - ]; - type OutputTuple = [ - name: string, - label: string, - cost: bigint, - expires: bigint - ]; - interface OutputObject { - name: string; - label: string; - cost: bigint; - expires: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace OwnershipTransferredEvent { - type InputTuple = [previousOwner: AddressLike, newOwner: AddressLike]; - type OutputTuple = [previousOwner: string, newOwner: string]; - interface OutputObject { - previousOwner: string; - newOwner: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface ETHRegistrarController extends BaseContract { - connect(runner?: ContractRunner | null): ETHRegistrarController; - waitForDeployment(): Promise; - interface: ETHRegistrarControllerInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - MIN_REGISTRATION_DURATION: TypedContractMethod<[], [bigint], "view">; - available: TypedContractMethod<[name: string], [boolean], "view">; - commit: TypedContractMethod<[commitment: BytesLike], [void], "nonpayable">; - commitments: TypedContractMethod<[arg0: BytesLike], [bigint], "view">; - makeCommitment: TypedContractMethod<[ - name: string, - owner: AddressLike, - duration: BigNumberish, - secret: BytesLike, - resolver: AddressLike, - data: BytesLike[], - reverseRecord: boolean, - ownerControlledFuses: BigNumberish - ], [ - string - ], "view">; - maxCommitmentAge: TypedContractMethod<[], [bigint], "view">; - minCommitmentAge: TypedContractMethod<[], [bigint], "view">; - nameWrapper: TypedContractMethod<[], [string], "view">; - owner: TypedContractMethod<[], [string], "view">; - prices: TypedContractMethod<[], [string], "view">; - recoverFunds: TypedContractMethod<[ - _token: AddressLike, - _to: AddressLike, - _amount: BigNumberish - ], [ - void - ], "nonpayable">; - register: TypedContractMethod<[ - name: string, - owner: AddressLike, - duration: BigNumberish, - secret: BytesLike, - resolver: AddressLike, - data: BytesLike[], - reverseRecord: boolean, - ownerControlledFuses: BigNumberish - ], [ - void - ], "payable">; - renew: TypedContractMethod<[ - name: string, - duration: BigNumberish - ], [ - void - ], "payable">; - renounceOwnership: TypedContractMethod<[], [void], "nonpayable">; - rentPrice: TypedContractMethod<[ - name: string, - duration: BigNumberish - ], [ - IPriceOracle.PriceStructOutput - ], "view">; - reverseRegistrar: TypedContractMethod<[], [string], "view">; - supportsInterface: TypedContractMethod<[ - interfaceID: BytesLike - ], [ - boolean - ], "view">; - transferOwnership: TypedContractMethod<[ - newOwner: AddressLike - ], [ - void - ], "nonpayable">; - valid: TypedContractMethod<[name: string], [boolean], "view">; - withdraw: TypedContractMethod<[], [void], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "MIN_REGISTRATION_DURATION"): TypedContractMethod<[], [bigint], "view">; - getFunction(nameOrSignature: "available"): TypedContractMethod<[name: string], [boolean], "view">; - getFunction(nameOrSignature: "commit"): TypedContractMethod<[commitment: BytesLike], [void], "nonpayable">; - getFunction(nameOrSignature: "commitments"): TypedContractMethod<[arg0: BytesLike], [bigint], "view">; - getFunction(nameOrSignature: "makeCommitment"): TypedContractMethod<[ - name: string, - owner: AddressLike, - duration: BigNumberish, - secret: BytesLike, - resolver: AddressLike, - data: BytesLike[], - reverseRecord: boolean, - ownerControlledFuses: BigNumberish - ], [ - string - ], "view">; - getFunction(nameOrSignature: "maxCommitmentAge"): TypedContractMethod<[], [bigint], "view">; - getFunction(nameOrSignature: "minCommitmentAge"): TypedContractMethod<[], [bigint], "view">; - getFunction(nameOrSignature: "nameWrapper"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "owner"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "prices"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "recoverFunds"): TypedContractMethod<[ - _token: AddressLike, - _to: AddressLike, - _amount: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "register"): TypedContractMethod<[ - name: string, - owner: AddressLike, - duration: BigNumberish, - secret: BytesLike, - resolver: AddressLike, - data: BytesLike[], - reverseRecord: boolean, - ownerControlledFuses: BigNumberish - ], [ - void - ], "payable">; - getFunction(nameOrSignature: "renew"): TypedContractMethod<[ - name: string, - duration: BigNumberish - ], [ - void - ], "payable">; - getFunction(nameOrSignature: "renounceOwnership"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "rentPrice"): TypedContractMethod<[ - name: string, - duration: BigNumberish - ], [ - IPriceOracle.PriceStructOutput - ], "view">; - getFunction(nameOrSignature: "reverseRegistrar"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceID: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "transferOwnership"): TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "valid"): TypedContractMethod<[name: string], [boolean], "view">; - getFunction(nameOrSignature: "withdraw"): TypedContractMethod<[], [void], "nonpayable">; - getEvent(key: "NameRegistered"): TypedContractEvent; - getEvent(key: "NameRenewed"): TypedContractEvent; - getEvent(key: "OwnershipTransferred"): TypedContractEvent; - filters: { - "NameRegistered(string,bytes32,address,uint256,uint256,uint256)": TypedContractEvent; - NameRegistered: TypedContractEvent; - "NameRenewed(string,bytes32,uint256,uint256)": TypedContractEvent; - NameRenewed: TypedContractEvent; - "OwnershipTransferred(address,address)": TypedContractEvent; - OwnershipTransferred: TypedContractEvent; - }; -} -//# sourceMappingURL=ETHRegistrarController.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController.d.ts.map deleted file mode 100644 index 6579127a..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ETHRegistrarController.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController.js b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar.d.ts deleted file mode 100644 index 9f7cc3b5..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar.d.ts +++ /dev/null @@ -1,359 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; -export interface IBaseRegistrarInterface extends Interface { - getFunction(nameOrSignature: "addController" | "approve" | "available" | "balanceOf" | "getApproved" | "isApprovedForAll" | "nameExpires" | "ownerOf" | "reclaim" | "register" | "removeController" | "renew" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "setApprovalForAll" | "setResolver" | "supportsInterface" | "transferFrom"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "ControllerAdded" | "ControllerRemoved" | "NameMigrated" | "NameRegistered" | "NameRenewed" | "Transfer"): EventFragment; - encodeFunctionData(functionFragment: "addController", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "available", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "nameExpires", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "reclaim", values: [BigNumberish, AddressLike]): string; - encodeFunctionData(functionFragment: "register", values: [BigNumberish, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "removeController", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "renew", values: [BigNumberish, BigNumberish]): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; - encodeFunctionData(functionFragment: "setResolver", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; - decodeFunctionResult(functionFragment: "addController", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "available", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "nameExpires", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "reclaim", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "register", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "removeController", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renew", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setResolver", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; -} -export declare namespace ApprovalEvent { - type InputTuple = [ - owner: AddressLike, - approved: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [owner: string, approved: string, tokenId: bigint]; - interface OutputObject { - owner: string; - approved: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ApprovalForAllEvent { - type InputTuple = [ - owner: AddressLike, - operator: AddressLike, - approved: boolean - ]; - type OutputTuple = [ - owner: string, - operator: string, - approved: boolean - ]; - interface OutputObject { - owner: string; - operator: string; - approved: boolean; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ControllerAddedEvent { - type InputTuple = [controller: AddressLike]; - type OutputTuple = [controller: string]; - interface OutputObject { - controller: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ControllerRemovedEvent { - type InputTuple = [controller: AddressLike]; - type OutputTuple = [controller: string]; - interface OutputObject { - controller: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NameMigratedEvent { - type InputTuple = [ - id: BigNumberish, - owner: AddressLike, - expires: BigNumberish - ]; - type OutputTuple = [id: bigint, owner: string, expires: bigint]; - interface OutputObject { - id: bigint; - owner: string; - expires: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NameRegisteredEvent { - type InputTuple = [ - id: BigNumberish, - owner: AddressLike, - expires: BigNumberish - ]; - type OutputTuple = [id: bigint, owner: string, expires: bigint]; - interface OutputObject { - id: bigint; - owner: string; - expires: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NameRenewedEvent { - type InputTuple = [id: BigNumberish, expires: BigNumberish]; - type OutputTuple = [id: bigint, expires: bigint]; - interface OutputObject { - id: bigint; - expires: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferEvent { - type InputTuple = [ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [from: string, to: string, tokenId: bigint]; - interface OutputObject { - from: string; - to: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface IBaseRegistrar extends BaseContract { - connect(runner?: ContractRunner | null): IBaseRegistrar; - waitForDeployment(): Promise; - interface: IBaseRegistrarInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - addController: TypedContractMethod<[ - controller: AddressLike - ], [ - void - ], "nonpayable">; - approve: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - available: TypedContractMethod<[id: BigNumberish], [boolean], "view">; - balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; - getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - isApprovedForAll: TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - nameExpires: TypedContractMethod<[id: BigNumberish], [bigint], "view">; - ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - reclaim: TypedContractMethod<[ - id: BigNumberish, - owner: AddressLike - ], [ - void - ], "nonpayable">; - register: TypedContractMethod<[ - id: BigNumberish, - owner: AddressLike, - duration: BigNumberish - ], [ - bigint - ], "nonpayable">; - removeController: TypedContractMethod<[ - controller: AddressLike - ], [ - void - ], "nonpayable">; - renew: TypedContractMethod<[ - id: BigNumberish, - duration: BigNumberish - ], [ - bigint - ], "nonpayable">; - "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - setApprovalForAll: TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - setResolver: TypedContractMethod<[ - resolver: AddressLike - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - transferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "addController"): TypedContractMethod<[controller: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "approve"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "available"): TypedContractMethod<[id: BigNumberish], [boolean], "view">; - getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; - getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "nameExpires"): TypedContractMethod<[id: BigNumberish], [bigint], "view">; - getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "reclaim"): TypedContractMethod<[ - id: BigNumberish, - owner: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "register"): TypedContractMethod<[ - id: BigNumberish, - owner: AddressLike, - duration: BigNumberish - ], [ - bigint - ], "nonpayable">; - getFunction(nameOrSignature: "removeController"): TypedContractMethod<[controller: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "renew"): TypedContractMethod<[ - id: BigNumberish, - duration: BigNumberish - ], [ - bigint - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setResolver"): TypedContractMethod<[resolver: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getEvent(key: "Approval"): TypedContractEvent; - getEvent(key: "ApprovalForAll"): TypedContractEvent; - getEvent(key: "ControllerAdded"): TypedContractEvent; - getEvent(key: "ControllerRemoved"): TypedContractEvent; - getEvent(key: "NameMigrated"): TypedContractEvent; - getEvent(key: "NameRegistered"): TypedContractEvent; - getEvent(key: "NameRenewed"): TypedContractEvent; - getEvent(key: "Transfer"): TypedContractEvent; - filters: { - "Approval(address,address,uint256)": TypedContractEvent; - Approval: TypedContractEvent; - "ApprovalForAll(address,address,bool)": TypedContractEvent; - ApprovalForAll: TypedContractEvent; - "ControllerAdded(address)": TypedContractEvent; - ControllerAdded: TypedContractEvent; - "ControllerRemoved(address)": TypedContractEvent; - ControllerRemoved: TypedContractEvent; - "NameMigrated(uint256,address,uint256)": TypedContractEvent; - NameMigrated: TypedContractEvent; - "NameRegistered(uint256,address,uint256)": TypedContractEvent; - NameRegistered: TypedContractEvent; - "NameRenewed(uint256,uint256)": TypedContractEvent; - NameRenewed: TypedContractEvent; - "Transfer(address,address,uint256)": TypedContractEvent; - Transfer: TypedContractEvent; - }; -} -//# sourceMappingURL=IBaseRegistrar.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar.d.ts.map deleted file mode 100644 index e3f5d2f2..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IBaseRegistrar.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar.js b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController.d.ts deleted file mode 100644 index 0f15d324..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController.d.ts +++ /dev/null @@ -1,133 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; -export declare namespace IPriceOracle { - type PriceStruct = { - base: BigNumberish; - premium: BigNumberish; - }; - type PriceStructOutput = [base: bigint, premium: bigint] & { - base: bigint; - premium: bigint; - }; -} -export interface IETHRegistrarControllerInterface extends Interface { - getFunction(nameOrSignature: "available" | "commit" | "makeCommitment" | "register" | "renew" | "rentPrice"): FunctionFragment; - encodeFunctionData(functionFragment: "available", values: [string]): string; - encodeFunctionData(functionFragment: "commit", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "makeCommitment", values: [ - string, - AddressLike, - BigNumberish, - BytesLike, - AddressLike, - BytesLike[], - boolean, - BigNumberish - ]): string; - encodeFunctionData(functionFragment: "register", values: [ - string, - AddressLike, - BigNumberish, - BytesLike, - AddressLike, - BytesLike[], - boolean, - BigNumberish - ]): string; - encodeFunctionData(functionFragment: "renew", values: [string, BigNumberish]): string; - encodeFunctionData(functionFragment: "rentPrice", values: [string, BigNumberish]): string; - decodeFunctionResult(functionFragment: "available", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "commit", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "makeCommitment", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "register", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renew", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "rentPrice", data: BytesLike): Result; -} -export interface IETHRegistrarController extends BaseContract { - connect(runner?: ContractRunner | null): IETHRegistrarController; - waitForDeployment(): Promise; - interface: IETHRegistrarControllerInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - available: TypedContractMethod<[arg0: string], [boolean], "nonpayable">; - commit: TypedContractMethod<[arg0: BytesLike], [void], "nonpayable">; - makeCommitment: TypedContractMethod<[ - arg0: string, - arg1: AddressLike, - arg2: BigNumberish, - arg3: BytesLike, - arg4: AddressLike, - arg5: BytesLike[], - arg6: boolean, - arg7: BigNumberish - ], [ - string - ], "view">; - register: TypedContractMethod<[ - arg0: string, - arg1: AddressLike, - arg2: BigNumberish, - arg3: BytesLike, - arg4: AddressLike, - arg5: BytesLike[], - arg6: boolean, - arg7: BigNumberish - ], [ - void - ], "payable">; - renew: TypedContractMethod<[ - arg0: string, - arg1: BigNumberish - ], [ - void - ], "payable">; - rentPrice: TypedContractMethod<[ - arg0: string, - arg1: BigNumberish - ], [ - IPriceOracle.PriceStructOutput - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "available"): TypedContractMethod<[arg0: string], [boolean], "nonpayable">; - getFunction(nameOrSignature: "commit"): TypedContractMethod<[arg0: BytesLike], [void], "nonpayable">; - getFunction(nameOrSignature: "makeCommitment"): TypedContractMethod<[ - arg0: string, - arg1: AddressLike, - arg2: BigNumberish, - arg3: BytesLike, - arg4: AddressLike, - arg5: BytesLike[], - arg6: boolean, - arg7: BigNumberish - ], [ - string - ], "view">; - getFunction(nameOrSignature: "register"): TypedContractMethod<[ - arg0: string, - arg1: AddressLike, - arg2: BigNumberish, - arg3: BytesLike, - arg4: AddressLike, - arg5: BytesLike[], - arg6: boolean, - arg7: BigNumberish - ], [ - void - ], "payable">; - getFunction(nameOrSignature: "renew"): TypedContractMethod<[arg0: string, arg1: BigNumberish], [void], "payable">; - getFunction(nameOrSignature: "rentPrice"): TypedContractMethod<[ - arg0: string, - arg1: BigNumberish - ], [ - IPriceOracle.PriceStructOutput - ], "view">; - filters: {}; -} -//# sourceMappingURL=IETHRegistrarController.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController.d.ts.map deleted file mode 100644 index 2ec275b0..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IETHRegistrarController.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController.js b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle.d.ts deleted file mode 100644 index cb5aab99..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle.d.ts +++ /dev/null @@ -1,48 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; -export declare namespace IPriceOracle { - type PriceStruct = { - base: BigNumberish; - premium: BigNumberish; - }; - type PriceStructOutput = [base: bigint, premium: bigint] & { - base: bigint; - premium: bigint; - }; -} -export interface IPriceOracleInterface extends Interface { - getFunction(nameOrSignature: "price"): FunctionFragment; - encodeFunctionData(functionFragment: "price", values: [string, BigNumberish, BigNumberish]): string; - decodeFunctionResult(functionFragment: "price", data: BytesLike): Result; -} -export interface IPriceOracle extends BaseContract { - connect(runner?: ContractRunner | null): IPriceOracle; - waitForDeployment(): Promise; - interface: IPriceOracleInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - price: TypedContractMethod<[ - name: string, - expires: BigNumberish, - duration: BigNumberish - ], [ - IPriceOracle.PriceStructOutput - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "price"): TypedContractMethod<[ - name: string, - expires: BigNumberish, - duration: BigNumberish - ], [ - IPriceOracle.PriceStructOutput - ], "view">; - filters: {}; -} -//# sourceMappingURL=IPriceOracle.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle.d.ts.map deleted file mode 100644 index a270a8b3..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IPriceOracle.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle.js b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface.d.ts deleted file mode 100644 index 19fc1231..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface.d.ts +++ /dev/null @@ -1,26 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../../common"; -export interface AggregatorInterfaceInterface extends Interface { - getFunction(nameOrSignature: "latestAnswer"): FunctionFragment; - encodeFunctionData(functionFragment: "latestAnswer", values?: undefined): string; - decodeFunctionResult(functionFragment: "latestAnswer", data: BytesLike): Result; -} -export interface AggregatorInterface extends BaseContract { - connect(runner?: ContractRunner | null): AggregatorInterface; - waitForDeployment(): Promise; - interface: AggregatorInterfaceInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - latestAnswer: TypedContractMethod<[], [bigint], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "latestAnswer"): TypedContractMethod<[], [bigint], "view">; - filters: {}; -} -//# sourceMappingURL=AggregatorInterface.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface.d.ts.map deleted file mode 100644 index bad41817..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"AggregatorInterface.d.ts","sourceRoot":"","sources":["../../../../../../../types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface.js b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle.d.ts deleted file mode 100644 index 52e355a4..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle.d.ts +++ /dev/null @@ -1,112 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; -export declare namespace IPriceOracle { - type PriceStruct = { - base: BigNumberish; - premium: BigNumberish; - }; - type PriceStructOutput = [base: bigint, premium: bigint] & { - base: bigint; - premium: bigint; - }; -} -export interface StablePriceOracleInterface extends Interface { - getFunction(nameOrSignature: "premium" | "price" | "price1Letter" | "price2Letter" | "price3Letter" | "price4Letter" | "price5Letter" | "supportsInterface" | "usdOracle"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "RentPriceChanged"): EventFragment; - encodeFunctionData(functionFragment: "premium", values: [string, BigNumberish, BigNumberish]): string; - encodeFunctionData(functionFragment: "price", values: [string, BigNumberish, BigNumberish]): string; - encodeFunctionData(functionFragment: "price1Letter", values?: undefined): string; - encodeFunctionData(functionFragment: "price2Letter", values?: undefined): string; - encodeFunctionData(functionFragment: "price3Letter", values?: undefined): string; - encodeFunctionData(functionFragment: "price4Letter", values?: undefined): string; - encodeFunctionData(functionFragment: "price5Letter", values?: undefined): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "usdOracle", values?: undefined): string; - decodeFunctionResult(functionFragment: "premium", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "price", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "price1Letter", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "price2Letter", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "price3Letter", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "price4Letter", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "price5Letter", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "usdOracle", data: BytesLike): Result; -} -export declare namespace RentPriceChangedEvent { - type InputTuple = [prices: BigNumberish[]]; - type OutputTuple = [prices: bigint[]]; - interface OutputObject { - prices: bigint[]; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface StablePriceOracle extends BaseContract { - connect(runner?: ContractRunner | null): StablePriceOracle; - waitForDeployment(): Promise; - interface: StablePriceOracleInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - premium: TypedContractMethod<[ - name: string, - expires: BigNumberish, - duration: BigNumberish - ], [ - bigint - ], "view">; - price: TypedContractMethod<[ - name: string, - expires: BigNumberish, - duration: BigNumberish - ], [ - IPriceOracle.PriceStructOutput - ], "view">; - price1Letter: TypedContractMethod<[], [bigint], "view">; - price2Letter: TypedContractMethod<[], [bigint], "view">; - price3Letter: TypedContractMethod<[], [bigint], "view">; - price4Letter: TypedContractMethod<[], [bigint], "view">; - price5Letter: TypedContractMethod<[], [bigint], "view">; - supportsInterface: TypedContractMethod<[ - interfaceID: BytesLike - ], [ - boolean - ], "view">; - usdOracle: TypedContractMethod<[], [string], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "premium"): TypedContractMethod<[ - name: string, - expires: BigNumberish, - duration: BigNumberish - ], [ - bigint - ], "view">; - getFunction(nameOrSignature: "price"): TypedContractMethod<[ - name: string, - expires: BigNumberish, - duration: BigNumberish - ], [ - IPriceOracle.PriceStructOutput - ], "view">; - getFunction(nameOrSignature: "price1Letter"): TypedContractMethod<[], [bigint], "view">; - getFunction(nameOrSignature: "price2Letter"): TypedContractMethod<[], [bigint], "view">; - getFunction(nameOrSignature: "price3Letter"): TypedContractMethod<[], [bigint], "view">; - getFunction(nameOrSignature: "price4Letter"): TypedContractMethod<[], [bigint], "view">; - getFunction(nameOrSignature: "price5Letter"): TypedContractMethod<[], [bigint], "view">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceID: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "usdOracle"): TypedContractMethod<[], [string], "view">; - getEvent(key: "RentPriceChanged"): TypedContractEvent; - filters: { - "RentPriceChanged(uint256[])": TypedContractEvent; - RentPriceChanged: TypedContractEvent; - }; -} -//# sourceMappingURL=StablePriceOracle.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle.d.ts.map deleted file mode 100644 index f413ab80..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"StablePriceOracle.d.ts","sourceRoot":"","sources":["../../../../../../../types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle.js b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/index.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/index.d.ts deleted file mode 100644 index 2c80cd45..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export type { AggregatorInterface } from "./AggregatorInterface"; -export type { StablePriceOracle } from "./StablePriceOracle"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/index.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/index.d.ts.map deleted file mode 100644 index ab698899..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,YAAY,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/index.js b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/index.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/index.d.ts deleted file mode 100644 index e786af37..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/index.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -import type * as stablePriceOracleSol from "./StablePriceOracle.sol"; -export type { stablePriceOracleSol }; -export type { BaseRegistrarImplementation } from "./BaseRegistrarImplementation"; -export type { DummyOracle } from "./DummyOracle"; -export type { ETHRegistrarController } from "./ETHRegistrarController"; -export type { IBaseRegistrar } from "./IBaseRegistrar"; -export type { IETHRegistrarController } from "./IETHRegistrarController"; -export type { IPriceOracle } from "./IPriceOracle"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/index.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/index.d.ts.map deleted file mode 100644 index 49608248..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/ethregistrar/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,oBAAoB,MAAM,yBAAyB,CAAC;AACrE,YAAY,EAAE,oBAAoB,EAAE,CAAC;AACrC,YAAY,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AACjF,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,YAAY,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AACvE,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,YAAY,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACzE,YAAY,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/index.js b/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/index.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/index.d.ts deleted file mode 100644 index 2bae2f8b..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/index.d.ts +++ /dev/null @@ -1,17 +0,0 @@ -import type * as dnssecOracle from "./dnssec-oracle"; -export type { dnssecOracle }; -import type * as ethregistrar from "./ethregistrar"; -export type { ethregistrar }; -import type * as registry from "./registry"; -export type { registry }; -import type * as resolvers from "./resolvers"; -export type { resolvers }; -import type * as reverseRegistrar from "./reverseRegistrar"; -export type { reverseRegistrar }; -import type * as root from "./root"; -export type { root }; -import type * as utils from "./utils"; -export type { utils }; -import type * as wrapper from "./wrapper"; -export type { wrapper }; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/index.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/index.d.ts.map deleted file mode 100644 index d01910ea..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/@ensdomains/ens-contracts/contracts/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,YAAY,MAAM,iBAAiB,CAAC;AACrD,YAAY,EAAE,YAAY,EAAE,CAAC;AAC7B,OAAO,KAAK,KAAK,YAAY,MAAM,gBAAgB,CAAC;AACpD,YAAY,EAAE,YAAY,EAAE,CAAC;AAC7B,OAAO,KAAK,KAAK,QAAQ,MAAM,YAAY,CAAC;AAC5C,YAAY,EAAE,QAAQ,EAAE,CAAC;AACzB,OAAO,KAAK,KAAK,SAAS,MAAM,aAAa,CAAC;AAC9C,YAAY,EAAE,SAAS,EAAE,CAAC;AAC1B,OAAO,KAAK,KAAK,gBAAgB,MAAM,oBAAoB,CAAC;AAC5D,YAAY,EAAE,gBAAgB,EAAE,CAAC;AACjC,OAAO,KAAK,KAAK,IAAI,MAAM,QAAQ,CAAC;AACpC,YAAY,EAAE,IAAI,EAAE,CAAC;AACrB,OAAO,KAAK,KAAK,KAAK,MAAM,SAAS,CAAC;AACtC,YAAY,EAAE,KAAK,EAAE,CAAC;AACtB,OAAO,KAAK,KAAK,OAAO,MAAM,WAAW,CAAC;AAC1C,YAAY,EAAE,OAAO,EAAE,CAAC"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/index.js b/dist/types/@ensdomains/ens-contracts/contracts/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/registry/ENS.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/registry/ENS.d.ts deleted file mode 100644 index efb8000d..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/registry/ENS.d.ts +++ /dev/null @@ -1,253 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; -export interface ENSInterface extends Interface { - getFunction(nameOrSignature: "isApprovedForAll" | "owner" | "recordExists" | "resolver" | "setApprovalForAll" | "setOwner" | "setRecord" | "setResolver" | "setSubnodeOwner" | "setSubnodeRecord" | "setTTL" | "ttl"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "ApprovalForAll" | "NewOwner" | "NewResolver" | "NewTTL" | "Transfer"): EventFragment; - encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "owner", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "recordExists", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "resolver", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; - encodeFunctionData(functionFragment: "setOwner", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "setRecord", values: [BytesLike, AddressLike, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "setResolver", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "setSubnodeOwner", values: [BytesLike, BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "setSubnodeRecord", values: [BytesLike, BytesLike, AddressLike, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "setTTL", values: [BytesLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "ttl", values: [BytesLike]): string; - decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "recordExists", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "resolver", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setOwner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setRecord", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setResolver", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setSubnodeOwner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setSubnodeRecord", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setTTL", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ttl", data: BytesLike): Result; -} -export declare namespace ApprovalForAllEvent { - type InputTuple = [ - owner: AddressLike, - operator: AddressLike, - approved: boolean - ]; - type OutputTuple = [ - owner: string, - operator: string, - approved: boolean - ]; - interface OutputObject { - owner: string; - operator: string; - approved: boolean; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NewOwnerEvent { - type InputTuple = [ - node: BytesLike, - label: BytesLike, - owner: AddressLike - ]; - type OutputTuple = [node: string, label: string, owner: string]; - interface OutputObject { - node: string; - label: string; - owner: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NewResolverEvent { - type InputTuple = [node: BytesLike, resolver: AddressLike]; - type OutputTuple = [node: string, resolver: string]; - interface OutputObject { - node: string; - resolver: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NewTTLEvent { - type InputTuple = [node: BytesLike, ttl: BigNumberish]; - type OutputTuple = [node: string, ttl: bigint]; - interface OutputObject { - node: string; - ttl: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferEvent { - type InputTuple = [node: BytesLike, owner: AddressLike]; - type OutputTuple = [node: string, owner: string]; - interface OutputObject { - node: string; - owner: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface ENS extends BaseContract { - connect(runner?: ContractRunner | null): ENS; - waitForDeployment(): Promise; - interface: ENSInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - isApprovedForAll: TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - owner: TypedContractMethod<[node: BytesLike], [string], "view">; - recordExists: TypedContractMethod<[node: BytesLike], [boolean], "view">; - resolver: TypedContractMethod<[node: BytesLike], [string], "view">; - setApprovalForAll: TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - setOwner: TypedContractMethod<[ - node: BytesLike, - owner: AddressLike - ], [ - void - ], "nonpayable">; - setRecord: TypedContractMethod<[ - node: BytesLike, - owner: AddressLike, - resolver: AddressLike, - ttl: BigNumberish - ], [ - void - ], "nonpayable">; - setResolver: TypedContractMethod<[ - node: BytesLike, - resolver: AddressLike - ], [ - void - ], "nonpayable">; - setSubnodeOwner: TypedContractMethod<[ - node: BytesLike, - label: BytesLike, - owner: AddressLike - ], [ - string - ], "nonpayable">; - setSubnodeRecord: TypedContractMethod<[ - node: BytesLike, - label: BytesLike, - owner: AddressLike, - resolver: AddressLike, - ttl: BigNumberish - ], [ - void - ], "nonpayable">; - setTTL: TypedContractMethod<[ - node: BytesLike, - ttl: BigNumberish - ], [ - void - ], "nonpayable">; - ttl: TypedContractMethod<[node: BytesLike], [bigint], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "owner"): TypedContractMethod<[node: BytesLike], [string], "view">; - getFunction(nameOrSignature: "recordExists"): TypedContractMethod<[node: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "resolver"): TypedContractMethod<[node: BytesLike], [string], "view">; - getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setOwner"): TypedContractMethod<[ - node: BytesLike, - owner: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setRecord"): TypedContractMethod<[ - node: BytesLike, - owner: AddressLike, - resolver: AddressLike, - ttl: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setResolver"): TypedContractMethod<[ - node: BytesLike, - resolver: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setSubnodeOwner"): TypedContractMethod<[ - node: BytesLike, - label: BytesLike, - owner: AddressLike - ], [ - string - ], "nonpayable">; - getFunction(nameOrSignature: "setSubnodeRecord"): TypedContractMethod<[ - node: BytesLike, - label: BytesLike, - owner: AddressLike, - resolver: AddressLike, - ttl: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setTTL"): TypedContractMethod<[ - node: BytesLike, - ttl: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "ttl"): TypedContractMethod<[node: BytesLike], [bigint], "view">; - getEvent(key: "ApprovalForAll"): TypedContractEvent; - getEvent(key: "NewOwner"): TypedContractEvent; - getEvent(key: "NewResolver"): TypedContractEvent; - getEvent(key: "NewTTL"): TypedContractEvent; - getEvent(key: "Transfer"): TypedContractEvent; - filters: { - "ApprovalForAll(address,address,bool)": TypedContractEvent; - ApprovalForAll: TypedContractEvent; - "NewOwner(bytes32,bytes32,address)": TypedContractEvent; - NewOwner: TypedContractEvent; - "NewResolver(bytes32,address)": TypedContractEvent; - NewResolver: TypedContractEvent; - "NewTTL(bytes32,uint64)": TypedContractEvent; - NewTTL: TypedContractEvent; - "Transfer(bytes32,address)": TypedContractEvent; - Transfer: TypedContractEvent; - }; -} -//# sourceMappingURL=ENS.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/registry/ENS.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/registry/ENS.d.ts.map deleted file mode 100644 index df4287c6..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/registry/ENS.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ENS.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/registry/ENS.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/registry/ENS.js b/dist/types/@ensdomains/ens-contracts/contracts/registry/ENS.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/registry/ENS.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/registry/ENSRegistry.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/registry/ENSRegistry.d.ts deleted file mode 100644 index 29b69ca9..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/registry/ENSRegistry.d.ts +++ /dev/null @@ -1,253 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; -export interface ENSRegistryInterface extends Interface { - getFunction(nameOrSignature: "isApprovedForAll" | "owner" | "recordExists" | "resolver" | "setApprovalForAll" | "setOwner" | "setRecord" | "setResolver" | "setSubnodeOwner" | "setSubnodeRecord" | "setTTL" | "ttl"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "ApprovalForAll" | "NewOwner" | "NewResolver" | "NewTTL" | "Transfer"): EventFragment; - encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "owner", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "recordExists", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "resolver", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; - encodeFunctionData(functionFragment: "setOwner", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "setRecord", values: [BytesLike, AddressLike, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "setResolver", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "setSubnodeOwner", values: [BytesLike, BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "setSubnodeRecord", values: [BytesLike, BytesLike, AddressLike, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "setTTL", values: [BytesLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "ttl", values: [BytesLike]): string; - decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "recordExists", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "resolver", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setOwner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setRecord", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setResolver", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setSubnodeOwner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setSubnodeRecord", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setTTL", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ttl", data: BytesLike): Result; -} -export declare namespace ApprovalForAllEvent { - type InputTuple = [ - owner: AddressLike, - operator: AddressLike, - approved: boolean - ]; - type OutputTuple = [ - owner: string, - operator: string, - approved: boolean - ]; - interface OutputObject { - owner: string; - operator: string; - approved: boolean; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NewOwnerEvent { - type InputTuple = [ - node: BytesLike, - label: BytesLike, - owner: AddressLike - ]; - type OutputTuple = [node: string, label: string, owner: string]; - interface OutputObject { - node: string; - label: string; - owner: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NewResolverEvent { - type InputTuple = [node: BytesLike, resolver: AddressLike]; - type OutputTuple = [node: string, resolver: string]; - interface OutputObject { - node: string; - resolver: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NewTTLEvent { - type InputTuple = [node: BytesLike, ttl: BigNumberish]; - type OutputTuple = [node: string, ttl: bigint]; - interface OutputObject { - node: string; - ttl: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferEvent { - type InputTuple = [node: BytesLike, owner: AddressLike]; - type OutputTuple = [node: string, owner: string]; - interface OutputObject { - node: string; - owner: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface ENSRegistry extends BaseContract { - connect(runner?: ContractRunner | null): ENSRegistry; - waitForDeployment(): Promise; - interface: ENSRegistryInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - isApprovedForAll: TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - owner: TypedContractMethod<[node: BytesLike], [string], "view">; - recordExists: TypedContractMethod<[node: BytesLike], [boolean], "view">; - resolver: TypedContractMethod<[node: BytesLike], [string], "view">; - setApprovalForAll: TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - setOwner: TypedContractMethod<[ - node: BytesLike, - owner: AddressLike - ], [ - void - ], "nonpayable">; - setRecord: TypedContractMethod<[ - node: BytesLike, - owner: AddressLike, - resolver: AddressLike, - ttl: BigNumberish - ], [ - void - ], "nonpayable">; - setResolver: TypedContractMethod<[ - node: BytesLike, - resolver: AddressLike - ], [ - void - ], "nonpayable">; - setSubnodeOwner: TypedContractMethod<[ - node: BytesLike, - label: BytesLike, - owner: AddressLike - ], [ - string - ], "nonpayable">; - setSubnodeRecord: TypedContractMethod<[ - node: BytesLike, - label: BytesLike, - owner: AddressLike, - resolver: AddressLike, - ttl: BigNumberish - ], [ - void - ], "nonpayable">; - setTTL: TypedContractMethod<[ - node: BytesLike, - ttl: BigNumberish - ], [ - void - ], "nonpayable">; - ttl: TypedContractMethod<[node: BytesLike], [bigint], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "owner"): TypedContractMethod<[node: BytesLike], [string], "view">; - getFunction(nameOrSignature: "recordExists"): TypedContractMethod<[node: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "resolver"): TypedContractMethod<[node: BytesLike], [string], "view">; - getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setOwner"): TypedContractMethod<[ - node: BytesLike, - owner: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setRecord"): TypedContractMethod<[ - node: BytesLike, - owner: AddressLike, - resolver: AddressLike, - ttl: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setResolver"): TypedContractMethod<[ - node: BytesLike, - resolver: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setSubnodeOwner"): TypedContractMethod<[ - node: BytesLike, - label: BytesLike, - owner: AddressLike - ], [ - string - ], "nonpayable">; - getFunction(nameOrSignature: "setSubnodeRecord"): TypedContractMethod<[ - node: BytesLike, - label: BytesLike, - owner: AddressLike, - resolver: AddressLike, - ttl: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setTTL"): TypedContractMethod<[ - node: BytesLike, - ttl: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "ttl"): TypedContractMethod<[node: BytesLike], [bigint], "view">; - getEvent(key: "ApprovalForAll"): TypedContractEvent; - getEvent(key: "NewOwner"): TypedContractEvent; - getEvent(key: "NewResolver"): TypedContractEvent; - getEvent(key: "NewTTL"): TypedContractEvent; - getEvent(key: "Transfer"): TypedContractEvent; - filters: { - "ApprovalForAll(address,address,bool)": TypedContractEvent; - ApprovalForAll: TypedContractEvent; - "NewOwner(bytes32,bytes32,address)": TypedContractEvent; - NewOwner: TypedContractEvent; - "NewResolver(bytes32,address)": TypedContractEvent; - NewResolver: TypedContractEvent; - "NewTTL(bytes32,uint64)": TypedContractEvent; - NewTTL: TypedContractEvent; - "Transfer(bytes32,address)": TypedContractEvent; - Transfer: TypedContractEvent; - }; -} -//# sourceMappingURL=ENSRegistry.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/registry/ENSRegistry.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/registry/ENSRegistry.d.ts.map deleted file mode 100644 index 0bed8fde..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/registry/ENSRegistry.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ENSRegistry.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/registry/ENSRegistry.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/registry/ENSRegistry.js b/dist/types/@ensdomains/ens-contracts/contracts/registry/ENSRegistry.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/registry/ENSRegistry.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/registry/index.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/registry/index.d.ts deleted file mode 100644 index cc4e2979..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/registry/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export type { ENS } from "./ENS"; -export type { ENSRegistry } from "./ENSRegistry"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/registry/index.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/registry/index.d.ts.map deleted file mode 100644 index 5c3855ef..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/registry/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/registry/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AACjC,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/registry/index.js b/dist/types/@ensdomains/ens-contracts/contracts/registry/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/registry/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable.d.ts deleted file mode 100644 index f096b10f..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable.d.ts +++ /dev/null @@ -1,40 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; -export interface IMulticallableInterface extends Interface { - getFunction(nameOrSignature: "multicall" | "multicallWithNodeCheck"): FunctionFragment; - encodeFunctionData(functionFragment: "multicall", values: [BytesLike[]]): string; - encodeFunctionData(functionFragment: "multicallWithNodeCheck", values: [BytesLike, BytesLike[]]): string; - decodeFunctionResult(functionFragment: "multicall", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "multicallWithNodeCheck", data: BytesLike): Result; -} -export interface IMulticallable extends BaseContract { - connect(runner?: ContractRunner | null): IMulticallable; - waitForDeployment(): Promise; - interface: IMulticallableInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - multicall: TypedContractMethod<[data: BytesLike[]], [string[]], "nonpayable">; - multicallWithNodeCheck: TypedContractMethod<[ - arg0: BytesLike, - data: BytesLike[] - ], [ - string[] - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "multicall"): TypedContractMethod<[data: BytesLike[]], [string[]], "nonpayable">; - getFunction(nameOrSignature: "multicallWithNodeCheck"): TypedContractMethod<[ - arg0: BytesLike, - data: BytesLike[] - ], [ - string[] - ], "nonpayable">; - filters: {}; -} -//# sourceMappingURL=IMulticallable.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable.d.ts.map deleted file mode 100644 index 16cd4886..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IMulticallable.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable.js b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/Multicallable.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/Multicallable.d.ts deleted file mode 100644 index 41eb2b91..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/Multicallable.d.ts +++ /dev/null @@ -1,48 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; -export interface MulticallableInterface extends Interface { - getFunction(nameOrSignature: "multicall" | "multicallWithNodeCheck" | "supportsInterface"): FunctionFragment; - encodeFunctionData(functionFragment: "multicall", values: [BytesLike[]]): string; - encodeFunctionData(functionFragment: "multicallWithNodeCheck", values: [BytesLike, BytesLike[]]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - decodeFunctionResult(functionFragment: "multicall", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "multicallWithNodeCheck", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; -} -export interface Multicallable extends BaseContract { - connect(runner?: ContractRunner | null): Multicallable; - waitForDeployment(): Promise; - interface: MulticallableInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - multicall: TypedContractMethod<[data: BytesLike[]], [string[]], "nonpayable">; - multicallWithNodeCheck: TypedContractMethod<[ - nodehash: BytesLike, - data: BytesLike[] - ], [ - string[] - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceID: BytesLike - ], [ - boolean - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "multicall"): TypedContractMethod<[data: BytesLike[]], [string[]], "nonpayable">; - getFunction(nameOrSignature: "multicallWithNodeCheck"): TypedContractMethod<[ - nodehash: BytesLike, - data: BytesLike[] - ], [ - string[] - ], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceID: BytesLike], [boolean], "view">; - filters: {}; -} -//# sourceMappingURL=Multicallable.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/Multicallable.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/Multicallable.d.ts.map deleted file mode 100644 index f7747dce..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/Multicallable.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Multicallable.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/resolvers/Multicallable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/Multicallable.js b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/Multicallable.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/Multicallable.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver.d.ts deleted file mode 100644 index 52b92c2d..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver.d.ts +++ /dev/null @@ -1,661 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; -export interface PublicResolverInterface extends Interface { - getFunction(nameOrSignature: "ABI" | "addr(bytes32)" | "addr(bytes32,uint256)" | "approve" | "clearRecords" | "contenthash" | "dnsRecord" | "hasDNSRecords" | "interfaceImplementer" | "isApprovedFor" | "isApprovedForAll" | "multicall" | "multicallWithNodeCheck" | "name" | "pubkey" | "recordVersions" | "setABI" | "setAddr(bytes32,uint256,bytes)" | "setAddr(bytes32,address)" | "setApprovalForAll" | "setContenthash" | "setDNSRecords" | "setInterface" | "setName" | "setPubkey" | "setText" | "setZonehash" | "supportsInterface" | "text" | "zonehash"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "ABIChanged" | "AddrChanged" | "AddressChanged" | "ApprovalForAll" | "Approved" | "ContenthashChanged" | "DNSRecordChanged" | "DNSRecordDeleted" | "DNSZonehashChanged" | "InterfaceChanged" | "NameChanged" | "PubkeyChanged" | "TextChanged" | "VersionChanged"): EventFragment; - encodeFunctionData(functionFragment: "ABI", values: [BytesLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "addr(bytes32)", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "addr(bytes32,uint256)", values: [BytesLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "approve", values: [BytesLike, AddressLike, boolean]): string; - encodeFunctionData(functionFragment: "clearRecords", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "contenthash", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "dnsRecord", values: [BytesLike, BytesLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "hasDNSRecords", values: [BytesLike, BytesLike]): string; - encodeFunctionData(functionFragment: "interfaceImplementer", values: [BytesLike, BytesLike]): string; - encodeFunctionData(functionFragment: "isApprovedFor", values: [AddressLike, BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "multicall", values: [BytesLike[]]): string; - encodeFunctionData(functionFragment: "multicallWithNodeCheck", values: [BytesLike, BytesLike[]]): string; - encodeFunctionData(functionFragment: "name", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "pubkey", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "recordVersions", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "setABI", values: [BytesLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "setAddr(bytes32,uint256,bytes)", values: [BytesLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "setAddr(bytes32,address)", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; - encodeFunctionData(functionFragment: "setContenthash", values: [BytesLike, BytesLike]): string; - encodeFunctionData(functionFragment: "setDNSRecords", values: [BytesLike, BytesLike]): string; - encodeFunctionData(functionFragment: "setInterface", values: [BytesLike, BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "setName", values: [BytesLike, string]): string; - encodeFunctionData(functionFragment: "setPubkey", values: [BytesLike, BytesLike, BytesLike]): string; - encodeFunctionData(functionFragment: "setText", values: [BytesLike, string, string]): string; - encodeFunctionData(functionFragment: "setZonehash", values: [BytesLike, BytesLike]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "text", values: [BytesLike, string]): string; - encodeFunctionData(functionFragment: "zonehash", values: [BytesLike]): string; - decodeFunctionResult(functionFragment: "ABI", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "addr(bytes32)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "addr(bytes32,uint256)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "clearRecords", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "contenthash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "dnsRecord", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "hasDNSRecords", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "interfaceImplementer", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedFor", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "multicall", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "multicallWithNodeCheck", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "pubkey", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "recordVersions", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setABI", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setAddr(bytes32,uint256,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setAddr(bytes32,address)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setContenthash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setDNSRecords", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setName", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setPubkey", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setText", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setZonehash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "text", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "zonehash", data: BytesLike): Result; -} -export declare namespace ABIChangedEvent { - type InputTuple = [node: BytesLike, contentType: BigNumberish]; - type OutputTuple = [node: string, contentType: bigint]; - interface OutputObject { - node: string; - contentType: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace AddrChangedEvent { - type InputTuple = [node: BytesLike, a: AddressLike]; - type OutputTuple = [node: string, a: string]; - interface OutputObject { - node: string; - a: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace AddressChangedEvent { - type InputTuple = [ - node: BytesLike, - coinType: BigNumberish, - newAddress: BytesLike - ]; - type OutputTuple = [ - node: string, - coinType: bigint, - newAddress: string - ]; - interface OutputObject { - node: string; - coinType: bigint; - newAddress: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ApprovalForAllEvent { - type InputTuple = [ - owner: AddressLike, - operator: AddressLike, - approved: boolean - ]; - type OutputTuple = [ - owner: string, - operator: string, - approved: boolean - ]; - interface OutputObject { - owner: string; - operator: string; - approved: boolean; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ApprovedEvent { - type InputTuple = [ - owner: AddressLike, - node: BytesLike, - delegate: AddressLike, - approved: boolean - ]; - type OutputTuple = [ - owner: string, - node: string, - delegate: string, - approved: boolean - ]; - interface OutputObject { - owner: string; - node: string; - delegate: string; - approved: boolean; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ContenthashChangedEvent { - type InputTuple = [node: BytesLike, hash: BytesLike]; - type OutputTuple = [node: string, hash: string]; - interface OutputObject { - node: string; - hash: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace DNSRecordChangedEvent { - type InputTuple = [ - node: BytesLike, - name: BytesLike, - resource: BigNumberish, - record: BytesLike - ]; - type OutputTuple = [ - node: string, - name: string, - resource: bigint, - record: string - ]; - interface OutputObject { - node: string; - name: string; - resource: bigint; - record: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace DNSRecordDeletedEvent { - type InputTuple = [ - node: BytesLike, - name: BytesLike, - resource: BigNumberish - ]; - type OutputTuple = [node: string, name: string, resource: bigint]; - interface OutputObject { - node: string; - name: string; - resource: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace DNSZonehashChangedEvent { - type InputTuple = [ - node: BytesLike, - lastzonehash: BytesLike, - zonehash: BytesLike - ]; - type OutputTuple = [ - node: string, - lastzonehash: string, - zonehash: string - ]; - interface OutputObject { - node: string; - lastzonehash: string; - zonehash: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace InterfaceChangedEvent { - type InputTuple = [ - node: BytesLike, - interfaceID: BytesLike, - implementer: AddressLike - ]; - type OutputTuple = [ - node: string, - interfaceID: string, - implementer: string - ]; - interface OutputObject { - node: string; - interfaceID: string; - implementer: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NameChangedEvent { - type InputTuple = [node: BytesLike, name: string]; - type OutputTuple = [node: string, name: string]; - interface OutputObject { - node: string; - name: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace PubkeyChangedEvent { - type InputTuple = [node: BytesLike, x: BytesLike, y: BytesLike]; - type OutputTuple = [node: string, x: string, y: string]; - interface OutputObject { - node: string; - x: string; - y: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TextChangedEvent { - type InputTuple = [ - node: BytesLike, - indexedKey: string, - key: string, - value: string - ]; - type OutputTuple = [ - node: string, - indexedKey: string, - key: string, - value: string - ]; - interface OutputObject { - node: string; - indexedKey: string; - key: string; - value: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace VersionChangedEvent { - type InputTuple = [node: BytesLike, newVersion: BigNumberish]; - type OutputTuple = [node: string, newVersion: bigint]; - interface OutputObject { - node: string; - newVersion: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface PublicResolver extends BaseContract { - connect(runner?: ContractRunner | null): PublicResolver; - waitForDeployment(): Promise; - interface: PublicResolverInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - ABI: TypedContractMethod<[ - node: BytesLike, - contentTypes: BigNumberish - ], [ - [bigint, string] - ], "view">; - "addr(bytes32)": TypedContractMethod<[node: BytesLike], [string], "view">; - "addr(bytes32,uint256)": TypedContractMethod<[ - node: BytesLike, - coinType: BigNumberish - ], [ - string - ], "view">; - approve: TypedContractMethod<[ - node: BytesLike, - delegate: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - clearRecords: TypedContractMethod<[node: BytesLike], [void], "nonpayable">; - contenthash: TypedContractMethod<[node: BytesLike], [string], "view">; - dnsRecord: TypedContractMethod<[ - node: BytesLike, - name: BytesLike, - resource: BigNumberish - ], [ - string - ], "view">; - hasDNSRecords: TypedContractMethod<[ - node: BytesLike, - name: BytesLike - ], [ - boolean - ], "view">; - interfaceImplementer: TypedContractMethod<[ - node: BytesLike, - interfaceID: BytesLike - ], [ - string - ], "view">; - isApprovedFor: TypedContractMethod<[ - owner: AddressLike, - node: BytesLike, - delegate: AddressLike - ], [ - boolean - ], "view">; - isApprovedForAll: TypedContractMethod<[ - account: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - multicall: TypedContractMethod<[data: BytesLike[]], [string[]], "nonpayable">; - multicallWithNodeCheck: TypedContractMethod<[ - nodehash: BytesLike, - data: BytesLike[] - ], [ - string[] - ], "nonpayable">; - name: TypedContractMethod<[node: BytesLike], [string], "view">; - pubkey: TypedContractMethod<[ - node: BytesLike - ], [ - [string, string] & { - x: string; - y: string; - } - ], "view">; - recordVersions: TypedContractMethod<[arg0: BytesLike], [bigint], "view">; - setABI: TypedContractMethod<[ - node: BytesLike, - contentType: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - "setAddr(bytes32,uint256,bytes)": TypedContractMethod<[ - node: BytesLike, - coinType: BigNumberish, - a: BytesLike - ], [ - void - ], "nonpayable">; - "setAddr(bytes32,address)": TypedContractMethod<[ - node: BytesLike, - a: AddressLike - ], [ - void - ], "nonpayable">; - setApprovalForAll: TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - setContenthash: TypedContractMethod<[ - node: BytesLike, - hash: BytesLike - ], [ - void - ], "nonpayable">; - setDNSRecords: TypedContractMethod<[ - node: BytesLike, - data: BytesLike - ], [ - void - ], "nonpayable">; - setInterface: TypedContractMethod<[ - node: BytesLike, - interfaceID: BytesLike, - implementer: AddressLike - ], [ - void - ], "nonpayable">; - setName: TypedContractMethod<[ - node: BytesLike, - newName: string - ], [ - void - ], "nonpayable">; - setPubkey: TypedContractMethod<[ - node: BytesLike, - x: BytesLike, - y: BytesLike - ], [ - void - ], "nonpayable">; - setText: TypedContractMethod<[ - node: BytesLike, - key: string, - value: string - ], [ - void - ], "nonpayable">; - setZonehash: TypedContractMethod<[ - node: BytesLike, - hash: BytesLike - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceID: BytesLike - ], [ - boolean - ], "view">; - text: TypedContractMethod<[node: BytesLike, key: string], [string], "view">; - zonehash: TypedContractMethod<[node: BytesLike], [string], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "ABI"): TypedContractMethod<[ - node: BytesLike, - contentTypes: BigNumberish - ], [ - [bigint, string] - ], "view">; - getFunction(nameOrSignature: "addr(bytes32)"): TypedContractMethod<[node: BytesLike], [string], "view">; - getFunction(nameOrSignature: "addr(bytes32,uint256)"): TypedContractMethod<[ - node: BytesLike, - coinType: BigNumberish - ], [ - string - ], "view">; - getFunction(nameOrSignature: "approve"): TypedContractMethod<[ - node: BytesLike, - delegate: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "clearRecords"): TypedContractMethod<[node: BytesLike], [void], "nonpayable">; - getFunction(nameOrSignature: "contenthash"): TypedContractMethod<[node: BytesLike], [string], "view">; - getFunction(nameOrSignature: "dnsRecord"): TypedContractMethod<[ - node: BytesLike, - name: BytesLike, - resource: BigNumberish - ], [ - string - ], "view">; - getFunction(nameOrSignature: "hasDNSRecords"): TypedContractMethod<[node: BytesLike, name: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "interfaceImplementer"): TypedContractMethod<[ - node: BytesLike, - interfaceID: BytesLike - ], [ - string - ], "view">; - getFunction(nameOrSignature: "isApprovedFor"): TypedContractMethod<[ - owner: AddressLike, - node: BytesLike, - delegate: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ - account: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "multicall"): TypedContractMethod<[data: BytesLike[]], [string[]], "nonpayable">; - getFunction(nameOrSignature: "multicallWithNodeCheck"): TypedContractMethod<[ - nodehash: BytesLike, - data: BytesLike[] - ], [ - string[] - ], "nonpayable">; - getFunction(nameOrSignature: "name"): TypedContractMethod<[node: BytesLike], [string], "view">; - getFunction(nameOrSignature: "pubkey"): TypedContractMethod<[ - node: BytesLike - ], [ - [string, string] & { - x: string; - y: string; - } - ], "view">; - getFunction(nameOrSignature: "recordVersions"): TypedContractMethod<[arg0: BytesLike], [bigint], "view">; - getFunction(nameOrSignature: "setABI"): TypedContractMethod<[ - node: BytesLike, - contentType: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setAddr(bytes32,uint256,bytes)"): TypedContractMethod<[ - node: BytesLike, - coinType: BigNumberish, - a: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setAddr(bytes32,address)"): TypedContractMethod<[ - node: BytesLike, - a: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setContenthash"): TypedContractMethod<[ - node: BytesLike, - hash: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setDNSRecords"): TypedContractMethod<[ - node: BytesLike, - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setInterface"): TypedContractMethod<[ - node: BytesLike, - interfaceID: BytesLike, - implementer: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setName"): TypedContractMethod<[ - node: BytesLike, - newName: string - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setPubkey"): TypedContractMethod<[ - node: BytesLike, - x: BytesLike, - y: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setText"): TypedContractMethod<[ - node: BytesLike, - key: string, - value: string - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setZonehash"): TypedContractMethod<[ - node: BytesLike, - hash: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceID: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "text"): TypedContractMethod<[node: BytesLike, key: string], [string], "view">; - getFunction(nameOrSignature: "zonehash"): TypedContractMethod<[node: BytesLike], [string], "view">; - getEvent(key: "ABIChanged"): TypedContractEvent; - getEvent(key: "AddrChanged"): TypedContractEvent; - getEvent(key: "AddressChanged"): TypedContractEvent; - getEvent(key: "ApprovalForAll"): TypedContractEvent; - getEvent(key: "Approved"): TypedContractEvent; - getEvent(key: "ContenthashChanged"): TypedContractEvent; - getEvent(key: "DNSRecordChanged"): TypedContractEvent; - getEvent(key: "DNSRecordDeleted"): TypedContractEvent; - getEvent(key: "DNSZonehashChanged"): TypedContractEvent; - getEvent(key: "InterfaceChanged"): TypedContractEvent; - getEvent(key: "NameChanged"): TypedContractEvent; - getEvent(key: "PubkeyChanged"): TypedContractEvent; - getEvent(key: "TextChanged"): TypedContractEvent; - getEvent(key: "VersionChanged"): TypedContractEvent; - filters: { - "ABIChanged(bytes32,uint256)": TypedContractEvent; - ABIChanged: TypedContractEvent; - "AddrChanged(bytes32,address)": TypedContractEvent; - AddrChanged: TypedContractEvent; - "AddressChanged(bytes32,uint256,bytes)": TypedContractEvent; - AddressChanged: TypedContractEvent; - "ApprovalForAll(address,address,bool)": TypedContractEvent; - ApprovalForAll: TypedContractEvent; - "Approved(address,bytes32,address,bool)": TypedContractEvent; - Approved: TypedContractEvent; - "ContenthashChanged(bytes32,bytes)": TypedContractEvent; - ContenthashChanged: TypedContractEvent; - "DNSRecordChanged(bytes32,bytes,uint16,bytes)": TypedContractEvent; - DNSRecordChanged: TypedContractEvent; - "DNSRecordDeleted(bytes32,bytes,uint16)": TypedContractEvent; - DNSRecordDeleted: TypedContractEvent; - "DNSZonehashChanged(bytes32,bytes,bytes)": TypedContractEvent; - DNSZonehashChanged: TypedContractEvent; - "InterfaceChanged(bytes32,bytes4,address)": TypedContractEvent; - InterfaceChanged: TypedContractEvent; - "NameChanged(bytes32,string)": TypedContractEvent; - NameChanged: TypedContractEvent; - "PubkeyChanged(bytes32,bytes32,bytes32)": TypedContractEvent; - PubkeyChanged: TypedContractEvent; - "TextChanged(bytes32,string,string,string)": TypedContractEvent; - TextChanged: TypedContractEvent; - "VersionChanged(bytes32,uint64)": TypedContractEvent; - VersionChanged: TypedContractEvent; - }; -} -//# sourceMappingURL=PublicResolver.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver.d.ts.map deleted file mode 100644 index a0ed3d70..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"PublicResolver.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver.js b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/Resolver.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/Resolver.d.ts deleted file mode 100644 index 983f0b97..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/Resolver.d.ts +++ /dev/null @@ -1,624 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; -export interface ResolverInterface extends Interface { - getFunction(nameOrSignature: "ABI" | "addr(bytes32)" | "addr(bytes32,uint256)" | "approve" | "content" | "contenthash" | "dnsRecord" | "interfaceImplementer" | "isApprovedFor" | "isApprovedForAll" | "multicall" | "multicallWithNodeCheck" | "multihash" | "name" | "pubkey" | "resolve" | "setABI" | "setAddr(bytes32,uint256,bytes)" | "setAddr(bytes32,address)" | "setApprovalForAll" | "setContent" | "setContenthash" | "setDnsrr" | "setInterface" | "setMultihash" | "setName" | "setPubkey" | "setText" | "supportsInterface" | "text" | "zonehash"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "ABIChanged" | "AddrChanged" | "AddressChanged" | "ContentChanged" | "ContenthashChanged" | "DNSRecordChanged" | "DNSRecordDeleted" | "DNSZonehashChanged" | "InterfaceChanged" | "NameChanged" | "PubkeyChanged" | "TextChanged"): EventFragment; - encodeFunctionData(functionFragment: "ABI", values: [BytesLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "addr(bytes32)", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "addr(bytes32,uint256)", values: [BytesLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "approve", values: [BytesLike, AddressLike, boolean]): string; - encodeFunctionData(functionFragment: "content", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "contenthash", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "dnsRecord", values: [BytesLike, BytesLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "interfaceImplementer", values: [BytesLike, BytesLike]): string; - encodeFunctionData(functionFragment: "isApprovedFor", values: [AddressLike, BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "multicall", values: [BytesLike[]]): string; - encodeFunctionData(functionFragment: "multicallWithNodeCheck", values: [BytesLike, BytesLike[]]): string; - encodeFunctionData(functionFragment: "multihash", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "name", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "pubkey", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "resolve", values: [BytesLike, BytesLike]): string; - encodeFunctionData(functionFragment: "setABI", values: [BytesLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "setAddr(bytes32,uint256,bytes)", values: [BytesLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "setAddr(bytes32,address)", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; - encodeFunctionData(functionFragment: "setContent", values: [BytesLike, BytesLike]): string; - encodeFunctionData(functionFragment: "setContenthash", values: [BytesLike, BytesLike]): string; - encodeFunctionData(functionFragment: "setDnsrr", values: [BytesLike, BytesLike]): string; - encodeFunctionData(functionFragment: "setInterface", values: [BytesLike, BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "setMultihash", values: [BytesLike, BytesLike]): string; - encodeFunctionData(functionFragment: "setName", values: [BytesLike, string]): string; - encodeFunctionData(functionFragment: "setPubkey", values: [BytesLike, BytesLike, BytesLike]): string; - encodeFunctionData(functionFragment: "setText", values: [BytesLike, string, string]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "text", values: [BytesLike, string]): string; - encodeFunctionData(functionFragment: "zonehash", values: [BytesLike]): string; - decodeFunctionResult(functionFragment: "ABI", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "addr(bytes32)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "addr(bytes32,uint256)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "content", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "contenthash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "dnsRecord", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "interfaceImplementer", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedFor", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "multicall", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "multicallWithNodeCheck", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "multihash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "pubkey", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "resolve", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setABI", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setAddr(bytes32,uint256,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setAddr(bytes32,address)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setContent", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setContenthash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setDnsrr", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setMultihash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setName", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setPubkey", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setText", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "text", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "zonehash", data: BytesLike): Result; -} -export declare namespace ABIChangedEvent { - type InputTuple = [node: BytesLike, contentType: BigNumberish]; - type OutputTuple = [node: string, contentType: bigint]; - interface OutputObject { - node: string; - contentType: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace AddrChangedEvent { - type InputTuple = [node: BytesLike, a: AddressLike]; - type OutputTuple = [node: string, a: string]; - interface OutputObject { - node: string; - a: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace AddressChangedEvent { - type InputTuple = [ - node: BytesLike, - coinType: BigNumberish, - newAddress: BytesLike - ]; - type OutputTuple = [ - node: string, - coinType: bigint, - newAddress: string - ]; - interface OutputObject { - node: string; - coinType: bigint; - newAddress: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ContentChangedEvent { - type InputTuple = [node: BytesLike, hash: BytesLike]; - type OutputTuple = [node: string, hash: string]; - interface OutputObject { - node: string; - hash: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ContenthashChangedEvent { - type InputTuple = [node: BytesLike, hash: BytesLike]; - type OutputTuple = [node: string, hash: string]; - interface OutputObject { - node: string; - hash: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace DNSRecordChangedEvent { - type InputTuple = [ - node: BytesLike, - name: BytesLike, - resource: BigNumberish, - record: BytesLike - ]; - type OutputTuple = [ - node: string, - name: string, - resource: bigint, - record: string - ]; - interface OutputObject { - node: string; - name: string; - resource: bigint; - record: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace DNSRecordDeletedEvent { - type InputTuple = [ - node: BytesLike, - name: BytesLike, - resource: BigNumberish - ]; - type OutputTuple = [node: string, name: string, resource: bigint]; - interface OutputObject { - node: string; - name: string; - resource: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace DNSZonehashChangedEvent { - type InputTuple = [ - node: BytesLike, - lastzonehash: BytesLike, - zonehash: BytesLike - ]; - type OutputTuple = [ - node: string, - lastzonehash: string, - zonehash: string - ]; - interface OutputObject { - node: string; - lastzonehash: string; - zonehash: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace InterfaceChangedEvent { - type InputTuple = [ - node: BytesLike, - interfaceID: BytesLike, - implementer: AddressLike - ]; - type OutputTuple = [ - node: string, - interfaceID: string, - implementer: string - ]; - interface OutputObject { - node: string; - interfaceID: string; - implementer: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NameChangedEvent { - type InputTuple = [node: BytesLike, name: string]; - type OutputTuple = [node: string, name: string]; - interface OutputObject { - node: string; - name: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace PubkeyChangedEvent { - type InputTuple = [node: BytesLike, x: BytesLike, y: BytesLike]; - type OutputTuple = [node: string, x: string, y: string]; - interface OutputObject { - node: string; - x: string; - y: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TextChangedEvent { - type InputTuple = [ - node: BytesLike, - indexedKey: string, - key: string, - value: string - ]; - type OutputTuple = [ - node: string, - indexedKey: string, - key: string, - value: string - ]; - interface OutputObject { - node: string; - indexedKey: string; - key: string; - value: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface Resolver extends BaseContract { - connect(runner?: ContractRunner | null): Resolver; - waitForDeployment(): Promise; - interface: ResolverInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - ABI: TypedContractMethod<[ - node: BytesLike, - contentTypes: BigNumberish - ], [ - [bigint, string] - ], "view">; - "addr(bytes32)": TypedContractMethod<[node: BytesLike], [string], "view">; - "addr(bytes32,uint256)": TypedContractMethod<[ - node: BytesLike, - coinType: BigNumberish - ], [ - string - ], "view">; - approve: TypedContractMethod<[ - node: BytesLike, - delegate: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - content: TypedContractMethod<[node: BytesLike], [string], "view">; - contenthash: TypedContractMethod<[node: BytesLike], [string], "view">; - dnsRecord: TypedContractMethod<[ - node: BytesLike, - name: BytesLike, - resource: BigNumberish - ], [ - string - ], "view">; - interfaceImplementer: TypedContractMethod<[ - node: BytesLike, - interfaceID: BytesLike - ], [ - string - ], "view">; - isApprovedFor: TypedContractMethod<[ - owner: AddressLike, - node: BytesLike, - delegate: AddressLike - ], [ - void - ], "nonpayable">; - isApprovedForAll: TypedContractMethod<[ - account: AddressLike, - operator: AddressLike - ], [ - void - ], "nonpayable">; - multicall: TypedContractMethod<[data: BytesLike[]], [string[]], "nonpayable">; - multicallWithNodeCheck: TypedContractMethod<[ - nodehash: BytesLike, - data: BytesLike[] - ], [ - string[] - ], "nonpayable">; - multihash: TypedContractMethod<[node: BytesLike], [string], "view">; - name: TypedContractMethod<[node: BytesLike], [string], "view">; - pubkey: TypedContractMethod<[ - node: BytesLike - ], [ - [string, string] & { - x: string; - y: string; - } - ], "view">; - resolve: TypedContractMethod<[ - name: BytesLike, - data: BytesLike - ], [ - string - ], "view">; - setABI: TypedContractMethod<[ - node: BytesLike, - contentType: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - "setAddr(bytes32,uint256,bytes)": TypedContractMethod<[ - node: BytesLike, - coinType: BigNumberish, - a: BytesLike - ], [ - void - ], "nonpayable">; - "setAddr(bytes32,address)": TypedContractMethod<[ - node: BytesLike, - addr: AddressLike - ], [ - void - ], "nonpayable">; - setApprovalForAll: TypedContractMethod<[ - arg0: AddressLike, - arg1: boolean - ], [ - void - ], "nonpayable">; - setContent: TypedContractMethod<[ - node: BytesLike, - hash: BytesLike - ], [ - void - ], "nonpayable">; - setContenthash: TypedContractMethod<[ - node: BytesLike, - hash: BytesLike - ], [ - void - ], "nonpayable">; - setDnsrr: TypedContractMethod<[ - node: BytesLike, - data: BytesLike - ], [ - void - ], "nonpayable">; - setInterface: TypedContractMethod<[ - node: BytesLike, - interfaceID: BytesLike, - implementer: AddressLike - ], [ - void - ], "nonpayable">; - setMultihash: TypedContractMethod<[ - node: BytesLike, - hash: BytesLike - ], [ - void - ], "nonpayable">; - setName: TypedContractMethod<[ - node: BytesLike, - _name: string - ], [ - void - ], "nonpayable">; - setPubkey: TypedContractMethod<[ - node: BytesLike, - x: BytesLike, - y: BytesLike - ], [ - void - ], "nonpayable">; - setText: TypedContractMethod<[ - node: BytesLike, - key: string, - value: string - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - text: TypedContractMethod<[node: BytesLike, key: string], [string], "view">; - zonehash: TypedContractMethod<[node: BytesLike], [string], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "ABI"): TypedContractMethod<[ - node: BytesLike, - contentTypes: BigNumberish - ], [ - [bigint, string] - ], "view">; - getFunction(nameOrSignature: "addr(bytes32)"): TypedContractMethod<[node: BytesLike], [string], "view">; - getFunction(nameOrSignature: "addr(bytes32,uint256)"): TypedContractMethod<[ - node: BytesLike, - coinType: BigNumberish - ], [ - string - ], "view">; - getFunction(nameOrSignature: "approve"): TypedContractMethod<[ - node: BytesLike, - delegate: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "content"): TypedContractMethod<[node: BytesLike], [string], "view">; - getFunction(nameOrSignature: "contenthash"): TypedContractMethod<[node: BytesLike], [string], "view">; - getFunction(nameOrSignature: "dnsRecord"): TypedContractMethod<[ - node: BytesLike, - name: BytesLike, - resource: BigNumberish - ], [ - string - ], "view">; - getFunction(nameOrSignature: "interfaceImplementer"): TypedContractMethod<[ - node: BytesLike, - interfaceID: BytesLike - ], [ - string - ], "view">; - getFunction(nameOrSignature: "isApprovedFor"): TypedContractMethod<[ - owner: AddressLike, - node: BytesLike, - delegate: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ - account: AddressLike, - operator: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "multicall"): TypedContractMethod<[data: BytesLike[]], [string[]], "nonpayable">; - getFunction(nameOrSignature: "multicallWithNodeCheck"): TypedContractMethod<[ - nodehash: BytesLike, - data: BytesLike[] - ], [ - string[] - ], "nonpayable">; - getFunction(nameOrSignature: "multihash"): TypedContractMethod<[node: BytesLike], [string], "view">; - getFunction(nameOrSignature: "name"): TypedContractMethod<[node: BytesLike], [string], "view">; - getFunction(nameOrSignature: "pubkey"): TypedContractMethod<[ - node: BytesLike - ], [ - [string, string] & { - x: string; - y: string; - } - ], "view">; - getFunction(nameOrSignature: "resolve"): TypedContractMethod<[name: BytesLike, data: BytesLike], [string], "view">; - getFunction(nameOrSignature: "setABI"): TypedContractMethod<[ - node: BytesLike, - contentType: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setAddr(bytes32,uint256,bytes)"): TypedContractMethod<[ - node: BytesLike, - coinType: BigNumberish, - a: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setAddr(bytes32,address)"): TypedContractMethod<[ - node: BytesLike, - addr: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ - arg0: AddressLike, - arg1: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setContent"): TypedContractMethod<[ - node: BytesLike, - hash: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setContenthash"): TypedContractMethod<[ - node: BytesLike, - hash: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setDnsrr"): TypedContractMethod<[ - node: BytesLike, - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setInterface"): TypedContractMethod<[ - node: BytesLike, - interfaceID: BytesLike, - implementer: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setMultihash"): TypedContractMethod<[ - node: BytesLike, - hash: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setName"): TypedContractMethod<[ - node: BytesLike, - _name: string - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setPubkey"): TypedContractMethod<[ - node: BytesLike, - x: BytesLike, - y: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setText"): TypedContractMethod<[ - node: BytesLike, - key: string, - value: string - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "text"): TypedContractMethod<[node: BytesLike, key: string], [string], "view">; - getFunction(nameOrSignature: "zonehash"): TypedContractMethod<[node: BytesLike], [string], "view">; - getEvent(key: "ABIChanged"): TypedContractEvent; - getEvent(key: "AddrChanged"): TypedContractEvent; - getEvent(key: "AddressChanged"): TypedContractEvent; - getEvent(key: "ContentChanged"): TypedContractEvent; - getEvent(key: "ContenthashChanged"): TypedContractEvent; - getEvent(key: "DNSRecordChanged"): TypedContractEvent; - getEvent(key: "DNSRecordDeleted"): TypedContractEvent; - getEvent(key: "DNSZonehashChanged"): TypedContractEvent; - getEvent(key: "InterfaceChanged"): TypedContractEvent; - getEvent(key: "NameChanged"): TypedContractEvent; - getEvent(key: "PubkeyChanged"): TypedContractEvent; - getEvent(key: "TextChanged"): TypedContractEvent; - filters: { - "ABIChanged(bytes32,uint256)": TypedContractEvent; - ABIChanged: TypedContractEvent; - "AddrChanged(bytes32,address)": TypedContractEvent; - AddrChanged: TypedContractEvent; - "AddressChanged(bytes32,uint256,bytes)": TypedContractEvent; - AddressChanged: TypedContractEvent; - "ContentChanged(bytes32,bytes32)": TypedContractEvent; - ContentChanged: TypedContractEvent; - "ContenthashChanged(bytes32,bytes)": TypedContractEvent; - ContenthashChanged: TypedContractEvent; - "DNSRecordChanged(bytes32,bytes,uint16,bytes)": TypedContractEvent; - DNSRecordChanged: TypedContractEvent; - "DNSRecordDeleted(bytes32,bytes,uint16)": TypedContractEvent; - DNSRecordDeleted: TypedContractEvent; - "DNSZonehashChanged(bytes32,bytes,bytes)": TypedContractEvent; - DNSZonehashChanged: TypedContractEvent; - "InterfaceChanged(bytes32,bytes4,address)": TypedContractEvent; - InterfaceChanged: TypedContractEvent; - "NameChanged(bytes32,string)": TypedContractEvent; - NameChanged: TypedContractEvent; - "PubkeyChanged(bytes32,bytes32,bytes32)": TypedContractEvent; - PubkeyChanged: TypedContractEvent; - "TextChanged(bytes32,string,string,string)": TypedContractEvent; - TextChanged: TypedContractEvent; - }; -} -//# sourceMappingURL=Resolver.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/Resolver.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/Resolver.d.ts.map deleted file mode 100644 index 02c3ff44..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/Resolver.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Resolver.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/resolvers/Resolver.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/Resolver.js b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/Resolver.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/Resolver.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase.d.ts deleted file mode 100644 index 466949da..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase.d.ts +++ /dev/null @@ -1,55 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; -export interface ResolverBaseInterface extends Interface { - getFunction(nameOrSignature: "clearRecords" | "recordVersions" | "supportsInterface"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "VersionChanged"): EventFragment; - encodeFunctionData(functionFragment: "clearRecords", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "recordVersions", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - decodeFunctionResult(functionFragment: "clearRecords", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "recordVersions", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; -} -export declare namespace VersionChangedEvent { - type InputTuple = [node: BytesLike, newVersion: BigNumberish]; - type OutputTuple = [node: string, newVersion: bigint]; - interface OutputObject { - node: string; - newVersion: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface ResolverBase extends BaseContract { - connect(runner?: ContractRunner | null): ResolverBase; - waitForDeployment(): Promise; - interface: ResolverBaseInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - clearRecords: TypedContractMethod<[node: BytesLike], [void], "nonpayable">; - recordVersions: TypedContractMethod<[arg0: BytesLike], [bigint], "view">; - supportsInterface: TypedContractMethod<[ - interfaceID: BytesLike - ], [ - boolean - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "clearRecords"): TypedContractMethod<[node: BytesLike], [void], "nonpayable">; - getFunction(nameOrSignature: "recordVersions"): TypedContractMethod<[arg0: BytesLike], [bigint], "view">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceID: BytesLike], [boolean], "view">; - getEvent(key: "VersionChanged"): TypedContractEvent; - filters: { - "VersionChanged(bytes32,uint64)": TypedContractEvent; - VersionChanged: TypedContractEvent; - }; -} -//# sourceMappingURL=ResolverBase.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase.d.ts.map deleted file mode 100644 index f14caf26..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ResolverBase.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase.js b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/index.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/index.d.ts deleted file mode 100644 index 9d645af6..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/index.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import type * as profiles from "./profiles"; -export type { profiles }; -export type { IMulticallable } from "./IMulticallable"; -export type { Multicallable } from "./Multicallable"; -export type { PublicResolver } from "./PublicResolver"; -export type { Resolver } from "./Resolver"; -export type { ResolverBase } from "./ResolverBase"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/index.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/index.d.ts.map deleted file mode 100644 index 6157abba..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/resolvers/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,QAAQ,MAAM,YAAY,CAAC;AAC5C,YAAY,EAAE,QAAQ,EAAE,CAAC;AACzB,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,YAAY,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,YAAY,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/index.js b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver.d.ts deleted file mode 100644 index dedaad51..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver.d.ts +++ /dev/null @@ -1,100 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; -export interface ABIResolverInterface extends Interface { - getFunction(nameOrSignature: "ABI" | "clearRecords" | "recordVersions" | "setABI" | "supportsInterface"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "ABIChanged" | "VersionChanged"): EventFragment; - encodeFunctionData(functionFragment: "ABI", values: [BytesLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "clearRecords", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "recordVersions", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "setABI", values: [BytesLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - decodeFunctionResult(functionFragment: "ABI", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "clearRecords", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "recordVersions", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setABI", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; -} -export declare namespace ABIChangedEvent { - type InputTuple = [node: BytesLike, contentType: BigNumberish]; - type OutputTuple = [node: string, contentType: bigint]; - interface OutputObject { - node: string; - contentType: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace VersionChangedEvent { - type InputTuple = [node: BytesLike, newVersion: BigNumberish]; - type OutputTuple = [node: string, newVersion: bigint]; - interface OutputObject { - node: string; - newVersion: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface ABIResolver extends BaseContract { - connect(runner?: ContractRunner | null): ABIResolver; - waitForDeployment(): Promise; - interface: ABIResolverInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - ABI: TypedContractMethod<[ - node: BytesLike, - contentTypes: BigNumberish - ], [ - [bigint, string] - ], "view">; - clearRecords: TypedContractMethod<[node: BytesLike], [void], "nonpayable">; - recordVersions: TypedContractMethod<[arg0: BytesLike], [bigint], "view">; - setABI: TypedContractMethod<[ - node: BytesLike, - contentType: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceID: BytesLike - ], [ - boolean - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "ABI"): TypedContractMethod<[ - node: BytesLike, - contentTypes: BigNumberish - ], [ - [bigint, string] - ], "view">; - getFunction(nameOrSignature: "clearRecords"): TypedContractMethod<[node: BytesLike], [void], "nonpayable">; - getFunction(nameOrSignature: "recordVersions"): TypedContractMethod<[arg0: BytesLike], [bigint], "view">; - getFunction(nameOrSignature: "setABI"): TypedContractMethod<[ - node: BytesLike, - contentType: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceID: BytesLike], [boolean], "view">; - getEvent(key: "ABIChanged"): TypedContractEvent; - getEvent(key: "VersionChanged"): TypedContractEvent; - filters: { - "ABIChanged(bytes32,uint256)": TypedContractEvent; - ABIChanged: TypedContractEvent; - "VersionChanged(bytes32,uint64)": TypedContractEvent; - VersionChanged: TypedContractEvent; - }; -} -//# sourceMappingURL=ABIResolver.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver.d.ts.map deleted file mode 100644 index 3ebb75b7..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ABIResolver.d.ts","sourceRoot":"","sources":["../../../../../../../types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver.js b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver.d.ts deleted file mode 100644 index 4b905473..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver.d.ts +++ /dev/null @@ -1,142 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; -export interface AddrResolverInterface extends Interface { - getFunction(nameOrSignature: "addr(bytes32)" | "addr(bytes32,uint256)" | "clearRecords" | "recordVersions" | "setAddr(bytes32,uint256,bytes)" | "setAddr(bytes32,address)" | "supportsInterface"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "AddrChanged" | "AddressChanged" | "VersionChanged"): EventFragment; - encodeFunctionData(functionFragment: "addr(bytes32)", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "addr(bytes32,uint256)", values: [BytesLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "clearRecords", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "recordVersions", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "setAddr(bytes32,uint256,bytes)", values: [BytesLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "setAddr(bytes32,address)", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - decodeFunctionResult(functionFragment: "addr(bytes32)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "addr(bytes32,uint256)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "clearRecords", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "recordVersions", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setAddr(bytes32,uint256,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setAddr(bytes32,address)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; -} -export declare namespace AddrChangedEvent { - type InputTuple = [node: BytesLike, a: AddressLike]; - type OutputTuple = [node: string, a: string]; - interface OutputObject { - node: string; - a: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace AddressChangedEvent { - type InputTuple = [ - node: BytesLike, - coinType: BigNumberish, - newAddress: BytesLike - ]; - type OutputTuple = [ - node: string, - coinType: bigint, - newAddress: string - ]; - interface OutputObject { - node: string; - coinType: bigint; - newAddress: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace VersionChangedEvent { - type InputTuple = [node: BytesLike, newVersion: BigNumberish]; - type OutputTuple = [node: string, newVersion: bigint]; - interface OutputObject { - node: string; - newVersion: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface AddrResolver extends BaseContract { - connect(runner?: ContractRunner | null): AddrResolver; - waitForDeployment(): Promise; - interface: AddrResolverInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - "addr(bytes32)": TypedContractMethod<[node: BytesLike], [string], "view">; - "addr(bytes32,uint256)": TypedContractMethod<[ - node: BytesLike, - coinType: BigNumberish - ], [ - string - ], "view">; - clearRecords: TypedContractMethod<[node: BytesLike], [void], "nonpayable">; - recordVersions: TypedContractMethod<[arg0: BytesLike], [bigint], "view">; - "setAddr(bytes32,uint256,bytes)": TypedContractMethod<[ - node: BytesLike, - coinType: BigNumberish, - a: BytesLike - ], [ - void - ], "nonpayable">; - "setAddr(bytes32,address)": TypedContractMethod<[ - node: BytesLike, - a: AddressLike - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceID: BytesLike - ], [ - boolean - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "addr(bytes32)"): TypedContractMethod<[node: BytesLike], [string], "view">; - getFunction(nameOrSignature: "addr(bytes32,uint256)"): TypedContractMethod<[ - node: BytesLike, - coinType: BigNumberish - ], [ - string - ], "view">; - getFunction(nameOrSignature: "clearRecords"): TypedContractMethod<[node: BytesLike], [void], "nonpayable">; - getFunction(nameOrSignature: "recordVersions"): TypedContractMethod<[arg0: BytesLike], [bigint], "view">; - getFunction(nameOrSignature: "setAddr(bytes32,uint256,bytes)"): TypedContractMethod<[ - node: BytesLike, - coinType: BigNumberish, - a: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setAddr(bytes32,address)"): TypedContractMethod<[ - node: BytesLike, - a: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceID: BytesLike], [boolean], "view">; - getEvent(key: "AddrChanged"): TypedContractEvent; - getEvent(key: "AddressChanged"): TypedContractEvent; - getEvent(key: "VersionChanged"): TypedContractEvent; - filters: { - "AddrChanged(bytes32,address)": TypedContractEvent; - AddrChanged: TypedContractEvent; - "AddressChanged(bytes32,uint256,bytes)": TypedContractEvent; - AddressChanged: TypedContractEvent; - "VersionChanged(bytes32,uint64)": TypedContractEvent; - VersionChanged: TypedContractEvent; - }; -} -//# sourceMappingURL=AddrResolver.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver.d.ts.map deleted file mode 100644 index 741d87c7..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"AddrResolver.d.ts","sourceRoot":"","sources":["../../../../../../../types/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver.js b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver.d.ts deleted file mode 100644 index e584681d..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver.d.ts +++ /dev/null @@ -1,88 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; -export interface ContentHashResolverInterface extends Interface { - getFunction(nameOrSignature: "clearRecords" | "contenthash" | "recordVersions" | "setContenthash" | "supportsInterface"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "ContenthashChanged" | "VersionChanged"): EventFragment; - encodeFunctionData(functionFragment: "clearRecords", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "contenthash", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "recordVersions", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "setContenthash", values: [BytesLike, BytesLike]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - decodeFunctionResult(functionFragment: "clearRecords", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "contenthash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "recordVersions", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setContenthash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; -} -export declare namespace ContenthashChangedEvent { - type InputTuple = [node: BytesLike, hash: BytesLike]; - type OutputTuple = [node: string, hash: string]; - interface OutputObject { - node: string; - hash: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace VersionChangedEvent { - type InputTuple = [node: BytesLike, newVersion: BigNumberish]; - type OutputTuple = [node: string, newVersion: bigint]; - interface OutputObject { - node: string; - newVersion: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface ContentHashResolver extends BaseContract { - connect(runner?: ContractRunner | null): ContentHashResolver; - waitForDeployment(): Promise; - interface: ContentHashResolverInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - clearRecords: TypedContractMethod<[node: BytesLike], [void], "nonpayable">; - contenthash: TypedContractMethod<[node: BytesLike], [string], "view">; - recordVersions: TypedContractMethod<[arg0: BytesLike], [bigint], "view">; - setContenthash: TypedContractMethod<[ - node: BytesLike, - hash: BytesLike - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceID: BytesLike - ], [ - boolean - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "clearRecords"): TypedContractMethod<[node: BytesLike], [void], "nonpayable">; - getFunction(nameOrSignature: "contenthash"): TypedContractMethod<[node: BytesLike], [string], "view">; - getFunction(nameOrSignature: "recordVersions"): TypedContractMethod<[arg0: BytesLike], [bigint], "view">; - getFunction(nameOrSignature: "setContenthash"): TypedContractMethod<[ - node: BytesLike, - hash: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceID: BytesLike], [boolean], "view">; - getEvent(key: "ContenthashChanged"): TypedContractEvent; - getEvent(key: "VersionChanged"): TypedContractEvent; - filters: { - "ContenthashChanged(bytes32,bytes)": TypedContractEvent; - ContenthashChanged: TypedContractEvent; - "VersionChanged(bytes32,uint64)": TypedContractEvent; - VersionChanged: TypedContractEvent; - }; -} -//# sourceMappingURL=ContentHashResolver.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver.d.ts.map deleted file mode 100644 index 7356edb0..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ContentHashResolver.d.ts","sourceRoot":"","sources":["../../../../../../../types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver.js b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver.d.ts deleted file mode 100644 index 657f5f6f..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver.d.ts +++ /dev/null @@ -1,183 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; -export interface DNSResolverInterface extends Interface { - getFunction(nameOrSignature: "clearRecords" | "dnsRecord" | "hasDNSRecords" | "recordVersions" | "setDNSRecords" | "setZonehash" | "supportsInterface" | "zonehash"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "DNSRecordChanged" | "DNSRecordDeleted" | "DNSZonehashChanged" | "VersionChanged"): EventFragment; - encodeFunctionData(functionFragment: "clearRecords", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "dnsRecord", values: [BytesLike, BytesLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "hasDNSRecords", values: [BytesLike, BytesLike]): string; - encodeFunctionData(functionFragment: "recordVersions", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "setDNSRecords", values: [BytesLike, BytesLike]): string; - encodeFunctionData(functionFragment: "setZonehash", values: [BytesLike, BytesLike]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "zonehash", values: [BytesLike]): string; - decodeFunctionResult(functionFragment: "clearRecords", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "dnsRecord", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "hasDNSRecords", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "recordVersions", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setDNSRecords", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setZonehash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "zonehash", data: BytesLike): Result; -} -export declare namespace DNSRecordChangedEvent { - type InputTuple = [ - node: BytesLike, - name: BytesLike, - resource: BigNumberish, - record: BytesLike - ]; - type OutputTuple = [ - node: string, - name: string, - resource: bigint, - record: string - ]; - interface OutputObject { - node: string; - name: string; - resource: bigint; - record: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace DNSRecordDeletedEvent { - type InputTuple = [ - node: BytesLike, - name: BytesLike, - resource: BigNumberish - ]; - type OutputTuple = [node: string, name: string, resource: bigint]; - interface OutputObject { - node: string; - name: string; - resource: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace DNSZonehashChangedEvent { - type InputTuple = [ - node: BytesLike, - lastzonehash: BytesLike, - zonehash: BytesLike - ]; - type OutputTuple = [ - node: string, - lastzonehash: string, - zonehash: string - ]; - interface OutputObject { - node: string; - lastzonehash: string; - zonehash: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace VersionChangedEvent { - type InputTuple = [node: BytesLike, newVersion: BigNumberish]; - type OutputTuple = [node: string, newVersion: bigint]; - interface OutputObject { - node: string; - newVersion: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface DNSResolver extends BaseContract { - connect(runner?: ContractRunner | null): DNSResolver; - waitForDeployment(): Promise; - interface: DNSResolverInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - clearRecords: TypedContractMethod<[node: BytesLike], [void], "nonpayable">; - dnsRecord: TypedContractMethod<[ - node: BytesLike, - name: BytesLike, - resource: BigNumberish - ], [ - string - ], "view">; - hasDNSRecords: TypedContractMethod<[ - node: BytesLike, - name: BytesLike - ], [ - boolean - ], "view">; - recordVersions: TypedContractMethod<[arg0: BytesLike], [bigint], "view">; - setDNSRecords: TypedContractMethod<[ - node: BytesLike, - data: BytesLike - ], [ - void - ], "nonpayable">; - setZonehash: TypedContractMethod<[ - node: BytesLike, - hash: BytesLike - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceID: BytesLike - ], [ - boolean - ], "view">; - zonehash: TypedContractMethod<[node: BytesLike], [string], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "clearRecords"): TypedContractMethod<[node: BytesLike], [void], "nonpayable">; - getFunction(nameOrSignature: "dnsRecord"): TypedContractMethod<[ - node: BytesLike, - name: BytesLike, - resource: BigNumberish - ], [ - string - ], "view">; - getFunction(nameOrSignature: "hasDNSRecords"): TypedContractMethod<[node: BytesLike, name: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "recordVersions"): TypedContractMethod<[arg0: BytesLike], [bigint], "view">; - getFunction(nameOrSignature: "setDNSRecords"): TypedContractMethod<[ - node: BytesLike, - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setZonehash"): TypedContractMethod<[ - node: BytesLike, - hash: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceID: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "zonehash"): TypedContractMethod<[node: BytesLike], [string], "view">; - getEvent(key: "DNSRecordChanged"): TypedContractEvent; - getEvent(key: "DNSRecordDeleted"): TypedContractEvent; - getEvent(key: "DNSZonehashChanged"): TypedContractEvent; - getEvent(key: "VersionChanged"): TypedContractEvent; - filters: { - "DNSRecordChanged(bytes32,bytes,uint16,bytes)": TypedContractEvent; - DNSRecordChanged: TypedContractEvent; - "DNSRecordDeleted(bytes32,bytes,uint16)": TypedContractEvent; - DNSRecordDeleted: TypedContractEvent; - "DNSZonehashChanged(bytes32,bytes,bytes)": TypedContractEvent; - DNSZonehashChanged: TypedContractEvent; - "VersionChanged(bytes32,uint64)": TypedContractEvent; - VersionChanged: TypedContractEvent; - }; -} -//# sourceMappingURL=DNSResolver.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver.d.ts.map deleted file mode 100644 index 18694263..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"DNSResolver.d.ts","sourceRoot":"","sources":["../../../../../../../types/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver.js b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver.d.ts deleted file mode 100644 index 57394f76..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver.d.ts +++ /dev/null @@ -1,53 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; -export interface IABIResolverInterface extends Interface { - getFunction(nameOrSignature: "ABI"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "ABIChanged"): EventFragment; - encodeFunctionData(functionFragment: "ABI", values: [BytesLike, BigNumberish]): string; - decodeFunctionResult(functionFragment: "ABI", data: BytesLike): Result; -} -export declare namespace ABIChangedEvent { - type InputTuple = [node: BytesLike, contentType: BigNumberish]; - type OutputTuple = [node: string, contentType: bigint]; - interface OutputObject { - node: string; - contentType: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface IABIResolver extends BaseContract { - connect(runner?: ContractRunner | null): IABIResolver; - waitForDeployment(): Promise; - interface: IABIResolverInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - ABI: TypedContractMethod<[ - node: BytesLike, - contentTypes: BigNumberish - ], [ - [bigint, string] - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "ABI"): TypedContractMethod<[ - node: BytesLike, - contentTypes: BigNumberish - ], [ - [bigint, string] - ], "view">; - getEvent(key: "ABIChanged"): TypedContractEvent; - filters: { - "ABIChanged(bytes32,uint256)": TypedContractEvent; - ABIChanged: TypedContractEvent; - }; -} -//# sourceMappingURL=IABIResolver.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver.d.ts.map deleted file mode 100644 index 6d865056..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IABIResolver.d.ts","sourceRoot":"","sources":["../../../../../../../types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver.js b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver.d.ts deleted file mode 100644 index 30b112d0..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver.d.ts +++ /dev/null @@ -1,43 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; -export interface IAddrResolverInterface extends Interface { - getFunction(nameOrSignature: "addr"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "AddrChanged"): EventFragment; - encodeFunctionData(functionFragment: "addr", values: [BytesLike]): string; - decodeFunctionResult(functionFragment: "addr", data: BytesLike): Result; -} -export declare namespace AddrChangedEvent { - type InputTuple = [node: BytesLike, a: AddressLike]; - type OutputTuple = [node: string, a: string]; - interface OutputObject { - node: string; - a: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface IAddrResolver extends BaseContract { - connect(runner?: ContractRunner | null): IAddrResolver; - waitForDeployment(): Promise; - interface: IAddrResolverInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - addr: TypedContractMethod<[node: BytesLike], [string], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "addr"): TypedContractMethod<[node: BytesLike], [string], "view">; - getEvent(key: "AddrChanged"): TypedContractEvent; - filters: { - "AddrChanged(bytes32,address)": TypedContractEvent; - AddrChanged: TypedContractEvent; - }; -} -//# sourceMappingURL=IAddrResolver.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver.d.ts.map deleted file mode 100644 index a7b9084d..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IAddrResolver.d.ts","sourceRoot":"","sources":["../../../../../../../types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,aAAa,EACb,WAAW,EACX,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,mBAAmB,EACnB,aAAa,EACb,mBAAmB,EACpB,MAAM,uBAAuB,CAAC;AAE/B,MAAM,WAAW,sBAAuB,SAAQ,SAAS;IACvD,WAAW,CAAC,eAAe,EAAE,MAAM,GAAG,gBAAgB,CAAC;IAEvD,QAAQ,CAAC,sBAAsB,EAAE,aAAa,GAAG,aAAa,CAAC;IAE/D,kBAAkB,CAAC,gBAAgB,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC;IAE1E,oBAAoB,CAAC,gBAAgB,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;CACzE;AAED,yBAAiB,gBAAgB,CAAC;IAChC,KAAY,UAAU,GAAG,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,WAAW,CAAC,CAAC;IAC3D,KAAY,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;IACpD,UAAiB,YAAY;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,CAAC,EAAE,MAAM,CAAC;KACX;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,MAAM,WAAW,aAAc,SAAQ,YAAY;IACjD,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,aAAa,CAAC;IACvD,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,sBAAsB,CAAC;IAElC,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAE/D,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,WAAW,CACT,eAAe,EAAE,MAAM,GACtB,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAE5D,QAAQ,CACN,GAAG,EAAE,aAAa,GACjB,kBAAkB,CACnB,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;IAEF,OAAO,EAAE;QACP,8BAA8B,EAAE,kBAAkB,CAChD,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QACF,WAAW,EAAE,kBAAkB,CAC7B,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;KACH,CAAC;CACH"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver.js b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver.d.ts deleted file mode 100644 index 218555af..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver.d.ts +++ /dev/null @@ -1,62 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; -export interface IAddressResolverInterface extends Interface { - getFunction(nameOrSignature: "addr"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "AddressChanged"): EventFragment; - encodeFunctionData(functionFragment: "addr", values: [BytesLike, BigNumberish]): string; - decodeFunctionResult(functionFragment: "addr", data: BytesLike): Result; -} -export declare namespace AddressChangedEvent { - type InputTuple = [ - node: BytesLike, - coinType: BigNumberish, - newAddress: BytesLike - ]; - type OutputTuple = [ - node: string, - coinType: bigint, - newAddress: string - ]; - interface OutputObject { - node: string; - coinType: bigint; - newAddress: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface IAddressResolver extends BaseContract { - connect(runner?: ContractRunner | null): IAddressResolver; - waitForDeployment(): Promise; - interface: IAddressResolverInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - addr: TypedContractMethod<[ - node: BytesLike, - coinType: BigNumberish - ], [ - string - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "addr"): TypedContractMethod<[ - node: BytesLike, - coinType: BigNumberish - ], [ - string - ], "view">; - getEvent(key: "AddressChanged"): TypedContractEvent; - filters: { - "AddressChanged(bytes32,uint256,bytes)": TypedContractEvent; - AddressChanged: TypedContractEvent; - }; -} -//# sourceMappingURL=IAddressResolver.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver.d.ts.map deleted file mode 100644 index 4a0a288f..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IAddressResolver.d.ts","sourceRoot":"","sources":["../../../../../../../types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver.js b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver.d.ts deleted file mode 100644 index 78a7af9e..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver.d.ts +++ /dev/null @@ -1,43 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, EventFragment, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; -export interface IContentHashResolverInterface extends Interface { - getFunction(nameOrSignature: "contenthash"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "ContenthashChanged"): EventFragment; - encodeFunctionData(functionFragment: "contenthash", values: [BytesLike]): string; - decodeFunctionResult(functionFragment: "contenthash", data: BytesLike): Result; -} -export declare namespace ContenthashChangedEvent { - type InputTuple = [node: BytesLike, hash: BytesLike]; - type OutputTuple = [node: string, hash: string]; - interface OutputObject { - node: string; - hash: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface IContentHashResolver extends BaseContract { - connect(runner?: ContractRunner | null): IContentHashResolver; - waitForDeployment(): Promise; - interface: IContentHashResolverInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - contenthash: TypedContractMethod<[node: BytesLike], [string], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "contenthash"): TypedContractMethod<[node: BytesLike], [string], "view">; - getEvent(key: "ContenthashChanged"): TypedContractEvent; - filters: { - "ContenthashChanged(bytes32,bytes)": TypedContractEvent; - ContenthashChanged: TypedContractEvent; - }; -} -//# sourceMappingURL=IContentHashResolver.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver.d.ts.map deleted file mode 100644 index 571129f7..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IContentHashResolver.d.ts","sourceRoot":"","sources":["../../../../../../../types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver.js b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver.d.ts deleted file mode 100644 index 06d2cbe9..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver.d.ts +++ /dev/null @@ -1,87 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; -export interface IDNSRecordResolverInterface extends Interface { - getFunction(nameOrSignature: "dnsRecord"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "DNSRecordChanged" | "DNSRecordDeleted"): EventFragment; - encodeFunctionData(functionFragment: "dnsRecord", values: [BytesLike, BytesLike, BigNumberish]): string; - decodeFunctionResult(functionFragment: "dnsRecord", data: BytesLike): Result; -} -export declare namespace DNSRecordChangedEvent { - type InputTuple = [ - node: BytesLike, - name: BytesLike, - resource: BigNumberish, - record: BytesLike - ]; - type OutputTuple = [ - node: string, - name: string, - resource: bigint, - record: string - ]; - interface OutputObject { - node: string; - name: string; - resource: bigint; - record: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace DNSRecordDeletedEvent { - type InputTuple = [ - node: BytesLike, - name: BytesLike, - resource: BigNumberish - ]; - type OutputTuple = [node: string, name: string, resource: bigint]; - interface OutputObject { - node: string; - name: string; - resource: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface IDNSRecordResolver extends BaseContract { - connect(runner?: ContractRunner | null): IDNSRecordResolver; - waitForDeployment(): Promise; - interface: IDNSRecordResolverInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - dnsRecord: TypedContractMethod<[ - node: BytesLike, - name: BytesLike, - resource: BigNumberish - ], [ - string - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "dnsRecord"): TypedContractMethod<[ - node: BytesLike, - name: BytesLike, - resource: BigNumberish - ], [ - string - ], "view">; - getEvent(key: "DNSRecordChanged"): TypedContractEvent; - getEvent(key: "DNSRecordDeleted"): TypedContractEvent; - filters: { - "DNSRecordChanged(bytes32,bytes,uint16,bytes)": TypedContractEvent; - DNSRecordChanged: TypedContractEvent; - "DNSRecordDeleted(bytes32,bytes,uint16)": TypedContractEvent; - DNSRecordDeleted: TypedContractEvent; - }; -} -//# sourceMappingURL=IDNSRecordResolver.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver.d.ts.map deleted file mode 100644 index c154a8e2..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IDNSRecordResolver.d.ts","sourceRoot":"","sources":["../../../../../../../types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver.js b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver.d.ts deleted file mode 100644 index a7befdbd..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver.d.ts +++ /dev/null @@ -1,52 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, EventFragment, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; -export interface IDNSZoneResolverInterface extends Interface { - getFunction(nameOrSignature: "zonehash"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "DNSZonehashChanged"): EventFragment; - encodeFunctionData(functionFragment: "zonehash", values: [BytesLike]): string; - decodeFunctionResult(functionFragment: "zonehash", data: BytesLike): Result; -} -export declare namespace DNSZonehashChangedEvent { - type InputTuple = [ - node: BytesLike, - lastzonehash: BytesLike, - zonehash: BytesLike - ]; - type OutputTuple = [ - node: string, - lastzonehash: string, - zonehash: string - ]; - interface OutputObject { - node: string; - lastzonehash: string; - zonehash: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface IDNSZoneResolver extends BaseContract { - connect(runner?: ContractRunner | null): IDNSZoneResolver; - waitForDeployment(): Promise; - interface: IDNSZoneResolverInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - zonehash: TypedContractMethod<[node: BytesLike], [string], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "zonehash"): TypedContractMethod<[node: BytesLike], [string], "view">; - getEvent(key: "DNSZonehashChanged"): TypedContractEvent; - filters: { - "DNSZonehashChanged(bytes32,bytes,bytes)": TypedContractEvent; - DNSZonehashChanged: TypedContractEvent; - }; -} -//# sourceMappingURL=IDNSZoneResolver.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver.d.ts.map deleted file mode 100644 index 12f6d822..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IDNSZoneResolver.d.ts","sourceRoot":"","sources":["../../../../../../../types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver.js b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver.d.ts deleted file mode 100644 index 675ea730..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver.d.ts +++ /dev/null @@ -1,31 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../../common"; -export interface IExtendedResolverInterface extends Interface { - getFunction(nameOrSignature: "resolve"): FunctionFragment; - encodeFunctionData(functionFragment: "resolve", values: [BytesLike, BytesLike]): string; - decodeFunctionResult(functionFragment: "resolve", data: BytesLike): Result; -} -export interface IExtendedResolver extends BaseContract { - connect(runner?: ContractRunner | null): IExtendedResolver; - waitForDeployment(): Promise; - interface: IExtendedResolverInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - resolve: TypedContractMethod<[ - name: BytesLike, - data: BytesLike - ], [ - string - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "resolve"): TypedContractMethod<[name: BytesLike, data: BytesLike], [string], "view">; - filters: {}; -} -//# sourceMappingURL=IExtendedResolver.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver.d.ts.map deleted file mode 100644 index 9ea0cf27..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IExtendedResolver.d.ts","sourceRoot":"","sources":["../../../../../../../types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver.js b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver.d.ts deleted file mode 100644 index 2275b81d..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver.d.ts +++ /dev/null @@ -1,62 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; -export interface IInterfaceResolverInterface extends Interface { - getFunction(nameOrSignature: "interfaceImplementer"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "InterfaceChanged"): EventFragment; - encodeFunctionData(functionFragment: "interfaceImplementer", values: [BytesLike, BytesLike]): string; - decodeFunctionResult(functionFragment: "interfaceImplementer", data: BytesLike): Result; -} -export declare namespace InterfaceChangedEvent { - type InputTuple = [ - node: BytesLike, - interfaceID: BytesLike, - implementer: AddressLike - ]; - type OutputTuple = [ - node: string, - interfaceID: string, - implementer: string - ]; - interface OutputObject { - node: string; - interfaceID: string; - implementer: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface IInterfaceResolver extends BaseContract { - connect(runner?: ContractRunner | null): IInterfaceResolver; - waitForDeployment(): Promise; - interface: IInterfaceResolverInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - interfaceImplementer: TypedContractMethod<[ - node: BytesLike, - interfaceID: BytesLike - ], [ - string - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "interfaceImplementer"): TypedContractMethod<[ - node: BytesLike, - interfaceID: BytesLike - ], [ - string - ], "view">; - getEvent(key: "InterfaceChanged"): TypedContractEvent; - filters: { - "InterfaceChanged(bytes32,bytes4,address)": TypedContractEvent; - InterfaceChanged: TypedContractEvent; - }; -} -//# sourceMappingURL=IInterfaceResolver.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver.d.ts.map deleted file mode 100644 index 9515bf2e..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IInterfaceResolver.d.ts","sourceRoot":"","sources":["../../../../../../../types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver.js b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver.d.ts deleted file mode 100644 index 98345c22..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver.d.ts +++ /dev/null @@ -1,43 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, EventFragment, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; -export interface INameResolverInterface extends Interface { - getFunction(nameOrSignature: "name"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "NameChanged"): EventFragment; - encodeFunctionData(functionFragment: "name", values: [BytesLike]): string; - decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; -} -export declare namespace NameChangedEvent { - type InputTuple = [node: BytesLike, name: string]; - type OutputTuple = [node: string, name: string]; - interface OutputObject { - node: string; - name: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface INameResolver extends BaseContract { - connect(runner?: ContractRunner | null): INameResolver; - waitForDeployment(): Promise; - interface: INameResolverInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - name: TypedContractMethod<[node: BytesLike], [string], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "name"): TypedContractMethod<[node: BytesLike], [string], "view">; - getEvent(key: "NameChanged"): TypedContractEvent; - filters: { - "NameChanged(bytes32,string)": TypedContractEvent; - NameChanged: TypedContractEvent; - }; -} -//# sourceMappingURL=INameResolver.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver.d.ts.map deleted file mode 100644 index 148390ec..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"INameResolver.d.ts","sourceRoot":"","sources":["../../../../../../../types/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver.js b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver.d.ts deleted file mode 100644 index 036c3973..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver.d.ts +++ /dev/null @@ -1,58 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, EventFragment, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; -export interface IPubkeyResolverInterface extends Interface { - getFunction(nameOrSignature: "pubkey"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "PubkeyChanged"): EventFragment; - encodeFunctionData(functionFragment: "pubkey", values: [BytesLike]): string; - decodeFunctionResult(functionFragment: "pubkey", data: BytesLike): Result; -} -export declare namespace PubkeyChangedEvent { - type InputTuple = [node: BytesLike, x: BytesLike, y: BytesLike]; - type OutputTuple = [node: string, x: string, y: string]; - interface OutputObject { - node: string; - x: string; - y: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface IPubkeyResolver extends BaseContract { - connect(runner?: ContractRunner | null): IPubkeyResolver; - waitForDeployment(): Promise; - interface: IPubkeyResolverInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - pubkey: TypedContractMethod<[ - node: BytesLike - ], [ - [string, string] & { - x: string; - y: string; - } - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "pubkey"): TypedContractMethod<[ - node: BytesLike - ], [ - [string, string] & { - x: string; - y: string; - } - ], "view">; - getEvent(key: "PubkeyChanged"): TypedContractEvent; - filters: { - "PubkeyChanged(bytes32,bytes32,bytes32)": TypedContractEvent; - PubkeyChanged: TypedContractEvent; - }; -} -//# sourceMappingURL=IPubkeyResolver.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver.d.ts.map deleted file mode 100644 index 3086f5b8..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IPubkeyResolver.d.ts","sourceRoot":"","sources":["../../../../../../../types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver.js b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver.d.ts deleted file mode 100644 index 4c921a79..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver.d.ts +++ /dev/null @@ -1,55 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, EventFragment, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; -export interface ITextResolverInterface extends Interface { - getFunction(nameOrSignature: "text"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "TextChanged"): EventFragment; - encodeFunctionData(functionFragment: "text", values: [BytesLike, string]): string; - decodeFunctionResult(functionFragment: "text", data: BytesLike): Result; -} -export declare namespace TextChangedEvent { - type InputTuple = [ - node: BytesLike, - indexedKey: string, - key: string, - value: string - ]; - type OutputTuple = [ - node: string, - indexedKey: string, - key: string, - value: string - ]; - interface OutputObject { - node: string; - indexedKey: string; - key: string; - value: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface ITextResolver extends BaseContract { - connect(runner?: ContractRunner | null): ITextResolver; - waitForDeployment(): Promise; - interface: ITextResolverInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - text: TypedContractMethod<[node: BytesLike, key: string], [string], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "text"): TypedContractMethod<[node: BytesLike, key: string], [string], "view">; - getEvent(key: "TextChanged"): TypedContractEvent; - filters: { - "TextChanged(bytes32,string,string,string)": TypedContractEvent; - TextChanged: TypedContractEvent; - }; -} -//# sourceMappingURL=ITextResolver.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver.d.ts.map deleted file mode 100644 index e5675ad4..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ITextResolver.d.ts","sourceRoot":"","sources":["../../../../../../../types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver.js b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver.d.ts deleted file mode 100644 index af5d59a5..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver.d.ts +++ /dev/null @@ -1,43 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; -export interface IVersionableResolverInterface extends Interface { - getFunction(nameOrSignature: "recordVersions"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "VersionChanged"): EventFragment; - encodeFunctionData(functionFragment: "recordVersions", values: [BytesLike]): string; - decodeFunctionResult(functionFragment: "recordVersions", data: BytesLike): Result; -} -export declare namespace VersionChangedEvent { - type InputTuple = [node: BytesLike, newVersion: BigNumberish]; - type OutputTuple = [node: string, newVersion: bigint]; - interface OutputObject { - node: string; - newVersion: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface IVersionableResolver extends BaseContract { - connect(runner?: ContractRunner | null): IVersionableResolver; - waitForDeployment(): Promise; - interface: IVersionableResolverInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - recordVersions: TypedContractMethod<[node: BytesLike], [bigint], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "recordVersions"): TypedContractMethod<[node: BytesLike], [bigint], "view">; - getEvent(key: "VersionChanged"): TypedContractEvent; - filters: { - "VersionChanged(bytes32,uint64)": TypedContractEvent; - VersionChanged: TypedContractEvent; - }; -} -//# sourceMappingURL=IVersionableResolver.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver.d.ts.map deleted file mode 100644 index 36519309..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IVersionableResolver.d.ts","sourceRoot":"","sources":["../../../../../../../types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver.js b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver.d.ts deleted file mode 100644 index a3ff5059..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver.d.ts +++ /dev/null @@ -1,196 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; -export interface InterfaceResolverInterface extends Interface { - getFunction(nameOrSignature: "addr(bytes32)" | "addr(bytes32,uint256)" | "clearRecords" | "interfaceImplementer" | "recordVersions" | "setAddr(bytes32,uint256,bytes)" | "setAddr(bytes32,address)" | "setInterface" | "supportsInterface"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "AddrChanged" | "AddressChanged" | "InterfaceChanged" | "VersionChanged"): EventFragment; - encodeFunctionData(functionFragment: "addr(bytes32)", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "addr(bytes32,uint256)", values: [BytesLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "clearRecords", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "interfaceImplementer", values: [BytesLike, BytesLike]): string; - encodeFunctionData(functionFragment: "recordVersions", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "setAddr(bytes32,uint256,bytes)", values: [BytesLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "setAddr(bytes32,address)", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "setInterface", values: [BytesLike, BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - decodeFunctionResult(functionFragment: "addr(bytes32)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "addr(bytes32,uint256)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "clearRecords", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "interfaceImplementer", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "recordVersions", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setAddr(bytes32,uint256,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setAddr(bytes32,address)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; -} -export declare namespace AddrChangedEvent { - type InputTuple = [node: BytesLike, a: AddressLike]; - type OutputTuple = [node: string, a: string]; - interface OutputObject { - node: string; - a: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace AddressChangedEvent { - type InputTuple = [ - node: BytesLike, - coinType: BigNumberish, - newAddress: BytesLike - ]; - type OutputTuple = [ - node: string, - coinType: bigint, - newAddress: string - ]; - interface OutputObject { - node: string; - coinType: bigint; - newAddress: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace InterfaceChangedEvent { - type InputTuple = [ - node: BytesLike, - interfaceID: BytesLike, - implementer: AddressLike - ]; - type OutputTuple = [ - node: string, - interfaceID: string, - implementer: string - ]; - interface OutputObject { - node: string; - interfaceID: string; - implementer: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace VersionChangedEvent { - type InputTuple = [node: BytesLike, newVersion: BigNumberish]; - type OutputTuple = [node: string, newVersion: bigint]; - interface OutputObject { - node: string; - newVersion: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface InterfaceResolver extends BaseContract { - connect(runner?: ContractRunner | null): InterfaceResolver; - waitForDeployment(): Promise; - interface: InterfaceResolverInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - "addr(bytes32)": TypedContractMethod<[node: BytesLike], [string], "view">; - "addr(bytes32,uint256)": TypedContractMethod<[ - node: BytesLike, - coinType: BigNumberish - ], [ - string - ], "view">; - clearRecords: TypedContractMethod<[node: BytesLike], [void], "nonpayable">; - interfaceImplementer: TypedContractMethod<[ - node: BytesLike, - interfaceID: BytesLike - ], [ - string - ], "view">; - recordVersions: TypedContractMethod<[arg0: BytesLike], [bigint], "view">; - "setAddr(bytes32,uint256,bytes)": TypedContractMethod<[ - node: BytesLike, - coinType: BigNumberish, - a: BytesLike - ], [ - void - ], "nonpayable">; - "setAddr(bytes32,address)": TypedContractMethod<[ - node: BytesLike, - a: AddressLike - ], [ - void - ], "nonpayable">; - setInterface: TypedContractMethod<[ - node: BytesLike, - interfaceID: BytesLike, - implementer: AddressLike - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceID: BytesLike - ], [ - boolean - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "addr(bytes32)"): TypedContractMethod<[node: BytesLike], [string], "view">; - getFunction(nameOrSignature: "addr(bytes32,uint256)"): TypedContractMethod<[ - node: BytesLike, - coinType: BigNumberish - ], [ - string - ], "view">; - getFunction(nameOrSignature: "clearRecords"): TypedContractMethod<[node: BytesLike], [void], "nonpayable">; - getFunction(nameOrSignature: "interfaceImplementer"): TypedContractMethod<[ - node: BytesLike, - interfaceID: BytesLike - ], [ - string - ], "view">; - getFunction(nameOrSignature: "recordVersions"): TypedContractMethod<[arg0: BytesLike], [bigint], "view">; - getFunction(nameOrSignature: "setAddr(bytes32,uint256,bytes)"): TypedContractMethod<[ - node: BytesLike, - coinType: BigNumberish, - a: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setAddr(bytes32,address)"): TypedContractMethod<[ - node: BytesLike, - a: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setInterface"): TypedContractMethod<[ - node: BytesLike, - interfaceID: BytesLike, - implementer: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceID: BytesLike], [boolean], "view">; - getEvent(key: "AddrChanged"): TypedContractEvent; - getEvent(key: "AddressChanged"): TypedContractEvent; - getEvent(key: "InterfaceChanged"): TypedContractEvent; - getEvent(key: "VersionChanged"): TypedContractEvent; - filters: { - "AddrChanged(bytes32,address)": TypedContractEvent; - AddrChanged: TypedContractEvent; - "AddressChanged(bytes32,uint256,bytes)": TypedContractEvent; - AddressChanged: TypedContractEvent; - "InterfaceChanged(bytes32,bytes4,address)": TypedContractEvent; - InterfaceChanged: TypedContractEvent; - "VersionChanged(bytes32,uint64)": TypedContractEvent; - VersionChanged: TypedContractEvent; - }; -} -//# sourceMappingURL=InterfaceResolver.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver.d.ts.map deleted file mode 100644 index 54a7c0fa..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"InterfaceResolver.d.ts","sourceRoot":"","sources":["../../../../../../../types/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver.js b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver.d.ts deleted file mode 100644 index e9bd1330..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver.d.ts +++ /dev/null @@ -1,88 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; -export interface NameResolverInterface extends Interface { - getFunction(nameOrSignature: "clearRecords" | "name" | "recordVersions" | "setName" | "supportsInterface"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "NameChanged" | "VersionChanged"): EventFragment; - encodeFunctionData(functionFragment: "clearRecords", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "name", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "recordVersions", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "setName", values: [BytesLike, string]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - decodeFunctionResult(functionFragment: "clearRecords", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "recordVersions", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setName", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; -} -export declare namespace NameChangedEvent { - type InputTuple = [node: BytesLike, name: string]; - type OutputTuple = [node: string, name: string]; - interface OutputObject { - node: string; - name: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace VersionChangedEvent { - type InputTuple = [node: BytesLike, newVersion: BigNumberish]; - type OutputTuple = [node: string, newVersion: bigint]; - interface OutputObject { - node: string; - newVersion: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface NameResolver extends BaseContract { - connect(runner?: ContractRunner | null): NameResolver; - waitForDeployment(): Promise; - interface: NameResolverInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - clearRecords: TypedContractMethod<[node: BytesLike], [void], "nonpayable">; - name: TypedContractMethod<[node: BytesLike], [string], "view">; - recordVersions: TypedContractMethod<[arg0: BytesLike], [bigint], "view">; - setName: TypedContractMethod<[ - node: BytesLike, - newName: string - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceID: BytesLike - ], [ - boolean - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "clearRecords"): TypedContractMethod<[node: BytesLike], [void], "nonpayable">; - getFunction(nameOrSignature: "name"): TypedContractMethod<[node: BytesLike], [string], "view">; - getFunction(nameOrSignature: "recordVersions"): TypedContractMethod<[arg0: BytesLike], [bigint], "view">; - getFunction(nameOrSignature: "setName"): TypedContractMethod<[ - node: BytesLike, - newName: string - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceID: BytesLike], [boolean], "view">; - getEvent(key: "NameChanged"): TypedContractEvent; - getEvent(key: "VersionChanged"): TypedContractEvent; - filters: { - "NameChanged(bytes32,string)": TypedContractEvent; - NameChanged: TypedContractEvent; - "VersionChanged(bytes32,uint64)": TypedContractEvent; - VersionChanged: TypedContractEvent; - }; -} -//# sourceMappingURL=NameResolver.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver.d.ts.map deleted file mode 100644 index 395bdc0d..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"NameResolver.d.ts","sourceRoot":"","sources":["../../../../../../../types/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver.js b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver.d.ts deleted file mode 100644 index bae32e7e..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver.d.ts +++ /dev/null @@ -1,105 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; -export interface PubkeyResolverInterface extends Interface { - getFunction(nameOrSignature: "clearRecords" | "pubkey" | "recordVersions" | "setPubkey" | "supportsInterface"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "PubkeyChanged" | "VersionChanged"): EventFragment; - encodeFunctionData(functionFragment: "clearRecords", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "pubkey", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "recordVersions", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "setPubkey", values: [BytesLike, BytesLike, BytesLike]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - decodeFunctionResult(functionFragment: "clearRecords", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "pubkey", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "recordVersions", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setPubkey", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; -} -export declare namespace PubkeyChangedEvent { - type InputTuple = [node: BytesLike, x: BytesLike, y: BytesLike]; - type OutputTuple = [node: string, x: string, y: string]; - interface OutputObject { - node: string; - x: string; - y: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace VersionChangedEvent { - type InputTuple = [node: BytesLike, newVersion: BigNumberish]; - type OutputTuple = [node: string, newVersion: bigint]; - interface OutputObject { - node: string; - newVersion: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface PubkeyResolver extends BaseContract { - connect(runner?: ContractRunner | null): PubkeyResolver; - waitForDeployment(): Promise; - interface: PubkeyResolverInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - clearRecords: TypedContractMethod<[node: BytesLike], [void], "nonpayable">; - pubkey: TypedContractMethod<[ - node: BytesLike - ], [ - [string, string] & { - x: string; - y: string; - } - ], "view">; - recordVersions: TypedContractMethod<[arg0: BytesLike], [bigint], "view">; - setPubkey: TypedContractMethod<[ - node: BytesLike, - x: BytesLike, - y: BytesLike - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceID: BytesLike - ], [ - boolean - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "clearRecords"): TypedContractMethod<[node: BytesLike], [void], "nonpayable">; - getFunction(nameOrSignature: "pubkey"): TypedContractMethod<[ - node: BytesLike - ], [ - [string, string] & { - x: string; - y: string; - } - ], "view">; - getFunction(nameOrSignature: "recordVersions"): TypedContractMethod<[arg0: BytesLike], [bigint], "view">; - getFunction(nameOrSignature: "setPubkey"): TypedContractMethod<[ - node: BytesLike, - x: BytesLike, - y: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceID: BytesLike], [boolean], "view">; - getEvent(key: "PubkeyChanged"): TypedContractEvent; - getEvent(key: "VersionChanged"): TypedContractEvent; - filters: { - "PubkeyChanged(bytes32,bytes32,bytes32)": TypedContractEvent; - PubkeyChanged: TypedContractEvent; - "VersionChanged(bytes32,uint64)": TypedContractEvent; - VersionChanged: TypedContractEvent; - }; -} -//# sourceMappingURL=PubkeyResolver.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver.d.ts.map deleted file mode 100644 index c275db21..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"PubkeyResolver.d.ts","sourceRoot":"","sources":["../../../../../../../types/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver.js b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver.d.ts deleted file mode 100644 index a1819073..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver.d.ts +++ /dev/null @@ -1,102 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; -export interface TextResolverInterface extends Interface { - getFunction(nameOrSignature: "clearRecords" | "recordVersions" | "setText" | "supportsInterface" | "text"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "TextChanged" | "VersionChanged"): EventFragment; - encodeFunctionData(functionFragment: "clearRecords", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "recordVersions", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "setText", values: [BytesLike, string, string]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "text", values: [BytesLike, string]): string; - decodeFunctionResult(functionFragment: "clearRecords", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "recordVersions", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setText", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "text", data: BytesLike): Result; -} -export declare namespace TextChangedEvent { - type InputTuple = [ - node: BytesLike, - indexedKey: string, - key: string, - value: string - ]; - type OutputTuple = [ - node: string, - indexedKey: string, - key: string, - value: string - ]; - interface OutputObject { - node: string; - indexedKey: string; - key: string; - value: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace VersionChangedEvent { - type InputTuple = [node: BytesLike, newVersion: BigNumberish]; - type OutputTuple = [node: string, newVersion: bigint]; - interface OutputObject { - node: string; - newVersion: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface TextResolver extends BaseContract { - connect(runner?: ContractRunner | null): TextResolver; - waitForDeployment(): Promise; - interface: TextResolverInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - clearRecords: TypedContractMethod<[node: BytesLike], [void], "nonpayable">; - recordVersions: TypedContractMethod<[arg0: BytesLike], [bigint], "view">; - setText: TypedContractMethod<[ - node: BytesLike, - key: string, - value: string - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceID: BytesLike - ], [ - boolean - ], "view">; - text: TypedContractMethod<[node: BytesLike, key: string], [string], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "clearRecords"): TypedContractMethod<[node: BytesLike], [void], "nonpayable">; - getFunction(nameOrSignature: "recordVersions"): TypedContractMethod<[arg0: BytesLike], [bigint], "view">; - getFunction(nameOrSignature: "setText"): TypedContractMethod<[ - node: BytesLike, - key: string, - value: string - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceID: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "text"): TypedContractMethod<[node: BytesLike, key: string], [string], "view">; - getEvent(key: "TextChanged"): TypedContractEvent; - getEvent(key: "VersionChanged"): TypedContractEvent; - filters: { - "TextChanged(bytes32,string,string,string)": TypedContractEvent; - TextChanged: TypedContractEvent; - "VersionChanged(bytes32,uint64)": TypedContractEvent; - VersionChanged: TypedContractEvent; - }; -} -//# sourceMappingURL=TextResolver.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver.d.ts.map deleted file mode 100644 index bda6a2e6..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"TextResolver.d.ts","sourceRoot":"","sources":["../../../../../../../types/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver.js b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/index.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/index.d.ts deleted file mode 100644 index bebb21e7..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/index.d.ts +++ /dev/null @@ -1,21 +0,0 @@ -export type { ABIResolver } from "./ABIResolver"; -export type { AddrResolver } from "./AddrResolver"; -export type { ContentHashResolver } from "./ContentHashResolver"; -export type { DNSResolver } from "./DNSResolver"; -export type { IABIResolver } from "./IABIResolver"; -export type { IAddrResolver } from "./IAddrResolver"; -export type { IAddressResolver } from "./IAddressResolver"; -export type { IContentHashResolver } from "./IContentHashResolver"; -export type { IDNSRecordResolver } from "./IDNSRecordResolver"; -export type { IDNSZoneResolver } from "./IDNSZoneResolver"; -export type { IExtendedResolver } from "./IExtendedResolver"; -export type { IInterfaceResolver } from "./IInterfaceResolver"; -export type { INameResolver } from "./INameResolver"; -export type { IPubkeyResolver } from "./IPubkeyResolver"; -export type { ITextResolver } from "./ITextResolver"; -export type { IVersionableResolver } from "./IVersionableResolver"; -export type { InterfaceResolver } from "./InterfaceResolver"; -export type { NameResolver } from "./NameResolver"; -export type { PubkeyResolver } from "./PubkeyResolver"; -export type { TextResolver } from "./TextResolver"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/index.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/index.d.ts.map deleted file mode 100644 index b4d1c205..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/@ensdomains/ens-contracts/contracts/resolvers/profiles/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,YAAY,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACnD,YAAY,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,YAAY,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACnD,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,YAAY,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACnE,YAAY,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,YAAY,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,YAAY,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,YAAY,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,YAAY,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACnE,YAAY,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,YAAY,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACnD,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,YAAY,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/index.js b/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar.d.ts deleted file mode 100644 index e027bb68..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar.d.ts +++ /dev/null @@ -1,90 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; -export interface IReverseRegistrarInterface extends Interface { - getFunction(nameOrSignature: "claim" | "claimForAddr" | "claimWithResolver" | "node" | "setDefaultResolver" | "setName" | "setNameForAddr"): FunctionFragment; - encodeFunctionData(functionFragment: "claim", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "claimForAddr", values: [AddressLike, AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "claimWithResolver", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "node", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "setDefaultResolver", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "setName", values: [string]): string; - encodeFunctionData(functionFragment: "setNameForAddr", values: [AddressLike, AddressLike, AddressLike, string]): string; - decodeFunctionResult(functionFragment: "claim", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "claimForAddr", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "claimWithResolver", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "node", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setDefaultResolver", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setName", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setNameForAddr", data: BytesLike): Result; -} -export interface IReverseRegistrar extends BaseContract { - connect(runner?: ContractRunner | null): IReverseRegistrar; - waitForDeployment(): Promise; - interface: IReverseRegistrarInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - claim: TypedContractMethod<[owner: AddressLike], [string], "nonpayable">; - claimForAddr: TypedContractMethod<[ - addr: AddressLike, - owner: AddressLike, - resolver: AddressLike - ], [ - string - ], "nonpayable">; - claimWithResolver: TypedContractMethod<[ - owner: AddressLike, - resolver: AddressLike - ], [ - string - ], "nonpayable">; - node: TypedContractMethod<[addr: AddressLike], [string], "view">; - setDefaultResolver: TypedContractMethod<[ - resolver: AddressLike - ], [ - void - ], "nonpayable">; - setName: TypedContractMethod<[name: string], [string], "nonpayable">; - setNameForAddr: TypedContractMethod<[ - addr: AddressLike, - owner: AddressLike, - resolver: AddressLike, - name: string - ], [ - string - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "claim"): TypedContractMethod<[owner: AddressLike], [string], "nonpayable">; - getFunction(nameOrSignature: "claimForAddr"): TypedContractMethod<[ - addr: AddressLike, - owner: AddressLike, - resolver: AddressLike - ], [ - string - ], "nonpayable">; - getFunction(nameOrSignature: "claimWithResolver"): TypedContractMethod<[ - owner: AddressLike, - resolver: AddressLike - ], [ - string - ], "nonpayable">; - getFunction(nameOrSignature: "node"): TypedContractMethod<[addr: AddressLike], [string], "view">; - getFunction(nameOrSignature: "setDefaultResolver"): TypedContractMethod<[resolver: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "setName"): TypedContractMethod<[name: string], [string], "nonpayable">; - getFunction(nameOrSignature: "setNameForAddr"): TypedContractMethod<[ - addr: AddressLike, - owner: AddressLike, - resolver: AddressLike, - name: string - ], [ - string - ], "nonpayable">; - filters: {}; -} -//# sourceMappingURL=IReverseRegistrar.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar.d.ts.map deleted file mode 100644 index a72ee15f..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IReverseRegistrar.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar.js b/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer.d.ts deleted file mode 100644 index a4edf054..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer.d.ts +++ /dev/null @@ -1,21 +0,0 @@ -import type { BaseContract, FunctionFragment, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener } from "../../../../common"; -export interface ReverseClaimerInterface extends Interface { -} -export interface ReverseClaimer extends BaseContract { - connect(runner?: ContractRunner | null): ReverseClaimer; - waitForDeployment(): Promise; - interface: ReverseClaimerInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - getFunction(key: string | FunctionFragment): T; - filters: {}; -} -//# sourceMappingURL=ReverseClaimer.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer.d.ts.map deleted file mode 100644 index c9e932b9..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ReverseClaimer.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,gBAAgB,EAChB,SAAS,EACT,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,aAAa,EACd,MAAM,oBAAoB,CAAC;AAE5B,MAAM,WAAW,uBAAwB,SAAQ,SAAS;CAAG;AAE7D,MAAM,WAAW,cAAe,SAAQ,YAAY;IAClD,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,cAAc,CAAC;IACxD,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,uBAAuB,CAAC;IAEnC,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,OAAO,EAAE,EAAE,CAAC;CACb"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer.js b/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/NameResolver.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/NameResolver.d.ts deleted file mode 100644 index 5d7904d9..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/NameResolver.d.ts +++ /dev/null @@ -1,31 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../../common"; -export interface NameResolverInterface extends Interface { - getFunction(nameOrSignature: "setName"): FunctionFragment; - encodeFunctionData(functionFragment: "setName", values: [BytesLike, string]): string; - decodeFunctionResult(functionFragment: "setName", data: BytesLike): Result; -} -export interface NameResolver extends BaseContract { - connect(runner?: ContractRunner | null): NameResolver; - waitForDeployment(): Promise; - interface: NameResolverInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - setName: TypedContractMethod<[ - node: BytesLike, - name: string - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "setName"): TypedContractMethod<[node: BytesLike, name: string], [void], "nonpayable">; - filters: {}; -} -//# sourceMappingURL=NameResolver.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/NameResolver.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/NameResolver.d.ts.map deleted file mode 100644 index 13b50565..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/NameResolver.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"NameResolver.d.ts","sourceRoot":"","sources":["../../../../../../../types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/NameResolver.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/NameResolver.js b/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/NameResolver.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/NameResolver.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar.d.ts deleted file mode 100644 index 12084438..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar.d.ts +++ /dev/null @@ -1,193 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; -export interface ReverseRegistrarInterface extends Interface { - getFunction(nameOrSignature: "claim" | "claimForAddr" | "claimWithResolver" | "controllers" | "defaultResolver" | "ens" | "node" | "owner" | "renounceOwnership" | "setController" | "setDefaultResolver" | "setName" | "setNameForAddr" | "transferOwnership"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "ControllerChanged" | "DefaultResolverChanged" | "OwnershipTransferred" | "ReverseClaimed"): EventFragment; - encodeFunctionData(functionFragment: "claim", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "claimForAddr", values: [AddressLike, AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "claimWithResolver", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "controllers", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "defaultResolver", values?: undefined): string; - encodeFunctionData(functionFragment: "ens", values?: undefined): string; - encodeFunctionData(functionFragment: "node", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "owner", values?: undefined): string; - encodeFunctionData(functionFragment: "renounceOwnership", values?: undefined): string; - encodeFunctionData(functionFragment: "setController", values: [AddressLike, boolean]): string; - encodeFunctionData(functionFragment: "setDefaultResolver", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "setName", values: [string]): string; - encodeFunctionData(functionFragment: "setNameForAddr", values: [AddressLike, AddressLike, AddressLike, string]): string; - encodeFunctionData(functionFragment: "transferOwnership", values: [AddressLike]): string; - decodeFunctionResult(functionFragment: "claim", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "claimForAddr", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "claimWithResolver", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "controllers", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "defaultResolver", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ens", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "node", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceOwnership", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setController", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setDefaultResolver", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setName", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setNameForAddr", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result; -} -export declare namespace ControllerChangedEvent { - type InputTuple = [controller: AddressLike, enabled: boolean]; - type OutputTuple = [controller: string, enabled: boolean]; - interface OutputObject { - controller: string; - enabled: boolean; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace DefaultResolverChangedEvent { - type InputTuple = [resolver: AddressLike]; - type OutputTuple = [resolver: string]; - interface OutputObject { - resolver: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace OwnershipTransferredEvent { - type InputTuple = [previousOwner: AddressLike, newOwner: AddressLike]; - type OutputTuple = [previousOwner: string, newOwner: string]; - interface OutputObject { - previousOwner: string; - newOwner: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ReverseClaimedEvent { - type InputTuple = [addr: AddressLike, node: BytesLike]; - type OutputTuple = [addr: string, node: string]; - interface OutputObject { - addr: string; - node: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface ReverseRegistrar extends BaseContract { - connect(runner?: ContractRunner | null): ReverseRegistrar; - waitForDeployment(): Promise; - interface: ReverseRegistrarInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - claim: TypedContractMethod<[owner: AddressLike], [string], "nonpayable">; - claimForAddr: TypedContractMethod<[ - addr: AddressLike, - owner: AddressLike, - resolver: AddressLike - ], [ - string - ], "nonpayable">; - claimWithResolver: TypedContractMethod<[ - owner: AddressLike, - resolver: AddressLike - ], [ - string - ], "nonpayable">; - controllers: TypedContractMethod<[arg0: AddressLike], [boolean], "view">; - defaultResolver: TypedContractMethod<[], [string], "view">; - ens: TypedContractMethod<[], [string], "view">; - node: TypedContractMethod<[addr: AddressLike], [string], "view">; - owner: TypedContractMethod<[], [string], "view">; - renounceOwnership: TypedContractMethod<[], [void], "nonpayable">; - setController: TypedContractMethod<[ - controller: AddressLike, - enabled: boolean - ], [ - void - ], "nonpayable">; - setDefaultResolver: TypedContractMethod<[ - resolver: AddressLike - ], [ - void - ], "nonpayable">; - setName: TypedContractMethod<[name: string], [string], "nonpayable">; - setNameForAddr: TypedContractMethod<[ - addr: AddressLike, - owner: AddressLike, - resolver: AddressLike, - name: string - ], [ - string - ], "nonpayable">; - transferOwnership: TypedContractMethod<[ - newOwner: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "claim"): TypedContractMethod<[owner: AddressLike], [string], "nonpayable">; - getFunction(nameOrSignature: "claimForAddr"): TypedContractMethod<[ - addr: AddressLike, - owner: AddressLike, - resolver: AddressLike - ], [ - string - ], "nonpayable">; - getFunction(nameOrSignature: "claimWithResolver"): TypedContractMethod<[ - owner: AddressLike, - resolver: AddressLike - ], [ - string - ], "nonpayable">; - getFunction(nameOrSignature: "controllers"): TypedContractMethod<[arg0: AddressLike], [boolean], "view">; - getFunction(nameOrSignature: "defaultResolver"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "ens"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "node"): TypedContractMethod<[addr: AddressLike], [string], "view">; - getFunction(nameOrSignature: "owner"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "renounceOwnership"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "setController"): TypedContractMethod<[ - controller: AddressLike, - enabled: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setDefaultResolver"): TypedContractMethod<[resolver: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "setName"): TypedContractMethod<[name: string], [string], "nonpayable">; - getFunction(nameOrSignature: "setNameForAddr"): TypedContractMethod<[ - addr: AddressLike, - owner: AddressLike, - resolver: AddressLike, - name: string - ], [ - string - ], "nonpayable">; - getFunction(nameOrSignature: "transferOwnership"): TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">; - getEvent(key: "ControllerChanged"): TypedContractEvent; - getEvent(key: "DefaultResolverChanged"): TypedContractEvent; - getEvent(key: "OwnershipTransferred"): TypedContractEvent; - getEvent(key: "ReverseClaimed"): TypedContractEvent; - filters: { - "ControllerChanged(address,bool)": TypedContractEvent; - ControllerChanged: TypedContractEvent; - "DefaultResolverChanged(address)": TypedContractEvent; - DefaultResolverChanged: TypedContractEvent; - "OwnershipTransferred(address,address)": TypedContractEvent; - OwnershipTransferred: TypedContractEvent; - "ReverseClaimed(address,bytes32)": TypedContractEvent; - ReverseClaimed: TypedContractEvent; - }; -} -//# sourceMappingURL=ReverseRegistrar.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar.d.ts.map deleted file mode 100644 index 941e775a..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ReverseRegistrar.d.ts","sourceRoot":"","sources":["../../../../../../../types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,aAAa,EACb,WAAW,EACX,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,mBAAmB,EACnB,aAAa,EACb,mBAAmB,EACpB,MAAM,uBAAuB,CAAC;AAE/B,MAAM,WAAW,yBAA0B,SAAQ,SAAS;IAC1D,WAAW,CACT,eAAe,EACX,OAAO,GACP,cAAc,GACd,mBAAmB,GACnB,aAAa,GACb,iBAAiB,GACjB,KAAK,GACL,MAAM,GACN,OAAO,GACP,mBAAmB,GACnB,eAAe,GACf,oBAAoB,GACpB,SAAS,GACT,gBAAgB,GAChB,mBAAmB,GACtB,gBAAgB,CAAC;IAEpB,QAAQ,CACN,sBAAsB,EAClB,mBAAmB,GACnB,wBAAwB,GACxB,sBAAsB,GACtB,gBAAgB,GACnB,aAAa,CAAC;IAEjB,kBAAkB,CAAC,gBAAgB,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,WAAW,CAAC,GAAG,MAAM,CAAC;IAC7E,kBAAkB,CAChB,gBAAgB,EAAE,cAAc,EAChC,MAAM,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,WAAW,CAAC,GAC9C,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,mBAAmB,EACrC,MAAM,EAAE,CAAC,WAAW,EAAE,WAAW,CAAC,GACjC,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,aAAa,EAC/B,MAAM,EAAE,CAAC,WAAW,CAAC,GACpB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,iBAAiB,EACnC,MAAM,CAAC,EAAE,SAAS,GACjB,MAAM,CAAC;IACV,kBAAkB,CAAC,gBAAgB,EAAE,KAAK,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IACxE,kBAAkB,CAAC,gBAAgB,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,WAAW,CAAC,GAAG,MAAM,CAAC;IAC5E,kBAAkB,CAAC,gBAAgB,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IAC1E,kBAAkB,CAChB,gBAAgB,EAAE,mBAAmB,EACrC,MAAM,CAAC,EAAE,SAAS,GACjB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,eAAe,EACjC,MAAM,EAAE,CAAC,WAAW,EAAE,OAAO,CAAC,GAC7B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,oBAAoB,EACtC,MAAM,EAAE,CAAC,WAAW,CAAC,GACpB,MAAM,CAAC;IACV,kBAAkB,CAAC,gBAAgB,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;IAC1E,kBAAkB,CAChB,gBAAgB,EAAE,gBAAgB,EAClC,MAAM,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,CAAC,GACtD,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,mBAAmB,EACrC,MAAM,EAAE,CAAC,WAAW,CAAC,GACpB,MAAM,CAAC;IAEV,oBAAoB,CAAC,gBAAgB,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IACzE,oBAAoB,CAClB,gBAAgB,EAAE,cAAc,EAChC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,mBAAmB,EACrC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,aAAa,EAC/B,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,iBAAiB,EACnC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IACvE,oBAAoB,CAAC,gBAAgB,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IACxE,oBAAoB,CAAC,gBAAgB,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IACzE,oBAAoB,CAClB,gBAAgB,EAAE,mBAAmB,EACrC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,eAAe,EACjC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,oBAAoB,EACtC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,oBAAoB,CAClB,gBAAgB,EAAE,gBAAgB,EAClC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,mBAAmB,EACrC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;CACX;AAED,yBAAiB,sBAAsB,CAAC;IACtC,KAAY,UAAU,GAAG,CAAC,UAAU,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IACrE,KAAY,WAAW,GAAG,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IACjE,UAAiB,YAAY;QAC3B,UAAU,EAAE,MAAM,CAAC;QACnB,OAAO,EAAE,OAAO,CAAC;KAClB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,2BAA2B,CAAC;IAC3C,KAAY,UAAU,GAAG,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;IACjD,KAAY,WAAW,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAC7C,UAAiB,YAAY;QAC3B,QAAQ,EAAE,MAAM,CAAC;KAClB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,yBAAyB,CAAC;IACzC,KAAY,UAAU,GAAG,CAAC,aAAa,EAAE,WAAW,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;IAC7E,KAAY,WAAW,GAAG,CAAC,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;IACpE,UAAiB,YAAY;QAC3B,aAAa,EAAE,MAAM,CAAC;QACtB,QAAQ,EAAE,MAAM,CAAC;KAClB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,mBAAmB,CAAC;IACnC,KAAY,UAAU,GAAG,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;IAC9D,KAAY,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IACvD,UAAiB,YAAY;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;KACd;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,MAAM,WAAW,gBAAiB,SAAQ,YAAY;IACpD,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,gBAAgB,CAAC;IAC1D,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,yBAAyB,CAAC;IAErC,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,KAAK,EAAE,mBAAmB,CAAC,CAAC,KAAK,EAAE,WAAW,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,YAAY,CAAC,CAAC;IAEzE,YAAY,EAAE,mBAAmB,CAC/B;QAAC,IAAI,EAAE,WAAW;QAAE,KAAK,EAAE,WAAW;QAAE,QAAQ,EAAE,WAAW;KAAC,EAC9D;QAAC,MAAM;KAAC,EACR,YAAY,CACb,CAAC;IAEF,iBAAiB,EAAE,mBAAmB,CACpC;QAAC,KAAK,EAAE,WAAW;QAAE,QAAQ,EAAE,WAAW;KAAC,EAC3C;QAAC,MAAM;KAAC,EACR,YAAY,CACb,CAAC;IAEF,WAAW,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IAEzE,eAAe,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAE3D,GAAG,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAE/C,IAAI,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEjE,KAAK,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEjD,iBAAiB,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IAEjE,aAAa,EAAE,mBAAmB,CAChC;QAAC,UAAU,EAAE,WAAW;QAAE,OAAO,EAAE,OAAO;KAAC,EAC3C;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,kBAAkB,EAAE,mBAAmB,CACrC;QAAC,QAAQ,EAAE,WAAW;KAAC,EACvB;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,OAAO,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,YAAY,CAAC,CAAC;IAErE,cAAc,EAAE,mBAAmB,CACjC;QACE,IAAI,EAAE,WAAW;QACjB,KAAK,EAAE,WAAW;QAClB,QAAQ,EAAE,WAAW;QACrB,IAAI,EAAE,MAAM;KACb,EACD;QAAC,MAAM;KAAC,EACR,YAAY,CACb,CAAC;IAEF,iBAAiB,EAAE,mBAAmB,CACpC;QAAC,QAAQ,EAAE,WAAW;KAAC,EACvB;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,WAAW,CACT,eAAe,EAAE,OAAO,GACvB,mBAAmB,CAAC,CAAC,KAAK,EAAE,WAAW,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,YAAY,CAAC,CAAC;IACrE,WAAW,CACT,eAAe,EAAE,cAAc,GAC9B,mBAAmB,CACpB;QAAC,IAAI,EAAE,WAAW;QAAE,KAAK,EAAE,WAAW;QAAE,QAAQ,EAAE,WAAW;KAAC,EAC9D;QAAC,MAAM;KAAC,EACR,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,mBAAmB,GACnC,mBAAmB,CACpB;QAAC,KAAK,EAAE,WAAW;QAAE,QAAQ,EAAE,WAAW;KAAC,EAC3C;QAAC,MAAM;KAAC,EACR,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,aAAa,GAC7B,mBAAmB,CAAC,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IAC/D,WAAW,CACT,eAAe,EAAE,iBAAiB,GACjC,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC7C,WAAW,CACT,eAAe,EAAE,KAAK,GACrB,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC7C,WAAW,CACT,eAAe,EAAE,MAAM,GACtB,mBAAmB,CAAC,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC9D,WAAW,CACT,eAAe,EAAE,OAAO,GACvB,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC7C,WAAW,CACT,eAAe,EAAE,mBAAmB,GACnC,mBAAmB,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IACjD,WAAW,CACT,eAAe,EAAE,eAAe,GAC/B,mBAAmB,CACpB;QAAC,UAAU,EAAE,WAAW;QAAE,OAAO,EAAE,OAAO;KAAC,EAC3C;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,oBAAoB,GACpC,mBAAmB,CAAC,CAAC,QAAQ,EAAE,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IACtE,WAAW,CACT,eAAe,EAAE,SAAS,GACzB,mBAAmB,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,YAAY,CAAC,CAAC;IAC/D,WAAW,CACT,eAAe,EAAE,gBAAgB,GAChC,mBAAmB,CACpB;QACE,IAAI,EAAE,WAAW;QACjB,KAAK,EAAE,WAAW;QAClB,QAAQ,EAAE,WAAW;QACrB,IAAI,EAAE,MAAM;KACb,EACD;QAAC,MAAM;KAAC,EACR,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,mBAAmB,GACnC,mBAAmB,CAAC,CAAC,QAAQ,EAAE,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IAEtE,QAAQ,CACN,GAAG,EAAE,mBAAmB,GACvB,kBAAkB,CACnB,sBAAsB,CAAC,UAAU,EACjC,sBAAsB,CAAC,WAAW,EAClC,sBAAsB,CAAC,YAAY,CACpC,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,wBAAwB,GAC5B,kBAAkB,CACnB,2BAA2B,CAAC,UAAU,EACtC,2BAA2B,CAAC,WAAW,EACvC,2BAA2B,CAAC,YAAY,CACzC,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,sBAAsB,GAC1B,kBAAkB,CACnB,yBAAyB,CAAC,UAAU,EACpC,yBAAyB,CAAC,WAAW,EACrC,yBAAyB,CAAC,YAAY,CACvC,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,gBAAgB,GACpB,kBAAkB,CACnB,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;IAEF,OAAO,EAAE;QACP,iCAAiC,EAAE,kBAAkB,CACnD,sBAAsB,CAAC,UAAU,EACjC,sBAAsB,CAAC,WAAW,EAClC,sBAAsB,CAAC,YAAY,CACpC,CAAC;QACF,iBAAiB,EAAE,kBAAkB,CACnC,sBAAsB,CAAC,UAAU,EACjC,sBAAsB,CAAC,WAAW,EAClC,sBAAsB,CAAC,YAAY,CACpC,CAAC;QAEF,iCAAiC,EAAE,kBAAkB,CACnD,2BAA2B,CAAC,UAAU,EACtC,2BAA2B,CAAC,WAAW,EACvC,2BAA2B,CAAC,YAAY,CACzC,CAAC;QACF,sBAAsB,EAAE,kBAAkB,CACxC,2BAA2B,CAAC,UAAU,EACtC,2BAA2B,CAAC,WAAW,EACvC,2BAA2B,CAAC,YAAY,CACzC,CAAC;QAEF,uCAAuC,EAAE,kBAAkB,CACzD,yBAAyB,CAAC,UAAU,EACpC,yBAAyB,CAAC,WAAW,EACrC,yBAAyB,CAAC,YAAY,CACvC,CAAC;QACF,oBAAoB,EAAE,kBAAkB,CACtC,yBAAyB,CAAC,UAAU,EACpC,yBAAyB,CAAC,WAAW,EACrC,yBAAyB,CAAC,YAAY,CACvC,CAAC;QAEF,iCAAiC,EAAE,kBAAkB,CACnD,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;QACF,cAAc,EAAE,kBAAkB,CAChC,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;KACH,CAAC;CACH"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar.js b/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/index.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/index.d.ts deleted file mode 100644 index 0a9c9db3..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export type { NameResolver } from "./NameResolver"; -export type { ReverseRegistrar } from "./ReverseRegistrar"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/index.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/index.d.ts.map deleted file mode 100644 index 7ee6a9cd..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACnD,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/index.js b/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/index.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/index.d.ts deleted file mode 100644 index 57babdd2..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/index.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import type * as reverseRegistrarSol from "./ReverseRegistrar.sol"; -export type { reverseRegistrarSol }; -export type { IReverseRegistrar } from "./IReverseRegistrar"; -export type { ReverseClaimer } from "./ReverseClaimer"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/index.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/index.d.ts.map deleted file mode 100644 index 1cbe23b3..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/reverseRegistrar/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,mBAAmB,MAAM,wBAAwB,CAAC;AACnE,YAAY,EAAE,mBAAmB,EAAE,CAAC;AACpC,YAAY,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/index.js b/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/root/Controllable.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/root/Controllable.d.ts deleted file mode 100644 index acc7836f..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/root/Controllable.d.ts +++ /dev/null @@ -1,88 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; -export interface ControllableInterface extends Interface { - getFunction(nameOrSignature: "controllers" | "owner" | "renounceOwnership" | "setController" | "transferOwnership"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "ControllerChanged" | "OwnershipTransferred"): EventFragment; - encodeFunctionData(functionFragment: "controllers", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "owner", values?: undefined): string; - encodeFunctionData(functionFragment: "renounceOwnership", values?: undefined): string; - encodeFunctionData(functionFragment: "setController", values: [AddressLike, boolean]): string; - encodeFunctionData(functionFragment: "transferOwnership", values: [AddressLike]): string; - decodeFunctionResult(functionFragment: "controllers", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceOwnership", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setController", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result; -} -export declare namespace ControllerChangedEvent { - type InputTuple = [controller: AddressLike, enabled: boolean]; - type OutputTuple = [controller: string, enabled: boolean]; - interface OutputObject { - controller: string; - enabled: boolean; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace OwnershipTransferredEvent { - type InputTuple = [previousOwner: AddressLike, newOwner: AddressLike]; - type OutputTuple = [previousOwner: string, newOwner: string]; - interface OutputObject { - previousOwner: string; - newOwner: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface Controllable extends BaseContract { - connect(runner?: ContractRunner | null): Controllable; - waitForDeployment(): Promise; - interface: ControllableInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - controllers: TypedContractMethod<[arg0: AddressLike], [boolean], "view">; - owner: TypedContractMethod<[], [string], "view">; - renounceOwnership: TypedContractMethod<[], [void], "nonpayable">; - setController: TypedContractMethod<[ - controller: AddressLike, - enabled: boolean - ], [ - void - ], "nonpayable">; - transferOwnership: TypedContractMethod<[ - newOwner: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "controllers"): TypedContractMethod<[arg0: AddressLike], [boolean], "view">; - getFunction(nameOrSignature: "owner"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "renounceOwnership"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "setController"): TypedContractMethod<[ - controller: AddressLike, - enabled: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "transferOwnership"): TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">; - getEvent(key: "ControllerChanged"): TypedContractEvent; - getEvent(key: "OwnershipTransferred"): TypedContractEvent; - filters: { - "ControllerChanged(address,bool)": TypedContractEvent; - ControllerChanged: TypedContractEvent; - "OwnershipTransferred(address,address)": TypedContractEvent; - OwnershipTransferred: TypedContractEvent; - }; -} -//# sourceMappingURL=Controllable.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/root/Controllable.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/root/Controllable.d.ts.map deleted file mode 100644 index e9231acf..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/root/Controllable.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Controllable.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/root/Controllable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/root/Controllable.js b/dist/types/@ensdomains/ens-contracts/contracts/root/Controllable.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/root/Controllable.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/root/Root.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/root/Root.d.ts deleted file mode 100644 index 281ec033..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/root/Root.d.ts +++ /dev/null @@ -1,144 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; -export interface RootInterface extends Interface { - getFunction(nameOrSignature: "controllers" | "ens" | "lock" | "locked" | "owner" | "renounceOwnership" | "setController" | "setResolver" | "setSubnodeOwner" | "supportsInterface" | "transferOwnership"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "ControllerChanged" | "OwnershipTransferred" | "TLDLocked"): EventFragment; - encodeFunctionData(functionFragment: "controllers", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "ens", values?: undefined): string; - encodeFunctionData(functionFragment: "lock", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "locked", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "owner", values?: undefined): string; - encodeFunctionData(functionFragment: "renounceOwnership", values?: undefined): string; - encodeFunctionData(functionFragment: "setController", values: [AddressLike, boolean]): string; - encodeFunctionData(functionFragment: "setResolver", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "setSubnodeOwner", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "transferOwnership", values: [AddressLike]): string; - decodeFunctionResult(functionFragment: "controllers", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ens", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "lock", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "locked", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceOwnership", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setController", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setResolver", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setSubnodeOwner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result; -} -export declare namespace ControllerChangedEvent { - type InputTuple = [controller: AddressLike, enabled: boolean]; - type OutputTuple = [controller: string, enabled: boolean]; - interface OutputObject { - controller: string; - enabled: boolean; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace OwnershipTransferredEvent { - type InputTuple = [previousOwner: AddressLike, newOwner: AddressLike]; - type OutputTuple = [previousOwner: string, newOwner: string]; - interface OutputObject { - previousOwner: string; - newOwner: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TLDLockedEvent { - type InputTuple = [label: BytesLike]; - type OutputTuple = [label: string]; - interface OutputObject { - label: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface Root extends BaseContract { - connect(runner?: ContractRunner | null): Root; - waitForDeployment(): Promise; - interface: RootInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - controllers: TypedContractMethod<[arg0: AddressLike], [boolean], "view">; - ens: TypedContractMethod<[], [string], "view">; - lock: TypedContractMethod<[label: BytesLike], [void], "nonpayable">; - locked: TypedContractMethod<[arg0: BytesLike], [boolean], "view">; - owner: TypedContractMethod<[], [string], "view">; - renounceOwnership: TypedContractMethod<[], [void], "nonpayable">; - setController: TypedContractMethod<[ - controller: AddressLike, - enabled: boolean - ], [ - void - ], "nonpayable">; - setResolver: TypedContractMethod<[ - resolver: AddressLike - ], [ - void - ], "nonpayable">; - setSubnodeOwner: TypedContractMethod<[ - label: BytesLike, - owner: AddressLike - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceID: BytesLike - ], [ - boolean - ], "view">; - transferOwnership: TypedContractMethod<[ - newOwner: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "controllers"): TypedContractMethod<[arg0: AddressLike], [boolean], "view">; - getFunction(nameOrSignature: "ens"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "lock"): TypedContractMethod<[label: BytesLike], [void], "nonpayable">; - getFunction(nameOrSignature: "locked"): TypedContractMethod<[arg0: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "owner"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "renounceOwnership"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "setController"): TypedContractMethod<[ - controller: AddressLike, - enabled: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setResolver"): TypedContractMethod<[resolver: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "setSubnodeOwner"): TypedContractMethod<[ - label: BytesLike, - owner: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceID: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "transferOwnership"): TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">; - getEvent(key: "ControllerChanged"): TypedContractEvent; - getEvent(key: "OwnershipTransferred"): TypedContractEvent; - getEvent(key: "TLDLocked"): TypedContractEvent; - filters: { - "ControllerChanged(address,bool)": TypedContractEvent; - ControllerChanged: TypedContractEvent; - "OwnershipTransferred(address,address)": TypedContractEvent; - OwnershipTransferred: TypedContractEvent; - "TLDLocked(bytes32)": TypedContractEvent; - TLDLocked: TypedContractEvent; - }; -} -//# sourceMappingURL=Root.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/root/Root.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/root/Root.d.ts.map deleted file mode 100644 index e371e055..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/root/Root.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Root.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/root/Root.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/root/Root.js b/dist/types/@ensdomains/ens-contracts/contracts/root/Root.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/root/Root.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/root/index.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/root/index.d.ts deleted file mode 100644 index 404de8ea..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/root/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export type { Controllable } from "./Controllable"; -export type { Root } from "./Root"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/root/index.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/root/index.d.ts.map deleted file mode 100644 index 0310b5ee..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/root/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/root/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACnD,YAAY,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/root/index.js b/dist/types/@ensdomains/ens-contracts/contracts/root/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/root/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable.d.ts deleted file mode 100644 index ea047f25..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable.d.ts +++ /dev/null @@ -1,71 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; -export interface ERC20RecoverableInterface extends Interface { - getFunction(nameOrSignature: "owner" | "recoverFunds" | "renounceOwnership" | "transferOwnership"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "OwnershipTransferred"): EventFragment; - encodeFunctionData(functionFragment: "owner", values?: undefined): string; - encodeFunctionData(functionFragment: "recoverFunds", values: [AddressLike, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "renounceOwnership", values?: undefined): string; - encodeFunctionData(functionFragment: "transferOwnership", values: [AddressLike]): string; - decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "recoverFunds", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceOwnership", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result; -} -export declare namespace OwnershipTransferredEvent { - type InputTuple = [previousOwner: AddressLike, newOwner: AddressLike]; - type OutputTuple = [previousOwner: string, newOwner: string]; - interface OutputObject { - previousOwner: string; - newOwner: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface ERC20Recoverable extends BaseContract { - connect(runner?: ContractRunner | null): ERC20Recoverable; - waitForDeployment(): Promise; - interface: ERC20RecoverableInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - owner: TypedContractMethod<[], [string], "view">; - recoverFunds: TypedContractMethod<[ - _token: AddressLike, - _to: AddressLike, - _amount: BigNumberish - ], [ - void - ], "nonpayable">; - renounceOwnership: TypedContractMethod<[], [void], "nonpayable">; - transferOwnership: TypedContractMethod<[ - newOwner: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "owner"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "recoverFunds"): TypedContractMethod<[ - _token: AddressLike, - _to: AddressLike, - _amount: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "renounceOwnership"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "transferOwnership"): TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">; - getEvent(key: "OwnershipTransferred"): TypedContractEvent; - filters: { - "OwnershipTransferred(address,address)": TypedContractEvent; - OwnershipTransferred: TypedContractEvent; - }; -} -//# sourceMappingURL=ERC20Recoverable.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable.d.ts.map deleted file mode 100644 index 39622aec..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ERC20Recoverable.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable.js b/dist/types/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/utils/index.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/utils/index.d.ts deleted file mode 100644 index d31f55db..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/utils/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export type { ERC20Recoverable } from "./ERC20Recoverable"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/utils/index.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/utils/index.d.ts.map deleted file mode 100644 index 20712123..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/utils/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/utils/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/utils/index.js b/dist/types/@ensdomains/ens-contracts/contracts/utils/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/utils/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/Controllable.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/Controllable.d.ts deleted file mode 100644 index d31fd9d5..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/Controllable.d.ts +++ /dev/null @@ -1,88 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; -export interface ControllableInterface extends Interface { - getFunction(nameOrSignature: "controllers" | "owner" | "renounceOwnership" | "setController" | "transferOwnership"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "ControllerChanged" | "OwnershipTransferred"): EventFragment; - encodeFunctionData(functionFragment: "controllers", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "owner", values?: undefined): string; - encodeFunctionData(functionFragment: "renounceOwnership", values?: undefined): string; - encodeFunctionData(functionFragment: "setController", values: [AddressLike, boolean]): string; - encodeFunctionData(functionFragment: "transferOwnership", values: [AddressLike]): string; - decodeFunctionResult(functionFragment: "controllers", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceOwnership", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setController", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result; -} -export declare namespace ControllerChangedEvent { - type InputTuple = [controller: AddressLike, active: boolean]; - type OutputTuple = [controller: string, active: boolean]; - interface OutputObject { - controller: string; - active: boolean; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace OwnershipTransferredEvent { - type InputTuple = [previousOwner: AddressLike, newOwner: AddressLike]; - type OutputTuple = [previousOwner: string, newOwner: string]; - interface OutputObject { - previousOwner: string; - newOwner: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface Controllable extends BaseContract { - connect(runner?: ContractRunner | null): Controllable; - waitForDeployment(): Promise; - interface: ControllableInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - controllers: TypedContractMethod<[arg0: AddressLike], [boolean], "view">; - owner: TypedContractMethod<[], [string], "view">; - renounceOwnership: TypedContractMethod<[], [void], "nonpayable">; - setController: TypedContractMethod<[ - controller: AddressLike, - active: boolean - ], [ - void - ], "nonpayable">; - transferOwnership: TypedContractMethod<[ - newOwner: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "controllers"): TypedContractMethod<[arg0: AddressLike], [boolean], "view">; - getFunction(nameOrSignature: "owner"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "renounceOwnership"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "setController"): TypedContractMethod<[ - controller: AddressLike, - active: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "transferOwnership"): TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">; - getEvent(key: "ControllerChanged"): TypedContractEvent; - getEvent(key: "OwnershipTransferred"): TypedContractEvent; - filters: { - "ControllerChanged(address,bool)": TypedContractEvent; - ControllerChanged: TypedContractEvent; - "OwnershipTransferred(address,address)": TypedContractEvent; - OwnershipTransferred: TypedContractEvent; - }; -} -//# sourceMappingURL=Controllable.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/Controllable.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/Controllable.d.ts.map deleted file mode 100644 index c38fb0a7..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/Controllable.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Controllable.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/wrapper/Controllable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/Controllable.js b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/Controllable.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/Controllable.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse.d.ts deleted file mode 100644 index bc42174e..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse.d.ts +++ /dev/null @@ -1,311 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; -export interface ERC1155FuseInterface extends Interface { - getFunction(nameOrSignature: "_tokens" | "approve" | "balanceOf" | "balanceOfBatch" | "getApproved" | "getData" | "isApprovedForAll" | "ownerOf" | "safeBatchTransferFrom" | "safeTransferFrom" | "setApprovalForAll" | "supportsInterface" | "uri"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "TransferBatch" | "TransferSingle" | "URI"): EventFragment; - encodeFunctionData(functionFragment: "_tokens", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "balanceOfBatch", values: [AddressLike[], BigNumberish[]]): string; - encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "getData", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "safeBatchTransferFrom", values: [ - AddressLike, - AddressLike, - BigNumberish[], - BigNumberish[], - BytesLike - ]): string; - encodeFunctionData(functionFragment: "safeTransferFrom", values: [AddressLike, AddressLike, BigNumberish, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "uri", values: [BigNumberish]): string; - decodeFunctionResult(functionFragment: "_tokens", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOfBatch", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getData", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeBatchTransferFrom", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "uri", data: BytesLike): Result; -} -export declare namespace ApprovalEvent { - type InputTuple = [ - owner: AddressLike, - approved: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [owner: string, approved: string, tokenId: bigint]; - interface OutputObject { - owner: string; - approved: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ApprovalForAllEvent { - type InputTuple = [ - account: AddressLike, - operator: AddressLike, - approved: boolean - ]; - type OutputTuple = [ - account: string, - operator: string, - approved: boolean - ]; - interface OutputObject { - account: string; - operator: string; - approved: boolean; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferBatchEvent { - type InputTuple = [ - operator: AddressLike, - from: AddressLike, - to: AddressLike, - ids: BigNumberish[], - values: BigNumberish[] - ]; - type OutputTuple = [ - operator: string, - from: string, - to: string, - ids: bigint[], - values: bigint[] - ]; - interface OutputObject { - operator: string; - from: string; - to: string; - ids: bigint[]; - values: bigint[]; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferSingleEvent { - type InputTuple = [ - operator: AddressLike, - from: AddressLike, - to: AddressLike, - id: BigNumberish, - value: BigNumberish - ]; - type OutputTuple = [ - operator: string, - from: string, - to: string, - id: bigint, - value: bigint - ]; - interface OutputObject { - operator: string; - from: string; - to: string; - id: bigint; - value: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace URIEvent { - type InputTuple = [value: string, id: BigNumberish]; - type OutputTuple = [value: string, id: bigint]; - interface OutputObject { - value: string; - id: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface ERC1155Fuse extends BaseContract { - connect(runner?: ContractRunner | null): ERC1155Fuse; - waitForDeployment(): Promise; - interface: ERC1155FuseInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - _tokens: TypedContractMethod<[arg0: BigNumberish], [bigint], "view">; - approve: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - balanceOf: TypedContractMethod<[ - account: AddressLike, - id: BigNumberish - ], [ - bigint - ], "view">; - balanceOfBatch: TypedContractMethod<[ - accounts: AddressLike[], - ids: BigNumberish[] - ], [ - bigint[] - ], "view">; - getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getData: TypedContractMethod<[ - tokenId: BigNumberish - ], [ - [ - string, - bigint, - bigint - ] & { - owner: string; - fuses: bigint; - expiry: bigint; - } - ], "view">; - isApprovedForAll: TypedContractMethod<[ - account: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - ownerOf: TypedContractMethod<[id: BigNumberish], [string], "view">; - safeBatchTransferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - ids: BigNumberish[], - amounts: BigNumberish[], - data: BytesLike - ], [ - void - ], "nonpayable">; - safeTransferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - id: BigNumberish, - amount: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - setApprovalForAll: TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - uri: TypedContractMethod<[id: BigNumberish], [string], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "_tokens"): TypedContractMethod<[arg0: BigNumberish], [bigint], "view">; - getFunction(nameOrSignature: "approve"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[ - account: AddressLike, - id: BigNumberish - ], [ - bigint - ], "view">; - getFunction(nameOrSignature: "balanceOfBatch"): TypedContractMethod<[ - accounts: AddressLike[], - ids: BigNumberish[] - ], [ - bigint[] - ], "view">; - getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "getData"): TypedContractMethod<[ - tokenId: BigNumberish - ], [ - [ - string, - bigint, - bigint - ] & { - owner: string; - fuses: bigint; - expiry: bigint; - } - ], "view">; - getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ - account: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[id: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "safeBatchTransferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - ids: BigNumberish[], - amounts: BigNumberish[], - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - id: BigNumberish, - amount: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "uri"): TypedContractMethod<[id: BigNumberish], [string], "view">; - getEvent(key: "Approval"): TypedContractEvent; - getEvent(key: "ApprovalForAll"): TypedContractEvent; - getEvent(key: "TransferBatch"): TypedContractEvent; - getEvent(key: "TransferSingle"): TypedContractEvent; - getEvent(key: "URI"): TypedContractEvent; - filters: { - "Approval(address,address,uint256)": TypedContractEvent; - Approval: TypedContractEvent; - "ApprovalForAll(address,address,bool)": TypedContractEvent; - ApprovalForAll: TypedContractEvent; - "TransferBatch(address,address,address,uint256[],uint256[])": TypedContractEvent; - TransferBatch: TypedContractEvent; - "TransferSingle(address,address,address,uint256,uint256)": TypedContractEvent; - TransferSingle: TypedContractEvent; - "URI(string,uint256)": TypedContractEvent; - URI: TypedContractEvent; - }; -} -//# sourceMappingURL=ERC1155Fuse.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse.d.ts.map deleted file mode 100644 index 101376af..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ERC1155Fuse.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse.js b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService.d.ts deleted file mode 100644 index 5a0ac532..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService.d.ts +++ /dev/null @@ -1,26 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; -export interface IMetadataServiceInterface extends Interface { - getFunction(nameOrSignature: "uri"): FunctionFragment; - encodeFunctionData(functionFragment: "uri", values: [BigNumberish]): string; - decodeFunctionResult(functionFragment: "uri", data: BytesLike): Result; -} -export interface IMetadataService extends BaseContract { - connect(runner?: ContractRunner | null): IMetadataService; - waitForDeployment(): Promise; - interface: IMetadataServiceInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - uri: TypedContractMethod<[arg0: BigNumberish], [string], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "uri"): TypedContractMethod<[arg0: BigNumberish], [string], "view">; - filters: {}; -} -//# sourceMappingURL=IMetadataService.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService.d.ts.map deleted file mode 100644 index 1c3b8876..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IMetadataService.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService.js b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper.d.ts deleted file mode 100644 index 76ceed14..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper.d.ts +++ /dev/null @@ -1,691 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; -export interface INameWrapperInterface extends Interface { - getFunction(nameOrSignature: "allFusesBurned" | "approve" | "balanceOf" | "balanceOfBatch" | "canModifyName" | "ens" | "extendExpiry" | "getApproved" | "getData" | "isApprovedForAll" | "isWrapped(bytes32,bytes32)" | "isWrapped(bytes32)" | "metadataService" | "name" | "names" | "ownerOf" | "registerAndWrapETH2LD" | "registrar" | "renew" | "safeBatchTransferFrom" | "safeTransferFrom" | "setApprovalForAll" | "setChildFuses" | "setFuses" | "setMetadataService" | "setRecord" | "setResolver" | "setSubnodeOwner" | "setSubnodeRecord" | "setTTL" | "setUpgradeContract" | "supportsInterface" | "unwrap" | "unwrapETH2LD" | "upgrade" | "upgradeContract" | "uri" | "wrap" | "wrapETH2LD"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "ApprovalForAll" | "ExpiryExtended" | "FusesSet" | "NameUnwrapped" | "NameWrapped" | "TransferBatch" | "TransferSingle" | "URI"): EventFragment; - encodeFunctionData(functionFragment: "allFusesBurned", values: [BytesLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "balanceOfBatch", values: [AddressLike[], BigNumberish[]]): string; - encodeFunctionData(functionFragment: "canModifyName", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "ens", values?: undefined): string; - encodeFunctionData(functionFragment: "extendExpiry", values: [BytesLike, BytesLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "getData", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "isWrapped(bytes32,bytes32)", values: [BytesLike, BytesLike]): string; - encodeFunctionData(functionFragment: "isWrapped(bytes32)", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "metadataService", values?: undefined): string; - encodeFunctionData(functionFragment: "name", values?: undefined): string; - encodeFunctionData(functionFragment: "names", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "registerAndWrapETH2LD", values: [string, AddressLike, BigNumberish, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "registrar", values?: undefined): string; - encodeFunctionData(functionFragment: "renew", values: [BigNumberish, BigNumberish]): string; - encodeFunctionData(functionFragment: "safeBatchTransferFrom", values: [ - AddressLike, - AddressLike, - BigNumberish[], - BigNumberish[], - BytesLike - ]): string; - encodeFunctionData(functionFragment: "safeTransferFrom", values: [AddressLike, AddressLike, BigNumberish, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; - encodeFunctionData(functionFragment: "setChildFuses", values: [BytesLike, BytesLike, BigNumberish, BigNumberish]): string; - encodeFunctionData(functionFragment: "setFuses", values: [BytesLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "setMetadataService", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "setRecord", values: [BytesLike, AddressLike, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "setResolver", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "setSubnodeOwner", values: [BytesLike, string, AddressLike, BigNumberish, BigNumberish]): string; - encodeFunctionData(functionFragment: "setSubnodeRecord", values: [ - BytesLike, - string, - AddressLike, - AddressLike, - BigNumberish, - BigNumberish, - BigNumberish - ]): string; - encodeFunctionData(functionFragment: "setTTL", values: [BytesLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "setUpgradeContract", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "unwrap", values: [BytesLike, BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "unwrapETH2LD", values: [BytesLike, AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "upgrade", values: [BytesLike, BytesLike]): string; - encodeFunctionData(functionFragment: "upgradeContract", values?: undefined): string; - encodeFunctionData(functionFragment: "uri", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "wrap", values: [BytesLike, AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "wrapETH2LD", values: [string, AddressLike, BigNumberish, AddressLike]): string; - decodeFunctionResult(functionFragment: "allFusesBurned", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOfBatch", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "canModifyName", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ens", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "extendExpiry", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getData", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isWrapped(bytes32,bytes32)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isWrapped(bytes32)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "metadataService", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "names", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "registerAndWrapETH2LD", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "registrar", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renew", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeBatchTransferFrom", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setChildFuses", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setFuses", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setMetadataService", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setRecord", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setResolver", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setSubnodeOwner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setSubnodeRecord", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setTTL", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setUpgradeContract", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "unwrap", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "unwrapETH2LD", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "upgrade", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "upgradeContract", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "uri", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "wrap", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "wrapETH2LD", data: BytesLike): Result; -} -export declare namespace ApprovalForAllEvent { - type InputTuple = [ - account: AddressLike, - operator: AddressLike, - approved: boolean - ]; - type OutputTuple = [ - account: string, - operator: string, - approved: boolean - ]; - interface OutputObject { - account: string; - operator: string; - approved: boolean; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ExpiryExtendedEvent { - type InputTuple = [node: BytesLike, expiry: BigNumberish]; - type OutputTuple = [node: string, expiry: bigint]; - interface OutputObject { - node: string; - expiry: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace FusesSetEvent { - type InputTuple = [node: BytesLike, fuses: BigNumberish]; - type OutputTuple = [node: string, fuses: bigint]; - interface OutputObject { - node: string; - fuses: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NameUnwrappedEvent { - type InputTuple = [node: BytesLike, owner: AddressLike]; - type OutputTuple = [node: string, owner: string]; - interface OutputObject { - node: string; - owner: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NameWrappedEvent { - type InputTuple = [ - node: BytesLike, - name: BytesLike, - owner: AddressLike, - fuses: BigNumberish, - expiry: BigNumberish - ]; - type OutputTuple = [ - node: string, - name: string, - owner: string, - fuses: bigint, - expiry: bigint - ]; - interface OutputObject { - node: string; - name: string; - owner: string; - fuses: bigint; - expiry: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferBatchEvent { - type InputTuple = [ - operator: AddressLike, - from: AddressLike, - to: AddressLike, - ids: BigNumberish[], - values: BigNumberish[] - ]; - type OutputTuple = [ - operator: string, - from: string, - to: string, - ids: bigint[], - values: bigint[] - ]; - interface OutputObject { - operator: string; - from: string; - to: string; - ids: bigint[]; - values: bigint[]; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferSingleEvent { - type InputTuple = [ - operator: AddressLike, - from: AddressLike, - to: AddressLike, - id: BigNumberish, - value: BigNumberish - ]; - type OutputTuple = [ - operator: string, - from: string, - to: string, - id: bigint, - value: bigint - ]; - interface OutputObject { - operator: string; - from: string; - to: string; - id: bigint; - value: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace URIEvent { - type InputTuple = [value: string, id: BigNumberish]; - type OutputTuple = [value: string, id: bigint]; - interface OutputObject { - value: string; - id: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface INameWrapper extends BaseContract { - connect(runner?: ContractRunner | null): INameWrapper; - waitForDeployment(): Promise; - interface: INameWrapperInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - allFusesBurned: TypedContractMethod<[ - node: BytesLike, - fuseMask: BigNumberish - ], [ - boolean - ], "view">; - approve: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - balanceOf: TypedContractMethod<[ - account: AddressLike, - id: BigNumberish - ], [ - bigint - ], "view">; - balanceOfBatch: TypedContractMethod<[ - accounts: AddressLike[], - ids: BigNumberish[] - ], [ - bigint[] - ], "view">; - canModifyName: TypedContractMethod<[ - node: BytesLike, - addr: AddressLike - ], [ - boolean - ], "view">; - ens: TypedContractMethod<[], [string], "view">; - extendExpiry: TypedContractMethod<[ - node: BytesLike, - labelhash: BytesLike, - expiry: BigNumberish - ], [ - bigint - ], "nonpayable">; - getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getData: TypedContractMethod<[ - id: BigNumberish - ], [ - [string, bigint, bigint] - ], "view">; - isApprovedForAll: TypedContractMethod<[ - account: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - "isWrapped(bytes32,bytes32)": TypedContractMethod<[ - arg0: BytesLike, - arg1: BytesLike - ], [ - boolean - ], "view">; - "isWrapped(bytes32)": TypedContractMethod<[ - arg0: BytesLike - ], [ - boolean - ], "view">; - metadataService: TypedContractMethod<[], [string], "view">; - name: TypedContractMethod<[], [string], "view">; - names: TypedContractMethod<[arg0: BytesLike], [string], "view">; - ownerOf: TypedContractMethod<[id: BigNumberish], [string], "view">; - registerAndWrapETH2LD: TypedContractMethod<[ - label: string, - wrappedOwner: AddressLike, - duration: BigNumberish, - resolver: AddressLike, - ownerControlledFuses: BigNumberish - ], [ - bigint - ], "nonpayable">; - registrar: TypedContractMethod<[], [string], "view">; - renew: TypedContractMethod<[ - labelHash: BigNumberish, - duration: BigNumberish - ], [ - bigint - ], "nonpayable">; - safeBatchTransferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - ids: BigNumberish[], - amounts: BigNumberish[], - data: BytesLike - ], [ - void - ], "nonpayable">; - safeTransferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - id: BigNumberish, - amount: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - setApprovalForAll: TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - setChildFuses: TypedContractMethod<[ - parentNode: BytesLike, - labelhash: BytesLike, - fuses: BigNumberish, - expiry: BigNumberish - ], [ - void - ], "nonpayable">; - setFuses: TypedContractMethod<[ - node: BytesLike, - ownerControlledFuses: BigNumberish - ], [ - bigint - ], "nonpayable">; - setMetadataService: TypedContractMethod<[ - _metadataService: AddressLike - ], [ - void - ], "nonpayable">; - setRecord: TypedContractMethod<[ - node: BytesLike, - owner: AddressLike, - resolver: AddressLike, - ttl: BigNumberish - ], [ - void - ], "nonpayable">; - setResolver: TypedContractMethod<[ - node: BytesLike, - resolver: AddressLike - ], [ - void - ], "nonpayable">; - setSubnodeOwner: TypedContractMethod<[ - node: BytesLike, - label: string, - newOwner: AddressLike, - fuses: BigNumberish, - expiry: BigNumberish - ], [ - string - ], "nonpayable">; - setSubnodeRecord: TypedContractMethod<[ - node: BytesLike, - label: string, - owner: AddressLike, - resolver: AddressLike, - ttl: BigNumberish, - fuses: BigNumberish, - expiry: BigNumberish - ], [ - string - ], "nonpayable">; - setTTL: TypedContractMethod<[ - node: BytesLike, - ttl: BigNumberish - ], [ - void - ], "nonpayable">; - setUpgradeContract: TypedContractMethod<[ - _upgradeAddress: AddressLike - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceID: BytesLike - ], [ - boolean - ], "view">; - unwrap: TypedContractMethod<[ - node: BytesLike, - label: BytesLike, - owner: AddressLike - ], [ - void - ], "nonpayable">; - unwrapETH2LD: TypedContractMethod<[ - label: BytesLike, - newRegistrant: AddressLike, - newController: AddressLike - ], [ - void - ], "nonpayable">; - upgrade: TypedContractMethod<[ - name: BytesLike, - extraData: BytesLike - ], [ - void - ], "nonpayable">; - upgradeContract: TypedContractMethod<[], [string], "view">; - uri: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - wrap: TypedContractMethod<[ - name: BytesLike, - wrappedOwner: AddressLike, - resolver: AddressLike - ], [ - void - ], "nonpayable">; - wrapETH2LD: TypedContractMethod<[ - label: string, - wrappedOwner: AddressLike, - ownerControlledFuses: BigNumberish, - resolver: AddressLike - ], [ - bigint - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "allFusesBurned"): TypedContractMethod<[ - node: BytesLike, - fuseMask: BigNumberish - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "approve"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[ - account: AddressLike, - id: BigNumberish - ], [ - bigint - ], "view">; - getFunction(nameOrSignature: "balanceOfBatch"): TypedContractMethod<[ - accounts: AddressLike[], - ids: BigNumberish[] - ], [ - bigint[] - ], "view">; - getFunction(nameOrSignature: "canModifyName"): TypedContractMethod<[ - node: BytesLike, - addr: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "ens"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "extendExpiry"): TypedContractMethod<[ - node: BytesLike, - labelhash: BytesLike, - expiry: BigNumberish - ], [ - bigint - ], "nonpayable">; - getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "getData"): TypedContractMethod<[ - id: BigNumberish - ], [ - [string, bigint, bigint] - ], "view">; - getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ - account: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "isWrapped(bytes32,bytes32)"): TypedContractMethod<[arg0: BytesLike, arg1: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "isWrapped(bytes32)"): TypedContractMethod<[arg0: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "metadataService"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "names"): TypedContractMethod<[arg0: BytesLike], [string], "view">; - getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[id: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "registerAndWrapETH2LD"): TypedContractMethod<[ - label: string, - wrappedOwner: AddressLike, - duration: BigNumberish, - resolver: AddressLike, - ownerControlledFuses: BigNumberish - ], [ - bigint - ], "nonpayable">; - getFunction(nameOrSignature: "registrar"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "renew"): TypedContractMethod<[ - labelHash: BigNumberish, - duration: BigNumberish - ], [ - bigint - ], "nonpayable">; - getFunction(nameOrSignature: "safeBatchTransferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - ids: BigNumberish[], - amounts: BigNumberish[], - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - id: BigNumberish, - amount: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setChildFuses"): TypedContractMethod<[ - parentNode: BytesLike, - labelhash: BytesLike, - fuses: BigNumberish, - expiry: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setFuses"): TypedContractMethod<[ - node: BytesLike, - ownerControlledFuses: BigNumberish - ], [ - bigint - ], "nonpayable">; - getFunction(nameOrSignature: "setMetadataService"): TypedContractMethod<[_metadataService: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "setRecord"): TypedContractMethod<[ - node: BytesLike, - owner: AddressLike, - resolver: AddressLike, - ttl: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setResolver"): TypedContractMethod<[ - node: BytesLike, - resolver: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setSubnodeOwner"): TypedContractMethod<[ - node: BytesLike, - label: string, - newOwner: AddressLike, - fuses: BigNumberish, - expiry: BigNumberish - ], [ - string - ], "nonpayable">; - getFunction(nameOrSignature: "setSubnodeRecord"): TypedContractMethod<[ - node: BytesLike, - label: string, - owner: AddressLike, - resolver: AddressLike, - ttl: BigNumberish, - fuses: BigNumberish, - expiry: BigNumberish - ], [ - string - ], "nonpayable">; - getFunction(nameOrSignature: "setTTL"): TypedContractMethod<[ - node: BytesLike, - ttl: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setUpgradeContract"): TypedContractMethod<[_upgradeAddress: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceID: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "unwrap"): TypedContractMethod<[ - node: BytesLike, - label: BytesLike, - owner: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "unwrapETH2LD"): TypedContractMethod<[ - label: BytesLike, - newRegistrant: AddressLike, - newController: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "upgrade"): TypedContractMethod<[ - name: BytesLike, - extraData: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "upgradeContract"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "uri"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "wrap"): TypedContractMethod<[ - name: BytesLike, - wrappedOwner: AddressLike, - resolver: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "wrapETH2LD"): TypedContractMethod<[ - label: string, - wrappedOwner: AddressLike, - ownerControlledFuses: BigNumberish, - resolver: AddressLike - ], [ - bigint - ], "nonpayable">; - getEvent(key: "ApprovalForAll"): TypedContractEvent; - getEvent(key: "ExpiryExtended"): TypedContractEvent; - getEvent(key: "FusesSet"): TypedContractEvent; - getEvent(key: "NameUnwrapped"): TypedContractEvent; - getEvent(key: "NameWrapped"): TypedContractEvent; - getEvent(key: "TransferBatch"): TypedContractEvent; - getEvent(key: "TransferSingle"): TypedContractEvent; - getEvent(key: "URI"): TypedContractEvent; - filters: { - "ApprovalForAll(address,address,bool)": TypedContractEvent; - ApprovalForAll: TypedContractEvent; - "ExpiryExtended(bytes32,uint64)": TypedContractEvent; - ExpiryExtended: TypedContractEvent; - "FusesSet(bytes32,uint32)": TypedContractEvent; - FusesSet: TypedContractEvent; - "NameUnwrapped(bytes32,address)": TypedContractEvent; - NameUnwrapped: TypedContractEvent; - "NameWrapped(bytes32,bytes,address,uint32,uint64)": TypedContractEvent; - NameWrapped: TypedContractEvent; - "TransferBatch(address,address,address,uint256[],uint256[])": TypedContractEvent; - TransferBatch: TypedContractEvent; - "TransferSingle(address,address,address,uint256,uint256)": TypedContractEvent; - TransferSingle: TypedContractEvent; - "URI(string,uint256)": TypedContractEvent; - URI: TypedContractEvent; - }; -} -//# sourceMappingURL=INameWrapper.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper.d.ts.map deleted file mode 100644 index 514d61d1..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"INameWrapper.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper.js b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade.d.ts deleted file mode 100644 index b6a069db..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade.d.ts +++ /dev/null @@ -1,51 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; -export interface INameWrapperUpgradeInterface extends Interface { - getFunction(nameOrSignature: "wrapFromUpgrade"): FunctionFragment; - encodeFunctionData(functionFragment: "wrapFromUpgrade", values: [ - BytesLike, - AddressLike, - BigNumberish, - BigNumberish, - AddressLike, - BytesLike - ]): string; - decodeFunctionResult(functionFragment: "wrapFromUpgrade", data: BytesLike): Result; -} -export interface INameWrapperUpgrade extends BaseContract { - connect(runner?: ContractRunner | null): INameWrapperUpgrade; - waitForDeployment(): Promise; - interface: INameWrapperUpgradeInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - wrapFromUpgrade: TypedContractMethod<[ - name: BytesLike, - wrappedOwner: AddressLike, - fuses: BigNumberish, - expiry: BigNumberish, - approved: AddressLike, - extraData: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "wrapFromUpgrade"): TypedContractMethod<[ - name: BytesLike, - wrappedOwner: AddressLike, - fuses: BigNumberish, - expiry: BigNumberish, - approved: AddressLike, - extraData: BytesLike - ], [ - void - ], "nonpayable">; - filters: {}; -} -//# sourceMappingURL=INameWrapperUpgrade.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade.d.ts.map deleted file mode 100644 index 6750838e..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"INameWrapperUpgrade.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade.js b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.d.ts deleted file mode 100644 index 3898ba2e..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.d.ts +++ /dev/null @@ -1,848 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; -export interface NameWrapperInterface extends Interface { - getFunction(nameOrSignature: "_tokens" | "allFusesBurned" | "approve" | "balanceOf" | "balanceOfBatch" | "canExtendSubnames" | "canModifyName" | "controllers" | "ens" | "extendExpiry" | "getApproved" | "getData" | "isApprovedForAll" | "isWrapped(bytes32,bytes32)" | "isWrapped(bytes32)" | "metadataService" | "name" | "names" | "onERC721Received" | "owner" | "ownerOf" | "recoverFunds" | "registerAndWrapETH2LD" | "registrar" | "renew" | "renounceOwnership" | "safeBatchTransferFrom" | "safeTransferFrom" | "setApprovalForAll" | "setChildFuses" | "setController" | "setFuses" | "setMetadataService" | "setRecord" | "setResolver" | "setSubnodeOwner" | "setSubnodeRecord" | "setTTL" | "setUpgradeContract" | "supportsInterface" | "transferOwnership" | "unwrap" | "unwrapETH2LD" | "upgrade" | "upgradeContract" | "uri" | "wrap" | "wrapETH2LD"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "ControllerChanged" | "ExpiryExtended" | "FusesSet" | "NameUnwrapped" | "NameWrapped" | "OwnershipTransferred" | "TransferBatch" | "TransferSingle" | "URI"): EventFragment; - encodeFunctionData(functionFragment: "_tokens", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "allFusesBurned", values: [BytesLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "balanceOfBatch", values: [AddressLike[], BigNumberish[]]): string; - encodeFunctionData(functionFragment: "canExtendSubnames", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "canModifyName", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "controllers", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "ens", values?: undefined): string; - encodeFunctionData(functionFragment: "extendExpiry", values: [BytesLike, BytesLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "getData", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "isWrapped(bytes32,bytes32)", values: [BytesLike, BytesLike]): string; - encodeFunctionData(functionFragment: "isWrapped(bytes32)", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "metadataService", values?: undefined): string; - encodeFunctionData(functionFragment: "name", values?: undefined): string; - encodeFunctionData(functionFragment: "names", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "onERC721Received", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "owner", values?: undefined): string; - encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "recoverFunds", values: [AddressLike, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "registerAndWrapETH2LD", values: [string, AddressLike, BigNumberish, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "registrar", values?: undefined): string; - encodeFunctionData(functionFragment: "renew", values: [BigNumberish, BigNumberish]): string; - encodeFunctionData(functionFragment: "renounceOwnership", values?: undefined): string; - encodeFunctionData(functionFragment: "safeBatchTransferFrom", values: [ - AddressLike, - AddressLike, - BigNumberish[], - BigNumberish[], - BytesLike - ]): string; - encodeFunctionData(functionFragment: "safeTransferFrom", values: [AddressLike, AddressLike, BigNumberish, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; - encodeFunctionData(functionFragment: "setChildFuses", values: [BytesLike, BytesLike, BigNumberish, BigNumberish]): string; - encodeFunctionData(functionFragment: "setController", values: [AddressLike, boolean]): string; - encodeFunctionData(functionFragment: "setFuses", values: [BytesLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "setMetadataService", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "setRecord", values: [BytesLike, AddressLike, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "setResolver", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "setSubnodeOwner", values: [BytesLike, string, AddressLike, BigNumberish, BigNumberish]): string; - encodeFunctionData(functionFragment: "setSubnodeRecord", values: [ - BytesLike, - string, - AddressLike, - AddressLike, - BigNumberish, - BigNumberish, - BigNumberish - ]): string; - encodeFunctionData(functionFragment: "setTTL", values: [BytesLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "setUpgradeContract", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "transferOwnership", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "unwrap", values: [BytesLike, BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "unwrapETH2LD", values: [BytesLike, AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "upgrade", values: [BytesLike, BytesLike]): string; - encodeFunctionData(functionFragment: "upgradeContract", values?: undefined): string; - encodeFunctionData(functionFragment: "uri", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "wrap", values: [BytesLike, AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "wrapETH2LD", values: [string, AddressLike, BigNumberish, AddressLike]): string; - decodeFunctionResult(functionFragment: "_tokens", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "allFusesBurned", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOfBatch", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "canExtendSubnames", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "canModifyName", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "controllers", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ens", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "extendExpiry", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getData", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isWrapped(bytes32,bytes32)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isWrapped(bytes32)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "metadataService", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "names", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "onERC721Received", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "recoverFunds", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "registerAndWrapETH2LD", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "registrar", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renew", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceOwnership", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeBatchTransferFrom", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setChildFuses", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setController", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setFuses", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setMetadataService", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setRecord", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setResolver", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setSubnodeOwner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setSubnodeRecord", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setTTL", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setUpgradeContract", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "unwrap", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "unwrapETH2LD", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "upgrade", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "upgradeContract", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "uri", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "wrap", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "wrapETH2LD", data: BytesLike): Result; -} -export declare namespace ApprovalEvent { - type InputTuple = [ - owner: AddressLike, - approved: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [owner: string, approved: string, tokenId: bigint]; - interface OutputObject { - owner: string; - approved: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ApprovalForAllEvent { - type InputTuple = [ - account: AddressLike, - operator: AddressLike, - approved: boolean - ]; - type OutputTuple = [ - account: string, - operator: string, - approved: boolean - ]; - interface OutputObject { - account: string; - operator: string; - approved: boolean; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ControllerChangedEvent { - type InputTuple = [controller: AddressLike, active: boolean]; - type OutputTuple = [controller: string, active: boolean]; - interface OutputObject { - controller: string; - active: boolean; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ExpiryExtendedEvent { - type InputTuple = [node: BytesLike, expiry: BigNumberish]; - type OutputTuple = [node: string, expiry: bigint]; - interface OutputObject { - node: string; - expiry: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace FusesSetEvent { - type InputTuple = [node: BytesLike, fuses: BigNumberish]; - type OutputTuple = [node: string, fuses: bigint]; - interface OutputObject { - node: string; - fuses: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NameUnwrappedEvent { - type InputTuple = [node: BytesLike, owner: AddressLike]; - type OutputTuple = [node: string, owner: string]; - interface OutputObject { - node: string; - owner: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NameWrappedEvent { - type InputTuple = [ - node: BytesLike, - name: BytesLike, - owner: AddressLike, - fuses: BigNumberish, - expiry: BigNumberish - ]; - type OutputTuple = [ - node: string, - name: string, - owner: string, - fuses: bigint, - expiry: bigint - ]; - interface OutputObject { - node: string; - name: string; - owner: string; - fuses: bigint; - expiry: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace OwnershipTransferredEvent { - type InputTuple = [previousOwner: AddressLike, newOwner: AddressLike]; - type OutputTuple = [previousOwner: string, newOwner: string]; - interface OutputObject { - previousOwner: string; - newOwner: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferBatchEvent { - type InputTuple = [ - operator: AddressLike, - from: AddressLike, - to: AddressLike, - ids: BigNumberish[], - values: BigNumberish[] - ]; - type OutputTuple = [ - operator: string, - from: string, - to: string, - ids: bigint[], - values: bigint[] - ]; - interface OutputObject { - operator: string; - from: string; - to: string; - ids: bigint[]; - values: bigint[]; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferSingleEvent { - type InputTuple = [ - operator: AddressLike, - from: AddressLike, - to: AddressLike, - id: BigNumberish, - value: BigNumberish - ]; - type OutputTuple = [ - operator: string, - from: string, - to: string, - id: bigint, - value: bigint - ]; - interface OutputObject { - operator: string; - from: string; - to: string; - id: bigint; - value: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace URIEvent { - type InputTuple = [value: string, id: BigNumberish]; - type OutputTuple = [value: string, id: bigint]; - interface OutputObject { - value: string; - id: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface NameWrapper extends BaseContract { - connect(runner?: ContractRunner | null): NameWrapper; - waitForDeployment(): Promise; - interface: NameWrapperInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - _tokens: TypedContractMethod<[arg0: BigNumberish], [bigint], "view">; - allFusesBurned: TypedContractMethod<[ - node: BytesLike, - fuseMask: BigNumberish - ], [ - boolean - ], "view">; - approve: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - balanceOf: TypedContractMethod<[ - account: AddressLike, - id: BigNumberish - ], [ - bigint - ], "view">; - balanceOfBatch: TypedContractMethod<[ - accounts: AddressLike[], - ids: BigNumberish[] - ], [ - bigint[] - ], "view">; - canExtendSubnames: TypedContractMethod<[ - node: BytesLike, - addr: AddressLike - ], [ - boolean - ], "view">; - canModifyName: TypedContractMethod<[ - node: BytesLike, - addr: AddressLike - ], [ - boolean - ], "view">; - controllers: TypedContractMethod<[arg0: AddressLike], [boolean], "view">; - ens: TypedContractMethod<[], [string], "view">; - extendExpiry: TypedContractMethod<[ - parentNode: BytesLike, - labelhash: BytesLike, - expiry: BigNumberish - ], [ - bigint - ], "nonpayable">; - getApproved: TypedContractMethod<[id: BigNumberish], [string], "view">; - getData: TypedContractMethod<[ - id: BigNumberish - ], [ - [ - string, - bigint, - bigint - ] & { - owner: string; - fuses: bigint; - expiry: bigint; - } - ], "view">; - isApprovedForAll: TypedContractMethod<[ - account: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - "isWrapped(bytes32,bytes32)": TypedContractMethod<[ - parentNode: BytesLike, - labelhash: BytesLike - ], [ - boolean - ], "view">; - "isWrapped(bytes32)": TypedContractMethod<[ - node: BytesLike - ], [ - boolean - ], "view">; - metadataService: TypedContractMethod<[], [string], "view">; - name: TypedContractMethod<[], [string], "view">; - names: TypedContractMethod<[arg0: BytesLike], [string], "view">; - onERC721Received: TypedContractMethod<[ - to: AddressLike, - arg1: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - string - ], "nonpayable">; - owner: TypedContractMethod<[], [string], "view">; - ownerOf: TypedContractMethod<[id: BigNumberish], [string], "view">; - recoverFunds: TypedContractMethod<[ - _token: AddressLike, - _to: AddressLike, - _amount: BigNumberish - ], [ - void - ], "nonpayable">; - registerAndWrapETH2LD: TypedContractMethod<[ - label: string, - wrappedOwner: AddressLike, - duration: BigNumberish, - resolver: AddressLike, - ownerControlledFuses: BigNumberish - ], [ - bigint - ], "nonpayable">; - registrar: TypedContractMethod<[], [string], "view">; - renew: TypedContractMethod<[ - tokenId: BigNumberish, - duration: BigNumberish - ], [ - bigint - ], "nonpayable">; - renounceOwnership: TypedContractMethod<[], [void], "nonpayable">; - safeBatchTransferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - ids: BigNumberish[], - amounts: BigNumberish[], - data: BytesLike - ], [ - void - ], "nonpayable">; - safeTransferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - id: BigNumberish, - amount: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - setApprovalForAll: TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - setChildFuses: TypedContractMethod<[ - parentNode: BytesLike, - labelhash: BytesLike, - fuses: BigNumberish, - expiry: BigNumberish - ], [ - void - ], "nonpayable">; - setController: TypedContractMethod<[ - controller: AddressLike, - active: boolean - ], [ - void - ], "nonpayable">; - setFuses: TypedContractMethod<[ - node: BytesLike, - ownerControlledFuses: BigNumberish - ], [ - bigint - ], "nonpayable">; - setMetadataService: TypedContractMethod<[ - _metadataService: AddressLike - ], [ - void - ], "nonpayable">; - setRecord: TypedContractMethod<[ - node: BytesLike, - owner: AddressLike, - resolver: AddressLike, - ttl: BigNumberish - ], [ - void - ], "nonpayable">; - setResolver: TypedContractMethod<[ - node: BytesLike, - resolver: AddressLike - ], [ - void - ], "nonpayable">; - setSubnodeOwner: TypedContractMethod<[ - parentNode: BytesLike, - label: string, - owner: AddressLike, - fuses: BigNumberish, - expiry: BigNumberish - ], [ - string - ], "nonpayable">; - setSubnodeRecord: TypedContractMethod<[ - parentNode: BytesLike, - label: string, - owner: AddressLike, - resolver: AddressLike, - ttl: BigNumberish, - fuses: BigNumberish, - expiry: BigNumberish - ], [ - string - ], "nonpayable">; - setTTL: TypedContractMethod<[ - node: BytesLike, - ttl: BigNumberish - ], [ - void - ], "nonpayable">; - setUpgradeContract: TypedContractMethod<[ - _upgradeAddress: AddressLike - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - transferOwnership: TypedContractMethod<[ - newOwner: AddressLike - ], [ - void - ], "nonpayable">; - unwrap: TypedContractMethod<[ - parentNode: BytesLike, - labelhash: BytesLike, - controller: AddressLike - ], [ - void - ], "nonpayable">; - unwrapETH2LD: TypedContractMethod<[ - labelhash: BytesLike, - registrant: AddressLike, - controller: AddressLike - ], [ - void - ], "nonpayable">; - upgrade: TypedContractMethod<[ - name: BytesLike, - extraData: BytesLike - ], [ - void - ], "nonpayable">; - upgradeContract: TypedContractMethod<[], [string], "view">; - uri: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - wrap: TypedContractMethod<[ - name: BytesLike, - wrappedOwner: AddressLike, - resolver: AddressLike - ], [ - void - ], "nonpayable">; - wrapETH2LD: TypedContractMethod<[ - label: string, - wrappedOwner: AddressLike, - ownerControlledFuses: BigNumberish, - resolver: AddressLike - ], [ - bigint - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "_tokens"): TypedContractMethod<[arg0: BigNumberish], [bigint], "view">; - getFunction(nameOrSignature: "allFusesBurned"): TypedContractMethod<[ - node: BytesLike, - fuseMask: BigNumberish - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "approve"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[ - account: AddressLike, - id: BigNumberish - ], [ - bigint - ], "view">; - getFunction(nameOrSignature: "balanceOfBatch"): TypedContractMethod<[ - accounts: AddressLike[], - ids: BigNumberish[] - ], [ - bigint[] - ], "view">; - getFunction(nameOrSignature: "canExtendSubnames"): TypedContractMethod<[ - node: BytesLike, - addr: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "canModifyName"): TypedContractMethod<[ - node: BytesLike, - addr: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "controllers"): TypedContractMethod<[arg0: AddressLike], [boolean], "view">; - getFunction(nameOrSignature: "ens"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "extendExpiry"): TypedContractMethod<[ - parentNode: BytesLike, - labelhash: BytesLike, - expiry: BigNumberish - ], [ - bigint - ], "nonpayable">; - getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[id: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "getData"): TypedContractMethod<[ - id: BigNumberish - ], [ - [ - string, - bigint, - bigint - ] & { - owner: string; - fuses: bigint; - expiry: bigint; - } - ], "view">; - getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ - account: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "isWrapped(bytes32,bytes32)"): TypedContractMethod<[ - parentNode: BytesLike, - labelhash: BytesLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "isWrapped(bytes32)"): TypedContractMethod<[node: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "metadataService"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "names"): TypedContractMethod<[arg0: BytesLike], [string], "view">; - getFunction(nameOrSignature: "onERC721Received"): TypedContractMethod<[ - to: AddressLike, - arg1: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - string - ], "nonpayable">; - getFunction(nameOrSignature: "owner"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[id: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "recoverFunds"): TypedContractMethod<[ - _token: AddressLike, - _to: AddressLike, - _amount: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "registerAndWrapETH2LD"): TypedContractMethod<[ - label: string, - wrappedOwner: AddressLike, - duration: BigNumberish, - resolver: AddressLike, - ownerControlledFuses: BigNumberish - ], [ - bigint - ], "nonpayable">; - getFunction(nameOrSignature: "registrar"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "renew"): TypedContractMethod<[ - tokenId: BigNumberish, - duration: BigNumberish - ], [ - bigint - ], "nonpayable">; - getFunction(nameOrSignature: "renounceOwnership"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "safeBatchTransferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - ids: BigNumberish[], - amounts: BigNumberish[], - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - id: BigNumberish, - amount: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setChildFuses"): TypedContractMethod<[ - parentNode: BytesLike, - labelhash: BytesLike, - fuses: BigNumberish, - expiry: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setController"): TypedContractMethod<[ - controller: AddressLike, - active: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setFuses"): TypedContractMethod<[ - node: BytesLike, - ownerControlledFuses: BigNumberish - ], [ - bigint - ], "nonpayable">; - getFunction(nameOrSignature: "setMetadataService"): TypedContractMethod<[_metadataService: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "setRecord"): TypedContractMethod<[ - node: BytesLike, - owner: AddressLike, - resolver: AddressLike, - ttl: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setResolver"): TypedContractMethod<[ - node: BytesLike, - resolver: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setSubnodeOwner"): TypedContractMethod<[ - parentNode: BytesLike, - label: string, - owner: AddressLike, - fuses: BigNumberish, - expiry: BigNumberish - ], [ - string - ], "nonpayable">; - getFunction(nameOrSignature: "setSubnodeRecord"): TypedContractMethod<[ - parentNode: BytesLike, - label: string, - owner: AddressLike, - resolver: AddressLike, - ttl: BigNumberish, - fuses: BigNumberish, - expiry: BigNumberish - ], [ - string - ], "nonpayable">; - getFunction(nameOrSignature: "setTTL"): TypedContractMethod<[ - node: BytesLike, - ttl: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setUpgradeContract"): TypedContractMethod<[_upgradeAddress: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "transferOwnership"): TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "unwrap"): TypedContractMethod<[ - parentNode: BytesLike, - labelhash: BytesLike, - controller: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "unwrapETH2LD"): TypedContractMethod<[ - labelhash: BytesLike, - registrant: AddressLike, - controller: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "upgrade"): TypedContractMethod<[ - name: BytesLike, - extraData: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "upgradeContract"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "uri"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "wrap"): TypedContractMethod<[ - name: BytesLike, - wrappedOwner: AddressLike, - resolver: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "wrapETH2LD"): TypedContractMethod<[ - label: string, - wrappedOwner: AddressLike, - ownerControlledFuses: BigNumberish, - resolver: AddressLike - ], [ - bigint - ], "nonpayable">; - getEvent(key: "Approval"): TypedContractEvent; - getEvent(key: "ApprovalForAll"): TypedContractEvent; - getEvent(key: "ControllerChanged"): TypedContractEvent; - getEvent(key: "ExpiryExtended"): TypedContractEvent; - getEvent(key: "FusesSet"): TypedContractEvent; - getEvent(key: "NameUnwrapped"): TypedContractEvent; - getEvent(key: "NameWrapped"): TypedContractEvent; - getEvent(key: "OwnershipTransferred"): TypedContractEvent; - getEvent(key: "TransferBatch"): TypedContractEvent; - getEvent(key: "TransferSingle"): TypedContractEvent; - getEvent(key: "URI"): TypedContractEvent; - filters: { - "Approval(address,address,uint256)": TypedContractEvent; - Approval: TypedContractEvent; - "ApprovalForAll(address,address,bool)": TypedContractEvent; - ApprovalForAll: TypedContractEvent; - "ControllerChanged(address,bool)": TypedContractEvent; - ControllerChanged: TypedContractEvent; - "ExpiryExtended(bytes32,uint64)": TypedContractEvent; - ExpiryExtended: TypedContractEvent; - "FusesSet(bytes32,uint32)": TypedContractEvent; - FusesSet: TypedContractEvent; - "NameUnwrapped(bytes32,address)": TypedContractEvent; - NameUnwrapped: TypedContractEvent; - "NameWrapped(bytes32,bytes,address,uint32,uint64)": TypedContractEvent; - NameWrapped: TypedContractEvent; - "OwnershipTransferred(address,address)": TypedContractEvent; - OwnershipTransferred: TypedContractEvent; - "TransferBatch(address,address,address,uint256[],uint256[])": TypedContractEvent; - TransferBatch: TypedContractEvent; - "TransferSingle(address,address,address,uint256,uint256)": TypedContractEvent; - TransferSingle: TypedContractEvent; - "URI(string,uint256)": TypedContractEvent; - URI: TypedContractEvent; - }; -} -//# sourceMappingURL=NameWrapper.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.d.ts.map deleted file mode 100644 index 28f582e9..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"NameWrapper.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.js b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/index.d.ts b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/index.d.ts deleted file mode 100644 index ee947305..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/index.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -export type { Controllable } from "./Controllable"; -export type { ERC1155Fuse } from "./ERC1155Fuse"; -export type { IMetadataService } from "./IMetadataService"; -export type { INameWrapper } from "./INameWrapper"; -export type { INameWrapperUpgrade } from "./INameWrapperUpgrade"; -export type { NameWrapper } from "./NameWrapper"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/index.d.ts.map b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/index.d.ts.map deleted file mode 100644 index d33c67b1..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/@ensdomains/ens-contracts/contracts/wrapper/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACnD,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,YAAY,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACnD,YAAY,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/index.js b/dist/types/@ensdomains/ens-contracts/contracts/wrapper/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/contracts/wrapper/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/ens-contracts/index.d.ts b/dist/types/@ensdomains/ens-contracts/index.d.ts deleted file mode 100644 index d16eef53..00000000 --- a/dist/types/@ensdomains/ens-contracts/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import type * as contracts from "./contracts"; -export type { contracts }; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/index.d.ts.map b/dist/types/@ensdomains/ens-contracts/index.d.ts.map deleted file mode 100644 index 066b5ec4..00000000 --- a/dist/types/@ensdomains/ens-contracts/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../types/@ensdomains/ens-contracts/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,SAAS,MAAM,aAAa,CAAC;AAC9C,YAAY,EAAE,SAAS,EAAE,CAAC"} \ No newline at end of file diff --git a/dist/types/@ensdomains/ens-contracts/index.js b/dist/types/@ensdomains/ens-contracts/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/ens-contracts/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@ensdomains/index.d.ts b/dist/types/@ensdomains/index.d.ts deleted file mode 100644 index 7a42dc56..00000000 --- a/dist/types/@ensdomains/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import type * as ensContracts from "./ens-contracts"; -export type { ensContracts }; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@ensdomains/index.d.ts.map b/dist/types/@ensdomains/index.d.ts.map deleted file mode 100644 index 988cff7b..00000000 --- a/dist/types/@ensdomains/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../types/@ensdomains/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,YAAY,MAAM,iBAAiB,CAAC;AACrD,YAAY,EAAE,YAAY,EAAE,CAAC"} \ No newline at end of file diff --git a/dist/types/@ensdomains/index.js b/dist/types/@ensdomains/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@ensdomains/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-2.3/access/index.d.ts b/dist/types/@openzeppelin/contracts-2.3/access/index.d.ts deleted file mode 100644 index 7720710c..00000000 --- a/dist/types/@openzeppelin/contracts-2.3/access/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import type * as roles from "./roles"; -export type { roles }; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/access/index.d.ts.map b/dist/types/@openzeppelin/contracts-2.3/access/index.d.ts.map deleted file mode 100644 index 7fe39bde..00000000 --- a/dist/types/@openzeppelin/contracts-2.3/access/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/@openzeppelin/contracts-2.3/access/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,KAAK,MAAM,SAAS,CAAC;AACtC,YAAY,EAAE,KAAK,EAAE,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/access/index.js b/dist/types/@openzeppelin/contracts-2.3/access/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-2.3/access/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-2.3/access/roles/MinterRole.d.ts b/dist/types/@openzeppelin/contracts-2.3/access/roles/MinterRole.d.ts deleted file mode 100644 index af57d923..00000000 --- a/dist/types/@openzeppelin/contracts-2.3/access/roles/MinterRole.d.ts +++ /dev/null @@ -1,64 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; -export interface MinterRoleInterface extends Interface { - getFunction(nameOrSignature: "addMinter" | "isMinter" | "renounceMinter"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "MinterAdded" | "MinterRemoved"): EventFragment; - encodeFunctionData(functionFragment: "addMinter", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "isMinter", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "renounceMinter", values?: undefined): string; - decodeFunctionResult(functionFragment: "addMinter", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isMinter", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceMinter", data: BytesLike): Result; -} -export declare namespace MinterAddedEvent { - type InputTuple = [account: AddressLike]; - type OutputTuple = [account: string]; - interface OutputObject { - account: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace MinterRemovedEvent { - type InputTuple = [account: AddressLike]; - type OutputTuple = [account: string]; - interface OutputObject { - account: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface MinterRole extends BaseContract { - connect(runner?: ContractRunner | null): MinterRole; - waitForDeployment(): Promise; - interface: MinterRoleInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - addMinter: TypedContractMethod<[account: AddressLike], [void], "nonpayable">; - isMinter: TypedContractMethod<[account: AddressLike], [boolean], "view">; - renounceMinter: TypedContractMethod<[], [void], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "addMinter"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "isMinter"): TypedContractMethod<[account: AddressLike], [boolean], "view">; - getFunction(nameOrSignature: "renounceMinter"): TypedContractMethod<[], [void], "nonpayable">; - getEvent(key: "MinterAdded"): TypedContractEvent; - getEvent(key: "MinterRemoved"): TypedContractEvent; - filters: { - "MinterAdded(address)": TypedContractEvent; - MinterAdded: TypedContractEvent; - "MinterRemoved(address)": TypedContractEvent; - MinterRemoved: TypedContractEvent; - }; -} -//# sourceMappingURL=MinterRole.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/access/roles/MinterRole.d.ts.map b/dist/types/@openzeppelin/contracts-2.3/access/roles/MinterRole.d.ts.map deleted file mode 100644 index 2fa7c7ce..00000000 --- a/dist/types/@openzeppelin/contracts-2.3/access/roles/MinterRole.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"MinterRole.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts-2.3/access/roles/MinterRole.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/access/roles/MinterRole.js b/dist/types/@openzeppelin/contracts-2.3/access/roles/MinterRole.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-2.3/access/roles/MinterRole.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole.d.ts b/dist/types/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole.d.ts deleted file mode 100644 index cf5e81d0..00000000 --- a/dist/types/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole.d.ts +++ /dev/null @@ -1,72 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; -export interface WhitelistAdminRoleInterface extends Interface { - getFunction(nameOrSignature: "addWhitelistAdmin" | "isWhitelistAdmin" | "renounceWhitelistAdmin"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "WhitelistAdminAdded" | "WhitelistAdminRemoved"): EventFragment; - encodeFunctionData(functionFragment: "addWhitelistAdmin", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "isWhitelistAdmin", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "renounceWhitelistAdmin", values?: undefined): string; - decodeFunctionResult(functionFragment: "addWhitelistAdmin", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isWhitelistAdmin", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceWhitelistAdmin", data: BytesLike): Result; -} -export declare namespace WhitelistAdminAddedEvent { - type InputTuple = [account: AddressLike]; - type OutputTuple = [account: string]; - interface OutputObject { - account: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace WhitelistAdminRemovedEvent { - type InputTuple = [account: AddressLike]; - type OutputTuple = [account: string]; - interface OutputObject { - account: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface WhitelistAdminRole extends BaseContract { - connect(runner?: ContractRunner | null): WhitelistAdminRole; - waitForDeployment(): Promise; - interface: WhitelistAdminRoleInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - addWhitelistAdmin: TypedContractMethod<[ - account: AddressLike - ], [ - void - ], "nonpayable">; - isWhitelistAdmin: TypedContractMethod<[ - account: AddressLike - ], [ - boolean - ], "view">; - renounceWhitelistAdmin: TypedContractMethod<[], [void], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "addWhitelistAdmin"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "isWhitelistAdmin"): TypedContractMethod<[account: AddressLike], [boolean], "view">; - getFunction(nameOrSignature: "renounceWhitelistAdmin"): TypedContractMethod<[], [void], "nonpayable">; - getEvent(key: "WhitelistAdminAdded"): TypedContractEvent; - getEvent(key: "WhitelistAdminRemoved"): TypedContractEvent; - filters: { - "WhitelistAdminAdded(address)": TypedContractEvent; - WhitelistAdminAdded: TypedContractEvent; - "WhitelistAdminRemoved(address)": TypedContractEvent; - WhitelistAdminRemoved: TypedContractEvent; - }; -} -//# sourceMappingURL=WhitelistAdminRole.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole.d.ts.map b/dist/types/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole.d.ts.map deleted file mode 100644 index 87480d2f..00000000 --- a/dist/types/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"WhitelistAdminRole.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,aAAa,EACb,WAAW,EACX,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,mBAAmB,EACnB,aAAa,EACb,mBAAmB,EACpB,MAAM,oBAAoB,CAAC;AAE5B,MAAM,WAAW,2BAA4B,SAAQ,SAAS;IAC5D,WAAW,CACT,eAAe,EACX,mBAAmB,GACnB,kBAAkB,GAClB,wBAAwB,GAC3B,gBAAgB,CAAC;IAEpB,QAAQ,CACN,sBAAsB,EAAE,qBAAqB,GAAG,uBAAuB,GACtE,aAAa,CAAC;IAEjB,kBAAkB,CAChB,gBAAgB,EAAE,mBAAmB,EACrC,MAAM,EAAE,CAAC,WAAW,CAAC,GACpB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,kBAAkB,EACpC,MAAM,EAAE,CAAC,WAAW,CAAC,GACpB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,wBAAwB,EAC1C,MAAM,CAAC,EAAE,SAAS,GACjB,MAAM,CAAC;IAEV,oBAAoB,CAClB,gBAAgB,EAAE,mBAAmB,EACrC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,kBAAkB,EACpC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,wBAAwB,EAC1C,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;CACX;AAED,yBAAiB,wBAAwB,CAAC;IACxC,KAAY,UAAU,GAAG,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IAChD,KAAY,WAAW,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC5C,UAAiB,YAAY;QAC3B,OAAO,EAAE,MAAM,CAAC;KACjB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,0BAA0B,CAAC;IAC1C,KAAY,UAAU,GAAG,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IAChD,KAAY,WAAW,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC5C,UAAiB,YAAY;QAC3B,OAAO,EAAE,MAAM,CAAC;KACjB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,MAAM,WAAW,kBAAmB,SAAQ,YAAY;IACtD,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,kBAAkB,CAAC;IAC5D,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,2BAA2B,CAAC;IAEvC,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,iBAAiB,EAAE,mBAAmB,CACpC;QAAC,OAAO,EAAE,WAAW;KAAC,EACtB;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,gBAAgB,EAAE,mBAAmB,CACnC;QAAC,OAAO,EAAE,WAAW;KAAC,EACtB;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,sBAAsB,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IAEtE,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,WAAW,CACT,eAAe,EAAE,mBAAmB,GACnC,mBAAmB,CAAC,CAAC,OAAO,EAAE,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IACrE,WAAW,CACT,eAAe,EAAE,kBAAkB,GAClC,mBAAmB,CAAC,CAAC,OAAO,EAAE,WAAW,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IAClE,WAAW,CACT,eAAe,EAAE,wBAAwB,GACxC,mBAAmB,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IAEjD,QAAQ,CACN,GAAG,EAAE,qBAAqB,GACzB,kBAAkB,CACnB,wBAAwB,CAAC,UAAU,EACnC,wBAAwB,CAAC,WAAW,EACpC,wBAAwB,CAAC,YAAY,CACtC,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,uBAAuB,GAC3B,kBAAkB,CACnB,0BAA0B,CAAC,UAAU,EACrC,0BAA0B,CAAC,WAAW,EACtC,0BAA0B,CAAC,YAAY,CACxC,CAAC;IAEF,OAAO,EAAE;QACP,8BAA8B,EAAE,kBAAkB,CAChD,wBAAwB,CAAC,UAAU,EACnC,wBAAwB,CAAC,WAAW,EACpC,wBAAwB,CAAC,YAAY,CACtC,CAAC;QACF,mBAAmB,EAAE,kBAAkB,CACrC,wBAAwB,CAAC,UAAU,EACnC,wBAAwB,CAAC,WAAW,EACpC,wBAAwB,CAAC,YAAY,CACtC,CAAC;QAEF,gCAAgC,EAAE,kBAAkB,CAClD,0BAA0B,CAAC,UAAU,EACrC,0BAA0B,CAAC,WAAW,EACtC,0BAA0B,CAAC,YAAY,CACxC,CAAC;QACF,qBAAqB,EAAE,kBAAkB,CACvC,0BAA0B,CAAC,UAAU,EACrC,0BAA0B,CAAC,WAAW,EACtC,0BAA0B,CAAC,YAAY,CACxC,CAAC;KACH,CAAC;CACH"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole.js b/dist/types/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole.d.ts b/dist/types/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole.d.ts deleted file mode 100644 index 1cd23ed9..00000000 --- a/dist/types/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole.d.ts +++ /dev/null @@ -1,124 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; -export interface WhitelistedRoleInterface extends Interface { - getFunction(nameOrSignature: "addWhitelistAdmin" | "addWhitelisted" | "isWhitelistAdmin" | "isWhitelisted" | "removeWhitelisted" | "renounceWhitelistAdmin" | "renounceWhitelisted"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "WhitelistAdminAdded" | "WhitelistAdminRemoved" | "WhitelistedAdded" | "WhitelistedRemoved"): EventFragment; - encodeFunctionData(functionFragment: "addWhitelistAdmin", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "addWhitelisted", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "isWhitelistAdmin", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "isWhitelisted", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "removeWhitelisted", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "renounceWhitelistAdmin", values?: undefined): string; - encodeFunctionData(functionFragment: "renounceWhitelisted", values?: undefined): string; - decodeFunctionResult(functionFragment: "addWhitelistAdmin", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "addWhitelisted", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isWhitelistAdmin", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isWhitelisted", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "removeWhitelisted", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceWhitelistAdmin", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceWhitelisted", data: BytesLike): Result; -} -export declare namespace WhitelistAdminAddedEvent { - type InputTuple = [account: AddressLike]; - type OutputTuple = [account: string]; - interface OutputObject { - account: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace WhitelistAdminRemovedEvent { - type InputTuple = [account: AddressLike]; - type OutputTuple = [account: string]; - interface OutputObject { - account: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace WhitelistedAddedEvent { - type InputTuple = [account: AddressLike]; - type OutputTuple = [account: string]; - interface OutputObject { - account: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace WhitelistedRemovedEvent { - type InputTuple = [account: AddressLike]; - type OutputTuple = [account: string]; - interface OutputObject { - account: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface WhitelistedRole extends BaseContract { - connect(runner?: ContractRunner | null): WhitelistedRole; - waitForDeployment(): Promise; - interface: WhitelistedRoleInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - addWhitelistAdmin: TypedContractMethod<[ - account: AddressLike - ], [ - void - ], "nonpayable">; - addWhitelisted: TypedContractMethod<[ - account: AddressLike - ], [ - void - ], "nonpayable">; - isWhitelistAdmin: TypedContractMethod<[ - account: AddressLike - ], [ - boolean - ], "view">; - isWhitelisted: TypedContractMethod<[account: AddressLike], [boolean], "view">; - removeWhitelisted: TypedContractMethod<[ - account: AddressLike - ], [ - void - ], "nonpayable">; - renounceWhitelistAdmin: TypedContractMethod<[], [void], "nonpayable">; - renounceWhitelisted: TypedContractMethod<[], [void], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "addWhitelistAdmin"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "addWhitelisted"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "isWhitelistAdmin"): TypedContractMethod<[account: AddressLike], [boolean], "view">; - getFunction(nameOrSignature: "isWhitelisted"): TypedContractMethod<[account: AddressLike], [boolean], "view">; - getFunction(nameOrSignature: "removeWhitelisted"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "renounceWhitelistAdmin"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "renounceWhitelisted"): TypedContractMethod<[], [void], "nonpayable">; - getEvent(key: "WhitelistAdminAdded"): TypedContractEvent; - getEvent(key: "WhitelistAdminRemoved"): TypedContractEvent; - getEvent(key: "WhitelistedAdded"): TypedContractEvent; - getEvent(key: "WhitelistedRemoved"): TypedContractEvent; - filters: { - "WhitelistAdminAdded(address)": TypedContractEvent; - WhitelistAdminAdded: TypedContractEvent; - "WhitelistAdminRemoved(address)": TypedContractEvent; - WhitelistAdminRemoved: TypedContractEvent; - "WhitelistedAdded(address)": TypedContractEvent; - WhitelistedAdded: TypedContractEvent; - "WhitelistedRemoved(address)": TypedContractEvent; - WhitelistedRemoved: TypedContractEvent; - }; -} -//# sourceMappingURL=WhitelistedRole.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole.d.ts.map b/dist/types/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole.d.ts.map deleted file mode 100644 index 5745d31a..00000000 --- a/dist/types/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"WhitelistedRole.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole.js b/dist/types/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-2.3/access/roles/index.d.ts b/dist/types/@openzeppelin/contracts-2.3/access/roles/index.d.ts deleted file mode 100644 index 690527b5..00000000 --- a/dist/types/@openzeppelin/contracts-2.3/access/roles/index.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export type { MinterRole } from "./MinterRole"; -export type { WhitelistAdminRole } from "./WhitelistAdminRole"; -export type { WhitelistedRole } from "./WhitelistedRole"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/access/roles/index.d.ts.map b/dist/types/@openzeppelin/contracts-2.3/access/roles/index.d.ts.map deleted file mode 100644 index 0918c12e..00000000 --- a/dist/types/@openzeppelin/contracts-2.3/access/roles/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts-2.3/access/roles/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,YAAY,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,YAAY,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/access/roles/index.js b/dist/types/@openzeppelin/contracts-2.3/access/roles/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-2.3/access/roles/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-2.3/index.d.ts b/dist/types/@openzeppelin/contracts-2.3/index.d.ts deleted file mode 100644 index 3eebab4d..00000000 --- a/dist/types/@openzeppelin/contracts-2.3/index.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import type * as access from "./access"; -export type { access }; -import type * as introspection from "./introspection"; -export type { introspection }; -import type * as token from "./token"; -export type { token }; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/index.d.ts.map b/dist/types/@openzeppelin/contracts-2.3/index.d.ts.map deleted file mode 100644 index a343ebaa..00000000 --- a/dist/types/@openzeppelin/contracts-2.3/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../types/@openzeppelin/contracts-2.3/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,MAAM,MAAM,UAAU,CAAC;AACxC,YAAY,EAAE,MAAM,EAAE,CAAC;AACvB,OAAO,KAAK,KAAK,aAAa,MAAM,iBAAiB,CAAC;AACtD,YAAY,EAAE,aAAa,EAAE,CAAC;AAC9B,OAAO,KAAK,KAAK,KAAK,MAAM,SAAS,CAAC;AACtC,YAAY,EAAE,KAAK,EAAE,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/index.js b/dist/types/@openzeppelin/contracts-2.3/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-2.3/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-2.3/introspection/ERC165.d.ts b/dist/types/@openzeppelin/contracts-2.3/introspection/ERC165.d.ts deleted file mode 100644 index 0baebca2..00000000 --- a/dist/types/@openzeppelin/contracts-2.3/introspection/ERC165.d.ts +++ /dev/null @@ -1,30 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../common"; -export interface ERC165Interface extends Interface { - getFunction(nameOrSignature: "supportsInterface"): FunctionFragment; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; -} -export interface ERC165 extends BaseContract { - connect(runner?: ContractRunner | null): ERC165; - waitForDeployment(): Promise; - interface: ERC165Interface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - filters: {}; -} -//# sourceMappingURL=ERC165.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/introspection/ERC165.d.ts.map b/dist/types/@openzeppelin/contracts-2.3/introspection/ERC165.d.ts.map deleted file mode 100644 index 1294b55b..00000000 --- a/dist/types/@openzeppelin/contracts-2.3/introspection/ERC165.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ERC165.d.ts","sourceRoot":"","sources":["../../../../../types/@openzeppelin/contracts-2.3/introspection/ERC165.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/introspection/ERC165.js b/dist/types/@openzeppelin/contracts-2.3/introspection/ERC165.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-2.3/introspection/ERC165.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-2.3/introspection/IERC165.d.ts b/dist/types/@openzeppelin/contracts-2.3/introspection/IERC165.d.ts deleted file mode 100644 index f83ccf87..00000000 --- a/dist/types/@openzeppelin/contracts-2.3/introspection/IERC165.d.ts +++ /dev/null @@ -1,30 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../common"; -export interface IERC165Interface extends Interface { - getFunction(nameOrSignature: "supportsInterface"): FunctionFragment; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; -} -export interface IERC165 extends BaseContract { - connect(runner?: ContractRunner | null): IERC165; - waitForDeployment(): Promise; - interface: IERC165Interface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - filters: {}; -} -//# sourceMappingURL=IERC165.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/introspection/IERC165.d.ts.map b/dist/types/@openzeppelin/contracts-2.3/introspection/IERC165.d.ts.map deleted file mode 100644 index 200f54d4..00000000 --- a/dist/types/@openzeppelin/contracts-2.3/introspection/IERC165.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC165.d.ts","sourceRoot":"","sources":["../../../../../types/@openzeppelin/contracts-2.3/introspection/IERC165.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/introspection/IERC165.js b/dist/types/@openzeppelin/contracts-2.3/introspection/IERC165.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-2.3/introspection/IERC165.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-2.3/introspection/index.d.ts b/dist/types/@openzeppelin/contracts-2.3/introspection/index.d.ts deleted file mode 100644 index 1d48adcb..00000000 --- a/dist/types/@openzeppelin/contracts-2.3/introspection/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export type { ERC165 } from "./ERC165"; -export type { IERC165 } from "./IERC165"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/introspection/index.d.ts.map b/dist/types/@openzeppelin/contracts-2.3/introspection/index.d.ts.map deleted file mode 100644 index 280a540a..00000000 --- a/dist/types/@openzeppelin/contracts-2.3/introspection/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/@openzeppelin/contracts-2.3/introspection/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AACvC,YAAY,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/introspection/index.js b/dist/types/@openzeppelin/contracts-2.3/introspection/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-2.3/introspection/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-2.3/token/ERC721/ERC721.d.ts b/dist/types/@openzeppelin/contracts-2.3/token/ERC721/ERC721.d.ts deleted file mode 100644 index 3e471a47..00000000 --- a/dist/types/@openzeppelin/contracts-2.3/token/ERC721/ERC721.d.ts +++ /dev/null @@ -1,200 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; -export interface ERC721Interface extends Interface { - getFunction(nameOrSignature: "approve" | "balanceOf" | "getApproved" | "isApprovedForAll" | "ownerOf" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "setApprovalForAll" | "supportsInterface" | "transferFrom"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "Transfer"): EventFragment; - encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; - decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; -} -export declare namespace ApprovalEvent { - type InputTuple = [ - owner: AddressLike, - approved: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [owner: string, approved: string, tokenId: bigint]; - interface OutputObject { - owner: string; - approved: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ApprovalForAllEvent { - type InputTuple = [ - owner: AddressLike, - operator: AddressLike, - approved: boolean - ]; - type OutputTuple = [ - owner: string, - operator: string, - approved: boolean - ]; - interface OutputObject { - owner: string; - operator: string; - approved: boolean; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferEvent { - type InputTuple = [ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [from: string, to: string, tokenId: bigint]; - interface OutputObject { - from: string; - to: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface ERC721 extends BaseContract { - connect(runner?: ContractRunner | null): ERC721; - waitForDeployment(): Promise; - interface: ERC721Interface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - approve: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; - getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - isApprovedForAll: TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - _data: BytesLike - ], [ - void - ], "nonpayable">; - setApprovalForAll: TypedContractMethod<[ - to: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - transferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "approve"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; - getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - _data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ - to: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getEvent(key: "Approval"): TypedContractEvent; - getEvent(key: "ApprovalForAll"): TypedContractEvent; - getEvent(key: "Transfer"): TypedContractEvent; - filters: { - "Approval(address,address,uint256)": TypedContractEvent; - Approval: TypedContractEvent; - "ApprovalForAll(address,address,bool)": TypedContractEvent; - ApprovalForAll: TypedContractEvent; - "Transfer(address,address,uint256)": TypedContractEvent; - Transfer: TypedContractEvent; - }; -} -//# sourceMappingURL=ERC721.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/token/ERC721/ERC721.d.ts.map b/dist/types/@openzeppelin/contracts-2.3/token/ERC721/ERC721.d.ts.map deleted file mode 100644 index 36ba91d7..00000000 --- a/dist/types/@openzeppelin/contracts-2.3/token/ERC721/ERC721.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ERC721.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts-2.3/token/ERC721/ERC721.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/token/ERC721/ERC721.js b/dist/types/@openzeppelin/contracts-2.3/token/ERC721/ERC721.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-2.3/token/ERC721/ERC721.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable.d.ts b/dist/types/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable.d.ts deleted file mode 100644 index 8655cca8..00000000 --- a/dist/types/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable.d.ts +++ /dev/null @@ -1,204 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; -export interface ERC721BurnableInterface extends Interface { - getFunction(nameOrSignature: "approve" | "balanceOf" | "burn" | "getApproved" | "isApprovedForAll" | "ownerOf" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "setApprovalForAll" | "supportsInterface" | "transferFrom"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "Transfer"): EventFragment; - encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "burn", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; - decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "burn", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; -} -export declare namespace ApprovalEvent { - type InputTuple = [ - owner: AddressLike, - approved: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [owner: string, approved: string, tokenId: bigint]; - interface OutputObject { - owner: string; - approved: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ApprovalForAllEvent { - type InputTuple = [ - owner: AddressLike, - operator: AddressLike, - approved: boolean - ]; - type OutputTuple = [ - owner: string, - operator: string, - approved: boolean - ]; - interface OutputObject { - owner: string; - operator: string; - approved: boolean; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferEvent { - type InputTuple = [ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [from: string, to: string, tokenId: bigint]; - interface OutputObject { - from: string; - to: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface ERC721Burnable extends BaseContract { - connect(runner?: ContractRunner | null): ERC721Burnable; - waitForDeployment(): Promise; - interface: ERC721BurnableInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - approve: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; - burn: TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; - getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - isApprovedForAll: TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - _data: BytesLike - ], [ - void - ], "nonpayable">; - setApprovalForAll: TypedContractMethod<[ - to: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - transferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "approve"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; - getFunction(nameOrSignature: "burn"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; - getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - _data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ - to: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getEvent(key: "Approval"): TypedContractEvent; - getEvent(key: "ApprovalForAll"): TypedContractEvent; - getEvent(key: "Transfer"): TypedContractEvent; - filters: { - "Approval(address,address,uint256)": TypedContractEvent; - Approval: TypedContractEvent; - "ApprovalForAll(address,address,bool)": TypedContractEvent; - ApprovalForAll: TypedContractEvent; - "Transfer(address,address,uint256)": TypedContractEvent; - Transfer: TypedContractEvent; - }; -} -//# sourceMappingURL=ERC721Burnable.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable.d.ts.map b/dist/types/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable.d.ts.map deleted file mode 100644 index 7c74d460..00000000 --- a/dist/types/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ERC721Burnable.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable.js b/dist/types/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721.d.ts b/dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721.d.ts deleted file mode 100644 index b2f0a5c7..00000000 --- a/dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721.d.ts +++ /dev/null @@ -1,200 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; -export interface IERC721Interface extends Interface { - getFunction(nameOrSignature: "approve" | "balanceOf" | "getApproved" | "isApprovedForAll" | "ownerOf" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "setApprovalForAll" | "supportsInterface" | "transferFrom"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "Transfer"): EventFragment; - encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; - decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; -} -export declare namespace ApprovalEvent { - type InputTuple = [ - owner: AddressLike, - approved: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [owner: string, approved: string, tokenId: bigint]; - interface OutputObject { - owner: string; - approved: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ApprovalForAllEvent { - type InputTuple = [ - owner: AddressLike, - operator: AddressLike, - approved: boolean - ]; - type OutputTuple = [ - owner: string, - operator: string, - approved: boolean - ]; - interface OutputObject { - owner: string; - operator: string; - approved: boolean; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferEvent { - type InputTuple = [ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [from: string, to: string, tokenId: bigint]; - interface OutputObject { - from: string; - to: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface IERC721 extends BaseContract { - connect(runner?: ContractRunner | null): IERC721; - waitForDeployment(): Promise; - interface: IERC721Interface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - approve: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; - getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - isApprovedForAll: TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - setApprovalForAll: TypedContractMethod<[ - operator: AddressLike, - _approved: boolean - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - transferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "approve"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; - getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ - operator: AddressLike, - _approved: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getEvent(key: "Approval"): TypedContractEvent; - getEvent(key: "ApprovalForAll"): TypedContractEvent; - getEvent(key: "Transfer"): TypedContractEvent; - filters: { - "Approval(address,address,uint256)": TypedContractEvent; - Approval: TypedContractEvent; - "ApprovalForAll(address,address,bool)": TypedContractEvent; - ApprovalForAll: TypedContractEvent; - "Transfer(address,address,uint256)": TypedContractEvent; - Transfer: TypedContractEvent; - }; -} -//# sourceMappingURL=IERC721.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721.d.ts.map b/dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721.d.ts.map deleted file mode 100644 index 04580a19..00000000 --- a/dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC721.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts-2.3/token/ERC721/IERC721.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721.js b/dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata.d.ts b/dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata.d.ts deleted file mode 100644 index e0f22fc8..00000000 --- a/dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata.d.ts +++ /dev/null @@ -1,212 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; -export interface IERC721MetadataInterface extends Interface { - getFunction(nameOrSignature: "approve" | "balanceOf" | "getApproved" | "isApprovedForAll" | "name" | "ownerOf" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "setApprovalForAll" | "supportsInterface" | "symbol" | "tokenURI" | "transferFrom"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "Transfer"): EventFragment; - encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "name", values?: undefined): string; - encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "symbol", values?: undefined): string; - encodeFunctionData(functionFragment: "tokenURI", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; - decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "tokenURI", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; -} -export declare namespace ApprovalEvent { - type InputTuple = [ - owner: AddressLike, - approved: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [owner: string, approved: string, tokenId: bigint]; - interface OutputObject { - owner: string; - approved: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ApprovalForAllEvent { - type InputTuple = [ - owner: AddressLike, - operator: AddressLike, - approved: boolean - ]; - type OutputTuple = [ - owner: string, - operator: string, - approved: boolean - ]; - interface OutputObject { - owner: string; - operator: string; - approved: boolean; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferEvent { - type InputTuple = [ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [from: string, to: string, tokenId: bigint]; - interface OutputObject { - from: string; - to: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface IERC721Metadata extends BaseContract { - connect(runner?: ContractRunner | null): IERC721Metadata; - waitForDeployment(): Promise; - interface: IERC721MetadataInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - approve: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; - getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - isApprovedForAll: TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - name: TypedContractMethod<[], [string], "view">; - ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - setApprovalForAll: TypedContractMethod<[ - operator: AddressLike, - _approved: boolean - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - symbol: TypedContractMethod<[], [string], "view">; - tokenURI: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - transferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "approve"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; - getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ - operator: AddressLike, - _approved: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "symbol"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "tokenURI"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getEvent(key: "Approval"): TypedContractEvent; - getEvent(key: "ApprovalForAll"): TypedContractEvent; - getEvent(key: "Transfer"): TypedContractEvent; - filters: { - "Approval(address,address,uint256)": TypedContractEvent; - Approval: TypedContractEvent; - "ApprovalForAll(address,address,bool)": TypedContractEvent; - ApprovalForAll: TypedContractEvent; - "Transfer(address,address,uint256)": TypedContractEvent; - Transfer: TypedContractEvent; - }; -} -//# sourceMappingURL=IERC721Metadata.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata.d.ts.map b/dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata.d.ts.map deleted file mode 100644 index 37f8f468..00000000 --- a/dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC721Metadata.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata.js b/dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver.d.ts b/dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver.d.ts deleted file mode 100644 index 12d740ba..00000000 --- a/dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver.d.ts +++ /dev/null @@ -1,40 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; -export interface IERC721ReceiverInterface extends Interface { - getFunction(nameOrSignature: "onERC721Received"): FunctionFragment; - encodeFunctionData(functionFragment: "onERC721Received", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; - decodeFunctionResult(functionFragment: "onERC721Received", data: BytesLike): Result; -} -export interface IERC721Receiver extends BaseContract { - connect(runner?: ContractRunner | null): IERC721Receiver; - waitForDeployment(): Promise; - interface: IERC721ReceiverInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - onERC721Received: TypedContractMethod<[ - operator: AddressLike, - from: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - string - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "onERC721Received"): TypedContractMethod<[ - operator: AddressLike, - from: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - string - ], "nonpayable">; - filters: {}; -} -//# sourceMappingURL=IERC721Receiver.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver.d.ts.map b/dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver.d.ts.map deleted file mode 100644 index 26710866..00000000 --- a/dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC721Receiver.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver.js b/dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-2.3/token/ERC721/index.d.ts b/dist/types/@openzeppelin/contracts-2.3/token/ERC721/index.d.ts deleted file mode 100644 index cf9c5772..00000000 --- a/dist/types/@openzeppelin/contracts-2.3/token/ERC721/index.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -export type { ERC721 } from "./ERC721"; -export type { ERC721Burnable } from "./ERC721Burnable"; -export type { IERC721 } from "./IERC721"; -export type { IERC721Metadata } from "./IERC721Metadata"; -export type { IERC721Receiver } from "./IERC721Receiver"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/token/ERC721/index.d.ts.map b/dist/types/@openzeppelin/contracts-2.3/token/ERC721/index.d.ts.map deleted file mode 100644 index 9329b02c..00000000 --- a/dist/types/@openzeppelin/contracts-2.3/token/ERC721/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts-2.3/token/ERC721/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AACvC,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,YAAY,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,YAAY,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,YAAY,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/token/ERC721/index.js b/dist/types/@openzeppelin/contracts-2.3/token/ERC721/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-2.3/token/ERC721/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-2.3/token/index.d.ts b/dist/types/@openzeppelin/contracts-2.3/token/index.d.ts deleted file mode 100644 index f91f652f..00000000 --- a/dist/types/@openzeppelin/contracts-2.3/token/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import type * as erc721 from "./ERC721"; -export type { erc721 }; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/token/index.d.ts.map b/dist/types/@openzeppelin/contracts-2.3/token/index.d.ts.map deleted file mode 100644 index 7e6dc720..00000000 --- a/dist/types/@openzeppelin/contracts-2.3/token/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/@openzeppelin/contracts-2.3/token/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,MAAM,MAAM,UAAU,CAAC;AACxC,YAAY,EAAE,MAAM,EAAE,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-2.3/token/index.js b/dist/types/@openzeppelin/contracts-2.3/token/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-2.3/token/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable.d.ts deleted file mode 100644 index 802a8afb..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable.d.ts +++ /dev/null @@ -1,192 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../common"; -export interface AccessControlEnumerableUpgradeableInterface extends Interface { - getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE" | "getRoleAdmin" | "getRoleMember" | "getRoleMemberCount" | "grantRole" | "hasRole" | "renounceRole" | "revokeRole" | "supportsInterface"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Initialized" | "RoleAdminChanged" | "RoleGranted" | "RoleRevoked"): EventFragment; - encodeFunctionData(functionFragment: "DEFAULT_ADMIN_ROLE", values?: undefined): string; - encodeFunctionData(functionFragment: "getRoleAdmin", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "getRoleMember", values: [BytesLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "getRoleMemberCount", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "grantRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "hasRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "renounceRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "revokeRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - decodeFunctionResult(functionFragment: "DEFAULT_ADMIN_ROLE", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getRoleAdmin", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getRoleMember", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getRoleMemberCount", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "grantRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "hasRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "revokeRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; -} -export declare namespace InitializedEvent { - type InputTuple = [version: BigNumberish]; - type OutputTuple = [version: bigint]; - interface OutputObject { - version: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RoleAdminChangedEvent { - type InputTuple = [ - role: BytesLike, - previousAdminRole: BytesLike, - newAdminRole: BytesLike - ]; - type OutputTuple = [ - role: string, - previousAdminRole: string, - newAdminRole: string - ]; - interface OutputObject { - role: string; - previousAdminRole: string; - newAdminRole: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RoleGrantedEvent { - type InputTuple = [ - role: BytesLike, - account: AddressLike, - sender: AddressLike - ]; - type OutputTuple = [role: string, account: string, sender: string]; - interface OutputObject { - role: string; - account: string; - sender: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RoleRevokedEvent { - type InputTuple = [ - role: BytesLike, - account: AddressLike, - sender: AddressLike - ]; - type OutputTuple = [role: string, account: string, sender: string]; - interface OutputObject { - role: string; - account: string; - sender: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface AccessControlEnumerableUpgradeable extends BaseContract { - connect(runner?: ContractRunner | null): AccessControlEnumerableUpgradeable; - waitForDeployment(): Promise; - interface: AccessControlEnumerableUpgradeableInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - DEFAULT_ADMIN_ROLE: TypedContractMethod<[], [string], "view">; - getRoleAdmin: TypedContractMethod<[role: BytesLike], [string], "view">; - getRoleMember: TypedContractMethod<[ - role: BytesLike, - index: BigNumberish - ], [ - string - ], "view">; - getRoleMemberCount: TypedContractMethod<[role: BytesLike], [bigint], "view">; - grantRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - hasRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - boolean - ], "view">; - renounceRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - revokeRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "getRoleAdmin"): TypedContractMethod<[role: BytesLike], [string], "view">; - getFunction(nameOrSignature: "getRoleMember"): TypedContractMethod<[ - role: BytesLike, - index: BigNumberish - ], [ - string - ], "view">; - getFunction(nameOrSignature: "getRoleMemberCount"): TypedContractMethod<[role: BytesLike], [bigint], "view">; - getFunction(nameOrSignature: "grantRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "hasRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "renounceRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "revokeRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - getEvent(key: "Initialized"): TypedContractEvent; - getEvent(key: "RoleAdminChanged"): TypedContractEvent; - getEvent(key: "RoleGranted"): TypedContractEvent; - getEvent(key: "RoleRevoked"): TypedContractEvent; - filters: { - "Initialized(uint8)": TypedContractEvent; - Initialized: TypedContractEvent; - "RoleAdminChanged(bytes32,bytes32,bytes32)": TypedContractEvent; - RoleAdminChanged: TypedContractEvent; - "RoleGranted(bytes32,address,address)": TypedContractEvent; - RoleGranted: TypedContractEvent; - "RoleRevoked(bytes32,address,address)": TypedContractEvent; - RoleRevoked: TypedContractEvent; - }; -} -//# sourceMappingURL=AccessControlEnumerableUpgradeable.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable.d.ts.map deleted file mode 100644 index 7bf30e3f..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"AccessControlEnumerableUpgradeable.d.ts","sourceRoot":"","sources":["../../../../../types/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable.js b/dist/types/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.d.ts deleted file mode 100644 index d219a4cf..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.d.ts +++ /dev/null @@ -1,174 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../common"; -export interface AccessControlUpgradeableInterface extends Interface { - getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE" | "getRoleAdmin" | "grantRole" | "hasRole" | "renounceRole" | "revokeRole" | "supportsInterface"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Initialized" | "RoleAdminChanged" | "RoleGranted" | "RoleRevoked"): EventFragment; - encodeFunctionData(functionFragment: "DEFAULT_ADMIN_ROLE", values?: undefined): string; - encodeFunctionData(functionFragment: "getRoleAdmin", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "grantRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "hasRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "renounceRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "revokeRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - decodeFunctionResult(functionFragment: "DEFAULT_ADMIN_ROLE", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getRoleAdmin", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "grantRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "hasRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "revokeRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; -} -export declare namespace InitializedEvent { - type InputTuple = [version: BigNumberish]; - type OutputTuple = [version: bigint]; - interface OutputObject { - version: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RoleAdminChangedEvent { - type InputTuple = [ - role: BytesLike, - previousAdminRole: BytesLike, - newAdminRole: BytesLike - ]; - type OutputTuple = [ - role: string, - previousAdminRole: string, - newAdminRole: string - ]; - interface OutputObject { - role: string; - previousAdminRole: string; - newAdminRole: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RoleGrantedEvent { - type InputTuple = [ - role: BytesLike, - account: AddressLike, - sender: AddressLike - ]; - type OutputTuple = [role: string, account: string, sender: string]; - interface OutputObject { - role: string; - account: string; - sender: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RoleRevokedEvent { - type InputTuple = [ - role: BytesLike, - account: AddressLike, - sender: AddressLike - ]; - type OutputTuple = [role: string, account: string, sender: string]; - interface OutputObject { - role: string; - account: string; - sender: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface AccessControlUpgradeable extends BaseContract { - connect(runner?: ContractRunner | null): AccessControlUpgradeable; - waitForDeployment(): Promise; - interface: AccessControlUpgradeableInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - DEFAULT_ADMIN_ROLE: TypedContractMethod<[], [string], "view">; - getRoleAdmin: TypedContractMethod<[role: BytesLike], [string], "view">; - grantRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - hasRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - boolean - ], "view">; - renounceRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - revokeRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "getRoleAdmin"): TypedContractMethod<[role: BytesLike], [string], "view">; - getFunction(nameOrSignature: "grantRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "hasRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "renounceRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "revokeRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - getEvent(key: "Initialized"): TypedContractEvent; - getEvent(key: "RoleAdminChanged"): TypedContractEvent; - getEvent(key: "RoleGranted"): TypedContractEvent; - getEvent(key: "RoleRevoked"): TypedContractEvent; - filters: { - "Initialized(uint8)": TypedContractEvent; - Initialized: TypedContractEvent; - "RoleAdminChanged(bytes32,bytes32,bytes32)": TypedContractEvent; - RoleAdminChanged: TypedContractEvent; - "RoleGranted(bytes32,address,address)": TypedContractEvent; - RoleGranted: TypedContractEvent; - "RoleRevoked(bytes32,address,address)": TypedContractEvent; - RoleRevoked: TypedContractEvent; - }; -} -//# sourceMappingURL=AccessControlUpgradeable.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.d.ts.map deleted file mode 100644 index 4a5a3ad8..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"AccessControlUpgradeable.d.ts","sourceRoot":"","sources":["../../../../../types/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.js b/dist/types/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable.d.ts deleted file mode 100644 index f0490e0a..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable.d.ts +++ /dev/null @@ -1,166 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../common"; -export interface IAccessControlEnumerableUpgradeableInterface extends Interface { - getFunction(nameOrSignature: "getRoleAdmin" | "getRoleMember" | "getRoleMemberCount" | "grantRole" | "hasRole" | "renounceRole" | "revokeRole"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "RoleAdminChanged" | "RoleGranted" | "RoleRevoked"): EventFragment; - encodeFunctionData(functionFragment: "getRoleAdmin", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "getRoleMember", values: [BytesLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "getRoleMemberCount", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "grantRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "hasRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "renounceRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "revokeRole", values: [BytesLike, AddressLike]): string; - decodeFunctionResult(functionFragment: "getRoleAdmin", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getRoleMember", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getRoleMemberCount", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "grantRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "hasRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "revokeRole", data: BytesLike): Result; -} -export declare namespace RoleAdminChangedEvent { - type InputTuple = [ - role: BytesLike, - previousAdminRole: BytesLike, - newAdminRole: BytesLike - ]; - type OutputTuple = [ - role: string, - previousAdminRole: string, - newAdminRole: string - ]; - interface OutputObject { - role: string; - previousAdminRole: string; - newAdminRole: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RoleGrantedEvent { - type InputTuple = [ - role: BytesLike, - account: AddressLike, - sender: AddressLike - ]; - type OutputTuple = [role: string, account: string, sender: string]; - interface OutputObject { - role: string; - account: string; - sender: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RoleRevokedEvent { - type InputTuple = [ - role: BytesLike, - account: AddressLike, - sender: AddressLike - ]; - type OutputTuple = [role: string, account: string, sender: string]; - interface OutputObject { - role: string; - account: string; - sender: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface IAccessControlEnumerableUpgradeable extends BaseContract { - connect(runner?: ContractRunner | null): IAccessControlEnumerableUpgradeable; - waitForDeployment(): Promise; - interface: IAccessControlEnumerableUpgradeableInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - getRoleAdmin: TypedContractMethod<[role: BytesLike], [string], "view">; - getRoleMember: TypedContractMethod<[ - role: BytesLike, - index: BigNumberish - ], [ - string - ], "view">; - getRoleMemberCount: TypedContractMethod<[role: BytesLike], [bigint], "view">; - grantRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - hasRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - boolean - ], "view">; - renounceRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - revokeRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "getRoleAdmin"): TypedContractMethod<[role: BytesLike], [string], "view">; - getFunction(nameOrSignature: "getRoleMember"): TypedContractMethod<[ - role: BytesLike, - index: BigNumberish - ], [ - string - ], "view">; - getFunction(nameOrSignature: "getRoleMemberCount"): TypedContractMethod<[role: BytesLike], [bigint], "view">; - getFunction(nameOrSignature: "grantRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "hasRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "renounceRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "revokeRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getEvent(key: "RoleAdminChanged"): TypedContractEvent; - getEvent(key: "RoleGranted"): TypedContractEvent; - getEvent(key: "RoleRevoked"): TypedContractEvent; - filters: { - "RoleAdminChanged(bytes32,bytes32,bytes32)": TypedContractEvent; - RoleAdminChanged: TypedContractEvent; - "RoleGranted(bytes32,address,address)": TypedContractEvent; - RoleGranted: TypedContractEvent; - "RoleRevoked(bytes32,address,address)": TypedContractEvent; - RoleRevoked: TypedContractEvent; - }; -} -//# sourceMappingURL=IAccessControlEnumerableUpgradeable.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable.d.ts.map deleted file mode 100644 index 4f15affa..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IAccessControlEnumerableUpgradeable.d.ts","sourceRoot":"","sources":["../../../../../types/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable.js b/dist/types/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable.d.ts deleted file mode 100644 index 95812525..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable.d.ts +++ /dev/null @@ -1,148 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../common"; -export interface IAccessControlUpgradeableInterface extends Interface { - getFunction(nameOrSignature: "getRoleAdmin" | "grantRole" | "hasRole" | "renounceRole" | "revokeRole"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "RoleAdminChanged" | "RoleGranted" | "RoleRevoked"): EventFragment; - encodeFunctionData(functionFragment: "getRoleAdmin", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "grantRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "hasRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "renounceRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "revokeRole", values: [BytesLike, AddressLike]): string; - decodeFunctionResult(functionFragment: "getRoleAdmin", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "grantRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "hasRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "revokeRole", data: BytesLike): Result; -} -export declare namespace RoleAdminChangedEvent { - type InputTuple = [ - role: BytesLike, - previousAdminRole: BytesLike, - newAdminRole: BytesLike - ]; - type OutputTuple = [ - role: string, - previousAdminRole: string, - newAdminRole: string - ]; - interface OutputObject { - role: string; - previousAdminRole: string; - newAdminRole: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RoleGrantedEvent { - type InputTuple = [ - role: BytesLike, - account: AddressLike, - sender: AddressLike - ]; - type OutputTuple = [role: string, account: string, sender: string]; - interface OutputObject { - role: string; - account: string; - sender: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RoleRevokedEvent { - type InputTuple = [ - role: BytesLike, - account: AddressLike, - sender: AddressLike - ]; - type OutputTuple = [role: string, account: string, sender: string]; - interface OutputObject { - role: string; - account: string; - sender: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface IAccessControlUpgradeable extends BaseContract { - connect(runner?: ContractRunner | null): IAccessControlUpgradeable; - waitForDeployment(): Promise; - interface: IAccessControlUpgradeableInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - getRoleAdmin: TypedContractMethod<[role: BytesLike], [string], "view">; - grantRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - hasRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - boolean - ], "view">; - renounceRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - revokeRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "getRoleAdmin"): TypedContractMethod<[role: BytesLike], [string], "view">; - getFunction(nameOrSignature: "grantRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "hasRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "renounceRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "revokeRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getEvent(key: "RoleAdminChanged"): TypedContractEvent; - getEvent(key: "RoleGranted"): TypedContractEvent; - getEvent(key: "RoleRevoked"): TypedContractEvent; - filters: { - "RoleAdminChanged(bytes32,bytes32,bytes32)": TypedContractEvent; - RoleAdminChanged: TypedContractEvent; - "RoleGranted(bytes32,address,address)": TypedContractEvent; - RoleGranted: TypedContractEvent; - "RoleRevoked(bytes32,address,address)": TypedContractEvent; - RoleRevoked: TypedContractEvent; - }; -} -//# sourceMappingURL=IAccessControlUpgradeable.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable.d.ts.map deleted file mode 100644 index 81689019..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IAccessControlUpgradeable.d.ts","sourceRoot":"","sources":["../../../../../types/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable.js b/dist/types/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.d.ts deleted file mode 100644 index 0faa56f1..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.d.ts +++ /dev/null @@ -1,69 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../common"; -export interface OwnableUpgradeableInterface extends Interface { - getFunction(nameOrSignature: "owner" | "renounceOwnership" | "transferOwnership"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Initialized" | "OwnershipTransferred"): EventFragment; - encodeFunctionData(functionFragment: "owner", values?: undefined): string; - encodeFunctionData(functionFragment: "renounceOwnership", values?: undefined): string; - encodeFunctionData(functionFragment: "transferOwnership", values: [AddressLike]): string; - decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceOwnership", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result; -} -export declare namespace InitializedEvent { - type InputTuple = [version: BigNumberish]; - type OutputTuple = [version: bigint]; - interface OutputObject { - version: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace OwnershipTransferredEvent { - type InputTuple = [previousOwner: AddressLike, newOwner: AddressLike]; - type OutputTuple = [previousOwner: string, newOwner: string]; - interface OutputObject { - previousOwner: string; - newOwner: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface OwnableUpgradeable extends BaseContract { - connect(runner?: ContractRunner | null): OwnableUpgradeable; - waitForDeployment(): Promise; - interface: OwnableUpgradeableInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - owner: TypedContractMethod<[], [string], "view">; - renounceOwnership: TypedContractMethod<[], [void], "nonpayable">; - transferOwnership: TypedContractMethod<[ - newOwner: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "owner"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "renounceOwnership"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "transferOwnership"): TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">; - getEvent(key: "Initialized"): TypedContractEvent; - getEvent(key: "OwnershipTransferred"): TypedContractEvent; - filters: { - "Initialized(uint8)": TypedContractEvent; - Initialized: TypedContractEvent; - "OwnershipTransferred(address,address)": TypedContractEvent; - OwnershipTransferred: TypedContractEvent; - }; -} -//# sourceMappingURL=OwnableUpgradeable.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.d.ts.map deleted file mode 100644 index 39cab59c..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"OwnableUpgradeable.d.ts","sourceRoot":"","sources":["../../../../../types/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.js b/dist/types/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/access/index.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/access/index.d.ts deleted file mode 100644 index 14a1097f..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/access/index.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -export type { AccessControlEnumerableUpgradeable } from "./AccessControlEnumerableUpgradeable"; -export type { AccessControlUpgradeable } from "./AccessControlUpgradeable"; -export type { IAccessControlEnumerableUpgradeable } from "./IAccessControlEnumerableUpgradeable"; -export type { IAccessControlUpgradeable } from "./IAccessControlUpgradeable"; -export type { OwnableUpgradeable } from "./OwnableUpgradeable"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/access/index.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/access/index.d.ts.map deleted file mode 100644 index 99800071..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/access/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/@openzeppelin/contracts-upgradeable/access/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,kCAAkC,EAAE,MAAM,sCAAsC,CAAC;AAC/F,YAAY,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAC3E,YAAY,EAAE,mCAAmC,EAAE,MAAM,uCAAuC,CAAC;AACjG,YAAY,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AAC7E,YAAY,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/access/index.js b/dist/types/@openzeppelin/contracts-upgradeable/access/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/access/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/index.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/index.d.ts deleted file mode 100644 index 82d10a96..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/index.d.ts +++ /dev/null @@ -1,13 +0,0 @@ -import type * as access from "./access"; -export type { access }; -import type * as interfaces from "./interfaces"; -export type { interfaces }; -import type * as proxy from "./proxy"; -export type { proxy }; -import type * as security from "./security"; -export type { security }; -import type * as token from "./token"; -export type { token }; -import type * as utils from "./utils"; -export type { utils }; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/index.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/index.d.ts.map deleted file mode 100644 index acd10d48..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../types/@openzeppelin/contracts-upgradeable/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,MAAM,MAAM,UAAU,CAAC;AACxC,YAAY,EAAE,MAAM,EAAE,CAAC;AACvB,OAAO,KAAK,KAAK,UAAU,MAAM,cAAc,CAAC;AAChD,YAAY,EAAE,UAAU,EAAE,CAAC;AAC3B,OAAO,KAAK,KAAK,KAAK,MAAM,SAAS,CAAC;AACtC,YAAY,EAAE,KAAK,EAAE,CAAC;AACtB,OAAO,KAAK,KAAK,QAAQ,MAAM,YAAY,CAAC;AAC5C,YAAY,EAAE,QAAQ,EAAE,CAAC;AACzB,OAAO,KAAK,KAAK,KAAK,MAAM,SAAS,CAAC;AACtC,YAAY,EAAE,KAAK,EAAE,CAAC;AACtB,OAAO,KAAK,KAAK,KAAK,MAAM,SAAS,CAAC;AACtC,YAAY,EAAE,KAAK,EAAE,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/index.js b/dist/types/@openzeppelin/contracts-upgradeable/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable.d.ts deleted file mode 100644 index 42c26182..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable.d.ts +++ /dev/null @@ -1,36 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../common"; -export interface IERC1271UpgradeableInterface extends Interface { - getFunction(nameOrSignature: "isValidSignature"): FunctionFragment; - encodeFunctionData(functionFragment: "isValidSignature", values: [BytesLike, BytesLike]): string; - decodeFunctionResult(functionFragment: "isValidSignature", data: BytesLike): Result; -} -export interface IERC1271Upgradeable extends BaseContract { - connect(runner?: ContractRunner | null): IERC1271Upgradeable; - waitForDeployment(): Promise; - interface: IERC1271UpgradeableInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - isValidSignature: TypedContractMethod<[ - hash: BytesLike, - signature: BytesLike - ], [ - string - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "isValidSignature"): TypedContractMethod<[ - hash: BytesLike, - signature: BytesLike - ], [ - string - ], "view">; - filters: {}; -} -//# sourceMappingURL=IERC1271Upgradeable.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable.d.ts.map deleted file mode 100644 index ece5e3a8..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC1271Upgradeable.d.ts","sourceRoot":"","sources":["../../../../../types/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable.js b/dist/types/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/interfaces/index.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/interfaces/index.d.ts deleted file mode 100644 index 9560bb16..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/interfaces/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export type { IERC1271Upgradeable } from "./IERC1271Upgradeable"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/interfaces/index.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/interfaces/index.d.ts.map deleted file mode 100644 index de0e0034..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/interfaces/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/@openzeppelin/contracts-upgradeable/interfaces/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/interfaces/index.js b/dist/types/@openzeppelin/contracts-upgradeable/interfaces/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/interfaces/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/proxy/index.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/proxy/index.d.ts deleted file mode 100644 index 3d394972..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/proxy/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import type * as utils from "./utils"; -export type { utils }; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/proxy/index.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/proxy/index.d.ts.map deleted file mode 100644 index df13142c..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/proxy/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/@openzeppelin/contracts-upgradeable/proxy/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,KAAK,MAAM,SAAS,CAAC;AACtC,YAAY,EAAE,KAAK,EAAE,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/proxy/index.js b/dist/types/@openzeppelin/contracts-upgradeable/proxy/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/proxy/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.d.ts deleted file mode 100644 index 4576aba7..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.d.ts +++ /dev/null @@ -1,37 +0,0 @@ -import type { BaseContract, BigNumberish, FunctionFragment, Interface, EventFragment, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener } from "../../../../common"; -export interface InitializableInterface extends Interface { - getEvent(nameOrSignatureOrTopic: "Initialized"): EventFragment; -} -export declare namespace InitializedEvent { - type InputTuple = [version: BigNumberish]; - type OutputTuple = [version: bigint]; - interface OutputObject { - version: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface Initializable extends BaseContract { - connect(runner?: ContractRunner | null): Initializable; - waitForDeployment(): Promise; - interface: InitializableInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - getFunction(key: string | FunctionFragment): T; - getEvent(key: "Initialized"): TypedContractEvent; - filters: { - "Initialized(uint8)": TypedContractEvent; - Initialized: TypedContractEvent; - }; -} -//# sourceMappingURL=Initializable.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.d.ts.map deleted file mode 100644 index 07501084..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Initializable.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.js b/dist/types/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/proxy/utils/index.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/proxy/utils/index.d.ts deleted file mode 100644 index f6ddb674..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/proxy/utils/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export type { Initializable } from "./Initializable"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/proxy/utils/index.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/proxy/utils/index.d.ts.map deleted file mode 100644 index 21d87aa7..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/proxy/utils/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts-upgradeable/proxy/utils/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/proxy/utils/index.js b/dist/types/@openzeppelin/contracts-upgradeable/proxy/utils/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/proxy/utils/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.d.ts deleted file mode 100644 index 10edf5c7..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.d.ts +++ /dev/null @@ -1,70 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../common"; -export interface PausableUpgradeableInterface extends Interface { - getFunction(nameOrSignature: "paused"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Initialized" | "Paused" | "Unpaused"): EventFragment; - encodeFunctionData(functionFragment: "paused", values?: undefined): string; - decodeFunctionResult(functionFragment: "paused", data: BytesLike): Result; -} -export declare namespace InitializedEvent { - type InputTuple = [version: BigNumberish]; - type OutputTuple = [version: bigint]; - interface OutputObject { - version: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace PausedEvent { - type InputTuple = [account: AddressLike]; - type OutputTuple = [account: string]; - interface OutputObject { - account: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace UnpausedEvent { - type InputTuple = [account: AddressLike]; - type OutputTuple = [account: string]; - interface OutputObject { - account: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface PausableUpgradeable extends BaseContract { - connect(runner?: ContractRunner | null): PausableUpgradeable; - waitForDeployment(): Promise; - interface: PausableUpgradeableInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - paused: TypedContractMethod<[], [boolean], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "paused"): TypedContractMethod<[], [boolean], "view">; - getEvent(key: "Initialized"): TypedContractEvent; - getEvent(key: "Paused"): TypedContractEvent; - getEvent(key: "Unpaused"): TypedContractEvent; - filters: { - "Initialized(uint8)": TypedContractEvent; - Initialized: TypedContractEvent; - "Paused(address)": TypedContractEvent; - Paused: TypedContractEvent; - "Unpaused(address)": TypedContractEvent; - Unpaused: TypedContractEvent; - }; -} -//# sourceMappingURL=PausableUpgradeable.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.d.ts.map deleted file mode 100644 index 17bab093..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"PausableUpgradeable.d.ts","sourceRoot":"","sources":["../../../../../types/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.js b/dist/types/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.d.ts deleted file mode 100644 index 100a8901..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.d.ts +++ /dev/null @@ -1,37 +0,0 @@ -import type { BaseContract, BigNumberish, FunctionFragment, Interface, EventFragment, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener } from "../../../common"; -export interface ReentrancyGuardUpgradeableInterface extends Interface { - getEvent(nameOrSignatureOrTopic: "Initialized"): EventFragment; -} -export declare namespace InitializedEvent { - type InputTuple = [version: BigNumberish]; - type OutputTuple = [version: bigint]; - interface OutputObject { - version: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface ReentrancyGuardUpgradeable extends BaseContract { - connect(runner?: ContractRunner | null): ReentrancyGuardUpgradeable; - waitForDeployment(): Promise; - interface: ReentrancyGuardUpgradeableInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - getFunction(key: string | FunctionFragment): T; - getEvent(key: "Initialized"): TypedContractEvent; - filters: { - "Initialized(uint8)": TypedContractEvent; - Initialized: TypedContractEvent; - }; -} -//# sourceMappingURL=ReentrancyGuardUpgradeable.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.d.ts.map deleted file mode 100644 index 781165ae..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ReentrancyGuardUpgradeable.d.ts","sourceRoot":"","sources":["../../../../../types/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.js b/dist/types/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/security/index.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/security/index.d.ts deleted file mode 100644 index 0b8dc56e..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/security/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export type { PausableUpgradeable } from "./PausableUpgradeable"; -export type { ReentrancyGuardUpgradeable } from "./ReentrancyGuardUpgradeable"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/security/index.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/security/index.d.ts.map deleted file mode 100644 index b2d2f9b2..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/security/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/@openzeppelin/contracts-upgradeable/security/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,YAAY,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/security/index.js b/dist/types/@openzeppelin/contracts-upgradeable/security/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/security/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable.d.ts deleted file mode 100644 index 716ef8d7..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable.d.ts +++ /dev/null @@ -1,251 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; -export interface ERC1155UpgradeableInterface extends Interface { - getFunction(nameOrSignature: "balanceOf" | "balanceOfBatch" | "isApprovedForAll" | "safeBatchTransferFrom" | "safeTransferFrom" | "setApprovalForAll" | "supportsInterface" | "uri"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "ApprovalForAll" | "Initialized" | "TransferBatch" | "TransferSingle" | "URI"): EventFragment; - encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "balanceOfBatch", values: [AddressLike[], BigNumberish[]]): string; - encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "safeBatchTransferFrom", values: [ - AddressLike, - AddressLike, - BigNumberish[], - BigNumberish[], - BytesLike - ]): string; - encodeFunctionData(functionFragment: "safeTransferFrom", values: [AddressLike, AddressLike, BigNumberish, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "uri", values: [BigNumberish]): string; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOfBatch", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeBatchTransferFrom", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "uri", data: BytesLike): Result; -} -export declare namespace ApprovalForAllEvent { - type InputTuple = [ - account: AddressLike, - operator: AddressLike, - approved: boolean - ]; - type OutputTuple = [ - account: string, - operator: string, - approved: boolean - ]; - interface OutputObject { - account: string; - operator: string; - approved: boolean; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace InitializedEvent { - type InputTuple = [version: BigNumberish]; - type OutputTuple = [version: bigint]; - interface OutputObject { - version: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferBatchEvent { - type InputTuple = [ - operator: AddressLike, - from: AddressLike, - to: AddressLike, - ids: BigNumberish[], - values: BigNumberish[] - ]; - type OutputTuple = [ - operator: string, - from: string, - to: string, - ids: bigint[], - values: bigint[] - ]; - interface OutputObject { - operator: string; - from: string; - to: string; - ids: bigint[]; - values: bigint[]; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferSingleEvent { - type InputTuple = [ - operator: AddressLike, - from: AddressLike, - to: AddressLike, - id: BigNumberish, - value: BigNumberish - ]; - type OutputTuple = [ - operator: string, - from: string, - to: string, - id: bigint, - value: bigint - ]; - interface OutputObject { - operator: string; - from: string; - to: string; - id: bigint; - value: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace URIEvent { - type InputTuple = [value: string, id: BigNumberish]; - type OutputTuple = [value: string, id: bigint]; - interface OutputObject { - value: string; - id: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface ERC1155Upgradeable extends BaseContract { - connect(runner?: ContractRunner | null): ERC1155Upgradeable; - waitForDeployment(): Promise; - interface: ERC1155UpgradeableInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - balanceOf: TypedContractMethod<[ - account: AddressLike, - id: BigNumberish - ], [ - bigint - ], "view">; - balanceOfBatch: TypedContractMethod<[ - accounts: AddressLike[], - ids: BigNumberish[] - ], [ - bigint[] - ], "view">; - isApprovedForAll: TypedContractMethod<[ - account: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - safeBatchTransferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - ids: BigNumberish[], - amounts: BigNumberish[], - data: BytesLike - ], [ - void - ], "nonpayable">; - safeTransferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - id: BigNumberish, - amount: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - setApprovalForAll: TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - uri: TypedContractMethod<[arg0: BigNumberish], [string], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[ - account: AddressLike, - id: BigNumberish - ], [ - bigint - ], "view">; - getFunction(nameOrSignature: "balanceOfBatch"): TypedContractMethod<[ - accounts: AddressLike[], - ids: BigNumberish[] - ], [ - bigint[] - ], "view">; - getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ - account: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "safeBatchTransferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - ids: BigNumberish[], - amounts: BigNumberish[], - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - id: BigNumberish, - amount: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "uri"): TypedContractMethod<[arg0: BigNumberish], [string], "view">; - getEvent(key: "ApprovalForAll"): TypedContractEvent; - getEvent(key: "Initialized"): TypedContractEvent; - getEvent(key: "TransferBatch"): TypedContractEvent; - getEvent(key: "TransferSingle"): TypedContractEvent; - getEvent(key: "URI"): TypedContractEvent; - filters: { - "ApprovalForAll(address,address,bool)": TypedContractEvent; - ApprovalForAll: TypedContractEvent; - "Initialized(uint8)": TypedContractEvent; - Initialized: TypedContractEvent; - "TransferBatch(address,address,address,uint256[],uint256[])": TypedContractEvent; - TransferBatch: TypedContractEvent; - "TransferSingle(address,address,address,uint256,uint256)": TypedContractEvent; - TransferSingle: TypedContractEvent; - "URI(string,uint256)": TypedContractEvent; - URI: TypedContractEvent; - }; -} -//# sourceMappingURL=ERC1155Upgradeable.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable.d.ts.map deleted file mode 100644 index 3dd8c95a..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ERC1155Upgradeable.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable.js b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable.d.ts deleted file mode 100644 index a859fec1..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable.d.ts +++ /dev/null @@ -1,76 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; -export interface IERC1155ReceiverUpgradeableInterface extends Interface { - getFunction(nameOrSignature: "onERC1155BatchReceived" | "onERC1155Received" | "supportsInterface"): FunctionFragment; - encodeFunctionData(functionFragment: "onERC1155BatchReceived", values: [ - AddressLike, - AddressLike, - BigNumberish[], - BigNumberish[], - BytesLike - ]): string; - encodeFunctionData(functionFragment: "onERC1155Received", values: [AddressLike, AddressLike, BigNumberish, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - decodeFunctionResult(functionFragment: "onERC1155BatchReceived", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "onERC1155Received", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; -} -export interface IERC1155ReceiverUpgradeable extends BaseContract { - connect(runner?: ContractRunner | null): IERC1155ReceiverUpgradeable; - waitForDeployment(): Promise; - interface: IERC1155ReceiverUpgradeableInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - onERC1155BatchReceived: TypedContractMethod<[ - operator: AddressLike, - from: AddressLike, - ids: BigNumberish[], - values: BigNumberish[], - data: BytesLike - ], [ - string - ], "nonpayable">; - onERC1155Received: TypedContractMethod<[ - operator: AddressLike, - from: AddressLike, - id: BigNumberish, - value: BigNumberish, - data: BytesLike - ], [ - string - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "onERC1155BatchReceived"): TypedContractMethod<[ - operator: AddressLike, - from: AddressLike, - ids: BigNumberish[], - values: BigNumberish[], - data: BytesLike - ], [ - string - ], "nonpayable">; - getFunction(nameOrSignature: "onERC1155Received"): TypedContractMethod<[ - operator: AddressLike, - from: AddressLike, - id: BigNumberish, - value: BigNumberish, - data: BytesLike - ], [ - string - ], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - filters: {}; -} -//# sourceMappingURL=IERC1155ReceiverUpgradeable.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable.d.ts.map deleted file mode 100644 index 19c2a2f0..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC1155ReceiverUpgradeable.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable.js b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable.d.ts deleted file mode 100644 index d09b7474..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable.d.ts +++ /dev/null @@ -1,233 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; -export interface IERC1155UpgradeableInterface extends Interface { - getFunction(nameOrSignature: "balanceOf" | "balanceOfBatch" | "isApprovedForAll" | "safeBatchTransferFrom" | "safeTransferFrom" | "setApprovalForAll" | "supportsInterface"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "ApprovalForAll" | "TransferBatch" | "TransferSingle" | "URI"): EventFragment; - encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "balanceOfBatch", values: [AddressLike[], BigNumberish[]]): string; - encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "safeBatchTransferFrom", values: [ - AddressLike, - AddressLike, - BigNumberish[], - BigNumberish[], - BytesLike - ]): string; - encodeFunctionData(functionFragment: "safeTransferFrom", values: [AddressLike, AddressLike, BigNumberish, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOfBatch", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeBatchTransferFrom", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; -} -export declare namespace ApprovalForAllEvent { - type InputTuple = [ - account: AddressLike, - operator: AddressLike, - approved: boolean - ]; - type OutputTuple = [ - account: string, - operator: string, - approved: boolean - ]; - interface OutputObject { - account: string; - operator: string; - approved: boolean; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferBatchEvent { - type InputTuple = [ - operator: AddressLike, - from: AddressLike, - to: AddressLike, - ids: BigNumberish[], - values: BigNumberish[] - ]; - type OutputTuple = [ - operator: string, - from: string, - to: string, - ids: bigint[], - values: bigint[] - ]; - interface OutputObject { - operator: string; - from: string; - to: string; - ids: bigint[]; - values: bigint[]; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferSingleEvent { - type InputTuple = [ - operator: AddressLike, - from: AddressLike, - to: AddressLike, - id: BigNumberish, - value: BigNumberish - ]; - type OutputTuple = [ - operator: string, - from: string, - to: string, - id: bigint, - value: bigint - ]; - interface OutputObject { - operator: string; - from: string; - to: string; - id: bigint; - value: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace URIEvent { - type InputTuple = [value: string, id: BigNumberish]; - type OutputTuple = [value: string, id: bigint]; - interface OutputObject { - value: string; - id: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface IERC1155Upgradeable extends BaseContract { - connect(runner?: ContractRunner | null): IERC1155Upgradeable; - waitForDeployment(): Promise; - interface: IERC1155UpgradeableInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - balanceOf: TypedContractMethod<[ - account: AddressLike, - id: BigNumberish - ], [ - bigint - ], "view">; - balanceOfBatch: TypedContractMethod<[ - accounts: AddressLike[], - ids: BigNumberish[] - ], [ - bigint[] - ], "view">; - isApprovedForAll: TypedContractMethod<[ - account: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - safeBatchTransferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - ids: BigNumberish[], - amounts: BigNumberish[], - data: BytesLike - ], [ - void - ], "nonpayable">; - safeTransferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - id: BigNumberish, - amount: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - setApprovalForAll: TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[ - account: AddressLike, - id: BigNumberish - ], [ - bigint - ], "view">; - getFunction(nameOrSignature: "balanceOfBatch"): TypedContractMethod<[ - accounts: AddressLike[], - ids: BigNumberish[] - ], [ - bigint[] - ], "view">; - getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ - account: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "safeBatchTransferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - ids: BigNumberish[], - amounts: BigNumberish[], - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - id: BigNumberish, - amount: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - getEvent(key: "ApprovalForAll"): TypedContractEvent; - getEvent(key: "TransferBatch"): TypedContractEvent; - getEvent(key: "TransferSingle"): TypedContractEvent; - getEvent(key: "URI"): TypedContractEvent; - filters: { - "ApprovalForAll(address,address,bool)": TypedContractEvent; - ApprovalForAll: TypedContractEvent; - "TransferBatch(address,address,address,uint256[],uint256[])": TypedContractEvent; - TransferBatch: TypedContractEvent; - "TransferSingle(address,address,address,uint256,uint256)": TypedContractEvent; - TransferSingle: TypedContractEvent; - "URI(string,uint256)": TypedContractEvent; - URI: TypedContractEvent; - }; -} -//# sourceMappingURL=IERC1155Upgradeable.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable.d.ts.map deleted file mode 100644 index 2e4240f5..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC1155Upgradeable.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable.js b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable.d.ts deleted file mode 100644 index 74d122a0..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable.d.ts +++ /dev/null @@ -1,283 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; -export interface ERC1155BurnableUpgradeableInterface extends Interface { - getFunction(nameOrSignature: "balanceOf" | "balanceOfBatch" | "burn" | "burnBatch" | "isApprovedForAll" | "safeBatchTransferFrom" | "safeTransferFrom" | "setApprovalForAll" | "supportsInterface" | "uri"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "ApprovalForAll" | "Initialized" | "TransferBatch" | "TransferSingle" | "URI"): EventFragment; - encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "balanceOfBatch", values: [AddressLike[], BigNumberish[]]): string; - encodeFunctionData(functionFragment: "burn", values: [AddressLike, BigNumberish, BigNumberish]): string; - encodeFunctionData(functionFragment: "burnBatch", values: [AddressLike, BigNumberish[], BigNumberish[]]): string; - encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "safeBatchTransferFrom", values: [ - AddressLike, - AddressLike, - BigNumberish[], - BigNumberish[], - BytesLike - ]): string; - encodeFunctionData(functionFragment: "safeTransferFrom", values: [AddressLike, AddressLike, BigNumberish, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "uri", values: [BigNumberish]): string; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOfBatch", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "burn", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "burnBatch", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeBatchTransferFrom", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "uri", data: BytesLike): Result; -} -export declare namespace ApprovalForAllEvent { - type InputTuple = [ - account: AddressLike, - operator: AddressLike, - approved: boolean - ]; - type OutputTuple = [ - account: string, - operator: string, - approved: boolean - ]; - interface OutputObject { - account: string; - operator: string; - approved: boolean; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace InitializedEvent { - type InputTuple = [version: BigNumberish]; - type OutputTuple = [version: bigint]; - interface OutputObject { - version: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferBatchEvent { - type InputTuple = [ - operator: AddressLike, - from: AddressLike, - to: AddressLike, - ids: BigNumberish[], - values: BigNumberish[] - ]; - type OutputTuple = [ - operator: string, - from: string, - to: string, - ids: bigint[], - values: bigint[] - ]; - interface OutputObject { - operator: string; - from: string; - to: string; - ids: bigint[]; - values: bigint[]; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferSingleEvent { - type InputTuple = [ - operator: AddressLike, - from: AddressLike, - to: AddressLike, - id: BigNumberish, - value: BigNumberish - ]; - type OutputTuple = [ - operator: string, - from: string, - to: string, - id: bigint, - value: bigint - ]; - interface OutputObject { - operator: string; - from: string; - to: string; - id: bigint; - value: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace URIEvent { - type InputTuple = [value: string, id: BigNumberish]; - type OutputTuple = [value: string, id: bigint]; - interface OutputObject { - value: string; - id: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface ERC1155BurnableUpgradeable extends BaseContract { - connect(runner?: ContractRunner | null): ERC1155BurnableUpgradeable; - waitForDeployment(): Promise; - interface: ERC1155BurnableUpgradeableInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - balanceOf: TypedContractMethod<[ - account: AddressLike, - id: BigNumberish - ], [ - bigint - ], "view">; - balanceOfBatch: TypedContractMethod<[ - accounts: AddressLike[], - ids: BigNumberish[] - ], [ - bigint[] - ], "view">; - burn: TypedContractMethod<[ - account: AddressLike, - id: BigNumberish, - value: BigNumberish - ], [ - void - ], "nonpayable">; - burnBatch: TypedContractMethod<[ - account: AddressLike, - ids: BigNumberish[], - values: BigNumberish[] - ], [ - void - ], "nonpayable">; - isApprovedForAll: TypedContractMethod<[ - account: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - safeBatchTransferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - ids: BigNumberish[], - amounts: BigNumberish[], - data: BytesLike - ], [ - void - ], "nonpayable">; - safeTransferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - id: BigNumberish, - amount: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - setApprovalForAll: TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - uri: TypedContractMethod<[arg0: BigNumberish], [string], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[ - account: AddressLike, - id: BigNumberish - ], [ - bigint - ], "view">; - getFunction(nameOrSignature: "balanceOfBatch"): TypedContractMethod<[ - accounts: AddressLike[], - ids: BigNumberish[] - ], [ - bigint[] - ], "view">; - getFunction(nameOrSignature: "burn"): TypedContractMethod<[ - account: AddressLike, - id: BigNumberish, - value: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "burnBatch"): TypedContractMethod<[ - account: AddressLike, - ids: BigNumberish[], - values: BigNumberish[] - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ - account: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "safeBatchTransferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - ids: BigNumberish[], - amounts: BigNumberish[], - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - id: BigNumberish, - amount: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "uri"): TypedContractMethod<[arg0: BigNumberish], [string], "view">; - getEvent(key: "ApprovalForAll"): TypedContractEvent; - getEvent(key: "Initialized"): TypedContractEvent; - getEvent(key: "TransferBatch"): TypedContractEvent; - getEvent(key: "TransferSingle"): TypedContractEvent; - getEvent(key: "URI"): TypedContractEvent; - filters: { - "ApprovalForAll(address,address,bool)": TypedContractEvent; - ApprovalForAll: TypedContractEvent; - "Initialized(uint8)": TypedContractEvent; - Initialized: TypedContractEvent; - "TransferBatch(address,address,address,uint256[],uint256[])": TypedContractEvent; - TransferBatch: TypedContractEvent; - "TransferSingle(address,address,address,uint256,uint256)": TypedContractEvent; - TransferSingle: TypedContractEvent; - "URI(string,uint256)": TypedContractEvent; - URI: TypedContractEvent; - }; -} -//# sourceMappingURL=ERC1155BurnableUpgradeable.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable.d.ts.map deleted file mode 100644 index 22830101..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ERC1155BurnableUpgradeable.d.ts","sourceRoot":"","sources":["../../../../../../../types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable.js b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable.d.ts deleted file mode 100644 index 04ca15a3..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable.d.ts +++ /dev/null @@ -1,283 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; -export interface ERC1155PausableUpgradeableInterface extends Interface { - getFunction(nameOrSignature: "balanceOf" | "balanceOfBatch" | "isApprovedForAll" | "paused" | "safeBatchTransferFrom" | "safeTransferFrom" | "setApprovalForAll" | "supportsInterface" | "uri"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "ApprovalForAll" | "Initialized" | "Paused" | "TransferBatch" | "TransferSingle" | "URI" | "Unpaused"): EventFragment; - encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "balanceOfBatch", values: [AddressLike[], BigNumberish[]]): string; - encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "paused", values?: undefined): string; - encodeFunctionData(functionFragment: "safeBatchTransferFrom", values: [ - AddressLike, - AddressLike, - BigNumberish[], - BigNumberish[], - BytesLike - ]): string; - encodeFunctionData(functionFragment: "safeTransferFrom", values: [AddressLike, AddressLike, BigNumberish, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "uri", values: [BigNumberish]): string; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOfBatch", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "paused", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeBatchTransferFrom", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "uri", data: BytesLike): Result; -} -export declare namespace ApprovalForAllEvent { - type InputTuple = [ - account: AddressLike, - operator: AddressLike, - approved: boolean - ]; - type OutputTuple = [ - account: string, - operator: string, - approved: boolean - ]; - interface OutputObject { - account: string; - operator: string; - approved: boolean; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace InitializedEvent { - type InputTuple = [version: BigNumberish]; - type OutputTuple = [version: bigint]; - interface OutputObject { - version: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace PausedEvent { - type InputTuple = [account: AddressLike]; - type OutputTuple = [account: string]; - interface OutputObject { - account: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferBatchEvent { - type InputTuple = [ - operator: AddressLike, - from: AddressLike, - to: AddressLike, - ids: BigNumberish[], - values: BigNumberish[] - ]; - type OutputTuple = [ - operator: string, - from: string, - to: string, - ids: bigint[], - values: bigint[] - ]; - interface OutputObject { - operator: string; - from: string; - to: string; - ids: bigint[]; - values: bigint[]; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferSingleEvent { - type InputTuple = [ - operator: AddressLike, - from: AddressLike, - to: AddressLike, - id: BigNumberish, - value: BigNumberish - ]; - type OutputTuple = [ - operator: string, - from: string, - to: string, - id: bigint, - value: bigint - ]; - interface OutputObject { - operator: string; - from: string; - to: string; - id: bigint; - value: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace URIEvent { - type InputTuple = [value: string, id: BigNumberish]; - type OutputTuple = [value: string, id: bigint]; - interface OutputObject { - value: string; - id: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace UnpausedEvent { - type InputTuple = [account: AddressLike]; - type OutputTuple = [account: string]; - interface OutputObject { - account: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface ERC1155PausableUpgradeable extends BaseContract { - connect(runner?: ContractRunner | null): ERC1155PausableUpgradeable; - waitForDeployment(): Promise; - interface: ERC1155PausableUpgradeableInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - balanceOf: TypedContractMethod<[ - account: AddressLike, - id: BigNumberish - ], [ - bigint - ], "view">; - balanceOfBatch: TypedContractMethod<[ - accounts: AddressLike[], - ids: BigNumberish[] - ], [ - bigint[] - ], "view">; - isApprovedForAll: TypedContractMethod<[ - account: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - paused: TypedContractMethod<[], [boolean], "view">; - safeBatchTransferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - ids: BigNumberish[], - amounts: BigNumberish[], - data: BytesLike - ], [ - void - ], "nonpayable">; - safeTransferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - id: BigNumberish, - amount: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - setApprovalForAll: TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - uri: TypedContractMethod<[arg0: BigNumberish], [string], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[ - account: AddressLike, - id: BigNumberish - ], [ - bigint - ], "view">; - getFunction(nameOrSignature: "balanceOfBatch"): TypedContractMethod<[ - accounts: AddressLike[], - ids: BigNumberish[] - ], [ - bigint[] - ], "view">; - getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ - account: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "paused"): TypedContractMethod<[], [boolean], "view">; - getFunction(nameOrSignature: "safeBatchTransferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - ids: BigNumberish[], - amounts: BigNumberish[], - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - id: BigNumberish, - amount: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "uri"): TypedContractMethod<[arg0: BigNumberish], [string], "view">; - getEvent(key: "ApprovalForAll"): TypedContractEvent; - getEvent(key: "Initialized"): TypedContractEvent; - getEvent(key: "Paused"): TypedContractEvent; - getEvent(key: "TransferBatch"): TypedContractEvent; - getEvent(key: "TransferSingle"): TypedContractEvent; - getEvent(key: "URI"): TypedContractEvent; - getEvent(key: "Unpaused"): TypedContractEvent; - filters: { - "ApprovalForAll(address,address,bool)": TypedContractEvent; - ApprovalForAll: TypedContractEvent; - "Initialized(uint8)": TypedContractEvent; - Initialized: TypedContractEvent; - "Paused(address)": TypedContractEvent; - Paused: TypedContractEvent; - "TransferBatch(address,address,address,uint256[],uint256[])": TypedContractEvent; - TransferBatch: TypedContractEvent; - "TransferSingle(address,address,address,uint256,uint256)": TypedContractEvent; - TransferSingle: TypedContractEvent; - "URI(string,uint256)": TypedContractEvent; - URI: TypedContractEvent; - "Unpaused(address)": TypedContractEvent; - Unpaused: TypedContractEvent; - }; -} -//# sourceMappingURL=ERC1155PausableUpgradeable.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable.d.ts.map deleted file mode 100644 index d28017e0..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ERC1155PausableUpgradeable.d.ts","sourceRoot":"","sources":["../../../../../../../types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable.js b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.d.ts deleted file mode 100644 index 1546ae1b..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.d.ts +++ /dev/null @@ -1,237 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; -export interface IERC1155MetadataURIUpgradeableInterface extends Interface { - getFunction(nameOrSignature: "balanceOf" | "balanceOfBatch" | "isApprovedForAll" | "safeBatchTransferFrom" | "safeTransferFrom" | "setApprovalForAll" | "supportsInterface" | "uri"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "ApprovalForAll" | "TransferBatch" | "TransferSingle" | "URI"): EventFragment; - encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "balanceOfBatch", values: [AddressLike[], BigNumberish[]]): string; - encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "safeBatchTransferFrom", values: [ - AddressLike, - AddressLike, - BigNumberish[], - BigNumberish[], - BytesLike - ]): string; - encodeFunctionData(functionFragment: "safeTransferFrom", values: [AddressLike, AddressLike, BigNumberish, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "uri", values: [BigNumberish]): string; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOfBatch", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeBatchTransferFrom", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "uri", data: BytesLike): Result; -} -export declare namespace ApprovalForAllEvent { - type InputTuple = [ - account: AddressLike, - operator: AddressLike, - approved: boolean - ]; - type OutputTuple = [ - account: string, - operator: string, - approved: boolean - ]; - interface OutputObject { - account: string; - operator: string; - approved: boolean; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferBatchEvent { - type InputTuple = [ - operator: AddressLike, - from: AddressLike, - to: AddressLike, - ids: BigNumberish[], - values: BigNumberish[] - ]; - type OutputTuple = [ - operator: string, - from: string, - to: string, - ids: bigint[], - values: bigint[] - ]; - interface OutputObject { - operator: string; - from: string; - to: string; - ids: bigint[]; - values: bigint[]; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferSingleEvent { - type InputTuple = [ - operator: AddressLike, - from: AddressLike, - to: AddressLike, - id: BigNumberish, - value: BigNumberish - ]; - type OutputTuple = [ - operator: string, - from: string, - to: string, - id: bigint, - value: bigint - ]; - interface OutputObject { - operator: string; - from: string; - to: string; - id: bigint; - value: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace URIEvent { - type InputTuple = [value: string, id: BigNumberish]; - type OutputTuple = [value: string, id: bigint]; - interface OutputObject { - value: string; - id: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface IERC1155MetadataURIUpgradeable extends BaseContract { - connect(runner?: ContractRunner | null): IERC1155MetadataURIUpgradeable; - waitForDeployment(): Promise; - interface: IERC1155MetadataURIUpgradeableInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - balanceOf: TypedContractMethod<[ - account: AddressLike, - id: BigNumberish - ], [ - bigint - ], "view">; - balanceOfBatch: TypedContractMethod<[ - accounts: AddressLike[], - ids: BigNumberish[] - ], [ - bigint[] - ], "view">; - isApprovedForAll: TypedContractMethod<[ - account: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - safeBatchTransferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - ids: BigNumberish[], - amounts: BigNumberish[], - data: BytesLike - ], [ - void - ], "nonpayable">; - safeTransferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - id: BigNumberish, - amount: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - setApprovalForAll: TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - uri: TypedContractMethod<[id: BigNumberish], [string], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[ - account: AddressLike, - id: BigNumberish - ], [ - bigint - ], "view">; - getFunction(nameOrSignature: "balanceOfBatch"): TypedContractMethod<[ - accounts: AddressLike[], - ids: BigNumberish[] - ], [ - bigint[] - ], "view">; - getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ - account: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "safeBatchTransferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - ids: BigNumberish[], - amounts: BigNumberish[], - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - id: BigNumberish, - amount: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "uri"): TypedContractMethod<[id: BigNumberish], [string], "view">; - getEvent(key: "ApprovalForAll"): TypedContractEvent; - getEvent(key: "TransferBatch"): TypedContractEvent; - getEvent(key: "TransferSingle"): TypedContractEvent; - getEvent(key: "URI"): TypedContractEvent; - filters: { - "ApprovalForAll(address,address,bool)": TypedContractEvent; - ApprovalForAll: TypedContractEvent; - "TransferBatch(address,address,address,uint256[],uint256[])": TypedContractEvent; - TransferBatch: TypedContractEvent; - "TransferSingle(address,address,address,uint256,uint256)": TypedContractEvent; - TransferSingle: TypedContractEvent; - "URI(string,uint256)": TypedContractEvent; - URI: TypedContractEvent; - }; -} -//# sourceMappingURL=IERC1155MetadataURIUpgradeable.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.d.ts.map deleted file mode 100644 index 58d1e773..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC1155MetadataURIUpgradeable.d.ts","sourceRoot":"","sources":["../../../../../../../types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.js b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/index.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/index.d.ts deleted file mode 100644 index cc5e934c..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/index.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export type { ERC1155BurnableUpgradeable } from "./ERC1155BurnableUpgradeable"; -export type { ERC1155PausableUpgradeable } from "./ERC1155PausableUpgradeable"; -export type { IERC1155MetadataURIUpgradeable } from "./IERC1155MetadataURIUpgradeable"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/index.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/index.d.ts.map deleted file mode 100644 index 32184a93..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC/E,YAAY,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC/E,YAAY,EAAE,8BAA8B,EAAE,MAAM,kCAAkC,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/index.js b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/index.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/index.d.ts deleted file mode 100644 index b6349eb6..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/index.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import type * as extensions from "./extensions"; -export type { extensions }; -import type * as presets from "./presets"; -export type { presets }; -export type { ERC1155Upgradeable } from "./ERC1155Upgradeable"; -export type { IERC1155ReceiverUpgradeable } from "./IERC1155ReceiverUpgradeable"; -export type { IERC1155Upgradeable } from "./IERC1155Upgradeable"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/index.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/index.d.ts.map deleted file mode 100644 index 6b52b0cc..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts-upgradeable/token/ERC1155/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,UAAU,MAAM,cAAc,CAAC;AAChD,YAAY,EAAE,UAAU,EAAE,CAAC;AAC3B,OAAO,KAAK,KAAK,OAAO,MAAM,WAAW,CAAC;AAC1C,YAAY,EAAE,OAAO,EAAE,CAAC;AACxB,YAAY,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,YAAY,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AACjF,YAAY,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/index.js b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable.d.ts deleted file mode 100644 index 0d83fe7e..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable.d.ts +++ /dev/null @@ -1,517 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; -export interface ERC1155PresetMinterPauserUpgradeableInterface extends Interface { - getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE" | "MINTER_ROLE" | "PAUSER_ROLE" | "balanceOf" | "balanceOfBatch" | "burn" | "burnBatch" | "getRoleAdmin" | "getRoleMember" | "getRoleMemberCount" | "grantRole" | "hasRole" | "initialize" | "isApprovedForAll" | "mint" | "mintBatch" | "pause" | "paused" | "renounceRole" | "revokeRole" | "safeBatchTransferFrom" | "safeTransferFrom" | "setApprovalForAll" | "supportsInterface" | "unpause" | "uri"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "ApprovalForAll" | "Initialized" | "Paused" | "RoleAdminChanged" | "RoleGranted" | "RoleRevoked" | "TransferBatch" | "TransferSingle" | "URI" | "Unpaused"): EventFragment; - encodeFunctionData(functionFragment: "DEFAULT_ADMIN_ROLE", values?: undefined): string; - encodeFunctionData(functionFragment: "MINTER_ROLE", values?: undefined): string; - encodeFunctionData(functionFragment: "PAUSER_ROLE", values?: undefined): string; - encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "balanceOfBatch", values: [AddressLike[], BigNumberish[]]): string; - encodeFunctionData(functionFragment: "burn", values: [AddressLike, BigNumberish, BigNumberish]): string; - encodeFunctionData(functionFragment: "burnBatch", values: [AddressLike, BigNumberish[], BigNumberish[]]): string; - encodeFunctionData(functionFragment: "getRoleAdmin", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "getRoleMember", values: [BytesLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "getRoleMemberCount", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "grantRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "hasRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "initialize", values: [string]): string; - encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "mint", values: [AddressLike, BigNumberish, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "mintBatch", values: [AddressLike, BigNumberish[], BigNumberish[], BytesLike]): string; - encodeFunctionData(functionFragment: "pause", values?: undefined): string; - encodeFunctionData(functionFragment: "paused", values?: undefined): string; - encodeFunctionData(functionFragment: "renounceRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "revokeRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "safeBatchTransferFrom", values: [ - AddressLike, - AddressLike, - BigNumberish[], - BigNumberish[], - BytesLike - ]): string; - encodeFunctionData(functionFragment: "safeTransferFrom", values: [AddressLike, AddressLike, BigNumberish, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "unpause", values?: undefined): string; - encodeFunctionData(functionFragment: "uri", values: [BigNumberish]): string; - decodeFunctionResult(functionFragment: "DEFAULT_ADMIN_ROLE", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "MINTER_ROLE", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "PAUSER_ROLE", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOfBatch", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "burn", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "burnBatch", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getRoleAdmin", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getRoleMember", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getRoleMemberCount", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "grantRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "hasRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "mint", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "mintBatch", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "pause", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "paused", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "revokeRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeBatchTransferFrom", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "unpause", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "uri", data: BytesLike): Result; -} -export declare namespace ApprovalForAllEvent { - type InputTuple = [ - account: AddressLike, - operator: AddressLike, - approved: boolean - ]; - type OutputTuple = [ - account: string, - operator: string, - approved: boolean - ]; - interface OutputObject { - account: string; - operator: string; - approved: boolean; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace InitializedEvent { - type InputTuple = [version: BigNumberish]; - type OutputTuple = [version: bigint]; - interface OutputObject { - version: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace PausedEvent { - type InputTuple = [account: AddressLike]; - type OutputTuple = [account: string]; - interface OutputObject { - account: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RoleAdminChangedEvent { - type InputTuple = [ - role: BytesLike, - previousAdminRole: BytesLike, - newAdminRole: BytesLike - ]; - type OutputTuple = [ - role: string, - previousAdminRole: string, - newAdminRole: string - ]; - interface OutputObject { - role: string; - previousAdminRole: string; - newAdminRole: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RoleGrantedEvent { - type InputTuple = [ - role: BytesLike, - account: AddressLike, - sender: AddressLike - ]; - type OutputTuple = [role: string, account: string, sender: string]; - interface OutputObject { - role: string; - account: string; - sender: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RoleRevokedEvent { - type InputTuple = [ - role: BytesLike, - account: AddressLike, - sender: AddressLike - ]; - type OutputTuple = [role: string, account: string, sender: string]; - interface OutputObject { - role: string; - account: string; - sender: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferBatchEvent { - type InputTuple = [ - operator: AddressLike, - from: AddressLike, - to: AddressLike, - ids: BigNumberish[], - values: BigNumberish[] - ]; - type OutputTuple = [ - operator: string, - from: string, - to: string, - ids: bigint[], - values: bigint[] - ]; - interface OutputObject { - operator: string; - from: string; - to: string; - ids: bigint[]; - values: bigint[]; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferSingleEvent { - type InputTuple = [ - operator: AddressLike, - from: AddressLike, - to: AddressLike, - id: BigNumberish, - value: BigNumberish - ]; - type OutputTuple = [ - operator: string, - from: string, - to: string, - id: bigint, - value: bigint - ]; - interface OutputObject { - operator: string; - from: string; - to: string; - id: bigint; - value: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace URIEvent { - type InputTuple = [value: string, id: BigNumberish]; - type OutputTuple = [value: string, id: bigint]; - interface OutputObject { - value: string; - id: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace UnpausedEvent { - type InputTuple = [account: AddressLike]; - type OutputTuple = [account: string]; - interface OutputObject { - account: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface ERC1155PresetMinterPauserUpgradeable extends BaseContract { - connect(runner?: ContractRunner | null): ERC1155PresetMinterPauserUpgradeable; - waitForDeployment(): Promise; - interface: ERC1155PresetMinterPauserUpgradeableInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - DEFAULT_ADMIN_ROLE: TypedContractMethod<[], [string], "view">; - MINTER_ROLE: TypedContractMethod<[], [string], "view">; - PAUSER_ROLE: TypedContractMethod<[], [string], "view">; - balanceOf: TypedContractMethod<[ - account: AddressLike, - id: BigNumberish - ], [ - bigint - ], "view">; - balanceOfBatch: TypedContractMethod<[ - accounts: AddressLike[], - ids: BigNumberish[] - ], [ - bigint[] - ], "view">; - burn: TypedContractMethod<[ - account: AddressLike, - id: BigNumberish, - value: BigNumberish - ], [ - void - ], "nonpayable">; - burnBatch: TypedContractMethod<[ - account: AddressLike, - ids: BigNumberish[], - values: BigNumberish[] - ], [ - void - ], "nonpayable">; - getRoleAdmin: TypedContractMethod<[role: BytesLike], [string], "view">; - getRoleMember: TypedContractMethod<[ - role: BytesLike, - index: BigNumberish - ], [ - string - ], "view">; - getRoleMemberCount: TypedContractMethod<[role: BytesLike], [bigint], "view">; - grantRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - hasRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - boolean - ], "view">; - initialize: TypedContractMethod<[uri: string], [void], "nonpayable">; - isApprovedForAll: TypedContractMethod<[ - account: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - mint: TypedContractMethod<[ - to: AddressLike, - id: BigNumberish, - amount: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - mintBatch: TypedContractMethod<[ - to: AddressLike, - ids: BigNumberish[], - amounts: BigNumberish[], - data: BytesLike - ], [ - void - ], "nonpayable">; - pause: TypedContractMethod<[], [void], "nonpayable">; - paused: TypedContractMethod<[], [boolean], "view">; - renounceRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - revokeRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - safeBatchTransferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - ids: BigNumberish[], - amounts: BigNumberish[], - data: BytesLike - ], [ - void - ], "nonpayable">; - safeTransferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - id: BigNumberish, - amount: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - setApprovalForAll: TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - unpause: TypedContractMethod<[], [void], "nonpayable">; - uri: TypedContractMethod<[arg0: BigNumberish], [string], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "MINTER_ROLE"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "PAUSER_ROLE"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[ - account: AddressLike, - id: BigNumberish - ], [ - bigint - ], "view">; - getFunction(nameOrSignature: "balanceOfBatch"): TypedContractMethod<[ - accounts: AddressLike[], - ids: BigNumberish[] - ], [ - bigint[] - ], "view">; - getFunction(nameOrSignature: "burn"): TypedContractMethod<[ - account: AddressLike, - id: BigNumberish, - value: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "burnBatch"): TypedContractMethod<[ - account: AddressLike, - ids: BigNumberish[], - values: BigNumberish[] - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "getRoleAdmin"): TypedContractMethod<[role: BytesLike], [string], "view">; - getFunction(nameOrSignature: "getRoleMember"): TypedContractMethod<[ - role: BytesLike, - index: BigNumberish - ], [ - string - ], "view">; - getFunction(nameOrSignature: "getRoleMemberCount"): TypedContractMethod<[role: BytesLike], [bigint], "view">; - getFunction(nameOrSignature: "grantRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "hasRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "initialize"): TypedContractMethod<[uri: string], [void], "nonpayable">; - getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ - account: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "mint"): TypedContractMethod<[ - to: AddressLike, - id: BigNumberish, - amount: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "mintBatch"): TypedContractMethod<[ - to: AddressLike, - ids: BigNumberish[], - amounts: BigNumberish[], - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "pause"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "paused"): TypedContractMethod<[], [boolean], "view">; - getFunction(nameOrSignature: "renounceRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "revokeRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeBatchTransferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - ids: BigNumberish[], - amounts: BigNumberish[], - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - id: BigNumberish, - amount: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "unpause"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "uri"): TypedContractMethod<[arg0: BigNumberish], [string], "view">; - getEvent(key: "ApprovalForAll"): TypedContractEvent; - getEvent(key: "Initialized"): TypedContractEvent; - getEvent(key: "Paused"): TypedContractEvent; - getEvent(key: "RoleAdminChanged"): TypedContractEvent; - getEvent(key: "RoleGranted"): TypedContractEvent; - getEvent(key: "RoleRevoked"): TypedContractEvent; - getEvent(key: "TransferBatch"): TypedContractEvent; - getEvent(key: "TransferSingle"): TypedContractEvent; - getEvent(key: "URI"): TypedContractEvent; - getEvent(key: "Unpaused"): TypedContractEvent; - filters: { - "ApprovalForAll(address,address,bool)": TypedContractEvent; - ApprovalForAll: TypedContractEvent; - "Initialized(uint8)": TypedContractEvent; - Initialized: TypedContractEvent; - "Paused(address)": TypedContractEvent; - Paused: TypedContractEvent; - "RoleAdminChanged(bytes32,bytes32,bytes32)": TypedContractEvent; - RoleAdminChanged: TypedContractEvent; - "RoleGranted(bytes32,address,address)": TypedContractEvent; - RoleGranted: TypedContractEvent; - "RoleRevoked(bytes32,address,address)": TypedContractEvent; - RoleRevoked: TypedContractEvent; - "TransferBatch(address,address,address,uint256[],uint256[])": TypedContractEvent; - TransferBatch: TypedContractEvent; - "TransferSingle(address,address,address,uint256,uint256)": TypedContractEvent; - TransferSingle: TypedContractEvent; - "URI(string,uint256)": TypedContractEvent; - URI: TypedContractEvent; - "Unpaused(address)": TypedContractEvent; - Unpaused: TypedContractEvent; - }; -} -//# sourceMappingURL=ERC1155PresetMinterPauserUpgradeable.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable.d.ts.map deleted file mode 100644 index 18a44d74..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ERC1155PresetMinterPauserUpgradeable.d.ts","sourceRoot":"","sources":["../../../../../../../types/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,aAAa,EACb,WAAW,EACX,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,mBAAmB,EACnB,aAAa,EACb,mBAAmB,EACpB,MAAM,uBAAuB,CAAC;AAE/B,MAAM,WAAW,6CACf,SAAQ,SAAS;IACjB,WAAW,CACT,eAAe,EACX,oBAAoB,GACpB,aAAa,GACb,aAAa,GACb,WAAW,GACX,gBAAgB,GAChB,MAAM,GACN,WAAW,GACX,cAAc,GACd,eAAe,GACf,oBAAoB,GACpB,WAAW,GACX,SAAS,GACT,YAAY,GACZ,kBAAkB,GAClB,MAAM,GACN,WAAW,GACX,OAAO,GACP,QAAQ,GACR,cAAc,GACd,YAAY,GACZ,uBAAuB,GACvB,kBAAkB,GAClB,mBAAmB,GACnB,mBAAmB,GACnB,SAAS,GACT,KAAK,GACR,gBAAgB,CAAC;IAEpB,QAAQ,CACN,sBAAsB,EAClB,gBAAgB,GAChB,aAAa,GACb,QAAQ,GACR,kBAAkB,GAClB,aAAa,GACb,aAAa,GACb,eAAe,GACf,gBAAgB,GAChB,KAAK,GACL,UAAU,GACb,aAAa,CAAC;IAEjB,kBAAkB,CAChB,gBAAgB,EAAE,oBAAoB,EACtC,MAAM,CAAC,EAAE,SAAS,GACjB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,aAAa,EAC/B,MAAM,CAAC,EAAE,SAAS,GACjB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,aAAa,EAC/B,MAAM,CAAC,EAAE,SAAS,GACjB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,WAAW,EAC7B,MAAM,EAAE,CAAC,WAAW,EAAE,YAAY,CAAC,GAClC,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,gBAAgB,EAClC,MAAM,EAAE,CAAC,WAAW,EAAE,EAAE,YAAY,EAAE,CAAC,GACtC,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,MAAM,EACxB,MAAM,EAAE,CAAC,WAAW,EAAE,YAAY,EAAE,YAAY,CAAC,GAChD,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,WAAW,EAC7B,MAAM,EAAE,CAAC,WAAW,EAAE,YAAY,EAAE,EAAE,YAAY,EAAE,CAAC,GACpD,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,cAAc,EAChC,MAAM,EAAE,CAAC,SAAS,CAAC,GAClB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,eAAe,EACjC,MAAM,EAAE,CAAC,SAAS,EAAE,YAAY,CAAC,GAChC,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,oBAAoB,EACtC,MAAM,EAAE,CAAC,SAAS,CAAC,GAClB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,WAAW,EAC7B,MAAM,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC,GAC/B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,SAAS,EAC3B,MAAM,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC,GAC/B,MAAM,CAAC;IACV,kBAAkB,CAAC,gBAAgB,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;IAC7E,kBAAkB,CAChB,gBAAgB,EAAE,kBAAkB,EACpC,MAAM,EAAE,CAAC,WAAW,EAAE,WAAW,CAAC,GACjC,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,MAAM,EACxB,MAAM,EAAE,CAAC,WAAW,EAAE,YAAY,EAAE,YAAY,EAAE,SAAS,CAAC,GAC3D,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,WAAW,EAC7B,MAAM,EAAE,CAAC,WAAW,EAAE,YAAY,EAAE,EAAE,YAAY,EAAE,EAAE,SAAS,CAAC,GAC/D,MAAM,CAAC;IACV,kBAAkB,CAAC,gBAAgB,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IAC1E,kBAAkB,CAAC,gBAAgB,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,kBAAkB,CAChB,gBAAgB,EAAE,cAAc,EAChC,MAAM,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC,GAC/B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,YAAY,EAC9B,MAAM,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC,GAC/B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,uBAAuB,EACzC,MAAM,EAAE;QACN,WAAW;QACX,WAAW;QACX,YAAY,EAAE;QACd,YAAY,EAAE;QACd,SAAS;KACV,GACA,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,kBAAkB,EACpC,MAAM,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,YAAY,EAAE,SAAS,CAAC,GACxE,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,mBAAmB,EACrC,MAAM,EAAE,CAAC,WAAW,EAAE,OAAO,CAAC,GAC7B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,mBAAmB,EACrC,MAAM,EAAE,CAAC,SAAS,CAAC,GAClB,MAAM,CAAC;IACV,kBAAkB,CAAC,gBAAgB,EAAE,SAAS,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IAC5E,kBAAkB,CAAC,gBAAgB,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,YAAY,CAAC,GAAG,MAAM,CAAC;IAE5E,oBAAoB,CAClB,gBAAgB,EAAE,oBAAoB,EACtC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,aAAa,EAC/B,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,aAAa,EAC/B,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC7E,oBAAoB,CAClB,gBAAgB,EAAE,gBAAgB,EAClC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IACxE,oBAAoB,CAAC,gBAAgB,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC7E,oBAAoB,CAClB,gBAAgB,EAAE,cAAc,EAChC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,eAAe,EACjC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,oBAAoB,EACtC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC7E,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,oBAAoB,CAAC,gBAAgB,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC9E,oBAAoB,CAClB,gBAAgB,EAAE,kBAAkB,EACpC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IACxE,oBAAoB,CAAC,gBAAgB,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC7E,oBAAoB,CAAC,gBAAgB,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IACzE,oBAAoB,CAAC,gBAAgB,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC1E,oBAAoB,CAClB,gBAAgB,EAAE,cAAc,EAChC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC9E,oBAAoB,CAClB,gBAAgB,EAAE,uBAAuB,EACzC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,kBAAkB,EACpC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,mBAAmB,EACrC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,mBAAmB,EACrC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,oBAAoB,CAAC,gBAAgB,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;CACxE;AAED,yBAAiB,mBAAmB,CAAC;IACnC,KAAY,UAAU,GAAG;QACvB,OAAO,EAAE,WAAW;QACpB,QAAQ,EAAE,WAAW;QACrB,QAAQ,EAAE,OAAO;KAClB,CAAC;IACF,KAAY,WAAW,GAAG;QACxB,OAAO,EAAE,MAAM;QACf,QAAQ,EAAE,MAAM;QAChB,QAAQ,EAAE,OAAO;KAClB,CAAC;IACF,UAAiB,YAAY;QAC3B,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,OAAO,CAAC;KACnB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,gBAAgB,CAAC;IAChC,KAAY,UAAU,GAAG,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IACjD,KAAY,WAAW,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC5C,UAAiB,YAAY;QAC3B,OAAO,EAAE,MAAM,CAAC;KACjB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,WAAW,CAAC;IAC3B,KAAY,UAAU,GAAG,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IAChD,KAAY,WAAW,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC5C,UAAiB,YAAY;QAC3B,OAAO,EAAE,MAAM,CAAC;KACjB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,qBAAqB,CAAC;IACrC,KAAY,UAAU,GAAG;QACvB,IAAI,EAAE,SAAS;QACf,iBAAiB,EAAE,SAAS;QAC5B,YAAY,EAAE,SAAS;KACxB,CAAC;IACF,KAAY,WAAW,GAAG;QACxB,IAAI,EAAE,MAAM;QACZ,iBAAiB,EAAE,MAAM;QACzB,YAAY,EAAE,MAAM;KACrB,CAAC;IACF,UAAiB,YAAY;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,iBAAiB,EAAE,MAAM,CAAC;QAC1B,YAAY,EAAE,MAAM,CAAC;KACtB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,gBAAgB,CAAC;IAChC,KAAY,UAAU,GAAG;QACvB,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,WAAW;QACpB,MAAM,EAAE,WAAW;KACpB,CAAC;IACF,KAAY,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1E,UAAiB,YAAY;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;KAChB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,gBAAgB,CAAC;IAChC,KAAY,UAAU,GAAG;QACvB,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,WAAW;QACpB,MAAM,EAAE,WAAW;KACpB,CAAC;IACF,KAAY,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1E,UAAiB,YAAY;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;KAChB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,kBAAkB,CAAC;IAClC,KAAY,UAAU,GAAG;QACvB,QAAQ,EAAE,WAAW;QACrB,IAAI,EAAE,WAAW;QACjB,EAAE,EAAE,WAAW;QACf,GAAG,EAAE,YAAY,EAAE;QACnB,MAAM,EAAE,YAAY,EAAE;KACvB,CAAC;IACF,KAAY,WAAW,GAAG;QACxB,QAAQ,EAAE,MAAM;QAChB,IAAI,EAAE,MAAM;QACZ,EAAE,EAAE,MAAM;QACV,GAAG,EAAE,MAAM,EAAE;QACb,MAAM,EAAE,MAAM,EAAE;KACjB,CAAC;IACF,UAAiB,YAAY;QAC3B,QAAQ,EAAE,MAAM,CAAC;QACjB,IAAI,EAAE,MAAM,CAAC;QACb,EAAE,EAAE,MAAM,CAAC;QACX,GAAG,EAAE,MAAM,EAAE,CAAC;QACd,MAAM,EAAE,MAAM,EAAE,CAAC;KAClB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,mBAAmB,CAAC;IACnC,KAAY,UAAU,GAAG;QACvB,QAAQ,EAAE,WAAW;QACrB,IAAI,EAAE,WAAW;QACjB,EAAE,EAAE,WAAW;QACf,EAAE,EAAE,YAAY;QAChB,KAAK,EAAE,YAAY;KACpB,CAAC;IACF,KAAY,WAAW,GAAG;QACxB,QAAQ,EAAE,MAAM;QAChB,IAAI,EAAE,MAAM;QACZ,EAAE,EAAE,MAAM;QACV,EAAE,EAAE,MAAM;QACV,KAAK,EAAE,MAAM;KACd,CAAC;IACF,UAAiB,YAAY;QAC3B,QAAQ,EAAE,MAAM,CAAC;QACjB,IAAI,EAAE,MAAM,CAAC;QACb,EAAE,EAAE,MAAM,CAAC;QACX,EAAE,EAAE,MAAM,CAAC;QACX,KAAK,EAAE,MAAM,CAAC;KACf;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,QAAQ,CAAC;IACxB,KAAY,UAAU,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,YAAY,CAAC,CAAC;IAC3D,KAAY,WAAW,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC;IACtD,UAAiB,YAAY;QAC3B,KAAK,EAAE,MAAM,CAAC;QACd,EAAE,EAAE,MAAM,CAAC;KACZ;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,aAAa,CAAC;IAC7B,KAAY,UAAU,GAAG,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IAChD,KAAY,WAAW,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC5C,UAAiB,YAAY;QAC3B,OAAO,EAAE,MAAM,CAAC;KACjB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,MAAM,WAAW,oCAAqC,SAAQ,YAAY;IACxE,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,oCAAoC,CAAC;IAC9E,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,6CAA6C,CAAC;IAEzD,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,kBAAkB,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAE9D,WAAW,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEvD,WAAW,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEvD,SAAS,EAAE,mBAAmB,CAC5B;QAAC,OAAO,EAAE,WAAW;QAAE,EAAE,EAAE,YAAY;KAAC,EACxC;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IAEF,cAAc,EAAE,mBAAmB,CACjC;QAAC,QAAQ,EAAE,WAAW,EAAE;QAAE,GAAG,EAAE,YAAY,EAAE;KAAC,EAC9C;QAAC,MAAM,EAAE;KAAC,EACV,MAAM,CACP,CAAC;IAEF,IAAI,EAAE,mBAAmB,CACvB;QAAC,OAAO,EAAE,WAAW;QAAE,EAAE,EAAE,YAAY;QAAE,KAAK,EAAE,YAAY;KAAC,EAC7D;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,SAAS,EAAE,mBAAmB,CAC5B;QAAC,OAAO,EAAE,WAAW;QAAE,GAAG,EAAE,YAAY,EAAE;QAAE,MAAM,EAAE,YAAY,EAAE;KAAC,EACnE;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,YAAY,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEvE,aAAa,EAAE,mBAAmB,CAChC;QAAC,IAAI,EAAE,SAAS;QAAE,KAAK,EAAE,YAAY;KAAC,EACtC;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IAEF,kBAAkB,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAE7E,SAAS,EAAE,mBAAmB,CAC5B;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,WAAW;KAAC,EACvC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,OAAO,EAAE,mBAAmB,CAC1B;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,WAAW;KAAC,EACvC;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,UAAU,EAAE,mBAAmB,CAAC,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IAErE,gBAAgB,EAAE,mBAAmB,CACnC;QAAC,OAAO,EAAE,WAAW;QAAE,QAAQ,EAAE,WAAW;KAAC,EAC7C;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,IAAI,EAAE,mBAAmB,CACvB;QAAC,EAAE,EAAE,WAAW;QAAE,EAAE,EAAE,YAAY;QAAE,MAAM,EAAE,YAAY;QAAE,IAAI,EAAE,SAAS;KAAC,EAC1E;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,SAAS,EAAE,mBAAmB,CAC5B;QACE,EAAE,EAAE,WAAW;QACf,GAAG,EAAE,YAAY,EAAE;QACnB,OAAO,EAAE,YAAY,EAAE;QACvB,IAAI,EAAE,SAAS;KAChB,EACD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,KAAK,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IAErD,MAAM,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IAEnD,YAAY,EAAE,mBAAmB,CAC/B;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,WAAW;KAAC,EACvC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,UAAU,EAAE,mBAAmB,CAC7B;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,WAAW;KAAC,EACvC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,qBAAqB,EAAE,mBAAmB,CACxC;QACE,IAAI,EAAE,WAAW;QACjB,EAAE,EAAE,WAAW;QACf,GAAG,EAAE,YAAY,EAAE;QACnB,OAAO,EAAE,YAAY,EAAE;QACvB,IAAI,EAAE,SAAS;KAChB,EACD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,gBAAgB,EAAE,mBAAmB,CACnC;QACE,IAAI,EAAE,WAAW;QACjB,EAAE,EAAE,WAAW;QACf,EAAE,EAAE,YAAY;QAChB,MAAM,EAAE,YAAY;QACpB,IAAI,EAAE,SAAS;KAChB,EACD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,iBAAiB,EAAE,mBAAmB,CACpC;QAAC,QAAQ,EAAE,WAAW;QAAE,QAAQ,EAAE,OAAO;KAAC,EAC1C;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,iBAAiB,EAAE,mBAAmB,CACpC;QAAC,WAAW,EAAE,SAAS;KAAC,EACxB;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,OAAO,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IAEvD,GAAG,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEjE,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,WAAW,CACT,eAAe,EAAE,oBAAoB,GACpC,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC7C,WAAW,CACT,eAAe,EAAE,aAAa,GAC7B,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC7C,WAAW,CACT,eAAe,EAAE,aAAa,GAC7B,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC7C,WAAW,CACT,eAAe,EAAE,WAAW,GAC3B,mBAAmB,CACpB;QAAC,OAAO,EAAE,WAAW;QAAE,EAAE,EAAE,YAAY;KAAC,EACxC;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,gBAAgB,GAChC,mBAAmB,CACpB;QAAC,QAAQ,EAAE,WAAW,EAAE;QAAE,GAAG,EAAE,YAAY,EAAE;KAAC,EAC9C;QAAC,MAAM,EAAE;KAAC,EACV,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,MAAM,GACtB,mBAAmB,CACpB;QAAC,OAAO,EAAE,WAAW;QAAE,EAAE,EAAE,YAAY;QAAE,KAAK,EAAE,YAAY;KAAC,EAC7D;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,WAAW,GAC3B,mBAAmB,CACpB;QAAC,OAAO,EAAE,WAAW;QAAE,GAAG,EAAE,YAAY,EAAE;QAAE,MAAM,EAAE,YAAY,EAAE;KAAC,EACnE;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,cAAc,GAC9B,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC5D,WAAW,CACT,eAAe,EAAE,eAAe,GAC/B,mBAAmB,CACpB;QAAC,IAAI,EAAE,SAAS;QAAE,KAAK,EAAE,YAAY;KAAC,EACtC;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,oBAAoB,GACpC,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC5D,WAAW,CACT,eAAe,EAAE,WAAW,GAC3B,mBAAmB,CACpB;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,WAAW;KAAC,EACvC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,SAAS,GACzB,mBAAmB,CACpB;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,WAAW;KAAC,EACvC;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,YAAY,GAC5B,mBAAmB,CAAC,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IAC5D,WAAW,CACT,eAAe,EAAE,kBAAkB,GAClC,mBAAmB,CACpB;QAAC,OAAO,EAAE,WAAW;QAAE,QAAQ,EAAE,WAAW;KAAC,EAC7C;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,MAAM,GACtB,mBAAmB,CACpB;QAAC,EAAE,EAAE,WAAW;QAAE,EAAE,EAAE,YAAY;QAAE,MAAM,EAAE,YAAY;QAAE,IAAI,EAAE,SAAS;KAAC,EAC1E;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,WAAW,GAC3B,mBAAmB,CACpB;QACE,EAAE,EAAE,WAAW;QACf,GAAG,EAAE,YAAY,EAAE;QACnB,OAAO,EAAE,YAAY,EAAE;QACvB,IAAI,EAAE,SAAS;KAChB,EACD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,OAAO,GACvB,mBAAmB,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IACjD,WAAW,CACT,eAAe,EAAE,QAAQ,GACxB,mBAAmB,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IAC9C,WAAW,CACT,eAAe,EAAE,cAAc,GAC9B,mBAAmB,CACpB;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,WAAW;KAAC,EACvC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,YAAY,GAC5B,mBAAmB,CACpB;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,WAAW;KAAC,EACvC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,uBAAuB,GACvC,mBAAmB,CACpB;QACE,IAAI,EAAE,WAAW;QACjB,EAAE,EAAE,WAAW;QACf,GAAG,EAAE,YAAY,EAAE;QACnB,OAAO,EAAE,YAAY,EAAE;QACvB,IAAI,EAAE,SAAS;KAChB,EACD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,kBAAkB,GAClC,mBAAmB,CACpB;QACE,IAAI,EAAE,WAAW;QACjB,EAAE,EAAE,WAAW;QACf,EAAE,EAAE,YAAY;QAChB,MAAM,EAAE,YAAY;QACpB,IAAI,EAAE,SAAS;KAChB,EACD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,mBAAmB,GACnC,mBAAmB,CACpB;QAAC,QAAQ,EAAE,WAAW;QAAE,QAAQ,EAAE,OAAO;KAAC,EAC1C;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,mBAAmB,GACnC,mBAAmB,CAAC,CAAC,WAAW,EAAE,SAAS,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IACpE,WAAW,CACT,eAAe,EAAE,SAAS,GACzB,mBAAmB,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IACjD,WAAW,CACT,eAAe,EAAE,KAAK,GACrB,mBAAmB,CAAC,CAAC,IAAI,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAE/D,QAAQ,CACN,GAAG,EAAE,gBAAgB,GACpB,kBAAkB,CACnB,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,aAAa,GACjB,kBAAkB,CACnB,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,QAAQ,GACZ,kBAAkB,CACnB,WAAW,CAAC,UAAU,EACtB,WAAW,CAAC,WAAW,EACvB,WAAW,CAAC,YAAY,CACzB,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,kBAAkB,GACtB,kBAAkB,CACnB,qBAAqB,CAAC,UAAU,EAChC,qBAAqB,CAAC,WAAW,EACjC,qBAAqB,CAAC,YAAY,CACnC,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,aAAa,GACjB,kBAAkB,CACnB,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,aAAa,GACjB,kBAAkB,CACnB,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,eAAe,GACnB,kBAAkB,CACnB,kBAAkB,CAAC,UAAU,EAC7B,kBAAkB,CAAC,WAAW,EAC9B,kBAAkB,CAAC,YAAY,CAChC,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,gBAAgB,GACpB,kBAAkB,CACnB,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,KAAK,GACT,kBAAkB,CACnB,QAAQ,CAAC,UAAU,EACnB,QAAQ,CAAC,WAAW,EACpB,QAAQ,CAAC,YAAY,CACtB,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,UAAU,GACd,kBAAkB,CACnB,aAAa,CAAC,UAAU,EACxB,aAAa,CAAC,WAAW,EACzB,aAAa,CAAC,YAAY,CAC3B,CAAC;IAEF,OAAO,EAAE;QACP,sCAAsC,EAAE,kBAAkB,CACxD,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;QACF,cAAc,EAAE,kBAAkB,CAChC,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;QAEF,oBAAoB,EAAE,kBAAkB,CACtC,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QACF,WAAW,EAAE,kBAAkB,CAC7B,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QAEF,iBAAiB,EAAE,kBAAkB,CACnC,WAAW,CAAC,UAAU,EACtB,WAAW,CAAC,WAAW,EACvB,WAAW,CAAC,YAAY,CACzB,CAAC;QACF,MAAM,EAAE,kBAAkB,CACxB,WAAW,CAAC,UAAU,EACtB,WAAW,CAAC,WAAW,EACvB,WAAW,CAAC,YAAY,CACzB,CAAC;QAEF,2CAA2C,EAAE,kBAAkB,CAC7D,qBAAqB,CAAC,UAAU,EAChC,qBAAqB,CAAC,WAAW,EACjC,qBAAqB,CAAC,YAAY,CACnC,CAAC;QACF,gBAAgB,EAAE,kBAAkB,CAClC,qBAAqB,CAAC,UAAU,EAChC,qBAAqB,CAAC,WAAW,EACjC,qBAAqB,CAAC,YAAY,CACnC,CAAC;QAEF,sCAAsC,EAAE,kBAAkB,CACxD,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QACF,WAAW,EAAE,kBAAkB,CAC7B,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QAEF,sCAAsC,EAAE,kBAAkB,CACxD,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QACF,WAAW,EAAE,kBAAkB,CAC7B,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QAEF,4DAA4D,EAAE,kBAAkB,CAC9E,kBAAkB,CAAC,UAAU,EAC7B,kBAAkB,CAAC,WAAW,EAC9B,kBAAkB,CAAC,YAAY,CAChC,CAAC;QACF,aAAa,EAAE,kBAAkB,CAC/B,kBAAkB,CAAC,UAAU,EAC7B,kBAAkB,CAAC,WAAW,EAC9B,kBAAkB,CAAC,YAAY,CAChC,CAAC;QAEF,yDAAyD,EAAE,kBAAkB,CAC3E,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;QACF,cAAc,EAAE,kBAAkB,CAChC,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;QAEF,qBAAqB,EAAE,kBAAkB,CACvC,QAAQ,CAAC,UAAU,EACnB,QAAQ,CAAC,WAAW,EACpB,QAAQ,CAAC,YAAY,CACtB,CAAC;QACF,GAAG,EAAE,kBAAkB,CACrB,QAAQ,CAAC,UAAU,EACnB,QAAQ,CAAC,WAAW,EACpB,QAAQ,CAAC,YAAY,CACtB,CAAC;QAEF,mBAAmB,EAAE,kBAAkB,CACrC,aAAa,CAAC,UAAU,EACxB,aAAa,CAAC,WAAW,EACzB,aAAa,CAAC,YAAY,CAC3B,CAAC;QACF,QAAQ,EAAE,kBAAkB,CAC1B,aAAa,CAAC,UAAU,EACxB,aAAa,CAAC,WAAW,EACzB,aAAa,CAAC,YAAY,CAC3B,CAAC;KACH,CAAC;CACH"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable.js b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/index.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/index.d.ts deleted file mode 100644 index be1a2894..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export type { ERC1155PresetMinterPauserUpgradeable } from "./ERC1155PresetMinterPauserUpgradeable"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/index.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/index.d.ts.map deleted file mode 100644 index ac6d95cd..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,oCAAoC,EAAE,MAAM,wCAAwC,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/index.js b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.d.ts deleted file mode 100644 index db60ef2b..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.d.ts +++ /dev/null @@ -1,130 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; -export interface IERC20UpgradeableInterface extends Interface { - getFunction(nameOrSignature: "allowance" | "approve" | "balanceOf" | "totalSupply" | "transfer" | "transferFrom"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Approval" | "Transfer"): EventFragment; - encodeFunctionData(functionFragment: "allowance", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "totalSupply", values?: undefined): string; - encodeFunctionData(functionFragment: "transfer", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; - decodeFunctionResult(functionFragment: "allowance", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "totalSupply", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transfer", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; -} -export declare namespace ApprovalEvent { - type InputTuple = [ - owner: AddressLike, - spender: AddressLike, - value: BigNumberish - ]; - type OutputTuple = [owner: string, spender: string, value: bigint]; - interface OutputObject { - owner: string; - spender: string; - value: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferEvent { - type InputTuple = [ - from: AddressLike, - to: AddressLike, - value: BigNumberish - ]; - type OutputTuple = [from: string, to: string, value: bigint]; - interface OutputObject { - from: string; - to: string; - value: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface IERC20Upgradeable extends BaseContract { - connect(runner?: ContractRunner | null): IERC20Upgradeable; - waitForDeployment(): Promise; - interface: IERC20UpgradeableInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - allowance: TypedContractMethod<[ - owner: AddressLike, - spender: AddressLike - ], [ - bigint - ], "view">; - approve: TypedContractMethod<[ - spender: AddressLike, - amount: BigNumberish - ], [ - boolean - ], "nonpayable">; - balanceOf: TypedContractMethod<[account: AddressLike], [bigint], "view">; - totalSupply: TypedContractMethod<[], [bigint], "view">; - transfer: TypedContractMethod<[ - to: AddressLike, - amount: BigNumberish - ], [ - boolean - ], "nonpayable">; - transferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - amount: BigNumberish - ], [ - boolean - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "allowance"): TypedContractMethod<[ - owner: AddressLike, - spender: AddressLike - ], [ - bigint - ], "view">; - getFunction(nameOrSignature: "approve"): TypedContractMethod<[ - spender: AddressLike, - amount: BigNumberish - ], [ - boolean - ], "nonpayable">; - getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[account: AddressLike], [bigint], "view">; - getFunction(nameOrSignature: "totalSupply"): TypedContractMethod<[], [bigint], "view">; - getFunction(nameOrSignature: "transfer"): TypedContractMethod<[ - to: AddressLike, - amount: BigNumberish - ], [ - boolean - ], "nonpayable">; - getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - amount: BigNumberish - ], [ - boolean - ], "nonpayable">; - getEvent(key: "Approval"): TypedContractEvent; - getEvent(key: "Transfer"): TypedContractEvent; - filters: { - "Approval(address,address,uint256)": TypedContractEvent; - Approval: TypedContractEvent; - "Transfer(address,address,uint256)": TypedContractEvent; - Transfer: TypedContractEvent; - }; -} -//# sourceMappingURL=IERC20Upgradeable.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.d.ts.map deleted file mode 100644 index f5009fcd..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC20Upgradeable.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.js b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC20/index.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC20/index.d.ts deleted file mode 100644 index 24d7b497..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC20/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export type { IERC20Upgradeable } from "./IERC20Upgradeable"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC20/index.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC20/index.d.ts.map deleted file mode 100644 index 7859ea1f..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC20/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts-upgradeable/token/ERC20/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC20/index.js b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC20/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC20/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.d.ts deleted file mode 100644 index 51ec84ca..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.d.ts +++ /dev/null @@ -1,226 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; -export interface ERC721UpgradeableInterface extends Interface { - getFunction(nameOrSignature: "approve" | "balanceOf" | "getApproved" | "isApprovedForAll" | "name" | "ownerOf" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "setApprovalForAll" | "supportsInterface" | "symbol" | "tokenURI" | "transferFrom"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "Initialized" | "Transfer"): EventFragment; - encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "name", values?: undefined): string; - encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "symbol", values?: undefined): string; - encodeFunctionData(functionFragment: "tokenURI", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; - decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "tokenURI", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; -} -export declare namespace ApprovalEvent { - type InputTuple = [ - owner: AddressLike, - approved: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [owner: string, approved: string, tokenId: bigint]; - interface OutputObject { - owner: string; - approved: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ApprovalForAllEvent { - type InputTuple = [ - owner: AddressLike, - operator: AddressLike, - approved: boolean - ]; - type OutputTuple = [ - owner: string, - operator: string, - approved: boolean - ]; - interface OutputObject { - owner: string; - operator: string; - approved: boolean; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace InitializedEvent { - type InputTuple = [version: BigNumberish]; - type OutputTuple = [version: bigint]; - interface OutputObject { - version: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferEvent { - type InputTuple = [ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [from: string, to: string, tokenId: bigint]; - interface OutputObject { - from: string; - to: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface ERC721Upgradeable extends BaseContract { - connect(runner?: ContractRunner | null): ERC721Upgradeable; - waitForDeployment(): Promise; - interface: ERC721UpgradeableInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - approve: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; - getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - isApprovedForAll: TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - name: TypedContractMethod<[], [string], "view">; - ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - setApprovalForAll: TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - symbol: TypedContractMethod<[], [string], "view">; - tokenURI: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - transferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "approve"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; - getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "symbol"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "tokenURI"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getEvent(key: "Approval"): TypedContractEvent; - getEvent(key: "ApprovalForAll"): TypedContractEvent; - getEvent(key: "Initialized"): TypedContractEvent; - getEvent(key: "Transfer"): TypedContractEvent; - filters: { - "Approval(address,address,uint256)": TypedContractEvent; - Approval: TypedContractEvent; - "ApprovalForAll(address,address,bool)": TypedContractEvent; - ApprovalForAll: TypedContractEvent; - "Initialized(uint8)": TypedContractEvent; - Initialized: TypedContractEvent; - "Transfer(address,address,uint256)": TypedContractEvent; - Transfer: TypedContractEvent; - }; -} -//# sourceMappingURL=ERC721Upgradeable.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.d.ts.map deleted file mode 100644 index f6c8bde0..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ERC721Upgradeable.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.js b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable.d.ts deleted file mode 100644 index 884f1fae..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable.d.ts +++ /dev/null @@ -1,40 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; -export interface IERC721ReceiverUpgradeableInterface extends Interface { - getFunction(nameOrSignature: "onERC721Received"): FunctionFragment; - encodeFunctionData(functionFragment: "onERC721Received", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; - decodeFunctionResult(functionFragment: "onERC721Received", data: BytesLike): Result; -} -export interface IERC721ReceiverUpgradeable extends BaseContract { - connect(runner?: ContractRunner | null): IERC721ReceiverUpgradeable; - waitForDeployment(): Promise; - interface: IERC721ReceiverUpgradeableInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - onERC721Received: TypedContractMethod<[ - operator: AddressLike, - from: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - string - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "onERC721Received"): TypedContractMethod<[ - operator: AddressLike, - from: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - string - ], "nonpayable">; - filters: {}; -} -//# sourceMappingURL=IERC721ReceiverUpgradeable.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable.d.ts.map deleted file mode 100644 index 9ccd2ab9..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC721ReceiverUpgradeable.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable.js b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable.d.ts deleted file mode 100644 index aedca8fa..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable.d.ts +++ /dev/null @@ -1,200 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; -export interface IERC721UpgradeableInterface extends Interface { - getFunction(nameOrSignature: "approve" | "balanceOf" | "getApproved" | "isApprovedForAll" | "ownerOf" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "setApprovalForAll" | "supportsInterface" | "transferFrom"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "Transfer"): EventFragment; - encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; - decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; -} -export declare namespace ApprovalEvent { - type InputTuple = [ - owner: AddressLike, - approved: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [owner: string, approved: string, tokenId: bigint]; - interface OutputObject { - owner: string; - approved: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ApprovalForAllEvent { - type InputTuple = [ - owner: AddressLike, - operator: AddressLike, - approved: boolean - ]; - type OutputTuple = [ - owner: string, - operator: string, - approved: boolean - ]; - interface OutputObject { - owner: string; - operator: string; - approved: boolean; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferEvent { - type InputTuple = [ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [from: string, to: string, tokenId: bigint]; - interface OutputObject { - from: string; - to: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface IERC721Upgradeable extends BaseContract { - connect(runner?: ContractRunner | null): IERC721Upgradeable; - waitForDeployment(): Promise; - interface: IERC721UpgradeableInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - approve: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; - getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - isApprovedForAll: TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - setApprovalForAll: TypedContractMethod<[ - operator: AddressLike, - _approved: boolean - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - transferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "approve"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; - getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ - operator: AddressLike, - _approved: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getEvent(key: "Approval"): TypedContractEvent; - getEvent(key: "ApprovalForAll"): TypedContractEvent; - getEvent(key: "Transfer"): TypedContractEvent; - filters: { - "Approval(address,address,uint256)": TypedContractEvent; - Approval: TypedContractEvent; - "ApprovalForAll(address,address,bool)": TypedContractEvent; - ApprovalForAll: TypedContractEvent; - "Transfer(address,address,uint256)": TypedContractEvent; - Transfer: TypedContractEvent; - }; -} -//# sourceMappingURL=IERC721Upgradeable.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable.d.ts.map deleted file mode 100644 index bdacef5a..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC721Upgradeable.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable.js b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable.d.ts deleted file mode 100644 index 238d4413..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable.d.ts +++ /dev/null @@ -1,212 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; -export interface IERC721MetadataUpgradeableInterface extends Interface { - getFunction(nameOrSignature: "approve" | "balanceOf" | "getApproved" | "isApprovedForAll" | "name" | "ownerOf" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "setApprovalForAll" | "supportsInterface" | "symbol" | "tokenURI" | "transferFrom"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "Transfer"): EventFragment; - encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "name", values?: undefined): string; - encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "symbol", values?: undefined): string; - encodeFunctionData(functionFragment: "tokenURI", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; - decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "tokenURI", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; -} -export declare namespace ApprovalEvent { - type InputTuple = [ - owner: AddressLike, - approved: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [owner: string, approved: string, tokenId: bigint]; - interface OutputObject { - owner: string; - approved: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ApprovalForAllEvent { - type InputTuple = [ - owner: AddressLike, - operator: AddressLike, - approved: boolean - ]; - type OutputTuple = [ - owner: string, - operator: string, - approved: boolean - ]; - interface OutputObject { - owner: string; - operator: string; - approved: boolean; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferEvent { - type InputTuple = [ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [from: string, to: string, tokenId: bigint]; - interface OutputObject { - from: string; - to: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface IERC721MetadataUpgradeable extends BaseContract { - connect(runner?: ContractRunner | null): IERC721MetadataUpgradeable; - waitForDeployment(): Promise; - interface: IERC721MetadataUpgradeableInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - approve: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; - getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - isApprovedForAll: TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - name: TypedContractMethod<[], [string], "view">; - ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - setApprovalForAll: TypedContractMethod<[ - operator: AddressLike, - _approved: boolean - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - symbol: TypedContractMethod<[], [string], "view">; - tokenURI: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - transferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "approve"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; - getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ - operator: AddressLike, - _approved: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "symbol"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "tokenURI"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getEvent(key: "Approval"): TypedContractEvent; - getEvent(key: "ApprovalForAll"): TypedContractEvent; - getEvent(key: "Transfer"): TypedContractEvent; - filters: { - "Approval(address,address,uint256)": TypedContractEvent; - Approval: TypedContractEvent; - "ApprovalForAll(address,address,bool)": TypedContractEvent; - ApprovalForAll: TypedContractEvent; - "Transfer(address,address,uint256)": TypedContractEvent; - Transfer: TypedContractEvent; - }; -} -//# sourceMappingURL=IERC721MetadataUpgradeable.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable.d.ts.map deleted file mode 100644 index b2324904..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC721MetadataUpgradeable.d.ts","sourceRoot":"","sources":["../../../../../../../types/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable.js b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/index.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/index.d.ts deleted file mode 100644 index ed831077..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export type { IERC721MetadataUpgradeable } from "./IERC721MetadataUpgradeable"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/index.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/index.d.ts.map deleted file mode 100644 index 2f979bec..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/index.js b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/index.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/index.d.ts deleted file mode 100644 index d7eaaeb3..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/index.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -import type * as extensions from "./extensions"; -export type { extensions }; -export type { ERC721Upgradeable } from "./ERC721Upgradeable"; -export type { IERC721ReceiverUpgradeable } from "./IERC721ReceiverUpgradeable"; -export type { IERC721Upgradeable } from "./IERC721Upgradeable"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/index.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/index.d.ts.map deleted file mode 100644 index 6d14789a..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts-upgradeable/token/ERC721/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,UAAU,MAAM,cAAc,CAAC;AAChD,YAAY,EAAE,UAAU,EAAE,CAAC;AAC3B,YAAY,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,YAAY,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC/E,YAAY,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/index.js b/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/index.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/token/index.d.ts deleted file mode 100644 index e0f93091..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/index.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import type * as erc1155 from "./ERC1155"; -export type { erc1155 }; -import type * as erc20 from "./ERC20"; -export type { erc20 }; -import type * as erc721 from "./ERC721"; -export type { erc721 }; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/index.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/token/index.d.ts.map deleted file mode 100644 index ffbe1f7c..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/@openzeppelin/contracts-upgradeable/token/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,OAAO,MAAM,WAAW,CAAC;AAC1C,YAAY,EAAE,OAAO,EAAE,CAAC;AACxB,OAAO,KAAK,KAAK,KAAK,MAAM,SAAS,CAAC;AACtC,YAAY,EAAE,KAAK,EAAE,CAAC;AACtB,OAAO,KAAK,KAAK,MAAM,MAAM,UAAU,CAAC;AACxC,YAAY,EAAE,MAAM,EAAE,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/token/index.js b/dist/types/@openzeppelin/contracts-upgradeable/token/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/token/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.d.ts deleted file mode 100644 index b7a60eee..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.d.ts +++ /dev/null @@ -1,37 +0,0 @@ -import type { BaseContract, BigNumberish, FunctionFragment, Interface, EventFragment, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener } from "../../../common"; -export interface ContextUpgradeableInterface extends Interface { - getEvent(nameOrSignatureOrTopic: "Initialized"): EventFragment; -} -export declare namespace InitializedEvent { - type InputTuple = [version: BigNumberish]; - type OutputTuple = [version: bigint]; - interface OutputObject { - version: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface ContextUpgradeable extends BaseContract { - connect(runner?: ContractRunner | null): ContextUpgradeable; - waitForDeployment(): Promise; - interface: ContextUpgradeableInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - getFunction(key: string | FunctionFragment): T; - getEvent(key: "Initialized"): TypedContractEvent; - filters: { - "Initialized(uint8)": TypedContractEvent; - Initialized: TypedContractEvent; - }; -} -//# sourceMappingURL=ContextUpgradeable.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.d.ts.map deleted file mode 100644 index 823e75e3..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ContextUpgradeable.d.ts","sourceRoot":"","sources":["../../../../../types/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.js b/dist/types/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable.d.ts deleted file mode 100644 index 53c59ca7..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable.d.ts +++ /dev/null @@ -1,42 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../common"; -export interface MulticallUpgradeableInterface extends Interface { - getFunction(nameOrSignature: "multicall"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Initialized"): EventFragment; - encodeFunctionData(functionFragment: "multicall", values: [BytesLike[]]): string; - decodeFunctionResult(functionFragment: "multicall", data: BytesLike): Result; -} -export declare namespace InitializedEvent { - type InputTuple = [version: BigNumberish]; - type OutputTuple = [version: bigint]; - interface OutputObject { - version: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface MulticallUpgradeable extends BaseContract { - connect(runner?: ContractRunner | null): MulticallUpgradeable; - waitForDeployment(): Promise; - interface: MulticallUpgradeableInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - multicall: TypedContractMethod<[data: BytesLike[]], [string[]], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "multicall"): TypedContractMethod<[data: BytesLike[]], [string[]], "nonpayable">; - getEvent(key: "Initialized"): TypedContractEvent; - filters: { - "Initialized(uint8)": TypedContractEvent; - Initialized: TypedContractEvent; - }; -} -//# sourceMappingURL=MulticallUpgradeable.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable.d.ts.map deleted file mode 100644 index 4035351b..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"MulticallUpgradeable.d.ts","sourceRoot":"","sources":["../../../../../types/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable.js b/dist/types/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/utils/index.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/utils/index.d.ts deleted file mode 100644 index 82e4fb18..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/utils/index.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import type * as introspection from "./introspection"; -export type { introspection }; -export type { ContextUpgradeable } from "./ContextUpgradeable"; -export type { MulticallUpgradeable } from "./MulticallUpgradeable"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/utils/index.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/utils/index.d.ts.map deleted file mode 100644 index 0a4edb22..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/utils/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/@openzeppelin/contracts-upgradeable/utils/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,aAAa,MAAM,iBAAiB,CAAC;AACtD,YAAY,EAAE,aAAa,EAAE,CAAC;AAC9B,YAAY,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,YAAY,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/utils/index.js b/dist/types/@openzeppelin/contracts-upgradeable/utils/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/utils/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.d.ts deleted file mode 100644 index c4a953e0..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.d.ts +++ /dev/null @@ -1,46 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; -export interface ERC165UpgradeableInterface extends Interface { - getFunction(nameOrSignature: "supportsInterface"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Initialized"): EventFragment; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; -} -export declare namespace InitializedEvent { - type InputTuple = [version: BigNumberish]; - type OutputTuple = [version: bigint]; - interface OutputObject { - version: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface ERC165Upgradeable extends BaseContract { - connect(runner?: ContractRunner | null): ERC165Upgradeable; - waitForDeployment(): Promise; - interface: ERC165UpgradeableInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - getEvent(key: "Initialized"): TypedContractEvent; - filters: { - "Initialized(uint8)": TypedContractEvent; - Initialized: TypedContractEvent; - }; -} -//# sourceMappingURL=ERC165Upgradeable.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.d.ts.map deleted file mode 100644 index 0e2cb6f8..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ERC165Upgradeable.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.js b/dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable.d.ts deleted file mode 100644 index 04339a18..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable.d.ts +++ /dev/null @@ -1,30 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; -export interface IERC165UpgradeableInterface extends Interface { - getFunction(nameOrSignature: "supportsInterface"): FunctionFragment; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; -} -export interface IERC165Upgradeable extends BaseContract { - connect(runner?: ContractRunner | null): IERC165Upgradeable; - waitForDeployment(): Promise; - interface: IERC165UpgradeableInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - filters: {}; -} -//# sourceMappingURL=IERC165Upgradeable.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable.d.ts.map deleted file mode 100644 index e1af2d53..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC165Upgradeable.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable.js b/dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/index.d.ts b/dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/index.d.ts deleted file mode 100644 index 7fc600ff..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export type { ERC165Upgradeable } from "./ERC165Upgradeable"; -export type { IERC165Upgradeable } from "./IERC165Upgradeable"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/index.d.ts.map b/dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/index.d.ts.map deleted file mode 100644 index 451f0f2a..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts-upgradeable/utils/introspection/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,YAAY,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/index.js b/dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts/access/Ownable.d.ts b/dist/types/@openzeppelin/contracts/access/Ownable.d.ts deleted file mode 100644 index 0ae303be..00000000 --- a/dist/types/@openzeppelin/contracts/access/Ownable.d.ts +++ /dev/null @@ -1,55 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../common"; -export interface OwnableInterface extends Interface { - getFunction(nameOrSignature: "owner" | "renounceOwnership" | "transferOwnership"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "OwnershipTransferred"): EventFragment; - encodeFunctionData(functionFragment: "owner", values?: undefined): string; - encodeFunctionData(functionFragment: "renounceOwnership", values?: undefined): string; - encodeFunctionData(functionFragment: "transferOwnership", values: [AddressLike]): string; - decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceOwnership", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result; -} -export declare namespace OwnershipTransferredEvent { - type InputTuple = [previousOwner: AddressLike, newOwner: AddressLike]; - type OutputTuple = [previousOwner: string, newOwner: string]; - interface OutputObject { - previousOwner: string; - newOwner: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface Ownable extends BaseContract { - connect(runner?: ContractRunner | null): Ownable; - waitForDeployment(): Promise; - interface: OwnableInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - owner: TypedContractMethod<[], [string], "view">; - renounceOwnership: TypedContractMethod<[], [void], "nonpayable">; - transferOwnership: TypedContractMethod<[ - newOwner: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "owner"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "renounceOwnership"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "transferOwnership"): TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">; - getEvent(key: "OwnershipTransferred"): TypedContractEvent; - filters: { - "OwnershipTransferred(address,address)": TypedContractEvent; - OwnershipTransferred: TypedContractEvent; - }; -} -//# sourceMappingURL=Ownable.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/access/Ownable.d.ts.map b/dist/types/@openzeppelin/contracts/access/Ownable.d.ts.map deleted file mode 100644 index d1154952..00000000 --- a/dist/types/@openzeppelin/contracts/access/Ownable.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Ownable.d.ts","sourceRoot":"","sources":["../../../../../types/@openzeppelin/contracts/access/Ownable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/access/Ownable.js b/dist/types/@openzeppelin/contracts/access/Ownable.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts/access/Ownable.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts/access/index.d.ts b/dist/types/@openzeppelin/contracts/access/index.d.ts deleted file mode 100644 index a577bedd..00000000 --- a/dist/types/@openzeppelin/contracts/access/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export type { Ownable } from "./Ownable"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/access/index.d.ts.map b/dist/types/@openzeppelin/contracts/access/index.d.ts.map deleted file mode 100644 index 3fa3e022..00000000 --- a/dist/types/@openzeppelin/contracts/access/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/@openzeppelin/contracts/access/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/access/index.js b/dist/types/@openzeppelin/contracts/access/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts/access/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts/index.d.ts b/dist/types/@openzeppelin/contracts/index.d.ts deleted file mode 100644 index c8b6ee79..00000000 --- a/dist/types/@openzeppelin/contracts/index.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import type * as access from "./access"; -export type { access }; -import type * as token from "./token"; -export type { token }; -import type * as utils from "./utils"; -export type { utils }; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/index.d.ts.map b/dist/types/@openzeppelin/contracts/index.d.ts.map deleted file mode 100644 index f185372d..00000000 --- a/dist/types/@openzeppelin/contracts/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../types/@openzeppelin/contracts/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,MAAM,MAAM,UAAU,CAAC;AACxC,YAAY,EAAE,MAAM,EAAE,CAAC;AACvB,OAAO,KAAK,KAAK,KAAK,MAAM,SAAS,CAAC;AACtC,YAAY,EAAE,KAAK,EAAE,CAAC;AACtB,OAAO,KAAK,KAAK,KAAK,MAAM,SAAS,CAAC;AACtC,YAAY,EAAE,KAAK,EAAE,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/index.js b/dist/types/@openzeppelin/contracts/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts/token/ERC1155/IERC1155.d.ts b/dist/types/@openzeppelin/contracts/token/ERC1155/IERC1155.d.ts deleted file mode 100644 index 45a1bf5a..00000000 --- a/dist/types/@openzeppelin/contracts/token/ERC1155/IERC1155.d.ts +++ /dev/null @@ -1,233 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; -export interface IERC1155Interface extends Interface { - getFunction(nameOrSignature: "balanceOf" | "balanceOfBatch" | "isApprovedForAll" | "safeBatchTransferFrom" | "safeTransferFrom" | "setApprovalForAll" | "supportsInterface"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "ApprovalForAll" | "TransferBatch" | "TransferSingle" | "URI"): EventFragment; - encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "balanceOfBatch", values: [AddressLike[], BigNumberish[]]): string; - encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "safeBatchTransferFrom", values: [ - AddressLike, - AddressLike, - BigNumberish[], - BigNumberish[], - BytesLike - ]): string; - encodeFunctionData(functionFragment: "safeTransferFrom", values: [AddressLike, AddressLike, BigNumberish, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOfBatch", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeBatchTransferFrom", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; -} -export declare namespace ApprovalForAllEvent { - type InputTuple = [ - account: AddressLike, - operator: AddressLike, - approved: boolean - ]; - type OutputTuple = [ - account: string, - operator: string, - approved: boolean - ]; - interface OutputObject { - account: string; - operator: string; - approved: boolean; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferBatchEvent { - type InputTuple = [ - operator: AddressLike, - from: AddressLike, - to: AddressLike, - ids: BigNumberish[], - values: BigNumberish[] - ]; - type OutputTuple = [ - operator: string, - from: string, - to: string, - ids: bigint[], - values: bigint[] - ]; - interface OutputObject { - operator: string; - from: string; - to: string; - ids: bigint[]; - values: bigint[]; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferSingleEvent { - type InputTuple = [ - operator: AddressLike, - from: AddressLike, - to: AddressLike, - id: BigNumberish, - value: BigNumberish - ]; - type OutputTuple = [ - operator: string, - from: string, - to: string, - id: bigint, - value: bigint - ]; - interface OutputObject { - operator: string; - from: string; - to: string; - id: bigint; - value: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace URIEvent { - type InputTuple = [value: string, id: BigNumberish]; - type OutputTuple = [value: string, id: bigint]; - interface OutputObject { - value: string; - id: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface IERC1155 extends BaseContract { - connect(runner?: ContractRunner | null): IERC1155; - waitForDeployment(): Promise; - interface: IERC1155Interface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - balanceOf: TypedContractMethod<[ - account: AddressLike, - id: BigNumberish - ], [ - bigint - ], "view">; - balanceOfBatch: TypedContractMethod<[ - accounts: AddressLike[], - ids: BigNumberish[] - ], [ - bigint[] - ], "view">; - isApprovedForAll: TypedContractMethod<[ - account: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - safeBatchTransferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - ids: BigNumberish[], - amounts: BigNumberish[], - data: BytesLike - ], [ - void - ], "nonpayable">; - safeTransferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - id: BigNumberish, - amount: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - setApprovalForAll: TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[ - account: AddressLike, - id: BigNumberish - ], [ - bigint - ], "view">; - getFunction(nameOrSignature: "balanceOfBatch"): TypedContractMethod<[ - accounts: AddressLike[], - ids: BigNumberish[] - ], [ - bigint[] - ], "view">; - getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ - account: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "safeBatchTransferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - ids: BigNumberish[], - amounts: BigNumberish[], - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - id: BigNumberish, - amount: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - getEvent(key: "ApprovalForAll"): TypedContractEvent; - getEvent(key: "TransferBatch"): TypedContractEvent; - getEvent(key: "TransferSingle"): TypedContractEvent; - getEvent(key: "URI"): TypedContractEvent; - filters: { - "ApprovalForAll(address,address,bool)": TypedContractEvent; - ApprovalForAll: TypedContractEvent; - "TransferBatch(address,address,address,uint256[],uint256[])": TypedContractEvent; - TransferBatch: TypedContractEvent; - "TransferSingle(address,address,address,uint256,uint256)": TypedContractEvent; - TransferSingle: TypedContractEvent; - "URI(string,uint256)": TypedContractEvent; - URI: TypedContractEvent; - }; -} -//# sourceMappingURL=IERC1155.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC1155/IERC1155.d.ts.map b/dist/types/@openzeppelin/contracts/token/ERC1155/IERC1155.d.ts.map deleted file mode 100644 index b5a97146..00000000 --- a/dist/types/@openzeppelin/contracts/token/ERC1155/IERC1155.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC1155.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts/token/ERC1155/IERC1155.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC1155/IERC1155.js b/dist/types/@openzeppelin/contracts/token/ERC1155/IERC1155.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts/token/ERC1155/IERC1155.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.d.ts b/dist/types/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.d.ts deleted file mode 100644 index 78093735..00000000 --- a/dist/types/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.d.ts +++ /dev/null @@ -1,76 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; -export interface IERC1155ReceiverInterface extends Interface { - getFunction(nameOrSignature: "onERC1155BatchReceived" | "onERC1155Received" | "supportsInterface"): FunctionFragment; - encodeFunctionData(functionFragment: "onERC1155BatchReceived", values: [ - AddressLike, - AddressLike, - BigNumberish[], - BigNumberish[], - BytesLike - ]): string; - encodeFunctionData(functionFragment: "onERC1155Received", values: [AddressLike, AddressLike, BigNumberish, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - decodeFunctionResult(functionFragment: "onERC1155BatchReceived", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "onERC1155Received", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; -} -export interface IERC1155Receiver extends BaseContract { - connect(runner?: ContractRunner | null): IERC1155Receiver; - waitForDeployment(): Promise; - interface: IERC1155ReceiverInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - onERC1155BatchReceived: TypedContractMethod<[ - operator: AddressLike, - from: AddressLike, - ids: BigNumberish[], - values: BigNumberish[], - data: BytesLike - ], [ - string - ], "nonpayable">; - onERC1155Received: TypedContractMethod<[ - operator: AddressLike, - from: AddressLike, - id: BigNumberish, - value: BigNumberish, - data: BytesLike - ], [ - string - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "onERC1155BatchReceived"): TypedContractMethod<[ - operator: AddressLike, - from: AddressLike, - ids: BigNumberish[], - values: BigNumberish[], - data: BytesLike - ], [ - string - ], "nonpayable">; - getFunction(nameOrSignature: "onERC1155Received"): TypedContractMethod<[ - operator: AddressLike, - from: AddressLike, - id: BigNumberish, - value: BigNumberish, - data: BytesLike - ], [ - string - ], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - filters: {}; -} -//# sourceMappingURL=IERC1155Receiver.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.d.ts.map b/dist/types/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.d.ts.map deleted file mode 100644 index 384ba56d..00000000 --- a/dist/types/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC1155Receiver.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.js b/dist/types/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI.d.ts b/dist/types/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI.d.ts deleted file mode 100644 index 09fc11f8..00000000 --- a/dist/types/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI.d.ts +++ /dev/null @@ -1,237 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; -export interface IERC1155MetadataURIInterface extends Interface { - getFunction(nameOrSignature: "balanceOf" | "balanceOfBatch" | "isApprovedForAll" | "safeBatchTransferFrom" | "safeTransferFrom" | "setApprovalForAll" | "supportsInterface" | "uri"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "ApprovalForAll" | "TransferBatch" | "TransferSingle" | "URI"): EventFragment; - encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "balanceOfBatch", values: [AddressLike[], BigNumberish[]]): string; - encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "safeBatchTransferFrom", values: [ - AddressLike, - AddressLike, - BigNumberish[], - BigNumberish[], - BytesLike - ]): string; - encodeFunctionData(functionFragment: "safeTransferFrom", values: [AddressLike, AddressLike, BigNumberish, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "uri", values: [BigNumberish]): string; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOfBatch", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeBatchTransferFrom", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "uri", data: BytesLike): Result; -} -export declare namespace ApprovalForAllEvent { - type InputTuple = [ - account: AddressLike, - operator: AddressLike, - approved: boolean - ]; - type OutputTuple = [ - account: string, - operator: string, - approved: boolean - ]; - interface OutputObject { - account: string; - operator: string; - approved: boolean; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferBatchEvent { - type InputTuple = [ - operator: AddressLike, - from: AddressLike, - to: AddressLike, - ids: BigNumberish[], - values: BigNumberish[] - ]; - type OutputTuple = [ - operator: string, - from: string, - to: string, - ids: bigint[], - values: bigint[] - ]; - interface OutputObject { - operator: string; - from: string; - to: string; - ids: bigint[]; - values: bigint[]; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferSingleEvent { - type InputTuple = [ - operator: AddressLike, - from: AddressLike, - to: AddressLike, - id: BigNumberish, - value: BigNumberish - ]; - type OutputTuple = [ - operator: string, - from: string, - to: string, - id: bigint, - value: bigint - ]; - interface OutputObject { - operator: string; - from: string; - to: string; - id: bigint; - value: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace URIEvent { - type InputTuple = [value: string, id: BigNumberish]; - type OutputTuple = [value: string, id: bigint]; - interface OutputObject { - value: string; - id: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface IERC1155MetadataURI extends BaseContract { - connect(runner?: ContractRunner | null): IERC1155MetadataURI; - waitForDeployment(): Promise; - interface: IERC1155MetadataURIInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - balanceOf: TypedContractMethod<[ - account: AddressLike, - id: BigNumberish - ], [ - bigint - ], "view">; - balanceOfBatch: TypedContractMethod<[ - accounts: AddressLike[], - ids: BigNumberish[] - ], [ - bigint[] - ], "view">; - isApprovedForAll: TypedContractMethod<[ - account: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - safeBatchTransferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - ids: BigNumberish[], - amounts: BigNumberish[], - data: BytesLike - ], [ - void - ], "nonpayable">; - safeTransferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - id: BigNumberish, - amount: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - setApprovalForAll: TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - uri: TypedContractMethod<[id: BigNumberish], [string], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[ - account: AddressLike, - id: BigNumberish - ], [ - bigint - ], "view">; - getFunction(nameOrSignature: "balanceOfBatch"): TypedContractMethod<[ - accounts: AddressLike[], - ids: BigNumberish[] - ], [ - bigint[] - ], "view">; - getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ - account: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "safeBatchTransferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - ids: BigNumberish[], - amounts: BigNumberish[], - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - id: BigNumberish, - amount: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "uri"): TypedContractMethod<[id: BigNumberish], [string], "view">; - getEvent(key: "ApprovalForAll"): TypedContractEvent; - getEvent(key: "TransferBatch"): TypedContractEvent; - getEvent(key: "TransferSingle"): TypedContractEvent; - getEvent(key: "URI"): TypedContractEvent; - filters: { - "ApprovalForAll(address,address,bool)": TypedContractEvent; - ApprovalForAll: TypedContractEvent; - "TransferBatch(address,address,address,uint256[],uint256[])": TypedContractEvent; - TransferBatch: TypedContractEvent; - "TransferSingle(address,address,address,uint256,uint256)": TypedContractEvent; - TransferSingle: TypedContractEvent; - "URI(string,uint256)": TypedContractEvent; - URI: TypedContractEvent; - }; -} -//# sourceMappingURL=IERC1155MetadataURI.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI.d.ts.map b/dist/types/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI.d.ts.map deleted file mode 100644 index e0f52004..00000000 --- a/dist/types/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC1155MetadataURI.d.ts","sourceRoot":"","sources":["../../../../../../../types/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI.js b/dist/types/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts/token/ERC1155/extensions/index.d.ts b/dist/types/@openzeppelin/contracts/token/ERC1155/extensions/index.d.ts deleted file mode 100644 index 10e8fafd..00000000 --- a/dist/types/@openzeppelin/contracts/token/ERC1155/extensions/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export type { IERC1155MetadataURI } from "./IERC1155MetadataURI"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC1155/extensions/index.d.ts.map b/dist/types/@openzeppelin/contracts/token/ERC1155/extensions/index.d.ts.map deleted file mode 100644 index 6d5284c7..00000000 --- a/dist/types/@openzeppelin/contracts/token/ERC1155/extensions/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/@openzeppelin/contracts/token/ERC1155/extensions/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC1155/extensions/index.js b/dist/types/@openzeppelin/contracts/token/ERC1155/extensions/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts/token/ERC1155/extensions/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts/token/ERC1155/index.d.ts b/dist/types/@openzeppelin/contracts/token/ERC1155/index.d.ts deleted file mode 100644 index d0865f8a..00000000 --- a/dist/types/@openzeppelin/contracts/token/ERC1155/index.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import type * as extensions from "./extensions"; -export type { extensions }; -export type { IERC1155 } from "./IERC1155"; -export type { IERC1155Receiver } from "./IERC1155Receiver"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC1155/index.d.ts.map b/dist/types/@openzeppelin/contracts/token/ERC1155/index.d.ts.map deleted file mode 100644 index 6fe18b5c..00000000 --- a/dist/types/@openzeppelin/contracts/token/ERC1155/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts/token/ERC1155/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,UAAU,MAAM,cAAc,CAAC;AAChD,YAAY,EAAE,UAAU,EAAE,CAAC;AAC3B,YAAY,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC1155/index.js b/dist/types/@openzeppelin/contracts/token/ERC1155/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts/token/ERC1155/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts/token/ERC20/ERC20.d.ts b/dist/types/@openzeppelin/contracts/token/ERC20/ERC20.d.ts deleted file mode 100644 index 610a0ad4..00000000 --- a/dist/types/@openzeppelin/contracts/token/ERC20/ERC20.d.ts +++ /dev/null @@ -1,170 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; -export interface ERC20Interface extends Interface { - getFunction(nameOrSignature: "allowance" | "approve" | "balanceOf" | "decimals" | "decreaseAllowance" | "increaseAllowance" | "name" | "symbol" | "totalSupply" | "transfer" | "transferFrom"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Approval" | "Transfer"): EventFragment; - encodeFunctionData(functionFragment: "allowance", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "decimals", values?: undefined): string; - encodeFunctionData(functionFragment: "decreaseAllowance", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "increaseAllowance", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "name", values?: undefined): string; - encodeFunctionData(functionFragment: "symbol", values?: undefined): string; - encodeFunctionData(functionFragment: "totalSupply", values?: undefined): string; - encodeFunctionData(functionFragment: "transfer", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; - decodeFunctionResult(functionFragment: "allowance", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "decimals", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "decreaseAllowance", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "increaseAllowance", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "totalSupply", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transfer", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; -} -export declare namespace ApprovalEvent { - type InputTuple = [ - owner: AddressLike, - spender: AddressLike, - value: BigNumberish - ]; - type OutputTuple = [owner: string, spender: string, value: bigint]; - interface OutputObject { - owner: string; - spender: string; - value: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferEvent { - type InputTuple = [ - from: AddressLike, - to: AddressLike, - value: BigNumberish - ]; - type OutputTuple = [from: string, to: string, value: bigint]; - interface OutputObject { - from: string; - to: string; - value: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface ERC20 extends BaseContract { - connect(runner?: ContractRunner | null): ERC20; - waitForDeployment(): Promise; - interface: ERC20Interface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - allowance: TypedContractMethod<[ - owner: AddressLike, - spender: AddressLike - ], [ - bigint - ], "view">; - approve: TypedContractMethod<[ - spender: AddressLike, - amount: BigNumberish - ], [ - boolean - ], "nonpayable">; - balanceOf: TypedContractMethod<[account: AddressLike], [bigint], "view">; - decimals: TypedContractMethod<[], [bigint], "view">; - decreaseAllowance: TypedContractMethod<[ - spender: AddressLike, - subtractedValue: BigNumberish - ], [ - boolean - ], "nonpayable">; - increaseAllowance: TypedContractMethod<[ - spender: AddressLike, - addedValue: BigNumberish - ], [ - boolean - ], "nonpayable">; - name: TypedContractMethod<[], [string], "view">; - symbol: TypedContractMethod<[], [string], "view">; - totalSupply: TypedContractMethod<[], [bigint], "view">; - transfer: TypedContractMethod<[ - to: AddressLike, - amount: BigNumberish - ], [ - boolean - ], "nonpayable">; - transferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - amount: BigNumberish - ], [ - boolean - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "allowance"): TypedContractMethod<[ - owner: AddressLike, - spender: AddressLike - ], [ - bigint - ], "view">; - getFunction(nameOrSignature: "approve"): TypedContractMethod<[ - spender: AddressLike, - amount: BigNumberish - ], [ - boolean - ], "nonpayable">; - getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[account: AddressLike], [bigint], "view">; - getFunction(nameOrSignature: "decimals"): TypedContractMethod<[], [bigint], "view">; - getFunction(nameOrSignature: "decreaseAllowance"): TypedContractMethod<[ - spender: AddressLike, - subtractedValue: BigNumberish - ], [ - boolean - ], "nonpayable">; - getFunction(nameOrSignature: "increaseAllowance"): TypedContractMethod<[ - spender: AddressLike, - addedValue: BigNumberish - ], [ - boolean - ], "nonpayable">; - getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "symbol"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "totalSupply"): TypedContractMethod<[], [bigint], "view">; - getFunction(nameOrSignature: "transfer"): TypedContractMethod<[ - to: AddressLike, - amount: BigNumberish - ], [ - boolean - ], "nonpayable">; - getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - amount: BigNumberish - ], [ - boolean - ], "nonpayable">; - getEvent(key: "Approval"): TypedContractEvent; - getEvent(key: "Transfer"): TypedContractEvent; - filters: { - "Approval(address,address,uint256)": TypedContractEvent; - Approval: TypedContractEvent; - "Transfer(address,address,uint256)": TypedContractEvent; - Transfer: TypedContractEvent; - }; -} -//# sourceMappingURL=ERC20.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC20/ERC20.d.ts.map b/dist/types/@openzeppelin/contracts/token/ERC20/ERC20.d.ts.map deleted file mode 100644 index 655ef547..00000000 --- a/dist/types/@openzeppelin/contracts/token/ERC20/ERC20.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ERC20.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts/token/ERC20/ERC20.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC20/ERC20.js b/dist/types/@openzeppelin/contracts/token/ERC20/ERC20.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts/token/ERC20/ERC20.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts/token/ERC20/IERC20.d.ts b/dist/types/@openzeppelin/contracts/token/ERC20/IERC20.d.ts deleted file mode 100644 index 53ad3dd5..00000000 --- a/dist/types/@openzeppelin/contracts/token/ERC20/IERC20.d.ts +++ /dev/null @@ -1,130 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; -export interface IERC20Interface extends Interface { - getFunction(nameOrSignature: "allowance" | "approve" | "balanceOf" | "totalSupply" | "transfer" | "transferFrom"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Approval" | "Transfer"): EventFragment; - encodeFunctionData(functionFragment: "allowance", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "totalSupply", values?: undefined): string; - encodeFunctionData(functionFragment: "transfer", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; - decodeFunctionResult(functionFragment: "allowance", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "totalSupply", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transfer", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; -} -export declare namespace ApprovalEvent { - type InputTuple = [ - owner: AddressLike, - spender: AddressLike, - value: BigNumberish - ]; - type OutputTuple = [owner: string, spender: string, value: bigint]; - interface OutputObject { - owner: string; - spender: string; - value: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferEvent { - type InputTuple = [ - from: AddressLike, - to: AddressLike, - value: BigNumberish - ]; - type OutputTuple = [from: string, to: string, value: bigint]; - interface OutputObject { - from: string; - to: string; - value: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface IERC20 extends BaseContract { - connect(runner?: ContractRunner | null): IERC20; - waitForDeployment(): Promise; - interface: IERC20Interface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - allowance: TypedContractMethod<[ - owner: AddressLike, - spender: AddressLike - ], [ - bigint - ], "view">; - approve: TypedContractMethod<[ - spender: AddressLike, - amount: BigNumberish - ], [ - boolean - ], "nonpayable">; - balanceOf: TypedContractMethod<[account: AddressLike], [bigint], "view">; - totalSupply: TypedContractMethod<[], [bigint], "view">; - transfer: TypedContractMethod<[ - to: AddressLike, - amount: BigNumberish - ], [ - boolean - ], "nonpayable">; - transferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - amount: BigNumberish - ], [ - boolean - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "allowance"): TypedContractMethod<[ - owner: AddressLike, - spender: AddressLike - ], [ - bigint - ], "view">; - getFunction(nameOrSignature: "approve"): TypedContractMethod<[ - spender: AddressLike, - amount: BigNumberish - ], [ - boolean - ], "nonpayable">; - getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[account: AddressLike], [bigint], "view">; - getFunction(nameOrSignature: "totalSupply"): TypedContractMethod<[], [bigint], "view">; - getFunction(nameOrSignature: "transfer"): TypedContractMethod<[ - to: AddressLike, - amount: BigNumberish - ], [ - boolean - ], "nonpayable">; - getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - amount: BigNumberish - ], [ - boolean - ], "nonpayable">; - getEvent(key: "Approval"): TypedContractEvent; - getEvent(key: "Transfer"): TypedContractEvent; - filters: { - "Approval(address,address,uint256)": TypedContractEvent; - Approval: TypedContractEvent; - "Transfer(address,address,uint256)": TypedContractEvent; - Transfer: TypedContractEvent; - }; -} -//# sourceMappingURL=IERC20.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC20/IERC20.d.ts.map b/dist/types/@openzeppelin/contracts/token/ERC20/IERC20.d.ts.map deleted file mode 100644 index dc0aa91b..00000000 --- a/dist/types/@openzeppelin/contracts/token/ERC20/IERC20.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC20.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts/token/ERC20/IERC20.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC20/IERC20.js b/dist/types/@openzeppelin/contracts/token/ERC20/IERC20.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts/token/ERC20/IERC20.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.d.ts b/dist/types/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.d.ts deleted file mode 100644 index af029cad..00000000 --- a/dist/types/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.d.ts +++ /dev/null @@ -1,142 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; -export interface IERC20MetadataInterface extends Interface { - getFunction(nameOrSignature: "allowance" | "approve" | "balanceOf" | "decimals" | "name" | "symbol" | "totalSupply" | "transfer" | "transferFrom"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Approval" | "Transfer"): EventFragment; - encodeFunctionData(functionFragment: "allowance", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "decimals", values?: undefined): string; - encodeFunctionData(functionFragment: "name", values?: undefined): string; - encodeFunctionData(functionFragment: "symbol", values?: undefined): string; - encodeFunctionData(functionFragment: "totalSupply", values?: undefined): string; - encodeFunctionData(functionFragment: "transfer", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; - decodeFunctionResult(functionFragment: "allowance", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "decimals", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "totalSupply", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transfer", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; -} -export declare namespace ApprovalEvent { - type InputTuple = [ - owner: AddressLike, - spender: AddressLike, - value: BigNumberish - ]; - type OutputTuple = [owner: string, spender: string, value: bigint]; - interface OutputObject { - owner: string; - spender: string; - value: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferEvent { - type InputTuple = [ - from: AddressLike, - to: AddressLike, - value: BigNumberish - ]; - type OutputTuple = [from: string, to: string, value: bigint]; - interface OutputObject { - from: string; - to: string; - value: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface IERC20Metadata extends BaseContract { - connect(runner?: ContractRunner | null): IERC20Metadata; - waitForDeployment(): Promise; - interface: IERC20MetadataInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - allowance: TypedContractMethod<[ - owner: AddressLike, - spender: AddressLike - ], [ - bigint - ], "view">; - approve: TypedContractMethod<[ - spender: AddressLike, - amount: BigNumberish - ], [ - boolean - ], "nonpayable">; - balanceOf: TypedContractMethod<[account: AddressLike], [bigint], "view">; - decimals: TypedContractMethod<[], [bigint], "view">; - name: TypedContractMethod<[], [string], "view">; - symbol: TypedContractMethod<[], [string], "view">; - totalSupply: TypedContractMethod<[], [bigint], "view">; - transfer: TypedContractMethod<[ - to: AddressLike, - amount: BigNumberish - ], [ - boolean - ], "nonpayable">; - transferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - amount: BigNumberish - ], [ - boolean - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "allowance"): TypedContractMethod<[ - owner: AddressLike, - spender: AddressLike - ], [ - bigint - ], "view">; - getFunction(nameOrSignature: "approve"): TypedContractMethod<[ - spender: AddressLike, - amount: BigNumberish - ], [ - boolean - ], "nonpayable">; - getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[account: AddressLike], [bigint], "view">; - getFunction(nameOrSignature: "decimals"): TypedContractMethod<[], [bigint], "view">; - getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "symbol"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "totalSupply"): TypedContractMethod<[], [bigint], "view">; - getFunction(nameOrSignature: "transfer"): TypedContractMethod<[ - to: AddressLike, - amount: BigNumberish - ], [ - boolean - ], "nonpayable">; - getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - amount: BigNumberish - ], [ - boolean - ], "nonpayable">; - getEvent(key: "Approval"): TypedContractEvent; - getEvent(key: "Transfer"): TypedContractEvent; - filters: { - "Approval(address,address,uint256)": TypedContractEvent; - Approval: TypedContractEvent; - "Transfer(address,address,uint256)": TypedContractEvent; - Transfer: TypedContractEvent; - }; -} -//# sourceMappingURL=IERC20Metadata.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.d.ts.map b/dist/types/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.d.ts.map deleted file mode 100644 index 8c9f352c..00000000 --- a/dist/types/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC20Metadata.d.ts","sourceRoot":"","sources":["../../../../../../../types/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.js b/dist/types/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts/token/ERC20/extensions/index.d.ts b/dist/types/@openzeppelin/contracts/token/ERC20/extensions/index.d.ts deleted file mode 100644 index 163c80c1..00000000 --- a/dist/types/@openzeppelin/contracts/token/ERC20/extensions/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export type { IERC20Metadata } from "./IERC20Metadata"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC20/extensions/index.d.ts.map b/dist/types/@openzeppelin/contracts/token/ERC20/extensions/index.d.ts.map deleted file mode 100644 index cbda2962..00000000 --- a/dist/types/@openzeppelin/contracts/token/ERC20/extensions/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/@openzeppelin/contracts/token/ERC20/extensions/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC20/extensions/index.js b/dist/types/@openzeppelin/contracts/token/ERC20/extensions/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts/token/ERC20/extensions/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts/token/ERC20/index.d.ts b/dist/types/@openzeppelin/contracts/token/ERC20/index.d.ts deleted file mode 100644 index acb7134d..00000000 --- a/dist/types/@openzeppelin/contracts/token/ERC20/index.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import type * as extensions from "./extensions"; -export type { extensions }; -export type { ERC20 } from "./ERC20"; -export type { IERC20 } from "./IERC20"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC20/index.d.ts.map b/dist/types/@openzeppelin/contracts/token/ERC20/index.d.ts.map deleted file mode 100644 index 40bd25eb..00000000 --- a/dist/types/@openzeppelin/contracts/token/ERC20/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts/token/ERC20/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,UAAU,MAAM,cAAc,CAAC;AAChD,YAAY,EAAE,UAAU,EAAE,CAAC;AAC3B,YAAY,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AACrC,YAAY,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC20/index.js b/dist/types/@openzeppelin/contracts/token/ERC20/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts/token/ERC20/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts/token/ERC721/ERC721.d.ts b/dist/types/@openzeppelin/contracts/token/ERC721/ERC721.d.ts deleted file mode 100644 index 37c49b38..00000000 --- a/dist/types/@openzeppelin/contracts/token/ERC721/ERC721.d.ts +++ /dev/null @@ -1,212 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; -export interface ERC721Interface extends Interface { - getFunction(nameOrSignature: "approve" | "balanceOf" | "getApproved" | "isApprovedForAll" | "name" | "ownerOf" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "setApprovalForAll" | "supportsInterface" | "symbol" | "tokenURI" | "transferFrom"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "Transfer"): EventFragment; - encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "name", values?: undefined): string; - encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "symbol", values?: undefined): string; - encodeFunctionData(functionFragment: "tokenURI", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; - decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "tokenURI", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; -} -export declare namespace ApprovalEvent { - type InputTuple = [ - owner: AddressLike, - approved: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [owner: string, approved: string, tokenId: bigint]; - interface OutputObject { - owner: string; - approved: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ApprovalForAllEvent { - type InputTuple = [ - owner: AddressLike, - operator: AddressLike, - approved: boolean - ]; - type OutputTuple = [ - owner: string, - operator: string, - approved: boolean - ]; - interface OutputObject { - owner: string; - operator: string; - approved: boolean; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferEvent { - type InputTuple = [ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [from: string, to: string, tokenId: bigint]; - interface OutputObject { - from: string; - to: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface ERC721 extends BaseContract { - connect(runner?: ContractRunner | null): ERC721; - waitForDeployment(): Promise; - interface: ERC721Interface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - approve: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; - getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - isApprovedForAll: TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - name: TypedContractMethod<[], [string], "view">; - ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - setApprovalForAll: TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - symbol: TypedContractMethod<[], [string], "view">; - tokenURI: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - transferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "approve"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; - getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "symbol"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "tokenURI"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getEvent(key: "Approval"): TypedContractEvent; - getEvent(key: "ApprovalForAll"): TypedContractEvent; - getEvent(key: "Transfer"): TypedContractEvent; - filters: { - "Approval(address,address,uint256)": TypedContractEvent; - Approval: TypedContractEvent; - "ApprovalForAll(address,address,bool)": TypedContractEvent; - ApprovalForAll: TypedContractEvent; - "Transfer(address,address,uint256)": TypedContractEvent; - Transfer: TypedContractEvent; - }; -} -//# sourceMappingURL=ERC721.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC721/ERC721.d.ts.map b/dist/types/@openzeppelin/contracts/token/ERC721/ERC721.d.ts.map deleted file mode 100644 index a36bfc4b..00000000 --- a/dist/types/@openzeppelin/contracts/token/ERC721/ERC721.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ERC721.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts/token/ERC721/ERC721.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC721/ERC721.js b/dist/types/@openzeppelin/contracts/token/ERC721/ERC721.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts/token/ERC721/ERC721.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts/token/ERC721/IERC721.d.ts b/dist/types/@openzeppelin/contracts/token/ERC721/IERC721.d.ts deleted file mode 100644 index 31fd91b4..00000000 --- a/dist/types/@openzeppelin/contracts/token/ERC721/IERC721.d.ts +++ /dev/null @@ -1,200 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; -export interface IERC721Interface extends Interface { - getFunction(nameOrSignature: "approve" | "balanceOf" | "getApproved" | "isApprovedForAll" | "ownerOf" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "setApprovalForAll" | "supportsInterface" | "transferFrom"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "Transfer"): EventFragment; - encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; - decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; -} -export declare namespace ApprovalEvent { - type InputTuple = [ - owner: AddressLike, - approved: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [owner: string, approved: string, tokenId: bigint]; - interface OutputObject { - owner: string; - approved: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ApprovalForAllEvent { - type InputTuple = [ - owner: AddressLike, - operator: AddressLike, - approved: boolean - ]; - type OutputTuple = [ - owner: string, - operator: string, - approved: boolean - ]; - interface OutputObject { - owner: string; - operator: string; - approved: boolean; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferEvent { - type InputTuple = [ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [from: string, to: string, tokenId: bigint]; - interface OutputObject { - from: string; - to: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface IERC721 extends BaseContract { - connect(runner?: ContractRunner | null): IERC721; - waitForDeployment(): Promise; - interface: IERC721Interface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - approve: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; - getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - isApprovedForAll: TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - setApprovalForAll: TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - transferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "approve"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; - getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getEvent(key: "Approval"): TypedContractEvent; - getEvent(key: "ApprovalForAll"): TypedContractEvent; - getEvent(key: "Transfer"): TypedContractEvent; - filters: { - "Approval(address,address,uint256)": TypedContractEvent; - Approval: TypedContractEvent; - "ApprovalForAll(address,address,bool)": TypedContractEvent; - ApprovalForAll: TypedContractEvent; - "Transfer(address,address,uint256)": TypedContractEvent; - Transfer: TypedContractEvent; - }; -} -//# sourceMappingURL=IERC721.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC721/IERC721.d.ts.map b/dist/types/@openzeppelin/contracts/token/ERC721/IERC721.d.ts.map deleted file mode 100644 index f47ae873..00000000 --- a/dist/types/@openzeppelin/contracts/token/ERC721/IERC721.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC721.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts/token/ERC721/IERC721.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC721/IERC721.js b/dist/types/@openzeppelin/contracts/token/ERC721/IERC721.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts/token/ERC721/IERC721.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts/token/ERC721/IERC721Receiver.d.ts b/dist/types/@openzeppelin/contracts/token/ERC721/IERC721Receiver.d.ts deleted file mode 100644 index 12d740ba..00000000 --- a/dist/types/@openzeppelin/contracts/token/ERC721/IERC721Receiver.d.ts +++ /dev/null @@ -1,40 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; -export interface IERC721ReceiverInterface extends Interface { - getFunction(nameOrSignature: "onERC721Received"): FunctionFragment; - encodeFunctionData(functionFragment: "onERC721Received", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; - decodeFunctionResult(functionFragment: "onERC721Received", data: BytesLike): Result; -} -export interface IERC721Receiver extends BaseContract { - connect(runner?: ContractRunner | null): IERC721Receiver; - waitForDeployment(): Promise; - interface: IERC721ReceiverInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - onERC721Received: TypedContractMethod<[ - operator: AddressLike, - from: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - string - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "onERC721Received"): TypedContractMethod<[ - operator: AddressLike, - from: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - string - ], "nonpayable">; - filters: {}; -} -//# sourceMappingURL=IERC721Receiver.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC721/IERC721Receiver.d.ts.map b/dist/types/@openzeppelin/contracts/token/ERC721/IERC721Receiver.d.ts.map deleted file mode 100644 index 79b15a83..00000000 --- a/dist/types/@openzeppelin/contracts/token/ERC721/IERC721Receiver.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC721Receiver.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts/token/ERC721/IERC721Receiver.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC721/IERC721Receiver.js b/dist/types/@openzeppelin/contracts/token/ERC721/IERC721Receiver.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts/token/ERC721/IERC721Receiver.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.d.ts b/dist/types/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.d.ts deleted file mode 100644 index 4a8923d6..00000000 --- a/dist/types/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.d.ts +++ /dev/null @@ -1,212 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../../common"; -export interface IERC721MetadataInterface extends Interface { - getFunction(nameOrSignature: "approve" | "balanceOf" | "getApproved" | "isApprovedForAll" | "name" | "ownerOf" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "setApprovalForAll" | "supportsInterface" | "symbol" | "tokenURI" | "transferFrom"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "Transfer"): EventFragment; - encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "name", values?: undefined): string; - encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "symbol", values?: undefined): string; - encodeFunctionData(functionFragment: "tokenURI", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; - decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "tokenURI", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; -} -export declare namespace ApprovalEvent { - type InputTuple = [ - owner: AddressLike, - approved: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [owner: string, approved: string, tokenId: bigint]; - interface OutputObject { - owner: string; - approved: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ApprovalForAllEvent { - type InputTuple = [ - owner: AddressLike, - operator: AddressLike, - approved: boolean - ]; - type OutputTuple = [ - owner: string, - operator: string, - approved: boolean - ]; - interface OutputObject { - owner: string; - operator: string; - approved: boolean; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferEvent { - type InputTuple = [ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [from: string, to: string, tokenId: bigint]; - interface OutputObject { - from: string; - to: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface IERC721Metadata extends BaseContract { - connect(runner?: ContractRunner | null): IERC721Metadata; - waitForDeployment(): Promise; - interface: IERC721MetadataInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - approve: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; - getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - isApprovedForAll: TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - name: TypedContractMethod<[], [string], "view">; - ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - setApprovalForAll: TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - symbol: TypedContractMethod<[], [string], "view">; - tokenURI: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - transferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "approve"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; - getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "symbol"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "tokenURI"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getEvent(key: "Approval"): TypedContractEvent; - getEvent(key: "ApprovalForAll"): TypedContractEvent; - getEvent(key: "Transfer"): TypedContractEvent; - filters: { - "Approval(address,address,uint256)": TypedContractEvent; - Approval: TypedContractEvent; - "ApprovalForAll(address,address,bool)": TypedContractEvent; - ApprovalForAll: TypedContractEvent; - "Transfer(address,address,uint256)": TypedContractEvent; - Transfer: TypedContractEvent; - }; -} -//# sourceMappingURL=IERC721Metadata.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.d.ts.map b/dist/types/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.d.ts.map deleted file mode 100644 index fa5ac922..00000000 --- a/dist/types/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC721Metadata.d.ts","sourceRoot":"","sources":["../../../../../../../types/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.js b/dist/types/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts/token/ERC721/extensions/index.d.ts b/dist/types/@openzeppelin/contracts/token/ERC721/extensions/index.d.ts deleted file mode 100644 index 883c1d26..00000000 --- a/dist/types/@openzeppelin/contracts/token/ERC721/extensions/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export type { IERC721Metadata } from "./IERC721Metadata"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC721/extensions/index.d.ts.map b/dist/types/@openzeppelin/contracts/token/ERC721/extensions/index.d.ts.map deleted file mode 100644 index 794da61b..00000000 --- a/dist/types/@openzeppelin/contracts/token/ERC721/extensions/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/@openzeppelin/contracts/token/ERC721/extensions/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC721/extensions/index.js b/dist/types/@openzeppelin/contracts/token/ERC721/extensions/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts/token/ERC721/extensions/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts/token/ERC721/index.d.ts b/dist/types/@openzeppelin/contracts/token/ERC721/index.d.ts deleted file mode 100644 index c0e9348a..00000000 --- a/dist/types/@openzeppelin/contracts/token/ERC721/index.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -import type * as extensions from "./extensions"; -export type { extensions }; -export type { ERC721 } from "./ERC721"; -export type { IERC721 } from "./IERC721"; -export type { IERC721Receiver } from "./IERC721Receiver"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC721/index.d.ts.map b/dist/types/@openzeppelin/contracts/token/ERC721/index.d.ts.map deleted file mode 100644 index f63cdad9..00000000 --- a/dist/types/@openzeppelin/contracts/token/ERC721/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts/token/ERC721/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,UAAU,MAAM,cAAc,CAAC;AAChD,YAAY,EAAE,UAAU,EAAE,CAAC;AAC3B,YAAY,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AACvC,YAAY,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,YAAY,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/ERC721/index.js b/dist/types/@openzeppelin/contracts/token/ERC721/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts/token/ERC721/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts/token/index.d.ts b/dist/types/@openzeppelin/contracts/token/index.d.ts deleted file mode 100644 index e0f93091..00000000 --- a/dist/types/@openzeppelin/contracts/token/index.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import type * as erc1155 from "./ERC1155"; -export type { erc1155 }; -import type * as erc20 from "./ERC20"; -export type { erc20 }; -import type * as erc721 from "./ERC721"; -export type { erc721 }; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/index.d.ts.map b/dist/types/@openzeppelin/contracts/token/index.d.ts.map deleted file mode 100644 index 43daf9a8..00000000 --- a/dist/types/@openzeppelin/contracts/token/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/@openzeppelin/contracts/token/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,OAAO,MAAM,WAAW,CAAC;AAC1C,YAAY,EAAE,OAAO,EAAE,CAAC;AACxB,OAAO,KAAK,KAAK,KAAK,MAAM,SAAS,CAAC;AACtC,YAAY,EAAE,KAAK,EAAE,CAAC;AACtB,OAAO,KAAK,KAAK,MAAM,MAAM,UAAU,CAAC;AACxC,YAAY,EAAE,MAAM,EAAE,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/token/index.js b/dist/types/@openzeppelin/contracts/token/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts/token/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts/utils/index.d.ts b/dist/types/@openzeppelin/contracts/utils/index.d.ts deleted file mode 100644 index 2d3d7319..00000000 --- a/dist/types/@openzeppelin/contracts/utils/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import type * as introspection from "./introspection"; -export type { introspection }; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/utils/index.d.ts.map b/dist/types/@openzeppelin/contracts/utils/index.d.ts.map deleted file mode 100644 index f49143cc..00000000 --- a/dist/types/@openzeppelin/contracts/utils/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/@openzeppelin/contracts/utils/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,aAAa,MAAM,iBAAiB,CAAC;AACtD,YAAY,EAAE,aAAa,EAAE,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/utils/index.js b/dist/types/@openzeppelin/contracts/utils/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts/utils/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts/utils/introspection/ERC165.d.ts b/dist/types/@openzeppelin/contracts/utils/introspection/ERC165.d.ts deleted file mode 100644 index 6c963736..00000000 --- a/dist/types/@openzeppelin/contracts/utils/introspection/ERC165.d.ts +++ /dev/null @@ -1,30 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; -export interface ERC165Interface extends Interface { - getFunction(nameOrSignature: "supportsInterface"): FunctionFragment; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; -} -export interface ERC165 extends BaseContract { - connect(runner?: ContractRunner | null): ERC165; - waitForDeployment(): Promise; - interface: ERC165Interface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - filters: {}; -} -//# sourceMappingURL=ERC165.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/utils/introspection/ERC165.d.ts.map b/dist/types/@openzeppelin/contracts/utils/introspection/ERC165.d.ts.map deleted file mode 100644 index 2d7fb457..00000000 --- a/dist/types/@openzeppelin/contracts/utils/introspection/ERC165.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ERC165.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts/utils/introspection/ERC165.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/utils/introspection/ERC165.js b/dist/types/@openzeppelin/contracts/utils/introspection/ERC165.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts/utils/introspection/ERC165.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts/utils/introspection/IERC165.d.ts b/dist/types/@openzeppelin/contracts/utils/introspection/IERC165.d.ts deleted file mode 100644 index f8dd5082..00000000 --- a/dist/types/@openzeppelin/contracts/utils/introspection/IERC165.d.ts +++ /dev/null @@ -1,30 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; -export interface IERC165Interface extends Interface { - getFunction(nameOrSignature: "supportsInterface"): FunctionFragment; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; -} -export interface IERC165 extends BaseContract { - connect(runner?: ContractRunner | null): IERC165; - waitForDeployment(): Promise; - interface: IERC165Interface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - filters: {}; -} -//# sourceMappingURL=IERC165.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/utils/introspection/IERC165.d.ts.map b/dist/types/@openzeppelin/contracts/utils/introspection/IERC165.d.ts.map deleted file mode 100644 index caf15c31..00000000 --- a/dist/types/@openzeppelin/contracts/utils/introspection/IERC165.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC165.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts/utils/introspection/IERC165.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/utils/introspection/IERC165.js b/dist/types/@openzeppelin/contracts/utils/introspection/IERC165.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts/utils/introspection/IERC165.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/contracts/utils/introspection/index.d.ts b/dist/types/@openzeppelin/contracts/utils/introspection/index.d.ts deleted file mode 100644 index 1d48adcb..00000000 --- a/dist/types/@openzeppelin/contracts/utils/introspection/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export type { ERC165 } from "./ERC165"; -export type { IERC165 } from "./IERC165"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/utils/introspection/index.d.ts.map b/dist/types/@openzeppelin/contracts/utils/introspection/index.d.ts.map deleted file mode 100644 index dbc2836f..00000000 --- a/dist/types/@openzeppelin/contracts/utils/introspection/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/@openzeppelin/contracts/utils/introspection/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AACvC,YAAY,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/contracts/utils/introspection/index.js b/dist/types/@openzeppelin/contracts/utils/introspection/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/contracts/utils/introspection/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/@openzeppelin/index.d.ts b/dist/types/@openzeppelin/index.d.ts deleted file mode 100644 index 029aed4e..00000000 --- a/dist/types/@openzeppelin/index.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import type * as contracts from "./contracts"; -export type { contracts }; -import type * as contracts23 from "./contracts-2.3"; -export type { contracts23 }; -import type * as contractsUpgradeable from "./contracts-upgradeable"; -export type { contractsUpgradeable }; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/@openzeppelin/index.d.ts.map b/dist/types/@openzeppelin/index.d.ts.map deleted file mode 100644 index c4140179..00000000 --- a/dist/types/@openzeppelin/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../types/@openzeppelin/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,SAAS,MAAM,aAAa,CAAC;AAC9C,YAAY,EAAE,SAAS,EAAE,CAAC;AAC1B,OAAO,KAAK,KAAK,WAAW,MAAM,iBAAiB,CAAC;AACpD,YAAY,EAAE,WAAW,EAAE,CAAC;AAC5B,OAAO,KAAK,KAAK,oBAAoB,MAAM,yBAAyB,CAAC;AACrE,YAAY,EAAE,oBAAoB,EAAE,CAAC"} \ No newline at end of file diff --git a/dist/types/@openzeppelin/index.js b/dist/types/@openzeppelin/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/@openzeppelin/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/common.d.ts b/dist/types/common.d.ts deleted file mode 100644 index e20b4474..00000000 --- a/dist/types/common.d.ts +++ /dev/null @@ -1,51 +0,0 @@ -import type { FunctionFragment, Typed, EventFragment, ContractTransaction, ContractTransactionResponse, DeferredTopicFilter, EventLog, TransactionRequest, LogDescription } from "ethers"; -export interface TypedDeferredTopicFilter<_TCEvent extends TypedContractEvent> extends DeferredTopicFilter { -} -export interface TypedContractEvent = any, OutputTuple extends Array = any, OutputObject = any> { - (...args: Partial): TypedDeferredTopicFilter>; - name: string; - fragment: EventFragment; - getFragment(...args: Partial): EventFragment; -} -declare type __TypechainAOutputTuple = T extends TypedContractEvent ? W : never; -declare type __TypechainOutputObject = T extends TypedContractEvent ? V : never; -export interface TypedEventLog extends Omit { - args: __TypechainAOutputTuple & __TypechainOutputObject; -} -export interface TypedLogDescription extends Omit { - args: __TypechainAOutputTuple & __TypechainOutputObject; -} -export declare type TypedListener = (...listenerArg: [ - ...__TypechainAOutputTuple, - TypedEventLog, - ...undefined[] -]) => void; -export declare type MinEthersFactory = { - deploy(...a: ARGS[]): Promise; -}; -export declare type GetContractTypeFromFactory = F extends MinEthersFactory ? C : never; -export declare type GetARGsTypeFromFactory = F extends MinEthersFactory ? Parameters : never; -export declare type StateMutability = "nonpayable" | "payable" | "view"; -export declare type BaseOverrides = Omit; -export declare type NonPayableOverrides = Omit; -export declare type PayableOverrides = Omit; -export declare type ViewOverrides = Omit; -export declare type Overrides = S extends "nonpayable" ? NonPayableOverrides : S extends "payable" ? PayableOverrides : ViewOverrides; -export declare type PostfixOverrides, S extends StateMutability> = A | [...A, Overrides]; -export declare type ContractMethodArgs, S extends StateMutability> = PostfixOverrides<{ - [I in keyof A]-?: A[I] | Typed; -}, S>; -export declare type DefaultReturnType = R extends Array ? R[0] : R; -export interface TypedContractMethod = Array, R = any, S extends StateMutability = "payable"> { - (...args: ContractMethodArgs): S extends "view" ? Promise> : Promise; - name: string; - fragment: FunctionFragment; - getFragment(...args: ContractMethodArgs): FunctionFragment; - populateTransaction(...args: ContractMethodArgs): Promise; - staticCall(...args: ContractMethodArgs): Promise>; - send(...args: ContractMethodArgs): Promise; - estimateGas(...args: ContractMethodArgs): Promise; - staticCallResult(...args: ContractMethodArgs): Promise; -} -export {}; -//# sourceMappingURL=common.d.ts.map \ No newline at end of file diff --git a/dist/types/common.d.ts.map b/dist/types/common.d.ts.map deleted file mode 100644 index de5acbcd..00000000 --- a/dist/types/common.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../types/common.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/common.js b/dist/types/common.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/common.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/LegacyENSRegistry.sol/LegacyENS.d.ts b/dist/types/contracts/@ens/LegacyENSRegistry.sol/LegacyENS.d.ts deleted file mode 100644 index 02a1e866..00000000 --- a/dist/types/contracts/@ens/LegacyENSRegistry.sol/LegacyENS.d.ts +++ /dev/null @@ -1,159 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../common"; -export interface LegacyENSInterface extends Interface { - getFunction(nameOrSignature: "owner" | "resolver" | "setOwner" | "setResolver" | "setSubnodeOwner" | "setTTL" | "ttl"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "NewOwner" | "NewResolver" | "NewTTL" | "Transfer"): EventFragment; - encodeFunctionData(functionFragment: "owner", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "resolver", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "setOwner", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "setResolver", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "setSubnodeOwner", values: [BytesLike, BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "setTTL", values: [BytesLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "ttl", values: [BytesLike]): string; - decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "resolver", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setOwner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setResolver", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setSubnodeOwner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setTTL", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ttl", data: BytesLike): Result; -} -export declare namespace NewOwnerEvent { - type InputTuple = [ - node: BytesLike, - label: BytesLike, - owner: AddressLike - ]; - type OutputTuple = [node: string, label: string, owner: string]; - interface OutputObject { - node: string; - label: string; - owner: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NewResolverEvent { - type InputTuple = [node: BytesLike, resolver: AddressLike]; - type OutputTuple = [node: string, resolver: string]; - interface OutputObject { - node: string; - resolver: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NewTTLEvent { - type InputTuple = [node: BytesLike, ttl: BigNumberish]; - type OutputTuple = [node: string, ttl: bigint]; - interface OutputObject { - node: string; - ttl: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferEvent { - type InputTuple = [node: BytesLike, owner: AddressLike]; - type OutputTuple = [node: string, owner: string]; - interface OutputObject { - node: string; - owner: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface LegacyENS extends BaseContract { - connect(runner?: ContractRunner | null): LegacyENS; - waitForDeployment(): Promise; - interface: LegacyENSInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - owner: TypedContractMethod<[node: BytesLike], [string], "view">; - resolver: TypedContractMethod<[node: BytesLike], [string], "view">; - setOwner: TypedContractMethod<[ - node: BytesLike, - owner: AddressLike - ], [ - void - ], "nonpayable">; - setResolver: TypedContractMethod<[ - node: BytesLike, - resolver: AddressLike - ], [ - void - ], "nonpayable">; - setSubnodeOwner: TypedContractMethod<[ - node: BytesLike, - label: BytesLike, - owner: AddressLike - ], [ - void - ], "nonpayable">; - setTTL: TypedContractMethod<[ - node: BytesLike, - ttl: BigNumberish - ], [ - void - ], "nonpayable">; - ttl: TypedContractMethod<[node: BytesLike], [bigint], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "owner"): TypedContractMethod<[node: BytesLike], [string], "view">; - getFunction(nameOrSignature: "resolver"): TypedContractMethod<[node: BytesLike], [string], "view">; - getFunction(nameOrSignature: "setOwner"): TypedContractMethod<[ - node: BytesLike, - owner: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setResolver"): TypedContractMethod<[ - node: BytesLike, - resolver: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setSubnodeOwner"): TypedContractMethod<[ - node: BytesLike, - label: BytesLike, - owner: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setTTL"): TypedContractMethod<[ - node: BytesLike, - ttl: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "ttl"): TypedContractMethod<[node: BytesLike], [bigint], "view">; - getEvent(key: "NewOwner"): TypedContractEvent; - getEvent(key: "NewResolver"): TypedContractEvent; - getEvent(key: "NewTTL"): TypedContractEvent; - getEvent(key: "Transfer"): TypedContractEvent; - filters: { - "NewOwner(bytes32,bytes32,address)": TypedContractEvent; - NewOwner: TypedContractEvent; - "NewResolver(bytes32,address)": TypedContractEvent; - NewResolver: TypedContractEvent; - "NewTTL(bytes32,uint64)": TypedContractEvent; - NewTTL: TypedContractEvent; - "Transfer(bytes32,address)": TypedContractEvent; - Transfer: TypedContractEvent; - }; -} -//# sourceMappingURL=LegacyENS.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/LegacyENSRegistry.sol/LegacyENS.d.ts.map b/dist/types/contracts/@ens/LegacyENSRegistry.sol/LegacyENS.d.ts.map deleted file mode 100644 index 4c780175..00000000 --- a/dist/types/contracts/@ens/LegacyENSRegistry.sol/LegacyENS.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"LegacyENS.d.ts","sourceRoot":"","sources":["../../../../../types/contracts/@ens/LegacyENSRegistry.sol/LegacyENS.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/LegacyENSRegistry.sol/LegacyENS.js b/dist/types/contracts/@ens/LegacyENSRegistry.sol/LegacyENS.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@ens/LegacyENSRegistry.sol/LegacyENS.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry.d.ts b/dist/types/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry.d.ts deleted file mode 100644 index 46cb589d..00000000 --- a/dist/types/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry.d.ts +++ /dev/null @@ -1,159 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../common"; -export interface LegacyENSRegistryInterface extends Interface { - getFunction(nameOrSignature: "owner" | "resolver" | "setOwner" | "setResolver" | "setSubnodeOwner" | "setTTL" | "ttl"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "NewOwner" | "NewResolver" | "NewTTL" | "Transfer"): EventFragment; - encodeFunctionData(functionFragment: "owner", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "resolver", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "setOwner", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "setResolver", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "setSubnodeOwner", values: [BytesLike, BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "setTTL", values: [BytesLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "ttl", values: [BytesLike]): string; - decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "resolver", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setOwner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setResolver", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setSubnodeOwner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setTTL", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ttl", data: BytesLike): Result; -} -export declare namespace NewOwnerEvent { - type InputTuple = [ - node: BytesLike, - label: BytesLike, - owner: AddressLike - ]; - type OutputTuple = [node: string, label: string, owner: string]; - interface OutputObject { - node: string; - label: string; - owner: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NewResolverEvent { - type InputTuple = [node: BytesLike, resolver: AddressLike]; - type OutputTuple = [node: string, resolver: string]; - interface OutputObject { - node: string; - resolver: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NewTTLEvent { - type InputTuple = [node: BytesLike, ttl: BigNumberish]; - type OutputTuple = [node: string, ttl: bigint]; - interface OutputObject { - node: string; - ttl: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferEvent { - type InputTuple = [node: BytesLike, owner: AddressLike]; - type OutputTuple = [node: string, owner: string]; - interface OutputObject { - node: string; - owner: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface LegacyENSRegistry extends BaseContract { - connect(runner?: ContractRunner | null): LegacyENSRegistry; - waitForDeployment(): Promise; - interface: LegacyENSRegistryInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - owner: TypedContractMethod<[node: BytesLike], [string], "view">; - resolver: TypedContractMethod<[node: BytesLike], [string], "view">; - setOwner: TypedContractMethod<[ - node: BytesLike, - owner: AddressLike - ], [ - void - ], "nonpayable">; - setResolver: TypedContractMethod<[ - node: BytesLike, - resolver: AddressLike - ], [ - void - ], "nonpayable">; - setSubnodeOwner: TypedContractMethod<[ - node: BytesLike, - label: BytesLike, - owner: AddressLike - ], [ - void - ], "nonpayable">; - setTTL: TypedContractMethod<[ - node: BytesLike, - ttl: BigNumberish - ], [ - void - ], "nonpayable">; - ttl: TypedContractMethod<[node: BytesLike], [bigint], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "owner"): TypedContractMethod<[node: BytesLike], [string], "view">; - getFunction(nameOrSignature: "resolver"): TypedContractMethod<[node: BytesLike], [string], "view">; - getFunction(nameOrSignature: "setOwner"): TypedContractMethod<[ - node: BytesLike, - owner: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setResolver"): TypedContractMethod<[ - node: BytesLike, - resolver: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setSubnodeOwner"): TypedContractMethod<[ - node: BytesLike, - label: BytesLike, - owner: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setTTL"): TypedContractMethod<[ - node: BytesLike, - ttl: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "ttl"): TypedContractMethod<[node: BytesLike], [bigint], "view">; - getEvent(key: "NewOwner"): TypedContractEvent; - getEvent(key: "NewResolver"): TypedContractEvent; - getEvent(key: "NewTTL"): TypedContractEvent; - getEvent(key: "Transfer"): TypedContractEvent; - filters: { - "NewOwner(bytes32,bytes32,address)": TypedContractEvent; - NewOwner: TypedContractEvent; - "NewResolver(bytes32,address)": TypedContractEvent; - NewResolver: TypedContractEvent; - "NewTTL(bytes32,uint64)": TypedContractEvent; - NewTTL: TypedContractEvent; - "Transfer(bytes32,address)": TypedContractEvent; - Transfer: TypedContractEvent; - }; -} -//# sourceMappingURL=LegacyENSRegistry.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry.d.ts.map b/dist/types/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry.d.ts.map deleted file mode 100644 index cf6ebb8b..00000000 --- a/dist/types/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"LegacyENSRegistry.d.ts","sourceRoot":"","sources":["../../../../../types/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry.js b/dist/types/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/LegacyENSRegistry.sol/index.d.ts b/dist/types/contracts/@ens/LegacyENSRegistry.sol/index.d.ts deleted file mode 100644 index ec8ead9a..00000000 --- a/dist/types/contracts/@ens/LegacyENSRegistry.sol/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export type { LegacyENS } from "./LegacyENS"; -export type { LegacyENSRegistry } from "./LegacyENSRegistry"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/LegacyENSRegistry.sol/index.d.ts.map b/dist/types/contracts/@ens/LegacyENSRegistry.sol/index.d.ts.map deleted file mode 100644 index a505f464..00000000 --- a/dist/types/contracts/@ens/LegacyENSRegistry.sol/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/contracts/@ens/LegacyENSRegistry.sol/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,YAAY,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/LegacyENSRegistry.sol/index.js b/dist/types/contracts/@ens/LegacyENSRegistry.sol/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@ens/LegacyENSRegistry.sol/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar.d.ts b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar.d.ts deleted file mode 100644 index b2702a1c..00000000 --- a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar.d.ts +++ /dev/null @@ -1,410 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../common"; -export interface BaseRegistrarInterface extends Interface { - getFunction(nameOrSignature: "GRACE_PERIOD" | "addController" | "approve" | "available" | "balanceOf" | "baseNode" | "controllers" | "ens" | "getApproved" | "isApprovedForAll" | "isOwner" | "nameExpires" | "owner" | "ownerOf" | "reclaim" | "register" | "removeController" | "renew" | "renounceOwnership" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "setApprovalForAll" | "setResolver" | "supportsInterface" | "transferFrom" | "transferOwnership"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "ControllerAdded" | "ControllerRemoved" | "NameMigrated" | "NameRegistered" | "NameRenewed" | "OwnershipTransferred" | "Transfer"): EventFragment; - encodeFunctionData(functionFragment: "GRACE_PERIOD", values?: undefined): string; - encodeFunctionData(functionFragment: "addController", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "available", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "baseNode", values?: undefined): string; - encodeFunctionData(functionFragment: "controllers", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "ens", values?: undefined): string; - encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "isOwner", values?: undefined): string; - encodeFunctionData(functionFragment: "nameExpires", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "owner", values?: undefined): string; - encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "reclaim", values: [BigNumberish, AddressLike]): string; - encodeFunctionData(functionFragment: "register", values: [BigNumberish, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "removeController", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "renew", values: [BigNumberish, BigNumberish]): string; - encodeFunctionData(functionFragment: "renounceOwnership", values?: undefined): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; - encodeFunctionData(functionFragment: "setResolver", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "transferOwnership", values: [AddressLike]): string; - decodeFunctionResult(functionFragment: "GRACE_PERIOD", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "addController", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "available", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "baseNode", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "controllers", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ens", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isOwner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "nameExpires", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "reclaim", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "register", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "removeController", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renew", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceOwnership", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setResolver", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result; -} -export declare namespace ApprovalEvent { - type InputTuple = [ - owner: AddressLike, - approved: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [owner: string, approved: string, tokenId: bigint]; - interface OutputObject { - owner: string; - approved: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ApprovalForAllEvent { - type InputTuple = [ - owner: AddressLike, - operator: AddressLike, - approved: boolean - ]; - type OutputTuple = [ - owner: string, - operator: string, - approved: boolean - ]; - interface OutputObject { - owner: string; - operator: string; - approved: boolean; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ControllerAddedEvent { - type InputTuple = [controller: AddressLike]; - type OutputTuple = [controller: string]; - interface OutputObject { - controller: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ControllerRemovedEvent { - type InputTuple = [controller: AddressLike]; - type OutputTuple = [controller: string]; - interface OutputObject { - controller: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NameMigratedEvent { - type InputTuple = [ - id: BigNumberish, - owner: AddressLike, - expires: BigNumberish - ]; - type OutputTuple = [id: bigint, owner: string, expires: bigint]; - interface OutputObject { - id: bigint; - owner: string; - expires: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NameRegisteredEvent { - type InputTuple = [ - id: BigNumberish, - owner: AddressLike, - expires: BigNumberish - ]; - type OutputTuple = [id: bigint, owner: string, expires: bigint]; - interface OutputObject { - id: bigint; - owner: string; - expires: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NameRenewedEvent { - type InputTuple = [id: BigNumberish, expires: BigNumberish]; - type OutputTuple = [id: bigint, expires: bigint]; - interface OutputObject { - id: bigint; - expires: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace OwnershipTransferredEvent { - type InputTuple = [previousOwner: AddressLike, newOwner: AddressLike]; - type OutputTuple = [previousOwner: string, newOwner: string]; - interface OutputObject { - previousOwner: string; - newOwner: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferEvent { - type InputTuple = [ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [from: string, to: string, tokenId: bigint]; - interface OutputObject { - from: string; - to: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface BaseRegistrar extends BaseContract { - connect(runner?: ContractRunner | null): BaseRegistrar; - waitForDeployment(): Promise; - interface: BaseRegistrarInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - GRACE_PERIOD: TypedContractMethod<[], [bigint], "view">; - addController: TypedContractMethod<[ - controller: AddressLike - ], [ - void - ], "nonpayable">; - approve: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - available: TypedContractMethod<[id: BigNumberish], [boolean], "view">; - balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; - baseNode: TypedContractMethod<[], [string], "view">; - controllers: TypedContractMethod<[arg0: AddressLike], [boolean], "view">; - ens: TypedContractMethod<[], [string], "view">; - getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - isApprovedForAll: TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - isOwner: TypedContractMethod<[], [boolean], "view">; - nameExpires: TypedContractMethod<[id: BigNumberish], [bigint], "view">; - owner: TypedContractMethod<[], [string], "view">; - ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - reclaim: TypedContractMethod<[ - id: BigNumberish, - owner: AddressLike - ], [ - void - ], "nonpayable">; - register: TypedContractMethod<[ - id: BigNumberish, - owner: AddressLike, - duration: BigNumberish - ], [ - bigint - ], "nonpayable">; - removeController: TypedContractMethod<[ - controller: AddressLike - ], [ - void - ], "nonpayable">; - renew: TypedContractMethod<[ - id: BigNumberish, - duration: BigNumberish - ], [ - bigint - ], "nonpayable">; - renounceOwnership: TypedContractMethod<[], [void], "nonpayable">; - "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - setApprovalForAll: TypedContractMethod<[ - operator: AddressLike, - _approved: boolean - ], [ - void - ], "nonpayable">; - setResolver: TypedContractMethod<[ - resolver: AddressLike - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - transferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - transferOwnership: TypedContractMethod<[ - newOwner: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "GRACE_PERIOD"): TypedContractMethod<[], [bigint], "view">; - getFunction(nameOrSignature: "addController"): TypedContractMethod<[controller: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "approve"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "available"): TypedContractMethod<[id: BigNumberish], [boolean], "view">; - getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; - getFunction(nameOrSignature: "baseNode"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "controllers"): TypedContractMethod<[arg0: AddressLike], [boolean], "view">; - getFunction(nameOrSignature: "ens"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "isOwner"): TypedContractMethod<[], [boolean], "view">; - getFunction(nameOrSignature: "nameExpires"): TypedContractMethod<[id: BigNumberish], [bigint], "view">; - getFunction(nameOrSignature: "owner"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "reclaim"): TypedContractMethod<[ - id: BigNumberish, - owner: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "register"): TypedContractMethod<[ - id: BigNumberish, - owner: AddressLike, - duration: BigNumberish - ], [ - bigint - ], "nonpayable">; - getFunction(nameOrSignature: "removeController"): TypedContractMethod<[controller: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "renew"): TypedContractMethod<[ - id: BigNumberish, - duration: BigNumberish - ], [ - bigint - ], "nonpayable">; - getFunction(nameOrSignature: "renounceOwnership"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ - operator: AddressLike, - _approved: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setResolver"): TypedContractMethod<[resolver: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "transferOwnership"): TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">; - getEvent(key: "Approval"): TypedContractEvent; - getEvent(key: "ApprovalForAll"): TypedContractEvent; - getEvent(key: "ControllerAdded"): TypedContractEvent; - getEvent(key: "ControllerRemoved"): TypedContractEvent; - getEvent(key: "NameMigrated"): TypedContractEvent; - getEvent(key: "NameRegistered"): TypedContractEvent; - getEvent(key: "NameRenewed"): TypedContractEvent; - getEvent(key: "OwnershipTransferred"): TypedContractEvent; - getEvent(key: "Transfer"): TypedContractEvent; - filters: { - "Approval(address,address,uint256)": TypedContractEvent; - Approval: TypedContractEvent; - "ApprovalForAll(address,address,bool)": TypedContractEvent; - ApprovalForAll: TypedContractEvent; - "ControllerAdded(address)": TypedContractEvent; - ControllerAdded: TypedContractEvent; - "ControllerRemoved(address)": TypedContractEvent; - ControllerRemoved: TypedContractEvent; - "NameMigrated(uint256,address,uint256)": TypedContractEvent; - NameMigrated: TypedContractEvent; - "NameRegistered(uint256,address,uint256)": TypedContractEvent; - NameRegistered: TypedContractEvent; - "NameRenewed(uint256,uint256)": TypedContractEvent; - NameRenewed: TypedContractEvent; - "OwnershipTransferred(address,address)": TypedContractEvent; - OwnershipTransferred: TypedContractEvent; - "Transfer(address,address,uint256)": TypedContractEvent; - Transfer: TypedContractEvent; - }; -} -//# sourceMappingURL=BaseRegistrar.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar.d.ts.map b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar.d.ts.map deleted file mode 100644 index 2b8a02c6..00000000 --- a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"BaseRegistrar.d.ts","sourceRoot":"","sources":["../../../../../types/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar.js b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/ENS.d.ts b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/ENS.d.ts deleted file mode 100644 index f218135f..00000000 --- a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/ENS.d.ts +++ /dev/null @@ -1,253 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../common"; -export interface ENSInterface extends Interface { - getFunction(nameOrSignature: "isApprovedForAll" | "owner" | "recordExists" | "resolver" | "setApprovalForAll" | "setOwner" | "setRecord" | "setResolver" | "setSubnodeOwner" | "setSubnodeRecord" | "setTTL" | "ttl"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "ApprovalForAll" | "NewOwner" | "NewResolver" | "NewTTL" | "Transfer"): EventFragment; - encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "owner", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "recordExists", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "resolver", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; - encodeFunctionData(functionFragment: "setOwner", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "setRecord", values: [BytesLike, AddressLike, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "setResolver", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "setSubnodeOwner", values: [BytesLike, BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "setSubnodeRecord", values: [BytesLike, BytesLike, AddressLike, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "setTTL", values: [BytesLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "ttl", values: [BytesLike]): string; - decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "recordExists", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "resolver", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setOwner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setRecord", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setResolver", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setSubnodeOwner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setSubnodeRecord", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setTTL", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ttl", data: BytesLike): Result; -} -export declare namespace ApprovalForAllEvent { - type InputTuple = [ - owner: AddressLike, - operator: AddressLike, - approved: boolean - ]; - type OutputTuple = [ - owner: string, - operator: string, - approved: boolean - ]; - interface OutputObject { - owner: string; - operator: string; - approved: boolean; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NewOwnerEvent { - type InputTuple = [ - node: BytesLike, - label: BytesLike, - owner: AddressLike - ]; - type OutputTuple = [node: string, label: string, owner: string]; - interface OutputObject { - node: string; - label: string; - owner: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NewResolverEvent { - type InputTuple = [node: BytesLike, resolver: AddressLike]; - type OutputTuple = [node: string, resolver: string]; - interface OutputObject { - node: string; - resolver: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NewTTLEvent { - type InputTuple = [node: BytesLike, ttl: BigNumberish]; - type OutputTuple = [node: string, ttl: bigint]; - interface OutputObject { - node: string; - ttl: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferEvent { - type InputTuple = [node: BytesLike, owner: AddressLike]; - type OutputTuple = [node: string, owner: string]; - interface OutputObject { - node: string; - owner: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface ENS extends BaseContract { - connect(runner?: ContractRunner | null): ENS; - waitForDeployment(): Promise; - interface: ENSInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - isApprovedForAll: TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - owner: TypedContractMethod<[node: BytesLike], [string], "view">; - recordExists: TypedContractMethod<[node: BytesLike], [boolean], "view">; - resolver: TypedContractMethod<[node: BytesLike], [string], "view">; - setApprovalForAll: TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - setOwner: TypedContractMethod<[ - node: BytesLike, - owner: AddressLike - ], [ - void - ], "nonpayable">; - setRecord: TypedContractMethod<[ - node: BytesLike, - owner: AddressLike, - resolver: AddressLike, - ttl: BigNumberish - ], [ - void - ], "nonpayable">; - setResolver: TypedContractMethod<[ - node: BytesLike, - resolver: AddressLike - ], [ - void - ], "nonpayable">; - setSubnodeOwner: TypedContractMethod<[ - node: BytesLike, - label: BytesLike, - owner: AddressLike - ], [ - string - ], "nonpayable">; - setSubnodeRecord: TypedContractMethod<[ - node: BytesLike, - label: BytesLike, - owner: AddressLike, - resolver: AddressLike, - ttl: BigNumberish - ], [ - void - ], "nonpayable">; - setTTL: TypedContractMethod<[ - node: BytesLike, - ttl: BigNumberish - ], [ - void - ], "nonpayable">; - ttl: TypedContractMethod<[node: BytesLike], [bigint], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "owner"): TypedContractMethod<[node: BytesLike], [string], "view">; - getFunction(nameOrSignature: "recordExists"): TypedContractMethod<[node: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "resolver"): TypedContractMethod<[node: BytesLike], [string], "view">; - getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setOwner"): TypedContractMethod<[ - node: BytesLike, - owner: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setRecord"): TypedContractMethod<[ - node: BytesLike, - owner: AddressLike, - resolver: AddressLike, - ttl: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setResolver"): TypedContractMethod<[ - node: BytesLike, - resolver: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setSubnodeOwner"): TypedContractMethod<[ - node: BytesLike, - label: BytesLike, - owner: AddressLike - ], [ - string - ], "nonpayable">; - getFunction(nameOrSignature: "setSubnodeRecord"): TypedContractMethod<[ - node: BytesLike, - label: BytesLike, - owner: AddressLike, - resolver: AddressLike, - ttl: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setTTL"): TypedContractMethod<[ - node: BytesLike, - ttl: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "ttl"): TypedContractMethod<[node: BytesLike], [bigint], "view">; - getEvent(key: "ApprovalForAll"): TypedContractEvent; - getEvent(key: "NewOwner"): TypedContractEvent; - getEvent(key: "NewResolver"): TypedContractEvent; - getEvent(key: "NewTTL"): TypedContractEvent; - getEvent(key: "Transfer"): TypedContractEvent; - filters: { - "ApprovalForAll(address,address,bool)": TypedContractEvent; - ApprovalForAll: TypedContractEvent; - "NewOwner(bytes32,bytes32,address)": TypedContractEvent; - NewOwner: TypedContractEvent; - "NewResolver(bytes32,address)": TypedContractEvent; - NewResolver: TypedContractEvent; - "NewTTL(bytes32,uint64)": TypedContractEvent; - NewTTL: TypedContractEvent; - "Transfer(bytes32,address)": TypedContractEvent; - Transfer: TypedContractEvent; - }; -} -//# sourceMappingURL=ENS.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/ENS.d.ts.map b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/ENS.d.ts.map deleted file mode 100644 index 87289e2c..00000000 --- a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/ENS.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ENS.d.ts","sourceRoot":"","sources":["../../../../../types/contracts/@ens/LegacyETHRegistrarController.sol/ENS.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,aAAa,EACb,WAAW,EACX,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,mBAAmB,EACnB,aAAa,EACb,mBAAmB,EACpB,MAAM,iBAAiB,CAAC;AAEzB,MAAM,WAAW,YAAa,SAAQ,SAAS;IAC7C,WAAW,CACT,eAAe,EACX,kBAAkB,GAClB,OAAO,GACP,cAAc,GACd,UAAU,GACV,mBAAmB,GACnB,UAAU,GACV,WAAW,GACX,aAAa,GACb,iBAAiB,GACjB,kBAAkB,GAClB,QAAQ,GACR,KAAK,GACR,gBAAgB,CAAC;IAEpB,QAAQ,CACN,sBAAsB,EAClB,gBAAgB,GAChB,UAAU,GACV,aAAa,GACb,QAAQ,GACR,UAAU,GACb,aAAa,CAAC;IAEjB,kBAAkB,CAChB,gBAAgB,EAAE,kBAAkB,EACpC,MAAM,EAAE,CAAC,WAAW,EAAE,WAAW,CAAC,GACjC,MAAM,CAAC;IACV,kBAAkB,CAAC,gBAAgB,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC;IAC3E,kBAAkB,CAChB,gBAAgB,EAAE,cAAc,EAChC,MAAM,EAAE,CAAC,SAAS,CAAC,GAClB,MAAM,CAAC;IACV,kBAAkB,CAAC,gBAAgB,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC;IAC9E,kBAAkB,CAChB,gBAAgB,EAAE,mBAAmB,EACrC,MAAM,EAAE,CAAC,WAAW,EAAE,OAAO,CAAC,GAC7B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,UAAU,EAC5B,MAAM,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC,GAC/B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,WAAW,EAC7B,MAAM,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,CAAC,GAC1D,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,aAAa,EAC/B,MAAM,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC,GAC/B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,iBAAiB,EACnC,MAAM,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,WAAW,CAAC,GAC1C,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,kBAAkB,EACpC,MAAM,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,CAAC,GACrE,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,QAAQ,EAC1B,MAAM,EAAE,CAAC,SAAS,EAAE,YAAY,CAAC,GAChC,MAAM,CAAC;IACV,kBAAkB,CAAC,gBAAgB,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC;IAEzE,oBAAoB,CAClB,gBAAgB,EAAE,kBAAkB,EACpC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IACzE,oBAAoB,CAClB,gBAAgB,EAAE,cAAc,EAChC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC5E,oBAAoB,CAClB,gBAAgB,EAAE,mBAAmB,EACrC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC5E,oBAAoB,CAAC,gBAAgB,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC7E,oBAAoB,CAClB,gBAAgB,EAAE,aAAa,EAC/B,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,iBAAiB,EACnC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,kBAAkB,EACpC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC1E,oBAAoB,CAAC,gBAAgB,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;CACxE;AAED,yBAAiB,mBAAmB,CAAC;IACnC,KAAY,UAAU,GAAG;QACvB,KAAK,EAAE,WAAW;QAClB,QAAQ,EAAE,WAAW;QACrB,QAAQ,EAAE,OAAO;KAClB,CAAC;IACF,KAAY,WAAW,GAAG;QACxB,KAAK,EAAE,MAAM;QACb,QAAQ,EAAE,MAAM;QAChB,QAAQ,EAAE,OAAO;KAClB,CAAC;IACF,UAAiB,YAAY;QAC3B,KAAK,EAAE,MAAM,CAAC;QACd,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,OAAO,CAAC;KACnB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,aAAa,CAAC;IAC7B,KAAY,UAAU,GAAG;QACvB,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,SAAS;QAChB,KAAK,EAAE,WAAW;KACnB,CAAC;IACF,KAAY,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IACvE,UAAiB,YAAY;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;KACf;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,gBAAgB,CAAC;IAChC,KAAY,UAAU,GAAG,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;IAClE,KAAY,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;IAC3D,UAAiB,YAAY;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;KAClB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,WAAW,CAAC;IAC3B,KAAY,UAAU,GAAG,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,YAAY,CAAC,CAAC;IAC9D,KAAY,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;IACtD,UAAiB,YAAY;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,GAAG,EAAE,MAAM,CAAC;KACb;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,aAAa,CAAC;IAC7B,KAAY,UAAU,GAAG,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC;IAC/D,KAAY,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IACxD,UAAiB,YAAY;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;KACf;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,MAAM,WAAW,GAAI,SAAQ,YAAY;IACvC,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,GAAG,CAAC;IAC7C,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,YAAY,CAAC;IAExB,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,gBAAgB,EAAE,mBAAmB,CACnC;QAAC,KAAK,EAAE,WAAW;QAAE,QAAQ,EAAE,WAAW;KAAC,EAC3C;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,KAAK,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEhE,YAAY,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IAExE,QAAQ,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEnE,iBAAiB,EAAE,mBAAmB,CACpC;QAAC,QAAQ,EAAE,WAAW;QAAE,QAAQ,EAAE,OAAO;KAAC,EAC1C;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,QAAQ,EAAE,mBAAmB,CAC3B;QAAC,IAAI,EAAE,SAAS;QAAE,KAAK,EAAE,WAAW;KAAC,EACrC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,SAAS,EAAE,mBAAmB,CAC5B;QACE,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,WAAW;QAClB,QAAQ,EAAE,WAAW;QACrB,GAAG,EAAE,YAAY;KAClB,EACD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,WAAW,EAAE,mBAAmB,CAC9B;QAAC,IAAI,EAAE,SAAS;QAAE,QAAQ,EAAE,WAAW;KAAC,EACxC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,eAAe,EAAE,mBAAmB,CAClC;QAAC,IAAI,EAAE,SAAS;QAAE,KAAK,EAAE,SAAS;QAAE,KAAK,EAAE,WAAW;KAAC,EACvD;QAAC,MAAM;KAAC,EACR,YAAY,CACb,CAAC;IAEF,gBAAgB,EAAE,mBAAmB,CACnC;QACE,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,SAAS;QAChB,KAAK,EAAE,WAAW;QAClB,QAAQ,EAAE,WAAW;QACrB,GAAG,EAAE,YAAY;KAClB,EACD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,MAAM,EAAE,mBAAmB,CACzB;QAAC,IAAI,EAAE,SAAS;QAAE,GAAG,EAAE,YAAY;KAAC,EACpC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,GAAG,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAE9D,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,WAAW,CACT,eAAe,EAAE,kBAAkB,GAClC,mBAAmB,CACpB;QAAC,KAAK,EAAE,WAAW;QAAE,QAAQ,EAAE,WAAW;KAAC,EAC3C;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,OAAO,GACvB,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC5D,WAAW,CACT,eAAe,EAAE,cAAc,GAC9B,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IAC7D,WAAW,CACT,eAAe,EAAE,UAAU,GAC1B,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC5D,WAAW,CACT,eAAe,EAAE,mBAAmB,GACnC,mBAAmB,CACpB;QAAC,QAAQ,EAAE,WAAW;QAAE,QAAQ,EAAE,OAAO;KAAC,EAC1C;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,UAAU,GAC1B,mBAAmB,CACpB;QAAC,IAAI,EAAE,SAAS;QAAE,KAAK,EAAE,WAAW;KAAC,EACrC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,WAAW,GAC3B,mBAAmB,CACpB;QACE,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,WAAW;QAClB,QAAQ,EAAE,WAAW;QACrB,GAAG,EAAE,YAAY;KAClB,EACD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,aAAa,GAC7B,mBAAmB,CACpB;QAAC,IAAI,EAAE,SAAS;QAAE,QAAQ,EAAE,WAAW;KAAC,EACxC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,iBAAiB,GACjC,mBAAmB,CACpB;QAAC,IAAI,EAAE,SAAS;QAAE,KAAK,EAAE,SAAS;QAAE,KAAK,EAAE,WAAW;KAAC,EACvD;QAAC,MAAM;KAAC,EACR,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,kBAAkB,GAClC,mBAAmB,CACpB;QACE,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,SAAS;QAChB,KAAK,EAAE,WAAW;QAClB,QAAQ,EAAE,WAAW;QACrB,GAAG,EAAE,YAAY;KAClB,EACD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,QAAQ,GACxB,mBAAmB,CACpB;QAAC,IAAI,EAAE,SAAS;QAAE,GAAG,EAAE,YAAY;KAAC,EACpC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,KAAK,GACrB,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAE5D,QAAQ,CACN,GAAG,EAAE,gBAAgB,GACpB,kBAAkB,CACnB,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,UAAU,GACd,kBAAkB,CACnB,aAAa,CAAC,UAAU,EACxB,aAAa,CAAC,WAAW,EACzB,aAAa,CAAC,YAAY,CAC3B,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,aAAa,GACjB,kBAAkB,CACnB,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,QAAQ,GACZ,kBAAkB,CACnB,WAAW,CAAC,UAAU,EACtB,WAAW,CAAC,WAAW,EACvB,WAAW,CAAC,YAAY,CACzB,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,UAAU,GACd,kBAAkB,CACnB,aAAa,CAAC,UAAU,EACxB,aAAa,CAAC,WAAW,EACzB,aAAa,CAAC,YAAY,CAC3B,CAAC;IAEF,OAAO,EAAE;QACP,sCAAsC,EAAE,kBAAkB,CACxD,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;QACF,cAAc,EAAE,kBAAkB,CAChC,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;QAEF,mCAAmC,EAAE,kBAAkB,CACrD,aAAa,CAAC,UAAU,EACxB,aAAa,CAAC,WAAW,EACzB,aAAa,CAAC,YAAY,CAC3B,CAAC;QACF,QAAQ,EAAE,kBAAkB,CAC1B,aAAa,CAAC,UAAU,EACxB,aAAa,CAAC,WAAW,EACzB,aAAa,CAAC,YAAY,CAC3B,CAAC;QAEF,8BAA8B,EAAE,kBAAkB,CAChD,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QACF,WAAW,EAAE,kBAAkB,CAC7B,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QAEF,wBAAwB,EAAE,kBAAkB,CAC1C,WAAW,CAAC,UAAU,EACtB,WAAW,CAAC,WAAW,EACvB,WAAW,CAAC,YAAY,CACzB,CAAC;QACF,MAAM,EAAE,kBAAkB,CACxB,WAAW,CAAC,UAAU,EACtB,WAAW,CAAC,WAAW,EACvB,WAAW,CAAC,YAAY,CACzB,CAAC;QAEF,2BAA2B,EAAE,kBAAkB,CAC7C,aAAa,CAAC,UAAU,EACxB,aAAa,CAAC,WAAW,EACzB,aAAa,CAAC,YAAY,CAC3B,CAAC;QACF,QAAQ,EAAE,kBAAkB,CAC1B,aAAa,CAAC,UAAU,EACxB,aAAa,CAAC,WAAW,EACzB,aAAa,CAAC,YAAY,CAC3B,CAAC;KACH,CAAC;CACH"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/ENS.js b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/ENS.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/ENS.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/IERC165.d.ts b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/IERC165.d.ts deleted file mode 100644 index f83ccf87..00000000 --- a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/IERC165.d.ts +++ /dev/null @@ -1,30 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../common"; -export interface IERC165Interface extends Interface { - getFunction(nameOrSignature: "supportsInterface"): FunctionFragment; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; -} -export interface IERC165 extends BaseContract { - connect(runner?: ContractRunner | null): IERC165; - waitForDeployment(): Promise; - interface: IERC165Interface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - filters: {}; -} -//# sourceMappingURL=IERC165.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/IERC165.d.ts.map b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/IERC165.d.ts.map deleted file mode 100644 index c4e4d394..00000000 --- a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/IERC165.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC165.d.ts","sourceRoot":"","sources":["../../../../../types/contracts/@ens/LegacyETHRegistrarController.sol/IERC165.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/IERC165.js b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/IERC165.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/IERC165.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/IERC721.d.ts b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/IERC721.d.ts deleted file mode 100644 index e15939c3..00000000 --- a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/IERC721.d.ts +++ /dev/null @@ -1,200 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../common"; -export interface IERC721Interface extends Interface { - getFunction(nameOrSignature: "approve" | "balanceOf" | "getApproved" | "isApprovedForAll" | "ownerOf" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "setApprovalForAll" | "supportsInterface" | "transferFrom"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "Transfer"): EventFragment; - encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; - decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; -} -export declare namespace ApprovalEvent { - type InputTuple = [ - owner: AddressLike, - approved: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [owner: string, approved: string, tokenId: bigint]; - interface OutputObject { - owner: string; - approved: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ApprovalForAllEvent { - type InputTuple = [ - owner: AddressLike, - operator: AddressLike, - approved: boolean - ]; - type OutputTuple = [ - owner: string, - operator: string, - approved: boolean - ]; - interface OutputObject { - owner: string; - operator: string; - approved: boolean; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferEvent { - type InputTuple = [ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [from: string, to: string, tokenId: bigint]; - interface OutputObject { - from: string; - to: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface IERC721 extends BaseContract { - connect(runner?: ContractRunner | null): IERC721; - waitForDeployment(): Promise; - interface: IERC721Interface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - approve: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; - getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - isApprovedForAll: TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - setApprovalForAll: TypedContractMethod<[ - operator: AddressLike, - _approved: boolean - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - transferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "approve"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; - getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ - operator: AddressLike, - _approved: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getEvent(key: "Approval"): TypedContractEvent; - getEvent(key: "ApprovalForAll"): TypedContractEvent; - getEvent(key: "Transfer"): TypedContractEvent; - filters: { - "Approval(address,address,uint256)": TypedContractEvent; - Approval: TypedContractEvent; - "ApprovalForAll(address,address,bool)": TypedContractEvent; - ApprovalForAll: TypedContractEvent; - "Transfer(address,address,uint256)": TypedContractEvent; - Transfer: TypedContractEvent; - }; -} -//# sourceMappingURL=IERC721.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/IERC721.d.ts.map b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/IERC721.d.ts.map deleted file mode 100644 index 9b6075cf..00000000 --- a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/IERC721.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC721.d.ts","sourceRoot":"","sources":["../../../../../types/contracts/@ens/LegacyETHRegistrarController.sol/IERC721.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/IERC721.js b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/IERC721.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/IERC721.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController.d.ts b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController.d.ts deleted file mode 100644 index 917f59e3..00000000 --- a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController.d.ts +++ /dev/null @@ -1,303 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../common"; -export interface LegacyETHRegistrarControllerInterface extends Interface { - getFunction(nameOrSignature: "MIN_REGISTRATION_DURATION" | "available" | "commit" | "commitments" | "isOwner" | "makeCommitment" | "makeCommitmentWithConfig" | "maxCommitmentAge" | "minCommitmentAge" | "owner" | "register" | "registerWithConfig" | "renew" | "renounceOwnership" | "rentPrice" | "setCommitmentAges" | "setPriceOracle" | "supportsInterface" | "transferOwnership" | "valid" | "withdraw"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "NameRegistered" | "NameRenewed" | "NewPriceOracle" | "OwnershipTransferred"): EventFragment; - encodeFunctionData(functionFragment: "MIN_REGISTRATION_DURATION", values?: undefined): string; - encodeFunctionData(functionFragment: "available", values: [string]): string; - encodeFunctionData(functionFragment: "commit", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "commitments", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "isOwner", values?: undefined): string; - encodeFunctionData(functionFragment: "makeCommitment", values: [string, AddressLike, BytesLike]): string; - encodeFunctionData(functionFragment: "makeCommitmentWithConfig", values: [string, AddressLike, BytesLike, AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "maxCommitmentAge", values?: undefined): string; - encodeFunctionData(functionFragment: "minCommitmentAge", values?: undefined): string; - encodeFunctionData(functionFragment: "owner", values?: undefined): string; - encodeFunctionData(functionFragment: "register", values: [string, AddressLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "registerWithConfig", values: [ - string, - AddressLike, - BigNumberish, - BytesLike, - AddressLike, - AddressLike - ]): string; - encodeFunctionData(functionFragment: "renew", values: [string, BigNumberish]): string; - encodeFunctionData(functionFragment: "renounceOwnership", values?: undefined): string; - encodeFunctionData(functionFragment: "rentPrice", values: [string, BigNumberish]): string; - encodeFunctionData(functionFragment: "setCommitmentAges", values: [BigNumberish, BigNumberish]): string; - encodeFunctionData(functionFragment: "setPriceOracle", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "transferOwnership", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "valid", values: [string]): string; - encodeFunctionData(functionFragment: "withdraw", values?: undefined): string; - decodeFunctionResult(functionFragment: "MIN_REGISTRATION_DURATION", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "available", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "commit", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "commitments", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isOwner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "makeCommitment", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "makeCommitmentWithConfig", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "maxCommitmentAge", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "minCommitmentAge", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "register", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "registerWithConfig", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renew", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceOwnership", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "rentPrice", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setCommitmentAges", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setPriceOracle", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "valid", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "withdraw", data: BytesLike): Result; -} -export declare namespace NameRegisteredEvent { - type InputTuple = [ - name: string, - label: BytesLike, - owner: AddressLike, - cost: BigNumberish, - expires: BigNumberish - ]; - type OutputTuple = [ - name: string, - label: string, - owner: string, - cost: bigint, - expires: bigint - ]; - interface OutputObject { - name: string; - label: string; - owner: string; - cost: bigint; - expires: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NameRenewedEvent { - type InputTuple = [ - name: string, - label: BytesLike, - cost: BigNumberish, - expires: BigNumberish - ]; - type OutputTuple = [ - name: string, - label: string, - cost: bigint, - expires: bigint - ]; - interface OutputObject { - name: string; - label: string; - cost: bigint; - expires: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NewPriceOracleEvent { - type InputTuple = [oracle: AddressLike]; - type OutputTuple = [oracle: string]; - interface OutputObject { - oracle: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace OwnershipTransferredEvent { - type InputTuple = [previousOwner: AddressLike, newOwner: AddressLike]; - type OutputTuple = [previousOwner: string, newOwner: string]; - interface OutputObject { - previousOwner: string; - newOwner: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface LegacyETHRegistrarController extends BaseContract { - connect(runner?: ContractRunner | null): LegacyETHRegistrarController; - waitForDeployment(): Promise; - interface: LegacyETHRegistrarControllerInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - MIN_REGISTRATION_DURATION: TypedContractMethod<[], [bigint], "view">; - available: TypedContractMethod<[name: string], [boolean], "view">; - commit: TypedContractMethod<[commitment: BytesLike], [void], "nonpayable">; - commitments: TypedContractMethod<[arg0: BytesLike], [bigint], "view">; - isOwner: TypedContractMethod<[], [boolean], "view">; - makeCommitment: TypedContractMethod<[ - name: string, - owner: AddressLike, - secret: BytesLike - ], [ - string - ], "view">; - makeCommitmentWithConfig: TypedContractMethod<[ - name: string, - owner: AddressLike, - secret: BytesLike, - resolver: AddressLike, - addr: AddressLike - ], [ - string - ], "view">; - maxCommitmentAge: TypedContractMethod<[], [bigint], "view">; - minCommitmentAge: TypedContractMethod<[], [bigint], "view">; - owner: TypedContractMethod<[], [string], "view">; - register: TypedContractMethod<[ - name: string, - owner: AddressLike, - duration: BigNumberish, - secret: BytesLike - ], [ - void - ], "payable">; - registerWithConfig: TypedContractMethod<[ - name: string, - owner: AddressLike, - duration: BigNumberish, - secret: BytesLike, - resolver: AddressLike, - addr: AddressLike - ], [ - void - ], "payable">; - renew: TypedContractMethod<[ - name: string, - duration: BigNumberish - ], [ - void - ], "payable">; - renounceOwnership: TypedContractMethod<[], [void], "nonpayable">; - rentPrice: TypedContractMethod<[ - name: string, - duration: BigNumberish - ], [ - bigint - ], "view">; - setCommitmentAges: TypedContractMethod<[ - _minCommitmentAge: BigNumberish, - _maxCommitmentAge: BigNumberish - ], [ - void - ], "nonpayable">; - setPriceOracle: TypedContractMethod<[ - _prices: AddressLike - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceID: BytesLike - ], [ - boolean - ], "view">; - transferOwnership: TypedContractMethod<[ - newOwner: AddressLike - ], [ - void - ], "nonpayable">; - valid: TypedContractMethod<[name: string], [boolean], "view">; - withdraw: TypedContractMethod<[], [void], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "MIN_REGISTRATION_DURATION"): TypedContractMethod<[], [bigint], "view">; - getFunction(nameOrSignature: "available"): TypedContractMethod<[name: string], [boolean], "view">; - getFunction(nameOrSignature: "commit"): TypedContractMethod<[commitment: BytesLike], [void], "nonpayable">; - getFunction(nameOrSignature: "commitments"): TypedContractMethod<[arg0: BytesLike], [bigint], "view">; - getFunction(nameOrSignature: "isOwner"): TypedContractMethod<[], [boolean], "view">; - getFunction(nameOrSignature: "makeCommitment"): TypedContractMethod<[ - name: string, - owner: AddressLike, - secret: BytesLike - ], [ - string - ], "view">; - getFunction(nameOrSignature: "makeCommitmentWithConfig"): TypedContractMethod<[ - name: string, - owner: AddressLike, - secret: BytesLike, - resolver: AddressLike, - addr: AddressLike - ], [ - string - ], "view">; - getFunction(nameOrSignature: "maxCommitmentAge"): TypedContractMethod<[], [bigint], "view">; - getFunction(nameOrSignature: "minCommitmentAge"): TypedContractMethod<[], [bigint], "view">; - getFunction(nameOrSignature: "owner"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "register"): TypedContractMethod<[ - name: string, - owner: AddressLike, - duration: BigNumberish, - secret: BytesLike - ], [ - void - ], "payable">; - getFunction(nameOrSignature: "registerWithConfig"): TypedContractMethod<[ - name: string, - owner: AddressLike, - duration: BigNumberish, - secret: BytesLike, - resolver: AddressLike, - addr: AddressLike - ], [ - void - ], "payable">; - getFunction(nameOrSignature: "renew"): TypedContractMethod<[ - name: string, - duration: BigNumberish - ], [ - void - ], "payable">; - getFunction(nameOrSignature: "renounceOwnership"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "rentPrice"): TypedContractMethod<[ - name: string, - duration: BigNumberish - ], [ - bigint - ], "view">; - getFunction(nameOrSignature: "setCommitmentAges"): TypedContractMethod<[ - _minCommitmentAge: BigNumberish, - _maxCommitmentAge: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setPriceOracle"): TypedContractMethod<[_prices: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceID: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "transferOwnership"): TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "valid"): TypedContractMethod<[name: string], [boolean], "view">; - getFunction(nameOrSignature: "withdraw"): TypedContractMethod<[], [void], "nonpayable">; - getEvent(key: "NameRegistered"): TypedContractEvent; - getEvent(key: "NameRenewed"): TypedContractEvent; - getEvent(key: "NewPriceOracle"): TypedContractEvent; - getEvent(key: "OwnershipTransferred"): TypedContractEvent; - filters: { - "NameRegistered(string,bytes32,address,uint256,uint256)": TypedContractEvent; - NameRegistered: TypedContractEvent; - "NameRenewed(string,bytes32,uint256,uint256)": TypedContractEvent; - NameRenewed: TypedContractEvent; - "NewPriceOracle(address)": TypedContractEvent; - NewPriceOracle: TypedContractEvent; - "OwnershipTransferred(address,address)": TypedContractEvent; - OwnershipTransferred: TypedContractEvent; - }; -} -//# sourceMappingURL=LegacyETHRegistrarController.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController.d.ts.map b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController.d.ts.map deleted file mode 100644 index 065e1239..00000000 --- a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"LegacyETHRegistrarController.d.ts","sourceRoot":"","sources":["../../../../../types/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController.js b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/Ownable.d.ts b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/Ownable.d.ts deleted file mode 100644 index dd19eb44..00000000 --- a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/Ownable.d.ts +++ /dev/null @@ -1,59 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../common"; -export interface OwnableInterface extends Interface { - getFunction(nameOrSignature: "isOwner" | "owner" | "renounceOwnership" | "transferOwnership"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "OwnershipTransferred"): EventFragment; - encodeFunctionData(functionFragment: "isOwner", values?: undefined): string; - encodeFunctionData(functionFragment: "owner", values?: undefined): string; - encodeFunctionData(functionFragment: "renounceOwnership", values?: undefined): string; - encodeFunctionData(functionFragment: "transferOwnership", values: [AddressLike]): string; - decodeFunctionResult(functionFragment: "isOwner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceOwnership", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result; -} -export declare namespace OwnershipTransferredEvent { - type InputTuple = [previousOwner: AddressLike, newOwner: AddressLike]; - type OutputTuple = [previousOwner: string, newOwner: string]; - interface OutputObject { - previousOwner: string; - newOwner: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface Ownable extends BaseContract { - connect(runner?: ContractRunner | null): Ownable; - waitForDeployment(): Promise; - interface: OwnableInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - isOwner: TypedContractMethod<[], [boolean], "view">; - owner: TypedContractMethod<[], [string], "view">; - renounceOwnership: TypedContractMethod<[], [void], "nonpayable">; - transferOwnership: TypedContractMethod<[ - newOwner: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "isOwner"): TypedContractMethod<[], [boolean], "view">; - getFunction(nameOrSignature: "owner"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "renounceOwnership"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "transferOwnership"): TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">; - getEvent(key: "OwnershipTransferred"): TypedContractEvent; - filters: { - "OwnershipTransferred(address,address)": TypedContractEvent; - OwnershipTransferred: TypedContractEvent; - }; -} -//# sourceMappingURL=Ownable.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/Ownable.d.ts.map b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/Ownable.d.ts.map deleted file mode 100644 index 57bca93c..00000000 --- a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/Ownable.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Ownable.d.ts","sourceRoot":"","sources":["../../../../../types/contracts/@ens/LegacyETHRegistrarController.sol/Ownable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/Ownable.js b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/Ownable.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/Ownable.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle.d.ts b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle.d.ts deleted file mode 100644 index c50b6966..00000000 --- a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle.d.ts +++ /dev/null @@ -1,38 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../common"; -export interface PriceOracleInterface extends Interface { - getFunction(nameOrSignature: "price"): FunctionFragment; - encodeFunctionData(functionFragment: "price", values: [string, BigNumberish, BigNumberish]): string; - decodeFunctionResult(functionFragment: "price", data: BytesLike): Result; -} -export interface PriceOracle extends BaseContract { - connect(runner?: ContractRunner | null): PriceOracle; - waitForDeployment(): Promise; - interface: PriceOracleInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - price: TypedContractMethod<[ - name: string, - expires: BigNumberish, - duration: BigNumberish - ], [ - bigint - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "price"): TypedContractMethod<[ - name: string, - expires: BigNumberish, - duration: BigNumberish - ], [ - bigint - ], "view">; - filters: {}; -} -//# sourceMappingURL=PriceOracle.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle.d.ts.map b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle.d.ts.map deleted file mode 100644 index cbd55ed9..00000000 --- a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"PriceOracle.d.ts","sourceRoot":"","sources":["../../../../../types/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle.js b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/Resolver.d.ts b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/Resolver.d.ts deleted file mode 100644 index 531f6fe3..00000000 --- a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/Resolver.d.ts +++ /dev/null @@ -1,415 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../common"; -export interface ResolverInterface extends Interface { - getFunction(nameOrSignature: "ABI" | "addr(bytes32)" | "addr(bytes32,uint256)" | "content" | "contenthash" | "dnsrr" | "interfaceImplementer" | "multihash" | "name" | "pubkey" | "setABI" | "setAddr(bytes32,uint256,bytes)" | "setAddr(bytes32,address)" | "setContent" | "setContenthash" | "setDnsrr" | "setInterface" | "setMultihash" | "setName" | "setPubkey" | "setText" | "supportsInterface" | "text"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "ABIChanged" | "AddrChanged" | "AddressChanged" | "ContentChanged" | "ContenthashChanged" | "NameChanged" | "PubkeyChanged" | "TextChanged"): EventFragment; - encodeFunctionData(functionFragment: "ABI", values: [BytesLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "addr(bytes32)", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "addr(bytes32,uint256)", values: [BytesLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "content", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "contenthash", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "dnsrr", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "interfaceImplementer", values: [BytesLike, BytesLike]): string; - encodeFunctionData(functionFragment: "multihash", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "name", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "pubkey", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "setABI", values: [BytesLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "setAddr(bytes32,uint256,bytes)", values: [BytesLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "setAddr(bytes32,address)", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "setContent", values: [BytesLike, BytesLike]): string; - encodeFunctionData(functionFragment: "setContenthash", values: [BytesLike, BytesLike]): string; - encodeFunctionData(functionFragment: "setDnsrr", values: [BytesLike, BytesLike]): string; - encodeFunctionData(functionFragment: "setInterface", values: [BytesLike, BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "setMultihash", values: [BytesLike, BytesLike]): string; - encodeFunctionData(functionFragment: "setName", values: [BytesLike, string]): string; - encodeFunctionData(functionFragment: "setPubkey", values: [BytesLike, BytesLike, BytesLike]): string; - encodeFunctionData(functionFragment: "setText", values: [BytesLike, string, string]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "text", values: [BytesLike, string]): string; - decodeFunctionResult(functionFragment: "ABI", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "addr(bytes32)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "addr(bytes32,uint256)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "content", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "contenthash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "dnsrr", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "interfaceImplementer", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "multihash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "pubkey", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setABI", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setAddr(bytes32,uint256,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setAddr(bytes32,address)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setContent", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setContenthash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setDnsrr", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setMultihash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setName", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setPubkey", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setText", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "text", data: BytesLike): Result; -} -export declare namespace ABIChangedEvent { - type InputTuple = [node: BytesLike, contentType: BigNumberish]; - type OutputTuple = [node: string, contentType: bigint]; - interface OutputObject { - node: string; - contentType: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace AddrChangedEvent { - type InputTuple = [node: BytesLike, a: AddressLike]; - type OutputTuple = [node: string, a: string]; - interface OutputObject { - node: string; - a: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace AddressChangedEvent { - type InputTuple = [ - node: BytesLike, - coinType: BigNumberish, - newAddress: BytesLike - ]; - type OutputTuple = [ - node: string, - coinType: bigint, - newAddress: string - ]; - interface OutputObject { - node: string; - coinType: bigint; - newAddress: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ContentChangedEvent { - type InputTuple = [node: BytesLike, hash: BytesLike]; - type OutputTuple = [node: string, hash: string]; - interface OutputObject { - node: string; - hash: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ContenthashChangedEvent { - type InputTuple = [node: BytesLike, hash: BytesLike]; - type OutputTuple = [node: string, hash: string]; - interface OutputObject { - node: string; - hash: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NameChangedEvent { - type InputTuple = [node: BytesLike, name: string]; - type OutputTuple = [node: string, name: string]; - interface OutputObject { - node: string; - name: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace PubkeyChangedEvent { - type InputTuple = [node: BytesLike, x: BytesLike, y: BytesLike]; - type OutputTuple = [node: string, x: string, y: string]; - interface OutputObject { - node: string; - x: string; - y: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TextChangedEvent { - type InputTuple = [node: BytesLike, indexedKey: string, key: string]; - type OutputTuple = [node: string, indexedKey: string, key: string]; - interface OutputObject { - node: string; - indexedKey: string; - key: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface Resolver extends BaseContract { - connect(runner?: ContractRunner | null): Resolver; - waitForDeployment(): Promise; - interface: ResolverInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - ABI: TypedContractMethod<[ - node: BytesLike, - contentTypes: BigNumberish - ], [ - [bigint, string] - ], "view">; - "addr(bytes32)": TypedContractMethod<[node: BytesLike], [string], "view">; - "addr(bytes32,uint256)": TypedContractMethod<[ - node: BytesLike, - coinType: BigNumberish - ], [ - string - ], "view">; - content: TypedContractMethod<[node: BytesLike], [string], "view">; - contenthash: TypedContractMethod<[node: BytesLike], [string], "view">; - dnsrr: TypedContractMethod<[node: BytesLike], [string], "view">; - interfaceImplementer: TypedContractMethod<[ - node: BytesLike, - interfaceID: BytesLike - ], [ - string - ], "view">; - multihash: TypedContractMethod<[node: BytesLike], [string], "view">; - name: TypedContractMethod<[node: BytesLike], [string], "view">; - pubkey: TypedContractMethod<[ - node: BytesLike - ], [ - [string, string] & { - x: string; - y: string; - } - ], "view">; - setABI: TypedContractMethod<[ - node: BytesLike, - contentType: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - "setAddr(bytes32,uint256,bytes)": TypedContractMethod<[ - node: BytesLike, - coinType: BigNumberish, - a: BytesLike - ], [ - void - ], "nonpayable">; - "setAddr(bytes32,address)": TypedContractMethod<[ - node: BytesLike, - addr: AddressLike - ], [ - void - ], "nonpayable">; - setContent: TypedContractMethod<[ - node: BytesLike, - hash: BytesLike - ], [ - void - ], "nonpayable">; - setContenthash: TypedContractMethod<[ - node: BytesLike, - hash: BytesLike - ], [ - void - ], "nonpayable">; - setDnsrr: TypedContractMethod<[ - node: BytesLike, - data: BytesLike - ], [ - void - ], "nonpayable">; - setInterface: TypedContractMethod<[ - node: BytesLike, - interfaceID: BytesLike, - implementer: AddressLike - ], [ - void - ], "nonpayable">; - setMultihash: TypedContractMethod<[ - node: BytesLike, - hash: BytesLike - ], [ - void - ], "nonpayable">; - setName: TypedContractMethod<[ - node: BytesLike, - _name: string - ], [ - void - ], "nonpayable">; - setPubkey: TypedContractMethod<[ - node: BytesLike, - x: BytesLike, - y: BytesLike - ], [ - void - ], "nonpayable">; - setText: TypedContractMethod<[ - node: BytesLike, - key: string, - value: string - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceID: BytesLike - ], [ - boolean - ], "view">; - text: TypedContractMethod<[node: BytesLike, key: string], [string], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "ABI"): TypedContractMethod<[ - node: BytesLike, - contentTypes: BigNumberish - ], [ - [bigint, string] - ], "view">; - getFunction(nameOrSignature: "addr(bytes32)"): TypedContractMethod<[node: BytesLike], [string], "view">; - getFunction(nameOrSignature: "addr(bytes32,uint256)"): TypedContractMethod<[ - node: BytesLike, - coinType: BigNumberish - ], [ - string - ], "view">; - getFunction(nameOrSignature: "content"): TypedContractMethod<[node: BytesLike], [string], "view">; - getFunction(nameOrSignature: "contenthash"): TypedContractMethod<[node: BytesLike], [string], "view">; - getFunction(nameOrSignature: "dnsrr"): TypedContractMethod<[node: BytesLike], [string], "view">; - getFunction(nameOrSignature: "interfaceImplementer"): TypedContractMethod<[ - node: BytesLike, - interfaceID: BytesLike - ], [ - string - ], "view">; - getFunction(nameOrSignature: "multihash"): TypedContractMethod<[node: BytesLike], [string], "view">; - getFunction(nameOrSignature: "name"): TypedContractMethod<[node: BytesLike], [string], "view">; - getFunction(nameOrSignature: "pubkey"): TypedContractMethod<[ - node: BytesLike - ], [ - [string, string] & { - x: string; - y: string; - } - ], "view">; - getFunction(nameOrSignature: "setABI"): TypedContractMethod<[ - node: BytesLike, - contentType: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setAddr(bytes32,uint256,bytes)"): TypedContractMethod<[ - node: BytesLike, - coinType: BigNumberish, - a: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setAddr(bytes32,address)"): TypedContractMethod<[ - node: BytesLike, - addr: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setContent"): TypedContractMethod<[ - node: BytesLike, - hash: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setContenthash"): TypedContractMethod<[ - node: BytesLike, - hash: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setDnsrr"): TypedContractMethod<[ - node: BytesLike, - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setInterface"): TypedContractMethod<[ - node: BytesLike, - interfaceID: BytesLike, - implementer: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setMultihash"): TypedContractMethod<[ - node: BytesLike, - hash: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setName"): TypedContractMethod<[ - node: BytesLike, - _name: string - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setPubkey"): TypedContractMethod<[ - node: BytesLike, - x: BytesLike, - y: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setText"): TypedContractMethod<[ - node: BytesLike, - key: string, - value: string - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceID: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "text"): TypedContractMethod<[node: BytesLike, key: string], [string], "view">; - getEvent(key: "ABIChanged"): TypedContractEvent; - getEvent(key: "AddrChanged"): TypedContractEvent; - getEvent(key: "AddressChanged"): TypedContractEvent; - getEvent(key: "ContentChanged"): TypedContractEvent; - getEvent(key: "ContenthashChanged"): TypedContractEvent; - getEvent(key: "NameChanged"): TypedContractEvent; - getEvent(key: "PubkeyChanged"): TypedContractEvent; - getEvent(key: "TextChanged"): TypedContractEvent; - filters: { - "ABIChanged(bytes32,uint256)": TypedContractEvent; - ABIChanged: TypedContractEvent; - "AddrChanged(bytes32,address)": TypedContractEvent; - AddrChanged: TypedContractEvent; - "AddressChanged(bytes32,uint256,bytes)": TypedContractEvent; - AddressChanged: TypedContractEvent; - "ContentChanged(bytes32,bytes32)": TypedContractEvent; - ContentChanged: TypedContractEvent; - "ContenthashChanged(bytes32,bytes)": TypedContractEvent; - ContenthashChanged: TypedContractEvent; - "NameChanged(bytes32,string)": TypedContractEvent; - NameChanged: TypedContractEvent; - "PubkeyChanged(bytes32,bytes32,bytes32)": TypedContractEvent; - PubkeyChanged: TypedContractEvent; - "TextChanged(bytes32,string,string)": TypedContractEvent; - TextChanged: TypedContractEvent; - }; -} -//# sourceMappingURL=Resolver.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/Resolver.d.ts.map b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/Resolver.d.ts.map deleted file mode 100644 index 3e39b499..00000000 --- a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/Resolver.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Resolver.d.ts","sourceRoot":"","sources":["../../../../../types/contracts/@ens/LegacyETHRegistrarController.sol/Resolver.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/Resolver.js b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/Resolver.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/Resolver.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/index.d.ts b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/index.d.ts deleted file mode 100644 index 4d05cbcd..00000000 --- a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/index.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -export type { BaseRegistrar } from "./BaseRegistrar"; -export type { ENS } from "./ENS"; -export type { IERC165 } from "./IERC165"; -export type { IERC721 } from "./IERC721"; -export type { LegacyETHRegistrarController } from "./LegacyETHRegistrarController"; -export type { Ownable } from "./Ownable"; -export type { PriceOracle } from "./PriceOracle"; -export type { Resolver } from "./Resolver"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/index.d.ts.map b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/index.d.ts.map deleted file mode 100644 index 85afe635..00000000 --- a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/contracts/@ens/LegacyETHRegistrarController.sol/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,YAAY,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AACjC,YAAY,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,YAAY,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,YAAY,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AACnF,YAAY,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,YAAY,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/index.js b/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@ens/LegacyETHRegistrarController.sol/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/dnssec/DNSRegistrar.d.ts b/dist/types/contracts/@ens/dnssec/DNSRegistrar.d.ts deleted file mode 100644 index ca4d5cca..00000000 --- a/dist/types/contracts/@ens/dnssec/DNSRegistrar.d.ts +++ /dev/null @@ -1,170 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../common"; -export declare namespace DNSSEC { - type RRSetWithSignatureStruct = { - rrset: BytesLike; - sig: BytesLike; - }; - type RRSetWithSignatureStructOutput = [rrset: string, sig: string] & { - rrset: string; - sig: string; - }; -} -export interface DNSRegistrarInterface extends Interface { - getFunction(nameOrSignature: "claim" | "ens" | "oracle" | "proveAndClaim" | "proveAndClaimWithResolver" | "setOracle" | "setPublicSuffixList" | "suffixes" | "supportsInterface"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Claim" | "NewOracle" | "NewPublicSuffixList"): EventFragment; - encodeFunctionData(functionFragment: "claim", values: [BytesLike, BytesLike]): string; - encodeFunctionData(functionFragment: "ens", values?: undefined): string; - encodeFunctionData(functionFragment: "oracle", values?: undefined): string; - encodeFunctionData(functionFragment: "proveAndClaim", values: [BytesLike, DNSSEC.RRSetWithSignatureStruct[], BytesLike]): string; - encodeFunctionData(functionFragment: "proveAndClaimWithResolver", values: [ - BytesLike, - DNSSEC.RRSetWithSignatureStruct[], - BytesLike, - AddressLike, - AddressLike - ]): string; - encodeFunctionData(functionFragment: "setOracle", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "setPublicSuffixList", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "suffixes", values?: undefined): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - decodeFunctionResult(functionFragment: "claim", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ens", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "oracle", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "proveAndClaim", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "proveAndClaimWithResolver", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setOracle", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setPublicSuffixList", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "suffixes", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; -} -export declare namespace ClaimEvent { - type InputTuple = [ - node: BytesLike, - owner: AddressLike, - dnsname: BytesLike - ]; - type OutputTuple = [node: string, owner: string, dnsname: string]; - interface OutputObject { - node: string; - owner: string; - dnsname: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NewOracleEvent { - type InputTuple = [oracle: AddressLike]; - type OutputTuple = [oracle: string]; - interface OutputObject { - oracle: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NewPublicSuffixListEvent { - type InputTuple = [suffixes: AddressLike]; - type OutputTuple = [suffixes: string]; - interface OutputObject { - suffixes: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface DNSRegistrar extends BaseContract { - connect(runner?: ContractRunner | null): DNSRegistrar; - waitForDeployment(): Promise; - interface: DNSRegistrarInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - claim: TypedContractMethod<[ - name: BytesLike, - proof: BytesLike - ], [ - void - ], "nonpayable">; - ens: TypedContractMethod<[], [string], "view">; - oracle: TypedContractMethod<[], [string], "view">; - proveAndClaim: TypedContractMethod<[ - name: BytesLike, - input: DNSSEC.RRSetWithSignatureStruct[], - proof: BytesLike - ], [ - void - ], "nonpayable">; - proveAndClaimWithResolver: TypedContractMethod<[ - name: BytesLike, - input: DNSSEC.RRSetWithSignatureStruct[], - proof: BytesLike, - resolver: AddressLike, - addr: AddressLike - ], [ - void - ], "nonpayable">; - setOracle: TypedContractMethod<[_dnssec: AddressLike], [void], "nonpayable">; - setPublicSuffixList: TypedContractMethod<[ - _suffixes: AddressLike - ], [ - void - ], "nonpayable">; - suffixes: TypedContractMethod<[], [string], "view">; - supportsInterface: TypedContractMethod<[ - interfaceID: BytesLike - ], [ - boolean - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "claim"): TypedContractMethod<[ - name: BytesLike, - proof: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "ens"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "oracle"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "proveAndClaim"): TypedContractMethod<[ - name: BytesLike, - input: DNSSEC.RRSetWithSignatureStruct[], - proof: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "proveAndClaimWithResolver"): TypedContractMethod<[ - name: BytesLike, - input: DNSSEC.RRSetWithSignatureStruct[], - proof: BytesLike, - resolver: AddressLike, - addr: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setOracle"): TypedContractMethod<[_dnssec: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "setPublicSuffixList"): TypedContractMethod<[_suffixes: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "suffixes"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceID: BytesLike], [boolean], "view">; - getEvent(key: "Claim"): TypedContractEvent; - getEvent(key: "NewOracle"): TypedContractEvent; - getEvent(key: "NewPublicSuffixList"): TypedContractEvent; - filters: { - "Claim(bytes32,address,bytes)": TypedContractEvent; - Claim: TypedContractEvent; - "NewOracle(address)": TypedContractEvent; - NewOracle: TypedContractEvent; - "NewPublicSuffixList(address)": TypedContractEvent; - NewPublicSuffixList: TypedContractEvent; - }; -} -//# sourceMappingURL=DNSRegistrar.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/DNSRegistrar.d.ts.map b/dist/types/contracts/@ens/dnssec/DNSRegistrar.d.ts.map deleted file mode 100644 index e3f26c7a..00000000 --- a/dist/types/contracts/@ens/dnssec/DNSRegistrar.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"DNSRegistrar.d.ts","sourceRoot":"","sources":["../../../../../types/contracts/@ens/dnssec/DNSRegistrar.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/DNSRegistrar.js b/dist/types/contracts/@ens/dnssec/DNSRegistrar.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@ens/dnssec/DNSRegistrar.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/dnssec/DNSSEC.d.ts b/dist/types/contracts/@ens/dnssec/DNSSEC.d.ts deleted file mode 100644 index c3006480..00000000 --- a/dist/types/contracts/@ens/dnssec/DNSSEC.d.ts +++ /dev/null @@ -1,189 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../common"; -export declare namespace DNSSEC { - type RRSetWithSignatureStruct = { - rrset: BytesLike; - sig: BytesLike; - }; - type RRSetWithSignatureStructOutput = [rrset: string, sig: string] & { - rrset: string; - sig: string; - }; -} -export interface DNSSECInterface extends Interface { - getFunction(nameOrSignature: "anchors" | "deleteRRSet" | "deleteRRSetNSEC3" | "rrdata" | "submitRRSet" | "submitRRSets"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "AlgorithmUpdated" | "DigestUpdated" | "NSEC3DigestUpdated" | "RRSetUpdated"): EventFragment; - encodeFunctionData(functionFragment: "anchors", values?: undefined): string; - encodeFunctionData(functionFragment: "deleteRRSet", values: [ - BigNumberish, - BytesLike, - DNSSEC.RRSetWithSignatureStruct, - BytesLike - ]): string; - encodeFunctionData(functionFragment: "deleteRRSetNSEC3", values: [ - BigNumberish, - BytesLike, - DNSSEC.RRSetWithSignatureStruct, - DNSSEC.RRSetWithSignatureStruct, - BytesLike - ]): string; - encodeFunctionData(functionFragment: "rrdata", values: [BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "submitRRSet", values: [DNSSEC.RRSetWithSignatureStruct, BytesLike]): string; - encodeFunctionData(functionFragment: "submitRRSets", values: [DNSSEC.RRSetWithSignatureStruct[], BytesLike]): string; - decodeFunctionResult(functionFragment: "anchors", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "deleteRRSet", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "deleteRRSetNSEC3", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "rrdata", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "submitRRSet", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "submitRRSets", data: BytesLike): Result; -} -export declare namespace AlgorithmUpdatedEvent { - type InputTuple = [id: BigNumberish, addr: AddressLike]; - type OutputTuple = [id: bigint, addr: string]; - interface OutputObject { - id: bigint; - addr: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace DigestUpdatedEvent { - type InputTuple = [id: BigNumberish, addr: AddressLike]; - type OutputTuple = [id: bigint, addr: string]; - interface OutputObject { - id: bigint; - addr: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NSEC3DigestUpdatedEvent { - type InputTuple = [id: BigNumberish, addr: AddressLike]; - type OutputTuple = [id: bigint, addr: string]; - interface OutputObject { - id: bigint; - addr: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RRSetUpdatedEvent { - type InputTuple = [name: BytesLike, rrset: BytesLike]; - type OutputTuple = [name: string, rrset: string]; - interface OutputObject { - name: string; - rrset: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface DNSSEC extends BaseContract { - connect(runner?: ContractRunner | null): DNSSEC; - waitForDeployment(): Promise; - interface: DNSSECInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - anchors: TypedContractMethod<[], [string], "view">; - deleteRRSet: TypedContractMethod<[ - deleteType: BigNumberish, - deleteName: BytesLike, - nsec: DNSSEC.RRSetWithSignatureStruct, - proof: BytesLike - ], [ - void - ], "nonpayable">; - deleteRRSetNSEC3: TypedContractMethod<[ - deleteType: BigNumberish, - deleteName: BytesLike, - closestEncloser: DNSSEC.RRSetWithSignatureStruct, - nextClosest: DNSSEC.RRSetWithSignatureStruct, - dnskey: BytesLike - ], [ - void - ], "nonpayable">; - rrdata: TypedContractMethod<[ - dnstype: BigNumberish, - name: BytesLike - ], [ - [bigint, bigint, string] - ], "view">; - submitRRSet: TypedContractMethod<[ - input: DNSSEC.RRSetWithSignatureStruct, - proof: BytesLike - ], [ - string - ], "nonpayable">; - submitRRSets: TypedContractMethod<[ - input: DNSSEC.RRSetWithSignatureStruct[], - proof: BytesLike - ], [ - string - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "anchors"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "deleteRRSet"): TypedContractMethod<[ - deleteType: BigNumberish, - deleteName: BytesLike, - nsec: DNSSEC.RRSetWithSignatureStruct, - proof: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "deleteRRSetNSEC3"): TypedContractMethod<[ - deleteType: BigNumberish, - deleteName: BytesLike, - closestEncloser: DNSSEC.RRSetWithSignatureStruct, - nextClosest: DNSSEC.RRSetWithSignatureStruct, - dnskey: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "rrdata"): TypedContractMethod<[ - dnstype: BigNumberish, - name: BytesLike - ], [ - [bigint, bigint, string] - ], "view">; - getFunction(nameOrSignature: "submitRRSet"): TypedContractMethod<[ - input: DNSSEC.RRSetWithSignatureStruct, - proof: BytesLike - ], [ - string - ], "nonpayable">; - getFunction(nameOrSignature: "submitRRSets"): TypedContractMethod<[ - input: DNSSEC.RRSetWithSignatureStruct[], - proof: BytesLike - ], [ - string - ], "nonpayable">; - getEvent(key: "AlgorithmUpdated"): TypedContractEvent; - getEvent(key: "DigestUpdated"): TypedContractEvent; - getEvent(key: "NSEC3DigestUpdated"): TypedContractEvent; - getEvent(key: "RRSetUpdated"): TypedContractEvent; - filters: { - "AlgorithmUpdated(uint8,address)": TypedContractEvent; - AlgorithmUpdated: TypedContractEvent; - "DigestUpdated(uint8,address)": TypedContractEvent; - DigestUpdated: TypedContractEvent; - "NSEC3DigestUpdated(uint8,address)": TypedContractEvent; - NSEC3DigestUpdated: TypedContractEvent; - "RRSetUpdated(bytes,bytes)": TypedContractEvent; - RRSetUpdated: TypedContractEvent; - }; -} -//# sourceMappingURL=DNSSEC.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/DNSSEC.d.ts.map b/dist/types/contracts/@ens/dnssec/DNSSEC.d.ts.map deleted file mode 100644 index c6a78574..00000000 --- a/dist/types/contracts/@ens/dnssec/DNSSEC.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"DNSSEC.d.ts","sourceRoot":"","sources":["../../../../../types/contracts/@ens/dnssec/DNSSEC.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/DNSSEC.js b/dist/types/contracts/@ens/dnssec/DNSSEC.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@ens/dnssec/DNSSEC.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl.d.ts b/dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl.d.ts deleted file mode 100644 index cf2dc928..00000000 --- a/dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl.d.ts +++ /dev/null @@ -1,278 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; -export declare namespace DNSSEC { - type RRSetWithSignatureStruct = { - rrset: BytesLike; - sig: BytesLike; - }; - type RRSetWithSignatureStructOutput = [rrset: string, sig: string] & { - rrset: string; - sig: string; - }; -} -export interface DNSSECImplInterface extends Interface { - getFunction(nameOrSignature: "algorithms" | "anchors" | "deleteRRSet" | "deleteRRSetNSEC3" | "digests" | "nsec3Digests" | "owner" | "rrdata" | "setAlgorithm" | "setDigest" | "setNSEC3Digest" | "setOwner" | "submitRRSet" | "submitRRSets"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "AlgorithmUpdated" | "DigestUpdated" | "Marker" | "NSEC3DigestUpdated" | "RRSetUpdated" | "Test"): EventFragment; - encodeFunctionData(functionFragment: "algorithms", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "anchors", values?: undefined): string; - encodeFunctionData(functionFragment: "deleteRRSet", values: [ - BigNumberish, - BytesLike, - DNSSEC.RRSetWithSignatureStruct, - BytesLike - ]): string; - encodeFunctionData(functionFragment: "deleteRRSetNSEC3", values: [ - BigNumberish, - BytesLike, - DNSSEC.RRSetWithSignatureStruct, - DNSSEC.RRSetWithSignatureStruct, - BytesLike - ]): string; - encodeFunctionData(functionFragment: "digests", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "nsec3Digests", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "owner", values?: undefined): string; - encodeFunctionData(functionFragment: "rrdata", values: [BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "setAlgorithm", values: [BigNumberish, AddressLike]): string; - encodeFunctionData(functionFragment: "setDigest", values: [BigNumberish, AddressLike]): string; - encodeFunctionData(functionFragment: "setNSEC3Digest", values: [BigNumberish, AddressLike]): string; - encodeFunctionData(functionFragment: "setOwner", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "submitRRSet", values: [DNSSEC.RRSetWithSignatureStruct, BytesLike]): string; - encodeFunctionData(functionFragment: "submitRRSets", values: [DNSSEC.RRSetWithSignatureStruct[], BytesLike]): string; - decodeFunctionResult(functionFragment: "algorithms", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "anchors", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "deleteRRSet", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "deleteRRSetNSEC3", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "digests", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "nsec3Digests", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "rrdata", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setAlgorithm", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setDigest", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setNSEC3Digest", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setOwner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "submitRRSet", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "submitRRSets", data: BytesLike): Result; -} -export declare namespace AlgorithmUpdatedEvent { - type InputTuple = [id: BigNumberish, addr: AddressLike]; - type OutputTuple = [id: bigint, addr: string]; - interface OutputObject { - id: bigint; - addr: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace DigestUpdatedEvent { - type InputTuple = [id: BigNumberish, addr: AddressLike]; - type OutputTuple = [id: bigint, addr: string]; - interface OutputObject { - id: bigint; - addr: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace MarkerEvent { - type InputTuple = []; - type OutputTuple = []; - interface OutputObject { - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NSEC3DigestUpdatedEvent { - type InputTuple = [id: BigNumberish, addr: AddressLike]; - type OutputTuple = [id: bigint, addr: string]; - interface OutputObject { - id: bigint; - addr: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RRSetUpdatedEvent { - type InputTuple = [name: BytesLike, rrset: BytesLike]; - type OutputTuple = [name: string, rrset: string]; - interface OutputObject { - name: string; - rrset: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TestEvent { - type InputTuple = [t: BigNumberish]; - type OutputTuple = [t: bigint]; - interface OutputObject { - t: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface DNSSECImpl extends BaseContract { - connect(runner?: ContractRunner | null): DNSSECImpl; - waitForDeployment(): Promise; - interface: DNSSECImplInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - algorithms: TypedContractMethod<[arg0: BigNumberish], [string], "view">; - anchors: TypedContractMethod<[], [string], "view">; - deleteRRSet: TypedContractMethod<[ - deleteType: BigNumberish, - deleteName: BytesLike, - nsec: DNSSEC.RRSetWithSignatureStruct, - proof: BytesLike - ], [ - void - ], "nonpayable">; - deleteRRSetNSEC3: TypedContractMethod<[ - deleteType: BigNumberish, - deleteName: BytesLike, - closestEncloser: DNSSEC.RRSetWithSignatureStruct, - nextClosest: DNSSEC.RRSetWithSignatureStruct, - dnskey: BytesLike - ], [ - void - ], "nonpayable">; - digests: TypedContractMethod<[arg0: BigNumberish], [string], "view">; - nsec3Digests: TypedContractMethod<[arg0: BigNumberish], [string], "view">; - owner: TypedContractMethod<[], [string], "view">; - rrdata: TypedContractMethod<[ - dnstype: BigNumberish, - name: BytesLike - ], [ - [bigint, bigint, string] - ], "view">; - setAlgorithm: TypedContractMethod<[ - id: BigNumberish, - algo: AddressLike - ], [ - void - ], "nonpayable">; - setDigest: TypedContractMethod<[ - id: BigNumberish, - digest: AddressLike - ], [ - void - ], "nonpayable">; - setNSEC3Digest: TypedContractMethod<[ - id: BigNumberish, - digest: AddressLike - ], [ - void - ], "nonpayable">; - setOwner: TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">; - submitRRSet: TypedContractMethod<[ - input: DNSSEC.RRSetWithSignatureStruct, - proof: BytesLike - ], [ - string - ], "nonpayable">; - submitRRSets: TypedContractMethod<[ - input: DNSSEC.RRSetWithSignatureStruct[], - _proof: BytesLike - ], [ - string - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "algorithms"): TypedContractMethod<[arg0: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "anchors"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "deleteRRSet"): TypedContractMethod<[ - deleteType: BigNumberish, - deleteName: BytesLike, - nsec: DNSSEC.RRSetWithSignatureStruct, - proof: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "deleteRRSetNSEC3"): TypedContractMethod<[ - deleteType: BigNumberish, - deleteName: BytesLike, - closestEncloser: DNSSEC.RRSetWithSignatureStruct, - nextClosest: DNSSEC.RRSetWithSignatureStruct, - dnskey: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "digests"): TypedContractMethod<[arg0: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "nsec3Digests"): TypedContractMethod<[arg0: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "owner"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "rrdata"): TypedContractMethod<[ - dnstype: BigNumberish, - name: BytesLike - ], [ - [bigint, bigint, string] - ], "view">; - getFunction(nameOrSignature: "setAlgorithm"): TypedContractMethod<[ - id: BigNumberish, - algo: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setDigest"): TypedContractMethod<[ - id: BigNumberish, - digest: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setNSEC3Digest"): TypedContractMethod<[ - id: BigNumberish, - digest: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setOwner"): TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "submitRRSet"): TypedContractMethod<[ - input: DNSSEC.RRSetWithSignatureStruct, - proof: BytesLike - ], [ - string - ], "nonpayable">; - getFunction(nameOrSignature: "submitRRSets"): TypedContractMethod<[ - input: DNSSEC.RRSetWithSignatureStruct[], - _proof: BytesLike - ], [ - string - ], "nonpayable">; - getEvent(key: "AlgorithmUpdated"): TypedContractEvent; - getEvent(key: "DigestUpdated"): TypedContractEvent; - getEvent(key: "Marker"): TypedContractEvent; - getEvent(key: "NSEC3DigestUpdated"): TypedContractEvent; - getEvent(key: "RRSetUpdated"): TypedContractEvent; - getEvent(key: "Test"): TypedContractEvent; - filters: { - "AlgorithmUpdated(uint8,address)": TypedContractEvent; - AlgorithmUpdated: TypedContractEvent; - "DigestUpdated(uint8,address)": TypedContractEvent; - DigestUpdated: TypedContractEvent; - "Marker()": TypedContractEvent; - Marker: TypedContractEvent; - "NSEC3DigestUpdated(uint8,address)": TypedContractEvent; - NSEC3DigestUpdated: TypedContractEvent; - "RRSetUpdated(bytes,bytes)": TypedContractEvent; - RRSetUpdated: TypedContractEvent; - "Test(uint256)": TypedContractEvent; - Test: TypedContractEvent; - }; -} -//# sourceMappingURL=DNSSECImpl.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl.d.ts.map b/dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl.d.ts.map deleted file mode 100644 index f46c209a..00000000 --- a/dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"DNSSECImpl.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl.js b/dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/Owned.d.ts b/dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/Owned.d.ts deleted file mode 100644 index 7a5dfd55..00000000 --- a/dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/Owned.d.ts +++ /dev/null @@ -1,30 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; -export interface OwnedInterface extends Interface { - getFunction(nameOrSignature: "owner" | "setOwner"): FunctionFragment; - encodeFunctionData(functionFragment: "owner", values?: undefined): string; - encodeFunctionData(functionFragment: "setOwner", values: [AddressLike]): string; - decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setOwner", data: BytesLike): Result; -} -export interface Owned extends BaseContract { - connect(runner?: ContractRunner | null): Owned; - waitForDeployment(): Promise; - interface: OwnedInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - owner: TypedContractMethod<[], [string], "view">; - setOwner: TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "owner"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "setOwner"): TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">; - filters: {}; -} -//# sourceMappingURL=Owned.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/Owned.d.ts.map b/dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/Owned.d.ts.map deleted file mode 100644 index 7efcfa59..00000000 --- a/dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/Owned.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Owned.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@ens/dnssec/DNSSECImpl.sol/Owned.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/Owned.js b/dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/Owned.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/Owned.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/index.d.ts b/dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/index.d.ts deleted file mode 100644 index eb4b855d..00000000 --- a/dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export type { DNSSECImpl } from "./DNSSECImpl"; -export type { Owned } from "./Owned"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/index.d.ts.map b/dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/index.d.ts.map deleted file mode 100644 index f6718fd6..00000000 --- a/dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@ens/dnssec/DNSSECImpl.sol/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,YAAY,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/index.js b/dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/dnssec/TLDPublicSuffixList.d.ts b/dist/types/contracts/@ens/dnssec/TLDPublicSuffixList.d.ts deleted file mode 100644 index 80185192..00000000 --- a/dist/types/contracts/@ens/dnssec/TLDPublicSuffixList.d.ts +++ /dev/null @@ -1,26 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../common"; -export interface TLDPublicSuffixListInterface extends Interface { - getFunction(nameOrSignature: "isPublicSuffix"): FunctionFragment; - encodeFunctionData(functionFragment: "isPublicSuffix", values: [BytesLike]): string; - decodeFunctionResult(functionFragment: "isPublicSuffix", data: BytesLike): Result; -} -export interface TLDPublicSuffixList extends BaseContract { - connect(runner?: ContractRunner | null): TLDPublicSuffixList; - waitForDeployment(): Promise; - interface: TLDPublicSuffixListInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - isPublicSuffix: TypedContractMethod<[name: BytesLike], [boolean], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "isPublicSuffix"): TypedContractMethod<[name: BytesLike], [boolean], "view">; - filters: {}; -} -//# sourceMappingURL=TLDPublicSuffixList.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/TLDPublicSuffixList.d.ts.map b/dist/types/contracts/@ens/dnssec/TLDPublicSuffixList.d.ts.map deleted file mode 100644 index c6479dc9..00000000 --- a/dist/types/contracts/@ens/dnssec/TLDPublicSuffixList.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"TLDPublicSuffixList.d.ts","sourceRoot":"","sources":["../../../../../types/contracts/@ens/dnssec/TLDPublicSuffixList.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/TLDPublicSuffixList.js b/dist/types/contracts/@ens/dnssec/TLDPublicSuffixList.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@ens/dnssec/TLDPublicSuffixList.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/dnssec/algorithms/DummyAlgorithm.d.ts b/dist/types/contracts/@ens/dnssec/algorithms/DummyAlgorithm.d.ts deleted file mode 100644 index a2175a31..00000000 --- a/dist/types/contracts/@ens/dnssec/algorithms/DummyAlgorithm.d.ts +++ /dev/null @@ -1,38 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; -export interface DummyAlgorithmInterface extends Interface { - getFunction(nameOrSignature: "verify"): FunctionFragment; - encodeFunctionData(functionFragment: "verify", values: [BytesLike, BytesLike, BytesLike]): string; - decodeFunctionResult(functionFragment: "verify", data: BytesLike): Result; -} -export interface DummyAlgorithm extends BaseContract { - connect(runner?: ContractRunner | null): DummyAlgorithm; - waitForDeployment(): Promise; - interface: DummyAlgorithmInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - verify: TypedContractMethod<[ - arg0: BytesLike, - arg1: BytesLike, - arg2: BytesLike - ], [ - boolean - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "verify"): TypedContractMethod<[ - arg0: BytesLike, - arg1: BytesLike, - arg2: BytesLike - ], [ - boolean - ], "view">; - filters: {}; -} -//# sourceMappingURL=DummyAlgorithm.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/algorithms/DummyAlgorithm.d.ts.map b/dist/types/contracts/@ens/dnssec/algorithms/DummyAlgorithm.d.ts.map deleted file mode 100644 index 7f09135e..00000000 --- a/dist/types/contracts/@ens/dnssec/algorithms/DummyAlgorithm.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"DummyAlgorithm.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@ens/dnssec/algorithms/DummyAlgorithm.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,aAAa,EACb,mBAAmB,EACpB,MAAM,oBAAoB,CAAC;AAE5B,MAAM,WAAW,uBAAwB,SAAQ,SAAS;IACxD,WAAW,CAAC,eAAe,EAAE,QAAQ,GAAG,gBAAgB,CAAC;IAEzD,kBAAkB,CAChB,gBAAgB,EAAE,QAAQ,EAC1B,MAAM,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC,GACxC,MAAM,CAAC;IAEV,oBAAoB,CAAC,gBAAgB,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;CAC3E;AAED,MAAM,WAAW,cAAe,SAAQ,YAAY;IAClD,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,cAAc,CAAC;IACxD,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,uBAAuB,CAAC;IAEnC,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,MAAM,EAAE,mBAAmB,CACzB;QAAC,IAAI,EAAE,SAAS;QAAE,IAAI,EAAE,SAAS;QAAE,IAAI,EAAE,SAAS;KAAC,EACnD;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,WAAW,CACT,eAAe,EAAE,QAAQ,GACxB,mBAAmB,CACpB;QAAC,IAAI,EAAE,SAAS;QAAE,IAAI,EAAE,SAAS;QAAE,IAAI,EAAE,SAAS;KAAC,EACnD;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,OAAO,EAAE,EAAE,CAAC;CACb"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/algorithms/DummyAlgorithm.js b/dist/types/contracts/@ens/dnssec/algorithms/DummyAlgorithm.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@ens/dnssec/algorithms/DummyAlgorithm.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm.d.ts b/dist/types/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm.d.ts deleted file mode 100644 index 55e51b80..00000000 --- a/dist/types/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm.d.ts +++ /dev/null @@ -1,38 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; -export interface RSASHA256AlgorithmInterface extends Interface { - getFunction(nameOrSignature: "verify"): FunctionFragment; - encodeFunctionData(functionFragment: "verify", values: [BytesLike, BytesLike, BytesLike]): string; - decodeFunctionResult(functionFragment: "verify", data: BytesLike): Result; -} -export interface RSASHA256Algorithm extends BaseContract { - connect(runner?: ContractRunner | null): RSASHA256Algorithm; - waitForDeployment(): Promise; - interface: RSASHA256AlgorithmInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - verify: TypedContractMethod<[ - key: BytesLike, - data: BytesLike, - sig: BytesLike - ], [ - boolean - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "verify"): TypedContractMethod<[ - key: BytesLike, - data: BytesLike, - sig: BytesLike - ], [ - boolean - ], "view">; - filters: {}; -} -//# sourceMappingURL=RSASHA256Algorithm.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm.d.ts.map b/dist/types/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm.d.ts.map deleted file mode 100644 index 66cf6722..00000000 --- a/dist/types/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"RSASHA256Algorithm.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm.js b/dist/types/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/dnssec/algorithms/index.d.ts b/dist/types/contracts/@ens/dnssec/algorithms/index.d.ts deleted file mode 100644 index e0d621e7..00000000 --- a/dist/types/contracts/@ens/dnssec/algorithms/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export type { DummyAlgorithm } from "./DummyAlgorithm"; -export type { RSASHA256Algorithm } from "./RSASHA256Algorithm"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/algorithms/index.d.ts.map b/dist/types/contracts/@ens/dnssec/algorithms/index.d.ts.map deleted file mode 100644 index e81d038f..00000000 --- a/dist/types/contracts/@ens/dnssec/algorithms/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@ens/dnssec/algorithms/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,YAAY,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/algorithms/index.js b/dist/types/contracts/@ens/dnssec/algorithms/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@ens/dnssec/algorithms/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/dnssec/digests/SHA1Digest.d.ts b/dist/types/contracts/@ens/dnssec/digests/SHA1Digest.d.ts deleted file mode 100644 index 684a8ac4..00000000 --- a/dist/types/contracts/@ens/dnssec/digests/SHA1Digest.d.ts +++ /dev/null @@ -1,31 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; -export interface SHA1DigestInterface extends Interface { - getFunction(nameOrSignature: "verify"): FunctionFragment; - encodeFunctionData(functionFragment: "verify", values: [BytesLike, BytesLike]): string; - decodeFunctionResult(functionFragment: "verify", data: BytesLike): Result; -} -export interface SHA1Digest extends BaseContract { - connect(runner?: ContractRunner | null): SHA1Digest; - waitForDeployment(): Promise; - interface: SHA1DigestInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - verify: TypedContractMethod<[ - data: BytesLike, - hash: BytesLike - ], [ - boolean - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "verify"): TypedContractMethod<[data: BytesLike, hash: BytesLike], [boolean], "view">; - filters: {}; -} -//# sourceMappingURL=SHA1Digest.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/digests/SHA1Digest.d.ts.map b/dist/types/contracts/@ens/dnssec/digests/SHA1Digest.d.ts.map deleted file mode 100644 index a4552f7b..00000000 --- a/dist/types/contracts/@ens/dnssec/digests/SHA1Digest.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"SHA1Digest.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@ens/dnssec/digests/SHA1Digest.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/digests/SHA1Digest.js b/dist/types/contracts/@ens/dnssec/digests/SHA1Digest.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@ens/dnssec/digests/SHA1Digest.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/dnssec/digests/SHA1NSEC3Digest.d.ts b/dist/types/contracts/@ens/dnssec/digests/SHA1NSEC3Digest.d.ts deleted file mode 100644 index c1b08bb3..00000000 --- a/dist/types/contracts/@ens/dnssec/digests/SHA1NSEC3Digest.d.ts +++ /dev/null @@ -1,38 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; -export interface SHA1NSEC3DigestInterface extends Interface { - getFunction(nameOrSignature: "hash"): FunctionFragment; - encodeFunctionData(functionFragment: "hash", values: [BytesLike, BytesLike, BigNumberish]): string; - decodeFunctionResult(functionFragment: "hash", data: BytesLike): Result; -} -export interface SHA1NSEC3Digest extends BaseContract { - connect(runner?: ContractRunner | null): SHA1NSEC3Digest; - waitForDeployment(): Promise; - interface: SHA1NSEC3DigestInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - hash: TypedContractMethod<[ - salt: BytesLike, - data: BytesLike, - iterations: BigNumberish - ], [ - string - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "hash"): TypedContractMethod<[ - salt: BytesLike, - data: BytesLike, - iterations: BigNumberish - ], [ - string - ], "view">; - filters: {}; -} -//# sourceMappingURL=SHA1NSEC3Digest.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/digests/SHA1NSEC3Digest.d.ts.map b/dist/types/contracts/@ens/dnssec/digests/SHA1NSEC3Digest.d.ts.map deleted file mode 100644 index c0ec4953..00000000 --- a/dist/types/contracts/@ens/dnssec/digests/SHA1NSEC3Digest.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"SHA1NSEC3Digest.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@ens/dnssec/digests/SHA1NSEC3Digest.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/digests/SHA1NSEC3Digest.js b/dist/types/contracts/@ens/dnssec/digests/SHA1NSEC3Digest.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@ens/dnssec/digests/SHA1NSEC3Digest.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/dnssec/digests/SHA256Digest.d.ts b/dist/types/contracts/@ens/dnssec/digests/SHA256Digest.d.ts deleted file mode 100644 index a068a25c..00000000 --- a/dist/types/contracts/@ens/dnssec/digests/SHA256Digest.d.ts +++ /dev/null @@ -1,31 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; -export interface SHA256DigestInterface extends Interface { - getFunction(nameOrSignature: "verify"): FunctionFragment; - encodeFunctionData(functionFragment: "verify", values: [BytesLike, BytesLike]): string; - decodeFunctionResult(functionFragment: "verify", data: BytesLike): Result; -} -export interface SHA256Digest extends BaseContract { - connect(runner?: ContractRunner | null): SHA256Digest; - waitForDeployment(): Promise; - interface: SHA256DigestInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - verify: TypedContractMethod<[ - data: BytesLike, - hash: BytesLike - ], [ - boolean - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "verify"): TypedContractMethod<[data: BytesLike, hash: BytesLike], [boolean], "view">; - filters: {}; -} -//# sourceMappingURL=SHA256Digest.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/digests/SHA256Digest.d.ts.map b/dist/types/contracts/@ens/dnssec/digests/SHA256Digest.d.ts.map deleted file mode 100644 index a1a5de37..00000000 --- a/dist/types/contracts/@ens/dnssec/digests/SHA256Digest.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"SHA256Digest.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@ens/dnssec/digests/SHA256Digest.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/digests/SHA256Digest.js b/dist/types/contracts/@ens/dnssec/digests/SHA256Digest.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@ens/dnssec/digests/SHA256Digest.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/dnssec/digests/index.d.ts b/dist/types/contracts/@ens/dnssec/digests/index.d.ts deleted file mode 100644 index ce31f0ce..00000000 --- a/dist/types/contracts/@ens/dnssec/digests/index.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export type { SHA1Digest } from "./SHA1Digest"; -export type { SHA1NSEC3Digest } from "./SHA1NSEC3Digest"; -export type { SHA256Digest } from "./SHA256Digest"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/digests/index.d.ts.map b/dist/types/contracts/@ens/dnssec/digests/index.d.ts.map deleted file mode 100644 index 465b42d5..00000000 --- a/dist/types/contracts/@ens/dnssec/digests/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@ens/dnssec/digests/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,YAAY,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,YAAY,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/digests/index.js b/dist/types/contracts/@ens/dnssec/digests/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@ens/dnssec/digests/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/dnssec/index.d.ts b/dist/types/contracts/@ens/dnssec/index.d.ts deleted file mode 100644 index 0ea713dd..00000000 --- a/dist/types/contracts/@ens/dnssec/index.d.ts +++ /dev/null @@ -1,14 +0,0 @@ -import type * as dnssecImplSol from "./DNSSECImpl.sol"; -export type { dnssecImplSol }; -import type * as algorithms from "./algorithms"; -export type { algorithms }; -import type * as digests from "./digests"; -export type { digests }; -import type * as interfaces from "./interfaces"; -export type { interfaces }; -import type * as libraries from "./libraries"; -export type { libraries }; -export type { DNSRegistrar } from "./DNSRegistrar"; -export type { DNSSEC } from "./DNSSEC"; -export type { TLDPublicSuffixList } from "./TLDPublicSuffixList"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/index.d.ts.map b/dist/types/contracts/@ens/dnssec/index.d.ts.map deleted file mode 100644 index 99fca6c4..00000000 --- a/dist/types/contracts/@ens/dnssec/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/contracts/@ens/dnssec/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,aAAa,MAAM,kBAAkB,CAAC;AACvD,YAAY,EAAE,aAAa,EAAE,CAAC;AAC9B,OAAO,KAAK,KAAK,UAAU,MAAM,cAAc,CAAC;AAChD,YAAY,EAAE,UAAU,EAAE,CAAC;AAC3B,OAAO,KAAK,KAAK,OAAO,MAAM,WAAW,CAAC;AAC1C,YAAY,EAAE,OAAO,EAAE,CAAC;AACxB,OAAO,KAAK,KAAK,UAAU,MAAM,cAAc,CAAC;AAChD,YAAY,EAAE,UAAU,EAAE,CAAC;AAC3B,OAAO,KAAK,KAAK,SAAS,MAAM,aAAa,CAAC;AAC9C,YAAY,EAAE,SAAS,EAAE,CAAC;AAC1B,YAAY,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACnD,YAAY,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AACvC,YAAY,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/index.js b/dist/types/contracts/@ens/dnssec/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@ens/dnssec/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/dnssec/interfaces/Algorithm.d.ts b/dist/types/contracts/@ens/dnssec/interfaces/Algorithm.d.ts deleted file mode 100644 index 47f3f75f..00000000 --- a/dist/types/contracts/@ens/dnssec/interfaces/Algorithm.d.ts +++ /dev/null @@ -1,38 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; -export interface AlgorithmInterface extends Interface { - getFunction(nameOrSignature: "verify"): FunctionFragment; - encodeFunctionData(functionFragment: "verify", values: [BytesLike, BytesLike, BytesLike]): string; - decodeFunctionResult(functionFragment: "verify", data: BytesLike): Result; -} -export interface Algorithm extends BaseContract { - connect(runner?: ContractRunner | null): Algorithm; - waitForDeployment(): Promise; - interface: AlgorithmInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - verify: TypedContractMethod<[ - key: BytesLike, - data: BytesLike, - signature: BytesLike - ], [ - boolean - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "verify"): TypedContractMethod<[ - key: BytesLike, - data: BytesLike, - signature: BytesLike - ], [ - boolean - ], "view">; - filters: {}; -} -//# sourceMappingURL=Algorithm.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/interfaces/Algorithm.d.ts.map b/dist/types/contracts/@ens/dnssec/interfaces/Algorithm.d.ts.map deleted file mode 100644 index d572fa81..00000000 --- a/dist/types/contracts/@ens/dnssec/interfaces/Algorithm.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Algorithm.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@ens/dnssec/interfaces/Algorithm.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/interfaces/Algorithm.js b/dist/types/contracts/@ens/dnssec/interfaces/Algorithm.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@ens/dnssec/interfaces/Algorithm.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/dnssec/interfaces/Digest.d.ts b/dist/types/contracts/@ens/dnssec/interfaces/Digest.d.ts deleted file mode 100644 index 9e1bf753..00000000 --- a/dist/types/contracts/@ens/dnssec/interfaces/Digest.d.ts +++ /dev/null @@ -1,31 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; -export interface DigestInterface extends Interface { - getFunction(nameOrSignature: "verify"): FunctionFragment; - encodeFunctionData(functionFragment: "verify", values: [BytesLike, BytesLike]): string; - decodeFunctionResult(functionFragment: "verify", data: BytesLike): Result; -} -export interface Digest extends BaseContract { - connect(runner?: ContractRunner | null): Digest; - waitForDeployment(): Promise; - interface: DigestInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - verify: TypedContractMethod<[ - data: BytesLike, - hash: BytesLike - ], [ - boolean - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "verify"): TypedContractMethod<[data: BytesLike, hash: BytesLike], [boolean], "view">; - filters: {}; -} -//# sourceMappingURL=Digest.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/interfaces/Digest.d.ts.map b/dist/types/contracts/@ens/dnssec/interfaces/Digest.d.ts.map deleted file mode 100644 index e7335bb4..00000000 --- a/dist/types/contracts/@ens/dnssec/interfaces/Digest.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Digest.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@ens/dnssec/interfaces/Digest.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/interfaces/Digest.js b/dist/types/contracts/@ens/dnssec/interfaces/Digest.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@ens/dnssec/interfaces/Digest.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/dnssec/interfaces/IDNSRegistrar.d.ts b/dist/types/contracts/@ens/dnssec/interfaces/IDNSRegistrar.d.ts deleted file mode 100644 index 5004c4d8..00000000 --- a/dist/types/contracts/@ens/dnssec/interfaces/IDNSRegistrar.d.ts +++ /dev/null @@ -1,88 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; -export declare namespace DNSSEC { - type RRSetWithSignatureStruct = { - rrset: BytesLike; - sig: BytesLike; - }; - type RRSetWithSignatureStructOutput = [rrset: string, sig: string] & { - rrset: string; - sig: string; - }; -} -export interface IDNSRegistrarInterface extends Interface { - getFunction(nameOrSignature: "claim" | "proveAndClaim" | "proveAndClaimWithResolver"): FunctionFragment; - encodeFunctionData(functionFragment: "claim", values: [BytesLike, BytesLike]): string; - encodeFunctionData(functionFragment: "proveAndClaim", values: [BytesLike, DNSSEC.RRSetWithSignatureStruct[], BytesLike]): string; - encodeFunctionData(functionFragment: "proveAndClaimWithResolver", values: [ - BytesLike, - DNSSEC.RRSetWithSignatureStruct[], - BytesLike, - AddressLike, - AddressLike - ]): string; - decodeFunctionResult(functionFragment: "claim", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "proveAndClaim", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "proveAndClaimWithResolver", data: BytesLike): Result; -} -export interface IDNSRegistrar extends BaseContract { - connect(runner?: ContractRunner | null): IDNSRegistrar; - waitForDeployment(): Promise; - interface: IDNSRegistrarInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - claim: TypedContractMethod<[ - name: BytesLike, - proof: BytesLike - ], [ - void - ], "nonpayable">; - proveAndClaim: TypedContractMethod<[ - name: BytesLike, - input: DNSSEC.RRSetWithSignatureStruct[], - proof: BytesLike - ], [ - void - ], "nonpayable">; - proveAndClaimWithResolver: TypedContractMethod<[ - name: BytesLike, - input: DNSSEC.RRSetWithSignatureStruct[], - proof: BytesLike, - resolver: AddressLike, - addr: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "claim"): TypedContractMethod<[ - name: BytesLike, - proof: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "proveAndClaim"): TypedContractMethod<[ - name: BytesLike, - input: DNSSEC.RRSetWithSignatureStruct[], - proof: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "proveAndClaimWithResolver"): TypedContractMethod<[ - name: BytesLike, - input: DNSSEC.RRSetWithSignatureStruct[], - proof: BytesLike, - resolver: AddressLike, - addr: AddressLike - ], [ - void - ], "nonpayable">; - filters: {}; -} -//# sourceMappingURL=IDNSRegistrar.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/interfaces/IDNSRegistrar.d.ts.map b/dist/types/contracts/@ens/dnssec/interfaces/IDNSRegistrar.d.ts.map deleted file mode 100644 index 265e5b07..00000000 --- a/dist/types/contracts/@ens/dnssec/interfaces/IDNSRegistrar.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IDNSRegistrar.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@ens/dnssec/interfaces/IDNSRegistrar.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/interfaces/IDNSRegistrar.js b/dist/types/contracts/@ens/dnssec/interfaces/IDNSRegistrar.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@ens/dnssec/interfaces/IDNSRegistrar.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/dnssec/interfaces/NSEC3Digest.d.ts b/dist/types/contracts/@ens/dnssec/interfaces/NSEC3Digest.d.ts deleted file mode 100644 index f5ae37c3..00000000 --- a/dist/types/contracts/@ens/dnssec/interfaces/NSEC3Digest.d.ts +++ /dev/null @@ -1,38 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; -export interface NSEC3DigestInterface extends Interface { - getFunction(nameOrSignature: "hash"): FunctionFragment; - encodeFunctionData(functionFragment: "hash", values: [BytesLike, BytesLike, BigNumberish]): string; - decodeFunctionResult(functionFragment: "hash", data: BytesLike): Result; -} -export interface NSEC3Digest extends BaseContract { - connect(runner?: ContractRunner | null): NSEC3Digest; - waitForDeployment(): Promise; - interface: NSEC3DigestInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - hash: TypedContractMethod<[ - salt: BytesLike, - data: BytesLike, - iterations: BigNumberish - ], [ - string - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "hash"): TypedContractMethod<[ - salt: BytesLike, - data: BytesLike, - iterations: BigNumberish - ], [ - string - ], "view">; - filters: {}; -} -//# sourceMappingURL=NSEC3Digest.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/interfaces/NSEC3Digest.d.ts.map b/dist/types/contracts/@ens/dnssec/interfaces/NSEC3Digest.d.ts.map deleted file mode 100644 index 409ae27c..00000000 --- a/dist/types/contracts/@ens/dnssec/interfaces/NSEC3Digest.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"NSEC3Digest.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@ens/dnssec/interfaces/NSEC3Digest.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/interfaces/NSEC3Digest.js b/dist/types/contracts/@ens/dnssec/interfaces/NSEC3Digest.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@ens/dnssec/interfaces/NSEC3Digest.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/dnssec/interfaces/PublicSuffixList.d.ts b/dist/types/contracts/@ens/dnssec/interfaces/PublicSuffixList.d.ts deleted file mode 100644 index cf21b932..00000000 --- a/dist/types/contracts/@ens/dnssec/interfaces/PublicSuffixList.d.ts +++ /dev/null @@ -1,26 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; -export interface PublicSuffixListInterface extends Interface { - getFunction(nameOrSignature: "isPublicSuffix"): FunctionFragment; - encodeFunctionData(functionFragment: "isPublicSuffix", values: [BytesLike]): string; - decodeFunctionResult(functionFragment: "isPublicSuffix", data: BytesLike): Result; -} -export interface PublicSuffixList extends BaseContract { - connect(runner?: ContractRunner | null): PublicSuffixList; - waitForDeployment(): Promise; - interface: PublicSuffixListInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - isPublicSuffix: TypedContractMethod<[name: BytesLike], [boolean], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "isPublicSuffix"): TypedContractMethod<[name: BytesLike], [boolean], "view">; - filters: {}; -} -//# sourceMappingURL=PublicSuffixList.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/interfaces/PublicSuffixList.d.ts.map b/dist/types/contracts/@ens/dnssec/interfaces/PublicSuffixList.d.ts.map deleted file mode 100644 index 3eae65bb..00000000 --- a/dist/types/contracts/@ens/dnssec/interfaces/PublicSuffixList.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"PublicSuffixList.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@ens/dnssec/interfaces/PublicSuffixList.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/interfaces/PublicSuffixList.js b/dist/types/contracts/@ens/dnssec/interfaces/PublicSuffixList.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@ens/dnssec/interfaces/PublicSuffixList.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/dnssec/interfaces/index.d.ts b/dist/types/contracts/@ens/dnssec/interfaces/index.d.ts deleted file mode 100644 index 5fde2758..00000000 --- a/dist/types/contracts/@ens/dnssec/interfaces/index.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -export type { Algorithm } from "./Algorithm"; -export type { Digest } from "./Digest"; -export type { IDNSRegistrar } from "./IDNSRegistrar"; -export type { NSEC3Digest } from "./NSEC3Digest"; -export type { PublicSuffixList } from "./PublicSuffixList"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/interfaces/index.d.ts.map b/dist/types/contracts/@ens/dnssec/interfaces/index.d.ts.map deleted file mode 100644 index 6612d2f3..00000000 --- a/dist/types/contracts/@ens/dnssec/interfaces/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@ens/dnssec/interfaces/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,YAAY,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AACvC,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/interfaces/index.js b/dist/types/contracts/@ens/dnssec/interfaces/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@ens/dnssec/interfaces/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/dnssec/libraries/SHA1.d.ts b/dist/types/contracts/@ens/dnssec/libraries/SHA1.d.ts deleted file mode 100644 index bf27e82b..00000000 --- a/dist/types/contracts/@ens/dnssec/libraries/SHA1.d.ts +++ /dev/null @@ -1,37 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Interface, EventFragment, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener } from "../../../../common"; -export interface SHA1Interface extends Interface { - getEvent(nameOrSignatureOrTopic: "Debug"): EventFragment; -} -export declare namespace DebugEvent { - type InputTuple = [x: BytesLike]; - type OutputTuple = [x: string]; - interface OutputObject { - x: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface SHA1 extends BaseContract { - connect(runner?: ContractRunner | null): SHA1; - waitForDeployment(): Promise; - interface: SHA1Interface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - getFunction(key: string | FunctionFragment): T; - getEvent(key: "Debug"): TypedContractEvent; - filters: { - "Debug(bytes32)": TypedContractEvent; - Debug: TypedContractEvent; - }; -} -//# sourceMappingURL=SHA1.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/libraries/SHA1.d.ts.map b/dist/types/contracts/@ens/dnssec/libraries/SHA1.d.ts.map deleted file mode 100644 index e1e7bb4f..00000000 --- a/dist/types/contracts/@ens/dnssec/libraries/SHA1.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"SHA1.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@ens/dnssec/libraries/SHA1.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/libraries/SHA1.js b/dist/types/contracts/@ens/dnssec/libraries/SHA1.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@ens/dnssec/libraries/SHA1.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/dnssec/libraries/index.d.ts b/dist/types/contracts/@ens/dnssec/libraries/index.d.ts deleted file mode 100644 index 2c91406d..00000000 --- a/dist/types/contracts/@ens/dnssec/libraries/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export type { SHA1 } from "./SHA1"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/libraries/index.d.ts.map b/dist/types/contracts/@ens/dnssec/libraries/index.d.ts.map deleted file mode 100644 index bce3eb87..00000000 --- a/dist/types/contracts/@ens/dnssec/libraries/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@ens/dnssec/libraries/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/dnssec/libraries/index.js b/dist/types/contracts/@ens/dnssec/libraries/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@ens/dnssec/libraries/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@ens/index.d.ts b/dist/types/contracts/@ens/index.d.ts deleted file mode 100644 index 568961de..00000000 --- a/dist/types/contracts/@ens/index.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import type * as legacyEnsRegistrySol from "./LegacyENSRegistry.sol"; -export type { legacyEnsRegistrySol }; -import type * as legacyEthRegistrarControllerSol from "./LegacyETHRegistrarController.sol"; -export type { legacyEthRegistrarControllerSol }; -import type * as dnssec from "./dnssec"; -export type { dnssec }; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@ens/index.d.ts.map b/dist/types/contracts/@ens/index.d.ts.map deleted file mode 100644 index 899db7ec..00000000 --- a/dist/types/contracts/@ens/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../types/contracts/@ens/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,oBAAoB,MAAM,yBAAyB,CAAC;AACrE,YAAY,EAAE,oBAAoB,EAAE,CAAC;AACrC,OAAO,KAAK,KAAK,+BAA+B,MAAM,oCAAoC,CAAC;AAC3F,YAAY,EAAE,+BAA+B,EAAE,CAAC;AAChD,OAAO,KAAK,KAAK,MAAM,MAAM,UAAU,CAAC;AACxC,YAAY,EAAE,MAAM,EAAE,CAAC"} \ No newline at end of file diff --git a/dist/types/contracts/@ens/index.js b/dist/types/contracts/@ens/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@ens/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/IChildToken.d.ts b/dist/types/contracts/@maticnetwork/IChildToken.d.ts deleted file mode 100644 index 6afc4705..00000000 --- a/dist/types/contracts/@maticnetwork/IChildToken.d.ts +++ /dev/null @@ -1,36 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../common"; -export interface IChildTokenInterface extends Interface { - getFunction(nameOrSignature: "deposit"): FunctionFragment; - encodeFunctionData(functionFragment: "deposit", values: [AddressLike, BytesLike]): string; - decodeFunctionResult(functionFragment: "deposit", data: BytesLike): Result; -} -export interface IChildToken extends BaseContract { - connect(runner?: ContractRunner | null): IChildToken; - waitForDeployment(): Promise; - interface: IChildTokenInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - deposit: TypedContractMethod<[ - user: AddressLike, - depositData: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "deposit"): TypedContractMethod<[ - user: AddressLike, - depositData: BytesLike - ], [ - void - ], "nonpayable">; - filters: {}; -} -//# sourceMappingURL=IChildToken.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/IChildToken.d.ts.map b/dist/types/contracts/@maticnetwork/IChildToken.d.ts.map deleted file mode 100644 index 2cf57281..00000000 --- a/dist/types/contracts/@maticnetwork/IChildToken.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IChildToken.d.ts","sourceRoot":"","sources":["../../../../types/contracts/@maticnetwork/IChildToken.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/IChildToken.js b/dist/types/contracts/@maticnetwork/IChildToken.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@maticnetwork/IChildToken.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/IMintableERC721.d.ts b/dist/types/contracts/@maticnetwork/IMintableERC721.d.ts deleted file mode 100644 index 4e224fc8..00000000 --- a/dist/types/contracts/@maticnetwork/IMintableERC721.d.ts +++ /dev/null @@ -1,234 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; -export interface IMintableERC721Interface extends Interface { - getFunction(nameOrSignature: "approve" | "balanceOf" | "exists" | "getApproved" | "isApprovedForAll" | "mint(address,uint256)" | "mint(address,uint256,bytes)" | "ownerOf" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "setApprovalForAll" | "supportsInterface" | "transferFrom"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "Transfer"): EventFragment; - encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "exists", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "mint(address,uint256)", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "mint(address,uint256,bytes)", values: [AddressLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; - decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "exists", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "mint(address,uint256)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "mint(address,uint256,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; -} -export declare namespace ApprovalEvent { - type InputTuple = [ - owner: AddressLike, - approved: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [owner: string, approved: string, tokenId: bigint]; - interface OutputObject { - owner: string; - approved: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ApprovalForAllEvent { - type InputTuple = [ - owner: AddressLike, - operator: AddressLike, - approved: boolean - ]; - type OutputTuple = [ - owner: string, - operator: string, - approved: boolean - ]; - interface OutputObject { - owner: string; - operator: string; - approved: boolean; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferEvent { - type InputTuple = [ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [from: string, to: string, tokenId: bigint]; - interface OutputObject { - from: string; - to: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface IMintableERC721 extends BaseContract { - connect(runner?: ContractRunner | null): IMintableERC721; - waitForDeployment(): Promise; - interface: IMintableERC721Interface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - approve: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; - exists: TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; - getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - isApprovedForAll: TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - "mint(address,uint256)": TypedContractMethod<[ - user: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - "mint(address,uint256,bytes)": TypedContractMethod<[ - user: AddressLike, - tokenId: BigNumberish, - metaData: BytesLike - ], [ - void - ], "nonpayable">; - ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - setApprovalForAll: TypedContractMethod<[ - operator: AddressLike, - _approved: boolean - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - transferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "approve"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; - getFunction(nameOrSignature: "exists"): TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; - getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "mint(address,uint256)"): TypedContractMethod<[ - user: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "mint(address,uint256,bytes)"): TypedContractMethod<[ - user: AddressLike, - tokenId: BigNumberish, - metaData: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ - operator: AddressLike, - _approved: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getEvent(key: "Approval"): TypedContractEvent; - getEvent(key: "ApprovalForAll"): TypedContractEvent; - getEvent(key: "Transfer"): TypedContractEvent; - filters: { - "Approval(address,address,uint256)": TypedContractEvent; - Approval: TypedContractEvent; - "ApprovalForAll(address,address,bool)": TypedContractEvent; - ApprovalForAll: TypedContractEvent; - "Transfer(address,address,uint256)": TypedContractEvent; - Transfer: TypedContractEvent; - }; -} -//# sourceMappingURL=IMintableERC721.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/IMintableERC721.d.ts.map b/dist/types/contracts/@maticnetwork/IMintableERC721.d.ts.map deleted file mode 100644 index 9230bbab..00000000 --- a/dist/types/contracts/@maticnetwork/IMintableERC721.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IMintableERC721.d.ts","sourceRoot":"","sources":["../../../../types/contracts/@maticnetwork/IMintableERC721.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/IMintableERC721.js b/dist/types/contracts/@maticnetwork/IMintableERC721.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@maticnetwork/IMintableERC721.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/IRootChainManager.d.ts b/dist/types/contracts/@maticnetwork/IRootChainManager.d.ts deleted file mode 100644 index b29ae0a0..00000000 --- a/dist/types/contracts/@maticnetwork/IRootChainManager.d.ts +++ /dev/null @@ -1,150 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; -export interface IRootChainManagerInterface extends Interface { - getFunction(nameOrSignature: "cleanMapToken" | "depositEtherFor" | "depositFor" | "exit" | "mapToken" | "registerPredicate" | "remapToken"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "PredicateRegistered" | "TokenMapped"): EventFragment; - encodeFunctionData(functionFragment: "cleanMapToken", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "depositEtherFor", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "depositFor", values: [AddressLike, AddressLike, BytesLike]): string; - encodeFunctionData(functionFragment: "exit", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "mapToken", values: [AddressLike, AddressLike, BytesLike]): string; - encodeFunctionData(functionFragment: "registerPredicate", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "remapToken", values: [AddressLike, AddressLike, BytesLike]): string; - decodeFunctionResult(functionFragment: "cleanMapToken", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "depositEtherFor", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "depositFor", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "exit", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "mapToken", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "registerPredicate", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "remapToken", data: BytesLike): Result; -} -export declare namespace PredicateRegisteredEvent { - type InputTuple = [ - tokenType: BytesLike, - predicateAddress: AddressLike - ]; - type OutputTuple = [tokenType: string, predicateAddress: string]; - interface OutputObject { - tokenType: string; - predicateAddress: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TokenMappedEvent { - type InputTuple = [ - rootToken: AddressLike, - childToken: AddressLike, - tokenType: BytesLike - ]; - type OutputTuple = [ - rootToken: string, - childToken: string, - tokenType: string - ]; - interface OutputObject { - rootToken: string; - childToken: string; - tokenType: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface IRootChainManager extends BaseContract { - connect(runner?: ContractRunner | null): IRootChainManager; - waitForDeployment(): Promise; - interface: IRootChainManagerInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - cleanMapToken: TypedContractMethod<[ - rootToken: AddressLike, - childToken: AddressLike - ], [ - void - ], "nonpayable">; - depositEtherFor: TypedContractMethod<[user: AddressLike], [void], "payable">; - depositFor: TypedContractMethod<[ - user: AddressLike, - rootToken: AddressLike, - depositData: BytesLike - ], [ - void - ], "nonpayable">; - exit: TypedContractMethod<[inputData: BytesLike], [void], "nonpayable">; - mapToken: TypedContractMethod<[ - rootToken: AddressLike, - childToken: AddressLike, - tokenType: BytesLike - ], [ - void - ], "nonpayable">; - registerPredicate: TypedContractMethod<[ - tokenType: BytesLike, - predicateAddress: AddressLike - ], [ - void - ], "nonpayable">; - remapToken: TypedContractMethod<[ - rootToken: AddressLike, - childToken: AddressLike, - tokenType: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "cleanMapToken"): TypedContractMethod<[ - rootToken: AddressLike, - childToken: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "depositEtherFor"): TypedContractMethod<[user: AddressLike], [void], "payable">; - getFunction(nameOrSignature: "depositFor"): TypedContractMethod<[ - user: AddressLike, - rootToken: AddressLike, - depositData: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "exit"): TypedContractMethod<[inputData: BytesLike], [void], "nonpayable">; - getFunction(nameOrSignature: "mapToken"): TypedContractMethod<[ - rootToken: AddressLike, - childToken: AddressLike, - tokenType: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "registerPredicate"): TypedContractMethod<[ - tokenType: BytesLike, - predicateAddress: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "remapToken"): TypedContractMethod<[ - rootToken: AddressLike, - childToken: AddressLike, - tokenType: BytesLike - ], [ - void - ], "nonpayable">; - getEvent(key: "PredicateRegistered"): TypedContractEvent; - getEvent(key: "TokenMapped"): TypedContractEvent; - filters: { - "PredicateRegistered(bytes32,address)": TypedContractEvent; - PredicateRegistered: TypedContractEvent; - "TokenMapped(address,address,bytes32)": TypedContractEvent; - TokenMapped: TypedContractEvent; - }; -} -//# sourceMappingURL=IRootChainManager.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/IRootChainManager.d.ts.map b/dist/types/contracts/@maticnetwork/IRootChainManager.d.ts.map deleted file mode 100644 index ad07c70e..00000000 --- a/dist/types/contracts/@maticnetwork/IRootChainManager.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IRootChainManager.d.ts","sourceRoot":"","sources":["../../../../types/contracts/@maticnetwork/IRootChainManager.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/IRootChainManager.js b/dist/types/contracts/@maticnetwork/IRootChainManager.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@maticnetwork/IRootChainManager.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/RootChainManagerStorage.d.ts b/dist/types/contracts/@maticnetwork/RootChainManagerStorage.d.ts deleted file mode 100644 index 095489fa..00000000 --- a/dist/types/contracts/@maticnetwork/RootChainManagerStorage.d.ts +++ /dev/null @@ -1,30 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../common"; -export interface RootChainManagerStorageInterface extends Interface { - getFunction(nameOrSignature: "tokenToType" | "typeToPredicate"): FunctionFragment; - encodeFunctionData(functionFragment: "tokenToType", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "typeToPredicate", values: [BytesLike]): string; - decodeFunctionResult(functionFragment: "tokenToType", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "typeToPredicate", data: BytesLike): Result; -} -export interface RootChainManagerStorage extends BaseContract { - connect(runner?: ContractRunner | null): RootChainManagerStorage; - waitForDeployment(): Promise; - interface: RootChainManagerStorageInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - tokenToType: TypedContractMethod<[arg0: AddressLike], [string], "view">; - typeToPredicate: TypedContractMethod<[arg0: BytesLike], [string], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "tokenToType"): TypedContractMethod<[arg0: AddressLike], [string], "view">; - getFunction(nameOrSignature: "typeToPredicate"): TypedContractMethod<[arg0: BytesLike], [string], "view">; - filters: {}; -} -//# sourceMappingURL=RootChainManagerStorage.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/RootChainManagerStorage.d.ts.map b/dist/types/contracts/@maticnetwork/RootChainManagerStorage.d.ts.map deleted file mode 100644 index 5fd4b687..00000000 --- a/dist/types/contracts/@maticnetwork/RootChainManagerStorage.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"RootChainManagerStorage.d.ts","sourceRoot":"","sources":["../../../../types/contracts/@maticnetwork/RootChainManagerStorage.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/RootChainManagerStorage.js b/dist/types/contracts/@maticnetwork/RootChainManagerStorage.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@maticnetwork/RootChainManagerStorage.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/index.d.ts b/dist/types/contracts/@maticnetwork/index.d.ts deleted file mode 100644 index a05b51cf..00000000 --- a/dist/types/contracts/@maticnetwork/index.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import type * as posPortal from "./pos-portal"; -export type { posPortal }; -export type { IChildToken } from "./IChildToken"; -export type { IMintableERC721 } from "./IMintableERC721"; -export type { IRootChainManager } from "./IRootChainManager"; -export type { RootChainManagerStorage } from "./RootChainManagerStorage"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/index.d.ts.map b/dist/types/contracts/@maticnetwork/index.d.ts.map deleted file mode 100644 index 398f9578..00000000 --- a/dist/types/contracts/@maticnetwork/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../types/contracts/@maticnetwork/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,SAAS,MAAM,cAAc,CAAC;AAC/C,YAAY,EAAE,SAAS,EAAE,CAAC;AAC1B,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,YAAY,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,YAAY,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,YAAY,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/index.js b/dist/types/contracts/@maticnetwork/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@maticnetwork/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender.d.ts deleted file mode 100644 index 65ad8a7e..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender.d.ts +++ /dev/null @@ -1,58 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; -export interface DummyStateSenderInterface extends Interface { - getFunction(nameOrSignature: "syncState"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "StateSynced"): EventFragment; - encodeFunctionData(functionFragment: "syncState", values: [AddressLike, BytesLike]): string; - decodeFunctionResult(functionFragment: "syncState", data: BytesLike): Result; -} -export declare namespace StateSyncedEvent { - type InputTuple = [ - id: BigNumberish, - contractAddress: AddressLike, - data: BytesLike - ]; - type OutputTuple = [id: bigint, contractAddress: string, data: string]; - interface OutputObject { - id: bigint; - contractAddress: string; - data: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface DummyStateSender extends BaseContract { - connect(runner?: ContractRunner | null): DummyStateSender; - waitForDeployment(): Promise; - interface: DummyStateSenderInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - syncState: TypedContractMethod<[ - receiver: AddressLike, - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "syncState"): TypedContractMethod<[ - receiver: AddressLike, - data: BytesLike - ], [ - void - ], "nonpayable">; - getEvent(key: "StateSynced"): TypedContractEvent; - filters: { - "StateSynced(uint256,address,bytes)": TypedContractEvent; - StateSynced: TypedContractEvent; - }; -} -//# sourceMappingURL=DummyStateSender.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender.d.ts.map deleted file mode 100644 index 8283d132..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"DummyStateSender.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender.js b/dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender.d.ts deleted file mode 100644 index 6b90b009..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender.d.ts +++ /dev/null @@ -1,36 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; -export interface IStateSenderInterface extends Interface { - getFunction(nameOrSignature: "syncState"): FunctionFragment; - encodeFunctionData(functionFragment: "syncState", values: [AddressLike, BytesLike]): string; - decodeFunctionResult(functionFragment: "syncState", data: BytesLike): Result; -} -export interface IStateSender extends BaseContract { - connect(runner?: ContractRunner | null): IStateSender; - waitForDeployment(): Promise; - interface: IStateSenderInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - syncState: TypedContractMethod<[ - receiver: AddressLike, - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "syncState"): TypedContractMethod<[ - receiver: AddressLike, - data: BytesLike - ], [ - void - ], "nonpayable">; - filters: {}; -} -//# sourceMappingURL=IStateSender.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender.d.ts.map deleted file mode 100644 index d861a5e5..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IStateSender.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender.js b/dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/index.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/index.d.ts deleted file mode 100644 index ddeff45d..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export type { DummyStateSender } from "./DummyStateSender"; -export type { IStateSender } from "./IStateSender"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/index.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/index.d.ts.map deleted file mode 100644 index 6ad73602..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,YAAY,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/index.js b/dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl.d.ts deleted file mode 100644 index 9441ba76..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl.d.ts +++ /dev/null @@ -1,170 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; -export interface AccessControlInterface extends Interface { - getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE" | "getRoleAdmin" | "getRoleMember" | "getRoleMemberCount" | "grantRole" | "hasRole" | "renounceRole" | "revokeRole"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "RoleAdminChanged" | "RoleGranted" | "RoleRevoked"): EventFragment; - encodeFunctionData(functionFragment: "DEFAULT_ADMIN_ROLE", values?: undefined): string; - encodeFunctionData(functionFragment: "getRoleAdmin", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "getRoleMember", values: [BytesLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "getRoleMemberCount", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "grantRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "hasRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "renounceRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "revokeRole", values: [BytesLike, AddressLike]): string; - decodeFunctionResult(functionFragment: "DEFAULT_ADMIN_ROLE", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getRoleAdmin", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getRoleMember", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getRoleMemberCount", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "grantRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "hasRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "revokeRole", data: BytesLike): Result; -} -export declare namespace RoleAdminChangedEvent { - type InputTuple = [ - role: BytesLike, - previousAdminRole: BytesLike, - newAdminRole: BytesLike - ]; - type OutputTuple = [ - role: string, - previousAdminRole: string, - newAdminRole: string - ]; - interface OutputObject { - role: string; - previousAdminRole: string; - newAdminRole: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RoleGrantedEvent { - type InputTuple = [ - role: BytesLike, - account: AddressLike, - sender: AddressLike - ]; - type OutputTuple = [role: string, account: string, sender: string]; - interface OutputObject { - role: string; - account: string; - sender: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RoleRevokedEvent { - type InputTuple = [ - role: BytesLike, - account: AddressLike, - sender: AddressLike - ]; - type OutputTuple = [role: string, account: string, sender: string]; - interface OutputObject { - role: string; - account: string; - sender: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface AccessControl extends BaseContract { - connect(runner?: ContractRunner | null): AccessControl; - waitForDeployment(): Promise; - interface: AccessControlInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - DEFAULT_ADMIN_ROLE: TypedContractMethod<[], [string], "view">; - getRoleAdmin: TypedContractMethod<[role: BytesLike], [string], "view">; - getRoleMember: TypedContractMethod<[ - role: BytesLike, - index: BigNumberish - ], [ - string - ], "view">; - getRoleMemberCount: TypedContractMethod<[role: BytesLike], [bigint], "view">; - grantRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - hasRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - boolean - ], "view">; - renounceRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - revokeRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "getRoleAdmin"): TypedContractMethod<[role: BytesLike], [string], "view">; - getFunction(nameOrSignature: "getRoleMember"): TypedContractMethod<[ - role: BytesLike, - index: BigNumberish - ], [ - string - ], "view">; - getFunction(nameOrSignature: "getRoleMemberCount"): TypedContractMethod<[role: BytesLike], [bigint], "view">; - getFunction(nameOrSignature: "grantRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "hasRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "renounceRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "revokeRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getEvent(key: "RoleAdminChanged"): TypedContractEvent; - getEvent(key: "RoleGranted"): TypedContractEvent; - getEvent(key: "RoleRevoked"): TypedContractEvent; - filters: { - "RoleAdminChanged(bytes32,bytes32,bytes32)": TypedContractEvent; - RoleAdminChanged: TypedContractEvent; - "RoleGranted(bytes32,address,address)": TypedContractEvent; - RoleGranted: TypedContractEvent; - "RoleRevoked(bytes32,address,address)": TypedContractEvent; - RoleRevoked: TypedContractEvent; - }; -} -//# sourceMappingURL=AccessControl.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl.d.ts.map deleted file mode 100644 index 950a455f..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"AccessControl.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl.js b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin.d.ts deleted file mode 100644 index 09e1c5e0..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin.d.ts +++ /dev/null @@ -1,170 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; -export interface AccessControlMixinInterface extends Interface { - getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE" | "getRoleAdmin" | "getRoleMember" | "getRoleMemberCount" | "grantRole" | "hasRole" | "renounceRole" | "revokeRole"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "RoleAdminChanged" | "RoleGranted" | "RoleRevoked"): EventFragment; - encodeFunctionData(functionFragment: "DEFAULT_ADMIN_ROLE", values?: undefined): string; - encodeFunctionData(functionFragment: "getRoleAdmin", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "getRoleMember", values: [BytesLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "getRoleMemberCount", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "grantRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "hasRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "renounceRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "revokeRole", values: [BytesLike, AddressLike]): string; - decodeFunctionResult(functionFragment: "DEFAULT_ADMIN_ROLE", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getRoleAdmin", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getRoleMember", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getRoleMemberCount", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "grantRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "hasRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "revokeRole", data: BytesLike): Result; -} -export declare namespace RoleAdminChangedEvent { - type InputTuple = [ - role: BytesLike, - previousAdminRole: BytesLike, - newAdminRole: BytesLike - ]; - type OutputTuple = [ - role: string, - previousAdminRole: string, - newAdminRole: string - ]; - interface OutputObject { - role: string; - previousAdminRole: string; - newAdminRole: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RoleGrantedEvent { - type InputTuple = [ - role: BytesLike, - account: AddressLike, - sender: AddressLike - ]; - type OutputTuple = [role: string, account: string, sender: string]; - interface OutputObject { - role: string; - account: string; - sender: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RoleRevokedEvent { - type InputTuple = [ - role: BytesLike, - account: AddressLike, - sender: AddressLike - ]; - type OutputTuple = [role: string, account: string, sender: string]; - interface OutputObject { - role: string; - account: string; - sender: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface AccessControlMixin extends BaseContract { - connect(runner?: ContractRunner | null): AccessControlMixin; - waitForDeployment(): Promise; - interface: AccessControlMixinInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - DEFAULT_ADMIN_ROLE: TypedContractMethod<[], [string], "view">; - getRoleAdmin: TypedContractMethod<[role: BytesLike], [string], "view">; - getRoleMember: TypedContractMethod<[ - role: BytesLike, - index: BigNumberish - ], [ - string - ], "view">; - getRoleMemberCount: TypedContractMethod<[role: BytesLike], [bigint], "view">; - grantRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - hasRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - boolean - ], "view">; - renounceRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - revokeRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "getRoleAdmin"): TypedContractMethod<[role: BytesLike], [string], "view">; - getFunction(nameOrSignature: "getRoleMember"): TypedContractMethod<[ - role: BytesLike, - index: BigNumberish - ], [ - string - ], "view">; - getFunction(nameOrSignature: "getRoleMemberCount"): TypedContractMethod<[role: BytesLike], [bigint], "view">; - getFunction(nameOrSignature: "grantRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "hasRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "renounceRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "revokeRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getEvent(key: "RoleAdminChanged"): TypedContractEvent; - getEvent(key: "RoleGranted"): TypedContractEvent; - getEvent(key: "RoleRevoked"): TypedContractEvent; - filters: { - "RoleAdminChanged(bytes32,bytes32,bytes32)": TypedContractEvent; - RoleAdminChanged: TypedContractEvent; - "RoleGranted(bytes32,address,address)": TypedContractEvent; - RoleGranted: TypedContractEvent; - "RoleRevoked(bytes32,address,address)": TypedContractEvent; - RoleRevoked: TypedContractEvent; - }; -} -//# sourceMappingURL=AccessControlMixin.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin.d.ts.map deleted file mode 100644 index 2f81d87b..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"AccessControlMixin.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin.js b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC165.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC165.d.ts deleted file mode 100644 index f8dd5082..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC165.d.ts +++ /dev/null @@ -1,30 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; -export interface IERC165Interface extends Interface { - getFunction(nameOrSignature: "supportsInterface"): FunctionFragment; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; -} -export interface IERC165 extends BaseContract { - connect(runner?: ContractRunner | null): IERC165; - waitForDeployment(): Promise; - interface: IERC165Interface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - filters: {}; -} -//# sourceMappingURL=IERC165.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC165.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC165.d.ts.map deleted file mode 100644 index 6e6f9aa5..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC165.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC165.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC165.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC165.js b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC165.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC165.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721.d.ts deleted file mode 100644 index b2f0a5c7..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721.d.ts +++ /dev/null @@ -1,200 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; -export interface IERC721Interface extends Interface { - getFunction(nameOrSignature: "approve" | "balanceOf" | "getApproved" | "isApprovedForAll" | "ownerOf" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "setApprovalForAll" | "supportsInterface" | "transferFrom"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "Transfer"): EventFragment; - encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; - decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; -} -export declare namespace ApprovalEvent { - type InputTuple = [ - owner: AddressLike, - approved: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [owner: string, approved: string, tokenId: bigint]; - interface OutputObject { - owner: string; - approved: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ApprovalForAllEvent { - type InputTuple = [ - owner: AddressLike, - operator: AddressLike, - approved: boolean - ]; - type OutputTuple = [ - owner: string, - operator: string, - approved: boolean - ]; - interface OutputObject { - owner: string; - operator: string; - approved: boolean; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferEvent { - type InputTuple = [ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [from: string, to: string, tokenId: bigint]; - interface OutputObject { - from: string; - to: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface IERC721 extends BaseContract { - connect(runner?: ContractRunner | null): IERC721; - waitForDeployment(): Promise; - interface: IERC721Interface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - approve: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; - getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - isApprovedForAll: TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - setApprovalForAll: TypedContractMethod<[ - operator: AddressLike, - _approved: boolean - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - transferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "approve"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; - getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ - operator: AddressLike, - _approved: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getEvent(key: "Approval"): TypedContractEvent; - getEvent(key: "ApprovalForAll"): TypedContractEvent; - getEvent(key: "Transfer"): TypedContractEvent; - filters: { - "Approval(address,address,uint256)": TypedContractEvent; - Approval: TypedContractEvent; - "ApprovalForAll(address,address,bool)": TypedContractEvent; - ApprovalForAll: TypedContractEvent; - "Transfer(address,address,uint256)": TypedContractEvent; - Transfer: TypedContractEvent; - }; -} -//# sourceMappingURL=IERC721.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721.d.ts.map deleted file mode 100644 index d5e03d36..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC721.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721.js b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721Receiver.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721Receiver.d.ts deleted file mode 100644 index 12d740ba..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721Receiver.d.ts +++ /dev/null @@ -1,40 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; -export interface IERC721ReceiverInterface extends Interface { - getFunction(nameOrSignature: "onERC721Received"): FunctionFragment; - encodeFunctionData(functionFragment: "onERC721Received", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; - decodeFunctionResult(functionFragment: "onERC721Received", data: BytesLike): Result; -} -export interface IERC721Receiver extends BaseContract { - connect(runner?: ContractRunner | null): IERC721Receiver; - waitForDeployment(): Promise; - interface: IERC721ReceiverInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - onERC721Received: TypedContractMethod<[ - operator: AddressLike, - from: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - string - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "onERC721Received"): TypedContractMethod<[ - operator: AddressLike, - from: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - string - ], "nonpayable">; - filters: {}; -} -//# sourceMappingURL=IERC721Receiver.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721Receiver.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721Receiver.d.ts.map deleted file mode 100644 index 733678db..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721Receiver.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC721Receiver.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721Receiver.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721Receiver.js b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721Receiver.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721Receiver.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IMintableERC721.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IMintableERC721.d.ts deleted file mode 100644 index fdfbc7c6..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IMintableERC721.d.ts +++ /dev/null @@ -1,234 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; -export interface IMintableERC721Interface extends Interface { - getFunction(nameOrSignature: "approve" | "balanceOf" | "exists" | "getApproved" | "isApprovedForAll" | "mint(address,uint256)" | "mint(address,uint256,bytes)" | "ownerOf" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "setApprovalForAll" | "supportsInterface" | "transferFrom"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "Transfer"): EventFragment; - encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "exists", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "mint(address,uint256)", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "mint(address,uint256,bytes)", values: [AddressLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; - decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "exists", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "mint(address,uint256)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "mint(address,uint256,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; -} -export declare namespace ApprovalEvent { - type InputTuple = [ - owner: AddressLike, - approved: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [owner: string, approved: string, tokenId: bigint]; - interface OutputObject { - owner: string; - approved: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ApprovalForAllEvent { - type InputTuple = [ - owner: AddressLike, - operator: AddressLike, - approved: boolean - ]; - type OutputTuple = [ - owner: string, - operator: string, - approved: boolean - ]; - interface OutputObject { - owner: string; - operator: string; - approved: boolean; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferEvent { - type InputTuple = [ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [from: string, to: string, tokenId: bigint]; - interface OutputObject { - from: string; - to: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface IMintableERC721 extends BaseContract { - connect(runner?: ContractRunner | null): IMintableERC721; - waitForDeployment(): Promise; - interface: IMintableERC721Interface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - approve: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; - exists: TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; - getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - isApprovedForAll: TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - "mint(address,uint256)": TypedContractMethod<[ - user: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - "mint(address,uint256,bytes)": TypedContractMethod<[ - user: AddressLike, - tokenId: BigNumberish, - metaData: BytesLike - ], [ - void - ], "nonpayable">; - ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - setApprovalForAll: TypedContractMethod<[ - operator: AddressLike, - _approved: boolean - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - transferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "approve"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; - getFunction(nameOrSignature: "exists"): TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; - getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "mint(address,uint256)"): TypedContractMethod<[ - user: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "mint(address,uint256,bytes)"): TypedContractMethod<[ - user: AddressLike, - tokenId: BigNumberish, - metaData: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ - operator: AddressLike, - _approved: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getEvent(key: "Approval"): TypedContractEvent; - getEvent(key: "ApprovalForAll"): TypedContractEvent; - getEvent(key: "Transfer"): TypedContractEvent; - filters: { - "Approval(address,address,uint256)": TypedContractEvent; - Approval: TypedContractEvent; - "ApprovalForAll(address,address,bool)": TypedContractEvent; - ApprovalForAll: TypedContractEvent; - "Transfer(address,address,uint256)": TypedContractEvent; - Transfer: TypedContractEvent; - }; -} -//# sourceMappingURL=IMintableERC721.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IMintableERC721.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IMintableERC721.d.ts.map deleted file mode 100644 index 286b0bd9..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IMintableERC721.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IMintableERC721.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IMintableERC721.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IMintableERC721.js b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IMintableERC721.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IMintableERC721.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate.d.ts deleted file mode 100644 index 215a3764..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate.d.ts +++ /dev/null @@ -1,56 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; -export interface ITokenPredicateInterface extends Interface { - getFunction(nameOrSignature: "exitTokens" | "lockTokens"): FunctionFragment; - encodeFunctionData(functionFragment: "exitTokens", values: [AddressLike, AddressLike, BytesLike]): string; - encodeFunctionData(functionFragment: "lockTokens", values: [AddressLike, AddressLike, AddressLike, BytesLike]): string; - decodeFunctionResult(functionFragment: "exitTokens", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "lockTokens", data: BytesLike): Result; -} -export interface ITokenPredicate extends BaseContract { - connect(runner?: ContractRunner | null): ITokenPredicate; - waitForDeployment(): Promise; - interface: ITokenPredicateInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - exitTokens: TypedContractMethod<[ - sender: AddressLike, - rootToken: AddressLike, - logRLPList: BytesLike - ], [ - void - ], "nonpayable">; - lockTokens: TypedContractMethod<[ - depositor: AddressLike, - depositReceiver: AddressLike, - rootToken: AddressLike, - depositData: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "exitTokens"): TypedContractMethod<[ - sender: AddressLike, - rootToken: AddressLike, - logRLPList: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "lockTokens"): TypedContractMethod<[ - depositor: AddressLike, - depositReceiver: AddressLike, - rootToken: AddressLike, - depositData: BytesLike - ], [ - void - ], "nonpayable">; - filters: {}; -} -//# sourceMappingURL=ITokenPredicate.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate.d.ts.map deleted file mode 100644 index d2abb346..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ITokenPredicate.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate.js b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate.d.ts deleted file mode 100644 index 9cb9ea59..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate.d.ts +++ /dev/null @@ -1,304 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; -export interface MintableERC721PredicateInterface extends Interface { - getFunction(nameOrSignature: "BATCH_LIMIT" | "DEFAULT_ADMIN_ROLE" | "MANAGER_ROLE" | "TOKEN_TYPE" | "TRANSFER_EVENT_SIG" | "TRANSFER_WITH_METADATA_EVENT_SIG" | "WITHDRAW_BATCH_EVENT_SIG" | "exitTokens" | "getRoleAdmin" | "getRoleMember" | "getRoleMemberCount" | "grantRole" | "hasRole" | "initialize" | "lockTokens" | "onERC721Received" | "renounceRole" | "revokeRole"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "LockedMintableERC721" | "LockedMintableERC721Batch" | "RoleAdminChanged" | "RoleGranted" | "RoleRevoked"): EventFragment; - encodeFunctionData(functionFragment: "BATCH_LIMIT", values?: undefined): string; - encodeFunctionData(functionFragment: "DEFAULT_ADMIN_ROLE", values?: undefined): string; - encodeFunctionData(functionFragment: "MANAGER_ROLE", values?: undefined): string; - encodeFunctionData(functionFragment: "TOKEN_TYPE", values?: undefined): string; - encodeFunctionData(functionFragment: "TRANSFER_EVENT_SIG", values?: undefined): string; - encodeFunctionData(functionFragment: "TRANSFER_WITH_METADATA_EVENT_SIG", values?: undefined): string; - encodeFunctionData(functionFragment: "WITHDRAW_BATCH_EVENT_SIG", values?: undefined): string; - encodeFunctionData(functionFragment: "exitTokens", values: [AddressLike, AddressLike, BytesLike]): string; - encodeFunctionData(functionFragment: "getRoleAdmin", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "getRoleMember", values: [BytesLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "getRoleMemberCount", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "grantRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "hasRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "initialize", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "lockTokens", values: [AddressLike, AddressLike, AddressLike, BytesLike]): string; - encodeFunctionData(functionFragment: "onERC721Received", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "renounceRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "revokeRole", values: [BytesLike, AddressLike]): string; - decodeFunctionResult(functionFragment: "BATCH_LIMIT", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "DEFAULT_ADMIN_ROLE", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "MANAGER_ROLE", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "TOKEN_TYPE", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "TRANSFER_EVENT_SIG", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "TRANSFER_WITH_METADATA_EVENT_SIG", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "WITHDRAW_BATCH_EVENT_SIG", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "exitTokens", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getRoleAdmin", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getRoleMember", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getRoleMemberCount", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "grantRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "hasRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "lockTokens", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "onERC721Received", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "revokeRole", data: BytesLike): Result; -} -export declare namespace LockedMintableERC721Event { - type InputTuple = [ - depositor: AddressLike, - depositReceiver: AddressLike, - rootToken: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [ - depositor: string, - depositReceiver: string, - rootToken: string, - tokenId: bigint - ]; - interface OutputObject { - depositor: string; - depositReceiver: string; - rootToken: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace LockedMintableERC721BatchEvent { - type InputTuple = [ - depositor: AddressLike, - depositReceiver: AddressLike, - rootToken: AddressLike, - tokenIds: BigNumberish[] - ]; - type OutputTuple = [ - depositor: string, - depositReceiver: string, - rootToken: string, - tokenIds: bigint[] - ]; - interface OutputObject { - depositor: string; - depositReceiver: string; - rootToken: string; - tokenIds: bigint[]; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RoleAdminChangedEvent { - type InputTuple = [ - role: BytesLike, - previousAdminRole: BytesLike, - newAdminRole: BytesLike - ]; - type OutputTuple = [ - role: string, - previousAdminRole: string, - newAdminRole: string - ]; - interface OutputObject { - role: string; - previousAdminRole: string; - newAdminRole: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RoleGrantedEvent { - type InputTuple = [ - role: BytesLike, - account: AddressLike, - sender: AddressLike - ]; - type OutputTuple = [role: string, account: string, sender: string]; - interface OutputObject { - role: string; - account: string; - sender: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RoleRevokedEvent { - type InputTuple = [ - role: BytesLike, - account: AddressLike, - sender: AddressLike - ]; - type OutputTuple = [role: string, account: string, sender: string]; - interface OutputObject { - role: string; - account: string; - sender: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface MintableERC721Predicate extends BaseContract { - connect(runner?: ContractRunner | null): MintableERC721Predicate; - waitForDeployment(): Promise; - interface: MintableERC721PredicateInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - BATCH_LIMIT: TypedContractMethod<[], [bigint], "view">; - DEFAULT_ADMIN_ROLE: TypedContractMethod<[], [string], "view">; - MANAGER_ROLE: TypedContractMethod<[], [string], "view">; - TOKEN_TYPE: TypedContractMethod<[], [string], "view">; - TRANSFER_EVENT_SIG: TypedContractMethod<[], [string], "view">; - TRANSFER_WITH_METADATA_EVENT_SIG: TypedContractMethod<[], [string], "view">; - WITHDRAW_BATCH_EVENT_SIG: TypedContractMethod<[], [string], "view">; - exitTokens: TypedContractMethod<[ - arg0: AddressLike, - rootToken: AddressLike, - log: BytesLike - ], [ - void - ], "nonpayable">; - getRoleAdmin: TypedContractMethod<[role: BytesLike], [string], "view">; - getRoleMember: TypedContractMethod<[ - role: BytesLike, - index: BigNumberish - ], [ - string - ], "view">; - getRoleMemberCount: TypedContractMethod<[role: BytesLike], [bigint], "view">; - grantRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - hasRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - boolean - ], "view">; - initialize: TypedContractMethod<[_owner: AddressLike], [void], "nonpayable">; - lockTokens: TypedContractMethod<[ - depositor: AddressLike, - depositReceiver: AddressLike, - rootToken: AddressLike, - depositData: BytesLike - ], [ - void - ], "nonpayable">; - onERC721Received: TypedContractMethod<[ - arg0: AddressLike, - arg1: AddressLike, - arg2: BigNumberish, - arg3: BytesLike - ], [ - string - ], "nonpayable">; - renounceRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - revokeRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "BATCH_LIMIT"): TypedContractMethod<[], [bigint], "view">; - getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "MANAGER_ROLE"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "TOKEN_TYPE"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "TRANSFER_EVENT_SIG"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "TRANSFER_WITH_METADATA_EVENT_SIG"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "WITHDRAW_BATCH_EVENT_SIG"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "exitTokens"): TypedContractMethod<[ - arg0: AddressLike, - rootToken: AddressLike, - log: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "getRoleAdmin"): TypedContractMethod<[role: BytesLike], [string], "view">; - getFunction(nameOrSignature: "getRoleMember"): TypedContractMethod<[ - role: BytesLike, - index: BigNumberish - ], [ - string - ], "view">; - getFunction(nameOrSignature: "getRoleMemberCount"): TypedContractMethod<[role: BytesLike], [bigint], "view">; - getFunction(nameOrSignature: "grantRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "hasRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "initialize"): TypedContractMethod<[_owner: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "lockTokens"): TypedContractMethod<[ - depositor: AddressLike, - depositReceiver: AddressLike, - rootToken: AddressLike, - depositData: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "onERC721Received"): TypedContractMethod<[ - arg0: AddressLike, - arg1: AddressLike, - arg2: BigNumberish, - arg3: BytesLike - ], [ - string - ], "nonpayable">; - getFunction(nameOrSignature: "renounceRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "revokeRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getEvent(key: "LockedMintableERC721"): TypedContractEvent; - getEvent(key: "LockedMintableERC721Batch"): TypedContractEvent; - getEvent(key: "RoleAdminChanged"): TypedContractEvent; - getEvent(key: "RoleGranted"): TypedContractEvent; - getEvent(key: "RoleRevoked"): TypedContractEvent; - filters: { - "LockedMintableERC721(address,address,address,uint256)": TypedContractEvent; - LockedMintableERC721: TypedContractEvent; - "LockedMintableERC721Batch(address,address,address,uint256[])": TypedContractEvent; - LockedMintableERC721Batch: TypedContractEvent; - "RoleAdminChanged(bytes32,bytes32,bytes32)": TypedContractEvent; - RoleAdminChanged: TypedContractEvent; - "RoleGranted(bytes32,address,address)": TypedContractEvent; - RoleGranted: TypedContractEvent; - "RoleRevoked(bytes32,address,address)": TypedContractEvent; - RoleRevoked: TypedContractEvent; - }; -} -//# sourceMappingURL=MintableERC721Predicate.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate.d.ts.map deleted file mode 100644 index c267f2df..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"MintableERC721Predicate.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate.js b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/index.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/index.d.ts deleted file mode 100644 index a4557504..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/index.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -export type { AccessControl } from "./AccessControl"; -export type { AccessControlMixin } from "./AccessControlMixin"; -export type { IERC165 } from "./IERC165"; -export type { IERC721 } from "./IERC721"; -export type { IERC721Receiver } from "./IERC721Receiver"; -export type { IMintableERC721 } from "./IMintableERC721"; -export type { ITokenPredicate } from "./ITokenPredicate"; -export type { MintableERC721Predicate } from "./MintableERC721Predicate"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/index.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/index.d.ts.map deleted file mode 100644 index e0dbf6fb..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,YAAY,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,YAAY,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,YAAY,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,YAAY,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,YAAY,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,YAAY,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,YAAY,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/index.js b/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControl.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControl.d.ts deleted file mode 100644 index 9441ba76..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControl.d.ts +++ /dev/null @@ -1,170 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; -export interface AccessControlInterface extends Interface { - getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE" | "getRoleAdmin" | "getRoleMember" | "getRoleMemberCount" | "grantRole" | "hasRole" | "renounceRole" | "revokeRole"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "RoleAdminChanged" | "RoleGranted" | "RoleRevoked"): EventFragment; - encodeFunctionData(functionFragment: "DEFAULT_ADMIN_ROLE", values?: undefined): string; - encodeFunctionData(functionFragment: "getRoleAdmin", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "getRoleMember", values: [BytesLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "getRoleMemberCount", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "grantRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "hasRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "renounceRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "revokeRole", values: [BytesLike, AddressLike]): string; - decodeFunctionResult(functionFragment: "DEFAULT_ADMIN_ROLE", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getRoleAdmin", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getRoleMember", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getRoleMemberCount", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "grantRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "hasRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "revokeRole", data: BytesLike): Result; -} -export declare namespace RoleAdminChangedEvent { - type InputTuple = [ - role: BytesLike, - previousAdminRole: BytesLike, - newAdminRole: BytesLike - ]; - type OutputTuple = [ - role: string, - previousAdminRole: string, - newAdminRole: string - ]; - interface OutputObject { - role: string; - previousAdminRole: string; - newAdminRole: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RoleGrantedEvent { - type InputTuple = [ - role: BytesLike, - account: AddressLike, - sender: AddressLike - ]; - type OutputTuple = [role: string, account: string, sender: string]; - interface OutputObject { - role: string; - account: string; - sender: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RoleRevokedEvent { - type InputTuple = [ - role: BytesLike, - account: AddressLike, - sender: AddressLike - ]; - type OutputTuple = [role: string, account: string, sender: string]; - interface OutputObject { - role: string; - account: string; - sender: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface AccessControl extends BaseContract { - connect(runner?: ContractRunner | null): AccessControl; - waitForDeployment(): Promise; - interface: AccessControlInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - DEFAULT_ADMIN_ROLE: TypedContractMethod<[], [string], "view">; - getRoleAdmin: TypedContractMethod<[role: BytesLike], [string], "view">; - getRoleMember: TypedContractMethod<[ - role: BytesLike, - index: BigNumberish - ], [ - string - ], "view">; - getRoleMemberCount: TypedContractMethod<[role: BytesLike], [bigint], "view">; - grantRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - hasRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - boolean - ], "view">; - renounceRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - revokeRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "getRoleAdmin"): TypedContractMethod<[role: BytesLike], [string], "view">; - getFunction(nameOrSignature: "getRoleMember"): TypedContractMethod<[ - role: BytesLike, - index: BigNumberish - ], [ - string - ], "view">; - getFunction(nameOrSignature: "getRoleMemberCount"): TypedContractMethod<[role: BytesLike], [bigint], "view">; - getFunction(nameOrSignature: "grantRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "hasRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "renounceRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "revokeRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getEvent(key: "RoleAdminChanged"): TypedContractEvent; - getEvent(key: "RoleGranted"): TypedContractEvent; - getEvent(key: "RoleRevoked"): TypedContractEvent; - filters: { - "RoleAdminChanged(bytes32,bytes32,bytes32)": TypedContractEvent; - RoleAdminChanged: TypedContractEvent; - "RoleGranted(bytes32,address,address)": TypedContractEvent; - RoleGranted: TypedContractEvent; - "RoleRevoked(bytes32,address,address)": TypedContractEvent; - RoleRevoked: TypedContractEvent; - }; -} -//# sourceMappingURL=AccessControl.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControl.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControl.d.ts.map deleted file mode 100644 index baf6ef83..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControl.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"AccessControl.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControl.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,aAAa,EACb,WAAW,EACX,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,mBAAmB,EACnB,aAAa,EACb,mBAAmB,EACpB,MAAM,oBAAoB,CAAC;AAE5B,MAAM,WAAW,sBAAuB,SAAQ,SAAS;IACvD,WAAW,CACT,eAAe,EACX,oBAAoB,GACpB,cAAc,GACd,eAAe,GACf,oBAAoB,GACpB,WAAW,GACX,SAAS,GACT,cAAc,GACd,YAAY,GACf,gBAAgB,CAAC;IAEpB,QAAQ,CACN,sBAAsB,EAAE,kBAAkB,GAAG,aAAa,GAAG,aAAa,GACzE,aAAa,CAAC;IAEjB,kBAAkB,CAChB,gBAAgB,EAAE,oBAAoB,EACtC,MAAM,CAAC,EAAE,SAAS,GACjB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,cAAc,EAChC,MAAM,EAAE,CAAC,SAAS,CAAC,GAClB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,eAAe,EACjC,MAAM,EAAE,CAAC,SAAS,EAAE,YAAY,CAAC,GAChC,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,oBAAoB,EACtC,MAAM,EAAE,CAAC,SAAS,CAAC,GAClB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,WAAW,EAC7B,MAAM,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC,GAC/B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,SAAS,EAC3B,MAAM,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC,GAC/B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,cAAc,EAChC,MAAM,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC,GAC/B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,YAAY,EAC9B,MAAM,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC,GAC/B,MAAM,CAAC;IAEV,oBAAoB,CAClB,gBAAgB,EAAE,oBAAoB,EACtC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,cAAc,EAChC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,eAAe,EACjC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,oBAAoB,EACtC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC7E,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,oBAAoB,CAClB,gBAAgB,EAAE,cAAc,EAChC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;CAC/E;AAED,yBAAiB,qBAAqB,CAAC;IACrC,KAAY,UAAU,GAAG;QACvB,IAAI,EAAE,SAAS;QACf,iBAAiB,EAAE,SAAS;QAC5B,YAAY,EAAE,SAAS;KACxB,CAAC;IACF,KAAY,WAAW,GAAG;QACxB,IAAI,EAAE,MAAM;QACZ,iBAAiB,EAAE,MAAM;QACzB,YAAY,EAAE,MAAM;KACrB,CAAC;IACF,UAAiB,YAAY;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,iBAAiB,EAAE,MAAM,CAAC;QAC1B,YAAY,EAAE,MAAM,CAAC;KACtB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,gBAAgB,CAAC;IAChC,KAAY,UAAU,GAAG;QACvB,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,WAAW;QACpB,MAAM,EAAE,WAAW;KACpB,CAAC;IACF,KAAY,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1E,UAAiB,YAAY;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;KAChB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,gBAAgB,CAAC;IAChC,KAAY,UAAU,GAAG;QACvB,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,WAAW;QACpB,MAAM,EAAE,WAAW;KACpB,CAAC;IACF,KAAY,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1E,UAAiB,YAAY;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;KAChB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,MAAM,WAAW,aAAc,SAAQ,YAAY;IACjD,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,aAAa,CAAC;IACvD,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,sBAAsB,CAAC;IAElC,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,kBAAkB,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAE9D,YAAY,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEvE,aAAa,EAAE,mBAAmB,CAChC;QAAC,IAAI,EAAE,SAAS;QAAE,KAAK,EAAE,YAAY;KAAC,EACtC;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IAEF,kBAAkB,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAE7E,SAAS,EAAE,mBAAmB,CAC5B;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,WAAW;KAAC,EACvC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,OAAO,EAAE,mBAAmB,CAC1B;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,WAAW;KAAC,EACvC;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,YAAY,EAAE,mBAAmB,CAC/B;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,WAAW;KAAC,EACvC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,UAAU,EAAE,mBAAmB,CAC7B;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,WAAW;KAAC,EACvC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,WAAW,CACT,eAAe,EAAE,oBAAoB,GACpC,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC7C,WAAW,CACT,eAAe,EAAE,cAAc,GAC9B,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC5D,WAAW,CACT,eAAe,EAAE,eAAe,GAC/B,mBAAmB,CACpB;QAAC,IAAI,EAAE,SAAS;QAAE,KAAK,EAAE,YAAY;KAAC,EACtC;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,oBAAoB,GACpC,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC5D,WAAW,CACT,eAAe,EAAE,WAAW,GAC3B,mBAAmB,CACpB;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,WAAW;KAAC,EACvC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,SAAS,GACzB,mBAAmB,CACpB;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,WAAW;KAAC,EACvC;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,cAAc,GAC9B,mBAAmB,CACpB;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,WAAW;KAAC,EACvC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,YAAY,GAC5B,mBAAmB,CACpB;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,WAAW;KAAC,EACvC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,QAAQ,CACN,GAAG,EAAE,kBAAkB,GACtB,kBAAkB,CACnB,qBAAqB,CAAC,UAAU,EAChC,qBAAqB,CAAC,WAAW,EACjC,qBAAqB,CAAC,YAAY,CACnC,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,aAAa,GACjB,kBAAkB,CACnB,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,aAAa,GACjB,kBAAkB,CACnB,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;IAEF,OAAO,EAAE;QACP,2CAA2C,EAAE,kBAAkB,CAC7D,qBAAqB,CAAC,UAAU,EAChC,qBAAqB,CAAC,WAAW,EACjC,qBAAqB,CAAC,YAAY,CACnC,CAAC;QACF,gBAAgB,EAAE,kBAAkB,CAClC,qBAAqB,CAAC,UAAU,EAChC,qBAAqB,CAAC,WAAW,EACjC,qBAAqB,CAAC,YAAY,CACnC,CAAC;QAEF,sCAAsC,EAAE,kBAAkB,CACxD,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QACF,WAAW,EAAE,kBAAkB,CAC7B,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QAEF,sCAAsC,EAAE,kBAAkB,CACxD,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QACF,WAAW,EAAE,kBAAkB,CAC7B,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;KACH,CAAC;CACH"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControl.js b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControl.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControl.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControlMixin.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControlMixin.d.ts deleted file mode 100644 index 09e1c5e0..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControlMixin.d.ts +++ /dev/null @@ -1,170 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; -export interface AccessControlMixinInterface extends Interface { - getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE" | "getRoleAdmin" | "getRoleMember" | "getRoleMemberCount" | "grantRole" | "hasRole" | "renounceRole" | "revokeRole"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "RoleAdminChanged" | "RoleGranted" | "RoleRevoked"): EventFragment; - encodeFunctionData(functionFragment: "DEFAULT_ADMIN_ROLE", values?: undefined): string; - encodeFunctionData(functionFragment: "getRoleAdmin", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "getRoleMember", values: [BytesLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "getRoleMemberCount", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "grantRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "hasRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "renounceRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "revokeRole", values: [BytesLike, AddressLike]): string; - decodeFunctionResult(functionFragment: "DEFAULT_ADMIN_ROLE", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getRoleAdmin", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getRoleMember", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getRoleMemberCount", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "grantRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "hasRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "revokeRole", data: BytesLike): Result; -} -export declare namespace RoleAdminChangedEvent { - type InputTuple = [ - role: BytesLike, - previousAdminRole: BytesLike, - newAdminRole: BytesLike - ]; - type OutputTuple = [ - role: string, - previousAdminRole: string, - newAdminRole: string - ]; - interface OutputObject { - role: string; - previousAdminRole: string; - newAdminRole: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RoleGrantedEvent { - type InputTuple = [ - role: BytesLike, - account: AddressLike, - sender: AddressLike - ]; - type OutputTuple = [role: string, account: string, sender: string]; - interface OutputObject { - role: string; - account: string; - sender: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RoleRevokedEvent { - type InputTuple = [ - role: BytesLike, - account: AddressLike, - sender: AddressLike - ]; - type OutputTuple = [role: string, account: string, sender: string]; - interface OutputObject { - role: string; - account: string; - sender: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface AccessControlMixin extends BaseContract { - connect(runner?: ContractRunner | null): AccessControlMixin; - waitForDeployment(): Promise; - interface: AccessControlMixinInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - DEFAULT_ADMIN_ROLE: TypedContractMethod<[], [string], "view">; - getRoleAdmin: TypedContractMethod<[role: BytesLike], [string], "view">; - getRoleMember: TypedContractMethod<[ - role: BytesLike, - index: BigNumberish - ], [ - string - ], "view">; - getRoleMemberCount: TypedContractMethod<[role: BytesLike], [bigint], "view">; - grantRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - hasRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - boolean - ], "view">; - renounceRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - revokeRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "getRoleAdmin"): TypedContractMethod<[role: BytesLike], [string], "view">; - getFunction(nameOrSignature: "getRoleMember"): TypedContractMethod<[ - role: BytesLike, - index: BigNumberish - ], [ - string - ], "view">; - getFunction(nameOrSignature: "getRoleMemberCount"): TypedContractMethod<[role: BytesLike], [bigint], "view">; - getFunction(nameOrSignature: "grantRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "hasRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "renounceRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "revokeRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getEvent(key: "RoleAdminChanged"): TypedContractEvent; - getEvent(key: "RoleGranted"): TypedContractEvent; - getEvent(key: "RoleRevoked"): TypedContractEvent; - filters: { - "RoleAdminChanged(bytes32,bytes32,bytes32)": TypedContractEvent; - RoleAdminChanged: TypedContractEvent; - "RoleGranted(bytes32,address,address)": TypedContractEvent; - RoleGranted: TypedContractEvent; - "RoleRevoked(bytes32,address,address)": TypedContractEvent; - RoleRevoked: TypedContractEvent; - }; -} -//# sourceMappingURL=AccessControlMixin.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControlMixin.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControlMixin.d.ts.map deleted file mode 100644 index ebb9c605..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControlMixin.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"AccessControlMixin.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControlMixin.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControlMixin.js b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControlMixin.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControlMixin.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base.d.ts deleted file mode 100644 index b3f24632..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base.d.ts +++ /dev/null @@ -1,34 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; -export interface EIP712BaseInterface extends Interface { - getFunction(nameOrSignature: "ERC712_VERSION" | "getChainId" | "getDomainSeperator"): FunctionFragment; - encodeFunctionData(functionFragment: "ERC712_VERSION", values?: undefined): string; - encodeFunctionData(functionFragment: "getChainId", values?: undefined): string; - encodeFunctionData(functionFragment: "getDomainSeperator", values?: undefined): string; - decodeFunctionResult(functionFragment: "ERC712_VERSION", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getChainId", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getDomainSeperator", data: BytesLike): Result; -} -export interface EIP712Base extends BaseContract { - connect(runner?: ContractRunner | null): EIP712Base; - waitForDeployment(): Promise; - interface: EIP712BaseInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - ERC712_VERSION: TypedContractMethod<[], [string], "view">; - getChainId: TypedContractMethod<[], [bigint], "view">; - getDomainSeperator: TypedContractMethod<[], [string], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "ERC712_VERSION"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "getChainId"): TypedContractMethod<[], [bigint], "view">; - getFunction(nameOrSignature: "getDomainSeperator"): TypedContractMethod<[], [string], "view">; - filters: {}; -} -//# sourceMappingURL=EIP712Base.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base.d.ts.map deleted file mode 100644 index 68563cde..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"EIP712Base.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base.js b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager.d.ts deleted file mode 100644 index 8670ed7c..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager.d.ts +++ /dev/null @@ -1,58 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; -export interface ICheckpointManagerInterface extends Interface { - getFunction(nameOrSignature: "headerBlocks"): FunctionFragment; - encodeFunctionData(functionFragment: "headerBlocks", values: [BigNumberish]): string; - decodeFunctionResult(functionFragment: "headerBlocks", data: BytesLike): Result; -} -export interface ICheckpointManager extends BaseContract { - connect(runner?: ContractRunner | null): ICheckpointManager; - waitForDeployment(): Promise; - interface: ICheckpointManagerInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - headerBlocks: TypedContractMethod<[ - arg0: BigNumberish - ], [ - [ - string, - bigint, - bigint, - bigint, - string - ] & { - root: string; - start: bigint; - end: bigint; - createdAt: bigint; - proposer: string; - } - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "headerBlocks"): TypedContractMethod<[ - arg0: BigNumberish - ], [ - [ - string, - bigint, - bigint, - bigint, - string - ] & { - root: string; - start: bigint; - end: bigint; - createdAt: bigint; - proposer: string; - } - ], "view">; - filters: {}; -} -//# sourceMappingURL=ICheckpointManager.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager.d.ts.map deleted file mode 100644 index f3daf9f0..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ICheckpointManager.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager.js b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IRootChainManager.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IRootChainManager.d.ts deleted file mode 100644 index 4231a9cc..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IRootChainManager.d.ts +++ /dev/null @@ -1,150 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; -export interface IRootChainManagerInterface extends Interface { - getFunction(nameOrSignature: "cleanMapToken" | "depositEtherFor" | "depositFor" | "exit" | "mapToken" | "registerPredicate" | "remapToken"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "PredicateRegistered" | "TokenMapped"): EventFragment; - encodeFunctionData(functionFragment: "cleanMapToken", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "depositEtherFor", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "depositFor", values: [AddressLike, AddressLike, BytesLike]): string; - encodeFunctionData(functionFragment: "exit", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "mapToken", values: [AddressLike, AddressLike, BytesLike]): string; - encodeFunctionData(functionFragment: "registerPredicate", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "remapToken", values: [AddressLike, AddressLike, BytesLike]): string; - decodeFunctionResult(functionFragment: "cleanMapToken", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "depositEtherFor", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "depositFor", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "exit", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "mapToken", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "registerPredicate", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "remapToken", data: BytesLike): Result; -} -export declare namespace PredicateRegisteredEvent { - type InputTuple = [ - tokenType: BytesLike, - predicateAddress: AddressLike - ]; - type OutputTuple = [tokenType: string, predicateAddress: string]; - interface OutputObject { - tokenType: string; - predicateAddress: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TokenMappedEvent { - type InputTuple = [ - rootToken: AddressLike, - childToken: AddressLike, - tokenType: BytesLike - ]; - type OutputTuple = [ - rootToken: string, - childToken: string, - tokenType: string - ]; - interface OutputObject { - rootToken: string; - childToken: string; - tokenType: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface IRootChainManager extends BaseContract { - connect(runner?: ContractRunner | null): IRootChainManager; - waitForDeployment(): Promise; - interface: IRootChainManagerInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - cleanMapToken: TypedContractMethod<[ - rootToken: AddressLike, - childToken: AddressLike - ], [ - void - ], "nonpayable">; - depositEtherFor: TypedContractMethod<[user: AddressLike], [void], "payable">; - depositFor: TypedContractMethod<[ - user: AddressLike, - rootToken: AddressLike, - depositData: BytesLike - ], [ - void - ], "nonpayable">; - exit: TypedContractMethod<[inputData: BytesLike], [void], "nonpayable">; - mapToken: TypedContractMethod<[ - rootToken: AddressLike, - childToken: AddressLike, - tokenType: BytesLike - ], [ - void - ], "nonpayable">; - registerPredicate: TypedContractMethod<[ - tokenType: BytesLike, - predicateAddress: AddressLike - ], [ - void - ], "nonpayable">; - remapToken: TypedContractMethod<[ - rootToken: AddressLike, - childToken: AddressLike, - tokenType: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "cleanMapToken"): TypedContractMethod<[ - rootToken: AddressLike, - childToken: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "depositEtherFor"): TypedContractMethod<[user: AddressLike], [void], "payable">; - getFunction(nameOrSignature: "depositFor"): TypedContractMethod<[ - user: AddressLike, - rootToken: AddressLike, - depositData: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "exit"): TypedContractMethod<[inputData: BytesLike], [void], "nonpayable">; - getFunction(nameOrSignature: "mapToken"): TypedContractMethod<[ - rootToken: AddressLike, - childToken: AddressLike, - tokenType: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "registerPredicate"): TypedContractMethod<[ - tokenType: BytesLike, - predicateAddress: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "remapToken"): TypedContractMethod<[ - rootToken: AddressLike, - childToken: AddressLike, - tokenType: BytesLike - ], [ - void - ], "nonpayable">; - getEvent(key: "PredicateRegistered"): TypedContractEvent; - getEvent(key: "TokenMapped"): TypedContractEvent; - filters: { - "PredicateRegistered(bytes32,address)": TypedContractEvent; - PredicateRegistered: TypedContractEvent; - "TokenMapped(address,address,bytes32)": TypedContractEvent; - TokenMapped: TypedContractEvent; - }; -} -//# sourceMappingURL=IRootChainManager.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IRootChainManager.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IRootChainManager.d.ts.map deleted file mode 100644 index 3c55c619..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IRootChainManager.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IRootChainManager.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IRootChainManager.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IRootChainManager.js b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IRootChainManager.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IRootChainManager.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IStateSender.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IStateSender.d.ts deleted file mode 100644 index 6b90b009..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IStateSender.d.ts +++ /dev/null @@ -1,36 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; -export interface IStateSenderInterface extends Interface { - getFunction(nameOrSignature: "syncState"): FunctionFragment; - encodeFunctionData(functionFragment: "syncState", values: [AddressLike, BytesLike]): string; - decodeFunctionResult(functionFragment: "syncState", data: BytesLike): Result; -} -export interface IStateSender extends BaseContract { - connect(runner?: ContractRunner | null): IStateSender; - waitForDeployment(): Promise; - interface: IStateSenderInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - syncState: TypedContractMethod<[ - receiver: AddressLike, - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "syncState"): TypedContractMethod<[ - receiver: AddressLike, - data: BytesLike - ], [ - void - ], "nonpayable">; - filters: {}; -} -//# sourceMappingURL=IStateSender.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IStateSender.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IStateSender.d.ts.map deleted file mode 100644 index 5e1df180..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IStateSender.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IStateSender.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IStateSender.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IStateSender.js b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IStateSender.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IStateSender.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ITokenPredicate.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ITokenPredicate.d.ts deleted file mode 100644 index 215a3764..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ITokenPredicate.d.ts +++ /dev/null @@ -1,56 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; -export interface ITokenPredicateInterface extends Interface { - getFunction(nameOrSignature: "exitTokens" | "lockTokens"): FunctionFragment; - encodeFunctionData(functionFragment: "exitTokens", values: [AddressLike, AddressLike, BytesLike]): string; - encodeFunctionData(functionFragment: "lockTokens", values: [AddressLike, AddressLike, AddressLike, BytesLike]): string; - decodeFunctionResult(functionFragment: "exitTokens", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "lockTokens", data: BytesLike): Result; -} -export interface ITokenPredicate extends BaseContract { - connect(runner?: ContractRunner | null): ITokenPredicate; - waitForDeployment(): Promise; - interface: ITokenPredicateInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - exitTokens: TypedContractMethod<[ - sender: AddressLike, - rootToken: AddressLike, - logRLPList: BytesLike - ], [ - void - ], "nonpayable">; - lockTokens: TypedContractMethod<[ - depositor: AddressLike, - depositReceiver: AddressLike, - rootToken: AddressLike, - depositData: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "exitTokens"): TypedContractMethod<[ - sender: AddressLike, - rootToken: AddressLike, - logRLPList: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "lockTokens"): TypedContractMethod<[ - depositor: AddressLike, - depositReceiver: AddressLike, - rootToken: AddressLike, - depositData: BytesLike - ], [ - void - ], "nonpayable">; - filters: {}; -} -//# sourceMappingURL=ITokenPredicate.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ITokenPredicate.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ITokenPredicate.d.ts.map deleted file mode 100644 index b08387b3..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ITokenPredicate.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ITokenPredicate.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ITokenPredicate.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ITokenPredicate.js b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ITokenPredicate.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ITokenPredicate.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction.d.ts deleted file mode 100644 index a9f584a8..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction.d.ts +++ /dev/null @@ -1,84 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; -export interface NativeMetaTransactionInterface extends Interface { - getFunction(nameOrSignature: "ERC712_VERSION" | "executeMetaTransaction" | "getChainId" | "getDomainSeperator" | "getNonce"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "MetaTransactionExecuted"): EventFragment; - encodeFunctionData(functionFragment: "ERC712_VERSION", values?: undefined): string; - encodeFunctionData(functionFragment: "executeMetaTransaction", values: [AddressLike, BytesLike, BytesLike, BytesLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "getChainId", values?: undefined): string; - encodeFunctionData(functionFragment: "getDomainSeperator", values?: undefined): string; - encodeFunctionData(functionFragment: "getNonce", values: [AddressLike]): string; - decodeFunctionResult(functionFragment: "ERC712_VERSION", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "executeMetaTransaction", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getChainId", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getDomainSeperator", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getNonce", data: BytesLike): Result; -} -export declare namespace MetaTransactionExecutedEvent { - type InputTuple = [ - userAddress: AddressLike, - relayerAddress: AddressLike, - functionSignature: BytesLike - ]; - type OutputTuple = [ - userAddress: string, - relayerAddress: string, - functionSignature: string - ]; - interface OutputObject { - userAddress: string; - relayerAddress: string; - functionSignature: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface NativeMetaTransaction extends BaseContract { - connect(runner?: ContractRunner | null): NativeMetaTransaction; - waitForDeployment(): Promise; - interface: NativeMetaTransactionInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - ERC712_VERSION: TypedContractMethod<[], [string], "view">; - executeMetaTransaction: TypedContractMethod<[ - userAddress: AddressLike, - functionSignature: BytesLike, - sigR: BytesLike, - sigS: BytesLike, - sigV: BigNumberish - ], [ - string - ], "payable">; - getChainId: TypedContractMethod<[], [bigint], "view">; - getDomainSeperator: TypedContractMethod<[], [string], "view">; - getNonce: TypedContractMethod<[user: AddressLike], [bigint], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "ERC712_VERSION"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "executeMetaTransaction"): TypedContractMethod<[ - userAddress: AddressLike, - functionSignature: BytesLike, - sigR: BytesLike, - sigS: BytesLike, - sigV: BigNumberish - ], [ - string - ], "payable">; - getFunction(nameOrSignature: "getChainId"): TypedContractMethod<[], [bigint], "view">; - getFunction(nameOrSignature: "getDomainSeperator"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "getNonce"): TypedContractMethod<[user: AddressLike], [bigint], "view">; - getEvent(key: "MetaTransactionExecuted"): TypedContractEvent; - filters: { - "MetaTransactionExecuted(address,address,bytes)": TypedContractEvent; - MetaTransactionExecuted: TypedContractEvent; - }; -} -//# sourceMappingURL=NativeMetaTransaction.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction.d.ts.map deleted file mode 100644 index 2b398e52..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"NativeMetaTransaction.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction.js b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager.d.ts deleted file mode 100644 index f69bd817..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager.d.ts +++ /dev/null @@ -1,448 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; -export interface RootChainManagerInterface extends Interface { - getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE" | "DEPOSIT" | "ERC712_VERSION" | "ETHER_ADDRESS" | "MAPPER_ROLE" | "MAP_TOKEN" | "checkpointManagerAddress" | "childChainManagerAddress" | "childToRootToken" | "cleanMapToken" | "depositEtherFor" | "depositFor" | "executeMetaTransaction" | "exit" | "getChainId" | "getDomainSeperator" | "getNonce" | "getRoleAdmin" | "getRoleMember" | "getRoleMemberCount" | "grantRole" | "hasRole" | "initialize" | "initializeEIP712" | "mapToken" | "processedExits" | "registerPredicate" | "remapToken" | "renounceRole" | "revokeRole" | "rootToChildToken" | "setCheckpointManager" | "setChildChainManagerAddress" | "setStateSender" | "setupContractId" | "stateSenderAddress" | "tokenToType" | "typeToPredicate"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "MetaTransactionExecuted" | "PredicateRegistered" | "RoleAdminChanged" | "RoleGranted" | "RoleRevoked" | "TokenMapped"): EventFragment; - encodeFunctionData(functionFragment: "DEFAULT_ADMIN_ROLE", values?: undefined): string; - encodeFunctionData(functionFragment: "DEPOSIT", values?: undefined): string; - encodeFunctionData(functionFragment: "ERC712_VERSION", values?: undefined): string; - encodeFunctionData(functionFragment: "ETHER_ADDRESS", values?: undefined): string; - encodeFunctionData(functionFragment: "MAPPER_ROLE", values?: undefined): string; - encodeFunctionData(functionFragment: "MAP_TOKEN", values?: undefined): string; - encodeFunctionData(functionFragment: "checkpointManagerAddress", values?: undefined): string; - encodeFunctionData(functionFragment: "childChainManagerAddress", values?: undefined): string; - encodeFunctionData(functionFragment: "childToRootToken", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "cleanMapToken", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "depositEtherFor", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "depositFor", values: [AddressLike, AddressLike, BytesLike]): string; - encodeFunctionData(functionFragment: "executeMetaTransaction", values: [AddressLike, BytesLike, BytesLike, BytesLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "exit", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "getChainId", values?: undefined): string; - encodeFunctionData(functionFragment: "getDomainSeperator", values?: undefined): string; - encodeFunctionData(functionFragment: "getNonce", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "getRoleAdmin", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "getRoleMember", values: [BytesLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "getRoleMemberCount", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "grantRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "hasRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "initialize", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "initializeEIP712", values?: undefined): string; - encodeFunctionData(functionFragment: "mapToken", values: [AddressLike, AddressLike, BytesLike]): string; - encodeFunctionData(functionFragment: "processedExits", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "registerPredicate", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "remapToken", values: [AddressLike, AddressLike, BytesLike]): string; - encodeFunctionData(functionFragment: "renounceRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "revokeRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "rootToChildToken", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "setCheckpointManager", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "setChildChainManagerAddress", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "setStateSender", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "setupContractId", values?: undefined): string; - encodeFunctionData(functionFragment: "stateSenderAddress", values?: undefined): string; - encodeFunctionData(functionFragment: "tokenToType", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "typeToPredicate", values: [BytesLike]): string; - decodeFunctionResult(functionFragment: "DEFAULT_ADMIN_ROLE", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "DEPOSIT", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ERC712_VERSION", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ETHER_ADDRESS", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "MAPPER_ROLE", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "MAP_TOKEN", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "checkpointManagerAddress", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "childChainManagerAddress", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "childToRootToken", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "cleanMapToken", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "depositEtherFor", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "depositFor", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "executeMetaTransaction", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "exit", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getChainId", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getDomainSeperator", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getNonce", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getRoleAdmin", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getRoleMember", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getRoleMemberCount", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "grantRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "hasRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "initializeEIP712", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "mapToken", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "processedExits", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "registerPredicate", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "remapToken", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "revokeRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "rootToChildToken", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setCheckpointManager", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setChildChainManagerAddress", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setStateSender", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setupContractId", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "stateSenderAddress", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "tokenToType", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "typeToPredicate", data: BytesLike): Result; -} -export declare namespace MetaTransactionExecutedEvent { - type InputTuple = [ - userAddress: AddressLike, - relayerAddress: AddressLike, - functionSignature: BytesLike - ]; - type OutputTuple = [ - userAddress: string, - relayerAddress: string, - functionSignature: string - ]; - interface OutputObject { - userAddress: string; - relayerAddress: string; - functionSignature: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace PredicateRegisteredEvent { - type InputTuple = [ - tokenType: BytesLike, - predicateAddress: AddressLike - ]; - type OutputTuple = [tokenType: string, predicateAddress: string]; - interface OutputObject { - tokenType: string; - predicateAddress: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RoleAdminChangedEvent { - type InputTuple = [ - role: BytesLike, - previousAdminRole: BytesLike, - newAdminRole: BytesLike - ]; - type OutputTuple = [ - role: string, - previousAdminRole: string, - newAdminRole: string - ]; - interface OutputObject { - role: string; - previousAdminRole: string; - newAdminRole: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RoleGrantedEvent { - type InputTuple = [ - role: BytesLike, - account: AddressLike, - sender: AddressLike - ]; - type OutputTuple = [role: string, account: string, sender: string]; - interface OutputObject { - role: string; - account: string; - sender: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RoleRevokedEvent { - type InputTuple = [ - role: BytesLike, - account: AddressLike, - sender: AddressLike - ]; - type OutputTuple = [role: string, account: string, sender: string]; - interface OutputObject { - role: string; - account: string; - sender: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TokenMappedEvent { - type InputTuple = [ - rootToken: AddressLike, - childToken: AddressLike, - tokenType: BytesLike - ]; - type OutputTuple = [ - rootToken: string, - childToken: string, - tokenType: string - ]; - interface OutputObject { - rootToken: string; - childToken: string; - tokenType: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface RootChainManager extends BaseContract { - connect(runner?: ContractRunner | null): RootChainManager; - waitForDeployment(): Promise; - interface: RootChainManagerInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - DEFAULT_ADMIN_ROLE: TypedContractMethod<[], [string], "view">; - DEPOSIT: TypedContractMethod<[], [string], "view">; - ERC712_VERSION: TypedContractMethod<[], [string], "view">; - ETHER_ADDRESS: TypedContractMethod<[], [string], "view">; - MAPPER_ROLE: TypedContractMethod<[], [string], "view">; - MAP_TOKEN: TypedContractMethod<[], [string], "view">; - checkpointManagerAddress: TypedContractMethod<[], [string], "view">; - childChainManagerAddress: TypedContractMethod<[], [string], "view">; - childToRootToken: TypedContractMethod<[arg0: AddressLike], [string], "view">; - cleanMapToken: TypedContractMethod<[ - rootToken: AddressLike, - childToken: AddressLike - ], [ - void - ], "nonpayable">; - depositEtherFor: TypedContractMethod<[user: AddressLike], [void], "payable">; - depositFor: TypedContractMethod<[ - user: AddressLike, - rootToken: AddressLike, - depositData: BytesLike - ], [ - void - ], "nonpayable">; - executeMetaTransaction: TypedContractMethod<[ - userAddress: AddressLike, - functionSignature: BytesLike, - sigR: BytesLike, - sigS: BytesLike, - sigV: BigNumberish - ], [ - string - ], "payable">; - exit: TypedContractMethod<[inputData: BytesLike], [void], "nonpayable">; - getChainId: TypedContractMethod<[], [bigint], "view">; - getDomainSeperator: TypedContractMethod<[], [string], "view">; - getNonce: TypedContractMethod<[user: AddressLike], [bigint], "view">; - getRoleAdmin: TypedContractMethod<[role: BytesLike], [string], "view">; - getRoleMember: TypedContractMethod<[ - role: BytesLike, - index: BigNumberish - ], [ - string - ], "view">; - getRoleMemberCount: TypedContractMethod<[role: BytesLike], [bigint], "view">; - grantRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - hasRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - boolean - ], "view">; - initialize: TypedContractMethod<[_owner: AddressLike], [void], "nonpayable">; - initializeEIP712: TypedContractMethod<[], [void], "nonpayable">; - mapToken: TypedContractMethod<[ - rootToken: AddressLike, - childToken: AddressLike, - tokenType: BytesLike - ], [ - void - ], "nonpayable">; - processedExits: TypedContractMethod<[arg0: BytesLike], [boolean], "view">; - registerPredicate: TypedContractMethod<[ - tokenType: BytesLike, - predicateAddress: AddressLike - ], [ - void - ], "nonpayable">; - remapToken: TypedContractMethod<[ - rootToken: AddressLike, - childToken: AddressLike, - tokenType: BytesLike - ], [ - void - ], "nonpayable">; - renounceRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - revokeRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - rootToChildToken: TypedContractMethod<[arg0: AddressLike], [string], "view">; - setCheckpointManager: TypedContractMethod<[ - newCheckpointManager: AddressLike - ], [ - void - ], "nonpayable">; - setChildChainManagerAddress: TypedContractMethod<[ - newChildChainManager: AddressLike - ], [ - void - ], "nonpayable">; - setStateSender: TypedContractMethod<[ - newStateSender: AddressLike - ], [ - void - ], "nonpayable">; - setupContractId: TypedContractMethod<[], [void], "nonpayable">; - stateSenderAddress: TypedContractMethod<[], [string], "view">; - tokenToType: TypedContractMethod<[arg0: AddressLike], [string], "view">; - typeToPredicate: TypedContractMethod<[arg0: BytesLike], [string], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "DEPOSIT"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "ERC712_VERSION"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "ETHER_ADDRESS"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "MAPPER_ROLE"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "MAP_TOKEN"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "checkpointManagerAddress"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "childChainManagerAddress"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "childToRootToken"): TypedContractMethod<[arg0: AddressLike], [string], "view">; - getFunction(nameOrSignature: "cleanMapToken"): TypedContractMethod<[ - rootToken: AddressLike, - childToken: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "depositEtherFor"): TypedContractMethod<[user: AddressLike], [void], "payable">; - getFunction(nameOrSignature: "depositFor"): TypedContractMethod<[ - user: AddressLike, - rootToken: AddressLike, - depositData: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "executeMetaTransaction"): TypedContractMethod<[ - userAddress: AddressLike, - functionSignature: BytesLike, - sigR: BytesLike, - sigS: BytesLike, - sigV: BigNumberish - ], [ - string - ], "payable">; - getFunction(nameOrSignature: "exit"): TypedContractMethod<[inputData: BytesLike], [void], "nonpayable">; - getFunction(nameOrSignature: "getChainId"): TypedContractMethod<[], [bigint], "view">; - getFunction(nameOrSignature: "getDomainSeperator"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "getNonce"): TypedContractMethod<[user: AddressLike], [bigint], "view">; - getFunction(nameOrSignature: "getRoleAdmin"): TypedContractMethod<[role: BytesLike], [string], "view">; - getFunction(nameOrSignature: "getRoleMember"): TypedContractMethod<[ - role: BytesLike, - index: BigNumberish - ], [ - string - ], "view">; - getFunction(nameOrSignature: "getRoleMemberCount"): TypedContractMethod<[role: BytesLike], [bigint], "view">; - getFunction(nameOrSignature: "grantRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "hasRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "initialize"): TypedContractMethod<[_owner: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "initializeEIP712"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "mapToken"): TypedContractMethod<[ - rootToken: AddressLike, - childToken: AddressLike, - tokenType: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "processedExits"): TypedContractMethod<[arg0: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "registerPredicate"): TypedContractMethod<[ - tokenType: BytesLike, - predicateAddress: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "remapToken"): TypedContractMethod<[ - rootToken: AddressLike, - childToken: AddressLike, - tokenType: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "renounceRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "revokeRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "rootToChildToken"): TypedContractMethod<[arg0: AddressLike], [string], "view">; - getFunction(nameOrSignature: "setCheckpointManager"): TypedContractMethod<[ - newCheckpointManager: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setChildChainManagerAddress"): TypedContractMethod<[ - newChildChainManager: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setStateSender"): TypedContractMethod<[newStateSender: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "setupContractId"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "stateSenderAddress"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "tokenToType"): TypedContractMethod<[arg0: AddressLike], [string], "view">; - getFunction(nameOrSignature: "typeToPredicate"): TypedContractMethod<[arg0: BytesLike], [string], "view">; - getEvent(key: "MetaTransactionExecuted"): TypedContractEvent; - getEvent(key: "PredicateRegistered"): TypedContractEvent; - getEvent(key: "RoleAdminChanged"): TypedContractEvent; - getEvent(key: "RoleGranted"): TypedContractEvent; - getEvent(key: "RoleRevoked"): TypedContractEvent; - getEvent(key: "TokenMapped"): TypedContractEvent; - filters: { - "MetaTransactionExecuted(address,address,bytes)": TypedContractEvent; - MetaTransactionExecuted: TypedContractEvent; - "PredicateRegistered(bytes32,address)": TypedContractEvent; - PredicateRegistered: TypedContractEvent; - "RoleAdminChanged(bytes32,bytes32,bytes32)": TypedContractEvent; - RoleAdminChanged: TypedContractEvent; - "RoleGranted(bytes32,address,address)": TypedContractEvent; - RoleGranted: TypedContractEvent; - "RoleRevoked(bytes32,address,address)": TypedContractEvent; - RoleRevoked: TypedContractEvent; - "TokenMapped(address,address,bytes32)": TypedContractEvent; - TokenMapped: TypedContractEvent; - }; -} -//# sourceMappingURL=RootChainManager.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager.d.ts.map deleted file mode 100644 index 783f1719..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"RootChainManager.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager.js b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage.d.ts deleted file mode 100644 index 91554185..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage.d.ts +++ /dev/null @@ -1,46 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; -export interface RootChainManagerStorageInterface extends Interface { - getFunction(nameOrSignature: "childChainManagerAddress" | "childToRootToken" | "processedExits" | "rootToChildToken" | "tokenToType" | "typeToPredicate"): FunctionFragment; - encodeFunctionData(functionFragment: "childChainManagerAddress", values?: undefined): string; - encodeFunctionData(functionFragment: "childToRootToken", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "processedExits", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "rootToChildToken", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "tokenToType", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "typeToPredicate", values: [BytesLike]): string; - decodeFunctionResult(functionFragment: "childChainManagerAddress", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "childToRootToken", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "processedExits", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "rootToChildToken", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "tokenToType", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "typeToPredicate", data: BytesLike): Result; -} -export interface RootChainManagerStorage extends BaseContract { - connect(runner?: ContractRunner | null): RootChainManagerStorage; - waitForDeployment(): Promise; - interface: RootChainManagerStorageInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - childChainManagerAddress: TypedContractMethod<[], [string], "view">; - childToRootToken: TypedContractMethod<[arg0: AddressLike], [string], "view">; - processedExits: TypedContractMethod<[arg0: BytesLike], [boolean], "view">; - rootToChildToken: TypedContractMethod<[arg0: AddressLike], [string], "view">; - tokenToType: TypedContractMethod<[arg0: AddressLike], [string], "view">; - typeToPredicate: TypedContractMethod<[arg0: BytesLike], [string], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "childChainManagerAddress"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "childToRootToken"): TypedContractMethod<[arg0: AddressLike], [string], "view">; - getFunction(nameOrSignature: "processedExits"): TypedContractMethod<[arg0: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "rootToChildToken"): TypedContractMethod<[arg0: AddressLike], [string], "view">; - getFunction(nameOrSignature: "tokenToType"): TypedContractMethod<[arg0: AddressLike], [string], "view">; - getFunction(nameOrSignature: "typeToPredicate"): TypedContractMethod<[arg0: BytesLike], [string], "view">; - filters: {}; -} -//# sourceMappingURL=RootChainManagerStorage.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage.d.ts.map deleted file mode 100644 index 5d2569dc..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"RootChainManagerStorage.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage.js b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/index.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/index.d.ts deleted file mode 100644 index 36dcb36c..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/index.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -export type { AccessControl } from "./AccessControl"; -export type { AccessControlMixin } from "./AccessControlMixin"; -export type { EIP712Base } from "./EIP712Base"; -export type { ICheckpointManager } from "./ICheckpointManager"; -export type { IRootChainManager } from "./IRootChainManager"; -export type { IStateSender } from "./IStateSender"; -export type { ITokenPredicate } from "./ITokenPredicate"; -export type { NativeMetaTransaction } from "./NativeMetaTransaction"; -export type { RootChainManager } from "./RootChainManager"; -export type { RootChainManagerStorage } from "./RootChainManagerStorage"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/index.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/index.d.ts.map deleted file mode 100644 index e4cb17f9..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,YAAY,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,YAAY,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,YAAY,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,YAAY,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,YAAY,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACnD,YAAY,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,YAAY,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AACrE,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,YAAY,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/index.js b/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/ICheckpointManager.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/ICheckpointManager.d.ts deleted file mode 100644 index 8670ed7c..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/ICheckpointManager.d.ts +++ /dev/null @@ -1,58 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../../common"; -export interface ICheckpointManagerInterface extends Interface { - getFunction(nameOrSignature: "headerBlocks"): FunctionFragment; - encodeFunctionData(functionFragment: "headerBlocks", values: [BigNumberish]): string; - decodeFunctionResult(functionFragment: "headerBlocks", data: BytesLike): Result; -} -export interface ICheckpointManager extends BaseContract { - connect(runner?: ContractRunner | null): ICheckpointManager; - waitForDeployment(): Promise; - interface: ICheckpointManagerInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - headerBlocks: TypedContractMethod<[ - arg0: BigNumberish - ], [ - [ - string, - bigint, - bigint, - bigint, - string - ] & { - root: string; - start: bigint; - end: bigint; - createdAt: bigint; - proposer: string; - } - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "headerBlocks"): TypedContractMethod<[ - arg0: BigNumberish - ], [ - [ - string, - bigint, - bigint, - bigint, - string - ] & { - root: string; - start: bigint; - end: bigint; - createdAt: bigint; - proposer: string; - } - ], "view">; - filters: {}; -} -//# sourceMappingURL=ICheckpointManager.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/ICheckpointManager.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/ICheckpointManager.d.ts.map deleted file mode 100644 index 2bc9d1ea..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/ICheckpointManager.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ICheckpointManager.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/ICheckpointManager.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/ICheckpointManager.js b/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/ICheckpointManager.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/ICheckpointManager.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain.d.ts deleted file mode 100644 index 382e9d93..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain.d.ts +++ /dev/null @@ -1,56 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener } from "../../../../common"; -export interface IRootChainInterface extends Interface { - getEvent(nameOrSignatureOrTopic: "NewHeaderBlock"): EventFragment; -} -export declare namespace NewHeaderBlockEvent { - type InputTuple = [ - proposer: AddressLike, - headerBlockId: BigNumberish, - reward: BigNumberish, - start: BigNumberish, - end: BigNumberish, - root: BytesLike - ]; - type OutputTuple = [ - proposer: string, - headerBlockId: bigint, - reward: bigint, - start: bigint, - end: bigint, - root: string - ]; - interface OutputObject { - proposer: string; - headerBlockId: bigint; - reward: bigint; - start: bigint; - end: bigint; - root: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface IRootChain extends BaseContract { - connect(runner?: ContractRunner | null): IRootChain; - waitForDeployment(): Promise; - interface: IRootChainInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - getFunction(key: string | FunctionFragment): T; - getEvent(key: "NewHeaderBlock"): TypedContractEvent; - filters: { - "NewHeaderBlock(address,uint256,uint256,uint256,uint256,bytes32)": TypedContractEvent; - NewHeaderBlock: TypedContractEvent; - }; -} -//# sourceMappingURL=IRootChain.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain.d.ts.map deleted file mode 100644 index 9361e0a6..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IRootChain.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain.js b/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager.d.ts deleted file mode 100644 index e25c6859..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager.d.ts +++ /dev/null @@ -1,113 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../../common"; -export interface SimpleCheckpointManagerInterface extends Interface { - getFunction(nameOrSignature: "currentCheckpointNumber" | "headerBlocks" | "setCheckpoint"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "NewHeaderBlock"): EventFragment; - encodeFunctionData(functionFragment: "currentCheckpointNumber", values?: undefined): string; - encodeFunctionData(functionFragment: "headerBlocks", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "setCheckpoint", values: [BytesLike, BigNumberish, BigNumberish]): string; - decodeFunctionResult(functionFragment: "currentCheckpointNumber", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "headerBlocks", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setCheckpoint", data: BytesLike): Result; -} -export declare namespace NewHeaderBlockEvent { - type InputTuple = [ - proposer: AddressLike, - headerBlockId: BigNumberish, - reward: BigNumberish, - start: BigNumberish, - end: BigNumberish, - root: BytesLike - ]; - type OutputTuple = [ - proposer: string, - headerBlockId: bigint, - reward: bigint, - start: bigint, - end: bigint, - root: string - ]; - interface OutputObject { - proposer: string; - headerBlockId: bigint; - reward: bigint; - start: bigint; - end: bigint; - root: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface SimpleCheckpointManager extends BaseContract { - connect(runner?: ContractRunner | null): SimpleCheckpointManager; - waitForDeployment(): Promise; - interface: SimpleCheckpointManagerInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - currentCheckpointNumber: TypedContractMethod<[], [bigint], "view">; - headerBlocks: TypedContractMethod<[ - arg0: BigNumberish - ], [ - [ - string, - bigint, - bigint, - bigint, - string - ] & { - root: string; - start: bigint; - end: bigint; - createdAt: bigint; - proposer: string; - } - ], "view">; - setCheckpoint: TypedContractMethod<[ - rootHash: BytesLike, - start: BigNumberish, - end: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "currentCheckpointNumber"): TypedContractMethod<[], [bigint], "view">; - getFunction(nameOrSignature: "headerBlocks"): TypedContractMethod<[ - arg0: BigNumberish - ], [ - [ - string, - bigint, - bigint, - bigint, - string - ] & { - root: string; - start: bigint; - end: bigint; - createdAt: bigint; - proposer: string; - } - ], "view">; - getFunction(nameOrSignature: "setCheckpoint"): TypedContractMethod<[ - rootHash: BytesLike, - start: BigNumberish, - end: BigNumberish - ], [ - void - ], "nonpayable">; - getEvent(key: "NewHeaderBlock"): TypedContractEvent; - filters: { - "NewHeaderBlock(address,uint256,uint256,uint256,uint256,bytes32)": TypedContractEvent; - NewHeaderBlock: TypedContractEvent; - }; -} -//# sourceMappingURL=SimpleCheckpointManager.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager.d.ts.map deleted file mode 100644 index 14d346da..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"SimpleCheckpointManager.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager.js b/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/index.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/index.d.ts deleted file mode 100644 index 8546f8bd..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/index.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export type { ICheckpointManager } from "./ICheckpointManager"; -export type { IRootChain } from "./IRootChain"; -export type { SimpleCheckpointManager } from "./SimpleCheckpointManager"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/index.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/index.d.ts.map deleted file mode 100644 index 63abca98..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,YAAY,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,YAAY,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/index.js b/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/@maticnetwork/pos-portal/index.d.ts b/dist/types/contracts/@maticnetwork/pos-portal/index.d.ts deleted file mode 100644 index fbf88508..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/index.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -import type * as dummyStateSenderSol from "./DummyStateSender.sol"; -export type { dummyStateSenderSol }; -import type * as mintableErc721PredicateSol from "./MintableERC721Predicate.sol"; -export type { mintableErc721PredicateSol }; -import type * as rootChainManagerSol from "./RootChainManager.sol"; -export type { rootChainManagerSol }; -import type * as simpleCheckpointManagerSol from "./SimpleCheckpointManager.sol"; -export type { simpleCheckpointManagerSol }; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/index.d.ts.map b/dist/types/contracts/@maticnetwork/pos-portal/index.d.ts.map deleted file mode 100644 index 17305d82..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/contracts/@maticnetwork/pos-portal/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,mBAAmB,MAAM,wBAAwB,CAAC;AACnE,YAAY,EAAE,mBAAmB,EAAE,CAAC;AACpC,OAAO,KAAK,KAAK,0BAA0B,MAAM,+BAA+B,CAAC;AACjF,YAAY,EAAE,0BAA0B,EAAE,CAAC;AAC3C,OAAO,KAAK,KAAK,mBAAmB,MAAM,wBAAwB,CAAC;AACnE,YAAY,EAAE,mBAAmB,EAAE,CAAC;AACpC,OAAO,KAAK,KAAK,0BAA0B,MAAM,+BAA+B,CAAC;AACjF,YAAY,EAAE,0BAA0B,EAAE,CAAC"} \ No newline at end of file diff --git a/dist/types/contracts/@maticnetwork/pos-portal/index.js b/dist/types/contracts/@maticnetwork/pos-portal/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/@maticnetwork/pos-portal/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/ChildRegistry.d.ts b/dist/types/contracts/ChildRegistry.d.ts deleted file mode 100644 index 63072f50..00000000 --- a/dist/types/contracts/ChildRegistry.d.ts +++ /dev/null @@ -1,244 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../common"; -export interface ChildRegistryInterface extends Interface { - getFunction(nameOrSignature: "BATCH_LIMIT" | "approve" | "balanceOf" | "deposit" | "getApproved" | "isApprovedForAll" | "name" | "ownerOf" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "setApprovalForAll" | "supportsInterface" | "symbol" | "tokenURI" | "transferFrom"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "Initialized" | "Transfer"): EventFragment; - encodeFunctionData(functionFragment: "BATCH_LIMIT", values?: undefined): string; - encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "deposit", values: [AddressLike, BytesLike]): string; - encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "name", values?: undefined): string; - encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "symbol", values?: undefined): string; - encodeFunctionData(functionFragment: "tokenURI", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; - decodeFunctionResult(functionFragment: "BATCH_LIMIT", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "deposit", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "tokenURI", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; -} -export declare namespace ApprovalEvent { - type InputTuple = [ - owner: AddressLike, - approved: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [owner: string, approved: string, tokenId: bigint]; - interface OutputObject { - owner: string; - approved: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ApprovalForAllEvent { - type InputTuple = [ - owner: AddressLike, - operator: AddressLike, - approved: boolean - ]; - type OutputTuple = [ - owner: string, - operator: string, - approved: boolean - ]; - interface OutputObject { - owner: string; - operator: string; - approved: boolean; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace InitializedEvent { - type InputTuple = [version: BigNumberish]; - type OutputTuple = [version: bigint]; - interface OutputObject { - version: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferEvent { - type InputTuple = [ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [from: string, to: string, tokenId: bigint]; - interface OutputObject { - from: string; - to: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface ChildRegistry extends BaseContract { - connect(runner?: ContractRunner | null): ChildRegistry; - waitForDeployment(): Promise; - interface: ChildRegistryInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - BATCH_LIMIT: TypedContractMethod<[], [bigint], "view">; - approve: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; - deposit: TypedContractMethod<[ - user: AddressLike, - depositData: BytesLike - ], [ - void - ], "nonpayable">; - getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - isApprovedForAll: TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - name: TypedContractMethod<[], [string], "view">; - ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - setApprovalForAll: TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - symbol: TypedContractMethod<[], [string], "view">; - tokenURI: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - transferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "BATCH_LIMIT"): TypedContractMethod<[], [bigint], "view">; - getFunction(nameOrSignature: "approve"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; - getFunction(nameOrSignature: "deposit"): TypedContractMethod<[ - user: AddressLike, - depositData: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "symbol"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "tokenURI"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getEvent(key: "Approval"): TypedContractEvent; - getEvent(key: "ApprovalForAll"): TypedContractEvent; - getEvent(key: "Initialized"): TypedContractEvent; - getEvent(key: "Transfer"): TypedContractEvent; - filters: { - "Approval(address,address,uint256)": TypedContractEvent; - Approval: TypedContractEvent; - "ApprovalForAll(address,address,bool)": TypedContractEvent; - ApprovalForAll: TypedContractEvent; - "Initialized(uint8)": TypedContractEvent; - Initialized: TypedContractEvent; - "Transfer(address,address,uint256)": TypedContractEvent; - Transfer: TypedContractEvent; - }; -} -//# sourceMappingURL=ChildRegistry.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/ChildRegistry.d.ts.map b/dist/types/contracts/ChildRegistry.d.ts.map deleted file mode 100644 index f3346b22..00000000 --- a/dist/types/contracts/ChildRegistry.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ChildRegistry.d.ts","sourceRoot":"","sources":["../../../types/contracts/ChildRegistry.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/ChildRegistry.js b/dist/types/contracts/ChildRegistry.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/ChildRegistry.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/DotCoinBurner.d.ts b/dist/types/contracts/DotCoinBurner.d.ts deleted file mode 100644 index 814174c5..00000000 --- a/dist/types/contracts/DotCoinBurner.d.ts +++ /dev/null @@ -1,47 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../common"; -export interface DotCoinBurnerInterface extends Interface { - getFunction(nameOrSignature: "burnAll"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "BatchCompleted"): EventFragment; - encodeFunctionData(functionFragment: "burnAll", values: [BigNumberish[]]): string; - decodeFunctionResult(functionFragment: "burnAll", data: BytesLike): Result; -} -export declare namespace BatchCompletedEvent { - type InputTuple = [first: BigNumberish, last: BigNumberish]; - type OutputTuple = [first: bigint, last: bigint]; - interface OutputObject { - first: bigint; - last: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface DotCoinBurner extends BaseContract { - connect(runner?: ContractRunner | null): DotCoinBurner; - waitForDeployment(): Promise; - interface: DotCoinBurnerInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - burnAll: TypedContractMethod<[ - labelHashes: BigNumberish[] - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "burnAll"): TypedContractMethod<[labelHashes: BigNumberish[]], [void], "nonpayable">; - getEvent(key: "BatchCompleted"): TypedContractEvent; - filters: { - "BatchCompleted(uint256,uint256)": TypedContractEvent; - BatchCompleted: TypedContractEvent; - }; -} -//# sourceMappingURL=DotCoinBurner.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/DotCoinBurner.d.ts.map b/dist/types/contracts/DotCoinBurner.d.ts.map deleted file mode 100644 index dee27eda..00000000 --- a/dist/types/contracts/DotCoinBurner.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"DotCoinBurner.d.ts","sourceRoot":"","sources":["../../../types/contracts/DotCoinBurner.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/DotCoinBurner.js b/dist/types/contracts/DotCoinBurner.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/DotCoinBurner.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/IAddressReader.d.ts b/dist/types/contracts/IAddressReader.d.ts deleted file mode 100644 index dd8e472a..00000000 --- a/dist/types/contracts/IAddressReader.d.ts +++ /dev/null @@ -1,63 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../common"; -export interface IAddressReaderInterface extends Interface { - getFunction(nameOrSignature: "getAddress" | "getAddressKey" | "getAddressKeys"): FunctionFragment; - encodeFunctionData(functionFragment: "getAddress", values: [string, string, BigNumberish]): string; - encodeFunctionData(functionFragment: "getAddressKey", values: [string, string, BigNumberish]): string; - encodeFunctionData(functionFragment: "getAddressKeys", values: [string, string]): string; - decodeFunctionResult(functionFragment: "getAddress", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getAddressKey", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getAddressKeys", data: BytesLike): Result; -} -export interface IAddressReader extends BaseContract { - connect(runner?: ContractRunner | null): IAddressReader; - waitForDeployment(): Promise; - interface: IAddressReaderInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - getAddress: TypedContractMethod<[ - network: string, - token: string, - tokenId: BigNumberish - ], [ - string - ], "view">; - getAddressKey: TypedContractMethod<[ - network: string, - token: string, - tokenId: BigNumberish - ], [ - string - ], "view">; - getAddressKeys: TypedContractMethod<[ - network: string, - token: string - ], [ - string[] - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "getAddress"): TypedContractMethod<[ - network: string, - token: string, - tokenId: BigNumberish - ], [ - string - ], "view">; - getFunction(nameOrSignature: "getAddressKey"): TypedContractMethod<[ - network: string, - token: string, - tokenId: BigNumberish - ], [ - string - ], "view">; - getFunction(nameOrSignature: "getAddressKeys"): TypedContractMethod<[network: string, token: string], [string[]], "view">; - filters: {}; -} -//# sourceMappingURL=IAddressReader.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/IAddressReader.d.ts.map b/dist/types/contracts/IAddressReader.d.ts.map deleted file mode 100644 index 270fd5f6..00000000 --- a/dist/types/contracts/IAddressReader.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IAddressReader.d.ts","sourceRoot":"","sources":["../../../types/contracts/IAddressReader.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/IAddressReader.js b/dist/types/contracts/IAddressReader.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/IAddressReader.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/IDataReader.d.ts b/dist/types/contracts/IDataReader.d.ts deleted file mode 100644 index 985aa679..00000000 --- a/dist/types/contracts/IDataReader.d.ts +++ /dev/null @@ -1,158 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../common"; -export interface IDataReaderInterface extends Interface { - getFunction(nameOrSignature: "getData" | "getDataByHash" | "getDataByHashForMany" | "getDataForMany" | "ownerOfForMany"): FunctionFragment; - encodeFunctionData(functionFragment: "getData", values: [string[], BigNumberish]): string; - encodeFunctionData(functionFragment: "getDataByHash", values: [BigNumberish[], BigNumberish]): string; - encodeFunctionData(functionFragment: "getDataByHashForMany", values: [BigNumberish[], BigNumberish[]]): string; - encodeFunctionData(functionFragment: "getDataForMany", values: [string[], BigNumberish[]]): string; - encodeFunctionData(functionFragment: "ownerOfForMany", values: [BigNumberish[]]): string; - decodeFunctionResult(functionFragment: "getData", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getDataByHash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getDataByHashForMany", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getDataForMany", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ownerOfForMany", data: BytesLike): Result; -} -export interface IDataReader extends BaseContract { - connect(runner?: ContractRunner | null): IDataReader; - waitForDeployment(): Promise; - interface: IDataReaderInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - getData: TypedContractMethod<[ - keys: string[], - tokenId: BigNumberish - ], [ - [ - string, - string, - string[] - ] & { - resolver: string; - owner: string; - values: string[]; - } - ], "view">; - getDataByHash: TypedContractMethod<[ - keyHashes: BigNumberish[], - tokenId: BigNumberish - ], [ - [ - string, - string, - string[], - string[] - ] & { - resolver: string; - owner: string; - keys: string[]; - values: string[]; - } - ], "view">; - getDataByHashForMany: TypedContractMethod<[ - keyHashes: BigNumberish[], - tokenIds: BigNumberish[] - ], [ - [ - string[], - string[], - string[][], - string[][] - ] & { - resolvers: string[]; - owners: string[]; - keys: string[][]; - values: string[][]; - } - ], "view">; - getDataForMany: TypedContractMethod<[ - keys: string[], - tokenIds: BigNumberish[] - ], [ - [ - string[], - string[], - string[][] - ] & { - resolvers: string[]; - owners: string[]; - values: string[][]; - } - ], "view">; - ownerOfForMany: TypedContractMethod<[ - tokenIds: BigNumberish[] - ], [ - string[] - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "getData"): TypedContractMethod<[ - keys: string[], - tokenId: BigNumberish - ], [ - [ - string, - string, - string[] - ] & { - resolver: string; - owner: string; - values: string[]; - } - ], "view">; - getFunction(nameOrSignature: "getDataByHash"): TypedContractMethod<[ - keyHashes: BigNumberish[], - tokenId: BigNumberish - ], [ - [ - string, - string, - string[], - string[] - ] & { - resolver: string; - owner: string; - keys: string[]; - values: string[]; - } - ], "view">; - getFunction(nameOrSignature: "getDataByHashForMany"): TypedContractMethod<[ - keyHashes: BigNumberish[], - tokenIds: BigNumberish[] - ], [ - [ - string[], - string[], - string[][], - string[][] - ] & { - resolvers: string[]; - owners: string[]; - keys: string[][]; - values: string[][]; - } - ], "view">; - getFunction(nameOrSignature: "getDataForMany"): TypedContractMethod<[ - keys: string[], - tokenIds: BigNumberish[] - ], [ - [ - string[], - string[], - string[][] - ] & { - resolvers: string[]; - owners: string[]; - values: string[][]; - } - ], "view">; - getFunction(nameOrSignature: "ownerOfForMany"): TypedContractMethod<[tokenIds: BigNumberish[]], [string[]], "view">; - filters: {}; -} -//# sourceMappingURL=IDataReader.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/IDataReader.d.ts.map b/dist/types/contracts/IDataReader.d.ts.map deleted file mode 100644 index a23c4863..00000000 --- a/dist/types/contracts/IDataReader.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IDataReader.d.ts","sourceRoot":"","sources":["../../../types/contracts/IDataReader.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/IDataReader.js b/dist/types/contracts/IDataReader.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/IDataReader.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/IERC1967.d.ts b/dist/types/contracts/IERC1967.d.ts deleted file mode 100644 index 0bf35cb9..00000000 --- a/dist/types/contracts/IERC1967.d.ts +++ /dev/null @@ -1,52 +0,0 @@ -import type { BaseContract, FunctionFragment, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener } from "../common"; -export interface IERC1967Interface extends Interface { - getEvent(nameOrSignatureOrTopic: "AdminChanged" | "Upgraded"): EventFragment; -} -export declare namespace AdminChangedEvent { - type InputTuple = [previousAdmin: AddressLike, newAdmin: AddressLike]; - type OutputTuple = [previousAdmin: string, newAdmin: string]; - interface OutputObject { - previousAdmin: string; - newAdmin: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace UpgradedEvent { - type InputTuple = [implementation: AddressLike]; - type OutputTuple = [implementation: string]; - interface OutputObject { - implementation: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface IERC1967 extends BaseContract { - connect(runner?: ContractRunner | null): IERC1967; - waitForDeployment(): Promise; - interface: IERC1967Interface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - getFunction(key: string | FunctionFragment): T; - getEvent(key: "AdminChanged"): TypedContractEvent; - getEvent(key: "Upgraded"): TypedContractEvent; - filters: { - "AdminChanged(address,address)": TypedContractEvent; - AdminChanged: TypedContractEvent; - "Upgraded(address)": TypedContractEvent; - Upgraded: TypedContractEvent; - }; -} -//# sourceMappingURL=IERC1967.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/IERC1967.d.ts.map b/dist/types/contracts/IERC1967.d.ts.map deleted file mode 100644 index b485ba79..00000000 --- a/dist/types/contracts/IERC1967.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC1967.d.ts","sourceRoot":"","sources":["../../../types/contracts/IERC1967.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/IERC1967.js b/dist/types/contracts/IERC1967.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/IERC1967.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/IMintingManager.d.ts b/dist/types/contracts/IMintingManager.d.ts deleted file mode 100644 index c871a967..00000000 --- a/dist/types/contracts/IMintingManager.d.ts +++ /dev/null @@ -1,357 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../common"; -export interface IMintingManagerInterface extends Interface { - getFunction(nameOrSignature: "addTld" | "buy" | "buyForErc20" | "claim" | "claimTo" | "claimToWithRecords" | "issueExpirableWithRecords" | "issueWithRecords" | "removeTld" | "renew" | "revoke" | "setTokenURIPrefix" | "withdraw(address)" | "withdraw(address,address)"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "AdminChanged" | "DomainPurchase" | "NewTld" | "RemoveTld" | "Upgraded" | "Withdrawal"): EventFragment; - encodeFunctionData(functionFragment: "addTld", values: [string, boolean]): string; - encodeFunctionData(functionFragment: "buy", values: [ - AddressLike, - string[], - string[], - string[], - BigNumberish, - BigNumberish, - BytesLike - ]): string; - encodeFunctionData(functionFragment: "buyForErc20", values: [ - AddressLike, - string[], - string[], - string[], - BigNumberish, - AddressLike, - BigNumberish, - BytesLike - ]): string; - encodeFunctionData(functionFragment: "claim", values: [BigNumberish, string]): string; - encodeFunctionData(functionFragment: "claimTo", values: [AddressLike, BigNumberish, string]): string; - encodeFunctionData(functionFragment: "claimToWithRecords", values: [AddressLike, BigNumberish, string, string[], string[]]): string; - encodeFunctionData(functionFragment: "issueExpirableWithRecords", values: [AddressLike, string[], string[], string[], BigNumberish, boolean]): string; - encodeFunctionData(functionFragment: "issueWithRecords", values: [AddressLike, string[], string[], string[], boolean]): string; - encodeFunctionData(functionFragment: "removeTld", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "renew", values: [BigNumberish, BigNumberish]): string; - encodeFunctionData(functionFragment: "revoke", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "setTokenURIPrefix", values: [string]): string; - encodeFunctionData(functionFragment: "withdraw(address)", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "withdraw(address,address)", values: [AddressLike, AddressLike]): string; - decodeFunctionResult(functionFragment: "addTld", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "buy", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "buyForErc20", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "claim", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "claimTo", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "claimToWithRecords", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "issueExpirableWithRecords", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "issueWithRecords", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "removeTld", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renew", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "revoke", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setTokenURIPrefix", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "withdraw(address)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "withdraw(address,address)", data: BytesLike): Result; -} -export declare namespace AdminChangedEvent { - type InputTuple = [previousAdmin: AddressLike, newAdmin: AddressLike]; - type OutputTuple = [previousAdmin: string, newAdmin: string]; - interface OutputObject { - previousAdmin: string; - newAdmin: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace DomainPurchaseEvent { - type InputTuple = [ - tokenId: BigNumberish, - sender: AddressLike, - owner: AddressLike, - price: BigNumberish, - token: AddressLike - ]; - type OutputTuple = [ - tokenId: bigint, - sender: string, - owner: string, - price: bigint, - token: string - ]; - interface OutputObject { - tokenId: bigint; - sender: string; - owner: string; - price: bigint; - token: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NewTldEvent { - type InputTuple = [tokenId: BigNumberish, tld: string]; - type OutputTuple = [tokenId: bigint, tld: string]; - interface OutputObject { - tokenId: bigint; - tld: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RemoveTldEvent { - type InputTuple = [tokenId: BigNumberish]; - type OutputTuple = [tokenId: bigint]; - interface OutputObject { - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace UpgradedEvent { - type InputTuple = [implementation: AddressLike]; - type OutputTuple = [implementation: string]; - interface OutputObject { - implementation: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace WithdrawalEvent { - type InputTuple = [ - recepient: AddressLike, - value: BigNumberish, - token: AddressLike - ]; - type OutputTuple = [recepient: string, value: bigint, token: string]; - interface OutputObject { - recepient: string; - value: bigint; - token: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface IMintingManager extends BaseContract { - connect(runner?: ContractRunner | null): IMintingManager; - waitForDeployment(): Promise; - interface: IMintingManagerInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - addTld: TypedContractMethod<[ - tld: string, - isExpirable: boolean - ], [ - void - ], "nonpayable">; - buy: TypedContractMethod<[ - owner: AddressLike, - labels: string[], - keys: string[], - values: string[], - expiry: BigNumberish, - price: BigNumberish, - signature: BytesLike - ], [ - void - ], "payable">; - buyForErc20: TypedContractMethod<[ - owner: AddressLike, - labels: string[], - keys: string[], - values: string[], - expiry: BigNumberish, - token: AddressLike, - price: BigNumberish, - signature: BytesLike - ], [ - void - ], "nonpayable">; - claim: TypedContractMethod<[ - tld: BigNumberish, - label: string - ], [ - void - ], "nonpayable">; - claimTo: TypedContractMethod<[ - to: AddressLike, - tld: BigNumberish, - label: string - ], [ - void - ], "nonpayable">; - claimToWithRecords: TypedContractMethod<[ - to: AddressLike, - tld: BigNumberish, - label: string, - keys: string[], - values: string[] - ], [ - void - ], "nonpayable">; - issueExpirableWithRecords: TypedContractMethod<[ - to: AddressLike, - labels: string[], - keys: string[], - values: string[], - expiry: BigNumberish, - withReverse: boolean - ], [ - void - ], "nonpayable">; - issueWithRecords: TypedContractMethod<[ - to: AddressLike, - labels: string[], - keys: string[], - values: string[], - withReverse: boolean - ], [ - void - ], "nonpayable">; - removeTld: TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; - renew: TypedContractMethod<[ - expiry: BigNumberish, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - revoke: TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; - setTokenURIPrefix: TypedContractMethod<[ - prefix: string - ], [ - void - ], "nonpayable">; - "withdraw(address)": TypedContractMethod<[ - recepient: AddressLike - ], [ - void - ], "nonpayable">; - "withdraw(address,address)": TypedContractMethod<[ - token: AddressLike, - recepient: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "addTld"): TypedContractMethod<[ - tld: string, - isExpirable: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "buy"): TypedContractMethod<[ - owner: AddressLike, - labels: string[], - keys: string[], - values: string[], - expiry: BigNumberish, - price: BigNumberish, - signature: BytesLike - ], [ - void - ], "payable">; - getFunction(nameOrSignature: "buyForErc20"): TypedContractMethod<[ - owner: AddressLike, - labels: string[], - keys: string[], - values: string[], - expiry: BigNumberish, - token: AddressLike, - price: BigNumberish, - signature: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "claim"): TypedContractMethod<[ - tld: BigNumberish, - label: string - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "claimTo"): TypedContractMethod<[ - to: AddressLike, - tld: BigNumberish, - label: string - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "claimToWithRecords"): TypedContractMethod<[ - to: AddressLike, - tld: BigNumberish, - label: string, - keys: string[], - values: string[] - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "issueExpirableWithRecords"): TypedContractMethod<[ - to: AddressLike, - labels: string[], - keys: string[], - values: string[], - expiry: BigNumberish, - withReverse: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "issueWithRecords"): TypedContractMethod<[ - to: AddressLike, - labels: string[], - keys: string[], - values: string[], - withReverse: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "removeTld"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; - getFunction(nameOrSignature: "renew"): TypedContractMethod<[ - expiry: BigNumberish, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "revoke"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; - getFunction(nameOrSignature: "setTokenURIPrefix"): TypedContractMethod<[prefix: string], [void], "nonpayable">; - getFunction(nameOrSignature: "withdraw(address)"): TypedContractMethod<[recepient: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "withdraw(address,address)"): TypedContractMethod<[ - token: AddressLike, - recepient: AddressLike - ], [ - void - ], "nonpayable">; - getEvent(key: "AdminChanged"): TypedContractEvent; - getEvent(key: "DomainPurchase"): TypedContractEvent; - getEvent(key: "NewTld"): TypedContractEvent; - getEvent(key: "RemoveTld"): TypedContractEvent; - getEvent(key: "Upgraded"): TypedContractEvent; - getEvent(key: "Withdrawal"): TypedContractEvent; - filters: { - "AdminChanged(address,address)": TypedContractEvent; - AdminChanged: TypedContractEvent; - "DomainPurchase(uint256,address,address,uint256,address)": TypedContractEvent; - DomainPurchase: TypedContractEvent; - "NewTld(uint256,string)": TypedContractEvent; - NewTld: TypedContractEvent; - "RemoveTld(uint256)": TypedContractEvent; - RemoveTld: TypedContractEvent; - "Upgraded(address)": TypedContractEvent; - Upgraded: TypedContractEvent; - "Withdrawal(address,uint256,address)": TypedContractEvent; - Withdrawal: TypedContractEvent; - }; -} -//# sourceMappingURL=IMintingManager.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/IMintingManager.d.ts.map b/dist/types/contracts/IMintingManager.d.ts.map deleted file mode 100644 index b7a4a3af..00000000 --- a/dist/types/contracts/IMintingManager.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IMintingManager.d.ts","sourceRoot":"","sources":["../../../types/contracts/IMintingManager.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/IMintingManager.js b/dist/types/contracts/IMintingManager.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/IMintingManager.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/IRecordReader.d.ts b/dist/types/contracts/IRecordReader.d.ts deleted file mode 100644 index 4d4f6402..00000000 --- a/dist/types/contracts/IRecordReader.d.ts +++ /dev/null @@ -1,90 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../common"; -export interface IRecordReaderInterface extends Interface { - getFunction(nameOrSignature: "get" | "getByHash" | "getMany" | "getManyByHash"): FunctionFragment; - encodeFunctionData(functionFragment: "get", values: [string, BigNumberish]): string; - encodeFunctionData(functionFragment: "getByHash", values: [BigNumberish, BigNumberish]): string; - encodeFunctionData(functionFragment: "getMany", values: [string[], BigNumberish]): string; - encodeFunctionData(functionFragment: "getManyByHash", values: [BigNumberish[], BigNumberish]): string; - decodeFunctionResult(functionFragment: "get", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getByHash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getMany", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getManyByHash", data: BytesLike): Result; -} -export interface IRecordReader extends BaseContract { - connect(runner?: ContractRunner | null): IRecordReader; - waitForDeployment(): Promise; - interface: IRecordReaderInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - get: TypedContractMethod<[ - key: string, - tokenId: BigNumberish - ], [ - string - ], "view">; - getByHash: TypedContractMethod<[ - keyHash: BigNumberish, - tokenId: BigNumberish - ], [ - [string, string] & { - key: string; - value: string; - } - ], "view">; - getMany: TypedContractMethod<[ - keys: string[], - tokenId: BigNumberish - ], [ - string[] - ], "view">; - getManyByHash: TypedContractMethod<[ - keyHashes: BigNumberish[], - tokenId: BigNumberish - ], [ - [string[], string[]] & { - keys: string[]; - values: string[]; - } - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "get"): TypedContractMethod<[ - key: string, - tokenId: BigNumberish - ], [ - string - ], "view">; - getFunction(nameOrSignature: "getByHash"): TypedContractMethod<[ - keyHash: BigNumberish, - tokenId: BigNumberish - ], [ - [string, string] & { - key: string; - value: string; - } - ], "view">; - getFunction(nameOrSignature: "getMany"): TypedContractMethod<[ - keys: string[], - tokenId: BigNumberish - ], [ - string[] - ], "view">; - getFunction(nameOrSignature: "getManyByHash"): TypedContractMethod<[ - keyHashes: BigNumberish[], - tokenId: BigNumberish - ], [ - [string[], string[]] & { - keys: string[]; - values: string[]; - } - ], "view">; - filters: {}; -} -//# sourceMappingURL=IRecordReader.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/IRecordReader.d.ts.map b/dist/types/contracts/IRecordReader.d.ts.map deleted file mode 100644 index 6419e1d7..00000000 --- a/dist/types/contracts/IRecordReader.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IRecordReader.d.ts","sourceRoot":"","sources":["../../../types/contracts/IRecordReader.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/IRecordReader.js b/dist/types/contracts/IRecordReader.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/IRecordReader.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/IRecordStorage.d.ts b/dist/types/contracts/IRecordStorage.d.ts deleted file mode 100644 index 5c3ef370..00000000 --- a/dist/types/contracts/IRecordStorage.d.ts +++ /dev/null @@ -1,240 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../common"; -export interface IRecordStorageInterface extends Interface { - getFunction(nameOrSignature: "get" | "getByHash" | "getMany" | "getManyByHash" | "reconfigure" | "reset" | "set" | "setByHash" | "setMany" | "setManyByHash"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "NewKey" | "ResetRecords" | "Set"): EventFragment; - encodeFunctionData(functionFragment: "get", values: [string, BigNumberish]): string; - encodeFunctionData(functionFragment: "getByHash", values: [BigNumberish, BigNumberish]): string; - encodeFunctionData(functionFragment: "getMany", values: [string[], BigNumberish]): string; - encodeFunctionData(functionFragment: "getManyByHash", values: [BigNumberish[], BigNumberish]): string; - encodeFunctionData(functionFragment: "reconfigure", values: [string[], string[], BigNumberish]): string; - encodeFunctionData(functionFragment: "reset", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "set", values: [string, string, BigNumberish]): string; - encodeFunctionData(functionFragment: "setByHash", values: [BigNumberish, string, BigNumberish]): string; - encodeFunctionData(functionFragment: "setMany", values: [string[], string[], BigNumberish]): string; - encodeFunctionData(functionFragment: "setManyByHash", values: [BigNumberish[], string[], BigNumberish]): string; - decodeFunctionResult(functionFragment: "get", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getByHash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getMany", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getManyByHash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "reconfigure", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "reset", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "set", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setByHash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setMany", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setManyByHash", data: BytesLike): Result; -} -export declare namespace NewKeyEvent { - type InputTuple = [ - tokenId: BigNumberish, - keyIndex: string, - key: string - ]; - type OutputTuple = [tokenId: bigint, keyIndex: string, key: string]; - interface OutputObject { - tokenId: bigint; - keyIndex: string; - key: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ResetRecordsEvent { - type InputTuple = [tokenId: BigNumberish]; - type OutputTuple = [tokenId: bigint]; - interface OutputObject { - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace SetEvent { - type InputTuple = [ - tokenId: BigNumberish, - keyIndex: string, - valueIndex: string, - key: string, - value: string - ]; - type OutputTuple = [ - tokenId: bigint, - keyIndex: string, - valueIndex: string, - key: string, - value: string - ]; - interface OutputObject { - tokenId: bigint; - keyIndex: string; - valueIndex: string; - key: string; - value: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface IRecordStorage extends BaseContract { - connect(runner?: ContractRunner | null): IRecordStorage; - waitForDeployment(): Promise; - interface: IRecordStorageInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - get: TypedContractMethod<[ - key: string, - tokenId: BigNumberish - ], [ - string - ], "view">; - getByHash: TypedContractMethod<[ - keyHash: BigNumberish, - tokenId: BigNumberish - ], [ - [string, string] & { - key: string; - value: string; - } - ], "view">; - getMany: TypedContractMethod<[ - keys: string[], - tokenId: BigNumberish - ], [ - string[] - ], "view">; - getManyByHash: TypedContractMethod<[ - keyHashes: BigNumberish[], - tokenId: BigNumberish - ], [ - [string[], string[]] & { - keys: string[]; - values: string[]; - } - ], "view">; - reconfigure: TypedContractMethod<[ - keys: string[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - reset: TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; - set: TypedContractMethod<[ - key: string, - value: string, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - setByHash: TypedContractMethod<[ - keyHash: BigNumberish, - value: string, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - setMany: TypedContractMethod<[ - keys: string[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - setManyByHash: TypedContractMethod<[ - keyHashes: BigNumberish[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "get"): TypedContractMethod<[ - key: string, - tokenId: BigNumberish - ], [ - string - ], "view">; - getFunction(nameOrSignature: "getByHash"): TypedContractMethod<[ - keyHash: BigNumberish, - tokenId: BigNumberish - ], [ - [string, string] & { - key: string; - value: string; - } - ], "view">; - getFunction(nameOrSignature: "getMany"): TypedContractMethod<[ - keys: string[], - tokenId: BigNumberish - ], [ - string[] - ], "view">; - getFunction(nameOrSignature: "getManyByHash"): TypedContractMethod<[ - keyHashes: BigNumberish[], - tokenId: BigNumberish - ], [ - [string[], string[]] & { - keys: string[]; - values: string[]; - } - ], "view">; - getFunction(nameOrSignature: "reconfigure"): TypedContractMethod<[ - keys: string[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "reset"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; - getFunction(nameOrSignature: "set"): TypedContractMethod<[ - key: string, - value: string, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setByHash"): TypedContractMethod<[ - keyHash: BigNumberish, - value: string, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setMany"): TypedContractMethod<[ - keys: string[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setManyByHash"): TypedContractMethod<[ - keyHashes: BigNumberish[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getEvent(key: "NewKey"): TypedContractEvent; - getEvent(key: "ResetRecords"): TypedContractEvent; - getEvent(key: "Set"): TypedContractEvent; - filters: { - "NewKey(uint256,string,string)": TypedContractEvent; - NewKey: TypedContractEvent; - "ResetRecords(uint256)": TypedContractEvent; - ResetRecords: TypedContractEvent; - "Set(uint256,string,string,string,string)": TypedContractEvent; - Set: TypedContractEvent; - }; -} -//# sourceMappingURL=IRecordStorage.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/IRecordStorage.d.ts.map b/dist/types/contracts/IRecordStorage.d.ts.map deleted file mode 100644 index 2d9956a6..00000000 --- a/dist/types/contracts/IRecordStorage.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IRecordStorage.d.ts","sourceRoot":"","sources":["../../../types/contracts/IRecordStorage.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/IRecordStorage.js b/dist/types/contracts/IRecordStorage.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/IRecordStorage.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/IRegistryReader.d.ts b/dist/types/contracts/IRegistryReader.d.ts deleted file mode 100644 index 7a4bdc12..00000000 --- a/dist/types/contracts/IRegistryReader.d.ts +++ /dev/null @@ -1,86 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../common"; -export interface IRegistryReaderInterface extends Interface { - getFunction(nameOrSignature: "balanceOf" | "exists" | "getApproved" | "isApprovedForAll" | "isApprovedOrOwner" | "namehash" | "ownerOf" | "resolverOf" | "reverseNameOf" | "reverseOf" | "tokenURI"): FunctionFragment; - encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "exists", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "isApprovedOrOwner", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "namehash", values: [string[]]): string; - encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "resolverOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "reverseNameOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "reverseOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "tokenURI", values: [BigNumberish]): string; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "exists", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedOrOwner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "namehash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "resolverOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "reverseNameOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "reverseOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "tokenURI", data: BytesLike): Result; -} -export interface IRegistryReader extends BaseContract { - connect(runner?: ContractRunner | null): IRegistryReader; - waitForDeployment(): Promise; - interface: IRegistryReaderInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; - exists: TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; - getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - isApprovedForAll: TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - isApprovedOrOwner: TypedContractMethod<[ - spender: AddressLike, - tokenId: BigNumberish - ], [ - boolean - ], "view">; - namehash: TypedContractMethod<[labels: string[]], [bigint], "view">; - ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - resolverOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - reverseNameOf: TypedContractMethod<[addr: AddressLike], [string], "view">; - reverseOf: TypedContractMethod<[addr: AddressLike], [bigint], "view">; - tokenURI: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; - getFunction(nameOrSignature: "exists"): TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; - getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "isApprovedOrOwner"): TypedContractMethod<[ - spender: AddressLike, - tokenId: BigNumberish - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "namehash"): TypedContractMethod<[labels: string[]], [bigint], "view">; - getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "resolverOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "reverseNameOf"): TypedContractMethod<[addr: AddressLike], [string], "view">; - getFunction(nameOrSignature: "reverseOf"): TypedContractMethod<[addr: AddressLike], [bigint], "view">; - getFunction(nameOrSignature: "tokenURI"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - filters: {}; -} -//# sourceMappingURL=IRegistryReader.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/IRegistryReader.d.ts.map b/dist/types/contracts/IRegistryReader.d.ts.map deleted file mode 100644 index d72d6eb3..00000000 --- a/dist/types/contracts/IRegistryReader.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IRegistryReader.d.ts","sourceRoot":"","sources":["../../../types/contracts/IRegistryReader.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/IRegistryReader.js b/dist/types/contracts/IRegistryReader.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/IRegistryReader.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/IReverseRegistry.d.ts b/dist/types/contracts/IReverseRegistry.d.ts deleted file mode 100644 index 8c3525de..00000000 --- a/dist/types/contracts/IReverseRegistry.d.ts +++ /dev/null @@ -1,69 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../common"; -export interface IReverseRegistryInterface extends Interface { - getFunction(nameOrSignature: "removeReverse" | "reverseNameOf" | "reverseOf" | "setReverse"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "RemoveReverse" | "SetReverse"): EventFragment; - encodeFunctionData(functionFragment: "removeReverse", values?: undefined): string; - encodeFunctionData(functionFragment: "reverseNameOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "reverseOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "setReverse", values: [string[]]): string; - decodeFunctionResult(functionFragment: "removeReverse", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "reverseNameOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "reverseOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setReverse", data: BytesLike): Result; -} -export declare namespace RemoveReverseEvent { - type InputTuple = [addr: AddressLike]; - type OutputTuple = [addr: string]; - interface OutputObject { - addr: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace SetReverseEvent { - type InputTuple = [addr: AddressLike, tokenId: BigNumberish]; - type OutputTuple = [addr: string, tokenId: bigint]; - interface OutputObject { - addr: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface IReverseRegistry extends BaseContract { - connect(runner?: ContractRunner | null): IReverseRegistry; - waitForDeployment(): Promise; - interface: IReverseRegistryInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - removeReverse: TypedContractMethod<[], [void], "nonpayable">; - reverseNameOf: TypedContractMethod<[addr: AddressLike], [string], "view">; - reverseOf: TypedContractMethod<[addr: AddressLike], [bigint], "view">; - setReverse: TypedContractMethod<[labels: string[]], [void], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "removeReverse"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "reverseNameOf"): TypedContractMethod<[addr: AddressLike], [string], "view">; - getFunction(nameOrSignature: "reverseOf"): TypedContractMethod<[addr: AddressLike], [bigint], "view">; - getFunction(nameOrSignature: "setReverse"): TypedContractMethod<[labels: string[]], [void], "nonpayable">; - getEvent(key: "RemoveReverse"): TypedContractEvent; - getEvent(key: "SetReverse"): TypedContractEvent; - filters: { - "RemoveReverse(address)": TypedContractEvent; - RemoveReverse: TypedContractEvent; - "SetReverse(address,uint256)": TypedContractEvent; - SetReverse: TypedContractEvent; - }; -} -//# sourceMappingURL=IReverseRegistry.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/IReverseRegistry.d.ts.map b/dist/types/contracts/IReverseRegistry.d.ts.map deleted file mode 100644 index c49c8e43..00000000 --- a/dist/types/contracts/IReverseRegistry.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IReverseRegistry.d.ts","sourceRoot":"","sources":["../../../types/contracts/IReverseRegistry.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/IReverseRegistry.js b/dist/types/contracts/IReverseRegistry.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/IReverseRegistry.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/IRootRegistry.d.ts b/dist/types/contracts/IRootRegistry.d.ts deleted file mode 100644 index 1aea2b3a..00000000 --- a/dist/types/contracts/IRootRegistry.d.ts +++ /dev/null @@ -1,260 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../common"; -export interface IRootRegistryInterface extends Interface { - getFunction(nameOrSignature: "approve" | "balanceOf" | "depositToPolygon" | "exists" | "getApproved" | "isApprovedForAll" | "mint(address,uint256)" | "mint(address,uint256,bytes)" | "ownerOf" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "setApprovalForAll" | "supportsInterface" | "transferFrom" | "withdrawFromPolygon"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "Transfer"): EventFragment; - encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "depositToPolygon", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "exists", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "mint(address,uint256)", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "mint(address,uint256,bytes)", values: [AddressLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "withdrawFromPolygon", values: [BytesLike, BigNumberish, string[], string[]]): string; - decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "depositToPolygon", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "exists", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "mint(address,uint256)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "mint(address,uint256,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "withdrawFromPolygon", data: BytesLike): Result; -} -export declare namespace ApprovalEvent { - type InputTuple = [ - owner: AddressLike, - approved: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [owner: string, approved: string, tokenId: bigint]; - interface OutputObject { - owner: string; - approved: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ApprovalForAllEvent { - type InputTuple = [ - owner: AddressLike, - operator: AddressLike, - approved: boolean - ]; - type OutputTuple = [ - owner: string, - operator: string, - approved: boolean - ]; - interface OutputObject { - owner: string; - operator: string; - approved: boolean; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferEvent { - type InputTuple = [ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [from: string, to: string, tokenId: bigint]; - interface OutputObject { - from: string; - to: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface IRootRegistry extends BaseContract { - connect(runner?: ContractRunner | null): IRootRegistry; - waitForDeployment(): Promise; - interface: IRootRegistryInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - approve: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; - depositToPolygon: TypedContractMethod<[ - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - exists: TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; - getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - isApprovedForAll: TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - "mint(address,uint256)": TypedContractMethod<[ - user: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - "mint(address,uint256,bytes)": TypedContractMethod<[ - user: AddressLike, - tokenId: BigNumberish, - metaData: BytesLike - ], [ - void - ], "nonpayable">; - ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - setApprovalForAll: TypedContractMethod<[ - operator: AddressLike, - _approved: boolean - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - transferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - withdrawFromPolygon: TypedContractMethod<[ - inputData: BytesLike, - tokenId: BigNumberish, - keys: string[], - values: string[] - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "approve"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; - getFunction(nameOrSignature: "depositToPolygon"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; - getFunction(nameOrSignature: "exists"): TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; - getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "mint(address,uint256)"): TypedContractMethod<[ - user: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "mint(address,uint256,bytes)"): TypedContractMethod<[ - user: AddressLike, - tokenId: BigNumberish, - metaData: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ - operator: AddressLike, - _approved: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "withdrawFromPolygon"): TypedContractMethod<[ - inputData: BytesLike, - tokenId: BigNumberish, - keys: string[], - values: string[] - ], [ - void - ], "nonpayable">; - getEvent(key: "Approval"): TypedContractEvent; - getEvent(key: "ApprovalForAll"): TypedContractEvent; - getEvent(key: "Transfer"): TypedContractEvent; - filters: { - "Approval(address,address,uint256)": TypedContractEvent; - Approval: TypedContractEvent; - "ApprovalForAll(address,address,bool)": TypedContractEvent; - ApprovalForAll: TypedContractEvent; - "Transfer(address,address,uint256)": TypedContractEvent; - Transfer: TypedContractEvent; - }; -} -//# sourceMappingURL=IRootRegistry.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/IRootRegistry.d.ts.map b/dist/types/contracts/IRootRegistry.d.ts.map deleted file mode 100644 index f7f15135..00000000 --- a/dist/types/contracts/IRootRegistry.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IRootRegistry.d.ts","sourceRoot":"","sources":["../../../types/contracts/IRootRegistry.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/IRootRegistry.js b/dist/types/contracts/IRootRegistry.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/IRootRegistry.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/IUNSRegistry.d.ts b/dist/types/contracts/IUNSRegistry.d.ts deleted file mode 100644 index 30660748..00000000 --- a/dist/types/contracts/IUNSRegistry.d.ts +++ /dev/null @@ -1,784 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../common"; -export interface IUNSRegistryInterface extends Interface { - getFunction(nameOrSignature: "addProxyReader" | "approve" | "balanceOf" | "burn" | "deposit" | "depositToPolygon" | "exists" | "expiryOf" | "get" | "getApproved" | "getByHash" | "getMany" | "getManyByHash" | "isApprovedForAll" | "isApprovedOrOwner" | "isExpired" | "mint(address,uint256)" | "mint(address,uint256,bytes)" | "mintTLD" | "mintWithRecords" | "name" | "namehash" | "onERC721Received" | "ownerOf" | "reconfigure" | "removeReverse" | "reset" | "resolverOf" | "reverseNameOf" | "reverseOf" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "set" | "setApprovalForAll" | "setByHash" | "setExpiry" | "setMany" | "setManyByHash" | "setOwner" | "setReverse" | "setTokenURIPrefix" | "supportsInterface" | "symbol" | "tokenURI" | "transferFrom" | "unlock" | "unlockWithRecords" | "withdrawFromPolygon"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "AdminChanged" | "Approval" | "ApprovalForAll" | "NewKey" | "NewURI" | "NewURIPrefix" | "RemoveReverse" | "ResetRecords" | "Set" | "SetExpiry" | "SetReverse" | "Transfer" | "Upgraded"): EventFragment; - encodeFunctionData(functionFragment: "addProxyReader", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "burn", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "deposit", values: [AddressLike, BytesLike]): string; - encodeFunctionData(functionFragment: "depositToPolygon", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "exists", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "expiryOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "get", values: [string, BigNumberish]): string; - encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "getByHash", values: [BigNumberish, BigNumberish]): string; - encodeFunctionData(functionFragment: "getMany", values: [string[], BigNumberish]): string; - encodeFunctionData(functionFragment: "getManyByHash", values: [BigNumberish[], BigNumberish]): string; - encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "isApprovedOrOwner", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "isExpired", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "mint(address,uint256)", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "mint(address,uint256,bytes)", values: [AddressLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "mintTLD", values: [BigNumberish, string]): string; - encodeFunctionData(functionFragment: "mintWithRecords", values: [AddressLike, string[], string[], string[], boolean]): string; - encodeFunctionData(functionFragment: "name", values?: undefined): string; - encodeFunctionData(functionFragment: "namehash", values: [string[]]): string; - encodeFunctionData(functionFragment: "onERC721Received", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "reconfigure", values: [string[], string[], BigNumberish]): string; - encodeFunctionData(functionFragment: "removeReverse", values?: undefined): string; - encodeFunctionData(functionFragment: "reset", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "resolverOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "reverseNameOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "reverseOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "set", values: [string, string, BigNumberish]): string; - encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; - encodeFunctionData(functionFragment: "setByHash", values: [BigNumberish, string, BigNumberish]): string; - encodeFunctionData(functionFragment: "setExpiry", values: [BigNumberish, BigNumberish]): string; - encodeFunctionData(functionFragment: "setMany", values: [string[], string[], BigNumberish]): string; - encodeFunctionData(functionFragment: "setManyByHash", values: [BigNumberish[], string[], BigNumberish]): string; - encodeFunctionData(functionFragment: "setOwner", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "setReverse", values: [string[]]): string; - encodeFunctionData(functionFragment: "setTokenURIPrefix", values: [string]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "symbol", values?: undefined): string; - encodeFunctionData(functionFragment: "tokenURI", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "unlock", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "unlockWithRecords", values: [AddressLike, string[], string[], string[], boolean]): string; - encodeFunctionData(functionFragment: "withdrawFromPolygon", values: [BytesLike, BigNumberish, string[], string[]]): string; - decodeFunctionResult(functionFragment: "addProxyReader", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "burn", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "deposit", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "depositToPolygon", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "exists", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "expiryOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "get", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getByHash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getMany", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getManyByHash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedOrOwner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isExpired", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "mint(address,uint256)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "mint(address,uint256,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "mintTLD", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "mintWithRecords", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "namehash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "onERC721Received", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "reconfigure", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "removeReverse", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "reset", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "resolverOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "reverseNameOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "reverseOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "set", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setByHash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setExpiry", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setMany", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setManyByHash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setOwner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setReverse", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setTokenURIPrefix", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "tokenURI", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "unlock", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "unlockWithRecords", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "withdrawFromPolygon", data: BytesLike): Result; -} -export declare namespace AdminChangedEvent { - type InputTuple = [previousAdmin: AddressLike, newAdmin: AddressLike]; - type OutputTuple = [previousAdmin: string, newAdmin: string]; - interface OutputObject { - previousAdmin: string; - newAdmin: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ApprovalEvent { - type InputTuple = [ - owner: AddressLike, - approved: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [owner: string, approved: string, tokenId: bigint]; - interface OutputObject { - owner: string; - approved: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ApprovalForAllEvent { - type InputTuple = [ - owner: AddressLike, - operator: AddressLike, - approved: boolean - ]; - type OutputTuple = [ - owner: string, - operator: string, - approved: boolean - ]; - interface OutputObject { - owner: string; - operator: string; - approved: boolean; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NewKeyEvent { - type InputTuple = [ - tokenId: BigNumberish, - keyIndex: string, - key: string - ]; - type OutputTuple = [tokenId: bigint, keyIndex: string, key: string]; - interface OutputObject { - tokenId: bigint; - keyIndex: string; - key: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NewURIEvent { - type InputTuple = [tokenId: BigNumberish, uri: string]; - type OutputTuple = [tokenId: bigint, uri: string]; - interface OutputObject { - tokenId: bigint; - uri: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NewURIPrefixEvent { - type InputTuple = [prefix: string]; - type OutputTuple = [prefix: string]; - interface OutputObject { - prefix: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RemoveReverseEvent { - type InputTuple = [addr: AddressLike]; - type OutputTuple = [addr: string]; - interface OutputObject { - addr: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ResetRecordsEvent { - type InputTuple = [tokenId: BigNumberish]; - type OutputTuple = [tokenId: bigint]; - interface OutputObject { - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace SetEvent { - type InputTuple = [ - tokenId: BigNumberish, - keyIndex: string, - valueIndex: string, - key: string, - value: string - ]; - type OutputTuple = [ - tokenId: bigint, - keyIndex: string, - valueIndex: string, - key: string, - value: string - ]; - interface OutputObject { - tokenId: bigint; - keyIndex: string; - valueIndex: string; - key: string; - value: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace SetExpiryEvent { - type InputTuple = [tokenId: BigNumberish, expiry: BigNumberish]; - type OutputTuple = [tokenId: bigint, expiry: bigint]; - interface OutputObject { - tokenId: bigint; - expiry: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace SetReverseEvent { - type InputTuple = [addr: AddressLike, tokenId: BigNumberish]; - type OutputTuple = [addr: string, tokenId: bigint]; - interface OutputObject { - addr: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferEvent { - type InputTuple = [ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [from: string, to: string, tokenId: bigint]; - interface OutputObject { - from: string; - to: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace UpgradedEvent { - type InputTuple = [implementation: AddressLike]; - type OutputTuple = [implementation: string]; - interface OutputObject { - implementation: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface IUNSRegistry extends BaseContract { - connect(runner?: ContractRunner | null): IUNSRegistry; - waitForDeployment(): Promise; - interface: IUNSRegistryInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - addProxyReader: TypedContractMethod<[ - addr: AddressLike - ], [ - void - ], "nonpayable">; - approve: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; - burn: TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; - deposit: TypedContractMethod<[ - user: AddressLike, - depositData: BytesLike - ], [ - void - ], "nonpayable">; - depositToPolygon: TypedContractMethod<[ - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - exists: TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; - expiryOf: TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; - get: TypedContractMethod<[ - key: string, - tokenId: BigNumberish - ], [ - string - ], "view">; - getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getByHash: TypedContractMethod<[ - keyHash: BigNumberish, - tokenId: BigNumberish - ], [ - [string, string] & { - key: string; - value: string; - } - ], "view">; - getMany: TypedContractMethod<[ - keys: string[], - tokenId: BigNumberish - ], [ - string[] - ], "view">; - getManyByHash: TypedContractMethod<[ - keyHashes: BigNumberish[], - tokenId: BigNumberish - ], [ - [string[], string[]] & { - keys: string[]; - values: string[]; - } - ], "view">; - isApprovedForAll: TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - isApprovedOrOwner: TypedContractMethod<[ - spender: AddressLike, - tokenId: BigNumberish - ], [ - boolean - ], "view">; - isExpired: TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; - "mint(address,uint256)": TypedContractMethod<[ - user: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - "mint(address,uint256,bytes)": TypedContractMethod<[ - user: AddressLike, - tokenId: BigNumberish, - metaData: BytesLike - ], [ - void - ], "nonpayable">; - mintTLD: TypedContractMethod<[ - tokenId: BigNumberish, - uri: string - ], [ - void - ], "nonpayable">; - mintWithRecords: TypedContractMethod<[ - to: AddressLike, - labels: string[], - keys: string[], - values: string[], - withReverse: boolean - ], [ - void - ], "nonpayable">; - name: TypedContractMethod<[], [string], "view">; - namehash: TypedContractMethod<[labels: string[]], [bigint], "view">; - onERC721Received: TypedContractMethod<[ - operator: AddressLike, - from: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - string - ], "nonpayable">; - ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - reconfigure: TypedContractMethod<[ - keys: string[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - removeReverse: TypedContractMethod<[], [void], "nonpayable">; - reset: TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; - resolverOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - reverseNameOf: TypedContractMethod<[addr: AddressLike], [string], "view">; - reverseOf: TypedContractMethod<[addr: AddressLike], [bigint], "view">; - "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - set: TypedContractMethod<[ - key: string, - value: string, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - setApprovalForAll: TypedContractMethod<[ - operator: AddressLike, - _approved: boolean - ], [ - void - ], "nonpayable">; - setByHash: TypedContractMethod<[ - keyHash: BigNumberish, - value: string, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - setExpiry: TypedContractMethod<[ - expiry: BigNumberish, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - setMany: TypedContractMethod<[ - keys: string[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - setManyByHash: TypedContractMethod<[ - keyHashes: BigNumberish[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - setOwner: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - setReverse: TypedContractMethod<[labels: string[]], [void], "nonpayable">; - setTokenURIPrefix: TypedContractMethod<[ - prefix: string - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - symbol: TypedContractMethod<[], [string], "view">; - tokenURI: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - transferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - unlock: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - unlockWithRecords: TypedContractMethod<[ - to: AddressLike, - labels: string[], - keys: string[], - values: string[], - withReverse: boolean - ], [ - void - ], "nonpayable">; - withdrawFromPolygon: TypedContractMethod<[ - inputData: BytesLike, - tokenId: BigNumberish, - keys: string[], - values: string[] - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "addProxyReader"): TypedContractMethod<[addr: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "approve"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; - getFunction(nameOrSignature: "burn"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; - getFunction(nameOrSignature: "deposit"): TypedContractMethod<[ - user: AddressLike, - depositData: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "depositToPolygon"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; - getFunction(nameOrSignature: "exists"): TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; - getFunction(nameOrSignature: "expiryOf"): TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; - getFunction(nameOrSignature: "get"): TypedContractMethod<[ - key: string, - tokenId: BigNumberish - ], [ - string - ], "view">; - getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "getByHash"): TypedContractMethod<[ - keyHash: BigNumberish, - tokenId: BigNumberish - ], [ - [string, string] & { - key: string; - value: string; - } - ], "view">; - getFunction(nameOrSignature: "getMany"): TypedContractMethod<[ - keys: string[], - tokenId: BigNumberish - ], [ - string[] - ], "view">; - getFunction(nameOrSignature: "getManyByHash"): TypedContractMethod<[ - keyHashes: BigNumberish[], - tokenId: BigNumberish - ], [ - [string[], string[]] & { - keys: string[]; - values: string[]; - } - ], "view">; - getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "isApprovedOrOwner"): TypedContractMethod<[ - spender: AddressLike, - tokenId: BigNumberish - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "isExpired"): TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; - getFunction(nameOrSignature: "mint(address,uint256)"): TypedContractMethod<[ - user: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "mint(address,uint256,bytes)"): TypedContractMethod<[ - user: AddressLike, - tokenId: BigNumberish, - metaData: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "mintTLD"): TypedContractMethod<[ - tokenId: BigNumberish, - uri: string - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "mintWithRecords"): TypedContractMethod<[ - to: AddressLike, - labels: string[], - keys: string[], - values: string[], - withReverse: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "namehash"): TypedContractMethod<[labels: string[]], [bigint], "view">; - getFunction(nameOrSignature: "onERC721Received"): TypedContractMethod<[ - operator: AddressLike, - from: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - string - ], "nonpayable">; - getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "reconfigure"): TypedContractMethod<[ - keys: string[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "removeReverse"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "reset"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; - getFunction(nameOrSignature: "resolverOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "reverseNameOf"): TypedContractMethod<[addr: AddressLike], [string], "view">; - getFunction(nameOrSignature: "reverseOf"): TypedContractMethod<[addr: AddressLike], [bigint], "view">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "set"): TypedContractMethod<[ - key: string, - value: string, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ - operator: AddressLike, - _approved: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setByHash"): TypedContractMethod<[ - keyHash: BigNumberish, - value: string, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setExpiry"): TypedContractMethod<[ - expiry: BigNumberish, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setMany"): TypedContractMethod<[ - keys: string[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setManyByHash"): TypedContractMethod<[ - keyHashes: BigNumberish[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setOwner"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setReverse"): TypedContractMethod<[labels: string[]], [void], "nonpayable">; - getFunction(nameOrSignature: "setTokenURIPrefix"): TypedContractMethod<[prefix: string], [void], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "symbol"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "tokenURI"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "unlock"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "unlockWithRecords"): TypedContractMethod<[ - to: AddressLike, - labels: string[], - keys: string[], - values: string[], - withReverse: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "withdrawFromPolygon"): TypedContractMethod<[ - inputData: BytesLike, - tokenId: BigNumberish, - keys: string[], - values: string[] - ], [ - void - ], "nonpayable">; - getEvent(key: "AdminChanged"): TypedContractEvent; - getEvent(key: "Approval"): TypedContractEvent; - getEvent(key: "ApprovalForAll"): TypedContractEvent; - getEvent(key: "NewKey"): TypedContractEvent; - getEvent(key: "NewURI"): TypedContractEvent; - getEvent(key: "NewURIPrefix"): TypedContractEvent; - getEvent(key: "RemoveReverse"): TypedContractEvent; - getEvent(key: "ResetRecords"): TypedContractEvent; - getEvent(key: "Set"): TypedContractEvent; - getEvent(key: "SetExpiry"): TypedContractEvent; - getEvent(key: "SetReverse"): TypedContractEvent; - getEvent(key: "Transfer"): TypedContractEvent; - getEvent(key: "Upgraded"): TypedContractEvent; - filters: { - "AdminChanged(address,address)": TypedContractEvent; - AdminChanged: TypedContractEvent; - "Approval(address,address,uint256)": TypedContractEvent; - Approval: TypedContractEvent; - "ApprovalForAll(address,address,bool)": TypedContractEvent; - ApprovalForAll: TypedContractEvent; - "NewKey(uint256,string,string)": TypedContractEvent; - NewKey: TypedContractEvent; - "NewURI(uint256,string)": TypedContractEvent; - NewURI: TypedContractEvent; - "NewURIPrefix(string)": TypedContractEvent; - NewURIPrefix: TypedContractEvent; - "RemoveReverse(address)": TypedContractEvent; - RemoveReverse: TypedContractEvent; - "ResetRecords(uint256)": TypedContractEvent; - ResetRecords: TypedContractEvent; - "Set(uint256,string,string,string,string)": TypedContractEvent; - Set: TypedContractEvent; - "SetExpiry(uint256,uint64)": TypedContractEvent; - SetExpiry: TypedContractEvent; - "SetReverse(address,uint256)": TypedContractEvent; - SetReverse: TypedContractEvent; - "Transfer(address,address,uint256)": TypedContractEvent; - Transfer: TypedContractEvent; - "Upgraded(address)": TypedContractEvent; - Upgraded: TypedContractEvent; - }; -} -//# sourceMappingURL=IUNSRegistry.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/IUNSRegistry.d.ts.map b/dist/types/contracts/IUNSRegistry.d.ts.map deleted file mode 100644 index 90b107d3..00000000 --- a/dist/types/contracts/IUNSRegistry.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IUNSRegistry.d.ts","sourceRoot":"","sources":["../../../types/contracts/IUNSRegistry.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/IUNSRegistry.js b/dist/types/contracts/IUNSRegistry.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/IUNSRegistry.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/KeyStorage.d.ts b/dist/types/contracts/KeyStorage.d.ts deleted file mode 100644 index ff5fb753..00000000 --- a/dist/types/contracts/KeyStorage.d.ts +++ /dev/null @@ -1,34 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../common"; -export interface KeyStorageInterface extends Interface { - getFunction(nameOrSignature: "addKey" | "getKey" | "getKeys"): FunctionFragment; - encodeFunctionData(functionFragment: "addKey", values: [string]): string; - encodeFunctionData(functionFragment: "getKey", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "getKeys", values: [BigNumberish[]]): string; - decodeFunctionResult(functionFragment: "addKey", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getKey", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getKeys", data: BytesLike): Result; -} -export interface KeyStorage extends BaseContract { - connect(runner?: ContractRunner | null): KeyStorage; - waitForDeployment(): Promise; - interface: KeyStorageInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - addKey: TypedContractMethod<[key: string], [void], "nonpayable">; - getKey: TypedContractMethod<[keyHash: BigNumberish], [string], "view">; - getKeys: TypedContractMethod<[hashes: BigNumberish[]], [string[]], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "addKey"): TypedContractMethod<[key: string], [void], "nonpayable">; - getFunction(nameOrSignature: "getKey"): TypedContractMethod<[keyHash: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "getKeys"): TypedContractMethod<[hashes: BigNumberish[]], [string[]], "view">; - filters: {}; -} -//# sourceMappingURL=KeyStorage.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/KeyStorage.d.ts.map b/dist/types/contracts/KeyStorage.d.ts.map deleted file mode 100644 index 2edf0d17..00000000 --- a/dist/types/contracts/KeyStorage.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"KeyStorage.d.ts","sourceRoot":"","sources":["../../../types/contracts/KeyStorage.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/KeyStorage.js b/dist/types/contracts/KeyStorage.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/KeyStorage.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/MintingManager.d.ts b/dist/types/contracts/MintingManager.d.ts deleted file mode 100644 index c080c707..00000000 --- a/dist/types/contracts/MintingManager.d.ts +++ /dev/null @@ -1,761 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../common"; -export interface MintingManagerInterface extends Interface { - getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE" | "MINTER_ROLE" | "NAME" | "VERSION" | "addMinter" | "addMinters" | "addProxyReaders" | "addTld" | "buy" | "buyForErc20" | "claim" | "claimTo" | "claimToWithRecords" | "closeMinter" | "cnsMintingController" | "cnsResolver" | "cnsURIPrefixController" | "getRoleAdmin" | "grantRole" | "hasRole" | "initialize" | "isBlocked" | "isMinter" | "isTrustedForwarder" | "issueExpirableWithRecords" | "issueWithRecords" | "owner" | "pause" | "paused" | "removeMinter" | "removeMinters" | "removeTld" | "renew" | "renounceMinter" | "renounceOwnership" | "renounceRole" | "revoke" | "revokeRole" | "rotateMinter" | "setForwarder" | "setOperator" | "setTokenURIPrefix" | "supportsInterface" | "transferOwnership" | "unpause" | "unsOperator" | "unsRegistry" | "withdraw(address)" | "withdraw(address,address)"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "AdminChanged" | "Blocked" | "BlocklistDisabled" | "BlocklistEnabled" | "DomainPurchase" | "Initialized" | "NewTld" | "OwnershipTransferred" | "Paused" | "RemoveTld" | "RoleAdminChanged" | "RoleGranted" | "RoleRevoked" | "Unpaused" | "Upgraded" | "Withdrawal"): EventFragment; - encodeFunctionData(functionFragment: "DEFAULT_ADMIN_ROLE", values?: undefined): string; - encodeFunctionData(functionFragment: "MINTER_ROLE", values?: undefined): string; - encodeFunctionData(functionFragment: "NAME", values?: undefined): string; - encodeFunctionData(functionFragment: "VERSION", values?: undefined): string; - encodeFunctionData(functionFragment: "addMinter", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "addMinters", values: [AddressLike[]]): string; - encodeFunctionData(functionFragment: "addProxyReaders", values: [AddressLike[]]): string; - encodeFunctionData(functionFragment: "addTld", values: [string, boolean]): string; - encodeFunctionData(functionFragment: "buy", values: [ - AddressLike, - string[], - string[], - string[], - BigNumberish, - BigNumberish, - BytesLike - ]): string; - encodeFunctionData(functionFragment: "buyForErc20", values: [ - AddressLike, - string[], - string[], - string[], - BigNumberish, - AddressLike, - BigNumberish, - BytesLike - ]): string; - encodeFunctionData(functionFragment: "claim", values: [BigNumberish, string]): string; - encodeFunctionData(functionFragment: "claimTo", values: [AddressLike, BigNumberish, string]): string; - encodeFunctionData(functionFragment: "claimToWithRecords", values: [AddressLike, BigNumberish, string, string[], string[]]): string; - encodeFunctionData(functionFragment: "closeMinter", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "cnsMintingController", values?: undefined): string; - encodeFunctionData(functionFragment: "cnsResolver", values?: undefined): string; - encodeFunctionData(functionFragment: "cnsURIPrefixController", values?: undefined): string; - encodeFunctionData(functionFragment: "getRoleAdmin", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "grantRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "hasRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "initialize", values: [ - AddressLike, - AddressLike, - AddressLike, - AddressLike, - AddressLike, - AddressLike - ]): string; - encodeFunctionData(functionFragment: "isBlocked", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "isMinter", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "isTrustedForwarder", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "issueExpirableWithRecords", values: [AddressLike, string[], string[], string[], BigNumberish, boolean]): string; - encodeFunctionData(functionFragment: "issueWithRecords", values: [AddressLike, string[], string[], string[], boolean]): string; - encodeFunctionData(functionFragment: "owner", values?: undefined): string; - encodeFunctionData(functionFragment: "pause", values?: undefined): string; - encodeFunctionData(functionFragment: "paused", values?: undefined): string; - encodeFunctionData(functionFragment: "removeMinter", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "removeMinters", values: [AddressLike[]]): string; - encodeFunctionData(functionFragment: "removeTld", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "renew", values: [BigNumberish, BigNumberish]): string; - encodeFunctionData(functionFragment: "renounceMinter", values?: undefined): string; - encodeFunctionData(functionFragment: "renounceOwnership", values?: undefined): string; - encodeFunctionData(functionFragment: "renounceRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "revoke", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "revokeRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "rotateMinter", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "setForwarder", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "setOperator", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "setTokenURIPrefix", values: [string]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "transferOwnership", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "unpause", values?: undefined): string; - encodeFunctionData(functionFragment: "unsOperator", values?: undefined): string; - encodeFunctionData(functionFragment: "unsRegistry", values?: undefined): string; - encodeFunctionData(functionFragment: "withdraw(address)", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "withdraw(address,address)", values: [AddressLike, AddressLike]): string; - decodeFunctionResult(functionFragment: "DEFAULT_ADMIN_ROLE", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "MINTER_ROLE", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "NAME", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "VERSION", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "addMinter", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "addMinters", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "addProxyReaders", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "addTld", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "buy", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "buyForErc20", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "claim", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "claimTo", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "claimToWithRecords", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "closeMinter", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "cnsMintingController", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "cnsResolver", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "cnsURIPrefixController", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getRoleAdmin", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "grantRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "hasRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isBlocked", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isMinter", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isTrustedForwarder", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "issueExpirableWithRecords", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "issueWithRecords", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "pause", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "paused", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "removeMinter", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "removeMinters", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "removeTld", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renew", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceMinter", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceOwnership", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "revoke", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "revokeRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "rotateMinter", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setForwarder", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setOperator", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setTokenURIPrefix", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "unpause", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "unsOperator", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "unsRegistry", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "withdraw(address)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "withdraw(address,address)", data: BytesLike): Result; -} -export declare namespace AdminChangedEvent { - type InputTuple = [previousAdmin: AddressLike, newAdmin: AddressLike]; - type OutputTuple = [previousAdmin: string, newAdmin: string]; - interface OutputObject { - previousAdmin: string; - newAdmin: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace BlockedEvent { - type InputTuple = [tokenId: BigNumberish]; - type OutputTuple = [tokenId: bigint]; - interface OutputObject { - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace BlocklistDisabledEvent { - type InputTuple = [account: AddressLike]; - type OutputTuple = [account: string]; - interface OutputObject { - account: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace BlocklistEnabledEvent { - type InputTuple = [account: AddressLike]; - type OutputTuple = [account: string]; - interface OutputObject { - account: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace DomainPurchaseEvent { - type InputTuple = [ - tokenId: BigNumberish, - sender: AddressLike, - owner: AddressLike, - price: BigNumberish, - token: AddressLike - ]; - type OutputTuple = [ - tokenId: bigint, - sender: string, - owner: string, - price: bigint, - token: string - ]; - interface OutputObject { - tokenId: bigint; - sender: string; - owner: string; - price: bigint; - token: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace InitializedEvent { - type InputTuple = [version: BigNumberish]; - type OutputTuple = [version: bigint]; - interface OutputObject { - version: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NewTldEvent { - type InputTuple = [tokenId: BigNumberish, tld: string]; - type OutputTuple = [tokenId: bigint, tld: string]; - interface OutputObject { - tokenId: bigint; - tld: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace OwnershipTransferredEvent { - type InputTuple = [previousOwner: AddressLike, newOwner: AddressLike]; - type OutputTuple = [previousOwner: string, newOwner: string]; - interface OutputObject { - previousOwner: string; - newOwner: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace PausedEvent { - type InputTuple = [account: AddressLike]; - type OutputTuple = [account: string]; - interface OutputObject { - account: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RemoveTldEvent { - type InputTuple = [tokenId: BigNumberish]; - type OutputTuple = [tokenId: bigint]; - interface OutputObject { - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RoleAdminChangedEvent { - type InputTuple = [ - role: BytesLike, - previousAdminRole: BytesLike, - newAdminRole: BytesLike - ]; - type OutputTuple = [ - role: string, - previousAdminRole: string, - newAdminRole: string - ]; - interface OutputObject { - role: string; - previousAdminRole: string; - newAdminRole: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RoleGrantedEvent { - type InputTuple = [ - role: BytesLike, - account: AddressLike, - sender: AddressLike - ]; - type OutputTuple = [role: string, account: string, sender: string]; - interface OutputObject { - role: string; - account: string; - sender: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RoleRevokedEvent { - type InputTuple = [ - role: BytesLike, - account: AddressLike, - sender: AddressLike - ]; - type OutputTuple = [role: string, account: string, sender: string]; - interface OutputObject { - role: string; - account: string; - sender: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace UnpausedEvent { - type InputTuple = [account: AddressLike]; - type OutputTuple = [account: string]; - interface OutputObject { - account: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace UpgradedEvent { - type InputTuple = [implementation: AddressLike]; - type OutputTuple = [implementation: string]; - interface OutputObject { - implementation: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace WithdrawalEvent { - type InputTuple = [ - recepient: AddressLike, - value: BigNumberish, - token: AddressLike - ]; - type OutputTuple = [recepient: string, value: bigint, token: string]; - interface OutputObject { - recepient: string; - value: bigint; - token: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface MintingManager extends BaseContract { - connect(runner?: ContractRunner | null): MintingManager; - waitForDeployment(): Promise; - interface: MintingManagerInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - DEFAULT_ADMIN_ROLE: TypedContractMethod<[], [string], "view">; - MINTER_ROLE: TypedContractMethod<[], [string], "view">; - NAME: TypedContractMethod<[], [string], "view">; - VERSION: TypedContractMethod<[], [string], "view">; - addMinter: TypedContractMethod<[account: AddressLike], [void], "nonpayable">; - addMinters: TypedContractMethod<[ - accounts: AddressLike[] - ], [ - void - ], "nonpayable">; - addProxyReaders: TypedContractMethod<[ - addrs: AddressLike[] - ], [ - void - ], "nonpayable">; - addTld: TypedContractMethod<[ - tld: string, - isExpirable: boolean - ], [ - void - ], "nonpayable">; - buy: TypedContractMethod<[ - owner: AddressLike, - labels: string[], - keys: string[], - values: string[], - expiry: BigNumberish, - price: BigNumberish, - signature: BytesLike - ], [ - void - ], "payable">; - buyForErc20: TypedContractMethod<[ - owner: AddressLike, - labels: string[], - keys: string[], - values: string[], - expiry: BigNumberish, - token: AddressLike, - price: BigNumberish, - signature: BytesLike - ], [ - void - ], "nonpayable">; - claim: TypedContractMethod<[ - tld: BigNumberish, - label: string - ], [ - void - ], "nonpayable">; - claimTo: TypedContractMethod<[ - to: AddressLike, - tld: BigNumberish, - label: string - ], [ - void - ], "nonpayable">; - claimToWithRecords: TypedContractMethod<[ - to: AddressLike, - tld: BigNumberish, - label: string, - keys: string[], - values: string[] - ], [ - void - ], "nonpayable">; - closeMinter: TypedContractMethod<[receiver: AddressLike], [void], "payable">; - cnsMintingController: TypedContractMethod<[], [string], "view">; - cnsResolver: TypedContractMethod<[], [string], "view">; - cnsURIPrefixController: TypedContractMethod<[], [string], "view">; - getRoleAdmin: TypedContractMethod<[role: BytesLike], [string], "view">; - grantRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - hasRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - boolean - ], "view">; - initialize: TypedContractMethod<[ - unsRegistry_: AddressLike, - cnsMintingController_: AddressLike, - cnsURIPrefixController_: AddressLike, - cnsResolver_: AddressLike, - unsOperator_: AddressLike, - forwarder: AddressLike - ], [ - void - ], "nonpayable">; - isBlocked: TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; - isMinter: TypedContractMethod<[account: AddressLike], [boolean], "view">; - isTrustedForwarder: TypedContractMethod<[ - forwarder: AddressLike - ], [ - boolean - ], "view">; - issueExpirableWithRecords: TypedContractMethod<[ - to: AddressLike, - labels: string[], - keys: string[], - values: string[], - expiry: BigNumberish, - withReverse: boolean - ], [ - void - ], "nonpayable">; - issueWithRecords: TypedContractMethod<[ - to: AddressLike, - labels: string[], - keys: string[], - values: string[], - withReverse: boolean - ], [ - void - ], "nonpayable">; - owner: TypedContractMethod<[], [string], "view">; - pause: TypedContractMethod<[], [void], "nonpayable">; - paused: TypedContractMethod<[], [boolean], "view">; - removeMinter: TypedContractMethod<[ - account: AddressLike - ], [ - void - ], "nonpayable">; - removeMinters: TypedContractMethod<[ - accounts: AddressLike[] - ], [ - void - ], "nonpayable">; - removeTld: TypedContractMethod<[tld: BigNumberish], [void], "nonpayable">; - renew: TypedContractMethod<[ - expiry: BigNumberish, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - renounceMinter: TypedContractMethod<[], [void], "nonpayable">; - renounceOwnership: TypedContractMethod<[], [void], "nonpayable">; - renounceRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - revoke: TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; - revokeRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - rotateMinter: TypedContractMethod<[receiver: AddressLike], [void], "payable">; - setForwarder: TypedContractMethod<[ - forwarder: AddressLike - ], [ - void - ], "nonpayable">; - setOperator: TypedContractMethod<[ - operator: AddressLike - ], [ - void - ], "nonpayable">; - setTokenURIPrefix: TypedContractMethod<[ - prefix: string - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - transferOwnership: TypedContractMethod<[ - newOwner: AddressLike - ], [ - void - ], "nonpayable">; - unpause: TypedContractMethod<[], [void], "nonpayable">; - unsOperator: TypedContractMethod<[], [string], "view">; - unsRegistry: TypedContractMethod<[], [string], "view">; - "withdraw(address)": TypedContractMethod<[ - recepient: AddressLike - ], [ - void - ], "nonpayable">; - "withdraw(address,address)": TypedContractMethod<[ - token: AddressLike, - recepient: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "MINTER_ROLE"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "NAME"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "VERSION"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "addMinter"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "addMinters"): TypedContractMethod<[accounts: AddressLike[]], [void], "nonpayable">; - getFunction(nameOrSignature: "addProxyReaders"): TypedContractMethod<[addrs: AddressLike[]], [void], "nonpayable">; - getFunction(nameOrSignature: "addTld"): TypedContractMethod<[ - tld: string, - isExpirable: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "buy"): TypedContractMethod<[ - owner: AddressLike, - labels: string[], - keys: string[], - values: string[], - expiry: BigNumberish, - price: BigNumberish, - signature: BytesLike - ], [ - void - ], "payable">; - getFunction(nameOrSignature: "buyForErc20"): TypedContractMethod<[ - owner: AddressLike, - labels: string[], - keys: string[], - values: string[], - expiry: BigNumberish, - token: AddressLike, - price: BigNumberish, - signature: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "claim"): TypedContractMethod<[ - tld: BigNumberish, - label: string - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "claimTo"): TypedContractMethod<[ - to: AddressLike, - tld: BigNumberish, - label: string - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "claimToWithRecords"): TypedContractMethod<[ - to: AddressLike, - tld: BigNumberish, - label: string, - keys: string[], - values: string[] - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "closeMinter"): TypedContractMethod<[receiver: AddressLike], [void], "payable">; - getFunction(nameOrSignature: "cnsMintingController"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "cnsResolver"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "cnsURIPrefixController"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "getRoleAdmin"): TypedContractMethod<[role: BytesLike], [string], "view">; - getFunction(nameOrSignature: "grantRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "hasRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "initialize"): TypedContractMethod<[ - unsRegistry_: AddressLike, - cnsMintingController_: AddressLike, - cnsURIPrefixController_: AddressLike, - cnsResolver_: AddressLike, - unsOperator_: AddressLike, - forwarder: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "isBlocked"): TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; - getFunction(nameOrSignature: "isMinter"): TypedContractMethod<[account: AddressLike], [boolean], "view">; - getFunction(nameOrSignature: "isTrustedForwarder"): TypedContractMethod<[forwarder: AddressLike], [boolean], "view">; - getFunction(nameOrSignature: "issueExpirableWithRecords"): TypedContractMethod<[ - to: AddressLike, - labels: string[], - keys: string[], - values: string[], - expiry: BigNumberish, - withReverse: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "issueWithRecords"): TypedContractMethod<[ - to: AddressLike, - labels: string[], - keys: string[], - values: string[], - withReverse: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "owner"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "pause"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "paused"): TypedContractMethod<[], [boolean], "view">; - getFunction(nameOrSignature: "removeMinter"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "removeMinters"): TypedContractMethod<[accounts: AddressLike[]], [void], "nonpayable">; - getFunction(nameOrSignature: "removeTld"): TypedContractMethod<[tld: BigNumberish], [void], "nonpayable">; - getFunction(nameOrSignature: "renew"): TypedContractMethod<[ - expiry: BigNumberish, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "renounceMinter"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "renounceOwnership"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "renounceRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "revoke"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; - getFunction(nameOrSignature: "revokeRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "rotateMinter"): TypedContractMethod<[receiver: AddressLike], [void], "payable">; - getFunction(nameOrSignature: "setForwarder"): TypedContractMethod<[forwarder: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "setOperator"): TypedContractMethod<[operator: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "setTokenURIPrefix"): TypedContractMethod<[prefix: string], [void], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "transferOwnership"): TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "unpause"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "unsOperator"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "unsRegistry"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "withdraw(address)"): TypedContractMethod<[recepient: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "withdraw(address,address)"): TypedContractMethod<[ - token: AddressLike, - recepient: AddressLike - ], [ - void - ], "nonpayable">; - getEvent(key: "AdminChanged"): TypedContractEvent; - getEvent(key: "Blocked"): TypedContractEvent; - getEvent(key: "BlocklistDisabled"): TypedContractEvent; - getEvent(key: "BlocklistEnabled"): TypedContractEvent; - getEvent(key: "DomainPurchase"): TypedContractEvent; - getEvent(key: "Initialized"): TypedContractEvent; - getEvent(key: "NewTld"): TypedContractEvent; - getEvent(key: "OwnershipTransferred"): TypedContractEvent; - getEvent(key: "Paused"): TypedContractEvent; - getEvent(key: "RemoveTld"): TypedContractEvent; - getEvent(key: "RoleAdminChanged"): TypedContractEvent; - getEvent(key: "RoleGranted"): TypedContractEvent; - getEvent(key: "RoleRevoked"): TypedContractEvent; - getEvent(key: "Unpaused"): TypedContractEvent; - getEvent(key: "Upgraded"): TypedContractEvent; - getEvent(key: "Withdrawal"): TypedContractEvent; - filters: { - "AdminChanged(address,address)": TypedContractEvent; - AdminChanged: TypedContractEvent; - "Blocked(uint256)": TypedContractEvent; - Blocked: TypedContractEvent; - "BlocklistDisabled(address)": TypedContractEvent; - BlocklistDisabled: TypedContractEvent; - "BlocklistEnabled(address)": TypedContractEvent; - BlocklistEnabled: TypedContractEvent; - "DomainPurchase(uint256,address,address,uint256,address)": TypedContractEvent; - DomainPurchase: TypedContractEvent; - "Initialized(uint8)": TypedContractEvent; - Initialized: TypedContractEvent; - "NewTld(uint256,string)": TypedContractEvent; - NewTld: TypedContractEvent; - "OwnershipTransferred(address,address)": TypedContractEvent; - OwnershipTransferred: TypedContractEvent; - "Paused(address)": TypedContractEvent; - Paused: TypedContractEvent; - "RemoveTld(uint256)": TypedContractEvent; - RemoveTld: TypedContractEvent; - "RoleAdminChanged(bytes32,bytes32,bytes32)": TypedContractEvent; - RoleAdminChanged: TypedContractEvent; - "RoleGranted(bytes32,address,address)": TypedContractEvent; - RoleGranted: TypedContractEvent; - "RoleRevoked(bytes32,address,address)": TypedContractEvent; - RoleRevoked: TypedContractEvent; - "Unpaused(address)": TypedContractEvent; - Unpaused: TypedContractEvent; - "Upgraded(address)": TypedContractEvent; - Upgraded: TypedContractEvent; - "Withdrawal(address,uint256,address)": TypedContractEvent; - Withdrawal: TypedContractEvent; - }; -} -//# sourceMappingURL=MintingManager.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/MintingManager.d.ts.map b/dist/types/contracts/MintingManager.d.ts.map deleted file mode 100644 index d2eb78ee..00000000 --- a/dist/types/contracts/MintingManager.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"MintingManager.d.ts","sourceRoot":"","sources":["../../../types/contracts/MintingManager.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/MintingManager.js b/dist/types/contracts/MintingManager.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/MintingManager.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/ProxyReader.d.ts b/dist/types/contracts/ProxyReader.d.ts deleted file mode 100644 index 1c06b82e..00000000 --- a/dist/types/contracts/ProxyReader.d.ts +++ /dev/null @@ -1,490 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../common"; -export interface ProxyReaderInterface extends Interface { - getFunction(nameOrSignature: "NAME" | "VERSION" | "addBlockchainNetworks(string[],string[])" | "addBlockchainNetworks(string[],string)" | "addLegacyRecords" | "balanceOf" | "exists" | "get" | "getAddress" | "getAddressKey" | "getAddressKeys" | "getApproved" | "getByHash" | "getData" | "getDataByHash" | "getDataByHashForMany" | "getDataForMany" | "getMany" | "getManyByHash" | "initialize" | "isApprovedForAll" | "isApprovedOrOwner" | "multicall" | "namehash" | "owner" | "ownerOf" | "ownerOfForMany" | "registryOf" | "renounceOwnership" | "resolverOf" | "reverseNameOf" | "reverseOf" | "setOwner" | "supportsInterface" | "tokenURI" | "transferOwnership"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Initialized" | "OwnershipTransferred" | "SetLegacyRecords" | "SetNetworkFamily"): EventFragment; - encodeFunctionData(functionFragment: "NAME", values?: undefined): string; - encodeFunctionData(functionFragment: "VERSION", values?: undefined): string; - encodeFunctionData(functionFragment: "addBlockchainNetworks(string[],string[])", values: [string[], string[]]): string; - encodeFunctionData(functionFragment: "addBlockchainNetworks(string[],string)", values: [string[], string]): string; - encodeFunctionData(functionFragment: "addLegacyRecords", values: [string[], string[][]]): string; - encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "exists", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "get", values: [string, BigNumberish]): string; - encodeFunctionData(functionFragment: "getAddress", values: [string, string, BigNumberish]): string; - encodeFunctionData(functionFragment: "getAddressKey", values: [string, string, BigNumberish]): string; - encodeFunctionData(functionFragment: "getAddressKeys", values: [string, string]): string; - encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "getByHash", values: [BigNumberish, BigNumberish]): string; - encodeFunctionData(functionFragment: "getData", values: [string[], BigNumberish]): string; - encodeFunctionData(functionFragment: "getDataByHash", values: [BigNumberish[], BigNumberish]): string; - encodeFunctionData(functionFragment: "getDataByHashForMany", values: [BigNumberish[], BigNumberish[]]): string; - encodeFunctionData(functionFragment: "getDataForMany", values: [string[], BigNumberish[]]): string; - encodeFunctionData(functionFragment: "getMany", values: [string[], BigNumberish]): string; - encodeFunctionData(functionFragment: "getManyByHash", values: [BigNumberish[], BigNumberish]): string; - encodeFunctionData(functionFragment: "initialize", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "isApprovedOrOwner", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "multicall", values: [BytesLike[]]): string; - encodeFunctionData(functionFragment: "namehash", values: [string[]]): string; - encodeFunctionData(functionFragment: "owner", values?: undefined): string; - encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "ownerOfForMany", values: [BigNumberish[]]): string; - encodeFunctionData(functionFragment: "registryOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "renounceOwnership", values?: undefined): string; - encodeFunctionData(functionFragment: "resolverOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "reverseNameOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "reverseOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "setOwner", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "tokenURI", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "transferOwnership", values: [AddressLike]): string; - decodeFunctionResult(functionFragment: "NAME", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "VERSION", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "addBlockchainNetworks(string[],string[])", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "addBlockchainNetworks(string[],string)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "addLegacyRecords", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "exists", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "get", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getAddress", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getAddressKey", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getAddressKeys", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getByHash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getData", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getDataByHash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getDataByHashForMany", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getDataForMany", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getMany", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getManyByHash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedOrOwner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "multicall", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "namehash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ownerOfForMany", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "registryOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceOwnership", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "resolverOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "reverseNameOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "reverseOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setOwner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "tokenURI", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result; -} -export declare namespace InitializedEvent { - type InputTuple = [version: BigNumberish]; - type OutputTuple = [version: bigint]; - interface OutputObject { - version: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace OwnershipTransferredEvent { - type InputTuple = [previousOwner: AddressLike, newOwner: AddressLike]; - type OutputTuple = [previousOwner: string, newOwner: string]; - interface OutputObject { - previousOwner: string; - newOwner: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace SetLegacyRecordsEvent { - type InputTuple = [tokenKey: string]; - type OutputTuple = [tokenKey: string]; - interface OutputObject { - tokenKey: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace SetNetworkFamilyEvent { - type InputTuple = [network: string]; - type OutputTuple = [network: string]; - interface OutputObject { - network: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface ProxyReader extends BaseContract { - connect(runner?: ContractRunner | null): ProxyReader; - waitForDeployment(): Promise; - interface: ProxyReaderInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - NAME: TypedContractMethod<[], [string], "view">; - VERSION: TypedContractMethod<[], [string], "view">; - "addBlockchainNetworks(string[],string[])": TypedContractMethod<[ - networks: string[], - families: string[] - ], [ - void - ], "nonpayable">; - "addBlockchainNetworks(string[],string)": TypedContractMethod<[ - networks: string[], - family: string - ], [ - void - ], "nonpayable">; - addLegacyRecords: TypedContractMethod<[ - keys: string[], - legacyKeys: string[][] - ], [ - void - ], "nonpayable">; - balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; - exists: TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; - get: TypedContractMethod<[ - key: string, - tokenId: BigNumberish - ], [ - string - ], "view">; - getAddress: TypedContractMethod<[ - network: string, - token: string, - tokenId: BigNumberish - ], [ - string - ], "view">; - getAddressKey: TypedContractMethod<[ - network: string, - token: string, - tokenId: BigNumberish - ], [ - string - ], "view">; - getAddressKeys: TypedContractMethod<[ - network: string, - token: string - ], [ - string[] - ], "view">; - getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getByHash: TypedContractMethod<[ - keyHash: BigNumberish, - tokenId: BigNumberish - ], [ - [string, string] & { - key: string; - value: string; - } - ], "view">; - getData: TypedContractMethod<[ - keys: string[], - tokenId: BigNumberish - ], [ - [ - string, - string, - string[] - ] & { - resolver: string; - owner: string; - values: string[]; - } - ], "view">; - getDataByHash: TypedContractMethod<[ - keyHashes: BigNumberish[], - tokenId: BigNumberish - ], [ - [ - string, - string, - string[], - string[] - ] & { - resolver: string; - owner: string; - keys: string[]; - values: string[]; - } - ], "view">; - getDataByHashForMany: TypedContractMethod<[ - keyHashes: BigNumberish[], - tokenIds: BigNumberish[] - ], [ - [ - string[], - string[], - string[][], - string[][] - ] & { - resolvers: string[]; - owners: string[]; - keys: string[][]; - values: string[][]; - } - ], "view">; - getDataForMany: TypedContractMethod<[ - keys: string[], - tokenIds: BigNumberish[] - ], [ - [ - string[], - string[], - string[][] - ] & { - resolvers: string[]; - owners: string[]; - values: string[][]; - } - ], "view">; - getMany: TypedContractMethod<[ - keys: string[], - tokenId: BigNumberish - ], [ - string[] - ], "view">; - getManyByHash: TypedContractMethod<[ - keyHashes: BigNumberish[], - tokenId: BigNumberish - ], [ - [string[], string[]] & { - keys: string[]; - values: string[]; - } - ], "view">; - initialize: TypedContractMethod<[ - unsRegistry: AddressLike, - cnsRegistry: AddressLike - ], [ - void - ], "nonpayable">; - isApprovedForAll: TypedContractMethod<[ - arg0: AddressLike, - arg1: AddressLike - ], [ - boolean - ], "view">; - isApprovedOrOwner: TypedContractMethod<[ - spender: AddressLike, - tokenId: BigNumberish - ], [ - boolean - ], "view">; - multicall: TypedContractMethod<[data: BytesLike[]], [string[]], "nonpayable">; - namehash: TypedContractMethod<[labels: string[]], [bigint], "view">; - owner: TypedContractMethod<[], [string], "view">; - ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - ownerOfForMany: TypedContractMethod<[ - tokenIds: BigNumberish[] - ], [ - string[] - ], "view">; - registryOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - renounceOwnership: TypedContractMethod<[], [void], "nonpayable">; - resolverOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - reverseNameOf: TypedContractMethod<[addr: AddressLike], [string], "view">; - reverseOf: TypedContractMethod<[addr: AddressLike], [bigint], "view">; - setOwner: TypedContractMethod<[addr: AddressLike], [void], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - tokenURI: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - transferOwnership: TypedContractMethod<[ - newOwner: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "NAME"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "VERSION"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "addBlockchainNetworks(string[],string[])"): TypedContractMethod<[ - networks: string[], - families: string[] - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "addBlockchainNetworks(string[],string)"): TypedContractMethod<[ - networks: string[], - family: string - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "addLegacyRecords"): TypedContractMethod<[ - keys: string[], - legacyKeys: string[][] - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; - getFunction(nameOrSignature: "exists"): TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; - getFunction(nameOrSignature: "get"): TypedContractMethod<[ - key: string, - tokenId: BigNumberish - ], [ - string - ], "view">; - getFunction(nameOrSignature: "getAddress"): TypedContractMethod<[ - network: string, - token: string, - tokenId: BigNumberish - ], [ - string - ], "view">; - getFunction(nameOrSignature: "getAddressKey"): TypedContractMethod<[ - network: string, - token: string, - tokenId: BigNumberish - ], [ - string - ], "view">; - getFunction(nameOrSignature: "getAddressKeys"): TypedContractMethod<[network: string, token: string], [string[]], "view">; - getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "getByHash"): TypedContractMethod<[ - keyHash: BigNumberish, - tokenId: BigNumberish - ], [ - [string, string] & { - key: string; - value: string; - } - ], "view">; - getFunction(nameOrSignature: "getData"): TypedContractMethod<[ - keys: string[], - tokenId: BigNumberish - ], [ - [ - string, - string, - string[] - ] & { - resolver: string; - owner: string; - values: string[]; - } - ], "view">; - getFunction(nameOrSignature: "getDataByHash"): TypedContractMethod<[ - keyHashes: BigNumberish[], - tokenId: BigNumberish - ], [ - [ - string, - string, - string[], - string[] - ] & { - resolver: string; - owner: string; - keys: string[]; - values: string[]; - } - ], "view">; - getFunction(nameOrSignature: "getDataByHashForMany"): TypedContractMethod<[ - keyHashes: BigNumberish[], - tokenIds: BigNumberish[] - ], [ - [ - string[], - string[], - string[][], - string[][] - ] & { - resolvers: string[]; - owners: string[]; - keys: string[][]; - values: string[][]; - } - ], "view">; - getFunction(nameOrSignature: "getDataForMany"): TypedContractMethod<[ - keys: string[], - tokenIds: BigNumberish[] - ], [ - [ - string[], - string[], - string[][] - ] & { - resolvers: string[]; - owners: string[]; - values: string[][]; - } - ], "view">; - getFunction(nameOrSignature: "getMany"): TypedContractMethod<[ - keys: string[], - tokenId: BigNumberish - ], [ - string[] - ], "view">; - getFunction(nameOrSignature: "getManyByHash"): TypedContractMethod<[ - keyHashes: BigNumberish[], - tokenId: BigNumberish - ], [ - [string[], string[]] & { - keys: string[]; - values: string[]; - } - ], "view">; - getFunction(nameOrSignature: "initialize"): TypedContractMethod<[ - unsRegistry: AddressLike, - cnsRegistry: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ - arg0: AddressLike, - arg1: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "isApprovedOrOwner"): TypedContractMethod<[ - spender: AddressLike, - tokenId: BigNumberish - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "multicall"): TypedContractMethod<[data: BytesLike[]], [string[]], "nonpayable">; - getFunction(nameOrSignature: "namehash"): TypedContractMethod<[labels: string[]], [bigint], "view">; - getFunction(nameOrSignature: "owner"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "ownerOfForMany"): TypedContractMethod<[tokenIds: BigNumberish[]], [string[]], "view">; - getFunction(nameOrSignature: "registryOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "renounceOwnership"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "resolverOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "reverseNameOf"): TypedContractMethod<[addr: AddressLike], [string], "view">; - getFunction(nameOrSignature: "reverseOf"): TypedContractMethod<[addr: AddressLike], [bigint], "view">; - getFunction(nameOrSignature: "setOwner"): TypedContractMethod<[addr: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "tokenURI"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "transferOwnership"): TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">; - getEvent(key: "Initialized"): TypedContractEvent; - getEvent(key: "OwnershipTransferred"): TypedContractEvent; - getEvent(key: "SetLegacyRecords"): TypedContractEvent; - getEvent(key: "SetNetworkFamily"): TypedContractEvent; - filters: { - "Initialized(uint8)": TypedContractEvent; - Initialized: TypedContractEvent; - "OwnershipTransferred(address,address)": TypedContractEvent; - OwnershipTransferred: TypedContractEvent; - "SetLegacyRecords(string)": TypedContractEvent; - SetLegacyRecords: TypedContractEvent; - "SetNetworkFamily(string)": TypedContractEvent; - SetNetworkFamily: TypedContractEvent; - }; -} -//# sourceMappingURL=ProxyReader.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/ProxyReader.d.ts.map b/dist/types/contracts/ProxyReader.d.ts.map deleted file mode 100644 index 075025f6..00000000 --- a/dist/types/contracts/ProxyReader.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ProxyReader.d.ts","sourceRoot":"","sources":["../../../types/contracts/ProxyReader.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/ProxyReader.js b/dist/types/contracts/ProxyReader.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/ProxyReader.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/RecordStorage.d.ts b/dist/types/contracts/RecordStorage.d.ts deleted file mode 100644 index 7ecb70d6..00000000 --- a/dist/types/contracts/RecordStorage.d.ts +++ /dev/null @@ -1,252 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../common"; -export interface RecordStorageInterface extends Interface { - getFunction(nameOrSignature: "addKey" | "get" | "getByHash" | "getKey" | "getKeys" | "getMany" | "getManyByHash" | "reconfigure" | "reset" | "set" | "setByHash" | "setMany" | "setManyByHash"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "NewKey" | "ResetRecords" | "Set"): EventFragment; - encodeFunctionData(functionFragment: "addKey", values: [string]): string; - encodeFunctionData(functionFragment: "get", values: [string, BigNumberish]): string; - encodeFunctionData(functionFragment: "getByHash", values: [BigNumberish, BigNumberish]): string; - encodeFunctionData(functionFragment: "getKey", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "getKeys", values: [BigNumberish[]]): string; - encodeFunctionData(functionFragment: "getMany", values: [string[], BigNumberish]): string; - encodeFunctionData(functionFragment: "getManyByHash", values: [BigNumberish[], BigNumberish]): string; - encodeFunctionData(functionFragment: "reconfigure", values: [string[], string[], BigNumberish]): string; - encodeFunctionData(functionFragment: "reset", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "set", values: [string, string, BigNumberish]): string; - encodeFunctionData(functionFragment: "setByHash", values: [BigNumberish, string, BigNumberish]): string; - encodeFunctionData(functionFragment: "setMany", values: [string[], string[], BigNumberish]): string; - encodeFunctionData(functionFragment: "setManyByHash", values: [BigNumberish[], string[], BigNumberish]): string; - decodeFunctionResult(functionFragment: "addKey", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "get", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getByHash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getKey", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getKeys", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getMany", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getManyByHash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "reconfigure", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "reset", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "set", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setByHash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setMany", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setManyByHash", data: BytesLike): Result; -} -export declare namespace NewKeyEvent { - type InputTuple = [ - tokenId: BigNumberish, - keyIndex: string, - key: string - ]; - type OutputTuple = [tokenId: bigint, keyIndex: string, key: string]; - interface OutputObject { - tokenId: bigint; - keyIndex: string; - key: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ResetRecordsEvent { - type InputTuple = [tokenId: BigNumberish]; - type OutputTuple = [tokenId: bigint]; - interface OutputObject { - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace SetEvent { - type InputTuple = [ - tokenId: BigNumberish, - keyIndex: string, - valueIndex: string, - key: string, - value: string - ]; - type OutputTuple = [ - tokenId: bigint, - keyIndex: string, - valueIndex: string, - key: string, - value: string - ]; - interface OutputObject { - tokenId: bigint; - keyIndex: string; - valueIndex: string; - key: string; - value: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface RecordStorage extends BaseContract { - connect(runner?: ContractRunner | null): RecordStorage; - waitForDeployment(): Promise; - interface: RecordStorageInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - addKey: TypedContractMethod<[key: string], [void], "nonpayable">; - get: TypedContractMethod<[ - key: string, - tokenId: BigNumberish - ], [ - string - ], "view">; - getByHash: TypedContractMethod<[ - keyHash: BigNumberish, - tokenId: BigNumberish - ], [ - [string, string] & { - key: string; - value: string; - } - ], "view">; - getKey: TypedContractMethod<[keyHash: BigNumberish], [string], "view">; - getKeys: TypedContractMethod<[hashes: BigNumberish[]], [string[]], "view">; - getMany: TypedContractMethod<[ - keys: string[], - tokenId: BigNumberish - ], [ - string[] - ], "view">; - getManyByHash: TypedContractMethod<[ - keyHashes: BigNumberish[], - tokenId: BigNumberish - ], [ - [string[], string[]] & { - keys: string[]; - values: string[]; - } - ], "view">; - reconfigure: TypedContractMethod<[ - keys: string[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - reset: TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; - set: TypedContractMethod<[ - key: string, - value: string, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - setByHash: TypedContractMethod<[ - keyHash: BigNumberish, - value: string, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - setMany: TypedContractMethod<[ - keys: string[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - setManyByHash: TypedContractMethod<[ - keyHashes: BigNumberish[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "addKey"): TypedContractMethod<[key: string], [void], "nonpayable">; - getFunction(nameOrSignature: "get"): TypedContractMethod<[ - key: string, - tokenId: BigNumberish - ], [ - string - ], "view">; - getFunction(nameOrSignature: "getByHash"): TypedContractMethod<[ - keyHash: BigNumberish, - tokenId: BigNumberish - ], [ - [string, string] & { - key: string; - value: string; - } - ], "view">; - getFunction(nameOrSignature: "getKey"): TypedContractMethod<[keyHash: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "getKeys"): TypedContractMethod<[hashes: BigNumberish[]], [string[]], "view">; - getFunction(nameOrSignature: "getMany"): TypedContractMethod<[ - keys: string[], - tokenId: BigNumberish - ], [ - string[] - ], "view">; - getFunction(nameOrSignature: "getManyByHash"): TypedContractMethod<[ - keyHashes: BigNumberish[], - tokenId: BigNumberish - ], [ - [string[], string[]] & { - keys: string[]; - values: string[]; - } - ], "view">; - getFunction(nameOrSignature: "reconfigure"): TypedContractMethod<[ - keys: string[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "reset"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; - getFunction(nameOrSignature: "set"): TypedContractMethod<[ - key: string, - value: string, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setByHash"): TypedContractMethod<[ - keyHash: BigNumberish, - value: string, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setMany"): TypedContractMethod<[ - keys: string[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setManyByHash"): TypedContractMethod<[ - keyHashes: BigNumberish[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getEvent(key: "NewKey"): TypedContractEvent; - getEvent(key: "ResetRecords"): TypedContractEvent; - getEvent(key: "Set"): TypedContractEvent; - filters: { - "NewKey(uint256,string,string)": TypedContractEvent; - NewKey: TypedContractEvent; - "ResetRecords(uint256)": TypedContractEvent; - ResetRecords: TypedContractEvent; - "Set(uint256,string,string,string,string)": TypedContractEvent; - Set: TypedContractEvent; - }; -} -//# sourceMappingURL=RecordStorage.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/RecordStorage.d.ts.map b/dist/types/contracts/RecordStorage.d.ts.map deleted file mode 100644 index 12a89241..00000000 --- a/dist/types/contracts/RecordStorage.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"RecordStorage.d.ts","sourceRoot":"","sources":["../../../types/contracts/RecordStorage.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/RecordStorage.js b/dist/types/contracts/RecordStorage.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/RecordStorage.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/RootRegistry.d.ts b/dist/types/contracts/RootRegistry.d.ts deleted file mode 100644 index b3859f28..00000000 --- a/dist/types/contracts/RootRegistry.d.ts +++ /dev/null @@ -1,286 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../common"; -export interface RootRegistryInterface extends Interface { - getFunction(nameOrSignature: "approve" | "balanceOf" | "depositToPolygon" | "exists" | "getApproved" | "isApprovedForAll" | "mint(address,uint256)" | "mint(address,uint256,bytes)" | "name" | "ownerOf" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "setApprovalForAll" | "supportsInterface" | "symbol" | "tokenURI" | "transferFrom" | "withdrawFromPolygon"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "Initialized" | "Transfer"): EventFragment; - encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "depositToPolygon", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "exists", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "mint(address,uint256)", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "mint(address,uint256,bytes)", values: [AddressLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "name", values?: undefined): string; - encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "symbol", values?: undefined): string; - encodeFunctionData(functionFragment: "tokenURI", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "withdrawFromPolygon", values: [BytesLike, BigNumberish, string[], string[]]): string; - decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "depositToPolygon", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "exists", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "mint(address,uint256)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "mint(address,uint256,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "tokenURI", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "withdrawFromPolygon", data: BytesLike): Result; -} -export declare namespace ApprovalEvent { - type InputTuple = [ - owner: AddressLike, - approved: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [owner: string, approved: string, tokenId: bigint]; - interface OutputObject { - owner: string; - approved: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ApprovalForAllEvent { - type InputTuple = [ - owner: AddressLike, - operator: AddressLike, - approved: boolean - ]; - type OutputTuple = [ - owner: string, - operator: string, - approved: boolean - ]; - interface OutputObject { - owner: string; - operator: string; - approved: boolean; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace InitializedEvent { - type InputTuple = [version: BigNumberish]; - type OutputTuple = [version: bigint]; - interface OutputObject { - version: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferEvent { - type InputTuple = [ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [from: string, to: string, tokenId: bigint]; - interface OutputObject { - from: string; - to: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface RootRegistry extends BaseContract { - connect(runner?: ContractRunner | null): RootRegistry; - waitForDeployment(): Promise; - interface: RootRegistryInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - approve: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; - depositToPolygon: TypedContractMethod<[ - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - exists: TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; - getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - isApprovedForAll: TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - "mint(address,uint256)": TypedContractMethod<[ - user: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - "mint(address,uint256,bytes)": TypedContractMethod<[ - user: AddressLike, - tokenId: BigNumberish, - metaData: BytesLike - ], [ - void - ], "nonpayable">; - name: TypedContractMethod<[], [string], "view">; - ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - setApprovalForAll: TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - symbol: TypedContractMethod<[], [string], "view">; - tokenURI: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - transferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - withdrawFromPolygon: TypedContractMethod<[ - inputData: BytesLike, - tokenId: BigNumberish, - keys: string[], - values: string[] - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "approve"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; - getFunction(nameOrSignature: "depositToPolygon"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; - getFunction(nameOrSignature: "exists"): TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; - getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "mint(address,uint256)"): TypedContractMethod<[ - user: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "mint(address,uint256,bytes)"): TypedContractMethod<[ - user: AddressLike, - tokenId: BigNumberish, - metaData: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "symbol"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "tokenURI"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "withdrawFromPolygon"): TypedContractMethod<[ - inputData: BytesLike, - tokenId: BigNumberish, - keys: string[], - values: string[] - ], [ - void - ], "nonpayable">; - getEvent(key: "Approval"): TypedContractEvent; - getEvent(key: "ApprovalForAll"): TypedContractEvent; - getEvent(key: "Initialized"): TypedContractEvent; - getEvent(key: "Transfer"): TypedContractEvent; - filters: { - "Approval(address,address,uint256)": TypedContractEvent; - Approval: TypedContractEvent; - "ApprovalForAll(address,address,bool)": TypedContractEvent; - ApprovalForAll: TypedContractEvent; - "Initialized(uint8)": TypedContractEvent; - Initialized: TypedContractEvent; - "Transfer(address,address,uint256)": TypedContractEvent; - Transfer: TypedContractEvent; - }; -} -//# sourceMappingURL=RootRegistry.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/RootRegistry.d.ts.map b/dist/types/contracts/RootRegistry.d.ts.map deleted file mode 100644 index ffa57506..00000000 --- a/dist/types/contracts/RootRegistry.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"RootRegistry.d.ts","sourceRoot":"","sources":["../../../types/contracts/RootRegistry.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/RootRegistry.js b/dist/types/contracts/RootRegistry.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/RootRegistry.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/UNSOperator.d.ts b/dist/types/contracts/UNSOperator.d.ts deleted file mode 100644 index f4800c8c..00000000 --- a/dist/types/contracts/UNSOperator.d.ts +++ /dev/null @@ -1,81 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../common"; -export interface UNSOperatorInterface extends Interface { - getFunction(nameOrSignature: "NAME" | "VERSION" | "initialize" | "owner" | "renounceOwnership" | "transferOwnership"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Initialized" | "OwnershipTransferred"): EventFragment; - encodeFunctionData(functionFragment: "NAME", values?: undefined): string; - encodeFunctionData(functionFragment: "VERSION", values?: undefined): string; - encodeFunctionData(functionFragment: "initialize", values?: undefined): string; - encodeFunctionData(functionFragment: "owner", values?: undefined): string; - encodeFunctionData(functionFragment: "renounceOwnership", values?: undefined): string; - encodeFunctionData(functionFragment: "transferOwnership", values: [AddressLike]): string; - decodeFunctionResult(functionFragment: "NAME", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "VERSION", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceOwnership", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result; -} -export declare namespace InitializedEvent { - type InputTuple = [version: BigNumberish]; - type OutputTuple = [version: bigint]; - interface OutputObject { - version: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace OwnershipTransferredEvent { - type InputTuple = [previousOwner: AddressLike, newOwner: AddressLike]; - type OutputTuple = [previousOwner: string, newOwner: string]; - interface OutputObject { - previousOwner: string; - newOwner: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface UNSOperator extends BaseContract { - connect(runner?: ContractRunner | null): UNSOperator; - waitForDeployment(): Promise; - interface: UNSOperatorInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - NAME: TypedContractMethod<[], [string], "view">; - VERSION: TypedContractMethod<[], [string], "view">; - initialize: TypedContractMethod<[], [void], "nonpayable">; - owner: TypedContractMethod<[], [string], "view">; - renounceOwnership: TypedContractMethod<[], [void], "nonpayable">; - transferOwnership: TypedContractMethod<[ - newOwner: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "NAME"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "VERSION"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "initialize"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "owner"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "renounceOwnership"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "transferOwnership"): TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">; - getEvent(key: "Initialized"): TypedContractEvent; - getEvent(key: "OwnershipTransferred"): TypedContractEvent; - filters: { - "Initialized(uint8)": TypedContractEvent; - Initialized: TypedContractEvent; - "OwnershipTransferred(address,address)": TypedContractEvent; - OwnershipTransferred: TypedContractEvent; - }; -} -//# sourceMappingURL=UNSOperator.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/UNSOperator.d.ts.map b/dist/types/contracts/UNSOperator.d.ts.map deleted file mode 100644 index bc8f6c33..00000000 --- a/dist/types/contracts/UNSOperator.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"UNSOperator.d.ts","sourceRoot":"","sources":["../../../types/contracts/UNSOperator.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/UNSOperator.js b/dist/types/contracts/UNSOperator.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/UNSOperator.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/UNSRegistry.d.ts b/dist/types/contracts/UNSRegistry.d.ts deleted file mode 100644 index b58957b2..00000000 --- a/dist/types/contracts/UNSRegistry.d.ts +++ /dev/null @@ -1,907 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../common"; -export declare namespace IForwarder { - type ForwardRequestStruct = { - from: AddressLike; - nonce: BigNumberish; - tokenId: BigNumberish; - data: BytesLike; - }; - type ForwardRequestStructOutput = [ - from: string, - nonce: bigint, - tokenId: bigint, - data: string - ] & { - from: string; - nonce: bigint; - tokenId: bigint; - data: string; - }; -} -export interface UNSRegistryInterface extends Interface { - getFunction(nameOrSignature: "BATCH_LIMIT" | "NAME" | "VERSION" | "addKey" | "addProxyReader" | "approve" | "balanceOf" | "burn" | "deposit" | "depositToPolygon" | "execute" | "exists" | "expiryOf" | "get" | "getApproved" | "getByHash" | "getKey" | "getKeys" | "getMany" | "getManyByHash" | "initialize" | "isApprovedForAll" | "isApprovedOrOwner" | "isExpired" | "isTrustedForwarder" | "mint(address,uint256)" | "mint(address,uint256,bytes)" | "mintTLD" | "mintWithRecords" | "multicall" | "name" | "namehash" | "nonceOf" | "onERC721Received" | "ownerOf" | "reconfigure" | "removeReverse" | "reset" | "resolverOf" | "reverseNameOf" | "reverseOf" | "root" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "set" | "setApprovalForAll" | "setByHash" | "setExpiry" | "setMany" | "setManyByHash" | "setOwner" | "setReverse" | "setTokenURIPrefix" | "supportsInterface" | "symbol" | "tokenURI" | "transferFrom" | "unlock" | "unlockWithRecords" | "verify" | "withdrawFromPolygon"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "AdminChanged" | "Approval" | "ApprovalForAll" | "Initialized" | "NewKey" | "NewURI" | "NewURIPrefix" | "RemoveReverse" | "ResetRecords" | "Set" | "SetExpiry" | "SetReverse" | "Transfer" | "Upgraded"): EventFragment; - encodeFunctionData(functionFragment: "BATCH_LIMIT", values?: undefined): string; - encodeFunctionData(functionFragment: "NAME", values?: undefined): string; - encodeFunctionData(functionFragment: "VERSION", values?: undefined): string; - encodeFunctionData(functionFragment: "addKey", values: [string]): string; - encodeFunctionData(functionFragment: "addProxyReader", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "burn", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "deposit", values: [AddressLike, BytesLike]): string; - encodeFunctionData(functionFragment: "depositToPolygon", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "execute", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; - encodeFunctionData(functionFragment: "exists", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "expiryOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "get", values: [string, BigNumberish]): string; - encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "getByHash", values: [BigNumberish, BigNumberish]): string; - encodeFunctionData(functionFragment: "getKey", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "getKeys", values: [BigNumberish[]]): string; - encodeFunctionData(functionFragment: "getMany", values: [string[], BigNumberish]): string; - encodeFunctionData(functionFragment: "getManyByHash", values: [BigNumberish[], BigNumberish]): string; - encodeFunctionData(functionFragment: "initialize", values: [AddressLike, AddressLike, AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "isApprovedOrOwner", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "isExpired", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "isTrustedForwarder", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "mint(address,uint256)", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "mint(address,uint256,bytes)", values: [AddressLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "mintTLD", values: [BigNumberish, string]): string; - encodeFunctionData(functionFragment: "mintWithRecords", values: [AddressLike, string[], string[], string[], boolean]): string; - encodeFunctionData(functionFragment: "multicall", values: [BytesLike[]]): string; - encodeFunctionData(functionFragment: "name", values?: undefined): string; - encodeFunctionData(functionFragment: "namehash", values: [string[]]): string; - encodeFunctionData(functionFragment: "nonceOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "onERC721Received", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "reconfigure", values: [string[], string[], BigNumberish]): string; - encodeFunctionData(functionFragment: "removeReverse", values?: undefined): string; - encodeFunctionData(functionFragment: "reset", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "resolverOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "reverseNameOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "reverseOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "root", values?: undefined): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "set", values: [string, string, BigNumberish]): string; - encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; - encodeFunctionData(functionFragment: "setByHash", values: [BigNumberish, string, BigNumberish]): string; - encodeFunctionData(functionFragment: "setExpiry", values: [BigNumberish, BigNumberish]): string; - encodeFunctionData(functionFragment: "setMany", values: [string[], string[], BigNumberish]): string; - encodeFunctionData(functionFragment: "setManyByHash", values: [BigNumberish[], string[], BigNumberish]): string; - encodeFunctionData(functionFragment: "setOwner", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "setReverse", values: [string[]]): string; - encodeFunctionData(functionFragment: "setTokenURIPrefix", values: [string]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "symbol", values?: undefined): string; - encodeFunctionData(functionFragment: "tokenURI", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "unlock", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "unlockWithRecords", values: [AddressLike, string[], string[], string[], boolean]): string; - encodeFunctionData(functionFragment: "verify", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; - encodeFunctionData(functionFragment: "withdrawFromPolygon", values: [BytesLike, BigNumberish, string[], string[]]): string; - decodeFunctionResult(functionFragment: "BATCH_LIMIT", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "NAME", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "VERSION", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "addKey", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "addProxyReader", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "burn", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "deposit", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "depositToPolygon", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "exists", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "expiryOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "get", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getByHash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getKey", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getKeys", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getMany", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getManyByHash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedOrOwner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isExpired", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isTrustedForwarder", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "mint(address,uint256)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "mint(address,uint256,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "mintTLD", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "mintWithRecords", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "multicall", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "namehash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "nonceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "onERC721Received", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "reconfigure", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "removeReverse", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "reset", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "resolverOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "reverseNameOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "reverseOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "root", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "set", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setByHash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setExpiry", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setMany", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setManyByHash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setOwner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setReverse", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setTokenURIPrefix", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "tokenURI", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "unlock", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "unlockWithRecords", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "verify", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "withdrawFromPolygon", data: BytesLike): Result; -} -export declare namespace AdminChangedEvent { - type InputTuple = [previousAdmin: AddressLike, newAdmin: AddressLike]; - type OutputTuple = [previousAdmin: string, newAdmin: string]; - interface OutputObject { - previousAdmin: string; - newAdmin: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ApprovalEvent { - type InputTuple = [ - owner: AddressLike, - approved: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [owner: string, approved: string, tokenId: bigint]; - interface OutputObject { - owner: string; - approved: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ApprovalForAllEvent { - type InputTuple = [ - owner: AddressLike, - operator: AddressLike, - approved: boolean - ]; - type OutputTuple = [ - owner: string, - operator: string, - approved: boolean - ]; - interface OutputObject { - owner: string; - operator: string; - approved: boolean; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace InitializedEvent { - type InputTuple = [version: BigNumberish]; - type OutputTuple = [version: bigint]; - interface OutputObject { - version: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NewKeyEvent { - type InputTuple = [ - tokenId: BigNumberish, - keyIndex: string, - key: string - ]; - type OutputTuple = [tokenId: bigint, keyIndex: string, key: string]; - interface OutputObject { - tokenId: bigint; - keyIndex: string; - key: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NewURIEvent { - type InputTuple = [tokenId: BigNumberish, uri: string]; - type OutputTuple = [tokenId: bigint, uri: string]; - interface OutputObject { - tokenId: bigint; - uri: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NewURIPrefixEvent { - type InputTuple = [prefix: string]; - type OutputTuple = [prefix: string]; - interface OutputObject { - prefix: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RemoveReverseEvent { - type InputTuple = [addr: AddressLike]; - type OutputTuple = [addr: string]; - interface OutputObject { - addr: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ResetRecordsEvent { - type InputTuple = [tokenId: BigNumberish]; - type OutputTuple = [tokenId: bigint]; - interface OutputObject { - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace SetEvent { - type InputTuple = [ - tokenId: BigNumberish, - keyIndex: string, - valueIndex: string, - key: string, - value: string - ]; - type OutputTuple = [ - tokenId: bigint, - keyIndex: string, - valueIndex: string, - key: string, - value: string - ]; - interface OutputObject { - tokenId: bigint; - keyIndex: string; - valueIndex: string; - key: string; - value: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace SetExpiryEvent { - type InputTuple = [tokenId: BigNumberish, expiry: BigNumberish]; - type OutputTuple = [tokenId: bigint, expiry: bigint]; - interface OutputObject { - tokenId: bigint; - expiry: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace SetReverseEvent { - type InputTuple = [addr: AddressLike, tokenId: BigNumberish]; - type OutputTuple = [addr: string, tokenId: bigint]; - interface OutputObject { - addr: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferEvent { - type InputTuple = [ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [from: string, to: string, tokenId: bigint]; - interface OutputObject { - from: string; - to: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace UpgradedEvent { - type InputTuple = [implementation: AddressLike]; - type OutputTuple = [implementation: string]; - interface OutputObject { - implementation: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface UNSRegistry extends BaseContract { - connect(runner?: ContractRunner | null): UNSRegistry; - waitForDeployment(): Promise; - interface: UNSRegistryInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - BATCH_LIMIT: TypedContractMethod<[], [bigint], "view">; - NAME: TypedContractMethod<[], [string], "view">; - VERSION: TypedContractMethod<[], [string], "view">; - addKey: TypedContractMethod<[key: string], [void], "nonpayable">; - addProxyReader: TypedContractMethod<[ - addr: AddressLike - ], [ - void - ], "nonpayable">; - approve: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; - burn: TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; - deposit: TypedContractMethod<[ - user: AddressLike, - depositData: BytesLike - ], [ - void - ], "nonpayable">; - depositToPolygon: TypedContractMethod<[ - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - execute: TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - string - ], "nonpayable">; - exists: TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; - expiryOf: TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; - get: TypedContractMethod<[ - key: string, - tokenId: BigNumberish - ], [ - string - ], "view">; - getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getByHash: TypedContractMethod<[ - keyHash: BigNumberish, - tokenId: BigNumberish - ], [ - [string, string] & { - key: string; - value: string; - } - ], "view">; - getKey: TypedContractMethod<[keyHash: BigNumberish], [string], "view">; - getKeys: TypedContractMethod<[hashes: BigNumberish[]], [string[]], "view">; - getMany: TypedContractMethod<[ - keys: string[], - tokenId: BigNumberish - ], [ - string[] - ], "view">; - getManyByHash: TypedContractMethod<[ - keyHashes: BigNumberish[], - tokenId: BigNumberish - ], [ - [string[], string[]] & { - keys: string[]; - values: string[]; - } - ], "view">; - initialize: TypedContractMethod<[ - mintingManager: AddressLike, - cnsRegistry: AddressLike, - rootChainManager: AddressLike, - childChainManager: AddressLike - ], [ - void - ], "nonpayable">; - isApprovedForAll: TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - isApprovedOrOwner: TypedContractMethod<[ - spender: AddressLike, - tokenId: BigNumberish - ], [ - boolean - ], "view">; - isExpired: TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; - isTrustedForwarder: TypedContractMethod<[ - forwarder: AddressLike - ], [ - boolean - ], "view">; - "mint(address,uint256)": TypedContractMethod<[ - user: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - "mint(address,uint256,bytes)": TypedContractMethod<[ - user: AddressLike, - tokenId: BigNumberish, - arg2: BytesLike - ], [ - void - ], "nonpayable">; - mintTLD: TypedContractMethod<[ - tokenId: BigNumberish, - uri: string - ], [ - void - ], "nonpayable">; - mintWithRecords: TypedContractMethod<[ - to: AddressLike, - labels: string[], - keys: string[], - values: string[], - withReverse: boolean - ], [ - void - ], "nonpayable">; - multicall: TypedContractMethod<[data: BytesLike[]], [string[]], "nonpayable">; - name: TypedContractMethod<[], [string], "view">; - namehash: TypedContractMethod<[labels: string[]], [bigint], "view">; - nonceOf: TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; - onERC721Received: TypedContractMethod<[ - arg0: AddressLike, - from: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - string - ], "nonpayable">; - ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - reconfigure: TypedContractMethod<[ - keys: string[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - removeReverse: TypedContractMethod<[], [void], "nonpayable">; - reset: TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; - resolverOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - reverseNameOf: TypedContractMethod<[addr: AddressLike], [string], "view">; - reverseOf: TypedContractMethod<[addr: AddressLike], [bigint], "view">; - root: TypedContractMethod<[], [bigint], "view">; - "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - set: TypedContractMethod<[ - key: string, - value: string, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - setApprovalForAll: TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - setByHash: TypedContractMethod<[ - keyHash: BigNumberish, - value: string, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - setExpiry: TypedContractMethod<[ - expiry: BigNumberish, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - setMany: TypedContractMethod<[ - keys: string[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - setManyByHash: TypedContractMethod<[ - keyHashes: BigNumberish[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - setOwner: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - setReverse: TypedContractMethod<[labels: string[]], [void], "nonpayable">; - setTokenURIPrefix: TypedContractMethod<[ - prefix: string - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - symbol: TypedContractMethod<[], [string], "view">; - tokenURI: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - transferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - unlock: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - unlockWithRecords: TypedContractMethod<[ - to: AddressLike, - labels: string[], - keys: string[], - values: string[], - withReverse: boolean - ], [ - void - ], "nonpayable">; - verify: TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - boolean - ], "view">; - withdrawFromPolygon: TypedContractMethod<[ - inputData: BytesLike, - tokenId: BigNumberish, - keys: string[], - values: string[] - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "BATCH_LIMIT"): TypedContractMethod<[], [bigint], "view">; - getFunction(nameOrSignature: "NAME"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "VERSION"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "addKey"): TypedContractMethod<[key: string], [void], "nonpayable">; - getFunction(nameOrSignature: "addProxyReader"): TypedContractMethod<[addr: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "approve"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; - getFunction(nameOrSignature: "burn"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; - getFunction(nameOrSignature: "deposit"): TypedContractMethod<[ - user: AddressLike, - depositData: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "depositToPolygon"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; - getFunction(nameOrSignature: "execute"): TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - string - ], "nonpayable">; - getFunction(nameOrSignature: "exists"): TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; - getFunction(nameOrSignature: "expiryOf"): TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; - getFunction(nameOrSignature: "get"): TypedContractMethod<[ - key: string, - tokenId: BigNumberish - ], [ - string - ], "view">; - getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "getByHash"): TypedContractMethod<[ - keyHash: BigNumberish, - tokenId: BigNumberish - ], [ - [string, string] & { - key: string; - value: string; - } - ], "view">; - getFunction(nameOrSignature: "getKey"): TypedContractMethod<[keyHash: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "getKeys"): TypedContractMethod<[hashes: BigNumberish[]], [string[]], "view">; - getFunction(nameOrSignature: "getMany"): TypedContractMethod<[ - keys: string[], - tokenId: BigNumberish - ], [ - string[] - ], "view">; - getFunction(nameOrSignature: "getManyByHash"): TypedContractMethod<[ - keyHashes: BigNumberish[], - tokenId: BigNumberish - ], [ - [string[], string[]] & { - keys: string[]; - values: string[]; - } - ], "view">; - getFunction(nameOrSignature: "initialize"): TypedContractMethod<[ - mintingManager: AddressLike, - cnsRegistry: AddressLike, - rootChainManager: AddressLike, - childChainManager: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "isApprovedOrOwner"): TypedContractMethod<[ - spender: AddressLike, - tokenId: BigNumberish - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "isExpired"): TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; - getFunction(nameOrSignature: "isTrustedForwarder"): TypedContractMethod<[forwarder: AddressLike], [boolean], "view">; - getFunction(nameOrSignature: "mint(address,uint256)"): TypedContractMethod<[ - user: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "mint(address,uint256,bytes)"): TypedContractMethod<[ - user: AddressLike, - tokenId: BigNumberish, - arg2: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "mintTLD"): TypedContractMethod<[ - tokenId: BigNumberish, - uri: string - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "mintWithRecords"): TypedContractMethod<[ - to: AddressLike, - labels: string[], - keys: string[], - values: string[], - withReverse: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "multicall"): TypedContractMethod<[data: BytesLike[]], [string[]], "nonpayable">; - getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "namehash"): TypedContractMethod<[labels: string[]], [bigint], "view">; - getFunction(nameOrSignature: "nonceOf"): TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; - getFunction(nameOrSignature: "onERC721Received"): TypedContractMethod<[ - arg0: AddressLike, - from: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - string - ], "nonpayable">; - getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "reconfigure"): TypedContractMethod<[ - keys: string[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "removeReverse"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "reset"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; - getFunction(nameOrSignature: "resolverOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "reverseNameOf"): TypedContractMethod<[addr: AddressLike], [string], "view">; - getFunction(nameOrSignature: "reverseOf"): TypedContractMethod<[addr: AddressLike], [bigint], "view">; - getFunction(nameOrSignature: "root"): TypedContractMethod<[], [bigint], "view">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "set"): TypedContractMethod<[ - key: string, - value: string, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setByHash"): TypedContractMethod<[ - keyHash: BigNumberish, - value: string, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setExpiry"): TypedContractMethod<[ - expiry: BigNumberish, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setMany"): TypedContractMethod<[ - keys: string[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setManyByHash"): TypedContractMethod<[ - keyHashes: BigNumberish[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setOwner"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setReverse"): TypedContractMethod<[labels: string[]], [void], "nonpayable">; - getFunction(nameOrSignature: "setTokenURIPrefix"): TypedContractMethod<[prefix: string], [void], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "symbol"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "tokenURI"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "unlock"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "unlockWithRecords"): TypedContractMethod<[ - to: AddressLike, - labels: string[], - keys: string[], - values: string[], - withReverse: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "verify"): TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "withdrawFromPolygon"): TypedContractMethod<[ - inputData: BytesLike, - tokenId: BigNumberish, - keys: string[], - values: string[] - ], [ - void - ], "nonpayable">; - getEvent(key: "AdminChanged"): TypedContractEvent; - getEvent(key: "Approval"): TypedContractEvent; - getEvent(key: "ApprovalForAll"): TypedContractEvent; - getEvent(key: "Initialized"): TypedContractEvent; - getEvent(key: "NewKey"): TypedContractEvent; - getEvent(key: "NewURI"): TypedContractEvent; - getEvent(key: "NewURIPrefix"): TypedContractEvent; - getEvent(key: "RemoveReverse"): TypedContractEvent; - getEvent(key: "ResetRecords"): TypedContractEvent; - getEvent(key: "Set"): TypedContractEvent; - getEvent(key: "SetExpiry"): TypedContractEvent; - getEvent(key: "SetReverse"): TypedContractEvent; - getEvent(key: "Transfer"): TypedContractEvent; - getEvent(key: "Upgraded"): TypedContractEvent; - filters: { - "AdminChanged(address,address)": TypedContractEvent; - AdminChanged: TypedContractEvent; - "Approval(address,address,uint256)": TypedContractEvent; - Approval: TypedContractEvent; - "ApprovalForAll(address,address,bool)": TypedContractEvent; - ApprovalForAll: TypedContractEvent; - "Initialized(uint8)": TypedContractEvent; - Initialized: TypedContractEvent; - "NewKey(uint256,string,string)": TypedContractEvent; - NewKey: TypedContractEvent; - "NewURI(uint256,string)": TypedContractEvent; - NewURI: TypedContractEvent; - "NewURIPrefix(string)": TypedContractEvent; - NewURIPrefix: TypedContractEvent; - "RemoveReverse(address)": TypedContractEvent; - RemoveReverse: TypedContractEvent; - "ResetRecords(uint256)": TypedContractEvent; - ResetRecords: TypedContractEvent; - "Set(uint256,string,string,string,string)": TypedContractEvent; - Set: TypedContractEvent; - "SetExpiry(uint256,uint64)": TypedContractEvent; - SetExpiry: TypedContractEvent; - "SetReverse(address,uint256)": TypedContractEvent; - SetReverse: TypedContractEvent; - "Transfer(address,address,uint256)": TypedContractEvent; - Transfer: TypedContractEvent; - "Upgraded(address)": TypedContractEvent; - Upgraded: TypedContractEvent; - }; -} -//# sourceMappingURL=UNSRegistry.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/UNSRegistry.d.ts.map b/dist/types/contracts/UNSRegistry.d.ts.map deleted file mode 100644 index 0f46f1e7..00000000 --- a/dist/types/contracts/UNSRegistry.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"UNSRegistry.d.ts","sourceRoot":"","sources":["../../../types/contracts/UNSRegistry.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/UNSRegistry.js b/dist/types/contracts/UNSRegistry.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/UNSRegistry.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/cns/ICNSRegistry.d.ts b/dist/types/contracts/cns/ICNSRegistry.d.ts deleted file mode 100644 index e43d7527..00000000 --- a/dist/types/contracts/cns/ICNSRegistry.d.ts +++ /dev/null @@ -1,248 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; -export interface ICNSRegistryInterface extends Interface { - getFunction(nameOrSignature: "approve" | "balanceOf" | "burn" | "childIdOf" | "getApproved" | "isApprovedForAll" | "isApprovedOrOwner" | "name" | "ownerOf" | "resolverOf" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "setApprovalForAll" | "supportsInterface" | "symbol" | "tokenURI" | "transferFrom"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "Transfer"): EventFragment; - encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "burn", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "childIdOf", values: [BigNumberish, string]): string; - encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "isApprovedOrOwner", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "name", values?: undefined): string; - encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "resolverOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "symbol", values?: undefined): string; - encodeFunctionData(functionFragment: "tokenURI", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; - decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "burn", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "childIdOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedOrOwner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "resolverOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "tokenURI", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; -} -export declare namespace ApprovalEvent { - type InputTuple = [ - owner: AddressLike, - approved: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [owner: string, approved: string, tokenId: bigint]; - interface OutputObject { - owner: string; - approved: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ApprovalForAllEvent { - type InputTuple = [ - owner: AddressLike, - operator: AddressLike, - approved: boolean - ]; - type OutputTuple = [ - owner: string, - operator: string, - approved: boolean - ]; - interface OutputObject { - owner: string; - operator: string; - approved: boolean; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferEvent { - type InputTuple = [ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [from: string, to: string, tokenId: bigint]; - interface OutputObject { - from: string; - to: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface ICNSRegistry extends BaseContract { - connect(runner?: ContractRunner | null): ICNSRegistry; - waitForDeployment(): Promise; - interface: ICNSRegistryInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - approve: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; - burn: TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; - childIdOf: TypedContractMethod<[ - tokenId: BigNumberish, - label: string - ], [ - bigint - ], "view">; - getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - isApprovedForAll: TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - isApprovedOrOwner: TypedContractMethod<[ - spender: AddressLike, - tokenId: BigNumberish - ], [ - boolean - ], "view">; - name: TypedContractMethod<[], [string], "view">; - ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - resolverOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - setApprovalForAll: TypedContractMethod<[ - operator: AddressLike, - _approved: boolean - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - symbol: TypedContractMethod<[], [string], "view">; - tokenURI: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - transferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "approve"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; - getFunction(nameOrSignature: "burn"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; - getFunction(nameOrSignature: "childIdOf"): TypedContractMethod<[ - tokenId: BigNumberish, - label: string - ], [ - bigint - ], "view">; - getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "isApprovedOrOwner"): TypedContractMethod<[ - spender: AddressLike, - tokenId: BigNumberish - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "resolverOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ - operator: AddressLike, - _approved: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "symbol"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "tokenURI"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getEvent(key: "Approval"): TypedContractEvent; - getEvent(key: "ApprovalForAll"): TypedContractEvent; - getEvent(key: "Transfer"): TypedContractEvent; - filters: { - "Approval(address,address,uint256)": TypedContractEvent; - Approval: TypedContractEvent; - "ApprovalForAll(address,address,bool)": TypedContractEvent; - ApprovalForAll: TypedContractEvent; - "Transfer(address,address,uint256)": TypedContractEvent; - Transfer: TypedContractEvent; - }; -} -//# sourceMappingURL=ICNSRegistry.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/cns/ICNSRegistry.d.ts.map b/dist/types/contracts/cns/ICNSRegistry.d.ts.map deleted file mode 100644 index 918a9016..00000000 --- a/dist/types/contracts/cns/ICNSRegistry.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ICNSRegistry.d.ts","sourceRoot":"","sources":["../../../../types/contracts/cns/ICNSRegistry.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,aAAa,EACb,WAAW,EACX,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,mBAAmB,EACnB,aAAa,EACb,mBAAmB,EACpB,MAAM,cAAc,CAAC;AAEtB,MAAM,WAAW,qBAAsB,SAAQ,SAAS;IACtD,WAAW,CACT,eAAe,EACX,SAAS,GACT,WAAW,GACX,MAAM,GACN,WAAW,GACX,aAAa,GACb,kBAAkB,GAClB,mBAAmB,GACnB,MAAM,GACN,SAAS,GACT,YAAY,GACZ,2CAA2C,GAC3C,iDAAiD,GACjD,mBAAmB,GACnB,mBAAmB,GACnB,QAAQ,GACR,UAAU,GACV,cAAc,GACjB,gBAAgB,CAAC;IAEpB,QAAQ,CACN,sBAAsB,EAAE,UAAU,GAAG,gBAAgB,GAAG,UAAU,GACjE,aAAa,CAAC;IAEjB,kBAAkB,CAChB,gBAAgB,EAAE,SAAS,EAC3B,MAAM,EAAE,CAAC,WAAW,EAAE,YAAY,CAAC,GAClC,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,WAAW,EAC7B,MAAM,EAAE,CAAC,WAAW,CAAC,GACpB,MAAM,CAAC;IACV,kBAAkB,CAAC,gBAAgB,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,YAAY,CAAC,GAAG,MAAM,CAAC;IAC7E,kBAAkB,CAChB,gBAAgB,EAAE,WAAW,EAC7B,MAAM,EAAE,CAAC,YAAY,EAAE,MAAM,CAAC,GAC7B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,aAAa,EAC/B,MAAM,EAAE,CAAC,YAAY,CAAC,GACrB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,kBAAkB,EACpC,MAAM,EAAE,CAAC,WAAW,EAAE,WAAW,CAAC,GACjC,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,mBAAmB,EACrC,MAAM,EAAE,CAAC,WAAW,EAAE,YAAY,CAAC,GAClC,MAAM,CAAC;IACV,kBAAkB,CAAC,gBAAgB,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IACzE,kBAAkB,CAChB,gBAAgB,EAAE,SAAS,EAC3B,MAAM,EAAE,CAAC,YAAY,CAAC,GACrB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,YAAY,EAC9B,MAAM,EAAE,CAAC,YAAY,CAAC,GACrB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,2CAA2C,EAC7D,MAAM,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,YAAY,CAAC,GAC/C,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,iDAAiD,EACnE,MAAM,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,SAAS,CAAC,GAC1D,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,mBAAmB,EACrC,MAAM,EAAE,CAAC,WAAW,EAAE,OAAO,CAAC,GAC7B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,mBAAmB,EACrC,MAAM,EAAE,CAAC,SAAS,CAAC,GAClB,MAAM,CAAC;IACV,kBAAkB,CAAC,gBAAgB,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,kBAAkB,CAChB,gBAAgB,EAAE,UAAU,EAC5B,MAAM,EAAE,CAAC,YAAY,CAAC,GACrB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,cAAc,EAChC,MAAM,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,YAAY,CAAC,GAC/C,MAAM,CAAC;IAEV,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,oBAAoB,CAAC,gBAAgB,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC7E,oBAAoB,CAAC,gBAAgB,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IACxE,oBAAoB,CAAC,gBAAgB,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC7E,oBAAoB,CAClB,gBAAgB,EAAE,aAAa,EAC/B,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,kBAAkB,EACpC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,mBAAmB,EACrC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IACxE,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,oBAAoB,CAAC,gBAAgB,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC9E,oBAAoB,CAClB,gBAAgB,EAAE,2CAA2C,EAC7D,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,iDAAiD,EACnE,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,mBAAmB,EACrC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,mBAAmB,EACrC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC1E,oBAAoB,CAAC,gBAAgB,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC5E,oBAAoB,CAClB,gBAAgB,EAAE,cAAc,EAChC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;CACX;AAED,yBAAiB,aAAa,CAAC;IAC7B,KAAY,UAAU,GAAG;QACvB,KAAK,EAAE,WAAW;QAClB,QAAQ,EAAE,WAAW;QACrB,OAAO,EAAE,YAAY;KACtB,CAAC;IACF,KAAY,WAAW,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IAC7E,UAAiB,YAAY;QAC3B,KAAK,EAAE,MAAM,CAAC;QACd,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,MAAM,CAAC;KACjB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,mBAAmB,CAAC;IACnC,KAAY,UAAU,GAAG;QACvB,KAAK,EAAE,WAAW;QAClB,QAAQ,EAAE,WAAW;QACrB,QAAQ,EAAE,OAAO;KAClB,CAAC;IACF,KAAY,WAAW,GAAG;QACxB,KAAK,EAAE,MAAM;QACb,QAAQ,EAAE,MAAM;QAChB,QAAQ,EAAE,OAAO;KAClB,CAAC;IACF,UAAiB,YAAY;QAC3B,KAAK,EAAE,MAAM,CAAC;QACd,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,OAAO,CAAC;KACnB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,aAAa,CAAC;IAC7B,KAAY,UAAU,GAAG;QACvB,IAAI,EAAE,WAAW;QACjB,EAAE,EAAE,WAAW;QACf,OAAO,EAAE,YAAY;KACtB,CAAC;IACF,KAAY,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IACtE,UAAiB,YAAY;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,EAAE,EAAE,MAAM,CAAC;QACX,OAAO,EAAE,MAAM,CAAC;KACjB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,MAAM,WAAW,YAAa,SAAQ,YAAY;IAChD,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,YAAY,CAAC;IACtD,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,qBAAqB,CAAC;IAEjC,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,OAAO,EAAE,mBAAmB,CAC1B;QAAC,EAAE,EAAE,WAAW;QAAE,OAAO,EAAE,YAAY;KAAC,EACxC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,SAAS,EAAE,mBAAmB,CAAC,CAAC,KAAK,EAAE,WAAW,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEvE,IAAI,EAAE,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IAEzE,SAAS,EAAE,mBAAmB,CAC5B;QAAC,OAAO,EAAE,YAAY;QAAE,KAAK,EAAE,MAAM;KAAC,EACtC;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IAEF,WAAW,EAAE,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAE5E,gBAAgB,EAAE,mBAAmB,CACnC;QAAC,KAAK,EAAE,WAAW;QAAE,QAAQ,EAAE,WAAW;KAAC,EAC3C;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,iBAAiB,EAAE,mBAAmB,CACpC;QAAC,OAAO,EAAE,WAAW;QAAE,OAAO,EAAE,YAAY;KAAC,EAC7C;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,IAAI,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEhD,OAAO,EAAE,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAExE,UAAU,EAAE,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAE3E,2CAA2C,EAAE,mBAAmB,CAC9D;QAAC,IAAI,EAAE,WAAW;QAAE,EAAE,EAAE,WAAW;QAAE,OAAO,EAAE,YAAY;KAAC,EAC3D;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,iDAAiD,EAAE,mBAAmB,CACpE;QACE,IAAI,EAAE,WAAW;QACjB,EAAE,EAAE,WAAW;QACf,OAAO,EAAE,YAAY;QACrB,IAAI,EAAE,SAAS;KAChB,EACD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,iBAAiB,EAAE,mBAAmB,CACpC;QAAC,QAAQ,EAAE,WAAW;QAAE,SAAS,EAAE,OAAO;KAAC,EAC3C;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,iBAAiB,EAAE,mBAAmB,CACpC;QAAC,WAAW,EAAE,SAAS;KAAC,EACxB;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,MAAM,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAElD,QAAQ,EAAE,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEzE,YAAY,EAAE,mBAAmB,CAC/B;QAAC,IAAI,EAAE,WAAW;QAAE,EAAE,EAAE,WAAW;QAAE,OAAO,EAAE,YAAY;KAAC,EAC3D;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,WAAW,CACT,eAAe,EAAE,SAAS,GACzB,mBAAmB,CACpB;QAAC,EAAE,EAAE,WAAW;QAAE,OAAO,EAAE,YAAY;KAAC,EACxC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,WAAW,GAC3B,mBAAmB,CAAC,CAAC,KAAK,EAAE,WAAW,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC/D,WAAW,CACT,eAAe,EAAE,MAAM,GACtB,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IACtE,WAAW,CACT,eAAe,EAAE,WAAW,GAC3B,mBAAmB,CACpB;QAAC,OAAO,EAAE,YAAY;QAAE,KAAK,EAAE,MAAM;KAAC,EACtC;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,aAAa,GAC7B,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAClE,WAAW,CACT,eAAe,EAAE,kBAAkB,GAClC,mBAAmB,CACpB;QAAC,KAAK,EAAE,WAAW;QAAE,QAAQ,EAAE,WAAW;KAAC,EAC3C;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,mBAAmB,GACnC,mBAAmB,CACpB;QAAC,OAAO,EAAE,WAAW;QAAE,OAAO,EAAE,YAAY;KAAC,EAC7C;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,MAAM,GACtB,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC7C,WAAW,CACT,eAAe,EAAE,SAAS,GACzB,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAClE,WAAW,CACT,eAAe,EAAE,YAAY,GAC5B,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAClE,WAAW,CACT,eAAe,EAAE,2CAA2C,GAC3D,mBAAmB,CACpB;QAAC,IAAI,EAAE,WAAW;QAAE,EAAE,EAAE,WAAW;QAAE,OAAO,EAAE,YAAY;KAAC,EAC3D;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,iDAAiD,GACjE,mBAAmB,CACpB;QACE,IAAI,EAAE,WAAW;QACjB,EAAE,EAAE,WAAW;QACf,OAAO,EAAE,YAAY;QACrB,IAAI,EAAE,SAAS;KAChB,EACD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,mBAAmB,GACnC,mBAAmB,CACpB;QAAC,QAAQ,EAAE,WAAW;QAAE,SAAS,EAAE,OAAO;KAAC,EAC3C;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,mBAAmB,GACnC,mBAAmB,CAAC,CAAC,WAAW,EAAE,SAAS,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IACpE,WAAW,CACT,eAAe,EAAE,QAAQ,GACxB,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC7C,WAAW,CACT,eAAe,EAAE,UAAU,GAC1B,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAClE,WAAW,CACT,eAAe,EAAE,cAAc,GAC9B,mBAAmB,CACpB;QAAC,IAAI,EAAE,WAAW;QAAE,EAAE,EAAE,WAAW;QAAE,OAAO,EAAE,YAAY;KAAC,EAC3D;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,QAAQ,CACN,GAAG,EAAE,UAAU,GACd,kBAAkB,CACnB,aAAa,CAAC,UAAU,EACxB,aAAa,CAAC,WAAW,EACzB,aAAa,CAAC,YAAY,CAC3B,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,gBAAgB,GACpB,kBAAkB,CACnB,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,UAAU,GACd,kBAAkB,CACnB,aAAa,CAAC,UAAU,EACxB,aAAa,CAAC,WAAW,EACzB,aAAa,CAAC,YAAY,CAC3B,CAAC;IAEF,OAAO,EAAE;QACP,mCAAmC,EAAE,kBAAkB,CACrD,aAAa,CAAC,UAAU,EACxB,aAAa,CAAC,WAAW,EACzB,aAAa,CAAC,YAAY,CAC3B,CAAC;QACF,QAAQ,EAAE,kBAAkB,CAC1B,aAAa,CAAC,UAAU,EACxB,aAAa,CAAC,WAAW,EACzB,aAAa,CAAC,YAAY,CAC3B,CAAC;QAEF,sCAAsC,EAAE,kBAAkB,CACxD,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;QACF,cAAc,EAAE,kBAAkB,CAChC,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;QAEF,mCAAmC,EAAE,kBAAkB,CACrD,aAAa,CAAC,UAAU,EACxB,aAAa,CAAC,WAAW,EACzB,aAAa,CAAC,YAAY,CAC3B,CAAC;QACF,QAAQ,EAAE,kBAAkB,CAC1B,aAAa,CAAC,UAAU,EACxB,aAAa,CAAC,WAAW,EACzB,aAAa,CAAC,YAAY,CAC3B,CAAC;KACH,CAAC;CACH"} \ No newline at end of file diff --git a/dist/types/contracts/cns/ICNSRegistry.js b/dist/types/contracts/cns/ICNSRegistry.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/cns/ICNSRegistry.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/cns/IMintingController.d.ts b/dist/types/contracts/cns/IMintingController.d.ts deleted file mode 100644 index abbd4fde..00000000 --- a/dist/types/contracts/cns/IMintingController.d.ts +++ /dev/null @@ -1,116 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../common"; -export interface IMintingControllerInterface extends Interface { - getFunction(nameOrSignature: "mintSLD" | "mintSLDWithResolver" | "safeMintSLD(address,string)" | "safeMintSLD(address,string,bytes)" | "safeMintSLDWithResolver(address,string,address,bytes)" | "safeMintSLDWithResolver(address,string,address)"): FunctionFragment; - encodeFunctionData(functionFragment: "mintSLD", values: [AddressLike, string]): string; - encodeFunctionData(functionFragment: "mintSLDWithResolver", values: [AddressLike, string, AddressLike]): string; - encodeFunctionData(functionFragment: "safeMintSLD(address,string)", values: [AddressLike, string]): string; - encodeFunctionData(functionFragment: "safeMintSLD(address,string,bytes)", values: [AddressLike, string, BytesLike]): string; - encodeFunctionData(functionFragment: "safeMintSLDWithResolver(address,string,address,bytes)", values: [AddressLike, string, AddressLike, BytesLike]): string; - encodeFunctionData(functionFragment: "safeMintSLDWithResolver(address,string,address)", values: [AddressLike, string, AddressLike]): string; - decodeFunctionResult(functionFragment: "mintSLD", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "mintSLDWithResolver", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeMintSLD(address,string)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeMintSLD(address,string,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeMintSLDWithResolver(address,string,address,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeMintSLDWithResolver(address,string,address)", data: BytesLike): Result; -} -export interface IMintingController extends BaseContract { - connect(runner?: ContractRunner | null): IMintingController; - waitForDeployment(): Promise; - interface: IMintingControllerInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - mintSLD: TypedContractMethod<[ - to: AddressLike, - label: string - ], [ - void - ], "nonpayable">; - mintSLDWithResolver: TypedContractMethod<[ - to: AddressLike, - label: string, - resolver: AddressLike - ], [ - void - ], "nonpayable">; - "safeMintSLD(address,string)": TypedContractMethod<[ - to: AddressLike, - label: string - ], [ - void - ], "nonpayable">; - "safeMintSLD(address,string,bytes)": TypedContractMethod<[ - to: AddressLike, - label: string, - data: BytesLike - ], [ - void - ], "nonpayable">; - "safeMintSLDWithResolver(address,string,address,bytes)": TypedContractMethod<[ - to: AddressLike, - label: string, - resolver: AddressLike, - data: BytesLike - ], [ - void - ], "nonpayable">; - "safeMintSLDWithResolver(address,string,address)": TypedContractMethod<[ - to: AddressLike, - label: string, - resolver: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "mintSLD"): TypedContractMethod<[ - to: AddressLike, - label: string - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "mintSLDWithResolver"): TypedContractMethod<[ - to: AddressLike, - label: string, - resolver: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeMintSLD(address,string)"): TypedContractMethod<[ - to: AddressLike, - label: string - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeMintSLD(address,string,bytes)"): TypedContractMethod<[ - to: AddressLike, - label: string, - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeMintSLDWithResolver(address,string,address,bytes)"): TypedContractMethod<[ - to: AddressLike, - label: string, - resolver: AddressLike, - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeMintSLDWithResolver(address,string,address)"): TypedContractMethod<[ - to: AddressLike, - label: string, - resolver: AddressLike - ], [ - void - ], "nonpayable">; - filters: {}; -} -//# sourceMappingURL=IMintingController.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/cns/IMintingController.d.ts.map b/dist/types/contracts/cns/IMintingController.d.ts.map deleted file mode 100644 index f081ba28..00000000 --- a/dist/types/contracts/cns/IMintingController.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IMintingController.d.ts","sourceRoot":"","sources":["../../../../types/contracts/cns/IMintingController.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/cns/IMintingController.js b/dist/types/contracts/cns/IMintingController.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/cns/IMintingController.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/cns/IResolver.d.ts b/dist/types/contracts/cns/IResolver.d.ts deleted file mode 100644 index c00c64cf..00000000 --- a/dist/types/contracts/cns/IResolver.d.ts +++ /dev/null @@ -1,122 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../common"; -export interface IResolverInterface extends Interface { - getFunction(nameOrSignature: "get" | "getByHash" | "getMany" | "getManyByHash" | "preconfigure" | "set"): FunctionFragment; - encodeFunctionData(functionFragment: "get", values: [string, BigNumberish]): string; - encodeFunctionData(functionFragment: "getByHash", values: [BigNumberish, BigNumberish]): string; - encodeFunctionData(functionFragment: "getMany", values: [string[], BigNumberish]): string; - encodeFunctionData(functionFragment: "getManyByHash", values: [BigNumberish[], BigNumberish]): string; - encodeFunctionData(functionFragment: "preconfigure", values: [string[], string[], BigNumberish]): string; - encodeFunctionData(functionFragment: "set", values: [string, string, BigNumberish]): string; - decodeFunctionResult(functionFragment: "get", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getByHash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getMany", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getManyByHash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "preconfigure", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "set", data: BytesLike): Result; -} -export interface IResolver extends BaseContract { - connect(runner?: ContractRunner | null): IResolver; - waitForDeployment(): Promise; - interface: IResolverInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - get: TypedContractMethod<[ - key: string, - tokenId: BigNumberish - ], [ - string - ], "view">; - getByHash: TypedContractMethod<[ - keyHash: BigNumberish, - tokenId: BigNumberish - ], [ - [string, string] & { - key: string; - value: string; - } - ], "view">; - getMany: TypedContractMethod<[ - keys: string[], - tokenId: BigNumberish - ], [ - string[] - ], "view">; - getManyByHash: TypedContractMethod<[ - keyHashes: BigNumberish[], - tokenId: BigNumberish - ], [ - [string[], string[]] & { - keys: string[]; - values: string[]; - } - ], "view">; - preconfigure: TypedContractMethod<[ - keys: string[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - set: TypedContractMethod<[ - key: string, - value: string, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "get"): TypedContractMethod<[ - key: string, - tokenId: BigNumberish - ], [ - string - ], "view">; - getFunction(nameOrSignature: "getByHash"): TypedContractMethod<[ - keyHash: BigNumberish, - tokenId: BigNumberish - ], [ - [string, string] & { - key: string; - value: string; - } - ], "view">; - getFunction(nameOrSignature: "getMany"): TypedContractMethod<[ - keys: string[], - tokenId: BigNumberish - ], [ - string[] - ], "view">; - getFunction(nameOrSignature: "getManyByHash"): TypedContractMethod<[ - keyHashes: BigNumberish[], - tokenId: BigNumberish - ], [ - [string[], string[]] & { - keys: string[]; - values: string[]; - } - ], "view">; - getFunction(nameOrSignature: "preconfigure"): TypedContractMethod<[ - keys: string[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "set"): TypedContractMethod<[ - key: string, - value: string, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - filters: {}; -} -//# sourceMappingURL=IResolver.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/cns/IResolver.d.ts.map b/dist/types/contracts/cns/IResolver.d.ts.map deleted file mode 100644 index c40c8f9c..00000000 --- a/dist/types/contracts/cns/IResolver.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IResolver.d.ts","sourceRoot":"","sources":["../../../../types/contracts/cns/IResolver.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/cns/IResolver.js b/dist/types/contracts/cns/IResolver.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/cns/IResolver.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/cns/IURIPrefixController.d.ts b/dist/types/contracts/cns/IURIPrefixController.d.ts deleted file mode 100644 index fd346ff6..00000000 --- a/dist/types/contracts/cns/IURIPrefixController.d.ts +++ /dev/null @@ -1,30 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../common"; -export interface IURIPrefixControllerInterface extends Interface { - getFunction(nameOrSignature: "setTokenURIPrefix"): FunctionFragment; - encodeFunctionData(functionFragment: "setTokenURIPrefix", values: [string]): string; - decodeFunctionResult(functionFragment: "setTokenURIPrefix", data: BytesLike): Result; -} -export interface IURIPrefixController extends BaseContract { - connect(runner?: ContractRunner | null): IURIPrefixController; - waitForDeployment(): Promise; - interface: IURIPrefixControllerInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - setTokenURIPrefix: TypedContractMethod<[ - prefix: string - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "setTokenURIPrefix"): TypedContractMethod<[prefix: string], [void], "nonpayable">; - filters: {}; -} -//# sourceMappingURL=IURIPrefixController.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/cns/IURIPrefixController.d.ts.map b/dist/types/contracts/cns/IURIPrefixController.d.ts.map deleted file mode 100644 index b3552fa8..00000000 --- a/dist/types/contracts/cns/IURIPrefixController.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IURIPrefixController.d.ts","sourceRoot":"","sources":["../../../../types/contracts/cns/IURIPrefixController.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/cns/IURIPrefixController.js b/dist/types/contracts/cns/IURIPrefixController.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/cns/IURIPrefixController.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/cns/index.d.ts b/dist/types/contracts/cns/index.d.ts deleted file mode 100644 index 97ace956..00000000 --- a/dist/types/contracts/cns/index.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -export type { ICNSRegistry } from "./ICNSRegistry"; -export type { IMintingController } from "./IMintingController"; -export type { IResolver } from "./IResolver"; -export type { IURIPrefixController } from "./IURIPrefixController"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/cns/index.d.ts.map b/dist/types/contracts/cns/index.d.ts.map deleted file mode 100644 index 20c5902c..00000000 --- a/dist/types/contracts/cns/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../types/contracts/cns/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACnD,YAAY,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,YAAY,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,YAAY,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC"} \ No newline at end of file diff --git a/dist/types/contracts/cns/index.js b/dist/types/contracts/cns/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/cns/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/custody/ENSCustody.d.ts b/dist/types/contracts/custody/ENSCustody.d.ts deleted file mode 100644 index 911276bf..00000000 --- a/dist/types/contracts/custody/ENSCustody.d.ts +++ /dev/null @@ -1,549 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; -export declare namespace IForwarder { - type ForwardRequestStruct = { - from: AddressLike; - nonce: BigNumberish; - tokenId: BigNumberish; - data: BytesLike; - }; - type ForwardRequestStructOutput = [ - from: string, - nonce: bigint, - tokenId: bigint, - data: string - ] & { - from: string; - nonce: bigint; - tokenId: bigint; - data: string; - }; -} -export interface ENSCustodyInterface extends Interface { - getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE" | "MINTER_ROLE" | "NAME" | "VERSION" | "addMinter" | "addMinters" | "closeMinter" | "commit" | "execute" | "getRoleAdmin" | "grantRole" | "hasRole" | "initialize" | "isMinter" | "isTrustedForwarder" | "makeCommitment" | "nonceOf" | "onERC1155BatchReceived" | "onERC1155Received" | "onERC721Received" | "owner" | "ownerOf" | "register" | "removeMinter" | "removeMinters" | "renew" | "renounceMinter" | "renounceOwnership" | "renounceRole" | "rentPrice" | "revokeRole" | "rotateMinter" | "safeTransfer" | "setBaseRegistrar" | "supportsInterface" | "transferOwnership" | "verify"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Initialized" | "OwnershipTransferred" | "Parked" | "RoleAdminChanged" | "RoleGranted" | "RoleRevoked"): EventFragment; - encodeFunctionData(functionFragment: "DEFAULT_ADMIN_ROLE", values?: undefined): string; - encodeFunctionData(functionFragment: "MINTER_ROLE", values?: undefined): string; - encodeFunctionData(functionFragment: "NAME", values?: undefined): string; - encodeFunctionData(functionFragment: "VERSION", values?: undefined): string; - encodeFunctionData(functionFragment: "addMinter", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "addMinters", values: [AddressLike[]]): string; - encodeFunctionData(functionFragment: "closeMinter", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "commit", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "execute", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; - encodeFunctionData(functionFragment: "getRoleAdmin", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "grantRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "hasRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "initialize", values: [AddressLike, AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "isMinter", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "isTrustedForwarder", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "makeCommitment", values: [ - string, - AddressLike, - BigNumberish, - BytesLike, - AddressLike, - BytesLike[], - boolean, - BigNumberish, - boolean - ]): string; - encodeFunctionData(functionFragment: "nonceOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "onERC1155BatchReceived", values: [ - AddressLike, - AddressLike, - BigNumberish[], - BigNumberish[], - BytesLike - ]): string; - encodeFunctionData(functionFragment: "onERC1155Received", values: [AddressLike, AddressLike, BigNumberish, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "onERC721Received", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "owner", values?: undefined): string; - encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "register", values: [ - string, - AddressLike, - BigNumberish, - BytesLike, - AddressLike, - BytesLike[], - boolean, - BigNumberish, - boolean - ]): string; - encodeFunctionData(functionFragment: "removeMinter", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "removeMinters", values: [AddressLike[]]): string; - encodeFunctionData(functionFragment: "renew", values: [string, BigNumberish]): string; - encodeFunctionData(functionFragment: "renounceMinter", values?: undefined): string; - encodeFunctionData(functionFragment: "renounceOwnership", values?: undefined): string; - encodeFunctionData(functionFragment: "renounceRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "rentPrice", values: [string, BigNumberish]): string; - encodeFunctionData(functionFragment: "revokeRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "rotateMinter", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "safeTransfer", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "setBaseRegistrar", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "transferOwnership", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "verify", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; - decodeFunctionResult(functionFragment: "DEFAULT_ADMIN_ROLE", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "MINTER_ROLE", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "NAME", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "VERSION", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "addMinter", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "addMinters", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "closeMinter", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "commit", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getRoleAdmin", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "grantRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "hasRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isMinter", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isTrustedForwarder", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "makeCommitment", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "nonceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "onERC1155BatchReceived", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "onERC1155Received", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "onERC721Received", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "register", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "removeMinter", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "removeMinters", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renew", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceMinter", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceOwnership", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "rentPrice", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "revokeRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "rotateMinter", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransfer", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setBaseRegistrar", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "verify", data: BytesLike): Result; -} -export declare namespace InitializedEvent { - type InputTuple = [version: BigNumberish]; - type OutputTuple = [version: bigint]; - interface OutputObject { - version: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace OwnershipTransferredEvent { - type InputTuple = [previousOwner: AddressLike, newOwner: AddressLike]; - type OutputTuple = [previousOwner: string, newOwner: string]; - interface OutputObject { - previousOwner: string; - newOwner: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ParkedEvent { - type InputTuple = [tokenId: BigNumberish, owner: AddressLike]; - type OutputTuple = [tokenId: bigint, owner: string]; - interface OutputObject { - tokenId: bigint; - owner: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RoleAdminChangedEvent { - type InputTuple = [ - role: BytesLike, - previousAdminRole: BytesLike, - newAdminRole: BytesLike - ]; - type OutputTuple = [ - role: string, - previousAdminRole: string, - newAdminRole: string - ]; - interface OutputObject { - role: string; - previousAdminRole: string; - newAdminRole: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RoleGrantedEvent { - type InputTuple = [ - role: BytesLike, - account: AddressLike, - sender: AddressLike - ]; - type OutputTuple = [role: string, account: string, sender: string]; - interface OutputObject { - role: string; - account: string; - sender: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RoleRevokedEvent { - type InputTuple = [ - role: BytesLike, - account: AddressLike, - sender: AddressLike - ]; - type OutputTuple = [role: string, account: string, sender: string]; - interface OutputObject { - role: string; - account: string; - sender: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface ENSCustody extends BaseContract { - connect(runner?: ContractRunner | null): ENSCustody; - waitForDeployment(): Promise; - interface: ENSCustodyInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - DEFAULT_ADMIN_ROLE: TypedContractMethod<[], [string], "view">; - MINTER_ROLE: TypedContractMethod<[], [string], "view">; - NAME: TypedContractMethod<[], [string], "view">; - VERSION: TypedContractMethod<[], [string], "view">; - addMinter: TypedContractMethod<[account: AddressLike], [void], "nonpayable">; - addMinters: TypedContractMethod<[ - accounts: AddressLike[] - ], [ - void - ], "nonpayable">; - closeMinter: TypedContractMethod<[receiver: AddressLike], [void], "payable">; - commit: TypedContractMethod<[commitment: BytesLike], [void], "nonpayable">; - execute: TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - string - ], "nonpayable">; - getRoleAdmin: TypedContractMethod<[role: BytesLike], [string], "view">; - grantRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - hasRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - boolean - ], "view">; - initialize: TypedContractMethod<[ - controller: AddressLike, - wrapper: AddressLike, - registrar: AddressLike - ], [ - void - ], "nonpayable">; - isMinter: TypedContractMethod<[account: AddressLike], [boolean], "view">; - isTrustedForwarder: TypedContractMethod<[ - forwarder: AddressLike - ], [ - boolean - ], "view">; - makeCommitment: TypedContractMethod<[ - name: string, - owner: AddressLike, - duration: BigNumberish, - secret: BytesLike, - resolver: AddressLike, - data: BytesLike[], - reverseRecord: boolean, - ownerControlledFuses: BigNumberish, - selfCustody: boolean - ], [ - string - ], "view">; - nonceOf: TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; - onERC1155BatchReceived: TypedContractMethod<[ - arg0: AddressLike, - arg1: AddressLike, - tokenIds: BigNumberish[], - arg3: BigNumberish[], - data: BytesLike - ], [ - string - ], "nonpayable">; - onERC1155Received: TypedContractMethod<[ - arg0: AddressLike, - from: AddressLike, - tokenId: BigNumberish, - arg3: BigNumberish, - data: BytesLike - ], [ - string - ], "nonpayable">; - onERC721Received: TypedContractMethod<[ - arg0: AddressLike, - arg1: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - string - ], "nonpayable">; - owner: TypedContractMethod<[], [string], "view">; - ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - register: TypedContractMethod<[ - name: string, - owner: AddressLike, - duration: BigNumberish, - secret: BytesLike, - resolver: AddressLike, - data: BytesLike[], - reverseRecord: boolean, - ownerControlledFuses: BigNumberish, - selfCustody: boolean - ], [ - void - ], "nonpayable">; - removeMinter: TypedContractMethod<[ - account: AddressLike - ], [ - void - ], "nonpayable">; - removeMinters: TypedContractMethod<[ - accounts: AddressLike[] - ], [ - void - ], "nonpayable">; - renew: TypedContractMethod<[ - name: string, - duration: BigNumberish - ], [ - void - ], "nonpayable">; - renounceMinter: TypedContractMethod<[], [void], "nonpayable">; - renounceOwnership: TypedContractMethod<[], [void], "nonpayable">; - renounceRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - rentPrice: TypedContractMethod<[ - name: string, - duration: BigNumberish - ], [ - bigint - ], "view">; - revokeRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - rotateMinter: TypedContractMethod<[receiver: AddressLike], [void], "payable">; - safeTransfer: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - setBaseRegistrar: TypedContractMethod<[ - baseRegistrar: AddressLike - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - transferOwnership: TypedContractMethod<[ - newOwner: AddressLike - ], [ - void - ], "nonpayable">; - verify: TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - boolean - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "MINTER_ROLE"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "NAME"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "VERSION"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "addMinter"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "addMinters"): TypedContractMethod<[accounts: AddressLike[]], [void], "nonpayable">; - getFunction(nameOrSignature: "closeMinter"): TypedContractMethod<[receiver: AddressLike], [void], "payable">; - getFunction(nameOrSignature: "commit"): TypedContractMethod<[commitment: BytesLike], [void], "nonpayable">; - getFunction(nameOrSignature: "execute"): TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - string - ], "nonpayable">; - getFunction(nameOrSignature: "getRoleAdmin"): TypedContractMethod<[role: BytesLike], [string], "view">; - getFunction(nameOrSignature: "grantRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "hasRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "initialize"): TypedContractMethod<[ - controller: AddressLike, - wrapper: AddressLike, - registrar: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "isMinter"): TypedContractMethod<[account: AddressLike], [boolean], "view">; - getFunction(nameOrSignature: "isTrustedForwarder"): TypedContractMethod<[forwarder: AddressLike], [boolean], "view">; - getFunction(nameOrSignature: "makeCommitment"): TypedContractMethod<[ - name: string, - owner: AddressLike, - duration: BigNumberish, - secret: BytesLike, - resolver: AddressLike, - data: BytesLike[], - reverseRecord: boolean, - ownerControlledFuses: BigNumberish, - selfCustody: boolean - ], [ - string - ], "view">; - getFunction(nameOrSignature: "nonceOf"): TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; - getFunction(nameOrSignature: "onERC1155BatchReceived"): TypedContractMethod<[ - arg0: AddressLike, - arg1: AddressLike, - tokenIds: BigNumberish[], - arg3: BigNumberish[], - data: BytesLike - ], [ - string - ], "nonpayable">; - getFunction(nameOrSignature: "onERC1155Received"): TypedContractMethod<[ - arg0: AddressLike, - from: AddressLike, - tokenId: BigNumberish, - arg3: BigNumberish, - data: BytesLike - ], [ - string - ], "nonpayable">; - getFunction(nameOrSignature: "onERC721Received"): TypedContractMethod<[ - arg0: AddressLike, - arg1: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - string - ], "nonpayable">; - getFunction(nameOrSignature: "owner"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "register"): TypedContractMethod<[ - name: string, - owner: AddressLike, - duration: BigNumberish, - secret: BytesLike, - resolver: AddressLike, - data: BytesLike[], - reverseRecord: boolean, - ownerControlledFuses: BigNumberish, - selfCustody: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "removeMinter"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "removeMinters"): TypedContractMethod<[accounts: AddressLike[]], [void], "nonpayable">; - getFunction(nameOrSignature: "renew"): TypedContractMethod<[ - name: string, - duration: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "renounceMinter"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "renounceOwnership"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "renounceRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "rentPrice"): TypedContractMethod<[ - name: string, - duration: BigNumberish - ], [ - bigint - ], "view">; - getFunction(nameOrSignature: "revokeRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "rotateMinter"): TypedContractMethod<[receiver: AddressLike], [void], "payable">; - getFunction(nameOrSignature: "safeTransfer"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setBaseRegistrar"): TypedContractMethod<[baseRegistrar: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "transferOwnership"): TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "verify"): TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - boolean - ], "view">; - getEvent(key: "Initialized"): TypedContractEvent; - getEvent(key: "OwnershipTransferred"): TypedContractEvent; - getEvent(key: "Parked"): TypedContractEvent; - getEvent(key: "RoleAdminChanged"): TypedContractEvent; - getEvent(key: "RoleGranted"): TypedContractEvent; - getEvent(key: "RoleRevoked"): TypedContractEvent; - filters: { - "Initialized(uint8)": TypedContractEvent; - Initialized: TypedContractEvent; - "OwnershipTransferred(address,address)": TypedContractEvent; - OwnershipTransferred: TypedContractEvent; - "Parked(uint256,address)": TypedContractEvent; - Parked: TypedContractEvent; - "RoleAdminChanged(bytes32,bytes32,bytes32)": TypedContractEvent; - RoleAdminChanged: TypedContractEvent; - "RoleGranted(bytes32,address,address)": TypedContractEvent; - RoleGranted: TypedContractEvent; - "RoleRevoked(bytes32,address,address)": TypedContractEvent; - RoleRevoked: TypedContractEvent; - }; -} -//# sourceMappingURL=ENSCustody.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/custody/ENSCustody.d.ts.map b/dist/types/contracts/custody/ENSCustody.d.ts.map deleted file mode 100644 index eec85139..00000000 --- a/dist/types/contracts/custody/ENSCustody.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ENSCustody.d.ts","sourceRoot":"","sources":["../../../../types/contracts/custody/ENSCustody.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/custody/ENSCustody.js b/dist/types/contracts/custody/ENSCustody.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/custody/ENSCustody.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/custody/IENSCustody.d.ts b/dist/types/contracts/custody/IENSCustody.d.ts deleted file mode 100644 index 790654b9..00000000 --- a/dist/types/contracts/custody/IENSCustody.d.ts +++ /dev/null @@ -1,219 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; -export interface IENSCustodyInterface extends Interface { - getFunction(nameOrSignature: "commit" | "makeCommitment" | "onERC1155BatchReceived" | "onERC1155Received" | "ownerOf" | "register" | "renew" | "rentPrice" | "safeTransfer" | "supportsInterface"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Parked"): EventFragment; - encodeFunctionData(functionFragment: "commit", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "makeCommitment", values: [ - string, - AddressLike, - BigNumberish, - BytesLike, - AddressLike, - BytesLike[], - boolean, - BigNumberish, - boolean - ]): string; - encodeFunctionData(functionFragment: "onERC1155BatchReceived", values: [ - AddressLike, - AddressLike, - BigNumberish[], - BigNumberish[], - BytesLike - ]): string; - encodeFunctionData(functionFragment: "onERC1155Received", values: [AddressLike, AddressLike, BigNumberish, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "register", values: [ - string, - AddressLike, - BigNumberish, - BytesLike, - AddressLike, - BytesLike[], - boolean, - BigNumberish, - boolean - ]): string; - encodeFunctionData(functionFragment: "renew", values: [string, BigNumberish]): string; - encodeFunctionData(functionFragment: "rentPrice", values: [string, BigNumberish]): string; - encodeFunctionData(functionFragment: "safeTransfer", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - decodeFunctionResult(functionFragment: "commit", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "makeCommitment", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "onERC1155BatchReceived", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "onERC1155Received", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "register", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renew", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "rentPrice", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransfer", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; -} -export declare namespace ParkedEvent { - type InputTuple = [tokenId: BigNumberish, owner: AddressLike]; - type OutputTuple = [tokenId: bigint, owner: string]; - interface OutputObject { - tokenId: bigint; - owner: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface IENSCustody extends BaseContract { - connect(runner?: ContractRunner | null): IENSCustody; - waitForDeployment(): Promise; - interface: IENSCustodyInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - commit: TypedContractMethod<[commitment: BytesLike], [void], "nonpayable">; - makeCommitment: TypedContractMethod<[ - name: string, - owner: AddressLike, - duration: BigNumberish, - secret: BytesLike, - resolver: AddressLike, - data: BytesLike[], - reverseRecord: boolean, - ownerControlledFuses: BigNumberish, - selfCustody: boolean - ], [ - string - ], "nonpayable">; - onERC1155BatchReceived: TypedContractMethod<[ - operator: AddressLike, - from: AddressLike, - ids: BigNumberish[], - values: BigNumberish[], - data: BytesLike - ], [ - string - ], "nonpayable">; - onERC1155Received: TypedContractMethod<[ - operator: AddressLike, - from: AddressLike, - id: BigNumberish, - value: BigNumberish, - data: BytesLike - ], [ - string - ], "nonpayable">; - ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "nonpayable">; - register: TypedContractMethod<[ - name: string, - owner: AddressLike, - duration: BigNumberish, - secret: BytesLike, - resolver: AddressLike, - data: BytesLike[], - reverseRecord: boolean, - ownerControlledFuses: BigNumberish, - selfCustody: boolean - ], [ - void - ], "nonpayable">; - renew: TypedContractMethod<[ - name: string, - duration: BigNumberish - ], [ - void - ], "nonpayable">; - rentPrice: TypedContractMethod<[ - name: string, - duration: BigNumberish - ], [ - bigint - ], "view">; - safeTransfer: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "commit"): TypedContractMethod<[commitment: BytesLike], [void], "nonpayable">; - getFunction(nameOrSignature: "makeCommitment"): TypedContractMethod<[ - name: string, - owner: AddressLike, - duration: BigNumberish, - secret: BytesLike, - resolver: AddressLike, - data: BytesLike[], - reverseRecord: boolean, - ownerControlledFuses: BigNumberish, - selfCustody: boolean - ], [ - string - ], "nonpayable">; - getFunction(nameOrSignature: "onERC1155BatchReceived"): TypedContractMethod<[ - operator: AddressLike, - from: AddressLike, - ids: BigNumberish[], - values: BigNumberish[], - data: BytesLike - ], [ - string - ], "nonpayable">; - getFunction(nameOrSignature: "onERC1155Received"): TypedContractMethod<[ - operator: AddressLike, - from: AddressLike, - id: BigNumberish, - value: BigNumberish, - data: BytesLike - ], [ - string - ], "nonpayable">; - getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "nonpayable">; - getFunction(nameOrSignature: "register"): TypedContractMethod<[ - name: string, - owner: AddressLike, - duration: BigNumberish, - secret: BytesLike, - resolver: AddressLike, - data: BytesLike[], - reverseRecord: boolean, - ownerControlledFuses: BigNumberish, - selfCustody: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "renew"): TypedContractMethod<[ - name: string, - duration: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "rentPrice"): TypedContractMethod<[ - name: string, - duration: BigNumberish - ], [ - bigint - ], "view">; - getFunction(nameOrSignature: "safeTransfer"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - getEvent(key: "Parked"): TypedContractEvent; - filters: { - "Parked(uint256,address)": TypedContractEvent; - Parked: TypedContractEvent; - }; -} -//# sourceMappingURL=IENSCustody.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/custody/IENSCustody.d.ts.map b/dist/types/contracts/custody/IENSCustody.d.ts.map deleted file mode 100644 index bdae7b82..00000000 --- a/dist/types/contracts/custody/IENSCustody.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IENSCustody.d.ts","sourceRoot":"","sources":["../../../../types/contracts/custody/IENSCustody.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/custody/IENSCustody.js b/dist/types/contracts/custody/IENSCustody.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/custody/IENSCustody.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/custody/ZilliqaRecover.d.ts b/dist/types/contracts/custody/ZilliqaRecover.d.ts deleted file mode 100644 index 79df0bc2..00000000 --- a/dist/types/contracts/custody/ZilliqaRecover.d.ts +++ /dev/null @@ -1,307 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; -export declare namespace IForwarder { - type ForwardRequestStruct = { - from: AddressLike; - nonce: BigNumberish; - tokenId: BigNumberish; - data: BytesLike; - }; - type ForwardRequestStructOutput = [ - from: string, - nonce: bigint, - tokenId: bigint, - data: string - ] & { - from: string; - nonce: bigint; - tokenId: bigint; - data: string; - }; -} -export declare namespace ZilliqaRecover { - type MintingTokenStruct = { - zilOwner: AddressLike; - label: string; - }; - type MintingTokenStructOutput = [zilOwner: string, label: string] & { - zilOwner: string; - label: string; - }; -} -export interface ZilliqaRecoverInterface extends Interface { - getFunction(nameOrSignature: "ZIL_NODE" | "claim" | "claimAll" | "ethAddress" | "execute" | "initialize" | "isOwnedBy" | "isTrustedForwarder" | "mint" | "mintAll" | "mintingManager" | "nonceOf" | "onERC721Received" | "registry" | "verify" | "zilAddress" | "znsOwnerOf"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Initialized" | "ZnsTokenClaimed" | "ZnsTokenMinted"): EventFragment; - encodeFunctionData(functionFragment: "ZIL_NODE", values?: undefined): string; - encodeFunctionData(functionFragment: "claim", values: [BigNumberish, BytesLike, BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "claimAll", values: [BigNumberish[], BytesLike, BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "ethAddress", values: [BytesLike, BytesLike]): string; - encodeFunctionData(functionFragment: "execute", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; - encodeFunctionData(functionFragment: "initialize", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "isOwnedBy", values: [AddressLike, BigNumberish[]]): string; - encodeFunctionData(functionFragment: "isTrustedForwarder", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "mint", values: [string, AddressLike]): string; - encodeFunctionData(functionFragment: "mintAll", values: [ZilliqaRecover.MintingTokenStruct[]]): string; - encodeFunctionData(functionFragment: "mintingManager", values?: undefined): string; - encodeFunctionData(functionFragment: "nonceOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "onERC721Received", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "registry", values?: undefined): string; - encodeFunctionData(functionFragment: "verify", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; - encodeFunctionData(functionFragment: "zilAddress", values: [BytesLike, BytesLike]): string; - encodeFunctionData(functionFragment: "znsOwnerOf", values: [BigNumberish]): string; - decodeFunctionResult(functionFragment: "ZIL_NODE", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "claim", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "claimAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ethAddress", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isOwnedBy", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isTrustedForwarder", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "mint", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "mintAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "mintingManager", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "nonceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "onERC721Received", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "registry", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "verify", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "zilAddress", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "znsOwnerOf", data: BytesLike): Result; -} -export declare namespace InitializedEvent { - type InputTuple = [version: BigNumberish]; - type OutputTuple = [version: bigint]; - interface OutputObject { - version: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ZnsTokenClaimedEvent { - type InputTuple = [ - tokenId: BigNumberish, - oldAddress: AddressLike, - newAddress: AddressLike - ]; - type OutputTuple = [ - tokenId: bigint, - oldAddress: string, - newAddress: string - ]; - interface OutputObject { - tokenId: bigint; - oldAddress: string; - newAddress: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ZnsTokenMintedEvent { - type InputTuple = [ - tokenId: BigNumberish, - zilAddress: AddressLike, - label: string - ]; - type OutputTuple = [ - tokenId: bigint, - zilAddress: string, - label: string - ]; - interface OutputObject { - tokenId: bigint; - zilAddress: string; - label: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface ZilliqaRecover extends BaseContract { - connect(runner?: ContractRunner | null): ZilliqaRecover; - waitForDeployment(): Promise; - interface: ZilliqaRecoverInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - ZIL_NODE: TypedContractMethod<[], [bigint], "view">; - claim: TypedContractMethod<[ - tokenId: BigNumberish, - publicKeyX: BytesLike, - publicKeyY: BytesLike, - newOwnerAddress: AddressLike - ], [ - void - ], "nonpayable">; - claimAll: TypedContractMethod<[ - tokenIds: BigNumberish[], - publicKeyX: BytesLike, - publicKeyY: BytesLike, - newOwnerAddress: AddressLike - ], [ - void - ], "nonpayable">; - ethAddress: TypedContractMethod<[ - publicKeyX: BytesLike, - publicKeyY: BytesLike - ], [ - string - ], "view">; - execute: TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - string - ], "nonpayable">; - initialize: TypedContractMethod<[ - registry_: AddressLike, - mintingManager_: AddressLike - ], [ - void - ], "nonpayable">; - isOwnedBy: TypedContractMethod<[ - _zilAddress: AddressLike, - tokenIds: BigNumberish[] - ], [ - boolean - ], "view">; - isTrustedForwarder: TypedContractMethod<[ - forwarder: AddressLike - ], [ - boolean - ], "view">; - mint: TypedContractMethod<[ - label: string, - zilOwner: AddressLike - ], [ - bigint - ], "nonpayable">; - mintAll: TypedContractMethod<[ - tokens: ZilliqaRecover.MintingTokenStruct[] - ], [ - void - ], "nonpayable">; - mintingManager: TypedContractMethod<[], [string], "view">; - nonceOf: TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; - onERC721Received: TypedContractMethod<[ - arg0: AddressLike, - arg1: AddressLike, - tokenId: BigNumberish, - arg3: BytesLike - ], [ - string - ], "view">; - registry: TypedContractMethod<[], [string], "view">; - verify: TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - boolean - ], "view">; - zilAddress: TypedContractMethod<[ - publicKeyX: BytesLike, - publicKeyY: BytesLike - ], [ - string - ], "view">; - znsOwnerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "ZIL_NODE"): TypedContractMethod<[], [bigint], "view">; - getFunction(nameOrSignature: "claim"): TypedContractMethod<[ - tokenId: BigNumberish, - publicKeyX: BytesLike, - publicKeyY: BytesLike, - newOwnerAddress: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "claimAll"): TypedContractMethod<[ - tokenIds: BigNumberish[], - publicKeyX: BytesLike, - publicKeyY: BytesLike, - newOwnerAddress: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "ethAddress"): TypedContractMethod<[ - publicKeyX: BytesLike, - publicKeyY: BytesLike - ], [ - string - ], "view">; - getFunction(nameOrSignature: "execute"): TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - string - ], "nonpayable">; - getFunction(nameOrSignature: "initialize"): TypedContractMethod<[ - registry_: AddressLike, - mintingManager_: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "isOwnedBy"): TypedContractMethod<[ - _zilAddress: AddressLike, - tokenIds: BigNumberish[] - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "isTrustedForwarder"): TypedContractMethod<[forwarder: AddressLike], [boolean], "view">; - getFunction(nameOrSignature: "mint"): TypedContractMethod<[ - label: string, - zilOwner: AddressLike - ], [ - bigint - ], "nonpayable">; - getFunction(nameOrSignature: "mintAll"): TypedContractMethod<[ - tokens: ZilliqaRecover.MintingTokenStruct[] - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "mintingManager"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "nonceOf"): TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; - getFunction(nameOrSignature: "onERC721Received"): TypedContractMethod<[ - arg0: AddressLike, - arg1: AddressLike, - tokenId: BigNumberish, - arg3: BytesLike - ], [ - string - ], "view">; - getFunction(nameOrSignature: "registry"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "verify"): TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "zilAddress"): TypedContractMethod<[ - publicKeyX: BytesLike, - publicKeyY: BytesLike - ], [ - string - ], "view">; - getFunction(nameOrSignature: "znsOwnerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getEvent(key: "Initialized"): TypedContractEvent; - getEvent(key: "ZnsTokenClaimed"): TypedContractEvent; - getEvent(key: "ZnsTokenMinted"): TypedContractEvent; - filters: { - "Initialized(uint8)": TypedContractEvent; - Initialized: TypedContractEvent; - "ZnsTokenClaimed(uint256,address,address)": TypedContractEvent; - ZnsTokenClaimed: TypedContractEvent; - "ZnsTokenMinted(uint256,address,string)": TypedContractEvent; - ZnsTokenMinted: TypedContractEvent; - }; -} -//# sourceMappingURL=ZilliqaRecover.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/custody/ZilliqaRecover.d.ts.map b/dist/types/contracts/custody/ZilliqaRecover.d.ts.map deleted file mode 100644 index 35ac5dd8..00000000 --- a/dist/types/contracts/custody/ZilliqaRecover.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ZilliqaRecover.d.ts","sourceRoot":"","sources":["../../../../types/contracts/custody/ZilliqaRecover.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,aAAa,EACb,WAAW,EACX,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,mBAAmB,EACnB,aAAa,EACb,mBAAmB,EACpB,MAAM,cAAc,CAAC;AAEtB,MAAM,CAAC,OAAO,WAAW,UAAU,CAAC;IAClC,KAAY,oBAAoB,GAAG;QACjC,IAAI,EAAE,WAAW,CAAC;QAClB,KAAK,EAAE,YAAY,CAAC;QACpB,OAAO,EAAE,YAAY,CAAC;QACtB,IAAI,EAAE,SAAS,CAAC;KACjB,CAAC;IAEF,KAAY,0BAA0B,GAAG;QACvC,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,MAAM;QACb,OAAO,EAAE,MAAM;QACf,IAAI,EAAE,MAAM;KACb,GAAG;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;CACpE;AAED,MAAM,CAAC,OAAO,WAAW,cAAc,CAAC;IACtC,KAAY,kBAAkB,GAAG;QAAE,QAAQ,EAAE,WAAW,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAE1E,KAAY,wBAAwB,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG;QACzE,QAAQ,EAAE,MAAM,CAAC;QACjB,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;CACH;AAED,MAAM,WAAW,uBAAwB,SAAQ,SAAS;IACxD,WAAW,CACT,eAAe,EACX,UAAU,GACV,OAAO,GACP,UAAU,GACV,YAAY,GACZ,SAAS,GACT,YAAY,GACZ,WAAW,GACX,oBAAoB,GACpB,MAAM,GACN,SAAS,GACT,gBAAgB,GAChB,SAAS,GACT,kBAAkB,GAClB,UAAU,GACV,QAAQ,GACR,YAAY,GACZ,YAAY,GACf,gBAAgB,CAAC;IAEpB,QAAQ,CACN,sBAAsB,EAAE,aAAa,GAAG,iBAAiB,GAAG,gBAAgB,GAC3E,aAAa,CAAC;IAEjB,kBAAkB,CAAC,gBAAgB,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IAC7E,kBAAkB,CAChB,gBAAgB,EAAE,OAAO,EACzB,MAAM,EAAE,CAAC,YAAY,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,CAAC,GACxD,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,UAAU,EAC5B,MAAM,EAAE,CAAC,YAAY,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,CAAC,GAC1D,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,YAAY,EAC9B,MAAM,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC,GAC7B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,SAAS,EAC3B,MAAM,EAAE,CAAC,UAAU,CAAC,oBAAoB,EAAE,SAAS,CAAC,GACnD,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,YAAY,EAC9B,MAAM,EAAE,CAAC,WAAW,EAAE,WAAW,CAAC,GACjC,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,WAAW,EAC7B,MAAM,EAAE,CAAC,WAAW,EAAE,YAAY,EAAE,CAAC,GACpC,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,oBAAoB,EACtC,MAAM,EAAE,CAAC,WAAW,CAAC,GACpB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,MAAM,EACxB,MAAM,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC,GAC5B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,SAAS,EAC3B,MAAM,EAAE,CAAC,cAAc,CAAC,kBAAkB,EAAE,CAAC,GAC5C,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,gBAAgB,EAClC,MAAM,CAAC,EAAE,SAAS,GACjB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,SAAS,EAC3B,MAAM,EAAE,CAAC,YAAY,CAAC,GACrB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,kBAAkB,EACpC,MAAM,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,SAAS,CAAC,GAC1D,MAAM,CAAC;IACV,kBAAkB,CAAC,gBAAgB,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IAC7E,kBAAkB,CAChB,gBAAgB,EAAE,QAAQ,EAC1B,MAAM,EAAE,CAAC,UAAU,CAAC,oBAAoB,EAAE,SAAS,CAAC,GACnD,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,YAAY,EAC9B,MAAM,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC,GAC7B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,YAAY,EAC9B,MAAM,EAAE,CAAC,YAAY,CAAC,GACrB,MAAM,CAAC;IAEV,oBAAoB,CAAC,gBAAgB,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC5E,oBAAoB,CAAC,gBAAgB,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IACzE,oBAAoB,CAAC,gBAAgB,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC5E,oBAAoB,CAAC,gBAAgB,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC9E,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,oBAAoB,CAAC,gBAAgB,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC9E,oBAAoB,CAAC,gBAAgB,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC7E,oBAAoB,CAClB,gBAAgB,EAAE,oBAAoB,EACtC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IACxE,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,oBAAoB,CAClB,gBAAgB,EAAE,gBAAgB,EAClC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,oBAAoB,CAClB,gBAAgB,EAAE,kBAAkB,EACpC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC5E,oBAAoB,CAAC,gBAAgB,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC1E,oBAAoB,CAAC,gBAAgB,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC9E,oBAAoB,CAAC,gBAAgB,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;CAC/E;AAED,yBAAiB,gBAAgB,CAAC;IAChC,KAAY,UAAU,GAAG,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IACjD,KAAY,WAAW,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC5C,UAAiB,YAAY;QAC3B,OAAO,EAAE,MAAM,CAAC;KACjB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,oBAAoB,CAAC;IACpC,KAAY,UAAU,GAAG;QACvB,OAAO,EAAE,YAAY;QACrB,UAAU,EAAE,WAAW;QACvB,UAAU,EAAE,WAAW;KACxB,CAAC;IACF,KAAY,WAAW,GAAG;QACxB,OAAO,EAAE,MAAM;QACf,UAAU,EAAE,MAAM;QAClB,UAAU,EAAE,MAAM;KACnB,CAAC;IACF,UAAiB,YAAY;QAC3B,OAAO,EAAE,MAAM,CAAC;QAChB,UAAU,EAAE,MAAM,CAAC;QACnB,UAAU,EAAE,MAAM,CAAC;KACpB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,mBAAmB,CAAC;IACnC,KAAY,UAAU,GAAG;QACvB,OAAO,EAAE,YAAY;QACrB,UAAU,EAAE,WAAW;QACvB,KAAK,EAAE,MAAM;KACd,CAAC;IACF,KAAY,WAAW,GAAG;QACxB,OAAO,EAAE,MAAM;QACf,UAAU,EAAE,MAAM;QAClB,KAAK,EAAE,MAAM;KACd,CAAC;IACF,UAAiB,YAAY;QAC3B,OAAO,EAAE,MAAM,CAAC;QAChB,UAAU,EAAE,MAAM,CAAC;QACnB,KAAK,EAAE,MAAM,CAAC;KACf;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,MAAM,WAAW,cAAe,SAAQ,YAAY;IAClD,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,cAAc,CAAC;IACxD,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,uBAAuB,CAAC;IAEnC,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,QAAQ,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEpD,KAAK,EAAE,mBAAmB,CACxB;QACE,OAAO,EAAE,YAAY;QACrB,UAAU,EAAE,SAAS;QACrB,UAAU,EAAE,SAAS;QACrB,eAAe,EAAE,WAAW;KAC7B,EACD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,QAAQ,EAAE,mBAAmB,CAC3B;QACE,QAAQ,EAAE,YAAY,EAAE;QACxB,UAAU,EAAE,SAAS;QACrB,UAAU,EAAE,SAAS;QACrB,eAAe,EAAE,WAAW;KAC7B,EACD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,UAAU,EAAE,mBAAmB,CAC7B;QAAC,UAAU,EAAE,SAAS;QAAE,UAAU,EAAE,SAAS;KAAC,EAC9C;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IAEF,OAAO,EAAE,mBAAmB,CAC1B;QAAC,GAAG,EAAE,UAAU,CAAC,oBAAoB;QAAE,SAAS,EAAE,SAAS;KAAC,EAC5D;QAAC,MAAM;KAAC,EACR,YAAY,CACb,CAAC;IAEF,UAAU,EAAE,mBAAmB,CAC7B;QAAC,SAAS,EAAE,WAAW;QAAE,eAAe,EAAE,WAAW;KAAC,EACtD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,SAAS,EAAE,mBAAmB,CAC5B;QAAC,WAAW,EAAE,WAAW;QAAE,QAAQ,EAAE,YAAY,EAAE;KAAC,EACpD;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,kBAAkB,EAAE,mBAAmB,CACrC;QAAC,SAAS,EAAE,WAAW;KAAC,EACxB;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,IAAI,EAAE,mBAAmB,CACvB;QAAC,KAAK,EAAE,MAAM;QAAE,QAAQ,EAAE,WAAW;KAAC,EACtC;QAAC,MAAM;KAAC,EACR,YAAY,CACb,CAAC;IAEF,OAAO,EAAE,mBAAmB,CAC1B;QAAC,MAAM,EAAE,cAAc,CAAC,kBAAkB,EAAE;KAAC,EAC7C;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,cAAc,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAE1D,OAAO,EAAE,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAExE,gBAAgB,EAAE,mBAAmB,CACnC;QACE,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,YAAY;QACrB,IAAI,EAAE,SAAS;KAChB,EACD;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IAEF,QAAQ,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEpD,MAAM,EAAE,mBAAmB,CACzB;QAAC,GAAG,EAAE,UAAU,CAAC,oBAAoB;QAAE,SAAS,EAAE,SAAS;KAAC,EAC5D;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,UAAU,EAAE,mBAAmB,CAC7B;QAAC,UAAU,EAAE,SAAS;QAAE,UAAU,EAAE,SAAS;KAAC,EAC9C;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IAEF,UAAU,EAAE,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAE3E,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,WAAW,CACT,eAAe,EAAE,UAAU,GAC1B,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC7C,WAAW,CACT,eAAe,EAAE,OAAO,GACvB,mBAAmB,CACpB;QACE,OAAO,EAAE,YAAY;QACrB,UAAU,EAAE,SAAS;QACrB,UAAU,EAAE,SAAS;QACrB,eAAe,EAAE,WAAW;KAC7B,EACD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,UAAU,GAC1B,mBAAmB,CACpB;QACE,QAAQ,EAAE,YAAY,EAAE;QACxB,UAAU,EAAE,SAAS;QACrB,UAAU,EAAE,SAAS;QACrB,eAAe,EAAE,WAAW;KAC7B,EACD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,YAAY,GAC5B,mBAAmB,CACpB;QAAC,UAAU,EAAE,SAAS;QAAE,UAAU,EAAE,SAAS;KAAC,EAC9C;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,SAAS,GACzB,mBAAmB,CACpB;QAAC,GAAG,EAAE,UAAU,CAAC,oBAAoB;QAAE,SAAS,EAAE,SAAS;KAAC,EAC5D;QAAC,MAAM;KAAC,EACR,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,YAAY,GAC5B,mBAAmB,CACpB;QAAC,SAAS,EAAE,WAAW;QAAE,eAAe,EAAE,WAAW;KAAC,EACtD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,WAAW,GAC3B,mBAAmB,CACpB;QAAC,WAAW,EAAE,WAAW;QAAE,QAAQ,EAAE,YAAY,EAAE;KAAC,EACpD;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,oBAAoB,GACpC,mBAAmB,CAAC,CAAC,SAAS,EAAE,WAAW,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IACpE,WAAW,CACT,eAAe,EAAE,MAAM,GACtB,mBAAmB,CACpB;QAAC,KAAK,EAAE,MAAM;QAAE,QAAQ,EAAE,WAAW;KAAC,EACtC;QAAC,MAAM;KAAC,EACR,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,SAAS,GACzB,mBAAmB,CACpB;QAAC,MAAM,EAAE,cAAc,CAAC,kBAAkB,EAAE;KAAC,EAC7C;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,gBAAgB,GAChC,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC7C,WAAW,CACT,eAAe,EAAE,SAAS,GACzB,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAClE,WAAW,CACT,eAAe,EAAE,kBAAkB,GAClC,mBAAmB,CACpB;QACE,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,YAAY;QACrB,IAAI,EAAE,SAAS;KAChB,EACD;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,UAAU,GAC1B,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC7C,WAAW,CACT,eAAe,EAAE,QAAQ,GACxB,mBAAmB,CACpB;QAAC,GAAG,EAAE,UAAU,CAAC,oBAAoB;QAAE,SAAS,EAAE,SAAS;KAAC,EAC5D;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,YAAY,GAC5B,mBAAmB,CACpB;QAAC,UAAU,EAAE,SAAS;QAAE,UAAU,EAAE,SAAS;KAAC,EAC9C;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,YAAY,GAC5B,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAElE,QAAQ,CACN,GAAG,EAAE,aAAa,GACjB,kBAAkB,CACnB,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,iBAAiB,GACrB,kBAAkB,CACnB,oBAAoB,CAAC,UAAU,EAC/B,oBAAoB,CAAC,WAAW,EAChC,oBAAoB,CAAC,YAAY,CAClC,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,gBAAgB,GACpB,kBAAkB,CACnB,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;IAEF,OAAO,EAAE;QACP,oBAAoB,EAAE,kBAAkB,CACtC,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QACF,WAAW,EAAE,kBAAkB,CAC7B,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QAEF,0CAA0C,EAAE,kBAAkB,CAC5D,oBAAoB,CAAC,UAAU,EAC/B,oBAAoB,CAAC,WAAW,EAChC,oBAAoB,CAAC,YAAY,CAClC,CAAC;QACF,eAAe,EAAE,kBAAkB,CACjC,oBAAoB,CAAC,UAAU,EAC/B,oBAAoB,CAAC,WAAW,EAChC,oBAAoB,CAAC,YAAY,CAClC,CAAC;QAEF,wCAAwC,EAAE,kBAAkB,CAC1D,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;QACF,cAAc,EAAE,kBAAkB,CAChC,mBAAmB,CAAC,UAAU,EAC9B,mBAAmB,CAAC,WAAW,EAC/B,mBAAmB,CAAC,YAAY,CACjC,CAAC;KACH,CAAC;CACH"} \ No newline at end of file diff --git a/dist/types/contracts/custody/ZilliqaRecover.js b/dist/types/contracts/custody/ZilliqaRecover.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/custody/ZilliqaRecover.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/custody/index.d.ts b/dist/types/contracts/custody/index.d.ts deleted file mode 100644 index 551ba93e..00000000 --- a/dist/types/contracts/custody/index.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export type { ENSCustody } from "./ENSCustody"; -export type { IENSCustody } from "./IENSCustody"; -export type { ZilliqaRecover } from "./ZilliqaRecover"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/custody/index.d.ts.map b/dist/types/contracts/custody/index.d.ts.map deleted file mode 100644 index 5fd93641..00000000 --- a/dist/types/contracts/custody/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../types/contracts/custody/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC"} \ No newline at end of file diff --git a/dist/types/contracts/custody/index.js b/dist/types/contracts/custody/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/custody/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/history/IUNSRegistryV07.d.ts b/dist/types/contracts/history/IUNSRegistryV07.d.ts deleted file mode 100644 index abbe43c0..00000000 --- a/dist/types/contracts/history/IUNSRegistryV07.d.ts +++ /dev/null @@ -1,733 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; -export interface IUNSRegistryV07Interface extends Interface { - getFunction(nameOrSignature: "addProxyReader" | "approve" | "balanceOf" | "burn" | "deposit" | "depositToPolygon" | "exists" | "get" | "getApproved" | "getByHash" | "getMany" | "getManyByHash" | "isApprovedForAll" | "isApprovedOrOwner" | "mint(address,uint256)" | "mint(address,uint256,bytes)" | "mintTLD" | "mintWithRecords" | "name" | "namehash" | "onERC721Received" | "ownerOf" | "reconfigure" | "removeReverse" | "reset" | "resolverOf" | "reverseNameOf" | "reverseOf" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "set" | "setApprovalForAll" | "setByHash" | "setMany" | "setManyByHash" | "setOwner" | "setReverse" | "setTokenURIPrefix" | "supportsInterface" | "symbol" | "tokenURI" | "transferFrom" | "unlockWithRecords" | "withdrawFromPolygon"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "AdminChanged" | "Approval" | "ApprovalForAll" | "NewKey" | "NewURI" | "NewURIPrefix" | "RemoveReverse" | "ResetRecords" | "Set" | "SetReverse" | "Transfer" | "Upgraded"): EventFragment; - encodeFunctionData(functionFragment: "addProxyReader", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "burn", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "deposit", values: [AddressLike, BytesLike]): string; - encodeFunctionData(functionFragment: "depositToPolygon", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "exists", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "get", values: [string, BigNumberish]): string; - encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "getByHash", values: [BigNumberish, BigNumberish]): string; - encodeFunctionData(functionFragment: "getMany", values: [string[], BigNumberish]): string; - encodeFunctionData(functionFragment: "getManyByHash", values: [BigNumberish[], BigNumberish]): string; - encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "isApprovedOrOwner", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "mint(address,uint256)", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "mint(address,uint256,bytes)", values: [AddressLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "mintTLD", values: [BigNumberish, string]): string; - encodeFunctionData(functionFragment: "mintWithRecords", values: [AddressLike, string[], string[], string[], boolean]): string; - encodeFunctionData(functionFragment: "name", values?: undefined): string; - encodeFunctionData(functionFragment: "namehash", values: [string[]]): string; - encodeFunctionData(functionFragment: "onERC721Received", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "reconfigure", values: [string[], string[], BigNumberish]): string; - encodeFunctionData(functionFragment: "removeReverse", values?: undefined): string; - encodeFunctionData(functionFragment: "reset", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "resolverOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "reverseNameOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "reverseOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "set", values: [string, string, BigNumberish]): string; - encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; - encodeFunctionData(functionFragment: "setByHash", values: [BigNumberish, string, BigNumberish]): string; - encodeFunctionData(functionFragment: "setMany", values: [string[], string[], BigNumberish]): string; - encodeFunctionData(functionFragment: "setManyByHash", values: [BigNumberish[], string[], BigNumberish]): string; - encodeFunctionData(functionFragment: "setOwner", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "setReverse", values: [string[]]): string; - encodeFunctionData(functionFragment: "setTokenURIPrefix", values: [string]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "symbol", values?: undefined): string; - encodeFunctionData(functionFragment: "tokenURI", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "unlockWithRecords", values: [AddressLike, string[], string[], string[], boolean]): string; - encodeFunctionData(functionFragment: "withdrawFromPolygon", values: [BytesLike, BigNumberish, string[], string[]]): string; - decodeFunctionResult(functionFragment: "addProxyReader", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "burn", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "deposit", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "depositToPolygon", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "exists", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "get", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getByHash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getMany", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getManyByHash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedOrOwner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "mint(address,uint256)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "mint(address,uint256,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "mintTLD", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "mintWithRecords", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "namehash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "onERC721Received", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "reconfigure", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "removeReverse", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "reset", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "resolverOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "reverseNameOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "reverseOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "set", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setByHash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setMany", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setManyByHash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setOwner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setReverse", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setTokenURIPrefix", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "tokenURI", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "unlockWithRecords", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "withdrawFromPolygon", data: BytesLike): Result; -} -export declare namespace AdminChangedEvent { - type InputTuple = [previousAdmin: AddressLike, newAdmin: AddressLike]; - type OutputTuple = [previousAdmin: string, newAdmin: string]; - interface OutputObject { - previousAdmin: string; - newAdmin: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ApprovalEvent { - type InputTuple = [ - owner: AddressLike, - approved: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [owner: string, approved: string, tokenId: bigint]; - interface OutputObject { - owner: string; - approved: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ApprovalForAllEvent { - type InputTuple = [ - owner: AddressLike, - operator: AddressLike, - approved: boolean - ]; - type OutputTuple = [ - owner: string, - operator: string, - approved: boolean - ]; - interface OutputObject { - owner: string; - operator: string; - approved: boolean; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NewKeyEvent { - type InputTuple = [ - tokenId: BigNumberish, - keyIndex: string, - key: string - ]; - type OutputTuple = [tokenId: bigint, keyIndex: string, key: string]; - interface OutputObject { - tokenId: bigint; - keyIndex: string; - key: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NewURIEvent { - type InputTuple = [tokenId: BigNumberish, uri: string]; - type OutputTuple = [tokenId: bigint, uri: string]; - interface OutputObject { - tokenId: bigint; - uri: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NewURIPrefixEvent { - type InputTuple = [prefix: string]; - type OutputTuple = [prefix: string]; - interface OutputObject { - prefix: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RemoveReverseEvent { - type InputTuple = [addr: AddressLike]; - type OutputTuple = [addr: string]; - interface OutputObject { - addr: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ResetRecordsEvent { - type InputTuple = [tokenId: BigNumberish]; - type OutputTuple = [tokenId: bigint]; - interface OutputObject { - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace SetEvent { - type InputTuple = [ - tokenId: BigNumberish, - keyIndex: string, - valueIndex: string, - key: string, - value: string - ]; - type OutputTuple = [ - tokenId: bigint, - keyIndex: string, - valueIndex: string, - key: string, - value: string - ]; - interface OutputObject { - tokenId: bigint; - keyIndex: string; - valueIndex: string; - key: string; - value: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace SetReverseEvent { - type InputTuple = [addr: AddressLike, tokenId: BigNumberish]; - type OutputTuple = [addr: string, tokenId: bigint]; - interface OutputObject { - addr: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferEvent { - type InputTuple = [ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [from: string, to: string, tokenId: bigint]; - interface OutputObject { - from: string; - to: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace UpgradedEvent { - type InputTuple = [implementation: AddressLike]; - type OutputTuple = [implementation: string]; - interface OutputObject { - implementation: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface IUNSRegistryV07 extends BaseContract { - connect(runner?: ContractRunner | null): IUNSRegistryV07; - waitForDeployment(): Promise; - interface: IUNSRegistryV07Interface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - addProxyReader: TypedContractMethod<[ - addr: AddressLike - ], [ - void - ], "nonpayable">; - approve: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; - burn: TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; - deposit: TypedContractMethod<[ - user: AddressLike, - depositData: BytesLike - ], [ - void - ], "nonpayable">; - depositToPolygon: TypedContractMethod<[ - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - exists: TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; - get: TypedContractMethod<[ - key: string, - tokenId: BigNumberish - ], [ - string - ], "view">; - getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getByHash: TypedContractMethod<[ - keyHash: BigNumberish, - tokenId: BigNumberish - ], [ - [string, string] & { - key: string; - value: string; - } - ], "view">; - getMany: TypedContractMethod<[ - keys: string[], - tokenId: BigNumberish - ], [ - string[] - ], "view">; - getManyByHash: TypedContractMethod<[ - keyHashes: BigNumberish[], - tokenId: BigNumberish - ], [ - [string[], string[]] & { - keys: string[]; - values: string[]; - } - ], "view">; - isApprovedForAll: TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - isApprovedOrOwner: TypedContractMethod<[ - spender: AddressLike, - tokenId: BigNumberish - ], [ - boolean - ], "view">; - "mint(address,uint256)": TypedContractMethod<[ - user: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - "mint(address,uint256,bytes)": TypedContractMethod<[ - user: AddressLike, - tokenId: BigNumberish, - metaData: BytesLike - ], [ - void - ], "nonpayable">; - mintTLD: TypedContractMethod<[ - tokenId: BigNumberish, - uri: string - ], [ - void - ], "nonpayable">; - mintWithRecords: TypedContractMethod<[ - to: AddressLike, - labels: string[], - keys: string[], - values: string[], - withReverse: boolean - ], [ - void - ], "nonpayable">; - name: TypedContractMethod<[], [string], "view">; - namehash: TypedContractMethod<[labels: string[]], [bigint], "view">; - onERC721Received: TypedContractMethod<[ - operator: AddressLike, - from: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - string - ], "nonpayable">; - ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - reconfigure: TypedContractMethod<[ - keys: string[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - removeReverse: TypedContractMethod<[], [void], "nonpayable">; - reset: TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; - resolverOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - reverseNameOf: TypedContractMethod<[addr: AddressLike], [string], "view">; - reverseOf: TypedContractMethod<[addr: AddressLike], [bigint], "view">; - "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - set: TypedContractMethod<[ - key: string, - value: string, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - setApprovalForAll: TypedContractMethod<[ - operator: AddressLike, - _approved: boolean - ], [ - void - ], "nonpayable">; - setByHash: TypedContractMethod<[ - keyHash: BigNumberish, - value: string, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - setMany: TypedContractMethod<[ - keys: string[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - setManyByHash: TypedContractMethod<[ - keyHashes: BigNumberish[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - setOwner: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - setReverse: TypedContractMethod<[labels: string[]], [void], "nonpayable">; - setTokenURIPrefix: TypedContractMethod<[ - prefix: string - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - symbol: TypedContractMethod<[], [string], "view">; - tokenURI: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - transferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - unlockWithRecords: TypedContractMethod<[ - to: AddressLike, - labels: string[], - keys: string[], - values: string[], - withReverse: boolean - ], [ - void - ], "nonpayable">; - withdrawFromPolygon: TypedContractMethod<[ - inputData: BytesLike, - tokenId: BigNumberish, - keys: string[], - values: string[] - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "addProxyReader"): TypedContractMethod<[addr: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "approve"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; - getFunction(nameOrSignature: "burn"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; - getFunction(nameOrSignature: "deposit"): TypedContractMethod<[ - user: AddressLike, - depositData: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "depositToPolygon"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; - getFunction(nameOrSignature: "exists"): TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; - getFunction(nameOrSignature: "get"): TypedContractMethod<[ - key: string, - tokenId: BigNumberish - ], [ - string - ], "view">; - getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "getByHash"): TypedContractMethod<[ - keyHash: BigNumberish, - tokenId: BigNumberish - ], [ - [string, string] & { - key: string; - value: string; - } - ], "view">; - getFunction(nameOrSignature: "getMany"): TypedContractMethod<[ - keys: string[], - tokenId: BigNumberish - ], [ - string[] - ], "view">; - getFunction(nameOrSignature: "getManyByHash"): TypedContractMethod<[ - keyHashes: BigNumberish[], - tokenId: BigNumberish - ], [ - [string[], string[]] & { - keys: string[]; - values: string[]; - } - ], "view">; - getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "isApprovedOrOwner"): TypedContractMethod<[ - spender: AddressLike, - tokenId: BigNumberish - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "mint(address,uint256)"): TypedContractMethod<[ - user: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "mint(address,uint256,bytes)"): TypedContractMethod<[ - user: AddressLike, - tokenId: BigNumberish, - metaData: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "mintTLD"): TypedContractMethod<[ - tokenId: BigNumberish, - uri: string - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "mintWithRecords"): TypedContractMethod<[ - to: AddressLike, - labels: string[], - keys: string[], - values: string[], - withReverse: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "namehash"): TypedContractMethod<[labels: string[]], [bigint], "view">; - getFunction(nameOrSignature: "onERC721Received"): TypedContractMethod<[ - operator: AddressLike, - from: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - string - ], "nonpayable">; - getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "reconfigure"): TypedContractMethod<[ - keys: string[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "removeReverse"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "reset"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; - getFunction(nameOrSignature: "resolverOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "reverseNameOf"): TypedContractMethod<[addr: AddressLike], [string], "view">; - getFunction(nameOrSignature: "reverseOf"): TypedContractMethod<[addr: AddressLike], [bigint], "view">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "set"): TypedContractMethod<[ - key: string, - value: string, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ - operator: AddressLike, - _approved: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setByHash"): TypedContractMethod<[ - keyHash: BigNumberish, - value: string, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setMany"): TypedContractMethod<[ - keys: string[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setManyByHash"): TypedContractMethod<[ - keyHashes: BigNumberish[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setOwner"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setReverse"): TypedContractMethod<[labels: string[]], [void], "nonpayable">; - getFunction(nameOrSignature: "setTokenURIPrefix"): TypedContractMethod<[prefix: string], [void], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "symbol"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "tokenURI"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "unlockWithRecords"): TypedContractMethod<[ - to: AddressLike, - labels: string[], - keys: string[], - values: string[], - withReverse: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "withdrawFromPolygon"): TypedContractMethod<[ - inputData: BytesLike, - tokenId: BigNumberish, - keys: string[], - values: string[] - ], [ - void - ], "nonpayable">; - getEvent(key: "AdminChanged"): TypedContractEvent; - getEvent(key: "Approval"): TypedContractEvent; - getEvent(key: "ApprovalForAll"): TypedContractEvent; - getEvent(key: "NewKey"): TypedContractEvent; - getEvent(key: "NewURI"): TypedContractEvent; - getEvent(key: "NewURIPrefix"): TypedContractEvent; - getEvent(key: "RemoveReverse"): TypedContractEvent; - getEvent(key: "ResetRecords"): TypedContractEvent; - getEvent(key: "Set"): TypedContractEvent; - getEvent(key: "SetReverse"): TypedContractEvent; - getEvent(key: "Transfer"): TypedContractEvent; - getEvent(key: "Upgraded"): TypedContractEvent; - filters: { - "AdminChanged(address,address)": TypedContractEvent; - AdminChanged: TypedContractEvent; - "Approval(address,address,uint256)": TypedContractEvent; - Approval: TypedContractEvent; - "ApprovalForAll(address,address,bool)": TypedContractEvent; - ApprovalForAll: TypedContractEvent; - "NewKey(uint256,string,string)": TypedContractEvent; - NewKey: TypedContractEvent; - "NewURI(uint256,string)": TypedContractEvent; - NewURI: TypedContractEvent; - "NewURIPrefix(string)": TypedContractEvent; - NewURIPrefix: TypedContractEvent; - "RemoveReverse(address)": TypedContractEvent; - RemoveReverse: TypedContractEvent; - "ResetRecords(uint256)": TypedContractEvent; - ResetRecords: TypedContractEvent; - "Set(uint256,string,string,string,string)": TypedContractEvent; - Set: TypedContractEvent; - "SetReverse(address,uint256)": TypedContractEvent; - SetReverse: TypedContractEvent; - "Transfer(address,address,uint256)": TypedContractEvent; - Transfer: TypedContractEvent; - "Upgraded(address)": TypedContractEvent; - Upgraded: TypedContractEvent; - }; -} -//# sourceMappingURL=IUNSRegistryV07.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/history/IUNSRegistryV07.d.ts.map b/dist/types/contracts/history/IUNSRegistryV07.d.ts.map deleted file mode 100644 index 7a4fbff6..00000000 --- a/dist/types/contracts/history/IUNSRegistryV07.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IUNSRegistryV07.d.ts","sourceRoot":"","sources":["../../../../types/contracts/history/IUNSRegistryV07.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/history/IUNSRegistryV07.js b/dist/types/contracts/history/IUNSRegistryV07.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/history/IUNSRegistryV07.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/history/ProxyReaderV04.d.ts b/dist/types/contracts/history/ProxyReaderV04.d.ts deleted file mode 100644 index 8c2399bf..00000000 --- a/dist/types/contracts/history/ProxyReaderV04.d.ts +++ /dev/null @@ -1,344 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; -export interface ProxyReaderV04Interface extends Interface { - getFunction(nameOrSignature: "NAME" | "VERSION" | "balanceOf" | "exists" | "get" | "getApproved" | "getByHash" | "getData" | "getDataByHash" | "getDataByHashForMany" | "getDataForMany" | "getMany" | "getManyByHash" | "initialize" | "isApprovedForAll" | "isApprovedOrOwner" | "multicall" | "namehash" | "ownerOf" | "ownerOfForMany" | "registryOf" | "resolverOf" | "reverseNameOf" | "reverseOf" | "supportsInterface" | "tokenURI"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Initialized"): EventFragment; - encodeFunctionData(functionFragment: "NAME", values?: undefined): string; - encodeFunctionData(functionFragment: "VERSION", values?: undefined): string; - encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "exists", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "get", values: [string, BigNumberish]): string; - encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "getByHash", values: [BigNumberish, BigNumberish]): string; - encodeFunctionData(functionFragment: "getData", values: [string[], BigNumberish]): string; - encodeFunctionData(functionFragment: "getDataByHash", values: [BigNumberish[], BigNumberish]): string; - encodeFunctionData(functionFragment: "getDataByHashForMany", values: [BigNumberish[], BigNumberish[]]): string; - encodeFunctionData(functionFragment: "getDataForMany", values: [string[], BigNumberish[]]): string; - encodeFunctionData(functionFragment: "getMany", values: [string[], BigNumberish]): string; - encodeFunctionData(functionFragment: "getManyByHash", values: [BigNumberish[], BigNumberish]): string; - encodeFunctionData(functionFragment: "initialize", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "isApprovedOrOwner", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "multicall", values: [BytesLike[]]): string; - encodeFunctionData(functionFragment: "namehash", values: [string[]]): string; - encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "ownerOfForMany", values: [BigNumberish[]]): string; - encodeFunctionData(functionFragment: "registryOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "resolverOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "reverseNameOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "reverseOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "tokenURI", values: [BigNumberish]): string; - decodeFunctionResult(functionFragment: "NAME", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "VERSION", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "exists", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "get", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getByHash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getData", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getDataByHash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getDataByHashForMany", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getDataForMany", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getMany", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getManyByHash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedOrOwner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "multicall", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "namehash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ownerOfForMany", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "registryOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "resolverOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "reverseNameOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "reverseOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "tokenURI", data: BytesLike): Result; -} -export declare namespace InitializedEvent { - type InputTuple = [version: BigNumberish]; - type OutputTuple = [version: bigint]; - interface OutputObject { - version: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface ProxyReaderV04 extends BaseContract { - connect(runner?: ContractRunner | null): ProxyReaderV04; - waitForDeployment(): Promise; - interface: ProxyReaderV04Interface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - NAME: TypedContractMethod<[], [string], "view">; - VERSION: TypedContractMethod<[], [string], "view">; - balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; - exists: TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; - get: TypedContractMethod<[ - key: string, - tokenId: BigNumberish - ], [ - string - ], "view">; - getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getByHash: TypedContractMethod<[ - keyHash: BigNumberish, - tokenId: BigNumberish - ], [ - [string, string] & { - key: string; - value: string; - } - ], "view">; - getData: TypedContractMethod<[ - keys: string[], - tokenId: BigNumberish - ], [ - [ - string, - string, - string[] - ] & { - resolver: string; - owner: string; - values: string[]; - } - ], "view">; - getDataByHash: TypedContractMethod<[ - keyHashes: BigNumberish[], - tokenId: BigNumberish - ], [ - [ - string, - string, - string[], - string[] - ] & { - resolver: string; - owner: string; - keys: string[]; - values: string[]; - } - ], "view">; - getDataByHashForMany: TypedContractMethod<[ - keyHashes: BigNumberish[], - tokenIds: BigNumberish[] - ], [ - [ - string[], - string[], - string[][], - string[][] - ] & { - resolvers: string[]; - owners: string[]; - keys: string[][]; - values: string[][]; - } - ], "view">; - getDataForMany: TypedContractMethod<[ - keys: string[], - tokenIds: BigNumberish[] - ], [ - [ - string[], - string[], - string[][] - ] & { - resolvers: string[]; - owners: string[]; - values: string[][]; - } - ], "view">; - getMany: TypedContractMethod<[ - keys: string[], - tokenId: BigNumberish - ], [ - string[] - ], "view">; - getManyByHash: TypedContractMethod<[ - keyHashes: BigNumberish[], - tokenId: BigNumberish - ], [ - [string[], string[]] & { - keys: string[]; - values: string[]; - } - ], "view">; - initialize: TypedContractMethod<[ - unsRegistry: AddressLike, - cnsRegistry: AddressLike - ], [ - void - ], "nonpayable">; - isApprovedForAll: TypedContractMethod<[ - arg0: AddressLike, - arg1: AddressLike - ], [ - boolean - ], "view">; - isApprovedOrOwner: TypedContractMethod<[ - spender: AddressLike, - tokenId: BigNumberish - ], [ - boolean - ], "view">; - multicall: TypedContractMethod<[data: BytesLike[]], [string[]], "nonpayable">; - namehash: TypedContractMethod<[labels: string[]], [bigint], "view">; - ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - ownerOfForMany: TypedContractMethod<[ - tokenIds: BigNumberish[] - ], [ - string[] - ], "view">; - registryOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - resolverOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - reverseNameOf: TypedContractMethod<[addr: AddressLike], [string], "view">; - reverseOf: TypedContractMethod<[addr: AddressLike], [bigint], "view">; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - tokenURI: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "NAME"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "VERSION"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; - getFunction(nameOrSignature: "exists"): TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; - getFunction(nameOrSignature: "get"): TypedContractMethod<[ - key: string, - tokenId: BigNumberish - ], [ - string - ], "view">; - getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "getByHash"): TypedContractMethod<[ - keyHash: BigNumberish, - tokenId: BigNumberish - ], [ - [string, string] & { - key: string; - value: string; - } - ], "view">; - getFunction(nameOrSignature: "getData"): TypedContractMethod<[ - keys: string[], - tokenId: BigNumberish - ], [ - [ - string, - string, - string[] - ] & { - resolver: string; - owner: string; - values: string[]; - } - ], "view">; - getFunction(nameOrSignature: "getDataByHash"): TypedContractMethod<[ - keyHashes: BigNumberish[], - tokenId: BigNumberish - ], [ - [ - string, - string, - string[], - string[] - ] & { - resolver: string; - owner: string; - keys: string[]; - values: string[]; - } - ], "view">; - getFunction(nameOrSignature: "getDataByHashForMany"): TypedContractMethod<[ - keyHashes: BigNumberish[], - tokenIds: BigNumberish[] - ], [ - [ - string[], - string[], - string[][], - string[][] - ] & { - resolvers: string[]; - owners: string[]; - keys: string[][]; - values: string[][]; - } - ], "view">; - getFunction(nameOrSignature: "getDataForMany"): TypedContractMethod<[ - keys: string[], - tokenIds: BigNumberish[] - ], [ - [ - string[], - string[], - string[][] - ] & { - resolvers: string[]; - owners: string[]; - values: string[][]; - } - ], "view">; - getFunction(nameOrSignature: "getMany"): TypedContractMethod<[ - keys: string[], - tokenId: BigNumberish - ], [ - string[] - ], "view">; - getFunction(nameOrSignature: "getManyByHash"): TypedContractMethod<[ - keyHashes: BigNumberish[], - tokenId: BigNumberish - ], [ - [string[], string[]] & { - keys: string[]; - values: string[]; - } - ], "view">; - getFunction(nameOrSignature: "initialize"): TypedContractMethod<[ - unsRegistry: AddressLike, - cnsRegistry: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ - arg0: AddressLike, - arg1: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "isApprovedOrOwner"): TypedContractMethod<[ - spender: AddressLike, - tokenId: BigNumberish - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "multicall"): TypedContractMethod<[data: BytesLike[]], [string[]], "nonpayable">; - getFunction(nameOrSignature: "namehash"): TypedContractMethod<[labels: string[]], [bigint], "view">; - getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "ownerOfForMany"): TypedContractMethod<[tokenIds: BigNumberish[]], [string[]], "view">; - getFunction(nameOrSignature: "registryOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "resolverOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "reverseNameOf"): TypedContractMethod<[addr: AddressLike], [string], "view">; - getFunction(nameOrSignature: "reverseOf"): TypedContractMethod<[addr: AddressLike], [bigint], "view">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "tokenURI"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getEvent(key: "Initialized"): TypedContractEvent; - filters: { - "Initialized(uint8)": TypedContractEvent; - Initialized: TypedContractEvent; - }; -} -//# sourceMappingURL=ProxyReaderV04.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/history/ProxyReaderV04.d.ts.map b/dist/types/contracts/history/ProxyReaderV04.d.ts.map deleted file mode 100644 index 2e5ac75a..00000000 --- a/dist/types/contracts/history/ProxyReaderV04.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ProxyReaderV04.d.ts","sourceRoot":"","sources":["../../../../types/contracts/history/ProxyReaderV04.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,aAAa,EACb,WAAW,EACX,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,mBAAmB,EACnB,aAAa,EACb,mBAAmB,EACpB,MAAM,cAAc,CAAC;AAEtB,MAAM,WAAW,uBAAwB,SAAQ,SAAS;IACxD,WAAW,CACT,eAAe,EACX,MAAM,GACN,SAAS,GACT,WAAW,GACX,QAAQ,GACR,KAAK,GACL,aAAa,GACb,WAAW,GACX,SAAS,GACT,eAAe,GACf,sBAAsB,GACtB,gBAAgB,GAChB,SAAS,GACT,eAAe,GACf,YAAY,GACZ,kBAAkB,GAClB,mBAAmB,GACnB,WAAW,GACX,UAAU,GACV,SAAS,GACT,gBAAgB,GAChB,YAAY,GACZ,YAAY,GACZ,eAAe,GACf,WAAW,GACX,mBAAmB,GACnB,UAAU,GACb,gBAAgB,CAAC;IAEpB,QAAQ,CAAC,sBAAsB,EAAE,aAAa,GAAG,aAAa,CAAC;IAE/D,kBAAkB,CAAC,gBAAgB,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IACzE,kBAAkB,CAAC,gBAAgB,EAAE,SAAS,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IAC5E,kBAAkB,CAChB,gBAAgB,EAAE,WAAW,EAC7B,MAAM,EAAE,CAAC,WAAW,CAAC,GACpB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,QAAQ,EAC1B,MAAM,EAAE,CAAC,YAAY,CAAC,GACrB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,KAAK,EACvB,MAAM,EAAE,CAAC,MAAM,EAAE,YAAY,CAAC,GAC7B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,aAAa,EAC/B,MAAM,EAAE,CAAC,YAAY,CAAC,GACrB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,WAAW,EAC7B,MAAM,EAAE,CAAC,YAAY,EAAE,YAAY,CAAC,GACnC,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,SAAS,EAC3B,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE,YAAY,CAAC,GAC/B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,eAAe,EACjC,MAAM,EAAE,CAAC,YAAY,EAAE,EAAE,YAAY,CAAC,GACrC,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,sBAAsB,EACxC,MAAM,EAAE,CAAC,YAAY,EAAE,EAAE,YAAY,EAAE,CAAC,GACvC,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,gBAAgB,EAClC,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE,YAAY,EAAE,CAAC,GACjC,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,SAAS,EAC3B,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE,YAAY,CAAC,GAC/B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,eAAe,EACjC,MAAM,EAAE,CAAC,YAAY,EAAE,EAAE,YAAY,CAAC,GACrC,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,YAAY,EAC9B,MAAM,EAAE,CAAC,WAAW,EAAE,WAAW,CAAC,GACjC,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,kBAAkB,EACpC,MAAM,EAAE,CAAC,WAAW,EAAE,WAAW,CAAC,GACjC,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,mBAAmB,EACrC,MAAM,EAAE,CAAC,WAAW,EAAE,YAAY,CAAC,GAClC,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,WAAW,EAC7B,MAAM,EAAE,CAAC,SAAS,EAAE,CAAC,GACpB,MAAM,CAAC;IACV,kBAAkB,CAAC,gBAAgB,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,MAAM,EAAE,CAAC,GAAG,MAAM,CAAC;IAC7E,kBAAkB,CAChB,gBAAgB,EAAE,SAAS,EAC3B,MAAM,EAAE,CAAC,YAAY,CAAC,GACrB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,gBAAgB,EAClC,MAAM,EAAE,CAAC,YAAY,EAAE,CAAC,GACvB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,YAAY,EAC9B,MAAM,EAAE,CAAC,YAAY,CAAC,GACrB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,YAAY,EAC9B,MAAM,EAAE,CAAC,YAAY,CAAC,GACrB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,eAAe,EACjC,MAAM,EAAE,CAAC,WAAW,CAAC,GACpB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,WAAW,EAC7B,MAAM,EAAE,CAAC,WAAW,CAAC,GACpB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,mBAAmB,EACrC,MAAM,EAAE,CAAC,SAAS,CAAC,GAClB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,UAAU,EAC5B,MAAM,EAAE,CAAC,YAAY,CAAC,GACrB,MAAM,CAAC;IAEV,oBAAoB,CAAC,gBAAgB,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IACxE,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,oBAAoB,CAAC,gBAAgB,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC7E,oBAAoB,CAAC,gBAAgB,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC1E,oBAAoB,CAAC,gBAAgB,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IACvE,oBAAoB,CAClB,gBAAgB,EAAE,aAAa,EAC/B,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC7E,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,oBAAoB,CAClB,gBAAgB,EAAE,eAAe,EACjC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,sBAAsB,EACxC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,gBAAgB,EAClC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,oBAAoB,CAClB,gBAAgB,EAAE,eAAe,EACjC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC9E,oBAAoB,CAClB,gBAAgB,EAAE,kBAAkB,EACpC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,mBAAmB,EACrC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC7E,oBAAoB,CAAC,gBAAgB,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC5E,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,oBAAoB,CAClB,gBAAgB,EAAE,gBAAgB,EAClC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC9E,oBAAoB,CAAC,gBAAgB,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC9E,oBAAoB,CAClB,gBAAgB,EAAE,eAAe,EACjC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC7E,oBAAoB,CAClB,gBAAgB,EAAE,mBAAmB,EACrC,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAAC,gBAAgB,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;CAC7E;AAED,yBAAiB,gBAAgB,CAAC;IAChC,KAAY,UAAU,GAAG,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IACjD,KAAY,WAAW,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC5C,UAAiB,YAAY;QAC3B,OAAO,EAAE,MAAM,CAAC;KACjB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,MAAM,WAAW,cAAe,SAAQ,YAAY;IAClD,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,cAAc,CAAC;IACxD,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,uBAAuB,CAAC;IAEnC,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEhD,OAAO,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEnD,SAAS,EAAE,mBAAmB,CAAC,CAAC,KAAK,EAAE,WAAW,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEvE,MAAM,EAAE,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IAExE,GAAG,EAAE,mBAAmB,CACtB;QAAC,GAAG,EAAE,MAAM;QAAE,OAAO,EAAE,YAAY;KAAC,EACpC;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IAEF,WAAW,EAAE,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAE5E,SAAS,EAAE,mBAAmB,CAC5B;QAAC,OAAO,EAAE,YAAY;QAAE,OAAO,EAAE,YAAY;KAAC,EAC9C;QAAC,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG;YAAE,GAAG,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAA;SAAE;KAAC,EACnD,MAAM,CACP,CAAC;IAEF,OAAO,EAAE,mBAAmB,CAC1B;QAAC,IAAI,EAAE,MAAM,EAAE;QAAE,OAAO,EAAE,YAAY;KAAC,EACvC;QACE;YAAC,MAAM;YAAE,MAAM;YAAE,MAAM,EAAE;SAAC,GAAG;YAC3B,QAAQ,EAAE,MAAM,CAAC;YACjB,KAAK,EAAE,MAAM,CAAC;YACd,MAAM,EAAE,MAAM,EAAE,CAAC;SAClB;KACF,EACD,MAAM,CACP,CAAC;IAEF,aAAa,EAAE,mBAAmB,CAChC;QAAC,SAAS,EAAE,YAAY,EAAE;QAAE,OAAO,EAAE,YAAY;KAAC,EAClD;QACE;YAAC,MAAM;YAAE,MAAM;YAAE,MAAM,EAAE;YAAE,MAAM,EAAE;SAAC,GAAG;YACrC,QAAQ,EAAE,MAAM,CAAC;YACjB,KAAK,EAAE,MAAM,CAAC;YACd,IAAI,EAAE,MAAM,EAAE,CAAC;YACf,MAAM,EAAE,MAAM,EAAE,CAAC;SAClB;KACF,EACD,MAAM,CACP,CAAC;IAEF,oBAAoB,EAAE,mBAAmB,CACvC;QAAC,SAAS,EAAE,YAAY,EAAE;QAAE,QAAQ,EAAE,YAAY,EAAE;KAAC,EACrD;QACE;YAAC,MAAM,EAAE;YAAE,MAAM,EAAE;YAAE,MAAM,EAAE,EAAE;YAAE,MAAM,EAAE,EAAE;SAAC,GAAG;YAC7C,SAAS,EAAE,MAAM,EAAE,CAAC;YACpB,MAAM,EAAE,MAAM,EAAE,CAAC;YACjB,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC;YACjB,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC;SACpB;KACF,EACD,MAAM,CACP,CAAC;IAEF,cAAc,EAAE,mBAAmB,CACjC;QAAC,IAAI,EAAE,MAAM,EAAE;QAAE,QAAQ,EAAE,YAAY,EAAE;KAAC,EAC1C;QACE;YAAC,MAAM,EAAE;YAAE,MAAM,EAAE;YAAE,MAAM,EAAE,EAAE;SAAC,GAAG;YACjC,SAAS,EAAE,MAAM,EAAE,CAAC;YACpB,MAAM,EAAE,MAAM,EAAE,CAAC;YACjB,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC;SACpB;KACF,EACD,MAAM,CACP,CAAC;IAEF,OAAO,EAAE,mBAAmB,CAC1B;QAAC,IAAI,EAAE,MAAM,EAAE;QAAE,OAAO,EAAE,YAAY;KAAC,EACvC;QAAC,MAAM,EAAE;KAAC,EACV,MAAM,CACP,CAAC;IAEF,aAAa,EAAE,mBAAmB,CAChC;QAAC,SAAS,EAAE,YAAY,EAAE;QAAE,OAAO,EAAE,YAAY;KAAC,EAClD;QAAC,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,GAAG;YAAE,IAAI,EAAE,MAAM,EAAE,CAAC;YAAC,MAAM,EAAE,MAAM,EAAE,CAAA;SAAE;KAAC,EAC7D,MAAM,CACP,CAAC;IAEF,UAAU,EAAE,mBAAmB,CAC7B;QAAC,WAAW,EAAE,WAAW;QAAE,WAAW,EAAE,WAAW;KAAC,EACpD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,gBAAgB,EAAE,mBAAmB,CACnC;QAAC,IAAI,EAAE,WAAW;QAAE,IAAI,EAAE,WAAW;KAAC,EACtC;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,iBAAiB,EAAE,mBAAmB,CACpC;QAAC,OAAO,EAAE,WAAW;QAAE,OAAO,EAAE,YAAY;KAAC,EAC7C;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,SAAS,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,EAAE,YAAY,CAAC,CAAC;IAE9E,QAAQ,EAAE,mBAAmB,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEpE,OAAO,EAAE,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAExE,cAAc,EAAE,mBAAmB,CACjC;QAAC,QAAQ,EAAE,YAAY,EAAE;KAAC,EAC1B;QAAC,MAAM,EAAE;KAAC,EACV,MAAM,CACP,CAAC;IAEF,UAAU,EAAE,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAE3E,UAAU,EAAE,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAE3E,aAAa,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAE1E,SAAS,EAAE,mBAAmB,CAAC,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEtE,iBAAiB,EAAE,mBAAmB,CACpC;QAAC,WAAW,EAAE,SAAS;KAAC,EACxB;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,QAAQ,EAAE,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAEzE,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,WAAW,CACT,eAAe,EAAE,MAAM,GACtB,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC7C,WAAW,CACT,eAAe,EAAE,SAAS,GACzB,mBAAmB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC7C,WAAW,CACT,eAAe,EAAE,WAAW,GAC3B,mBAAmB,CAAC,CAAC,KAAK,EAAE,WAAW,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC/D,WAAW,CACT,eAAe,EAAE,QAAQ,GACxB,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IACnE,WAAW,CACT,eAAe,EAAE,KAAK,GACrB,mBAAmB,CACpB;QAAC,GAAG,EAAE,MAAM;QAAE,OAAO,EAAE,YAAY;KAAC,EACpC;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,aAAa,GAC7B,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAClE,WAAW,CACT,eAAe,EAAE,WAAW,GAC3B,mBAAmB,CACpB;QAAC,OAAO,EAAE,YAAY;QAAE,OAAO,EAAE,YAAY;KAAC,EAC9C;QAAC,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG;YAAE,GAAG,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAA;SAAE;KAAC,EACnD,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,SAAS,GACzB,mBAAmB,CACpB;QAAC,IAAI,EAAE,MAAM,EAAE;QAAE,OAAO,EAAE,YAAY;KAAC,EACvC;QACE;YAAC,MAAM;YAAE,MAAM;YAAE,MAAM,EAAE;SAAC,GAAG;YAC3B,QAAQ,EAAE,MAAM,CAAC;YACjB,KAAK,EAAE,MAAM,CAAC;YACd,MAAM,EAAE,MAAM,EAAE,CAAC;SAClB;KACF,EACD,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,eAAe,GAC/B,mBAAmB,CACpB;QAAC,SAAS,EAAE,YAAY,EAAE;QAAE,OAAO,EAAE,YAAY;KAAC,EAClD;QACE;YAAC,MAAM;YAAE,MAAM;YAAE,MAAM,EAAE;YAAE,MAAM,EAAE;SAAC,GAAG;YACrC,QAAQ,EAAE,MAAM,CAAC;YACjB,KAAK,EAAE,MAAM,CAAC;YACd,IAAI,EAAE,MAAM,EAAE,CAAC;YACf,MAAM,EAAE,MAAM,EAAE,CAAC;SAClB;KACF,EACD,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,sBAAsB,GACtC,mBAAmB,CACpB;QAAC,SAAS,EAAE,YAAY,EAAE;QAAE,QAAQ,EAAE,YAAY,EAAE;KAAC,EACrD;QACE;YAAC,MAAM,EAAE;YAAE,MAAM,EAAE;YAAE,MAAM,EAAE,EAAE;YAAE,MAAM,EAAE,EAAE;SAAC,GAAG;YAC7C,SAAS,EAAE,MAAM,EAAE,CAAC;YACpB,MAAM,EAAE,MAAM,EAAE,CAAC;YACjB,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC;YACjB,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC;SACpB;KACF,EACD,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,gBAAgB,GAChC,mBAAmB,CACpB;QAAC,IAAI,EAAE,MAAM,EAAE;QAAE,QAAQ,EAAE,YAAY,EAAE;KAAC,EAC1C;QACE;YAAC,MAAM,EAAE;YAAE,MAAM,EAAE;YAAE,MAAM,EAAE,EAAE;SAAC,GAAG;YACjC,SAAS,EAAE,MAAM,EAAE,CAAC;YACpB,MAAM,EAAE,MAAM,EAAE,CAAC;YACjB,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC;SACpB;KACF,EACD,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,SAAS,GACzB,mBAAmB,CACpB;QAAC,IAAI,EAAE,MAAM,EAAE;QAAE,OAAO,EAAE,YAAY;KAAC,EACvC;QAAC,MAAM,EAAE;KAAC,EACV,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,eAAe,GAC/B,mBAAmB,CACpB;QAAC,SAAS,EAAE,YAAY,EAAE;QAAE,OAAO,EAAE,YAAY;KAAC,EAClD;QAAC,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,GAAG;YAAE,IAAI,EAAE,MAAM,EAAE,CAAC;YAAC,MAAM,EAAE,MAAM,EAAE,CAAA;SAAE;KAAC,EAC7D,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,YAAY,GAC5B,mBAAmB,CACpB;QAAC,WAAW,EAAE,WAAW;QAAE,WAAW,EAAE,WAAW;KAAC,EACpD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,kBAAkB,GAClC,mBAAmB,CACpB;QAAC,IAAI,EAAE,WAAW;QAAE,IAAI,EAAE,WAAW;KAAC,EACtC;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,mBAAmB,GACnC,mBAAmB,CACpB;QAAC,OAAO,EAAE,WAAW;QAAE,OAAO,EAAE,YAAY;KAAC,EAC7C;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IACF,WAAW,CACT,eAAe,EAAE,WAAW,GAC3B,mBAAmB,CAAC,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,EAAE,YAAY,CAAC,CAAC;IACtE,WAAW,CACT,eAAe,EAAE,UAAU,GAC1B,mBAAmB,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC7D,WAAW,CACT,eAAe,EAAE,SAAS,GACzB,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAClE,WAAW,CACT,eAAe,EAAE,gBAAgB,GAChC,mBAAmB,CAAC,CAAC,QAAQ,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;IACvE,WAAW,CACT,eAAe,EAAE,YAAY,GAC5B,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAClE,WAAW,CACT,eAAe,EAAE,YAAY,GAC5B,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAClE,WAAW,CACT,eAAe,EAAE,eAAe,GAC/B,mBAAmB,CAAC,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC9D,WAAW,CACT,eAAe,EAAE,WAAW,GAC3B,mBAAmB,CAAC,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC9D,WAAW,CACT,eAAe,EAAE,mBAAmB,GACnC,mBAAmB,CAAC,CAAC,WAAW,EAAE,SAAS,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IACpE,WAAW,CACT,eAAe,EAAE,UAAU,GAC1B,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAElE,QAAQ,CACN,GAAG,EAAE,aAAa,GACjB,kBAAkB,CACnB,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;IAEF,OAAO,EAAE;QACP,oBAAoB,EAAE,kBAAkB,CACtC,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QACF,WAAW,EAAE,kBAAkB,CAC7B,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;KACH,CAAC;CACH"} \ No newline at end of file diff --git a/dist/types/contracts/history/ProxyReaderV04.js b/dist/types/contracts/history/ProxyReaderV04.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/history/ProxyReaderV04.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/history/UNSRegistryV07.d.ts b/dist/types/contracts/history/UNSRegistryV07.d.ts deleted file mode 100644 index 4f0731b8..00000000 --- a/dist/types/contracts/history/UNSRegistryV07.d.ts +++ /dev/null @@ -1,852 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; -export declare namespace IForwarder { - type ForwardRequestStruct = { - from: AddressLike; - nonce: BigNumberish; - tokenId: BigNumberish; - data: BytesLike; - }; - type ForwardRequestStructOutput = [ - from: string, - nonce: bigint, - tokenId: bigint, - data: string - ] & { - from: string; - nonce: bigint; - tokenId: bigint; - data: string; - }; -} -export interface UNSRegistryV07Interface extends Interface { - getFunction(nameOrSignature: "BATCH_LIMIT" | "NAME" | "VERSION" | "addKey" | "addProxyReader" | "approve" | "balanceOf" | "burn" | "deposit" | "depositToPolygon" | "execute" | "exists" | "get" | "getApproved" | "getByHash" | "getKey" | "getKeys" | "getMany" | "getManyByHash" | "initialize" | "isApprovedForAll" | "isApprovedOrOwner" | "isTrustedForwarder" | "mint(address,uint256)" | "mint(address,uint256,bytes)" | "mintTLD" | "mintWithRecords" | "name" | "namehash" | "nonceOf" | "onERC721Received" | "ownerOf" | "reconfigure" | "removeReverse" | "reset" | "resolverOf" | "reverseNameOf" | "reverseOf" | "root" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "set" | "setApprovalForAll" | "setByHash" | "setMany" | "setManyByHash" | "setOwner" | "setReverse" | "setTokenURIPrefix" | "supportsInterface" | "symbol" | "tokenURI" | "transferFrom" | "unlockWithRecords" | "verify" | "withdrawFromPolygon"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "AdminChanged" | "Approval" | "ApprovalForAll" | "Initialized" | "NewKey" | "NewURI" | "NewURIPrefix" | "RemoveReverse" | "ResetRecords" | "Set" | "SetReverse" | "Transfer" | "Upgraded"): EventFragment; - encodeFunctionData(functionFragment: "BATCH_LIMIT", values?: undefined): string; - encodeFunctionData(functionFragment: "NAME", values?: undefined): string; - encodeFunctionData(functionFragment: "VERSION", values?: undefined): string; - encodeFunctionData(functionFragment: "addKey", values: [string]): string; - encodeFunctionData(functionFragment: "addProxyReader", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "burn", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "deposit", values: [AddressLike, BytesLike]): string; - encodeFunctionData(functionFragment: "depositToPolygon", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "execute", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; - encodeFunctionData(functionFragment: "exists", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "get", values: [string, BigNumberish]): string; - encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "getByHash", values: [BigNumberish, BigNumberish]): string; - encodeFunctionData(functionFragment: "getKey", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "getKeys", values: [BigNumberish[]]): string; - encodeFunctionData(functionFragment: "getMany", values: [string[], BigNumberish]): string; - encodeFunctionData(functionFragment: "getManyByHash", values: [BigNumberish[], BigNumberish]): string; - encodeFunctionData(functionFragment: "initialize", values: [AddressLike, AddressLike, AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "isApprovedOrOwner", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "isTrustedForwarder", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "mint(address,uint256)", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "mint(address,uint256,bytes)", values: [AddressLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "mintTLD", values: [BigNumberish, string]): string; - encodeFunctionData(functionFragment: "mintWithRecords", values: [AddressLike, string[], string[], string[], boolean]): string; - encodeFunctionData(functionFragment: "name", values?: undefined): string; - encodeFunctionData(functionFragment: "namehash", values: [string[]]): string; - encodeFunctionData(functionFragment: "nonceOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "onERC721Received", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "reconfigure", values: [string[], string[], BigNumberish]): string; - encodeFunctionData(functionFragment: "removeReverse", values?: undefined): string; - encodeFunctionData(functionFragment: "reset", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "resolverOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "reverseNameOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "reverseOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "root", values?: undefined): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "set", values: [string, string, BigNumberish]): string; - encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; - encodeFunctionData(functionFragment: "setByHash", values: [BigNumberish, string, BigNumberish]): string; - encodeFunctionData(functionFragment: "setMany", values: [string[], string[], BigNumberish]): string; - encodeFunctionData(functionFragment: "setManyByHash", values: [BigNumberish[], string[], BigNumberish]): string; - encodeFunctionData(functionFragment: "setOwner", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "setReverse", values: [string[]]): string; - encodeFunctionData(functionFragment: "setTokenURIPrefix", values: [string]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "symbol", values?: undefined): string; - encodeFunctionData(functionFragment: "tokenURI", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "unlockWithRecords", values: [AddressLike, string[], string[], string[], boolean]): string; - encodeFunctionData(functionFragment: "verify", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; - encodeFunctionData(functionFragment: "withdrawFromPolygon", values: [BytesLike, BigNumberish, string[], string[]]): string; - decodeFunctionResult(functionFragment: "BATCH_LIMIT", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "NAME", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "VERSION", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "addKey", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "addProxyReader", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "burn", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "deposit", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "depositToPolygon", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "exists", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "get", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getByHash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getKey", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getKeys", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getMany", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getManyByHash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedOrOwner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isTrustedForwarder", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "mint(address,uint256)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "mint(address,uint256,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "mintTLD", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "mintWithRecords", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "namehash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "nonceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "onERC721Received", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "reconfigure", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "removeReverse", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "reset", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "resolverOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "reverseNameOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "reverseOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "root", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "set", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setByHash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setMany", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setManyByHash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setOwner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setReverse", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setTokenURIPrefix", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "tokenURI", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "unlockWithRecords", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "verify", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "withdrawFromPolygon", data: BytesLike): Result; -} -export declare namespace AdminChangedEvent { - type InputTuple = [previousAdmin: AddressLike, newAdmin: AddressLike]; - type OutputTuple = [previousAdmin: string, newAdmin: string]; - interface OutputObject { - previousAdmin: string; - newAdmin: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ApprovalEvent { - type InputTuple = [ - owner: AddressLike, - approved: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [owner: string, approved: string, tokenId: bigint]; - interface OutputObject { - owner: string; - approved: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ApprovalForAllEvent { - type InputTuple = [ - owner: AddressLike, - operator: AddressLike, - approved: boolean - ]; - type OutputTuple = [ - owner: string, - operator: string, - approved: boolean - ]; - interface OutputObject { - owner: string; - operator: string; - approved: boolean; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace InitializedEvent { - type InputTuple = [version: BigNumberish]; - type OutputTuple = [version: bigint]; - interface OutputObject { - version: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NewKeyEvent { - type InputTuple = [ - tokenId: BigNumberish, - keyIndex: string, - key: string - ]; - type OutputTuple = [tokenId: bigint, keyIndex: string, key: string]; - interface OutputObject { - tokenId: bigint; - keyIndex: string; - key: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NewURIEvent { - type InputTuple = [tokenId: BigNumberish, uri: string]; - type OutputTuple = [tokenId: bigint, uri: string]; - interface OutputObject { - tokenId: bigint; - uri: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NewURIPrefixEvent { - type InputTuple = [prefix: string]; - type OutputTuple = [prefix: string]; - interface OutputObject { - prefix: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RemoveReverseEvent { - type InputTuple = [addr: AddressLike]; - type OutputTuple = [addr: string]; - interface OutputObject { - addr: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ResetRecordsEvent { - type InputTuple = [tokenId: BigNumberish]; - type OutputTuple = [tokenId: bigint]; - interface OutputObject { - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace SetEvent { - type InputTuple = [ - tokenId: BigNumberish, - keyIndex: string, - valueIndex: string, - key: string, - value: string - ]; - type OutputTuple = [ - tokenId: bigint, - keyIndex: string, - valueIndex: string, - key: string, - value: string - ]; - interface OutputObject { - tokenId: bigint; - keyIndex: string; - valueIndex: string; - key: string; - value: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace SetReverseEvent { - type InputTuple = [addr: AddressLike, tokenId: BigNumberish]; - type OutputTuple = [addr: string, tokenId: bigint]; - interface OutputObject { - addr: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferEvent { - type InputTuple = [ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [from: string, to: string, tokenId: bigint]; - interface OutputObject { - from: string; - to: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace UpgradedEvent { - type InputTuple = [implementation: AddressLike]; - type OutputTuple = [implementation: string]; - interface OutputObject { - implementation: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface UNSRegistryV07 extends BaseContract { - connect(runner?: ContractRunner | null): UNSRegistryV07; - waitForDeployment(): Promise; - interface: UNSRegistryV07Interface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - BATCH_LIMIT: TypedContractMethod<[], [bigint], "view">; - NAME: TypedContractMethod<[], [string], "view">; - VERSION: TypedContractMethod<[], [string], "view">; - addKey: TypedContractMethod<[key: string], [void], "nonpayable">; - addProxyReader: TypedContractMethod<[ - addr: AddressLike - ], [ - void - ], "nonpayable">; - approve: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; - burn: TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; - deposit: TypedContractMethod<[ - user: AddressLike, - depositData: BytesLike - ], [ - void - ], "nonpayable">; - depositToPolygon: TypedContractMethod<[ - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - execute: TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - string - ], "nonpayable">; - exists: TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; - get: TypedContractMethod<[ - key: string, - tokenId: BigNumberish - ], [ - string - ], "view">; - getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getByHash: TypedContractMethod<[ - keyHash: BigNumberish, - tokenId: BigNumberish - ], [ - [string, string] & { - key: string; - value: string; - } - ], "view">; - getKey: TypedContractMethod<[keyHash: BigNumberish], [string], "view">; - getKeys: TypedContractMethod<[hashes: BigNumberish[]], [string[]], "view">; - getMany: TypedContractMethod<[ - keys: string[], - tokenId: BigNumberish - ], [ - string[] - ], "view">; - getManyByHash: TypedContractMethod<[ - keyHashes: BigNumberish[], - tokenId: BigNumberish - ], [ - [string[], string[]] & { - keys: string[]; - values: string[]; - } - ], "view">; - initialize: TypedContractMethod<[ - mintingManager: AddressLike, - cnsRegistry: AddressLike, - rootChainManager: AddressLike, - childChainManager: AddressLike - ], [ - void - ], "nonpayable">; - isApprovedForAll: TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - isApprovedOrOwner: TypedContractMethod<[ - spender: AddressLike, - tokenId: BigNumberish - ], [ - boolean - ], "view">; - isTrustedForwarder: TypedContractMethod<[ - forwarder: AddressLike - ], [ - boolean - ], "view">; - "mint(address,uint256)": TypedContractMethod<[ - user: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - "mint(address,uint256,bytes)": TypedContractMethod<[ - user: AddressLike, - tokenId: BigNumberish, - arg2: BytesLike - ], [ - void - ], "nonpayable">; - mintTLD: TypedContractMethod<[ - tokenId: BigNumberish, - uri: string - ], [ - void - ], "nonpayable">; - mintWithRecords: TypedContractMethod<[ - to: AddressLike, - labels: string[], - keys: string[], - values: string[], - withReverse: boolean - ], [ - void - ], "nonpayable">; - name: TypedContractMethod<[], [string], "view">; - namehash: TypedContractMethod<[labels: string[]], [bigint], "view">; - nonceOf: TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; - onERC721Received: TypedContractMethod<[ - arg0: AddressLike, - from: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - string - ], "nonpayable">; - ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - reconfigure: TypedContractMethod<[ - keys: string[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - removeReverse: TypedContractMethod<[], [void], "nonpayable">; - reset: TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; - resolverOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - reverseNameOf: TypedContractMethod<[addr: AddressLike], [string], "view">; - reverseOf: TypedContractMethod<[addr: AddressLike], [bigint], "view">; - root: TypedContractMethod<[], [bigint], "view">; - "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - set: TypedContractMethod<[ - key: string, - value: string, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - setApprovalForAll: TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - setByHash: TypedContractMethod<[ - keyHash: BigNumberish, - value: string, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - setMany: TypedContractMethod<[ - keys: string[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - setManyByHash: TypedContractMethod<[ - keyHashes: BigNumberish[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - setOwner: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - setReverse: TypedContractMethod<[labels: string[]], [void], "nonpayable">; - setTokenURIPrefix: TypedContractMethod<[ - prefix: string - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - symbol: TypedContractMethod<[], [string], "view">; - tokenURI: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - transferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - unlockWithRecords: TypedContractMethod<[ - to: AddressLike, - labels: string[], - keys: string[], - values: string[], - withReverse: boolean - ], [ - void - ], "nonpayable">; - verify: TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - boolean - ], "view">; - withdrawFromPolygon: TypedContractMethod<[ - inputData: BytesLike, - tokenId: BigNumberish, - keys: string[], - values: string[] - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "BATCH_LIMIT"): TypedContractMethod<[], [bigint], "view">; - getFunction(nameOrSignature: "NAME"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "VERSION"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "addKey"): TypedContractMethod<[key: string], [void], "nonpayable">; - getFunction(nameOrSignature: "addProxyReader"): TypedContractMethod<[addr: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "approve"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; - getFunction(nameOrSignature: "burn"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; - getFunction(nameOrSignature: "deposit"): TypedContractMethod<[ - user: AddressLike, - depositData: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "depositToPolygon"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; - getFunction(nameOrSignature: "execute"): TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - string - ], "nonpayable">; - getFunction(nameOrSignature: "exists"): TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; - getFunction(nameOrSignature: "get"): TypedContractMethod<[ - key: string, - tokenId: BigNumberish - ], [ - string - ], "view">; - getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "getByHash"): TypedContractMethod<[ - keyHash: BigNumberish, - tokenId: BigNumberish - ], [ - [string, string] & { - key: string; - value: string; - } - ], "view">; - getFunction(nameOrSignature: "getKey"): TypedContractMethod<[keyHash: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "getKeys"): TypedContractMethod<[hashes: BigNumberish[]], [string[]], "view">; - getFunction(nameOrSignature: "getMany"): TypedContractMethod<[ - keys: string[], - tokenId: BigNumberish - ], [ - string[] - ], "view">; - getFunction(nameOrSignature: "getManyByHash"): TypedContractMethod<[ - keyHashes: BigNumberish[], - tokenId: BigNumberish - ], [ - [string[], string[]] & { - keys: string[]; - values: string[]; - } - ], "view">; - getFunction(nameOrSignature: "initialize"): TypedContractMethod<[ - mintingManager: AddressLike, - cnsRegistry: AddressLike, - rootChainManager: AddressLike, - childChainManager: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "isApprovedOrOwner"): TypedContractMethod<[ - spender: AddressLike, - tokenId: BigNumberish - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "isTrustedForwarder"): TypedContractMethod<[forwarder: AddressLike], [boolean], "view">; - getFunction(nameOrSignature: "mint(address,uint256)"): TypedContractMethod<[ - user: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "mint(address,uint256,bytes)"): TypedContractMethod<[ - user: AddressLike, - tokenId: BigNumberish, - arg2: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "mintTLD"): TypedContractMethod<[ - tokenId: BigNumberish, - uri: string - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "mintWithRecords"): TypedContractMethod<[ - to: AddressLike, - labels: string[], - keys: string[], - values: string[], - withReverse: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "namehash"): TypedContractMethod<[labels: string[]], [bigint], "view">; - getFunction(nameOrSignature: "nonceOf"): TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; - getFunction(nameOrSignature: "onERC721Received"): TypedContractMethod<[ - arg0: AddressLike, - from: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - string - ], "nonpayable">; - getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "reconfigure"): TypedContractMethod<[ - keys: string[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "removeReverse"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "reset"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; - getFunction(nameOrSignature: "resolverOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "reverseNameOf"): TypedContractMethod<[addr: AddressLike], [string], "view">; - getFunction(nameOrSignature: "reverseOf"): TypedContractMethod<[addr: AddressLike], [bigint], "view">; - getFunction(nameOrSignature: "root"): TypedContractMethod<[], [bigint], "view">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "set"): TypedContractMethod<[ - key: string, - value: string, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setByHash"): TypedContractMethod<[ - keyHash: BigNumberish, - value: string, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setMany"): TypedContractMethod<[ - keys: string[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setManyByHash"): TypedContractMethod<[ - keyHashes: BigNumberish[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setOwner"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setReverse"): TypedContractMethod<[labels: string[]], [void], "nonpayable">; - getFunction(nameOrSignature: "setTokenURIPrefix"): TypedContractMethod<[prefix: string], [void], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "symbol"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "tokenURI"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "unlockWithRecords"): TypedContractMethod<[ - to: AddressLike, - labels: string[], - keys: string[], - values: string[], - withReverse: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "verify"): TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "withdrawFromPolygon"): TypedContractMethod<[ - inputData: BytesLike, - tokenId: BigNumberish, - keys: string[], - values: string[] - ], [ - void - ], "nonpayable">; - getEvent(key: "AdminChanged"): TypedContractEvent; - getEvent(key: "Approval"): TypedContractEvent; - getEvent(key: "ApprovalForAll"): TypedContractEvent; - getEvent(key: "Initialized"): TypedContractEvent; - getEvent(key: "NewKey"): TypedContractEvent; - getEvent(key: "NewURI"): TypedContractEvent; - getEvent(key: "NewURIPrefix"): TypedContractEvent; - getEvent(key: "RemoveReverse"): TypedContractEvent; - getEvent(key: "ResetRecords"): TypedContractEvent; - getEvent(key: "Set"): TypedContractEvent; - getEvent(key: "SetReverse"): TypedContractEvent; - getEvent(key: "Transfer"): TypedContractEvent; - getEvent(key: "Upgraded"): TypedContractEvent; - filters: { - "AdminChanged(address,address)": TypedContractEvent; - AdminChanged: TypedContractEvent; - "Approval(address,address,uint256)": TypedContractEvent; - Approval: TypedContractEvent; - "ApprovalForAll(address,address,bool)": TypedContractEvent; - ApprovalForAll: TypedContractEvent; - "Initialized(uint8)": TypedContractEvent; - Initialized: TypedContractEvent; - "NewKey(uint256,string,string)": TypedContractEvent; - NewKey: TypedContractEvent; - "NewURI(uint256,string)": TypedContractEvent; - NewURI: TypedContractEvent; - "NewURIPrefix(string)": TypedContractEvent; - NewURIPrefix: TypedContractEvent; - "RemoveReverse(address)": TypedContractEvent; - RemoveReverse: TypedContractEvent; - "ResetRecords(uint256)": TypedContractEvent; - ResetRecords: TypedContractEvent; - "Set(uint256,string,string,string,string)": TypedContractEvent; - Set: TypedContractEvent; - "SetReverse(address,uint256)": TypedContractEvent; - SetReverse: TypedContractEvent; - "Transfer(address,address,uint256)": TypedContractEvent; - Transfer: TypedContractEvent; - "Upgraded(address)": TypedContractEvent; - Upgraded: TypedContractEvent; - }; -} -//# sourceMappingURL=UNSRegistryV07.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/history/UNSRegistryV07.d.ts.map b/dist/types/contracts/history/UNSRegistryV07.d.ts.map deleted file mode 100644 index 3505bd8e..00000000 --- a/dist/types/contracts/history/UNSRegistryV07.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"UNSRegistryV07.d.ts","sourceRoot":"","sources":["../../../../types/contracts/history/UNSRegistryV07.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/history/UNSRegistryV07.js b/dist/types/contracts/history/UNSRegistryV07.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/history/UNSRegistryV07.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/history/index.d.ts b/dist/types/contracts/history/index.d.ts deleted file mode 100644 index 8446ee85..00000000 --- a/dist/types/contracts/history/index.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export type { IUNSRegistryV07 } from "./IUNSRegistryV07"; -export type { ProxyReaderV04 } from "./ProxyReaderV04"; -export type { UNSRegistryV07 } from "./UNSRegistryV07"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/history/index.d.ts.map b/dist/types/contracts/history/index.d.ts.map deleted file mode 100644 index d856b8aa..00000000 --- a/dist/types/contracts/history/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../types/contracts/history/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC"} \ No newline at end of file diff --git a/dist/types/contracts/history/index.js b/dist/types/contracts/history/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/history/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/index.d.ts b/dist/types/contracts/index.d.ts deleted file mode 100644 index a4ec83bb..00000000 --- a/dist/types/contracts/index.d.ts +++ /dev/null @@ -1,40 +0,0 @@ -import type * as ens from "./@ens"; -export type { ens }; -import type * as maticnetwork from "./@maticnetwork"; -export type { maticnetwork }; -import type * as cns from "./cns"; -export type { cns }; -import type * as custody from "./custody"; -export type { custody }; -import type * as history from "./history"; -export type { history }; -import type * as marketplace from "./marketplace"; -export type { marketplace }; -import type * as metatx from "./metatx"; -export type { metatx }; -import type * as mocks from "./mocks"; -export type { mocks }; -import type * as roles from "./roles"; -export type { roles }; -import type * as utils from "./utils"; -export type { utils }; -export type { ChildRegistry } from "./ChildRegistry"; -export type { DotCoinBurner } from "./DotCoinBurner"; -export type { IAddressReader } from "./IAddressReader"; -export type { IDataReader } from "./IDataReader"; -export type { IERC1967 } from "./IERC1967"; -export type { IMintingManager } from "./IMintingManager"; -export type { IRecordReader } from "./IRecordReader"; -export type { IRecordStorage } from "./IRecordStorage"; -export type { IRegistryReader } from "./IRegistryReader"; -export type { IReverseRegistry } from "./IReverseRegistry"; -export type { IRootRegistry } from "./IRootRegistry"; -export type { IUNSRegistry } from "./IUNSRegistry"; -export type { KeyStorage } from "./KeyStorage"; -export type { MintingManager } from "./MintingManager"; -export type { ProxyReader } from "./ProxyReader"; -export type { RecordStorage } from "./RecordStorage"; -export type { RootRegistry } from "./RootRegistry"; -export type { UNSOperator } from "./UNSOperator"; -export type { UNSRegistry } from "./UNSRegistry"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/index.d.ts.map b/dist/types/contracts/index.d.ts.map deleted file mode 100644 index 0ab37a36..00000000 --- a/dist/types/contracts/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../types/contracts/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,GAAG,MAAM,QAAQ,CAAC;AACnC,YAAY,EAAE,GAAG,EAAE,CAAC;AACpB,OAAO,KAAK,KAAK,YAAY,MAAM,iBAAiB,CAAC;AACrD,YAAY,EAAE,YAAY,EAAE,CAAC;AAC7B,OAAO,KAAK,KAAK,GAAG,MAAM,OAAO,CAAC;AAClC,YAAY,EAAE,GAAG,EAAE,CAAC;AACpB,OAAO,KAAK,KAAK,OAAO,MAAM,WAAW,CAAC;AAC1C,YAAY,EAAE,OAAO,EAAE,CAAC;AACxB,OAAO,KAAK,KAAK,OAAO,MAAM,WAAW,CAAC;AAC1C,YAAY,EAAE,OAAO,EAAE,CAAC;AACxB,OAAO,KAAK,KAAK,WAAW,MAAM,eAAe,CAAC;AAClD,YAAY,EAAE,WAAW,EAAE,CAAC;AAC5B,OAAO,KAAK,KAAK,MAAM,MAAM,UAAU,CAAC;AACxC,YAAY,EAAE,MAAM,EAAE,CAAC;AACvB,OAAO,KAAK,KAAK,KAAK,MAAM,SAAS,CAAC;AACtC,YAAY,EAAE,KAAK,EAAE,CAAC;AACtB,OAAO,KAAK,KAAK,KAAK,MAAM,SAAS,CAAC;AACtC,YAAY,EAAE,KAAK,EAAE,CAAC;AACtB,OAAO,KAAK,KAAK,KAAK,MAAM,SAAS,CAAC;AACtC,YAAY,EAAE,KAAK,EAAE,CAAC;AACtB,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,YAAY,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,YAAY,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,YAAY,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,YAAY,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACnD,YAAY,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,YAAY,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACnD,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC"} \ No newline at end of file diff --git a/dist/types/contracts/index.js b/dist/types/contracts/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/marketplace/ISeaportProxyBuyer.d.ts b/dist/types/contracts/marketplace/ISeaportProxyBuyer.d.ts deleted file mode 100644 index 27438b66..00000000 --- a/dist/types/contracts/marketplace/ISeaportProxyBuyer.d.ts +++ /dev/null @@ -1,128 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../common"; -export declare type OfferItemStruct = { - itemType: BigNumberish; - token: AddressLike; - identifierOrCriteria: BigNumberish; - startAmount: BigNumberish; - endAmount: BigNumberish; -}; -export declare type OfferItemStructOutput = [ - itemType: bigint, - token: string, - identifierOrCriteria: bigint, - startAmount: bigint, - endAmount: bigint -] & { - itemType: bigint; - token: string; - identifierOrCriteria: bigint; - startAmount: bigint; - endAmount: bigint; -}; -export declare type ConsiderationItemStruct = { - itemType: BigNumberish; - token: AddressLike; - identifierOrCriteria: BigNumberish; - startAmount: BigNumberish; - endAmount: BigNumberish; - recipient: AddressLike; -}; -export declare type ConsiderationItemStructOutput = [ - itemType: bigint, - token: string, - identifierOrCriteria: bigint, - startAmount: bigint, - endAmount: bigint, - recipient: string -] & { - itemType: bigint; - token: string; - identifierOrCriteria: bigint; - startAmount: bigint; - endAmount: bigint; - recipient: string; -}; -export declare type OrderParametersStruct = { - offerer: AddressLike; - zone: AddressLike; - offer: OfferItemStruct[]; - consideration: ConsiderationItemStruct[]; - orderType: BigNumberish; - startTime: BigNumberish; - endTime: BigNumberish; - zoneHash: BytesLike; - salt: BigNumberish; - conduitKey: BytesLike; - totalOriginalConsiderationItems: BigNumberish; -}; -export declare type OrderParametersStructOutput = [ - offerer: string, - zone: string, - offer: OfferItemStructOutput[], - consideration: ConsiderationItemStructOutput[], - orderType: bigint, - startTime: bigint, - endTime: bigint, - zoneHash: string, - salt: bigint, - conduitKey: string, - totalOriginalConsiderationItems: bigint -] & { - offerer: string; - zone: string; - offer: OfferItemStructOutput[]; - consideration: ConsiderationItemStructOutput[]; - orderType: bigint; - startTime: bigint; - endTime: bigint; - zoneHash: string; - salt: bigint; - conduitKey: string; - totalOriginalConsiderationItems: bigint; -}; -export declare type OrderStruct = { - parameters: OrderParametersStruct; - signature: BytesLike; -}; -export declare type OrderStructOutput = [ - parameters: OrderParametersStructOutput, - signature: string -] & { - parameters: OrderParametersStructOutput; - signature: string; -}; -export interface ISeaportProxyBuyerInterface extends Interface { - getFunction(nameOrSignature: "fulfillOrder"): FunctionFragment; - encodeFunctionData(functionFragment: "fulfillOrder", values: [OrderStruct, BytesLike]): string; - decodeFunctionResult(functionFragment: "fulfillOrder", data: BytesLike): Result; -} -export interface ISeaportProxyBuyer extends BaseContract { - connect(runner?: ContractRunner | null): ISeaportProxyBuyer; - waitForDeployment(): Promise; - interface: ISeaportProxyBuyerInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - fulfillOrder: TypedContractMethod<[ - order: OrderStruct, - fulfillerConduitKey: BytesLike - ], [ - boolean - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "fulfillOrder"): TypedContractMethod<[ - order: OrderStruct, - fulfillerConduitKey: BytesLike - ], [ - boolean - ], "nonpayable">; - filters: {}; -} -//# sourceMappingURL=ISeaportProxyBuyer.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/marketplace/ISeaportProxyBuyer.d.ts.map b/dist/types/contracts/marketplace/ISeaportProxyBuyer.d.ts.map deleted file mode 100644 index d12e331a..00000000 --- a/dist/types/contracts/marketplace/ISeaportProxyBuyer.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ISeaportProxyBuyer.d.ts","sourceRoot":"","sources":["../../../../types/contracts/marketplace/ISeaportProxyBuyer.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/marketplace/ISeaportProxyBuyer.js b/dist/types/contracts/marketplace/ISeaportProxyBuyer.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/marketplace/ISeaportProxyBuyer.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/marketplace/SeaportProxyBuyer.d.ts b/dist/types/contracts/marketplace/SeaportProxyBuyer.d.ts deleted file mode 100644 index d5e4941c..00000000 --- a/dist/types/contracts/marketplace/SeaportProxyBuyer.d.ts +++ /dev/null @@ -1,484 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; -export declare type OfferItemStruct = { - itemType: BigNumberish; - token: AddressLike; - identifierOrCriteria: BigNumberish; - startAmount: BigNumberish; - endAmount: BigNumberish; -}; -export declare type OfferItemStructOutput = [ - itemType: bigint, - token: string, - identifierOrCriteria: bigint, - startAmount: bigint, - endAmount: bigint -] & { - itemType: bigint; - token: string; - identifierOrCriteria: bigint; - startAmount: bigint; - endAmount: bigint; -}; -export declare type ConsiderationItemStruct = { - itemType: BigNumberish; - token: AddressLike; - identifierOrCriteria: BigNumberish; - startAmount: BigNumberish; - endAmount: BigNumberish; - recipient: AddressLike; -}; -export declare type ConsiderationItemStructOutput = [ - itemType: bigint, - token: string, - identifierOrCriteria: bigint, - startAmount: bigint, - endAmount: bigint, - recipient: string -] & { - itemType: bigint; - token: string; - identifierOrCriteria: bigint; - startAmount: bigint; - endAmount: bigint; - recipient: string; -}; -export declare type OrderParametersStruct = { - offerer: AddressLike; - zone: AddressLike; - offer: OfferItemStruct[]; - consideration: ConsiderationItemStruct[]; - orderType: BigNumberish; - startTime: BigNumberish; - endTime: BigNumberish; - zoneHash: BytesLike; - salt: BigNumberish; - conduitKey: BytesLike; - totalOriginalConsiderationItems: BigNumberish; -}; -export declare type OrderParametersStructOutput = [ - offerer: string, - zone: string, - offer: OfferItemStructOutput[], - consideration: ConsiderationItemStructOutput[], - orderType: bigint, - startTime: bigint, - endTime: bigint, - zoneHash: string, - salt: bigint, - conduitKey: string, - totalOriginalConsiderationItems: bigint -] & { - offerer: string; - zone: string; - offer: OfferItemStructOutput[]; - consideration: ConsiderationItemStructOutput[]; - orderType: bigint; - startTime: bigint; - endTime: bigint; - zoneHash: string; - salt: bigint; - conduitKey: string; - totalOriginalConsiderationItems: bigint; -}; -export declare type OrderStruct = { - parameters: OrderParametersStruct; - signature: BytesLike; -}; -export declare type OrderStructOutput = [ - parameters: OrderParametersStructOutput, - signature: string -] & { - parameters: OrderParametersStructOutput; - signature: string; -}; -export declare namespace IForwarder { - type ForwardRequestStruct = { - from: AddressLike; - nonce: BigNumberish; - tokenId: BigNumberish; - data: BytesLike; - }; - type ForwardRequestStructOutput = [ - from: string, - nonce: bigint, - tokenId: bigint, - data: string - ] & { - from: string; - nonce: bigint; - tokenId: bigint; - data: string; - }; -} -export interface SeaportProxyBuyerInterface extends Interface { - getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE" | "MINTER_ROLE" | "NAME" | "VERSION" | "addMinter" | "addMinters" | "closeMinter" | "execute" | "fulfillOrder" | "getRoleAdmin" | "grantRole" | "hasRole" | "initialize" | "isMinter" | "isTrustedForwarder" | "nonceOf" | "owner" | "pause" | "paused" | "removeMinter" | "removeMinters" | "renounceMinter" | "renounceOwnership" | "renounceRole" | "revokeRole" | "rotateMinter" | "supportsInterface" | "transferOwnership" | "unpause" | "verify" | "withdraw"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Initialized" | "OwnershipTransferred" | "Paused" | "RoleAdminChanged" | "RoleGranted" | "RoleRevoked" | "Unpaused"): EventFragment; - encodeFunctionData(functionFragment: "DEFAULT_ADMIN_ROLE", values?: undefined): string; - encodeFunctionData(functionFragment: "MINTER_ROLE", values?: undefined): string; - encodeFunctionData(functionFragment: "NAME", values?: undefined): string; - encodeFunctionData(functionFragment: "VERSION", values?: undefined): string; - encodeFunctionData(functionFragment: "addMinter", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "addMinters", values: [AddressLike[]]): string; - encodeFunctionData(functionFragment: "closeMinter", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "execute", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; - encodeFunctionData(functionFragment: "fulfillOrder", values: [OrderStruct, BytesLike]): string; - encodeFunctionData(functionFragment: "getRoleAdmin", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "grantRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "hasRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "initialize", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "isMinter", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "isTrustedForwarder", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "nonceOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "owner", values?: undefined): string; - encodeFunctionData(functionFragment: "pause", values?: undefined): string; - encodeFunctionData(functionFragment: "paused", values?: undefined): string; - encodeFunctionData(functionFragment: "removeMinter", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "removeMinters", values: [AddressLike[]]): string; - encodeFunctionData(functionFragment: "renounceMinter", values?: undefined): string; - encodeFunctionData(functionFragment: "renounceOwnership", values?: undefined): string; - encodeFunctionData(functionFragment: "renounceRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "revokeRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "rotateMinter", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "transferOwnership", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "unpause", values?: undefined): string; - encodeFunctionData(functionFragment: "verify", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; - encodeFunctionData(functionFragment: "withdraw", values?: undefined): string; - decodeFunctionResult(functionFragment: "DEFAULT_ADMIN_ROLE", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "MINTER_ROLE", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "NAME", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "VERSION", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "addMinter", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "addMinters", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "closeMinter", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "fulfillOrder", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getRoleAdmin", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "grantRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "hasRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isMinter", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isTrustedForwarder", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "nonceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "pause", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "paused", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "removeMinter", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "removeMinters", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceMinter", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceOwnership", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "revokeRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "rotateMinter", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "unpause", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "verify", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "withdraw", data: BytesLike): Result; -} -export declare namespace InitializedEvent { - type InputTuple = [version: BigNumberish]; - type OutputTuple = [version: bigint]; - interface OutputObject { - version: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace OwnershipTransferredEvent { - type InputTuple = [previousOwner: AddressLike, newOwner: AddressLike]; - type OutputTuple = [previousOwner: string, newOwner: string]; - interface OutputObject { - previousOwner: string; - newOwner: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace PausedEvent { - type InputTuple = [account: AddressLike]; - type OutputTuple = [account: string]; - interface OutputObject { - account: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RoleAdminChangedEvent { - type InputTuple = [ - role: BytesLike, - previousAdminRole: BytesLike, - newAdminRole: BytesLike - ]; - type OutputTuple = [ - role: string, - previousAdminRole: string, - newAdminRole: string - ]; - interface OutputObject { - role: string; - previousAdminRole: string; - newAdminRole: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RoleGrantedEvent { - type InputTuple = [ - role: BytesLike, - account: AddressLike, - sender: AddressLike - ]; - type OutputTuple = [role: string, account: string, sender: string]; - interface OutputObject { - role: string; - account: string; - sender: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RoleRevokedEvent { - type InputTuple = [ - role: BytesLike, - account: AddressLike, - sender: AddressLike - ]; - type OutputTuple = [role: string, account: string, sender: string]; - interface OutputObject { - role: string; - account: string; - sender: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace UnpausedEvent { - type InputTuple = [account: AddressLike]; - type OutputTuple = [account: string]; - interface OutputObject { - account: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface SeaportProxyBuyer extends BaseContract { - connect(runner?: ContractRunner | null): SeaportProxyBuyer; - waitForDeployment(): Promise; - interface: SeaportProxyBuyerInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - DEFAULT_ADMIN_ROLE: TypedContractMethod<[], [string], "view">; - MINTER_ROLE: TypedContractMethod<[], [string], "view">; - NAME: TypedContractMethod<[], [string], "view">; - VERSION: TypedContractMethod<[], [string], "view">; - addMinter: TypedContractMethod<[account: AddressLike], [void], "nonpayable">; - addMinters: TypedContractMethod<[ - accounts: AddressLike[] - ], [ - void - ], "nonpayable">; - closeMinter: TypedContractMethod<[receiver: AddressLike], [void], "payable">; - execute: TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - string - ], "nonpayable">; - fulfillOrder: TypedContractMethod<[ - parameters: OrderStruct, - fulfillerConduitKey: BytesLike - ], [ - boolean - ], "nonpayable">; - getRoleAdmin: TypedContractMethod<[role: BytesLike], [string], "view">; - grantRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - hasRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - boolean - ], "view">; - initialize: TypedContractMethod<[ - _seaport: AddressLike, - _usdc: AddressLike - ], [ - void - ], "nonpayable">; - isMinter: TypedContractMethod<[account: AddressLike], [boolean], "view">; - isTrustedForwarder: TypedContractMethod<[ - forwarder: AddressLike - ], [ - boolean - ], "view">; - nonceOf: TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; - owner: TypedContractMethod<[], [string], "view">; - pause: TypedContractMethod<[], [void], "nonpayable">; - paused: TypedContractMethod<[], [boolean], "view">; - removeMinter: TypedContractMethod<[ - account: AddressLike - ], [ - void - ], "nonpayable">; - removeMinters: TypedContractMethod<[ - accounts: AddressLike[] - ], [ - void - ], "nonpayable">; - renounceMinter: TypedContractMethod<[], [void], "nonpayable">; - renounceOwnership: TypedContractMethod<[], [void], "nonpayable">; - renounceRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - revokeRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - rotateMinter: TypedContractMethod<[receiver: AddressLike], [void], "payable">; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - transferOwnership: TypedContractMethod<[ - newOwner: AddressLike - ], [ - void - ], "nonpayable">; - unpause: TypedContractMethod<[], [void], "nonpayable">; - verify: TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - boolean - ], "view">; - withdraw: TypedContractMethod<[], [void], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "MINTER_ROLE"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "NAME"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "VERSION"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "addMinter"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "addMinters"): TypedContractMethod<[accounts: AddressLike[]], [void], "nonpayable">; - getFunction(nameOrSignature: "closeMinter"): TypedContractMethod<[receiver: AddressLike], [void], "payable">; - getFunction(nameOrSignature: "execute"): TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - string - ], "nonpayable">; - getFunction(nameOrSignature: "fulfillOrder"): TypedContractMethod<[ - parameters: OrderStruct, - fulfillerConduitKey: BytesLike - ], [ - boolean - ], "nonpayable">; - getFunction(nameOrSignature: "getRoleAdmin"): TypedContractMethod<[role: BytesLike], [string], "view">; - getFunction(nameOrSignature: "grantRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "hasRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "initialize"): TypedContractMethod<[ - _seaport: AddressLike, - _usdc: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "isMinter"): TypedContractMethod<[account: AddressLike], [boolean], "view">; - getFunction(nameOrSignature: "isTrustedForwarder"): TypedContractMethod<[forwarder: AddressLike], [boolean], "view">; - getFunction(nameOrSignature: "nonceOf"): TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; - getFunction(nameOrSignature: "owner"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "pause"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "paused"): TypedContractMethod<[], [boolean], "view">; - getFunction(nameOrSignature: "removeMinter"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "removeMinters"): TypedContractMethod<[accounts: AddressLike[]], [void], "nonpayable">; - getFunction(nameOrSignature: "renounceMinter"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "renounceOwnership"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "renounceRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "revokeRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "rotateMinter"): TypedContractMethod<[receiver: AddressLike], [void], "payable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "transferOwnership"): TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "unpause"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "verify"): TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "withdraw"): TypedContractMethod<[], [void], "nonpayable">; - getEvent(key: "Initialized"): TypedContractEvent; - getEvent(key: "OwnershipTransferred"): TypedContractEvent; - getEvent(key: "Paused"): TypedContractEvent; - getEvent(key: "RoleAdminChanged"): TypedContractEvent; - getEvent(key: "RoleGranted"): TypedContractEvent; - getEvent(key: "RoleRevoked"): TypedContractEvent; - getEvent(key: "Unpaused"): TypedContractEvent; - filters: { - "Initialized(uint8)": TypedContractEvent; - Initialized: TypedContractEvent; - "OwnershipTransferred(address,address)": TypedContractEvent; - OwnershipTransferred: TypedContractEvent; - "Paused(address)": TypedContractEvent; - Paused: TypedContractEvent; - "RoleAdminChanged(bytes32,bytes32,bytes32)": TypedContractEvent; - RoleAdminChanged: TypedContractEvent; - "RoleGranted(bytes32,address,address)": TypedContractEvent; - RoleGranted: TypedContractEvent; - "RoleRevoked(bytes32,address,address)": TypedContractEvent; - RoleRevoked: TypedContractEvent; - "Unpaused(address)": TypedContractEvent; - Unpaused: TypedContractEvent; - }; -} -//# sourceMappingURL=SeaportProxyBuyer.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/marketplace/SeaportProxyBuyer.d.ts.map b/dist/types/contracts/marketplace/SeaportProxyBuyer.d.ts.map deleted file mode 100644 index f985168f..00000000 --- a/dist/types/contracts/marketplace/SeaportProxyBuyer.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"SeaportProxyBuyer.d.ts","sourceRoot":"","sources":["../../../../types/contracts/marketplace/SeaportProxyBuyer.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/marketplace/SeaportProxyBuyer.js b/dist/types/contracts/marketplace/SeaportProxyBuyer.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/marketplace/SeaportProxyBuyer.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/marketplace/index.d.ts b/dist/types/contracts/marketplace/index.d.ts deleted file mode 100644 index e7b26fbd..00000000 --- a/dist/types/contracts/marketplace/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export type { ISeaportProxyBuyer } from "./ISeaportProxyBuyer"; -export type { SeaportProxyBuyer } from "./SeaportProxyBuyer"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/marketplace/index.d.ts.map b/dist/types/contracts/marketplace/index.d.ts.map deleted file mode 100644 index 7deb13c2..00000000 --- a/dist/types/contracts/marketplace/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../types/contracts/marketplace/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,YAAY,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC"} \ No newline at end of file diff --git a/dist/types/contracts/marketplace/index.js b/dist/types/contracts/marketplace/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/marketplace/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/metatx/BaseForwarder.d.ts b/dist/types/contracts/metatx/BaseForwarder.d.ts deleted file mode 100644 index 78d8f04c..00000000 --- a/dist/types/contracts/metatx/BaseForwarder.d.ts +++ /dev/null @@ -1,73 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../common"; -export declare namespace IForwarder { - type ForwardRequestStruct = { - from: AddressLike; - nonce: BigNumberish; - tokenId: BigNumberish; - data: BytesLike; - }; - type ForwardRequestStructOutput = [ - from: string, - nonce: bigint, - tokenId: bigint, - data: string - ] & { - from: string; - nonce: bigint; - tokenId: bigint; - data: string; - }; -} -export interface BaseForwarderInterface extends Interface { - getFunction(nameOrSignature: "execute" | "nonceOf" | "verify"): FunctionFragment; - encodeFunctionData(functionFragment: "execute", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; - encodeFunctionData(functionFragment: "nonceOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "verify", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; - decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "nonceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "verify", data: BytesLike): Result; -} -export interface BaseForwarder extends BaseContract { - connect(runner?: ContractRunner | null): BaseForwarder; - waitForDeployment(): Promise; - interface: BaseForwarderInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - execute: TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - string - ], "nonpayable">; - nonceOf: TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; - verify: TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - boolean - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "execute"): TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - string - ], "nonpayable">; - getFunction(nameOrSignature: "nonceOf"): TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; - getFunction(nameOrSignature: "verify"): TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - boolean - ], "view">; - filters: {}; -} -//# sourceMappingURL=BaseForwarder.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/metatx/BaseForwarder.d.ts.map b/dist/types/contracts/metatx/BaseForwarder.d.ts.map deleted file mode 100644 index 000ed49d..00000000 --- a/dist/types/contracts/metatx/BaseForwarder.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"BaseForwarder.d.ts","sourceRoot":"","sources":["../../../../types/contracts/metatx/BaseForwarder.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/metatx/BaseForwarder.js b/dist/types/contracts/metatx/BaseForwarder.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/metatx/BaseForwarder.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/metatx/BaseRoutingForwarder.d.ts b/dist/types/contracts/metatx/BaseRoutingForwarder.d.ts deleted file mode 100644 index 236ff7b1..00000000 --- a/dist/types/contracts/metatx/BaseRoutingForwarder.d.ts +++ /dev/null @@ -1,73 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../common"; -export declare namespace IForwarder { - type ForwardRequestStruct = { - from: AddressLike; - nonce: BigNumberish; - tokenId: BigNumberish; - data: BytesLike; - }; - type ForwardRequestStructOutput = [ - from: string, - nonce: bigint, - tokenId: bigint, - data: string - ] & { - from: string; - nonce: bigint; - tokenId: bigint; - data: string; - }; -} -export interface BaseRoutingForwarderInterface extends Interface { - getFunction(nameOrSignature: "execute" | "nonceOf" | "verify"): FunctionFragment; - encodeFunctionData(functionFragment: "execute", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; - encodeFunctionData(functionFragment: "nonceOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "verify", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; - decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "nonceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "verify", data: BytesLike): Result; -} -export interface BaseRoutingForwarder extends BaseContract { - connect(runner?: ContractRunner | null): BaseRoutingForwarder; - waitForDeployment(): Promise; - interface: BaseRoutingForwarderInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - execute: TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - string - ], "nonpayable">; - nonceOf: TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; - verify: TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - boolean - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "execute"): TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - string - ], "nonpayable">; - getFunction(nameOrSignature: "nonceOf"): TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; - getFunction(nameOrSignature: "verify"): TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - boolean - ], "view">; - filters: {}; -} -//# sourceMappingURL=BaseRoutingForwarder.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/metatx/BaseRoutingForwarder.d.ts.map b/dist/types/contracts/metatx/BaseRoutingForwarder.d.ts.map deleted file mode 100644 index b90457e6..00000000 --- a/dist/types/contracts/metatx/BaseRoutingForwarder.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"BaseRoutingForwarder.d.ts","sourceRoot":"","sources":["../../../../types/contracts/metatx/BaseRoutingForwarder.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,WAAW,EACX,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,aAAa,EACb,mBAAmB,EACpB,MAAM,cAAc,CAAC;AAEtB,MAAM,CAAC,OAAO,WAAW,UAAU,CAAC;IAClC,KAAY,oBAAoB,GAAG;QACjC,IAAI,EAAE,WAAW,CAAC;QAClB,KAAK,EAAE,YAAY,CAAC;QACpB,OAAO,EAAE,YAAY,CAAC;QACtB,IAAI,EAAE,SAAS,CAAC;KACjB,CAAC;IAEF,KAAY,0BAA0B,GAAG;QACvC,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,MAAM;QACb,OAAO,EAAE,MAAM;QACf,IAAI,EAAE,MAAM;KACb,GAAG;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;CACpE;AAED,MAAM,WAAW,6BAA8B,SAAQ,SAAS;IAC9D,WAAW,CACT,eAAe,EAAE,SAAS,GAAG,SAAS,GAAG,QAAQ,GAChD,gBAAgB,CAAC;IAEpB,kBAAkB,CAChB,gBAAgB,EAAE,SAAS,EAC3B,MAAM,EAAE,CAAC,UAAU,CAAC,oBAAoB,EAAE,SAAS,CAAC,GACnD,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,SAAS,EAC3B,MAAM,EAAE,CAAC,YAAY,CAAC,GACrB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,QAAQ,EAC1B,MAAM,EAAE,CAAC,UAAU,CAAC,oBAAoB,EAAE,SAAS,CAAC,GACnD,MAAM,CAAC;IAEV,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,oBAAoB,CAAC,gBAAgB,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;CAC3E;AAED,MAAM,WAAW,oBAAqB,SAAQ,YAAY;IACxD,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,oBAAoB,CAAC;IAC9D,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,6BAA6B,CAAC;IAEzC,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,OAAO,EAAE,mBAAmB,CAC1B;QAAC,GAAG,EAAE,UAAU,CAAC,oBAAoB;QAAE,SAAS,EAAE,SAAS;KAAC,EAC5D;QAAC,MAAM;KAAC,EACR,YAAY,CACb,CAAC;IAEF,OAAO,EAAE,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAExE,MAAM,EAAE,mBAAmB,CACzB;QAAC,GAAG,EAAE,UAAU,CAAC,oBAAoB;QAAE,SAAS,EAAE,SAAS;KAAC,EAC5D;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,WAAW,CACT,eAAe,EAAE,SAAS,GACzB,mBAAmB,CACpB;QAAC,GAAG,EAAE,UAAU,CAAC,oBAAoB;QAAE,SAAS,EAAE,SAAS;KAAC,EAC5D;QAAC,MAAM;KAAC,EACR,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,SAAS,GACzB,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAClE,WAAW,CACT,eAAe,EAAE,QAAQ,GACxB,mBAAmB,CACpB;QAAC,GAAG,EAAE,UAAU,CAAC,oBAAoB;QAAE,SAAS,EAAE,SAAS;KAAC,EAC5D;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,OAAO,EAAE,EAAE,CAAC;CACb"} \ No newline at end of file diff --git a/dist/types/contracts/metatx/BaseRoutingForwarder.js b/dist/types/contracts/metatx/BaseRoutingForwarder.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/metatx/BaseRoutingForwarder.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/metatx/CNSRegistryForwarder.d.ts b/dist/types/contracts/metatx/CNSRegistryForwarder.d.ts deleted file mode 100644 index 20908eec..00000000 --- a/dist/types/contracts/metatx/CNSRegistryForwarder.d.ts +++ /dev/null @@ -1,73 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../common"; -export declare namespace IForwarder { - type ForwardRequestStruct = { - from: AddressLike; - nonce: BigNumberish; - tokenId: BigNumberish; - data: BytesLike; - }; - type ForwardRequestStructOutput = [ - from: string, - nonce: bigint, - tokenId: bigint, - data: string - ] & { - from: string; - nonce: bigint; - tokenId: bigint; - data: string; - }; -} -export interface CNSRegistryForwarderInterface extends Interface { - getFunction(nameOrSignature: "execute" | "nonceOf" | "verify"): FunctionFragment; - encodeFunctionData(functionFragment: "execute", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; - encodeFunctionData(functionFragment: "nonceOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "verify", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; - decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "nonceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "verify", data: BytesLike): Result; -} -export interface CNSRegistryForwarder extends BaseContract { - connect(runner?: ContractRunner | null): CNSRegistryForwarder; - waitForDeployment(): Promise; - interface: CNSRegistryForwarderInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - execute: TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - string - ], "nonpayable">; - nonceOf: TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; - verify: TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - boolean - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "execute"): TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - string - ], "nonpayable">; - getFunction(nameOrSignature: "nonceOf"): TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; - getFunction(nameOrSignature: "verify"): TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - boolean - ], "view">; - filters: {}; -} -//# sourceMappingURL=CNSRegistryForwarder.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/metatx/CNSRegistryForwarder.d.ts.map b/dist/types/contracts/metatx/CNSRegistryForwarder.d.ts.map deleted file mode 100644 index a55b7a06..00000000 --- a/dist/types/contracts/metatx/CNSRegistryForwarder.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"CNSRegistryForwarder.d.ts","sourceRoot":"","sources":["../../../../types/contracts/metatx/CNSRegistryForwarder.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/metatx/CNSRegistryForwarder.js b/dist/types/contracts/metatx/CNSRegistryForwarder.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/metatx/CNSRegistryForwarder.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/metatx/ERC2771Context.d.ts b/dist/types/contracts/metatx/ERC2771Context.d.ts deleted file mode 100644 index ad0d6f3e..00000000 --- a/dist/types/contracts/metatx/ERC2771Context.d.ts +++ /dev/null @@ -1,46 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; -export interface ERC2771ContextInterface extends Interface { - getFunction(nameOrSignature: "isTrustedForwarder"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Initialized"): EventFragment; - encodeFunctionData(functionFragment: "isTrustedForwarder", values: [AddressLike]): string; - decodeFunctionResult(functionFragment: "isTrustedForwarder", data: BytesLike): Result; -} -export declare namespace InitializedEvent { - type InputTuple = [version: BigNumberish]; - type OutputTuple = [version: bigint]; - interface OutputObject { - version: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface ERC2771Context extends BaseContract { - connect(runner?: ContractRunner | null): ERC2771Context; - waitForDeployment(): Promise; - interface: ERC2771ContextInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - isTrustedForwarder: TypedContractMethod<[ - forwarder: AddressLike - ], [ - boolean - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "isTrustedForwarder"): TypedContractMethod<[forwarder: AddressLike], [boolean], "view">; - getEvent(key: "Initialized"): TypedContractEvent; - filters: { - "Initialized(uint8)": TypedContractEvent; - Initialized: TypedContractEvent; - }; -} -//# sourceMappingURL=ERC2771Context.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/metatx/ERC2771Context.d.ts.map b/dist/types/contracts/metatx/ERC2771Context.d.ts.map deleted file mode 100644 index 6ff383b2..00000000 --- a/dist/types/contracts/metatx/ERC2771Context.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ERC2771Context.d.ts","sourceRoot":"","sources":["../../../../types/contracts/metatx/ERC2771Context.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/metatx/ERC2771Context.js b/dist/types/contracts/metatx/ERC2771Context.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/metatx/ERC2771Context.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/metatx/ERC2771RegistryContext.d.ts b/dist/types/contracts/metatx/ERC2771RegistryContext.d.ts deleted file mode 100644 index 55a8683b..00000000 --- a/dist/types/contracts/metatx/ERC2771RegistryContext.d.ts +++ /dev/null @@ -1,46 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; -export interface ERC2771RegistryContextInterface extends Interface { - getFunction(nameOrSignature: "isTrustedForwarder"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Initialized"): EventFragment; - encodeFunctionData(functionFragment: "isTrustedForwarder", values: [AddressLike]): string; - decodeFunctionResult(functionFragment: "isTrustedForwarder", data: BytesLike): Result; -} -export declare namespace InitializedEvent { - type InputTuple = [version: BigNumberish]; - type OutputTuple = [version: bigint]; - interface OutputObject { - version: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface ERC2771RegistryContext extends BaseContract { - connect(runner?: ContractRunner | null): ERC2771RegistryContext; - waitForDeployment(): Promise; - interface: ERC2771RegistryContextInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - isTrustedForwarder: TypedContractMethod<[ - forwarder: AddressLike - ], [ - boolean - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "isTrustedForwarder"): TypedContractMethod<[forwarder: AddressLike], [boolean], "view">; - getEvent(key: "Initialized"): TypedContractEvent; - filters: { - "Initialized(uint8)": TypedContractEvent; - Initialized: TypedContractEvent; - }; -} -//# sourceMappingURL=ERC2771RegistryContext.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/metatx/ERC2771RegistryContext.d.ts.map b/dist/types/contracts/metatx/ERC2771RegistryContext.d.ts.map deleted file mode 100644 index 03da4c1d..00000000 --- a/dist/types/contracts/metatx/ERC2771RegistryContext.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ERC2771RegistryContext.d.ts","sourceRoot":"","sources":["../../../../types/contracts/metatx/ERC2771RegistryContext.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/metatx/ERC2771RegistryContext.js b/dist/types/contracts/metatx/ERC2771RegistryContext.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/metatx/ERC2771RegistryContext.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/metatx/Forwarder.d.ts b/dist/types/contracts/metatx/Forwarder.d.ts deleted file mode 100644 index 728cc6c0..00000000 --- a/dist/types/contracts/metatx/Forwarder.d.ts +++ /dev/null @@ -1,89 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; -export declare namespace IForwarder { - type ForwardRequestStruct = { - from: AddressLike; - nonce: BigNumberish; - tokenId: BigNumberish; - data: BytesLike; - }; - type ForwardRequestStructOutput = [ - from: string, - nonce: bigint, - tokenId: bigint, - data: string - ] & { - from: string; - nonce: bigint; - tokenId: bigint; - data: string; - }; -} -export interface ForwarderInterface extends Interface { - getFunction(nameOrSignature: "execute" | "nonceOf" | "verify"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Initialized"): EventFragment; - encodeFunctionData(functionFragment: "execute", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; - encodeFunctionData(functionFragment: "nonceOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "verify", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; - decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "nonceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "verify", data: BytesLike): Result; -} -export declare namespace InitializedEvent { - type InputTuple = [version: BigNumberish]; - type OutputTuple = [version: bigint]; - interface OutputObject { - version: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface Forwarder extends BaseContract { - connect(runner?: ContractRunner | null): Forwarder; - waitForDeployment(): Promise; - interface: ForwarderInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - execute: TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - string - ], "nonpayable">; - nonceOf: TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; - verify: TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - boolean - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "execute"): TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - string - ], "nonpayable">; - getFunction(nameOrSignature: "nonceOf"): TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; - getFunction(nameOrSignature: "verify"): TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - boolean - ], "view">; - getEvent(key: "Initialized"): TypedContractEvent; - filters: { - "Initialized(uint8)": TypedContractEvent; - Initialized: TypedContractEvent; - }; -} -//# sourceMappingURL=Forwarder.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/metatx/Forwarder.d.ts.map b/dist/types/contracts/metatx/Forwarder.d.ts.map deleted file mode 100644 index e639f4c3..00000000 --- a/dist/types/contracts/metatx/Forwarder.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Forwarder.d.ts","sourceRoot":"","sources":["../../../../types/contracts/metatx/Forwarder.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/metatx/Forwarder.js b/dist/types/contracts/metatx/Forwarder.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/metatx/Forwarder.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/metatx/IForwarder.d.ts b/dist/types/contracts/metatx/IForwarder.d.ts deleted file mode 100644 index ae0d468c..00000000 --- a/dist/types/contracts/metatx/IForwarder.d.ts +++ /dev/null @@ -1,73 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../common"; -export declare namespace IForwarder { - type ForwardRequestStruct = { - from: AddressLike; - nonce: BigNumberish; - tokenId: BigNumberish; - data: BytesLike; - }; - type ForwardRequestStructOutput = [ - from: string, - nonce: bigint, - tokenId: bigint, - data: string - ] & { - from: string; - nonce: bigint; - tokenId: bigint; - data: string; - }; -} -export interface IForwarderInterface extends Interface { - getFunction(nameOrSignature: "execute" | "nonceOf" | "verify"): FunctionFragment; - encodeFunctionData(functionFragment: "execute", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; - encodeFunctionData(functionFragment: "nonceOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "verify", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; - decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "nonceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "verify", data: BytesLike): Result; -} -export interface IForwarder extends BaseContract { - connect(runner?: ContractRunner | null): IForwarder; - waitForDeployment(): Promise; - interface: IForwarderInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - execute: TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - string - ], "nonpayable">; - nonceOf: TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; - verify: TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - boolean - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "execute"): TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - string - ], "nonpayable">; - getFunction(nameOrSignature: "nonceOf"): TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; - getFunction(nameOrSignature: "verify"): TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - boolean - ], "view">; - filters: {}; -} -//# sourceMappingURL=IForwarder.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/metatx/IForwarder.d.ts.map b/dist/types/contracts/metatx/IForwarder.d.ts.map deleted file mode 100644 index ae76e5f2..00000000 --- a/dist/types/contracts/metatx/IForwarder.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IForwarder.d.ts","sourceRoot":"","sources":["../../../../types/contracts/metatx/IForwarder.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/metatx/IForwarder.js b/dist/types/contracts/metatx/IForwarder.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/metatx/IForwarder.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/metatx/MintingManagerForwarder.d.ts b/dist/types/contracts/metatx/MintingManagerForwarder.d.ts deleted file mode 100644 index 8d406e5a..00000000 --- a/dist/types/contracts/metatx/MintingManagerForwarder.d.ts +++ /dev/null @@ -1,73 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../common"; -export declare namespace IForwarder { - type ForwardRequestStruct = { - from: AddressLike; - nonce: BigNumberish; - tokenId: BigNumberish; - data: BytesLike; - }; - type ForwardRequestStructOutput = [ - from: string, - nonce: bigint, - tokenId: bigint, - data: string - ] & { - from: string; - nonce: bigint; - tokenId: bigint; - data: string; - }; -} -export interface MintingManagerForwarderInterface extends Interface { - getFunction(nameOrSignature: "execute" | "nonceOf" | "verify"): FunctionFragment; - encodeFunctionData(functionFragment: "execute", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; - encodeFunctionData(functionFragment: "nonceOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "verify", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; - decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "nonceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "verify", data: BytesLike): Result; -} -export interface MintingManagerForwarder extends BaseContract { - connect(runner?: ContractRunner | null): MintingManagerForwarder; - waitForDeployment(): Promise; - interface: MintingManagerForwarderInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - execute: TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - string - ], "nonpayable">; - nonceOf: TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; - verify: TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - boolean - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "execute"): TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - string - ], "nonpayable">; - getFunction(nameOrSignature: "nonceOf"): TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; - getFunction(nameOrSignature: "verify"): TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - boolean - ], "view">; - filters: {}; -} -//# sourceMappingURL=MintingManagerForwarder.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/metatx/MintingManagerForwarder.d.ts.map b/dist/types/contracts/metatx/MintingManagerForwarder.d.ts.map deleted file mode 100644 index 0f441a56..00000000 --- a/dist/types/contracts/metatx/MintingManagerForwarder.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"MintingManagerForwarder.d.ts","sourceRoot":"","sources":["../../../../types/contracts/metatx/MintingManagerForwarder.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/metatx/MintingManagerForwarder.js b/dist/types/contracts/metatx/MintingManagerForwarder.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/metatx/MintingManagerForwarder.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/metatx/ResolverForwarder.d.ts b/dist/types/contracts/metatx/ResolverForwarder.d.ts deleted file mode 100644 index 8e77b62d..00000000 --- a/dist/types/contracts/metatx/ResolverForwarder.d.ts +++ /dev/null @@ -1,73 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../common"; -export declare namespace IForwarder { - type ForwardRequestStruct = { - from: AddressLike; - nonce: BigNumberish; - tokenId: BigNumberish; - data: BytesLike; - }; - type ForwardRequestStructOutput = [ - from: string, - nonce: bigint, - tokenId: bigint, - data: string - ] & { - from: string; - nonce: bigint; - tokenId: bigint; - data: string; - }; -} -export interface ResolverForwarderInterface extends Interface { - getFunction(nameOrSignature: "execute" | "nonceOf" | "verify"): FunctionFragment; - encodeFunctionData(functionFragment: "execute", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; - encodeFunctionData(functionFragment: "nonceOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "verify", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; - decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "nonceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "verify", data: BytesLike): Result; -} -export interface ResolverForwarder extends BaseContract { - connect(runner?: ContractRunner | null): ResolverForwarder; - waitForDeployment(): Promise; - interface: ResolverForwarderInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - execute: TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - string - ], "nonpayable">; - nonceOf: TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; - verify: TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - boolean - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "execute"): TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - string - ], "nonpayable">; - getFunction(nameOrSignature: "nonceOf"): TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; - getFunction(nameOrSignature: "verify"): TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - boolean - ], "view">; - filters: {}; -} -//# sourceMappingURL=ResolverForwarder.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/metatx/ResolverForwarder.d.ts.map b/dist/types/contracts/metatx/ResolverForwarder.d.ts.map deleted file mode 100644 index 8e820fa7..00000000 --- a/dist/types/contracts/metatx/ResolverForwarder.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ResolverForwarder.d.ts","sourceRoot":"","sources":["../../../../types/contracts/metatx/ResolverForwarder.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/metatx/ResolverForwarder.js b/dist/types/contracts/metatx/ResolverForwarder.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/metatx/ResolverForwarder.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/metatx/UNSRegistryForwarder.d.ts b/dist/types/contracts/metatx/UNSRegistryForwarder.d.ts deleted file mode 100644 index 0f6ba8f2..00000000 --- a/dist/types/contracts/metatx/UNSRegistryForwarder.d.ts +++ /dev/null @@ -1,89 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; -export declare namespace IForwarder { - type ForwardRequestStruct = { - from: AddressLike; - nonce: BigNumberish; - tokenId: BigNumberish; - data: BytesLike; - }; - type ForwardRequestStructOutput = [ - from: string, - nonce: bigint, - tokenId: bigint, - data: string - ] & { - from: string; - nonce: bigint; - tokenId: bigint; - data: string; - }; -} -export interface UNSRegistryForwarderInterface extends Interface { - getFunction(nameOrSignature: "execute" | "nonceOf" | "verify"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Initialized"): EventFragment; - encodeFunctionData(functionFragment: "execute", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; - encodeFunctionData(functionFragment: "nonceOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "verify", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; - decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "nonceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "verify", data: BytesLike): Result; -} -export declare namespace InitializedEvent { - type InputTuple = [version: BigNumberish]; - type OutputTuple = [version: bigint]; - interface OutputObject { - version: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface UNSRegistryForwarder extends BaseContract { - connect(runner?: ContractRunner | null): UNSRegistryForwarder; - waitForDeployment(): Promise; - interface: UNSRegistryForwarderInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - execute: TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - string - ], "nonpayable">; - nonceOf: TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; - verify: TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - boolean - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "execute"): TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - string - ], "nonpayable">; - getFunction(nameOrSignature: "nonceOf"): TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; - getFunction(nameOrSignature: "verify"): TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - boolean - ], "view">; - getEvent(key: "Initialized"): TypedContractEvent; - filters: { - "Initialized(uint8)": TypedContractEvent; - Initialized: TypedContractEvent; - }; -} -//# sourceMappingURL=UNSRegistryForwarder.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/metatx/UNSRegistryForwarder.d.ts.map b/dist/types/contracts/metatx/UNSRegistryForwarder.d.ts.map deleted file mode 100644 index 6a7411a0..00000000 --- a/dist/types/contracts/metatx/UNSRegistryForwarder.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"UNSRegistryForwarder.d.ts","sourceRoot":"","sources":["../../../../types/contracts/metatx/UNSRegistryForwarder.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,aAAa,EACb,WAAW,EACX,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,mBAAmB,EACnB,aAAa,EACb,mBAAmB,EACpB,MAAM,cAAc,CAAC;AAEtB,MAAM,CAAC,OAAO,WAAW,UAAU,CAAC;IAClC,KAAY,oBAAoB,GAAG;QACjC,IAAI,EAAE,WAAW,CAAC;QAClB,KAAK,EAAE,YAAY,CAAC;QACpB,OAAO,EAAE,YAAY,CAAC;QACtB,IAAI,EAAE,SAAS,CAAC;KACjB,CAAC;IAEF,KAAY,0BAA0B,GAAG;QACvC,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,MAAM;QACb,OAAO,EAAE,MAAM;QACf,IAAI,EAAE,MAAM;KACb,GAAG;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;CACpE;AAED,MAAM,WAAW,6BAA8B,SAAQ,SAAS;IAC9D,WAAW,CACT,eAAe,EAAE,SAAS,GAAG,SAAS,GAAG,QAAQ,GAChD,gBAAgB,CAAC;IAEpB,QAAQ,CAAC,sBAAsB,EAAE,aAAa,GAAG,aAAa,CAAC;IAE/D,kBAAkB,CAChB,gBAAgB,EAAE,SAAS,EAC3B,MAAM,EAAE,CAAC,UAAU,CAAC,oBAAoB,EAAE,SAAS,CAAC,GACnD,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,SAAS,EAC3B,MAAM,EAAE,CAAC,YAAY,CAAC,GACrB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,QAAQ,EAC1B,MAAM,EAAE,CAAC,UAAU,CAAC,oBAAoB,EAAE,SAAS,CAAC,GACnD,MAAM,CAAC;IAEV,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,oBAAoB,CAAC,gBAAgB,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;CAC3E;AAED,yBAAiB,gBAAgB,CAAC;IAChC,KAAY,UAAU,GAAG,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IACjD,KAAY,WAAW,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC5C,UAAiB,YAAY;QAC3B,OAAO,EAAE,MAAM,CAAC;KACjB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,MAAM,WAAW,oBAAqB,SAAQ,YAAY;IACxD,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,oBAAoB,CAAC;IAC9D,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,6BAA6B,CAAC;IAEzC,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,OAAO,EAAE,mBAAmB,CAC1B;QAAC,GAAG,EAAE,UAAU,CAAC,oBAAoB;QAAE,SAAS,EAAE,SAAS;KAAC,EAC5D;QAAC,MAAM;KAAC,EACR,YAAY,CACb,CAAC;IAEF,OAAO,EAAE,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAExE,MAAM,EAAE,mBAAmB,CACzB;QAAC,GAAG,EAAE,UAAU,CAAC,oBAAoB;QAAE,SAAS,EAAE,SAAS;KAAC,EAC5D;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,WAAW,CACT,eAAe,EAAE,SAAS,GACzB,mBAAmB,CACpB;QAAC,GAAG,EAAE,UAAU,CAAC,oBAAoB;QAAE,SAAS,EAAE,SAAS;KAAC,EAC5D;QAAC,MAAM;KAAC,EACR,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,SAAS,GACzB,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAClE,WAAW,CACT,eAAe,EAAE,QAAQ,GACxB,mBAAmB,CACpB;QAAC,GAAG,EAAE,UAAU,CAAC,oBAAoB;QAAE,SAAS,EAAE,SAAS;KAAC,EAC5D;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,QAAQ,CACN,GAAG,EAAE,aAAa,GACjB,kBAAkB,CACnB,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;IAEF,OAAO,EAAE;QACP,oBAAoB,EAAE,kBAAkB,CACtC,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QACF,WAAW,EAAE,kBAAkB,CAC7B,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;KACH,CAAC;CACH"} \ No newline at end of file diff --git a/dist/types/contracts/metatx/UNSRegistryForwarder.js b/dist/types/contracts/metatx/UNSRegistryForwarder.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/metatx/UNSRegistryForwarder.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/metatx/index.d.ts b/dist/types/contracts/metatx/index.d.ts deleted file mode 100644 index fabe1494..00000000 --- a/dist/types/contracts/metatx/index.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -export type { BaseForwarder } from "./BaseForwarder"; -export type { BaseRoutingForwarder } from "./BaseRoutingForwarder"; -export type { CNSRegistryForwarder } from "./CNSRegistryForwarder"; -export type { ERC2771Context } from "./ERC2771Context"; -export type { ERC2771RegistryContext } from "./ERC2771RegistryContext"; -export type { Forwarder } from "./Forwarder"; -export type { IForwarder } from "./IForwarder"; -export type { MintingManagerForwarder } from "./MintingManagerForwarder"; -export type { ResolverForwarder } from "./ResolverForwarder"; -export type { UNSRegistryForwarder } from "./UNSRegistryForwarder"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/metatx/index.d.ts.map b/dist/types/contracts/metatx/index.d.ts.map deleted file mode 100644 index 12c3b8f0..00000000 --- a/dist/types/contracts/metatx/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../types/contracts/metatx/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,YAAY,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACnE,YAAY,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACnE,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,YAAY,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AACvE,YAAY,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,YAAY,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,YAAY,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACzE,YAAY,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,YAAY,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC"} \ No newline at end of file diff --git a/dist/types/contracts/metatx/index.js b/dist/types/contracts/metatx/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/metatx/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/mocks/BaseForwarderMock.d.ts b/dist/types/contracts/mocks/BaseForwarderMock.d.ts deleted file mode 100644 index 3a3efd37..00000000 --- a/dist/types/contracts/mocks/BaseForwarderMock.d.ts +++ /dev/null @@ -1,89 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../common"; -export declare namespace IForwarder { - type ForwardRequestStruct = { - from: AddressLike; - nonce: BigNumberish; - tokenId: BigNumberish; - data: BytesLike; - }; - type ForwardRequestStructOutput = [ - from: string, - nonce: bigint, - tokenId: bigint, - data: string - ] & { - from: string; - nonce: bigint; - tokenId: bigint; - data: string; - }; -} -export interface BaseForwarderMockInterface extends Interface { - getFunction(nameOrSignature: "execute" | "hasAsset" | "mintAsset" | "nonceOf" | "revertWithReason" | "revertWithoutReason" | "verify"): FunctionFragment; - encodeFunctionData(functionFragment: "execute", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; - encodeFunctionData(functionFragment: "hasAsset", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "mintAsset", values?: undefined): string; - encodeFunctionData(functionFragment: "nonceOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "revertWithReason", values?: undefined): string; - encodeFunctionData(functionFragment: "revertWithoutReason", values?: undefined): string; - encodeFunctionData(functionFragment: "verify", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; - decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "hasAsset", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "mintAsset", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "nonceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "revertWithReason", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "revertWithoutReason", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "verify", data: BytesLike): Result; -} -export interface BaseForwarderMock extends BaseContract { - connect(runner?: ContractRunner | null): BaseForwarderMock; - waitForDeployment(): Promise; - interface: BaseForwarderMockInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - execute: TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - string - ], "nonpayable">; - hasAsset: TypedContractMethod<[addr: AddressLike], [boolean], "view">; - mintAsset: TypedContractMethod<[], [void], "nonpayable">; - nonceOf: TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; - revertWithReason: TypedContractMethod<[], [void], "view">; - revertWithoutReason: TypedContractMethod<[], [void], "view">; - verify: TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - boolean - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "execute"): TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - string - ], "nonpayable">; - getFunction(nameOrSignature: "hasAsset"): TypedContractMethod<[addr: AddressLike], [boolean], "view">; - getFunction(nameOrSignature: "mintAsset"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "nonceOf"): TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; - getFunction(nameOrSignature: "revertWithReason"): TypedContractMethod<[], [void], "view">; - getFunction(nameOrSignature: "revertWithoutReason"): TypedContractMethod<[], [void], "view">; - getFunction(nameOrSignature: "verify"): TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - boolean - ], "view">; - filters: {}; -} -//# sourceMappingURL=BaseForwarderMock.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/mocks/BaseForwarderMock.d.ts.map b/dist/types/contracts/mocks/BaseForwarderMock.d.ts.map deleted file mode 100644 index d21ab742..00000000 --- a/dist/types/contracts/mocks/BaseForwarderMock.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"BaseForwarderMock.d.ts","sourceRoot":"","sources":["../../../../types/contracts/mocks/BaseForwarderMock.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/mocks/BaseForwarderMock.js b/dist/types/contracts/mocks/BaseForwarderMock.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/mocks/BaseForwarderMock.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/mocks/BaseRoutingForwarderMock.d.ts b/dist/types/contracts/mocks/BaseRoutingForwarderMock.d.ts deleted file mode 100644 index 5fb36ece..00000000 --- a/dist/types/contracts/mocks/BaseRoutingForwarderMock.d.ts +++ /dev/null @@ -1,131 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../common"; -export declare namespace IForwarder { - type ForwardRequestStruct = { - from: AddressLike; - nonce: BigNumberish; - tokenId: BigNumberish; - data: BytesLike; - }; - type ForwardRequestStructOutput = [ - from: string, - nonce: bigint, - tokenId: bigint, - data: string - ] & { - from: string; - nonce: bigint; - tokenId: bigint; - data: string; - }; -} -export interface BaseRoutingForwarderMockInterface extends Interface { - getFunction(nameOrSignature: "buildRouteData" | "execute" | "nonceOf" | "putString" | "putStringFor" | "putUint" | "putUintArr" | "putUintArrFor" | "putUintFor" | "verify"): FunctionFragment; - encodeFunctionData(functionFragment: "buildRouteData", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; - encodeFunctionData(functionFragment: "execute", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; - encodeFunctionData(functionFragment: "nonceOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "putString", values: [string]): string; - encodeFunctionData(functionFragment: "putStringFor", values: [string, BytesLike]): string; - encodeFunctionData(functionFragment: "putUint", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "putUintArr", values: [BigNumberish[]]): string; - encodeFunctionData(functionFragment: "putUintArrFor", values: [BigNumberish[], BytesLike]): string; - encodeFunctionData(functionFragment: "putUintFor", values: [BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "verify", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; - decodeFunctionResult(functionFragment: "buildRouteData", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "nonceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "putString", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "putStringFor", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "putUint", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "putUintArr", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "putUintArrFor", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "putUintFor", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "verify", data: BytesLike): Result; -} -export interface BaseRoutingForwarderMock extends BaseContract { - connect(runner?: ContractRunner | null): BaseRoutingForwarderMock; - waitForDeployment(): Promise; - interface: BaseRoutingForwarderMockInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - buildRouteData: TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - string - ], "view">; - execute: TypedContractMethod<[ - arg0: IForwarder.ForwardRequestStruct, - arg1: BytesLike - ], [ - string - ], "view">; - nonceOf: TypedContractMethod<[arg0: BigNumberish], [bigint], "view">; - putString: TypedContractMethod<[arg0: string], [void], "view">; - putStringFor: TypedContractMethod<[ - arg0: string, - arg1: BytesLike - ], [ - void - ], "view">; - putUint: TypedContractMethod<[arg0: BigNumberish], [void], "view">; - putUintArr: TypedContractMethod<[arg0: BigNumberish[]], [void], "view">; - putUintArrFor: TypedContractMethod<[ - arg0: BigNumberish[], - arg1: BytesLike - ], [ - void - ], "view">; - putUintFor: TypedContractMethod<[ - arg0: BigNumberish, - arg1: BytesLike - ], [ - void - ], "view">; - verify: TypedContractMethod<[ - arg0: IForwarder.ForwardRequestStruct, - arg1: BytesLike - ], [ - boolean - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "buildRouteData"): TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - string - ], "view">; - getFunction(nameOrSignature: "execute"): TypedContractMethod<[ - arg0: IForwarder.ForwardRequestStruct, - arg1: BytesLike - ], [ - string - ], "view">; - getFunction(nameOrSignature: "nonceOf"): TypedContractMethod<[arg0: BigNumberish], [bigint], "view">; - getFunction(nameOrSignature: "putString"): TypedContractMethod<[arg0: string], [void], "view">; - getFunction(nameOrSignature: "putStringFor"): TypedContractMethod<[arg0: string, arg1: BytesLike], [void], "view">; - getFunction(nameOrSignature: "putUint"): TypedContractMethod<[arg0: BigNumberish], [void], "view">; - getFunction(nameOrSignature: "putUintArr"): TypedContractMethod<[arg0: BigNumberish[]], [void], "view">; - getFunction(nameOrSignature: "putUintArrFor"): TypedContractMethod<[ - arg0: BigNumberish[], - arg1: BytesLike - ], [ - void - ], "view">; - getFunction(nameOrSignature: "putUintFor"): TypedContractMethod<[arg0: BigNumberish, arg1: BytesLike], [void], "view">; - getFunction(nameOrSignature: "verify"): TypedContractMethod<[ - arg0: IForwarder.ForwardRequestStruct, - arg1: BytesLike - ], [ - boolean - ], "view">; - filters: {}; -} -//# sourceMappingURL=BaseRoutingForwarderMock.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/mocks/BaseRoutingForwarderMock.d.ts.map b/dist/types/contracts/mocks/BaseRoutingForwarderMock.d.ts.map deleted file mode 100644 index 3fd01e2e..00000000 --- a/dist/types/contracts/mocks/BaseRoutingForwarderMock.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"BaseRoutingForwarderMock.d.ts","sourceRoot":"","sources":["../../../../types/contracts/mocks/BaseRoutingForwarderMock.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/mocks/BaseRoutingForwarderMock.js b/dist/types/contracts/mocks/BaseRoutingForwarderMock.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/mocks/BaseRoutingForwarderMock.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/mocks/ERC1155Mock.d.ts b/dist/types/contracts/mocks/ERC1155Mock.d.ts deleted file mode 100644 index 5a21b72b..00000000 --- a/dist/types/contracts/mocks/ERC1155Mock.d.ts +++ /dev/null @@ -1,517 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; -export interface ERC1155MockInterface extends Interface { - getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE" | "MINTER_ROLE" | "PAUSER_ROLE" | "balanceOf" | "balanceOfBatch" | "burn" | "burnBatch" | "getRoleAdmin" | "getRoleMember" | "getRoleMemberCount" | "grantRole" | "hasRole" | "initialize" | "isApprovedForAll" | "mint" | "mintBatch" | "pause" | "paused" | "renounceRole" | "revokeRole" | "safeBatchTransferFrom" | "safeTransferFrom" | "setApprovalForAll" | "supportsInterface" | "unpause" | "uri"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "ApprovalForAll" | "Initialized" | "Paused" | "RoleAdminChanged" | "RoleGranted" | "RoleRevoked" | "TransferBatch" | "TransferSingle" | "URI" | "Unpaused"): EventFragment; - encodeFunctionData(functionFragment: "DEFAULT_ADMIN_ROLE", values?: undefined): string; - encodeFunctionData(functionFragment: "MINTER_ROLE", values?: undefined): string; - encodeFunctionData(functionFragment: "PAUSER_ROLE", values?: undefined): string; - encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "balanceOfBatch", values: [AddressLike[], BigNumberish[]]): string; - encodeFunctionData(functionFragment: "burn", values: [AddressLike, BigNumberish, BigNumberish]): string; - encodeFunctionData(functionFragment: "burnBatch", values: [AddressLike, BigNumberish[], BigNumberish[]]): string; - encodeFunctionData(functionFragment: "getRoleAdmin", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "getRoleMember", values: [BytesLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "getRoleMemberCount", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "grantRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "hasRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "initialize", values: [string]): string; - encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "mint", values: [AddressLike, BigNumberish, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "mintBatch", values: [AddressLike, BigNumberish[], BigNumberish[], BytesLike]): string; - encodeFunctionData(functionFragment: "pause", values?: undefined): string; - encodeFunctionData(functionFragment: "paused", values?: undefined): string; - encodeFunctionData(functionFragment: "renounceRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "revokeRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "safeBatchTransferFrom", values: [ - AddressLike, - AddressLike, - BigNumberish[], - BigNumberish[], - BytesLike - ]): string; - encodeFunctionData(functionFragment: "safeTransferFrom", values: [AddressLike, AddressLike, BigNumberish, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "unpause", values?: undefined): string; - encodeFunctionData(functionFragment: "uri", values: [BigNumberish]): string; - decodeFunctionResult(functionFragment: "DEFAULT_ADMIN_ROLE", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "MINTER_ROLE", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "PAUSER_ROLE", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOfBatch", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "burn", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "burnBatch", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getRoleAdmin", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getRoleMember", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getRoleMemberCount", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "grantRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "hasRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "mint", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "mintBatch", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "pause", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "paused", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "revokeRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeBatchTransferFrom", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "unpause", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "uri", data: BytesLike): Result; -} -export declare namespace ApprovalForAllEvent { - type InputTuple = [ - account: AddressLike, - operator: AddressLike, - approved: boolean - ]; - type OutputTuple = [ - account: string, - operator: string, - approved: boolean - ]; - interface OutputObject { - account: string; - operator: string; - approved: boolean; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace InitializedEvent { - type InputTuple = [version: BigNumberish]; - type OutputTuple = [version: bigint]; - interface OutputObject { - version: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace PausedEvent { - type InputTuple = [account: AddressLike]; - type OutputTuple = [account: string]; - interface OutputObject { - account: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RoleAdminChangedEvent { - type InputTuple = [ - role: BytesLike, - previousAdminRole: BytesLike, - newAdminRole: BytesLike - ]; - type OutputTuple = [ - role: string, - previousAdminRole: string, - newAdminRole: string - ]; - interface OutputObject { - role: string; - previousAdminRole: string; - newAdminRole: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RoleGrantedEvent { - type InputTuple = [ - role: BytesLike, - account: AddressLike, - sender: AddressLike - ]; - type OutputTuple = [role: string, account: string, sender: string]; - interface OutputObject { - role: string; - account: string; - sender: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RoleRevokedEvent { - type InputTuple = [ - role: BytesLike, - account: AddressLike, - sender: AddressLike - ]; - type OutputTuple = [role: string, account: string, sender: string]; - interface OutputObject { - role: string; - account: string; - sender: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferBatchEvent { - type InputTuple = [ - operator: AddressLike, - from: AddressLike, - to: AddressLike, - ids: BigNumberish[], - values: BigNumberish[] - ]; - type OutputTuple = [ - operator: string, - from: string, - to: string, - ids: bigint[], - values: bigint[] - ]; - interface OutputObject { - operator: string; - from: string; - to: string; - ids: bigint[]; - values: bigint[]; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferSingleEvent { - type InputTuple = [ - operator: AddressLike, - from: AddressLike, - to: AddressLike, - id: BigNumberish, - value: BigNumberish - ]; - type OutputTuple = [ - operator: string, - from: string, - to: string, - id: bigint, - value: bigint - ]; - interface OutputObject { - operator: string; - from: string; - to: string; - id: bigint; - value: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace URIEvent { - type InputTuple = [value: string, id: BigNumberish]; - type OutputTuple = [value: string, id: bigint]; - interface OutputObject { - value: string; - id: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace UnpausedEvent { - type InputTuple = [account: AddressLike]; - type OutputTuple = [account: string]; - interface OutputObject { - account: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface ERC1155Mock extends BaseContract { - connect(runner?: ContractRunner | null): ERC1155Mock; - waitForDeployment(): Promise; - interface: ERC1155MockInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - DEFAULT_ADMIN_ROLE: TypedContractMethod<[], [string], "view">; - MINTER_ROLE: TypedContractMethod<[], [string], "view">; - PAUSER_ROLE: TypedContractMethod<[], [string], "view">; - balanceOf: TypedContractMethod<[ - account: AddressLike, - id: BigNumberish - ], [ - bigint - ], "view">; - balanceOfBatch: TypedContractMethod<[ - accounts: AddressLike[], - ids: BigNumberish[] - ], [ - bigint[] - ], "view">; - burn: TypedContractMethod<[ - account: AddressLike, - id: BigNumberish, - value: BigNumberish - ], [ - void - ], "nonpayable">; - burnBatch: TypedContractMethod<[ - account: AddressLike, - ids: BigNumberish[], - values: BigNumberish[] - ], [ - void - ], "nonpayable">; - getRoleAdmin: TypedContractMethod<[role: BytesLike], [string], "view">; - getRoleMember: TypedContractMethod<[ - role: BytesLike, - index: BigNumberish - ], [ - string - ], "view">; - getRoleMemberCount: TypedContractMethod<[role: BytesLike], [bigint], "view">; - grantRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - hasRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - boolean - ], "view">; - initialize: TypedContractMethod<[uri: string], [void], "nonpayable">; - isApprovedForAll: TypedContractMethod<[ - account: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - mint: TypedContractMethod<[ - to: AddressLike, - id: BigNumberish, - amount: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - mintBatch: TypedContractMethod<[ - to: AddressLike, - ids: BigNumberish[], - amounts: BigNumberish[], - data: BytesLike - ], [ - void - ], "nonpayable">; - pause: TypedContractMethod<[], [void], "nonpayable">; - paused: TypedContractMethod<[], [boolean], "view">; - renounceRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - revokeRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - safeBatchTransferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - ids: BigNumberish[], - amounts: BigNumberish[], - data: BytesLike - ], [ - void - ], "nonpayable">; - safeTransferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - id: BigNumberish, - amount: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - setApprovalForAll: TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - unpause: TypedContractMethod<[], [void], "nonpayable">; - uri: TypedContractMethod<[arg0: BigNumberish], [string], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "MINTER_ROLE"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "PAUSER_ROLE"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[ - account: AddressLike, - id: BigNumberish - ], [ - bigint - ], "view">; - getFunction(nameOrSignature: "balanceOfBatch"): TypedContractMethod<[ - accounts: AddressLike[], - ids: BigNumberish[] - ], [ - bigint[] - ], "view">; - getFunction(nameOrSignature: "burn"): TypedContractMethod<[ - account: AddressLike, - id: BigNumberish, - value: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "burnBatch"): TypedContractMethod<[ - account: AddressLike, - ids: BigNumberish[], - values: BigNumberish[] - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "getRoleAdmin"): TypedContractMethod<[role: BytesLike], [string], "view">; - getFunction(nameOrSignature: "getRoleMember"): TypedContractMethod<[ - role: BytesLike, - index: BigNumberish - ], [ - string - ], "view">; - getFunction(nameOrSignature: "getRoleMemberCount"): TypedContractMethod<[role: BytesLike], [bigint], "view">; - getFunction(nameOrSignature: "grantRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "hasRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "initialize"): TypedContractMethod<[uri: string], [void], "nonpayable">; - getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ - account: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "mint"): TypedContractMethod<[ - to: AddressLike, - id: BigNumberish, - amount: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "mintBatch"): TypedContractMethod<[ - to: AddressLike, - ids: BigNumberish[], - amounts: BigNumberish[], - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "pause"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "paused"): TypedContractMethod<[], [boolean], "view">; - getFunction(nameOrSignature: "renounceRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "revokeRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeBatchTransferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - ids: BigNumberish[], - amounts: BigNumberish[], - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - id: BigNumberish, - amount: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "unpause"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "uri"): TypedContractMethod<[arg0: BigNumberish], [string], "view">; - getEvent(key: "ApprovalForAll"): TypedContractEvent; - getEvent(key: "Initialized"): TypedContractEvent; - getEvent(key: "Paused"): TypedContractEvent; - getEvent(key: "RoleAdminChanged"): TypedContractEvent; - getEvent(key: "RoleGranted"): TypedContractEvent; - getEvent(key: "RoleRevoked"): TypedContractEvent; - getEvent(key: "TransferBatch"): TypedContractEvent; - getEvent(key: "TransferSingle"): TypedContractEvent; - getEvent(key: "URI"): TypedContractEvent; - getEvent(key: "Unpaused"): TypedContractEvent; - filters: { - "ApprovalForAll(address,address,bool)": TypedContractEvent; - ApprovalForAll: TypedContractEvent; - "Initialized(uint8)": TypedContractEvent; - Initialized: TypedContractEvent; - "Paused(address)": TypedContractEvent; - Paused: TypedContractEvent; - "RoleAdminChanged(bytes32,bytes32,bytes32)": TypedContractEvent; - RoleAdminChanged: TypedContractEvent; - "RoleGranted(bytes32,address,address)": TypedContractEvent; - RoleGranted: TypedContractEvent; - "RoleRevoked(bytes32,address,address)": TypedContractEvent; - RoleRevoked: TypedContractEvent; - "TransferBatch(address,address,address,uint256[],uint256[])": TypedContractEvent; - TransferBatch: TypedContractEvent; - "TransferSingle(address,address,address,uint256,uint256)": TypedContractEvent; - TransferSingle: TypedContractEvent; - "URI(string,uint256)": TypedContractEvent; - URI: TypedContractEvent; - "Unpaused(address)": TypedContractEvent; - Unpaused: TypedContractEvent; - }; -} -//# sourceMappingURL=ERC1155Mock.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/mocks/ERC1155Mock.d.ts.map b/dist/types/contracts/mocks/ERC1155Mock.d.ts.map deleted file mode 100644 index 71ee456c..00000000 --- a/dist/types/contracts/mocks/ERC1155Mock.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ERC1155Mock.d.ts","sourceRoot":"","sources":["../../../../types/contracts/mocks/ERC1155Mock.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/mocks/ERC1155Mock.js b/dist/types/contracts/mocks/ERC1155Mock.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/mocks/ERC1155Mock.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/mocks/ERC20Mock.d.ts b/dist/types/contracts/mocks/ERC20Mock.d.ts deleted file mode 100644 index 222e2553..00000000 --- a/dist/types/contracts/mocks/ERC20Mock.d.ts +++ /dev/null @@ -1,184 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; -export interface ERC20MockInterface extends Interface { - getFunction(nameOrSignature: "allowance" | "approve" | "balanceOf" | "decimals" | "decreaseAllowance" | "increaseAllowance" | "mint" | "name" | "symbol" | "totalSupply" | "transfer" | "transferFrom"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Approval" | "Transfer"): EventFragment; - encodeFunctionData(functionFragment: "allowance", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "decimals", values?: undefined): string; - encodeFunctionData(functionFragment: "decreaseAllowance", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "increaseAllowance", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "mint", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "name", values?: undefined): string; - encodeFunctionData(functionFragment: "symbol", values?: undefined): string; - encodeFunctionData(functionFragment: "totalSupply", values?: undefined): string; - encodeFunctionData(functionFragment: "transfer", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; - decodeFunctionResult(functionFragment: "allowance", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "decimals", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "decreaseAllowance", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "increaseAllowance", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "mint", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "totalSupply", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transfer", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; -} -export declare namespace ApprovalEvent { - type InputTuple = [ - owner: AddressLike, - spender: AddressLike, - value: BigNumberish - ]; - type OutputTuple = [owner: string, spender: string, value: bigint]; - interface OutputObject { - owner: string; - spender: string; - value: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferEvent { - type InputTuple = [ - from: AddressLike, - to: AddressLike, - value: BigNumberish - ]; - type OutputTuple = [from: string, to: string, value: bigint]; - interface OutputObject { - from: string; - to: string; - value: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface ERC20Mock extends BaseContract { - connect(runner?: ContractRunner | null): ERC20Mock; - waitForDeployment(): Promise; - interface: ERC20MockInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - allowance: TypedContractMethod<[ - owner: AddressLike, - spender: AddressLike - ], [ - bigint - ], "view">; - approve: TypedContractMethod<[ - spender: AddressLike, - amount: BigNumberish - ], [ - boolean - ], "nonpayable">; - balanceOf: TypedContractMethod<[account: AddressLike], [bigint], "view">; - decimals: TypedContractMethod<[], [bigint], "view">; - decreaseAllowance: TypedContractMethod<[ - spender: AddressLike, - subtractedValue: BigNumberish - ], [ - boolean - ], "nonpayable">; - increaseAllowance: TypedContractMethod<[ - spender: AddressLike, - addedValue: BigNumberish - ], [ - boolean - ], "nonpayable">; - mint: TypedContractMethod<[ - account: AddressLike, - amount: BigNumberish - ], [ - void - ], "nonpayable">; - name: TypedContractMethod<[], [string], "view">; - symbol: TypedContractMethod<[], [string], "view">; - totalSupply: TypedContractMethod<[], [bigint], "view">; - transfer: TypedContractMethod<[ - to: AddressLike, - amount: BigNumberish - ], [ - boolean - ], "nonpayable">; - transferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - amount: BigNumberish - ], [ - boolean - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "allowance"): TypedContractMethod<[ - owner: AddressLike, - spender: AddressLike - ], [ - bigint - ], "view">; - getFunction(nameOrSignature: "approve"): TypedContractMethod<[ - spender: AddressLike, - amount: BigNumberish - ], [ - boolean - ], "nonpayable">; - getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[account: AddressLike], [bigint], "view">; - getFunction(nameOrSignature: "decimals"): TypedContractMethod<[], [bigint], "view">; - getFunction(nameOrSignature: "decreaseAllowance"): TypedContractMethod<[ - spender: AddressLike, - subtractedValue: BigNumberish - ], [ - boolean - ], "nonpayable">; - getFunction(nameOrSignature: "increaseAllowance"): TypedContractMethod<[ - spender: AddressLike, - addedValue: BigNumberish - ], [ - boolean - ], "nonpayable">; - getFunction(nameOrSignature: "mint"): TypedContractMethod<[ - account: AddressLike, - amount: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "symbol"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "totalSupply"): TypedContractMethod<[], [bigint], "view">; - getFunction(nameOrSignature: "transfer"): TypedContractMethod<[ - to: AddressLike, - amount: BigNumberish - ], [ - boolean - ], "nonpayable">; - getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - amount: BigNumberish - ], [ - boolean - ], "nonpayable">; - getEvent(key: "Approval"): TypedContractEvent; - getEvent(key: "Transfer"): TypedContractEvent; - filters: { - "Approval(address,address,uint256)": TypedContractEvent; - Approval: TypedContractEvent; - "Transfer(address,address,uint256)": TypedContractEvent; - Transfer: TypedContractEvent; - }; -} -//# sourceMappingURL=ERC20Mock.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/mocks/ERC20Mock.d.ts.map b/dist/types/contracts/mocks/ERC20Mock.d.ts.map deleted file mode 100644 index 5aacd41a..00000000 --- a/dist/types/contracts/mocks/ERC20Mock.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ERC20Mock.d.ts","sourceRoot":"","sources":["../../../../types/contracts/mocks/ERC20Mock.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/mocks/ERC20Mock.js b/dist/types/contracts/mocks/ERC20Mock.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/mocks/ERC20Mock.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/mocks/ERC20UnsafeMock.d.ts b/dist/types/contracts/mocks/ERC20UnsafeMock.d.ts deleted file mode 100644 index 9d2d0f0e..00000000 --- a/dist/types/contracts/mocks/ERC20UnsafeMock.d.ts +++ /dev/null @@ -1,184 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; -export interface ERC20UnsafeMockInterface extends Interface { - getFunction(nameOrSignature: "allowance" | "approve" | "balanceOf" | "decimals" | "decreaseAllowance" | "increaseAllowance" | "mint" | "name" | "symbol" | "totalSupply" | "transfer" | "transferFrom"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Approval" | "Transfer"): EventFragment; - encodeFunctionData(functionFragment: "allowance", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "decimals", values?: undefined): string; - encodeFunctionData(functionFragment: "decreaseAllowance", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "increaseAllowance", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "mint", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "name", values?: undefined): string; - encodeFunctionData(functionFragment: "symbol", values?: undefined): string; - encodeFunctionData(functionFragment: "totalSupply", values?: undefined): string; - encodeFunctionData(functionFragment: "transfer", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; - decodeFunctionResult(functionFragment: "allowance", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "decimals", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "decreaseAllowance", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "increaseAllowance", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "mint", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "totalSupply", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transfer", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; -} -export declare namespace ApprovalEvent { - type InputTuple = [ - owner: AddressLike, - spender: AddressLike, - value: BigNumberish - ]; - type OutputTuple = [owner: string, spender: string, value: bigint]; - interface OutputObject { - owner: string; - spender: string; - value: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferEvent { - type InputTuple = [ - from: AddressLike, - to: AddressLike, - value: BigNumberish - ]; - type OutputTuple = [from: string, to: string, value: bigint]; - interface OutputObject { - from: string; - to: string; - value: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface ERC20UnsafeMock extends BaseContract { - connect(runner?: ContractRunner | null): ERC20UnsafeMock; - waitForDeployment(): Promise; - interface: ERC20UnsafeMockInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - allowance: TypedContractMethod<[ - owner: AddressLike, - spender: AddressLike - ], [ - bigint - ], "view">; - approve: TypedContractMethod<[ - spender: AddressLike, - amount: BigNumberish - ], [ - boolean - ], "nonpayable">; - balanceOf: TypedContractMethod<[account: AddressLike], [bigint], "view">; - decimals: TypedContractMethod<[], [bigint], "view">; - decreaseAllowance: TypedContractMethod<[ - spender: AddressLike, - subtractedValue: BigNumberish - ], [ - boolean - ], "nonpayable">; - increaseAllowance: TypedContractMethod<[ - spender: AddressLike, - addedValue: BigNumberish - ], [ - boolean - ], "nonpayable">; - mint: TypedContractMethod<[ - account: AddressLike, - amount: BigNumberish - ], [ - void - ], "nonpayable">; - name: TypedContractMethod<[], [string], "view">; - symbol: TypedContractMethod<[], [string], "view">; - totalSupply: TypedContractMethod<[], [bigint], "view">; - transfer: TypedContractMethod<[ - to: AddressLike, - value: BigNumberish - ], [ - boolean - ], "nonpayable">; - transferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - value: BigNumberish - ], [ - boolean - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "allowance"): TypedContractMethod<[ - owner: AddressLike, - spender: AddressLike - ], [ - bigint - ], "view">; - getFunction(nameOrSignature: "approve"): TypedContractMethod<[ - spender: AddressLike, - amount: BigNumberish - ], [ - boolean - ], "nonpayable">; - getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[account: AddressLike], [bigint], "view">; - getFunction(nameOrSignature: "decimals"): TypedContractMethod<[], [bigint], "view">; - getFunction(nameOrSignature: "decreaseAllowance"): TypedContractMethod<[ - spender: AddressLike, - subtractedValue: BigNumberish - ], [ - boolean - ], "nonpayable">; - getFunction(nameOrSignature: "increaseAllowance"): TypedContractMethod<[ - spender: AddressLike, - addedValue: BigNumberish - ], [ - boolean - ], "nonpayable">; - getFunction(nameOrSignature: "mint"): TypedContractMethod<[ - account: AddressLike, - amount: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "symbol"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "totalSupply"): TypedContractMethod<[], [bigint], "view">; - getFunction(nameOrSignature: "transfer"): TypedContractMethod<[ - to: AddressLike, - value: BigNumberish - ], [ - boolean - ], "nonpayable">; - getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - value: BigNumberish - ], [ - boolean - ], "nonpayable">; - getEvent(key: "Approval"): TypedContractEvent; - getEvent(key: "Transfer"): TypedContractEvent; - filters: { - "Approval(address,address,uint256)": TypedContractEvent; - Approval: TypedContractEvent; - "Transfer(address,address,uint256)": TypedContractEvent; - Transfer: TypedContractEvent; - }; -} -//# sourceMappingURL=ERC20UnsafeMock.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/mocks/ERC20UnsafeMock.d.ts.map b/dist/types/contracts/mocks/ERC20UnsafeMock.d.ts.map deleted file mode 100644 index 35ad05c4..00000000 --- a/dist/types/contracts/mocks/ERC20UnsafeMock.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ERC20UnsafeMock.d.ts","sourceRoot":"","sources":["../../../../types/contracts/mocks/ERC20UnsafeMock.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/mocks/ERC20UnsafeMock.js b/dist/types/contracts/mocks/ERC20UnsafeMock.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/mocks/ERC20UnsafeMock.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/mocks/ERC2771ContextMock.d.ts b/dist/types/contracts/mocks/ERC2771ContextMock.d.ts deleted file mode 100644 index 99e64f01..00000000 --- a/dist/types/contracts/mocks/ERC2771ContextMock.d.ts +++ /dev/null @@ -1,70 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; -export interface ERC2771ContextMockInterface extends Interface { - getFunction(nameOrSignature: "initialize" | "isTrustedForwarder" | "msgData" | "msgSender" | "msgToken" | "run"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Initialized"): EventFragment; - encodeFunctionData(functionFragment: "initialize", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "isTrustedForwarder", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "msgData", values?: undefined): string; - encodeFunctionData(functionFragment: "msgSender", values?: undefined): string; - encodeFunctionData(functionFragment: "msgToken", values?: undefined): string; - encodeFunctionData(functionFragment: "run", values?: undefined): string; - decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isTrustedForwarder", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "msgData", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "msgSender", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "msgToken", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "run", data: BytesLike): Result; -} -export declare namespace InitializedEvent { - type InputTuple = [version: BigNumberish]; - type OutputTuple = [version: bigint]; - interface OutputObject { - version: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface ERC2771ContextMock extends BaseContract { - connect(runner?: ContractRunner | null): ERC2771ContextMock; - waitForDeployment(): Promise; - interface: ERC2771ContextMockInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - initialize: TypedContractMethod<[ - forwarder: AddressLike - ], [ - void - ], "nonpayable">; - isTrustedForwarder: TypedContractMethod<[ - forwarder: AddressLike - ], [ - boolean - ], "view">; - msgData: TypedContractMethod<[], [string], "view">; - msgSender: TypedContractMethod<[], [string], "view">; - msgToken: TypedContractMethod<[], [bigint], "view">; - run: TypedContractMethod<[], [string], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "initialize"): TypedContractMethod<[forwarder: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "isTrustedForwarder"): TypedContractMethod<[forwarder: AddressLike], [boolean], "view">; - getFunction(nameOrSignature: "msgData"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "msgSender"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "msgToken"): TypedContractMethod<[], [bigint], "view">; - getFunction(nameOrSignature: "run"): TypedContractMethod<[], [string], "view">; - getEvent(key: "Initialized"): TypedContractEvent; - filters: { - "Initialized(uint8)": TypedContractEvent; - Initialized: TypedContractEvent; - }; -} -//# sourceMappingURL=ERC2771ContextMock.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/mocks/ERC2771ContextMock.d.ts.map b/dist/types/contracts/mocks/ERC2771ContextMock.d.ts.map deleted file mode 100644 index 415c9200..00000000 --- a/dist/types/contracts/mocks/ERC2771ContextMock.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ERC2771ContextMock.d.ts","sourceRoot":"","sources":["../../../../types/contracts/mocks/ERC2771ContextMock.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/mocks/ERC2771ContextMock.js b/dist/types/contracts/mocks/ERC2771ContextMock.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/mocks/ERC2771ContextMock.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/mocks/ERC2771RegistryContextMock.d.ts b/dist/types/contracts/mocks/ERC2771RegistryContextMock.d.ts deleted file mode 100644 index 3fe8a18b..00000000 --- a/dist/types/contracts/mocks/ERC2771RegistryContextMock.d.ts +++ /dev/null @@ -1,70 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; -export interface ERC2771RegistryContextMockInterface extends Interface { - getFunction(nameOrSignature: "execute" | "initialize" | "isTrustedForwarder" | "msgData" | "msgSender" | "msgToken"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Initialized"): EventFragment; - encodeFunctionData(functionFragment: "execute", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "initialize", values?: undefined): string; - encodeFunctionData(functionFragment: "isTrustedForwarder", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "msgData", values?: undefined): string; - encodeFunctionData(functionFragment: "msgSender", values?: undefined): string; - encodeFunctionData(functionFragment: "msgToken", values?: undefined): string; - decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isTrustedForwarder", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "msgData", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "msgSender", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "msgToken", data: BytesLike): Result; -} -export declare namespace InitializedEvent { - type InputTuple = [version: BigNumberish]; - type OutputTuple = [version: bigint]; - interface OutputObject { - version: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface ERC2771RegistryContextMock extends BaseContract { - connect(runner?: ContractRunner | null): ERC2771RegistryContextMock; - waitForDeployment(): Promise; - interface: ERC2771RegistryContextMockInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - execute: TypedContractMethod<[ - data: BytesLike - ], [ - [boolean, string] - ], "nonpayable">; - initialize: TypedContractMethod<[], [void], "nonpayable">; - isTrustedForwarder: TypedContractMethod<[ - forwarder: AddressLike - ], [ - boolean - ], "view">; - msgData: TypedContractMethod<[], [string], "view">; - msgSender: TypedContractMethod<[], [string], "view">; - msgToken: TypedContractMethod<[], [bigint], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "execute"): TypedContractMethod<[data: BytesLike], [[boolean, string]], "nonpayable">; - getFunction(nameOrSignature: "initialize"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "isTrustedForwarder"): TypedContractMethod<[forwarder: AddressLike], [boolean], "view">; - getFunction(nameOrSignature: "msgData"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "msgSender"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "msgToken"): TypedContractMethod<[], [bigint], "view">; - getEvent(key: "Initialized"): TypedContractEvent; - filters: { - "Initialized(uint8)": TypedContractEvent; - Initialized: TypedContractEvent; - }; -} -//# sourceMappingURL=ERC2771RegistryContextMock.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/mocks/ERC2771RegistryContextMock.d.ts.map b/dist/types/contracts/mocks/ERC2771RegistryContextMock.d.ts.map deleted file mode 100644 index 3268ba39..00000000 --- a/dist/types/contracts/mocks/ERC2771RegistryContextMock.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ERC2771RegistryContextMock.d.ts","sourceRoot":"","sources":["../../../../types/contracts/mocks/ERC2771RegistryContextMock.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/mocks/ERC2771RegistryContextMock.js b/dist/types/contracts/mocks/ERC2771RegistryContextMock.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/mocks/ERC2771RegistryContextMock.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/mocks/ERC721Mock.d.ts b/dist/types/contracts/mocks/ERC721Mock.d.ts deleted file mode 100644 index c7dd3235..00000000 --- a/dist/types/contracts/mocks/ERC721Mock.d.ts +++ /dev/null @@ -1,226 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; -export interface ERC721MockInterface extends Interface { - getFunction(nameOrSignature: "approve" | "balanceOf" | "getApproved" | "isApprovedForAll" | "mint" | "name" | "ownerOf" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "setApprovalForAll" | "supportsInterface" | "symbol" | "tokenURI" | "transferFrom"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "Transfer"): EventFragment; - encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "mint", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "name", values?: undefined): string; - encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "symbol", values?: undefined): string; - encodeFunctionData(functionFragment: "tokenURI", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; - decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "mint", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "tokenURI", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; -} -export declare namespace ApprovalEvent { - type InputTuple = [ - owner: AddressLike, - approved: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [owner: string, approved: string, tokenId: bigint]; - interface OutputObject { - owner: string; - approved: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ApprovalForAllEvent { - type InputTuple = [ - owner: AddressLike, - operator: AddressLike, - approved: boolean - ]; - type OutputTuple = [ - owner: string, - operator: string, - approved: boolean - ]; - interface OutputObject { - owner: string; - operator: string; - approved: boolean; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferEvent { - type InputTuple = [ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [from: string, to: string, tokenId: bigint]; - interface OutputObject { - from: string; - to: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface ERC721Mock extends BaseContract { - connect(runner?: ContractRunner | null): ERC721Mock; - waitForDeployment(): Promise; - interface: ERC721MockInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - approve: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; - getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - isApprovedForAll: TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - mint: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - name: TypedContractMethod<[], [string], "view">; - ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - setApprovalForAll: TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - symbol: TypedContractMethod<[], [string], "view">; - tokenURI: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - transferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "approve"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; - getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "mint"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "symbol"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "tokenURI"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getEvent(key: "Approval"): TypedContractEvent; - getEvent(key: "ApprovalForAll"): TypedContractEvent; - getEvent(key: "Transfer"): TypedContractEvent; - filters: { - "Approval(address,address,uint256)": TypedContractEvent; - Approval: TypedContractEvent; - "ApprovalForAll(address,address,bool)": TypedContractEvent; - ApprovalForAll: TypedContractEvent; - "Transfer(address,address,uint256)": TypedContractEvent; - Transfer: TypedContractEvent; - }; -} -//# sourceMappingURL=ERC721Mock.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/mocks/ERC721Mock.d.ts.map b/dist/types/contracts/mocks/ERC721Mock.d.ts.map deleted file mode 100644 index 6eafcebf..00000000 --- a/dist/types/contracts/mocks/ERC721Mock.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ERC721Mock.d.ts","sourceRoot":"","sources":["../../../../types/contracts/mocks/ERC721Mock.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/mocks/ERC721Mock.js b/dist/types/contracts/mocks/ERC721Mock.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/mocks/ERC721Mock.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/mocks/ERC721ReceiverMock.d.ts b/dist/types/contracts/mocks/ERC721ReceiverMock.d.ts deleted file mode 100644 index ba3b78c7..00000000 --- a/dist/types/contracts/mocks/ERC721ReceiverMock.d.ts +++ /dev/null @@ -1,40 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../common"; -export interface ERC721ReceiverMockInterface extends Interface { - getFunction(nameOrSignature: "onERC721Received"): FunctionFragment; - encodeFunctionData(functionFragment: "onERC721Received", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; - decodeFunctionResult(functionFragment: "onERC721Received", data: BytesLike): Result; -} -export interface ERC721ReceiverMock extends BaseContract { - connect(runner?: ContractRunner | null): ERC721ReceiverMock; - waitForDeployment(): Promise; - interface: ERC721ReceiverMockInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - onERC721Received: TypedContractMethod<[ - arg0: AddressLike, - arg1: AddressLike, - arg2: BigNumberish, - arg3: BytesLike - ], [ - string - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "onERC721Received"): TypedContractMethod<[ - arg0: AddressLike, - arg1: AddressLike, - arg2: BigNumberish, - arg3: BytesLike - ], [ - string - ], "view">; - filters: {}; -} -//# sourceMappingURL=ERC721ReceiverMock.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/mocks/ERC721ReceiverMock.d.ts.map b/dist/types/contracts/mocks/ERC721ReceiverMock.d.ts.map deleted file mode 100644 index df8188ed..00000000 --- a/dist/types/contracts/mocks/ERC721ReceiverMock.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ERC721ReceiverMock.d.ts","sourceRoot":"","sources":["../../../../types/contracts/mocks/ERC721ReceiverMock.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/mocks/ERC721ReceiverMock.js b/dist/types/contracts/mocks/ERC721ReceiverMock.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/mocks/ERC721ReceiverMock.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/mocks/MinterRoleMock.d.ts b/dist/types/contracts/mocks/MinterRoleMock.d.ts deleted file mode 100644 index 5de73743..00000000 --- a/dist/types/contracts/mocks/MinterRoleMock.d.ts +++ /dev/null @@ -1,261 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; -export interface MinterRoleMockInterface extends Interface { - getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE" | "MINTER_ROLE" | "addMinter" | "addMinters" | "closeMinter" | "getRoleAdmin" | "grantRole" | "hasRole" | "initialize" | "isMinter" | "olnyMinterFunc" | "owner" | "removeMinter" | "removeMinters" | "renounceMinter" | "renounceOwnership" | "renounceRole" | "revokeRole" | "rotateMinter" | "supportsInterface" | "transferOwnership"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Initialized" | "OwnershipTransferred" | "RoleAdminChanged" | "RoleGranted" | "RoleRevoked"): EventFragment; - encodeFunctionData(functionFragment: "DEFAULT_ADMIN_ROLE", values?: undefined): string; - encodeFunctionData(functionFragment: "MINTER_ROLE", values?: undefined): string; - encodeFunctionData(functionFragment: "addMinter", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "addMinters", values: [AddressLike[]]): string; - encodeFunctionData(functionFragment: "closeMinter", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "getRoleAdmin", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "grantRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "hasRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "initialize", values?: undefined): string; - encodeFunctionData(functionFragment: "isMinter", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "olnyMinterFunc", values?: undefined): string; - encodeFunctionData(functionFragment: "owner", values?: undefined): string; - encodeFunctionData(functionFragment: "removeMinter", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "removeMinters", values: [AddressLike[]]): string; - encodeFunctionData(functionFragment: "renounceMinter", values?: undefined): string; - encodeFunctionData(functionFragment: "renounceOwnership", values?: undefined): string; - encodeFunctionData(functionFragment: "renounceRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "revokeRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "rotateMinter", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "transferOwnership", values: [AddressLike]): string; - decodeFunctionResult(functionFragment: "DEFAULT_ADMIN_ROLE", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "MINTER_ROLE", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "addMinter", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "addMinters", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "closeMinter", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getRoleAdmin", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "grantRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "hasRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isMinter", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "olnyMinterFunc", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "removeMinter", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "removeMinters", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceMinter", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceOwnership", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "revokeRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "rotateMinter", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result; -} -export declare namespace InitializedEvent { - type InputTuple = [version: BigNumberish]; - type OutputTuple = [version: bigint]; - interface OutputObject { - version: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace OwnershipTransferredEvent { - type InputTuple = [previousOwner: AddressLike, newOwner: AddressLike]; - type OutputTuple = [previousOwner: string, newOwner: string]; - interface OutputObject { - previousOwner: string; - newOwner: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RoleAdminChangedEvent { - type InputTuple = [ - role: BytesLike, - previousAdminRole: BytesLike, - newAdminRole: BytesLike - ]; - type OutputTuple = [ - role: string, - previousAdminRole: string, - newAdminRole: string - ]; - interface OutputObject { - role: string; - previousAdminRole: string; - newAdminRole: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RoleGrantedEvent { - type InputTuple = [ - role: BytesLike, - account: AddressLike, - sender: AddressLike - ]; - type OutputTuple = [role: string, account: string, sender: string]; - interface OutputObject { - role: string; - account: string; - sender: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RoleRevokedEvent { - type InputTuple = [ - role: BytesLike, - account: AddressLike, - sender: AddressLike - ]; - type OutputTuple = [role: string, account: string, sender: string]; - interface OutputObject { - role: string; - account: string; - sender: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface MinterRoleMock extends BaseContract { - connect(runner?: ContractRunner | null): MinterRoleMock; - waitForDeployment(): Promise; - interface: MinterRoleMockInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - DEFAULT_ADMIN_ROLE: TypedContractMethod<[], [string], "view">; - MINTER_ROLE: TypedContractMethod<[], [string], "view">; - addMinter: TypedContractMethod<[account: AddressLike], [void], "nonpayable">; - addMinters: TypedContractMethod<[ - accounts: AddressLike[] - ], [ - void - ], "nonpayable">; - closeMinter: TypedContractMethod<[receiver: AddressLike], [void], "payable">; - getRoleAdmin: TypedContractMethod<[role: BytesLike], [string], "view">; - grantRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - hasRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - boolean - ], "view">; - initialize: TypedContractMethod<[], [void], "nonpayable">; - isMinter: TypedContractMethod<[account: AddressLike], [boolean], "view">; - olnyMinterFunc: TypedContractMethod<[], [void], "nonpayable">; - owner: TypedContractMethod<[], [string], "view">; - removeMinter: TypedContractMethod<[ - account: AddressLike - ], [ - void - ], "nonpayable">; - removeMinters: TypedContractMethod<[ - accounts: AddressLike[] - ], [ - void - ], "nonpayable">; - renounceMinter: TypedContractMethod<[], [void], "nonpayable">; - renounceOwnership: TypedContractMethod<[], [void], "nonpayable">; - renounceRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - revokeRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - rotateMinter: TypedContractMethod<[receiver: AddressLike], [void], "payable">; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - transferOwnership: TypedContractMethod<[ - newOwner: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "MINTER_ROLE"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "addMinter"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "addMinters"): TypedContractMethod<[accounts: AddressLike[]], [void], "nonpayable">; - getFunction(nameOrSignature: "closeMinter"): TypedContractMethod<[receiver: AddressLike], [void], "payable">; - getFunction(nameOrSignature: "getRoleAdmin"): TypedContractMethod<[role: BytesLike], [string], "view">; - getFunction(nameOrSignature: "grantRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "hasRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "initialize"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "isMinter"): TypedContractMethod<[account: AddressLike], [boolean], "view">; - getFunction(nameOrSignature: "olnyMinterFunc"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "owner"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "removeMinter"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "removeMinters"): TypedContractMethod<[accounts: AddressLike[]], [void], "nonpayable">; - getFunction(nameOrSignature: "renounceMinter"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "renounceOwnership"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "renounceRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "revokeRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "rotateMinter"): TypedContractMethod<[receiver: AddressLike], [void], "payable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "transferOwnership"): TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">; - getEvent(key: "Initialized"): TypedContractEvent; - getEvent(key: "OwnershipTransferred"): TypedContractEvent; - getEvent(key: "RoleAdminChanged"): TypedContractEvent; - getEvent(key: "RoleGranted"): TypedContractEvent; - getEvent(key: "RoleRevoked"): TypedContractEvent; - filters: { - "Initialized(uint8)": TypedContractEvent; - Initialized: TypedContractEvent; - "OwnershipTransferred(address,address)": TypedContractEvent; - OwnershipTransferred: TypedContractEvent; - "RoleAdminChanged(bytes32,bytes32,bytes32)": TypedContractEvent; - RoleAdminChanged: TypedContractEvent; - "RoleGranted(bytes32,address,address)": TypedContractEvent; - RoleGranted: TypedContractEvent; - "RoleRevoked(bytes32,address,address)": TypedContractEvent; - RoleRevoked: TypedContractEvent; - }; -} -//# sourceMappingURL=MinterRoleMock.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/mocks/MinterRoleMock.d.ts.map b/dist/types/contracts/mocks/MinterRoleMock.d.ts.map deleted file mode 100644 index 3d45b226..00000000 --- a/dist/types/contracts/mocks/MinterRoleMock.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"MinterRoleMock.d.ts","sourceRoot":"","sources":["../../../../types/contracts/mocks/MinterRoleMock.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/mocks/MinterRoleMock.js b/dist/types/contracts/mocks/MinterRoleMock.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/mocks/MinterRoleMock.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/mocks/MintingManagerMock.d.ts b/dist/types/contracts/mocks/MintingManagerMock.d.ts deleted file mode 100644 index a95274bf..00000000 --- a/dist/types/contracts/mocks/MintingManagerMock.d.ts +++ /dev/null @@ -1,769 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; -export interface MintingManagerMockInterface extends Interface { - getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE" | "MINTER_ROLE" | "NAME" | "VERSION" | "addMinter" | "addMinters" | "addProxyReaders" | "addTld" | "buy" | "buyForErc20" | "claim" | "claimTo" | "claimToWithRecords" | "closeMinter" | "cnsMintingController" | "cnsResolver" | "cnsURIPrefixController" | "getRoleAdmin" | "grantRole" | "hasRole" | "initialize" | "isBlocked" | "isMinter" | "isTrustedForwarder" | "issueExpirableWithRecords" | "issueWithRecords" | "owner" | "pause" | "paused" | "removeMinter" | "removeMinters" | "removeTld" | "renew" | "renounceMinter" | "renounceOwnership" | "renounceRole" | "revoke" | "revokeRole" | "rotateMinter" | "setForwarder" | "setOperator" | "setTokenURIPrefix" | "supportsInterface" | "transferOwnership" | "unpause" | "unsOperator" | "unsRegistry" | "upgradeAll" | "withdraw(address)" | "withdraw(address,address)"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "AdminChanged" | "Blocked" | "BlocklistDisabled" | "BlocklistEnabled" | "DomainPurchase" | "Initialized" | "NewTld" | "OwnershipTransferred" | "Paused" | "RemoveTld" | "RoleAdminChanged" | "RoleGranted" | "RoleRevoked" | "Unpaused" | "Upgraded" | "Withdrawal"): EventFragment; - encodeFunctionData(functionFragment: "DEFAULT_ADMIN_ROLE", values?: undefined): string; - encodeFunctionData(functionFragment: "MINTER_ROLE", values?: undefined): string; - encodeFunctionData(functionFragment: "NAME", values?: undefined): string; - encodeFunctionData(functionFragment: "VERSION", values?: undefined): string; - encodeFunctionData(functionFragment: "addMinter", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "addMinters", values: [AddressLike[]]): string; - encodeFunctionData(functionFragment: "addProxyReaders", values: [AddressLike[]]): string; - encodeFunctionData(functionFragment: "addTld", values: [string, boolean]): string; - encodeFunctionData(functionFragment: "buy", values: [ - AddressLike, - string[], - string[], - string[], - BigNumberish, - BigNumberish, - BytesLike - ]): string; - encodeFunctionData(functionFragment: "buyForErc20", values: [ - AddressLike, - string[], - string[], - string[], - BigNumberish, - AddressLike, - BigNumberish, - BytesLike - ]): string; - encodeFunctionData(functionFragment: "claim", values: [BigNumberish, string]): string; - encodeFunctionData(functionFragment: "claimTo", values: [AddressLike, BigNumberish, string]): string; - encodeFunctionData(functionFragment: "claimToWithRecords", values: [AddressLike, BigNumberish, string, string[], string[]]): string; - encodeFunctionData(functionFragment: "closeMinter", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "cnsMintingController", values?: undefined): string; - encodeFunctionData(functionFragment: "cnsResolver", values?: undefined): string; - encodeFunctionData(functionFragment: "cnsURIPrefixController", values?: undefined): string; - encodeFunctionData(functionFragment: "getRoleAdmin", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "grantRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "hasRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "initialize", values: [ - AddressLike, - AddressLike, - AddressLike, - AddressLike, - AddressLike, - AddressLike - ]): string; - encodeFunctionData(functionFragment: "isBlocked", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "isMinter", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "isTrustedForwarder", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "issueExpirableWithRecords", values: [AddressLike, string[], string[], string[], BigNumberish, boolean]): string; - encodeFunctionData(functionFragment: "issueWithRecords", values: [AddressLike, string[], string[], string[], boolean]): string; - encodeFunctionData(functionFragment: "owner", values?: undefined): string; - encodeFunctionData(functionFragment: "pause", values?: undefined): string; - encodeFunctionData(functionFragment: "paused", values?: undefined): string; - encodeFunctionData(functionFragment: "removeMinter", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "removeMinters", values: [AddressLike[]]): string; - encodeFunctionData(functionFragment: "removeTld", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "renew", values: [BigNumberish, BigNumberish]): string; - encodeFunctionData(functionFragment: "renounceMinter", values?: undefined): string; - encodeFunctionData(functionFragment: "renounceOwnership", values?: undefined): string; - encodeFunctionData(functionFragment: "renounceRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "revoke", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "revokeRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "rotateMinter", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "setForwarder", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "setOperator", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "setTokenURIPrefix", values: [string]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "transferOwnership", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "unpause", values?: undefined): string; - encodeFunctionData(functionFragment: "unsOperator", values?: undefined): string; - encodeFunctionData(functionFragment: "unsRegistry", values?: undefined): string; - encodeFunctionData(functionFragment: "upgradeAll", values: [BigNumberish[]]): string; - encodeFunctionData(functionFragment: "withdraw(address)", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "withdraw(address,address)", values: [AddressLike, AddressLike]): string; - decodeFunctionResult(functionFragment: "DEFAULT_ADMIN_ROLE", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "MINTER_ROLE", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "NAME", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "VERSION", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "addMinter", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "addMinters", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "addProxyReaders", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "addTld", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "buy", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "buyForErc20", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "claim", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "claimTo", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "claimToWithRecords", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "closeMinter", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "cnsMintingController", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "cnsResolver", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "cnsURIPrefixController", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getRoleAdmin", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "grantRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "hasRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isBlocked", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isMinter", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isTrustedForwarder", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "issueExpirableWithRecords", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "issueWithRecords", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "pause", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "paused", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "removeMinter", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "removeMinters", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "removeTld", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renew", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceMinter", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceOwnership", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "revoke", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "revokeRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "rotateMinter", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setForwarder", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setOperator", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setTokenURIPrefix", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "unpause", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "unsOperator", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "unsRegistry", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "upgradeAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "withdraw(address)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "withdraw(address,address)", data: BytesLike): Result; -} -export declare namespace AdminChangedEvent { - type InputTuple = [previousAdmin: AddressLike, newAdmin: AddressLike]; - type OutputTuple = [previousAdmin: string, newAdmin: string]; - interface OutputObject { - previousAdmin: string; - newAdmin: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace BlockedEvent { - type InputTuple = [tokenId: BigNumberish]; - type OutputTuple = [tokenId: bigint]; - interface OutputObject { - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace BlocklistDisabledEvent { - type InputTuple = [account: AddressLike]; - type OutputTuple = [account: string]; - interface OutputObject { - account: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace BlocklistEnabledEvent { - type InputTuple = [account: AddressLike]; - type OutputTuple = [account: string]; - interface OutputObject { - account: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace DomainPurchaseEvent { - type InputTuple = [ - tokenId: BigNumberish, - sender: AddressLike, - owner: AddressLike, - price: BigNumberish, - token: AddressLike - ]; - type OutputTuple = [ - tokenId: bigint, - sender: string, - owner: string, - price: bigint, - token: string - ]; - interface OutputObject { - tokenId: bigint; - sender: string; - owner: string; - price: bigint; - token: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace InitializedEvent { - type InputTuple = [version: BigNumberish]; - type OutputTuple = [version: bigint]; - interface OutputObject { - version: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NewTldEvent { - type InputTuple = [tokenId: BigNumberish, tld: string]; - type OutputTuple = [tokenId: bigint, tld: string]; - interface OutputObject { - tokenId: bigint; - tld: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace OwnershipTransferredEvent { - type InputTuple = [previousOwner: AddressLike, newOwner: AddressLike]; - type OutputTuple = [previousOwner: string, newOwner: string]; - interface OutputObject { - previousOwner: string; - newOwner: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace PausedEvent { - type InputTuple = [account: AddressLike]; - type OutputTuple = [account: string]; - interface OutputObject { - account: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RemoveTldEvent { - type InputTuple = [tokenId: BigNumberish]; - type OutputTuple = [tokenId: bigint]; - interface OutputObject { - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RoleAdminChangedEvent { - type InputTuple = [ - role: BytesLike, - previousAdminRole: BytesLike, - newAdminRole: BytesLike - ]; - type OutputTuple = [ - role: string, - previousAdminRole: string, - newAdminRole: string - ]; - interface OutputObject { - role: string; - previousAdminRole: string; - newAdminRole: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RoleGrantedEvent { - type InputTuple = [ - role: BytesLike, - account: AddressLike, - sender: AddressLike - ]; - type OutputTuple = [role: string, account: string, sender: string]; - interface OutputObject { - role: string; - account: string; - sender: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RoleRevokedEvent { - type InputTuple = [ - role: BytesLike, - account: AddressLike, - sender: AddressLike - ]; - type OutputTuple = [role: string, account: string, sender: string]; - interface OutputObject { - role: string; - account: string; - sender: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace UnpausedEvent { - type InputTuple = [account: AddressLike]; - type OutputTuple = [account: string]; - interface OutputObject { - account: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace UpgradedEvent { - type InputTuple = [implementation: AddressLike]; - type OutputTuple = [implementation: string]; - interface OutputObject { - implementation: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace WithdrawalEvent { - type InputTuple = [ - recepient: AddressLike, - value: BigNumberish, - token: AddressLike - ]; - type OutputTuple = [recepient: string, value: bigint, token: string]; - interface OutputObject { - recepient: string; - value: bigint; - token: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface MintingManagerMock extends BaseContract { - connect(runner?: ContractRunner | null): MintingManagerMock; - waitForDeployment(): Promise; - interface: MintingManagerMockInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - DEFAULT_ADMIN_ROLE: TypedContractMethod<[], [string], "view">; - MINTER_ROLE: TypedContractMethod<[], [string], "view">; - NAME: TypedContractMethod<[], [string], "view">; - VERSION: TypedContractMethod<[], [string], "view">; - addMinter: TypedContractMethod<[account: AddressLike], [void], "nonpayable">; - addMinters: TypedContractMethod<[ - accounts: AddressLike[] - ], [ - void - ], "nonpayable">; - addProxyReaders: TypedContractMethod<[ - addrs: AddressLike[] - ], [ - void - ], "nonpayable">; - addTld: TypedContractMethod<[ - tld: string, - isExpirable: boolean - ], [ - void - ], "nonpayable">; - buy: TypedContractMethod<[ - owner: AddressLike, - labels: string[], - keys: string[], - values: string[], - expiry: BigNumberish, - price: BigNumberish, - signature: BytesLike - ], [ - void - ], "payable">; - buyForErc20: TypedContractMethod<[ - owner: AddressLike, - labels: string[], - keys: string[], - values: string[], - expiry: BigNumberish, - token: AddressLike, - price: BigNumberish, - signature: BytesLike - ], [ - void - ], "nonpayable">; - claim: TypedContractMethod<[ - tld: BigNumberish, - label: string - ], [ - void - ], "nonpayable">; - claimTo: TypedContractMethod<[ - to: AddressLike, - tld: BigNumberish, - label: string - ], [ - void - ], "nonpayable">; - claimToWithRecords: TypedContractMethod<[ - to: AddressLike, - tld: BigNumberish, - label: string, - keys: string[], - values: string[] - ], [ - void - ], "nonpayable">; - closeMinter: TypedContractMethod<[receiver: AddressLike], [void], "payable">; - cnsMintingController: TypedContractMethod<[], [string], "view">; - cnsResolver: TypedContractMethod<[], [string], "view">; - cnsURIPrefixController: TypedContractMethod<[], [string], "view">; - getRoleAdmin: TypedContractMethod<[role: BytesLike], [string], "view">; - grantRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - hasRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - boolean - ], "view">; - initialize: TypedContractMethod<[ - unsRegistry_: AddressLike, - cnsMintingController_: AddressLike, - cnsURIPrefixController_: AddressLike, - cnsResolver_: AddressLike, - unsOperator_: AddressLike, - forwarder: AddressLike - ], [ - void - ], "nonpayable">; - isBlocked: TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; - isMinter: TypedContractMethod<[account: AddressLike], [boolean], "view">; - isTrustedForwarder: TypedContractMethod<[ - forwarder: AddressLike - ], [ - boolean - ], "view">; - issueExpirableWithRecords: TypedContractMethod<[ - to: AddressLike, - labels: string[], - keys: string[], - values: string[], - expiry: BigNumberish, - withReverse: boolean - ], [ - void - ], "nonpayable">; - issueWithRecords: TypedContractMethod<[ - to: AddressLike, - labels: string[], - keys: string[], - values: string[], - withReverse: boolean - ], [ - void - ], "nonpayable">; - owner: TypedContractMethod<[], [string], "view">; - pause: TypedContractMethod<[], [void], "nonpayable">; - paused: TypedContractMethod<[], [boolean], "view">; - removeMinter: TypedContractMethod<[ - account: AddressLike - ], [ - void - ], "nonpayable">; - removeMinters: TypedContractMethod<[ - accounts: AddressLike[] - ], [ - void - ], "nonpayable">; - removeTld: TypedContractMethod<[tld: BigNumberish], [void], "nonpayable">; - renew: TypedContractMethod<[ - expiry: BigNumberish, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - renounceMinter: TypedContractMethod<[], [void], "nonpayable">; - renounceOwnership: TypedContractMethod<[], [void], "nonpayable">; - renounceRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - revoke: TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; - revokeRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - rotateMinter: TypedContractMethod<[receiver: AddressLike], [void], "payable">; - setForwarder: TypedContractMethod<[ - forwarder: AddressLike - ], [ - void - ], "nonpayable">; - setOperator: TypedContractMethod<[ - operator: AddressLike - ], [ - void - ], "nonpayable">; - setTokenURIPrefix: TypedContractMethod<[ - prefix: string - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - transferOwnership: TypedContractMethod<[ - newOwner: AddressLike - ], [ - void - ], "nonpayable">; - unpause: TypedContractMethod<[], [void], "nonpayable">; - unsOperator: TypedContractMethod<[], [string], "view">; - unsRegistry: TypedContractMethod<[], [string], "view">; - upgradeAll: TypedContractMethod<[ - tokenIds: BigNumberish[] - ], [ - void - ], "nonpayable">; - "withdraw(address)": TypedContractMethod<[ - recepient: AddressLike - ], [ - void - ], "nonpayable">; - "withdraw(address,address)": TypedContractMethod<[ - token: AddressLike, - recepient: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "MINTER_ROLE"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "NAME"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "VERSION"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "addMinter"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "addMinters"): TypedContractMethod<[accounts: AddressLike[]], [void], "nonpayable">; - getFunction(nameOrSignature: "addProxyReaders"): TypedContractMethod<[addrs: AddressLike[]], [void], "nonpayable">; - getFunction(nameOrSignature: "addTld"): TypedContractMethod<[ - tld: string, - isExpirable: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "buy"): TypedContractMethod<[ - owner: AddressLike, - labels: string[], - keys: string[], - values: string[], - expiry: BigNumberish, - price: BigNumberish, - signature: BytesLike - ], [ - void - ], "payable">; - getFunction(nameOrSignature: "buyForErc20"): TypedContractMethod<[ - owner: AddressLike, - labels: string[], - keys: string[], - values: string[], - expiry: BigNumberish, - token: AddressLike, - price: BigNumberish, - signature: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "claim"): TypedContractMethod<[ - tld: BigNumberish, - label: string - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "claimTo"): TypedContractMethod<[ - to: AddressLike, - tld: BigNumberish, - label: string - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "claimToWithRecords"): TypedContractMethod<[ - to: AddressLike, - tld: BigNumberish, - label: string, - keys: string[], - values: string[] - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "closeMinter"): TypedContractMethod<[receiver: AddressLike], [void], "payable">; - getFunction(nameOrSignature: "cnsMintingController"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "cnsResolver"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "cnsURIPrefixController"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "getRoleAdmin"): TypedContractMethod<[role: BytesLike], [string], "view">; - getFunction(nameOrSignature: "grantRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "hasRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "initialize"): TypedContractMethod<[ - unsRegistry_: AddressLike, - cnsMintingController_: AddressLike, - cnsURIPrefixController_: AddressLike, - cnsResolver_: AddressLike, - unsOperator_: AddressLike, - forwarder: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "isBlocked"): TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; - getFunction(nameOrSignature: "isMinter"): TypedContractMethod<[account: AddressLike], [boolean], "view">; - getFunction(nameOrSignature: "isTrustedForwarder"): TypedContractMethod<[forwarder: AddressLike], [boolean], "view">; - getFunction(nameOrSignature: "issueExpirableWithRecords"): TypedContractMethod<[ - to: AddressLike, - labels: string[], - keys: string[], - values: string[], - expiry: BigNumberish, - withReverse: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "issueWithRecords"): TypedContractMethod<[ - to: AddressLike, - labels: string[], - keys: string[], - values: string[], - withReverse: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "owner"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "pause"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "paused"): TypedContractMethod<[], [boolean], "view">; - getFunction(nameOrSignature: "removeMinter"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "removeMinters"): TypedContractMethod<[accounts: AddressLike[]], [void], "nonpayable">; - getFunction(nameOrSignature: "removeTld"): TypedContractMethod<[tld: BigNumberish], [void], "nonpayable">; - getFunction(nameOrSignature: "renew"): TypedContractMethod<[ - expiry: BigNumberish, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "renounceMinter"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "renounceOwnership"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "renounceRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "revoke"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; - getFunction(nameOrSignature: "revokeRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "rotateMinter"): TypedContractMethod<[receiver: AddressLike], [void], "payable">; - getFunction(nameOrSignature: "setForwarder"): TypedContractMethod<[forwarder: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "setOperator"): TypedContractMethod<[operator: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "setTokenURIPrefix"): TypedContractMethod<[prefix: string], [void], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "transferOwnership"): TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "unpause"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "unsOperator"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "unsRegistry"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "upgradeAll"): TypedContractMethod<[tokenIds: BigNumberish[]], [void], "nonpayable">; - getFunction(nameOrSignature: "withdraw(address)"): TypedContractMethod<[recepient: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "withdraw(address,address)"): TypedContractMethod<[ - token: AddressLike, - recepient: AddressLike - ], [ - void - ], "nonpayable">; - getEvent(key: "AdminChanged"): TypedContractEvent; - getEvent(key: "Blocked"): TypedContractEvent; - getEvent(key: "BlocklistDisabled"): TypedContractEvent; - getEvent(key: "BlocklistEnabled"): TypedContractEvent; - getEvent(key: "DomainPurchase"): TypedContractEvent; - getEvent(key: "Initialized"): TypedContractEvent; - getEvent(key: "NewTld"): TypedContractEvent; - getEvent(key: "OwnershipTransferred"): TypedContractEvent; - getEvent(key: "Paused"): TypedContractEvent; - getEvent(key: "RemoveTld"): TypedContractEvent; - getEvent(key: "RoleAdminChanged"): TypedContractEvent; - getEvent(key: "RoleGranted"): TypedContractEvent; - getEvent(key: "RoleRevoked"): TypedContractEvent; - getEvent(key: "Unpaused"): TypedContractEvent; - getEvent(key: "Upgraded"): TypedContractEvent; - getEvent(key: "Withdrawal"): TypedContractEvent; - filters: { - "AdminChanged(address,address)": TypedContractEvent; - AdminChanged: TypedContractEvent; - "Blocked(uint256)": TypedContractEvent; - Blocked: TypedContractEvent; - "BlocklistDisabled(address)": TypedContractEvent; - BlocklistDisabled: TypedContractEvent; - "BlocklistEnabled(address)": TypedContractEvent; - BlocklistEnabled: TypedContractEvent; - "DomainPurchase(uint256,address,address,uint256,address)": TypedContractEvent; - DomainPurchase: TypedContractEvent; - "Initialized(uint8)": TypedContractEvent; - Initialized: TypedContractEvent; - "NewTld(uint256,string)": TypedContractEvent; - NewTld: TypedContractEvent; - "OwnershipTransferred(address,address)": TypedContractEvent; - OwnershipTransferred: TypedContractEvent; - "Paused(address)": TypedContractEvent; - Paused: TypedContractEvent; - "RemoveTld(uint256)": TypedContractEvent; - RemoveTld: TypedContractEvent; - "RoleAdminChanged(bytes32,bytes32,bytes32)": TypedContractEvent; - RoleAdminChanged: TypedContractEvent; - "RoleGranted(bytes32,address,address)": TypedContractEvent; - RoleGranted: TypedContractEvent; - "RoleRevoked(bytes32,address,address)": TypedContractEvent; - RoleRevoked: TypedContractEvent; - "Unpaused(address)": TypedContractEvent; - Unpaused: TypedContractEvent; - "Upgraded(address)": TypedContractEvent; - Upgraded: TypedContractEvent; - "Withdrawal(address,uint256,address)": TypedContractEvent; - Withdrawal: TypedContractEvent; - }; -} -//# sourceMappingURL=MintingManagerMock.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/mocks/MintingManagerMock.d.ts.map b/dist/types/contracts/mocks/MintingManagerMock.d.ts.map deleted file mode 100644 index 595171b1..00000000 --- a/dist/types/contracts/mocks/MintingManagerMock.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"MintingManagerMock.d.ts","sourceRoot":"","sources":["../../../../types/contracts/mocks/MintingManagerMock.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/mocks/MintingManagerMock.js b/dist/types/contracts/mocks/MintingManagerMock.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/mocks/MintingManagerMock.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/mocks/UNSRegistryForwarderMock.d.ts b/dist/types/contracts/mocks/UNSRegistryForwarderMock.d.ts deleted file mode 100644 index 3a229a93..00000000 --- a/dist/types/contracts/mocks/UNSRegistryForwarderMock.d.ts +++ /dev/null @@ -1,93 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; -export declare namespace IForwarder { - type ForwardRequestStruct = { - from: AddressLike; - nonce: BigNumberish; - tokenId: BigNumberish; - data: BytesLike; - }; - type ForwardRequestStructOutput = [ - from: string, - nonce: bigint, - tokenId: bigint, - data: string - ] & { - from: string; - nonce: bigint; - tokenId: bigint; - data: string; - }; -} -export interface UNSRegistryForwarderMockInterface extends Interface { - getFunction(nameOrSignature: "execute" | "initialize" | "nonceOf" | "verify"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Initialized"): EventFragment; - encodeFunctionData(functionFragment: "execute", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; - encodeFunctionData(functionFragment: "initialize", values?: undefined): string; - encodeFunctionData(functionFragment: "nonceOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "verify", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; - decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "nonceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "verify", data: BytesLike): Result; -} -export declare namespace InitializedEvent { - type InputTuple = [version: BigNumberish]; - type OutputTuple = [version: bigint]; - interface OutputObject { - version: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface UNSRegistryForwarderMock extends BaseContract { - connect(runner?: ContractRunner | null): UNSRegistryForwarderMock; - waitForDeployment(): Promise; - interface: UNSRegistryForwarderMockInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - execute: TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - string - ], "nonpayable">; - initialize: TypedContractMethod<[], [void], "nonpayable">; - nonceOf: TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; - verify: TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - boolean - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "execute"): TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - string - ], "nonpayable">; - getFunction(nameOrSignature: "initialize"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "nonceOf"): TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; - getFunction(nameOrSignature: "verify"): TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - boolean - ], "view">; - getEvent(key: "Initialized"): TypedContractEvent; - filters: { - "Initialized(uint8)": TypedContractEvent; - Initialized: TypedContractEvent; - }; -} -//# sourceMappingURL=UNSRegistryForwarderMock.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/mocks/UNSRegistryForwarderMock.d.ts.map b/dist/types/contracts/mocks/UNSRegistryForwarderMock.d.ts.map deleted file mode 100644 index 9e131a4a..00000000 --- a/dist/types/contracts/mocks/UNSRegistryForwarderMock.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"UNSRegistryForwarderMock.d.ts","sourceRoot":"","sources":["../../../../types/contracts/mocks/UNSRegistryForwarderMock.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,aAAa,EACb,WAAW,EACX,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,mBAAmB,EACnB,aAAa,EACb,mBAAmB,EACpB,MAAM,cAAc,CAAC;AAEtB,MAAM,CAAC,OAAO,WAAW,UAAU,CAAC;IAClC,KAAY,oBAAoB,GAAG;QACjC,IAAI,EAAE,WAAW,CAAC;QAClB,KAAK,EAAE,YAAY,CAAC;QACpB,OAAO,EAAE,YAAY,CAAC;QACtB,IAAI,EAAE,SAAS,CAAC;KACjB,CAAC;IAEF,KAAY,0BAA0B,GAAG;QACvC,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,MAAM;QACb,OAAO,EAAE,MAAM;QACf,IAAI,EAAE,MAAM;KACb,GAAG;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;CACpE;AAED,MAAM,WAAW,iCAAkC,SAAQ,SAAS;IAClE,WAAW,CACT,eAAe,EAAE,SAAS,GAAG,YAAY,GAAG,SAAS,GAAG,QAAQ,GAC/D,gBAAgB,CAAC;IAEpB,QAAQ,CAAC,sBAAsB,EAAE,aAAa,GAAG,aAAa,CAAC;IAE/D,kBAAkB,CAChB,gBAAgB,EAAE,SAAS,EAC3B,MAAM,EAAE,CAAC,UAAU,CAAC,oBAAoB,EAAE,SAAS,CAAC,GACnD,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,YAAY,EAC9B,MAAM,CAAC,EAAE,SAAS,GACjB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,SAAS,EAC3B,MAAM,EAAE,CAAC,YAAY,CAAC,GACrB,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,QAAQ,EAC1B,MAAM,EAAE,CAAC,UAAU,CAAC,oBAAoB,EAAE,SAAS,CAAC,GACnD,MAAM,CAAC;IAEV,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,oBAAoB,CAAC,gBAAgB,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC9E,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,oBAAoB,CAAC,gBAAgB,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;CAC3E;AAED,yBAAiB,gBAAgB,CAAC;IAChC,KAAY,UAAU,GAAG,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IACjD,KAAY,WAAW,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC5C,UAAiB,YAAY;QAC3B,OAAO,EAAE,MAAM,CAAC;KACjB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,MAAM,WAAW,wBAAyB,SAAQ,YAAY;IAC5D,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,wBAAwB,CAAC;IAClE,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,iCAAiC,CAAC;IAE7C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,OAAO,EAAE,mBAAmB,CAC1B;QAAC,GAAG,EAAE,UAAU,CAAC,oBAAoB;QAAE,SAAS,EAAE,SAAS;KAAC,EAC5D;QAAC,MAAM;KAAC,EACR,YAAY,CACb,CAAC;IAEF,UAAU,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IAE1D,OAAO,EAAE,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAExE,MAAM,EAAE,mBAAmB,CACzB;QAAC,GAAG,EAAE,UAAU,CAAC,oBAAoB;QAAE,SAAS,EAAE,SAAS;KAAC,EAC5D;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,WAAW,CACT,eAAe,EAAE,SAAS,GACzB,mBAAmB,CACpB;QAAC,GAAG,EAAE,UAAU,CAAC,oBAAoB;QAAE,SAAS,EAAE,SAAS;KAAC,EAC5D;QAAC,MAAM;KAAC,EACR,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,YAAY,GAC5B,mBAAmB,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IACjD,WAAW,CACT,eAAe,EAAE,SAAS,GACzB,mBAAmB,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAClE,WAAW,CACT,eAAe,EAAE,QAAQ,GACxB,mBAAmB,CACpB;QAAC,GAAG,EAAE,UAAU,CAAC,oBAAoB;QAAE,SAAS,EAAE,SAAS;KAAC,EAC5D;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IAEF,QAAQ,CACN,GAAG,EAAE,aAAa,GACjB,kBAAkB,CACnB,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;IAEF,OAAO,EAAE;QACP,oBAAoB,EAAE,kBAAkB,CACtC,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QACF,WAAW,EAAE,kBAAkB,CAC7B,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;KACH,CAAC;CACH"} \ No newline at end of file diff --git a/dist/types/contracts/mocks/UNSRegistryForwarderMock.js b/dist/types/contracts/mocks/UNSRegistryForwarderMock.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/mocks/UNSRegistryForwarderMock.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/mocks/UNSRegistryMock.d.ts b/dist/types/contracts/mocks/UNSRegistryMock.d.ts deleted file mode 100644 index 57338070..00000000 --- a/dist/types/contracts/mocks/UNSRegistryMock.d.ts +++ /dev/null @@ -1,919 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; -export declare namespace IForwarder { - type ForwardRequestStruct = { - from: AddressLike; - nonce: BigNumberish; - tokenId: BigNumberish; - data: BytesLike; - }; - type ForwardRequestStructOutput = [ - from: string, - nonce: bigint, - tokenId: bigint, - data: string - ] & { - from: string; - nonce: bigint; - tokenId: bigint; - data: string; - }; -} -export interface UNSRegistryMockInterface extends Interface { - getFunction(nameOrSignature: "BATCH_LIMIT" | "NAME" | "VERSION" | "addKey" | "addProxyReader" | "approve" | "balanceOf" | "burn" | "deposit" | "depositToPolygon" | "execute" | "exists" | "expiryOf" | "get" | "getApproved" | "getByHash" | "getKey" | "getKeys" | "getMany" | "getManyByHash" | "getTokenName" | "initialize" | "isApprovedForAll" | "isApprovedOrOwner" | "isExpired" | "isTrustedForwarder" | "mint(address,uint256)" | "mint(address,uint256,bytes)" | "mintTLD" | "mintWithRecords" | "multicall" | "name" | "namehash" | "nonceOf" | "onERC721Received" | "ownerOf" | "reconfigure" | "removeReverse" | "reset" | "resolverOf" | "reverseNameOf" | "reverseOf" | "root" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "set" | "setApprovalForAll" | "setByHash" | "setExpiry" | "setMany" | "setManyByHash" | "setOwner" | "setReverse" | "setTokenURIPrefix" | "supportsInterface" | "symbol" | "tokenURI" | "transferFrom" | "unlock" | "unlockWithRecords" | "upgradeAll" | "verify" | "withdrawFromPolygon"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "AdminChanged" | "Approval" | "ApprovalForAll" | "Initialized" | "NewKey" | "NewURI" | "NewURIPrefix" | "RemoveReverse" | "ResetRecords" | "Set" | "SetExpiry" | "SetReverse" | "Transfer" | "Upgraded"): EventFragment; - encodeFunctionData(functionFragment: "BATCH_LIMIT", values?: undefined): string; - encodeFunctionData(functionFragment: "NAME", values?: undefined): string; - encodeFunctionData(functionFragment: "VERSION", values?: undefined): string; - encodeFunctionData(functionFragment: "addKey", values: [string]): string; - encodeFunctionData(functionFragment: "addProxyReader", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "burn", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "deposit", values: [AddressLike, BytesLike]): string; - encodeFunctionData(functionFragment: "depositToPolygon", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "execute", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; - encodeFunctionData(functionFragment: "exists", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "expiryOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "get", values: [string, BigNumberish]): string; - encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "getByHash", values: [BigNumberish, BigNumberish]): string; - encodeFunctionData(functionFragment: "getKey", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "getKeys", values: [BigNumberish[]]): string; - encodeFunctionData(functionFragment: "getMany", values: [string[], BigNumberish]): string; - encodeFunctionData(functionFragment: "getManyByHash", values: [BigNumberish[], BigNumberish]): string; - encodeFunctionData(functionFragment: "getTokenName", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "initialize", values: [AddressLike, AddressLike, AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "isApprovedOrOwner", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "isExpired", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "isTrustedForwarder", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "mint(address,uint256)", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "mint(address,uint256,bytes)", values: [AddressLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "mintTLD", values: [BigNumberish, string]): string; - encodeFunctionData(functionFragment: "mintWithRecords", values: [AddressLike, string[], string[], string[], boolean]): string; - encodeFunctionData(functionFragment: "multicall", values: [BytesLike[]]): string; - encodeFunctionData(functionFragment: "name", values?: undefined): string; - encodeFunctionData(functionFragment: "namehash", values: [string[]]): string; - encodeFunctionData(functionFragment: "nonceOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "onERC721Received", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "reconfigure", values: [string[], string[], BigNumberish]): string; - encodeFunctionData(functionFragment: "removeReverse", values?: undefined): string; - encodeFunctionData(functionFragment: "reset", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "resolverOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "reverseNameOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "reverseOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "root", values?: undefined): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "set", values: [string, string, BigNumberish]): string; - encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; - encodeFunctionData(functionFragment: "setByHash", values: [BigNumberish, string, BigNumberish]): string; - encodeFunctionData(functionFragment: "setExpiry", values: [BigNumberish, BigNumberish]): string; - encodeFunctionData(functionFragment: "setMany", values: [string[], string[], BigNumberish]): string; - encodeFunctionData(functionFragment: "setManyByHash", values: [BigNumberish[], string[], BigNumberish]): string; - encodeFunctionData(functionFragment: "setOwner", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "setReverse", values: [string[]]): string; - encodeFunctionData(functionFragment: "setTokenURIPrefix", values: [string]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "symbol", values?: undefined): string; - encodeFunctionData(functionFragment: "tokenURI", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "unlock", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "unlockWithRecords", values: [AddressLike, string[], string[], string[], boolean]): string; - encodeFunctionData(functionFragment: "upgradeAll", values: [BigNumberish[]]): string; - encodeFunctionData(functionFragment: "verify", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; - encodeFunctionData(functionFragment: "withdrawFromPolygon", values: [BytesLike, BigNumberish, string[], string[]]): string; - decodeFunctionResult(functionFragment: "BATCH_LIMIT", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "NAME", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "VERSION", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "addKey", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "addProxyReader", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "burn", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "deposit", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "depositToPolygon", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "exists", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "expiryOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "get", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getByHash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getKey", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getKeys", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getMany", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getManyByHash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getTokenName", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedOrOwner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isExpired", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isTrustedForwarder", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "mint(address,uint256)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "mint(address,uint256,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "mintTLD", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "mintWithRecords", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "multicall", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "namehash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "nonceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "onERC721Received", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "reconfigure", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "removeReverse", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "reset", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "resolverOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "reverseNameOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "reverseOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "root", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "set", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setByHash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setExpiry", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setMany", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setManyByHash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setOwner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setReverse", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setTokenURIPrefix", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "tokenURI", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "unlock", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "unlockWithRecords", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "upgradeAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "verify", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "withdrawFromPolygon", data: BytesLike): Result; -} -export declare namespace AdminChangedEvent { - type InputTuple = [previousAdmin: AddressLike, newAdmin: AddressLike]; - type OutputTuple = [previousAdmin: string, newAdmin: string]; - interface OutputObject { - previousAdmin: string; - newAdmin: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ApprovalEvent { - type InputTuple = [ - owner: AddressLike, - approved: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [owner: string, approved: string, tokenId: bigint]; - interface OutputObject { - owner: string; - approved: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ApprovalForAllEvent { - type InputTuple = [ - owner: AddressLike, - operator: AddressLike, - approved: boolean - ]; - type OutputTuple = [ - owner: string, - operator: string, - approved: boolean - ]; - interface OutputObject { - owner: string; - operator: string; - approved: boolean; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace InitializedEvent { - type InputTuple = [version: BigNumberish]; - type OutputTuple = [version: bigint]; - interface OutputObject { - version: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NewKeyEvent { - type InputTuple = [ - tokenId: BigNumberish, - keyIndex: string, - key: string - ]; - type OutputTuple = [tokenId: bigint, keyIndex: string, key: string]; - interface OutputObject { - tokenId: bigint; - keyIndex: string; - key: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NewURIEvent { - type InputTuple = [tokenId: BigNumberish, uri: string]; - type OutputTuple = [tokenId: bigint, uri: string]; - interface OutputObject { - tokenId: bigint; - uri: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NewURIPrefixEvent { - type InputTuple = [prefix: string]; - type OutputTuple = [prefix: string]; - interface OutputObject { - prefix: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RemoveReverseEvent { - type InputTuple = [addr: AddressLike]; - type OutputTuple = [addr: string]; - interface OutputObject { - addr: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ResetRecordsEvent { - type InputTuple = [tokenId: BigNumberish]; - type OutputTuple = [tokenId: bigint]; - interface OutputObject { - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace SetEvent { - type InputTuple = [ - tokenId: BigNumberish, - keyIndex: string, - valueIndex: string, - key: string, - value: string - ]; - type OutputTuple = [ - tokenId: bigint, - keyIndex: string, - valueIndex: string, - key: string, - value: string - ]; - interface OutputObject { - tokenId: bigint; - keyIndex: string; - valueIndex: string; - key: string; - value: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace SetExpiryEvent { - type InputTuple = [tokenId: BigNumberish, expiry: BigNumberish]; - type OutputTuple = [tokenId: bigint, expiry: bigint]; - interface OutputObject { - tokenId: bigint; - expiry: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace SetReverseEvent { - type InputTuple = [addr: AddressLike, tokenId: BigNumberish]; - type OutputTuple = [addr: string, tokenId: bigint]; - interface OutputObject { - addr: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferEvent { - type InputTuple = [ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [from: string, to: string, tokenId: bigint]; - interface OutputObject { - from: string; - to: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace UpgradedEvent { - type InputTuple = [implementation: AddressLike]; - type OutputTuple = [implementation: string]; - interface OutputObject { - implementation: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface UNSRegistryMock extends BaseContract { - connect(runner?: ContractRunner | null): UNSRegistryMock; - waitForDeployment(): Promise; - interface: UNSRegistryMockInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - BATCH_LIMIT: TypedContractMethod<[], [bigint], "view">; - NAME: TypedContractMethod<[], [string], "view">; - VERSION: TypedContractMethod<[], [string], "view">; - addKey: TypedContractMethod<[key: string], [void], "nonpayable">; - addProxyReader: TypedContractMethod<[ - addr: AddressLike - ], [ - void - ], "nonpayable">; - approve: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; - burn: TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; - deposit: TypedContractMethod<[ - user: AddressLike, - depositData: BytesLike - ], [ - void - ], "nonpayable">; - depositToPolygon: TypedContractMethod<[ - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - execute: TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - string - ], "nonpayable">; - exists: TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; - expiryOf: TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; - get: TypedContractMethod<[ - key: string, - tokenId: BigNumberish - ], [ - string - ], "view">; - getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getByHash: TypedContractMethod<[ - keyHash: BigNumberish, - tokenId: BigNumberish - ], [ - [string, string] & { - key: string; - value: string; - } - ], "view">; - getKey: TypedContractMethod<[keyHash: BigNumberish], [string], "view">; - getKeys: TypedContractMethod<[hashes: BigNumberish[]], [string[]], "view">; - getMany: TypedContractMethod<[ - keys: string[], - tokenId: BigNumberish - ], [ - string[] - ], "view">; - getManyByHash: TypedContractMethod<[ - keyHashes: BigNumberish[], - tokenId: BigNumberish - ], [ - [string[], string[]] & { - keys: string[]; - values: string[]; - } - ], "view">; - getTokenName: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - initialize: TypedContractMethod<[ - mintingManager: AddressLike, - cnsRegistry: AddressLike, - rootChainManager: AddressLike, - childChainManager: AddressLike - ], [ - void - ], "nonpayable">; - isApprovedForAll: TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - isApprovedOrOwner: TypedContractMethod<[ - spender: AddressLike, - tokenId: BigNumberish - ], [ - boolean - ], "view">; - isExpired: TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; - isTrustedForwarder: TypedContractMethod<[ - forwarder: AddressLike - ], [ - boolean - ], "view">; - "mint(address,uint256)": TypedContractMethod<[ - user: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - "mint(address,uint256,bytes)": TypedContractMethod<[ - user: AddressLike, - tokenId: BigNumberish, - arg2: BytesLike - ], [ - void - ], "nonpayable">; - mintTLD: TypedContractMethod<[ - tokenId: BigNumberish, - uri: string - ], [ - void - ], "nonpayable">; - mintWithRecords: TypedContractMethod<[ - to: AddressLike, - labels: string[], - keys: string[], - values: string[], - withReverse: boolean - ], [ - void - ], "nonpayable">; - multicall: TypedContractMethod<[data: BytesLike[]], [string[]], "nonpayable">; - name: TypedContractMethod<[], [string], "view">; - namehash: TypedContractMethod<[labels: string[]], [bigint], "view">; - nonceOf: TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; - onERC721Received: TypedContractMethod<[ - arg0: AddressLike, - from: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - string - ], "nonpayable">; - ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - reconfigure: TypedContractMethod<[ - keys: string[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - removeReverse: TypedContractMethod<[], [void], "nonpayable">; - reset: TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; - resolverOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - reverseNameOf: TypedContractMethod<[addr: AddressLike], [string], "view">; - reverseOf: TypedContractMethod<[addr: AddressLike], [bigint], "view">; - root: TypedContractMethod<[], [bigint], "view">; - "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - set: TypedContractMethod<[ - key: string, - value: string, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - setApprovalForAll: TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - setByHash: TypedContractMethod<[ - keyHash: BigNumberish, - value: string, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - setExpiry: TypedContractMethod<[ - expiry: BigNumberish, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - setMany: TypedContractMethod<[ - keys: string[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - setManyByHash: TypedContractMethod<[ - keyHashes: BigNumberish[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - setOwner: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - setReverse: TypedContractMethod<[labels: string[]], [void], "nonpayable">; - setTokenURIPrefix: TypedContractMethod<[ - prefix: string - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - symbol: TypedContractMethod<[], [string], "view">; - tokenURI: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - transferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - unlock: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - unlockWithRecords: TypedContractMethod<[ - to: AddressLike, - labels: string[], - keys: string[], - values: string[], - withReverse: boolean - ], [ - void - ], "nonpayable">; - upgradeAll: TypedContractMethod<[ - tokenIds: BigNumberish[] - ], [ - void - ], "nonpayable">; - verify: TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - boolean - ], "view">; - withdrawFromPolygon: TypedContractMethod<[ - inputData: BytesLike, - tokenId: BigNumberish, - keys: string[], - values: string[] - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "BATCH_LIMIT"): TypedContractMethod<[], [bigint], "view">; - getFunction(nameOrSignature: "NAME"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "VERSION"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "addKey"): TypedContractMethod<[key: string], [void], "nonpayable">; - getFunction(nameOrSignature: "addProxyReader"): TypedContractMethod<[addr: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "approve"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; - getFunction(nameOrSignature: "burn"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; - getFunction(nameOrSignature: "deposit"): TypedContractMethod<[ - user: AddressLike, - depositData: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "depositToPolygon"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; - getFunction(nameOrSignature: "execute"): TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - string - ], "nonpayable">; - getFunction(nameOrSignature: "exists"): TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; - getFunction(nameOrSignature: "expiryOf"): TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; - getFunction(nameOrSignature: "get"): TypedContractMethod<[ - key: string, - tokenId: BigNumberish - ], [ - string - ], "view">; - getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "getByHash"): TypedContractMethod<[ - keyHash: BigNumberish, - tokenId: BigNumberish - ], [ - [string, string] & { - key: string; - value: string; - } - ], "view">; - getFunction(nameOrSignature: "getKey"): TypedContractMethod<[keyHash: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "getKeys"): TypedContractMethod<[hashes: BigNumberish[]], [string[]], "view">; - getFunction(nameOrSignature: "getMany"): TypedContractMethod<[ - keys: string[], - tokenId: BigNumberish - ], [ - string[] - ], "view">; - getFunction(nameOrSignature: "getManyByHash"): TypedContractMethod<[ - keyHashes: BigNumberish[], - tokenId: BigNumberish - ], [ - [string[], string[]] & { - keys: string[]; - values: string[]; - } - ], "view">; - getFunction(nameOrSignature: "getTokenName"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "initialize"): TypedContractMethod<[ - mintingManager: AddressLike, - cnsRegistry: AddressLike, - rootChainManager: AddressLike, - childChainManager: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "isApprovedOrOwner"): TypedContractMethod<[ - spender: AddressLike, - tokenId: BigNumberish - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "isExpired"): TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; - getFunction(nameOrSignature: "isTrustedForwarder"): TypedContractMethod<[forwarder: AddressLike], [boolean], "view">; - getFunction(nameOrSignature: "mint(address,uint256)"): TypedContractMethod<[ - user: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "mint(address,uint256,bytes)"): TypedContractMethod<[ - user: AddressLike, - tokenId: BigNumberish, - arg2: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "mintTLD"): TypedContractMethod<[ - tokenId: BigNumberish, - uri: string - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "mintWithRecords"): TypedContractMethod<[ - to: AddressLike, - labels: string[], - keys: string[], - values: string[], - withReverse: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "multicall"): TypedContractMethod<[data: BytesLike[]], [string[]], "nonpayable">; - getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "namehash"): TypedContractMethod<[labels: string[]], [bigint], "view">; - getFunction(nameOrSignature: "nonceOf"): TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; - getFunction(nameOrSignature: "onERC721Received"): TypedContractMethod<[ - arg0: AddressLike, - from: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - string - ], "nonpayable">; - getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "reconfigure"): TypedContractMethod<[ - keys: string[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "removeReverse"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "reset"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; - getFunction(nameOrSignature: "resolverOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "reverseNameOf"): TypedContractMethod<[addr: AddressLike], [string], "view">; - getFunction(nameOrSignature: "reverseOf"): TypedContractMethod<[addr: AddressLike], [bigint], "view">; - getFunction(nameOrSignature: "root"): TypedContractMethod<[], [bigint], "view">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "set"): TypedContractMethod<[ - key: string, - value: string, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ - operator: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setByHash"): TypedContractMethod<[ - keyHash: BigNumberish, - value: string, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setExpiry"): TypedContractMethod<[ - expiry: BigNumberish, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setMany"): TypedContractMethod<[ - keys: string[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setManyByHash"): TypedContractMethod<[ - keyHashes: BigNumberish[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setOwner"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setReverse"): TypedContractMethod<[labels: string[]], [void], "nonpayable">; - getFunction(nameOrSignature: "setTokenURIPrefix"): TypedContractMethod<[prefix: string], [void], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "symbol"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "tokenURI"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "unlock"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "unlockWithRecords"): TypedContractMethod<[ - to: AddressLike, - labels: string[], - keys: string[], - values: string[], - withReverse: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "upgradeAll"): TypedContractMethod<[tokenIds: BigNumberish[]], [void], "nonpayable">; - getFunction(nameOrSignature: "verify"): TypedContractMethod<[ - req: IForwarder.ForwardRequestStruct, - signature: BytesLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "withdrawFromPolygon"): TypedContractMethod<[ - inputData: BytesLike, - tokenId: BigNumberish, - keys: string[], - values: string[] - ], [ - void - ], "nonpayable">; - getEvent(key: "AdminChanged"): TypedContractEvent; - getEvent(key: "Approval"): TypedContractEvent; - getEvent(key: "ApprovalForAll"): TypedContractEvent; - getEvent(key: "Initialized"): TypedContractEvent; - getEvent(key: "NewKey"): TypedContractEvent; - getEvent(key: "NewURI"): TypedContractEvent; - getEvent(key: "NewURIPrefix"): TypedContractEvent; - getEvent(key: "RemoveReverse"): TypedContractEvent; - getEvent(key: "ResetRecords"): TypedContractEvent; - getEvent(key: "Set"): TypedContractEvent; - getEvent(key: "SetExpiry"): TypedContractEvent; - getEvent(key: "SetReverse"): TypedContractEvent; - getEvent(key: "Transfer"): TypedContractEvent; - getEvent(key: "Upgraded"): TypedContractEvent; - filters: { - "AdminChanged(address,address)": TypedContractEvent; - AdminChanged: TypedContractEvent; - "Approval(address,address,uint256)": TypedContractEvent; - Approval: TypedContractEvent; - "ApprovalForAll(address,address,bool)": TypedContractEvent; - ApprovalForAll: TypedContractEvent; - "Initialized(uint8)": TypedContractEvent; - Initialized: TypedContractEvent; - "NewKey(uint256,string,string)": TypedContractEvent; - NewKey: TypedContractEvent; - "NewURI(uint256,string)": TypedContractEvent; - NewURI: TypedContractEvent; - "NewURIPrefix(string)": TypedContractEvent; - NewURIPrefix: TypedContractEvent; - "RemoveReverse(address)": TypedContractEvent; - RemoveReverse: TypedContractEvent; - "ResetRecords(uint256)": TypedContractEvent; - ResetRecords: TypedContractEvent; - "Set(uint256,string,string,string,string)": TypedContractEvent; - Set: TypedContractEvent; - "SetExpiry(uint256,uint64)": TypedContractEvent; - SetExpiry: TypedContractEvent; - "SetReverse(address,uint256)": TypedContractEvent; - SetReverse: TypedContractEvent; - "Transfer(address,address,uint256)": TypedContractEvent; - Transfer: TypedContractEvent; - "Upgraded(address)": TypedContractEvent; - Upgraded: TypedContractEvent; - }; -} -//# sourceMappingURL=UNSRegistryMock.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/mocks/UNSRegistryMock.d.ts.map b/dist/types/contracts/mocks/UNSRegistryMock.d.ts.map deleted file mode 100644 index 4567c6d2..00000000 --- a/dist/types/contracts/mocks/UNSRegistryMock.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"UNSRegistryMock.d.ts","sourceRoot":"","sources":["../../../../types/contracts/mocks/UNSRegistryMock.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/mocks/UNSRegistryMock.js b/dist/types/contracts/mocks/UNSRegistryMock.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/mocks/UNSRegistryMock.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/mocks/index.d.ts b/dist/types/contracts/mocks/index.d.ts deleted file mode 100644 index c5908db0..00000000 --- a/dist/types/contracts/mocks/index.d.ts +++ /dev/null @@ -1,14 +0,0 @@ -export type { BaseForwarderMock } from "./BaseForwarderMock"; -export type { BaseRoutingForwarderMock } from "./BaseRoutingForwarderMock"; -export type { ERC1155Mock } from "./ERC1155Mock"; -export type { ERC20Mock } from "./ERC20Mock"; -export type { ERC20UnsafeMock } from "./ERC20UnsafeMock"; -export type { ERC2771ContextMock } from "./ERC2771ContextMock"; -export type { ERC2771RegistryContextMock } from "./ERC2771RegistryContextMock"; -export type { ERC721Mock } from "./ERC721Mock"; -export type { ERC721ReceiverMock } from "./ERC721ReceiverMock"; -export type { MinterRoleMock } from "./MinterRoleMock"; -export type { MintingManagerMock } from "./MintingManagerMock"; -export type { UNSRegistryForwarderMock } from "./UNSRegistryForwarderMock"; -export type { UNSRegistryMock } from "./UNSRegistryMock"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/mocks/index.d.ts.map b/dist/types/contracts/mocks/index.d.ts.map deleted file mode 100644 index c1a06b73..00000000 --- a/dist/types/contracts/mocks/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../types/contracts/mocks/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,YAAY,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAC3E,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,YAAY,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,YAAY,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,YAAY,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,YAAY,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC/E,YAAY,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,YAAY,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,YAAY,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,YAAY,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAC3E,YAAY,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC"} \ No newline at end of file diff --git a/dist/types/contracts/mocks/index.js b/dist/types/contracts/mocks/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/mocks/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/roles/MinterRole.d.ts b/dist/types/contracts/roles/MinterRole.d.ts deleted file mode 100644 index affd7dc1..00000000 --- a/dist/types/contracts/roles/MinterRole.d.ts +++ /dev/null @@ -1,253 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; -export interface MinterRoleInterface extends Interface { - getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE" | "MINTER_ROLE" | "addMinter" | "addMinters" | "closeMinter" | "getRoleAdmin" | "grantRole" | "hasRole" | "isMinter" | "owner" | "removeMinter" | "removeMinters" | "renounceMinter" | "renounceOwnership" | "renounceRole" | "revokeRole" | "rotateMinter" | "supportsInterface" | "transferOwnership"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Initialized" | "OwnershipTransferred" | "RoleAdminChanged" | "RoleGranted" | "RoleRevoked"): EventFragment; - encodeFunctionData(functionFragment: "DEFAULT_ADMIN_ROLE", values?: undefined): string; - encodeFunctionData(functionFragment: "MINTER_ROLE", values?: undefined): string; - encodeFunctionData(functionFragment: "addMinter", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "addMinters", values: [AddressLike[]]): string; - encodeFunctionData(functionFragment: "closeMinter", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "getRoleAdmin", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "grantRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "hasRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "isMinter", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "owner", values?: undefined): string; - encodeFunctionData(functionFragment: "removeMinter", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "removeMinters", values: [AddressLike[]]): string; - encodeFunctionData(functionFragment: "renounceMinter", values?: undefined): string; - encodeFunctionData(functionFragment: "renounceOwnership", values?: undefined): string; - encodeFunctionData(functionFragment: "renounceRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "revokeRole", values: [BytesLike, AddressLike]): string; - encodeFunctionData(functionFragment: "rotateMinter", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "transferOwnership", values: [AddressLike]): string; - decodeFunctionResult(functionFragment: "DEFAULT_ADMIN_ROLE", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "MINTER_ROLE", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "addMinter", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "addMinters", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "closeMinter", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getRoleAdmin", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "grantRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "hasRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isMinter", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "removeMinter", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "removeMinters", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceMinter", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceOwnership", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "revokeRole", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "rotateMinter", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result; -} -export declare namespace InitializedEvent { - type InputTuple = [version: BigNumberish]; - type OutputTuple = [version: bigint]; - interface OutputObject { - version: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace OwnershipTransferredEvent { - type InputTuple = [previousOwner: AddressLike, newOwner: AddressLike]; - type OutputTuple = [previousOwner: string, newOwner: string]; - interface OutputObject { - previousOwner: string; - newOwner: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RoleAdminChangedEvent { - type InputTuple = [ - role: BytesLike, - previousAdminRole: BytesLike, - newAdminRole: BytesLike - ]; - type OutputTuple = [ - role: string, - previousAdminRole: string, - newAdminRole: string - ]; - interface OutputObject { - role: string; - previousAdminRole: string; - newAdminRole: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RoleGrantedEvent { - type InputTuple = [ - role: BytesLike, - account: AddressLike, - sender: AddressLike - ]; - type OutputTuple = [role: string, account: string, sender: string]; - interface OutputObject { - role: string; - account: string; - sender: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace RoleRevokedEvent { - type InputTuple = [ - role: BytesLike, - account: AddressLike, - sender: AddressLike - ]; - type OutputTuple = [role: string, account: string, sender: string]; - interface OutputObject { - role: string; - account: string; - sender: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface MinterRole extends BaseContract { - connect(runner?: ContractRunner | null): MinterRole; - waitForDeployment(): Promise; - interface: MinterRoleInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - DEFAULT_ADMIN_ROLE: TypedContractMethod<[], [string], "view">; - MINTER_ROLE: TypedContractMethod<[], [string], "view">; - addMinter: TypedContractMethod<[account: AddressLike], [void], "nonpayable">; - addMinters: TypedContractMethod<[ - accounts: AddressLike[] - ], [ - void - ], "nonpayable">; - closeMinter: TypedContractMethod<[receiver: AddressLike], [void], "payable">; - getRoleAdmin: TypedContractMethod<[role: BytesLike], [string], "view">; - grantRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - hasRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - boolean - ], "view">; - isMinter: TypedContractMethod<[account: AddressLike], [boolean], "view">; - owner: TypedContractMethod<[], [string], "view">; - removeMinter: TypedContractMethod<[ - account: AddressLike - ], [ - void - ], "nonpayable">; - removeMinters: TypedContractMethod<[ - accounts: AddressLike[] - ], [ - void - ], "nonpayable">; - renounceMinter: TypedContractMethod<[], [void], "nonpayable">; - renounceOwnership: TypedContractMethod<[], [void], "nonpayable">; - renounceRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - revokeRole: TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - rotateMinter: TypedContractMethod<[receiver: AddressLike], [void], "payable">; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - transferOwnership: TypedContractMethod<[ - newOwner: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "MINTER_ROLE"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "addMinter"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "addMinters"): TypedContractMethod<[accounts: AddressLike[]], [void], "nonpayable">; - getFunction(nameOrSignature: "closeMinter"): TypedContractMethod<[receiver: AddressLike], [void], "payable">; - getFunction(nameOrSignature: "getRoleAdmin"): TypedContractMethod<[role: BytesLike], [string], "view">; - getFunction(nameOrSignature: "grantRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "hasRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "isMinter"): TypedContractMethod<[account: AddressLike], [boolean], "view">; - getFunction(nameOrSignature: "owner"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "removeMinter"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "removeMinters"): TypedContractMethod<[accounts: AddressLike[]], [void], "nonpayable">; - getFunction(nameOrSignature: "renounceMinter"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "renounceOwnership"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "renounceRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "revokeRole"): TypedContractMethod<[ - role: BytesLike, - account: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "rotateMinter"): TypedContractMethod<[receiver: AddressLike], [void], "payable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "transferOwnership"): TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">; - getEvent(key: "Initialized"): TypedContractEvent; - getEvent(key: "OwnershipTransferred"): TypedContractEvent; - getEvent(key: "RoleAdminChanged"): TypedContractEvent; - getEvent(key: "RoleGranted"): TypedContractEvent; - getEvent(key: "RoleRevoked"): TypedContractEvent; - filters: { - "Initialized(uint8)": TypedContractEvent; - Initialized: TypedContractEvent; - "OwnershipTransferred(address,address)": TypedContractEvent; - OwnershipTransferred: TypedContractEvent; - "RoleAdminChanged(bytes32,bytes32,bytes32)": TypedContractEvent; - RoleAdminChanged: TypedContractEvent; - "RoleGranted(bytes32,address,address)": TypedContractEvent; - RoleGranted: TypedContractEvent; - "RoleRevoked(bytes32,address,address)": TypedContractEvent; - RoleRevoked: TypedContractEvent; - }; -} -//# sourceMappingURL=MinterRole.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/roles/MinterRole.d.ts.map b/dist/types/contracts/roles/MinterRole.d.ts.map deleted file mode 100644 index 6382cc8b..00000000 --- a/dist/types/contracts/roles/MinterRole.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"MinterRole.d.ts","sourceRoot":"","sources":["../../../../types/contracts/roles/MinterRole.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/roles/MinterRole.js b/dist/types/contracts/roles/MinterRole.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/roles/MinterRole.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/roles/index.d.ts b/dist/types/contracts/roles/index.d.ts deleted file mode 100644 index 23439f55..00000000 --- a/dist/types/contracts/roles/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export type { MinterRole } from "./MinterRole"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/roles/index.d.ts.map b/dist/types/contracts/roles/index.d.ts.map deleted file mode 100644 index 6850b15b..00000000 --- a/dist/types/contracts/roles/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../types/contracts/roles/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC"} \ No newline at end of file diff --git a/dist/types/contracts/roles/index.js b/dist/types/contracts/roles/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/roles/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/utils/Blocklist.d.ts b/dist/types/contracts/utils/Blocklist.d.ts deleted file mode 100644 index 96492a9d..00000000 --- a/dist/types/contracts/utils/Blocklist.d.ts +++ /dev/null @@ -1,84 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; -export interface BlocklistInterface extends Interface { - getFunction(nameOrSignature: "isBlocked"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Blocked" | "BlocklistDisabled" | "BlocklistEnabled" | "Initialized"): EventFragment; - encodeFunctionData(functionFragment: "isBlocked", values: [BigNumberish]): string; - decodeFunctionResult(functionFragment: "isBlocked", data: BytesLike): Result; -} -export declare namespace BlockedEvent { - type InputTuple = [tokenId: BigNumberish]; - type OutputTuple = [tokenId: bigint]; - interface OutputObject { - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace BlocklistDisabledEvent { - type InputTuple = [account: AddressLike]; - type OutputTuple = [account: string]; - interface OutputObject { - account: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace BlocklistEnabledEvent { - type InputTuple = [account: AddressLike]; - type OutputTuple = [account: string]; - interface OutputObject { - account: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace InitializedEvent { - type InputTuple = [version: BigNumberish]; - type OutputTuple = [version: bigint]; - interface OutputObject { - version: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface Blocklist extends BaseContract { - connect(runner?: ContractRunner | null): Blocklist; - waitForDeployment(): Promise; - interface: BlocklistInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - isBlocked: TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "isBlocked"): TypedContractMethod<[tokenId: BigNumberish], [boolean], "view">; - getEvent(key: "Blocked"): TypedContractEvent; - getEvent(key: "BlocklistDisabled"): TypedContractEvent; - getEvent(key: "BlocklistEnabled"): TypedContractEvent; - getEvent(key: "Initialized"): TypedContractEvent; - filters: { - "Blocked(uint256)": TypedContractEvent; - Blocked: TypedContractEvent; - "BlocklistDisabled(address)": TypedContractEvent; - BlocklistDisabled: TypedContractEvent; - "BlocklistEnabled(address)": TypedContractEvent; - BlocklistEnabled: TypedContractEvent; - "Initialized(uint8)": TypedContractEvent; - Initialized: TypedContractEvent; - }; -} -//# sourceMappingURL=Blocklist.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/utils/Blocklist.d.ts.map b/dist/types/contracts/utils/Blocklist.d.ts.map deleted file mode 100644 index ed737f8c..00000000 --- a/dist/types/contracts/utils/Blocklist.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Blocklist.d.ts","sourceRoot":"","sources":["../../../../types/contracts/utils/Blocklist.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/utils/Blocklist.js b/dist/types/contracts/utils/Blocklist.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/utils/Blocklist.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/utils/ERC1271SimpleWallet.d.ts b/dist/types/contracts/utils/ERC1271SimpleWallet.d.ts deleted file mode 100644 index 7f1493d7..00000000 --- a/dist/types/contracts/utils/ERC1271SimpleWallet.d.ts +++ /dev/null @@ -1,36 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../common"; -export interface ERC1271SimpleWalletInterface extends Interface { - getFunction(nameOrSignature: "isValidSignature"): FunctionFragment; - encodeFunctionData(functionFragment: "isValidSignature", values: [BytesLike, BytesLike]): string; - decodeFunctionResult(functionFragment: "isValidSignature", data: BytesLike): Result; -} -export interface ERC1271SimpleWallet extends BaseContract { - connect(runner?: ContractRunner | null): ERC1271SimpleWallet; - waitForDeployment(): Promise; - interface: ERC1271SimpleWalletInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - isValidSignature: TypedContractMethod<[ - _hash: BytesLike, - _signature: BytesLike - ], [ - string - ], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "isValidSignature"): TypedContractMethod<[ - _hash: BytesLike, - _signature: BytesLike - ], [ - string - ], "view">; - filters: {}; -} -//# sourceMappingURL=ERC1271SimpleWallet.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/utils/ERC1271SimpleWallet.d.ts.map b/dist/types/contracts/utils/ERC1271SimpleWallet.d.ts.map deleted file mode 100644 index 1d5da40d..00000000 --- a/dist/types/contracts/utils/ERC1271SimpleWallet.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ERC1271SimpleWallet.d.ts","sourceRoot":"","sources":["../../../../types/contracts/utils/ERC1271SimpleWallet.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/utils/ERC1271SimpleWallet.js b/dist/types/contracts/utils/ERC1271SimpleWallet.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/utils/ERC1271SimpleWallet.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/utils/MultiSend.d.ts b/dist/types/contracts/utils/MultiSend.d.ts deleted file mode 100644 index 560b06ea..00000000 --- a/dist/types/contracts/utils/MultiSend.d.ts +++ /dev/null @@ -1,21 +0,0 @@ -import type { BaseContract, FunctionFragment, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener } from "../../common"; -export interface MultiSendInterface extends Interface { -} -export interface MultiSend extends BaseContract { - connect(runner?: ContractRunner | null): MultiSend; - waitForDeployment(): Promise; - interface: MultiSendInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - getFunction(key: string | FunctionFragment): T; - filters: {}; -} -//# sourceMappingURL=MultiSend.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/utils/MultiSend.d.ts.map b/dist/types/contracts/utils/MultiSend.d.ts.map deleted file mode 100644 index 1c46b3ff..00000000 --- a/dist/types/contracts/utils/MultiSend.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"MultiSend.d.ts","sourceRoot":"","sources":["../../../../types/contracts/utils/MultiSend.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,gBAAgB,EAChB,SAAS,EACT,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,aAAa,EACd,MAAM,cAAc,CAAC;AAEtB,MAAM,WAAW,kBAAmB,SAAQ,SAAS;CAAG;AAExD,MAAM,WAAW,SAAU,SAAQ,YAAY;IAC7C,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,SAAS,CAAC;IACnD,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,kBAAkB,CAAC;IAE9B,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,OAAO,EAAE,EAAE,CAAC;CACb"} \ No newline at end of file diff --git a/dist/types/contracts/utils/MultiSend.js b/dist/types/contracts/utils/MultiSend.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/utils/MultiSend.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/utils/Ownable.d.ts b/dist/types/contracts/utils/Ownable.d.ts deleted file mode 100644 index 95ea21a7..00000000 --- a/dist/types/contracts/utils/Ownable.d.ts +++ /dev/null @@ -1,69 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; -export interface OwnableInterface extends Interface { - getFunction(nameOrSignature: "owner" | "renounceOwnership" | "transferOwnership"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Initialized" | "OwnershipTransferred"): EventFragment; - encodeFunctionData(functionFragment: "owner", values?: undefined): string; - encodeFunctionData(functionFragment: "renounceOwnership", values?: undefined): string; - encodeFunctionData(functionFragment: "transferOwnership", values: [AddressLike]): string; - decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceOwnership", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result; -} -export declare namespace InitializedEvent { - type InputTuple = [version: BigNumberish]; - type OutputTuple = [version: bigint]; - interface OutputObject { - version: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace OwnershipTransferredEvent { - type InputTuple = [previousOwner: AddressLike, newOwner: AddressLike]; - type OutputTuple = [previousOwner: string, newOwner: string]; - interface OutputObject { - previousOwner: string; - newOwner: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface Ownable extends BaseContract { - connect(runner?: ContractRunner | null): Ownable; - waitForDeployment(): Promise; - interface: OwnableInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - owner: TypedContractMethod<[], [string], "view">; - renounceOwnership: TypedContractMethod<[], [void], "nonpayable">; - transferOwnership: TypedContractMethod<[ - newOwner: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "owner"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "renounceOwnership"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "transferOwnership"): TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">; - getEvent(key: "Initialized"): TypedContractEvent; - getEvent(key: "OwnershipTransferred"): TypedContractEvent; - filters: { - "Initialized(uint8)": TypedContractEvent; - Initialized: TypedContractEvent; - "OwnershipTransferred(address,address)": TypedContractEvent; - OwnershipTransferred: TypedContractEvent; - }; -} -//# sourceMappingURL=Ownable.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/utils/Ownable.d.ts.map b/dist/types/contracts/utils/Ownable.d.ts.map deleted file mode 100644 index ccca31d4..00000000 --- a/dist/types/contracts/utils/Ownable.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Ownable.d.ts","sourceRoot":"","sources":["../../../../types/contracts/utils/Ownable.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/contracts/utils/Ownable.js b/dist/types/contracts/utils/Ownable.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/utils/Ownable.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/utils/Pausable.d.ts b/dist/types/contracts/utils/Pausable.d.ts deleted file mode 100644 index e8e331d3..00000000 --- a/dist/types/contracts/utils/Pausable.d.ts +++ /dev/null @@ -1,70 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; -export interface PausableInterface extends Interface { - getFunction(nameOrSignature: "paused"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Initialized" | "Paused" | "Unpaused"): EventFragment; - encodeFunctionData(functionFragment: "paused", values?: undefined): string; - decodeFunctionResult(functionFragment: "paused", data: BytesLike): Result; -} -export declare namespace InitializedEvent { - type InputTuple = [version: BigNumberish]; - type OutputTuple = [version: bigint]; - interface OutputObject { - version: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace PausedEvent { - type InputTuple = [account: AddressLike]; - type OutputTuple = [account: string]; - interface OutputObject { - account: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace UnpausedEvent { - type InputTuple = [account: AddressLike]; - type OutputTuple = [account: string]; - interface OutputObject { - account: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface Pausable extends BaseContract { - connect(runner?: ContractRunner | null): Pausable; - waitForDeployment(): Promise; - interface: PausableInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - paused: TypedContractMethod<[], [boolean], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "paused"): TypedContractMethod<[], [boolean], "view">; - getEvent(key: "Initialized"): TypedContractEvent; - getEvent(key: "Paused"): TypedContractEvent; - getEvent(key: "Unpaused"): TypedContractEvent; - filters: { - "Initialized(uint8)": TypedContractEvent; - Initialized: TypedContractEvent; - "Paused(address)": TypedContractEvent; - Paused: TypedContractEvent; - "Unpaused(address)": TypedContractEvent; - Unpaused: TypedContractEvent; - }; -} -//# sourceMappingURL=Pausable.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/utils/Pausable.d.ts.map b/dist/types/contracts/utils/Pausable.d.ts.map deleted file mode 100644 index 17363190..00000000 --- a/dist/types/contracts/utils/Pausable.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Pausable.d.ts","sourceRoot":"","sources":["../../../../types/contracts/utils/Pausable.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,aAAa,EACb,WAAW,EACX,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,mBAAmB,EACnB,aAAa,EACb,mBAAmB,EACpB,MAAM,cAAc,CAAC;AAEtB,MAAM,WAAW,iBAAkB,SAAQ,SAAS;IAClD,WAAW,CAAC,eAAe,EAAE,QAAQ,GAAG,gBAAgB,CAAC;IAEzD,QAAQ,CACN,sBAAsB,EAAE,aAAa,GAAG,QAAQ,GAAG,UAAU,GAC5D,aAAa,CAAC;IAEjB,kBAAkB,CAAC,gBAAgB,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IAE3E,oBAAoB,CAAC,gBAAgB,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;CAC3E;AAED,yBAAiB,gBAAgB,CAAC;IAChC,KAAY,UAAU,GAAG,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IACjD,KAAY,WAAW,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC5C,UAAiB,YAAY;QAC3B,OAAO,EAAE,MAAM,CAAC;KACjB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,WAAW,CAAC;IAC3B,KAAY,UAAU,GAAG,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IAChD,KAAY,WAAW,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC5C,UAAiB,YAAY;QAC3B,OAAO,EAAE,MAAM,CAAC;KACjB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,yBAAiB,aAAa,CAAC;IAC7B,KAAY,UAAU,GAAG,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IAChD,KAAY,WAAW,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC5C,UAAiB,YAAY;QAC3B,OAAO,EAAE,MAAM,CAAC;KACjB;IACD,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC9E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACzD;AAED,MAAM,WAAW,QAAS,SAAQ,YAAY;IAC5C,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,QAAQ,CAAC;IAClD,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,iBAAiB,CAAC;IAE7B,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,MAAM,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IAEnD,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,WAAW,CACT,eAAe,EAAE,QAAQ,GACxB,mBAAmB,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IAE9C,QAAQ,CACN,GAAG,EAAE,aAAa,GACjB,kBAAkB,CACnB,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,QAAQ,GACZ,kBAAkB,CACnB,WAAW,CAAC,UAAU,EACtB,WAAW,CAAC,WAAW,EACvB,WAAW,CAAC,YAAY,CACzB,CAAC;IACF,QAAQ,CACN,GAAG,EAAE,UAAU,GACd,kBAAkB,CACnB,aAAa,CAAC,UAAU,EACxB,aAAa,CAAC,WAAW,EACzB,aAAa,CAAC,YAAY,CAC3B,CAAC;IAEF,OAAO,EAAE;QACP,oBAAoB,EAAE,kBAAkB,CACtC,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QACF,WAAW,EAAE,kBAAkB,CAC7B,gBAAgB,CAAC,UAAU,EAC3B,gBAAgB,CAAC,WAAW,EAC5B,gBAAgB,CAAC,YAAY,CAC9B,CAAC;QAEF,iBAAiB,EAAE,kBAAkB,CACnC,WAAW,CAAC,UAAU,EACtB,WAAW,CAAC,WAAW,EACvB,WAAW,CAAC,YAAY,CACzB,CAAC;QACF,MAAM,EAAE,kBAAkB,CACxB,WAAW,CAAC,UAAU,EACtB,WAAW,CAAC,WAAW,EACvB,WAAW,CAAC,YAAY,CACzB,CAAC;QAEF,mBAAmB,EAAE,kBAAkB,CACrC,aAAa,CAAC,UAAU,EACxB,aAAa,CAAC,WAAW,EACzB,aAAa,CAAC,YAAY,CAC3B,CAAC;QACF,QAAQ,EAAE,kBAAkB,CAC1B,aAAa,CAAC,UAAU,EACxB,aAAa,CAAC,WAAW,EACzB,aAAa,CAAC,YAAY,CAC3B,CAAC;KACH,CAAC;CACH"} \ No newline at end of file diff --git a/dist/types/contracts/utils/Pausable.js b/dist/types/contracts/utils/Pausable.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/utils/Pausable.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/contracts/utils/index.d.ts b/dist/types/contracts/utils/index.d.ts deleted file mode 100644 index de4400c6..00000000 --- a/dist/types/contracts/utils/index.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -export type { Blocklist } from "./Blocklist"; -export type { ERC1271SimpleWallet } from "./ERC1271SimpleWallet"; -export type { MultiSend } from "./MultiSend"; -export type { Ownable } from "./Ownable"; -export type { Pausable } from "./Pausable"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/contracts/utils/index.d.ts.map b/dist/types/contracts/utils/index.d.ts.map deleted file mode 100644 index 8e9a0278..00000000 --- a/dist/types/contracts/utils/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../types/contracts/utils/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,YAAY,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,YAAY,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,YAAY,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,YAAY,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC"} \ No newline at end of file diff --git a/dist/types/contracts/utils/index.js b/dist/types/contracts/utils/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/contracts/utils/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/dot-crypto/contracts/CNSRegistry.d.ts b/dist/types/dot-crypto/contracts/CNSRegistry.d.ts deleted file mode 100644 index 67ff5b90..00000000 --- a/dist/types/dot-crypto/contracts/CNSRegistry.d.ts +++ /dev/null @@ -1,596 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; -export interface CNSRegistryInterface extends Interface { - getFunction(nameOrSignature: "addController" | "approve" | "balanceOf" | "burn" | "burnChild" | "childIdOf" | "controlledBurn" | "controlledMintChild" | "controlledResolveTo" | "controlledSafeMintChild" | "controlledSafeTransferFrom" | "controlledSetTokenURIPrefix" | "controlledTransferFrom" | "getApproved" | "isApprovedForAll" | "isApprovedOrOwner" | "isController" | "mintChild" | "name" | "ownerOf" | "renounceController" | "resolveTo" | "resolverOf" | "root" | "safeMintChild(address,uint256,string)" | "safeMintChild(address,uint256,string,bytes)" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "safeTransferFromChild(address,address,uint256,string)" | "safeTransferFromChild(address,address,uint256,string,bytes)" | "setApprovalForAll" | "setOwner" | "supportsInterface" | "symbol" | "sync" | "tokenURI" | "transferFrom" | "transferFromChild"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "NewURI" | "NewURIPrefix" | "Resolve" | "Sync" | "Transfer"): EventFragment; - encodeFunctionData(functionFragment: "addController", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "burn", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "burnChild", values: [BigNumberish, string]): string; - encodeFunctionData(functionFragment: "childIdOf", values: [BigNumberish, string]): string; - encodeFunctionData(functionFragment: "controlledBurn", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "controlledMintChild", values: [AddressLike, BigNumberish, string]): string; - encodeFunctionData(functionFragment: "controlledResolveTo", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "controlledSafeMintChild", values: [AddressLike, BigNumberish, string, BytesLike]): string; - encodeFunctionData(functionFragment: "controlledSafeTransferFrom", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "controlledSetTokenURIPrefix", values: [string]): string; - encodeFunctionData(functionFragment: "controlledTransferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "isApprovedOrOwner", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "isController", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "mintChild", values: [AddressLike, BigNumberish, string]): string; - encodeFunctionData(functionFragment: "name", values?: undefined): string; - encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "renounceController", values?: undefined): string; - encodeFunctionData(functionFragment: "resolveTo", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "resolverOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "root", values?: undefined): string; - encodeFunctionData(functionFragment: "safeMintChild(address,uint256,string)", values: [AddressLike, BigNumberish, string]): string; - encodeFunctionData(functionFragment: "safeMintChild(address,uint256,string,bytes)", values: [AddressLike, BigNumberish, string, BytesLike]): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "safeTransferFromChild(address,address,uint256,string)", values: [AddressLike, AddressLike, BigNumberish, string]): string; - encodeFunctionData(functionFragment: "safeTransferFromChild(address,address,uint256,string,bytes)", values: [AddressLike, AddressLike, BigNumberish, string, BytesLike]): string; - encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; - encodeFunctionData(functionFragment: "setOwner", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "symbol", values?: undefined): string; - encodeFunctionData(functionFragment: "sync", values: [BigNumberish, BigNumberish]): string; - encodeFunctionData(functionFragment: "tokenURI", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "transferFromChild", values: [AddressLike, AddressLike, BigNumberish, string]): string; - decodeFunctionResult(functionFragment: "addController", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "burn", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "burnChild", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "childIdOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "controlledBurn", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "controlledMintChild", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "controlledResolveTo", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "controlledSafeMintChild", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "controlledSafeTransferFrom", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "controlledSetTokenURIPrefix", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "controlledTransferFrom", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedOrOwner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isController", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "mintChild", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceController", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "resolveTo", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "resolverOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "root", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeMintChild(address,uint256,string)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeMintChild(address,uint256,string,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFromChild(address,address,uint256,string)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFromChild(address,address,uint256,string,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setOwner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "sync", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "tokenURI", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferFromChild", data: BytesLike): Result; -} -export declare namespace ApprovalEvent { - type InputTuple = [ - owner: AddressLike, - approved: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [owner: string, approved: string, tokenId: bigint]; - interface OutputObject { - owner: string; - approved: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ApprovalForAllEvent { - type InputTuple = [ - owner: AddressLike, - operator: AddressLike, - approved: boolean - ]; - type OutputTuple = [ - owner: string, - operator: string, - approved: boolean - ]; - interface OutputObject { - owner: string; - operator: string; - approved: boolean; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NewURIEvent { - type InputTuple = [tokenId: BigNumberish, uri: string]; - type OutputTuple = [tokenId: bigint, uri: string]; - interface OutputObject { - tokenId: bigint; - uri: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NewURIPrefixEvent { - type InputTuple = [prefix: string]; - type OutputTuple = [prefix: string]; - interface OutputObject { - prefix: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ResolveEvent { - type InputTuple = [tokenId: BigNumberish, to: AddressLike]; - type OutputTuple = [tokenId: bigint, to: string]; - interface OutputObject { - tokenId: bigint; - to: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace SyncEvent { - type InputTuple = [ - resolver: AddressLike, - updateId: BigNumberish, - tokenId: BigNumberish - ]; - type OutputTuple = [ - resolver: string, - updateId: bigint, - tokenId: bigint - ]; - interface OutputObject { - resolver: string; - updateId: bigint; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferEvent { - type InputTuple = [ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [from: string, to: string, tokenId: bigint]; - interface OutputObject { - from: string; - to: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface CNSRegistry extends BaseContract { - connect(runner?: ContractRunner | null): CNSRegistry; - waitForDeployment(): Promise; - interface: CNSRegistryInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - addController: TypedContractMethod<[ - account: AddressLike - ], [ - void - ], "nonpayable">; - approve: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; - burn: TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; - burnChild: TypedContractMethod<[ - tokenId: BigNumberish, - label: string - ], [ - void - ], "nonpayable">; - childIdOf: TypedContractMethod<[ - tokenId: BigNumberish, - label: string - ], [ - bigint - ], "view">; - controlledBurn: TypedContractMethod<[ - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - controlledMintChild: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish, - label: string - ], [ - void - ], "nonpayable">; - controlledResolveTo: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - controlledSafeMintChild: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish, - label: string, - _data: BytesLike - ], [ - void - ], "nonpayable">; - controlledSafeTransferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - _data: BytesLike - ], [ - void - ], "nonpayable">; - controlledSetTokenURIPrefix: TypedContractMethod<[ - prefix: string - ], [ - void - ], "nonpayable">; - controlledTransferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - isApprovedForAll: TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - isApprovedOrOwner: TypedContractMethod<[ - spender: AddressLike, - tokenId: BigNumberish - ], [ - boolean - ], "view">; - isController: TypedContractMethod<[account: AddressLike], [boolean], "view">; - mintChild: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish, - label: string - ], [ - void - ], "nonpayable">; - name: TypedContractMethod<[], [string], "view">; - ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - renounceController: TypedContractMethod<[], [void], "nonpayable">; - resolveTo: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - resolverOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - root: TypedContractMethod<[], [bigint], "view">; - "safeMintChild(address,uint256,string)": TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish, - label: string - ], [ - void - ], "nonpayable">; - "safeMintChild(address,uint256,string,bytes)": TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish, - label: string, - _data: BytesLike - ], [ - void - ], "nonpayable">; - "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - _data: BytesLike - ], [ - void - ], "nonpayable">; - "safeTransferFromChild(address,address,uint256,string)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - label: string - ], [ - void - ], "nonpayable">; - "safeTransferFromChild(address,address,uint256,string,bytes)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - label: string, - _data: BytesLike - ], [ - void - ], "nonpayable">; - setApprovalForAll: TypedContractMethod<[ - to: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - setOwner: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - symbol: TypedContractMethod<[], [string], "view">; - sync: TypedContractMethod<[ - tokenId: BigNumberish, - updateId: BigNumberish - ], [ - void - ], "nonpayable">; - tokenURI: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - transferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - transferFromChild: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - label: string - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "addController"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "approve"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; - getFunction(nameOrSignature: "burn"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; - getFunction(nameOrSignature: "burnChild"): TypedContractMethod<[ - tokenId: BigNumberish, - label: string - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "childIdOf"): TypedContractMethod<[ - tokenId: BigNumberish, - label: string - ], [ - bigint - ], "view">; - getFunction(nameOrSignature: "controlledBurn"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; - getFunction(nameOrSignature: "controlledMintChild"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish, - label: string - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "controlledResolveTo"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "controlledSafeMintChild"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish, - label: string, - _data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "controlledSafeTransferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - _data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "controlledSetTokenURIPrefix"): TypedContractMethod<[prefix: string], [void], "nonpayable">; - getFunction(nameOrSignature: "controlledTransferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "isApprovedOrOwner"): TypedContractMethod<[ - spender: AddressLike, - tokenId: BigNumberish - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "isController"): TypedContractMethod<[account: AddressLike], [boolean], "view">; - getFunction(nameOrSignature: "mintChild"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish, - label: string - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "renounceController"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "resolveTo"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "resolverOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "root"): TypedContractMethod<[], [bigint], "view">; - getFunction(nameOrSignature: "safeMintChild(address,uint256,string)"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish, - label: string - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeMintChild(address,uint256,string,bytes)"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish, - label: string, - _data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - _data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFromChild(address,address,uint256,string)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - label: string - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFromChild(address,address,uint256,string,bytes)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - label: string, - _data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ - to: AddressLike, - approved: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setOwner"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "symbol"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "sync"): TypedContractMethod<[ - tokenId: BigNumberish, - updateId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "tokenURI"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "transferFromChild"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - label: string - ], [ - void - ], "nonpayable">; - getEvent(key: "Approval"): TypedContractEvent; - getEvent(key: "ApprovalForAll"): TypedContractEvent; - getEvent(key: "NewURI"): TypedContractEvent; - getEvent(key: "NewURIPrefix"): TypedContractEvent; - getEvent(key: "Resolve"): TypedContractEvent; - getEvent(key: "Sync"): TypedContractEvent; - getEvent(key: "Transfer"): TypedContractEvent; - filters: { - "Approval(address,address,uint256)": TypedContractEvent; - Approval: TypedContractEvent; - "ApprovalForAll(address,address,bool)": TypedContractEvent; - ApprovalForAll: TypedContractEvent; - "NewURI(uint256,string)": TypedContractEvent; - NewURI: TypedContractEvent; - "NewURIPrefix(string)": TypedContractEvent; - NewURIPrefix: TypedContractEvent; - "Resolve(uint256,address)": TypedContractEvent; - Resolve: TypedContractEvent; - "Sync(address,uint256,uint256)": TypedContractEvent; - Sync: TypedContractEvent; - "Transfer(address,address,uint256)": TypedContractEvent; - Transfer: TypedContractEvent; - }; -} -//# sourceMappingURL=CNSRegistry.d.ts.map \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/CNSRegistry.d.ts.map b/dist/types/dot-crypto/contracts/CNSRegistry.d.ts.map deleted file mode 100644 index 642bf27a..00000000 --- a/dist/types/dot-crypto/contracts/CNSRegistry.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"CNSRegistry.d.ts","sourceRoot":"","sources":["../../../../types/dot-crypto/contracts/CNSRegistry.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/CNSRegistry.js b/dist/types/dot-crypto/contracts/CNSRegistry.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/dot-crypto/contracts/CNSRegistry.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/dot-crypto/contracts/ICNSRegistry.d.ts b/dist/types/dot-crypto/contracts/ICNSRegistry.d.ts deleted file mode 100644 index a36cdb9e..00000000 --- a/dist/types/dot-crypto/contracts/ICNSRegistry.d.ts +++ /dev/null @@ -1,506 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; -export interface ICNSRegistryInterface extends Interface { - getFunction(nameOrSignature: "approve" | "balanceOf" | "burnChild" | "childIdOf" | "controlledBurn" | "controlledMintChild" | "controlledResolveTo" | "controlledSafeTransferFrom" | "controlledSetTokenURIPrefix" | "controlledTransferFrom" | "getApproved" | "isApprovedForAll" | "isApprovedOrOwner" | "mintChild" | "name" | "ownerOf" | "resolveTo" | "resolverOf" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "safeTransferFromChild(address,address,uint256,string)" | "safeTransferFromChild(address,address,uint256,string,bytes)" | "setApprovalForAll" | "setOwner" | "supportsInterface" | "symbol" | "tokenURI" | "transferFrom" | "transferFromChild"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "NewURI" | "NewURIPrefix" | "Resolve" | "Sync" | "Transfer"): EventFragment; - encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "burnChild", values: [BigNumberish, string]): string; - encodeFunctionData(functionFragment: "childIdOf", values: [BigNumberish, string]): string; - encodeFunctionData(functionFragment: "controlledBurn", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "controlledMintChild", values: [AddressLike, BigNumberish, string]): string; - encodeFunctionData(functionFragment: "controlledResolveTo", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "controlledSafeTransferFrom", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "controlledSetTokenURIPrefix", values: [string]): string; - encodeFunctionData(functionFragment: "controlledTransferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "isApprovedOrOwner", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "mintChild", values: [AddressLike, BigNumberish, string]): string; - encodeFunctionData(functionFragment: "name", values?: undefined): string; - encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "resolveTo", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "resolverOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "safeTransferFromChild(address,address,uint256,string)", values: [AddressLike, AddressLike, BigNumberish, string]): string; - encodeFunctionData(functionFragment: "safeTransferFromChild(address,address,uint256,string,bytes)", values: [AddressLike, AddressLike, BigNumberish, string, BytesLike]): string; - encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; - encodeFunctionData(functionFragment: "setOwner", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "symbol", values?: undefined): string; - encodeFunctionData(functionFragment: "tokenURI", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "transferFromChild", values: [AddressLike, AddressLike, BigNumberish, string]): string; - decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "burnChild", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "childIdOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "controlledBurn", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "controlledMintChild", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "controlledResolveTo", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "controlledSafeTransferFrom", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "controlledSetTokenURIPrefix", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "controlledTransferFrom", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedOrOwner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "mintChild", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "resolveTo", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "resolverOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFromChild(address,address,uint256,string)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFromChild(address,address,uint256,string,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setOwner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "tokenURI", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferFromChild", data: BytesLike): Result; -} -export declare namespace ApprovalEvent { - type InputTuple = [ - owner: AddressLike, - approved: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [owner: string, approved: string, tokenId: bigint]; - interface OutputObject { - owner: string; - approved: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ApprovalForAllEvent { - type InputTuple = [ - owner: AddressLike, - operator: AddressLike, - approved: boolean - ]; - type OutputTuple = [ - owner: string, - operator: string, - approved: boolean - ]; - interface OutputObject { - owner: string; - operator: string; - approved: boolean; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NewURIEvent { - type InputTuple = [tokenId: BigNumberish, uri: string]; - type OutputTuple = [tokenId: bigint, uri: string]; - interface OutputObject { - tokenId: bigint; - uri: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace NewURIPrefixEvent { - type InputTuple = [prefix: string]; - type OutputTuple = [prefix: string]; - interface OutputObject { - prefix: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ResolveEvent { - type InputTuple = [tokenId: BigNumberish, to: AddressLike]; - type OutputTuple = [tokenId: bigint, to: string]; - interface OutputObject { - tokenId: bigint; - to: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace SyncEvent { - type InputTuple = [ - resolver: AddressLike, - updateId: BigNumberish, - tokenId: BigNumberish - ]; - type OutputTuple = [ - resolver: string, - updateId: bigint, - tokenId: bigint - ]; - interface OutputObject { - resolver: string; - updateId: bigint; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace TransferEvent { - type InputTuple = [ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ]; - type OutputTuple = [from: string, to: string, tokenId: bigint]; - interface OutputObject { - from: string; - to: string; - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface ICNSRegistry extends BaseContract { - connect(runner?: ContractRunner | null): ICNSRegistry; - waitForDeployment(): Promise; - interface: ICNSRegistryInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - approve: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; - burnChild: TypedContractMethod<[ - tokenId: BigNumberish, - label: string - ], [ - void - ], "nonpayable">; - childIdOf: TypedContractMethod<[ - tokenId: BigNumberish, - label: string - ], [ - bigint - ], "view">; - controlledBurn: TypedContractMethod<[ - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - controlledMintChild: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish, - label: string - ], [ - void - ], "nonpayable">; - controlledResolveTo: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - controlledSafeTransferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - _data: BytesLike - ], [ - void - ], "nonpayable">; - controlledSetTokenURIPrefix: TypedContractMethod<[ - prefix: string - ], [ - void - ], "nonpayable">; - controlledTransferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - isApprovedForAll: TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - isApprovedOrOwner: TypedContractMethod<[ - spender: AddressLike, - tokenId: BigNumberish - ], [ - boolean - ], "view">; - mintChild: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish, - label: string - ], [ - void - ], "nonpayable">; - name: TypedContractMethod<[], [string], "view">; - ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - resolveTo: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - resolverOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - "safeTransferFromChild(address,address,uint256,string)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - label: string - ], [ - void - ], "nonpayable">; - "safeTransferFromChild(address,address,uint256,string,bytes)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - label: string, - _data: BytesLike - ], [ - void - ], "nonpayable">; - setApprovalForAll: TypedContractMethod<[ - operator: AddressLike, - _approved: boolean - ], [ - void - ], "nonpayable">; - setOwner: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - supportsInterface: TypedContractMethod<[ - interfaceId: BytesLike - ], [ - boolean - ], "view">; - symbol: TypedContractMethod<[], [string], "view">; - tokenURI: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - transferFrom: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - transferFromChild: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - label: string - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "approve"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; - getFunction(nameOrSignature: "burnChild"): TypedContractMethod<[ - tokenId: BigNumberish, - label: string - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "childIdOf"): TypedContractMethod<[ - tokenId: BigNumberish, - label: string - ], [ - bigint - ], "view">; - getFunction(nameOrSignature: "controlledBurn"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; - getFunction(nameOrSignature: "controlledMintChild"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish, - label: string - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "controlledResolveTo"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "controlledSafeTransferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - _data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "controlledSetTokenURIPrefix"): TypedContractMethod<[prefix: string], [void], "nonpayable">; - getFunction(nameOrSignature: "controlledTransferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "isApprovedOrOwner"): TypedContractMethod<[ - spender: AddressLike, - tokenId: BigNumberish - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "mintChild"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish, - label: string - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "resolveTo"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "resolverOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFromChild(address,address,uint256,string)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - label: string - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFromChild(address,address,uint256,string,bytes)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - label: string, - _data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ - operator: AddressLike, - _approved: boolean - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setOwner"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; - getFunction(nameOrSignature: "symbol"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "tokenURI"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "transferFromChild"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - label: string - ], [ - void - ], "nonpayable">; - getEvent(key: "Approval"): TypedContractEvent; - getEvent(key: "ApprovalForAll"): TypedContractEvent; - getEvent(key: "NewURI"): TypedContractEvent; - getEvent(key: "NewURIPrefix"): TypedContractEvent; - getEvent(key: "Resolve"): TypedContractEvent; - getEvent(key: "Sync"): TypedContractEvent; - getEvent(key: "Transfer"): TypedContractEvent; - filters: { - "Approval(address,address,uint256)": TypedContractEvent; - Approval: TypedContractEvent; - "ApprovalForAll(address,address,bool)": TypedContractEvent; - ApprovalForAll: TypedContractEvent; - "NewURI(uint256,string)": TypedContractEvent; - NewURI: TypedContractEvent; - "NewURIPrefix(string)": TypedContractEvent; - NewURIPrefix: TypedContractEvent; - "Resolve(uint256,address)": TypedContractEvent; - Resolve: TypedContractEvent; - "Sync(address,uint256,uint256)": TypedContractEvent; - Sync: TypedContractEvent; - "Transfer(address,address,uint256)": TypedContractEvent; - Transfer: TypedContractEvent; - }; -} -//# sourceMappingURL=ICNSRegistry.d.ts.map \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/ICNSRegistry.d.ts.map b/dist/types/dot-crypto/contracts/ICNSRegistry.d.ts.map deleted file mode 100644 index 142d8a3f..00000000 --- a/dist/types/dot-crypto/contracts/ICNSRegistry.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ICNSRegistry.d.ts","sourceRoot":"","sources":["../../../../types/dot-crypto/contracts/ICNSRegistry.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/ICNSRegistry.js b/dist/types/dot-crypto/contracts/ICNSRegistry.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/dot-crypto/contracts/ICNSRegistry.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/dot-crypto/contracts/IRegistryReader.d.ts b/dist/types/dot-crypto/contracts/IRegistryReader.d.ts deleted file mode 100644 index 9068a0e9..00000000 --- a/dist/types/dot-crypto/contracts/IRegistryReader.d.ts +++ /dev/null @@ -1,100 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../common"; -export interface IRegistryReaderInterface extends Interface { - getFunction(nameOrSignature: "balanceOf" | "childIdOf" | "getApproved" | "isApprovedForAll" | "isApprovedOrOwner" | "isController" | "name" | "ownerOf" | "resolverOf" | "root" | "symbol" | "tokenURI"): FunctionFragment; - encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "childIdOf", values: [BigNumberish, string]): string; - encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; - encodeFunctionData(functionFragment: "isApprovedOrOwner", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "isController", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "name", values?: undefined): string; - encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "resolverOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "root", values?: undefined): string; - encodeFunctionData(functionFragment: "symbol", values?: undefined): string; - encodeFunctionData(functionFragment: "tokenURI", values: [BigNumberish]): string; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "childIdOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isApprovedOrOwner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isController", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "resolverOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "root", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "tokenURI", data: BytesLike): Result; -} -export interface IRegistryReader extends BaseContract { - connect(runner?: ContractRunner | null): IRegistryReader; - waitForDeployment(): Promise; - interface: IRegistryReaderInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; - childIdOf: TypedContractMethod<[ - tokenId: BigNumberish, - label: string - ], [ - bigint - ], "view">; - getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - isApprovedForAll: TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - isApprovedOrOwner: TypedContractMethod<[ - spender: AddressLike, - tokenId: BigNumberish - ], [ - boolean - ], "view">; - isController: TypedContractMethod<[account: AddressLike], [boolean], "view">; - name: TypedContractMethod<[], [string], "view">; - ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - resolverOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - root: TypedContractMethod<[], [bigint], "view">; - symbol: TypedContractMethod<[], [string], "view">; - tokenURI: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; - getFunction(nameOrSignature: "childIdOf"): TypedContractMethod<[ - tokenId: BigNumberish, - label: string - ], [ - bigint - ], "view">; - getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ - owner: AddressLike, - operator: AddressLike - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "isApprovedOrOwner"): TypedContractMethod<[ - spender: AddressLike, - tokenId: BigNumberish - ], [ - boolean - ], "view">; - getFunction(nameOrSignature: "isController"): TypedContractMethod<[account: AddressLike], [boolean], "view">; - getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "resolverOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "root"): TypedContractMethod<[], [bigint], "view">; - getFunction(nameOrSignature: "symbol"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "tokenURI"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; - filters: {}; -} -//# sourceMappingURL=IRegistryReader.d.ts.map \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/IRegistryReader.d.ts.map b/dist/types/dot-crypto/contracts/IRegistryReader.d.ts.map deleted file mode 100644 index da31a778..00000000 --- a/dist/types/dot-crypto/contracts/IRegistryReader.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IRegistryReader.d.ts","sourceRoot":"","sources":["../../../../types/dot-crypto/contracts/IRegistryReader.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/IRegistryReader.js b/dist/types/dot-crypto/contracts/IRegistryReader.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/dot-crypto/contracts/IRegistryReader.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/dot-crypto/contracts/IResolver.d.ts b/dist/types/dot-crypto/contracts/IResolver.d.ts deleted file mode 100644 index a30c53e8..00000000 --- a/dist/types/dot-crypto/contracts/IResolver.d.ts +++ /dev/null @@ -1,90 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../common"; -export interface IResolverInterface extends Interface { - getFunction(nameOrSignature: "preconfigure" | "reconfigure" | "reset" | "set" | "setMany"): FunctionFragment; - encodeFunctionData(functionFragment: "preconfigure", values: [string[], string[], BigNumberish]): string; - encodeFunctionData(functionFragment: "reconfigure", values: [string[], string[], BigNumberish]): string; - encodeFunctionData(functionFragment: "reset", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "set", values: [string, string, BigNumberish]): string; - encodeFunctionData(functionFragment: "setMany", values: [string[], string[], BigNumberish]): string; - decodeFunctionResult(functionFragment: "preconfigure", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "reconfigure", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "reset", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "set", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setMany", data: BytesLike): Result; -} -export interface IResolver extends BaseContract { - connect(runner?: ContractRunner | null): IResolver; - waitForDeployment(): Promise; - interface: IResolverInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - preconfigure: TypedContractMethod<[ - keys: string[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - reconfigure: TypedContractMethod<[ - keys: string[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - reset: TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; - set: TypedContractMethod<[ - key: string, - value: string, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - setMany: TypedContractMethod<[ - keys: string[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "preconfigure"): TypedContractMethod<[ - keys: string[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "reconfigure"): TypedContractMethod<[ - keys: string[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "reset"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; - getFunction(nameOrSignature: "set"): TypedContractMethod<[ - key: string, - value: string, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setMany"): TypedContractMethod<[ - keys: string[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - filters: {}; -} -//# sourceMappingURL=IResolver.d.ts.map \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/IResolver.d.ts.map b/dist/types/dot-crypto/contracts/IResolver.d.ts.map deleted file mode 100644 index 71610822..00000000 --- a/dist/types/dot-crypto/contracts/IResolver.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IResolver.d.ts","sourceRoot":"","sources":["../../../../types/dot-crypto/contracts/IResolver.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/IResolver.js b/dist/types/dot-crypto/contracts/IResolver.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/dot-crypto/contracts/IResolver.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/dot-crypto/contracts/IResolverReader.d.ts b/dist/types/dot-crypto/contracts/IResolverReader.d.ts deleted file mode 100644 index ea2a656e..00000000 --- a/dist/types/dot-crypto/contracts/IResolverReader.d.ts +++ /dev/null @@ -1,98 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../common"; -export interface IResolverReaderInterface extends Interface { - getFunction(nameOrSignature: "get" | "getByHash" | "getMany" | "getManyByHash" | "nonceOf" | "registry"): FunctionFragment; - encodeFunctionData(functionFragment: "get", values: [string, BigNumberish]): string; - encodeFunctionData(functionFragment: "getByHash", values: [BigNumberish, BigNumberish]): string; - encodeFunctionData(functionFragment: "getMany", values: [string[], BigNumberish]): string; - encodeFunctionData(functionFragment: "getManyByHash", values: [BigNumberish[], BigNumberish]): string; - encodeFunctionData(functionFragment: "nonceOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "registry", values?: undefined): string; - decodeFunctionResult(functionFragment: "get", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getByHash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getMany", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getManyByHash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "nonceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "registry", data: BytesLike): Result; -} -export interface IResolverReader extends BaseContract { - connect(runner?: ContractRunner | null): IResolverReader; - waitForDeployment(): Promise; - interface: IResolverReaderInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - get: TypedContractMethod<[ - key: string, - tokenId: BigNumberish - ], [ - string - ], "view">; - getByHash: TypedContractMethod<[ - keyHash: BigNumberish, - tokenId: BigNumberish - ], [ - [string, string] & { - key: string; - value: string; - } - ], "view">; - getMany: TypedContractMethod<[ - keys: string[], - tokenId: BigNumberish - ], [ - string[] - ], "view">; - getManyByHash: TypedContractMethod<[ - keyHashes: BigNumberish[], - tokenId: BigNumberish - ], [ - [string[], string[]] & { - keys: string[]; - values: string[]; - } - ], "view">; - nonceOf: TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; - registry: TypedContractMethod<[], [string], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "get"): TypedContractMethod<[ - key: string, - tokenId: BigNumberish - ], [ - string - ], "view">; - getFunction(nameOrSignature: "getByHash"): TypedContractMethod<[ - keyHash: BigNumberish, - tokenId: BigNumberish - ], [ - [string, string] & { - key: string; - value: string; - } - ], "view">; - getFunction(nameOrSignature: "getMany"): TypedContractMethod<[ - keys: string[], - tokenId: BigNumberish - ], [ - string[] - ], "view">; - getFunction(nameOrSignature: "getManyByHash"): TypedContractMethod<[ - keyHashes: BigNumberish[], - tokenId: BigNumberish - ], [ - [string[], string[]] & { - keys: string[]; - values: string[]; - } - ], "view">; - getFunction(nameOrSignature: "nonceOf"): TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; - getFunction(nameOrSignature: "registry"): TypedContractMethod<[], [string], "view">; - filters: {}; -} -//# sourceMappingURL=IResolverReader.d.ts.map \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/IResolverReader.d.ts.map b/dist/types/dot-crypto/contracts/IResolverReader.d.ts.map deleted file mode 100644 index 5ff657b5..00000000 --- a/dist/types/dot-crypto/contracts/IResolverReader.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IResolverReader.d.ts","sourceRoot":"","sources":["../../../../types/dot-crypto/contracts/IResolverReader.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/IResolverReader.js b/dist/types/dot-crypto/contracts/IResolverReader.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/dot-crypto/contracts/IResolverReader.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/dot-crypto/contracts/Resolver.d.ts b/dist/types/dot-crypto/contracts/Resolver.d.ts deleted file mode 100644 index cc28b905..00000000 --- a/dist/types/dot-crypto/contracts/Resolver.d.ts +++ /dev/null @@ -1,312 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common"; -export interface ResolverInterface extends Interface { - getFunction(nameOrSignature: "get" | "getByHash" | "getMany" | "getManyByHash" | "hashToKey" | "hashesToKeys" | "nonceOf" | "preconfigure" | "reconfigure" | "reconfigureFor" | "registry" | "reset" | "resetFor" | "set" | "setFor" | "setMany" | "setManyFor"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "NewKey" | "ResetRecords" | "Set"): EventFragment; - encodeFunctionData(functionFragment: "get", values: [string, BigNumberish]): string; - encodeFunctionData(functionFragment: "getByHash", values: [BigNumberish, BigNumberish]): string; - encodeFunctionData(functionFragment: "getMany", values: [string[], BigNumberish]): string; - encodeFunctionData(functionFragment: "getManyByHash", values: [BigNumberish[], BigNumberish]): string; - encodeFunctionData(functionFragment: "hashToKey", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "hashesToKeys", values: [BigNumberish[]]): string; - encodeFunctionData(functionFragment: "nonceOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "preconfigure", values: [string[], string[], BigNumberish]): string; - encodeFunctionData(functionFragment: "reconfigure", values: [string[], string[], BigNumberish]): string; - encodeFunctionData(functionFragment: "reconfigureFor", values: [string[], string[], BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "registry", values?: undefined): string; - encodeFunctionData(functionFragment: "reset", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "resetFor", values: [BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "set", values: [string, string, BigNumberish]): string; - encodeFunctionData(functionFragment: "setFor", values: [string, string, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "setMany", values: [string[], string[], BigNumberish]): string; - encodeFunctionData(functionFragment: "setManyFor", values: [string[], string[], BigNumberish, BytesLike]): string; - decodeFunctionResult(functionFragment: "get", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getByHash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getMany", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getManyByHash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "hashToKey", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "hashesToKeys", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "nonceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "preconfigure", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "reconfigure", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "reconfigureFor", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "registry", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "reset", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "resetFor", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "set", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setFor", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setMany", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setManyFor", data: BytesLike): Result; -} -export declare namespace NewKeyEvent { - type InputTuple = [ - tokenId: BigNumberish, - keyIndex: string, - key: string - ]; - type OutputTuple = [tokenId: bigint, keyIndex: string, key: string]; - interface OutputObject { - tokenId: bigint; - keyIndex: string; - key: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace ResetRecordsEvent { - type InputTuple = [tokenId: BigNumberish]; - type OutputTuple = [tokenId: bigint]; - interface OutputObject { - tokenId: bigint; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace SetEvent { - type InputTuple = [ - tokenId: BigNumberish, - keyIndex: string, - valueIndex: string, - key: string, - value: string - ]; - type OutputTuple = [ - tokenId: bigint, - keyIndex: string, - valueIndex: string, - key: string, - value: string - ]; - interface OutputObject { - tokenId: bigint; - keyIndex: string; - valueIndex: string; - key: string; - value: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface Resolver extends BaseContract { - connect(runner?: ContractRunner | null): Resolver; - waitForDeployment(): Promise; - interface: ResolverInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - get: TypedContractMethod<[ - key: string, - tokenId: BigNumberish - ], [ - string - ], "view">; - getByHash: TypedContractMethod<[ - keyHash: BigNumberish, - tokenId: BigNumberish - ], [ - [string, string] & { - key: string; - value: string; - } - ], "view">; - getMany: TypedContractMethod<[ - keys: string[], - tokenId: BigNumberish - ], [ - string[] - ], "view">; - getManyByHash: TypedContractMethod<[ - keyHashes: BigNumberish[], - tokenId: BigNumberish - ], [ - [string[], string[]] & { - keys: string[]; - values: string[]; - } - ], "view">; - hashToKey: TypedContractMethod<[keyHash: BigNumberish], [string], "view">; - hashesToKeys: TypedContractMethod<[ - hashes: BigNumberish[] - ], [ - string[] - ], "view">; - nonceOf: TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; - preconfigure: TypedContractMethod<[ - keys: string[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - reconfigure: TypedContractMethod<[ - keys: string[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - reconfigureFor: TypedContractMethod<[ - keys: string[], - values: string[], - tokenId: BigNumberish, - signature: BytesLike - ], [ - void - ], "nonpayable">; - registry: TypedContractMethod<[], [string], "view">; - reset: TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; - resetFor: TypedContractMethod<[ - tokenId: BigNumberish, - signature: BytesLike - ], [ - void - ], "nonpayable">; - set: TypedContractMethod<[ - key: string, - value: string, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - setFor: TypedContractMethod<[ - key: string, - value: string, - tokenId: BigNumberish, - signature: BytesLike - ], [ - void - ], "nonpayable">; - setMany: TypedContractMethod<[ - keys: string[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - setManyFor: TypedContractMethod<[ - keys: string[], - values: string[], - tokenId: BigNumberish, - signature: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "get"): TypedContractMethod<[ - key: string, - tokenId: BigNumberish - ], [ - string - ], "view">; - getFunction(nameOrSignature: "getByHash"): TypedContractMethod<[ - keyHash: BigNumberish, - tokenId: BigNumberish - ], [ - [string, string] & { - key: string; - value: string; - } - ], "view">; - getFunction(nameOrSignature: "getMany"): TypedContractMethod<[ - keys: string[], - tokenId: BigNumberish - ], [ - string[] - ], "view">; - getFunction(nameOrSignature: "getManyByHash"): TypedContractMethod<[ - keyHashes: BigNumberish[], - tokenId: BigNumberish - ], [ - [string[], string[]] & { - keys: string[]; - values: string[]; - } - ], "view">; - getFunction(nameOrSignature: "hashToKey"): TypedContractMethod<[keyHash: BigNumberish], [string], "view">; - getFunction(nameOrSignature: "hashesToKeys"): TypedContractMethod<[hashes: BigNumberish[]], [string[]], "view">; - getFunction(nameOrSignature: "nonceOf"): TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; - getFunction(nameOrSignature: "preconfigure"): TypedContractMethod<[ - keys: string[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "reconfigure"): TypedContractMethod<[ - keys: string[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "reconfigureFor"): TypedContractMethod<[ - keys: string[], - values: string[], - tokenId: BigNumberish, - signature: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "registry"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "reset"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; - getFunction(nameOrSignature: "resetFor"): TypedContractMethod<[ - tokenId: BigNumberish, - signature: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "set"): TypedContractMethod<[ - key: string, - value: string, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setFor"): TypedContractMethod<[ - key: string, - value: string, - tokenId: BigNumberish, - signature: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setMany"): TypedContractMethod<[ - keys: string[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setManyFor"): TypedContractMethod<[ - keys: string[], - values: string[], - tokenId: BigNumberish, - signature: BytesLike - ], [ - void - ], "nonpayable">; - getEvent(key: "NewKey"): TypedContractEvent; - getEvent(key: "ResetRecords"): TypedContractEvent; - getEvent(key: "Set"): TypedContractEvent; - filters: { - "NewKey(uint256,string,string)": TypedContractEvent; - NewKey: TypedContractEvent; - "ResetRecords(uint256)": TypedContractEvent; - ResetRecords: TypedContractEvent; - "Set(uint256,string,string,string,string)": TypedContractEvent; - Set: TypedContractEvent; - }; -} -//# sourceMappingURL=Resolver.d.ts.map \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/Resolver.d.ts.map b/dist/types/dot-crypto/contracts/Resolver.d.ts.map deleted file mode 100644 index e1af4155..00000000 --- a/dist/types/dot-crypto/contracts/Resolver.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Resolver.d.ts","sourceRoot":"","sources":["../../../../types/dot-crypto/contracts/Resolver.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/Resolver.js b/dist/types/dot-crypto/contracts/Resolver.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/dot-crypto/contracts/Resolver.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/dot-crypto/contracts/controllers/DomainZoneController.d.ts b/dist/types/dot-crypto/contracts/controllers/DomainZoneController.d.ts deleted file mode 100644 index 11d8d518..00000000 --- a/dist/types/dot-crypto/contracts/controllers/DomainZoneController.d.ts +++ /dev/null @@ -1,214 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../common"; -export interface DomainZoneControllerInterface extends Interface { - getFunction(nameOrSignature: "addWhitelistAdmin" | "addWhitelisted" | "bulkAddWhitelisted" | "bulkRemoveWhitelisted" | "isWhitelistAdmin" | "isWhitelisted" | "mintChild" | "removeWhitelisted" | "renounceWhitelistAdmin" | "renounceWhitelisted" | "resolveTo" | "setMany"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "MintChild" | "WhitelistAdminAdded" | "WhitelistAdminRemoved" | "WhitelistedAdded" | "WhitelistedRemoved"): EventFragment; - encodeFunctionData(functionFragment: "addWhitelistAdmin", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "addWhitelisted", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "bulkAddWhitelisted", values: [AddressLike[]]): string; - encodeFunctionData(functionFragment: "bulkRemoveWhitelisted", values: [AddressLike[]]): string; - encodeFunctionData(functionFragment: "isWhitelistAdmin", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "isWhitelisted", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "mintChild", values: [AddressLike, BigNumberish, string, string[], string[]]): string; - encodeFunctionData(functionFragment: "removeWhitelisted", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "renounceWhitelistAdmin", values?: undefined): string; - encodeFunctionData(functionFragment: "renounceWhitelisted", values?: undefined): string; - encodeFunctionData(functionFragment: "resolveTo", values: [AddressLike, BigNumberish]): string; - encodeFunctionData(functionFragment: "setMany", values: [string[], string[], BigNumberish]): string; - decodeFunctionResult(functionFragment: "addWhitelistAdmin", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "addWhitelisted", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "bulkAddWhitelisted", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "bulkRemoveWhitelisted", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isWhitelistAdmin", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isWhitelisted", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "mintChild", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "removeWhitelisted", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceWhitelistAdmin", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceWhitelisted", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "resolveTo", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setMany", data: BytesLike): Result; -} -export declare namespace MintChildEvent { - type InputTuple = [ - tokenId: BigNumberish, - parentTokenId: BigNumberish, - label: string - ]; - type OutputTuple = [ - tokenId: bigint, - parentTokenId: bigint, - label: string - ]; - interface OutputObject { - tokenId: bigint; - parentTokenId: bigint; - label: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace WhitelistAdminAddedEvent { - type InputTuple = [account: AddressLike]; - type OutputTuple = [account: string]; - interface OutputObject { - account: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace WhitelistAdminRemovedEvent { - type InputTuple = [account: AddressLike]; - type OutputTuple = [account: string]; - interface OutputObject { - account: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace WhitelistedAddedEvent { - type InputTuple = [account: AddressLike]; - type OutputTuple = [account: string]; - interface OutputObject { - account: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace WhitelistedRemovedEvent { - type InputTuple = [account: AddressLike]; - type OutputTuple = [account: string]; - interface OutputObject { - account: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface DomainZoneController extends BaseContract { - connect(runner?: ContractRunner | null): DomainZoneController; - waitForDeployment(): Promise; - interface: DomainZoneControllerInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - addWhitelistAdmin: TypedContractMethod<[ - account: AddressLike - ], [ - void - ], "nonpayable">; - addWhitelisted: TypedContractMethod<[ - account: AddressLike - ], [ - void - ], "nonpayable">; - bulkAddWhitelisted: TypedContractMethod<[ - accounts: AddressLike[] - ], [ - void - ], "nonpayable">; - bulkRemoveWhitelisted: TypedContractMethod<[ - accounts: AddressLike[] - ], [ - void - ], "nonpayable">; - isWhitelistAdmin: TypedContractMethod<[ - account: AddressLike - ], [ - boolean - ], "view">; - isWhitelisted: TypedContractMethod<[account: AddressLike], [boolean], "view">; - mintChild: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish, - label: string, - keys: string[], - values: string[] - ], [ - void - ], "nonpayable">; - removeWhitelisted: TypedContractMethod<[ - account: AddressLike - ], [ - void - ], "nonpayable">; - renounceWhitelistAdmin: TypedContractMethod<[], [void], "nonpayable">; - renounceWhitelisted: TypedContractMethod<[], [void], "nonpayable">; - resolveTo: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - setMany: TypedContractMethod<[ - keys: string[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "addWhitelistAdmin"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "addWhitelisted"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "bulkAddWhitelisted"): TypedContractMethod<[accounts: AddressLike[]], [void], "nonpayable">; - getFunction(nameOrSignature: "bulkRemoveWhitelisted"): TypedContractMethod<[accounts: AddressLike[]], [void], "nonpayable">; - getFunction(nameOrSignature: "isWhitelistAdmin"): TypedContractMethod<[account: AddressLike], [boolean], "view">; - getFunction(nameOrSignature: "isWhitelisted"): TypedContractMethod<[account: AddressLike], [boolean], "view">; - getFunction(nameOrSignature: "mintChild"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish, - label: string, - keys: string[], - values: string[] - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "removeWhitelisted"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "renounceWhitelistAdmin"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "renounceWhitelisted"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "resolveTo"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "setMany"): TypedContractMethod<[ - keys: string[], - values: string[], - tokenId: BigNumberish - ], [ - void - ], "nonpayable">; - getEvent(key: "MintChild"): TypedContractEvent; - getEvent(key: "WhitelistAdminAdded"): TypedContractEvent; - getEvent(key: "WhitelistAdminRemoved"): TypedContractEvent; - getEvent(key: "WhitelistedAdded"): TypedContractEvent; - getEvent(key: "WhitelistedRemoved"): TypedContractEvent; - filters: { - "MintChild(uint256,uint256,string)": TypedContractEvent; - MintChild: TypedContractEvent; - "WhitelistAdminAdded(address)": TypedContractEvent; - WhitelistAdminAdded: TypedContractEvent; - "WhitelistAdminRemoved(address)": TypedContractEvent; - WhitelistAdminRemoved: TypedContractEvent; - "WhitelistedAdded(address)": TypedContractEvent; - WhitelistedAdded: TypedContractEvent; - "WhitelistedRemoved(address)": TypedContractEvent; - WhitelistedRemoved: TypedContractEvent; - }; -} -//# sourceMappingURL=DomainZoneController.d.ts.map \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/controllers/DomainZoneController.d.ts.map b/dist/types/dot-crypto/contracts/controllers/DomainZoneController.d.ts.map deleted file mode 100644 index 4e8d117a..00000000 --- a/dist/types/dot-crypto/contracts/controllers/DomainZoneController.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"DomainZoneController.d.ts","sourceRoot":"","sources":["../../../../../types/dot-crypto/contracts/controllers/DomainZoneController.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/controllers/DomainZoneController.js b/dist/types/dot-crypto/contracts/controllers/DomainZoneController.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/dot-crypto/contracts/controllers/DomainZoneController.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/dot-crypto/contracts/controllers/IMintingController.d.ts b/dist/types/dot-crypto/contracts/controllers/IMintingController.d.ts deleted file mode 100644 index 3c222b86..00000000 --- a/dist/types/dot-crypto/contracts/controllers/IMintingController.d.ts +++ /dev/null @@ -1,66 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../common"; -export interface IMintingControllerInterface extends Interface { - getFunction(nameOrSignature: "mintSLD" | "safeMintSLD(address,string)" | "safeMintSLD(address,string,bytes)"): FunctionFragment; - encodeFunctionData(functionFragment: "mintSLD", values: [AddressLike, string]): string; - encodeFunctionData(functionFragment: "safeMintSLD(address,string)", values: [AddressLike, string]): string; - encodeFunctionData(functionFragment: "safeMintSLD(address,string,bytes)", values: [AddressLike, string, BytesLike]): string; - decodeFunctionResult(functionFragment: "mintSLD", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeMintSLD(address,string)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeMintSLD(address,string,bytes)", data: BytesLike): Result; -} -export interface IMintingController extends BaseContract { - connect(runner?: ContractRunner | null): IMintingController; - waitForDeployment(): Promise; - interface: IMintingControllerInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - mintSLD: TypedContractMethod<[ - to: AddressLike, - label: string - ], [ - void - ], "nonpayable">; - "safeMintSLD(address,string)": TypedContractMethod<[ - to: AddressLike, - label: string - ], [ - void - ], "nonpayable">; - "safeMintSLD(address,string,bytes)": TypedContractMethod<[ - to: AddressLike, - label: string, - _data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "mintSLD"): TypedContractMethod<[ - to: AddressLike, - label: string - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeMintSLD(address,string)"): TypedContractMethod<[ - to: AddressLike, - label: string - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeMintSLD(address,string,bytes)"): TypedContractMethod<[ - to: AddressLike, - label: string, - _data: BytesLike - ], [ - void - ], "nonpayable">; - filters: {}; -} -//# sourceMappingURL=IMintingController.d.ts.map \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/controllers/IMintingController.d.ts.map b/dist/types/dot-crypto/contracts/controllers/IMintingController.d.ts.map deleted file mode 100644 index 8a586a49..00000000 --- a/dist/types/dot-crypto/contracts/controllers/IMintingController.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IMintingController.d.ts","sourceRoot":"","sources":["../../../../../types/dot-crypto/contracts/controllers/IMintingController.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,WAAW,EACX,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,aAAa,EACb,mBAAmB,EACpB,MAAM,iBAAiB,CAAC;AAEzB,MAAM,WAAW,2BAA4B,SAAQ,SAAS;IAC5D,WAAW,CACT,eAAe,EACX,SAAS,GACT,6BAA6B,GAC7B,mCAAmC,GACtC,gBAAgB,CAAC;IAEpB,kBAAkB,CAChB,gBAAgB,EAAE,SAAS,EAC3B,MAAM,EAAE,CAAC,WAAW,EAAE,MAAM,CAAC,GAC5B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,6BAA6B,EAC/C,MAAM,EAAE,CAAC,WAAW,EAAE,MAAM,CAAC,GAC5B,MAAM,CAAC;IACV,kBAAkB,CAChB,gBAAgB,EAAE,mCAAmC,EACrD,MAAM,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,CAAC,GACvC,MAAM,CAAC;IAEV,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,oBAAoB,CAClB,gBAAgB,EAAE,6BAA6B,EAC/C,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;IACV,oBAAoB,CAClB,gBAAgB,EAAE,mCAAmC,EACrD,IAAI,EAAE,SAAS,GACd,MAAM,CAAC;CACX;AAED,MAAM,WAAW,kBAAmB,SAAQ,YAAY;IACtD,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,kBAAkB,CAAC;IAC5D,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,2BAA2B,CAAC;IAEvC,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,EAAE,CAAC,OAAO,SAAS,kBAAkB,EACnC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,IAAI,CAAC,OAAO,SAAS,kBAAkB,EACrC,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EACnD,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,OAAO,EAAE,mBAAmB,CAC1B;QAAC,EAAE,EAAE,WAAW;QAAE,KAAK,EAAE,MAAM;KAAC,EAChC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,6BAA6B,EAAE,mBAAmB,CAChD;QAAC,EAAE,EAAE,WAAW;QAAE,KAAK,EAAE,MAAM;KAAC,EAChC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,mCAAmC,EAAE,mBAAmB,CACtD;QAAC,EAAE,EAAE,WAAW;QAAE,KAAK,EAAE,MAAM;QAAE,KAAK,EAAE,SAAS;KAAC,EAClD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EACnD,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAC7B,CAAC,CAAC;IAEL,WAAW,CACT,eAAe,EAAE,SAAS,GACzB,mBAAmB,CACpB;QAAC,EAAE,EAAE,WAAW;QAAE,KAAK,EAAE,MAAM;KAAC,EAChC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,6BAA6B,GAC7C,mBAAmB,CACpB;QAAC,EAAE,EAAE,WAAW;QAAE,KAAK,EAAE,MAAM;KAAC,EAChC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACF,WAAW,CACT,eAAe,EAAE,mCAAmC,GACnD,mBAAmB,CACpB;QAAC,EAAE,EAAE,WAAW;QAAE,KAAK,EAAE,MAAM;QAAE,KAAK,EAAE,SAAS;KAAC,EAClD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,OAAO,EAAE,EAAE,CAAC;CACb"} \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/controllers/IMintingController.js b/dist/types/dot-crypto/contracts/controllers/IMintingController.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/dot-crypto/contracts/controllers/IMintingController.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/dot-crypto/contracts/controllers/ISignatureController.d.ts b/dist/types/dot-crypto/contracts/controllers/ISignatureController.d.ts deleted file mode 100644 index 228cd7b4..00000000 --- a/dist/types/dot-crypto/contracts/controllers/ISignatureController.d.ts +++ /dev/null @@ -1,215 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../common"; -export interface ISignatureControllerInterface extends Interface { - getFunction(nameOrSignature: "burnChildFor" | "burnFor" | "mintChildFor" | "nonceOf" | "resolveToFor" | "safeTransferFromChildFor(address,address,uint256,string,bytes)" | "safeTransferFromChildFor(address,address,uint256,string,bytes,bytes)" | "safeTransferFromFor(address,address,uint256,bytes,bytes)" | "safeTransferFromFor(address,address,uint256,bytes)" | "transferFromChildFor" | "transferFromFor"): FunctionFragment; - encodeFunctionData(functionFragment: "burnChildFor", values: [BigNumberish, string, BytesLike]): string; - encodeFunctionData(functionFragment: "burnFor", values: [BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "mintChildFor", values: [AddressLike, BigNumberish, string, BytesLike]): string; - encodeFunctionData(functionFragment: "nonceOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "resolveToFor", values: [AddressLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "safeTransferFromChildFor(address,address,uint256,string,bytes)", values: [AddressLike, AddressLike, BigNumberish, string, BytesLike]): string; - encodeFunctionData(functionFragment: "safeTransferFromChildFor(address,address,uint256,string,bytes,bytes)", values: [ - AddressLike, - AddressLike, - BigNumberish, - string, - BytesLike, - BytesLike - ]): string; - encodeFunctionData(functionFragment: "safeTransferFromFor(address,address,uint256,bytes,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike, BytesLike]): string; - encodeFunctionData(functionFragment: "safeTransferFromFor(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "transferFromChildFor", values: [AddressLike, AddressLike, BigNumberish, string, BytesLike]): string; - encodeFunctionData(functionFragment: "transferFromFor", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; - decodeFunctionResult(functionFragment: "burnChildFor", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "burnFor", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "mintChildFor", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "nonceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "resolveToFor", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFromChildFor(address,address,uint256,string,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFromChildFor(address,address,uint256,string,bytes,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFromFor(address,address,uint256,bytes,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFromFor(address,address,uint256,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferFromChildFor", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferFromFor", data: BytesLike): Result; -} -export interface ISignatureController extends BaseContract { - connect(runner?: ContractRunner | null): ISignatureController; - waitForDeployment(): Promise; - interface: ISignatureControllerInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - burnChildFor: TypedContractMethod<[ - tokenId: BigNumberish, - label: string, - signature: BytesLike - ], [ - void - ], "nonpayable">; - burnFor: TypedContractMethod<[ - tokenId: BigNumberish, - signature: BytesLike - ], [ - void - ], "nonpayable">; - mintChildFor: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish, - label: string, - signature: BytesLike - ], [ - void - ], "nonpayable">; - nonceOf: TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; - resolveToFor: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish, - signature: BytesLike - ], [ - void - ], "nonpayable">; - "safeTransferFromChildFor(address,address,uint256,string,bytes)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - label: string, - signature: BytesLike - ], [ - void - ], "nonpayable">; - "safeTransferFromChildFor(address,address,uint256,string,bytes,bytes)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - label: string, - _data: BytesLike, - signature: BytesLike - ], [ - void - ], "nonpayable">; - "safeTransferFromFor(address,address,uint256,bytes,bytes)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - _data: BytesLike, - signature: BytesLike - ], [ - void - ], "nonpayable">; - "safeTransferFromFor(address,address,uint256,bytes)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - signature: BytesLike - ], [ - void - ], "nonpayable">; - transferFromChildFor: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - label: string, - signature: BytesLike - ], [ - void - ], "nonpayable">; - transferFromFor: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - signature: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "burnChildFor"): TypedContractMethod<[ - tokenId: BigNumberish, - label: string, - signature: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "burnFor"): TypedContractMethod<[ - tokenId: BigNumberish, - signature: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "mintChildFor"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish, - label: string, - signature: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "nonceOf"): TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; - getFunction(nameOrSignature: "resolveToFor"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish, - signature: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFromChildFor(address,address,uint256,string,bytes)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - label: string, - signature: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFromChildFor(address,address,uint256,string,bytes,bytes)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - label: string, - _data: BytesLike, - signature: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFromFor(address,address,uint256,bytes,bytes)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - _data: BytesLike, - signature: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFromFor(address,address,uint256,bytes)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - signature: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "transferFromChildFor"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - label: string, - signature: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "transferFromFor"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - signature: BytesLike - ], [ - void - ], "nonpayable">; - filters: {}; -} -//# sourceMappingURL=ISignatureController.d.ts.map \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/controllers/ISignatureController.d.ts.map b/dist/types/dot-crypto/contracts/controllers/ISignatureController.d.ts.map deleted file mode 100644 index 06dcd4e6..00000000 --- a/dist/types/dot-crypto/contracts/controllers/ISignatureController.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ISignatureController.d.ts","sourceRoot":"","sources":["../../../../../types/dot-crypto/contracts/controllers/ISignatureController.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/controllers/ISignatureController.js b/dist/types/dot-crypto/contracts/controllers/ISignatureController.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/dot-crypto/contracts/controllers/ISignatureController.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/dot-crypto/contracts/controllers/IURIPrefixController.d.ts b/dist/types/dot-crypto/contracts/controllers/IURIPrefixController.d.ts deleted file mode 100644 index 288a76a9..00000000 --- a/dist/types/dot-crypto/contracts/controllers/IURIPrefixController.d.ts +++ /dev/null @@ -1,30 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../common"; -export interface IURIPrefixControllerInterface extends Interface { - getFunction(nameOrSignature: "setTokenURIPrefix"): FunctionFragment; - encodeFunctionData(functionFragment: "setTokenURIPrefix", values: [string]): string; - decodeFunctionResult(functionFragment: "setTokenURIPrefix", data: BytesLike): Result; -} -export interface IURIPrefixController extends BaseContract { - connect(runner?: ContractRunner | null): IURIPrefixController; - waitForDeployment(): Promise; - interface: IURIPrefixControllerInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - setTokenURIPrefix: TypedContractMethod<[ - prefix: string - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "setTokenURIPrefix"): TypedContractMethod<[prefix: string], [void], "nonpayable">; - filters: {}; -} -//# sourceMappingURL=IURIPrefixController.d.ts.map \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/controllers/IURIPrefixController.d.ts.map b/dist/types/dot-crypto/contracts/controllers/IURIPrefixController.d.ts.map deleted file mode 100644 index b3b0ae22..00000000 --- a/dist/types/dot-crypto/contracts/controllers/IURIPrefixController.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IURIPrefixController.d.ts","sourceRoot":"","sources":["../../../../../types/dot-crypto/contracts/controllers/IURIPrefixController.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/controllers/IURIPrefixController.js b/dist/types/dot-crypto/contracts/controllers/IURIPrefixController.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/dot-crypto/contracts/controllers/IURIPrefixController.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/dot-crypto/contracts/controllers/MintingController.d.ts b/dist/types/dot-crypto/contracts/controllers/MintingController.d.ts deleted file mode 100644 index 39f2dc1a..00000000 --- a/dist/types/dot-crypto/contracts/controllers/MintingController.d.ts +++ /dev/null @@ -1,162 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../common"; -export interface MintingControllerInterface extends Interface { - getFunction(nameOrSignature: "addMinter" | "isMinter" | "mintSLD" | "mintSLDWithResolver" | "registry" | "renounceMinter" | "safeMintSLD(address,string)" | "safeMintSLD(address,string,bytes)" | "safeMintSLDWithResolver(address,string,address,bytes)" | "safeMintSLDWithResolver(address,string,address)"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "MinterAdded" | "MinterRemoved"): EventFragment; - encodeFunctionData(functionFragment: "addMinter", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "isMinter", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "mintSLD", values: [AddressLike, string]): string; - encodeFunctionData(functionFragment: "mintSLDWithResolver", values: [AddressLike, string, AddressLike]): string; - encodeFunctionData(functionFragment: "registry", values?: undefined): string; - encodeFunctionData(functionFragment: "renounceMinter", values?: undefined): string; - encodeFunctionData(functionFragment: "safeMintSLD(address,string)", values: [AddressLike, string]): string; - encodeFunctionData(functionFragment: "safeMintSLD(address,string,bytes)", values: [AddressLike, string, BytesLike]): string; - encodeFunctionData(functionFragment: "safeMintSLDWithResolver(address,string,address,bytes)", values: [AddressLike, string, AddressLike, BytesLike]): string; - encodeFunctionData(functionFragment: "safeMintSLDWithResolver(address,string,address)", values: [AddressLike, string, AddressLike]): string; - decodeFunctionResult(functionFragment: "addMinter", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isMinter", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "mintSLD", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "mintSLDWithResolver", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "registry", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceMinter", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeMintSLD(address,string)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeMintSLD(address,string,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeMintSLDWithResolver(address,string,address,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeMintSLDWithResolver(address,string,address)", data: BytesLike): Result; -} -export declare namespace MinterAddedEvent { - type InputTuple = [account: AddressLike]; - type OutputTuple = [account: string]; - interface OutputObject { - account: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace MinterRemovedEvent { - type InputTuple = [account: AddressLike]; - type OutputTuple = [account: string]; - interface OutputObject { - account: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface MintingController extends BaseContract { - connect(runner?: ContractRunner | null): MintingController; - waitForDeployment(): Promise; - interface: MintingControllerInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - addMinter: TypedContractMethod<[account: AddressLike], [void], "nonpayable">; - isMinter: TypedContractMethod<[account: AddressLike], [boolean], "view">; - mintSLD: TypedContractMethod<[ - to: AddressLike, - label: string - ], [ - void - ], "nonpayable">; - mintSLDWithResolver: TypedContractMethod<[ - to: AddressLike, - label: string, - resolver: AddressLike - ], [ - void - ], "nonpayable">; - registry: TypedContractMethod<[], [string], "view">; - renounceMinter: TypedContractMethod<[], [void], "nonpayable">; - "safeMintSLD(address,string)": TypedContractMethod<[ - to: AddressLike, - label: string - ], [ - void - ], "nonpayable">; - "safeMintSLD(address,string,bytes)": TypedContractMethod<[ - to: AddressLike, - label: string, - _data: BytesLike - ], [ - void - ], "nonpayable">; - "safeMintSLDWithResolver(address,string,address,bytes)": TypedContractMethod<[ - to: AddressLike, - label: string, - resolver: AddressLike, - _data: BytesLike - ], [ - void - ], "nonpayable">; - "safeMintSLDWithResolver(address,string,address)": TypedContractMethod<[ - to: AddressLike, - label: string, - resolver: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "addMinter"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "isMinter"): TypedContractMethod<[account: AddressLike], [boolean], "view">; - getFunction(nameOrSignature: "mintSLD"): TypedContractMethod<[ - to: AddressLike, - label: string - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "mintSLDWithResolver"): TypedContractMethod<[ - to: AddressLike, - label: string, - resolver: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "registry"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "renounceMinter"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "safeMintSLD(address,string)"): TypedContractMethod<[ - to: AddressLike, - label: string - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeMintSLD(address,string,bytes)"): TypedContractMethod<[ - to: AddressLike, - label: string, - _data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeMintSLDWithResolver(address,string,address,bytes)"): TypedContractMethod<[ - to: AddressLike, - label: string, - resolver: AddressLike, - _data: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeMintSLDWithResolver(address,string,address)"): TypedContractMethod<[ - to: AddressLike, - label: string, - resolver: AddressLike - ], [ - void - ], "nonpayable">; - getEvent(key: "MinterAdded"): TypedContractEvent; - getEvent(key: "MinterRemoved"): TypedContractEvent; - filters: { - "MinterAdded(address)": TypedContractEvent; - MinterAdded: TypedContractEvent; - "MinterRemoved(address)": TypedContractEvent; - MinterRemoved: TypedContractEvent; - }; -} -//# sourceMappingURL=MintingController.d.ts.map \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/controllers/MintingController.d.ts.map b/dist/types/dot-crypto/contracts/controllers/MintingController.d.ts.map deleted file mode 100644 index 12f1fd19..00000000 --- a/dist/types/dot-crypto/contracts/controllers/MintingController.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"MintingController.d.ts","sourceRoot":"","sources":["../../../../../types/dot-crypto/contracts/controllers/MintingController.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/controllers/MintingController.js b/dist/types/dot-crypto/contracts/controllers/MintingController.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/dot-crypto/contracts/controllers/MintingController.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/dot-crypto/contracts/controllers/SignatureController.d.ts b/dist/types/dot-crypto/contracts/controllers/SignatureController.d.ts deleted file mode 100644 index 06c986c2..00000000 --- a/dist/types/dot-crypto/contracts/controllers/SignatureController.d.ts +++ /dev/null @@ -1,257 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../common"; -export interface SignatureControllerInterface extends Interface { - getFunction(nameOrSignature: "burnChildFor" | "burnFor" | "mintChildFor" | "nonceOf" | "registry" | "resolveToFor" | "safeMintChildFor(address,uint256,string,bytes,bytes)" | "safeMintChildFor(address,uint256,string,bytes)" | "safeTransferFromChildFor(address,address,uint256,string,bytes)" | "safeTransferFromChildFor(address,address,uint256,string,bytes,bytes)" | "safeTransferFromFor(address,address,uint256,bytes,bytes)" | "safeTransferFromFor(address,address,uint256,bytes)" | "transferFromChildFor" | "transferFromFor"): FunctionFragment; - encodeFunctionData(functionFragment: "burnChildFor", values: [BigNumberish, string, BytesLike]): string; - encodeFunctionData(functionFragment: "burnFor", values: [BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "mintChildFor", values: [AddressLike, BigNumberish, string, BytesLike]): string; - encodeFunctionData(functionFragment: "nonceOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "registry", values?: undefined): string; - encodeFunctionData(functionFragment: "resolveToFor", values: [AddressLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "safeMintChildFor(address,uint256,string,bytes,bytes)", values: [AddressLike, BigNumberish, string, BytesLike, BytesLike]): string; - encodeFunctionData(functionFragment: "safeMintChildFor(address,uint256,string,bytes)", values: [AddressLike, BigNumberish, string, BytesLike]): string; - encodeFunctionData(functionFragment: "safeTransferFromChildFor(address,address,uint256,string,bytes)", values: [AddressLike, AddressLike, BigNumberish, string, BytesLike]): string; - encodeFunctionData(functionFragment: "safeTransferFromChildFor(address,address,uint256,string,bytes,bytes)", values: [ - AddressLike, - AddressLike, - BigNumberish, - string, - BytesLike, - BytesLike - ]): string; - encodeFunctionData(functionFragment: "safeTransferFromFor(address,address,uint256,bytes,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike, BytesLike]): string; - encodeFunctionData(functionFragment: "safeTransferFromFor(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; - encodeFunctionData(functionFragment: "transferFromChildFor", values: [AddressLike, AddressLike, BigNumberish, string, BytesLike]): string; - encodeFunctionData(functionFragment: "transferFromFor", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; - decodeFunctionResult(functionFragment: "burnChildFor", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "burnFor", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "mintChildFor", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "nonceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "registry", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "resolveToFor", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeMintChildFor(address,uint256,string,bytes,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeMintChildFor(address,uint256,string,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFromChildFor(address,address,uint256,string,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFromChildFor(address,address,uint256,string,bytes,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFromFor(address,address,uint256,bytes,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "safeTransferFromFor(address,address,uint256,bytes)", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferFromChildFor", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "transferFromFor", data: BytesLike): Result; -} -export interface SignatureController extends BaseContract { - connect(runner?: ContractRunner | null): SignatureController; - waitForDeployment(): Promise; - interface: SignatureControllerInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - burnChildFor: TypedContractMethod<[ - tokenId: BigNumberish, - label: string, - signature: BytesLike - ], [ - void - ], "nonpayable">; - burnFor: TypedContractMethod<[ - tokenId: BigNumberish, - signature: BytesLike - ], [ - void - ], "nonpayable">; - mintChildFor: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish, - label: string, - signature: BytesLike - ], [ - void - ], "nonpayable">; - nonceOf: TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; - registry: TypedContractMethod<[], [string], "view">; - resolveToFor: TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish, - signature: BytesLike - ], [ - void - ], "nonpayable">; - "safeMintChildFor(address,uint256,string,bytes,bytes)": TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish, - label: string, - _data: BytesLike, - signature: BytesLike - ], [ - void - ], "nonpayable">; - "safeMintChildFor(address,uint256,string,bytes)": TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish, - label: string, - signature: BytesLike - ], [ - void - ], "nonpayable">; - "safeTransferFromChildFor(address,address,uint256,string,bytes)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - label: string, - signature: BytesLike - ], [ - void - ], "nonpayable">; - "safeTransferFromChildFor(address,address,uint256,string,bytes,bytes)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - label: string, - _data: BytesLike, - signature: BytesLike - ], [ - void - ], "nonpayable">; - "safeTransferFromFor(address,address,uint256,bytes,bytes)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - _data: BytesLike, - signature: BytesLike - ], [ - void - ], "nonpayable">; - "safeTransferFromFor(address,address,uint256,bytes)": TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - signature: BytesLike - ], [ - void - ], "nonpayable">; - transferFromChildFor: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - label: string, - signature: BytesLike - ], [ - void - ], "nonpayable">; - transferFromFor: TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - signature: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "burnChildFor"): TypedContractMethod<[ - tokenId: BigNumberish, - label: string, - signature: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "burnFor"): TypedContractMethod<[ - tokenId: BigNumberish, - signature: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "mintChildFor"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish, - label: string, - signature: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "nonceOf"): TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; - getFunction(nameOrSignature: "registry"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "resolveToFor"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish, - signature: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeMintChildFor(address,uint256,string,bytes,bytes)"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish, - label: string, - _data: BytesLike, - signature: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeMintChildFor(address,uint256,string,bytes)"): TypedContractMethod<[ - to: AddressLike, - tokenId: BigNumberish, - label: string, - signature: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFromChildFor(address,address,uint256,string,bytes)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - label: string, - signature: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFromChildFor(address,address,uint256,string,bytes,bytes)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - label: string, - _data: BytesLike, - signature: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFromFor(address,address,uint256,bytes,bytes)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - _data: BytesLike, - signature: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "safeTransferFromFor(address,address,uint256,bytes)"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - signature: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "transferFromChildFor"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - label: string, - signature: BytesLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "transferFromFor"): TypedContractMethod<[ - from: AddressLike, - to: AddressLike, - tokenId: BigNumberish, - signature: BytesLike - ], [ - void - ], "nonpayable">; - filters: {}; -} -//# sourceMappingURL=SignatureController.d.ts.map \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/controllers/SignatureController.d.ts.map b/dist/types/dot-crypto/contracts/controllers/SignatureController.d.ts.map deleted file mode 100644 index 693e548b..00000000 --- a/dist/types/dot-crypto/contracts/controllers/SignatureController.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"SignatureController.d.ts","sourceRoot":"","sources":["../../../../../types/dot-crypto/contracts/controllers/SignatureController.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/controllers/SignatureController.js b/dist/types/dot-crypto/contracts/controllers/SignatureController.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/dot-crypto/contracts/controllers/SignatureController.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/dot-crypto/contracts/controllers/URIPrefixController.d.ts b/dist/types/dot-crypto/contracts/controllers/URIPrefixController.d.ts deleted file mode 100644 index fb6503f8..00000000 --- a/dist/types/dot-crypto/contracts/controllers/URIPrefixController.d.ts +++ /dev/null @@ -1,136 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../common"; -export interface URIPrefixControllerInterface extends Interface { - getFunction(nameOrSignature: "addWhitelistAdmin" | "addWhitelisted" | "isWhitelistAdmin" | "isWhitelisted" | "registry" | "removeWhitelisted" | "renounceWhitelistAdmin" | "renounceWhitelisted" | "setTokenURIPrefix"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "WhitelistAdminAdded" | "WhitelistAdminRemoved" | "WhitelistedAdded" | "WhitelistedRemoved"): EventFragment; - encodeFunctionData(functionFragment: "addWhitelistAdmin", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "addWhitelisted", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "isWhitelistAdmin", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "isWhitelisted", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "registry", values?: undefined): string; - encodeFunctionData(functionFragment: "removeWhitelisted", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "renounceWhitelistAdmin", values?: undefined): string; - encodeFunctionData(functionFragment: "renounceWhitelisted", values?: undefined): string; - encodeFunctionData(functionFragment: "setTokenURIPrefix", values: [string]): string; - decodeFunctionResult(functionFragment: "addWhitelistAdmin", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "addWhitelisted", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isWhitelistAdmin", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isWhitelisted", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "registry", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "removeWhitelisted", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceWhitelistAdmin", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceWhitelisted", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "setTokenURIPrefix", data: BytesLike): Result; -} -export declare namespace WhitelistAdminAddedEvent { - type InputTuple = [account: AddressLike]; - type OutputTuple = [account: string]; - interface OutputObject { - account: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace WhitelistAdminRemovedEvent { - type InputTuple = [account: AddressLike]; - type OutputTuple = [account: string]; - interface OutputObject { - account: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace WhitelistedAddedEvent { - type InputTuple = [account: AddressLike]; - type OutputTuple = [account: string]; - interface OutputObject { - account: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace WhitelistedRemovedEvent { - type InputTuple = [account: AddressLike]; - type OutputTuple = [account: string]; - interface OutputObject { - account: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface URIPrefixController extends BaseContract { - connect(runner?: ContractRunner | null): URIPrefixController; - waitForDeployment(): Promise; - interface: URIPrefixControllerInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - addWhitelistAdmin: TypedContractMethod<[ - account: AddressLike - ], [ - void - ], "nonpayable">; - addWhitelisted: TypedContractMethod<[ - account: AddressLike - ], [ - void - ], "nonpayable">; - isWhitelistAdmin: TypedContractMethod<[ - account: AddressLike - ], [ - boolean - ], "view">; - isWhitelisted: TypedContractMethod<[account: AddressLike], [boolean], "view">; - registry: TypedContractMethod<[], [string], "view">; - removeWhitelisted: TypedContractMethod<[ - account: AddressLike - ], [ - void - ], "nonpayable">; - renounceWhitelistAdmin: TypedContractMethod<[], [void], "nonpayable">; - renounceWhitelisted: TypedContractMethod<[], [void], "nonpayable">; - setTokenURIPrefix: TypedContractMethod<[ - prefix: string - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "addWhitelistAdmin"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "addWhitelisted"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "isWhitelistAdmin"): TypedContractMethod<[account: AddressLike], [boolean], "view">; - getFunction(nameOrSignature: "isWhitelisted"): TypedContractMethod<[account: AddressLike], [boolean], "view">; - getFunction(nameOrSignature: "registry"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "removeWhitelisted"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "renounceWhitelistAdmin"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "renounceWhitelisted"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "setTokenURIPrefix"): TypedContractMethod<[prefix: string], [void], "nonpayable">; - getEvent(key: "WhitelistAdminAdded"): TypedContractEvent; - getEvent(key: "WhitelistAdminRemoved"): TypedContractEvent; - getEvent(key: "WhitelistedAdded"): TypedContractEvent; - getEvent(key: "WhitelistedRemoved"): TypedContractEvent; - filters: { - "WhitelistAdminAdded(address)": TypedContractEvent; - WhitelistAdminAdded: TypedContractEvent; - "WhitelistAdminRemoved(address)": TypedContractEvent; - WhitelistAdminRemoved: TypedContractEvent; - "WhitelistedAdded(address)": TypedContractEvent; - WhitelistedAdded: TypedContractEvent; - "WhitelistedRemoved(address)": TypedContractEvent; - WhitelistedRemoved: TypedContractEvent; - }; -} -//# sourceMappingURL=URIPrefixController.d.ts.map \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/controllers/URIPrefixController.d.ts.map b/dist/types/dot-crypto/contracts/controllers/URIPrefixController.d.ts.map deleted file mode 100644 index eccf9ab2..00000000 --- a/dist/types/dot-crypto/contracts/controllers/URIPrefixController.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"URIPrefixController.d.ts","sourceRoot":"","sources":["../../../../../types/dot-crypto/contracts/controllers/URIPrefixController.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/controllers/URIPrefixController.js b/dist/types/dot-crypto/contracts/controllers/URIPrefixController.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/dot-crypto/contracts/controllers/URIPrefixController.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/dot-crypto/contracts/controllers/index.d.ts b/dist/types/dot-crypto/contracts/controllers/index.d.ts deleted file mode 100644 index 2dbd5f8f..00000000 --- a/dist/types/dot-crypto/contracts/controllers/index.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -export type { DomainZoneController } from "./DomainZoneController"; -export type { IMintingController } from "./IMintingController"; -export type { ISignatureController } from "./ISignatureController"; -export type { IURIPrefixController } from "./IURIPrefixController"; -export type { MintingController } from "./MintingController"; -export type { SignatureController } from "./SignatureController"; -export type { URIPrefixController } from "./URIPrefixController"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/controllers/index.d.ts.map b/dist/types/dot-crypto/contracts/controllers/index.d.ts.map deleted file mode 100644 index a16c5665..00000000 --- a/dist/types/dot-crypto/contracts/controllers/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/dot-crypto/contracts/controllers/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACnE,YAAY,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,YAAY,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACnE,YAAY,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACnE,YAAY,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,YAAY,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,YAAY,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC"} \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/controllers/index.js b/dist/types/dot-crypto/contracts/controllers/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/dot-crypto/contracts/controllers/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/dot-crypto/contracts/index.d.ts b/dist/types/dot-crypto/contracts/index.d.ts deleted file mode 100644 index 4c70a78f..00000000 --- a/dist/types/dot-crypto/contracts/index.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -import type * as controllers from "./controllers"; -export type { controllers }; -import type * as util from "./util"; -export type { util }; -export type { CNSRegistry } from "./CNSRegistry"; -export type { ICNSRegistry } from "./ICNSRegistry"; -export type { IRegistryReader } from "./IRegistryReader"; -export type { IResolver } from "./IResolver"; -export type { IResolverReader } from "./IResolverReader"; -export type { Resolver } from "./Resolver"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/index.d.ts.map b/dist/types/dot-crypto/contracts/index.d.ts.map deleted file mode 100644 index 7b3202a6..00000000 --- a/dist/types/dot-crypto/contracts/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../types/dot-crypto/contracts/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,WAAW,MAAM,eAAe,CAAC;AAClD,YAAY,EAAE,WAAW,EAAE,CAAC;AAC5B,OAAO,KAAK,KAAK,IAAI,MAAM,QAAQ,CAAC;AACpC,YAAY,EAAE,IAAI,EAAE,CAAC;AACrB,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,YAAY,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACnD,YAAY,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,YAAY,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,YAAY,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,YAAY,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC"} \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/index.js b/dist/types/dot-crypto/contracts/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/dot-crypto/contracts/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/dot-crypto/contracts/util/BulkWhitelistedRole.d.ts b/dist/types/dot-crypto/contracts/util/BulkWhitelistedRole.d.ts deleted file mode 100644 index e7bb5379..00000000 --- a/dist/types/dot-crypto/contracts/util/BulkWhitelistedRole.d.ts +++ /dev/null @@ -1,140 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../../common"; -export interface BulkWhitelistedRoleInterface extends Interface { - getFunction(nameOrSignature: "addWhitelistAdmin" | "addWhitelisted" | "bulkAddWhitelisted" | "bulkRemoveWhitelisted" | "isWhitelistAdmin" | "isWhitelisted" | "removeWhitelisted" | "renounceWhitelistAdmin" | "renounceWhitelisted"): FunctionFragment; - getEvent(nameOrSignatureOrTopic: "WhitelistAdminAdded" | "WhitelistAdminRemoved" | "WhitelistedAdded" | "WhitelistedRemoved"): EventFragment; - encodeFunctionData(functionFragment: "addWhitelistAdmin", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "addWhitelisted", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "bulkAddWhitelisted", values: [AddressLike[]]): string; - encodeFunctionData(functionFragment: "bulkRemoveWhitelisted", values: [AddressLike[]]): string; - encodeFunctionData(functionFragment: "isWhitelistAdmin", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "isWhitelisted", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "removeWhitelisted", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "renounceWhitelistAdmin", values?: undefined): string; - encodeFunctionData(functionFragment: "renounceWhitelisted", values?: undefined): string; - decodeFunctionResult(functionFragment: "addWhitelistAdmin", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "addWhitelisted", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "bulkAddWhitelisted", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "bulkRemoveWhitelisted", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isWhitelistAdmin", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isWhitelisted", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "removeWhitelisted", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceWhitelistAdmin", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceWhitelisted", data: BytesLike): Result; -} -export declare namespace WhitelistAdminAddedEvent { - type InputTuple = [account: AddressLike]; - type OutputTuple = [account: string]; - interface OutputObject { - account: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace WhitelistAdminRemovedEvent { - type InputTuple = [account: AddressLike]; - type OutputTuple = [account: string]; - interface OutputObject { - account: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace WhitelistedAddedEvent { - type InputTuple = [account: AddressLike]; - type OutputTuple = [account: string]; - interface OutputObject { - account: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export declare namespace WhitelistedRemovedEvent { - type InputTuple = [account: AddressLike]; - type OutputTuple = [account: string]; - interface OutputObject { - account: string; - } - type Event = TypedContractEvent; - type Filter = TypedDeferredTopicFilter; - type Log = TypedEventLog; - type LogDescription = TypedLogDescription; -} -export interface BulkWhitelistedRole extends BaseContract { - connect(runner?: ContractRunner | null): BulkWhitelistedRole; - waitForDeployment(): Promise; - interface: BulkWhitelistedRoleInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - addWhitelistAdmin: TypedContractMethod<[ - account: AddressLike - ], [ - void - ], "nonpayable">; - addWhitelisted: TypedContractMethod<[ - account: AddressLike - ], [ - void - ], "nonpayable">; - bulkAddWhitelisted: TypedContractMethod<[ - accounts: AddressLike[] - ], [ - void - ], "nonpayable">; - bulkRemoveWhitelisted: TypedContractMethod<[ - accounts: AddressLike[] - ], [ - void - ], "nonpayable">; - isWhitelistAdmin: TypedContractMethod<[ - account: AddressLike - ], [ - boolean - ], "view">; - isWhitelisted: TypedContractMethod<[account: AddressLike], [boolean], "view">; - removeWhitelisted: TypedContractMethod<[ - account: AddressLike - ], [ - void - ], "nonpayable">; - renounceWhitelistAdmin: TypedContractMethod<[], [void], "nonpayable">; - renounceWhitelisted: TypedContractMethod<[], [void], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "addWhitelistAdmin"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "addWhitelisted"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "bulkAddWhitelisted"): TypedContractMethod<[accounts: AddressLike[]], [void], "nonpayable">; - getFunction(nameOrSignature: "bulkRemoveWhitelisted"): TypedContractMethod<[accounts: AddressLike[]], [void], "nonpayable">; - getFunction(nameOrSignature: "isWhitelistAdmin"): TypedContractMethod<[account: AddressLike], [boolean], "view">; - getFunction(nameOrSignature: "isWhitelisted"): TypedContractMethod<[account: AddressLike], [boolean], "view">; - getFunction(nameOrSignature: "removeWhitelisted"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "renounceWhitelistAdmin"): TypedContractMethod<[], [void], "nonpayable">; - getFunction(nameOrSignature: "renounceWhitelisted"): TypedContractMethod<[], [void], "nonpayable">; - getEvent(key: "WhitelistAdminAdded"): TypedContractEvent; - getEvent(key: "WhitelistAdminRemoved"): TypedContractEvent; - getEvent(key: "WhitelistedAdded"): TypedContractEvent; - getEvent(key: "WhitelistedRemoved"): TypedContractEvent; - filters: { - "WhitelistAdminAdded(address)": TypedContractEvent; - WhitelistAdminAdded: TypedContractEvent; - "WhitelistAdminRemoved(address)": TypedContractEvent; - WhitelistAdminRemoved: TypedContractEvent; - "WhitelistedAdded(address)": TypedContractEvent; - WhitelistedAdded: TypedContractEvent; - "WhitelistedRemoved(address)": TypedContractEvent; - WhitelistedRemoved: TypedContractEvent; - }; -} -//# sourceMappingURL=BulkWhitelistedRole.d.ts.map \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/util/BulkWhitelistedRole.d.ts.map b/dist/types/dot-crypto/contracts/util/BulkWhitelistedRole.d.ts.map deleted file mode 100644 index c61508e0..00000000 --- a/dist/types/dot-crypto/contracts/util/BulkWhitelistedRole.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"BulkWhitelistedRole.d.ts","sourceRoot":"","sources":["../../../../../types/dot-crypto/contracts/util/BulkWhitelistedRole.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/util/BulkWhitelistedRole.js b/dist/types/dot-crypto/contracts/util/BulkWhitelistedRole.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/dot-crypto/contracts/util/BulkWhitelistedRole.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/dot-crypto/contracts/util/ControllerRole.d.ts b/dist/types/dot-crypto/contracts/util/ControllerRole.d.ts deleted file mode 100644 index ff671a3e..00000000 --- a/dist/types/dot-crypto/contracts/util/ControllerRole.d.ts +++ /dev/null @@ -1,38 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../common"; -export interface ControllerRoleInterface extends Interface { - getFunction(nameOrSignature: "addController" | "isController" | "renounceController"): FunctionFragment; - encodeFunctionData(functionFragment: "addController", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "isController", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "renounceController", values?: undefined): string; - decodeFunctionResult(functionFragment: "addController", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isController", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "renounceController", data: BytesLike): Result; -} -export interface ControllerRole extends BaseContract { - connect(runner?: ContractRunner | null): ControllerRole; - waitForDeployment(): Promise; - interface: ControllerRoleInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - addController: TypedContractMethod<[ - account: AddressLike - ], [ - void - ], "nonpayable">; - isController: TypedContractMethod<[account: AddressLike], [boolean], "view">; - renounceController: TypedContractMethod<[], [void], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "addController"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; - getFunction(nameOrSignature: "isController"): TypedContractMethod<[account: AddressLike], [boolean], "view">; - getFunction(nameOrSignature: "renounceController"): TypedContractMethod<[], [void], "nonpayable">; - filters: {}; -} -//# sourceMappingURL=ControllerRole.d.ts.map \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/util/ControllerRole.d.ts.map b/dist/types/dot-crypto/contracts/util/ControllerRole.d.ts.map deleted file mode 100644 index f122a425..00000000 --- a/dist/types/dot-crypto/contracts/util/ControllerRole.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ControllerRole.d.ts","sourceRoot":"","sources":["../../../../../types/dot-crypto/contracts/util/ControllerRole.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/util/ControllerRole.js b/dist/types/dot-crypto/contracts/util/ControllerRole.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/dot-crypto/contracts/util/ControllerRole.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/dot-crypto/contracts/util/FreeMinter.d.ts b/dist/types/dot-crypto/contracts/util/FreeMinter.d.ts deleted file mode 100644 index 3352dba2..00000000 --- a/dist/types/dot-crypto/contracts/util/FreeMinter.d.ts +++ /dev/null @@ -1,66 +0,0 @@ -import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../common"; -export interface FreeMinterInterface extends Interface { - getFunction(nameOrSignature: "NAME" | "VERSION" | "claim" | "claimTo" | "claimToWithRecords"): FunctionFragment; - encodeFunctionData(functionFragment: "NAME", values?: undefined): string; - encodeFunctionData(functionFragment: "VERSION", values?: undefined): string; - encodeFunctionData(functionFragment: "claim", values: [string]): string; - encodeFunctionData(functionFragment: "claimTo", values: [string, AddressLike]): string; - encodeFunctionData(functionFragment: "claimToWithRecords", values: [string, AddressLike, string[], string[]]): string; - decodeFunctionResult(functionFragment: "NAME", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "VERSION", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "claim", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "claimTo", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "claimToWithRecords", data: BytesLike): Result; -} -export interface FreeMinter extends BaseContract { - connect(runner?: ContractRunner | null): FreeMinter; - waitForDeployment(): Promise; - interface: FreeMinterInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - NAME: TypedContractMethod<[], [string], "view">; - VERSION: TypedContractMethod<[], [string], "view">; - claim: TypedContractMethod<[label: string], [void], "nonpayable">; - claimTo: TypedContractMethod<[ - label: string, - receiver: AddressLike - ], [ - void - ], "nonpayable">; - claimToWithRecords: TypedContractMethod<[ - label: string, - receiver: AddressLike, - keys: string[], - values: string[] - ], [ - void - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "NAME"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "VERSION"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "claim"): TypedContractMethod<[label: string], [void], "nonpayable">; - getFunction(nameOrSignature: "claimTo"): TypedContractMethod<[ - label: string, - receiver: AddressLike - ], [ - void - ], "nonpayable">; - getFunction(nameOrSignature: "claimToWithRecords"): TypedContractMethod<[ - label: string, - receiver: AddressLike, - keys: string[], - values: string[] - ], [ - void - ], "nonpayable">; - filters: {}; -} -//# sourceMappingURL=FreeMinter.d.ts.map \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/util/FreeMinter.d.ts.map b/dist/types/dot-crypto/contracts/util/FreeMinter.d.ts.map deleted file mode 100644 index 0d072084..00000000 --- a/dist/types/dot-crypto/contracts/util/FreeMinter.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"FreeMinter.d.ts","sourceRoot":"","sources":["../../../../../types/dot-crypto/contracts/util/FreeMinter.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/util/FreeMinter.js b/dist/types/dot-crypto/contracts/util/FreeMinter.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/dot-crypto/contracts/util/FreeMinter.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/dot-crypto/contracts/util/SignatureUtil.d.ts b/dist/types/dot-crypto/contracts/util/SignatureUtil.d.ts deleted file mode 100644 index 321706fb..00000000 --- a/dist/types/dot-crypto/contracts/util/SignatureUtil.d.ts +++ /dev/null @@ -1,30 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../common"; -export interface SignatureUtilInterface extends Interface { - getFunction(nameOrSignature: "nonceOf" | "registry"): FunctionFragment; - encodeFunctionData(functionFragment: "nonceOf", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "registry", values?: undefined): string; - decodeFunctionResult(functionFragment: "nonceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "registry", data: BytesLike): Result; -} -export interface SignatureUtil extends BaseContract { - connect(runner?: ContractRunner | null): SignatureUtil; - waitForDeployment(): Promise; - interface: SignatureUtilInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - nonceOf: TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; - registry: TypedContractMethod<[], [string], "view">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "nonceOf"): TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; - getFunction(nameOrSignature: "registry"): TypedContractMethod<[], [string], "view">; - filters: {}; -} -//# sourceMappingURL=SignatureUtil.d.ts.map \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/util/SignatureUtil.d.ts.map b/dist/types/dot-crypto/contracts/util/SignatureUtil.d.ts.map deleted file mode 100644 index 15681168..00000000 --- a/dist/types/dot-crypto/contracts/util/SignatureUtil.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"SignatureUtil.d.ts","sourceRoot":"","sources":["../../../../../types/dot-crypto/contracts/util/SignatureUtil.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/util/SignatureUtil.js b/dist/types/dot-crypto/contracts/util/SignatureUtil.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/dot-crypto/contracts/util/SignatureUtil.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/dot-crypto/contracts/util/index.d.ts b/dist/types/dot-crypto/contracts/util/index.d.ts deleted file mode 100644 index 05e33c57..00000000 --- a/dist/types/dot-crypto/contracts/util/index.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -export type { BulkWhitelistedRole } from "./BulkWhitelistedRole"; -export type { ControllerRole } from "./ControllerRole"; -export type { FreeMinter } from "./FreeMinter"; -export type { SignatureUtil } from "./SignatureUtil"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/util/index.d.ts.map b/dist/types/dot-crypto/contracts/util/index.d.ts.map deleted file mode 100644 index 51fcb455..00000000 --- a/dist/types/dot-crypto/contracts/util/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/dot-crypto/contracts/util/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,YAAY,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC"} \ No newline at end of file diff --git a/dist/types/dot-crypto/contracts/util/index.js b/dist/types/dot-crypto/contracts/util/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/dot-crypto/contracts/util/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/dot-crypto/index.d.ts b/dist/types/dot-crypto/index.d.ts deleted file mode 100644 index d16eef53..00000000 --- a/dist/types/dot-crypto/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import type * as contracts from "./contracts"; -export type { contracts }; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/dot-crypto/index.d.ts.map b/dist/types/dot-crypto/index.d.ts.map deleted file mode 100644 index e1ff3f08..00000000 --- a/dist/types/dot-crypto/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../types/dot-crypto/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,SAAS,MAAM,aAAa,CAAC;AAC9C,YAAY,EAAE,SAAS,EAAE,CAAC"} \ No newline at end of file diff --git a/dist/types/dot-crypto/index.js b/dist/types/dot-crypto/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/dot-crypto/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils__factory.d.ts deleted file mode 100644 index cafbd99a..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils__factory.d.ts +++ /dev/null @@ -1,35 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../../../common"; -import type { BytesUtils, BytesUtilsInterface } from "../../../../../@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils"; -declare type BytesUtilsConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class BytesUtils__factory extends ContractFactory { - constructor(...args: BytesUtilsConstructorParams); - getDeployTransaction(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): BytesUtils__factory; - static readonly bytecode = "0x602d6037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea164736f6c6343000811000a"; - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "offset"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "length"; - readonly type: "uint256"; - }]; - readonly name: "OffsetOutOfBoundsError"; - readonly type: "error"; - }]; - static createInterface(): BytesUtilsInterface; - static connect(address: string, runner?: ContractRunner | null): BytesUtils; -} -export {}; -//# sourceMappingURL=BytesUtils__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils__factory.d.ts.map deleted file mode 100644 index 8820930c..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"BytesUtils__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,UAAU,EACV,mBAAmB,EACpB,MAAM,6EAA6E,CAAC;AAwBrF,aAAK,2BAA2B,GAC5B,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,mBAAoB,SAAQ,eAAe;gBAC1C,GAAG,IAAI,EAAE,2BAA2B;IAQvC,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,mBAAmB;IAIpE,MAAM,CAAC,QAAQ,CAAC,QAAQ,gNAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,mBAAmB;IAG7C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,UAAU;CAG5E"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils__factory.js deleted file mode 100644 index 56355fc1..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils__factory.js +++ /dev/null @@ -1,52 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.BytesUtils__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "uint256", - name: "offset", - type: "uint256", - }, - { - internalType: "uint256", - name: "length", - type: "uint256", - }, - ], - name: "OffsetOutOfBoundsError", - type: "error", - }, -]; -const _bytecode = "0x602d6037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea164736f6c6343000811000a"; -const isSuperArgs = (xs) => xs.length > 1; -class BytesUtils__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(overrides) { - return super.getDeployTransaction(overrides || {}); - } - deploy(overrides) { - return super.deploy(overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.BytesUtils__factory = BytesUtils__factory; -BytesUtils__factory.bytecode = _bytecode; -BytesUtils__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/index.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/index.d.ts deleted file mode 100644 index 76ec632a..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export { BytesUtils__factory } from "./BytesUtils__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/index.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/index.d.ts.map deleted file mode 100644 index c8f633f3..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/index.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/index.js deleted file mode 100644 index 16bd064a..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/index.js +++ /dev/null @@ -1,5 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.BytesUtils__factory = void 0; -var BytesUtils__factory_1 = require("./BytesUtils__factory"); -Object.defineProperty(exports, "BytesUtils__factory", { enumerable: true, get: function () { return BytesUtils__factory_1.BytesUtils__factory; } }); diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation__factory.d.ts deleted file mode 100644 index bdfbe1f1..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation__factory.d.ts +++ /dev/null @@ -1,583 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, BytesLike, AddressLike, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../../../common"; -import type { BaseRegistrarImplementation, BaseRegistrarImplementationInterface } from "../../../../../@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation"; -declare type BaseRegistrarImplementationConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class BaseRegistrarImplementation__factory extends ContractFactory { - constructor(...args: BaseRegistrarImplementationConstructorParams); - getDeployTransaction(_ens: AddressLike, _baseNode: BytesLike, overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(_ens: AddressLike, _baseNode: BytesLike, overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): BaseRegistrarImplementation__factory; - static readonly bytecode = "0x60806040523480156200001157600080fd5b506040516200201738038062002017833981016040819052620000349162000109565b60408051602080820183526000808352835191820190935282815290916200005d8382620001ea565b5060016200006c8282620001ea565b5050506200008962000083620000b360201b60201c565b620000b7565b600880546001600160a01b0319166001600160a01b039390931692909217909155600955620002b6565b3390565b600680546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600080604083850312156200011d57600080fd5b82516001600160a01b03811681146200013557600080fd5b6020939093015192949293505050565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200017057607f821691505b6020821081036200019157634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620001e557600081815260208120601f850160051c81016020861015620001c05750805b601f850160051c820191505b81811015620001e157828155600101620001cc565b5050505b505050565b81516001600160401b0381111562000206576200020662000145565b6200021e816200021784546200015b565b8462000197565b602080601f8311600181146200025657600084156200023d5750858301515b600019600386901b1c1916600185901b178555620001e1565b600085815260208120601f198616915b82811015620002875788860151825594840194600190910190840162000266565b5085821015620002a65787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b611d5180620002c66000396000f3fe608060405234801561001057600080fd5b50600436106101cf5760003560e01c806395d89b4111610104578063c87b56dd116100a2578063e985e9c511610071578063e985e9c5146103e0578063f2fde38b1461041c578063f6a74ed71461042f578063fca247ac1461044257600080fd5b8063c87b56dd14610381578063d6e4fa8614610394578063da8c229e146103b4578063ddf7fcb0146103d757600080fd5b8063a7fc7a07116100de578063a7fc7a071461033e578063b88d4fde14610351578063c1a287e214610364578063c475abff1461036e57600080fd5b806395d89b411461031057806396e494e814610318578063a22cb4651461032b57600080fd5b80633f15457f116101715780636352211e1161014b5780636352211e146102d157806370a08231146102e4578063715018a6146102f75780638da5cb5b146102ff57600080fd5b80633f15457f1461029857806342842e0e146102ab5780634e543b26146102be57600080fd5b8063095ea7b3116101ad578063095ea7b31461023c5780630e297b451461025157806323b872dd1461027257806328ed4f6c1461028557600080fd5b806301ffc9a7146101d457806306fdde03146101fc578063081812fc14610211575b600080fd5b6101e76101e236600461183e565b610455565b60405190151581526020015b60405180910390f35b6102046104a7565b6040516101f391906118ab565b61022461021f3660046118be565b610539565b6040516001600160a01b0390911681526020016101f3565b61024f61024a3660046118ec565b610560565b005b61026461025f366004611918565b61067a565b6040519081526020016101f3565b61024f610280366004611950565b610691565b61024f610293366004611980565b6106c2565b600854610224906001600160a01b031681565b61024f6102b9366004611950565b6107db565b61024f6102cc3660046119b0565b6107f6565b6102246102df3660046118be565b61086b565b6102646102f23660046119b0565b61088e565b61024f610914565b6006546001600160a01b0316610224565b610204610928565b6101e76103263660046118be565b610937565b61024f6103393660046119cd565b61095d565b61024f61034c3660046119b0565b61096c565b61024f61035f366004611a16565b6109c0565b6102646276a70081565b61026461037c366004611af6565b6109f8565b61020461038f3660046118be565b610b89565b6102646103a23660046118be565b60009081526007602052604090205490565b6101e76103c23660046119b0565b600a6020526000908152604090205460ff1681565b61026460095481565b6101e76103ee366004611b18565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b61024f61042a3660046119b0565b610bfd565b61024f61043d3660046119b0565b610c76565b610264610450366004611918565b610cc7565b60006001600160e01b031982166301ffc9a760e01b148061048657506001600160e01b031982166380ac58cd60e01b145b806104a157506001600160e01b03198216630a3b53db60e21b145b92915050565b6060600080546104b690611b46565b80601f01602080910402602001604051908101604052809291908181526020018280546104e290611b46565b801561052f5780601f106105045761010080835404028352916020019161052f565b820191906000526020600020905b81548152906001019060200180831161051257829003601f168201915b5050505050905090565b600061054482610cd6565b506000908152600460205260409020546001600160a01b031690565b600061056b82610d35565b9050806001600160a01b0316836001600160a01b0316036105dd5760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084015b60405180910390fd5b336001600160a01b03821614806105f957506105f981336103ee565b61066b5760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016105d4565b6106758383610d95565b505050565b60006106898484846000610e03565b949350505050565b61069b3382611013565b6106b75760405162461bcd60e51b81526004016105d490611b80565b61067583838361108e565b6008546009546040516302571be360e01b8152600481019190915230916001600160a01b0316906302571be390602401602060405180830381865afa15801561070f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107339190611bcd565b6001600160a01b03161461074657600080fd5b6107503383611013565b61075957600080fd5b6008546009546040516306ab592360e01b81526004810191909152602481018490526001600160a01b038381166044830152909116906306ab5923906064016020604051808303816000875af11580156107b7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106759190611bea565b610675838383604051806020016040528060008152506109c0565b6107fe6111f2565b600854600954604051630c4b7b8560e11b815260048101919091526001600160a01b03838116602483015290911690631896f70a90604401600060405180830381600087803b15801561085057600080fd5b505af1158015610864573d6000803e3d6000fd5b5050505050565b600081815260076020526040812054421061088557600080fd5b6104a182610d35565b60006001600160a01b0382166108f85760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b60648201526084016105d4565b506001600160a01b031660009081526003602052604090205490565b61091c6111f2565b610926600061124c565b565b6060600180546104b690611b46565b6000818152600760205260408120544290610956906276a70090611c03565b1092915050565b61096833838361129e565b5050565b6109746111f2565b6001600160a01b0381166000818152600a6020526040808220805460ff19166001179055517f0a8bb31534c0ed46f380cb867bd5c803a189ced9a764e30b3a4991a9901d74749190a250565b6109ca3383611013565b6109e65760405162461bcd60e51b81526004016105d490611b80565b6109f28484848461136c565b50505050565b6008546009546040516302571be360e01b8152600481019190915260009130916001600160a01b03909116906302571be390602401602060405180830381865afa158015610a4a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a6e9190611bcd565b6001600160a01b031614610a8157600080fd5b336000908152600a602052604090205460ff16610a9d57600080fd5b6000838152600760205260409020544290610abc906276a70090611c03565b1015610ac757600080fd5b610ad46276a70083611c03565b6000848152600760205260409020546276a70090610af3908590611c03565b610afd9190611c03565b11610b0757600080fd5b60008381526007602052604081208054849290610b25908490611c03565b90915550506000838152600760205260409081902054905184917f9b87a00e30f1ac65d898f070f8a3488fe60517182d0a2098e1b4b93a54aa9bd691610b6d91815260200190565b60405180910390a2505060009081526007602052604090205490565b6060610b9482610cd6565b6000610bab60408051602081019091526000815290565b90506000815111610bcb5760405180602001604052806000815250610bf6565b80610bd58461139f565b604051602001610be6929190611c24565b6040516020818303038152906040525b9392505050565b610c056111f2565b6001600160a01b038116610c6a5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016105d4565b610c738161124c565b50565b610c7e6111f2565b6001600160a01b0381166000818152600a6020526040808220805460ff19169055517f33d83959be2573f5453b12eb9d43b3499bc57d96bd2f067ba44803c859e811139190a250565b60006106898484846001610e03565b6000818152600260205260409020546001600160a01b0316610c735760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105d4565b6000818152600260205260408120546001600160a01b0316806104a15760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105d4565b600081815260046020526040902080546001600160a01b0319166001600160a01b0384169081179091558190610dca82610d35565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6008546009546040516302571be360e01b8152600481019190915260009130916001600160a01b03909116906302571be390602401602060405180830381865afa158015610e55573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e799190611bcd565b6001600160a01b031614610e8c57600080fd5b336000908152600a602052604090205460ff16610ea857600080fd5b610eb185610937565b610eba57600080fd5b610ec76276a70042611c03565b6276a700610ed58542611c03565b610edf9190611c03565b11610ee957600080fd5b610ef38342611c03565b6000868152600760209081526040808320939093556002905220546001600160a01b031615610f2557610f2585611432565b610f2f84866114c7565b8115610fb9576008546009546040516306ab592360e01b81526004810191909152602481018790526001600160a01b038681166044830152909116906306ab5923906064016020604051808303816000875af1158015610f93573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fb79190611bea565b505b6001600160a01b038416857fb3d987963d01b2f68493b4bdb130988f157ea43070d4ad840fee0466ed9370d9610fef8642611c03565b60405190815260200160405180910390a361100a8342611c03565b95945050505050565b60008061101f8361086b565b9050806001600160a01b0316846001600160a01b0316148061105a5750836001600160a01b031661104f84610539565b6001600160a01b0316145b8061068957506001600160a01b0380821660009081526005602090815260408083209388168352929052205460ff16610689565b826001600160a01b03166110a182610d35565b6001600160a01b0316146110c75760405162461bcd60e51b81526004016105d490611c53565b6001600160a01b0382166111295760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b60648201526084016105d4565b826001600160a01b031661113c82610d35565b6001600160a01b0316146111625760405162461bcd60e51b81526004016105d490611c53565b600081815260046020908152604080832080546001600160a01b03199081169091556001600160a01b0387811680865260038552838620805460001901905590871680865283862080546001019055868652600290945282852080549092168417909155905184937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6006546001600160a01b031633146109265760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016105d4565b600680546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b816001600160a01b0316836001600160a01b0316036112ff5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c65720000000000000060448201526064016105d4565b6001600160a01b03838116600081815260056020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b61137784848461108e565b61138384848484611652565b6109f25760405162461bcd60e51b81526004016105d490611c98565b606060006113ac83611750565b600101905060008167ffffffffffffffff8111156113cc576113cc611a00565b6040519080825280601f01601f1916602001820160405280156113f6576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a850494508461140057509392505050565b600061143d82610d35565b905061144882610d35565b600083815260046020908152604080832080546001600160a01b03199081169091556001600160a01b0385168085526003845282852080546000190190558785526002909352818420805490911690555192935084927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6001600160a01b03821661151d5760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f206164647265737360448201526064016105d4565b6000818152600260205260409020546001600160a01b0316156115825760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105d4565b6000818152600260205260409020546001600160a01b0316156115e75760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105d4565b6001600160a01b038216600081815260036020908152604080832080546001019055848352600290915280822080546001600160a01b0319168417905551839291907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b60006001600160a01b0384163b1561174857604051630a85bd0160e11b81526001600160a01b0385169063150b7a0290611696903390899088908890600401611cea565b6020604051808303816000875af19250505080156116d1575060408051601f3d908101601f191682019092526116ce91810190611d27565b60015b61172e573d8080156116ff576040519150601f19603f3d011682016040523d82523d6000602084013e611704565b606091505b5080516000036117265760405162461bcd60e51b81526004016105d490611c98565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610689565b506001610689565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b831061178f5772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef810000000083106117bb576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc1000083106117d957662386f26fc10000830492506010015b6305f5e10083106117f1576305f5e100830492506008015b612710831061180557612710830492506004015b60648310611817576064830492506002015b600a83106104a15760010192915050565b6001600160e01b031981168114610c7357600080fd5b60006020828403121561185057600080fd5b8135610bf681611828565b60005b8381101561187657818101518382015260200161185e565b50506000910152565b6000815180845261189781602086016020860161185b565b601f01601f19169290920160200192915050565b602081526000610bf6602083018461187f565b6000602082840312156118d057600080fd5b5035919050565b6001600160a01b0381168114610c7357600080fd5b600080604083850312156118ff57600080fd5b823561190a816118d7565b946020939093013593505050565b60008060006060848603121561192d57600080fd5b83359250602084013561193f816118d7565b929592945050506040919091013590565b60008060006060848603121561196557600080fd5b8335611970816118d7565b9250602084013561193f816118d7565b6000806040838503121561199357600080fd5b8235915060208301356119a5816118d7565b809150509250929050565b6000602082840312156119c257600080fd5b8135610bf6816118d7565b600080604083850312156119e057600080fd5b82356119eb816118d7565b9150602083013580151581146119a557600080fd5b634e487b7160e01b600052604160045260246000fd5b60008060008060808587031215611a2c57600080fd5b8435611a37816118d7565b93506020850135611a47816118d7565b925060408501359150606085013567ffffffffffffffff80821115611a6b57600080fd5b818701915087601f830112611a7f57600080fd5b813581811115611a9157611a91611a00565b604051601f8201601f19908116603f01168101908382118183101715611ab957611ab9611a00565b816040528281528a6020848701011115611ad257600080fd5b82602086016020830137600060208483010152809550505050505092959194509250565b60008060408385031215611b0957600080fd5b50508035926020909101359150565b60008060408385031215611b2b57600080fd5b8235611b36816118d7565b915060208301356119a5816118d7565b600181811c90821680611b5a57607f821691505b602082108103611b7a57634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252602d908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526c1c881bdc88185c1c1c9bdd9959609a1b606082015260800190565b600060208284031215611bdf57600080fd5b8151610bf6816118d7565b600060208284031215611bfc57600080fd5b5051919050565b808201808211156104a157634e487b7160e01b600052601160045260246000fd5b60008351611c3681846020880161185b565b835190830190611c4a81836020880161185b565b01949350505050565b60208082526025908201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060408201526437bbb732b960d91b606082015260800190565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090611d1d9083018461187f565b9695505050505050565b600060208284031215611d3957600080fd5b8151610bf68161182856fea164736f6c6343000811000a"; - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "contract ENS"; - readonly name: "_ens"; - readonly type: "address"; - }, { - readonly internalType: "bytes32"; - readonly name: "_baseNode"; - readonly type: "bytes32"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "constructor"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "approved"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Approval"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "ApprovalForAll"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "controller"; - readonly type: "address"; - }]; - readonly name: "ControllerAdded"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "controller"; - readonly type: "address"; - }]; - readonly name: "ControllerRemoved"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "expires"; - readonly type: "uint256"; - }]; - readonly name: "NameMigrated"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "expires"; - readonly type: "uint256"; - }]; - readonly name: "NameRegistered"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "expires"; - readonly type: "uint256"; - }]; - readonly name: "NameRenewed"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "previousOwner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "newOwner"; - readonly type: "address"; - }]; - readonly name: "OwnershipTransferred"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Transfer"; - readonly type: "event"; - }, { - readonly inputs: readonly []; - readonly name: "GRACE_PERIOD"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "controller"; - readonly type: "address"; - }]; - readonly name: "addController"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "approve"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }]; - readonly name: "available"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "balanceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "baseNode"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly name: "controllers"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "ens"; - readonly outputs: readonly [{ - readonly internalType: "contract ENS"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getApproved"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly name: "isApprovedForAll"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "name"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }]; - readonly name: "nameExpires"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "owner"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "ownerOf"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }, { - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "reclaim"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }, { - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "duration"; - readonly type: "uint256"; - }]; - readonly name: "register"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }, { - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "duration"; - readonly type: "uint256"; - }]; - readonly name: "registerOnly"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "controller"; - readonly type: "address"; - }]; - readonly name: "removeController"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "duration"; - readonly type: "uint256"; - }]; - readonly name: "renew"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "renounceOwnership"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "setApprovalForAll"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }]; - readonly name: "setResolver"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceID"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "symbol"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "tokenURI"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "transferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "newOwner"; - readonly type: "address"; - }]; - readonly name: "transferOwnership"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): BaseRegistrarImplementationInterface; - static connect(address: string, runner?: ContractRunner | null): BaseRegistrarImplementation; -} -export {}; -//# sourceMappingURL=BaseRegistrarImplementation__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation__factory.d.ts.map deleted file mode 100644 index aeb3c0a1..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"BaseRegistrarImplementation__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,MAAM,EACN,SAAS,EACT,WAAW,EACX,yBAAyB,EACzB,cAAc,EACf,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,2BAA2B,EAC3B,oCAAoC,EACrC,MAAM,6FAA6F,CAAC;AAguBrG,aAAK,4CAA4C,GAC7C,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,oCAAqC,SAAQ,eAAe;gBAC3D,GAAG,IAAI,EAAE,4CAA4C;IAQxD,oBAAoB,CAC3B,IAAI,EAAE,WAAW,EACjB,SAAS,EAAE,SAAS,EACpB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CACb,IAAI,EAAE,WAAW,EACjB,SAAS,EAAE,SAAS,EACpB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAItB,2BAA2B;;IAIjD,OAAO,CACd,MAAM,EAAE,cAAc,GAAG,IAAI,GAC5B,oCAAoC;IAIvC,MAAM,CAAC,QAAQ,CAAC,QAAQ,sjgBAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,oCAAoC;IAG9D,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,2BAA2B;CAO/B"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation__factory.js deleted file mode 100644 index c0d23e30..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation__factory.js +++ /dev/null @@ -1,764 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.BaseRegistrarImplementation__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "contract ENS", - name: "_ens", - type: "address", - }, - { - internalType: "bytes32", - name: "_baseNode", - type: "bytes32", - }, - ], - stateMutability: "nonpayable", - type: "constructor", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "approved", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Approval", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: false, - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "ApprovalForAll", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "controller", - type: "address", - }, - ], - name: "ControllerAdded", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "controller", - type: "address", - }, - ], - name: "ControllerRemoved", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "expires", - type: "uint256", - }, - ], - name: "NameMigrated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "expires", - type: "uint256", - }, - ], - name: "NameRegistered", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "expires", - type: "uint256", - }, - ], - name: "NameRenewed", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "previousOwner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnershipTransferred", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Transfer", - type: "event", - }, - { - inputs: [], - name: "GRACE_PERIOD", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "controller", - type: "address", - }, - ], - name: "addController", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "approve", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - ], - name: "available", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "baseNode", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - name: "controllers", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "ens", - outputs: [ - { - internalType: "contract ENS", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getApproved", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - name: "isApprovedForAll", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "name", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - ], - name: "nameExpires", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "ownerOf", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "reclaim", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "uint256", - name: "duration", - type: "uint256", - }, - ], - name: "register", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "uint256", - name: "duration", - type: "uint256", - }, - ], - name: "registerOnly", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "controller", - type: "address", - }, - ], - name: "removeController", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - internalType: "uint256", - name: "duration", - type: "uint256", - }, - ], - name: "renew", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "renounceOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "safeTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "safeTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "setApprovalForAll", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "resolver", - type: "address", - }, - ], - name: "setResolver", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceID", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "symbol", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "tokenURI", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "transferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "transferOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -const _bytecode = "0x60806040523480156200001157600080fd5b506040516200201738038062002017833981016040819052620000349162000109565b60408051602080820183526000808352835191820190935282815290916200005d8382620001ea565b5060016200006c8282620001ea565b5050506200008962000083620000b360201b60201c565b620000b7565b600880546001600160a01b0319166001600160a01b039390931692909217909155600955620002b6565b3390565b600680546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600080604083850312156200011d57600080fd5b82516001600160a01b03811681146200013557600080fd5b6020939093015192949293505050565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200017057607f821691505b6020821081036200019157634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620001e557600081815260208120601f850160051c81016020861015620001c05750805b601f850160051c820191505b81811015620001e157828155600101620001cc565b5050505b505050565b81516001600160401b0381111562000206576200020662000145565b6200021e816200021784546200015b565b8462000197565b602080601f8311600181146200025657600084156200023d5750858301515b600019600386901b1c1916600185901b178555620001e1565b600085815260208120601f198616915b82811015620002875788860151825594840194600190910190840162000266565b5085821015620002a65787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b611d5180620002c66000396000f3fe608060405234801561001057600080fd5b50600436106101cf5760003560e01c806395d89b4111610104578063c87b56dd116100a2578063e985e9c511610071578063e985e9c5146103e0578063f2fde38b1461041c578063f6a74ed71461042f578063fca247ac1461044257600080fd5b8063c87b56dd14610381578063d6e4fa8614610394578063da8c229e146103b4578063ddf7fcb0146103d757600080fd5b8063a7fc7a07116100de578063a7fc7a071461033e578063b88d4fde14610351578063c1a287e214610364578063c475abff1461036e57600080fd5b806395d89b411461031057806396e494e814610318578063a22cb4651461032b57600080fd5b80633f15457f116101715780636352211e1161014b5780636352211e146102d157806370a08231146102e4578063715018a6146102f75780638da5cb5b146102ff57600080fd5b80633f15457f1461029857806342842e0e146102ab5780634e543b26146102be57600080fd5b8063095ea7b3116101ad578063095ea7b31461023c5780630e297b451461025157806323b872dd1461027257806328ed4f6c1461028557600080fd5b806301ffc9a7146101d457806306fdde03146101fc578063081812fc14610211575b600080fd5b6101e76101e236600461183e565b610455565b60405190151581526020015b60405180910390f35b6102046104a7565b6040516101f391906118ab565b61022461021f3660046118be565b610539565b6040516001600160a01b0390911681526020016101f3565b61024f61024a3660046118ec565b610560565b005b61026461025f366004611918565b61067a565b6040519081526020016101f3565b61024f610280366004611950565b610691565b61024f610293366004611980565b6106c2565b600854610224906001600160a01b031681565b61024f6102b9366004611950565b6107db565b61024f6102cc3660046119b0565b6107f6565b6102246102df3660046118be565b61086b565b6102646102f23660046119b0565b61088e565b61024f610914565b6006546001600160a01b0316610224565b610204610928565b6101e76103263660046118be565b610937565b61024f6103393660046119cd565b61095d565b61024f61034c3660046119b0565b61096c565b61024f61035f366004611a16565b6109c0565b6102646276a70081565b61026461037c366004611af6565b6109f8565b61020461038f3660046118be565b610b89565b6102646103a23660046118be565b60009081526007602052604090205490565b6101e76103c23660046119b0565b600a6020526000908152604090205460ff1681565b61026460095481565b6101e76103ee366004611b18565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b61024f61042a3660046119b0565b610bfd565b61024f61043d3660046119b0565b610c76565b610264610450366004611918565b610cc7565b60006001600160e01b031982166301ffc9a760e01b148061048657506001600160e01b031982166380ac58cd60e01b145b806104a157506001600160e01b03198216630a3b53db60e21b145b92915050565b6060600080546104b690611b46565b80601f01602080910402602001604051908101604052809291908181526020018280546104e290611b46565b801561052f5780601f106105045761010080835404028352916020019161052f565b820191906000526020600020905b81548152906001019060200180831161051257829003601f168201915b5050505050905090565b600061054482610cd6565b506000908152600460205260409020546001600160a01b031690565b600061056b82610d35565b9050806001600160a01b0316836001600160a01b0316036105dd5760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084015b60405180910390fd5b336001600160a01b03821614806105f957506105f981336103ee565b61066b5760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016105d4565b6106758383610d95565b505050565b60006106898484846000610e03565b949350505050565b61069b3382611013565b6106b75760405162461bcd60e51b81526004016105d490611b80565b61067583838361108e565b6008546009546040516302571be360e01b8152600481019190915230916001600160a01b0316906302571be390602401602060405180830381865afa15801561070f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107339190611bcd565b6001600160a01b03161461074657600080fd5b6107503383611013565b61075957600080fd5b6008546009546040516306ab592360e01b81526004810191909152602481018490526001600160a01b038381166044830152909116906306ab5923906064016020604051808303816000875af11580156107b7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106759190611bea565b610675838383604051806020016040528060008152506109c0565b6107fe6111f2565b600854600954604051630c4b7b8560e11b815260048101919091526001600160a01b03838116602483015290911690631896f70a90604401600060405180830381600087803b15801561085057600080fd5b505af1158015610864573d6000803e3d6000fd5b5050505050565b600081815260076020526040812054421061088557600080fd5b6104a182610d35565b60006001600160a01b0382166108f85760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b60648201526084016105d4565b506001600160a01b031660009081526003602052604090205490565b61091c6111f2565b610926600061124c565b565b6060600180546104b690611b46565b6000818152600760205260408120544290610956906276a70090611c03565b1092915050565b61096833838361129e565b5050565b6109746111f2565b6001600160a01b0381166000818152600a6020526040808220805460ff19166001179055517f0a8bb31534c0ed46f380cb867bd5c803a189ced9a764e30b3a4991a9901d74749190a250565b6109ca3383611013565b6109e65760405162461bcd60e51b81526004016105d490611b80565b6109f28484848461136c565b50505050565b6008546009546040516302571be360e01b8152600481019190915260009130916001600160a01b03909116906302571be390602401602060405180830381865afa158015610a4a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a6e9190611bcd565b6001600160a01b031614610a8157600080fd5b336000908152600a602052604090205460ff16610a9d57600080fd5b6000838152600760205260409020544290610abc906276a70090611c03565b1015610ac757600080fd5b610ad46276a70083611c03565b6000848152600760205260409020546276a70090610af3908590611c03565b610afd9190611c03565b11610b0757600080fd5b60008381526007602052604081208054849290610b25908490611c03565b90915550506000838152600760205260409081902054905184917f9b87a00e30f1ac65d898f070f8a3488fe60517182d0a2098e1b4b93a54aa9bd691610b6d91815260200190565b60405180910390a2505060009081526007602052604090205490565b6060610b9482610cd6565b6000610bab60408051602081019091526000815290565b90506000815111610bcb5760405180602001604052806000815250610bf6565b80610bd58461139f565b604051602001610be6929190611c24565b6040516020818303038152906040525b9392505050565b610c056111f2565b6001600160a01b038116610c6a5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016105d4565b610c738161124c565b50565b610c7e6111f2565b6001600160a01b0381166000818152600a6020526040808220805460ff19169055517f33d83959be2573f5453b12eb9d43b3499bc57d96bd2f067ba44803c859e811139190a250565b60006106898484846001610e03565b6000818152600260205260409020546001600160a01b0316610c735760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105d4565b6000818152600260205260408120546001600160a01b0316806104a15760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016105d4565b600081815260046020526040902080546001600160a01b0319166001600160a01b0384169081179091558190610dca82610d35565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6008546009546040516302571be360e01b8152600481019190915260009130916001600160a01b03909116906302571be390602401602060405180830381865afa158015610e55573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e799190611bcd565b6001600160a01b031614610e8c57600080fd5b336000908152600a602052604090205460ff16610ea857600080fd5b610eb185610937565b610eba57600080fd5b610ec76276a70042611c03565b6276a700610ed58542611c03565b610edf9190611c03565b11610ee957600080fd5b610ef38342611c03565b6000868152600760209081526040808320939093556002905220546001600160a01b031615610f2557610f2585611432565b610f2f84866114c7565b8115610fb9576008546009546040516306ab592360e01b81526004810191909152602481018790526001600160a01b038681166044830152909116906306ab5923906064016020604051808303816000875af1158015610f93573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fb79190611bea565b505b6001600160a01b038416857fb3d987963d01b2f68493b4bdb130988f157ea43070d4ad840fee0466ed9370d9610fef8642611c03565b60405190815260200160405180910390a361100a8342611c03565b95945050505050565b60008061101f8361086b565b9050806001600160a01b0316846001600160a01b0316148061105a5750836001600160a01b031661104f84610539565b6001600160a01b0316145b8061068957506001600160a01b0380821660009081526005602090815260408083209388168352929052205460ff16610689565b826001600160a01b03166110a182610d35565b6001600160a01b0316146110c75760405162461bcd60e51b81526004016105d490611c53565b6001600160a01b0382166111295760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b60648201526084016105d4565b826001600160a01b031661113c82610d35565b6001600160a01b0316146111625760405162461bcd60e51b81526004016105d490611c53565b600081815260046020908152604080832080546001600160a01b03199081169091556001600160a01b0387811680865260038552838620805460001901905590871680865283862080546001019055868652600290945282852080549092168417909155905184937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6006546001600160a01b031633146109265760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016105d4565b600680546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b816001600160a01b0316836001600160a01b0316036112ff5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c65720000000000000060448201526064016105d4565b6001600160a01b03838116600081815260056020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b61137784848461108e565b61138384848484611652565b6109f25760405162461bcd60e51b81526004016105d490611c98565b606060006113ac83611750565b600101905060008167ffffffffffffffff8111156113cc576113cc611a00565b6040519080825280601f01601f1916602001820160405280156113f6576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a850494508461140057509392505050565b600061143d82610d35565b905061144882610d35565b600083815260046020908152604080832080546001600160a01b03199081169091556001600160a01b0385168085526003845282852080546000190190558785526002909352818420805490911690555192935084927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6001600160a01b03821661151d5760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f206164647265737360448201526064016105d4565b6000818152600260205260409020546001600160a01b0316156115825760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105d4565b6000818152600260205260409020546001600160a01b0316156115e75760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016105d4565b6001600160a01b038216600081815260036020908152604080832080546001019055848352600290915280822080546001600160a01b0319168417905551839291907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b60006001600160a01b0384163b1561174857604051630a85bd0160e11b81526001600160a01b0385169063150b7a0290611696903390899088908890600401611cea565b6020604051808303816000875af19250505080156116d1575060408051601f3d908101601f191682019092526116ce91810190611d27565b60015b61172e573d8080156116ff576040519150601f19603f3d011682016040523d82523d6000602084013e611704565b606091505b5080516000036117265760405162461bcd60e51b81526004016105d490611c98565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610689565b506001610689565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b831061178f5772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef810000000083106117bb576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc1000083106117d957662386f26fc10000830492506010015b6305f5e10083106117f1576305f5e100830492506008015b612710831061180557612710830492506004015b60648310611817576064830492506002015b600a83106104a15760010192915050565b6001600160e01b031981168114610c7357600080fd5b60006020828403121561185057600080fd5b8135610bf681611828565b60005b8381101561187657818101518382015260200161185e565b50506000910152565b6000815180845261189781602086016020860161185b565b601f01601f19169290920160200192915050565b602081526000610bf6602083018461187f565b6000602082840312156118d057600080fd5b5035919050565b6001600160a01b0381168114610c7357600080fd5b600080604083850312156118ff57600080fd5b823561190a816118d7565b946020939093013593505050565b60008060006060848603121561192d57600080fd5b83359250602084013561193f816118d7565b929592945050506040919091013590565b60008060006060848603121561196557600080fd5b8335611970816118d7565b9250602084013561193f816118d7565b6000806040838503121561199357600080fd5b8235915060208301356119a5816118d7565b809150509250929050565b6000602082840312156119c257600080fd5b8135610bf6816118d7565b600080604083850312156119e057600080fd5b82356119eb816118d7565b9150602083013580151581146119a557600080fd5b634e487b7160e01b600052604160045260246000fd5b60008060008060808587031215611a2c57600080fd5b8435611a37816118d7565b93506020850135611a47816118d7565b925060408501359150606085013567ffffffffffffffff80821115611a6b57600080fd5b818701915087601f830112611a7f57600080fd5b813581811115611a9157611a91611a00565b604051601f8201601f19908116603f01168101908382118183101715611ab957611ab9611a00565b816040528281528a6020848701011115611ad257600080fd5b82602086016020830137600060208483010152809550505050505092959194509250565b60008060408385031215611b0957600080fd5b50508035926020909101359150565b60008060408385031215611b2b57600080fd5b8235611b36816118d7565b915060208301356119a5816118d7565b600181811c90821680611b5a57607f821691505b602082108103611b7a57634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252602d908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526c1c881bdc88185c1c1c9bdd9959609a1b606082015260800190565b600060208284031215611bdf57600080fd5b8151610bf6816118d7565b600060208284031215611bfc57600080fd5b5051919050565b808201808211156104a157634e487b7160e01b600052601160045260246000fd5b60008351611c3681846020880161185b565b835190830190611c4a81836020880161185b565b01949350505050565b60208082526025908201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060408201526437bbb732b960d91b606082015260800190565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090611d1d9083018461187f565b9695505050505050565b600060208284031215611d3957600080fd5b8151610bf68161182856fea164736f6c6343000811000a"; -const isSuperArgs = (xs) => xs.length > 1; -class BaseRegistrarImplementation__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(_ens, _baseNode, overrides) { - return super.getDeployTransaction(_ens, _baseNode, overrides || {}); - } - deploy(_ens, _baseNode, overrides) { - return super.deploy(_ens, _baseNode, overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.BaseRegistrarImplementation__factory = BaseRegistrarImplementation__factory; -BaseRegistrarImplementation__factory.bytecode = _bytecode; -BaseRegistrarImplementation__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle__factory.d.ts deleted file mode 100644 index d667ba5e..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle__factory.d.ts +++ /dev/null @@ -1,51 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, BigNumberish, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../../../common"; -import type { DummyOracle, DummyOracleInterface } from "../../../../../@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle"; -declare type DummyOracleConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class DummyOracle__factory extends ContractFactory { - constructor(...args: DummyOracleConstructorParams); - getDeployTransaction(_value: BigNumberish, overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(_value: BigNumberish, overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): DummyOracle__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b506040516100e83803806100e883398101604081905261002f9161003e565b61003881600055565b50610057565b60006020828403121561005057600080fd5b5051919050565b6083806100656000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c806350d25bcd146037578063e5c19b2d14604c575b600080fd5b60005460405190815260200160405180910390f35b605c6057366004605e565b600055565b005b600060208284031215606f57600080fd5b503591905056fea164736f6c6343000811000a"; - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "int256"; - readonly name: "_value"; - readonly type: "int256"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "constructor"; - }, { - readonly inputs: readonly []; - readonly name: "latestAnswer"; - readonly outputs: readonly [{ - readonly internalType: "int256"; - readonly name: ""; - readonly type: "int256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "int256"; - readonly name: "_value"; - readonly type: "int256"; - }]; - readonly name: "set"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): DummyOracleInterface; - static connect(address: string, runner?: ContractRunner | null): DummyOracle; -} -export {}; -//# sourceMappingURL=DummyOracle__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle__factory.d.ts.map deleted file mode 100644 index 8cf8beee..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"DummyOracle__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,MAAM,EACN,YAAY,EACZ,yBAAyB,EACzB,cAAc,EACf,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,WAAW,EACX,oBAAoB,EACrB,MAAM,6EAA6E,CAAC;AA6CrF,aAAK,4BAA4B,GAC7B,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,oBAAqB,SAAQ,eAAe;gBAC3C,GAAG,IAAI,EAAE,4BAA4B;IAQxC,oBAAoB,CAC3B,MAAM,EAAE,YAAY,EACpB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CACb,MAAM,EAAE,YAAY,EACpB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAItB,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,oBAAoB;IAIrE,MAAM,CAAC,QAAQ,CAAC,QAAQ,wdAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,oBAAoB;IAG9C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,WAAW;CAG7E"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle__factory.js deleted file mode 100644 index 4845e9ea..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle__factory.js +++ /dev/null @@ -1,73 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.DummyOracle__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "int256", - name: "_value", - type: "int256", - }, - ], - stateMutability: "nonpayable", - type: "constructor", - }, - { - inputs: [], - name: "latestAnswer", - outputs: [ - { - internalType: "int256", - name: "", - type: "int256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "int256", - name: "_value", - type: "int256", - }, - ], - name: "set", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -const _bytecode = "0x608060405234801561001057600080fd5b506040516100e83803806100e883398101604081905261002f9161003e565b61003881600055565b50610057565b60006020828403121561005057600080fd5b5051919050565b6083806100656000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c806350d25bcd146037578063e5c19b2d14604c575b600080fd5b60005460405190815260200160405180910390f35b605c6057366004605e565b600055565b005b600060208284031215606f57600080fd5b503591905056fea164736f6c6343000811000a"; -const isSuperArgs = (xs) => xs.length > 1; -class DummyOracle__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(_value, overrides) { - return super.getDeployTransaction(_value, overrides || {}); - } - deploy(_value, overrides) { - return super.deploy(_value, overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.DummyOracle__factory = DummyOracle__factory; -DummyOracle__factory.bytecode = _bytecode; -DummyOracle__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController__factory.d.ts deleted file mode 100644 index 95d53b4f..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController__factory.d.ts +++ /dev/null @@ -1,483 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, BigNumberish, AddressLike, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../../../common"; -import type { ETHRegistrarController, ETHRegistrarControllerInterface } from "../../../../../@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController"; -declare type ETHRegistrarControllerConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class ETHRegistrarController__factory extends ContractFactory { - constructor(...args: ETHRegistrarControllerConstructorParams); - getDeployTransaction(_base: AddressLike, _prices: AddressLike, _minCommitmentAge: BigNumberish, _maxCommitmentAge: BigNumberish, _reverseRegistrar: AddressLike, _nameWrapper: AddressLike, _ens: AddressLike, overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(_base: AddressLike, _prices: AddressLike, _minCommitmentAge: BigNumberish, _maxCommitmentAge: BigNumberish, _reverseRegistrar: AddressLike, _nameWrapper: AddressLike, _ens: AddressLike, overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): ETHRegistrarController__factory; - static readonly bytecode = "0x6101406040523480156200001257600080fd5b5060405162001e7038038062001e70833981016040819052620000359162000222565b80336200004281620001b9565b6040516302571be360e01b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e260048201526000906001600160a01b038416906302571be390602401602060405180830381865afa158015620000aa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620000d09190620002b6565b604051630f41a04d60e11b81526001600160a01b03848116600483015291925090821690631e83409a906024016020604051808303816000875af11580156200011d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001439190620002dd565b5050505084841162000168576040516307cb550760e31b815260040160405180910390fd5b428411156200018a57604051630b4319e560e21b815260040160405180910390fd5b506001600160a01b0395861660805293851660a05260c09290925260e0528216610100521661012052620002f7565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146200021f57600080fd5b50565b600080600080600080600060e0888a0312156200023e57600080fd5b87516200024b8162000209565b60208901519097506200025e8162000209565b8096505060408801519450606088015193506080880151620002808162000209565b60a0890151909350620002938162000209565b60c0890151909250620002a68162000209565b8091505092959891949750929550565b600060208284031215620002c957600080fd5b8151620002d68162000209565b9392505050565b600060208284031215620002f057600080fd5b5051919050565b60805160a05160c05160e0516101005161012051611af16200037f60003960008181610335015281816106f30152610ab60152600081816101f80152610fe301526000818161039c01528181610c7b0152610e6e0152600081816102c30152610e100152600081816103d001526108f40152600081816109290152610bea0152611af16000f3fe60806040526004361061011f5760003560e01c80638d839ffe116100a0578063aeb8ce9b11610064578063aeb8ce9b1461036a578063ce1e09c01461038a578063d3419bf3146103be578063f14fcbc8146103f2578063f2fde38b1461041257600080fd5b80638d839ffe146102b15780638da5cb5b146102e55780639791c09714610303578063a8e5fbc014610323578063acf1a8411461035757600080fd5b806374694a2b116100e757806374694a2b146101d357806380869853146101e6578063839df9451461023257806383e7f6ff1461025f5780638a95b09f1461029a57600080fd5b806301ffc9a7146101245780633ccfd60b146101595780635d3590d51461017057806365a69dcf14610190578063715018a6146101be575b600080fd5b34801561013057600080fd5b5061014461013f366004611198565b610432565b60405190151581526020015b60405180910390f35b34801561016557600080fd5b5061016e610469565b005b34801561017c57600080fd5b5061016e61018b3660046111de565b6104a6565b34801561019c57600080fd5b506101b06101ab36600461134b565b610527565b604051908152602001610150565b3480156101ca57600080fd5b5061016e6105ac565b61016e6101e136600461144e565b6105c0565b3480156101f257600080fd5b5061021a7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610150565b34801561023e57600080fd5b506101b061024d366004611518565b60016020526000908152604090205481565b34801561026b57600080fd5b5061027f61027a366004611531565b6108c3565b60408051825181526020928301519281019290925201610150565b3480156102a657600080fd5b506101b06224ea0081565b3480156102bd57600080fd5b506101b07f000000000000000000000000000000000000000000000000000000000000000081565b3480156102f157600080fd5b506000546001600160a01b031661021a565b34801561030f57600080fd5b5061014461031e366004611576565b6109fd565b34801561032f57600080fd5b5061021a7f000000000000000000000000000000000000000000000000000000000000000081565b61016e6103653660046115ab565b610a12565b34801561037657600080fd5b50610144610385366004611576565b610bba565b34801561039657600080fd5b506101b07f000000000000000000000000000000000000000000000000000000000000000081565b3480156103ca57600080fd5b5061021a7f000000000000000000000000000000000000000000000000000000000000000081565b3480156103fe57600080fd5b5061016e61040d366004611518565b610c64565b34801561041e57600080fd5b5061016e61042d3660046115f7565b610cd9565b60006001600160e01b031982166301ffc9a760e01b148061046357506001600160e01b0319821663612e8c0960e01b145b92915050565b600080546040516001600160a01b03909116914780156108fc02929091818181858888f193505050501580156104a3573d6000803e3d6000fd5b50565b6104ae610d4f565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303816000875af11580156104fd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105219190611612565b50505050565b885160208a0120600090841580159061054757506001600160a01b038716155b15610565576040516334fd817160e21b815260040160405180910390fd5b808a8a8a8a8a8a8a8a604051602001610586999897969594939291906116ea565b604051602081830303815290604052805190602001209150509998505050505050505050565b6105b4610d4f565b6105be6000610da9565b565b60006106038b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508c92506108c3915050565b6020810151815191925061061691611764565b3410156106365760405163044044a560e21b815260040160405180910390fd5b6106d98b8b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050896106d48e8e8080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050508d8d8d8d8d8d8d8d610527565b610df9565b604051635200a4c160e11b81526000906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063a401498290610732908f908f908f908f908e908b90600401611777565b6020604051808303816000875af1158015610751573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061077591906117c2565b905084156107a0576107a0878d8d6040516107919291906117db565b60405180910390208888610f17565b83156107e9576107e98c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508b9250339150610fe19050565b896001600160a01b03168c8c6040516108039291906117db565b60405180910390207f69e37f151eb98a09618ddaa80c8cfaf1ce5996867c489f45b555b412271ebf278e8e866000015187602001518760405161084a9594939291906117eb565b60405180910390a3602082015182516108639190611764565b3411156108b5576020820151825133916108fc916108819190611764565b61088b903461181c565b6040518115909202916000818181858888f193505050501580156108b3573d6000803e3d6000fd5b505b505050505050505050505050565b604080518082019091526000808252602082015282516020840120604051636b727d4360e11b8152600481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116916350e9a7159187917f00000000000000000000000000000000000000000000000000000000000000009091169063d6e4fa8690602401602060405180830381865afa158015610972573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061099691906117c2565b866040518463ffffffff1660e01b81526004016109b59392919061187f565b6040805180830381865afa1580156109d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109f591906118a4565b949350505050565b60006003610a0a83611095565b101592915050565b60008383604051610a249291906117db565b604080519182900382206020601f870181900481028401810190925285835292508291600091610a71919088908890819084018382808284376000920191909152508892506108c3915050565b8051909150341015610a965760405163044044a560e21b815260040160405180910390fd5b60405163c475abff60e01b815260048101839052602481018590526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063c475abff906044016020604051808303816000875af1158015610b07573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b2b91906117c2565b8251909150341115610b7357815133906108fc90610b49903461181c565b6040518115909202916000818181858888f19350505050158015610b71573d6000803e3d6000fd5b505b837f3da24c024582931cfaf8267d8ed24d13a82a8068d5bd337d30ec45cea4e506ae88883485604051610ba994939291906118f3565b60405180910390a250505050505050565b80516020820120600090610bcd836109fd565b8015610c5d57506040516312dc929d60e31b8152600481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906396e494e890602401602060405180830381865afa158015610c39573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c5d9190611612565b9392505050565b6000818152600160205260409020544290610ca0907f000000000000000000000000000000000000000000000000000000000000000090611764565b10610cc657604051630a059d7160e01b8152600481018290526024015b60405180910390fd5b6000908152600160205260409020429055565b610ce1610d4f565b6001600160a01b038116610d465760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610cbd565b6104a381610da9565b6000546001600160a01b031633146105be5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610cbd565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000818152600160205260409020544290610e35907f000000000000000000000000000000000000000000000000000000000000000090611764565b1115610e5757604051635320bcf960e01b815260048101829052602401610cbd565b6000818152600160205260409020544290610e93907f000000000000000000000000000000000000000000000000000000000000000090611764565b11610eb45760405163cb7690d760e01b815260048101829052602401610cbd565b610ebd83610bba565b610edc57826040516308eee0fd60e31b8152600401610cbd919061191a565b6000818152600160205260408120556224ea00821015610f1257604051639a71997b60e01b815260048101839052602401610cbd565b505050565b604080517f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae6020808301919091528183018690528251808303840181526060830193849052805191012063e32954eb60e01b90925285906001600160a01b0382169063e32954eb90610f919085908890889060640161192d565b6000604051808303816000875af1158015610fb0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610fd89190810190611950565b50505050505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316637a806d6b338385876040516020016110249190611a4f565b6040516020818303038152906040526040518563ffffffff1660e01b81526004016110529493929190611a77565b6020604051808303816000875af1158015611071573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061052191906117c2565b8051600090819081905b8082101561118f5760008583815181106110bb576110bb611ab5565b01602001516001600160f81b0319169050600160ff1b8110156110ea576110e3600184611764565b925061117c565b600760fd1b6001600160f81b03198216101561110b576110e3600284611764565b600f60fc1b6001600160f81b03198216101561112c576110e3600384611764565b601f60fb1b6001600160f81b03198216101561114d576110e3600484611764565b603f60fa1b6001600160f81b03198216101561116e576110e3600584611764565b611179600684611764565b92505b508261118781611acb565b93505061109f565b50909392505050565b6000602082840312156111aa57600080fd5b81356001600160e01b031981168114610c5d57600080fd5b80356001600160a01b03811681146111d957600080fd5b919050565b6000806000606084860312156111f357600080fd5b6111fc846111c2565b925061120a602085016111c2565b9150604084013590509250925092565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff811182821017156112595761125961121a565b604052919050565b600067ffffffffffffffff82111561127b5761127b61121a565b50601f01601f191660200190565b600082601f83011261129a57600080fd5b81356112ad6112a882611261565b611230565b8181528460208386010111156112c257600080fd5b816020850160208301376000918101602001919091529392505050565b60008083601f8401126112f157600080fd5b50813567ffffffffffffffff81111561130957600080fd5b6020830191508360208260051b850101111561132457600080fd5b9250929050565b80151581146104a357600080fd5b803561ffff811681146111d957600080fd5b60008060008060008060008060006101008a8c03121561136a57600080fd5b893567ffffffffffffffff8082111561138257600080fd5b61138e8d838e01611289565b9a5061139c60208d016111c2565b995060408c0135985060608c013597506113b860808d016111c2565b965060a08c01359150808211156113ce57600080fd5b506113db8c828d016112df565b90955093505060c08a01356113ef8161132b565b91506113fd60e08b01611339565b90509295985092959850929598565b60008083601f84011261141e57600080fd5b50813567ffffffffffffffff81111561143657600080fd5b60208301915083602082850101111561132457600080fd5b6000806000806000806000806000806101008b8d03121561146e57600080fd5b8a3567ffffffffffffffff8082111561148657600080fd5b6114928e838f0161140c565b909c509a508a91506114a660208e016111c2565b995060408d0135985060608d013597506114c260808e016111c2565b965060a08d01359150808211156114d857600080fd5b506114e58d828e016112df565b90955093505060c08b01356114f98161132b565b915061150760e08c01611339565b90509295989b9194979a5092959850565b60006020828403121561152a57600080fd5b5035919050565b6000806040838503121561154457600080fd5b823567ffffffffffffffff81111561155b57600080fd5b61156785828601611289565b95602094909401359450505050565b60006020828403121561158857600080fd5b813567ffffffffffffffff81111561159f57600080fd5b6109f584828501611289565b6000806000604084860312156115c057600080fd5b833567ffffffffffffffff8111156115d757600080fd5b6115e38682870161140c565b909790965060209590950135949350505050565b60006020828403121561160957600080fd5b610c5d826111c2565b60006020828403121561162457600080fd5b8151610c5d8161132b565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b81835260006020808501808196508560051b810191508460005b878110156116dd5782840389528135601e1988360301811261169357600080fd5b8701858101903567ffffffffffffffff8111156116af57600080fd5b8036038213156116be57600080fd5b6116c986828461162f565b9a87019a9550505090840190600101611672565b5091979650505050505050565b8981526001600160a01b03898116602083015260408201899052606082018890528616608082015261010060a0820181905260009061172c8382018789611658565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b634e487b7160e01b600052601160045260246000fd5b808201808211156104635761046361174e565b60a08152600061178b60a08301888a61162f565b6001600160a01b03968716602084015260408301959095525091909316606082015261ffff90921660809092019190915292915050565b6000602082840312156117d457600080fd5b5051919050565b8183823760009101908152919050565b6080815260006117ff60808301878961162f565b602083019590955250604081019290925260609091015292915050565b818103818111156104635761046361174e565b60005b8381101561184a578181015183820152602001611832565b50506000910152565b6000815180845261186b81602086016020860161182f565b601f01601f19169290920160200192915050565b6060815260006118926060830186611853565b60208301949094525060400152919050565b6000604082840312156118b657600080fd5b6040516040810181811067ffffffffffffffff821117156118d9576118d961121a565b604052825181526020928301519281019290925250919050565b60608152600061190760608301868861162f565b6020830194909452506040015292915050565b602081526000610c5d6020830184611853565b838152604060208201526000611947604083018486611658565b95945050505050565b6000602080838503121561196357600080fd5b825167ffffffffffffffff8082111561197b57600080fd5b818501915085601f83011261198f57600080fd5b8151818111156119a1576119a161121a565b8060051b6119b0858201611230565b91825283810185019185810190898411156119ca57600080fd5b86860192505b83831015611a42578251858111156119e85760008081fd5b8601603f81018b136119fa5760008081fd5b878101516040611a0c6112a883611261565b8281528d82848601011115611a215760008081fd5b611a30838c830184870161182f565b855250505091860191908601906119d0565b9998505050505050505050565b60008251611a6181846020870161182f565b6305ccae8d60e31b920191825250600401919050565b6001600160a01b038581168252848116602083015283166040820152608060608201819052600090611aab90830184611853565b9695505050505050565b634e487b7160e01b600052603260045260246000fd5b600060018201611add57611add61174e565b506001019056fea164736f6c6343000811000a"; - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "contract BaseRegistrarImplementation"; - readonly name: "_base"; - readonly type: "address"; - }, { - readonly internalType: "contract IPriceOracle"; - readonly name: "_prices"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "_minCommitmentAge"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "_maxCommitmentAge"; - readonly type: "uint256"; - }, { - readonly internalType: "contract ReverseRegistrar"; - readonly name: "_reverseRegistrar"; - readonly type: "address"; - }, { - readonly internalType: "contract INameWrapper"; - readonly name: "_nameWrapper"; - readonly type: "address"; - }, { - readonly internalType: "contract ENS"; - readonly name: "_ens"; - readonly type: "address"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "constructor"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "commitment"; - readonly type: "bytes32"; - }]; - readonly name: "CommitmentTooNew"; - readonly type: "error"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "commitment"; - readonly type: "bytes32"; - }]; - readonly name: "CommitmentTooOld"; - readonly type: "error"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "duration"; - readonly type: "uint256"; - }]; - readonly name: "DurationTooShort"; - readonly type: "error"; - }, { - readonly inputs: readonly []; - readonly name: "InsufficientValue"; - readonly type: "error"; - }, { - readonly inputs: readonly []; - readonly name: "MaxCommitmentAgeTooHigh"; - readonly type: "error"; - }, { - readonly inputs: readonly []; - readonly name: "MaxCommitmentAgeTooLow"; - readonly type: "error"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "name"; - readonly type: "string"; - }]; - readonly name: "NameNotAvailable"; - readonly type: "error"; - }, { - readonly inputs: readonly []; - readonly name: "ResolverRequiredWhenDataSupplied"; - readonly type: "error"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "commitment"; - readonly type: "bytes32"; - }]; - readonly name: "UnexpiredCommitmentExists"; - readonly type: "error"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "string"; - readonly name: "name"; - readonly type: "string"; - }, { - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "label"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "baseCost"; - readonly type: "uint256"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "premium"; - readonly type: "uint256"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "expires"; - readonly type: "uint256"; - }]; - readonly name: "NameRegistered"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "string"; - readonly name: "name"; - readonly type: "string"; - }, { - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "label"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "cost"; - readonly type: "uint256"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "expires"; - readonly type: "uint256"; - }]; - readonly name: "NameRenewed"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "previousOwner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "newOwner"; - readonly type: "address"; - }]; - readonly name: "OwnershipTransferred"; - readonly type: "event"; - }, { - readonly inputs: readonly []; - readonly name: "MIN_REGISTRATION_DURATION"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "name"; - readonly type: "string"; - }]; - readonly name: "available"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "commitment"; - readonly type: "bytes32"; - }]; - readonly name: "commit"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly name: "commitments"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "name"; - readonly type: "string"; - }, { - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "duration"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes32"; - readonly name: "secret"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }, { - readonly internalType: "bytes[]"; - readonly name: "data"; - readonly type: "bytes[]"; - }, { - readonly internalType: "bool"; - readonly name: "reverseRecord"; - readonly type: "bool"; - }, { - readonly internalType: "uint16"; - readonly name: "ownerControlledFuses"; - readonly type: "uint16"; - }]; - readonly name: "makeCommitment"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "pure"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "maxCommitmentAge"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "minCommitmentAge"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "nameWrapper"; - readonly outputs: readonly [{ - readonly internalType: "contract INameWrapper"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "owner"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "prices"; - readonly outputs: readonly [{ - readonly internalType: "contract IPriceOracle"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "_token"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "_to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "_amount"; - readonly type: "uint256"; - }]; - readonly name: "recoverFunds"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "name"; - readonly type: "string"; - }, { - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "duration"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes32"; - readonly name: "secret"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }, { - readonly internalType: "bytes[]"; - readonly name: "data"; - readonly type: "bytes[]"; - }, { - readonly internalType: "bool"; - readonly name: "reverseRecord"; - readonly type: "bool"; - }, { - readonly internalType: "uint16"; - readonly name: "ownerControlledFuses"; - readonly type: "uint16"; - }]; - readonly name: "register"; - readonly outputs: readonly []; - readonly stateMutability: "payable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "name"; - readonly type: "string"; - }, { - readonly internalType: "uint256"; - readonly name: "duration"; - readonly type: "uint256"; - }]; - readonly name: "renew"; - readonly outputs: readonly []; - readonly stateMutability: "payable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "renounceOwnership"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "name"; - readonly type: "string"; - }, { - readonly internalType: "uint256"; - readonly name: "duration"; - readonly type: "uint256"; - }]; - readonly name: "rentPrice"; - readonly outputs: readonly [{ - readonly components: readonly [{ - readonly internalType: "uint256"; - readonly name: "base"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "premium"; - readonly type: "uint256"; - }]; - readonly internalType: "struct IPriceOracle.Price"; - readonly name: "price"; - readonly type: "tuple"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "reverseRegistrar"; - readonly outputs: readonly [{ - readonly internalType: "contract ReverseRegistrar"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceID"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "pure"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "newOwner"; - readonly type: "address"; - }]; - readonly name: "transferOwnership"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "name"; - readonly type: "string"; - }]; - readonly name: "valid"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "pure"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "withdraw"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): ETHRegistrarControllerInterface; - static connect(address: string, runner?: ContractRunner | null): ETHRegistrarController; -} -export {}; -//# sourceMappingURL=ETHRegistrarController__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController__factory.d.ts.map deleted file mode 100644 index d7e27bea..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ETHRegistrarController__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,MAAM,EACN,YAAY,EACZ,WAAW,EACX,yBAAyB,EACzB,cAAc,EACf,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,sBAAsB,EACtB,+BAA+B,EAChC,MAAM,wFAAwF,CAAC;AA2lBhG,aAAK,uCAAuC,GACxC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,+BAAgC,SAAQ,eAAe;gBACtD,GAAG,IAAI,EAAE,uCAAuC;IAQnD,oBAAoB,CAC3B,KAAK,EAAE,WAAW,EAClB,OAAO,EAAE,WAAW,EACpB,iBAAiB,EAAE,YAAY,EAC/B,iBAAiB,EAAE,YAAY,EAC/B,iBAAiB,EAAE,WAAW,EAC9B,YAAY,EAAE,WAAW,EACzB,IAAI,EAAE,WAAW,EACjB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAY5B,MAAM,CACb,KAAK,EAAE,WAAW,EAClB,OAAO,EAAE,WAAW,EACpB,iBAAiB,EAAE,YAAY,EAC/B,iBAAiB,EAAE,YAAY,EAC/B,iBAAiB,EAAE,WAAW,EAC9B,YAAY,EAAE,WAAW,EACzB,IAAI,EAAE,WAAW,EACjB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAatB,2BAA2B;;IAIjD,OAAO,CACd,MAAM,EAAE,cAAc,GAAG,IAAI,GAC5B,+BAA+B;IAIlC,MAAM,CAAC,QAAQ,CAAC,QAAQ,wueAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,+BAA+B;IAGzD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,sBAAsB;CAO1B"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController__factory.js deleted file mode 100644 index 1834203e..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController__factory.js +++ /dev/null @@ -1,631 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ETHRegistrarController__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "contract BaseRegistrarImplementation", - name: "_base", - type: "address", - }, - { - internalType: "contract IPriceOracle", - name: "_prices", - type: "address", - }, - { - internalType: "uint256", - name: "_minCommitmentAge", - type: "uint256", - }, - { - internalType: "uint256", - name: "_maxCommitmentAge", - type: "uint256", - }, - { - internalType: "contract ReverseRegistrar", - name: "_reverseRegistrar", - type: "address", - }, - { - internalType: "contract INameWrapper", - name: "_nameWrapper", - type: "address", - }, - { - internalType: "contract ENS", - name: "_ens", - type: "address", - }, - ], - stateMutability: "nonpayable", - type: "constructor", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "commitment", - type: "bytes32", - }, - ], - name: "CommitmentTooNew", - type: "error", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "commitment", - type: "bytes32", - }, - ], - name: "CommitmentTooOld", - type: "error", - }, - { - inputs: [ - { - internalType: "uint256", - name: "duration", - type: "uint256", - }, - ], - name: "DurationTooShort", - type: "error", - }, - { - inputs: [], - name: "InsufficientValue", - type: "error", - }, - { - inputs: [], - name: "MaxCommitmentAgeTooHigh", - type: "error", - }, - { - inputs: [], - name: "MaxCommitmentAgeTooLow", - type: "error", - }, - { - inputs: [ - { - internalType: "string", - name: "name", - type: "string", - }, - ], - name: "NameNotAvailable", - type: "error", - }, - { - inputs: [], - name: "ResolverRequiredWhenDataSupplied", - type: "error", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "commitment", - type: "bytes32", - }, - ], - name: "UnexpiredCommitmentExists", - type: "error", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "string", - name: "name", - type: "string", - }, - { - indexed: true, - internalType: "bytes32", - name: "label", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "baseCost", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "premium", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "expires", - type: "uint256", - }, - ], - name: "NameRegistered", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "string", - name: "name", - type: "string", - }, - { - indexed: true, - internalType: "bytes32", - name: "label", - type: "bytes32", - }, - { - indexed: false, - internalType: "uint256", - name: "cost", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "expires", - type: "uint256", - }, - ], - name: "NameRenewed", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "previousOwner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnershipTransferred", - type: "event", - }, - { - inputs: [], - name: "MIN_REGISTRATION_DURATION", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "name", - type: "string", - }, - ], - name: "available", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "commitment", - type: "bytes32", - }, - ], - name: "commit", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - name: "commitments", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "name", - type: "string", - }, - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "uint256", - name: "duration", - type: "uint256", - }, - { - internalType: "bytes32", - name: "secret", - type: "bytes32", - }, - { - internalType: "address", - name: "resolver", - type: "address", - }, - { - internalType: "bytes[]", - name: "data", - type: "bytes[]", - }, - { - internalType: "bool", - name: "reverseRecord", - type: "bool", - }, - { - internalType: "uint16", - name: "ownerControlledFuses", - type: "uint16", - }, - ], - name: "makeCommitment", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "pure", - type: "function", - }, - { - inputs: [], - name: "maxCommitmentAge", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "minCommitmentAge", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "nameWrapper", - outputs: [ - { - internalType: "contract INameWrapper", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "prices", - outputs: [ - { - internalType: "contract IPriceOracle", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_token", - type: "address", - }, - { - internalType: "address", - name: "_to", - type: "address", - }, - { - internalType: "uint256", - name: "_amount", - type: "uint256", - }, - ], - name: "recoverFunds", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "name", - type: "string", - }, - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "uint256", - name: "duration", - type: "uint256", - }, - { - internalType: "bytes32", - name: "secret", - type: "bytes32", - }, - { - internalType: "address", - name: "resolver", - type: "address", - }, - { - internalType: "bytes[]", - name: "data", - type: "bytes[]", - }, - { - internalType: "bool", - name: "reverseRecord", - type: "bool", - }, - { - internalType: "uint16", - name: "ownerControlledFuses", - type: "uint16", - }, - ], - name: "register", - outputs: [], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "name", - type: "string", - }, - { - internalType: "uint256", - name: "duration", - type: "uint256", - }, - ], - name: "renew", - outputs: [], - stateMutability: "payable", - type: "function", - }, - { - inputs: [], - name: "renounceOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "name", - type: "string", - }, - { - internalType: "uint256", - name: "duration", - type: "uint256", - }, - ], - name: "rentPrice", - outputs: [ - { - components: [ - { - internalType: "uint256", - name: "base", - type: "uint256", - }, - { - internalType: "uint256", - name: "premium", - type: "uint256", - }, - ], - internalType: "struct IPriceOracle.Price", - name: "price", - type: "tuple", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "reverseRegistrar", - outputs: [ - { - internalType: "contract ReverseRegistrar", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceID", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "pure", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "transferOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "name", - type: "string", - }, - ], - name: "valid", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "pure", - type: "function", - }, - { - inputs: [], - name: "withdraw", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -const _bytecode = "0x6101406040523480156200001257600080fd5b5060405162001e7038038062001e70833981016040819052620000359162000222565b80336200004281620001b9565b6040516302571be360e01b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e260048201526000906001600160a01b038416906302571be390602401602060405180830381865afa158015620000aa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620000d09190620002b6565b604051630f41a04d60e11b81526001600160a01b03848116600483015291925090821690631e83409a906024016020604051808303816000875af11580156200011d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001439190620002dd565b5050505084841162000168576040516307cb550760e31b815260040160405180910390fd5b428411156200018a57604051630b4319e560e21b815260040160405180910390fd5b506001600160a01b0395861660805293851660a05260c09290925260e0528216610100521661012052620002f7565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146200021f57600080fd5b50565b600080600080600080600060e0888a0312156200023e57600080fd5b87516200024b8162000209565b60208901519097506200025e8162000209565b8096505060408801519450606088015193506080880151620002808162000209565b60a0890151909350620002938162000209565b60c0890151909250620002a68162000209565b8091505092959891949750929550565b600060208284031215620002c957600080fd5b8151620002d68162000209565b9392505050565b600060208284031215620002f057600080fd5b5051919050565b60805160a05160c05160e0516101005161012051611af16200037f60003960008181610335015281816106f30152610ab60152600081816101f80152610fe301526000818161039c01528181610c7b0152610e6e0152600081816102c30152610e100152600081816103d001526108f40152600081816109290152610bea0152611af16000f3fe60806040526004361061011f5760003560e01c80638d839ffe116100a0578063aeb8ce9b11610064578063aeb8ce9b1461036a578063ce1e09c01461038a578063d3419bf3146103be578063f14fcbc8146103f2578063f2fde38b1461041257600080fd5b80638d839ffe146102b15780638da5cb5b146102e55780639791c09714610303578063a8e5fbc014610323578063acf1a8411461035757600080fd5b806374694a2b116100e757806374694a2b146101d357806380869853146101e6578063839df9451461023257806383e7f6ff1461025f5780638a95b09f1461029a57600080fd5b806301ffc9a7146101245780633ccfd60b146101595780635d3590d51461017057806365a69dcf14610190578063715018a6146101be575b600080fd5b34801561013057600080fd5b5061014461013f366004611198565b610432565b60405190151581526020015b60405180910390f35b34801561016557600080fd5b5061016e610469565b005b34801561017c57600080fd5b5061016e61018b3660046111de565b6104a6565b34801561019c57600080fd5b506101b06101ab36600461134b565b610527565b604051908152602001610150565b3480156101ca57600080fd5b5061016e6105ac565b61016e6101e136600461144e565b6105c0565b3480156101f257600080fd5b5061021a7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610150565b34801561023e57600080fd5b506101b061024d366004611518565b60016020526000908152604090205481565b34801561026b57600080fd5b5061027f61027a366004611531565b6108c3565b60408051825181526020928301519281019290925201610150565b3480156102a657600080fd5b506101b06224ea0081565b3480156102bd57600080fd5b506101b07f000000000000000000000000000000000000000000000000000000000000000081565b3480156102f157600080fd5b506000546001600160a01b031661021a565b34801561030f57600080fd5b5061014461031e366004611576565b6109fd565b34801561032f57600080fd5b5061021a7f000000000000000000000000000000000000000000000000000000000000000081565b61016e6103653660046115ab565b610a12565b34801561037657600080fd5b50610144610385366004611576565b610bba565b34801561039657600080fd5b506101b07f000000000000000000000000000000000000000000000000000000000000000081565b3480156103ca57600080fd5b5061021a7f000000000000000000000000000000000000000000000000000000000000000081565b3480156103fe57600080fd5b5061016e61040d366004611518565b610c64565b34801561041e57600080fd5b5061016e61042d3660046115f7565b610cd9565b60006001600160e01b031982166301ffc9a760e01b148061046357506001600160e01b0319821663612e8c0960e01b145b92915050565b600080546040516001600160a01b03909116914780156108fc02929091818181858888f193505050501580156104a3573d6000803e3d6000fd5b50565b6104ae610d4f565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303816000875af11580156104fd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105219190611612565b50505050565b885160208a0120600090841580159061054757506001600160a01b038716155b15610565576040516334fd817160e21b815260040160405180910390fd5b808a8a8a8a8a8a8a8a604051602001610586999897969594939291906116ea565b604051602081830303815290604052805190602001209150509998505050505050505050565b6105b4610d4f565b6105be6000610da9565b565b60006106038b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508c92506108c3915050565b6020810151815191925061061691611764565b3410156106365760405163044044a560e21b815260040160405180910390fd5b6106d98b8b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050896106d48e8e8080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050508d8d8d8d8d8d8d8d610527565b610df9565b604051635200a4c160e11b81526000906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063a401498290610732908f908f908f908f908e908b90600401611777565b6020604051808303816000875af1158015610751573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061077591906117c2565b905084156107a0576107a0878d8d6040516107919291906117db565b60405180910390208888610f17565b83156107e9576107e98c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508b9250339150610fe19050565b896001600160a01b03168c8c6040516108039291906117db565b60405180910390207f69e37f151eb98a09618ddaa80c8cfaf1ce5996867c489f45b555b412271ebf278e8e866000015187602001518760405161084a9594939291906117eb565b60405180910390a3602082015182516108639190611764565b3411156108b5576020820151825133916108fc916108819190611764565b61088b903461181c565b6040518115909202916000818181858888f193505050501580156108b3573d6000803e3d6000fd5b505b505050505050505050505050565b604080518082019091526000808252602082015282516020840120604051636b727d4360e11b8152600481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116916350e9a7159187917f00000000000000000000000000000000000000000000000000000000000000009091169063d6e4fa8690602401602060405180830381865afa158015610972573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061099691906117c2565b866040518463ffffffff1660e01b81526004016109b59392919061187f565b6040805180830381865afa1580156109d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109f591906118a4565b949350505050565b60006003610a0a83611095565b101592915050565b60008383604051610a249291906117db565b604080519182900382206020601f870181900481028401810190925285835292508291600091610a71919088908890819084018382808284376000920191909152508892506108c3915050565b8051909150341015610a965760405163044044a560e21b815260040160405180910390fd5b60405163c475abff60e01b815260048101839052602481018590526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063c475abff906044016020604051808303816000875af1158015610b07573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b2b91906117c2565b8251909150341115610b7357815133906108fc90610b49903461181c565b6040518115909202916000818181858888f19350505050158015610b71573d6000803e3d6000fd5b505b837f3da24c024582931cfaf8267d8ed24d13a82a8068d5bd337d30ec45cea4e506ae88883485604051610ba994939291906118f3565b60405180910390a250505050505050565b80516020820120600090610bcd836109fd565b8015610c5d57506040516312dc929d60e31b8152600481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906396e494e890602401602060405180830381865afa158015610c39573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c5d9190611612565b9392505050565b6000818152600160205260409020544290610ca0907f000000000000000000000000000000000000000000000000000000000000000090611764565b10610cc657604051630a059d7160e01b8152600481018290526024015b60405180910390fd5b6000908152600160205260409020429055565b610ce1610d4f565b6001600160a01b038116610d465760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610cbd565b6104a381610da9565b6000546001600160a01b031633146105be5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610cbd565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000818152600160205260409020544290610e35907f000000000000000000000000000000000000000000000000000000000000000090611764565b1115610e5757604051635320bcf960e01b815260048101829052602401610cbd565b6000818152600160205260409020544290610e93907f000000000000000000000000000000000000000000000000000000000000000090611764565b11610eb45760405163cb7690d760e01b815260048101829052602401610cbd565b610ebd83610bba565b610edc57826040516308eee0fd60e31b8152600401610cbd919061191a565b6000818152600160205260408120556224ea00821015610f1257604051639a71997b60e01b815260048101839052602401610cbd565b505050565b604080517f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae6020808301919091528183018690528251808303840181526060830193849052805191012063e32954eb60e01b90925285906001600160a01b0382169063e32954eb90610f919085908890889060640161192d565b6000604051808303816000875af1158015610fb0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610fd89190810190611950565b50505050505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316637a806d6b338385876040516020016110249190611a4f565b6040516020818303038152906040526040518563ffffffff1660e01b81526004016110529493929190611a77565b6020604051808303816000875af1158015611071573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061052191906117c2565b8051600090819081905b8082101561118f5760008583815181106110bb576110bb611ab5565b01602001516001600160f81b0319169050600160ff1b8110156110ea576110e3600184611764565b925061117c565b600760fd1b6001600160f81b03198216101561110b576110e3600284611764565b600f60fc1b6001600160f81b03198216101561112c576110e3600384611764565b601f60fb1b6001600160f81b03198216101561114d576110e3600484611764565b603f60fa1b6001600160f81b03198216101561116e576110e3600584611764565b611179600684611764565b92505b508261118781611acb565b93505061109f565b50909392505050565b6000602082840312156111aa57600080fd5b81356001600160e01b031981168114610c5d57600080fd5b80356001600160a01b03811681146111d957600080fd5b919050565b6000806000606084860312156111f357600080fd5b6111fc846111c2565b925061120a602085016111c2565b9150604084013590509250925092565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff811182821017156112595761125961121a565b604052919050565b600067ffffffffffffffff82111561127b5761127b61121a565b50601f01601f191660200190565b600082601f83011261129a57600080fd5b81356112ad6112a882611261565b611230565b8181528460208386010111156112c257600080fd5b816020850160208301376000918101602001919091529392505050565b60008083601f8401126112f157600080fd5b50813567ffffffffffffffff81111561130957600080fd5b6020830191508360208260051b850101111561132457600080fd5b9250929050565b80151581146104a357600080fd5b803561ffff811681146111d957600080fd5b60008060008060008060008060006101008a8c03121561136a57600080fd5b893567ffffffffffffffff8082111561138257600080fd5b61138e8d838e01611289565b9a5061139c60208d016111c2565b995060408c0135985060608c013597506113b860808d016111c2565b965060a08c01359150808211156113ce57600080fd5b506113db8c828d016112df565b90955093505060c08a01356113ef8161132b565b91506113fd60e08b01611339565b90509295985092959850929598565b60008083601f84011261141e57600080fd5b50813567ffffffffffffffff81111561143657600080fd5b60208301915083602082850101111561132457600080fd5b6000806000806000806000806000806101008b8d03121561146e57600080fd5b8a3567ffffffffffffffff8082111561148657600080fd5b6114928e838f0161140c565b909c509a508a91506114a660208e016111c2565b995060408d0135985060608d013597506114c260808e016111c2565b965060a08d01359150808211156114d857600080fd5b506114e58d828e016112df565b90955093505060c08b01356114f98161132b565b915061150760e08c01611339565b90509295989b9194979a5092959850565b60006020828403121561152a57600080fd5b5035919050565b6000806040838503121561154457600080fd5b823567ffffffffffffffff81111561155b57600080fd5b61156785828601611289565b95602094909401359450505050565b60006020828403121561158857600080fd5b813567ffffffffffffffff81111561159f57600080fd5b6109f584828501611289565b6000806000604084860312156115c057600080fd5b833567ffffffffffffffff8111156115d757600080fd5b6115e38682870161140c565b909790965060209590950135949350505050565b60006020828403121561160957600080fd5b610c5d826111c2565b60006020828403121561162457600080fd5b8151610c5d8161132b565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b81835260006020808501808196508560051b810191508460005b878110156116dd5782840389528135601e1988360301811261169357600080fd5b8701858101903567ffffffffffffffff8111156116af57600080fd5b8036038213156116be57600080fd5b6116c986828461162f565b9a87019a9550505090840190600101611672565b5091979650505050505050565b8981526001600160a01b03898116602083015260408201899052606082018890528616608082015261010060a0820181905260009061172c8382018789611658565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b634e487b7160e01b600052601160045260246000fd5b808201808211156104635761046361174e565b60a08152600061178b60a08301888a61162f565b6001600160a01b03968716602084015260408301959095525091909316606082015261ffff90921660809092019190915292915050565b6000602082840312156117d457600080fd5b5051919050565b8183823760009101908152919050565b6080815260006117ff60808301878961162f565b602083019590955250604081019290925260609091015292915050565b818103818111156104635761046361174e565b60005b8381101561184a578181015183820152602001611832565b50506000910152565b6000815180845261186b81602086016020860161182f565b601f01601f19169290920160200192915050565b6060815260006118926060830186611853565b60208301949094525060400152919050565b6000604082840312156118b657600080fd5b6040516040810181811067ffffffffffffffff821117156118d9576118d961121a565b604052825181526020928301519281019290925250919050565b60608152600061190760608301868861162f565b6020830194909452506040015292915050565b602081526000610c5d6020830184611853565b838152604060208201526000611947604083018486611658565b95945050505050565b6000602080838503121561196357600080fd5b825167ffffffffffffffff8082111561197b57600080fd5b818501915085601f83011261198f57600080fd5b8151818111156119a1576119a161121a565b8060051b6119b0858201611230565b91825283810185019185810190898411156119ca57600080fd5b86860192505b83831015611a42578251858111156119e85760008081fd5b8601603f81018b136119fa5760008081fd5b878101516040611a0c6112a883611261565b8281528d82848601011115611a215760008081fd5b611a30838c830184870161182f565b855250505091860191908601906119d0565b9998505050505050505050565b60008251611a6181846020870161182f565b6305ccae8d60e31b920191825250600401919050565b6001600160a01b038581168252848116602083015283166040820152608060608201819052600090611aab90830184611853565b9695505050505050565b634e487b7160e01b600052603260045260246000fd5b600060018201611add57611add61174e565b506001019056fea164736f6c6343000811000a"; -const isSuperArgs = (xs) => xs.length > 1; -class ETHRegistrarController__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(_base, _prices, _minCommitmentAge, _maxCommitmentAge, _reverseRegistrar, _nameWrapper, _ens, overrides) { - return super.getDeployTransaction(_base, _prices, _minCommitmentAge, _maxCommitmentAge, _reverseRegistrar, _nameWrapper, _ens, overrides || {}); - } - deploy(_base, _prices, _minCommitmentAge, _maxCommitmentAge, _reverseRegistrar, _nameWrapper, _ens, overrides) { - return super.deploy(_base, _prices, _minCommitmentAge, _maxCommitmentAge, _reverseRegistrar, _nameWrapper, _ens, overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.ETHRegistrarController__factory = ETHRegistrarController__factory; -ETHRegistrarController__factory.bytecode = _bytecode; -ETHRegistrarController__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar__factory.d.ts deleted file mode 100644 index 6de840f0..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar__factory.d.ts +++ /dev/null @@ -1,415 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IBaseRegistrar, IBaseRegistrarInterface } from "../../../../../@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar"; -export declare class IBaseRegistrar__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "approved"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Approval"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "ApprovalForAll"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "controller"; - readonly type: "address"; - }]; - readonly name: "ControllerAdded"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "controller"; - readonly type: "address"; - }]; - readonly name: "ControllerRemoved"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "expires"; - readonly type: "uint256"; - }]; - readonly name: "NameMigrated"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "expires"; - readonly type: "uint256"; - }]; - readonly name: "NameRegistered"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "expires"; - readonly type: "uint256"; - }]; - readonly name: "NameRenewed"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Transfer"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "controller"; - readonly type: "address"; - }]; - readonly name: "addController"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "approve"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }]; - readonly name: "available"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "balanceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "balance"; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getApproved"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly name: "isApprovedForAll"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }]; - readonly name: "nameExpires"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "ownerOf"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }, { - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "reclaim"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }, { - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "duration"; - readonly type: "uint256"; - }]; - readonly name: "register"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "controller"; - readonly type: "address"; - }]; - readonly name: "removeController"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "duration"; - readonly type: "uint256"; - }]; - readonly name: "renew"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "setApprovalForAll"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }]; - readonly name: "setResolver"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "transferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): IBaseRegistrarInterface; - static connect(address: string, runner?: ContractRunner | null): IBaseRegistrar; -} -//# sourceMappingURL=IBaseRegistrar__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar__factory.d.ts.map deleted file mode 100644 index daa034aa..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IBaseRegistrar__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,cAAc,EACd,uBAAuB,EACxB,MAAM,gFAAgF,CAAC;AAqhBxF,qBAAa,uBAAuB;IAClC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,uBAAuB;IAGjD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,cAAc;CAGlB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar__factory.js deleted file mode 100644 index 0d429d81..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar__factory.js +++ /dev/null @@ -1,544 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IBaseRegistrar__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "approved", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Approval", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: false, - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "ApprovalForAll", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "controller", - type: "address", - }, - ], - name: "ControllerAdded", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "controller", - type: "address", - }, - ], - name: "ControllerRemoved", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "expires", - type: "uint256", - }, - ], - name: "NameMigrated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "expires", - type: "uint256", - }, - ], - name: "NameRegistered", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "expires", - type: "uint256", - }, - ], - name: "NameRenewed", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Transfer", - type: "event", - }, - { - inputs: [ - { - internalType: "address", - name: "controller", - type: "address", - }, - ], - name: "addController", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "approve", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - ], - name: "available", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "balance", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getApproved", - outputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - name: "isApprovedForAll", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - ], - name: "nameExpires", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "ownerOf", - outputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "reclaim", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "uint256", - name: "duration", - type: "uint256", - }, - ], - name: "register", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "controller", - type: "address", - }, - ], - name: "removeController", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - internalType: "uint256", - name: "duration", - type: "uint256", - }, - ], - name: "renew", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "safeTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "safeTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "setApprovalForAll", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "resolver", - type: "address", - }, - ], - name: "setResolver", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "transferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -class IBaseRegistrar__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IBaseRegistrar__factory = IBaseRegistrar__factory; -IBaseRegistrar__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController__factory.d.ts deleted file mode 100644 index 76471e09..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController__factory.d.ts +++ /dev/null @@ -1,153 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IETHRegistrarController, IETHRegistrarControllerInterface } from "../../../../../@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController"; -export declare class IETHRegistrarController__factory { - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly name: "available"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly name: "commit"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }, { - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }, { - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }, { - readonly internalType: "bytes[]"; - readonly name: ""; - readonly type: "bytes[]"; - }, { - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }, { - readonly internalType: "uint16"; - readonly name: ""; - readonly type: "uint16"; - }]; - readonly name: "makeCommitment"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "pure"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }, { - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }, { - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }, { - readonly internalType: "bytes[]"; - readonly name: ""; - readonly type: "bytes[]"; - }, { - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }, { - readonly internalType: "uint16"; - readonly name: ""; - readonly type: "uint16"; - }]; - readonly name: "register"; - readonly outputs: readonly []; - readonly stateMutability: "payable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }, { - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly name: "renew"; - readonly outputs: readonly []; - readonly stateMutability: "payable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }, { - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly name: "rentPrice"; - readonly outputs: readonly [{ - readonly components: readonly [{ - readonly internalType: "uint256"; - readonly name: "base"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "premium"; - readonly type: "uint256"; - }]; - readonly internalType: "struct IPriceOracle.Price"; - readonly name: ""; - readonly type: "tuple"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): IETHRegistrarControllerInterface; - static connect(address: string, runner?: ContractRunner | null): IETHRegistrarController; -} -//# sourceMappingURL=IETHRegistrarController__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController__factory.d.ts.map deleted file mode 100644 index e6a71a1a..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IETHRegistrarController__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,uBAAuB,EACvB,gCAAgC,EACjC,MAAM,yFAAyF,CAAC;AAiMjG,qBAAa,gCAAgC;IAC3C,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,gCAAgC;IAG1D,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,uBAAuB;CAO3B"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController__factory.js deleted file mode 100644 index 39b7785b..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController__factory.js +++ /dev/null @@ -1,204 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IETHRegistrarController__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - name: "available", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - name: "commit", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - { - internalType: "address", - name: "", - type: "address", - }, - { - internalType: "uint256", - name: "", - type: "uint256", - }, - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - { - internalType: "address", - name: "", - type: "address", - }, - { - internalType: "bytes[]", - name: "", - type: "bytes[]", - }, - { - internalType: "bool", - name: "", - type: "bool", - }, - { - internalType: "uint16", - name: "", - type: "uint16", - }, - ], - name: "makeCommitment", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "pure", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - { - internalType: "address", - name: "", - type: "address", - }, - { - internalType: "uint256", - name: "", - type: "uint256", - }, - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - { - internalType: "address", - name: "", - type: "address", - }, - { - internalType: "bytes[]", - name: "", - type: "bytes[]", - }, - { - internalType: "bool", - name: "", - type: "bool", - }, - { - internalType: "uint16", - name: "", - type: "uint16", - }, - ], - name: "register", - outputs: [], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - name: "renew", - outputs: [], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - name: "rentPrice", - outputs: [ - { - components: [ - { - internalType: "uint256", - name: "base", - type: "uint256", - }, - { - internalType: "uint256", - name: "premium", - type: "uint256", - }, - ], - internalType: "struct IPriceOracle.Price", - name: "", - type: "tuple", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class IETHRegistrarController__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IETHRegistrarController__factory = IETHRegistrarController__factory; -IETHRegistrarController__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle__factory.d.ts deleted file mode 100644 index f4252676..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle__factory.d.ts +++ /dev/null @@ -1,39 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IPriceOracle, IPriceOracleInterface } from "../../../../../@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle"; -export declare class IPriceOracle__factory { - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "name"; - readonly type: "string"; - }, { - readonly internalType: "uint256"; - readonly name: "expires"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "duration"; - readonly type: "uint256"; - }]; - readonly name: "price"; - readonly outputs: readonly [{ - readonly components: readonly [{ - readonly internalType: "uint256"; - readonly name: "base"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "premium"; - readonly type: "uint256"; - }]; - readonly internalType: "struct IPriceOracle.Price"; - readonly name: ""; - readonly type: "tuple"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): IPriceOracleInterface; - static connect(address: string, runner?: ContractRunner | null): IPriceOracle; -} -//# sourceMappingURL=IPriceOracle__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle__factory.d.ts.map deleted file mode 100644 index e0ed2eac..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IPriceOracle__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,YAAY,EACZ,qBAAqB,EACtB,MAAM,8EAA8E,CAAC;AA8CtF,qBAAa,qBAAqB;IAChC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,qBAAqB;IAG/C,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,YAAY;CAGhB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle__factory.js deleted file mode 100644 index 031d19b0..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle__factory.js +++ /dev/null @@ -1,57 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IPriceOracle__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "string", - name: "name", - type: "string", - }, - { - internalType: "uint256", - name: "expires", - type: "uint256", - }, - { - internalType: "uint256", - name: "duration", - type: "uint256", - }, - ], - name: "price", - outputs: [ - { - components: [ - { - internalType: "uint256", - name: "base", - type: "uint256", - }, - { - internalType: "uint256", - name: "premium", - type: "uint256", - }, - ], - internalType: "struct IPriceOracle.Price", - name: "", - type: "tuple", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class IPriceOracle__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IPriceOracle__factory = IPriceOracle__factory; -IPriceOracle__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface__factory.d.ts deleted file mode 100644 index 322fd6d0..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface__factory.d.ts +++ /dev/null @@ -1,18 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { AggregatorInterface, AggregatorInterfaceInterface } from "../../../../../../@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface"; -export declare class AggregatorInterface__factory { - static readonly abi: readonly [{ - readonly inputs: readonly []; - readonly name: "latestAnswer"; - readonly outputs: readonly [{ - readonly internalType: "int256"; - readonly name: ""; - readonly type: "int256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): AggregatorInterfaceInterface; - static connect(address: string, runner?: ContractRunner | null): AggregatorInterface; -} -//# sourceMappingURL=AggregatorInterface__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface__factory.d.ts.map deleted file mode 100644 index 47199487..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"AggregatorInterface__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,mBAAmB,EACnB,4BAA4B,EAC7B,MAAM,8GAA8G,CAAC;AAkBtH,qBAAa,4BAA4B;IACvC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,4BAA4B;IAGtD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,mBAAmB;CAOvB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface__factory.js deleted file mode 100644 index b63af1af..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface__factory.js +++ /dev/null @@ -1,29 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.AggregatorInterface__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [], - name: "latestAnswer", - outputs: [ - { - internalType: "int256", - name: "", - type: "int256", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class AggregatorInterface__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.AggregatorInterface__factory = AggregatorInterface__factory; -AggregatorInterface__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle__factory.d.ts deleted file mode 100644 index 8a639310..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle__factory.d.ts +++ /dev/null @@ -1,172 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, BigNumberish, AddressLike, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../../../../common"; -import type { StablePriceOracle, StablePriceOracleInterface } from "../../../../../../@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle"; -declare type StablePriceOracleConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class StablePriceOracle__factory extends ContractFactory { - constructor(...args: StablePriceOracleConstructorParams); - getDeployTransaction(_usdOracle: AddressLike, _rentPrices: BigNumberish[], overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(_usdOracle: AddressLike, _rentPrices: BigNumberish[], overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): StablePriceOracle__factory; - static readonly bytecode = "0x61014060405234801561001157600080fd5b506040516109e63803806109e683398101604081905261003091610106565b6001600160a01b0382166101205280518190600090610051576100516101e6565b60200260200101516080818152505080600181518110610073576100736101e6565b602002602001015160a0818152505080600281518110610095576100956101e6565b602002602001015160c08181525050806003815181106100b7576100b76101e6565b602002602001015160e08181525050806004815181106100d9576100d96101e6565b6020026020010151610100818152505050506101fc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561011957600080fd5b82516001600160a01b038116811461013057600080fd5b602084810151919350906001600160401b038082111561014f57600080fd5b818601915086601f83011261016357600080fd5b815181811115610175576101756100f0565b8060051b604051601f19603f8301168101818110858211171561019a5761019a6100f0565b6040529182528482019250838101850191898311156101b857600080fd5b938501935b828510156101d6578451845293850193928501926101bd565b8096505050505050509250929050565b634e487b7160e01b600052603260045260246000fd5b60805160a05160c05160e051610100516101205161077261027460003960008181610189015261056701526000818161012801526102af0152600081816101ef01526102e801526000818161014f015261031a0152600081816101c8015261034c01526000818160c5015261037601526107726000f3fe608060405234801561001057600080fd5b50600436106100935760003560e01c8063a200e15311610066578063a200e1531461014a578063a34e359614610171578063c8a4271f14610184578063cd5d2c74146101c3578063d820ed42146101ea57600080fd5b806301ffc9a7146100985780632c0fd74c146100c057806350e9a715146100f557806359b6b86c14610123575b600080fd5b6100ab6100a6366004610612565b610211565b60405190151581526020015b60405180910390f35b6100e77f000000000000000000000000000000000000000000000000000000000000000081565b6040519081526020016100b7565b61010861010336600461063c565b610248565b604080518251815260209283015192810192909252016100b7565b6100e77f000000000000000000000000000000000000000000000000000000000000000081565b6100e77f000000000000000000000000000000000000000000000000000000000000000081565b6100e761017f36600461063c565b61040e565b6101ab7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020016100b7565b6100e77f000000000000000000000000000000000000000000000000000000000000000081565b6100e77f000000000000000000000000000000000000000000000000000000000000000081565b60006001600160e01b031982166301ffc9a760e01b148061024257506001600160e01b031982166350e9a71560e01b145b92915050565b6040805180820190915260008082526020820152600061029d86868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061045f92505050565b90506000600582106102da576102d3847f00000000000000000000000000000000000000000000000000000000000000006106d1565b905061039d565b8160040361030c576102d3847f00000000000000000000000000000000000000000000000000000000000000006106d1565b8160030361033e576102d3847f00000000000000000000000000000000000000000000000000000000000000006106d1565b81600203610370576102d3847f00000000000000000000000000000000000000000000000000000000000000006106d1565b61039a847f00000000000000000000000000000000000000000000000000000000000000006106d1565b90505b60405180604001604052806103b183610562565b81526020016104016103fc8a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508c92508b91506106099050565b610562565b9052979650505050505050565b60006104566103fc86868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508892508791506106099050565b95945050505050565b8051600090819081905b80821015610559576000858381518110610485576104856106e8565b01602001516001600160f81b0319169050600160ff1b8110156104b4576104ad6001846106fe565b9250610546565b600760fd1b6001600160f81b0319821610156104d5576104ad6002846106fe565b600f60fc1b6001600160f81b0319821610156104f6576104ad6003846106fe565b601f60fb1b6001600160f81b031982161015610517576104ad6004846106fe565b603f60fa1b6001600160f81b031982161015610538576104ad6005846106fe565b6105436006846106fe565b92505b508261055181610711565b935050610469565b50909392505050565b6000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166350d25bcd6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105e7919061072a565b9050806105f8846305f5e1006106d1565b6106029190610743565b9392505050565b60009392505050565b60006020828403121561062457600080fd5b81356001600160e01b03198116811461060257600080fd5b6000806000806060858703121561065257600080fd5b843567ffffffffffffffff8082111561066a57600080fd5b818701915087601f83011261067e57600080fd5b81358181111561068d57600080fd5b88602082850101111561069f57600080fd5b6020928301999098509187013596604001359550909350505050565b634e487b7160e01b600052601160045260246000fd5b8082028115828204841417610242576102426106bb565b634e487b7160e01b600052603260045260246000fd5b80820180821115610242576102426106bb565b600060018201610723576107236106bb565b5060010190565b60006020828403121561073c57600080fd5b5051919050565b60008261076057634e487b7160e01b600052601260045260246000fd5b50049056fea164736f6c6343000811000a"; - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "contract AggregatorInterface"; - readonly name: "_usdOracle"; - readonly type: "address"; - }, { - readonly internalType: "uint256[]"; - readonly name: "_rentPrices"; - readonly type: "uint256[]"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "constructor"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "uint256[]"; - readonly name: "prices"; - readonly type: "uint256[]"; - }]; - readonly name: "RentPriceChanged"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "name"; - readonly type: "string"; - }, { - readonly internalType: "uint256"; - readonly name: "expires"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "duration"; - readonly type: "uint256"; - }]; - readonly name: "premium"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "name"; - readonly type: "string"; - }, { - readonly internalType: "uint256"; - readonly name: "expires"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "duration"; - readonly type: "uint256"; - }]; - readonly name: "price"; - readonly outputs: readonly [{ - readonly components: readonly [{ - readonly internalType: "uint256"; - readonly name: "base"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "premium"; - readonly type: "uint256"; - }]; - readonly internalType: "struct IPriceOracle.Price"; - readonly name: ""; - readonly type: "tuple"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "price1Letter"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "price2Letter"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "price3Letter"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "price4Letter"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "price5Letter"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceID"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "usdOracle"; - readonly outputs: readonly [{ - readonly internalType: "contract AggregatorInterface"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): StablePriceOracleInterface; - static connect(address: string, runner?: ContractRunner | null): StablePriceOracle; -} -export {}; -//# sourceMappingURL=StablePriceOracle__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle__factory.d.ts.map deleted file mode 100644 index 3ab3ae4c..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"StablePriceOracle__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,MAAM,EACN,YAAY,EACZ,WAAW,EACX,yBAAyB,EACzB,cAAc,EACf,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,KAAK,EACV,iBAAiB,EACjB,0BAA0B,EAC3B,MAAM,4GAA4G,CAAC;AA4MpH,aAAK,kCAAkC,GACnC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,0BAA2B,SAAQ,eAAe;gBACjD,GAAG,IAAI,EAAE,kCAAkC;IAQ9C,oBAAoB,CAC3B,UAAU,EAAE,WAAW,EACvB,WAAW,EAAE,YAAY,EAAE,EAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CACb,UAAU,EAAE,WAAW,EACvB,WAAW,EAAE,YAAY,EAAE,EAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAItB,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,0BAA0B;IAI3E,MAAM,CAAC,QAAQ,CAAC,QAAQ,o9JAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,0BAA0B;IAGpD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,iBAAiB;CAGrB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle__factory.js deleted file mode 100644 index 7d4b9644..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle__factory.js +++ /dev/null @@ -1,232 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.StablePriceOracle__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "contract AggregatorInterface", - name: "_usdOracle", - type: "address", - }, - { - internalType: "uint256[]", - name: "_rentPrices", - type: "uint256[]", - }, - ], - stateMutability: "nonpayable", - type: "constructor", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256[]", - name: "prices", - type: "uint256[]", - }, - ], - name: "RentPriceChanged", - type: "event", - }, - { - inputs: [ - { - internalType: "string", - name: "name", - type: "string", - }, - { - internalType: "uint256", - name: "expires", - type: "uint256", - }, - { - internalType: "uint256", - name: "duration", - type: "uint256", - }, - ], - name: "premium", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "name", - type: "string", - }, - { - internalType: "uint256", - name: "expires", - type: "uint256", - }, - { - internalType: "uint256", - name: "duration", - type: "uint256", - }, - ], - name: "price", - outputs: [ - { - components: [ - { - internalType: "uint256", - name: "base", - type: "uint256", - }, - { - internalType: "uint256", - name: "premium", - type: "uint256", - }, - ], - internalType: "struct IPriceOracle.Price", - name: "", - type: "tuple", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "price1Letter", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "price2Letter", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "price3Letter", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "price4Letter", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "price5Letter", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceID", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "usdOracle", - outputs: [ - { - internalType: "contract AggregatorInterface", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -const _bytecode = "0x61014060405234801561001157600080fd5b506040516109e63803806109e683398101604081905261003091610106565b6001600160a01b0382166101205280518190600090610051576100516101e6565b60200260200101516080818152505080600181518110610073576100736101e6565b602002602001015160a0818152505080600281518110610095576100956101e6565b602002602001015160c08181525050806003815181106100b7576100b76101e6565b602002602001015160e08181525050806004815181106100d9576100d96101e6565b6020026020010151610100818152505050506101fc565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561011957600080fd5b82516001600160a01b038116811461013057600080fd5b602084810151919350906001600160401b038082111561014f57600080fd5b818601915086601f83011261016357600080fd5b815181811115610175576101756100f0565b8060051b604051601f19603f8301168101818110858211171561019a5761019a6100f0565b6040529182528482019250838101850191898311156101b857600080fd5b938501935b828510156101d6578451845293850193928501926101bd565b8096505050505050509250929050565b634e487b7160e01b600052603260045260246000fd5b60805160a05160c05160e051610100516101205161077261027460003960008181610189015261056701526000818161012801526102af0152600081816101ef01526102e801526000818161014f015261031a0152600081816101c8015261034c01526000818160c5015261037601526107726000f3fe608060405234801561001057600080fd5b50600436106100935760003560e01c8063a200e15311610066578063a200e1531461014a578063a34e359614610171578063c8a4271f14610184578063cd5d2c74146101c3578063d820ed42146101ea57600080fd5b806301ffc9a7146100985780632c0fd74c146100c057806350e9a715146100f557806359b6b86c14610123575b600080fd5b6100ab6100a6366004610612565b610211565b60405190151581526020015b60405180910390f35b6100e77f000000000000000000000000000000000000000000000000000000000000000081565b6040519081526020016100b7565b61010861010336600461063c565b610248565b604080518251815260209283015192810192909252016100b7565b6100e77f000000000000000000000000000000000000000000000000000000000000000081565b6100e77f000000000000000000000000000000000000000000000000000000000000000081565b6100e761017f36600461063c565b61040e565b6101ab7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020016100b7565b6100e77f000000000000000000000000000000000000000000000000000000000000000081565b6100e77f000000000000000000000000000000000000000000000000000000000000000081565b60006001600160e01b031982166301ffc9a760e01b148061024257506001600160e01b031982166350e9a71560e01b145b92915050565b6040805180820190915260008082526020820152600061029d86868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061045f92505050565b90506000600582106102da576102d3847f00000000000000000000000000000000000000000000000000000000000000006106d1565b905061039d565b8160040361030c576102d3847f00000000000000000000000000000000000000000000000000000000000000006106d1565b8160030361033e576102d3847f00000000000000000000000000000000000000000000000000000000000000006106d1565b81600203610370576102d3847f00000000000000000000000000000000000000000000000000000000000000006106d1565b61039a847f00000000000000000000000000000000000000000000000000000000000000006106d1565b90505b60405180604001604052806103b183610562565b81526020016104016103fc8a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508c92508b91506106099050565b610562565b9052979650505050505050565b60006104566103fc86868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508892508791506106099050565b95945050505050565b8051600090819081905b80821015610559576000858381518110610485576104856106e8565b01602001516001600160f81b0319169050600160ff1b8110156104b4576104ad6001846106fe565b9250610546565b600760fd1b6001600160f81b0319821610156104d5576104ad6002846106fe565b600f60fc1b6001600160f81b0319821610156104f6576104ad6003846106fe565b601f60fb1b6001600160f81b031982161015610517576104ad6004846106fe565b603f60fa1b6001600160f81b031982161015610538576104ad6005846106fe565b6105436006846106fe565b92505b508261055181610711565b935050610469565b50909392505050565b6000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166350d25bcd6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105e7919061072a565b9050806105f8846305f5e1006106d1565b6106029190610743565b9392505050565b60009392505050565b60006020828403121561062457600080fd5b81356001600160e01b03198116811461060257600080fd5b6000806000806060858703121561065257600080fd5b843567ffffffffffffffff8082111561066a57600080fd5b818701915087601f83011261067e57600080fd5b81358181111561068d57600080fd5b88602082850101111561069f57600080fd5b6020928301999098509187013596604001359550909350505050565b634e487b7160e01b600052601160045260246000fd5b8082028115828204841417610242576102426106bb565b634e487b7160e01b600052603260045260246000fd5b80820180821115610242576102426106bb565b600060018201610723576107236106bb565b5060010190565b60006020828403121561073c57600080fd5b5051919050565b60008261076057634e487b7160e01b600052601260045260246000fd5b50049056fea164736f6c6343000811000a"; -const isSuperArgs = (xs) => xs.length > 1; -class StablePriceOracle__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(_usdOracle, _rentPrices, overrides) { - return super.getDeployTransaction(_usdOracle, _rentPrices, overrides || {}); - } - deploy(_usdOracle, _rentPrices, overrides) { - return super.deploy(_usdOracle, _rentPrices, overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.StablePriceOracle__factory = StablePriceOracle__factory; -StablePriceOracle__factory.bytecode = _bytecode; -StablePriceOracle__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/index.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/index.d.ts deleted file mode 100644 index 28140677..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export { AggregatorInterface__factory } from "./AggregatorInterface__factory"; -export { StablePriceOracle__factory } from "./StablePriceOracle__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/index.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/index.d.ts.map deleted file mode 100644 index 0cb39d3d..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/index.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/index.js deleted file mode 100644 index a1ad57dc..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/index.js +++ /dev/null @@ -1,7 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.StablePriceOracle__factory = exports.AggregatorInterface__factory = void 0; -var AggregatorInterface__factory_1 = require("./AggregatorInterface__factory"); -Object.defineProperty(exports, "AggregatorInterface__factory", { enumerable: true, get: function () { return AggregatorInterface__factory_1.AggregatorInterface__factory; } }); -var StablePriceOracle__factory_1 = require("./StablePriceOracle__factory"); -Object.defineProperty(exports, "StablePriceOracle__factory", { enumerable: true, get: function () { return StablePriceOracle__factory_1.StablePriceOracle__factory; } }); diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/index.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/index.d.ts deleted file mode 100644 index 751b6397..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/index.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -export * as stablePriceOracleSol from "./StablePriceOracle.sol"; -export { BaseRegistrarImplementation__factory } from "./BaseRegistrarImplementation__factory"; -export { DummyOracle__factory } from "./DummyOracle__factory"; -export { ETHRegistrarController__factory } from "./ETHRegistrarController__factory"; -export { IBaseRegistrar__factory } from "./IBaseRegistrar__factory"; -export { IETHRegistrarController__factory } from "./IETHRegistrarController__factory"; -export { IPriceOracle__factory } from "./IPriceOracle__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/index.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/index.d.ts.map deleted file mode 100644 index 9bfb49c0..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,oBAAoB,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,oCAAoC,EAAE,MAAM,wCAAwC,CAAC;AAC9F,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,+BAA+B,EAAE,MAAM,mCAAmC,CAAC;AACpF,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,gCAAgC,EAAE,MAAM,oCAAoC,CAAC;AACtF,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/index.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/index.js deleted file mode 100644 index c1350284..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/index.js +++ /dev/null @@ -1,39 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IPriceOracle__factory = exports.IETHRegistrarController__factory = exports.IBaseRegistrar__factory = exports.ETHRegistrarController__factory = exports.DummyOracle__factory = exports.BaseRegistrarImplementation__factory = exports.stablePriceOracleSol = void 0; -exports.stablePriceOracleSol = __importStar(require("./StablePriceOracle.sol")); -var BaseRegistrarImplementation__factory_1 = require("./BaseRegistrarImplementation__factory"); -Object.defineProperty(exports, "BaseRegistrarImplementation__factory", { enumerable: true, get: function () { return BaseRegistrarImplementation__factory_1.BaseRegistrarImplementation__factory; } }); -var DummyOracle__factory_1 = require("./DummyOracle__factory"); -Object.defineProperty(exports, "DummyOracle__factory", { enumerable: true, get: function () { return DummyOracle__factory_1.DummyOracle__factory; } }); -var ETHRegistrarController__factory_1 = require("./ETHRegistrarController__factory"); -Object.defineProperty(exports, "ETHRegistrarController__factory", { enumerable: true, get: function () { return ETHRegistrarController__factory_1.ETHRegistrarController__factory; } }); -var IBaseRegistrar__factory_1 = require("./IBaseRegistrar__factory"); -Object.defineProperty(exports, "IBaseRegistrar__factory", { enumerable: true, get: function () { return IBaseRegistrar__factory_1.IBaseRegistrar__factory; } }); -var IETHRegistrarController__factory_1 = require("./IETHRegistrarController__factory"); -Object.defineProperty(exports, "IETHRegistrarController__factory", { enumerable: true, get: function () { return IETHRegistrarController__factory_1.IETHRegistrarController__factory; } }); -var IPriceOracle__factory_1 = require("./IPriceOracle__factory"); -Object.defineProperty(exports, "IPriceOracle__factory", { enumerable: true, get: function () { return IPriceOracle__factory_1.IPriceOracle__factory; } }); diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/index.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/index.d.ts deleted file mode 100644 index 8f64dfdc..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/index.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -export * as dnssecOracle from "./dnssec-oracle"; -export * as ethregistrar from "./ethregistrar"; -export * as registry from "./registry"; -export * as resolvers from "./resolvers"; -export * as reverseRegistrar from "./reverseRegistrar"; -export * as root from "./root"; -export * as utils from "./utils"; -export * as wrapper from "./wrapper"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/index.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/index.d.ts.map deleted file mode 100644 index c802682f..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/@ensdomains/ens-contracts/contracts/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,YAAY,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,YAAY,MAAM,gBAAgB,CAAC;AAC/C,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC;AACvC,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,gBAAgB,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAC/B,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/index.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/index.js deleted file mode 100644 index 004079b0..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/index.js +++ /dev/null @@ -1,34 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.wrapper = exports.utils = exports.root = exports.reverseRegistrar = exports.resolvers = exports.registry = exports.ethregistrar = exports.dnssecOracle = void 0; -exports.dnssecOracle = __importStar(require("./dnssec-oracle")); -exports.ethregistrar = __importStar(require("./ethregistrar")); -exports.registry = __importStar(require("./registry")); -exports.resolvers = __importStar(require("./resolvers")); -exports.reverseRegistrar = __importStar(require("./reverseRegistrar")); -exports.root = __importStar(require("./root")); -exports.utils = __importStar(require("./utils")); -exports.wrapper = __importStar(require("./wrapper")); diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/registry/ENSRegistry__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/registry/ENSRegistry__factory.d.ts deleted file mode 100644 index fb2bd15b..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/registry/ENSRegistry__factory.d.ts +++ /dev/null @@ -1,312 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../../../common"; -import type { ENSRegistry, ENSRegistryInterface } from "../../../../../@ensdomains/ens-contracts/contracts/registry/ENSRegistry"; -declare type ENSRegistryConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class ENSRegistry__factory extends ContractFactory { - constructor(...args: ENSRegistryConstructorParams); - getDeployTransaction(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): ENSRegistry__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b5060008080526020527fad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb580546001600160a01b0319163317905561098c806100596000396000f3fe608060405234801561001057600080fd5b50600436106100b45760003560e01c80635b0fc9c3116100715780635b0fc9c3146101ab5780635ef2c7f0146101be578063a22cb465146101d1578063cf408823146101e4578063e985e9c5146101f7578063f79fe5381461024357600080fd5b80630178b8bf146100b957806302571be31461010257806306ab59231461011557806314ab90381461013657806316a25cbd1461014b5780631896f70a14610198575b600080fd5b6100e56100c73660046107a4565b6000908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100e56101103660046107a4565b61026e565b6101286101233660046107d9565b61029c565b6040519081526020016100f9565b610149610144366004610826565b61036c565b005b61017f6101593660046107a4565b600090815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100f9565b6101496101a6366004610852565b61043f565b6101496101b9366004610852565b610504565b6101496101cc366004610875565b6105a6565b6101496101df3660046108cc565b6105c8565b6101496101f2366004610908565b610634565b610233610205366004610955565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205460ff1690565b60405190151581526020016100f9565b6102336102513660046107a4565b6000908152602081905260409020546001600160a01b0316151590565b6000818152602081905260408120546001600160a01b03163081036102965750600092915050565b92915050565b60008381526020819052604081205484906001600160a01b0316338114806102e757506001600160a01b038116600090815260016020908152604080832033845290915290205460ff165b6102f057600080fd5b60408051602080820189905281830188905282518083038401815260609092019092528051910120610322818661064f565b6040516001600160a01b0386168152869088907fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829060200160405180910390a39695505050505050565b60008281526020819052604090205482906001600160a01b0316338114806103b757506001600160a01b038116600090815260016020908152604080832033845290915290205460ff165b6103c057600080fd5b60405167ffffffffffffffff8416815284907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a25050600091825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b60008281526020819052604090205482906001600160a01b03163381148061048a57506001600160a01b038116600090815260016020908152604080832033845290915290205460ff165b61049357600080fd5b6040516001600160a01b038416815284907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a2505060009182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b60008281526020819052604090205482906001600160a01b03163381148061054f57506001600160a01b038116600090815260016020908152604080832033845290915290205460ff165b61055857600080fd5b610562848461064f565b6040516001600160a01b038416815284907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a250505050565b60006105b386868661029c565b90506105c081848461067d565b505050505050565b3360008181526001602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b61063e8484610504565b61064984838361067d565b50505050565b60009182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b6000838152602081905260409020600101546001600160a01b03838116911614610703576000838152602081815260409182902060010180546001600160a01b0319166001600160a01b038616908117909155915191825284917f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a0910160405180910390a25b60008381526020819052604090206001015467ffffffffffffffff828116600160a01b909204161461079f5760008381526020818152604091829020600101805467ffffffffffffffff60a01b1916600160a01b67ffffffffffffffff861690810291909117909155915191825284917f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa68910160405180910390a25b505050565b6000602082840312156107b657600080fd5b5035919050565b80356001600160a01b03811681146107d457600080fd5b919050565b6000806000606084860312156107ee57600080fd5b8335925060208401359150610805604085016107bd565b90509250925092565b803567ffffffffffffffff811681146107d457600080fd5b6000806040838503121561083957600080fd5b823591506108496020840161080e565b90509250929050565b6000806040838503121561086557600080fd5b82359150610849602084016107bd565b600080600080600060a0868803121561088d57600080fd5b85359450602086013593506108a4604087016107bd565b92506108b2606087016107bd565b91506108c06080870161080e565b90509295509295909350565b600080604083850312156108df57600080fd5b6108e8836107bd565b9150602083013580151581146108fd57600080fd5b809150509250929050565b6000806000806080858703121561091e57600080fd5b8435935061092e602086016107bd565b925061093c604086016107bd565b915061094a6060860161080e565b905092959194509250565b6000806040838503121561096857600080fd5b610971836107bd565b9150610849602084016107bd56fea164736f6c6343000811000a"; - static readonly abi: readonly [{ - readonly inputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "constructor"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "ApprovalForAll"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "label"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "NewOwner"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }]; - readonly name: "NewResolver"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "uint64"; - readonly name: "ttl"; - readonly type: "uint64"; - }]; - readonly name: "NewTTL"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "Transfer"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly name: "isApprovedForAll"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "owner"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "recordExists"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "resolver"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "setApprovalForAll"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "setOwner"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }, { - readonly internalType: "uint64"; - readonly name: "ttl"; - readonly type: "uint64"; - }]; - readonly name: "setRecord"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }]; - readonly name: "setResolver"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes32"; - readonly name: "label"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "setSubnodeOwner"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes32"; - readonly name: "label"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }, { - readonly internalType: "uint64"; - readonly name: "ttl"; - readonly type: "uint64"; - }]; - readonly name: "setSubnodeRecord"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint64"; - readonly name: "ttl"; - readonly type: "uint64"; - }]; - readonly name: "setTTL"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "ttl"; - readonly outputs: readonly [{ - readonly internalType: "uint64"; - readonly name: ""; - readonly type: "uint64"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): ENSRegistryInterface; - static connect(address: string, runner?: ContractRunner | null): ENSRegistry; -} -export {}; -//# sourceMappingURL=ENSRegistry__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/registry/ENSRegistry__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/registry/ENSRegistry__factory.d.ts.map deleted file mode 100644 index 126c3f8e..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/registry/ENSRegistry__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ENSRegistry__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/registry/ENSRegistry__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,WAAW,EACX,oBAAoB,EACrB,MAAM,yEAAyE,CAAC;AA8XjF,aAAK,4BAA4B,GAC7B,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,oBAAqB,SAAQ,eAAe;gBAC3C,GAAG,IAAI,EAAE,4BAA4B;IAQxC,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,oBAAoB;IAIrE,MAAM,CAAC,QAAQ,CAAC,QAAQ,k9JAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,oBAAoB;IAG9C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,WAAW;CAG7E"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/registry/ENSRegistry__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/registry/ENSRegistry__factory.js deleted file mode 100644 index 5fd70172..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/registry/ENSRegistry__factory.js +++ /dev/null @@ -1,410 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ENSRegistry__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [], - stateMutability: "nonpayable", - type: "constructor", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: false, - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "ApprovalForAll", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: true, - internalType: "bytes32", - name: "label", - type: "bytes32", - }, - { - indexed: false, - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "NewOwner", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "address", - name: "resolver", - type: "address", - }, - ], - name: "NewResolver", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "uint64", - name: "ttl", - type: "uint64", - }, - ], - name: "NewTTL", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "Transfer", - type: "event", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - name: "isApprovedForAll", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "recordExists", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "resolver", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "setApprovalForAll", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "setOwner", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "address", - name: "resolver", - type: "address", - }, - { - internalType: "uint64", - name: "ttl", - type: "uint64", - }, - ], - name: "setRecord", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "address", - name: "resolver", - type: "address", - }, - ], - name: "setResolver", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "label", - type: "bytes32", - }, - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "setSubnodeOwner", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "label", - type: "bytes32", - }, - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "address", - name: "resolver", - type: "address", - }, - { - internalType: "uint64", - name: "ttl", - type: "uint64", - }, - ], - name: "setSubnodeRecord", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "uint64", - name: "ttl", - type: "uint64", - }, - ], - name: "setTTL", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "ttl", - outputs: [ - { - internalType: "uint64", - name: "", - type: "uint64", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -const _bytecode = "0x608060405234801561001057600080fd5b5060008080526020527fad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb580546001600160a01b0319163317905561098c806100596000396000f3fe608060405234801561001057600080fd5b50600436106100b45760003560e01c80635b0fc9c3116100715780635b0fc9c3146101ab5780635ef2c7f0146101be578063a22cb465146101d1578063cf408823146101e4578063e985e9c5146101f7578063f79fe5381461024357600080fd5b80630178b8bf146100b957806302571be31461010257806306ab59231461011557806314ab90381461013657806316a25cbd1461014b5780631896f70a14610198575b600080fd5b6100e56100c73660046107a4565b6000908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100e56101103660046107a4565b61026e565b6101286101233660046107d9565b61029c565b6040519081526020016100f9565b610149610144366004610826565b61036c565b005b61017f6101593660046107a4565b600090815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100f9565b6101496101a6366004610852565b61043f565b6101496101b9366004610852565b610504565b6101496101cc366004610875565b6105a6565b6101496101df3660046108cc565b6105c8565b6101496101f2366004610908565b610634565b610233610205366004610955565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205460ff1690565b60405190151581526020016100f9565b6102336102513660046107a4565b6000908152602081905260409020546001600160a01b0316151590565b6000818152602081905260408120546001600160a01b03163081036102965750600092915050565b92915050565b60008381526020819052604081205484906001600160a01b0316338114806102e757506001600160a01b038116600090815260016020908152604080832033845290915290205460ff165b6102f057600080fd5b60408051602080820189905281830188905282518083038401815260609092019092528051910120610322818661064f565b6040516001600160a01b0386168152869088907fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829060200160405180910390a39695505050505050565b60008281526020819052604090205482906001600160a01b0316338114806103b757506001600160a01b038116600090815260016020908152604080832033845290915290205460ff165b6103c057600080fd5b60405167ffffffffffffffff8416815284907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a25050600091825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b60008281526020819052604090205482906001600160a01b03163381148061048a57506001600160a01b038116600090815260016020908152604080832033845290915290205460ff165b61049357600080fd5b6040516001600160a01b038416815284907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a2505060009182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b60008281526020819052604090205482906001600160a01b03163381148061054f57506001600160a01b038116600090815260016020908152604080832033845290915290205460ff165b61055857600080fd5b610562848461064f565b6040516001600160a01b038416815284907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a250505050565b60006105b386868661029c565b90506105c081848461067d565b505050505050565b3360008181526001602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b61063e8484610504565b61064984838361067d565b50505050565b60009182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b6000838152602081905260409020600101546001600160a01b03838116911614610703576000838152602081815260409182902060010180546001600160a01b0319166001600160a01b038616908117909155915191825284917f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a0910160405180910390a25b60008381526020819052604090206001015467ffffffffffffffff828116600160a01b909204161461079f5760008381526020818152604091829020600101805467ffffffffffffffff60a01b1916600160a01b67ffffffffffffffff861690810291909117909155915191825284917f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa68910160405180910390a25b505050565b6000602082840312156107b657600080fd5b5035919050565b80356001600160a01b03811681146107d457600080fd5b919050565b6000806000606084860312156107ee57600080fd5b8335925060208401359150610805604085016107bd565b90509250925092565b803567ffffffffffffffff811681146107d457600080fd5b6000806040838503121561083957600080fd5b823591506108496020840161080e565b90509250929050565b6000806040838503121561086557600080fd5b82359150610849602084016107bd565b600080600080600060a0868803121561088d57600080fd5b85359450602086013593506108a4604087016107bd565b92506108b2606087016107bd565b91506108c06080870161080e565b90509295509295909350565b600080604083850312156108df57600080fd5b6108e8836107bd565b9150602083013580151581146108fd57600080fd5b809150509250929050565b6000806000806080858703121561091e57600080fd5b8435935061092e602086016107bd565b925061093c604086016107bd565b915061094a6060860161080e565b905092959194509250565b6000806040838503121561096857600080fd5b610971836107bd565b9150610849602084016107bd56fea164736f6c6343000811000a"; -const isSuperArgs = (xs) => xs.length > 1; -class ENSRegistry__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(overrides) { - return super.getDeployTransaction(overrides || {}); - } - deploy(overrides) { - return super.deploy(overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.ENSRegistry__factory = ENSRegistry__factory; -ENSRegistry__factory.bytecode = _bytecode; -ENSRegistry__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/registry/ENS__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/registry/ENS__factory.d.ts deleted file mode 100644 index 15d31a26..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/registry/ENS__factory.d.ts +++ /dev/null @@ -1,293 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { ENS, ENSInterface } from "../../../../../@ensdomains/ens-contracts/contracts/registry/ENS"; -export declare class ENS__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "ApprovalForAll"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "label"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "NewOwner"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }]; - readonly name: "NewResolver"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "uint64"; - readonly name: "ttl"; - readonly type: "uint64"; - }]; - readonly name: "NewTTL"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "Transfer"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly name: "isApprovedForAll"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "owner"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "recordExists"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "resolver"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "setApprovalForAll"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "setOwner"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }, { - readonly internalType: "uint64"; - readonly name: "ttl"; - readonly type: "uint64"; - }]; - readonly name: "setRecord"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }]; - readonly name: "setResolver"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes32"; - readonly name: "label"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "setSubnodeOwner"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes32"; - readonly name: "label"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }, { - readonly internalType: "uint64"; - readonly name: "ttl"; - readonly type: "uint64"; - }]; - readonly name: "setSubnodeRecord"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint64"; - readonly name: "ttl"; - readonly type: "uint64"; - }]; - readonly name: "setTTL"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "ttl"; - readonly outputs: readonly [{ - readonly internalType: "uint64"; - readonly name: ""; - readonly type: "uint64"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): ENSInterface; - static connect(address: string, runner?: ContractRunner | null): ENS; -} -//# sourceMappingURL=ENS__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/registry/ENS__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/registry/ENS__factory.d.ts.map deleted file mode 100644 index cb3321cb..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/registry/ENS__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ENS__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/registry/ENS__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,GAAG,EACH,YAAY,EACb,MAAM,iEAAiE,CAAC;AAsXzE,qBAAa,YAAY;IACvB,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,YAAY;IAGtC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,GAAG;CAGrE"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/registry/ENS__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/registry/ENS__factory.js deleted file mode 100644 index 06461e9b..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/registry/ENS__factory.js +++ /dev/null @@ -1,385 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ENS__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: false, - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "ApprovalForAll", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: true, - internalType: "bytes32", - name: "label", - type: "bytes32", - }, - { - indexed: false, - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "NewOwner", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "address", - name: "resolver", - type: "address", - }, - ], - name: "NewResolver", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "uint64", - name: "ttl", - type: "uint64", - }, - ], - name: "NewTTL", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "Transfer", - type: "event", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - name: "isApprovedForAll", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "recordExists", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "resolver", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "setApprovalForAll", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "setOwner", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "address", - name: "resolver", - type: "address", - }, - { - internalType: "uint64", - name: "ttl", - type: "uint64", - }, - ], - name: "setRecord", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "address", - name: "resolver", - type: "address", - }, - ], - name: "setResolver", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "label", - type: "bytes32", - }, - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "setSubnodeOwner", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "label", - type: "bytes32", - }, - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "address", - name: "resolver", - type: "address", - }, - { - internalType: "uint64", - name: "ttl", - type: "uint64", - }, - ], - name: "setSubnodeRecord", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "uint64", - name: "ttl", - type: "uint64", - }, - ], - name: "setTTL", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "ttl", - outputs: [ - { - internalType: "uint64", - name: "", - type: "uint64", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class ENS__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.ENS__factory = ENS__factory; -ENS__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/registry/index.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/registry/index.d.ts deleted file mode 100644 index 2c6057f3..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/registry/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export { ENS__factory } from "./ENS__factory"; -export { ENSRegistry__factory } from "./ENSRegistry__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/registry/index.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/registry/index.d.ts.map deleted file mode 100644 index a56c4c48..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/registry/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/registry/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/registry/index.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/registry/index.js deleted file mode 100644 index cc9bbd1f..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/registry/index.js +++ /dev/null @@ -1,7 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ENSRegistry__factory = exports.ENS__factory = void 0; -var ENS__factory_1 = require("./ENS__factory"); -Object.defineProperty(exports, "ENS__factory", { enumerable: true, get: function () { return ENS__factory_1.ENS__factory; } }); -var ENSRegistry__factory_1 = require("./ENSRegistry__factory"); -Object.defineProperty(exports, "ENSRegistry__factory", { enumerable: true, get: function () { return ENSRegistry__factory_1.ENSRegistry__factory; } }); diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable__factory.d.ts deleted file mode 100644 index 333576d1..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable__factory.d.ts +++ /dev/null @@ -1,40 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IMulticallable, IMulticallableInterface } from "../../../../../@ensdomains/ens-contracts/contracts/resolvers/IMulticallable"; -export declare class IMulticallable__factory { - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "bytes[]"; - readonly name: "data"; - readonly type: "bytes[]"; - }]; - readonly name: "multicall"; - readonly outputs: readonly [{ - readonly internalType: "bytes[]"; - readonly name: "results"; - readonly type: "bytes[]"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes[]"; - readonly name: "data"; - readonly type: "bytes[]"; - }]; - readonly name: "multicallWithNodeCheck"; - readonly outputs: readonly [{ - readonly internalType: "bytes[]"; - readonly name: "results"; - readonly type: "bytes[]"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): IMulticallableInterface; - static connect(address: string, runner?: ContractRunner | null): IMulticallable; -} -//# sourceMappingURL=IMulticallable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable__factory.d.ts.map deleted file mode 100644 index bfe6498b..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IMulticallable__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,cAAc,EACd,uBAAuB,EACxB,MAAM,6EAA6E,CAAC;AAgDrF,qBAAa,uBAAuB;IAClC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,uBAAuB;IAGjD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,cAAc;CAGlB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable__factory.js deleted file mode 100644 index fa3ec51c..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable__factory.js +++ /dev/null @@ -1,59 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IMulticallable__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "bytes[]", - name: "data", - type: "bytes[]", - }, - ], - name: "multicall", - outputs: [ - { - internalType: "bytes[]", - name: "results", - type: "bytes[]", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - { - internalType: "bytes[]", - name: "data", - type: "bytes[]", - }, - ], - name: "multicallWithNodeCheck", - outputs: [ - { - internalType: "bytes[]", - name: "results", - type: "bytes[]", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, -]; -class IMulticallable__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IMulticallable__factory = IMulticallable__factory; -IMulticallable__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/Multicallable__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/Multicallable__factory.d.ts deleted file mode 100644 index bf6abf7d..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/Multicallable__factory.d.ts +++ /dev/null @@ -1,54 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { Multicallable, MulticallableInterface } from "../../../../../@ensdomains/ens-contracts/contracts/resolvers/Multicallable"; -export declare class Multicallable__factory { - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "bytes[]"; - readonly name: "data"; - readonly type: "bytes[]"; - }]; - readonly name: "multicall"; - readonly outputs: readonly [{ - readonly internalType: "bytes[]"; - readonly name: "results"; - readonly type: "bytes[]"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "nodehash"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes[]"; - readonly name: "data"; - readonly type: "bytes[]"; - }]; - readonly name: "multicallWithNodeCheck"; - readonly outputs: readonly [{ - readonly internalType: "bytes[]"; - readonly name: "results"; - readonly type: "bytes[]"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceID"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): MulticallableInterface; - static connect(address: string, runner?: ContractRunner | null): Multicallable; -} -//# sourceMappingURL=Multicallable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/Multicallable__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/Multicallable__factory.d.ts.map deleted file mode 100644 index 25cc2050..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/Multicallable__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Multicallable__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/resolvers/Multicallable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,aAAa,EACb,sBAAsB,EACvB,MAAM,4EAA4E,CAAC;AAmEpF,qBAAa,sBAAsB;IACjC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,sBAAsB;IAGhD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,aAAa;CAGjB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/Multicallable__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/Multicallable__factory.js deleted file mode 100644 index f9b2601d..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/Multicallable__factory.js +++ /dev/null @@ -1,78 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.Multicallable__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "bytes[]", - name: "data", - type: "bytes[]", - }, - ], - name: "multicall", - outputs: [ - { - internalType: "bytes[]", - name: "results", - type: "bytes[]", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "nodehash", - type: "bytes32", - }, - { - internalType: "bytes[]", - name: "data", - type: "bytes[]", - }, - ], - name: "multicallWithNodeCheck", - outputs: [ - { - internalType: "bytes[]", - name: "results", - type: "bytes[]", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceID", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class Multicallable__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.Multicallable__factory = Multicallable__factory; -Multicallable__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver__factory.d.ts deleted file mode 100644 index c2fb10ac..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver__factory.d.ts +++ /dev/null @@ -1,805 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, AddressLike, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../../../common"; -import type { PublicResolver, PublicResolverInterface } from "../../../../../@ensdomains/ens-contracts/contracts/resolvers/PublicResolver"; -declare type PublicResolverConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class PublicResolver__factory extends ContractFactory { - constructor(...args: PublicResolverConstructorParams); - getDeployTransaction(_ens: AddressLike, wrapperAddress: AddressLike, _trustedETHController: AddressLike, _trustedReverseRegistrar: AddressLike, overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(_ens: AddressLike, wrapperAddress: AddressLike, _trustedETHController: AddressLike, _trustedReverseRegistrar: AddressLike, overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): PublicResolver__factory; - static readonly bytecode = "0x6101006040523480156200001257600080fd5b50604051620030403803806200304083398101604081905262000035916200017a565b6040516302571be360e01b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26004820152849033906000906001600160a01b038416906302571be390602401602060405180830381865afa158015620000a1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620000c79190620001e2565b604051630f41a04d60e11b81526001600160a01b03848116600483015291925090821690631e83409a906024016020604051808303816000875af115801562000114573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200013a919062000209565b5050506001600160a01b039485166080525091831660a052821660c0521660e05262000223565b6001600160a01b03811681146200017757600080fd5b50565b600080600080608085870312156200019157600080fd5b84516200019e8162000161565b6020860151909450620001b18162000161565b6040860151909350620001c48162000161565b6060860151909250620001d78162000161565b939692955090935050565b600060208284031215620001f557600080fd5b8151620002028162000161565b9392505050565b6000602082840312156200021c57600080fd5b5051919050565b60805160a05160c05160e051612ddc620002646000396000611720015260006116ee0152600081816117df015261182c015260006117680152612ddc6000f3fe608060405234801561001057600080fd5b50600436106101da5760003560e01c80638b95dd7111610104578063c8690233116100a2578063e32954eb11610071578063e32954eb14610500578063e59d895d14610513578063e985e9c514610526578063f1cb7e061461056257600080fd5b8063c869023314610441578063ce3decdc14610499578063d5fa2b00146104ac578063d700ff33146104bf57600080fd5b8063a8fa5682116100de578063a8fa5682146103b7578063a9784b3e146103ca578063ac9650d81461040e578063bc1c58d11461042e57600080fd5b80638b95dd711461037e578063a22cb46514610391578063a4b91a01146103a457600080fd5b80633603d7581161017c5780635c98042b1161014b5780635c98042b14610332578063623195b014610345578063691f343114610358578063773722131461036b57600080fd5b80633603d758146102a15780633b3b57de146102b45780634cbf6ba4146102c757806359d1d43c1461031257600080fd5b8063124a319c116101b8578063124a319c1461022f5780632203ab561461025a57806329cd62ea1461027b578063304e6ade1461028e57600080fd5b806301ffc9a7146101df5780630af179d71461020757806310f13a8c1461021c575b600080fd5b6101f26101ed36600461230a565b610575565b60405190151581526020015b60405180910390f35b61021a610215366004612366565b610586565b005b61021a61022a3660046123b1565b61078f565b61024261023d36600461242a565b61085b565b6040516001600160a01b0390911681526020016101fe565b61026d610268366004612456565b610aac565b6040516101fe9291906124c8565b61021a6102893660046124e1565b610be2565b61021a61029c366004612366565b610c7c565b61021a6102af36600461250d565b610cf7565b6102426102c236600461250d565b610d98565b6101f26102d5366004612456565b600082815260208181526040808320546001600160401b031683526006825280832094835293815283822092825291909152205461ffff16151590565b610325610320366004612366565b610dca565b6040516101fe9190612526565b61032561034036600461250d565b610ea9565b61021a610353366004612539565b610f67565b61032561036636600461250d565b611003565b61021a610379366004612366565b61103c565b61021a61038c3660046125a1565b6110b7565b61021a61039f366004612689565b611196565b61021a6103b23660046126b5565b611271565b6103256103c53660046126f3565b61133e565b6101f26103d8366004612733565b6001600160a01b039283166000908152600c60209081526040808320948352938152838220929094168152925290205460ff1690565b61042161041c3660046127ae565b61138b565b6040516101fe91906127ef565b61032561043c36600461250d565b611399565b61048461044f36600461250d565b600081815260208181526040808320546001600160401b03168352600982528083209383529290522080546001909101549091565b604080519283526020830191909152016101fe565b61021a6104a7366004612366565b6113d2565b61021a6104ba366004612851565b611513565b6104e86104cd36600461250d565b6000602081905290815260409020546001600160401b031681565b6040516001600160401b0390911681526020016101fe565b61042161050e366004612881565b61153a565b61021a6105213660046128bf565b61154f565b6101f26105343660046128f4565b6001600160a01b039182166000908152600b6020908152604080832093909416825291909152205460ff1690565b610325610570366004612456565b6115f5565b6000610580826116bc565b92915050565b82610590816116e1565b61059957600080fd5b600084815260208181526040808320548151601f87018490048402810184019092528582528392606092839285926001600160401b039091169183916105fe9183918d908d908190840183828082843760009201919091525092939250506119169050565b90505b80515160208201511015610728578661ffff16600003610666578060400151965061062b81611977565b94508460405160200161063e9190612922565b60405160208183030381529060405280519060200120925061065f81611998565b935061071a565b600061067182611977565b9050816040015161ffff168861ffff16141580610695575061069386826119b4565b155b15610718576106f18c878a8e8e8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250505060208801518d91506106e8908290612954565b8b51158a6119d2565b81604001519750816020015196508095508580519060200120935061071582611998565b94505b505b61072381611c39565b610601565b50835115610783576107838a85888c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508c925061077a91508290508f612954565b895115886119d2565b50505050505050505050565b84610799816116e1565b6107a257600080fd5b600086815260208181526040808320546001600160401b03168352600a8252808320898452909152908190209051849184916107e19089908990612967565b908152602001604051809103902091826107fc9291906129ff565b50848460405161080d929190612967565b6040518091039020867f448bc014f1536726cf8d54ff3d6481ed3cbc683c2591ca204274009afa09b1a18787878760405161084b9493929190612ae7565b60405180910390a3505050505050565b600082815260208181526040808320546001600160401b031683526007825280832085845282528083206001600160e01b0319851684529091528120546001600160a01b031680156108ae579050610580565b60006108b985610d98565b90506001600160a01b0381166108d457600092505050610580565b6040516301ffc9a760e01b602482015260009081906001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b1790525161092c9190612922565b600060405180830381855afa9150503d8060008114610967576040519150601f19603f3d011682016040523d82523d6000602084013e61096c565b606091505b509150915081158061097f575060208151105b806109a9575080601f8151811061099857610998612b19565b01602001516001600160f81b031916155b156109bb576000945050505050610580565b6040516001600160e01b0319871660248201526001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b17905251610a119190612922565b600060405180830381855afa9150503d8060008114610a4c576040519150601f19603f3d011682016040523d82523d6000602084013e610a51565b606091505b509092509050811580610a65575060208151105b80610a8f575080601f81518110610a7e57610a7e612b19565b01602001516001600160f81b031916155b15610aa1576000945050505050610580565b509095945050505050565b600082815260208181526040808320546001600160401b03168352600180835281842086855290925282206060915b848111610bc25780851615801590610b0b575060008181526020839052604081208054610b0790612977565b9050115b15610bba5780826000838152602001908152602001600020808054610b2f90612977565b80601f0160208091040260200160405190810160405280929190818152602001828054610b5b90612977565b8015610ba85780601f10610b7d57610100808354040283529160200191610ba8565b820191906000526020600020905b815481529060010190602001808311610b8b57829003601f168201915b50505050509050935093505050610bdb565b60011b610adb565b5060006040518060200160405280600081525092509250505b9250929050565b82610bec816116e1565b610bf557600080fd5b60408051808201825284815260208082018581526000888152808352848120546001600160401b031681526009835284812089825283528490209251835551600190920191909155815185815290810184905285917f1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e4691015b60405180910390a250505050565b82610c86816116e1565b610c8f57600080fd5b600084815260208181526040808320546001600160401b03168352600382528083208784529091529020610cc48385836129ff565b50837fe379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d75788484604051610c6e929190612b2f565b80610d01816116e1565b610d0a57600080fd5b600082815260208190526040812080546001600160401b031691610d2d83612b43565b82546101009290920a6001600160401b03818102199093169183160217909155600084815260208181526040918290205491519190921681528492507fc6621ccb8f3f5a04bb6502154b2caf6adf5983fe76dfef1cfc9c42e3579db444910160405180910390a25050565b600080610da683603c6115f5565b90508051600003610dba5750600092915050565b610dc381611d21565b9392505050565b600083815260208181526040808320546001600160401b03168352600a825280832086845290915290819020905160609190610e099085908590612967565b90815260200160405180910390208054610e2290612977565b80601f0160208091040260200160405190810160405280929190818152602001828054610e4e90612977565b8015610e9b5780601f10610e7057610100808354040283529160200191610e9b565b820191906000526020600020905b815481529060010190602001808311610e7e57829003601f168201915b505050505090509392505050565b600081815260208181526040808320546001600160401b03168352600482528083208484529091529020805460609190610ee290612977565b80601f0160208091040260200160405190810160405280929190818152602001828054610f0e90612977565b8015610f5b5780601f10610f3057610100808354040283529160200191610f5b565b820191906000526020600020905b815481529060010190602001808311610f3e57829003601f168201915b50505050509050919050565b83610f71816116e1565b610f7a57600080fd5b83610f86600182612954565b1615610f9157600080fd5b600085815260208181526040808320546001600160401b031683526001825280832088845282528083208784529091529020610fce8385836129ff565b50604051849086907faa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe390600090a35050505050565b600081815260208181526040808320546001600160401b03168352600882528083208484529091529020805460609190610ee290612977565b82611046816116e1565b61104f57600080fd5b600084815260208181526040808320546001600160401b031683526008825280832087845290915290206110848385836129ff565b50837fb7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f78484604051610c6e929190612b2f565b826110c1816116e1565b6110ca57600080fd5b837f65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af75284846040516110fc9291906124c8565b60405180910390a2603c830361115357837f52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd261113784611d21565b6040516001600160a01b03909116815260200160405180910390a25b600084815260208181526040808320546001600160401b03168352600282528083208784528252808320868452909152902061118f8382612b69565b5050505050565b6001600160a01b03821633036112055760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084015b60405180910390fd5b336000818152600b602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6001600160a01b03821633036112c95760405162461bcd60e51b815260206004820181905260248201527f53657474696e672064656c65676174652073746174757320666f722073656c6660448201526064016111fc565b336000818152600c6020908152604080832087845282528083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519384529286917ff0ddb3b04746704017f9aa8bd728fcc2c1d11675041205350018915f5e4750a0910160405180910390a4505050565b600083815260208181526040808320546001600160401b03168352600582528083208684528252808320858452825280832061ffff851684529091529020805460609190610e2290612977565b6060610dc360008484611d40565b600081815260208181526040808320546001600160401b03168352600382528083208484529091529020805460609190610ee290612977565b826113dc816116e1565b6113e557600080fd5b600084815260208181526040808320546001600160401b0316808452600483528184208885529092528220805491929161141e90612977565b80601f016020809104026020016040519081016040528092919081815260200182805461144a90612977565b80156114975780601f1061146c57610100808354040283529160200191611497565b820191906000526020600020905b81548152906001019060200180831161147a57829003601f168201915b505050506001600160401b03841660009081526004602090815260408083208b845290915290209192506114ce90508587836129ff565b50857f8f15ed4b723ef428f250961da8315675b507046737e19319fc1a4d81bfe87f8582878760405161150393929190612c28565b60405180910390a2505050505050565b8161151d816116e1565b61152657600080fd5b61153583603c61038c85611f0f565b505050565b6060611547848484611d40565b949350505050565b82611559816116e1565b61156257600080fd5b600084815260208181526040808320546001600160401b031683526007825280832087845282528083206001600160e01b031987168085529083529281902080546001600160a01b0319166001600160a01b038716908117909155905190815286917f7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa910160405180910390a350505050565b600082815260208181526040808320546001600160401b03168352600282528083208584528252808320848452909152902080546060919061163690612977565b80601f016020809104026020016040519081016040528092919081815260200182805461166290612977565b80156116af5780601f10611684576101008083540402835291602001916116af565b820191906000526020600020905b81548152906001019060200180831161169257829003601f168201915b5050505050905092915050565b60006001600160e01b03198216631674750f60e21b1480610580575061058082611f3f565b6000336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614806117425750336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016145b1561174f57506001919050565b6040516302571be360e01b8152600481018390526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906302571be390602401602060405180830381865afa1580156117b7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117db9190612c58565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b0316036118a2576040516331a9108f60e11b8152600481018490527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690636352211e90602401602060405180830381865afa15801561187b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061189f9190612c58565b90505b6001600160a01b0381163314806118dc57506001600160a01b0381166000908152600b6020908152604080832033845290915290205460ff165b80610dc357506001600160a01b0381166000908152600c60209081526040808320868452825280832033845290915290205460ff16610dc3565b6119646040518060e001604052806060815260200160008152602001600061ffff168152602001600061ffff168152602001600063ffffffff16815260200160008152602001600081525090565b82815260c0810182905261058081611c39565b602081015181516060916105809161198f9082611f64565b84519190611fbe565b60a081015160c08201516060916105809161198f908290612954565b600081518351148015610dc35750610dc38360008460008751612034565b8651602088012060006119e6878787611fbe565b90508315611b0d576001600160401b03831660009081526005602090815260408083208d84528252808320858452825280832061ffff8c16845290915290208054611a3090612977565b159050611a8e576001600160401b03831660009081526006602090815260408083208d845282528083208584529091528120805461ffff1691611a7283612c75565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b03831660009081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091528120611ace91612297565b897f03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a12078a8a604051611b00929190612c93565b60405180910390a2610783565b6001600160401b03831660009081526005602090815260408083208d84528252808320858452825280832061ffff8c16845290915290208054611b4f90612977565b9050600003611baf576001600160401b03831660009081526006602090815260408083208d845282528083208584529091528120805461ffff1691611b9383612cb9565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b03831660009081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091529020611bf08282612b69565b50897f52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b8a8a84604051611c2593929190612cd0565b60405180910390a250505050505050505050565b60c08101516020820181905281515111611c505750565b6000611c6482600001518360200151611f64565b8260200151611c739190612cff565b8251909150611c829082612057565b61ffff166040830152611c96600282612cff565b8251909150611ca59082612057565b61ffff166060830152611cb9600282612cff565b8251909150611cc8908261207f565b63ffffffff166080830152611cde600482612cff565b8251909150600090611cf09083612057565b61ffff169050611d01600283612cff565b60a084018190529150611d148183612cff565b60c0909301929092525050565b60008151601414611d3157600080fd5b5060200151600160601b900490565b6060816001600160401b03811115611d5a57611d5a61258b565b604051908082528060200260200182016040528015611d8d57816020015b6060815260200190600190039081611d785790505b50905060005b82811015611f07578415611e4f576000848483818110611db557611db5612b19565b9050602002810190611dc79190612d12565b611dd691602491600491612d58565b611ddf91612d82565b9050858114611e4d5760405162461bcd60e51b815260206004820152603460248201527f6d756c746963616c6c3a20416c6c207265636f726473206d7573742068617665604482015273040c240dac2e8c6d0d2dcce40dcc2dacad0c2e6d60631b60648201526084016111fc565b505b60008030868685818110611e6557611e65612b19565b9050602002810190611e779190612d12565b604051611e85929190612967565b600060405180830381855af49150503d8060008114611ec0576040519150601f19603f3d011682016040523d82523d6000602084013e611ec5565b606091505b509150915081611ed457600080fd5b80848481518110611ee757611ee7612b19565b602002602001018190525050508080611eff90612da0565b915050611d93565b509392505050565b604080516014808252818301909252606091602082018180368337505050600160601b9290920260208301525090565b60006001600160e01b0319821663c869023360e01b14806105805750610580826120a9565b6000815b83518110611f7857611f78612db9565b6000611f8485836120ce565b60ff169050611f94816001612cff565b611f9e9083612cff565b915080600003611fae5750611fb4565b50611f68565b6115478382612954565b8251606090611fcd8385612cff565b1115611fd857600080fd5b6000826001600160401b03811115611ff257611ff261258b565b6040519080825280601f01601f19166020018201604052801561201c576020820181803683370190505b50905060208082019086860101610aa18282876120f2565b6000612041848484612148565b61204c878785612148565b149695505050505050565b8151600090612067836002612cff565b111561207257600080fd5b50016002015161ffff1690565b815160009061208f836004612cff565b111561209a57600080fd5b50016004015163ffffffff1690565b60006001600160e01b0319821663691f343160e01b148061058057506105808261216c565b60008282815181106120e2576120e2612b19565b016020015160f81c905092915050565b6020811061212a5781518352612109602084612cff565b9250612116602083612cff565b9150612123602082612954565b90506120f2565b905182516020929092036101000a6000190180199091169116179052565b82516000906121578385612cff565b111561216257600080fd5b5091016020012090565b60006001600160e01b031982166304928c6760e21b148061058057506105808260006001600160e01b0319821663547d2b4160e11b14806121bd57506001600160e01b03198216635c98042b60e01b145b8061058057506105808260006001600160e01b0319821663bc1c58d160e01b148061058057506105808260006001600160e01b03198216631d9dabef60e11b148061221857506001600160e01b031982166378e5bf0360e11b145b8061058057506105808260006001600160e01b03198216631101d5ab60e11b148061058057506105808260006001600160e01b0319821663d700ff3360e01b148061058057506105808260006001600160e01b03198216634fbf043360e01b148061058057506301ffc9a760e01b6001600160e01b0319831614610580565b5080546122a390612977565b6000825580601f106122b3575050565b601f0160209004906000526020600020908101906122d191906122d4565b50565b5b808211156122e957600081556001016122d5565b5090565b80356001600160e01b03198116811461230557600080fd5b919050565b60006020828403121561231c57600080fd5b610dc3826122ed565b60008083601f84011261233757600080fd5b5081356001600160401b0381111561234e57600080fd5b602083019150836020828501011115610bdb57600080fd5b60008060006040848603121561237b57600080fd5b8335925060208401356001600160401b0381111561239857600080fd5b6123a486828701612325565b9497909650939450505050565b6000806000806000606086880312156123c957600080fd5b8535945060208601356001600160401b03808211156123e757600080fd5b6123f389838a01612325565b9096509450604088013591508082111561240c57600080fd5b5061241988828901612325565b969995985093965092949392505050565b6000806040838503121561243d57600080fd5b8235915061244d602084016122ed565b90509250929050565b6000806040838503121561246957600080fd5b50508035926020909101359150565b60005b8381101561249357818101518382015260200161247b565b50506000910152565b600081518084526124b4816020860160208601612478565b601f01601f19169290920160200192915050565b828152604060208201526000611547604083018461249c565b6000806000606084860312156124f657600080fd5b505081359360208301359350604090920135919050565b60006020828403121561251f57600080fd5b5035919050565b602081526000610dc3602083018461249c565b6000806000806060858703121561254f57600080fd5b843593506020850135925060408501356001600160401b0381111561257357600080fd5b61257f87828801612325565b95989497509550505050565b634e487b7160e01b600052604160045260246000fd5b6000806000606084860312156125b657600080fd5b833592506020840135915060408401356001600160401b03808211156125db57600080fd5b818601915086601f8301126125ef57600080fd5b8135818111156126015761260161258b565b604051601f8201601f19908116603f011681019083821181831017156126295761262961258b565b8160405282815289602084870101111561264257600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6001600160a01b03811681146122d157600080fd5b8035801515811461230557600080fd5b6000806040838503121561269c57600080fd5b82356126a781612664565b915061244d60208401612679565b6000806000606084860312156126ca57600080fd5b8335925060208401356126dc81612664565b91506126ea60408501612679565b90509250925092565b60008060006060848603121561270857600080fd5b8335925060208401359150604084013561ffff8116811461272857600080fd5b809150509250925092565b60008060006060848603121561274857600080fd5b833561275381612664565b925060208401359150604084013561272881612664565b60008083601f84011261277c57600080fd5b5081356001600160401b0381111561279357600080fd5b6020830191508360208260051b8501011115610bdb57600080fd5b600080602083850312156127c157600080fd5b82356001600160401b038111156127d757600080fd5b6127e38582860161276a565b90969095509350505050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b8281101561284457603f1988860301845261283285835161249c565b94509285019290850190600101612816565b5092979650505050505050565b6000806040838503121561286457600080fd5b82359150602083013561287681612664565b809150509250929050565b60008060006040848603121561289657600080fd5b8335925060208401356001600160401b038111156128b357600080fd5b6123a48682870161276a565b6000806000606084860312156128d457600080fd5b833592506128e4602085016122ed565b9150604084013561272881612664565b6000806040838503121561290757600080fd5b823561291281612664565b9150602083013561287681612664565b60008251612934818460208701612478565b9190910192915050565b634e487b7160e01b600052601160045260246000fd5b818103818111156105805761058061293e565b8183823760009101908152919050565b600181811c9082168061298b57607f821691505b6020821081036129ab57634e487b7160e01b600052602260045260246000fd5b50919050565b601f82111561153557600081815260208120601f850160051c810160208610156129d85750805b601f850160051c820191505b818110156129f7578281556001016129e4565b505050505050565b6001600160401b03831115612a1657612a1661258b565b612a2a83612a248354612977565b836129b1565b6000601f841160018114612a5e5760008515612a465750838201355b600019600387901b1c1916600186901b17835561118f565b600083815260209020601f19861690835b82811015612a8f5786850135825560209485019460019092019101612a6f565b5086821015612aac5760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b604081526000612afb604083018688612abe565b8281036020840152612b0e818587612abe565b979650505050505050565b634e487b7160e01b600052603260045260246000fd5b602081526000611547602083018486612abe565b60006001600160401b03808316818103612b5f57612b5f61293e565b6001019392505050565b81516001600160401b03811115612b8257612b8261258b565b612b9681612b908454612977565b846129b1565b602080601f831160018114612bcb5760008415612bb35750858301515b600019600386901b1c1916600185901b1785556129f7565b600085815260208120601f198616915b82811015612bfa57888601518255948401946001909101908401612bdb565b5085821015612c185787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b604081526000612c3b604083018661249c565b8281036020840152612c4e818587612abe565b9695505050505050565b600060208284031215612c6a57600080fd5b8151610dc381612664565b600061ffff821680612c8957612c8961293e565b6000190192915050565b604081526000612ca6604083018561249c565b905061ffff831660208301529392505050565b600061ffff808316818103612b5f57612b5f61293e565b606081526000612ce3606083018661249c565b61ffff851660208401528281036040840152612c4e818561249c565b808201808211156105805761058061293e565b6000808335601e19843603018112612d2957600080fd5b8301803591506001600160401b03821115612d4357600080fd5b602001915036819003821315610bdb57600080fd5b60008085851115612d6857600080fd5b83861115612d7557600080fd5b5050820193919092039150565b8035602083101561058057600019602084900360031b1b1692915050565b600060018201612db257612db261293e565b5060010190565b634e487b7160e01b600052600160045260246000fdfea164736f6c6343000811000a"; - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "contract ENS"; - readonly name: "_ens"; - readonly type: "address"; - }, { - readonly internalType: "contract INameWrapper"; - readonly name: "wrapperAddress"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "_trustedETHController"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "_trustedReverseRegistrar"; - readonly type: "address"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "constructor"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "contentType"; - readonly type: "uint256"; - }]; - readonly name: "ABIChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "address"; - readonly name: "a"; - readonly type: "address"; - }]; - readonly name: "AddrChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "coinType"; - readonly type: "uint256"; - }, { - readonly indexed: false; - readonly internalType: "bytes"; - readonly name: "newAddress"; - readonly type: "bytes"; - }]; - readonly name: "AddressChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "ApprovalForAll"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "delegate"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "Approved"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "bytes"; - readonly name: "hash"; - readonly type: "bytes"; - }]; - readonly name: "ContenthashChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "bytes"; - readonly name: "name"; - readonly type: "bytes"; - }, { - readonly indexed: false; - readonly internalType: "uint16"; - readonly name: "resource"; - readonly type: "uint16"; - }, { - readonly indexed: false; - readonly internalType: "bytes"; - readonly name: "record"; - readonly type: "bytes"; - }]; - readonly name: "DNSRecordChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "bytes"; - readonly name: "name"; - readonly type: "bytes"; - }, { - readonly indexed: false; - readonly internalType: "uint16"; - readonly name: "resource"; - readonly type: "uint16"; - }]; - readonly name: "DNSRecordDeleted"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "bytes"; - readonly name: "lastzonehash"; - readonly type: "bytes"; - }, { - readonly indexed: false; - readonly internalType: "bytes"; - readonly name: "zonehash"; - readonly type: "bytes"; - }]; - readonly name: "DNSZonehashChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "bytes4"; - readonly name: "interfaceID"; - readonly type: "bytes4"; - }, { - readonly indexed: false; - readonly internalType: "address"; - readonly name: "implementer"; - readonly type: "address"; - }]; - readonly name: "InterfaceChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "string"; - readonly name: "name"; - readonly type: "string"; - }]; - readonly name: "NameChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "bytes32"; - readonly name: "x"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "bytes32"; - readonly name: "y"; - readonly type: "bytes32"; - }]; - readonly name: "PubkeyChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "string"; - readonly name: "indexedKey"; - readonly type: "string"; - }, { - readonly indexed: false; - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }, { - readonly indexed: false; - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }]; - readonly name: "TextChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "uint64"; - readonly name: "newVersion"; - readonly type: "uint64"; - }]; - readonly name: "VersionChanged"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "contentTypes"; - readonly type: "uint256"; - }]; - readonly name: "ABI"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "addr"; - readonly outputs: readonly [{ - readonly internalType: "address payable"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "coinType"; - readonly type: "uint256"; - }]; - readonly name: "addr"; - readonly outputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "delegate"; - readonly type: "address"; - }, { - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "approve"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "clearRecords"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "contenthash"; - readonly outputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes32"; - readonly name: "name"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint16"; - readonly name: "resource"; - readonly type: "uint16"; - }]; - readonly name: "dnsRecord"; - readonly outputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes32"; - readonly name: "name"; - readonly type: "bytes32"; - }]; - readonly name: "hasDNSRecords"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes4"; - readonly name: "interfaceID"; - readonly type: "bytes4"; - }]; - readonly name: "interfaceImplementer"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "delegate"; - readonly type: "address"; - }]; - readonly name: "isApprovedFor"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly name: "isApprovedForAll"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes[]"; - readonly name: "data"; - readonly type: "bytes[]"; - }]; - readonly name: "multicall"; - readonly outputs: readonly [{ - readonly internalType: "bytes[]"; - readonly name: "results"; - readonly type: "bytes[]"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "nodehash"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes[]"; - readonly name: "data"; - readonly type: "bytes[]"; - }]; - readonly name: "multicallWithNodeCheck"; - readonly outputs: readonly [{ - readonly internalType: "bytes[]"; - readonly name: "results"; - readonly type: "bytes[]"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "name"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "pubkey"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "x"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes32"; - readonly name: "y"; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly name: "recordVersions"; - readonly outputs: readonly [{ - readonly internalType: "uint64"; - readonly name: ""; - readonly type: "uint64"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "contentType"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "setABI"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "coinType"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "a"; - readonly type: "bytes"; - }]; - readonly name: "setAddr"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "a"; - readonly type: "address"; - }]; - readonly name: "setAddr"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "setApprovalForAll"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes"; - readonly name: "hash"; - readonly type: "bytes"; - }]; - readonly name: "setContenthash"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "setDNSRecords"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes4"; - readonly name: "interfaceID"; - readonly type: "bytes4"; - }, { - readonly internalType: "address"; - readonly name: "implementer"; - readonly type: "address"; - }]; - readonly name: "setInterface"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "string"; - readonly name: "newName"; - readonly type: "string"; - }]; - readonly name: "setName"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes32"; - readonly name: "x"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes32"; - readonly name: "y"; - readonly type: "bytes32"; - }]; - readonly name: "setPubkey"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }, { - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }]; - readonly name: "setText"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes"; - readonly name: "hash"; - readonly type: "bytes"; - }]; - readonly name: "setZonehash"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceID"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }]; - readonly name: "text"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "zonehash"; - readonly outputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): PublicResolverInterface; - static connect(address: string, runner?: ContractRunner | null): PublicResolver; -} -export {}; -//# sourceMappingURL=PublicResolver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver__factory.d.ts.map deleted file mode 100644 index 5223d26c..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"PublicResolver__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,MAAM,EACN,WAAW,EACX,yBAAyB,EACzB,cAAc,EACf,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,cAAc,EACd,uBAAuB,EACxB,MAAM,6EAA6E,CAAC;AA2/BrF,aAAK,+BAA+B,GAChC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,uBAAwB,SAAQ,eAAe;gBAC9C,GAAG,IAAI,EAAE,+BAA+B;IAQ3C,oBAAoB,CAC3B,IAAI,EAAE,WAAW,EACjB,cAAc,EAAE,WAAW,EAC3B,qBAAqB,EAAE,WAAW,EAClC,wBAAwB,EAAE,WAAW,EACrC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAS5B,MAAM,CACb,IAAI,EAAE,WAAW,EACjB,cAAc,EAAE,WAAW,EAC3B,qBAAqB,EAAE,WAAW,EAClC,wBAAwB,EAAE,WAAW,EACrC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAUtB,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,uBAAuB;IAIxE,MAAM,CAAC,QAAQ,CAAC,QAAQ,wowBAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,uBAAuB;IAGjD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,cAAc;CAGlB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver__factory.js deleted file mode 100644 index 5f621181..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver__factory.js +++ /dev/null @@ -1,1047 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.PublicResolver__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "contract ENS", - name: "_ens", - type: "address", - }, - { - internalType: "contract INameWrapper", - name: "wrapperAddress", - type: "address", - }, - { - internalType: "address", - name: "_trustedETHController", - type: "address", - }, - { - internalType: "address", - name: "_trustedReverseRegistrar", - type: "address", - }, - ], - stateMutability: "nonpayable", - type: "constructor", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: true, - internalType: "uint256", - name: "contentType", - type: "uint256", - }, - ], - name: "ABIChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "address", - name: "a", - type: "address", - }, - ], - name: "AddrChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "uint256", - name: "coinType", - type: "uint256", - }, - { - indexed: false, - internalType: "bytes", - name: "newAddress", - type: "bytes", - }, - ], - name: "AddressChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: false, - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "ApprovalForAll", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "delegate", - type: "address", - }, - { - indexed: true, - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "Approved", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "bytes", - name: "hash", - type: "bytes", - }, - ], - name: "ContenthashChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "bytes", - name: "name", - type: "bytes", - }, - { - indexed: false, - internalType: "uint16", - name: "resource", - type: "uint16", - }, - { - indexed: false, - internalType: "bytes", - name: "record", - type: "bytes", - }, - ], - name: "DNSRecordChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "bytes", - name: "name", - type: "bytes", - }, - { - indexed: false, - internalType: "uint16", - name: "resource", - type: "uint16", - }, - ], - name: "DNSRecordDeleted", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "bytes", - name: "lastzonehash", - type: "bytes", - }, - { - indexed: false, - internalType: "bytes", - name: "zonehash", - type: "bytes", - }, - ], - name: "DNSZonehashChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: true, - internalType: "bytes4", - name: "interfaceID", - type: "bytes4", - }, - { - indexed: false, - internalType: "address", - name: "implementer", - type: "address", - }, - ], - name: "InterfaceChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "string", - name: "name", - type: "string", - }, - ], - name: "NameChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "bytes32", - name: "x", - type: "bytes32", - }, - { - indexed: false, - internalType: "bytes32", - name: "y", - type: "bytes32", - }, - ], - name: "PubkeyChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: true, - internalType: "string", - name: "indexedKey", - type: "string", - }, - { - indexed: false, - internalType: "string", - name: "key", - type: "string", - }, - { - indexed: false, - internalType: "string", - name: "value", - type: "string", - }, - ], - name: "TextChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "uint64", - name: "newVersion", - type: "uint64", - }, - ], - name: "VersionChanged", - type: "event", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "uint256", - name: "contentTypes", - type: "uint256", - }, - ], - name: "ABI", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "addr", - outputs: [ - { - internalType: "address payable", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "uint256", - name: "coinType", - type: "uint256", - }, - ], - name: "addr", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "address", - name: "delegate", - type: "address", - }, - { - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "approve", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "clearRecords", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "contenthash", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "name", - type: "bytes32", - }, - { - internalType: "uint16", - name: "resource", - type: "uint16", - }, - ], - name: "dnsRecord", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "name", - type: "bytes32", - }, - ], - name: "hasDNSRecords", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "bytes4", - name: "interfaceID", - type: "bytes4", - }, - ], - name: "interfaceImplementer", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "address", - name: "delegate", - type: "address", - }, - ], - name: "isApprovedFor", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - name: "isApprovedForAll", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes[]", - name: "data", - type: "bytes[]", - }, - ], - name: "multicall", - outputs: [ - { - internalType: "bytes[]", - name: "results", - type: "bytes[]", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "nodehash", - type: "bytes32", - }, - { - internalType: "bytes[]", - name: "data", - type: "bytes[]", - }, - ], - name: "multicallWithNodeCheck", - outputs: [ - { - internalType: "bytes[]", - name: "results", - type: "bytes[]", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "name", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "pubkey", - outputs: [ - { - internalType: "bytes32", - name: "x", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "y", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - name: "recordVersions", - outputs: [ - { - internalType: "uint64", - name: "", - type: "uint64", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "uint256", - name: "contentType", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "setABI", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "uint256", - name: "coinType", - type: "uint256", - }, - { - internalType: "bytes", - name: "a", - type: "bytes", - }, - ], - name: "setAddr", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "address", - name: "a", - type: "address", - }, - ], - name: "setAddr", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "setApprovalForAll", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "bytes", - name: "hash", - type: "bytes", - }, - ], - name: "setContenthash", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "setDNSRecords", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "bytes4", - name: "interfaceID", - type: "bytes4", - }, - { - internalType: "address", - name: "implementer", - type: "address", - }, - ], - name: "setInterface", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "string", - name: "newName", - type: "string", - }, - ], - name: "setName", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "x", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "y", - type: "bytes32", - }, - ], - name: "setPubkey", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "string", - name: "key", - type: "string", - }, - { - internalType: "string", - name: "value", - type: "string", - }, - ], - name: "setText", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "bytes", - name: "hash", - type: "bytes", - }, - ], - name: "setZonehash", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceID", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "string", - name: "key", - type: "string", - }, - ], - name: "text", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "zonehash", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -const _bytecode = "0x6101006040523480156200001257600080fd5b50604051620030403803806200304083398101604081905262000035916200017a565b6040516302571be360e01b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26004820152849033906000906001600160a01b038416906302571be390602401602060405180830381865afa158015620000a1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620000c79190620001e2565b604051630f41a04d60e11b81526001600160a01b03848116600483015291925090821690631e83409a906024016020604051808303816000875af115801562000114573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200013a919062000209565b5050506001600160a01b039485166080525091831660a052821660c0521660e05262000223565b6001600160a01b03811681146200017757600080fd5b50565b600080600080608085870312156200019157600080fd5b84516200019e8162000161565b6020860151909450620001b18162000161565b6040860151909350620001c48162000161565b6060860151909250620001d78162000161565b939692955090935050565b600060208284031215620001f557600080fd5b8151620002028162000161565b9392505050565b6000602082840312156200021c57600080fd5b5051919050565b60805160a05160c05160e051612ddc620002646000396000611720015260006116ee0152600081816117df015261182c015260006117680152612ddc6000f3fe608060405234801561001057600080fd5b50600436106101da5760003560e01c80638b95dd7111610104578063c8690233116100a2578063e32954eb11610071578063e32954eb14610500578063e59d895d14610513578063e985e9c514610526578063f1cb7e061461056257600080fd5b8063c869023314610441578063ce3decdc14610499578063d5fa2b00146104ac578063d700ff33146104bf57600080fd5b8063a8fa5682116100de578063a8fa5682146103b7578063a9784b3e146103ca578063ac9650d81461040e578063bc1c58d11461042e57600080fd5b80638b95dd711461037e578063a22cb46514610391578063a4b91a01146103a457600080fd5b80633603d7581161017c5780635c98042b1161014b5780635c98042b14610332578063623195b014610345578063691f343114610358578063773722131461036b57600080fd5b80633603d758146102a15780633b3b57de146102b45780634cbf6ba4146102c757806359d1d43c1461031257600080fd5b8063124a319c116101b8578063124a319c1461022f5780632203ab561461025a57806329cd62ea1461027b578063304e6ade1461028e57600080fd5b806301ffc9a7146101df5780630af179d71461020757806310f13a8c1461021c575b600080fd5b6101f26101ed36600461230a565b610575565b60405190151581526020015b60405180910390f35b61021a610215366004612366565b610586565b005b61021a61022a3660046123b1565b61078f565b61024261023d36600461242a565b61085b565b6040516001600160a01b0390911681526020016101fe565b61026d610268366004612456565b610aac565b6040516101fe9291906124c8565b61021a6102893660046124e1565b610be2565b61021a61029c366004612366565b610c7c565b61021a6102af36600461250d565b610cf7565b6102426102c236600461250d565b610d98565b6101f26102d5366004612456565b600082815260208181526040808320546001600160401b031683526006825280832094835293815283822092825291909152205461ffff16151590565b610325610320366004612366565b610dca565b6040516101fe9190612526565b61032561034036600461250d565b610ea9565b61021a610353366004612539565b610f67565b61032561036636600461250d565b611003565b61021a610379366004612366565b61103c565b61021a61038c3660046125a1565b6110b7565b61021a61039f366004612689565b611196565b61021a6103b23660046126b5565b611271565b6103256103c53660046126f3565b61133e565b6101f26103d8366004612733565b6001600160a01b039283166000908152600c60209081526040808320948352938152838220929094168152925290205460ff1690565b61042161041c3660046127ae565b61138b565b6040516101fe91906127ef565b61032561043c36600461250d565b611399565b61048461044f36600461250d565b600081815260208181526040808320546001600160401b03168352600982528083209383529290522080546001909101549091565b604080519283526020830191909152016101fe565b61021a6104a7366004612366565b6113d2565b61021a6104ba366004612851565b611513565b6104e86104cd36600461250d565b6000602081905290815260409020546001600160401b031681565b6040516001600160401b0390911681526020016101fe565b61042161050e366004612881565b61153a565b61021a6105213660046128bf565b61154f565b6101f26105343660046128f4565b6001600160a01b039182166000908152600b6020908152604080832093909416825291909152205460ff1690565b610325610570366004612456565b6115f5565b6000610580826116bc565b92915050565b82610590816116e1565b61059957600080fd5b600084815260208181526040808320548151601f87018490048402810184019092528582528392606092839285926001600160401b039091169183916105fe9183918d908d908190840183828082843760009201919091525092939250506119169050565b90505b80515160208201511015610728578661ffff16600003610666578060400151965061062b81611977565b94508460405160200161063e9190612922565b60405160208183030381529060405280519060200120925061065f81611998565b935061071a565b600061067182611977565b9050816040015161ffff168861ffff16141580610695575061069386826119b4565b155b15610718576106f18c878a8e8e8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250505060208801518d91506106e8908290612954565b8b51158a6119d2565b81604001519750816020015196508095508580519060200120935061071582611998565b94505b505b61072381611c39565b610601565b50835115610783576107838a85888c8c8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508c925061077a91508290508f612954565b895115886119d2565b50505050505050505050565b84610799816116e1565b6107a257600080fd5b600086815260208181526040808320546001600160401b03168352600a8252808320898452909152908190209051849184916107e19089908990612967565b908152602001604051809103902091826107fc9291906129ff565b50848460405161080d929190612967565b6040518091039020867f448bc014f1536726cf8d54ff3d6481ed3cbc683c2591ca204274009afa09b1a18787878760405161084b9493929190612ae7565b60405180910390a3505050505050565b600082815260208181526040808320546001600160401b031683526007825280832085845282528083206001600160e01b0319851684529091528120546001600160a01b031680156108ae579050610580565b60006108b985610d98565b90506001600160a01b0381166108d457600092505050610580565b6040516301ffc9a760e01b602482015260009081906001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b1790525161092c9190612922565b600060405180830381855afa9150503d8060008114610967576040519150601f19603f3d011682016040523d82523d6000602084013e61096c565b606091505b509150915081158061097f575060208151105b806109a9575080601f8151811061099857610998612b19565b01602001516001600160f81b031916155b156109bb576000945050505050610580565b6040516001600160e01b0319871660248201526001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b17905251610a119190612922565b600060405180830381855afa9150503d8060008114610a4c576040519150601f19603f3d011682016040523d82523d6000602084013e610a51565b606091505b509092509050811580610a65575060208151105b80610a8f575080601f81518110610a7e57610a7e612b19565b01602001516001600160f81b031916155b15610aa1576000945050505050610580565b509095945050505050565b600082815260208181526040808320546001600160401b03168352600180835281842086855290925282206060915b848111610bc25780851615801590610b0b575060008181526020839052604081208054610b0790612977565b9050115b15610bba5780826000838152602001908152602001600020808054610b2f90612977565b80601f0160208091040260200160405190810160405280929190818152602001828054610b5b90612977565b8015610ba85780601f10610b7d57610100808354040283529160200191610ba8565b820191906000526020600020905b815481529060010190602001808311610b8b57829003601f168201915b50505050509050935093505050610bdb565b60011b610adb565b5060006040518060200160405280600081525092509250505b9250929050565b82610bec816116e1565b610bf557600080fd5b60408051808201825284815260208082018581526000888152808352848120546001600160401b031681526009835284812089825283528490209251835551600190920191909155815185815290810184905285917f1d6f5e03d3f63eb58751986629a5439baee5079ff04f345becb66e23eb154e4691015b60405180910390a250505050565b82610c86816116e1565b610c8f57600080fd5b600084815260208181526040808320546001600160401b03168352600382528083208784529091529020610cc48385836129ff565b50837fe379c1624ed7e714cc0937528a32359d69d5281337765313dba4e081b72d75788484604051610c6e929190612b2f565b80610d01816116e1565b610d0a57600080fd5b600082815260208190526040812080546001600160401b031691610d2d83612b43565b82546101009290920a6001600160401b03818102199093169183160217909155600084815260208181526040918290205491519190921681528492507fc6621ccb8f3f5a04bb6502154b2caf6adf5983fe76dfef1cfc9c42e3579db444910160405180910390a25050565b600080610da683603c6115f5565b90508051600003610dba5750600092915050565b610dc381611d21565b9392505050565b600083815260208181526040808320546001600160401b03168352600a825280832086845290915290819020905160609190610e099085908590612967565b90815260200160405180910390208054610e2290612977565b80601f0160208091040260200160405190810160405280929190818152602001828054610e4e90612977565b8015610e9b5780601f10610e7057610100808354040283529160200191610e9b565b820191906000526020600020905b815481529060010190602001808311610e7e57829003601f168201915b505050505090509392505050565b600081815260208181526040808320546001600160401b03168352600482528083208484529091529020805460609190610ee290612977565b80601f0160208091040260200160405190810160405280929190818152602001828054610f0e90612977565b8015610f5b5780601f10610f3057610100808354040283529160200191610f5b565b820191906000526020600020905b815481529060010190602001808311610f3e57829003601f168201915b50505050509050919050565b83610f71816116e1565b610f7a57600080fd5b83610f86600182612954565b1615610f9157600080fd5b600085815260208181526040808320546001600160401b031683526001825280832088845282528083208784529091529020610fce8385836129ff565b50604051849086907faa121bbeef5f32f5961a2a28966e769023910fc9479059ee3495d4c1a696efe390600090a35050505050565b600081815260208181526040808320546001600160401b03168352600882528083208484529091529020805460609190610ee290612977565b82611046816116e1565b61104f57600080fd5b600084815260208181526040808320546001600160401b031683526008825280832087845290915290206110848385836129ff565b50837fb7d29e911041e8d9b843369e890bcb72c9388692ba48b65ac54e7214c4c348f78484604051610c6e929190612b2f565b826110c1816116e1565b6110ca57600080fd5b837f65412581168e88a1e60c6459d7f44ae83ad0832e670826c05a4e2476b57af75284846040516110fc9291906124c8565b60405180910390a2603c830361115357837f52d7d861f09ab3d26239d492e8968629f95e9e318cf0b73bfddc441522a15fd261113784611d21565b6040516001600160a01b03909116815260200160405180910390a25b600084815260208181526040808320546001600160401b03168352600282528083208784528252808320868452909152902061118f8382612b69565b5050505050565b6001600160a01b03821633036112055760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084015b60405180910390fd5b336000818152600b602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6001600160a01b03821633036112c95760405162461bcd60e51b815260206004820181905260248201527f53657474696e672064656c65676174652073746174757320666f722073656c6660448201526064016111fc565b336000818152600c6020908152604080832087845282528083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519384529286917ff0ddb3b04746704017f9aa8bd728fcc2c1d11675041205350018915f5e4750a0910160405180910390a4505050565b600083815260208181526040808320546001600160401b03168352600582528083208684528252808320858452825280832061ffff851684529091529020805460609190610e2290612977565b6060610dc360008484611d40565b600081815260208181526040808320546001600160401b03168352600382528083208484529091529020805460609190610ee290612977565b826113dc816116e1565b6113e557600080fd5b600084815260208181526040808320546001600160401b0316808452600483528184208885529092528220805491929161141e90612977565b80601f016020809104026020016040519081016040528092919081815260200182805461144a90612977565b80156114975780601f1061146c57610100808354040283529160200191611497565b820191906000526020600020905b81548152906001019060200180831161147a57829003601f168201915b505050506001600160401b03841660009081526004602090815260408083208b845290915290209192506114ce90508587836129ff565b50857f8f15ed4b723ef428f250961da8315675b507046737e19319fc1a4d81bfe87f8582878760405161150393929190612c28565b60405180910390a2505050505050565b8161151d816116e1565b61152657600080fd5b61153583603c61038c85611f0f565b505050565b6060611547848484611d40565b949350505050565b82611559816116e1565b61156257600080fd5b600084815260208181526040808320546001600160401b031683526007825280832087845282528083206001600160e01b031987168085529083529281902080546001600160a01b0319166001600160a01b038716908117909155905190815286917f7c69f06bea0bdef565b709e93a147836b0063ba2dd89f02d0b7e8d931e6a6daa910160405180910390a350505050565b600082815260208181526040808320546001600160401b03168352600282528083208584528252808320848452909152902080546060919061163690612977565b80601f016020809104026020016040519081016040528092919081815260200182805461166290612977565b80156116af5780601f10611684576101008083540402835291602001916116af565b820191906000526020600020905b81548152906001019060200180831161169257829003601f168201915b5050505050905092915050565b60006001600160e01b03198216631674750f60e21b1480610580575061058082611f3f565b6000336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614806117425750336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016145b1561174f57506001919050565b6040516302571be360e01b8152600481018390526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906302571be390602401602060405180830381865afa1580156117b7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117db9190612c58565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316816001600160a01b0316036118a2576040516331a9108f60e11b8152600481018490527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690636352211e90602401602060405180830381865afa15801561187b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061189f9190612c58565b90505b6001600160a01b0381163314806118dc57506001600160a01b0381166000908152600b6020908152604080832033845290915290205460ff165b80610dc357506001600160a01b0381166000908152600c60209081526040808320868452825280832033845290915290205460ff16610dc3565b6119646040518060e001604052806060815260200160008152602001600061ffff168152602001600061ffff168152602001600063ffffffff16815260200160008152602001600081525090565b82815260c0810182905261058081611c39565b602081015181516060916105809161198f9082611f64565b84519190611fbe565b60a081015160c08201516060916105809161198f908290612954565b600081518351148015610dc35750610dc38360008460008751612034565b8651602088012060006119e6878787611fbe565b90508315611b0d576001600160401b03831660009081526005602090815260408083208d84528252808320858452825280832061ffff8c16845290915290208054611a3090612977565b159050611a8e576001600160401b03831660009081526006602090815260408083208d845282528083208584529091528120805461ffff1691611a7283612c75565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b03831660009081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091528120611ace91612297565b897f03528ed0c2a3ebc993b12ce3c16bb382f9c7d88ef7d8a1bf290eaf35955a12078a8a604051611b00929190612c93565b60405180910390a2610783565b6001600160401b03831660009081526005602090815260408083208d84528252808320858452825280832061ffff8c16845290915290208054611b4f90612977565b9050600003611baf576001600160401b03831660009081526006602090815260408083208d845282528083208584529091528120805461ffff1691611b9383612cb9565b91906101000a81548161ffff021916908361ffff160217905550505b6001600160401b03831660009081526005602090815260408083208d84528252808320858452825280832061ffff8c1684529091529020611bf08282612b69565b50897f52a608b3303a48862d07a73d82fa221318c0027fbbcfb1b2329bface3f19ff2b8a8a84604051611c2593929190612cd0565b60405180910390a250505050505050505050565b60c08101516020820181905281515111611c505750565b6000611c6482600001518360200151611f64565b8260200151611c739190612cff565b8251909150611c829082612057565b61ffff166040830152611c96600282612cff565b8251909150611ca59082612057565b61ffff166060830152611cb9600282612cff565b8251909150611cc8908261207f565b63ffffffff166080830152611cde600482612cff565b8251909150600090611cf09083612057565b61ffff169050611d01600283612cff565b60a084018190529150611d148183612cff565b60c0909301929092525050565b60008151601414611d3157600080fd5b5060200151600160601b900490565b6060816001600160401b03811115611d5a57611d5a61258b565b604051908082528060200260200182016040528015611d8d57816020015b6060815260200190600190039081611d785790505b50905060005b82811015611f07578415611e4f576000848483818110611db557611db5612b19565b9050602002810190611dc79190612d12565b611dd691602491600491612d58565b611ddf91612d82565b9050858114611e4d5760405162461bcd60e51b815260206004820152603460248201527f6d756c746963616c6c3a20416c6c207265636f726473206d7573742068617665604482015273040c240dac2e8c6d0d2dcce40dcc2dacad0c2e6d60631b60648201526084016111fc565b505b60008030868685818110611e6557611e65612b19565b9050602002810190611e779190612d12565b604051611e85929190612967565b600060405180830381855af49150503d8060008114611ec0576040519150601f19603f3d011682016040523d82523d6000602084013e611ec5565b606091505b509150915081611ed457600080fd5b80848481518110611ee757611ee7612b19565b602002602001018190525050508080611eff90612da0565b915050611d93565b509392505050565b604080516014808252818301909252606091602082018180368337505050600160601b9290920260208301525090565b60006001600160e01b0319821663c869023360e01b14806105805750610580826120a9565b6000815b83518110611f7857611f78612db9565b6000611f8485836120ce565b60ff169050611f94816001612cff565b611f9e9083612cff565b915080600003611fae5750611fb4565b50611f68565b6115478382612954565b8251606090611fcd8385612cff565b1115611fd857600080fd5b6000826001600160401b03811115611ff257611ff261258b565b6040519080825280601f01601f19166020018201604052801561201c576020820181803683370190505b50905060208082019086860101610aa18282876120f2565b6000612041848484612148565b61204c878785612148565b149695505050505050565b8151600090612067836002612cff565b111561207257600080fd5b50016002015161ffff1690565b815160009061208f836004612cff565b111561209a57600080fd5b50016004015163ffffffff1690565b60006001600160e01b0319821663691f343160e01b148061058057506105808261216c565b60008282815181106120e2576120e2612b19565b016020015160f81c905092915050565b6020811061212a5781518352612109602084612cff565b9250612116602083612cff565b9150612123602082612954565b90506120f2565b905182516020929092036101000a6000190180199091169116179052565b82516000906121578385612cff565b111561216257600080fd5b5091016020012090565b60006001600160e01b031982166304928c6760e21b148061058057506105808260006001600160e01b0319821663547d2b4160e11b14806121bd57506001600160e01b03198216635c98042b60e01b145b8061058057506105808260006001600160e01b0319821663bc1c58d160e01b148061058057506105808260006001600160e01b03198216631d9dabef60e11b148061221857506001600160e01b031982166378e5bf0360e11b145b8061058057506105808260006001600160e01b03198216631101d5ab60e11b148061058057506105808260006001600160e01b0319821663d700ff3360e01b148061058057506105808260006001600160e01b03198216634fbf043360e01b148061058057506301ffc9a760e01b6001600160e01b0319831614610580565b5080546122a390612977565b6000825580601f106122b3575050565b601f0160209004906000526020600020908101906122d191906122d4565b50565b5b808211156122e957600081556001016122d5565b5090565b80356001600160e01b03198116811461230557600080fd5b919050565b60006020828403121561231c57600080fd5b610dc3826122ed565b60008083601f84011261233757600080fd5b5081356001600160401b0381111561234e57600080fd5b602083019150836020828501011115610bdb57600080fd5b60008060006040848603121561237b57600080fd5b8335925060208401356001600160401b0381111561239857600080fd5b6123a486828701612325565b9497909650939450505050565b6000806000806000606086880312156123c957600080fd5b8535945060208601356001600160401b03808211156123e757600080fd5b6123f389838a01612325565b9096509450604088013591508082111561240c57600080fd5b5061241988828901612325565b969995985093965092949392505050565b6000806040838503121561243d57600080fd5b8235915061244d602084016122ed565b90509250929050565b6000806040838503121561246957600080fd5b50508035926020909101359150565b60005b8381101561249357818101518382015260200161247b565b50506000910152565b600081518084526124b4816020860160208601612478565b601f01601f19169290920160200192915050565b828152604060208201526000611547604083018461249c565b6000806000606084860312156124f657600080fd5b505081359360208301359350604090920135919050565b60006020828403121561251f57600080fd5b5035919050565b602081526000610dc3602083018461249c565b6000806000806060858703121561254f57600080fd5b843593506020850135925060408501356001600160401b0381111561257357600080fd5b61257f87828801612325565b95989497509550505050565b634e487b7160e01b600052604160045260246000fd5b6000806000606084860312156125b657600080fd5b833592506020840135915060408401356001600160401b03808211156125db57600080fd5b818601915086601f8301126125ef57600080fd5b8135818111156126015761260161258b565b604051601f8201601f19908116603f011681019083821181831017156126295761262961258b565b8160405282815289602084870101111561264257600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6001600160a01b03811681146122d157600080fd5b8035801515811461230557600080fd5b6000806040838503121561269c57600080fd5b82356126a781612664565b915061244d60208401612679565b6000806000606084860312156126ca57600080fd5b8335925060208401356126dc81612664565b91506126ea60408501612679565b90509250925092565b60008060006060848603121561270857600080fd5b8335925060208401359150604084013561ffff8116811461272857600080fd5b809150509250925092565b60008060006060848603121561274857600080fd5b833561275381612664565b925060208401359150604084013561272881612664565b60008083601f84011261277c57600080fd5b5081356001600160401b0381111561279357600080fd5b6020830191508360208260051b8501011115610bdb57600080fd5b600080602083850312156127c157600080fd5b82356001600160401b038111156127d757600080fd5b6127e38582860161276a565b90969095509350505050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b8281101561284457603f1988860301845261283285835161249c565b94509285019290850190600101612816565b5092979650505050505050565b6000806040838503121561286457600080fd5b82359150602083013561287681612664565b809150509250929050565b60008060006040848603121561289657600080fd5b8335925060208401356001600160401b038111156128b357600080fd5b6123a48682870161276a565b6000806000606084860312156128d457600080fd5b833592506128e4602085016122ed565b9150604084013561272881612664565b6000806040838503121561290757600080fd5b823561291281612664565b9150602083013561287681612664565b60008251612934818460208701612478565b9190910192915050565b634e487b7160e01b600052601160045260246000fd5b818103818111156105805761058061293e565b8183823760009101908152919050565b600181811c9082168061298b57607f821691505b6020821081036129ab57634e487b7160e01b600052602260045260246000fd5b50919050565b601f82111561153557600081815260208120601f850160051c810160208610156129d85750805b601f850160051c820191505b818110156129f7578281556001016129e4565b505050505050565b6001600160401b03831115612a1657612a1661258b565b612a2a83612a248354612977565b836129b1565b6000601f841160018114612a5e5760008515612a465750838201355b600019600387901b1c1916600186901b17835561118f565b600083815260209020601f19861690835b82811015612a8f5786850135825560209485019460019092019101612a6f565b5086821015612aac5760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b604081526000612afb604083018688612abe565b8281036020840152612b0e818587612abe565b979650505050505050565b634e487b7160e01b600052603260045260246000fd5b602081526000611547602083018486612abe565b60006001600160401b03808316818103612b5f57612b5f61293e565b6001019392505050565b81516001600160401b03811115612b8257612b8261258b565b612b9681612b908454612977565b846129b1565b602080601f831160018114612bcb5760008415612bb35750858301515b600019600386901b1c1916600185901b1785556129f7565b600085815260208120601f198616915b82811015612bfa57888601518255948401946001909101908401612bdb565b5085821015612c185787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b604081526000612c3b604083018661249c565b8281036020840152612c4e818587612abe565b9695505050505050565b600060208284031215612c6a57600080fd5b8151610dc381612664565b600061ffff821680612c8957612c8961293e565b6000190192915050565b604081526000612ca6604083018561249c565b905061ffff831660208301529392505050565b600061ffff808316818103612b5f57612b5f61293e565b606081526000612ce3606083018661249c565b61ffff851660208401528281036040840152612c4e818561249c565b808201808211156105805761058061293e565b6000808335601e19843603018112612d2957600080fd5b8301803591506001600160401b03821115612d4357600080fd5b602001915036819003821315610bdb57600080fd5b60008085851115612d6857600080fd5b83861115612d7557600080fd5b5050820193919092039150565b8035602083101561058057600019602084900360031b1b1692915050565b600060018201612db257612db261293e565b5060010190565b634e487b7160e01b600052600160045260246000fdfea164736f6c6343000811000a"; -const isSuperArgs = (xs) => xs.length > 1; -class PublicResolver__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(_ens, wrapperAddress, _trustedETHController, _trustedReverseRegistrar, overrides) { - return super.getDeployTransaction(_ens, wrapperAddress, _trustedETHController, _trustedReverseRegistrar, overrides || {}); - } - deploy(_ens, wrapperAddress, _trustedETHController, _trustedReverseRegistrar, overrides) { - return super.deploy(_ens, wrapperAddress, _trustedETHController, _trustedReverseRegistrar, overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.PublicResolver__factory = PublicResolver__factory; -PublicResolver__factory.bytecode = _bytecode; -PublicResolver__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase__factory.d.ts deleted file mode 100644 index c189f052..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase__factory.d.ts +++ /dev/null @@ -1,61 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { ResolverBase, ResolverBaseInterface } from "../../../../../@ensdomains/ens-contracts/contracts/resolvers/ResolverBase"; -export declare class ResolverBase__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "uint64"; - readonly name: "newVersion"; - readonly type: "uint64"; - }]; - readonly name: "VersionChanged"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "clearRecords"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly name: "recordVersions"; - readonly outputs: readonly [{ - readonly internalType: "uint64"; - readonly name: ""; - readonly type: "uint64"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceID"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): ResolverBaseInterface; - static connect(address: string, runner?: ContractRunner | null): ResolverBase; -} -//# sourceMappingURL=ResolverBase__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase__factory.d.ts.map deleted file mode 100644 index 5926aa5e..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ResolverBase__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,YAAY,EACZ,qBAAqB,EACtB,MAAM,2EAA2E,CAAC;AA2EnF,qBAAa,qBAAqB;IAChC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,qBAAqB;IAG/C,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,YAAY;CAGhB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase__factory.js deleted file mode 100644 index e11da9b0..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase__factory.js +++ /dev/null @@ -1,86 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ResolverBase__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "uint64", - name: "newVersion", - type: "uint64", - }, - ], - name: "VersionChanged", - type: "event", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "clearRecords", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - name: "recordVersions", - outputs: [ - { - internalType: "uint64", - name: "", - type: "uint64", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceID", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class ResolverBase__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.ResolverBase__factory = ResolverBase__factory; -ResolverBase__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/Resolver__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/Resolver__factory.d.ts deleted file mode 100644 index 62425415..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/Resolver__factory.d.ts +++ /dev/null @@ -1,735 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { Resolver, ResolverInterface } from "../../../../../@ensdomains/ens-contracts/contracts/resolvers/Resolver"; -export declare class Resolver__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "contentType"; - readonly type: "uint256"; - }]; - readonly name: "ABIChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "address"; - readonly name: "a"; - readonly type: "address"; - }]; - readonly name: "AddrChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "coinType"; - readonly type: "uint256"; - }, { - readonly indexed: false; - readonly internalType: "bytes"; - readonly name: "newAddress"; - readonly type: "bytes"; - }]; - readonly name: "AddressChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "bytes32"; - readonly name: "hash"; - readonly type: "bytes32"; - }]; - readonly name: "ContentChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "bytes"; - readonly name: "hash"; - readonly type: "bytes"; - }]; - readonly name: "ContenthashChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "bytes"; - readonly name: "name"; - readonly type: "bytes"; - }, { - readonly indexed: false; - readonly internalType: "uint16"; - readonly name: "resource"; - readonly type: "uint16"; - }, { - readonly indexed: false; - readonly internalType: "bytes"; - readonly name: "record"; - readonly type: "bytes"; - }]; - readonly name: "DNSRecordChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "bytes"; - readonly name: "name"; - readonly type: "bytes"; - }, { - readonly indexed: false; - readonly internalType: "uint16"; - readonly name: "resource"; - readonly type: "uint16"; - }]; - readonly name: "DNSRecordDeleted"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "bytes"; - readonly name: "lastzonehash"; - readonly type: "bytes"; - }, { - readonly indexed: false; - readonly internalType: "bytes"; - readonly name: "zonehash"; - readonly type: "bytes"; - }]; - readonly name: "DNSZonehashChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "bytes4"; - readonly name: "interfaceID"; - readonly type: "bytes4"; - }, { - readonly indexed: false; - readonly internalType: "address"; - readonly name: "implementer"; - readonly type: "address"; - }]; - readonly name: "InterfaceChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "string"; - readonly name: "name"; - readonly type: "string"; - }]; - readonly name: "NameChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "bytes32"; - readonly name: "x"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "bytes32"; - readonly name: "y"; - readonly type: "bytes32"; - }]; - readonly name: "PubkeyChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "string"; - readonly name: "indexedKey"; - readonly type: "string"; - }, { - readonly indexed: false; - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }, { - readonly indexed: false; - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }]; - readonly name: "TextChanged"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "contentTypes"; - readonly type: "uint256"; - }]; - readonly name: "ABI"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "addr"; - readonly outputs: readonly [{ - readonly internalType: "address payable"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "coinType"; - readonly type: "uint256"; - }]; - readonly name: "addr"; - readonly outputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "delegate"; - readonly type: "address"; - }, { - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "approve"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "content"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "contenthash"; - readonly outputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes32"; - readonly name: "name"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint16"; - readonly name: "resource"; - readonly type: "uint16"; - }]; - readonly name: "dnsRecord"; - readonly outputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes4"; - readonly name: "interfaceID"; - readonly type: "bytes4"; - }]; - readonly name: "interfaceImplementer"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "delegate"; - readonly type: "address"; - }]; - readonly name: "isApprovedFor"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly name: "isApprovedForAll"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes[]"; - readonly name: "data"; - readonly type: "bytes[]"; - }]; - readonly name: "multicall"; - readonly outputs: readonly [{ - readonly internalType: "bytes[]"; - readonly name: "results"; - readonly type: "bytes[]"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "nodehash"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes[]"; - readonly name: "data"; - readonly type: "bytes[]"; - }]; - readonly name: "multicallWithNodeCheck"; - readonly outputs: readonly [{ - readonly internalType: "bytes[]"; - readonly name: "results"; - readonly type: "bytes[]"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "multihash"; - readonly outputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "name"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "pubkey"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "x"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes32"; - readonly name: "y"; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes"; - readonly name: "name"; - readonly type: "bytes"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "resolve"; - readonly outputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "contentType"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "setABI"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "coinType"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "a"; - readonly type: "bytes"; - }]; - readonly name: "setAddr"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }]; - readonly name: "setAddr"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }, { - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly name: "setApprovalForAll"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes32"; - readonly name: "hash"; - readonly type: "bytes32"; - }]; - readonly name: "setContent"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes"; - readonly name: "hash"; - readonly type: "bytes"; - }]; - readonly name: "setContenthash"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "setDnsrr"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes4"; - readonly name: "interfaceID"; - readonly type: "bytes4"; - }, { - readonly internalType: "address"; - readonly name: "implementer"; - readonly type: "address"; - }]; - readonly name: "setInterface"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes"; - readonly name: "hash"; - readonly type: "bytes"; - }]; - readonly name: "setMultihash"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "string"; - readonly name: "_name"; - readonly type: "string"; - }]; - readonly name: "setName"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes32"; - readonly name: "x"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes32"; - readonly name: "y"; - readonly type: "bytes32"; - }]; - readonly name: "setPubkey"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }, { - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }]; - readonly name: "setText"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }]; - readonly name: "text"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "zonehash"; - readonly outputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): ResolverInterface; - static connect(address: string, runner?: ContractRunner | null): Resolver; -} -//# sourceMappingURL=Resolver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/Resolver__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/Resolver__factory.d.ts.map deleted file mode 100644 index b9a81929..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/Resolver__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Resolver__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/resolvers/Resolver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,QAAQ,EACR,iBAAiB,EAClB,MAAM,uEAAuE,CAAC;AAk7B/E,qBAAa,iBAAiB;IAC5B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,iBAAiB;IAG3C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,QAAQ;CAG1E"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/Resolver__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/Resolver__factory.js deleted file mode 100644 index 47f2f876..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/Resolver__factory.js +++ /dev/null @@ -1,957 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.Resolver__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: true, - internalType: "uint256", - name: "contentType", - type: "uint256", - }, - ], - name: "ABIChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "address", - name: "a", - type: "address", - }, - ], - name: "AddrChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "uint256", - name: "coinType", - type: "uint256", - }, - { - indexed: false, - internalType: "bytes", - name: "newAddress", - type: "bytes", - }, - ], - name: "AddressChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "bytes32", - name: "hash", - type: "bytes32", - }, - ], - name: "ContentChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "bytes", - name: "hash", - type: "bytes", - }, - ], - name: "ContenthashChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "bytes", - name: "name", - type: "bytes", - }, - { - indexed: false, - internalType: "uint16", - name: "resource", - type: "uint16", - }, - { - indexed: false, - internalType: "bytes", - name: "record", - type: "bytes", - }, - ], - name: "DNSRecordChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "bytes", - name: "name", - type: "bytes", - }, - { - indexed: false, - internalType: "uint16", - name: "resource", - type: "uint16", - }, - ], - name: "DNSRecordDeleted", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "bytes", - name: "lastzonehash", - type: "bytes", - }, - { - indexed: false, - internalType: "bytes", - name: "zonehash", - type: "bytes", - }, - ], - name: "DNSZonehashChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: true, - internalType: "bytes4", - name: "interfaceID", - type: "bytes4", - }, - { - indexed: false, - internalType: "address", - name: "implementer", - type: "address", - }, - ], - name: "InterfaceChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "string", - name: "name", - type: "string", - }, - ], - name: "NameChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "bytes32", - name: "x", - type: "bytes32", - }, - { - indexed: false, - internalType: "bytes32", - name: "y", - type: "bytes32", - }, - ], - name: "PubkeyChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: true, - internalType: "string", - name: "indexedKey", - type: "string", - }, - { - indexed: false, - internalType: "string", - name: "key", - type: "string", - }, - { - indexed: false, - internalType: "string", - name: "value", - type: "string", - }, - ], - name: "TextChanged", - type: "event", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "uint256", - name: "contentTypes", - type: "uint256", - }, - ], - name: "ABI", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "addr", - outputs: [ - { - internalType: "address payable", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "uint256", - name: "coinType", - type: "uint256", - }, - ], - name: "addr", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "address", - name: "delegate", - type: "address", - }, - { - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "approve", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "content", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "contenthash", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "name", - type: "bytes32", - }, - { - internalType: "uint16", - name: "resource", - type: "uint16", - }, - ], - name: "dnsRecord", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "bytes4", - name: "interfaceID", - type: "bytes4", - }, - ], - name: "interfaceImplementer", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "address", - name: "delegate", - type: "address", - }, - ], - name: "isApprovedFor", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - name: "isApprovedForAll", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes[]", - name: "data", - type: "bytes[]", - }, - ], - name: "multicall", - outputs: [ - { - internalType: "bytes[]", - name: "results", - type: "bytes[]", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "nodehash", - type: "bytes32", - }, - { - internalType: "bytes[]", - name: "data", - type: "bytes[]", - }, - ], - name: "multicallWithNodeCheck", - outputs: [ - { - internalType: "bytes[]", - name: "results", - type: "bytes[]", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "multihash", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "name", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "pubkey", - outputs: [ - { - internalType: "bytes32", - name: "x", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "y", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes", - name: "name", - type: "bytes", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "resolve", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "uint256", - name: "contentType", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "setABI", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "uint256", - name: "coinType", - type: "uint256", - }, - { - internalType: "bytes", - name: "a", - type: "bytes", - }, - ], - name: "setAddr", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "address", - name: "addr", - type: "address", - }, - ], - name: "setAddr", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - name: "setApprovalForAll", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "hash", - type: "bytes32", - }, - ], - name: "setContent", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "bytes", - name: "hash", - type: "bytes", - }, - ], - name: "setContenthash", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "setDnsrr", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "bytes4", - name: "interfaceID", - type: "bytes4", - }, - { - internalType: "address", - name: "implementer", - type: "address", - }, - ], - name: "setInterface", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "bytes", - name: "hash", - type: "bytes", - }, - ], - name: "setMultihash", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "string", - name: "_name", - type: "string", - }, - ], - name: "setName", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "x", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "y", - type: "bytes32", - }, - ], - name: "setPubkey", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "string", - name: "key", - type: "string", - }, - { - internalType: "string", - name: "value", - type: "string", - }, - ], - name: "setText", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "string", - name: "key", - type: "string", - }, - ], - name: "text", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "zonehash", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class Resolver__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.Resolver__factory = Resolver__factory; -Resolver__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/index.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/index.d.ts deleted file mode 100644 index ae7a72db..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/index.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -export * as profiles from "./profiles"; -export { IMulticallable__factory } from "./IMulticallable__factory"; -export { Multicallable__factory } from "./Multicallable__factory"; -export { PublicResolver__factory } from "./PublicResolver__factory"; -export { Resolver__factory } from "./Resolver__factory"; -export { ResolverBase__factory } from "./ResolverBase__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/index.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/index.d.ts.map deleted file mode 100644 index 6333599c..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/resolvers/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC;AACvC,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/index.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/index.js deleted file mode 100644 index 3f857cca..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/index.js +++ /dev/null @@ -1,37 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ResolverBase__factory = exports.Resolver__factory = exports.PublicResolver__factory = exports.Multicallable__factory = exports.IMulticallable__factory = exports.profiles = void 0; -exports.profiles = __importStar(require("./profiles")); -var IMulticallable__factory_1 = require("./IMulticallable__factory"); -Object.defineProperty(exports, "IMulticallable__factory", { enumerable: true, get: function () { return IMulticallable__factory_1.IMulticallable__factory; } }); -var Multicallable__factory_1 = require("./Multicallable__factory"); -Object.defineProperty(exports, "Multicallable__factory", { enumerable: true, get: function () { return Multicallable__factory_1.Multicallable__factory; } }); -var PublicResolver__factory_1 = require("./PublicResolver__factory"); -Object.defineProperty(exports, "PublicResolver__factory", { enumerable: true, get: function () { return PublicResolver__factory_1.PublicResolver__factory; } }); -var Resolver__factory_1 = require("./Resolver__factory"); -Object.defineProperty(exports, "Resolver__factory", { enumerable: true, get: function () { return Resolver__factory_1.Resolver__factory; } }); -var ResolverBase__factory_1 = require("./ResolverBase__factory"); -Object.defineProperty(exports, "ResolverBase__factory", { enumerable: true, get: function () { return ResolverBase__factory_1.ResolverBase__factory; } }); diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver__factory.d.ts deleted file mode 100644 index 0bab9735..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver__factory.d.ts +++ /dev/null @@ -1,116 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { ABIResolver, ABIResolverInterface } from "../../../../../../@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver"; -export declare class ABIResolver__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "contentType"; - readonly type: "uint256"; - }]; - readonly name: "ABIChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "uint64"; - readonly name: "newVersion"; - readonly type: "uint64"; - }]; - readonly name: "VersionChanged"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "contentTypes"; - readonly type: "uint256"; - }]; - readonly name: "ABI"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "clearRecords"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly name: "recordVersions"; - readonly outputs: readonly [{ - readonly internalType: "uint64"; - readonly name: ""; - readonly type: "uint64"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "contentType"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "setABI"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceID"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): ABIResolverInterface; - static connect(address: string, runner?: ContractRunner | null): ABIResolver; -} -//# sourceMappingURL=ABIResolver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver__factory.d.ts.map deleted file mode 100644 index 9f5ef108..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ABIResolver__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,WAAW,EACX,oBAAoB,EACrB,MAAM,sFAAsF,CAAC;AAkJ9F,qBAAa,oBAAoB;IAC/B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,oBAAoB;IAG9C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,WAAW;CAG7E"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver__factory.js deleted file mode 100644 index 3d8e9059..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver__factory.js +++ /dev/null @@ -1,157 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ABIResolver__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: true, - internalType: "uint256", - name: "contentType", - type: "uint256", - }, - ], - name: "ABIChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "uint64", - name: "newVersion", - type: "uint64", - }, - ], - name: "VersionChanged", - type: "event", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "uint256", - name: "contentTypes", - type: "uint256", - }, - ], - name: "ABI", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "clearRecords", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - name: "recordVersions", - outputs: [ - { - internalType: "uint64", - name: "", - type: "uint64", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "uint256", - name: "contentType", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "setABI", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceID", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class ABIResolver__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.ABIResolver__factory = ABIResolver__factory; -ABIResolver__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver__factory.d.ts deleted file mode 100644 index 5f6f8039..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver__factory.d.ts +++ /dev/null @@ -1,160 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { AddrResolver, AddrResolverInterface } from "../../../../../../@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver"; -export declare class AddrResolver__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "address"; - readonly name: "a"; - readonly type: "address"; - }]; - readonly name: "AddrChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "coinType"; - readonly type: "uint256"; - }, { - readonly indexed: false; - readonly internalType: "bytes"; - readonly name: "newAddress"; - readonly type: "bytes"; - }]; - readonly name: "AddressChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "uint64"; - readonly name: "newVersion"; - readonly type: "uint64"; - }]; - readonly name: "VersionChanged"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "addr"; - readonly outputs: readonly [{ - readonly internalType: "address payable"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "coinType"; - readonly type: "uint256"; - }]; - readonly name: "addr"; - readonly outputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "clearRecords"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly name: "recordVersions"; - readonly outputs: readonly [{ - readonly internalType: "uint64"; - readonly name: ""; - readonly type: "uint64"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "coinType"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "a"; - readonly type: "bytes"; - }]; - readonly name: "setAddr"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "a"; - readonly type: "address"; - }]; - readonly name: "setAddr"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceID"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): AddrResolverInterface; - static connect(address: string, runner?: ContractRunner | null): AddrResolver; -} -//# sourceMappingURL=AddrResolver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver__factory.d.ts.map deleted file mode 100644 index 736e9400..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"AddrResolver__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,YAAY,EACZ,qBAAqB,EACtB,MAAM,uFAAuF,CAAC;AA2M/F,qBAAa,qBAAqB;IAChC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,qBAAqB;IAG/C,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,YAAY;CAGhB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver__factory.js deleted file mode 100644 index d23a5c69..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver__factory.js +++ /dev/null @@ -1,214 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.AddrResolver__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "address", - name: "a", - type: "address", - }, - ], - name: "AddrChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "uint256", - name: "coinType", - type: "uint256", - }, - { - indexed: false, - internalType: "bytes", - name: "newAddress", - type: "bytes", - }, - ], - name: "AddressChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "uint64", - name: "newVersion", - type: "uint64", - }, - ], - name: "VersionChanged", - type: "event", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "addr", - outputs: [ - { - internalType: "address payable", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "uint256", - name: "coinType", - type: "uint256", - }, - ], - name: "addr", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "clearRecords", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - name: "recordVersions", - outputs: [ - { - internalType: "uint64", - name: "", - type: "uint64", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "uint256", - name: "coinType", - type: "uint256", - }, - { - internalType: "bytes", - name: "a", - type: "bytes", - }, - ], - name: "setAddr", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "address", - name: "a", - type: "address", - }, - ], - name: "setAddr", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceID", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class AddrResolver__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.AddrResolver__factory = AddrResolver__factory; -AddrResolver__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver__factory.d.ts deleted file mode 100644 index 70cd78af..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver__factory.d.ts +++ /dev/null @@ -1,104 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { ContentHashResolver, ContentHashResolverInterface } from "../../../../../../@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver"; -export declare class ContentHashResolver__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "bytes"; - readonly name: "hash"; - readonly type: "bytes"; - }]; - readonly name: "ContenthashChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "uint64"; - readonly name: "newVersion"; - readonly type: "uint64"; - }]; - readonly name: "VersionChanged"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "clearRecords"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "contenthash"; - readonly outputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly name: "recordVersions"; - readonly outputs: readonly [{ - readonly internalType: "uint64"; - readonly name: ""; - readonly type: "uint64"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes"; - readonly name: "hash"; - readonly type: "bytes"; - }]; - readonly name: "setContenthash"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceID"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): ContentHashResolverInterface; - static connect(address: string, runner?: ContractRunner | null): ContentHashResolver; -} -//# sourceMappingURL=ContentHashResolver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver__factory.d.ts.map deleted file mode 100644 index aefc5428..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ContentHashResolver__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,mBAAmB,EACnB,4BAA4B,EAC7B,MAAM,8FAA8F,CAAC;AAmItG,qBAAa,4BAA4B;IACvC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,4BAA4B;IAGtD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,mBAAmB;CAOvB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver__factory.js deleted file mode 100644 index 7712c9ba..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver__factory.js +++ /dev/null @@ -1,142 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ContentHashResolver__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "bytes", - name: "hash", - type: "bytes", - }, - ], - name: "ContenthashChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "uint64", - name: "newVersion", - type: "uint64", - }, - ], - name: "VersionChanged", - type: "event", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "clearRecords", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "contenthash", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - name: "recordVersions", - outputs: [ - { - internalType: "uint64", - name: "", - type: "uint64", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "bytes", - name: "hash", - type: "bytes", - }, - ], - name: "setContenthash", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceID", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class ContentHashResolver__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.ContentHashResolver__factory = ContentHashResolver__factory; -ContentHashResolver__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver__factory.d.ts deleted file mode 100644 index e938abeb..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver__factory.d.ts +++ /dev/null @@ -1,208 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { DNSResolver, DNSResolverInterface } from "../../../../../../@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver"; -export declare class DNSResolver__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "bytes"; - readonly name: "name"; - readonly type: "bytes"; - }, { - readonly indexed: false; - readonly internalType: "uint16"; - readonly name: "resource"; - readonly type: "uint16"; - }, { - readonly indexed: false; - readonly internalType: "bytes"; - readonly name: "record"; - readonly type: "bytes"; - }]; - readonly name: "DNSRecordChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "bytes"; - readonly name: "name"; - readonly type: "bytes"; - }, { - readonly indexed: false; - readonly internalType: "uint16"; - readonly name: "resource"; - readonly type: "uint16"; - }]; - readonly name: "DNSRecordDeleted"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "bytes"; - readonly name: "lastzonehash"; - readonly type: "bytes"; - }, { - readonly indexed: false; - readonly internalType: "bytes"; - readonly name: "zonehash"; - readonly type: "bytes"; - }]; - readonly name: "DNSZonehashChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "uint64"; - readonly name: "newVersion"; - readonly type: "uint64"; - }]; - readonly name: "VersionChanged"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "clearRecords"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes32"; - readonly name: "name"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint16"; - readonly name: "resource"; - readonly type: "uint16"; - }]; - readonly name: "dnsRecord"; - readonly outputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes32"; - readonly name: "name"; - readonly type: "bytes32"; - }]; - readonly name: "hasDNSRecords"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly name: "recordVersions"; - readonly outputs: readonly [{ - readonly internalType: "uint64"; - readonly name: ""; - readonly type: "uint64"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "setDNSRecords"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes"; - readonly name: "hash"; - readonly type: "bytes"; - }]; - readonly name: "setZonehash"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceID"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "zonehash"; - readonly outputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): DNSResolverInterface; - static connect(address: string, runner?: ContractRunner | null): DNSResolver; -} -//# sourceMappingURL=DNSResolver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver__factory.d.ts.map deleted file mode 100644 index 4019bb59..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"DNSResolver__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,WAAW,EACX,oBAAoB,EACrB,MAAM,sFAAsF,CAAC;AAwQ9F,qBAAa,oBAAoB;IAC/B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,oBAAoB;IAG9C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,WAAW;CAG7E"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver__factory.js deleted file mode 100644 index 99a5b6ac..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver__factory.js +++ /dev/null @@ -1,275 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.DNSResolver__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "bytes", - name: "name", - type: "bytes", - }, - { - indexed: false, - internalType: "uint16", - name: "resource", - type: "uint16", - }, - { - indexed: false, - internalType: "bytes", - name: "record", - type: "bytes", - }, - ], - name: "DNSRecordChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "bytes", - name: "name", - type: "bytes", - }, - { - indexed: false, - internalType: "uint16", - name: "resource", - type: "uint16", - }, - ], - name: "DNSRecordDeleted", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "bytes", - name: "lastzonehash", - type: "bytes", - }, - { - indexed: false, - internalType: "bytes", - name: "zonehash", - type: "bytes", - }, - ], - name: "DNSZonehashChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "uint64", - name: "newVersion", - type: "uint64", - }, - ], - name: "VersionChanged", - type: "event", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "clearRecords", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "name", - type: "bytes32", - }, - { - internalType: "uint16", - name: "resource", - type: "uint16", - }, - ], - name: "dnsRecord", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "name", - type: "bytes32", - }, - ], - name: "hasDNSRecords", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - name: "recordVersions", - outputs: [ - { - internalType: "uint64", - name: "", - type: "uint64", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "setDNSRecords", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "bytes", - name: "hash", - type: "bytes", - }, - ], - name: "setZonehash", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceID", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "zonehash", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class DNSResolver__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.DNSResolver__factory = DNSResolver__factory; -DNSResolver__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver__factory.d.ts deleted file mode 100644 index c85798a7..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver__factory.d.ts +++ /dev/null @@ -1,45 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IABIResolver, IABIResolverInterface } from "../../../../../../@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver"; -export declare class IABIResolver__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "contentType"; - readonly type: "uint256"; - }]; - readonly name: "ABIChanged"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "contentTypes"; - readonly type: "uint256"; - }]; - readonly name: "ABI"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): IABIResolverInterface; - static connect(address: string, runner?: ContractRunner | null): IABIResolver; -} -//# sourceMappingURL=IABIResolver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver__factory.d.ts.map deleted file mode 100644 index 9a5f1ce2..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IABIResolver__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,YAAY,EACZ,qBAAqB,EACtB,MAAM,uFAAuF,CAAC;AAqD/F,qBAAa,qBAAqB;IAChC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,qBAAqB;IAG/C,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,YAAY;CAGhB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver__factory.js deleted file mode 100644 index e56c7d97..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver__factory.js +++ /dev/null @@ -1,64 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IABIResolver__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: true, - internalType: "uint256", - name: "contentType", - type: "uint256", - }, - ], - name: "ABIChanged", - type: "event", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "uint256", - name: "contentTypes", - type: "uint256", - }, - ], - name: "ABI", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class IABIResolver__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IABIResolver__factory = IABIResolver__factory; -IABIResolver__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver__factory.d.ts deleted file mode 100644 index c902bc33..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver__factory.d.ts +++ /dev/null @@ -1,37 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IAddrResolver, IAddrResolverInterface } from "../../../../../../@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver"; -export declare class IAddrResolver__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "address"; - readonly name: "a"; - readonly type: "address"; - }]; - readonly name: "AddrChanged"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "addr"; - readonly outputs: readonly [{ - readonly internalType: "address payable"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): IAddrResolverInterface; - static connect(address: string, runner?: ContractRunner | null): IAddrResolver; -} -//# sourceMappingURL=IAddrResolver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver__factory.d.ts.map deleted file mode 100644 index 4b96ac20..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IAddrResolver__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,aAAa,EACb,sBAAsB,EACvB,MAAM,wFAAwF,CAAC;AA2ChG,qBAAa,sBAAsB;IACjC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,sBAAsB;IAGhD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,aAAa;CAGjB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver__factory.js deleted file mode 100644 index 69e407c9..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver__factory.js +++ /dev/null @@ -1,54 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IAddrResolver__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "address", - name: "a", - type: "address", - }, - ], - name: "AddrChanged", - type: "event", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "addr", - outputs: [ - { - internalType: "address payable", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class IAddrResolver__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IAddrResolver__factory = IAddrResolver__factory; -IAddrResolver__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver__factory.d.ts deleted file mode 100644 index 9bdb3327..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver__factory.d.ts +++ /dev/null @@ -1,46 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IAddressResolver, IAddressResolverInterface } from "../../../../../../@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver"; -export declare class IAddressResolver__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "coinType"; - readonly type: "uint256"; - }, { - readonly indexed: false; - readonly internalType: "bytes"; - readonly name: "newAddress"; - readonly type: "bytes"; - }]; - readonly name: "AddressChanged"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "coinType"; - readonly type: "uint256"; - }]; - readonly name: "addr"; - readonly outputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): IAddressResolverInterface; - static connect(address: string, runner?: ContractRunner | null): IAddressResolver; -} -//# sourceMappingURL=IAddressResolver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver__factory.d.ts.map deleted file mode 100644 index bb2a9529..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IAddressResolver__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,gBAAgB,EAChB,yBAAyB,EAC1B,MAAM,2FAA2F,CAAC;AAsDnG,qBAAa,yBAAyB;IACpC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,yBAAyB;IAGnD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,gBAAgB;CAGpB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver__factory.js deleted file mode 100644 index cacf6eff..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver__factory.js +++ /dev/null @@ -1,65 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IAddressResolver__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "uint256", - name: "coinType", - type: "uint256", - }, - { - indexed: false, - internalType: "bytes", - name: "newAddress", - type: "bytes", - }, - ], - name: "AddressChanged", - type: "event", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "uint256", - name: "coinType", - type: "uint256", - }, - ], - name: "addr", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class IAddressResolver__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IAddressResolver__factory = IAddressResolver__factory; -IAddressResolver__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver__factory.d.ts deleted file mode 100644 index 7769d144..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver__factory.d.ts +++ /dev/null @@ -1,37 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IContentHashResolver, IContentHashResolverInterface } from "../../../../../../@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver"; -export declare class IContentHashResolver__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "bytes"; - readonly name: "hash"; - readonly type: "bytes"; - }]; - readonly name: "ContenthashChanged"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "contenthash"; - readonly outputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): IContentHashResolverInterface; - static connect(address: string, runner?: ContractRunner | null): IContentHashResolver; -} -//# sourceMappingURL=IContentHashResolver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver__factory.d.ts.map deleted file mode 100644 index ec698e76..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IContentHashResolver__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,oBAAoB,EACpB,6BAA6B,EAC9B,MAAM,+FAA+F,CAAC;AA2CvG,qBAAa,6BAA6B;IACxC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,6BAA6B;IAGvD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,oBAAoB;CAOxB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver__factory.js deleted file mode 100644 index 69db9ce5..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver__factory.js +++ /dev/null @@ -1,54 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IContentHashResolver__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "bytes", - name: "hash", - type: "bytes", - }, - ], - name: "ContenthashChanged", - type: "event", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "contenthash", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class IContentHashResolver__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IContentHashResolver__factory = IContentHashResolver__factory; -IContentHashResolver__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver__factory.d.ts deleted file mode 100644 index 52f44558..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver__factory.d.ts +++ /dev/null @@ -1,75 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IDNSRecordResolver, IDNSRecordResolverInterface } from "../../../../../../@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver"; -export declare class IDNSRecordResolver__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "bytes"; - readonly name: "name"; - readonly type: "bytes"; - }, { - readonly indexed: false; - readonly internalType: "uint16"; - readonly name: "resource"; - readonly type: "uint16"; - }, { - readonly indexed: false; - readonly internalType: "bytes"; - readonly name: "record"; - readonly type: "bytes"; - }]; - readonly name: "DNSRecordChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "bytes"; - readonly name: "name"; - readonly type: "bytes"; - }, { - readonly indexed: false; - readonly internalType: "uint16"; - readonly name: "resource"; - readonly type: "uint16"; - }]; - readonly name: "DNSRecordDeleted"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes32"; - readonly name: "name"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint16"; - readonly name: "resource"; - readonly type: "uint16"; - }]; - readonly name: "dnsRecord"; - readonly outputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): IDNSRecordResolverInterface; - static connect(address: string, runner?: ContractRunner | null): IDNSRecordResolver; -} -//# sourceMappingURL=IDNSRecordResolver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver__factory.d.ts.map deleted file mode 100644 index d7999fd4..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IDNSRecordResolver__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,kBAAkB,EAClB,2BAA2B,EAC5B,MAAM,6FAA6F,CAAC;AA0FrG,qBAAa,2BAA2B;IACtC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,2BAA2B;IAGrD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,kBAAkB;CAGtB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver__factory.js deleted file mode 100644 index c1ab1378..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver__factory.js +++ /dev/null @@ -1,101 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IDNSRecordResolver__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "bytes", - name: "name", - type: "bytes", - }, - { - indexed: false, - internalType: "uint16", - name: "resource", - type: "uint16", - }, - { - indexed: false, - internalType: "bytes", - name: "record", - type: "bytes", - }, - ], - name: "DNSRecordChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "bytes", - name: "name", - type: "bytes", - }, - { - indexed: false, - internalType: "uint16", - name: "resource", - type: "uint16", - }, - ], - name: "DNSRecordDeleted", - type: "event", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "name", - type: "bytes32", - }, - { - internalType: "uint16", - name: "resource", - type: "uint16", - }, - ], - name: "dnsRecord", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class IDNSRecordResolver__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IDNSRecordResolver__factory = IDNSRecordResolver__factory; -IDNSRecordResolver__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver__factory.d.ts deleted file mode 100644 index 043d6a87..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver__factory.d.ts +++ /dev/null @@ -1,42 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IDNSZoneResolver, IDNSZoneResolverInterface } from "../../../../../../@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver"; -export declare class IDNSZoneResolver__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "bytes"; - readonly name: "lastzonehash"; - readonly type: "bytes"; - }, { - readonly indexed: false; - readonly internalType: "bytes"; - readonly name: "zonehash"; - readonly type: "bytes"; - }]; - readonly name: "DNSZonehashChanged"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "zonehash"; - readonly outputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): IDNSZoneResolverInterface; - static connect(address: string, runner?: ContractRunner | null): IDNSZoneResolver; -} -//# sourceMappingURL=IDNSZoneResolver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver__factory.d.ts.map deleted file mode 100644 index d6ee7488..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IDNSZoneResolver__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,gBAAgB,EAChB,yBAAyB,EAC1B,MAAM,2FAA2F,CAAC;AAiDnG,qBAAa,yBAAyB;IACpC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,yBAAyB;IAGnD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,gBAAgB;CAGpB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver__factory.js deleted file mode 100644 index cb5c49d9..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver__factory.js +++ /dev/null @@ -1,60 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IDNSZoneResolver__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "bytes", - name: "lastzonehash", - type: "bytes", - }, - { - indexed: false, - internalType: "bytes", - name: "zonehash", - type: "bytes", - }, - ], - name: "DNSZonehashChanged", - type: "event", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "zonehash", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class IDNSZoneResolver__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IDNSZoneResolver__factory = IDNSZoneResolver__factory; -IDNSZoneResolver__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver__factory.d.ts deleted file mode 100644 index 47e584ed..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver__factory.d.ts +++ /dev/null @@ -1,26 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IExtendedResolver, IExtendedResolverInterface } from "../../../../../../@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver"; -export declare class IExtendedResolver__factory { - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "bytes"; - readonly name: "name"; - readonly type: "bytes"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "resolve"; - readonly outputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): IExtendedResolverInterface; - static connect(address: string, runner?: ContractRunner | null): IExtendedResolver; -} -//# sourceMappingURL=IExtendedResolver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver__factory.d.ts.map deleted file mode 100644 index a659b44f..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IExtendedResolver__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,iBAAiB,EACjB,0BAA0B,EAC3B,MAAM,4FAA4F,CAAC;AA6BpG,qBAAa,0BAA0B;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,0BAA0B;IAGpD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,iBAAiB;CAGrB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver__factory.js deleted file mode 100644 index 015adfd3..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver__factory.js +++ /dev/null @@ -1,40 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IExtendedResolver__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "bytes", - name: "name", - type: "bytes", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "resolve", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class IExtendedResolver__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IExtendedResolver__factory = IExtendedResolver__factory; -IExtendedResolver__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver__factory.d.ts deleted file mode 100644 index dfe36e2c..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver__factory.d.ts +++ /dev/null @@ -1,46 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IInterfaceResolver, IInterfaceResolverInterface } from "../../../../../../@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver"; -export declare class IInterfaceResolver__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "bytes4"; - readonly name: "interfaceID"; - readonly type: "bytes4"; - }, { - readonly indexed: false; - readonly internalType: "address"; - readonly name: "implementer"; - readonly type: "address"; - }]; - readonly name: "InterfaceChanged"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes4"; - readonly name: "interfaceID"; - readonly type: "bytes4"; - }]; - readonly name: "interfaceImplementer"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): IInterfaceResolverInterface; - static connect(address: string, runner?: ContractRunner | null): IInterfaceResolver; -} -//# sourceMappingURL=IInterfaceResolver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver__factory.d.ts.map deleted file mode 100644 index 9254d063..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IInterfaceResolver__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,kBAAkB,EAClB,2BAA2B,EAC5B,MAAM,6FAA6F,CAAC;AAsDrG,qBAAa,2BAA2B;IACtC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,2BAA2B;IAGrD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,kBAAkB;CAGtB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver__factory.js deleted file mode 100644 index 22325100..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver__factory.js +++ /dev/null @@ -1,65 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IInterfaceResolver__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: true, - internalType: "bytes4", - name: "interfaceID", - type: "bytes4", - }, - { - indexed: false, - internalType: "address", - name: "implementer", - type: "address", - }, - ], - name: "InterfaceChanged", - type: "event", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "bytes4", - name: "interfaceID", - type: "bytes4", - }, - ], - name: "interfaceImplementer", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class IInterfaceResolver__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IInterfaceResolver__factory = IInterfaceResolver__factory; -IInterfaceResolver__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver__factory.d.ts deleted file mode 100644 index 0b44fc98..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver__factory.d.ts +++ /dev/null @@ -1,37 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { INameResolver, INameResolverInterface } from "../../../../../../@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver"; -export declare class INameResolver__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "string"; - readonly name: "name"; - readonly type: "string"; - }]; - readonly name: "NameChanged"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "name"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): INameResolverInterface; - static connect(address: string, runner?: ContractRunner | null): INameResolver; -} -//# sourceMappingURL=INameResolver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver__factory.d.ts.map deleted file mode 100644 index 84a3f035..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"INameResolver__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,aAAa,EACb,sBAAsB,EACvB,MAAM,wFAAwF,CAAC;AA2ChG,qBAAa,sBAAsB;IACjC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,sBAAsB;IAGhD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,aAAa;CAGjB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver__factory.js deleted file mode 100644 index 8bf957b9..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver__factory.js +++ /dev/null @@ -1,54 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.INameResolver__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "string", - name: "name", - type: "string", - }, - ], - name: "NameChanged", - type: "event", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "name", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class INameResolver__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.INameResolver__factory = INameResolver__factory; -INameResolver__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver__factory.d.ts deleted file mode 100644 index 69a55f8a..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver__factory.d.ts +++ /dev/null @@ -1,46 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IPubkeyResolver, IPubkeyResolverInterface } from "../../../../../../@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver"; -export declare class IPubkeyResolver__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "bytes32"; - readonly name: "x"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "bytes32"; - readonly name: "y"; - readonly type: "bytes32"; - }]; - readonly name: "PubkeyChanged"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "pubkey"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "x"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes32"; - readonly name: "y"; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): IPubkeyResolverInterface; - static connect(address: string, runner?: ContractRunner | null): IPubkeyResolver; -} -//# sourceMappingURL=IPubkeyResolver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver__factory.d.ts.map deleted file mode 100644 index 3de06933..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IPubkeyResolver__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,eAAe,EACf,wBAAwB,EACzB,MAAM,0FAA0F,CAAC;AAsDlG,qBAAa,wBAAwB;IACnC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,wBAAwB;IAGlD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,eAAe;CAGnB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver__factory.js deleted file mode 100644 index 243f463f..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver__factory.js +++ /dev/null @@ -1,65 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IPubkeyResolver__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "bytes32", - name: "x", - type: "bytes32", - }, - { - indexed: false, - internalType: "bytes32", - name: "y", - type: "bytes32", - }, - ], - name: "PubkeyChanged", - type: "event", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "pubkey", - outputs: [ - { - internalType: "bytes32", - name: "x", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "y", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class IPubkeyResolver__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IPubkeyResolver__factory = IPubkeyResolver__factory; -IPubkeyResolver__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver__factory.d.ts deleted file mode 100644 index 7fa79d52..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver__factory.d.ts +++ /dev/null @@ -1,51 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { ITextResolver, ITextResolverInterface } from "../../../../../../@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver"; -export declare class ITextResolver__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "string"; - readonly name: "indexedKey"; - readonly type: "string"; - }, { - readonly indexed: false; - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }, { - readonly indexed: false; - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }]; - readonly name: "TextChanged"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }]; - readonly name: "text"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): ITextResolverInterface; - static connect(address: string, runner?: ContractRunner | null): ITextResolver; -} -//# sourceMappingURL=ITextResolver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver__factory.d.ts.map deleted file mode 100644 index 7cc2cc09..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ITextResolver__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,aAAa,EACb,sBAAsB,EACvB,MAAM,wFAAwF,CAAC;AA4DhG,qBAAa,sBAAsB;IACjC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,sBAAsB;IAGhD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,aAAa;CAGjB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver__factory.js deleted file mode 100644 index 5e1a065e..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver__factory.js +++ /dev/null @@ -1,71 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ITextResolver__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: true, - internalType: "string", - name: "indexedKey", - type: "string", - }, - { - indexed: false, - internalType: "string", - name: "key", - type: "string", - }, - { - indexed: false, - internalType: "string", - name: "value", - type: "string", - }, - ], - name: "TextChanged", - type: "event", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "string", - name: "key", - type: "string", - }, - ], - name: "text", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class ITextResolver__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.ITextResolver__factory = ITextResolver__factory; -ITextResolver__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver__factory.d.ts deleted file mode 100644 index 9951acda..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver__factory.d.ts +++ /dev/null @@ -1,37 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IVersionableResolver, IVersionableResolverInterface } from "../../../../../../@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver"; -export declare class IVersionableResolver__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "uint64"; - readonly name: "newVersion"; - readonly type: "uint64"; - }]; - readonly name: "VersionChanged"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "recordVersions"; - readonly outputs: readonly [{ - readonly internalType: "uint64"; - readonly name: ""; - readonly type: "uint64"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): IVersionableResolverInterface; - static connect(address: string, runner?: ContractRunner | null): IVersionableResolver; -} -//# sourceMappingURL=IVersionableResolver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver__factory.d.ts.map deleted file mode 100644 index 2e830899..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IVersionableResolver__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,oBAAoB,EACpB,6BAA6B,EAC9B,MAAM,+FAA+F,CAAC;AA2CvG,qBAAa,6BAA6B;IACxC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,6BAA6B;IAGvD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,oBAAoB;CAOxB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver__factory.js deleted file mode 100644 index aca3d06d..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver__factory.js +++ /dev/null @@ -1,54 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IVersionableResolver__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "uint64", - name: "newVersion", - type: "uint64", - }, - ], - name: "VersionChanged", - type: "event", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "recordVersions", - outputs: [ - { - internalType: "uint64", - name: "", - type: "uint64", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class IVersionableResolver__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IVersionableResolver__factory = IVersionableResolver__factory; -IVersionableResolver__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver__factory.d.ts deleted file mode 100644 index d944e79b..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver__factory.d.ts +++ /dev/null @@ -1,216 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { InterfaceResolver, InterfaceResolverInterface } from "../../../../../../@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver"; -export declare class InterfaceResolver__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "address"; - readonly name: "a"; - readonly type: "address"; - }]; - readonly name: "AddrChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "coinType"; - readonly type: "uint256"; - }, { - readonly indexed: false; - readonly internalType: "bytes"; - readonly name: "newAddress"; - readonly type: "bytes"; - }]; - readonly name: "AddressChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "bytes4"; - readonly name: "interfaceID"; - readonly type: "bytes4"; - }, { - readonly indexed: false; - readonly internalType: "address"; - readonly name: "implementer"; - readonly type: "address"; - }]; - readonly name: "InterfaceChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "uint64"; - readonly name: "newVersion"; - readonly type: "uint64"; - }]; - readonly name: "VersionChanged"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "addr"; - readonly outputs: readonly [{ - readonly internalType: "address payable"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "coinType"; - readonly type: "uint256"; - }]; - readonly name: "addr"; - readonly outputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "clearRecords"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes4"; - readonly name: "interfaceID"; - readonly type: "bytes4"; - }]; - readonly name: "interfaceImplementer"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly name: "recordVersions"; - readonly outputs: readonly [{ - readonly internalType: "uint64"; - readonly name: ""; - readonly type: "uint64"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "coinType"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "a"; - readonly type: "bytes"; - }]; - readonly name: "setAddr"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "a"; - readonly type: "address"; - }]; - readonly name: "setAddr"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes4"; - readonly name: "interfaceID"; - readonly type: "bytes4"; - }, { - readonly internalType: "address"; - readonly name: "implementer"; - readonly type: "address"; - }]; - readonly name: "setInterface"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceID"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): InterfaceResolverInterface; - static connect(address: string, runner?: ContractRunner | null): InterfaceResolver; -} -//# sourceMappingURL=InterfaceResolver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver__factory.d.ts.map deleted file mode 100644 index 7896a512..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"InterfaceResolver__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,iBAAiB,EACjB,0BAA0B,EAC3B,MAAM,4FAA4F,CAAC;AAmRpG,qBAAa,0BAA0B;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,0BAA0B;IAGpD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,iBAAiB;CAGrB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver__factory.js deleted file mode 100644 index 86662fa3..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver__factory.js +++ /dev/null @@ -1,286 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.InterfaceResolver__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "address", - name: "a", - type: "address", - }, - ], - name: "AddrChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "uint256", - name: "coinType", - type: "uint256", - }, - { - indexed: false, - internalType: "bytes", - name: "newAddress", - type: "bytes", - }, - ], - name: "AddressChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: true, - internalType: "bytes4", - name: "interfaceID", - type: "bytes4", - }, - { - indexed: false, - internalType: "address", - name: "implementer", - type: "address", - }, - ], - name: "InterfaceChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "uint64", - name: "newVersion", - type: "uint64", - }, - ], - name: "VersionChanged", - type: "event", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "addr", - outputs: [ - { - internalType: "address payable", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "uint256", - name: "coinType", - type: "uint256", - }, - ], - name: "addr", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "clearRecords", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "bytes4", - name: "interfaceID", - type: "bytes4", - }, - ], - name: "interfaceImplementer", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - name: "recordVersions", - outputs: [ - { - internalType: "uint64", - name: "", - type: "uint64", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "uint256", - name: "coinType", - type: "uint256", - }, - { - internalType: "bytes", - name: "a", - type: "bytes", - }, - ], - name: "setAddr", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "address", - name: "a", - type: "address", - }, - ], - name: "setAddr", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "bytes4", - name: "interfaceID", - type: "bytes4", - }, - { - internalType: "address", - name: "implementer", - type: "address", - }, - ], - name: "setInterface", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceID", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class InterfaceResolver__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.InterfaceResolver__factory = InterfaceResolver__factory; -InterfaceResolver__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver__factory.d.ts deleted file mode 100644 index cffd5e34..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver__factory.d.ts +++ /dev/null @@ -1,104 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { NameResolver, NameResolverInterface } from "../../../../../../@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver"; -export declare class NameResolver__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "string"; - readonly name: "name"; - readonly type: "string"; - }]; - readonly name: "NameChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "uint64"; - readonly name: "newVersion"; - readonly type: "uint64"; - }]; - readonly name: "VersionChanged"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "clearRecords"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "name"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly name: "recordVersions"; - readonly outputs: readonly [{ - readonly internalType: "uint64"; - readonly name: ""; - readonly type: "uint64"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "string"; - readonly name: "newName"; - readonly type: "string"; - }]; - readonly name: "setName"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceID"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): NameResolverInterface; - static connect(address: string, runner?: ContractRunner | null): NameResolver; -} -//# sourceMappingURL=NameResolver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver__factory.d.ts.map deleted file mode 100644 index bdcf6cda..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"NameResolver__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,YAAY,EACZ,qBAAqB,EACtB,MAAM,uFAAuF,CAAC;AAmI/F,qBAAa,qBAAqB;IAChC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,qBAAqB;IAG/C,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,YAAY;CAGhB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver__factory.js deleted file mode 100644 index a5632e62..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver__factory.js +++ /dev/null @@ -1,142 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.NameResolver__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "string", - name: "name", - type: "string", - }, - ], - name: "NameChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "uint64", - name: "newVersion", - type: "uint64", - }, - ], - name: "VersionChanged", - type: "event", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "clearRecords", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "name", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - name: "recordVersions", - outputs: [ - { - internalType: "uint64", - name: "", - type: "uint64", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "string", - name: "newName", - type: "string", - }, - ], - name: "setName", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceID", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class NameResolver__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.NameResolver__factory = NameResolver__factory; -NameResolver__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver__factory.d.ts deleted file mode 100644 index 0441f76a..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver__factory.d.ts +++ /dev/null @@ -1,117 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { PubkeyResolver, PubkeyResolverInterface } from "../../../../../../@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver"; -export declare class PubkeyResolver__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "bytes32"; - readonly name: "x"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "bytes32"; - readonly name: "y"; - readonly type: "bytes32"; - }]; - readonly name: "PubkeyChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "uint64"; - readonly name: "newVersion"; - readonly type: "uint64"; - }]; - readonly name: "VersionChanged"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "clearRecords"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "pubkey"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "x"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes32"; - readonly name: "y"; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly name: "recordVersions"; - readonly outputs: readonly [{ - readonly internalType: "uint64"; - readonly name: ""; - readonly type: "uint64"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes32"; - readonly name: "x"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes32"; - readonly name: "y"; - readonly type: "bytes32"; - }]; - readonly name: "setPubkey"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceID"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): PubkeyResolverInterface; - static connect(address: string, runner?: ContractRunner | null): PubkeyResolver; -} -//# sourceMappingURL=PubkeyResolver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver__factory.d.ts.map deleted file mode 100644 index 3af4d3b9..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"PubkeyResolver__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,cAAc,EACd,uBAAuB,EACxB,MAAM,yFAAyF,CAAC;AAmJjG,qBAAa,uBAAuB;IAClC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,uBAAuB;IAGjD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,cAAc;CAGlB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver__factory.js deleted file mode 100644 index 270716a5..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver__factory.js +++ /dev/null @@ -1,158 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.PubkeyResolver__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "bytes32", - name: "x", - type: "bytes32", - }, - { - indexed: false, - internalType: "bytes32", - name: "y", - type: "bytes32", - }, - ], - name: "PubkeyChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "uint64", - name: "newVersion", - type: "uint64", - }, - ], - name: "VersionChanged", - type: "event", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "clearRecords", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "pubkey", - outputs: [ - { - internalType: "bytes32", - name: "x", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "y", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - name: "recordVersions", - outputs: [ - { - internalType: "uint64", - name: "", - type: "uint64", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "x", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "y", - type: "bytes32", - }, - ], - name: "setPubkey", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceID", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class PubkeyResolver__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.PubkeyResolver__factory = PubkeyResolver__factory; -PubkeyResolver__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver__factory.d.ts deleted file mode 100644 index 879605fe..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver__factory.d.ts +++ /dev/null @@ -1,122 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { TextResolver, TextResolverInterface } from "../../../../../../@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver"; -export declare class TextResolver__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "string"; - readonly name: "indexedKey"; - readonly type: "string"; - }, { - readonly indexed: false; - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }, { - readonly indexed: false; - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }]; - readonly name: "TextChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "uint64"; - readonly name: "newVersion"; - readonly type: "uint64"; - }]; - readonly name: "VersionChanged"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "clearRecords"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly name: "recordVersions"; - readonly outputs: readonly [{ - readonly internalType: "uint64"; - readonly name: ""; - readonly type: "uint64"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }, { - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }]; - readonly name: "setText"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceID"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }]; - readonly name: "text"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): TextResolverInterface; - static connect(address: string, runner?: ContractRunner | null): TextResolver; -} -//# sourceMappingURL=TextResolver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver__factory.d.ts.map deleted file mode 100644 index 50a9ea56..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"TextResolver__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,YAAY,EACZ,qBAAqB,EACtB,MAAM,uFAAuF,CAAC;AAyJ/F,qBAAa,qBAAqB;IAChC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,qBAAqB;IAG/C,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,YAAY;CAGhB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver__factory.js deleted file mode 100644 index ef275b5d..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver__factory.js +++ /dev/null @@ -1,164 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.TextResolver__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: true, - internalType: "string", - name: "indexedKey", - type: "string", - }, - { - indexed: false, - internalType: "string", - name: "key", - type: "string", - }, - { - indexed: false, - internalType: "string", - name: "value", - type: "string", - }, - ], - name: "TextChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "uint64", - name: "newVersion", - type: "uint64", - }, - ], - name: "VersionChanged", - type: "event", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "clearRecords", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - name: "recordVersions", - outputs: [ - { - internalType: "uint64", - name: "", - type: "uint64", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "string", - name: "key", - type: "string", - }, - { - internalType: "string", - name: "value", - type: "string", - }, - ], - name: "setText", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceID", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "string", - name: "key", - type: "string", - }, - ], - name: "text", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class TextResolver__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.TextResolver__factory = TextResolver__factory; -TextResolver__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/index.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/index.d.ts deleted file mode 100644 index 27cc5b27..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/index.d.ts +++ /dev/null @@ -1,21 +0,0 @@ -export { ABIResolver__factory } from "./ABIResolver__factory"; -export { AddrResolver__factory } from "./AddrResolver__factory"; -export { ContentHashResolver__factory } from "./ContentHashResolver__factory"; -export { DNSResolver__factory } from "./DNSResolver__factory"; -export { IABIResolver__factory } from "./IABIResolver__factory"; -export { IAddrResolver__factory } from "./IAddrResolver__factory"; -export { IAddressResolver__factory } from "./IAddressResolver__factory"; -export { IContentHashResolver__factory } from "./IContentHashResolver__factory"; -export { IDNSRecordResolver__factory } from "./IDNSRecordResolver__factory"; -export { IDNSZoneResolver__factory } from "./IDNSZoneResolver__factory"; -export { IExtendedResolver__factory } from "./IExtendedResolver__factory"; -export { IInterfaceResolver__factory } from "./IInterfaceResolver__factory"; -export { INameResolver__factory } from "./INameResolver__factory"; -export { IPubkeyResolver__factory } from "./IPubkeyResolver__factory"; -export { ITextResolver__factory } from "./ITextResolver__factory"; -export { IVersionableResolver__factory } from "./IVersionableResolver__factory"; -export { InterfaceResolver__factory } from "./InterfaceResolver__factory"; -export { NameResolver__factory } from "./NameResolver__factory"; -export { PubkeyResolver__factory } from "./PubkeyResolver__factory"; -export { TextResolver__factory } from "./TextResolver__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/index.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/index.d.ts.map deleted file mode 100644 index 82f7c118..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AAChF,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AAChF,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/index.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/index.js deleted file mode 100644 index 0edbc44f..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/index.js +++ /dev/null @@ -1,43 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.TextResolver__factory = exports.PubkeyResolver__factory = exports.NameResolver__factory = exports.InterfaceResolver__factory = exports.IVersionableResolver__factory = exports.ITextResolver__factory = exports.IPubkeyResolver__factory = exports.INameResolver__factory = exports.IInterfaceResolver__factory = exports.IExtendedResolver__factory = exports.IDNSZoneResolver__factory = exports.IDNSRecordResolver__factory = exports.IContentHashResolver__factory = exports.IAddressResolver__factory = exports.IAddrResolver__factory = exports.IABIResolver__factory = exports.DNSResolver__factory = exports.ContentHashResolver__factory = exports.AddrResolver__factory = exports.ABIResolver__factory = void 0; -var ABIResolver__factory_1 = require("./ABIResolver__factory"); -Object.defineProperty(exports, "ABIResolver__factory", { enumerable: true, get: function () { return ABIResolver__factory_1.ABIResolver__factory; } }); -var AddrResolver__factory_1 = require("./AddrResolver__factory"); -Object.defineProperty(exports, "AddrResolver__factory", { enumerable: true, get: function () { return AddrResolver__factory_1.AddrResolver__factory; } }); -var ContentHashResolver__factory_1 = require("./ContentHashResolver__factory"); -Object.defineProperty(exports, "ContentHashResolver__factory", { enumerable: true, get: function () { return ContentHashResolver__factory_1.ContentHashResolver__factory; } }); -var DNSResolver__factory_1 = require("./DNSResolver__factory"); -Object.defineProperty(exports, "DNSResolver__factory", { enumerable: true, get: function () { return DNSResolver__factory_1.DNSResolver__factory; } }); -var IABIResolver__factory_1 = require("./IABIResolver__factory"); -Object.defineProperty(exports, "IABIResolver__factory", { enumerable: true, get: function () { return IABIResolver__factory_1.IABIResolver__factory; } }); -var IAddrResolver__factory_1 = require("./IAddrResolver__factory"); -Object.defineProperty(exports, "IAddrResolver__factory", { enumerable: true, get: function () { return IAddrResolver__factory_1.IAddrResolver__factory; } }); -var IAddressResolver__factory_1 = require("./IAddressResolver__factory"); -Object.defineProperty(exports, "IAddressResolver__factory", { enumerable: true, get: function () { return IAddressResolver__factory_1.IAddressResolver__factory; } }); -var IContentHashResolver__factory_1 = require("./IContentHashResolver__factory"); -Object.defineProperty(exports, "IContentHashResolver__factory", { enumerable: true, get: function () { return IContentHashResolver__factory_1.IContentHashResolver__factory; } }); -var IDNSRecordResolver__factory_1 = require("./IDNSRecordResolver__factory"); -Object.defineProperty(exports, "IDNSRecordResolver__factory", { enumerable: true, get: function () { return IDNSRecordResolver__factory_1.IDNSRecordResolver__factory; } }); -var IDNSZoneResolver__factory_1 = require("./IDNSZoneResolver__factory"); -Object.defineProperty(exports, "IDNSZoneResolver__factory", { enumerable: true, get: function () { return IDNSZoneResolver__factory_1.IDNSZoneResolver__factory; } }); -var IExtendedResolver__factory_1 = require("./IExtendedResolver__factory"); -Object.defineProperty(exports, "IExtendedResolver__factory", { enumerable: true, get: function () { return IExtendedResolver__factory_1.IExtendedResolver__factory; } }); -var IInterfaceResolver__factory_1 = require("./IInterfaceResolver__factory"); -Object.defineProperty(exports, "IInterfaceResolver__factory", { enumerable: true, get: function () { return IInterfaceResolver__factory_1.IInterfaceResolver__factory; } }); -var INameResolver__factory_1 = require("./INameResolver__factory"); -Object.defineProperty(exports, "INameResolver__factory", { enumerable: true, get: function () { return INameResolver__factory_1.INameResolver__factory; } }); -var IPubkeyResolver__factory_1 = require("./IPubkeyResolver__factory"); -Object.defineProperty(exports, "IPubkeyResolver__factory", { enumerable: true, get: function () { return IPubkeyResolver__factory_1.IPubkeyResolver__factory; } }); -var ITextResolver__factory_1 = require("./ITextResolver__factory"); -Object.defineProperty(exports, "ITextResolver__factory", { enumerable: true, get: function () { return ITextResolver__factory_1.ITextResolver__factory; } }); -var IVersionableResolver__factory_1 = require("./IVersionableResolver__factory"); -Object.defineProperty(exports, "IVersionableResolver__factory", { enumerable: true, get: function () { return IVersionableResolver__factory_1.IVersionableResolver__factory; } }); -var InterfaceResolver__factory_1 = require("./InterfaceResolver__factory"); -Object.defineProperty(exports, "InterfaceResolver__factory", { enumerable: true, get: function () { return InterfaceResolver__factory_1.InterfaceResolver__factory; } }); -var NameResolver__factory_1 = require("./NameResolver__factory"); -Object.defineProperty(exports, "NameResolver__factory", { enumerable: true, get: function () { return NameResolver__factory_1.NameResolver__factory; } }); -var PubkeyResolver__factory_1 = require("./PubkeyResolver__factory"); -Object.defineProperty(exports, "PubkeyResolver__factory", { enumerable: true, get: function () { return PubkeyResolver__factory_1.PubkeyResolver__factory; } }); -var TextResolver__factory_1 = require("./TextResolver__factory"); -Object.defineProperty(exports, "TextResolver__factory", { enumerable: true, get: function () { return TextResolver__factory_1.TextResolver__factory; } }); diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar__factory.d.ts deleted file mode 100644 index 973ecb0b..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar__factory.d.ts +++ /dev/null @@ -1,126 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IReverseRegistrar, IReverseRegistrarInterface } from "../../../../../@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar"; -export declare class IReverseRegistrar__factory { - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "claim"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }]; - readonly name: "claimForAddr"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }]; - readonly name: "claimWithResolver"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }]; - readonly name: "node"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "pure"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }]; - readonly name: "setDefaultResolver"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "name"; - readonly type: "string"; - }]; - readonly name: "setName"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }, { - readonly internalType: "string"; - readonly name: "name"; - readonly type: "string"; - }]; - readonly name: "setNameForAddr"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): IReverseRegistrarInterface; - static connect(address: string, runner?: ContractRunner | null): IReverseRegistrar; -} -//# sourceMappingURL=IReverseRegistrar__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar__factory.d.ts.map deleted file mode 100644 index c0186ca0..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IReverseRegistrar__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,iBAAiB,EACjB,0BAA0B,EAC3B,MAAM,uFAAuF,CAAC;AAkK/F,qBAAa,0BAA0B;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,0BAA0B;IAGpD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,iBAAiB;CAGrB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar__factory.js deleted file mode 100644 index 17902b55..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar__factory.js +++ /dev/null @@ -1,173 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IReverseRegistrar__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "claim", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "addr", - type: "address", - }, - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "address", - name: "resolver", - type: "address", - }, - ], - name: "claimForAddr", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "address", - name: "resolver", - type: "address", - }, - ], - name: "claimWithResolver", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "addr", - type: "address", - }, - ], - name: "node", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "pure", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "resolver", - type: "address", - }, - ], - name: "setDefaultResolver", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "name", - type: "string", - }, - ], - name: "setName", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "addr", - type: "address", - }, - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "address", - name: "resolver", - type: "address", - }, - { - internalType: "string", - name: "name", - type: "string", - }, - ], - name: "setNameForAddr", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, -]; -class IReverseRegistrar__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IReverseRegistrar__factory = IReverseRegistrar__factory; -IReverseRegistrar__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer__factory.d.ts deleted file mode 100644 index 692e34ce..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer__factory.d.ts +++ /dev/null @@ -1,35 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, AddressLike, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../../../common"; -import type { ReverseClaimer, ReverseClaimerInterface } from "../../../../../@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer"; -declare type ReverseClaimerConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class ReverseClaimer__factory extends ContractFactory { - constructor(...args: ReverseClaimerConstructorParams); - getDeployTransaction(ens: AddressLike, claimant: AddressLike, overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(ens: AddressLike, claimant: AddressLike, overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): ReverseClaimer__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b506040516101e63803806101e683398101604081905261002f9161014b565b6040516302571be360e01b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e260048201526000906001600160a01b038416906302571be390602401602060405180830381865afa158015610096573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906100ba9190610185565b604051630f41a04d60e11b81526001600160a01b03848116600483015291925090821690631e83409a906024016020604051808303816000875af1158015610106573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061012a91906101a9565b505050506101c2565b6001600160a01b038116811461014857600080fd5b50565b6000806040838503121561015e57600080fd5b825161016981610133565b602084015190925061017a81610133565b809150509250929050565b60006020828403121561019757600080fd5b81516101a281610133565b9392505050565b6000602082840312156101bb57600080fd5b5051919050565b6016806101d06000396000f3fe6080604052600080fdfea164736f6c6343000811000a"; - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "contract ENS"; - readonly name: "ens"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "claimant"; - readonly type: "address"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "constructor"; - }]; - static createInterface(): ReverseClaimerInterface; - static connect(address: string, runner?: ContractRunner | null): ReverseClaimer; -} -export {}; -//# sourceMappingURL=ReverseClaimer__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer__factory.d.ts.map deleted file mode 100644 index 05432c3f..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ReverseClaimer__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,MAAM,EACN,WAAW,EACX,yBAAyB,EACzB,cAAc,EACf,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,cAAc,EACd,uBAAuB,EACxB,MAAM,oFAAoF,CAAC;AAwB5F,aAAK,+BAA+B,GAChC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,uBAAwB,SAAQ,eAAe;gBAC9C,GAAG,IAAI,EAAE,+BAA+B;IAQ3C,oBAAoB,CAC3B,GAAG,EAAE,WAAW,EAChB,QAAQ,EAAE,WAAW,EACrB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CACb,GAAG,EAAE,WAAW,EAChB,QAAQ,EAAE,WAAW,EACrB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAItB,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,uBAAuB;IAIxE,MAAM,CAAC,QAAQ,CAAC,QAAQ,o9BAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,uBAAuB;IAGjD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,cAAc;CAGlB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer__factory.js deleted file mode 100644 index d478fd98..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer__factory.js +++ /dev/null @@ -1,52 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ReverseClaimer__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "contract ENS", - name: "ens", - type: "address", - }, - { - internalType: "address", - name: "claimant", - type: "address", - }, - ], - stateMutability: "nonpayable", - type: "constructor", - }, -]; -const _bytecode = "0x608060405234801561001057600080fd5b506040516101e63803806101e683398101604081905261002f9161014b565b6040516302571be360e01b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e260048201526000906001600160a01b038416906302571be390602401602060405180830381865afa158015610096573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906100ba9190610185565b604051630f41a04d60e11b81526001600160a01b03848116600483015291925090821690631e83409a906024016020604051808303816000875af1158015610106573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061012a91906101a9565b505050506101c2565b6001600160a01b038116811461014857600080fd5b50565b6000806040838503121561015e57600080fd5b825161016981610133565b602084015190925061017a81610133565b809150509250929050565b60006020828403121561019757600080fd5b81516101a281610133565b9392505050565b6000602082840312156101bb57600080fd5b5051919050565b6016806101d06000396000f3fe6080604052600080fdfea164736f6c6343000811000a"; -const isSuperArgs = (xs) => xs.length > 1; -class ReverseClaimer__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(ens, claimant, overrides) { - return super.getDeployTransaction(ens, claimant, overrides || {}); - } - deploy(ens, claimant, overrides) { - return super.deploy(ens, claimant, overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.ReverseClaimer__factory = ReverseClaimer__factory; -ReverseClaimer__factory.bytecode = _bytecode; -ReverseClaimer__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/NameResolver__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/NameResolver__factory.d.ts deleted file mode 100644 index 1090972d..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/NameResolver__factory.d.ts +++ /dev/null @@ -1,22 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { NameResolver, NameResolverInterface } from "../../../../../../@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/NameResolver"; -export declare class NameResolver__factory { - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "string"; - readonly name: "name"; - readonly type: "string"; - }]; - readonly name: "setName"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): NameResolverInterface; - static connect(address: string, runner?: ContractRunner | null): NameResolver; -} -//# sourceMappingURL=NameResolver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/NameResolver__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/NameResolver__factory.d.ts.map deleted file mode 100644 index db0014dd..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/NameResolver__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"NameResolver__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/NameResolver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,YAAY,EACZ,qBAAqB,EACtB,MAAM,0GAA0G,CAAC;AAuBlH,qBAAa,qBAAqB;IAChC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,qBAAqB;IAG/C,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,YAAY;CAGhB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/NameResolver__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/NameResolver__factory.js deleted file mode 100644 index 95ef0317..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/NameResolver__factory.js +++ /dev/null @@ -1,34 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.NameResolver__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "string", - name: "name", - type: "string", - }, - ], - name: "setName", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -class NameResolver__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.NameResolver__factory = NameResolver__factory; -NameResolver__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar__factory.d.ts deleted file mode 100644 index 916baa43..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar__factory.d.ts +++ /dev/null @@ -1,278 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, AddressLike, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../../../../common"; -import type { ReverseRegistrar, ReverseRegistrarInterface } from "../../../../../../@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar"; -declare type ReverseRegistrarConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class ReverseRegistrar__factory extends ContractFactory { - constructor(...args: ReverseRegistrarConstructorParams); - getDeployTransaction(ensAddr: AddressLike, overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(ensAddr: AddressLike, overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): ReverseRegistrar__factory; - static readonly bytecode = "0x60a060405234801561001057600080fd5b50604051610e6b380380610e6b83398101604081905261002f916101b4565b6100383361014c565b6001600160a01b03811660808190526040516302571be360e01b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26004820152600091906302571be390602401602060405180830381865afa1580156100a4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906100c891906101b4565b90506001600160a01b0381161561014557604051630f41a04d60e11b81523360048201526001600160a01b03821690631e83409a906024016020604051808303816000875af115801561011f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061014391906101d8565b505b50506101f1565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146101b157600080fd5b50565b6000602082840312156101c657600080fd5b81516101d18161019c565b9392505050565b6000602082840312156101ea57600080fd5b5051919050565b608051610c5161021a6000396000818161012d015281816102d701526104d50152610c516000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c80638da5cb5b1161008c578063c66485b211610066578063c66485b2146101e1578063da8c229e146101f4578063e0dba60f14610227578063f2fde38b1461023a57600080fd5b80638da5cb5b146101aa578063bffbe61c146101bb578063c47f0027146101ce57600080fd5b806365669631116100c85780636566963114610167578063715018a61461017a5780637a806d6b14610184578063828eab0e1461019757600080fd5b80630f5a5466146100ef5780631e83409a146101155780633f15457f14610128575b600080fd5b6101026100fd366004610982565b61024d565b6040519081526020015b60405180910390f35b6101026101233660046109bb565b610261565b61014f7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b03909116815260200161010c565b6101026101753660046109d8565b610283565b61018261053c565b005b610102610192366004610ac6565b610550565b60025461014f906001600160a01b031681565b6000546001600160a01b031661014f565b6101026101c93660046109bb565b6105cb565b6101026101dc366004610b3b565b610626565b6101826101ef3660046109bb565b610643565b6102176102023660046109bb565b60016020526000908152604090205460ff1681565b604051901515815260200161010c565b610182610235366004610b86565b610704565b6101826102483660046109bb565b61076b565b600061025a338484610283565b9392505050565b60025460009061027d90339084906001600160a01b0316610283565b92915050565b6000836001600160a01b0381163314806102ac57503360009081526001602052604090205460ff165b80610342575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000000000000000000000000000000000000000000000169063e985e9c590604401602060405180830381865afa15801561031e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103429190610bb4565b806103515750610351816107e4565b6103ee5760405162461bcd60e51b815260206004820152605b60248201527f526576657273655265676973747261723a2043616c6c6572206973206e6f742060448201527f6120636f6e74726f6c6c6572206f7220617574686f726973656420627920616460648201527f6472657373206f7220746865206164647265737320697473656c660000000000608482015260a4015b60405180910390fd5b60006103f98661085d565b604080517f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e2602080830191909152818301849052825180830384018152606090920192839052815191012091925081906001600160a01b038916907f6ada868dd3058cf77a48a74489fd7963688e5464b2b0fa957ace976243270e9290600090a36040516305ef2c7f60e41b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26004820152602481018390526001600160a01b0387811660448301528681166064830152600060848301527f00000000000000000000000000000000000000000000000000000000000000001690635ef2c7f09060a401600060405180830381600087803b15801561051957600080fd5b505af115801561052d573d6000803e3d6000fd5b50929998505050505050505050565b6105446108c3565b61054e600061091d565b565b60008061055e868686610283565b604051637737221360e01b81529091506001600160a01b0385169063773722139061058f9084908790600401610bd1565b600060405180830381600087803b1580156105a957600080fd5b505af11580156105bd573d6000803e3d6000fd5b509298975050505050505050565b60007f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26105f78361085d565b604080516020810193909352820152606001604051602081830303815290604052805190602001209050919050565b60025460009061027d90339081906001600160a01b031685610550565b61064b6108c3565b6001600160a01b0381166106ba5760405162461bcd60e51b815260206004820152603060248201527f526576657273655265676973747261723a205265736f6c76657220616464726560448201526f07373206d757374206e6f7420626520360841b60648201526084016103e5565b600280546001600160a01b0319166001600160a01b0383169081179091556040517feae17a84d9eb83d8c8eb317f9e7d64857bc363fa51674d996c023f4340c577cf90600090a250565b61070c6108c3565b6001600160a01b038216600081815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b6107736108c3565b6001600160a01b0381166107d85760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016103e5565b6107e18161091d565b50565b6000816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015610840575060408051601f3d908101601f1916820190925261083d91810190610c27565b60015b61084c57506000919050565b6001600160a01b0316331492915050565b600060285b80156108b757600019016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a8153601090920491600019016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a8153601083049250610862565b50506028600020919050565b6000546001600160a01b0316331461054e5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016103e5565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146107e157600080fd5b6000806040838503121561099557600080fd5b82356109a08161096d565b915060208301356109b08161096d565b809150509250929050565b6000602082840312156109cd57600080fd5b813561025a8161096d565b6000806000606084860312156109ed57600080fd5b83356109f88161096d565b92506020840135610a088161096d565b91506040840135610a188161096d565b809150509250925092565b634e487b7160e01b600052604160045260246000fd5b600082601f830112610a4a57600080fd5b813567ffffffffffffffff80821115610a6557610a65610a23565b604051601f8301601f19908116603f01168101908282118183101715610a8d57610a8d610a23565b81604052838152866020858801011115610aa657600080fd5b836020870160208301376000602085830101528094505050505092915050565b60008060008060808587031215610adc57600080fd5b8435610ae78161096d565b93506020850135610af78161096d565b92506040850135610b078161096d565b9150606085013567ffffffffffffffff811115610b2357600080fd5b610b2f87828801610a39565b91505092959194509250565b600060208284031215610b4d57600080fd5b813567ffffffffffffffff811115610b6457600080fd5b610b7084828501610a39565b949350505050565b80151581146107e157600080fd5b60008060408385031215610b9957600080fd5b8235610ba48161096d565b915060208301356109b081610b78565b600060208284031215610bc657600080fd5b815161025a81610b78565b82815260006020604081840152835180604085015260005b81811015610c0557858101830151858201606001528201610be9565b506000606082860101526060601f19601f830116850101925050509392505050565b600060208284031215610c3957600080fd5b815161025a8161096d56fea164736f6c6343000811000a"; - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "contract ENS"; - readonly name: "ensAddr"; - readonly type: "address"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "constructor"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "controller"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "bool"; - readonly name: "enabled"; - readonly type: "bool"; - }]; - readonly name: "ControllerChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "contract NameResolver"; - readonly name: "resolver"; - readonly type: "address"; - }]; - readonly name: "DefaultResolverChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "previousOwner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "newOwner"; - readonly type: "address"; - }]; - readonly name: "OwnershipTransferred"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "ReverseClaimed"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "claim"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }]; - readonly name: "claimForAddr"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }]; - readonly name: "claimWithResolver"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly name: "controllers"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "defaultResolver"; - readonly outputs: readonly [{ - readonly internalType: "contract NameResolver"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "ens"; - readonly outputs: readonly [{ - readonly internalType: "contract ENS"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }]; - readonly name: "node"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "pure"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "owner"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "renounceOwnership"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "controller"; - readonly type: "address"; - }, { - readonly internalType: "bool"; - readonly name: "enabled"; - readonly type: "bool"; - }]; - readonly name: "setController"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }]; - readonly name: "setDefaultResolver"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "name"; - readonly type: "string"; - }]; - readonly name: "setName"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }, { - readonly internalType: "string"; - readonly name: "name"; - readonly type: "string"; - }]; - readonly name: "setNameForAddr"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "newOwner"; - readonly type: "address"; - }]; - readonly name: "transferOwnership"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): ReverseRegistrarInterface; - static connect(address: string, runner?: ContractRunner | null): ReverseRegistrar; -} -export {}; -//# sourceMappingURL=ReverseRegistrar__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar__factory.d.ts.map deleted file mode 100644 index c64cc4c2..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ReverseRegistrar__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,MAAM,EACN,WAAW,EACX,yBAAyB,EACzB,cAAc,EACf,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,KAAK,EACV,gBAAgB,EAChB,yBAAyB,EAC1B,MAAM,8GAA8G,CAAC;AAsVtH,aAAK,iCAAiC,GAClC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,yBAA0B,SAAQ,eAAe;gBAChD,GAAG,IAAI,EAAE,iCAAiC;IAQ7C,oBAAoB,CAC3B,OAAO,EAAE,WAAW,EACpB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CACb,OAAO,EAAE,WAAW,EACpB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAItB,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,yBAAyB;IAI1E,MAAM,CAAC,QAAQ,CAAC,QAAQ,8tOAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,yBAAyB;IAGnD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,gBAAgB;CAGpB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar__factory.js deleted file mode 100644 index 417fce6e..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar__factory.js +++ /dev/null @@ -1,370 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ReverseRegistrar__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "contract ENS", - name: "ensAddr", - type: "address", - }, - ], - stateMutability: "nonpayable", - type: "constructor", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "controller", - type: "address", - }, - { - indexed: false, - internalType: "bool", - name: "enabled", - type: "bool", - }, - ], - name: "ControllerChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "contract NameResolver", - name: "resolver", - type: "address", - }, - ], - name: "DefaultResolverChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "previousOwner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnershipTransferred", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "addr", - type: "address", - }, - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "ReverseClaimed", - type: "event", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "claim", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "addr", - type: "address", - }, - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "address", - name: "resolver", - type: "address", - }, - ], - name: "claimForAddr", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "address", - name: "resolver", - type: "address", - }, - ], - name: "claimWithResolver", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - name: "controllers", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "defaultResolver", - outputs: [ - { - internalType: "contract NameResolver", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "ens", - outputs: [ - { - internalType: "contract ENS", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "addr", - type: "address", - }, - ], - name: "node", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "pure", - type: "function", - }, - { - inputs: [], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "renounceOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "controller", - type: "address", - }, - { - internalType: "bool", - name: "enabled", - type: "bool", - }, - ], - name: "setController", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "resolver", - type: "address", - }, - ], - name: "setDefaultResolver", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "name", - type: "string", - }, - ], - name: "setName", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "addr", - type: "address", - }, - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "address", - name: "resolver", - type: "address", - }, - { - internalType: "string", - name: "name", - type: "string", - }, - ], - name: "setNameForAddr", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "transferOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -const _bytecode = "0x60a060405234801561001057600080fd5b50604051610e6b380380610e6b83398101604081905261002f916101b4565b6100383361014c565b6001600160a01b03811660808190526040516302571be360e01b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26004820152600091906302571be390602401602060405180830381865afa1580156100a4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906100c891906101b4565b90506001600160a01b0381161561014557604051630f41a04d60e11b81523360048201526001600160a01b03821690631e83409a906024016020604051808303816000875af115801561011f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061014391906101d8565b505b50506101f1565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146101b157600080fd5b50565b6000602082840312156101c657600080fd5b81516101d18161019c565b9392505050565b6000602082840312156101ea57600080fd5b5051919050565b608051610c5161021a6000396000818161012d015281816102d701526104d50152610c516000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c80638da5cb5b1161008c578063c66485b211610066578063c66485b2146101e1578063da8c229e146101f4578063e0dba60f14610227578063f2fde38b1461023a57600080fd5b80638da5cb5b146101aa578063bffbe61c146101bb578063c47f0027146101ce57600080fd5b806365669631116100c85780636566963114610167578063715018a61461017a5780637a806d6b14610184578063828eab0e1461019757600080fd5b80630f5a5466146100ef5780631e83409a146101155780633f15457f14610128575b600080fd5b6101026100fd366004610982565b61024d565b6040519081526020015b60405180910390f35b6101026101233660046109bb565b610261565b61014f7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b03909116815260200161010c565b6101026101753660046109d8565b610283565b61018261053c565b005b610102610192366004610ac6565b610550565b60025461014f906001600160a01b031681565b6000546001600160a01b031661014f565b6101026101c93660046109bb565b6105cb565b6101026101dc366004610b3b565b610626565b6101826101ef3660046109bb565b610643565b6102176102023660046109bb565b60016020526000908152604090205460ff1681565b604051901515815260200161010c565b610182610235366004610b86565b610704565b6101826102483660046109bb565b61076b565b600061025a338484610283565b9392505050565b60025460009061027d90339084906001600160a01b0316610283565b92915050565b6000836001600160a01b0381163314806102ac57503360009081526001602052604090205460ff165b80610342575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000000000000000000000000000000000000000000000169063e985e9c590604401602060405180830381865afa15801561031e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103429190610bb4565b806103515750610351816107e4565b6103ee5760405162461bcd60e51b815260206004820152605b60248201527f526576657273655265676973747261723a2043616c6c6572206973206e6f742060448201527f6120636f6e74726f6c6c6572206f7220617574686f726973656420627920616460648201527f6472657373206f7220746865206164647265737320697473656c660000000000608482015260a4015b60405180910390fd5b60006103f98661085d565b604080517f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e2602080830191909152818301849052825180830384018152606090920192839052815191012091925081906001600160a01b038916907f6ada868dd3058cf77a48a74489fd7963688e5464b2b0fa957ace976243270e9290600090a36040516305ef2c7f60e41b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26004820152602481018390526001600160a01b0387811660448301528681166064830152600060848301527f00000000000000000000000000000000000000000000000000000000000000001690635ef2c7f09060a401600060405180830381600087803b15801561051957600080fd5b505af115801561052d573d6000803e3d6000fd5b50929998505050505050505050565b6105446108c3565b61054e600061091d565b565b60008061055e868686610283565b604051637737221360e01b81529091506001600160a01b0385169063773722139061058f9084908790600401610bd1565b600060405180830381600087803b1580156105a957600080fd5b505af11580156105bd573d6000803e3d6000fd5b509298975050505050505050565b60007f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26105f78361085d565b604080516020810193909352820152606001604051602081830303815290604052805190602001209050919050565b60025460009061027d90339081906001600160a01b031685610550565b61064b6108c3565b6001600160a01b0381166106ba5760405162461bcd60e51b815260206004820152603060248201527f526576657273655265676973747261723a205265736f6c76657220616464726560448201526f07373206d757374206e6f7420626520360841b60648201526084016103e5565b600280546001600160a01b0319166001600160a01b0383169081179091556040517feae17a84d9eb83d8c8eb317f9e7d64857bc363fa51674d996c023f4340c577cf90600090a250565b61070c6108c3565b6001600160a01b038216600081815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b6107736108c3565b6001600160a01b0381166107d85760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016103e5565b6107e18161091d565b50565b6000816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015610840575060408051601f3d908101601f1916820190925261083d91810190610c27565b60015b61084c57506000919050565b6001600160a01b0316331492915050565b600060285b80156108b757600019016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a8153601090920491600019016f181899199a1a9b1b9c1cb0b131b232b360811b600f84161a8153601083049250610862565b50506028600020919050565b6000546001600160a01b0316331461054e5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016103e5565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146107e157600080fd5b6000806040838503121561099557600080fd5b82356109a08161096d565b915060208301356109b08161096d565b809150509250929050565b6000602082840312156109cd57600080fd5b813561025a8161096d565b6000806000606084860312156109ed57600080fd5b83356109f88161096d565b92506020840135610a088161096d565b91506040840135610a188161096d565b809150509250925092565b634e487b7160e01b600052604160045260246000fd5b600082601f830112610a4a57600080fd5b813567ffffffffffffffff80821115610a6557610a65610a23565b604051601f8301601f19908116603f01168101908282118183101715610a8d57610a8d610a23565b81604052838152866020858801011115610aa657600080fd5b836020870160208301376000602085830101528094505050505092915050565b60008060008060808587031215610adc57600080fd5b8435610ae78161096d565b93506020850135610af78161096d565b92506040850135610b078161096d565b9150606085013567ffffffffffffffff811115610b2357600080fd5b610b2f87828801610a39565b91505092959194509250565b600060208284031215610b4d57600080fd5b813567ffffffffffffffff811115610b6457600080fd5b610b7084828501610a39565b949350505050565b80151581146107e157600080fd5b60008060408385031215610b9957600080fd5b8235610ba48161096d565b915060208301356109b081610b78565b600060208284031215610bc657600080fd5b815161025a81610b78565b82815260006020604081840152835180604085015260005b81811015610c0557858101830151858201606001528201610be9565b506000606082860101526060601f19601f830116850101925050509392505050565b600060208284031215610c3957600080fd5b815161025a8161096d56fea164736f6c6343000811000a"; -const isSuperArgs = (xs) => xs.length > 1; -class ReverseRegistrar__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(ensAddr, overrides) { - return super.getDeployTransaction(ensAddr, overrides || {}); - } - deploy(ensAddr, overrides) { - return super.deploy(ensAddr, overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.ReverseRegistrar__factory = ReverseRegistrar__factory; -ReverseRegistrar__factory.bytecode = _bytecode; -ReverseRegistrar__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/index.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/index.d.ts deleted file mode 100644 index 3eb2f598..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export { NameResolver__factory } from "./NameResolver__factory"; -export { ReverseRegistrar__factory } from "./ReverseRegistrar__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/index.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/index.d.ts.map deleted file mode 100644 index bc67bd3b..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/index.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/index.js deleted file mode 100644 index 45c2e4b5..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/index.js +++ /dev/null @@ -1,7 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ReverseRegistrar__factory = exports.NameResolver__factory = void 0; -var NameResolver__factory_1 = require("./NameResolver__factory"); -Object.defineProperty(exports, "NameResolver__factory", { enumerable: true, get: function () { return NameResolver__factory_1.NameResolver__factory; } }); -var ReverseRegistrar__factory_1 = require("./ReverseRegistrar__factory"); -Object.defineProperty(exports, "ReverseRegistrar__factory", { enumerable: true, get: function () { return ReverseRegistrar__factory_1.ReverseRegistrar__factory; } }); diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/index.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/index.d.ts deleted file mode 100644 index b8afde0b..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/index.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export * as reverseRegistrarSol from "./ReverseRegistrar.sol"; -export { IReverseRegistrar__factory } from "./IReverseRegistrar__factory"; -export { ReverseClaimer__factory } from "./ReverseClaimer__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/index.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/index.d.ts.map deleted file mode 100644 index 4efd3a7b..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,mBAAmB,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/index.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/index.js deleted file mode 100644 index 55302057..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/index.js +++ /dev/null @@ -1,31 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ReverseClaimer__factory = exports.IReverseRegistrar__factory = exports.reverseRegistrarSol = void 0; -exports.reverseRegistrarSol = __importStar(require("./ReverseRegistrar.sol")); -var IReverseRegistrar__factory_1 = require("./IReverseRegistrar__factory"); -Object.defineProperty(exports, "IReverseRegistrar__factory", { enumerable: true, get: function () { return IReverseRegistrar__factory_1.IReverseRegistrar__factory; } }); -var ReverseClaimer__factory_1 = require("./ReverseClaimer__factory"); -Object.defineProperty(exports, "ReverseClaimer__factory", { enumerable: true, get: function () { return ReverseClaimer__factory_1.ReverseClaimer__factory; } }); diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/root/Controllable__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/root/Controllable__factory.d.ts deleted file mode 100644 index 60ccf995..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/root/Controllable__factory.d.ts +++ /dev/null @@ -1,107 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../../../common"; -import type { Controllable, ControllableInterface } from "../../../../../@ensdomains/ens-contracts/contracts/root/Controllable"; -declare type ControllableConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class Controllable__factory extends ContractFactory { - constructor(...args: ControllableConstructorParams); - getDeployTransaction(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): Controllable__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b5061001a3361001f565b61006f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6103098061007e6000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c8063715018a61461005c5780638da5cb5b14610066578063da8c229e14610086578063e0dba60f146100b9578063f2fde38b146100cc575b600080fd5b6100646100df565b005b6000546040516001600160a01b0390911681526020015b60405180910390f35b6100a961009436600461029e565b60016020526000908152604090205460ff1681565b604051901515815260200161007d565b6100646100c73660046102c0565b6100f3565b6100646100da36600461029e565b61015a565b6100e76101d8565b6100f16000610232565b565b6100fb6101d8565b6001600160a01b038216600081815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b6101626101d8565b6001600160a01b0381166101cc5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b6101d581610232565b50565b6000546001600160a01b031633146100f15760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016101c3565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80356001600160a01b038116811461029957600080fd5b919050565b6000602082840312156102b057600080fd5b6102b982610282565b9392505050565b600080604083850312156102d357600080fd5b6102dc83610282565b9150602083013580151581146102f157600080fd5b80915050925092905056fea164736f6c6343000811000a"; - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "controller"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "bool"; - readonly name: "enabled"; - readonly type: "bool"; - }]; - readonly name: "ControllerChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "previousOwner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "newOwner"; - readonly type: "address"; - }]; - readonly name: "OwnershipTransferred"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly name: "controllers"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "owner"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "renounceOwnership"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "controller"; - readonly type: "address"; - }, { - readonly internalType: "bool"; - readonly name: "enabled"; - readonly type: "bool"; - }]; - readonly name: "setController"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "newOwner"; - readonly type: "address"; - }]; - readonly name: "transferOwnership"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): ControllableInterface; - static connect(address: string, runner?: ContractRunner | null): Controllable; -} -export {}; -//# sourceMappingURL=Controllable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/root/Controllable__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/root/Controllable__factory.d.ts.map deleted file mode 100644 index 16c20f7d..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/root/Controllable__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Controllable__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/root/Controllable__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,YAAY,EACZ,qBAAqB,EACtB,MAAM,sEAAsE,CAAC;AAoH9E,aAAK,6BAA6B,GAC9B,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,qBAAsB,SAAQ,eAAe;gBAC5C,GAAG,IAAI,EAAE,6BAA6B;IAQzC,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,qBAAqB;IAItE,MAAM,CAAC,QAAQ,CAAC,QAAQ,sxDAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,qBAAqB;IAG/C,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,YAAY;CAGhB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/root/Controllable__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/root/Controllable__factory.js deleted file mode 100644 index de59fb90..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/root/Controllable__factory.js +++ /dev/null @@ -1,144 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.Controllable__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "controller", - type: "address", - }, - { - indexed: false, - internalType: "bool", - name: "enabled", - type: "bool", - }, - ], - name: "ControllerChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "previousOwner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnershipTransferred", - type: "event", - }, - { - inputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - name: "controllers", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "renounceOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "controller", - type: "address", - }, - { - internalType: "bool", - name: "enabled", - type: "bool", - }, - ], - name: "setController", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "transferOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -const _bytecode = "0x608060405234801561001057600080fd5b5061001a3361001f565b61006f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6103098061007e6000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c8063715018a61461005c5780638da5cb5b14610066578063da8c229e14610086578063e0dba60f146100b9578063f2fde38b146100cc575b600080fd5b6100646100df565b005b6000546040516001600160a01b0390911681526020015b60405180910390f35b6100a961009436600461029e565b60016020526000908152604090205460ff1681565b604051901515815260200161007d565b6100646100c73660046102c0565b6100f3565b6100646100da36600461029e565b61015a565b6100e76101d8565b6100f16000610232565b565b6100fb6101d8565b6001600160a01b038216600081815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b6101626101d8565b6001600160a01b0381166101cc5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b6101d581610232565b50565b6000546001600160a01b031633146100f15760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016101c3565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80356001600160a01b038116811461029957600080fd5b919050565b6000602082840312156102b057600080fd5b6102b982610282565b9392505050565b600080604083850312156102d357600080fd5b6102dc83610282565b9150602083013580151581146102f157600080fd5b80915050925092905056fea164736f6c6343000811000a"; -const isSuperArgs = (xs) => xs.length > 1; -class Controllable__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(overrides) { - return super.getDeployTransaction(overrides || {}); - } - deploy(overrides) { - return super.deploy(overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.Controllable__factory = Controllable__factory; -Controllable__factory.bytecode = _bytecode; -Controllable__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/root/Root__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/root/Root__factory.d.ts deleted file mode 100644 index 26f00fdb..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/root/Root__factory.d.ts +++ /dev/null @@ -1,197 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, AddressLike, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../../../common"; -import type { Root, RootInterface } from "../../../../../@ensdomains/ens-contracts/contracts/root/Root"; -declare type RootConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class Root__factory extends ContractFactory { - constructor(...args: RootConstructorParams); - getDeployTransaction(_ens: AddressLike, overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(_ens: AddressLike, overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): Root__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b5060405161073e38038061073e83398101604081905261002f916100ad565b6100383361005d565b600280546001600160a01b0319166001600160a01b03929092169190911790556100dd565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000602082840312156100bf57600080fd5b81516001600160a01b03811681146100d657600080fd5b9392505050565b610652806100ec6000396000f3fe608060405234801561001057600080fd5b50600436106100a95760003560e01c80638cb8ecec116100715780638cb8ecec146101425780638da5cb5b14610155578063cbe9e76414610166578063da8c229e14610189578063e0dba60f146101ac578063f2fde38b146101bf57600080fd5b806301670ba9146100ae57806301ffc9a7146100c35780633f15457f146100fc5780634e543b2614610127578063715018a61461013a575b600080fd5b6100c16100bc366004610543565b6101d2565b005b6100e76100d136600461055c565b6001600160e01b0319166301ffc9a760e01b1490565b60405190151581526020015b60405180910390f35b60025461010f906001600160a01b031681565b6040516001600160a01b0390911681526020016100f3565b6100c16101353660046105a9565b610220565b6100c1610291565b6100c16101503660046105c4565b6102a5565b6000546001600160a01b031661010f565b6100e7610174366004610543565b60036020526000908152604090205460ff1681565b6100e76101973660046105a9565b60016020526000908152604090205460ff1681565b6100c16101ba3660046105f0565b6103b9565b6100c16101cd3660046105a9565b610420565b6101da610499565b60405181907f1764176cfa565853ba1ded547a830a9f9bff95231ef6fd228b3ddd617577756990600090a26000908152600360205260409020805460ff19166001179055565b610228610499565b600254604051630c4b7b8560e11b8152600060048201526001600160a01b03838116602483015290911690631896f70a90604401600060405180830381600087803b15801561027657600080fd5b505af115801561028a573d6000803e3d6000fd5b5050505050565b610299610499565b6102a360006104f3565b565b3360009081526001602052604090205460ff1661031a5760405162461bcd60e51b815260206004820152602860248201527f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f604482015267373a3937b63632b960c11b60648201526084015b60405180910390fd5b60008281526003602052604090205460ff161561033657600080fd5b6002546040516306ab592360e01b815260006004820152602481018490526001600160a01b038381166044830152909116906306ab5923906064016020604051808303816000875af1158015610390573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103b4919061062c565b505050565b6103c1610499565b6001600160a01b038216600081815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b610428610499565b6001600160a01b03811661048d5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610311565b610496816104f3565b50565b6000546001600160a01b031633146102a35760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610311565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60006020828403121561055557600080fd5b5035919050565b60006020828403121561056e57600080fd5b81356001600160e01b03198116811461058657600080fd5b9392505050565b80356001600160a01b03811681146105a457600080fd5b919050565b6000602082840312156105bb57600080fd5b6105868261058d565b600080604083850312156105d757600080fd5b823591506105e76020840161058d565b90509250929050565b6000806040838503121561060357600080fd5b61060c8361058d565b91506020830135801515811461062157600080fd5b809150509250929050565b60006020828403121561063e57600080fd5b505191905056fea164736f6c6343000811000a"; - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "contract ENS"; - readonly name: "_ens"; - readonly type: "address"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "constructor"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "controller"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "bool"; - readonly name: "enabled"; - readonly type: "bool"; - }]; - readonly name: "ControllerChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "previousOwner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "newOwner"; - readonly type: "address"; - }]; - readonly name: "OwnershipTransferred"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "label"; - readonly type: "bytes32"; - }]; - readonly name: "TLDLocked"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly name: "controllers"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "ens"; - readonly outputs: readonly [{ - readonly internalType: "contract ENS"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "label"; - readonly type: "bytes32"; - }]; - readonly name: "lock"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly name: "locked"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "owner"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "renounceOwnership"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "controller"; - readonly type: "address"; - }, { - readonly internalType: "bool"; - readonly name: "enabled"; - readonly type: "bool"; - }]; - readonly name: "setController"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }]; - readonly name: "setResolver"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "label"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "setSubnodeOwner"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceID"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "pure"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "newOwner"; - readonly type: "address"; - }]; - readonly name: "transferOwnership"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): RootInterface; - static connect(address: string, runner?: ContractRunner | null): Root; -} -export {}; -//# sourceMappingURL=Root__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/root/Root__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/root/Root__factory.d.ts.map deleted file mode 100644 index ec5e934b..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/root/Root__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Root__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/root/Root__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,MAAM,EACN,WAAW,EACX,yBAAyB,EACzB,cAAc,EACf,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,IAAI,EACJ,aAAa,EACd,MAAM,8DAA8D,CAAC;AA2OtE,aAAK,qBAAqB,GACtB,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,aAAc,SAAQ,eAAe;gBACpC,GAAG,IAAI,EAAE,qBAAqB;IAQjC,oBAAoB,CAC3B,IAAI,EAAE,WAAW,EACjB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CACb,IAAI,EAAE,WAAW,EACjB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAItB,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,aAAa;IAI9D,MAAM,CAAC,QAAQ,CAAC,QAAQ,ooHAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,aAAa;IAGvC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,IAAI;CAGtE"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/root/Root__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/root/Root__factory.js deleted file mode 100644 index bcf81c12..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/root/Root__factory.js +++ /dev/null @@ -1,263 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.Root__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "contract ENS", - name: "_ens", - type: "address", - }, - ], - stateMutability: "nonpayable", - type: "constructor", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "controller", - type: "address", - }, - { - indexed: false, - internalType: "bool", - name: "enabled", - type: "bool", - }, - ], - name: "ControllerChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "previousOwner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnershipTransferred", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "label", - type: "bytes32", - }, - ], - name: "TLDLocked", - type: "event", - }, - { - inputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - name: "controllers", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "ens", - outputs: [ - { - internalType: "contract ENS", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "label", - type: "bytes32", - }, - ], - name: "lock", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - name: "locked", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "renounceOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "controller", - type: "address", - }, - { - internalType: "bool", - name: "enabled", - type: "bool", - }, - ], - name: "setController", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "resolver", - type: "address", - }, - ], - name: "setResolver", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "label", - type: "bytes32", - }, - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "setSubnodeOwner", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceID", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "pure", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "transferOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -const _bytecode = "0x608060405234801561001057600080fd5b5060405161073e38038061073e83398101604081905261002f916100ad565b6100383361005d565b600280546001600160a01b0319166001600160a01b03929092169190911790556100dd565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000602082840312156100bf57600080fd5b81516001600160a01b03811681146100d657600080fd5b9392505050565b610652806100ec6000396000f3fe608060405234801561001057600080fd5b50600436106100a95760003560e01c80638cb8ecec116100715780638cb8ecec146101425780638da5cb5b14610155578063cbe9e76414610166578063da8c229e14610189578063e0dba60f146101ac578063f2fde38b146101bf57600080fd5b806301670ba9146100ae57806301ffc9a7146100c35780633f15457f146100fc5780634e543b2614610127578063715018a61461013a575b600080fd5b6100c16100bc366004610543565b6101d2565b005b6100e76100d136600461055c565b6001600160e01b0319166301ffc9a760e01b1490565b60405190151581526020015b60405180910390f35b60025461010f906001600160a01b031681565b6040516001600160a01b0390911681526020016100f3565b6100c16101353660046105a9565b610220565b6100c1610291565b6100c16101503660046105c4565b6102a5565b6000546001600160a01b031661010f565b6100e7610174366004610543565b60036020526000908152604090205460ff1681565b6100e76101973660046105a9565b60016020526000908152604090205460ff1681565b6100c16101ba3660046105f0565b6103b9565b6100c16101cd3660046105a9565b610420565b6101da610499565b60405181907f1764176cfa565853ba1ded547a830a9f9bff95231ef6fd228b3ddd617577756990600090a26000908152600360205260409020805460ff19166001179055565b610228610499565b600254604051630c4b7b8560e11b8152600060048201526001600160a01b03838116602483015290911690631896f70a90604401600060405180830381600087803b15801561027657600080fd5b505af115801561028a573d6000803e3d6000fd5b5050505050565b610299610499565b6102a360006104f3565b565b3360009081526001602052604090205460ff1661031a5760405162461bcd60e51b815260206004820152602860248201527f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f604482015267373a3937b63632b960c11b60648201526084015b60405180910390fd5b60008281526003602052604090205460ff161561033657600080fd5b6002546040516306ab592360e01b815260006004820152602481018490526001600160a01b038381166044830152909116906306ab5923906064016020604051808303816000875af1158015610390573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103b4919061062c565b505050565b6103c1610499565b6001600160a01b038216600081815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b610428610499565b6001600160a01b03811661048d5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610311565b610496816104f3565b50565b6000546001600160a01b031633146102a35760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610311565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60006020828403121561055557600080fd5b5035919050565b60006020828403121561056e57600080fd5b81356001600160e01b03198116811461058657600080fd5b9392505050565b80356001600160a01b03811681146105a457600080fd5b919050565b6000602082840312156105bb57600080fd5b6105868261058d565b600080604083850312156105d757600080fd5b823591506105e76020840161058d565b90509250929050565b6000806040838503121561060357600080fd5b61060c8361058d565b91506020830135801515811461062157600080fd5b809150509250929050565b60006020828403121561063e57600080fd5b505191905056fea164736f6c6343000811000a"; -const isSuperArgs = (xs) => xs.length > 1; -class Root__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(_ens, overrides) { - return super.getDeployTransaction(_ens, overrides || {}); - } - deploy(_ens, overrides) { - return super.deploy(_ens, overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.Root__factory = Root__factory; -Root__factory.bytecode = _bytecode; -Root__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/root/index.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/root/index.d.ts deleted file mode 100644 index faf056d4..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/root/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export { Controllable__factory } from "./Controllable__factory"; -export { Root__factory } from "./Root__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/root/index.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/root/index.d.ts.map deleted file mode 100644 index 4efe5ee0..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/root/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/root/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/root/index.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/root/index.js deleted file mode 100644 index 22d7d77b..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/root/index.js +++ /dev/null @@ -1,7 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.Root__factory = exports.Controllable__factory = void 0; -var Controllable__factory_1 = require("./Controllable__factory"); -Object.defineProperty(exports, "Controllable__factory", { enumerable: true, get: function () { return Controllable__factory_1.Controllable__factory; } }); -var Root__factory_1 = require("./Root__factory"); -Object.defineProperty(exports, "Root__factory", { enumerable: true, get: function () { return Root__factory_1.Root__factory; } }); diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable__factory.d.ts deleted file mode 100644 index cbd89661..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable__factory.d.ts +++ /dev/null @@ -1,82 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../../../common"; -import type { ERC20Recoverable, ERC20RecoverableInterface } from "../../../../../@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable"; -declare type ERC20RecoverableConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class ERC20Recoverable__factory extends ContractFactory { - constructor(...args: ERC20RecoverableConstructorParams); - getDeployTransaction(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): ERC20Recoverable__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b5061001a3361001f565b61006f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6103068061007e6000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c80635d3590d514610051578063715018a6146100665780638da5cb5b1461006e578063f2fde38b1461008d575b600080fd5b61006461005f366004610279565b6100a0565b005b610064610121565b600054604080516001600160a01b039092168252519081900360200190f35b61006461009b3660046102b5565b610135565b6100a86101b3565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303816000875af11580156100f7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061011b91906102d7565b50505050565b6101296101b3565b610133600061020d565b565b61013d6101b3565b6001600160a01b0381166101a75760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b6101b08161020d565b50565b6000546001600160a01b031633146101335760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161019e565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80356001600160a01b038116811461027457600080fd5b919050565b60008060006060848603121561028e57600080fd5b6102978461025d565b92506102a56020850161025d565b9150604084013590509250925092565b6000602082840312156102c757600080fd5b6102d08261025d565b9392505050565b6000602082840312156102e957600080fd5b815180151581146102d057600080fdfea164736f6c6343000811000a"; - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "previousOwner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "newOwner"; - readonly type: "address"; - }]; - readonly name: "OwnershipTransferred"; - readonly type: "event"; - }, { - readonly inputs: readonly []; - readonly name: "owner"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "_token"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "_to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "_amount"; - readonly type: "uint256"; - }]; - readonly name: "recoverFunds"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "renounceOwnership"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "newOwner"; - readonly type: "address"; - }]; - readonly name: "transferOwnership"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): ERC20RecoverableInterface; - static connect(address: string, runner?: ContractRunner | null): ERC20Recoverable; -} -export {}; -//# sourceMappingURL=ERC20Recoverable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable__factory.d.ts.map deleted file mode 100644 index 96ddacef..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ERC20Recoverable__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,gBAAgB,EAChB,yBAAyB,EAC1B,MAAM,2EAA2E,CAAC;AAmFnF,aAAK,iCAAiC,GAClC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,yBAA0B,SAAQ,eAAe;gBAChD,GAAG,IAAI,EAAE,iCAAiC;IAQ7C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,yBAAyB;IAI1E,MAAM,CAAC,QAAQ,CAAC,QAAQ,gxDAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,yBAAyB;IAGnD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,gBAAgB;CAGpB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable__factory.js deleted file mode 100644 index 1943b780..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable__factory.js +++ /dev/null @@ -1,111 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ERC20Recoverable__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "previousOwner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnershipTransferred", - type: "event", - }, - { - inputs: [], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_token", - type: "address", - }, - { - internalType: "address", - name: "_to", - type: "address", - }, - { - internalType: "uint256", - name: "_amount", - type: "uint256", - }, - ], - name: "recoverFunds", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "renounceOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "transferOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -const _bytecode = "0x608060405234801561001057600080fd5b5061001a3361001f565b61006f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6103068061007e6000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c80635d3590d514610051578063715018a6146100665780638da5cb5b1461006e578063f2fde38b1461008d575b600080fd5b61006461005f366004610279565b6100a0565b005b610064610121565b600054604080516001600160a01b039092168252519081900360200190f35b61006461009b3660046102b5565b610135565b6100a86101b3565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303816000875af11580156100f7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061011b91906102d7565b50505050565b6101296101b3565b610133600061020d565b565b61013d6101b3565b6001600160a01b0381166101a75760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b6101b08161020d565b50565b6000546001600160a01b031633146101335760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161019e565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80356001600160a01b038116811461027457600080fd5b919050565b60008060006060848603121561028e57600080fd5b6102978461025d565b92506102a56020850161025d565b9150604084013590509250925092565b6000602082840312156102c757600080fd5b6102d08261025d565b9392505050565b6000602082840312156102e957600080fd5b815180151581146102d057600080fdfea164736f6c6343000811000a"; -const isSuperArgs = (xs) => xs.length > 1; -class ERC20Recoverable__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(overrides) { - return super.getDeployTransaction(overrides || {}); - } - deploy(overrides) { - return super.deploy(overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.ERC20Recoverable__factory = ERC20Recoverable__factory; -ERC20Recoverable__factory.bytecode = _bytecode; -ERC20Recoverable__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/utils/index.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/utils/index.d.ts deleted file mode 100644 index 803f070f..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/utils/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export { ERC20Recoverable__factory } from "./ERC20Recoverable__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/utils/index.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/utils/index.d.ts.map deleted file mode 100644 index ca35c472..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/utils/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/utils/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/utils/index.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/utils/index.js deleted file mode 100644 index ba855552..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/utils/index.js +++ /dev/null @@ -1,5 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ERC20Recoverable__factory = void 0; -var ERC20Recoverable__factory_1 = require("./ERC20Recoverable__factory"); -Object.defineProperty(exports, "ERC20Recoverable__factory", { enumerable: true, get: function () { return ERC20Recoverable__factory_1.ERC20Recoverable__factory; } }); diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/Controllable__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/Controllable__factory.d.ts deleted file mode 100644 index 315473ef..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/Controllable__factory.d.ts +++ /dev/null @@ -1,107 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../../../common"; -import type { Controllable, ControllableInterface } from "../../../../../@ensdomains/ens-contracts/contracts/wrapper/Controllable"; -declare type ControllableConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class Controllable__factory extends ContractFactory { - constructor(...args: ControllableConstructorParams); - getDeployTransaction(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): Controllable__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b5061001a3361001f565b61006f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6103098061007e6000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c8063715018a61461005c5780638da5cb5b14610066578063da8c229e14610086578063e0dba60f146100b9578063f2fde38b146100cc575b600080fd5b6100646100df565b005b6000546040516001600160a01b0390911681526020015b60405180910390f35b6100a961009436600461029e565b60016020526000908152604090205460ff1681565b604051901515815260200161007d565b6100646100c73660046102c0565b6100f3565b6100646100da36600461029e565b61015a565b6100e76101d8565b6100f16000610232565b565b6100fb6101d8565b6001600160a01b038216600081815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b6101626101d8565b6001600160a01b0381166101cc5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b6101d581610232565b50565b6000546001600160a01b031633146100f15760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016101c3565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80356001600160a01b038116811461029957600080fd5b919050565b6000602082840312156102b057600080fd5b6102b982610282565b9392505050565b600080604083850312156102d357600080fd5b6102dc83610282565b9150602083013580151581146102f157600080fd5b80915050925092905056fea164736f6c6343000811000a"; - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "controller"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "bool"; - readonly name: "active"; - readonly type: "bool"; - }]; - readonly name: "ControllerChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "previousOwner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "newOwner"; - readonly type: "address"; - }]; - readonly name: "OwnershipTransferred"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly name: "controllers"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "owner"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "renounceOwnership"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "controller"; - readonly type: "address"; - }, { - readonly internalType: "bool"; - readonly name: "active"; - readonly type: "bool"; - }]; - readonly name: "setController"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "newOwner"; - readonly type: "address"; - }]; - readonly name: "transferOwnership"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): ControllableInterface; - static connect(address: string, runner?: ContractRunner | null): Controllable; -} -export {}; -//# sourceMappingURL=Controllable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/Controllable__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/Controllable__factory.d.ts.map deleted file mode 100644 index 1d733df5..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/Controllable__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Controllable__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/wrapper/Controllable__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,YAAY,EACZ,qBAAqB,EACtB,MAAM,yEAAyE,CAAC;AAoHjF,aAAK,6BAA6B,GAC9B,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,qBAAsB,SAAQ,eAAe;gBAC5C,GAAG,IAAI,EAAE,6BAA6B;IAQzC,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,qBAAqB;IAItE,MAAM,CAAC,QAAQ,CAAC,QAAQ,sxDAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,qBAAqB;IAG/C,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,YAAY;CAGhB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/Controllable__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/Controllable__factory.js deleted file mode 100644 index 922055b5..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/Controllable__factory.js +++ /dev/null @@ -1,144 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.Controllable__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "controller", - type: "address", - }, - { - indexed: false, - internalType: "bool", - name: "active", - type: "bool", - }, - ], - name: "ControllerChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "previousOwner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnershipTransferred", - type: "event", - }, - { - inputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - name: "controllers", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "renounceOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "controller", - type: "address", - }, - { - internalType: "bool", - name: "active", - type: "bool", - }, - ], - name: "setController", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "transferOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -const _bytecode = "0x608060405234801561001057600080fd5b5061001a3361001f565b61006f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6103098061007e6000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c8063715018a61461005c5780638da5cb5b14610066578063da8c229e14610086578063e0dba60f146100b9578063f2fde38b146100cc575b600080fd5b6100646100df565b005b6000546040516001600160a01b0390911681526020015b60405180910390f35b6100a961009436600461029e565b60016020526000908152604090205460ff1681565b604051901515815260200161007d565b6100646100c73660046102c0565b6100f3565b6100646100da36600461029e565b61015a565b6100e76101d8565b6100f16000610232565b565b6100fb6101d8565b6001600160a01b038216600081815260016020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf87910160405180910390a25050565b6101626101d8565b6001600160a01b0381166101cc5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b6101d581610232565b50565b6000546001600160a01b031633146100f15760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016101c3565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80356001600160a01b038116811461029957600080fd5b919050565b6000602082840312156102b057600080fd5b6102b982610282565b9392505050565b600080604083850312156102d357600080fd5b6102dc83610282565b9150602083013580151581146102f157600080fd5b80915050925092905056fea164736f6c6343000811000a"; -const isSuperArgs = (xs) => xs.length > 1; -class Controllable__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(overrides) { - return super.getDeployTransaction(overrides || {}); - } - deploy(overrides) { - return super.deploy(overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.Controllable__factory = Controllable__factory; -Controllable__factory.bytecode = _bytecode; -Controllable__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse__factory.d.ts deleted file mode 100644 index c8d85cb6..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse__factory.d.ts +++ /dev/null @@ -1,349 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { ERC1155Fuse, ERC1155FuseInterface } from "../../../../../@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse"; -export declare class ERC1155Fuse__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "approved"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Approval"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "ApprovalForAll"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "uint256[]"; - readonly name: "ids"; - readonly type: "uint256[]"; - }, { - readonly indexed: false; - readonly internalType: "uint256[]"; - readonly name: "values"; - readonly type: "uint256[]"; - }]; - readonly name: "TransferBatch"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "value"; - readonly type: "uint256"; - }]; - readonly name: "TransferSingle"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }]; - readonly name: "URI"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly name: "_tokens"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "approve"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }]; - readonly name: "balanceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address[]"; - readonly name: "accounts"; - readonly type: "address[]"; - }, { - readonly internalType: "uint256[]"; - readonly name: "ids"; - readonly type: "uint256[]"; - }]; - readonly name: "balanceOfBatch"; - readonly outputs: readonly [{ - readonly internalType: "uint256[]"; - readonly name: ""; - readonly type: "uint256[]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getApproved"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getData"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "uint32"; - readonly name: "fuses"; - readonly type: "uint32"; - }, { - readonly internalType: "uint64"; - readonly name: "expiry"; - readonly type: "uint64"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly name: "isApprovedForAll"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }]; - readonly name: "ownerOf"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256[]"; - readonly name: "ids"; - readonly type: "uint256[]"; - }, { - readonly internalType: "uint256[]"; - readonly name: "amounts"; - readonly type: "uint256[]"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "safeBatchTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "amount"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "setApprovalForAll"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }]; - readonly name: "uri"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): ERC1155FuseInterface; - static connect(address: string, runner?: ContractRunner | null): ERC1155Fuse; -} -//# sourceMappingURL=ERC1155Fuse__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse__factory.d.ts.map deleted file mode 100644 index 0e9fd0ba..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ERC1155Fuse__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,WAAW,EACX,oBAAoB,EACrB,MAAM,wEAAwE,CAAC;AA8bhF,qBAAa,oBAAoB;IAC/B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,oBAAoB;IAG9C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,WAAW;CAG7E"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse__factory.js deleted file mode 100644 index 2fa39798..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse__factory.js +++ /dev/null @@ -1,457 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ERC1155Fuse__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "approved", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Approval", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: false, - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "ApprovalForAll", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: false, - internalType: "uint256[]", - name: "ids", - type: "uint256[]", - }, - { - indexed: false, - internalType: "uint256[]", - name: "values", - type: "uint256[]", - }, - ], - name: "TransferBatch", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "value", - type: "uint256", - }, - ], - name: "TransferSingle", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "string", - name: "value", - type: "string", - }, - { - indexed: true, - internalType: "uint256", - name: "id", - type: "uint256", - }, - ], - name: "URI", - type: "event", - }, - { - inputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - name: "_tokens", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "approve", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address[]", - name: "accounts", - type: "address[]", - }, - { - internalType: "uint256[]", - name: "ids", - type: "uint256[]", - }, - ], - name: "balanceOfBatch", - outputs: [ - { - internalType: "uint256[]", - name: "", - type: "uint256[]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getApproved", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getData", - outputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "uint32", - name: "fuses", - type: "uint32", - }, - { - internalType: "uint64", - name: "expiry", - type: "uint64", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - name: "isApprovedForAll", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - ], - name: "ownerOf", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256[]", - name: "ids", - type: "uint256[]", - }, - { - internalType: "uint256[]", - name: "amounts", - type: "uint256[]", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "safeBatchTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "safeTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "setApprovalForAll", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - ], - name: "uri", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class ERC1155Fuse__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.ERC1155Fuse__factory = ERC1155Fuse__factory; -ERC1155Fuse__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService__factory.d.ts deleted file mode 100644 index 787d02a7..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService__factory.d.ts +++ /dev/null @@ -1,22 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IMetadataService, IMetadataServiceInterface } from "../../../../../@ensdomains/ens-contracts/contracts/wrapper/IMetadataService"; -export declare class IMetadataService__factory { - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly name: "uri"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): IMetadataServiceInterface; - static connect(address: string, runner?: ContractRunner | null): IMetadataService; -} -//# sourceMappingURL=IMetadataService__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService__factory.d.ts.map deleted file mode 100644 index b993e8ee..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IMetadataService__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,gBAAgB,EAChB,yBAAyB,EAC1B,MAAM,6EAA6E,CAAC;AAwBrF,qBAAa,yBAAyB;IACpC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,yBAAyB;IAGnD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,gBAAgB;CAGpB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService__factory.js deleted file mode 100644 index 02044446..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService__factory.js +++ /dev/null @@ -1,35 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IMetadataService__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - name: "uri", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class IMetadataService__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IMetadataService__factory = IMetadataService__factory; -IMetadataService__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade__factory.d.ts deleted file mode 100644 index 629a1a73..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade__factory.d.ts +++ /dev/null @@ -1,38 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { INameWrapperUpgrade, INameWrapperUpgradeInterface } from "../../../../../@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade"; -export declare class INameWrapperUpgrade__factory { - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "bytes"; - readonly name: "name"; - readonly type: "bytes"; - }, { - readonly internalType: "address"; - readonly name: "wrappedOwner"; - readonly type: "address"; - }, { - readonly internalType: "uint32"; - readonly name: "fuses"; - readonly type: "uint32"; - }, { - readonly internalType: "uint64"; - readonly name: "expiry"; - readonly type: "uint64"; - }, { - readonly internalType: "address"; - readonly name: "approved"; - readonly type: "address"; - }, { - readonly internalType: "bytes"; - readonly name: "extraData"; - readonly type: "bytes"; - }]; - readonly name: "wrapFromUpgrade"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): INameWrapperUpgradeInterface; - static connect(address: string, runner?: ContractRunner | null): INameWrapperUpgrade; -} -//# sourceMappingURL=INameWrapperUpgrade__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade__factory.d.ts.map deleted file mode 100644 index bc3ea13e..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"INameWrapperUpgrade__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,mBAAmB,EACnB,4BAA4B,EAC7B,MAAM,gFAAgF,CAAC;AA2CxF,qBAAa,4BAA4B;IACvC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,4BAA4B;IAGtD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,mBAAmB;CAOvB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade__factory.js deleted file mode 100644 index 27fadbaa..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade__factory.js +++ /dev/null @@ -1,54 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.INameWrapperUpgrade__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "bytes", - name: "name", - type: "bytes", - }, - { - internalType: "address", - name: "wrappedOwner", - type: "address", - }, - { - internalType: "uint32", - name: "fuses", - type: "uint32", - }, - { - internalType: "uint64", - name: "expiry", - type: "uint64", - }, - { - internalType: "address", - name: "approved", - type: "address", - }, - { - internalType: "bytes", - name: "extraData", - type: "bytes", - }, - ], - name: "wrapFromUpgrade", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -class INameWrapperUpgrade__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.INameWrapperUpgrade__factory = INameWrapperUpgrade__factory; -INameWrapperUpgrade__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper__factory.d.ts deleted file mode 100644 index 7f35ad7c..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper__factory.d.ts +++ /dev/null @@ -1,864 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { INameWrapper, INameWrapperInterface } from "../../../../../@ensdomains/ens-contracts/contracts/wrapper/INameWrapper"; -export declare class INameWrapper__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "ApprovalForAll"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "uint64"; - readonly name: "expiry"; - readonly type: "uint64"; - }]; - readonly name: "ExpiryExtended"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "uint32"; - readonly name: "fuses"; - readonly type: "uint32"; - }]; - readonly name: "FusesSet"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "NameUnwrapped"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "bytes"; - readonly name: "name"; - readonly type: "bytes"; - }, { - readonly indexed: false; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "uint32"; - readonly name: "fuses"; - readonly type: "uint32"; - }, { - readonly indexed: false; - readonly internalType: "uint64"; - readonly name: "expiry"; - readonly type: "uint64"; - }]; - readonly name: "NameWrapped"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "uint256[]"; - readonly name: "ids"; - readonly type: "uint256[]"; - }, { - readonly indexed: false; - readonly internalType: "uint256[]"; - readonly name: "values"; - readonly type: "uint256[]"; - }]; - readonly name: "TransferBatch"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "value"; - readonly type: "uint256"; - }]; - readonly name: "TransferSingle"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }]; - readonly name: "URI"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint32"; - readonly name: "fuseMask"; - readonly type: "uint32"; - }]; - readonly name: "allFusesBurned"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "approve"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }]; - readonly name: "balanceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address[]"; - readonly name: "accounts"; - readonly type: "address[]"; - }, { - readonly internalType: "uint256[]"; - readonly name: "ids"; - readonly type: "uint256[]"; - }]; - readonly name: "balanceOfBatch"; - readonly outputs: readonly [{ - readonly internalType: "uint256[]"; - readonly name: ""; - readonly type: "uint256[]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }]; - readonly name: "canModifyName"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "ens"; - readonly outputs: readonly [{ - readonly internalType: "contract ENS"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes32"; - readonly name: "labelhash"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint64"; - readonly name: "expiry"; - readonly type: "uint64"; - }]; - readonly name: "extendExpiry"; - readonly outputs: readonly [{ - readonly internalType: "uint64"; - readonly name: ""; - readonly type: "uint64"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getApproved"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }]; - readonly name: "getData"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }, { - readonly internalType: "uint32"; - readonly name: ""; - readonly type: "uint32"; - }, { - readonly internalType: "uint64"; - readonly name: ""; - readonly type: "uint64"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly name: "isApprovedForAll"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly name: "isWrapped"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly name: "isWrapped"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "metadataService"; - readonly outputs: readonly [{ - readonly internalType: "contract IMetadataService"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "name"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly name: "names"; - readonly outputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }]; - readonly name: "ownerOf"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }, { - readonly internalType: "address"; - readonly name: "wrappedOwner"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "duration"; - readonly type: "uint256"; - }, { - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }, { - readonly internalType: "uint16"; - readonly name: "ownerControlledFuses"; - readonly type: "uint16"; - }]; - readonly name: "registerAndWrapETH2LD"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "registrarExpiry"; - readonly type: "uint256"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "registrar"; - readonly outputs: readonly [{ - readonly internalType: "contract IBaseRegistrar"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "labelHash"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "duration"; - readonly type: "uint256"; - }]; - readonly name: "renew"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "expires"; - readonly type: "uint256"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256[]"; - readonly name: "ids"; - readonly type: "uint256[]"; - }, { - readonly internalType: "uint256[]"; - readonly name: "amounts"; - readonly type: "uint256[]"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "safeBatchTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "amount"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "setApprovalForAll"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "parentNode"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes32"; - readonly name: "labelhash"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint32"; - readonly name: "fuses"; - readonly type: "uint32"; - }, { - readonly internalType: "uint64"; - readonly name: "expiry"; - readonly type: "uint64"; - }]; - readonly name: "setChildFuses"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint16"; - readonly name: "ownerControlledFuses"; - readonly type: "uint16"; - }]; - readonly name: "setFuses"; - readonly outputs: readonly [{ - readonly internalType: "uint32"; - readonly name: "newFuses"; - readonly type: "uint32"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "contract IMetadataService"; - readonly name: "_metadataService"; - readonly type: "address"; - }]; - readonly name: "setMetadataService"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }, { - readonly internalType: "uint64"; - readonly name: "ttl"; - readonly type: "uint64"; - }]; - readonly name: "setRecord"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }]; - readonly name: "setResolver"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }, { - readonly internalType: "address"; - readonly name: "newOwner"; - readonly type: "address"; - }, { - readonly internalType: "uint32"; - readonly name: "fuses"; - readonly type: "uint32"; - }, { - readonly internalType: "uint64"; - readonly name: "expiry"; - readonly type: "uint64"; - }]; - readonly name: "setSubnodeOwner"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }, { - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }, { - readonly internalType: "uint64"; - readonly name: "ttl"; - readonly type: "uint64"; - }, { - readonly internalType: "uint32"; - readonly name: "fuses"; - readonly type: "uint32"; - }, { - readonly internalType: "uint64"; - readonly name: "expiry"; - readonly type: "uint64"; - }]; - readonly name: "setSubnodeRecord"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint64"; - readonly name: "ttl"; - readonly type: "uint64"; - }]; - readonly name: "setTTL"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "contract INameWrapperUpgrade"; - readonly name: "_upgradeAddress"; - readonly type: "address"; - }]; - readonly name: "setUpgradeContract"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceID"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes32"; - readonly name: "label"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "unwrap"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "label"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "newRegistrant"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "newController"; - readonly type: "address"; - }]; - readonly name: "unwrapETH2LD"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes"; - readonly name: "name"; - readonly type: "bytes"; - }, { - readonly internalType: "bytes"; - readonly name: "extraData"; - readonly type: "bytes"; - }]; - readonly name: "upgrade"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "upgradeContract"; - readonly outputs: readonly [{ - readonly internalType: "contract INameWrapperUpgrade"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "uri"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes"; - readonly name: "name"; - readonly type: "bytes"; - }, { - readonly internalType: "address"; - readonly name: "wrappedOwner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }]; - readonly name: "wrap"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }, { - readonly internalType: "address"; - readonly name: "wrappedOwner"; - readonly type: "address"; - }, { - readonly internalType: "uint16"; - readonly name: "ownerControlledFuses"; - readonly type: "uint16"; - }, { - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }]; - readonly name: "wrapETH2LD"; - readonly outputs: readonly [{ - readonly internalType: "uint64"; - readonly name: "expires"; - readonly type: "uint64"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): INameWrapperInterface; - static connect(address: string, runner?: ContractRunner | null): INameWrapper; -} -//# sourceMappingURL=INameWrapper__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper__factory.d.ts.map deleted file mode 100644 index 3c31ffc9..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"INameWrapper__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,YAAY,EACZ,qBAAqB,EACtB,MAAM,yEAAyE,CAAC;AA0lCjF,qBAAa,qBAAqB;IAChC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,qBAAqB;IAG/C,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,YAAY;CAGhB"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper__factory.js deleted file mode 100644 index 9ab7db4e..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper__factory.js +++ /dev/null @@ -1,1125 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.INameWrapper__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: false, - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "ApprovalForAll", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "uint64", - name: "expiry", - type: "uint64", - }, - ], - name: "ExpiryExtended", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "uint32", - name: "fuses", - type: "uint32", - }, - ], - name: "FusesSet", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "NameUnwrapped", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "bytes", - name: "name", - type: "bytes", - }, - { - indexed: false, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: false, - internalType: "uint32", - name: "fuses", - type: "uint32", - }, - { - indexed: false, - internalType: "uint64", - name: "expiry", - type: "uint64", - }, - ], - name: "NameWrapped", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: false, - internalType: "uint256[]", - name: "ids", - type: "uint256[]", - }, - { - indexed: false, - internalType: "uint256[]", - name: "values", - type: "uint256[]", - }, - ], - name: "TransferBatch", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "value", - type: "uint256", - }, - ], - name: "TransferSingle", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "string", - name: "value", - type: "string", - }, - { - indexed: true, - internalType: "uint256", - name: "id", - type: "uint256", - }, - ], - name: "URI", - type: "event", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "uint32", - name: "fuseMask", - type: "uint32", - }, - ], - name: "allFusesBurned", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "approve", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address[]", - name: "accounts", - type: "address[]", - }, - { - internalType: "uint256[]", - name: "ids", - type: "uint256[]", - }, - ], - name: "balanceOfBatch", - outputs: [ - { - internalType: "uint256[]", - name: "", - type: "uint256[]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "address", - name: "addr", - type: "address", - }, - ], - name: "canModifyName", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "ens", - outputs: [ - { - internalType: "contract ENS", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "labelhash", - type: "bytes32", - }, - { - internalType: "uint64", - name: "expiry", - type: "uint64", - }, - ], - name: "extendExpiry", - outputs: [ - { - internalType: "uint64", - name: "", - type: "uint64", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getApproved", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - ], - name: "getData", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - { - internalType: "uint32", - name: "", - type: "uint32", - }, - { - internalType: "uint64", - name: "", - type: "uint64", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - name: "isApprovedForAll", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - name: "isWrapped", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - name: "isWrapped", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "metadataService", - outputs: [ - { - internalType: "contract IMetadataService", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "name", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - name: "names", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - ], - name: "ownerOf", - outputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "label", - type: "string", - }, - { - internalType: "address", - name: "wrappedOwner", - type: "address", - }, - { - internalType: "uint256", - name: "duration", - type: "uint256", - }, - { - internalType: "address", - name: "resolver", - type: "address", - }, - { - internalType: "uint16", - name: "ownerControlledFuses", - type: "uint16", - }, - ], - name: "registerAndWrapETH2LD", - outputs: [ - { - internalType: "uint256", - name: "registrarExpiry", - type: "uint256", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "registrar", - outputs: [ - { - internalType: "contract IBaseRegistrar", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "labelHash", - type: "uint256", - }, - { - internalType: "uint256", - name: "duration", - type: "uint256", - }, - ], - name: "renew", - outputs: [ - { - internalType: "uint256", - name: "expires", - type: "uint256", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256[]", - name: "ids", - type: "uint256[]", - }, - { - internalType: "uint256[]", - name: "amounts", - type: "uint256[]", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "safeBatchTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "safeTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "setApprovalForAll", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "parentNode", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "labelhash", - type: "bytes32", - }, - { - internalType: "uint32", - name: "fuses", - type: "uint32", - }, - { - internalType: "uint64", - name: "expiry", - type: "uint64", - }, - ], - name: "setChildFuses", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "uint16", - name: "ownerControlledFuses", - type: "uint16", - }, - ], - name: "setFuses", - outputs: [ - { - internalType: "uint32", - name: "newFuses", - type: "uint32", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "contract IMetadataService", - name: "_metadataService", - type: "address", - }, - ], - name: "setMetadataService", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "address", - name: "resolver", - type: "address", - }, - { - internalType: "uint64", - name: "ttl", - type: "uint64", - }, - ], - name: "setRecord", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "address", - name: "resolver", - type: "address", - }, - ], - name: "setResolver", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - { - internalType: "address", - name: "newOwner", - type: "address", - }, - { - internalType: "uint32", - name: "fuses", - type: "uint32", - }, - { - internalType: "uint64", - name: "expiry", - type: "uint64", - }, - ], - name: "setSubnodeOwner", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "address", - name: "resolver", - type: "address", - }, - { - internalType: "uint64", - name: "ttl", - type: "uint64", - }, - { - internalType: "uint32", - name: "fuses", - type: "uint32", - }, - { - internalType: "uint64", - name: "expiry", - type: "uint64", - }, - ], - name: "setSubnodeRecord", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "uint64", - name: "ttl", - type: "uint64", - }, - ], - name: "setTTL", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "contract INameWrapperUpgrade", - name: "_upgradeAddress", - type: "address", - }, - ], - name: "setUpgradeContract", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceID", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "label", - type: "bytes32", - }, - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "unwrap", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "label", - type: "bytes32", - }, - { - internalType: "address", - name: "newRegistrant", - type: "address", - }, - { - internalType: "address", - name: "newController", - type: "address", - }, - ], - name: "unwrapETH2LD", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes", - name: "name", - type: "bytes", - }, - { - internalType: "bytes", - name: "extraData", - type: "bytes", - }, - ], - name: "upgrade", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "upgradeContract", - outputs: [ - { - internalType: "contract INameWrapperUpgrade", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "uri", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes", - name: "name", - type: "bytes", - }, - { - internalType: "address", - name: "wrappedOwner", - type: "address", - }, - { - internalType: "address", - name: "resolver", - type: "address", - }, - ], - name: "wrap", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "label", - type: "string", - }, - { - internalType: "address", - name: "wrappedOwner", - type: "address", - }, - { - internalType: "uint16", - name: "ownerControlledFuses", - type: "uint16", - }, - { - internalType: "address", - name: "resolver", - type: "address", - }, - ], - name: "wrapETH2LD", - outputs: [ - { - internalType: "uint64", - name: "expires", - type: "uint64", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, -]; -class INameWrapper__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.INameWrapper__factory = INameWrapper__factory; -INameWrapper__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper__factory.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper__factory.d.ts deleted file mode 100644 index e9bb0beb..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper__factory.d.ts +++ /dev/null @@ -1,1143 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, AddressLike, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../../../common"; -import type { NameWrapper, NameWrapperInterface } from "../../../../../@ensdomains/ens-contracts/contracts/wrapper/NameWrapper"; -declare type NameWrapperConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class NameWrapper__factory extends ContractFactory { - constructor(...args: NameWrapperConstructorParams); - getDeployTransaction(_ens: AddressLike, _registrar: AddressLike, _metadataService: AddressLike, overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(_ens: AddressLike, _registrar: AddressLike, _metadataService: AddressLike, overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): NameWrapper__factory; - static readonly bytecode = "0x60c06040523480156200001157600080fd5b5060405162005d2338038062005d238339810160408190526200003491620002f8565b823362000041816200028f565b6040516302571be360e01b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e260048201526000906001600160a01b038416906302571be390602401602060405180830381865afa158015620000a9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620000cf91906200034c565b604051630f41a04d60e11b81526001600160a01b03848116600483015291925090821690631e83409a906024016020604051808303816000875af11580156200011c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000142919062000373565b505050506001600160a01b0383811660805282811660a052600580546001600160a01b031916918316919091179055600163fffeffff60a01b03197fafa26c20e8b3d9a2853d642cfe1021dae26242ffedfac91c97aab212c1a4b93b8190557fa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb4955604080518082019091526001815260006020808301829052908052600690527f54cdd369e4e8a8515e52ca72ec816c2101831ad1f18bf44102ed171459c9b4f89062000210908262000432565b506040805180820190915260058152626cae8d60e31b6020808301919091527f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae600052600690527ffb9e8e321b8a5ec48f12a7b41f22c6e595d761285c9eb19d8dda7c99edf1b54f9062000285908262000432565b50505050620004fe565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b0381168114620002f557600080fd5b50565b6000806000606084860312156200030e57600080fd5b83516200031b81620002df565b60208501519093506200032e81620002df565b60408501519092506200034181620002df565b809150509250925092565b6000602082840312156200035f57600080fd5b81516200036c81620002df565b9392505050565b6000602082840312156200038657600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b600181811c90821680620003b857607f821691505b602082108103620003d957634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200042d57600081815260208120601f850160051c81016020861015620004085750805b601f850160051c820191505b81811015620004295782815560010162000414565b5050505b505050565b81516001600160401b038111156200044e576200044e6200038d565b62000466816200045f8454620003a3565b84620003df565b602080601f8311600181146200049e5760008415620004855750858301515b600019600386901b1c1916600185901b17855562000429565b600085815260208120601f198616915b82811015620004cf57888601518255948401946001909101908401620004ae565b5085821015620004ee5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60805160a0516157186200060b6000396000818161047301528181610aee01528181610b9101528181610c20015281816118c60152818161195c01528181611a0a01528181611adc01528181611b4d01528181611bd201528181611de601528181611f2201528181612054015281816121ac0152818161223201526129700152600081816104c001528181610a7401528181610d6a01528181610ef901528181610faa015281816112bc01528181611fa7015281816120d9015281816122dd0152818161248f0152818161276001528181612ba901528181612c5701528181612d0c01528181612d8d01528181613298015281816133eb015281816136530152613bff01526157186000f3fe608060405234801561001057600080fd5b506004361061029f5760003560e01c80636352211e11610167578063c93ab3fd116100ce578063e985e9c511610087578063e985e9c5146106d4578063eb8ae530146106e7578063ed70554d146106fa578063f242432a1461071a578063f2fde38b1461072d578063fd0cd0d91461074057600080fd5b8063c93ab3fd14610652578063cf40882314610665578063d8c9921a14610678578063d9a50c121461068b578063da8c229e1461069e578063e0dba60f146106c157600080fd5b8063a22cb46511610120578063a22cb465146105e0578063a4014982146105f3578063adf4960a14610606578063b6bcad2614610619578063c475abff1461062c578063c658e0861461063f57600080fd5b80636352211e146105635780636e5d6ad214610576578063715018a6146105a15780638b4dfa75146105a95780638cf8b41e146105bc5780638da5cb5b146105cf57600080fd5b80631f4e15041161020b5780633f15457f116101c45780633f15457f146104bb578063402906fc146104e257806341415eab1461050a5780634e1273f41461051d578063530954671461053d5780635d3590d51461055057600080fd5b80631f4e15041461043557806320c38e2b1461044857806324c1af441461045b5780632b20e3971461046e5780632eb2c2d61461049557806333c69ea9146104a857600080fd5b80630e4cd7251161025d5780630e4cd725146103aa5780630e89341c146103bd57806314ab9038146103d0578063150b7a02146103e35780631534e1771461040f5780631896f70a1461042257600080fd5b8062fdd58e146102a45780630178fe3f146102ca57806301ffc9a71461031057806306fdde0314610333578063081812fc1461036a578063095ea7b314610395575b600080fd5b6102b76102b236600461444c565b610753565b6040519081526020015b60405180910390f35b6102dd6102d8366004614478565b610800565b604080516001600160a01b03909416845263ffffffff90921660208401526001600160401b0316908201526060016102c1565b61032361031e3660046144a7565b610830565b60405190151581526020016102c1565b61035d6040518060400160405280600b81526020016a2730b6b2abb930b83832b960a91b81525081565b6040516102c19190614514565b61037d610378366004614478565b610870565b6040516001600160a01b0390911681526020016102c1565b6103a86103a336600461444c565b6108b5565b005b6103236103b8366004614527565b6108fb565b61035d6103cb366004614478565b610975565b6103a86103de366004614573565b6109e7565b6103f66103f13660046145e7565b610ae1565b6040516001600160e01b031990911681526020016102c1565b6103a861041d366004614659565b610cc1565b6103a8610430366004614527565b610ceb565b60075461037d906001600160a01b031681565b61035d610456366004614478565b610da1565b6102b761046936600461474f565b610e3b565b61037d7f000000000000000000000000000000000000000000000000000000000000000081565b6103a86104a3366004614875565b611021565b6103a86104b6366004614922565b61125f565b61037d7f000000000000000000000000000000000000000000000000000000000000000081565b6104f56104f036600461497a565b611430565b60405163ffffffff90911681526020016102c1565b610323610518366004614527565b6114cd565b61053061052b36600461499d565b611506565b6040516102c19190614a9a565b60055461037d906001600160a01b031681565b6103a861055e366004614aad565b61162f565b61037d610571366004614478565b6116b0565b610589610584366004614aee565b6116bb565b6040516001600160401b0390911681526020016102c1565b6103a86117ee565b6103a86105b7366004614b23565b611802565b6105896105ca366004614b65565b611928565b6000546001600160a01b031661037d565b6103a86105ee366004614bed565b611ca4565b6102b7610601366004614c1b565b611d7a565b610323610614366004614c9b565b611ebb565b6103a8610627366004614659565b611ee0565b6102b761063a366004614cbe565b612138565b6102b761064d366004614ce0565b6123a2565b6103a8610660366004614d52565b61256a565b6103a8610673366004614dbd565b6126bd565b6103a8610686366004614df5565b612857565b610323610699366004614cbe565b612920565b6103236106ac366004614659565b60046020526000908152604090205460ff1681565b6103a86106cf366004614bed565b6129ff565b6103236106e2366004614e23565b612a67565b6103a86106f5366004614e51565b612a95565b6102b7610708366004614478565b60016020526000908152604090205481565b6103a8610728366004614eb8565b612e39565b6103a861073b366004614659565b612ee6565b61032361074e366004614478565b612f5c565b60006001600160a01b0383166107c45760405162461bcd60e51b815260206004820152602b60248201527f455243313135353a2062616c616e636520717565727920666f7220746865207a60448201526a65726f206164647265737360a81b60648201526084015b60405180910390fd5b60006107cf836116b0565b9050836001600160a01b0316816001600160a01b0316036107f45760019150506107fa565b60009150505b92915050565b60008181526001602052604090205460a081901c60c082901c610824838383613034565b90959094509092509050565b60006001600160e01b03198216631b05885b60e31b148061086157506001600160e01b03198216630a85bd0160e11b145b806107fa57506107fa8261306a565b60008061087c836116b0565b90506001600160a01b0381166108955750600092915050565b6000838152600360205260409020546001600160a01b03165b9392505050565b60006108c082610800565b50915050603f1960408216016108ec5760405163a2a7201360e01b8152600481018390526024016107bb565b6108f683836130ba565b505050565b600080808061090986610800565b925092509250846001600160a01b0316836001600160a01b0316148061093457506109348386612a67565b8061095857506001600160a01b03851661094d87610870565b6001600160a01b0316145b801561096b575061096982826131ca565b155b9695505050505050565b6005546040516303a24d0760e21b8152600481018390526060916001600160a01b031690630e89341c90602401600060405180830381865afa1580156109bf573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526107fa9190810190614f20565b816109f281336114cd565b610a1357803360405163168ab55d60e31b81526004016107bb929190614f97565b8260106000610a2183610800565b5091505063ffffffff8282161615610a4f5760405163a2a7201360e01b8152600481018490526024016107bb565b604051630295720760e31b8152600481018790526001600160401b03861660248201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906314ab9038906044015b600060405180830381600087803b158015610ac157600080fd5b505af1158015610ad5573d6000803e3d6000fd5b50505050505050505050565b6000336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610b2c5760405163032634a760e31b815260040160405180910390fd5b6000808080610b3d86880188614fae565b83516020850120939750919550935091508890808214610b7a576040516331970f3360e21b815260048101829052602481018390526044016107bb565b604051630a3b53db60e21b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906328ed4f6c90610bc89085903090600401614f97565b600060405180830381600087803b158015610be257600080fd5b505af1158015610bf6573d6000803e3d6000fd5b5050604051636b727d4360e11b8152600481018d9052600092506276a70091506001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063d6e4fa8690602401602060405180830381865afa158015610c67573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c8b9190615015565b610c959190615044565b9050610ca887878761ffff1684886131fa565b50630a85bd0160e11b9c9b505050505050505050505050565b610cc961330b565b600580546001600160a01b0319166001600160a01b0392909216919091179055565b81610cf681336114cd565b610d1757803360405163168ab55d60e31b81526004016107bb929190614f97565b8260086000610d2583610800565b5091505063ffffffff8282161615610d535760405163a2a7201360e01b8152600481018490526024016107bb565b604051630c4b7b8560e11b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690631896f70a90610aa79089908990600401614f97565b60066020526000908152604090208054610dba9061506b565b80601f0160208091040260200160405190810160405280929190818152602001828054610de69061506b565b8015610e335780601f10610e0857610100808354040283529160200191610e33565b820191906000526020600020905b815481529060010190602001808311610e1657829003601f168201915b505050505081565b600087610e4881336114cd565b610e6957803360405163168ab55d60e31b81526004016107bb929190614f97565b87516020890120610e7a8a82613365565b9250610e868a84613391565b610e9083866134cf565b610e9b8a848b613502565b50610ea88a8487876135cf565b9350610eb383613615565b610f68576040516305ef2c7f60e41b8152600481018b9052602481018290523060448201526001600160a01b0388811660648301526001600160401b03881660848301527f00000000000000000000000000000000000000000000000000000000000000001690635ef2c7f09060a401600060405180830381600087803b158015610f3d57600080fd5b505af1158015610f51573d6000803e3d6000fd5b50505050610f638a848b8b89896136ce565b611014565b6040516305ef2c7f60e41b8152600481018b9052602481018290523060448201526001600160a01b0388811660648301526001600160401b03881660848301527f00000000000000000000000000000000000000000000000000000000000000001690635ef2c7f09060a401600060405180830381600087803b158015610fee57600080fd5b505af1158015611002573d6000803e3d6000fd5b505050506110148a848b8b8989613705565b5050979650505050505050565b81518351146110835760405162461bcd60e51b815260206004820152602860248201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206044820152670dad2e6dac2e8c6d60c31b60648201526084016107bb565b6001600160a01b0384166110a95760405162461bcd60e51b81526004016107bb906150a5565b6001600160a01b0385163314806110c557506110c58533612a67565b61112c5760405162461bcd60e51b815260206004820152603260248201527f455243313135353a207472616e736665722063616c6c6572206973206e6f74206044820152711bdddb995c881b9bdc88185c1c1c9bdd995960721b60648201526084016107bb565b60005b83518110156111f257600084828151811061114c5761114c6150ea565b60200260200101519050600084838151811061116a5761116a6150ea565b60200260200101519050600080600061118285610800565b9250925092506111938583836137c9565b8360011480156111b457508a6001600160a01b0316836001600160a01b0316145b6111d05760405162461bcd60e51b81526004016107bb90615100565b6111dc858b8484613872565b5050505050806111eb9061514a565b905061112f565b50836001600160a01b0316856001600160a01b0316336001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051611242929190615163565b60405180910390a46112583386868686866138b4565b5050505050565b600061126b8585613365565b905061127781846134cf565b6000808061128484610800565b919450925090506001600160a01b038316158061133357506040516302571be360e01b81526004810185905230906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906302571be390602401602060405180830381865afa158015611303573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113279190615191565b6001600160a01b031614155b1561135157604051635374b59960e01b815260040160405180910390fd5b60008061135d8a610800565b90935091508a90506113995761137386336114cd565b61139457853360405163168ab55d60e31b81526004016107bb929190614f97565b6113c4565b6113a38a336114cd565b6113c457893360405163168ab55d60e31b81526004016107bb929190614f97565b6113cf868984613a0f565b6113da878483613a4a565b9650620100008416158015906113fe57508363ffffffff1688851763ffffffff1614155b1561141f5760405163a2a7201360e01b8152600481018790526024016107bb565b96831796610ad586868a868b613a90565b60008261143d81336114cd565b61145e57803360405163168ab55d60e31b81526004016107bb929190614f97565b836002600061146c83610800565b5091505063ffffffff828216161561149a5760405163a2a7201360e01b8152600481018490526024016107bb565b600080806114a78a610800565b9250925092506114c08a84848c61ffff16178485613a90565b5098975050505050505050565b60008080806114db86610800565b925092509250846001600160a01b0316836001600160a01b0316148061095857506109588386612a67565b6060815183511461156b5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b60648201526084016107bb565b600083516001600160401b0381111561158657611586614676565b6040519080825280602002602001820160405280156115af578160200160208202803683370190505b50905060005b8451811015611627576115fa8582815181106115d3576115d36150ea565b60200260200101518583815181106115ed576115ed6150ea565b6020026020010151610753565b82828151811061160c5761160c6150ea565b60209081029190910101526116208161514a565b90506115b5565b509392505050565b61163761330b565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303816000875af1158015611686573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116aa91906151ae565b50505050565b60006107fa82613b37565b6000806116c88585613365565b90506116d381613615565b6116f057604051635374b59960e01b815260040160405180910390fd5b60006116fc86336108fb565b905080158015611713575061171182336114cd565b155b1561173557813360405163168ab55d60e31b81526004016107bb929190614f97565b6000808061174285610800565b925092509250831580156117595750620400008216155b1561177a5760405163a2a7201360e01b8152600481018690526024016107bb565b60006117858a610800565b92505050611794888383613a4a565b97506117a28685858b613b4d565b6040516001600160401b038916815286907ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b1329060200160405180910390a2509598975050505050505050565b6117f661330b565b6118006000613b63565b565b61181a6000805160206156ec83398151915284613365565b61182481336114cd565b61184557803360405163168ab55d60e31b81526004016107bb929190614f97565b306001600160a01b0384160361187957604051632ca49b0d60e11b81526001600160a01b03841660048201526024016107bb565b61189a6118946000805160206156ec83398151915286613365565b83613bb3565b604051632142170760e11b81523060048201526001600160a01b038481166024830152604482018690527f000000000000000000000000000000000000000000000000000000000000000016906342842e0e90606401600060405180830381600087803b15801561190a57600080fd5b505af115801561191e573d6000803e3d6000fd5b5050505050505050565b600080868660405161193b9291906151cb565b6040519081900381206331a9108f60e11b82526004820181905291506000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690636352211e90602401602060405180830381865afa1580156119ab573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119cf9190615191565b90506001600160a01b0381163314801590611a77575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000000000000000000000000000000000000000000000169063e985e9c590604401602060405180830381865afa158015611a51573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a7591906151ae565b155b15611ab057611a946000805160206156ec83398151915283613365565b3360405163168ab55d60e31b81526004016107bb929190614f97565b6040516323b872dd60e01b81526001600160a01b038281166004830152306024830152604482018490527f000000000000000000000000000000000000000000000000000000000000000016906323b872dd90606401600060405180830381600087803b158015611b2057600080fd5b505af1158015611b34573d6000803e3d6000fd5b5050604051630a3b53db60e21b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001692506328ed4f6c9150611b869085903090600401614f97565b600060405180830381600087803b158015611ba057600080fd5b505af1158015611bb4573d6000803e3d6000fd5b5050604051636b727d4360e11b8152600481018590526276a70092507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316915063d6e4fa8690602401602060405180830381865afa158015611c22573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c469190615015565b611c509190615044565b9250611c9988888080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508a9250505061ffff881686886131fa565b505095945050505050565b6001600160a01b0382163303611d0e5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084016107bb565b3360008181526002602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b3360009081526004602052604081205460ff16611da95760405162461bcd60e51b81526004016107bb906151db565b60008787604051611dbb9291906151cb565b604051908190038120633f2891eb60e21b8252600482018190523060248301526044820187905291507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063fca247ac906064016020604051808303816000875af1158015611e37573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e5b9190615015565b9150611eb088888080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508a9250505061ffff8616611eaa6276a70087615044565b886131fa565b509695505050505050565b600080611ec784610800565b50841663ffffffff908116908516149250505092915050565b611ee861330b565b6007546001600160a01b0316156120085760075460405163a22cb46560e01b81526001600160a01b039182166004820152600060248201527f00000000000000000000000000000000000000000000000000000000000000009091169063a22cb46590604401600060405180830381600087803b158015611f6857600080fd5b505af1158015611f7c573d6000803e3d6000fd5b505060075460405163a22cb46560e01b81526001600160a01b039182166004820152600060248201527f0000000000000000000000000000000000000000000000000000000000000000909116925063a22cb4659150604401600060405180830381600087803b158015611fef57600080fd5b505af1158015612003573d6000803e3d6000fd5b505050505b600780546001600160a01b0319166001600160a01b038316908117909155156121355760075460405163a22cb46560e01b81526001600160a01b039182166004820152600160248201527f00000000000000000000000000000000000000000000000000000000000000009091169063a22cb46590604401600060405180830381600087803b15801561209a57600080fd5b505af11580156120ae573d6000803e3d6000fd5b505060075460405163a22cb46560e01b81526001600160a01b039182166004820152600160248201527f0000000000000000000000000000000000000000000000000000000000000000909116925063a22cb4659150604401600060405180830381600087803b15801561212157600080fd5b505af1158015611258573d6000803e3d6000fd5b50565b3360009081526004602052604081205460ff166121675760405162461bcd60e51b81526004016107bb906151db565b60006121816000805160206156ec83398151915285613365565b60405163c475abff60e01b815260048101869052602481018590529091506000906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063c475abff906044016020604051808303816000875af11580156121f5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122199190615015565b6040516331a9108f60e11b8152600481018790529091507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690636352211e90602401602060405180830381865afa92505050801561229d575060408051601f3d908101601f1916820190925261229a91810190615191565b60015b6122aa5791506107fa9050565b6001600160a01b0381163014158061235457506040516302571be360e01b81526004810184905230906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906302571be390602401602060405180830381865afa158015612324573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123489190615191565b6001600160a01b031614155b15612363575091506107fa9050565b5060006123736276a70083615044565b60008481526001602052604090205490915060a081901c61239685838386613b4d565b50919695505050505050565b6000866123af81336114cd565b6123d057803360405163168ab55d60e31b81526004016107bb929190614f97565b600087876040516123e29291906151cb565b604051809103902090506123f68982613365565b92506124028984613391565b61240c83866134cf565b600061244f8a858b8b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061350292505050565b905061245d8a8588886135cf565b945061246884613615565b612517576040516306ab592360e01b8152600481018b9052602481018390523060448201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906306ab5923906064016020604051808303816000875af11580156124e0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125049190615015565b506125128482898989613ca3565b61255d565b61255d8a858b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508d92508c91508b9050613705565b5050509695505050505050565b60006125b0600086868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509293925050613ce59050565b6007549091506001600160a01b03166125dc5760405163093075b560e21b815260040160405180910390fd5b6125e681336114cd565b61260757803360405163168ab55d60e31b81526004016107bb929190614f97565b6000808061261484610800565b91945092509050600061262685610870565b905061263185613da4565b600760009054906101000a90046001600160a01b03166001600160a01b0316639198c2768a8a878787878e8e6040518963ffffffff1660e01b815260040161268098979695949392919061524c565b600060405180830381600087803b15801561269a57600080fd5b505af11580156126ae573d6000803e3d6000fd5b50505050505050505050505050565b836126c881336114cd565b6126e957803360405163168ab55d60e31b81526004016107bb929190614f97565b84601c60006126f783610800565b5091505063ffffffff82821616156127255760405163a2a7201360e01b8152600481018490526024016107bb565b60405163cf40882360e01b8152600481018990523060248201526001600160a01b0387811660448301526001600160401b03871660648301527f0000000000000000000000000000000000000000000000000000000000000000169063cf40882390608401600060405180830381600087803b1580156127a457600080fd5b505af11580156127b8573d6000803e3d6000fd5b5050506001600160a01b038816905061281f5760006127d689610800565b509150506201ffff196202000082160161280e57604051632ca49b0d60e11b81526001600160a01b03891660048201526024016107bb565b612819896000613bb3565b5061191e565b600061282a896116b0565b905061284c81898b60001c600160405180602001604052806000815250613e44565b505050505050505050565b6128618383613365565b61286b81336114cd565b61288c57803360405163168ab55d60e31b81526004016107bb929190614f97565b7f6c32148f748aba23997146d7fe89e962e3cc30271290fb96f5f4337756c03b5284016128cc5760405163615a470360e01b815260040160405180910390fd5b6001600160a01b03821615806128ea57506001600160a01b03821630145b1561291357604051632ca49b0d60e11b81526001600160a01b03831660048201526024016107bb565b6116aa6118948585613365565b60008061292d8484613365565b9050600061293a82613615565b90506000805160206156ec833981519152851461295a5791506107fa9050565b6040516331a9108f60e11b8152600481018590527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690636352211e90602401602060405180830381865afa9250505080156129db575060408051601f3d908101601f191682019092526129d891810190615191565b60015b6129ea576000925050506107fa565b6001600160a01b0316301492506107fa915050565b612a0761330b565b6001600160a01b038216600081815260046020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf8791015b60405180910390a25050565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205460ff1690565b600080612adc600087878080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509293925050613f269050565b915091506000612b258288888080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509293925050613ce59050565b90506000612b338285613365565b6000818152600660205260409020909150612b4f888a836152fa565b507f6c32148f748aba23997146d7fe89e962e3cc30271290fb96f5f4337756c03b528201612b905760405163615a470360e01b815260040160405180910390fd5b6040516302571be360e01b8152600481018290526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906302571be390602401602060405180830381865afa158015612bf8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612c1c9190615191565b90506001600160a01b0381163314801590612cc4575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000000000000000000000000000000000000000000000169063e985e9c590604401602060405180830381865afa158015612c9e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612cc291906151ae565b155b15612ce657813360405163168ab55d60e31b81526004016107bb929190614f97565b6001600160a01b03861615612d7657604051630c4b7b8560e11b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690631896f70a90612d439085908a90600401614f97565b600060405180830381600087803b158015612d5d57600080fd5b505af1158015612d71573d6000803e3d6000fd5b505050505b604051635b0fc9c360e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690635b0fc9c390612dc49085903090600401614f97565b600060405180830381600087803b158015612dde57600080fd5b505af1158015612df2573d6000803e3d6000fd5b5050505061284c828a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201829052508d93509150819050613ca3565b6001600160a01b038416612e5f5760405162461bcd60e51b81526004016107bb906150a5565b6001600160a01b038516331480612e7b5750612e7b8533612a67565b612ed95760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2063616c6c6572206973206e6f74206f776e6572206e6f7260448201526808185c1c1c9bdd995960ba1b60648201526084016107bb565b6112588585858585613e44565b612eee61330b565b6001600160a01b038116612f535760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107bb565b61213581613b63565b60008181526006602052604081208054829190612f789061506b565b80601f0160208091040260200160405190810160405280929190818152602001828054612fa49061506b565b8015612ff15780601f10612fc657610100808354040283529160200191612ff1565b820191906000526020600020905b815481529060010190602001808311612fd457829003601f168201915b50505050509050805160000361300a5750600092915050565b6000806130178382613f26565b909250905060006130288483613ce5565b905061096b8184612920565b60008042836001600160401b031610156130615761ffff196201000085160161305c57600094505b600093505b50929391925050565b60006001600160e01b03198216636cdb3d1360e11b148061309b57506001600160e01b031982166303a24d0760e21b145b806107fa57506301ffc9a760e01b6001600160e01b03198316146107fa565b60006130c5826116b0565b9050806001600160a01b0316836001600160a01b0316036131325760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084016107bb565b336001600160a01b038216148061314e575061314e8133612a67565b6131c05760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016107bb565b6108f68383613fdd565b6000620200008381161480156108ae5750426131e96276a700846153b9565b6001600160401b0316109392505050565b84516020860120600061321b6000805160206156ec83398151915283613365565b9050600061324488604051806040016040528060058152602001626cae8d60e31b81525061404b565b600083815260066020526040902090915061325f82826153d9565b50613272828289620300008a1789613ca3565b6001600160a01b0384161561191e57604051630c4b7b8560e11b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690631896f70a906132cf9085908890600401614f97565b600060405180830381600087803b1580156132e957600080fd5b505af11580156132fd573d6000803e3d6000fd5b505050505050505050505050565b6000546001600160a01b031633146118005760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107bb565b604080516020808201949094528082019290925280518083038201815260609092019052805191012090565b6000808061339e84610800565b91945092509050426001600160401b0382161080801561346157506001600160a01b038416158061346157506040516302571be360e01b8152600481018690526000906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906302571be390602401602060405180830381865afa158015613432573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906134569190615191565b6001600160a01b0316145b156134a057600061347187610800565b50915050602081161561349a5760405163a2a7201360e01b8152600481018790526024016107bb565b506134c7565b620100008316156134c75760405163a2a7201360e01b8152600481018690526024016107bb565b505050505050565b63fffdffff81811763ffffffff16146134fe5760405163a2a7201360e01b8152600481018390526024016107bb565b5050565b606060006135ab836006600088815260200190815260200160002080546135289061506b565b80601f01602080910402602001604051908101604052809291908181526020018280546135549061506b565b80156135a15780601f10613576576101008083540402835291602001916135a1565b820191906000526020600020905b81548152906001019060200180831161358457829003601f168201915b505050505061404b565b60008581526006602052604090209091506135c682826153d9565b50949350505050565b6000806135db85610800565b925050506000806135ee8860001c610800565b92509250506135fe878784613a0f565b613609858483613a4a565b98975050505050505050565b600080613621836116b0565b6001600160a01b0316141580156107fa57506040516302571be360e01b81526004810183905230906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906302571be390602401602060405180830381865afa15801561369a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906136be9190615191565b6001600160a01b03161492915050565b600086815260066020526040812080546136ed9187916135289061506b565b90506136fc8682868686613ca3565b50505050505050565b6000808061371288610800565b925092509250600061373c88600660008d815260200190815260200160002080546135289061506b565b60008a81526006602052604090208054919250906137599061506b565b905060000361377c57600089815260066020526040902061377a82826153d9565b505b61378b89858886178589613a90565b6001600160a01b0387166137a9576137a4896000613bb3565b610ad5565b610ad584888b60001c600160405180602001604052806000815250613e44565b6201ffff19620200008316016137e9576137e66276a700826153b9565b90505b42816001600160401b03161015613822576201000082161561381d5760405162461bcd60e51b81526004016107bb90615100565b613847565b60048216156138475760405163a2a7201360e01b8152600481018490526024016107bb565b604082166000036108f6575050600090815260036020526040902080546001600160a01b0319169055565b60c0816001600160401b0316901b60a08363ffffffff16901b846001600160a01b03161717600160008681526020019081526020016000208190555050505050565b6001600160a01b0384163b156134c75760405163bc197c8160e01b81526001600160a01b0385169063bc197c81906138f89089908990889088908890600401615498565b6020604051808303816000875af1925050508015613933575060408051601f3d908101601f19168201909252613930918101906154ea565b60015b6139df5761393f615507565b806308c379a0036139785750613953615523565b8061395e575061397a565b8060405162461bcd60e51b81526004016107bb9190614514565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e20455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b60648201526084016107bb565b6001600160e01b0319811663bc197c8160e01b146136fc5760405162461bcd60e51b81526004016107bb906155ac565b63ffff00008216158015906001831615908290613a295750805b156112585760405163a2a7201360e01b8152600481018690526024016107bb565b6000816001600160401b0316846001600160401b03161115613a6a578193505b826001600160401b0316846001600160401b03161015613a88578293505b509192915050565b613a9c85858584613b4d565b60405163ffffffff8416815285907f39873f00c80f4f94b7bd1594aebcf650f003545b74824d57ddf4939e3ff3a34b9060200160405180910390a2816001600160401b0316816001600160401b03161115611258576040516001600160401b038216815285907ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b132906020015b60405180910390a25050505050565b600080613b4383610800565b5090949350505050565b613b5784836140c2565b6116aa84848484613872565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b613bbe826001611ebb565b15613bdf5760405163a2a7201360e01b8152600481018390526024016107bb565b613be882613da4565b604051635b0fc9c360e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690635b0fc9c390613c369085908590600401614f97565b600060405180830381600087803b158015613c5057600080fd5b505af1158015613c64573d6000803e3d6000fd5b50506040516001600160a01b03841681528492507fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c49150602001612a5b565b613caf858484846140fb565b847f8ce7013e8abebc55c3890a68f5a27c67c3f7efa64e584de5fb22363c606fd34085858585604051613b2894939291906155f4565b6000806000613cf48585613f26565b909250905081613d665760018551613d0c919061563b565b8414613d5a5760405162461bcd60e51b815260206004820152601d60248201527f6e616d65686173683a204a756e6b20617420656e64206f66206e616d6500000060448201526064016107bb565b50600091506107fa9050565b613d708582613ce5565b6040805160208101929092528101839052606001604051602081830303815290604052805190602001209250505092915050565b60008181526001602052604090205460a081901c60c082901c613dc8838383613034565b600086815260036020526040812080546001600160a01b0319169055909350613df5915085908484613872565b60408051858152600160208201526000916001600160a01b0386169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b6000806000613e5286610800565b925092509250613e638683836137c9565b846001148015613e845750876001600160a01b0316836001600160a01b0316145b613ea05760405162461bcd60e51b81526004016107bb90615100565b866001600160a01b0316836001600160a01b031603613ec157505050611258565b613ecd86888484613872565b60408051878152602081018790526001600160a01b03808a1692908b169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a461191e33898989898961416f565b60008083518310613f795760405162461bcd60e51b815260206004820152601e60248201527f726561644c6162656c3a20496e646578206f7574206f6620626f756e6473000060448201526064016107bb565b6000848481518110613f8d57613f8d6150ea565b016020015160f81c90508015613fb957613fb285613fac86600161564e565b8361422a565b9250613fbe565b600092505b613fc8818561564e565b613fd390600161564e565b9150509250929050565b600081815260036020526040902080546001600160a01b0319166001600160a01b0384169081179091558190614012826116b0565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b606060018351101561407057604051631406d65b60e11b815260040160405180910390fd5b60ff83511115614095578260405163e3ba295f60e01b81526004016107bb9190614514565b825183836040516020016140ab93929190615661565b604051602081830303815290604052905092915050565b61ffff8116158015906140da57506201000181811614155b156134fe5760405163a2a7201360e01b8152600481018390526024016107bb565b61410584836140c2565b6000848152600160205260409020546001600160a01b038116156141635761412c85613da4565b6040516000815285907fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c49060200160405180910390a25b6112588585858561424e565b6001600160a01b0384163b156134c75760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e61906141b390899089908890889088906004016156a6565b6020604051808303816000875af19250505080156141ee575060408051601f3d908101601f191682019092526141eb918101906154ea565b60015b6141fa5761393f615507565b6001600160e01b0319811663f23a6e6160e01b146136fc5760405162461bcd60e51b81526004016107bb906155ac565b8251600090614239838561564e565b111561424457600080fd5b5091016020012090565b836000808061425c84610800565b9194509250905063ffff000082166001600160401b038087169083161115614282578195505b42826001600160401b03161061429757958617955b6001600160a01b038416156142ee5760405162461bcd60e51b815260206004820152601f60248201527f455243313135353a206d696e74206f66206578697374696e6720746f6b656e0060448201526064016107bb565b6001600160a01b03881661434e5760405162461bcd60e51b815260206004820152602160248201527f455243313135353a206d696e7420746f20746865207a65726f206164647265736044820152607360f81b60648201526084016107bb565b306001600160a01b038916036143c35760405162461bcd60e51b815260206004820152603460248201527f455243313135353a206e65774f776e65722063616e6e6f74206265207468652060448201527313985b5955dc985c1c195c8818dbdb9d1c9858dd60621b60648201526084016107bb565b6143cf85898989613872565b60408051868152600160208201526001600160a01b038a169160009133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a461284c3360008a8860016040518060200160405280600081525061416f565b6001600160a01b038116811461213557600080fd5b6000806040838503121561445f57600080fd5b823561446a81614437565b946020939093013593505050565b60006020828403121561448a57600080fd5b5035919050565b6001600160e01b03198116811461213557600080fd5b6000602082840312156144b957600080fd5b81356108ae81614491565b60005b838110156144df5781810151838201526020016144c7565b50506000910152565b600081518084526145008160208601602086016144c4565b601f01601f19169290920160200192915050565b6020815260006108ae60208301846144e8565b6000806040838503121561453a57600080fd5b82359150602083013561454c81614437565b809150509250929050565b80356001600160401b038116811461456e57600080fd5b919050565b6000806040838503121561458657600080fd5b8235915061459660208401614557565b90509250929050565b60008083601f8401126145b157600080fd5b5081356001600160401b038111156145c857600080fd5b6020830191508360208285010111156145e057600080fd5b9250929050565b6000806000806000608086880312156145ff57600080fd5b853561460a81614437565b9450602086013561461a81614437565b93506040860135925060608601356001600160401b0381111561463c57600080fd5b6146488882890161459f565b969995985093965092949392505050565b60006020828403121561466b57600080fd5b81356108ae81614437565b634e487b7160e01b600052604160045260246000fd5b601f8201601f191681016001600160401b03811182821017156146b1576146b1614676565b6040525050565b60006001600160401b038211156146d1576146d1614676565b50601f01601f191660200190565b600082601f8301126146f057600080fd5b81356146fb816146b8565b604051614708828261468c565b82815285602084870101111561471d57600080fd5b82602086016020830137600092810160200192909252509392505050565b803563ffffffff8116811461456e57600080fd5b600080600080600080600060e0888a03121561476a57600080fd5b8735965060208801356001600160401b0381111561478757600080fd5b6147938a828b016146df565b96505060408801356147a481614437565b945060608801356147b481614437565b93506147c260808901614557565b92506147d060a0890161473b565b91506147de60c08901614557565b905092959891949750929550565b60006001600160401b0382111561480557614805614676565b5060051b60200190565b600082601f83011261482057600080fd5b8135602061482d826147ec565b60405161483a828261468c565b83815260059390931b850182019282810191508684111561485a57600080fd5b8286015b84811015611eb0578035835291830191830161485e565b600080600080600060a0868803121561488d57600080fd5b853561489881614437565b945060208601356148a881614437565b935060408601356001600160401b03808211156148c457600080fd5b6148d089838a0161480f565b945060608801359150808211156148e657600080fd5b6148f289838a0161480f565b9350608088013591508082111561490857600080fd5b50614915888289016146df565b9150509295509295909350565b6000806000806080858703121561493857600080fd5b843593506020850135925061494f6040860161473b565b915061495d60608601614557565b905092959194509250565b803561ffff8116811461456e57600080fd5b6000806040838503121561498d57600080fd5b8235915061459660208401614968565b600080604083850312156149b057600080fd5b82356001600160401b03808211156149c757600080fd5b818501915085601f8301126149db57600080fd5b813560206149e8826147ec565b6040516149f5828261468c565b83815260059390931b8501820192828101915089841115614a1557600080fd5b948201945b83861015614a3c578535614a2d81614437565b82529482019490820190614a1a565b96505086013592505080821115614a5257600080fd5b50613fd38582860161480f565b600081518084526020808501945080840160005b83811015614a8f57815187529582019590820190600101614a73565b509495945050505050565b6020815260006108ae6020830184614a5f565b600080600060608486031215614ac257600080fd5b8335614acd81614437565b92506020840135614add81614437565b929592945050506040919091013590565b600080600060608486031215614b0357600080fd5b8335925060208401359150614b1a60408501614557565b90509250925092565b600080600060608486031215614b3857600080fd5b833592506020840135614b4a81614437565b91506040840135614b5a81614437565b809150509250925092565b600080600080600060808688031215614b7d57600080fd5b85356001600160401b03811115614b9357600080fd5b614b9f8882890161459f565b9096509450506020860135614bb381614437565b9250614bc160408701614968565b91506060860135614bd181614437565b809150509295509295909350565b801515811461213557600080fd5b60008060408385031215614c0057600080fd5b8235614c0b81614437565b9150602083013561454c81614bdf565b60008060008060008060a08789031215614c3457600080fd5b86356001600160401b03811115614c4a57600080fd5b614c5689828a0161459f565b9097509550506020870135614c6a81614437565b9350604087013592506060870135614c8181614437565b9150614c8f60808801614968565b90509295509295509295565b60008060408385031215614cae57600080fd5b823591506145966020840161473b565b60008060408385031215614cd157600080fd5b50508035926020909101359150565b60008060008060008060a08789031215614cf957600080fd5b8635955060208701356001600160401b03811115614d1657600080fd5b614d2289828a0161459f565b9096509450506040870135614d3681614437565b9250614d446060880161473b565b9150614c8f60808801614557565b60008060008060408587031215614d6857600080fd5b84356001600160401b0380821115614d7f57600080fd5b614d8b8883890161459f565b90965094506020870135915080821115614da457600080fd5b50614db18782880161459f565b95989497509550505050565b60008060008060808587031215614dd357600080fd5b843593506020850135614de581614437565b9250604085013561494f81614437565b600080600060608486031215614e0a57600080fd5b83359250602084013591506040840135614b5a81614437565b60008060408385031215614e3657600080fd5b8235614e4181614437565b9150602083013561454c81614437565b60008060008060608587031215614e6757600080fd5b84356001600160401b03811115614e7d57600080fd5b614e898782880161459f565b9095509350506020850135614e9d81614437565b91506040850135614ead81614437565b939692955090935050565b600080600080600060a08688031215614ed057600080fd5b8535614edb81614437565b94506020860135614eeb81614437565b9350604086013592506060860135915060808601356001600160401b03811115614f1457600080fd5b614915888289016146df565b600060208284031215614f3257600080fd5b81516001600160401b03811115614f4857600080fd5b8201601f81018413614f5957600080fd5b8051614f64816146b8565b604051614f71828261468c565b828152866020848601011115614f8657600080fd5b61096b8360208301602087016144c4565b9182526001600160a01b0316602082015260400190565b60008060008060808587031215614fc457600080fd5b84356001600160401b03811115614fda57600080fd5b614fe6878288016146df565b9450506020850135614ff781614437565b925061500560408601614968565b91506060850135614ead81614437565b60006020828403121561502757600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b6001600160401b038181168382160190808211156150645761506461502e565b5092915050565b600181811c9082168061507f57607f821691505b60208210810361509f57634e487b7160e01b600052602260045260246000fd5b50919050565b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b60006001820161515c5761515c61502e565b5060010190565b6040815260006151766040830185614a5f565b82810360208401526151888185614a5f565b95945050505050565b6000602082840312156151a357600080fd5b81516108ae81614437565b6000602082840312156151c057600080fd5b81516108ae81614bdf565b8183823760009101908152919050565b60208082526028908201527f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f604082015267373a3937b63632b960c11b606082015260800190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60c08152600061526060c083018a8c615223565b6001600160a01b03898116602085015263ffffffff891660408501526001600160401b03881660608501528616608084015282810360a08401526152a5818587615223565b9b9a5050505050505050505050565b601f8211156108f657600081815260208120601f850160051c810160208610156152db5750805b601f850160051c820191505b818110156134c7578281556001016152e7565b6001600160401b0383111561531157615311614676565b6153258361531f835461506b565b836152b4565b6000601f84116001811461535957600085156153415750838201355b600019600387901b1c1916600186901b178355611258565b600083815260209020601f19861690835b8281101561538a578685013582556020948501946001909201910161536a565b50868210156153a75760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b6001600160401b038281168282160390808211156150645761506461502e565b81516001600160401b038111156153f2576153f2614676565b61540681615400845461506b565b846152b4565b602080601f83116001811461543b57600084156154235750858301515b600019600386901b1c1916600185901b1785556134c7565b600085815260208120601f198616915b8281101561546a5788860151825594840194600190910190840161544b565b50858210156154885787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6001600160a01b0386811682528516602082015260a0604082018190526000906154c490830186614a5f565b82810360608401526154d68186614a5f565b9050828103608084015261360981856144e8565b6000602082840312156154fc57600080fd5b81516108ae81614491565b600060033d11156155205760046000803e5060005160e01c5b90565b600060443d10156155315790565b6040516003193d81016004833e81513d6001600160401b03816024840111818411171561556057505050505090565b82850191508151818111156155785750505050505090565b843d87010160208285010111156155925750505050505090565b6155a16020828601018761468c565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b60808152600061560760808301876144e8565b6001600160a01b039590951660208301525063ffffffff9290921660408301526001600160401b0316606090910152919050565b818103818111156107fa576107fa61502e565b808201808211156107fa576107fa61502e565b60ff60f81b8460f81b168152600083516156828160018501602088016144c4565b8351908301906156998160018401602088016144c4565b0160010195945050505050565b6001600160a01b03868116825285166020820152604081018490526060810183905260a0608082018190526000906156e0908301846144e8565b97965050505050505056fe93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4aea164736f6c6343000811000a"; - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "contract ENS"; - readonly name: "_ens"; - readonly type: "address"; - }, { - readonly internalType: "contract IBaseRegistrar"; - readonly name: "_registrar"; - readonly type: "address"; - }, { - readonly internalType: "contract IMetadataService"; - readonly name: "_metadataService"; - readonly type: "address"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "constructor"; - }, { - readonly inputs: readonly []; - readonly name: "CannotUpgrade"; - readonly type: "error"; - }, { - readonly inputs: readonly []; - readonly name: "IncompatibleParent"; - readonly type: "error"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "IncorrectTargetOwner"; - readonly type: "error"; - }, { - readonly inputs: readonly []; - readonly name: "IncorrectTokenType"; - readonly type: "error"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "labelHash"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes32"; - readonly name: "expectedLabelhash"; - readonly type: "bytes32"; - }]; - readonly name: "LabelMismatch"; - readonly type: "error"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }]; - readonly name: "LabelTooLong"; - readonly type: "error"; - }, { - readonly inputs: readonly []; - readonly name: "LabelTooShort"; - readonly type: "error"; - }, { - readonly inputs: readonly []; - readonly name: "NameIsNotWrapped"; - readonly type: "error"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "OperationProhibited"; - readonly type: "error"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }]; - readonly name: "Unauthorised"; - readonly type: "error"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "approved"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Approval"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "ApprovalForAll"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "controller"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "bool"; - readonly name: "active"; - readonly type: "bool"; - }]; - readonly name: "ControllerChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "uint64"; - readonly name: "expiry"; - readonly type: "uint64"; - }]; - readonly name: "ExpiryExtended"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "uint32"; - readonly name: "fuses"; - readonly type: "uint32"; - }]; - readonly name: "FusesSet"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "NameUnwrapped"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "bytes"; - readonly name: "name"; - readonly type: "bytes"; - }, { - readonly indexed: false; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "uint32"; - readonly name: "fuses"; - readonly type: "uint32"; - }, { - readonly indexed: false; - readonly internalType: "uint64"; - readonly name: "expiry"; - readonly type: "uint64"; - }]; - readonly name: "NameWrapped"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "previousOwner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "newOwner"; - readonly type: "address"; - }]; - readonly name: "OwnershipTransferred"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "uint256[]"; - readonly name: "ids"; - readonly type: "uint256[]"; - }, { - readonly indexed: false; - readonly internalType: "uint256[]"; - readonly name: "values"; - readonly type: "uint256[]"; - }]; - readonly name: "TransferBatch"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "value"; - readonly type: "uint256"; - }]; - readonly name: "TransferSingle"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }]; - readonly name: "URI"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly name: "_tokens"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint32"; - readonly name: "fuseMask"; - readonly type: "uint32"; - }]; - readonly name: "allFusesBurned"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "approve"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }]; - readonly name: "balanceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address[]"; - readonly name: "accounts"; - readonly type: "address[]"; - }, { - readonly internalType: "uint256[]"; - readonly name: "ids"; - readonly type: "uint256[]"; - }]; - readonly name: "balanceOfBatch"; - readonly outputs: readonly [{ - readonly internalType: "uint256[]"; - readonly name: ""; - readonly type: "uint256[]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }]; - readonly name: "canExtendSubnames"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }]; - readonly name: "canModifyName"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly name: "controllers"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "ens"; - readonly outputs: readonly [{ - readonly internalType: "contract ENS"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "parentNode"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes32"; - readonly name: "labelhash"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint64"; - readonly name: "expiry"; - readonly type: "uint64"; - }]; - readonly name: "extendExpiry"; - readonly outputs: readonly [{ - readonly internalType: "uint64"; - readonly name: ""; - readonly type: "uint64"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }]; - readonly name: "getApproved"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }]; - readonly name: "getData"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "uint32"; - readonly name: "fuses"; - readonly type: "uint32"; - }, { - readonly internalType: "uint64"; - readonly name: "expiry"; - readonly type: "uint64"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly name: "isApprovedForAll"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "parentNode"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes32"; - readonly name: "labelhash"; - readonly type: "bytes32"; - }]; - readonly name: "isWrapped"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "isWrapped"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "metadataService"; - readonly outputs: readonly [{ - readonly internalType: "contract IMetadataService"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "name"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly name: "names"; - readonly outputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "onERC721Received"; - readonly outputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: ""; - readonly type: "bytes4"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "owner"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }]; - readonly name: "ownerOf"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "_token"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "_to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "_amount"; - readonly type: "uint256"; - }]; - readonly name: "recoverFunds"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }, { - readonly internalType: "address"; - readonly name: "wrappedOwner"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "duration"; - readonly type: "uint256"; - }, { - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }, { - readonly internalType: "uint16"; - readonly name: "ownerControlledFuses"; - readonly type: "uint16"; - }]; - readonly name: "registerAndWrapETH2LD"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "registrarExpiry"; - readonly type: "uint256"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "registrar"; - readonly outputs: readonly [{ - readonly internalType: "contract IBaseRegistrar"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "duration"; - readonly type: "uint256"; - }]; - readonly name: "renew"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "expires"; - readonly type: "uint256"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "renounceOwnership"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256[]"; - readonly name: "ids"; - readonly type: "uint256[]"; - }, { - readonly internalType: "uint256[]"; - readonly name: "amounts"; - readonly type: "uint256[]"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "safeBatchTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "amount"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "setApprovalForAll"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "parentNode"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes32"; - readonly name: "labelhash"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint32"; - readonly name: "fuses"; - readonly type: "uint32"; - }, { - readonly internalType: "uint64"; - readonly name: "expiry"; - readonly type: "uint64"; - }]; - readonly name: "setChildFuses"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "controller"; - readonly type: "address"; - }, { - readonly internalType: "bool"; - readonly name: "active"; - readonly type: "bool"; - }]; - readonly name: "setController"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint16"; - readonly name: "ownerControlledFuses"; - readonly type: "uint16"; - }]; - readonly name: "setFuses"; - readonly outputs: readonly [{ - readonly internalType: "uint32"; - readonly name: ""; - readonly type: "uint32"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "contract IMetadataService"; - readonly name: "_metadataService"; - readonly type: "address"; - }]; - readonly name: "setMetadataService"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }, { - readonly internalType: "uint64"; - readonly name: "ttl"; - readonly type: "uint64"; - }]; - readonly name: "setRecord"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }]; - readonly name: "setResolver"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "parentNode"; - readonly type: "bytes32"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }, { - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "uint32"; - readonly name: "fuses"; - readonly type: "uint32"; - }, { - readonly internalType: "uint64"; - readonly name: "expiry"; - readonly type: "uint64"; - }]; - readonly name: "setSubnodeOwner"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "parentNode"; - readonly type: "bytes32"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }, { - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }, { - readonly internalType: "uint64"; - readonly name: "ttl"; - readonly type: "uint64"; - }, { - readonly internalType: "uint32"; - readonly name: "fuses"; - readonly type: "uint32"; - }, { - readonly internalType: "uint64"; - readonly name: "expiry"; - readonly type: "uint64"; - }]; - readonly name: "setSubnodeRecord"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint64"; - readonly name: "ttl"; - readonly type: "uint64"; - }]; - readonly name: "setTTL"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "contract INameWrapperUpgrade"; - readonly name: "_upgradeAddress"; - readonly type: "address"; - }]; - readonly name: "setUpgradeContract"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "newOwner"; - readonly type: "address"; - }]; - readonly name: "transferOwnership"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "parentNode"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes32"; - readonly name: "labelhash"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "controller"; - readonly type: "address"; - }]; - readonly name: "unwrap"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "labelhash"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "registrant"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "controller"; - readonly type: "address"; - }]; - readonly name: "unwrapETH2LD"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes"; - readonly name: "name"; - readonly type: "bytes"; - }, { - readonly internalType: "bytes"; - readonly name: "extraData"; - readonly type: "bytes"; - }]; - readonly name: "upgrade"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "upgradeContract"; - readonly outputs: readonly [{ - readonly internalType: "contract INameWrapperUpgrade"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "uri"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes"; - readonly name: "name"; - readonly type: "bytes"; - }, { - readonly internalType: "address"; - readonly name: "wrappedOwner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }]; - readonly name: "wrap"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }, { - readonly internalType: "address"; - readonly name: "wrappedOwner"; - readonly type: "address"; - }, { - readonly internalType: "uint16"; - readonly name: "ownerControlledFuses"; - readonly type: "uint16"; - }, { - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }]; - readonly name: "wrapETH2LD"; - readonly outputs: readonly [{ - readonly internalType: "uint64"; - readonly name: "expiry"; - readonly type: "uint64"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): NameWrapperInterface; - static connect(address: string, runner?: ContractRunner | null): NameWrapper; -} -export {}; -//# sourceMappingURL=NameWrapper__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper__factory.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper__factory.d.ts.map deleted file mode 100644 index 648f1423..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"NameWrapper__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper__factory.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper__factory.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper__factory.js deleted file mode 100644 index fd49ab81..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper__factory.js +++ /dev/null @@ -1,1489 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.NameWrapper__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "contract ENS", - name: "_ens", - type: "address", - }, - { - internalType: "contract IBaseRegistrar", - name: "_registrar", - type: "address", - }, - { - internalType: "contract IMetadataService", - name: "_metadataService", - type: "address", - }, - ], - stateMutability: "nonpayable", - type: "constructor", - }, - { - inputs: [], - name: "CannotUpgrade", - type: "error", - }, - { - inputs: [], - name: "IncompatibleParent", - type: "error", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "IncorrectTargetOwner", - type: "error", - }, - { - inputs: [], - name: "IncorrectTokenType", - type: "error", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "labelHash", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "expectedLabelhash", - type: "bytes32", - }, - ], - name: "LabelMismatch", - type: "error", - }, - { - inputs: [ - { - internalType: "string", - name: "label", - type: "string", - }, - ], - name: "LabelTooLong", - type: "error", - }, - { - inputs: [], - name: "LabelTooShort", - type: "error", - }, - { - inputs: [], - name: "NameIsNotWrapped", - type: "error", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "OperationProhibited", - type: "error", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "address", - name: "addr", - type: "address", - }, - ], - name: "Unauthorised", - type: "error", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "approved", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Approval", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: false, - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "ApprovalForAll", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "controller", - type: "address", - }, - { - indexed: false, - internalType: "bool", - name: "active", - type: "bool", - }, - ], - name: "ControllerChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "uint64", - name: "expiry", - type: "uint64", - }, - ], - name: "ExpiryExtended", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "uint32", - name: "fuses", - type: "uint32", - }, - ], - name: "FusesSet", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "NameUnwrapped", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "bytes", - name: "name", - type: "bytes", - }, - { - indexed: false, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: false, - internalType: "uint32", - name: "fuses", - type: "uint32", - }, - { - indexed: false, - internalType: "uint64", - name: "expiry", - type: "uint64", - }, - ], - name: "NameWrapped", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "previousOwner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnershipTransferred", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: false, - internalType: "uint256[]", - name: "ids", - type: "uint256[]", - }, - { - indexed: false, - internalType: "uint256[]", - name: "values", - type: "uint256[]", - }, - ], - name: "TransferBatch", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "value", - type: "uint256", - }, - ], - name: "TransferSingle", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "string", - name: "value", - type: "string", - }, - { - indexed: true, - internalType: "uint256", - name: "id", - type: "uint256", - }, - ], - name: "URI", - type: "event", - }, - { - inputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - name: "_tokens", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "uint32", - name: "fuseMask", - type: "uint32", - }, - ], - name: "allFusesBurned", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "approve", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address[]", - name: "accounts", - type: "address[]", - }, - { - internalType: "uint256[]", - name: "ids", - type: "uint256[]", - }, - ], - name: "balanceOfBatch", - outputs: [ - { - internalType: "uint256[]", - name: "", - type: "uint256[]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "address", - name: "addr", - type: "address", - }, - ], - name: "canExtendSubnames", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "address", - name: "addr", - type: "address", - }, - ], - name: "canModifyName", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - name: "controllers", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "ens", - outputs: [ - { - internalType: "contract ENS", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "parentNode", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "labelhash", - type: "bytes32", - }, - { - internalType: "uint64", - name: "expiry", - type: "uint64", - }, - ], - name: "extendExpiry", - outputs: [ - { - internalType: "uint64", - name: "", - type: "uint64", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - ], - name: "getApproved", - outputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - ], - name: "getData", - outputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "uint32", - name: "fuses", - type: "uint32", - }, - { - internalType: "uint64", - name: "expiry", - type: "uint64", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - name: "isApprovedForAll", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "parentNode", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "labelhash", - type: "bytes32", - }, - ], - name: "isWrapped", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "isWrapped", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "metadataService", - outputs: [ - { - internalType: "contract IMetadataService", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "name", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - name: "names", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "address", - name: "", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "onERC721Received", - outputs: [ - { - internalType: "bytes4", - name: "", - type: "bytes4", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - ], - name: "ownerOf", - outputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_token", - type: "address", - }, - { - internalType: "address", - name: "_to", - type: "address", - }, - { - internalType: "uint256", - name: "_amount", - type: "uint256", - }, - ], - name: "recoverFunds", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "label", - type: "string", - }, - { - internalType: "address", - name: "wrappedOwner", - type: "address", - }, - { - internalType: "uint256", - name: "duration", - type: "uint256", - }, - { - internalType: "address", - name: "resolver", - type: "address", - }, - { - internalType: "uint16", - name: "ownerControlledFuses", - type: "uint16", - }, - ], - name: "registerAndWrapETH2LD", - outputs: [ - { - internalType: "uint256", - name: "registrarExpiry", - type: "uint256", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "registrar", - outputs: [ - { - internalType: "contract IBaseRegistrar", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "uint256", - name: "duration", - type: "uint256", - }, - ], - name: "renew", - outputs: [ - { - internalType: "uint256", - name: "expires", - type: "uint256", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "renounceOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256[]", - name: "ids", - type: "uint256[]", - }, - { - internalType: "uint256[]", - name: "amounts", - type: "uint256[]", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "safeBatchTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "safeTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "setApprovalForAll", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "parentNode", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "labelhash", - type: "bytes32", - }, - { - internalType: "uint32", - name: "fuses", - type: "uint32", - }, - { - internalType: "uint64", - name: "expiry", - type: "uint64", - }, - ], - name: "setChildFuses", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "controller", - type: "address", - }, - { - internalType: "bool", - name: "active", - type: "bool", - }, - ], - name: "setController", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "uint16", - name: "ownerControlledFuses", - type: "uint16", - }, - ], - name: "setFuses", - outputs: [ - { - internalType: "uint32", - name: "", - type: "uint32", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "contract IMetadataService", - name: "_metadataService", - type: "address", - }, - ], - name: "setMetadataService", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "address", - name: "resolver", - type: "address", - }, - { - internalType: "uint64", - name: "ttl", - type: "uint64", - }, - ], - name: "setRecord", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "address", - name: "resolver", - type: "address", - }, - ], - name: "setResolver", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "parentNode", - type: "bytes32", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "uint32", - name: "fuses", - type: "uint32", - }, - { - internalType: "uint64", - name: "expiry", - type: "uint64", - }, - ], - name: "setSubnodeOwner", - outputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "parentNode", - type: "bytes32", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "address", - name: "resolver", - type: "address", - }, - { - internalType: "uint64", - name: "ttl", - type: "uint64", - }, - { - internalType: "uint32", - name: "fuses", - type: "uint32", - }, - { - internalType: "uint64", - name: "expiry", - type: "uint64", - }, - ], - name: "setSubnodeRecord", - outputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "uint64", - name: "ttl", - type: "uint64", - }, - ], - name: "setTTL", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "contract INameWrapperUpgrade", - name: "_upgradeAddress", - type: "address", - }, - ], - name: "setUpgradeContract", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "transferOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "parentNode", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "labelhash", - type: "bytes32", - }, - { - internalType: "address", - name: "controller", - type: "address", - }, - ], - name: "unwrap", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "labelhash", - type: "bytes32", - }, - { - internalType: "address", - name: "registrant", - type: "address", - }, - { - internalType: "address", - name: "controller", - type: "address", - }, - ], - name: "unwrapETH2LD", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes", - name: "name", - type: "bytes", - }, - { - internalType: "bytes", - name: "extraData", - type: "bytes", - }, - ], - name: "upgrade", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "upgradeContract", - outputs: [ - { - internalType: "contract INameWrapperUpgrade", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "uri", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes", - name: "name", - type: "bytes", - }, - { - internalType: "address", - name: "wrappedOwner", - type: "address", - }, - { - internalType: "address", - name: "resolver", - type: "address", - }, - ], - name: "wrap", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "label", - type: "string", - }, - { - internalType: "address", - name: "wrappedOwner", - type: "address", - }, - { - internalType: "uint16", - name: "ownerControlledFuses", - type: "uint16", - }, - { - internalType: "address", - name: "resolver", - type: "address", - }, - ], - name: "wrapETH2LD", - outputs: [ - { - internalType: "uint64", - name: "expiry", - type: "uint64", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, -]; -const _bytecode = "0x60c06040523480156200001157600080fd5b5060405162005d2338038062005d238339810160408190526200003491620002f8565b823362000041816200028f565b6040516302571be360e01b81527f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e260048201526000906001600160a01b038416906302571be390602401602060405180830381865afa158015620000a9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620000cf91906200034c565b604051630f41a04d60e11b81526001600160a01b03848116600483015291925090821690631e83409a906024016020604051808303816000875af11580156200011c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000142919062000373565b505050506001600160a01b0383811660805282811660a052600580546001600160a01b031916918316919091179055600163fffeffff60a01b03197fafa26c20e8b3d9a2853d642cfe1021dae26242ffedfac91c97aab212c1a4b93b8190557fa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb4955604080518082019091526001815260006020808301829052908052600690527f54cdd369e4e8a8515e52ca72ec816c2101831ad1f18bf44102ed171459c9b4f89062000210908262000432565b506040805180820190915260058152626cae8d60e31b6020808301919091527f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae600052600690527ffb9e8e321b8a5ec48f12a7b41f22c6e595d761285c9eb19d8dda7c99edf1b54f9062000285908262000432565b50505050620004fe565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b0381168114620002f557600080fd5b50565b6000806000606084860312156200030e57600080fd5b83516200031b81620002df565b60208501519093506200032e81620002df565b60408501519092506200034181620002df565b809150509250925092565b6000602082840312156200035f57600080fd5b81516200036c81620002df565b9392505050565b6000602082840312156200038657600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b600181811c90821680620003b857607f821691505b602082108103620003d957634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200042d57600081815260208120601f850160051c81016020861015620004085750805b601f850160051c820191505b81811015620004295782815560010162000414565b5050505b505050565b81516001600160401b038111156200044e576200044e6200038d565b62000466816200045f8454620003a3565b84620003df565b602080601f8311600181146200049e5760008415620004855750858301515b600019600386901b1c1916600185901b17855562000429565b600085815260208120601f198616915b82811015620004cf57888601518255948401946001909101908401620004ae565b5085821015620004ee5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60805160a0516157186200060b6000396000818161047301528181610aee01528181610b9101528181610c20015281816118c60152818161195c01528181611a0a01528181611adc01528181611b4d01528181611bd201528181611de601528181611f2201528181612054015281816121ac0152818161223201526129700152600081816104c001528181610a7401528181610d6a01528181610ef901528181610faa015281816112bc01528181611fa7015281816120d9015281816122dd0152818161248f0152818161276001528181612ba901528181612c5701528181612d0c01528181612d8d01528181613298015281816133eb015281816136530152613bff01526157186000f3fe608060405234801561001057600080fd5b506004361061029f5760003560e01c80636352211e11610167578063c93ab3fd116100ce578063e985e9c511610087578063e985e9c5146106d4578063eb8ae530146106e7578063ed70554d146106fa578063f242432a1461071a578063f2fde38b1461072d578063fd0cd0d91461074057600080fd5b8063c93ab3fd14610652578063cf40882314610665578063d8c9921a14610678578063d9a50c121461068b578063da8c229e1461069e578063e0dba60f146106c157600080fd5b8063a22cb46511610120578063a22cb465146105e0578063a4014982146105f3578063adf4960a14610606578063b6bcad2614610619578063c475abff1461062c578063c658e0861461063f57600080fd5b80636352211e146105635780636e5d6ad214610576578063715018a6146105a15780638b4dfa75146105a95780638cf8b41e146105bc5780638da5cb5b146105cf57600080fd5b80631f4e15041161020b5780633f15457f116101c45780633f15457f146104bb578063402906fc146104e257806341415eab1461050a5780634e1273f41461051d578063530954671461053d5780635d3590d51461055057600080fd5b80631f4e15041461043557806320c38e2b1461044857806324c1af441461045b5780632b20e3971461046e5780632eb2c2d61461049557806333c69ea9146104a857600080fd5b80630e4cd7251161025d5780630e4cd725146103aa5780630e89341c146103bd57806314ab9038146103d0578063150b7a02146103e35780631534e1771461040f5780631896f70a1461042257600080fd5b8062fdd58e146102a45780630178fe3f146102ca57806301ffc9a71461031057806306fdde0314610333578063081812fc1461036a578063095ea7b314610395575b600080fd5b6102b76102b236600461444c565b610753565b6040519081526020015b60405180910390f35b6102dd6102d8366004614478565b610800565b604080516001600160a01b03909416845263ffffffff90921660208401526001600160401b0316908201526060016102c1565b61032361031e3660046144a7565b610830565b60405190151581526020016102c1565b61035d6040518060400160405280600b81526020016a2730b6b2abb930b83832b960a91b81525081565b6040516102c19190614514565b61037d610378366004614478565b610870565b6040516001600160a01b0390911681526020016102c1565b6103a86103a336600461444c565b6108b5565b005b6103236103b8366004614527565b6108fb565b61035d6103cb366004614478565b610975565b6103a86103de366004614573565b6109e7565b6103f66103f13660046145e7565b610ae1565b6040516001600160e01b031990911681526020016102c1565b6103a861041d366004614659565b610cc1565b6103a8610430366004614527565b610ceb565b60075461037d906001600160a01b031681565b61035d610456366004614478565b610da1565b6102b761046936600461474f565b610e3b565b61037d7f000000000000000000000000000000000000000000000000000000000000000081565b6103a86104a3366004614875565b611021565b6103a86104b6366004614922565b61125f565b61037d7f000000000000000000000000000000000000000000000000000000000000000081565b6104f56104f036600461497a565b611430565b60405163ffffffff90911681526020016102c1565b610323610518366004614527565b6114cd565b61053061052b36600461499d565b611506565b6040516102c19190614a9a565b60055461037d906001600160a01b031681565b6103a861055e366004614aad565b61162f565b61037d610571366004614478565b6116b0565b610589610584366004614aee565b6116bb565b6040516001600160401b0390911681526020016102c1565b6103a86117ee565b6103a86105b7366004614b23565b611802565b6105896105ca366004614b65565b611928565b6000546001600160a01b031661037d565b6103a86105ee366004614bed565b611ca4565b6102b7610601366004614c1b565b611d7a565b610323610614366004614c9b565b611ebb565b6103a8610627366004614659565b611ee0565b6102b761063a366004614cbe565b612138565b6102b761064d366004614ce0565b6123a2565b6103a8610660366004614d52565b61256a565b6103a8610673366004614dbd565b6126bd565b6103a8610686366004614df5565b612857565b610323610699366004614cbe565b612920565b6103236106ac366004614659565b60046020526000908152604090205460ff1681565b6103a86106cf366004614bed565b6129ff565b6103236106e2366004614e23565b612a67565b6103a86106f5366004614e51565b612a95565b6102b7610708366004614478565b60016020526000908152604090205481565b6103a8610728366004614eb8565b612e39565b6103a861073b366004614659565b612ee6565b61032361074e366004614478565b612f5c565b60006001600160a01b0383166107c45760405162461bcd60e51b815260206004820152602b60248201527f455243313135353a2062616c616e636520717565727920666f7220746865207a60448201526a65726f206164647265737360a81b60648201526084015b60405180910390fd5b60006107cf836116b0565b9050836001600160a01b0316816001600160a01b0316036107f45760019150506107fa565b60009150505b92915050565b60008181526001602052604090205460a081901c60c082901c610824838383613034565b90959094509092509050565b60006001600160e01b03198216631b05885b60e31b148061086157506001600160e01b03198216630a85bd0160e11b145b806107fa57506107fa8261306a565b60008061087c836116b0565b90506001600160a01b0381166108955750600092915050565b6000838152600360205260409020546001600160a01b03165b9392505050565b60006108c082610800565b50915050603f1960408216016108ec5760405163a2a7201360e01b8152600481018390526024016107bb565b6108f683836130ba565b505050565b600080808061090986610800565b925092509250846001600160a01b0316836001600160a01b0316148061093457506109348386612a67565b8061095857506001600160a01b03851661094d87610870565b6001600160a01b0316145b801561096b575061096982826131ca565b155b9695505050505050565b6005546040516303a24d0760e21b8152600481018390526060916001600160a01b031690630e89341c90602401600060405180830381865afa1580156109bf573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526107fa9190810190614f20565b816109f281336114cd565b610a1357803360405163168ab55d60e31b81526004016107bb929190614f97565b8260106000610a2183610800565b5091505063ffffffff8282161615610a4f5760405163a2a7201360e01b8152600481018490526024016107bb565b604051630295720760e31b8152600481018790526001600160401b03861660248201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906314ab9038906044015b600060405180830381600087803b158015610ac157600080fd5b505af1158015610ad5573d6000803e3d6000fd5b50505050505050505050565b6000336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610b2c5760405163032634a760e31b815260040160405180910390fd5b6000808080610b3d86880188614fae565b83516020850120939750919550935091508890808214610b7a576040516331970f3360e21b815260048101829052602481018390526044016107bb565b604051630a3b53db60e21b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906328ed4f6c90610bc89085903090600401614f97565b600060405180830381600087803b158015610be257600080fd5b505af1158015610bf6573d6000803e3d6000fd5b5050604051636b727d4360e11b8152600481018d9052600092506276a70091506001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063d6e4fa8690602401602060405180830381865afa158015610c67573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c8b9190615015565b610c959190615044565b9050610ca887878761ffff1684886131fa565b50630a85bd0160e11b9c9b505050505050505050505050565b610cc961330b565b600580546001600160a01b0319166001600160a01b0392909216919091179055565b81610cf681336114cd565b610d1757803360405163168ab55d60e31b81526004016107bb929190614f97565b8260086000610d2583610800565b5091505063ffffffff8282161615610d535760405163a2a7201360e01b8152600481018490526024016107bb565b604051630c4b7b8560e11b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690631896f70a90610aa79089908990600401614f97565b60066020526000908152604090208054610dba9061506b565b80601f0160208091040260200160405190810160405280929190818152602001828054610de69061506b565b8015610e335780601f10610e0857610100808354040283529160200191610e33565b820191906000526020600020905b815481529060010190602001808311610e1657829003601f168201915b505050505081565b600087610e4881336114cd565b610e6957803360405163168ab55d60e31b81526004016107bb929190614f97565b87516020890120610e7a8a82613365565b9250610e868a84613391565b610e9083866134cf565b610e9b8a848b613502565b50610ea88a8487876135cf565b9350610eb383613615565b610f68576040516305ef2c7f60e41b8152600481018b9052602481018290523060448201526001600160a01b0388811660648301526001600160401b03881660848301527f00000000000000000000000000000000000000000000000000000000000000001690635ef2c7f09060a401600060405180830381600087803b158015610f3d57600080fd5b505af1158015610f51573d6000803e3d6000fd5b50505050610f638a848b8b89896136ce565b611014565b6040516305ef2c7f60e41b8152600481018b9052602481018290523060448201526001600160a01b0388811660648301526001600160401b03881660848301527f00000000000000000000000000000000000000000000000000000000000000001690635ef2c7f09060a401600060405180830381600087803b158015610fee57600080fd5b505af1158015611002573d6000803e3d6000fd5b505050506110148a848b8b8989613705565b5050979650505050505050565b81518351146110835760405162461bcd60e51b815260206004820152602860248201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206044820152670dad2e6dac2e8c6d60c31b60648201526084016107bb565b6001600160a01b0384166110a95760405162461bcd60e51b81526004016107bb906150a5565b6001600160a01b0385163314806110c557506110c58533612a67565b61112c5760405162461bcd60e51b815260206004820152603260248201527f455243313135353a207472616e736665722063616c6c6572206973206e6f74206044820152711bdddb995c881b9bdc88185c1c1c9bdd995960721b60648201526084016107bb565b60005b83518110156111f257600084828151811061114c5761114c6150ea565b60200260200101519050600084838151811061116a5761116a6150ea565b60200260200101519050600080600061118285610800565b9250925092506111938583836137c9565b8360011480156111b457508a6001600160a01b0316836001600160a01b0316145b6111d05760405162461bcd60e51b81526004016107bb90615100565b6111dc858b8484613872565b5050505050806111eb9061514a565b905061112f565b50836001600160a01b0316856001600160a01b0316336001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051611242929190615163565b60405180910390a46112583386868686866138b4565b5050505050565b600061126b8585613365565b905061127781846134cf565b6000808061128484610800565b919450925090506001600160a01b038316158061133357506040516302571be360e01b81526004810185905230906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906302571be390602401602060405180830381865afa158015611303573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113279190615191565b6001600160a01b031614155b1561135157604051635374b59960e01b815260040160405180910390fd5b60008061135d8a610800565b90935091508a90506113995761137386336114cd565b61139457853360405163168ab55d60e31b81526004016107bb929190614f97565b6113c4565b6113a38a336114cd565b6113c457893360405163168ab55d60e31b81526004016107bb929190614f97565b6113cf868984613a0f565b6113da878483613a4a565b9650620100008416158015906113fe57508363ffffffff1688851763ffffffff1614155b1561141f5760405163a2a7201360e01b8152600481018790526024016107bb565b96831796610ad586868a868b613a90565b60008261143d81336114cd565b61145e57803360405163168ab55d60e31b81526004016107bb929190614f97565b836002600061146c83610800565b5091505063ffffffff828216161561149a5760405163a2a7201360e01b8152600481018490526024016107bb565b600080806114a78a610800565b9250925092506114c08a84848c61ffff16178485613a90565b5098975050505050505050565b60008080806114db86610800565b925092509250846001600160a01b0316836001600160a01b0316148061095857506109588386612a67565b6060815183511461156b5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b60648201526084016107bb565b600083516001600160401b0381111561158657611586614676565b6040519080825280602002602001820160405280156115af578160200160208202803683370190505b50905060005b8451811015611627576115fa8582815181106115d3576115d36150ea565b60200260200101518583815181106115ed576115ed6150ea565b6020026020010151610753565b82828151811061160c5761160c6150ea565b60209081029190910101526116208161514a565b90506115b5565b509392505050565b61163761330b565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303816000875af1158015611686573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116aa91906151ae565b50505050565b60006107fa82613b37565b6000806116c88585613365565b90506116d381613615565b6116f057604051635374b59960e01b815260040160405180910390fd5b60006116fc86336108fb565b905080158015611713575061171182336114cd565b155b1561173557813360405163168ab55d60e31b81526004016107bb929190614f97565b6000808061174285610800565b925092509250831580156117595750620400008216155b1561177a5760405163a2a7201360e01b8152600481018690526024016107bb565b60006117858a610800565b92505050611794888383613a4a565b97506117a28685858b613b4d565b6040516001600160401b038916815286907ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b1329060200160405180910390a2509598975050505050505050565b6117f661330b565b6118006000613b63565b565b61181a6000805160206156ec83398151915284613365565b61182481336114cd565b61184557803360405163168ab55d60e31b81526004016107bb929190614f97565b306001600160a01b0384160361187957604051632ca49b0d60e11b81526001600160a01b03841660048201526024016107bb565b61189a6118946000805160206156ec83398151915286613365565b83613bb3565b604051632142170760e11b81523060048201526001600160a01b038481166024830152604482018690527f000000000000000000000000000000000000000000000000000000000000000016906342842e0e90606401600060405180830381600087803b15801561190a57600080fd5b505af115801561191e573d6000803e3d6000fd5b5050505050505050565b600080868660405161193b9291906151cb565b6040519081900381206331a9108f60e11b82526004820181905291506000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690636352211e90602401602060405180830381865afa1580156119ab573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119cf9190615191565b90506001600160a01b0381163314801590611a77575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000000000000000000000000000000000000000000000169063e985e9c590604401602060405180830381865afa158015611a51573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a7591906151ae565b155b15611ab057611a946000805160206156ec83398151915283613365565b3360405163168ab55d60e31b81526004016107bb929190614f97565b6040516323b872dd60e01b81526001600160a01b038281166004830152306024830152604482018490527f000000000000000000000000000000000000000000000000000000000000000016906323b872dd90606401600060405180830381600087803b158015611b2057600080fd5b505af1158015611b34573d6000803e3d6000fd5b5050604051630a3b53db60e21b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001692506328ed4f6c9150611b869085903090600401614f97565b600060405180830381600087803b158015611ba057600080fd5b505af1158015611bb4573d6000803e3d6000fd5b5050604051636b727d4360e11b8152600481018590526276a70092507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316915063d6e4fa8690602401602060405180830381865afa158015611c22573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c469190615015565b611c509190615044565b9250611c9988888080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508a9250505061ffff881686886131fa565b505095945050505050565b6001600160a01b0382163303611d0e5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084016107bb565b3360008181526002602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b3360009081526004602052604081205460ff16611da95760405162461bcd60e51b81526004016107bb906151db565b60008787604051611dbb9291906151cb565b604051908190038120633f2891eb60e21b8252600482018190523060248301526044820187905291507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063fca247ac906064016020604051808303816000875af1158015611e37573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e5b9190615015565b9150611eb088888080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508a9250505061ffff8616611eaa6276a70087615044565b886131fa565b509695505050505050565b600080611ec784610800565b50841663ffffffff908116908516149250505092915050565b611ee861330b565b6007546001600160a01b0316156120085760075460405163a22cb46560e01b81526001600160a01b039182166004820152600060248201527f00000000000000000000000000000000000000000000000000000000000000009091169063a22cb46590604401600060405180830381600087803b158015611f6857600080fd5b505af1158015611f7c573d6000803e3d6000fd5b505060075460405163a22cb46560e01b81526001600160a01b039182166004820152600060248201527f0000000000000000000000000000000000000000000000000000000000000000909116925063a22cb4659150604401600060405180830381600087803b158015611fef57600080fd5b505af1158015612003573d6000803e3d6000fd5b505050505b600780546001600160a01b0319166001600160a01b038316908117909155156121355760075460405163a22cb46560e01b81526001600160a01b039182166004820152600160248201527f00000000000000000000000000000000000000000000000000000000000000009091169063a22cb46590604401600060405180830381600087803b15801561209a57600080fd5b505af11580156120ae573d6000803e3d6000fd5b505060075460405163a22cb46560e01b81526001600160a01b039182166004820152600160248201527f0000000000000000000000000000000000000000000000000000000000000000909116925063a22cb4659150604401600060405180830381600087803b15801561212157600080fd5b505af1158015611258573d6000803e3d6000fd5b50565b3360009081526004602052604081205460ff166121675760405162461bcd60e51b81526004016107bb906151db565b60006121816000805160206156ec83398151915285613365565b60405163c475abff60e01b815260048101869052602481018590529091506000906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063c475abff906044016020604051808303816000875af11580156121f5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122199190615015565b6040516331a9108f60e11b8152600481018790529091507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690636352211e90602401602060405180830381865afa92505050801561229d575060408051601f3d908101601f1916820190925261229a91810190615191565b60015b6122aa5791506107fa9050565b6001600160a01b0381163014158061235457506040516302571be360e01b81526004810184905230906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906302571be390602401602060405180830381865afa158015612324573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123489190615191565b6001600160a01b031614155b15612363575091506107fa9050565b5060006123736276a70083615044565b60008481526001602052604090205490915060a081901c61239685838386613b4d565b50919695505050505050565b6000866123af81336114cd565b6123d057803360405163168ab55d60e31b81526004016107bb929190614f97565b600087876040516123e29291906151cb565b604051809103902090506123f68982613365565b92506124028984613391565b61240c83866134cf565b600061244f8a858b8b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061350292505050565b905061245d8a8588886135cf565b945061246884613615565b612517576040516306ab592360e01b8152600481018b9052602481018390523060448201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906306ab5923906064016020604051808303816000875af11580156124e0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125049190615015565b506125128482898989613ca3565b61255d565b61255d8a858b8b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508d92508c91508b9050613705565b5050509695505050505050565b60006125b0600086868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509293925050613ce59050565b6007549091506001600160a01b03166125dc5760405163093075b560e21b815260040160405180910390fd5b6125e681336114cd565b61260757803360405163168ab55d60e31b81526004016107bb929190614f97565b6000808061261484610800565b91945092509050600061262685610870565b905061263185613da4565b600760009054906101000a90046001600160a01b03166001600160a01b0316639198c2768a8a878787878e8e6040518963ffffffff1660e01b815260040161268098979695949392919061524c565b600060405180830381600087803b15801561269a57600080fd5b505af11580156126ae573d6000803e3d6000fd5b50505050505050505050505050565b836126c881336114cd565b6126e957803360405163168ab55d60e31b81526004016107bb929190614f97565b84601c60006126f783610800565b5091505063ffffffff82821616156127255760405163a2a7201360e01b8152600481018490526024016107bb565b60405163cf40882360e01b8152600481018990523060248201526001600160a01b0387811660448301526001600160401b03871660648301527f0000000000000000000000000000000000000000000000000000000000000000169063cf40882390608401600060405180830381600087803b1580156127a457600080fd5b505af11580156127b8573d6000803e3d6000fd5b5050506001600160a01b038816905061281f5760006127d689610800565b509150506201ffff196202000082160161280e57604051632ca49b0d60e11b81526001600160a01b03891660048201526024016107bb565b612819896000613bb3565b5061191e565b600061282a896116b0565b905061284c81898b60001c600160405180602001604052806000815250613e44565b505050505050505050565b6128618383613365565b61286b81336114cd565b61288c57803360405163168ab55d60e31b81526004016107bb929190614f97565b7f6c32148f748aba23997146d7fe89e962e3cc30271290fb96f5f4337756c03b5284016128cc5760405163615a470360e01b815260040160405180910390fd5b6001600160a01b03821615806128ea57506001600160a01b03821630145b1561291357604051632ca49b0d60e11b81526001600160a01b03831660048201526024016107bb565b6116aa6118948585613365565b60008061292d8484613365565b9050600061293a82613615565b90506000805160206156ec833981519152851461295a5791506107fa9050565b6040516331a9108f60e11b8152600481018590527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690636352211e90602401602060405180830381865afa9250505080156129db575060408051601f3d908101601f191682019092526129d891810190615191565b60015b6129ea576000925050506107fa565b6001600160a01b0316301492506107fa915050565b612a0761330b565b6001600160a01b038216600081815260046020908152604091829020805460ff191685151590811790915591519182527f4c97694570a07277810af7e5669ffd5f6a2d6b74b6e9a274b8b870fd5114cf8791015b60405180910390a25050565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205460ff1690565b600080612adc600087878080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509293925050613f269050565b915091506000612b258288888080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509293925050613ce59050565b90506000612b338285613365565b6000818152600660205260409020909150612b4f888a836152fa565b507f6c32148f748aba23997146d7fe89e962e3cc30271290fb96f5f4337756c03b528201612b905760405163615a470360e01b815260040160405180910390fd5b6040516302571be360e01b8152600481018290526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906302571be390602401602060405180830381865afa158015612bf8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612c1c9190615191565b90506001600160a01b0381163314801590612cc4575060405163e985e9c560e01b81526001600160a01b0382811660048301523360248301527f0000000000000000000000000000000000000000000000000000000000000000169063e985e9c590604401602060405180830381865afa158015612c9e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612cc291906151ae565b155b15612ce657813360405163168ab55d60e31b81526004016107bb929190614f97565b6001600160a01b03861615612d7657604051630c4b7b8560e11b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690631896f70a90612d439085908a90600401614f97565b600060405180830381600087803b158015612d5d57600080fd5b505af1158015612d71573d6000803e3d6000fd5b505050505b604051635b0fc9c360e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690635b0fc9c390612dc49085903090600401614f97565b600060405180830381600087803b158015612dde57600080fd5b505af1158015612df2573d6000803e3d6000fd5b5050505061284c828a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201829052508d93509150819050613ca3565b6001600160a01b038416612e5f5760405162461bcd60e51b81526004016107bb906150a5565b6001600160a01b038516331480612e7b5750612e7b8533612a67565b612ed95760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2063616c6c6572206973206e6f74206f776e6572206e6f7260448201526808185c1c1c9bdd995960ba1b60648201526084016107bb565b6112588585858585613e44565b612eee61330b565b6001600160a01b038116612f535760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107bb565b61213581613b63565b60008181526006602052604081208054829190612f789061506b565b80601f0160208091040260200160405190810160405280929190818152602001828054612fa49061506b565b8015612ff15780601f10612fc657610100808354040283529160200191612ff1565b820191906000526020600020905b815481529060010190602001808311612fd457829003601f168201915b50505050509050805160000361300a5750600092915050565b6000806130178382613f26565b909250905060006130288483613ce5565b905061096b8184612920565b60008042836001600160401b031610156130615761ffff196201000085160161305c57600094505b600093505b50929391925050565b60006001600160e01b03198216636cdb3d1360e11b148061309b57506001600160e01b031982166303a24d0760e21b145b806107fa57506301ffc9a760e01b6001600160e01b03198316146107fa565b60006130c5826116b0565b9050806001600160a01b0316836001600160a01b0316036131325760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084016107bb565b336001600160a01b038216148061314e575061314e8133612a67565b6131c05760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016107bb565b6108f68383613fdd565b6000620200008381161480156108ae5750426131e96276a700846153b9565b6001600160401b0316109392505050565b84516020860120600061321b6000805160206156ec83398151915283613365565b9050600061324488604051806040016040528060058152602001626cae8d60e31b81525061404b565b600083815260066020526040902090915061325f82826153d9565b50613272828289620300008a1789613ca3565b6001600160a01b0384161561191e57604051630c4b7b8560e11b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690631896f70a906132cf9085908890600401614f97565b600060405180830381600087803b1580156132e957600080fd5b505af11580156132fd573d6000803e3d6000fd5b505050505050505050505050565b6000546001600160a01b031633146118005760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107bb565b604080516020808201949094528082019290925280518083038201815260609092019052805191012090565b6000808061339e84610800565b91945092509050426001600160401b0382161080801561346157506001600160a01b038416158061346157506040516302571be360e01b8152600481018690526000906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906302571be390602401602060405180830381865afa158015613432573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906134569190615191565b6001600160a01b0316145b156134a057600061347187610800565b50915050602081161561349a5760405163a2a7201360e01b8152600481018790526024016107bb565b506134c7565b620100008316156134c75760405163a2a7201360e01b8152600481018690526024016107bb565b505050505050565b63fffdffff81811763ffffffff16146134fe5760405163a2a7201360e01b8152600481018390526024016107bb565b5050565b606060006135ab836006600088815260200190815260200160002080546135289061506b565b80601f01602080910402602001604051908101604052809291908181526020018280546135549061506b565b80156135a15780601f10613576576101008083540402835291602001916135a1565b820191906000526020600020905b81548152906001019060200180831161358457829003601f168201915b505050505061404b565b60008581526006602052604090209091506135c682826153d9565b50949350505050565b6000806135db85610800565b925050506000806135ee8860001c610800565b92509250506135fe878784613a0f565b613609858483613a4a565b98975050505050505050565b600080613621836116b0565b6001600160a01b0316141580156107fa57506040516302571be360e01b81526004810183905230906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906302571be390602401602060405180830381865afa15801561369a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906136be9190615191565b6001600160a01b03161492915050565b600086815260066020526040812080546136ed9187916135289061506b565b90506136fc8682868686613ca3565b50505050505050565b6000808061371288610800565b925092509250600061373c88600660008d815260200190815260200160002080546135289061506b565b60008a81526006602052604090208054919250906137599061506b565b905060000361377c57600089815260066020526040902061377a82826153d9565b505b61378b89858886178589613a90565b6001600160a01b0387166137a9576137a4896000613bb3565b610ad5565b610ad584888b60001c600160405180602001604052806000815250613e44565b6201ffff19620200008316016137e9576137e66276a700826153b9565b90505b42816001600160401b03161015613822576201000082161561381d5760405162461bcd60e51b81526004016107bb90615100565b613847565b60048216156138475760405163a2a7201360e01b8152600481018490526024016107bb565b604082166000036108f6575050600090815260036020526040902080546001600160a01b0319169055565b60c0816001600160401b0316901b60a08363ffffffff16901b846001600160a01b03161717600160008681526020019081526020016000208190555050505050565b6001600160a01b0384163b156134c75760405163bc197c8160e01b81526001600160a01b0385169063bc197c81906138f89089908990889088908890600401615498565b6020604051808303816000875af1925050508015613933575060408051601f3d908101601f19168201909252613930918101906154ea565b60015b6139df5761393f615507565b806308c379a0036139785750613953615523565b8061395e575061397a565b8060405162461bcd60e51b81526004016107bb9190614514565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e20455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b60648201526084016107bb565b6001600160e01b0319811663bc197c8160e01b146136fc5760405162461bcd60e51b81526004016107bb906155ac565b63ffff00008216158015906001831615908290613a295750805b156112585760405163a2a7201360e01b8152600481018690526024016107bb565b6000816001600160401b0316846001600160401b03161115613a6a578193505b826001600160401b0316846001600160401b03161015613a88578293505b509192915050565b613a9c85858584613b4d565b60405163ffffffff8416815285907f39873f00c80f4f94b7bd1594aebcf650f003545b74824d57ddf4939e3ff3a34b9060200160405180910390a2816001600160401b0316816001600160401b03161115611258576040516001600160401b038216815285907ff675815a0817338f93a7da433f6bd5f5542f1029b11b455191ac96c7f6a9b132906020015b60405180910390a25050505050565b600080613b4383610800565b5090949350505050565b613b5784836140c2565b6116aa84848484613872565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b613bbe826001611ebb565b15613bdf5760405163a2a7201360e01b8152600481018390526024016107bb565b613be882613da4565b604051635b0fc9c360e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690635b0fc9c390613c369085908590600401614f97565b600060405180830381600087803b158015613c5057600080fd5b505af1158015613c64573d6000803e3d6000fd5b50506040516001600160a01b03841681528492507fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c49150602001612a5b565b613caf858484846140fb565b847f8ce7013e8abebc55c3890a68f5a27c67c3f7efa64e584de5fb22363c606fd34085858585604051613b2894939291906155f4565b6000806000613cf48585613f26565b909250905081613d665760018551613d0c919061563b565b8414613d5a5760405162461bcd60e51b815260206004820152601d60248201527f6e616d65686173683a204a756e6b20617420656e64206f66206e616d6500000060448201526064016107bb565b50600091506107fa9050565b613d708582613ce5565b6040805160208101929092528101839052606001604051602081830303815290604052805190602001209250505092915050565b60008181526001602052604090205460a081901c60c082901c613dc8838383613034565b600086815260036020526040812080546001600160a01b0319169055909350613df5915085908484613872565b60408051858152600160208201526000916001600160a01b0386169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b6000806000613e5286610800565b925092509250613e638683836137c9565b846001148015613e845750876001600160a01b0316836001600160a01b0316145b613ea05760405162461bcd60e51b81526004016107bb90615100565b866001600160a01b0316836001600160a01b031603613ec157505050611258565b613ecd86888484613872565b60408051878152602081018790526001600160a01b03808a1692908b169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a461191e33898989898961416f565b60008083518310613f795760405162461bcd60e51b815260206004820152601e60248201527f726561644c6162656c3a20496e646578206f7574206f6620626f756e6473000060448201526064016107bb565b6000848481518110613f8d57613f8d6150ea565b016020015160f81c90508015613fb957613fb285613fac86600161564e565b8361422a565b9250613fbe565b600092505b613fc8818561564e565b613fd390600161564e565b9150509250929050565b600081815260036020526040902080546001600160a01b0319166001600160a01b0384169081179091558190614012826116b0565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b606060018351101561407057604051631406d65b60e11b815260040160405180910390fd5b60ff83511115614095578260405163e3ba295f60e01b81526004016107bb9190614514565b825183836040516020016140ab93929190615661565b604051602081830303815290604052905092915050565b61ffff8116158015906140da57506201000181811614155b156134fe5760405163a2a7201360e01b8152600481018390526024016107bb565b61410584836140c2565b6000848152600160205260409020546001600160a01b038116156141635761412c85613da4565b6040516000815285907fee2ba1195c65bcf218a83d874335c6bf9d9067b4c672f3c3bf16cf40de7586c49060200160405180910390a25b6112588585858561424e565b6001600160a01b0384163b156134c75760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e61906141b390899089908890889088906004016156a6565b6020604051808303816000875af19250505080156141ee575060408051601f3d908101601f191682019092526141eb918101906154ea565b60015b6141fa5761393f615507565b6001600160e01b0319811663f23a6e6160e01b146136fc5760405162461bcd60e51b81526004016107bb906155ac565b8251600090614239838561564e565b111561424457600080fd5b5091016020012090565b836000808061425c84610800565b9194509250905063ffff000082166001600160401b038087169083161115614282578195505b42826001600160401b03161061429757958617955b6001600160a01b038416156142ee5760405162461bcd60e51b815260206004820152601f60248201527f455243313135353a206d696e74206f66206578697374696e6720746f6b656e0060448201526064016107bb565b6001600160a01b03881661434e5760405162461bcd60e51b815260206004820152602160248201527f455243313135353a206d696e7420746f20746865207a65726f206164647265736044820152607360f81b60648201526084016107bb565b306001600160a01b038916036143c35760405162461bcd60e51b815260206004820152603460248201527f455243313135353a206e65774f776e65722063616e6e6f74206265207468652060448201527313985b5955dc985c1c195c8818dbdb9d1c9858dd60621b60648201526084016107bb565b6143cf85898989613872565b60408051868152600160208201526001600160a01b038a169160009133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a461284c3360008a8860016040518060200160405280600081525061416f565b6001600160a01b038116811461213557600080fd5b6000806040838503121561445f57600080fd5b823561446a81614437565b946020939093013593505050565b60006020828403121561448a57600080fd5b5035919050565b6001600160e01b03198116811461213557600080fd5b6000602082840312156144b957600080fd5b81356108ae81614491565b60005b838110156144df5781810151838201526020016144c7565b50506000910152565b600081518084526145008160208601602086016144c4565b601f01601f19169290920160200192915050565b6020815260006108ae60208301846144e8565b6000806040838503121561453a57600080fd5b82359150602083013561454c81614437565b809150509250929050565b80356001600160401b038116811461456e57600080fd5b919050565b6000806040838503121561458657600080fd5b8235915061459660208401614557565b90509250929050565b60008083601f8401126145b157600080fd5b5081356001600160401b038111156145c857600080fd5b6020830191508360208285010111156145e057600080fd5b9250929050565b6000806000806000608086880312156145ff57600080fd5b853561460a81614437565b9450602086013561461a81614437565b93506040860135925060608601356001600160401b0381111561463c57600080fd5b6146488882890161459f565b969995985093965092949392505050565b60006020828403121561466b57600080fd5b81356108ae81614437565b634e487b7160e01b600052604160045260246000fd5b601f8201601f191681016001600160401b03811182821017156146b1576146b1614676565b6040525050565b60006001600160401b038211156146d1576146d1614676565b50601f01601f191660200190565b600082601f8301126146f057600080fd5b81356146fb816146b8565b604051614708828261468c565b82815285602084870101111561471d57600080fd5b82602086016020830137600092810160200192909252509392505050565b803563ffffffff8116811461456e57600080fd5b600080600080600080600060e0888a03121561476a57600080fd5b8735965060208801356001600160401b0381111561478757600080fd5b6147938a828b016146df565b96505060408801356147a481614437565b945060608801356147b481614437565b93506147c260808901614557565b92506147d060a0890161473b565b91506147de60c08901614557565b905092959891949750929550565b60006001600160401b0382111561480557614805614676565b5060051b60200190565b600082601f83011261482057600080fd5b8135602061482d826147ec565b60405161483a828261468c565b83815260059390931b850182019282810191508684111561485a57600080fd5b8286015b84811015611eb0578035835291830191830161485e565b600080600080600060a0868803121561488d57600080fd5b853561489881614437565b945060208601356148a881614437565b935060408601356001600160401b03808211156148c457600080fd5b6148d089838a0161480f565b945060608801359150808211156148e657600080fd5b6148f289838a0161480f565b9350608088013591508082111561490857600080fd5b50614915888289016146df565b9150509295509295909350565b6000806000806080858703121561493857600080fd5b843593506020850135925061494f6040860161473b565b915061495d60608601614557565b905092959194509250565b803561ffff8116811461456e57600080fd5b6000806040838503121561498d57600080fd5b8235915061459660208401614968565b600080604083850312156149b057600080fd5b82356001600160401b03808211156149c757600080fd5b818501915085601f8301126149db57600080fd5b813560206149e8826147ec565b6040516149f5828261468c565b83815260059390931b8501820192828101915089841115614a1557600080fd5b948201945b83861015614a3c578535614a2d81614437565b82529482019490820190614a1a565b96505086013592505080821115614a5257600080fd5b50613fd38582860161480f565b600081518084526020808501945080840160005b83811015614a8f57815187529582019590820190600101614a73565b509495945050505050565b6020815260006108ae6020830184614a5f565b600080600060608486031215614ac257600080fd5b8335614acd81614437565b92506020840135614add81614437565b929592945050506040919091013590565b600080600060608486031215614b0357600080fd5b8335925060208401359150614b1a60408501614557565b90509250925092565b600080600060608486031215614b3857600080fd5b833592506020840135614b4a81614437565b91506040840135614b5a81614437565b809150509250925092565b600080600080600060808688031215614b7d57600080fd5b85356001600160401b03811115614b9357600080fd5b614b9f8882890161459f565b9096509450506020860135614bb381614437565b9250614bc160408701614968565b91506060860135614bd181614437565b809150509295509295909350565b801515811461213557600080fd5b60008060408385031215614c0057600080fd5b8235614c0b81614437565b9150602083013561454c81614bdf565b60008060008060008060a08789031215614c3457600080fd5b86356001600160401b03811115614c4a57600080fd5b614c5689828a0161459f565b9097509550506020870135614c6a81614437565b9350604087013592506060870135614c8181614437565b9150614c8f60808801614968565b90509295509295509295565b60008060408385031215614cae57600080fd5b823591506145966020840161473b565b60008060408385031215614cd157600080fd5b50508035926020909101359150565b60008060008060008060a08789031215614cf957600080fd5b8635955060208701356001600160401b03811115614d1657600080fd5b614d2289828a0161459f565b9096509450506040870135614d3681614437565b9250614d446060880161473b565b9150614c8f60808801614557565b60008060008060408587031215614d6857600080fd5b84356001600160401b0380821115614d7f57600080fd5b614d8b8883890161459f565b90965094506020870135915080821115614da457600080fd5b50614db18782880161459f565b95989497509550505050565b60008060008060808587031215614dd357600080fd5b843593506020850135614de581614437565b9250604085013561494f81614437565b600080600060608486031215614e0a57600080fd5b83359250602084013591506040840135614b5a81614437565b60008060408385031215614e3657600080fd5b8235614e4181614437565b9150602083013561454c81614437565b60008060008060608587031215614e6757600080fd5b84356001600160401b03811115614e7d57600080fd5b614e898782880161459f565b9095509350506020850135614e9d81614437565b91506040850135614ead81614437565b939692955090935050565b600080600080600060a08688031215614ed057600080fd5b8535614edb81614437565b94506020860135614eeb81614437565b9350604086013592506060860135915060808601356001600160401b03811115614f1457600080fd5b614915888289016146df565b600060208284031215614f3257600080fd5b81516001600160401b03811115614f4857600080fd5b8201601f81018413614f5957600080fd5b8051614f64816146b8565b604051614f71828261468c565b828152866020848601011115614f8657600080fd5b61096b8360208301602087016144c4565b9182526001600160a01b0316602082015260400190565b60008060008060808587031215614fc457600080fd5b84356001600160401b03811115614fda57600080fd5b614fe6878288016146df565b9450506020850135614ff781614437565b925061500560408601614968565b91506060850135614ead81614437565b60006020828403121561502757600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b6001600160401b038181168382160190808211156150645761506461502e565b5092915050565b600181811c9082168061507f57607f821691505b60208210810361509f57634e487b7160e01b600052602260045260246000fd5b50919050565b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b60006001820161515c5761515c61502e565b5060010190565b6040815260006151766040830185614a5f565b82810360208401526151888185614a5f565b95945050505050565b6000602082840312156151a357600080fd5b81516108ae81614437565b6000602082840312156151c057600080fd5b81516108ae81614bdf565b8183823760009101908152919050565b60208082526028908201527f436f6e74726f6c6c61626c653a2043616c6c6572206973206e6f74206120636f604082015267373a3937b63632b960c11b606082015260800190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60c08152600061526060c083018a8c615223565b6001600160a01b03898116602085015263ffffffff891660408501526001600160401b03881660608501528616608084015282810360a08401526152a5818587615223565b9b9a5050505050505050505050565b601f8211156108f657600081815260208120601f850160051c810160208610156152db5750805b601f850160051c820191505b818110156134c7578281556001016152e7565b6001600160401b0383111561531157615311614676565b6153258361531f835461506b565b836152b4565b6000601f84116001811461535957600085156153415750838201355b600019600387901b1c1916600186901b178355611258565b600083815260209020601f19861690835b8281101561538a578685013582556020948501946001909201910161536a565b50868210156153a75760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b6001600160401b038281168282160390808211156150645761506461502e565b81516001600160401b038111156153f2576153f2614676565b61540681615400845461506b565b846152b4565b602080601f83116001811461543b57600084156154235750858301515b600019600386901b1c1916600185901b1785556134c7565b600085815260208120601f198616915b8281101561546a5788860151825594840194600190910190840161544b565b50858210156154885787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6001600160a01b0386811682528516602082015260a0604082018190526000906154c490830186614a5f565b82810360608401526154d68186614a5f565b9050828103608084015261360981856144e8565b6000602082840312156154fc57600080fd5b81516108ae81614491565b600060033d11156155205760046000803e5060005160e01c5b90565b600060443d10156155315790565b6040516003193d81016004833e81513d6001600160401b03816024840111818411171561556057505050505090565b82850191508151818111156155785750505050505090565b843d87010160208285010111156155925750505050505090565b6155a16020828601018761468c565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b60808152600061560760808301876144e8565b6001600160a01b039590951660208301525063ffffffff9290921660408301526001600160401b0316606090910152919050565b818103818111156107fa576107fa61502e565b808201808211156107fa576107fa61502e565b60ff60f81b8460f81b168152600083516156828160018501602088016144c4565b8351908301906156998160018401602088016144c4565b0160010195945050505050565b6001600160a01b03868116825285166020820152604081018490526060810183905260a0608082018190526000906156e0908301846144e8565b97965050505050505056fe93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4aea164736f6c6343000811000a"; -const isSuperArgs = (xs) => xs.length > 1; -class NameWrapper__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(_ens, _registrar, _metadataService, overrides) { - return super.getDeployTransaction(_ens, _registrar, _metadataService, overrides || {}); - } - deploy(_ens, _registrar, _metadataService, overrides) { - return super.deploy(_ens, _registrar, _metadataService, overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.NameWrapper__factory = NameWrapper__factory; -NameWrapper__factory.bytecode = _bytecode; -NameWrapper__factory.abi = _abi; diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/index.d.ts b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/index.d.ts deleted file mode 100644 index 27aec35e..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/index.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -export { Controllable__factory } from "./Controllable__factory"; -export { ERC1155Fuse__factory } from "./ERC1155Fuse__factory"; -export { IMetadataService__factory } from "./IMetadataService__factory"; -export { INameWrapper__factory } from "./INameWrapper__factory"; -export { INameWrapperUpgrade__factory } from "./INameWrapperUpgrade__factory"; -export { NameWrapper__factory } from "./NameWrapper__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/index.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/index.d.ts.map deleted file mode 100644 index 5637a974..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@ensdomains/ens-contracts/contracts/wrapper/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/index.js b/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/index.js deleted file mode 100644 index 5c890e71..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/index.js +++ /dev/null @@ -1,15 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.NameWrapper__factory = exports.INameWrapperUpgrade__factory = exports.INameWrapper__factory = exports.IMetadataService__factory = exports.ERC1155Fuse__factory = exports.Controllable__factory = void 0; -var Controllable__factory_1 = require("./Controllable__factory"); -Object.defineProperty(exports, "Controllable__factory", { enumerable: true, get: function () { return Controllable__factory_1.Controllable__factory; } }); -var ERC1155Fuse__factory_1 = require("./ERC1155Fuse__factory"); -Object.defineProperty(exports, "ERC1155Fuse__factory", { enumerable: true, get: function () { return ERC1155Fuse__factory_1.ERC1155Fuse__factory; } }); -var IMetadataService__factory_1 = require("./IMetadataService__factory"); -Object.defineProperty(exports, "IMetadataService__factory", { enumerable: true, get: function () { return IMetadataService__factory_1.IMetadataService__factory; } }); -var INameWrapper__factory_1 = require("./INameWrapper__factory"); -Object.defineProperty(exports, "INameWrapper__factory", { enumerable: true, get: function () { return INameWrapper__factory_1.INameWrapper__factory; } }); -var INameWrapperUpgrade__factory_1 = require("./INameWrapperUpgrade__factory"); -Object.defineProperty(exports, "INameWrapperUpgrade__factory", { enumerable: true, get: function () { return INameWrapperUpgrade__factory_1.INameWrapperUpgrade__factory; } }); -var NameWrapper__factory_1 = require("./NameWrapper__factory"); -Object.defineProperty(exports, "NameWrapper__factory", { enumerable: true, get: function () { return NameWrapper__factory_1.NameWrapper__factory; } }); diff --git a/dist/types/factories/@ensdomains/ens-contracts/index.d.ts b/dist/types/factories/@ensdomains/ens-contracts/index.d.ts deleted file mode 100644 index 0687b2ab..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export * as contracts from "./contracts"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/index.d.ts.map b/dist/types/factories/@ensdomains/ens-contracts/index.d.ts.map deleted file mode 100644 index 8a054516..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/factories/@ensdomains/ens-contracts/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/ens-contracts/index.js b/dist/types/factories/@ensdomains/ens-contracts/index.js deleted file mode 100644 index 7ed2f1f8..00000000 --- a/dist/types/factories/@ensdomains/ens-contracts/index.js +++ /dev/null @@ -1,27 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.contracts = void 0; -exports.contracts = __importStar(require("./contracts")); diff --git a/dist/types/factories/@ensdomains/index.d.ts b/dist/types/factories/@ensdomains/index.d.ts deleted file mode 100644 index b6dcaaa0..00000000 --- a/dist/types/factories/@ensdomains/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export * as ensContracts from "./ens-contracts"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/index.d.ts.map b/dist/types/factories/@ensdomains/index.d.ts.map deleted file mode 100644 index ca3aeff7..00000000 --- a/dist/types/factories/@ensdomains/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../types/factories/@ensdomains/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,YAAY,MAAM,iBAAiB,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@ensdomains/index.js b/dist/types/factories/@ensdomains/index.js deleted file mode 100644 index f6898cc4..00000000 --- a/dist/types/factories/@ensdomains/index.js +++ /dev/null @@ -1,27 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ensContracts = void 0; -exports.ensContracts = __importStar(require("./ens-contracts")); diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/access/index.d.ts b/dist/types/factories/@openzeppelin/contracts-2.3/access/index.d.ts deleted file mode 100644 index 8a4c8c90..00000000 --- a/dist/types/factories/@openzeppelin/contracts-2.3/access/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export * as roles from "./roles"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/access/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts-2.3/access/index.d.ts.map deleted file mode 100644 index 50a355f7..00000000 --- a/dist/types/factories/@openzeppelin/contracts-2.3/access/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/@openzeppelin/contracts-2.3/access/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/access/index.js b/dist/types/factories/@openzeppelin/contracts-2.3/access/index.js deleted file mode 100644 index 328b1867..00000000 --- a/dist/types/factories/@openzeppelin/contracts-2.3/access/index.js +++ /dev/null @@ -1,27 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.roles = void 0; -exports.roles = __importStar(require("./roles")); diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/MinterRole__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/MinterRole__factory.d.ts deleted file mode 100644 index 1c858d09..00000000 --- a/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/MinterRole__factory.d.ts +++ /dev/null @@ -1,69 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { MinterRole, MinterRoleInterface } from "../../../../../@openzeppelin/contracts-2.3/access/roles/MinterRole"; -export declare class MinterRole__factory { - static readonly abi: readonly [{ - readonly inputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "constructor"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "MinterAdded"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "MinterRemoved"; - readonly type: "event"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "addMinter"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "isMinter"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly []; - readonly name: "renounceMinter"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): MinterRoleInterface; - static connect(address: string, runner?: ContractRunner | null): MinterRole; -} -//# sourceMappingURL=MinterRole__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/MinterRole__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/MinterRole__factory.d.ts.map deleted file mode 100644 index 525a00de..00000000 --- a/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/MinterRole__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"MinterRole__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts-2.3/access/roles/MinterRole__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,UAAU,EACV,mBAAmB,EACpB,MAAM,oEAAoE,CAAC;AAkF5E,qBAAa,mBAAmB;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,mBAAmB;IAG7C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,UAAU;CAG5E"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/MinterRole__factory.js b/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/MinterRole__factory.js deleted file mode 100644 index 77ccae2f..00000000 --- a/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/MinterRole__factory.js +++ /dev/null @@ -1,93 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.MinterRole__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [], - payable: false, - stateMutability: "nonpayable", - type: "constructor", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "MinterAdded", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "MinterRemoved", - type: "event", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "addMinter", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "isMinter", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [], - name: "renounceMinter", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, -]; -class MinterRole__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.MinterRole__factory = MinterRole__factory; -MinterRole__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole__factory.d.ts deleted file mode 100644 index 14f7e632..00000000 --- a/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole__factory.d.ts +++ /dev/null @@ -1,69 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { WhitelistAdminRole, WhitelistAdminRoleInterface } from "../../../../../@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole"; -export declare class WhitelistAdminRole__factory { - static readonly abi: readonly [{ - readonly inputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "constructor"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "WhitelistAdminAdded"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "WhitelistAdminRemoved"; - readonly type: "event"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "addWhitelistAdmin"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "isWhitelistAdmin"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly []; - readonly name: "renounceWhitelistAdmin"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): WhitelistAdminRoleInterface; - static connect(address: string, runner?: ContractRunner | null): WhitelistAdminRole; -} -//# sourceMappingURL=WhitelistAdminRole__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole__factory.d.ts.map deleted file mode 100644 index 22faa1be..00000000 --- a/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"WhitelistAdminRole__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,kBAAkB,EAClB,2BAA2B,EAC5B,MAAM,4EAA4E,CAAC;AAkFpF,qBAAa,2BAA2B;IACtC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,2BAA2B;IAGrD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,kBAAkB;CAGtB"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole__factory.js b/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole__factory.js deleted file mode 100644 index dfe5535d..00000000 --- a/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole__factory.js +++ /dev/null @@ -1,93 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.WhitelistAdminRole__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [], - payable: false, - stateMutability: "nonpayable", - type: "constructor", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "WhitelistAdminAdded", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "WhitelistAdminRemoved", - type: "event", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "addWhitelistAdmin", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "isWhitelistAdmin", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [], - name: "renounceWhitelistAdmin", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, -]; -class WhitelistAdminRole__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.WhitelistAdminRole__factory = WhitelistAdminRole__factory; -WhitelistAdminRole__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole__factory.d.ts deleted file mode 100644 index 3e209f54..00000000 --- a/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole__factory.d.ts +++ /dev/null @@ -1,147 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../../../common"; -import type { WhitelistedRole, WhitelistedRoleInterface } from "../../../../../@openzeppelin/contracts-2.3/access/roles/WhitelistedRole"; -declare type WhitelistedRoleConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class WhitelistedRole__factory extends ContractFactory { - constructor(...args: WhitelistedRoleConstructorParams); - getDeployTransaction(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): WhitelistedRole__factory; - static readonly bytecode = "0x6080604052610016336001600160e01b0361001b16565b61018f565b61003381600061006a60201b6104161790919060201c565b6040516001600160a01b038216907f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129990600090a250565b61007d82826001600160e01b0361010e16565b156100e957604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b60006001600160a01b03821661016f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260228152602001806107546022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b6105b68061019e6000396000f3fe608060405234801561001057600080fd5b506004361061007d5760003560e01c80634c5a628c1161005b5780634c5a628c1461010a5780637362d9c814610112578063bb5f747b14610138578063d6cd94731461015e5761007d565b806310154bad14610082578063291d9549146100aa5780633af32abf146100d0575b600080fd5b6100a86004803603602081101561009857600080fd5b50356001600160a01b0316610166565b005b6100a8600480360360208110156100c057600080fd5b50356001600160a01b03166101b6565b6100f6600480360360208110156100e657600080fd5b50356001600160a01b0316610203565b604080519115158252519081900360200190f35b6100a861021c565b6100a86004803603602081101561012857600080fd5b50356001600160a01b0316610227565b6100f66004803603602081101561014e57600080fd5b50356001600160a01b0316610274565b6100a8610286565b61016f33610274565b6101aa5760405162461bcd60e51b81526004018080602001828103825260408152602001806105426040913960400191505060405180910390fd5b6101b38161028f565b50565b6101bf33610274565b6101fa5760405162461bcd60e51b81526004018080602001828103825260408152602001806105426040913960400191505060405180910390fd5b6101b3816102d7565b600061021660018363ffffffff61031f16565b92915050565b61022533610386565b565b61023033610274565b61026b5760405162461bcd60e51b81526004018080602001828103825260408152602001806105426040913960400191505060405180910390fd5b6101b3816103ce565b6000610216818363ffffffff61031f16565b610225336102d7565b6102a060018263ffffffff61041616565b6040516001600160a01b038216907fee1504a83b6d4a361f4c1dc78ab59bfa30d6a3b6612c403e86bb01ef2984295f90600090a250565b6102e860018263ffffffff61049716565b6040516001600160a01b038216907f270d9b30cf5b0793bbfd54c9d5b94aeb49462b8148399000265144a8722da6b690600090a250565b60006001600160a01b0382166103665760405162461bcd60e51b81526004018080602001828103825260228152602001806105206022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b61039760008263ffffffff61049716565b6040516001600160a01b038216907f0a8eb35e5ca14b3d6f28e4abf2f128dbab231a58b56e89beb5d636115001e16590600090a250565b6103df60008263ffffffff61041616565b6040516001600160a01b038216907f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129990600090a250565b610420828261031f565b15610472576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b6104a1828261031f565b6104dc5760405162461bcd60e51b81526004018080602001828103825260218152602001806104ff6021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f206164647265737357686974656c69737441646d696e526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c69737441646d696e20726f6c65a265627a7a7231582030aebabaa6c3dadca8830d368f2bb7701d9562b25c9ab8d6c8a39d4323267ad464736f6c634300050c0032526f6c65733a206163636f756e7420697320746865207a65726f2061646472657373"; - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "WhitelistAdminAdded"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "WhitelistAdminRemoved"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "WhitelistedAdded"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "WhitelistedRemoved"; - readonly type: "event"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "addWhitelistAdmin"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "addWhitelisted"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "isWhitelistAdmin"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "isWhitelisted"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "removeWhitelisted"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly []; - readonly name: "renounceWhitelistAdmin"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly []; - readonly name: "renounceWhitelisted"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): WhitelistedRoleInterface; - static connect(address: string, runner?: ContractRunner | null): WhitelistedRole; -} -export {}; -//# sourceMappingURL=WhitelistedRole__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole__factory.d.ts.map deleted file mode 100644 index 706ddd08..00000000 --- a/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"WhitelistedRole__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,eAAe,EACf,wBAAwB,EACzB,MAAM,yEAAyE,CAAC;AAqKjF,aAAK,gCAAgC,GACjC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,wBAAyB,SAAQ,eAAe;gBAC/C,GAAG,IAAI,EAAE,gCAAgC;IAQ5C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,wBAAwB;IAIzE,MAAM,CAAC,QAAQ,CAAC,QAAQ,ovHAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,wBAAwB;IAGlD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,eAAe;CAGnB"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole__factory.js b/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole__factory.js deleted file mode 100644 index 04aa3658..00000000 --- a/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole__factory.js +++ /dev/null @@ -1,193 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.WhitelistedRole__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "WhitelistAdminAdded", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "WhitelistAdminRemoved", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "WhitelistedAdded", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "WhitelistedRemoved", - type: "event", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "addWhitelistAdmin", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "addWhitelisted", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "isWhitelistAdmin", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "isWhitelisted", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "removeWhitelisted", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [], - name: "renounceWhitelistAdmin", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [], - name: "renounceWhitelisted", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, -]; -const _bytecode = "0x6080604052610016336001600160e01b0361001b16565b61018f565b61003381600061006a60201b6104161790919060201c565b6040516001600160a01b038216907f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129990600090a250565b61007d82826001600160e01b0361010e16565b156100e957604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b60006001600160a01b03821661016f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260228152602001806107546022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b6105b68061019e6000396000f3fe608060405234801561001057600080fd5b506004361061007d5760003560e01c80634c5a628c1161005b5780634c5a628c1461010a5780637362d9c814610112578063bb5f747b14610138578063d6cd94731461015e5761007d565b806310154bad14610082578063291d9549146100aa5780633af32abf146100d0575b600080fd5b6100a86004803603602081101561009857600080fd5b50356001600160a01b0316610166565b005b6100a8600480360360208110156100c057600080fd5b50356001600160a01b03166101b6565b6100f6600480360360208110156100e657600080fd5b50356001600160a01b0316610203565b604080519115158252519081900360200190f35b6100a861021c565b6100a86004803603602081101561012857600080fd5b50356001600160a01b0316610227565b6100f66004803603602081101561014e57600080fd5b50356001600160a01b0316610274565b6100a8610286565b61016f33610274565b6101aa5760405162461bcd60e51b81526004018080602001828103825260408152602001806105426040913960400191505060405180910390fd5b6101b38161028f565b50565b6101bf33610274565b6101fa5760405162461bcd60e51b81526004018080602001828103825260408152602001806105426040913960400191505060405180910390fd5b6101b3816102d7565b600061021660018363ffffffff61031f16565b92915050565b61022533610386565b565b61023033610274565b61026b5760405162461bcd60e51b81526004018080602001828103825260408152602001806105426040913960400191505060405180910390fd5b6101b3816103ce565b6000610216818363ffffffff61031f16565b610225336102d7565b6102a060018263ffffffff61041616565b6040516001600160a01b038216907fee1504a83b6d4a361f4c1dc78ab59bfa30d6a3b6612c403e86bb01ef2984295f90600090a250565b6102e860018263ffffffff61049716565b6040516001600160a01b038216907f270d9b30cf5b0793bbfd54c9d5b94aeb49462b8148399000265144a8722da6b690600090a250565b60006001600160a01b0382166103665760405162461bcd60e51b81526004018080602001828103825260228152602001806105206022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b61039760008263ffffffff61049716565b6040516001600160a01b038216907f0a8eb35e5ca14b3d6f28e4abf2f128dbab231a58b56e89beb5d636115001e16590600090a250565b6103df60008263ffffffff61041616565b6040516001600160a01b038216907f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129990600090a250565b610420828261031f565b15610472576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b6104a1828261031f565b6104dc5760405162461bcd60e51b81526004018080602001828103825260218152602001806104ff6021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f206164647265737357686974656c69737441646d696e526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c69737441646d696e20726f6c65a265627a7a7231582030aebabaa6c3dadca8830d368f2bb7701d9562b25c9ab8d6c8a39d4323267ad464736f6c634300050c0032526f6c65733a206163636f756e7420697320746865207a65726f2061646472657373"; -const isSuperArgs = (xs) => xs.length > 1; -class WhitelistedRole__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(overrides) { - return super.getDeployTransaction(overrides || {}); - } - deploy(overrides) { - return super.deploy(overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.WhitelistedRole__factory = WhitelistedRole__factory; -WhitelistedRole__factory.bytecode = _bytecode; -WhitelistedRole__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/index.d.ts b/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/index.d.ts deleted file mode 100644 index f4024e12..00000000 --- a/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/index.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export { MinterRole__factory } from "./MinterRole__factory"; -export { WhitelistAdminRole__factory } from "./WhitelistAdminRole__factory"; -export { WhitelistedRole__factory } from "./WhitelistedRole__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/index.d.ts.map deleted file mode 100644 index 1ad6f7d5..00000000 --- a/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts-2.3/access/roles/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/index.js b/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/index.js deleted file mode 100644 index fef34f20..00000000 --- a/dist/types/factories/@openzeppelin/contracts-2.3/access/roles/index.js +++ /dev/null @@ -1,9 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.WhitelistedRole__factory = exports.WhitelistAdminRole__factory = exports.MinterRole__factory = void 0; -var MinterRole__factory_1 = require("./MinterRole__factory"); -Object.defineProperty(exports, "MinterRole__factory", { enumerable: true, get: function () { return MinterRole__factory_1.MinterRole__factory; } }); -var WhitelistAdminRole__factory_1 = require("./WhitelistAdminRole__factory"); -Object.defineProperty(exports, "WhitelistAdminRole__factory", { enumerable: true, get: function () { return WhitelistAdminRole__factory_1.WhitelistAdminRole__factory; } }); -var WhitelistedRole__factory_1 = require("./WhitelistedRole__factory"); -Object.defineProperty(exports, "WhitelistedRole__factory", { enumerable: true, get: function () { return WhitelistedRole__factory_1.WhitelistedRole__factory; } }); diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/index.d.ts b/dist/types/factories/@openzeppelin/contracts-2.3/index.d.ts deleted file mode 100644 index d5c9a38b..00000000 --- a/dist/types/factories/@openzeppelin/contracts-2.3/index.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export * as access from "./access"; -export * as introspection from "./introspection"; -export * as token from "./token"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts-2.3/index.d.ts.map deleted file mode 100644 index 20d4012f..00000000 --- a/dist/types/factories/@openzeppelin/contracts-2.3/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/factories/@openzeppelin/contracts-2.3/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,aAAa,MAAM,iBAAiB,CAAC;AACjD,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/index.js b/dist/types/factories/@openzeppelin/contracts-2.3/index.js deleted file mode 100644 index 8fa7a49b..00000000 --- a/dist/types/factories/@openzeppelin/contracts-2.3/index.js +++ /dev/null @@ -1,29 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.token = exports.introspection = exports.access = void 0; -exports.access = __importStar(require("./access")); -exports.introspection = __importStar(require("./introspection")); -exports.token = __importStar(require("./token")); diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/introspection/ERC165__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-2.3/introspection/ERC165__factory.d.ts deleted file mode 100644 index ea272c07..00000000 --- a/dist/types/factories/@openzeppelin/contracts-2.3/introspection/ERC165__factory.d.ts +++ /dev/null @@ -1,29 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { ERC165, ERC165Interface } from "../../../../@openzeppelin/contracts-2.3/introspection/ERC165"; -export declare class ERC165__factory { - static readonly abi: readonly [{ - readonly inputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "constructor"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): ERC165Interface; - static connect(address: string, runner?: ContractRunner | null): ERC165; -} -//# sourceMappingURL=ERC165__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/introspection/ERC165__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-2.3/introspection/ERC165__factory.d.ts.map deleted file mode 100644 index 323da87e..00000000 --- a/dist/types/factories/@openzeppelin/contracts-2.3/introspection/ERC165__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ERC165__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/@openzeppelin/contracts-2.3/introspection/ERC165__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,MAAM,EACN,eAAe,EAChB,MAAM,8DAA8D,CAAC;AAgCtE,qBAAa,eAAe;IAC1B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,eAAe;IAGzC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,MAAM;CAGxE"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/introspection/ERC165__factory.js b/dist/types/factories/@openzeppelin/contracts-2.3/introspection/ERC165__factory.js deleted file mode 100644 index 1e1be474..00000000 --- a/dist/types/factories/@openzeppelin/contracts-2.3/introspection/ERC165__factory.js +++ /dev/null @@ -1,43 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ERC165__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [], - payable: false, - stateMutability: "nonpayable", - type: "constructor", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, -]; -class ERC165__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.ERC165__factory = ERC165__factory; -ERC165__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/introspection/IERC165__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-2.3/introspection/IERC165__factory.d.ts deleted file mode 100644 index 84d2eedc..00000000 --- a/dist/types/factories/@openzeppelin/contracts-2.3/introspection/IERC165__factory.d.ts +++ /dev/null @@ -1,24 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IERC165, IERC165Interface } from "../../../../@openzeppelin/contracts-2.3/introspection/IERC165"; -export declare class IERC165__factory { - static readonly abi: readonly [{ - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): IERC165Interface; - static connect(address: string, runner?: ContractRunner | null): IERC165; -} -//# sourceMappingURL=IERC165__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/introspection/IERC165__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-2.3/introspection/IERC165__factory.d.ts.map deleted file mode 100644 index 271ff716..00000000 --- a/dist/types/factories/@openzeppelin/contracts-2.3/introspection/IERC165__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC165__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/@openzeppelin/contracts-2.3/introspection/IERC165__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,OAAO,EACP,gBAAgB,EACjB,MAAM,+DAA+D,CAAC;AA0BvE,qBAAa,gBAAgB;IAC3B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,gBAAgB;IAG1C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,OAAO;CAGzE"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/introspection/IERC165__factory.js b/dist/types/factories/@openzeppelin/contracts-2.3/introspection/IERC165__factory.js deleted file mode 100644 index edac668d..00000000 --- a/dist/types/factories/@openzeppelin/contracts-2.3/introspection/IERC165__factory.js +++ /dev/null @@ -1,37 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IERC165__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - constant: true, - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, -]; -class IERC165__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IERC165__factory = IERC165__factory; -IERC165__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/introspection/index.d.ts b/dist/types/factories/@openzeppelin/contracts-2.3/introspection/index.d.ts deleted file mode 100644 index 085812d5..00000000 --- a/dist/types/factories/@openzeppelin/contracts-2.3/introspection/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export { ERC165__factory } from "./ERC165__factory"; -export { IERC165__factory } from "./IERC165__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/introspection/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts-2.3/introspection/index.d.ts.map deleted file mode 100644 index 64594101..00000000 --- a/dist/types/factories/@openzeppelin/contracts-2.3/introspection/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/@openzeppelin/contracts-2.3/introspection/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/introspection/index.js b/dist/types/factories/@openzeppelin/contracts-2.3/introspection/index.js deleted file mode 100644 index 0b84bab7..00000000 --- a/dist/types/factories/@openzeppelin/contracts-2.3/introspection/index.js +++ /dev/null @@ -1,7 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IERC165__factory = exports.ERC165__factory = void 0; -var ERC165__factory_1 = require("./ERC165__factory"); -Object.defineProperty(exports, "ERC165__factory", { enumerable: true, get: function () { return ERC165__factory_1.ERC165__factory; } }); -var IERC165__factory_1 = require("./IERC165__factory"); -Object.defineProperty(exports, "IERC165__factory", { enumerable: true, get: function () { return IERC165__factory_1.IERC165__factory; } }); diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable__factory.d.ts deleted file mode 100644 index be98b79d..00000000 --- a/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable__factory.d.ts +++ /dev/null @@ -1,275 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../../../common"; -import type { ERC721Burnable, ERC721BurnableInterface } from "../../../../../@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable"; -declare type ERC721BurnableConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class ERC721Burnable__factory extends ContractFactory { - constructor(...args: ERC721BurnableConstructorParams); - getDeployTransaction(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): ERC721Burnable__factory; - static readonly bytecode = "0x60806040526100367f01ffc9a7000000000000000000000000000000000000000000000000000000006001600160e01b0361006d16565b6100687f80ac58cd000000000000000000000000000000000000000000000000000000006001600160e01b0361006d16565b61013b565b7fffffffff0000000000000000000000000000000000000000000000000000000080821614156100fe57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f4552433136353a20696e76616c696420696e7465726661636520696400000000604482015290519081900360640190fd5b7fffffffff00000000000000000000000000000000000000000000000000000000166000908152602081905260409020805460ff19166001179055565b610ed88061014a6000396000f3fe608060405234801561001057600080fd5b50600436106100a95760003560e01c806342966c681161007157806342966c68146101bc5780636352211e146101d957806370a08231146101f6578063a22cb4651461022e578063b88d4fde1461025c578063e985e9c514610322576100a9565b806301ffc9a7146100ae578063081812fc146100e9578063095ea7b31461012257806323b872dd1461015057806342842e0e14610186575b600080fd5b6100d5600480360360208110156100c457600080fd5b50356001600160e01b031916610350565b604080519115158252519081900360200190f35b610106600480360360208110156100ff57600080fd5b503561036f565b604080516001600160a01b039092168252519081900360200190f35b61014e6004803603604081101561013857600080fd5b506001600160a01b0381351690602001356103d1565b005b61014e6004803603606081101561016657600080fd5b506001600160a01b038135811691602081013590911690604001356104e2565b61014e6004803603606081101561019c57600080fd5b506001600160a01b03813581169160208101359091169060400135610537565b61014e600480360360208110156101d257600080fd5b5035610552565b610106600480360360208110156101ef57600080fd5b50356105a3565b61021c6004803603602081101561020c57600080fd5b50356001600160a01b03166105fd565b60408051918252519081900360200190f35b61014e6004803603604081101561024457600080fd5b506001600160a01b0381351690602001351515610665565b61014e6004803603608081101561027257600080fd5b6001600160a01b038235811692602081013590911691604082013591908101906080810160608201356401000000008111156102ad57600080fd5b8201836020820111156102bf57600080fd5b803590602001918460018302840111640100000000831117156102e157600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610731945050505050565b6100d56004803603604081101561033857600080fd5b506001600160a01b0381358116916020013516610789565b6001600160e01b03191660009081526020819052604090205460ff1690565b600061037a826107b7565b6103b55760405162461bcd60e51b815260040180806020018281038252602c815260200180610da8602c913960400191505060405180910390fd5b506000908152600260205260409020546001600160a01b031690565b60006103dc826105a3565b9050806001600160a01b0316836001600160a01b0316141561042f5760405162461bcd60e51b8152600401808060200182810382526021815260200180610dfd6021913960400191505060405180910390fd5b336001600160a01b038216148061044b575061044b8133610789565b6104865760405162461bcd60e51b8152600401808060200182810382526038815260200180610d1d6038913960400191505060405180910390fd5b60008281526002602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b6104ec33826107d4565b6105275760405162461bcd60e51b8152600401808060200182810382526031815260200180610e1e6031913960400191505060405180910390fd5b610532838383610878565b505050565b61053283838360405180602001604052806000815250610731565b61055c33826107d4565b6105975760405162461bcd60e51b8152600401808060200182810382526030815260200180610e746030913960400191505060405180910390fd5b6105a0816109bc565b50565b6000818152600160205260408120546001600160a01b0316806105f75760405162461bcd60e51b8152600401808060200182810382526029815260200180610d7f6029913960400191505060405180910390fd5b92915050565b60006001600160a01b0382166106445760405162461bcd60e51b815260040180806020018281038252602a815260200180610d55602a913960400191505060405180910390fd5b6001600160a01b03821660009081526003602052604090206105f7906109ce565b6001600160a01b0382163314156106c3576040805162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604482015290519081900360640190fd5b3360008181526004602090815260408083206001600160a01b03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b61073c8484846104e2565b610748848484846109d2565b6107835760405162461bcd60e51b8152600401808060200182810382526032815260200180610c9b6032913960400191505060405180910390fd5b50505050565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205460ff1690565b6000908152600160205260409020546001600160a01b0316151590565b60006107df826107b7565b61081a5760405162461bcd60e51b815260040180806020018281038252602c815260200180610cf1602c913960400191505060405180910390fd5b6000610825836105a3565b9050806001600160a01b0316846001600160a01b031614806108605750836001600160a01b03166108558461036f565b6001600160a01b0316145b8061087057506108708185610789565b949350505050565b826001600160a01b031661088b826105a3565b6001600160a01b0316146108d05760405162461bcd60e51b8152600401808060200182810382526029815260200180610dd46029913960400191505060405180910390fd5b6001600160a01b0382166109155760405162461bcd60e51b8152600401808060200182810382526024815260200180610ccd6024913960400191505060405180910390fd5b61091e81610b05565b6001600160a01b038316600090815260036020526040902061093f90610b40565b6001600160a01b038216600090815260036020526040902061096090610b57565b60008181526001602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6105a06109c8826105a3565b82610b60565b5490565b60006109e6846001600160a01b0316610c37565b6109f257506001610870565b604051630a85bd0160e11b815233600482018181526001600160a01b03888116602485015260448401879052608060648501908152865160848601528651600095928a169463150b7a029490938c938b938b939260a4019060208501908083838e5b83811015610a6c578181015183820152602001610a54565b50505050905090810190601f168015610a995780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015610abb57600080fd5b505af1158015610acf573d6000803e3d6000fd5b505050506040513d6020811015610ae557600080fd5b50516001600160e01b031916630a85bd0160e11b14915050949350505050565b6000818152600260205260409020546001600160a01b0316156105a057600090815260026020526040902080546001600160a01b0319169055565b8054610b5390600163ffffffff610c3d16565b9055565b80546001019055565b816001600160a01b0316610b73826105a3565b6001600160a01b031614610bb85760405162461bcd60e51b8152600401808060200182810382526025815260200180610e4f6025913960400191505060405180910390fd5b610bc181610b05565b6001600160a01b0382166000908152600360205260409020610be290610b40565b60008181526001602052604080822080546001600160a01b0319169055518291906001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b3b151590565b600082821115610c94576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b5090039056fe4552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f7665644552433732313a206275726e206f6620746f6b656e2074686174206973206e6f74206f776e4552433732314275726e61626c653a2063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564a265627a7a723158200ba32e9c9462da34a9d3c6a111c2700852594b03759eff1f5a75e38e351e8adb64736f6c634300050c0032"; - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "approved"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Approval"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "ApprovalForAll"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Transfer"; - readonly type: "event"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "approve"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "balanceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "burn"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getApproved"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly name: "isApprovedForAll"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "ownerOf"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "_data"; - readonly type: "bytes"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "setApprovalForAll"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "transferFrom"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): ERC721BurnableInterface; - static connect(address: string, runner?: ContractRunner | null): ERC721Burnable; -} -export {}; -//# sourceMappingURL=ERC721Burnable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable__factory.d.ts.map deleted file mode 100644 index d01c1725..00000000 --- a/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ERC721Burnable__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,cAAc,EACd,uBAAuB,EACxB,MAAM,wEAAwE,CAAC;AAwUhF,aAAK,+BAA+B,GAChC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,uBAAwB,SAAQ,eAAe;gBAC9C,GAAG,IAAI,EAAE,+BAA+B;IAQ3C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,uBAAuB;IAIxE,MAAM,CAAC,QAAQ,CAAC,QAAQ,4kQAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,uBAAuB;IAGjD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,cAAc;CAGlB"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable__factory.js b/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable__factory.js deleted file mode 100644 index fa19a3b9..00000000 --- a/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable__factory.js +++ /dev/null @@ -1,356 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ERC721Burnable__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "approved", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Approval", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: false, - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "ApprovalForAll", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Transfer", - type: "event", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "approve", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "burn", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getApproved", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - name: "isApprovedForAll", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "ownerOf", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "safeTransferFrom", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "_data", - type: "bytes", - }, - ], - name: "safeTransferFrom", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "setApprovalForAll", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "transferFrom", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, -]; -const _bytecode = "0x60806040526100367f01ffc9a7000000000000000000000000000000000000000000000000000000006001600160e01b0361006d16565b6100687f80ac58cd000000000000000000000000000000000000000000000000000000006001600160e01b0361006d16565b61013b565b7fffffffff0000000000000000000000000000000000000000000000000000000080821614156100fe57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f4552433136353a20696e76616c696420696e7465726661636520696400000000604482015290519081900360640190fd5b7fffffffff00000000000000000000000000000000000000000000000000000000166000908152602081905260409020805460ff19166001179055565b610ed88061014a6000396000f3fe608060405234801561001057600080fd5b50600436106100a95760003560e01c806342966c681161007157806342966c68146101bc5780636352211e146101d957806370a08231146101f6578063a22cb4651461022e578063b88d4fde1461025c578063e985e9c514610322576100a9565b806301ffc9a7146100ae578063081812fc146100e9578063095ea7b31461012257806323b872dd1461015057806342842e0e14610186575b600080fd5b6100d5600480360360208110156100c457600080fd5b50356001600160e01b031916610350565b604080519115158252519081900360200190f35b610106600480360360208110156100ff57600080fd5b503561036f565b604080516001600160a01b039092168252519081900360200190f35b61014e6004803603604081101561013857600080fd5b506001600160a01b0381351690602001356103d1565b005b61014e6004803603606081101561016657600080fd5b506001600160a01b038135811691602081013590911690604001356104e2565b61014e6004803603606081101561019c57600080fd5b506001600160a01b03813581169160208101359091169060400135610537565b61014e600480360360208110156101d257600080fd5b5035610552565b610106600480360360208110156101ef57600080fd5b50356105a3565b61021c6004803603602081101561020c57600080fd5b50356001600160a01b03166105fd565b60408051918252519081900360200190f35b61014e6004803603604081101561024457600080fd5b506001600160a01b0381351690602001351515610665565b61014e6004803603608081101561027257600080fd5b6001600160a01b038235811692602081013590911691604082013591908101906080810160608201356401000000008111156102ad57600080fd5b8201836020820111156102bf57600080fd5b803590602001918460018302840111640100000000831117156102e157600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610731945050505050565b6100d56004803603604081101561033857600080fd5b506001600160a01b0381358116916020013516610789565b6001600160e01b03191660009081526020819052604090205460ff1690565b600061037a826107b7565b6103b55760405162461bcd60e51b815260040180806020018281038252602c815260200180610da8602c913960400191505060405180910390fd5b506000908152600260205260409020546001600160a01b031690565b60006103dc826105a3565b9050806001600160a01b0316836001600160a01b0316141561042f5760405162461bcd60e51b8152600401808060200182810382526021815260200180610dfd6021913960400191505060405180910390fd5b336001600160a01b038216148061044b575061044b8133610789565b6104865760405162461bcd60e51b8152600401808060200182810382526038815260200180610d1d6038913960400191505060405180910390fd5b60008281526002602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b6104ec33826107d4565b6105275760405162461bcd60e51b8152600401808060200182810382526031815260200180610e1e6031913960400191505060405180910390fd5b610532838383610878565b505050565b61053283838360405180602001604052806000815250610731565b61055c33826107d4565b6105975760405162461bcd60e51b8152600401808060200182810382526030815260200180610e746030913960400191505060405180910390fd5b6105a0816109bc565b50565b6000818152600160205260408120546001600160a01b0316806105f75760405162461bcd60e51b8152600401808060200182810382526029815260200180610d7f6029913960400191505060405180910390fd5b92915050565b60006001600160a01b0382166106445760405162461bcd60e51b815260040180806020018281038252602a815260200180610d55602a913960400191505060405180910390fd5b6001600160a01b03821660009081526003602052604090206105f7906109ce565b6001600160a01b0382163314156106c3576040805162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604482015290519081900360640190fd5b3360008181526004602090815260408083206001600160a01b03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b61073c8484846104e2565b610748848484846109d2565b6107835760405162461bcd60e51b8152600401808060200182810382526032815260200180610c9b6032913960400191505060405180910390fd5b50505050565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205460ff1690565b6000908152600160205260409020546001600160a01b0316151590565b60006107df826107b7565b61081a5760405162461bcd60e51b815260040180806020018281038252602c815260200180610cf1602c913960400191505060405180910390fd5b6000610825836105a3565b9050806001600160a01b0316846001600160a01b031614806108605750836001600160a01b03166108558461036f565b6001600160a01b0316145b8061087057506108708185610789565b949350505050565b826001600160a01b031661088b826105a3565b6001600160a01b0316146108d05760405162461bcd60e51b8152600401808060200182810382526029815260200180610dd46029913960400191505060405180910390fd5b6001600160a01b0382166109155760405162461bcd60e51b8152600401808060200182810382526024815260200180610ccd6024913960400191505060405180910390fd5b61091e81610b05565b6001600160a01b038316600090815260036020526040902061093f90610b40565b6001600160a01b038216600090815260036020526040902061096090610b57565b60008181526001602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6105a06109c8826105a3565b82610b60565b5490565b60006109e6846001600160a01b0316610c37565b6109f257506001610870565b604051630a85bd0160e11b815233600482018181526001600160a01b03888116602485015260448401879052608060648501908152865160848601528651600095928a169463150b7a029490938c938b938b939260a4019060208501908083838e5b83811015610a6c578181015183820152602001610a54565b50505050905090810190601f168015610a995780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015610abb57600080fd5b505af1158015610acf573d6000803e3d6000fd5b505050506040513d6020811015610ae557600080fd5b50516001600160e01b031916630a85bd0160e11b14915050949350505050565b6000818152600260205260409020546001600160a01b0316156105a057600090815260026020526040902080546001600160a01b0319169055565b8054610b5390600163ffffffff610c3d16565b9055565b80546001019055565b816001600160a01b0316610b73826105a3565b6001600160a01b031614610bb85760405162461bcd60e51b8152600401808060200182810382526025815260200180610e4f6025913960400191505060405180910390fd5b610bc181610b05565b6001600160a01b0382166000908152600360205260409020610be290610b40565b60008181526001602052604080822080546001600160a01b0319169055518291906001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b3b151590565b600082821115610c94576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b5090039056fe4552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f7665644552433732313a206275726e206f6620746f6b656e2074686174206973206e6f74206f776e4552433732314275726e61626c653a2063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564a265627a7a723158200ba32e9c9462da34a9d3c6a111c2700852594b03759eff1f5a75e38e351e8adb64736f6c634300050c0032"; -const isSuperArgs = (xs) => xs.length > 1; -class ERC721Burnable__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(overrides) { - return super.getDeployTransaction(overrides || {}); - } - deploy(overrides) { - return super.deploy(overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.ERC721Burnable__factory = ERC721Burnable__factory; -ERC721Burnable__factory.bytecode = _bytecode; -ERC721Burnable__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721__factory.d.ts deleted file mode 100644 index 64ba6c37..00000000 --- a/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721__factory.d.ts +++ /dev/null @@ -1,268 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../../../common"; -import type { ERC721, ERC721Interface } from "../../../../../@openzeppelin/contracts-2.3/token/ERC721/ERC721"; -declare type ERC721ConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class ERC721__factory extends ContractFactory { - constructor(...args: ERC721ConstructorParams); - getDeployTransaction(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): ERC721__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b506100437f01ffc9a7000000000000000000000000000000000000000000000000000000006001600160e01b0361007a16565b6100757f80ac58cd000000000000000000000000000000000000000000000000000000006001600160e01b0361007a16565b610148565b7fffffffff00000000000000000000000000000000000000000000000000000000808216141561010b57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f4552433136353a20696e76616c696420696e7465726661636520696400000000604482015290519081900360640190fd5b7fffffffff00000000000000000000000000000000000000000000000000000000166000908152602081905260409020805460ff19166001179055565b610d23806101576000396000f3fe608060405234801561001057600080fd5b506004361061009e5760003560e01c80636352211e116100665780636352211e146101b157806370a08231146101ce578063a22cb46514610206578063b88d4fde14610234578063e985e9c5146102fa5761009e565b806301ffc9a7146100a3578063081812fc146100de578063095ea7b31461011757806323b872dd1461014557806342842e0e1461017b575b600080fd5b6100ca600480360360208110156100b957600080fd5b50356001600160e01b031916610328565b604080519115158252519081900360200190f35b6100fb600480360360208110156100f457600080fd5b5035610347565b604080516001600160a01b039092168252519081900360200190f35b6101436004803603604081101561012d57600080fd5b506001600160a01b0381351690602001356103a9565b005b6101436004803603606081101561015b57600080fd5b506001600160a01b038135811691602081013590911690604001356104ba565b6101436004803603606081101561019157600080fd5b506001600160a01b0381358116916020810135909116906040013561050f565b6100fb600480360360208110156101c757600080fd5b503561052a565b6101f4600480360360208110156101e457600080fd5b50356001600160a01b0316610584565b60408051918252519081900360200190f35b6101436004803603604081101561021c57600080fd5b506001600160a01b03813516906020013515156105ec565b6101436004803603608081101561024a57600080fd5b6001600160a01b0382358116926020810135909116916040820135919081019060808101606082013564010000000081111561028557600080fd5b82018360208201111561029757600080fd5b803590602001918460018302840111640100000000831117156102b957600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506106b8945050505050565b6100ca6004803603604081101561031057600080fd5b506001600160a01b0381358116916020013516610710565b6001600160e01b03191660009081526020819052604090205460ff1690565b60006103528261073e565b61038d5760405162461bcd60e51b815260040180806020018281038252602c815260200180610c48602c913960400191505060405180910390fd5b506000908152600260205260409020546001600160a01b031690565b60006103b48261052a565b9050806001600160a01b0316836001600160a01b031614156104075760405162461bcd60e51b8152600401808060200182810382526021815260200180610c9d6021913960400191505060405180910390fd5b336001600160a01b038216148061042357506104238133610710565b61045e5760405162461bcd60e51b8152600401808060200182810382526038815260200180610bbd6038913960400191505060405180910390fd5b60008281526002602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b6104c4338261075b565b6104ff5760405162461bcd60e51b8152600401808060200182810382526031815260200180610cbe6031913960400191505060405180910390fd5b61050a8383836107ff565b505050565b61050a838383604051806020016040528060008152506106b8565b6000818152600160205260408120546001600160a01b03168061057e5760405162461bcd60e51b8152600401808060200182810382526029815260200180610c1f6029913960400191505060405180910390fd5b92915050565b60006001600160a01b0382166105cb5760405162461bcd60e51b815260040180806020018281038252602a815260200180610bf5602a913960400191505060405180910390fd5b6001600160a01b038216600090815260036020526040902061057e90610943565b6001600160a01b03821633141561064a576040805162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604482015290519081900360640190fd5b3360008181526004602090815260408083206001600160a01b03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b6106c38484846104ba565b6106cf84848484610947565b61070a5760405162461bcd60e51b8152600401808060200182810382526032815260200180610b3b6032913960400191505060405180910390fd5b50505050565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205460ff1690565b6000908152600160205260409020546001600160a01b0316151590565b60006107668261073e565b6107a15760405162461bcd60e51b815260040180806020018281038252602c815260200180610b91602c913960400191505060405180910390fd5b60006107ac8361052a565b9050806001600160a01b0316846001600160a01b031614806107e75750836001600160a01b03166107dc84610347565b6001600160a01b0316145b806107f757506107f78185610710565b949350505050565b826001600160a01b03166108128261052a565b6001600160a01b0316146108575760405162461bcd60e51b8152600401808060200182810382526029815260200180610c746029913960400191505060405180910390fd5b6001600160a01b03821661089c5760405162461bcd60e51b8152600401808060200182810382526024815260200180610b6d6024913960400191505060405180910390fd5b6108a581610a7a565b6001600160a01b03831660009081526003602052604090206108c690610ab7565b6001600160a01b03821660009081526003602052604090206108e790610ace565b60008181526001602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b5490565b600061095b846001600160a01b0316610ad7565b610967575060016107f7565b604051630a85bd0160e11b815233600482018181526001600160a01b03888116602485015260448401879052608060648501908152865160848601528651600095928a169463150b7a029490938c938b938b939260a4019060208501908083838e5b838110156109e15781810151838201526020016109c9565b50505050905090810190601f168015610a0e5780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015610a3057600080fd5b505af1158015610a44573d6000803e3d6000fd5b505050506040513d6020811015610a5a57600080fd5b50516001600160e01b031916630a85bd0160e11b14915050949350505050565b6000818152600260205260409020546001600160a01b031615610ab457600081815260026020526040902080546001600160a01b03191690555b50565b8054610aca90600163ffffffff610add16565b9055565b80546001019055565b3b151590565b600082821115610b34576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b5090039056fe4552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564a265627a7a7231582044c1e1e4a0b84a5153bc596f2634beb28c71b7b75516742a8c786594e561986b64736f6c634300050c0032"; - static readonly abi: readonly [{ - readonly inputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "constructor"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "approved"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Approval"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "ApprovalForAll"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Transfer"; - readonly type: "event"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "approve"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "balanceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getApproved"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly name: "isApprovedForAll"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "ownerOf"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "_data"; - readonly type: "bytes"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "setApprovalForAll"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "transferFrom"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): ERC721Interface; - static connect(address: string, runner?: ContractRunner | null): ERC721; -} -export {}; -//# sourceMappingURL=ERC721__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721__factory.d.ts.map deleted file mode 100644 index 5090c29a..00000000 --- a/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ERC721__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,MAAM,EACN,eAAe,EAChB,MAAM,gEAAgE,CAAC;AA+TxE,aAAK,uBAAuB,GACxB,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,eAAgB,SAAQ,eAAe;gBACtC,GAAG,IAAI,EAAE,uBAAuB;IAQnC,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,eAAe;IAIhE,MAAM,CAAC,QAAQ,CAAC,QAAQ,4vOAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,eAAe;IAGzC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,MAAM;CAGxE"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721__factory.js b/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721__factory.js deleted file mode 100644 index facbf1c9..00000000 --- a/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721__factory.js +++ /dev/null @@ -1,347 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ERC721__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [], - payable: false, - stateMutability: "nonpayable", - type: "constructor", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "approved", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Approval", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: false, - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "ApprovalForAll", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Transfer", - type: "event", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "approve", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getApproved", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - name: "isApprovedForAll", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "ownerOf", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "safeTransferFrom", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "_data", - type: "bytes", - }, - ], - name: "safeTransferFrom", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "setApprovalForAll", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "transferFrom", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, -]; -const _bytecode = "0x608060405234801561001057600080fd5b506100437f01ffc9a7000000000000000000000000000000000000000000000000000000006001600160e01b0361007a16565b6100757f80ac58cd000000000000000000000000000000000000000000000000000000006001600160e01b0361007a16565b610148565b7fffffffff00000000000000000000000000000000000000000000000000000000808216141561010b57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f4552433136353a20696e76616c696420696e7465726661636520696400000000604482015290519081900360640190fd5b7fffffffff00000000000000000000000000000000000000000000000000000000166000908152602081905260409020805460ff19166001179055565b610d23806101576000396000f3fe608060405234801561001057600080fd5b506004361061009e5760003560e01c80636352211e116100665780636352211e146101b157806370a08231146101ce578063a22cb46514610206578063b88d4fde14610234578063e985e9c5146102fa5761009e565b806301ffc9a7146100a3578063081812fc146100de578063095ea7b31461011757806323b872dd1461014557806342842e0e1461017b575b600080fd5b6100ca600480360360208110156100b957600080fd5b50356001600160e01b031916610328565b604080519115158252519081900360200190f35b6100fb600480360360208110156100f457600080fd5b5035610347565b604080516001600160a01b039092168252519081900360200190f35b6101436004803603604081101561012d57600080fd5b506001600160a01b0381351690602001356103a9565b005b6101436004803603606081101561015b57600080fd5b506001600160a01b038135811691602081013590911690604001356104ba565b6101436004803603606081101561019157600080fd5b506001600160a01b0381358116916020810135909116906040013561050f565b6100fb600480360360208110156101c757600080fd5b503561052a565b6101f4600480360360208110156101e457600080fd5b50356001600160a01b0316610584565b60408051918252519081900360200190f35b6101436004803603604081101561021c57600080fd5b506001600160a01b03813516906020013515156105ec565b6101436004803603608081101561024a57600080fd5b6001600160a01b0382358116926020810135909116916040820135919081019060808101606082013564010000000081111561028557600080fd5b82018360208201111561029757600080fd5b803590602001918460018302840111640100000000831117156102b957600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506106b8945050505050565b6100ca6004803603604081101561031057600080fd5b506001600160a01b0381358116916020013516610710565b6001600160e01b03191660009081526020819052604090205460ff1690565b60006103528261073e565b61038d5760405162461bcd60e51b815260040180806020018281038252602c815260200180610c48602c913960400191505060405180910390fd5b506000908152600260205260409020546001600160a01b031690565b60006103b48261052a565b9050806001600160a01b0316836001600160a01b031614156104075760405162461bcd60e51b8152600401808060200182810382526021815260200180610c9d6021913960400191505060405180910390fd5b336001600160a01b038216148061042357506104238133610710565b61045e5760405162461bcd60e51b8152600401808060200182810382526038815260200180610bbd6038913960400191505060405180910390fd5b60008281526002602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b6104c4338261075b565b6104ff5760405162461bcd60e51b8152600401808060200182810382526031815260200180610cbe6031913960400191505060405180910390fd5b61050a8383836107ff565b505050565b61050a838383604051806020016040528060008152506106b8565b6000818152600160205260408120546001600160a01b03168061057e5760405162461bcd60e51b8152600401808060200182810382526029815260200180610c1f6029913960400191505060405180910390fd5b92915050565b60006001600160a01b0382166105cb5760405162461bcd60e51b815260040180806020018281038252602a815260200180610bf5602a913960400191505060405180910390fd5b6001600160a01b038216600090815260036020526040902061057e90610943565b6001600160a01b03821633141561064a576040805162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604482015290519081900360640190fd5b3360008181526004602090815260408083206001600160a01b03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b6106c38484846104ba565b6106cf84848484610947565b61070a5760405162461bcd60e51b8152600401808060200182810382526032815260200180610b3b6032913960400191505060405180910390fd5b50505050565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205460ff1690565b6000908152600160205260409020546001600160a01b0316151590565b60006107668261073e565b6107a15760405162461bcd60e51b815260040180806020018281038252602c815260200180610b91602c913960400191505060405180910390fd5b60006107ac8361052a565b9050806001600160a01b0316846001600160a01b031614806107e75750836001600160a01b03166107dc84610347565b6001600160a01b0316145b806107f757506107f78185610710565b949350505050565b826001600160a01b03166108128261052a565b6001600160a01b0316146108575760405162461bcd60e51b8152600401808060200182810382526029815260200180610c746029913960400191505060405180910390fd5b6001600160a01b03821661089c5760405162461bcd60e51b8152600401808060200182810382526024815260200180610b6d6024913960400191505060405180910390fd5b6108a581610a7a565b6001600160a01b03831660009081526003602052604090206108c690610ab7565b6001600160a01b03821660009081526003602052604090206108e790610ace565b60008181526001602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b5490565b600061095b846001600160a01b0316610ad7565b610967575060016107f7565b604051630a85bd0160e11b815233600482018181526001600160a01b03888116602485015260448401879052608060648501908152865160848601528651600095928a169463150b7a029490938c938b938b939260a4019060208501908083838e5b838110156109e15781810151838201526020016109c9565b50505050905090810190601f168015610a0e5780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015610a3057600080fd5b505af1158015610a44573d6000803e3d6000fd5b505050506040513d6020811015610a5a57600080fd5b50516001600160e01b031916630a85bd0160e11b14915050949350505050565b6000818152600260205260409020546001600160a01b031615610ab457600081815260026020526040902080546001600160a01b03191690555b50565b8054610aca90600163ffffffff610add16565b9055565b80546001019055565b3b151590565b600082821115610b34576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b5090039056fe4552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564a265627a7a7231582044c1e1e4a0b84a5153bc596f2634beb28c71b7b75516742a8c786594e561986b64736f6c634300050c0032"; -const isSuperArgs = (xs) => xs.length > 1; -class ERC721__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(overrides) { - return super.getDeployTransaction(overrides || {}); - } - deploy(overrides) { - return super.deploy(overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.ERC721__factory = ERC721__factory; -ERC721__factory.bytecode = _bytecode; -ERC721__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata__factory.d.ts deleted file mode 100644 index dcbcd80e..00000000 --- a/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata__factory.d.ts +++ /dev/null @@ -1,288 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IERC721Metadata, IERC721MetadataInterface } from "../../../../../@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata"; -export declare class IERC721Metadata__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "approved"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Approval"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "ApprovalForAll"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Transfer"; - readonly type: "event"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "approve"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "balanceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "balance"; - readonly type: "uint256"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getApproved"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly name: "isApprovedForAll"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly []; - readonly name: "name"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "ownerOf"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly internalType: "bool"; - readonly name: "_approved"; - readonly type: "bool"; - }]; - readonly name: "setApprovalForAll"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly []; - readonly name: "symbol"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "tokenURI"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "transferFrom"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): IERC721MetadataInterface; - static connect(address: string, runner?: ContractRunner | null): IERC721Metadata; -} -//# sourceMappingURL=IERC721Metadata__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata__factory.d.ts.map deleted file mode 100644 index bb524706..00000000 --- a/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC721Metadata__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,eAAe,EACf,wBAAwB,EACzB,MAAM,yEAAyE,CAAC;AAyWjF,qBAAa,wBAAwB;IACnC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,wBAAwB;IAGlD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,eAAe;CAGnB"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata__factory.js b/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata__factory.js deleted file mode 100644 index 2d7ff981..00000000 --- a/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata__factory.js +++ /dev/null @@ -1,372 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IERC721Metadata__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "approved", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Approval", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: false, - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "ApprovalForAll", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Transfer", - type: "event", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "approve", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "balance", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getApproved", - outputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - name: "isApprovedForAll", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "name", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "ownerOf", - outputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "safeTransferFrom", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "safeTransferFrom", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "bool", - name: "_approved", - type: "bool", - }, - ], - name: "setApprovalForAll", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "symbol", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "tokenURI", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "transferFrom", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, -]; -class IERC721Metadata__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IERC721Metadata__factory = IERC721Metadata__factory; -IERC721Metadata__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver__factory.d.ts deleted file mode 100644 index 983cd4d0..00000000 --- a/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver__factory.d.ts +++ /dev/null @@ -1,36 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IERC721Receiver, IERC721ReceiverInterface } from "../../../../../@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver"; -export declare class IERC721Receiver__factory { - static readonly abi: readonly [{ - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "onERC721Received"; - readonly outputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: ""; - readonly type: "bytes4"; - }]; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): IERC721ReceiverInterface; - static connect(address: string, runner?: ContractRunner | null): IERC721Receiver; -} -//# sourceMappingURL=IERC721Receiver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver__factory.d.ts.map deleted file mode 100644 index f5dd3d49..00000000 --- a/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC721Receiver__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,eAAe,EACf,wBAAwB,EACzB,MAAM,yEAAyE,CAAC;AAyCjF,qBAAa,wBAAwB;IACnC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,wBAAwB;IAGlD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,eAAe;CAGnB"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver__factory.js b/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver__factory.js deleted file mode 100644 index 632607c3..00000000 --- a/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver__factory.js +++ /dev/null @@ -1,52 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IERC721Receiver__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - constant: false, - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "onERC721Received", - outputs: [ - { - internalType: "bytes4", - name: "", - type: "bytes4", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, -]; -class IERC721Receiver__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IERC721Receiver__factory = IERC721Receiver__factory; -IERC721Receiver__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721__factory.d.ts deleted file mode 100644 index 053c3357..00000000 --- a/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721__factory.d.ts +++ /dev/null @@ -1,248 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IERC721, IERC721Interface } from "../../../../../@openzeppelin/contracts-2.3/token/ERC721/IERC721"; -export declare class IERC721__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "approved"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Approval"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "ApprovalForAll"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Transfer"; - readonly type: "event"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "approve"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "balanceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "balance"; - readonly type: "uint256"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getApproved"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly name: "isApprovedForAll"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "ownerOf"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly internalType: "bool"; - readonly name: "_approved"; - readonly type: "bool"; - }]; - readonly name: "setApprovalForAll"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "transferFrom"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): IERC721Interface; - static connect(address: string, runner?: ContractRunner | null): IERC721; -} -//# sourceMappingURL=IERC721__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721__factory.d.ts.map deleted file mode 100644 index 3f195b23..00000000 --- a/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC721__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,OAAO,EACP,gBAAgB,EACjB,MAAM,iEAAiE,CAAC;AAsTzE,qBAAa,gBAAgB;IAC3B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,gBAAgB;IAG1C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,OAAO;CAGzE"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721__factory.js b/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721__factory.js deleted file mode 100644 index 7a0e87d9..00000000 --- a/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721__factory.js +++ /dev/null @@ -1,321 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IERC721__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "approved", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Approval", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: false, - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "ApprovalForAll", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Transfer", - type: "event", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "approve", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "balance", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getApproved", - outputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - name: "isApprovedForAll", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "ownerOf", - outputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "safeTransferFrom", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "safeTransferFrom", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "bool", - name: "_approved", - type: "bool", - }, - ], - name: "setApprovalForAll", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "transferFrom", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, -]; -class IERC721__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IERC721__factory = IERC721__factory; -IERC721__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/index.d.ts b/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/index.d.ts deleted file mode 100644 index d5453ba4..00000000 --- a/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/index.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -export { ERC721__factory } from "./ERC721__factory"; -export { ERC721Burnable__factory } from "./ERC721Burnable__factory"; -export { IERC721__factory } from "./IERC721__factory"; -export { IERC721Metadata__factory } from "./IERC721Metadata__factory"; -export { IERC721Receiver__factory } from "./IERC721Receiver__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/index.d.ts.map deleted file mode 100644 index e7046d5d..00000000 --- a/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts-2.3/token/ERC721/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/index.js b/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/index.js deleted file mode 100644 index bcc2fcbf..00000000 --- a/dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/index.js +++ /dev/null @@ -1,13 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IERC721Receiver__factory = exports.IERC721Metadata__factory = exports.IERC721__factory = exports.ERC721Burnable__factory = exports.ERC721__factory = void 0; -var ERC721__factory_1 = require("./ERC721__factory"); -Object.defineProperty(exports, "ERC721__factory", { enumerable: true, get: function () { return ERC721__factory_1.ERC721__factory; } }); -var ERC721Burnable__factory_1 = require("./ERC721Burnable__factory"); -Object.defineProperty(exports, "ERC721Burnable__factory", { enumerable: true, get: function () { return ERC721Burnable__factory_1.ERC721Burnable__factory; } }); -var IERC721__factory_1 = require("./IERC721__factory"); -Object.defineProperty(exports, "IERC721__factory", { enumerable: true, get: function () { return IERC721__factory_1.IERC721__factory; } }); -var IERC721Metadata__factory_1 = require("./IERC721Metadata__factory"); -Object.defineProperty(exports, "IERC721Metadata__factory", { enumerable: true, get: function () { return IERC721Metadata__factory_1.IERC721Metadata__factory; } }); -var IERC721Receiver__factory_1 = require("./IERC721Receiver__factory"); -Object.defineProperty(exports, "IERC721Receiver__factory", { enumerable: true, get: function () { return IERC721Receiver__factory_1.IERC721Receiver__factory; } }); diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/token/index.d.ts b/dist/types/factories/@openzeppelin/contracts-2.3/token/index.d.ts deleted file mode 100644 index ef29783a..00000000 --- a/dist/types/factories/@openzeppelin/contracts-2.3/token/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export * as erc721 from "./ERC721"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/token/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts-2.3/token/index.d.ts.map deleted file mode 100644 index 9aa5df19..00000000 --- a/dist/types/factories/@openzeppelin/contracts-2.3/token/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/@openzeppelin/contracts-2.3/token/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-2.3/token/index.js b/dist/types/factories/@openzeppelin/contracts-2.3/token/index.js deleted file mode 100644 index 0fbd83cd..00000000 --- a/dist/types/factories/@openzeppelin/contracts-2.3/token/index.js +++ /dev/null @@ -1,27 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.erc721 = void 0; -exports.erc721 = __importStar(require("./ERC721")); diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable__factory.d.ts deleted file mode 100644 index 478ee190..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable__factory.d.ts +++ /dev/null @@ -1,208 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { AccessControlEnumerableUpgradeable, AccessControlEnumerableUpgradeableInterface } from "../../../../@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable"; -export declare class AccessControlEnumerableUpgradeable__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "uint8"; - readonly name: "version"; - readonly type: "uint8"; - }]; - readonly name: "Initialized"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "previousAdminRole"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "newAdminRole"; - readonly type: "bytes32"; - }]; - readonly name: "RoleAdminChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "sender"; - readonly type: "address"; - }]; - readonly name: "RoleGranted"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "sender"; - readonly type: "address"; - }]; - readonly name: "RoleRevoked"; - readonly type: "event"; - }, { - readonly inputs: readonly []; - readonly name: "DEFAULT_ADMIN_ROLE"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }]; - readonly name: "getRoleAdmin"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "index"; - readonly type: "uint256"; - }]; - readonly name: "getRoleMember"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }]; - readonly name: "getRoleMemberCount"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "grantRole"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "hasRole"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "renounceRole"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "revokeRole"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): AccessControlEnumerableUpgradeableInterface; - static connect(address: string, runner?: ContractRunner | null): AccessControlEnumerableUpgradeable; -} -//# sourceMappingURL=AccessControlEnumerableUpgradeable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable__factory.d.ts.map deleted file mode 100644 index 288f4d4a..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"AccessControlEnumerableUpgradeable__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,kCAAkC,EAClC,2CAA2C,EAC5C,MAAM,2FAA2F,CAAC;AAyQnG,qBAAa,2CAA2C;IACtD,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,2CAA2C;IAGrE,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,kCAAkC;CAOtC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable__factory.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable__factory.js deleted file mode 100644 index 11f1aae5..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable__factory.js +++ /dev/null @@ -1,276 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.AccessControlEnumerableUpgradeable__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint8", - name: "version", - type: "uint8", - }, - ], - name: "Initialized", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - indexed: true, - internalType: "bytes32", - name: "previousAdminRole", - type: "bytes32", - }, - { - indexed: true, - internalType: "bytes32", - name: "newAdminRole", - type: "bytes32", - }, - ], - name: "RoleAdminChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "sender", - type: "address", - }, - ], - name: "RoleGranted", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "sender", - type: "address", - }, - ], - name: "RoleRevoked", - type: "event", - }, - { - inputs: [], - name: "DEFAULT_ADMIN_ROLE", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - ], - name: "getRoleAdmin", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - 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: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "grantRole", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "hasRole", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "renounceRole", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "revokeRole", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class AccessControlEnumerableUpgradeable__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.AccessControlEnumerableUpgradeable__factory = AccessControlEnumerableUpgradeable__factory; -AccessControlEnumerableUpgradeable__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable__factory.d.ts deleted file mode 100644 index 592f560b..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable__factory.d.ts +++ /dev/null @@ -1,176 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { AccessControlUpgradeable, AccessControlUpgradeableInterface } from "../../../../@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable"; -export declare class AccessControlUpgradeable__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "uint8"; - readonly name: "version"; - readonly type: "uint8"; - }]; - readonly name: "Initialized"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "previousAdminRole"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "newAdminRole"; - readonly type: "bytes32"; - }]; - readonly name: "RoleAdminChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "sender"; - readonly type: "address"; - }]; - readonly name: "RoleGranted"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "sender"; - readonly type: "address"; - }]; - readonly name: "RoleRevoked"; - readonly type: "event"; - }, { - readonly inputs: readonly []; - readonly name: "DEFAULT_ADMIN_ROLE"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }]; - readonly name: "getRoleAdmin"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "grantRole"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "hasRole"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "renounceRole"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "revokeRole"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): AccessControlUpgradeableInterface; - static connect(address: string, runner?: ContractRunner | null): AccessControlUpgradeable; -} -//# sourceMappingURL=AccessControlUpgradeable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable__factory.d.ts.map deleted file mode 100644 index 825e7e0a..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"AccessControlUpgradeable__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,wBAAwB,EACxB,iCAAiC,EAClC,MAAM,iFAAiF,CAAC;AA8NzF,qBAAa,iCAAiC;IAC5C,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,iCAAiC;IAG3D,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,wBAAwB;CAO5B"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable__factory.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable__factory.js deleted file mode 100644 index 7eabeec8..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable__factory.js +++ /dev/null @@ -1,233 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.AccessControlUpgradeable__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint8", - name: "version", - type: "uint8", - }, - ], - name: "Initialized", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - indexed: true, - internalType: "bytes32", - name: "previousAdminRole", - type: "bytes32", - }, - { - indexed: true, - internalType: "bytes32", - name: "newAdminRole", - type: "bytes32", - }, - ], - name: "RoleAdminChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "sender", - type: "address", - }, - ], - name: "RoleGranted", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "sender", - type: "address", - }, - ], - name: "RoleRevoked", - type: "event", - }, - { - inputs: [], - name: "DEFAULT_ADMIN_ROLE", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - ], - name: "getRoleAdmin", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "grantRole", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "hasRole", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "renounceRole", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "revokeRole", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class AccessControlUpgradeable__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.AccessControlUpgradeable__factory = AccessControlUpgradeable__factory; -AccessControlUpgradeable__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable__factory.d.ts deleted file mode 100644 index 3b36f2f6..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable__factory.d.ts +++ /dev/null @@ -1,174 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IAccessControlEnumerableUpgradeable, IAccessControlEnumerableUpgradeableInterface } from "../../../../@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable"; -export declare class IAccessControlEnumerableUpgradeable__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "previousAdminRole"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "newAdminRole"; - readonly type: "bytes32"; - }]; - readonly name: "RoleAdminChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "sender"; - readonly type: "address"; - }]; - readonly name: "RoleGranted"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "sender"; - readonly type: "address"; - }]; - readonly name: "RoleRevoked"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }]; - readonly name: "getRoleAdmin"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "index"; - readonly type: "uint256"; - }]; - readonly name: "getRoleMember"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }]; - readonly name: "getRoleMemberCount"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "grantRole"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "hasRole"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "renounceRole"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "revokeRole"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): IAccessControlEnumerableUpgradeableInterface; - static connect(address: string, runner?: ContractRunner | null): IAccessControlEnumerableUpgradeable; -} -//# sourceMappingURL=IAccessControlEnumerableUpgradeable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable__factory.d.ts.map deleted file mode 100644 index 6d2688cf..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IAccessControlEnumerableUpgradeable__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,mCAAmC,EACnC,4CAA4C,EAC7C,MAAM,4FAA4F,CAAC;AA4NpG,qBAAa,4CAA4C;IACvD,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,4CAA4C;IAGtE,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,mCAAmC;CAOvC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable__factory.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable__factory.js deleted file mode 100644 index d1d576d6..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable__factory.js +++ /dev/null @@ -1,231 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IAccessControlEnumerableUpgradeable__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - indexed: true, - internalType: "bytes32", - name: "previousAdminRole", - type: "bytes32", - }, - { - indexed: true, - internalType: "bytes32", - name: "newAdminRole", - type: "bytes32", - }, - ], - name: "RoleAdminChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "sender", - type: "address", - }, - ], - name: "RoleGranted", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "sender", - type: "address", - }, - ], - name: "RoleRevoked", - type: "event", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - ], - name: "getRoleAdmin", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - 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: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "grantRole", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "hasRole", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "renounceRole", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "revokeRole", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -class IAccessControlEnumerableUpgradeable__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IAccessControlEnumerableUpgradeable__factory = IAccessControlEnumerableUpgradeable__factory; -IAccessControlEnumerableUpgradeable__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable__factory.d.ts deleted file mode 100644 index 89128667..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable__factory.d.ts +++ /dev/null @@ -1,142 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IAccessControlUpgradeable, IAccessControlUpgradeableInterface } from "../../../../@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable"; -export declare class IAccessControlUpgradeable__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "previousAdminRole"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "newAdminRole"; - readonly type: "bytes32"; - }]; - readonly name: "RoleAdminChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "sender"; - readonly type: "address"; - }]; - readonly name: "RoleGranted"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "sender"; - readonly type: "address"; - }]; - readonly name: "RoleRevoked"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }]; - readonly name: "getRoleAdmin"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "grantRole"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "hasRole"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "renounceRole"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "revokeRole"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): IAccessControlUpgradeableInterface; - static connect(address: string, runner?: ContractRunner | null): IAccessControlUpgradeable; -} -//# sourceMappingURL=IAccessControlUpgradeable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable__factory.d.ts.map deleted file mode 100644 index 3dd3a1a8..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IAccessControlUpgradeable__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,yBAAyB,EACzB,kCAAkC,EACnC,MAAM,kFAAkF,CAAC;AAiL1F,qBAAa,kCAAkC;IAC7C,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,kCAAkC;IAG5D,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,yBAAyB;CAO7B"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable__factory.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable__factory.js deleted file mode 100644 index cd0ad7be..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable__factory.js +++ /dev/null @@ -1,188 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IAccessControlUpgradeable__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - indexed: true, - internalType: "bytes32", - name: "previousAdminRole", - type: "bytes32", - }, - { - indexed: true, - internalType: "bytes32", - name: "newAdminRole", - type: "bytes32", - }, - ], - name: "RoleAdminChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "sender", - type: "address", - }, - ], - name: "RoleGranted", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "sender", - type: "address", - }, - ], - name: "RoleRevoked", - type: "event", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - ], - name: "getRoleAdmin", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "grantRole", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "hasRole", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "renounceRole", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "revokeRole", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -class IAccessControlUpgradeable__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IAccessControlUpgradeable__factory = IAccessControlUpgradeable__factory; -IAccessControlUpgradeable__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable__factory.d.ts deleted file mode 100644 index 11bf519a..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable__factory.d.ts +++ /dev/null @@ -1,59 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { OwnableUpgradeable, OwnableUpgradeableInterface } from "../../../../@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable"; -export declare class OwnableUpgradeable__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "uint8"; - readonly name: "version"; - readonly type: "uint8"; - }]; - readonly name: "Initialized"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "previousOwner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "newOwner"; - readonly type: "address"; - }]; - readonly name: "OwnershipTransferred"; - readonly type: "event"; - }, { - readonly inputs: readonly []; - readonly name: "owner"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "renounceOwnership"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "newOwner"; - readonly type: "address"; - }]; - readonly name: "transferOwnership"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): OwnableUpgradeableInterface; - static connect(address: string, runner?: ContractRunner | null): OwnableUpgradeable; -} -//# sourceMappingURL=OwnableUpgradeable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable__factory.d.ts.map deleted file mode 100644 index 46c49d61..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"OwnableUpgradeable__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,kBAAkB,EAClB,2BAA2B,EAC5B,MAAM,2EAA2E,CAAC;AAsEnF,qBAAa,2BAA2B;IACtC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,2BAA2B;IAGrD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,kBAAkB;CAGtB"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable__factory.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable__factory.js deleted file mode 100644 index 3ffad78a..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable__factory.js +++ /dev/null @@ -1,81 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.OwnableUpgradeable__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint8", - name: "version", - type: "uint8", - }, - ], - name: "Initialized", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "previousOwner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnershipTransferred", - type: "event", - }, - { - inputs: [], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "renounceOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "transferOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -class OwnableUpgradeable__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.OwnableUpgradeable__factory = OwnableUpgradeable__factory; -OwnableUpgradeable__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/access/index.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/access/index.d.ts deleted file mode 100644 index c2503057..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/access/index.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -export { AccessControlEnumerableUpgradeable__factory } from "./AccessControlEnumerableUpgradeable__factory"; -export { AccessControlUpgradeable__factory } from "./AccessControlUpgradeable__factory"; -export { IAccessControlEnumerableUpgradeable__factory } from "./IAccessControlEnumerableUpgradeable__factory"; -export { IAccessControlUpgradeable__factory } from "./IAccessControlUpgradeable__factory"; -export { OwnableUpgradeable__factory } from "./OwnableUpgradeable__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/access/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/access/index.d.ts.map deleted file mode 100644 index 154f1b58..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/access/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/@openzeppelin/contracts-upgradeable/access/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,2CAA2C,EAAE,MAAM,+CAA+C,CAAC;AAC5G,OAAO,EAAE,iCAAiC,EAAE,MAAM,qCAAqC,CAAC;AACxF,OAAO,EAAE,4CAA4C,EAAE,MAAM,gDAAgD,CAAC;AAC9G,OAAO,EAAE,kCAAkC,EAAE,MAAM,sCAAsC,CAAC;AAC1F,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/access/index.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/access/index.js deleted file mode 100644 index a680b980..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/access/index.js +++ /dev/null @@ -1,13 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.OwnableUpgradeable__factory = exports.IAccessControlUpgradeable__factory = exports.IAccessControlEnumerableUpgradeable__factory = exports.AccessControlUpgradeable__factory = exports.AccessControlEnumerableUpgradeable__factory = void 0; -var AccessControlEnumerableUpgradeable__factory_1 = require("./AccessControlEnumerableUpgradeable__factory"); -Object.defineProperty(exports, "AccessControlEnumerableUpgradeable__factory", { enumerable: true, get: function () { return AccessControlEnumerableUpgradeable__factory_1.AccessControlEnumerableUpgradeable__factory; } }); -var AccessControlUpgradeable__factory_1 = require("./AccessControlUpgradeable__factory"); -Object.defineProperty(exports, "AccessControlUpgradeable__factory", { enumerable: true, get: function () { return AccessControlUpgradeable__factory_1.AccessControlUpgradeable__factory; } }); -var IAccessControlEnumerableUpgradeable__factory_1 = require("./IAccessControlEnumerableUpgradeable__factory"); -Object.defineProperty(exports, "IAccessControlEnumerableUpgradeable__factory", { enumerable: true, get: function () { return IAccessControlEnumerableUpgradeable__factory_1.IAccessControlEnumerableUpgradeable__factory; } }); -var IAccessControlUpgradeable__factory_1 = require("./IAccessControlUpgradeable__factory"); -Object.defineProperty(exports, "IAccessControlUpgradeable__factory", { enumerable: true, get: function () { return IAccessControlUpgradeable__factory_1.IAccessControlUpgradeable__factory; } }); -var OwnableUpgradeable__factory_1 = require("./OwnableUpgradeable__factory"); -Object.defineProperty(exports, "OwnableUpgradeable__factory", { enumerable: true, get: function () { return OwnableUpgradeable__factory_1.OwnableUpgradeable__factory; } }); diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/index.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/index.d.ts deleted file mode 100644 index 9b0f1982..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/index.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -export * as access from "./access"; -export * as interfaces from "./interfaces"; -export * as proxy from "./proxy"; -export * as security from "./security"; -export * as token from "./token"; -export * as utils from "./utils"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/index.d.ts.map deleted file mode 100644 index 1247fdaf..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/factories/@openzeppelin/contracts-upgradeable/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC;AACvC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/index.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/index.js deleted file mode 100644 index 6ab308d6..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/index.js +++ /dev/null @@ -1,32 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.utils = exports.token = exports.security = exports.proxy = exports.interfaces = exports.access = void 0; -exports.access = __importStar(require("./access")); -exports.interfaces = __importStar(require("./interfaces")); -exports.proxy = __importStar(require("./proxy")); -exports.security = __importStar(require("./security")); -exports.token = __importStar(require("./token")); -exports.utils = __importStar(require("./utils")); diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable__factory.d.ts deleted file mode 100644 index 40a25197..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable__factory.d.ts +++ /dev/null @@ -1,26 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IERC1271Upgradeable, IERC1271UpgradeableInterface } from "../../../../@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable"; -export declare class IERC1271Upgradeable__factory { - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "hash"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "isValidSignature"; - readonly outputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "magicValue"; - readonly type: "bytes4"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): IERC1271UpgradeableInterface; - static connect(address: string, runner?: ContractRunner | null): IERC1271Upgradeable; -} -//# sourceMappingURL=IERC1271Upgradeable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable__factory.d.ts.map deleted file mode 100644 index 70ac6253..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC1271Upgradeable__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,mBAAmB,EACnB,4BAA4B,EAC7B,MAAM,gFAAgF,CAAC;AA6BxF,qBAAa,4BAA4B;IACvC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,4BAA4B;IAGtD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,mBAAmB;CAOvB"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable__factory.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable__factory.js deleted file mode 100644 index 485dfd9f..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable__factory.js +++ /dev/null @@ -1,40 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IERC1271Upgradeable__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "bytes32", - name: "hash", - type: "bytes32", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "isValidSignature", - outputs: [ - { - internalType: "bytes4", - name: "magicValue", - type: "bytes4", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class IERC1271Upgradeable__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IERC1271Upgradeable__factory = IERC1271Upgradeable__factory; -IERC1271Upgradeable__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/interfaces/index.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/interfaces/index.d.ts deleted file mode 100644 index 7d8fa4e5..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/interfaces/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export { IERC1271Upgradeable__factory } from "./IERC1271Upgradeable__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/interfaces/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/interfaces/index.d.ts.map deleted file mode 100644 index 172fa838..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/interfaces/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/@openzeppelin/contracts-upgradeable/interfaces/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/interfaces/index.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/interfaces/index.js deleted file mode 100644 index 7b790792..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/interfaces/index.js +++ /dev/null @@ -1,5 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IERC1271Upgradeable__factory = void 0; -var IERC1271Upgradeable__factory_1 = require("./IERC1271Upgradeable__factory"); -Object.defineProperty(exports, "IERC1271Upgradeable__factory", { enumerable: true, get: function () { return IERC1271Upgradeable__factory_1.IERC1271Upgradeable__factory; } }); diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/index.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/index.d.ts deleted file mode 100644 index 5e733766..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export * as utils from "./utils"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/index.d.ts.map deleted file mode 100644 index df959a91..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/@openzeppelin/contracts-upgradeable/proxy/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/index.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/index.js deleted file mode 100644 index 0d8d8225..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/index.js +++ /dev/null @@ -1,27 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.utils = void 0; -exports.utils = __importStar(require("./utils")); diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable__factory.d.ts deleted file mode 100644 index 47be7f5d..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable__factory.d.ts +++ /dev/null @@ -1,18 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { Initializable, InitializableInterface } from "../../../../../@openzeppelin/contracts-upgradeable/proxy/utils/Initializable"; -export declare class Initializable__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "uint8"; - readonly name: "version"; - readonly type: "uint8"; - }]; - readonly name: "Initialized"; - readonly type: "event"; - }]; - static createInterface(): InitializableInterface; - static connect(address: string, runner?: ContractRunner | null): Initializable; -} -//# sourceMappingURL=Initializable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable__factory.d.ts.map deleted file mode 100644 index b888d15f..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Initializable__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,aAAa,EACb,sBAAsB,EACvB,MAAM,8EAA8E,CAAC;AAkBtF,qBAAa,sBAAsB;IACjC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,sBAAsB;IAGhD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,aAAa;CAGjB"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable__factory.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable__factory.js deleted file mode 100644 index caaeed9b..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable__factory.js +++ /dev/null @@ -1,29 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.Initializable__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint8", - name: "version", - type: "uint8", - }, - ], - name: "Initialized", - type: "event", - }, -]; -class Initializable__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.Initializable__factory = Initializable__factory; -Initializable__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/index.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/index.d.ts deleted file mode 100644 index e654b2cb..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export { Initializable__factory } from "./Initializable__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/index.d.ts.map deleted file mode 100644 index 6976cdb0..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/index.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/index.js deleted file mode 100644 index 8dd6c838..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/index.js +++ /dev/null @@ -1,5 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.Initializable__factory = void 0; -var Initializable__factory_1 = require("./Initializable__factory"); -Object.defineProperty(exports, "Initializable__factory", { enumerable: true, get: function () { return Initializable__factory_1.Initializable__factory; } }); diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable__factory.d.ts deleted file mode 100644 index 84e28c99..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable__factory.d.ts +++ /dev/null @@ -1,48 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { PausableUpgradeable, PausableUpgradeableInterface } from "../../../../@openzeppelin/contracts-upgradeable/security/PausableUpgradeable"; -export declare class PausableUpgradeable__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "uint8"; - readonly name: "version"; - readonly type: "uint8"; - }]; - readonly name: "Initialized"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "Paused"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "Unpaused"; - readonly type: "event"; - }, { - readonly inputs: readonly []; - readonly name: "paused"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): PausableUpgradeableInterface; - static connect(address: string, runner?: ContractRunner | null): PausableUpgradeable; -} -//# sourceMappingURL=PausableUpgradeable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable__factory.d.ts.map deleted file mode 100644 index 486dbe99..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"PausableUpgradeable__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,mBAAmB,EACnB,4BAA4B,EAC7B,MAAM,8EAA8E,CAAC;AAyDtF,qBAAa,4BAA4B;IACvC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,4BAA4B;IAGtD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,mBAAmB;CAOvB"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable__factory.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable__factory.js deleted file mode 100644 index ec162e3f..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable__factory.js +++ /dev/null @@ -1,68 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.PausableUpgradeable__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint8", - name: "version", - type: "uint8", - }, - ], - name: "Initialized", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "Paused", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "Unpaused", - type: "event", - }, - { - inputs: [], - name: "paused", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class PausableUpgradeable__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.PausableUpgradeable__factory = PausableUpgradeable__factory; -PausableUpgradeable__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable__factory.d.ts deleted file mode 100644 index d7af9465..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable__factory.d.ts +++ /dev/null @@ -1,18 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { ReentrancyGuardUpgradeable, ReentrancyGuardUpgradeableInterface } from "../../../../@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable"; -export declare class ReentrancyGuardUpgradeable__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "uint8"; - readonly name: "version"; - readonly type: "uint8"; - }]; - readonly name: "Initialized"; - readonly type: "event"; - }]; - static createInterface(): ReentrancyGuardUpgradeableInterface; - static connect(address: string, runner?: ContractRunner | null): ReentrancyGuardUpgradeable; -} -//# sourceMappingURL=ReentrancyGuardUpgradeable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable__factory.d.ts.map deleted file mode 100644 index 9d3c2007..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ReentrancyGuardUpgradeable__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,0BAA0B,EAC1B,mCAAmC,EACpC,MAAM,qFAAqF,CAAC;AAkB7F,qBAAa,mCAAmC;IAC9C,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,mCAAmC;IAG7D,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,0BAA0B;CAO9B"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable__factory.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable__factory.js deleted file mode 100644 index 4468c2db..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable__factory.js +++ /dev/null @@ -1,29 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ReentrancyGuardUpgradeable__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint8", - name: "version", - type: "uint8", - }, - ], - name: "Initialized", - type: "event", - }, -]; -class ReentrancyGuardUpgradeable__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.ReentrancyGuardUpgradeable__factory = ReentrancyGuardUpgradeable__factory; -ReentrancyGuardUpgradeable__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/security/index.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/security/index.d.ts deleted file mode 100644 index 00bbae8a..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/security/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export { PausableUpgradeable__factory } from "./PausableUpgradeable__factory"; -export { ReentrancyGuardUpgradeable__factory } from "./ReentrancyGuardUpgradeable__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/security/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/security/index.d.ts.map deleted file mode 100644 index 5f710499..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/security/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/@openzeppelin/contracts-upgradeable/security/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,EAAE,mCAAmC,EAAE,MAAM,uCAAuC,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/security/index.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/security/index.js deleted file mode 100644 index 17a77de3..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/security/index.js +++ /dev/null @@ -1,7 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ReentrancyGuardUpgradeable__factory = exports.PausableUpgradeable__factory = void 0; -var PausableUpgradeable__factory_1 = require("./PausableUpgradeable__factory"); -Object.defineProperty(exports, "PausableUpgradeable__factory", { enumerable: true, get: function () { return PausableUpgradeable__factory_1.PausableUpgradeable__factory; } }); -var ReentrancyGuardUpgradeable__factory_1 = require("./ReentrancyGuardUpgradeable__factory"); -Object.defineProperty(exports, "ReentrancyGuardUpgradeable__factory", { enumerable: true, get: function () { return ReentrancyGuardUpgradeable__factory_1.ReentrancyGuardUpgradeable__factory; } }); diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable__factory.d.ts deleted file mode 100644 index c5306ba3..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable__factory.d.ts +++ /dev/null @@ -1,276 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../../../common"; -import type { ERC1155Upgradeable, ERC1155UpgradeableInterface } from "../../../../../@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable"; -declare type ERC1155UpgradeableConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class ERC1155Upgradeable__factory extends ContractFactory { - constructor(...args: ERC1155UpgradeableConstructorParams); - getDeployTransaction(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): ERC1155Upgradeable__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b5061135e806100206000396000f3fe608060405234801561001057600080fd5b50600436106100875760003560e01c80634e1273f41161005b5780634e1273f41461010a578063a22cb4651461012a578063e985e9c51461013d578063f242432a1461017957600080fd5b8062fdd58e1461008c57806301ffc9a7146100b25780630e89341c146100d55780632eb2c2d6146100f5575b600080fd5b61009f61009a366004610b49565b61018c565b6040519081526020015b60405180910390f35b6100c56100c0366004610b8c565b610227565b60405190151581526020016100a9565b6100e86100e3366004610bb0565b610277565b6040516100a99190610c0f565b610108610103366004610d6e565b61030b565b005b61011d610118366004610e18565b610357565b6040516100a99190610f1e565b610108610138366004610f31565b610481565b6100c561014b366004610f6d565b6001600160a01b03918216600090815260666020908152604080832093909416825291909152205460ff1690565b610108610187366004610fa0565b610490565b60006001600160a01b0383166101fc5760405162461bcd60e51b815260206004820152602a60248201527f455243313135353a2061646472657373207a65726f206973206e6f742061207660448201526930b634b21037bbb732b960b11b60648201526084015b60405180910390fd5b5060008181526065602090815260408083206001600160a01b03861684529091529020545b92915050565b60006001600160e01b03198216636cdb3d1360e11b148061025857506001600160e01b031982166303a24d0760e21b145b8061022157506301ffc9a760e01b6001600160e01b0319831614610221565b60606067805461028690611005565b80601f01602080910402602001604051908101604052809291908181526020018280546102b290611005565b80156102ff5780601f106102d4576101008083540402835291602001916102ff565b820191906000526020600020905b8154815290600101906020018083116102e257829003601f168201915b50505050509050919050565b6001600160a01b0385163314806103275750610327853361014b565b6103435760405162461bcd60e51b81526004016101f39061103f565b61035085858585856104d5565b5050505050565b606081518351146103bc5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b60648201526084016101f3565b6000835167ffffffffffffffff8111156103d8576103d8610c22565b604051908082528060200260200182016040528015610401578160200160208202803683370190505b50905060005b84518110156104795761044c8582815181106104255761042561108e565b602002602001015185838151811061043f5761043f61108e565b602002602001015161018c565b82828151811061045e5761045e61108e565b6020908102919091010152610472816110ba565b9050610407565b509392505050565b61048c3383836106b5565b5050565b6001600160a01b0385163314806104ac57506104ac853361014b565b6104c85760405162461bcd60e51b81526004016101f39061103f565b6103508585858585610795565b81518351146105375760405162461bcd60e51b815260206004820152602860248201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206044820152670dad2e6dac2e8c6d60c31b60648201526084016101f3565b6001600160a01b03841661055d5760405162461bcd60e51b81526004016101f3906110d3565b3360005b845181101561064757600085828151811061057e5761057e61108e565b60200260200101519050600085838151811061059c5761059c61108e565b60209081029190910181015160008481526065835260408082206001600160a01b038e1683529093529190912054909150818110156105ed5760405162461bcd60e51b81526004016101f390611118565b60008381526065602090815260408083206001600160a01b038e8116855292528083208585039055908b1682528120805484929061062c908490611162565b9250508190555050505080610640906110ba565b9050610561565b50846001600160a01b0316866001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051610697929190611175565b60405180910390a46106ad8187878787876108c3565b505050505050565b816001600160a01b0316836001600160a01b0316036107285760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084016101f3565b6001600160a01b03838116600081815260666020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6001600160a01b0384166107bb5760405162461bcd60e51b81526004016101f3906110d3565b3360006107c785610a27565b905060006107d485610a27565b905060008681526065602090815260408083206001600160a01b038c168452909152902054858110156108195760405162461bcd60e51b81526004016101f390611118565b60008781526065602090815260408083206001600160a01b038d8116855292528083208985039055908a16825281208054889290610858908490611162565b909155505060408051888152602081018890526001600160a01b03808b16928c821692918816917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46108b8848a8a8a8a8a610a72565b505050505050505050565b6001600160a01b0384163b156106ad5760405163bc197c8160e01b81526001600160a01b0385169063bc197c819061090790899089908890889088906004016111a3565b6020604051808303816000875af1925050508015610942575060408051601f3d908101601f1916820190925261093f91810190611201565b60015b6109ee5761094e61121e565b806308c379a003610987575061096261123a565b8061096d5750610989565b8060405162461bcd60e51b81526004016101f39190610c0f565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e20455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b60648201526084016101f3565b6001600160e01b0319811663bc197c8160e01b14610a1e5760405162461bcd60e51b81526004016101f3906112c4565b50505050505050565b60408051600180825281830190925260609160009190602080830190803683370190505090508281600081518110610a6157610a6161108e565b602090810291909101015292915050565b6001600160a01b0384163b156106ad5760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e6190610ab6908990899088908890889060040161130c565b6020604051808303816000875af1925050508015610af1575060408051601f3d908101601f19168201909252610aee91810190611201565b60015b610afd5761094e61121e565b6001600160e01b0319811663f23a6e6160e01b14610a1e5760405162461bcd60e51b81526004016101f3906112c4565b80356001600160a01b0381168114610b4457600080fd5b919050565b60008060408385031215610b5c57600080fd5b610b6583610b2d565b946020939093013593505050565b6001600160e01b031981168114610b8957600080fd5b50565b600060208284031215610b9e57600080fd5b8135610ba981610b73565b9392505050565b600060208284031215610bc257600080fd5b5035919050565b6000815180845260005b81811015610bef57602081850181015186830182015201610bd3565b506000602082860101526020601f19601f83011685010191505092915050565b602081526000610ba96020830184610bc9565b634e487b7160e01b600052604160045260246000fd5b601f8201601f1916810167ffffffffffffffff81118282101715610c5e57610c5e610c22565b6040525050565b600067ffffffffffffffff821115610c7f57610c7f610c22565b5060051b60200190565b600082601f830112610c9a57600080fd5b81356020610ca782610c65565b604051610cb48282610c38565b83815260059390931b8501820192828101915086841115610cd457600080fd5b8286015b84811015610cef5780358352918301918301610cd8565b509695505050505050565b600082601f830112610d0b57600080fd5b813567ffffffffffffffff811115610d2557610d25610c22565b604051610d3c601f8301601f191660200182610c38565b818152846020838601011115610d5157600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a08688031215610d8657600080fd5b610d8f86610b2d565b9450610d9d60208701610b2d565b9350604086013567ffffffffffffffff80821115610dba57600080fd5b610dc689838a01610c89565b94506060880135915080821115610ddc57600080fd5b610de889838a01610c89565b93506080880135915080821115610dfe57600080fd5b50610e0b88828901610cfa565b9150509295509295909350565b60008060408385031215610e2b57600080fd5b823567ffffffffffffffff80821115610e4357600080fd5b818501915085601f830112610e5757600080fd5b81356020610e6482610c65565b604051610e718282610c38565b83815260059390931b8501820192828101915089841115610e9157600080fd5b948201945b83861015610eb657610ea786610b2d565b82529482019490820190610e96565b96505086013592505080821115610ecc57600080fd5b50610ed985828601610c89565b9150509250929050565b600081518084526020808501945080840160005b83811015610f1357815187529582019590820190600101610ef7565b509495945050505050565b602081526000610ba96020830184610ee3565b60008060408385031215610f4457600080fd5b610f4d83610b2d565b915060208301358015158114610f6257600080fd5b809150509250929050565b60008060408385031215610f8057600080fd5b610f8983610b2d565b9150610f9760208401610b2d565b90509250929050565b600080600080600060a08688031215610fb857600080fd5b610fc186610b2d565b9450610fcf60208701610b2d565b93506040860135925060608601359150608086013567ffffffffffffffff811115610ff957600080fd5b610e0b88828901610cfa565b600181811c9082168061101957607f821691505b60208210810361103957634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252602f908201527f455243313135353a2063616c6c6572206973206e6f7420746f6b656e206f776e60408201526e195c881b9bdc88185c1c1c9bdd9959608a1b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000600182016110cc576110cc6110a4565b5060010190565b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b80820180821115610221576102216110a4565b6040815260006111886040830185610ee3565b828103602084015261119a8185610ee3565b95945050505050565b6001600160a01b0386811682528516602082015260a0604082018190526000906111cf90830186610ee3565b82810360608401526111e18186610ee3565b905082810360808401526111f58185610bc9565b98975050505050505050565b60006020828403121561121357600080fd5b8151610ba981610b73565b600060033d11156112375760046000803e5060005160e01c5b90565b600060443d10156112485790565b6040516003193d81016004833e81513d67ffffffffffffffff816024840111818411171561127857505050505090565b82850191508151818111156112905750505050505090565b843d87010160208285010111156112aa5750505050505090565b6112b960208286010187610c38565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b6001600160a01b03868116825285166020820152604081018490526060810183905260a06080820181905260009061134690830184610bc9565b97965050505050505056fea164736f6c6343000811000a"; - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "ApprovalForAll"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "uint8"; - readonly name: "version"; - readonly type: "uint8"; - }]; - readonly name: "Initialized"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "uint256[]"; - readonly name: "ids"; - readonly type: "uint256[]"; - }, { - readonly indexed: false; - readonly internalType: "uint256[]"; - readonly name: "values"; - readonly type: "uint256[]"; - }]; - readonly name: "TransferBatch"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "value"; - readonly type: "uint256"; - }]; - readonly name: "TransferSingle"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }]; - readonly name: "URI"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }]; - readonly name: "balanceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address[]"; - readonly name: "accounts"; - readonly type: "address[]"; - }, { - readonly internalType: "uint256[]"; - readonly name: "ids"; - readonly type: "uint256[]"; - }]; - readonly name: "balanceOfBatch"; - readonly outputs: readonly [{ - readonly internalType: "uint256[]"; - readonly name: ""; - readonly type: "uint256[]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly name: "isApprovedForAll"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256[]"; - readonly name: "ids"; - readonly type: "uint256[]"; - }, { - readonly internalType: "uint256[]"; - readonly name: "amounts"; - readonly type: "uint256[]"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "safeBatchTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "amount"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "setApprovalForAll"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly name: "uri"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): ERC1155UpgradeableInterface; - static connect(address: string, runner?: ContractRunner | null): ERC1155Upgradeable; -} -export {}; -//# sourceMappingURL=ERC1155Upgradeable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable__factory.d.ts.map deleted file mode 100644 index 764418ed..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ERC1155Upgradeable__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,kBAAkB,EAClB,2BAA2B,EAC5B,MAAM,qFAAqF,CAAC;AA6U7F,aAAK,mCAAmC,GACpC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,2BAA4B,SAAQ,eAAe;gBAClD,GAAG,IAAI,EAAE,mCAAmC;IAQ/C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,2BAA2B;IAI5E,MAAM,CAAC,QAAQ,CAAC,QAAQ,owTAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,2BAA2B;IAGrD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,kBAAkB;CAGtB"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable__factory.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable__factory.js deleted file mode 100644 index 60bd94cf..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable__factory.js +++ /dev/null @@ -1,361 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ERC1155Upgradeable__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: false, - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "ApprovalForAll", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint8", - name: "version", - type: "uint8", - }, - ], - name: "Initialized", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: false, - internalType: "uint256[]", - name: "ids", - type: "uint256[]", - }, - { - indexed: false, - internalType: "uint256[]", - name: "values", - type: "uint256[]", - }, - ], - name: "TransferBatch", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "value", - type: "uint256", - }, - ], - name: "TransferSingle", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "string", - name: "value", - type: "string", - }, - { - indexed: true, - internalType: "uint256", - name: "id", - type: "uint256", - }, - ], - name: "URI", - type: "event", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address[]", - name: "accounts", - type: "address[]", - }, - { - internalType: "uint256[]", - name: "ids", - type: "uint256[]", - }, - ], - name: "balanceOfBatch", - outputs: [ - { - internalType: "uint256[]", - name: "", - type: "uint256[]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - name: "isApprovedForAll", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256[]", - name: "ids", - type: "uint256[]", - }, - { - internalType: "uint256[]", - name: "amounts", - type: "uint256[]", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "safeBatchTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "safeTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "setApprovalForAll", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - name: "uri", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -const _bytecode = "0x608060405234801561001057600080fd5b5061135e806100206000396000f3fe608060405234801561001057600080fd5b50600436106100875760003560e01c80634e1273f41161005b5780634e1273f41461010a578063a22cb4651461012a578063e985e9c51461013d578063f242432a1461017957600080fd5b8062fdd58e1461008c57806301ffc9a7146100b25780630e89341c146100d55780632eb2c2d6146100f5575b600080fd5b61009f61009a366004610b49565b61018c565b6040519081526020015b60405180910390f35b6100c56100c0366004610b8c565b610227565b60405190151581526020016100a9565b6100e86100e3366004610bb0565b610277565b6040516100a99190610c0f565b610108610103366004610d6e565b61030b565b005b61011d610118366004610e18565b610357565b6040516100a99190610f1e565b610108610138366004610f31565b610481565b6100c561014b366004610f6d565b6001600160a01b03918216600090815260666020908152604080832093909416825291909152205460ff1690565b610108610187366004610fa0565b610490565b60006001600160a01b0383166101fc5760405162461bcd60e51b815260206004820152602a60248201527f455243313135353a2061646472657373207a65726f206973206e6f742061207660448201526930b634b21037bbb732b960b11b60648201526084015b60405180910390fd5b5060008181526065602090815260408083206001600160a01b03861684529091529020545b92915050565b60006001600160e01b03198216636cdb3d1360e11b148061025857506001600160e01b031982166303a24d0760e21b145b8061022157506301ffc9a760e01b6001600160e01b0319831614610221565b60606067805461028690611005565b80601f01602080910402602001604051908101604052809291908181526020018280546102b290611005565b80156102ff5780601f106102d4576101008083540402835291602001916102ff565b820191906000526020600020905b8154815290600101906020018083116102e257829003601f168201915b50505050509050919050565b6001600160a01b0385163314806103275750610327853361014b565b6103435760405162461bcd60e51b81526004016101f39061103f565b61035085858585856104d5565b5050505050565b606081518351146103bc5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b60648201526084016101f3565b6000835167ffffffffffffffff8111156103d8576103d8610c22565b604051908082528060200260200182016040528015610401578160200160208202803683370190505b50905060005b84518110156104795761044c8582815181106104255761042561108e565b602002602001015185838151811061043f5761043f61108e565b602002602001015161018c565b82828151811061045e5761045e61108e565b6020908102919091010152610472816110ba565b9050610407565b509392505050565b61048c3383836106b5565b5050565b6001600160a01b0385163314806104ac57506104ac853361014b565b6104c85760405162461bcd60e51b81526004016101f39061103f565b6103508585858585610795565b81518351146105375760405162461bcd60e51b815260206004820152602860248201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206044820152670dad2e6dac2e8c6d60c31b60648201526084016101f3565b6001600160a01b03841661055d5760405162461bcd60e51b81526004016101f3906110d3565b3360005b845181101561064757600085828151811061057e5761057e61108e565b60200260200101519050600085838151811061059c5761059c61108e565b60209081029190910181015160008481526065835260408082206001600160a01b038e1683529093529190912054909150818110156105ed5760405162461bcd60e51b81526004016101f390611118565b60008381526065602090815260408083206001600160a01b038e8116855292528083208585039055908b1682528120805484929061062c908490611162565b9250508190555050505080610640906110ba565b9050610561565b50846001600160a01b0316866001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051610697929190611175565b60405180910390a46106ad8187878787876108c3565b505050505050565b816001600160a01b0316836001600160a01b0316036107285760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b60648201526084016101f3565b6001600160a01b03838116600081815260666020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6001600160a01b0384166107bb5760405162461bcd60e51b81526004016101f3906110d3565b3360006107c785610a27565b905060006107d485610a27565b905060008681526065602090815260408083206001600160a01b038c168452909152902054858110156108195760405162461bcd60e51b81526004016101f390611118565b60008781526065602090815260408083206001600160a01b038d8116855292528083208985039055908a16825281208054889290610858908490611162565b909155505060408051888152602081018890526001600160a01b03808b16928c821692918816917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46108b8848a8a8a8a8a610a72565b505050505050505050565b6001600160a01b0384163b156106ad5760405163bc197c8160e01b81526001600160a01b0385169063bc197c819061090790899089908890889088906004016111a3565b6020604051808303816000875af1925050508015610942575060408051601f3d908101601f1916820190925261093f91810190611201565b60015b6109ee5761094e61121e565b806308c379a003610987575061096261123a565b8061096d5750610989565b8060405162461bcd60e51b81526004016101f39190610c0f565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e20455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b60648201526084016101f3565b6001600160e01b0319811663bc197c8160e01b14610a1e5760405162461bcd60e51b81526004016101f3906112c4565b50505050505050565b60408051600180825281830190925260609160009190602080830190803683370190505090508281600081518110610a6157610a6161108e565b602090810291909101015292915050565b6001600160a01b0384163b156106ad5760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e6190610ab6908990899088908890889060040161130c565b6020604051808303816000875af1925050508015610af1575060408051601f3d908101601f19168201909252610aee91810190611201565b60015b610afd5761094e61121e565b6001600160e01b0319811663f23a6e6160e01b14610a1e5760405162461bcd60e51b81526004016101f3906112c4565b80356001600160a01b0381168114610b4457600080fd5b919050565b60008060408385031215610b5c57600080fd5b610b6583610b2d565b946020939093013593505050565b6001600160e01b031981168114610b8957600080fd5b50565b600060208284031215610b9e57600080fd5b8135610ba981610b73565b9392505050565b600060208284031215610bc257600080fd5b5035919050565b6000815180845260005b81811015610bef57602081850181015186830182015201610bd3565b506000602082860101526020601f19601f83011685010191505092915050565b602081526000610ba96020830184610bc9565b634e487b7160e01b600052604160045260246000fd5b601f8201601f1916810167ffffffffffffffff81118282101715610c5e57610c5e610c22565b6040525050565b600067ffffffffffffffff821115610c7f57610c7f610c22565b5060051b60200190565b600082601f830112610c9a57600080fd5b81356020610ca782610c65565b604051610cb48282610c38565b83815260059390931b8501820192828101915086841115610cd457600080fd5b8286015b84811015610cef5780358352918301918301610cd8565b509695505050505050565b600082601f830112610d0b57600080fd5b813567ffffffffffffffff811115610d2557610d25610c22565b604051610d3c601f8301601f191660200182610c38565b818152846020838601011115610d5157600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a08688031215610d8657600080fd5b610d8f86610b2d565b9450610d9d60208701610b2d565b9350604086013567ffffffffffffffff80821115610dba57600080fd5b610dc689838a01610c89565b94506060880135915080821115610ddc57600080fd5b610de889838a01610c89565b93506080880135915080821115610dfe57600080fd5b50610e0b88828901610cfa565b9150509295509295909350565b60008060408385031215610e2b57600080fd5b823567ffffffffffffffff80821115610e4357600080fd5b818501915085601f830112610e5757600080fd5b81356020610e6482610c65565b604051610e718282610c38565b83815260059390931b8501820192828101915089841115610e9157600080fd5b948201945b83861015610eb657610ea786610b2d565b82529482019490820190610e96565b96505086013592505080821115610ecc57600080fd5b50610ed985828601610c89565b9150509250929050565b600081518084526020808501945080840160005b83811015610f1357815187529582019590820190600101610ef7565b509495945050505050565b602081526000610ba96020830184610ee3565b60008060408385031215610f4457600080fd5b610f4d83610b2d565b915060208301358015158114610f6257600080fd5b809150509250929050565b60008060408385031215610f8057600080fd5b610f8983610b2d565b9150610f9760208401610b2d565b90509250929050565b600080600080600060a08688031215610fb857600080fd5b610fc186610b2d565b9450610fcf60208701610b2d565b93506040860135925060608601359150608086013567ffffffffffffffff811115610ff957600080fd5b610e0b88828901610cfa565b600181811c9082168061101957607f821691505b60208210810361103957634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252602f908201527f455243313135353a2063616c6c6572206973206e6f7420746f6b656e206f776e60408201526e195c881b9bdc88185c1c1c9bdd9959608a1b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000600182016110cc576110cc6110a4565b5060010190565b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b80820180821115610221576102216110a4565b6040815260006111886040830185610ee3565b828103602084015261119a8185610ee3565b95945050505050565b6001600160a01b0386811682528516602082015260a0604082018190526000906111cf90830186610ee3565b82810360608401526111e18186610ee3565b905082810360808401526111f58185610bc9565b98975050505050505050565b60006020828403121561121357600080fd5b8151610ba981610b73565b600060033d11156112375760046000803e5060005160e01c5b90565b600060443d10156112485790565b6040516003193d81016004833e81513d67ffffffffffffffff816024840111818411171561127857505050505090565b82850191508151818111156112905750505050505090565b843d87010160208285010111156112aa5750505050505090565b6112b960208286010187610c38565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b6001600160a01b03868116825285166020820152604081018490526060810183905260a06080820181905260009061134690830184610bc9565b97965050505050505056fea164736f6c6343000811000a"; -const isSuperArgs = (xs) => xs.length > 1; -class ERC1155Upgradeable__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(overrides) { - return super.getDeployTransaction(overrides || {}); - } - deploy(overrides) { - return super.deploy(overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.ERC1155Upgradeable__factory = ERC1155Upgradeable__factory; -ERC1155Upgradeable__factory.bytecode = _bytecode; -ERC1155Upgradeable__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable__factory.d.ts deleted file mode 100644 index 48888471..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable__factory.d.ts +++ /dev/null @@ -1,82 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IERC1155ReceiverUpgradeable, IERC1155ReceiverUpgradeableInterface } from "../../../../../@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable"; -export declare class IERC1155ReceiverUpgradeable__factory { - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "uint256[]"; - readonly name: "ids"; - readonly type: "uint256[]"; - }, { - readonly internalType: "uint256[]"; - readonly name: "values"; - readonly type: "uint256[]"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "onERC1155BatchReceived"; - readonly outputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: ""; - readonly type: "bytes4"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "value"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "onERC1155Received"; - readonly outputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: ""; - readonly type: "bytes4"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): IERC1155ReceiverUpgradeableInterface; - static connect(address: string, runner?: ContractRunner | null): IERC1155ReceiverUpgradeable; -} -//# sourceMappingURL=IERC1155ReceiverUpgradeable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable__factory.d.ts.map deleted file mode 100644 index 49624628..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC1155ReceiverUpgradeable__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,2BAA2B,EAC3B,oCAAoC,EACrC,MAAM,8FAA8F,CAAC;AAsGtG,qBAAa,oCAAoC;IAC/C,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,oCAAoC;IAG9D,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,2BAA2B;CAO/B"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable__factory.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable__factory.js deleted file mode 100644 index 198dffd2..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable__factory.js +++ /dev/null @@ -1,113 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IERC1155ReceiverUpgradeable__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "uint256[]", - name: "ids", - type: "uint256[]", - }, - { - internalType: "uint256[]", - name: "values", - type: "uint256[]", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "onERC1155BatchReceived", - outputs: [ - { - internalType: "bytes4", - name: "", - type: "bytes4", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - internalType: "uint256", - name: "value", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "onERC1155Received", - outputs: [ - { - internalType: "bytes4", - name: "", - type: "bytes4", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class IERC1155ReceiverUpgradeable__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IERC1155ReceiverUpgradeable__factory = IERC1155ReceiverUpgradeable__factory; -IERC1155ReceiverUpgradeable__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable__factory.d.ts deleted file mode 100644 index 210e529f..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable__factory.d.ts +++ /dev/null @@ -1,237 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IERC1155Upgradeable, IERC1155UpgradeableInterface } from "../../../../../@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable"; -export declare class IERC1155Upgradeable__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "ApprovalForAll"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "uint256[]"; - readonly name: "ids"; - readonly type: "uint256[]"; - }, { - readonly indexed: false; - readonly internalType: "uint256[]"; - readonly name: "values"; - readonly type: "uint256[]"; - }]; - readonly name: "TransferBatch"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "value"; - readonly type: "uint256"; - }]; - readonly name: "TransferSingle"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }]; - readonly name: "URI"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }]; - readonly name: "balanceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address[]"; - readonly name: "accounts"; - readonly type: "address[]"; - }, { - readonly internalType: "uint256[]"; - readonly name: "ids"; - readonly type: "uint256[]"; - }]; - readonly name: "balanceOfBatch"; - readonly outputs: readonly [{ - readonly internalType: "uint256[]"; - readonly name: ""; - readonly type: "uint256[]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly name: "isApprovedForAll"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256[]"; - readonly name: "ids"; - readonly type: "uint256[]"; - }, { - readonly internalType: "uint256[]"; - readonly name: "amounts"; - readonly type: "uint256[]"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "safeBatchTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "amount"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "setApprovalForAll"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): IERC1155UpgradeableInterface; - static connect(address: string, runner?: ContractRunner | null): IERC1155Upgradeable; -} -//# sourceMappingURL=IERC1155Upgradeable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable__factory.d.ts.map deleted file mode 100644 index c04b7a9d..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC1155Upgradeable__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,mBAAmB,EACnB,4BAA4B,EAC7B,MAAM,sFAAsF,CAAC;AA0S9F,qBAAa,4BAA4B;IACvC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,4BAA4B;IAGtD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,mBAAmB;CAOvB"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable__factory.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable__factory.js deleted file mode 100644 index a12f0617..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable__factory.js +++ /dev/null @@ -1,309 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IERC1155Upgradeable__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: false, - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "ApprovalForAll", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: false, - internalType: "uint256[]", - name: "ids", - type: "uint256[]", - }, - { - indexed: false, - internalType: "uint256[]", - name: "values", - type: "uint256[]", - }, - ], - name: "TransferBatch", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "value", - type: "uint256", - }, - ], - name: "TransferSingle", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "string", - name: "value", - type: "string", - }, - { - indexed: true, - internalType: "uint256", - name: "id", - type: "uint256", - }, - ], - name: "URI", - type: "event", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address[]", - name: "accounts", - type: "address[]", - }, - { - internalType: "uint256[]", - name: "ids", - type: "uint256[]", - }, - ], - name: "balanceOfBatch", - outputs: [ - { - internalType: "uint256[]", - name: "", - type: "uint256[]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - name: "isApprovedForAll", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256[]", - name: "ids", - type: "uint256[]", - }, - { - internalType: "uint256[]", - name: "amounts", - type: "uint256[]", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "safeBatchTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "safeTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "setApprovalForAll", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class IERC1155Upgradeable__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IERC1155Upgradeable__factory = IERC1155Upgradeable__factory; -IERC1155Upgradeable__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable__factory.d.ts deleted file mode 100644 index 6fa3c219..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable__factory.d.ts +++ /dev/null @@ -1,297 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { ERC1155BurnableUpgradeable, ERC1155BurnableUpgradeableInterface } from "../../../../../../@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable"; -export declare class ERC1155BurnableUpgradeable__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "ApprovalForAll"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "uint8"; - readonly name: "version"; - readonly type: "uint8"; - }]; - readonly name: "Initialized"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "uint256[]"; - readonly name: "ids"; - readonly type: "uint256[]"; - }, { - readonly indexed: false; - readonly internalType: "uint256[]"; - readonly name: "values"; - readonly type: "uint256[]"; - }]; - readonly name: "TransferBatch"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "value"; - readonly type: "uint256"; - }]; - readonly name: "TransferSingle"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }]; - readonly name: "URI"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }]; - readonly name: "balanceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address[]"; - readonly name: "accounts"; - readonly type: "address[]"; - }, { - readonly internalType: "uint256[]"; - readonly name: "ids"; - readonly type: "uint256[]"; - }]; - readonly name: "balanceOfBatch"; - readonly outputs: readonly [{ - readonly internalType: "uint256[]"; - readonly name: ""; - readonly type: "uint256[]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "value"; - readonly type: "uint256"; - }]; - readonly name: "burn"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly internalType: "uint256[]"; - readonly name: "ids"; - readonly type: "uint256[]"; - }, { - readonly internalType: "uint256[]"; - readonly name: "values"; - readonly type: "uint256[]"; - }]; - readonly name: "burnBatch"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly name: "isApprovedForAll"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256[]"; - readonly name: "ids"; - readonly type: "uint256[]"; - }, { - readonly internalType: "uint256[]"; - readonly name: "amounts"; - readonly type: "uint256[]"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "safeBatchTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "amount"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "setApprovalForAll"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly name: "uri"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): ERC1155BurnableUpgradeableInterface; - static connect(address: string, runner?: ContractRunner | null): ERC1155BurnableUpgradeable; -} -//# sourceMappingURL=ERC1155BurnableUpgradeable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable__factory.d.ts.map deleted file mode 100644 index 71f4f293..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ERC1155BurnableUpgradeable__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,0BAA0B,EAC1B,mCAAmC,EACpC,MAAM,2GAA2G,CAAC;AAwXnH,qBAAa,mCAAmC;IAC9C,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,mCAAmC;IAG7D,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,0BAA0B;CAO9B"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable__factory.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable__factory.js deleted file mode 100644 index 9b2010e2..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable__factory.js +++ /dev/null @@ -1,387 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ERC1155BurnableUpgradeable__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: false, - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "ApprovalForAll", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint8", - name: "version", - type: "uint8", - }, - ], - name: "Initialized", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: false, - internalType: "uint256[]", - name: "ids", - type: "uint256[]", - }, - { - indexed: false, - internalType: "uint256[]", - name: "values", - type: "uint256[]", - }, - ], - name: "TransferBatch", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "value", - type: "uint256", - }, - ], - name: "TransferSingle", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "string", - name: "value", - type: "string", - }, - { - indexed: true, - internalType: "uint256", - name: "id", - type: "uint256", - }, - ], - name: "URI", - type: "event", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address[]", - name: "accounts", - type: "address[]", - }, - { - internalType: "uint256[]", - name: "ids", - type: "uint256[]", - }, - ], - name: "balanceOfBatch", - outputs: [ - { - internalType: "uint256[]", - name: "", - type: "uint256[]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - internalType: "uint256", - name: "value", - type: "uint256", - }, - ], - name: "burn", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "uint256[]", - name: "ids", - type: "uint256[]", - }, - { - internalType: "uint256[]", - name: "values", - type: "uint256[]", - }, - ], - name: "burnBatch", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - name: "isApprovedForAll", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256[]", - name: "ids", - type: "uint256[]", - }, - { - internalType: "uint256[]", - name: "amounts", - type: "uint256[]", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "safeBatchTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "safeTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "setApprovalForAll", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - name: "uri", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class ERC1155BurnableUpgradeable__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.ERC1155BurnableUpgradeable__factory = ERC1155BurnableUpgradeable__factory; -ERC1155BurnableUpgradeable__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable__factory.d.ts deleted file mode 100644 index 970e66ec..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable__factory.d.ts +++ /dev/null @@ -1,291 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { ERC1155PausableUpgradeable, ERC1155PausableUpgradeableInterface } from "../../../../../../@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable"; -export declare class ERC1155PausableUpgradeable__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "ApprovalForAll"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "uint8"; - readonly name: "version"; - readonly type: "uint8"; - }]; - readonly name: "Initialized"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "Paused"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "uint256[]"; - readonly name: "ids"; - readonly type: "uint256[]"; - }, { - readonly indexed: false; - readonly internalType: "uint256[]"; - readonly name: "values"; - readonly type: "uint256[]"; - }]; - readonly name: "TransferBatch"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "value"; - readonly type: "uint256"; - }]; - readonly name: "TransferSingle"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }]; - readonly name: "URI"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "Unpaused"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }]; - readonly name: "balanceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address[]"; - readonly name: "accounts"; - readonly type: "address[]"; - }, { - readonly internalType: "uint256[]"; - readonly name: "ids"; - readonly type: "uint256[]"; - }]; - readonly name: "balanceOfBatch"; - readonly outputs: readonly [{ - readonly internalType: "uint256[]"; - readonly name: ""; - readonly type: "uint256[]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly name: "isApprovedForAll"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "paused"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256[]"; - readonly name: "ids"; - readonly type: "uint256[]"; - }, { - readonly internalType: "uint256[]"; - readonly name: "amounts"; - readonly type: "uint256[]"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "safeBatchTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "amount"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "setApprovalForAll"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly name: "uri"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): ERC1155PausableUpgradeableInterface; - static connect(address: string, runner?: ContractRunner | null): ERC1155PausableUpgradeable; -} -//# sourceMappingURL=ERC1155PausableUpgradeable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable__factory.d.ts.map deleted file mode 100644 index 782702c5..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ERC1155PausableUpgradeable__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,0BAA0B,EAC1B,mCAAmC,EACpC,MAAM,2GAA2G,CAAC;AAiXnH,qBAAa,mCAAmC;IAC9C,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,mCAAmC;IAG7D,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,0BAA0B;CAO9B"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable__factory.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable__factory.js deleted file mode 100644 index 5d73c62d..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable__factory.js +++ /dev/null @@ -1,380 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ERC1155PausableUpgradeable__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: false, - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "ApprovalForAll", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint8", - name: "version", - type: "uint8", - }, - ], - name: "Initialized", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "Paused", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: false, - internalType: "uint256[]", - name: "ids", - type: "uint256[]", - }, - { - indexed: false, - internalType: "uint256[]", - name: "values", - type: "uint256[]", - }, - ], - name: "TransferBatch", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "value", - type: "uint256", - }, - ], - name: "TransferSingle", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "string", - name: "value", - type: "string", - }, - { - indexed: true, - internalType: "uint256", - name: "id", - type: "uint256", - }, - ], - name: "URI", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "Unpaused", - type: "event", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address[]", - name: "accounts", - type: "address[]", - }, - { - internalType: "uint256[]", - name: "ids", - type: "uint256[]", - }, - ], - name: "balanceOfBatch", - outputs: [ - { - internalType: "uint256[]", - name: "", - type: "uint256[]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - name: "isApprovedForAll", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "paused", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256[]", - name: "ids", - type: "uint256[]", - }, - { - internalType: "uint256[]", - name: "amounts", - type: "uint256[]", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "safeBatchTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "safeTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "setApprovalForAll", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - name: "uri", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class ERC1155PausableUpgradeable__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.ERC1155PausableUpgradeable__factory = ERC1155PausableUpgradeable__factory; -ERC1155PausableUpgradeable__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable__factory.d.ts deleted file mode 100644 index a612d852..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable__factory.d.ts +++ /dev/null @@ -1,251 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IERC1155MetadataURIUpgradeable, IERC1155MetadataURIUpgradeableInterface } from "../../../../../../@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable"; -export declare class IERC1155MetadataURIUpgradeable__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "ApprovalForAll"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "uint256[]"; - readonly name: "ids"; - readonly type: "uint256[]"; - }, { - readonly indexed: false; - readonly internalType: "uint256[]"; - readonly name: "values"; - readonly type: "uint256[]"; - }]; - readonly name: "TransferBatch"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "value"; - readonly type: "uint256"; - }]; - readonly name: "TransferSingle"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }]; - readonly name: "URI"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }]; - readonly name: "balanceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address[]"; - readonly name: "accounts"; - readonly type: "address[]"; - }, { - readonly internalType: "uint256[]"; - readonly name: "ids"; - readonly type: "uint256[]"; - }]; - readonly name: "balanceOfBatch"; - readonly outputs: readonly [{ - readonly internalType: "uint256[]"; - readonly name: ""; - readonly type: "uint256[]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly name: "isApprovedForAll"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256[]"; - readonly name: "ids"; - readonly type: "uint256[]"; - }, { - readonly internalType: "uint256[]"; - readonly name: "amounts"; - readonly type: "uint256[]"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "safeBatchTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "amount"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "setApprovalForAll"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }]; - readonly name: "uri"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): IERC1155MetadataURIUpgradeableInterface; - static connect(address: string, runner?: ContractRunner | null): IERC1155MetadataURIUpgradeable; -} -//# sourceMappingURL=IERC1155MetadataURIUpgradeable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable__factory.d.ts.map deleted file mode 100644 index c5560f40..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC1155MetadataURIUpgradeable__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,8BAA8B,EAC9B,uCAAuC,EACxC,MAAM,+GAA+G,CAAC;AA6TvH,qBAAa,uCAAuC;IAClD,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,uCAAuC;IAGjE,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,8BAA8B;CAOlC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable__factory.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable__factory.js deleted file mode 100644 index 9788b8bf..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable__factory.js +++ /dev/null @@ -1,328 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IERC1155MetadataURIUpgradeable__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: false, - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "ApprovalForAll", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: false, - internalType: "uint256[]", - name: "ids", - type: "uint256[]", - }, - { - indexed: false, - internalType: "uint256[]", - name: "values", - type: "uint256[]", - }, - ], - name: "TransferBatch", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "value", - type: "uint256", - }, - ], - name: "TransferSingle", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "string", - name: "value", - type: "string", - }, - { - indexed: true, - internalType: "uint256", - name: "id", - type: "uint256", - }, - ], - name: "URI", - type: "event", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address[]", - name: "accounts", - type: "address[]", - }, - { - internalType: "uint256[]", - name: "ids", - type: "uint256[]", - }, - ], - name: "balanceOfBatch", - outputs: [ - { - internalType: "uint256[]", - name: "", - type: "uint256[]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - name: "isApprovedForAll", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256[]", - name: "ids", - type: "uint256[]", - }, - { - internalType: "uint256[]", - name: "amounts", - type: "uint256[]", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "safeBatchTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "safeTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "setApprovalForAll", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - ], - name: "uri", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class IERC1155MetadataURIUpgradeable__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IERC1155MetadataURIUpgradeable__factory = IERC1155MetadataURIUpgradeable__factory; -IERC1155MetadataURIUpgradeable__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/index.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/index.d.ts deleted file mode 100644 index db14d524..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/index.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export { ERC1155BurnableUpgradeable__factory } from "./ERC1155BurnableUpgradeable__factory"; -export { ERC1155PausableUpgradeable__factory } from "./ERC1155PausableUpgradeable__factory"; -export { IERC1155MetadataURIUpgradeable__factory } from "./IERC1155MetadataURIUpgradeable__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/index.d.ts.map deleted file mode 100644 index cd6f7063..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mCAAmC,EAAE,MAAM,uCAAuC,CAAC;AAC5F,OAAO,EAAE,mCAAmC,EAAE,MAAM,uCAAuC,CAAC;AAC5F,OAAO,EAAE,uCAAuC,EAAE,MAAM,2CAA2C,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/index.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/index.js deleted file mode 100644 index 56fb20dd..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/index.js +++ /dev/null @@ -1,9 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IERC1155MetadataURIUpgradeable__factory = exports.ERC1155PausableUpgradeable__factory = exports.ERC1155BurnableUpgradeable__factory = void 0; -var ERC1155BurnableUpgradeable__factory_1 = require("./ERC1155BurnableUpgradeable__factory"); -Object.defineProperty(exports, "ERC1155BurnableUpgradeable__factory", { enumerable: true, get: function () { return ERC1155BurnableUpgradeable__factory_1.ERC1155BurnableUpgradeable__factory; } }); -var ERC1155PausableUpgradeable__factory_1 = require("./ERC1155PausableUpgradeable__factory"); -Object.defineProperty(exports, "ERC1155PausableUpgradeable__factory", { enumerable: true, get: function () { return ERC1155PausableUpgradeable__factory_1.ERC1155PausableUpgradeable__factory; } }); -var IERC1155MetadataURIUpgradeable__factory_1 = require("./IERC1155MetadataURIUpgradeable__factory"); -Object.defineProperty(exports, "IERC1155MetadataURIUpgradeable__factory", { enumerable: true, get: function () { return IERC1155MetadataURIUpgradeable__factory_1.IERC1155MetadataURIUpgradeable__factory; } }); diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/index.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/index.d.ts deleted file mode 100644 index c9b27b73..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/index.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -export * as extensions from "./extensions"; -export * as presets from "./presets"; -export { ERC1155Upgradeable__factory } from "./ERC1155Upgradeable__factory"; -export { IERC1155ReceiverUpgradeable__factory } from "./IERC1155ReceiverUpgradeable__factory"; -export { IERC1155Upgradeable__factory } from "./IERC1155Upgradeable__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/index.d.ts.map deleted file mode 100644 index 2c5bbec1..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AACrC,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,oCAAoC,EAAE,MAAM,wCAAwC,CAAC;AAC9F,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/index.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/index.js deleted file mode 100644 index f1472501..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/index.js +++ /dev/null @@ -1,34 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IERC1155Upgradeable__factory = exports.IERC1155ReceiverUpgradeable__factory = exports.ERC1155Upgradeable__factory = exports.presets = exports.extensions = void 0; -exports.extensions = __importStar(require("./extensions")); -exports.presets = __importStar(require("./presets")); -var ERC1155Upgradeable__factory_1 = require("./ERC1155Upgradeable__factory"); -Object.defineProperty(exports, "ERC1155Upgradeable__factory", { enumerable: true, get: function () { return ERC1155Upgradeable__factory_1.ERC1155Upgradeable__factory; } }); -var IERC1155ReceiverUpgradeable__factory_1 = require("./IERC1155ReceiverUpgradeable__factory"); -Object.defineProperty(exports, "IERC1155ReceiverUpgradeable__factory", { enumerable: true, get: function () { return IERC1155ReceiverUpgradeable__factory_1.IERC1155ReceiverUpgradeable__factory; } }); -var IERC1155Upgradeable__factory_1 = require("./IERC1155Upgradeable__factory"); -Object.defineProperty(exports, "IERC1155Upgradeable__factory", { enumerable: true, get: function () { return IERC1155Upgradeable__factory_1.IERC1155Upgradeable__factory; } }); diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable__factory.d.ts deleted file mode 100644 index 6130cdfa..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable__factory.d.ts +++ /dev/null @@ -1,604 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../../../../common"; -import type { ERC1155PresetMinterPauserUpgradeable, ERC1155PresetMinterPauserUpgradeableInterface } from "../../../../../../@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable"; -declare type ERC1155PresetMinterPauserUpgradeableConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class ERC1155PresetMinterPauserUpgradeable__factory extends ContractFactory { - constructor(...args: ERC1155PresetMinterPauserUpgradeableConstructorParams); - getDeployTransaction(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): ERC1155PresetMinterPauserUpgradeable__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b50612ce5806100206000396000f3fe608060405234801561001057600080fd5b506004361061018d5760003560e01c80638456cb59116100de578063d539139311610097578063e985e9c511610071578063e985e9c514610377578063f242432a146103b3578063f5298aca146103c6578063f62d1888146103d957600080fd5b8063d53913931461033a578063d547741f1461034f578063e63ab1e91461036257600080fd5b80638456cb59146102c65780639010d07c146102ce57806391d14854146102f9578063a217fddf1461030c578063a22cb46514610314578063ca15c8731461032757600080fd5b80632f2ff15d1161014b5780634e1273f4116101255780634e1273f4146102745780635c975abb146102945780636b20c454146102a0578063731133e9146102b357600080fd5b80632f2ff15d1461024657806336568abe146102595780633f4ba83a1461026c57600080fd5b8062fdd58e1461019257806301ffc9a7146101b85780630e89341c146101db5780631f7fdffa146101fb578063248a9ca3146102105780632eb2c2d614610233575b600080fd5b6101a56101a0366004611edd565b6103ec565b6040519081526020015b60405180910390f35b6101cb6101c6366004611f1d565b610487565b60405190151581526020016101af565b6101ee6101e9366004611f3a565b610492565b6040516101af9190611fa3565b61020e610209366004612109565b610526565b005b6101a561021e366004611f3a565b60009081526065602052604090206001015490565b61020e6102413660046121a1565b61056c565b61020e61025436600461224a565b6105b8565b61020e61026736600461224a565b6105e2565b61020e610660565b610287610282366004612276565b6106f4565b6040516101af919061237b565b61012d5460ff166101cb565b61020e6102ae36600461238e565b61081d565b61020e6102c1366004612401565b610860565b61020e6108a0565b6102e16102dc366004612455565b610932565b6040516001600160a01b0390911681526020016101af565b6101cb61030736600461224a565b610951565b6101a5600081565b61020e610322366004612477565b61097c565b6101a5610335366004611f3a565b610987565b6101a5600080516020612cb983398151915281565b61020e61035d36600461224a565b61099e565b6101a5600080516020612c9983398151915281565b6101cb6103853660046124b3565b6001600160a01b03918216600090815260ca6020908152604080832093909416825291909152205460ff1690565b61020e6103c13660046124dd565b6109c3565b61020e6103d4366004612541565b610a08565b61020e6103e7366004612574565b610a4b565b60006001600160a01b03831661045c5760405162461bcd60e51b815260206004820152602a60248201527f455243313135353a2061646472657373207a65726f206973206e6f742061207660448201526930b634b21037bbb732b960b11b60648201526084015b60405180910390fd5b50600081815260c9602090815260408083206001600160a01b03861684529091529020545b92915050565b600061048182610b5d565b606060cb80546104a1906125c4565b80601f01602080910402602001604051908101604052809291908181526020018280546104cd906125c4565b801561051a5780601f106104ef5761010080835404028352916020019161051a565b820191906000526020600020905b8154815290600101906020018083116104fd57829003601f168201915b50505050509050919050565b61053e600080516020612cb983398151915233610951565b61055a5760405162461bcd60e51b8152600401610453906125fe565b61056684848484610b9d565b50505050565b6001600160a01b03851633148061058857506105888533610385565b6105a45760405162461bcd60e51b81526004016104539061265b565b6105b18585858585610cf8565b5050505050565b6000828152606560205260409020600101546105d381610ea5565b6105dd8383610eb2565b505050565b6001600160a01b03811633146106525760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610453565b61065c8282610ed4565b5050565b610678600080516020612c9983398151915233610951565b6106ea5760405162461bcd60e51b815260206004820152603b60248201527f455243313135355072657365744d696e7465725061757365723a206d7573742060448201527f686176652070617573657220726f6c6520746f20756e706175736500000000006064820152608401610453565b6106f2610ef6565b565b606081518351146107595760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b6064820152608401610453565b600083516001600160401b0381111561077457610774611fb6565b60405190808252806020026020018201604052801561079d578160200160208202803683370190505b50905060005b8451811015610815576107e88582815181106107c1576107c16126aa565b60200260200101518583815181106107db576107db6126aa565b60200260200101516103ec565b8282815181106107fa576107fa6126aa565b602090810291909101015261080e816126d6565b90506107a3565b509392505050565b6001600160a01b03831633148061083957506108398333610385565b6108555760405162461bcd60e51b81526004016104539061265b565b6105dd838383610f49565b610878600080516020612cb983398151915233610951565b6108945760405162461bcd60e51b8152600401610453906125fe565b610566848484846110e8565b6108b8600080516020612c9983398151915233610951565b61092a5760405162461bcd60e51b815260206004820152603960248201527f455243313135355072657365744d696e7465725061757365723a206d7573742060448201527f686176652070617573657220726f6c6520746f207061757365000000000000006064820152608401610453565b6106f26111d3565b600082815260976020526040812061094a9083611211565b9392505050565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b61065c33838361121d565b6000818152609760205260408120610481906112fd565b6000828152606560205260409020600101546109b981610ea5565b6105dd8383610ed4565b6001600160a01b0385163314806109df57506109df8533610385565b6109fb5760405162461bcd60e51b81526004016104539061265b565b6105b18585858585611307565b6001600160a01b038316331480610a245750610a248333610385565b610a405760405162461bcd60e51b81526004016104539061265b565b6105dd838383611443565b600054610100900460ff1615808015610a6b5750600054600160ff909116105b80610a855750303b158015610a85575060005460ff166001145b610ae85760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610453565b6000805460ff191660011790558015610b0b576000805461ff0019166101001790555b610b148261155f565b801561065c576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b60006001600160e01b03198216636cdb3d1360e11b1480610b8e57506001600160e01b031982166303a24d0760e21b145b806104815750610481826115a0565b6001600160a01b038416610bc35760405162461bcd60e51b8152600401610453906126ef565b8151835114610be45760405162461bcd60e51b815260040161045390612730565b33610bf4816000878787876115c5565b60005b8451811015610c9057838181518110610c1257610c126126aa565b602002602001015160c96000878481518110610c3057610c306126aa565b602002602001015181526020019081526020016000206000886001600160a01b03166001600160a01b031681526020019081526020016000206000828254610c789190612778565b90915550819050610c88816126d6565b915050610bf7565b50846001600160a01b031660006001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051610ce192919061278b565b60405180910390a46105b1816000878787876115d3565b8151835114610d195760405162461bcd60e51b815260040161045390612730565b6001600160a01b038416610d3f5760405162461bcd60e51b8152600401610453906127b9565b33610d4e8187878787876115c5565b60005b8451811015610e37576000858281518110610d6e57610d6e6126aa565b602002602001015190506000858381518110610d8c57610d8c6126aa565b602090810291909101810151600084815260c9835260408082206001600160a01b038e168352909352919091205490915081811015610ddd5760405162461bcd60e51b8152600401610453906127fe565b600083815260c9602090815260408083206001600160a01b038e8116855292528083208585039055908b16825281208054849290610e1c908490612778565b9250508190555050505080610e30906126d6565b9050610d51565b50846001600160a01b0316866001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051610e8792919061278b565b60405180910390a4610e9d8187878787876115d3565b505050505050565b610eaf813361172e565b50565b610ebc8282611792565b60008281526097602052604090206105dd9082611818565b610ede828261182d565b60008281526097602052604090206105dd9082611894565b610efe6118a9565b61012d805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516001600160a01b03909116815260200160405180910390a1565b6001600160a01b038316610f6f5760405162461bcd60e51b815260040161045390612848565b8051825114610f905760405162461bcd60e51b815260040161045390612730565b6000339050610fb3818560008686604051806020016040528060008152506115c5565b60005b835181101561107b576000848281518110610fd357610fd36126aa565b602002602001015190506000848381518110610ff157610ff16126aa565b602090810291909101810151600084815260c9835260408082206001600160a01b038c1683529093529190912054909150818110156110425760405162461bcd60e51b81526004016104539061288b565b600092835260c9602090815260408085206001600160a01b038b1686529091529092209103905580611073816126d6565b915050610fb6565b5060006001600160a01b0316846001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516110cc92919061278b565b60405180910390a4604080516020810190915260009052610566565b6001600160a01b03841661110e5760405162461bcd60e51b8152600401610453906126ef565b33600061111a856118f3565b90506000611127856118f3565b9050611138836000898585896115c5565b600086815260c9602090815260408083206001600160a01b038b1684529091528120805487929061116a908490612778565b909155505060408051878152602081018790526001600160a01b03808a1692600092918716917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46111ca8360008989898961193e565b50505050505050565b6111db6119f9565b61012d805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258610f2c3390565b600061094a8383611a40565b816001600160a01b0316836001600160a01b0316036112905760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b6064820152608401610453565b6001600160a01b03838116600081815260ca6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6000610481825490565b6001600160a01b03841661132d5760405162461bcd60e51b8152600401610453906127b9565b336000611339856118f3565b90506000611346856118f3565b90506113568389898585896115c5565b600086815260c9602090815260408083206001600160a01b038c168452909152902054858110156113995760405162461bcd60e51b8152600401610453906127fe565b600087815260c9602090815260408083206001600160a01b038d8116855292528083208985039055908a168252812080548892906113d8908490612778565b909155505060408051888152602081018890526001600160a01b03808b16928c821692918816917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4611438848a8a8a8a8a61193e565b505050505050505050565b6001600160a01b0383166114695760405162461bcd60e51b815260040161045390612848565b336000611475846118f3565b90506000611482846118f3565b90506114a2838760008585604051806020016040528060008152506115c5565b600085815260c9602090815260408083206001600160a01b038a168452909152902054848110156114e55760405162461bcd60e51b81526004016104539061288b565b600086815260c9602090815260408083206001600160a01b038b81168086529184528285208a8703905582518b81529384018a90529092908816917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46040805160208101909152600090526111ca565b600054610100900460ff166115865760405162461bcd60e51b8152600401610453906128cf565b61158f81611a6a565b611597611a9a565b610eaf81611ace565b60006001600160e01b03198216635a05180f60e01b1480610481575061048182611b30565b610e9d868686868686611b65565b6001600160a01b0384163b15610e9d5760405163bc197c8160e01b81526001600160a01b0385169063bc197c8190611617908990899088908890889060040161291a565b6020604051808303816000875af1925050508015611652575060408051601f3d908101601f1916820190925261164f91810190612978565b60015b6116fe5761165e612995565b806308c379a00361169757506116726129b1565b8061167d5750611699565b8060405162461bcd60e51b81526004016104539190611fa3565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e20455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b6064820152608401610453565b6001600160e01b0319811663bc197c8160e01b146111ca5760405162461bcd60e51b815260040161045390612a3a565b6117388282610951565b61065c57611750816001600160a01b03166014611bce565b61175b836020611bce565b60405160200161176c929190612a82565b60408051601f198184030181529082905262461bcd60e51b825261045391600401611fa3565b61179c8282610951565b61065c5760008281526065602090815260408083206001600160a01b03851684529091529020805460ff191660011790556117d43390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b600061094a836001600160a01b038416611d69565b6118378282610951565b1561065c5760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b600061094a836001600160a01b038416611db8565b61012d5460ff166106f25760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b6044820152606401610453565b6040805160018082528183019092526060916000919060208083019080368337019050509050828160008151811061192d5761192d6126aa565b602090810291909101015292915050565b6001600160a01b0384163b15610e9d5760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e61906119829089908990889088908890600401612af7565b6020604051808303816000875af19250505080156119bd575060408051601f3d908101601f191682019092526119ba91810190612978565b60015b6119c95761165e612995565b6001600160e01b0319811663f23a6e6160e01b146111ca5760405162461bcd60e51b815260040161045390612a3a565b61012d5460ff16156106f25760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b6044820152606401610453565b6000826000018281548110611a5757611a576126aa565b9060005260206000200154905092915050565b600054610100900460ff16611a915760405162461bcd60e51b8152600401610453906128cf565b610eaf81611eab565b600054610100900460ff16611ac15760405162461bcd60e51b8152600401610453906128cf565b61012d805460ff19169055565b600054610100900460ff16611af55760405162461bcd60e51b8152600401610453906128cf565b611b00600033611eb7565b611b18600080516020612cb983398151915233611eb7565b610eaf600080516020612c9983398151915233611eb7565b60006001600160e01b03198216637965db0b60e01b148061048157506301ffc9a760e01b6001600160e01b0319831614610481565b61012d5460ff1615610e9d5760405162461bcd60e51b815260206004820152602c60248201527f455243313135355061757361626c653a20746f6b656e207472616e736665722060448201526b1dda1a5b19481c185d5cd95960a21b6064820152608401610453565b60606000611bdd836002612b3c565b611be8906002612778565b6001600160401b03811115611bff57611bff611fb6565b6040519080825280601f01601f191660200182016040528015611c29576020820181803683370190505b509050600360fc1b81600081518110611c4457611c446126aa565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110611c7357611c736126aa565b60200101906001600160f81b031916908160001a9053506000611c97846002612b3c565b611ca2906001612778565b90505b6001811115611d1a576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611cd657611cd66126aa565b1a60f81b828281518110611cec57611cec6126aa565b60200101906001600160f81b031916908160001a90535060049490941c93611d1381612b53565b9050611ca5565b50831561094a5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610453565b6000818152600183016020526040812054611db057508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610481565b506000610481565b60008181526001830160205260408120548015611ea1576000611ddc600183612b6a565b8554909150600090611df090600190612b6a565b9050818114611e55576000866000018281548110611e1057611e106126aa565b9060005260206000200154905080876000018481548110611e3357611e336126aa565b6000918252602080832090910192909255918252600188019052604090208390555b8554869080611e6657611e66612b7d565b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050610481565b6000915050610481565b60cb61065c8282612bd9565b61065c8282610eb2565b80356001600160a01b0381168114611ed857600080fd5b919050565b60008060408385031215611ef057600080fd5b611ef983611ec1565b946020939093013593505050565b6001600160e01b031981168114610eaf57600080fd5b600060208284031215611f2f57600080fd5b813561094a81611f07565b600060208284031215611f4c57600080fd5b5035919050565b60005b83811015611f6e578181015183820152602001611f56565b50506000910152565b60008151808452611f8f816020860160208601611f53565b601f01601f19169290920160200192915050565b60208152600061094a6020830184611f77565b634e487b7160e01b600052604160045260246000fd5b601f8201601f191681016001600160401b0381118282101715611ff157611ff1611fb6565b6040525050565b60006001600160401b0382111561201157612011611fb6565b5060051b60200190565b600082601f83011261202c57600080fd5b8135602061203982611ff8565b6040516120468282611fcc565b83815260059390931b850182019282810191508684111561206657600080fd5b8286015b84811015612081578035835291830191830161206a565b509695505050505050565b60006001600160401b038311156120a5576120a5611fb6565b6040516120bc601f8501601f191660200182611fcc565b8091508381528484840111156120d157600080fd5b83836020830137600060208583010152509392505050565b600082601f8301126120fa57600080fd5b61094a8383356020850161208c565b6000806000806080858703121561211f57600080fd5b61212885611ec1565b935060208501356001600160401b038082111561214457600080fd5b6121508883890161201b565b9450604087013591508082111561216657600080fd5b6121728883890161201b565b9350606087013591508082111561218857600080fd5b50612195878288016120e9565b91505092959194509250565b600080600080600060a086880312156121b957600080fd5b6121c286611ec1565b94506121d060208701611ec1565b935060408601356001600160401b03808211156121ec57600080fd5b6121f889838a0161201b565b9450606088013591508082111561220e57600080fd5b61221a89838a0161201b565b9350608088013591508082111561223057600080fd5b5061223d888289016120e9565b9150509295509295909350565b6000806040838503121561225d57600080fd5b8235915061226d60208401611ec1565b90509250929050565b6000806040838503121561228957600080fd5b82356001600160401b03808211156122a057600080fd5b818501915085601f8301126122b457600080fd5b813560206122c182611ff8565b6040516122ce8282611fcc565b83815260059390931b85018201928281019150898411156122ee57600080fd5b948201945b838610156123135761230486611ec1565b825294820194908201906122f3565b9650508601359250508082111561232957600080fd5b506123368582860161201b565b9150509250929050565b600081518084526020808501945080840160005b8381101561237057815187529582019590820190600101612354565b509495945050505050565b60208152600061094a6020830184612340565b6000806000606084860312156123a357600080fd5b6123ac84611ec1565b925060208401356001600160401b03808211156123c857600080fd5b6123d48783880161201b565b935060408601359150808211156123ea57600080fd5b506123f78682870161201b565b9150509250925092565b6000806000806080858703121561241757600080fd5b61242085611ec1565b9350602085013592506040850135915060608501356001600160401b0381111561244957600080fd5b612195878288016120e9565b6000806040838503121561246857600080fd5b50508035926020909101359150565b6000806040838503121561248a57600080fd5b61249383611ec1565b9150602083013580151581146124a857600080fd5b809150509250929050565b600080604083850312156124c657600080fd5b6124cf83611ec1565b915061226d60208401611ec1565b600080600080600060a086880312156124f557600080fd5b6124fe86611ec1565b945061250c60208701611ec1565b9350604086013592506060860135915060808601356001600160401b0381111561253557600080fd5b61223d888289016120e9565b60008060006060848603121561255657600080fd5b61255f84611ec1565b95602085013595506040909401359392505050565b60006020828403121561258657600080fd5b81356001600160401b0381111561259c57600080fd5b8201601f810184136125ad57600080fd5b6125bc8482356020840161208c565b949350505050565b600181811c908216806125d857607f821691505b6020821081036125f857634e487b7160e01b600052602260045260246000fd5b50919050565b60208082526038908201527f455243313135355072657365744d696e7465725061757365723a206d7573742060408201527f68617665206d696e74657220726f6c6520746f206d696e740000000000000000606082015260800190565b6020808252602f908201527f455243313135353a2063616c6c6572206973206e6f7420746f6b656e206f776e60408201526e195c881b9bdc88185c1c1c9bdd9959608a1b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000600182016126e8576126e86126c0565b5060010190565b60208082526021908201527f455243313135353a206d696e7420746f20746865207a65726f206164647265736040820152607360f81b606082015260800190565b60208082526028908201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206040820152670dad2e6dac2e8c6d60c31b606082015260800190565b80820180821115610481576104816126c0565b60408152600061279e6040830185612340565b82810360208401526127b08185612340565b95945050505050565b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b60208082526023908201527f455243313135353a206275726e2066726f6d20746865207a65726f206164647260408201526265737360e81b606082015260800190565b60208082526024908201527f455243313135353a206275726e20616d6f756e7420657863656564732062616c604082015263616e636560e01b606082015260800190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6001600160a01b0386811682528516602082015260a06040820181905260009061294690830186612340565b82810360608401526129588186612340565b9050828103608084015261296c8185611f77565b98975050505050505050565b60006020828403121561298a57600080fd5b815161094a81611f07565b600060033d11156129ae5760046000803e5060005160e01c5b90565b600060443d10156129bf5790565b6040516003193d81016004833e81513d6001600160401b0381602484011181841117156129ee57505050505090565b8285019150815181811115612a065750505050505090565b843d8701016020828501011115612a205750505050505090565b612a2f60208286010187611fcc565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351612aba816017850160208801611f53565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351612aeb816028840160208801611f53565b01602801949350505050565b6001600160a01b03868116825285166020820152604081018490526060810183905260a060808201819052600090612b3190830184611f77565b979650505050505050565b8082028115828204841417610481576104816126c0565b600081612b6257612b626126c0565b506000190190565b81810381811115610481576104816126c0565b634e487b7160e01b600052603160045260246000fd5b601f8211156105dd57600081815260208120601f850160051c81016020861015612bba5750805b601f850160051c820191505b81811015610e9d57828155600101612bc6565b81516001600160401b03811115612bf257612bf2611fb6565b612c0681612c0084546125c4565b84612b93565b602080601f831160018114612c3b5760008415612c235750858301515b600019600386901b1c1916600185901b178555610e9d565b600085815260208120601f198616915b82811015612c6a57888601518255948401946001909101908401612c4b565b5085821015612c885787850151600019600388901b60f8161c191681555b5050505050600190811b0190555056fe65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000811000a"; - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "ApprovalForAll"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "uint8"; - readonly name: "version"; - readonly type: "uint8"; - }]; - readonly name: "Initialized"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "Paused"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "previousAdminRole"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "newAdminRole"; - readonly type: "bytes32"; - }]; - readonly name: "RoleAdminChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "sender"; - readonly type: "address"; - }]; - readonly name: "RoleGranted"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "sender"; - readonly type: "address"; - }]; - readonly name: "RoleRevoked"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "uint256[]"; - readonly name: "ids"; - readonly type: "uint256[]"; - }, { - readonly indexed: false; - readonly internalType: "uint256[]"; - readonly name: "values"; - readonly type: "uint256[]"; - }]; - readonly name: "TransferBatch"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "value"; - readonly type: "uint256"; - }]; - readonly name: "TransferSingle"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }]; - readonly name: "URI"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "Unpaused"; - readonly type: "event"; - }, { - readonly inputs: readonly []; - readonly name: "DEFAULT_ADMIN_ROLE"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "MINTER_ROLE"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "PAUSER_ROLE"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }]; - readonly name: "balanceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address[]"; - readonly name: "accounts"; - readonly type: "address[]"; - }, { - readonly internalType: "uint256[]"; - readonly name: "ids"; - readonly type: "uint256[]"; - }]; - readonly name: "balanceOfBatch"; - readonly outputs: readonly [{ - readonly internalType: "uint256[]"; - readonly name: ""; - readonly type: "uint256[]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "value"; - readonly type: "uint256"; - }]; - readonly name: "burn"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly internalType: "uint256[]"; - readonly name: "ids"; - readonly type: "uint256[]"; - }, { - readonly internalType: "uint256[]"; - readonly name: "values"; - readonly type: "uint256[]"; - }]; - readonly name: "burnBatch"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }]; - readonly name: "getRoleAdmin"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "index"; - readonly type: "uint256"; - }]; - readonly name: "getRoleMember"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }]; - readonly name: "getRoleMemberCount"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "grantRole"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "hasRole"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "uri"; - readonly type: "string"; - }]; - readonly name: "initialize"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly name: "isApprovedForAll"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "amount"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "mint"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256[]"; - readonly name: "ids"; - readonly type: "uint256[]"; - }, { - readonly internalType: "uint256[]"; - readonly name: "amounts"; - readonly type: "uint256[]"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "mintBatch"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "pause"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "paused"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "renounceRole"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "revokeRole"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256[]"; - readonly name: "ids"; - readonly type: "uint256[]"; - }, { - readonly internalType: "uint256[]"; - readonly name: "amounts"; - readonly type: "uint256[]"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "safeBatchTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "amount"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "setApprovalForAll"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "unpause"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly name: "uri"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): ERC1155PresetMinterPauserUpgradeableInterface; - static connect(address: string, runner?: ContractRunner | null): ERC1155PresetMinterPauserUpgradeable; -} -export {}; -//# sourceMappingURL=ERC1155PresetMinterPauserUpgradeable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable__factory.d.ts.map deleted file mode 100644 index 3e22090d..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ERC1155PresetMinterPauserUpgradeable__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,KAAK,EACV,oCAAoC,EACpC,6CAA6C,EAC9C,MAAM,kHAAkH,CAAC;AAmvB1H,aAAK,qDAAqD,GACtD,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,6CAA8C,SAAQ,eAAe;gBACpE,GAAG,IAAI,EAAE,qDAAqD;IAQjE,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CACd,MAAM,EAAE,cAAc,GAAG,IAAI,GAC5B,6CAA6C;IAMhD,MAAM,CAAC,QAAQ,CAAC,QAAQ,khtBAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,6CAA6C;IAGvE,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,oCAAoC;CAOxC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable__factory.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable__factory.js deleted file mode 100644 index 9b2bfbfb..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable__factory.js +++ /dev/null @@ -1,783 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ERC1155PresetMinterPauserUpgradeable__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: false, - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "ApprovalForAll", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint8", - name: "version", - type: "uint8", - }, - ], - name: "Initialized", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "Paused", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - indexed: true, - internalType: "bytes32", - name: "previousAdminRole", - type: "bytes32", - }, - { - indexed: true, - internalType: "bytes32", - name: "newAdminRole", - type: "bytes32", - }, - ], - name: "RoleAdminChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "sender", - type: "address", - }, - ], - name: "RoleGranted", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "sender", - type: "address", - }, - ], - name: "RoleRevoked", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: false, - internalType: "uint256[]", - name: "ids", - type: "uint256[]", - }, - { - indexed: false, - internalType: "uint256[]", - name: "values", - type: "uint256[]", - }, - ], - name: "TransferBatch", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "value", - type: "uint256", - }, - ], - name: "TransferSingle", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "string", - name: "value", - type: "string", - }, - { - indexed: true, - internalType: "uint256", - name: "id", - type: "uint256", - }, - ], - name: "URI", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "Unpaused", - type: "event", - }, - { - inputs: [], - name: "DEFAULT_ADMIN_ROLE", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - 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: [ - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address[]", - name: "accounts", - type: "address[]", - }, - { - internalType: "uint256[]", - name: "ids", - type: "uint256[]", - }, - ], - name: "balanceOfBatch", - outputs: [ - { - internalType: "uint256[]", - name: "", - type: "uint256[]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - internalType: "uint256", - name: "value", - type: "uint256", - }, - ], - name: "burn", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "uint256[]", - name: "ids", - type: "uint256[]", - }, - { - internalType: "uint256[]", - name: "values", - type: "uint256[]", - }, - ], - name: "burnBatch", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - ], - name: "getRoleAdmin", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - 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: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "grantRole", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "hasRole", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "uri", - type: "string", - }, - ], - name: "initialize", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - name: "isApprovedForAll", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "mint", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256[]", - name: "ids", - type: "uint256[]", - }, - { - internalType: "uint256[]", - name: "amounts", - type: "uint256[]", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "mintBatch", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "pause", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "paused", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "renounceRole", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "revokeRole", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256[]", - name: "ids", - type: "uint256[]", - }, - { - internalType: "uint256[]", - name: "amounts", - type: "uint256[]", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "safeBatchTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "safeTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "setApprovalForAll", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "unpause", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - name: "uri", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -const _bytecode = "0x608060405234801561001057600080fd5b50612ce5806100206000396000f3fe608060405234801561001057600080fd5b506004361061018d5760003560e01c80638456cb59116100de578063d539139311610097578063e985e9c511610071578063e985e9c514610377578063f242432a146103b3578063f5298aca146103c6578063f62d1888146103d957600080fd5b8063d53913931461033a578063d547741f1461034f578063e63ab1e91461036257600080fd5b80638456cb59146102c65780639010d07c146102ce57806391d14854146102f9578063a217fddf1461030c578063a22cb46514610314578063ca15c8731461032757600080fd5b80632f2ff15d1161014b5780634e1273f4116101255780634e1273f4146102745780635c975abb146102945780636b20c454146102a0578063731133e9146102b357600080fd5b80632f2ff15d1461024657806336568abe146102595780633f4ba83a1461026c57600080fd5b8062fdd58e1461019257806301ffc9a7146101b85780630e89341c146101db5780631f7fdffa146101fb578063248a9ca3146102105780632eb2c2d614610233575b600080fd5b6101a56101a0366004611edd565b6103ec565b6040519081526020015b60405180910390f35b6101cb6101c6366004611f1d565b610487565b60405190151581526020016101af565b6101ee6101e9366004611f3a565b610492565b6040516101af9190611fa3565b61020e610209366004612109565b610526565b005b6101a561021e366004611f3a565b60009081526065602052604090206001015490565b61020e6102413660046121a1565b61056c565b61020e61025436600461224a565b6105b8565b61020e61026736600461224a565b6105e2565b61020e610660565b610287610282366004612276565b6106f4565b6040516101af919061237b565b61012d5460ff166101cb565b61020e6102ae36600461238e565b61081d565b61020e6102c1366004612401565b610860565b61020e6108a0565b6102e16102dc366004612455565b610932565b6040516001600160a01b0390911681526020016101af565b6101cb61030736600461224a565b610951565b6101a5600081565b61020e610322366004612477565b61097c565b6101a5610335366004611f3a565b610987565b6101a5600080516020612cb983398151915281565b61020e61035d36600461224a565b61099e565b6101a5600080516020612c9983398151915281565b6101cb6103853660046124b3565b6001600160a01b03918216600090815260ca6020908152604080832093909416825291909152205460ff1690565b61020e6103c13660046124dd565b6109c3565b61020e6103d4366004612541565b610a08565b61020e6103e7366004612574565b610a4b565b60006001600160a01b03831661045c5760405162461bcd60e51b815260206004820152602a60248201527f455243313135353a2061646472657373207a65726f206973206e6f742061207660448201526930b634b21037bbb732b960b11b60648201526084015b60405180910390fd5b50600081815260c9602090815260408083206001600160a01b03861684529091529020545b92915050565b600061048182610b5d565b606060cb80546104a1906125c4565b80601f01602080910402602001604051908101604052809291908181526020018280546104cd906125c4565b801561051a5780601f106104ef5761010080835404028352916020019161051a565b820191906000526020600020905b8154815290600101906020018083116104fd57829003601f168201915b50505050509050919050565b61053e600080516020612cb983398151915233610951565b61055a5760405162461bcd60e51b8152600401610453906125fe565b61056684848484610b9d565b50505050565b6001600160a01b03851633148061058857506105888533610385565b6105a45760405162461bcd60e51b81526004016104539061265b565b6105b18585858585610cf8565b5050505050565b6000828152606560205260409020600101546105d381610ea5565b6105dd8383610eb2565b505050565b6001600160a01b03811633146106525760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610453565b61065c8282610ed4565b5050565b610678600080516020612c9983398151915233610951565b6106ea5760405162461bcd60e51b815260206004820152603b60248201527f455243313135355072657365744d696e7465725061757365723a206d7573742060448201527f686176652070617573657220726f6c6520746f20756e706175736500000000006064820152608401610453565b6106f2610ef6565b565b606081518351146107595760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b6064820152608401610453565b600083516001600160401b0381111561077457610774611fb6565b60405190808252806020026020018201604052801561079d578160200160208202803683370190505b50905060005b8451811015610815576107e88582815181106107c1576107c16126aa565b60200260200101518583815181106107db576107db6126aa565b60200260200101516103ec565b8282815181106107fa576107fa6126aa565b602090810291909101015261080e816126d6565b90506107a3565b509392505050565b6001600160a01b03831633148061083957506108398333610385565b6108555760405162461bcd60e51b81526004016104539061265b565b6105dd838383610f49565b610878600080516020612cb983398151915233610951565b6108945760405162461bcd60e51b8152600401610453906125fe565b610566848484846110e8565b6108b8600080516020612c9983398151915233610951565b61092a5760405162461bcd60e51b815260206004820152603960248201527f455243313135355072657365744d696e7465725061757365723a206d7573742060448201527f686176652070617573657220726f6c6520746f207061757365000000000000006064820152608401610453565b6106f26111d3565b600082815260976020526040812061094a9083611211565b9392505050565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b61065c33838361121d565b6000818152609760205260408120610481906112fd565b6000828152606560205260409020600101546109b981610ea5565b6105dd8383610ed4565b6001600160a01b0385163314806109df57506109df8533610385565b6109fb5760405162461bcd60e51b81526004016104539061265b565b6105b18585858585611307565b6001600160a01b038316331480610a245750610a248333610385565b610a405760405162461bcd60e51b81526004016104539061265b565b6105dd838383611443565b600054610100900460ff1615808015610a6b5750600054600160ff909116105b80610a855750303b158015610a85575060005460ff166001145b610ae85760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610453565b6000805460ff191660011790558015610b0b576000805461ff0019166101001790555b610b148261155f565b801561065c576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b60006001600160e01b03198216636cdb3d1360e11b1480610b8e57506001600160e01b031982166303a24d0760e21b145b806104815750610481826115a0565b6001600160a01b038416610bc35760405162461bcd60e51b8152600401610453906126ef565b8151835114610be45760405162461bcd60e51b815260040161045390612730565b33610bf4816000878787876115c5565b60005b8451811015610c9057838181518110610c1257610c126126aa565b602002602001015160c96000878481518110610c3057610c306126aa565b602002602001015181526020019081526020016000206000886001600160a01b03166001600160a01b031681526020019081526020016000206000828254610c789190612778565b90915550819050610c88816126d6565b915050610bf7565b50846001600160a01b031660006001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051610ce192919061278b565b60405180910390a46105b1816000878787876115d3565b8151835114610d195760405162461bcd60e51b815260040161045390612730565b6001600160a01b038416610d3f5760405162461bcd60e51b8152600401610453906127b9565b33610d4e8187878787876115c5565b60005b8451811015610e37576000858281518110610d6e57610d6e6126aa565b602002602001015190506000858381518110610d8c57610d8c6126aa565b602090810291909101810151600084815260c9835260408082206001600160a01b038e168352909352919091205490915081811015610ddd5760405162461bcd60e51b8152600401610453906127fe565b600083815260c9602090815260408083206001600160a01b038e8116855292528083208585039055908b16825281208054849290610e1c908490612778565b9250508190555050505080610e30906126d6565b9050610d51565b50846001600160a01b0316866001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051610e8792919061278b565b60405180910390a4610e9d8187878787876115d3565b505050505050565b610eaf813361172e565b50565b610ebc8282611792565b60008281526097602052604090206105dd9082611818565b610ede828261182d565b60008281526097602052604090206105dd9082611894565b610efe6118a9565b61012d805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516001600160a01b03909116815260200160405180910390a1565b6001600160a01b038316610f6f5760405162461bcd60e51b815260040161045390612848565b8051825114610f905760405162461bcd60e51b815260040161045390612730565b6000339050610fb3818560008686604051806020016040528060008152506115c5565b60005b835181101561107b576000848281518110610fd357610fd36126aa565b602002602001015190506000848381518110610ff157610ff16126aa565b602090810291909101810151600084815260c9835260408082206001600160a01b038c1683529093529190912054909150818110156110425760405162461bcd60e51b81526004016104539061288b565b600092835260c9602090815260408085206001600160a01b038b1686529091529092209103905580611073816126d6565b915050610fb6565b5060006001600160a01b0316846001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516110cc92919061278b565b60405180910390a4604080516020810190915260009052610566565b6001600160a01b03841661110e5760405162461bcd60e51b8152600401610453906126ef565b33600061111a856118f3565b90506000611127856118f3565b9050611138836000898585896115c5565b600086815260c9602090815260408083206001600160a01b038b1684529091528120805487929061116a908490612778565b909155505060408051878152602081018790526001600160a01b03808a1692600092918716917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46111ca8360008989898961193e565b50505050505050565b6111db6119f9565b61012d805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258610f2c3390565b600061094a8383611a40565b816001600160a01b0316836001600160a01b0316036112905760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b6064820152608401610453565b6001600160a01b03838116600081815260ca6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6000610481825490565b6001600160a01b03841661132d5760405162461bcd60e51b8152600401610453906127b9565b336000611339856118f3565b90506000611346856118f3565b90506113568389898585896115c5565b600086815260c9602090815260408083206001600160a01b038c168452909152902054858110156113995760405162461bcd60e51b8152600401610453906127fe565b600087815260c9602090815260408083206001600160a01b038d8116855292528083208985039055908a168252812080548892906113d8908490612778565b909155505060408051888152602081018890526001600160a01b03808b16928c821692918816917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4611438848a8a8a8a8a61193e565b505050505050505050565b6001600160a01b0383166114695760405162461bcd60e51b815260040161045390612848565b336000611475846118f3565b90506000611482846118f3565b90506114a2838760008585604051806020016040528060008152506115c5565b600085815260c9602090815260408083206001600160a01b038a168452909152902054848110156114e55760405162461bcd60e51b81526004016104539061288b565b600086815260c9602090815260408083206001600160a01b038b81168086529184528285208a8703905582518b81529384018a90529092908816917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46040805160208101909152600090526111ca565b600054610100900460ff166115865760405162461bcd60e51b8152600401610453906128cf565b61158f81611a6a565b611597611a9a565b610eaf81611ace565b60006001600160e01b03198216635a05180f60e01b1480610481575061048182611b30565b610e9d868686868686611b65565b6001600160a01b0384163b15610e9d5760405163bc197c8160e01b81526001600160a01b0385169063bc197c8190611617908990899088908890889060040161291a565b6020604051808303816000875af1925050508015611652575060408051601f3d908101601f1916820190925261164f91810190612978565b60015b6116fe5761165e612995565b806308c379a00361169757506116726129b1565b8061167d5750611699565b8060405162461bcd60e51b81526004016104539190611fa3565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e20455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b6064820152608401610453565b6001600160e01b0319811663bc197c8160e01b146111ca5760405162461bcd60e51b815260040161045390612a3a565b6117388282610951565b61065c57611750816001600160a01b03166014611bce565b61175b836020611bce565b60405160200161176c929190612a82565b60408051601f198184030181529082905262461bcd60e51b825261045391600401611fa3565b61179c8282610951565b61065c5760008281526065602090815260408083206001600160a01b03851684529091529020805460ff191660011790556117d43390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b600061094a836001600160a01b038416611d69565b6118378282610951565b1561065c5760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b600061094a836001600160a01b038416611db8565b61012d5460ff166106f25760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b6044820152606401610453565b6040805160018082528183019092526060916000919060208083019080368337019050509050828160008151811061192d5761192d6126aa565b602090810291909101015292915050565b6001600160a01b0384163b15610e9d5760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e61906119829089908990889088908890600401612af7565b6020604051808303816000875af19250505080156119bd575060408051601f3d908101601f191682019092526119ba91810190612978565b60015b6119c95761165e612995565b6001600160e01b0319811663f23a6e6160e01b146111ca5760405162461bcd60e51b815260040161045390612a3a565b61012d5460ff16156106f25760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b6044820152606401610453565b6000826000018281548110611a5757611a576126aa565b9060005260206000200154905092915050565b600054610100900460ff16611a915760405162461bcd60e51b8152600401610453906128cf565b610eaf81611eab565b600054610100900460ff16611ac15760405162461bcd60e51b8152600401610453906128cf565b61012d805460ff19169055565b600054610100900460ff16611af55760405162461bcd60e51b8152600401610453906128cf565b611b00600033611eb7565b611b18600080516020612cb983398151915233611eb7565b610eaf600080516020612c9983398151915233611eb7565b60006001600160e01b03198216637965db0b60e01b148061048157506301ffc9a760e01b6001600160e01b0319831614610481565b61012d5460ff1615610e9d5760405162461bcd60e51b815260206004820152602c60248201527f455243313135355061757361626c653a20746f6b656e207472616e736665722060448201526b1dda1a5b19481c185d5cd95960a21b6064820152608401610453565b60606000611bdd836002612b3c565b611be8906002612778565b6001600160401b03811115611bff57611bff611fb6565b6040519080825280601f01601f191660200182016040528015611c29576020820181803683370190505b509050600360fc1b81600081518110611c4457611c446126aa565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110611c7357611c736126aa565b60200101906001600160f81b031916908160001a9053506000611c97846002612b3c565b611ca2906001612778565b90505b6001811115611d1a576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611cd657611cd66126aa565b1a60f81b828281518110611cec57611cec6126aa565b60200101906001600160f81b031916908160001a90535060049490941c93611d1381612b53565b9050611ca5565b50831561094a5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610453565b6000818152600183016020526040812054611db057508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610481565b506000610481565b60008181526001830160205260408120548015611ea1576000611ddc600183612b6a565b8554909150600090611df090600190612b6a565b9050818114611e55576000866000018281548110611e1057611e106126aa565b9060005260206000200154905080876000018481548110611e3357611e336126aa565b6000918252602080832090910192909255918252600188019052604090208390555b8554869080611e6657611e66612b7d565b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050610481565b6000915050610481565b60cb61065c8282612bd9565b61065c8282610eb2565b80356001600160a01b0381168114611ed857600080fd5b919050565b60008060408385031215611ef057600080fd5b611ef983611ec1565b946020939093013593505050565b6001600160e01b031981168114610eaf57600080fd5b600060208284031215611f2f57600080fd5b813561094a81611f07565b600060208284031215611f4c57600080fd5b5035919050565b60005b83811015611f6e578181015183820152602001611f56565b50506000910152565b60008151808452611f8f816020860160208601611f53565b601f01601f19169290920160200192915050565b60208152600061094a6020830184611f77565b634e487b7160e01b600052604160045260246000fd5b601f8201601f191681016001600160401b0381118282101715611ff157611ff1611fb6565b6040525050565b60006001600160401b0382111561201157612011611fb6565b5060051b60200190565b600082601f83011261202c57600080fd5b8135602061203982611ff8565b6040516120468282611fcc565b83815260059390931b850182019282810191508684111561206657600080fd5b8286015b84811015612081578035835291830191830161206a565b509695505050505050565b60006001600160401b038311156120a5576120a5611fb6565b6040516120bc601f8501601f191660200182611fcc565b8091508381528484840111156120d157600080fd5b83836020830137600060208583010152509392505050565b600082601f8301126120fa57600080fd5b61094a8383356020850161208c565b6000806000806080858703121561211f57600080fd5b61212885611ec1565b935060208501356001600160401b038082111561214457600080fd5b6121508883890161201b565b9450604087013591508082111561216657600080fd5b6121728883890161201b565b9350606087013591508082111561218857600080fd5b50612195878288016120e9565b91505092959194509250565b600080600080600060a086880312156121b957600080fd5b6121c286611ec1565b94506121d060208701611ec1565b935060408601356001600160401b03808211156121ec57600080fd5b6121f889838a0161201b565b9450606088013591508082111561220e57600080fd5b61221a89838a0161201b565b9350608088013591508082111561223057600080fd5b5061223d888289016120e9565b9150509295509295909350565b6000806040838503121561225d57600080fd5b8235915061226d60208401611ec1565b90509250929050565b6000806040838503121561228957600080fd5b82356001600160401b03808211156122a057600080fd5b818501915085601f8301126122b457600080fd5b813560206122c182611ff8565b6040516122ce8282611fcc565b83815260059390931b85018201928281019150898411156122ee57600080fd5b948201945b838610156123135761230486611ec1565b825294820194908201906122f3565b9650508601359250508082111561232957600080fd5b506123368582860161201b565b9150509250929050565b600081518084526020808501945080840160005b8381101561237057815187529582019590820190600101612354565b509495945050505050565b60208152600061094a6020830184612340565b6000806000606084860312156123a357600080fd5b6123ac84611ec1565b925060208401356001600160401b03808211156123c857600080fd5b6123d48783880161201b565b935060408601359150808211156123ea57600080fd5b506123f78682870161201b565b9150509250925092565b6000806000806080858703121561241757600080fd5b61242085611ec1565b9350602085013592506040850135915060608501356001600160401b0381111561244957600080fd5b612195878288016120e9565b6000806040838503121561246857600080fd5b50508035926020909101359150565b6000806040838503121561248a57600080fd5b61249383611ec1565b9150602083013580151581146124a857600080fd5b809150509250929050565b600080604083850312156124c657600080fd5b6124cf83611ec1565b915061226d60208401611ec1565b600080600080600060a086880312156124f557600080fd5b6124fe86611ec1565b945061250c60208701611ec1565b9350604086013592506060860135915060808601356001600160401b0381111561253557600080fd5b61223d888289016120e9565b60008060006060848603121561255657600080fd5b61255f84611ec1565b95602085013595506040909401359392505050565b60006020828403121561258657600080fd5b81356001600160401b0381111561259c57600080fd5b8201601f810184136125ad57600080fd5b6125bc8482356020840161208c565b949350505050565b600181811c908216806125d857607f821691505b6020821081036125f857634e487b7160e01b600052602260045260246000fd5b50919050565b60208082526038908201527f455243313135355072657365744d696e7465725061757365723a206d7573742060408201527f68617665206d696e74657220726f6c6520746f206d696e740000000000000000606082015260800190565b6020808252602f908201527f455243313135353a2063616c6c6572206973206e6f7420746f6b656e206f776e60408201526e195c881b9bdc88185c1c1c9bdd9959608a1b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000600182016126e8576126e86126c0565b5060010190565b60208082526021908201527f455243313135353a206d696e7420746f20746865207a65726f206164647265736040820152607360f81b606082015260800190565b60208082526028908201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206040820152670dad2e6dac2e8c6d60c31b606082015260800190565b80820180821115610481576104816126c0565b60408152600061279e6040830185612340565b82810360208401526127b08185612340565b95945050505050565b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b60208082526023908201527f455243313135353a206275726e2066726f6d20746865207a65726f206164647260408201526265737360e81b606082015260800190565b60208082526024908201527f455243313135353a206275726e20616d6f756e7420657863656564732062616c604082015263616e636560e01b606082015260800190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6001600160a01b0386811682528516602082015260a06040820181905260009061294690830186612340565b82810360608401526129588186612340565b9050828103608084015261296c8185611f77565b98975050505050505050565b60006020828403121561298a57600080fd5b815161094a81611f07565b600060033d11156129ae5760046000803e5060005160e01c5b90565b600060443d10156129bf5790565b6040516003193d81016004833e81513d6001600160401b0381602484011181841117156129ee57505050505090565b8285019150815181811115612a065750505050505090565b843d8701016020828501011115612a205750505050505090565b612a2f60208286010187611fcc565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351612aba816017850160208801611f53565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351612aeb816028840160208801611f53565b01602801949350505050565b6001600160a01b03868116825285166020820152604081018490526060810183905260a060808201819052600090612b3190830184611f77565b979650505050505050565b8082028115828204841417610481576104816126c0565b600081612b6257612b626126c0565b506000190190565b81810381811115610481576104816126c0565b634e487b7160e01b600052603160045260246000fd5b601f8211156105dd57600081815260208120601f850160051c81016020861015612bba5750805b601f850160051c820191505b81811015610e9d57828155600101612bc6565b81516001600160401b03811115612bf257612bf2611fb6565b612c0681612c0084546125c4565b84612b93565b602080601f831160018114612c3b5760008415612c235750858301515b600019600386901b1c1916600185901b178555610e9d565b600085815260208120601f198616915b82811015612c6a57888601518255948401946001909101908401612c4b565b5085821015612c885787850151600019600388901b60f8161c191681555b5050505050600190811b0190555056fe65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000811000a"; -const isSuperArgs = (xs) => xs.length > 1; -class ERC1155PresetMinterPauserUpgradeable__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(overrides) { - return super.getDeployTransaction(overrides || {}); - } - deploy(overrides) { - return super.deploy(overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.ERC1155PresetMinterPauserUpgradeable__factory = ERC1155PresetMinterPauserUpgradeable__factory; -ERC1155PresetMinterPauserUpgradeable__factory.bytecode = _bytecode; -ERC1155PresetMinterPauserUpgradeable__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/index.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/index.d.ts deleted file mode 100644 index b0747a63..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export { ERC1155PresetMinterPauserUpgradeable__factory } from "./ERC1155PresetMinterPauserUpgradeable__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/index.d.ts.map deleted file mode 100644 index 43f1e013..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,6CAA6C,EAAE,MAAM,iDAAiD,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/index.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/index.js deleted file mode 100644 index e3dffca4..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/index.js +++ /dev/null @@ -1,5 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ERC1155PresetMinterPauserUpgradeable__factory = void 0; -var ERC1155PresetMinterPauserUpgradeable__factory_1 = require("./ERC1155PresetMinterPauserUpgradeable__factory"); -Object.defineProperty(exports, "ERC1155PresetMinterPauserUpgradeable__factory", { enumerable: true, get: function () { return ERC1155PresetMinterPauserUpgradeable__factory_1.ERC1155PresetMinterPauserUpgradeable__factory; } }); diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable__factory.d.ts deleted file mode 100644 index 1806d307..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable__factory.d.ts +++ /dev/null @@ -1,148 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IERC20Upgradeable, IERC20UpgradeableInterface } from "../../../../../@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable"; -export declare class IERC20Upgradeable__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "spender"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "value"; - readonly type: "uint256"; - }]; - readonly name: "Approval"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "value"; - readonly type: "uint256"; - }]; - readonly name: "Transfer"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "spender"; - readonly type: "address"; - }]; - readonly name: "allowance"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "spender"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "amount"; - readonly type: "uint256"; - }]; - readonly name: "approve"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "balanceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "totalSupply"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "amount"; - readonly type: "uint256"; - }]; - readonly name: "transfer"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "amount"; - readonly type: "uint256"; - }]; - readonly name: "transferFrom"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): IERC20UpgradeableInterface; - static connect(address: string, runner?: ContractRunner | null): IERC20Upgradeable; -} -//# sourceMappingURL=IERC20Upgradeable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable__factory.d.ts.map deleted file mode 100644 index ec5cd53b..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC20Upgradeable__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,iBAAiB,EACjB,0BAA0B,EAC3B,MAAM,kFAAkF,CAAC;AA4L1F,qBAAa,0BAA0B;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,0BAA0B;IAGpD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,iBAAiB;CAGrB"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable__factory.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable__factory.js deleted file mode 100644 index 039cdc5c..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable__factory.js +++ /dev/null @@ -1,199 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IERC20Upgradeable__factory = void 0; -const ethers_1 = require("ethers"); -const _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: "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", - }, -]; -class IERC20Upgradeable__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IERC20Upgradeable__factory = IERC20Upgradeable__factory; -IERC20Upgradeable__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/index.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/index.d.ts deleted file mode 100644 index 7c959ebb..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export { IERC20Upgradeable__factory } from "./IERC20Upgradeable__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/index.d.ts.map deleted file mode 100644 index 1525d87b..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/index.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/index.js deleted file mode 100644 index 244015f4..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/index.js +++ /dev/null @@ -1,5 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IERC20Upgradeable__factory = void 0; -var IERC20Upgradeable__factory_1 = require("./IERC20Upgradeable__factory"); -Object.defineProperty(exports, "IERC20Upgradeable__factory", { enumerable: true, get: function () { return IERC20Upgradeable__factory_1.IERC20Upgradeable__factory; } }); diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable__factory.d.ts deleted file mode 100644 index 89b61de5..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable__factory.d.ts +++ /dev/null @@ -1,287 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../../../common"; -import type { ERC721Upgradeable, ERC721UpgradeableInterface } from "../../../../../@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable"; -declare type ERC721UpgradeableConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class ERC721Upgradeable__factory extends ContractFactory { - constructor(...args: ERC721UpgradeableConstructorParams); - getDeployTransaction(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): ERC721Upgradeable__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b506110e2806100206000396000f3fe608060405234801561001057600080fd5b50600436106100cf5760003560e01c80636352211e1161008c578063a22cb46511610066578063a22cb465146101b3578063b88d4fde146101c6578063c87b56dd146101d9578063e985e9c5146101ec57600080fd5b80636352211e1461017757806370a082311461018a57806395d89b41146101ab57600080fd5b806301ffc9a7146100d457806306fdde03146100fc578063081812fc14610111578063095ea7b31461013c57806323b872dd1461015157806342842e0e14610164575b600080fd5b6100e76100e2366004610c32565b6101ff565b60405190151581526020015b60405180910390f35b610104610251565b6040516100f39190610c9f565b61012461011f366004610cb2565b6102e3565b6040516001600160a01b0390911681526020016100f3565b61014f61014a366004610ce7565b61030a565b005b61014f61015f366004610d11565b610424565b61014f610172366004610d11565b610455565b610124610185366004610cb2565b610470565b61019d610198366004610d4d565b6104d0565b6040519081526020016100f3565b610104610556565b61014f6101c1366004610d68565b610565565b61014f6101d4366004610dba565b610574565b6101046101e7366004610cb2565b6105ac565b6100e76101fa366004610e96565b610620565b60006001600160e01b031982166380ac58cd60e01b148061023057506001600160e01b03198216635b5e139f60e01b145b8061024b57506301ffc9a760e01b6001600160e01b03198316145b92915050565b60606065805461026090610ec9565b80601f016020809104026020016040519081016040528092919081815260200182805461028c90610ec9565b80156102d95780601f106102ae576101008083540402835291602001916102d9565b820191906000526020600020905b8154815290600101906020018083116102bc57829003601f168201915b5050505050905090565b60006102ee8261064e565b506000908152606960205260409020546001600160a01b031690565b600061031582610470565b9050806001600160a01b0316836001600160a01b0316036103875760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084015b60405180910390fd5b336001600160a01b03821614806103a357506103a38133610620565b6104155760405162461bcd60e51b815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c0000606482015260840161037e565b61041f83836106b0565b505050565b61042e338261071e565b61044a5760405162461bcd60e51b815260040161037e90610f03565b61041f83838361077d565b61041f83838360405180602001604052806000815250610574565b6000818152606760205260408120546001600160a01b03168061024b5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b604482015260640161037e565b60006001600160a01b03821661053a5760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b606482015260840161037e565b506001600160a01b031660009081526068602052604090205490565b60606066805461026090610ec9565b610570338383610919565b5050565b61057e338361071e565b61059a5760405162461bcd60e51b815260040161037e90610f03565b6105a6848484846109e7565b50505050565b60606105b78261064e565b60006105ce60408051602081019091526000815290565b905060008151116105ee5760405180602001604052806000815250610619565b806105f884610a1a565b604051602001610609929190610f51565b6040516020818303038152906040525b9392505050565b6001600160a01b039182166000908152606a6020908152604080832093909416825291909152205460ff1690565b6000818152606760205260409020546001600160a01b03166106ad5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b604482015260640161037e565b50565b600081815260696020526040902080546001600160a01b0319166001600160a01b03841690811790915581906106e582610470565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60008061072a83610470565b9050806001600160a01b0316846001600160a01b0316148061075157506107518185610620565b806107755750836001600160a01b031661076a846102e3565b6001600160a01b0316145b949350505050565b826001600160a01b031661079082610470565b6001600160a01b0316146107f45760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b606482015260840161037e565b6001600160a01b0382166108565760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b606482015260840161037e565b6108616000826106b0565b6001600160a01b038316600090815260686020526040812080546001929061088a908490610f96565b90915550506001600160a01b03821660009081526068602052604081208054600192906108b8908490610fa9565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b816001600160a01b0316836001600160a01b03160361097a5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604482015260640161037e565b6001600160a01b038381166000818152606a6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6109f284848461077d565b6109fe84848484610b1b565b6105a65760405162461bcd60e51b815260040161037e90610fbc565b606081600003610a415750506040805180820190915260018152600360fc1b602082015290565b8160005b8115610a6b5780610a558161100e565b9150610a649050600a8361103d565b9150610a45565b60008167ffffffffffffffff811115610a8657610a86610da4565b6040519080825280601f01601f191660200182016040528015610ab0576020820181803683370190505b5090505b841561077557610ac5600183610f96565b9150610ad2600a86611051565b610add906030610fa9565b60f81b818381518110610af257610af2611065565b60200101906001600160f81b031916908160001a905350610b14600a8661103d565b9450610ab4565b60006001600160a01b0384163b15610c1157604051630a85bd0160e11b81526001600160a01b0385169063150b7a0290610b5f90339089908890889060040161107b565b6020604051808303816000875af1925050508015610b9a575060408051601f3d908101601f19168201909252610b97918101906110b8565b60015b610bf7573d808015610bc8576040519150601f19603f3d011682016040523d82523d6000602084013e610bcd565b606091505b508051600003610bef5760405162461bcd60e51b815260040161037e90610fbc565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610775565b506001949350505050565b6001600160e01b0319811681146106ad57600080fd5b600060208284031215610c4457600080fd5b813561061981610c1c565b60005b83811015610c6a578181015183820152602001610c52565b50506000910152565b60008151808452610c8b816020860160208601610c4f565b601f01601f19169290920160200192915050565b6020815260006106196020830184610c73565b600060208284031215610cc457600080fd5b5035919050565b80356001600160a01b0381168114610ce257600080fd5b919050565b60008060408385031215610cfa57600080fd5b610d0383610ccb565b946020939093013593505050565b600080600060608486031215610d2657600080fd5b610d2f84610ccb565b9250610d3d60208501610ccb565b9150604084013590509250925092565b600060208284031215610d5f57600080fd5b61061982610ccb565b60008060408385031215610d7b57600080fd5b610d8483610ccb565b915060208301358015158114610d9957600080fd5b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b60008060008060808587031215610dd057600080fd5b610dd985610ccb565b9350610de760208601610ccb565b925060408501359150606085013567ffffffffffffffff80821115610e0b57600080fd5b818701915087601f830112610e1f57600080fd5b813581811115610e3157610e31610da4565b604051601f8201601f19908116603f01168101908382118183101715610e5957610e59610da4565b816040528281528a6020848701011115610e7257600080fd5b82602086016020830137600060208483010152809550505050505092959194509250565b60008060408385031215610ea957600080fd5b610eb283610ccb565b9150610ec060208401610ccb565b90509250929050565b600181811c90821680610edd57607f821691505b602082108103610efd57634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252602e908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526d1c881b9bdc88185c1c1c9bdd995960921b606082015260800190565b60008351610f63818460208801610c4f565b835190830190610f77818360208801610c4f565b01949350505050565b634e487b7160e01b600052601160045260246000fd5b8181038181111561024b5761024b610f80565b8082018082111561024b5761024b610f80565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b60006001820161102057611020610f80565b5060010190565b634e487b7160e01b600052601260045260246000fd5b60008261104c5761104c611027565b500490565b60008261106057611060611027565b500690565b634e487b7160e01b600052603260045260246000fd5b6001600160a01b03858116825284166020820152604081018390526080606082018190526000906110ae90830184610c73565b9695505050505050565b6000602082840312156110ca57600080fd5b815161061981610c1c56fea164736f6c6343000811000a"; - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "approved"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Approval"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "ApprovalForAll"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "uint8"; - readonly name: "version"; - readonly type: "uint8"; - }]; - readonly name: "Initialized"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Transfer"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "approve"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "balanceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getApproved"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly name: "isApprovedForAll"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "name"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "ownerOf"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "setApprovalForAll"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "symbol"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "tokenURI"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "transferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): ERC721UpgradeableInterface; - static connect(address: string, runner?: ContractRunner | null): ERC721Upgradeable; -} -export {}; -//# sourceMappingURL=ERC721Upgradeable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable__factory.d.ts.map deleted file mode 100644 index 51e36a54..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ERC721Upgradeable__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,iBAAiB,EACjB,0BAA0B,EAC3B,MAAM,mFAAmF,CAAC;AA+V3F,aAAK,kCAAkC,GACnC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,0BAA2B,SAAQ,eAAe;gBACjD,GAAG,IAAI,EAAE,kCAAkC;IAQ9C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,0BAA0B;IAI3E,MAAM,CAAC,QAAQ,CAAC,QAAQ,4gRAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,0BAA0B;IAGpD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,iBAAiB;CAGrB"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable__factory.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable__factory.js deleted file mode 100644 index f0d070d4..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable__factory.js +++ /dev/null @@ -1,379 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ERC721Upgradeable__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "approved", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Approval", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: false, - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "ApprovalForAll", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint8", - name: "version", - type: "uint8", - }, - ], - name: "Initialized", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Transfer", - type: "event", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "approve", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getApproved", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - name: "isApprovedForAll", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "name", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "ownerOf", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "safeTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "safeTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "setApprovalForAll", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "symbol", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "tokenURI", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "transferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -const _bytecode = "0x608060405234801561001057600080fd5b506110e2806100206000396000f3fe608060405234801561001057600080fd5b50600436106100cf5760003560e01c80636352211e1161008c578063a22cb46511610066578063a22cb465146101b3578063b88d4fde146101c6578063c87b56dd146101d9578063e985e9c5146101ec57600080fd5b80636352211e1461017757806370a082311461018a57806395d89b41146101ab57600080fd5b806301ffc9a7146100d457806306fdde03146100fc578063081812fc14610111578063095ea7b31461013c57806323b872dd1461015157806342842e0e14610164575b600080fd5b6100e76100e2366004610c32565b6101ff565b60405190151581526020015b60405180910390f35b610104610251565b6040516100f39190610c9f565b61012461011f366004610cb2565b6102e3565b6040516001600160a01b0390911681526020016100f3565b61014f61014a366004610ce7565b61030a565b005b61014f61015f366004610d11565b610424565b61014f610172366004610d11565b610455565b610124610185366004610cb2565b610470565b61019d610198366004610d4d565b6104d0565b6040519081526020016100f3565b610104610556565b61014f6101c1366004610d68565b610565565b61014f6101d4366004610dba565b610574565b6101046101e7366004610cb2565b6105ac565b6100e76101fa366004610e96565b610620565b60006001600160e01b031982166380ac58cd60e01b148061023057506001600160e01b03198216635b5e139f60e01b145b8061024b57506301ffc9a760e01b6001600160e01b03198316145b92915050565b60606065805461026090610ec9565b80601f016020809104026020016040519081016040528092919081815260200182805461028c90610ec9565b80156102d95780601f106102ae576101008083540402835291602001916102d9565b820191906000526020600020905b8154815290600101906020018083116102bc57829003601f168201915b5050505050905090565b60006102ee8261064e565b506000908152606960205260409020546001600160a01b031690565b600061031582610470565b9050806001600160a01b0316836001600160a01b0316036103875760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084015b60405180910390fd5b336001600160a01b03821614806103a357506103a38133610620565b6104155760405162461bcd60e51b815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c0000606482015260840161037e565b61041f83836106b0565b505050565b61042e338261071e565b61044a5760405162461bcd60e51b815260040161037e90610f03565b61041f83838361077d565b61041f83838360405180602001604052806000815250610574565b6000818152606760205260408120546001600160a01b03168061024b5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b604482015260640161037e565b60006001600160a01b03821661053a5760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b606482015260840161037e565b506001600160a01b031660009081526068602052604090205490565b60606066805461026090610ec9565b610570338383610919565b5050565b61057e338361071e565b61059a5760405162461bcd60e51b815260040161037e90610f03565b6105a6848484846109e7565b50505050565b60606105b78261064e565b60006105ce60408051602081019091526000815290565b905060008151116105ee5760405180602001604052806000815250610619565b806105f884610a1a565b604051602001610609929190610f51565b6040516020818303038152906040525b9392505050565b6001600160a01b039182166000908152606a6020908152604080832093909416825291909152205460ff1690565b6000818152606760205260409020546001600160a01b03166106ad5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b604482015260640161037e565b50565b600081815260696020526040902080546001600160a01b0319166001600160a01b03841690811790915581906106e582610470565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60008061072a83610470565b9050806001600160a01b0316846001600160a01b0316148061075157506107518185610620565b806107755750836001600160a01b031661076a846102e3565b6001600160a01b0316145b949350505050565b826001600160a01b031661079082610470565b6001600160a01b0316146107f45760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b606482015260840161037e565b6001600160a01b0382166108565760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b606482015260840161037e565b6108616000826106b0565b6001600160a01b038316600090815260686020526040812080546001929061088a908490610f96565b90915550506001600160a01b03821660009081526068602052604081208054600192906108b8908490610fa9565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b816001600160a01b0316836001600160a01b03160361097a5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604482015260640161037e565b6001600160a01b038381166000818152606a6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6109f284848461077d565b6109fe84848484610b1b565b6105a65760405162461bcd60e51b815260040161037e90610fbc565b606081600003610a415750506040805180820190915260018152600360fc1b602082015290565b8160005b8115610a6b5780610a558161100e565b9150610a649050600a8361103d565b9150610a45565b60008167ffffffffffffffff811115610a8657610a86610da4565b6040519080825280601f01601f191660200182016040528015610ab0576020820181803683370190505b5090505b841561077557610ac5600183610f96565b9150610ad2600a86611051565b610add906030610fa9565b60f81b818381518110610af257610af2611065565b60200101906001600160f81b031916908160001a905350610b14600a8661103d565b9450610ab4565b60006001600160a01b0384163b15610c1157604051630a85bd0160e11b81526001600160a01b0385169063150b7a0290610b5f90339089908890889060040161107b565b6020604051808303816000875af1925050508015610b9a575060408051601f3d908101601f19168201909252610b97918101906110b8565b60015b610bf7573d808015610bc8576040519150601f19603f3d011682016040523d82523d6000602084013e610bcd565b606091505b508051600003610bef5760405162461bcd60e51b815260040161037e90610fbc565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610775565b506001949350505050565b6001600160e01b0319811681146106ad57600080fd5b600060208284031215610c4457600080fd5b813561061981610c1c565b60005b83811015610c6a578181015183820152602001610c52565b50506000910152565b60008151808452610c8b816020860160208601610c4f565b601f01601f19169290920160200192915050565b6020815260006106196020830184610c73565b600060208284031215610cc457600080fd5b5035919050565b80356001600160a01b0381168114610ce257600080fd5b919050565b60008060408385031215610cfa57600080fd5b610d0383610ccb565b946020939093013593505050565b600080600060608486031215610d2657600080fd5b610d2f84610ccb565b9250610d3d60208501610ccb565b9150604084013590509250925092565b600060208284031215610d5f57600080fd5b61061982610ccb565b60008060408385031215610d7b57600080fd5b610d8483610ccb565b915060208301358015158114610d9957600080fd5b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b60008060008060808587031215610dd057600080fd5b610dd985610ccb565b9350610de760208601610ccb565b925060408501359150606085013567ffffffffffffffff80821115610e0b57600080fd5b818701915087601f830112610e1f57600080fd5b813581811115610e3157610e31610da4565b604051601f8201601f19908116603f01168101908382118183101715610e5957610e59610da4565b816040528281528a6020848701011115610e7257600080fd5b82602086016020830137600060208483010152809550505050505092959194509250565b60008060408385031215610ea957600080fd5b610eb283610ccb565b9150610ec060208401610ccb565b90509250929050565b600181811c90821680610edd57607f821691505b602082108103610efd57634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252602e908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526d1c881b9bdc88185c1c1c9bdd995960921b606082015260800190565b60008351610f63818460208801610c4f565b835190830190610f77818360208801610c4f565b01949350505050565b634e487b7160e01b600052601160045260246000fd5b8181038181111561024b5761024b610f80565b8082018082111561024b5761024b610f80565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b60006001820161102057611020610f80565b5060010190565b634e487b7160e01b600052601260045260246000fd5b60008261104c5761104c611027565b500490565b60008261106057611060611027565b500690565b634e487b7160e01b600052603260045260246000fd5b6001600160a01b03858116825284166020820152604081018390526080606082018190526000906110ae90830184610c73565b9695505050505050565b6000602082840312156110ca57600080fd5b815161061981610c1c56fea164736f6c6343000811000a"; -const isSuperArgs = (xs) => xs.length > 1; -class ERC721Upgradeable__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(overrides) { - return super.getDeployTransaction(overrides || {}); - } - deploy(overrides) { - return super.deploy(overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.ERC721Upgradeable__factory = ERC721Upgradeable__factory; -ERC721Upgradeable__factory.bytecode = _bytecode; -ERC721Upgradeable__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable__factory.d.ts deleted file mode 100644 index 620d90be..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable__factory.d.ts +++ /dev/null @@ -1,34 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IERC721ReceiverUpgradeable, IERC721ReceiverUpgradeableInterface } from "../../../../../@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable"; -export declare class IERC721ReceiverUpgradeable__factory { - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "onERC721Received"; - readonly outputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: ""; - readonly type: "bytes4"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): IERC721ReceiverUpgradeableInterface; - static connect(address: string, runner?: ContractRunner | null): IERC721ReceiverUpgradeable; -} -//# sourceMappingURL=IERC721ReceiverUpgradeable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable__factory.d.ts.map deleted file mode 100644 index fea2825a..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC721ReceiverUpgradeable__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,0BAA0B,EAC1B,mCAAmC,EACpC,MAAM,4FAA4F,CAAC;AAuCpG,qBAAa,mCAAmC;IAC9C,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,mCAAmC;IAG7D,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,0BAA0B;CAO9B"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable__factory.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable__factory.js deleted file mode 100644 index fc1e8172..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable__factory.js +++ /dev/null @@ -1,50 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IERC721ReceiverUpgradeable__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "onERC721Received", - outputs: [ - { - internalType: "bytes4", - name: "", - type: "bytes4", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, -]; -class IERC721ReceiverUpgradeable__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IERC721ReceiverUpgradeable__factory = IERC721ReceiverUpgradeable__factory; -IERC721ReceiverUpgradeable__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable__factory.d.ts deleted file mode 100644 index bf89e32c..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable__factory.d.ts +++ /dev/null @@ -1,228 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IERC721Upgradeable, IERC721UpgradeableInterface } from "../../../../../@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable"; -export declare class IERC721Upgradeable__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "approved"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Approval"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "ApprovalForAll"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Transfer"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "approve"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "balanceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "balance"; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getApproved"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly name: "isApprovedForAll"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "ownerOf"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly internalType: "bool"; - readonly name: "_approved"; - readonly type: "bool"; - }]; - readonly name: "setApprovalForAll"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "transferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): IERC721UpgradeableInterface; - static connect(address: string, runner?: ContractRunner | null): IERC721Upgradeable; -} -//# sourceMappingURL=IERC721Upgradeable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable__factory.d.ts.map deleted file mode 100644 index 677fe1eb..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC721Upgradeable__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,kBAAkB,EAClB,2BAA2B,EAC5B,MAAM,oFAAoF,CAAC;AAkS5F,qBAAa,2BAA2B;IACtC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,2BAA2B;IAGrD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,kBAAkB;CAGtB"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable__factory.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable__factory.js deleted file mode 100644 index c1750c42..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable__factory.js +++ /dev/null @@ -1,301 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IERC721Upgradeable__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "approved", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Approval", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: false, - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "ApprovalForAll", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Transfer", - type: "event", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "approve", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "balance", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getApproved", - outputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - name: "isApprovedForAll", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "ownerOf", - outputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "safeTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "safeTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "bool", - name: "_approved", - type: "bool", - }, - ], - name: "setApprovalForAll", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "transferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -class IERC721Upgradeable__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IERC721Upgradeable__factory = IERC721Upgradeable__factory; -IERC721Upgradeable__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable__factory.d.ts deleted file mode 100644 index 5534e936..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable__factory.d.ts +++ /dev/null @@ -1,262 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IERC721MetadataUpgradeable, IERC721MetadataUpgradeableInterface } from "../../../../../../@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable"; -export declare class IERC721MetadataUpgradeable__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "approved"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Approval"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "ApprovalForAll"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Transfer"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "approve"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "balanceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "balance"; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getApproved"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly name: "isApprovedForAll"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "name"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "ownerOf"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly internalType: "bool"; - readonly name: "_approved"; - readonly type: "bool"; - }]; - readonly name: "setApprovalForAll"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "symbol"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "tokenURI"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "transferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): IERC721MetadataUpgradeableInterface; - static connect(address: string, runner?: ContractRunner | null): IERC721MetadataUpgradeable; -} -//# sourceMappingURL=IERC721MetadataUpgradeable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable__factory.d.ts.map deleted file mode 100644 index 99a656d5..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC721MetadataUpgradeable__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,0BAA0B,EAC1B,mCAAmC,EACpC,MAAM,0GAA0G,CAAC;AA+UlH,qBAAa,mCAAmC;IAC9C,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,mCAAmC;IAG7D,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,0BAA0B;CAO9B"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable__factory.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable__factory.js deleted file mode 100644 index c6cea624..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable__factory.js +++ /dev/null @@ -1,346 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IERC721MetadataUpgradeable__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "approved", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Approval", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: false, - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "ApprovalForAll", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Transfer", - type: "event", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "approve", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "balance", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getApproved", - outputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - name: "isApprovedForAll", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "name", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "ownerOf", - outputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "safeTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "safeTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "bool", - name: "_approved", - type: "bool", - }, - ], - name: "setApprovalForAll", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "symbol", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "tokenURI", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "transferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -class IERC721MetadataUpgradeable__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IERC721MetadataUpgradeable__factory = IERC721MetadataUpgradeable__factory; -IERC721MetadataUpgradeable__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/index.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/index.d.ts deleted file mode 100644 index abf9c94f..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export { IERC721MetadataUpgradeable__factory } from "./IERC721MetadataUpgradeable__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/index.d.ts.map deleted file mode 100644 index 98a5f8d1..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mCAAmC,EAAE,MAAM,uCAAuC,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/index.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/index.js deleted file mode 100644 index 81bc33d3..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/index.js +++ /dev/null @@ -1,5 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IERC721MetadataUpgradeable__factory = void 0; -var IERC721MetadataUpgradeable__factory_1 = require("./IERC721MetadataUpgradeable__factory"); -Object.defineProperty(exports, "IERC721MetadataUpgradeable__factory", { enumerable: true, get: function () { return IERC721MetadataUpgradeable__factory_1.IERC721MetadataUpgradeable__factory; } }); diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/index.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/index.d.ts deleted file mode 100644 index 3563f7a7..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/index.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -export * as extensions from "./extensions"; -export { ERC721Upgradeable__factory } from "./ERC721Upgradeable__factory"; -export { IERC721ReceiverUpgradeable__factory } from "./IERC721ReceiverUpgradeable__factory"; -export { IERC721Upgradeable__factory } from "./IERC721Upgradeable__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/index.d.ts.map deleted file mode 100644 index d8267f6c..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,mCAAmC,EAAE,MAAM,uCAAuC,CAAC;AAC5F,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/index.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/index.js deleted file mode 100644 index e81e66c4..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/index.js +++ /dev/null @@ -1,33 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IERC721Upgradeable__factory = exports.IERC721ReceiverUpgradeable__factory = exports.ERC721Upgradeable__factory = exports.extensions = void 0; -exports.extensions = __importStar(require("./extensions")); -var ERC721Upgradeable__factory_1 = require("./ERC721Upgradeable__factory"); -Object.defineProperty(exports, "ERC721Upgradeable__factory", { enumerable: true, get: function () { return ERC721Upgradeable__factory_1.ERC721Upgradeable__factory; } }); -var IERC721ReceiverUpgradeable__factory_1 = require("./IERC721ReceiverUpgradeable__factory"); -Object.defineProperty(exports, "IERC721ReceiverUpgradeable__factory", { enumerable: true, get: function () { return IERC721ReceiverUpgradeable__factory_1.IERC721ReceiverUpgradeable__factory; } }); -var IERC721Upgradeable__factory_1 = require("./IERC721Upgradeable__factory"); -Object.defineProperty(exports, "IERC721Upgradeable__factory", { enumerable: true, get: function () { return IERC721Upgradeable__factory_1.IERC721Upgradeable__factory; } }); diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/index.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/index.d.ts deleted file mode 100644 index 1fb67373..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/index.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export * as erc1155 from "./ERC1155"; -export * as erc20 from "./ERC20"; -export * as erc721 from "./ERC721"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/index.d.ts.map deleted file mode 100644 index a9ae52c4..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/@openzeppelin/contracts-upgradeable/token/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AACrC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/index.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/token/index.js deleted file mode 100644 index b40ffbef..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/token/index.js +++ /dev/null @@ -1,29 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.erc721 = exports.erc20 = exports.erc1155 = void 0; -exports.erc1155 = __importStar(require("./ERC1155")); -exports.erc20 = __importStar(require("./ERC20")); -exports.erc721 = __importStar(require("./ERC721")); diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable__factory.d.ts deleted file mode 100644 index ab935ed1..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable__factory.d.ts +++ /dev/null @@ -1,18 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { ContextUpgradeable, ContextUpgradeableInterface } from "../../../../@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable"; -export declare class ContextUpgradeable__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "uint8"; - readonly name: "version"; - readonly type: "uint8"; - }]; - readonly name: "Initialized"; - readonly type: "event"; - }]; - static createInterface(): ContextUpgradeableInterface; - static connect(address: string, runner?: ContractRunner | null): ContextUpgradeable; -} -//# sourceMappingURL=ContextUpgradeable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable__factory.d.ts.map deleted file mode 100644 index f550760c..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ContextUpgradeable__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,kBAAkB,EAClB,2BAA2B,EAC5B,MAAM,0EAA0E,CAAC;AAkBlF,qBAAa,2BAA2B;IACtC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,2BAA2B;IAGrD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,kBAAkB;CAGtB"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable__factory.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable__factory.js deleted file mode 100644 index 55c740bd..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable__factory.js +++ /dev/null @@ -1,29 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ContextUpgradeable__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint8", - name: "version", - type: "uint8", - }, - ], - name: "Initialized", - type: "event", - }, -]; -class ContextUpgradeable__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.ContextUpgradeable__factory = ContextUpgradeable__factory; -ContextUpgradeable__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable__factory.d.ts deleted file mode 100644 index 3cd4b2fd..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable__factory.d.ts +++ /dev/null @@ -1,32 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { MulticallUpgradeable, MulticallUpgradeableInterface } from "../../../../@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable"; -export declare class MulticallUpgradeable__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "uint8"; - readonly name: "version"; - readonly type: "uint8"; - }]; - readonly name: "Initialized"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes[]"; - readonly name: "data"; - readonly type: "bytes[]"; - }]; - readonly name: "multicall"; - readonly outputs: readonly [{ - readonly internalType: "bytes[]"; - readonly name: "results"; - readonly type: "bytes[]"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): MulticallUpgradeableInterface; - static connect(address: string, runner?: ContractRunner | null): MulticallUpgradeable; -} -//# sourceMappingURL=MulticallUpgradeable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable__factory.d.ts.map deleted file mode 100644 index 1a7a3121..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"MulticallUpgradeable__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,oBAAoB,EACpB,6BAA6B,EAC9B,MAAM,4EAA4E,CAAC;AAqCpF,qBAAa,6BAA6B;IACxC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,6BAA6B;IAGvD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,oBAAoB;CAOxB"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable__factory.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable__factory.js deleted file mode 100644 index fb3d8856..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable__factory.js +++ /dev/null @@ -1,48 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.MulticallUpgradeable__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint8", - name: "version", - type: "uint8", - }, - ], - name: "Initialized", - type: "event", - }, - { - inputs: [ - { - internalType: "bytes[]", - name: "data", - type: "bytes[]", - }, - ], - name: "multicall", - outputs: [ - { - internalType: "bytes[]", - name: "results", - type: "bytes[]", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, -]; -class MulticallUpgradeable__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.MulticallUpgradeable__factory = MulticallUpgradeable__factory; -MulticallUpgradeable__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/index.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/index.d.ts deleted file mode 100644 index 50aaa3a6..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/index.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export * as introspection from "./introspection"; -export { ContextUpgradeable__factory } from "./ContextUpgradeable__factory"; -export { MulticallUpgradeable__factory } from "./MulticallUpgradeable__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/index.d.ts.map deleted file mode 100644 index 3ff9d231..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/@openzeppelin/contracts-upgradeable/utils/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,aAAa,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/index.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/index.js deleted file mode 100644 index 2ee738ad..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/index.js +++ /dev/null @@ -1,31 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.MulticallUpgradeable__factory = exports.ContextUpgradeable__factory = exports.introspection = void 0; -exports.introspection = __importStar(require("./introspection")); -var ContextUpgradeable__factory_1 = require("./ContextUpgradeable__factory"); -Object.defineProperty(exports, "ContextUpgradeable__factory", { enumerable: true, get: function () { return ContextUpgradeable__factory_1.ContextUpgradeable__factory; } }); -var MulticallUpgradeable__factory_1 = require("./MulticallUpgradeable__factory"); -Object.defineProperty(exports, "MulticallUpgradeable__factory", { enumerable: true, get: function () { return MulticallUpgradeable__factory_1.MulticallUpgradeable__factory; } }); diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable__factory.d.ts deleted file mode 100644 index 22bc5e3e..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable__factory.d.ts +++ /dev/null @@ -1,32 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { ERC165Upgradeable, ERC165UpgradeableInterface } from "../../../../../@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable"; -export declare class ERC165Upgradeable__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "uint8"; - readonly name: "version"; - readonly type: "uint8"; - }]; - readonly name: "Initialized"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): ERC165UpgradeableInterface; - static connect(address: string, runner?: ContractRunner | null): ERC165Upgradeable; -} -//# sourceMappingURL=ERC165Upgradeable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable__factory.d.ts.map deleted file mode 100644 index 7c7a76dc..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ERC165Upgradeable__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,iBAAiB,EACjB,0BAA0B,EAC3B,MAAM,0FAA0F,CAAC;AAqClG,qBAAa,0BAA0B;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,0BAA0B;IAGpD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,iBAAiB;CAGrB"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable__factory.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable__factory.js deleted file mode 100644 index 0708e82a..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable__factory.js +++ /dev/null @@ -1,48 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ERC165Upgradeable__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint8", - name: "version", - type: "uint8", - }, - ], - name: "Initialized", - type: "event", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class ERC165Upgradeable__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.ERC165Upgradeable__factory = ERC165Upgradeable__factory; -ERC165Upgradeable__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable__factory.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable__factory.d.ts deleted file mode 100644 index c9413cdf..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable__factory.d.ts +++ /dev/null @@ -1,22 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IERC165Upgradeable, IERC165UpgradeableInterface } from "../../../../../@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable"; -export declare class IERC165Upgradeable__factory { - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): IERC165UpgradeableInterface; - static connect(address: string, runner?: ContractRunner | null): IERC165Upgradeable; -} -//# sourceMappingURL=IERC165Upgradeable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable__factory.d.ts.map deleted file mode 100644 index 2b82b509..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC165Upgradeable__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,kBAAkB,EAClB,2BAA2B,EAC5B,MAAM,2FAA2F,CAAC;AAwBnG,qBAAa,2BAA2B;IACtC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,2BAA2B;IAGrD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,kBAAkB;CAGtB"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable__factory.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable__factory.js deleted file mode 100644 index 29c2a3e6..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable__factory.js +++ /dev/null @@ -1,35 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IERC165Upgradeable__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class IERC165Upgradeable__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IERC165Upgradeable__factory = IERC165Upgradeable__factory; -IERC165Upgradeable__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/index.d.ts b/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/index.d.ts deleted file mode 100644 index 93094df6..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export { ERC165Upgradeable__factory } from "./ERC165Upgradeable__factory"; -export { IERC165Upgradeable__factory } from "./IERC165Upgradeable__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/index.d.ts.map deleted file mode 100644 index 004b064c..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/index.js b/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/index.js deleted file mode 100644 index cff0570b..00000000 --- a/dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/index.js +++ /dev/null @@ -1,7 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IERC165Upgradeable__factory = exports.ERC165Upgradeable__factory = void 0; -var ERC165Upgradeable__factory_1 = require("./ERC165Upgradeable__factory"); -Object.defineProperty(exports, "ERC165Upgradeable__factory", { enumerable: true, get: function () { return ERC165Upgradeable__factory_1.ERC165Upgradeable__factory; } }); -var IERC165Upgradeable__factory_1 = require("./IERC165Upgradeable__factory"); -Object.defineProperty(exports, "IERC165Upgradeable__factory", { enumerable: true, get: function () { return IERC165Upgradeable__factory_1.IERC165Upgradeable__factory; } }); diff --git a/dist/types/factories/@openzeppelin/contracts/access/Ownable__factory.d.ts b/dist/types/factories/@openzeppelin/contracts/access/Ownable__factory.d.ts deleted file mode 100644 index da3d23f0..00000000 --- a/dist/types/factories/@openzeppelin/contracts/access/Ownable__factory.d.ts +++ /dev/null @@ -1,49 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { Ownable, OwnableInterface } from "../../../../@openzeppelin/contracts/access/Ownable"; -export declare class Ownable__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "previousOwner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "newOwner"; - readonly type: "address"; - }]; - readonly name: "OwnershipTransferred"; - readonly type: "event"; - }, { - readonly inputs: readonly []; - readonly name: "owner"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "renounceOwnership"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "newOwner"; - readonly type: "address"; - }]; - readonly name: "transferOwnership"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): OwnableInterface; - static connect(address: string, runner?: ContractRunner | null): Ownable; -} -//# sourceMappingURL=Ownable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/access/Ownable__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts/access/Ownable__factory.d.ts.map deleted file mode 100644 index e78488d6..00000000 --- a/dist/types/factories/@openzeppelin/contracts/access/Ownable__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Ownable__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/@openzeppelin/contracts/access/Ownable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,OAAO,EACP,gBAAgB,EACjB,MAAM,oDAAoD,CAAC;AAyD5D,qBAAa,gBAAgB;IAC3B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,gBAAgB;IAG1C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,OAAO;CAGzE"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/access/Ownable__factory.js b/dist/types/factories/@openzeppelin/contracts/access/Ownable__factory.js deleted file mode 100644 index dbdb0bec..00000000 --- a/dist/types/factories/@openzeppelin/contracts/access/Ownable__factory.js +++ /dev/null @@ -1,68 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.Ownable__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "previousOwner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnershipTransferred", - type: "event", - }, - { - inputs: [], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "renounceOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "transferOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -class Ownable__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.Ownable__factory = Ownable__factory; -Ownable__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts/access/index.d.ts b/dist/types/factories/@openzeppelin/contracts/access/index.d.ts deleted file mode 100644 index 05bb19ed..00000000 --- a/dist/types/factories/@openzeppelin/contracts/access/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export { Ownable__factory } from "./Ownable__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/access/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts/access/index.d.ts.map deleted file mode 100644 index 5b4a8d07..00000000 --- a/dist/types/factories/@openzeppelin/contracts/access/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/@openzeppelin/contracts/access/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/access/index.js b/dist/types/factories/@openzeppelin/contracts/access/index.js deleted file mode 100644 index 7b3dc6cc..00000000 --- a/dist/types/factories/@openzeppelin/contracts/access/index.js +++ /dev/null @@ -1,5 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.Ownable__factory = void 0; -var Ownable__factory_1 = require("./Ownable__factory"); -Object.defineProperty(exports, "Ownable__factory", { enumerable: true, get: function () { return Ownable__factory_1.Ownable__factory; } }); diff --git a/dist/types/factories/@openzeppelin/contracts/index.d.ts b/dist/types/factories/@openzeppelin/contracts/index.d.ts deleted file mode 100644 index 6d9a5a70..00000000 --- a/dist/types/factories/@openzeppelin/contracts/index.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export * as access from "./access"; -export * as token from "./token"; -export * as utils from "./utils"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts/index.d.ts.map deleted file mode 100644 index 533968be..00000000 --- a/dist/types/factories/@openzeppelin/contracts/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/factories/@openzeppelin/contracts/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/index.js b/dist/types/factories/@openzeppelin/contracts/index.js deleted file mode 100644 index 687e3bbe..00000000 --- a/dist/types/factories/@openzeppelin/contracts/index.js +++ /dev/null @@ -1,29 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.utils = exports.token = exports.access = void 0; -exports.access = __importStar(require("./access")); -exports.token = __importStar(require("./token")); -exports.utils = __importStar(require("./utils")); diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver__factory.d.ts b/dist/types/factories/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver__factory.d.ts deleted file mode 100644 index b74a59da..00000000 --- a/dist/types/factories/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver__factory.d.ts +++ /dev/null @@ -1,82 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IERC1155Receiver, IERC1155ReceiverInterface } from "../../../../../@openzeppelin/contracts/token/ERC1155/IERC1155Receiver"; -export declare class IERC1155Receiver__factory { - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "uint256[]"; - readonly name: "ids"; - readonly type: "uint256[]"; - }, { - readonly internalType: "uint256[]"; - readonly name: "values"; - readonly type: "uint256[]"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "onERC1155BatchReceived"; - readonly outputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: ""; - readonly type: "bytes4"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "value"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "onERC1155Received"; - readonly outputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: ""; - readonly type: "bytes4"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): IERC1155ReceiverInterface; - static connect(address: string, runner?: ContractRunner | null): IERC1155Receiver; -} -//# sourceMappingURL=IERC1155Receiver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver__factory.d.ts.map deleted file mode 100644 index 31b3afa1..00000000 --- a/dist/types/factories/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC1155Receiver__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,gBAAgB,EAChB,yBAAyB,EAC1B,MAAM,uEAAuE,CAAC;AAsG/E,qBAAa,yBAAyB;IACpC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,yBAAyB;IAGnD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,gBAAgB;CAGpB"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver__factory.js b/dist/types/factories/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver__factory.js deleted file mode 100644 index 6f71cc65..00000000 --- a/dist/types/factories/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver__factory.js +++ /dev/null @@ -1,113 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IERC1155Receiver__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "uint256[]", - name: "ids", - type: "uint256[]", - }, - { - internalType: "uint256[]", - name: "values", - type: "uint256[]", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "onERC1155BatchReceived", - outputs: [ - { - internalType: "bytes4", - name: "", - type: "bytes4", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - internalType: "uint256", - name: "value", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "onERC1155Received", - outputs: [ - { - internalType: "bytes4", - name: "", - type: "bytes4", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class IERC1155Receiver__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IERC1155Receiver__factory = IERC1155Receiver__factory; -IERC1155Receiver__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC1155/IERC1155__factory.d.ts b/dist/types/factories/@openzeppelin/contracts/token/ERC1155/IERC1155__factory.d.ts deleted file mode 100644 index 08d281d4..00000000 --- a/dist/types/factories/@openzeppelin/contracts/token/ERC1155/IERC1155__factory.d.ts +++ /dev/null @@ -1,237 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IERC1155, IERC1155Interface } from "../../../../../@openzeppelin/contracts/token/ERC1155/IERC1155"; -export declare class IERC1155__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "ApprovalForAll"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "uint256[]"; - readonly name: "ids"; - readonly type: "uint256[]"; - }, { - readonly indexed: false; - readonly internalType: "uint256[]"; - readonly name: "values"; - readonly type: "uint256[]"; - }]; - readonly name: "TransferBatch"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "value"; - readonly type: "uint256"; - }]; - readonly name: "TransferSingle"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }]; - readonly name: "URI"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }]; - readonly name: "balanceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address[]"; - readonly name: "accounts"; - readonly type: "address[]"; - }, { - readonly internalType: "uint256[]"; - readonly name: "ids"; - readonly type: "uint256[]"; - }]; - readonly name: "balanceOfBatch"; - readonly outputs: readonly [{ - readonly internalType: "uint256[]"; - readonly name: ""; - readonly type: "uint256[]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly name: "isApprovedForAll"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256[]"; - readonly name: "ids"; - readonly type: "uint256[]"; - }, { - readonly internalType: "uint256[]"; - readonly name: "amounts"; - readonly type: "uint256[]"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "safeBatchTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "amount"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "setApprovalForAll"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): IERC1155Interface; - static connect(address: string, runner?: ContractRunner | null): IERC1155; -} -//# sourceMappingURL=IERC1155__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC1155/IERC1155__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts/token/ERC1155/IERC1155__factory.d.ts.map deleted file mode 100644 index ba86b42a..00000000 --- a/dist/types/factories/@openzeppelin/contracts/token/ERC1155/IERC1155__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC1155__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts/token/ERC1155/IERC1155__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,QAAQ,EACR,iBAAiB,EAClB,MAAM,+DAA+D,CAAC;AA0SvE,qBAAa,iBAAiB;IAC5B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,iBAAiB;IAG3C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,QAAQ;CAG1E"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC1155/IERC1155__factory.js b/dist/types/factories/@openzeppelin/contracts/token/ERC1155/IERC1155__factory.js deleted file mode 100644 index 4155f40e..00000000 --- a/dist/types/factories/@openzeppelin/contracts/token/ERC1155/IERC1155__factory.js +++ /dev/null @@ -1,309 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IERC1155__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: false, - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "ApprovalForAll", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: false, - internalType: "uint256[]", - name: "ids", - type: "uint256[]", - }, - { - indexed: false, - internalType: "uint256[]", - name: "values", - type: "uint256[]", - }, - ], - name: "TransferBatch", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "value", - type: "uint256", - }, - ], - name: "TransferSingle", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "string", - name: "value", - type: "string", - }, - { - indexed: true, - internalType: "uint256", - name: "id", - type: "uint256", - }, - ], - name: "URI", - type: "event", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address[]", - name: "accounts", - type: "address[]", - }, - { - internalType: "uint256[]", - name: "ids", - type: "uint256[]", - }, - ], - name: "balanceOfBatch", - outputs: [ - { - internalType: "uint256[]", - name: "", - type: "uint256[]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - name: "isApprovedForAll", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256[]", - name: "ids", - type: "uint256[]", - }, - { - internalType: "uint256[]", - name: "amounts", - type: "uint256[]", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "safeBatchTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "safeTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "setApprovalForAll", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class IERC1155__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IERC1155__factory = IERC1155__factory; -IERC1155__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI__factory.d.ts b/dist/types/factories/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI__factory.d.ts deleted file mode 100644 index ee604215..00000000 --- a/dist/types/factories/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI__factory.d.ts +++ /dev/null @@ -1,251 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IERC1155MetadataURI, IERC1155MetadataURIInterface } from "../../../../../../@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI"; -export declare class IERC1155MetadataURI__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "ApprovalForAll"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "uint256[]"; - readonly name: "ids"; - readonly type: "uint256[]"; - }, { - readonly indexed: false; - readonly internalType: "uint256[]"; - readonly name: "values"; - readonly type: "uint256[]"; - }]; - readonly name: "TransferBatch"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "value"; - readonly type: "uint256"; - }]; - readonly name: "TransferSingle"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }]; - readonly name: "URI"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }]; - readonly name: "balanceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address[]"; - readonly name: "accounts"; - readonly type: "address[]"; - }, { - readonly internalType: "uint256[]"; - readonly name: "ids"; - readonly type: "uint256[]"; - }]; - readonly name: "balanceOfBatch"; - readonly outputs: readonly [{ - readonly internalType: "uint256[]"; - readonly name: ""; - readonly type: "uint256[]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly name: "isApprovedForAll"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256[]"; - readonly name: "ids"; - readonly type: "uint256[]"; - }, { - readonly internalType: "uint256[]"; - readonly name: "amounts"; - readonly type: "uint256[]"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "safeBatchTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "amount"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "setApprovalForAll"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }]; - readonly name: "uri"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): IERC1155MetadataURIInterface; - static connect(address: string, runner?: ContractRunner | null): IERC1155MetadataURI; -} -//# sourceMappingURL=IERC1155MetadataURI__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI__factory.d.ts.map deleted file mode 100644 index 40b68ae7..00000000 --- a/dist/types/factories/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC1155MetadataURI__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,mBAAmB,EACnB,4BAA4B,EAC7B,MAAM,wFAAwF,CAAC;AA6ThG,qBAAa,4BAA4B;IACvC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,4BAA4B;IAGtD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,mBAAmB;CAOvB"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI__factory.js b/dist/types/factories/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI__factory.js deleted file mode 100644 index 4f6af1ea..00000000 --- a/dist/types/factories/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI__factory.js +++ /dev/null @@ -1,328 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IERC1155MetadataURI__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: false, - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "ApprovalForAll", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: false, - internalType: "uint256[]", - name: "ids", - type: "uint256[]", - }, - { - indexed: false, - internalType: "uint256[]", - name: "values", - type: "uint256[]", - }, - ], - name: "TransferBatch", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "value", - type: "uint256", - }, - ], - name: "TransferSingle", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "string", - name: "value", - type: "string", - }, - { - indexed: true, - internalType: "uint256", - name: "id", - type: "uint256", - }, - ], - name: "URI", - type: "event", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address[]", - name: "accounts", - type: "address[]", - }, - { - internalType: "uint256[]", - name: "ids", - type: "uint256[]", - }, - ], - name: "balanceOfBatch", - outputs: [ - { - internalType: "uint256[]", - name: "", - type: "uint256[]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - name: "isApprovedForAll", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256[]", - name: "ids", - type: "uint256[]", - }, - { - internalType: "uint256[]", - name: "amounts", - type: "uint256[]", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "safeBatchTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "safeTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "setApprovalForAll", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - ], - name: "uri", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class IERC1155MetadataURI__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IERC1155MetadataURI__factory = IERC1155MetadataURI__factory; -IERC1155MetadataURI__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC1155/extensions/index.d.ts b/dist/types/factories/@openzeppelin/contracts/token/ERC1155/extensions/index.d.ts deleted file mode 100644 index c9b02dd9..00000000 --- a/dist/types/factories/@openzeppelin/contracts/token/ERC1155/extensions/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export { IERC1155MetadataURI__factory } from "./IERC1155MetadataURI__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC1155/extensions/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts/token/ERC1155/extensions/index.d.ts.map deleted file mode 100644 index 44de74e1..00000000 --- a/dist/types/factories/@openzeppelin/contracts/token/ERC1155/extensions/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@openzeppelin/contracts/token/ERC1155/extensions/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC1155/extensions/index.js b/dist/types/factories/@openzeppelin/contracts/token/ERC1155/extensions/index.js deleted file mode 100644 index 75433b91..00000000 --- a/dist/types/factories/@openzeppelin/contracts/token/ERC1155/extensions/index.js +++ /dev/null @@ -1,5 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IERC1155MetadataURI__factory = void 0; -var IERC1155MetadataURI__factory_1 = require("./IERC1155MetadataURI__factory"); -Object.defineProperty(exports, "IERC1155MetadataURI__factory", { enumerable: true, get: function () { return IERC1155MetadataURI__factory_1.IERC1155MetadataURI__factory; } }); diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC1155/index.d.ts b/dist/types/factories/@openzeppelin/contracts/token/ERC1155/index.d.ts deleted file mode 100644 index 5da35d7c..00000000 --- a/dist/types/factories/@openzeppelin/contracts/token/ERC1155/index.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export * as extensions from "./extensions"; -export { IERC1155__factory } from "./IERC1155__factory"; -export { IERC1155Receiver__factory } from "./IERC1155Receiver__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC1155/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts/token/ERC1155/index.d.ts.map deleted file mode 100644 index 7dacee9d..00000000 --- a/dist/types/factories/@openzeppelin/contracts/token/ERC1155/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts/token/ERC1155/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC1155/index.js b/dist/types/factories/@openzeppelin/contracts/token/ERC1155/index.js deleted file mode 100644 index 045e8a2e..00000000 --- a/dist/types/factories/@openzeppelin/contracts/token/ERC1155/index.js +++ /dev/null @@ -1,31 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IERC1155Receiver__factory = exports.IERC1155__factory = exports.extensions = void 0; -exports.extensions = __importStar(require("./extensions")); -var IERC1155__factory_1 = require("./IERC1155__factory"); -Object.defineProperty(exports, "IERC1155__factory", { enumerable: true, get: function () { return IERC1155__factory_1.IERC1155__factory; } }); -var IERC1155Receiver__factory_1 = require("./IERC1155Receiver__factory"); -Object.defineProperty(exports, "IERC1155Receiver__factory", { enumerable: true, get: function () { return IERC1155Receiver__factory_1.IERC1155Receiver__factory; } }); diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC20/ERC20__factory.d.ts b/dist/types/factories/@openzeppelin/contracts/token/ERC20/ERC20__factory.d.ts deleted file mode 100644 index beecb257..00000000 --- a/dist/types/factories/@openzeppelin/contracts/token/ERC20/ERC20__factory.d.ts +++ /dev/null @@ -1,241 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../../../common"; -import type { ERC20, ERC20Interface } from "../../../../../@openzeppelin/contracts/token/ERC20/ERC20"; -declare type ERC20ConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class ERC20__factory extends ContractFactory { - constructor(...args: ERC20ConstructorParams); - getDeployTransaction(name_: string, symbol_: string, overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(name_: string, symbol_: string, overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): ERC20__factory; - static readonly bytecode = "0x60806040523480156200001157600080fd5b5060405162000b1d38038062000b1d83398101604081905262000034916200011f565b600362000042838262000218565b50600462000051828262000218565b505050620002e4565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008257600080fd5b81516001600160401b03808211156200009f576200009f6200005a565b604051601f8301601f19908116603f01168101908282118183101715620000ca57620000ca6200005a565b81604052838152602092508683858801011115620000e757600080fd5b600091505b838210156200010b5785820183015181830184015290820190620000ec565b600093810190920192909252949350505050565b600080604083850312156200013357600080fd5b82516001600160401b03808211156200014b57600080fd5b620001598683870162000070565b935060208501519150808211156200017057600080fd5b506200017f8582860162000070565b9150509250929050565b600181811c908216806200019e57607f821691505b602082108103620001bf57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200021357600081815260208120601f850160051c81016020861015620001ee5750805b601f850160051c820191505b818110156200020f57828155600101620001fa565b5050505b505050565b81516001600160401b038111156200023457620002346200005a565b6200024c8162000245845462000189565b84620001c5565b602080601f8311600181146200028457600084156200026b5750858301515b600019600386901b1c1916600185901b1785556200020f565b600085815260208120601f198616915b82811015620002b55788860151825594840194600190910190840162000294565b5085821015620002d45787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b61082980620002f46000396000f3fe608060405234801561001057600080fd5b50600436106100a95760003560e01c80633950935111610071578063395093511461012357806370a082311461013657806395d89b411461015f578063a457c2d714610167578063a9059cbb1461017a578063dd62ed3e1461018d57600080fd5b806306fdde03146100ae578063095ea7b3146100cc57806318160ddd146100ef57806323b872dd14610101578063313ce56714610114575b600080fd5b6100b66101a0565b6040516100c3919061069c565b60405180910390f35b6100df6100da366004610706565b610232565b60405190151581526020016100c3565b6002545b6040519081526020016100c3565b6100df61010f366004610730565b61024c565b604051601281526020016100c3565b6100df610131366004610706565b610270565b6100f361014436600461076c565b6001600160a01b031660009081526020819052604090205490565b6100b6610292565b6100df610175366004610706565b6102a1565b6100df610188366004610706565b610321565b6100f361019b36600461078e565b61032f565b6060600380546101af906107c1565b80601f01602080910402602001604051908101604052809291908181526020018280546101db906107c1565b80156102285780601f106101fd57610100808354040283529160200191610228565b820191906000526020600020905b81548152906001019060200180831161020b57829003601f168201915b5050505050905090565b60003361024081858561035a565b60019150505b92915050565b60003361025a85828561047e565b6102658585856104f8565b506001949350505050565b600033610240818585610283838361032f565b61028d91906107fb565b61035a565b6060600480546101af906107c1565b600033816102af828661032f565b9050838110156103145760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b610265828686840361035a565b6000336102408185856104f8565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6001600160a01b0383166103bc5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161030b565b6001600160a01b03821661041d5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161030b565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b600061048a848461032f565b905060001981146104f257818110156104e55760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161030b565b6104f2848484840361035a565b50505050565b6001600160a01b03831661055c5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161030b565b6001600160a01b0382166105be5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161030b565b6001600160a01b038316600090815260208190526040902054818110156106365760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161030b565b6001600160a01b03848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a36104f2565b600060208083528351808285015260005b818110156106c9578581018301518582016040015282016106ad565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b038116811461070157600080fd5b919050565b6000806040838503121561071957600080fd5b610722836106ea565b946020939093013593505050565b60008060006060848603121561074557600080fd5b61074e846106ea565b925061075c602085016106ea565b9150604084013590509250925092565b60006020828403121561077e57600080fd5b610787826106ea565b9392505050565b600080604083850312156107a157600080fd5b6107aa836106ea565b91506107b8602084016106ea565b90509250929050565b600181811c908216806107d557607f821691505b6020821081036107f557634e487b7160e01b600052602260045260246000fd5b50919050565b8082018082111561024657634e487b7160e01b600052601160045260246000fdfea164736f6c6343000811000a"; - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "name_"; - readonly type: "string"; - }, { - readonly internalType: "string"; - readonly name: "symbol_"; - readonly type: "string"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "constructor"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "spender"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "value"; - readonly type: "uint256"; - }]; - readonly name: "Approval"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "value"; - readonly type: "uint256"; - }]; - readonly name: "Transfer"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "spender"; - readonly type: "address"; - }]; - readonly name: "allowance"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "spender"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "amount"; - readonly type: "uint256"; - }]; - readonly name: "approve"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "balanceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "decimals"; - readonly outputs: readonly [{ - readonly internalType: "uint8"; - readonly name: ""; - readonly type: "uint8"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "spender"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "subtractedValue"; - readonly type: "uint256"; - }]; - readonly name: "decreaseAllowance"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "spender"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "addedValue"; - readonly type: "uint256"; - }]; - readonly name: "increaseAllowance"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "name"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "symbol"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "totalSupply"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "amount"; - readonly type: "uint256"; - }]; - readonly name: "transfer"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "amount"; - readonly type: "uint256"; - }]; - readonly name: "transferFrom"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): ERC20Interface; - static connect(address: string, runner?: ContractRunner | null): ERC20; -} -export {}; -//# sourceMappingURL=ERC20__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC20/ERC20__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts/token/ERC20/ERC20__factory.d.ts.map deleted file mode 100644 index 2c996304..00000000 --- a/dist/types/factories/@openzeppelin/contracts/token/ERC20/ERC20__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ERC20__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts/token/ERC20/ERC20__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,KAAK,EACL,cAAc,EACf,MAAM,0DAA0D,CAAC;AAsSlE,aAAK,sBAAsB,GACvB,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,cAAe,SAAQ,eAAe;gBACrC,GAAG,IAAI,EAAE,sBAAsB;IAQlC,oBAAoB,CAC3B,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,EACf,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CACb,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,EACf,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAItB,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,cAAc;IAI/D,MAAM,CAAC,QAAQ,CAAC,QAAQ,kkLAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,cAAc;IAGxC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,KAAK;CAGvE"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC20/ERC20__factory.js b/dist/types/factories/@openzeppelin/contracts/token/ERC20/ERC20__factory.js deleted file mode 100644 index 7fb0ec7a..00000000 --- a/dist/types/factories/@openzeppelin/contracts/token/ERC20/ERC20__factory.js +++ /dev/null @@ -1,322 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ERC20__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "string", - name: "name_", - type: "string", - }, - { - internalType: "string", - name: "symbol_", - type: "string", - }, - ], - stateMutability: "nonpayable", - type: "constructor", - }, - { - 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: [ - { - 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: [ - { - 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: [], - 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", - }, -]; -const _bytecode = "0x60806040523480156200001157600080fd5b5060405162000b1d38038062000b1d83398101604081905262000034916200011f565b600362000042838262000218565b50600462000051828262000218565b505050620002e4565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008257600080fd5b81516001600160401b03808211156200009f576200009f6200005a565b604051601f8301601f19908116603f01168101908282118183101715620000ca57620000ca6200005a565b81604052838152602092508683858801011115620000e757600080fd5b600091505b838210156200010b5785820183015181830184015290820190620000ec565b600093810190920192909252949350505050565b600080604083850312156200013357600080fd5b82516001600160401b03808211156200014b57600080fd5b620001598683870162000070565b935060208501519150808211156200017057600080fd5b506200017f8582860162000070565b9150509250929050565b600181811c908216806200019e57607f821691505b602082108103620001bf57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200021357600081815260208120601f850160051c81016020861015620001ee5750805b601f850160051c820191505b818110156200020f57828155600101620001fa565b5050505b505050565b81516001600160401b038111156200023457620002346200005a565b6200024c8162000245845462000189565b84620001c5565b602080601f8311600181146200028457600084156200026b5750858301515b600019600386901b1c1916600185901b1785556200020f565b600085815260208120601f198616915b82811015620002b55788860151825594840194600190910190840162000294565b5085821015620002d45787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b61082980620002f46000396000f3fe608060405234801561001057600080fd5b50600436106100a95760003560e01c80633950935111610071578063395093511461012357806370a082311461013657806395d89b411461015f578063a457c2d714610167578063a9059cbb1461017a578063dd62ed3e1461018d57600080fd5b806306fdde03146100ae578063095ea7b3146100cc57806318160ddd146100ef57806323b872dd14610101578063313ce56714610114575b600080fd5b6100b66101a0565b6040516100c3919061069c565b60405180910390f35b6100df6100da366004610706565b610232565b60405190151581526020016100c3565b6002545b6040519081526020016100c3565b6100df61010f366004610730565b61024c565b604051601281526020016100c3565b6100df610131366004610706565b610270565b6100f361014436600461076c565b6001600160a01b031660009081526020819052604090205490565b6100b6610292565b6100df610175366004610706565b6102a1565b6100df610188366004610706565b610321565b6100f361019b36600461078e565b61032f565b6060600380546101af906107c1565b80601f01602080910402602001604051908101604052809291908181526020018280546101db906107c1565b80156102285780601f106101fd57610100808354040283529160200191610228565b820191906000526020600020905b81548152906001019060200180831161020b57829003601f168201915b5050505050905090565b60003361024081858561035a565b60019150505b92915050565b60003361025a85828561047e565b6102658585856104f8565b506001949350505050565b600033610240818585610283838361032f565b61028d91906107fb565b61035a565b6060600480546101af906107c1565b600033816102af828661032f565b9050838110156103145760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b610265828686840361035a565b6000336102408185856104f8565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6001600160a01b0383166103bc5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161030b565b6001600160a01b03821661041d5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161030b565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b600061048a848461032f565b905060001981146104f257818110156104e55760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161030b565b6104f2848484840361035a565b50505050565b6001600160a01b03831661055c5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161030b565b6001600160a01b0382166105be5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161030b565b6001600160a01b038316600090815260208190526040902054818110156106365760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161030b565b6001600160a01b03848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a36104f2565b600060208083528351808285015260005b818110156106c9578581018301518582016040015282016106ad565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b038116811461070157600080fd5b919050565b6000806040838503121561071957600080fd5b610722836106ea565b946020939093013593505050565b60008060006060848603121561074557600080fd5b61074e846106ea565b925061075c602085016106ea565b9150604084013590509250925092565b60006020828403121561077e57600080fd5b610787826106ea565b9392505050565b600080604083850312156107a157600080fd5b6107aa836106ea565b91506107b8602084016106ea565b90509250929050565b600181811c908216806107d557607f821691505b6020821081036107f557634e487b7160e01b600052602260045260246000fd5b50919050565b8082018082111561024657634e487b7160e01b600052601160045260246000fdfea164736f6c6343000811000a"; -const isSuperArgs = (xs) => xs.length > 1; -class ERC20__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(name_, symbol_, overrides) { - return super.getDeployTransaction(name_, symbol_, overrides || {}); - } - deploy(name_, symbol_, overrides) { - return super.deploy(name_, symbol_, overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.ERC20__factory = ERC20__factory; -ERC20__factory.bytecode = _bytecode; -ERC20__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC20/IERC20__factory.d.ts b/dist/types/factories/@openzeppelin/contracts/token/ERC20/IERC20__factory.d.ts deleted file mode 100644 index 26e5380f..00000000 --- a/dist/types/factories/@openzeppelin/contracts/token/ERC20/IERC20__factory.d.ts +++ /dev/null @@ -1,148 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IERC20, IERC20Interface } from "../../../../../@openzeppelin/contracts/token/ERC20/IERC20"; -export declare class IERC20__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "spender"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "value"; - readonly type: "uint256"; - }]; - readonly name: "Approval"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "value"; - readonly type: "uint256"; - }]; - readonly name: "Transfer"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "spender"; - readonly type: "address"; - }]; - readonly name: "allowance"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "spender"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "amount"; - readonly type: "uint256"; - }]; - readonly name: "approve"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "balanceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "totalSupply"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "amount"; - readonly type: "uint256"; - }]; - readonly name: "transfer"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "amount"; - readonly type: "uint256"; - }]; - readonly name: "transferFrom"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): IERC20Interface; - static connect(address: string, runner?: ContractRunner | null): IERC20; -} -//# sourceMappingURL=IERC20__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC20/IERC20__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts/token/ERC20/IERC20__factory.d.ts.map deleted file mode 100644 index 7ec6343d..00000000 --- a/dist/types/factories/@openzeppelin/contracts/token/ERC20/IERC20__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC20__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts/token/ERC20/IERC20__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,MAAM,EACN,eAAe,EAChB,MAAM,2DAA2D,CAAC;AA4LnE,qBAAa,eAAe;IAC1B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,eAAe;IAGzC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,MAAM;CAGxE"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC20/IERC20__factory.js b/dist/types/factories/@openzeppelin/contracts/token/ERC20/IERC20__factory.js deleted file mode 100644 index b89569c5..00000000 --- a/dist/types/factories/@openzeppelin/contracts/token/ERC20/IERC20__factory.js +++ /dev/null @@ -1,199 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IERC20__factory = void 0; -const ethers_1 = require("ethers"); -const _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: "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", - }, -]; -class IERC20__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IERC20__factory = IERC20__factory; -IERC20__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata__factory.d.ts b/dist/types/factories/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata__factory.d.ts deleted file mode 100644 index f29474bc..00000000 --- a/dist/types/factories/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata__factory.d.ts +++ /dev/null @@ -1,178 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IERC20Metadata, IERC20MetadataInterface } from "../../../../../../@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata"; -export declare class IERC20Metadata__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "spender"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "value"; - readonly type: "uint256"; - }]; - readonly name: "Approval"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "value"; - readonly type: "uint256"; - }]; - readonly name: "Transfer"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "spender"; - readonly type: "address"; - }]; - readonly name: "allowance"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "spender"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "amount"; - readonly type: "uint256"; - }]; - readonly name: "approve"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "balanceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "decimals"; - readonly outputs: readonly [{ - readonly internalType: "uint8"; - readonly name: ""; - readonly type: "uint8"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "name"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "symbol"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "totalSupply"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "amount"; - readonly type: "uint256"; - }]; - readonly name: "transfer"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "amount"; - readonly type: "uint256"; - }]; - readonly name: "transferFrom"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): IERC20MetadataInterface; - static connect(address: string, runner?: ContractRunner | null): IERC20Metadata; -} -//# sourceMappingURL=IERC20Metadata__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata__factory.d.ts.map deleted file mode 100644 index 89a243f9..00000000 --- a/dist/types/factories/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC20Metadata__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,cAAc,EACd,uBAAuB,EACxB,MAAM,iFAAiF,CAAC;AAmOzF,qBAAa,uBAAuB;IAClC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,uBAAuB;IAGjD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,cAAc;CAGlB"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata__factory.js b/dist/types/factories/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata__factory.js deleted file mode 100644 index 8ecad306..00000000 --- a/dist/types/factories/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata__factory.js +++ /dev/null @@ -1,238 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IERC20Metadata__factory = void 0; -const ethers_1 = require("ethers"); -const _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", - }, -]; -class IERC20Metadata__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IERC20Metadata__factory = IERC20Metadata__factory; -IERC20Metadata__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC20/extensions/index.d.ts b/dist/types/factories/@openzeppelin/contracts/token/ERC20/extensions/index.d.ts deleted file mode 100644 index 5d24f12a..00000000 --- a/dist/types/factories/@openzeppelin/contracts/token/ERC20/extensions/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export { IERC20Metadata__factory } from "./IERC20Metadata__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC20/extensions/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts/token/ERC20/extensions/index.d.ts.map deleted file mode 100644 index fe59318b..00000000 --- a/dist/types/factories/@openzeppelin/contracts/token/ERC20/extensions/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@openzeppelin/contracts/token/ERC20/extensions/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC20/extensions/index.js b/dist/types/factories/@openzeppelin/contracts/token/ERC20/extensions/index.js deleted file mode 100644 index 25ab7754..00000000 --- a/dist/types/factories/@openzeppelin/contracts/token/ERC20/extensions/index.js +++ /dev/null @@ -1,5 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IERC20Metadata__factory = void 0; -var IERC20Metadata__factory_1 = require("./IERC20Metadata__factory"); -Object.defineProperty(exports, "IERC20Metadata__factory", { enumerable: true, get: function () { return IERC20Metadata__factory_1.IERC20Metadata__factory; } }); diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC20/index.d.ts b/dist/types/factories/@openzeppelin/contracts/token/ERC20/index.d.ts deleted file mode 100644 index 7164a56e..00000000 --- a/dist/types/factories/@openzeppelin/contracts/token/ERC20/index.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export * as extensions from "./extensions"; -export { ERC20__factory } from "./ERC20__factory"; -export { IERC20__factory } from "./IERC20__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC20/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts/token/ERC20/index.d.ts.map deleted file mode 100644 index 230be5af..00000000 --- a/dist/types/factories/@openzeppelin/contracts/token/ERC20/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts/token/ERC20/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC20/index.js b/dist/types/factories/@openzeppelin/contracts/token/ERC20/index.js deleted file mode 100644 index 7c997e10..00000000 --- a/dist/types/factories/@openzeppelin/contracts/token/ERC20/index.js +++ /dev/null @@ -1,31 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IERC20__factory = exports.ERC20__factory = exports.extensions = void 0; -exports.extensions = __importStar(require("./extensions")); -var ERC20__factory_1 = require("./ERC20__factory"); -Object.defineProperty(exports, "ERC20__factory", { enumerable: true, get: function () { return ERC20__factory_1.ERC20__factory; } }); -var IERC20__factory_1 = require("./IERC20__factory"); -Object.defineProperty(exports, "IERC20__factory", { enumerable: true, get: function () { return IERC20__factory_1.IERC20__factory; } }); diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC721/ERC721__factory.d.ts b/dist/types/factories/@openzeppelin/contracts/token/ERC721/ERC721__factory.d.ts deleted file mode 100644 index df56b7c2..00000000 --- a/dist/types/factories/@openzeppelin/contracts/token/ERC721/ERC721__factory.d.ts +++ /dev/null @@ -1,289 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../../../common"; -import type { ERC721, ERC721Interface } from "../../../../../@openzeppelin/contracts/token/ERC721/ERC721"; -declare type ERC721ConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class ERC721__factory extends ContractFactory { - constructor(...args: ERC721ConstructorParams); - getDeployTransaction(name_: string, symbol_: string, overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(name_: string, symbol_: string, overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): ERC721__factory; - static readonly bytecode = "0x60806040523480156200001157600080fd5b50604051620013be380380620013be83398101604081905262000034916200011f565b600062000042838262000218565b50600162000051828262000218565b505050620002e4565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008257600080fd5b81516001600160401b03808211156200009f576200009f6200005a565b604051601f8301601f19908116603f01168101908282118183101715620000ca57620000ca6200005a565b81604052838152602092508683858801011115620000e757600080fd5b600091505b838210156200010b5785820183015181830184015290820190620000ec565b600093810190920192909252949350505050565b600080604083850312156200013357600080fd5b82516001600160401b03808211156200014b57600080fd5b620001598683870162000070565b935060208501519150808211156200017057600080fd5b506200017f8582860162000070565b9150509250929050565b600181811c908216806200019e57607f821691505b602082108103620001bf57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200021357600081815260208120601f850160051c81016020861015620001ee5750805b601f850160051c820191505b818110156200020f57828155600101620001fa565b5050505b505050565b81516001600160401b038111156200023457620002346200005a565b6200024c8162000245845462000189565b84620001c5565b602080601f8311600181146200028457600084156200026b5750858301515b600019600386901b1c1916600185901b1785556200020f565b600085815260208120601f198616915b82811015620002b55788860151825594840194600190910190840162000294565b5085821015620002d45787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6110ca80620002f46000396000f3fe608060405234801561001057600080fd5b50600436106100cf5760003560e01c80636352211e1161008c578063a22cb46511610066578063a22cb465146101b3578063b88d4fde146101c6578063c87b56dd146101d9578063e985e9c5146101ec57600080fd5b80636352211e1461017757806370a082311461018a57806395d89b41146101ab57600080fd5b806301ffc9a7146100d457806306fdde03146100fc578063081812fc14610111578063095ea7b31461013c57806323b872dd1461015157806342842e0e14610164575b600080fd5b6100e76100e2366004610c7f565b610228565b60405190151581526020015b60405180910390f35b61010461027a565b6040516100f39190610cec565b61012461011f366004610cff565b61030c565b6040516001600160a01b0390911681526020016100f3565b61014f61014a366004610d34565b610333565b005b61014f61015f366004610d5e565b61044d565b61014f610172366004610d5e565b61047e565b610124610185366004610cff565b610499565b61019d610198366004610d9a565b6104f9565b6040519081526020016100f3565b61010461057f565b61014f6101c1366004610db5565b61058e565b61014f6101d4366004610e07565b61059d565b6101046101e7366004610cff565b6105d5565b6100e76101fa366004610ee3565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b60006001600160e01b031982166380ac58cd60e01b148061025957506001600160e01b03198216635b5e139f60e01b145b8061027457506301ffc9a760e01b6001600160e01b03198316145b92915050565b60606000805461028990610f16565b80601f01602080910402602001604051908101604052809291908181526020018280546102b590610f16565b80156103025780601f106102d757610100808354040283529160200191610302565b820191906000526020600020905b8154815290600101906020018083116102e557829003601f168201915b5050505050905090565b600061031782610649565b506000908152600460205260409020546001600160a01b031690565b600061033e82610499565b9050806001600160a01b0316836001600160a01b0316036103b05760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084015b60405180910390fd5b336001600160a01b03821614806103cc57506103cc81336101fa565b61043e5760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016103a7565b61044883836106ab565b505050565b6104573382610719565b6104735760405162461bcd60e51b81526004016103a790610f50565b610448838383610798565b6104488383836040518060200160405280600081525061059d565b6000818152600260205260408120546001600160a01b0316806102745760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016103a7565b60006001600160a01b0382166105635760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b60648201526084016103a7565b506001600160a01b031660009081526003602052604090205490565b60606001805461028990610f16565b6105993383836108fc565b5050565b6105a73383610719565b6105c35760405162461bcd60e51b81526004016103a790610f50565b6105cf848484846109ca565b50505050565b60606105e082610649565b60006105f760408051602081019091526000815290565b905060008151116106175760405180602001604052806000815250610642565b80610621846109fd565b604051602001610632929190610f9d565b6040516020818303038152906040525b9392505050565b6000818152600260205260409020546001600160a01b03166106a85760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016103a7565b50565b600081815260046020526040902080546001600160a01b0319166001600160a01b03841690811790915581906106e082610499565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60008061072583610499565b9050806001600160a01b0316846001600160a01b0316148061076c57506001600160a01b0380821660009081526005602090815260408083209388168352929052205460ff165b806107905750836001600160a01b03166107858461030c565b6001600160a01b0316145b949350505050565b826001600160a01b03166107ab82610499565b6001600160a01b0316146107d15760405162461bcd60e51b81526004016103a790610fcc565b6001600160a01b0382166108335760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b60648201526084016103a7565b826001600160a01b031661084682610499565b6001600160a01b03161461086c5760405162461bcd60e51b81526004016103a790610fcc565b600081815260046020908152604080832080546001600160a01b03199081169091556001600160a01b0387811680865260038552838620805460001901905590871680865283862080546001019055868652600290945282852080549092168417909155905184937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b816001600160a01b0316836001600160a01b03160361095d5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c65720000000000000060448201526064016103a7565b6001600160a01b03838116600081815260056020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6109d5848484610798565b6109e184848484610a90565b6105cf5760405162461bcd60e51b81526004016103a790611011565b60606000610a0a83610b91565b600101905060008167ffffffffffffffff811115610a2a57610a2a610df1565b6040519080825280601f01601f191660200182016040528015610a54576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a8504945084610a5e57509392505050565b60006001600160a01b0384163b15610b8657604051630a85bd0160e11b81526001600160a01b0385169063150b7a0290610ad4903390899088908890600401611063565b6020604051808303816000875af1925050508015610b0f575060408051601f3d908101601f19168201909252610b0c918101906110a0565b60015b610b6c573d808015610b3d576040519150601f19603f3d011682016040523d82523d6000602084013e610b42565b606091505b508051600003610b645760405162461bcd60e51b81526004016103a790611011565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610790565b506001949350505050565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b8310610bd05772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef81000000008310610bfc576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc100008310610c1a57662386f26fc10000830492506010015b6305f5e1008310610c32576305f5e100830492506008015b6127108310610c4657612710830492506004015b60648310610c58576064830492506002015b600a83106102745760010192915050565b6001600160e01b0319811681146106a857600080fd5b600060208284031215610c9157600080fd5b813561064281610c69565b60005b83811015610cb7578181015183820152602001610c9f565b50506000910152565b60008151808452610cd8816020860160208601610c9c565b601f01601f19169290920160200192915050565b6020815260006106426020830184610cc0565b600060208284031215610d1157600080fd5b5035919050565b80356001600160a01b0381168114610d2f57600080fd5b919050565b60008060408385031215610d4757600080fd5b610d5083610d18565b946020939093013593505050565b600080600060608486031215610d7357600080fd5b610d7c84610d18565b9250610d8a60208501610d18565b9150604084013590509250925092565b600060208284031215610dac57600080fd5b61064282610d18565b60008060408385031215610dc857600080fd5b610dd183610d18565b915060208301358015158114610de657600080fd5b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b60008060008060808587031215610e1d57600080fd5b610e2685610d18565b9350610e3460208601610d18565b925060408501359150606085013567ffffffffffffffff80821115610e5857600080fd5b818701915087601f830112610e6c57600080fd5b813581811115610e7e57610e7e610df1565b604051601f8201601f19908116603f01168101908382118183101715610ea657610ea6610df1565b816040528281528a6020848701011115610ebf57600080fd5b82602086016020830137600060208483010152809550505050505092959194509250565b60008060408385031215610ef657600080fd5b610eff83610d18565b9150610f0d60208401610d18565b90509250929050565b600181811c90821680610f2a57607f821691505b602082108103610f4a57634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252602d908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526c1c881bdc88185c1c1c9bdd9959609a1b606082015260800190565b60008351610faf818460208801610c9c565b835190830190610fc3818360208801610c9c565b01949350505050565b60208082526025908201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060408201526437bbb732b960d91b606082015260800190565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061109690830184610cc0565b9695505050505050565b6000602082840312156110b257600080fd5b815161064281610c6956fea164736f6c6343000811000a"; - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "name_"; - readonly type: "string"; - }, { - readonly internalType: "string"; - readonly name: "symbol_"; - readonly type: "string"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "constructor"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "approved"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Approval"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "ApprovalForAll"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Transfer"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "approve"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "balanceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getApproved"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly name: "isApprovedForAll"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "name"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "ownerOf"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "setApprovalForAll"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "symbol"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "tokenURI"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "transferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): ERC721Interface; - static connect(address: string, runner?: ContractRunner | null): ERC721; -} -export {}; -//# sourceMappingURL=ERC721__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC721/ERC721__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts/token/ERC721/ERC721__factory.d.ts.map deleted file mode 100644 index a215adb9..00000000 --- a/dist/types/factories/@openzeppelin/contracts/token/ERC721/ERC721__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ERC721__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts/token/ERC721/ERC721__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,MAAM,EACN,eAAe,EAChB,MAAM,4DAA4D,CAAC;AAkWpE,aAAK,uBAAuB,GACxB,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,eAAgB,SAAQ,eAAe;gBACtC,GAAG,IAAI,EAAE,uBAAuB;IAQnC,oBAAoB,CAC3B,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,EACf,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CACb,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,EACf,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAItB,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,eAAe;IAIhE,MAAM,CAAC,QAAQ,CAAC,QAAQ,o4TAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,eAAe;IAGzC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,MAAM;CAGxE"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC721/ERC721__factory.js b/dist/types/factories/@openzeppelin/contracts/token/ERC721/ERC721__factory.js deleted file mode 100644 index 5252e46f..00000000 --- a/dist/types/factories/@openzeppelin/contracts/token/ERC721/ERC721__factory.js +++ /dev/null @@ -1,382 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ERC721__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "string", - name: "name_", - type: "string", - }, - { - internalType: "string", - name: "symbol_", - type: "string", - }, - ], - stateMutability: "nonpayable", - type: "constructor", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "approved", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Approval", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: false, - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "ApprovalForAll", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Transfer", - type: "event", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "approve", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getApproved", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - name: "isApprovedForAll", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "name", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "ownerOf", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "safeTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "safeTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "setApprovalForAll", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "symbol", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "tokenURI", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "transferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -const _bytecode = "0x60806040523480156200001157600080fd5b50604051620013be380380620013be83398101604081905262000034916200011f565b600062000042838262000218565b50600162000051828262000218565b505050620002e4565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008257600080fd5b81516001600160401b03808211156200009f576200009f6200005a565b604051601f8301601f19908116603f01168101908282118183101715620000ca57620000ca6200005a565b81604052838152602092508683858801011115620000e757600080fd5b600091505b838210156200010b5785820183015181830184015290820190620000ec565b600093810190920192909252949350505050565b600080604083850312156200013357600080fd5b82516001600160401b03808211156200014b57600080fd5b620001598683870162000070565b935060208501519150808211156200017057600080fd5b506200017f8582860162000070565b9150509250929050565b600181811c908216806200019e57607f821691505b602082108103620001bf57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200021357600081815260208120601f850160051c81016020861015620001ee5750805b601f850160051c820191505b818110156200020f57828155600101620001fa565b5050505b505050565b81516001600160401b038111156200023457620002346200005a565b6200024c8162000245845462000189565b84620001c5565b602080601f8311600181146200028457600084156200026b5750858301515b600019600386901b1c1916600185901b1785556200020f565b600085815260208120601f198616915b82811015620002b55788860151825594840194600190910190840162000294565b5085821015620002d45787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6110ca80620002f46000396000f3fe608060405234801561001057600080fd5b50600436106100cf5760003560e01c80636352211e1161008c578063a22cb46511610066578063a22cb465146101b3578063b88d4fde146101c6578063c87b56dd146101d9578063e985e9c5146101ec57600080fd5b80636352211e1461017757806370a082311461018a57806395d89b41146101ab57600080fd5b806301ffc9a7146100d457806306fdde03146100fc578063081812fc14610111578063095ea7b31461013c57806323b872dd1461015157806342842e0e14610164575b600080fd5b6100e76100e2366004610c7f565b610228565b60405190151581526020015b60405180910390f35b61010461027a565b6040516100f39190610cec565b61012461011f366004610cff565b61030c565b6040516001600160a01b0390911681526020016100f3565b61014f61014a366004610d34565b610333565b005b61014f61015f366004610d5e565b61044d565b61014f610172366004610d5e565b61047e565b610124610185366004610cff565b610499565b61019d610198366004610d9a565b6104f9565b6040519081526020016100f3565b61010461057f565b61014f6101c1366004610db5565b61058e565b61014f6101d4366004610e07565b61059d565b6101046101e7366004610cff565b6105d5565b6100e76101fa366004610ee3565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b60006001600160e01b031982166380ac58cd60e01b148061025957506001600160e01b03198216635b5e139f60e01b145b8061027457506301ffc9a760e01b6001600160e01b03198316145b92915050565b60606000805461028990610f16565b80601f01602080910402602001604051908101604052809291908181526020018280546102b590610f16565b80156103025780601f106102d757610100808354040283529160200191610302565b820191906000526020600020905b8154815290600101906020018083116102e557829003601f168201915b5050505050905090565b600061031782610649565b506000908152600460205260409020546001600160a01b031690565b600061033e82610499565b9050806001600160a01b0316836001600160a01b0316036103b05760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084015b60405180910390fd5b336001600160a01b03821614806103cc57506103cc81336101fa565b61043e5760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016103a7565b61044883836106ab565b505050565b6104573382610719565b6104735760405162461bcd60e51b81526004016103a790610f50565b610448838383610798565b6104488383836040518060200160405280600081525061059d565b6000818152600260205260408120546001600160a01b0316806102745760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016103a7565b60006001600160a01b0382166105635760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b60648201526084016103a7565b506001600160a01b031660009081526003602052604090205490565b60606001805461028990610f16565b6105993383836108fc565b5050565b6105a73383610719565b6105c35760405162461bcd60e51b81526004016103a790610f50565b6105cf848484846109ca565b50505050565b60606105e082610649565b60006105f760408051602081019091526000815290565b905060008151116106175760405180602001604052806000815250610642565b80610621846109fd565b604051602001610632929190610f9d565b6040516020818303038152906040525b9392505050565b6000818152600260205260409020546001600160a01b03166106a85760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016103a7565b50565b600081815260046020526040902080546001600160a01b0319166001600160a01b03841690811790915581906106e082610499565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60008061072583610499565b9050806001600160a01b0316846001600160a01b0316148061076c57506001600160a01b0380821660009081526005602090815260408083209388168352929052205460ff165b806107905750836001600160a01b03166107858461030c565b6001600160a01b0316145b949350505050565b826001600160a01b03166107ab82610499565b6001600160a01b0316146107d15760405162461bcd60e51b81526004016103a790610fcc565b6001600160a01b0382166108335760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b60648201526084016103a7565b826001600160a01b031661084682610499565b6001600160a01b03161461086c5760405162461bcd60e51b81526004016103a790610fcc565b600081815260046020908152604080832080546001600160a01b03199081169091556001600160a01b0387811680865260038552838620805460001901905590871680865283862080546001019055868652600290945282852080549092168417909155905184937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b816001600160a01b0316836001600160a01b03160361095d5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c65720000000000000060448201526064016103a7565b6001600160a01b03838116600081815260056020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6109d5848484610798565b6109e184848484610a90565b6105cf5760405162461bcd60e51b81526004016103a790611011565b60606000610a0a83610b91565b600101905060008167ffffffffffffffff811115610a2a57610a2a610df1565b6040519080825280601f01601f191660200182016040528015610a54576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a8504945084610a5e57509392505050565b60006001600160a01b0384163b15610b8657604051630a85bd0160e11b81526001600160a01b0385169063150b7a0290610ad4903390899088908890600401611063565b6020604051808303816000875af1925050508015610b0f575060408051601f3d908101601f19168201909252610b0c918101906110a0565b60015b610b6c573d808015610b3d576040519150601f19603f3d011682016040523d82523d6000602084013e610b42565b606091505b508051600003610b645760405162461bcd60e51b81526004016103a790611011565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610790565b506001949350505050565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b8310610bd05772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef81000000008310610bfc576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc100008310610c1a57662386f26fc10000830492506010015b6305f5e1008310610c32576305f5e100830492506008015b6127108310610c4657612710830492506004015b60648310610c58576064830492506002015b600a83106102745760010192915050565b6001600160e01b0319811681146106a857600080fd5b600060208284031215610c9157600080fd5b813561064281610c69565b60005b83811015610cb7578181015183820152602001610c9f565b50506000910152565b60008151808452610cd8816020860160208601610c9c565b601f01601f19169290920160200192915050565b6020815260006106426020830184610cc0565b600060208284031215610d1157600080fd5b5035919050565b80356001600160a01b0381168114610d2f57600080fd5b919050565b60008060408385031215610d4757600080fd5b610d5083610d18565b946020939093013593505050565b600080600060608486031215610d7357600080fd5b610d7c84610d18565b9250610d8a60208501610d18565b9150604084013590509250925092565b600060208284031215610dac57600080fd5b61064282610d18565b60008060408385031215610dc857600080fd5b610dd183610d18565b915060208301358015158114610de657600080fd5b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b60008060008060808587031215610e1d57600080fd5b610e2685610d18565b9350610e3460208601610d18565b925060408501359150606085013567ffffffffffffffff80821115610e5857600080fd5b818701915087601f830112610e6c57600080fd5b813581811115610e7e57610e7e610df1565b604051601f8201601f19908116603f01168101908382118183101715610ea657610ea6610df1565b816040528281528a6020848701011115610ebf57600080fd5b82602086016020830137600060208483010152809550505050505092959194509250565b60008060408385031215610ef657600080fd5b610eff83610d18565b9150610f0d60208401610d18565b90509250929050565b600181811c90821680610f2a57607f821691505b602082108103610f4a57634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252602d908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526c1c881bdc88185c1c1c9bdd9959609a1b606082015260800190565b60008351610faf818460208801610c9c565b835190830190610fc3818360208801610c9c565b01949350505050565b60208082526025908201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060408201526437bbb732b960d91b606082015260800190565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061109690830184610cc0565b9695505050505050565b6000602082840312156110b257600080fd5b815161064281610c6956fea164736f6c6343000811000a"; -const isSuperArgs = (xs) => xs.length > 1; -class ERC721__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(name_, symbol_, overrides) { - return super.getDeployTransaction(name_, symbol_, overrides || {}); - } - deploy(name_, symbol_, overrides) { - return super.deploy(name_, symbol_, overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.ERC721__factory = ERC721__factory; -ERC721__factory.bytecode = _bytecode; -ERC721__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC721/IERC721Receiver__factory.d.ts b/dist/types/factories/@openzeppelin/contracts/token/ERC721/IERC721Receiver__factory.d.ts deleted file mode 100644 index b64749c6..00000000 --- a/dist/types/factories/@openzeppelin/contracts/token/ERC721/IERC721Receiver__factory.d.ts +++ /dev/null @@ -1,34 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IERC721Receiver, IERC721ReceiverInterface } from "../../../../../@openzeppelin/contracts/token/ERC721/IERC721Receiver"; -export declare class IERC721Receiver__factory { - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "onERC721Received"; - readonly outputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: ""; - readonly type: "bytes4"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): IERC721ReceiverInterface; - static connect(address: string, runner?: ContractRunner | null): IERC721Receiver; -} -//# sourceMappingURL=IERC721Receiver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC721/IERC721Receiver__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts/token/ERC721/IERC721Receiver__factory.d.ts.map deleted file mode 100644 index 4103f53b..00000000 --- a/dist/types/factories/@openzeppelin/contracts/token/ERC721/IERC721Receiver__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC721Receiver__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts/token/ERC721/IERC721Receiver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,eAAe,EACf,wBAAwB,EACzB,MAAM,qEAAqE,CAAC;AAuC7E,qBAAa,wBAAwB;IACnC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,wBAAwB;IAGlD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,eAAe;CAGnB"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC721/IERC721Receiver__factory.js b/dist/types/factories/@openzeppelin/contracts/token/ERC721/IERC721Receiver__factory.js deleted file mode 100644 index 2bfbed3d..00000000 --- a/dist/types/factories/@openzeppelin/contracts/token/ERC721/IERC721Receiver__factory.js +++ /dev/null @@ -1,50 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IERC721Receiver__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "onERC721Received", - outputs: [ - { - internalType: "bytes4", - name: "", - type: "bytes4", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, -]; -class IERC721Receiver__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IERC721Receiver__factory = IERC721Receiver__factory; -IERC721Receiver__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC721/IERC721__factory.d.ts b/dist/types/factories/@openzeppelin/contracts/token/ERC721/IERC721__factory.d.ts deleted file mode 100644 index fe78d7fb..00000000 --- a/dist/types/factories/@openzeppelin/contracts/token/ERC721/IERC721__factory.d.ts +++ /dev/null @@ -1,228 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IERC721, IERC721Interface } from "../../../../../@openzeppelin/contracts/token/ERC721/IERC721"; -export declare class IERC721__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "approved"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Approval"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "ApprovalForAll"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Transfer"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "approve"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "balanceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "balance"; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getApproved"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly name: "isApprovedForAll"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "ownerOf"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "setApprovalForAll"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "transferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): IERC721Interface; - static connect(address: string, runner?: ContractRunner | null): IERC721; -} -//# sourceMappingURL=IERC721__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC721/IERC721__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts/token/ERC721/IERC721__factory.d.ts.map deleted file mode 100644 index 16f252f4..00000000 --- a/dist/types/factories/@openzeppelin/contracts/token/ERC721/IERC721__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC721__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts/token/ERC721/IERC721__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,OAAO,EACP,gBAAgB,EACjB,MAAM,6DAA6D,CAAC;AAkSrE,qBAAa,gBAAgB;IAC3B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,gBAAgB;IAG1C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,OAAO;CAGzE"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC721/IERC721__factory.js b/dist/types/factories/@openzeppelin/contracts/token/ERC721/IERC721__factory.js deleted file mode 100644 index 5a131cb5..00000000 --- a/dist/types/factories/@openzeppelin/contracts/token/ERC721/IERC721__factory.js +++ /dev/null @@ -1,301 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IERC721__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "approved", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Approval", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: false, - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "ApprovalForAll", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Transfer", - type: "event", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "approve", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "balance", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getApproved", - outputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - name: "isApprovedForAll", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "ownerOf", - outputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "safeTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "safeTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "setApprovalForAll", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "transferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -class IERC721__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IERC721__factory = IERC721__factory; -IERC721__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata__factory.d.ts b/dist/types/factories/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata__factory.d.ts deleted file mode 100644 index 3f197c34..00000000 --- a/dist/types/factories/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata__factory.d.ts +++ /dev/null @@ -1,262 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IERC721Metadata, IERC721MetadataInterface } from "../../../../../../@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata"; -export declare class IERC721Metadata__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "approved"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Approval"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "ApprovalForAll"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Transfer"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "approve"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "balanceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "balance"; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getApproved"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly name: "isApprovedForAll"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "name"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "ownerOf"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "setApprovalForAll"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "symbol"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "tokenURI"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "transferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): IERC721MetadataInterface; - static connect(address: string, runner?: ContractRunner | null): IERC721Metadata; -} -//# sourceMappingURL=IERC721Metadata__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata__factory.d.ts.map deleted file mode 100644 index db140a2a..00000000 --- a/dist/types/factories/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC721Metadata__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,eAAe,EACf,wBAAwB,EACzB,MAAM,mFAAmF,CAAC;AA+U3F,qBAAa,wBAAwB;IACnC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,wBAAwB;IAGlD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,eAAe;CAGnB"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata__factory.js b/dist/types/factories/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata__factory.js deleted file mode 100644 index b507f19d..00000000 --- a/dist/types/factories/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata__factory.js +++ /dev/null @@ -1,346 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IERC721Metadata__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "approved", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Approval", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: false, - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "ApprovalForAll", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Transfer", - type: "event", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "approve", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "balance", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getApproved", - outputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - name: "isApprovedForAll", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "name", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "ownerOf", - outputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "safeTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "safeTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "setApprovalForAll", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "symbol", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "tokenURI", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "transferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -class IERC721Metadata__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IERC721Metadata__factory = IERC721Metadata__factory; -IERC721Metadata__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC721/extensions/index.d.ts b/dist/types/factories/@openzeppelin/contracts/token/ERC721/extensions/index.d.ts deleted file mode 100644 index 36b509f1..00000000 --- a/dist/types/factories/@openzeppelin/contracts/token/ERC721/extensions/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export { IERC721Metadata__factory } from "./IERC721Metadata__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC721/extensions/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts/token/ERC721/extensions/index.d.ts.map deleted file mode 100644 index 6431142e..00000000 --- a/dist/types/factories/@openzeppelin/contracts/token/ERC721/extensions/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../types/factories/@openzeppelin/contracts/token/ERC721/extensions/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC721/extensions/index.js b/dist/types/factories/@openzeppelin/contracts/token/ERC721/extensions/index.js deleted file mode 100644 index 8566aade..00000000 --- a/dist/types/factories/@openzeppelin/contracts/token/ERC721/extensions/index.js +++ /dev/null @@ -1,5 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IERC721Metadata__factory = void 0; -var IERC721Metadata__factory_1 = require("./IERC721Metadata__factory"); -Object.defineProperty(exports, "IERC721Metadata__factory", { enumerable: true, get: function () { return IERC721Metadata__factory_1.IERC721Metadata__factory; } }); diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC721/index.d.ts b/dist/types/factories/@openzeppelin/contracts/token/ERC721/index.d.ts deleted file mode 100644 index 2f25df8e..00000000 --- a/dist/types/factories/@openzeppelin/contracts/token/ERC721/index.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -export * as extensions from "./extensions"; -export { ERC721__factory } from "./ERC721__factory"; -export { IERC721__factory } from "./IERC721__factory"; -export { IERC721Receiver__factory } from "./IERC721Receiver__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC721/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts/token/ERC721/index.d.ts.map deleted file mode 100644 index d8392c08..00000000 --- a/dist/types/factories/@openzeppelin/contracts/token/ERC721/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts/token/ERC721/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/ERC721/index.js b/dist/types/factories/@openzeppelin/contracts/token/ERC721/index.js deleted file mode 100644 index fd64f043..00000000 --- a/dist/types/factories/@openzeppelin/contracts/token/ERC721/index.js +++ /dev/null @@ -1,33 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IERC721Receiver__factory = exports.IERC721__factory = exports.ERC721__factory = exports.extensions = void 0; -exports.extensions = __importStar(require("./extensions")); -var ERC721__factory_1 = require("./ERC721__factory"); -Object.defineProperty(exports, "ERC721__factory", { enumerable: true, get: function () { return ERC721__factory_1.ERC721__factory; } }); -var IERC721__factory_1 = require("./IERC721__factory"); -Object.defineProperty(exports, "IERC721__factory", { enumerable: true, get: function () { return IERC721__factory_1.IERC721__factory; } }); -var IERC721Receiver__factory_1 = require("./IERC721Receiver__factory"); -Object.defineProperty(exports, "IERC721Receiver__factory", { enumerable: true, get: function () { return IERC721Receiver__factory_1.IERC721Receiver__factory; } }); diff --git a/dist/types/factories/@openzeppelin/contracts/token/index.d.ts b/dist/types/factories/@openzeppelin/contracts/token/index.d.ts deleted file mode 100644 index 1fb67373..00000000 --- a/dist/types/factories/@openzeppelin/contracts/token/index.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export * as erc1155 from "./ERC1155"; -export * as erc20 from "./ERC20"; -export * as erc721 from "./ERC721"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts/token/index.d.ts.map deleted file mode 100644 index f74901e7..00000000 --- a/dist/types/factories/@openzeppelin/contracts/token/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/@openzeppelin/contracts/token/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AACrC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/token/index.js b/dist/types/factories/@openzeppelin/contracts/token/index.js deleted file mode 100644 index b40ffbef..00000000 --- a/dist/types/factories/@openzeppelin/contracts/token/index.js +++ /dev/null @@ -1,29 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.erc721 = exports.erc20 = exports.erc1155 = void 0; -exports.erc1155 = __importStar(require("./ERC1155")); -exports.erc20 = __importStar(require("./ERC20")); -exports.erc721 = __importStar(require("./ERC721")); diff --git a/dist/types/factories/@openzeppelin/contracts/utils/index.d.ts b/dist/types/factories/@openzeppelin/contracts/utils/index.d.ts deleted file mode 100644 index f58107dd..00000000 --- a/dist/types/factories/@openzeppelin/contracts/utils/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export * as introspection from "./introspection"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/utils/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts/utils/index.d.ts.map deleted file mode 100644 index 207d9eca..00000000 --- a/dist/types/factories/@openzeppelin/contracts/utils/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/@openzeppelin/contracts/utils/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,aAAa,MAAM,iBAAiB,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/utils/index.js b/dist/types/factories/@openzeppelin/contracts/utils/index.js deleted file mode 100644 index 76c77cb9..00000000 --- a/dist/types/factories/@openzeppelin/contracts/utils/index.js +++ /dev/null @@ -1,27 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.introspection = void 0; -exports.introspection = __importStar(require("./introspection")); diff --git a/dist/types/factories/@openzeppelin/contracts/utils/introspection/ERC165__factory.d.ts b/dist/types/factories/@openzeppelin/contracts/utils/introspection/ERC165__factory.d.ts deleted file mode 100644 index 9075f31e..00000000 --- a/dist/types/factories/@openzeppelin/contracts/utils/introspection/ERC165__factory.d.ts +++ /dev/null @@ -1,22 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { ERC165, ERC165Interface } from "../../../../../@openzeppelin/contracts/utils/introspection/ERC165"; -export declare class ERC165__factory { - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): ERC165Interface; - static connect(address: string, runner?: ContractRunner | null): ERC165; -} -//# sourceMappingURL=ERC165__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/utils/introspection/ERC165__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts/utils/introspection/ERC165__factory.d.ts.map deleted file mode 100644 index 0be32c8a..00000000 --- a/dist/types/factories/@openzeppelin/contracts/utils/introspection/ERC165__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ERC165__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts/utils/introspection/ERC165__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,MAAM,EACN,eAAe,EAChB,MAAM,mEAAmE,CAAC;AAwB3E,qBAAa,eAAe;IAC1B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,eAAe;IAGzC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,MAAM;CAGxE"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/utils/introspection/ERC165__factory.js b/dist/types/factories/@openzeppelin/contracts/utils/introspection/ERC165__factory.js deleted file mode 100644 index 4a819342..00000000 --- a/dist/types/factories/@openzeppelin/contracts/utils/introspection/ERC165__factory.js +++ /dev/null @@ -1,35 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ERC165__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class ERC165__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.ERC165__factory = ERC165__factory; -ERC165__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts/utils/introspection/IERC165__factory.d.ts b/dist/types/factories/@openzeppelin/contracts/utils/introspection/IERC165__factory.d.ts deleted file mode 100644 index 3726c768..00000000 --- a/dist/types/factories/@openzeppelin/contracts/utils/introspection/IERC165__factory.d.ts +++ /dev/null @@ -1,22 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IERC165, IERC165Interface } from "../../../../../@openzeppelin/contracts/utils/introspection/IERC165"; -export declare class IERC165__factory { - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): IERC165Interface; - static connect(address: string, runner?: ContractRunner | null): IERC165; -} -//# sourceMappingURL=IERC165__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/utils/introspection/IERC165__factory.d.ts.map b/dist/types/factories/@openzeppelin/contracts/utils/introspection/IERC165__factory.d.ts.map deleted file mode 100644 index 1acfd8db..00000000 --- a/dist/types/factories/@openzeppelin/contracts/utils/introspection/IERC165__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC165__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts/utils/introspection/IERC165__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,OAAO,EACP,gBAAgB,EACjB,MAAM,oEAAoE,CAAC;AAwB5E,qBAAa,gBAAgB;IAC3B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,gBAAgB;IAG1C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,OAAO;CAGzE"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/utils/introspection/IERC165__factory.js b/dist/types/factories/@openzeppelin/contracts/utils/introspection/IERC165__factory.js deleted file mode 100644 index 65af5cfc..00000000 --- a/dist/types/factories/@openzeppelin/contracts/utils/introspection/IERC165__factory.js +++ /dev/null @@ -1,35 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IERC165__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class IERC165__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IERC165__factory = IERC165__factory; -IERC165__factory.abi = _abi; diff --git a/dist/types/factories/@openzeppelin/contracts/utils/introspection/index.d.ts b/dist/types/factories/@openzeppelin/contracts/utils/introspection/index.d.ts deleted file mode 100644 index 085812d5..00000000 --- a/dist/types/factories/@openzeppelin/contracts/utils/introspection/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export { ERC165__factory } from "./ERC165__factory"; -export { IERC165__factory } from "./IERC165__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/utils/introspection/index.d.ts.map b/dist/types/factories/@openzeppelin/contracts/utils/introspection/index.d.ts.map deleted file mode 100644 index d3582437..00000000 --- a/dist/types/factories/@openzeppelin/contracts/utils/introspection/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/@openzeppelin/contracts/utils/introspection/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/contracts/utils/introspection/index.js b/dist/types/factories/@openzeppelin/contracts/utils/introspection/index.js deleted file mode 100644 index 0b84bab7..00000000 --- a/dist/types/factories/@openzeppelin/contracts/utils/introspection/index.js +++ /dev/null @@ -1,7 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IERC165__factory = exports.ERC165__factory = void 0; -var ERC165__factory_1 = require("./ERC165__factory"); -Object.defineProperty(exports, "ERC165__factory", { enumerable: true, get: function () { return ERC165__factory_1.ERC165__factory; } }); -var IERC165__factory_1 = require("./IERC165__factory"); -Object.defineProperty(exports, "IERC165__factory", { enumerable: true, get: function () { return IERC165__factory_1.IERC165__factory; } }); diff --git a/dist/types/factories/@openzeppelin/index.d.ts b/dist/types/factories/@openzeppelin/index.d.ts deleted file mode 100644 index 44c28a89..00000000 --- a/dist/types/factories/@openzeppelin/index.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export * as contracts from "./contracts"; -export * as contracts23 from "./contracts-2.3"; -export * as contractsUpgradeable from "./contracts-upgradeable"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/index.d.ts.map b/dist/types/factories/@openzeppelin/index.d.ts.map deleted file mode 100644 index 70625453..00000000 --- a/dist/types/factories/@openzeppelin/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../types/factories/@openzeppelin/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,WAAW,MAAM,iBAAiB,CAAC;AAC/C,OAAO,KAAK,oBAAoB,MAAM,yBAAyB,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/@openzeppelin/index.js b/dist/types/factories/@openzeppelin/index.js deleted file mode 100644 index 0066833f..00000000 --- a/dist/types/factories/@openzeppelin/index.js +++ /dev/null @@ -1,29 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.contractsUpgradeable = exports.contracts23 = exports.contracts = void 0; -exports.contracts = __importStar(require("./contracts")); -exports.contracts23 = __importStar(require("./contracts-2.3")); -exports.contractsUpgradeable = __importStar(require("./contracts-upgradeable")); diff --git a/dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry__factory.d.ts b/dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry__factory.d.ts deleted file mode 100644 index b16e2a75..00000000 --- a/dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry__factory.d.ts +++ /dev/null @@ -1,194 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../../common"; -import type { LegacyENSRegistry, LegacyENSRegistryInterface } from "../../../../contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry"; -declare type LegacyENSRegistryConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class LegacyENSRegistry__factory extends ContractFactory { - constructor(...args: LegacyENSRegistryConstructorParams); - getDeployTransaction(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): LegacyENSRegistry__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b5060008080526020527fad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb580546001600160a01b031916331790556104f6806100596000396000f3fe608060405234801561001057600080fd5b506004361061007d5760003560e01c806314ab90381161005b57806314ab90381461010957806316a25cbd1461011c5780631896f70a146101695780635b0fc9c31461017c57600080fd5b80630178b8bf1461008257806302571be3146100cb57806306ab5923146100f4575b600080fd5b6100ae610090366004610416565b6000908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100ae6100d9366004610416565b6000908152602081905260409020546001600160a01b031690565b61010761010236600461044b565b61018f565b005b610107610117366004610480565b61024c565b61015061012a366004610416565b600090815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100c2565b6101076101773660046104bd565b6102ef565b61010761018a3660046104bd565b610384565b60008381526020819052604090205483906001600160a01b031633146101b457600080fd5b60408051602080820187905281830186905282518083038401815260608301808552815191909201206001600160a01b0386169091529151859187917fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829181900360800190a3600090815260208190526040902080546001600160a01b0319166001600160a01b039390931692909217909155505050565b60008281526020819052604090205482906001600160a01b0316331461027157600080fd5b60405167ffffffffffffffff8316815283907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a250600091825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b60008281526020819052604090205482906001600160a01b0316331461031457600080fd5b6040516001600160a01b038316815283907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a25060009182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b60008281526020819052604090205482906001600160a01b031633146103a957600080fd5b6040516001600160a01b038316815283907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a25060009182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b60006020828403121561042857600080fd5b5035919050565b80356001600160a01b038116811461044657600080fd5b919050565b60008060006060848603121561046057600080fd5b83359250602084013591506104776040850161042f565b90509250925092565b6000806040838503121561049357600080fd5b82359150602083013567ffffffffffffffff811681146104b257600080fd5b809150509250929050565b600080604083850312156104d057600080fd5b823591506104e06020840161042f565b9050925092905056fea164736f6c6343000811000a"; - static readonly abi: readonly [{ - readonly inputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "constructor"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "label"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "NewOwner"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }]; - readonly name: "NewResolver"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "uint64"; - readonly name: "ttl"; - readonly type: "uint64"; - }]; - readonly name: "NewTTL"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "Transfer"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "owner"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "resolver"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "setOwner"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }]; - readonly name: "setResolver"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes32"; - readonly name: "label"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "setSubnodeOwner"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint64"; - readonly name: "ttl"; - readonly type: "uint64"; - }]; - readonly name: "setTTL"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "ttl"; - readonly outputs: readonly [{ - readonly internalType: "uint64"; - readonly name: ""; - readonly type: "uint64"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): LegacyENSRegistryInterface; - static connect(address: string, runner?: ContractRunner | null): LegacyENSRegistry; -} -export {}; -//# sourceMappingURL=LegacyENSRegistry__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry__factory.d.ts.map b/dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry__factory.d.ts.map deleted file mode 100644 index 93f921a6..00000000 --- a/dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"LegacyENSRegistry__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,KAAK,EACV,iBAAiB,EACjB,0BAA0B,EAC3B,MAAM,oEAAoE,CAAC;AAqO5E,aAAK,kCAAkC,GACnC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,0BAA2B,SAAQ,eAAe;gBACjD,GAAG,IAAI,EAAE,kCAAkC;IAQ9C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,0BAA0B;IAI3E,MAAM,CAAC,QAAQ,CAAC,QAAQ,sqFAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,0BAA0B;IAGpD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,iBAAiB;CAGrB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry__factory.js b/dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry__factory.js deleted file mode 100644 index 31dbef9a..00000000 --- a/dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry__factory.js +++ /dev/null @@ -1,257 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.LegacyENSRegistry__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [], - stateMutability: "nonpayable", - type: "constructor", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: true, - internalType: "bytes32", - name: "label", - type: "bytes32", - }, - { - indexed: false, - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "NewOwner", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "address", - name: "resolver", - type: "address", - }, - ], - name: "NewResolver", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "uint64", - name: "ttl", - type: "uint64", - }, - ], - name: "NewTTL", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "Transfer", - type: "event", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "resolver", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "setOwner", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "address", - name: "resolver", - type: "address", - }, - ], - name: "setResolver", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "label", - type: "bytes32", - }, - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "setSubnodeOwner", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "uint64", - name: "ttl", - type: "uint64", - }, - ], - name: "setTTL", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "ttl", - outputs: [ - { - internalType: "uint64", - name: "", - type: "uint64", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -const _bytecode = "0x608060405234801561001057600080fd5b5060008080526020527fad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb580546001600160a01b031916331790556104f6806100596000396000f3fe608060405234801561001057600080fd5b506004361061007d5760003560e01c806314ab90381161005b57806314ab90381461010957806316a25cbd1461011c5780631896f70a146101695780635b0fc9c31461017c57600080fd5b80630178b8bf1461008257806302571be3146100cb57806306ab5923146100f4575b600080fd5b6100ae610090366004610416565b6000908152602081905260409020600101546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100ae6100d9366004610416565b6000908152602081905260409020546001600160a01b031690565b61010761010236600461044b565b61018f565b005b610107610117366004610480565b61024c565b61015061012a366004610416565b600090815260208190526040902060010154600160a01b900467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016100c2565b6101076101773660046104bd565b6102ef565b61010761018a3660046104bd565b610384565b60008381526020819052604090205483906001600160a01b031633146101b457600080fd5b60408051602080820187905281830186905282518083038401815260608301808552815191909201206001600160a01b0386169091529151859187917fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e829181900360800190a3600090815260208190526040902080546001600160a01b0319166001600160a01b039390931692909217909155505050565b60008281526020819052604090205482906001600160a01b0316331461027157600080fd5b60405167ffffffffffffffff8316815283907f1d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa689060200160405180910390a250600091825260208290526040909120600101805467ffffffffffffffff909216600160a01b0267ffffffffffffffff60a01b19909216919091179055565b60008281526020819052604090205482906001600160a01b0316331461031457600080fd5b6040516001600160a01b038316815283907f335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a09060200160405180910390a25060009182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b60008281526020819052604090205482906001600160a01b031633146103a957600080fd5b6040516001600160a01b038316815283907fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2669060200160405180910390a25060009182526020829052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b60006020828403121561042857600080fd5b5035919050565b80356001600160a01b038116811461044657600080fd5b919050565b60008060006060848603121561046057600080fd5b83359250602084013591506104776040850161042f565b90509250925092565b6000806040838503121561049357600080fd5b82359150602083013567ffffffffffffffff811681146104b257600080fd5b809150509250929050565b600080604083850312156104d057600080fd5b823591506104e06020840161042f565b9050925092905056fea164736f6c6343000811000a"; -const isSuperArgs = (xs) => xs.length > 1; -class LegacyENSRegistry__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(overrides) { - return super.getDeployTransaction(overrides || {}); - } - deploy(overrides) { - return super.deploy(overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.LegacyENSRegistry__factory = LegacyENSRegistry__factory; -LegacyENSRegistry__factory.bytecode = _bytecode; -LegacyENSRegistry__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENS__factory.d.ts b/dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENS__factory.d.ts deleted file mode 100644 index 144a6b95..00000000 --- a/dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENS__factory.d.ts +++ /dev/null @@ -1,175 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { LegacyENS, LegacyENSInterface } from "../../../../contracts/@ens/LegacyENSRegistry.sol/LegacyENS"; -export declare class LegacyENS__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "label"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "NewOwner"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }]; - readonly name: "NewResolver"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "uint64"; - readonly name: "ttl"; - readonly type: "uint64"; - }]; - readonly name: "NewTTL"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "Transfer"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "owner"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "resolver"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "setOwner"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }]; - readonly name: "setResolver"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes32"; - readonly name: "label"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "setSubnodeOwner"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint64"; - readonly name: "ttl"; - readonly type: "uint64"; - }]; - readonly name: "setTTL"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "ttl"; - readonly outputs: readonly [{ - readonly internalType: "uint64"; - readonly name: ""; - readonly type: "uint64"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): LegacyENSInterface; - static connect(address: string, runner?: ContractRunner | null): LegacyENS; -} -//# sourceMappingURL=LegacyENS__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENS__factory.d.ts.map b/dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENS__factory.d.ts.map deleted file mode 100644 index 0499f704..00000000 --- a/dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENS__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"LegacyENS__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENS__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,SAAS,EACT,kBAAkB,EACnB,MAAM,4DAA4D,CAAC;AA6NpE,qBAAa,kBAAkB;IAC7B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,kBAAkB;IAG5C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,SAAS;CAG3E"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENS__factory.js b/dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENS__factory.js deleted file mode 100644 index b1fbe304..00000000 --- a/dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENS__factory.js +++ /dev/null @@ -1,232 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.LegacyENS__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: true, - internalType: "bytes32", - name: "label", - type: "bytes32", - }, - { - indexed: false, - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "NewOwner", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "address", - name: "resolver", - type: "address", - }, - ], - name: "NewResolver", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "uint64", - name: "ttl", - type: "uint64", - }, - ], - name: "NewTTL", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "Transfer", - type: "event", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "resolver", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "setOwner", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "address", - name: "resolver", - type: "address", - }, - ], - name: "setResolver", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "label", - type: "bytes32", - }, - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "setSubnodeOwner", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "uint64", - name: "ttl", - type: "uint64", - }, - ], - name: "setTTL", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "ttl", - outputs: [ - { - internalType: "uint64", - name: "", - type: "uint64", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class LegacyENS__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.LegacyENS__factory = LegacyENS__factory; -LegacyENS__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/index.d.ts b/dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/index.d.ts deleted file mode 100644 index 0562cff2..00000000 --- a/dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export { LegacyENS__factory } from "./LegacyENS__factory"; -export { LegacyENSRegistry__factory } from "./LegacyENSRegistry__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/index.d.ts.map b/dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/index.d.ts.map deleted file mode 100644 index 2dda94e7..00000000 --- a/dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/contracts/@ens/LegacyENSRegistry.sol/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/index.js b/dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/index.js deleted file mode 100644 index 3cee17f0..00000000 --- a/dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/index.js +++ /dev/null @@ -1,7 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.LegacyENSRegistry__factory = exports.LegacyENS__factory = void 0; -var LegacyENS__factory_1 = require("./LegacyENS__factory"); -Object.defineProperty(exports, "LegacyENS__factory", { enumerable: true, get: function () { return LegacyENS__factory_1.LegacyENS__factory; } }); -var LegacyENSRegistry__factory_1 = require("./LegacyENSRegistry__factory"); -Object.defineProperty(exports, "LegacyENSRegistry__factory", { enumerable: true, get: function () { return LegacyENSRegistry__factory_1.LegacyENSRegistry__factory; } }); diff --git a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar__factory.d.ts b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar__factory.d.ts deleted file mode 100644 index 40d61670..00000000 --- a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar__factory.d.ts +++ /dev/null @@ -1,562 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { BaseRegistrar, BaseRegistrarInterface } from "../../../../contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar"; -export declare class BaseRegistrar__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "approved"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Approval"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "ApprovalForAll"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "controller"; - readonly type: "address"; - }]; - readonly name: "ControllerAdded"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "controller"; - readonly type: "address"; - }]; - readonly name: "ControllerRemoved"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "expires"; - readonly type: "uint256"; - }]; - readonly name: "NameMigrated"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "expires"; - readonly type: "uint256"; - }]; - readonly name: "NameRegistered"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "expires"; - readonly type: "uint256"; - }]; - readonly name: "NameRenewed"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "previousOwner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "newOwner"; - readonly type: "address"; - }]; - readonly name: "OwnershipTransferred"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Transfer"; - readonly type: "event"; - }, { - readonly constant: true; - readonly inputs: readonly []; - readonly name: "GRACE_PERIOD"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "controller"; - readonly type: "address"; - }]; - readonly name: "addController"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "approve"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }]; - readonly name: "available"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "balanceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "balance"; - readonly type: "uint256"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly []; - readonly name: "baseNode"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly name: "controllers"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly []; - readonly name: "ens"; - readonly outputs: readonly [{ - readonly internalType: "contract ENS"; - readonly name: ""; - readonly type: "address"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getApproved"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly name: "isApprovedForAll"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly []; - readonly name: "isOwner"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }]; - readonly name: "nameExpires"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly []; - readonly name: "owner"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "ownerOf"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }, { - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "reclaim"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }, { - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "duration"; - readonly type: "uint256"; - }]; - readonly name: "register"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "controller"; - readonly type: "address"; - }]; - readonly name: "removeController"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "duration"; - readonly type: "uint256"; - }]; - readonly name: "renew"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly []; - readonly name: "renounceOwnership"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly internalType: "bool"; - readonly name: "_approved"; - readonly type: "bool"; - }]; - readonly name: "setApprovalForAll"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }]; - readonly name: "setResolver"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "transferFrom"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "newOwner"; - readonly type: "address"; - }]; - readonly name: "transferOwnership"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): BaseRegistrarInterface; - static connect(address: string, runner?: ContractRunner | null): BaseRegistrar; -} -//# sourceMappingURL=BaseRegistrar__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar__factory.d.ts.map b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar__factory.d.ts.map deleted file mode 100644 index 79d7fa41..00000000 --- a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"BaseRegistrar__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,aAAa,EACb,sBAAsB,EACvB,MAAM,2EAA2E,CAAC;AAosBnF,qBAAa,sBAAsB;IACjC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,sBAAsB;IAGhD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,aAAa;CAGjB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar__factory.js b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar__factory.js deleted file mode 100644 index 39baeeec..00000000 --- a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar__factory.js +++ /dev/null @@ -1,719 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.BaseRegistrar__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "approved", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Approval", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: false, - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "ApprovalForAll", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "controller", - type: "address", - }, - ], - name: "ControllerAdded", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "controller", - type: "address", - }, - ], - name: "ControllerRemoved", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "expires", - type: "uint256", - }, - ], - name: "NameMigrated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "expires", - type: "uint256", - }, - ], - name: "NameRegistered", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "expires", - type: "uint256", - }, - ], - name: "NameRenewed", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "previousOwner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnershipTransferred", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Transfer", - type: "event", - }, - { - constant: true, - inputs: [], - name: "GRACE_PERIOD", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "controller", - type: "address", - }, - ], - name: "addController", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "approve", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - ], - name: "available", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "balance", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "baseNode", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - name: "controllers", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "ens", - outputs: [ - { - internalType: "contract ENS", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getApproved", - outputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - name: "isApprovedForAll", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "isOwner", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - ], - name: "nameExpires", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "ownerOf", - outputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "reclaim", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "uint256", - name: "duration", - type: "uint256", - }, - ], - name: "register", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "controller", - type: "address", - }, - ], - name: "removeController", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - internalType: "uint256", - name: "duration", - type: "uint256", - }, - ], - name: "renew", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [], - name: "renounceOwnership", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "safeTransferFrom", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "safeTransferFrom", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "bool", - name: "_approved", - type: "bool", - }, - ], - name: "setApprovalForAll", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "resolver", - type: "address", - }, - ], - name: "setResolver", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "transferFrom", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "transferOwnership", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, -]; -class BaseRegistrar__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.BaseRegistrar__factory = BaseRegistrar__factory; -BaseRegistrar__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/ENS__factory.d.ts b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/ENS__factory.d.ts deleted file mode 100644 index f39aff0f..00000000 --- a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/ENS__factory.d.ts +++ /dev/null @@ -1,317 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { ENS, ENSInterface } from "../../../../contracts/@ens/LegacyETHRegistrarController.sol/ENS"; -export declare class ENS__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "ApprovalForAll"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "label"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "NewOwner"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }]; - readonly name: "NewResolver"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "uint64"; - readonly name: "ttl"; - readonly type: "uint64"; - }]; - readonly name: "NewTTL"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "Transfer"; - readonly type: "event"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly name: "isApprovedForAll"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "owner"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "recordExists"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "resolver"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "setApprovalForAll"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "setOwner"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }, { - readonly internalType: "uint64"; - readonly name: "ttl"; - readonly type: "uint64"; - }]; - readonly name: "setRecord"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }]; - readonly name: "setResolver"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes32"; - readonly name: "label"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "setSubnodeOwner"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes32"; - readonly name: "label"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }, { - readonly internalType: "uint64"; - readonly name: "ttl"; - readonly type: "uint64"; - }]; - readonly name: "setSubnodeRecord"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint64"; - readonly name: "ttl"; - readonly type: "uint64"; - }]; - readonly name: "setTTL"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "ttl"; - readonly outputs: readonly [{ - readonly internalType: "uint64"; - readonly name: ""; - readonly type: "uint64"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): ENSInterface; - static connect(address: string, runner?: ContractRunner | null): ENS; -} -//# sourceMappingURL=ENS__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/ENS__factory.d.ts.map b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/ENS__factory.d.ts.map deleted file mode 100644 index bd874d92..00000000 --- a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/ENS__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ENS__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/contracts/@ens/LegacyETHRegistrarController.sol/ENS__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,GAAG,EACH,YAAY,EACb,MAAM,iEAAiE,CAAC;AA8YzE,qBAAa,YAAY;IACvB,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,YAAY;IAGtC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,GAAG;CAGrE"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/ENS__factory.js b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/ENS__factory.js deleted file mode 100644 index a637dece..00000000 --- a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/ENS__factory.js +++ /dev/null @@ -1,409 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ENS__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: false, - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "ApprovalForAll", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: true, - internalType: "bytes32", - name: "label", - type: "bytes32", - }, - { - indexed: false, - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "NewOwner", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "address", - name: "resolver", - type: "address", - }, - ], - name: "NewResolver", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "uint64", - name: "ttl", - type: "uint64", - }, - ], - name: "NewTTL", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "Transfer", - type: "event", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - name: "isApprovedForAll", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "recordExists", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "resolver", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "setApprovalForAll", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "setOwner", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "address", - name: "resolver", - type: "address", - }, - { - internalType: "uint64", - name: "ttl", - type: "uint64", - }, - ], - name: "setRecord", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "address", - name: "resolver", - type: "address", - }, - ], - name: "setResolver", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "label", - type: "bytes32", - }, - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "setSubnodeOwner", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "label", - type: "bytes32", - }, - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "address", - name: "resolver", - type: "address", - }, - { - internalType: "uint64", - name: "ttl", - type: "uint64", - }, - ], - name: "setSubnodeRecord", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "uint64", - name: "ttl", - type: "uint64", - }, - ], - name: "setTTL", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "ttl", - outputs: [ - { - internalType: "uint64", - name: "", - type: "uint64", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, -]; -class ENS__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.ENS__factory = ENS__factory; -ENS__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/IERC165__factory.d.ts b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/IERC165__factory.d.ts deleted file mode 100644 index ba557020..00000000 --- a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/IERC165__factory.d.ts +++ /dev/null @@ -1,24 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IERC165, IERC165Interface } from "../../../../contracts/@ens/LegacyETHRegistrarController.sol/IERC165"; -export declare class IERC165__factory { - static readonly abi: readonly [{ - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): IERC165Interface; - static connect(address: string, runner?: ContractRunner | null): IERC165; -} -//# sourceMappingURL=IERC165__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/IERC165__factory.d.ts.map b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/IERC165__factory.d.ts.map deleted file mode 100644 index 04c825c4..00000000 --- a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/IERC165__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC165__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/contracts/@ens/LegacyETHRegistrarController.sol/IERC165__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,OAAO,EACP,gBAAgB,EACjB,MAAM,qEAAqE,CAAC;AA0B7E,qBAAa,gBAAgB;IAC3B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,gBAAgB;IAG1C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,OAAO;CAGzE"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/IERC165__factory.js b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/IERC165__factory.js deleted file mode 100644 index edac668d..00000000 --- a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/IERC165__factory.js +++ /dev/null @@ -1,37 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IERC165__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - constant: true, - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, -]; -class IERC165__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IERC165__factory = IERC165__factory; -IERC165__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/IERC721__factory.d.ts b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/IERC721__factory.d.ts deleted file mode 100644 index f828def0..00000000 --- a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/IERC721__factory.d.ts +++ /dev/null @@ -1,248 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IERC721, IERC721Interface } from "../../../../contracts/@ens/LegacyETHRegistrarController.sol/IERC721"; -export declare class IERC721__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "approved"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Approval"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "ApprovalForAll"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Transfer"; - readonly type: "event"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "approve"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "balanceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "balance"; - readonly type: "uint256"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getApproved"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly name: "isApprovedForAll"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "ownerOf"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly internalType: "bool"; - readonly name: "_approved"; - readonly type: "bool"; - }]; - readonly name: "setApprovalForAll"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "transferFrom"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): IERC721Interface; - static connect(address: string, runner?: ContractRunner | null): IERC721; -} -//# sourceMappingURL=IERC721__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/IERC721__factory.d.ts.map b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/IERC721__factory.d.ts.map deleted file mode 100644 index 1bb4576a..00000000 --- a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/IERC721__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC721__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/contracts/@ens/LegacyETHRegistrarController.sol/IERC721__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,OAAO,EACP,gBAAgB,EACjB,MAAM,qEAAqE,CAAC;AAsT7E,qBAAa,gBAAgB;IAC3B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,gBAAgB;IAG1C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,OAAO;CAGzE"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/IERC721__factory.js b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/IERC721__factory.js deleted file mode 100644 index 7a0e87d9..00000000 --- a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/IERC721__factory.js +++ /dev/null @@ -1,321 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IERC721__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "approved", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Approval", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: false, - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "ApprovalForAll", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Transfer", - type: "event", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "approve", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "balance", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getApproved", - outputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - name: "isApprovedForAll", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "ownerOf", - outputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "safeTransferFrom", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "safeTransferFrom", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "bool", - name: "_approved", - type: "bool", - }, - ], - name: "setApprovalForAll", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "transferFrom", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, -]; -class IERC721__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IERC721__factory = IERC721__factory; -IERC721__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController__factory.d.ts b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController__factory.d.ts deleted file mode 100644 index ecddcbe5..00000000 --- a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController__factory.d.ts +++ /dev/null @@ -1,464 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, BigNumberish, AddressLike, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../../common"; -import type { LegacyETHRegistrarController, LegacyETHRegistrarControllerInterface } from "../../../../contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController"; -declare type LegacyETHRegistrarControllerConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class LegacyETHRegistrarController__factory extends ContractFactory { - constructor(...args: LegacyETHRegistrarControllerConstructorParams); - getDeployTransaction(_base: AddressLike, _prices: AddressLike, _minCommitmentAge: BigNumberish, _maxCommitmentAge: BigNumberish, overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(_base: AddressLike, _prices: AddressLike, _minCommitmentAge: BigNumberish, _maxCommitmentAge: BigNumberish, overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): LegacyETHRegistrarController__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b50604051611a13380380611a138339818101604052608081101561003357600080fd5b5080516020820151604080840151606090940151600080546001600160a01b031916331780825592519495939491926001600160a01b0316917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a381811161009d57600080fd5b600180546001600160a01b039586166001600160a01b031991821617909155600280549490951693169290921790925560039190915560045561192e806100e56000396000f3fe60806040526004361061012a5760003560e01c80638d839ffe116100ab578063aeb8ce9b1161006f578063aeb8ce9b146105d7578063ce1e09c014610688578063f14fcbc81461069d578063f2fde38b146106c7578063f49826be146106fa578063f7a16963146107b95761012a565b80638d839ffe1461045d5780638da5cb5b146104725780638f32d59b146104a35780639791c097146104b8578063acf1a841146105695761012a565b80637e324479116100f25780637e324479146102b8578063839df945146102e857806383e7f6ff1461031257806385f6d155146103c55780638a95b09f146104485761012a565b806301ffc9a71461012f5780633ccfd60b146101775780633d86c52f1461018e578063530e784f14610270578063715018a6146102a3575b600080fd5b34801561013b57600080fd5b506101636004803603602081101561015257600080fd5b50356001600160e01b031916610881565b604080519115158252519081900360200190f35b34801561018357600080fd5b5061018c610a12565b005b34801561019a57600080fd5b5061025e600480360360a08110156101b157600080fd5b810190602081018135600160201b8111156101cb57600080fd5b8201836020820111156101dd57600080fd5b803590602001918460018302840111600160201b831117156101fe57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b0383358116945060208401359360408101358216935060600135169050610a53565b60408051918252519081900360200190f35b34801561027c57600080fd5b5061018c6004803603602081101561029357600080fd5b50356001600160a01b0316610b42565b3480156102af57600080fd5b5061018c610ba3565b3480156102c457600080fd5b5061018c600480360360408110156102db57600080fd5b5080359060200135610bfe565b3480156102f457600080fd5b5061025e6004803603602081101561030b57600080fd5b5035610c1a565b34801561031e57600080fd5b5061025e6004803603604081101561033557600080fd5b810190602081018135600160201b81111561034f57600080fd5b82018360208201111561036157600080fd5b803590602001918460018302840111600160201b8311171561038257600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505091359250610c2c915050565b61018c600480360360808110156103db57600080fd5b810190602081018135600160201b8111156103f557600080fd5b82018360208201111561040757600080fd5b803590602001918460018302840111600160201b8311171561042857600080fd5b91935091506001600160a01b038135169060208101359060400135610d9e565b34801561045457600080fd5b5061025e610de9565b34801561046957600080fd5b5061025e610df0565b34801561047e57600080fd5b50610487610df6565b604080516001600160a01b039092168252519081900360200190f35b3480156104af57600080fd5b50610163610e05565b3480156104c457600080fd5b50610163600480360360208110156104db57600080fd5b810190602081018135600160201b8111156104f557600080fd5b82018360208201111561050757600080fd5b803590602001918460018302840111600160201b8311171561052857600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610e16945050505050565b61018c6004803603604081101561057f57600080fd5b810190602081018135600160201b81111561059957600080fd5b8201836020820111156105ab57600080fd5b803590602001918460018302840111600160201b831117156105cc57600080fd5b919350915035610e2b565b3480156105e357600080fd5b50610163600480360360208110156105fa57600080fd5b810190602081018135600160201b81111561061457600080fd5b82018360208201111561062657600080fd5b803590602001918460018302840111600160201b8311171561064757600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610fcf945050505050565b34801561069457600080fd5b5061025e611069565b3480156106a957600080fd5b5061018c600480360360208110156106c057600080fd5b503561106f565b3480156106d357600080fd5b5061018c600480360360208110156106ea57600080fd5b50356001600160a01b03166110a1565b34801561070657600080fd5b5061025e6004803603606081101561071d57600080fd5b810190602081018135600160201b81111561073757600080fd5b82018360208201111561074957600080fd5b803590602001918460018302840111600160201b8311171561076a57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b0383351693505050602001356110bb565b61018c600480360360c08110156107cf57600080fd5b810190602081018135600160201b8111156107e957600080fd5b8201836020820111156107fb57600080fd5b803590602001918460018302840111600160201b8311171561081c57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b038335811694506020840135936040810135935060608101358216925060800135166110d3565b604080517f737570706f727473496e74657266616365286279746573342900000000000000815290519081900360190190206000906001600160e01b0319838116911614806109c05750604080517472656e657728737472696e672c75696e743235362960581b815290519081900360150181209080602861186a8239604080519182900360280182206e636f6d6d697428627974657333322960881b8352905191829003600f01822090925090806026611892823960260190506040518091039020604051808070617661696c61626c6528737472696e672960781b8152506011019050604051809103902060405180807f72656e74507269636528737472696e672c75696e7432353629000000000000008152506019019050604051809103902018181818186001600160e01b031916826001600160e01b031916145b80610a0c5750604051808061182a60409139604080519182900301812091508060426118b8823960420190506040518091039020186001600160e01b031916826001600160e01b031916145b92915050565b610a1a610e05565b610a2357600080fd5b6040513390303180156108fc02916000818181858888f19350505050158015610a50573d6000803e3d6000fd5b50565b845160208601206000906001600160a01b038416158015610a7b57506001600160a01b038316155b15610acb57604080516020808201939093526bffffffffffffffffffffffff19606089901b1681830152605480820188905282518083039091018152607490910190915280519101209050610b39565b6001600160a01b038416610ade57600080fd5b604080516020808201939093526bffffffffffffffffffffffff19606089811b82168385015287811b8216605484015286901b166068820152607c80820188905282518083039091018152609c909101909152805191012090505b95945050505050565b610b4a610e05565b610b5357600080fd5b600280546001600160a01b0319166001600160a01b0383811691909117918290556040519116907ff261845a790fe29bbd6631e2ca4a5bdc83e6eed7c3271d9590d97287e00e912390600090a250565b610bab610e05565b610bb457600080fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b610c06610e05565b610c0f57600080fd5b600391909155600455565b60056020526000908152604090205481565b815160208084019190912060025460015460408051636b727d4360e11b81526004810185905290516000956001600160a01b03948516946350e9a715948a9491169263d6e4fa8692602480840193919291829003018186803b158015610c9157600080fd5b505afa158015610ca5573d6000803e3d6000fd5b505050506040513d6020811015610cbb57600080fd5b50516040516001600160e01b031960e085901b168152602481018290526044810188905260606004820190815283516064830152835189928291608490910190602087019080838360005b83811015610d1e578181015183820152602001610d06565b50505050905090810190601f168015610d4b5780820380516001836020036101000a031916815260200191505b5094505050505060206040518083038186803b158015610d6a57600080fd5b505afa158015610d7e573d6000803e3d6000fd5b505050506040513d6020811015610d9457600080fd5b5051949350505050565b610de285858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250889350879250869150806110d3565b5050505050565b6224ea0081565b60035481565b6000546001600160a01b031690565b6000546001600160a01b0316331490565b60006003610e2383611646565b101592915050565b6000610e6e84848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250869250610c2c915050565b905080341015610e7d57600080fd5b60008484604051808383808284376040805193909101839003832060015463c475abff60e01b855260048501829052602485018b90529151909750600096506001600160a01b03909116945063c475abff93506044808401936020935082900301818787803b158015610eef57600080fd5b505af1158015610f03573d6000803e3d6000fd5b505050506040513d6020811015610f1957600080fd5b5051905034831015610f565760405133903485900380156108fc02916000818181858888f19350505050158015610f54573d6000803e3d6000fd5b505b817f3da24c024582931cfaf8267d8ed24d13a82a8068d5bd337d30ec45cea4e506ae8787868560405180806020018481526020018381526020018281038252868682818152602001925080828437600083820152604051601f909101601f191690920182900397509095505050505050a2505050505050565b80516020820120600090610fe283610e16565b80156110625750600154604080516312dc929d60e31b81526004810184905290516001600160a01b03909216916396e494e891602480820192602092909190829003018186803b15801561103557600080fd5b505afa158015611049573d6000803e3d6000fd5b505050506040513d602081101561105f57600080fd5b50515b9392505050565b60045481565b6004546000828152600560205260409020544291011061108e57600080fd5b6000908152600560205260409020429055565b6110a9610e05565b6110b257600080fd5b610a508161172e565b60006110cb848484600080610a53565b949350505050565b60006110e28787868686610a53565b905060006110f188878461179c565b885160208a01209091508060006001600160a01b038716156114ac5760015460408051633f2891eb60e21b815260048101859052306024820152604481018c905290516001600160a01b039092169163fca247ac916064808201926020929091908290030181600087803b15801561116857600080fd5b505af115801561117c573d6000803e3d6000fd5b505050506040513d602081101561119257600080fd5b505160015460408051630ddf7fcb60e41b815290519293506000926001600160a01b039092169163ddf7fcb091600480820192602092909190829003018186803b1580156111df57600080fd5b505afa1580156111f3573d6000803e3d6000fd5b505050506040513d602081101561120957600080fd5b50516040805160208181019390935280820187905281518082038301815260608201808452815191850191909120600154633f15457f60e01b90925292519294506001600160a01b031692633f15457f92606480840193829003018186803b15801561127457600080fd5b505afa158015611288573d6000803e3d6000fd5b505050506040513d602081101561129e57600080fd5b505160408051630c4b7b8560e11b8152600481018490526001600160a01b038b8116602483015291519190921691631896f70a91604480830192600092919082900301818387803b1580156112f257600080fd5b505af1158015611306573d6000803e3d6000fd5b505050506001600160a01b0387161561139257876001600160a01b031663d5fa2b0082896040518363ffffffff1660e01b815260040180838152602001826001600160a01b03166001600160a01b0316815260200192505050600060405180830381600087803b15801561137957600080fd5b505af115801561138d573d6000803e3d6000fd5b505050505b60015460408051630a3b53db60e21b8152600481018690526001600160a01b038e81166024830152915191909216916328ed4f6c91604480830192600092919082900301818387803b1580156113e757600080fd5b505af11580156113fb573d6000803e3d6000fd5b50505050600160009054906101000a90046001600160a01b03166001600160a01b03166323b872dd308d866040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050600060405180830381600087803b15801561148e57600080fd5b505af11580156114a2573d6000803e3d6000fd5b505050505061154c565b6001600160a01b038616156114c057600080fd5b60015460408051633f2891eb60e21b8152600481018590526001600160a01b038d81166024830152604482018d90529151919092169163fca247ac9160648083019260209291908290030181600087803b15801561151d57600080fd5b505af1158015611531573d6000803e3d6000fd5b505050506040513d602081101561154757600080fd5b505190505b896001600160a01b0316837fca6abbe9d7f11422cb6ca7629fbf6fe9efb1c621f71ce8f02b9f2a230097404f8d87856040518080602001848152602001838152602001828103825285818151815260200191508051906020019080838360005b838110156115c45781810151838201526020016115ac565b50505050905090810190601f1680156115f15780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a3833411156116395760405133903486900380156108fc02916000818181858888f19350505050158015611637573d6000803e3d6000fd5b505b5050505050505050505050565b8051600090819081905b8082101561172557600085838151811061166657fe5b01602001516001600160f81b0319169050600160ff1b81101561168e57600183019250611719565b600760fd1b6001600160f81b0319821610156116af57600283019250611719565b600f60fc1b6001600160f81b0319821610156116d057600383019250611719565b601f60fb1b6001600160f81b0319821610156116f157600483019250611719565b603f60fa1b6001600160f81b03198216101561171257600583019250611719565b6006830192505b50600190920191611650565b50909392505050565b6001600160a01b03811661174157600080fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b600354600082815260056020526040812054909142910111156117be57600080fd5b600454600083815260056020526040902054429101116117dd57600080fd5b6117e684610fcf565b6117ef57600080fd5b600082815260056020526040812081905561180a8585610c2c565b90506224ea0084101561181c57600080fd5b803410156110cb57600080fdfe6d616b65436f6d6d69746d656e7457697468436f6e66696728737472696e672c616464726573732c627974657333322c616464726573732c6164647265737329726567697374657228737472696e672c616464726573732c75696e743235362c62797465733332296d616b65436f6d6d69746d656e7428737472696e672c616464726573732c6279746573333229726567697374657257697468436f6e66696728737472696e672c616464726573732c75696e743235362c627974657333322c616464726573732c6164647265737329a265627a7a72315820ba74b4e49afb22de09a9ebda5d073d93e2a2a7b2530ce50def390c32cac92ea064736f6c634300050c0032"; - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "contract BaseRegistrar"; - readonly name: "_base"; - readonly type: "address"; - }, { - readonly internalType: "contract PriceOracle"; - readonly name: "_prices"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "_minCommitmentAge"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "_maxCommitmentAge"; - readonly type: "uint256"; - }]; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "constructor"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "string"; - readonly name: "name"; - readonly type: "string"; - }, { - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "label"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "cost"; - readonly type: "uint256"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "expires"; - readonly type: "uint256"; - }]; - readonly name: "NameRegistered"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "string"; - readonly name: "name"; - readonly type: "string"; - }, { - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "label"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "cost"; - readonly type: "uint256"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "expires"; - readonly type: "uint256"; - }]; - readonly name: "NameRenewed"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "oracle"; - readonly type: "address"; - }]; - readonly name: "NewPriceOracle"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "previousOwner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "newOwner"; - readonly type: "address"; - }]; - readonly name: "OwnershipTransferred"; - readonly type: "event"; - }, { - readonly constant: true; - readonly inputs: readonly []; - readonly name: "MIN_REGISTRATION_DURATION"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "name"; - readonly type: "string"; - }]; - readonly name: "available"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "commitment"; - readonly type: "bytes32"; - }]; - readonly name: "commit"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly name: "commitments"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly []; - readonly name: "isOwner"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "name"; - readonly type: "string"; - }, { - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "bytes32"; - readonly name: "secret"; - readonly type: "bytes32"; - }]; - readonly name: "makeCommitment"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly payable: false; - readonly stateMutability: "pure"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "name"; - readonly type: "string"; - }, { - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "bytes32"; - readonly name: "secret"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }]; - readonly name: "makeCommitmentWithConfig"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly payable: false; - readonly stateMutability: "pure"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly []; - readonly name: "maxCommitmentAge"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly []; - readonly name: "minCommitmentAge"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly []; - readonly name: "owner"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "name"; - readonly type: "string"; - }, { - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "duration"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes32"; - readonly name: "secret"; - readonly type: "bytes32"; - }]; - readonly name: "register"; - readonly outputs: readonly []; - readonly payable: true; - readonly stateMutability: "payable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "name"; - readonly type: "string"; - }, { - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "duration"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes32"; - readonly name: "secret"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }]; - readonly name: "registerWithConfig"; - readonly outputs: readonly []; - readonly payable: true; - readonly stateMutability: "payable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "name"; - readonly type: "string"; - }, { - readonly internalType: "uint256"; - readonly name: "duration"; - readonly type: "uint256"; - }]; - readonly name: "renew"; - readonly outputs: readonly []; - readonly payable: true; - readonly stateMutability: "payable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly []; - readonly name: "renounceOwnership"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "name"; - readonly type: "string"; - }, { - readonly internalType: "uint256"; - readonly name: "duration"; - readonly type: "uint256"; - }]; - readonly name: "rentPrice"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "_minCommitmentAge"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "_maxCommitmentAge"; - readonly type: "uint256"; - }]; - readonly name: "setCommitmentAges"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "contract PriceOracle"; - readonly name: "_prices"; - readonly type: "address"; - }]; - readonly name: "setPriceOracle"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceID"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly payable: false; - readonly stateMutability: "pure"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "newOwner"; - readonly type: "address"; - }]; - readonly name: "transferOwnership"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "name"; - readonly type: "string"; - }]; - readonly name: "valid"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly payable: false; - readonly stateMutability: "pure"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly []; - readonly name: "withdraw"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): LegacyETHRegistrarControllerInterface; - static connect(address: string, runner?: ContractRunner | null): LegacyETHRegistrarController; -} -export {}; -//# sourceMappingURL=LegacyETHRegistrarController__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController__factory.d.ts.map b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController__factory.d.ts.map deleted file mode 100644 index 924c2fd9..00000000 --- a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"LegacyETHRegistrarController__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,MAAM,EACN,YAAY,EACZ,WAAW,EACX,yBAAyB,EACzB,cAAc,EACf,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,KAAK,EACV,4BAA4B,EAC5B,qCAAqC,EACtC,MAAM,0FAA0F,CAAC;AAqjBlG,aAAK,6CAA6C,GAC9C,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,qCAAsC,SAAQ,eAAe;gBAC5D,GAAG,IAAI,EAAE,6CAA6C;IAQzD,oBAAoB,CAC3B,KAAK,EAAE,WAAW,EAClB,OAAO,EAAE,WAAW,EACpB,iBAAiB,EAAE,YAAY,EAC/B,iBAAiB,EAAE,YAAY,EAC/B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAS5B,MAAM,CACb,KAAK,EAAE,WAAW,EAClB,OAAO,EAAE,WAAW,EACpB,iBAAiB,EAAE,YAAY,EAC/B,iBAAiB,EAAE,YAAY,EAC/B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAUtB,2BAA2B;;IAIjD,OAAO,CACd,MAAM,EAAE,cAAc,GAAG,IAAI,GAC5B,qCAAqC;IAIxC,MAAM,CAAC,QAAQ,CAAC,QAAQ,8iaAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,qCAAqC;IAG/D,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,4BAA4B;CAOhC"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController__factory.js b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController__factory.js deleted file mode 100644 index 1d1ab79e..00000000 --- a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController__factory.js +++ /dev/null @@ -1,593 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.LegacyETHRegistrarController__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "contract BaseRegistrar", - name: "_base", - type: "address", - }, - { - internalType: "contract PriceOracle", - name: "_prices", - type: "address", - }, - { - internalType: "uint256", - name: "_minCommitmentAge", - type: "uint256", - }, - { - internalType: "uint256", - name: "_maxCommitmentAge", - type: "uint256", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "constructor", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "string", - name: "name", - type: "string", - }, - { - indexed: true, - internalType: "bytes32", - name: "label", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "cost", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "expires", - type: "uint256", - }, - ], - name: "NameRegistered", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "string", - name: "name", - type: "string", - }, - { - indexed: true, - internalType: "bytes32", - name: "label", - type: "bytes32", - }, - { - indexed: false, - internalType: "uint256", - name: "cost", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "expires", - type: "uint256", - }, - ], - name: "NameRenewed", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "oracle", - type: "address", - }, - ], - name: "NewPriceOracle", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "previousOwner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnershipTransferred", - type: "event", - }, - { - constant: true, - inputs: [], - name: "MIN_REGISTRATION_DURATION", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "string", - name: "name", - type: "string", - }, - ], - name: "available", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "commitment", - type: "bytes32", - }, - ], - name: "commit", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - name: "commitments", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "isOwner", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "string", - name: "name", - type: "string", - }, - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "bytes32", - name: "secret", - type: "bytes32", - }, - ], - name: "makeCommitment", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - payable: false, - stateMutability: "pure", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "string", - name: "name", - type: "string", - }, - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "bytes32", - name: "secret", - type: "bytes32", - }, - { - internalType: "address", - name: "resolver", - type: "address", - }, - { - internalType: "address", - name: "addr", - type: "address", - }, - ], - name: "makeCommitmentWithConfig", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - payable: false, - stateMutability: "pure", - type: "function", - }, - { - constant: true, - inputs: [], - name: "maxCommitmentAge", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "minCommitmentAge", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "string", - name: "name", - type: "string", - }, - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "uint256", - name: "duration", - type: "uint256", - }, - { - internalType: "bytes32", - name: "secret", - type: "bytes32", - }, - ], - name: "register", - outputs: [], - payable: true, - stateMutability: "payable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "string", - name: "name", - type: "string", - }, - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "uint256", - name: "duration", - type: "uint256", - }, - { - internalType: "bytes32", - name: "secret", - type: "bytes32", - }, - { - internalType: "address", - name: "resolver", - type: "address", - }, - { - internalType: "address", - name: "addr", - type: "address", - }, - ], - name: "registerWithConfig", - outputs: [], - payable: true, - stateMutability: "payable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "string", - name: "name", - type: "string", - }, - { - internalType: "uint256", - name: "duration", - type: "uint256", - }, - ], - name: "renew", - outputs: [], - payable: true, - stateMutability: "payable", - type: "function", - }, - { - constant: false, - inputs: [], - name: "renounceOwnership", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "string", - name: "name", - type: "string", - }, - { - internalType: "uint256", - name: "duration", - type: "uint256", - }, - ], - name: "rentPrice", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "_minCommitmentAge", - type: "uint256", - }, - { - internalType: "uint256", - name: "_maxCommitmentAge", - type: "uint256", - }, - ], - name: "setCommitmentAges", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "contract PriceOracle", - name: "_prices", - type: "address", - }, - ], - name: "setPriceOracle", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes4", - name: "interfaceID", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "pure", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "transferOwnership", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "string", - name: "name", - type: "string", - }, - ], - name: "valid", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "pure", - type: "function", - }, - { - constant: false, - inputs: [], - name: "withdraw", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, -]; -const _bytecode = "0x608060405234801561001057600080fd5b50604051611a13380380611a138339818101604052608081101561003357600080fd5b5080516020820151604080840151606090940151600080546001600160a01b031916331780825592519495939491926001600160a01b0316917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a381811161009d57600080fd5b600180546001600160a01b039586166001600160a01b031991821617909155600280549490951693169290921790925560039190915560045561192e806100e56000396000f3fe60806040526004361061012a5760003560e01c80638d839ffe116100ab578063aeb8ce9b1161006f578063aeb8ce9b146105d7578063ce1e09c014610688578063f14fcbc81461069d578063f2fde38b146106c7578063f49826be146106fa578063f7a16963146107b95761012a565b80638d839ffe1461045d5780638da5cb5b146104725780638f32d59b146104a35780639791c097146104b8578063acf1a841146105695761012a565b80637e324479116100f25780637e324479146102b8578063839df945146102e857806383e7f6ff1461031257806385f6d155146103c55780638a95b09f146104485761012a565b806301ffc9a71461012f5780633ccfd60b146101775780633d86c52f1461018e578063530e784f14610270578063715018a6146102a3575b600080fd5b34801561013b57600080fd5b506101636004803603602081101561015257600080fd5b50356001600160e01b031916610881565b604080519115158252519081900360200190f35b34801561018357600080fd5b5061018c610a12565b005b34801561019a57600080fd5b5061025e600480360360a08110156101b157600080fd5b810190602081018135600160201b8111156101cb57600080fd5b8201836020820111156101dd57600080fd5b803590602001918460018302840111600160201b831117156101fe57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b0383358116945060208401359360408101358216935060600135169050610a53565b60408051918252519081900360200190f35b34801561027c57600080fd5b5061018c6004803603602081101561029357600080fd5b50356001600160a01b0316610b42565b3480156102af57600080fd5b5061018c610ba3565b3480156102c457600080fd5b5061018c600480360360408110156102db57600080fd5b5080359060200135610bfe565b3480156102f457600080fd5b5061025e6004803603602081101561030b57600080fd5b5035610c1a565b34801561031e57600080fd5b5061025e6004803603604081101561033557600080fd5b810190602081018135600160201b81111561034f57600080fd5b82018360208201111561036157600080fd5b803590602001918460018302840111600160201b8311171561038257600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505091359250610c2c915050565b61018c600480360360808110156103db57600080fd5b810190602081018135600160201b8111156103f557600080fd5b82018360208201111561040757600080fd5b803590602001918460018302840111600160201b8311171561042857600080fd5b91935091506001600160a01b038135169060208101359060400135610d9e565b34801561045457600080fd5b5061025e610de9565b34801561046957600080fd5b5061025e610df0565b34801561047e57600080fd5b50610487610df6565b604080516001600160a01b039092168252519081900360200190f35b3480156104af57600080fd5b50610163610e05565b3480156104c457600080fd5b50610163600480360360208110156104db57600080fd5b810190602081018135600160201b8111156104f557600080fd5b82018360208201111561050757600080fd5b803590602001918460018302840111600160201b8311171561052857600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610e16945050505050565b61018c6004803603604081101561057f57600080fd5b810190602081018135600160201b81111561059957600080fd5b8201836020820111156105ab57600080fd5b803590602001918460018302840111600160201b831117156105cc57600080fd5b919350915035610e2b565b3480156105e357600080fd5b50610163600480360360208110156105fa57600080fd5b810190602081018135600160201b81111561061457600080fd5b82018360208201111561062657600080fd5b803590602001918460018302840111600160201b8311171561064757600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610fcf945050505050565b34801561069457600080fd5b5061025e611069565b3480156106a957600080fd5b5061018c600480360360208110156106c057600080fd5b503561106f565b3480156106d357600080fd5b5061018c600480360360208110156106ea57600080fd5b50356001600160a01b03166110a1565b34801561070657600080fd5b5061025e6004803603606081101561071d57600080fd5b810190602081018135600160201b81111561073757600080fd5b82018360208201111561074957600080fd5b803590602001918460018302840111600160201b8311171561076a57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b0383351693505050602001356110bb565b61018c600480360360c08110156107cf57600080fd5b810190602081018135600160201b8111156107e957600080fd5b8201836020820111156107fb57600080fd5b803590602001918460018302840111600160201b8311171561081c57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550506001600160a01b038335811694506020840135936040810135935060608101358216925060800135166110d3565b604080517f737570706f727473496e74657266616365286279746573342900000000000000815290519081900360190190206000906001600160e01b0319838116911614806109c05750604080517472656e657728737472696e672c75696e743235362960581b815290519081900360150181209080602861186a8239604080519182900360280182206e636f6d6d697428627974657333322960881b8352905191829003600f01822090925090806026611892823960260190506040518091039020604051808070617661696c61626c6528737472696e672960781b8152506011019050604051809103902060405180807f72656e74507269636528737472696e672c75696e7432353629000000000000008152506019019050604051809103902018181818186001600160e01b031916826001600160e01b031916145b80610a0c5750604051808061182a60409139604080519182900301812091508060426118b8823960420190506040518091039020186001600160e01b031916826001600160e01b031916145b92915050565b610a1a610e05565b610a2357600080fd5b6040513390303180156108fc02916000818181858888f19350505050158015610a50573d6000803e3d6000fd5b50565b845160208601206000906001600160a01b038416158015610a7b57506001600160a01b038316155b15610acb57604080516020808201939093526bffffffffffffffffffffffff19606089901b1681830152605480820188905282518083039091018152607490910190915280519101209050610b39565b6001600160a01b038416610ade57600080fd5b604080516020808201939093526bffffffffffffffffffffffff19606089811b82168385015287811b8216605484015286901b166068820152607c80820188905282518083039091018152609c909101909152805191012090505b95945050505050565b610b4a610e05565b610b5357600080fd5b600280546001600160a01b0319166001600160a01b0383811691909117918290556040519116907ff261845a790fe29bbd6631e2ca4a5bdc83e6eed7c3271d9590d97287e00e912390600090a250565b610bab610e05565b610bb457600080fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b610c06610e05565b610c0f57600080fd5b600391909155600455565b60056020526000908152604090205481565b815160208084019190912060025460015460408051636b727d4360e11b81526004810185905290516000956001600160a01b03948516946350e9a715948a9491169263d6e4fa8692602480840193919291829003018186803b158015610c9157600080fd5b505afa158015610ca5573d6000803e3d6000fd5b505050506040513d6020811015610cbb57600080fd5b50516040516001600160e01b031960e085901b168152602481018290526044810188905260606004820190815283516064830152835189928291608490910190602087019080838360005b83811015610d1e578181015183820152602001610d06565b50505050905090810190601f168015610d4b5780820380516001836020036101000a031916815260200191505b5094505050505060206040518083038186803b158015610d6a57600080fd5b505afa158015610d7e573d6000803e3d6000fd5b505050506040513d6020811015610d9457600080fd5b5051949350505050565b610de285858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250889350879250869150806110d3565b5050505050565b6224ea0081565b60035481565b6000546001600160a01b031690565b6000546001600160a01b0316331490565b60006003610e2383611646565b101592915050565b6000610e6e84848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250869250610c2c915050565b905080341015610e7d57600080fd5b60008484604051808383808284376040805193909101839003832060015463c475abff60e01b855260048501829052602485018b90529151909750600096506001600160a01b03909116945063c475abff93506044808401936020935082900301818787803b158015610eef57600080fd5b505af1158015610f03573d6000803e3d6000fd5b505050506040513d6020811015610f1957600080fd5b5051905034831015610f565760405133903485900380156108fc02916000818181858888f19350505050158015610f54573d6000803e3d6000fd5b505b817f3da24c024582931cfaf8267d8ed24d13a82a8068d5bd337d30ec45cea4e506ae8787868560405180806020018481526020018381526020018281038252868682818152602001925080828437600083820152604051601f909101601f191690920182900397509095505050505050a2505050505050565b80516020820120600090610fe283610e16565b80156110625750600154604080516312dc929d60e31b81526004810184905290516001600160a01b03909216916396e494e891602480820192602092909190829003018186803b15801561103557600080fd5b505afa158015611049573d6000803e3d6000fd5b505050506040513d602081101561105f57600080fd5b50515b9392505050565b60045481565b6004546000828152600560205260409020544291011061108e57600080fd5b6000908152600560205260409020429055565b6110a9610e05565b6110b257600080fd5b610a508161172e565b60006110cb848484600080610a53565b949350505050565b60006110e28787868686610a53565b905060006110f188878461179c565b885160208a01209091508060006001600160a01b038716156114ac5760015460408051633f2891eb60e21b815260048101859052306024820152604481018c905290516001600160a01b039092169163fca247ac916064808201926020929091908290030181600087803b15801561116857600080fd5b505af115801561117c573d6000803e3d6000fd5b505050506040513d602081101561119257600080fd5b505160015460408051630ddf7fcb60e41b815290519293506000926001600160a01b039092169163ddf7fcb091600480820192602092909190829003018186803b1580156111df57600080fd5b505afa1580156111f3573d6000803e3d6000fd5b505050506040513d602081101561120957600080fd5b50516040805160208181019390935280820187905281518082038301815260608201808452815191850191909120600154633f15457f60e01b90925292519294506001600160a01b031692633f15457f92606480840193829003018186803b15801561127457600080fd5b505afa158015611288573d6000803e3d6000fd5b505050506040513d602081101561129e57600080fd5b505160408051630c4b7b8560e11b8152600481018490526001600160a01b038b8116602483015291519190921691631896f70a91604480830192600092919082900301818387803b1580156112f257600080fd5b505af1158015611306573d6000803e3d6000fd5b505050506001600160a01b0387161561139257876001600160a01b031663d5fa2b0082896040518363ffffffff1660e01b815260040180838152602001826001600160a01b03166001600160a01b0316815260200192505050600060405180830381600087803b15801561137957600080fd5b505af115801561138d573d6000803e3d6000fd5b505050505b60015460408051630a3b53db60e21b8152600481018690526001600160a01b038e81166024830152915191909216916328ed4f6c91604480830192600092919082900301818387803b1580156113e757600080fd5b505af11580156113fb573d6000803e3d6000fd5b50505050600160009054906101000a90046001600160a01b03166001600160a01b03166323b872dd308d866040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050600060405180830381600087803b15801561148e57600080fd5b505af11580156114a2573d6000803e3d6000fd5b505050505061154c565b6001600160a01b038616156114c057600080fd5b60015460408051633f2891eb60e21b8152600481018590526001600160a01b038d81166024830152604482018d90529151919092169163fca247ac9160648083019260209291908290030181600087803b15801561151d57600080fd5b505af1158015611531573d6000803e3d6000fd5b505050506040513d602081101561154757600080fd5b505190505b896001600160a01b0316837fca6abbe9d7f11422cb6ca7629fbf6fe9efb1c621f71ce8f02b9f2a230097404f8d87856040518080602001848152602001838152602001828103825285818151815260200191508051906020019080838360005b838110156115c45781810151838201526020016115ac565b50505050905090810190601f1680156115f15780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a3833411156116395760405133903486900380156108fc02916000818181858888f19350505050158015611637573d6000803e3d6000fd5b505b5050505050505050505050565b8051600090819081905b8082101561172557600085838151811061166657fe5b01602001516001600160f81b0319169050600160ff1b81101561168e57600183019250611719565b600760fd1b6001600160f81b0319821610156116af57600283019250611719565b600f60fc1b6001600160f81b0319821610156116d057600383019250611719565b601f60fb1b6001600160f81b0319821610156116f157600483019250611719565b603f60fa1b6001600160f81b03198216101561171257600583019250611719565b6006830192505b50600190920191611650565b50909392505050565b6001600160a01b03811661174157600080fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b600354600082815260056020526040812054909142910111156117be57600080fd5b600454600083815260056020526040902054429101116117dd57600080fd5b6117e684610fcf565b6117ef57600080fd5b600082815260056020526040812081905561180a8585610c2c565b90506224ea0084101561181c57600080fd5b803410156110cb57600080fdfe6d616b65436f6d6d69746d656e7457697468436f6e66696728737472696e672c616464726573732c627974657333322c616464726573732c6164647265737329726567697374657228737472696e672c616464726573732c75696e743235362c62797465733332296d616b65436f6d6d69746d656e7428737472696e672c616464726573732c6279746573333229726567697374657257697468436f6e66696728737472696e672c616464726573732c75696e743235362c627974657333322c616464726573732c6164647265737329a265627a7a72315820ba74b4e49afb22de09a9ebda5d073d93e2a2a7b2530ce50def390c32cac92ea064736f6c634300050c0032"; -const isSuperArgs = (xs) => xs.length > 1; -class LegacyETHRegistrarController__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(_base, _prices, _minCommitmentAge, _maxCommitmentAge, overrides) { - return super.getDeployTransaction(_base, _prices, _minCommitmentAge, _maxCommitmentAge, overrides || {}); - } - deploy(_base, _prices, _minCommitmentAge, _maxCommitmentAge, overrides) { - return super.deploy(_base, _prices, _minCommitmentAge, _maxCommitmentAge, overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.LegacyETHRegistrarController__factory = LegacyETHRegistrarController__factory; -LegacyETHRegistrarController__factory.bytecode = _bytecode; -LegacyETHRegistrarController__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/Ownable__factory.d.ts b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/Ownable__factory.d.ts deleted file mode 100644 index ae7e919e..00000000 --- a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/Ownable__factory.d.ts +++ /dev/null @@ -1,72 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { Ownable, OwnableInterface } from "../../../../contracts/@ens/LegacyETHRegistrarController.sol/Ownable"; -export declare class Ownable__factory { - static readonly abi: readonly [{ - readonly inputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "constructor"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "previousOwner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "newOwner"; - readonly type: "address"; - }]; - readonly name: "OwnershipTransferred"; - readonly type: "event"; - }, { - readonly constant: true; - readonly inputs: readonly []; - readonly name: "isOwner"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly []; - readonly name: "owner"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly []; - readonly name: "renounceOwnership"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "newOwner"; - readonly type: "address"; - }]; - readonly name: "transferOwnership"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): OwnableInterface; - static connect(address: string, runner?: ContractRunner | null): Ownable; -} -//# sourceMappingURL=Ownable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/Ownable__factory.d.ts.map b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/Ownable__factory.d.ts.map deleted file mode 100644 index d2b1290e..00000000 --- a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/Ownable__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Ownable__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/contracts/@ens/LegacyETHRegistrarController.sol/Ownable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,OAAO,EACP,gBAAgB,EACjB,MAAM,qEAAqE,CAAC;AAoF7E,qBAAa,gBAAgB;IAC3B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,gBAAgB;IAG1C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,OAAO;CAGzE"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/Ownable__factory.js b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/Ownable__factory.js deleted file mode 100644 index 22c7fd01..00000000 --- a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/Ownable__factory.js +++ /dev/null @@ -1,95 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.Ownable__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [], - payable: false, - stateMutability: "nonpayable", - type: "constructor", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "previousOwner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnershipTransferred", - type: "event", - }, - { - constant: true, - inputs: [], - name: "isOwner", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [], - name: "renounceOwnership", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "transferOwnership", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, -]; -class Ownable__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.Ownable__factory = Ownable__factory; -Ownable__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle__factory.d.ts b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle__factory.d.ts deleted file mode 100644 index 9fe6d184..00000000 --- a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle__factory.d.ts +++ /dev/null @@ -1,32 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { PriceOracle, PriceOracleInterface } from "../../../../contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle"; -export declare class PriceOracle__factory { - static readonly abi: readonly [{ - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "name"; - readonly type: "string"; - }, { - readonly internalType: "uint256"; - readonly name: "expires"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "duration"; - readonly type: "uint256"; - }]; - readonly name: "price"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): PriceOracleInterface; - static connect(address: string, runner?: ContractRunner | null): PriceOracle; -} -//# sourceMappingURL=PriceOracle__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle__factory.d.ts.map b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle__factory.d.ts.map deleted file mode 100644 index 991bd473..00000000 --- a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"PriceOracle__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,WAAW,EACX,oBAAoB,EACrB,MAAM,yEAAyE,CAAC;AAoCjF,qBAAa,oBAAoB;IAC/B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,oBAAoB;IAG9C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,WAAW;CAG7E"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle__factory.js b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle__factory.js deleted file mode 100644 index 24d6a807..00000000 --- a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle__factory.js +++ /dev/null @@ -1,47 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.PriceOracle__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - constant: true, - inputs: [ - { - internalType: "string", - name: "name", - type: "string", - }, - { - internalType: "uint256", - name: "expires", - type: "uint256", - }, - { - internalType: "uint256", - name: "duration", - type: "uint256", - }, - ], - name: "price", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, -]; -class PriceOracle__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.PriceOracle__factory = PriceOracle__factory; -PriceOracle__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/Resolver__factory.d.ts b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/Resolver__factory.d.ts deleted file mode 100644 index 84aac7e8..00000000 --- a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/Resolver__factory.d.ts +++ /dev/null @@ -1,555 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { Resolver, ResolverInterface } from "../../../../contracts/@ens/LegacyETHRegistrarController.sol/Resolver"; -export declare class Resolver__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "contentType"; - readonly type: "uint256"; - }]; - readonly name: "ABIChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "address"; - readonly name: "a"; - readonly type: "address"; - }]; - readonly name: "AddrChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "coinType"; - readonly type: "uint256"; - }, { - readonly indexed: false; - readonly internalType: "bytes"; - readonly name: "newAddress"; - readonly type: "bytes"; - }]; - readonly name: "AddressChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "bytes32"; - readonly name: "hash"; - readonly type: "bytes32"; - }]; - readonly name: "ContentChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "bytes"; - readonly name: "hash"; - readonly type: "bytes"; - }]; - readonly name: "ContenthashChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "string"; - readonly name: "name"; - readonly type: "string"; - }]; - readonly name: "NameChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "bytes32"; - readonly name: "x"; - readonly type: "bytes32"; - }, { - readonly indexed: false; - readonly internalType: "bytes32"; - readonly name: "y"; - readonly type: "bytes32"; - }]; - readonly name: "PubkeyChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "string"; - readonly name: "indexedKey"; - readonly type: "string"; - }, { - readonly indexed: false; - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }]; - readonly name: "TextChanged"; - readonly type: "event"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "contentTypes"; - readonly type: "uint256"; - }]; - readonly name: "ABI"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "addr"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "coinType"; - readonly type: "uint256"; - }]; - readonly name: "addr"; - readonly outputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "content"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "contenthash"; - readonly outputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "dnsrr"; - readonly outputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes4"; - readonly name: "interfaceID"; - readonly type: "bytes4"; - }]; - readonly name: "interfaceImplementer"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "multihash"; - readonly outputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "name"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }]; - readonly name: "pubkey"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "x"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes32"; - readonly name: "y"; - readonly type: "bytes32"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "contentType"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "setABI"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "coinType"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "a"; - readonly type: "bytes"; - }]; - readonly name: "setAddr"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }]; - readonly name: "setAddr"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes32"; - readonly name: "hash"; - readonly type: "bytes32"; - }]; - readonly name: "setContent"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes"; - readonly name: "hash"; - readonly type: "bytes"; - }]; - readonly name: "setContenthash"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "setDnsrr"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes4"; - readonly name: "interfaceID"; - readonly type: "bytes4"; - }, { - readonly internalType: "address"; - readonly name: "implementer"; - readonly type: "address"; - }]; - readonly name: "setInterface"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes"; - readonly name: "hash"; - readonly type: "bytes"; - }]; - readonly name: "setMultihash"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "string"; - readonly name: "_name"; - readonly type: "string"; - }]; - readonly name: "setName"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes32"; - readonly name: "x"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes32"; - readonly name: "y"; - readonly type: "bytes32"; - }]; - readonly name: "setPubkey"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }, { - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }]; - readonly name: "setText"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceID"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly payable: false; - readonly stateMutability: "pure"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }]; - readonly name: "text"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): ResolverInterface; - static connect(address: string, runner?: ContractRunner | null): Resolver; -} -//# sourceMappingURL=Resolver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/Resolver__factory.d.ts.map b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/Resolver__factory.d.ts.map deleted file mode 100644 index aaae1fdd..00000000 --- a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/Resolver__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Resolver__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/contracts/@ens/LegacyETHRegistrarController.sol/Resolver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,QAAQ,EACR,iBAAiB,EAClB,MAAM,sEAAsE,CAAC;AA8rB9E,qBAAa,iBAAiB;IAC5B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,iBAAiB;IAG3C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,QAAQ;CAG1E"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/Resolver__factory.js b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/Resolver__factory.js deleted file mode 100644 index a0ac2ad3..00000000 --- a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/Resolver__factory.js +++ /dev/null @@ -1,713 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.Resolver__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: true, - internalType: "uint256", - name: "contentType", - type: "uint256", - }, - ], - name: "ABIChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "address", - name: "a", - type: "address", - }, - ], - name: "AddrChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "uint256", - name: "coinType", - type: "uint256", - }, - { - indexed: false, - internalType: "bytes", - name: "newAddress", - type: "bytes", - }, - ], - name: "AddressChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "bytes32", - name: "hash", - type: "bytes32", - }, - ], - name: "ContentChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "bytes", - name: "hash", - type: "bytes", - }, - ], - name: "ContenthashChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "string", - name: "name", - type: "string", - }, - ], - name: "NameChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: false, - internalType: "bytes32", - name: "x", - type: "bytes32", - }, - { - indexed: false, - internalType: "bytes32", - name: "y", - type: "bytes32", - }, - ], - name: "PubkeyChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: true, - internalType: "string", - name: "indexedKey", - type: "string", - }, - { - indexed: false, - internalType: "string", - name: "key", - type: "string", - }, - ], - name: "TextChanged", - type: "event", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "uint256", - name: "contentTypes", - type: "uint256", - }, - ], - name: "ABI", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "addr", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "uint256", - name: "coinType", - type: "uint256", - }, - ], - name: "addr", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "content", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "contenthash", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "dnsrr", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "bytes4", - name: "interfaceID", - type: "bytes4", - }, - ], - name: "interfaceImplementer", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "multihash", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "name", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - ], - name: "pubkey", - outputs: [ - { - internalType: "bytes32", - name: "x", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "y", - type: "bytes32", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "uint256", - name: "contentType", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "setABI", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "uint256", - name: "coinType", - type: "uint256", - }, - { - internalType: "bytes", - name: "a", - type: "bytes", - }, - ], - name: "setAddr", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "address", - name: "addr", - type: "address", - }, - ], - name: "setAddr", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "hash", - type: "bytes32", - }, - ], - name: "setContent", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "bytes", - name: "hash", - type: "bytes", - }, - ], - name: "setContenthash", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "setDnsrr", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "bytes4", - name: "interfaceID", - type: "bytes4", - }, - { - internalType: "address", - name: "implementer", - type: "address", - }, - ], - name: "setInterface", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "bytes", - name: "hash", - type: "bytes", - }, - ], - name: "setMultihash", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "string", - name: "_name", - type: "string", - }, - ], - name: "setName", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "x", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "y", - type: "bytes32", - }, - ], - name: "setPubkey", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "string", - name: "key", - type: "string", - }, - { - internalType: "string", - name: "value", - type: "string", - }, - ], - name: "setText", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes4", - name: "interfaceID", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "pure", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - internalType: "string", - name: "key", - type: "string", - }, - ], - name: "text", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, -]; -class Resolver__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.Resolver__factory = Resolver__factory; -Resolver__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/index.d.ts b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/index.d.ts deleted file mode 100644 index c6f13807..00000000 --- a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/index.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -export { BaseRegistrar__factory } from "./BaseRegistrar__factory"; -export { ENS__factory } from "./ENS__factory"; -export { IERC165__factory } from "./IERC165__factory"; -export { IERC721__factory } from "./IERC721__factory"; -export { LegacyETHRegistrarController__factory } from "./LegacyETHRegistrarController__factory"; -export { Ownable__factory } from "./Ownable__factory"; -export { PriceOracle__factory } from "./PriceOracle__factory"; -export { Resolver__factory } from "./Resolver__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/index.d.ts.map b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/index.d.ts.map deleted file mode 100644 index 8dba62c3..00000000 --- a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/contracts/@ens/LegacyETHRegistrarController.sol/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,qCAAqC,EAAE,MAAM,yCAAyC,CAAC;AAChG,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/index.js b/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/index.js deleted file mode 100644 index e2a609a0..00000000 --- a/dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/index.js +++ /dev/null @@ -1,19 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.Resolver__factory = exports.PriceOracle__factory = exports.Ownable__factory = exports.LegacyETHRegistrarController__factory = exports.IERC721__factory = exports.IERC165__factory = exports.ENS__factory = exports.BaseRegistrar__factory = void 0; -var BaseRegistrar__factory_1 = require("./BaseRegistrar__factory"); -Object.defineProperty(exports, "BaseRegistrar__factory", { enumerable: true, get: function () { return BaseRegistrar__factory_1.BaseRegistrar__factory; } }); -var ENS__factory_1 = require("./ENS__factory"); -Object.defineProperty(exports, "ENS__factory", { enumerable: true, get: function () { return ENS__factory_1.ENS__factory; } }); -var IERC165__factory_1 = require("./IERC165__factory"); -Object.defineProperty(exports, "IERC165__factory", { enumerable: true, get: function () { return IERC165__factory_1.IERC165__factory; } }); -var IERC721__factory_1 = require("./IERC721__factory"); -Object.defineProperty(exports, "IERC721__factory", { enumerable: true, get: function () { return IERC721__factory_1.IERC721__factory; } }); -var LegacyETHRegistrarController__factory_1 = require("./LegacyETHRegistrarController__factory"); -Object.defineProperty(exports, "LegacyETHRegistrarController__factory", { enumerable: true, get: function () { return LegacyETHRegistrarController__factory_1.LegacyETHRegistrarController__factory; } }); -var Ownable__factory_1 = require("./Ownable__factory"); -Object.defineProperty(exports, "Ownable__factory", { enumerable: true, get: function () { return Ownable__factory_1.Ownable__factory; } }); -var PriceOracle__factory_1 = require("./PriceOracle__factory"); -Object.defineProperty(exports, "PriceOracle__factory", { enumerable: true, get: function () { return PriceOracle__factory_1.PriceOracle__factory; } }); -var Resolver__factory_1 = require("./Resolver__factory"); -Object.defineProperty(exports, "Resolver__factory", { enumerable: true, get: function () { return Resolver__factory_1.Resolver__factory; } }); diff --git a/dist/types/factories/contracts/@ens/dnssec/DNSRegistrar__factory.d.ts b/dist/types/factories/contracts/@ens/dnssec/DNSRegistrar__factory.d.ts deleted file mode 100644 index 0a258226..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/DNSRegistrar__factory.d.ts +++ /dev/null @@ -1,219 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, AddressLike, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../../common"; -import type { DNSRegistrar, DNSRegistrarInterface } from "../../../../contracts/@ens/dnssec/DNSRegistrar"; -declare type DNSRegistrarConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class DNSRegistrar__factory extends ContractFactory { - constructor(...args: DNSRegistrarConstructorParams); - getDeployTransaction(_dnssec: AddressLike, _suffixes: AddressLike, _ens: AddressLike, overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(_dnssec: AddressLike, _suffixes: AddressLike, _ens: AddressLike, overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): DNSRegistrar__factory; - static readonly bytecode = "0x60806040523480156200001157600080fd5b5060405162001f1438038062001f14833981016040819052620000349162000118565b600080546001600160a01b0319166001600160a01b0385169081179091556040519081527fb3eacd0e351fafdfefdec84e1cd19679b38dbcd63ea7c2c24da17fd2bc3b3c0e9060200160405180910390a1600280546001600160a01b0319166001600160a01b0384169081179091556040519081527f9176b7f47e4504df5e5516c99d90d82ac7cbd49cc77e7f22ba2ac2f2e3a3eba89060200160405180910390a1600180546001600160a01b0319166001600160a01b0392909216919091179055506200016c9050565b6001600160a01b03811681146200011557600080fd5b50565b6000806000606084860312156200012e57600080fd5b83516200013b81620000ff565b60208501519093506200014e81620000ff565b60408501519092506200016181620000ff565b809150509250925092565b611d98806200017c6000396000f3fe608060405234801561001057600080fd5b50600436106100935760003560e01c80633f15457f116100665780633f15457f146101135780637adbf973146101265780637dc0d1d0146101395780638bbedf751461014c578063be27b22c1461015f57600080fd5b806301ffc9a7146100985780631ecfc411146100c0578063224199c2146100d557806330349ebe146100e8575b600080fd5b6100ab6100a6366004611649565b610172565b60405190151581526020015b60405180910390f35b6100d36100ce36600461168b565b6101a9565b005b6100d36100e3366004611890565b6102eb565b6002546100fb906001600160a01b031681565b6040516001600160a01b0390911681526020016100b7565b6001546100fb906001600160a01b031681565b6100d361013436600461168b565b610668565b6000546100fb906001600160a01b031681565b6100d361015a366004611940565b6107a1565b6100d361016d3660046119c8565b61082b565b60006001600160e01b031982166301ffc9a760e01b14806101a357506001600160e01b031982166317d8f49b60e01b145b92915050565b6001546040516302571be360e01b8152600060048201819052916001600160a01b0316906302571be390602401602060405180830381865afa1580156101f3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102179190611a2c565b90506000816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610259573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061027d9190611a2c565b9050336001600160a01b0382161461029457600080fd5b600280546001600160a01b0319166001600160a01b0385169081179091556040519081527f9176b7f47e4504df5e5516c99d90d82ac7cbd49cc77e7f22ba2ac2f2e3a3eba8906020015b60405180910390a1505050565b6000546040516321ae60b160e11b81526001600160a01b039091169063435cc1629061031d9087908790600401611a99565b6000604051808303816000875af115801561033c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526103649190810190611b32565b9250600080600061037588876108ca565b91945092509050336001600160a01b038216146103ef5760405162461bcd60e51b815260206004820152602d60248201527f4f6e6c79206f776e65722063616e2063616c6c2070726f7665416e64436c616960448201526c36abb4ba342932b9b7b63b32b960991b60648201526084015b60405180910390fd5b6001600160a01b038416156105e1576001600160a01b0385166104635760405162461bcd60e51b815260206004820152602660248201527f43616e6e6f74207365742061646472206966207265736f6c766572206973206e6044820152651bdd081cd95d60d21b60648201526084016103e6565b6001546040516305ef2c7f60e41b815260048101859052602481018490523060448201526001600160a01b0387811660648301526000608483015290911690635ef2c7f09060a401600060405180830381600087803b1580156104c557600080fd5b505af11580156104d9573d6000803e3d6000fd5b50505050600083836040516020016104fb929190918252602082015260400190565b60408051808303601f1901815290829052805160209091012062d5fa2b60e81b8252600482018190526001600160a01b03878116602484015290925087169063d5fa2b0090604401600060405180830381600087803b15801561055d57600080fd5b505af1158015610571573d6000803e3d6000fd5b5050600154604051635b0fc9c360e01b8152600481018590526001600160a01b0386811660248301529091169250635b0fc9c39150604401600060405180830381600087803b1580156105c357600080fd5b505af11580156105d7573d6000803e3d6000fd5b505050505061065e565b6001546040516305ef2c7f60e41b815260048101859052602481018490526001600160a01b03838116604483015287811660648301526000608483015290911690635ef2c7f09060a401600060405180830381600087803b15801561064557600080fd5b505af1158015610659573d6000803e3d6000fd5b505050505b5050505050505050565b6001546040516302571be360e01b8152600060048201819052916001600160a01b0316906302571be390602401602060405180830381865afa1580156106b2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106d69190611a2c565b90506000816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610718573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061073c9190611a2c565b9050336001600160a01b0382161461075357600080fd5b600080546001600160a01b0319166001600160a01b0385169081179091556040519081527fb3eacd0e351fafdfefdec84e1cd19679b38dbcd63ea7c2c24da17fd2bc3b3c0e906020016102de565b6000546040516321ae60b160e11b81526001600160a01b039091169063435cc162906107d39085908590600401611a99565b6000604051808303816000875af11580156107f2573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261081a9190810190611b32565b9050610826838261082b565b505050565b600080600061083a85856108ca565b6001546040516306ab592360e01b815260048101859052602481018490526001600160a01b03808416604483015294975092955090935091909116906306ab5923906064016020604051808303816000875af115801561089e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108c29190611ba9565b505050505050565b60008080806108d98682610a85565b60ff1690506108ea86600183610aa9565b9250600061091d6108fc836001611bd8565b6001848a5161090b9190611beb565b6109159190611beb565b899190610acd565b6002546040516327c482cf60e11b81529192506001600160a01b031690634f89059e9061094e908490600401611bfe565b602060405180830381865afa15801561096b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061098f9190611c11565b6109e75760405162461bcd60e51b815260206004820152602360248201527f506172656e74206e616d65206d7573742062652061207075626c6963207375666044820152620ccd2f60eb1b60648201526084016103e6565b6109f2816000610b4f565b600054909550610a0c906001600160a01b03168888610e40565b5060408051602081018890529081018690529093506001600160a01b03841690606001604051602081830303815290604052805190602001207fa2e66ce20e6fb2c4f61339c364ad79f15160cf5307230c8bc4d628adbca2ba3989604051610a749190611bfe565b60405180910390a350509250925092565b6000828281518110610a9957610a99611c33565b016020015160f81c905092915050565b8251600090610ab88385611bd8565b1115610ac357600080fd5b5091016020012090565b8251606090610adc8385611bd8565b1115610ae757600080fd5b60008267ffffffffffffffff811115610b0257610b026116a8565b6040519080825280601f01601f191660200182016040528015610b2c576020820181803683370190505b50905060208082019086860101610b44828287611072565b509095945050505050565b600080610b5c8484610a85565b60ff16905080600003610b735750600090506101a3565b6000610b9385610b838487611bd8565b610b8e906001611bd8565b610b4f565b90506000610bad610ba5866001611bd8565b879085610aa9565b604080516020810185905290810182905290915060600160408051808303601f190181529082905280516020909101206001546302571be360e01b8352600483018290529095506000916001600160a01b03909116906302571be390602401602060405180830381865afa158015610c29573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c4d9190611a2c565b90506001600160a01b0381161580610c6d57506001600160a01b03811630145b610ccc5760405162461bcd60e51b815260206004820152602a60248201527f43616e6e6f7420656e61626c652061206e616d65206f776e656420627920736f6044820152696d656f6e6520656c736560b01b60648201526084016103e6565b6001600160a01b0381163014610e365782610db8576001546040516302571be360e01b8152600060048201819052916001600160a01b0316906302571be390602401602060405180830381865afa158015610d2b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d4f9190611a2c565b60405163232e3b3b60e21b8152600481018590523060248201529091506001600160a01b03821690638cb8ecec90604401600060405180830381600087803b158015610d9a57600080fd5b505af1158015610dae573d6000803e3d6000fd5b5050505050610e36565b6001546040516306ab592360e01b815260048101859052602481018490523060448201526001600160a01b03909116906306ab5923906064016020604051808303816000875af1158015610e10573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e349190611ba9565b505b5050505092915050565b600080610e60604051806040016040528060608152602001600081525090565b610e7885516005610e719190611bd8565b82906110c8565b50604080518082019091526005815264045f656e7360d81b6020820152610ea090829061112d565b50610eab818661112d565b50805160405163021e646f60e21b815260009182916001600160a01b038a169163087991bc91610ee091601091600401611c49565b606060405180830381865afa158015610efd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f219190611c7f565b93509150506bffffffffffffffffffffffff198216158015610f4257508551155b15610f56576000809450945050505061106a565b855160208701206bffffffffffffffffffffffff19838116911614610f7a57600080fd5b6000610f86878261115b565b90505b8051516020820151101561105e57610fb0816080015183610faa9190611cd8565b426111bc565b6110225760405162461bcd60e51b815260206004820152603c60248201527f444e53207265636f7264206973207374616c653b2072656672657368206f722060448201527f64656c657465206974206265666f72652070726f63656564696e672e0000000060648201526084016103e6565b600080611033898460a001516111d5565b92509050811561104e5796506001955061106a945050505050565b505061105981611248565b610f89565b50600080945094505050505b935093915050565b602081106110aa5781518352611089602084611bd8565b9250611096602083611bd8565b91506110a3602082611beb565b9050611072565b905182516020929092036101000a6000190180199091169116179052565b6040805180820190915260608152600060208201526110e8602083611cfc565b15611110576110f8602083611cfc565b611103906020611beb565b61110d9083611bd8565b91505b506020828101829052604080518085526000815290920101905290565b60408051808201909152606081526000602082015261115483846000015151848551611330565b9392505050565b6111a96040518060e001604052806060815260200160008152602001600061ffff168152602001600061ffff168152602001600063ffffffff16815260200160008152602001600081525090565b82815260c081018290526101a381611248565b6000806111c98385611d1e565b60030b12159392505050565b6000805b835183101561123a5760006111ee8585610a85565b60ff1690506111fe600185611bd8565b935060008061120e87878561141a565b92509050811561122657935060019250611241915050565b6112308387611bd8565b95505050506111d9565b5060009050805b9250929050565b60c0810151602082018190528151511161125f5750565b600061127382600001518360200151611476565b82602001516112829190611bd8565b825190915061129190826114d8565b61ffff1660408301526112a5600282611bd8565b82519091506112b490826114d8565b61ffff1660608301526112c8600282611bd8565b82519091506112d79082611500565b63ffffffff1660808301526112ed600482611bd8565b82519091506000906112ff90836114d8565b61ffff169050611310600283611bd8565b60a0840181905291506113238183611bd8565b60c0909301929092525050565b604080518082019091526060815260006020820152825182111561135357600080fd5b60208501516113628386611bd8565b11156113955761139585611385876020015187866113809190611bd8565b61152a565b611390906002611d45565b611541565b6000808651805187602083010193508088870111156113b45787860182525b505050602084015b602084106113f457805182526113d3602083611bd8565b91506113e0602082611bd8565b90506113ed602085611beb565b93506113bc565b51815160001960208690036101000a019081169019919091161790525083949350505050565b6000806114278585611500565b63ffffffff1663613d3078146114425750600090508061106a565b602c8310156114565750600090508061106a565b61146a85611465866004611bd8565b61155e565b91509150935093915050565b6000815b8351811061148a5761148a611d5c565b60006114968583610a85565b60ff1690506114a6816001611bd8565b6114b09083611bd8565b9150806000036114c057506114c6565b5061147a565b6114d08382611beb565b949350505050565b81516000906114e8836002611bd8565b11156114f357600080fd5b50016002015161ffff1690565b8151600090611510836004611bd8565b111561151b57600080fd5b50016004015163ffffffff1690565b60008183111561153b5750816101a3565b50919050565b815161154d83836110c8565b50611558838261112d565b50505050565b60008060288385516115709190611beb565b101561158157506000905080611241565b6000835b611590856028611bd8565b81101561163d5760049190911b9060006115aa8783610a85565b60ff169050603081101580156115c05750603a81105b156115d9576115d0603082611beb565b8317925061162a565b604181101580156115ea5750604781105b156115fa576115d0603782611beb565b6061811015801561160b5750606781105b1561161b576115d0605782611beb565b60008094509450505050611241565b508061163581611d72565b915050611585565b50946001945092505050565b60006020828403121561165b57600080fd5b81356001600160e01b03198116811461115457600080fd5b6001600160a01b038116811461168857600080fd5b50565b60006020828403121561169d57600080fd5b813561115481611673565b634e487b7160e01b600052604160045260246000fd5b6040805190810167ffffffffffffffff811182821017156116e1576116e16116a8565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715611710576117106116a8565b604052919050565b600067ffffffffffffffff821115611732576117326116a8565b50601f01601f191660200190565b600082601f83011261175157600080fd5b813561176461175f82611718565b6116e7565b81815284602083860101111561177957600080fd5b816020850160208301376000918101602001919091529392505050565b600082601f8301126117a757600080fd5b8135602067ffffffffffffffff808311156117c4576117c46116a8565b8260051b6117d38382016116e7565b93845285810183019383810190888611156117ed57600080fd5b84880192505b858310156118845782358481111561180b5760008081fd5b88016040818b03601f19018113156118235760008081fd5b61182b6116be565b878301358781111561183d5760008081fd5b61184b8d8a83870101611740565b8252509082013590868211156118615760008081fd5b61186f8c8984860101611740565b818901528452505091840191908401906117f3565b98975050505050505050565b600080600080600060a086880312156118a857600080fd5b853567ffffffffffffffff808211156118c057600080fd5b6118cc89838a01611740565b965060208801359150808211156118e257600080fd5b6118ee89838a01611796565b9550604088013591508082111561190457600080fd5b5061191188828901611740565b935050606086013561192281611673565b9150608086013561193281611673565b809150509295509295909350565b60008060006060848603121561195557600080fd5b833567ffffffffffffffff8082111561196d57600080fd5b61197987838801611740565b9450602086013591508082111561198f57600080fd5b61199b87838801611796565b935060408601359150808211156119b157600080fd5b506119be86828701611740565b9150509250925092565b600080604083850312156119db57600080fd5b823567ffffffffffffffff808211156119f357600080fd5b6119ff86838701611740565b93506020850135915080821115611a1557600080fd5b50611a2285828601611740565b9150509250929050565b600060208284031215611a3e57600080fd5b815161115481611673565b60005b83811015611a64578181015183820152602001611a4c565b50506000910152565b60008151808452611a85816020860160208601611a49565b601f01601f19169290920160200192915050565b6000604080830181845280865180835260608601915060608160051b8701019250602080890160005b83811015611b1257888603605f1901855281518051888852611ae689890182611a6d565b9185015188830389870152919050611afe8183611a6d565b975050509382019390820190600101611ac2565b505086840381880152505050611b288186611a6d565b9695505050505050565b600060208284031215611b4457600080fd5b815167ffffffffffffffff811115611b5b57600080fd5b8201601f81018413611b6c57600080fd5b8051611b7a61175f82611718565b818152856020838501011115611b8f57600080fd5b611ba0826020830160208601611a49565b95945050505050565b600060208284031215611bbb57600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b808201808211156101a3576101a3611bc2565b818103818111156101a3576101a3611bc2565b6020815260006111546020830184611a6d565b600060208284031215611c2357600080fd5b8151801515811461115457600080fd5b634e487b7160e01b600052603260045260246000fd5b61ffff831681526040602082015260006114d06040830184611a6d565b805163ffffffff81168114611c7a57600080fd5b919050565b600080600060608486031215611c9457600080fd5b611c9d84611c66565b9250611cab60208501611c66565b915060408401516bffffffffffffffffffffffff1981168114611ccd57600080fd5b809150509250925092565b63ffffffff818116838216019080821115611cf557611cf5611bc2565b5092915050565b600082611d1957634e487b7160e01b600052601260045260246000fd5b500690565b600382810b9082900b03637fffffff198112637fffffff821317156101a3576101a3611bc2565b80820281158282048414176101a3576101a3611bc2565b634e487b7160e01b600052600160045260246000fd5b600060018201611d8457611d84611bc2565b506001019056fea164736f6c6343000811000a"; - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "contract DNSSEC"; - readonly name: "_dnssec"; - readonly type: "address"; - }, { - readonly internalType: "contract PublicSuffixList"; - readonly name: "_suffixes"; - readonly type: "address"; - }, { - readonly internalType: "contract ENS"; - readonly name: "_ens"; - readonly type: "address"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "constructor"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "node"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "bytes"; - readonly name: "dnsname"; - readonly type: "bytes"; - }]; - readonly name: "Claim"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "address"; - readonly name: "oracle"; - readonly type: "address"; - }]; - readonly name: "NewOracle"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "address"; - readonly name: "suffixes"; - readonly type: "address"; - }]; - readonly name: "NewPublicSuffixList"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes"; - readonly name: "name"; - readonly type: "bytes"; - }, { - readonly internalType: "bytes"; - readonly name: "proof"; - readonly type: "bytes"; - }]; - readonly name: "claim"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "ens"; - readonly outputs: readonly [{ - readonly internalType: "contract ENS"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "oracle"; - readonly outputs: readonly [{ - readonly internalType: "contract DNSSEC"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes"; - readonly name: "name"; - readonly type: "bytes"; - }, { - readonly components: readonly [{ - readonly internalType: "bytes"; - readonly name: "rrset"; - readonly type: "bytes"; - }, { - readonly internalType: "bytes"; - readonly name: "sig"; - readonly type: "bytes"; - }]; - readonly internalType: "struct DNSSEC.RRSetWithSignature[]"; - readonly name: "input"; - readonly type: "tuple[]"; - }, { - readonly internalType: "bytes"; - readonly name: "proof"; - readonly type: "bytes"; - }]; - readonly name: "proveAndClaim"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes"; - readonly name: "name"; - readonly type: "bytes"; - }, { - readonly components: readonly [{ - readonly internalType: "bytes"; - readonly name: "rrset"; - readonly type: "bytes"; - }, { - readonly internalType: "bytes"; - readonly name: "sig"; - readonly type: "bytes"; - }]; - readonly internalType: "struct DNSSEC.RRSetWithSignature[]"; - readonly name: "input"; - readonly type: "tuple[]"; - }, { - readonly internalType: "bytes"; - readonly name: "proof"; - readonly type: "bytes"; - }, { - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }]; - readonly name: "proveAndClaimWithResolver"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "contract DNSSEC"; - readonly name: "_dnssec"; - readonly type: "address"; - }]; - readonly name: "setOracle"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "contract PublicSuffixList"; - readonly name: "_suffixes"; - readonly type: "address"; - }]; - readonly name: "setPublicSuffixList"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "suffixes"; - readonly outputs: readonly [{ - readonly internalType: "contract PublicSuffixList"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceID"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "pure"; - readonly type: "function"; - }]; - static createInterface(): DNSRegistrarInterface; - static connect(address: string, runner?: ContractRunner | null): DNSRegistrar; -} -export {}; -//# sourceMappingURL=DNSRegistrar__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/DNSRegistrar__factory.d.ts.map b/dist/types/factories/contracts/@ens/dnssec/DNSRegistrar__factory.d.ts.map deleted file mode 100644 index a2010e8d..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/DNSRegistrar__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"DNSRegistrar__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/contracts/@ens/dnssec/DNSRegistrar__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,MAAM,EACN,WAAW,EACX,yBAAyB,EACzB,cAAc,EACf,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,KAAK,EACV,YAAY,EACZ,qBAAqB,EACtB,MAAM,gDAAgD,CAAC;AAsQxD,aAAK,6BAA6B,GAC9B,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,qBAAsB,SAAQ,eAAe;gBAC5C,GAAG,IAAI,EAAE,6BAA6B;IAQzC,oBAAoB,CAC3B,OAAO,EAAE,WAAW,EACpB,SAAS,EAAE,WAAW,EACtB,IAAI,EAAE,WAAW,EACjB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAQ5B,MAAM,CACb,OAAO,EAAE,WAAW,EACpB,SAAS,EAAE,WAAW,EACtB,IAAI,EAAE,WAAW,EACjB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAItB,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,qBAAqB;IAItE,MAAM,CAAC,QAAQ,CAAC,QAAQ,gjfAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,qBAAqB;IAG/C,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,YAAY;CAGhB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/DNSRegistrar__factory.js b/dist/types/factories/contracts/@ens/dnssec/DNSRegistrar__factory.js deleted file mode 100644 index d81619ff..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/DNSRegistrar__factory.js +++ /dev/null @@ -1,290 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.DNSRegistrar__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "contract DNSSEC", - name: "_dnssec", - type: "address", - }, - { - internalType: "contract PublicSuffixList", - name: "_suffixes", - type: "address", - }, - { - internalType: "contract ENS", - name: "_ens", - type: "address", - }, - ], - stateMutability: "nonpayable", - type: "constructor", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "node", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: false, - internalType: "bytes", - name: "dnsname", - type: "bytes", - }, - ], - name: "Claim", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "oracle", - type: "address", - }, - ], - name: "NewOracle", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "suffixes", - type: "address", - }, - ], - name: "NewPublicSuffixList", - type: "event", - }, - { - inputs: [ - { - internalType: "bytes", - name: "name", - type: "bytes", - }, - { - internalType: "bytes", - name: "proof", - type: "bytes", - }, - ], - name: "claim", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "ens", - outputs: [ - { - internalType: "contract ENS", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "oracle", - outputs: [ - { - internalType: "contract DNSSEC", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes", - name: "name", - type: "bytes", - }, - { - components: [ - { - internalType: "bytes", - name: "rrset", - type: "bytes", - }, - { - internalType: "bytes", - name: "sig", - type: "bytes", - }, - ], - internalType: "struct DNSSEC.RRSetWithSignature[]", - name: "input", - type: "tuple[]", - }, - { - internalType: "bytes", - name: "proof", - type: "bytes", - }, - ], - name: "proveAndClaim", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes", - name: "name", - type: "bytes", - }, - { - components: [ - { - internalType: "bytes", - name: "rrset", - type: "bytes", - }, - { - internalType: "bytes", - name: "sig", - type: "bytes", - }, - ], - internalType: "struct DNSSEC.RRSetWithSignature[]", - name: "input", - type: "tuple[]", - }, - { - internalType: "bytes", - name: "proof", - type: "bytes", - }, - { - internalType: "address", - name: "resolver", - type: "address", - }, - { - internalType: "address", - name: "addr", - type: "address", - }, - ], - name: "proveAndClaimWithResolver", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "contract DNSSEC", - name: "_dnssec", - type: "address", - }, - ], - name: "setOracle", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "contract PublicSuffixList", - name: "_suffixes", - type: "address", - }, - ], - name: "setPublicSuffixList", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "suffixes", - outputs: [ - { - internalType: "contract PublicSuffixList", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceID", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "pure", - type: "function", - }, -]; -const _bytecode = "0x60806040523480156200001157600080fd5b5060405162001f1438038062001f14833981016040819052620000349162000118565b600080546001600160a01b0319166001600160a01b0385169081179091556040519081527fb3eacd0e351fafdfefdec84e1cd19679b38dbcd63ea7c2c24da17fd2bc3b3c0e9060200160405180910390a1600280546001600160a01b0319166001600160a01b0384169081179091556040519081527f9176b7f47e4504df5e5516c99d90d82ac7cbd49cc77e7f22ba2ac2f2e3a3eba89060200160405180910390a1600180546001600160a01b0319166001600160a01b0392909216919091179055506200016c9050565b6001600160a01b03811681146200011557600080fd5b50565b6000806000606084860312156200012e57600080fd5b83516200013b81620000ff565b60208501519093506200014e81620000ff565b60408501519092506200016181620000ff565b809150509250925092565b611d98806200017c6000396000f3fe608060405234801561001057600080fd5b50600436106100935760003560e01c80633f15457f116100665780633f15457f146101135780637adbf973146101265780637dc0d1d0146101395780638bbedf751461014c578063be27b22c1461015f57600080fd5b806301ffc9a7146100985780631ecfc411146100c0578063224199c2146100d557806330349ebe146100e8575b600080fd5b6100ab6100a6366004611649565b610172565b60405190151581526020015b60405180910390f35b6100d36100ce36600461168b565b6101a9565b005b6100d36100e3366004611890565b6102eb565b6002546100fb906001600160a01b031681565b6040516001600160a01b0390911681526020016100b7565b6001546100fb906001600160a01b031681565b6100d361013436600461168b565b610668565b6000546100fb906001600160a01b031681565b6100d361015a366004611940565b6107a1565b6100d361016d3660046119c8565b61082b565b60006001600160e01b031982166301ffc9a760e01b14806101a357506001600160e01b031982166317d8f49b60e01b145b92915050565b6001546040516302571be360e01b8152600060048201819052916001600160a01b0316906302571be390602401602060405180830381865afa1580156101f3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102179190611a2c565b90506000816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610259573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061027d9190611a2c565b9050336001600160a01b0382161461029457600080fd5b600280546001600160a01b0319166001600160a01b0385169081179091556040519081527f9176b7f47e4504df5e5516c99d90d82ac7cbd49cc77e7f22ba2ac2f2e3a3eba8906020015b60405180910390a1505050565b6000546040516321ae60b160e11b81526001600160a01b039091169063435cc1629061031d9087908790600401611a99565b6000604051808303816000875af115801561033c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526103649190810190611b32565b9250600080600061037588876108ca565b91945092509050336001600160a01b038216146103ef5760405162461bcd60e51b815260206004820152602d60248201527f4f6e6c79206f776e65722063616e2063616c6c2070726f7665416e64436c616960448201526c36abb4ba342932b9b7b63b32b960991b60648201526084015b60405180910390fd5b6001600160a01b038416156105e1576001600160a01b0385166104635760405162461bcd60e51b815260206004820152602660248201527f43616e6e6f74207365742061646472206966207265736f6c766572206973206e6044820152651bdd081cd95d60d21b60648201526084016103e6565b6001546040516305ef2c7f60e41b815260048101859052602481018490523060448201526001600160a01b0387811660648301526000608483015290911690635ef2c7f09060a401600060405180830381600087803b1580156104c557600080fd5b505af11580156104d9573d6000803e3d6000fd5b50505050600083836040516020016104fb929190918252602082015260400190565b60408051808303601f1901815290829052805160209091012062d5fa2b60e81b8252600482018190526001600160a01b03878116602484015290925087169063d5fa2b0090604401600060405180830381600087803b15801561055d57600080fd5b505af1158015610571573d6000803e3d6000fd5b5050600154604051635b0fc9c360e01b8152600481018590526001600160a01b0386811660248301529091169250635b0fc9c39150604401600060405180830381600087803b1580156105c357600080fd5b505af11580156105d7573d6000803e3d6000fd5b505050505061065e565b6001546040516305ef2c7f60e41b815260048101859052602481018490526001600160a01b03838116604483015287811660648301526000608483015290911690635ef2c7f09060a401600060405180830381600087803b15801561064557600080fd5b505af1158015610659573d6000803e3d6000fd5b505050505b5050505050505050565b6001546040516302571be360e01b8152600060048201819052916001600160a01b0316906302571be390602401602060405180830381865afa1580156106b2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106d69190611a2c565b90506000816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610718573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061073c9190611a2c565b9050336001600160a01b0382161461075357600080fd5b600080546001600160a01b0319166001600160a01b0385169081179091556040519081527fb3eacd0e351fafdfefdec84e1cd19679b38dbcd63ea7c2c24da17fd2bc3b3c0e906020016102de565b6000546040516321ae60b160e11b81526001600160a01b039091169063435cc162906107d39085908590600401611a99565b6000604051808303816000875af11580156107f2573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261081a9190810190611b32565b9050610826838261082b565b505050565b600080600061083a85856108ca565b6001546040516306ab592360e01b815260048101859052602481018490526001600160a01b03808416604483015294975092955090935091909116906306ab5923906064016020604051808303816000875af115801561089e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108c29190611ba9565b505050505050565b60008080806108d98682610a85565b60ff1690506108ea86600183610aa9565b9250600061091d6108fc836001611bd8565b6001848a5161090b9190611beb565b6109159190611beb565b899190610acd565b6002546040516327c482cf60e11b81529192506001600160a01b031690634f89059e9061094e908490600401611bfe565b602060405180830381865afa15801561096b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061098f9190611c11565b6109e75760405162461bcd60e51b815260206004820152602360248201527f506172656e74206e616d65206d7573742062652061207075626c6963207375666044820152620ccd2f60eb1b60648201526084016103e6565b6109f2816000610b4f565b600054909550610a0c906001600160a01b03168888610e40565b5060408051602081018890529081018690529093506001600160a01b03841690606001604051602081830303815290604052805190602001207fa2e66ce20e6fb2c4f61339c364ad79f15160cf5307230c8bc4d628adbca2ba3989604051610a749190611bfe565b60405180910390a350509250925092565b6000828281518110610a9957610a99611c33565b016020015160f81c905092915050565b8251600090610ab88385611bd8565b1115610ac357600080fd5b5091016020012090565b8251606090610adc8385611bd8565b1115610ae757600080fd5b60008267ffffffffffffffff811115610b0257610b026116a8565b6040519080825280601f01601f191660200182016040528015610b2c576020820181803683370190505b50905060208082019086860101610b44828287611072565b509095945050505050565b600080610b5c8484610a85565b60ff16905080600003610b735750600090506101a3565b6000610b9385610b838487611bd8565b610b8e906001611bd8565b610b4f565b90506000610bad610ba5866001611bd8565b879085610aa9565b604080516020810185905290810182905290915060600160408051808303601f190181529082905280516020909101206001546302571be360e01b8352600483018290529095506000916001600160a01b03909116906302571be390602401602060405180830381865afa158015610c29573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c4d9190611a2c565b90506001600160a01b0381161580610c6d57506001600160a01b03811630145b610ccc5760405162461bcd60e51b815260206004820152602a60248201527f43616e6e6f7420656e61626c652061206e616d65206f776e656420627920736f6044820152696d656f6e6520656c736560b01b60648201526084016103e6565b6001600160a01b0381163014610e365782610db8576001546040516302571be360e01b8152600060048201819052916001600160a01b0316906302571be390602401602060405180830381865afa158015610d2b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d4f9190611a2c565b60405163232e3b3b60e21b8152600481018590523060248201529091506001600160a01b03821690638cb8ecec90604401600060405180830381600087803b158015610d9a57600080fd5b505af1158015610dae573d6000803e3d6000fd5b5050505050610e36565b6001546040516306ab592360e01b815260048101859052602481018490523060448201526001600160a01b03909116906306ab5923906064016020604051808303816000875af1158015610e10573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e349190611ba9565b505b5050505092915050565b600080610e60604051806040016040528060608152602001600081525090565b610e7885516005610e719190611bd8565b82906110c8565b50604080518082019091526005815264045f656e7360d81b6020820152610ea090829061112d565b50610eab818661112d565b50805160405163021e646f60e21b815260009182916001600160a01b038a169163087991bc91610ee091601091600401611c49565b606060405180830381865afa158015610efd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f219190611c7f565b93509150506bffffffffffffffffffffffff198216158015610f4257508551155b15610f56576000809450945050505061106a565b855160208701206bffffffffffffffffffffffff19838116911614610f7a57600080fd5b6000610f86878261115b565b90505b8051516020820151101561105e57610fb0816080015183610faa9190611cd8565b426111bc565b6110225760405162461bcd60e51b815260206004820152603c60248201527f444e53207265636f7264206973207374616c653b2072656672657368206f722060448201527f64656c657465206974206265666f72652070726f63656564696e672e0000000060648201526084016103e6565b600080611033898460a001516111d5565b92509050811561104e5796506001955061106a945050505050565b505061105981611248565b610f89565b50600080945094505050505b935093915050565b602081106110aa5781518352611089602084611bd8565b9250611096602083611bd8565b91506110a3602082611beb565b9050611072565b905182516020929092036101000a6000190180199091169116179052565b6040805180820190915260608152600060208201526110e8602083611cfc565b15611110576110f8602083611cfc565b611103906020611beb565b61110d9083611bd8565b91505b506020828101829052604080518085526000815290920101905290565b60408051808201909152606081526000602082015261115483846000015151848551611330565b9392505050565b6111a96040518060e001604052806060815260200160008152602001600061ffff168152602001600061ffff168152602001600063ffffffff16815260200160008152602001600081525090565b82815260c081018290526101a381611248565b6000806111c98385611d1e565b60030b12159392505050565b6000805b835183101561123a5760006111ee8585610a85565b60ff1690506111fe600185611bd8565b935060008061120e87878561141a565b92509050811561122657935060019250611241915050565b6112308387611bd8565b95505050506111d9565b5060009050805b9250929050565b60c0810151602082018190528151511161125f5750565b600061127382600001518360200151611476565b82602001516112829190611bd8565b825190915061129190826114d8565b61ffff1660408301526112a5600282611bd8565b82519091506112b490826114d8565b61ffff1660608301526112c8600282611bd8565b82519091506112d79082611500565b63ffffffff1660808301526112ed600482611bd8565b82519091506000906112ff90836114d8565b61ffff169050611310600283611bd8565b60a0840181905291506113238183611bd8565b60c0909301929092525050565b604080518082019091526060815260006020820152825182111561135357600080fd5b60208501516113628386611bd8565b11156113955761139585611385876020015187866113809190611bd8565b61152a565b611390906002611d45565b611541565b6000808651805187602083010193508088870111156113b45787860182525b505050602084015b602084106113f457805182526113d3602083611bd8565b91506113e0602082611bd8565b90506113ed602085611beb565b93506113bc565b51815160001960208690036101000a019081169019919091161790525083949350505050565b6000806114278585611500565b63ffffffff1663613d3078146114425750600090508061106a565b602c8310156114565750600090508061106a565b61146a85611465866004611bd8565b61155e565b91509150935093915050565b6000815b8351811061148a5761148a611d5c565b60006114968583610a85565b60ff1690506114a6816001611bd8565b6114b09083611bd8565b9150806000036114c057506114c6565b5061147a565b6114d08382611beb565b949350505050565b81516000906114e8836002611bd8565b11156114f357600080fd5b50016002015161ffff1690565b8151600090611510836004611bd8565b111561151b57600080fd5b50016004015163ffffffff1690565b60008183111561153b5750816101a3565b50919050565b815161154d83836110c8565b50611558838261112d565b50505050565b60008060288385516115709190611beb565b101561158157506000905080611241565b6000835b611590856028611bd8565b81101561163d5760049190911b9060006115aa8783610a85565b60ff169050603081101580156115c05750603a81105b156115d9576115d0603082611beb565b8317925061162a565b604181101580156115ea5750604781105b156115fa576115d0603782611beb565b6061811015801561160b5750606781105b1561161b576115d0605782611beb565b60008094509450505050611241565b508061163581611d72565b915050611585565b50946001945092505050565b60006020828403121561165b57600080fd5b81356001600160e01b03198116811461115457600080fd5b6001600160a01b038116811461168857600080fd5b50565b60006020828403121561169d57600080fd5b813561115481611673565b634e487b7160e01b600052604160045260246000fd5b6040805190810167ffffffffffffffff811182821017156116e1576116e16116a8565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715611710576117106116a8565b604052919050565b600067ffffffffffffffff821115611732576117326116a8565b50601f01601f191660200190565b600082601f83011261175157600080fd5b813561176461175f82611718565b6116e7565b81815284602083860101111561177957600080fd5b816020850160208301376000918101602001919091529392505050565b600082601f8301126117a757600080fd5b8135602067ffffffffffffffff808311156117c4576117c46116a8565b8260051b6117d38382016116e7565b93845285810183019383810190888611156117ed57600080fd5b84880192505b858310156118845782358481111561180b5760008081fd5b88016040818b03601f19018113156118235760008081fd5b61182b6116be565b878301358781111561183d5760008081fd5b61184b8d8a83870101611740565b8252509082013590868211156118615760008081fd5b61186f8c8984860101611740565b818901528452505091840191908401906117f3565b98975050505050505050565b600080600080600060a086880312156118a857600080fd5b853567ffffffffffffffff808211156118c057600080fd5b6118cc89838a01611740565b965060208801359150808211156118e257600080fd5b6118ee89838a01611796565b9550604088013591508082111561190457600080fd5b5061191188828901611740565b935050606086013561192281611673565b9150608086013561193281611673565b809150509295509295909350565b60008060006060848603121561195557600080fd5b833567ffffffffffffffff8082111561196d57600080fd5b61197987838801611740565b9450602086013591508082111561198f57600080fd5b61199b87838801611796565b935060408601359150808211156119b157600080fd5b506119be86828701611740565b9150509250925092565b600080604083850312156119db57600080fd5b823567ffffffffffffffff808211156119f357600080fd5b6119ff86838701611740565b93506020850135915080821115611a1557600080fd5b50611a2285828601611740565b9150509250929050565b600060208284031215611a3e57600080fd5b815161115481611673565b60005b83811015611a64578181015183820152602001611a4c565b50506000910152565b60008151808452611a85816020860160208601611a49565b601f01601f19169290920160200192915050565b6000604080830181845280865180835260608601915060608160051b8701019250602080890160005b83811015611b1257888603605f1901855281518051888852611ae689890182611a6d565b9185015188830389870152919050611afe8183611a6d565b975050509382019390820190600101611ac2565b505086840381880152505050611b288186611a6d565b9695505050505050565b600060208284031215611b4457600080fd5b815167ffffffffffffffff811115611b5b57600080fd5b8201601f81018413611b6c57600080fd5b8051611b7a61175f82611718565b818152856020838501011115611b8f57600080fd5b611ba0826020830160208601611a49565b95945050505050565b600060208284031215611bbb57600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b808201808211156101a3576101a3611bc2565b818103818111156101a3576101a3611bc2565b6020815260006111546020830184611a6d565b600060208284031215611c2357600080fd5b8151801515811461115457600080fd5b634e487b7160e01b600052603260045260246000fd5b61ffff831681526040602082015260006114d06040830184611a6d565b805163ffffffff81168114611c7a57600080fd5b919050565b600080600060608486031215611c9457600080fd5b611c9d84611c66565b9250611cab60208501611c66565b915060408401516bffffffffffffffffffffffff1981168114611ccd57600080fd5b809150509250925092565b63ffffffff818116838216019080821115611cf557611cf5611bc2565b5092915050565b600082611d1957634e487b7160e01b600052601260045260246000fd5b500690565b600382810b9082900b03637fffffff198112637fffffff821317156101a3576101a3611bc2565b80820281158282048414176101a3576101a3611bc2565b634e487b7160e01b600052600160045260246000fd5b600060018201611d8457611d84611bc2565b506001019056fea164736f6c6343000811000a"; -const isSuperArgs = (xs) => xs.length > 1; -class DNSRegistrar__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(_dnssec, _suffixes, _ens, overrides) { - return super.getDeployTransaction(_dnssec, _suffixes, _ens, overrides || {}); - } - deploy(_dnssec, _suffixes, _ens, overrides) { - return super.deploy(_dnssec, _suffixes, _ens, overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.DNSRegistrar__factory = DNSRegistrar__factory; -DNSRegistrar__factory.bytecode = _bytecode; -DNSRegistrar__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl__factory.d.ts b/dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl__factory.d.ts deleted file mode 100644 index 1ba8b418..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl__factory.d.ts +++ /dev/null @@ -1,375 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, BytesLike, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../../../common"; -import type { DNSSECImpl, DNSSECImplInterface } from "../../../../../contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl"; -declare type DNSSECImplConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class DNSSECImpl__factory extends ContractFactory { - constructor(...args: DNSSECImplConstructorParams); - getDeployTransaction(_anchors: BytesLike, overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(_anchors: BytesLike, overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): DNSSECImpl__factory; - static readonly bytecode = "0x60806040523480156200001157600080fd5b506040516200320d3803806200320d83398101604081905262000034916200018f565b600180546001600160a01b031916331790556000620000548282620002f3565b5060408051606081018252600080825263e090bba0602083015282519192830191620000819190620003bf565b60408051918290039091206001600160601b031916909152602b60009081527fc92a43746f20f69898978a3075767b860ba247ac0639d1831bf8c942c5db2389602090815283517f95c6356c1b7a542b884d2484ef785c9c7224e77e1016c20007bddc15c23b452f8054928601519585015160601c6801000000000000000002600160401b600160e01b031963ffffffff978816640100000000026001600160401b03199095169790931696909617929092171693909317909255517f55ced933cdd5a34dd03eb5d4bef19ec6ebb251dcd7a988eee0c1b9a13baaa88b916200016a916200043d565b60405180910390a150620004e5565b634e487b7160e01b600052604160045260246000fd5b60006020808385031215620001a357600080fd5b82516001600160401b0380821115620001bb57600080fd5b818501915085601f830112620001d057600080fd5b815181811115620001e557620001e562000179565b604051601f8201601f19908116603f0116810190838211818310171562000210576200021062000179565b8160405282815288868487010111156200022957600080fd5b600093505b828410156200024d57848401860151818501870152928501926200022e565b600086848301015280965050505050505092915050565b600181811c908216806200027957607f821691505b6020821081036200029a57634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620002ee57600081815260208120601f850160051c81016020861015620002c95750805b601f850160051c820191505b81811015620002ea57828155600101620002d5565b5050505b505050565b81516001600160401b038111156200030f576200030f62000179565b620003278162000320845462000264565b84620002a0565b602080601f8311600181146200035f5760008415620003465750858301515b600019600386901b1c1916600185901b178555620002ea565b600085815260208120601f198616915b8281101562000390578886015182559484019460019091019084016200036f565b5085821015620003af5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6000808354620003cf8162000264565b60018281168015620003ea5760018114620004005762000431565b60ff198416875282151583028701945062000431565b8760005260208060002060005b85811015620004285781548a8201529084019082016200040d565b50505082870194505b50929695505050505050565b604081526000600180604084015260006060840152602060808185015260008554620004698162000264565b80608088015260a0858316600081146200048c5760018114620004a757620004d7565b60ff1984168983015282151560051b890182019450620004d7565b896000528560002060005b84811015620004cf5781548b8201850152908801908701620004b2565b8a0183019550505b509298975050505050505050565b612d1880620004f56000396000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c806373cc48a61161008c57806398d35f201161006657806398d35f201461021c578063bd7ed31a14610224578063c327deef1461024d578063d7b82ebe1461027657600080fd5b806373cc48a6146101b55780638438dc04146101f65780638da5cb5b1461020957600080fd5b806313af4035116100c857806313af40351461015c57806328e7677d1461016f5780632c095cbb14610182578063435cc1621461019557600080fd5b8063020ed8d3146100ef578063087991bc146101045780630b1a249514610149575b600080fd5b6101026100fd3660046123fa565b610289565b005b61011761011236600461248c565b61030b565b6040805163ffffffff94851681529390921660208401526001600160601b031916908201526060015b60405180910390f35b610102610157366004612620565b61037b565b61010261016a3660046126de565b6104ef565b61010261017d3660046123fa565b610528565b6101026101903660046126fb565b6105a2565b6101a86101a3366004612794565b610673565b60405161014091906128b8565b6101de6101c33660046128cb565b6004602052600090815260409020546001600160a01b031681565b6040516001600160a01b039091168152602001610140565b6101026102043660046123fa565b6106fb565b6001546101de906001600160a01b031681565b6101a8610775565b6101de6102323660046128cb565b6005602052600090815260409020546001600160a01b031681565b6101de61025b3660046128cb565b6003602052600090815260409020546001600160a01b031681565b6101a86102843660046128e6565b610803565b6001546001600160a01b031633146102a057600080fd5b60ff821660008181526003602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527ff73c3c226af96b7f1ba666a21b3ceaf2be3ee6a365e3178fd9cd1eaae0075aa891015b60405180910390a15050565b60008060008060026000878760405161032592919061294a565b60408051918290039091208252602080830193909352908101600090812061ffff8b16825290925290205463ffffffff80821695506401000000008204169350600160401b900460601b91505093509350939050565b8351602080860191909120600090815260028252604080822061ffff891683529092529081205463ffffffff16906103b38584610818565b90506103c08187846108be565b6103c861232b565b845151156103e7576103da8585610818565b90506103e78188856108be565b60006103f283610904565b602081015190915060fe161561040757600080fd5b610412816027610963565b1580156104375750610425816002610963565b15806104375750610437816006610963565b61044057600080fd5b610451898985610120015184610975565b1561048d5787516020808a0191909120600090815260028252604080822061ffff8d1683529092522080546001600160e01b03191690556104e4565b6104ac88846101200151838561012001516104a787610904565b6109a5565b156100ea5787516020808a0191909120600090815260028252604080822061ffff8d1683529092522080546001600160e01b03191690555b505050505050505050565b6001546001600160a01b0316331461050657600080fd5b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6001546001600160a01b0316331461053f57600080fd5b60ff821660008181526004602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527f2fcc274c3b72dd483ab201bfa87295e3817e8b9b10693219873b722ca1af00c791016102ff565b6105aa61232b565b6105b48383610818565b805190915061ffff16602f146105c957600080fd5b60a08101518451602080870191909120600090815260028252604080822061ffff8a1683529092522054610603919063ffffffff16610ac0565b61060c57600080fd5b600061061782610ad9565b9050805151602082015110156100ea57610638818361012001518789610af1565b50508251602080850191909120600090815260028252604080822061ffff881683529092522080546001600160e01b03191690555b50505050565b6060600083838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201829052509394505050505b85518110156106f0576106dc8682815181106106ce576106ce61295a565b602002602001015183610c9f565b9150806106e881612986565b9150506106b0565b5090505b9392505050565b6001546001600160a01b0316331461071257600080fd5b60ff821660008181526005602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527fc7eec866a7a1386188cc3ca20ffea75b71bd3e90a60b6791b1d3f0971145118d91016102ff565b600080546107829061299f565b80601f01602080910402602001604051908101604052809291908181526020018280546107ae9061299f565b80156107fb5780601f106107d0576101008083540402835291602001916107fb565b820191906000526020600020905b8154815290600101906020018083116107de57829003601f168201915b505050505081565b606061080f8383610c9f565b90505b92915050565b61082061232b565b825161082b90610e1e565b905061083b8160e0015183610f18565b61084457600080fd5b6000610854828360000151610f80565b604083015190915060ff1661086a82600061102e565b1461087457600080fd5b6101208201819052608082015161088b9042610ac0565b61089457600080fd5b6108a2428360a00151610ac0565b6108ab57600080fd5b6108b78183868661108b565b5092915050565b6108cc8360a0015182610ac0565b6108d557600080fd5b825161ffff166032146108e757600080fd5b6108f683610120015183611170565b6108ff57600080fd5b505050565b6040805160c08101825260008082526020820181905291810182905260608082018190526080820183905260a08201529061093e83610ad9565b60a081015160c08201519192506106f49161095a9082906129d3565b835191906111de565b600061080f8360a00151600084611325565b600061098282848661143a565b15610999576109918286610963565b15905061099d565b5060005b949350505050565b602081015160009060fe16156109ba57600080fd5b60006109c586611461565b905060006109d285611461565b90506000806109e18a8261147d565b6109ec9060016129e6565b60ff1690505b8951811015610aae5783610a1e89610a1984858f51610a1191906129d3565b8f91906114a1565b611523565b03610a82576000610a3a87610a1985868f51610a1191906129d3565b90508660800151841015610a66578381118015610a5a5750866080015181105b95505050505050610ab7565b83811180610a5a57508660800151811095505050505050610ab7565b905080610a8f8a8261147d565b610a9a9060016129e6565b610aa79060ff16826129ff565b90506109f2565b50600093505050505b95945050505050565b600080610acd8385612a12565b60030b12159392505050565b610ae1612381565b61081282610100015160006115af565b60a08401518451600090610b0590836115ca565b905060008660a001518760c00151610b1d91906129d3565b9050818111610b2b57600080fd5b6000610b378688611624565b905080600003610b6657610b57610b4e84866129ff565b89519087611325565b15610b6157600080fd5b610bad565b8751600090610b769086866114a1565b905060008213610b8557600080fd5b6000610b918983611624565b12156104e4576000610ba38883611624565b126104e457600080fd5b5050505050505050565b60c08101516020820181905281515111610bce5750565b6000610be2826000015183602001516115ca565b8260200151610bf191906129ff565b8251909150610c00908261177d565b61ffff166040830152610c146002826129ff565b8251909150610c23908261177d565b61ffff166060830152610c376002826129ff565b8251909150610c4690826117a5565b63ffffffff166080830152610c5c6004826129ff565b8251909150600090610c6e908361177d565b61ffff169050610c7f6002836129ff565b60a084018190529150610c9281836129ff565b60c0909301929092525050565b6060610ca961232b565b610cb38484610818565b61012081015180516020918201206000908152600282526040808220845161ffff16835290925220805491925090600160401b900460601b6001600160601b03191615610d1a5760a08201518154610d11919063ffffffff16610ac0565b610d1a57600080fd5b604080516060808201835260a085015163ffffffff9081168352608086015181166020808501918252610100880180518051908301206001600160601b0319168688019081526101208a0180518051908501206000908152600285528981208c5161ffff16825290945292889020965187549451915190961c600160401b0268010000000000000000600160e01b03199186166401000000000267ffffffffffffffff19909516969095169590951792909217939093169190911790925551905191517f55ced933cdd5a34dd03eb5d4bef19ec6ebb251dcd7a988eee0c1b9a13baaa88b92610e099291612a39565b60405180910390a15061010001519392505050565b610e2661232b565b610e3182600061177d565b61ffff168152610e4282600261147d565b60ff166020820152610e5582600361147d565b60ff166040820152610e688260046117a5565b63ffffffff9081166060830152610e849083906008906117a516565b63ffffffff9081166080830152610ea0908390600c906117a516565b63ffffffff90811660a0830152610ebc90839060109061177d16565b61ffff1660c0820152610ed08260126117cf565b60e0820181905251610f0d90610ee79060126129ff565b8260e001515160128551610efb91906129d3565b610f0591906129d3565b8491906114a1565b610100820152919050565b600080610f2f610f2884836115ca565b849061177d565b8351602080860191909120865187830120600090815260028352604080822061ffff90951682529390925291902054600160401b900460601b6001600160601b031990811691161491505092915050565b60606000610f8d84610ad9565b90505b805151602082015110156108b757606081015161ffff16600114610fb357600080fd5b8151600003610fcc57610fc5816117ea565b9150611008565b60208101518151610fdc916115ca565b825114610fe857600080fd5b805160208201518351610fff92859260009261180b565b61100857600080fd5b8261ffff16816040015161ffff161461102057600080fd5b61102981610bb7565b610f90565b6000805b8351831061104257611042612a5e565b600061104e858561147d565b60ff16905061105e8160016129ff565b61106890856129ff565b935080600003611078575061080f565b6110836001836129ff565b915050611032565b83518360e0015151111561109e57600080fd5b6110c36000858560e001515187516110b691906129d3565b60e087015192919061182e565b6110cc57600080fd5b60006110d882826115af565b9050602b61ffff16816040015161ffff1603611107576110f9848483611863565b61110257600080fd5b611169565b603061ffff16816040015161ffff1603611126576110f98484836118fc565b60405162461bcd60e51b8152602060048201526014602482015273139bc81d985b1a59081c1c9bdbd988199bdd5b9960621b604482015260640160405180910390fd5b5050505050565b60008061117d848261147d565b6111889060016129e6565b60ff16905060005b8351811015610999576111a58482878561182e565b156111b557600192505050610812565b6111bf848261147d565b6111ca9060016129e6565b6111d79060ff16826129ff565b9050611190565b6040805160c08101825260008082526020820181905291810182905260608082018190526080820183905260a08201529061121983856129ff565b90506112306112296000866129ff565b869061147d565b60ff1682526112436112296001866129ff565b60ff1660208301526112606112596002866129ff565b869061177d565b61ffff16604083015260006112806112796004876129ff565b879061147d565b905061128d6005866129ff565b945061129d868660ff84166114a1565b60608401526112af60ff8216866129ff565b945060006112bd878761147d565b905060208160ff1611156112d057600080fd5b6112db6001876129ff565b95506112eb878760ff84166119a4565b60808501526112fd60ff8216876129ff565b95506113158661130d81866129d3565b8991906114a1565b60a0850152509195945050505050565b600060ff600883811c821691839161133e918616612a8a565b90506000611350600780871690612aab565b600160ff919091161b9050855b875181101561142c576000611372898361147d565b9050600061138b6113848460016129ff565b8b9061147d565b90508160ff168660ff1610156113aa57600096505050505050506106f4565b8160ff168660ff160361140b578460ff168160ff16116113d357600096505050505050506106f4565b836113f66113e460ff8816866129ff565b6113ef9060026129ff565b8c9061147d565b1660ff166000141596505050505050506106f4565b6114168160026129e6565b6114239060ff16846129ff565b9250505061135d565b506000979650505050505050565b6000806114478584611523565b9050600061145485611461565b9190911495945050505050565b60006108126001611472848461147d565b84919060ff166119e5565b60008282815181106114915761149161295a565b016020015160f81c905092915050565b82516060906114b083856129ff565b11156114bb57600080fd5b60008267ffffffffffffffff8111156114d6576114d66124df565b6040519080825280601f01601f191660200182016040528015611500576020820181803683370190505b50905060208082019086860101611518828287611bfd565b509095945050505050565b815160ff1660009081526005602052604080822054606085015182860151925163347ced5960e11b81526001600160a01b03909216926368f9dab29261156e92918791600401612ac4565b602060405180830381865afa15801561158b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061080f9190612afe565b6115b7612381565b82815260c0810182905261081281610bb7565b6000815b835181106115de576115de612a5e565b60006115ea858361147d565b60ff1690506115fa8160016129ff565b61160490836129ff565b915080600003611614575061161a565b506115ce565b61099d83826129d3565b60006116308383611c53565b1561163d57506000610812565b600080600080600061165088600061102e565b9050600061165f88600061102e565b90505b8082111561168b578593506116778987611c71565b95508161168381612b17565b925050611662565b818111156116b4578492506116a08886611c71565b9450806116ac81612b17565b91505061168b565b6000821180156116cd57506116cb89878a8861182e565b155b15611702578593506116df8987611c71565b95508492506116ee8886611c71565b94506116fb6001836129d3565b91506116b4565b8560000361171a576000199650505050505050610812565b846000036117315760019650505050505050610812565b61177061173f8560016129ff565b6117498b8761147d565b60ff168a6117588760016129ff565b6117628d8961147d565b8e949392919060ff16611c95565b9998505050505050505050565b815160009061178d8360026129ff565b111561179857600080fd5b50016002015161ffff1690565b81516000906117b58360046129ff565b11156117c057600080fd5b50016004015163ffffffff1690565b606060006117dd84846115ca565b905061099d8484836114a1565b602081015181516060916108129161180290826115ca565b845191906114a1565b6000611818848484611d8a565b611823878785611d8a565b149695505050505050565b6000611847838384865161184291906129d3565b611d8a565b611859868687895161184291906129d3565b1495945050505050565b60008061186f85610ad9565b90505b8051516020820151101561099957604081015161ffff1660301461189557600080fd5b60006118a082611dae565b905060006118bb6000835184611dca9092919063ffffffff16565b90506118c981838989611e68565b156118ec576118e26118da846117ea565b868385611f6d565b93505050506106f4565b50506118f781610bb7565b611872565b60006119158460e0015161190f846117ea565b90611c53565b61191e57600080fd5b8151516020830151101561199a5761193d8460e0015161190f846117ea565b61194657600080fd5b600061195183611dae565b9050600061196c6000835184611dca9092919063ffffffff16565b905061197a81838888611e68565b1561198a576001925050506106f4565b505061199582610bb7565b61191e565b5060009392505050565b600060208211156119b457600080fd5b83516119c083856129ff565b11156119cb57600080fd5b506020919092018101519190036101000a60001901191690565b600060348211156119f557600080fd5b600080805b84811015611ae157600087611a0f83896129ff565b81518110611a1f57611a1f61295a565b01602001516001600160f81b0319169050600360fc1b8110801590611a525750603d60f91b6001600160f81b0319821611155b611a5b57600080fd5b604051806080016040528060478152602001612cc560479139611a83603060f884901c6129d3565b81518110611a9357611a9361295a565b0160209081015160f81c9350831115611aab57600080fd5b611ab66001876129d3565b8203611ac25750611ae1565b5060059290921b60ff8216179180611ad981612986565b9150506119fa565b506000611aef856005612b2e565b9050611afc600886612b45565b600003611b14578160ff16600584901b179250611be3565b611b1f600886612b45565b600203611b4d5760028260ff16901c60ff16600384901b179250600281611b4691906129d3565b9050611be3565b611b58600886612b45565b600403611b7f5760048260ff16901c60ff16600184901b179250600481611b4691906129d3565b611b8a600886612b45565b600503611bb15760018260ff16901c60ff16600484901b179250600181611b4691906129d3565b611bbc600886612b45565b6007036100ea5760038260ff16901c60ff16600284901b179250600381611b4691906129d3565b611bef816101006129d3565b9290921b9695505050505050565b60208110611c355781518352611c146020846129ff565b9250611c216020836129ff565b9150611c2e6020826129d3565b9050611bfd565b905182516020929092036101000a6000190180199091169116179052565b60008151835114801561080f575061080f836000846000875161180b565b6000611c7d838361147d565b60ff16611c8b8360016129ff565b61080f91906129ff565b60008480831015611ca35750815b60208789018101908587010160005b83811015611d6f5782518251808214611d3f5760006020871115611cd95750600019611d15565b600184611ce78960206129d3565b611cf191906129ff565b611cfc906008612b2e565b611d07906002612c3d565b611d1191906129d3565b1990505b6000611d25838316858416612c49565b90508015611d3c579750611d809650505050505050565b50505b611d4a6020866129ff565b9450611d576020856129ff565b93505050602081611d6891906129ff565b9050611cb2565b50611d7a8589612c49565b93505050505b9695505050505050565b8251600090611d9983856129ff565b1115611da457600080fd5b5091016020012090565b60a081015160c0820151606091610812916118029082906129d3565b6040805160808101825260008082526020820181905291810191909152606080820152611e02611dfb6000856129ff565b859061177d565b61ffff168152611e1d611e166002856129ff565b859061147d565b60ff166020820152611e33611e166003856129ff565b60ff166040820152611e5c611e496004856129ff565b611e546004856129d3565b8691906114a1565b60608201529392505050565b6000846020015160ff16600314611e815750600061099d565b826020015160ff16856040015160ff1614611e9e5750600061099d565b6000611ea98561206e565b90508360c0015161ffff168161ffff1614611ec857600091505061099d565b855161010016600003611edf57600091505061099d565b60408087015160ff166000908152600360209081529082902054855191860151925163de8f50a160e01b81526001600160a01b039091169263de8f50a192611f2c928a9290600401612c69565b602060405180830381865afa158015611f49573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d809190612ca2565b600080611f798361206e565b90505b845151602086015110156120625760a085015160c0860151600091611faf91611fa69082906129d3565b88519190611dca565b90508161ffff16816000015161ffff1614611fca5750612054565b846040015160ff16816020015160ff1614611fe55750612054565b6040805180820190915260608152600060208201526120128551895161200b91906129ff565b82906120db565b5061201d8189612140565b506120288186612140565b50612040826040015182600001518460600151612167565b15612051576001935050505061099d565b50505b61205d85610bb7565b611f7c565b50600095945050505050565b60008060005b83518110156120cc57600181161561209857612090848261147d565b60ff166120aa565b60086120a4858361147d565b60ff16901b5b6120b89061ffff16836129ff565b9150806120c481612986565b915050612074565b506106f4601082901c826129ff565b6040805180820190915260608152600060208201526120fb602083612b45565b156121235761210b602083612b45565b6121169060206129d3565b61212090836129ff565b91505b506020828101829052604080518085526000815290920101905290565b60408051808201909152606081526000602082015261080f83846000015151848551612213565b60ff83166000908152600460205260408120546001600160a01b031661218f575060006106f4565b60ff8416600090815260046020819052604091829020549151637bf41d7760e11b81526001600160a01b039092169163f7e83aee916121d2918791879101612a39565b602060405180830381865afa1580156121ef573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061099d9190612ca2565b604080518082019091526060815260006020820152825182111561223657600080fd5b602085015161224583866129ff565b111561227857612278856122688760200151878661226391906129ff565b6122fd565b612273906002612b2e565b612314565b6000808651805187602083010193508088870111156122975787860182525b505050602084015b602084106122d757805182526122b66020836129ff565b91506122c36020826129ff565b90506122d06020856129d3565b935061229f565b51815160001960208690036101000a019081169019919091161790525083949350505050565b60008183111561230e575081610812565b50919050565b815161232083836120db565b5061066d8382612140565b604080516101408101825260008082526020820181905291810182905260608082018390526080820183905260a0820183905260c082019290925260e08101829052610100810182905261012081019190915290565b6040518060e001604052806060815260200160008152602001600061ffff168152602001600061ffff168152602001600063ffffffff16815260200160008152602001600081525090565b803560ff811681146123dd57600080fd5b919050565b6001600160a01b03811681146123f757600080fd5b50565b6000806040838503121561240d57600080fd5b612416836123cc565b91506020830135612426816123e2565b809150509250929050565b803561ffff811681146123dd57600080fd5b60008083601f84011261245557600080fd5b50813567ffffffffffffffff81111561246d57600080fd5b60208301915083602082850101111561248557600080fd5b9250929050565b6000806000604084860312156124a157600080fd5b6124aa84612431565b9250602084013567ffffffffffffffff8111156124c657600080fd5b6124d286828701612443565b9497909650939450505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff8111828210171561251e5761251e6124df565b604052919050565b600082601f83011261253757600080fd5b813567ffffffffffffffff811115612551576125516124df565b612564601f8201601f19166020016124f5565b81815284602083860101111561257957600080fd5b816020850160208301376000918101602001919091529392505050565b6000604082840312156125a857600080fd5b6040516040810167ffffffffffffffff82821081831117156125cc576125cc6124df565b8160405282935084359150808211156125e457600080fd5b6125f086838701612526565b8352602085013591508082111561260657600080fd5b5061261385828601612526565b6020830152505092915050565b600080600080600060a0868803121561263857600080fd5b61264186612431565b9450602086013567ffffffffffffffff8082111561265e57600080fd5b61266a89838a01612526565b9550604088013591508082111561268057600080fd5b61268c89838a01612596565b945060608801359150808211156126a257600080fd5b6126ae89838a01612596565b935060808801359150808211156126c457600080fd5b506126d188828901612526565b9150509295509295909350565b6000602082840312156126f057600080fd5b813561080f816123e2565b6000806000806080858703121561271157600080fd5b61271a85612431565b9350602085013567ffffffffffffffff8082111561273757600080fd5b61274388838901612526565b9450604087013591508082111561275957600080fd5b61276588838901612596565b9350606087013591508082111561277b57600080fd5b5061278887828801612526565b91505092959194509250565b6000806000604084860312156127a957600080fd5b833567ffffffffffffffff808211156127c157600080fd5b818601915086601f8301126127d557600080fd5b81356020828211156127e9576127e96124df565b8160051b6127f88282016124f5565b928352848101820192828101908b85111561281257600080fd5b83870192505b8483101561284e578235868111156128305760008081fd5b61283e8d86838b0101612596565b8352509183019190830190612818565b985050508701359250508082111561286557600080fd5b506124d286828701612443565b6000815180845260005b818110156128985760208185018101518683018201520161287c565b506000602082860101526020601f19601f83011685010191505092915050565b60208152600061080f6020830184612872565b6000602082840312156128dd57600080fd5b61080f826123cc565b600080604083850312156128f957600080fd5b823567ffffffffffffffff8082111561291157600080fd5b61291d86838701612596565b9350602085013591508082111561293357600080fd5b5061294085828601612526565b9150509250929050565b8183823760009101908152919050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b60006001820161299857612998612970565b5060010190565b600181811c908216806129b357607f821691505b60208210810361230e57634e487b7160e01b600052602260045260246000fd5b8181038181111561081257610812612970565b60ff818116838216019081111561081257610812612970565b8082018082111561081257610812612970565b600382810b9082900b03637fffffff198112637fffffff8213171561081257610812612970565b604081526000612a4c6040830185612872565b8281036020840152610ab78185612872565b634e487b7160e01b600052600160045260246000fd5b634e487b7160e01b600052601260045260246000fd5b600061ffff80841680612a9f57612a9f612a74565b92169190910492915050565b60ff828116828216039081111561081257610812612970565b606081526000612ad76060830186612872565b8281036020840152612ae98186612872565b91505061ffff83166040830152949350505050565b600060208284031215612b1057600080fd5b5051919050565b600081612b2657612b26612970565b506000190190565b808202811582820484141761081257610812612970565b600082612b5457612b54612a74565b500690565b600181815b80851115612b94578160001904821115612b7a57612b7a612970565b80851615612b8757918102915b93841c9390800290612b5e565b509250929050565b600082612bab57506001610812565b81612bb857506000610812565b8160018114612bce5760028114612bd857612bf4565b6001915050610812565b60ff841115612be957612be9612970565b50506001821b610812565b5060208310610133831016604e8410600b8410161715612c17575081810a610812565b612c218383612b59565b8060001904821115612c3557612c35612970565b029392505050565b600061080f8383612b9c565b81810360008312801583831316838312821617156108b7576108b7612970565b606081526000612c7c6060830186612872565b8281036020840152612c8e8186612872565b90508281036040840152611d808185612872565b600060208284031215612cb457600080fd5b8151801515811461080f57600080fdfe00010203040506070809ffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fffffffffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fa164736f6c6343000811000a"; - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "bytes"; - readonly name: "_anchors"; - readonly type: "bytes"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "constructor"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "uint8"; - readonly name: "id"; - readonly type: "uint8"; - }, { - readonly indexed: false; - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }]; - readonly name: "AlgorithmUpdated"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "uint8"; - readonly name: "id"; - readonly type: "uint8"; - }, { - readonly indexed: false; - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }]; - readonly name: "DigestUpdated"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly []; - readonly name: "Marker"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "uint8"; - readonly name: "id"; - readonly type: "uint8"; - }, { - readonly indexed: false; - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }]; - readonly name: "NSEC3DigestUpdated"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "bytes"; - readonly name: "name"; - readonly type: "bytes"; - }, { - readonly indexed: false; - readonly internalType: "bytes"; - readonly name: "rrset"; - readonly type: "bytes"; - }]; - readonly name: "RRSetUpdated"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "t"; - readonly type: "uint256"; - }]; - readonly name: "Test"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint8"; - readonly name: ""; - readonly type: "uint8"; - }]; - readonly name: "algorithms"; - readonly outputs: readonly [{ - readonly internalType: "contract Algorithm"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "anchors"; - readonly outputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint16"; - readonly name: "deleteType"; - readonly type: "uint16"; - }, { - readonly internalType: "bytes"; - readonly name: "deleteName"; - readonly type: "bytes"; - }, { - readonly components: readonly [{ - readonly internalType: "bytes"; - readonly name: "rrset"; - readonly type: "bytes"; - }, { - readonly internalType: "bytes"; - readonly name: "sig"; - readonly type: "bytes"; - }]; - readonly internalType: "struct DNSSEC.RRSetWithSignature"; - readonly name: "nsec"; - readonly type: "tuple"; - }, { - readonly internalType: "bytes"; - readonly name: "proof"; - readonly type: "bytes"; - }]; - readonly name: "deleteRRSet"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint16"; - readonly name: "deleteType"; - readonly type: "uint16"; - }, { - readonly internalType: "bytes"; - readonly name: "deleteName"; - readonly type: "bytes"; - }, { - readonly components: readonly [{ - readonly internalType: "bytes"; - readonly name: "rrset"; - readonly type: "bytes"; - }, { - readonly internalType: "bytes"; - readonly name: "sig"; - readonly type: "bytes"; - }]; - readonly internalType: "struct DNSSEC.RRSetWithSignature"; - readonly name: "closestEncloser"; - readonly type: "tuple"; - }, { - readonly components: readonly [{ - readonly internalType: "bytes"; - readonly name: "rrset"; - readonly type: "bytes"; - }, { - readonly internalType: "bytes"; - readonly name: "sig"; - readonly type: "bytes"; - }]; - readonly internalType: "struct DNSSEC.RRSetWithSignature"; - readonly name: "nextClosest"; - readonly type: "tuple"; - }, { - readonly internalType: "bytes"; - readonly name: "dnskey"; - readonly type: "bytes"; - }]; - readonly name: "deleteRRSetNSEC3"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint8"; - readonly name: ""; - readonly type: "uint8"; - }]; - readonly name: "digests"; - readonly outputs: readonly [{ - readonly internalType: "contract Digest"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint8"; - readonly name: ""; - readonly type: "uint8"; - }]; - readonly name: "nsec3Digests"; - readonly outputs: readonly [{ - readonly internalType: "contract NSEC3Digest"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "owner"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint16"; - readonly name: "dnstype"; - readonly type: "uint16"; - }, { - readonly internalType: "bytes"; - readonly name: "name"; - readonly type: "bytes"; - }]; - readonly name: "rrdata"; - readonly outputs: readonly [{ - readonly internalType: "uint32"; - readonly name: ""; - readonly type: "uint32"; - }, { - readonly internalType: "uint32"; - readonly name: ""; - readonly type: "uint32"; - }, { - readonly internalType: "bytes20"; - readonly name: ""; - readonly type: "bytes20"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint8"; - readonly name: "id"; - readonly type: "uint8"; - }, { - readonly internalType: "contract Algorithm"; - readonly name: "algo"; - readonly type: "address"; - }]; - readonly name: "setAlgorithm"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint8"; - readonly name: "id"; - readonly type: "uint8"; - }, { - readonly internalType: "contract Digest"; - readonly name: "digest"; - readonly type: "address"; - }]; - readonly name: "setDigest"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint8"; - readonly name: "id"; - readonly type: "uint8"; - }, { - readonly internalType: "contract NSEC3Digest"; - readonly name: "digest"; - readonly type: "address"; - }]; - readonly name: "setNSEC3Digest"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "newOwner"; - readonly type: "address"; - }]; - readonly name: "setOwner"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly components: readonly [{ - readonly internalType: "bytes"; - readonly name: "rrset"; - readonly type: "bytes"; - }, { - readonly internalType: "bytes"; - readonly name: "sig"; - readonly type: "bytes"; - }]; - readonly internalType: "struct DNSSEC.RRSetWithSignature"; - readonly name: "input"; - readonly type: "tuple"; - }, { - readonly internalType: "bytes"; - readonly name: "proof"; - readonly type: "bytes"; - }]; - readonly name: "submitRRSet"; - readonly outputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly components: readonly [{ - readonly internalType: "bytes"; - readonly name: "rrset"; - readonly type: "bytes"; - }, { - readonly internalType: "bytes"; - readonly name: "sig"; - readonly type: "bytes"; - }]; - readonly internalType: "struct DNSSEC.RRSetWithSignature[]"; - readonly name: "input"; - readonly type: "tuple[]"; - }, { - readonly internalType: "bytes"; - readonly name: "_proof"; - readonly type: "bytes"; - }]; - readonly name: "submitRRSets"; - readonly outputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): DNSSECImplInterface; - static connect(address: string, runner?: ContractRunner | null): DNSSECImpl; -} -export {}; -//# sourceMappingURL=DNSSECImpl__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl__factory.d.ts.map b/dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl__factory.d.ts.map deleted file mode 100644 index b00198d1..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"DNSSECImpl__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,MAAM,EACN,SAAS,EACT,yBAAyB,EACzB,cAAc,EACf,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,UAAU,EACV,mBAAmB,EACpB,MAAM,gEAAgE,CAAC;AAmdxE,aAAK,2BAA2B,GAC5B,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,mBAAoB,SAAQ,eAAe;gBAC1C,GAAG,IAAI,EAAE,2BAA2B;IAQvC,oBAAoB,CAC3B,QAAQ,EAAE,SAAS,EACnB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CACb,QAAQ,EAAE,SAAS,EACnB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAItB,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,mBAAmB;IAIpE,MAAM,CAAC,QAAQ,CAAC,QAAQ,kiyBAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,mBAAmB;IAG7C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,UAAU;CAG5E"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl__factory.js b/dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl__factory.js deleted file mode 100644 index e2e66a45..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl__factory.js +++ /dev/null @@ -1,495 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.DNSSECImpl__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "bytes", - name: "_anchors", - type: "bytes", - }, - ], - stateMutability: "nonpayable", - type: "constructor", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint8", - name: "id", - type: "uint8", - }, - { - indexed: false, - internalType: "address", - name: "addr", - type: "address", - }, - ], - name: "AlgorithmUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint8", - name: "id", - type: "uint8", - }, - { - indexed: false, - internalType: "address", - name: "addr", - type: "address", - }, - ], - name: "DigestUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [], - name: "Marker", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint8", - name: "id", - type: "uint8", - }, - { - indexed: false, - internalType: "address", - name: "addr", - type: "address", - }, - ], - name: "NSEC3DigestUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "bytes", - name: "name", - type: "bytes", - }, - { - indexed: false, - internalType: "bytes", - name: "rrset", - type: "bytes", - }, - ], - name: "RRSetUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "t", - type: "uint256", - }, - ], - name: "Test", - type: "event", - }, - { - inputs: [ - { - internalType: "uint8", - name: "", - type: "uint8", - }, - ], - name: "algorithms", - outputs: [ - { - internalType: "contract Algorithm", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "anchors", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint16", - name: "deleteType", - type: "uint16", - }, - { - internalType: "bytes", - name: "deleteName", - type: "bytes", - }, - { - components: [ - { - internalType: "bytes", - name: "rrset", - type: "bytes", - }, - { - internalType: "bytes", - name: "sig", - type: "bytes", - }, - ], - internalType: "struct DNSSEC.RRSetWithSignature", - name: "nsec", - type: "tuple", - }, - { - internalType: "bytes", - name: "proof", - type: "bytes", - }, - ], - name: "deleteRRSet", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint16", - name: "deleteType", - type: "uint16", - }, - { - internalType: "bytes", - name: "deleteName", - type: "bytes", - }, - { - components: [ - { - internalType: "bytes", - name: "rrset", - type: "bytes", - }, - { - internalType: "bytes", - name: "sig", - type: "bytes", - }, - ], - internalType: "struct DNSSEC.RRSetWithSignature", - name: "closestEncloser", - type: "tuple", - }, - { - components: [ - { - internalType: "bytes", - name: "rrset", - type: "bytes", - }, - { - internalType: "bytes", - name: "sig", - type: "bytes", - }, - ], - internalType: "struct DNSSEC.RRSetWithSignature", - name: "nextClosest", - type: "tuple", - }, - { - internalType: "bytes", - name: "dnskey", - type: "bytes", - }, - ], - name: "deleteRRSetNSEC3", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint8", - name: "", - type: "uint8", - }, - ], - name: "digests", - outputs: [ - { - internalType: "contract Digest", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint8", - name: "", - type: "uint8", - }, - ], - name: "nsec3Digests", - outputs: [ - { - internalType: "contract NSEC3Digest", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint16", - name: "dnstype", - type: "uint16", - }, - { - internalType: "bytes", - name: "name", - type: "bytes", - }, - ], - name: "rrdata", - outputs: [ - { - internalType: "uint32", - name: "", - type: "uint32", - }, - { - internalType: "uint32", - name: "", - type: "uint32", - }, - { - internalType: "bytes20", - name: "", - type: "bytes20", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint8", - name: "id", - type: "uint8", - }, - { - internalType: "contract Algorithm", - name: "algo", - type: "address", - }, - ], - name: "setAlgorithm", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint8", - name: "id", - type: "uint8", - }, - { - internalType: "contract Digest", - name: "digest", - type: "address", - }, - ], - name: "setDigest", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint8", - name: "id", - type: "uint8", - }, - { - internalType: "contract NSEC3Digest", - name: "digest", - type: "address", - }, - ], - name: "setNSEC3Digest", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "setOwner", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "bytes", - name: "rrset", - type: "bytes", - }, - { - internalType: "bytes", - name: "sig", - type: "bytes", - }, - ], - internalType: "struct DNSSEC.RRSetWithSignature", - name: "input", - type: "tuple", - }, - { - internalType: "bytes", - name: "proof", - type: "bytes", - }, - ], - name: "submitRRSet", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "bytes", - name: "rrset", - type: "bytes", - }, - { - internalType: "bytes", - name: "sig", - type: "bytes", - }, - ], - internalType: "struct DNSSEC.RRSetWithSignature[]", - name: "input", - type: "tuple[]", - }, - { - internalType: "bytes", - name: "_proof", - type: "bytes", - }, - ], - name: "submitRRSets", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, -]; -const _bytecode = "0x60806040523480156200001157600080fd5b506040516200320d3803806200320d83398101604081905262000034916200018f565b600180546001600160a01b031916331790556000620000548282620002f3565b5060408051606081018252600080825263e090bba0602083015282519192830191620000819190620003bf565b60408051918290039091206001600160601b031916909152602b60009081527fc92a43746f20f69898978a3075767b860ba247ac0639d1831bf8c942c5db2389602090815283517f95c6356c1b7a542b884d2484ef785c9c7224e77e1016c20007bddc15c23b452f8054928601519585015160601c6801000000000000000002600160401b600160e01b031963ffffffff978816640100000000026001600160401b03199095169790931696909617929092171693909317909255517f55ced933cdd5a34dd03eb5d4bef19ec6ebb251dcd7a988eee0c1b9a13baaa88b916200016a916200043d565b60405180910390a150620004e5565b634e487b7160e01b600052604160045260246000fd5b60006020808385031215620001a357600080fd5b82516001600160401b0380821115620001bb57600080fd5b818501915085601f830112620001d057600080fd5b815181811115620001e557620001e562000179565b604051601f8201601f19908116603f0116810190838211818310171562000210576200021062000179565b8160405282815288868487010111156200022957600080fd5b600093505b828410156200024d57848401860151818501870152928501926200022e565b600086848301015280965050505050505092915050565b600181811c908216806200027957607f821691505b6020821081036200029a57634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620002ee57600081815260208120601f850160051c81016020861015620002c95750805b601f850160051c820191505b81811015620002ea57828155600101620002d5565b5050505b505050565b81516001600160401b038111156200030f576200030f62000179565b620003278162000320845462000264565b84620002a0565b602080601f8311600181146200035f5760008415620003465750858301515b600019600386901b1c1916600185901b178555620002ea565b600085815260208120601f198616915b8281101562000390578886015182559484019460019091019084016200036f565b5085821015620003af5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6000808354620003cf8162000264565b60018281168015620003ea5760018114620004005762000431565b60ff198416875282151583028701945062000431565b8760005260208060002060005b85811015620004285781548a8201529084019082016200040d565b50505082870194505b50929695505050505050565b604081526000600180604084015260006060840152602060808185015260008554620004698162000264565b80608088015260a0858316600081146200048c5760018114620004a757620004d7565b60ff1984168983015282151560051b890182019450620004d7565b896000528560002060005b84811015620004cf5781548b8201850152908801908701620004b2565b8a0183019550505b509298975050505050505050565b612d1880620004f56000396000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c806373cc48a61161008c57806398d35f201161006657806398d35f201461021c578063bd7ed31a14610224578063c327deef1461024d578063d7b82ebe1461027657600080fd5b806373cc48a6146101b55780638438dc04146101f65780638da5cb5b1461020957600080fd5b806313af4035116100c857806313af40351461015c57806328e7677d1461016f5780632c095cbb14610182578063435cc1621461019557600080fd5b8063020ed8d3146100ef578063087991bc146101045780630b1a249514610149575b600080fd5b6101026100fd3660046123fa565b610289565b005b61011761011236600461248c565b61030b565b6040805163ffffffff94851681529390921660208401526001600160601b031916908201526060015b60405180910390f35b610102610157366004612620565b61037b565b61010261016a3660046126de565b6104ef565b61010261017d3660046123fa565b610528565b6101026101903660046126fb565b6105a2565b6101a86101a3366004612794565b610673565b60405161014091906128b8565b6101de6101c33660046128cb565b6004602052600090815260409020546001600160a01b031681565b6040516001600160a01b039091168152602001610140565b6101026102043660046123fa565b6106fb565b6001546101de906001600160a01b031681565b6101a8610775565b6101de6102323660046128cb565b6005602052600090815260409020546001600160a01b031681565b6101de61025b3660046128cb565b6003602052600090815260409020546001600160a01b031681565b6101a86102843660046128e6565b610803565b6001546001600160a01b031633146102a057600080fd5b60ff821660008181526003602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527ff73c3c226af96b7f1ba666a21b3ceaf2be3ee6a365e3178fd9cd1eaae0075aa891015b60405180910390a15050565b60008060008060026000878760405161032592919061294a565b60408051918290039091208252602080830193909352908101600090812061ffff8b16825290925290205463ffffffff80821695506401000000008204169350600160401b900460601b91505093509350939050565b8351602080860191909120600090815260028252604080822061ffff891683529092529081205463ffffffff16906103b38584610818565b90506103c08187846108be565b6103c861232b565b845151156103e7576103da8585610818565b90506103e78188856108be565b60006103f283610904565b602081015190915060fe161561040757600080fd5b610412816027610963565b1580156104375750610425816002610963565b15806104375750610437816006610963565b61044057600080fd5b610451898985610120015184610975565b1561048d5787516020808a0191909120600090815260028252604080822061ffff8d1683529092522080546001600160e01b03191690556104e4565b6104ac88846101200151838561012001516104a787610904565b6109a5565b156100ea5787516020808a0191909120600090815260028252604080822061ffff8d1683529092522080546001600160e01b03191690555b505050505050505050565b6001546001600160a01b0316331461050657600080fd5b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6001546001600160a01b0316331461053f57600080fd5b60ff821660008181526004602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527f2fcc274c3b72dd483ab201bfa87295e3817e8b9b10693219873b722ca1af00c791016102ff565b6105aa61232b565b6105b48383610818565b805190915061ffff16602f146105c957600080fd5b60a08101518451602080870191909120600090815260028252604080822061ffff8a1683529092522054610603919063ffffffff16610ac0565b61060c57600080fd5b600061061782610ad9565b9050805151602082015110156100ea57610638818361012001518789610af1565b50508251602080850191909120600090815260028252604080822061ffff881683529092522080546001600160e01b03191690555b50505050565b6060600083838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201829052509394505050505b85518110156106f0576106dc8682815181106106ce576106ce61295a565b602002602001015183610c9f565b9150806106e881612986565b9150506106b0565b5090505b9392505050565b6001546001600160a01b0316331461071257600080fd5b60ff821660008181526005602090815260409182902080546001600160a01b0319166001600160a01b0386169081179091558251938452908301527fc7eec866a7a1386188cc3ca20ffea75b71bd3e90a60b6791b1d3f0971145118d91016102ff565b600080546107829061299f565b80601f01602080910402602001604051908101604052809291908181526020018280546107ae9061299f565b80156107fb5780601f106107d0576101008083540402835291602001916107fb565b820191906000526020600020905b8154815290600101906020018083116107de57829003601f168201915b505050505081565b606061080f8383610c9f565b90505b92915050565b61082061232b565b825161082b90610e1e565b905061083b8160e0015183610f18565b61084457600080fd5b6000610854828360000151610f80565b604083015190915060ff1661086a82600061102e565b1461087457600080fd5b6101208201819052608082015161088b9042610ac0565b61089457600080fd5b6108a2428360a00151610ac0565b6108ab57600080fd5b6108b78183868661108b565b5092915050565b6108cc8360a0015182610ac0565b6108d557600080fd5b825161ffff166032146108e757600080fd5b6108f683610120015183611170565b6108ff57600080fd5b505050565b6040805160c08101825260008082526020820181905291810182905260608082018190526080820183905260a08201529061093e83610ad9565b60a081015160c08201519192506106f49161095a9082906129d3565b835191906111de565b600061080f8360a00151600084611325565b600061098282848661143a565b15610999576109918286610963565b15905061099d565b5060005b949350505050565b602081015160009060fe16156109ba57600080fd5b60006109c586611461565b905060006109d285611461565b90506000806109e18a8261147d565b6109ec9060016129e6565b60ff1690505b8951811015610aae5783610a1e89610a1984858f51610a1191906129d3565b8f91906114a1565b611523565b03610a82576000610a3a87610a1985868f51610a1191906129d3565b90508660800151841015610a66578381118015610a5a5750866080015181105b95505050505050610ab7565b83811180610a5a57508660800151811095505050505050610ab7565b905080610a8f8a8261147d565b610a9a9060016129e6565b610aa79060ff16826129ff565b90506109f2565b50600093505050505b95945050505050565b600080610acd8385612a12565b60030b12159392505050565b610ae1612381565b61081282610100015160006115af565b60a08401518451600090610b0590836115ca565b905060008660a001518760c00151610b1d91906129d3565b9050818111610b2b57600080fd5b6000610b378688611624565b905080600003610b6657610b57610b4e84866129ff565b89519087611325565b15610b6157600080fd5b610bad565b8751600090610b769086866114a1565b905060008213610b8557600080fd5b6000610b918983611624565b12156104e4576000610ba38883611624565b126104e457600080fd5b5050505050505050565b60c08101516020820181905281515111610bce5750565b6000610be2826000015183602001516115ca565b8260200151610bf191906129ff565b8251909150610c00908261177d565b61ffff166040830152610c146002826129ff565b8251909150610c23908261177d565b61ffff166060830152610c376002826129ff565b8251909150610c4690826117a5565b63ffffffff166080830152610c5c6004826129ff565b8251909150600090610c6e908361177d565b61ffff169050610c7f6002836129ff565b60a084018190529150610c9281836129ff565b60c0909301929092525050565b6060610ca961232b565b610cb38484610818565b61012081015180516020918201206000908152600282526040808220845161ffff16835290925220805491925090600160401b900460601b6001600160601b03191615610d1a5760a08201518154610d11919063ffffffff16610ac0565b610d1a57600080fd5b604080516060808201835260a085015163ffffffff9081168352608086015181166020808501918252610100880180518051908301206001600160601b0319168688019081526101208a0180518051908501206000908152600285528981208c5161ffff16825290945292889020965187549451915190961c600160401b0268010000000000000000600160e01b03199186166401000000000267ffffffffffffffff19909516969095169590951792909217939093169190911790925551905191517f55ced933cdd5a34dd03eb5d4bef19ec6ebb251dcd7a988eee0c1b9a13baaa88b92610e099291612a39565b60405180910390a15061010001519392505050565b610e2661232b565b610e3182600061177d565b61ffff168152610e4282600261147d565b60ff166020820152610e5582600361147d565b60ff166040820152610e688260046117a5565b63ffffffff9081166060830152610e849083906008906117a516565b63ffffffff9081166080830152610ea0908390600c906117a516565b63ffffffff90811660a0830152610ebc90839060109061177d16565b61ffff1660c0820152610ed08260126117cf565b60e0820181905251610f0d90610ee79060126129ff565b8260e001515160128551610efb91906129d3565b610f0591906129d3565b8491906114a1565b610100820152919050565b600080610f2f610f2884836115ca565b849061177d565b8351602080860191909120865187830120600090815260028352604080822061ffff90951682529390925291902054600160401b900460601b6001600160601b031990811691161491505092915050565b60606000610f8d84610ad9565b90505b805151602082015110156108b757606081015161ffff16600114610fb357600080fd5b8151600003610fcc57610fc5816117ea565b9150611008565b60208101518151610fdc916115ca565b825114610fe857600080fd5b805160208201518351610fff92859260009261180b565b61100857600080fd5b8261ffff16816040015161ffff161461102057600080fd5b61102981610bb7565b610f90565b6000805b8351831061104257611042612a5e565b600061104e858561147d565b60ff16905061105e8160016129ff565b61106890856129ff565b935080600003611078575061080f565b6110836001836129ff565b915050611032565b83518360e0015151111561109e57600080fd5b6110c36000858560e001515187516110b691906129d3565b60e087015192919061182e565b6110cc57600080fd5b60006110d882826115af565b9050602b61ffff16816040015161ffff1603611107576110f9848483611863565b61110257600080fd5b611169565b603061ffff16816040015161ffff1603611126576110f98484836118fc565b60405162461bcd60e51b8152602060048201526014602482015273139bc81d985b1a59081c1c9bdbd988199bdd5b9960621b604482015260640160405180910390fd5b5050505050565b60008061117d848261147d565b6111889060016129e6565b60ff16905060005b8351811015610999576111a58482878561182e565b156111b557600192505050610812565b6111bf848261147d565b6111ca9060016129e6565b6111d79060ff16826129ff565b9050611190565b6040805160c08101825260008082526020820181905291810182905260608082018190526080820183905260a08201529061121983856129ff565b90506112306112296000866129ff565b869061147d565b60ff1682526112436112296001866129ff565b60ff1660208301526112606112596002866129ff565b869061177d565b61ffff16604083015260006112806112796004876129ff565b879061147d565b905061128d6005866129ff565b945061129d868660ff84166114a1565b60608401526112af60ff8216866129ff565b945060006112bd878761147d565b905060208160ff1611156112d057600080fd5b6112db6001876129ff565b95506112eb878760ff84166119a4565b60808501526112fd60ff8216876129ff565b95506113158661130d81866129d3565b8991906114a1565b60a0850152509195945050505050565b600060ff600883811c821691839161133e918616612a8a565b90506000611350600780871690612aab565b600160ff919091161b9050855b875181101561142c576000611372898361147d565b9050600061138b6113848460016129ff565b8b9061147d565b90508160ff168660ff1610156113aa57600096505050505050506106f4565b8160ff168660ff160361140b578460ff168160ff16116113d357600096505050505050506106f4565b836113f66113e460ff8816866129ff565b6113ef9060026129ff565b8c9061147d565b1660ff166000141596505050505050506106f4565b6114168160026129e6565b6114239060ff16846129ff565b9250505061135d565b506000979650505050505050565b6000806114478584611523565b9050600061145485611461565b9190911495945050505050565b60006108126001611472848461147d565b84919060ff166119e5565b60008282815181106114915761149161295a565b016020015160f81c905092915050565b82516060906114b083856129ff565b11156114bb57600080fd5b60008267ffffffffffffffff8111156114d6576114d66124df565b6040519080825280601f01601f191660200182016040528015611500576020820181803683370190505b50905060208082019086860101611518828287611bfd565b509095945050505050565b815160ff1660009081526005602052604080822054606085015182860151925163347ced5960e11b81526001600160a01b03909216926368f9dab29261156e92918791600401612ac4565b602060405180830381865afa15801561158b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061080f9190612afe565b6115b7612381565b82815260c0810182905261081281610bb7565b6000815b835181106115de576115de612a5e565b60006115ea858361147d565b60ff1690506115fa8160016129ff565b61160490836129ff565b915080600003611614575061161a565b506115ce565b61099d83826129d3565b60006116308383611c53565b1561163d57506000610812565b600080600080600061165088600061102e565b9050600061165f88600061102e565b90505b8082111561168b578593506116778987611c71565b95508161168381612b17565b925050611662565b818111156116b4578492506116a08886611c71565b9450806116ac81612b17565b91505061168b565b6000821180156116cd57506116cb89878a8861182e565b155b15611702578593506116df8987611c71565b95508492506116ee8886611c71565b94506116fb6001836129d3565b91506116b4565b8560000361171a576000199650505050505050610812565b846000036117315760019650505050505050610812565b61177061173f8560016129ff565b6117498b8761147d565b60ff168a6117588760016129ff565b6117628d8961147d565b8e949392919060ff16611c95565b9998505050505050505050565b815160009061178d8360026129ff565b111561179857600080fd5b50016002015161ffff1690565b81516000906117b58360046129ff565b11156117c057600080fd5b50016004015163ffffffff1690565b606060006117dd84846115ca565b905061099d8484836114a1565b602081015181516060916108129161180290826115ca565b845191906114a1565b6000611818848484611d8a565b611823878785611d8a565b149695505050505050565b6000611847838384865161184291906129d3565b611d8a565b611859868687895161184291906129d3565b1495945050505050565b60008061186f85610ad9565b90505b8051516020820151101561099957604081015161ffff1660301461189557600080fd5b60006118a082611dae565b905060006118bb6000835184611dca9092919063ffffffff16565b90506118c981838989611e68565b156118ec576118e26118da846117ea565b868385611f6d565b93505050506106f4565b50506118f781610bb7565b611872565b60006119158460e0015161190f846117ea565b90611c53565b61191e57600080fd5b8151516020830151101561199a5761193d8460e0015161190f846117ea565b61194657600080fd5b600061195183611dae565b9050600061196c6000835184611dca9092919063ffffffff16565b905061197a81838888611e68565b1561198a576001925050506106f4565b505061199582610bb7565b61191e565b5060009392505050565b600060208211156119b457600080fd5b83516119c083856129ff565b11156119cb57600080fd5b506020919092018101519190036101000a60001901191690565b600060348211156119f557600080fd5b600080805b84811015611ae157600087611a0f83896129ff565b81518110611a1f57611a1f61295a565b01602001516001600160f81b0319169050600360fc1b8110801590611a525750603d60f91b6001600160f81b0319821611155b611a5b57600080fd5b604051806080016040528060478152602001612cc560479139611a83603060f884901c6129d3565b81518110611a9357611a9361295a565b0160209081015160f81c9350831115611aab57600080fd5b611ab66001876129d3565b8203611ac25750611ae1565b5060059290921b60ff8216179180611ad981612986565b9150506119fa565b506000611aef856005612b2e565b9050611afc600886612b45565b600003611b14578160ff16600584901b179250611be3565b611b1f600886612b45565b600203611b4d5760028260ff16901c60ff16600384901b179250600281611b4691906129d3565b9050611be3565b611b58600886612b45565b600403611b7f5760048260ff16901c60ff16600184901b179250600481611b4691906129d3565b611b8a600886612b45565b600503611bb15760018260ff16901c60ff16600484901b179250600181611b4691906129d3565b611bbc600886612b45565b6007036100ea5760038260ff16901c60ff16600284901b179250600381611b4691906129d3565b611bef816101006129d3565b9290921b9695505050505050565b60208110611c355781518352611c146020846129ff565b9250611c216020836129ff565b9150611c2e6020826129d3565b9050611bfd565b905182516020929092036101000a6000190180199091169116179052565b60008151835114801561080f575061080f836000846000875161180b565b6000611c7d838361147d565b60ff16611c8b8360016129ff565b61080f91906129ff565b60008480831015611ca35750815b60208789018101908587010160005b83811015611d6f5782518251808214611d3f5760006020871115611cd95750600019611d15565b600184611ce78960206129d3565b611cf191906129ff565b611cfc906008612b2e565b611d07906002612c3d565b611d1191906129d3565b1990505b6000611d25838316858416612c49565b90508015611d3c579750611d809650505050505050565b50505b611d4a6020866129ff565b9450611d576020856129ff565b93505050602081611d6891906129ff565b9050611cb2565b50611d7a8589612c49565b93505050505b9695505050505050565b8251600090611d9983856129ff565b1115611da457600080fd5b5091016020012090565b60a081015160c0820151606091610812916118029082906129d3565b6040805160808101825260008082526020820181905291810191909152606080820152611e02611dfb6000856129ff565b859061177d565b61ffff168152611e1d611e166002856129ff565b859061147d565b60ff166020820152611e33611e166003856129ff565b60ff166040820152611e5c611e496004856129ff565b611e546004856129d3565b8691906114a1565b60608201529392505050565b6000846020015160ff16600314611e815750600061099d565b826020015160ff16856040015160ff1614611e9e5750600061099d565b6000611ea98561206e565b90508360c0015161ffff168161ffff1614611ec857600091505061099d565b855161010016600003611edf57600091505061099d565b60408087015160ff166000908152600360209081529082902054855191860151925163de8f50a160e01b81526001600160a01b039091169263de8f50a192611f2c928a9290600401612c69565b602060405180830381865afa158015611f49573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d809190612ca2565b600080611f798361206e565b90505b845151602086015110156120625760a085015160c0860151600091611faf91611fa69082906129d3565b88519190611dca565b90508161ffff16816000015161ffff1614611fca5750612054565b846040015160ff16816020015160ff1614611fe55750612054565b6040805180820190915260608152600060208201526120128551895161200b91906129ff565b82906120db565b5061201d8189612140565b506120288186612140565b50612040826040015182600001518460600151612167565b15612051576001935050505061099d565b50505b61205d85610bb7565b611f7c565b50600095945050505050565b60008060005b83518110156120cc57600181161561209857612090848261147d565b60ff166120aa565b60086120a4858361147d565b60ff16901b5b6120b89061ffff16836129ff565b9150806120c481612986565b915050612074565b506106f4601082901c826129ff565b6040805180820190915260608152600060208201526120fb602083612b45565b156121235761210b602083612b45565b6121169060206129d3565b61212090836129ff565b91505b506020828101829052604080518085526000815290920101905290565b60408051808201909152606081526000602082015261080f83846000015151848551612213565b60ff83166000908152600460205260408120546001600160a01b031661218f575060006106f4565b60ff8416600090815260046020819052604091829020549151637bf41d7760e11b81526001600160a01b039092169163f7e83aee916121d2918791879101612a39565b602060405180830381865afa1580156121ef573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061099d9190612ca2565b604080518082019091526060815260006020820152825182111561223657600080fd5b602085015161224583866129ff565b111561227857612278856122688760200151878661226391906129ff565b6122fd565b612273906002612b2e565b612314565b6000808651805187602083010193508088870111156122975787860182525b505050602084015b602084106122d757805182526122b66020836129ff565b91506122c36020826129ff565b90506122d06020856129d3565b935061229f565b51815160001960208690036101000a019081169019919091161790525083949350505050565b60008183111561230e575081610812565b50919050565b815161232083836120db565b5061066d8382612140565b604080516101408101825260008082526020820181905291810182905260608082018390526080820183905260a0820183905260c082019290925260e08101829052610100810182905261012081019190915290565b6040518060e001604052806060815260200160008152602001600061ffff168152602001600061ffff168152602001600063ffffffff16815260200160008152602001600081525090565b803560ff811681146123dd57600080fd5b919050565b6001600160a01b03811681146123f757600080fd5b50565b6000806040838503121561240d57600080fd5b612416836123cc565b91506020830135612426816123e2565b809150509250929050565b803561ffff811681146123dd57600080fd5b60008083601f84011261245557600080fd5b50813567ffffffffffffffff81111561246d57600080fd5b60208301915083602082850101111561248557600080fd5b9250929050565b6000806000604084860312156124a157600080fd5b6124aa84612431565b9250602084013567ffffffffffffffff8111156124c657600080fd5b6124d286828701612443565b9497909650939450505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff8111828210171561251e5761251e6124df565b604052919050565b600082601f83011261253757600080fd5b813567ffffffffffffffff811115612551576125516124df565b612564601f8201601f19166020016124f5565b81815284602083860101111561257957600080fd5b816020850160208301376000918101602001919091529392505050565b6000604082840312156125a857600080fd5b6040516040810167ffffffffffffffff82821081831117156125cc576125cc6124df565b8160405282935084359150808211156125e457600080fd5b6125f086838701612526565b8352602085013591508082111561260657600080fd5b5061261385828601612526565b6020830152505092915050565b600080600080600060a0868803121561263857600080fd5b61264186612431565b9450602086013567ffffffffffffffff8082111561265e57600080fd5b61266a89838a01612526565b9550604088013591508082111561268057600080fd5b61268c89838a01612596565b945060608801359150808211156126a257600080fd5b6126ae89838a01612596565b935060808801359150808211156126c457600080fd5b506126d188828901612526565b9150509295509295909350565b6000602082840312156126f057600080fd5b813561080f816123e2565b6000806000806080858703121561271157600080fd5b61271a85612431565b9350602085013567ffffffffffffffff8082111561273757600080fd5b61274388838901612526565b9450604087013591508082111561275957600080fd5b61276588838901612596565b9350606087013591508082111561277b57600080fd5b5061278887828801612526565b91505092959194509250565b6000806000604084860312156127a957600080fd5b833567ffffffffffffffff808211156127c157600080fd5b818601915086601f8301126127d557600080fd5b81356020828211156127e9576127e96124df565b8160051b6127f88282016124f5565b928352848101820192828101908b85111561281257600080fd5b83870192505b8483101561284e578235868111156128305760008081fd5b61283e8d86838b0101612596565b8352509183019190830190612818565b985050508701359250508082111561286557600080fd5b506124d286828701612443565b6000815180845260005b818110156128985760208185018101518683018201520161287c565b506000602082860101526020601f19601f83011685010191505092915050565b60208152600061080f6020830184612872565b6000602082840312156128dd57600080fd5b61080f826123cc565b600080604083850312156128f957600080fd5b823567ffffffffffffffff8082111561291157600080fd5b61291d86838701612596565b9350602085013591508082111561293357600080fd5b5061294085828601612526565b9150509250929050565b8183823760009101908152919050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b60006001820161299857612998612970565b5060010190565b600181811c908216806129b357607f821691505b60208210810361230e57634e487b7160e01b600052602260045260246000fd5b8181038181111561081257610812612970565b60ff818116838216019081111561081257610812612970565b8082018082111561081257610812612970565b600382810b9082900b03637fffffff198112637fffffff8213171561081257610812612970565b604081526000612a4c6040830185612872565b8281036020840152610ab78185612872565b634e487b7160e01b600052600160045260246000fd5b634e487b7160e01b600052601260045260246000fd5b600061ffff80841680612a9f57612a9f612a74565b92169190910492915050565b60ff828116828216039081111561081257610812612970565b606081526000612ad76060830186612872565b8281036020840152612ae98186612872565b91505061ffff83166040830152949350505050565b600060208284031215612b1057600080fd5b5051919050565b600081612b2657612b26612970565b506000190190565b808202811582820484141761081257610812612970565b600082612b5457612b54612a74565b500690565b600181815b80851115612b94578160001904821115612b7a57612b7a612970565b80851615612b8757918102915b93841c9390800290612b5e565b509250929050565b600082612bab57506001610812565b81612bb857506000610812565b8160018114612bce5760028114612bd857612bf4565b6001915050610812565b60ff841115612be957612be9612970565b50506001821b610812565b5060208310610133831016604e8410600b8410161715612c17575081810a610812565b612c218383612b59565b8060001904821115612c3557612c35612970565b029392505050565b600061080f8383612b9c565b81810360008312801583831316838312821617156108b7576108b7612970565b606081526000612c7c6060830186612872565b8281036020840152612c8e8186612872565b90508281036040840152611d808185612872565b600060208284031215612cb457600080fd5b8151801515811461080f57600080fdfe00010203040506070809ffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fffffffffffffffffffff0a0b0c0d0e0f101112131415161718191a1b1c1d1e1fa164736f6c6343000811000a"; -const isSuperArgs = (xs) => xs.length > 1; -class DNSSECImpl__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(_anchors, overrides) { - return super.getDeployTransaction(_anchors, overrides || {}); - } - deploy(_anchors, overrides) { - return super.deploy(_anchors, overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.DNSSECImpl__factory = DNSSECImpl__factory; -DNSSECImpl__factory.bytecode = _bytecode; -DNSSECImpl__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/Owned__factory.d.ts b/dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/Owned__factory.d.ts deleted file mode 100644 index e0c7c7bb..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/Owned__factory.d.ts +++ /dev/null @@ -1,47 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../../../common"; -import type { Owned, OwnedInterface } from "../../../../../contracts/@ens/dnssec/DNSSECImpl.sol/Owned"; -declare type OwnedConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class Owned__factory extends ContractFactory { - constructor(...args: OwnedConstructorParams); - getDeployTransaction(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): Owned__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b50600080546001600160a01b0319163317905560e9806100316000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c806313af40351460375780638da5cb5b146048575b600080fd5b6046604236600460ae565b6076565b005b600054605a906001600160a01b031681565b6040516001600160a01b03909116815260200160405180910390f35b6000546001600160a01b03163314608c57600080fd5b600080546001600160a01b0319166001600160a01b0392909216919091179055565b60006020828403121560bf57600080fd5b81356001600160a01b038116811460d557600080fd5b939250505056fea164736f6c6343000811000a"; - static readonly abi: readonly [{ - readonly inputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "constructor"; - }, { - readonly inputs: readonly []; - readonly name: "owner"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "newOwner"; - readonly type: "address"; - }]; - readonly name: "setOwner"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): OwnedInterface; - static connect(address: string, runner?: ContractRunner | null): Owned; -} -export {}; -//# sourceMappingURL=Owned__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/Owned__factory.d.ts.map b/dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/Owned__factory.d.ts.map deleted file mode 100644 index 47e4a4d1..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/Owned__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Owned__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/Owned__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,KAAK,EACL,cAAc,EACf,MAAM,2DAA2D,CAAC;AAuCnE,aAAK,sBAAsB,GACvB,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,cAAe,SAAQ,eAAe;gBACrC,GAAG,IAAI,EAAE,sBAAsB;IAQlC,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,cAAc;IAI/D,MAAM,CAAC,QAAQ,CAAC,QAAQ,4jBAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,cAAc;IAGxC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,KAAK;CAGvE"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/Owned__factory.js b/dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/Owned__factory.js deleted file mode 100644 index 11c48abf..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/Owned__factory.js +++ /dev/null @@ -1,67 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.Owned__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [], - stateMutability: "nonpayable", - type: "constructor", - }, - { - inputs: [], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "setOwner", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -const _bytecode = "0x608060405234801561001057600080fd5b50600080546001600160a01b0319163317905560e9806100316000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c806313af40351460375780638da5cb5b146048575b600080fd5b6046604236600460ae565b6076565b005b600054605a906001600160a01b031681565b6040516001600160a01b03909116815260200160405180910390f35b6000546001600160a01b03163314608c57600080fd5b600080546001600160a01b0319166001600160a01b0392909216919091179055565b60006020828403121560bf57600080fd5b81356001600160a01b038116811460d557600080fd5b939250505056fea164736f6c6343000811000a"; -const isSuperArgs = (xs) => xs.length > 1; -class Owned__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(overrides) { - return super.getDeployTransaction(overrides || {}); - } - deploy(overrides) { - return super.deploy(overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.Owned__factory = Owned__factory; -Owned__factory.bytecode = _bytecode; -Owned__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/index.d.ts b/dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/index.d.ts deleted file mode 100644 index fcdfcaef..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export { DNSSECImpl__factory } from "./DNSSECImpl__factory"; -export { Owned__factory } from "./Owned__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/index.d.ts.map b/dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/index.d.ts.map deleted file mode 100644 index 2e91f8d3..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/index.js b/dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/index.js deleted file mode 100644 index 1d7a67d3..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/index.js +++ /dev/null @@ -1,7 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.Owned__factory = exports.DNSSECImpl__factory = void 0; -var DNSSECImpl__factory_1 = require("./DNSSECImpl__factory"); -Object.defineProperty(exports, "DNSSECImpl__factory", { enumerable: true, get: function () { return DNSSECImpl__factory_1.DNSSECImpl__factory; } }); -var Owned__factory_1 = require("./Owned__factory"); -Object.defineProperty(exports, "Owned__factory", { enumerable: true, get: function () { return Owned__factory_1.Owned__factory; } }); diff --git a/dist/types/factories/contracts/@ens/dnssec/DNSSEC__factory.d.ts b/dist/types/factories/contracts/@ens/dnssec/DNSSEC__factory.d.ts deleted file mode 100644 index 5d507062..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/DNSSEC__factory.d.ts +++ /dev/null @@ -1,233 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { DNSSEC, DNSSECInterface } from "../../../../contracts/@ens/dnssec/DNSSEC"; -export declare class DNSSEC__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "uint8"; - readonly name: "id"; - readonly type: "uint8"; - }, { - readonly indexed: false; - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }]; - readonly name: "AlgorithmUpdated"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "uint8"; - readonly name: "id"; - readonly type: "uint8"; - }, { - readonly indexed: false; - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }]; - readonly name: "DigestUpdated"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "uint8"; - readonly name: "id"; - readonly type: "uint8"; - }, { - readonly indexed: false; - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }]; - readonly name: "NSEC3DigestUpdated"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "bytes"; - readonly name: "name"; - readonly type: "bytes"; - }, { - readonly indexed: false; - readonly internalType: "bytes"; - readonly name: "rrset"; - readonly type: "bytes"; - }]; - readonly name: "RRSetUpdated"; - readonly type: "event"; - }, { - readonly inputs: readonly []; - readonly name: "anchors"; - readonly outputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint16"; - readonly name: "deleteType"; - readonly type: "uint16"; - }, { - readonly internalType: "bytes"; - readonly name: "deleteName"; - readonly type: "bytes"; - }, { - readonly components: readonly [{ - readonly internalType: "bytes"; - readonly name: "rrset"; - readonly type: "bytes"; - }, { - readonly internalType: "bytes"; - readonly name: "sig"; - readonly type: "bytes"; - }]; - readonly internalType: "struct DNSSEC.RRSetWithSignature"; - readonly name: "nsec"; - readonly type: "tuple"; - }, { - readonly internalType: "bytes"; - readonly name: "proof"; - readonly type: "bytes"; - }]; - readonly name: "deleteRRSet"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint16"; - readonly name: "deleteType"; - readonly type: "uint16"; - }, { - readonly internalType: "bytes"; - readonly name: "deleteName"; - readonly type: "bytes"; - }, { - readonly components: readonly [{ - readonly internalType: "bytes"; - readonly name: "rrset"; - readonly type: "bytes"; - }, { - readonly internalType: "bytes"; - readonly name: "sig"; - readonly type: "bytes"; - }]; - readonly internalType: "struct DNSSEC.RRSetWithSignature"; - readonly name: "closestEncloser"; - readonly type: "tuple"; - }, { - readonly components: readonly [{ - readonly internalType: "bytes"; - readonly name: "rrset"; - readonly type: "bytes"; - }, { - readonly internalType: "bytes"; - readonly name: "sig"; - readonly type: "bytes"; - }]; - readonly internalType: "struct DNSSEC.RRSetWithSignature"; - readonly name: "nextClosest"; - readonly type: "tuple"; - }, { - readonly internalType: "bytes"; - readonly name: "dnskey"; - readonly type: "bytes"; - }]; - readonly name: "deleteRRSetNSEC3"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint16"; - readonly name: "dnstype"; - readonly type: "uint16"; - }, { - readonly internalType: "bytes"; - readonly name: "name"; - readonly type: "bytes"; - }]; - readonly name: "rrdata"; - readonly outputs: readonly [{ - readonly internalType: "uint32"; - readonly name: ""; - readonly type: "uint32"; - }, { - readonly internalType: "uint32"; - readonly name: ""; - readonly type: "uint32"; - }, { - readonly internalType: "bytes20"; - readonly name: ""; - readonly type: "bytes20"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly components: readonly [{ - readonly internalType: "bytes"; - readonly name: "rrset"; - readonly type: "bytes"; - }, { - readonly internalType: "bytes"; - readonly name: "sig"; - readonly type: "bytes"; - }]; - readonly internalType: "struct DNSSEC.RRSetWithSignature"; - readonly name: "input"; - readonly type: "tuple"; - }, { - readonly internalType: "bytes"; - readonly name: "proof"; - readonly type: "bytes"; - }]; - readonly name: "submitRRSet"; - readonly outputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly components: readonly [{ - readonly internalType: "bytes"; - readonly name: "rrset"; - readonly type: "bytes"; - }, { - readonly internalType: "bytes"; - readonly name: "sig"; - readonly type: "bytes"; - }]; - readonly internalType: "struct DNSSEC.RRSetWithSignature[]"; - readonly name: "input"; - readonly type: "tuple[]"; - }, { - readonly internalType: "bytes"; - readonly name: "proof"; - readonly type: "bytes"; - }]; - readonly name: "submitRRSets"; - readonly outputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): DNSSECInterface; - static connect(address: string, runner?: ContractRunner | null): DNSSEC; -} -//# sourceMappingURL=DNSSEC__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/DNSSEC__factory.d.ts.map b/dist/types/factories/contracts/@ens/dnssec/DNSSEC__factory.d.ts.map deleted file mode 100644 index a14d92cc..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/DNSSEC__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"DNSSEC__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/contracts/@ens/dnssec/DNSSEC__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,MAAM,EACN,eAAe,EAChB,MAAM,0CAA0C,CAAC;AAySlD,qBAAa,eAAe;IAC1B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,eAAe;IAGzC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,MAAM;CAGxE"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/DNSSEC__factory.js b/dist/types/factories/contracts/@ens/dnssec/DNSSEC__factory.js deleted file mode 100644 index d323e968..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/DNSSEC__factory.js +++ /dev/null @@ -1,308 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.DNSSEC__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint8", - name: "id", - type: "uint8", - }, - { - indexed: false, - internalType: "address", - name: "addr", - type: "address", - }, - ], - name: "AlgorithmUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint8", - name: "id", - type: "uint8", - }, - { - indexed: false, - internalType: "address", - name: "addr", - type: "address", - }, - ], - name: "DigestUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint8", - name: "id", - type: "uint8", - }, - { - indexed: false, - internalType: "address", - name: "addr", - type: "address", - }, - ], - name: "NSEC3DigestUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "bytes", - name: "name", - type: "bytes", - }, - { - indexed: false, - internalType: "bytes", - name: "rrset", - type: "bytes", - }, - ], - name: "RRSetUpdated", - type: "event", - }, - { - inputs: [], - name: "anchors", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint16", - name: "deleteType", - type: "uint16", - }, - { - internalType: "bytes", - name: "deleteName", - type: "bytes", - }, - { - components: [ - { - internalType: "bytes", - name: "rrset", - type: "bytes", - }, - { - internalType: "bytes", - name: "sig", - type: "bytes", - }, - ], - internalType: "struct DNSSEC.RRSetWithSignature", - name: "nsec", - type: "tuple", - }, - { - internalType: "bytes", - name: "proof", - type: "bytes", - }, - ], - name: "deleteRRSet", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint16", - name: "deleteType", - type: "uint16", - }, - { - internalType: "bytes", - name: "deleteName", - type: "bytes", - }, - { - components: [ - { - internalType: "bytes", - name: "rrset", - type: "bytes", - }, - { - internalType: "bytes", - name: "sig", - type: "bytes", - }, - ], - internalType: "struct DNSSEC.RRSetWithSignature", - name: "closestEncloser", - type: "tuple", - }, - { - components: [ - { - internalType: "bytes", - name: "rrset", - type: "bytes", - }, - { - internalType: "bytes", - name: "sig", - type: "bytes", - }, - ], - internalType: "struct DNSSEC.RRSetWithSignature", - name: "nextClosest", - type: "tuple", - }, - { - internalType: "bytes", - name: "dnskey", - type: "bytes", - }, - ], - name: "deleteRRSetNSEC3", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint16", - name: "dnstype", - type: "uint16", - }, - { - internalType: "bytes", - name: "name", - type: "bytes", - }, - ], - name: "rrdata", - outputs: [ - { - internalType: "uint32", - name: "", - type: "uint32", - }, - { - internalType: "uint32", - name: "", - type: "uint32", - }, - { - internalType: "bytes20", - name: "", - type: "bytes20", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "bytes", - name: "rrset", - type: "bytes", - }, - { - internalType: "bytes", - name: "sig", - type: "bytes", - }, - ], - internalType: "struct DNSSEC.RRSetWithSignature", - name: "input", - type: "tuple", - }, - { - internalType: "bytes", - name: "proof", - type: "bytes", - }, - ], - name: "submitRRSet", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "bytes", - name: "rrset", - type: "bytes", - }, - { - internalType: "bytes", - name: "sig", - type: "bytes", - }, - ], - internalType: "struct DNSSEC.RRSetWithSignature[]", - name: "input", - type: "tuple[]", - }, - { - internalType: "bytes", - name: "proof", - type: "bytes", - }, - ], - name: "submitRRSets", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, -]; -class DNSSEC__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.DNSSEC__factory = DNSSEC__factory; -DNSSEC__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@ens/dnssec/TLDPublicSuffixList__factory.d.ts b/dist/types/factories/contracts/@ens/dnssec/TLDPublicSuffixList__factory.d.ts deleted file mode 100644 index 76ebd011..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/TLDPublicSuffixList__factory.d.ts +++ /dev/null @@ -1,37 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../../common"; -import type { TLDPublicSuffixList, TLDPublicSuffixListInterface } from "../../../../contracts/@ens/dnssec/TLDPublicSuffixList"; -declare type TLDPublicSuffixListConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class TLDPublicSuffixList__factory extends ContractFactory { - constructor(...args: TLDPublicSuffixListConstructorParams); - getDeployTransaction(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): TLDPublicSuffixList__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b506101e4806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c80634f89059e14610030575b600080fd5b61004361003e36600461012e565b610057565b604051901515815260200160405180910390f35b60008061009e600085858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929392505061010a9050565b60ff16905060008111801561010057506100fb6100bc8260016101a0565b85858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929392505061010a9050565b60ff16155b9150505b92915050565b600082828151811061011e5761011e6101c1565b016020015160f81c905092915050565b6000806020838503121561014157600080fd5b823567ffffffffffffffff8082111561015957600080fd5b818501915085601f83011261016d57600080fd5b81358181111561017c57600080fd5b86602082850101111561018e57600080fd5b60209290920196919550909350505050565b8082018082111561010457634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fdfea164736f6c6343000811000a"; - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "bytes"; - readonly name: "name"; - readonly type: "bytes"; - }]; - readonly name: "isPublicSuffix"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): TLDPublicSuffixListInterface; - static connect(address: string, runner?: ContractRunner | null): TLDPublicSuffixList; -} -export {}; -//# sourceMappingURL=TLDPublicSuffixList__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/TLDPublicSuffixList__factory.d.ts.map b/dist/types/factories/contracts/@ens/dnssec/TLDPublicSuffixList__factory.d.ts.map deleted file mode 100644 index 3f5b55de..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/TLDPublicSuffixList__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"TLDPublicSuffixList__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/contracts/@ens/dnssec/TLDPublicSuffixList__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,KAAK,EACV,mBAAmB,EACnB,4BAA4B,EAC7B,MAAM,uDAAuD,CAAC;AA2B/D,aAAK,oCAAoC,GACrC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,4BAA6B,SAAQ,eAAe;gBACnD,GAAG,IAAI,EAAE,oCAAoC;IAQhD,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CACd,MAAM,EAAE,cAAc,GAAG,IAAI,GAC5B,4BAA4B;IAI/B,MAAM,CAAC,QAAQ,CAAC,QAAQ,ghCAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,4BAA4B;IAGtD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,mBAAmB;CAOvB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/TLDPublicSuffixList__factory.js b/dist/types/factories/contracts/@ens/dnssec/TLDPublicSuffixList__factory.js deleted file mode 100644 index 9f0be8c0..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/TLDPublicSuffixList__factory.js +++ /dev/null @@ -1,55 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.TLDPublicSuffixList__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "bytes", - name: "name", - type: "bytes", - }, - ], - name: "isPublicSuffix", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -const _bytecode = "0x608060405234801561001057600080fd5b506101e4806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c80634f89059e14610030575b600080fd5b61004361003e36600461012e565b610057565b604051901515815260200160405180910390f35b60008061009e600085858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929392505061010a9050565b60ff16905060008111801561010057506100fb6100bc8260016101a0565b85858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929392505061010a9050565b60ff16155b9150505b92915050565b600082828151811061011e5761011e6101c1565b016020015160f81c905092915050565b6000806020838503121561014157600080fd5b823567ffffffffffffffff8082111561015957600080fd5b818501915085601f83011261016d57600080fd5b81358181111561017c57600080fd5b86602082850101111561018e57600080fd5b60209290920196919550909350505050565b8082018082111561010457634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fdfea164736f6c6343000811000a"; -const isSuperArgs = (xs) => xs.length > 1; -class TLDPublicSuffixList__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(overrides) { - return super.getDeployTransaction(overrides || {}); - } - deploy(overrides) { - return super.deploy(overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.TLDPublicSuffixList__factory = TLDPublicSuffixList__factory; -TLDPublicSuffixList__factory.bytecode = _bytecode; -TLDPublicSuffixList__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@ens/dnssec/algorithms/DummyAlgorithm__factory.d.ts b/dist/types/factories/contracts/@ens/dnssec/algorithms/DummyAlgorithm__factory.d.ts deleted file mode 100644 index 48a34096..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/algorithms/DummyAlgorithm__factory.d.ts +++ /dev/null @@ -1,45 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../../../common"; -import type { DummyAlgorithm, DummyAlgorithmInterface } from "../../../../../contracts/@ens/dnssec/algorithms/DummyAlgorithm"; -declare type DummyAlgorithmConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class DummyAlgorithm__factory extends ContractFactory { - constructor(...args: DummyAlgorithmConstructorParams); - getDeployTransaction(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): DummyAlgorithm__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b5061014e806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063de8f50a114610030575b600080fd5b61004a61003e3660046100a7565b60019695505050505050565b604051901515815260200160405180910390f35b60008083601f84011261007057600080fd5b50813567ffffffffffffffff81111561008857600080fd5b6020830191508360208285010111156100a057600080fd5b9250929050565b600080600080600080606087890312156100c057600080fd5b863567ffffffffffffffff808211156100d857600080fd5b6100e48a838b0161005e565b909850965060208901359150808211156100fd57600080fd5b6101098a838b0161005e565b9096509450604089013591508082111561012257600080fd5b5061012f89828a0161005e565b979a969950949750929593949250505056fea164736f6c6343000811000a"; - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }, { - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }, { - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly name: "verify"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): DummyAlgorithmInterface; - static connect(address: string, runner?: ContractRunner | null): DummyAlgorithm; -} -export {}; -//# sourceMappingURL=DummyAlgorithm__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/algorithms/DummyAlgorithm__factory.d.ts.map b/dist/types/factories/contracts/@ens/dnssec/algorithms/DummyAlgorithm__factory.d.ts.map deleted file mode 100644 index c01286f8..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/algorithms/DummyAlgorithm__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"DummyAlgorithm__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@ens/dnssec/algorithms/DummyAlgorithm__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,cAAc,EACd,uBAAuB,EACxB,MAAM,gEAAgE,CAAC;AAqCxE,aAAK,+BAA+B,GAChC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,uBAAwB,SAAQ,eAAe;gBAC9C,GAAG,IAAI,EAAE,+BAA+B;IAQ3C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,uBAAuB;IAIxE,MAAM,CAAC,QAAQ,CAAC,QAAQ,ouBAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,uBAAuB;IAGjD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,cAAc;CAGlB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/algorithms/DummyAlgorithm__factory.js b/dist/types/factories/contracts/@ens/dnssec/algorithms/DummyAlgorithm__factory.js deleted file mode 100644 index 41ee7789..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/algorithms/DummyAlgorithm__factory.js +++ /dev/null @@ -1,65 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.DummyAlgorithm__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - { - internalType: "bytes", - name: "", - type: "bytes", - }, - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - name: "verify", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -const _bytecode = "0x608060405234801561001057600080fd5b5061014e806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063de8f50a114610030575b600080fd5b61004a61003e3660046100a7565b60019695505050505050565b604051901515815260200160405180910390f35b60008083601f84011261007057600080fd5b50813567ffffffffffffffff81111561008857600080fd5b6020830191508360208285010111156100a057600080fd5b9250929050565b600080600080600080606087890312156100c057600080fd5b863567ffffffffffffffff808211156100d857600080fd5b6100e48a838b0161005e565b909850965060208901359150808211156100fd57600080fd5b6101098a838b0161005e565b9096509450604089013591508082111561012257600080fd5b5061012f89828a0161005e565b979a969950949750929593949250505056fea164736f6c6343000811000a"; -const isSuperArgs = (xs) => xs.length > 1; -class DummyAlgorithm__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(overrides) { - return super.getDeployTransaction(overrides || {}); - } - deploy(overrides) { - return super.deploy(overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.DummyAlgorithm__factory = DummyAlgorithm__factory; -DummyAlgorithm__factory.bytecode = _bytecode; -DummyAlgorithm__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm__factory.d.ts b/dist/types/factories/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm__factory.d.ts deleted file mode 100644 index 216ec4c7..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm__factory.d.ts +++ /dev/null @@ -1,45 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../../../common"; -import type { RSASHA256Algorithm, RSASHA256AlgorithmInterface } from "../../../../../contracts/@ens/dnssec/algorithms/RSASHA256Algorithm"; -declare type RSASHA256AlgorithmConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class RSASHA256Algorithm__factory extends ContractFactory { - constructor(...args: RSASHA256AlgorithmConstructorParams); - getDeployTransaction(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): RSASHA256Algorithm__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b506106ff806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063de8f50a114610030575b600080fd5b61004361003e366004610539565b610057565b604051901515815260200160405180910390f35b600060608060006100a260048b8b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092939250506102f59050565b60ff169050801561016e576100f760058261ffff168c8c8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092949392505061031a9050565b92506101676101078260056105e9565b61ffff9081169060059061011d9085168d61060b565b610127919061060b565b8c8c8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092949392505061031a9050565b9150610227565b6101b260058b8b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929392505061039c9050565b90506101fe60078261ffff168c8c8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092949392505061031a9050565b925061022461020e8260076105e9565b61ffff9081169060079061011d9085168d61060b565b91505b6000606061026c84868a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506103c492505050565b90925090508180156102e557506102916020825161028a919061060b565b82906103df565b60028b8b6040516102a392919061061e565b602060405180830381855afa1580156102c0573d6000803e3d6000fd5b5050506040513d601f19601f820116820180604052508101906102e3919061062e565b145b9c9b505050505050505050505050565b600082828151811061030957610309610647565b016020015160f81c90505b92915050565b8251606090610329838561065d565b111561033457600080fd5b60008267ffffffffffffffff81111561034f5761034f610670565b6040519080825280601f01601f191660200182016040528015610379576020820181803683370190505b50905060208082019086860101610391828287610403565b509095945050505050565b81516000906103ac83600261065d565b11156103b757600080fd5b50016002015161ffff1690565b600060606103d3838587610459565b91509150935093915050565b81516000906103ef83602061065d565b11156103fa57600080fd5b50016020015190565b6020811061043b578151835261041a60208461065d565b925061042760208361065d565b915061043460208261060b565b9050610403565b905182516020929092036101000a6000190180199091169116179052565b60006060600085518551855188888860405160200161047d969594939291906106b6565b6040516020818303038152906040529050835167ffffffffffffffff8111156104a8576104a8610670565b6040519080825280601f01601f1916602001820160405280156104d2576020820181803683370190505b50915083516020830182516020840160055afa925050935093915050565b60008083601f84011261050257600080fd5b50813567ffffffffffffffff81111561051a57600080fd5b60208301915083602082850101111561053257600080fd5b9250929050565b6000806000806000806060878903121561055257600080fd5b863567ffffffffffffffff8082111561056a57600080fd5b6105768a838b016104f0565b9098509650602089013591508082111561058f57600080fd5b61059b8a838b016104f0565b909650945060408901359150808211156105b457600080fd5b506105c189828a016104f0565b979a9699509497509295939492505050565b634e487b7160e01b600052601160045260246000fd5b61ffff818116838216019080821115610604576106046105d3565b5092915050565b81810381811115610314576103146105d3565b8183823760009101908152919050565b60006020828403121561064057600080fd5b5051919050565b634e487b7160e01b600052603260045260246000fd5b80820180821115610314576103146105d3565b634e487b7160e01b600052604160045260246000fd5b6000815160005b818110156106a7576020818501810151868301520161068d565b50600093019283525090919050565b86815285602082015284604082015260006106e66106e06106da6060850188610686565b86610686565b84610686565b9897505050505050505056fea164736f6c6343000811000a"; - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "bytes"; - readonly name: "key"; - readonly type: "bytes"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }, { - readonly internalType: "bytes"; - readonly name: "sig"; - readonly type: "bytes"; - }]; - readonly name: "verify"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): RSASHA256AlgorithmInterface; - static connect(address: string, runner?: ContractRunner | null): RSASHA256Algorithm; -} -export {}; -//# sourceMappingURL=RSASHA256Algorithm__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm__factory.d.ts.map b/dist/types/factories/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm__factory.d.ts.map deleted file mode 100644 index 212a7d5a..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"RSASHA256Algorithm__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,kBAAkB,EAClB,2BAA2B,EAC5B,MAAM,oEAAoE,CAAC;AAqC5E,aAAK,mCAAmC,GACpC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,2BAA4B,SAAQ,eAAe;gBAClD,GAAG,IAAI,EAAE,mCAAmC;IAQ/C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,2BAA2B;IAI5E,MAAM,CAAC,QAAQ,CAAC,QAAQ,skHAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,2BAA2B;IAGrD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,kBAAkB;CAGtB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm__factory.js b/dist/types/factories/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm__factory.js deleted file mode 100644 index 54aa3a13..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm__factory.js +++ /dev/null @@ -1,65 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.RSASHA256Algorithm__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "bytes", - name: "key", - type: "bytes", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - { - internalType: "bytes", - name: "sig", - type: "bytes", - }, - ], - name: "verify", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -const _bytecode = "0x608060405234801561001057600080fd5b506106ff806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063de8f50a114610030575b600080fd5b61004361003e366004610539565b610057565b604051901515815260200160405180910390f35b600060608060006100a260048b8b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092939250506102f59050565b60ff169050801561016e576100f760058261ffff168c8c8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092949392505061031a9050565b92506101676101078260056105e9565b61ffff9081169060059061011d9085168d61060b565b610127919061060b565b8c8c8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092949392505061031a9050565b9150610227565b6101b260058b8b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929392505061039c9050565b90506101fe60078261ffff168c8c8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092949392505061031a9050565b925061022461020e8260076105e9565b61ffff9081169060079061011d9085168d61060b565b91505b6000606061026c84868a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506103c492505050565b90925090508180156102e557506102916020825161028a919061060b565b82906103df565b60028b8b6040516102a392919061061e565b602060405180830381855afa1580156102c0573d6000803e3d6000fd5b5050506040513d601f19601f820116820180604052508101906102e3919061062e565b145b9c9b505050505050505050505050565b600082828151811061030957610309610647565b016020015160f81c90505b92915050565b8251606090610329838561065d565b111561033457600080fd5b60008267ffffffffffffffff81111561034f5761034f610670565b6040519080825280601f01601f191660200182016040528015610379576020820181803683370190505b50905060208082019086860101610391828287610403565b509095945050505050565b81516000906103ac83600261065d565b11156103b757600080fd5b50016002015161ffff1690565b600060606103d3838587610459565b91509150935093915050565b81516000906103ef83602061065d565b11156103fa57600080fd5b50016020015190565b6020811061043b578151835261041a60208461065d565b925061042760208361065d565b915061043460208261060b565b9050610403565b905182516020929092036101000a6000190180199091169116179052565b60006060600085518551855188888860405160200161047d969594939291906106b6565b6040516020818303038152906040529050835167ffffffffffffffff8111156104a8576104a8610670565b6040519080825280601f01601f1916602001820160405280156104d2576020820181803683370190505b50915083516020830182516020840160055afa925050935093915050565b60008083601f84011261050257600080fd5b50813567ffffffffffffffff81111561051a57600080fd5b60208301915083602082850101111561053257600080fd5b9250929050565b6000806000806000806060878903121561055257600080fd5b863567ffffffffffffffff8082111561056a57600080fd5b6105768a838b016104f0565b9098509650602089013591508082111561058f57600080fd5b61059b8a838b016104f0565b909650945060408901359150808211156105b457600080fd5b506105c189828a016104f0565b979a9699509497509295939492505050565b634e487b7160e01b600052601160045260246000fd5b61ffff818116838216019080821115610604576106046105d3565b5092915050565b81810381811115610314576103146105d3565b8183823760009101908152919050565b60006020828403121561064057600080fd5b5051919050565b634e487b7160e01b600052603260045260246000fd5b80820180821115610314576103146105d3565b634e487b7160e01b600052604160045260246000fd5b6000815160005b818110156106a7576020818501810151868301520161068d565b50600093019283525090919050565b86815285602082015284604082015260006106e66106e06106da6060850188610686565b86610686565b84610686565b9897505050505050505056fea164736f6c6343000811000a"; -const isSuperArgs = (xs) => xs.length > 1; -class RSASHA256Algorithm__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(overrides) { - return super.getDeployTransaction(overrides || {}); - } - deploy(overrides) { - return super.deploy(overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.RSASHA256Algorithm__factory = RSASHA256Algorithm__factory; -RSASHA256Algorithm__factory.bytecode = _bytecode; -RSASHA256Algorithm__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@ens/dnssec/algorithms/index.d.ts b/dist/types/factories/contracts/@ens/dnssec/algorithms/index.d.ts deleted file mode 100644 index c088ce4e..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/algorithms/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export { DummyAlgorithm__factory } from "./DummyAlgorithm__factory"; -export { RSASHA256Algorithm__factory } from "./RSASHA256Algorithm__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/algorithms/index.d.ts.map b/dist/types/factories/contracts/@ens/dnssec/algorithms/index.d.ts.map deleted file mode 100644 index 34890d11..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/algorithms/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@ens/dnssec/algorithms/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/algorithms/index.js b/dist/types/factories/contracts/@ens/dnssec/algorithms/index.js deleted file mode 100644 index 0598d8df..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/algorithms/index.js +++ /dev/null @@ -1,7 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.RSASHA256Algorithm__factory = exports.DummyAlgorithm__factory = void 0; -var DummyAlgorithm__factory_1 = require("./DummyAlgorithm__factory"); -Object.defineProperty(exports, "DummyAlgorithm__factory", { enumerable: true, get: function () { return DummyAlgorithm__factory_1.DummyAlgorithm__factory; } }); -var RSASHA256Algorithm__factory_1 = require("./RSASHA256Algorithm__factory"); -Object.defineProperty(exports, "RSASHA256Algorithm__factory", { enumerable: true, get: function () { return RSASHA256Algorithm__factory_1.RSASHA256Algorithm__factory; } }); diff --git a/dist/types/factories/contracts/@ens/dnssec/digests/SHA1Digest__factory.d.ts b/dist/types/factories/contracts/@ens/dnssec/digests/SHA1Digest__factory.d.ts deleted file mode 100644 index 25908e29..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/digests/SHA1Digest__factory.d.ts +++ /dev/null @@ -1,41 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../../../common"; -import type { SHA1Digest, SHA1DigestInterface } from "../../../../../contracts/@ens/dnssec/digests/SHA1Digest"; -declare type SHA1DigestConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class SHA1Digest__factory extends ContractFactory { - constructor(...args: SHA1DigestConstructorParams); - getDeployTransaction(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): SHA1Digest__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b5061066f806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063f7e83aee14610030575b600080fd5b61004361003e3660046105cf565b610057565b604051901515815260200160405180910390f35b6000601482146100ad5760405162461bcd60e51b815260206004820152601860248201527f496e76616c696420736861312068617368206c656e6774680000000000000000604482015260640160405180910390fd5b60006100f3600085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092939250506101629050565b6bffffffffffffffffffffffff19169050600061014587878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061019592505050565b6bffffffffffffffffffffffff1916919091149695505050505050565b815160009061017283601461063b565b111561017d57600080fd5b5001602001516bffffffffffffffffffffffff191690565b60006040518251602084019350604067ffffffffffffffc0600183011601600982820310600181036101c8576040820191505b50776745230100efcdab890098badcfe001032547600c3d2e1f061021b565b600083831015610214575080820151928290039260208410156102145760001960208590036101000a0119165b9392505050565b60005b82811015610525576102318482896101e7565b85526102418460208301896101e7565b60208601526040818503106001810361025d5760808286038701535b506040830381146001810361027a57602086018051600887021790525b5060405b608081101561030257858101603f19810151603719820151601f19830151600b198401516002911891909218189081027ffffffffefffffffefffffffefffffffefffffffefffffffefffffffefffffffe1663800000009091047c010000000100000001000000010000000100000001000000010000000116179052600c0161027e565b5060805b61014081101561038b57858101607f19810151606f19820151603f198301516017198401516004911891909218189081027ffffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffc1663400000009091047c030000000300000003000000030000000300000003000000030000000316179052601801610306565b508160008060005b60508110156104fb576014810480156103c357600181146103ea576002811461040f57600381146104395761045a565b600160281b8504600160501b86048118600160781b870416189350635a827999925061045a565b600160281b8504600160781b8604600160501b870418189350636ed9eba1925061045a565b600160501b8504600160781b8604818117600160281b8804169116179350638f1bbcdc925061045a565b600160281b8504600160781b8604600160501b87041818935063ca62c1d692505b50601f600160bb1b8504168063ffffffe06001609b1b87041617905080840190508063ffffffff8616019050808301905080600160e01b600484028c015104019050600160a01b8102600160281b860417945050600160501b633fffffff600160521b86041663c00000006604000000000000870416170277ffffffff00ffffffff000000000000ffffffff00ffffffff8516179350600181019050610393565b5050509190910177ffffffff00ffffffff00ffffffff00ffffffff00ffffffff169060400161021e565b50600160601b63ffffffff821667ffffffff000000006101008404166bffffffff00000000000000006201000085041663ffffffff60601b630100000086041663ffffffff60801b6401000000008704161717171702945050505050919050565b60008083601f84011261059857600080fd5b50813567ffffffffffffffff8111156105b057600080fd5b6020830191508360208285010111156105c857600080fd5b9250929050565b600080600080604085870312156105e557600080fd5b843567ffffffffffffffff808211156105fd57600080fd5b61060988838901610586565b9096509450602087013591508082111561062257600080fd5b5061062f87828801610586565b95989497509550505050565b8082018082111561065c57634e487b7160e01b600052601160045260246000fd5b9291505056fea164736f6c6343000811000a"; - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }, { - readonly internalType: "bytes"; - readonly name: "hash"; - readonly type: "bytes"; - }]; - readonly name: "verify"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "pure"; - readonly type: "function"; - }]; - static createInterface(): SHA1DigestInterface; - static connect(address: string, runner?: ContractRunner | null): SHA1Digest; -} -export {}; -//# sourceMappingURL=SHA1Digest__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/digests/SHA1Digest__factory.d.ts.map b/dist/types/factories/contracts/@ens/dnssec/digests/SHA1Digest__factory.d.ts.map deleted file mode 100644 index cb9f8e09..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/digests/SHA1Digest__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"SHA1Digest__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@ens/dnssec/digests/SHA1Digest__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,UAAU,EACV,mBAAmB,EACpB,MAAM,yDAAyD,CAAC;AAgCjE,aAAK,2BAA2B,GAC5B,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,mBAAoB,SAAQ,eAAe;gBAC1C,GAAG,IAAI,EAAE,2BAA2B;IAQvC,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,mBAAmB;IAIpE,MAAM,CAAC,QAAQ,CAAC,QAAQ,syGAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,mBAAmB;IAG7C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,UAAU;CAG5E"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/digests/SHA1Digest__factory.js b/dist/types/factories/contracts/@ens/dnssec/digests/SHA1Digest__factory.js deleted file mode 100644 index 30e1fccc..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/digests/SHA1Digest__factory.js +++ /dev/null @@ -1,60 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.SHA1Digest__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - { - internalType: "bytes", - name: "hash", - type: "bytes", - }, - ], - name: "verify", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "pure", - type: "function", - }, -]; -const _bytecode = "0x608060405234801561001057600080fd5b5061066f806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063f7e83aee14610030575b600080fd5b61004361003e3660046105cf565b610057565b604051901515815260200160405180910390f35b6000601482146100ad5760405162461bcd60e51b815260206004820152601860248201527f496e76616c696420736861312068617368206c656e6774680000000000000000604482015260640160405180910390fd5b60006100f3600085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092939250506101629050565b6bffffffffffffffffffffffff19169050600061014587878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061019592505050565b6bffffffffffffffffffffffff1916919091149695505050505050565b815160009061017283601461063b565b111561017d57600080fd5b5001602001516bffffffffffffffffffffffff191690565b60006040518251602084019350604067ffffffffffffffc0600183011601600982820310600181036101c8576040820191505b50776745230100efcdab890098badcfe001032547600c3d2e1f061021b565b600083831015610214575080820151928290039260208410156102145760001960208590036101000a0119165b9392505050565b60005b82811015610525576102318482896101e7565b85526102418460208301896101e7565b60208601526040818503106001810361025d5760808286038701535b506040830381146001810361027a57602086018051600887021790525b5060405b608081101561030257858101603f19810151603719820151601f19830151600b198401516002911891909218189081027ffffffffefffffffefffffffefffffffefffffffefffffffefffffffefffffffe1663800000009091047c010000000100000001000000010000000100000001000000010000000116179052600c0161027e565b5060805b61014081101561038b57858101607f19810151606f19820151603f198301516017198401516004911891909218189081027ffffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffc1663400000009091047c030000000300000003000000030000000300000003000000030000000316179052601801610306565b508160008060005b60508110156104fb576014810480156103c357600181146103ea576002811461040f57600381146104395761045a565b600160281b8504600160501b86048118600160781b870416189350635a827999925061045a565b600160281b8504600160781b8604600160501b870418189350636ed9eba1925061045a565b600160501b8504600160781b8604818117600160281b8804169116179350638f1bbcdc925061045a565b600160281b8504600160781b8604600160501b87041818935063ca62c1d692505b50601f600160bb1b8504168063ffffffe06001609b1b87041617905080840190508063ffffffff8616019050808301905080600160e01b600484028c015104019050600160a01b8102600160281b860417945050600160501b633fffffff600160521b86041663c00000006604000000000000870416170277ffffffff00ffffffff000000000000ffffffff00ffffffff8516179350600181019050610393565b5050509190910177ffffffff00ffffffff00ffffffff00ffffffff00ffffffff169060400161021e565b50600160601b63ffffffff821667ffffffff000000006101008404166bffffffff00000000000000006201000085041663ffffffff60601b630100000086041663ffffffff60801b6401000000008704161717171702945050505050919050565b60008083601f84011261059857600080fd5b50813567ffffffffffffffff8111156105b057600080fd5b6020830191508360208285010111156105c857600080fd5b9250929050565b600080600080604085870312156105e557600080fd5b843567ffffffffffffffff808211156105fd57600080fd5b61060988838901610586565b9096509450602087013591508082111561062257600080fd5b5061062f87828801610586565b95989497509550505050565b8082018082111561065c57634e487b7160e01b600052601160045260246000fd5b9291505056fea164736f6c6343000811000a"; -const isSuperArgs = (xs) => xs.length > 1; -class SHA1Digest__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(overrides) { - return super.getDeployTransaction(overrides || {}); - } - deploy(overrides) { - return super.deploy(overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.SHA1Digest__factory = SHA1Digest__factory; -SHA1Digest__factory.bytecode = _bytecode; -SHA1Digest__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@ens/dnssec/digests/SHA1NSEC3Digest__factory.d.ts b/dist/types/factories/contracts/@ens/dnssec/digests/SHA1NSEC3Digest__factory.d.ts deleted file mode 100644 index c224d042..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/digests/SHA1NSEC3Digest__factory.d.ts +++ /dev/null @@ -1,45 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../../../common"; -import type { SHA1NSEC3Digest, SHA1NSEC3DigestInterface } from "../../../../../contracts/@ens/dnssec/digests/SHA1NSEC3Digest"; -declare type SHA1NSEC3DigestConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class SHA1NSEC3Digest__factory extends ContractFactory { - constructor(...args: SHA1NSEC3DigestConstructorParams); - getDeployTransaction(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): SHA1NSEC3Digest__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b506109c9806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c806368f9dab214610030575b600080fd5b61004361003e3660046108ba565b610055565b60405190815260200160405180910390f35b6000610074604051806040016040528060608152602001600081525090565b6100936100818588610944565b61008c906010610944565b82906101e9565b506100d685858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525085939250506102549050565b5061011987878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525085939250506102549050565b5060006101298260000151610282565b905083156101d457604080518082019091526060815260006020909101819052825152610157826000610672565b5061019a88888080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525086939250506102549050565b5060005b848110156101d2576101b2836000846106a2565b5082516101be90610282565b9150806101ca81610957565b91505061019e565b505b6001600160601b031916979650505050505050565b604080518082019091526060815260006020820152610209602083610970565b1561023157610219602083610970565b610224906020610992565b61022e9083610944565b91505b506020808301829052604080518085526000815283019091019052815b92915050565b60408051808201909152606081526000602082015261027b838460000151518485516106d6565b9392505050565b60006040518251602084019350604067ffffffffffffffc0600183011601600982820310600181036102b5576040820191505b50776745230100efcdab890098badcfe001032547600c3d2e1f0610307565b60008383101561027b5750808201519282900392602084101561027b5760001960208590036101000a0119169392505050565b60005b828110156106115761031d8482896102d4565b855261032d8460208301896102d4565b6020860152604081850310600181036103495760808286038701535b506040830381146001810361036657602086018051600887021790525b5060405b60808110156103ee57858101603f19810151603719820151601f19830151600b198401516002911891909218189081027ffffffffefffffffefffffffefffffffefffffffefffffffefffffffefffffffe1663800000009091047c010000000100000001000000010000000100000001000000010000000116179052600c0161036a565b5060805b61014081101561047757858101607f19810151606f19820151603f198301516017198401516004911891909218189081027ffffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffc1663400000009091047c0300000003000000030000000300000003000000030000000300000003161790526018016103f2565b508160008060005b60508110156105e7576014810480156104af57600181146104d657600281146104fb576003811461052557610546565b600160281b8504600160501b86048118600160781b870416189350635a8279999250610546565b600160281b8504600160781b8604600160501b870418189350636ed9eba19250610546565b600160501b8504600160781b8604818117600160281b8804169116179350638f1bbcdc9250610546565b600160281b8504600160781b8604600160501b87041818935063ca62c1d692505b50601f600160bb1b8504168063ffffffe06001609b1b87041617905080840190508063ffffffff8616019050808301905080600160e01b600484028c015104019050600160a01b8102600160281b860417945050600160501b633fffffff600160521b86041663c00000006604000000000000870416170277ffffffff00ffffffff000000000000ffffffff00ffffffff851617935060018101905061047f565b5050509190910177ffffffff00ffffffff00ffffffff00ffffffff00ffffffff169060400161030a565b50600160601b63ffffffff821667ffffffff000000006101008404166bffffffff00000000000000006201000085041663ffffffff60601b630100000086041663ffffffff60801b6401000000008704161717171702945050505050919050565b60408051808201909152606081526000602082015282515161027b9084906001600160601b0319851660146107c0565b6040805180820190915260608152600060208201526106ce84846001600160601b0319851660146107c0565b949350505050565b60408051808201909152606081526000602082015282518211156106f957600080fd5b60208501516107088386610944565b111561073b5761073b8561072b876020015187866107269190610944565b61083d565b6107369060026109a5565b610854565b60008086518051876020830101935080888701111561075a5787860182525b505050602084015b6020841061079a5780518252610779602083610944565b9150610786602082610944565b9050610793602085610992565b9350610762565b51815160001960208690036101000a019081169019919091161790525083949350505050565b60408051808201909152606081526000602082015260208501516107e48584610944565b11156107f8576107f88561072b8685610944565b60006001836101000a0390508260200360080284901c93508551838682010185831982511617815250805184870111156108325783860181525b509495945050505050565b60008183111561084e57508161024e565b50919050565b815161086083836101e9565b5061086b8382610254565b50505050565b60008083601f84011261088357600080fd5b50813567ffffffffffffffff81111561089b57600080fd5b6020830191508360208285010111156108b357600080fd5b9250929050565b6000806000806000606086880312156108d257600080fd5b853567ffffffffffffffff808211156108ea57600080fd5b6108f689838a01610871565b9097509550602088013591508082111561090f57600080fd5b5061091c88828901610871565b96999598509660400135949350505050565b634e487b7160e01b600052601160045260246000fd5b8082018082111561024e5761024e61092e565b6000600182016109695761096961092e565b5060010190565b60008261098d57634e487b7160e01b600052601260045260246000fd5b500690565b8181038181111561024e5761024e61092e565b808202811582820484141761024e5761024e61092e56fea164736f6c6343000811000a"; - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "bytes"; - readonly name: "salt"; - readonly type: "bytes"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }, { - readonly internalType: "uint256"; - readonly name: "iterations"; - readonly type: "uint256"; - }]; - readonly name: "hash"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "pure"; - readonly type: "function"; - }]; - static createInterface(): SHA1NSEC3DigestInterface; - static connect(address: string, runner?: ContractRunner | null): SHA1NSEC3Digest; -} -export {}; -//# sourceMappingURL=SHA1NSEC3Digest__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/digests/SHA1NSEC3Digest__factory.d.ts.map b/dist/types/factories/contracts/@ens/dnssec/digests/SHA1NSEC3Digest__factory.d.ts.map deleted file mode 100644 index 08063d9f..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/digests/SHA1NSEC3Digest__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"SHA1NSEC3Digest__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@ens/dnssec/digests/SHA1NSEC3Digest__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,eAAe,EACf,wBAAwB,EACzB,MAAM,8DAA8D,CAAC;AAqCtE,aAAK,gCAAgC,GACjC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,wBAAyB,SAAQ,eAAe;gBAC/C,GAAG,IAAI,EAAE,gCAAgC;IAQ5C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,wBAAwB;IAIzE,MAAM,CAAC,QAAQ,CAAC,QAAQ,09JAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,wBAAwB;IAGlD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,eAAe;CAGnB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/digests/SHA1NSEC3Digest__factory.js b/dist/types/factories/contracts/@ens/dnssec/digests/SHA1NSEC3Digest__factory.js deleted file mode 100644 index 518ee7c9..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/digests/SHA1NSEC3Digest__factory.js +++ /dev/null @@ -1,65 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.SHA1NSEC3Digest__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "bytes", - name: "salt", - type: "bytes", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - { - internalType: "uint256", - name: "iterations", - type: "uint256", - }, - ], - name: "hash", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "pure", - type: "function", - }, -]; -const _bytecode = "0x608060405234801561001057600080fd5b506109c9806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c806368f9dab214610030575b600080fd5b61004361003e3660046108ba565b610055565b60405190815260200160405180910390f35b6000610074604051806040016040528060608152602001600081525090565b6100936100818588610944565b61008c906010610944565b82906101e9565b506100d685858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525085939250506102549050565b5061011987878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525085939250506102549050565b5060006101298260000151610282565b905083156101d457604080518082019091526060815260006020909101819052825152610157826000610672565b5061019a88888080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525086939250506102549050565b5060005b848110156101d2576101b2836000846106a2565b5082516101be90610282565b9150806101ca81610957565b91505061019e565b505b6001600160601b031916979650505050505050565b604080518082019091526060815260006020820152610209602083610970565b1561023157610219602083610970565b610224906020610992565b61022e9083610944565b91505b506020808301829052604080518085526000815283019091019052815b92915050565b60408051808201909152606081526000602082015261027b838460000151518485516106d6565b9392505050565b60006040518251602084019350604067ffffffffffffffc0600183011601600982820310600181036102b5576040820191505b50776745230100efcdab890098badcfe001032547600c3d2e1f0610307565b60008383101561027b5750808201519282900392602084101561027b5760001960208590036101000a0119169392505050565b60005b828110156106115761031d8482896102d4565b855261032d8460208301896102d4565b6020860152604081850310600181036103495760808286038701535b506040830381146001810361036657602086018051600887021790525b5060405b60808110156103ee57858101603f19810151603719820151601f19830151600b198401516002911891909218189081027ffffffffefffffffefffffffefffffffefffffffefffffffefffffffefffffffe1663800000009091047c010000000100000001000000010000000100000001000000010000000116179052600c0161036a565b5060805b61014081101561047757858101607f19810151606f19820151603f198301516017198401516004911891909218189081027ffffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffcfffffffc1663400000009091047c0300000003000000030000000300000003000000030000000300000003161790526018016103f2565b508160008060005b60508110156105e7576014810480156104af57600181146104d657600281146104fb576003811461052557610546565b600160281b8504600160501b86048118600160781b870416189350635a8279999250610546565b600160281b8504600160781b8604600160501b870418189350636ed9eba19250610546565b600160501b8504600160781b8604818117600160281b8804169116179350638f1bbcdc9250610546565b600160281b8504600160781b8604600160501b87041818935063ca62c1d692505b50601f600160bb1b8504168063ffffffe06001609b1b87041617905080840190508063ffffffff8616019050808301905080600160e01b600484028c015104019050600160a01b8102600160281b860417945050600160501b633fffffff600160521b86041663c00000006604000000000000870416170277ffffffff00ffffffff000000000000ffffffff00ffffffff851617935060018101905061047f565b5050509190910177ffffffff00ffffffff00ffffffff00ffffffff00ffffffff169060400161030a565b50600160601b63ffffffff821667ffffffff000000006101008404166bffffffff00000000000000006201000085041663ffffffff60601b630100000086041663ffffffff60801b6401000000008704161717171702945050505050919050565b60408051808201909152606081526000602082015282515161027b9084906001600160601b0319851660146107c0565b6040805180820190915260608152600060208201526106ce84846001600160601b0319851660146107c0565b949350505050565b60408051808201909152606081526000602082015282518211156106f957600080fd5b60208501516107088386610944565b111561073b5761073b8561072b876020015187866107269190610944565b61083d565b6107369060026109a5565b610854565b60008086518051876020830101935080888701111561075a5787860182525b505050602084015b6020841061079a5780518252610779602083610944565b9150610786602082610944565b9050610793602085610992565b9350610762565b51815160001960208690036101000a019081169019919091161790525083949350505050565b60408051808201909152606081526000602082015260208501516107e48584610944565b11156107f8576107f88561072b8685610944565b60006001836101000a0390508260200360080284901c93508551838682010185831982511617815250805184870111156108325783860181525b509495945050505050565b60008183111561084e57508161024e565b50919050565b815161086083836101e9565b5061086b8382610254565b50505050565b60008083601f84011261088357600080fd5b50813567ffffffffffffffff81111561089b57600080fd5b6020830191508360208285010111156108b357600080fd5b9250929050565b6000806000806000606086880312156108d257600080fd5b853567ffffffffffffffff808211156108ea57600080fd5b6108f689838a01610871565b9097509550602088013591508082111561090f57600080fd5b5061091c88828901610871565b96999598509660400135949350505050565b634e487b7160e01b600052601160045260246000fd5b8082018082111561024e5761024e61092e565b6000600182016109695761096961092e565b5060010190565b60008261098d57634e487b7160e01b600052601260045260246000fd5b500690565b8181038181111561024e5761024e61092e565b808202811582820484141761024e5761024e61092e56fea164736f6c6343000811000a"; -const isSuperArgs = (xs) => xs.length > 1; -class SHA1NSEC3Digest__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(overrides) { - return super.getDeployTransaction(overrides || {}); - } - deploy(overrides) { - return super.deploy(overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.SHA1NSEC3Digest__factory = SHA1NSEC3Digest__factory; -SHA1NSEC3Digest__factory.bytecode = _bytecode; -SHA1NSEC3Digest__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@ens/dnssec/digests/SHA256Digest__factory.d.ts b/dist/types/factories/contracts/@ens/dnssec/digests/SHA256Digest__factory.d.ts deleted file mode 100644 index 5467224e..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/digests/SHA256Digest__factory.d.ts +++ /dev/null @@ -1,41 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../../../common"; -import type { SHA256Digest, SHA256DigestInterface } from "../../../../../contracts/@ens/dnssec/digests/SHA256Digest"; -declare type SHA256DigestConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class SHA256Digest__factory extends ContractFactory { - constructor(...args: SHA256DigestConstructorParams); - getDeployTransaction(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): SHA256Digest__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b50610283806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063f7e83aee14610030575b600080fd5b61004361003e3660046101ba565b610057565b604051901515815260200160405180910390f35b6000602082146100ad5760405162461bcd60e51b815260206004820152601a60248201527f496e76616c6964207368613235362068617368206c656e677468000000000000604482015260640160405180910390fd5b6100f1600084848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929392505061014d9050565b60028686604051610103929190610226565b602060405180830381855afa158015610120573d6000803e3d6000fd5b5050506040513d601f19601f820116820180604052508101906101439190610236565b1495945050505050565b815160009061015d83602061024f565b111561016857600080fd5b50016020015190565b60008083601f84011261018357600080fd5b50813567ffffffffffffffff81111561019b57600080fd5b6020830191508360208285010111156101b357600080fd5b9250929050565b600080600080604085870312156101d057600080fd5b843567ffffffffffffffff808211156101e857600080fd5b6101f488838901610171565b9096509450602087013591508082111561020d57600080fd5b5061021a87828801610171565b95989497509550505050565b8183823760009101908152919050565b60006020828403121561024857600080fd5b5051919050565b8082018082111561027057634e487b7160e01b600052601160045260246000fd5b9291505056fea164736f6c6343000811000a"; - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }, { - readonly internalType: "bytes"; - readonly name: "hash"; - readonly type: "bytes"; - }]; - readonly name: "verify"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "pure"; - readonly type: "function"; - }]; - static createInterface(): SHA256DigestInterface; - static connect(address: string, runner?: ContractRunner | null): SHA256Digest; -} -export {}; -//# sourceMappingURL=SHA256Digest__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/digests/SHA256Digest__factory.d.ts.map b/dist/types/factories/contracts/@ens/dnssec/digests/SHA256Digest__factory.d.ts.map deleted file mode 100644 index 5b236fd4..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/digests/SHA256Digest__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"SHA256Digest__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@ens/dnssec/digests/SHA256Digest__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,YAAY,EACZ,qBAAqB,EACtB,MAAM,2DAA2D,CAAC;AAgCnE,aAAK,6BAA6B,GAC9B,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,qBAAsB,SAAQ,eAAe;gBAC5C,GAAG,IAAI,EAAE,6BAA6B;IAQzC,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,qBAAqB;IAItE,MAAM,CAAC,QAAQ,CAAC,QAAQ,80CAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,qBAAqB;IAG/C,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,YAAY;CAGhB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/digests/SHA256Digest__factory.js b/dist/types/factories/contracts/@ens/dnssec/digests/SHA256Digest__factory.js deleted file mode 100644 index cef52861..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/digests/SHA256Digest__factory.js +++ /dev/null @@ -1,60 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.SHA256Digest__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - { - internalType: "bytes", - name: "hash", - type: "bytes", - }, - ], - name: "verify", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "pure", - type: "function", - }, -]; -const _bytecode = "0x608060405234801561001057600080fd5b50610283806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063f7e83aee14610030575b600080fd5b61004361003e3660046101ba565b610057565b604051901515815260200160405180910390f35b6000602082146100ad5760405162461bcd60e51b815260206004820152601a60248201527f496e76616c6964207368613235362068617368206c656e677468000000000000604482015260640160405180910390fd5b6100f1600084848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929392505061014d9050565b60028686604051610103929190610226565b602060405180830381855afa158015610120573d6000803e3d6000fd5b5050506040513d601f19601f820116820180604052508101906101439190610236565b1495945050505050565b815160009061015d83602061024f565b111561016857600080fd5b50016020015190565b60008083601f84011261018357600080fd5b50813567ffffffffffffffff81111561019b57600080fd5b6020830191508360208285010111156101b357600080fd5b9250929050565b600080600080604085870312156101d057600080fd5b843567ffffffffffffffff808211156101e857600080fd5b6101f488838901610171565b9096509450602087013591508082111561020d57600080fd5b5061021a87828801610171565b95989497509550505050565b8183823760009101908152919050565b60006020828403121561024857600080fd5b5051919050565b8082018082111561027057634e487b7160e01b600052601160045260246000fd5b9291505056fea164736f6c6343000811000a"; -const isSuperArgs = (xs) => xs.length > 1; -class SHA256Digest__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(overrides) { - return super.getDeployTransaction(overrides || {}); - } - deploy(overrides) { - return super.deploy(overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.SHA256Digest__factory = SHA256Digest__factory; -SHA256Digest__factory.bytecode = _bytecode; -SHA256Digest__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@ens/dnssec/digests/index.d.ts b/dist/types/factories/contracts/@ens/dnssec/digests/index.d.ts deleted file mode 100644 index ac413b7e..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/digests/index.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export { SHA1Digest__factory } from "./SHA1Digest__factory"; -export { SHA1NSEC3Digest__factory } from "./SHA1NSEC3Digest__factory"; -export { SHA256Digest__factory } from "./SHA256Digest__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/digests/index.d.ts.map b/dist/types/factories/contracts/@ens/dnssec/digests/index.d.ts.map deleted file mode 100644 index 6408780d..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/digests/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@ens/dnssec/digests/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/digests/index.js b/dist/types/factories/contracts/@ens/dnssec/digests/index.js deleted file mode 100644 index 0c3b6f89..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/digests/index.js +++ /dev/null @@ -1,9 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.SHA256Digest__factory = exports.SHA1NSEC3Digest__factory = exports.SHA1Digest__factory = void 0; -var SHA1Digest__factory_1 = require("./SHA1Digest__factory"); -Object.defineProperty(exports, "SHA1Digest__factory", { enumerable: true, get: function () { return SHA1Digest__factory_1.SHA1Digest__factory; } }); -var SHA1NSEC3Digest__factory_1 = require("./SHA1NSEC3Digest__factory"); -Object.defineProperty(exports, "SHA1NSEC3Digest__factory", { enumerable: true, get: function () { return SHA1NSEC3Digest__factory_1.SHA1NSEC3Digest__factory; } }); -var SHA256Digest__factory_1 = require("./SHA256Digest__factory"); -Object.defineProperty(exports, "SHA256Digest__factory", { enumerable: true, get: function () { return SHA256Digest__factory_1.SHA256Digest__factory; } }); diff --git a/dist/types/factories/contracts/@ens/dnssec/index.d.ts b/dist/types/factories/contracts/@ens/dnssec/index.d.ts deleted file mode 100644 index be5f5a73..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/index.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -export * as dnssecImplSol from "./DNSSECImpl.sol"; -export * as algorithms from "./algorithms"; -export * as digests from "./digests"; -export * as interfaces from "./interfaces"; -export * as libraries from "./libraries"; -export { DNSRegistrar__factory } from "./DNSRegistrar__factory"; -export { DNSSEC__factory } from "./DNSSEC__factory"; -export { TLDPublicSuffixList__factory } from "./TLDPublicSuffixList__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/index.d.ts.map b/dist/types/factories/contracts/@ens/dnssec/index.d.ts.map deleted file mode 100644 index 97409a0c..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/contracts/@ens/dnssec/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,aAAa,MAAM,kBAAkB,CAAC;AAClD,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AACrC,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/index.js b/dist/types/factories/contracts/@ens/dnssec/index.js deleted file mode 100644 index 9e950d6e..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/index.js +++ /dev/null @@ -1,37 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.TLDPublicSuffixList__factory = exports.DNSSEC__factory = exports.DNSRegistrar__factory = exports.libraries = exports.interfaces = exports.digests = exports.algorithms = exports.dnssecImplSol = void 0; -exports.dnssecImplSol = __importStar(require("./DNSSECImpl.sol")); -exports.algorithms = __importStar(require("./algorithms")); -exports.digests = __importStar(require("./digests")); -exports.interfaces = __importStar(require("./interfaces")); -exports.libraries = __importStar(require("./libraries")); -var DNSRegistrar__factory_1 = require("./DNSRegistrar__factory"); -Object.defineProperty(exports, "DNSRegistrar__factory", { enumerable: true, get: function () { return DNSRegistrar__factory_1.DNSRegistrar__factory; } }); -var DNSSEC__factory_1 = require("./DNSSEC__factory"); -Object.defineProperty(exports, "DNSSEC__factory", { enumerable: true, get: function () { return DNSSEC__factory_1.DNSSEC__factory; } }); -var TLDPublicSuffixList__factory_1 = require("./TLDPublicSuffixList__factory"); -Object.defineProperty(exports, "TLDPublicSuffixList__factory", { enumerable: true, get: function () { return TLDPublicSuffixList__factory_1.TLDPublicSuffixList__factory; } }); diff --git a/dist/types/factories/contracts/@ens/dnssec/interfaces/Algorithm__factory.d.ts b/dist/types/factories/contracts/@ens/dnssec/interfaces/Algorithm__factory.d.ts deleted file mode 100644 index 0a1d4671..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/interfaces/Algorithm__factory.d.ts +++ /dev/null @@ -1,30 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { Algorithm, AlgorithmInterface } from "../../../../../contracts/@ens/dnssec/interfaces/Algorithm"; -export declare class Algorithm__factory { - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "bytes"; - readonly name: "key"; - readonly type: "bytes"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "verify"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): AlgorithmInterface; - static connect(address: string, runner?: ContractRunner | null): Algorithm; -} -//# sourceMappingURL=Algorithm__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/interfaces/Algorithm__factory.d.ts.map b/dist/types/factories/contracts/@ens/dnssec/interfaces/Algorithm__factory.d.ts.map deleted file mode 100644 index 8ddf60bd..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/interfaces/Algorithm__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Algorithm__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@ens/dnssec/interfaces/Algorithm__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,SAAS,EACT,kBAAkB,EACnB,MAAM,2DAA2D,CAAC;AAkCnE,qBAAa,kBAAkB;IAC7B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,kBAAkB;IAG5C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,SAAS;CAG3E"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/interfaces/Algorithm__factory.js b/dist/types/factories/contracts/@ens/dnssec/interfaces/Algorithm__factory.js deleted file mode 100644 index 379d2b60..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/interfaces/Algorithm__factory.js +++ /dev/null @@ -1,45 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.Algorithm__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "bytes", - name: "key", - type: "bytes", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "verify", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class Algorithm__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.Algorithm__factory = Algorithm__factory; -Algorithm__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@ens/dnssec/interfaces/Digest__factory.d.ts b/dist/types/factories/contracts/@ens/dnssec/interfaces/Digest__factory.d.ts deleted file mode 100644 index 80532a6d..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/interfaces/Digest__factory.d.ts +++ /dev/null @@ -1,26 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { Digest, DigestInterface } from "../../../../../contracts/@ens/dnssec/interfaces/Digest"; -export declare class Digest__factory { - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }, { - readonly internalType: "bytes"; - readonly name: "hash"; - readonly type: "bytes"; - }]; - readonly name: "verify"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "pure"; - readonly type: "function"; - }]; - static createInterface(): DigestInterface; - static connect(address: string, runner?: ContractRunner | null): Digest; -} -//# sourceMappingURL=Digest__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/interfaces/Digest__factory.d.ts.map b/dist/types/factories/contracts/@ens/dnssec/interfaces/Digest__factory.d.ts.map deleted file mode 100644 index 65379b02..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/interfaces/Digest__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Digest__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@ens/dnssec/interfaces/Digest__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,MAAM,EACN,eAAe,EAChB,MAAM,wDAAwD,CAAC;AA6BhE,qBAAa,eAAe;IAC1B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,eAAe;IAGzC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,MAAM;CAGxE"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/interfaces/Digest__factory.js b/dist/types/factories/contracts/@ens/dnssec/interfaces/Digest__factory.js deleted file mode 100644 index ed5f0ce0..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/interfaces/Digest__factory.js +++ /dev/null @@ -1,40 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.Digest__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - { - internalType: "bytes", - name: "hash", - type: "bytes", - }, - ], - name: "verify", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "pure", - type: "function", - }, -]; -class Digest__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.Digest__factory = Digest__factory; -Digest__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@ens/dnssec/interfaces/IDNSRegistrar__factory.d.ts b/dist/types/factories/contracts/@ens/dnssec/interfaces/IDNSRegistrar__factory.d.ts deleted file mode 100644 index 9cd90838..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/interfaces/IDNSRegistrar__factory.d.ts +++ /dev/null @@ -1,84 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IDNSRegistrar, IDNSRegistrarInterface } from "../../../../../contracts/@ens/dnssec/interfaces/IDNSRegistrar"; -export declare class IDNSRegistrar__factory { - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "bytes"; - readonly name: "name"; - readonly type: "bytes"; - }, { - readonly internalType: "bytes"; - readonly name: "proof"; - readonly type: "bytes"; - }]; - readonly name: "claim"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes"; - readonly name: "name"; - readonly type: "bytes"; - }, { - readonly components: readonly [{ - readonly internalType: "bytes"; - readonly name: "rrset"; - readonly type: "bytes"; - }, { - readonly internalType: "bytes"; - readonly name: "sig"; - readonly type: "bytes"; - }]; - readonly internalType: "struct DNSSEC.RRSetWithSignature[]"; - readonly name: "input"; - readonly type: "tuple[]"; - }, { - readonly internalType: "bytes"; - readonly name: "proof"; - readonly type: "bytes"; - }]; - readonly name: "proveAndClaim"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes"; - readonly name: "name"; - readonly type: "bytes"; - }, { - readonly components: readonly [{ - readonly internalType: "bytes"; - readonly name: "rrset"; - readonly type: "bytes"; - }, { - readonly internalType: "bytes"; - readonly name: "sig"; - readonly type: "bytes"; - }]; - readonly internalType: "struct DNSSEC.RRSetWithSignature[]"; - readonly name: "input"; - readonly type: "tuple[]"; - }, { - readonly internalType: "bytes"; - readonly name: "proof"; - readonly type: "bytes"; - }, { - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }]; - readonly name: "proveAndClaimWithResolver"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): IDNSRegistrarInterface; - static connect(address: string, runner?: ContractRunner | null): IDNSRegistrar; -} -//# sourceMappingURL=IDNSRegistrar__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/interfaces/IDNSRegistrar__factory.d.ts.map b/dist/types/factories/contracts/@ens/dnssec/interfaces/IDNSRegistrar__factory.d.ts.map deleted file mode 100644 index 72bdfa53..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/interfaces/IDNSRegistrar__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IDNSRegistrar__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@ens/dnssec/interfaces/IDNSRegistrar__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,aAAa,EACb,sBAAsB,EACvB,MAAM,+DAA+D,CAAC;AAuGvE,qBAAa,sBAAsB;IACjC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,sBAAsB;IAGhD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,aAAa;CAGjB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/interfaces/IDNSRegistrar__factory.js b/dist/types/factories/contracts/@ens/dnssec/interfaces/IDNSRegistrar__factory.js deleted file mode 100644 index 3f416b7f..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/interfaces/IDNSRegistrar__factory.js +++ /dev/null @@ -1,114 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IDNSRegistrar__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "bytes", - name: "name", - type: "bytes", - }, - { - internalType: "bytes", - name: "proof", - type: "bytes", - }, - ], - name: "claim", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes", - name: "name", - type: "bytes", - }, - { - components: [ - { - internalType: "bytes", - name: "rrset", - type: "bytes", - }, - { - internalType: "bytes", - name: "sig", - type: "bytes", - }, - ], - internalType: "struct DNSSEC.RRSetWithSignature[]", - name: "input", - type: "tuple[]", - }, - { - internalType: "bytes", - name: "proof", - type: "bytes", - }, - ], - name: "proveAndClaim", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes", - name: "name", - type: "bytes", - }, - { - components: [ - { - internalType: "bytes", - name: "rrset", - type: "bytes", - }, - { - internalType: "bytes", - name: "sig", - type: "bytes", - }, - ], - internalType: "struct DNSSEC.RRSetWithSignature[]", - name: "input", - type: "tuple[]", - }, - { - internalType: "bytes", - name: "proof", - type: "bytes", - }, - { - internalType: "address", - name: "resolver", - type: "address", - }, - { - internalType: "address", - name: "addr", - type: "address", - }, - ], - name: "proveAndClaimWithResolver", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -class IDNSRegistrar__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IDNSRegistrar__factory = IDNSRegistrar__factory; -IDNSRegistrar__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@ens/dnssec/interfaces/NSEC3Digest__factory.d.ts b/dist/types/factories/contracts/@ens/dnssec/interfaces/NSEC3Digest__factory.d.ts deleted file mode 100644 index fc5d9aa5..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/interfaces/NSEC3Digest__factory.d.ts +++ /dev/null @@ -1,30 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { NSEC3Digest, NSEC3DigestInterface } from "../../../../../contracts/@ens/dnssec/interfaces/NSEC3Digest"; -export declare class NSEC3Digest__factory { - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "bytes"; - readonly name: "salt"; - readonly type: "bytes"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }, { - readonly internalType: "uint256"; - readonly name: "iterations"; - readonly type: "uint256"; - }]; - readonly name: "hash"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "pure"; - readonly type: "function"; - }]; - static createInterface(): NSEC3DigestInterface; - static connect(address: string, runner?: ContractRunner | null): NSEC3Digest; -} -//# sourceMappingURL=NSEC3Digest__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/interfaces/NSEC3Digest__factory.d.ts.map b/dist/types/factories/contracts/@ens/dnssec/interfaces/NSEC3Digest__factory.d.ts.map deleted file mode 100644 index aa904321..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/interfaces/NSEC3Digest__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"NSEC3Digest__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@ens/dnssec/interfaces/NSEC3Digest__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,WAAW,EACX,oBAAoB,EACrB,MAAM,6DAA6D,CAAC;AAkCrE,qBAAa,oBAAoB;IAC/B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,oBAAoB;IAG9C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,WAAW;CAG7E"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/interfaces/NSEC3Digest__factory.js b/dist/types/factories/contracts/@ens/dnssec/interfaces/NSEC3Digest__factory.js deleted file mode 100644 index e2ccc2dc..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/interfaces/NSEC3Digest__factory.js +++ /dev/null @@ -1,45 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.NSEC3Digest__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "bytes", - name: "salt", - type: "bytes", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - { - internalType: "uint256", - name: "iterations", - type: "uint256", - }, - ], - name: "hash", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "pure", - type: "function", - }, -]; -class NSEC3Digest__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.NSEC3Digest__factory = NSEC3Digest__factory; -NSEC3Digest__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@ens/dnssec/interfaces/PublicSuffixList__factory.d.ts b/dist/types/factories/contracts/@ens/dnssec/interfaces/PublicSuffixList__factory.d.ts deleted file mode 100644 index ef5502bd..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/interfaces/PublicSuffixList__factory.d.ts +++ /dev/null @@ -1,22 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { PublicSuffixList, PublicSuffixListInterface } from "../../../../../contracts/@ens/dnssec/interfaces/PublicSuffixList"; -export declare class PublicSuffixList__factory { - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "bytes"; - readonly name: "name"; - readonly type: "bytes"; - }]; - readonly name: "isPublicSuffix"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): PublicSuffixListInterface; - static connect(address: string, runner?: ContractRunner | null): PublicSuffixList; -} -//# sourceMappingURL=PublicSuffixList__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/interfaces/PublicSuffixList__factory.d.ts.map b/dist/types/factories/contracts/@ens/dnssec/interfaces/PublicSuffixList__factory.d.ts.map deleted file mode 100644 index cb840693..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/interfaces/PublicSuffixList__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"PublicSuffixList__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@ens/dnssec/interfaces/PublicSuffixList__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,gBAAgB,EAChB,yBAAyB,EAC1B,MAAM,kEAAkE,CAAC;AAwB1E,qBAAa,yBAAyB;IACpC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,yBAAyB;IAGnD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,gBAAgB;CAGpB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/interfaces/PublicSuffixList__factory.js b/dist/types/factories/contracts/@ens/dnssec/interfaces/PublicSuffixList__factory.js deleted file mode 100644 index a0c87f75..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/interfaces/PublicSuffixList__factory.js +++ /dev/null @@ -1,35 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.PublicSuffixList__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "bytes", - name: "name", - type: "bytes", - }, - ], - name: "isPublicSuffix", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class PublicSuffixList__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.PublicSuffixList__factory = PublicSuffixList__factory; -PublicSuffixList__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@ens/dnssec/interfaces/index.d.ts b/dist/types/factories/contracts/@ens/dnssec/interfaces/index.d.ts deleted file mode 100644 index 48650bc7..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/interfaces/index.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -export { Algorithm__factory } from "./Algorithm__factory"; -export { Digest__factory } from "./Digest__factory"; -export { IDNSRegistrar__factory } from "./IDNSRegistrar__factory"; -export { NSEC3Digest__factory } from "./NSEC3Digest__factory"; -export { PublicSuffixList__factory } from "./PublicSuffixList__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/interfaces/index.d.ts.map b/dist/types/factories/contracts/@ens/dnssec/interfaces/index.d.ts.map deleted file mode 100644 index fdd65173..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/interfaces/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@ens/dnssec/interfaces/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/interfaces/index.js b/dist/types/factories/contracts/@ens/dnssec/interfaces/index.js deleted file mode 100644 index 4a759792..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/interfaces/index.js +++ /dev/null @@ -1,13 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.PublicSuffixList__factory = exports.NSEC3Digest__factory = exports.IDNSRegistrar__factory = exports.Digest__factory = exports.Algorithm__factory = void 0; -var Algorithm__factory_1 = require("./Algorithm__factory"); -Object.defineProperty(exports, "Algorithm__factory", { enumerable: true, get: function () { return Algorithm__factory_1.Algorithm__factory; } }); -var Digest__factory_1 = require("./Digest__factory"); -Object.defineProperty(exports, "Digest__factory", { enumerable: true, get: function () { return Digest__factory_1.Digest__factory; } }); -var IDNSRegistrar__factory_1 = require("./IDNSRegistrar__factory"); -Object.defineProperty(exports, "IDNSRegistrar__factory", { enumerable: true, get: function () { return IDNSRegistrar__factory_1.IDNSRegistrar__factory; } }); -var NSEC3Digest__factory_1 = require("./NSEC3Digest__factory"); -Object.defineProperty(exports, "NSEC3Digest__factory", { enumerable: true, get: function () { return NSEC3Digest__factory_1.NSEC3Digest__factory; } }); -var PublicSuffixList__factory_1 = require("./PublicSuffixList__factory"); -Object.defineProperty(exports, "PublicSuffixList__factory", { enumerable: true, get: function () { return PublicSuffixList__factory_1.PublicSuffixList__factory; } }); diff --git a/dist/types/factories/contracts/@ens/dnssec/libraries/SHA1__factory.d.ts b/dist/types/factories/contracts/@ens/dnssec/libraries/SHA1__factory.d.ts deleted file mode 100644 index 966dfac0..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/libraries/SHA1__factory.d.ts +++ /dev/null @@ -1,33 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../../../common"; -import type { SHA1, SHA1Interface } from "../../../../../contracts/@ens/dnssec/libraries/SHA1"; -declare type SHA1ConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class SHA1__factory extends ContractFactory { - constructor(...args: SHA1ConstructorParams); - getDeployTransaction(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): SHA1__factory; - static readonly bytecode = "0x602d6037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea164736f6c6343000811000a"; - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "bytes32"; - readonly name: "x"; - readonly type: "bytes32"; - }]; - readonly name: "Debug"; - readonly type: "event"; - }]; - static createInterface(): SHA1Interface; - static connect(address: string, runner?: ContractRunner | null): SHA1; -} -export {}; -//# sourceMappingURL=SHA1__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/libraries/SHA1__factory.d.ts.map b/dist/types/factories/contracts/@ens/dnssec/libraries/SHA1__factory.d.ts.map deleted file mode 100644 index eff6ff37..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/libraries/SHA1__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"SHA1__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@ens/dnssec/libraries/SHA1__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,IAAI,EACJ,aAAa,EACd,MAAM,qDAAqD,CAAC;AAqB7D,aAAK,qBAAqB,GACtB,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,aAAc,SAAQ,eAAe;gBACpC,GAAG,IAAI,EAAE,qBAAqB;IAQjC,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,aAAa;IAI9D,MAAM,CAAC,QAAQ,CAAC,QAAQ,gNAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,aAAa;IAGvC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,IAAI;CAGtE"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/libraries/SHA1__factory.js b/dist/types/factories/contracts/@ens/dnssec/libraries/SHA1__factory.js deleted file mode 100644 index 0dc2360e..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/libraries/SHA1__factory.js +++ /dev/null @@ -1,49 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.SHA1__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "bytes32", - name: "x", - type: "bytes32", - }, - ], - name: "Debug", - type: "event", - }, -]; -const _bytecode = "0x602d6037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea164736f6c6343000811000a"; -const isSuperArgs = (xs) => xs.length > 1; -class SHA1__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(overrides) { - return super.getDeployTransaction(overrides || {}); - } - deploy(overrides) { - return super.deploy(overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.SHA1__factory = SHA1__factory; -SHA1__factory.bytecode = _bytecode; -SHA1__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@ens/dnssec/libraries/index.d.ts b/dist/types/factories/contracts/@ens/dnssec/libraries/index.d.ts deleted file mode 100644 index 715ce756..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/libraries/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export { SHA1__factory } from "./SHA1__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/libraries/index.d.ts.map b/dist/types/factories/contracts/@ens/dnssec/libraries/index.d.ts.map deleted file mode 100644 index d13f8ba4..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/libraries/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@ens/dnssec/libraries/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/dnssec/libraries/index.js b/dist/types/factories/contracts/@ens/dnssec/libraries/index.js deleted file mode 100644 index fc3ed895..00000000 --- a/dist/types/factories/contracts/@ens/dnssec/libraries/index.js +++ /dev/null @@ -1,5 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.SHA1__factory = void 0; -var SHA1__factory_1 = require("./SHA1__factory"); -Object.defineProperty(exports, "SHA1__factory", { enumerable: true, get: function () { return SHA1__factory_1.SHA1__factory; } }); diff --git a/dist/types/factories/contracts/@ens/index.d.ts b/dist/types/factories/contracts/@ens/index.d.ts deleted file mode 100644 index 293d2c07..00000000 --- a/dist/types/factories/contracts/@ens/index.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export * as legacyEnsRegistrySol from "./LegacyENSRegistry.sol"; -export * as legacyEthRegistrarControllerSol from "./LegacyETHRegistrarController.sol"; -export * as dnssec from "./dnssec"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/index.d.ts.map b/dist/types/factories/contracts/@ens/index.d.ts.map deleted file mode 100644 index 015d355c..00000000 --- a/dist/types/factories/contracts/@ens/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/@ens/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,oBAAoB,MAAM,yBAAyB,CAAC;AAChE,OAAO,KAAK,+BAA+B,MAAM,oCAAoC,CAAC;AACtF,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@ens/index.js b/dist/types/factories/contracts/@ens/index.js deleted file mode 100644 index ba322e60..00000000 --- a/dist/types/factories/contracts/@ens/index.js +++ /dev/null @@ -1,29 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.dnssec = exports.legacyEthRegistrarControllerSol = exports.legacyEnsRegistrySol = void 0; -exports.legacyEnsRegistrySol = __importStar(require("./LegacyENSRegistry.sol")); -exports.legacyEthRegistrarControllerSol = __importStar(require("./LegacyETHRegistrarController.sol")); -exports.dnssec = __importStar(require("./dnssec")); diff --git a/dist/types/factories/contracts/@maticnetwork/IChildToken__factory.d.ts b/dist/types/factories/contracts/@maticnetwork/IChildToken__factory.d.ts deleted file mode 100644 index 1ed25f12..00000000 --- a/dist/types/factories/contracts/@maticnetwork/IChildToken__factory.d.ts +++ /dev/null @@ -1,22 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IChildToken, IChildTokenInterface } from "../../../contracts/@maticnetwork/IChildToken"; -export declare class IChildToken__factory { - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "user"; - readonly type: "address"; - }, { - readonly internalType: "bytes"; - readonly name: "depositData"; - readonly type: "bytes"; - }]; - readonly name: "deposit"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): IChildTokenInterface; - static connect(address: string, runner?: ContractRunner | null): IChildToken; -} -//# sourceMappingURL=IChildToken__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/IChildToken__factory.d.ts.map b/dist/types/factories/contracts/@maticnetwork/IChildToken__factory.d.ts.map deleted file mode 100644 index 507ad49d..00000000 --- a/dist/types/factories/contracts/@maticnetwork/IChildToken__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IChildToken__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/@maticnetwork/IChildToken__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,WAAW,EACX,oBAAoB,EACrB,MAAM,8CAA8C,CAAC;AAuBtD,qBAAa,oBAAoB;IAC/B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,oBAAoB;IAG9C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,WAAW;CAG7E"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/IChildToken__factory.js b/dist/types/factories/contracts/@maticnetwork/IChildToken__factory.js deleted file mode 100644 index 1c9d7918..00000000 --- a/dist/types/factories/contracts/@maticnetwork/IChildToken__factory.js +++ /dev/null @@ -1,34 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IChildToken__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "address", - name: "user", - type: "address", - }, - { - internalType: "bytes", - name: "depositData", - type: "bytes", - }, - ], - name: "deposit", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -class IChildToken__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IChildToken__factory = IChildToken__factory; -IChildToken__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@maticnetwork/IMintableERC721__factory.d.ts b/dist/types/factories/contracts/@maticnetwork/IMintableERC721__factory.d.ts deleted file mode 100644 index a280c1bc..00000000 --- a/dist/types/factories/contracts/@maticnetwork/IMintableERC721__factory.d.ts +++ /dev/null @@ -1,274 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IMintableERC721, IMintableERC721Interface } from "../../../contracts/@maticnetwork/IMintableERC721"; -export declare class IMintableERC721__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "approved"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Approval"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "ApprovalForAll"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Transfer"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "approve"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "balanceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "balance"; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "exists"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getApproved"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly name: "isApprovedForAll"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "user"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "mint"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "user"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "metaData"; - readonly type: "bytes"; - }]; - readonly name: "mint"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "ownerOf"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly internalType: "bool"; - readonly name: "_approved"; - readonly type: "bool"; - }]; - readonly name: "setApprovalForAll"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "transferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): IMintableERC721Interface; - static connect(address: string, runner?: ContractRunner | null): IMintableERC721; -} -//# sourceMappingURL=IMintableERC721__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/IMintableERC721__factory.d.ts.map b/dist/types/factories/contracts/@maticnetwork/IMintableERC721__factory.d.ts.map deleted file mode 100644 index d124e99c..00000000 --- a/dist/types/factories/contracts/@maticnetwork/IMintableERC721__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IMintableERC721__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/@maticnetwork/IMintableERC721__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,eAAe,EACf,wBAAwB,EACzB,MAAM,kDAAkD,CAAC;AA8V1D,qBAAa,wBAAwB;IACnC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,wBAAwB;IAGlD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,eAAe;CAGnB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/IMintableERC721__factory.js b/dist/types/factories/contracts/@maticnetwork/IMintableERC721__factory.js deleted file mode 100644 index 6fbddce4..00000000 --- a/dist/types/factories/contracts/@maticnetwork/IMintableERC721__factory.js +++ /dev/null @@ -1,361 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IMintableERC721__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "approved", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Approval", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: false, - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "ApprovalForAll", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Transfer", - type: "event", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "approve", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "balance", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "exists", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getApproved", - outputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - name: "isApprovedForAll", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "user", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "mint", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "user", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "metaData", - type: "bytes", - }, - ], - name: "mint", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "ownerOf", - outputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "safeTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "safeTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "bool", - name: "_approved", - type: "bool", - }, - ], - name: "setApprovalForAll", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "transferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -class IMintableERC721__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IMintableERC721__factory = IMintableERC721__factory; -IMintableERC721__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@maticnetwork/IRootChainManager__factory.d.ts b/dist/types/factories/contracts/@maticnetwork/IRootChainManager__factory.d.ts deleted file mode 100644 index 041be413..00000000 --- a/dist/types/factories/contracts/@maticnetwork/IRootChainManager__factory.d.ts +++ /dev/null @@ -1,145 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IRootChainManager, IRootChainManagerInterface } from "../../../contracts/@maticnetwork/IRootChainManager"; -export declare class IRootChainManager__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "tokenType"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "predicateAddress"; - readonly type: "address"; - }]; - readonly name: "PredicateRegistered"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "rootToken"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "childToken"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "tokenType"; - readonly type: "bytes32"; - }]; - readonly name: "TokenMapped"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "rootToken"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "childToken"; - readonly type: "address"; - }]; - readonly name: "cleanMapToken"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "user"; - readonly type: "address"; - }]; - readonly name: "depositEtherFor"; - readonly outputs: readonly []; - readonly stateMutability: "payable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "user"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "rootToken"; - readonly type: "address"; - }, { - readonly internalType: "bytes"; - readonly name: "depositData"; - readonly type: "bytes"; - }]; - readonly name: "depositFor"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes"; - readonly name: "inputData"; - readonly type: "bytes"; - }]; - readonly name: "exit"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "rootToken"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "childToken"; - readonly type: "address"; - }, { - readonly internalType: "bytes32"; - readonly name: "tokenType"; - readonly type: "bytes32"; - }]; - readonly name: "mapToken"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "tokenType"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "predicateAddress"; - readonly type: "address"; - }]; - readonly name: "registerPredicate"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "rootToken"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "childToken"; - readonly type: "address"; - }, { - readonly internalType: "bytes32"; - readonly name: "tokenType"; - readonly type: "bytes32"; - }]; - readonly name: "remapToken"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): IRootChainManagerInterface; - static connect(address: string, runner?: ContractRunner | null): IRootChainManager; -} -//# sourceMappingURL=IRootChainManager__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/IRootChainManager__factory.d.ts.map b/dist/types/factories/contracts/@maticnetwork/IRootChainManager__factory.d.ts.map deleted file mode 100644 index 30e50fd1..00000000 --- a/dist/types/factories/contracts/@maticnetwork/IRootChainManager__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IRootChainManager__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/@maticnetwork/IRootChainManager__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,iBAAiB,EACjB,0BAA0B,EAC3B,MAAM,oDAAoD,CAAC;AAoL5D,qBAAa,0BAA0B;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,0BAA0B;IAGpD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,iBAAiB;CAGrB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/IRootChainManager__factory.js b/dist/types/factories/contracts/@maticnetwork/IRootChainManager__factory.js deleted file mode 100644 index f5d067a6..00000000 --- a/dist/types/factories/contracts/@maticnetwork/IRootChainManager__factory.js +++ /dev/null @@ -1,191 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IRootChainManager__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "tokenType", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "predicateAddress", - type: "address", - }, - ], - name: "PredicateRegistered", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "rootToken", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "childToken", - type: "address", - }, - { - indexed: true, - internalType: "bytes32", - name: "tokenType", - type: "bytes32", - }, - ], - name: "TokenMapped", - type: "event", - }, - { - inputs: [ - { - internalType: "address", - name: "rootToken", - type: "address", - }, - { - internalType: "address", - name: "childToken", - type: "address", - }, - ], - name: "cleanMapToken", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "user", - type: "address", - }, - ], - name: "depositEtherFor", - outputs: [], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "user", - type: "address", - }, - { - internalType: "address", - name: "rootToken", - type: "address", - }, - { - internalType: "bytes", - name: "depositData", - type: "bytes", - }, - ], - name: "depositFor", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes", - name: "inputData", - type: "bytes", - }, - ], - name: "exit", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "rootToken", - type: "address", - }, - { - internalType: "address", - name: "childToken", - type: "address", - }, - { - internalType: "bytes32", - name: "tokenType", - type: "bytes32", - }, - ], - name: "mapToken", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "tokenType", - type: "bytes32", - }, - { - internalType: "address", - name: "predicateAddress", - type: "address", - }, - ], - name: "registerPredicate", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "rootToken", - type: "address", - }, - { - internalType: "address", - name: "childToken", - type: "address", - }, - { - internalType: "bytes32", - name: "tokenType", - type: "bytes32", - }, - ], - name: "remapToken", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -class IRootChainManager__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IRootChainManager__factory = IRootChainManager__factory; -IRootChainManager__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@maticnetwork/RootChainManagerStorage__factory.d.ts b/dist/types/factories/contracts/@maticnetwork/RootChainManagerStorage__factory.d.ts deleted file mode 100644 index e8b7c3d5..00000000 --- a/dist/types/factories/contracts/@maticnetwork/RootChainManagerStorage__factory.d.ts +++ /dev/null @@ -1,36 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { RootChainManagerStorage, RootChainManagerStorageInterface } from "../../../contracts/@maticnetwork/RootChainManagerStorage"; -export declare class RootChainManagerStorage__factory { - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly name: "tokenToType"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly name: "typeToPredicate"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): RootChainManagerStorageInterface; - static connect(address: string, runner?: ContractRunner | null): RootChainManagerStorage; -} -//# sourceMappingURL=RootChainManagerStorage__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/RootChainManagerStorage__factory.d.ts.map b/dist/types/factories/contracts/@maticnetwork/RootChainManagerStorage__factory.d.ts.map deleted file mode 100644 index 9fcc2708..00000000 --- a/dist/types/factories/contracts/@maticnetwork/RootChainManagerStorage__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"RootChainManagerStorage__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/@maticnetwork/RootChainManagerStorage__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,uBAAuB,EACvB,gCAAgC,EACjC,MAAM,0DAA0D,CAAC;AA2ClE,qBAAa,gCAAgC;IAC3C,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,gCAAgC;IAG1D,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,uBAAuB;CAO3B"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/RootChainManagerStorage__factory.js b/dist/types/factories/contracts/@maticnetwork/RootChainManagerStorage__factory.js deleted file mode 100644 index d9ba12f4..00000000 --- a/dist/types/factories/contracts/@maticnetwork/RootChainManagerStorage__factory.js +++ /dev/null @@ -1,54 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.RootChainManagerStorage__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - name: "tokenToType", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - name: "typeToPredicate", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class RootChainManagerStorage__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.RootChainManagerStorage__factory = RootChainManagerStorage__factory; -RootChainManagerStorage__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@maticnetwork/index.d.ts b/dist/types/factories/contracts/@maticnetwork/index.d.ts deleted file mode 100644 index ea491da6..00000000 --- a/dist/types/factories/contracts/@maticnetwork/index.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -export * as posPortal from "./pos-portal"; -export { IChildToken__factory } from "./IChildToken__factory"; -export { IMintableERC721__factory } from "./IMintableERC721__factory"; -export { IRootChainManager__factory } from "./IRootChainManager__factory"; -export { RootChainManagerStorage__factory } from "./RootChainManagerStorage__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/index.d.ts.map b/dist/types/factories/contracts/@maticnetwork/index.d.ts.map deleted file mode 100644 index a04c66df..00000000 --- a/dist/types/factories/contracts/@maticnetwork/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/@maticnetwork/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,SAAS,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,gCAAgC,EAAE,MAAM,oCAAoC,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/index.js b/dist/types/factories/contracts/@maticnetwork/index.js deleted file mode 100644 index 4371f63b..00000000 --- a/dist/types/factories/contracts/@maticnetwork/index.js +++ /dev/null @@ -1,35 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.RootChainManagerStorage__factory = exports.IRootChainManager__factory = exports.IMintableERC721__factory = exports.IChildToken__factory = exports.posPortal = void 0; -exports.posPortal = __importStar(require("./pos-portal")); -var IChildToken__factory_1 = require("./IChildToken__factory"); -Object.defineProperty(exports, "IChildToken__factory", { enumerable: true, get: function () { return IChildToken__factory_1.IChildToken__factory; } }); -var IMintableERC721__factory_1 = require("./IMintableERC721__factory"); -Object.defineProperty(exports, "IMintableERC721__factory", { enumerable: true, get: function () { return IMintableERC721__factory_1.IMintableERC721__factory; } }); -var IRootChainManager__factory_1 = require("./IRootChainManager__factory"); -Object.defineProperty(exports, "IRootChainManager__factory", { enumerable: true, get: function () { return IRootChainManager__factory_1.IRootChainManager__factory; } }); -var RootChainManagerStorage__factory_1 = require("./RootChainManagerStorage__factory"); -Object.defineProperty(exports, "RootChainManagerStorage__factory", { enumerable: true, get: function () { return RootChainManagerStorage__factory_1.RootChainManagerStorage__factory; } }); diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender__factory.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender__factory.d.ts deleted file mode 100644 index c32ee294..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender__factory.d.ts +++ /dev/null @@ -1,57 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../../../common"; -import type { DummyStateSender, DummyStateSenderInterface } from "../../../../../contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender"; -declare type DummyStateSenderConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class DummyStateSender__factory extends ContractFactory { - constructor(...args: DummyStateSenderConstructorParams); - getDeployTransaction(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): DummyStateSender__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b50610130806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c806316f1983114610030575b600080fd5b6100b06004803603604081101561004657600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561007157600080fd5b82018360208201111561008357600080fd5b803590602001918460018302840111640100000000831117156100a557600080fd5b5090925090506100b2565b005b826001600160a01b031660017f103fed9db65eac19c4d870f49ab7520fe03b99f1838e5996caf47e9e43308392848460405180806020018281038252848482818152602001925080828437600083820152604051601f909101601f19169092018290039550909350505050a350505056fea164736f6c6343000606000a"; - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "contractAddress"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "StateSynced"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "receiver"; - readonly type: "address"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "syncState"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): DummyStateSenderInterface; - static connect(address: string, runner?: ContractRunner | null): DummyStateSender; -} -export {}; -//# sourceMappingURL=DummyStateSender__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender__factory.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender__factory.d.ts.map deleted file mode 100644 index c32879cd..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"DummyStateSender__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,gBAAgB,EAChB,yBAAyB,EAC1B,MAAM,yFAAyF,CAAC;AAmDjG,aAAK,iCAAiC,GAClC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,yBAA0B,SAAQ,eAAe;gBAChD,GAAG,IAAI,EAAE,iCAAiC;IAQ7C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,yBAAyB;IAI1E,MAAM,CAAC,QAAQ,CAAC,QAAQ,wqBAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,yBAAyB;IAGnD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,gBAAgB;CAGpB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender__factory.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender__factory.js deleted file mode 100644 index 4ad9145f..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender__factory.js +++ /dev/null @@ -1,79 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.DummyStateSender__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - indexed: true, - internalType: "address", - name: "contractAddress", - type: "address", - }, - { - indexed: false, - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "StateSynced", - type: "event", - }, - { - inputs: [ - { - internalType: "address", - name: "receiver", - type: "address", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "syncState", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -const _bytecode = "0x608060405234801561001057600080fd5b50610130806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c806316f1983114610030575b600080fd5b6100b06004803603604081101561004657600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561007157600080fd5b82018360208201111561008357600080fd5b803590602001918460018302840111640100000000831117156100a557600080fd5b5090925090506100b2565b005b826001600160a01b031660017f103fed9db65eac19c4d870f49ab7520fe03b99f1838e5996caf47e9e43308392848460405180806020018281038252848482818152602001925080828437600083820152604051601f909101601f19169092018290039550909350505050a350505056fea164736f6c6343000606000a"; -const isSuperArgs = (xs) => xs.length > 1; -class DummyStateSender__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(overrides) { - return super.getDeployTransaction(overrides || {}); - } - deploy(overrides) { - return super.deploy(overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.DummyStateSender__factory = DummyStateSender__factory; -DummyStateSender__factory.bytecode = _bytecode; -DummyStateSender__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender__factory.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender__factory.d.ts deleted file mode 100644 index 8745b69d..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender__factory.d.ts +++ /dev/null @@ -1,22 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IStateSender, IStateSenderInterface } from "../../../../../contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender"; -export declare class IStateSender__factory { - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "receiver"; - readonly type: "address"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "syncState"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): IStateSenderInterface; - static connect(address: string, runner?: ContractRunner | null): IStateSender; -} -//# sourceMappingURL=IStateSender__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender__factory.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender__factory.d.ts.map deleted file mode 100644 index 266b591c..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IStateSender__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,YAAY,EACZ,qBAAqB,EACtB,MAAM,qFAAqF,CAAC;AAuB7F,qBAAa,qBAAqB;IAChC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,qBAAqB;IAG/C,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,YAAY;CAGhB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender__factory.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender__factory.js deleted file mode 100644 index a101a569..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender__factory.js +++ /dev/null @@ -1,34 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IStateSender__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "address", - name: "receiver", - type: "address", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "syncState", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -class IStateSender__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IStateSender__factory = IStateSender__factory; -IStateSender__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/index.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/index.d.ts deleted file mode 100644 index fee81cfd..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export { DummyStateSender__factory } from "./DummyStateSender__factory"; -export { IStateSender__factory } from "./IStateSender__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/index.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/index.d.ts.map deleted file mode 100644 index 22c63e8f..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/index.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/index.js deleted file mode 100644 index 6f1c4acc..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/index.js +++ /dev/null @@ -1,7 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IStateSender__factory = exports.DummyStateSender__factory = void 0; -var DummyStateSender__factory_1 = require("./DummyStateSender__factory"); -Object.defineProperty(exports, "DummyStateSender__factory", { enumerable: true, get: function () { return DummyStateSender__factory_1.DummyStateSender__factory; } }); -var IStateSender__factory_1 = require("./IStateSender__factory"); -Object.defineProperty(exports, "IStateSender__factory", { enumerable: true, get: function () { return IStateSender__factory_1.IStateSender__factory; } }); diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin__factory.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin__factory.d.ts deleted file mode 100644 index 8e358217..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin__factory.d.ts +++ /dev/null @@ -1,199 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../../../common"; -import type { AccessControlMixin, AccessControlMixinInterface } from "../../../../../contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin"; -declare type AccessControlMixinConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class AccessControlMixin__factory extends ContractFactory { - constructor(...args: AccessControlMixinConstructorParams); - getDeployTransaction(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): AccessControlMixin__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b50610707806100206000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c806391d148541161005b57806391d1485414610155578063a217fddf14610195578063ca15c8731461019d578063d547741f146101ba57610088565b8063248a9ca31461008d5780632f2ff15d146100bc57806336568abe146100ea5780639010d07c14610116575b600080fd5b6100aa600480360360208110156100a357600080fd5b50356101e6565b60408051918252519081900360200190f35b6100e8600480360360408110156100d257600080fd5b50803590602001356001600160a01b03166101fb565b005b6100e86004803603604081101561010057600080fd5b50803590602001356001600160a01b0316610267565b6101396004803603604081101561012c57600080fd5b50803590602001356102c8565b604080516001600160a01b039092168252519081900360200190f35b6101816004803603604081101561016b57600080fd5b50803590602001356001600160a01b03166102ef565b604080519115158252519081900360200190f35b6100aa61030d565b6100aa600480360360208110156101b357600080fd5b5035610312565b6100e8600480360360408110156101d057600080fd5b50803590602001356001600160a01b0316610329565b60009081526020819052604090206002015490565b60008281526020819052604090206002015461021e90610219610382565b6102ef565b6102595760405162461bcd60e51b815260040180806020018281038252602f81526020018061066d602f913960400191505060405180910390fd5b6102638282610386565b5050565b61026f610382565b6001600160a01b0316816001600160a01b0316146102be5760405162461bcd60e51b815260040180806020018281038252602f8152602001806106cc602f913960400191505060405180910390fd5b61026382826103f5565b60008281526020819052604081206102e6908363ffffffff61046416565b90505b92915050565b60008281526020819052604081206102e6908363ffffffff61047016565b600081565b60008181526020819052604081206102e990610485565b60008281526020819052604090206002015461034790610219610382565b6102be5760405162461bcd60e51b815260040180806020018281038252603081526020018061069c6030913960400191505060405180910390fd5b3390565b60008281526020819052604090206103a4908263ffffffff61049016565b15610263576103b1610382565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6000828152602081905260409020610413908263ffffffff6104a516565b1561026357610420610382565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b60006102e683836104ba565b60006102e6836001600160a01b03841661051e565b60006102e982610536565b60006102e6836001600160a01b03841661053a565b60006102e6836001600160a01b038416610584565b815460009082106104fc5760405162461bcd60e51b815260040180806020018281038252602281526020018061064b6022913960400191505060405180910390fd5b82600001828154811061050b57fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000610546838361051e565b61057c575081546001818101845560008481526020808220909301849055845484825282860190935260409020919091556102e9565b5060006102e9565b6000818152600183016020526040812054801561064057835460001980830191908101906000908790839081106105b757fe5b90600052602060002001549050808760000184815481106105d457fe5b60009182526020808320909101929092558281526001898101909252604090209084019055865487908061060457fe5b600190038181906000526020600020016000905590558660010160008781526020019081526020016000206000905560019450505050506102e9565b60009150506102e956fe456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e74416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b65416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66a164736f6c6343000606000a"; - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "previousAdminRole"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "newAdminRole"; - readonly type: "bytes32"; - }]; - readonly name: "RoleAdminChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "sender"; - readonly type: "address"; - }]; - readonly name: "RoleGranted"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "sender"; - readonly type: "address"; - }]; - readonly name: "RoleRevoked"; - readonly type: "event"; - }, { - readonly inputs: readonly []; - readonly name: "DEFAULT_ADMIN_ROLE"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }]; - readonly name: "getRoleAdmin"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "index"; - readonly type: "uint256"; - }]; - readonly name: "getRoleMember"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }]; - readonly name: "getRoleMemberCount"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "grantRole"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "hasRole"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "renounceRole"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "revokeRole"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): AccessControlMixinInterface; - static connect(address: string, runner?: ContractRunner | null): AccessControlMixin; -} -export {}; -//# sourceMappingURL=AccessControlMixin__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin__factory.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin__factory.d.ts.map deleted file mode 100644 index fea181df..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"AccessControlMixin__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,kBAAkB,EAClB,2BAA2B,EAC5B,MAAM,kGAAkG,CAAC;AA4O1G,aAAK,mCAAmC,GACpC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,2BAA4B,SAAQ,eAAe;gBAClD,GAAG,IAAI,EAAE,mCAAmC;IAQ/C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,2BAA2B;IAI5E,MAAM,CAAC,QAAQ,CAAC,QAAQ,slHAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,2BAA2B;IAGrD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,kBAAkB;CAGtB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin__factory.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin__factory.js deleted file mode 100644 index a9dfe89f..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin__factory.js +++ /dev/null @@ -1,264 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.AccessControlMixin__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - indexed: true, - internalType: "bytes32", - name: "previousAdminRole", - type: "bytes32", - }, - { - indexed: true, - internalType: "bytes32", - name: "newAdminRole", - type: "bytes32", - }, - ], - name: "RoleAdminChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "sender", - type: "address", - }, - ], - name: "RoleGranted", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "sender", - type: "address", - }, - ], - name: "RoleRevoked", - type: "event", - }, - { - inputs: [], - name: "DEFAULT_ADMIN_ROLE", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - ], - name: "getRoleAdmin", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - 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: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "grantRole", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "hasRole", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "renounceRole", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "revokeRole", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -const _bytecode = "0x608060405234801561001057600080fd5b50610707806100206000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c806391d148541161005b57806391d1485414610155578063a217fddf14610195578063ca15c8731461019d578063d547741f146101ba57610088565b8063248a9ca31461008d5780632f2ff15d146100bc57806336568abe146100ea5780639010d07c14610116575b600080fd5b6100aa600480360360208110156100a357600080fd5b50356101e6565b60408051918252519081900360200190f35b6100e8600480360360408110156100d257600080fd5b50803590602001356001600160a01b03166101fb565b005b6100e86004803603604081101561010057600080fd5b50803590602001356001600160a01b0316610267565b6101396004803603604081101561012c57600080fd5b50803590602001356102c8565b604080516001600160a01b039092168252519081900360200190f35b6101816004803603604081101561016b57600080fd5b50803590602001356001600160a01b03166102ef565b604080519115158252519081900360200190f35b6100aa61030d565b6100aa600480360360208110156101b357600080fd5b5035610312565b6100e8600480360360408110156101d057600080fd5b50803590602001356001600160a01b0316610329565b60009081526020819052604090206002015490565b60008281526020819052604090206002015461021e90610219610382565b6102ef565b6102595760405162461bcd60e51b815260040180806020018281038252602f81526020018061066d602f913960400191505060405180910390fd5b6102638282610386565b5050565b61026f610382565b6001600160a01b0316816001600160a01b0316146102be5760405162461bcd60e51b815260040180806020018281038252602f8152602001806106cc602f913960400191505060405180910390fd5b61026382826103f5565b60008281526020819052604081206102e6908363ffffffff61046416565b90505b92915050565b60008281526020819052604081206102e6908363ffffffff61047016565b600081565b60008181526020819052604081206102e990610485565b60008281526020819052604090206002015461034790610219610382565b6102be5760405162461bcd60e51b815260040180806020018281038252603081526020018061069c6030913960400191505060405180910390fd5b3390565b60008281526020819052604090206103a4908263ffffffff61049016565b15610263576103b1610382565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6000828152602081905260409020610413908263ffffffff6104a516565b1561026357610420610382565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b60006102e683836104ba565b60006102e6836001600160a01b03841661051e565b60006102e982610536565b60006102e6836001600160a01b03841661053a565b60006102e6836001600160a01b038416610584565b815460009082106104fc5760405162461bcd60e51b815260040180806020018281038252602281526020018061064b6022913960400191505060405180910390fd5b82600001828154811061050b57fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000610546838361051e565b61057c575081546001818101845560008481526020808220909301849055845484825282860190935260409020919091556102e9565b5060006102e9565b6000818152600183016020526040812054801561064057835460001980830191908101906000908790839081106105b757fe5b90600052602060002001549050808760000184815481106105d457fe5b60009182526020808320909101929092558281526001898101909252604090209084019055865487908061060457fe5b600190038181906000526020600020016000905590558660010160008781526020019081526020016000206000905560019450505050506102e9565b60009150506102e956fe456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e74416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b65416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66a164736f6c6343000606000a"; -const isSuperArgs = (xs) => xs.length > 1; -class AccessControlMixin__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(overrides) { - return super.getDeployTransaction(overrides || {}); - } - deploy(overrides) { - return super.deploy(overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.AccessControlMixin__factory = AccessControlMixin__factory; -AccessControlMixin__factory.bytecode = _bytecode; -AccessControlMixin__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl__factory.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl__factory.d.ts deleted file mode 100644 index 9508e696..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl__factory.d.ts +++ /dev/null @@ -1,184 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { AccessControl, AccessControlInterface } from "../../../../../contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl"; -export declare class AccessControl__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "previousAdminRole"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "newAdminRole"; - readonly type: "bytes32"; - }]; - readonly name: "RoleAdminChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "sender"; - readonly type: "address"; - }]; - readonly name: "RoleGranted"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "sender"; - readonly type: "address"; - }]; - readonly name: "RoleRevoked"; - readonly type: "event"; - }, { - readonly inputs: readonly []; - readonly name: "DEFAULT_ADMIN_ROLE"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }]; - readonly name: "getRoleAdmin"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "index"; - readonly type: "uint256"; - }]; - readonly name: "getRoleMember"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }]; - readonly name: "getRoleMemberCount"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "grantRole"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "hasRole"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "renounceRole"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "revokeRole"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): AccessControlInterface; - static connect(address: string, runner?: ContractRunner | null): AccessControl; -} -//# sourceMappingURL=AccessControl__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl__factory.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl__factory.d.ts.map deleted file mode 100644 index 9f5730df..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"AccessControl__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,aAAa,EACb,sBAAsB,EACvB,MAAM,6FAA6F,CAAC;AAyOrG,qBAAa,sBAAsB;IACjC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,sBAAsB;IAGhD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,aAAa;CAGjB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl__factory.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl__factory.js deleted file mode 100644 index d7c08911..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl__factory.js +++ /dev/null @@ -1,244 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.AccessControl__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - indexed: true, - internalType: "bytes32", - name: "previousAdminRole", - type: "bytes32", - }, - { - indexed: true, - internalType: "bytes32", - name: "newAdminRole", - type: "bytes32", - }, - ], - name: "RoleAdminChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "sender", - type: "address", - }, - ], - name: "RoleGranted", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "sender", - type: "address", - }, - ], - name: "RoleRevoked", - type: "event", - }, - { - inputs: [], - name: "DEFAULT_ADMIN_ROLE", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - ], - name: "getRoleAdmin", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - 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: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "grantRole", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "hasRole", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "renounceRole", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "revokeRole", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -class AccessControl__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.AccessControl__factory = AccessControl__factory; -AccessControl__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC165__factory.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC165__factory.d.ts deleted file mode 100644 index 6184c4dd..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC165__factory.d.ts +++ /dev/null @@ -1,22 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IERC165, IERC165Interface } from "../../../../../contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC165"; -export declare class IERC165__factory { - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): IERC165Interface; - static connect(address: string, runner?: ContractRunner | null): IERC165; -} -//# sourceMappingURL=IERC165__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC165__factory.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC165__factory.d.ts.map deleted file mode 100644 index ce587f1c..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC165__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC165__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC165__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,OAAO,EACP,gBAAgB,EACjB,MAAM,uFAAuF,CAAC;AAwB/F,qBAAa,gBAAgB;IAC3B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,gBAAgB;IAG1C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,OAAO;CAGzE"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC165__factory.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC165__factory.js deleted file mode 100644 index 65af5cfc..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC165__factory.js +++ /dev/null @@ -1,35 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IERC165__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class IERC165__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IERC165__factory = IERC165__factory; -IERC165__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721Receiver__factory.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721Receiver__factory.d.ts deleted file mode 100644 index 3a7d9cbf..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721Receiver__factory.d.ts +++ /dev/null @@ -1,34 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IERC721Receiver, IERC721ReceiverInterface } from "../../../../../contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721Receiver"; -export declare class IERC721Receiver__factory { - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "onERC721Received"; - readonly outputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: ""; - readonly type: "bytes4"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): IERC721ReceiverInterface; - static connect(address: string, runner?: ContractRunner | null): IERC721Receiver; -} -//# sourceMappingURL=IERC721Receiver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721Receiver__factory.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721Receiver__factory.d.ts.map deleted file mode 100644 index ebb33d4a..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721Receiver__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC721Receiver__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721Receiver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,eAAe,EACf,wBAAwB,EACzB,MAAM,+FAA+F,CAAC;AAuCvG,qBAAa,wBAAwB;IACnC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,wBAAwB;IAGlD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,eAAe;CAGnB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721Receiver__factory.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721Receiver__factory.js deleted file mode 100644 index 2bfbed3d..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721Receiver__factory.js +++ /dev/null @@ -1,50 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IERC721Receiver__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "onERC721Received", - outputs: [ - { - internalType: "bytes4", - name: "", - type: "bytes4", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, -]; -class IERC721Receiver__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IERC721Receiver__factory = IERC721Receiver__factory; -IERC721Receiver__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721__factory.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721__factory.d.ts deleted file mode 100644 index ff1b5229..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721__factory.d.ts +++ /dev/null @@ -1,228 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IERC721, IERC721Interface } from "../../../../../contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721"; -export declare class IERC721__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "approved"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Approval"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "ApprovalForAll"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Transfer"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "approve"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "balanceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "balance"; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getApproved"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly name: "isApprovedForAll"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "ownerOf"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly internalType: "bool"; - readonly name: "_approved"; - readonly type: "bool"; - }]; - readonly name: "setApprovalForAll"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "transferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): IERC721Interface; - static connect(address: string, runner?: ContractRunner | null): IERC721; -} -//# sourceMappingURL=IERC721__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721__factory.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721__factory.d.ts.map deleted file mode 100644 index bf86a775..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC721__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,OAAO,EACP,gBAAgB,EACjB,MAAM,uFAAuF,CAAC;AAkS/F,qBAAa,gBAAgB;IAC3B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,gBAAgB;IAG1C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,OAAO;CAGzE"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721__factory.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721__factory.js deleted file mode 100644 index c0ecef77..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721__factory.js +++ /dev/null @@ -1,301 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IERC721__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "approved", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Approval", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: false, - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "ApprovalForAll", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Transfer", - type: "event", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "approve", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "balance", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getApproved", - outputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - name: "isApprovedForAll", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "ownerOf", - outputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "safeTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "safeTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "bool", - name: "_approved", - type: "bool", - }, - ], - name: "setApprovalForAll", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "transferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -class IERC721__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IERC721__factory = IERC721__factory; -IERC721__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IMintableERC721__factory.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IMintableERC721__factory.d.ts deleted file mode 100644 index c55c23a8..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IMintableERC721__factory.d.ts +++ /dev/null @@ -1,274 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IMintableERC721, IMintableERC721Interface } from "../../../../../contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IMintableERC721"; -export declare class IMintableERC721__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "approved"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Approval"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "ApprovalForAll"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Transfer"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "approve"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "balanceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "balance"; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "exists"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getApproved"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly name: "isApprovedForAll"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "user"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "mint"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "user"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "metaData"; - readonly type: "bytes"; - }]; - readonly name: "mint"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "ownerOf"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly internalType: "bool"; - readonly name: "_approved"; - readonly type: "bool"; - }]; - readonly name: "setApprovalForAll"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "transferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): IMintableERC721Interface; - static connect(address: string, runner?: ContractRunner | null): IMintableERC721; -} -//# sourceMappingURL=IMintableERC721__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IMintableERC721__factory.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IMintableERC721__factory.d.ts.map deleted file mode 100644 index 090cf398..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IMintableERC721__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IMintableERC721__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IMintableERC721__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,eAAe,EACf,wBAAwB,EACzB,MAAM,+FAA+F,CAAC;AA8VvG,qBAAa,wBAAwB;IACnC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,wBAAwB;IAGlD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,eAAe;CAGnB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IMintableERC721__factory.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IMintableERC721__factory.js deleted file mode 100644 index 6fbddce4..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IMintableERC721__factory.js +++ /dev/null @@ -1,361 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IMintableERC721__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "approved", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Approval", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: false, - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "ApprovalForAll", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Transfer", - type: "event", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "approve", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "balance", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "exists", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getApproved", - outputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - name: "isApprovedForAll", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "user", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "mint", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "user", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "metaData", - type: "bytes", - }, - ], - name: "mint", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "ownerOf", - outputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "safeTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "safeTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "bool", - name: "_approved", - type: "bool", - }, - ], - name: "setApprovalForAll", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "transferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -class IMintableERC721__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IMintableERC721__factory = IMintableERC721__factory; -IMintableERC721__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate__factory.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate__factory.d.ts deleted file mode 100644 index c091c1ad..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate__factory.d.ts +++ /dev/null @@ -1,48 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { ITokenPredicate, ITokenPredicateInterface } from "../../../../../contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate"; -export declare class ITokenPredicate__factory { - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "sender"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "rootToken"; - readonly type: "address"; - }, { - readonly internalType: "bytes"; - readonly name: "logRLPList"; - readonly type: "bytes"; - }]; - readonly name: "exitTokens"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "depositor"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "depositReceiver"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "rootToken"; - readonly type: "address"; - }, { - readonly internalType: "bytes"; - readonly name: "depositData"; - readonly type: "bytes"; - }]; - readonly name: "lockTokens"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): ITokenPredicateInterface; - static connect(address: string, runner?: ContractRunner | null): ITokenPredicate; -} -//# sourceMappingURL=ITokenPredicate__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate__factory.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate__factory.d.ts.map deleted file mode 100644 index 4b30561c..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ITokenPredicate__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,eAAe,EACf,wBAAwB,EACzB,MAAM,+FAA+F,CAAC;AAwDvG,qBAAa,wBAAwB;IACnC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,wBAAwB;IAGlD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,eAAe;CAGnB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate__factory.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate__factory.js deleted file mode 100644 index 94196918..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate__factory.js +++ /dev/null @@ -1,67 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ITokenPredicate__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "address", - name: "sender", - type: "address", - }, - { - internalType: "address", - name: "rootToken", - type: "address", - }, - { - internalType: "bytes", - name: "logRLPList", - type: "bytes", - }, - ], - name: "exitTokens", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "depositor", - type: "address", - }, - { - internalType: "address", - name: "depositReceiver", - type: "address", - }, - { - internalType: "address", - name: "rootToken", - type: "address", - }, - { - internalType: "bytes", - name: "depositData", - type: "bytes", - }, - ], - name: "lockTokens", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -class ITokenPredicate__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.ITokenPredicate__factory = ITokenPredicate__factory; -ITokenPredicate__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate__factory.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate__factory.d.ts deleted file mode 100644 index 33ccbb49..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate__factory.d.ts +++ /dev/null @@ -1,389 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../../../common"; -import type { MintableERC721Predicate, MintableERC721PredicateInterface } from "../../../../../contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate"; -declare type MintableERC721PredicateConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class MintableERC721Predicate__factory extends ContractFactory { - constructor(...args: MintableERC721PredicateConstructorParams); - getDeployTransaction(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): MintableERC721Predicate__factory; - static readonly bytecode = "0x60806040526002805460ff1916905534801561001a57600080fd5b5061211d8061002a6000396000f3fe608060405234801561001057600080fd5b50600436106101165760003560e01c806391d14854116100a2578063c4d66de811610071578063c4d66de8146103bb578063ca15c873146103e1578063d547741f146103fe578063e375b64e1461042a578063ec87621c146104b957610116565b806391d14854146103635780639559c0bd146103a3578063a217fddf146103ab578063b017a30f146103b357610116565b80634794b430116100e95780634794b4301461024f57806349f5124b14610257578063609c92b81461025f5780638274664f146102675780639010d07c1461032457610116565b8063150b7a021461011b578063248a9ca3146101c65780632f2ff15d146101f557806336568abe14610223575b600080fd5b6101a96004803603608081101561013157600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561016b57600080fd5b82018360208201111561017d57600080fd5b803590602001918460018302840111600160201b8311171561019e57600080fd5b5090925090506104c1565b604080516001600160e01b03199092168252519081900360200190f35b6101e3600480360360208110156101dc57600080fd5b50356104d2565b60408051918252519081900360200190f35b6102216004803603604081101561020b57600080fd5b50803590602001356001600160a01b03166104ea565b005b6102216004803603604081101561023957600080fd5b50803590602001356001600160a01b0316610556565b6101e36105b7565b6101e36105db565b6101e36105ff565b6102216004803603606081101561027d57600080fd5b6001600160a01b038235811692602081013590911691810190606081016040820135600160201b8111156102b057600080fd5b8201836020820111156102c257600080fd5b803590602001918460018302840111600160201b831117156102e357600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610623945050505050565b6103476004803603604081101561033a57600080fd5b5080359060200135610fa2565b604080516001600160a01b039092168252519081900360200190f35b61038f6004803603604081101561037957600080fd5b50803590602001356001600160a01b0316610fc9565b604080519115158252519081900360200190f35b6101e3610fe7565b6101e3610fec565b6101e3610ff1565b610221600480360360208110156103d157600080fd5b50356001600160a01b0316611015565b6101e3600480360360208110156103f757600080fd5b50356110cf565b6102216004803603604081101561041457600080fd5b50803590602001356001600160a01b03166110e6565b6102216004803603608081101561044057600080fd5b6001600160a01b0382358116926020810135821692604082013590921691810190608081016060820135600160201b81111561047b57600080fd5b82018360208201111561048d57600080fd5b803590602001918460018302840111600160201b831117156104ae57600080fd5b50909250905061113f565b6101e36114e6565b630a85bd0160e11b95945050505050565b6000818152602081905260409020600201545b919050565b60008281526020819052604090206002015461050d906105086114f8565b610fc9565b6105485760405162461bcd60e51b815260040180806020018281038252602f815260200180611f42602f913960400191505060405180910390fd5b61055282826114fd565b5050565b61055e6114f8565b6001600160a01b0316816001600160a01b0316146105ad5760405162461bcd60e51b815260040180806020018281038252602f8152602001806120bb602f913960400191505060405180910390fd5b610552828261156c565b7ff871896b17e9cb7a64941c62c188a4f5c621b86800e3d15452ece01ce56073df81565b7ff94915c6d1fd521cee85359239227480c7e8776d7caf1fc3bacad5c269b66a1481565b7fd4392723c111fcb98b073fe55873efb447bcd23cd3e49ec9ea2581930cd01ddc81565b60008051602061204b83398151915261063e816105086114f8565b6001906106de5760405162461bcd60e51b81526020600482019081528254600260001961010060018416150201909116046024830181905290918291604490910190849080156106cf5780601f106106a4576101008083540402835291602001916106cf565b820191906000526020600020905b8154815290600101906020018083116106b257829003601f168201915b50509250505060405180910390fd5b5060606106f26106ed846115db565b611656565b905060606107138260018151811061070657fe5b6020026020010151611656565b90507fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60001b6107568260008151811061074957fe5b60200260200101516117d8565b141561095457600061076e8260018151811061074957fe5b905060006001600160a01b031661078b8360028151811061074957fe5b6001600160a01b0316146107d05760405162461bcd60e51b815260040180806020018281038252602981526020018061206b6029913960400191505060405180910390fd5b600086905060006107e78460038151811061074957fe5b9050816001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b15801561082d57600080fd5b505afa158015610841573d6000803e3d6000fd5b505050506040513d602081101561085757600080fd5b5051156108d35760408051632142170760e11b81523060048201526001600160a01b038581166024830152604482018490529151918416916342842e0e9160648082019260009290919082900301818387803b1580156108b657600080fd5b505af11580156108ca573d6000803e3d6000fd5b5050505061094c565b816001600160a01b03166340c10f1984836040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b15801561093357600080fd5b505af1158015610947573d6000803e3d6000fd5b505050505b505050610f9a565b7ff871896b17e9cb7a64941c62c188a4f5c621b86800e3d15452ece01ce56073df60001b6109888260008151811061074957fe5b1415610c085760006109a08260018151811061074957fe5b905060606109c1846002815181106109b457fe5b6020026020010151611920565b905060608180602001905160208110156109da57600080fd5b8101908080516040519392919084600160201b8211156109f957600080fd5b908301906020820185811115610a0e57600080fd5b82518660208202830111600160201b82111715610a2a57600080fd5b82525081516020918201928201910280838360005b83811015610a57578181015183820152602001610a3f565b5050505091909101604052505082519293508a9150600090505b82811015610bfd576000848281518110610a8757fe5b60200260200101519050826001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610ad557600080fd5b505afa158015610ae9573d6000803e3d6000fd5b505050506040513d6020811015610aff57600080fd5b505115610b7b5760408051632142170760e11b81523060048201526001600160a01b038981166024830152604482018490529151918516916342842e0e9160648082019260009290919082900301818387803b158015610b5e57600080fd5b505af1158015610b72573d6000803e3d6000fd5b50505050610bf4565b826001600160a01b03166340c10f1988836040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b158015610bdb57600080fd5b505af1158015610bef573d6000803e3d6000fd5b505050505b50600101610a71565b505050505050610f9a565b7ff94915c6d1fd521cee85359239227480c7e8776d7caf1fc3bacad5c269b66a1460001b610c3c8260008151811061074957fe5b1415610f63576000610c548260018151811061074957fe5b905060006001600160a01b0316610c718360028151811061074957fe5b6001600160a01b031614610cb65760405162461bcd60e51b815260040180806020018281038252602981526020018061206b6029913960400191505060405180910390fd5b60008690506000610ccd8460038151811061074957fe5b9050816001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610d1357600080fd5b505afa158015610d27573d6000803e3d6000fd5b505050506040513d6020811015610d3d57600080fd5b505115610d9c5760408051632142170760e11b81523060048201526001600160a01b038581166024830152604482018490529151918416916342842e0e9160648082019260009290919082900301818387803b1580156108b657600080fd5b6060610dae866002815181106109b457fe5b90506060818060200190516020811015610dc757600080fd5b8101908080516040519392919084600160201b821115610de657600080fd5b908301906020820185811115610dfb57600080fd5b8251600160201b811182820188101715610e1457600080fd5b82525081516020918201929091019080838360005b83811015610e41578181015183820152602001610e29565b50505050905090810190601f168015610e6e5780820380516001836020036101000a031916815260200191505b506040525050509050836001600160a01b03166394d008ef8685846040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b0316815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610ef3578181015183820152602001610edb565b50505050905090810190601f168015610f205780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015610f4157600080fd5b505af1158015610f55573d6000803e3d6000fd5b505050505050505050610f9a565b60405162461bcd60e51b815260040180806020018281038252602a815260200180611f71602a913960400191505060405180910390fd5b505050505050565b6000828152602081905260408120610fc0908363ffffffff6119ea16565b90505b92915050565b6000828152602081905260408120610fc0908363ffffffff6119f616565b601481565b600081565b7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef81565b60025460ff161561105e576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b61109c6040518060400160405280601781526020017f4d696e7461626c65455243373231507265646963617465000000000000000000815250611a0b565b6110a7600082610548565b6110bf60008051602061204b83398151915282610548565b506002805460ff19166001179055565b6000818152602081905260408120610fc390611aa9565b600082815260208190526040902060020154611104906105086114f8565b6105ad5760405162461bcd60e51b8152600401808060200182810382526030815260200180611fc36030913960400191505060405180910390fd5b60008051602061204b83398151915261115a816105086114f8565b6001906111c05760405162461bcd60e51b81526020600482019081528254600260001961010060018416150201909116046024830181905290918291604490910190849080156106cf5780601f106106a4576101008083540402835291602001916106cf565b50602082141561129f576000838360208110156111dc57600080fd5b5060408051913580835290519092506001600160a01b038088169289821692918b16917fe13244aa06bdc79480ed5fdc6ebe2bb37202fcdf33ecf45dc449f4201f3dc0879181900360200190a460408051632142170760e11b81526001600160a01b038981166004830152306024830152604482018490529151918716916342842e0e9160648082019260009290919082900301818387803b15801561128157600080fd5b505af1158015611295573d6000803e3d6000fd5b5050505050610f9a565b6060838360208110156112b157600080fd5b810190602081018135600160201b8111156112cb57600080fd5b8201836020820111156112dd57600080fd5b803590602001918460208302840111600160201b831117156112fe57600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f8201169050808301925050505050505091929192905050509050846001600160a01b0316866001600160a01b0316886001600160a01b03167fdb55e3a0ae817693fd7b07170d81eab0eb2c239f36fcecbc98b6b58ac5667e7a846040518080602001828103825283818151815260200191508051906020019060200280838360005b838110156113ca5781810151838201526020016113b2565b505050509050019250505060405180910390a48051601481111561141f5760405162461bcd60e51b815260040180806020018281038252602c81526020018061201f602c913960400191505060405180910390fd5b60005b818110156114db57866001600160a01b03166342842e0e8a3086858151811061144757fe5b60200260200101516040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050600060405180830381600087803b1580156114b757600080fd5b505af11580156114cb573d6000803e3d6000fd5b5050600190920191506114229050565b505050505050505050565b60008051602061204b83398151915281565b335b90565b600082815260208190526040902061151b908263ffffffff611ab416565b15610552576115286114f8565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b600082815260208190526040902061158a908263ffffffff611ac916565b15610552576115976114f8565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b6115e3611e6d565b6000825111611639576040805162461bcd60e51b815260206004820152601f60248201527f524c505265616465723a20494e56414c49445f42595445535f4c454e47544800604482015290519081900360640190fd5b506040805180820190915281518152602082810190820152919050565b606061166182611ade565b6116b2576040805162461bcd60e51b815260206004820152601860248201527f524c505265616465723a204954454d5f4e4f545f4c4953540000000000000000604482015290519081900360640190fd5b60006116bd83611b0a565b905060608167ffffffffffffffff811180156116d857600080fd5b5060405190808252806020026020018201604052801561171257816020015b6116ff611e6d565b8152602001906001900390816116f75790505b50905060006117248560200151611b96565b855190915081146117665760405162461bcd60e51b81526004018080602001828103825260278152602001806120946027913960400191505060405180910390fd5b60006117758660200151611c2f565b60208701510190506000805b858110156117cc5761179283611b96565b91506040518060400160405280838152602001848152508582815181106117b557fe5b602090810291909101015291810191600101611781565b50929695505050505050565b60006117e382611ade565b15611835576040805162461bcd60e51b815260206004820181905260248201527f524c505265616465723a204445434f44494e475f4c4953545f41535f55494e54604482015290519081900360640190fd5b81516021101561188c576040805162461bcd60e51b815260206004820152601e60248201527f524c505265616465723a20494e56414c49445f55494e545f4c454e4754480000604482015290519081900360640190fd5b600061189b8360200151611b96565b835190915081146118dd5760405162461bcd60e51b81526004018080602001828103825260278152602001806120ea6027913960400191505060405180910390fd5b60006118ec8460200151611c2f565b8451602080870151830180519394509184900392919083101561191657826020036101000a820491505b5095945050505050565b606060006119318360200151611b96565b835190915081146119735760405162461bcd60e51b8152600401808060200182810382526028815260200180611f9b6028913960400191505060405180910390fd5b60006119828460200151611c2f565b845190915081900360608167ffffffffffffffff811180156119a357600080fd5b506040519080825280601f01601f1916602001820160405280156119ce576020820181803683370190505b5090506000816020019050611916848860200151018285611c92565b6000610fc08383611cdd565b6000610fc0836001600160a01b038416611d41565b806040516020018082805190602001908083835b60208310611a3e5780518252601f199092019160209182019101611a1f565b51815160209384036101000a60001901801990921691161790527f3a20494e53554646494349454e545f5045524d495353494f4e530000000000009190930190815260408051808303600519018152601a909201905280516105529550600194509201919050611e87565b6000610fc382611d59565b6000610fc0836001600160a01b038416611d5d565b6000610fc0836001600160a01b038416611da7565b6020810151805160009190821a9060c0821015611b00576000925050506104e5565b5060019392505050565b600080600090506000611b208460200151611c2f565b602085015185519181019250015b80821015611b8d57611b3f82611b96565b8201915080821115611b825760405162461bcd60e51b815260040180806020018281038252602c815260200180611ff3602c913960400191505060405180910390fd5b600190920191611b2e565b50909392505050565b80516000908190811a6080811015611bb15760019150611c28565b60b8811015611bc657607e1981019150611c28565b60c0811015611bf35760b78103600185019450806020036101000a85510460018201810193505050611c28565b60f8811015611c085760be1981019150611c28565b60f78103600185019450806020036101000a855104600182018101935050505b5092915050565b8051600090811a6080811015611c495760009150506104e5565b60b8811080611c64575060c08110801590611c64575060f881105b15611c735760019150506104e5565b60c0811015611c875760b5190190506104e5565b60f5190190506104e5565b80611c9c57611cd8565b5b60208110611cbc578251825260209283019290910190601f1901611c9d565b8251825160208390036101000a60001901801990921691161782525b505050565b81546000908210611d1f5760405162461bcd60e51b8152600401808060200182810382526022815260200180611f206022913960400191505060405180910390fd5b826000018281548110611d2e57fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000611d698383611d41565b611d9f57508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610fc3565b506000610fc3565b60008181526001830160205260408120548015611e635783546000198083019190810190600090879083908110611dda57fe5b9060005260206000200154905080876000018481548110611df757fe5b600091825260208083209091019290925582815260018981019092526040902090840190558654879080611e2757fe5b60019003818190600052602060002001600090559055866001016000878152602001908152602001600020600090556001945050505050610fc3565b6000915050610fc3565b604051806040016040528060008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611ec857805160ff1916838001178555611ef5565b82800160010185558215611ef5579182015b82811115611ef5578251825591602001919060010190611eda565b50611f01929150611f05565b5090565b6114fa91905b80821115611f015760008155600101611f0b56fe456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e744d696e7461626c654552433732315072656469636174653a20494e56414c49445f5349474e4154555245524c505265616465723a2042595445535f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b65524c505265616465723a204e554d5f4954454d535f4445434f4445445f4c454e4754485f4d49534d415443484d696e7461626c654552433732315072656469636174653a20455843454544535f42415443485f4c494d4954241ecf16d79d0f8dbfb92cbc07fe17840425976cf0667f022fe9877caa831b084d696e7461626c654552433732315072656469636174653a20494e56414c49445f5245434549564552524c505265616465723a204c4953545f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66524c505265616465723a2055494e545f4445434f4445445f4c454e4754485f4d49534d41544348a164736f6c6343000606000a"; - static readonly abi: readonly [{ - readonly inputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "constructor"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "depositor"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "depositReceiver"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "rootToken"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "LockedMintableERC721"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "depositor"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "depositReceiver"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "rootToken"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "uint256[]"; - readonly name: "tokenIds"; - readonly type: "uint256[]"; - }]; - readonly name: "LockedMintableERC721Batch"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "previousAdminRole"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "newAdminRole"; - readonly type: "bytes32"; - }]; - readonly name: "RoleAdminChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "sender"; - readonly type: "address"; - }]; - readonly name: "RoleGranted"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "sender"; - readonly type: "address"; - }]; - readonly name: "RoleRevoked"; - readonly type: "event"; - }, { - readonly inputs: readonly []; - readonly name: "BATCH_LIMIT"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "DEFAULT_ADMIN_ROLE"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "MANAGER_ROLE"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "TOKEN_TYPE"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "TRANSFER_EVENT_SIG"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "TRANSFER_WITH_METADATA_EVENT_SIG"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "WITHDRAW_BATCH_EVENT_SIG"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "rootToken"; - readonly type: "address"; - }, { - readonly internalType: "bytes"; - readonly name: "log"; - readonly type: "bytes"; - }]; - readonly name: "exitTokens"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }]; - readonly name: "getRoleAdmin"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "index"; - readonly type: "uint256"; - }]; - readonly name: "getRoleMember"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }]; - readonly name: "getRoleMemberCount"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "grantRole"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "hasRole"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "_owner"; - readonly type: "address"; - }]; - readonly name: "initialize"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "depositor"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "depositReceiver"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "rootToken"; - readonly type: "address"; - }, { - readonly internalType: "bytes"; - readonly name: "depositData"; - readonly type: "bytes"; - }]; - readonly name: "lockTokens"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly name: "onERC721Received"; - readonly outputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: ""; - readonly type: "bytes4"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "renounceRole"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "revokeRole"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): MintableERC721PredicateInterface; - static connect(address: string, runner?: ContractRunner | null): MintableERC721Predicate; -} -export {}; -//# sourceMappingURL=MintableERC721Predicate__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate__factory.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate__factory.d.ts.map deleted file mode 100644 index 9e957982..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"MintableERC721Predicate__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,uBAAuB,EACvB,gCAAgC,EACjC,MAAM,uGAAuG,CAAC;AA+d/G,aAAK,wCAAwC,GACzC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,gCAAiC,SAAQ,eAAe;gBACvD,GAAG,IAAI,EAAE,wCAAwC;IAQpD,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CACd,MAAM,EAAE,cAAc,GAAG,IAAI,GAC5B,gCAAgC;IAInC,MAAM,CAAC,QAAQ,CAAC,QAAQ,sphBAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,gCAAgC;IAG1D,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,uBAAuB;CAO3B"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate__factory.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate__factory.js deleted file mode 100644 index feb4bdf2..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate__factory.js +++ /dev/null @@ -1,507 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.MintableERC721Predicate__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [], - stateMutability: "nonpayable", - type: "constructor", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "depositor", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "depositReceiver", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "rootToken", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "LockedMintableERC721", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "depositor", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "depositReceiver", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "rootToken", - type: "address", - }, - { - indexed: false, - internalType: "uint256[]", - name: "tokenIds", - type: "uint256[]", - }, - ], - name: "LockedMintableERC721Batch", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - indexed: true, - internalType: "bytes32", - name: "previousAdminRole", - type: "bytes32", - }, - { - indexed: true, - internalType: "bytes32", - name: "newAdminRole", - type: "bytes32", - }, - ], - name: "RoleAdminChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "sender", - type: "address", - }, - ], - name: "RoleGranted", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "sender", - type: "address", - }, - ], - name: "RoleRevoked", - type: "event", - }, - { - inputs: [], - name: "BATCH_LIMIT", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "DEFAULT_ADMIN_ROLE", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "MANAGER_ROLE", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "TOKEN_TYPE", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "TRANSFER_EVENT_SIG", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "TRANSFER_WITH_METADATA_EVENT_SIG", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "WITHDRAW_BATCH_EVENT_SIG", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - { - internalType: "address", - name: "rootToken", - type: "address", - }, - { - internalType: "bytes", - name: "log", - type: "bytes", - }, - ], - name: "exitTokens", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - ], - name: "getRoleAdmin", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - 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: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "grantRole", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "hasRole", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_owner", - type: "address", - }, - ], - name: "initialize", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "depositor", - type: "address", - }, - { - internalType: "address", - name: "depositReceiver", - type: "address", - }, - { - internalType: "address", - name: "rootToken", - type: "address", - }, - { - internalType: "bytes", - name: "depositData", - type: "bytes", - }, - ], - name: "lockTokens", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - { - internalType: "address", - name: "", - type: "address", - }, - { - internalType: "uint256", - name: "", - type: "uint256", - }, - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - name: "onERC721Received", - outputs: [ - { - internalType: "bytes4", - name: "", - type: "bytes4", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "renounceRole", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "revokeRole", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -const _bytecode = "0x60806040526002805460ff1916905534801561001a57600080fd5b5061211d8061002a6000396000f3fe608060405234801561001057600080fd5b50600436106101165760003560e01c806391d14854116100a2578063c4d66de811610071578063c4d66de8146103bb578063ca15c873146103e1578063d547741f146103fe578063e375b64e1461042a578063ec87621c146104b957610116565b806391d14854146103635780639559c0bd146103a3578063a217fddf146103ab578063b017a30f146103b357610116565b80634794b430116100e95780634794b4301461024f57806349f5124b14610257578063609c92b81461025f5780638274664f146102675780639010d07c1461032457610116565b8063150b7a021461011b578063248a9ca3146101c65780632f2ff15d146101f557806336568abe14610223575b600080fd5b6101a96004803603608081101561013157600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561016b57600080fd5b82018360208201111561017d57600080fd5b803590602001918460018302840111600160201b8311171561019e57600080fd5b5090925090506104c1565b604080516001600160e01b03199092168252519081900360200190f35b6101e3600480360360208110156101dc57600080fd5b50356104d2565b60408051918252519081900360200190f35b6102216004803603604081101561020b57600080fd5b50803590602001356001600160a01b03166104ea565b005b6102216004803603604081101561023957600080fd5b50803590602001356001600160a01b0316610556565b6101e36105b7565b6101e36105db565b6101e36105ff565b6102216004803603606081101561027d57600080fd5b6001600160a01b038235811692602081013590911691810190606081016040820135600160201b8111156102b057600080fd5b8201836020820111156102c257600080fd5b803590602001918460018302840111600160201b831117156102e357600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610623945050505050565b6103476004803603604081101561033a57600080fd5b5080359060200135610fa2565b604080516001600160a01b039092168252519081900360200190f35b61038f6004803603604081101561037957600080fd5b50803590602001356001600160a01b0316610fc9565b604080519115158252519081900360200190f35b6101e3610fe7565b6101e3610fec565b6101e3610ff1565b610221600480360360208110156103d157600080fd5b50356001600160a01b0316611015565b6101e3600480360360208110156103f757600080fd5b50356110cf565b6102216004803603604081101561041457600080fd5b50803590602001356001600160a01b03166110e6565b6102216004803603608081101561044057600080fd5b6001600160a01b0382358116926020810135821692604082013590921691810190608081016060820135600160201b81111561047b57600080fd5b82018360208201111561048d57600080fd5b803590602001918460018302840111600160201b831117156104ae57600080fd5b50909250905061113f565b6101e36114e6565b630a85bd0160e11b95945050505050565b6000818152602081905260409020600201545b919050565b60008281526020819052604090206002015461050d906105086114f8565b610fc9565b6105485760405162461bcd60e51b815260040180806020018281038252602f815260200180611f42602f913960400191505060405180910390fd5b61055282826114fd565b5050565b61055e6114f8565b6001600160a01b0316816001600160a01b0316146105ad5760405162461bcd60e51b815260040180806020018281038252602f8152602001806120bb602f913960400191505060405180910390fd5b610552828261156c565b7ff871896b17e9cb7a64941c62c188a4f5c621b86800e3d15452ece01ce56073df81565b7ff94915c6d1fd521cee85359239227480c7e8776d7caf1fc3bacad5c269b66a1481565b7fd4392723c111fcb98b073fe55873efb447bcd23cd3e49ec9ea2581930cd01ddc81565b60008051602061204b83398151915261063e816105086114f8565b6001906106de5760405162461bcd60e51b81526020600482019081528254600260001961010060018416150201909116046024830181905290918291604490910190849080156106cf5780601f106106a4576101008083540402835291602001916106cf565b820191906000526020600020905b8154815290600101906020018083116106b257829003601f168201915b50509250505060405180910390fd5b5060606106f26106ed846115db565b611656565b905060606107138260018151811061070657fe5b6020026020010151611656565b90507fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60001b6107568260008151811061074957fe5b60200260200101516117d8565b141561095457600061076e8260018151811061074957fe5b905060006001600160a01b031661078b8360028151811061074957fe5b6001600160a01b0316146107d05760405162461bcd60e51b815260040180806020018281038252602981526020018061206b6029913960400191505060405180910390fd5b600086905060006107e78460038151811061074957fe5b9050816001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b15801561082d57600080fd5b505afa158015610841573d6000803e3d6000fd5b505050506040513d602081101561085757600080fd5b5051156108d35760408051632142170760e11b81523060048201526001600160a01b038581166024830152604482018490529151918416916342842e0e9160648082019260009290919082900301818387803b1580156108b657600080fd5b505af11580156108ca573d6000803e3d6000fd5b5050505061094c565b816001600160a01b03166340c10f1984836040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b15801561093357600080fd5b505af1158015610947573d6000803e3d6000fd5b505050505b505050610f9a565b7ff871896b17e9cb7a64941c62c188a4f5c621b86800e3d15452ece01ce56073df60001b6109888260008151811061074957fe5b1415610c085760006109a08260018151811061074957fe5b905060606109c1846002815181106109b457fe5b6020026020010151611920565b905060608180602001905160208110156109da57600080fd5b8101908080516040519392919084600160201b8211156109f957600080fd5b908301906020820185811115610a0e57600080fd5b82518660208202830111600160201b82111715610a2a57600080fd5b82525081516020918201928201910280838360005b83811015610a57578181015183820152602001610a3f565b5050505091909101604052505082519293508a9150600090505b82811015610bfd576000848281518110610a8757fe5b60200260200101519050826001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610ad557600080fd5b505afa158015610ae9573d6000803e3d6000fd5b505050506040513d6020811015610aff57600080fd5b505115610b7b5760408051632142170760e11b81523060048201526001600160a01b038981166024830152604482018490529151918516916342842e0e9160648082019260009290919082900301818387803b158015610b5e57600080fd5b505af1158015610b72573d6000803e3d6000fd5b50505050610bf4565b826001600160a01b03166340c10f1988836040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b158015610bdb57600080fd5b505af1158015610bef573d6000803e3d6000fd5b505050505b50600101610a71565b505050505050610f9a565b7ff94915c6d1fd521cee85359239227480c7e8776d7caf1fc3bacad5c269b66a1460001b610c3c8260008151811061074957fe5b1415610f63576000610c548260018151811061074957fe5b905060006001600160a01b0316610c718360028151811061074957fe5b6001600160a01b031614610cb65760405162461bcd60e51b815260040180806020018281038252602981526020018061206b6029913960400191505060405180910390fd5b60008690506000610ccd8460038151811061074957fe5b9050816001600160a01b0316634f558e79826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610d1357600080fd5b505afa158015610d27573d6000803e3d6000fd5b505050506040513d6020811015610d3d57600080fd5b505115610d9c5760408051632142170760e11b81523060048201526001600160a01b038581166024830152604482018490529151918416916342842e0e9160648082019260009290919082900301818387803b1580156108b657600080fd5b6060610dae866002815181106109b457fe5b90506060818060200190516020811015610dc757600080fd5b8101908080516040519392919084600160201b821115610de657600080fd5b908301906020820185811115610dfb57600080fd5b8251600160201b811182820188101715610e1457600080fd5b82525081516020918201929091019080838360005b83811015610e41578181015183820152602001610e29565b50505050905090810190601f168015610e6e5780820380516001836020036101000a031916815260200191505b506040525050509050836001600160a01b03166394d008ef8685846040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b0316815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610ef3578181015183820152602001610edb565b50505050905090810190601f168015610f205780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015610f4157600080fd5b505af1158015610f55573d6000803e3d6000fd5b505050505050505050610f9a565b60405162461bcd60e51b815260040180806020018281038252602a815260200180611f71602a913960400191505060405180910390fd5b505050505050565b6000828152602081905260408120610fc0908363ffffffff6119ea16565b90505b92915050565b6000828152602081905260408120610fc0908363ffffffff6119f616565b601481565b600081565b7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef81565b60025460ff161561105e576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b61109c6040518060400160405280601781526020017f4d696e7461626c65455243373231507265646963617465000000000000000000815250611a0b565b6110a7600082610548565b6110bf60008051602061204b83398151915282610548565b506002805460ff19166001179055565b6000818152602081905260408120610fc390611aa9565b600082815260208190526040902060020154611104906105086114f8565b6105ad5760405162461bcd60e51b8152600401808060200182810382526030815260200180611fc36030913960400191505060405180910390fd5b60008051602061204b83398151915261115a816105086114f8565b6001906111c05760405162461bcd60e51b81526020600482019081528254600260001961010060018416150201909116046024830181905290918291604490910190849080156106cf5780601f106106a4576101008083540402835291602001916106cf565b50602082141561129f576000838360208110156111dc57600080fd5b5060408051913580835290519092506001600160a01b038088169289821692918b16917fe13244aa06bdc79480ed5fdc6ebe2bb37202fcdf33ecf45dc449f4201f3dc0879181900360200190a460408051632142170760e11b81526001600160a01b038981166004830152306024830152604482018490529151918716916342842e0e9160648082019260009290919082900301818387803b15801561128157600080fd5b505af1158015611295573d6000803e3d6000fd5b5050505050610f9a565b6060838360208110156112b157600080fd5b810190602081018135600160201b8111156112cb57600080fd5b8201836020820111156112dd57600080fd5b803590602001918460208302840111600160201b831117156112fe57600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f8201169050808301925050505050505091929192905050509050846001600160a01b0316866001600160a01b0316886001600160a01b03167fdb55e3a0ae817693fd7b07170d81eab0eb2c239f36fcecbc98b6b58ac5667e7a846040518080602001828103825283818151815260200191508051906020019060200280838360005b838110156113ca5781810151838201526020016113b2565b505050509050019250505060405180910390a48051601481111561141f5760405162461bcd60e51b815260040180806020018281038252602c81526020018061201f602c913960400191505060405180910390fd5b60005b818110156114db57866001600160a01b03166342842e0e8a3086858151811061144757fe5b60200260200101516040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050600060405180830381600087803b1580156114b757600080fd5b505af11580156114cb573d6000803e3d6000fd5b5050600190920191506114229050565b505050505050505050565b60008051602061204b83398151915281565b335b90565b600082815260208190526040902061151b908263ffffffff611ab416565b15610552576115286114f8565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b600082815260208190526040902061158a908263ffffffff611ac916565b15610552576115976114f8565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b6115e3611e6d565b6000825111611639576040805162461bcd60e51b815260206004820152601f60248201527f524c505265616465723a20494e56414c49445f42595445535f4c454e47544800604482015290519081900360640190fd5b506040805180820190915281518152602082810190820152919050565b606061166182611ade565b6116b2576040805162461bcd60e51b815260206004820152601860248201527f524c505265616465723a204954454d5f4e4f545f4c4953540000000000000000604482015290519081900360640190fd5b60006116bd83611b0a565b905060608167ffffffffffffffff811180156116d857600080fd5b5060405190808252806020026020018201604052801561171257816020015b6116ff611e6d565b8152602001906001900390816116f75790505b50905060006117248560200151611b96565b855190915081146117665760405162461bcd60e51b81526004018080602001828103825260278152602001806120946027913960400191505060405180910390fd5b60006117758660200151611c2f565b60208701510190506000805b858110156117cc5761179283611b96565b91506040518060400160405280838152602001848152508582815181106117b557fe5b602090810291909101015291810191600101611781565b50929695505050505050565b60006117e382611ade565b15611835576040805162461bcd60e51b815260206004820181905260248201527f524c505265616465723a204445434f44494e475f4c4953545f41535f55494e54604482015290519081900360640190fd5b81516021101561188c576040805162461bcd60e51b815260206004820152601e60248201527f524c505265616465723a20494e56414c49445f55494e545f4c454e4754480000604482015290519081900360640190fd5b600061189b8360200151611b96565b835190915081146118dd5760405162461bcd60e51b81526004018080602001828103825260278152602001806120ea6027913960400191505060405180910390fd5b60006118ec8460200151611c2f565b8451602080870151830180519394509184900392919083101561191657826020036101000a820491505b5095945050505050565b606060006119318360200151611b96565b835190915081146119735760405162461bcd60e51b8152600401808060200182810382526028815260200180611f9b6028913960400191505060405180910390fd5b60006119828460200151611c2f565b845190915081900360608167ffffffffffffffff811180156119a357600080fd5b506040519080825280601f01601f1916602001820160405280156119ce576020820181803683370190505b5090506000816020019050611916848860200151018285611c92565b6000610fc08383611cdd565b6000610fc0836001600160a01b038416611d41565b806040516020018082805190602001908083835b60208310611a3e5780518252601f199092019160209182019101611a1f565b51815160209384036101000a60001901801990921691161790527f3a20494e53554646494349454e545f5045524d495353494f4e530000000000009190930190815260408051808303600519018152601a909201905280516105529550600194509201919050611e87565b6000610fc382611d59565b6000610fc0836001600160a01b038416611d5d565b6000610fc0836001600160a01b038416611da7565b6020810151805160009190821a9060c0821015611b00576000925050506104e5565b5060019392505050565b600080600090506000611b208460200151611c2f565b602085015185519181019250015b80821015611b8d57611b3f82611b96565b8201915080821115611b825760405162461bcd60e51b815260040180806020018281038252602c815260200180611ff3602c913960400191505060405180910390fd5b600190920191611b2e565b50909392505050565b80516000908190811a6080811015611bb15760019150611c28565b60b8811015611bc657607e1981019150611c28565b60c0811015611bf35760b78103600185019450806020036101000a85510460018201810193505050611c28565b60f8811015611c085760be1981019150611c28565b60f78103600185019450806020036101000a855104600182018101935050505b5092915050565b8051600090811a6080811015611c495760009150506104e5565b60b8811080611c64575060c08110801590611c64575060f881105b15611c735760019150506104e5565b60c0811015611c875760b5190190506104e5565b60f5190190506104e5565b80611c9c57611cd8565b5b60208110611cbc578251825260209283019290910190601f1901611c9d565b8251825160208390036101000a60001901801990921691161782525b505050565b81546000908210611d1f5760405162461bcd60e51b8152600401808060200182810382526022815260200180611f206022913960400191505060405180910390fd5b826000018281548110611d2e57fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000611d698383611d41565b611d9f57508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610fc3565b506000610fc3565b60008181526001830160205260408120548015611e635783546000198083019190810190600090879083908110611dda57fe5b9060005260206000200154905080876000018481548110611df757fe5b600091825260208083209091019290925582815260018981019092526040902090840190558654879080611e2757fe5b60019003818190600052602060002001600090559055866001016000878152602001908152602001600020600090556001945050505050610fc3565b6000915050610fc3565b604051806040016040528060008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611ec857805160ff1916838001178555611ef5565b82800160010185558215611ef5579182015b82811115611ef5578251825591602001919060010190611eda565b50611f01929150611f05565b5090565b6114fa91905b80821115611f015760008155600101611f0b56fe456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e744d696e7461626c654552433732315072656469636174653a20494e56414c49445f5349474e4154555245524c505265616465723a2042595445535f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b65524c505265616465723a204e554d5f4954454d535f4445434f4445445f4c454e4754485f4d49534d415443484d696e7461626c654552433732315072656469636174653a20455843454544535f42415443485f4c494d4954241ecf16d79d0f8dbfb92cbc07fe17840425976cf0667f022fe9877caa831b084d696e7461626c654552433732315072656469636174653a20494e56414c49445f5245434549564552524c505265616465723a204c4953545f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66524c505265616465723a2055494e545f4445434f4445445f4c454e4754485f4d49534d41544348a164736f6c6343000606000a"; -const isSuperArgs = (xs) => xs.length > 1; -class MintableERC721Predicate__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(overrides) { - return super.getDeployTransaction(overrides || {}); - } - deploy(overrides) { - return super.deploy(overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.MintableERC721Predicate__factory = MintableERC721Predicate__factory; -MintableERC721Predicate__factory.bytecode = _bytecode; -MintableERC721Predicate__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/index.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/index.d.ts deleted file mode 100644 index d35e99ad..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/index.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -export { AccessControl__factory } from "./AccessControl__factory"; -export { AccessControlMixin__factory } from "./AccessControlMixin__factory"; -export { IERC165__factory } from "./IERC165__factory"; -export { IERC721__factory } from "./IERC721__factory"; -export { IERC721Receiver__factory } from "./IERC721Receiver__factory"; -export { IMintableERC721__factory } from "./IMintableERC721__factory"; -export { ITokenPredicate__factory } from "./ITokenPredicate__factory"; -export { MintableERC721Predicate__factory } from "./MintableERC721Predicate__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/index.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/index.d.ts.map deleted file mode 100644 index cbb4cbf3..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,gCAAgC,EAAE,MAAM,oCAAoC,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/index.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/index.js deleted file mode 100644 index 298e331c..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/index.js +++ /dev/null @@ -1,19 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.MintableERC721Predicate__factory = exports.ITokenPredicate__factory = exports.IMintableERC721__factory = exports.IERC721Receiver__factory = exports.IERC721__factory = exports.IERC165__factory = exports.AccessControlMixin__factory = exports.AccessControl__factory = void 0; -var AccessControl__factory_1 = require("./AccessControl__factory"); -Object.defineProperty(exports, "AccessControl__factory", { enumerable: true, get: function () { return AccessControl__factory_1.AccessControl__factory; } }); -var AccessControlMixin__factory_1 = require("./AccessControlMixin__factory"); -Object.defineProperty(exports, "AccessControlMixin__factory", { enumerable: true, get: function () { return AccessControlMixin__factory_1.AccessControlMixin__factory; } }); -var IERC165__factory_1 = require("./IERC165__factory"); -Object.defineProperty(exports, "IERC165__factory", { enumerable: true, get: function () { return IERC165__factory_1.IERC165__factory; } }); -var IERC721__factory_1 = require("./IERC721__factory"); -Object.defineProperty(exports, "IERC721__factory", { enumerable: true, get: function () { return IERC721__factory_1.IERC721__factory; } }); -var IERC721Receiver__factory_1 = require("./IERC721Receiver__factory"); -Object.defineProperty(exports, "IERC721Receiver__factory", { enumerable: true, get: function () { return IERC721Receiver__factory_1.IERC721Receiver__factory; } }); -var IMintableERC721__factory_1 = require("./IMintableERC721__factory"); -Object.defineProperty(exports, "IMintableERC721__factory", { enumerable: true, get: function () { return IMintableERC721__factory_1.IMintableERC721__factory; } }); -var ITokenPredicate__factory_1 = require("./ITokenPredicate__factory"); -Object.defineProperty(exports, "ITokenPredicate__factory", { enumerable: true, get: function () { return ITokenPredicate__factory_1.ITokenPredicate__factory; } }); -var MintableERC721Predicate__factory_1 = require("./MintableERC721Predicate__factory"); -Object.defineProperty(exports, "MintableERC721Predicate__factory", { enumerable: true, get: function () { return MintableERC721Predicate__factory_1.MintableERC721Predicate__factory; } }); diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControlMixin__factory.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControlMixin__factory.d.ts deleted file mode 100644 index 754c537b..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControlMixin__factory.d.ts +++ /dev/null @@ -1,199 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../../../common"; -import type { AccessControlMixin, AccessControlMixinInterface } from "../../../../../contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControlMixin"; -declare type AccessControlMixinConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class AccessControlMixin__factory extends ContractFactory { - constructor(...args: AccessControlMixinConstructorParams); - getDeployTransaction(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): AccessControlMixin__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b50610707806100206000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c806391d148541161005b57806391d1485414610155578063a217fddf14610195578063ca15c8731461019d578063d547741f146101ba57610088565b8063248a9ca31461008d5780632f2ff15d146100bc57806336568abe146100ea5780639010d07c14610116575b600080fd5b6100aa600480360360208110156100a357600080fd5b50356101e6565b60408051918252519081900360200190f35b6100e8600480360360408110156100d257600080fd5b50803590602001356001600160a01b03166101fb565b005b6100e86004803603604081101561010057600080fd5b50803590602001356001600160a01b0316610267565b6101396004803603604081101561012c57600080fd5b50803590602001356102c8565b604080516001600160a01b039092168252519081900360200190f35b6101816004803603604081101561016b57600080fd5b50803590602001356001600160a01b03166102ef565b604080519115158252519081900360200190f35b6100aa61030d565b6100aa600480360360208110156101b357600080fd5b5035610312565b6100e8600480360360408110156101d057600080fd5b50803590602001356001600160a01b0316610329565b60009081526020819052604090206002015490565b60008281526020819052604090206002015461021e90610219610382565b6102ef565b6102595760405162461bcd60e51b815260040180806020018281038252602f81526020018061066d602f913960400191505060405180910390fd5b6102638282610386565b5050565b61026f610382565b6001600160a01b0316816001600160a01b0316146102be5760405162461bcd60e51b815260040180806020018281038252602f8152602001806106cc602f913960400191505060405180910390fd5b61026382826103f5565b60008281526020819052604081206102e6908363ffffffff61046416565b90505b92915050565b60008281526020819052604081206102e6908363ffffffff61047016565b600081565b60008181526020819052604081206102e990610485565b60008281526020819052604090206002015461034790610219610382565b6102be5760405162461bcd60e51b815260040180806020018281038252603081526020018061069c6030913960400191505060405180910390fd5b3390565b60008281526020819052604090206103a4908263ffffffff61049016565b15610263576103b1610382565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6000828152602081905260409020610413908263ffffffff6104a516565b1561026357610420610382565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b60006102e683836104ba565b60006102e6836001600160a01b03841661051e565b60006102e982610536565b60006102e6836001600160a01b03841661053a565b60006102e6836001600160a01b038416610584565b815460009082106104fc5760405162461bcd60e51b815260040180806020018281038252602281526020018061064b6022913960400191505060405180910390fd5b82600001828154811061050b57fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000610546838361051e565b61057c575081546001818101845560008481526020808220909301849055845484825282860190935260409020919091556102e9565b5060006102e9565b6000818152600183016020526040812054801561064057835460001980830191908101906000908790839081106105b757fe5b90600052602060002001549050808760000184815481106105d457fe5b60009182526020808320909101929092558281526001898101909252604090209084019055865487908061060457fe5b600190038181906000526020600020016000905590558660010160008781526020019081526020016000206000905560019450505050506102e9565b60009150506102e956fe456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e74416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b65416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66a164736f6c6343000606000a"; - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "previousAdminRole"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "newAdminRole"; - readonly type: "bytes32"; - }]; - readonly name: "RoleAdminChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "sender"; - readonly type: "address"; - }]; - readonly name: "RoleGranted"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "sender"; - readonly type: "address"; - }]; - readonly name: "RoleRevoked"; - readonly type: "event"; - }, { - readonly inputs: readonly []; - readonly name: "DEFAULT_ADMIN_ROLE"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }]; - readonly name: "getRoleAdmin"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "index"; - readonly type: "uint256"; - }]; - readonly name: "getRoleMember"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }]; - readonly name: "getRoleMemberCount"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "grantRole"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "hasRole"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "renounceRole"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "revokeRole"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): AccessControlMixinInterface; - static connect(address: string, runner?: ContractRunner | null): AccessControlMixin; -} -export {}; -//# sourceMappingURL=AccessControlMixin__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControlMixin__factory.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControlMixin__factory.d.ts.map deleted file mode 100644 index 900e88df..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControlMixin__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"AccessControlMixin__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControlMixin__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,kBAAkB,EAClB,2BAA2B,EAC5B,MAAM,2FAA2F,CAAC;AA4OnG,aAAK,mCAAmC,GACpC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,2BAA4B,SAAQ,eAAe;gBAClD,GAAG,IAAI,EAAE,mCAAmC;IAQ/C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,2BAA2B;IAI5E,MAAM,CAAC,QAAQ,CAAC,QAAQ,slHAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,2BAA2B;IAGrD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,kBAAkB;CAGtB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControlMixin__factory.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControlMixin__factory.js deleted file mode 100644 index a9dfe89f..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControlMixin__factory.js +++ /dev/null @@ -1,264 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.AccessControlMixin__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - indexed: true, - internalType: "bytes32", - name: "previousAdminRole", - type: "bytes32", - }, - { - indexed: true, - internalType: "bytes32", - name: "newAdminRole", - type: "bytes32", - }, - ], - name: "RoleAdminChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "sender", - type: "address", - }, - ], - name: "RoleGranted", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "sender", - type: "address", - }, - ], - name: "RoleRevoked", - type: "event", - }, - { - inputs: [], - name: "DEFAULT_ADMIN_ROLE", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - ], - name: "getRoleAdmin", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - 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: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "grantRole", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "hasRole", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "renounceRole", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "revokeRole", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -const _bytecode = "0x608060405234801561001057600080fd5b50610707806100206000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c806391d148541161005b57806391d1485414610155578063a217fddf14610195578063ca15c8731461019d578063d547741f146101ba57610088565b8063248a9ca31461008d5780632f2ff15d146100bc57806336568abe146100ea5780639010d07c14610116575b600080fd5b6100aa600480360360208110156100a357600080fd5b50356101e6565b60408051918252519081900360200190f35b6100e8600480360360408110156100d257600080fd5b50803590602001356001600160a01b03166101fb565b005b6100e86004803603604081101561010057600080fd5b50803590602001356001600160a01b0316610267565b6101396004803603604081101561012c57600080fd5b50803590602001356102c8565b604080516001600160a01b039092168252519081900360200190f35b6101816004803603604081101561016b57600080fd5b50803590602001356001600160a01b03166102ef565b604080519115158252519081900360200190f35b6100aa61030d565b6100aa600480360360208110156101b357600080fd5b5035610312565b6100e8600480360360408110156101d057600080fd5b50803590602001356001600160a01b0316610329565b60009081526020819052604090206002015490565b60008281526020819052604090206002015461021e90610219610382565b6102ef565b6102595760405162461bcd60e51b815260040180806020018281038252602f81526020018061066d602f913960400191505060405180910390fd5b6102638282610386565b5050565b61026f610382565b6001600160a01b0316816001600160a01b0316146102be5760405162461bcd60e51b815260040180806020018281038252602f8152602001806106cc602f913960400191505060405180910390fd5b61026382826103f5565b60008281526020819052604081206102e6908363ffffffff61046416565b90505b92915050565b60008281526020819052604081206102e6908363ffffffff61047016565b600081565b60008181526020819052604081206102e990610485565b60008281526020819052604090206002015461034790610219610382565b6102be5760405162461bcd60e51b815260040180806020018281038252603081526020018061069c6030913960400191505060405180910390fd5b3390565b60008281526020819052604090206103a4908263ffffffff61049016565b15610263576103b1610382565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6000828152602081905260409020610413908263ffffffff6104a516565b1561026357610420610382565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b60006102e683836104ba565b60006102e6836001600160a01b03841661051e565b60006102e982610536565b60006102e6836001600160a01b03841661053a565b60006102e6836001600160a01b038416610584565b815460009082106104fc5760405162461bcd60e51b815260040180806020018281038252602281526020018061064b6022913960400191505060405180910390fd5b82600001828154811061050b57fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000610546838361051e565b61057c575081546001818101845560008481526020808220909301849055845484825282860190935260409020919091556102e9565b5060006102e9565b6000818152600183016020526040812054801561064057835460001980830191908101906000908790839081106105b757fe5b90600052602060002001549050808760000184815481106105d457fe5b60009182526020808320909101929092558281526001898101909252604090209084019055865487908061060457fe5b600190038181906000526020600020016000905590558660010160008781526020019081526020016000206000905560019450505050506102e9565b60009150506102e956fe456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e74416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b65416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66a164736f6c6343000606000a"; -const isSuperArgs = (xs) => xs.length > 1; -class AccessControlMixin__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(overrides) { - return super.getDeployTransaction(overrides || {}); - } - deploy(overrides) { - return super.deploy(overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.AccessControlMixin__factory = AccessControlMixin__factory; -AccessControlMixin__factory.bytecode = _bytecode; -AccessControlMixin__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControl__factory.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControl__factory.d.ts deleted file mode 100644 index 615ae3eb..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControl__factory.d.ts +++ /dev/null @@ -1,184 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { AccessControl, AccessControlInterface } from "../../../../../contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControl"; -export declare class AccessControl__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "previousAdminRole"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "newAdminRole"; - readonly type: "bytes32"; - }]; - readonly name: "RoleAdminChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "sender"; - readonly type: "address"; - }]; - readonly name: "RoleGranted"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "sender"; - readonly type: "address"; - }]; - readonly name: "RoleRevoked"; - readonly type: "event"; - }, { - readonly inputs: readonly []; - readonly name: "DEFAULT_ADMIN_ROLE"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }]; - readonly name: "getRoleAdmin"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "index"; - readonly type: "uint256"; - }]; - readonly name: "getRoleMember"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }]; - readonly name: "getRoleMemberCount"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "grantRole"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "hasRole"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "renounceRole"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "revokeRole"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): AccessControlInterface; - static connect(address: string, runner?: ContractRunner | null): AccessControl; -} -//# sourceMappingURL=AccessControl__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControl__factory.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControl__factory.d.ts.map deleted file mode 100644 index db4be070..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControl__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"AccessControl__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControl__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,aAAa,EACb,sBAAsB,EACvB,MAAM,sFAAsF,CAAC;AAyO9F,qBAAa,sBAAsB;IACjC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,sBAAsB;IAGhD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,aAAa;CAGjB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControl__factory.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControl__factory.js deleted file mode 100644 index d7c08911..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControl__factory.js +++ /dev/null @@ -1,244 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.AccessControl__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - indexed: true, - internalType: "bytes32", - name: "previousAdminRole", - type: "bytes32", - }, - { - indexed: true, - internalType: "bytes32", - name: "newAdminRole", - type: "bytes32", - }, - ], - name: "RoleAdminChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "sender", - type: "address", - }, - ], - name: "RoleGranted", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "sender", - type: "address", - }, - ], - name: "RoleRevoked", - type: "event", - }, - { - inputs: [], - name: "DEFAULT_ADMIN_ROLE", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - ], - name: "getRoleAdmin", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - 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: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "grantRole", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "hasRole", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "renounceRole", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "revokeRole", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -class AccessControl__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.AccessControl__factory = AccessControl__factory; -AccessControl__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base__factory.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base__factory.d.ts deleted file mode 100644 index 742d87fe..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base__factory.d.ts +++ /dev/null @@ -1,53 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../../../common"; -import type { EIP712Base, EIP712BaseInterface } from "../../../../../contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base"; -declare type EIP712BaseConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class EIP712Base__factory extends ContractFactory { - constructor(...args: EIP712BaseConstructorParams); - getDeployTransaction(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): EIP712Base__factory; - static readonly bytecode = "0x60806040526000805460ff1916905534801561001a57600080fd5b5061010b8061002a6000396000f3fe6080604052348015600f57600080fd5b5060043610603c5760003560e01c80630f7e597014604157806320379ee51460b95780633408e4701460d1575b600080fd5b604760d7565b6040805160208082528351818301528351919283929083019185019080838360005b83811015607f5781810151838201526020016069565b50505050905090810190601f16801560ab5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b60bf60f4565b60408051918252519081900360200190f35b60bf60fa565b604051806040016040528060018152602001603160f81b81525081565b60015490565b469056fea164736f6c6343000606000a"; - static readonly abi: readonly [{ - readonly inputs: readonly []; - readonly name: "ERC712_VERSION"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "getChainId"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "pure"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "getDomainSeperator"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): EIP712BaseInterface; - static connect(address: string, runner?: ContractRunner | null): EIP712Base; -} -export {}; -//# sourceMappingURL=EIP712Base__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base__factory.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base__factory.d.ts.map deleted file mode 100644 index ccf0df34..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"EIP712Base__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,UAAU,EACV,mBAAmB,EACpB,MAAM,mFAAmF,CAAC;AA+C3F,aAAK,2BAA2B,GAC5B,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,mBAAoB,SAAQ,eAAe;gBAC1C,GAAG,IAAI,EAAE,2BAA2B;IAQvC,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,mBAAmB;IAIpE,MAAM,CAAC,QAAQ,CAAC,QAAQ,knBAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,mBAAmB;IAG7C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,UAAU;CAG5E"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base__factory.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base__factory.js deleted file mode 100644 index a1973c00..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base__factory.js +++ /dev/null @@ -1,75 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.EIP712Base__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [], - name: "ERC712_VERSION", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "getChainId", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "pure", - type: "function", - }, - { - inputs: [], - name: "getDomainSeperator", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -const _bytecode = "0x60806040526000805460ff1916905534801561001a57600080fd5b5061010b8061002a6000396000f3fe6080604052348015600f57600080fd5b5060043610603c5760003560e01c80630f7e597014604157806320379ee51460b95780633408e4701460d1575b600080fd5b604760d7565b6040805160208082528351818301528351919283929083019185019080838360005b83811015607f5781810151838201526020016069565b50505050905090810190601f16801560ab5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b60bf60f4565b60408051918252519081900360200190f35b60bf60fa565b604051806040016040528060018152602001603160f81b81525081565b60015490565b469056fea164736f6c6343000606000a"; -const isSuperArgs = (xs) => xs.length > 1; -class EIP712Base__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(overrides) { - return super.getDeployTransaction(overrides || {}); - } - deploy(overrides) { - return super.deploy(overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.EIP712Base__factory = EIP712Base__factory; -EIP712Base__factory.bytecode = _bytecode; -EIP712Base__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager__factory.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager__factory.d.ts deleted file mode 100644 index dfd0a679..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager__factory.d.ts +++ /dev/null @@ -1,53 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../../../common"; -import type { ICheckpointManager, ICheckpointManagerInterface } from "../../../../../contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager"; -declare type ICheckpointManagerConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class ICheckpointManager__factory extends ContractFactory { - constructor(...args: ICheckpointManagerConstructorParams); - getDeployTransaction(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): ICheckpointManager__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b5060c08061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c806341539d4a14602d575b600080fd5b604760048036036020811015604157600080fd5b5035607b565b6040805195865260208601949094528484019290925260608401526001600160a01b03166080830152519081900360a00190f35b60006020819052908152604090208054600182015460028301546003840154600490940154929391929091906001600160a01b03168556fea164736f6c6343000606000a"; - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly name: "headerBlocks"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "root"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "start"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "end"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "createdAt"; - readonly type: "uint256"; - }, { - readonly internalType: "address"; - readonly name: "proposer"; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): ICheckpointManagerInterface; - static connect(address: string, runner?: ContractRunner | null): ICheckpointManager; -} -export {}; -//# sourceMappingURL=ICheckpointManager__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager__factory.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager__factory.d.ts.map deleted file mode 100644 index a256a41c..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ICheckpointManager__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,kBAAkB,EAClB,2BAA2B,EAC5B,MAAM,2FAA2F,CAAC;AA+CnG,aAAK,mCAAmC,GACpC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,2BAA4B,SAAQ,eAAe;gBAClD,GAAG,IAAI,EAAE,mCAAmC;IAQ/C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,2BAA2B;IAI5E,MAAM,CAAC,QAAQ,CAAC,QAAQ,scAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,2BAA2B;IAGrD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,kBAAkB;CAGtB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager__factory.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager__factory.js deleted file mode 100644 index 2d28b829..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager__factory.js +++ /dev/null @@ -1,75 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ICheckpointManager__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - name: "headerBlocks", - outputs: [ - { - internalType: "bytes32", - name: "root", - type: "bytes32", - }, - { - internalType: "uint256", - name: "start", - type: "uint256", - }, - { - internalType: "uint256", - name: "end", - type: "uint256", - }, - { - internalType: "uint256", - name: "createdAt", - type: "uint256", - }, - { - internalType: "address", - name: "proposer", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -const _bytecode = "0x608060405234801561001057600080fd5b5060c08061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c806341539d4a14602d575b600080fd5b604760048036036020811015604157600080fd5b5035607b565b6040805195865260208601949094528484019290925260608401526001600160a01b03166080830152519081900360a00190f35b60006020819052908152604090208054600182015460028301546003840154600490940154929391929091906001600160a01b03168556fea164736f6c6343000606000a"; -const isSuperArgs = (xs) => xs.length > 1; -class ICheckpointManager__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(overrides) { - return super.getDeployTransaction(overrides || {}); - } - deploy(overrides) { - return super.deploy(overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.ICheckpointManager__factory = ICheckpointManager__factory; -ICheckpointManager__factory.bytecode = _bytecode; -ICheckpointManager__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IRootChainManager__factory.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IRootChainManager__factory.d.ts deleted file mode 100644 index 6b6aa914..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IRootChainManager__factory.d.ts +++ /dev/null @@ -1,145 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IRootChainManager, IRootChainManagerInterface } from "../../../../../contracts/@maticnetwork/pos-portal/RootChainManager.sol/IRootChainManager"; -export declare class IRootChainManager__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "tokenType"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "predicateAddress"; - readonly type: "address"; - }]; - readonly name: "PredicateRegistered"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "rootToken"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "childToken"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "tokenType"; - readonly type: "bytes32"; - }]; - readonly name: "TokenMapped"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "rootToken"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "childToken"; - readonly type: "address"; - }]; - readonly name: "cleanMapToken"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "user"; - readonly type: "address"; - }]; - readonly name: "depositEtherFor"; - readonly outputs: readonly []; - readonly stateMutability: "payable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "user"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "rootToken"; - readonly type: "address"; - }, { - readonly internalType: "bytes"; - readonly name: "depositData"; - readonly type: "bytes"; - }]; - readonly name: "depositFor"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes"; - readonly name: "inputData"; - readonly type: "bytes"; - }]; - readonly name: "exit"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "rootToken"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "childToken"; - readonly type: "address"; - }, { - readonly internalType: "bytes32"; - readonly name: "tokenType"; - readonly type: "bytes32"; - }]; - readonly name: "mapToken"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "tokenType"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "predicateAddress"; - readonly type: "address"; - }]; - readonly name: "registerPredicate"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "rootToken"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "childToken"; - readonly type: "address"; - }, { - readonly internalType: "bytes32"; - readonly name: "tokenType"; - readonly type: "bytes32"; - }]; - readonly name: "remapToken"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): IRootChainManagerInterface; - static connect(address: string, runner?: ContractRunner | null): IRootChainManager; -} -//# sourceMappingURL=IRootChainManager__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IRootChainManager__factory.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IRootChainManager__factory.d.ts.map deleted file mode 100644 index ceda83e3..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IRootChainManager__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IRootChainManager__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IRootChainManager__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,iBAAiB,EACjB,0BAA0B,EAC3B,MAAM,0FAA0F,CAAC;AAoLlG,qBAAa,0BAA0B;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,0BAA0B;IAGpD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,iBAAiB;CAGrB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IRootChainManager__factory.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IRootChainManager__factory.js deleted file mode 100644 index f5d067a6..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IRootChainManager__factory.js +++ /dev/null @@ -1,191 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IRootChainManager__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "tokenType", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "predicateAddress", - type: "address", - }, - ], - name: "PredicateRegistered", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "rootToken", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "childToken", - type: "address", - }, - { - indexed: true, - internalType: "bytes32", - name: "tokenType", - type: "bytes32", - }, - ], - name: "TokenMapped", - type: "event", - }, - { - inputs: [ - { - internalType: "address", - name: "rootToken", - type: "address", - }, - { - internalType: "address", - name: "childToken", - type: "address", - }, - ], - name: "cleanMapToken", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "user", - type: "address", - }, - ], - name: "depositEtherFor", - outputs: [], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "user", - type: "address", - }, - { - internalType: "address", - name: "rootToken", - type: "address", - }, - { - internalType: "bytes", - name: "depositData", - type: "bytes", - }, - ], - name: "depositFor", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes", - name: "inputData", - type: "bytes", - }, - ], - name: "exit", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "rootToken", - type: "address", - }, - { - internalType: "address", - name: "childToken", - type: "address", - }, - { - internalType: "bytes32", - name: "tokenType", - type: "bytes32", - }, - ], - name: "mapToken", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "tokenType", - type: "bytes32", - }, - { - internalType: "address", - name: "predicateAddress", - type: "address", - }, - ], - name: "registerPredicate", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "rootToken", - type: "address", - }, - { - internalType: "address", - name: "childToken", - type: "address", - }, - { - internalType: "bytes32", - name: "tokenType", - type: "bytes32", - }, - ], - name: "remapToken", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -class IRootChainManager__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IRootChainManager__factory = IRootChainManager__factory; -IRootChainManager__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IStateSender__factory.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IStateSender__factory.d.ts deleted file mode 100644 index d902772d..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IStateSender__factory.d.ts +++ /dev/null @@ -1,22 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IStateSender, IStateSenderInterface } from "../../../../../contracts/@maticnetwork/pos-portal/RootChainManager.sol/IStateSender"; -export declare class IStateSender__factory { - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "receiver"; - readonly type: "address"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "syncState"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): IStateSenderInterface; - static connect(address: string, runner?: ContractRunner | null): IStateSender; -} -//# sourceMappingURL=IStateSender__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IStateSender__factory.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IStateSender__factory.d.ts.map deleted file mode 100644 index d060d600..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IStateSender__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IStateSender__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IStateSender__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,YAAY,EACZ,qBAAqB,EACtB,MAAM,qFAAqF,CAAC;AAuB7F,qBAAa,qBAAqB;IAChC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,qBAAqB;IAG/C,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,YAAY;CAGhB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IStateSender__factory.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IStateSender__factory.js deleted file mode 100644 index a101a569..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IStateSender__factory.js +++ /dev/null @@ -1,34 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IStateSender__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "address", - name: "receiver", - type: "address", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "syncState", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -class IStateSender__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IStateSender__factory = IStateSender__factory; -IStateSender__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ITokenPredicate__factory.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ITokenPredicate__factory.d.ts deleted file mode 100644 index cdc03f80..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ITokenPredicate__factory.d.ts +++ /dev/null @@ -1,48 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { ITokenPredicate, ITokenPredicateInterface } from "../../../../../contracts/@maticnetwork/pos-portal/RootChainManager.sol/ITokenPredicate"; -export declare class ITokenPredicate__factory { - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "sender"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "rootToken"; - readonly type: "address"; - }, { - readonly internalType: "bytes"; - readonly name: "logRLPList"; - readonly type: "bytes"; - }]; - readonly name: "exitTokens"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "depositor"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "depositReceiver"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "rootToken"; - readonly type: "address"; - }, { - readonly internalType: "bytes"; - readonly name: "depositData"; - readonly type: "bytes"; - }]; - readonly name: "lockTokens"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): ITokenPredicateInterface; - static connect(address: string, runner?: ContractRunner | null): ITokenPredicate; -} -//# sourceMappingURL=ITokenPredicate__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ITokenPredicate__factory.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ITokenPredicate__factory.d.ts.map deleted file mode 100644 index f14794e5..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ITokenPredicate__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ITokenPredicate__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ITokenPredicate__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,eAAe,EACf,wBAAwB,EACzB,MAAM,wFAAwF,CAAC;AAwDhG,qBAAa,wBAAwB;IACnC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,wBAAwB;IAGlD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,eAAe;CAGnB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ITokenPredicate__factory.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ITokenPredicate__factory.js deleted file mode 100644 index 94196918..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ITokenPredicate__factory.js +++ /dev/null @@ -1,67 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ITokenPredicate__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "address", - name: "sender", - type: "address", - }, - { - internalType: "address", - name: "rootToken", - type: "address", - }, - { - internalType: "bytes", - name: "logRLPList", - type: "bytes", - }, - ], - name: "exitTokens", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "depositor", - type: "address", - }, - { - internalType: "address", - name: "depositReceiver", - type: "address", - }, - { - internalType: "address", - name: "rootToken", - type: "address", - }, - { - internalType: "bytes", - name: "depositData", - type: "bytes", - }, - ], - name: "lockTokens", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -class ITokenPredicate__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.ITokenPredicate__factory = ITokenPredicate__factory; -ITokenPredicate__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction__factory.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction__factory.d.ts deleted file mode 100644 index 494ac837..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction__factory.d.ts +++ /dev/null @@ -1,117 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../../../common"; -import type { NativeMetaTransaction, NativeMetaTransactionInterface } from "../../../../../contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction"; -declare type NativeMetaTransactionConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class NativeMetaTransaction__factory extends ContractFactory { - constructor(...args: NativeMetaTransactionConstructorParams); - getDeployTransaction(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): NativeMetaTransaction__factory; - static readonly bytecode = "0x60806040526000805460ff1916905534801561001a57600080fd5b506108278061002a6000396000f3fe60806040526004361061004a5760003560e01c80630c53c51c1461004f5780630f7e59701461018857806320379ee51461019d5780632d0335ab146101c45780633408e470146101f7575b600080fd5b610113600480360360a081101561006557600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561009057600080fd5b8201836020820111156100a257600080fd5b803590602001918460018302840111640100000000831117156100c457600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550508235935050506020810135906040013560ff1661020c565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561014d578181015183820152602001610135565b50505050905090810190601f16801561017a5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561019457600080fd5b5061011361050f565b3480156101a957600080fd5b506101b261052c565b60408051918252519081900360200190f35b3480156101d057600080fd5b506101b2600480360360208110156101e757600080fd5b50356001600160a01b0316610532565b34801561020357600080fd5b506101b261054d565b6060610216610767565b50604080516060810182526001600160a01b038816600081815260026020908152908490205483528201529081018690526102548782878787610551565b61028f5760405162461bcd60e51b81526004018080602001828103825260218152602001806107fa6021913960400191505060405180910390fd5b6001600160a01b0387166000908152600260205260409020546102b990600163ffffffff61062e16565b6001600160a01b03881660008181526002602090815260408083209490945583519283523383820181905260609484018581528b51958501959095528a517f5845892132946850460bff5a0083f71031bc5bf9aadcd40f1de79423eac9b10b958d9592948d94919260808501928601918190849084905b83811015610348578181015183820152602001610330565b50505050905090810190601f1680156103755780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a160006060306001600160a01b0316888a6040516020018083805190602001908083835b602083106103c65780518252601f1990920191602091820191016103a7565b6001836020036101000a038019825116818451168082178552505050505050905001826001600160a01b03166001600160a01b031660601b8152601401925050506040516020818303038152906040526040518082805190602001908083835b602083106104455780518252601f199092019160209182019101610426565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d80600081146104a7576040519150601f19603f3d011682016040523d82523d6000602084013e6104ac565b606091505b509150915081610503576040805162461bcd60e51b815260206004820152601c60248201527f46756e6374696f6e2063616c6c206e6f74207375636365737366756c00000000604482015290519081900360640190fd5b98975050505050505050565b604051806040016040528060018152602001603160f81b81525081565b60015490565b6001600160a01b031660009081526002602052604090205490565b4690565b60006001600160a01b0386166105985760405162461bcd60e51b81526004018080602001828103825260258152602001806107d56025913960400191505060405180910390fd5b60016105ab6105a68761068f565b61071b565b83868660405160008152602001604052604051808581526020018460ff1660ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa158015610605573d6000803e3d6000fd5b505050602060405103516001600160a01b0316866001600160a01b031614905095945050505050565b600082820183811015610688576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b600060405180608001604052806043815260200161079260439139805190602001208260000151836020015184604001518051906020012060405160200180858152602001848152602001836001600160a01b03166001600160a01b03168152602001828152602001945050505050604051602081830303815290604052805190602001209050919050565b600061072561052c565b82604051602001808061190160f01b81525060020183815260200182815260200192505050604051602081830303815290604052805190602001209050919050565b60405180606001604052806000815260200160006001600160a01b0316815260200160608152509056fe4d6574615472616e73616374696f6e2875696e74323536206e6f6e63652c616464726573732066726f6d2c62797465732066756e6374696f6e5369676e6174757265294e61746976654d6574615472616e73616374696f6e3a20494e56414c49445f5349474e45525369676e657220616e64207369676e617475726520646f206e6f74206d61746368a164736f6c6343000606000a"; - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "address"; - readonly name: "userAddress"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "address payable"; - readonly name: "relayerAddress"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "bytes"; - readonly name: "functionSignature"; - readonly type: "bytes"; - }]; - readonly name: "MetaTransactionExecuted"; - readonly type: "event"; - }, { - readonly inputs: readonly []; - readonly name: "ERC712_VERSION"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "userAddress"; - readonly type: "address"; - }, { - readonly internalType: "bytes"; - readonly name: "functionSignature"; - readonly type: "bytes"; - }, { - readonly internalType: "bytes32"; - readonly name: "sigR"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes32"; - readonly name: "sigS"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint8"; - readonly name: "sigV"; - readonly type: "uint8"; - }]; - readonly name: "executeMetaTransaction"; - readonly outputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "payable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "getChainId"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "pure"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "getDomainSeperator"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "user"; - readonly type: "address"; - }]; - readonly name: "getNonce"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "nonce"; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): NativeMetaTransactionInterface; - static connect(address: string, runner?: ContractRunner | null): NativeMetaTransaction; -} -export {}; -//# sourceMappingURL=NativeMetaTransaction__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction__factory.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction__factory.d.ts.map deleted file mode 100644 index d165b821..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"NativeMetaTransaction__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,qBAAqB,EACrB,8BAA8B,EAC/B,MAAM,8FAA8F,CAAC;AAkItG,aAAK,sCAAsC,GACvC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,8BAA+B,SAAQ,eAAe;gBACrD,GAAG,IAAI,EAAE,sCAAsC;IAQlD,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CACd,MAAM,EAAE,cAAc,GAAG,IAAI,GAC5B,8BAA8B;IAIjC,MAAM,CAAC,QAAQ,CAAC,QAAQ,0qIAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,8BAA8B;IAGxD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,qBAAqB;CAOzB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction__factory.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction__factory.js deleted file mode 100644 index 6c436069..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction__factory.js +++ /dev/null @@ -1,158 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.NativeMetaTransaction__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "userAddress", - type: "address", - }, - { - indexed: false, - internalType: "address payable", - name: "relayerAddress", - type: "address", - }, - { - indexed: false, - internalType: "bytes", - name: "functionSignature", - type: "bytes", - }, - ], - name: "MetaTransactionExecuted", - type: "event", - }, - { - inputs: [], - name: "ERC712_VERSION", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "userAddress", - type: "address", - }, - { - internalType: "bytes", - name: "functionSignature", - type: "bytes", - }, - { - internalType: "bytes32", - name: "sigR", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "sigS", - type: "bytes32", - }, - { - internalType: "uint8", - name: "sigV", - type: "uint8", - }, - ], - name: "executeMetaTransaction", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "payable", - type: "function", - }, - { - inputs: [], - name: "getChainId", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "pure", - type: "function", - }, - { - inputs: [], - name: "getDomainSeperator", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "user", - type: "address", - }, - ], - name: "getNonce", - outputs: [ - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -const _bytecode = "0x60806040526000805460ff1916905534801561001a57600080fd5b506108278061002a6000396000f3fe60806040526004361061004a5760003560e01c80630c53c51c1461004f5780630f7e59701461018857806320379ee51461019d5780632d0335ab146101c45780633408e470146101f7575b600080fd5b610113600480360360a081101561006557600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561009057600080fd5b8201836020820111156100a257600080fd5b803590602001918460018302840111640100000000831117156100c457600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550508235935050506020810135906040013560ff1661020c565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561014d578181015183820152602001610135565b50505050905090810190601f16801561017a5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561019457600080fd5b5061011361050f565b3480156101a957600080fd5b506101b261052c565b60408051918252519081900360200190f35b3480156101d057600080fd5b506101b2600480360360208110156101e757600080fd5b50356001600160a01b0316610532565b34801561020357600080fd5b506101b261054d565b6060610216610767565b50604080516060810182526001600160a01b038816600081815260026020908152908490205483528201529081018690526102548782878787610551565b61028f5760405162461bcd60e51b81526004018080602001828103825260218152602001806107fa6021913960400191505060405180910390fd5b6001600160a01b0387166000908152600260205260409020546102b990600163ffffffff61062e16565b6001600160a01b03881660008181526002602090815260408083209490945583519283523383820181905260609484018581528b51958501959095528a517f5845892132946850460bff5a0083f71031bc5bf9aadcd40f1de79423eac9b10b958d9592948d94919260808501928601918190849084905b83811015610348578181015183820152602001610330565b50505050905090810190601f1680156103755780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a160006060306001600160a01b0316888a6040516020018083805190602001908083835b602083106103c65780518252601f1990920191602091820191016103a7565b6001836020036101000a038019825116818451168082178552505050505050905001826001600160a01b03166001600160a01b031660601b8152601401925050506040516020818303038152906040526040518082805190602001908083835b602083106104455780518252601f199092019160209182019101610426565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d80600081146104a7576040519150601f19603f3d011682016040523d82523d6000602084013e6104ac565b606091505b509150915081610503576040805162461bcd60e51b815260206004820152601c60248201527f46756e6374696f6e2063616c6c206e6f74207375636365737366756c00000000604482015290519081900360640190fd5b98975050505050505050565b604051806040016040528060018152602001603160f81b81525081565b60015490565b6001600160a01b031660009081526002602052604090205490565b4690565b60006001600160a01b0386166105985760405162461bcd60e51b81526004018080602001828103825260258152602001806107d56025913960400191505060405180910390fd5b60016105ab6105a68761068f565b61071b565b83868660405160008152602001604052604051808581526020018460ff1660ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa158015610605573d6000803e3d6000fd5b505050602060405103516001600160a01b0316866001600160a01b031614905095945050505050565b600082820183811015610688576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b600060405180608001604052806043815260200161079260439139805190602001208260000151836020015184604001518051906020012060405160200180858152602001848152602001836001600160a01b03166001600160a01b03168152602001828152602001945050505050604051602081830303815290604052805190602001209050919050565b600061072561052c565b82604051602001808061190160f01b81525060020183815260200182815260200192505050604051602081830303815290604052805190602001209050919050565b60405180606001604052806000815260200160006001600160a01b0316815260200160608152509056fe4d6574615472616e73616374696f6e2875696e74323536206e6f6e63652c616464726573732066726f6d2c62797465732066756e6374696f6e5369676e6174757265294e61746976654d6574615472616e73616374696f6e3a20494e56414c49445f5349474e45525369676e657220616e64207369676e617475726520646f206e6f74206d61746368a164736f6c6343000606000a"; -const isSuperArgs = (xs) => xs.length > 1; -class NativeMetaTransaction__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(overrides) { - return super.getDeployTransaction(overrides || {}); - } - deploy(overrides) { - return super.deploy(overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.NativeMetaTransaction__factory = NativeMetaTransaction__factory; -NativeMetaTransaction__factory.bytecode = _bytecode; -NativeMetaTransaction__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage__factory.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage__factory.d.ts deleted file mode 100644 index 67f7fdb9..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage__factory.d.ts +++ /dev/null @@ -1,88 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { RootChainManagerStorage, RootChainManagerStorageInterface } from "../../../../../contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage"; -export declare class RootChainManagerStorage__factory { - static readonly abi: readonly [{ - readonly inputs: readonly []; - readonly name: "childChainManagerAddress"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly name: "childToRootToken"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly name: "processedExits"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly name: "rootToChildToken"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly name: "tokenToType"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly name: "typeToPredicate"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): RootChainManagerStorageInterface; - static connect(address: string, runner?: ContractRunner | null): RootChainManagerStorage; -} -//# sourceMappingURL=RootChainManagerStorage__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage__factory.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage__factory.d.ts.map deleted file mode 100644 index 59a2ccf5..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"RootChainManagerStorage__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,uBAAuB,EACvB,gCAAgC,EACjC,MAAM,gGAAgG,CAAC;AAiHxG,qBAAa,gCAAgC;IAC3C,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,gCAAgC;IAG1D,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,uBAAuB;CAO3B"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage__factory.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage__factory.js deleted file mode 100644 index 2f8bb873..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage__factory.js +++ /dev/null @@ -1,124 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.RootChainManagerStorage__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [], - name: "childChainManagerAddress", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - name: "childToRootToken", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - name: "processedExits", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - name: "rootToChildToken", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - name: "tokenToType", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - name: "typeToPredicate", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class RootChainManagerStorage__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.RootChainManagerStorage__factory = RootChainManagerStorage__factory; -RootChainManagerStorage__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager__factory.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager__factory.d.ts deleted file mode 100644 index 7d218304..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager__factory.d.ts +++ /dev/null @@ -1,625 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../../../common"; -import type { RootChainManager, RootChainManagerInterface } from "../../../../../contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager"; -declare type RootChainManagerConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class RootChainManager__factory extends ContractFactory { - constructor(...args: RootChainManagerConstructorParams); - getDeployTransaction(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): RootChainManager__factory; - static readonly bytecode = "0x60806040526000805460ff1916905534801561001a57600080fd5b506143098061002a6000396000f3fe6080604052600436106102295760003560e01c8063886a69ba11610123578063cf1d21c0116100ab578063e2c49de11161006f578063e2c49de11461091d578063e3dec8fb14610932578063e43009a6146109c8578063e66f9603146109fb578063ea60c7c414610a2557610240565b8063cf1d21c014610844578063d233a3c714610859578063d547741f1461089c578063d81c8e52146108d5578063dc993a23146108ea57610240565b8063a217fddf116100f2578063a217fddf1461078a578063b4b4f63e1461079f578063bc08452b146107b4578063c4d66de8146107e7578063ca15c8731461081a57610240565b8063886a69ba146106c95780639010d07c146106de5780639173b1391461070e57806391d148541461075157610240565b80633138b6f1116101b1578063568b80b511610175578063568b80b5146105fb578063607f2d4214610610578063630fcbfb1461064e5780636cb136b0146106635780636e86b7701461069657610240565b80633138b6f1146104f55780633408e4701461050a57806336568abe1461051f5780633805550f146105585780634faa8a26146105d557610240565b80630f7e5970116101f85780630f7e59701461042357806320379ee514610438578063248a9ca31461045f5780632d0335ab146104895780632f2ff15d146104bc57610240565b806304967702146102455780630c3894bb146102765780630c53c51c146102b15780630c598220146103ea57610240565b366102405761023e610239610a58565b610a68565b005b600080fd5b34801561025157600080fd5b5061025a610b69565b604080516001600160a01b039092168252519081900360200190f35b34801561028257600080fd5b5061023e6004803603604081101561029957600080fd5b506001600160a01b0381358116916020013516610b78565b610375600480360360a08110156102c757600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156102f257600080fd5b82018360208201111561030457600080fd5b8035906020019184600183028401116401000000008311171561032657600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550508235935050506020810135906040013560ff16610cc9565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103af578181015183820152602001610397565b50505050905090810190601f1680156103dc5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156103f657600080fd5b5061023e6004803603604081101561040d57600080fd5b50803590602001356001600160a01b0316610fcc565b34801561042f57600080fd5b506103756110b9565b34801561044457600080fd5b5061044d6110d6565b60408051918252519081900360200190f35b34801561046b57600080fd5b5061044d6004803603602081101561048257600080fd5b50356110dc565b34801561049557600080fd5b5061044d600480360360208110156104ac57600080fd5b50356001600160a01b03166110f4565b3480156104c857600080fd5b5061023e600480360360408110156104df57600080fd5b50803590602001356001600160a01b031661110f565b34801561050157600080fd5b5061025a611176565b34801561051657600080fd5b5061044d611185565b34801561052b57600080fd5b5061023e6004803603604081101561054257600080fd5b50803590602001356001600160a01b0316611189565b34801561056457600080fd5b5061023e6004803603602081101561057b57600080fd5b81019060208101813564010000000081111561059657600080fd5b8201836020820111156105a857600080fd5b803590602001918460018302840111640100000000831117156105ca57600080fd5b5090925090506111ea565b61023e600480360360208110156105eb57600080fd5b50356001600160a01b03166116ec565b34801561060757600080fd5b5061044d6116f8565b34801561061c57600080fd5b5061063a6004803603602081101561063357600080fd5b503561171b565b604080519115158252519081900360200190f35b34801561065a57600080fd5b5061023e611730565b34801561066f57600080fd5b5061023e6004803603602081101561068657600080fd5b50356001600160a01b03166117d6565b3480156106a257600080fd5b5061025a600480360360208110156106b957600080fd5b50356001600160a01b031661186e565b3480156106d557600080fd5b5061044d611889565b3480156106ea57600080fd5b5061025a6004803603604081101561070157600080fd5b50803590602001356118aa565b34801561071a57600080fd5b5061023e6004803603606081101561073157600080fd5b506001600160a01b038135811691602081013590911690604001356118d1565b34801561075d57600080fd5b5061063a6004803603604081101561077457600080fd5b50803590602001356001600160a01b0316611a06565b34801561079657600080fd5b5061044d611a24565b3480156107ab57600080fd5b5061023e611a29565b3480156107c057600080fd5b5061023e600480360360208110156107d757600080fd5b50356001600160a01b0316611acf565b3480156107f357600080fd5b5061023e6004803603602081101561080a57600080fd5b50356001600160a01b0316611b67565b34801561082657600080fd5b5061044d6004803603602081101561083d57600080fd5b5035611c57565b34801561085057600080fd5b5061025a611c6e565b34801561086557600080fd5b5061023e6004803603606081101561087c57600080fd5b506001600160a01b03813581169160208101359091169060400135611c86565b3480156108a857600080fd5b5061023e600480360360408110156108bf57600080fd5b50803590602001356001600160a01b0316611de8565b3480156108e157600080fd5b5061044d611e41565b3480156108f657600080fd5b5061023e6004803603602081101561090d57600080fd5b50356001600160a01b0316611e60565b34801561092957600080fd5b5061025a611f3d565b34801561093e57600080fd5b5061023e6004803603606081101561095557600080fd5b6001600160a01b03823581169260208101359091169181019060608101604082013564010000000081111561098957600080fd5b82018360208201111561099b57600080fd5b803590602001918460018302840111640100000000831117156109bd57600080fd5b509092509050611f4c565b3480156109d457600080fd5b5061044d600480360360208110156109eb57600080fd5b50356001600160a01b0316611fe9565b348015610a0757600080fd5b5061025a60048036036020811015610a1e57600080fd5b5035611ffb565b348015610a3157600080fd5b5061025a60048036036020811015610a4857600080fd5b50356001600160a01b0316612016565b6000610a62612031565b90505b90565b604080513460208083019190915282518083039091018152908201909152610aa58273eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee8361208e565b7fa1829a9003092132f585b6ccdd167c19fe9774dbdea4260287e8a8e8ca8185d7546000908152600260205260408082205490516001600160a01b039091169034908381818185875af1925050503d8060008114610b1f576040519150601f19603f3d011682016040523d82523d6000602084013e610b24565b606091505b5050905080610b645760405162461bcd60e51b815260040180806020018281038252602781526020018061419d6027913960400191505060405180910390fd5b505050565b6009546001600160a01b031681565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020610ba981610ba4610a58565b611a06565b600a90610c495760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b820191906000526020600020905b815481529060010190602001808311610c1d57829003601f168201915b50509250505060405180910390fd5b506001600160a01b03808416600081815260036020908152604080832080546001600160a01b0319908116909155948716808452600483528184208054909616909555838352600590915280822082905551909291907f9e651a8866fbea043e911d816ec254b0e3c992c06fff32d605e72362d6023bd9908490a4505050565b6060610cd3613e2a565b50604080516060810182526001600160a01b0388166000818152600c602090815290849020548352820152908101869052610d118782878787612508565b610d4c5760405162461bcd60e51b81526004018080602001828103825260218152602001806141c46021913960400191505060405180910390fd5b6001600160a01b0387166000908152600c6020526040902054610d7690600163ffffffff6125e516565b6001600160a01b0388166000818152600c602090815260408083209490945583519283523383820181905260609484018581528b51958501959095528a517f5845892132946850460bff5a0083f71031bc5bf9aadcd40f1de79423eac9b10b958d9592948d94919260808501928601918190849084905b83811015610e05578181015183820152602001610ded565b50505050905090810190601f168015610e325780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a160006060306001600160a01b0316888a6040516020018083805190602001908083835b60208310610e835780518252601f199092019160209182019101610e64565b6001836020036101000a038019825116818451168082178552505050505050905001826001600160a01b03166001600160a01b031660601b8152601401925050506040516020818303038152906040526040518082805190602001908083835b60208310610f025780518252601f199092019160209182019101610ee3565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610f64576040519150601f19603f3d011682016040523d82523d6000602084013e610f69565b606091505b509150915081610fc0576040805162461bcd60e51b815260206004820152601c60248201527f46756e6374696f6e2063616c6c206e6f74207375636365737366756c00000000604482015290519081900360640190fd5b98975050505050505050565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020610ff881610ba4610a58565b600a9061105e5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5060008381526002602052604080822080546001600160a01b0319166001600160a01b0386169081179091559051909185917f8643692ae1c12ec91fa18e50b82ed93fa314f580999a236824db6de9ae0d839b9190a3505050565b604051806040016040528060018152602001603160f81b81525081565b600b5490565b6000818152600160205260409020600201545b919050565b6001600160a01b03166000908152600c602052604090205490565b60008281526001602052604090206002015461112d90610ba4610a58565b6111685760405162461bcd60e51b815260040180806020018281038252602f815260200180613f78602f913960400191505060405180910390fd5b611172828261263f565b5050565b6008546001600160a01b031690565b4690565b611191610a58565b6001600160a01b0316816001600160a01b0316146111e05760405162461bcd60e51b815260040180806020018281038252602f815260200180614286602f913960400191505060405180910390fd5b61117282826126ae565b606061123361122e84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061271d92505050565b612798565b905060006112548260028151811061124757fe5b602002602001015161291a565b6112796112748460088151811061126757fe5b6020026020010151612a62565b612b2c565b6112898460098151811061124757fe5b6040516020018084815260200183805190602001908083835b602083106112c15780518252601f1990920191602091820191016112a2565b51815160209384036101000a6000190180199092169116179052920193845250604080518085038152938201815283519382019390932060008181526006909252929020549194505060ff1615915061134d90505760405162461bcd60e51b81526004018080602001828103825260288152602001806142096028913960400191505060405180910390fd5b6000818152600660208190526040909120805460ff19166001179055825160609161138a9161122e9161138591879190811061126757fe5b61271d565b9050611394613e54565b6113b1826003815181106113a457fe5b6020026020010151612798565b6113c18560098151811061124757fe5b815181106113cb57fe5b6020026020010151905060006113fc6113e383612798565b6000815181106113ef57fe5b6020026020010151612c9f565b6001600160a01b0380821660009081526004602052604090205491925016806114565760405162461bcd60e51b81526004018080602001828103825260228152602001806140af6022913960400191505060405180910390fd5b6001600160a01b03808216600090815260056020908152604080832054835260029091529020548751911690611493908890600890811061124757fe5b63ffffffff1916156114d65760405162461bcd60e51b815260040180806020018281038252602581526020018061408a6025913960400191505060405180910390fd5b61151e6114e98860068151811061126757fe5b6114f98960088151811061126757fe5b6115098a60078151811061126757fe5b6115198b60058151811061124757fe5b612d2f565b61156f576040805162461bcd60e51b815260206004820152601f60248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f50524f4f4600604482015290519081900360640190fd5b6115dd6115828860028151811061124757fe5b6115928960038151811061124757fe5b6115a28a60048151811061124757fe5b60001b6115b58b60058151811061124757fe5b60001b6115c88c60008151811061124757fe5b6115d88d60018151811061126757fe5b612f76565b50806001600160a01b0316638274664f6115f5610a58565b846115ff886130bf565b6040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561167b578181015183820152602001611663565b50505050905090810190601f1680156116a85780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b1580156116c957600080fd5b505af11580156116dd573d6000803e3d6000fd5b50505050505050505050505050565b6116f581610a68565b50565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b01902081565b60066020526000908152604090205460ff1681565b600061173e81610ba4610a58565b600a906117a45760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506116f56040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b81525061312d565b60006117e481610ba4610a58565b600a9061184a5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5050600780546001600160a01b0319166001600160a01b0392909216919091179055565b6004602052600090815260409020546001600160a01b031681565b604080516826a0a82faa27a5a2a760b91b8152905190819003600901902081565b60008281526001602052604081206118c8908363ffffffff6131e916565b90505b92915050565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b0190206118fd81610ba4610a58565b600a906119635760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b03848116600090815260036020526040902054161580156119a457506001600160a01b0383811660009081526004602052604090205416155b6119f5576040805162461bcd60e51b815260206004820181905260248201527f526f6f74436861696e4d616e616765723a20414c52454144595f4d4150504544604482015290519081900360640190fd5b611a008484846131f5565b50505050565b60008281526001602052604081206118c8908363ffffffff61348416565b600081565b6000611a3781610ba4610a58565b600a90611a9d5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506116f56040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613499565b6000611add81610ba4610a58565b600a90611b435760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5050600880546001600160a01b0319166001600160a01b0392909216919091179055565b60005460ff1615611bb0576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b611be16040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613537565b611c126040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613499565b611c1d600082611168565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020611c479082611168565b506000805460ff19166001179055565b60008181526001602052604081206118cb90613589565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020611cb281610ba4610a58565b600a90611d185760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b0380851660009081526003602081815260408084205488861685526004835281852054861680865293909252909220549183169290911615611d8e576001600160a01b038116600090815260036020908152604080832080546001600160a01b031916905560059091528120555b6001600160a01b038281166000908152600460205260409020541615611dd5576001600160a01b038216600090815260046020526040902080546001600160a01b03191690555b611de08686866131f5565b505050505050565b600082815260016020526040902060020154611e0690610ba4610a58565b6111e05760405162461bcd60e51b81526004018080602001828103825260308152602001806140f96030913960400191505060405180910390fd5b604080516611115413d4d25560ca1b8152905190819003600701902081565b6000611e6e81610ba4610a58565b600a90611ed45760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b038216611f1a5760405162461bcd60e51b815260040180806020018281038252602d815260200180613fa7602d913960400191505060405180910390fd5b50600980546001600160a01b0319166001600160a01b0392909216919091179055565b6007546001600160a01b031690565b6001600160a01b03831673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee1415611fa85760405162461bcd60e51b81526004018080602001828103825260248152602001806141e56024913960400191505060405180910390fd5b611a00848484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061208e92505050565b60056020526000908152604090205481565b6002602052600090815260409020546001600160a01b031681565b6003602052600090815260409020546001600160a01b031681565b6000333014156120895760606000368080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505050503601516001600160a01b03169150610a659050565b503390565b6001600160a01b03808316600090815260056020908152604080832054600390925290912054909116158015906120c457508015155b6120ff5760405162461bcd60e51b81526004018080602001828103825260228152602001806140af6022913960400191505060405180910390fd5b6000818152600260205260409020546001600160a01b0316806121535760405162461bcd60e51b81526004018080602001828103825260248152602001806140176024913960400191505060405180910390fd5b6001600160a01b0385166121ae576040805162461bcd60e51b815260206004820152601e60248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f555345520000604482015290519081900360640190fd5b806001600160a01b031663e375b64e6121c5610a58565b8787876040518563ffffffff1660e01b815260040180856001600160a01b03166001600160a01b03168152602001846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561225c578181015183820152602001612244565b50505050905090810190601f1680156122895780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b1580156122ab57600080fd5b505af11580156122bf573d6000803e3d6000fd5b50505050606085858560405160200180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015612338578181015183820152602001612320565b50505050905090810190601f1680156123655780820380516001836020036101000a031916815260200191505b5060408051808303601f19018152828252600780546009546611115413d4d25560ca1b865284519586900390920185206020808701828152878701968752855160608901528551959d506001600160a01b039384169c506316f198319b5092909316985096508a955093608001919085019080838360005b838110156123f55781810151838201526020016123dd565b50505050905090810190601f1680156124225780820380516001836020036101000a031916815260200191505b5093505050506040516020818303038152906040526040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561249b578181015183820152602001612483565b50505050905090810190601f1680156124c85780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b1580156124e857600080fd5b505af11580156124fc573d6000803e3d6000fd5b50505050505050505050565b60006001600160a01b03861661254f5760405162461bcd60e51b81526004018080602001828103825260258152602001806141296025913960400191505060405180910390fd5b600161256261255d87613594565b613620565b83868660405160008152602001604052604051808581526020018460ff1660ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa1580156125bc573d6000803e3d6000fd5b505050602060405103516001600160a01b0316866001600160a01b031614905095945050505050565b6000828201838110156118c8576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600082815260016020526040902061265d908263ffffffff61366c16565b156111725761266a610a58565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b60008281526001602052604090206126cc908263ffffffff61368116565b15611172576126d9610a58565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612725613e54565b600082511161277b576040805162461bcd60e51b815260206004820152601f60248201527f524c505265616465723a20494e56414c49445f42595445535f4c454e47544800604482015290519081900360640190fd5b506040805180820190915281518152602082810190820152919050565b60606127a382613696565b6127f4576040805162461bcd60e51b815260206004820152601860248201527f524c505265616465723a204954454d5f4e4f545f4c4953540000000000000000604482015290519081900360640190fd5b60006127ff836136c2565b905060608167ffffffffffffffff8111801561281a57600080fd5b5060405190808252806020026020018201604052801561285457816020015b612841613e54565b8152602001906001900390816128395790505b5090506000612866856020015161374e565b855190915081146128a85760405162461bcd60e51b81526004018080602001828103825260278152602001806142316027913960400191505060405180910390fd5b60006128b786602001516137e2565b60208701510190506000805b8581101561290e576128d48361374e565b91506040518060400160405280838152602001848152508582815181106128f757fe5b6020908102919091010152918101916001016128c3565b50929695505050505050565b600061292582613696565b15612977576040805162461bcd60e51b815260206004820181905260248201527f524c505265616465723a204445434f44494e475f4c4953545f41535f55494e54604482015290519081900360640190fd5b8151602110156129ce576040805162461bcd60e51b815260206004820152601e60248201527f524c505265616465723a20494e56414c49445f55494e545f4c454e4754480000604482015290519081900360640190fd5b60006129dd836020015161374e565b83519091508114612a1f5760405162461bcd60e51b81526004018080602001828103825260278152602001806142b56027913960400191505060405180910390fd5b6000612a2e84602001516137e2565b84516020808701518301805193945091849003929190831015612a5857826020036101000a820491505b5095945050505050565b60606000612a73836020015161374e565b83519091508114612ab55760405162461bcd60e51b81526004018080602001828103825260288152602001806140d16028913960400191505060405180910390fd5b6000612ac484602001516137e2565b845190915081900360608167ffffffffffffffff81118015612ae557600080fd5b506040519080825280601f01601f191660200182016040528015612b10576020820181803683370190505b5090506000816020019050612a58848860200151018285613845565b604080516020810190915260008152815160609190156118cb57600080612b54600086613890565b60f81c90506001811480612b6b57508060ff166003145b15612bfa57600185516002020367ffffffffffffffff81118015612b8e57600080fd5b506040519080825280601f01601f191660200182016040528015612bb9576020820181803683370190505b5092506000612bc9600187613890565b90508084600081518110612bd957fe5b60200101906001600160f81b031916908160001a9053506001925050612c4b565b600285516002020367ffffffffffffffff81118015612c1857600080fd5b506040519080825280601f01601f191660200182016040528015612c43576020820181803683370190505b509250600091505b60ff82165b8351811015612c9657612c6b8360ff16820360020187613890565b848281518110612c7757fe5b60200101906001600160f81b031916908160001a905350600101612c50565b50505092915050565b6000612caa82613696565b15612ce65760405162461bcd60e51b815260040180806020018281038252602381526020018061417a6023913960400191505060405180910390fd5b8151601514612d265760405162461bcd60e51b81526004018080602001828103825260218152602001806142dc6021913960400191505060405180910390fd5b6118cb8261291a565b6000612d39613e54565b612d428461271d565b90506060612d4f82612798565b905060608085600082612d618b612b2c565b9050805160001415612d7d576000975050505050505050612f6e565b60005b8651811015612f65578151831115612da357600098505050505050505050612f6e565b612dbf878281518110612db257fe5b60200260200101516130bf565b955085805190602001208414612de057600098505050505050505050612f6e565b612def8782815181106113a457fe5b9450845160111415612eac578151831415612e4b578c80519060200120612e1c8660108151811061126757fe5b805190602001201415612e3a57600198505050505050505050612f6e565b600098505050505050505050612f6e565b6000828481518110612e5957fe5b016020015160f81c90506010811115612e7e5760009950505050505050505050612f6e565b612e9d868260ff1681518110612e9057fe5b60200260200101516138ed565b94505060019290920191612f5d565b845160021415612e3a576000612ed2612ecb8760008151811061126757fe5b848661398c565b905082518185011415612f28578d80519060200120612ef78760018151811061126757fe5b805190602001201415612f165760019950505050505050505050612f6e565b60009950505050505050505050612f6e565b80612f3f5760009950505050505050505050612f6e565b8084019350612f5486600181518110612e9057fe5b9450612f5d9050565b600101612d80565b50505050505050505b949350505050565b600854604080516320a9cea560e11b81526004810185905290516000928392839283926001600160a01b0316916341539d4a9160248083019260a0929190829003018186803b158015612fc857600080fd5b505afa158015612fdc573d6000803e3d6000fd5b505050506040513d60a0811015612ff257600080fd5b5080516020820151606090920151909450909250905061306161301b8b8463ffffffff613a6b16565b6040805160208082018f90528183018e9052606082018d905260808083018d90528351808403909101815260a0909201909252805191012090858863ffffffff613aad16565b6130b2576040805162461bcd60e51b815260206004820181905260248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f484541444552604482015290519081900360640190fd5b9998505050505050505050565b606080826000015167ffffffffffffffff811180156130dd57600080fd5b506040519080825280601f01601f191660200182016040528015613108576020820181803683370190505b50905060008160200190506131268460200151828660000151613845565b5092915050565b6040518060800160405280604f815260200161403b604f913980516020918201208251838301206040805180820190915260018152603160f81b930192909252907fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc630613198611185565b604080516020808201979097528082019590955260608501939093526001600160a01b03909116608084015260a0808401919091528151808403909101815260c090920190528051910120600b5550565b60006118c88383613c03565b6000818152600260205260409020546001600160a01b03166132485760405162461bcd60e51b815260040180806020018281038252602a815260200180613f07602a913960400191505060405180910390fd5b6001600160a01b03808416600081815260036020908152604080832080549588166001600160a01b031996871681179091558084526004835281842080549096168517909555838352600590915280822085905551849392917f9e651a8866fbea043e911d816ec254b0e3c992c06fff32d605e72362d6023bd991a4604080516001600160a01b0380861660208084019190915281861683850152606083810186905284518085038201815260808086018088526007546009546826a0a82faa27a5a2a760b91b9092528851978890036089018820888701818152898b019a8b528551968a019690965284519499918816986316f1983198939093169690958a9590949293909201919085019080838360005b8381101561337357818101518382015260200161335b565b50505050905090810190601f1680156133a05780820380516001836020036101000a031916815260200191505b5093505050506040516020818303038152906040526040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015613419578181015183820152602001613401565b50505050905090810190601f1680156134465780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b15801561346657600080fd5b505af115801561347a573d6000803e3d6000fd5b5050505050505050565b60006118c8836001600160a01b038416613c67565b806040516020018082805190602001908083835b602083106134cc5780518252601f1990920191602091820191016134ad565b51815160209384036101000a60001901801990921691161790527f3a20494e53554646494349454e545f5045524d495353494f4e530000000000009190930190815260408051808303600519018152601a909201905280516111729550600a94509201919050613e6e565b60005460ff1615613580576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b611c478161312d565b60006118cb82613c7f565b6000604051806080016040528060438152602001613fd460439139805190602001208260000151836020015184604001518051906020012060405160200180858152602001848152602001836001600160a01b03166001600160a01b03168152602001828152602001945050505050604051602081830303815290604052805190602001209050919050565b600061362a6110d6565b82604051602001808061190160f01b81525060020183815260200182815260200192505050604051602081830303815290604052805190602001209050919050565b60006118c8836001600160a01b038416613c83565b60006118c8836001600160a01b038416613ccd565b6020810151805160009190821a9060c08210156136b8576000925050506110ef565b5060019392505050565b6000806000905060006136d884602001516137e2565b602085015185519181019250015b80821015613745576136f78261374e565b820191508082111561373a5760405162461bcd60e51b815260040180806020018281038252602c81526020018061414e602c913960400191505060405180910390fd5b6001909201916136e6565b50909392505050565b80516000908190811a60808110156137695760019150613126565b60b881101561377e57607e1981019150613126565b60c08110156137ab5760b78103600185019450806020036101000a85510460018201810193505050613126565b60f88110156137c05760be1981019150613126565b60019390930151602084900360f7016101000a900490920160f5190192915050565b8051600090811a60808110156137fc5760009150506110ef565b60b8811080613817575060c08110801590613817575060f881105b156138265760019150506110ef565b60c081101561383a5760b5190190506110ef565b60f5190190506110ef565b8061384f57610b64565b5b6020811061386f578251825260209283019290910190601f1901613850565b915181516020939093036101000a6000190180199091169216919091179052565b600060028306156138c15760108260028504815181106138ac57fe5b016020015160f81c816138bb57fe5b066138e3565b60108260028504815181106138d257fe5b016020015160f81c816138e157fe5b045b60f81b9392505050565b6000806138fd836020015161374e565b8351909150811461393f5760405162461bcd60e51b815260040180806020018281038252602e815260200180614258602e913960400191505060405180910390fd5b825160211461397f5760405162461bcd60e51b8152600401808060200182810382526025815260200180613f536025913960400191505060405180910390fd5b5050602001516001015190565b600080606061399a86612b2c565b90506060815167ffffffffffffffff811180156139b657600080fd5b506040519080825280601f01601f1916602001820160405280156139e1576020820181803683370190505b509050845b82518601811015613a3b5760008782815181106139ff57fe5b602001015160f81c60f81b9050808388840381518110613a1b57fe5b60200101906001600160f81b031916908160001a905350506001016139e6565b50808051906020012082805190602001201415613a5b5781519250613a60565b600092505b509095945050505050565b60006118c883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250613d93565b60006020825181613aba57fe5b0615613b04576040805162461bcd60e51b8152602060048201526014602482015273092dcecc2d8d2c840e0e4dedecc40d8cadccee8d60631b604482015290519081900360640190fd5b60006020835181613b1157fe5b0490508060020a8510613b63576040805162461bcd60e51b81526020600482015260156024820152744c65616620696e64657820697320746f6f2062696760581b604482015290519081900360640190fd5b60008660205b85518111613bf55785810151925060028806613bb55781836040516020018083815260200182815260200192505050604051602081830303815290604052805190602001209150613be7565b828260405160200180838152602001828152602001925050506040516020818303038152906040528051906020012091505b600288049750602001613b69565b509094149695505050505050565b81546000908210613c455760405162461bcd60e51b8152600401808060200182810382526022815260200180613f316022913960400191505060405180910390fd5b826000018281548110613c5457fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000613c8f8383613c67565b613cc5575081546001818101845560008481526020808220909301849055845484825282860190935260409020919091556118cb565b5060006118cb565b60008181526001830160205260408120548015613d895783546000198083019190810190600090879083908110613d0057fe5b9060005260206000200154905080876000018481548110613d1d57fe5b600091825260208083209091019290925582815260018981019092526040902090840190558654879080613d4d57fe5b600190038181906000526020600020016000905590558660010160008781526020019081526020016000206000905560019450505050506118cb565b60009150506118cb565b60008184841115613e225760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015613de7578181015183820152602001613dcf565b50505050905090810190601f168015613e145780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60405180606001604052806000815260200160006001600160a01b03168152602001606081525090565b604051806040016040528060008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10613eaf57805160ff1916838001178555613edc565b82800160010185558215613edc579182015b82811115613edc578251825591602001919060010190613ec1565b50613ee8929150613eec565b5090565b610a6591905b80821115613ee85760008155600101613ef256fe526f6f74436861696e4d616e616765723a20544f4b454e5f545950455f4e4f545f535550504f52544544456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473524c505265616465723a20494e56414c49445f55494e545f5354524943545f4c454e475448416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e74526f6f74436861696e4d616e616765723a20494e56414c49445f4348494c445f434841494e5f414444524553534d6574615472616e73616374696f6e2875696e74323536206e6f6e63652c616464726573732066726f6d2c62797465732066756e6374696f6e5369676e617475726529526f6f74436861696e4d616e616765723a20494e56414c49445f544f4b454e5f54595045454950373132446f6d61696e28737472696e67206e616d652c737472696e672076657273696f6e2c6164647265737320766572696679696e67436f6e74726163742c627974657333322073616c7429526f6f74436861696e4d616e616765723a20494e56414c49445f4252414e43485f4d41534b526f6f74436861696e4d616e616765723a20544f4b454e5f4e4f545f4d4150504544524c505265616465723a2042595445535f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b654e61746976654d6574615472616e73616374696f6e3a20494e56414c49445f5349474e4552524c505265616465723a204e554d5f4954454d535f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a204445434f44494e475f4c4953545f41535f41444452455353526f6f74436861696e4d616e616765723a2045544845525f5452414e534645525f4641494c45445369676e657220616e64207369676e617475726520646f206e6f74206d61746368526f6f74436861696e4d616e616765723a20494e56414c49445f524f4f545f544f4b454e526f6f74436861696e4d616e616765723a20455849545f414c52454144595f50524f434553534544524c505265616465723a204c4953545f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a2055494e545f5354524943545f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66524c505265616465723a2055494e545f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a20494e56414c49445f414444524553535f4c454e475448a164736f6c6343000606000a"; - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "address"; - readonly name: "userAddress"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "address payable"; - readonly name: "relayerAddress"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "bytes"; - readonly name: "functionSignature"; - readonly type: "bytes"; - }]; - readonly name: "MetaTransactionExecuted"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "tokenType"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "predicateAddress"; - readonly type: "address"; - }]; - readonly name: "PredicateRegistered"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "previousAdminRole"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "newAdminRole"; - readonly type: "bytes32"; - }]; - readonly name: "RoleAdminChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "sender"; - readonly type: "address"; - }]; - readonly name: "RoleGranted"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "sender"; - readonly type: "address"; - }]; - readonly name: "RoleRevoked"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "rootToken"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "childToken"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "tokenType"; - readonly type: "bytes32"; - }]; - readonly name: "TokenMapped"; - readonly type: "event"; - }, { - readonly inputs: readonly []; - readonly name: "DEFAULT_ADMIN_ROLE"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "DEPOSIT"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "ERC712_VERSION"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "ETHER_ADDRESS"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "MAPPER_ROLE"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "MAP_TOKEN"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "checkpointManagerAddress"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "childChainManagerAddress"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly name: "childToRootToken"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "rootToken"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "childToken"; - readonly type: "address"; - }]; - readonly name: "cleanMapToken"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "user"; - readonly type: "address"; - }]; - readonly name: "depositEtherFor"; - readonly outputs: readonly []; - readonly stateMutability: "payable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "user"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "rootToken"; - readonly type: "address"; - }, { - readonly internalType: "bytes"; - readonly name: "depositData"; - readonly type: "bytes"; - }]; - readonly name: "depositFor"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "userAddress"; - readonly type: "address"; - }, { - readonly internalType: "bytes"; - readonly name: "functionSignature"; - readonly type: "bytes"; - }, { - readonly internalType: "bytes32"; - readonly name: "sigR"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes32"; - readonly name: "sigS"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint8"; - readonly name: "sigV"; - readonly type: "uint8"; - }]; - readonly name: "executeMetaTransaction"; - readonly outputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "payable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes"; - readonly name: "inputData"; - readonly type: "bytes"; - }]; - readonly name: "exit"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "getChainId"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "pure"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "getDomainSeperator"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "user"; - readonly type: "address"; - }]; - readonly name: "getNonce"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "nonce"; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }]; - readonly name: "getRoleAdmin"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "index"; - readonly type: "uint256"; - }]; - readonly name: "getRoleMember"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }]; - readonly name: "getRoleMemberCount"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "grantRole"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "hasRole"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "_owner"; - readonly type: "address"; - }]; - readonly name: "initialize"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "initializeEIP712"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "rootToken"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "childToken"; - readonly type: "address"; - }, { - readonly internalType: "bytes32"; - readonly name: "tokenType"; - readonly type: "bytes32"; - }]; - readonly name: "mapToken"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly name: "processedExits"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "tokenType"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "predicateAddress"; - readonly type: "address"; - }]; - readonly name: "registerPredicate"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "rootToken"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "childToken"; - readonly type: "address"; - }, { - readonly internalType: "bytes32"; - readonly name: "tokenType"; - readonly type: "bytes32"; - }]; - readonly name: "remapToken"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "renounceRole"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "revokeRole"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly name: "rootToChildToken"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "newCheckpointManager"; - readonly type: "address"; - }]; - readonly name: "setCheckpointManager"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "newChildChainManager"; - readonly type: "address"; - }]; - readonly name: "setChildChainManagerAddress"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "newStateSender"; - readonly type: "address"; - }]; - readonly name: "setStateSender"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "setupContractId"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "stateSenderAddress"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly name: "tokenToType"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly name: "typeToPredicate"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly stateMutability: "payable"; - readonly type: "receive"; - }]; - static createInterface(): RootChainManagerInterface; - static connect(address: string, runner?: ContractRunner | null): RootChainManager; -} -export {}; -//# sourceMappingURL=RootChainManager__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager__factory.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager__factory.d.ts.map deleted file mode 100644 index 3aecf449..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"RootChainManager__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,gBAAgB,EAChB,yBAAyB,EAC1B,MAAM,yFAAyF,CAAC;AAqxBjG,aAAK,iCAAiC,GAClC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,yBAA0B,SAAQ,eAAe;gBAChD,GAAG,IAAI,EAAE,iCAAiC;IAQ7C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,yBAAyB;IAI1E,MAAM,CAAC,QAAQ,CAAC,QAAQ,8mjCAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,yBAAyB;IAGnD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,gBAAgB;CAGpB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager__factory.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager__factory.js deleted file mode 100644 index 731f8549..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager__factory.js +++ /dev/null @@ -1,817 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.RootChainManager__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "userAddress", - type: "address", - }, - { - indexed: false, - internalType: "address payable", - name: "relayerAddress", - type: "address", - }, - { - indexed: false, - internalType: "bytes", - name: "functionSignature", - type: "bytes", - }, - ], - name: "MetaTransactionExecuted", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "tokenType", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "predicateAddress", - type: "address", - }, - ], - name: "PredicateRegistered", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - indexed: true, - internalType: "bytes32", - name: "previousAdminRole", - type: "bytes32", - }, - { - indexed: true, - internalType: "bytes32", - name: "newAdminRole", - type: "bytes32", - }, - ], - name: "RoleAdminChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "sender", - type: "address", - }, - ], - name: "RoleGranted", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "sender", - type: "address", - }, - ], - name: "RoleRevoked", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "rootToken", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "childToken", - type: "address", - }, - { - indexed: true, - internalType: "bytes32", - name: "tokenType", - type: "bytes32", - }, - ], - name: "TokenMapped", - type: "event", - }, - { - inputs: [], - name: "DEFAULT_ADMIN_ROLE", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "DEPOSIT", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "ERC712_VERSION", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "ETHER_ADDRESS", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "MAPPER_ROLE", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "MAP_TOKEN", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "checkpointManagerAddress", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "childChainManagerAddress", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - name: "childToRootToken", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "rootToken", - type: "address", - }, - { - internalType: "address", - name: "childToken", - type: "address", - }, - ], - name: "cleanMapToken", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "user", - type: "address", - }, - ], - name: "depositEtherFor", - outputs: [], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "user", - type: "address", - }, - { - internalType: "address", - name: "rootToken", - type: "address", - }, - { - internalType: "bytes", - name: "depositData", - type: "bytes", - }, - ], - name: "depositFor", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "userAddress", - type: "address", - }, - { - internalType: "bytes", - name: "functionSignature", - type: "bytes", - }, - { - internalType: "bytes32", - name: "sigR", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "sigS", - type: "bytes32", - }, - { - internalType: "uint8", - name: "sigV", - type: "uint8", - }, - ], - name: "executeMetaTransaction", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes", - name: "inputData", - type: "bytes", - }, - ], - name: "exit", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "getChainId", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "pure", - type: "function", - }, - { - inputs: [], - name: "getDomainSeperator", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "user", - type: "address", - }, - ], - name: "getNonce", - outputs: [ - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - ], - name: "getRoleAdmin", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - 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: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "grantRole", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "hasRole", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_owner", - type: "address", - }, - ], - name: "initialize", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "initializeEIP712", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "rootToken", - type: "address", - }, - { - internalType: "address", - name: "childToken", - type: "address", - }, - { - internalType: "bytes32", - name: "tokenType", - type: "bytes32", - }, - ], - name: "mapToken", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - name: "processedExits", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "tokenType", - type: "bytes32", - }, - { - internalType: "address", - name: "predicateAddress", - type: "address", - }, - ], - name: "registerPredicate", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "rootToken", - type: "address", - }, - { - internalType: "address", - name: "childToken", - type: "address", - }, - { - internalType: "bytes32", - name: "tokenType", - type: "bytes32", - }, - ], - name: "remapToken", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "renounceRole", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "revokeRole", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - name: "rootToChildToken", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "newCheckpointManager", - type: "address", - }, - ], - name: "setCheckpointManager", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "newChildChainManager", - type: "address", - }, - ], - name: "setChildChainManagerAddress", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "newStateSender", - type: "address", - }, - ], - name: "setStateSender", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "setupContractId", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "stateSenderAddress", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - name: "tokenToType", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - name: "typeToPredicate", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - stateMutability: "payable", - type: "receive", - }, -]; -const _bytecode = "0x60806040526000805460ff1916905534801561001a57600080fd5b506143098061002a6000396000f3fe6080604052600436106102295760003560e01c8063886a69ba11610123578063cf1d21c0116100ab578063e2c49de11161006f578063e2c49de11461091d578063e3dec8fb14610932578063e43009a6146109c8578063e66f9603146109fb578063ea60c7c414610a2557610240565b8063cf1d21c014610844578063d233a3c714610859578063d547741f1461089c578063d81c8e52146108d5578063dc993a23146108ea57610240565b8063a217fddf116100f2578063a217fddf1461078a578063b4b4f63e1461079f578063bc08452b146107b4578063c4d66de8146107e7578063ca15c8731461081a57610240565b8063886a69ba146106c95780639010d07c146106de5780639173b1391461070e57806391d148541461075157610240565b80633138b6f1116101b1578063568b80b511610175578063568b80b5146105fb578063607f2d4214610610578063630fcbfb1461064e5780636cb136b0146106635780636e86b7701461069657610240565b80633138b6f1146104f55780633408e4701461050a57806336568abe1461051f5780633805550f146105585780634faa8a26146105d557610240565b80630f7e5970116101f85780630f7e59701461042357806320379ee514610438578063248a9ca31461045f5780632d0335ab146104895780632f2ff15d146104bc57610240565b806304967702146102455780630c3894bb146102765780630c53c51c146102b15780630c598220146103ea57610240565b366102405761023e610239610a58565b610a68565b005b600080fd5b34801561025157600080fd5b5061025a610b69565b604080516001600160a01b039092168252519081900360200190f35b34801561028257600080fd5b5061023e6004803603604081101561029957600080fd5b506001600160a01b0381358116916020013516610b78565b610375600480360360a08110156102c757600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156102f257600080fd5b82018360208201111561030457600080fd5b8035906020019184600183028401116401000000008311171561032657600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550508235935050506020810135906040013560ff16610cc9565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103af578181015183820152602001610397565b50505050905090810190601f1680156103dc5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156103f657600080fd5b5061023e6004803603604081101561040d57600080fd5b50803590602001356001600160a01b0316610fcc565b34801561042f57600080fd5b506103756110b9565b34801561044457600080fd5b5061044d6110d6565b60408051918252519081900360200190f35b34801561046b57600080fd5b5061044d6004803603602081101561048257600080fd5b50356110dc565b34801561049557600080fd5b5061044d600480360360208110156104ac57600080fd5b50356001600160a01b03166110f4565b3480156104c857600080fd5b5061023e600480360360408110156104df57600080fd5b50803590602001356001600160a01b031661110f565b34801561050157600080fd5b5061025a611176565b34801561051657600080fd5b5061044d611185565b34801561052b57600080fd5b5061023e6004803603604081101561054257600080fd5b50803590602001356001600160a01b0316611189565b34801561056457600080fd5b5061023e6004803603602081101561057b57600080fd5b81019060208101813564010000000081111561059657600080fd5b8201836020820111156105a857600080fd5b803590602001918460018302840111640100000000831117156105ca57600080fd5b5090925090506111ea565b61023e600480360360208110156105eb57600080fd5b50356001600160a01b03166116ec565b34801561060757600080fd5b5061044d6116f8565b34801561061c57600080fd5b5061063a6004803603602081101561063357600080fd5b503561171b565b604080519115158252519081900360200190f35b34801561065a57600080fd5b5061023e611730565b34801561066f57600080fd5b5061023e6004803603602081101561068657600080fd5b50356001600160a01b03166117d6565b3480156106a257600080fd5b5061025a600480360360208110156106b957600080fd5b50356001600160a01b031661186e565b3480156106d557600080fd5b5061044d611889565b3480156106ea57600080fd5b5061025a6004803603604081101561070157600080fd5b50803590602001356118aa565b34801561071a57600080fd5b5061023e6004803603606081101561073157600080fd5b506001600160a01b038135811691602081013590911690604001356118d1565b34801561075d57600080fd5b5061063a6004803603604081101561077457600080fd5b50803590602001356001600160a01b0316611a06565b34801561079657600080fd5b5061044d611a24565b3480156107ab57600080fd5b5061023e611a29565b3480156107c057600080fd5b5061023e600480360360208110156107d757600080fd5b50356001600160a01b0316611acf565b3480156107f357600080fd5b5061023e6004803603602081101561080a57600080fd5b50356001600160a01b0316611b67565b34801561082657600080fd5b5061044d6004803603602081101561083d57600080fd5b5035611c57565b34801561085057600080fd5b5061025a611c6e565b34801561086557600080fd5b5061023e6004803603606081101561087c57600080fd5b506001600160a01b03813581169160208101359091169060400135611c86565b3480156108a857600080fd5b5061023e600480360360408110156108bf57600080fd5b50803590602001356001600160a01b0316611de8565b3480156108e157600080fd5b5061044d611e41565b3480156108f657600080fd5b5061023e6004803603602081101561090d57600080fd5b50356001600160a01b0316611e60565b34801561092957600080fd5b5061025a611f3d565b34801561093e57600080fd5b5061023e6004803603606081101561095557600080fd5b6001600160a01b03823581169260208101359091169181019060608101604082013564010000000081111561098957600080fd5b82018360208201111561099b57600080fd5b803590602001918460018302840111640100000000831117156109bd57600080fd5b509092509050611f4c565b3480156109d457600080fd5b5061044d600480360360208110156109eb57600080fd5b50356001600160a01b0316611fe9565b348015610a0757600080fd5b5061025a60048036036020811015610a1e57600080fd5b5035611ffb565b348015610a3157600080fd5b5061025a60048036036020811015610a4857600080fd5b50356001600160a01b0316612016565b6000610a62612031565b90505b90565b604080513460208083019190915282518083039091018152908201909152610aa58273eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee8361208e565b7fa1829a9003092132f585b6ccdd167c19fe9774dbdea4260287e8a8e8ca8185d7546000908152600260205260408082205490516001600160a01b039091169034908381818185875af1925050503d8060008114610b1f576040519150601f19603f3d011682016040523d82523d6000602084013e610b24565b606091505b5050905080610b645760405162461bcd60e51b815260040180806020018281038252602781526020018061419d6027913960400191505060405180910390fd5b505050565b6009546001600160a01b031681565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020610ba981610ba4610a58565b611a06565b600a90610c495760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b820191906000526020600020905b815481529060010190602001808311610c1d57829003601f168201915b50509250505060405180910390fd5b506001600160a01b03808416600081815260036020908152604080832080546001600160a01b0319908116909155948716808452600483528184208054909616909555838352600590915280822082905551909291907f9e651a8866fbea043e911d816ec254b0e3c992c06fff32d605e72362d6023bd9908490a4505050565b6060610cd3613e2a565b50604080516060810182526001600160a01b0388166000818152600c602090815290849020548352820152908101869052610d118782878787612508565b610d4c5760405162461bcd60e51b81526004018080602001828103825260218152602001806141c46021913960400191505060405180910390fd5b6001600160a01b0387166000908152600c6020526040902054610d7690600163ffffffff6125e516565b6001600160a01b0388166000818152600c602090815260408083209490945583519283523383820181905260609484018581528b51958501959095528a517f5845892132946850460bff5a0083f71031bc5bf9aadcd40f1de79423eac9b10b958d9592948d94919260808501928601918190849084905b83811015610e05578181015183820152602001610ded565b50505050905090810190601f168015610e325780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a160006060306001600160a01b0316888a6040516020018083805190602001908083835b60208310610e835780518252601f199092019160209182019101610e64565b6001836020036101000a038019825116818451168082178552505050505050905001826001600160a01b03166001600160a01b031660601b8152601401925050506040516020818303038152906040526040518082805190602001908083835b60208310610f025780518252601f199092019160209182019101610ee3565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610f64576040519150601f19603f3d011682016040523d82523d6000602084013e610f69565b606091505b509150915081610fc0576040805162461bcd60e51b815260206004820152601c60248201527f46756e6374696f6e2063616c6c206e6f74207375636365737366756c00000000604482015290519081900360640190fd5b98975050505050505050565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020610ff881610ba4610a58565b600a9061105e5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5060008381526002602052604080822080546001600160a01b0319166001600160a01b0386169081179091559051909185917f8643692ae1c12ec91fa18e50b82ed93fa314f580999a236824db6de9ae0d839b9190a3505050565b604051806040016040528060018152602001603160f81b81525081565b600b5490565b6000818152600160205260409020600201545b919050565b6001600160a01b03166000908152600c602052604090205490565b60008281526001602052604090206002015461112d90610ba4610a58565b6111685760405162461bcd60e51b815260040180806020018281038252602f815260200180613f78602f913960400191505060405180910390fd5b611172828261263f565b5050565b6008546001600160a01b031690565b4690565b611191610a58565b6001600160a01b0316816001600160a01b0316146111e05760405162461bcd60e51b815260040180806020018281038252602f815260200180614286602f913960400191505060405180910390fd5b61117282826126ae565b606061123361122e84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061271d92505050565b612798565b905060006112548260028151811061124757fe5b602002602001015161291a565b6112796112748460088151811061126757fe5b6020026020010151612a62565b612b2c565b6112898460098151811061124757fe5b6040516020018084815260200183805190602001908083835b602083106112c15780518252601f1990920191602091820191016112a2565b51815160209384036101000a6000190180199092169116179052920193845250604080518085038152938201815283519382019390932060008181526006909252929020549194505060ff1615915061134d90505760405162461bcd60e51b81526004018080602001828103825260288152602001806142096028913960400191505060405180910390fd5b6000818152600660208190526040909120805460ff19166001179055825160609161138a9161122e9161138591879190811061126757fe5b61271d565b9050611394613e54565b6113b1826003815181106113a457fe5b6020026020010151612798565b6113c18560098151811061124757fe5b815181106113cb57fe5b6020026020010151905060006113fc6113e383612798565b6000815181106113ef57fe5b6020026020010151612c9f565b6001600160a01b0380821660009081526004602052604090205491925016806114565760405162461bcd60e51b81526004018080602001828103825260228152602001806140af6022913960400191505060405180910390fd5b6001600160a01b03808216600090815260056020908152604080832054835260029091529020548751911690611493908890600890811061124757fe5b63ffffffff1916156114d65760405162461bcd60e51b815260040180806020018281038252602581526020018061408a6025913960400191505060405180910390fd5b61151e6114e98860068151811061126757fe5b6114f98960088151811061126757fe5b6115098a60078151811061126757fe5b6115198b60058151811061124757fe5b612d2f565b61156f576040805162461bcd60e51b815260206004820152601f60248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f50524f4f4600604482015290519081900360640190fd5b6115dd6115828860028151811061124757fe5b6115928960038151811061124757fe5b6115a28a60048151811061124757fe5b60001b6115b58b60058151811061124757fe5b60001b6115c88c60008151811061124757fe5b6115d88d60018151811061126757fe5b612f76565b50806001600160a01b0316638274664f6115f5610a58565b846115ff886130bf565b6040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561167b578181015183820152602001611663565b50505050905090810190601f1680156116a85780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b1580156116c957600080fd5b505af11580156116dd573d6000803e3d6000fd5b50505050505050505050505050565b6116f581610a68565b50565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b01902081565b60066020526000908152604090205460ff1681565b600061173e81610ba4610a58565b600a906117a45760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506116f56040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b81525061312d565b60006117e481610ba4610a58565b600a9061184a5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5050600780546001600160a01b0319166001600160a01b0392909216919091179055565b6004602052600090815260409020546001600160a01b031681565b604080516826a0a82faa27a5a2a760b91b8152905190819003600901902081565b60008281526001602052604081206118c8908363ffffffff6131e916565b90505b92915050565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b0190206118fd81610ba4610a58565b600a906119635760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b03848116600090815260036020526040902054161580156119a457506001600160a01b0383811660009081526004602052604090205416155b6119f5576040805162461bcd60e51b815260206004820181905260248201527f526f6f74436861696e4d616e616765723a20414c52454144595f4d4150504544604482015290519081900360640190fd5b611a008484846131f5565b50505050565b60008281526001602052604081206118c8908363ffffffff61348416565b600081565b6000611a3781610ba4610a58565b600a90611a9d5760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506116f56040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613499565b6000611add81610ba4610a58565b600a90611b435760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b5050600880546001600160a01b0319166001600160a01b0392909216919091179055565b60005460ff1615611bb0576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b611be16040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613537565b611c126040518060400160405280601081526020016f2937b7ba21b430b4b726b0b730b3b2b960811b815250613499565b611c1d600082611168565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020611c479082611168565b506000805460ff19166001179055565b60008181526001602052604081206118cb90613589565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b604080516a4d41505045525f524f4c4560a81b8152905190819003600b019020611cb281610ba4610a58565b600a90611d185760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b0380851660009081526003602081815260408084205488861685526004835281852054861680865293909252909220549183169290911615611d8e576001600160a01b038116600090815260036020908152604080832080546001600160a01b031916905560059091528120555b6001600160a01b038281166000908152600460205260409020541615611dd5576001600160a01b038216600090815260046020526040902080546001600160a01b03191690555b611de08686866131f5565b505050505050565b600082815260016020526040902060020154611e0690610ba4610a58565b6111e05760405162461bcd60e51b81526004018080602001828103825260308152602001806140f96030913960400191505060405180910390fd5b604080516611115413d4d25560ca1b8152905190819003600701902081565b6000611e6e81610ba4610a58565b600a90611ed45760405162461bcd60e51b8152602060048201908152825460026000196101006001841615020190911604602483018190529091829160449091019084908015610c3a5780601f10610c0f57610100808354040283529160200191610c3a565b506001600160a01b038216611f1a5760405162461bcd60e51b815260040180806020018281038252602d815260200180613fa7602d913960400191505060405180910390fd5b50600980546001600160a01b0319166001600160a01b0392909216919091179055565b6007546001600160a01b031690565b6001600160a01b03831673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee1415611fa85760405162461bcd60e51b81526004018080602001828103825260248152602001806141e56024913960400191505060405180910390fd5b611a00848484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061208e92505050565b60056020526000908152604090205481565b6002602052600090815260409020546001600160a01b031681565b6003602052600090815260409020546001600160a01b031681565b6000333014156120895760606000368080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505050503601516001600160a01b03169150610a659050565b503390565b6001600160a01b03808316600090815260056020908152604080832054600390925290912054909116158015906120c457508015155b6120ff5760405162461bcd60e51b81526004018080602001828103825260228152602001806140af6022913960400191505060405180910390fd5b6000818152600260205260409020546001600160a01b0316806121535760405162461bcd60e51b81526004018080602001828103825260248152602001806140176024913960400191505060405180910390fd5b6001600160a01b0385166121ae576040805162461bcd60e51b815260206004820152601e60248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f555345520000604482015290519081900360640190fd5b806001600160a01b031663e375b64e6121c5610a58565b8787876040518563ffffffff1660e01b815260040180856001600160a01b03166001600160a01b03168152602001846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561225c578181015183820152602001612244565b50505050905090810190601f1680156122895780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b1580156122ab57600080fd5b505af11580156122bf573d6000803e3d6000fd5b50505050606085858560405160200180846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015612338578181015183820152602001612320565b50505050905090810190601f1680156123655780820380516001836020036101000a031916815260200191505b5060408051808303601f19018152828252600780546009546611115413d4d25560ca1b865284519586900390920185206020808701828152878701968752855160608901528551959d506001600160a01b039384169c506316f198319b5092909316985096508a955093608001919085019080838360005b838110156123f55781810151838201526020016123dd565b50505050905090810190601f1680156124225780820380516001836020036101000a031916815260200191505b5093505050506040516020818303038152906040526040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561249b578181015183820152602001612483565b50505050905090810190601f1680156124c85780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b1580156124e857600080fd5b505af11580156124fc573d6000803e3d6000fd5b50505050505050505050565b60006001600160a01b03861661254f5760405162461bcd60e51b81526004018080602001828103825260258152602001806141296025913960400191505060405180910390fd5b600161256261255d87613594565b613620565b83868660405160008152602001604052604051808581526020018460ff1660ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa1580156125bc573d6000803e3d6000fd5b505050602060405103516001600160a01b0316866001600160a01b031614905095945050505050565b6000828201838110156118c8576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600082815260016020526040902061265d908263ffffffff61366c16565b156111725761266a610a58565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b60008281526001602052604090206126cc908263ffffffff61368116565b15611172576126d9610a58565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612725613e54565b600082511161277b576040805162461bcd60e51b815260206004820152601f60248201527f524c505265616465723a20494e56414c49445f42595445535f4c454e47544800604482015290519081900360640190fd5b506040805180820190915281518152602082810190820152919050565b60606127a382613696565b6127f4576040805162461bcd60e51b815260206004820152601860248201527f524c505265616465723a204954454d5f4e4f545f4c4953540000000000000000604482015290519081900360640190fd5b60006127ff836136c2565b905060608167ffffffffffffffff8111801561281a57600080fd5b5060405190808252806020026020018201604052801561285457816020015b612841613e54565b8152602001906001900390816128395790505b5090506000612866856020015161374e565b855190915081146128a85760405162461bcd60e51b81526004018080602001828103825260278152602001806142316027913960400191505060405180910390fd5b60006128b786602001516137e2565b60208701510190506000805b8581101561290e576128d48361374e565b91506040518060400160405280838152602001848152508582815181106128f757fe5b6020908102919091010152918101916001016128c3565b50929695505050505050565b600061292582613696565b15612977576040805162461bcd60e51b815260206004820181905260248201527f524c505265616465723a204445434f44494e475f4c4953545f41535f55494e54604482015290519081900360640190fd5b8151602110156129ce576040805162461bcd60e51b815260206004820152601e60248201527f524c505265616465723a20494e56414c49445f55494e545f4c454e4754480000604482015290519081900360640190fd5b60006129dd836020015161374e565b83519091508114612a1f5760405162461bcd60e51b81526004018080602001828103825260278152602001806142b56027913960400191505060405180910390fd5b6000612a2e84602001516137e2565b84516020808701518301805193945091849003929190831015612a5857826020036101000a820491505b5095945050505050565b60606000612a73836020015161374e565b83519091508114612ab55760405162461bcd60e51b81526004018080602001828103825260288152602001806140d16028913960400191505060405180910390fd5b6000612ac484602001516137e2565b845190915081900360608167ffffffffffffffff81118015612ae557600080fd5b506040519080825280601f01601f191660200182016040528015612b10576020820181803683370190505b5090506000816020019050612a58848860200151018285613845565b604080516020810190915260008152815160609190156118cb57600080612b54600086613890565b60f81c90506001811480612b6b57508060ff166003145b15612bfa57600185516002020367ffffffffffffffff81118015612b8e57600080fd5b506040519080825280601f01601f191660200182016040528015612bb9576020820181803683370190505b5092506000612bc9600187613890565b90508084600081518110612bd957fe5b60200101906001600160f81b031916908160001a9053506001925050612c4b565b600285516002020367ffffffffffffffff81118015612c1857600080fd5b506040519080825280601f01601f191660200182016040528015612c43576020820181803683370190505b509250600091505b60ff82165b8351811015612c9657612c6b8360ff16820360020187613890565b848281518110612c7757fe5b60200101906001600160f81b031916908160001a905350600101612c50565b50505092915050565b6000612caa82613696565b15612ce65760405162461bcd60e51b815260040180806020018281038252602381526020018061417a6023913960400191505060405180910390fd5b8151601514612d265760405162461bcd60e51b81526004018080602001828103825260218152602001806142dc6021913960400191505060405180910390fd5b6118cb8261291a565b6000612d39613e54565b612d428461271d565b90506060612d4f82612798565b905060608085600082612d618b612b2c565b9050805160001415612d7d576000975050505050505050612f6e565b60005b8651811015612f65578151831115612da357600098505050505050505050612f6e565b612dbf878281518110612db257fe5b60200260200101516130bf565b955085805190602001208414612de057600098505050505050505050612f6e565b612def8782815181106113a457fe5b9450845160111415612eac578151831415612e4b578c80519060200120612e1c8660108151811061126757fe5b805190602001201415612e3a57600198505050505050505050612f6e565b600098505050505050505050612f6e565b6000828481518110612e5957fe5b016020015160f81c90506010811115612e7e5760009950505050505050505050612f6e565b612e9d868260ff1681518110612e9057fe5b60200260200101516138ed565b94505060019290920191612f5d565b845160021415612e3a576000612ed2612ecb8760008151811061126757fe5b848661398c565b905082518185011415612f28578d80519060200120612ef78760018151811061126757fe5b805190602001201415612f165760019950505050505050505050612f6e565b60009950505050505050505050612f6e565b80612f3f5760009950505050505050505050612f6e565b8084019350612f5486600181518110612e9057fe5b9450612f5d9050565b600101612d80565b50505050505050505b949350505050565b600854604080516320a9cea560e11b81526004810185905290516000928392839283926001600160a01b0316916341539d4a9160248083019260a0929190829003018186803b158015612fc857600080fd5b505afa158015612fdc573d6000803e3d6000fd5b505050506040513d60a0811015612ff257600080fd5b5080516020820151606090920151909450909250905061306161301b8b8463ffffffff613a6b16565b6040805160208082018f90528183018e9052606082018d905260808083018d90528351808403909101815260a0909201909252805191012090858863ffffffff613aad16565b6130b2576040805162461bcd60e51b815260206004820181905260248201527f526f6f74436861696e4d616e616765723a20494e56414c49445f484541444552604482015290519081900360640190fd5b9998505050505050505050565b606080826000015167ffffffffffffffff811180156130dd57600080fd5b506040519080825280601f01601f191660200182016040528015613108576020820181803683370190505b50905060008160200190506131268460200151828660000151613845565b5092915050565b6040518060800160405280604f815260200161403b604f913980516020918201208251838301206040805180820190915260018152603160f81b930192909252907fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc630613198611185565b604080516020808201979097528082019590955260608501939093526001600160a01b03909116608084015260a0808401919091528151808403909101815260c090920190528051910120600b5550565b60006118c88383613c03565b6000818152600260205260409020546001600160a01b03166132485760405162461bcd60e51b815260040180806020018281038252602a815260200180613f07602a913960400191505060405180910390fd5b6001600160a01b03808416600081815260036020908152604080832080549588166001600160a01b031996871681179091558084526004835281842080549096168517909555838352600590915280822085905551849392917f9e651a8866fbea043e911d816ec254b0e3c992c06fff32d605e72362d6023bd991a4604080516001600160a01b0380861660208084019190915281861683850152606083810186905284518085038201815260808086018088526007546009546826a0a82faa27a5a2a760b91b9092528851978890036089018820888701818152898b019a8b528551968a019690965284519499918816986316f1983198939093169690958a9590949293909201919085019080838360005b8381101561337357818101518382015260200161335b565b50505050905090810190601f1680156133a05780820380516001836020036101000a031916815260200191505b5093505050506040516020818303038152906040526040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015613419578181015183820152602001613401565b50505050905090810190601f1680156134465780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b15801561346657600080fd5b505af115801561347a573d6000803e3d6000fd5b5050505050505050565b60006118c8836001600160a01b038416613c67565b806040516020018082805190602001908083835b602083106134cc5780518252601f1990920191602091820191016134ad565b51815160209384036101000a60001901801990921691161790527f3a20494e53554646494349454e545f5045524d495353494f4e530000000000009190930190815260408051808303600519018152601a909201905280516111729550600a94509201919050613e6e565b60005460ff1615613580576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e481a5b9a5d195960921b604482015290519081900360640190fd5b611c478161312d565b60006118cb82613c7f565b6000604051806080016040528060438152602001613fd460439139805190602001208260000151836020015184604001518051906020012060405160200180858152602001848152602001836001600160a01b03166001600160a01b03168152602001828152602001945050505050604051602081830303815290604052805190602001209050919050565b600061362a6110d6565b82604051602001808061190160f01b81525060020183815260200182815260200192505050604051602081830303815290604052805190602001209050919050565b60006118c8836001600160a01b038416613c83565b60006118c8836001600160a01b038416613ccd565b6020810151805160009190821a9060c08210156136b8576000925050506110ef565b5060019392505050565b6000806000905060006136d884602001516137e2565b602085015185519181019250015b80821015613745576136f78261374e565b820191508082111561373a5760405162461bcd60e51b815260040180806020018281038252602c81526020018061414e602c913960400191505060405180910390fd5b6001909201916136e6565b50909392505050565b80516000908190811a60808110156137695760019150613126565b60b881101561377e57607e1981019150613126565b60c08110156137ab5760b78103600185019450806020036101000a85510460018201810193505050613126565b60f88110156137c05760be1981019150613126565b60019390930151602084900360f7016101000a900490920160f5190192915050565b8051600090811a60808110156137fc5760009150506110ef565b60b8811080613817575060c08110801590613817575060f881105b156138265760019150506110ef565b60c081101561383a5760b5190190506110ef565b60f5190190506110ef565b8061384f57610b64565b5b6020811061386f578251825260209283019290910190601f1901613850565b915181516020939093036101000a6000190180199091169216919091179052565b600060028306156138c15760108260028504815181106138ac57fe5b016020015160f81c816138bb57fe5b066138e3565b60108260028504815181106138d257fe5b016020015160f81c816138e157fe5b045b60f81b9392505050565b6000806138fd836020015161374e565b8351909150811461393f5760405162461bcd60e51b815260040180806020018281038252602e815260200180614258602e913960400191505060405180910390fd5b825160211461397f5760405162461bcd60e51b8152600401808060200182810382526025815260200180613f536025913960400191505060405180910390fd5b5050602001516001015190565b600080606061399a86612b2c565b90506060815167ffffffffffffffff811180156139b657600080fd5b506040519080825280601f01601f1916602001820160405280156139e1576020820181803683370190505b509050845b82518601811015613a3b5760008782815181106139ff57fe5b602001015160f81c60f81b9050808388840381518110613a1b57fe5b60200101906001600160f81b031916908160001a905350506001016139e6565b50808051906020012082805190602001201415613a5b5781519250613a60565b600092505b509095945050505050565b60006118c883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250613d93565b60006020825181613aba57fe5b0615613b04576040805162461bcd60e51b8152602060048201526014602482015273092dcecc2d8d2c840e0e4dedecc40d8cadccee8d60631b604482015290519081900360640190fd5b60006020835181613b1157fe5b0490508060020a8510613b63576040805162461bcd60e51b81526020600482015260156024820152744c65616620696e64657820697320746f6f2062696760581b604482015290519081900360640190fd5b60008660205b85518111613bf55785810151925060028806613bb55781836040516020018083815260200182815260200192505050604051602081830303815290604052805190602001209150613be7565b828260405160200180838152602001828152602001925050506040516020818303038152906040528051906020012091505b600288049750602001613b69565b509094149695505050505050565b81546000908210613c455760405162461bcd60e51b8152600401808060200182810382526022815260200180613f316022913960400191505060405180910390fd5b826000018281548110613c5457fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b5490565b6000613c8f8383613c67565b613cc5575081546001818101845560008481526020808220909301849055845484825282860190935260409020919091556118cb565b5060006118cb565b60008181526001830160205260408120548015613d895783546000198083019190810190600090879083908110613d0057fe5b9060005260206000200154905080876000018481548110613d1d57fe5b600091825260208083209091019290925582815260018981019092526040902090840190558654879080613d4d57fe5b600190038181906000526020600020016000905590558660010160008781526020019081526020016000206000905560019450505050506118cb565b60009150506118cb565b60008184841115613e225760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015613de7578181015183820152602001613dcf565b50505050905090810190601f168015613e145780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60405180606001604052806000815260200160006001600160a01b03168152602001606081525090565b604051806040016040528060008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10613eaf57805160ff1916838001178555613edc565b82800160010185558215613edc579182015b82811115613edc578251825591602001919060010190613ec1565b50613ee8929150613eec565b5090565b610a6591905b80821115613ee85760008155600101613ef256fe526f6f74436861696e4d616e616765723a20544f4b454e5f545950455f4e4f545f535550504f52544544456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473524c505265616465723a20494e56414c49445f55494e545f5354524943545f4c454e475448416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e74526f6f74436861696e4d616e616765723a20494e56414c49445f4348494c445f434841494e5f414444524553534d6574615472616e73616374696f6e2875696e74323536206e6f6e63652c616464726573732066726f6d2c62797465732066756e6374696f6e5369676e617475726529526f6f74436861696e4d616e616765723a20494e56414c49445f544f4b454e5f54595045454950373132446f6d61696e28737472696e67206e616d652c737472696e672076657273696f6e2c6164647265737320766572696679696e67436f6e74726163742c627974657333322073616c7429526f6f74436861696e4d616e616765723a20494e56414c49445f4252414e43485f4d41534b526f6f74436861696e4d616e616765723a20544f4b454e5f4e4f545f4d4150504544524c505265616465723a2042595445535f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b654e61746976654d6574615472616e73616374696f6e3a20494e56414c49445f5349474e4552524c505265616465723a204e554d5f4954454d535f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a204445434f44494e475f4c4953545f41535f41444452455353526f6f74436861696e4d616e616765723a2045544845525f5452414e534645525f4641494c45445369676e657220616e64207369676e617475726520646f206e6f74206d61746368526f6f74436861696e4d616e616765723a20494e56414c49445f524f4f545f544f4b454e526f6f74436861696e4d616e616765723a20455849545f414c52454144595f50524f434553534544524c505265616465723a204c4953545f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a2055494e545f5354524943545f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66524c505265616465723a2055494e545f4445434f4445445f4c454e4754485f4d49534d41544348524c505265616465723a20494e56414c49445f414444524553535f4c454e475448a164736f6c6343000606000a"; -const isSuperArgs = (xs) => xs.length > 1; -class RootChainManager__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(overrides) { - return super.getDeployTransaction(overrides || {}); - } - deploy(overrides) { - return super.deploy(overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.RootChainManager__factory = RootChainManager__factory; -RootChainManager__factory.bytecode = _bytecode; -RootChainManager__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/index.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/index.d.ts deleted file mode 100644 index 8ea533ed..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/index.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -export { AccessControl__factory } from "./AccessControl__factory"; -export { AccessControlMixin__factory } from "./AccessControlMixin__factory"; -export { EIP712Base__factory } from "./EIP712Base__factory"; -export { ICheckpointManager__factory } from "./ICheckpointManager__factory"; -export { IRootChainManager__factory } from "./IRootChainManager__factory"; -export { IStateSender__factory } from "./IStateSender__factory"; -export { ITokenPredicate__factory } from "./ITokenPredicate__factory"; -export { NativeMetaTransaction__factory } from "./NativeMetaTransaction__factory"; -export { RootChainManager__factory } from "./RootChainManager__factory"; -export { RootChainManagerStorage__factory } from "./RootChainManagerStorage__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/index.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/index.d.ts.map deleted file mode 100644 index cc43c04c..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,8BAA8B,EAAE,MAAM,kCAAkC,CAAC;AAClF,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,gCAAgC,EAAE,MAAM,oCAAoC,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/index.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/index.js deleted file mode 100644 index 18ef7469..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/index.js +++ /dev/null @@ -1,23 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.RootChainManagerStorage__factory = exports.RootChainManager__factory = exports.NativeMetaTransaction__factory = exports.ITokenPredicate__factory = exports.IStateSender__factory = exports.IRootChainManager__factory = exports.ICheckpointManager__factory = exports.EIP712Base__factory = exports.AccessControlMixin__factory = exports.AccessControl__factory = void 0; -var AccessControl__factory_1 = require("./AccessControl__factory"); -Object.defineProperty(exports, "AccessControl__factory", { enumerable: true, get: function () { return AccessControl__factory_1.AccessControl__factory; } }); -var AccessControlMixin__factory_1 = require("./AccessControlMixin__factory"); -Object.defineProperty(exports, "AccessControlMixin__factory", { enumerable: true, get: function () { return AccessControlMixin__factory_1.AccessControlMixin__factory; } }); -var EIP712Base__factory_1 = require("./EIP712Base__factory"); -Object.defineProperty(exports, "EIP712Base__factory", { enumerable: true, get: function () { return EIP712Base__factory_1.EIP712Base__factory; } }); -var ICheckpointManager__factory_1 = require("./ICheckpointManager__factory"); -Object.defineProperty(exports, "ICheckpointManager__factory", { enumerable: true, get: function () { return ICheckpointManager__factory_1.ICheckpointManager__factory; } }); -var IRootChainManager__factory_1 = require("./IRootChainManager__factory"); -Object.defineProperty(exports, "IRootChainManager__factory", { enumerable: true, get: function () { return IRootChainManager__factory_1.IRootChainManager__factory; } }); -var IStateSender__factory_1 = require("./IStateSender__factory"); -Object.defineProperty(exports, "IStateSender__factory", { enumerable: true, get: function () { return IStateSender__factory_1.IStateSender__factory; } }); -var ITokenPredicate__factory_1 = require("./ITokenPredicate__factory"); -Object.defineProperty(exports, "ITokenPredicate__factory", { enumerable: true, get: function () { return ITokenPredicate__factory_1.ITokenPredicate__factory; } }); -var NativeMetaTransaction__factory_1 = require("./NativeMetaTransaction__factory"); -Object.defineProperty(exports, "NativeMetaTransaction__factory", { enumerable: true, get: function () { return NativeMetaTransaction__factory_1.NativeMetaTransaction__factory; } }); -var RootChainManager__factory_1 = require("./RootChainManager__factory"); -Object.defineProperty(exports, "RootChainManager__factory", { enumerable: true, get: function () { return RootChainManager__factory_1.RootChainManager__factory; } }); -var RootChainManagerStorage__factory_1 = require("./RootChainManagerStorage__factory"); -Object.defineProperty(exports, "RootChainManagerStorage__factory", { enumerable: true, get: function () { return RootChainManagerStorage__factory_1.RootChainManagerStorage__factory; } }); diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/ICheckpointManager__factory.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/ICheckpointManager__factory.d.ts deleted file mode 100644 index 9e7eaa1a..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/ICheckpointManager__factory.d.ts +++ /dev/null @@ -1,53 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../../../common"; -import type { ICheckpointManager, ICheckpointManagerInterface } from "../../../../../contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/ICheckpointManager"; -declare type ICheckpointManagerConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class ICheckpointManager__factory extends ContractFactory { - constructor(...args: ICheckpointManagerConstructorParams); - getDeployTransaction(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): ICheckpointManager__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b5060c08061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c806341539d4a14602d575b600080fd5b604760048036036020811015604157600080fd5b5035607b565b6040805195865260208601949094528484019290925260608401526001600160a01b03166080830152519081900360a00190f35b60006020819052908152604090208054600182015460028301546003840154600490940154929391929091906001600160a01b03168556fea164736f6c6343000606000a"; - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly name: "headerBlocks"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "root"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "start"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "end"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "createdAt"; - readonly type: "uint256"; - }, { - readonly internalType: "address"; - readonly name: "proposer"; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): ICheckpointManagerInterface; - static connect(address: string, runner?: ContractRunner | null): ICheckpointManager; -} -export {}; -//# sourceMappingURL=ICheckpointManager__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/ICheckpointManager__factory.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/ICheckpointManager__factory.d.ts.map deleted file mode 100644 index c52a4cf6..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/ICheckpointManager__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ICheckpointManager__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/ICheckpointManager__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,kBAAkB,EAClB,2BAA2B,EAC5B,MAAM,kGAAkG,CAAC;AA+C1G,aAAK,mCAAmC,GACpC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,2BAA4B,SAAQ,eAAe;gBAClD,GAAG,IAAI,EAAE,mCAAmC;IAQ/C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,2BAA2B;IAI5E,MAAM,CAAC,QAAQ,CAAC,QAAQ,scAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,2BAA2B;IAGrD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,kBAAkB;CAGtB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/ICheckpointManager__factory.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/ICheckpointManager__factory.js deleted file mode 100644 index 2d28b829..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/ICheckpointManager__factory.js +++ /dev/null @@ -1,75 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ICheckpointManager__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - name: "headerBlocks", - outputs: [ - { - internalType: "bytes32", - name: "root", - type: "bytes32", - }, - { - internalType: "uint256", - name: "start", - type: "uint256", - }, - { - internalType: "uint256", - name: "end", - type: "uint256", - }, - { - internalType: "uint256", - name: "createdAt", - type: "uint256", - }, - { - internalType: "address", - name: "proposer", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -const _bytecode = "0x608060405234801561001057600080fd5b5060c08061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c806341539d4a14602d575b600080fd5b604760048036036020811015604157600080fd5b5035607b565b6040805195865260208601949094528484019290925260608401526001600160a01b03166080830152519081900360a00190f35b60006020819052908152604090208054600182015460028301546003840154600490940154929391929091906001600160a01b03168556fea164736f6c6343000606000a"; -const isSuperArgs = (xs) => xs.length > 1; -class ICheckpointManager__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(overrides) { - return super.getDeployTransaction(overrides || {}); - } - deploy(overrides) { - return super.deploy(overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.ICheckpointManager__factory = ICheckpointManager__factory; -ICheckpointManager__factory.bytecode = _bytecode; -ICheckpointManager__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain__factory.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain__factory.d.ts deleted file mode 100644 index 9b05c949..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain__factory.d.ts +++ /dev/null @@ -1,43 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IRootChain, IRootChainInterface } from "../../../../../contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain"; -export declare class IRootChain__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "proposer"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "headerBlockId"; - readonly type: "uint256"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "reward"; - readonly type: "uint256"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "start"; - readonly type: "uint256"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "end"; - readonly type: "uint256"; - }, { - readonly indexed: false; - readonly internalType: "bytes32"; - readonly name: "root"; - readonly type: "bytes32"; - }]; - readonly name: "NewHeaderBlock"; - readonly type: "event"; - }]; - static createInterface(): IRootChainInterface; - static connect(address: string, runner?: ContractRunner | null): IRootChain; -} -//# sourceMappingURL=IRootChain__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain__factory.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain__factory.d.ts.map deleted file mode 100644 index 64c58037..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IRootChain__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,UAAU,EACV,mBAAmB,EACpB,MAAM,0FAA0F,CAAC;AAgDlG,qBAAa,mBAAmB;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,mBAAmB;IAG7C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,UAAU;CAG5E"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain__factory.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain__factory.js deleted file mode 100644 index 7a627a95..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain__factory.js +++ /dev/null @@ -1,59 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IRootChain__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "proposer", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "headerBlockId", - type: "uint256", - }, - { - indexed: true, - internalType: "uint256", - name: "reward", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "start", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "end", - type: "uint256", - }, - { - indexed: false, - internalType: "bytes32", - name: "root", - type: "bytes32", - }, - ], - name: "NewHeaderBlock", - type: "event", - }, -]; -class IRootChain__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IRootChain__factory = IRootChain__factory; -IRootChain__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager__factory.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager__factory.d.ts deleted file mode 100644 index c8e0ddb9..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager__factory.d.ts +++ /dev/null @@ -1,116 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../../../common"; -import type { SimpleCheckpointManager, SimpleCheckpointManagerInterface } from "../../../../../contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager"; -declare type SimpleCheckpointManagerConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class SimpleCheckpointManager__factory extends ContractFactory { - constructor(...args: SimpleCheckpointManagerConstructorParams); - getDeployTransaction(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): SimpleCheckpointManager__factory; - static readonly bytecode = "0x6080604052600060015534801561001557600080fd5b50610233806100256000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806341539d4a146100465780634d5505d314610097578063afa764d7146100b1575b600080fd5b6100636004803603602081101561005c57600080fd5b50356100dc565b6040805195865260208601949094528484019290925260608401526001600160a01b03166080830152519081900360a00190f35b61009f610114565b60408051918252519081900360200190f35b6100da600480360360608110156100c757600080fd5b508035906020810135906040013561011a565b005b60006020819052908152604090208054600182015460028301546003840154600490940154929391929091906001600160a01b031685565b60015481565b6101226101eb565b506040805160a0810182528481526020808201858152828401858152426060808601918252336080870181815260018054810180825560009081528089528a81208a518155975188830155955160028801559351600387015551600490950180546001600160a01b0319166001600160a01b0390961695909517909455905486518981529485018890528487018a905295519495919491937fba5de06d22af2685c6c7765f60067f7d2b08c2d29f53cdf14d67f6d1c9bfb527929081900390910190a450505050565b6040518060a001604052806000801916815260200160008152602001600081526020016000815260200160006001600160a01b03168152509056fea164736f6c6343000606000a"; - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "proposer"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "headerBlockId"; - readonly type: "uint256"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "reward"; - readonly type: "uint256"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "start"; - readonly type: "uint256"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "end"; - readonly type: "uint256"; - }, { - readonly indexed: false; - readonly internalType: "bytes32"; - readonly name: "root"; - readonly type: "bytes32"; - }]; - readonly name: "NewHeaderBlock"; - readonly type: "event"; - }, { - readonly inputs: readonly []; - readonly name: "currentCheckpointNumber"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly name: "headerBlocks"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "root"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "start"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "end"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "createdAt"; - readonly type: "uint256"; - }, { - readonly internalType: "address"; - readonly name: "proposer"; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "rootHash"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "start"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "end"; - readonly type: "uint256"; - }]; - readonly name: "setCheckpoint"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): SimpleCheckpointManagerInterface; - static connect(address: string, runner?: ContractRunner | null): SimpleCheckpointManager; -} -export {}; -//# sourceMappingURL=SimpleCheckpointManager__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager__factory.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager__factory.d.ts.map deleted file mode 100644 index 9d4ce416..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"SimpleCheckpointManager__factory.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EACV,uBAAuB,EACvB,gCAAgC,EACjC,MAAM,uGAAuG,CAAC;AA8H/G,aAAK,wCAAwC,GACzC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,gCAAiC,SAAQ,eAAe;gBACvD,GAAG,IAAI,EAAE,wCAAwC;IAQpD,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CACd,MAAM,EAAE,cAAc,GAAG,IAAI,GAC5B,gCAAgC;IAInC,MAAM,CAAC,QAAQ,CAAC,QAAQ,wrCAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,gCAAgC;IAG1D,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,uBAAuB;CAO3B"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager__factory.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager__factory.js deleted file mode 100644 index 64e4d004..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager__factory.js +++ /dev/null @@ -1,154 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.SimpleCheckpointManager__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "proposer", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "headerBlockId", - type: "uint256", - }, - { - indexed: true, - internalType: "uint256", - name: "reward", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "start", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "end", - type: "uint256", - }, - { - indexed: false, - internalType: "bytes32", - name: "root", - type: "bytes32", - }, - ], - name: "NewHeaderBlock", - type: "event", - }, - { - inputs: [], - name: "currentCheckpointNumber", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - name: "headerBlocks", - outputs: [ - { - internalType: "bytes32", - name: "root", - type: "bytes32", - }, - { - internalType: "uint256", - name: "start", - type: "uint256", - }, - { - internalType: "uint256", - name: "end", - type: "uint256", - }, - { - internalType: "uint256", - name: "createdAt", - type: "uint256", - }, - { - internalType: "address", - name: "proposer", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "rootHash", - type: "bytes32", - }, - { - internalType: "uint256", - name: "start", - type: "uint256", - }, - { - internalType: "uint256", - name: "end", - type: "uint256", - }, - ], - name: "setCheckpoint", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -const _bytecode = "0x6080604052600060015534801561001557600080fd5b50610233806100256000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806341539d4a146100465780634d5505d314610097578063afa764d7146100b1575b600080fd5b6100636004803603602081101561005c57600080fd5b50356100dc565b6040805195865260208601949094528484019290925260608401526001600160a01b03166080830152519081900360a00190f35b61009f610114565b60408051918252519081900360200190f35b6100da600480360360608110156100c757600080fd5b508035906020810135906040013561011a565b005b60006020819052908152604090208054600182015460028301546003840154600490940154929391929091906001600160a01b031685565b60015481565b6101226101eb565b506040805160a0810182528481526020808201858152828401858152426060808601918252336080870181815260018054810180825560009081528089528a81208a518155975188830155955160028801559351600387015551600490950180546001600160a01b0319166001600160a01b0390961695909517909455905486518981529485018890528487018a905295519495919491937fba5de06d22af2685c6c7765f60067f7d2b08c2d29f53cdf14d67f6d1c9bfb527929081900390910190a450505050565b6040518060a001604052806000801916815260200160008152602001600081526020016000815260200160006001600160a01b03168152509056fea164736f6c6343000606000a"; -const isSuperArgs = (xs) => xs.length > 1; -class SimpleCheckpointManager__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(overrides) { - return super.getDeployTransaction(overrides || {}); - } - deploy(overrides) { - return super.deploy(overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.SimpleCheckpointManager__factory = SimpleCheckpointManager__factory; -SimpleCheckpointManager__factory.bytecode = _bytecode; -SimpleCheckpointManager__factory.abi = _abi; diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/index.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/index.d.ts deleted file mode 100644 index 2859f68f..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/index.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export { ICheckpointManager__factory } from "./ICheckpointManager__factory"; -export { IRootChain__factory } from "./IRootChain__factory"; -export { SimpleCheckpointManager__factory } from "./SimpleCheckpointManager__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/index.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/index.d.ts.map deleted file mode 100644 index 6e7e655e..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,gCAAgC,EAAE,MAAM,oCAAoC,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/index.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/index.js deleted file mode 100644 index e367d5b8..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/index.js +++ /dev/null @@ -1,9 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.SimpleCheckpointManager__factory = exports.IRootChain__factory = exports.ICheckpointManager__factory = void 0; -var ICheckpointManager__factory_1 = require("./ICheckpointManager__factory"); -Object.defineProperty(exports, "ICheckpointManager__factory", { enumerable: true, get: function () { return ICheckpointManager__factory_1.ICheckpointManager__factory; } }); -var IRootChain__factory_1 = require("./IRootChain__factory"); -Object.defineProperty(exports, "IRootChain__factory", { enumerable: true, get: function () { return IRootChain__factory_1.IRootChain__factory; } }); -var SimpleCheckpointManager__factory_1 = require("./SimpleCheckpointManager__factory"); -Object.defineProperty(exports, "SimpleCheckpointManager__factory", { enumerable: true, get: function () { return SimpleCheckpointManager__factory_1.SimpleCheckpointManager__factory; } }); diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/index.d.ts b/dist/types/factories/contracts/@maticnetwork/pos-portal/index.d.ts deleted file mode 100644 index 0f620fd5..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/index.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -export * as dummyStateSenderSol from "./DummyStateSender.sol"; -export * as mintableErc721PredicateSol from "./MintableERC721Predicate.sol"; -export * as rootChainManagerSol from "./RootChainManager.sol"; -export * as simpleCheckpointManagerSol from "./SimpleCheckpointManager.sol"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/index.d.ts.map b/dist/types/factories/contracts/@maticnetwork/pos-portal/index.d.ts.map deleted file mode 100644 index 767910cb..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/contracts/@maticnetwork/pos-portal/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,mBAAmB,MAAM,wBAAwB,CAAC;AAC9D,OAAO,KAAK,0BAA0B,MAAM,+BAA+B,CAAC;AAC5E,OAAO,KAAK,mBAAmB,MAAM,wBAAwB,CAAC;AAC9D,OAAO,KAAK,0BAA0B,MAAM,+BAA+B,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/contracts/@maticnetwork/pos-portal/index.js b/dist/types/factories/contracts/@maticnetwork/pos-portal/index.js deleted file mode 100644 index d9fc620f..00000000 --- a/dist/types/factories/contracts/@maticnetwork/pos-portal/index.js +++ /dev/null @@ -1,30 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.simpleCheckpointManagerSol = exports.rootChainManagerSol = exports.mintableErc721PredicateSol = exports.dummyStateSenderSol = void 0; -exports.dummyStateSenderSol = __importStar(require("./DummyStateSender.sol")); -exports.mintableErc721PredicateSol = __importStar(require("./MintableERC721Predicate.sol")); -exports.rootChainManagerSol = __importStar(require("./RootChainManager.sol")); -exports.simpleCheckpointManagerSol = __importStar(require("./SimpleCheckpointManager.sol")); diff --git a/dist/types/factories/contracts/ChildRegistry__factory.d.ts b/dist/types/factories/contracts/ChildRegistry__factory.d.ts deleted file mode 100644 index d13120e0..00000000 --- a/dist/types/factories/contracts/ChildRegistry__factory.d.ts +++ /dev/null @@ -1,296 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { ChildRegistry, ChildRegistryInterface } from "../../contracts/ChildRegistry"; -export declare class ChildRegistry__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "approved"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Approval"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "ApprovalForAll"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "uint8"; - readonly name: "version"; - readonly type: "uint8"; - }]; - readonly name: "Initialized"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Transfer"; - readonly type: "event"; - }, { - readonly inputs: readonly []; - readonly name: "BATCH_LIMIT"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "approve"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "balanceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "user"; - readonly type: "address"; - }, { - readonly internalType: "bytes"; - readonly name: "depositData"; - readonly type: "bytes"; - }]; - readonly name: "deposit"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getApproved"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly name: "isApprovedForAll"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "name"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "ownerOf"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "setApprovalForAll"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "symbol"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "tokenURI"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "transferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): ChildRegistryInterface; - static connect(address: string, runner?: ContractRunner | null): ChildRegistry; -} -//# sourceMappingURL=ChildRegistry__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/ChildRegistry__factory.d.ts.map b/dist/types/factories/contracts/ChildRegistry__factory.d.ts.map deleted file mode 100644 index 453be74a..00000000 --- a/dist/types/factories/contracts/ChildRegistry__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ChildRegistry__factory.d.ts","sourceRoot":"","sources":["../../../../types/factories/contracts/ChildRegistry__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,aAAa,EACb,sBAAsB,EACvB,MAAM,+BAA+B,CAAC;AA2XvC,qBAAa,sBAAsB;IACjC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,sBAAsB;IAGhD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,aAAa;CAGjB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/ChildRegistry__factory.js b/dist/types/factories/contracts/ChildRegistry__factory.js deleted file mode 100644 index 478f11fe..00000000 --- a/dist/types/factories/contracts/ChildRegistry__factory.js +++ /dev/null @@ -1,390 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ChildRegistry__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "approved", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Approval", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: false, - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "ApprovalForAll", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint8", - name: "version", - type: "uint8", - }, - ], - name: "Initialized", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Transfer", - type: "event", - }, - { - inputs: [], - name: "BATCH_LIMIT", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "approve", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "user", - type: "address", - }, - { - internalType: "bytes", - name: "depositData", - type: "bytes", - }, - ], - name: "deposit", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getApproved", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - name: "isApprovedForAll", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "name", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "ownerOf", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "safeTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "safeTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "setApprovalForAll", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "symbol", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "tokenURI", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "transferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -class ChildRegistry__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.ChildRegistry__factory = ChildRegistry__factory; -ChildRegistry__factory.abi = _abi; diff --git a/dist/types/factories/contracts/DotCoinBurner__factory.d.ts b/dist/types/factories/contracts/DotCoinBurner__factory.d.ts deleted file mode 100644 index 5dc55402..00000000 --- a/dist/types/factories/contracts/DotCoinBurner__factory.d.ts +++ /dev/null @@ -1,56 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, AddressLike, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../common"; -import type { DotCoinBurner, DotCoinBurnerInterface } from "../../contracts/DotCoinBurner"; -declare type DotCoinBurnerConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class DotCoinBurner__factory extends ContractFactory { - constructor(...args: DotCoinBurnerConstructorParams); - getDeployTransaction(unsRegistry: AddressLike, overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(unsRegistry: AddressLike, overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): DotCoinBurner__factory; - static readonly bytecode = "0x60a060405234801561001057600080fd5b5060405161047d38038061047d83398101604081905261002f91610040565b6001600160a01b0316608052610070565b60006020828403121561005257600080fd5b81516001600160a01b038116811461006957600080fd5b9392505050565b6080516103f361008a600039600060d401526103f36000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063100cdd9114610030575b600080fd5b61004361003e3660046102e3565b610045565b005b60005b818110156101cb5760007f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e284848481811061008557610085610358565b905060200201356040516020016100a6929190918252602082015260400190565b60408051808303601f190181529082905280516020909101206331a9108f60e11b82526004820181905291507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906323b872dd908290636352211e90602401602060405180830381865afa15801561012b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061014f919061036e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015261dead602482015260448101849052606401600060405180830381600087803b15801561019f57600080fd5b505af11580156101b3573d6000803e3d6000fd5b505050505080806101c3906103b4565b915050610048565b5080156102df577f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e282826102006001826103cd565b81811061020f5761020f610358565b90506020020135604051602001610230929190918252602082015260400190565b6040516020818303038152906040528051906020012060001c7f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e28383600081811061027d5761027d610358565b9050602002013560405160200161029e929190918252602082015260400190565b60408051601f19818403018152908290528051602090910120907fdf423376f9b0ab363b1b4d6f0b4cb6821921ec30f491555a97236a8a38ce095a90600090a35b5050565b600080602083850312156102f657600080fd5b823567ffffffffffffffff8082111561030e57600080fd5b818501915085601f83011261032257600080fd5b81358181111561033157600080fd5b8660208260051b850101111561034657600080fd5b60209290920196919550909350505050565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561038057600080fd5b81516001600160a01b038116811461039757600080fd5b9392505050565b634e487b7160e01b600052601160045260246000fd5b6000600182016103c6576103c661039e565b5060010190565b818103818111156103e0576103e061039e565b9291505056fea164736f6c6343000811000a"; - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "contract IUNSRegistry"; - readonly name: "unsRegistry"; - readonly type: "address"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "constructor"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "first"; - readonly type: "uint256"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "last"; - readonly type: "uint256"; - }]; - readonly name: "BatchCompleted"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256[]"; - readonly name: "labelHashes"; - readonly type: "uint256[]"; - }]; - readonly name: "burnAll"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): DotCoinBurnerInterface; - static connect(address: string, runner?: ContractRunner | null): DotCoinBurner; -} -export {}; -//# sourceMappingURL=DotCoinBurner__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/DotCoinBurner__factory.d.ts.map b/dist/types/factories/contracts/DotCoinBurner__factory.d.ts.map deleted file mode 100644 index 936cda11..00000000 --- a/dist/types/factories/contracts/DotCoinBurner__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"DotCoinBurner__factory.d.ts","sourceRoot":"","sources":["../../../../types/factories/contracts/DotCoinBurner__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,MAAM,EACN,WAAW,EACX,yBAAyB,EACzB,cAAc,EACf,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACxD,OAAO,KAAK,EACV,aAAa,EACb,sBAAsB,EACvB,MAAM,+BAA+B,CAAC;AAmDvC,aAAK,8BAA8B,GAC/B,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,sBAAuB,SAAQ,eAAe;gBAC7C,GAAG,IAAI,EAAE,8BAA8B;IAQ1C,oBAAoB,CAC3B,WAAW,EAAE,WAAW,EACxB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CACb,WAAW,EAAE,WAAW,EACxB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAItB,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,sBAAsB;IAIvE,MAAM,CAAC,QAAQ,CAAC,QAAQ,kwEAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,sBAAsB;IAGhD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,aAAa;CAGjB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/DotCoinBurner__factory.js b/dist/types/factories/contracts/DotCoinBurner__factory.js deleted file mode 100644 index 8ee1b0f2..00000000 --- a/dist/types/factories/contracts/DotCoinBurner__factory.js +++ /dev/null @@ -1,79 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.DotCoinBurner__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "contract IUNSRegistry", - name: "unsRegistry", - type: "address", - }, - ], - stateMutability: "nonpayable", - type: "constructor", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "first", - type: "uint256", - }, - { - indexed: true, - internalType: "uint256", - name: "last", - type: "uint256", - }, - ], - name: "BatchCompleted", - type: "event", - }, - { - inputs: [ - { - internalType: "uint256[]", - name: "labelHashes", - type: "uint256[]", - }, - ], - name: "burnAll", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -const _bytecode = "0x60a060405234801561001057600080fd5b5060405161047d38038061047d83398101604081905261002f91610040565b6001600160a01b0316608052610070565b60006020828403121561005257600080fd5b81516001600160a01b038116811461006957600080fd5b9392505050565b6080516103f361008a600039600060d401526103f36000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063100cdd9114610030575b600080fd5b61004361003e3660046102e3565b610045565b005b60005b818110156101cb5760007f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e284848481811061008557610085610358565b905060200201356040516020016100a6929190918252602082015260400190565b60408051808303601f190181529082905280516020909101206331a9108f60e11b82526004820181905291507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906323b872dd908290636352211e90602401602060405180830381865afa15801561012b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061014f919061036e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015261dead602482015260448101849052606401600060405180830381600087803b15801561019f57600080fd5b505af11580156101b3573d6000803e3d6000fd5b505050505080806101c3906103b4565b915050610048565b5080156102df577f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e282826102006001826103cd565b81811061020f5761020f610358565b90506020020135604051602001610230929190918252602082015260400190565b6040516020818303038152906040528051906020012060001c7f7674e7282552c15f203b9c4a6025aeaf28176ef7f5451b280f9bada3f8bc98e28383600081811061027d5761027d610358565b9050602002013560405160200161029e929190918252602082015260400190565b60408051601f19818403018152908290528051602090910120907fdf423376f9b0ab363b1b4d6f0b4cb6821921ec30f491555a97236a8a38ce095a90600090a35b5050565b600080602083850312156102f657600080fd5b823567ffffffffffffffff8082111561030e57600080fd5b818501915085601f83011261032257600080fd5b81358181111561033157600080fd5b8660208260051b850101111561034657600080fd5b60209290920196919550909350505050565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561038057600080fd5b81516001600160a01b038116811461039757600080fd5b9392505050565b634e487b7160e01b600052601160045260246000fd5b6000600182016103c6576103c661039e565b5060010190565b818103818111156103e0576103e061039e565b9291505056fea164736f6c6343000811000a"; -const isSuperArgs = (xs) => xs.length > 1; -class DotCoinBurner__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(unsRegistry, overrides) { - return super.getDeployTransaction(unsRegistry, overrides || {}); - } - deploy(unsRegistry, overrides) { - return super.deploy(unsRegistry, overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.DotCoinBurner__factory = DotCoinBurner__factory; -DotCoinBurner__factory.bytecode = _bytecode; -DotCoinBurner__factory.abi = _abi; diff --git a/dist/types/factories/contracts/IAddressReader__factory.d.ts b/dist/types/factories/contracts/IAddressReader__factory.d.ts deleted file mode 100644 index cf456fed..00000000 --- a/dist/types/factories/contracts/IAddressReader__factory.d.ts +++ /dev/null @@ -1,70 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IAddressReader, IAddressReaderInterface } from "../../contracts/IAddressReader"; -export declare class IAddressReader__factory { - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "network"; - readonly type: "string"; - }, { - readonly internalType: "string"; - readonly name: "token"; - readonly type: "string"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getAddress"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "network"; - readonly type: "string"; - }, { - readonly internalType: "string"; - readonly name: "token"; - readonly type: "string"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getAddressKey"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "network"; - readonly type: "string"; - }, { - readonly internalType: "string"; - readonly name: "token"; - readonly type: "string"; - }]; - readonly name: "getAddressKeys"; - readonly outputs: readonly [{ - readonly internalType: "string[]"; - readonly name: ""; - readonly type: "string[]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): IAddressReaderInterface; - static connect(address: string, runner?: ContractRunner | null): IAddressReader; -} -//# sourceMappingURL=IAddressReader__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/IAddressReader__factory.d.ts.map b/dist/types/factories/contracts/IAddressReader__factory.d.ts.map deleted file mode 100644 index 88ae50c4..00000000 --- a/dist/types/factories/contracts/IAddressReader__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IAddressReader__factory.d.ts","sourceRoot":"","sources":["../../../../types/factories/contracts/IAddressReader__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,cAAc,EACd,uBAAuB,EACxB,MAAM,gCAAgC,CAAC;AAuFxC,qBAAa,uBAAuB;IAClC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,uBAAuB;IAGjD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,cAAc;CAGlB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/IAddressReader__factory.js b/dist/types/factories/contracts/IAddressReader__factory.js deleted file mode 100644 index d6a6925b..00000000 --- a/dist/types/factories/contracts/IAddressReader__factory.js +++ /dev/null @@ -1,98 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IAddressReader__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "string", - name: "network", - type: "string", - }, - { - internalType: "string", - name: "token", - type: "string", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getAddress", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "network", - type: "string", - }, - { - internalType: "string", - name: "token", - type: "string", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getAddressKey", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "network", - type: "string", - }, - { - internalType: "string", - name: "token", - type: "string", - }, - ], - name: "getAddressKeys", - outputs: [ - { - internalType: "string[]", - name: "", - type: "string[]", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class IAddressReader__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IAddressReader__factory = IAddressReader__factory; -IAddressReader__factory.abi = _abi; diff --git a/dist/types/factories/contracts/IDataReader__factory.d.ts b/dist/types/factories/contracts/IDataReader__factory.d.ts deleted file mode 100644 index 87de78c1..00000000 --- a/dist/types/factories/contracts/IDataReader__factory.d.ts +++ /dev/null @@ -1,134 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IDataReader, IDataReaderInterface } from "../../contracts/IDataReader"; -export declare class IDataReader__factory { - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getData"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256[]"; - readonly name: "keyHashes"; - readonly type: "uint256[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getDataByHash"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256[]"; - readonly name: "keyHashes"; - readonly type: "uint256[]"; - }, { - readonly internalType: "uint256[]"; - readonly name: "tokenIds"; - readonly type: "uint256[]"; - }]; - readonly name: "getDataByHashForMany"; - readonly outputs: readonly [{ - readonly internalType: "address[]"; - readonly name: "resolvers"; - readonly type: "address[]"; - }, { - readonly internalType: "address[]"; - readonly name: "owners"; - readonly type: "address[]"; - }, { - readonly internalType: "string[][]"; - readonly name: "keys"; - readonly type: "string[][]"; - }, { - readonly internalType: "string[][]"; - readonly name: "values"; - readonly type: "string[][]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "uint256[]"; - readonly name: "tokenIds"; - readonly type: "uint256[]"; - }]; - readonly name: "getDataForMany"; - readonly outputs: readonly [{ - readonly internalType: "address[]"; - readonly name: "resolvers"; - readonly type: "address[]"; - }, { - readonly internalType: "address[]"; - readonly name: "owners"; - readonly type: "address[]"; - }, { - readonly internalType: "string[][]"; - readonly name: "values"; - readonly type: "string[][]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256[]"; - readonly name: "tokenIds"; - readonly type: "uint256[]"; - }]; - readonly name: "ownerOfForMany"; - readonly outputs: readonly [{ - readonly internalType: "address[]"; - readonly name: "owners"; - readonly type: "address[]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): IDataReaderInterface; - static connect(address: string, runner?: ContractRunner | null): IDataReader; -} -//# sourceMappingURL=IDataReader__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/IDataReader__factory.d.ts.map b/dist/types/factories/contracts/IDataReader__factory.d.ts.map deleted file mode 100644 index 6d5b9441..00000000 --- a/dist/types/factories/contracts/IDataReader__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IDataReader__factory.d.ts","sourceRoot":"","sources":["../../../../types/factories/contracts/IDataReader__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,WAAW,EACX,oBAAoB,EACrB,MAAM,6BAA6B,CAAC;AA0KrC,qBAAa,oBAAoB;IAC/B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,oBAAoB;IAG9C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,WAAW;CAG7E"} \ No newline at end of file diff --git a/dist/types/factories/contracts/IDataReader__factory.js b/dist/types/factories/contracts/IDataReader__factory.js deleted file mode 100644 index 341a0d83..00000000 --- a/dist/types/factories/contracts/IDataReader__factory.js +++ /dev/null @@ -1,181 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IDataReader__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getData", - outputs: [ - { - internalType: "address", - name: "resolver", - type: "address", - }, - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256[]", - name: "keyHashes", - type: "uint256[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getDataByHash", - outputs: [ - { - internalType: "address", - name: "resolver", - type: "address", - }, - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256[]", - name: "keyHashes", - type: "uint256[]", - }, - { - internalType: "uint256[]", - name: "tokenIds", - type: "uint256[]", - }, - ], - name: "getDataByHashForMany", - outputs: [ - { - internalType: "address[]", - name: "resolvers", - type: "address[]", - }, - { - internalType: "address[]", - name: "owners", - type: "address[]", - }, - { - internalType: "string[][]", - name: "keys", - type: "string[][]", - }, - { - internalType: "string[][]", - name: "values", - type: "string[][]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "uint256[]", - name: "tokenIds", - type: "uint256[]", - }, - ], - name: "getDataForMany", - outputs: [ - { - internalType: "address[]", - name: "resolvers", - type: "address[]", - }, - { - internalType: "address[]", - name: "owners", - type: "address[]", - }, - { - internalType: "string[][]", - name: "values", - type: "string[][]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256[]", - name: "tokenIds", - type: "uint256[]", - }, - ], - name: "ownerOfForMany", - outputs: [ - { - internalType: "address[]", - name: "owners", - type: "address[]", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class IDataReader__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IDataReader__factory = IDataReader__factory; -IDataReader__factory.abi = _abi; diff --git a/dist/types/factories/contracts/IERC1967__factory.d.ts b/dist/types/factories/contracts/IERC1967__factory.d.ts deleted file mode 100644 index ffb31354..00000000 --- a/dist/types/factories/contracts/IERC1967__factory.d.ts +++ /dev/null @@ -1,33 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IERC1967, IERC1967Interface } from "../../contracts/IERC1967"; -export declare class IERC1967__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "address"; - readonly name: "previousAdmin"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "address"; - readonly name: "newAdmin"; - readonly type: "address"; - }]; - readonly name: "AdminChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "implementation"; - readonly type: "address"; - }]; - readonly name: "Upgraded"; - readonly type: "event"; - }]; - static createInterface(): IERC1967Interface; - static connect(address: string, runner?: ContractRunner | null): IERC1967; -} -//# sourceMappingURL=IERC1967__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/IERC1967__factory.d.ts.map b/dist/types/factories/contracts/IERC1967__factory.d.ts.map deleted file mode 100644 index 85c5f5fc..00000000 --- a/dist/types/factories/contracts/IERC1967__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IERC1967__factory.d.ts","sourceRoot":"","sources":["../../../../types/factories/contracts/IERC1967__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAqC5E,qBAAa,iBAAiB;IAC5B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,iBAAiB;IAG3C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,QAAQ;CAG1E"} \ No newline at end of file diff --git a/dist/types/factories/contracts/IERC1967__factory.js b/dist/types/factories/contracts/IERC1967__factory.js deleted file mode 100644 index 669e4b11..00000000 --- a/dist/types/factories/contracts/IERC1967__factory.js +++ /dev/null @@ -1,48 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IERC1967__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "previousAdmin", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "newAdmin", - type: "address", - }, - ], - name: "AdminChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "implementation", - type: "address", - }, - ], - name: "Upgraded", - type: "event", - }, -]; -class IERC1967__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IERC1967__factory = IERC1967__factory; -IERC1967__factory.abi = _abi; diff --git a/dist/types/factories/contracts/IMintingManager__factory.d.ts b/dist/types/factories/contracts/IMintingManager__factory.d.ts deleted file mode 100644 index 43f1f0c7..00000000 --- a/dist/types/factories/contracts/IMintingManager__factory.d.ts +++ /dev/null @@ -1,376 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IMintingManager, IMintingManagerInterface } from "../../contracts/IMintingManager"; -export declare class IMintingManager__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "address"; - readonly name: "previousAdmin"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "address"; - readonly name: "newAdmin"; - readonly type: "address"; - }]; - readonly name: "AdminChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "sender"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "price"; - readonly type: "uint256"; - }, { - readonly indexed: false; - readonly internalType: "address"; - readonly name: "token"; - readonly type: "address"; - }]; - readonly name: "DomainPurchase"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly indexed: false; - readonly internalType: "string"; - readonly name: "tld"; - readonly type: "string"; - }]; - readonly name: "NewTld"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "RemoveTld"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "implementation"; - readonly type: "address"; - }]; - readonly name: "Upgraded"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "address"; - readonly name: "recepient"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "value"; - readonly type: "uint256"; - }, { - readonly indexed: false; - readonly internalType: "address"; - readonly name: "token"; - readonly type: "address"; - }]; - readonly name: "Withdrawal"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "tld"; - readonly type: "string"; - }, { - readonly internalType: "bool"; - readonly name: "isExpirable"; - readonly type: "bool"; - }]; - readonly name: "addTld"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "string[]"; - readonly name: "labels"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }, { - readonly internalType: "uint64"; - readonly name: "expiry"; - readonly type: "uint64"; - }, { - readonly internalType: "uint256"; - readonly name: "price"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "buy"; - readonly outputs: readonly []; - readonly stateMutability: "payable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "string[]"; - readonly name: "labels"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }, { - readonly internalType: "uint64"; - readonly name: "expiry"; - readonly type: "uint64"; - }, { - readonly internalType: "address"; - readonly name: "token"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "price"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "buyForErc20"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tld"; - readonly type: "uint256"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }]; - readonly name: "claim"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tld"; - readonly type: "uint256"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }]; - readonly name: "claimTo"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tld"; - readonly type: "uint256"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }, { - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }]; - readonly name: "claimToWithRecords"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "string[]"; - readonly name: "labels"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }, { - readonly internalType: "uint64"; - readonly name: "expiry"; - readonly type: "uint64"; - }, { - readonly internalType: "bool"; - readonly name: "withReverse"; - readonly type: "bool"; - }]; - readonly name: "issueExpirableWithRecords"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "string[]"; - readonly name: "labels"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }, { - readonly internalType: "bool"; - readonly name: "withReverse"; - readonly type: "bool"; - }]; - readonly name: "issueWithRecords"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "removeTld"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint64"; - readonly name: "expiry"; - readonly type: "uint64"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "renew"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "revoke"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "prefix"; - readonly type: "string"; - }]; - readonly name: "setTokenURIPrefix"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "recepient"; - readonly type: "address"; - }]; - readonly name: "withdraw"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "token"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "recepient"; - readonly type: "address"; - }]; - readonly name: "withdraw"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): IMintingManagerInterface; - static connect(address: string, runner?: ContractRunner | null): IMintingManager; -} -//# sourceMappingURL=IMintingManager__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/IMintingManager__factory.d.ts.map b/dist/types/factories/contracts/IMintingManager__factory.d.ts.map deleted file mode 100644 index 787fc50e..00000000 --- a/dist/types/factories/contracts/IMintingManager__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IMintingManager__factory.d.ts","sourceRoot":"","sources":["../../../../types/factories/contracts/IMintingManager__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,eAAe,EACf,wBAAwB,EACzB,MAAM,iCAAiC,CAAC;AAydzC,qBAAa,wBAAwB;IACnC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,wBAAwB;IAGlD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,eAAe;CAGnB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/IMintingManager__factory.js b/dist/types/factories/contracts/IMintingManager__factory.js deleted file mode 100644 index 80734f56..00000000 --- a/dist/types/factories/contracts/IMintingManager__factory.js +++ /dev/null @@ -1,484 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IMintingManager__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "previousAdmin", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "newAdmin", - type: "address", - }, - ], - name: "AdminChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - indexed: true, - internalType: "address", - name: "sender", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "price", - type: "uint256", - }, - { - indexed: false, - internalType: "address", - name: "token", - type: "address", - }, - ], - name: "DomainPurchase", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - indexed: false, - internalType: "string", - name: "tld", - type: "string", - }, - ], - name: "NewTld", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "RemoveTld", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "implementation", - type: "address", - }, - ], - name: "Upgraded", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "recepient", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "value", - type: "uint256", - }, - { - indexed: false, - internalType: "address", - name: "token", - type: "address", - }, - ], - name: "Withdrawal", - type: "event", - }, - { - inputs: [ - { - internalType: "string", - name: "tld", - type: "string", - }, - { - internalType: "bool", - name: "isExpirable", - type: "bool", - }, - ], - name: "addTld", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "string[]", - name: "labels", - type: "string[]", - }, - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - { - internalType: "uint64", - name: "expiry", - type: "uint64", - }, - { - internalType: "uint256", - name: "price", - type: "uint256", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "buy", - outputs: [], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "string[]", - name: "labels", - type: "string[]", - }, - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - { - internalType: "uint64", - name: "expiry", - type: "uint64", - }, - { - internalType: "address", - name: "token", - type: "address", - }, - { - internalType: "uint256", - name: "price", - type: "uint256", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "buyForErc20", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tld", - type: "uint256", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - ], - name: "claim", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tld", - type: "uint256", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - ], - name: "claimTo", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tld", - type: "uint256", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - ], - name: "claimToWithRecords", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "string[]", - name: "labels", - type: "string[]", - }, - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - { - internalType: "uint64", - name: "expiry", - type: "uint64", - }, - { - internalType: "bool", - name: "withReverse", - type: "bool", - }, - ], - name: "issueExpirableWithRecords", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "string[]", - name: "labels", - type: "string[]", - }, - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - { - internalType: "bool", - name: "withReverse", - type: "bool", - }, - ], - name: "issueWithRecords", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "removeTld", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint64", - name: "expiry", - type: "uint64", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "renew", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "revoke", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "prefix", - type: "string", - }, - ], - name: "setTokenURIPrefix", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "recepient", - type: "address", - }, - ], - name: "withdraw", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "token", - type: "address", - }, - { - internalType: "address", - name: "recepient", - type: "address", - }, - ], - name: "withdraw", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -class IMintingManager__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IMintingManager__factory = IMintingManager__factory; -IMintingManager__factory.abi = _abi; diff --git a/dist/types/factories/contracts/IRecordReader__factory.d.ts b/dist/types/factories/contracts/IRecordReader__factory.d.ts deleted file mode 100644 index 7e15ae5e..00000000 --- a/dist/types/factories/contracts/IRecordReader__factory.d.ts +++ /dev/null @@ -1,88 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IRecordReader, IRecordReaderInterface } from "../../contracts/IRecordReader"; -export declare class IRecordReader__factory { - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "get"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "keyHash"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getByHash"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }, { - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getMany"; - readonly outputs: readonly [{ - readonly internalType: "string[]"; - readonly name: ""; - readonly type: "string[]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256[]"; - readonly name: "keyHashes"; - readonly type: "uint256[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getManyByHash"; - readonly outputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): IRecordReaderInterface; - static connect(address: string, runner?: ContractRunner | null): IRecordReader; -} -//# sourceMappingURL=IRecordReader__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/IRecordReader__factory.d.ts.map b/dist/types/factories/contracts/IRecordReader__factory.d.ts.map deleted file mode 100644 index a333bddb..00000000 --- a/dist/types/factories/contracts/IRecordReader__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IRecordReader__factory.d.ts","sourceRoot":"","sources":["../../../../types/factories/contracts/IRecordReader__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,aAAa,EACb,sBAAsB,EACvB,MAAM,+BAA+B,CAAC;AA+GvC,qBAAa,sBAAsB;IACjC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,sBAAsB;IAGhD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,aAAa;CAGjB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/IRecordReader__factory.js b/dist/types/factories/contracts/IRecordReader__factory.js deleted file mode 100644 index 28373789..00000000 --- a/dist/types/factories/contracts/IRecordReader__factory.js +++ /dev/null @@ -1,122 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IRecordReader__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "string", - name: "key", - type: "string", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "get", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "keyHash", - type: "uint256", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getByHash", - outputs: [ - { - internalType: "string", - name: "key", - type: "string", - }, - { - internalType: "string", - name: "value", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getMany", - outputs: [ - { - internalType: "string[]", - name: "", - type: "string[]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256[]", - name: "keyHashes", - type: "uint256[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getManyByHash", - outputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class IRecordReader__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IRecordReader__factory = IRecordReader__factory; -IRecordReader__factory.abi = _abi; diff --git a/dist/types/factories/contracts/IRecordStorage__factory.d.ts b/dist/types/factories/contracts/IRecordStorage__factory.d.ts deleted file mode 100644 index 8c223d19..00000000 --- a/dist/types/factories/contracts/IRecordStorage__factory.d.ts +++ /dev/null @@ -1,248 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IRecordStorage, IRecordStorageInterface } from "../../contracts/IRecordStorage"; -export declare class IRecordStorage__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly indexed: true; - readonly internalType: "string"; - readonly name: "keyIndex"; - readonly type: "string"; - }, { - readonly indexed: false; - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }]; - readonly name: "NewKey"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "ResetRecords"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly indexed: true; - readonly internalType: "string"; - readonly name: "keyIndex"; - readonly type: "string"; - }, { - readonly indexed: true; - readonly internalType: "string"; - readonly name: "valueIndex"; - readonly type: "string"; - }, { - readonly indexed: false; - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }, { - readonly indexed: false; - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }]; - readonly name: "Set"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "get"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "keyHash"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getByHash"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }, { - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getMany"; - readonly outputs: readonly [{ - readonly internalType: "string[]"; - readonly name: ""; - readonly type: "string[]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256[]"; - readonly name: "keyHashes"; - readonly type: "uint256[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getManyByHash"; - readonly outputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "reconfigure"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "reset"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }, { - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "set"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "keyHash"; - readonly type: "uint256"; - }, { - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "setByHash"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "setMany"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256[]"; - readonly name: "keyHashes"; - readonly type: "uint256[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "setManyByHash"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): IRecordStorageInterface; - static connect(address: string, runner?: ContractRunner | null): IRecordStorage; -} -//# sourceMappingURL=IRecordStorage__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/IRecordStorage__factory.d.ts.map b/dist/types/factories/contracts/IRecordStorage__factory.d.ts.map deleted file mode 100644 index 890bf0c1..00000000 --- a/dist/types/factories/contracts/IRecordStorage__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IRecordStorage__factory.d.ts","sourceRoot":"","sources":["../../../../types/factories/contracts/IRecordStorage__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,cAAc,EACd,uBAAuB,EACxB,MAAM,gCAAgC,CAAC;AA0TxC,qBAAa,uBAAuB;IAClC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,uBAAuB;IAGjD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,cAAc;CAGlB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/IRecordStorage__factory.js b/dist/types/factories/contracts/IRecordStorage__factory.js deleted file mode 100644 index a0a1be59..00000000 --- a/dist/types/factories/contracts/IRecordStorage__factory.js +++ /dev/null @@ -1,325 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IRecordStorage__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - indexed: true, - internalType: "string", - name: "keyIndex", - type: "string", - }, - { - indexed: false, - internalType: "string", - name: "key", - type: "string", - }, - ], - name: "NewKey", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "ResetRecords", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - indexed: true, - internalType: "string", - name: "keyIndex", - type: "string", - }, - { - indexed: true, - internalType: "string", - name: "valueIndex", - type: "string", - }, - { - indexed: false, - internalType: "string", - name: "key", - type: "string", - }, - { - indexed: false, - internalType: "string", - name: "value", - type: "string", - }, - ], - name: "Set", - type: "event", - }, - { - inputs: [ - { - internalType: "string", - name: "key", - type: "string", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "get", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "keyHash", - type: "uint256", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getByHash", - outputs: [ - { - internalType: "string", - name: "key", - type: "string", - }, - { - internalType: "string", - name: "value", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getMany", - outputs: [ - { - internalType: "string[]", - name: "", - type: "string[]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256[]", - name: "keyHashes", - type: "uint256[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getManyByHash", - outputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "reconfigure", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "reset", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "key", - type: "string", - }, - { - internalType: "string", - name: "value", - type: "string", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "set", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "keyHash", - type: "uint256", - }, - { - internalType: "string", - name: "value", - type: "string", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "setByHash", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "setMany", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256[]", - name: "keyHashes", - type: "uint256[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "setManyByHash", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -class IRecordStorage__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IRecordStorage__factory = IRecordStorage__factory; -IRecordStorage__factory.abi = _abi; diff --git a/dist/types/factories/contracts/IRegistryReader__factory.d.ts b/dist/types/factories/contracts/IRegistryReader__factory.d.ts deleted file mode 100644 index abf5b267..00000000 --- a/dist/types/factories/contracts/IRegistryReader__factory.d.ts +++ /dev/null @@ -1,170 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IRegistryReader, IRegistryReaderInterface } from "../../contracts/IRegistryReader"; -export declare class IRegistryReader__factory { - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "balanceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "exists"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getApproved"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly name: "isApprovedForAll"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "spender"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "isApprovedOrOwner"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "labels"; - readonly type: "string[]"; - }]; - readonly name: "namehash"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "ownerOf"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "resolverOf"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }]; - readonly name: "reverseNameOf"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }]; - readonly name: "reverseOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "tokenURI"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): IRegistryReaderInterface; - static connect(address: string, runner?: ContractRunner | null): IRegistryReader; -} -//# sourceMappingURL=IRegistryReader__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/IRegistryReader__factory.d.ts.map b/dist/types/factories/contracts/IRegistryReader__factory.d.ts.map deleted file mode 100644 index 8d6f503b..00000000 --- a/dist/types/factories/contracts/IRegistryReader__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IRegistryReader__factory.d.ts","sourceRoot":"","sources":["../../../../types/factories/contracts/IRegistryReader__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,eAAe,EACf,wBAAwB,EACzB,MAAM,iCAAiC,CAAC;AAgOzC,qBAAa,wBAAwB;IACnC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,wBAAwB;IAGlD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,eAAe;CAGnB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/IRegistryReader__factory.js b/dist/types/factories/contracts/IRegistryReader__factory.js deleted file mode 100644 index c0add71b..00000000 --- a/dist/types/factories/contracts/IRegistryReader__factory.js +++ /dev/null @@ -1,235 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IRegistryReader__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "exists", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getApproved", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - name: "isApprovedForAll", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "spender", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "isApprovedOrOwner", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string[]", - name: "labels", - type: "string[]", - }, - ], - name: "namehash", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "ownerOf", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "resolverOf", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "addr", - type: "address", - }, - ], - name: "reverseNameOf", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "addr", - type: "address", - }, - ], - name: "reverseOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "tokenURI", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class IRegistryReader__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IRegistryReader__factory = IRegistryReader__factory; -IRegistryReader__factory.abi = _abi; diff --git a/dist/types/factories/contracts/IReverseRegistry__factory.d.ts b/dist/types/factories/contracts/IReverseRegistry__factory.d.ts deleted file mode 100644 index a1ee4d2b..00000000 --- a/dist/types/factories/contracts/IReverseRegistry__factory.d.ts +++ /dev/null @@ -1,77 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IReverseRegistry, IReverseRegistryInterface } from "../../contracts/IReverseRegistry"; -export declare class IReverseRegistry__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }]; - readonly name: "RemoveReverse"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "SetReverse"; - readonly type: "event"; - }, { - readonly inputs: readonly []; - readonly name: "removeReverse"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }]; - readonly name: "reverseNameOf"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }]; - readonly name: "reverseOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "labels"; - readonly type: "string[]"; - }]; - readonly name: "setReverse"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): IReverseRegistryInterface; - static connect(address: string, runner?: ContractRunner | null): IReverseRegistry; -} -//# sourceMappingURL=IReverseRegistry__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/IReverseRegistry__factory.d.ts.map b/dist/types/factories/contracts/IReverseRegistry__factory.d.ts.map deleted file mode 100644 index 8ad36077..00000000 --- a/dist/types/factories/contracts/IReverseRegistry__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IReverseRegistry__factory.d.ts","sourceRoot":"","sources":["../../../../types/factories/contracts/IReverseRegistry__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,gBAAgB,EAChB,yBAAyB,EAC1B,MAAM,kCAAkC,CAAC;AA+F1C,qBAAa,yBAAyB;IACpC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,yBAAyB;IAGnD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,gBAAgB;CAGpB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/IReverseRegistry__factory.js b/dist/types/factories/contracts/IReverseRegistry__factory.js deleted file mode 100644 index f3d3d6fe..00000000 --- a/dist/types/factories/contracts/IReverseRegistry__factory.js +++ /dev/null @@ -1,106 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IReverseRegistry__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "addr", - type: "address", - }, - ], - name: "RemoveReverse", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "addr", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "SetReverse", - type: "event", - }, - { - inputs: [], - name: "removeReverse", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "addr", - type: "address", - }, - ], - name: "reverseNameOf", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "addr", - type: "address", - }, - ], - name: "reverseOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string[]", - name: "labels", - type: "string[]", - }, - ], - name: "setReverse", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -class IReverseRegistry__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IReverseRegistry__factory = IReverseRegistry__factory; -IReverseRegistry__factory.abi = _abi; diff --git a/dist/types/factories/contracts/IRootRegistry__factory.d.ts b/dist/types/factories/contracts/IRootRegistry__factory.d.ts deleted file mode 100644 index 4ad31336..00000000 --- a/dist/types/factories/contracts/IRootRegistry__factory.d.ts +++ /dev/null @@ -1,306 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IRootRegistry, IRootRegistryInterface } from "../../contracts/IRootRegistry"; -export declare class IRootRegistry__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "approved"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Approval"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "ApprovalForAll"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Transfer"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "approve"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "balanceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "balance"; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "depositToPolygon"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "exists"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getApproved"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly name: "isApprovedForAll"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "user"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "mint"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "user"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "metaData"; - readonly type: "bytes"; - }]; - readonly name: "mint"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "ownerOf"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly internalType: "bool"; - readonly name: "_approved"; - readonly type: "bool"; - }]; - readonly name: "setApprovalForAll"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "transferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes"; - readonly name: "inputData"; - readonly type: "bytes"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }]; - readonly name: "withdrawFromPolygon"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): IRootRegistryInterface; - static connect(address: string, runner?: ContractRunner | null): IRootRegistry; -} -//# sourceMappingURL=IRootRegistry__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/IRootRegistry__factory.d.ts.map b/dist/types/factories/contracts/IRootRegistry__factory.d.ts.map deleted file mode 100644 index 51426eb2..00000000 --- a/dist/types/factories/contracts/IRootRegistry__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IRootRegistry__factory.d.ts","sourceRoot":"","sources":["../../../../types/factories/contracts/IRootRegistry__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,aAAa,EACb,sBAAsB,EACvB,MAAM,+BAA+B,CAAC;AAuYvC,qBAAa,sBAAsB;IACjC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,sBAAsB;IAGhD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,aAAa;CAGjB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/IRootRegistry__factory.js b/dist/types/factories/contracts/IRootRegistry__factory.js deleted file mode 100644 index 97802903..00000000 --- a/dist/types/factories/contracts/IRootRegistry__factory.js +++ /dev/null @@ -1,402 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IRootRegistry__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "approved", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Approval", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: false, - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "ApprovalForAll", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Transfer", - type: "event", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "approve", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "balance", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "depositToPolygon", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "exists", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getApproved", - outputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - name: "isApprovedForAll", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "user", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "mint", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "user", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "metaData", - type: "bytes", - }, - ], - name: "mint", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "ownerOf", - outputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "safeTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "safeTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "bool", - name: "_approved", - type: "bool", - }, - ], - name: "setApprovalForAll", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "transferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes", - name: "inputData", - type: "bytes", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - ], - name: "withdrawFromPolygon", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -class IRootRegistry__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IRootRegistry__factory = IRootRegistry__factory; -IRootRegistry__factory.abi = _abi; diff --git a/dist/types/factories/contracts/IUNSRegistry__factory.d.ts b/dist/types/factories/contracts/IUNSRegistry__factory.d.ts deleted file mode 100644 index eca5835e..00000000 --- a/dist/types/factories/contracts/IUNSRegistry__factory.d.ts +++ /dev/null @@ -1,966 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IUNSRegistry, IUNSRegistryInterface } from "../../contracts/IUNSRegistry"; -export declare class IUNSRegistry__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "address"; - readonly name: "previousAdmin"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "address"; - readonly name: "newAdmin"; - readonly type: "address"; - }]; - readonly name: "AdminChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "approved"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Approval"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "ApprovalForAll"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly indexed: true; - readonly internalType: "string"; - readonly name: "keyIndex"; - readonly type: "string"; - }, { - readonly indexed: false; - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }]; - readonly name: "NewKey"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly indexed: false; - readonly internalType: "string"; - readonly name: "uri"; - readonly type: "string"; - }]; - readonly name: "NewURI"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "string"; - readonly name: "prefix"; - readonly type: "string"; - }]; - readonly name: "NewURIPrefix"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }]; - readonly name: "RemoveReverse"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "ResetRecords"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly indexed: true; - readonly internalType: "string"; - readonly name: "keyIndex"; - readonly type: "string"; - }, { - readonly indexed: true; - readonly internalType: "string"; - readonly name: "valueIndex"; - readonly type: "string"; - }, { - readonly indexed: false; - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }, { - readonly indexed: false; - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }]; - readonly name: "Set"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly indexed: false; - readonly internalType: "uint64"; - readonly name: "expiry"; - readonly type: "uint64"; - }]; - readonly name: "SetExpiry"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "SetReverse"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Transfer"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "implementation"; - readonly type: "address"; - }]; - readonly name: "Upgraded"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }]; - readonly name: "addProxyReader"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "approve"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "balanceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "balance"; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "burn"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "user"; - readonly type: "address"; - }, { - readonly internalType: "bytes"; - readonly name: "depositData"; - readonly type: "bytes"; - }]; - readonly name: "deposit"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "depositToPolygon"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "exists"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "expiryOf"; - readonly outputs: readonly [{ - readonly internalType: "uint64"; - readonly name: ""; - readonly type: "uint64"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "get"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getApproved"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "keyHash"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getByHash"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }, { - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getMany"; - readonly outputs: readonly [{ - readonly internalType: "string[]"; - readonly name: ""; - readonly type: "string[]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256[]"; - readonly name: "keyHashes"; - readonly type: "uint256[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getManyByHash"; - readonly outputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly name: "isApprovedForAll"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "spender"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "isApprovedOrOwner"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "isExpired"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "user"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "mint"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "user"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "metaData"; - readonly type: "bytes"; - }]; - readonly name: "mint"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "string"; - readonly name: "uri"; - readonly type: "string"; - }]; - readonly name: "mintTLD"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "string[]"; - readonly name: "labels"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }, { - readonly internalType: "bool"; - readonly name: "withReverse"; - readonly type: "bool"; - }]; - readonly name: "mintWithRecords"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "name"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "labels"; - readonly type: "string[]"; - }]; - readonly name: "namehash"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "pure"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "onERC721Received"; - readonly outputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: ""; - readonly type: "bytes4"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "ownerOf"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "reconfigure"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "removeReverse"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "reset"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "resolverOf"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }]; - readonly name: "reverseNameOf"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }]; - readonly name: "reverseOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }, { - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "set"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly internalType: "bool"; - readonly name: "_approved"; - readonly type: "bool"; - }]; - readonly name: "setApprovalForAll"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "keyHash"; - readonly type: "uint256"; - }, { - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "setByHash"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint64"; - readonly name: "expiry"; - readonly type: "uint64"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "setExpiry"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "setMany"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256[]"; - readonly name: "keyHashes"; - readonly type: "uint256[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "setManyByHash"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "setOwner"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "labels"; - readonly type: "string[]"; - }]; - readonly name: "setReverse"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "prefix"; - readonly type: "string"; - }]; - readonly name: "setTokenURIPrefix"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "symbol"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "tokenURI"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "transferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "unlock"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "string[]"; - readonly name: "labels"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }, { - readonly internalType: "bool"; - readonly name: "withReverse"; - readonly type: "bool"; - }]; - readonly name: "unlockWithRecords"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes"; - readonly name: "inputData"; - readonly type: "bytes"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }]; - readonly name: "withdrawFromPolygon"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): IUNSRegistryInterface; - static connect(address: string, runner?: ContractRunner | null): IUNSRegistry; -} -//# sourceMappingURL=IUNSRegistry__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/IUNSRegistry__factory.d.ts.map b/dist/types/factories/contracts/IUNSRegistry__factory.d.ts.map deleted file mode 100644 index 1a2dcf89..00000000 --- a/dist/types/factories/contracts/IUNSRegistry__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IUNSRegistry__factory.d.ts","sourceRoot":"","sources":["../../../../types/factories/contracts/IUNSRegistry__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,YAAY,EACZ,qBAAqB,EACtB,MAAM,8BAA8B,CAAC;AA+tCtC,qBAAa,qBAAqB;IAChC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,qBAAqB;IAG/C,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,YAAY;CAGhB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/IUNSRegistry__factory.js b/dist/types/factories/contracts/IUNSRegistry__factory.js deleted file mode 100644 index a244a48f..00000000 --- a/dist/types/factories/contracts/IUNSRegistry__factory.js +++ /dev/null @@ -1,1258 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IUNSRegistry__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "previousAdmin", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "newAdmin", - type: "address", - }, - ], - name: "AdminChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "approved", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Approval", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: false, - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "ApprovalForAll", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - indexed: true, - internalType: "string", - name: "keyIndex", - type: "string", - }, - { - indexed: false, - internalType: "string", - name: "key", - type: "string", - }, - ], - name: "NewKey", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - indexed: false, - internalType: "string", - name: "uri", - type: "string", - }, - ], - name: "NewURI", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "string", - name: "prefix", - type: "string", - }, - ], - name: "NewURIPrefix", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "addr", - type: "address", - }, - ], - name: "RemoveReverse", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "ResetRecords", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - indexed: true, - internalType: "string", - name: "keyIndex", - type: "string", - }, - { - indexed: true, - internalType: "string", - name: "valueIndex", - type: "string", - }, - { - indexed: false, - internalType: "string", - name: "key", - type: "string", - }, - { - indexed: false, - internalType: "string", - name: "value", - type: "string", - }, - ], - name: "Set", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - indexed: false, - internalType: "uint64", - name: "expiry", - type: "uint64", - }, - ], - name: "SetExpiry", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "addr", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "SetReverse", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Transfer", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "implementation", - type: "address", - }, - ], - name: "Upgraded", - type: "event", - }, - { - inputs: [ - { - internalType: "address", - name: "addr", - type: "address", - }, - ], - name: "addProxyReader", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "approve", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "balance", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "burn", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "user", - type: "address", - }, - { - internalType: "bytes", - name: "depositData", - type: "bytes", - }, - ], - name: "deposit", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "depositToPolygon", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "exists", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "expiryOf", - outputs: [ - { - internalType: "uint64", - name: "", - type: "uint64", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "key", - type: "string", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "get", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getApproved", - outputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "keyHash", - type: "uint256", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getByHash", - outputs: [ - { - internalType: "string", - name: "key", - type: "string", - }, - { - internalType: "string", - name: "value", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getMany", - outputs: [ - { - internalType: "string[]", - name: "", - type: "string[]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256[]", - name: "keyHashes", - type: "uint256[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getManyByHash", - outputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - name: "isApprovedForAll", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "spender", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "isApprovedOrOwner", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "isExpired", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "user", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "mint", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "user", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "metaData", - type: "bytes", - }, - ], - name: "mint", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "string", - name: "uri", - type: "string", - }, - ], - name: "mintTLD", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "string[]", - name: "labels", - type: "string[]", - }, - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - { - internalType: "bool", - name: "withReverse", - type: "bool", - }, - ], - name: "mintWithRecords", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "name", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string[]", - name: "labels", - type: "string[]", - }, - ], - name: "namehash", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "pure", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "onERC721Received", - outputs: [ - { - internalType: "bytes4", - name: "", - type: "bytes4", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "ownerOf", - outputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "reconfigure", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "removeReverse", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "reset", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "resolverOf", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "addr", - type: "address", - }, - ], - name: "reverseNameOf", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "addr", - type: "address", - }, - ], - name: "reverseOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "safeTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "safeTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "key", - type: "string", - }, - { - internalType: "string", - name: "value", - type: "string", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "set", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "bool", - name: "_approved", - type: "bool", - }, - ], - name: "setApprovalForAll", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "keyHash", - type: "uint256", - }, - { - internalType: "string", - name: "value", - type: "string", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "setByHash", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint64", - name: "expiry", - type: "uint64", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "setExpiry", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "setMany", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256[]", - name: "keyHashes", - type: "uint256[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "setManyByHash", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "setOwner", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "string[]", - name: "labels", - type: "string[]", - }, - ], - name: "setReverse", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "prefix", - type: "string", - }, - ], - name: "setTokenURIPrefix", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "symbol", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "tokenURI", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "transferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "unlock", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "string[]", - name: "labels", - type: "string[]", - }, - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - { - internalType: "bool", - name: "withReverse", - type: "bool", - }, - ], - name: "unlockWithRecords", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes", - name: "inputData", - type: "bytes", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - ], - name: "withdrawFromPolygon", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -class IUNSRegistry__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IUNSRegistry__factory = IUNSRegistry__factory; -IUNSRegistry__factory.abi = _abi; diff --git a/dist/types/factories/contracts/KeyStorage__factory.d.ts b/dist/types/factories/contracts/KeyStorage__factory.d.ts deleted file mode 100644 index f57bc1f3..00000000 --- a/dist/types/factories/contracts/KeyStorage__factory.d.ts +++ /dev/null @@ -1,46 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { KeyStorage, KeyStorageInterface } from "../../contracts/KeyStorage"; -export declare class KeyStorage__factory { - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }]; - readonly name: "addKey"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "keyHash"; - readonly type: "uint256"; - }]; - readonly name: "getKey"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256[]"; - readonly name: "hashes"; - readonly type: "uint256[]"; - }]; - readonly name: "getKeys"; - readonly outputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): KeyStorageInterface; - static connect(address: string, runner?: ContractRunner | null): KeyStorage; -} -//# sourceMappingURL=KeyStorage__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/KeyStorage__factory.d.ts.map b/dist/types/factories/contracts/KeyStorage__factory.d.ts.map deleted file mode 100644 index 21057696..00000000 --- a/dist/types/factories/contracts/KeyStorage__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"KeyStorage__factory.d.ts","sourceRoot":"","sources":["../../../../types/factories/contracts/KeyStorage__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,UAAU,EACV,mBAAmB,EACpB,MAAM,4BAA4B,CAAC;AAwDpC,qBAAa,mBAAmB;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,mBAAmB;IAG7C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,UAAU;CAG5E"} \ No newline at end of file diff --git a/dist/types/factories/contracts/KeyStorage__factory.js b/dist/types/factories/contracts/KeyStorage__factory.js deleted file mode 100644 index bddd835b..00000000 --- a/dist/types/factories/contracts/KeyStorage__factory.js +++ /dev/null @@ -1,67 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.KeyStorage__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "string", - name: "key", - type: "string", - }, - ], - name: "addKey", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "keyHash", - type: "uint256", - }, - ], - name: "getKey", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256[]", - name: "hashes", - type: "uint256[]", - }, - ], - name: "getKeys", - outputs: [ - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class KeyStorage__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.KeyStorage__factory = KeyStorage__factory; -KeyStorage__factory.abi = _abi; diff --git a/dist/types/factories/contracts/MintingManager__factory.d.ts b/dist/types/factories/contracts/MintingManager__factory.d.ts deleted file mode 100644 index b64b71cb..00000000 --- a/dist/types/factories/contracts/MintingManager__factory.d.ts +++ /dev/null @@ -1,920 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../common"; -import type { MintingManager, MintingManagerInterface } from "../../contracts/MintingManager"; -declare type MintingManagerConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class MintingManager__factory extends ContractFactory { - constructor(...args: MintingManagerConstructorParams); - getDeployTransaction(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): MintingManager__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b50614f20806100206000396000f3fe6080604052600436106102ae5760003560e01c8063906cecc111610175578063b9998a24116100dc578063d547741f11610095578063f2fde38b1161006f578063f2fde38b14610892578063f5243bc4146108b2578063f940e385146108d2578063ffa1ad74146108f257600080fd5b8063d547741f1461083f578063d7db74c71461085f578063ec5273891461087257600080fd5b8063b9998a241461077d578063cc2a9a5b1461079d578063cc2c3fc4146107bd578063ceeb4f50146107dd578063d1f5692c146107fd578063d53913931461081d57600080fd5b8063a3a3f7f61161012e578063a3a3f7f614610690578063a3f4df7e146106b0578063a849d65c146106fd578063aa271e1a1461071d578063b0aa98c71461073d578063b3ab15fb1461075d57600080fd5b8063906cecc1146105e657806391d1485414610606578063983b2d5614610626578063986502751461064657806399e0dd7c1461065b578063a217fddf1461067b57600080fd5b80635b6fa8db11610219578063715018a6116101d2578063715018a61461054b57806371e2a6571461056057806377a2a5891461058057806381c81d35146105a05780638456cb59146105b35780638da5cb5b146105c857600080fd5b80635b6fa8db146104a35780635c975abb146104c35780635cd7e3b3146104d85780635e22cd86146104f85780635fc1964f14610518578063634486da1461053857600080fd5b80633092afd51161026b5780633092afd5146103a857806336568abe146103c85780633f41b614146103e85780633f4ba83a1461042057806351cff8d914610435578063572b6c051461045557600080fd5b806301ffc9a7146102b35780631edb948e146102e857806320c5429b1461030a578063248a9ca31461032a578063268b15ed146103685780632f2ff15d14610388575b600080fd5b3480156102bf57600080fd5b506102d36102ce366004613dc4565b610923565b60405190151581526020015b60405180910390f35b3480156102f457600080fd5b50610308610303366004613e13565b61095a565b005b34801561031657600080fd5b50610308610325366004613e3f565b610b03565b34801561033657600080fd5b5061035a610345366004613e3f565b60009081526097602052604090206001015490565b6040519081526020016102df565b34801561037457600080fd5b50610308610383366004613e99565b610c26565b34801561039457600080fd5b506103086103a3366004613f04565b610cb9565b3480156103b457600080fd5b506103086103c3366004613f34565b610ce3565b3480156103d457600080fd5b506103086103e3366004613f04565b610cf7565b3480156103f457600080fd5b5060c954610408906001600160a01b031681565b6040516001600160a01b0390911681526020016102df565b34801561042c57600080fd5b50610308610d85565b34801561044157600080fd5b50610308610450366004613f34565b610d97565b34801561046157600080fd5b506102d3610470366004613f34565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546001600160a01b0390811691161490565b3480156104af57600080fd5b5060cc54610408906001600160a01b031681565b3480156104cf57600080fd5b506102d3610e37565b3480156104e457600080fd5b506103086104f3366004613fa3565b610e4d565b34801561050457600080fd5b50610308610513366004614062565b6110b1565b34801561052457600080fd5b5061030861053336600461419c565b6112f6565b610308610546366004613f34565b61133e565b34801561055757600080fd5b50610308611401565b34801561056c57600080fd5b5061030861057b36600461419c565b611413565b34801561058c57600080fd5b5060ce54610408906001600160a01b031681565b6103086105ae366004613f34565b61145b565b3480156105bf57600080fd5b506103086114d8565b3480156105d457600080fd5b506033546001600160a01b0316610408565b3480156105f257600080fd5b5061030861060136600461423a565b6114e8565b34801561061257600080fd5b506102d3610621366004613f04565b61156e565b34801561063257600080fd5b50610308610641366004613f34565b611599565b34801561065257600080fd5b506103086115aa565b34801561066757600080fd5b50610308610676366004614295565b6115c4565b34801561068757600080fd5b5061035a600081565b34801561069c57600080fd5b506103086106ab3660046142d6565b6116ab565b3480156106bc57600080fd5b506106f0604051806040016040528060148152602001732aa7299d1026b4b73a34b7339026b0b730b3b2b960611b81525081565b6040516102df919061437c565b34801561070957600080fd5b5060cb54610408906001600160a01b031681565b34801561072957600080fd5b506102d3610738366004613f34565b6116f4565b34801561074957600080fd5b506102d3610758366004613e3f565b61170e565b34801561076957600080fd5b50610308610778366004613f34565b61176c565b34801561078957600080fd5b50610308610798366004613f34565b611796565b3480156107a957600080fd5b506103086107b836600461438f565b6117db565b3480156107c957600080fd5b5060ca54610408906001600160a01b031681565b3480156107e957600080fd5b506103086107f8366004614411565b611cd2565b34801561080957600080fd5b506103086108183660046144c6565b611d76565b34801561082957600080fd5b5061035a600080516020614ef483398151915281565b34801561084b57600080fd5b5061030861085a366004613f04565b611e2d565b61030861086d3660046144fb565b611e52565b34801561087e57600080fd5b5061030861088d366004613e3f565b611fe2565b34801561089e57600080fd5b506103086108ad366004613f34565b612054565b3480156108be57600080fd5b506103086108cd3660046145f0565b612070565b3480156108de57600080fd5b506103086108ed366004614708565b612222565b3480156108fe57600080fd5b506106f060405180604001604052806005815260200164302e352e3160d81b81525081565b60006001600160e01b03198216637965db0b60e01b148061095457506301ffc9a760e01b6001600160e01b03198316145b92915050565b61096561073861239e565b61098a5760405162461bcd60e51b815260040161098190614736565b60405180910390fd5b60c95460405163baef73e960e01b8152600481018390526000916001600160a01b03169063baef73e990602401602060405180830381865afa1580156109d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109f8919061476b565b9050806001600160401b0316600003610a235760405162461bcd60e51b815260040161098190614788565b806001600160401b0316836001600160401b031611610a905760405162461bcd60e51b815260206004820152602360248201527f4d696e74696e674d616e616765723a204558504952595f4e4f545f455854454e60448201526211115160ea1b6064820152608401610981565b60c954604051631fb9763760e11b81526001600160401b0385166004820152602481018490526001600160a01b0390911690633f72ec6e906044015b600060405180830381600087803b158015610ae657600080fd5b505af1158015610afa573d6000803e3d6000fd5b50505050505050565b610b0e61073861239e565b610b2a5760405162461bcd60e51b815260040161098190614736565b60c95460405163baef73e960e01b8152600481018390526001600160a01b039091169063baef73e990602401602060405180830381865afa158015610b73573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b97919061476b565b6001600160401b0316600003610bbf5760405162461bcd60e51b815260040161098190614788565b60c954604051637eee288d60e01b8152306004820152602481018390526001600160a01b0390911690637eee288d90604401600060405180830381600087803b158015610c0b57600080fd5b505af1158015610c1f573d6000803e3d6000fd5b5050505050565b8282828080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250610c6993508592508491506123ad565b610c71610e37565b15610c8e5760405162461bcd60e51b8152600401610981906147cb565b6060610afa610c9b61239e565b610cae88610ca98989612584565b6125b0565b8384600060016126c1565b600082815260976020526040902060010154610cd481612c15565b610cde8383612c26565b505050565b610ceb612cad565b610cf481612d26565b50565b610cff61239e565b6001600160a01b0316816001600160a01b031614610d775760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610981565b610d818282612d3e565b5050565b610d8d612cad565b610d95612dc3565b565b610d9f612cad565b6001600160a01b038116610db257600080fd5b60405147906001600160a01b0383169082156108fc029083906000818181858888f19350505050158015610dea573d6000803e3d6000fd5b50604080516001600160a01b03841681526020810183905260008183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a15050565b600080516020614ed48339815191525460ff1690565b610e5786886147f5565b8051600203610e8c57610e6b61073861239e565b610e875760405162461bcd60e51b8152600401610981906148bf565b610fd1565b6000610e9782612e6b565b60c9549092506001600160a01b0316905063430c2081610eb561239e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015610f00573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f249190614903565b80610fb3575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa158015610f7d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fa19190614903565b8015610fb35750610fb361073861239e565b610fcf5760405162461bcd60e51b815260040161098190614920565b505b610fdb87896147f5565b6000600282511015610fff5760405162461bcd60e51b81526004016109819061496f565b6110546110336000846001865161101691906149ca565b81518110611026576110266149dd565b6020026020010151612ea6565b83600081518110611046576110466149dd565b6020026020010151836123ad565b61105c610e37565b156110795760405162461bcd60e51b8152600401610981906147cb565b6110a38b6110878b8d6147f5565b6110918a8c6147f5565b61109b898b6147f5565b6000896126c1565b505050505050505050505050565b6110bb87896147f5565b80516002036110f0576110cf61073861239e565b6110eb5760405162461bcd60e51b8152600401610981906148bf565b611235565b60006110fb82612e6b565b60c9549092506001600160a01b0316905063430c208161111961239e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015611164573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111889190614903565b80611217575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa1580156111e1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112059190614903565b8015611217575061121761073861239e565b6112335760405162461bcd60e51b815260040161098190614920565b505b61123f888a6147f5565b836002825110156112625760405162461bcd60e51b81526004016109819061496f565b6112796110336000846001865161101691906149ca565b611281610e37565b1561129e5760405162461bcd60e51b8152600401610981906147cb565b60028a146112be5760405162461bcd60e51b8152600401610981906149f3565b6112e78c6112cc8c8e6147f5565b6112d68b8d6147f5565b6112e08a8c6147f5565b89896126c1565b50505050505050505050505050565b6112fe612cad565b60005b8151811015610d815761132c82828151811061131f5761131f6149dd565b6020026020010151612d26565b8061133681614a39565b915050611301565b61134961073861239e565b6113655760405162461bcd60e51b815260040161098190614736565b6001600160a01b0381166113bb5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610981565b6113c481612f5a565b6113cc6115aa565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610d81573d6000803e3d6000fd5b611409612cad565b610d956000612f72565b61141b612cad565b60005b8151811015610d815761144982828151811061143c5761143c6149dd565b6020026020010151612f5a565b8061145381614a39565b91505061141e565b61146661073861239e565b6114825760405162461bcd60e51b815260040161098190614736565b6001600160a01b0381166113c45760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610981565b6114e0612cad565b610d95612fc4565b8282828080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525061152b93508592508491506123ad565b611533610e37565b156115505760405162461bcd60e51b8152600401610981906147cb565b606061156487610cae88610ca98989612584565b5050505050505050565b60009182526097602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6115a1612cad565b610cf481612f5a565b610d95600080516020614ef48339815191526103e361239e565b6115cc612cad565b60c954604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906115fe9085908590600401614a52565b600060405180830381600087803b15801561161857600080fd5b505af115801561162c573d6000803e3d6000fd5b505060cb546001600160a01b0316159150610d8190505760cb54604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906116759085908590600401614a52565b600060405180830381600087803b15801561168f57600080fd5b505af11580156116a3573d6000803e3d6000fd5b505050505050565b6116b3612cad565b610cde83838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525085925061302c915050565b6000610954600080516020614ef48339815191528361156e565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd696020820152908101829052600090611762906060015b6040516020818303038152906040528051906020012090565b5460ff1692915050565b611774612cad565b60ce80546001600160a01b0319166001600160a01b0392909216919091179055565b61179e612cad565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e80546001600160a01b0319166001600160a01b03831617905550565b600054610100900460ff16158080156117fb5750600054600160ff909116105b806118155750303b158015611815575060005460ff166001145b6118785760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610981565b6000805460ff19166001179055801561189b576000805461ff0019166101001790555b60c980546001600160a01b03199081166001600160a01b038a81169190911790925560ca8054821689841617905560cb8054821688841617905560cc8054821687841617905560ce80549091169185169190911790556118f961314c565b611901613183565b61190a826131bc565b6119126131e3565b6040805161036081018252600661032082018181526563727970746f60d01b610340840152825282518084018452818152651dd85b1b195d60d21b602082810191909152808401919091528351808501855260018152600f60fb1b8183015283850152835180850185526003808252621b999d60ea1b82840152606085019190915284518086018652600a815269313637b1b5b1b430b4b760b11b818401526080850152845180860186526007808252663134ba31b7b4b760c91b8285015260a0860191909152855180870187528281526207070760eb1b8185015260c0860152855180870187528281526264616f60e81b8185015260e086015285518087018752828152621e9a5b60ea1b8185015261010086015285518087018752908152663837b63cb3b7b760c91b8184015261012085015284518086018652600b81526a756e73746f707061626c6560a81b81840152610140850152845180860186528381526535b632bb32b960d11b8184015261016085015284518086018652600280825261686960f01b8285015261018086019190915285518087018752848152656b726573757360d01b818501526101a086015285518087018752600580825264616e696d6560d81b828601526101c087019190915286518088018852818152646d616e676160d81b818601526101e087015286518088018852600981526862696e616e6365757360b81b8186015261020087015286518088018852818152647265616c6d60d81b818601526102208701528651808801885291825261676f60f01b82850152610240860191909152855180870187526008815267185b1d1a5b5a5cdd60c21b818501526102608601528551808701875290815264707564677960d81b81840152610280850152845180860186528381526530bab9ba34b760d11b818401526102a08501528451808601865292835265189a5d19d95d60d21b838301526102c08401929092528351808501855291825262706f6760e81b828201526102e083019190915282518084019093526004835263636c617960e01b9083015261030081019190915260005b6019811015611c5c57611c4a828260198110611c3e57611c3e6149dd565b6020020151600061302c565b80611c5481614a39565b915050611c20565b50611c8360405180604001604052806003815260200162636f6d60e81b815250600161302c565b508015610afa576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050505050565b8686868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250611d1593508592508491506123ad565b611d1d610e37565b15611d3a5760405162461bcd60e51b8152600401610981906147cb565b611d698a611d4c8b610ca98c8c612584565b611d56888a6147f5565b611d6087896147f5565b600060016126c1565b5050505050505050505050565b611d7e612cad565b60005b81811015610cde5760c9546001600160a01b03166350960239848484818110611dac57611dac6149dd565b9050602002016020810190611dc19190613f34565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401600060405180830381600087803b158015611e0257600080fd5b505af1158015611e16573d6000803e3d6000fd5b505050508080611e2590614a39565b915050611d81565b600082815260976020526040902060010154611e4881612c15565b610cde8383612d3e565b611e5c898b6147f5565b6000600282511015611e805760405162461bcd60e51b81526004016109819061496f565b611e976110336000846001865161101691906149ca565b611e9f610e37565b15611ebc5760405162461bcd60e51b8152600401610981906147cb565b60028b14611edc5760405162461bcd60e51b8152600401610981906149f3565b611f228d8d8d898960008a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061322392505050565b84341015611f725760405162461bcd60e51b815260206004820181905260248201527f4d696e74696e674d616e616765723a204e4f545f454e4f5547485f46554e44536044820152606401610981565b611f848d8d8d8d8d8d8d8c60006133e3565b843411156112e757611f9461239e565b6001600160a01b03166108fc611faa87346149ca565b6040518115909202916000818181858888f19350505050158015611fd2573d6000803e3d6000fd5b5050505050505050505050505050565b611fea612cad565b611ff38161349f565b61200f5760405162461bcd60e51b815260040161098190614a81565b600081815260cd6020526040812061202691613d76565b60405181907f0aa1aff0f830e739d86baf0e6624d6763da02f7733575e0e463886cd062dea6a90600090a250565b61205c612cad565b612065816134c5565b610cf460008261353b565b61207a8a8c6147f5565b600060028251101561209e5760405162461bcd60e51b81526004016109819061496f565b6120b56110336000846001865161101691906149ca565b6120bd610e37565b156120da5760405162461bcd60e51b8152600401610981906147cb565b60028c146120fa5760405162461bcd60e51b8152600401610981906149f3565b61213f8e8e8e8a898b8a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061322392505050565b856001600160a01b03166323b872dd61215661239e565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152306024820152604481018890526064016020604051808303816000875af11580156121a9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121cd9190614903565b6122115760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610981565b611fd28e8e8e8e8e8e8e8c8e6133e3565b61222a612cad565b6040516370a0823160e01b81523060048201526000906001600160a01b038416906370a0823190602401602060405180830381865afa158015612271573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122959190614ac3565b60405163a9059cbb60e01b81526001600160a01b038481166004830152602482018390529192509084169063a9059cbb906044016020604051808303816000875af11580156122e8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061230c9190614903565b6123505760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610981565b604080516001600160a01b0384811682526020820184905285168183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a1505050565b60006123a8613545565b905090565b6123b68361349f565b6123d25760405162461bcd60e51b815260040161098190614a81565b600083815260cf602052604090205460ff1615156001600160401b03821615151461244e5760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544c445f455850495241424c455f4d496044820152650a69a82a886960d31b6064820152608401610981565b60006124818360408051808201825260008082526020918201528151808301909252825182529182019181019190915290565b9050600a81600001511115612529576124ac6124a0826000600a61358b565b80516020909101512090565b7fb551e0305c8163b812374b8e78b577c77f226f6f10c5ad03e52699578fbc34b8036125295760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544f4b454e5f4c4142454c5f50524f4860448201526512509255115160d21b6064820152608401610981565b612532836135ca565b61257e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a204c4142454c5f494e56414c49440000006044820152606401610981565b50505050565b60608282604051602001612599929190614adc565b604051602081830303815290604052905092915050565b604080516002808252606082810190935260009190816020015b60608152602001906001900390816125ca57905050905082816000815181106125f5576125f56149dd565b602002602001018190525060cd6000858152602001908152602001600020805461261e90614b04565b80601f016020809104026020016040519081016040528092919081815260200182805461264a90614b04565b80156126975780601f1061266c57610100808354040283529160200191612697565b820191906000526020600020905b81548152906001019060200180831161267a57829003601f168201915b5050505050816001815181106126af576126af6149dd565b60209081029190910101529392505050565b60008060006126cf88612e6b565b915091508380156126e1575060028851115b8015612763575060c9546040516331a9108f60e11b8152600481018390526001600160a01b038b8116921690636352211e90602401602060405180830381865afa158015612733573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127579190614b3e565b6001600160a01b031614155b156127c35760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e616765723a20524556455253455f5245434f52445f4e60448201526913d517d0531313d5d15160b21b6064820152608401610981565b60c954604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401602060405180830381865afa15801561280c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128309190614903565b8015612921575060c9546040516331a9108f60e11b81526004810184905230916001600160a01b031690636352211e90602401602060405180830381865afa158015612880573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128a49190614b3e565b6001600160a01b03161480612921575060c95460405163d9548e5360e01b8152600481018490526001600160a01b039091169063d9548e5390602401602060405180830381865afa1580156128fd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129219190614903565b15612a12576001600160401b038516156129a35760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b15801561298a57600080fd5b505af115801561299e573d6000803e3d6000fd5b505050505b60c954604051630fb8df0360e11b81526001600160a01b0390911690631f71be06906129db908c908c908c908c908b90600401614bb0565b600060405180830381600087803b1580156129f557600080fd5b505af1158015612a09573d6000803e3d6000fd5b50505050612c09565b612a1b8261372e565b612a248861378d565b8015612a31575087516002145b8015612a4457506001600160401b038516155b15612b225760ca5488516001600160a01b039091169063c36c2125908b908b90600090612a7357612a736149dd565b602090810291909101015160cc546040516001600160e01b031960e086901b168152612aad9392916001600160a01b031690600401614c0f565b600060405180830381600087803b158015612ac757600080fd5b505af1158015612adb573d6000803e3d6000fd5b50505050600087511115612b1d5760cc54604051633a0deb9d60e21b81526001600160a01b039091169063e837ae74906129db908a908a908790600401614c44565b612c09565b60c95460405163ba5d40b760e01b81526001600160a01b039091169063ba5d40b790612b5a908c908c908c908c908b90600401614bb0565b600060405180830381600087803b158015612b7457600080fd5b505af1158015612b88573d6000803e3d6000fd5b505050506001600160401b03851615612c095760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b158015612bf057600080fd5b505af1158015612c04573d6000803e3d6000fd5b505050505b50979650505050505050565b610cf481612c2161239e565b6137e7565b612c30828261156e565b610d815760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19166001179055612c6961239e565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b612cb561239e565b6001600160a01b0316612cd06033546001600160a01b031690565b6001600160a01b031614610d955760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610981565b610cf4600080516020614ef483398151915282611e2d565b612d48828261156e565b15610d815760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19169055612d7f61239e565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612dcb610e37565b612e0e5760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881393d517d4105554d15160621b6044820152606401610981565b600080516020614ed4833981519152805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa612e4e61239e565b6040516001600160a01b03909116815260200160405180910390a1565b805160009081905b8015612ea057829150612e8c82856110166001856149ca565b925080612e9881614c7a565b915050612e73565b50915091565b60008151600003612ef95760405162461bcd60e51b815260206004820152601b60248201527f4d696e74696e674d616e616765723a204c4142454c5f454d50545900000000006044820152606401610981565b8282604051602001612f0b9190614c91565b60405160208183030381529060405280519060200120604051602001612f3b929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b610cf4600080516020614ef48339815191528261353b565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b612fcc610e37565b15612fe95760405162461bcd60e51b8152600401610981906147cb565b600080516020614ed4833981519152805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258612e4e61239e565b6000613039600084612ea6565b600081815260cd602052604090209091506130548482614cf3565b50600081815260cf602052604090819020805460ff19168415151790555181907f4fce6f6e172b04eaa80325d8e3b0180a34945000f3e214605039e8420fdf8980906130a190869061437c565b60405180910390a260c954604051634f558e7960e01b8152600481018390526001600160a01b0390911690634f558e7990602401602060405180830381865afa1580156130f2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131169190614903565b610cde5760c9546040516307befae360e51b81526001600160a01b039091169063f7df5c6090610acc9084908790600401614db2565b600054610100900460ff166131735760405162461bcd60e51b815260040161098190614dd3565b610d9561317e61239e565b612f72565b600054610100900460ff166131aa5760405162461bcd60e51b815260040161098190614dd3565b610d9560006131b761239e565b61353b565b600054610100900460ff1661179e5760405162461bcd60e51b815260040161098190614dd3565b600054610100900460ff1661320a5760405162461bcd60e51b815260040161098190614dd3565b600080516020614ed4833981519152805460ff19169055565b600061323761323287896147f5565b612e6b565b506040516bffffffffffffffffffffffff1930606090811b821660208401524660348401528b811b82166054840152606883018490526001600160c01b031960c08a901b1660888401526090830188905286901b1660b082015290915060009061331390849061330d9060c401604051602081830303815290604052805190602001206040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c8101829052600090605c01604051602081830303815290604052805190602001209050919050565b9061384b565b905061331e816116f4565b6133765760405162461bcd60e51b8152602060048201526024808201527f4d696e74696e674d616e616765723a205349474e45525f49535f4e4f545f4d49604482015263272a22a960e11b6064820152608401610981565b42866001600160401b0316116133d85760405162461bcd60e51b815260206004820152602160248201527f4d696e74696e674d616e616765723a20455850495245445f5349474e415455526044820152604560f81b6064820152608401610981565b505050505050505050565b600061342a8a6133f38a8c6147f5565b6133fd898b6147f5565b613407888a6147f5565b60008f6001600160a01b031661341b61239e565b6001600160a01b0316146126c1565b9050896001600160a01b031661343e61239e565b6001600160a01b0316827fa545b6fd3355e8d57f8c8147bafe740545bd3ea1f94bef2576a6d532a7c3b605868660405161348b9291909182526001600160a01b0316602082015260400190565b60405180910390a450505050505050505050565b600081815260cd6020526040812080548291906134bb90614b04565b9050119050919050565b6134cd612cad565b6001600160a01b0381166135325760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610981565b610cf481612f72565b610d818282612c26565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546000906001600160a01b03163303613586575060331936013560601c90565b503390565b604080518082019091526000808252602082015260405180604001604052808381526020018486602001516135c09190614e1e565b9052949350505050565b600081516000036135dd57506000919050565b60208201805160f81c603081108015906135fb575060398160ff1611155b15801561361d575060618160ff161015801561361b5750607a8160ff1611155b155b1561362c575060009392505050565b8351600181111561369a5761364e836136466001846149ca565b015160f81c90565b915060308260ff1610158015613668575060398260ff1611155b15801561368a575060618260ff16101580156136885750607a8260ff1611155b155b1561369a57506000949350505050565b60015b6136a86001836149ca565b811015613722578381015160f81c9250602d83148015906136de575060308360ff16101580156136dc575060398360ff1611155b155b80156136ff575060618360ff16101580156136fd5750607a8360ff1611155b155b156137105750600095945050505050565b8061371a81614a39565b91505061369d565b50600195945050505050565b6137378161170e565b156137845760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a20544f4b454e5f424c4f434b45440000006044820152606401610981565b610cf48161386f565b6000806137a46000846001865161101691906149ca565b60ca549091506001600160a01b0316158015906137e05750807f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f145b9392505050565b6137f1828261156e565b610d8157613809816001600160a01b031660146138f3565b6138148360206138f3565b604051602001613825929190614e31565b60408051601f198184030181529082905262461bcd60e51b82526109819160040161437c565b600080600061385a8585613a8e565b9150915061386781613ad3565b509392505050565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd6960208201529081018290526001906138ae90606001611749565b805460ff19169115159190911790556040518181527f2ce5d9351b1d590d5a066db0d2dc7602d55f092506a83a7ee8c4d78ee357d75a9060200160405180910390a150565b60606000613902836002614ea6565b61390d906002614e1e565b6001600160401b0381111561392457613924614133565b6040519080825280601f01601f19166020018201604052801561394e576020820181803683370190505b509050600360fc1b81600081518110613969576139696149dd565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110613998576139986149dd565b60200101906001600160f81b031916908160001a90535060006139bc846002614ea6565b6139c7906001614e1e565b90505b6001811115613a3f576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106139fb576139fb6149dd565b1a60f81b828281518110613a1157613a116149dd565b60200101906001600160f81b031916908160001a90535060049490941c93613a3881614c7a565b90506139ca565b5083156137e05760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610981565b6000808251604103613ac45760208301516040840151606085015160001a613ab887828585613c89565b94509450505050613acc565b506000905060025b9250929050565b6000816004811115613ae757613ae7614ebd565b03613aef5750565b6001816004811115613b0357613b03614ebd565b03613b505760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152606401610981565b6002816004811115613b6457613b64614ebd565b03613bb15760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610981565b6003816004811115613bc557613bc5614ebd565b03613c1d5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b6064820152608401610981565b6004816004811115613c3157613c31614ebd565b03610cf45760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c604482015261756560f01b6064820152608401610981565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613cc05750600090506003613d6d565b8460ff16601b14158015613cd857508460ff16601c14155b15613ce95750600090506004613d6d565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613d3d573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613d6657600060019250925050613d6d565b9150600090505b94509492505050565b508054613d8290614b04565b6000825580601f10613d92575050565b601f016020900490600052602060002090810190610cf491905b80821115613dc05760008155600101613dac565b5090565b600060208284031215613dd657600080fd5b81356001600160e01b0319811681146137e057600080fd5b6001600160401b0381168114610cf457600080fd5b8035613e0e81613dee565b919050565b60008060408385031215613e2657600080fd5b8235613e3181613dee565b946020939093013593505050565b600060208284031215613e5157600080fd5b5035919050565b60008083601f840112613e6a57600080fd5b5081356001600160401b03811115613e8157600080fd5b602083019150836020828501011115613acc57600080fd5b600080600060408486031215613eae57600080fd5b8335925060208401356001600160401b03811115613ecb57600080fd5b613ed786828701613e58565b9497909650939450505050565b6001600160a01b0381168114610cf457600080fd5b8035613e0e81613ee4565b60008060408385031215613f1757600080fd5b823591506020830135613f2981613ee4565b809150509250929050565b600060208284031215613f4657600080fd5b81356137e081613ee4565b60008083601f840112613f6357600080fd5b5081356001600160401b03811115613f7a57600080fd5b6020830191508360208260051b8501011115613acc57600080fd5b8015158114610cf457600080fd5b60008060008060008060008060a0898b031215613fbf57600080fd5b8835613fca81613ee4565b975060208901356001600160401b0380821115613fe657600080fd5b613ff28c838d01613f51565b909950975060408b013591508082111561400b57600080fd5b6140178c838d01613f51565b909750955060608b013591508082111561403057600080fd5b5061403d8b828c01613f51565b909450925050608089013561405181613f95565b809150509295985092959890939650565b600080600080600080600080600060c08a8c03121561408057600080fd5b893561408b81613ee4565b985060208a01356001600160401b03808211156140a757600080fd5b6140b38d838e01613f51565b909a50985060408c01359150808211156140cc57600080fd5b6140d88d838e01613f51565b909850965060608c01359150808211156140f157600080fd5b506140fe8c828d01613f51565b90955093505060808a013561411281613dee565b915060a08a013561412281613f95565b809150509295985092959850929598565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561417157614171614133565b604052919050565b60006001600160401b0382111561419257614192614133565b5060051b60200190565b600060208083850312156141af57600080fd5b82356001600160401b038111156141c557600080fd5b8301601f810185136141d657600080fd5b80356141e96141e482614179565b614149565b81815260059190911b8201830190838101908783111561420857600080fd5b928401925b8284101561422f57833561422081613ee4565b8252928401929084019061420d565b979650505050505050565b6000806000806060858703121561425057600080fd5b843561425b81613ee4565b93506020850135925060408501356001600160401b0381111561427d57600080fd5b61428987828801613e58565b95989497509550505050565b600080602083850312156142a857600080fd5b82356001600160401b038111156142be57600080fd5b6142ca85828601613e58565b90969095509350505050565b6000806000604084860312156142eb57600080fd5b83356001600160401b0381111561430157600080fd5b61430d86828701613e58565b909450925050602084013561432181613f95565b809150509250925092565b60005b8381101561434757818101518382015260200161432f565b50506000910152565b6000815180845261436881602086016020860161432c565b601f01601f19169290920160200192915050565b6020815260006137e06020830184614350565b60008060008060008060c087890312156143a857600080fd5b86356143b381613ee4565b955060208701356143c381613ee4565b945060408701356143d381613ee4565b935060608701356143e381613ee4565b925060808701356143f381613ee4565b915060a087013561440381613ee4565b809150509295509295509295565b60008060008060008060008060a0898b03121561442d57600080fd5b883561443881613ee4565b97506020890135965060408901356001600160401b038082111561445b57600080fd5b6144678c838d01613e58565b909850965060608b013591508082111561448057600080fd5b61448c8c838d01613f51565b909650945060808b01359150808211156144a557600080fd5b506144b28b828c01613f51565b999c989b5096995094979396929594505050565b600080602083850312156144d957600080fd5b82356001600160401b038111156144ef57600080fd5b6142ca85828601613f51565b600080600080600080600080600080600060e08c8e03121561451c57600080fd5b6145258c613ef9565b9a506001600160401b038060208e0135111561454057600080fd5b6145508e60208f01358f01613f51565b909b50995060408d013581101561456657600080fd5b6145768e60408f01358f01613f51565b909950975060608d013581101561458c57600080fd5b61459c8e60608f01358f01613f51565b90975095506145ad60808e01613e03565b945060a08d013593508060c08e013511156145c757600080fd5b506145d88d60c08e01358e01613e58565b81935080925050509295989b509295989b9093969950565b6000806000806000806000806000806000806101008d8f03121561461357600080fd5b61461c8d613ef9565b9b506001600160401b0360208e0135111561463657600080fd5b6146468e60208f01358f01613f51565b909b5099506001600160401b0360408e0135111561466357600080fd5b6146738e60408f01358f01613f51565b90995097506001600160401b0360608e0135111561469057600080fd5b6146a08e60608f01358f01613f51565b90975095506146b160808e01613e03565b94506146bf60a08e01613ef9565b935060c08d013592506001600160401b0360e08e013511156146e057600080fd5b6146f08e60e08f01358f01613e58565b81935080925050509295989b509295989b509295989b565b6000806040838503121561471b57600080fd5b823561472681613ee4565b91506020830135613f2981613ee4565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b60006020828403121561477d57600080fd5b81516137e081613dee565b60208082526023908201527f4d696e74696e674d616e616765723a20544f4b454e5f4e4f545f455850495241604082015262424c4560e81b606082015260800190565b60208082526010908201526f14185d5cd8589b194e8814105554d15160821b604082015260600190565b60006148036141e484614179565b80848252602080830192508560051b85013681111561482157600080fd5b855b818110156148b35780356001600160401b03808211156148435760008081fd5b90880190601f36818401126148585760008081fd5b82358281111561486a5761486a614133565b61487b818301601f19168801614149565b9250808352368782860101111561489457600091508182fd5b8087850188850137600090830187015250865250938201938201614823565b50919695505050505050565b60208082526024908201527f4d696e74696e674d616e616765723a2043414c4c45525f49535f4e4f545f4d49604082015263272a22a960e11b606082015260800190565b60006020828403121561491557600080fd5b81516137e081613f95565b6020808252602f908201527f4d696e74696e674d616e616765723a2053454e4445525f49535f4e4f545f415060408201526e282927ab22a22fa7a92fa7aba722a960891b606082015260800190565b60208082526025908201527f4d696e74696e674d616e616765723a204c4142454c535f4c454e4754485f42456040820152642627abaf9960d91b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b81810381811115610954576109546149b4565b634e487b7160e01b600052603260045260246000fd5b60208082526026908201527f4d696e74696e674d616e616765723a20535542444f4d41494e535f4e4f545f41604082015265131313d5d15160d21b606082015260800190565b600060018201614a4b57614a4b6149b4565b5060010190565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b60208082526022908201527f4d696e74696e674d616e616765723a20544c445f4e4f545f5245474953544552604082015261115160f21b606082015260800190565b600060208284031215614ad557600080fd5b5051919050565b6b756e732d646576746573742d60a01b81528183600c83013760009101600c01908152919050565b600181811c90821680614b1857607f821691505b602082108103614b3857634e487b7160e01b600052602260045260246000fd5b50919050565b600060208284031215614b5057600080fd5b81516137e081613ee4565b600081518084526020808501808196508360051b8101915082860160005b85811015614ba3578284038952614b91848351614350565b98850198935090840190600101614b79565b5091979650505050505050565b6001600160a01b038616815260a060208201819052600090614bd490830187614b5b565b8281036040840152614be68187614b5b565b90508281036060840152614bfa8186614b5b565b91505082151560808301529695505050505050565b600060018060a01b03808616835260606020840152614c316060840186614350565b9150808416604084015250949350505050565b606081526000614c576060830186614b5b565b8281036020840152614c698186614b5b565b915050826040830152949350505050565b600081614c8957614c896149b4565b506000190190565b60008251614ca381846020870161432c565b9190910192915050565b601f821115610cde57600081815260208120601f850160051c81016020861015614cd45750805b601f850160051c820191505b818110156116a357828155600101614ce0565b81516001600160401b03811115614d0c57614d0c614133565b614d2081614d1a8454614b04565b84614cad565b602080601f831160018114614d555760008415614d3d5750858301515b600019600386901b1c1916600185901b1785556116a3565b600085815260208120601f198616915b82811015614d8457888601518255948401946001909101908401614d65565b5085821015614da25787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b828152604060208201526000614dcb6040830184614350565b949350505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b80820180821115610954576109546149b4565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351614e6981601785016020880161432c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351614e9a81602884016020880161432c565b01602801949350505050565b8082028115828204841417610954576109546149b4565b634e487b7160e01b600052602160045260246000fdfe5496787fc1ebdfeba375028c1865f13fbb1d63c0caa356ccc1b29a80f3ebd6229f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000811000a"; - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "address"; - readonly name: "previousAdmin"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "address"; - readonly name: "newAdmin"; - readonly type: "address"; - }]; - readonly name: "AdminChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Blocked"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "BlocklistDisabled"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "BlocklistEnabled"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "sender"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "price"; - readonly type: "uint256"; - }, { - readonly indexed: false; - readonly internalType: "address"; - readonly name: "token"; - readonly type: "address"; - }]; - readonly name: "DomainPurchase"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "uint8"; - readonly name: "version"; - readonly type: "uint8"; - }]; - readonly name: "Initialized"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly indexed: false; - readonly internalType: "string"; - readonly name: "tld"; - readonly type: "string"; - }]; - readonly name: "NewTld"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "previousOwner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "newOwner"; - readonly type: "address"; - }]; - readonly name: "OwnershipTransferred"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "Paused"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "RemoveTld"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "previousAdminRole"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "newAdminRole"; - readonly type: "bytes32"; - }]; - readonly name: "RoleAdminChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "sender"; - readonly type: "address"; - }]; - readonly name: "RoleGranted"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "sender"; - readonly type: "address"; - }]; - readonly name: "RoleRevoked"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "Unpaused"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "implementation"; - readonly type: "address"; - }]; - readonly name: "Upgraded"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "address"; - readonly name: "recepient"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "value"; - readonly type: "uint256"; - }, { - readonly indexed: false; - readonly internalType: "address"; - readonly name: "token"; - readonly type: "address"; - }]; - readonly name: "Withdrawal"; - readonly type: "event"; - }, { - readonly inputs: readonly []; - readonly name: "DEFAULT_ADMIN_ROLE"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "MINTER_ROLE"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "NAME"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "VERSION"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "addMinter"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address[]"; - readonly name: "accounts"; - readonly type: "address[]"; - }]; - readonly name: "addMinters"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address[]"; - readonly name: "addrs"; - readonly type: "address[]"; - }]; - readonly name: "addProxyReaders"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "tld"; - readonly type: "string"; - }, { - readonly internalType: "bool"; - readonly name: "isExpirable"; - readonly type: "bool"; - }]; - readonly name: "addTld"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "string[]"; - readonly name: "labels"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }, { - readonly internalType: "uint64"; - readonly name: "expiry"; - readonly type: "uint64"; - }, { - readonly internalType: "uint256"; - readonly name: "price"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "buy"; - readonly outputs: readonly []; - readonly stateMutability: "payable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "string[]"; - readonly name: "labels"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }, { - readonly internalType: "uint64"; - readonly name: "expiry"; - readonly type: "uint64"; - }, { - readonly internalType: "address"; - readonly name: "token"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "price"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "buyForErc20"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tld"; - readonly type: "uint256"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }]; - readonly name: "claim"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tld"; - readonly type: "uint256"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }]; - readonly name: "claimTo"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tld"; - readonly type: "uint256"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }, { - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }]; - readonly name: "claimToWithRecords"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address payable"; - readonly name: "receiver"; - readonly type: "address"; - }]; - readonly name: "closeMinter"; - readonly outputs: readonly []; - readonly stateMutability: "payable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "cnsMintingController"; - readonly outputs: readonly [{ - readonly internalType: "contract IMintingController"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "cnsResolver"; - readonly outputs: readonly [{ - readonly internalType: "contract IResolver"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "cnsURIPrefixController"; - readonly outputs: readonly [{ - readonly internalType: "contract IURIPrefixController"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }]; - readonly name: "getRoleAdmin"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "grantRole"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "hasRole"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "contract IUNSRegistry"; - readonly name: "unsRegistry_"; - readonly type: "address"; - }, { - readonly internalType: "contract IMintingController"; - readonly name: "cnsMintingController_"; - readonly type: "address"; - }, { - readonly internalType: "contract IURIPrefixController"; - readonly name: "cnsURIPrefixController_"; - readonly type: "address"; - }, { - readonly internalType: "contract IResolver"; - readonly name: "cnsResolver_"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "unsOperator_"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "forwarder"; - readonly type: "address"; - }]; - readonly name: "initialize"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "isBlocked"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "isMinter"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "forwarder"; - readonly type: "address"; - }]; - readonly name: "isTrustedForwarder"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "string[]"; - readonly name: "labels"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }, { - readonly internalType: "uint64"; - readonly name: "expiry"; - readonly type: "uint64"; - }, { - readonly internalType: "bool"; - readonly name: "withReverse"; - readonly type: "bool"; - }]; - readonly name: "issueExpirableWithRecords"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "string[]"; - readonly name: "labels"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }, { - readonly internalType: "bool"; - readonly name: "withReverse"; - readonly type: "bool"; - }]; - readonly name: "issueWithRecords"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "owner"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "pause"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "paused"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "removeMinter"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address[]"; - readonly name: "accounts"; - readonly type: "address[]"; - }]; - readonly name: "removeMinters"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tld"; - readonly type: "uint256"; - }]; - readonly name: "removeTld"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint64"; - readonly name: "expiry"; - readonly type: "uint64"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "renew"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "renounceMinter"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "renounceOwnership"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "renounceRole"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "revoke"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "revokeRole"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address payable"; - readonly name: "receiver"; - readonly type: "address"; - }]; - readonly name: "rotateMinter"; - readonly outputs: readonly []; - readonly stateMutability: "payable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "forwarder"; - readonly type: "address"; - }]; - readonly name: "setForwarder"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly name: "setOperator"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "prefix"; - readonly type: "string"; - }]; - readonly name: "setTokenURIPrefix"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "newOwner"; - readonly type: "address"; - }]; - readonly name: "transferOwnership"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "unpause"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "unsOperator"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "unsRegistry"; - readonly outputs: readonly [{ - readonly internalType: "contract IUNSRegistry"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "recepient"; - readonly type: "address"; - }]; - readonly name: "withdraw"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "token"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "recepient"; - readonly type: "address"; - }]; - readonly name: "withdraw"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): MintingManagerInterface; - static connect(address: string, runner?: ContractRunner | null): MintingManager; -} -export {}; -//# sourceMappingURL=MintingManager__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/MintingManager__factory.d.ts.map b/dist/types/factories/contracts/MintingManager__factory.d.ts.map deleted file mode 100644 index fedf0c02..00000000 --- a/dist/types/factories/contracts/MintingManager__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"MintingManager__factory.d.ts","sourceRoot":"","sources":["../../../../types/factories/contracts/MintingManager__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACxD,OAAO,KAAK,EACV,cAAc,EACd,uBAAuB,EACxB,MAAM,gCAAgC,CAAC;AAwoCxC,aAAK,+BAA+B,GAChC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,uBAAwB,SAAQ,eAAe;gBAC9C,GAAG,IAAI,EAAE,+BAA+B;IAQ3C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,uBAAuB;IAIxE,MAAM,CAAC,QAAQ,CAAC,QAAQ,wovCAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,uBAAuB;IAGjD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,cAAc;CAGlB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/MintingManager__factory.js b/dist/types/factories/contracts/MintingManager__factory.js deleted file mode 100644 index c2887171..00000000 --- a/dist/types/factories/contracts/MintingManager__factory.js +++ /dev/null @@ -1,1188 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.MintingManager__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "previousAdmin", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "newAdmin", - type: "address", - }, - ], - name: "AdminChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Blocked", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "BlocklistDisabled", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "BlocklistEnabled", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - indexed: true, - internalType: "address", - name: "sender", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "price", - type: "uint256", - }, - { - indexed: false, - internalType: "address", - name: "token", - type: "address", - }, - ], - name: "DomainPurchase", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint8", - name: "version", - type: "uint8", - }, - ], - name: "Initialized", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - indexed: false, - internalType: "string", - name: "tld", - type: "string", - }, - ], - name: "NewTld", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "previousOwner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnershipTransferred", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "Paused", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "RemoveTld", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - indexed: true, - internalType: "bytes32", - name: "previousAdminRole", - type: "bytes32", - }, - { - indexed: true, - internalType: "bytes32", - name: "newAdminRole", - type: "bytes32", - }, - ], - name: "RoleAdminChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "sender", - type: "address", - }, - ], - name: "RoleGranted", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "sender", - type: "address", - }, - ], - name: "RoleRevoked", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "Unpaused", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "implementation", - type: "address", - }, - ], - name: "Upgraded", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "recepient", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "value", - type: "uint256", - }, - { - indexed: false, - internalType: "address", - name: "token", - type: "address", - }, - ], - name: "Withdrawal", - type: "event", - }, - { - inputs: [], - name: "DEFAULT_ADMIN_ROLE", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "MINTER_ROLE", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "NAME", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "VERSION", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "addMinter", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address[]", - name: "accounts", - type: "address[]", - }, - ], - name: "addMinters", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address[]", - name: "addrs", - type: "address[]", - }, - ], - name: "addProxyReaders", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "tld", - type: "string", - }, - { - internalType: "bool", - name: "isExpirable", - type: "bool", - }, - ], - name: "addTld", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "string[]", - name: "labels", - type: "string[]", - }, - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - { - internalType: "uint64", - name: "expiry", - type: "uint64", - }, - { - internalType: "uint256", - name: "price", - type: "uint256", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "buy", - outputs: [], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "string[]", - name: "labels", - type: "string[]", - }, - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - { - internalType: "uint64", - name: "expiry", - type: "uint64", - }, - { - internalType: "address", - name: "token", - type: "address", - }, - { - internalType: "uint256", - name: "price", - type: "uint256", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "buyForErc20", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tld", - type: "uint256", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - ], - name: "claim", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tld", - type: "uint256", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - ], - name: "claimTo", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tld", - type: "uint256", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - ], - name: "claimToWithRecords", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address payable", - name: "receiver", - type: "address", - }, - ], - name: "closeMinter", - outputs: [], - stateMutability: "payable", - type: "function", - }, - { - inputs: [], - name: "cnsMintingController", - outputs: [ - { - internalType: "contract IMintingController", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "cnsResolver", - outputs: [ - { - internalType: "contract IResolver", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "cnsURIPrefixController", - outputs: [ - { - internalType: "contract IURIPrefixController", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - ], - name: "getRoleAdmin", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "grantRole", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "hasRole", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "contract IUNSRegistry", - name: "unsRegistry_", - type: "address", - }, - { - internalType: "contract IMintingController", - name: "cnsMintingController_", - type: "address", - }, - { - internalType: "contract IURIPrefixController", - name: "cnsURIPrefixController_", - type: "address", - }, - { - internalType: "contract IResolver", - name: "cnsResolver_", - type: "address", - }, - { - internalType: "address", - name: "unsOperator_", - type: "address", - }, - { - internalType: "address", - name: "forwarder", - type: "address", - }, - ], - name: "initialize", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "isBlocked", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "isMinter", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "forwarder", - type: "address", - }, - ], - name: "isTrustedForwarder", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "string[]", - name: "labels", - type: "string[]", - }, - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - { - internalType: "uint64", - name: "expiry", - type: "uint64", - }, - { - internalType: "bool", - name: "withReverse", - type: "bool", - }, - ], - name: "issueExpirableWithRecords", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "string[]", - name: "labels", - type: "string[]", - }, - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - { - internalType: "bool", - name: "withReverse", - type: "bool", - }, - ], - name: "issueWithRecords", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - 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: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "removeMinter", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address[]", - name: "accounts", - type: "address[]", - }, - ], - name: "removeMinters", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tld", - type: "uint256", - }, - ], - name: "removeTld", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint64", - name: "expiry", - type: "uint64", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "renew", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "renounceMinter", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "renounceOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "renounceRole", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "revoke", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "revokeRole", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address payable", - name: "receiver", - type: "address", - }, - ], - name: "rotateMinter", - outputs: [], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "forwarder", - type: "address", - }, - ], - name: "setForwarder", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - name: "setOperator", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "prefix", - type: "string", - }, - ], - name: "setTokenURIPrefix", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "transferOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "unpause", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "unsOperator", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "unsRegistry", - outputs: [ - { - internalType: "contract IUNSRegistry", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "recepient", - type: "address", - }, - ], - name: "withdraw", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "token", - type: "address", - }, - { - internalType: "address", - name: "recepient", - type: "address", - }, - ], - name: "withdraw", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -const _bytecode = "0x608060405234801561001057600080fd5b50614f20806100206000396000f3fe6080604052600436106102ae5760003560e01c8063906cecc111610175578063b9998a24116100dc578063d547741f11610095578063f2fde38b1161006f578063f2fde38b14610892578063f5243bc4146108b2578063f940e385146108d2578063ffa1ad74146108f257600080fd5b8063d547741f1461083f578063d7db74c71461085f578063ec5273891461087257600080fd5b8063b9998a241461077d578063cc2a9a5b1461079d578063cc2c3fc4146107bd578063ceeb4f50146107dd578063d1f5692c146107fd578063d53913931461081d57600080fd5b8063a3a3f7f61161012e578063a3a3f7f614610690578063a3f4df7e146106b0578063a849d65c146106fd578063aa271e1a1461071d578063b0aa98c71461073d578063b3ab15fb1461075d57600080fd5b8063906cecc1146105e657806391d1485414610606578063983b2d5614610626578063986502751461064657806399e0dd7c1461065b578063a217fddf1461067b57600080fd5b80635b6fa8db11610219578063715018a6116101d2578063715018a61461054b57806371e2a6571461056057806377a2a5891461058057806381c81d35146105a05780638456cb59146105b35780638da5cb5b146105c857600080fd5b80635b6fa8db146104a35780635c975abb146104c35780635cd7e3b3146104d85780635e22cd86146104f85780635fc1964f14610518578063634486da1461053857600080fd5b80633092afd51161026b5780633092afd5146103a857806336568abe146103c85780633f41b614146103e85780633f4ba83a1461042057806351cff8d914610435578063572b6c051461045557600080fd5b806301ffc9a7146102b35780631edb948e146102e857806320c5429b1461030a578063248a9ca31461032a578063268b15ed146103685780632f2ff15d14610388575b600080fd5b3480156102bf57600080fd5b506102d36102ce366004613dc4565b610923565b60405190151581526020015b60405180910390f35b3480156102f457600080fd5b50610308610303366004613e13565b61095a565b005b34801561031657600080fd5b50610308610325366004613e3f565b610b03565b34801561033657600080fd5b5061035a610345366004613e3f565b60009081526097602052604090206001015490565b6040519081526020016102df565b34801561037457600080fd5b50610308610383366004613e99565b610c26565b34801561039457600080fd5b506103086103a3366004613f04565b610cb9565b3480156103b457600080fd5b506103086103c3366004613f34565b610ce3565b3480156103d457600080fd5b506103086103e3366004613f04565b610cf7565b3480156103f457600080fd5b5060c954610408906001600160a01b031681565b6040516001600160a01b0390911681526020016102df565b34801561042c57600080fd5b50610308610d85565b34801561044157600080fd5b50610308610450366004613f34565b610d97565b34801561046157600080fd5b506102d3610470366004613f34565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546001600160a01b0390811691161490565b3480156104af57600080fd5b5060cc54610408906001600160a01b031681565b3480156104cf57600080fd5b506102d3610e37565b3480156104e457600080fd5b506103086104f3366004613fa3565b610e4d565b34801561050457600080fd5b50610308610513366004614062565b6110b1565b34801561052457600080fd5b5061030861053336600461419c565b6112f6565b610308610546366004613f34565b61133e565b34801561055757600080fd5b50610308611401565b34801561056c57600080fd5b5061030861057b36600461419c565b611413565b34801561058c57600080fd5b5060ce54610408906001600160a01b031681565b6103086105ae366004613f34565b61145b565b3480156105bf57600080fd5b506103086114d8565b3480156105d457600080fd5b506033546001600160a01b0316610408565b3480156105f257600080fd5b5061030861060136600461423a565b6114e8565b34801561061257600080fd5b506102d3610621366004613f04565b61156e565b34801561063257600080fd5b50610308610641366004613f34565b611599565b34801561065257600080fd5b506103086115aa565b34801561066757600080fd5b50610308610676366004614295565b6115c4565b34801561068757600080fd5b5061035a600081565b34801561069c57600080fd5b506103086106ab3660046142d6565b6116ab565b3480156106bc57600080fd5b506106f0604051806040016040528060148152602001732aa7299d1026b4b73a34b7339026b0b730b3b2b960611b81525081565b6040516102df919061437c565b34801561070957600080fd5b5060cb54610408906001600160a01b031681565b34801561072957600080fd5b506102d3610738366004613f34565b6116f4565b34801561074957600080fd5b506102d3610758366004613e3f565b61170e565b34801561076957600080fd5b50610308610778366004613f34565b61176c565b34801561078957600080fd5b50610308610798366004613f34565b611796565b3480156107a957600080fd5b506103086107b836600461438f565b6117db565b3480156107c957600080fd5b5060ca54610408906001600160a01b031681565b3480156107e957600080fd5b506103086107f8366004614411565b611cd2565b34801561080957600080fd5b506103086108183660046144c6565b611d76565b34801561082957600080fd5b5061035a600080516020614ef483398151915281565b34801561084b57600080fd5b5061030861085a366004613f04565b611e2d565b61030861086d3660046144fb565b611e52565b34801561087e57600080fd5b5061030861088d366004613e3f565b611fe2565b34801561089e57600080fd5b506103086108ad366004613f34565b612054565b3480156108be57600080fd5b506103086108cd3660046145f0565b612070565b3480156108de57600080fd5b506103086108ed366004614708565b612222565b3480156108fe57600080fd5b506106f060405180604001604052806005815260200164302e352e3160d81b81525081565b60006001600160e01b03198216637965db0b60e01b148061095457506301ffc9a760e01b6001600160e01b03198316145b92915050565b61096561073861239e565b61098a5760405162461bcd60e51b815260040161098190614736565b60405180910390fd5b60c95460405163baef73e960e01b8152600481018390526000916001600160a01b03169063baef73e990602401602060405180830381865afa1580156109d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109f8919061476b565b9050806001600160401b0316600003610a235760405162461bcd60e51b815260040161098190614788565b806001600160401b0316836001600160401b031611610a905760405162461bcd60e51b815260206004820152602360248201527f4d696e74696e674d616e616765723a204558504952595f4e4f545f455854454e60448201526211115160ea1b6064820152608401610981565b60c954604051631fb9763760e11b81526001600160401b0385166004820152602481018490526001600160a01b0390911690633f72ec6e906044015b600060405180830381600087803b158015610ae657600080fd5b505af1158015610afa573d6000803e3d6000fd5b50505050505050565b610b0e61073861239e565b610b2a5760405162461bcd60e51b815260040161098190614736565b60c95460405163baef73e960e01b8152600481018390526001600160a01b039091169063baef73e990602401602060405180830381865afa158015610b73573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b97919061476b565b6001600160401b0316600003610bbf5760405162461bcd60e51b815260040161098190614788565b60c954604051637eee288d60e01b8152306004820152602481018390526001600160a01b0390911690637eee288d90604401600060405180830381600087803b158015610c0b57600080fd5b505af1158015610c1f573d6000803e3d6000fd5b5050505050565b8282828080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250610c6993508592508491506123ad565b610c71610e37565b15610c8e5760405162461bcd60e51b8152600401610981906147cb565b6060610afa610c9b61239e565b610cae88610ca98989612584565b6125b0565b8384600060016126c1565b600082815260976020526040902060010154610cd481612c15565b610cde8383612c26565b505050565b610ceb612cad565b610cf481612d26565b50565b610cff61239e565b6001600160a01b0316816001600160a01b031614610d775760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610981565b610d818282612d3e565b5050565b610d8d612cad565b610d95612dc3565b565b610d9f612cad565b6001600160a01b038116610db257600080fd5b60405147906001600160a01b0383169082156108fc029083906000818181858888f19350505050158015610dea573d6000803e3d6000fd5b50604080516001600160a01b03841681526020810183905260008183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a15050565b600080516020614ed48339815191525460ff1690565b610e5786886147f5565b8051600203610e8c57610e6b61073861239e565b610e875760405162461bcd60e51b8152600401610981906148bf565b610fd1565b6000610e9782612e6b565b60c9549092506001600160a01b0316905063430c2081610eb561239e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015610f00573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f249190614903565b80610fb3575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa158015610f7d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fa19190614903565b8015610fb35750610fb361073861239e565b610fcf5760405162461bcd60e51b815260040161098190614920565b505b610fdb87896147f5565b6000600282511015610fff5760405162461bcd60e51b81526004016109819061496f565b6110546110336000846001865161101691906149ca565b81518110611026576110266149dd565b6020026020010151612ea6565b83600081518110611046576110466149dd565b6020026020010151836123ad565b61105c610e37565b156110795760405162461bcd60e51b8152600401610981906147cb565b6110a38b6110878b8d6147f5565b6110918a8c6147f5565b61109b898b6147f5565b6000896126c1565b505050505050505050505050565b6110bb87896147f5565b80516002036110f0576110cf61073861239e565b6110eb5760405162461bcd60e51b8152600401610981906148bf565b611235565b60006110fb82612e6b565b60c9549092506001600160a01b0316905063430c208161111961239e565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015611164573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111889190614903565b80611217575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa1580156111e1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112059190614903565b8015611217575061121761073861239e565b6112335760405162461bcd60e51b815260040161098190614920565b505b61123f888a6147f5565b836002825110156112625760405162461bcd60e51b81526004016109819061496f565b6112796110336000846001865161101691906149ca565b611281610e37565b1561129e5760405162461bcd60e51b8152600401610981906147cb565b60028a146112be5760405162461bcd60e51b8152600401610981906149f3565b6112e78c6112cc8c8e6147f5565b6112d68b8d6147f5565b6112e08a8c6147f5565b89896126c1565b50505050505050505050505050565b6112fe612cad565b60005b8151811015610d815761132c82828151811061131f5761131f6149dd565b6020026020010151612d26565b8061133681614a39565b915050611301565b61134961073861239e565b6113655760405162461bcd60e51b815260040161098190614736565b6001600160a01b0381166113bb5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610981565b6113c481612f5a565b6113cc6115aa565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610d81573d6000803e3d6000fd5b611409612cad565b610d956000612f72565b61141b612cad565b60005b8151811015610d815761144982828151811061143c5761143c6149dd565b6020026020010151612f5a565b8061145381614a39565b91505061141e565b61146661073861239e565b6114825760405162461bcd60e51b815260040161098190614736565b6001600160a01b0381166113c45760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610981565b6114e0612cad565b610d95612fc4565b8282828080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525061152b93508592508491506123ad565b611533610e37565b156115505760405162461bcd60e51b8152600401610981906147cb565b606061156487610cae88610ca98989612584565b5050505050505050565b60009182526097602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6115a1612cad565b610cf481612f5a565b610d95600080516020614ef48339815191526103e361239e565b6115cc612cad565b60c954604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906115fe9085908590600401614a52565b600060405180830381600087803b15801561161857600080fd5b505af115801561162c573d6000803e3d6000fd5b505060cb546001600160a01b0316159150610d8190505760cb54604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906116759085908590600401614a52565b600060405180830381600087803b15801561168f57600080fd5b505af11580156116a3573d6000803e3d6000fd5b505050505050565b6116b3612cad565b610cde83838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525085925061302c915050565b6000610954600080516020614ef48339815191528361156e565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd696020820152908101829052600090611762906060015b6040516020818303038152906040528051906020012090565b5460ff1692915050565b611774612cad565b60ce80546001600160a01b0319166001600160a01b0392909216919091179055565b61179e612cad565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e80546001600160a01b0319166001600160a01b03831617905550565b600054610100900460ff16158080156117fb5750600054600160ff909116105b806118155750303b158015611815575060005460ff166001145b6118785760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610981565b6000805460ff19166001179055801561189b576000805461ff0019166101001790555b60c980546001600160a01b03199081166001600160a01b038a81169190911790925560ca8054821689841617905560cb8054821688841617905560cc8054821687841617905560ce80549091169185169190911790556118f961314c565b611901613183565b61190a826131bc565b6119126131e3565b6040805161036081018252600661032082018181526563727970746f60d01b610340840152825282518084018452818152651dd85b1b195d60d21b602082810191909152808401919091528351808501855260018152600f60fb1b8183015283850152835180850185526003808252621b999d60ea1b82840152606085019190915284518086018652600a815269313637b1b5b1b430b4b760b11b818401526080850152845180860186526007808252663134ba31b7b4b760c91b8285015260a0860191909152855180870187528281526207070760eb1b8185015260c0860152855180870187528281526264616f60e81b8185015260e086015285518087018752828152621e9a5b60ea1b8185015261010086015285518087018752908152663837b63cb3b7b760c91b8184015261012085015284518086018652600b81526a756e73746f707061626c6560a81b81840152610140850152845180860186528381526535b632bb32b960d11b8184015261016085015284518086018652600280825261686960f01b8285015261018086019190915285518087018752848152656b726573757360d01b818501526101a086015285518087018752600580825264616e696d6560d81b828601526101c087019190915286518088018852818152646d616e676160d81b818601526101e087015286518088018852600981526862696e616e6365757360b81b8186015261020087015286518088018852818152647265616c6d60d81b818601526102208701528651808801885291825261676f60f01b82850152610240860191909152855180870187526008815267185b1d1a5b5a5cdd60c21b818501526102608601528551808701875290815264707564677960d81b81840152610280850152845180860186528381526530bab9ba34b760d11b818401526102a08501528451808601865292835265189a5d19d95d60d21b838301526102c08401929092528351808501855291825262706f6760e81b828201526102e083019190915282518084019093526004835263636c617960e01b9083015261030081019190915260005b6019811015611c5c57611c4a828260198110611c3e57611c3e6149dd565b6020020151600061302c565b80611c5481614a39565b915050611c20565b50611c8360405180604001604052806003815260200162636f6d60e81b815250600161302c565b508015610afa576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050505050565b8686868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250611d1593508592508491506123ad565b611d1d610e37565b15611d3a5760405162461bcd60e51b8152600401610981906147cb565b611d698a611d4c8b610ca98c8c612584565b611d56888a6147f5565b611d6087896147f5565b600060016126c1565b5050505050505050505050565b611d7e612cad565b60005b81811015610cde5760c9546001600160a01b03166350960239848484818110611dac57611dac6149dd565b9050602002016020810190611dc19190613f34565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401600060405180830381600087803b158015611e0257600080fd5b505af1158015611e16573d6000803e3d6000fd5b505050508080611e2590614a39565b915050611d81565b600082815260976020526040902060010154611e4881612c15565b610cde8383612d3e565b611e5c898b6147f5565b6000600282511015611e805760405162461bcd60e51b81526004016109819061496f565b611e976110336000846001865161101691906149ca565b611e9f610e37565b15611ebc5760405162461bcd60e51b8152600401610981906147cb565b60028b14611edc5760405162461bcd60e51b8152600401610981906149f3565b611f228d8d8d898960008a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061322392505050565b84341015611f725760405162461bcd60e51b815260206004820181905260248201527f4d696e74696e674d616e616765723a204e4f545f454e4f5547485f46554e44536044820152606401610981565b611f848d8d8d8d8d8d8d8c60006133e3565b843411156112e757611f9461239e565b6001600160a01b03166108fc611faa87346149ca565b6040518115909202916000818181858888f19350505050158015611fd2573d6000803e3d6000fd5b5050505050505050505050505050565b611fea612cad565b611ff38161349f565b61200f5760405162461bcd60e51b815260040161098190614a81565b600081815260cd6020526040812061202691613d76565b60405181907f0aa1aff0f830e739d86baf0e6624d6763da02f7733575e0e463886cd062dea6a90600090a250565b61205c612cad565b612065816134c5565b610cf460008261353b565b61207a8a8c6147f5565b600060028251101561209e5760405162461bcd60e51b81526004016109819061496f565b6120b56110336000846001865161101691906149ca565b6120bd610e37565b156120da5760405162461bcd60e51b8152600401610981906147cb565b60028c146120fa5760405162461bcd60e51b8152600401610981906149f3565b61213f8e8e8e8a898b8a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061322392505050565b856001600160a01b03166323b872dd61215661239e565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152306024820152604481018890526064016020604051808303816000875af11580156121a9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121cd9190614903565b6122115760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610981565b611fd28e8e8e8e8e8e8e8c8e6133e3565b61222a612cad565b6040516370a0823160e01b81523060048201526000906001600160a01b038416906370a0823190602401602060405180830381865afa158015612271573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122959190614ac3565b60405163a9059cbb60e01b81526001600160a01b038481166004830152602482018390529192509084169063a9059cbb906044016020604051808303816000875af11580156122e8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061230c9190614903565b6123505760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b6044820152606401610981565b604080516001600160a01b0384811682526020820184905285168183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a1505050565b60006123a8613545565b905090565b6123b68361349f565b6123d25760405162461bcd60e51b815260040161098190614a81565b600083815260cf602052604090205460ff1615156001600160401b03821615151461244e5760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544c445f455850495241424c455f4d496044820152650a69a82a886960d31b6064820152608401610981565b60006124818360408051808201825260008082526020918201528151808301909252825182529182019181019190915290565b9050600a81600001511115612529576124ac6124a0826000600a61358b565b80516020909101512090565b7fb551e0305c8163b812374b8e78b577c77f226f6f10c5ad03e52699578fbc34b8036125295760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544f4b454e5f4c4142454c5f50524f4860448201526512509255115160d21b6064820152608401610981565b612532836135ca565b61257e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a204c4142454c5f494e56414c49440000006044820152606401610981565b50505050565b60608282604051602001612599929190614adc565b604051602081830303815290604052905092915050565b604080516002808252606082810190935260009190816020015b60608152602001906001900390816125ca57905050905082816000815181106125f5576125f56149dd565b602002602001018190525060cd6000858152602001908152602001600020805461261e90614b04565b80601f016020809104026020016040519081016040528092919081815260200182805461264a90614b04565b80156126975780601f1061266c57610100808354040283529160200191612697565b820191906000526020600020905b81548152906001019060200180831161267a57829003601f168201915b5050505050816001815181106126af576126af6149dd565b60209081029190910101529392505050565b60008060006126cf88612e6b565b915091508380156126e1575060028851115b8015612763575060c9546040516331a9108f60e11b8152600481018390526001600160a01b038b8116921690636352211e90602401602060405180830381865afa158015612733573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127579190614b3e565b6001600160a01b031614155b156127c35760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e616765723a20524556455253455f5245434f52445f4e60448201526913d517d0531313d5d15160b21b6064820152608401610981565b60c954604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401602060405180830381865afa15801561280c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128309190614903565b8015612921575060c9546040516331a9108f60e11b81526004810184905230916001600160a01b031690636352211e90602401602060405180830381865afa158015612880573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128a49190614b3e565b6001600160a01b03161480612921575060c95460405163d9548e5360e01b8152600481018490526001600160a01b039091169063d9548e5390602401602060405180830381865afa1580156128fd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129219190614903565b15612a12576001600160401b038516156129a35760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b15801561298a57600080fd5b505af115801561299e573d6000803e3d6000fd5b505050505b60c954604051630fb8df0360e11b81526001600160a01b0390911690631f71be06906129db908c908c908c908c908b90600401614bb0565b600060405180830381600087803b1580156129f557600080fd5b505af1158015612a09573d6000803e3d6000fd5b50505050612c09565b612a1b8261372e565b612a248861378d565b8015612a31575087516002145b8015612a4457506001600160401b038516155b15612b225760ca5488516001600160a01b039091169063c36c2125908b908b90600090612a7357612a736149dd565b602090810291909101015160cc546040516001600160e01b031960e086901b168152612aad9392916001600160a01b031690600401614c0f565b600060405180830381600087803b158015612ac757600080fd5b505af1158015612adb573d6000803e3d6000fd5b50505050600087511115612b1d5760cc54604051633a0deb9d60e21b81526001600160a01b039091169063e837ae74906129db908a908a908790600401614c44565b612c09565b60c95460405163ba5d40b760e01b81526001600160a01b039091169063ba5d40b790612b5a908c908c908c908c908b90600401614bb0565b600060405180830381600087803b158015612b7457600080fd5b505af1158015612b88573d6000803e3d6000fd5b505050506001600160401b03851615612c095760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b158015612bf057600080fd5b505af1158015612c04573d6000803e3d6000fd5b505050505b50979650505050505050565b610cf481612c2161239e565b6137e7565b612c30828261156e565b610d815760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19166001179055612c6961239e565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b612cb561239e565b6001600160a01b0316612cd06033546001600160a01b031690565b6001600160a01b031614610d955760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610981565b610cf4600080516020614ef483398151915282611e2d565b612d48828261156e565b15610d815760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19169055612d7f61239e565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612dcb610e37565b612e0e5760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881393d517d4105554d15160621b6044820152606401610981565b600080516020614ed4833981519152805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa612e4e61239e565b6040516001600160a01b03909116815260200160405180910390a1565b805160009081905b8015612ea057829150612e8c82856110166001856149ca565b925080612e9881614c7a565b915050612e73565b50915091565b60008151600003612ef95760405162461bcd60e51b815260206004820152601b60248201527f4d696e74696e674d616e616765723a204c4142454c5f454d50545900000000006044820152606401610981565b8282604051602001612f0b9190614c91565b60405160208183030381529060405280519060200120604051602001612f3b929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b610cf4600080516020614ef48339815191528261353b565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b612fcc610e37565b15612fe95760405162461bcd60e51b8152600401610981906147cb565b600080516020614ed4833981519152805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258612e4e61239e565b6000613039600084612ea6565b600081815260cd602052604090209091506130548482614cf3565b50600081815260cf602052604090819020805460ff19168415151790555181907f4fce6f6e172b04eaa80325d8e3b0180a34945000f3e214605039e8420fdf8980906130a190869061437c565b60405180910390a260c954604051634f558e7960e01b8152600481018390526001600160a01b0390911690634f558e7990602401602060405180830381865afa1580156130f2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131169190614903565b610cde5760c9546040516307befae360e51b81526001600160a01b039091169063f7df5c6090610acc9084908790600401614db2565b600054610100900460ff166131735760405162461bcd60e51b815260040161098190614dd3565b610d9561317e61239e565b612f72565b600054610100900460ff166131aa5760405162461bcd60e51b815260040161098190614dd3565b610d9560006131b761239e565b61353b565b600054610100900460ff1661179e5760405162461bcd60e51b815260040161098190614dd3565b600054610100900460ff1661320a5760405162461bcd60e51b815260040161098190614dd3565b600080516020614ed4833981519152805460ff19169055565b600061323761323287896147f5565b612e6b565b506040516bffffffffffffffffffffffff1930606090811b821660208401524660348401528b811b82166054840152606883018490526001600160c01b031960c08a901b1660888401526090830188905286901b1660b082015290915060009061331390849061330d9060c401604051602081830303815290604052805190602001206040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c8101829052600090605c01604051602081830303815290604052805190602001209050919050565b9061384b565b905061331e816116f4565b6133765760405162461bcd60e51b8152602060048201526024808201527f4d696e74696e674d616e616765723a205349474e45525f49535f4e4f545f4d49604482015263272a22a960e11b6064820152608401610981565b42866001600160401b0316116133d85760405162461bcd60e51b815260206004820152602160248201527f4d696e74696e674d616e616765723a20455850495245445f5349474e415455526044820152604560f81b6064820152608401610981565b505050505050505050565b600061342a8a6133f38a8c6147f5565b6133fd898b6147f5565b613407888a6147f5565b60008f6001600160a01b031661341b61239e565b6001600160a01b0316146126c1565b9050896001600160a01b031661343e61239e565b6001600160a01b0316827fa545b6fd3355e8d57f8c8147bafe740545bd3ea1f94bef2576a6d532a7c3b605868660405161348b9291909182526001600160a01b0316602082015260400190565b60405180910390a450505050505050505050565b600081815260cd6020526040812080548291906134bb90614b04565b9050119050919050565b6134cd612cad565b6001600160a01b0381166135325760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610981565b610cf481612f72565b610d818282612c26565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546000906001600160a01b03163303613586575060331936013560601c90565b503390565b604080518082019091526000808252602082015260405180604001604052808381526020018486602001516135c09190614e1e565b9052949350505050565b600081516000036135dd57506000919050565b60208201805160f81c603081108015906135fb575060398160ff1611155b15801561361d575060618160ff161015801561361b5750607a8160ff1611155b155b1561362c575060009392505050565b8351600181111561369a5761364e836136466001846149ca565b015160f81c90565b915060308260ff1610158015613668575060398260ff1611155b15801561368a575060618260ff16101580156136885750607a8260ff1611155b155b1561369a57506000949350505050565b60015b6136a86001836149ca565b811015613722578381015160f81c9250602d83148015906136de575060308360ff16101580156136dc575060398360ff1611155b155b80156136ff575060618360ff16101580156136fd5750607a8360ff1611155b155b156137105750600095945050505050565b8061371a81614a39565b91505061369d565b50600195945050505050565b6137378161170e565b156137845760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a20544f4b454e5f424c4f434b45440000006044820152606401610981565b610cf48161386f565b6000806137a46000846001865161101691906149ca565b60ca549091506001600160a01b0316158015906137e05750807f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f145b9392505050565b6137f1828261156e565b610d8157613809816001600160a01b031660146138f3565b6138148360206138f3565b604051602001613825929190614e31565b60408051601f198184030181529082905262461bcd60e51b82526109819160040161437c565b600080600061385a8585613a8e565b9150915061386781613ad3565b509392505050565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd6960208201529081018290526001906138ae90606001611749565b805460ff19169115159190911790556040518181527f2ce5d9351b1d590d5a066db0d2dc7602d55f092506a83a7ee8c4d78ee357d75a9060200160405180910390a150565b60606000613902836002614ea6565b61390d906002614e1e565b6001600160401b0381111561392457613924614133565b6040519080825280601f01601f19166020018201604052801561394e576020820181803683370190505b509050600360fc1b81600081518110613969576139696149dd565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110613998576139986149dd565b60200101906001600160f81b031916908160001a90535060006139bc846002614ea6565b6139c7906001614e1e565b90505b6001811115613a3f576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106139fb576139fb6149dd565b1a60f81b828281518110613a1157613a116149dd565b60200101906001600160f81b031916908160001a90535060049490941c93613a3881614c7a565b90506139ca565b5083156137e05760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610981565b6000808251604103613ac45760208301516040840151606085015160001a613ab887828585613c89565b94509450505050613acc565b506000905060025b9250929050565b6000816004811115613ae757613ae7614ebd565b03613aef5750565b6001816004811115613b0357613b03614ebd565b03613b505760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152606401610981565b6002816004811115613b6457613b64614ebd565b03613bb15760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610981565b6003816004811115613bc557613bc5614ebd565b03613c1d5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b6064820152608401610981565b6004816004811115613c3157613c31614ebd565b03610cf45760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c604482015261756560f01b6064820152608401610981565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613cc05750600090506003613d6d565b8460ff16601b14158015613cd857508460ff16601c14155b15613ce95750600090506004613d6d565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613d3d573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613d6657600060019250925050613d6d565b9150600090505b94509492505050565b508054613d8290614b04565b6000825580601f10613d92575050565b601f016020900490600052602060002090810190610cf491905b80821115613dc05760008155600101613dac565b5090565b600060208284031215613dd657600080fd5b81356001600160e01b0319811681146137e057600080fd5b6001600160401b0381168114610cf457600080fd5b8035613e0e81613dee565b919050565b60008060408385031215613e2657600080fd5b8235613e3181613dee565b946020939093013593505050565b600060208284031215613e5157600080fd5b5035919050565b60008083601f840112613e6a57600080fd5b5081356001600160401b03811115613e8157600080fd5b602083019150836020828501011115613acc57600080fd5b600080600060408486031215613eae57600080fd5b8335925060208401356001600160401b03811115613ecb57600080fd5b613ed786828701613e58565b9497909650939450505050565b6001600160a01b0381168114610cf457600080fd5b8035613e0e81613ee4565b60008060408385031215613f1757600080fd5b823591506020830135613f2981613ee4565b809150509250929050565b600060208284031215613f4657600080fd5b81356137e081613ee4565b60008083601f840112613f6357600080fd5b5081356001600160401b03811115613f7a57600080fd5b6020830191508360208260051b8501011115613acc57600080fd5b8015158114610cf457600080fd5b60008060008060008060008060a0898b031215613fbf57600080fd5b8835613fca81613ee4565b975060208901356001600160401b0380821115613fe657600080fd5b613ff28c838d01613f51565b909950975060408b013591508082111561400b57600080fd5b6140178c838d01613f51565b909750955060608b013591508082111561403057600080fd5b5061403d8b828c01613f51565b909450925050608089013561405181613f95565b809150509295985092959890939650565b600080600080600080600080600060c08a8c03121561408057600080fd5b893561408b81613ee4565b985060208a01356001600160401b03808211156140a757600080fd5b6140b38d838e01613f51565b909a50985060408c01359150808211156140cc57600080fd5b6140d88d838e01613f51565b909850965060608c01359150808211156140f157600080fd5b506140fe8c828d01613f51565b90955093505060808a013561411281613dee565b915060a08a013561412281613f95565b809150509295985092959850929598565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561417157614171614133565b604052919050565b60006001600160401b0382111561419257614192614133565b5060051b60200190565b600060208083850312156141af57600080fd5b82356001600160401b038111156141c557600080fd5b8301601f810185136141d657600080fd5b80356141e96141e482614179565b614149565b81815260059190911b8201830190838101908783111561420857600080fd5b928401925b8284101561422f57833561422081613ee4565b8252928401929084019061420d565b979650505050505050565b6000806000806060858703121561425057600080fd5b843561425b81613ee4565b93506020850135925060408501356001600160401b0381111561427d57600080fd5b61428987828801613e58565b95989497509550505050565b600080602083850312156142a857600080fd5b82356001600160401b038111156142be57600080fd5b6142ca85828601613e58565b90969095509350505050565b6000806000604084860312156142eb57600080fd5b83356001600160401b0381111561430157600080fd5b61430d86828701613e58565b909450925050602084013561432181613f95565b809150509250925092565b60005b8381101561434757818101518382015260200161432f565b50506000910152565b6000815180845261436881602086016020860161432c565b601f01601f19169290920160200192915050565b6020815260006137e06020830184614350565b60008060008060008060c087890312156143a857600080fd5b86356143b381613ee4565b955060208701356143c381613ee4565b945060408701356143d381613ee4565b935060608701356143e381613ee4565b925060808701356143f381613ee4565b915060a087013561440381613ee4565b809150509295509295509295565b60008060008060008060008060a0898b03121561442d57600080fd5b883561443881613ee4565b97506020890135965060408901356001600160401b038082111561445b57600080fd5b6144678c838d01613e58565b909850965060608b013591508082111561448057600080fd5b61448c8c838d01613f51565b909650945060808b01359150808211156144a557600080fd5b506144b28b828c01613f51565b999c989b5096995094979396929594505050565b600080602083850312156144d957600080fd5b82356001600160401b038111156144ef57600080fd5b6142ca85828601613f51565b600080600080600080600080600080600060e08c8e03121561451c57600080fd5b6145258c613ef9565b9a506001600160401b038060208e0135111561454057600080fd5b6145508e60208f01358f01613f51565b909b50995060408d013581101561456657600080fd5b6145768e60408f01358f01613f51565b909950975060608d013581101561458c57600080fd5b61459c8e60608f01358f01613f51565b90975095506145ad60808e01613e03565b945060a08d013593508060c08e013511156145c757600080fd5b506145d88d60c08e01358e01613e58565b81935080925050509295989b509295989b9093969950565b6000806000806000806000806000806000806101008d8f03121561461357600080fd5b61461c8d613ef9565b9b506001600160401b0360208e0135111561463657600080fd5b6146468e60208f01358f01613f51565b909b5099506001600160401b0360408e0135111561466357600080fd5b6146738e60408f01358f01613f51565b90995097506001600160401b0360608e0135111561469057600080fd5b6146a08e60608f01358f01613f51565b90975095506146b160808e01613e03565b94506146bf60a08e01613ef9565b935060c08d013592506001600160401b0360e08e013511156146e057600080fd5b6146f08e60e08f01358f01613e58565b81935080925050509295989b509295989b509295989b565b6000806040838503121561471b57600080fd5b823561472681613ee4565b91506020830135613f2981613ee4565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b60006020828403121561477d57600080fd5b81516137e081613dee565b60208082526023908201527f4d696e74696e674d616e616765723a20544f4b454e5f4e4f545f455850495241604082015262424c4560e81b606082015260800190565b60208082526010908201526f14185d5cd8589b194e8814105554d15160821b604082015260600190565b60006148036141e484614179565b80848252602080830192508560051b85013681111561482157600080fd5b855b818110156148b35780356001600160401b03808211156148435760008081fd5b90880190601f36818401126148585760008081fd5b82358281111561486a5761486a614133565b61487b818301601f19168801614149565b9250808352368782860101111561489457600091508182fd5b8087850188850137600090830187015250865250938201938201614823565b50919695505050505050565b60208082526024908201527f4d696e74696e674d616e616765723a2043414c4c45525f49535f4e4f545f4d49604082015263272a22a960e11b606082015260800190565b60006020828403121561491557600080fd5b81516137e081613f95565b6020808252602f908201527f4d696e74696e674d616e616765723a2053454e4445525f49535f4e4f545f415060408201526e282927ab22a22fa7a92fa7aba722a960891b606082015260800190565b60208082526025908201527f4d696e74696e674d616e616765723a204c4142454c535f4c454e4754485f42456040820152642627abaf9960d91b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b81810381811115610954576109546149b4565b634e487b7160e01b600052603260045260246000fd5b60208082526026908201527f4d696e74696e674d616e616765723a20535542444f4d41494e535f4e4f545f41604082015265131313d5d15160d21b606082015260800190565b600060018201614a4b57614a4b6149b4565b5060010190565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b60208082526022908201527f4d696e74696e674d616e616765723a20544c445f4e4f545f5245474953544552604082015261115160f21b606082015260800190565b600060208284031215614ad557600080fd5b5051919050565b6b756e732d646576746573742d60a01b81528183600c83013760009101600c01908152919050565b600181811c90821680614b1857607f821691505b602082108103614b3857634e487b7160e01b600052602260045260246000fd5b50919050565b600060208284031215614b5057600080fd5b81516137e081613ee4565b600081518084526020808501808196508360051b8101915082860160005b85811015614ba3578284038952614b91848351614350565b98850198935090840190600101614b79565b5091979650505050505050565b6001600160a01b038616815260a060208201819052600090614bd490830187614b5b565b8281036040840152614be68187614b5b565b90508281036060840152614bfa8186614b5b565b91505082151560808301529695505050505050565b600060018060a01b03808616835260606020840152614c316060840186614350565b9150808416604084015250949350505050565b606081526000614c576060830186614b5b565b8281036020840152614c698186614b5b565b915050826040830152949350505050565b600081614c8957614c896149b4565b506000190190565b60008251614ca381846020870161432c565b9190910192915050565b601f821115610cde57600081815260208120601f850160051c81016020861015614cd45750805b601f850160051c820191505b818110156116a357828155600101614ce0565b81516001600160401b03811115614d0c57614d0c614133565b614d2081614d1a8454614b04565b84614cad565b602080601f831160018114614d555760008415614d3d5750858301515b600019600386901b1c1916600185901b1785556116a3565b600085815260208120601f198616915b82811015614d8457888601518255948401946001909101908401614d65565b5085821015614da25787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b828152604060208201526000614dcb6040830184614350565b949350505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b80820180821115610954576109546149b4565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351614e6981601785016020880161432c565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351614e9a81602884016020880161432c565b01602801949350505050565b8082028115828204841417610954576109546149b4565b634e487b7160e01b600052602160045260246000fdfe5496787fc1ebdfeba375028c1865f13fbb1d63c0caa356ccc1b29a80f3ebd6229f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000811000a"; -const isSuperArgs = (xs) => xs.length > 1; -class MintingManager__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(overrides) { - return super.getDeployTransaction(overrides || {}); - } - deploy(overrides) { - return super.deploy(overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.MintingManager__factory = MintingManager__factory; -MintingManager__factory.bytecode = _bytecode; -MintingManager__factory.abi = _abi; diff --git a/dist/types/factories/contracts/ProxyReader__factory.d.ts b/dist/types/factories/contracts/ProxyReader__factory.d.ts deleted file mode 100644 index 01ec91bb..00000000 --- a/dist/types/factories/contracts/ProxyReader__factory.d.ts +++ /dev/null @@ -1,652 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../common"; -import type { ProxyReader, ProxyReaderInterface } from "../../contracts/ProxyReader"; -declare type ProxyReaderConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class ProxyReader__factory extends ContractFactory { - constructor(...args: ProxyReaderConstructorParams); - getDeployTransaction(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): ProxyReader__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b50613cb4806100206000396000f3fe608060405234801561001057600080fd5b506004361061021c5760003560e01c80638da5cb5b11610125578063bebec6b4116100ad578063e985e9c51161007c578063e985e9c514610540578063f059235914610553578063f2fde38b14610566578063ffa1ad7414610579578063ffad6f551461059d57600080fd5b8063bebec6b4146104e7578063bfc5429b146104fa578063c15ae7cf1461050d578063c87b56dd1461052d57600080fd5b8063a81ce6f9116100f4578063a81ce6f91461046d578063ac9650d814610480578063b3f9e4cb146104a0578063b85afd28146104b3578063b98b3526146104d457600080fd5b80638da5cb5b146103f157806391015f6b146103f9578063933c051d1461041b578063a3f4df7e1461043d57600080fd5b80634bd79ed0116101a857806370a082311161017757806370a082311461038d578063715018a6146103a05780637e37479e146103a857806383caffbe146103bb578063869b8884146103ce57600080fd5b80634bd79ed0146103335780634f558e79146103465780636352211e14610359578063672b9f811461036c57600080fd5b80631bd8cc1a116101ef5780631bd8cc1a146102ac5780631be5e7ed146102cc578063276fabb1146102ec578063430c20811461030d578063485cc9551461032057600080fd5b806301ffc9a7146102215780630328075514610249578063081812fc1461026c57806313af403514610297575b600080fd5b61023461022f366004612c9d565b6105b0565b60405190151581526020015b60405180910390f35b61025c610257366004612d0b565b610638565b6040516102409493929190612dfe565b61027f61027a366004612e3c565b61065b565b6040516001600160a01b039091168152602001610240565b6102aa6102a5366004612e6a565b610760565b005b6102bf6102ba366004612d0b565b6107d1565b6040516102409190612e87565b6102df6102da366004612edb565b6107f0565b6040516102409190612f12565b6102ff6102fa366004612f25565b61091b565b604051908152602001610240565b61023461031b366004612f66565b61098f565b6102aa61032e366004612f92565b610aa2565b6102aa610341366004612fcb565b610bf5565b610234610354366004612e3c565b610e51565b61027f610367366004612e3c565b610e5c565b61037f61037a366004613036565b610e67565b604051610240929190613058565b6102ff61039b366004612e6a565b610f97565b6102aa611095565b6102ff6103b6366004612e6a565b6110a9565b6102bf6103c936600461307d565b611118565b6103e16103dc366004612fcb565b6114f0565b60405161024094939291906131bb565b61027f6116e6565b61040c610407366004612d0b565b611714565b60405161024093929190613208565b61042e610429366004612fcb565b611734565b60405161024093929190613234565b6102df604051806040016040528060118152602001702aa7299d10283937bc3c902932b0b232b960791b81525081565b61027f61047b366004612e3c565b6118bd565b61049361048e366004612f25565b61198b565b6040516102409190613277565b61027f6104ae366004612e3c565b611a7f565b6104c66104c1366004612d0b565b611b05565b6040516102409291906132d9565b6102df6104e23660046132fe565b611ce1565b6102df6104f5366004612e6a565b611cfb565b6102df6105083660046132fe565b611d6f565b61052061051b366004612f25565b611d89565b6040516102409190613371565b6102df61053b366004612e3c565b611e37565b61023461054e366004612f92565b611f09565b6102aa610561366004612fcb565b611f54565b6102aa610574366004612e6a565b612018565b6102df604051806040016040528060058152602001640302e352e360dc1b81525081565b6102aa6105ab366004613384565b612085565b60006001600160e01b031982166362526e6360e01b14806105e157506001600160e01b03198216636fa624af60e11b145b806105fc57506001600160e01b031982166308da864d60e31b145b8061061757506001600160e01b03198216638584880360e01b145b8061063257506301ffc9a760e01b6001600160e01b03198316145b92915050565b6000806060806106498787876120d8565b93509350935093505b93509350935093565b60006106668261233a565b61067257506000919050565b61067b826123d2565b6106f25760665460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa1580156106c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106ed91906133bd565b610632565b60655460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa15801561073c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061063291906133bd565b600061076a6116e6565b6001600160a01b0316146107c55760405162461bcd60e51b815260206004820152601e60248201527f50726f78795265616465723a204f574e45525f414c52454144595f534554000060448201526064015b60405180910390fd5b6107ce81612419565b50565b60606107e66107e0848661346a565b83612495565b90505b9392505050565b60606107fb826123d2565b1561088057606554604051631be5e7ed60e01b81526001600160a01b0390911690631be5e7ed9061083490879087908790600401613547565b600060405180830381865afa158015610851573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261087991908101906135b0565b90506107e9565b600061088b83612617565b90506001600160a01b0381163b1561091357604051631be5e7ed60e01b81526001600160a01b03821690631be5e7ed906108cd90889088908890600401613547565b600060405180830381865afa92505050801561090b57506040513d6000823e601f3d908101601f1916820160405261090891908101906135b0565b60015b156109135791505b509392505050565b60655460405163276fabb160e01b81526000916001600160a01b03169063276fabb19061094e908690869060040161366c565b602060405180830381865afa15801561096b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613680565b600061099a8261233a565b6109a657506000610632565b6109af826123d2565b610a2d5760665460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a04573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a289190613699565b6107e9565b60655460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a7e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613699565b600054610100900460ff1615808015610ac25750600054600160ff909116105b80610adc5750303b158015610adc575060005460ff166001145b610b3f5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107bc565b6000805460ff191660011790558015610b62576000805461ff0019166101001790555b606580546001600160a01b038086166001600160a01b0319928316179092556066805492851692909116919091179055610b9a61268a565b610ba261268a565b610baa6126b1565b8015610bf0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b610bfd6126e1565b828114610c4c5760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107bc565b60005b83811015610e4a5760006068868684818110610c6d57610c6d6136bb565b9050602002810190610c7f91906136d1565b604051610c8d929190613717565b908152604051908190036020019020541115610cf1576068858583818110610cb757610cb76136bb565b9050602002810190610cc991906136d1565b604051610cd7929190613717565b90815260200160405180910390206000610cf19190612c18565b60005b838383818110610d0657610d066136bb565b9050602002810190610d189190613727565b9050811015610ddc576068868684818110610d3557610d356136bb565b9050602002810190610d4791906136d1565b604051610d55929190613717565b9081526020016040518091039020848484818110610d7557610d756136bb565b9050602002810190610d879190613727565b83818110610d9757610d976136bb565b9050602002810190610da991906136d1565b82546001810184556000938452602090932090920191610dc991836137f8565b5080610dd4816138cd565b915050610cf4565b507fb2b57b54285120d17f49f2490a39ef791441fd0ad1e6b6818c23262bf91f061c858583818110610e1057610e106136bb565b9050602002810190610e2291906136d1565b604051610e309291906138e6565b60405180910390a180610e42816138cd565b915050610c4f565b5050505050565b60006106328261233a565b600061063282612740565b606080610e73836123d2565b15610ef95760655460405163672b9f8160e01b815260048101869052602481018590526001600160a01b039091169063672b9f8190604401600060405180830381865afa158015610ec8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610ef091908101906138fa565b91509150610f90565b6000610f0484612617565b90506001600160a01b0381163b15610f8e5760405163672b9f8160e01b815260048101869052602481018590526001600160a01b0382169063672b9f8190604401600060405180830381865afa925050508015610f8357506040513d6000823e601f3d908101601f19168201604052610f8091908101906138fa565b60015b15610f8e5790935091505b505b9250929050565b6065546040516370a0823160e01b81526001600160a01b03838116600483015260009283929116906370a0823190602401602060405180830381865afa158015610fe5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110099190613680565b6066549091506001600160a01b031615610632576066546040516370a0823160e01b81526001600160a01b038581166004830152909116906370a0823190602401602060405180830381865afa158015611067573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061108b9190613680565b6107e9908261395d565b61109d6126e1565b6110a76000612419565b565b606554604051633f1ba3cf60e11b81526001600160a01b0383811660048301526000921690637e37479e90602401602060405180830381865afa1580156110f4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190613680565b606060006067868660405161112e929190613717565b9081526020016040518091039020805461114790613770565b80601f016020809104026020016040519081016040528092919081815260200182805461117390613770565b80156111c05780601f10611195576101008083540402835291602001916111c0565b820191906000526020600020905b8154815290600101906020018083116111a357829003601f168201915b5050505050905080516000036111d657506114e8565b6000604051806040016040528060068152602001653a37b5b2b71760d11b81525090506000604051806040016040528060088152602001672e6164647265737360c01b81525090506000604051806040016040528060018152602001601760f91b815250905060008385838c8c868d8d8a60405160200161125f99989796959493929190613970565b6040516020818303038152906040529050600060688260405161128291906139f3565b9081526020016040518091039020805480602002602001604051908101604052809291908181526020016000905b8282101561135c5783829060005260206000200180546112cf90613770565b80601f01602080910402602001604051908101604052809291908181526020018280546112fb90613770565b80156113485780601f1061131d57610100808354040283529160200191611348565b820191906000526020600020905b81548152906001019060200180831161132b57829003601f168201915b5050505050815260200190600101906112b0565b50505050905080516003611370919061395d565b6001600160401b03811115611387576113876133da565b6040519080825280602002602001820160405280156113ba57816020015b60608152602001906001900390816113a55790505b50965081876000815181106113d1576113d16136bb565b602002602001018190525060005b815181101561143e578181815181106113fa576113fa6136bb565b602002602001015188826001611410919061395d565b81518110611420576114206136bb565b60200260200101819052508080611436906138cd565b9150506113df565b508486848d8d8860405160200161145a96959493929190613a0f565b6040516020818303038152906040528782516001611478919061395d565b81518110611488576114886136bb565b60200260200101819052508486856040516020016114a893929190613a72565b60405160208183030381529060405287825160026114c6919061395d565b815181106114d6576114d66136bb565b60200260200101819052505050505050505b949350505050565b6060808080846001600160401b0381111561150d5761150d6133da565b604051908082528060200260200182016040528015611536578160200160208202803683370190505b509350846001600160401b03811115611551576115516133da565b60405190808252806020026020018201604052801561157a578160200160208202803683370190505b509250846001600160401b03811115611595576115956133da565b6040519080825280602002602001820160405280156115c857816020015b60608152602001906001900390816115b35790505b509150846001600160401b038111156115e3576115e36133da565b60405190808252806020026020018201604052801561161657816020015b60608152602001906001900390816116015790505b50905060005b858110156116da57611647898989898581811061163b5761163b6136bb565b905060200201356120d8565b888581518110611659576116596136bb565b60200260200101888681518110611672576116726136bb565b6020026020010188878151811061168b5761168b6136bb565b602002602001018888815181106116a4576116a46136bb565b6020908102919091010193909352929091526001600160a01b0392831690915291169052806116d2816138cd565b91505061161c565b50945094509450949050565b7fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c8121905546001600160a01b031690565b6000806060611724868686612761565b9250925092505b93509350939050565b60608080836001600160401b03811115611750576117506133da565b604051908082528060200260200182016040528015611779578160200160208202803683370190505b509250836001600160401b03811115611794576117946133da565b6040519080825280602002602001820160405280156117bd578160200160208202803683370190505b509150836001600160401b038111156117d8576117d86133da565b60405190808252806020026020018201604052801561180b57816020015b60608152602001906001900390816117f65790505b50905060005b848110156118b25761183c8888888885818110611830576118306136bb565b90506020020135612761565b86848151811061184e5761184e6136bb565b60200260200101868581518110611867576118676136bb565b60200260200101868681518110611880576118806136bb565b60209081029190910101929092526001600160a01b0392831690915291169052806118aa816138cd565b915050611811565b509450945094915050565b606554604051634f558e7960e01b8152600481018390526000916001600160a01b031690634f558e7990602401602060405180830381865afa158015611907573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061192b9190613699565b156119415750506065546001600160a01b031690565b6066546001600160a01b03161580159061196d575060006119618361296c565b6001600160a01b031614155b156119835750506066546001600160a01b031690565b506000919050565b6060816001600160401b038111156119a5576119a56133da565b6040519080825280602002602001820160405280156119d857816020015b60608152602001906001900390816119c35790505b50905060005b82811015611a7857611a48308585848181106119fc576119fc6136bb565b9050602002810190611a0e91906136d1565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061299e92505050565b828281518110611a5a57611a5a6136bb565b60200260200101819052508080611a70906138cd565b9150506119de565b5092915050565b6000611a8a8261233a565b611a9657506000919050565b611a9f826123d2565b611ad45760665460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb906024016106ac565b60655460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb9060240161071f565b606080836001600160401b03811115611b2057611b206133da565b604051908082528060200260200182016040528015611b5357816020015b6060815260200190600190039081611b3e5790505b509150836001600160401b03811115611b6e57611b6e6133da565b604051908082528060200260200182016040528015611ba157816020015b6060815260200190600190039081611b8c5790505b509050611bad836123d2565b15611c345760655460405163170b5fa560e31b81526001600160a01b039091169063b85afd2890611be690889088908890600401613ab5565b600060405180830381865afa158015611c03573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611c2b9190810190613b72565b91509150611cd9565b6000611c3f84612617565b90506001600160a01b0381163b15158015611c5957508415155b15611cd75760405163170b5fa560e31b81526001600160a01b0382169063b85afd2890611c8e90899089908990600401613ab5565b600060405180830381865afa925050508015611ccc57506040513d6000823e601f3d908101601f19168201604052611cc99190810190613b72565b60015b15611cd75790935091505b505b935093915050565b6060611cf08686868686612a92565b979650505050505050565b606554604051632fafb1ad60e21b81526001600160a01b038381166004830152606092169063bebec6b4906024015b600060405180830381865afa158015611d47573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261063291908101906135b0565b6060611d7e8686868686612a92565b509695505050505050565b6060816001600160401b03811115611da357611da36133da565b604051908082528060200260200182016040528015611dcc578160200160208202803683370190505b50905060005b82811015611a7857611dfb848483818110611def57611def6136bb565b90506020020135612740565b828281518110611e0d57611e0d6136bb565b6001600160a01b039092166020928302919091019091015280611e2f816138cd565b915050611dd2565b6060611e428261233a565b611e5a57505060408051602081019091526000815290565b611e63826123d2565b611ed85760665460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401600060405180830381865afa158015611eb0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106ed91908101906135b0565b60655460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401611d2a565b60405162461bcd60e51b815260206004820152601f60248201527f50726f78795265616465723a20554e535550504f525445445f4d4554484f440060448201526000906064016107bc565b611f5c6126e1565b828114611fab5760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107bc565b60005b83811015610e4a57612006858583818110611fcb57611fcb6136bb565b9050602002810190611fdd91906136d1565b858585818110611fef57611fef6136bb565b905060200281019061200191906136d1565b612b3e565b80612010816138cd565b915050611fae565b6120206126e1565b6001600160a01b0381166107c55760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107bc565b61208d6126e1565b60005b83811015610e4a576120c68585838181106120ad576120ad6136bb565b90506020028101906120bf91906136d1565b8585612b3e565b806120d0816138cd565b915050612090565b600080606080856001600160401b038111156120f6576120f66133da565b60405190808252806020026020018201604052801561212957816020015b60608152602001906001900390816121145790505b509150856001600160401b03811115612144576121446133da565b60405190808252806020026020018201604052801561217757816020015b60608152602001906001900390816121625790505b509050612183856123d2565b156122845760655460405163b3f9e4cb60e01b8152600481018790526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa1580156121d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121f591906133bd565b935061220085612bad565b60655460405163170b5fa560e31b81529194506001600160a01b03169063b85afd2890612235908a908a908a90600401613ab5565b600060405180830381865afa158015612252573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261227a9190810190613b72565b9092509050610652565b61228d85612617565b93506122988561296c565b92506001600160a01b0384163b151580156122b4575060008251115b156106525760405163170b5fa560e31b81526001600160a01b0385169063b85afd28906122e9908a908a908a90600401613ab5565b600060405180830381865afa92505050801561232757506040513d6000823e601f3d908101601f191682016040526123249190810190613b72565b60015b1561065257909250905093509350935093565b6000612345826123d2565b6123645760006123548361296c565b6001600160a01b03161415610632565b606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e79906024015b602060405180830381865afa1580156123ae573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190613699565b6066546000906001600160a01b031615806106325750606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401612391565b60006124236116e6565b9050817fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c812190580546001600160a01b0319166001600160a01b03928316179055604051838216918316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b606082516001600160401b038111156124b0576124b06133da565b6040519080825280602002602001820160405280156124e357816020015b60608152602001906001900390816124ce5790505b5090506124ef826123d2565b1561257257606554604051630dec660d60e11b81526001600160a01b0390911690631bd8cc1a906125269086908690600401613bcb565b600060405180830381865afa158015612543573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261256b9190810190613bed565b9050610632565b600061257d83612617565b90506001600160a01b0381163b15158015612599575060008451115b15611a7857604051630dec660d60e11b81526001600160a01b03821690631bd8cc1a906125cc9087908790600401613bcb565b600060405180830381865afa92505050801561260a57506040513d6000823e601f3d908101601f191682016040526126079190810190613bed565b60015b15611a7857949350505050565b60665460405163b3f9e4cb60e01b8152600481018390526000916001600160a01b03169063b3f9e4cb906024015b602060405180830381865afa92505050801561267e575060408051601f3d908101601f1916820190925261267b918101906133bd565b60015b61063257506000919050565b600054610100900460ff166110a75760405162461bcd60e51b81526004016107bc90613c21565b600054610100900460ff166126d85760405162461bcd60e51b81526004016107bc90613c21565b6110a733612419565b336126ea6116e6565b6001600160a01b0316146110a75760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107bc565b600061274b826123d2565b612758576106ed8261296c565b61063282612bad565b6000806060846001600160401b0381111561277e5761277e6133da565b6040519080825280602002602001820160405280156127b157816020015b606081526020019060019003908161279c5790505b5090506127bd846123d2565b156128bb5760655460405163b3f9e4cb60e01b8152600481018690526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561280b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061282f91906133bd565b925061283a84612bad565b606554604051630dec660d60e11b81529193506001600160a01b031690631bd8cc1a9061286f90899089908990600401613c6c565b600060405180830381865afa15801561288c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526128b49190810190613bed565b905061172b565b6128c484612617565b92506128cf8461296c565b91506001600160a01b0383163b151580156128e957508415155b1561172b57604051630dec660d60e11b81526001600160a01b03841690631bd8cc1a9061291e90899089908990600401613c6c565b600060405180830381865afa92505050801561295c57506040513d6000823e601f3d908101601f191682016040526129599190810190613bed565b60015b1561172b57905093509350939050565b6066546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401612645565b60606001600160a01b0383163b612a065760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b60648201526084016107bc565b600080846001600160a01b031684604051612a2191906139f3565b600060405180830381855af49150503d8060008114612a5c576040519150601f19603f3d011682016040523d82523d6000602084013e612a61565b606091505b5091509150612a898282604051806060016040528060278152602001613c8160279139612bdf565b95945050505050565b6060806000612aa388888888611118565b90506000612ab18286612495565b905060005b8151811015612b31576000828281518110612ad357612ad36136bb565b6020026020010151511115612b1f57828181518110612af457612af46136bb565b60200260200101519350818181518110612b1057612b106136bb565b60200260200101519450612b31565b80612b29816138cd565b915050612ab6565b5050509550959350505050565b818160678686604051612b52929190613717565b90815260200160405180910390209182612b6d9291906137f8565b507f0bf4b04a0f6d7d0800284e1abb0f58f795c0a25b9088634b6ab847be51001dec8484604051612b9f9291906138e6565b60405180910390a150505050565b6065546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401612645565b60608315612bee5750816107e9565b825115612bfe5782518084602001fd5b8160405162461bcd60e51b81526004016107bc9190612f12565b50805460008255906000526020600020908101906107ce91905b80821115612c4f576000612c468282612c53565b50600101612c32565b5090565b508054612c5f90613770565b6000825580601f10612c6f575050565b601f0160209004906000526020600020908101906107ce91905b80821115612c4f5760008155600101612c89565b600060208284031215612caf57600080fd5b81356001600160e01b0319811681146107e957600080fd5b60008083601f840112612cd957600080fd5b5081356001600160401b03811115612cf057600080fd5b6020830191508360208260051b8501011115610f9057600080fd5b600080600060408486031215612d2057600080fd5b83356001600160401b03811115612d3657600080fd5b612d4286828701612cc7565b909790965060209590950135949350505050565b60005b83811015612d71578181015183820152602001612d59565b50506000910152565b60008151808452612d92816020860160208601612d56565b601f01601f19169290920160200192915050565b600082825180855260208086019550808260051b84010181860160005b84811015612df157601f19868403018952612ddf838351612d7a565b98840198925090830190600101612dc3565b5090979650505050505050565b6001600160a01b03858116825284166020820152608060408201819052600090612e2a90830185612da6565b8281036060840152611cf08185612da6565b600060208284031215612e4e57600080fd5b5035919050565b6001600160a01b03811681146107ce57600080fd5b600060208284031215612e7c57600080fd5b81356107e981612e55565b6020815260006107e96020830184612da6565b60008083601f840112612eac57600080fd5b5081356001600160401b03811115612ec357600080fd5b602083019150836020828501011115610f9057600080fd5b600080600060408486031215612ef057600080fd5b83356001600160401b03811115612f0657600080fd5b612d4286828701612e9a565b6020815260006107e96020830184612d7a565b60008060208385031215612f3857600080fd5b82356001600160401b03811115612f4e57600080fd5b612f5a85828601612cc7565b90969095509350505050565b60008060408385031215612f7957600080fd5b8235612f8481612e55565b946020939093013593505050565b60008060408385031215612fa557600080fd5b8235612fb081612e55565b91506020830135612fc081612e55565b809150509250929050565b60008060008060408587031215612fe157600080fd5b84356001600160401b0380821115612ff857600080fd5b61300488838901612cc7565b9096509450602087013591508082111561301d57600080fd5b5061302a87828801612cc7565b95989497509550505050565b6000806040838503121561304957600080fd5b50508035926020909101359150565b60408152600061306b6040830185612d7a565b8281036020840152612a898185612d7a565b6000806000806040858703121561309357600080fd5b84356001600160401b03808211156130aa57600080fd5b6130b688838901612e9a565b909650945060208701359150808211156130cf57600080fd5b5061302a87828801612e9a565b600081518084526020808501945080840160005b838110156131155781516001600160a01b0316875295820195908201906001016130f0565b509495945050505050565b60008282518085526020808601955060058183821b8501018287016000805b868110156131ac57601f1988850381018c5283518051808752908801908887019080891b88018a01865b8281101561319557858a8303018452613183828651612d7a565b948c0194938c01939150600101613169565b509e8a019e9750505093870193505060010161313f565b50919998505050505050505050565b6080815260006131ce60808301876130dc565b82810360208401526131e081876130dc565b905082810360408401526131f48186613120565b90508281036060840152611cf08185613120565b6001600160a01b03848116825283166020820152606060408201819052600090612a8990830184612da6565b60608152600061324760608301866130dc565b828103602084015261325981866130dc565b9050828103604084015261326d8185613120565b9695505050505050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156132cc57603f198886030184526132ba858351612d7a565b9450928501929085019060010161329e565b5092979650505050505050565b6040815260006132ec6040830185612da6565b8281036020840152612a898185612da6565b60008060008060006060868803121561331657600080fd5b85356001600160401b038082111561332d57600080fd5b61333989838a01612e9a565b9097509550602088013591508082111561335257600080fd5b5061335f88828901612e9a565b96999598509660400135949350505050565b6020815260006107e960208301846130dc565b6000806000806040858703121561339a57600080fd5b84356001600160401b03808211156133b157600080fd5b6130b688838901612cc7565b6000602082840312156133cf57600080fd5b81516107e981612e55565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715613418576134186133da565b604052919050565b60006001600160401b03821115613439576134396133da565b5060051b60200190565b60006001600160401b0382111561345c5761345c6133da565b50601f01601f191660200190565b600061347d61347884613420565b6133f0565b80848252602080830192508560051b85013681111561349b57600080fd5b855b818110156135125780356001600160401b038111156134bc5760008081fd5b870136601f8201126134ce5760008081fd5b80356134dc61347882613443565b81815236868385010111156134f15760008081fd5b8186840187830137600091810186019190915286525093820193820161349d565b50919695505050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60408152600061355b60408301858761351e565b9050826020830152949350505050565b600082601f83011261357c57600080fd5b815161358a61347882613443565b81815284602083860101111561359f57600080fd5b6114e8826020830160208701612d56565b6000602082840312156135c257600080fd5b81516001600160401b038111156135d857600080fd5b6114e88482850161356b565b60008383855260208086019550808560051b8301018460005b87811015612df157848303601f19018952813536889003601e1901811261362357600080fd5b870184810190356001600160401b0381111561363e57600080fd5b80360382131561364d57600080fd5b61365885828461351e565b9a86019a94505050908301906001016135fd565b6020815260006107e66020830184866135e4565b60006020828403121561369257600080fd5b5051919050565b6000602082840312156136ab57600080fd5b815180151581146107e957600080fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e198436030181126136e857600080fd5b8301803591506001600160401b0382111561370257600080fd5b602001915036819003821315610f9057600080fd5b8183823760009101908152919050565b6000808335601e1984360301811261373e57600080fd5b8301803591506001600160401b0382111561375857600080fd5b6020019150600581901b3603821315610f9057600080fd5b600181811c9082168061378457607f821691505b6020821081036137a457634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115610bf057600081815260208120601f850160051c810160208610156137d15750805b601f850160051c820191505b818110156137f0578281556001016137dd565b505050505050565b6001600160401b0383111561380f5761380f6133da565b6138238361381d8354613770565b836137aa565b6000601f841160018114613857576000851561383f5750838201355b600019600387901b1c1916600186901b178355610e4a565b600083815260209020601f19861690835b828110156138885786850135825560209485019460019092019101613868565b50868210156138a55760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b634e487b7160e01b600052601160045260246000fd5b6000600182016138df576138df6138b7565b5060010190565b6020815260006107e660208301848661351e565b6000806040838503121561390d57600080fd5b82516001600160401b038082111561392457600080fd5b6139308683870161356b565b9350602085015191508082111561394657600080fd5b506139538582860161356b565b9150509250929050565b80820180821115610632576106326138b7565b60008a51613982818460208f01612d56565b8a5190830190613996818360208f01612d56565b8a519101906139a9818360208e01612d56565b0187898237600090880190815286516139c6818360208b01612d56565b0184868237600090850190815283516139e3818360208801612d56565b019b9a5050505050505050505050565b60008251613a05818460208701612d56565b9190910192915050565b60008751613a21818460208c01612d56565b875190830190613a35818360208c01612d56565b8751910190613a48818360208b01612d56565b018486823760009085019081528351613a65818360208801612d56565b0198975050505050505050565b60008451613a84818460208901612d56565b845190830190613a98818360208901612d56565b8451910190613aab818360208801612d56565b0195945050505050565b6040808252810183905260006001600160fb1b03841115613ad557600080fd5b8360051b808660608501376020830193909352500160600192915050565b600082601f830112613b0457600080fd5b81516020613b1461347883613420565b82815260059290921b84018101918181019086841115613b3357600080fd5b8286015b84811015611d7e5780516001600160401b03811115613b565760008081fd5b613b648986838b010161356b565b845250918301918301613b37565b60008060408385031215613b8557600080fd5b82516001600160401b0380821115613b9c57600080fd5b613ba886838701613af3565b93506020850151915080821115613bbe57600080fd5b5061395385828601613af3565b604081526000613bde6040830185612da6565b90508260208301529392505050565b600060208284031215613bff57600080fd5b81516001600160401b03811115613c1557600080fd5b6114e884828501613af3565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60408152600061355b6040830185876135e456fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a"; - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "uint8"; - readonly name: "version"; - readonly type: "uint8"; - }]; - readonly name: "Initialized"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "previousOwner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "newOwner"; - readonly type: "address"; - }]; - readonly name: "OwnershipTransferred"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "string"; - readonly name: "tokenKey"; - readonly type: "string"; - }]; - readonly name: "SetLegacyRecords"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "string"; - readonly name: "network"; - readonly type: "string"; - }]; - readonly name: "SetNetworkFamily"; - readonly type: "event"; - }, { - readonly inputs: readonly []; - readonly name: "NAME"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "VERSION"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "networks"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "families"; - readonly type: "string[]"; - }]; - readonly name: "addBlockchainNetworks"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "networks"; - readonly type: "string[]"; - }, { - readonly internalType: "string"; - readonly name: "family"; - readonly type: "string"; - }]; - readonly name: "addBlockchainNetworks"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[][]"; - readonly name: "legacyKeys"; - readonly type: "string[][]"; - }]; - readonly name: "addLegacyRecords"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "balanceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "exists"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "get"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "network"; - readonly type: "string"; - }, { - readonly internalType: "string"; - readonly name: "token"; - readonly type: "string"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getAddress"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: "addr"; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "network"; - readonly type: "string"; - }, { - readonly internalType: "string"; - readonly name: "token"; - readonly type: "string"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getAddressKey"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "network"; - readonly type: "string"; - }, { - readonly internalType: "string"; - readonly name: "token"; - readonly type: "string"; - }]; - readonly name: "getAddressKeys"; - readonly outputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getApproved"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "keyHash"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getByHash"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }, { - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getData"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256[]"; - readonly name: "keyHashes"; - readonly type: "uint256[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getDataByHash"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256[]"; - readonly name: "keyHashes"; - readonly type: "uint256[]"; - }, { - readonly internalType: "uint256[]"; - readonly name: "tokenIds"; - readonly type: "uint256[]"; - }]; - readonly name: "getDataByHashForMany"; - readonly outputs: readonly [{ - readonly internalType: "address[]"; - readonly name: "resolvers"; - readonly type: "address[]"; - }, { - readonly internalType: "address[]"; - readonly name: "owners"; - readonly type: "address[]"; - }, { - readonly internalType: "string[][]"; - readonly name: "keys"; - readonly type: "string[][]"; - }, { - readonly internalType: "string[][]"; - readonly name: "values"; - readonly type: "string[][]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "uint256[]"; - readonly name: "tokenIds"; - readonly type: "uint256[]"; - }]; - readonly name: "getDataForMany"; - readonly outputs: readonly [{ - readonly internalType: "address[]"; - readonly name: "resolvers"; - readonly type: "address[]"; - }, { - readonly internalType: "address[]"; - readonly name: "owners"; - readonly type: "address[]"; - }, { - readonly internalType: "string[][]"; - readonly name: "values"; - readonly type: "string[][]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getMany"; - readonly outputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256[]"; - readonly name: "keyHashes"; - readonly type: "uint256[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getManyByHash"; - readonly outputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "contract IUNSRegistry"; - readonly name: "unsRegistry"; - readonly type: "address"; - }, { - readonly internalType: "contract ICNSRegistry"; - readonly name: "cnsRegistry"; - readonly type: "address"; - }]; - readonly name: "initialize"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly name: "isApprovedForAll"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "pure"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "spender"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "isApprovedOrOwner"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes[]"; - readonly name: "data"; - readonly type: "bytes[]"; - }]; - readonly name: "multicall"; - readonly outputs: readonly [{ - readonly internalType: "bytes[]"; - readonly name: "results"; - readonly type: "bytes[]"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "labels"; - readonly type: "string[]"; - }]; - readonly name: "namehash"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "owner"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "ownerOf"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256[]"; - readonly name: "tokenIds"; - readonly type: "uint256[]"; - }]; - readonly name: "ownerOfForMany"; - readonly outputs: readonly [{ - readonly internalType: "address[]"; - readonly name: "owners"; - readonly type: "address[]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "registryOf"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "renounceOwnership"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "resolverOf"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }]; - readonly name: "reverseNameOf"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }]; - readonly name: "reverseOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }]; - readonly name: "setOwner"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "tokenURI"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "newOwner"; - readonly type: "address"; - }]; - readonly name: "transferOwnership"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): ProxyReaderInterface; - static connect(address: string, runner?: ContractRunner | null): ProxyReader; -} -export {}; -//# sourceMappingURL=ProxyReader__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/ProxyReader__factory.d.ts.map b/dist/types/factories/contracts/ProxyReader__factory.d.ts.map deleted file mode 100644 index ca495561..00000000 --- a/dist/types/factories/contracts/ProxyReader__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ProxyReader__factory.d.ts","sourceRoot":"","sources":["../../../../types/factories/contracts/ProxyReader__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACxD,OAAO,KAAK,EACV,WAAW,EACX,oBAAoB,EACrB,MAAM,6BAA6B,CAAC;AAu0BrC,aAAK,4BAA4B,GAC7B,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,oBAAqB,SAAQ,eAAe;gBAC3C,GAAG,IAAI,EAAE,4BAA4B;IAQxC,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,oBAAoB;IAIrE,MAAM,CAAC,QAAQ,CAAC,QAAQ,g78BAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,oBAAoB;IAG9C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,WAAW;CAG7E"} \ No newline at end of file diff --git a/dist/types/factories/contracts/ProxyReader__factory.js b/dist/types/factories/contracts/ProxyReader__factory.js deleted file mode 100644 index 1f73c0fe..00000000 --- a/dist/types/factories/contracts/ProxyReader__factory.js +++ /dev/null @@ -1,867 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ProxyReader__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint8", - name: "version", - type: "uint8", - }, - ], - name: "Initialized", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "previousOwner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnershipTransferred", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "string", - name: "tokenKey", - type: "string", - }, - ], - name: "SetLegacyRecords", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "string", - name: "network", - type: "string", - }, - ], - name: "SetNetworkFamily", - type: "event", - }, - { - inputs: [], - name: "NAME", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "VERSION", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string[]", - name: "networks", - type: "string[]", - }, - { - internalType: "string[]", - name: "families", - type: "string[]", - }, - ], - name: "addBlockchainNetworks", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "string[]", - name: "networks", - type: "string[]", - }, - { - internalType: "string", - name: "family", - type: "string", - }, - ], - name: "addBlockchainNetworks", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[][]", - name: "legacyKeys", - type: "string[][]", - }, - ], - name: "addLegacyRecords", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "exists", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "key", - type: "string", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "get", - outputs: [ - { - internalType: "string", - name: "value", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "network", - type: "string", - }, - { - internalType: "string", - name: "token", - type: "string", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getAddress", - outputs: [ - { - internalType: "string", - name: "addr", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "network", - type: "string", - }, - { - internalType: "string", - name: "token", - type: "string", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getAddressKey", - outputs: [ - { - internalType: "string", - name: "key", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "network", - type: "string", - }, - { - internalType: "string", - name: "token", - type: "string", - }, - ], - name: "getAddressKeys", - outputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getApproved", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "keyHash", - type: "uint256", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getByHash", - outputs: [ - { - internalType: "string", - name: "key", - type: "string", - }, - { - internalType: "string", - name: "value", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getData", - outputs: [ - { - internalType: "address", - name: "resolver", - type: "address", - }, - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256[]", - name: "keyHashes", - type: "uint256[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getDataByHash", - outputs: [ - { - internalType: "address", - name: "resolver", - type: "address", - }, - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256[]", - name: "keyHashes", - type: "uint256[]", - }, - { - internalType: "uint256[]", - name: "tokenIds", - type: "uint256[]", - }, - ], - name: "getDataByHashForMany", - outputs: [ - { - internalType: "address[]", - name: "resolvers", - type: "address[]", - }, - { - internalType: "address[]", - name: "owners", - type: "address[]", - }, - { - internalType: "string[][]", - name: "keys", - type: "string[][]", - }, - { - internalType: "string[][]", - name: "values", - type: "string[][]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "uint256[]", - name: "tokenIds", - type: "uint256[]", - }, - ], - name: "getDataForMany", - outputs: [ - { - internalType: "address[]", - name: "resolvers", - type: "address[]", - }, - { - internalType: "address[]", - name: "owners", - type: "address[]", - }, - { - internalType: "string[][]", - name: "values", - type: "string[][]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getMany", - outputs: [ - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256[]", - name: "keyHashes", - type: "uint256[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getManyByHash", - outputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "contract IUNSRegistry", - name: "unsRegistry", - type: "address", - }, - { - internalType: "contract ICNSRegistry", - name: "cnsRegistry", - type: "address", - }, - ], - name: "initialize", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - { - internalType: "address", - name: "", - type: "address", - }, - ], - name: "isApprovedForAll", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "pure", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "spender", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "isApprovedOrOwner", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes[]", - name: "data", - type: "bytes[]", - }, - ], - name: "multicall", - outputs: [ - { - internalType: "bytes[]", - name: "results", - type: "bytes[]", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "string[]", - name: "labels", - type: "string[]", - }, - ], - name: "namehash", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "ownerOf", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256[]", - name: "tokenIds", - type: "uint256[]", - }, - ], - name: "ownerOfForMany", - outputs: [ - { - internalType: "address[]", - name: "owners", - type: "address[]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "registryOf", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "renounceOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "resolverOf", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "addr", - type: "address", - }, - ], - name: "reverseNameOf", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "addr", - type: "address", - }, - ], - name: "reverseOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "addr", - type: "address", - }, - ], - name: "setOwner", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "tokenURI", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "transferOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -const _bytecode = "0x608060405234801561001057600080fd5b50613cb4806100206000396000f3fe608060405234801561001057600080fd5b506004361061021c5760003560e01c80638da5cb5b11610125578063bebec6b4116100ad578063e985e9c51161007c578063e985e9c514610540578063f059235914610553578063f2fde38b14610566578063ffa1ad7414610579578063ffad6f551461059d57600080fd5b8063bebec6b4146104e7578063bfc5429b146104fa578063c15ae7cf1461050d578063c87b56dd1461052d57600080fd5b8063a81ce6f9116100f4578063a81ce6f91461046d578063ac9650d814610480578063b3f9e4cb146104a0578063b85afd28146104b3578063b98b3526146104d457600080fd5b80638da5cb5b146103f157806391015f6b146103f9578063933c051d1461041b578063a3f4df7e1461043d57600080fd5b80634bd79ed0116101a857806370a082311161017757806370a082311461038d578063715018a6146103a05780637e37479e146103a857806383caffbe146103bb578063869b8884146103ce57600080fd5b80634bd79ed0146103335780634f558e79146103465780636352211e14610359578063672b9f811461036c57600080fd5b80631bd8cc1a116101ef5780631bd8cc1a146102ac5780631be5e7ed146102cc578063276fabb1146102ec578063430c20811461030d578063485cc9551461032057600080fd5b806301ffc9a7146102215780630328075514610249578063081812fc1461026c57806313af403514610297575b600080fd5b61023461022f366004612c9d565b6105b0565b60405190151581526020015b60405180910390f35b61025c610257366004612d0b565b610638565b6040516102409493929190612dfe565b61027f61027a366004612e3c565b61065b565b6040516001600160a01b039091168152602001610240565b6102aa6102a5366004612e6a565b610760565b005b6102bf6102ba366004612d0b565b6107d1565b6040516102409190612e87565b6102df6102da366004612edb565b6107f0565b6040516102409190612f12565b6102ff6102fa366004612f25565b61091b565b604051908152602001610240565b61023461031b366004612f66565b61098f565b6102aa61032e366004612f92565b610aa2565b6102aa610341366004612fcb565b610bf5565b610234610354366004612e3c565b610e51565b61027f610367366004612e3c565b610e5c565b61037f61037a366004613036565b610e67565b604051610240929190613058565b6102ff61039b366004612e6a565b610f97565b6102aa611095565b6102ff6103b6366004612e6a565b6110a9565b6102bf6103c936600461307d565b611118565b6103e16103dc366004612fcb565b6114f0565b60405161024094939291906131bb565b61027f6116e6565b61040c610407366004612d0b565b611714565b60405161024093929190613208565b61042e610429366004612fcb565b611734565b60405161024093929190613234565b6102df604051806040016040528060118152602001702aa7299d10283937bc3c902932b0b232b960791b81525081565b61027f61047b366004612e3c565b6118bd565b61049361048e366004612f25565b61198b565b6040516102409190613277565b61027f6104ae366004612e3c565b611a7f565b6104c66104c1366004612d0b565b611b05565b6040516102409291906132d9565b6102df6104e23660046132fe565b611ce1565b6102df6104f5366004612e6a565b611cfb565b6102df6105083660046132fe565b611d6f565b61052061051b366004612f25565b611d89565b6040516102409190613371565b6102df61053b366004612e3c565b611e37565b61023461054e366004612f92565b611f09565b6102aa610561366004612fcb565b611f54565b6102aa610574366004612e6a565b612018565b6102df604051806040016040528060058152602001640302e352e360dc1b81525081565b6102aa6105ab366004613384565b612085565b60006001600160e01b031982166362526e6360e01b14806105e157506001600160e01b03198216636fa624af60e11b145b806105fc57506001600160e01b031982166308da864d60e31b145b8061061757506001600160e01b03198216638584880360e01b145b8061063257506301ffc9a760e01b6001600160e01b03198316145b92915050565b6000806060806106498787876120d8565b93509350935093505b93509350935093565b60006106668261233a565b61067257506000919050565b61067b826123d2565b6106f25760665460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa1580156106c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106ed91906133bd565b610632565b60655460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa15801561073c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061063291906133bd565b600061076a6116e6565b6001600160a01b0316146107c55760405162461bcd60e51b815260206004820152601e60248201527f50726f78795265616465723a204f574e45525f414c52454144595f534554000060448201526064015b60405180910390fd5b6107ce81612419565b50565b60606107e66107e0848661346a565b83612495565b90505b9392505050565b60606107fb826123d2565b1561088057606554604051631be5e7ed60e01b81526001600160a01b0390911690631be5e7ed9061083490879087908790600401613547565b600060405180830381865afa158015610851573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261087991908101906135b0565b90506107e9565b600061088b83612617565b90506001600160a01b0381163b1561091357604051631be5e7ed60e01b81526001600160a01b03821690631be5e7ed906108cd90889088908890600401613547565b600060405180830381865afa92505050801561090b57506040513d6000823e601f3d908101601f1916820160405261090891908101906135b0565b60015b156109135791505b509392505050565b60655460405163276fabb160e01b81526000916001600160a01b03169063276fabb19061094e908690869060040161366c565b602060405180830381865afa15801561096b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613680565b600061099a8261233a565b6109a657506000610632565b6109af826123d2565b610a2d5760665460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a04573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a289190613699565b6107e9565b60655460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610a7e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e99190613699565b600054610100900460ff1615808015610ac25750600054600160ff909116105b80610adc5750303b158015610adc575060005460ff166001145b610b3f5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107bc565b6000805460ff191660011790558015610b62576000805461ff0019166101001790555b606580546001600160a01b038086166001600160a01b0319928316179092556066805492851692909116919091179055610b9a61268a565b610ba261268a565b610baa6126b1565b8015610bf0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b610bfd6126e1565b828114610c4c5760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107bc565b60005b83811015610e4a5760006068868684818110610c6d57610c6d6136bb565b9050602002810190610c7f91906136d1565b604051610c8d929190613717565b908152604051908190036020019020541115610cf1576068858583818110610cb757610cb76136bb565b9050602002810190610cc991906136d1565b604051610cd7929190613717565b90815260200160405180910390206000610cf19190612c18565b60005b838383818110610d0657610d066136bb565b9050602002810190610d189190613727565b9050811015610ddc576068868684818110610d3557610d356136bb565b9050602002810190610d4791906136d1565b604051610d55929190613717565b9081526020016040518091039020848484818110610d7557610d756136bb565b9050602002810190610d879190613727565b83818110610d9757610d976136bb565b9050602002810190610da991906136d1565b82546001810184556000938452602090932090920191610dc991836137f8565b5080610dd4816138cd565b915050610cf4565b507fb2b57b54285120d17f49f2490a39ef791441fd0ad1e6b6818c23262bf91f061c858583818110610e1057610e106136bb565b9050602002810190610e2291906136d1565b604051610e309291906138e6565b60405180910390a180610e42816138cd565b915050610c4f565b5050505050565b60006106328261233a565b600061063282612740565b606080610e73836123d2565b15610ef95760655460405163672b9f8160e01b815260048101869052602481018590526001600160a01b039091169063672b9f8190604401600060405180830381865afa158015610ec8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610ef091908101906138fa565b91509150610f90565b6000610f0484612617565b90506001600160a01b0381163b15610f8e5760405163672b9f8160e01b815260048101869052602481018590526001600160a01b0382169063672b9f8190604401600060405180830381865afa925050508015610f8357506040513d6000823e601f3d908101601f19168201604052610f8091908101906138fa565b60015b15610f8e5790935091505b505b9250929050565b6065546040516370a0823160e01b81526001600160a01b03838116600483015260009283929116906370a0823190602401602060405180830381865afa158015610fe5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110099190613680565b6066549091506001600160a01b031615610632576066546040516370a0823160e01b81526001600160a01b038581166004830152909116906370a0823190602401602060405180830381865afa158015611067573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061108b9190613680565b6107e9908261395d565b61109d6126e1565b6110a76000612419565b565b606554604051633f1ba3cf60e11b81526001600160a01b0383811660048301526000921690637e37479e90602401602060405180830381865afa1580156110f4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190613680565b606060006067868660405161112e929190613717565b9081526020016040518091039020805461114790613770565b80601f016020809104026020016040519081016040528092919081815260200182805461117390613770565b80156111c05780601f10611195576101008083540402835291602001916111c0565b820191906000526020600020905b8154815290600101906020018083116111a357829003601f168201915b5050505050905080516000036111d657506114e8565b6000604051806040016040528060068152602001653a37b5b2b71760d11b81525090506000604051806040016040528060088152602001672e6164647265737360c01b81525090506000604051806040016040528060018152602001601760f91b815250905060008385838c8c868d8d8a60405160200161125f99989796959493929190613970565b6040516020818303038152906040529050600060688260405161128291906139f3565b9081526020016040518091039020805480602002602001604051908101604052809291908181526020016000905b8282101561135c5783829060005260206000200180546112cf90613770565b80601f01602080910402602001604051908101604052809291908181526020018280546112fb90613770565b80156113485780601f1061131d57610100808354040283529160200191611348565b820191906000526020600020905b81548152906001019060200180831161132b57829003601f168201915b5050505050815260200190600101906112b0565b50505050905080516003611370919061395d565b6001600160401b03811115611387576113876133da565b6040519080825280602002602001820160405280156113ba57816020015b60608152602001906001900390816113a55790505b50965081876000815181106113d1576113d16136bb565b602002602001018190525060005b815181101561143e578181815181106113fa576113fa6136bb565b602002602001015188826001611410919061395d565b81518110611420576114206136bb565b60200260200101819052508080611436906138cd565b9150506113df565b508486848d8d8860405160200161145a96959493929190613a0f565b6040516020818303038152906040528782516001611478919061395d565b81518110611488576114886136bb565b60200260200101819052508486856040516020016114a893929190613a72565b60405160208183030381529060405287825160026114c6919061395d565b815181106114d6576114d66136bb565b60200260200101819052505050505050505b949350505050565b6060808080846001600160401b0381111561150d5761150d6133da565b604051908082528060200260200182016040528015611536578160200160208202803683370190505b509350846001600160401b03811115611551576115516133da565b60405190808252806020026020018201604052801561157a578160200160208202803683370190505b509250846001600160401b03811115611595576115956133da565b6040519080825280602002602001820160405280156115c857816020015b60608152602001906001900390816115b35790505b509150846001600160401b038111156115e3576115e36133da565b60405190808252806020026020018201604052801561161657816020015b60608152602001906001900390816116015790505b50905060005b858110156116da57611647898989898581811061163b5761163b6136bb565b905060200201356120d8565b888581518110611659576116596136bb565b60200260200101888681518110611672576116726136bb565b6020026020010188878151811061168b5761168b6136bb565b602002602001018888815181106116a4576116a46136bb565b6020908102919091010193909352929091526001600160a01b0392831690915291169052806116d2816138cd565b91505061161c565b50945094509450949050565b7fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c8121905546001600160a01b031690565b6000806060611724868686612761565b9250925092505b93509350939050565b60608080836001600160401b03811115611750576117506133da565b604051908082528060200260200182016040528015611779578160200160208202803683370190505b509250836001600160401b03811115611794576117946133da565b6040519080825280602002602001820160405280156117bd578160200160208202803683370190505b509150836001600160401b038111156117d8576117d86133da565b60405190808252806020026020018201604052801561180b57816020015b60608152602001906001900390816117f65790505b50905060005b848110156118b25761183c8888888885818110611830576118306136bb565b90506020020135612761565b86848151811061184e5761184e6136bb565b60200260200101868581518110611867576118676136bb565b60200260200101868681518110611880576118806136bb565b60209081029190910101929092526001600160a01b0392831690915291169052806118aa816138cd565b915050611811565b509450945094915050565b606554604051634f558e7960e01b8152600481018390526000916001600160a01b031690634f558e7990602401602060405180830381865afa158015611907573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061192b9190613699565b156119415750506065546001600160a01b031690565b6066546001600160a01b03161580159061196d575060006119618361296c565b6001600160a01b031614155b156119835750506066546001600160a01b031690565b506000919050565b6060816001600160401b038111156119a5576119a56133da565b6040519080825280602002602001820160405280156119d857816020015b60608152602001906001900390816119c35790505b50905060005b82811015611a7857611a48308585848181106119fc576119fc6136bb565b9050602002810190611a0e91906136d1565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061299e92505050565b828281518110611a5a57611a5a6136bb565b60200260200101819052508080611a70906138cd565b9150506119de565b5092915050565b6000611a8a8261233a565b611a9657506000919050565b611a9f826123d2565b611ad45760665460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb906024016106ac565b60655460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb9060240161071f565b606080836001600160401b03811115611b2057611b206133da565b604051908082528060200260200182016040528015611b5357816020015b6060815260200190600190039081611b3e5790505b509150836001600160401b03811115611b6e57611b6e6133da565b604051908082528060200260200182016040528015611ba157816020015b6060815260200190600190039081611b8c5790505b509050611bad836123d2565b15611c345760655460405163170b5fa560e31b81526001600160a01b039091169063b85afd2890611be690889088908890600401613ab5565b600060405180830381865afa158015611c03573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611c2b9190810190613b72565b91509150611cd9565b6000611c3f84612617565b90506001600160a01b0381163b15158015611c5957508415155b15611cd75760405163170b5fa560e31b81526001600160a01b0382169063b85afd2890611c8e90899089908990600401613ab5565b600060405180830381865afa925050508015611ccc57506040513d6000823e601f3d908101601f19168201604052611cc99190810190613b72565b60015b15611cd75790935091505b505b935093915050565b6060611cf08686868686612a92565b979650505050505050565b606554604051632fafb1ad60e21b81526001600160a01b038381166004830152606092169063bebec6b4906024015b600060405180830381865afa158015611d47573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261063291908101906135b0565b6060611d7e8686868686612a92565b509695505050505050565b6060816001600160401b03811115611da357611da36133da565b604051908082528060200260200182016040528015611dcc578160200160208202803683370190505b50905060005b82811015611a7857611dfb848483818110611def57611def6136bb565b90506020020135612740565b828281518110611e0d57611e0d6136bb565b6001600160a01b039092166020928302919091019091015280611e2f816138cd565b915050611dd2565b6060611e428261233a565b611e5a57505060408051602081019091526000815290565b611e63826123d2565b611ed85760665460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401600060405180830381865afa158015611eb0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106ed91908101906135b0565b60655460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401611d2a565b60405162461bcd60e51b815260206004820152601f60248201527f50726f78795265616465723a20554e535550504f525445445f4d4554484f440060448201526000906064016107bc565b611f5c6126e1565b828114611fab5760405162461bcd60e51b815260206004820152601d60248201527f50726f78795265616465723a204c454e4754485f4e4f545f455155414c00000060448201526064016107bc565b60005b83811015610e4a57612006858583818110611fcb57611fcb6136bb565b9050602002810190611fdd91906136d1565b858585818110611fef57611fef6136bb565b905060200281019061200191906136d1565b612b3e565b80612010816138cd565b915050611fae565b6120206126e1565b6001600160a01b0381166107c55760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107bc565b61208d6126e1565b60005b83811015610e4a576120c68585838181106120ad576120ad6136bb565b90506020028101906120bf91906136d1565b8585612b3e565b806120d0816138cd565b915050612090565b600080606080856001600160401b038111156120f6576120f66133da565b60405190808252806020026020018201604052801561212957816020015b60608152602001906001900390816121145790505b509150856001600160401b03811115612144576121446133da565b60405190808252806020026020018201604052801561217757816020015b60608152602001906001900390816121625790505b509050612183856123d2565b156122845760655460405163b3f9e4cb60e01b8152600481018790526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa1580156121d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121f591906133bd565b935061220085612bad565b60655460405163170b5fa560e31b81529194506001600160a01b03169063b85afd2890612235908a908a908a90600401613ab5565b600060405180830381865afa158015612252573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261227a9190810190613b72565b9092509050610652565b61228d85612617565b93506122988561296c565b92506001600160a01b0384163b151580156122b4575060008251115b156106525760405163170b5fa560e31b81526001600160a01b0385169063b85afd28906122e9908a908a908a90600401613ab5565b600060405180830381865afa92505050801561232757506040513d6000823e601f3d908101601f191682016040526123249190810190613b72565b60015b1561065257909250905093509350935093565b6000612345826123d2565b6123645760006123548361296c565b6001600160a01b03161415610632565b606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e79906024015b602060405180830381865afa1580156123ae573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106329190613699565b6066546000906001600160a01b031615806106325750606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401612391565b60006124236116e6565b9050817fe1b9c5b9c6f25fc6c03fdb76829a7257b1cdb10ff4bc4f62e0a94358c812190580546001600160a01b0319166001600160a01b03928316179055604051838216918316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b606082516001600160401b038111156124b0576124b06133da565b6040519080825280602002602001820160405280156124e357816020015b60608152602001906001900390816124ce5790505b5090506124ef826123d2565b1561257257606554604051630dec660d60e11b81526001600160a01b0390911690631bd8cc1a906125269086908690600401613bcb565b600060405180830381865afa158015612543573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261256b9190810190613bed565b9050610632565b600061257d83612617565b90506001600160a01b0381163b15158015612599575060008451115b15611a7857604051630dec660d60e11b81526001600160a01b03821690631bd8cc1a906125cc9087908790600401613bcb565b600060405180830381865afa92505050801561260a57506040513d6000823e601f3d908101601f191682016040526126079190810190613bed565b60015b15611a7857949350505050565b60665460405163b3f9e4cb60e01b8152600481018390526000916001600160a01b03169063b3f9e4cb906024015b602060405180830381865afa92505050801561267e575060408051601f3d908101601f1916820190925261267b918101906133bd565b60015b61063257506000919050565b600054610100900460ff166110a75760405162461bcd60e51b81526004016107bc90613c21565b600054610100900460ff166126d85760405162461bcd60e51b81526004016107bc90613c21565b6110a733612419565b336126ea6116e6565b6001600160a01b0316146110a75760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107bc565b600061274b826123d2565b612758576106ed8261296c565b61063282612bad565b6000806060846001600160401b0381111561277e5761277e6133da565b6040519080825280602002602001820160405280156127b157816020015b606081526020019060019003908161279c5790505b5090506127bd846123d2565b156128bb5760655460405163b3f9e4cb60e01b8152600481018690526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561280b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061282f91906133bd565b925061283a84612bad565b606554604051630dec660d60e11b81529193506001600160a01b031690631bd8cc1a9061286f90899089908990600401613c6c565b600060405180830381865afa15801561288c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526128b49190810190613bed565b905061172b565b6128c484612617565b92506128cf8461296c565b91506001600160a01b0383163b151580156128e957508415155b1561172b57604051630dec660d60e11b81526001600160a01b03841690631bd8cc1a9061291e90899089908990600401613c6c565b600060405180830381865afa92505050801561295c57506040513d6000823e601f3d908101601f191682016040526129599190810190613bed565b60015b1561172b57905093509350939050565b6066546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401612645565b60606001600160a01b0383163b612a065760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b60648201526084016107bc565b600080846001600160a01b031684604051612a2191906139f3565b600060405180830381855af49150503d8060008114612a5c576040519150601f19603f3d011682016040523d82523d6000602084013e612a61565b606091505b5091509150612a898282604051806060016040528060278152602001613c8160279139612bdf565b95945050505050565b6060806000612aa388888888611118565b90506000612ab18286612495565b905060005b8151811015612b31576000828281518110612ad357612ad36136bb565b6020026020010151511115612b1f57828181518110612af457612af46136bb565b60200260200101519350818181518110612b1057612b106136bb565b60200260200101519450612b31565b80612b29816138cd565b915050612ab6565b5050509550959350505050565b818160678686604051612b52929190613717565b90815260200160405180910390209182612b6d9291906137f8565b507f0bf4b04a0f6d7d0800284e1abb0f58f795c0a25b9088634b6ab847be51001dec8484604051612b9f9291906138e6565b60405180910390a150505050565b6065546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401612645565b60608315612bee5750816107e9565b825115612bfe5782518084602001fd5b8160405162461bcd60e51b81526004016107bc9190612f12565b50805460008255906000526020600020908101906107ce91905b80821115612c4f576000612c468282612c53565b50600101612c32565b5090565b508054612c5f90613770565b6000825580601f10612c6f575050565b601f0160209004906000526020600020908101906107ce91905b80821115612c4f5760008155600101612c89565b600060208284031215612caf57600080fd5b81356001600160e01b0319811681146107e957600080fd5b60008083601f840112612cd957600080fd5b5081356001600160401b03811115612cf057600080fd5b6020830191508360208260051b8501011115610f9057600080fd5b600080600060408486031215612d2057600080fd5b83356001600160401b03811115612d3657600080fd5b612d4286828701612cc7565b909790965060209590950135949350505050565b60005b83811015612d71578181015183820152602001612d59565b50506000910152565b60008151808452612d92816020860160208601612d56565b601f01601f19169290920160200192915050565b600082825180855260208086019550808260051b84010181860160005b84811015612df157601f19868403018952612ddf838351612d7a565b98840198925090830190600101612dc3565b5090979650505050505050565b6001600160a01b03858116825284166020820152608060408201819052600090612e2a90830185612da6565b8281036060840152611cf08185612da6565b600060208284031215612e4e57600080fd5b5035919050565b6001600160a01b03811681146107ce57600080fd5b600060208284031215612e7c57600080fd5b81356107e981612e55565b6020815260006107e96020830184612da6565b60008083601f840112612eac57600080fd5b5081356001600160401b03811115612ec357600080fd5b602083019150836020828501011115610f9057600080fd5b600080600060408486031215612ef057600080fd5b83356001600160401b03811115612f0657600080fd5b612d4286828701612e9a565b6020815260006107e96020830184612d7a565b60008060208385031215612f3857600080fd5b82356001600160401b03811115612f4e57600080fd5b612f5a85828601612cc7565b90969095509350505050565b60008060408385031215612f7957600080fd5b8235612f8481612e55565b946020939093013593505050565b60008060408385031215612fa557600080fd5b8235612fb081612e55565b91506020830135612fc081612e55565b809150509250929050565b60008060008060408587031215612fe157600080fd5b84356001600160401b0380821115612ff857600080fd5b61300488838901612cc7565b9096509450602087013591508082111561301d57600080fd5b5061302a87828801612cc7565b95989497509550505050565b6000806040838503121561304957600080fd5b50508035926020909101359150565b60408152600061306b6040830185612d7a565b8281036020840152612a898185612d7a565b6000806000806040858703121561309357600080fd5b84356001600160401b03808211156130aa57600080fd5b6130b688838901612e9a565b909650945060208701359150808211156130cf57600080fd5b5061302a87828801612e9a565b600081518084526020808501945080840160005b838110156131155781516001600160a01b0316875295820195908201906001016130f0565b509495945050505050565b60008282518085526020808601955060058183821b8501018287016000805b868110156131ac57601f1988850381018c5283518051808752908801908887019080891b88018a01865b8281101561319557858a8303018452613183828651612d7a565b948c0194938c01939150600101613169565b509e8a019e9750505093870193505060010161313f565b50919998505050505050505050565b6080815260006131ce60808301876130dc565b82810360208401526131e081876130dc565b905082810360408401526131f48186613120565b90508281036060840152611cf08185613120565b6001600160a01b03848116825283166020820152606060408201819052600090612a8990830184612da6565b60608152600061324760608301866130dc565b828103602084015261325981866130dc565b9050828103604084015261326d8185613120565b9695505050505050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156132cc57603f198886030184526132ba858351612d7a565b9450928501929085019060010161329e565b5092979650505050505050565b6040815260006132ec6040830185612da6565b8281036020840152612a898185612da6565b60008060008060006060868803121561331657600080fd5b85356001600160401b038082111561332d57600080fd5b61333989838a01612e9a565b9097509550602088013591508082111561335257600080fd5b5061335f88828901612e9a565b96999598509660400135949350505050565b6020815260006107e960208301846130dc565b6000806000806040858703121561339a57600080fd5b84356001600160401b03808211156133b157600080fd5b6130b688838901612cc7565b6000602082840312156133cf57600080fd5b81516107e981612e55565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715613418576134186133da565b604052919050565b60006001600160401b03821115613439576134396133da565b5060051b60200190565b60006001600160401b0382111561345c5761345c6133da565b50601f01601f191660200190565b600061347d61347884613420565b6133f0565b80848252602080830192508560051b85013681111561349b57600080fd5b855b818110156135125780356001600160401b038111156134bc5760008081fd5b870136601f8201126134ce5760008081fd5b80356134dc61347882613443565b81815236868385010111156134f15760008081fd5b8186840187830137600091810186019190915286525093820193820161349d565b50919695505050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60408152600061355b60408301858761351e565b9050826020830152949350505050565b600082601f83011261357c57600080fd5b815161358a61347882613443565b81815284602083860101111561359f57600080fd5b6114e8826020830160208701612d56565b6000602082840312156135c257600080fd5b81516001600160401b038111156135d857600080fd5b6114e88482850161356b565b60008383855260208086019550808560051b8301018460005b87811015612df157848303601f19018952813536889003601e1901811261362357600080fd5b870184810190356001600160401b0381111561363e57600080fd5b80360382131561364d57600080fd5b61365885828461351e565b9a86019a94505050908301906001016135fd565b6020815260006107e66020830184866135e4565b60006020828403121561369257600080fd5b5051919050565b6000602082840312156136ab57600080fd5b815180151581146107e957600080fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e198436030181126136e857600080fd5b8301803591506001600160401b0382111561370257600080fd5b602001915036819003821315610f9057600080fd5b8183823760009101908152919050565b6000808335601e1984360301811261373e57600080fd5b8301803591506001600160401b0382111561375857600080fd5b6020019150600581901b3603821315610f9057600080fd5b600181811c9082168061378457607f821691505b6020821081036137a457634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115610bf057600081815260208120601f850160051c810160208610156137d15750805b601f850160051c820191505b818110156137f0578281556001016137dd565b505050505050565b6001600160401b0383111561380f5761380f6133da565b6138238361381d8354613770565b836137aa565b6000601f841160018114613857576000851561383f5750838201355b600019600387901b1c1916600186901b178355610e4a565b600083815260209020601f19861690835b828110156138885786850135825560209485019460019092019101613868565b50868210156138a55760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b634e487b7160e01b600052601160045260246000fd5b6000600182016138df576138df6138b7565b5060010190565b6020815260006107e660208301848661351e565b6000806040838503121561390d57600080fd5b82516001600160401b038082111561392457600080fd5b6139308683870161356b565b9350602085015191508082111561394657600080fd5b506139538582860161356b565b9150509250929050565b80820180821115610632576106326138b7565b60008a51613982818460208f01612d56565b8a5190830190613996818360208f01612d56565b8a519101906139a9818360208e01612d56565b0187898237600090880190815286516139c6818360208b01612d56565b0184868237600090850190815283516139e3818360208801612d56565b019b9a5050505050505050505050565b60008251613a05818460208701612d56565b9190910192915050565b60008751613a21818460208c01612d56565b875190830190613a35818360208c01612d56565b8751910190613a48818360208b01612d56565b018486823760009085019081528351613a65818360208801612d56565b0198975050505050505050565b60008451613a84818460208901612d56565b845190830190613a98818360208901612d56565b8451910190613aab818360208801612d56565b0195945050505050565b6040808252810183905260006001600160fb1b03841115613ad557600080fd5b8360051b808660608501376020830193909352500160600192915050565b600082601f830112613b0457600080fd5b81516020613b1461347883613420565b82815260059290921b84018101918181019086841115613b3357600080fd5b8286015b84811015611d7e5780516001600160401b03811115613b565760008081fd5b613b648986838b010161356b565b845250918301918301613b37565b60008060408385031215613b8557600080fd5b82516001600160401b0380821115613b9c57600080fd5b613ba886838701613af3565b93506020850151915080821115613bbe57600080fd5b5061395385828601613af3565b604081526000613bde6040830185612da6565b90508260208301529392505050565b600060208284031215613bff57600080fd5b81516001600160401b03811115613c1557600080fd5b6114e884828501613af3565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60408152600061355b6040830185876135e456fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a"; -const isSuperArgs = (xs) => xs.length > 1; -class ProxyReader__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(overrides) { - return super.getDeployTransaction(overrides || {}); - } - deploy(overrides) { - return super.deploy(overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.ProxyReader__factory = ProxyReader__factory; -ProxyReader__factory.bytecode = _bytecode; -ProxyReader__factory.abi = _abi; diff --git a/dist/types/factories/contracts/RecordStorage__factory.d.ts b/dist/types/factories/contracts/RecordStorage__factory.d.ts deleted file mode 100644 index 3d38adcf..00000000 --- a/dist/types/factories/contracts/RecordStorage__factory.d.ts +++ /dev/null @@ -1,286 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { RecordStorage, RecordStorageInterface } from "../../contracts/RecordStorage"; -export declare class RecordStorage__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly indexed: true; - readonly internalType: "string"; - readonly name: "keyIndex"; - readonly type: "string"; - }, { - readonly indexed: false; - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }]; - readonly name: "NewKey"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "ResetRecords"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly indexed: true; - readonly internalType: "string"; - readonly name: "keyIndex"; - readonly type: "string"; - }, { - readonly indexed: true; - readonly internalType: "string"; - readonly name: "valueIndex"; - readonly type: "string"; - }, { - readonly indexed: false; - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }, { - readonly indexed: false; - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }]; - readonly name: "Set"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }]; - readonly name: "addKey"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "get"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "keyHash"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getByHash"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }, { - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "keyHash"; - readonly type: "uint256"; - }]; - readonly name: "getKey"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256[]"; - readonly name: "hashes"; - readonly type: "uint256[]"; - }]; - readonly name: "getKeys"; - readonly outputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getMany"; - readonly outputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256[]"; - readonly name: "keyHashes"; - readonly type: "uint256[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getManyByHash"; - readonly outputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "reconfigure"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "reset"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }, { - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "set"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "keyHash"; - readonly type: "uint256"; - }, { - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "setByHash"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "setMany"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256[]"; - readonly name: "keyHashes"; - readonly type: "uint256[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "setManyByHash"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): RecordStorageInterface; - static connect(address: string, runner?: ContractRunner | null): RecordStorage; -} -//# sourceMappingURL=RecordStorage__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/RecordStorage__factory.d.ts.map b/dist/types/factories/contracts/RecordStorage__factory.d.ts.map deleted file mode 100644 index 4450d0fd..00000000 --- a/dist/types/factories/contracts/RecordStorage__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"RecordStorage__factory.d.ts","sourceRoot":"","sources":["../../../../types/factories/contracts/RecordStorage__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,aAAa,EACb,sBAAsB,EACvB,MAAM,+BAA+B,CAAC;AA6WvC,qBAAa,sBAAsB;IACjC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,sBAAsB;IAGhD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,aAAa;CAGjB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/RecordStorage__factory.js b/dist/types/factories/contracts/RecordStorage__factory.js deleted file mode 100644 index 13977f97..00000000 --- a/dist/types/factories/contracts/RecordStorage__factory.js +++ /dev/null @@ -1,376 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.RecordStorage__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - indexed: true, - internalType: "string", - name: "keyIndex", - type: "string", - }, - { - indexed: false, - internalType: "string", - name: "key", - type: "string", - }, - ], - name: "NewKey", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "ResetRecords", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - indexed: true, - internalType: "string", - name: "keyIndex", - type: "string", - }, - { - indexed: true, - internalType: "string", - name: "valueIndex", - type: "string", - }, - { - indexed: false, - internalType: "string", - name: "key", - type: "string", - }, - { - indexed: false, - internalType: "string", - name: "value", - type: "string", - }, - ], - name: "Set", - type: "event", - }, - { - inputs: [ - { - internalType: "string", - name: "key", - type: "string", - }, - ], - name: "addKey", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "key", - type: "string", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "get", - outputs: [ - { - internalType: "string", - name: "value", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "keyHash", - type: "uint256", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getByHash", - outputs: [ - { - internalType: "string", - name: "key", - type: "string", - }, - { - internalType: "string", - name: "value", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "keyHash", - type: "uint256", - }, - ], - name: "getKey", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256[]", - name: "hashes", - type: "uint256[]", - }, - ], - name: "getKeys", - outputs: [ - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getMany", - outputs: [ - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256[]", - name: "keyHashes", - type: "uint256[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getManyByHash", - outputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "reconfigure", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "reset", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "key", - type: "string", - }, - { - internalType: "string", - name: "value", - type: "string", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "set", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "keyHash", - type: "uint256", - }, - { - internalType: "string", - name: "value", - type: "string", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "setByHash", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "setMany", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256[]", - name: "keyHashes", - type: "uint256[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "setManyByHash", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -class RecordStorage__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.RecordStorage__factory = RecordStorage__factory; -RecordStorage__factory.abi = _abi; diff --git a/dist/types/factories/contracts/RootRegistry__factory.d.ts b/dist/types/factories/contracts/RootRegistry__factory.d.ts deleted file mode 100644 index 6d4424de..00000000 --- a/dist/types/factories/contracts/RootRegistry__factory.d.ts +++ /dev/null @@ -1,350 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { RootRegistry, RootRegistryInterface } from "../../contracts/RootRegistry"; -export declare class RootRegistry__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "approved"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Approval"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "ApprovalForAll"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "uint8"; - readonly name: "version"; - readonly type: "uint8"; - }]; - readonly name: "Initialized"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Transfer"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "approve"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "balanceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "depositToPolygon"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "exists"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getApproved"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly name: "isApprovedForAll"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "user"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "mint"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "user"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "metaData"; - readonly type: "bytes"; - }]; - readonly name: "mint"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "name"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "ownerOf"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "setApprovalForAll"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "symbol"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "tokenURI"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "transferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes"; - readonly name: "inputData"; - readonly type: "bytes"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }]; - readonly name: "withdrawFromPolygon"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): RootRegistryInterface; - static connect(address: string, runner?: ContractRunner | null): RootRegistry; -} -//# sourceMappingURL=RootRegistry__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/RootRegistry__factory.d.ts.map b/dist/types/factories/contracts/RootRegistry__factory.d.ts.map deleted file mode 100644 index ba924996..00000000 --- a/dist/types/factories/contracts/RootRegistry__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"RootRegistry__factory.d.ts","sourceRoot":"","sources":["../../../../types/factories/contracts/RootRegistry__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,YAAY,EACZ,qBAAqB,EACtB,MAAM,8BAA8B,CAAC;AAictC,qBAAa,qBAAqB;IAChC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,qBAAqB;IAG/C,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,YAAY;CAGhB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/RootRegistry__factory.js b/dist/types/factories/contracts/RootRegistry__factory.js deleted file mode 100644 index 8c624995..00000000 --- a/dist/types/factories/contracts/RootRegistry__factory.js +++ /dev/null @@ -1,460 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.RootRegistry__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "approved", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Approval", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: false, - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "ApprovalForAll", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint8", - name: "version", - type: "uint8", - }, - ], - name: "Initialized", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Transfer", - type: "event", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "approve", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "depositToPolygon", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "exists", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getApproved", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - name: "isApprovedForAll", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "user", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "mint", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "user", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "metaData", - type: "bytes", - }, - ], - name: "mint", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "name", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "ownerOf", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "safeTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "safeTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "setApprovalForAll", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "symbol", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "tokenURI", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "transferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes", - name: "inputData", - type: "bytes", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - ], - name: "withdrawFromPolygon", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -class RootRegistry__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.RootRegistry__factory = RootRegistry__factory; -RootRegistry__factory.abi = _abi; diff --git a/dist/types/factories/contracts/UNSOperator__factory.d.ts b/dist/types/factories/contracts/UNSOperator__factory.d.ts deleted file mode 100644 index e745bbed..00000000 --- a/dist/types/factories/contracts/UNSOperator__factory.d.ts +++ /dev/null @@ -1,100 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../common"; -import type { UNSOperator, UNSOperatorInterface } from "../../contracts/UNSOperator"; -declare type UNSOperatorConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class UNSOperator__factory extends ContractFactory { - constructor(...args: UNSOperatorConstructorParams); - getDeployTransaction(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): UNSOperator__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b50610454806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c8063715018a6146100675780638129fc1c146100715780638da5cb5b14610079578063a3f4df7e14610099578063f2fde38b146100d2578063ffa1ad74146100e5575b600080fd5b61006f610109565b005b61006f61011d565b6033546040516001600160a01b0390911681526020015b60405180910390f35b6100c56040518060400160405280600d81526020016c2aa7299d1027b832b930ba37b960991b81525081565b60405161009091906103c9565b61006f6100e0366004610417565b610233565b6100c5604051806040016040528060058152602001640302e312e360dc1b81525081565b6101116102a9565b61011b6000610303565b565b600054610100900460ff161580801561013d5750600054600160ff909116105b806101575750303b158015610157575060005460ff166001145b6101bf5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff1916600117905580156101e2576000805461ff0019166101001790555b6101ea610355565b8015610230576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50565b61023b6102a9565b6001600160a01b0381166102a05760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016101b6565b61023081610303565b6033546001600160a01b0316331461011b5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016101b6565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600054610100900460ff166103c05760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016101b6565b61011b33610303565b600060208083528351808285015260005b818110156103f6578581018301518582016040015282016103da565b506000604082860101526040601f19601f8301168501019250505092915050565b60006020828403121561042957600080fd5b81356001600160a01b038116811461044057600080fd5b939250505056fea164736f6c6343000811000a"; - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "uint8"; - readonly name: "version"; - readonly type: "uint8"; - }]; - readonly name: "Initialized"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "previousOwner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "newOwner"; - readonly type: "address"; - }]; - readonly name: "OwnershipTransferred"; - readonly type: "event"; - }, { - readonly inputs: readonly []; - readonly name: "NAME"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "VERSION"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "initialize"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "owner"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "renounceOwnership"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "newOwner"; - readonly type: "address"; - }]; - readonly name: "transferOwnership"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): UNSOperatorInterface; - static connect(address: string, runner?: ContractRunner | null): UNSOperator; -} -export {}; -//# sourceMappingURL=UNSOperator__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/UNSOperator__factory.d.ts.map b/dist/types/factories/contracts/UNSOperator__factory.d.ts.map deleted file mode 100644 index 205e51fd..00000000 --- a/dist/types/factories/contracts/UNSOperator__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"UNSOperator__factory.d.ts","sourceRoot":"","sources":["../../../../types/factories/contracts/UNSOperator__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACxD,OAAO,KAAK,EACV,WAAW,EACX,oBAAoB,EACrB,MAAM,6BAA6B,CAAC;AA0GrC,aAAK,4BAA4B,GAC7B,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,oBAAqB,SAAQ,eAAe;gBAC3C,GAAG,IAAI,EAAE,4BAA4B;IAQxC,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,oBAAoB;IAIrE,MAAM,CAAC,QAAQ,CAAC,QAAQ,gvEAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,oBAAoB;IAG9C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,WAAW;CAG7E"} \ No newline at end of file diff --git a/dist/types/factories/contracts/UNSOperator__factory.js b/dist/types/factories/contracts/UNSOperator__factory.js deleted file mode 100644 index 5a0ac96a..00000000 --- a/dist/types/factories/contracts/UNSOperator__factory.js +++ /dev/null @@ -1,134 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.UNSOperator__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint8", - name: "version", - type: "uint8", - }, - ], - name: "Initialized", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "previousOwner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnershipTransferred", - type: "event", - }, - { - inputs: [], - name: "NAME", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "VERSION", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "initialize", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "renounceOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "transferOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -const _bytecode = "0x608060405234801561001057600080fd5b50610454806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c8063715018a6146100675780638129fc1c146100715780638da5cb5b14610079578063a3f4df7e14610099578063f2fde38b146100d2578063ffa1ad74146100e5575b600080fd5b61006f610109565b005b61006f61011d565b6033546040516001600160a01b0390911681526020015b60405180910390f35b6100c56040518060400160405280600d81526020016c2aa7299d1027b832b930ba37b960991b81525081565b60405161009091906103c9565b61006f6100e0366004610417565b610233565b6100c5604051806040016040528060058152602001640302e312e360dc1b81525081565b6101116102a9565b61011b6000610303565b565b600054610100900460ff161580801561013d5750600054600160ff909116105b806101575750303b158015610157575060005460ff166001145b6101bf5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff1916600117905580156101e2576000805461ff0019166101001790555b6101ea610355565b8015610230576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50565b61023b6102a9565b6001600160a01b0381166102a05760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016101b6565b61023081610303565b6033546001600160a01b0316331461011b5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016101b6565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600054610100900460ff166103c05760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016101b6565b61011b33610303565b600060208083528351808285015260005b818110156103f6578581018301518582016040015282016103da565b506000604082860101526040601f19601f8301168501019250505092915050565b60006020828403121561042957600080fd5b81356001600160a01b038116811461044057600080fd5b939250505056fea164736f6c6343000811000a"; -const isSuperArgs = (xs) => xs.length > 1; -class UNSOperator__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(overrides) { - return super.getDeployTransaction(overrides || {}); - } - deploy(overrides) { - return super.deploy(overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.UNSOperator__factory = UNSOperator__factory; -UNSOperator__factory.bytecode = _bytecode; -UNSOperator__factory.abi = _abi; diff --git a/dist/types/factories/contracts/UNSRegistry__factory.d.ts b/dist/types/factories/contracts/UNSRegistry__factory.d.ts deleted file mode 100644 index ce7a7ab2..00000000 --- a/dist/types/factories/contracts/UNSRegistry__factory.d.ts +++ /dev/null @@ -1,1203 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../common"; -import type { UNSRegistry, UNSRegistryInterface } from "../../contracts/UNSRegistry"; -declare type UNSRegistryConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class UNSRegistry__factory extends ContractFactory { - constructor(...args: UNSRegistryConstructorParams); - getDeployTransaction(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): UNSRegistry__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b506152e6806100206000396000f3fe608060405234801561001057600080fd5b50600436106103af5760003560e01c80637e37479e116101f4578063ba5d40b71161011a578063e985e9c5116100ad578063f5c1f76e1161007c578063f5c1f76e146108d8578063f7df5c60146108eb578063f8c8765e146108fe578063ffa1ad741461091157600080fd5b8063e985e9c51461087a578063ebf0c717146108b6578063ec129eea146108bd578063f25eb5c1146108d057600080fd5b8063c87b56dd116100e9578063c87b56dd1461082e578063ce92b33e14610841578063cf2c52cb14610854578063d9548e531461086757600080fd5b8063ba5d40b7146107b3578063baef73e9146107c6578063bb5b27e114610808578063bebec6b41461081b57600080fd5b8063a22cb46511610192578063ac9650d811610161578063ac9650d81461074c578063b3f9e4cb1461076c578063b85afd281461077f578063b88d4fde146107a057600080fd5b8063a22cb465146106e7578063a3f4df7e146106fa578063a424740014610726578063ab3b87fe1461073957600080fd5b80639508b1c4116101ce5780639508b1c4146106b15780639559c0bd146106c457806395d89b41146106cc57806399e0dd7c146106d457600080fd5b80637e37479e146106785780637eee288d1461068b57806394d008ef1461069e57600080fd5b806342842e0e116102d95780635096023911610277578063663f7b2a11610246578063663f7b2a14610610578063672b9f81146106235780636ccbae5f1461064457806370a082311461066557600080fd5b806350960239146105bb578063572b6c05146105ce5780636352211e146105ea578063638e5c78146105fd57600080fd5b806347c81699116102b357806347c816991461056f5780634a72584d146105825780634f558e791461059557806350382c1a146105a857600080fd5b806342842e0e1461053657806342966c6814610549578063430c20811461055c57600080fd5b80631bf7e13e1161035157806327f189751161032057806327f18975146104ea578063310bd74b146104fd5780633f72ec6e1461051057806340c10f191461052357600080fd5b80631bf7e13e146104905780631f71be06146104a357806323b872dd146104b6578063276fabb1146104c957600080fd5b8063095ea7b31161038d578063095ea7b31461041c578063150b7a02146104315780631bd8cc1a1461045d5780631be5e7ed1461047d57600080fd5b806301ffc9a7146103b457806306fdde03146103dc578063081812fc146103f1575b600080fd5b6103c76103c2366004613f0b565b610935565b60405190151581526020015b60405180910390f35b6103e4610946565b6040516103d39190613f78565b6104046103ff366004613f8b565b6109d8565b6040516001600160a01b0390911681526020016103d3565b61042f61042a366004613fb9565b6109ff565b005b61044461043f366004614026565b610a18565b6040516001600160e01b031990911681526020016103d3565b61047061046b3660046140dc565b610b72565b6040516103d3919061417f565b6103e461048b366004614192565b610c68565b6103e461049e3660046141c9565b610cb3565b61042f6104b1366004614249565b610dbe565b61042f6104c4366004614305565b610e54565b6104dc6104d7366004614346565b610ea7565b6040519081526020016103d3565b61042f6104f8366004614387565b610eb6565b61042f61050b366004613f8b565b610efe565b61042f61051e3660046143fa565b610f39565b61042f610531366004613fb9565b61103b565b61042f610544366004614305565b611088565b61042f610557366004613f8b565b6110a3565b6103c761056a366004613fb9565b6110e7565b61042f61057d366004614424565b6110f3565b61042f610590366004614485565b611132565b6103c76105a3366004613f8b565b611178565b61042f6105b636600461458c565b611197565b61042f6105c93660046145c0565b6111cd565b6103c76105dc3660046145c0565b6001600160a01b0316301490565b6104046105f8366004613f8b565b61122d565b61042f61060b366004613f8b565b61124a565b61042f61061e366004614678565b611295565b6106366106313660046146c0565b611336565b6040516103d39291906146e2565b6104dc610652366004613f8b565b6000908152610100602052604090205490565b6104dc6106733660046145c0565b61134e565b6104dc6106863660046145c0565b6113d4565b61042f610699366004613fb9565b611405565b61042f6106ac366004614707565b61145c565b61042f6106bf366004614762565b6114ab565b6104dc601481565b6103e4611532565b61042f6106e2366004614805565b611541565b61042f6106f536600461483a565b6115c8565b6103e46040518060400160405280600d81526020016c554e533a20526567697374727960981b81525081565b6103c76107343660046141c9565b6115da565b61042f610747366004613fb9565b611625565b61075f61075a366004614346565b61166a565b6040516103d39190614866565b61040461077a366004613f8b565b611746565b61079261078d3660046140dc565b611770565b6040516103d39291906148c8565b61042f6107ae3660046148ed565b611892565b61042f6107c1366004614249565b6118d9565b6107f06107d4366004613f8b565b600090815261013960205260409020546001600160401b031690565b6040516001600160401b0390911681526020016103d3565b6103e4610816366004613f8b565b611962565b6103e46108293660046145c0565b611a04565b6103e461083c366004613f8b565b611ace565b61042f61084f366004614387565b611b34565b61042f610862366004614958565b611b73565b6103c7610875366004613f8b565b611c42565b6103c761088836600461499f565b6001600160a01b039182166000908152606a6020908152604080832093909416825291909152205460ff1690565b60006104dc565b61042f6108cb366004614387565b611c85565b61042f611cc4565b6104706108e6366004614346565b611d4b565b61042f6108f93660046149d8565b611dfe565b61042f61090c366004614a0a565b611e8f565b6103e460405180604001604052806005815260200164302e392e3160d81b81525081565b600061094082612065565b92915050565b60606065805461095590614a66565b80601f016020809104026020016040519081016040528092919081815260200182805461098190614a66565b80156109ce5780601f106109a3576101008083540402835291602001916109ce565b820191906000526020600020905b8154815290600101906020018083116109b157829003601f168201915b5050505050905090565b60006109e3826120b5565b506000908152606960205260409020546001600160a01b031690565b80610a0981612114565b610a13838361217a565b505050565b60007f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378546001600160a01b0316610a4d61229c565b6001600160a01b031603610b0e57610a6361229c565b6001600160a01b03166342966c68856040518263ffffffff1660e01b8152600401610a9091815260200190565b600060405180830381600087803b158015610aaa57600080fd5b505af1158015610abe573d6000803e3d6000fd5b505050821580159150610ad85750610ad882840184614a9a565b15610af657610ae730856122ab565b610af185856123f9565b610b00565b610b0085856122ab565b50630a85bd0160e11b610b69565b60405162461bcd60e51b815260206004820152602560248201527f52656769737472793a204552433732315f524543454956494e475f50524f4849604482015264109255115160da1b60648201526084015b60405180910390fd5b95945050505050565b6060826001600160401b03811115610b8c57610b8c6144d7565b604051908082528060200260200182016040528015610bbf57816020015b6060815260200190600190039081610baa5790505b50905060005b83811015610c6057610c30858583818110610be257610be2614ab5565b9050602002810190610bf49190614acb565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508792506124a4915050565b828281518110610c4257610c42614ab5565b60200260200101819052508080610c5890614b27565b915050610bc5565b509392505050565b6060610cab84848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508692506124a4915050565b949350505050565b606060005a9050610cc58585856115da565b610d215760405162461bcd60e51b815260206004820152602760248201527f554e535265676973747279466f727761726465723a205349474e41545552455f6044820152661253959053125160ca1b6064820152608401610b60565b610db3610d3160208701876145c0565b30604088013584610d4560608b018b614acb565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284376000920191909152506124d992505050565b9150505b9392505050565b610134546001600160a01b0316610dd361229c565b6001600160a01b031614610df95760405162461bcd60e51b8152600401610b6090614b40565b6000610e0d610e08888a614b87565b6125ba565b509050610e1a8982611405565b610e278686868685612612565b8115610e4957610e498982610e44610e3f8b8d614b87565b612680565b612701565b505050505050505050565b80610e66610e6061229c565b82612743565b610e825760405162461bcd60e51b8152600401610b6090614b94565b81610e8c81612114565b610e95836127d4565b610ea0858585612841565b5050505050565b6000610c60610e088385614b87565b80610ec2610e6061229c565b610ede5760405162461bcd60e51b8152600401610b6090614b94565b81610ee881612114565b610ef587878787876129e8565b50505050505050565b80610f0a610e6061229c565b610f265760405162461bcd60e51b8152600401610b6090614b94565b81610f3081612114565b610a13836127d4565b610134546001600160a01b0316610f4e61229c565b6001600160a01b031614610f745760405162461bcd60e51b8152600401610b6090614b40565b610f7d816120b5565b42826001600160401b031611610fd55760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a204558504952595f494e5f5041535400000000000000006044820152606401610b60565b60008181526101396020908152604091829020805467ffffffffffffffff19166001600160401b038616908117909155915191825282917f93feabb03ab84f47fc85bf0c298103fca21d8c8bc376eae0c1e1c56b9d4f7789910160405180910390a25050565b611043612a4b565b6001600160a01b031661105461229c565b6001600160a01b03161461107a5760405162461bcd60e51b8152600401610b6090614bdd565b61108482826122ab565b5050565b610a1383838360405180602001604052806000815250611892565b806110af610e6061229c565b6110cb5760405162461bcd60e51b8152600401610b6090614b94565b816110d581612114565b6110de836127d4565b610a1383612b4c565b6000610db78383612743565b806110ff610e6061229c565b61111b5760405162461bcd60e51b8152600401610b6090614b94565b8161112581612114565b610ef58787878787612bf3565b8061113e610e6061229c565b61115a5760405162461bcd60e51b8152600401610b6090614b94565b8161116481612114565b61117086868686612cd2565b505050505050565b6000818152606760205260408120546001600160a01b03161515610940565b6111ca816040516020016111ab9190614c1f565b6040516020818303038152906040528051906020012060001c82612d72565b50565b610134546001600160a01b03166111e261229c565b6001600160a01b0316146112085760405162461bcd60e51b8152600401610b6090614b40565b6001600160a01b0316600090815261013660205260409020805460ff19166001179055565b600061123882611c42565b6112455761094082612d97565b919050565b80611256610e6061229c565b6112725760405162461bcd60e51b8152600401610b6090614b94565b61128461127d61229c565b3084612841565b61108461128f61229c565b836123f9565b60006112a0826125ba565b5090506112ab61229c565b6001600160a01b03166112bd8261122d565b6001600160a01b0316146113135760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b60565b61131c81612114565b61108461132761229c565b8261133185612680565b612df7565b6060806113438484612e7e565b909590945092505050565b60006001600160a01b0382166113b85760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b6064820152608401610b60565b506001600160a01b031660009081526068602052604090205490565b6001600160a01b038116600090815261013560205260408120546113f781612e9f565b6113ff578091505b50919050565b610134546001600160a01b031661141a61229c565b6001600160a01b0316146114405760405162461bcd60e51b8152600401610b6090614b40565b611449816127d4565b61108461145582612d97565b8383612841565b611464612a4b565b6001600160a01b031661147561229c565b6001600160a01b03161461149b5760405162461bcd60e51b8152600401610b6090614bdd565b6114a584846122ab565b50505050565b6114b58787612ee9565b6114bd61229c565b6001600160a01b03166114cf8661122d565b6001600160a01b0316146115255760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b60565b610ef58484848489612612565b60606066805461095590614a66565b610134546001600160a01b031661155661229c565b6001600160a01b03161461157c5760405162461bcd60e51b8152600401610b6090614b40565b61013361158a828483614c81565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b82826040516115bc929190614d69565b60405180910390a15050565b6110846115d361229c565b8383612f58565b6000610cab6115e885614d7d565b3085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061302692505050565b80611631610e6061229c565b61164d5760405162461bcd60e51b8152600401610b6090614b94565b8161165781612114565b6114a561166384612d97565b8585612841565b606060006116788385614e07565b905030330361173d5760005b8381101561173b5761170b61169761229c565b61169f61316f565b8787858181106116b1576116b1614ab5565b90506020028101906116c39190614acb565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250613183915050565b82828151811061171d5761171d614ab5565b6020026020010181905250808061173390614b27565b915050611684565b505b610cab816131b3565b6000818152606760205260408120546001600160a01b0316611769576000610940565b3092915050565b606080836001600160401b0381111561178b5761178b6144d7565b6040519080825280602002602001820160405280156117be57816020015b60608152602001906001900390816117a95790505b509150836001600160401b038111156117d9576117d96144d7565b60405190808252806020026020018201604052801561180c57816020015b60608152602001906001900390816117f75790505b50905060005b848110156118895761183c86868381811061182f5761182f614ab5565b9050602002013585612e7e565b84838151811061184e5761184e614ab5565b6020026020010184848151811061186757611867614ab5565b602002602001018290528290525050808061188190614b27565b915050611812565b50935093915050565b8161189e610e6061229c565b6118ba5760405162461bcd60e51b8152600401610b6090614b94565b826118c481612114565b6118cd846127d4565b611170868686866132de565b610134546001600160a01b03166118ee61229c565b6001600160a01b0316146119145760405162461bcd60e51b8152600401610b6090614b40565b600080611924610e08898b614b87565b9150915061193181613311565b6119498a83611943610e3f8c8e614b87565b86613371565b6119568787878786612612565b50505050505050505050565b600081815260c96020526040902080546060919061197f90614a66565b80601f01602080910402602001604051908101604052809291908181526020018280546119ab90614a66565b80156119f85780601f106119cd576101008083540402835291602001916119f8565b820191906000526020600020905b8154815290600101906020018083116119db57829003601f168201915b50505050509050919050565b6001600160a01b03811660009081526101356020526040902054606090611a2a81612e9f565b6113ff576000818152610138602052604090208054611a4890614a66565b80601f0160208091040260200160405190810160405280929190818152602001828054611a7490614a66565b8015611ac15780601f10611a9657610100808354040283529160200191611ac1565b820191906000526020600020905b815481529060010190602001808311611aa457829003601f168201915b5050505050915050919050565b6060611ad9826120b5565b6000611ae36133c4565b90506000815111611b035760405180602001604052806000815250610db7565b80611b0d846133d4565b604051602001611b1e929190614e7a565b6040516020818303038152906040529392505050565b80611b40610e6061229c565b611b5c5760405162461bcd60e51b8152600401610b6090614b94565b81611b6681612114565b610ef58787878787612612565b7f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87546001600160a01b0316611ba661229c565b6001600160a01b031614611bcc5760405162461bcd60e51b8152600401610b6090614bdd565b6020819003611bef576000611be382840184613f8b565b90506114a584826122ab565b6000611bfd82840184614ea9565b805190915060005b8181101561117057611c3086848381518110611c2357611c23614ab5565b60200260200101516122ab565b80611c3a81614b27565b915050611c05565b600081815261013960205260408120546001600160401b03161580159061094057505060009081526101396020526040902054426001600160401b039091161090565b80611c91610e6061229c565b611cad5760405162461bcd60e51b8152600401610b6090614b94565b81611cb781612114565b610ef587878787876134d4565b6000611cce61229c565b6001600160a01b0381166000908152610135602052604081205491925003611d425760405162461bcd60e51b815260206004820152602160248201527f52656769737472793a20524556455253455f5245434f52445f49535f454d50546044820152605960f81b6064820152608401610b60565b6111ca816134ea565b6060816001600160401b03811115611d6557611d656144d7565b604051908082528060200260200182016040528015611d9857816020015b6060815260200190600190039081611d835790505b50905060005b82811015611df757611dc7848483818110611dbb57611dbb614ab5565b90506020020135611962565b828281518110611dd957611dd9614ab5565b60200260200101819052508080611def90614b27565b915050611d9e565b5092915050565b610134546001600160a01b0316611e1361229c565b6001600160a01b031614611e395760405162461bcd60e51b8152600401610b6090614b40565b61013454611e50906001600160a01b0316846122ab565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c39528383604051611e82929190614d69565b60405180910390a2505050565b600054610100900460ff1615808015611eaf5750600054600160ff909116105b80611ec95750303b158015611ec9575060005460ff166001145b611f2c5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610b60565b6000805460ff191660011790558015611f4f576000805461ff0019166101001790555b61013480546001600160a01b0319166001600160a01b038716179055837f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec9237880546001600160a01b0319166001600160a01b03929092169190911790556040805180820182526013815272556e73746f707061626c6520446f6d61696e7360681b60208083019190915282518084019093526002835261155160f21b90830152611ff79161352f565b611fff61356f565b61200761356f565b61201083613598565b612019826135c8565b8015610ea0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b60006001600160e01b031982166380ac58cd60e01b148061209657506001600160e01b03198216635b5e139f60e01b145b8061094057506301ffc9a760e01b6001600160e01b0319831614610940565b6000818152606760205260409020546001600160a01b03166111ca5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b60565b3033036121715761212361316f565b81146111ca5760405162461bcd60e51b815260206004820152601760248201527f52656769737472793a20544f4b454e5f494e56414c49440000000000000000006044820152606401610b60565b6111ca816135f8565b600061218582612d97565b9050806001600160a01b0316836001600160a01b0316036121f25760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b6064820152608401610b60565b806001600160a01b031661220461229c565b6001600160a01b0316148061222057506122208161088861229c565b6122925760405162461bcd60e51b815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c00006064820152608401610b60565b610a138383613626565b60006122a6613694565b905090565b6001600160a01b0382166123015760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610b60565b6000818152606760205260409020546001600160a01b0316156123665760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610b60565b612372600083836136af565b6001600160a01b038216600090815260686020526040812080546001929061239b908490614f39565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b03861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b6000612403612a4b565b905061240f8183613626565b60008051602061529383398151915254604080516020808201869052825180830390910181528183019283905263e3dec8fb60e01b9092526001600160a01b0390921691829163e3dec8fb9161246c918891309190604401614f4c565b600060405180830381600087803b15801561248657600080fd5b505af115801561249a573d6000803e3d6000fd5b5050505050505050565b6060610db7836040516020016124ba9190614c1f565b6040516020818303038152906040528051906020012060001c8361378b565b60606124e4856135f8565b600080876001600160a01b0316866124fe8b8a8989613183565b60405161250b9190614c1f565b60006040518083038160008787f1925050503d8060008114612549576040519150601f19603f3d011682016040523d82523d6000602084013e61254e565b606091505b50909250905061255f603f87614f8e565b5a1161256d5761256d614fa2565b6125ad82826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061386d565b9998505050505050505050565b805160009081905b801561260c578291506125f882856125db600185614fb8565b815181106125eb576125eb614ab5565b60200260200101516138a6565b92508061260481614fcb565b9150506125c2565b50915091565b60005b848110156111705761266e86868381811061263257612632614ab5565b90506020028101906126449190614acb565b86868581811061265657612656614ab5565b90506020028101906126689190614acb565b86612bf3565b8061267881614b27565b915050612615565b606060008260008151811061269757612697614ab5565b602002602001015190506000600190505b8351811015611df757818482815181106126c4576126c4614ab5565b60200260200101516040516020016126dd929190614fe2565b604051602081830303815290604052915080806126f990614b27565b9150506126a8565b61dead6001600160a01b0384161480159061273357506001600160a01b03831660009081526101356020526040902054155b15610a1357610a13838383612df7565b60008061274f8361122d565b90506001600160a01b03811615801590610cab5750806001600160a01b0316846001600160a01b031614806127a957506001600160a01b038082166000908152606a602090815260408083209388168352929052205460ff165b80610cab5750836001600160a01b03166127c2846109d8565b6001600160a01b031614949350505050565b6127dd81613952565b6040516020016127ef91815260200190565b60408051601f198184030181528282528051602091820120600085815260cb9092529181209190915582917f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9190a250565b826001600160a01b031661285482612d97565b6001600160a01b0316146128b85760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b6064820152608401610b60565b6001600160a01b03821661291a5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610b60565b6129258383836136af565b612930600082613626565b6001600160a01b0383166000908152606860205260408120805460019290612959908490614fb8565b90915550506001600160a01b0382166000908152606860205260408120805460019290612987908490614f39565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60005b8481101561117057612a39868683818110612a0857612a08614ab5565b90506020020135858584818110612a2157612a21614ab5565b9050602002810190612a339190614acb565b85612cd2565b80612a4381614b27565b9150506129eb565b600080516020615293833981519152546000906001600160a01b03168015612b485760405163721804d360e11b81523060048201526000906001600160a01b0383169063e43009a690602401602060405180830381865afa158015612ab4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ad8919061501e565b60405163e66f960360e01b8152600481018290529091506001600160a01b0383169063e66f960390602401602060405180830381865afa158015612b20573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b449190615037565b9250505b5090565b6000612b5782612d97565b9050612b65816000846136af565b612b70600083613626565b6001600160a01b0381166000908152606860205260408120805460019290612b99908490614fb8565b909155505060008281526067602052604080822080546001600160a01b0319169055518391906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b60008585604051602001612c08929190615054565b60408051601f198184030181528282528051602091820120601f8901829004820284018201909252878352909250612c5c9183918990899081908401838280828437600092019190915250612d7292505050565b6111708187878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061397a915050565b612cdb84613aaf565b612d275760405162461bcd60e51b815260206004820152601c60248201527f5265636f726453746f726167653a204b45595f4e4f545f464f554e44000000006044820152606401610b60565b6114a584612d3486611962565b85858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525087925061397a915050565b612d7b82613aaf565b61108457600082815260c960205260409020610a138282615064565b6000818152606760205260408120546001600160a01b0316806109405760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b60565b6000828152610138602052604090208054612e1190614a66565b9050600003612e3557600082815261013860205260409020612e338282615064565b505b6001600160a01b03831660008181526101356020526040808220859055518492917feb76a21470988c474a21f690cc28fee1ed511bd812dc3c21fd0f49c5e5d4708a91a3505050565b606080612e8a84611962565b9150612e96848461378b565b90509250929050565b6000818152610137602052604081205460ff16801561094057506101366000612ec661229c565b6001600160a01b0316815260208101919091526040016000205460ff1692915050565b60008051602061529383398151915254604051633805550f60e01b81526001600160a01b03909116908190633805550f90612f2a9086908690600401614d69565b600060405180830381600087803b158015612f4457600080fd5b505af1158015610ef5573d6000803e3d6000fd5b816001600160a01b0316836001600160a01b031603612fb95760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610b60565b6001600160a01b038381166000818152606a6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561306d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613091919061501e565b9050600061313f8660600151805190602001208688602001516040516020016130df9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561316557508551613165906001600160a01b03168286613ad5565b9695505050505050565b60003033036131805750601f193601355b90565b606082858560405160200161319a93929190615123565b6040516020818303038152906040529050949350505050565b606081516001600160401b038111156131ce576131ce6144d7565b60405190808252806020026020018201604052801561320157816020015b60608152602001906001900390816131ec5790505b50905060005b82518110156113ff57600080306001600160a01b031685848151811061322f5761322f614ab5565b60200260200101516040516132449190614c1f565b600060405180830381855af49150503d806000811461327f576040519150601f19603f3d011682016040523d82523d6000602084013e613284565b606091505b50915091506132ac82826040518060600160405280602781526020016152b36027913961386d565b8484815181106132be576132be614ab5565b6020026020010181905250505080806132d690614b27565b915050613207565b6132e9848484612841565b6132f584848484613c17565b6114a55760405162461bcd60e51b8152600401610b6090615162565b6000818152610137602052604090205460ff16156111ca5760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a20544f4b454e5f555047524144454400000000000000006044820152606401610b60565b61337b84846122ab565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952836040516133ab9190613f78565b60405180910390a280156114a5576114a5848484612701565b6060610133805461095590614a66565b6060816000036133fb5750506040805180820190915260018152600360fc1b602082015290565b8160005b8115613425578061340f81614b27565b915061341e9050600a83614f8e565b91506133ff565b6000816001600160401b0381111561343f5761343f6144d7565b6040519080825280601f01601f191660200182016040528015613469576020820181803683370190505b5090505b8415610cab5761347e600183614fb8565b915061348b600a866151b4565b613496906030614f39565b60f81b8183815181106134ab576134ab614ab5565b60200101906001600160f81b031916908160001a9053506134cd600a86614f8e565b945061346d565b6134dd816127d4565b610ea08585858585612612565b6001600160a01b03811660008181526101356020526040808220829055517ffcf5eec0cfa3e6332f5f0e63ec242d71f866a61d121d6cdf5c2eb3b668a26c4f9190a250565b600054610100900460ff166135565760405162461bcd60e51b8152600401610b60906151c8565b60656135628382615064565b506066610a138282615064565b600054610100900460ff166135965760405162461bcd60e51b8152600401610b60906151c8565b565b600054610100900460ff166135bf5760405162461bcd60e51b8152600401610b60906151c8565b6111ca81613d1c565b600054610100900460ff166135ef5760405162461bcd60e51b8152600401610b60906151c8565b6111ca81613d75565b60008181526101006020526040902054613613906001614f39565b6000918252610100602052604090912055565b600081815260696020526040902080546001600160a01b0319166001600160a01b038416908117909155819061365b82612d97565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60003033036136aa575060331936013560601c90565b503390565b6001600160a01b0382166136c6576136c681613311565b600081815261013960205260409020546001600160401b031615613761576001600160a01b0382161580159061371557506136ff612a4b565b6001600160a01b0316826001600160a01b031614155b6137615760405162461bcd60e51b815260206004820152601960248201527f52656769737472793a20544f4b454e5f455850495241424c45000000000000006044820152606401610b60565b6001600160a01b03831660009081526101356020526040902054819003610a1357610a13836134ea565b606061379682612e9f565b156137b05750604080516020810190915260008152610940565b60ca60006137bd84613952565b8152602001908152602001600020600084815260200190815260200160002080546137e790614a66565b80601f016020809104026020016040519081016040528092919081815260200182805461381390614a66565b80156138605780601f1061383557610100808354040283529160200191613860565b820191906000526020600020905b81548152906001019060200180831161384357829003601f168201915b5050505050905092915050565b6060831561387c575081610db7565b82511561388c5782518084602001fd5b8160405162461bcd60e51b8152600401610b609190613f78565b600081516000036138f15760405162461bcd60e51b815260206004820152601560248201527452656769737472793a204c4142454c5f454d50545960581b6044820152606401610b60565b82826040516020016139039190614c1f565b60405160208183030381529060405280519060200120604051602001613933929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b600081815260cb602052604081205415612b4857600082815260cb6020526040902054610940565b60ca600061398783613952565b8152602001908152602001600020600085815260200190815260200160002080546139b190614a66565b9050600003613a0957826040516139c89190614c1f565b6040518091039020817f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f8685604051613a009190613f78565b60405180910390a35b8160ca6000613a1784613952565b815260200190815260200160002060008681526020019081526020016000209081613a429190615064565b5081604051613a519190614c1f565b604051809103902083604051613a679190614c1f565b6040518091039020827f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d928686604051613aa19291906146e2565b60405180910390a450505050565b600081815260c9602052604081208054829190613acb90614a66565b9050119050919050565b6000806000613ae48585613dc3565b90925090506000816004811115613afd57613afd615213565b148015613b1b5750856001600160a01b0316826001600160a01b0316145b15613b2b57600192505050610db7565b600080876001600160a01b0316631626ba7e60e01b8888604051602401613b53929190615229565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051613b919190614c1f565b600060405180830381855afa9150503d8060008114613bcc576040519150601f19603f3d011682016040523d82523d6000602084013e613bd1565b606091505b5091509150818015613be4575080516020145b8015613c0b57508051630b135d3f60e11b90613c09908301602090810190840161501e565b145b98975050505050505050565b60006001600160a01b0384163b15613d1457836001600160a01b031663150b7a02613c4061229c565b8786866040518563ffffffff1660e01b8152600401613c629493929190615242565b6020604051808303816000875af1925050508015613c9d575060408051601f3d908101601f19168201909252613c9a91810190615275565b60015b613cfa573d808015613ccb576040519150601f19603f3d011682016040523d82523d6000602084013e613cd0565b606091505b508051600003613cf25760405162461bcd60e51b8152600401610b6090615162565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610cab565b506001610cab565b600054610100900460ff16613d435760405162461bcd60e51b8152600401610b60906151c8565b806000805160206152938339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b600054610100900460ff16613d9c5760405162461bcd60e51b8152600401610b60906151c8565b807f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87613d54565b6000808251604103613df95760208301516040840151606085015160001a613ded87828585613e08565b94509450505050613e01565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613e3f5750600090506003613eec565b8460ff16601b14158015613e5757508460ff16601c14155b15613e685750600090506004613eec565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613ebc573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613ee557600060019250925050613eec565b9150600090505b94509492505050565b6001600160e01b0319811681146111ca57600080fd5b600060208284031215613f1d57600080fd5b8135610db781613ef5565b60005b83811015613f43578181015183820152602001613f2b565b50506000910152565b60008151808452613f64816020860160208601613f28565b601f01601f19169290920160200192915050565b602081526000610db76020830184613f4c565b600060208284031215613f9d57600080fd5b5035919050565b6001600160a01b03811681146111ca57600080fd5b60008060408385031215613fcc57600080fd5b8235613fd781613fa4565b946020939093013593505050565b60008083601f840112613ff757600080fd5b5081356001600160401b0381111561400e57600080fd5b602083019150836020828501011115613e0157600080fd5b60008060008060006080868803121561403e57600080fd5b853561404981613fa4565b9450602086013561405981613fa4565b93506040860135925060608601356001600160401b0381111561407b57600080fd5b61408788828901613fe5565b969995985093965092949392505050565b60008083601f8401126140aa57600080fd5b5081356001600160401b038111156140c157600080fd5b6020830191508360208260051b8501011115613e0157600080fd5b6000806000604084860312156140f157600080fd5b83356001600160401b0381111561410757600080fd5b61411386828701614098565b909790965060209590950135949350505050565b600082825180855260208086019550808260051b84010181860160005b8481101561417257601f19868403018952614160838351613f4c565b98840198925090830190600101614144565b5090979650505050505050565b602081526000610db76020830184614127565b6000806000604084860312156141a757600080fd5b83356001600160401b038111156141bd57600080fd5b61411386828701613fe5565b6000806000604084860312156141de57600080fd5b83356001600160401b03808211156141f557600080fd5b908501906080828803121561420957600080fd5b9093506020850135908082111561421f57600080fd5b5061422c86828701613fe5565b9497909650939450505050565b8035801515811461124557600080fd5b60008060008060008060008060a0898b03121561426557600080fd5b883561427081613fa4565b975060208901356001600160401b038082111561428c57600080fd5b6142988c838d01614098565b909950975060408b01359150808211156142b157600080fd5b6142bd8c838d01614098565b909750955060608b01359150808211156142d657600080fd5b506142e38b828c01614098565b90945092506142f6905060808a01614239565b90509295985092959890939650565b60008060006060848603121561431a57600080fd5b833561432581613fa4565b9250602084013561433581613fa4565b929592945050506040919091013590565b6000806020838503121561435957600080fd5b82356001600160401b0381111561436f57600080fd5b61437b85828601614098565b90969095509350505050565b60008060008060006060868803121561439f57600080fd5b85356001600160401b03808211156143b657600080fd5b6143c289838a01614098565b909750955060208801359150808211156143db57600080fd5b506143e888828901614098565b96999598509660400135949350505050565b6000806040838503121561440d57600080fd5b82356001600160401b0381168114613fd757600080fd5b60008060008060006060868803121561443c57600080fd5b85356001600160401b038082111561445357600080fd5b61445f89838a01613fe5565b9097509550602088013591508082111561447857600080fd5b506143e888828901613fe5565b6000806000806060858703121561449b57600080fd5b8435935060208501356001600160401b038111156144b857600080fd5b6144c487828801613fe5565b9598909750949560400135949350505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715614515576145156144d7565b604052919050565b600082601f83011261452e57600080fd5b81356001600160401b03811115614547576145476144d7565b61455a601f8201601f19166020016144ed565b81815284602083860101111561456f57600080fd5b816020850160208301376000918101602001919091529392505050565b60006020828403121561459e57600080fd5b81356001600160401b038111156145b457600080fd5b610cab8482850161451d565b6000602082840312156145d257600080fd5b8135610db781613fa4565b60006001600160401b038211156145f6576145f66144d7565b5060051b60200190565b600061461361460e846145dd565b6144ed565b8381529050602080820190600585901b84018681111561463257600080fd5b845b8181101561466d5780356001600160401b038111156146535760008081fd5b61465f8982890161451d565b855250928201928201614634565b505050509392505050565b60006020828403121561468a57600080fd5b81356001600160401b038111156146a057600080fd5b8201601f810184136146b157600080fd5b610cab84823560208401614600565b600080604083850312156146d357600080fd5b50508035926020909101359150565b6040815260006146f56040830185613f4c565b8281036020840152610db38185613f4c565b6000806000806060858703121561471d57600080fd5b843561472881613fa4565b93506020850135925060408501356001600160401b0381111561474a57600080fd5b61475687828801613fe5565b95989497509550505050565b60008060008060008060006080888a03121561477d57600080fd5b87356001600160401b038082111561479457600080fd5b6147a08b838c01613fe5565b909950975060208a0135965060408a01359150808211156147c057600080fd5b6147cc8b838c01614098565b909650945060608a01359150808211156147e557600080fd5b506147f28a828b01614098565b989b979a50959850939692959293505050565b6000806020838503121561481857600080fd5b82356001600160401b0381111561482e57600080fd5b61437b85828601613fe5565b6000806040838503121561484d57600080fd5b823561485881613fa4565b9150612e9660208401614239565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156148bb57603f198886030184526148a9858351613f4c565b9450928501929085019060010161488d565b5092979650505050505050565b6040815260006148db6040830185614127565b8281036020840152610db38185614127565b6000806000806080858703121561490357600080fd5b843561490e81613fa4565b9350602085013561491e81613fa4565b92506040850135915060608501356001600160401b0381111561494057600080fd5b61494c8782880161451d565b91505092959194509250565b60008060006040848603121561496d57600080fd5b833561497881613fa4565b925060208401356001600160401b0381111561499357600080fd5b61422c86828701613fe5565b600080604083850312156149b257600080fd5b82356149bd81613fa4565b915060208301356149cd81613fa4565b809150509250929050565b6000806000604084860312156149ed57600080fd5b8335925060208401356001600160401b0381111561499357600080fd5b60008060008060808587031215614a2057600080fd5b8435614a2b81613fa4565b93506020850135614a3b81613fa4565b92506040850135614a4b81613fa4565b91506060850135614a5b81613fa4565b939692955090935050565b600181811c90821680614a7a57607f821691505b6020821081036113ff57634e487b7160e01b600052602260045260246000fd5b600060208284031215614aac57600080fd5b610db782614239565b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112614ae257600080fd5b8301803591506001600160401b03821115614afc57600080fd5b602001915036819003821315613e0157600080fd5b634e487b7160e01b600052601160045260246000fd5b600060018201614b3957614b39614b11565b5060010190565b60208082526027908201527f52656769737472793a2053454e4445525f49535f4e4f545f4d494e54494e475f60408201526626a0a720a3a2a960c91b606082015260800190565b6000610db7368484614600565b60208082526029908201527f52656769737472793a2053454e4445525f49535f4e4f545f415050524f5645446040820152682fa7a92fa7aba722a960b91b606082015260800190565b60208082526022908201527f52656769737472793a20494e53554646494349454e545f5045524d495353494f6040820152614e5360f01b606082015260800190565b60008251614c31818460208701613f28565b9190910192915050565b601f821115610a1357600081815260208120601f850160051c81016020861015614c625750805b601f850160051c820191505b8181101561117057828155600101614c6e565b6001600160401b03831115614c9857614c986144d7565b614cac83614ca68354614a66565b83614c3b565b6000601f841160018114614ce05760008515614cc85750838201355b600019600387901b1c1916600186901b178355610ea0565b600083815260209020601f19861690835b82811015614d115786850135825560209485019460019092019101614cf1565b5086821015614d2e5760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b602081526000610cab602083018486614d40565b600060808236031215614d8f57600080fd5b604051608081016001600160401b038282108183111715614db257614db26144d7565b8160405284359150614dc382613fa4565b81835260208501356020840152604085013560408401526060850135915080821115614dee57600080fd5b50614dfb3682860161451d565b60608301525092915050565b6000614e1561460e846145dd565b80848252602080830192508560051b850136811115614e3357600080fd5b855b81811015614e6e5780356001600160401b03811115614e545760008081fd5b614e6036828a0161451d565b865250938201938201614e35565b50919695505050505050565b60008351614e8c818460208801613f28565b835190830190614ea0818360208801613f28565b01949350505050565b60006020808385031215614ebc57600080fd5b82356001600160401b03811115614ed257600080fd5b8301601f81018513614ee357600080fd5b8035614ef161460e826145dd565b81815260059190911b82018301908381019087831115614f1057600080fd5b928401925b82841015614f2e57833582529284019290840190614f15565b979650505050505050565b8082018082111561094057610940614b11565b6001600160a01b03848116825283166020820152606060408201819052600090610b6990830184613f4c565b634e487b7160e01b600052601260045260246000fd5b600082614f9d57614f9d614f78565b500490565b634e487b7160e01b600052600160045260246000fd5b8181038181111561094057610940614b11565b600081614fda57614fda614b11565b506000190190565b60008351614ff4818460208801613f28565b601760f91b9083019081528351615012816001840160208801613f28565b01600101949350505050565b60006020828403121561503057600080fd5b5051919050565b60006020828403121561504957600080fd5b8151610db781613fa4565b8183823760009101908152919050565b81516001600160401b0381111561507d5761507d6144d7565b6150918161508b8454614a66565b84614c3b565b602080601f8311600181146150c657600084156150ae5750858301515b600019600386901b1c1916600185901b178555611170565b600085815260208120601f198616915b828110156150f5578886015182559484019460019091019084016150d6565b50858210156151135787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60008451615135818460208901613f28565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6000826151c3576151c3614f78565b500690565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b634e487b7160e01b600052602160045260246000fd5b828152604060208201526000610cab6040830184613f4c565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061316590830184613f4c565b60006020828403121561528757600080fd5b8151610db781613ef556febe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a"; - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "address"; - readonly name: "previousAdmin"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "address"; - readonly name: "newAdmin"; - readonly type: "address"; - }]; - readonly name: "AdminChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "approved"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Approval"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "ApprovalForAll"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "uint8"; - readonly name: "version"; - readonly type: "uint8"; - }]; - readonly name: "Initialized"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly indexed: true; - readonly internalType: "string"; - readonly name: "keyIndex"; - readonly type: "string"; - }, { - readonly indexed: false; - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }]; - readonly name: "NewKey"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly indexed: false; - readonly internalType: "string"; - readonly name: "uri"; - readonly type: "string"; - }]; - readonly name: "NewURI"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "string"; - readonly name: "prefix"; - readonly type: "string"; - }]; - readonly name: "NewURIPrefix"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }]; - readonly name: "RemoveReverse"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "ResetRecords"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly indexed: true; - readonly internalType: "string"; - readonly name: "keyIndex"; - readonly type: "string"; - }, { - readonly indexed: true; - readonly internalType: "string"; - readonly name: "valueIndex"; - readonly type: "string"; - }, { - readonly indexed: false; - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }, { - readonly indexed: false; - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }]; - readonly name: "Set"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly indexed: false; - readonly internalType: "uint64"; - readonly name: "expiry"; - readonly type: "uint64"; - }]; - readonly name: "SetExpiry"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "SetReverse"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Transfer"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "implementation"; - readonly type: "address"; - }]; - readonly name: "Upgraded"; - readonly type: "event"; - }, { - readonly inputs: readonly []; - readonly name: "BATCH_LIMIT"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "NAME"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "VERSION"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }]; - readonly name: "addKey"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }]; - readonly name: "addProxyReader"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "approve"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "balanceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "burn"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "user"; - readonly type: "address"; - }, { - readonly internalType: "bytes"; - readonly name: "depositData"; - readonly type: "bytes"; - }]; - readonly name: "deposit"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "depositToPolygon"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly components: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "nonce"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly internalType: "struct IForwarder.ForwardRequest"; - readonly name: "req"; - readonly type: "tuple"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "execute"; - readonly outputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "exists"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "expiryOf"; - readonly outputs: readonly [{ - readonly internalType: "uint64"; - readonly name: ""; - readonly type: "uint64"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "get"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getApproved"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "keyHash"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getByHash"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }, { - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "keyHash"; - readonly type: "uint256"; - }]; - readonly name: "getKey"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256[]"; - readonly name: "hashes"; - readonly type: "uint256[]"; - }]; - readonly name: "getKeys"; - readonly outputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getMany"; - readonly outputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256[]"; - readonly name: "keyHashes"; - readonly type: "uint256[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getManyByHash"; - readonly outputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "mintingManager"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "cnsRegistry"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "rootChainManager"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "childChainManager"; - readonly type: "address"; - }]; - readonly name: "initialize"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly name: "isApprovedForAll"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "spender"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "isApprovedOrOwner"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "isExpired"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "forwarder"; - readonly type: "address"; - }]; - readonly name: "isTrustedForwarder"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "user"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "mint"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "user"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly name: "mint"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "string"; - readonly name: "uri"; - readonly type: "string"; - }]; - readonly name: "mintTLD"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "string[]"; - readonly name: "labels"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }, { - readonly internalType: "bool"; - readonly name: "withReverse"; - readonly type: "bool"; - }]; - readonly name: "mintWithRecords"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes[]"; - readonly name: "data"; - readonly type: "bytes[]"; - }]; - readonly name: "multicall"; - readonly outputs: readonly [{ - readonly internalType: "bytes[]"; - readonly name: "results"; - readonly type: "bytes[]"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "name"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "labels"; - readonly type: "string[]"; - }]; - readonly name: "namehash"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "hash"; - readonly type: "uint256"; - }]; - readonly stateMutability: "pure"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "nonceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "onERC721Received"; - readonly outputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: ""; - readonly type: "bytes4"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "ownerOf"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "reconfigure"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "removeReverse"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "reset"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "resolverOf"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }]; - readonly name: "reverseNameOf"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: "reverseUri"; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }]; - readonly name: "reverseOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "reverse"; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "root"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "pure"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }, { - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "set"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "setApprovalForAll"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "keyHash"; - readonly type: "uint256"; - }, { - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "setByHash"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint64"; - readonly name: "expiry"; - readonly type: "uint64"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "setExpiry"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "setMany"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256[]"; - readonly name: "keyHashes"; - readonly type: "uint256[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "setManyByHash"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "setOwner"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "labels"; - readonly type: "string[]"; - }]; - readonly name: "setReverse"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "prefix"; - readonly type: "string"; - }]; - readonly name: "setTokenURIPrefix"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "symbol"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "tokenURI"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "transferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "unlock"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "string[]"; - readonly name: "labels"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }, { - readonly internalType: "bool"; - readonly name: "withReverse"; - readonly type: "bool"; - }]; - readonly name: "unlockWithRecords"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly components: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "nonce"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly internalType: "struct IForwarder.ForwardRequest"; - readonly name: "req"; - readonly type: "tuple"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "verify"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes"; - readonly name: "inputData"; - readonly type: "bytes"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }]; - readonly name: "withdrawFromPolygon"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): UNSRegistryInterface; - static connect(address: string, runner?: ContractRunner | null): UNSRegistry; -} -export {}; -//# sourceMappingURL=UNSRegistry__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/UNSRegistry__factory.d.ts.map b/dist/types/factories/contracts/UNSRegistry__factory.d.ts.map deleted file mode 100644 index d83b90e7..00000000 --- a/dist/types/factories/contracts/UNSRegistry__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"UNSRegistry__factory.d.ts","sourceRoot":"","sources":["../../../../types/factories/contracts/UNSRegistry__factory.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/factories/contracts/UNSRegistry__factory.js b/dist/types/factories/contracts/UNSRegistry__factory.js deleted file mode 100644 index 4413e2fb..00000000 --- a/dist/types/factories/contracts/UNSRegistry__factory.js +++ /dev/null @@ -1,1571 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.UNSRegistry__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "previousAdmin", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "newAdmin", - type: "address", - }, - ], - name: "AdminChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "approved", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Approval", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: false, - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "ApprovalForAll", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint8", - name: "version", - type: "uint8", - }, - ], - name: "Initialized", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - indexed: true, - internalType: "string", - name: "keyIndex", - type: "string", - }, - { - indexed: false, - internalType: "string", - name: "key", - type: "string", - }, - ], - name: "NewKey", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - indexed: false, - internalType: "string", - name: "uri", - type: "string", - }, - ], - name: "NewURI", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "string", - name: "prefix", - type: "string", - }, - ], - name: "NewURIPrefix", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "addr", - type: "address", - }, - ], - name: "RemoveReverse", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "ResetRecords", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - indexed: true, - internalType: "string", - name: "keyIndex", - type: "string", - }, - { - indexed: true, - internalType: "string", - name: "valueIndex", - type: "string", - }, - { - indexed: false, - internalType: "string", - name: "key", - type: "string", - }, - { - indexed: false, - internalType: "string", - name: "value", - type: "string", - }, - ], - name: "Set", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - indexed: false, - internalType: "uint64", - name: "expiry", - type: "uint64", - }, - ], - name: "SetExpiry", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "addr", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "SetReverse", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Transfer", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "implementation", - type: "address", - }, - ], - name: "Upgraded", - type: "event", - }, - { - inputs: [], - name: "BATCH_LIMIT", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "NAME", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "VERSION", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "key", - type: "string", - }, - ], - name: "addKey", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "addr", - type: "address", - }, - ], - name: "addProxyReader", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "approve", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "burn", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "user", - type: "address", - }, - { - internalType: "bytes", - name: "depositData", - type: "bytes", - }, - ], - name: "deposit", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "depositToPolygon", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - internalType: "struct IForwarder.ForwardRequest", - name: "req", - type: "tuple", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "execute", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "exists", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "expiryOf", - outputs: [ - { - internalType: "uint64", - name: "", - type: "uint64", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "key", - type: "string", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "get", - outputs: [ - { - internalType: "string", - name: "value", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getApproved", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "keyHash", - type: "uint256", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getByHash", - outputs: [ - { - internalType: "string", - name: "key", - type: "string", - }, - { - internalType: "string", - name: "value", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "keyHash", - type: "uint256", - }, - ], - name: "getKey", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256[]", - name: "hashes", - type: "uint256[]", - }, - ], - name: "getKeys", - outputs: [ - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getMany", - outputs: [ - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256[]", - name: "keyHashes", - type: "uint256[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getManyByHash", - outputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "mintingManager", - type: "address", - }, - { - internalType: "address", - name: "cnsRegistry", - type: "address", - }, - { - internalType: "address", - name: "rootChainManager", - type: "address", - }, - { - internalType: "address", - name: "childChainManager", - type: "address", - }, - ], - name: "initialize", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - name: "isApprovedForAll", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "spender", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "isApprovedOrOwner", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "isExpired", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "forwarder", - type: "address", - }, - ], - name: "isTrustedForwarder", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "user", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "mint", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "user", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - name: "mint", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "string", - name: "uri", - type: "string", - }, - ], - name: "mintTLD", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "string[]", - name: "labels", - type: "string[]", - }, - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - { - internalType: "bool", - name: "withReverse", - type: "bool", - }, - ], - name: "mintWithRecords", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes[]", - name: "data", - type: "bytes[]", - }, - ], - name: "multicall", - outputs: [ - { - internalType: "bytes[]", - name: "results", - type: "bytes[]", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "name", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string[]", - name: "labels", - type: "string[]", - }, - ], - name: "namehash", - outputs: [ - { - internalType: "uint256", - name: "hash", - type: "uint256", - }, - ], - stateMutability: "pure", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "nonceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "onERC721Received", - outputs: [ - { - internalType: "bytes4", - name: "", - type: "bytes4", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "ownerOf", - outputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "reconfigure", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "removeReverse", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "reset", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "resolverOf", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "addr", - type: "address", - }, - ], - name: "reverseNameOf", - outputs: [ - { - internalType: "string", - name: "reverseUri", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "addr", - type: "address", - }, - ], - name: "reverseOf", - outputs: [ - { - internalType: "uint256", - name: "reverse", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "root", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "pure", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "safeTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "safeTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "key", - type: "string", - }, - { - internalType: "string", - name: "value", - type: "string", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "set", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "setApprovalForAll", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "keyHash", - type: "uint256", - }, - { - internalType: "string", - name: "value", - type: "string", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "setByHash", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint64", - name: "expiry", - type: "uint64", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "setExpiry", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "setMany", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256[]", - name: "keyHashes", - type: "uint256[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "setManyByHash", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "setOwner", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "string[]", - name: "labels", - type: "string[]", - }, - ], - name: "setReverse", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "prefix", - type: "string", - }, - ], - name: "setTokenURIPrefix", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "symbol", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "tokenURI", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "transferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "unlock", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "string[]", - name: "labels", - type: "string[]", - }, - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - { - internalType: "bool", - name: "withReverse", - type: "bool", - }, - ], - name: "unlockWithRecords", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - internalType: "struct IForwarder.ForwardRequest", - name: "req", - type: "tuple", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "verify", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes", - name: "inputData", - type: "bytes", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - ], - name: "withdrawFromPolygon", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -const _bytecode = "0x608060405234801561001057600080fd5b506152e6806100206000396000f3fe608060405234801561001057600080fd5b50600436106103af5760003560e01c80637e37479e116101f4578063ba5d40b71161011a578063e985e9c5116100ad578063f5c1f76e1161007c578063f5c1f76e146108d8578063f7df5c60146108eb578063f8c8765e146108fe578063ffa1ad741461091157600080fd5b8063e985e9c51461087a578063ebf0c717146108b6578063ec129eea146108bd578063f25eb5c1146108d057600080fd5b8063c87b56dd116100e9578063c87b56dd1461082e578063ce92b33e14610841578063cf2c52cb14610854578063d9548e531461086757600080fd5b8063ba5d40b7146107b3578063baef73e9146107c6578063bb5b27e114610808578063bebec6b41461081b57600080fd5b8063a22cb46511610192578063ac9650d811610161578063ac9650d81461074c578063b3f9e4cb1461076c578063b85afd281461077f578063b88d4fde146107a057600080fd5b8063a22cb465146106e7578063a3f4df7e146106fa578063a424740014610726578063ab3b87fe1461073957600080fd5b80639508b1c4116101ce5780639508b1c4146106b15780639559c0bd146106c457806395d89b41146106cc57806399e0dd7c146106d457600080fd5b80637e37479e146106785780637eee288d1461068b57806394d008ef1461069e57600080fd5b806342842e0e116102d95780635096023911610277578063663f7b2a11610246578063663f7b2a14610610578063672b9f81146106235780636ccbae5f1461064457806370a082311461066557600080fd5b806350960239146105bb578063572b6c05146105ce5780636352211e146105ea578063638e5c78146105fd57600080fd5b806347c81699116102b357806347c816991461056f5780634a72584d146105825780634f558e791461059557806350382c1a146105a857600080fd5b806342842e0e1461053657806342966c6814610549578063430c20811461055c57600080fd5b80631bf7e13e1161035157806327f189751161032057806327f18975146104ea578063310bd74b146104fd5780633f72ec6e1461051057806340c10f191461052357600080fd5b80631bf7e13e146104905780631f71be06146104a357806323b872dd146104b6578063276fabb1146104c957600080fd5b8063095ea7b31161038d578063095ea7b31461041c578063150b7a02146104315780631bd8cc1a1461045d5780631be5e7ed1461047d57600080fd5b806301ffc9a7146103b457806306fdde03146103dc578063081812fc146103f1575b600080fd5b6103c76103c2366004613f0b565b610935565b60405190151581526020015b60405180910390f35b6103e4610946565b6040516103d39190613f78565b6104046103ff366004613f8b565b6109d8565b6040516001600160a01b0390911681526020016103d3565b61042f61042a366004613fb9565b6109ff565b005b61044461043f366004614026565b610a18565b6040516001600160e01b031990911681526020016103d3565b61047061046b3660046140dc565b610b72565b6040516103d3919061417f565b6103e461048b366004614192565b610c68565b6103e461049e3660046141c9565b610cb3565b61042f6104b1366004614249565b610dbe565b61042f6104c4366004614305565b610e54565b6104dc6104d7366004614346565b610ea7565b6040519081526020016103d3565b61042f6104f8366004614387565b610eb6565b61042f61050b366004613f8b565b610efe565b61042f61051e3660046143fa565b610f39565b61042f610531366004613fb9565b61103b565b61042f610544366004614305565b611088565b61042f610557366004613f8b565b6110a3565b6103c761056a366004613fb9565b6110e7565b61042f61057d366004614424565b6110f3565b61042f610590366004614485565b611132565b6103c76105a3366004613f8b565b611178565b61042f6105b636600461458c565b611197565b61042f6105c93660046145c0565b6111cd565b6103c76105dc3660046145c0565b6001600160a01b0316301490565b6104046105f8366004613f8b565b61122d565b61042f61060b366004613f8b565b61124a565b61042f61061e366004614678565b611295565b6106366106313660046146c0565b611336565b6040516103d39291906146e2565b6104dc610652366004613f8b565b6000908152610100602052604090205490565b6104dc6106733660046145c0565b61134e565b6104dc6106863660046145c0565b6113d4565b61042f610699366004613fb9565b611405565b61042f6106ac366004614707565b61145c565b61042f6106bf366004614762565b6114ab565b6104dc601481565b6103e4611532565b61042f6106e2366004614805565b611541565b61042f6106f536600461483a565b6115c8565b6103e46040518060400160405280600d81526020016c554e533a20526567697374727960981b81525081565b6103c76107343660046141c9565b6115da565b61042f610747366004613fb9565b611625565b61075f61075a366004614346565b61166a565b6040516103d39190614866565b61040461077a366004613f8b565b611746565b61079261078d3660046140dc565b611770565b6040516103d39291906148c8565b61042f6107ae3660046148ed565b611892565b61042f6107c1366004614249565b6118d9565b6107f06107d4366004613f8b565b600090815261013960205260409020546001600160401b031690565b6040516001600160401b0390911681526020016103d3565b6103e4610816366004613f8b565b611962565b6103e46108293660046145c0565b611a04565b6103e461083c366004613f8b565b611ace565b61042f61084f366004614387565b611b34565b61042f610862366004614958565b611b73565b6103c7610875366004613f8b565b611c42565b6103c761088836600461499f565b6001600160a01b039182166000908152606a6020908152604080832093909416825291909152205460ff1690565b60006104dc565b61042f6108cb366004614387565b611c85565b61042f611cc4565b6104706108e6366004614346565b611d4b565b61042f6108f93660046149d8565b611dfe565b61042f61090c366004614a0a565b611e8f565b6103e460405180604001604052806005815260200164302e392e3160d81b81525081565b600061094082612065565b92915050565b60606065805461095590614a66565b80601f016020809104026020016040519081016040528092919081815260200182805461098190614a66565b80156109ce5780601f106109a3576101008083540402835291602001916109ce565b820191906000526020600020905b8154815290600101906020018083116109b157829003601f168201915b5050505050905090565b60006109e3826120b5565b506000908152606960205260409020546001600160a01b031690565b80610a0981612114565b610a13838361217a565b505050565b60007f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378546001600160a01b0316610a4d61229c565b6001600160a01b031603610b0e57610a6361229c565b6001600160a01b03166342966c68856040518263ffffffff1660e01b8152600401610a9091815260200190565b600060405180830381600087803b158015610aaa57600080fd5b505af1158015610abe573d6000803e3d6000fd5b505050821580159150610ad85750610ad882840184614a9a565b15610af657610ae730856122ab565b610af185856123f9565b610b00565b610b0085856122ab565b50630a85bd0160e11b610b69565b60405162461bcd60e51b815260206004820152602560248201527f52656769737472793a204552433732315f524543454956494e475f50524f4849604482015264109255115160da1b60648201526084015b60405180910390fd5b95945050505050565b6060826001600160401b03811115610b8c57610b8c6144d7565b604051908082528060200260200182016040528015610bbf57816020015b6060815260200190600190039081610baa5790505b50905060005b83811015610c6057610c30858583818110610be257610be2614ab5565b9050602002810190610bf49190614acb565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508792506124a4915050565b828281518110610c4257610c42614ab5565b60200260200101819052508080610c5890614b27565b915050610bc5565b509392505050565b6060610cab84848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508692506124a4915050565b949350505050565b606060005a9050610cc58585856115da565b610d215760405162461bcd60e51b815260206004820152602760248201527f554e535265676973747279466f727761726465723a205349474e41545552455f6044820152661253959053125160ca1b6064820152608401610b60565b610db3610d3160208701876145c0565b30604088013584610d4560608b018b614acb565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284376000920191909152506124d992505050565b9150505b9392505050565b610134546001600160a01b0316610dd361229c565b6001600160a01b031614610df95760405162461bcd60e51b8152600401610b6090614b40565b6000610e0d610e08888a614b87565b6125ba565b509050610e1a8982611405565b610e278686868685612612565b8115610e4957610e498982610e44610e3f8b8d614b87565b612680565b612701565b505050505050505050565b80610e66610e6061229c565b82612743565b610e825760405162461bcd60e51b8152600401610b6090614b94565b81610e8c81612114565b610e95836127d4565b610ea0858585612841565b5050505050565b6000610c60610e088385614b87565b80610ec2610e6061229c565b610ede5760405162461bcd60e51b8152600401610b6090614b94565b81610ee881612114565b610ef587878787876129e8565b50505050505050565b80610f0a610e6061229c565b610f265760405162461bcd60e51b8152600401610b6090614b94565b81610f3081612114565b610a13836127d4565b610134546001600160a01b0316610f4e61229c565b6001600160a01b031614610f745760405162461bcd60e51b8152600401610b6090614b40565b610f7d816120b5565b42826001600160401b031611610fd55760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a204558504952595f494e5f5041535400000000000000006044820152606401610b60565b60008181526101396020908152604091829020805467ffffffffffffffff19166001600160401b038616908117909155915191825282917f93feabb03ab84f47fc85bf0c298103fca21d8c8bc376eae0c1e1c56b9d4f7789910160405180910390a25050565b611043612a4b565b6001600160a01b031661105461229c565b6001600160a01b03161461107a5760405162461bcd60e51b8152600401610b6090614bdd565b61108482826122ab565b5050565b610a1383838360405180602001604052806000815250611892565b806110af610e6061229c565b6110cb5760405162461bcd60e51b8152600401610b6090614b94565b816110d581612114565b6110de836127d4565b610a1383612b4c565b6000610db78383612743565b806110ff610e6061229c565b61111b5760405162461bcd60e51b8152600401610b6090614b94565b8161112581612114565b610ef58787878787612bf3565b8061113e610e6061229c565b61115a5760405162461bcd60e51b8152600401610b6090614b94565b8161116481612114565b61117086868686612cd2565b505050505050565b6000818152606760205260408120546001600160a01b03161515610940565b6111ca816040516020016111ab9190614c1f565b6040516020818303038152906040528051906020012060001c82612d72565b50565b610134546001600160a01b03166111e261229c565b6001600160a01b0316146112085760405162461bcd60e51b8152600401610b6090614b40565b6001600160a01b0316600090815261013660205260409020805460ff19166001179055565b600061123882611c42565b6112455761094082612d97565b919050565b80611256610e6061229c565b6112725760405162461bcd60e51b8152600401610b6090614b94565b61128461127d61229c565b3084612841565b61108461128f61229c565b836123f9565b60006112a0826125ba565b5090506112ab61229c565b6001600160a01b03166112bd8261122d565b6001600160a01b0316146113135760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b60565b61131c81612114565b61108461132761229c565b8261133185612680565b612df7565b6060806113438484612e7e565b909590945092505050565b60006001600160a01b0382166113b85760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b6064820152608401610b60565b506001600160a01b031660009081526068602052604090205490565b6001600160a01b038116600090815261013560205260408120546113f781612e9f565b6113ff578091505b50919050565b610134546001600160a01b031661141a61229c565b6001600160a01b0316146114405760405162461bcd60e51b8152600401610b6090614b40565b611449816127d4565b61108461145582612d97565b8383612841565b611464612a4b565b6001600160a01b031661147561229c565b6001600160a01b03161461149b5760405162461bcd60e51b8152600401610b6090614bdd565b6114a584846122ab565b50505050565b6114b58787612ee9565b6114bd61229c565b6001600160a01b03166114cf8661122d565b6001600160a01b0316146115255760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b60565b610ef58484848489612612565b60606066805461095590614a66565b610134546001600160a01b031661155661229c565b6001600160a01b03161461157c5760405162461bcd60e51b8152600401610b6090614b40565b61013361158a828483614c81565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b82826040516115bc929190614d69565b60405180910390a15050565b6110846115d361229c565b8383612f58565b6000610cab6115e885614d7d565b3085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061302692505050565b80611631610e6061229c565b61164d5760405162461bcd60e51b8152600401610b6090614b94565b8161165781612114565b6114a561166384612d97565b8585612841565b606060006116788385614e07565b905030330361173d5760005b8381101561173b5761170b61169761229c565b61169f61316f565b8787858181106116b1576116b1614ab5565b90506020028101906116c39190614acb565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250613183915050565b82828151811061171d5761171d614ab5565b6020026020010181905250808061173390614b27565b915050611684565b505b610cab816131b3565b6000818152606760205260408120546001600160a01b0316611769576000610940565b3092915050565b606080836001600160401b0381111561178b5761178b6144d7565b6040519080825280602002602001820160405280156117be57816020015b60608152602001906001900390816117a95790505b509150836001600160401b038111156117d9576117d96144d7565b60405190808252806020026020018201604052801561180c57816020015b60608152602001906001900390816117f75790505b50905060005b848110156118895761183c86868381811061182f5761182f614ab5565b9050602002013585612e7e565b84838151811061184e5761184e614ab5565b6020026020010184848151811061186757611867614ab5565b602002602001018290528290525050808061188190614b27565b915050611812565b50935093915050565b8161189e610e6061229c565b6118ba5760405162461bcd60e51b8152600401610b6090614b94565b826118c481612114565b6118cd846127d4565b611170868686866132de565b610134546001600160a01b03166118ee61229c565b6001600160a01b0316146119145760405162461bcd60e51b8152600401610b6090614b40565b600080611924610e08898b614b87565b9150915061193181613311565b6119498a83611943610e3f8c8e614b87565b86613371565b6119568787878786612612565b50505050505050505050565b600081815260c96020526040902080546060919061197f90614a66565b80601f01602080910402602001604051908101604052809291908181526020018280546119ab90614a66565b80156119f85780601f106119cd576101008083540402835291602001916119f8565b820191906000526020600020905b8154815290600101906020018083116119db57829003601f168201915b50505050509050919050565b6001600160a01b03811660009081526101356020526040902054606090611a2a81612e9f565b6113ff576000818152610138602052604090208054611a4890614a66565b80601f0160208091040260200160405190810160405280929190818152602001828054611a7490614a66565b8015611ac15780601f10611a9657610100808354040283529160200191611ac1565b820191906000526020600020905b815481529060010190602001808311611aa457829003601f168201915b5050505050915050919050565b6060611ad9826120b5565b6000611ae36133c4565b90506000815111611b035760405180602001604052806000815250610db7565b80611b0d846133d4565b604051602001611b1e929190614e7a565b6040516020818303038152906040529392505050565b80611b40610e6061229c565b611b5c5760405162461bcd60e51b8152600401610b6090614b94565b81611b6681612114565b610ef58787878787612612565b7f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87546001600160a01b0316611ba661229c565b6001600160a01b031614611bcc5760405162461bcd60e51b8152600401610b6090614bdd565b6020819003611bef576000611be382840184613f8b565b90506114a584826122ab565b6000611bfd82840184614ea9565b805190915060005b8181101561117057611c3086848381518110611c2357611c23614ab5565b60200260200101516122ab565b80611c3a81614b27565b915050611c05565b600081815261013960205260408120546001600160401b03161580159061094057505060009081526101396020526040902054426001600160401b039091161090565b80611c91610e6061229c565b611cad5760405162461bcd60e51b8152600401610b6090614b94565b81611cb781612114565b610ef587878787876134d4565b6000611cce61229c565b6001600160a01b0381166000908152610135602052604081205491925003611d425760405162461bcd60e51b815260206004820152602160248201527f52656769737472793a20524556455253455f5245434f52445f49535f454d50546044820152605960f81b6064820152608401610b60565b6111ca816134ea565b6060816001600160401b03811115611d6557611d656144d7565b604051908082528060200260200182016040528015611d9857816020015b6060815260200190600190039081611d835790505b50905060005b82811015611df757611dc7848483818110611dbb57611dbb614ab5565b90506020020135611962565b828281518110611dd957611dd9614ab5565b60200260200101819052508080611def90614b27565b915050611d9e565b5092915050565b610134546001600160a01b0316611e1361229c565b6001600160a01b031614611e395760405162461bcd60e51b8152600401610b6090614b40565b61013454611e50906001600160a01b0316846122ab565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c39528383604051611e82929190614d69565b60405180910390a2505050565b600054610100900460ff1615808015611eaf5750600054600160ff909116105b80611ec95750303b158015611ec9575060005460ff166001145b611f2c5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610b60565b6000805460ff191660011790558015611f4f576000805461ff0019166101001790555b61013480546001600160a01b0319166001600160a01b038716179055837f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec9237880546001600160a01b0319166001600160a01b03929092169190911790556040805180820182526013815272556e73746f707061626c6520446f6d61696e7360681b60208083019190915282518084019093526002835261155160f21b90830152611ff79161352f565b611fff61356f565b61200761356f565b61201083613598565b612019826135c8565b8015610ea0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b60006001600160e01b031982166380ac58cd60e01b148061209657506001600160e01b03198216635b5e139f60e01b145b8061094057506301ffc9a760e01b6001600160e01b0319831614610940565b6000818152606760205260409020546001600160a01b03166111ca5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b60565b3033036121715761212361316f565b81146111ca5760405162461bcd60e51b815260206004820152601760248201527f52656769737472793a20544f4b454e5f494e56414c49440000000000000000006044820152606401610b60565b6111ca816135f8565b600061218582612d97565b9050806001600160a01b0316836001600160a01b0316036121f25760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b6064820152608401610b60565b806001600160a01b031661220461229c565b6001600160a01b0316148061222057506122208161088861229c565b6122925760405162461bcd60e51b815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c00006064820152608401610b60565b610a138383613626565b60006122a6613694565b905090565b6001600160a01b0382166123015760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610b60565b6000818152606760205260409020546001600160a01b0316156123665760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610b60565b612372600083836136af565b6001600160a01b038216600090815260686020526040812080546001929061239b908490614f39565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b03861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b6000612403612a4b565b905061240f8183613626565b60008051602061529383398151915254604080516020808201869052825180830390910181528183019283905263e3dec8fb60e01b9092526001600160a01b0390921691829163e3dec8fb9161246c918891309190604401614f4c565b600060405180830381600087803b15801561248657600080fd5b505af115801561249a573d6000803e3d6000fd5b5050505050505050565b6060610db7836040516020016124ba9190614c1f565b6040516020818303038152906040528051906020012060001c8361378b565b60606124e4856135f8565b600080876001600160a01b0316866124fe8b8a8989613183565b60405161250b9190614c1f565b60006040518083038160008787f1925050503d8060008114612549576040519150601f19603f3d011682016040523d82523d6000602084013e61254e565b606091505b50909250905061255f603f87614f8e565b5a1161256d5761256d614fa2565b6125ad82826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061386d565b9998505050505050505050565b805160009081905b801561260c578291506125f882856125db600185614fb8565b815181106125eb576125eb614ab5565b60200260200101516138a6565b92508061260481614fcb565b9150506125c2565b50915091565b60005b848110156111705761266e86868381811061263257612632614ab5565b90506020028101906126449190614acb565b86868581811061265657612656614ab5565b90506020028101906126689190614acb565b86612bf3565b8061267881614b27565b915050612615565b606060008260008151811061269757612697614ab5565b602002602001015190506000600190505b8351811015611df757818482815181106126c4576126c4614ab5565b60200260200101516040516020016126dd929190614fe2565b604051602081830303815290604052915080806126f990614b27565b9150506126a8565b61dead6001600160a01b0384161480159061273357506001600160a01b03831660009081526101356020526040902054155b15610a1357610a13838383612df7565b60008061274f8361122d565b90506001600160a01b03811615801590610cab5750806001600160a01b0316846001600160a01b031614806127a957506001600160a01b038082166000908152606a602090815260408083209388168352929052205460ff165b80610cab5750836001600160a01b03166127c2846109d8565b6001600160a01b031614949350505050565b6127dd81613952565b6040516020016127ef91815260200190565b60408051601f198184030181528282528051602091820120600085815260cb9092529181209190915582917f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9190a250565b826001600160a01b031661285482612d97565b6001600160a01b0316146128b85760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b6064820152608401610b60565b6001600160a01b03821661291a5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610b60565b6129258383836136af565b612930600082613626565b6001600160a01b0383166000908152606860205260408120805460019290612959908490614fb8565b90915550506001600160a01b0382166000908152606860205260408120805460019290612987908490614f39565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60005b8481101561117057612a39868683818110612a0857612a08614ab5565b90506020020135858584818110612a2157612a21614ab5565b9050602002810190612a339190614acb565b85612cd2565b80612a4381614b27565b9150506129eb565b600080516020615293833981519152546000906001600160a01b03168015612b485760405163721804d360e11b81523060048201526000906001600160a01b0383169063e43009a690602401602060405180830381865afa158015612ab4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ad8919061501e565b60405163e66f960360e01b8152600481018290529091506001600160a01b0383169063e66f960390602401602060405180830381865afa158015612b20573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b449190615037565b9250505b5090565b6000612b5782612d97565b9050612b65816000846136af565b612b70600083613626565b6001600160a01b0381166000908152606860205260408120805460019290612b99908490614fb8565b909155505060008281526067602052604080822080546001600160a01b0319169055518391906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b60008585604051602001612c08929190615054565b60408051601f198184030181528282528051602091820120601f8901829004820284018201909252878352909250612c5c9183918990899081908401838280828437600092019190915250612d7292505050565b6111708187878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061397a915050565b612cdb84613aaf565b612d275760405162461bcd60e51b815260206004820152601c60248201527f5265636f726453746f726167653a204b45595f4e4f545f464f554e44000000006044820152606401610b60565b6114a584612d3486611962565b85858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525087925061397a915050565b612d7b82613aaf565b61108457600082815260c960205260409020610a138282615064565b6000818152606760205260408120546001600160a01b0316806109405760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b60565b6000828152610138602052604090208054612e1190614a66565b9050600003612e3557600082815261013860205260409020612e338282615064565b505b6001600160a01b03831660008181526101356020526040808220859055518492917feb76a21470988c474a21f690cc28fee1ed511bd812dc3c21fd0f49c5e5d4708a91a3505050565b606080612e8a84611962565b9150612e96848461378b565b90509250929050565b6000818152610137602052604081205460ff16801561094057506101366000612ec661229c565b6001600160a01b0316815260208101919091526040016000205460ff1692915050565b60008051602061529383398151915254604051633805550f60e01b81526001600160a01b03909116908190633805550f90612f2a9086908690600401614d69565b600060405180830381600087803b158015612f4457600080fd5b505af1158015610ef5573d6000803e3d6000fd5b816001600160a01b0316836001600160a01b031603612fb95760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610b60565b6001600160a01b038381166000818152606a6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561306d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613091919061501e565b9050600061313f8660600151805190602001208688602001516040516020016130df9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561316557508551613165906001600160a01b03168286613ad5565b9695505050505050565b60003033036131805750601f193601355b90565b606082858560405160200161319a93929190615123565b6040516020818303038152906040529050949350505050565b606081516001600160401b038111156131ce576131ce6144d7565b60405190808252806020026020018201604052801561320157816020015b60608152602001906001900390816131ec5790505b50905060005b82518110156113ff57600080306001600160a01b031685848151811061322f5761322f614ab5565b60200260200101516040516132449190614c1f565b600060405180830381855af49150503d806000811461327f576040519150601f19603f3d011682016040523d82523d6000602084013e613284565b606091505b50915091506132ac82826040518060600160405280602781526020016152b36027913961386d565b8484815181106132be576132be614ab5565b6020026020010181905250505080806132d690614b27565b915050613207565b6132e9848484612841565b6132f584848484613c17565b6114a55760405162461bcd60e51b8152600401610b6090615162565b6000818152610137602052604090205460ff16156111ca5760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a20544f4b454e5f555047524144454400000000000000006044820152606401610b60565b61337b84846122ab565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952836040516133ab9190613f78565b60405180910390a280156114a5576114a5848484612701565b6060610133805461095590614a66565b6060816000036133fb5750506040805180820190915260018152600360fc1b602082015290565b8160005b8115613425578061340f81614b27565b915061341e9050600a83614f8e565b91506133ff565b6000816001600160401b0381111561343f5761343f6144d7565b6040519080825280601f01601f191660200182016040528015613469576020820181803683370190505b5090505b8415610cab5761347e600183614fb8565b915061348b600a866151b4565b613496906030614f39565b60f81b8183815181106134ab576134ab614ab5565b60200101906001600160f81b031916908160001a9053506134cd600a86614f8e565b945061346d565b6134dd816127d4565b610ea08585858585612612565b6001600160a01b03811660008181526101356020526040808220829055517ffcf5eec0cfa3e6332f5f0e63ec242d71f866a61d121d6cdf5c2eb3b668a26c4f9190a250565b600054610100900460ff166135565760405162461bcd60e51b8152600401610b60906151c8565b60656135628382615064565b506066610a138282615064565b600054610100900460ff166135965760405162461bcd60e51b8152600401610b60906151c8565b565b600054610100900460ff166135bf5760405162461bcd60e51b8152600401610b60906151c8565b6111ca81613d1c565b600054610100900460ff166135ef5760405162461bcd60e51b8152600401610b60906151c8565b6111ca81613d75565b60008181526101006020526040902054613613906001614f39565b6000918252610100602052604090912055565b600081815260696020526040902080546001600160a01b0319166001600160a01b038416908117909155819061365b82612d97565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60003033036136aa575060331936013560601c90565b503390565b6001600160a01b0382166136c6576136c681613311565b600081815261013960205260409020546001600160401b031615613761576001600160a01b0382161580159061371557506136ff612a4b565b6001600160a01b0316826001600160a01b031614155b6137615760405162461bcd60e51b815260206004820152601960248201527f52656769737472793a20544f4b454e5f455850495241424c45000000000000006044820152606401610b60565b6001600160a01b03831660009081526101356020526040902054819003610a1357610a13836134ea565b606061379682612e9f565b156137b05750604080516020810190915260008152610940565b60ca60006137bd84613952565b8152602001908152602001600020600084815260200190815260200160002080546137e790614a66565b80601f016020809104026020016040519081016040528092919081815260200182805461381390614a66565b80156138605780601f1061383557610100808354040283529160200191613860565b820191906000526020600020905b81548152906001019060200180831161384357829003601f168201915b5050505050905092915050565b6060831561387c575081610db7565b82511561388c5782518084602001fd5b8160405162461bcd60e51b8152600401610b609190613f78565b600081516000036138f15760405162461bcd60e51b815260206004820152601560248201527452656769737472793a204c4142454c5f454d50545960581b6044820152606401610b60565b82826040516020016139039190614c1f565b60405160208183030381529060405280519060200120604051602001613933929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b600081815260cb602052604081205415612b4857600082815260cb6020526040902054610940565b60ca600061398783613952565b8152602001908152602001600020600085815260200190815260200160002080546139b190614a66565b9050600003613a0957826040516139c89190614c1f565b6040518091039020817f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f8685604051613a009190613f78565b60405180910390a35b8160ca6000613a1784613952565b815260200190815260200160002060008681526020019081526020016000209081613a429190615064565b5081604051613a519190614c1f565b604051809103902083604051613a679190614c1f565b6040518091039020827f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d928686604051613aa19291906146e2565b60405180910390a450505050565b600081815260c9602052604081208054829190613acb90614a66565b9050119050919050565b6000806000613ae48585613dc3565b90925090506000816004811115613afd57613afd615213565b148015613b1b5750856001600160a01b0316826001600160a01b0316145b15613b2b57600192505050610db7565b600080876001600160a01b0316631626ba7e60e01b8888604051602401613b53929190615229565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051613b919190614c1f565b600060405180830381855afa9150503d8060008114613bcc576040519150601f19603f3d011682016040523d82523d6000602084013e613bd1565b606091505b5091509150818015613be4575080516020145b8015613c0b57508051630b135d3f60e11b90613c09908301602090810190840161501e565b145b98975050505050505050565b60006001600160a01b0384163b15613d1457836001600160a01b031663150b7a02613c4061229c565b8786866040518563ffffffff1660e01b8152600401613c629493929190615242565b6020604051808303816000875af1925050508015613c9d575060408051601f3d908101601f19168201909252613c9a91810190615275565b60015b613cfa573d808015613ccb576040519150601f19603f3d011682016040523d82523d6000602084013e613cd0565b606091505b508051600003613cf25760405162461bcd60e51b8152600401610b6090615162565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610cab565b506001610cab565b600054610100900460ff16613d435760405162461bcd60e51b8152600401610b60906151c8565b806000805160206152938339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b600054610100900460ff16613d9c5760405162461bcd60e51b8152600401610b60906151c8565b807f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87613d54565b6000808251604103613df95760208301516040840151606085015160001a613ded87828585613e08565b94509450505050613e01565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613e3f5750600090506003613eec565b8460ff16601b14158015613e5757508460ff16601c14155b15613e685750600090506004613eec565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613ebc573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613ee557600060019250925050613eec565b9150600090505b94509492505050565b6001600160e01b0319811681146111ca57600080fd5b600060208284031215613f1d57600080fd5b8135610db781613ef5565b60005b83811015613f43578181015183820152602001613f2b565b50506000910152565b60008151808452613f64816020860160208601613f28565b601f01601f19169290920160200192915050565b602081526000610db76020830184613f4c565b600060208284031215613f9d57600080fd5b5035919050565b6001600160a01b03811681146111ca57600080fd5b60008060408385031215613fcc57600080fd5b8235613fd781613fa4565b946020939093013593505050565b60008083601f840112613ff757600080fd5b5081356001600160401b0381111561400e57600080fd5b602083019150836020828501011115613e0157600080fd5b60008060008060006080868803121561403e57600080fd5b853561404981613fa4565b9450602086013561405981613fa4565b93506040860135925060608601356001600160401b0381111561407b57600080fd5b61408788828901613fe5565b969995985093965092949392505050565b60008083601f8401126140aa57600080fd5b5081356001600160401b038111156140c157600080fd5b6020830191508360208260051b8501011115613e0157600080fd5b6000806000604084860312156140f157600080fd5b83356001600160401b0381111561410757600080fd5b61411386828701614098565b909790965060209590950135949350505050565b600082825180855260208086019550808260051b84010181860160005b8481101561417257601f19868403018952614160838351613f4c565b98840198925090830190600101614144565b5090979650505050505050565b602081526000610db76020830184614127565b6000806000604084860312156141a757600080fd5b83356001600160401b038111156141bd57600080fd5b61411386828701613fe5565b6000806000604084860312156141de57600080fd5b83356001600160401b03808211156141f557600080fd5b908501906080828803121561420957600080fd5b9093506020850135908082111561421f57600080fd5b5061422c86828701613fe5565b9497909650939450505050565b8035801515811461124557600080fd5b60008060008060008060008060a0898b03121561426557600080fd5b883561427081613fa4565b975060208901356001600160401b038082111561428c57600080fd5b6142988c838d01614098565b909950975060408b01359150808211156142b157600080fd5b6142bd8c838d01614098565b909750955060608b01359150808211156142d657600080fd5b506142e38b828c01614098565b90945092506142f6905060808a01614239565b90509295985092959890939650565b60008060006060848603121561431a57600080fd5b833561432581613fa4565b9250602084013561433581613fa4565b929592945050506040919091013590565b6000806020838503121561435957600080fd5b82356001600160401b0381111561436f57600080fd5b61437b85828601614098565b90969095509350505050565b60008060008060006060868803121561439f57600080fd5b85356001600160401b03808211156143b657600080fd5b6143c289838a01614098565b909750955060208801359150808211156143db57600080fd5b506143e888828901614098565b96999598509660400135949350505050565b6000806040838503121561440d57600080fd5b82356001600160401b0381168114613fd757600080fd5b60008060008060006060868803121561443c57600080fd5b85356001600160401b038082111561445357600080fd5b61445f89838a01613fe5565b9097509550602088013591508082111561447857600080fd5b506143e888828901613fe5565b6000806000806060858703121561449b57600080fd5b8435935060208501356001600160401b038111156144b857600080fd5b6144c487828801613fe5565b9598909750949560400135949350505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715614515576145156144d7565b604052919050565b600082601f83011261452e57600080fd5b81356001600160401b03811115614547576145476144d7565b61455a601f8201601f19166020016144ed565b81815284602083860101111561456f57600080fd5b816020850160208301376000918101602001919091529392505050565b60006020828403121561459e57600080fd5b81356001600160401b038111156145b457600080fd5b610cab8482850161451d565b6000602082840312156145d257600080fd5b8135610db781613fa4565b60006001600160401b038211156145f6576145f66144d7565b5060051b60200190565b600061461361460e846145dd565b6144ed565b8381529050602080820190600585901b84018681111561463257600080fd5b845b8181101561466d5780356001600160401b038111156146535760008081fd5b61465f8982890161451d565b855250928201928201614634565b505050509392505050565b60006020828403121561468a57600080fd5b81356001600160401b038111156146a057600080fd5b8201601f810184136146b157600080fd5b610cab84823560208401614600565b600080604083850312156146d357600080fd5b50508035926020909101359150565b6040815260006146f56040830185613f4c565b8281036020840152610db38185613f4c565b6000806000806060858703121561471d57600080fd5b843561472881613fa4565b93506020850135925060408501356001600160401b0381111561474a57600080fd5b61475687828801613fe5565b95989497509550505050565b60008060008060008060006080888a03121561477d57600080fd5b87356001600160401b038082111561479457600080fd5b6147a08b838c01613fe5565b909950975060208a0135965060408a01359150808211156147c057600080fd5b6147cc8b838c01614098565b909650945060608a01359150808211156147e557600080fd5b506147f28a828b01614098565b989b979a50959850939692959293505050565b6000806020838503121561481857600080fd5b82356001600160401b0381111561482e57600080fd5b61437b85828601613fe5565b6000806040838503121561484d57600080fd5b823561485881613fa4565b9150612e9660208401614239565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156148bb57603f198886030184526148a9858351613f4c565b9450928501929085019060010161488d565b5092979650505050505050565b6040815260006148db6040830185614127565b8281036020840152610db38185614127565b6000806000806080858703121561490357600080fd5b843561490e81613fa4565b9350602085013561491e81613fa4565b92506040850135915060608501356001600160401b0381111561494057600080fd5b61494c8782880161451d565b91505092959194509250565b60008060006040848603121561496d57600080fd5b833561497881613fa4565b925060208401356001600160401b0381111561499357600080fd5b61422c86828701613fe5565b600080604083850312156149b257600080fd5b82356149bd81613fa4565b915060208301356149cd81613fa4565b809150509250929050565b6000806000604084860312156149ed57600080fd5b8335925060208401356001600160401b0381111561499357600080fd5b60008060008060808587031215614a2057600080fd5b8435614a2b81613fa4565b93506020850135614a3b81613fa4565b92506040850135614a4b81613fa4565b91506060850135614a5b81613fa4565b939692955090935050565b600181811c90821680614a7a57607f821691505b6020821081036113ff57634e487b7160e01b600052602260045260246000fd5b600060208284031215614aac57600080fd5b610db782614239565b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112614ae257600080fd5b8301803591506001600160401b03821115614afc57600080fd5b602001915036819003821315613e0157600080fd5b634e487b7160e01b600052601160045260246000fd5b600060018201614b3957614b39614b11565b5060010190565b60208082526027908201527f52656769737472793a2053454e4445525f49535f4e4f545f4d494e54494e475f60408201526626a0a720a3a2a960c91b606082015260800190565b6000610db7368484614600565b60208082526029908201527f52656769737472793a2053454e4445525f49535f4e4f545f415050524f5645446040820152682fa7a92fa7aba722a960b91b606082015260800190565b60208082526022908201527f52656769737472793a20494e53554646494349454e545f5045524d495353494f6040820152614e5360f01b606082015260800190565b60008251614c31818460208701613f28565b9190910192915050565b601f821115610a1357600081815260208120601f850160051c81016020861015614c625750805b601f850160051c820191505b8181101561117057828155600101614c6e565b6001600160401b03831115614c9857614c986144d7565b614cac83614ca68354614a66565b83614c3b565b6000601f841160018114614ce05760008515614cc85750838201355b600019600387901b1c1916600186901b178355610ea0565b600083815260209020601f19861690835b82811015614d115786850135825560209485019460019092019101614cf1565b5086821015614d2e5760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b602081526000610cab602083018486614d40565b600060808236031215614d8f57600080fd5b604051608081016001600160401b038282108183111715614db257614db26144d7565b8160405284359150614dc382613fa4565b81835260208501356020840152604085013560408401526060850135915080821115614dee57600080fd5b50614dfb3682860161451d565b60608301525092915050565b6000614e1561460e846145dd565b80848252602080830192508560051b850136811115614e3357600080fd5b855b81811015614e6e5780356001600160401b03811115614e545760008081fd5b614e6036828a0161451d565b865250938201938201614e35565b50919695505050505050565b60008351614e8c818460208801613f28565b835190830190614ea0818360208801613f28565b01949350505050565b60006020808385031215614ebc57600080fd5b82356001600160401b03811115614ed257600080fd5b8301601f81018513614ee357600080fd5b8035614ef161460e826145dd565b81815260059190911b82018301908381019087831115614f1057600080fd5b928401925b82841015614f2e57833582529284019290840190614f15565b979650505050505050565b8082018082111561094057610940614b11565b6001600160a01b03848116825283166020820152606060408201819052600090610b6990830184613f4c565b634e487b7160e01b600052601260045260246000fd5b600082614f9d57614f9d614f78565b500490565b634e487b7160e01b600052600160045260246000fd5b8181038181111561094057610940614b11565b600081614fda57614fda614b11565b506000190190565b60008351614ff4818460208801613f28565b601760f91b9083019081528351615012816001840160208801613f28565b01600101949350505050565b60006020828403121561503057600080fd5b5051919050565b60006020828403121561504957600080fd5b8151610db781613fa4565b8183823760009101908152919050565b81516001600160401b0381111561507d5761507d6144d7565b6150918161508b8454614a66565b84614c3b565b602080601f8311600181146150c657600084156150ae5750858301515b600019600386901b1c1916600185901b178555611170565b600085815260208120601f198616915b828110156150f5578886015182559484019460019091019084016150d6565b50858210156151135787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60008451615135818460208901613f28565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6000826151c3576151c3614f78565b500690565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b634e487b7160e01b600052602160045260246000fd5b828152604060208201526000610cab6040830184613f4c565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061316590830184613f4c565b60006020828403121561528757600080fd5b8151610db781613ef556febe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a"; -const isSuperArgs = (xs) => xs.length > 1; -class UNSRegistry__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(overrides) { - return super.getDeployTransaction(overrides || {}); - } - deploy(overrides) { - return super.deploy(overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.UNSRegistry__factory = UNSRegistry__factory; -UNSRegistry__factory.bytecode = _bytecode; -UNSRegistry__factory.abi = _abi; diff --git a/dist/types/factories/contracts/cns/ICNSRegistry__factory.d.ts b/dist/types/factories/contracts/cns/ICNSRegistry__factory.d.ts deleted file mode 100644 index c4cefeeb..00000000 --- a/dist/types/factories/contracts/cns/ICNSRegistry__factory.d.ts +++ /dev/null @@ -1,322 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { ICNSRegistry, ICNSRegistryInterface } from "../../../contracts/cns/ICNSRegistry"; -export declare class ICNSRegistry__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "approved"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Approval"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "ApprovalForAll"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Transfer"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "approve"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "balanceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "balance"; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "burn"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }]; - readonly name: "childIdOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getApproved"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly name: "isApprovedForAll"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "spender"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "isApprovedOrOwner"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "name"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "ownerOf"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "resolverOf"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly internalType: "bool"; - readonly name: "_approved"; - readonly type: "bool"; - }]; - readonly name: "setApprovalForAll"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "symbol"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "tokenURI"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "transferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): ICNSRegistryInterface; - static connect(address: string, runner?: ContractRunner | null): ICNSRegistry; -} -//# sourceMappingURL=ICNSRegistry__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/cns/ICNSRegistry__factory.d.ts.map b/dist/types/factories/contracts/cns/ICNSRegistry__factory.d.ts.map deleted file mode 100644 index af174248..00000000 --- a/dist/types/factories/contracts/cns/ICNSRegistry__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ICNSRegistry__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/cns/ICNSRegistry__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,YAAY,EACZ,qBAAqB,EACtB,MAAM,qCAAqC,CAAC;AA+Z7C,qBAAa,qBAAqB;IAChC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,qBAAqB;IAG/C,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,YAAY;CAGhB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/cns/ICNSRegistry__factory.js b/dist/types/factories/contracts/cns/ICNSRegistry__factory.js deleted file mode 100644 index fd0436ab..00000000 --- a/dist/types/factories/contracts/cns/ICNSRegistry__factory.js +++ /dev/null @@ -1,426 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ICNSRegistry__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "approved", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Approval", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: false, - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "ApprovalForAll", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Transfer", - type: "event", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "approve", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "balance", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "burn", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - ], - name: "childIdOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getApproved", - outputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - name: "isApprovedForAll", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "spender", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "isApprovedOrOwner", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "name", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "ownerOf", - outputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "resolverOf", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "safeTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "safeTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "bool", - name: "_approved", - type: "bool", - }, - ], - name: "setApprovalForAll", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "symbol", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "tokenURI", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "transferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -class ICNSRegistry__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.ICNSRegistry__factory = ICNSRegistry__factory; -ICNSRegistry__factory.abi = _abi; diff --git a/dist/types/factories/contracts/cns/IMintingController__factory.d.ts b/dist/types/factories/contracts/cns/IMintingController__factory.d.ts deleted file mode 100644 index 742ec42c..00000000 --- a/dist/types/factories/contracts/cns/IMintingController__factory.d.ts +++ /dev/null @@ -1,112 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IMintingController, IMintingControllerInterface } from "../../../contracts/cns/IMintingController"; -export declare class IMintingController__factory { - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }]; - readonly name: "mintSLD"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }, { - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }]; - readonly name: "mintSLDWithResolver"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }]; - readonly name: "safeMintSLD"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "safeMintSLD"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }, { - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "safeMintSLDWithResolver"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }, { - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }]; - readonly name: "safeMintSLDWithResolver"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): IMintingControllerInterface; - static connect(address: string, runner?: ContractRunner | null): IMintingController; -} -//# sourceMappingURL=IMintingController__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/cns/IMintingController__factory.d.ts.map b/dist/types/factories/contracts/cns/IMintingController__factory.d.ts.map deleted file mode 100644 index bce23b9b..00000000 --- a/dist/types/factories/contracts/cns/IMintingController__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IMintingController__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/cns/IMintingController__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,kBAAkB,EAClB,2BAA2B,EAC5B,MAAM,2CAA2C,CAAC;AA0InD,qBAAa,2BAA2B;IACtC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,2BAA2B;IAGrD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,kBAAkB;CAGtB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/cns/IMintingController__factory.js b/dist/types/factories/contracts/cns/IMintingController__factory.js deleted file mode 100644 index f0d64b93..00000000 --- a/dist/types/factories/contracts/cns/IMintingController__factory.js +++ /dev/null @@ -1,149 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IMintingController__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - ], - name: "mintSLD", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - { - internalType: "address", - name: "resolver", - type: "address", - }, - ], - name: "mintSLDWithResolver", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - ], - name: "safeMintSLD", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "safeMintSLD", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - { - internalType: "address", - name: "resolver", - type: "address", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "safeMintSLDWithResolver", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - { - internalType: "address", - name: "resolver", - type: "address", - }, - ], - name: "safeMintSLDWithResolver", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -class IMintingController__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IMintingController__factory = IMintingController__factory; -IMintingController__factory.abi = _abi; diff --git a/dist/types/factories/contracts/cns/IResolver__factory.d.ts b/dist/types/factories/contracts/cns/IResolver__factory.d.ts deleted file mode 100644 index 1851ccf8..00000000 --- a/dist/types/factories/contracts/cns/IResolver__factory.d.ts +++ /dev/null @@ -1,124 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IResolver, IResolverInterface } from "../../../contracts/cns/IResolver"; -export declare class IResolver__factory { - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "get"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "keyHash"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getByHash"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }, { - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getMany"; - readonly outputs: readonly [{ - readonly internalType: "string[]"; - readonly name: ""; - readonly type: "string[]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256[]"; - readonly name: "keyHashes"; - readonly type: "uint256[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getManyByHash"; - readonly outputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "preconfigure"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }, { - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "set"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): IResolverInterface; - static connect(address: string, runner?: ContractRunner | null): IResolver; -} -//# sourceMappingURL=IResolver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/cns/IResolver__factory.d.ts.map b/dist/types/factories/contracts/cns/IResolver__factory.d.ts.map deleted file mode 100644 index 0d47bc17..00000000 --- a/dist/types/factories/contracts/cns/IResolver__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IResolver__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/cns/IResolver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,SAAS,EACT,kBAAkB,EACnB,MAAM,kCAAkC,CAAC;AA6J1C,qBAAa,kBAAkB;IAC7B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,kBAAkB;IAG5C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,SAAS;CAG3E"} \ No newline at end of file diff --git a/dist/types/factories/contracts/cns/IResolver__factory.js b/dist/types/factories/contracts/cns/IResolver__factory.js deleted file mode 100644 index 13499831..00000000 --- a/dist/types/factories/contracts/cns/IResolver__factory.js +++ /dev/null @@ -1,168 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IResolver__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "string", - name: "key", - type: "string", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "get", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "keyHash", - type: "uint256", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getByHash", - outputs: [ - { - internalType: "string", - name: "key", - type: "string", - }, - { - internalType: "string", - name: "value", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getMany", - outputs: [ - { - internalType: "string[]", - name: "", - type: "string[]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256[]", - name: "keyHashes", - type: "uint256[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getManyByHash", - outputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "preconfigure", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "key", - type: "string", - }, - { - internalType: "string", - name: "value", - type: "string", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "set", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -class IResolver__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IResolver__factory = IResolver__factory; -IResolver__factory.abi = _abi; diff --git a/dist/types/factories/contracts/cns/IURIPrefixController__factory.d.ts b/dist/types/factories/contracts/cns/IURIPrefixController__factory.d.ts deleted file mode 100644 index bd5cdcbd..00000000 --- a/dist/types/factories/contracts/cns/IURIPrefixController__factory.d.ts +++ /dev/null @@ -1,18 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IURIPrefixController, IURIPrefixControllerInterface } from "../../../contracts/cns/IURIPrefixController"; -export declare class IURIPrefixController__factory { - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "prefix"; - readonly type: "string"; - }]; - readonly name: "setTokenURIPrefix"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): IURIPrefixControllerInterface; - static connect(address: string, runner?: ContractRunner | null): IURIPrefixController; -} -//# sourceMappingURL=IURIPrefixController__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/cns/IURIPrefixController__factory.d.ts.map b/dist/types/factories/contracts/cns/IURIPrefixController__factory.d.ts.map deleted file mode 100644 index 9f2e65fd..00000000 --- a/dist/types/factories/contracts/cns/IURIPrefixController__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IURIPrefixController__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/cns/IURIPrefixController__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,oBAAoB,EACpB,6BAA6B,EAC9B,MAAM,6CAA6C,CAAC;AAkBrD,qBAAa,6BAA6B;IACxC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,6BAA6B;IAGvD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,oBAAoB;CAOxB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/cns/IURIPrefixController__factory.js b/dist/types/factories/contracts/cns/IURIPrefixController__factory.js deleted file mode 100644 index 44bb078c..00000000 --- a/dist/types/factories/contracts/cns/IURIPrefixController__factory.js +++ /dev/null @@ -1,29 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IURIPrefixController__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "string", - name: "prefix", - type: "string", - }, - ], - name: "setTokenURIPrefix", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -class IURIPrefixController__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IURIPrefixController__factory = IURIPrefixController__factory; -IURIPrefixController__factory.abi = _abi; diff --git a/dist/types/factories/contracts/cns/index.d.ts b/dist/types/factories/contracts/cns/index.d.ts deleted file mode 100644 index 6726d450..00000000 --- a/dist/types/factories/contracts/cns/index.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -export { ICNSRegistry__factory } from "./ICNSRegistry__factory"; -export { IMintingController__factory } from "./IMintingController__factory"; -export { IResolver__factory } from "./IResolver__factory"; -export { IURIPrefixController__factory } from "./IURIPrefixController__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/cns/index.d.ts.map b/dist/types/factories/contracts/cns/index.d.ts.map deleted file mode 100644 index b1225862..00000000 --- a/dist/types/factories/contracts/cns/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/cns/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/contracts/cns/index.js b/dist/types/factories/contracts/cns/index.js deleted file mode 100644 index bad38ddd..00000000 --- a/dist/types/factories/contracts/cns/index.js +++ /dev/null @@ -1,11 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IURIPrefixController__factory = exports.IResolver__factory = exports.IMintingController__factory = exports.ICNSRegistry__factory = void 0; -var ICNSRegistry__factory_1 = require("./ICNSRegistry__factory"); -Object.defineProperty(exports, "ICNSRegistry__factory", { enumerable: true, get: function () { return ICNSRegistry__factory_1.ICNSRegistry__factory; } }); -var IMintingController__factory_1 = require("./IMintingController__factory"); -Object.defineProperty(exports, "IMintingController__factory", { enumerable: true, get: function () { return IMintingController__factory_1.IMintingController__factory; } }); -var IResolver__factory_1 = require("./IResolver__factory"); -Object.defineProperty(exports, "IResolver__factory", { enumerable: true, get: function () { return IResolver__factory_1.IResolver__factory; } }); -var IURIPrefixController__factory_1 = require("./IURIPrefixController__factory"); -Object.defineProperty(exports, "IURIPrefixController__factory", { enumerable: true, get: function () { return IURIPrefixController__factory_1.IURIPrefixController__factory; } }); diff --git a/dist/types/factories/contracts/custody/ENSCustody__factory.d.ts b/dist/types/factories/contracts/custody/ENSCustody__factory.d.ts deleted file mode 100644 index 6db8192d..00000000 --- a/dist/types/factories/contracts/custody/ENSCustody__factory.d.ts +++ /dev/null @@ -1,790 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../common"; -import type { ENSCustody, ENSCustodyInterface } from "../../../contracts/custody/ENSCustody"; -declare type ENSCustodyConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class ENSCustody__factory extends ContractFactory { - constructor(...args: ENSCustodyConstructorParams); - getDeployTransaction(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): ENSCustody__factory; - static readonly bytecode = "0x60806040523480156200001157600080fd5b506200001c62000022565b620000e4565b600054610100900460ff16156200008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff9081161015620000e2576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b61344180620000f46000396000f3fe60806040526004361061021e5760003560e01c80638da5cb5b11610123578063acf1a841116100ab578063d547741f1161006f578063d547741f14610682578063f14fcbc8146106a2578063f23a6e61146106c2578063f2fde38b146106e2578063ffa1ad741461070257600080fd5b8063acf1a841146105e0578063bc197c8114610600578063c0c53b8b14610620578063cf01585314610640578063d53913931461066057600080fd5b8063a0e3aef1116100f2578063a0e3aef114610534578063a217fddf14610554578063a3f4df7e14610569578063a4247400146105a0578063aa271e1a146105c057600080fd5b80638da5cb5b146104c157806391d14854146104df578063983b2d56146104ff578063986502751461051f57600080fd5b80635fc1964f116101a65780636ccbae5f116101755780636ccbae5f14610439578063715018a61461045957806371e2a6571461046e57806381c81d351461048e57806383e7f6ff146104a157600080fd5b80635fc1964f146103ae578063634486da146103ce5780636352211e146103e15780636a8be89e1461041957600080fd5b80632f2ff15d116101ed5780632f2ff15d146103035780633092afd51461032557806336568abe14610345578063423f6cef14610365578063572b6c051461038557600080fd5b806301ffc9a71461022a578063150b7a021461025f5780631bf7e13e14610298578063248a9ca3146102c557600080fd5b3661022557005b600080fd5b34801561023657600080fd5b5061024a6102453660046125f2565b610733565b60405190151581526020015b60405180910390f35b34801561026b57600080fd5b5061027f61027a366004612672565b610779565b6040516001600160e01b03199091168152602001610256565b3480156102a457600080fd5b506102b86102b33660046126e4565b6108cb565b60405161025691906127a4565b3480156102d157600080fd5b506102f56102e03660046127b7565b600090815260fb602052604090206001015490565b604051908152602001610256565b34801561030f57600080fd5b5061032361031e3660046127d0565b610997565b005b34801561033157600080fd5b50610323610340366004612800565b6109c1565b34801561035157600080fd5b506103236103603660046127d0565b6109d5565b34801561037157600080fd5b5061032361038036600461281d565b610a68565b34801561039157600080fd5b5061024a6103a0366004612800565b6001600160a01b0316301490565b3480156103ba57600080fd5b506103236103c936600461288f565b610bd9565b6103236103dc366004612800565b610c21565b3480156103ed57600080fd5b506104016103fc3660046127b7565b610ce4565b6040516001600160a01b039091168152602001610256565b34801561042557600080fd5b50610323610434366004612800565b610cef565b34801561044557600080fd5b506102f56104543660046127b7565b610d38565b34801561046557600080fd5b50610323610d7e565b34801561047a57600080fd5b5061032361048936600461288f565b610d92565b61032361049c366004612800565b610dda565b3480156104ad57600080fd5b506102f56104bc366004612934565b610e57565b3480156104cd57600080fd5b506097546001600160a01b0316610401565b3480156104eb57600080fd5b5061024a6104fa3660046127d0565b610efa565b34801561050b57600080fd5b5061032361051a366004612800565b610f25565b34801561052b57600080fd5b50610323610f36565b34801561054057600080fd5b506102f561054f366004612a5c565b610f50565b34801561056057600080fd5b506102f5600081565b34801561057557600080fd5b506102b86040518060400160405280600b81526020016a454e5320437573746f647960a81b81525081565b3480156105ac57600080fd5b5061024a6105bb3660046126e4565b610ffc565b3480156105cc57600080fd5b5061024a6105db366004612800565b61104f565b3480156105ec57600080fd5b506103236105fb366004612934565b611069565b34801561060c57600080fd5b5061027f61061b366004612b35565b611222565b34801561062c57600080fd5b5061032361063b366004612bf3565b6112db565b34801561064c57600080fd5b5061032361065b366004612c3e565b611485565b34801561066c57600080fd5b506102f56000805160206133f583398151915281565b34801561068e57600080fd5b5061032361069d3660046127d0565b611592565b3480156106ae57600080fd5b506103236106bd3660046127b7565b6115b7565b3480156106ce57600080fd5b5061027f6106dd366004612d20565b61162b565b3480156106ee57600080fd5b506103236106fd366004612800565b6116bc565b34801561070e57600080fd5b506102b860405180604001604052806005815260200164302e312e3360d81b81525081565b60006001600160e01b03198216630a85bd0160e11b148061076457506001600160e01b03198216630271189760e51b145b806107735750610773826116d8565b92915050565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004546000906001600160a01b0316806107b061170d565b6001600160a01b0316036108a957600080806107ce86880188612d9b565b9250925092506107dd8361171c565b6001600160a01b03841663b88d4fde30600080516020613415833981519152546040516001600160a01b03909116908c9061082390879030906000908b90602001612dfc565b6040516020818303038152906040526040518563ffffffff1660e01b81526004016108519493929190612e3c565b600060405180830381600087803b15801561086b57600080fd5b505af115801561087f573d6000803e3d6000fd5b5050505061089561088f8261174e565b846117d3565b50630a85bd0160e11b93506108c292505050565b6040516344e7d94960e01b815260040160405180910390fd5b95945050505050565b606060005a90506108dd858585610ffc565b6108fa57604051638baa579f60e01b815260040160405180910390fd5b61098c61090a6020870187612800565b3060408801358461091e60608b018b612e6f565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061185e92505050565b9150505b9392505050565b600082815260fb60205260409020600101546109b28161193f565b6109bc8383611950565b505050565b6109c96119d7565b6109d281611a50565b50565b6109dd61170d565b6001600160a01b0316816001600160a01b031614610a5a5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b610a648282611a68565b5050565b80610a7161170d565b6001600160a01b0316610a8382611aed565b6001600160a01b031614610ac55780610a9a61170d565b604051637ea58b1160e01b815260048101929092526001600160a01b03166024820152604401610a51565b610ace82611c03565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052600090610b22906060015b6040516020818303038152906040528051906020012090565b80546001600160a01b0319166001600160a01b0392909216919091179055600060008051602061341583398151915254604051637921219560e11b81523060048201526001600160a01b038681166024830152604482018690526001606483015260a06084830152600060a48301529091169150819063f242432a9060c401600060405180830381600087803b158015610bbb57600080fd5b505af1158015610bcf573d6000803e3d6000fd5b5050505050505050565b610be16119d7565b60005b8151811015610a6457610c0f828281518110610c0257610c02612eb5565b6020026020010151611a50565b80610c1981612ee1565b915050610be4565b610c2c6105db61170d565b610c485760405162461bcd60e51b8152600401610a5190612efa565b6001600160a01b038116610c9e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a51565b610ca781611c1c565b610caf610f36565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610a64573d6000803e3d6000fd5b600061077382611aed565b610cf76119d7565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c500480546001600160a01b0319166001600160a01b0392909216919091179055565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a838156020820152908101829052600090610d7790606001610b09565b5492915050565b610d866119d7565b610d906000611c34565b565b610d9a6119d7565b60005b8151811015610a6457610dc8828281518110610dbb57610dbb612eb5565b6020026020010151611c1c565b80610dd281612ee1565b915050610d9d565b610de56105db61170d565b610e015760405162461bcd60e51b8152600401610a5190612efa565b6001600160a01b038116610ca75760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a51565b6000805160206133d5833981519152546040516383e7f6ff60e01b81526000916001600160a01b031690829082906383e7f6ff90610e9d90899089908990600401612f58565b6040805180830381865afa158015610eb9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610edd9190612f7c565b60208101518151919250610ef091612fca565b9695505050505050565b600091825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610f2d6119d7565b6109d281611c1c565b610d906000805160206133f583398151915261036061170d565b6000805160206133d5833981519152546000906001600160a01b0316806365a69dcf8d85610f7e5730610f80565b8d5b8d8d8d8d8d8d8d6040518a63ffffffff1660e01b8152600401610fab9998979695949392919061306e565b602060405180830381865afa158015610fc8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fec91906130de565b9c9b505050505050505050505050565b600061104761100a856130f7565b3085858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611c8692505050565b949350505050565b60006107736000805160206133f583398151915283610efa565b6110746105db61170d565b6110905760405162461bcd60e51b8152600401610a5190612efa565b6002603354036110e25760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a51565b60026033556000805160206133d5833981519152546040516383e7f6ff60e01b81526001600160a01b039091169060009082906383e7f6ff9061112d90889088908890600401612f58565b6040805180830381865afa158015611149573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061116d9190612f7c565b6020810151815191925061118091612fca565b4710156111a05760405163050205f960e01b815260040160405180910390fd5b816001600160a01b031663acf1a841826020015183600001516111c39190612fca565b8787876040518563ffffffff1660e01b81526004016111e493929190612f58565b6000604051808303818588803b1580156111fd57600080fd5b505af1158015611211573d6000803e3d6000fd5b505060016033555050505050505050565b6000600080516020613415833981519152546001600160a01b031661124561170d565b6001600160a01b03161461126c576040516344e7d94960e01b815260040160405180910390fd5b600061127a83850185612800565b90506112858161171c565b60005b878110156112c4576112b28989838181106112a5576112a5612eb5565b90506020020135836117d3565b806112bc81612ee1565b915050611288565b5063bc197c8160e01b9a9950505050505050505050565b600054610100900460ff16158080156112fb5750600054600160ff909116105b806113155750303b158015611315575060005460ff166001145b6113785760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610a51565b6000805460ff19166001179055801561139b576000805461ff0019166101001790555b6000805160206133d583398151915280546001600160a01b038087166001600160a01b03199283161790925560008051602061341583398151915280548684169083161790557ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004805492851692909116919091179055611419611dc5565b611421611df3565b611429611df3565b611431611e1a565b611439611e51565b801561147f576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6114906105db61170d565b6114ac5760405162461bcd60e51b8152600401610a5190612efa565b6002603354036114fe5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a51565b600260338190555060006115478c8c8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061174e92505050565b905061155281611c03565b6115708c8c846115625730611564565b8c5b8c8c8c8c8c8c8c611e8a565b8161157f5761157f818b6117d3565b5050600160335550505050505050505050565b600082815260fb60205260409020600101546115ad8161193f565b6109bc8383611a68565b60006000805160206133d583398151915254604051631e29f97960e31b8152600481018490526001600160a01b039091169150819063f14fcbc890602401600060405180830381600087803b15801561160f57600080fd5b505af1158015611623573d6000803e3d6000fd5b505050505050565b6000600080516020613415833981519152546001600160a01b031661164e61170d565b6001600160a01b031614611675576040516344e7d94960e01b815260040160405180910390fd5b6001600160a01b038616156116a957600061169283850185612800565b905061169d8161171c565b6116a786826117d3565b505b5063f23a6e6160e01b9695505050505050565b6116c46119d7565b6116cd81611fd5565b6109d260008261204b565b60006001600160e01b03198216637965db0b60e01b148061077357506301ffc9a760e01b6001600160e01b0319831614610773565b6000611717612055565b905090565b6001600160a01b0381166109d25760405163b20f76e360e01b81526001600160a01b0382166004820152602401610a51565b60007f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae60001b826040516020016117859190613195565b604051602081830303815290604052805190602001206040516020016117b5929190918252602082015260400190565b60408051601f19818403018152919052805160209091012092915050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052819061181190606001610b09565b80546001600160a01b0319166001600160a01b039283161790556040519082169083907f45aa97e368889fb3527c1db60c59c2ae91e82f21778613449e46d4208c1c4b1290600090a35050565b606061186985612073565b600080876001600160a01b0316866118838b8a89896120d9565b6040516118909190613195565b60006040518083038160008787f1925050503d80600081146118ce576040519150601f19603f3d011682016040523d82523d6000602084013e6118d3565b606091505b5090925090506118e4603f876131b1565b5a116118f2576118f26131d3565b61193282826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c4544000000000000815250612109565b9998505050505050505050565b6109d28161194b61170d565b612142565b61195a8282610efa565b610a6457600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff1916600117905561199361170d565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6119df61170d565b6001600160a01b03166119fa6097546001600160a01b031690565b6001600160a01b031614610d905760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a51565b6109d26000805160206133f583398151915282611592565b611a728282610efa565b15610a6457600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff19169055611aa961170d565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101829052600090611b2c90606001610b09565b546001600160a01b0316905080611b595760405163124bad6360e31b815260048101839052602401610a51565b30600080516020613415833981519152546040516331a9108f60e11b8152600481018590526001600160a01b0390911690636352211e90602401602060405180830381865afa158015611bb0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bd491906131e9565b6001600160a01b031614611bfe576040516303b673fd60e21b815260048101839052602401610a51565b919050565b303303611c13576109d2816121a6565b6109d281612073565b6109d26000805160206133f58339815191528261204b565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015611ccd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cf191906130de565b90506000611d9f866060015180519060200120868860200151604051602001611d3f9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b9050818660200151148015610ef057508551610ef0906001600160a01b031682866121d0565b600054610100900460ff16611dec5760405162461bcd60e51b8152600401610a5190613206565b6001603355565b600054610100900460ff16610d905760405162461bcd60e51b8152600401610a5190613206565b600054610100900460ff16611e415760405162461bcd60e51b8152600401610a5190613206565b610d90611e4c61170d565b611c34565b600054610100900460ff16611e785760405162461bcd60e51b8152600401610a5190613206565b610d906000611e8561170d565b61204b565b6000805160206133d5833981519152546040516383e7f6ff60e01b81526001600160a01b039091169060009082906383e7f6ff90611ed0908f908f908e90600401612f58565b6040805180830381865afa158015611eec573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f109190612f7c565b60208101518151919250611f2391612fca565b471015611f435760405163050205f960e01b815260040160405180910390fd5b816001600160a01b03166374694a2b82602001518360000151611f669190612fca565b8e8e8e8e8e8e8e8e8e8e6040518c63ffffffff1660e01b8152600401611f959a99989796959493929190613251565b6000604051808303818588803b158015611fae57600080fd5b505af1158015611fc2573d6000803e3d6000fd5b5050505050505050505050505050505050565b611fdd6119d7565b6001600160a01b0381166120425760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610a51565b6109d281611c34565b610a648282611950565b600030330361206b575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290526000906060016040516020818303038152906040528051906020012090506120c88190565b546120d4906001612fca565b905550565b60608285856040516020016120f0939291906132c3565b6040516020818303038152906040529050949350505050565b60608315612118575081610990565b8251156121285782518084602001fd5b8160405162461bcd60e51b8152600401610a5191906127a4565b61214c8282610efa565b610a6457612164816001600160a01b03166014612312565b61216f836020612312565b604051602001612180929190613302565b60408051601f198184030181529082905262461bcd60e51b8252610a51916004016127a4565b6121ae6124ad565b81146109d257604051635637b6af60e11b815260048101829052602401610a51565b60008060006121df85856124c0565b909250905060008160048111156121f8576121f8613377565b1480156122165750856001600160a01b0316826001600160a01b0316145b1561222657600192505050610990565b600080876001600160a01b0316631626ba7e60e01b888860405160240161224e92919061338d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161228c9190613195565b600060405180830381855afa9150503d80600081146122c7576040519150601f19603f3d011682016040523d82523d6000602084013e6122cc565b606091505b50915091508180156122df575080516020145b801561230657508051630b135d3f60e11b9061230490830160209081019084016130de565b145b98975050505050505050565b606060006123218360026133a6565b61232c906002612fca565b6001600160401b0381111561234357612343612849565b6040519080825280601f01601f19166020018201604052801561236d576020820181803683370190505b509050600360fc1b8160008151811061238857612388612eb5565b60200101906001600160f81b031916908160001a905350600f60fb1b816001815181106123b7576123b7612eb5565b60200101906001600160f81b031916908160001a90535060006123db8460026133a6565b6123e6906001612fca565b90505b600181111561245e576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061241a5761241a612eb5565b1a60f81b82828151811061243057612430612eb5565b60200101906001600160f81b031916908160001a90535060049490941c93612457816133bd565b90506123e9565b5083156109905760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610a51565b60003033036120705750601f1936013590565b60008082516041036124f65760208301516040840151606085015160001a6124ea87828585612505565b945094505050506124fe565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561253c57506000905060036125e9565b8460ff16601b1415801561255457508460ff16601c14155b1561256557506000905060046125e9565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156125b9573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166125e2576000600192509250506125e9565b9150600090505b94509492505050565b60006020828403121561260457600080fd5b81356001600160e01b03198116811461099057600080fd5b6001600160a01b03811681146109d257600080fd5b60008083601f84011261264357600080fd5b5081356001600160401b0381111561265a57600080fd5b6020830191508360208285010111156124fe57600080fd5b60008060008060006080868803121561268a57600080fd5b85356126958161261c565b945060208601356126a58161261c565b93506040860135925060608601356001600160401b038111156126c757600080fd5b6126d388828901612631565b969995985093965092949392505050565b6000806000604084860312156126f957600080fd5b83356001600160401b038082111561271057600080fd5b908501906080828803121561272457600080fd5b9093506020850135908082111561273a57600080fd5b5061274786828701612631565b9497909650939450505050565b60005b8381101561276f578181015183820152602001612757565b50506000910152565b60008151808452612790816020860160208601612754565b601f01601f19169290920160200192915050565b6020815260006109906020830184612778565b6000602082840312156127c957600080fd5b5035919050565b600080604083850312156127e357600080fd5b8235915060208301356127f58161261c565b809150509250929050565b60006020828403121561281257600080fd5b81356109908161261c565b6000806040838503121561283057600080fd5b823561283b8161261c565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561288757612887612849565b604052919050565b600060208083850312156128a257600080fd5b82356001600160401b03808211156128b957600080fd5b818501915085601f8301126128cd57600080fd5b8135818111156128df576128df612849565b8060051b91506128f084830161285f565b818152918301840191848101908884111561290a57600080fd5b938501935b8385101561230657843592506129248361261c565b828252938501939085019061290f565b60008060006040848603121561294957600080fd5b83356001600160401b0381111561295f57600080fd5b61296b86828701612631565b909790965060209590950135949350505050565b60006001600160401b0383111561299857612998612849565b6129ab601f8401601f191660200161285f565b90508281528383830111156129bf57600080fd5b828260208301376000602084830101529392505050565b600082601f8301126129e757600080fd5b6109908383356020850161297f565b60008083601f840112612a0857600080fd5b5081356001600160401b03811115612a1f57600080fd5b6020830191508360208260051b85010111156124fe57600080fd5b80358015158114611bfe57600080fd5b803561ffff81168114611bfe57600080fd5b6000806000806000806000806000806101208b8d031215612a7c57600080fd5b8a356001600160401b0380821115612a9357600080fd5b612a9f8e838f016129d6565b9b5060208d01359150612ab18261261c565b90995060408c0135985060608c0135975060808c013590612ad18261261c565b90965060a08c01359080821115612ae757600080fd5b50612af48d828e016129f6565b9096509450612b07905060c08c01612a3a565b9250612b1560e08c01612a4a565b9150612b246101008c01612a3a565b90509295989b9194979a5092959850565b60008060008060008060008060a0898b031215612b5157600080fd5b8835612b5c8161261c565b97506020890135612b6c8161261c565b965060408901356001600160401b0380821115612b8857600080fd5b612b948c838d016129f6565b909850965060608b0135915080821115612bad57600080fd5b612bb98c838d016129f6565b909650945060808b0135915080821115612bd257600080fd5b50612bdf8b828c01612631565b999c989b5096995094979396929594505050565b600080600060608486031215612c0857600080fd5b8335612c138161261c565b92506020840135612c238161261c565b91506040840135612c338161261c565b809150509250925092565b60008060008060008060008060008060006101208c8e031215612c6057600080fd5b6001600160401b03808d351115612c7657600080fd5b612c838e8e358f01612631565b909c509a50612c9560208e013561261c565b60208d0135995060408d0135985060608d01359750612cb760808e013561261c565b60808d013596508060a08e01351115612ccf57600080fd5b50612ce08d60a08e01358e016129f6565b9095509350612cf160c08d01612a3a565b9250612cff60e08d01612a4a565b9150612d0e6101008d01612a3a565b90509295989b509295989b9093969950565b60008060008060008060a08789031215612d3957600080fd5b8635612d448161261c565b95506020870135612d548161261c565b9450604087013593506060870135925060808701356001600160401b03811115612d7d57600080fd5b612d8989828a01612631565b979a9699509497509295939492505050565b600080600060608486031215612db057600080fd5b8335612dbb8161261c565b92506020840135612dcb8161261c565b915060408401356001600160401b03811115612de657600080fd5b612df2868287016129d6565b9150509250925092565b608081526000612e0f6080830187612778565b6001600160a01b03958616602084015261ffff949094166040830152509216606090920191909152919050565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090610ef090830184612778565b6000808335601e19843603018112612e8657600080fd5b8301803591506001600160401b03821115612ea057600080fd5b6020019150368190038213156124fe57600080fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201612ef357612ef3612ecb565b5060010190565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b604081526000612f6c604083018587612f2f565b9050826020830152949350505050565b600060408284031215612f8e57600080fd5b604051604081018181106001600160401b0382111715612fb057612fb0612849565b604052825181526020928301519281019290925250919050565b8082018082111561077357610773612ecb565b81835260006020808501808196508560051b810191508460005b878110156130615782840389528135601e1988360301811261301857600080fd5b870185810190356001600160401b0381111561303357600080fd5b80360382131561304257600080fd5b61304d868284612f2f565b9a87019a9550505090840190600101612ff7565b5091979650505050505050565b60006101008083526130828184018d612778565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a085015290506130bc818789612fdd565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b6000602082840312156130f057600080fd5b5051919050565b60006080823603121561310957600080fd5b604051608081016001600160401b03828210818311171561312c5761312c612849565b816040528435915061313d8261261c565b8183526020850135602084015260408501356040840152606085013591508082111561316857600080fd5b50830136601f82011261317a57600080fd5b6131893682356020840161297f565b60608301525092915050565b600082516131a7818460208701612754565b9190910192915050565b6000826131ce57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b6000602082840312156131fb57600080fd5b81516109908161261c565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60006101008083526132668184018d8f612f2f565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a085015290506132a0818789612fdd565b94151560c0840152505061ffff9190911660e09091015298975050505050505050565b600084516132d5818460208901612754565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081526000835161333a816017850160208801612754565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835161336b816028840160208801612754565b01602801949350505050565b634e487b7160e01b600052602160045260246000fd5b8281526040602082015260006110476040830184612778565b808202811582820484141761077357610773612ecb565b6000816133cc576133cc612ecb565b50600019019056fe412386de53449251cbf7ce1f4c6a038bf9c0746e62d331b08ef0c3fa7d0ab6729f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a660793a5062d506d35cc8f1beda67ee5028c16bfcd9c923d5bfc439c04bd929b1a164736f6c6343000811000a"; - static readonly abi: readonly [{ - readonly inputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "constructor"; - }, { - readonly inputs: readonly []; - readonly name: "CustodyNotEnoughBalance"; - readonly type: "error"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "InvalidForwardedToken"; - readonly type: "error"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }]; - readonly name: "InvalidOwner"; - readonly type: "error"; - }, { - readonly inputs: readonly []; - readonly name: "InvalidSignature"; - readonly type: "error"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "InvalidToken"; - readonly type: "error"; - }, { - readonly inputs: readonly []; - readonly name: "OperationProhibited"; - readonly type: "error"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }]; - readonly name: "Unauthorised"; - readonly type: "error"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "UnknownToken"; - readonly type: "error"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "uint8"; - readonly name: "version"; - readonly type: "uint8"; - }]; - readonly name: "Initialized"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "previousOwner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "newOwner"; - readonly type: "address"; - }]; - readonly name: "OwnershipTransferred"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "Parked"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "previousAdminRole"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "newAdminRole"; - readonly type: "bytes32"; - }]; - readonly name: "RoleAdminChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "sender"; - readonly type: "address"; - }]; - readonly name: "RoleGranted"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "sender"; - readonly type: "address"; - }]; - readonly name: "RoleRevoked"; - readonly type: "event"; - }, { - readonly inputs: readonly []; - readonly name: "DEFAULT_ADMIN_ROLE"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "MINTER_ROLE"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "NAME"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "VERSION"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "addMinter"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address[]"; - readonly name: "accounts"; - readonly type: "address[]"; - }]; - readonly name: "addMinters"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address payable"; - readonly name: "receiver"; - readonly type: "address"; - }]; - readonly name: "closeMinter"; - readonly outputs: readonly []; - readonly stateMutability: "payable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "commitment"; - readonly type: "bytes32"; - }]; - readonly name: "commit"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly components: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "nonce"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly internalType: "struct IForwarder.ForwardRequest"; - readonly name: "req"; - readonly type: "tuple"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "execute"; - readonly outputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }]; - readonly name: "getRoleAdmin"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "grantRole"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "hasRole"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "controller"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "wrapper"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "registrar"; - readonly type: "address"; - }]; - readonly name: "initialize"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "isMinter"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "forwarder"; - readonly type: "address"; - }]; - readonly name: "isTrustedForwarder"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "name"; - readonly type: "string"; - }, { - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "duration"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes32"; - readonly name: "secret"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }, { - readonly internalType: "bytes[]"; - readonly name: "data"; - readonly type: "bytes[]"; - }, { - readonly internalType: "bool"; - readonly name: "reverseRecord"; - readonly type: "bool"; - }, { - readonly internalType: "uint16"; - readonly name: "ownerControlledFuses"; - readonly type: "uint16"; - }, { - readonly internalType: "bool"; - readonly name: "selfCustody"; - readonly type: "bool"; - }]; - readonly name: "makeCommitment"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "nonceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }, { - readonly internalType: "uint256[]"; - readonly name: "tokenIds"; - readonly type: "uint256[]"; - }, { - readonly internalType: "uint256[]"; - readonly name: ""; - readonly type: "uint256[]"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "onERC1155BatchReceived"; - readonly outputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: ""; - readonly type: "bytes4"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "onERC1155Received"; - readonly outputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: ""; - readonly type: "bytes4"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "onERC721Received"; - readonly outputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: ""; - readonly type: "bytes4"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "owner"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "ownerOf"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "name"; - readonly type: "string"; - }, { - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "duration"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes32"; - readonly name: "secret"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }, { - readonly internalType: "bytes[]"; - readonly name: "data"; - readonly type: "bytes[]"; - }, { - readonly internalType: "bool"; - readonly name: "reverseRecord"; - readonly type: "bool"; - }, { - readonly internalType: "uint16"; - readonly name: "ownerControlledFuses"; - readonly type: "uint16"; - }, { - readonly internalType: "bool"; - readonly name: "selfCustody"; - readonly type: "bool"; - }]; - readonly name: "register"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "removeMinter"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address[]"; - readonly name: "accounts"; - readonly type: "address[]"; - }]; - readonly name: "removeMinters"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "name"; - readonly type: "string"; - }, { - readonly internalType: "uint256"; - readonly name: "duration"; - readonly type: "uint256"; - }]; - readonly name: "renew"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "renounceMinter"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "renounceOwnership"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "renounceRole"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "name"; - readonly type: "string"; - }, { - readonly internalType: "uint256"; - readonly name: "duration"; - readonly type: "uint256"; - }]; - readonly name: "rentPrice"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "revokeRole"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address payable"; - readonly name: "receiver"; - readonly type: "address"; - }]; - readonly name: "rotateMinter"; - readonly outputs: readonly []; - readonly stateMutability: "payable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "safeTransfer"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "baseRegistrar"; - readonly type: "address"; - }]; - readonly name: "setBaseRegistrar"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "newOwner"; - readonly type: "address"; - }]; - readonly name: "transferOwnership"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly components: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "nonce"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly internalType: "struct IForwarder.ForwardRequest"; - readonly name: "req"; - readonly type: "tuple"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "verify"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly stateMutability: "payable"; - readonly type: "receive"; - }]; - static createInterface(): ENSCustodyInterface; - static connect(address: string, runner?: ContractRunner | null): ENSCustody; -} -export {}; -//# sourceMappingURL=ENSCustody__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/custody/ENSCustody__factory.d.ts.map b/dist/types/factories/contracts/custody/ENSCustody__factory.d.ts.map deleted file mode 100644 index f0644b3e..00000000 --- a/dist/types/factories/contracts/custody/ENSCustody__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ENSCustody__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/custody/ENSCustody__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,KAAK,EACV,UAAU,EACV,mBAAmB,EACpB,MAAM,uCAAuC,CAAC;AA6+B/C,aAAK,2BAA2B,GAC5B,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,mBAAoB,SAAQ,eAAe;gBAC1C,GAAG,IAAI,EAAE,2BAA2B;IAQvC,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,mBAAmB;IAIpE,MAAM,CAAC,QAAQ,CAAC,QAAQ,kn1BAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,mBAAmB;IAG7C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,UAAU;CAG5E"} \ No newline at end of file diff --git a/dist/types/factories/contracts/custody/ENSCustody__factory.js b/dist/types/factories/contracts/custody/ENSCustody__factory.js deleted file mode 100644 index 6b75aa6a..00000000 --- a/dist/types/factories/contracts/custody/ENSCustody__factory.js +++ /dev/null @@ -1,1033 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ENSCustody__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [], - stateMutability: "nonpayable", - type: "constructor", - }, - { - inputs: [], - name: "CustodyNotEnoughBalance", - type: "error", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "InvalidForwardedToken", - type: "error", - }, - { - inputs: [ - { - internalType: "address", - name: "addr", - type: "address", - }, - ], - name: "InvalidOwner", - type: "error", - }, - { - inputs: [], - name: "InvalidSignature", - type: "error", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "InvalidToken", - type: "error", - }, - { - inputs: [], - name: "OperationProhibited", - type: "error", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "address", - name: "addr", - type: "address", - }, - ], - name: "Unauthorised", - type: "error", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "UnknownToken", - type: "error", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint8", - name: "version", - type: "uint8", - }, - ], - name: "Initialized", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "previousOwner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnershipTransferred", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "Parked", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - indexed: true, - internalType: "bytes32", - name: "previousAdminRole", - type: "bytes32", - }, - { - indexed: true, - internalType: "bytes32", - name: "newAdminRole", - type: "bytes32", - }, - ], - name: "RoleAdminChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "sender", - type: "address", - }, - ], - name: "RoleGranted", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "sender", - type: "address", - }, - ], - name: "RoleRevoked", - type: "event", - }, - { - inputs: [], - name: "DEFAULT_ADMIN_ROLE", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "MINTER_ROLE", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "NAME", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "VERSION", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "addMinter", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address[]", - name: "accounts", - type: "address[]", - }, - ], - name: "addMinters", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address payable", - name: "receiver", - type: "address", - }, - ], - name: "closeMinter", - outputs: [], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "commitment", - type: "bytes32", - }, - ], - name: "commit", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - internalType: "struct IForwarder.ForwardRequest", - name: "req", - type: "tuple", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "execute", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - ], - name: "getRoleAdmin", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "grantRole", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "hasRole", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "controller", - type: "address", - }, - { - internalType: "address", - name: "wrapper", - type: "address", - }, - { - internalType: "address", - name: "registrar", - type: "address", - }, - ], - name: "initialize", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "isMinter", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "forwarder", - type: "address", - }, - ], - name: "isTrustedForwarder", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "name", - type: "string", - }, - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "uint256", - name: "duration", - type: "uint256", - }, - { - internalType: "bytes32", - name: "secret", - type: "bytes32", - }, - { - internalType: "address", - name: "resolver", - type: "address", - }, - { - internalType: "bytes[]", - name: "data", - type: "bytes[]", - }, - { - internalType: "bool", - name: "reverseRecord", - type: "bool", - }, - { - internalType: "uint16", - name: "ownerControlledFuses", - type: "uint16", - }, - { - internalType: "bool", - name: "selfCustody", - type: "bool", - }, - ], - name: "makeCommitment", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "nonceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - { - internalType: "address", - name: "", - type: "address", - }, - { - internalType: "uint256[]", - name: "tokenIds", - type: "uint256[]", - }, - { - internalType: "uint256[]", - name: "", - type: "uint256[]", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "onERC1155BatchReceived", - outputs: [ - { - internalType: "bytes4", - name: "", - type: "bytes4", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "uint256", - name: "", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "onERC1155Received", - outputs: [ - { - internalType: "bytes4", - name: "", - type: "bytes4", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - { - internalType: "address", - name: "", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "onERC721Received", - outputs: [ - { - internalType: "bytes4", - name: "", - type: "bytes4", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "ownerOf", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "name", - type: "string", - }, - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "uint256", - name: "duration", - type: "uint256", - }, - { - internalType: "bytes32", - name: "secret", - type: "bytes32", - }, - { - internalType: "address", - name: "resolver", - type: "address", - }, - { - internalType: "bytes[]", - name: "data", - type: "bytes[]", - }, - { - internalType: "bool", - name: "reverseRecord", - type: "bool", - }, - { - internalType: "uint16", - name: "ownerControlledFuses", - type: "uint16", - }, - { - internalType: "bool", - name: "selfCustody", - type: "bool", - }, - ], - name: "register", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "removeMinter", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address[]", - name: "accounts", - type: "address[]", - }, - ], - name: "removeMinters", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "name", - type: "string", - }, - { - internalType: "uint256", - name: "duration", - type: "uint256", - }, - ], - name: "renew", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "renounceMinter", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "renounceOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "renounceRole", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "name", - type: "string", - }, - { - internalType: "uint256", - name: "duration", - type: "uint256", - }, - ], - name: "rentPrice", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "revokeRole", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address payable", - name: "receiver", - type: "address", - }, - ], - name: "rotateMinter", - outputs: [], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "safeTransfer", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "baseRegistrar", - type: "address", - }, - ], - name: "setBaseRegistrar", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "transferOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - internalType: "struct IForwarder.ForwardRequest", - name: "req", - type: "tuple", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "verify", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - stateMutability: "payable", - type: "receive", - }, -]; -const _bytecode = "0x60806040523480156200001157600080fd5b506200001c62000022565b620000e4565b600054610100900460ff16156200008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff9081161015620000e2576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b61344180620000f46000396000f3fe60806040526004361061021e5760003560e01c80638da5cb5b11610123578063acf1a841116100ab578063d547741f1161006f578063d547741f14610682578063f14fcbc8146106a2578063f23a6e61146106c2578063f2fde38b146106e2578063ffa1ad741461070257600080fd5b8063acf1a841146105e0578063bc197c8114610600578063c0c53b8b14610620578063cf01585314610640578063d53913931461066057600080fd5b8063a0e3aef1116100f2578063a0e3aef114610534578063a217fddf14610554578063a3f4df7e14610569578063a4247400146105a0578063aa271e1a146105c057600080fd5b80638da5cb5b146104c157806391d14854146104df578063983b2d56146104ff578063986502751461051f57600080fd5b80635fc1964f116101a65780636ccbae5f116101755780636ccbae5f14610439578063715018a61461045957806371e2a6571461046e57806381c81d351461048e57806383e7f6ff146104a157600080fd5b80635fc1964f146103ae578063634486da146103ce5780636352211e146103e15780636a8be89e1461041957600080fd5b80632f2ff15d116101ed5780632f2ff15d146103035780633092afd51461032557806336568abe14610345578063423f6cef14610365578063572b6c051461038557600080fd5b806301ffc9a71461022a578063150b7a021461025f5780631bf7e13e14610298578063248a9ca3146102c557600080fd5b3661022557005b600080fd5b34801561023657600080fd5b5061024a6102453660046125f2565b610733565b60405190151581526020015b60405180910390f35b34801561026b57600080fd5b5061027f61027a366004612672565b610779565b6040516001600160e01b03199091168152602001610256565b3480156102a457600080fd5b506102b86102b33660046126e4565b6108cb565b60405161025691906127a4565b3480156102d157600080fd5b506102f56102e03660046127b7565b600090815260fb602052604090206001015490565b604051908152602001610256565b34801561030f57600080fd5b5061032361031e3660046127d0565b610997565b005b34801561033157600080fd5b50610323610340366004612800565b6109c1565b34801561035157600080fd5b506103236103603660046127d0565b6109d5565b34801561037157600080fd5b5061032361038036600461281d565b610a68565b34801561039157600080fd5b5061024a6103a0366004612800565b6001600160a01b0316301490565b3480156103ba57600080fd5b506103236103c936600461288f565b610bd9565b6103236103dc366004612800565b610c21565b3480156103ed57600080fd5b506104016103fc3660046127b7565b610ce4565b6040516001600160a01b039091168152602001610256565b34801561042557600080fd5b50610323610434366004612800565b610cef565b34801561044557600080fd5b506102f56104543660046127b7565b610d38565b34801561046557600080fd5b50610323610d7e565b34801561047a57600080fd5b5061032361048936600461288f565b610d92565b61032361049c366004612800565b610dda565b3480156104ad57600080fd5b506102f56104bc366004612934565b610e57565b3480156104cd57600080fd5b506097546001600160a01b0316610401565b3480156104eb57600080fd5b5061024a6104fa3660046127d0565b610efa565b34801561050b57600080fd5b5061032361051a366004612800565b610f25565b34801561052b57600080fd5b50610323610f36565b34801561054057600080fd5b506102f561054f366004612a5c565b610f50565b34801561056057600080fd5b506102f5600081565b34801561057557600080fd5b506102b86040518060400160405280600b81526020016a454e5320437573746f647960a81b81525081565b3480156105ac57600080fd5b5061024a6105bb3660046126e4565b610ffc565b3480156105cc57600080fd5b5061024a6105db366004612800565b61104f565b3480156105ec57600080fd5b506103236105fb366004612934565b611069565b34801561060c57600080fd5b5061027f61061b366004612b35565b611222565b34801561062c57600080fd5b5061032361063b366004612bf3565b6112db565b34801561064c57600080fd5b5061032361065b366004612c3e565b611485565b34801561066c57600080fd5b506102f56000805160206133f583398151915281565b34801561068e57600080fd5b5061032361069d3660046127d0565b611592565b3480156106ae57600080fd5b506103236106bd3660046127b7565b6115b7565b3480156106ce57600080fd5b5061027f6106dd366004612d20565b61162b565b3480156106ee57600080fd5b506103236106fd366004612800565b6116bc565b34801561070e57600080fd5b506102b860405180604001604052806005815260200164302e312e3360d81b81525081565b60006001600160e01b03198216630a85bd0160e11b148061076457506001600160e01b03198216630271189760e51b145b806107735750610773826116d8565b92915050565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004546000906001600160a01b0316806107b061170d565b6001600160a01b0316036108a957600080806107ce86880188612d9b565b9250925092506107dd8361171c565b6001600160a01b03841663b88d4fde30600080516020613415833981519152546040516001600160a01b03909116908c9061082390879030906000908b90602001612dfc565b6040516020818303038152906040526040518563ffffffff1660e01b81526004016108519493929190612e3c565b600060405180830381600087803b15801561086b57600080fd5b505af115801561087f573d6000803e3d6000fd5b5050505061089561088f8261174e565b846117d3565b50630a85bd0160e11b93506108c292505050565b6040516344e7d94960e01b815260040160405180910390fd5b95945050505050565b606060005a90506108dd858585610ffc565b6108fa57604051638baa579f60e01b815260040160405180910390fd5b61098c61090a6020870187612800565b3060408801358461091e60608b018b612e6f565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061185e92505050565b9150505b9392505050565b600082815260fb60205260409020600101546109b28161193f565b6109bc8383611950565b505050565b6109c96119d7565b6109d281611a50565b50565b6109dd61170d565b6001600160a01b0316816001600160a01b031614610a5a5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b610a648282611a68565b5050565b80610a7161170d565b6001600160a01b0316610a8382611aed565b6001600160a01b031614610ac55780610a9a61170d565b604051637ea58b1160e01b815260048101929092526001600160a01b03166024820152604401610a51565b610ace82611c03565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052600090610b22906060015b6040516020818303038152906040528051906020012090565b80546001600160a01b0319166001600160a01b0392909216919091179055600060008051602061341583398151915254604051637921219560e11b81523060048201526001600160a01b038681166024830152604482018690526001606483015260a06084830152600060a48301529091169150819063f242432a9060c401600060405180830381600087803b158015610bbb57600080fd5b505af1158015610bcf573d6000803e3d6000fd5b5050505050505050565b610be16119d7565b60005b8151811015610a6457610c0f828281518110610c0257610c02612eb5565b6020026020010151611a50565b80610c1981612ee1565b915050610be4565b610c2c6105db61170d565b610c485760405162461bcd60e51b8152600401610a5190612efa565b6001600160a01b038116610c9e5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a51565b610ca781611c1c565b610caf610f36565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610a64573d6000803e3d6000fd5b600061077382611aed565b610cf76119d7565b7ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c500480546001600160a01b0319166001600160a01b0392909216919091179055565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a838156020820152908101829052600090610d7790606001610b09565b5492915050565b610d866119d7565b610d906000611c34565b565b610d9a6119d7565b60005b8151811015610a6457610dc8828281518110610dbb57610dbb612eb5565b6020026020010151611c1c565b80610dd281612ee1565b915050610d9d565b610de56105db61170d565b610e015760405162461bcd60e51b8152600401610a5190612efa565b6001600160a01b038116610ca75760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d5054590000006044820152606401610a51565b6000805160206133d5833981519152546040516383e7f6ff60e01b81526000916001600160a01b031690829082906383e7f6ff90610e9d90899089908990600401612f58565b6040805180830381865afa158015610eb9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610edd9190612f7c565b60208101518151919250610ef091612fca565b9695505050505050565b600091825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610f2d6119d7565b6109d281611c1c565b610d906000805160206133f583398151915261036061170d565b6000805160206133d5833981519152546000906001600160a01b0316806365a69dcf8d85610f7e5730610f80565b8d5b8d8d8d8d8d8d8d6040518a63ffffffff1660e01b8152600401610fab9998979695949392919061306e565b602060405180830381865afa158015610fc8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fec91906130de565b9c9b505050505050505050505050565b600061104761100a856130f7565b3085858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611c8692505050565b949350505050565b60006107736000805160206133f583398151915283610efa565b6110746105db61170d565b6110905760405162461bcd60e51b8152600401610a5190612efa565b6002603354036110e25760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a51565b60026033556000805160206133d5833981519152546040516383e7f6ff60e01b81526001600160a01b039091169060009082906383e7f6ff9061112d90889088908890600401612f58565b6040805180830381865afa158015611149573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061116d9190612f7c565b6020810151815191925061118091612fca565b4710156111a05760405163050205f960e01b815260040160405180910390fd5b816001600160a01b031663acf1a841826020015183600001516111c39190612fca565b8787876040518563ffffffff1660e01b81526004016111e493929190612f58565b6000604051808303818588803b1580156111fd57600080fd5b505af1158015611211573d6000803e3d6000fd5b505060016033555050505050505050565b6000600080516020613415833981519152546001600160a01b031661124561170d565b6001600160a01b03161461126c576040516344e7d94960e01b815260040160405180910390fd5b600061127a83850185612800565b90506112858161171c565b60005b878110156112c4576112b28989838181106112a5576112a5612eb5565b90506020020135836117d3565b806112bc81612ee1565b915050611288565b5063bc197c8160e01b9a9950505050505050505050565b600054610100900460ff16158080156112fb5750600054600160ff909116105b806113155750303b158015611315575060005460ff166001145b6113785760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610a51565b6000805460ff19166001179055801561139b576000805461ff0019166101001790555b6000805160206133d583398151915280546001600160a01b038087166001600160a01b03199283161790925560008051602061341583398151915280548684169083161790557ff851d5f4fccb32d2a48561b7acc01b5d4d46b7e138d49f887026f203b08c5004805492851692909116919091179055611419611dc5565b611421611df3565b611429611df3565b611431611e1a565b611439611e51565b801561147f576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6114906105db61170d565b6114ac5760405162461bcd60e51b8152600401610a5190612efa565b6002603354036114fe5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a51565b600260338190555060006115478c8c8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061174e92505050565b905061155281611c03565b6115708c8c846115625730611564565b8c5b8c8c8c8c8c8c8c611e8a565b8161157f5761157f818b6117d3565b5050600160335550505050505050505050565b600082815260fb60205260409020600101546115ad8161193f565b6109bc8383611a68565b60006000805160206133d583398151915254604051631e29f97960e31b8152600481018490526001600160a01b039091169150819063f14fcbc890602401600060405180830381600087803b15801561160f57600080fd5b505af1158015611623573d6000803e3d6000fd5b505050505050565b6000600080516020613415833981519152546001600160a01b031661164e61170d565b6001600160a01b031614611675576040516344e7d94960e01b815260040160405180910390fd5b6001600160a01b038616156116a957600061169283850185612800565b905061169d8161171c565b6116a786826117d3565b505b5063f23a6e6160e01b9695505050505050565b6116c46119d7565b6116cd81611fd5565b6109d260008261204b565b60006001600160e01b03198216637965db0b60e01b148061077357506301ffc9a760e01b6001600160e01b0319831614610773565b6000611717612055565b905090565b6001600160a01b0381166109d25760405163b20f76e360e01b81526001600160a01b0382166004820152602401610a51565b60007f93cdeb708b7545dc668eb9280176169d1c33cfd8ed6f04690a0bcc88a93fc4ae60001b826040516020016117859190613195565b604051602081830303815290604052805190602001206040516020016117b5929190918252602082015260400190565b60408051601f19818403018152919052805160209091012092915050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101839052819061181190606001610b09565b80546001600160a01b0319166001600160a01b039283161790556040519082169083907f45aa97e368889fb3527c1db60c59c2ae91e82f21778613449e46d4208c1c4b1290600090a35050565b606061186985612073565b600080876001600160a01b0316866118838b8a89896120d9565b6040516118909190613195565b60006040518083038160008787f1925050503d80600081146118ce576040519150601f19603f3d011682016040523d82523d6000602084013e6118d3565b606091505b5090925090506118e4603f876131b1565b5a116118f2576118f26131d3565b61193282826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c4544000000000000815250612109565b9998505050505050505050565b6109d28161194b61170d565b612142565b61195a8282610efa565b610a6457600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff1916600117905561199361170d565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6119df61170d565b6001600160a01b03166119fa6097546001600160a01b031690565b6001600160a01b031614610d905760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a51565b6109d26000805160206133f583398151915282611592565b611a728282610efa565b15610a6457600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff19169055611aa961170d565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b604080517f0a8885dd093a12d378a27df09bde33e3caca641a3d6970e06805fde8e847cb466020820152908101829052600090611b2c90606001610b09565b546001600160a01b0316905080611b595760405163124bad6360e31b815260048101839052602401610a51565b30600080516020613415833981519152546040516331a9108f60e11b8152600481018590526001600160a01b0390911690636352211e90602401602060405180830381865afa158015611bb0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bd491906131e9565b6001600160a01b031614611bfe576040516303b673fd60e21b815260048101839052602401610a51565b919050565b303303611c13576109d2816121a6565b6109d281612073565b6109d26000805160206133f58339815191528261204b565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015611ccd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cf191906130de565b90506000611d9f866060015180519060200120868860200151604051602001611d3f9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b9050818660200151148015610ef057508551610ef0906001600160a01b031682866121d0565b600054610100900460ff16611dec5760405162461bcd60e51b8152600401610a5190613206565b6001603355565b600054610100900460ff16610d905760405162461bcd60e51b8152600401610a5190613206565b600054610100900460ff16611e415760405162461bcd60e51b8152600401610a5190613206565b610d90611e4c61170d565b611c34565b600054610100900460ff16611e785760405162461bcd60e51b8152600401610a5190613206565b610d906000611e8561170d565b61204b565b6000805160206133d5833981519152546040516383e7f6ff60e01b81526001600160a01b039091169060009082906383e7f6ff90611ed0908f908f908e90600401612f58565b6040805180830381865afa158015611eec573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f109190612f7c565b60208101518151919250611f2391612fca565b471015611f435760405163050205f960e01b815260040160405180910390fd5b816001600160a01b03166374694a2b82602001518360000151611f669190612fca565b8e8e8e8e8e8e8e8e8e8e6040518c63ffffffff1660e01b8152600401611f959a99989796959493929190613251565b6000604051808303818588803b158015611fae57600080fd5b505af1158015611fc2573d6000803e3d6000fd5b5050505050505050505050505050505050565b611fdd6119d7565b6001600160a01b0381166120425760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610a51565b6109d281611c34565b610a648282611950565b600030330361206b575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a8381560208201529081018290526000906060016040516020818303038152906040528051906020012090506120c88190565b546120d4906001612fca565b905550565b60608285856040516020016120f0939291906132c3565b6040516020818303038152906040529050949350505050565b60608315612118575081610990565b8251156121285782518084602001fd5b8160405162461bcd60e51b8152600401610a5191906127a4565b61214c8282610efa565b610a6457612164816001600160a01b03166014612312565b61216f836020612312565b604051602001612180929190613302565b60408051601f198184030181529082905262461bcd60e51b8252610a51916004016127a4565b6121ae6124ad565b81146109d257604051635637b6af60e11b815260048101829052602401610a51565b60008060006121df85856124c0565b909250905060008160048111156121f8576121f8613377565b1480156122165750856001600160a01b0316826001600160a01b0316145b1561222657600192505050610990565b600080876001600160a01b0316631626ba7e60e01b888860405160240161224e92919061338d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161228c9190613195565b600060405180830381855afa9150503d80600081146122c7576040519150601f19603f3d011682016040523d82523d6000602084013e6122cc565b606091505b50915091508180156122df575080516020145b801561230657508051630b135d3f60e11b9061230490830160209081019084016130de565b145b98975050505050505050565b606060006123218360026133a6565b61232c906002612fca565b6001600160401b0381111561234357612343612849565b6040519080825280601f01601f19166020018201604052801561236d576020820181803683370190505b509050600360fc1b8160008151811061238857612388612eb5565b60200101906001600160f81b031916908160001a905350600f60fb1b816001815181106123b7576123b7612eb5565b60200101906001600160f81b031916908160001a90535060006123db8460026133a6565b6123e6906001612fca565b90505b600181111561245e576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061241a5761241a612eb5565b1a60f81b82828151811061243057612430612eb5565b60200101906001600160f81b031916908160001a90535060049490941c93612457816133bd565b90506123e9565b5083156109905760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610a51565b60003033036120705750601f1936013590565b60008082516041036124f65760208301516040840151606085015160001a6124ea87828585612505565b945094505050506124fe565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561253c57506000905060036125e9565b8460ff16601b1415801561255457508460ff16601c14155b1561256557506000905060046125e9565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156125b9573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166125e2576000600192509250506125e9565b9150600090505b94509492505050565b60006020828403121561260457600080fd5b81356001600160e01b03198116811461099057600080fd5b6001600160a01b03811681146109d257600080fd5b60008083601f84011261264357600080fd5b5081356001600160401b0381111561265a57600080fd5b6020830191508360208285010111156124fe57600080fd5b60008060008060006080868803121561268a57600080fd5b85356126958161261c565b945060208601356126a58161261c565b93506040860135925060608601356001600160401b038111156126c757600080fd5b6126d388828901612631565b969995985093965092949392505050565b6000806000604084860312156126f957600080fd5b83356001600160401b038082111561271057600080fd5b908501906080828803121561272457600080fd5b9093506020850135908082111561273a57600080fd5b5061274786828701612631565b9497909650939450505050565b60005b8381101561276f578181015183820152602001612757565b50506000910152565b60008151808452612790816020860160208601612754565b601f01601f19169290920160200192915050565b6020815260006109906020830184612778565b6000602082840312156127c957600080fd5b5035919050565b600080604083850312156127e357600080fd5b8235915060208301356127f58161261c565b809150509250929050565b60006020828403121561281257600080fd5b81356109908161261c565b6000806040838503121561283057600080fd5b823561283b8161261c565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561288757612887612849565b604052919050565b600060208083850312156128a257600080fd5b82356001600160401b03808211156128b957600080fd5b818501915085601f8301126128cd57600080fd5b8135818111156128df576128df612849565b8060051b91506128f084830161285f565b818152918301840191848101908884111561290a57600080fd5b938501935b8385101561230657843592506129248361261c565b828252938501939085019061290f565b60008060006040848603121561294957600080fd5b83356001600160401b0381111561295f57600080fd5b61296b86828701612631565b909790965060209590950135949350505050565b60006001600160401b0383111561299857612998612849565b6129ab601f8401601f191660200161285f565b90508281528383830111156129bf57600080fd5b828260208301376000602084830101529392505050565b600082601f8301126129e757600080fd5b6109908383356020850161297f565b60008083601f840112612a0857600080fd5b5081356001600160401b03811115612a1f57600080fd5b6020830191508360208260051b85010111156124fe57600080fd5b80358015158114611bfe57600080fd5b803561ffff81168114611bfe57600080fd5b6000806000806000806000806000806101208b8d031215612a7c57600080fd5b8a356001600160401b0380821115612a9357600080fd5b612a9f8e838f016129d6565b9b5060208d01359150612ab18261261c565b90995060408c0135985060608c0135975060808c013590612ad18261261c565b90965060a08c01359080821115612ae757600080fd5b50612af48d828e016129f6565b9096509450612b07905060c08c01612a3a565b9250612b1560e08c01612a4a565b9150612b246101008c01612a3a565b90509295989b9194979a5092959850565b60008060008060008060008060a0898b031215612b5157600080fd5b8835612b5c8161261c565b97506020890135612b6c8161261c565b965060408901356001600160401b0380821115612b8857600080fd5b612b948c838d016129f6565b909850965060608b0135915080821115612bad57600080fd5b612bb98c838d016129f6565b909650945060808b0135915080821115612bd257600080fd5b50612bdf8b828c01612631565b999c989b5096995094979396929594505050565b600080600060608486031215612c0857600080fd5b8335612c138161261c565b92506020840135612c238161261c565b91506040840135612c338161261c565b809150509250925092565b60008060008060008060008060008060006101208c8e031215612c6057600080fd5b6001600160401b03808d351115612c7657600080fd5b612c838e8e358f01612631565b909c509a50612c9560208e013561261c565b60208d0135995060408d0135985060608d01359750612cb760808e013561261c565b60808d013596508060a08e01351115612ccf57600080fd5b50612ce08d60a08e01358e016129f6565b9095509350612cf160c08d01612a3a565b9250612cff60e08d01612a4a565b9150612d0e6101008d01612a3a565b90509295989b509295989b9093969950565b60008060008060008060a08789031215612d3957600080fd5b8635612d448161261c565b95506020870135612d548161261c565b9450604087013593506060870135925060808701356001600160401b03811115612d7d57600080fd5b612d8989828a01612631565b979a9699509497509295939492505050565b600080600060608486031215612db057600080fd5b8335612dbb8161261c565b92506020840135612dcb8161261c565b915060408401356001600160401b03811115612de657600080fd5b612df2868287016129d6565b9150509250925092565b608081526000612e0f6080830187612778565b6001600160a01b03958616602084015261ffff949094166040830152509216606090920191909152919050565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090610ef090830184612778565b6000808335601e19843603018112612e8657600080fd5b8301803591506001600160401b03821115612ea057600080fd5b6020019150368190038213156124fe57600080fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201612ef357612ef3612ecb565b5060010190565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b604081526000612f6c604083018587612f2f565b9050826020830152949350505050565b600060408284031215612f8e57600080fd5b604051604081018181106001600160401b0382111715612fb057612fb0612849565b604052825181526020928301519281019290925250919050565b8082018082111561077357610773612ecb565b81835260006020808501808196508560051b810191508460005b878110156130615782840389528135601e1988360301811261301857600080fd5b870185810190356001600160401b0381111561303357600080fd5b80360382131561304257600080fd5b61304d868284612f2f565b9a87019a9550505090840190600101612ff7565b5091979650505050505050565b60006101008083526130828184018d612778565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a085015290506130bc818789612fdd565b94151560c0840152505061ffff9190911660e090910152979650505050505050565b6000602082840312156130f057600080fd5b5051919050565b60006080823603121561310957600080fd5b604051608081016001600160401b03828210818311171561312c5761312c612849565b816040528435915061313d8261261c565b8183526020850135602084015260408501356040840152606085013591508082111561316857600080fd5b50830136601f82011261317a57600080fd5b6131893682356020840161297f565b60608301525092915050565b600082516131a7818460208701612754565b9190910192915050565b6000826131ce57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b6000602082840312156131fb57600080fd5b81516109908161261c565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60006101008083526132668184018d8f612f2f565b6001600160a01b038c81166020860152604085018c9052606085018b90528916608085015283810360a085015290506132a0818789612fdd565b94151560c0840152505061ffff9190911660e09091015298975050505050505050565b600084516132d5818460208901612754565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081526000835161333a816017850160208801612754565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835161336b816028840160208801612754565b01602801949350505050565b634e487b7160e01b600052602160045260246000fd5b8281526040602082015260006110476040830184612778565b808202811582820484141761077357610773612ecb565b6000816133cc576133cc612ecb565b50600019019056fe412386de53449251cbf7ce1f4c6a038bf9c0746e62d331b08ef0c3fa7d0ab6729f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a660793a5062d506d35cc8f1beda67ee5028c16bfcd9c923d5bfc439c04bd929b1a164736f6c6343000811000a"; -const isSuperArgs = (xs) => xs.length > 1; -class ENSCustody__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(overrides) { - return super.getDeployTransaction(overrides || {}); - } - deploy(overrides) { - return super.deploy(overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.ENSCustody__factory = ENSCustody__factory; -ENSCustody__factory.bytecode = _bytecode; -ENSCustody__factory.abi = _abi; diff --git a/dist/types/factories/contracts/custody/IENSCustody__factory.d.ts b/dist/types/factories/contracts/custody/IENSCustody__factory.d.ts deleted file mode 100644 index 1c9f06fd..00000000 --- a/dist/types/factories/contracts/custody/IENSCustody__factory.d.ts +++ /dev/null @@ -1,258 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IENSCustody, IENSCustodyInterface } from "../../../contracts/custody/IENSCustody"; -export declare class IENSCustody__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "Parked"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "commitment"; - readonly type: "bytes32"; - }]; - readonly name: "commit"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "name"; - readonly type: "string"; - }, { - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "duration"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes32"; - readonly name: "secret"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }, { - readonly internalType: "bytes[]"; - readonly name: "data"; - readonly type: "bytes[]"; - }, { - readonly internalType: "bool"; - readonly name: "reverseRecord"; - readonly type: "bool"; - }, { - readonly internalType: "uint16"; - readonly name: "ownerControlledFuses"; - readonly type: "uint16"; - }, { - readonly internalType: "bool"; - readonly name: "selfCustody"; - readonly type: "bool"; - }]; - readonly name: "makeCommitment"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "uint256[]"; - readonly name: "ids"; - readonly type: "uint256[]"; - }, { - readonly internalType: "uint256[]"; - readonly name: "values"; - readonly type: "uint256[]"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "onERC1155BatchReceived"; - readonly outputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: ""; - readonly type: "bytes4"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "value"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "onERC1155Received"; - readonly outputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: ""; - readonly type: "bytes4"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "ownerOf"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "name"; - readonly type: "string"; - }, { - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "duration"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes32"; - readonly name: "secret"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }, { - readonly internalType: "bytes[]"; - readonly name: "data"; - readonly type: "bytes[]"; - }, { - readonly internalType: "bool"; - readonly name: "reverseRecord"; - readonly type: "bool"; - }, { - readonly internalType: "uint16"; - readonly name: "ownerControlledFuses"; - readonly type: "uint16"; - }, { - readonly internalType: "bool"; - readonly name: "selfCustody"; - readonly type: "bool"; - }]; - readonly name: "register"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "name"; - readonly type: "string"; - }, { - readonly internalType: "uint256"; - readonly name: "duration"; - readonly type: "uint256"; - }]; - readonly name: "renew"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "name"; - readonly type: "string"; - }, { - readonly internalType: "uint256"; - readonly name: "duration"; - readonly type: "uint256"; - }]; - readonly name: "rentPrice"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "safeTransfer"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly stateMutability: "payable"; - readonly type: "receive"; - }]; - static createInterface(): IENSCustodyInterface; - static connect(address: string, runner?: ContractRunner | null): IENSCustody; -} -//# sourceMappingURL=IENSCustody__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/custody/IENSCustody__factory.d.ts.map b/dist/types/factories/contracts/custody/IENSCustody__factory.d.ts.map deleted file mode 100644 index 660f0edf..00000000 --- a/dist/types/factories/contracts/custody/IENSCustody__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IENSCustody__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/custody/IENSCustody__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,WAAW,EACX,oBAAoB,EACrB,MAAM,wCAAwC,CAAC;AAyUhD,qBAAa,oBAAoB;IAC/B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,oBAAoB;IAG9C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,WAAW;CAG7E"} \ No newline at end of file diff --git a/dist/types/factories/contracts/custody/IENSCustody__factory.js b/dist/types/factories/contracts/custody/IENSCustody__factory.js deleted file mode 100644 index bfc1f517..00000000 --- a/dist/types/factories/contracts/custody/IENSCustody__factory.js +++ /dev/null @@ -1,340 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IENSCustody__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "Parked", - type: "event", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "commitment", - type: "bytes32", - }, - ], - name: "commit", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "name", - type: "string", - }, - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "uint256", - name: "duration", - type: "uint256", - }, - { - internalType: "bytes32", - name: "secret", - type: "bytes32", - }, - { - internalType: "address", - name: "resolver", - type: "address", - }, - { - internalType: "bytes[]", - name: "data", - type: "bytes[]", - }, - { - internalType: "bool", - name: "reverseRecord", - type: "bool", - }, - { - internalType: "uint16", - name: "ownerControlledFuses", - type: "uint16", - }, - { - internalType: "bool", - name: "selfCustody", - type: "bool", - }, - ], - name: "makeCommitment", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "uint256[]", - name: "ids", - type: "uint256[]", - }, - { - internalType: "uint256[]", - name: "values", - type: "uint256[]", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "onERC1155BatchReceived", - outputs: [ - { - internalType: "bytes4", - name: "", - type: "bytes4", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - internalType: "uint256", - name: "value", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "onERC1155Received", - outputs: [ - { - internalType: "bytes4", - name: "", - type: "bytes4", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "ownerOf", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "name", - type: "string", - }, - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "uint256", - name: "duration", - type: "uint256", - }, - { - internalType: "bytes32", - name: "secret", - type: "bytes32", - }, - { - internalType: "address", - name: "resolver", - type: "address", - }, - { - internalType: "bytes[]", - name: "data", - type: "bytes[]", - }, - { - internalType: "bool", - name: "reverseRecord", - type: "bool", - }, - { - internalType: "uint16", - name: "ownerControlledFuses", - type: "uint16", - }, - { - internalType: "bool", - name: "selfCustody", - type: "bool", - }, - ], - name: "register", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "name", - type: "string", - }, - { - internalType: "uint256", - name: "duration", - type: "uint256", - }, - ], - name: "renew", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "name", - type: "string", - }, - { - internalType: "uint256", - name: "duration", - type: "uint256", - }, - ], - name: "rentPrice", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "safeTransfer", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - stateMutability: "payable", - type: "receive", - }, -]; -class IENSCustody__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IENSCustody__factory = IENSCustody__factory; -IENSCustody__factory.abi = _abi; diff --git a/dist/types/factories/contracts/custody/ZilliqaRecover__factory.d.ts b/dist/types/factories/contracts/custody/ZilliqaRecover__factory.d.ts deleted file mode 100644 index a0833363..00000000 --- a/dist/types/factories/contracts/custody/ZilliqaRecover__factory.d.ts +++ /dev/null @@ -1,454 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../common"; -import type { ZilliqaRecover, ZilliqaRecoverInterface } from "../../../contracts/custody/ZilliqaRecover"; -declare type ZilliqaRecoverConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class ZilliqaRecover__factory extends ContractFactory { - constructor(...args: ZilliqaRecoverConstructorParams); - getDeployTransaction(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): ZilliqaRecover__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b5061001961001e565b6100de565b600054610100900460ff161561008a5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811610156100dc576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b611c80806100ed6000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c806371017a54116100a25780639e32d364116100715780639e32d36414610260578063a424740014610287578063dd6b9e221461029a578063e1c4b65a146102ad578063e35a14e5146102c057600080fd5b806371017a54146102145780637b103999146102275780638f0dbd251461023a5780639810b6951461024d57600080fd5b8063485cc955116100de578063485cc95514610197578063572b6c05146101aa57806358884432146101d65780636ccbae5f1461020157600080fd5b8063150b7a02146101105780631694116d146101415780631bf7e13e146101565780631c351a9d14610176575b600080fd5b61012361011e3660046114ae565b6102e9565b6040516001600160e01b031990911681526020015b60405180910390f35b61015461014f366004611566565b61037b565b005b6101696101643660046115d1565b610422565b6040516101389190611692565b6101896101843660046116a5565b6104ee565b604051908152602001610138565b6101546101a53660046116fc565b6105df565b6101c66101b8366004611735565b6001600160a01b0316301490565b6040519015158152602001610138565b6067546101e9906001600160a01b031681565b6040516001600160a01b039091168152602001610138565b61018961020f366004611752565b61071a565b6101e961022236600461176b565b610774565b6066546101e9906001600160a01b031681565b61015461024836600461178d565b6107b5565b6101e961025b36600461176b565b61082a565b6101897fd81bbfcee722494b885e891546eeac23d0eedcd44038d7a2f6ef9ec2f9e0d23981565b6101c66102953660046115d1565b610886565b6101c66102a83660046117ce565b6108d1565b6101546102bb366004611816565b610953565b6101e96102ce366004611752565b6000908152606560205260409020546001600160a01b031690565b6066546000906001600160a01b0316610300610a86565b6001600160a01b031614158061032b57506000848152606560205260409020546001600160a01b0316155b156103695783610339610a86565b60405163634afa0d60e01b815260048101929092526001600160a01b031660248201526044015b60405180910390fd5b50630a85bd0160e11b95945050505050565b82826103878282610774565b6001600160a01b0316610398610a86565b6001600160a01b0316146103c957604051632cd9b44d60e11b81526004810183905260248101829052604401610360565b60006103d5868661082a565b905060005b87811015610417576104058989838181106103f7576103f7611858565b905060200201358387610a95565b8061040f81611884565b9150506103da565b505050505050505050565b606060005a9050610434858585610886565b61045157604051638baa579f60e01b815260040160405180910390fd5b6104e36104616020870187611735565b3060408801358461047560608b018b61189d565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b9081908401838280828437600092019190915250610bd092505050565b9150505b9392505050565b6067546000906001600160a01b031663aa271e1a61050a610a86565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa15801561054e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061057291906118e4565b158061058d575030610582610a86565b6001600160a01b0316145b156105bf5761059a610a86565b60405163e2c8c9d560e01b81526001600160a01b039091166004820152602401610360565b60006105cc858585610cb1565b90506105d781610ece565b949350505050565b600054610100900460ff16158080156105ff5750600054600160ff909116105b806106195750303b158015610619575060005460ff166001145b61067c5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610360565b6000805460ff19166001179055801561069f576000805461ff0019166101001790555b606680546001600160a01b038086166001600160a01b03199283161790925560678054928516929091169190911790558015610715576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a83815602082015290810182905260009061076d906060016040516020818303038152906040528051906020012090565b5492915050565b6000808383604051602001610793929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209150505b92915050565b82826107c18282610774565b6001600160a01b03166107d2610a86565b6001600160a01b03161461080357604051632cd9b44d60e11b81526004810183905260248101829052604401610360565b8561080d81610ece565b6108218761081b888961082a565b86610a95565b50505050505050565b60008060026108398585610eea565b6040516108469190611906565b602060405180830381855afa158015610863573d6000803e3d6000fd5b5050506040513d601f19601f820116820180604052508101906105d79190611922565b60006105d7610894856119ab565b3085858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250610f7092505050565b6000805b8281101561094857846001600160a01b031661091e8585848181106108fc576108fc611858565b905060200201356000908152606560205260409020546001600160a01b031690565b6001600160a01b0316146109365760009150506104e7565b8061094081611884565b9150506108d5565b506001949350505050565b6067546001600160a01b031663aa271e1a61096c610a86565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa1580156109b0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109d491906118e4565b15806109ef5750306109e4610a86565b6001600160a01b0316145b156109fc5761059a610a86565b60005b8181101561071557610a73838383818110610a1c57610a1c611858565b9050602002810190610a2e9190611a6e565b610a3c90602081019061189d565b858585818110610a4e57610a4e611858565b9050602002810190610a609190611a6e565b610a6e906020810190611735565b610cb1565b5080610a7e81611884565b9150506109ff565b6000610a906110b9565b905090565b6000838152606560205260409020546001600160a01b03838116911614610afa57600083815260656020526040908190205490516326995d8360e11b8152600481018590526001600160a01b0391821660248201529083166044820152606401610360565b6000838152606560205260409081902080546001600160a01b03191690556066549051632142170760e11b81523060048201526001600160a01b03838116602483015260448201869052909116906342842e0e90606401600060405180830381600087803b158015610b6b57600080fd5b505af1158015610b7f573d6000803e3d6000fd5b50505050806001600160a01b0316610b95610a86565b6001600160a01b0316847f9a471856befea1cabcd7fc8a1c4d70ea07b8ed2ee205cc361f932433542ef3fe60405160405180910390a4505050565b6060610bdb856110d7565b600080876001600160a01b031686610bf58b8a898961113d565b604051610c029190611906565b60006040518083038160008787f1925050503d8060008114610c40576040519150601f19603f3d011682016040523d82523d6000602084013e610c45565b606091505b509092509050610c56603f87611a9a565b5a11610c6457610c64611aae565b610ca482826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061116d565b9998505050505050505050565b6000606060007fd81bbfcee722494b885e891546eeac23d0eedcd44038d7a2f6ef9ec2f9e0d2398686604051602001610ceb929190611ac4565b60405160208183030381529060405280519060200120604051602001610d1b929190918252602082015260400190565b60408051808303601f190181528282528051602090910120600280845260608401909252925060009190816020015b6060815260200190600190039081610d4a57905050905086868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250855186945090925015159050610dab57610dab611858565b6020026020010181905250604051806040016040528060038152602001621e9a5b60ea1b81525081600181518110610de557610de5611858565b60209081029190910181019190915260008381526065909152604080822080546001600160a01b0319166001600160a01b03898116919091179091556067549151635cd7e3b360e01b8152911691635cd7e3b391610e4e91309186918991829190600401611b29565b600060405180830381600087803b158015610e6857600080fd5b505af1158015610e7c573d6000803e3d6000fd5b50505050846001600160a01b0316827f08717469d38a4b02325ea6637978c7952f94d3d8fc7848994f618ddbf4d637f18989604051610ebc929190611b88565b60405180910390a35095945050505050565b303303610ee157610ede816111a6565b50565b610ede816110d7565b6060600082610efb60016020611bb7565b60ff1660208110610f0e57610f0e611858565b1a9050610f1c600282611bd0565b60ff1615610f2b576003610f2e565b60025b84604051602001610f5892919060f89290921b6001600160f81b0319168252600182015260210190565b60405160208183030381529060405291505092915050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015610fb7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fdb9190611922565b905060006110898660600151805190602001208688602001516040516020016110299392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156110af575085516110af906001600160a01b031682866111d0565b9695505050505050565b60003033036110cf575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a83815602082015290810182905260009060600160405160208183030381529060405280519060200120905061112c8190565b54611138906001611bf2565b905550565b606082858560405160200161115493929190611c05565b6040516020818303038152906040529050949350505050565b6060831561117c5750816104e7565b82511561118c5782518084602001fd5b8160405162461bcd60e51b81526004016103609190611692565b6111ae611312565b8114610ede57604051635637b6af60e11b815260048101829052602401610360565b60008060006111df8585611325565b909250905060008160048111156111f8576111f8611c44565b1480156112165750856001600160a01b0316826001600160a01b0316145b15611226576001925050506104e7565b600080876001600160a01b0316631626ba7e60e01b888860405160240161124e929190611c5a565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161128c9190611906565b600060405180830381855afa9150503d80600081146112c7576040519150601f19603f3d011682016040523d82523d6000602084013e6112cc565b606091505b50915091508180156112df575080516020145b801561130657508051630b135d3f60e11b906113049083016020908101908401611922565b145b98975050505050505050565b60003033036110d45750601f1936013590565b600080825160410361135b5760208301516040840151606085015160001a61134f8782858561136a565b94509450505050611363565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08311156113a1575060009050600361144e565b8460ff16601b141580156113b957508460ff16601c14155b156113ca575060009050600461144e565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa15801561141e573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166114475760006001925092505061144e565b9150600090505b94509492505050565b6001600160a01b0381168114610ede57600080fd5b60008083601f84011261147e57600080fd5b50813567ffffffffffffffff81111561149657600080fd5b60208301915083602082850101111561136357600080fd5b6000806000806000608086880312156114c657600080fd5b85356114d181611457565b945060208601356114e181611457565b935060408601359250606086013567ffffffffffffffff81111561150457600080fd5b6115108882890161146c565b969995985093965092949392505050565b60008083601f84011261153357600080fd5b50813567ffffffffffffffff81111561154b57600080fd5b6020830191508360208260051b850101111561136357600080fd5b60008060008060006080868803121561157e57600080fd5b853567ffffffffffffffff81111561159557600080fd5b6115a188828901611521565b909650945050602086013592506040860135915060608601356115c381611457565b809150509295509295909350565b6000806000604084860312156115e657600080fd5b833567ffffffffffffffff808211156115fe57600080fd5b908501906080828803121561161257600080fd5b9093506020850135908082111561162857600080fd5b506116358682870161146c565b9497909650939450505050565b60005b8381101561165d578181015183820152602001611645565b50506000910152565b6000815180845261167e816020860160208601611642565b601f01601f19169290920160200192915050565b6020815260006104e76020830184611666565b6000806000604084860312156116ba57600080fd5b833567ffffffffffffffff8111156116d157600080fd5b6116dd8682870161146c565b90945092505060208401356116f181611457565b809150509250925092565b6000806040838503121561170f57600080fd5b823561171a81611457565b9150602083013561172a81611457565b809150509250929050565b60006020828403121561174757600080fd5b81356104e781611457565b60006020828403121561176457600080fd5b5035919050565b6000806040838503121561177e57600080fd5b50508035926020909101359150565b600080600080608085870312156117a357600080fd5b84359350602085013592506040850135915060608501356117c381611457565b939692955090935050565b6000806000604084860312156117e357600080fd5b83356117ee81611457565b9250602084013567ffffffffffffffff81111561180a57600080fd5b61163586828701611521565b6000806020838503121561182957600080fd5b823567ffffffffffffffff81111561184057600080fd5b61184c85828601611521565b90969095509350505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000600182016118965761189661186e565b5060010190565b6000808335601e198436030181126118b457600080fd5b83018035915067ffffffffffffffff8211156118cf57600080fd5b60200191503681900382131561136357600080fd5b6000602082840312156118f657600080fd5b815180151581146104e757600080fd5b60008251611918818460208701611642565b9190910192915050565b60006020828403121561193457600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff811182821017156119745761197461193b565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156119a3576119a361193b565b604052919050565b6000608082360312156119bd57600080fd5b6119c5611951565b82356119d081611457565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff80821115611a0157600080fd5b9085019036601f830112611a1457600080fd5b813581811115611a2657611a2661193b565b611a38601f8201601f1916850161197a565b91508082523684828501011115611a4e57600080fd5b808484018584013760009082019093019290925250606082015292915050565b60008235603e1983360301811261191857600080fd5b634e487b7160e01b600052601260045260246000fd5b600082611aa957611aa9611a84565b500490565b634e487b7160e01b600052600160045260246000fd5b8183823760009101908152919050565b600081518084526020808501808196508360051b8101915082860160005b85811015611b1c578284038952611b0a848351611666565b98850198935090840190600101611af2565b5091979650505050505050565b6001600160a01b038616815260a060208201819052600090611b4d90830187611ad4565b8281036040840152611b5f8187611ad4565b90508281036060840152611b738186611ad4565b91505082151560808301529695505050505050565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b60ff82811682821603908111156107af576107af61186e565b600060ff831680611be357611be3611a84565b8060ff84160691505092915050565b808201808211156107af576107af61186e565b60008451611c17818460208901611642565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b600052602160045260246000fd5b8281526040602082015260006105d7604083018461166656fea164736f6c6343000811000a"; - static readonly abi: readonly [{ - readonly inputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "constructor"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "InvalidForwardedToken"; - readonly type: "error"; - }, { - readonly inputs: readonly []; - readonly name: "InvalidSignature"; - readonly type: "error"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "publicKeyX"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes32"; - readonly name: "publicKeyY"; - readonly type: "bytes32"; - }]; - readonly name: "PublicKeyUnmatchSenderAddress"; - readonly type: "error"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "sender"; - readonly type: "address"; - }]; - readonly name: "SenderNotMinter"; - readonly type: "error"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "address"; - readonly name: "znsOwner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "receivedOwner"; - readonly type: "address"; - }]; - readonly name: "TokenOwnedByOtherZilAddress"; - readonly type: "error"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "address"; - readonly name: "contractAddress"; - readonly type: "address"; - }]; - readonly name: "UnknownTokenReceived"; - readonly type: "error"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "uint8"; - readonly name: "version"; - readonly type: "uint8"; - }]; - readonly name: "Initialized"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "oldAddress"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "newAddress"; - readonly type: "address"; - }]; - readonly name: "ZnsTokenClaimed"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "zilAddress"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }]; - readonly name: "ZnsTokenMinted"; - readonly type: "event"; - }, { - readonly inputs: readonly []; - readonly name: "ZIL_NODE"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes32"; - readonly name: "publicKeyX"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes32"; - readonly name: "publicKeyY"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "newOwnerAddress"; - readonly type: "address"; - }]; - readonly name: "claim"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256[]"; - readonly name: "tokenIds"; - readonly type: "uint256[]"; - }, { - readonly internalType: "bytes32"; - readonly name: "publicKeyX"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes32"; - readonly name: "publicKeyY"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "newOwnerAddress"; - readonly type: "address"; - }]; - readonly name: "claimAll"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "publicKeyX"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes32"; - readonly name: "publicKeyY"; - readonly type: "bytes32"; - }]; - readonly name: "ethAddress"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "pure"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly components: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "nonce"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly internalType: "struct IForwarder.ForwardRequest"; - readonly name: "req"; - readonly type: "tuple"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "execute"; - readonly outputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "contract IUNSRegistry"; - readonly name: "registry_"; - readonly type: "address"; - }, { - readonly internalType: "contract IMintingManager"; - readonly name: "mintingManager_"; - readonly type: "address"; - }]; - readonly name: "initialize"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "_zilAddress"; - readonly type: "address"; - }, { - readonly internalType: "uint256[]"; - readonly name: "tokenIds"; - readonly type: "uint256[]"; - }]; - readonly name: "isOwnedBy"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "forwarder"; - readonly type: "address"; - }]; - readonly name: "isTrustedForwarder"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }, { - readonly internalType: "address"; - readonly name: "zilOwner"; - readonly type: "address"; - }]; - readonly name: "mint"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly components: readonly [{ - readonly internalType: "address"; - readonly name: "zilOwner"; - readonly type: "address"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }]; - readonly internalType: "struct ZilliqaRecover.MintingToken[]"; - readonly name: "tokens"; - readonly type: "tuple[]"; - }]; - readonly name: "mintAll"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "mintingManager"; - readonly outputs: readonly [{ - readonly internalType: "contract IMintingManager"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "nonceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly name: "onERC721Received"; - readonly outputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: ""; - readonly type: "bytes4"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "registry"; - readonly outputs: readonly [{ - readonly internalType: "contract IUNSRegistry"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly components: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "nonce"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly internalType: "struct IForwarder.ForwardRequest"; - readonly name: "req"; - readonly type: "tuple"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "verify"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "publicKeyX"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes32"; - readonly name: "publicKeyY"; - readonly type: "bytes32"; - }]; - readonly name: "zilAddress"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "pure"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "znsOwnerOf"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): ZilliqaRecoverInterface; - static connect(address: string, runner?: ContractRunner | null): ZilliqaRecover; -} -export {}; -//# sourceMappingURL=ZilliqaRecover__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/custody/ZilliqaRecover__factory.d.ts.map b/dist/types/factories/contracts/custody/ZilliqaRecover__factory.d.ts.map deleted file mode 100644 index 8903410f..00000000 --- a/dist/types/factories/contracts/custody/ZilliqaRecover__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ZilliqaRecover__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/custody/ZilliqaRecover__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,KAAK,EACV,cAAc,EACd,uBAAuB,EACxB,MAAM,2CAA2C,CAAC;AA6jBnD,aAAK,+BAA+B,GAChC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,uBAAwB,SAAQ,eAAe;gBAC9C,GAAG,IAAI,EAAE,+BAA+B;IAQ3C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,uBAAuB;IAIxE,MAAM,CAAC,QAAQ,CAAC,QAAQ,kudAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,uBAAuB;IAGjD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,cAAc;CAGlB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/custody/ZilliqaRecover__factory.js b/dist/types/factories/contracts/custody/ZilliqaRecover__factory.js deleted file mode 100644 index 21d04481..00000000 --- a/dist/types/factories/contracts/custody/ZilliqaRecover__factory.js +++ /dev/null @@ -1,601 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ZilliqaRecover__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [], - stateMutability: "nonpayable", - type: "constructor", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "InvalidForwardedToken", - type: "error", - }, - { - inputs: [], - name: "InvalidSignature", - type: "error", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "publicKeyX", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "publicKeyY", - type: "bytes32", - }, - ], - name: "PublicKeyUnmatchSenderAddress", - type: "error", - }, - { - inputs: [ - { - internalType: "address", - name: "sender", - type: "address", - }, - ], - name: "SenderNotMinter", - type: "error", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "address", - name: "znsOwner", - type: "address", - }, - { - internalType: "address", - name: "receivedOwner", - type: "address", - }, - ], - name: "TokenOwnedByOtherZilAddress", - type: "error", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "address", - name: "contractAddress", - type: "address", - }, - ], - name: "UnknownTokenReceived", - type: "error", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint8", - name: "version", - type: "uint8", - }, - ], - name: "Initialized", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - indexed: true, - internalType: "address", - name: "oldAddress", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "newAddress", - type: "address", - }, - ], - name: "ZnsTokenClaimed", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - indexed: true, - internalType: "address", - name: "zilAddress", - type: "address", - }, - { - indexed: false, - internalType: "string", - name: "label", - type: "string", - }, - ], - name: "ZnsTokenMinted", - type: "event", - }, - { - inputs: [], - name: "ZIL_NODE", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes32", - name: "publicKeyX", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "publicKeyY", - type: "bytes32", - }, - { - internalType: "address", - name: "newOwnerAddress", - type: "address", - }, - ], - name: "claim", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256[]", - name: "tokenIds", - type: "uint256[]", - }, - { - internalType: "bytes32", - name: "publicKeyX", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "publicKeyY", - type: "bytes32", - }, - { - internalType: "address", - name: "newOwnerAddress", - type: "address", - }, - ], - name: "claimAll", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "publicKeyX", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "publicKeyY", - type: "bytes32", - }, - ], - name: "ethAddress", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "pure", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - internalType: "struct IForwarder.ForwardRequest", - name: "req", - type: "tuple", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "execute", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "contract IUNSRegistry", - name: "registry_", - type: "address", - }, - { - internalType: "contract IMintingManager", - name: "mintingManager_", - type: "address", - }, - ], - name: "initialize", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_zilAddress", - type: "address", - }, - { - internalType: "uint256[]", - name: "tokenIds", - type: "uint256[]", - }, - ], - name: "isOwnedBy", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "forwarder", - type: "address", - }, - ], - name: "isTrustedForwarder", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "label", - type: "string", - }, - { - internalType: "address", - name: "zilOwner", - type: "address", - }, - ], - name: "mint", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "zilOwner", - type: "address", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - ], - internalType: "struct ZilliqaRecover.MintingToken[]", - name: "tokens", - type: "tuple[]", - }, - ], - name: "mintAll", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "mintingManager", - outputs: [ - { - internalType: "contract IMintingManager", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "nonceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - { - internalType: "address", - name: "", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - name: "onERC721Received", - outputs: [ - { - internalType: "bytes4", - name: "", - type: "bytes4", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "registry", - outputs: [ - { - internalType: "contract IUNSRegistry", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - internalType: "struct IForwarder.ForwardRequest", - name: "req", - type: "tuple", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "verify", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "publicKeyX", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "publicKeyY", - type: "bytes32", - }, - ], - name: "zilAddress", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "pure", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "znsOwnerOf", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -const _bytecode = "0x608060405234801561001057600080fd5b5061001961001e565b6100de565b600054610100900460ff161561008a5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811610156100dc576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b611c80806100ed6000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c806371017a54116100a25780639e32d364116100715780639e32d36414610260578063a424740014610287578063dd6b9e221461029a578063e1c4b65a146102ad578063e35a14e5146102c057600080fd5b806371017a54146102145780637b103999146102275780638f0dbd251461023a5780639810b6951461024d57600080fd5b8063485cc955116100de578063485cc95514610197578063572b6c05146101aa57806358884432146101d65780636ccbae5f1461020157600080fd5b8063150b7a02146101105780631694116d146101415780631bf7e13e146101565780631c351a9d14610176575b600080fd5b61012361011e3660046114ae565b6102e9565b6040516001600160e01b031990911681526020015b60405180910390f35b61015461014f366004611566565b61037b565b005b6101696101643660046115d1565b610422565b6040516101389190611692565b6101896101843660046116a5565b6104ee565b604051908152602001610138565b6101546101a53660046116fc565b6105df565b6101c66101b8366004611735565b6001600160a01b0316301490565b6040519015158152602001610138565b6067546101e9906001600160a01b031681565b6040516001600160a01b039091168152602001610138565b61018961020f366004611752565b61071a565b6101e961022236600461176b565b610774565b6066546101e9906001600160a01b031681565b61015461024836600461178d565b6107b5565b6101e961025b36600461176b565b61082a565b6101897fd81bbfcee722494b885e891546eeac23d0eedcd44038d7a2f6ef9ec2f9e0d23981565b6101c66102953660046115d1565b610886565b6101c66102a83660046117ce565b6108d1565b6101546102bb366004611816565b610953565b6101e96102ce366004611752565b6000908152606560205260409020546001600160a01b031690565b6066546000906001600160a01b0316610300610a86565b6001600160a01b031614158061032b57506000848152606560205260409020546001600160a01b0316155b156103695783610339610a86565b60405163634afa0d60e01b815260048101929092526001600160a01b031660248201526044015b60405180910390fd5b50630a85bd0160e11b95945050505050565b82826103878282610774565b6001600160a01b0316610398610a86565b6001600160a01b0316146103c957604051632cd9b44d60e11b81526004810183905260248101829052604401610360565b60006103d5868661082a565b905060005b87811015610417576104058989838181106103f7576103f7611858565b905060200201358387610a95565b8061040f81611884565b9150506103da565b505050505050505050565b606060005a9050610434858585610886565b61045157604051638baa579f60e01b815260040160405180910390fd5b6104e36104616020870187611735565b3060408801358461047560608b018b61189d565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b9081908401838280828437600092019190915250610bd092505050565b9150505b9392505050565b6067546000906001600160a01b031663aa271e1a61050a610a86565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa15801561054e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061057291906118e4565b158061058d575030610582610a86565b6001600160a01b0316145b156105bf5761059a610a86565b60405163e2c8c9d560e01b81526001600160a01b039091166004820152602401610360565b60006105cc858585610cb1565b90506105d781610ece565b949350505050565b600054610100900460ff16158080156105ff5750600054600160ff909116105b806106195750303b158015610619575060005460ff166001145b61067c5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610360565b6000805460ff19166001179055801561069f576000805461ff0019166101001790555b606680546001600160a01b038086166001600160a01b03199283161790925560678054928516929091169190911790558015610715576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a83815602082015290810182905260009061076d906060016040516020818303038152906040528051906020012090565b5492915050565b6000808383604051602001610793929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209150505b92915050565b82826107c18282610774565b6001600160a01b03166107d2610a86565b6001600160a01b03161461080357604051632cd9b44d60e11b81526004810183905260248101829052604401610360565b8561080d81610ece565b6108218761081b888961082a565b86610a95565b50505050505050565b60008060026108398585610eea565b6040516108469190611906565b602060405180830381855afa158015610863573d6000803e3d6000fd5b5050506040513d601f19601f820116820180604052508101906105d79190611922565b60006105d7610894856119ab565b3085858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250610f7092505050565b6000805b8281101561094857846001600160a01b031661091e8585848181106108fc576108fc611858565b905060200201356000908152606560205260409020546001600160a01b031690565b6001600160a01b0316146109365760009150506104e7565b8061094081611884565b9150506108d5565b506001949350505050565b6067546001600160a01b031663aa271e1a61096c610a86565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa1580156109b0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109d491906118e4565b15806109ef5750306109e4610a86565b6001600160a01b0316145b156109fc5761059a610a86565b60005b8181101561071557610a73838383818110610a1c57610a1c611858565b9050602002810190610a2e9190611a6e565b610a3c90602081019061189d565b858585818110610a4e57610a4e611858565b9050602002810190610a609190611a6e565b610a6e906020810190611735565b610cb1565b5080610a7e81611884565b9150506109ff565b6000610a906110b9565b905090565b6000838152606560205260409020546001600160a01b03838116911614610afa57600083815260656020526040908190205490516326995d8360e11b8152600481018590526001600160a01b0391821660248201529083166044820152606401610360565b6000838152606560205260409081902080546001600160a01b03191690556066549051632142170760e11b81523060048201526001600160a01b03838116602483015260448201869052909116906342842e0e90606401600060405180830381600087803b158015610b6b57600080fd5b505af1158015610b7f573d6000803e3d6000fd5b50505050806001600160a01b0316610b95610a86565b6001600160a01b0316847f9a471856befea1cabcd7fc8a1c4d70ea07b8ed2ee205cc361f932433542ef3fe60405160405180910390a4505050565b6060610bdb856110d7565b600080876001600160a01b031686610bf58b8a898961113d565b604051610c029190611906565b60006040518083038160008787f1925050503d8060008114610c40576040519150601f19603f3d011682016040523d82523d6000602084013e610c45565b606091505b509092509050610c56603f87611a9a565b5a11610c6457610c64611aae565b610ca482826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061116d565b9998505050505050505050565b6000606060007fd81bbfcee722494b885e891546eeac23d0eedcd44038d7a2f6ef9ec2f9e0d2398686604051602001610ceb929190611ac4565b60405160208183030381529060405280519060200120604051602001610d1b929190918252602082015260400190565b60408051808303601f190181528282528051602090910120600280845260608401909252925060009190816020015b6060815260200190600190039081610d4a57905050905086868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250855186945090925015159050610dab57610dab611858565b6020026020010181905250604051806040016040528060038152602001621e9a5b60ea1b81525081600181518110610de557610de5611858565b60209081029190910181019190915260008381526065909152604080822080546001600160a01b0319166001600160a01b03898116919091179091556067549151635cd7e3b360e01b8152911691635cd7e3b391610e4e91309186918991829190600401611b29565b600060405180830381600087803b158015610e6857600080fd5b505af1158015610e7c573d6000803e3d6000fd5b50505050846001600160a01b0316827f08717469d38a4b02325ea6637978c7952f94d3d8fc7848994f618ddbf4d637f18989604051610ebc929190611b88565b60405180910390a35095945050505050565b303303610ee157610ede816111a6565b50565b610ede816110d7565b6060600082610efb60016020611bb7565b60ff1660208110610f0e57610f0e611858565b1a9050610f1c600282611bd0565b60ff1615610f2b576003610f2e565b60025b84604051602001610f5892919060f89290921b6001600160f81b0319168252600182015260210190565b60405160208183030381529060405291505092915050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015610fb7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fdb9190611922565b905060006110898660600151805190602001208688602001516040516020016110299392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156110af575085516110af906001600160a01b031682866111d0565b9695505050505050565b60003033036110cf575060331936013560601c90565b503390565b90565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a83815602082015290810182905260009060600160405160208183030381529060405280519060200120905061112c8190565b54611138906001611bf2565b905550565b606082858560405160200161115493929190611c05565b6040516020818303038152906040529050949350505050565b6060831561117c5750816104e7565b82511561118c5782518084602001fd5b8160405162461bcd60e51b81526004016103609190611692565b6111ae611312565b8114610ede57604051635637b6af60e11b815260048101829052602401610360565b60008060006111df8585611325565b909250905060008160048111156111f8576111f8611c44565b1480156112165750856001600160a01b0316826001600160a01b0316145b15611226576001925050506104e7565b600080876001600160a01b0316631626ba7e60e01b888860405160240161124e929190611c5a565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161128c9190611906565b600060405180830381855afa9150503d80600081146112c7576040519150601f19603f3d011682016040523d82523d6000602084013e6112cc565b606091505b50915091508180156112df575080516020145b801561130657508051630b135d3f60e11b906113049083016020908101908401611922565b145b98975050505050505050565b60003033036110d45750601f1936013590565b600080825160410361135b5760208301516040840151606085015160001a61134f8782858561136a565b94509450505050611363565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08311156113a1575060009050600361144e565b8460ff16601b141580156113b957508460ff16601c14155b156113ca575060009050600461144e565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa15801561141e573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166114475760006001925092505061144e565b9150600090505b94509492505050565b6001600160a01b0381168114610ede57600080fd5b60008083601f84011261147e57600080fd5b50813567ffffffffffffffff81111561149657600080fd5b60208301915083602082850101111561136357600080fd5b6000806000806000608086880312156114c657600080fd5b85356114d181611457565b945060208601356114e181611457565b935060408601359250606086013567ffffffffffffffff81111561150457600080fd5b6115108882890161146c565b969995985093965092949392505050565b60008083601f84011261153357600080fd5b50813567ffffffffffffffff81111561154b57600080fd5b6020830191508360208260051b850101111561136357600080fd5b60008060008060006080868803121561157e57600080fd5b853567ffffffffffffffff81111561159557600080fd5b6115a188828901611521565b909650945050602086013592506040860135915060608601356115c381611457565b809150509295509295909350565b6000806000604084860312156115e657600080fd5b833567ffffffffffffffff808211156115fe57600080fd5b908501906080828803121561161257600080fd5b9093506020850135908082111561162857600080fd5b506116358682870161146c565b9497909650939450505050565b60005b8381101561165d578181015183820152602001611645565b50506000910152565b6000815180845261167e816020860160208601611642565b601f01601f19169290920160200192915050565b6020815260006104e76020830184611666565b6000806000604084860312156116ba57600080fd5b833567ffffffffffffffff8111156116d157600080fd5b6116dd8682870161146c565b90945092505060208401356116f181611457565b809150509250925092565b6000806040838503121561170f57600080fd5b823561171a81611457565b9150602083013561172a81611457565b809150509250929050565b60006020828403121561174757600080fd5b81356104e781611457565b60006020828403121561176457600080fd5b5035919050565b6000806040838503121561177e57600080fd5b50508035926020909101359150565b600080600080608085870312156117a357600080fd5b84359350602085013592506040850135915060608501356117c381611457565b939692955090935050565b6000806000604084860312156117e357600080fd5b83356117ee81611457565b9250602084013567ffffffffffffffff81111561180a57600080fd5b61163586828701611521565b6000806020838503121561182957600080fd5b823567ffffffffffffffff81111561184057600080fd5b61184c85828601611521565b90969095509350505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000600182016118965761189661186e565b5060010190565b6000808335601e198436030181126118b457600080fd5b83018035915067ffffffffffffffff8211156118cf57600080fd5b60200191503681900382131561136357600080fd5b6000602082840312156118f657600080fd5b815180151581146104e757600080fd5b60008251611918818460208701611642565b9190910192915050565b60006020828403121561193457600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff811182821017156119745761197461193b565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156119a3576119a361193b565b604052919050565b6000608082360312156119bd57600080fd5b6119c5611951565b82356119d081611457565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff80821115611a0157600080fd5b9085019036601f830112611a1457600080fd5b813581811115611a2657611a2661193b565b611a38601f8201601f1916850161197a565b91508082523684828501011115611a4e57600080fd5b808484018584013760009082019093019290925250606082015292915050565b60008235603e1983360301811261191857600080fd5b634e487b7160e01b600052601260045260246000fd5b600082611aa957611aa9611a84565b500490565b634e487b7160e01b600052600160045260246000fd5b8183823760009101908152919050565b600081518084526020808501808196508360051b8101915082860160005b85811015611b1c578284038952611b0a848351611666565b98850198935090840190600101611af2565b5091979650505050505050565b6001600160a01b038616815260a060208201819052600090611b4d90830187611ad4565b8281036040840152611b5f8187611ad4565b90508281036060840152611b738186611ad4565b91505082151560808301529695505050505050565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b60ff82811682821603908111156107af576107af61186e565b600060ff831680611be357611be3611a84565b8060ff84160691505092915050565b808201808211156107af576107af61186e565b60008451611c17818460208901611642565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b600052602160045260246000fd5b8281526040602082015260006105d7604083018461166656fea164736f6c6343000811000a"; -const isSuperArgs = (xs) => xs.length > 1; -class ZilliqaRecover__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(overrides) { - return super.getDeployTransaction(overrides || {}); - } - deploy(overrides) { - return super.deploy(overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.ZilliqaRecover__factory = ZilliqaRecover__factory; -ZilliqaRecover__factory.bytecode = _bytecode; -ZilliqaRecover__factory.abi = _abi; diff --git a/dist/types/factories/contracts/custody/index.d.ts b/dist/types/factories/contracts/custody/index.d.ts deleted file mode 100644 index c42d3a60..00000000 --- a/dist/types/factories/contracts/custody/index.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export { ENSCustody__factory } from "./ENSCustody__factory"; -export { IENSCustody__factory } from "./IENSCustody__factory"; -export { ZilliqaRecover__factory } from "./ZilliqaRecover__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/custody/index.d.ts.map b/dist/types/factories/contracts/custody/index.d.ts.map deleted file mode 100644 index df8de20d..00000000 --- a/dist/types/factories/contracts/custody/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/custody/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/contracts/custody/index.js b/dist/types/factories/contracts/custody/index.js deleted file mode 100644 index 08ca206c..00000000 --- a/dist/types/factories/contracts/custody/index.js +++ /dev/null @@ -1,9 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ZilliqaRecover__factory = exports.IENSCustody__factory = exports.ENSCustody__factory = void 0; -var ENSCustody__factory_1 = require("./ENSCustody__factory"); -Object.defineProperty(exports, "ENSCustody__factory", { enumerable: true, get: function () { return ENSCustody__factory_1.ENSCustody__factory; } }); -var IENSCustody__factory_1 = require("./IENSCustody__factory"); -Object.defineProperty(exports, "IENSCustody__factory", { enumerable: true, get: function () { return IENSCustody__factory_1.IENSCustody__factory; } }); -var ZilliqaRecover__factory_1 = require("./ZilliqaRecover__factory"); -Object.defineProperty(exports, "ZilliqaRecover__factory", { enumerable: true, get: function () { return ZilliqaRecover__factory_1.ZilliqaRecover__factory; } }); diff --git a/dist/types/factories/contracts/history/IUNSRegistryV07__factory.d.ts b/dist/types/factories/contracts/history/IUNSRegistryV07__factory.d.ts deleted file mode 100644 index b85c4f56..00000000 --- a/dist/types/factories/contracts/history/IUNSRegistryV07__factory.d.ts +++ /dev/null @@ -1,895 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IUNSRegistryV07, IUNSRegistryV07Interface } from "../../../contracts/history/IUNSRegistryV07"; -export declare class IUNSRegistryV07__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "address"; - readonly name: "previousAdmin"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "address"; - readonly name: "newAdmin"; - readonly type: "address"; - }]; - readonly name: "AdminChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "approved"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Approval"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "ApprovalForAll"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly indexed: true; - readonly internalType: "string"; - readonly name: "keyIndex"; - readonly type: "string"; - }, { - readonly indexed: false; - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }]; - readonly name: "NewKey"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly indexed: false; - readonly internalType: "string"; - readonly name: "uri"; - readonly type: "string"; - }]; - readonly name: "NewURI"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "string"; - readonly name: "prefix"; - readonly type: "string"; - }]; - readonly name: "NewURIPrefix"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }]; - readonly name: "RemoveReverse"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "ResetRecords"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly indexed: true; - readonly internalType: "string"; - readonly name: "keyIndex"; - readonly type: "string"; - }, { - readonly indexed: true; - readonly internalType: "string"; - readonly name: "valueIndex"; - readonly type: "string"; - }, { - readonly indexed: false; - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }, { - readonly indexed: false; - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }]; - readonly name: "Set"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "SetReverse"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Transfer"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "implementation"; - readonly type: "address"; - }]; - readonly name: "Upgraded"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }]; - readonly name: "addProxyReader"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "approve"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "balanceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "balance"; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "burn"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "user"; - readonly type: "address"; - }, { - readonly internalType: "bytes"; - readonly name: "depositData"; - readonly type: "bytes"; - }]; - readonly name: "deposit"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "depositToPolygon"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "exists"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "get"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getApproved"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "keyHash"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getByHash"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }, { - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getMany"; - readonly outputs: readonly [{ - readonly internalType: "string[]"; - readonly name: ""; - readonly type: "string[]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256[]"; - readonly name: "keyHashes"; - readonly type: "uint256[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getManyByHash"; - readonly outputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly name: "isApprovedForAll"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "spender"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "isApprovedOrOwner"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "user"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "mint"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "user"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "metaData"; - readonly type: "bytes"; - }]; - readonly name: "mint"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "string"; - readonly name: "uri"; - readonly type: "string"; - }]; - readonly name: "mintTLD"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "string[]"; - readonly name: "labels"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }, { - readonly internalType: "bool"; - readonly name: "withReverse"; - readonly type: "bool"; - }]; - readonly name: "mintWithRecords"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "name"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "labels"; - readonly type: "string[]"; - }]; - readonly name: "namehash"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "pure"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "onERC721Received"; - readonly outputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: ""; - readonly type: "bytes4"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "ownerOf"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "reconfigure"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "removeReverse"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "reset"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "resolverOf"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }]; - readonly name: "reverseNameOf"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }]; - readonly name: "reverseOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }, { - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "set"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly internalType: "bool"; - readonly name: "_approved"; - readonly type: "bool"; - }]; - readonly name: "setApprovalForAll"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "keyHash"; - readonly type: "uint256"; - }, { - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "setByHash"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "setMany"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256[]"; - readonly name: "keyHashes"; - readonly type: "uint256[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "setManyByHash"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "setOwner"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "labels"; - readonly type: "string[]"; - }]; - readonly name: "setReverse"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "prefix"; - readonly type: "string"; - }]; - readonly name: "setTokenURIPrefix"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "symbol"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "tokenURI"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "transferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "string[]"; - readonly name: "labels"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }, { - readonly internalType: "bool"; - readonly name: "withReverse"; - readonly type: "bool"; - }]; - readonly name: "unlockWithRecords"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes"; - readonly name: "inputData"; - readonly type: "bytes"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }]; - readonly name: "withdrawFromPolygon"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): IUNSRegistryV07Interface; - static connect(address: string, runner?: ContractRunner | null): IUNSRegistryV07; -} -//# sourceMappingURL=IUNSRegistryV07__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/history/IUNSRegistryV07__factory.d.ts.map b/dist/types/factories/contracts/history/IUNSRegistryV07__factory.d.ts.map deleted file mode 100644 index ab564b88..00000000 --- a/dist/types/factories/contracts/history/IUNSRegistryV07__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IUNSRegistryV07__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/history/IUNSRegistryV07__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,eAAe,EACf,wBAAwB,EACzB,MAAM,4CAA4C,CAAC;AAkoCpD,qBAAa,wBAAwB;IACnC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,wBAAwB;IAGlD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,eAAe;CAGnB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/history/IUNSRegistryV07__factory.js b/dist/types/factories/contracts/history/IUNSRegistryV07__factory.js deleted file mode 100644 index c9552b22..00000000 --- a/dist/types/factories/contracts/history/IUNSRegistryV07__factory.js +++ /dev/null @@ -1,1165 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IUNSRegistryV07__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "previousAdmin", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "newAdmin", - type: "address", - }, - ], - name: "AdminChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "approved", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Approval", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: false, - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "ApprovalForAll", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - indexed: true, - internalType: "string", - name: "keyIndex", - type: "string", - }, - { - indexed: false, - internalType: "string", - name: "key", - type: "string", - }, - ], - name: "NewKey", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - indexed: false, - internalType: "string", - name: "uri", - type: "string", - }, - ], - name: "NewURI", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "string", - name: "prefix", - type: "string", - }, - ], - name: "NewURIPrefix", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "addr", - type: "address", - }, - ], - name: "RemoveReverse", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "ResetRecords", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - indexed: true, - internalType: "string", - name: "keyIndex", - type: "string", - }, - { - indexed: true, - internalType: "string", - name: "valueIndex", - type: "string", - }, - { - indexed: false, - internalType: "string", - name: "key", - type: "string", - }, - { - indexed: false, - internalType: "string", - name: "value", - type: "string", - }, - ], - name: "Set", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "addr", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "SetReverse", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Transfer", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "implementation", - type: "address", - }, - ], - name: "Upgraded", - type: "event", - }, - { - inputs: [ - { - internalType: "address", - name: "addr", - type: "address", - }, - ], - name: "addProxyReader", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "approve", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "balance", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "burn", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "user", - type: "address", - }, - { - internalType: "bytes", - name: "depositData", - type: "bytes", - }, - ], - name: "deposit", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "depositToPolygon", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "exists", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "key", - type: "string", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "get", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getApproved", - outputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "keyHash", - type: "uint256", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getByHash", - outputs: [ - { - internalType: "string", - name: "key", - type: "string", - }, - { - internalType: "string", - name: "value", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getMany", - outputs: [ - { - internalType: "string[]", - name: "", - type: "string[]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256[]", - name: "keyHashes", - type: "uint256[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getManyByHash", - outputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - name: "isApprovedForAll", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "spender", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "isApprovedOrOwner", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "user", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "mint", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "user", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "metaData", - type: "bytes", - }, - ], - name: "mint", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "string", - name: "uri", - type: "string", - }, - ], - name: "mintTLD", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "string[]", - name: "labels", - type: "string[]", - }, - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - { - internalType: "bool", - name: "withReverse", - type: "bool", - }, - ], - name: "mintWithRecords", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "name", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string[]", - name: "labels", - type: "string[]", - }, - ], - name: "namehash", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "pure", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "onERC721Received", - outputs: [ - { - internalType: "bytes4", - name: "", - type: "bytes4", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "ownerOf", - outputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "reconfigure", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "removeReverse", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "reset", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "resolverOf", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "addr", - type: "address", - }, - ], - name: "reverseNameOf", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "addr", - type: "address", - }, - ], - name: "reverseOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "safeTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "safeTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "key", - type: "string", - }, - { - internalType: "string", - name: "value", - type: "string", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "set", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "bool", - name: "_approved", - type: "bool", - }, - ], - name: "setApprovalForAll", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "keyHash", - type: "uint256", - }, - { - internalType: "string", - name: "value", - type: "string", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "setByHash", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "setMany", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256[]", - name: "keyHashes", - type: "uint256[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "setManyByHash", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "setOwner", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "string[]", - name: "labels", - type: "string[]", - }, - ], - name: "setReverse", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "prefix", - type: "string", - }, - ], - name: "setTokenURIPrefix", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "symbol", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "tokenURI", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "transferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "string[]", - name: "labels", - type: "string[]", - }, - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - { - internalType: "bool", - name: "withReverse", - type: "bool", - }, - ], - name: "unlockWithRecords", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes", - name: "inputData", - type: "bytes", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - ], - name: "withdrawFromPolygon", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -class IUNSRegistryV07__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IUNSRegistryV07__factory = IUNSRegistryV07__factory; -IUNSRegistryV07__factory.abi = _abi; diff --git a/dist/types/factories/contracts/history/ProxyReaderV04__factory.d.ts b/dist/types/factories/contracts/history/ProxyReaderV04__factory.d.ts deleted file mode 100644 index 69609797..00000000 --- a/dist/types/factories/contracts/history/ProxyReaderV04__factory.d.ts +++ /dev/null @@ -1,477 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../common"; -import type { ProxyReaderV04, ProxyReaderV04Interface } from "../../../contracts/history/ProxyReaderV04"; -declare type ProxyReaderV04ConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class ProxyReaderV04__factory extends ContractFactory { - constructor(...args: ProxyReaderV04ConstructorParams); - getDeployTransaction(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): ProxyReaderV04__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b50612c48806100206000396000f3fe608060405234801561001057600080fd5b506004361061018e5760003560e01c8063869b8884116100de578063b3f9e4cb11610097578063c15ae7cf11610071578063c15ae7cf14610410578063c87b56dd14610430578063e985e9c514610443578063ffa1ad741461045657600080fd5b8063b3f9e4cb146103c9578063b85afd28146103dc578063bebec6b4146103fd57600080fd5b8063869b8884146102ff57806391015f6b14610322578063933c051d14610344578063a3f4df7e14610366578063a81ce6f914610396578063ac9650d8146103a957600080fd5b8063430c20811161014b5780636352211e116101255780636352211e146102a5578063672b9f81146102b857806370a08231146102d95780637e37479e146102ec57600080fd5b8063430c20811461026a578063485cc9551461027d5780634f558e791461029257600080fd5b806301ffc9a71461019357806303280755146101bb578063081812fc146101de5780631bd8cc1a146102095780631be5e7ed14610229578063276fabb114610249575b600080fd5b6101a66101a1366004612046565b61047a565b60405190151581526020015b60405180910390f35b6101ce6101c93660046120b4565b6104e7565b6040516101b294939291906121a7565b6101f16101ec3660046121f0565b61050a565b6040516001600160a01b0390911681526020016101b2565b61021c6102173660046120b4565b61060f565b6040516101b29190612209565b61023c61023736600461221c565b61062e565b6040516101b29190612293565b61025c6102573660046122a6565b610759565b6040519081526020016101b2565b6101a66102783660046122ff565b6107cd565b61029061028b36600461232b565b6108e0565b005b6101a66102a03660046121f0565b610a30565b6101f16102b33660046121f0565b610a3b565b6102cb6102c6366004612364565b610a46565b6040516101b2929190612386565b61025c6102e73660046123ab565b610b76565b61025c6102fa3660046123ab565b610c74565b61031261030d3660046123c8565b610ce3565b6040516101b2949392919061250f565b6103356103303660046120b4565b610ed9565b6040516101b29392919061255c565b6103576103523660046123c8565b610ef9565b6040516101b293929190612588565b61023c604051806040016040528060118152602001702aa7299d10283937bc3c902932b0b232b960791b81525081565b6101f16103a43660046121f0565b611082565b6103bc6103b73660046122a6565b611150565b6040516101b291906125cb565b6101f16103d73660046121f0565b611244565b6103ef6103ea3660046120b4565b6112ca565b6040516101b292919061262d565b61023c61040b3660046123ab565b6114a6565b61042361041e3660046122a6565b61151a565b6040516101b29190612652565b61023c61043e3660046121f0565b6115c8565b6101a661045136600461232b565b61169a565b61023c60405180604001604052806005815260200164302e342e3160d81b81525081565b60006001600160e01b031982166362526e6360e01b14806104ab57506001600160e01b03198216636fa624af60e11b145b806104c657506001600160e01b031982166308da864d60e31b145b806104e157506301ffc9a760e01b6001600160e01b03198316145b92915050565b6000806060806104f88787876116e5565b93509350935093505b93509350935093565b600061051582611947565b61052157506000919050565b61052a826119df565b6105a15760665460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa158015610578573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061059c9190612665565b6104e1565b60655460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa1580156105eb573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104e19190612665565b606061062461061e8486612712565b83611a26565b90505b9392505050565b6060610639826119df565b156106be57606554604051631be5e7ed60e01b81526001600160a01b0390911690631be5e7ed90610672908790879087906004016127ef565b600060405180830381865afa15801561068f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106b79190810190612858565b9050610627565b60006106c983611ba9565b90506001600160a01b0381163b1561075157604051631be5e7ed60e01b81526001600160a01b03821690631be5e7ed9061070b908890889088906004016127ef565b600060405180830381865afa92505050801561074957506040513d6000823e601f3d908101601f191682016040526107469190810190612858565b60015b156107515791505b509392505050565b60655460405163276fabb160e01b81526000916001600160a01b03169063276fabb19061078c908690869060040161291d565b602060405180830381865afa1580156107a9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106279190612931565b60006107d882611947565b6107e4575060006104e1565b6107ed826119df565b61086b5760665460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610842573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610866919061294a565b610627565b60655460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa1580156108bc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610627919061294a565b600054610100900460ff16158080156109005750600054600160ff909116105b8061091a5750303b15801561091a575060005460ff166001145b6109825760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff1916600117905580156109a5576000805461ff0019166101001790555b606580546001600160a01b038086166001600160a01b03199283161790925560668054928516929091169190911790556109dd611c1c565b6109e5611c1c565b8015610a2b576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b60006104e182611947565b60006104e182611c89565b606080610a52836119df565b15610ad85760655460405163672b9f8160e01b815260048101869052602481018590526001600160a01b039091169063672b9f8190604401600060405180830381865afa158015610aa7573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610acf919081019061296c565b91509150610b6f565b6000610ae384611ba9565b90506001600160a01b0381163b15610b6d5760405163672b9f8160e01b815260048101869052602481018590526001600160a01b0382169063672b9f8190604401600060405180830381865afa925050508015610b6257506040513d6000823e601f3d908101601f19168201604052610b5f919081019061296c565b60015b15610b6d5790935091505b505b9250929050565b6065546040516370a0823160e01b81526001600160a01b03838116600483015260009283929116906370a0823190602401602060405180830381865afa158015610bc4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610be89190612931565b6066549091506001600160a01b0316156104e1576066546040516370a0823160e01b81526001600160a01b038581166004830152909116906370a0823190602401602060405180830381865afa158015610c46573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c6a9190612931565b61062790826129e5565b606554604051633f1ba3cf60e11b81526001600160a01b0383811660048301526000921690637e37479e90602401602060405180830381865afa158015610cbf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104e19190612931565b6060808080846001600160401b03811115610d0057610d00612682565b604051908082528060200260200182016040528015610d29578160200160208202803683370190505b509350846001600160401b03811115610d4457610d44612682565b604051908082528060200260200182016040528015610d6d578160200160208202803683370190505b509250846001600160401b03811115610d8857610d88612682565b604051908082528060200260200182016040528015610dbb57816020015b6060815260200190600190039081610da65790505b509150846001600160401b03811115610dd657610dd6612682565b604051908082528060200260200182016040528015610e0957816020015b6060815260200190600190039081610df45790505b50905060005b85811015610ecd57610e3a8989898985818110610e2e57610e2e6129f8565b905060200201356116e5565b888581518110610e4c57610e4c6129f8565b60200260200101888681518110610e6557610e656129f8565b60200260200101888781518110610e7e57610e7e6129f8565b60200260200101888881518110610e9757610e976129f8565b6020908102919091010193909352929091526001600160a01b039283169091529116905280610ec581612a0e565b915050610e0f565b50945094509450949050565b6000806060610ee9868686611caa565b9250925092505b93509350939050565b60608080836001600160401b03811115610f1557610f15612682565b604051908082528060200260200182016040528015610f3e578160200160208202803683370190505b509250836001600160401b03811115610f5957610f59612682565b604051908082528060200260200182016040528015610f82578160200160208202803683370190505b509150836001600160401b03811115610f9d57610f9d612682565b604051908082528060200260200182016040528015610fd057816020015b6060815260200190600190039081610fbb5790505b50905060005b84811015611077576110018888888885818110610ff557610ff56129f8565b90506020020135611caa565b868481518110611013576110136129f8565b6020026020010186858151811061102c5761102c6129f8565b60200260200101868681518110611045576110456129f8565b60209081029190910101929092526001600160a01b03928316909152911690528061106f81612a0e565b915050610fd6565b509450945094915050565b606554604051634f558e7960e01b8152600481018390526000916001600160a01b031690634f558e7990602401602060405180830381865afa1580156110cc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110f0919061294a565b156111065750506065546001600160a01b031690565b6066546001600160a01b0316158015906111325750600061112683611eb5565b6001600160a01b031614155b156111485750506066546001600160a01b031690565b506000919050565b6060816001600160401b0381111561116a5761116a612682565b60405190808252806020026020018201604052801561119d57816020015b60608152602001906001900390816111885790505b50905060005b8281101561123d5761120d308585848181106111c1576111c16129f8565b90506020028101906111d39190612a27565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611ee792505050565b82828151811061121f5761121f6129f8565b6020026020010181905250808061123590612a0e565b9150506111a3565b5092915050565b600061124f82611947565b61125b57506000919050565b611264826119df565b6112995760665460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb9060240161055b565b60655460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb906024016105ce565b606080836001600160401b038111156112e5576112e5612682565b60405190808252806020026020018201604052801561131857816020015b60608152602001906001900390816113035790505b509150836001600160401b0381111561133357611333612682565b60405190808252806020026020018201604052801561136657816020015b60608152602001906001900390816113515790505b509050611372836119df565b156113f95760655460405163170b5fa560e31b81526001600160a01b039091169063b85afd28906113ab90889088908890600401612a6d565b600060405180830381865afa1580156113c8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526113f09190810190612b35565b9150915061149e565b600061140484611ba9565b90506001600160a01b0381163b1515801561141e57508415155b1561149c5760405163170b5fa560e31b81526001600160a01b0382169063b85afd289061145390899089908990600401612a6d565b600060405180830381865afa92505050801561149157506040513d6000823e601f3d908101601f1916820160405261148e9190810190612b35565b60015b1561149c5790935091505b505b935093915050565b606554604051632fafb1ad60e21b81526001600160a01b038381166004830152606092169063bebec6b4906024015b600060405180830381865afa1580156114f2573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526104e19190810190612858565b6060816001600160401b0381111561153457611534612682565b60405190808252806020026020018201604052801561155d578160200160208202803683370190505b50905060005b8281101561123d5761158c848483818110611580576115806129f8565b90506020020135611c89565b82828151811061159e5761159e6129f8565b6001600160a01b0390921660209283029190910190910152806115c081612a0e565b915050611563565b60606115d382611947565b6115eb57505060408051602081019091526000815290565b6115f4826119df565b6116695760665460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401600060405180830381865afa158015611641573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261059c9190810190612858565b60655460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd906024016114d5565b60405162461bcd60e51b815260206004820152601f60248201527f50726f78795265616465723a20554e535550504f525445445f4d4554484f44006044820152600090606401610979565b600080606080856001600160401b0381111561170357611703612682565b60405190808252806020026020018201604052801561173657816020015b60608152602001906001900390816117215790505b509150856001600160401b0381111561175157611751612682565b60405190808252806020026020018201604052801561178457816020015b606081526020019060019003908161176f5790505b509050611790856119df565b156118915760655460405163b3f9e4cb60e01b8152600481018790526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa1580156117de573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118029190612665565b935061180d85611fdb565b60655460405163170b5fa560e31b81529194506001600160a01b03169063b85afd2890611842908a908a908a90600401612a6d565b600060405180830381865afa15801561185f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526118879190810190612b35565b9092509050610501565b61189a85611ba9565b93506118a585611eb5565b92506001600160a01b0384163b151580156118c1575060008251115b156105015760405163170b5fa560e31b81526001600160a01b0385169063b85afd28906118f6908a908a908a90600401612a6d565b600060405180830381865afa92505050801561193457506040513d6000823e601f3d908101601f191682016040526119319190810190612b35565b60015b1561050157909250905093509350935093565b6000611952826119df565b61197157600061196183611eb5565b6001600160a01b031614156104e1565b606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e79906024015b602060405180830381865afa1580156119bb573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104e1919061294a565b6066546000906001600160a01b031615806104e15750606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e799060240161199e565b606082516001600160401b03811115611a4157611a41612682565b604051908082528060200260200182016040528015611a7457816020015b6060815260200190600190039081611a5f5790505b509050611a80826119df565b15611b0357606554604051630dec660d60e11b81526001600160a01b0390911690631bd8cc1a90611ab79086908690600401612b8e565b600060405180830381865afa158015611ad4573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611afc9190810190612bb0565b90506104e1565b6000611b0e83611ba9565b90506001600160a01b0381163b15158015611b2a575060008451115b1561123d57604051630dec660d60e11b81526001600160a01b03821690631bd8cc1a90611b5d9087908790600401612b8e565b600060405180830381865afa925050508015611b9b57506040513d6000823e601f3d908101601f19168201604052611b989190810190612bb0565b60015b1561123d575b949350505050565b60665460405163b3f9e4cb60e01b8152600481018390526000916001600160a01b03169063b3f9e4cb906024015b602060405180830381865afa925050508015611c10575060408051601f3d908101601f19168201909252611c0d91810190612665565b60015b6104e157506000919050565b600054610100900460ff16611c875760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608401610979565b565b6000611c94826119df565b611ca15761059c82611eb5565b6104e182611fdb565b6000806060846001600160401b03811115611cc757611cc7612682565b604051908082528060200260200182016040528015611cfa57816020015b6060815260200190600190039081611ce55790505b509050611d06846119df565b15611e045760655460405163b3f9e4cb60e01b8152600481018690526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa158015611d54573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d789190612665565b9250611d8384611fdb565b606554604051630dec660d60e11b81529193506001600160a01b031690631bd8cc1a90611db890899089908990600401612be4565b600060405180830381865afa158015611dd5573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611dfd9190810190612bb0565b9050610ef0565b611e0d84611ba9565b9250611e1884611eb5565b91506001600160a01b0383163b15158015611e3257508415155b15610ef057604051630dec660d60e11b81526001600160a01b03841690631bd8cc1a90611e6790899089908990600401612be4565b600060405180830381865afa925050508015611ea557506040513d6000823e601f3d908101601f19168201604052611ea29190810190612bb0565b60015b15610ef057905093509350939050565b6066546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401611bd7565b60606001600160a01b0383163b611f4f5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b6064820152608401610979565b600080846001600160a01b031684604051611f6a9190612bf8565b600060405180830381855af49150503d8060008114611fa5576040519150601f19603f3d011682016040523d82523d6000602084013e611faa565b606091505b5091509150611fd28282604051806060016040528060278152602001612c156027913961200d565b95945050505050565b6065546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401611bd7565b6060831561201c575081610627565b82511561202c5782518084602001fd5b8160405162461bcd60e51b81526004016109799190612293565b60006020828403121561205857600080fd5b81356001600160e01b03198116811461062757600080fd5b60008083601f84011261208257600080fd5b5081356001600160401b0381111561209957600080fd5b6020830191508360208260051b8501011115610b6f57600080fd5b6000806000604084860312156120c957600080fd5b83356001600160401b038111156120df57600080fd5b6120eb86828701612070565b909790965060209590950135949350505050565b60005b8381101561211a578181015183820152602001612102565b50506000910152565b6000815180845261213b8160208601602086016120ff565b601f01601f19169290920160200192915050565b600082825180855260208086019550808260051b84010181860160005b8481101561219a57601f19868403018952612188838351612123565b9884019892509083019060010161216c565b5090979650505050505050565b6001600160a01b038581168252841660208201526080604082018190526000906121d39083018561214f565b82810360608401526121e5818561214f565b979650505050505050565b60006020828403121561220257600080fd5b5035919050565b602081526000610627602083018461214f565b60008060006040848603121561223157600080fd5b83356001600160401b038082111561224857600080fd5b818601915086601f83011261225c57600080fd5b81358181111561226b57600080fd5b87602082850101111561227d57600080fd5b6020928301989097509590910135949350505050565b6020815260006106276020830184612123565b600080602083850312156122b957600080fd5b82356001600160401b038111156122cf57600080fd5b6122db85828601612070565b90969095509350505050565b6001600160a01b03811681146122fc57600080fd5b50565b6000806040838503121561231257600080fd5b823561231d816122e7565b946020939093013593505050565b6000806040838503121561233e57600080fd5b8235612349816122e7565b91506020830135612359816122e7565b809150509250929050565b6000806040838503121561237757600080fd5b50508035926020909101359150565b6040815260006123996040830185612123565b8281036020840152611fd28185612123565b6000602082840312156123bd57600080fd5b8135610627816122e7565b600080600080604085870312156123de57600080fd5b84356001600160401b03808211156123f557600080fd5b61240188838901612070565b9096509450602087013591508082111561241a57600080fd5b5061242787828801612070565b95989497509550505050565b600081518084526020808501945080840160005b8381101561246c5781516001600160a01b031687529582019590820190600101612447565b509495945050505050565b600081518084526020808501808196506005915083821b81018387016000805b87811015612500578484038b5282518051808652908801908886019080891b87018a01855b828110156124ea57601f198983030184526124d8828651612123565b948c0194938c019391506001016124bc565b509d8a019d965050509287019250600101612497565b50919998505050505050505050565b6080815260006125226080830187612433565b82810360208401526125348187612433565b905082810360408401526125488186612477565b905082810360608401526121e58185612477565b6001600160a01b03848116825283166020820152606060408201819052600090611fd29083018461214f565b60608152600061259b6060830186612433565b82810360208401526125ad8186612433565b905082810360408401526125c18185612477565b9695505050505050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b8281101561262057603f1988860301845261260e858351612123565b945092850192908501906001016125f2565b5092979650505050505050565b604081526000612640604083018561214f565b8281036020840152611fd2818561214f565b6020815260006106276020830184612433565b60006020828403121561267757600080fd5b8151610627816122e7565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b03811182821017156126c0576126c0612682565b604052919050565b60006001600160401b038211156126e1576126e1612682565b5060051b60200190565b60006001600160401b0382111561270457612704612682565b50601f01601f191660200190565b6000612725612720846126c8565b612698565b80848252602080830192508560051b85013681111561274357600080fd5b855b818110156127ba5780356001600160401b038111156127645760008081fd5b870136601f8201126127765760008081fd5b8035612784612720826126eb565b81815236868385010111156127995760008081fd5b81868401878301376000918101860191909152865250938201938201612745565b50919695505050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b6040815260006128036040830185876127c6565b9050826020830152949350505050565b600082601f83011261282457600080fd5b8151612832612720826126eb565b81815284602083860101111561284757600080fd5b611ba18260208301602087016120ff565b60006020828403121561286a57600080fd5b81516001600160401b0381111561288057600080fd5b611ba184828501612813565b81835260006020808501808196508560051b810191508460005b878110156129105782840389528135601e198836030181126128c757600080fd5b870185810190356001600160401b038111156128e257600080fd5b8036038213156128f157600080fd5b6128fc8682846127c6565b9a87019a95505050908401906001016128a6565b5091979650505050505050565b60208152600061062460208301848661288c565b60006020828403121561294357600080fd5b5051919050565b60006020828403121561295c57600080fd5b8151801515811461062757600080fd5b6000806040838503121561297f57600080fd5b82516001600160401b038082111561299657600080fd5b6129a286838701612813565b935060208501519150808211156129b857600080fd5b506129c585828601612813565b9150509250929050565b634e487b7160e01b600052601160045260246000fd5b808201808211156104e1576104e16129cf565b634e487b7160e01b600052603260045260246000fd5b600060018201612a2057612a206129cf565b5060010190565b6000808335601e19843603018112612a3e57600080fd5b8301803591506001600160401b03821115612a5857600080fd5b602001915036819003821315610b6f57600080fd5b6040808252810183905260006001600160fb1b03841115612a8d57600080fd5b8360051b808660608501376020830193909352500160600192915050565b600082601f830112612abc57600080fd5b81516020612acc612720836126c8565b82815260059290921b84018101918181019086841115612aeb57600080fd5b8286015b84811015612b2a5780516001600160401b03811115612b0e5760008081fd5b612b1c8986838b0101612813565b845250918301918301612aef565b509695505050505050565b60008060408385031215612b4857600080fd5b82516001600160401b0380821115612b5f57600080fd5b612b6b86838701612aab565b93506020850151915080821115612b8157600080fd5b506129c585828601612aab565b604081526000612ba1604083018561214f565b90508260208301529392505050565b600060208284031215612bc257600080fd5b81516001600160401b03811115612bd857600080fd5b611ba184828501612aab565b60408152600061280360408301858761288c565b60008251612c0a8184602087016120ff565b919091019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a"; - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "uint8"; - readonly name: "version"; - readonly type: "uint8"; - }]; - readonly name: "Initialized"; - readonly type: "event"; - }, { - readonly inputs: readonly []; - readonly name: "NAME"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "VERSION"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "balanceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "exists"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "get"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getApproved"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "keyHash"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getByHash"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }, { - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getData"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256[]"; - readonly name: "keyHashes"; - readonly type: "uint256[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getDataByHash"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256[]"; - readonly name: "keyHashes"; - readonly type: "uint256[]"; - }, { - readonly internalType: "uint256[]"; - readonly name: "tokenIds"; - readonly type: "uint256[]"; - }]; - readonly name: "getDataByHashForMany"; - readonly outputs: readonly [{ - readonly internalType: "address[]"; - readonly name: "resolvers"; - readonly type: "address[]"; - }, { - readonly internalType: "address[]"; - readonly name: "owners"; - readonly type: "address[]"; - }, { - readonly internalType: "string[][]"; - readonly name: "keys"; - readonly type: "string[][]"; - }, { - readonly internalType: "string[][]"; - readonly name: "values"; - readonly type: "string[][]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "uint256[]"; - readonly name: "tokenIds"; - readonly type: "uint256[]"; - }]; - readonly name: "getDataForMany"; - readonly outputs: readonly [{ - readonly internalType: "address[]"; - readonly name: "resolvers"; - readonly type: "address[]"; - }, { - readonly internalType: "address[]"; - readonly name: "owners"; - readonly type: "address[]"; - }, { - readonly internalType: "string[][]"; - readonly name: "values"; - readonly type: "string[][]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getMany"; - readonly outputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256[]"; - readonly name: "keyHashes"; - readonly type: "uint256[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getManyByHash"; - readonly outputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "contract IUNSRegistry"; - readonly name: "unsRegistry"; - readonly type: "address"; - }, { - readonly internalType: "contract ICNSRegistry"; - readonly name: "cnsRegistry"; - readonly type: "address"; - }]; - readonly name: "initialize"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly name: "isApprovedForAll"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "pure"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "spender"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "isApprovedOrOwner"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes[]"; - readonly name: "data"; - readonly type: "bytes[]"; - }]; - readonly name: "multicall"; - readonly outputs: readonly [{ - readonly internalType: "bytes[]"; - readonly name: "results"; - readonly type: "bytes[]"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "labels"; - readonly type: "string[]"; - }]; - readonly name: "namehash"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "ownerOf"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256[]"; - readonly name: "tokenIds"; - readonly type: "uint256[]"; - }]; - readonly name: "ownerOfForMany"; - readonly outputs: readonly [{ - readonly internalType: "address[]"; - readonly name: "owners"; - readonly type: "address[]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "registryOf"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "resolverOf"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }]; - readonly name: "reverseNameOf"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }]; - readonly name: "reverseOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "tokenURI"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): ProxyReaderV04Interface; - static connect(address: string, runner?: ContractRunner | null): ProxyReaderV04; -} -export {}; -//# sourceMappingURL=ProxyReaderV04__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/history/ProxyReaderV04__factory.d.ts.map b/dist/types/factories/contracts/history/ProxyReaderV04__factory.d.ts.map deleted file mode 100644 index 2bec1804..00000000 --- a/dist/types/factories/contracts/history/ProxyReaderV04__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ProxyReaderV04__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/history/ProxyReaderV04__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,KAAK,EACV,cAAc,EACd,uBAAuB,EACxB,MAAM,2CAA2C,CAAC;AAomBnD,aAAK,+BAA+B,GAChC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,uBAAwB,SAAQ,eAAe;gBAC9C,GAAG,IAAI,EAAE,+BAA+B;IAQ3C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,uBAAuB;IAIxE,MAAM,CAAC,QAAQ,CAAC,QAAQ,wtsBAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,uBAAuB;IAGjD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,cAAc;CAGlB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/history/ProxyReaderV04__factory.js b/dist/types/factories/contracts/history/ProxyReaderV04__factory.js deleted file mode 100644 index 99acd98a..00000000 --- a/dist/types/factories/contracts/history/ProxyReaderV04__factory.js +++ /dev/null @@ -1,640 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ProxyReaderV04__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint8", - name: "version", - type: "uint8", - }, - ], - name: "Initialized", - type: "event", - }, - { - inputs: [], - name: "NAME", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "VERSION", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "exists", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "key", - type: "string", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "get", - outputs: [ - { - internalType: "string", - name: "value", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getApproved", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "keyHash", - type: "uint256", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getByHash", - outputs: [ - { - internalType: "string", - name: "key", - type: "string", - }, - { - internalType: "string", - name: "value", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getData", - outputs: [ - { - internalType: "address", - name: "resolver", - type: "address", - }, - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256[]", - name: "keyHashes", - type: "uint256[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getDataByHash", - outputs: [ - { - internalType: "address", - name: "resolver", - type: "address", - }, - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256[]", - name: "keyHashes", - type: "uint256[]", - }, - { - internalType: "uint256[]", - name: "tokenIds", - type: "uint256[]", - }, - ], - name: "getDataByHashForMany", - outputs: [ - { - internalType: "address[]", - name: "resolvers", - type: "address[]", - }, - { - internalType: "address[]", - name: "owners", - type: "address[]", - }, - { - internalType: "string[][]", - name: "keys", - type: "string[][]", - }, - { - internalType: "string[][]", - name: "values", - type: "string[][]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "uint256[]", - name: "tokenIds", - type: "uint256[]", - }, - ], - name: "getDataForMany", - outputs: [ - { - internalType: "address[]", - name: "resolvers", - type: "address[]", - }, - { - internalType: "address[]", - name: "owners", - type: "address[]", - }, - { - internalType: "string[][]", - name: "values", - type: "string[][]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getMany", - outputs: [ - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256[]", - name: "keyHashes", - type: "uint256[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getManyByHash", - outputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "contract IUNSRegistry", - name: "unsRegistry", - type: "address", - }, - { - internalType: "contract ICNSRegistry", - name: "cnsRegistry", - type: "address", - }, - ], - name: "initialize", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - { - internalType: "address", - name: "", - type: "address", - }, - ], - name: "isApprovedForAll", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "pure", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "spender", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "isApprovedOrOwner", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes[]", - name: "data", - type: "bytes[]", - }, - ], - name: "multicall", - outputs: [ - { - internalType: "bytes[]", - name: "results", - type: "bytes[]", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "string[]", - name: "labels", - type: "string[]", - }, - ], - name: "namehash", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "ownerOf", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256[]", - name: "tokenIds", - type: "uint256[]", - }, - ], - name: "ownerOfForMany", - outputs: [ - { - internalType: "address[]", - name: "owners", - type: "address[]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "registryOf", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "resolverOf", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "addr", - type: "address", - }, - ], - name: "reverseNameOf", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "addr", - type: "address", - }, - ], - name: "reverseOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "tokenURI", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -const _bytecode = "0x608060405234801561001057600080fd5b50612c48806100206000396000f3fe608060405234801561001057600080fd5b506004361061018e5760003560e01c8063869b8884116100de578063b3f9e4cb11610097578063c15ae7cf11610071578063c15ae7cf14610410578063c87b56dd14610430578063e985e9c514610443578063ffa1ad741461045657600080fd5b8063b3f9e4cb146103c9578063b85afd28146103dc578063bebec6b4146103fd57600080fd5b8063869b8884146102ff57806391015f6b14610322578063933c051d14610344578063a3f4df7e14610366578063a81ce6f914610396578063ac9650d8146103a957600080fd5b8063430c20811161014b5780636352211e116101255780636352211e146102a5578063672b9f81146102b857806370a08231146102d95780637e37479e146102ec57600080fd5b8063430c20811461026a578063485cc9551461027d5780634f558e791461029257600080fd5b806301ffc9a71461019357806303280755146101bb578063081812fc146101de5780631bd8cc1a146102095780631be5e7ed14610229578063276fabb114610249575b600080fd5b6101a66101a1366004612046565b61047a565b60405190151581526020015b60405180910390f35b6101ce6101c93660046120b4565b6104e7565b6040516101b294939291906121a7565b6101f16101ec3660046121f0565b61050a565b6040516001600160a01b0390911681526020016101b2565b61021c6102173660046120b4565b61060f565b6040516101b29190612209565b61023c61023736600461221c565b61062e565b6040516101b29190612293565b61025c6102573660046122a6565b610759565b6040519081526020016101b2565b6101a66102783660046122ff565b6107cd565b61029061028b36600461232b565b6108e0565b005b6101a66102a03660046121f0565b610a30565b6101f16102b33660046121f0565b610a3b565b6102cb6102c6366004612364565b610a46565b6040516101b2929190612386565b61025c6102e73660046123ab565b610b76565b61025c6102fa3660046123ab565b610c74565b61031261030d3660046123c8565b610ce3565b6040516101b2949392919061250f565b6103356103303660046120b4565b610ed9565b6040516101b29392919061255c565b6103576103523660046123c8565b610ef9565b6040516101b293929190612588565b61023c604051806040016040528060118152602001702aa7299d10283937bc3c902932b0b232b960791b81525081565b6101f16103a43660046121f0565b611082565b6103bc6103b73660046122a6565b611150565b6040516101b291906125cb565b6101f16103d73660046121f0565b611244565b6103ef6103ea3660046120b4565b6112ca565b6040516101b292919061262d565b61023c61040b3660046123ab565b6114a6565b61042361041e3660046122a6565b61151a565b6040516101b29190612652565b61023c61043e3660046121f0565b6115c8565b6101a661045136600461232b565b61169a565b61023c60405180604001604052806005815260200164302e342e3160d81b81525081565b60006001600160e01b031982166362526e6360e01b14806104ab57506001600160e01b03198216636fa624af60e11b145b806104c657506001600160e01b031982166308da864d60e31b145b806104e157506301ffc9a760e01b6001600160e01b03198316145b92915050565b6000806060806104f88787876116e5565b93509350935093505b93509350935093565b600061051582611947565b61052157506000919050565b61052a826119df565b6105a15760665460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa158015610578573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061059c9190612665565b6104e1565b60655460405163020604bf60e21b8152600481018490526001600160a01b039091169063081812fc906024015b602060405180830381865afa1580156105eb573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104e19190612665565b606061062461061e8486612712565b83611a26565b90505b9392505050565b6060610639826119df565b156106be57606554604051631be5e7ed60e01b81526001600160a01b0390911690631be5e7ed90610672908790879087906004016127ef565b600060405180830381865afa15801561068f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106b79190810190612858565b9050610627565b60006106c983611ba9565b90506001600160a01b0381163b1561075157604051631be5e7ed60e01b81526001600160a01b03821690631be5e7ed9061070b908890889088906004016127ef565b600060405180830381865afa92505050801561074957506040513d6000823e601f3d908101601f191682016040526107469190810190612858565b60015b156107515791505b509392505050565b60655460405163276fabb160e01b81526000916001600160a01b03169063276fabb19061078c908690869060040161291d565b602060405180830381865afa1580156107a9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106279190612931565b60006107d882611947565b6107e4575060006104e1565b6107ed826119df565b61086b5760665460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa158015610842573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610866919061294a565b610627565b60655460405163430c208160e01b81526001600160a01b038581166004830152602482018590529091169063430c208190604401602060405180830381865afa1580156108bc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610627919061294a565b600054610100900460ff16158080156109005750600054600160ff909116105b8061091a5750303b15801561091a575060005460ff166001145b6109825760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff1916600117905580156109a5576000805461ff0019166101001790555b606580546001600160a01b038086166001600160a01b03199283161790925560668054928516929091169190911790556109dd611c1c565b6109e5611c1c565b8015610a2b576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b60006104e182611947565b60006104e182611c89565b606080610a52836119df565b15610ad85760655460405163672b9f8160e01b815260048101869052602481018590526001600160a01b039091169063672b9f8190604401600060405180830381865afa158015610aa7573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610acf919081019061296c565b91509150610b6f565b6000610ae384611ba9565b90506001600160a01b0381163b15610b6d5760405163672b9f8160e01b815260048101869052602481018590526001600160a01b0382169063672b9f8190604401600060405180830381865afa925050508015610b6257506040513d6000823e601f3d908101601f19168201604052610b5f919081019061296c565b60015b15610b6d5790935091505b505b9250929050565b6065546040516370a0823160e01b81526001600160a01b03838116600483015260009283929116906370a0823190602401602060405180830381865afa158015610bc4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610be89190612931565b6066549091506001600160a01b0316156104e1576066546040516370a0823160e01b81526001600160a01b038581166004830152909116906370a0823190602401602060405180830381865afa158015610c46573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c6a9190612931565b61062790826129e5565b606554604051633f1ba3cf60e11b81526001600160a01b0383811660048301526000921690637e37479e90602401602060405180830381865afa158015610cbf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104e19190612931565b6060808080846001600160401b03811115610d0057610d00612682565b604051908082528060200260200182016040528015610d29578160200160208202803683370190505b509350846001600160401b03811115610d4457610d44612682565b604051908082528060200260200182016040528015610d6d578160200160208202803683370190505b509250846001600160401b03811115610d8857610d88612682565b604051908082528060200260200182016040528015610dbb57816020015b6060815260200190600190039081610da65790505b509150846001600160401b03811115610dd657610dd6612682565b604051908082528060200260200182016040528015610e0957816020015b6060815260200190600190039081610df45790505b50905060005b85811015610ecd57610e3a8989898985818110610e2e57610e2e6129f8565b905060200201356116e5565b888581518110610e4c57610e4c6129f8565b60200260200101888681518110610e6557610e656129f8565b60200260200101888781518110610e7e57610e7e6129f8565b60200260200101888881518110610e9757610e976129f8565b6020908102919091010193909352929091526001600160a01b039283169091529116905280610ec581612a0e565b915050610e0f565b50945094509450949050565b6000806060610ee9868686611caa565b9250925092505b93509350939050565b60608080836001600160401b03811115610f1557610f15612682565b604051908082528060200260200182016040528015610f3e578160200160208202803683370190505b509250836001600160401b03811115610f5957610f59612682565b604051908082528060200260200182016040528015610f82578160200160208202803683370190505b509150836001600160401b03811115610f9d57610f9d612682565b604051908082528060200260200182016040528015610fd057816020015b6060815260200190600190039081610fbb5790505b50905060005b84811015611077576110018888888885818110610ff557610ff56129f8565b90506020020135611caa565b868481518110611013576110136129f8565b6020026020010186858151811061102c5761102c6129f8565b60200260200101868681518110611045576110456129f8565b60209081029190910101929092526001600160a01b03928316909152911690528061106f81612a0e565b915050610fd6565b509450945094915050565b606554604051634f558e7960e01b8152600481018390526000916001600160a01b031690634f558e7990602401602060405180830381865afa1580156110cc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110f0919061294a565b156111065750506065546001600160a01b031690565b6066546001600160a01b0316158015906111325750600061112683611eb5565b6001600160a01b031614155b156111485750506066546001600160a01b031690565b506000919050565b6060816001600160401b0381111561116a5761116a612682565b60405190808252806020026020018201604052801561119d57816020015b60608152602001906001900390816111885790505b50905060005b8281101561123d5761120d308585848181106111c1576111c16129f8565b90506020028101906111d39190612a27565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611ee792505050565b82828151811061121f5761121f6129f8565b6020026020010181905250808061123590612a0e565b9150506111a3565b5092915050565b600061124f82611947565b61125b57506000919050565b611264826119df565b6112995760665460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb9060240161055b565b60655460405163b3f9e4cb60e01b8152600481018490526001600160a01b039091169063b3f9e4cb906024016105ce565b606080836001600160401b038111156112e5576112e5612682565b60405190808252806020026020018201604052801561131857816020015b60608152602001906001900390816113035790505b509150836001600160401b0381111561133357611333612682565b60405190808252806020026020018201604052801561136657816020015b60608152602001906001900390816113515790505b509050611372836119df565b156113f95760655460405163170b5fa560e31b81526001600160a01b039091169063b85afd28906113ab90889088908890600401612a6d565b600060405180830381865afa1580156113c8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526113f09190810190612b35565b9150915061149e565b600061140484611ba9565b90506001600160a01b0381163b1515801561141e57508415155b1561149c5760405163170b5fa560e31b81526001600160a01b0382169063b85afd289061145390899089908990600401612a6d565b600060405180830381865afa92505050801561149157506040513d6000823e601f3d908101601f1916820160405261148e9190810190612b35565b60015b1561149c5790935091505b505b935093915050565b606554604051632fafb1ad60e21b81526001600160a01b038381166004830152606092169063bebec6b4906024015b600060405180830381865afa1580156114f2573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526104e19190810190612858565b6060816001600160401b0381111561153457611534612682565b60405190808252806020026020018201604052801561155d578160200160208202803683370190505b50905060005b8281101561123d5761158c848483818110611580576115806129f8565b90506020020135611c89565b82828151811061159e5761159e6129f8565b6001600160a01b0390921660209283029190910190910152806115c081612a0e565b915050611563565b60606115d382611947565b6115eb57505060408051602081019091526000815290565b6115f4826119df565b6116695760665460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd90602401600060405180830381865afa158015611641573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261059c9190810190612858565b60655460405163c87b56dd60e01b8152600481018490526001600160a01b039091169063c87b56dd906024016114d5565b60405162461bcd60e51b815260206004820152601f60248201527f50726f78795265616465723a20554e535550504f525445445f4d4554484f44006044820152600090606401610979565b600080606080856001600160401b0381111561170357611703612682565b60405190808252806020026020018201604052801561173657816020015b60608152602001906001900390816117215790505b509150856001600160401b0381111561175157611751612682565b60405190808252806020026020018201604052801561178457816020015b606081526020019060019003908161176f5790505b509050611790856119df565b156118915760655460405163b3f9e4cb60e01b8152600481018790526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa1580156117de573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118029190612665565b935061180d85611fdb565b60655460405163170b5fa560e31b81529194506001600160a01b03169063b85afd2890611842908a908a908a90600401612a6d565b600060405180830381865afa15801561185f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526118879190810190612b35565b9092509050610501565b61189a85611ba9565b93506118a585611eb5565b92506001600160a01b0384163b151580156118c1575060008251115b156105015760405163170b5fa560e31b81526001600160a01b0385169063b85afd28906118f6908a908a908a90600401612a6d565b600060405180830381865afa92505050801561193457506040513d6000823e601f3d908101601f191682016040526119319190810190612b35565b60015b1561050157909250905093509350935093565b6000611952826119df565b61197157600061196183611eb5565b6001600160a01b031614156104e1565b606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e79906024015b602060405180830381865afa1580156119bb573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104e1919061294a565b6066546000906001600160a01b031615806104e15750606554604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e799060240161199e565b606082516001600160401b03811115611a4157611a41612682565b604051908082528060200260200182016040528015611a7457816020015b6060815260200190600190039081611a5f5790505b509050611a80826119df565b15611b0357606554604051630dec660d60e11b81526001600160a01b0390911690631bd8cc1a90611ab79086908690600401612b8e565b600060405180830381865afa158015611ad4573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611afc9190810190612bb0565b90506104e1565b6000611b0e83611ba9565b90506001600160a01b0381163b15158015611b2a575060008451115b1561123d57604051630dec660d60e11b81526001600160a01b03821690631bd8cc1a90611b5d9087908790600401612b8e565b600060405180830381865afa925050508015611b9b57506040513d6000823e601f3d908101601f19168201604052611b989190810190612bb0565b60015b1561123d575b949350505050565b60665460405163b3f9e4cb60e01b8152600481018390526000916001600160a01b03169063b3f9e4cb906024015b602060405180830381865afa925050508015611c10575060408051601f3d908101601f19168201909252611c0d91810190612665565b60015b6104e157506000919050565b600054610100900460ff16611c875760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608401610979565b565b6000611c94826119df565b611ca15761059c82611eb5565b6104e182611fdb565b6000806060846001600160401b03811115611cc757611cc7612682565b604051908082528060200260200182016040528015611cfa57816020015b6060815260200190600190039081611ce55790505b509050611d06846119df565b15611e045760655460405163b3f9e4cb60e01b8152600481018690526001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa158015611d54573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d789190612665565b9250611d8384611fdb565b606554604051630dec660d60e11b81529193506001600160a01b031690631bd8cc1a90611db890899089908990600401612be4565b600060405180830381865afa158015611dd5573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611dfd9190810190612bb0565b9050610ef0565b611e0d84611ba9565b9250611e1884611eb5565b91506001600160a01b0383163b15158015611e3257508415155b15610ef057604051630dec660d60e11b81526001600160a01b03841690631bd8cc1a90611e6790899089908990600401612be4565b600060405180830381865afa925050508015611ea557506040513d6000823e601f3d908101601f19168201604052611ea29190810190612bb0565b60015b15610ef057905093509350939050565b6066546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401611bd7565b60606001600160a01b0383163b611f4f5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b6064820152608401610979565b600080846001600160a01b031684604051611f6a9190612bf8565b600060405180830381855af49150503d8060008114611fa5576040519150601f19603f3d011682016040523d82523d6000602084013e611faa565b606091505b5091509150611fd28282604051806060016040528060278152602001612c156027913961200d565b95945050505050565b6065546040516331a9108f60e11b8152600481018390526000916001600160a01b031690636352211e90602401611bd7565b6060831561201c575081610627565b82511561202c5782518084602001fd5b8160405162461bcd60e51b81526004016109799190612293565b60006020828403121561205857600080fd5b81356001600160e01b03198116811461062757600080fd5b60008083601f84011261208257600080fd5b5081356001600160401b0381111561209957600080fd5b6020830191508360208260051b8501011115610b6f57600080fd5b6000806000604084860312156120c957600080fd5b83356001600160401b038111156120df57600080fd5b6120eb86828701612070565b909790965060209590950135949350505050565b60005b8381101561211a578181015183820152602001612102565b50506000910152565b6000815180845261213b8160208601602086016120ff565b601f01601f19169290920160200192915050565b600082825180855260208086019550808260051b84010181860160005b8481101561219a57601f19868403018952612188838351612123565b9884019892509083019060010161216c565b5090979650505050505050565b6001600160a01b038581168252841660208201526080604082018190526000906121d39083018561214f565b82810360608401526121e5818561214f565b979650505050505050565b60006020828403121561220257600080fd5b5035919050565b602081526000610627602083018461214f565b60008060006040848603121561223157600080fd5b83356001600160401b038082111561224857600080fd5b818601915086601f83011261225c57600080fd5b81358181111561226b57600080fd5b87602082850101111561227d57600080fd5b6020928301989097509590910135949350505050565b6020815260006106276020830184612123565b600080602083850312156122b957600080fd5b82356001600160401b038111156122cf57600080fd5b6122db85828601612070565b90969095509350505050565b6001600160a01b03811681146122fc57600080fd5b50565b6000806040838503121561231257600080fd5b823561231d816122e7565b946020939093013593505050565b6000806040838503121561233e57600080fd5b8235612349816122e7565b91506020830135612359816122e7565b809150509250929050565b6000806040838503121561237757600080fd5b50508035926020909101359150565b6040815260006123996040830185612123565b8281036020840152611fd28185612123565b6000602082840312156123bd57600080fd5b8135610627816122e7565b600080600080604085870312156123de57600080fd5b84356001600160401b03808211156123f557600080fd5b61240188838901612070565b9096509450602087013591508082111561241a57600080fd5b5061242787828801612070565b95989497509550505050565b600081518084526020808501945080840160005b8381101561246c5781516001600160a01b031687529582019590820190600101612447565b509495945050505050565b600081518084526020808501808196506005915083821b81018387016000805b87811015612500578484038b5282518051808652908801908886019080891b87018a01855b828110156124ea57601f198983030184526124d8828651612123565b948c0194938c019391506001016124bc565b509d8a019d965050509287019250600101612497565b50919998505050505050505050565b6080815260006125226080830187612433565b82810360208401526125348187612433565b905082810360408401526125488186612477565b905082810360608401526121e58185612477565b6001600160a01b03848116825283166020820152606060408201819052600090611fd29083018461214f565b60608152600061259b6060830186612433565b82810360208401526125ad8186612433565b905082810360408401526125c18185612477565b9695505050505050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b8281101561262057603f1988860301845261260e858351612123565b945092850192908501906001016125f2565b5092979650505050505050565b604081526000612640604083018561214f565b8281036020840152611fd2818561214f565b6020815260006106276020830184612433565b60006020828403121561267757600080fd5b8151610627816122e7565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b03811182821017156126c0576126c0612682565b604052919050565b60006001600160401b038211156126e1576126e1612682565b5060051b60200190565b60006001600160401b0382111561270457612704612682565b50601f01601f191660200190565b6000612725612720846126c8565b612698565b80848252602080830192508560051b85013681111561274357600080fd5b855b818110156127ba5780356001600160401b038111156127645760008081fd5b870136601f8201126127765760008081fd5b8035612784612720826126eb565b81815236868385010111156127995760008081fd5b81868401878301376000918101860191909152865250938201938201612745565b50919695505050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b6040815260006128036040830185876127c6565b9050826020830152949350505050565b600082601f83011261282457600080fd5b8151612832612720826126eb565b81815284602083860101111561284757600080fd5b611ba18260208301602087016120ff565b60006020828403121561286a57600080fd5b81516001600160401b0381111561288057600080fd5b611ba184828501612813565b81835260006020808501808196508560051b810191508460005b878110156129105782840389528135601e198836030181126128c757600080fd5b870185810190356001600160401b038111156128e257600080fd5b8036038213156128f157600080fd5b6128fc8682846127c6565b9a87019a95505050908401906001016128a6565b5091979650505050505050565b60208152600061062460208301848661288c565b60006020828403121561294357600080fd5b5051919050565b60006020828403121561295c57600080fd5b8151801515811461062757600080fd5b6000806040838503121561297f57600080fd5b82516001600160401b038082111561299657600080fd5b6129a286838701612813565b935060208501519150808211156129b857600080fd5b506129c585828601612813565b9150509250929050565b634e487b7160e01b600052601160045260246000fd5b808201808211156104e1576104e16129cf565b634e487b7160e01b600052603260045260246000fd5b600060018201612a2057612a206129cf565b5060010190565b6000808335601e19843603018112612a3e57600080fd5b8301803591506001600160401b03821115612a5857600080fd5b602001915036819003821315610b6f57600080fd5b6040808252810183905260006001600160fb1b03841115612a8d57600080fd5b8360051b808660608501376020830193909352500160600192915050565b600082601f830112612abc57600080fd5b81516020612acc612720836126c8565b82815260059290921b84018101918181019086841115612aeb57600080fd5b8286015b84811015612b2a5780516001600160401b03811115612b0e5760008081fd5b612b1c8986838b0101612813565b845250918301918301612aef565b509695505050505050565b60008060408385031215612b4857600080fd5b82516001600160401b0380821115612b5f57600080fd5b612b6b86838701612aab565b93506020850151915080821115612b8157600080fd5b506129c585828601612aab565b604081526000612ba1604083018561214f565b90508260208301529392505050565b600060208284031215612bc257600080fd5b81516001600160401b03811115612bd857600080fd5b611ba184828501612aab565b60408152600061280360408301858761288c565b60008251612c0a8184602087016120ff565b919091019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a"; -const isSuperArgs = (xs) => xs.length > 1; -class ProxyReaderV04__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(overrides) { - return super.getDeployTransaction(overrides || {}); - } - deploy(overrides) { - return super.deploy(overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.ProxyReaderV04__factory = ProxyReaderV04__factory; -ProxyReaderV04__factory.bytecode = _bytecode; -ProxyReaderV04__factory.abi = _abi; diff --git a/dist/types/factories/contracts/history/UNSRegistryV07__factory.d.ts b/dist/types/factories/contracts/history/UNSRegistryV07__factory.d.ts deleted file mode 100644 index 62d81d39..00000000 --- a/dist/types/factories/contracts/history/UNSRegistryV07__factory.d.ts +++ /dev/null @@ -1,1118 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../common"; -import type { UNSRegistryV07, UNSRegistryV07Interface } from "../../../contracts/history/UNSRegistryV07"; -declare type UNSRegistryV07ConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class UNSRegistryV07__factory extends ContractFactory { - constructor(...args: UNSRegistryV07ConstructorParams); - getDeployTransaction(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): UNSRegistryV07__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b50614c76806100206000396000f3fe608060405234801561001057600080fd5b50600436106103785760003560e01c806370a08231116101d3578063ba5d40b711610104578063ebf0c717116100a2578063f5c1f76e1161007c578063f5c1f76e14610806578063f7df5c6014610819578063f8c8765e1461082c578063ffa1ad741461083f57600080fd5b8063ebf0c717146107e4578063ec129eea146107eb578063f25eb5c1146107fe57600080fd5b8063c87b56dd116100de578063c87b56dd1461076f578063ce92b33e14610782578063cf2c52cb14610795578063e985e9c5146107a857600080fd5b8063ba5d40b714610736578063bb5b27e114610749578063bebec6b41461075c57600080fd5b8063a22cb46511610171578063ab3b87fe1161014b578063ab3b87fe146106dc578063b3f9e4cb146106ef578063b85afd2814610702578063b88d4fde1461072357600080fd5b8063a22cb4651461068a578063a3f4df7e1461069d578063a4247400146106c957600080fd5b80639508b1c4116101ad5780639508b1c4146106545780639559c0bd1461066757806395d89b411461066f57806399e0dd7c1461067757600080fd5b806370a082311461061b5780637e37479e1461062e57806394d008ef1461064157600080fd5b806342842e0e116102ad578063509602391161024b578063638e5c7811610225578063638e5c78146105b3578063663f7b2a146105c6578063672b9f81146105d95780636ccbae5f146105fa57600080fd5b80635096023914610571578063572b6c05146105845780636352211e146105a057600080fd5b806347c816991161028757806347c81699146105255780634a72584d146105385780634f558e791461054b57806350382c1a1461055e57600080fd5b806342842e0e146104ec57806342966c68146104ff578063430c20811461051257600080fd5b80631bf7e13e1161031a578063276fabb1116102f4578063276fabb11461049257806327f18975146104b3578063310bd74b146104c657806340c10f19146104d957600080fd5b80631bf7e13e146104595780631f71be061461046c57806323b872dd1461047f57600080fd5b8063095ea7b311610356578063095ea7b3146103e5578063150b7a02146103fa5780631bd8cc1a146104265780631be5e7ed1461044657600080fd5b806301ffc9a71461037d57806306fdde03146103a5578063081812fc146103ba575b600080fd5b61039061038b3660046139bf565b610863565b60405190151581526020015b60405180910390f35b6103ad610874565b60405161039c9190613a2c565b6103cd6103c8366004613a3f565b610906565b6040516001600160a01b03909116815260200161039c565b6103f86103f3366004613a6d565b61092d565b005b61040d610408366004613ada565b610946565b6040516001600160e01b0319909116815260200161039c565b610439610434366004613b90565b610aa0565b60405161039c9190613c30565b6103ad610454366004613c43565b610b96565b6103ad610467366004613c7a565b610be1565b6103f861047a366004613cff565b610cec565b6103f861048d366004613dbb565b610d93565b6104a56104a0366004613dfc565b610de6565b60405190815260200161039c565b6103f86104c1366004613e3d565b610df5565b6103f86104d4366004613a3f565b610e3d565b6103f86104e7366004613a6d565b610e78565b6103f86104fa366004613dbb565b610ec5565b6103f861050d366004613a3f565b610ee0565b610390610520366004613a6d565b610f24565b6103f8610533366004613eb0565b610f30565b6103f8610546366004613f11565b610f6f565b610390610559366004613a3f565b610fb5565b6103f861056c366004614018565b610fd4565b6103f861057f36600461404c565b61100a565b61039061059236600461404c565b6001600160a01b0316301490565b6103cd6105ae366004613a3f565b61106a565b6103f86105c1366004613a3f565b6110ca565b6103f86105d4366004614104565b611115565b6105ec6105e736600461414c565b61114e565b60405161039c92919061416e565b6104a5610608366004613a3f565b6000908152610100602052604090205490565b6104a561062936600461404c565b611166565b6104a561063c36600461404c565b6111ec565b6103f861064f366004614193565b61121d565b6103f86106623660046141ee565b61126c565b6104a5601481565b6103ad6112f3565b6103f8610685366004614291565b611302565b6103f86106983660046142c6565b611389565b6103ad6040518060400160405280600d81526020016c554e533a20526567697374727960981b81525081565b6103906106d7366004613c7a565b61139b565b6103f86106ea366004613a6d565b6113e6565b6103cd6106fd366004613a3f565b61142b565b610715610710366004613b90565b611455565b60405161039c9291906142f2565b6103f8610731366004614317565b611577565b6103f8610744366004613cff565b6115be565b6103ad610757366004613a3f565b61162f565b6103ad61076a36600461404c565b6116d1565b6103ad61077d366004613a3f565b61179b565b6103f8610790366004613e3d565b611801565b6103f86107a3366004614382565b611840565b6103906107b63660046143c9565b6001600160a01b039182166000908152606a6020908152604080832093909416825291909152205460ff1690565b60006104a5565b6103f86107f9366004613e3d565b61190f565b6103f861194e565b610439610814366004613dfc565b6119d5565b6103f8610827366004614402565b611a88565b6103f861083a366004614434565b611b19565b6103ad60405180604001604052806005815260200164302e372e3360d81b81525081565b600061086e82611cef565b92915050565b60606065805461088390614490565b80601f01602080910402602001604051908101604052809291908181526020018280546108af90614490565b80156108fc5780601f106108d1576101008083540402835291602001916108fc565b820191906000526020600020905b8154815290600101906020018083116108df57829003601f168201915b5050505050905090565b600061091182611d3f565b506000908152606960205260409020546001600160a01b031690565b8061093781611d9e565b6109418383611e04565b505050565b60007f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378546001600160a01b031661097b611f26565b6001600160a01b031603610a3c57610991611f26565b6001600160a01b03166342966c68856040518263ffffffff1660e01b81526004016109be91815260200190565b600060405180830381600087803b1580156109d857600080fd5b505af11580156109ec573d6000803e3d6000fd5b505050821580159150610a065750610a06828401846144c4565b15610a2457610a153085611f35565b610a1f8585612083565b610a2e565b610a2e8585611f35565b50630a85bd0160e11b610a97565b60405162461bcd60e51b815260206004820152602560248201527f52656769737472793a204552433732315f524543454956494e475f50524f4849604482015264109255115160da1b60648201526084015b60405180910390fd5b95945050505050565b6060826001600160401b03811115610aba57610aba613f63565b604051908082528060200260200182016040528015610aed57816020015b6060815260200190600190039081610ad85790505b50905060005b83811015610b8e57610b5e858583818110610b1057610b106144df565b9050602002810190610b2291906144f5565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525087925061212e915050565b828281518110610b7057610b706144df565b60200260200101819052508080610b8690614551565b915050610af3565b509392505050565b6060610bd984848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525086925061212e915050565b949350505050565b606060005a9050610bf385858561139b565b610c4f5760405162461bcd60e51b815260206004820152602760248201527f554e535265676973747279466f727761726465723a205349474e41545552455f6044820152661253959053125160ca1b6064820152608401610a8e565b610ce1610c5f602087018761404c565b30604088013584610c7360608b018b6144f5565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061216392505050565b9150505b9392505050565b610134546001600160a01b0316610d01611f26565b6001600160a01b031614610d275760405162461bcd60e51b8152600401610a8e9061456a565b6000610d3b610d36888a6145b1565b612244565b9050610d4681612293565b610d59610d528261106a565b8a83612300565b610d6686868686856124a7565b8115610d8857610d888982610d83610d7e8b8d6145b1565b612515565b612596565b505050505050505050565b80610da5610d9f611f26565b826125d8565b610dc15760405162461bcd60e51b8152600401610a8e906145be565b81610dcb81611d9e565b610dd483612293565b610ddf858585612300565b5050505050565b6000610ce5610d3683856145b1565b80610e01610d9f611f26565b610e1d5760405162461bcd60e51b8152600401610a8e906145be565b81610e2781611d9e565b610e348787878787612656565b50505050505050565b80610e49610d9f611f26565b610e655760405162461bcd60e51b8152600401610a8e906145be565b81610e6f81611d9e565b61094183612293565b610e806126b9565b6001600160a01b0316610e91611f26565b6001600160a01b031614610eb75760405162461bcd60e51b8152600401610a8e90614607565b610ec18282611f35565b5050565b61094183838360405180602001604052806000815250611577565b80610eec610d9f611f26565b610f085760405162461bcd60e51b8152600401610a8e906145be565b81610f1281611d9e565b610f1b83612293565b610941836127ba565b6000610ce583836125d8565b80610f3c610d9f611f26565b610f585760405162461bcd60e51b8152600401610a8e906145be565b81610f6281611d9e565b610e348787878787612861565b80610f7b610d9f611f26565b610f975760405162461bcd60e51b8152600401610a8e906145be565b81610fa181611d9e565b610fad86868686612940565b505050505050565b6000818152606760205260408120546001600160a01b0316151561086e565b61100781604051602001610fe89190614649565b6040516020818303038152906040528051906020012060001c826129e0565b50565b610134546001600160a01b031661101f611f26565b6001600160a01b0316146110455760405162461bcd60e51b8152600401610a8e9061456a565b6001600160a01b0316600090815261013660205260409020805460ff19166001179055565b6000818152606760205260408120546001600160a01b03168061086e5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610a8e565b806110d6610d9f611f26565b6110f25760405162461bcd60e51b8152600401610a8e906145be565b6111046110fd611f26565b3084612300565b610ec161110f611f26565b83612083565b600061112082612244565b905061112b81612a05565b61113481611d9e565b610ec161113f611f26565b8261114985612515565b612a75565b60608061115b8484612afc565b909590945092505050565b60006001600160a01b0382166111d05760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b6064820152608401610a8e565b506001600160a01b031660009081526068602052604090205490565b6001600160a01b0381166000908152610135602052604081205461120f81612b1d565b611217578091505b50919050565b6112256126b9565b6001600160a01b0316611236611f26565b6001600160a01b03161461125c5760405162461bcd60e51b8152600401610a8e90614607565b6112668484611f35565b50505050565b6112768787612b67565b61127e611f26565b6001600160a01b03166112908661106a565b6001600160a01b0316146112e65760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610a8e565b610e3484848484896124a7565b60606066805461088390614490565b610134546001600160a01b0316611317611f26565b6001600160a01b03161461133d5760405162461bcd60e51b8152600401610a8e9061456a565b61013361134b8284836146ab565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b828260405161137d929190614793565b60405180910390a15050565b610ec1611394611f26565b8383612bd6565b6000610bd96113a9856147a7565b3085858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250612ca492505050565b806113f2610d9f611f26565b61140e5760405162461bcd60e51b8152600401610a8e906145be565b8161141881611d9e565b6112666114248461106a565b8585612300565b6000818152606760205260408120546001600160a01b031661144e57600061086e565b3092915050565b606080836001600160401b0381111561147057611470613f63565b6040519080825280602002602001820160405280156114a357816020015b606081526020019060019003908161148e5790505b509150836001600160401b038111156114be576114be613f63565b6040519080825280602002602001820160405280156114f157816020015b60608152602001906001900390816114dc5790505b50905060005b8481101561156e57611521868683818110611514576115146144df565b9050602002013585612afc565b848381518110611533576115336144df565b6020026020010184848151811061154c5761154c6144df565b602002602001018290528290525050808061156690614551565b9150506114f7565b50935093915050565b81611583610d9f611f26565b61159f5760405162461bcd60e51b8152600401610a8e906145be565b826115a981611d9e565b6115b284612293565b610fad86868686612ded565b610134546001600160a01b03166115d3611f26565b6001600160a01b0316146115f95760405162461bcd60e51b8152600401610a8e9061456a565b6000611608610d36888a6145b1565b9050611622898261161c610d7e8b8d6145b1565b85612e20565b610d8886868686856124a7565b600081815260c96020526040902080546060919061164c90614490565b80601f016020809104026020016040519081016040528092919081815260200182805461167890614490565b80156116c55780601f1061169a576101008083540402835291602001916116c5565b820191906000526020600020905b8154815290600101906020018083116116a857829003601f168201915b50505050509050919050565b6001600160a01b038116600090815261013560205260409020546060906116f781612b1d565b61121757600081815261013860205260409020805461171590614490565b80601f016020809104026020016040519081016040528092919081815260200182805461174190614490565b801561178e5780601f106117635761010080835404028352916020019161178e565b820191906000526020600020905b81548152906001019060200180831161177157829003601f168201915b5050505050915050919050565b60606117a682611d3f565b60006117b0612e73565b905060008151116117d05760405180602001604052806000815250610ce5565b806117da84612e83565b6040516020016117eb929190614831565b6040516020818303038152906040529392505050565b8061180d610d9f611f26565b6118295760405162461bcd60e51b8152600401610a8e906145be565b8161183381611d9e565b610e3487878787876124a7565b7f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87546001600160a01b0316611873611f26565b6001600160a01b0316146118995760405162461bcd60e51b8152600401610a8e90614607565b60208190036118bc5760006118b082840184613a3f565b90506112668482611f35565b60006118ca82840184614860565b805190915060005b81811015610fad576118fd868483815181106118f0576118f06144df565b6020026020010151611f35565b8061190781614551565b9150506118d2565b8061191b610d9f611f26565b6119375760405162461bcd60e51b8152600401610a8e906145be565b8161194181611d9e565b610e348787878787612f83565b6000611958611f26565b6001600160a01b03811660009081526101356020526040812054919250036119cc5760405162461bcd60e51b815260206004820152602160248201527f52656769737472793a20524556455253455f5245434f52445f49535f454d50546044820152605960f81b6064820152608401610a8e565b61100781612f99565b6060816001600160401b038111156119ef576119ef613f63565b604051908082528060200260200182016040528015611a2257816020015b6060815260200190600190039081611a0d5790505b50905060005b82811015611a8157611a51848483818110611a4557611a456144df565b9050602002013561162f565b828281518110611a6357611a636144df565b60200260200101819052508080611a7990614551565b915050611a28565b5092915050565b610134546001600160a01b0316611a9d611f26565b6001600160a01b031614611ac35760405162461bcd60e51b8152600401610a8e9061456a565b61013454611ada906001600160a01b031684611f35565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c39528383604051611b0c929190614793565b60405180910390a2505050565b600054610100900460ff1615808015611b395750600054600160ff909116105b80611b535750303b158015611b53575060005460ff166001145b611bb65760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610a8e565b6000805460ff191660011790558015611bd9576000805461ff0019166101001790555b61013480546001600160a01b0319166001600160a01b038716179055837f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec9237880546001600160a01b0319166001600160a01b03929092169190911790556040805180820182526013815272556e73746f707061626c6520446f6d61696e7360681b60208083019190915282518084019093526002835261155160f21b90830152611c8191612fde565b611c8961301e565b611c9161301e565b611c9a83613047565b611ca382613077565b8015610ddf576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b60006001600160e01b031982166380ac58cd60e01b1480611d2057506001600160e01b03198216635b5e139f60e01b145b8061086e57506301ffc9a760e01b6001600160e01b031983161461086e565b6000818152606760205260409020546001600160a01b03166110075760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610a8e565b303303611dfb57611dad6130a7565b81146110075760405162461bcd60e51b815260206004820152601760248201527f52656769737472793a20544f4b454e5f494e56414c49440000000000000000006044820152606401610a8e565b611007816130bb565b6000611e0f8261106a565b9050806001600160a01b0316836001600160a01b031603611e7c5760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b6064820152608401610a8e565b806001600160a01b0316611e8e611f26565b6001600160a01b03161480611eaa5750611eaa816107b6611f26565b611f1c5760405162461bcd60e51b815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c00006064820152608401610a8e565b61094183836130e9565b6000611f30613157565b905090565b6001600160a01b038216611f8b5760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610a8e565b6000818152606760205260409020546001600160a01b031615611ff05760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610a8e565b611ffc60008383613172565b6001600160a01b03821660009081526068602052604081208054600192906120259084906148f0565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b03861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b600061208d6126b9565b905061209981836130e9565b600080516020614c4a83398151915254604080516020808201869052825180830390910181528183019283905263e3dec8fb60e01b9092526001600160a01b0390921691829163e3dec8fb916120f6918891309190604401614903565b600060405180830381600087803b15801561211057600080fd5b505af1158015612124573d6000803e3d6000fd5b5050505050505050565b6060610ce5836040516020016121449190614649565b6040516020818303038152906040528051906020012060001c8361320f565b606061216e856130bb565b600080876001600160a01b0316866121888b8a89896132f1565b6040516121959190614649565b60006040518083038160008787f1925050503d80600081146121d3576040519150601f19603f3d011682016040523d82523d6000602084013e6121d8565b606091505b5090925090506121e9603f87614945565b5a116121f7576121f7614959565b61223782826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c4544000000000000815250613321565b9998505050505050505050565b805160009081905b8015611a815761227f828561226260018561496f565b81518110612272576122726144df565b602002602001015161335a565b91508061228b81614982565b91505061224c565b61229c81613406565b6040516020016122ae91815260200190565b60408051601f198184030181528282528051602091820120600085815260cb9092529181209190915582917f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9190a250565b826001600160a01b03166123138261106a565b6001600160a01b0316146123775760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b6064820152608401610a8e565b6001600160a01b0382166123d95760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610a8e565b6123e4838383613172565b6123ef6000826130e9565b6001600160a01b038316600090815260686020526040812080546001929061241890849061496f565b90915550506001600160a01b03821660009081526068602052604081208054600192906124469084906148f0565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60005b84811015610fad576125038686838181106124c7576124c76144df565b90506020028101906124d991906144f5565b8686858181106124eb576124eb6144df565b90506020028101906124fd91906144f5565b86612861565b8061250d81614551565b9150506124aa565b606060008260008151811061252c5761252c6144df565b602002602001015190506000600190505b8351811015611a815781848281518110612559576125596144df565b6020026020010151604051602001612572929190614999565b6040516020818303038152906040529150808061258e90614551565b91505061253d565b61dead6001600160a01b038416148015906125c857506001600160a01b03831660009081526101356020526040902054155b1561094157610941838383612a75565b6000806125e48361106a565b9050806001600160a01b0316846001600160a01b0316148061262b57506001600160a01b038082166000908152606a602090815260408083209388168352929052205460ff165b80610bd95750836001600160a01b031661264484610906565b6001600160a01b031614949350505050565b60005b84811015610fad576126a7868683818110612676576126766144df565b9050602002013585858481811061268f5761268f6144df565b90506020028101906126a191906144f5565b85612940565b806126b181614551565b915050612659565b600080516020614c4a833981519152546000906001600160a01b031680156127b65760405163721804d360e11b81523060048201526000906001600160a01b0383169063e43009a690602401602060405180830381865afa158015612722573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061274691906149d5565b60405163e66f960360e01b8152600481018290529091506001600160a01b0383169063e66f960390602401602060405180830381865afa15801561278e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127b291906149ee565b9250505b5090565b60006127c58261106a565b90506127d381600084613172565b6127de6000836130e9565b6001600160a01b038116600090815260686020526040812080546001929061280790849061496f565b909155505060008281526067602052604080822080546001600160a01b0319169055518391906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b60008585604051602001612876929190614a0b565b60408051601f198184030181528282528051602091820120601f89018290048202840182019092528783529092506128ca91839189908990819084018382808284376000920191909152506129e092505050565b610fad8187878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061342e915050565b61294984613563565b6129955760405162461bcd60e51b815260206004820152601c60248201527f5265636f726453746f726167653a204b45595f4e4f545f464f554e44000000006044820152606401610a8e565b611266846129a28661162f565b85858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525087925061342e915050565b6129e982613563565b610ec157600082815260c9602052604090206109418282614a1b565b612a0d611f26565b6001600160a01b0316612a1f8261106a565b6001600160a01b0316146110075760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610a8e565b6000828152610138602052604090208054612a8f90614490565b9050600003612ab357600082815261013860205260409020612ab18282614a1b565b505b6001600160a01b03831660008181526101356020526040808220859055518492917feb76a21470988c474a21f690cc28fee1ed511bd812dc3c21fd0f49c5e5d4708a91a3505050565b606080612b088461162f565b9150612b14848461320f565b90509250929050565b6000818152610137602052604081205460ff16801561086e57506101366000612b44611f26565b6001600160a01b0316815260208101919091526040016000205460ff1692915050565b600080516020614c4a83398151915254604051633805550f60e01b81526001600160a01b03909116908190633805550f90612ba89086908690600401614793565b600060405180830381600087803b158015612bc257600080fd5b505af1158015610e34573d6000803e3d6000fd5b816001600160a01b0316836001600160a01b031603612c375760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610a8e565b6001600160a01b038381166000818152606a6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015612ceb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612d0f91906149d5565b90506000612dbd866060015180519060200120868860200151604051602001612d5d9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b9050818660200151148015612de357508551612de3906001600160a01b03168286613589565b9695505050505050565b612df8848484612300565b612e04848484846136cb565b6112665760405162461bcd60e51b8152600401610a8e90614ada565b612e2a8484611f35565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c395283604051612e5a9190613a2c565b60405180910390a2801561126657611266848484612596565b6060610133805461088390614490565b606081600003612eaa5750506040805180820190915260018152600360fc1b602082015290565b8160005b8115612ed45780612ebe81614551565b9150612ecd9050600a83614945565b9150612eae565b6000816001600160401b03811115612eee57612eee613f63565b6040519080825280601f01601f191660200182016040528015612f18576020820181803683370190505b5090505b8415610bd957612f2d60018361496f565b9150612f3a600a86614b2c565b612f459060306148f0565b60f81b818381518110612f5a57612f5a6144df565b60200101906001600160f81b031916908160001a905350612f7c600a86614945565b9450612f1c565b612f8c81612293565b610ddf85858585856124a7565b6001600160a01b03811660008181526101356020526040808220829055517ffcf5eec0cfa3e6332f5f0e63ec242d71f866a61d121d6cdf5c2eb3b668a26c4f9190a250565b600054610100900460ff166130055760405162461bcd60e51b8152600401610a8e90614b40565b60656130118382614a1b565b5060666109418282614a1b565b600054610100900460ff166130455760405162461bcd60e51b8152600401610a8e90614b40565b565b600054610100900460ff1661306e5760405162461bcd60e51b8152600401610a8e90614b40565b611007816137d0565b600054610100900460ff1661309e5760405162461bcd60e51b8152600401610a8e90614b40565b61100781613829565b60003033036130b85750601f193601355b90565b600081815261010060205260409020546130d69060016148f0565b6000918252610100602052604090912055565b600081815260696020526040902080546001600160a01b0319166001600160a01b038416908117909155819061311e8261106a565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b600030330361316d575060331936013560601c90565b503390565b6000818152610137602052604090205460ff16158061319957506001600160a01b03821615155b6131e55760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a20544f4b454e5f555047524144454400000000000000006044820152606401610a8e565b6001600160a01b038316600090815261013560205260409020548190036109415761094183612f99565b606061321a82612b1d565b15613234575060408051602081019091526000815261086e565b60ca600061324184613406565b81526020019081526020016000206000848152602001908152602001600020805461326b90614490565b80601f016020809104026020016040519081016040528092919081815260200182805461329790614490565b80156132e45780601f106132b9576101008083540402835291602001916132e4565b820191906000526020600020905b8154815290600101906020018083116132c757829003601f168201915b5050505050905092915050565b606082858560405160200161330893929190614b8b565b6040516020818303038152906040529050949350505050565b60608315613330575081610ce5565b8251156133405782518084602001fd5b8160405162461bcd60e51b8152600401610a8e9190613a2c565b600081516000036133a55760405162461bcd60e51b815260206004820152601560248201527452656769737472793a204c4142454c5f454d50545960581b6044820152606401610a8e565b82826040516020016133b79190614649565b604051602081830303815290604052805190602001206040516020016133e7929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b600081815260cb6020526040812054156127b657600082815260cb602052604090205461086e565b60ca600061343b83613406565b81526020019081526020016000206000858152602001908152602001600020805461346590614490565b90506000036134bd578260405161347c9190614649565b6040518091039020817f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f86856040516134b49190613a2c565b60405180910390a35b8160ca60006134cb84613406565b8152602001908152602001600020600086815260200190815260200160002090816134f69190614a1b565b50816040516135059190614649565b60405180910390208360405161351b9190614649565b6040518091039020827f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d92868660405161355592919061416e565b60405180910390a450505050565b600081815260c960205260408120805482919061357f90614490565b9050119050919050565b60008060006135988585613877565b909250905060008160048111156135b1576135b1614bca565b1480156135cf5750856001600160a01b0316826001600160a01b0316145b156135df57600192505050610ce5565b600080876001600160a01b0316631626ba7e60e01b8888604051602401613607929190614be0565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516136459190614649565b600060405180830381855afa9150503d8060008114613680576040519150601f19603f3d011682016040523d82523d6000602084013e613685565b606091505b5091509150818015613698575080516020145b80156136bf57508051630b135d3f60e11b906136bd90830160209081019084016149d5565b145b98975050505050505050565b60006001600160a01b0384163b156137c857836001600160a01b031663150b7a026136f4611f26565b8786866040518563ffffffff1660e01b81526004016137169493929190614bf9565b6020604051808303816000875af1925050508015613751575060408051601f3d908101601f1916820190925261374e91810190614c2c565b60015b6137ae573d80801561377f576040519150601f19603f3d011682016040523d82523d6000602084013e613784565b606091505b5080516000036137a65760405162461bcd60e51b8152600401610a8e90614ada565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610bd9565b506001610bd9565b600054610100900460ff166137f75760405162461bcd60e51b8152600401610a8e90614b40565b80600080516020614c4a8339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b600054610100900460ff166138505760405162461bcd60e51b8152600401610a8e90614b40565b807f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87613808565b60008082516041036138ad5760208301516040840151606085015160001a6138a1878285856138bc565b945094505050506138b5565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08311156138f357506000905060036139a0565b8460ff16601b1415801561390b57508460ff16601c14155b1561391c57506000905060046139a0565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613970573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613999576000600192509250506139a0565b9150600090505b94509492505050565b6001600160e01b03198116811461100757600080fd5b6000602082840312156139d157600080fd5b8135610ce5816139a9565b60005b838110156139f75781810151838201526020016139df565b50506000910152565b60008151808452613a188160208601602086016139dc565b601f01601f19169290920160200192915050565b602081526000610ce56020830184613a00565b600060208284031215613a5157600080fd5b5035919050565b6001600160a01b038116811461100757600080fd5b60008060408385031215613a8057600080fd5b8235613a8b81613a58565b946020939093013593505050565b60008083601f840112613aab57600080fd5b5081356001600160401b03811115613ac257600080fd5b6020830191508360208285010111156138b557600080fd5b600080600080600060808688031215613af257600080fd5b8535613afd81613a58565b94506020860135613b0d81613a58565b93506040860135925060608601356001600160401b03811115613b2f57600080fd5b613b3b88828901613a99565b969995985093965092949392505050565b60008083601f840112613b5e57600080fd5b5081356001600160401b03811115613b7557600080fd5b6020830191508360208260051b85010111156138b557600080fd5b600080600060408486031215613ba557600080fd5b83356001600160401b03811115613bbb57600080fd5b613bc786828701613b4c565b909790965060209590950135949350505050565b600081518084526020808501808196508360051b8101915082860160005b85811015613c23578284038952613c11848351613a00565b98850198935090840190600101613bf9565b5091979650505050505050565b602081526000610ce56020830184613bdb565b600080600060408486031215613c5857600080fd5b83356001600160401b03811115613c6e57600080fd5b613bc786828701613a99565b600080600060408486031215613c8f57600080fd5b83356001600160401b0380821115613ca657600080fd5b9085019060808288031215613cba57600080fd5b90935060208501359080821115613cd057600080fd5b50613cdd86828701613a99565b9497909650939450505050565b80358015158114613cfa57600080fd5b919050565b60008060008060008060008060a0898b031215613d1b57600080fd5b8835613d2681613a58565b975060208901356001600160401b0380821115613d4257600080fd5b613d4e8c838d01613b4c565b909950975060408b0135915080821115613d6757600080fd5b613d738c838d01613b4c565b909750955060608b0135915080821115613d8c57600080fd5b50613d998b828c01613b4c565b9094509250613dac905060808a01613cea565b90509295985092959890939650565b600080600060608486031215613dd057600080fd5b8335613ddb81613a58565b92506020840135613deb81613a58565b929592945050506040919091013590565b60008060208385031215613e0f57600080fd5b82356001600160401b03811115613e2557600080fd5b613e3185828601613b4c565b90969095509350505050565b600080600080600060608688031215613e5557600080fd5b85356001600160401b0380821115613e6c57600080fd5b613e7889838a01613b4c565b90975095506020880135915080821115613e9157600080fd5b50613e9e88828901613b4c565b96999598509660400135949350505050565b600080600080600060608688031215613ec857600080fd5b85356001600160401b0380821115613edf57600080fd5b613eeb89838a01613a99565b90975095506020880135915080821115613f0457600080fd5b50613e9e88828901613a99565b60008060008060608587031215613f2757600080fd5b8435935060208501356001600160401b03811115613f4457600080fd5b613f5087828801613a99565b9598909750949560400135949350505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715613fa157613fa1613f63565b604052919050565b600082601f830112613fba57600080fd5b81356001600160401b03811115613fd357613fd3613f63565b613fe6601f8201601f1916602001613f79565b818152846020838601011115613ffb57600080fd5b816020850160208301376000918101602001919091529392505050565b60006020828403121561402a57600080fd5b81356001600160401b0381111561404057600080fd5b610bd984828501613fa9565b60006020828403121561405e57600080fd5b8135610ce581613a58565b60006001600160401b0382111561408257614082613f63565b5060051b60200190565b600061409f61409a84614069565b613f79565b8381529050602080820190600585901b8401868111156140be57600080fd5b845b818110156140f95780356001600160401b038111156140df5760008081fd5b6140eb89828901613fa9565b8552509282019282016140c0565b505050509392505050565b60006020828403121561411657600080fd5b81356001600160401b0381111561412c57600080fd5b8201601f8101841361413d57600080fd5b610bd98482356020840161408c565b6000806040838503121561415f57600080fd5b50508035926020909101359150565b6040815260006141816040830185613a00565b8281036020840152610ce18185613a00565b600080600080606085870312156141a957600080fd5b84356141b481613a58565b93506020850135925060408501356001600160401b038111156141d657600080fd5b6141e287828801613a99565b95989497509550505050565b60008060008060008060006080888a03121561420957600080fd5b87356001600160401b038082111561422057600080fd5b61422c8b838c01613a99565b909950975060208a0135965060408a013591508082111561424c57600080fd5b6142588b838c01613b4c565b909650945060608a013591508082111561427157600080fd5b5061427e8a828b01613b4c565b989b979a50959850939692959293505050565b600080602083850312156142a457600080fd5b82356001600160401b038111156142ba57600080fd5b613e3185828601613a99565b600080604083850312156142d957600080fd5b82356142e481613a58565b9150612b1460208401613cea565b6040815260006143056040830185613bdb565b8281036020840152610ce18185613bdb565b6000806000806080858703121561432d57600080fd5b843561433881613a58565b9350602085013561434881613a58565b92506040850135915060608501356001600160401b0381111561436a57600080fd5b61437687828801613fa9565b91505092959194509250565b60008060006040848603121561439757600080fd5b83356143a281613a58565b925060208401356001600160401b038111156143bd57600080fd5b613cdd86828701613a99565b600080604083850312156143dc57600080fd5b82356143e781613a58565b915060208301356143f781613a58565b809150509250929050565b60008060006040848603121561441757600080fd5b8335925060208401356001600160401b038111156143bd57600080fd5b6000806000806080858703121561444a57600080fd5b843561445581613a58565b9350602085013561446581613a58565b9250604085013561447581613a58565b9150606085013561448581613a58565b939692955090935050565b600181811c908216806144a457607f821691505b60208210810361121757634e487b7160e01b600052602260045260246000fd5b6000602082840312156144d657600080fd5b610ce582613cea565b634e487b7160e01b600052603260045260246000fd5b6000808335601e1984360301811261450c57600080fd5b8301803591506001600160401b0382111561452657600080fd5b6020019150368190038213156138b557600080fd5b634e487b7160e01b600052601160045260246000fd5b6000600182016145635761456361453b565b5060010190565b60208082526027908201527f52656769737472793a2053454e4445525f49535f4e4f545f4d494e54494e475f60408201526626a0a720a3a2a960c91b606082015260800190565b6000610ce536848461408c565b60208082526029908201527f52656769737472793a2053454e4445525f49535f4e4f545f415050524f5645446040820152682fa7a92fa7aba722a960b91b606082015260800190565b60208082526022908201527f52656769737472793a20494e53554646494349454e545f5045524d495353494f6040820152614e5360f01b606082015260800190565b6000825161465b8184602087016139dc565b9190910192915050565b601f82111561094157600081815260208120601f850160051c8101602086101561468c5750805b601f850160051c820191505b81811015610fad57828155600101614698565b6001600160401b038311156146c2576146c2613f63565b6146d6836146d08354614490565b83614665565b6000601f84116001811461470a57600085156146f25750838201355b600019600387901b1c1916600186901b178355610ddf565b600083815260209020601f19861690835b8281101561473b578685013582556020948501946001909201910161471b565b50868210156147585760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b602081526000610bd960208301848661476a565b6000608082360312156147b957600080fd5b604051608081016001600160401b0382821081831117156147dc576147dc613f63565b81604052843591506147ed82613a58565b8183526020850135602084015260408501356040840152606085013591508082111561481857600080fd5b5061482536828601613fa9565b60608301525092915050565b600083516148438184602088016139dc565b8351908301906148578183602088016139dc565b01949350505050565b6000602080838503121561487357600080fd5b82356001600160401b0381111561488957600080fd5b8301601f8101851361489a57600080fd5b80356148a861409a82614069565b81815260059190911b820183019083810190878311156148c757600080fd5b928401925b828410156148e5578335825292840192908401906148cc565b979650505050505050565b8082018082111561086e5761086e61453b565b6001600160a01b03848116825283166020820152606060408201819052600090610a9790830184613a00565b634e487b7160e01b600052601260045260246000fd5b6000826149545761495461492f565b500490565b634e487b7160e01b600052600160045260246000fd5b8181038181111561086e5761086e61453b565b6000816149915761499161453b565b506000190190565b600083516149ab8184602088016139dc565b601760f91b90830190815283516149c98160018401602088016139dc565b01600101949350505050565b6000602082840312156149e757600080fd5b5051919050565b600060208284031215614a0057600080fd5b8151610ce581613a58565b8183823760009101908152919050565b81516001600160401b03811115614a3457614a34613f63565b614a4881614a428454614490565b84614665565b602080601f831160018114614a7d5760008415614a655750858301515b600019600386901b1c1916600185901b178555610fad565b600085815260208120601f198616915b82811015614aac57888601518255948401946001909101908401614a8d565b5085821015614aca5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b600082614b3b57614b3b61492f565b500690565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60008451614b9d8184602089016139dc565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b600052602160045260246000fd5b828152604060208201526000610bd96040830184613a00565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090612de390830184613a00565b600060208284031215614c3e57600080fd5b8151610ce5816139a956febe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafea164736f6c6343000811000a"; - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "address"; - readonly name: "previousAdmin"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "address"; - readonly name: "newAdmin"; - readonly type: "address"; - }]; - readonly name: "AdminChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "approved"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Approval"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "ApprovalForAll"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "uint8"; - readonly name: "version"; - readonly type: "uint8"; - }]; - readonly name: "Initialized"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly indexed: true; - readonly internalType: "string"; - readonly name: "keyIndex"; - readonly type: "string"; - }, { - readonly indexed: false; - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }]; - readonly name: "NewKey"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly indexed: false; - readonly internalType: "string"; - readonly name: "uri"; - readonly type: "string"; - }]; - readonly name: "NewURI"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "string"; - readonly name: "prefix"; - readonly type: "string"; - }]; - readonly name: "NewURIPrefix"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }]; - readonly name: "RemoveReverse"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "ResetRecords"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly indexed: true; - readonly internalType: "string"; - readonly name: "keyIndex"; - readonly type: "string"; - }, { - readonly indexed: true; - readonly internalType: "string"; - readonly name: "valueIndex"; - readonly type: "string"; - }, { - readonly indexed: false; - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }, { - readonly indexed: false; - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }]; - readonly name: "Set"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "SetReverse"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Transfer"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "implementation"; - readonly type: "address"; - }]; - readonly name: "Upgraded"; - readonly type: "event"; - }, { - readonly inputs: readonly []; - readonly name: "BATCH_LIMIT"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "NAME"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "VERSION"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }]; - readonly name: "addKey"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }]; - readonly name: "addProxyReader"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "approve"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "balanceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "burn"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "user"; - readonly type: "address"; - }, { - readonly internalType: "bytes"; - readonly name: "depositData"; - readonly type: "bytes"; - }]; - readonly name: "deposit"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "depositToPolygon"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly components: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "nonce"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly internalType: "struct IForwarder.ForwardRequest"; - readonly name: "req"; - readonly type: "tuple"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "execute"; - readonly outputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "exists"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "get"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getApproved"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "keyHash"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getByHash"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }, { - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "keyHash"; - readonly type: "uint256"; - }]; - readonly name: "getKey"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256[]"; - readonly name: "hashes"; - readonly type: "uint256[]"; - }]; - readonly name: "getKeys"; - readonly outputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getMany"; - readonly outputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256[]"; - readonly name: "keyHashes"; - readonly type: "uint256[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getManyByHash"; - readonly outputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "mintingManager"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "cnsRegistry"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "rootChainManager"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "childChainManager"; - readonly type: "address"; - }]; - readonly name: "initialize"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly name: "isApprovedForAll"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "spender"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "isApprovedOrOwner"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "forwarder"; - readonly type: "address"; - }]; - readonly name: "isTrustedForwarder"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "user"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "mint"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "user"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly name: "mint"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "string"; - readonly name: "uri"; - readonly type: "string"; - }]; - readonly name: "mintTLD"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "string[]"; - readonly name: "labels"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }, { - readonly internalType: "bool"; - readonly name: "withReverse"; - readonly type: "bool"; - }]; - readonly name: "mintWithRecords"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "name"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "labels"; - readonly type: "string[]"; - }]; - readonly name: "namehash"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "pure"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "nonceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "onERC721Received"; - readonly outputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: ""; - readonly type: "bytes4"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "ownerOf"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "reconfigure"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "removeReverse"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "reset"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "resolverOf"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }]; - readonly name: "reverseNameOf"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: "reverseUri"; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }]; - readonly name: "reverseOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "reverse"; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "root"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "pure"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }, { - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "set"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "setApprovalForAll"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "keyHash"; - readonly type: "uint256"; - }, { - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "setByHash"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "setMany"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256[]"; - readonly name: "keyHashes"; - readonly type: "uint256[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "setManyByHash"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "setOwner"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "labels"; - readonly type: "string[]"; - }]; - readonly name: "setReverse"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "prefix"; - readonly type: "string"; - }]; - readonly name: "setTokenURIPrefix"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "symbol"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "tokenURI"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "transferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "string[]"; - readonly name: "labels"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }, { - readonly internalType: "bool"; - readonly name: "withReverse"; - readonly type: "bool"; - }]; - readonly name: "unlockWithRecords"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly components: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "nonce"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly internalType: "struct IForwarder.ForwardRequest"; - readonly name: "req"; - readonly type: "tuple"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "verify"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes"; - readonly name: "inputData"; - readonly type: "bytes"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }]; - readonly name: "withdrawFromPolygon"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): UNSRegistryV07Interface; - static connect(address: string, runner?: ContractRunner | null): UNSRegistryV07; -} -export {}; -//# sourceMappingURL=UNSRegistryV07__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/history/UNSRegistryV07__factory.d.ts.map b/dist/types/factories/contracts/history/UNSRegistryV07__factory.d.ts.map deleted file mode 100644 index 013d0553..00000000 --- a/dist/types/factories/contracts/history/UNSRegistryV07__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"UNSRegistryV07__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/history/UNSRegistryV07__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,KAAK,EACV,cAAc,EACd,uBAAuB,EACxB,MAAM,2CAA2C,CAAC;AAu5CnD,aAAK,+BAA+B,GAChC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,uBAAwB,SAAQ,eAAe;gBAC9C,GAAG,IAAI,EAAE,+BAA+B;IAQ3C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,uBAAuB;IAIxE,MAAM,CAAC,QAAQ,CAAC,QAAQ,ozsCAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,uBAAuB;IAGjD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,cAAc;CAGlB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/history/UNSRegistryV07__factory.js b/dist/types/factories/contracts/history/UNSRegistryV07__factory.js deleted file mode 100644 index 9fac02dd..00000000 --- a/dist/types/factories/contracts/history/UNSRegistryV07__factory.js +++ /dev/null @@ -1,1459 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.UNSRegistryV07__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "previousAdmin", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "newAdmin", - type: "address", - }, - ], - name: "AdminChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "approved", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Approval", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: false, - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "ApprovalForAll", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint8", - name: "version", - type: "uint8", - }, - ], - name: "Initialized", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - indexed: true, - internalType: "string", - name: "keyIndex", - type: "string", - }, - { - indexed: false, - internalType: "string", - name: "key", - type: "string", - }, - ], - name: "NewKey", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - indexed: false, - internalType: "string", - name: "uri", - type: "string", - }, - ], - name: "NewURI", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "string", - name: "prefix", - type: "string", - }, - ], - name: "NewURIPrefix", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "addr", - type: "address", - }, - ], - name: "RemoveReverse", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "ResetRecords", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - indexed: true, - internalType: "string", - name: "keyIndex", - type: "string", - }, - { - indexed: true, - internalType: "string", - name: "valueIndex", - type: "string", - }, - { - indexed: false, - internalType: "string", - name: "key", - type: "string", - }, - { - indexed: false, - internalType: "string", - name: "value", - type: "string", - }, - ], - name: "Set", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "addr", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "SetReverse", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Transfer", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "implementation", - type: "address", - }, - ], - name: "Upgraded", - type: "event", - }, - { - inputs: [], - name: "BATCH_LIMIT", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "NAME", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "VERSION", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "key", - type: "string", - }, - ], - name: "addKey", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "addr", - type: "address", - }, - ], - name: "addProxyReader", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "approve", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "burn", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "user", - type: "address", - }, - { - internalType: "bytes", - name: "depositData", - type: "bytes", - }, - ], - name: "deposit", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "depositToPolygon", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - internalType: "struct IForwarder.ForwardRequest", - name: "req", - type: "tuple", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "execute", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "exists", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "key", - type: "string", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "get", - outputs: [ - { - internalType: "string", - name: "value", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getApproved", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "keyHash", - type: "uint256", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getByHash", - outputs: [ - { - internalType: "string", - name: "key", - type: "string", - }, - { - internalType: "string", - name: "value", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "keyHash", - type: "uint256", - }, - ], - name: "getKey", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256[]", - name: "hashes", - type: "uint256[]", - }, - ], - name: "getKeys", - outputs: [ - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getMany", - outputs: [ - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256[]", - name: "keyHashes", - type: "uint256[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getManyByHash", - outputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "mintingManager", - type: "address", - }, - { - internalType: "address", - name: "cnsRegistry", - type: "address", - }, - { - internalType: "address", - name: "rootChainManager", - type: "address", - }, - { - internalType: "address", - name: "childChainManager", - type: "address", - }, - ], - name: "initialize", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - name: "isApprovedForAll", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "spender", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "isApprovedOrOwner", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "forwarder", - type: "address", - }, - ], - name: "isTrustedForwarder", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "user", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "mint", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "user", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - name: "mint", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "string", - name: "uri", - type: "string", - }, - ], - name: "mintTLD", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "string[]", - name: "labels", - type: "string[]", - }, - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - { - internalType: "bool", - name: "withReverse", - type: "bool", - }, - ], - name: "mintWithRecords", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "name", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string[]", - name: "labels", - type: "string[]", - }, - ], - name: "namehash", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "pure", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "nonceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "onERC721Received", - outputs: [ - { - internalType: "bytes4", - name: "", - type: "bytes4", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "ownerOf", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "reconfigure", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "removeReverse", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "reset", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "resolverOf", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "addr", - type: "address", - }, - ], - name: "reverseNameOf", - outputs: [ - { - internalType: "string", - name: "reverseUri", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "addr", - type: "address", - }, - ], - name: "reverseOf", - outputs: [ - { - internalType: "uint256", - name: "reverse", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "root", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "pure", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "safeTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "safeTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "key", - type: "string", - }, - { - internalType: "string", - name: "value", - type: "string", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "set", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "setApprovalForAll", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "keyHash", - type: "uint256", - }, - { - internalType: "string", - name: "value", - type: "string", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "setByHash", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "setMany", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256[]", - name: "keyHashes", - type: "uint256[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "setManyByHash", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "setOwner", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "string[]", - name: "labels", - type: "string[]", - }, - ], - name: "setReverse", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "prefix", - type: "string", - }, - ], - name: "setTokenURIPrefix", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "symbol", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "tokenURI", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "transferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "string[]", - name: "labels", - type: "string[]", - }, - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - { - internalType: "bool", - name: "withReverse", - type: "bool", - }, - ], - name: "unlockWithRecords", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - internalType: "struct IForwarder.ForwardRequest", - name: "req", - type: "tuple", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "verify", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes", - name: "inputData", - type: "bytes", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - ], - name: "withdrawFromPolygon", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -const _bytecode = "0x608060405234801561001057600080fd5b50614c76806100206000396000f3fe608060405234801561001057600080fd5b50600436106103785760003560e01c806370a08231116101d3578063ba5d40b711610104578063ebf0c717116100a2578063f5c1f76e1161007c578063f5c1f76e14610806578063f7df5c6014610819578063f8c8765e1461082c578063ffa1ad741461083f57600080fd5b8063ebf0c717146107e4578063ec129eea146107eb578063f25eb5c1146107fe57600080fd5b8063c87b56dd116100de578063c87b56dd1461076f578063ce92b33e14610782578063cf2c52cb14610795578063e985e9c5146107a857600080fd5b8063ba5d40b714610736578063bb5b27e114610749578063bebec6b41461075c57600080fd5b8063a22cb46511610171578063ab3b87fe1161014b578063ab3b87fe146106dc578063b3f9e4cb146106ef578063b85afd2814610702578063b88d4fde1461072357600080fd5b8063a22cb4651461068a578063a3f4df7e1461069d578063a4247400146106c957600080fd5b80639508b1c4116101ad5780639508b1c4146106545780639559c0bd1461066757806395d89b411461066f57806399e0dd7c1461067757600080fd5b806370a082311461061b5780637e37479e1461062e57806394d008ef1461064157600080fd5b806342842e0e116102ad578063509602391161024b578063638e5c7811610225578063638e5c78146105b3578063663f7b2a146105c6578063672b9f81146105d95780636ccbae5f146105fa57600080fd5b80635096023914610571578063572b6c05146105845780636352211e146105a057600080fd5b806347c816991161028757806347c81699146105255780634a72584d146105385780634f558e791461054b57806350382c1a1461055e57600080fd5b806342842e0e146104ec57806342966c68146104ff578063430c20811461051257600080fd5b80631bf7e13e1161031a578063276fabb1116102f4578063276fabb11461049257806327f18975146104b3578063310bd74b146104c657806340c10f19146104d957600080fd5b80631bf7e13e146104595780631f71be061461046c57806323b872dd1461047f57600080fd5b8063095ea7b311610356578063095ea7b3146103e5578063150b7a02146103fa5780631bd8cc1a146104265780631be5e7ed1461044657600080fd5b806301ffc9a71461037d57806306fdde03146103a5578063081812fc146103ba575b600080fd5b61039061038b3660046139bf565b610863565b60405190151581526020015b60405180910390f35b6103ad610874565b60405161039c9190613a2c565b6103cd6103c8366004613a3f565b610906565b6040516001600160a01b03909116815260200161039c565b6103f86103f3366004613a6d565b61092d565b005b61040d610408366004613ada565b610946565b6040516001600160e01b0319909116815260200161039c565b610439610434366004613b90565b610aa0565b60405161039c9190613c30565b6103ad610454366004613c43565b610b96565b6103ad610467366004613c7a565b610be1565b6103f861047a366004613cff565b610cec565b6103f861048d366004613dbb565b610d93565b6104a56104a0366004613dfc565b610de6565b60405190815260200161039c565b6103f86104c1366004613e3d565b610df5565b6103f86104d4366004613a3f565b610e3d565b6103f86104e7366004613a6d565b610e78565b6103f86104fa366004613dbb565b610ec5565b6103f861050d366004613a3f565b610ee0565b610390610520366004613a6d565b610f24565b6103f8610533366004613eb0565b610f30565b6103f8610546366004613f11565b610f6f565b610390610559366004613a3f565b610fb5565b6103f861056c366004614018565b610fd4565b6103f861057f36600461404c565b61100a565b61039061059236600461404c565b6001600160a01b0316301490565b6103cd6105ae366004613a3f565b61106a565b6103f86105c1366004613a3f565b6110ca565b6103f86105d4366004614104565b611115565b6105ec6105e736600461414c565b61114e565b60405161039c92919061416e565b6104a5610608366004613a3f565b6000908152610100602052604090205490565b6104a561062936600461404c565b611166565b6104a561063c36600461404c565b6111ec565b6103f861064f366004614193565b61121d565b6103f86106623660046141ee565b61126c565b6104a5601481565b6103ad6112f3565b6103f8610685366004614291565b611302565b6103f86106983660046142c6565b611389565b6103ad6040518060400160405280600d81526020016c554e533a20526567697374727960981b81525081565b6103906106d7366004613c7a565b61139b565b6103f86106ea366004613a6d565b6113e6565b6103cd6106fd366004613a3f565b61142b565b610715610710366004613b90565b611455565b60405161039c9291906142f2565b6103f8610731366004614317565b611577565b6103f8610744366004613cff565b6115be565b6103ad610757366004613a3f565b61162f565b6103ad61076a36600461404c565b6116d1565b6103ad61077d366004613a3f565b61179b565b6103f8610790366004613e3d565b611801565b6103f86107a3366004614382565b611840565b6103906107b63660046143c9565b6001600160a01b039182166000908152606a6020908152604080832093909416825291909152205460ff1690565b60006104a5565b6103f86107f9366004613e3d565b61190f565b6103f861194e565b610439610814366004613dfc565b6119d5565b6103f8610827366004614402565b611a88565b6103f861083a366004614434565b611b19565b6103ad60405180604001604052806005815260200164302e372e3360d81b81525081565b600061086e82611cef565b92915050565b60606065805461088390614490565b80601f01602080910402602001604051908101604052809291908181526020018280546108af90614490565b80156108fc5780601f106108d1576101008083540402835291602001916108fc565b820191906000526020600020905b8154815290600101906020018083116108df57829003601f168201915b5050505050905090565b600061091182611d3f565b506000908152606960205260409020546001600160a01b031690565b8061093781611d9e565b6109418383611e04565b505050565b60007f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378546001600160a01b031661097b611f26565b6001600160a01b031603610a3c57610991611f26565b6001600160a01b03166342966c68856040518263ffffffff1660e01b81526004016109be91815260200190565b600060405180830381600087803b1580156109d857600080fd5b505af11580156109ec573d6000803e3d6000fd5b505050821580159150610a065750610a06828401846144c4565b15610a2457610a153085611f35565b610a1f8585612083565b610a2e565b610a2e8585611f35565b50630a85bd0160e11b610a97565b60405162461bcd60e51b815260206004820152602560248201527f52656769737472793a204552433732315f524543454956494e475f50524f4849604482015264109255115160da1b60648201526084015b60405180910390fd5b95945050505050565b6060826001600160401b03811115610aba57610aba613f63565b604051908082528060200260200182016040528015610aed57816020015b6060815260200190600190039081610ad85790505b50905060005b83811015610b8e57610b5e858583818110610b1057610b106144df565b9050602002810190610b2291906144f5565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525087925061212e915050565b828281518110610b7057610b706144df565b60200260200101819052508080610b8690614551565b915050610af3565b509392505050565b6060610bd984848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525086925061212e915050565b949350505050565b606060005a9050610bf385858561139b565b610c4f5760405162461bcd60e51b815260206004820152602760248201527f554e535265676973747279466f727761726465723a205349474e41545552455f6044820152661253959053125160ca1b6064820152608401610a8e565b610ce1610c5f602087018761404c565b30604088013584610c7360608b018b6144f5565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061216392505050565b9150505b9392505050565b610134546001600160a01b0316610d01611f26565b6001600160a01b031614610d275760405162461bcd60e51b8152600401610a8e9061456a565b6000610d3b610d36888a6145b1565b612244565b9050610d4681612293565b610d59610d528261106a565b8a83612300565b610d6686868686856124a7565b8115610d8857610d888982610d83610d7e8b8d6145b1565b612515565b612596565b505050505050505050565b80610da5610d9f611f26565b826125d8565b610dc15760405162461bcd60e51b8152600401610a8e906145be565b81610dcb81611d9e565b610dd483612293565b610ddf858585612300565b5050505050565b6000610ce5610d3683856145b1565b80610e01610d9f611f26565b610e1d5760405162461bcd60e51b8152600401610a8e906145be565b81610e2781611d9e565b610e348787878787612656565b50505050505050565b80610e49610d9f611f26565b610e655760405162461bcd60e51b8152600401610a8e906145be565b81610e6f81611d9e565b61094183612293565b610e806126b9565b6001600160a01b0316610e91611f26565b6001600160a01b031614610eb75760405162461bcd60e51b8152600401610a8e90614607565b610ec18282611f35565b5050565b61094183838360405180602001604052806000815250611577565b80610eec610d9f611f26565b610f085760405162461bcd60e51b8152600401610a8e906145be565b81610f1281611d9e565b610f1b83612293565b610941836127ba565b6000610ce583836125d8565b80610f3c610d9f611f26565b610f585760405162461bcd60e51b8152600401610a8e906145be565b81610f6281611d9e565b610e348787878787612861565b80610f7b610d9f611f26565b610f975760405162461bcd60e51b8152600401610a8e906145be565b81610fa181611d9e565b610fad86868686612940565b505050505050565b6000818152606760205260408120546001600160a01b0316151561086e565b61100781604051602001610fe89190614649565b6040516020818303038152906040528051906020012060001c826129e0565b50565b610134546001600160a01b031661101f611f26565b6001600160a01b0316146110455760405162461bcd60e51b8152600401610a8e9061456a565b6001600160a01b0316600090815261013660205260409020805460ff19166001179055565b6000818152606760205260408120546001600160a01b03168061086e5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610a8e565b806110d6610d9f611f26565b6110f25760405162461bcd60e51b8152600401610a8e906145be565b6111046110fd611f26565b3084612300565b610ec161110f611f26565b83612083565b600061112082612244565b905061112b81612a05565b61113481611d9e565b610ec161113f611f26565b8261114985612515565b612a75565b60608061115b8484612afc565b909590945092505050565b60006001600160a01b0382166111d05760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b6064820152608401610a8e565b506001600160a01b031660009081526068602052604090205490565b6001600160a01b0381166000908152610135602052604081205461120f81612b1d565b611217578091505b50919050565b6112256126b9565b6001600160a01b0316611236611f26565b6001600160a01b03161461125c5760405162461bcd60e51b8152600401610a8e90614607565b6112668484611f35565b50505050565b6112768787612b67565b61127e611f26565b6001600160a01b03166112908661106a565b6001600160a01b0316146112e65760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610a8e565b610e3484848484896124a7565b60606066805461088390614490565b610134546001600160a01b0316611317611f26565b6001600160a01b03161461133d5760405162461bcd60e51b8152600401610a8e9061456a565b61013361134b8284836146ab565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b828260405161137d929190614793565b60405180910390a15050565b610ec1611394611f26565b8383612bd6565b6000610bd96113a9856147a7565b3085858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250612ca492505050565b806113f2610d9f611f26565b61140e5760405162461bcd60e51b8152600401610a8e906145be565b8161141881611d9e565b6112666114248461106a565b8585612300565b6000818152606760205260408120546001600160a01b031661144e57600061086e565b3092915050565b606080836001600160401b0381111561147057611470613f63565b6040519080825280602002602001820160405280156114a357816020015b606081526020019060019003908161148e5790505b509150836001600160401b038111156114be576114be613f63565b6040519080825280602002602001820160405280156114f157816020015b60608152602001906001900390816114dc5790505b50905060005b8481101561156e57611521868683818110611514576115146144df565b9050602002013585612afc565b848381518110611533576115336144df565b6020026020010184848151811061154c5761154c6144df565b602002602001018290528290525050808061156690614551565b9150506114f7565b50935093915050565b81611583610d9f611f26565b61159f5760405162461bcd60e51b8152600401610a8e906145be565b826115a981611d9e565b6115b284612293565b610fad86868686612ded565b610134546001600160a01b03166115d3611f26565b6001600160a01b0316146115f95760405162461bcd60e51b8152600401610a8e9061456a565b6000611608610d36888a6145b1565b9050611622898261161c610d7e8b8d6145b1565b85612e20565b610d8886868686856124a7565b600081815260c96020526040902080546060919061164c90614490565b80601f016020809104026020016040519081016040528092919081815260200182805461167890614490565b80156116c55780601f1061169a576101008083540402835291602001916116c5565b820191906000526020600020905b8154815290600101906020018083116116a857829003601f168201915b50505050509050919050565b6001600160a01b038116600090815261013560205260409020546060906116f781612b1d565b61121757600081815261013860205260409020805461171590614490565b80601f016020809104026020016040519081016040528092919081815260200182805461174190614490565b801561178e5780601f106117635761010080835404028352916020019161178e565b820191906000526020600020905b81548152906001019060200180831161177157829003601f168201915b5050505050915050919050565b60606117a682611d3f565b60006117b0612e73565b905060008151116117d05760405180602001604052806000815250610ce5565b806117da84612e83565b6040516020016117eb929190614831565b6040516020818303038152906040529392505050565b8061180d610d9f611f26565b6118295760405162461bcd60e51b8152600401610a8e906145be565b8161183381611d9e565b610e3487878787876124a7565b7f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87546001600160a01b0316611873611f26565b6001600160a01b0316146118995760405162461bcd60e51b8152600401610a8e90614607565b60208190036118bc5760006118b082840184613a3f565b90506112668482611f35565b60006118ca82840184614860565b805190915060005b81811015610fad576118fd868483815181106118f0576118f06144df565b6020026020010151611f35565b8061190781614551565b9150506118d2565b8061191b610d9f611f26565b6119375760405162461bcd60e51b8152600401610a8e906145be565b8161194181611d9e565b610e348787878787612f83565b6000611958611f26565b6001600160a01b03811660009081526101356020526040812054919250036119cc5760405162461bcd60e51b815260206004820152602160248201527f52656769737472793a20524556455253455f5245434f52445f49535f454d50546044820152605960f81b6064820152608401610a8e565b61100781612f99565b6060816001600160401b038111156119ef576119ef613f63565b604051908082528060200260200182016040528015611a2257816020015b6060815260200190600190039081611a0d5790505b50905060005b82811015611a8157611a51848483818110611a4557611a456144df565b9050602002013561162f565b828281518110611a6357611a636144df565b60200260200101819052508080611a7990614551565b915050611a28565b5092915050565b610134546001600160a01b0316611a9d611f26565b6001600160a01b031614611ac35760405162461bcd60e51b8152600401610a8e9061456a565b61013454611ada906001600160a01b031684611f35565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c39528383604051611b0c929190614793565b60405180910390a2505050565b600054610100900460ff1615808015611b395750600054600160ff909116105b80611b535750303b158015611b53575060005460ff166001145b611bb65760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610a8e565b6000805460ff191660011790558015611bd9576000805461ff0019166101001790555b61013480546001600160a01b0319166001600160a01b038716179055837f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec9237880546001600160a01b0319166001600160a01b03929092169190911790556040805180820182526013815272556e73746f707061626c6520446f6d61696e7360681b60208083019190915282518084019093526002835261155160f21b90830152611c8191612fde565b611c8961301e565b611c9161301e565b611c9a83613047565b611ca382613077565b8015610ddf576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b60006001600160e01b031982166380ac58cd60e01b1480611d2057506001600160e01b03198216635b5e139f60e01b145b8061086e57506301ffc9a760e01b6001600160e01b031983161461086e565b6000818152606760205260409020546001600160a01b03166110075760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610a8e565b303303611dfb57611dad6130a7565b81146110075760405162461bcd60e51b815260206004820152601760248201527f52656769737472793a20544f4b454e5f494e56414c49440000000000000000006044820152606401610a8e565b611007816130bb565b6000611e0f8261106a565b9050806001600160a01b0316836001600160a01b031603611e7c5760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b6064820152608401610a8e565b806001600160a01b0316611e8e611f26565b6001600160a01b03161480611eaa5750611eaa816107b6611f26565b611f1c5760405162461bcd60e51b815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c00006064820152608401610a8e565b61094183836130e9565b6000611f30613157565b905090565b6001600160a01b038216611f8b5760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610a8e565b6000818152606760205260409020546001600160a01b031615611ff05760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610a8e565b611ffc60008383613172565b6001600160a01b03821660009081526068602052604081208054600192906120259084906148f0565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b03861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b600061208d6126b9565b905061209981836130e9565b600080516020614c4a83398151915254604080516020808201869052825180830390910181528183019283905263e3dec8fb60e01b9092526001600160a01b0390921691829163e3dec8fb916120f6918891309190604401614903565b600060405180830381600087803b15801561211057600080fd5b505af1158015612124573d6000803e3d6000fd5b5050505050505050565b6060610ce5836040516020016121449190614649565b6040516020818303038152906040528051906020012060001c8361320f565b606061216e856130bb565b600080876001600160a01b0316866121888b8a89896132f1565b6040516121959190614649565b60006040518083038160008787f1925050503d80600081146121d3576040519150601f19603f3d011682016040523d82523d6000602084013e6121d8565b606091505b5090925090506121e9603f87614945565b5a116121f7576121f7614959565b61223782826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c4544000000000000815250613321565b9998505050505050505050565b805160009081905b8015611a815761227f828561226260018561496f565b81518110612272576122726144df565b602002602001015161335a565b91508061228b81614982565b91505061224c565b61229c81613406565b6040516020016122ae91815260200190565b60408051601f198184030181528282528051602091820120600085815260cb9092529181209190915582917f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9190a250565b826001600160a01b03166123138261106a565b6001600160a01b0316146123775760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b6064820152608401610a8e565b6001600160a01b0382166123d95760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610a8e565b6123e4838383613172565b6123ef6000826130e9565b6001600160a01b038316600090815260686020526040812080546001929061241890849061496f565b90915550506001600160a01b03821660009081526068602052604081208054600192906124469084906148f0565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60005b84811015610fad576125038686838181106124c7576124c76144df565b90506020028101906124d991906144f5565b8686858181106124eb576124eb6144df565b90506020028101906124fd91906144f5565b86612861565b8061250d81614551565b9150506124aa565b606060008260008151811061252c5761252c6144df565b602002602001015190506000600190505b8351811015611a815781848281518110612559576125596144df565b6020026020010151604051602001612572929190614999565b6040516020818303038152906040529150808061258e90614551565b91505061253d565b61dead6001600160a01b038416148015906125c857506001600160a01b03831660009081526101356020526040902054155b1561094157610941838383612a75565b6000806125e48361106a565b9050806001600160a01b0316846001600160a01b0316148061262b57506001600160a01b038082166000908152606a602090815260408083209388168352929052205460ff165b80610bd95750836001600160a01b031661264484610906565b6001600160a01b031614949350505050565b60005b84811015610fad576126a7868683818110612676576126766144df565b9050602002013585858481811061268f5761268f6144df565b90506020028101906126a191906144f5565b85612940565b806126b181614551565b915050612659565b600080516020614c4a833981519152546000906001600160a01b031680156127b65760405163721804d360e11b81523060048201526000906001600160a01b0383169063e43009a690602401602060405180830381865afa158015612722573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061274691906149d5565b60405163e66f960360e01b8152600481018290529091506001600160a01b0383169063e66f960390602401602060405180830381865afa15801561278e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127b291906149ee565b9250505b5090565b60006127c58261106a565b90506127d381600084613172565b6127de6000836130e9565b6001600160a01b038116600090815260686020526040812080546001929061280790849061496f565b909155505060008281526067602052604080822080546001600160a01b0319169055518391906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b60008585604051602001612876929190614a0b565b60408051601f198184030181528282528051602091820120601f89018290048202840182019092528783529092506128ca91839189908990819084018382808284376000920191909152506129e092505050565b610fad8187878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061342e915050565b61294984613563565b6129955760405162461bcd60e51b815260206004820152601c60248201527f5265636f726453746f726167653a204b45595f4e4f545f464f554e44000000006044820152606401610a8e565b611266846129a28661162f565b85858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525087925061342e915050565b6129e982613563565b610ec157600082815260c9602052604090206109418282614a1b565b612a0d611f26565b6001600160a01b0316612a1f8261106a565b6001600160a01b0316146110075760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610a8e565b6000828152610138602052604090208054612a8f90614490565b9050600003612ab357600082815261013860205260409020612ab18282614a1b565b505b6001600160a01b03831660008181526101356020526040808220859055518492917feb76a21470988c474a21f690cc28fee1ed511bd812dc3c21fd0f49c5e5d4708a91a3505050565b606080612b088461162f565b9150612b14848461320f565b90509250929050565b6000818152610137602052604081205460ff16801561086e57506101366000612b44611f26565b6001600160a01b0316815260208101919091526040016000205460ff1692915050565b600080516020614c4a83398151915254604051633805550f60e01b81526001600160a01b03909116908190633805550f90612ba89086908690600401614793565b600060405180830381600087803b158015612bc257600080fd5b505af1158015610e34573d6000803e3d6000fd5b816001600160a01b0316836001600160a01b031603612c375760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610a8e565b6001600160a01b038381166000818152606a6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015612ceb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612d0f91906149d5565b90506000612dbd866060015180519060200120868860200151604051602001612d5d9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b9050818660200151148015612de357508551612de3906001600160a01b03168286613589565b9695505050505050565b612df8848484612300565b612e04848484846136cb565b6112665760405162461bcd60e51b8152600401610a8e90614ada565b612e2a8484611f35565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c395283604051612e5a9190613a2c565b60405180910390a2801561126657611266848484612596565b6060610133805461088390614490565b606081600003612eaa5750506040805180820190915260018152600360fc1b602082015290565b8160005b8115612ed45780612ebe81614551565b9150612ecd9050600a83614945565b9150612eae565b6000816001600160401b03811115612eee57612eee613f63565b6040519080825280601f01601f191660200182016040528015612f18576020820181803683370190505b5090505b8415610bd957612f2d60018361496f565b9150612f3a600a86614b2c565b612f459060306148f0565b60f81b818381518110612f5a57612f5a6144df565b60200101906001600160f81b031916908160001a905350612f7c600a86614945565b9450612f1c565b612f8c81612293565b610ddf85858585856124a7565b6001600160a01b03811660008181526101356020526040808220829055517ffcf5eec0cfa3e6332f5f0e63ec242d71f866a61d121d6cdf5c2eb3b668a26c4f9190a250565b600054610100900460ff166130055760405162461bcd60e51b8152600401610a8e90614b40565b60656130118382614a1b565b5060666109418282614a1b565b600054610100900460ff166130455760405162461bcd60e51b8152600401610a8e90614b40565b565b600054610100900460ff1661306e5760405162461bcd60e51b8152600401610a8e90614b40565b611007816137d0565b600054610100900460ff1661309e5760405162461bcd60e51b8152600401610a8e90614b40565b61100781613829565b60003033036130b85750601f193601355b90565b600081815261010060205260409020546130d69060016148f0565b6000918252610100602052604090912055565b600081815260696020526040902080546001600160a01b0319166001600160a01b038416908117909155819061311e8261106a565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b600030330361316d575060331936013560601c90565b503390565b6000818152610137602052604090205460ff16158061319957506001600160a01b03821615155b6131e55760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a20544f4b454e5f555047524144454400000000000000006044820152606401610a8e565b6001600160a01b038316600090815261013560205260409020548190036109415761094183612f99565b606061321a82612b1d565b15613234575060408051602081019091526000815261086e565b60ca600061324184613406565b81526020019081526020016000206000848152602001908152602001600020805461326b90614490565b80601f016020809104026020016040519081016040528092919081815260200182805461329790614490565b80156132e45780601f106132b9576101008083540402835291602001916132e4565b820191906000526020600020905b8154815290600101906020018083116132c757829003601f168201915b5050505050905092915050565b606082858560405160200161330893929190614b8b565b6040516020818303038152906040529050949350505050565b60608315613330575081610ce5565b8251156133405782518084602001fd5b8160405162461bcd60e51b8152600401610a8e9190613a2c565b600081516000036133a55760405162461bcd60e51b815260206004820152601560248201527452656769737472793a204c4142454c5f454d50545960581b6044820152606401610a8e565b82826040516020016133b79190614649565b604051602081830303815290604052805190602001206040516020016133e7929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b600081815260cb6020526040812054156127b657600082815260cb602052604090205461086e565b60ca600061343b83613406565b81526020019081526020016000206000858152602001908152602001600020805461346590614490565b90506000036134bd578260405161347c9190614649565b6040518091039020817f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f86856040516134b49190613a2c565b60405180910390a35b8160ca60006134cb84613406565b8152602001908152602001600020600086815260200190815260200160002090816134f69190614a1b565b50816040516135059190614649565b60405180910390208360405161351b9190614649565b6040518091039020827f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d92868660405161355592919061416e565b60405180910390a450505050565b600081815260c960205260408120805482919061357f90614490565b9050119050919050565b60008060006135988585613877565b909250905060008160048111156135b1576135b1614bca565b1480156135cf5750856001600160a01b0316826001600160a01b0316145b156135df57600192505050610ce5565b600080876001600160a01b0316631626ba7e60e01b8888604051602401613607929190614be0565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516136459190614649565b600060405180830381855afa9150503d8060008114613680576040519150601f19603f3d011682016040523d82523d6000602084013e613685565b606091505b5091509150818015613698575080516020145b80156136bf57508051630b135d3f60e11b906136bd90830160209081019084016149d5565b145b98975050505050505050565b60006001600160a01b0384163b156137c857836001600160a01b031663150b7a026136f4611f26565b8786866040518563ffffffff1660e01b81526004016137169493929190614bf9565b6020604051808303816000875af1925050508015613751575060408051601f3d908101601f1916820190925261374e91810190614c2c565b60015b6137ae573d80801561377f576040519150601f19603f3d011682016040523d82523d6000602084013e613784565b606091505b5080516000036137a65760405162461bcd60e51b8152600401610a8e90614ada565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610bd9565b506001610bd9565b600054610100900460ff166137f75760405162461bcd60e51b8152600401610a8e90614b40565b80600080516020614c4a8339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b600054610100900460ff166138505760405162461bcd60e51b8152600401610a8e90614b40565b807f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87613808565b60008082516041036138ad5760208301516040840151606085015160001a6138a1878285856138bc565b945094505050506138b5565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08311156138f357506000905060036139a0565b8460ff16601b1415801561390b57508460ff16601c14155b1561391c57506000905060046139a0565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613970573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613999576000600192509250506139a0565b9150600090505b94509492505050565b6001600160e01b03198116811461100757600080fd5b6000602082840312156139d157600080fd5b8135610ce5816139a9565b60005b838110156139f75781810151838201526020016139df565b50506000910152565b60008151808452613a188160208601602086016139dc565b601f01601f19169290920160200192915050565b602081526000610ce56020830184613a00565b600060208284031215613a5157600080fd5b5035919050565b6001600160a01b038116811461100757600080fd5b60008060408385031215613a8057600080fd5b8235613a8b81613a58565b946020939093013593505050565b60008083601f840112613aab57600080fd5b5081356001600160401b03811115613ac257600080fd5b6020830191508360208285010111156138b557600080fd5b600080600080600060808688031215613af257600080fd5b8535613afd81613a58565b94506020860135613b0d81613a58565b93506040860135925060608601356001600160401b03811115613b2f57600080fd5b613b3b88828901613a99565b969995985093965092949392505050565b60008083601f840112613b5e57600080fd5b5081356001600160401b03811115613b7557600080fd5b6020830191508360208260051b85010111156138b557600080fd5b600080600060408486031215613ba557600080fd5b83356001600160401b03811115613bbb57600080fd5b613bc786828701613b4c565b909790965060209590950135949350505050565b600081518084526020808501808196508360051b8101915082860160005b85811015613c23578284038952613c11848351613a00565b98850198935090840190600101613bf9565b5091979650505050505050565b602081526000610ce56020830184613bdb565b600080600060408486031215613c5857600080fd5b83356001600160401b03811115613c6e57600080fd5b613bc786828701613a99565b600080600060408486031215613c8f57600080fd5b83356001600160401b0380821115613ca657600080fd5b9085019060808288031215613cba57600080fd5b90935060208501359080821115613cd057600080fd5b50613cdd86828701613a99565b9497909650939450505050565b80358015158114613cfa57600080fd5b919050565b60008060008060008060008060a0898b031215613d1b57600080fd5b8835613d2681613a58565b975060208901356001600160401b0380821115613d4257600080fd5b613d4e8c838d01613b4c565b909950975060408b0135915080821115613d6757600080fd5b613d738c838d01613b4c565b909750955060608b0135915080821115613d8c57600080fd5b50613d998b828c01613b4c565b9094509250613dac905060808a01613cea565b90509295985092959890939650565b600080600060608486031215613dd057600080fd5b8335613ddb81613a58565b92506020840135613deb81613a58565b929592945050506040919091013590565b60008060208385031215613e0f57600080fd5b82356001600160401b03811115613e2557600080fd5b613e3185828601613b4c565b90969095509350505050565b600080600080600060608688031215613e5557600080fd5b85356001600160401b0380821115613e6c57600080fd5b613e7889838a01613b4c565b90975095506020880135915080821115613e9157600080fd5b50613e9e88828901613b4c565b96999598509660400135949350505050565b600080600080600060608688031215613ec857600080fd5b85356001600160401b0380821115613edf57600080fd5b613eeb89838a01613a99565b90975095506020880135915080821115613f0457600080fd5b50613e9e88828901613a99565b60008060008060608587031215613f2757600080fd5b8435935060208501356001600160401b03811115613f4457600080fd5b613f5087828801613a99565b9598909750949560400135949350505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715613fa157613fa1613f63565b604052919050565b600082601f830112613fba57600080fd5b81356001600160401b03811115613fd357613fd3613f63565b613fe6601f8201601f1916602001613f79565b818152846020838601011115613ffb57600080fd5b816020850160208301376000918101602001919091529392505050565b60006020828403121561402a57600080fd5b81356001600160401b0381111561404057600080fd5b610bd984828501613fa9565b60006020828403121561405e57600080fd5b8135610ce581613a58565b60006001600160401b0382111561408257614082613f63565b5060051b60200190565b600061409f61409a84614069565b613f79565b8381529050602080820190600585901b8401868111156140be57600080fd5b845b818110156140f95780356001600160401b038111156140df5760008081fd5b6140eb89828901613fa9565b8552509282019282016140c0565b505050509392505050565b60006020828403121561411657600080fd5b81356001600160401b0381111561412c57600080fd5b8201601f8101841361413d57600080fd5b610bd98482356020840161408c565b6000806040838503121561415f57600080fd5b50508035926020909101359150565b6040815260006141816040830185613a00565b8281036020840152610ce18185613a00565b600080600080606085870312156141a957600080fd5b84356141b481613a58565b93506020850135925060408501356001600160401b038111156141d657600080fd5b6141e287828801613a99565b95989497509550505050565b60008060008060008060006080888a03121561420957600080fd5b87356001600160401b038082111561422057600080fd5b61422c8b838c01613a99565b909950975060208a0135965060408a013591508082111561424c57600080fd5b6142588b838c01613b4c565b909650945060608a013591508082111561427157600080fd5b5061427e8a828b01613b4c565b989b979a50959850939692959293505050565b600080602083850312156142a457600080fd5b82356001600160401b038111156142ba57600080fd5b613e3185828601613a99565b600080604083850312156142d957600080fd5b82356142e481613a58565b9150612b1460208401613cea565b6040815260006143056040830185613bdb565b8281036020840152610ce18185613bdb565b6000806000806080858703121561432d57600080fd5b843561433881613a58565b9350602085013561434881613a58565b92506040850135915060608501356001600160401b0381111561436a57600080fd5b61437687828801613fa9565b91505092959194509250565b60008060006040848603121561439757600080fd5b83356143a281613a58565b925060208401356001600160401b038111156143bd57600080fd5b613cdd86828701613a99565b600080604083850312156143dc57600080fd5b82356143e781613a58565b915060208301356143f781613a58565b809150509250929050565b60008060006040848603121561441757600080fd5b8335925060208401356001600160401b038111156143bd57600080fd5b6000806000806080858703121561444a57600080fd5b843561445581613a58565b9350602085013561446581613a58565b9250604085013561447581613a58565b9150606085013561448581613a58565b939692955090935050565b600181811c908216806144a457607f821691505b60208210810361121757634e487b7160e01b600052602260045260246000fd5b6000602082840312156144d657600080fd5b610ce582613cea565b634e487b7160e01b600052603260045260246000fd5b6000808335601e1984360301811261450c57600080fd5b8301803591506001600160401b0382111561452657600080fd5b6020019150368190038213156138b557600080fd5b634e487b7160e01b600052601160045260246000fd5b6000600182016145635761456361453b565b5060010190565b60208082526027908201527f52656769737472793a2053454e4445525f49535f4e4f545f4d494e54494e475f60408201526626a0a720a3a2a960c91b606082015260800190565b6000610ce536848461408c565b60208082526029908201527f52656769737472793a2053454e4445525f49535f4e4f545f415050524f5645446040820152682fa7a92fa7aba722a960b91b606082015260800190565b60208082526022908201527f52656769737472793a20494e53554646494349454e545f5045524d495353494f6040820152614e5360f01b606082015260800190565b6000825161465b8184602087016139dc565b9190910192915050565b601f82111561094157600081815260208120601f850160051c8101602086101561468c5750805b601f850160051c820191505b81811015610fad57828155600101614698565b6001600160401b038311156146c2576146c2613f63565b6146d6836146d08354614490565b83614665565b6000601f84116001811461470a57600085156146f25750838201355b600019600387901b1c1916600186901b178355610ddf565b600083815260209020601f19861690835b8281101561473b578685013582556020948501946001909201910161471b565b50868210156147585760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b602081526000610bd960208301848661476a565b6000608082360312156147b957600080fd5b604051608081016001600160401b0382821081831117156147dc576147dc613f63565b81604052843591506147ed82613a58565b8183526020850135602084015260408501356040840152606085013591508082111561481857600080fd5b5061482536828601613fa9565b60608301525092915050565b600083516148438184602088016139dc565b8351908301906148578183602088016139dc565b01949350505050565b6000602080838503121561487357600080fd5b82356001600160401b0381111561488957600080fd5b8301601f8101851361489a57600080fd5b80356148a861409a82614069565b81815260059190911b820183019083810190878311156148c757600080fd5b928401925b828410156148e5578335825292840192908401906148cc565b979650505050505050565b8082018082111561086e5761086e61453b565b6001600160a01b03848116825283166020820152606060408201819052600090610a9790830184613a00565b634e487b7160e01b600052601260045260246000fd5b6000826149545761495461492f565b500490565b634e487b7160e01b600052600160045260246000fd5b8181038181111561086e5761086e61453b565b6000816149915761499161453b565b506000190190565b600083516149ab8184602088016139dc565b601760f91b90830190815283516149c98160018401602088016139dc565b01600101949350505050565b6000602082840312156149e757600080fd5b5051919050565b600060208284031215614a0057600080fd5b8151610ce581613a58565b8183823760009101908152919050565b81516001600160401b03811115614a3457614a34613f63565b614a4881614a428454614490565b84614665565b602080601f831160018114614a7d5760008415614a655750858301515b600019600386901b1c1916600185901b178555610fad565b600085815260208120601f198616915b82811015614aac57888601518255948401946001909101908401614a8d565b5085821015614aca5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b600082614b3b57614b3b61492f565b500690565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60008451614b9d8184602089016139dc565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b600052602160045260246000fd5b828152604060208201526000610bd96040830184613a00565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090612de390830184613a00565b600060208284031215614c3e57600080fd5b8151610ce5816139a956febe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafea164736f6c6343000811000a"; -const isSuperArgs = (xs) => xs.length > 1; -class UNSRegistryV07__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(overrides) { - return super.getDeployTransaction(overrides || {}); - } - deploy(overrides) { - return super.deploy(overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.UNSRegistryV07__factory = UNSRegistryV07__factory; -UNSRegistryV07__factory.bytecode = _bytecode; -UNSRegistryV07__factory.abi = _abi; diff --git a/dist/types/factories/contracts/history/index.d.ts b/dist/types/factories/contracts/history/index.d.ts deleted file mode 100644 index 72767b2b..00000000 --- a/dist/types/factories/contracts/history/index.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export { IUNSRegistryV07__factory } from "./IUNSRegistryV07__factory"; -export { ProxyReaderV04__factory } from "./ProxyReaderV04__factory"; -export { UNSRegistryV07__factory } from "./UNSRegistryV07__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/history/index.d.ts.map b/dist/types/factories/contracts/history/index.d.ts.map deleted file mode 100644 index 00381afc..00000000 --- a/dist/types/factories/contracts/history/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/history/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/contracts/history/index.js b/dist/types/factories/contracts/history/index.js deleted file mode 100644 index 7431d3be..00000000 --- a/dist/types/factories/contracts/history/index.js +++ /dev/null @@ -1,9 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.UNSRegistryV07__factory = exports.ProxyReaderV04__factory = exports.IUNSRegistryV07__factory = void 0; -var IUNSRegistryV07__factory_1 = require("./IUNSRegistryV07__factory"); -Object.defineProperty(exports, "IUNSRegistryV07__factory", { enumerable: true, get: function () { return IUNSRegistryV07__factory_1.IUNSRegistryV07__factory; } }); -var ProxyReaderV04__factory_1 = require("./ProxyReaderV04__factory"); -Object.defineProperty(exports, "ProxyReaderV04__factory", { enumerable: true, get: function () { return ProxyReaderV04__factory_1.ProxyReaderV04__factory; } }); -var UNSRegistryV07__factory_1 = require("./UNSRegistryV07__factory"); -Object.defineProperty(exports, "UNSRegistryV07__factory", { enumerable: true, get: function () { return UNSRegistryV07__factory_1.UNSRegistryV07__factory; } }); diff --git a/dist/types/factories/contracts/index.d.ts b/dist/types/factories/contracts/index.d.ts deleted file mode 100644 index 9ea1ec9e..00000000 --- a/dist/types/factories/contracts/index.d.ts +++ /dev/null @@ -1,30 +0,0 @@ -export * as ens from "./@ens"; -export * as maticnetwork from "./@maticnetwork"; -export * as cns from "./cns"; -export * as custody from "./custody"; -export * as history from "./history"; -export * as marketplace from "./marketplace"; -export * as metatx from "./metatx"; -export * as mocks from "./mocks"; -export * as roles from "./roles"; -export * as utils from "./utils"; -export { ChildRegistry__factory } from "./ChildRegistry__factory"; -export { DotCoinBurner__factory } from "./DotCoinBurner__factory"; -export { IAddressReader__factory } from "./IAddressReader__factory"; -export { IDataReader__factory } from "./IDataReader__factory"; -export { IERC1967__factory } from "./IERC1967__factory"; -export { IMintingManager__factory } from "./IMintingManager__factory"; -export { IRecordReader__factory } from "./IRecordReader__factory"; -export { IRecordStorage__factory } from "./IRecordStorage__factory"; -export { IRegistryReader__factory } from "./IRegistryReader__factory"; -export { IReverseRegistry__factory } from "./IReverseRegistry__factory"; -export { IRootRegistry__factory } from "./IRootRegistry__factory"; -export { IUNSRegistry__factory } from "./IUNSRegistry__factory"; -export { KeyStorage__factory } from "./KeyStorage__factory"; -export { MintingManager__factory } from "./MintingManager__factory"; -export { ProxyReader__factory } from "./ProxyReader__factory"; -export { RecordStorage__factory } from "./RecordStorage__factory"; -export { RootRegistry__factory } from "./RootRegistry__factory"; -export { UNSOperator__factory } from "./UNSOperator__factory"; -export { UNSRegistry__factory } from "./UNSRegistry__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/index.d.ts.map b/dist/types/factories/contracts/index.d.ts.map deleted file mode 100644 index 3163dc5b..00000000 --- a/dist/types/factories/contracts/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../types/factories/contracts/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,GAAG,MAAM,QAAQ,CAAC;AAC9B,OAAO,KAAK,YAAY,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC;AAC7B,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AACrC,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AACrC,OAAO,KAAK,WAAW,MAAM,eAAe,CAAC;AAC7C,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/contracts/index.js b/dist/types/factories/contracts/index.js deleted file mode 100644 index a459a8cb..00000000 --- a/dist/types/factories/contracts/index.js +++ /dev/null @@ -1,74 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.UNSRegistry__factory = exports.UNSOperator__factory = exports.RootRegistry__factory = exports.RecordStorage__factory = exports.ProxyReader__factory = exports.MintingManager__factory = exports.KeyStorage__factory = exports.IUNSRegistry__factory = exports.IRootRegistry__factory = exports.IReverseRegistry__factory = exports.IRegistryReader__factory = exports.IRecordStorage__factory = exports.IRecordReader__factory = exports.IMintingManager__factory = exports.IERC1967__factory = exports.IDataReader__factory = exports.IAddressReader__factory = exports.DotCoinBurner__factory = exports.ChildRegistry__factory = exports.utils = exports.roles = exports.mocks = exports.metatx = exports.marketplace = exports.history = exports.custody = exports.cns = exports.maticnetwork = exports.ens = void 0; -exports.ens = __importStar(require("./@ens")); -exports.maticnetwork = __importStar(require("./@maticnetwork")); -exports.cns = __importStar(require("./cns")); -exports.custody = __importStar(require("./custody")); -exports.history = __importStar(require("./history")); -exports.marketplace = __importStar(require("./marketplace")); -exports.metatx = __importStar(require("./metatx")); -exports.mocks = __importStar(require("./mocks")); -exports.roles = __importStar(require("./roles")); -exports.utils = __importStar(require("./utils")); -var ChildRegistry__factory_1 = require("./ChildRegistry__factory"); -Object.defineProperty(exports, "ChildRegistry__factory", { enumerable: true, get: function () { return ChildRegistry__factory_1.ChildRegistry__factory; } }); -var DotCoinBurner__factory_1 = require("./DotCoinBurner__factory"); -Object.defineProperty(exports, "DotCoinBurner__factory", { enumerable: true, get: function () { return DotCoinBurner__factory_1.DotCoinBurner__factory; } }); -var IAddressReader__factory_1 = require("./IAddressReader__factory"); -Object.defineProperty(exports, "IAddressReader__factory", { enumerable: true, get: function () { return IAddressReader__factory_1.IAddressReader__factory; } }); -var IDataReader__factory_1 = require("./IDataReader__factory"); -Object.defineProperty(exports, "IDataReader__factory", { enumerable: true, get: function () { return IDataReader__factory_1.IDataReader__factory; } }); -var IERC1967__factory_1 = require("./IERC1967__factory"); -Object.defineProperty(exports, "IERC1967__factory", { enumerable: true, get: function () { return IERC1967__factory_1.IERC1967__factory; } }); -var IMintingManager__factory_1 = require("./IMintingManager__factory"); -Object.defineProperty(exports, "IMintingManager__factory", { enumerable: true, get: function () { return IMintingManager__factory_1.IMintingManager__factory; } }); -var IRecordReader__factory_1 = require("./IRecordReader__factory"); -Object.defineProperty(exports, "IRecordReader__factory", { enumerable: true, get: function () { return IRecordReader__factory_1.IRecordReader__factory; } }); -var IRecordStorage__factory_1 = require("./IRecordStorage__factory"); -Object.defineProperty(exports, "IRecordStorage__factory", { enumerable: true, get: function () { return IRecordStorage__factory_1.IRecordStorage__factory; } }); -var IRegistryReader__factory_1 = require("./IRegistryReader__factory"); -Object.defineProperty(exports, "IRegistryReader__factory", { enumerable: true, get: function () { return IRegistryReader__factory_1.IRegistryReader__factory; } }); -var IReverseRegistry__factory_1 = require("./IReverseRegistry__factory"); -Object.defineProperty(exports, "IReverseRegistry__factory", { enumerable: true, get: function () { return IReverseRegistry__factory_1.IReverseRegistry__factory; } }); -var IRootRegistry__factory_1 = require("./IRootRegistry__factory"); -Object.defineProperty(exports, "IRootRegistry__factory", { enumerable: true, get: function () { return IRootRegistry__factory_1.IRootRegistry__factory; } }); -var IUNSRegistry__factory_1 = require("./IUNSRegistry__factory"); -Object.defineProperty(exports, "IUNSRegistry__factory", { enumerable: true, get: function () { return IUNSRegistry__factory_1.IUNSRegistry__factory; } }); -var KeyStorage__factory_1 = require("./KeyStorage__factory"); -Object.defineProperty(exports, "KeyStorage__factory", { enumerable: true, get: function () { return KeyStorage__factory_1.KeyStorage__factory; } }); -var MintingManager__factory_1 = require("./MintingManager__factory"); -Object.defineProperty(exports, "MintingManager__factory", { enumerable: true, get: function () { return MintingManager__factory_1.MintingManager__factory; } }); -var ProxyReader__factory_1 = require("./ProxyReader__factory"); -Object.defineProperty(exports, "ProxyReader__factory", { enumerable: true, get: function () { return ProxyReader__factory_1.ProxyReader__factory; } }); -var RecordStorage__factory_1 = require("./RecordStorage__factory"); -Object.defineProperty(exports, "RecordStorage__factory", { enumerable: true, get: function () { return RecordStorage__factory_1.RecordStorage__factory; } }); -var RootRegistry__factory_1 = require("./RootRegistry__factory"); -Object.defineProperty(exports, "RootRegistry__factory", { enumerable: true, get: function () { return RootRegistry__factory_1.RootRegistry__factory; } }); -var UNSOperator__factory_1 = require("./UNSOperator__factory"); -Object.defineProperty(exports, "UNSOperator__factory", { enumerable: true, get: function () { return UNSOperator__factory_1.UNSOperator__factory; } }); -var UNSRegistry__factory_1 = require("./UNSRegistry__factory"); -Object.defineProperty(exports, "UNSRegistry__factory", { enumerable: true, get: function () { return UNSRegistry__factory_1.UNSRegistry__factory; } }); diff --git a/dist/types/factories/contracts/marketplace/ISeaportProxyBuyer__factory.d.ts b/dist/types/factories/contracts/marketplace/ISeaportProxyBuyer__factory.d.ts deleted file mode 100644 index 660eb1ec..00000000 --- a/dist/types/factories/contracts/marketplace/ISeaportProxyBuyer__factory.d.ts +++ /dev/null @@ -1,126 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { ISeaportProxyBuyer, ISeaportProxyBuyerInterface } from "../../../contracts/marketplace/ISeaportProxyBuyer"; -export declare class ISeaportProxyBuyer__factory { - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly components: readonly [{ - readonly components: readonly [{ - readonly internalType: "address"; - readonly name: "offerer"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "zone"; - readonly type: "address"; - }, { - readonly components: readonly [{ - readonly internalType: "enum ItemType"; - readonly name: "itemType"; - readonly type: "uint8"; - }, { - readonly internalType: "address"; - readonly name: "token"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "identifierOrCriteria"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "startAmount"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "endAmount"; - readonly type: "uint256"; - }]; - readonly internalType: "struct OfferItem[]"; - readonly name: "offer"; - readonly type: "tuple[]"; - }, { - readonly components: readonly [{ - readonly internalType: "enum ItemType"; - readonly name: "itemType"; - readonly type: "uint8"; - }, { - readonly internalType: "address"; - readonly name: "token"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "identifierOrCriteria"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "startAmount"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "endAmount"; - readonly type: "uint256"; - }, { - readonly internalType: "address payable"; - readonly name: "recipient"; - readonly type: "address"; - }]; - readonly internalType: "struct ConsiderationItem[]"; - readonly name: "consideration"; - readonly type: "tuple[]"; - }, { - readonly internalType: "enum OrderType"; - readonly name: "orderType"; - readonly type: "uint8"; - }, { - readonly internalType: "uint256"; - readonly name: "startTime"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "endTime"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes32"; - readonly name: "zoneHash"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "salt"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes32"; - readonly name: "conduitKey"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "totalOriginalConsiderationItems"; - readonly type: "uint256"; - }]; - readonly internalType: "struct OrderParameters"; - readonly name: "parameters"; - readonly type: "tuple"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly internalType: "struct Order"; - readonly name: "order"; - readonly type: "tuple"; - }, { - readonly internalType: "bytes32"; - readonly name: "fulfillerConduitKey"; - readonly type: "bytes32"; - }]; - readonly name: "fulfillOrder"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: "fulfilled"; - readonly type: "bool"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): ISeaportProxyBuyerInterface; - static connect(address: string, runner?: ContractRunner | null): ISeaportProxyBuyer; -} -//# sourceMappingURL=ISeaportProxyBuyer__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/marketplace/ISeaportProxyBuyer__factory.d.ts.map b/dist/types/factories/contracts/marketplace/ISeaportProxyBuyer__factory.d.ts.map deleted file mode 100644 index c5f62d59..00000000 --- a/dist/types/factories/contracts/marketplace/ISeaportProxyBuyer__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ISeaportProxyBuyer__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/marketplace/ISeaportProxyBuyer__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,kBAAkB,EAClB,2BAA2B,EAC5B,MAAM,mDAAmD,CAAC;AA6J3D,qBAAa,2BAA2B;IACtC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,2BAA2B;IAGrD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,kBAAkB;CAGtB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/marketplace/ISeaportProxyBuyer__factory.js b/dist/types/factories/contracts/marketplace/ISeaportProxyBuyer__factory.js deleted file mode 100644 index 9fecd794..00000000 --- a/dist/types/factories/contracts/marketplace/ISeaportProxyBuyer__factory.js +++ /dev/null @@ -1,168 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ISeaportProxyBuyer__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - components: [ - { - components: [ - { - internalType: "address", - name: "offerer", - type: "address", - }, - { - internalType: "address", - name: "zone", - type: "address", - }, - { - components: [ - { - internalType: "enum ItemType", - name: "itemType", - type: "uint8", - }, - { - internalType: "address", - name: "token", - type: "address", - }, - { - internalType: "uint256", - name: "identifierOrCriteria", - type: "uint256", - }, - { - internalType: "uint256", - name: "startAmount", - type: "uint256", - }, - { - internalType: "uint256", - name: "endAmount", - type: "uint256", - }, - ], - internalType: "struct OfferItem[]", - name: "offer", - type: "tuple[]", - }, - { - components: [ - { - internalType: "enum ItemType", - name: "itemType", - type: "uint8", - }, - { - internalType: "address", - name: "token", - type: "address", - }, - { - internalType: "uint256", - name: "identifierOrCriteria", - type: "uint256", - }, - { - internalType: "uint256", - name: "startAmount", - type: "uint256", - }, - { - internalType: "uint256", - name: "endAmount", - type: "uint256", - }, - { - internalType: "address payable", - name: "recipient", - type: "address", - }, - ], - internalType: "struct ConsiderationItem[]", - name: "consideration", - type: "tuple[]", - }, - { - internalType: "enum OrderType", - name: "orderType", - type: "uint8", - }, - { - internalType: "uint256", - name: "startTime", - type: "uint256", - }, - { - internalType: "uint256", - name: "endTime", - type: "uint256", - }, - { - internalType: "bytes32", - name: "zoneHash", - type: "bytes32", - }, - { - internalType: "uint256", - name: "salt", - type: "uint256", - }, - { - internalType: "bytes32", - name: "conduitKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "totalOriginalConsiderationItems", - type: "uint256", - }, - ], - internalType: "struct OrderParameters", - name: "parameters", - type: "tuple", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - internalType: "struct Order", - name: "order", - type: "tuple", - }, - { - internalType: "bytes32", - name: "fulfillerConduitKey", - type: "bytes32", - }, - ], - name: "fulfillOrder", - outputs: [ - { - internalType: "bool", - name: "fulfilled", - type: "bool", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, -]; -class ISeaportProxyBuyer__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.ISeaportProxyBuyer__factory = ISeaportProxyBuyer__factory; -ISeaportProxyBuyer__factory.abi = _abi; diff --git a/dist/types/factories/contracts/marketplace/SeaportProxyBuyer__factory.d.ts b/dist/types/factories/contracts/marketplace/SeaportProxyBuyer__factory.d.ts deleted file mode 100644 index cf9fc7d6..00000000 --- a/dist/types/factories/contracts/marketplace/SeaportProxyBuyer__factory.d.ts +++ /dev/null @@ -1,628 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../common"; -import type { SeaportProxyBuyer, SeaportProxyBuyerInterface } from "../../../contracts/marketplace/SeaportProxyBuyer"; -declare type SeaportProxyBuyerConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class SeaportProxyBuyer__factory extends ContractFactory { - constructor(...args: SeaportProxyBuyerConstructorParams); - getDeployTransaction(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): SeaportProxyBuyer__factory; - static readonly bytecode = "0x60806040523480156200001157600080fd5b506200001c62000022565b620000e4565b600054610100900460ff16156200008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff9081161015620000e2576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b6125e880620000f46000396000f3fe6080604052600436106101d85760003560e01c806371e2a65711610102578063a3f4df7e11610095578063d539139311610064578063d53913931461054c578063d547741f1461056e578063f2fde38b1461058e578063ffa1ad74146105ae57600080fd5b8063a3f4df7e146104ad578063a4247400146104ec578063aa271e1a1461050c578063b3a34c4c1461052c57600080fd5b806391d14854116100d157806391d1485414610443578063983b2d56146104635780639865027514610483578063a217fddf1461049857600080fd5b806371e2a657146103d357806381c81d35146103f35780638456cb59146104065780638da5cb5b1461041b57600080fd5b80633f4ba83a1161017a5780635fc1964f116101495780635fc1964f1461036b578063634486da1461038b5780636ccbae5f1461039e578063715018a6146103be57600080fd5b80633f4ba83a146102f4578063485cc95514610309578063572b6c05146103295780635c975abb1461035257600080fd5b80632f2ff15d116101b65780632f2ff15d1461027d5780633092afd51461029f57806336568abe146102bf5780633ccfd60b146102df57600080fd5b806301ffc9a7146101dd5780631bf7e13e14610212578063248a9ca31461023f575b600080fd5b3480156101e957600080fd5b506101fd6101f8366004611b67565b6105df565b60405190151581526020015b60405180910390f35b34801561021e57600080fd5b5061023261022d366004611b91565b610616565b6040516102099190611c80565b34801561024b57600080fd5b5061026f61025a366004611c93565b600090815260fb602052604090206001015490565b604051908152602001610209565b34801561028957600080fd5b5061029d610298366004611cd1565b6106e2565b005b3480156102ab57600080fd5b5061029d6102ba366004611d01565b61070c565b3480156102cb57600080fd5b5061029d6102da366004611cd1565b610720565b3480156102eb57600080fd5b5061029d6107b3565b34801561030057600080fd5b5061029d6108c3565b34801561031557600080fd5b5061029d610324366004611d1e565b6108dd565b34801561033557600080fd5b506101fd610344366004611d01565b6001600160a01b0316301490565b34801561035e57600080fd5b5061012d5460ff166101fd565b34801561037757600080fd5b5061029d610386366004611dbc565b610ab4565b61029d610399366004611d01565b610afc565b3480156103aa57600080fd5b5061026f6103b9366004611c93565b610bbf565b3480156103ca57600080fd5b5061029d610c19565b3480156103df57600080fd5b5061029d6103ee366004611dbc565b610c2b565b61029d610401366004611d01565b610c73565b34801561041257600080fd5b5061029d610cf0565b34801561042757600080fd5b506097546040516001600160a01b039091168152602001610209565b34801561044f57600080fd5b506101fd61045e366004611cd1565b610d08565b34801561046f57600080fd5b5061029d61047e366004611d01565b610d33565b34801561048f57600080fd5b5061029d610d44565b3480156104a457600080fd5b5061026f600081565b3480156104b957600080fd5b506102326040518060400160405280601381526020017229b2b0b837b93a10283937bc3c90213abcb2b960691b81525081565b3480156104f857600080fd5b506101fd610507366004611b91565b610d5e565b34801561051857600080fd5b506101fd610527366004611d01565b610db1565b34801561053857600080fd5b506101fd610547366004611e62565b610dcb565b34801561055857600080fd5b5061026f6000805160206125bc83398151915281565b34801561057a57600080fd5b5061029d610589366004611cd1565b610ed5565b34801561059a57600080fd5b5061029d6105a9366004611d01565b610efa565b3480156105ba57600080fd5b5061023260405180604001604052806005815260200164302e302e3160d81b81525081565b60006001600160e01b03198216637965db0b60e01b148061061057506301ffc9a760e01b6001600160e01b03198316145b92915050565b606060005a9050610628858585610d5e565b61064557604051638baa579f60e01b815260040160405180910390fd5b6106d76106556020870187611d01565b3060408801358461066960608b018b611eac565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b9081908401838280828437600092019190915250610f1692505050565b9150505b9392505050565b600082815260fb60205260409020600101546106fd81610ff7565b6107078383611008565b505050565b61071461108f565b61071d81611108565b50565b610728611120565b6001600160a01b0316816001600160a01b0316146107a55760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6107af828261112f565b5050565b6107bb61108f565b6107c36111b4565b610160546001600160a01b031663a9059cbb6107e76097546001600160a01b031690565b610160546040516370a0823160e01b81523060048201526001600160a01b03909116906370a0823190602401602060405180830381865afa158015610830573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108549190611ef3565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303816000875af115801561089f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061071d9190611f0c565b6108cb61108f565b6108d36111fb565b6108db611245565b565b600054610100900460ff16158080156108fd5750600054600160ff909116105b806109175750303b158015610917575060005460ff166001145b61097a5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840161079c565b6000805460ff19166001179055801561099d576000805461ff0019166101001790555b61015f80546001600160a01b03199081166001600160a01b03868116918217909355610160805490921692851692831790915560405163095ea7b360e01b81526004810191909152600019602482015263095ea7b3906044016020604051808303816000875af1158015610a15573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a399190611f0c565b50610a4261129e565b610a4a6112cc565b610a526112cc565b610a5a6112f3565b610a6261132a565b610a6a611363565b8015610707576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a1505050565b610abc61108f565b60005b81518110156107af57610aea828281518110610add57610add611f2e565b6020026020010151611108565b80610af481611f5a565b915050610abf565b610b07610527611120565b610b235760405162461bcd60e51b815260040161079c90611f73565b6001600160a01b038116610b795760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d505459000000604482015260640161079c565b610b8281611397565b610b8a610d44565b6040516001600160a01b038216903480156108fc02916000818181858888f193505050501580156107af573d6000803e3d6000fd5b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a838156020820152908101829052600090610c12906060016040516020818303038152906040528051906020012090565b5492915050565b610c2161108f565b6108db60006113af565b610c3361108f565b60005b81518110156107af57610c61828281518110610c5457610c54611f2e565b6020026020010151611397565b80610c6b81611f5a565b915050610c36565b610c7e610527611120565b610c9a5760405162461bcd60e51b815260040161079c90611f73565b6001600160a01b038116610b825760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d505459000000604482015260640161079c565b610cf861108f565b610d006111b4565b6108db611401565b600091825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610d3b61108f565b61071d81611397565b6108db6000805160206125bc8339815191526102da611120565b6000610da9610d6c85611fa8565b3085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061144092505050565b949350505050565b60006106106000805160206125bc83398151915283610d08565b6000610dd8610527611120565b610df45760405162461bcd60e51b815260040161079c90611f73565b600260335403610e465760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015260640161079c565b6002603355610e536111b4565b61015f54604051632ce8d31360e21b81526001600160a01b039091169063b3a34c4c90610e8690869086906004016122ca565b6020604051808303816000875af1158015610ea5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ec99190611f0c565b60016033559392505050565b600082815260fb6020526040902060010154610ef081610ff7565b610707838361112f565b610f0261108f565b610f0b81611589565b61071d6000826115ff565b6060610f2185611609565b600080876001600160a01b031686610f3b8b8a898961166f565b604051610f48919061240e565b60006040518083038160008787f1925050503d8060008114610f86576040519150601f19603f3d011682016040523d82523d6000602084013e610f8b565b606091505b509092509050610f9c603f8761242a565b5a11610faa57610faa61244c565b610fea82826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061169f565b9998505050505050505050565b61071d81611003611120565b6116d8565b6110128282610d08565b6107af57600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff1916600117905561104b611120565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b611097611120565b6001600160a01b03166110b26097546001600160a01b031690565b6001600160a01b0316146108db5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161079c565b61071d6000805160206125bc83398151915282610ed5565b600061112a61173c565b905090565b6111398282610d08565b156107af57600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff19169055611170611120565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b61012d5460ff16156108db5760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b604482015260640161079c565b61012d5460ff166108db5760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b604482015260640161079c565b61124d6111fb565b61012d805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa611281611120565b6040516001600160a01b03909116815260200160405180910390a1565b600054610100900460ff166112c55760405162461bcd60e51b815260040161079c90612462565b6001603355565b600054610100900460ff166108db5760405162461bcd60e51b815260040161079c90612462565b600054610100900460ff1661131a5760405162461bcd60e51b815260040161079c90612462565b6108db611325611120565b6113af565b600054610100900460ff166113515760405162461bcd60e51b815260040161079c90612462565b6108db600061135e611120565b6115ff565b600054610100900460ff1661138a5760405162461bcd60e51b815260040161079c90612462565b61012d805460ff19169055565b61071d6000805160206125bc833981519152826115ff565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6114096111b4565b61012d805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258611281611120565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015611487573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114ab9190611ef3565b905060006115598660600151805190602001208688602001516040516020016114f99392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561157f5750855161157f906001600160a01b03168286611757565b9695505050505050565b61159161108f565b6001600160a01b0381166115f65760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161079c565b61071d816113af565b6107af8282611008565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a83815602082015290810182905260009060600160405160208183030381529060405280519060200120905061165e8190565b5461166a9060016124ad565b905550565b6060828585604051602001611686939291906124c0565b6040516020818303038152906040529050949350505050565b606083156116ae5750816106db565b8251156116be5782518084602001fd5b8160405162461bcd60e51b815260040161079c9190611c80565b6116e28282610d08565b6107af576116fa816001600160a01b03166014611899565b611705836020611899565b6040516020016117169291906124ff565b60408051601f198184030181529082905262461bcd60e51b825261079c91600401611c80565b6000303303611752575060331936013560601c90565b503390565b60008060006117668585611a35565b9092509050600081600481111561177f5761177f6120c3565b14801561179d5750856001600160a01b0316826001600160a01b0316145b156117ad576001925050506106db565b600080876001600160a01b0316631626ba7e60e01b88886040516024016117d5929190612574565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051611813919061240e565b600060405180830381855afa9150503d806000811461184e576040519150601f19603f3d011682016040523d82523d6000602084013e611853565b606091505b5091509150818015611866575080516020145b801561188d57508051630b135d3f60e11b9061188b9083016020908101908401611ef3565b145b98975050505050505050565b606060006118a883600261258d565b6118b39060026124ad565b67ffffffffffffffff8111156118cb576118cb611d4c565b6040519080825280601f01601f1916602001820160405280156118f5576020820181803683370190505b509050600360fc1b8160008151811061191057611910611f2e565b60200101906001600160f81b031916908160001a905350600f60fb1b8160018151811061193f5761193f611f2e565b60200101906001600160f81b031916908160001a905350600061196384600261258d565b61196e9060016124ad565b90505b60018111156119e6576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106119a2576119a2611f2e565b1a60f81b8282815181106119b8576119b8611f2e565b60200101906001600160f81b031916908160001a90535060049490941c936119df816125a4565b9050611971565b5083156106db5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e74604482015260640161079c565b6000808251604103611a6b5760208301516040840151606085015160001a611a5f87828585611a7a565b94509450505050611a73565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115611ab15750600090506003611b5e565b8460ff16601b14158015611ac957508460ff16601c14155b15611ada5750600090506004611b5e565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015611b2e573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116611b5757600060019250925050611b5e565b9150600090505b94509492505050565b600060208284031215611b7957600080fd5b81356001600160e01b0319811681146106db57600080fd5b600080600060408486031215611ba657600080fd5b833567ffffffffffffffff80821115611bbe57600080fd5b9085019060808288031215611bd257600080fd5b90935060208501359080821115611be857600080fd5b818601915086601f830112611bfc57600080fd5b813581811115611c0b57600080fd5b876020828501011115611c1d57600080fd5b6020830194508093505050509250925092565b60005b83811015611c4b578181015183820152602001611c33565b50506000910152565b60008151808452611c6c816020860160208601611c30565b601f01601f19169290920160200192915050565b6020815260006106db6020830184611c54565b600060208284031215611ca557600080fd5b5035919050565b6001600160a01b038116811461071d57600080fd5b8035611ccc81611cac565b919050565b60008060408385031215611ce457600080fd5b823591506020830135611cf681611cac565b809150509250929050565b600060208284031215611d1357600080fd5b81356106db81611cac565b60008060408385031215611d3157600080fd5b8235611d3c81611cac565b91506020830135611cf681611cac565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715611d8557611d85611d4c565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715611db457611db4611d4c565b604052919050565b60006020808385031215611dcf57600080fd5b823567ffffffffffffffff80821115611de757600080fd5b818501915085601f830112611dfb57600080fd5b813581811115611e0d57611e0d611d4c565b8060051b9150611e1e848301611d8b565b8181529183018401918481019088841115611e3857600080fd5b938501935b8385101561188d5784359250611e5283611cac565b8282529385019390850190611e3d565b60008060408385031215611e7557600080fd5b823567ffffffffffffffff811115611e8c57600080fd5b830160408186031215611e9e57600080fd5b946020939093013593505050565b6000808335601e19843603018112611ec357600080fd5b83018035915067ffffffffffffffff821115611ede57600080fd5b602001915036819003821315611a7357600080fd5b600060208284031215611f0557600080fd5b5051919050565b600060208284031215611f1e57600080fd5b815180151581146106db57600080fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201611f6c57611f6c611f44565b5060010190565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b600060808236031215611fba57600080fd5b611fc2611d62565b8235611fcd81611cac565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff80821115611ffe57600080fd5b9085019036601f83011261201157600080fd5b81358181111561202357612023611d4c565b612035601f8201601f19168501611d8b565b9150808252368482850101111561204b57600080fd5b808484018584013760009082019093019290925250606082015292915050565b6000808335601e1984360301811261208257600080fd5b830160208101925035905067ffffffffffffffff8111156120a257600080fd5b60a081023603821315611a7357600080fd5b803560068110611ccc57600080fd5b634e487b7160e01b600052602160045260246000fd5b600681106120e9576120e96120c3565b9052565b8183526000602080850194508260005b858110156121615761211787612112846120b4565b6120d9565b8282013561212481611cac565b6001600160a01b03168388015260408281013590880152606080830135908801526080808301359088015260a096870196909101906001016120fd565b509495945050505050565b6000808335601e1984360301811261218357600080fd5b830160208101925035905067ffffffffffffffff8111156121a357600080fd5b60c081023603821315611a7357600080fd5b8183526000602080850194508260005b85811015612161576121da87612112846120b4565b828201356121e781611cac565b6001600160a01b039081168885015260408381013590890152606080840135908901526080808401359089015260a0908382013561222481611cac565b169088015260c09687019691909101906001016121c5565b803560058110611ccc57600080fd5b600581106120e9576120e96120c3565b6000808335601e1984360301811261227257600080fd5b830160208101925035905067ffffffffffffffff81111561229257600080fd5b803603821315611a7357600080fd5b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b604081526000833561015e198536030181126122e557600080fd5b604083810152840161230a608084016122fd83611cc1565b6001600160a01b03169052565b61231660208201611cc1565b6001600160a01b031660a0840152612331604082018261206b565b6101608060c08701526123496101e0870183856120ed565b9250612358606085018561216c565b878503607f190160e089015292506123718484836121b5565b9350506123806080850161223c565b91506101006123918188018461224b565b610120925060a08501358388015261014060c08601358189015260e08601358389015281860135610180890152838601356101a0890152808601356101c0890152505050506123e3602087018761225b565b858303603f1901606087015292506123fc8284836122a1565b93505050508260208301529392505050565b60008251612420818460208701611c30565b9190910192915050565b60008261244757634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b8082018082111561061057610610611f44565b600084516124d2818460208901611c30565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351612537816017850160208801611c30565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351612568816028840160208801611c30565b01602801949350505050565b828152604060208201526000610da96040830184611c54565b808202811582820484141761061057610610611f44565b6000816125b3576125b3611f44565b50600019019056fe9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000811000a"; - static readonly abi: readonly [{ - readonly inputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "constructor"; - }, { - readonly inputs: readonly []; - readonly name: "InvalidSignature"; - readonly type: "error"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "uint8"; - readonly name: "version"; - readonly type: "uint8"; - }]; - readonly name: "Initialized"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "previousOwner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "newOwner"; - readonly type: "address"; - }]; - readonly name: "OwnershipTransferred"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "Paused"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "previousAdminRole"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "newAdminRole"; - readonly type: "bytes32"; - }]; - readonly name: "RoleAdminChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "sender"; - readonly type: "address"; - }]; - readonly name: "RoleGranted"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "sender"; - readonly type: "address"; - }]; - readonly name: "RoleRevoked"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "Unpaused"; - readonly type: "event"; - }, { - readonly inputs: readonly []; - readonly name: "DEFAULT_ADMIN_ROLE"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "MINTER_ROLE"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "NAME"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "VERSION"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "addMinter"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address[]"; - readonly name: "accounts"; - readonly type: "address[]"; - }]; - readonly name: "addMinters"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address payable"; - readonly name: "receiver"; - readonly type: "address"; - }]; - readonly name: "closeMinter"; - readonly outputs: readonly []; - readonly stateMutability: "payable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly components: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "nonce"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly internalType: "struct IForwarder.ForwardRequest"; - readonly name: "req"; - readonly type: "tuple"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "execute"; - readonly outputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly components: readonly [{ - readonly components: readonly [{ - readonly internalType: "address"; - readonly name: "offerer"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "zone"; - readonly type: "address"; - }, { - readonly components: readonly [{ - readonly internalType: "enum ItemType"; - readonly name: "itemType"; - readonly type: "uint8"; - }, { - readonly internalType: "address"; - readonly name: "token"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "identifierOrCriteria"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "startAmount"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "endAmount"; - readonly type: "uint256"; - }]; - readonly internalType: "struct OfferItem[]"; - readonly name: "offer"; - readonly type: "tuple[]"; - }, { - readonly components: readonly [{ - readonly internalType: "enum ItemType"; - readonly name: "itemType"; - readonly type: "uint8"; - }, { - readonly internalType: "address"; - readonly name: "token"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "identifierOrCriteria"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "startAmount"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "endAmount"; - readonly type: "uint256"; - }, { - readonly internalType: "address payable"; - readonly name: "recipient"; - readonly type: "address"; - }]; - readonly internalType: "struct ConsiderationItem[]"; - readonly name: "consideration"; - readonly type: "tuple[]"; - }, { - readonly internalType: "enum OrderType"; - readonly name: "orderType"; - readonly type: "uint8"; - }, { - readonly internalType: "uint256"; - readonly name: "startTime"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "endTime"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes32"; - readonly name: "zoneHash"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "salt"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes32"; - readonly name: "conduitKey"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "totalOriginalConsiderationItems"; - readonly type: "uint256"; - }]; - readonly internalType: "struct OrderParameters"; - readonly name: "parameters"; - readonly type: "tuple"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly internalType: "struct Order"; - readonly name: "parameters"; - readonly type: "tuple"; - }, { - readonly internalType: "bytes32"; - readonly name: "fulfillerConduitKey"; - readonly type: "bytes32"; - }]; - readonly name: "fulfillOrder"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: "fulfilled"; - readonly type: "bool"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }]; - readonly name: "getRoleAdmin"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "grantRole"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "hasRole"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "contract ConsiderationInterface"; - readonly name: "_seaport"; - readonly type: "address"; - }, { - readonly internalType: "contract IERC20"; - readonly name: "_usdc"; - readonly type: "address"; - }]; - readonly name: "initialize"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "isMinter"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "forwarder"; - readonly type: "address"; - }]; - readonly name: "isTrustedForwarder"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "nonceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "owner"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "pause"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "paused"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "removeMinter"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address[]"; - readonly name: "accounts"; - readonly type: "address[]"; - }]; - readonly name: "removeMinters"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "renounceMinter"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "renounceOwnership"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "renounceRole"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "revokeRole"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address payable"; - readonly name: "receiver"; - readonly type: "address"; - }]; - readonly name: "rotateMinter"; - readonly outputs: readonly []; - readonly stateMutability: "payable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "newOwner"; - readonly type: "address"; - }]; - readonly name: "transferOwnership"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "unpause"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly components: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "nonce"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly internalType: "struct IForwarder.ForwardRequest"; - readonly name: "req"; - readonly type: "tuple"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "verify"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "withdraw"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): SeaportProxyBuyerInterface; - static connect(address: string, runner?: ContractRunner | null): SeaportProxyBuyer; -} -export {}; -//# sourceMappingURL=SeaportProxyBuyer__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/marketplace/SeaportProxyBuyer__factory.d.ts.map b/dist/types/factories/contracts/marketplace/SeaportProxyBuyer__factory.d.ts.map deleted file mode 100644 index a0a040e3..00000000 --- a/dist/types/factories/contracts/marketplace/SeaportProxyBuyer__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"SeaportProxyBuyer__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/marketplace/SeaportProxyBuyer__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,KAAK,EACV,iBAAiB,EACjB,0BAA0B,EAC3B,MAAM,kDAAkD,CAAC;AAsxB1D,aAAK,kCAAkC,GACnC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,0BAA2B,SAAQ,eAAe;gBACjD,GAAG,IAAI,EAAE,kCAAkC;IAQ9C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,0BAA0B;IAI3E,MAAM,CAAC,QAAQ,CAAC,QAAQ,g8mBAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,0BAA0B;IAGpD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,iBAAiB;CAGrB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/marketplace/SeaportProxyBuyer__factory.js b/dist/types/factories/contracts/marketplace/SeaportProxyBuyer__factory.js deleted file mode 100644 index fa81ab5f..00000000 --- a/dist/types/factories/contracts/marketplace/SeaportProxyBuyer__factory.js +++ /dev/null @@ -1,818 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.SeaportProxyBuyer__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [], - stateMutability: "nonpayable", - type: "constructor", - }, - { - inputs: [], - name: "InvalidSignature", - type: "error", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint8", - name: "version", - type: "uint8", - }, - ], - name: "Initialized", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "previousOwner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnershipTransferred", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "Paused", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - indexed: true, - internalType: "bytes32", - name: "previousAdminRole", - type: "bytes32", - }, - { - indexed: true, - internalType: "bytes32", - name: "newAdminRole", - type: "bytes32", - }, - ], - name: "RoleAdminChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "sender", - type: "address", - }, - ], - name: "RoleGranted", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "sender", - type: "address", - }, - ], - name: "RoleRevoked", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "Unpaused", - type: "event", - }, - { - inputs: [], - name: "DEFAULT_ADMIN_ROLE", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "MINTER_ROLE", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "NAME", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "VERSION", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "addMinter", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address[]", - name: "accounts", - type: "address[]", - }, - ], - name: "addMinters", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address payable", - name: "receiver", - type: "address", - }, - ], - name: "closeMinter", - outputs: [], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - internalType: "struct IForwarder.ForwardRequest", - name: "req", - type: "tuple", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "execute", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - components: [ - { - components: [ - { - internalType: "address", - name: "offerer", - type: "address", - }, - { - internalType: "address", - name: "zone", - type: "address", - }, - { - components: [ - { - internalType: "enum ItemType", - name: "itemType", - type: "uint8", - }, - { - internalType: "address", - name: "token", - type: "address", - }, - { - internalType: "uint256", - name: "identifierOrCriteria", - type: "uint256", - }, - { - internalType: "uint256", - name: "startAmount", - type: "uint256", - }, - { - internalType: "uint256", - name: "endAmount", - type: "uint256", - }, - ], - internalType: "struct OfferItem[]", - name: "offer", - type: "tuple[]", - }, - { - components: [ - { - internalType: "enum ItemType", - name: "itemType", - type: "uint8", - }, - { - internalType: "address", - name: "token", - type: "address", - }, - { - internalType: "uint256", - name: "identifierOrCriteria", - type: "uint256", - }, - { - internalType: "uint256", - name: "startAmount", - type: "uint256", - }, - { - internalType: "uint256", - name: "endAmount", - type: "uint256", - }, - { - internalType: "address payable", - name: "recipient", - type: "address", - }, - ], - internalType: "struct ConsiderationItem[]", - name: "consideration", - type: "tuple[]", - }, - { - internalType: "enum OrderType", - name: "orderType", - type: "uint8", - }, - { - internalType: "uint256", - name: "startTime", - type: "uint256", - }, - { - internalType: "uint256", - name: "endTime", - type: "uint256", - }, - { - internalType: "bytes32", - name: "zoneHash", - type: "bytes32", - }, - { - internalType: "uint256", - name: "salt", - type: "uint256", - }, - { - internalType: "bytes32", - name: "conduitKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "totalOriginalConsiderationItems", - type: "uint256", - }, - ], - internalType: "struct OrderParameters", - name: "parameters", - type: "tuple", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - internalType: "struct Order", - name: "parameters", - type: "tuple", - }, - { - internalType: "bytes32", - name: "fulfillerConduitKey", - type: "bytes32", - }, - ], - name: "fulfillOrder", - outputs: [ - { - internalType: "bool", - name: "fulfilled", - type: "bool", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - ], - name: "getRoleAdmin", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "grantRole", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "hasRole", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "contract ConsiderationInterface", - name: "_seaport", - type: "address", - }, - { - internalType: "contract IERC20", - name: "_usdc", - type: "address", - }, - ], - name: "initialize", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "isMinter", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "forwarder", - type: "address", - }, - ], - name: "isTrustedForwarder", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "nonceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - 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: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "removeMinter", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address[]", - name: "accounts", - type: "address[]", - }, - ], - name: "removeMinters", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "renounceMinter", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "renounceOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "renounceRole", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "revokeRole", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address payable", - name: "receiver", - type: "address", - }, - ], - name: "rotateMinter", - outputs: [], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "transferOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "unpause", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - internalType: "struct IForwarder.ForwardRequest", - name: "req", - type: "tuple", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "verify", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "withdraw", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -const _bytecode = "0x60806040523480156200001157600080fd5b506200001c62000022565b620000e4565b600054610100900460ff16156200008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff9081161015620000e2576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b6125e880620000f46000396000f3fe6080604052600436106101d85760003560e01c806371e2a65711610102578063a3f4df7e11610095578063d539139311610064578063d53913931461054c578063d547741f1461056e578063f2fde38b1461058e578063ffa1ad74146105ae57600080fd5b8063a3f4df7e146104ad578063a4247400146104ec578063aa271e1a1461050c578063b3a34c4c1461052c57600080fd5b806391d14854116100d157806391d1485414610443578063983b2d56146104635780639865027514610483578063a217fddf1461049857600080fd5b806371e2a657146103d357806381c81d35146103f35780638456cb59146104065780638da5cb5b1461041b57600080fd5b80633f4ba83a1161017a5780635fc1964f116101495780635fc1964f1461036b578063634486da1461038b5780636ccbae5f1461039e578063715018a6146103be57600080fd5b80633f4ba83a146102f4578063485cc95514610309578063572b6c05146103295780635c975abb1461035257600080fd5b80632f2ff15d116101b65780632f2ff15d1461027d5780633092afd51461029f57806336568abe146102bf5780633ccfd60b146102df57600080fd5b806301ffc9a7146101dd5780631bf7e13e14610212578063248a9ca31461023f575b600080fd5b3480156101e957600080fd5b506101fd6101f8366004611b67565b6105df565b60405190151581526020015b60405180910390f35b34801561021e57600080fd5b5061023261022d366004611b91565b610616565b6040516102099190611c80565b34801561024b57600080fd5b5061026f61025a366004611c93565b600090815260fb602052604090206001015490565b604051908152602001610209565b34801561028957600080fd5b5061029d610298366004611cd1565b6106e2565b005b3480156102ab57600080fd5b5061029d6102ba366004611d01565b61070c565b3480156102cb57600080fd5b5061029d6102da366004611cd1565b610720565b3480156102eb57600080fd5b5061029d6107b3565b34801561030057600080fd5b5061029d6108c3565b34801561031557600080fd5b5061029d610324366004611d1e565b6108dd565b34801561033557600080fd5b506101fd610344366004611d01565b6001600160a01b0316301490565b34801561035e57600080fd5b5061012d5460ff166101fd565b34801561037757600080fd5b5061029d610386366004611dbc565b610ab4565b61029d610399366004611d01565b610afc565b3480156103aa57600080fd5b5061026f6103b9366004611c93565b610bbf565b3480156103ca57600080fd5b5061029d610c19565b3480156103df57600080fd5b5061029d6103ee366004611dbc565b610c2b565b61029d610401366004611d01565b610c73565b34801561041257600080fd5b5061029d610cf0565b34801561042757600080fd5b506097546040516001600160a01b039091168152602001610209565b34801561044f57600080fd5b506101fd61045e366004611cd1565b610d08565b34801561046f57600080fd5b5061029d61047e366004611d01565b610d33565b34801561048f57600080fd5b5061029d610d44565b3480156104a457600080fd5b5061026f600081565b3480156104b957600080fd5b506102326040518060400160405280601381526020017229b2b0b837b93a10283937bc3c90213abcb2b960691b81525081565b3480156104f857600080fd5b506101fd610507366004611b91565b610d5e565b34801561051857600080fd5b506101fd610527366004611d01565b610db1565b34801561053857600080fd5b506101fd610547366004611e62565b610dcb565b34801561055857600080fd5b5061026f6000805160206125bc83398151915281565b34801561057a57600080fd5b5061029d610589366004611cd1565b610ed5565b34801561059a57600080fd5b5061029d6105a9366004611d01565b610efa565b3480156105ba57600080fd5b5061023260405180604001604052806005815260200164302e302e3160d81b81525081565b60006001600160e01b03198216637965db0b60e01b148061061057506301ffc9a760e01b6001600160e01b03198316145b92915050565b606060005a9050610628858585610d5e565b61064557604051638baa579f60e01b815260040160405180910390fd5b6106d76106556020870187611d01565b3060408801358461066960608b018b611eac565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b9081908401838280828437600092019190915250610f1692505050565b9150505b9392505050565b600082815260fb60205260409020600101546106fd81610ff7565b6107078383611008565b505050565b61071461108f565b61071d81611108565b50565b610728611120565b6001600160a01b0316816001600160a01b0316146107a55760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6107af828261112f565b5050565b6107bb61108f565b6107c36111b4565b610160546001600160a01b031663a9059cbb6107e76097546001600160a01b031690565b610160546040516370a0823160e01b81523060048201526001600160a01b03909116906370a0823190602401602060405180830381865afa158015610830573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108549190611ef3565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303816000875af115801561089f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061071d9190611f0c565b6108cb61108f565b6108d36111fb565b6108db611245565b565b600054610100900460ff16158080156108fd5750600054600160ff909116105b806109175750303b158015610917575060005460ff166001145b61097a5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840161079c565b6000805460ff19166001179055801561099d576000805461ff0019166101001790555b61015f80546001600160a01b03199081166001600160a01b03868116918217909355610160805490921692851692831790915560405163095ea7b360e01b81526004810191909152600019602482015263095ea7b3906044016020604051808303816000875af1158015610a15573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a399190611f0c565b50610a4261129e565b610a4a6112cc565b610a526112cc565b610a5a6112f3565b610a6261132a565b610a6a611363565b8015610707576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a1505050565b610abc61108f565b60005b81518110156107af57610aea828281518110610add57610add611f2e565b6020026020010151611108565b80610af481611f5a565b915050610abf565b610b07610527611120565b610b235760405162461bcd60e51b815260040161079c90611f73565b6001600160a01b038116610b795760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d505459000000604482015260640161079c565b610b8281611397565b610b8a610d44565b6040516001600160a01b038216903480156108fc02916000818181858888f193505050501580156107af573d6000803e3d6000fd5b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a838156020820152908101829052600090610c12906060016040516020818303038152906040528051906020012090565b5492915050565b610c2161108f565b6108db60006113af565b610c3361108f565b60005b81518110156107af57610c61828281518110610c5457610c54611f2e565b6020026020010151611397565b80610c6b81611f5a565b915050610c36565b610c7e610527611120565b610c9a5760405162461bcd60e51b815260040161079c90611f73565b6001600160a01b038116610b825760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d505459000000604482015260640161079c565b610cf861108f565b610d006111b4565b6108db611401565b600091825260fb602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610d3b61108f565b61071d81611397565b6108db6000805160206125bc8339815191526102da611120565b6000610da9610d6c85611fa8565b3085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061144092505050565b949350505050565b60006106106000805160206125bc83398151915283610d08565b6000610dd8610527611120565b610df45760405162461bcd60e51b815260040161079c90611f73565b600260335403610e465760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015260640161079c565b6002603355610e536111b4565b61015f54604051632ce8d31360e21b81526001600160a01b039091169063b3a34c4c90610e8690869086906004016122ca565b6020604051808303816000875af1158015610ea5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ec99190611f0c565b60016033559392505050565b600082815260fb6020526040902060010154610ef081610ff7565b610707838361112f565b610f0261108f565b610f0b81611589565b61071d6000826115ff565b6060610f2185611609565b600080876001600160a01b031686610f3b8b8a898961166f565b604051610f48919061240e565b60006040518083038160008787f1925050503d8060008114610f86576040519150601f19603f3d011682016040523d82523d6000602084013e610f8b565b606091505b509092509050610f9c603f8761242a565b5a11610faa57610faa61244c565b610fea82826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061169f565b9998505050505050505050565b61071d81611003611120565b6116d8565b6110128282610d08565b6107af57600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff1916600117905561104b611120565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b611097611120565b6001600160a01b03166110b26097546001600160a01b031690565b6001600160a01b0316146108db5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161079c565b61071d6000805160206125bc83398151915282610ed5565b600061112a61173c565b905090565b6111398282610d08565b156107af57600082815260fb602090815260408083206001600160a01b03851684529091529020805460ff19169055611170611120565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b61012d5460ff16156108db5760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b604482015260640161079c565b61012d5460ff166108db5760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b604482015260640161079c565b61124d6111fb565b61012d805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa611281611120565b6040516001600160a01b03909116815260200160405180910390a1565b600054610100900460ff166112c55760405162461bcd60e51b815260040161079c90612462565b6001603355565b600054610100900460ff166108db5760405162461bcd60e51b815260040161079c90612462565b600054610100900460ff1661131a5760405162461bcd60e51b815260040161079c90612462565b6108db611325611120565b6113af565b600054610100900460ff166113515760405162461bcd60e51b815260040161079c90612462565b6108db600061135e611120565b6115ff565b600054610100900460ff1661138a5760405162461bcd60e51b815260040161079c90612462565b61012d805460ff19169055565b61071d6000805160206125bc833981519152826115ff565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6114096111b4565b61012d805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258611281611120565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015611487573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114ab9190611ef3565b905060006115598660600151805190602001208688602001516040516020016114f99392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561157f5750855161157f906001600160a01b03168286611757565b9695505050505050565b61159161108f565b6001600160a01b0381166115f65760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161079c565b61071d816113af565b6107af8282611008565b604080517f1ee5d87a048b728f67073f282321992c260e5be4fa651d08665c5b4ee7a83815602082015290810182905260009060600160405160208183030381529060405280519060200120905061165e8190565b5461166a9060016124ad565b905550565b6060828585604051602001611686939291906124c0565b6040516020818303038152906040529050949350505050565b606083156116ae5750816106db565b8251156116be5782518084602001fd5b8160405162461bcd60e51b815260040161079c9190611c80565b6116e28282610d08565b6107af576116fa816001600160a01b03166014611899565b611705836020611899565b6040516020016117169291906124ff565b60408051601f198184030181529082905262461bcd60e51b825261079c91600401611c80565b6000303303611752575060331936013560601c90565b503390565b60008060006117668585611a35565b9092509050600081600481111561177f5761177f6120c3565b14801561179d5750856001600160a01b0316826001600160a01b0316145b156117ad576001925050506106db565b600080876001600160a01b0316631626ba7e60e01b88886040516024016117d5929190612574565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051611813919061240e565b600060405180830381855afa9150503d806000811461184e576040519150601f19603f3d011682016040523d82523d6000602084013e611853565b606091505b5091509150818015611866575080516020145b801561188d57508051630b135d3f60e11b9061188b9083016020908101908401611ef3565b145b98975050505050505050565b606060006118a883600261258d565b6118b39060026124ad565b67ffffffffffffffff8111156118cb576118cb611d4c565b6040519080825280601f01601f1916602001820160405280156118f5576020820181803683370190505b509050600360fc1b8160008151811061191057611910611f2e565b60200101906001600160f81b031916908160001a905350600f60fb1b8160018151811061193f5761193f611f2e565b60200101906001600160f81b031916908160001a905350600061196384600261258d565b61196e9060016124ad565b90505b60018111156119e6576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106119a2576119a2611f2e565b1a60f81b8282815181106119b8576119b8611f2e565b60200101906001600160f81b031916908160001a90535060049490941c936119df816125a4565b9050611971565b5083156106db5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e74604482015260640161079c565b6000808251604103611a6b5760208301516040840151606085015160001a611a5f87828585611a7a565b94509450505050611a73565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115611ab15750600090506003611b5e565b8460ff16601b14158015611ac957508460ff16601c14155b15611ada5750600090506004611b5e565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015611b2e573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116611b5757600060019250925050611b5e565b9150600090505b94509492505050565b600060208284031215611b7957600080fd5b81356001600160e01b0319811681146106db57600080fd5b600080600060408486031215611ba657600080fd5b833567ffffffffffffffff80821115611bbe57600080fd5b9085019060808288031215611bd257600080fd5b90935060208501359080821115611be857600080fd5b818601915086601f830112611bfc57600080fd5b813581811115611c0b57600080fd5b876020828501011115611c1d57600080fd5b6020830194508093505050509250925092565b60005b83811015611c4b578181015183820152602001611c33565b50506000910152565b60008151808452611c6c816020860160208601611c30565b601f01601f19169290920160200192915050565b6020815260006106db6020830184611c54565b600060208284031215611ca557600080fd5b5035919050565b6001600160a01b038116811461071d57600080fd5b8035611ccc81611cac565b919050565b60008060408385031215611ce457600080fd5b823591506020830135611cf681611cac565b809150509250929050565b600060208284031215611d1357600080fd5b81356106db81611cac565b60008060408385031215611d3157600080fd5b8235611d3c81611cac565b91506020830135611cf681611cac565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715611d8557611d85611d4c565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715611db457611db4611d4c565b604052919050565b60006020808385031215611dcf57600080fd5b823567ffffffffffffffff80821115611de757600080fd5b818501915085601f830112611dfb57600080fd5b813581811115611e0d57611e0d611d4c565b8060051b9150611e1e848301611d8b565b8181529183018401918481019088841115611e3857600080fd5b938501935b8385101561188d5784359250611e5283611cac565b8282529385019390850190611e3d565b60008060408385031215611e7557600080fd5b823567ffffffffffffffff811115611e8c57600080fd5b830160408186031215611e9e57600080fd5b946020939093013593505050565b6000808335601e19843603018112611ec357600080fd5b83018035915067ffffffffffffffff821115611ede57600080fd5b602001915036819003821315611a7357600080fd5b600060208284031215611f0557600080fd5b5051919050565b600060208284031215611f1e57600080fd5b815180151581146106db57600080fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201611f6c57611f6c611f44565b5060010190565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b600060808236031215611fba57600080fd5b611fc2611d62565b8235611fcd81611cac565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff80821115611ffe57600080fd5b9085019036601f83011261201157600080fd5b81358181111561202357612023611d4c565b612035601f8201601f19168501611d8b565b9150808252368482850101111561204b57600080fd5b808484018584013760009082019093019290925250606082015292915050565b6000808335601e1984360301811261208257600080fd5b830160208101925035905067ffffffffffffffff8111156120a257600080fd5b60a081023603821315611a7357600080fd5b803560068110611ccc57600080fd5b634e487b7160e01b600052602160045260246000fd5b600681106120e9576120e96120c3565b9052565b8183526000602080850194508260005b858110156121615761211787612112846120b4565b6120d9565b8282013561212481611cac565b6001600160a01b03168388015260408281013590880152606080830135908801526080808301359088015260a096870196909101906001016120fd565b509495945050505050565b6000808335601e1984360301811261218357600080fd5b830160208101925035905067ffffffffffffffff8111156121a357600080fd5b60c081023603821315611a7357600080fd5b8183526000602080850194508260005b85811015612161576121da87612112846120b4565b828201356121e781611cac565b6001600160a01b039081168885015260408381013590890152606080840135908901526080808401359089015260a0908382013561222481611cac565b169088015260c09687019691909101906001016121c5565b803560058110611ccc57600080fd5b600581106120e9576120e96120c3565b6000808335601e1984360301811261227257600080fd5b830160208101925035905067ffffffffffffffff81111561229257600080fd5b803603821315611a7357600080fd5b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b604081526000833561015e198536030181126122e557600080fd5b604083810152840161230a608084016122fd83611cc1565b6001600160a01b03169052565b61231660208201611cc1565b6001600160a01b031660a0840152612331604082018261206b565b6101608060c08701526123496101e0870183856120ed565b9250612358606085018561216c565b878503607f190160e089015292506123718484836121b5565b9350506123806080850161223c565b91506101006123918188018461224b565b610120925060a08501358388015261014060c08601358189015260e08601358389015281860135610180890152838601356101a0890152808601356101c0890152505050506123e3602087018761225b565b858303603f1901606087015292506123fc8284836122a1565b93505050508260208301529392505050565b60008251612420818460208701611c30565b9190910192915050565b60008261244757634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b8082018082111561061057610610611f44565b600084516124d2818460208901611c30565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351612537816017850160208801611c30565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351612568816028840160208801611c30565b01602801949350505050565b828152604060208201526000610da96040830184611c54565b808202811582820484141761061057610610611f44565b6000816125b3576125b3611f44565b50600019019056fe9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000811000a"; -const isSuperArgs = (xs) => xs.length > 1; -class SeaportProxyBuyer__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(overrides) { - return super.getDeployTransaction(overrides || {}); - } - deploy(overrides) { - return super.deploy(overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.SeaportProxyBuyer__factory = SeaportProxyBuyer__factory; -SeaportProxyBuyer__factory.bytecode = _bytecode; -SeaportProxyBuyer__factory.abi = _abi; diff --git a/dist/types/factories/contracts/marketplace/index.d.ts b/dist/types/factories/contracts/marketplace/index.d.ts deleted file mode 100644 index efbb5579..00000000 --- a/dist/types/factories/contracts/marketplace/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export { ISeaportProxyBuyer__factory } from "./ISeaportProxyBuyer__factory"; -export { SeaportProxyBuyer__factory } from "./SeaportProxyBuyer__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/marketplace/index.d.ts.map b/dist/types/factories/contracts/marketplace/index.d.ts.map deleted file mode 100644 index f5f73a7b..00000000 --- a/dist/types/factories/contracts/marketplace/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/marketplace/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/contracts/marketplace/index.js b/dist/types/factories/contracts/marketplace/index.js deleted file mode 100644 index e349988a..00000000 --- a/dist/types/factories/contracts/marketplace/index.js +++ /dev/null @@ -1,7 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.SeaportProxyBuyer__factory = exports.ISeaportProxyBuyer__factory = void 0; -var ISeaportProxyBuyer__factory_1 = require("./ISeaportProxyBuyer__factory"); -Object.defineProperty(exports, "ISeaportProxyBuyer__factory", { enumerable: true, get: function () { return ISeaportProxyBuyer__factory_1.ISeaportProxyBuyer__factory; } }); -var SeaportProxyBuyer__factory_1 = require("./SeaportProxyBuyer__factory"); -Object.defineProperty(exports, "SeaportProxyBuyer__factory", { enumerable: true, get: function () { return SeaportProxyBuyer__factory_1.SeaportProxyBuyer__factory; } }); diff --git a/dist/types/factories/contracts/metatx/BaseForwarder__factory.d.ts b/dist/types/factories/contracts/metatx/BaseForwarder__factory.d.ts deleted file mode 100644 index 47c48059..00000000 --- a/dist/types/factories/contracts/metatx/BaseForwarder__factory.d.ts +++ /dev/null @@ -1,92 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { BaseForwarder, BaseForwarderInterface } from "../../../contracts/metatx/BaseForwarder"; -export declare class BaseForwarder__factory { - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly components: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "nonce"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly internalType: "struct IForwarder.ForwardRequest"; - readonly name: "req"; - readonly type: "tuple"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "execute"; - readonly outputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "nonceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly components: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "nonce"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly internalType: "struct IForwarder.ForwardRequest"; - readonly name: "req"; - readonly type: "tuple"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "verify"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): BaseForwarderInterface; - static connect(address: string, runner?: ContractRunner | null): BaseForwarder; -} -//# sourceMappingURL=BaseForwarder__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/metatx/BaseForwarder__factory.d.ts.map b/dist/types/factories/contracts/metatx/BaseForwarder__factory.d.ts.map deleted file mode 100644 index b3492e06..00000000 --- a/dist/types/factories/contracts/metatx/BaseForwarder__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"BaseForwarder__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/metatx/BaseForwarder__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,aAAa,EACb,sBAAsB,EACvB,MAAM,yCAAyC,CAAC;AAoHjD,qBAAa,sBAAsB;IACjC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,sBAAsB;IAGhD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,aAAa;CAGjB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/metatx/BaseForwarder__factory.js b/dist/types/factories/contracts/metatx/BaseForwarder__factory.js deleted file mode 100644 index 4580846a..00000000 --- a/dist/types/factories/contracts/metatx/BaseForwarder__factory.js +++ /dev/null @@ -1,127 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.BaseForwarder__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - internalType: "struct IForwarder.ForwardRequest", - name: "req", - type: "tuple", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "execute", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "nonceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - internalType: "struct IForwarder.ForwardRequest", - name: "req", - type: "tuple", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "verify", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class BaseForwarder__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.BaseForwarder__factory = BaseForwarder__factory; -BaseForwarder__factory.abi = _abi; diff --git a/dist/types/factories/contracts/metatx/BaseRoutingForwarder__factory.d.ts b/dist/types/factories/contracts/metatx/BaseRoutingForwarder__factory.d.ts deleted file mode 100644 index c2a53f95..00000000 --- a/dist/types/factories/contracts/metatx/BaseRoutingForwarder__factory.d.ts +++ /dev/null @@ -1,92 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { BaseRoutingForwarder, BaseRoutingForwarderInterface } from "../../../contracts/metatx/BaseRoutingForwarder"; -export declare class BaseRoutingForwarder__factory { - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly components: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "nonce"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly internalType: "struct IForwarder.ForwardRequest"; - readonly name: "req"; - readonly type: "tuple"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "execute"; - readonly outputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "nonceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly components: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "nonce"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly internalType: "struct IForwarder.ForwardRequest"; - readonly name: "req"; - readonly type: "tuple"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "verify"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): BaseRoutingForwarderInterface; - static connect(address: string, runner?: ContractRunner | null): BaseRoutingForwarder; -} -//# sourceMappingURL=BaseRoutingForwarder__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/metatx/BaseRoutingForwarder__factory.d.ts.map b/dist/types/factories/contracts/metatx/BaseRoutingForwarder__factory.d.ts.map deleted file mode 100644 index 2f36ca09..00000000 --- a/dist/types/factories/contracts/metatx/BaseRoutingForwarder__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"BaseRoutingForwarder__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/metatx/BaseRoutingForwarder__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,oBAAoB,EACpB,6BAA6B,EAC9B,MAAM,gDAAgD,CAAC;AAoHxD,qBAAa,6BAA6B;IACxC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,6BAA6B;IAGvD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,oBAAoB;CAOxB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/metatx/BaseRoutingForwarder__factory.js b/dist/types/factories/contracts/metatx/BaseRoutingForwarder__factory.js deleted file mode 100644 index 8e27a59d..00000000 --- a/dist/types/factories/contracts/metatx/BaseRoutingForwarder__factory.js +++ /dev/null @@ -1,127 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.BaseRoutingForwarder__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - internalType: "struct IForwarder.ForwardRequest", - name: "req", - type: "tuple", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "execute", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "nonceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - internalType: "struct IForwarder.ForwardRequest", - name: "req", - type: "tuple", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "verify", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class BaseRoutingForwarder__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.BaseRoutingForwarder__factory = BaseRoutingForwarder__factory; -BaseRoutingForwarder__factory.abi = _abi; diff --git a/dist/types/factories/contracts/metatx/CNSRegistryForwarder__factory.d.ts b/dist/types/factories/contracts/metatx/CNSRegistryForwarder__factory.d.ts deleted file mode 100644 index d68ba91a..00000000 --- a/dist/types/factories/contracts/metatx/CNSRegistryForwarder__factory.d.ts +++ /dev/null @@ -1,115 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, AddressLike, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../common"; -import type { CNSRegistryForwarder, CNSRegistryForwarderInterface } from "../../../contracts/metatx/CNSRegistryForwarder"; -declare type CNSRegistryForwarderConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class CNSRegistryForwarder__factory extends ContractFactory { - constructor(...args: CNSRegistryForwarderConstructorParams); - getDeployTransaction(target: AddressLike, overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(target: AddressLike, overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): CNSRegistryForwarder__factory; - static readonly bytecode = "0x60806040523480156200001157600080fd5b5060405162001ef938038062001ef9833981016040819052620000349162000657565b600180546001600160a01b0319166001600160a01b03831617905560408051606081019091526025808252620000c7919062001b7960208301396040518060600160405280602e815260200162001e87602e913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b6200013e60405180606001604052806029815260200162001c046029913960405180606001604052806032815260200162001c8a6032913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b620001b56040518060600160405280602f815260200162001d93602f913960405180606001604052806038815260200162001b9e6038913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b620002216040518060400160405280600d81526020016c6275726e2875696e743235362960981b8152506040518060400160405280601681526020017f6275726e466f722875696e743235362c627974657329000000000000000000008152506200061860201b60201c565b6200029860405180606001604052806021815260200162001e66602191396040518060600160405280602a815260200162001d69602a913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b6200030f60405180606001604052806025815260200162001cde602591396040518060600160405280602e815260200162001bd6602e913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b620003866040518060600160405280602b815260200162001dfd602b913960405180606001604052806034815260200162001b456034913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b620003fd60405180606001604052806031815260200162001d38603191396040518060600160405280603a815260200162001c50603a913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b6200047460405180606001604052806035815260200162001d03603591396040518060600160405280603e815260200162001e28603e913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b620004eb6040518060600160405280603b815260200162001dc2603b913960405180608001604052806044815260200162001eb56044913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b6200057e6040518060400160405280601981526020017f6275726e4368696c642875696e743235362c737472696e67290000000000000081525060405180606001604052806022815260200162001cbc6022913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b620006116040518060400160405280601a81526020017f7265736f6c7665546f28616464726573732c75696e743235362900000000000081525060405180606001604052806023815260200162001c2d6023913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b5062000689565b80516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b6000602082840312156200066a57600080fd5b81516001600160a01b03811681146200068257600080fd5b9392505050565b6114ac80620006996000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a424740014610090575b600080fd5b610059610054366004610cac565b6100b3565b6040516100669190610d9b565b60405180910390f35b61008261007d366004610dae565b610162565b604051908152602001610066565b6100a361009e366004610cac565b6101d6565b6040519015158152602001610066565b606060005a90506101576100ca6020870187610ddc565b6001546001600160a01b03166040880135846100e960608b018b610df9565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061023592505050565b9150505b9392505050565b600154604051636ccbae5f60e01b8152600481018390526000916001600160a01b031690636ccbae5f90602401602060405180830381865afa1580156101ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d09190610e40565b92915050565b600061022d6101e485610ef1565b600154604080516020601f88018190048102820181019092528681526001600160a01b039092169190879087908190840183828082843760009201919091525061030d92505050565b949350505050565b6060600080876001600160a01b0316866102518b8a8989610355565b60405161025e9190610f9b565b60006040518083038160008787f1925050503d806000811461029c576040519150601f19603f3d011682016040523d82523d6000602084013e6102a1565b606091505b5090925090506102b2603f87610fb7565b5a116102c0576102c0610fd9565b61030082826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061040a565b9998505050505050505050565b600061031a848484610443565b801561022d575060608401516020908101516001600160e01b031990811660009081529182905260409091205460e01b16151561022d565b50565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036103e75760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526103ff82828661058c565b979650505050505050565b6060831561041957508161015b565b8251156104295782518084602001fd5b8160405162461bcd60e51b81526004016103de9190610d9b565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561048a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104ae9190610e40565b9050600061055c8660600151805190602001208688602001516040516020016104fc9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561058257508551610582906001600160a01b03168286610a38565b9695505050505050565b60606001600160e01b03198416631de5861160e31b0361061a576000806000858060200190518101906105bf9190610fef565b92509250925086838383886040516024016105dd9493929190611032565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152935061015b92505050565b6001600160e01b03198416636debcb8d60e01b0361064b576000806000858060200190518101906105bf9190610fef565b6001600160e01b0319841663280d9b0560e01b036106dd576000806000808680602001905181019061067d91906110aa565b935093509350935087848484848a60405160240161069f959493929190611118565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152945061015b9350505050565b6001600160e01b031984166361603dd960e01b0361075c5760008380602001905181019061070b9190610e40565b905084818460405160240161072192919061115d565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152915061015b9050565b6001600160e01b0319841663b34f33c560e01b036107ab5760008060008580602001905181019061078d9190611176565b92509250925086838383886040516024016105dd94939291906111d0565b6001600160e01b03198416633013529360e01b036107dc5760008060008580602001905181019061078d9190611176565b6001600160e01b031984166307eca39560e01b03610830576000806000808680602001905181019061080e9190611209565b935093509350935087848484848a60405160240161069f95949392919061127e565b6001600160e01b031984166368b6154f60e01b03610862576000806000808680602001905181019061067d91906110aa565b6001600160e01b0319841663341de35b60e21b03610894576000806000808680602001905181019061067d91906110aa565b6001600160e01b03198416637a84860f60e11b0361092d576000806000806000878060200190518101906108c891906112cb565b945094509450945094508885858585858c6040516024016108ee96959493929190611360565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152955061015b945050505050565b6001600160e01b03198416636fab95b360e01b036109b2576000808480602001905181019061095c91906113b9565b915091508582828660405160240161097693929190611400565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925061015b915050565b6001600160e01b0319841663288f888960e11b0361015b57600080848060200190518101906109e1919061142b565b91509150858282866040516024016109fb93929190611459565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925050509392505050565b6000806000610a478585610b7a565b90925090506000816004811115610a6057610a60611489565b148015610a7e5750856001600160a01b0316826001600160a01b0316145b15610a8e5760019250505061015b565b600080876001600160a01b0316631626ba7e60e01b8888604051602401610ab692919061115d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051610af49190610f9b565b600060405180830381855afa9150503d8060008114610b2f576040519150601f19603f3d011682016040523d82523d6000602084013e610b34565b606091505b5091509150818015610b47575080516020145b8015610b6e57508051630b135d3f60e11b90610b6c9083016020908101908401610e40565b145b98975050505050505050565b6000808251604103610bb05760208301516040840151606085015160001a610ba487828585610bbf565b94509450505050610bb8565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610bf65750600090506003610ca3565b8460ff16601b14158015610c0e57508460ff16601c14155b15610c1f5750600090506004610ca3565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610c73573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610c9c57600060019250925050610ca3565b9150600090505b94509492505050565b600080600060408486031215610cc157600080fd5b833567ffffffffffffffff80821115610cd957600080fd5b9085019060808288031215610ced57600080fd5b90935060208501359080821115610d0357600080fd5b818601915086601f830112610d1757600080fd5b813581811115610d2657600080fd5b876020828501011115610d3857600080fd5b6020830194508093505050509250925092565b60005b83811015610d66578181015183820152602001610d4e565b50506000910152565b60008151808452610d87816020860160208601610d4b565b601f01601f19169290920160200192915050565b60208152600061015b6020830184610d6f565b600060208284031215610dc057600080fd5b5035919050565b6001600160a01b038116811461035257600080fd5b600060208284031215610dee57600080fd5b813561015b81610dc7565b6000808335601e19843603018112610e1057600080fd5b83018035915067ffffffffffffffff821115610e2b57600080fd5b602001915036819003821315610bb857600080fd5b600060208284031215610e5257600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610e9257610e92610e59565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ec157610ec1610e59565b604052919050565b600067ffffffffffffffff821115610ee357610ee3610e59565b50601f01601f191660200190565b600060808236031215610f0357600080fd5b610f0b610e6f565b8235610f1681610dc7565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610f4657600080fd5b840136601f820112610f5757600080fd5b8035610f6a610f6582610ec9565b610e98565b8181523684838501011115610f7e57600080fd5b818484018583013760009181019093015250606082015292915050565b60008251610fad818460208701610d4b565b9190910192915050565b600082610fd457634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b60008060006060848603121561100457600080fd5b835161100f81610dc7565b602085015190935061102081610dc7565b80925050604084015190509250925092565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061058290830184610d6f565b600082601f83011261107657600080fd5b8151611084610f6582610ec9565b81815284602083860101111561109957600080fd5b61022d826020830160208701610d4b565b600080600080608085870312156110c057600080fd5b84516110cb81610dc7565b60208601519094506110dc81610dc7565b60408601516060870151919450925067ffffffffffffffff81111561110057600080fd5b61110c87828801611065565b91505092959194509250565b6001600160a01b038681168252851660208201526040810184905260a06060820181905260009061114b90830185610d6f565b8281036080840152610b6e8185610d6f565b82815260406020820152600061022d6040830184610d6f565b60008060006060848603121561118b57600080fd5b835161119681610dc7565b60208501516040860151919450925067ffffffffffffffff8111156111ba57600080fd5b6111c686828701611065565b9150509250925092565b60018060a01b03851681528360208201526080604082015260006111f76080830185610d6f565b82810360608401526103ff8185610d6f565b6000806000806080858703121561121f57600080fd5b845161122a81610dc7565b60208601516040870151919550935067ffffffffffffffff8082111561124f57600080fd5b61125b88838901611065565b9350606087015191508082111561127157600080fd5b5061110c87828801611065565b60018060a01b038616815284602082015260a0604082015260006112a560a0830186610d6f565b82810360608401526112b78186610d6f565b90508281036080840152610b6e8185610d6f565b600080600080600060a086880312156112e357600080fd5b85516112ee81610dc7565b60208701519095506112ff81610dc7565b60408701516060880151919550935067ffffffffffffffff8082111561132457600080fd5b61133089838a01611065565b9350608088015191508082111561134657600080fd5b5061135388828901611065565b9150509295509295909350565b6001600160a01b038781168252861660208201526040810185905260c06060820181905260009061139390830186610d6f565b82810360808401526113a58186610d6f565b905082810360a08401526103008185610d6f565b600080604083850312156113cc57600080fd5b82519150602083015167ffffffffffffffff8111156113ea57600080fd5b6113f685828601611065565b9150509250929050565b8381526060602082015260006114196060830185610d6f565b82810360408401526105828185610d6f565b6000806040838503121561143e57600080fd5b825161144981610dc7565b6020939093015192949293505050565b60018060a01b03841681528260208201526060604082015260006114806060830184610d6f565b95945050505050565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a736166654d696e744368696c64466f7228616464726573732c75696e743235362c737472696e672c62797465732c6279746573297472616e7366657246726f6d28616464726573732c616464726573732c75696e7432353629736166655472616e7366657246726f6d466f7228616464726573732c616464726573732c75696e743235362c62797465732c627974657329736166654d696e744368696c64466f7228616464726573732c75696e743235362c737472696e672c627974657329736166655472616e7366657246726f6d28616464726573732c616464726573732c75696e74323536297265736f6c7665546f466f7228616464726573732c75696e743235362c6279746573297472616e7366657246726f6d4368696c64466f7228616464726573732c616464726573732c75696e743235362c737472696e672c627974657329736166655472616e7366657246726f6d466f7228616464726573732c616464726573732c75696e743235362c6279746573296275726e4368696c64466f722875696e743235362c737472696e672c627974657329736166654d696e744368696c6428616464726573732c75696e743235362c737472696e6729736166655472616e7366657246726f6d4368696c6428616464726573732c616464726573732c75696e743235362c737472696e67297472616e7366657246726f6d4368696c6428616464726573732c616464726573732c75696e743235362c737472696e67296d696e744368696c64466f7228616464726573732c75696e743235362c737472696e672c627974657329736166655472616e7366657246726f6d28616464726573732c616464726573732c75696e743235362c627974657329736166655472616e7366657246726f6d4368696c6428616464726573732c616464726573732c75696e743235362c737472696e672c627974657329736166654d696e744368696c6428616464726573732c75696e743235362c737472696e672c627974657329736166655472616e7366657246726f6d4368696c64466f7228616464726573732c616464726573732c75696e743235362c737472696e672c6279746573296d696e744368696c6428616464726573732c75696e743235362c737472696e67297472616e7366657246726f6d466f7228616464726573732c616464726573732c75696e743235362c627974657329736166655472616e7366657246726f6d4368696c64466f7228616464726573732c616464726573732c75696e743235362c737472696e672c62797465732c627974657329"; - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "contract IForwarder"; - readonly name: "target"; - readonly type: "address"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "constructor"; - }, { - readonly inputs: readonly [{ - readonly components: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "nonce"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly internalType: "struct IForwarder.ForwardRequest"; - readonly name: "req"; - readonly type: "tuple"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "execute"; - readonly outputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "nonceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly components: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "nonce"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly internalType: "struct IForwarder.ForwardRequest"; - readonly name: "req"; - readonly type: "tuple"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "verify"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): CNSRegistryForwarderInterface; - static connect(address: string, runner?: ContractRunner | null): CNSRegistryForwarder; -} -export {}; -//# sourceMappingURL=CNSRegistryForwarder__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/metatx/CNSRegistryForwarder__factory.d.ts.map b/dist/types/factories/contracts/metatx/CNSRegistryForwarder__factory.d.ts.map deleted file mode 100644 index 0d5cf011..00000000 --- a/dist/types/factories/contracts/metatx/CNSRegistryForwarder__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"CNSRegistryForwarder__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/metatx/CNSRegistryForwarder__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,MAAM,EACN,WAAW,EACX,yBAAyB,EACzB,cAAc,EACf,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,KAAK,EACV,oBAAoB,EACpB,6BAA6B,EAC9B,MAAM,gDAAgD,CAAC;AAkIxD,aAAK,qCAAqC,GACtC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,6BAA8B,SAAQ,eAAe;gBACpD,GAAG,IAAI,EAAE,qCAAqC;IAQjD,oBAAoB,CAC3B,MAAM,EAAE,WAAW,EACnB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CACb,MAAM,EAAE,WAAW,EACnB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAItB,2BAA2B;;IAIjD,OAAO,CACd,MAAM,EAAE,cAAc,GAAG,IAAI,GAC5B,6BAA6B;IAIhC,MAAM,CAAC,QAAQ,CAAC,QAAQ,0/eAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,6BAA6B;IAGvD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,oBAAoB;CAOxB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/metatx/CNSRegistryForwarder__factory.js b/dist/types/factories/contracts/metatx/CNSRegistryForwarder__factory.js deleted file mode 100644 index d97cf3e9..00000000 --- a/dist/types/factories/contracts/metatx/CNSRegistryForwarder__factory.js +++ /dev/null @@ -1,158 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.CNSRegistryForwarder__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "contract IForwarder", - name: "target", - type: "address", - }, - ], - stateMutability: "nonpayable", - type: "constructor", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - internalType: "struct IForwarder.ForwardRequest", - name: "req", - type: "tuple", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "execute", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "nonceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - internalType: "struct IForwarder.ForwardRequest", - name: "req", - type: "tuple", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "verify", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -const _bytecode = "0x60806040523480156200001157600080fd5b5060405162001ef938038062001ef9833981016040819052620000349162000657565b600180546001600160a01b0319166001600160a01b03831617905560408051606081019091526025808252620000c7919062001b7960208301396040518060600160405280602e815260200162001e87602e913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b6200013e60405180606001604052806029815260200162001c046029913960405180606001604052806032815260200162001c8a6032913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b620001b56040518060600160405280602f815260200162001d93602f913960405180606001604052806038815260200162001b9e6038913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b620002216040518060400160405280600d81526020016c6275726e2875696e743235362960981b8152506040518060400160405280601681526020017f6275726e466f722875696e743235362c627974657329000000000000000000008152506200061860201b60201c565b6200029860405180606001604052806021815260200162001e66602191396040518060600160405280602a815260200162001d69602a913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b6200030f60405180606001604052806025815260200162001cde602591396040518060600160405280602e815260200162001bd6602e913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b620003866040518060600160405280602b815260200162001dfd602b913960405180606001604052806034815260200162001b456034913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b620003fd60405180606001604052806031815260200162001d38603191396040518060600160405280603a815260200162001c50603a913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b6200047460405180606001604052806035815260200162001d03603591396040518060600160405280603e815260200162001e28603e913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b620004eb6040518060600160405280603b815260200162001dc2603b913960405180608001604052806044815260200162001eb56044913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b6200057e6040518060400160405280601981526020017f6275726e4368696c642875696e743235362c737472696e67290000000000000081525060405180606001604052806022815260200162001cbc6022913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b620006116040518060400160405280601a81526020017f7265736f6c7665546f28616464726573732c75696e743235362900000000000081525060405180606001604052806023815260200162001c2d6023913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b5062000689565b80516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b6000602082840312156200066a57600080fd5b81516001600160a01b03811681146200068257600080fd5b9392505050565b6114ac80620006996000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a424740014610090575b600080fd5b610059610054366004610cac565b6100b3565b6040516100669190610d9b565b60405180910390f35b61008261007d366004610dae565b610162565b604051908152602001610066565b6100a361009e366004610cac565b6101d6565b6040519015158152602001610066565b606060005a90506101576100ca6020870187610ddc565b6001546001600160a01b03166040880135846100e960608b018b610df9565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061023592505050565b9150505b9392505050565b600154604051636ccbae5f60e01b8152600481018390526000916001600160a01b031690636ccbae5f90602401602060405180830381865afa1580156101ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d09190610e40565b92915050565b600061022d6101e485610ef1565b600154604080516020601f88018190048102820181019092528681526001600160a01b039092169190879087908190840183828082843760009201919091525061030d92505050565b949350505050565b6060600080876001600160a01b0316866102518b8a8989610355565b60405161025e9190610f9b565b60006040518083038160008787f1925050503d806000811461029c576040519150601f19603f3d011682016040523d82523d6000602084013e6102a1565b606091505b5090925090506102b2603f87610fb7565b5a116102c0576102c0610fd9565b61030082826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c454400000000000081525061040a565b9998505050505050505050565b600061031a848484610443565b801561022d575060608401516020908101516001600160e01b031990811660009081529182905260409091205460e01b16151561022d565b50565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036103e75760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526103ff82828661058c565b979650505050505050565b6060831561041957508161015b565b8251156104295782518084602001fd5b8160405162461bcd60e51b81526004016103de9190610d9b565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561048a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104ae9190610e40565b9050600061055c8660600151805190602001208688602001516040516020016104fc9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561058257508551610582906001600160a01b03168286610a38565b9695505050505050565b60606001600160e01b03198416631de5861160e31b0361061a576000806000858060200190518101906105bf9190610fef565b92509250925086838383886040516024016105dd9493929190611032565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152935061015b92505050565b6001600160e01b03198416636debcb8d60e01b0361064b576000806000858060200190518101906105bf9190610fef565b6001600160e01b0319841663280d9b0560e01b036106dd576000806000808680602001905181019061067d91906110aa565b935093509350935087848484848a60405160240161069f959493929190611118565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152945061015b9350505050565b6001600160e01b031984166361603dd960e01b0361075c5760008380602001905181019061070b9190610e40565b905084818460405160240161072192919061115d565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152915061015b9050565b6001600160e01b0319841663b34f33c560e01b036107ab5760008060008580602001905181019061078d9190611176565b92509250925086838383886040516024016105dd94939291906111d0565b6001600160e01b03198416633013529360e01b036107dc5760008060008580602001905181019061078d9190611176565b6001600160e01b031984166307eca39560e01b03610830576000806000808680602001905181019061080e9190611209565b935093509350935087848484848a60405160240161069f95949392919061127e565b6001600160e01b031984166368b6154f60e01b03610862576000806000808680602001905181019061067d91906110aa565b6001600160e01b0319841663341de35b60e21b03610894576000806000808680602001905181019061067d91906110aa565b6001600160e01b03198416637a84860f60e11b0361092d576000806000806000878060200190518101906108c891906112cb565b945094509450945094508885858585858c6040516024016108ee96959493929190611360565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152955061015b945050505050565b6001600160e01b03198416636fab95b360e01b036109b2576000808480602001905181019061095c91906113b9565b915091508582828660405160240161097693929190611400565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925061015b915050565b6001600160e01b0319841663288f888960e11b0361015b57600080848060200190518101906109e1919061142b565b91509150858282866040516024016109fb93929190611459565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152925050509392505050565b6000806000610a478585610b7a565b90925090506000816004811115610a6057610a60611489565b148015610a7e5750856001600160a01b0316826001600160a01b0316145b15610a8e5760019250505061015b565b600080876001600160a01b0316631626ba7e60e01b8888604051602401610ab692919061115d565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051610af49190610f9b565b600060405180830381855afa9150503d8060008114610b2f576040519150601f19603f3d011682016040523d82523d6000602084013e610b34565b606091505b5091509150818015610b47575080516020145b8015610b6e57508051630b135d3f60e11b90610b6c9083016020908101908401610e40565b145b98975050505050505050565b6000808251604103610bb05760208301516040840151606085015160001a610ba487828585610bbf565b94509450505050610bb8565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610bf65750600090506003610ca3565b8460ff16601b14158015610c0e57508460ff16601c14155b15610c1f5750600090506004610ca3565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610c73573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610c9c57600060019250925050610ca3565b9150600090505b94509492505050565b600080600060408486031215610cc157600080fd5b833567ffffffffffffffff80821115610cd957600080fd5b9085019060808288031215610ced57600080fd5b90935060208501359080821115610d0357600080fd5b818601915086601f830112610d1757600080fd5b813581811115610d2657600080fd5b876020828501011115610d3857600080fd5b6020830194508093505050509250925092565b60005b83811015610d66578181015183820152602001610d4e565b50506000910152565b60008151808452610d87816020860160208601610d4b565b601f01601f19169290920160200192915050565b60208152600061015b6020830184610d6f565b600060208284031215610dc057600080fd5b5035919050565b6001600160a01b038116811461035257600080fd5b600060208284031215610dee57600080fd5b813561015b81610dc7565b6000808335601e19843603018112610e1057600080fd5b83018035915067ffffffffffffffff821115610e2b57600080fd5b602001915036819003821315610bb857600080fd5b600060208284031215610e5257600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610e9257610e92610e59565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ec157610ec1610e59565b604052919050565b600067ffffffffffffffff821115610ee357610ee3610e59565b50601f01601f191660200190565b600060808236031215610f0357600080fd5b610f0b610e6f565b8235610f1681610dc7565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610f4657600080fd5b840136601f820112610f5757600080fd5b8035610f6a610f6582610ec9565b610e98565b8181523684838501011115610f7e57600080fd5b818484018583013760009181019093015250606082015292915050565b60008251610fad818460208701610d4b565b9190910192915050565b600082610fd457634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b60008060006060848603121561100457600080fd5b835161100f81610dc7565b602085015190935061102081610dc7565b80925050604084015190509250925092565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061058290830184610d6f565b600082601f83011261107657600080fd5b8151611084610f6582610ec9565b81815284602083860101111561109957600080fd5b61022d826020830160208701610d4b565b600080600080608085870312156110c057600080fd5b84516110cb81610dc7565b60208601519094506110dc81610dc7565b60408601516060870151919450925067ffffffffffffffff81111561110057600080fd5b61110c87828801611065565b91505092959194509250565b6001600160a01b038681168252851660208201526040810184905260a06060820181905260009061114b90830185610d6f565b8281036080840152610b6e8185610d6f565b82815260406020820152600061022d6040830184610d6f565b60008060006060848603121561118b57600080fd5b835161119681610dc7565b60208501516040860151919450925067ffffffffffffffff8111156111ba57600080fd5b6111c686828701611065565b9150509250925092565b60018060a01b03851681528360208201526080604082015260006111f76080830185610d6f565b82810360608401526103ff8185610d6f565b6000806000806080858703121561121f57600080fd5b845161122a81610dc7565b60208601516040870151919550935067ffffffffffffffff8082111561124f57600080fd5b61125b88838901611065565b9350606087015191508082111561127157600080fd5b5061110c87828801611065565b60018060a01b038616815284602082015260a0604082015260006112a560a0830186610d6f565b82810360608401526112b78186610d6f565b90508281036080840152610b6e8185610d6f565b600080600080600060a086880312156112e357600080fd5b85516112ee81610dc7565b60208701519095506112ff81610dc7565b60408701516060880151919550935067ffffffffffffffff8082111561132457600080fd5b61133089838a01611065565b9350608088015191508082111561134657600080fd5b5061135388828901611065565b9150509295509295909350565b6001600160a01b038781168252861660208201526040810185905260c06060820181905260009061139390830186610d6f565b82810360808401526113a58186610d6f565b905082810360a08401526103008185610d6f565b600080604083850312156113cc57600080fd5b82519150602083015167ffffffffffffffff8111156113ea57600080fd5b6113f685828601611065565b9150509250929050565b8381526060602082015260006114196060830185610d6f565b82810360408401526105828185610d6f565b6000806040838503121561143e57600080fd5b825161144981610dc7565b6020939093015192949293505050565b60018060a01b03841681528260208201526060604082015260006114806060830184610d6f565b95945050505050565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a736166654d696e744368696c64466f7228616464726573732c75696e743235362c737472696e672c62797465732c6279746573297472616e7366657246726f6d28616464726573732c616464726573732c75696e7432353629736166655472616e7366657246726f6d466f7228616464726573732c616464726573732c75696e743235362c62797465732c627974657329736166654d696e744368696c64466f7228616464726573732c75696e743235362c737472696e672c627974657329736166655472616e7366657246726f6d28616464726573732c616464726573732c75696e74323536297265736f6c7665546f466f7228616464726573732c75696e743235362c6279746573297472616e7366657246726f6d4368696c64466f7228616464726573732c616464726573732c75696e743235362c737472696e672c627974657329736166655472616e7366657246726f6d466f7228616464726573732c616464726573732c75696e743235362c6279746573296275726e4368696c64466f722875696e743235362c737472696e672c627974657329736166654d696e744368696c6428616464726573732c75696e743235362c737472696e6729736166655472616e7366657246726f6d4368696c6428616464726573732c616464726573732c75696e743235362c737472696e67297472616e7366657246726f6d4368696c6428616464726573732c616464726573732c75696e743235362c737472696e67296d696e744368696c64466f7228616464726573732c75696e743235362c737472696e672c627974657329736166655472616e7366657246726f6d28616464726573732c616464726573732c75696e743235362c627974657329736166655472616e7366657246726f6d4368696c6428616464726573732c616464726573732c75696e743235362c737472696e672c627974657329736166654d696e744368696c6428616464726573732c75696e743235362c737472696e672c627974657329736166655472616e7366657246726f6d4368696c64466f7228616464726573732c616464726573732c75696e743235362c737472696e672c6279746573296d696e744368696c6428616464726573732c75696e743235362c737472696e67297472616e7366657246726f6d466f7228616464726573732c616464726573732c75696e743235362c627974657329736166655472616e7366657246726f6d4368696c64466f7228616464726573732c616464726573732c75696e743235362c737472696e672c62797465732c627974657329"; -const isSuperArgs = (xs) => xs.length > 1; -class CNSRegistryForwarder__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(target, overrides) { - return super.getDeployTransaction(target, overrides || {}); - } - deploy(target, overrides) { - return super.deploy(target, overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.CNSRegistryForwarder__factory = CNSRegistryForwarder__factory; -CNSRegistryForwarder__factory.bytecode = _bytecode; -CNSRegistryForwarder__factory.abi = _abi; diff --git a/dist/types/factories/contracts/metatx/ERC2771Context__factory.d.ts b/dist/types/factories/contracts/metatx/ERC2771Context__factory.d.ts deleted file mode 100644 index 33284a3c..00000000 --- a/dist/types/factories/contracts/metatx/ERC2771Context__factory.d.ts +++ /dev/null @@ -1,32 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { ERC2771Context, ERC2771ContextInterface } from "../../../contracts/metatx/ERC2771Context"; -export declare class ERC2771Context__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "uint8"; - readonly name: "version"; - readonly type: "uint8"; - }]; - readonly name: "Initialized"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "forwarder"; - readonly type: "address"; - }]; - readonly name: "isTrustedForwarder"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): ERC2771ContextInterface; - static connect(address: string, runner?: ContractRunner | null): ERC2771Context; -} -//# sourceMappingURL=ERC2771Context__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/metatx/ERC2771Context__factory.d.ts.map b/dist/types/factories/contracts/metatx/ERC2771Context__factory.d.ts.map deleted file mode 100644 index a0c6008b..00000000 --- a/dist/types/factories/contracts/metatx/ERC2771Context__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ERC2771Context__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/metatx/ERC2771Context__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,cAAc,EACd,uBAAuB,EACxB,MAAM,0CAA0C,CAAC;AAqClD,qBAAa,uBAAuB;IAClC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,uBAAuB;IAGjD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,cAAc;CAGlB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/metatx/ERC2771Context__factory.js b/dist/types/factories/contracts/metatx/ERC2771Context__factory.js deleted file mode 100644 index 15292e2a..00000000 --- a/dist/types/factories/contracts/metatx/ERC2771Context__factory.js +++ /dev/null @@ -1,48 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ERC2771Context__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint8", - name: "version", - type: "uint8", - }, - ], - name: "Initialized", - type: "event", - }, - { - inputs: [ - { - internalType: "address", - name: "forwarder", - type: "address", - }, - ], - name: "isTrustedForwarder", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class ERC2771Context__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.ERC2771Context__factory = ERC2771Context__factory; -ERC2771Context__factory.abi = _abi; diff --git a/dist/types/factories/contracts/metatx/ERC2771RegistryContext__factory.d.ts b/dist/types/factories/contracts/metatx/ERC2771RegistryContext__factory.d.ts deleted file mode 100644 index b47c1c30..00000000 --- a/dist/types/factories/contracts/metatx/ERC2771RegistryContext__factory.d.ts +++ /dev/null @@ -1,32 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { ERC2771RegistryContext, ERC2771RegistryContextInterface } from "../../../contracts/metatx/ERC2771RegistryContext"; -export declare class ERC2771RegistryContext__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "uint8"; - readonly name: "version"; - readonly type: "uint8"; - }]; - readonly name: "Initialized"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "forwarder"; - readonly type: "address"; - }]; - readonly name: "isTrustedForwarder"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): ERC2771RegistryContextInterface; - static connect(address: string, runner?: ContractRunner | null): ERC2771RegistryContext; -} -//# sourceMappingURL=ERC2771RegistryContext__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/metatx/ERC2771RegistryContext__factory.d.ts.map b/dist/types/factories/contracts/metatx/ERC2771RegistryContext__factory.d.ts.map deleted file mode 100644 index 008db28f..00000000 --- a/dist/types/factories/contracts/metatx/ERC2771RegistryContext__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ERC2771RegistryContext__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/metatx/ERC2771RegistryContext__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,sBAAsB,EACtB,+BAA+B,EAChC,MAAM,kDAAkD,CAAC;AAqC1D,qBAAa,+BAA+B;IAC1C,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,+BAA+B;IAGzD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,sBAAsB;CAO1B"} \ No newline at end of file diff --git a/dist/types/factories/contracts/metatx/ERC2771RegistryContext__factory.js b/dist/types/factories/contracts/metatx/ERC2771RegistryContext__factory.js deleted file mode 100644 index 9468870d..00000000 --- a/dist/types/factories/contracts/metatx/ERC2771RegistryContext__factory.js +++ /dev/null @@ -1,48 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ERC2771RegistryContext__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint8", - name: "version", - type: "uint8", - }, - ], - name: "Initialized", - type: "event", - }, - { - inputs: [ - { - internalType: "address", - name: "forwarder", - type: "address", - }, - ], - name: "isTrustedForwarder", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class ERC2771RegistryContext__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.ERC2771RegistryContext__factory = ERC2771RegistryContext__factory; -ERC2771RegistryContext__factory.abi = _abi; diff --git a/dist/types/factories/contracts/metatx/Forwarder__factory.d.ts b/dist/types/factories/contracts/metatx/Forwarder__factory.d.ts deleted file mode 100644 index ab1b0e52..00000000 --- a/dist/types/factories/contracts/metatx/Forwarder__factory.d.ts +++ /dev/null @@ -1,106 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { Forwarder, ForwarderInterface } from "../../../contracts/metatx/Forwarder"; -export declare class Forwarder__factory { - static readonly abi: readonly [{ - readonly inputs: readonly []; - readonly name: "InvalidSignature"; - readonly type: "error"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "uint8"; - readonly name: "version"; - readonly type: "uint8"; - }]; - readonly name: "Initialized"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly components: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "nonce"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly internalType: "struct IForwarder.ForwardRequest"; - readonly name: "req"; - readonly type: "tuple"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "execute"; - readonly outputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "nonceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly components: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "nonce"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly internalType: "struct IForwarder.ForwardRequest"; - readonly name: "req"; - readonly type: "tuple"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "verify"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): ForwarderInterface; - static connect(address: string, runner?: ContractRunner | null): Forwarder; -} -//# sourceMappingURL=Forwarder__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/metatx/Forwarder__factory.d.ts.map b/dist/types/factories/contracts/metatx/Forwarder__factory.d.ts.map deleted file mode 100644 index a9e8a8b3..00000000 --- a/dist/types/factories/contracts/metatx/Forwarder__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Forwarder__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/metatx/Forwarder__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,SAAS,EACT,kBAAkB,EACnB,MAAM,qCAAqC,CAAC;AAsI7C,qBAAa,kBAAkB;IAC7B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,kBAAkB;IAG5C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,SAAS;CAG3E"} \ No newline at end of file diff --git a/dist/types/factories/contracts/metatx/Forwarder__factory.js b/dist/types/factories/contracts/metatx/Forwarder__factory.js deleted file mode 100644 index 5d7c6f70..00000000 --- a/dist/types/factories/contracts/metatx/Forwarder__factory.js +++ /dev/null @@ -1,145 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.Forwarder__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [], - name: "InvalidSignature", - type: "error", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint8", - name: "version", - type: "uint8", - }, - ], - name: "Initialized", - type: "event", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - internalType: "struct IForwarder.ForwardRequest", - name: "req", - type: "tuple", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "execute", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "nonceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - internalType: "struct IForwarder.ForwardRequest", - name: "req", - type: "tuple", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "verify", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class Forwarder__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.Forwarder__factory = Forwarder__factory; -Forwarder__factory.abi = _abi; diff --git a/dist/types/factories/contracts/metatx/IForwarder__factory.d.ts b/dist/types/factories/contracts/metatx/IForwarder__factory.d.ts deleted file mode 100644 index 311fccbb..00000000 --- a/dist/types/factories/contracts/metatx/IForwarder__factory.d.ts +++ /dev/null @@ -1,92 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IForwarder, IForwarderInterface } from "../../../contracts/metatx/IForwarder"; -export declare class IForwarder__factory { - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly components: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "nonce"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly internalType: "struct IForwarder.ForwardRequest"; - readonly name: "req"; - readonly type: "tuple"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "execute"; - readonly outputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "nonceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly components: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "nonce"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly internalType: "struct IForwarder.ForwardRequest"; - readonly name: "req"; - readonly type: "tuple"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "verify"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): IForwarderInterface; - static connect(address: string, runner?: ContractRunner | null): IForwarder; -} -//# sourceMappingURL=IForwarder__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/metatx/IForwarder__factory.d.ts.map b/dist/types/factories/contracts/metatx/IForwarder__factory.d.ts.map deleted file mode 100644 index ff616ee9..00000000 --- a/dist/types/factories/contracts/metatx/IForwarder__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IForwarder__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/metatx/IForwarder__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,UAAU,EACV,mBAAmB,EACpB,MAAM,sCAAsC,CAAC;AAoH9C,qBAAa,mBAAmB;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,mBAAmB;IAG7C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,UAAU;CAG5E"} \ No newline at end of file diff --git a/dist/types/factories/contracts/metatx/IForwarder__factory.js b/dist/types/factories/contracts/metatx/IForwarder__factory.js deleted file mode 100644 index 1c58ae9e..00000000 --- a/dist/types/factories/contracts/metatx/IForwarder__factory.js +++ /dev/null @@ -1,127 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IForwarder__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - internalType: "struct IForwarder.ForwardRequest", - name: "req", - type: "tuple", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "execute", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "nonceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - internalType: "struct IForwarder.ForwardRequest", - name: "req", - type: "tuple", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "verify", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class IForwarder__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IForwarder__factory = IForwarder__factory; -IForwarder__factory.abi = _abi; diff --git a/dist/types/factories/contracts/metatx/MintingManagerForwarder__factory.d.ts b/dist/types/factories/contracts/metatx/MintingManagerForwarder__factory.d.ts deleted file mode 100644 index a594bc55..00000000 --- a/dist/types/factories/contracts/metatx/MintingManagerForwarder__factory.d.ts +++ /dev/null @@ -1,115 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, AddressLike, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../common"; -import type { MintingManagerForwarder, MintingManagerForwarderInterface } from "../../../contracts/metatx/MintingManagerForwarder"; -declare type MintingManagerForwarderConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class MintingManagerForwarder__factory extends ContractFactory { - constructor(...args: MintingManagerForwarderConstructorParams); - getDeployTransaction(mintingManager: AddressLike, overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(mintingManager: AddressLike, overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): MintingManagerForwarder__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b50604051610bdd380380610bdd83398101604081905261002f91610054565b600080546001600160a01b0319166001600160a01b0392909216919091179055610084565b60006020828403121561006657600080fd5b81516001600160a01b038116811461007d57600080fd5b9392505050565b610b4a806100936000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a42474001461009d575b600080fd5b610059610054366004610771565b6100c0565b6040516100669190610860565b60405180910390f35b61008f61007d366004610873565b60009081526001602052604090205490565b604051908152602001610066565b6100b06100ab366004610771565b6101de565b6040519015158152602001610066565b606060005a90506100d28585856101de565b6101365760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e61676572466f727761726465723a205349474e415455604482015269149157d253959053125160b21b60648201526084015b60405180910390fd5b6101d361014660208701876108a8565b6000546001600160a01b031660408801358461016560608b018b6108c3565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061023d92505050565b9150505b9392505050565b60006102356101ec8561097a565b600054604080516020601f88018190048102820181019092528681526001600160a01b039092169190879087908190840183828082843760009201919091525061031e92505050565b949350505050565b606061024885610467565b600080876001600160a01b0316866102628b8a8989610494565b60405161026f9190610a3b565b60006040518083038160008787f1925050503d80600081146102ad576040519150601f19603f3d011682016040523d82523d6000602084013e6102b2565b606091505b5090925090506102c3603f87610a57565b5a116102d1576102d1610a79565b61031182826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506104c4565b9998505050505050505050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015610365573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103899190610a8f565b905060006104378660600151805190602001208688602001516040516020016103d79392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561045d5750855161045d906001600160a01b031682866104fd565b9695505050505050565b60008181526001602081905260409091205461048291610aa8565b60009182526001602052604090912055565b60608285856040516020016104ab93929190610acf565b6040516020818303038152906040529050949350505050565b606083156104d35750816101d7565b8251156104e35782518084602001fd5b8160405162461bcd60e51b815260040161012d9190610860565b600080600061050c858561063f565b9092509050600081600481111561052557610525610b0e565b1480156105435750856001600160a01b0316826001600160a01b0316145b15610553576001925050506101d7565b600080876001600160a01b0316631626ba7e60e01b888860405160240161057b929190610b24565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516105b99190610a3b565b600060405180830381855afa9150503d80600081146105f4576040519150601f19603f3d011682016040523d82523d6000602084013e6105f9565b606091505b509150915081801561060c575080516020145b801561063357508051630b135d3f60e11b906106319083016020908101908401610a8f565b145b98975050505050505050565b60008082516041036106755760208301516040840151606085015160001a61066987828585610684565b9450945050505061067d565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08311156106bb5750600090506003610768565b8460ff16601b141580156106d357508460ff16601c14155b156106e45750600090506004610768565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610738573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b03811661076157600060019250925050610768565b9150600090505b94509492505050565b60008060006040848603121561078657600080fd5b833567ffffffffffffffff8082111561079e57600080fd5b90850190608082880312156107b257600080fd5b909350602085013590808211156107c857600080fd5b818601915086601f8301126107dc57600080fd5b8135818111156107eb57600080fd5b8760208285010111156107fd57600080fd5b6020830194508093505050509250925092565b60005b8381101561082b578181015183820152602001610813565b50506000910152565b6000815180845261084c816020860160208601610810565b601f01601f19169290920160200192915050565b6020815260006101d76020830184610834565b60006020828403121561088557600080fd5b5035919050565b80356001600160a01b03811681146108a357600080fd5b919050565b6000602082840312156108ba57600080fd5b6101d78261088c565b6000808335601e198436030181126108da57600080fd5b83018035915067ffffffffffffffff8211156108f557600080fd5b60200191503681900382131561067d57600080fd5b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff811182821017156109435761094361090a565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156109725761097261090a565b604052919050565b60006080823603121561098c57600080fd5b610994610920565b61099d8361088c565b81526020808401358183015260408401356040830152606084013567ffffffffffffffff808211156109ce57600080fd5b9085019036601f8301126109e157600080fd5b8135818111156109f3576109f361090a565b610a05601f8201601f19168501610949565b91508082523684828501011115610a1b57600080fd5b808484018584013760009082019093019290925250606082015292915050565b60008251610a4d818460208701610810565b9190910192915050565b600082610a7457634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b600060208284031215610aa157600080fd5b5051919050565b80820180821115610ac957634e487b7160e01b600052601160045260246000fd5b92915050565b60008451610ae1818460208901610810565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b600052602160045260246000fd5b828152604060208201526000610235604083018461083456fea164736f6c6343000811000a"; - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "mintingManager"; - readonly type: "address"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "constructor"; - }, { - readonly inputs: readonly [{ - readonly components: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "nonce"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly internalType: "struct IForwarder.ForwardRequest"; - readonly name: "req"; - readonly type: "tuple"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "execute"; - readonly outputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "nonceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly components: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "nonce"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly internalType: "struct IForwarder.ForwardRequest"; - readonly name: "req"; - readonly type: "tuple"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "verify"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): MintingManagerForwarderInterface; - static connect(address: string, runner?: ContractRunner | null): MintingManagerForwarder; -} -export {}; -//# sourceMappingURL=MintingManagerForwarder__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/metatx/MintingManagerForwarder__factory.d.ts.map b/dist/types/factories/contracts/metatx/MintingManagerForwarder__factory.d.ts.map deleted file mode 100644 index e5d93369..00000000 --- a/dist/types/factories/contracts/metatx/MintingManagerForwarder__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"MintingManagerForwarder__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/metatx/MintingManagerForwarder__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,MAAM,EACN,WAAW,EACX,yBAAyB,EACzB,cAAc,EACf,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,KAAK,EACV,uBAAuB,EACvB,gCAAgC,EACjC,MAAM,mDAAmD,CAAC;AAkI3D,aAAK,wCAAwC,GACzC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,gCAAiC,SAAQ,eAAe;gBACvD,GAAG,IAAI,EAAE,wCAAwC;IAQpD,oBAAoB,CAC3B,cAAc,EAAE,WAAW,EAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CACb,cAAc,EAAE,WAAW,EAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAItB,2BAA2B;;IAIjD,OAAO,CACd,MAAM,EAAE,cAAc,GAAG,IAAI,GAC5B,gCAAgC;IAInC,MAAM,CAAC,QAAQ,CAAC,QAAQ,k8LAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,gCAAgC;IAG1D,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,uBAAuB;CAO3B"} \ No newline at end of file diff --git a/dist/types/factories/contracts/metatx/MintingManagerForwarder__factory.js b/dist/types/factories/contracts/metatx/MintingManagerForwarder__factory.js deleted file mode 100644 index 15da5a43..00000000 --- a/dist/types/factories/contracts/metatx/MintingManagerForwarder__factory.js +++ /dev/null @@ -1,158 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.MintingManagerForwarder__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "address", - name: "mintingManager", - type: "address", - }, - ], - stateMutability: "nonpayable", - type: "constructor", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - internalType: "struct IForwarder.ForwardRequest", - name: "req", - type: "tuple", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "execute", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "nonceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - internalType: "struct IForwarder.ForwardRequest", - name: "req", - type: "tuple", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "verify", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -const _bytecode = "0x608060405234801561001057600080fd5b50604051610bdd380380610bdd83398101604081905261002f91610054565b600080546001600160a01b0319166001600160a01b0392909216919091179055610084565b60006020828403121561006657600080fd5b81516001600160a01b038116811461007d57600080fd5b9392505050565b610b4a806100936000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a42474001461009d575b600080fd5b610059610054366004610771565b6100c0565b6040516100669190610860565b60405180910390f35b61008f61007d366004610873565b60009081526001602052604090205490565b604051908152602001610066565b6100b06100ab366004610771565b6101de565b6040519015158152602001610066565b606060005a90506100d28585856101de565b6101365760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e61676572466f727761726465723a205349474e415455604482015269149157d253959053125160b21b60648201526084015b60405180910390fd5b6101d361014660208701876108a8565b6000546001600160a01b031660408801358461016560608b018b6108c3565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061023d92505050565b9150505b9392505050565b60006102356101ec8561097a565b600054604080516020601f88018190048102820181019092528681526001600160a01b039092169190879087908190840183828082843760009201919091525061031e92505050565b949350505050565b606061024885610467565b600080876001600160a01b0316866102628b8a8989610494565b60405161026f9190610a3b565b60006040518083038160008787f1925050503d80600081146102ad576040519150601f19603f3d011682016040523d82523d6000602084013e6102b2565b606091505b5090925090506102c3603f87610a57565b5a116102d1576102d1610a79565b61031182826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506104c4565b9998505050505050505050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015610365573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103899190610a8f565b905060006104378660600151805190602001208688602001516040516020016103d79392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561045d5750855161045d906001600160a01b031682866104fd565b9695505050505050565b60008181526001602081905260409091205461048291610aa8565b60009182526001602052604090912055565b60608285856040516020016104ab93929190610acf565b6040516020818303038152906040529050949350505050565b606083156104d35750816101d7565b8251156104e35782518084602001fd5b8160405162461bcd60e51b815260040161012d9190610860565b600080600061050c858561063f565b9092509050600081600481111561052557610525610b0e565b1480156105435750856001600160a01b0316826001600160a01b0316145b15610553576001925050506101d7565b600080876001600160a01b0316631626ba7e60e01b888860405160240161057b929190610b24565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516105b99190610a3b565b600060405180830381855afa9150503d80600081146105f4576040519150601f19603f3d011682016040523d82523d6000602084013e6105f9565b606091505b509150915081801561060c575080516020145b801561063357508051630b135d3f60e11b906106319083016020908101908401610a8f565b145b98975050505050505050565b60008082516041036106755760208301516040840151606085015160001a61066987828585610684565b9450945050505061067d565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08311156106bb5750600090506003610768565b8460ff16601b141580156106d357508460ff16601c14155b156106e45750600090506004610768565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610738573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b03811661076157600060019250925050610768565b9150600090505b94509492505050565b60008060006040848603121561078657600080fd5b833567ffffffffffffffff8082111561079e57600080fd5b90850190608082880312156107b257600080fd5b909350602085013590808211156107c857600080fd5b818601915086601f8301126107dc57600080fd5b8135818111156107eb57600080fd5b8760208285010111156107fd57600080fd5b6020830194508093505050509250925092565b60005b8381101561082b578181015183820152602001610813565b50506000910152565b6000815180845261084c816020860160208601610810565b601f01601f19169290920160200192915050565b6020815260006101d76020830184610834565b60006020828403121561088557600080fd5b5035919050565b80356001600160a01b03811681146108a357600080fd5b919050565b6000602082840312156108ba57600080fd5b6101d78261088c565b6000808335601e198436030181126108da57600080fd5b83018035915067ffffffffffffffff8211156108f557600080fd5b60200191503681900382131561067d57600080fd5b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff811182821017156109435761094361090a565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156109725761097261090a565b604052919050565b60006080823603121561098c57600080fd5b610994610920565b61099d8361088c565b81526020808401358183015260408401356040830152606084013567ffffffffffffffff808211156109ce57600080fd5b9085019036601f8301126109e157600080fd5b8135818111156109f3576109f361090a565b610a05601f8201601f19168501610949565b91508082523684828501011115610a1b57600080fd5b808484018584013760009082019093019290925250606082015292915050565b60008251610a4d818460208701610810565b9190910192915050565b600082610a7457634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b600060208284031215610aa157600080fd5b5051919050565b80820180821115610ac957634e487b7160e01b600052601160045260246000fd5b92915050565b60008451610ae1818460208901610810565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b600052602160045260246000fd5b828152604060208201526000610235604083018461083456fea164736f6c6343000811000a"; -const isSuperArgs = (xs) => xs.length > 1; -class MintingManagerForwarder__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(mintingManager, overrides) { - return super.getDeployTransaction(mintingManager, overrides || {}); - } - deploy(mintingManager, overrides) { - return super.deploy(mintingManager, overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.MintingManagerForwarder__factory = MintingManagerForwarder__factory; -MintingManagerForwarder__factory.bytecode = _bytecode; -MintingManagerForwarder__factory.abi = _abi; diff --git a/dist/types/factories/contracts/metatx/ResolverForwarder__factory.d.ts b/dist/types/factories/contracts/metatx/ResolverForwarder__factory.d.ts deleted file mode 100644 index 9703e416..00000000 --- a/dist/types/factories/contracts/metatx/ResolverForwarder__factory.d.ts +++ /dev/null @@ -1,119 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, AddressLike, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../common"; -import type { ResolverForwarder, ResolverForwarderInterface } from "../../../contracts/metatx/ResolverForwarder"; -declare type ResolverForwarderConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class ResolverForwarder__factory extends ContractFactory { - constructor(...args: ResolverForwarderConstructorParams); - getDeployTransaction(cnsRegistry: AddressLike, defaultCnsResolver: AddressLike, overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(cnsRegistry: AddressLike, defaultCnsResolver: AddressLike, overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): ResolverForwarder__factory; - static readonly bytecode = "0x60806040523480156200001157600080fd5b506040516200153938038062001539833981016040819052620000349162000286565b600180546001600160a01b038481166001600160a01b0319928316179092556002805492841692909116919091179055604080518082018252600e81526d72657365742875696e743235362960901b602080830191825283518085018552601781527f7265736574466f722875696e743235362c62797465732900000000000000000090820152915190206001600160e01b03191660009081529081905220805463ffffffff191663b87abc11179055620001776040518060400160405280601a81526020017f73657428737472696e672c737472696e672c75696e7432353629000000000000815250604051806060016040528060238152602001620014ce6023913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b620001ee604051806060016040528060228152602001620014f1602291396040518060600160405280602b815260200162001474602b913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b6200026560405180606001604052806026815260200162001513602691396040518060600160405280602f81526020016200149f602f913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b5050620002c5565b6001600160a01b03811681146200028357600080fd5b50565b600080604083850312156200029a57600080fd5b8251620002a7816200026d565b6020840151909250620002ba816200026d565b809150509250929050565b61119f80620002d56000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a424740014610090575b600080fd5b610059610054366004610ba9565b6100b3565b6040516100669190610c98565b60405180910390f35b61008261007d366004610cab565b6101ce565b604051908152602001610066565b6100a361009e366004610ba9565b610332565b6040519015158152602001610066565b606060005a6001546040805163b3f9e4cb60e01b81529088013560048201529192506000916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561010a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061012e9190610cd9565b90506101c26101406020880188610cf6565b8260408901358561015460608c018c610d13565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8f018190048102820181019092528d815292508d91508c90819084018382808284376000920191909152506103fb92505050565b925050505b9392505050565b60025460015460405163b3f9e4cb60e01b8152600481018490526000926001600160a01b0390811692169063b3f9e4cb90602401602060405180830381865afa92505050801561023b575060408051601f3d908101601f1916820190925261023891810190610cd9565b60015b156102435790505b6001600160a01b0381163b156102c557604051636ccbae5f60e01b81526004810184905281906001600160a01b03821690636ccbae5f90602401602060405180830381865afa9250505080156102b6575060408051601f3d908101601f191682019092526102b391810190610d5a565b60015b156102c357949350505050565b505b600254604051636ccbae5f60e01b8152600481018590526001600160a01b0390911690636ccbae5f90602401602060405180830381865afa15801561030e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101c79190610d5a565b6001546040805163b3f9e4cb60e01b815290850135600482015260009182916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa158015610383573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103a79190610cd9565b90506103f26103b586610e0b565b8286868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506104d392505050565b95945050505050565b6060600080876001600160a01b0316866104178b8a898961051f565b6040516104249190610eb5565b60006040518083038160008787f1925050503d8060008114610462576040519150601f19603f3d011682016040523d82523d6000602084013e610467565b606091505b509092509050610478603f87610ed1565b5a1161048657610486610ef3565b6104c682826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506105d4565b9998505050505050505050565b60006104e084848461060d565b8015610514575060608401516020908101516001600160e01b031990811660009081529182905260409091205460e01b1615155b949350505050565b50565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036105b15760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526105c982828661074c565b979650505050505050565b606083156105e35750816101c7565b8251156105f35782518084602001fd5b8160405162461bcd60e51b81526004016105a89190610c98565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015610654573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106789190610d5a565b905060006107268660600151805190602001208688602001516040516020016106c69392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156101c2575085516101c2906001600160a01b03168286610935565b60606001600160e01b0319841663b87abc1160e01b036107cd5760008380602001905181019061077c9190610d5a565b9050848184604051602401610792929190610f09565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915291506101c79050565b6001600160e01b0319841663c597407360e01b03610859576000806000858060200190518101906107fe9190610f67565b925092509250868383838860405160240161081c9493929190610fd4565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293506101c792505050565b6001600160e01b031984166311ed383160e31b036108a85760008060008580602001905181019061088a91906110a6565b925092509250868383838860405160240161081c9493929190611157565b6001600160e01b031984166328d55f9b60e21b036101c7576000806000858060200190518101906108d991906110a6565b92509250925086838383886040516024016108f79493929190611157565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293505050509392505050565b60008060006109448585610a77565b9092509050600081600481111561095d5761095d61117c565b14801561097b5750856001600160a01b0316826001600160a01b0316145b1561098b576001925050506101c7565b600080876001600160a01b0316631626ba7e60e01b88886040516024016109b3929190610f09565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516109f19190610eb5565b600060405180830381855afa9150503d8060008114610a2c576040519150601f19603f3d011682016040523d82523d6000602084013e610a31565b606091505b5091509150818015610a44575080516020145b8015610a6b57508051630b135d3f60e11b90610a699083016020908101908401610d5a565b145b98975050505050505050565b6000808251604103610aad5760208301516040840151606085015160001a610aa187828585610abc565b94509450505050610ab5565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610af35750600090506003610ba0565b8460ff16601b14158015610b0b57508460ff16601c14155b15610b1c5750600090506004610ba0565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610b70573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610b9957600060019250925050610ba0565b9150600090505b94509492505050565b600080600060408486031215610bbe57600080fd5b833567ffffffffffffffff80821115610bd657600080fd5b9085019060808288031215610bea57600080fd5b90935060208501359080821115610c0057600080fd5b818601915086601f830112610c1457600080fd5b813581811115610c2357600080fd5b876020828501011115610c3557600080fd5b6020830194508093505050509250925092565b60005b83811015610c63578181015183820152602001610c4b565b50506000910152565b60008151808452610c84816020860160208601610c48565b601f01601f19169290920160200192915050565b6020815260006101c76020830184610c6c565b600060208284031215610cbd57600080fd5b5035919050565b6001600160a01b038116811461051c57600080fd5b600060208284031215610ceb57600080fd5b81516101c781610cc4565b600060208284031215610d0857600080fd5b81356101c781610cc4565b6000808335601e19843603018112610d2a57600080fd5b83018035915067ffffffffffffffff821115610d4557600080fd5b602001915036819003821315610ab557600080fd5b600060208284031215610d6c57600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610dac57610dac610d73565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ddb57610ddb610d73565b604052919050565b600067ffffffffffffffff821115610dfd57610dfd610d73565b50601f01601f191660200190565b600060808236031215610e1d57600080fd5b610e25610d89565b8235610e3081610cc4565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610e6057600080fd5b840136601f820112610e7157600080fd5b8035610e84610e7f82610de3565b610db2565b8181523684838501011115610e9857600080fd5b818484018583013760009181019093015250606082015292915050565b60008251610ec7818460208701610c48565b9190910192915050565b600082610eee57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b8281526040602082015260006105146040830184610c6c565b600082601f830112610f3357600080fd5b8151610f41610e7f82610de3565b818152846020838601011115610f5657600080fd5b610514826020830160208701610c48565b600080600060608486031215610f7c57600080fd5b835167ffffffffffffffff80821115610f9457600080fd5b610fa087838801610f22565b94506020860151915080821115610fb657600080fd5b50610fc386828701610f22565b925050604084015190509250925092565b608081526000610fe76080830187610c6c565b8281036020840152610ff98187610c6c565b905084604084015282810360608401526105c98185610c6c565b600082601f83011261102457600080fd5b8151602067ffffffffffffffff8083111561104157611041610d73565b8260051b611050838201610db2565b938452858101830193838101908886111561106a57600080fd5b84880192505b85831015610a6b578251848111156110885760008081fd5b6110968a87838c0101610f22565b8352509184019190840190611070565b6000806000606084860312156110bb57600080fd5b835167ffffffffffffffff808211156110d357600080fd5b6110df87838801611013565b945060208601519150808211156110f557600080fd5b50610fc386828701611013565b600081518084526020808501808196508360051b8101915082860160005b8581101561114a578284038952611138848351610c6c565b98850198935090840190600101611120565b5091979650505050505050565b60808152600061116a6080830187611102565b8281036020840152610ff98187611102565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a7365744d616e79466f7228737472696e675b5d2c737472696e675b5d2c75696e743235362c6279746573297265636f6e666967757265466f7228737472696e675b5d2c737472696e675b5d2c75696e743235362c627974657329736574466f7228737472696e672c737472696e672c75696e743235362c6279746573297365744d616e7928737472696e675b5d2c737472696e675b5d2c75696e74323536297265636f6e66696775726528737472696e675b5d2c737472696e675b5d2c75696e7432353629"; - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "contract ICNSRegistry"; - readonly name: "cnsRegistry"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "defaultCnsResolver"; - readonly type: "address"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "constructor"; - }, { - readonly inputs: readonly [{ - readonly components: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "nonce"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly internalType: "struct IForwarder.ForwardRequest"; - readonly name: "req"; - readonly type: "tuple"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "execute"; - readonly outputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "nonceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly components: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "nonce"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly internalType: "struct IForwarder.ForwardRequest"; - readonly name: "req"; - readonly type: "tuple"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "verify"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): ResolverForwarderInterface; - static connect(address: string, runner?: ContractRunner | null): ResolverForwarder; -} -export {}; -//# sourceMappingURL=ResolverForwarder__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/metatx/ResolverForwarder__factory.d.ts.map b/dist/types/factories/contracts/metatx/ResolverForwarder__factory.d.ts.map deleted file mode 100644 index 476a9b4d..00000000 --- a/dist/types/factories/contracts/metatx/ResolverForwarder__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ResolverForwarder__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/metatx/ResolverForwarder__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,MAAM,EACN,WAAW,EACX,yBAAyB,EACzB,cAAc,EACf,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,KAAK,EACV,iBAAiB,EACjB,0BAA0B,EAC3B,MAAM,6CAA6C,CAAC;AAuIrD,aAAK,kCAAkC,GACnC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,0BAA2B,SAAQ,eAAe;gBACjD,GAAG,IAAI,EAAE,kCAAkC;IAQ9C,oBAAoB,CAC3B,WAAW,EAAE,WAAW,EACxB,kBAAkB,EAAE,WAAW,EAC/B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAO5B,MAAM,CACb,WAAW,EAAE,WAAW,EACxB,kBAAkB,EAAE,WAAW,EAC/B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAQtB,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,0BAA0B;IAI3E,MAAM,CAAC,QAAQ,CAAC,QAAQ,0nVAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,0BAA0B;IAGpD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,iBAAiB;CAGrB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/metatx/ResolverForwarder__factory.js b/dist/types/factories/contracts/metatx/ResolverForwarder__factory.js deleted file mode 100644 index 737c90da..00000000 --- a/dist/types/factories/contracts/metatx/ResolverForwarder__factory.js +++ /dev/null @@ -1,163 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ResolverForwarder__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "contract ICNSRegistry", - name: "cnsRegistry", - type: "address", - }, - { - internalType: "address", - name: "defaultCnsResolver", - type: "address", - }, - ], - stateMutability: "nonpayable", - type: "constructor", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - internalType: "struct IForwarder.ForwardRequest", - name: "req", - type: "tuple", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "execute", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "nonceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - internalType: "struct IForwarder.ForwardRequest", - name: "req", - type: "tuple", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "verify", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -const _bytecode = "0x60806040523480156200001157600080fd5b506040516200153938038062001539833981016040819052620000349162000286565b600180546001600160a01b038481166001600160a01b0319928316179092556002805492841692909116919091179055604080518082018252600e81526d72657365742875696e743235362960901b602080830191825283518085018552601781527f7265736574466f722875696e743235362c62797465732900000000000000000090820152915190206001600160e01b03191660009081529081905220805463ffffffff191663b87abc11179055620001776040518060400160405280601a81526020017f73657428737472696e672c737472696e672c75696e7432353629000000000000815250604051806060016040528060238152602001620014ce6023913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b620001ee604051806060016040528060228152602001620014f1602291396040518060600160405280602b815260200162001474602b913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b6200026560405180606001604052806026815260200162001513602691396040518060600160405280602f81526020016200149f602f913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b5050620002c5565b6001600160a01b03811681146200028357600080fd5b50565b600080604083850312156200029a57600080fd5b8251620002a7816200026d565b6020840151909250620002ba816200026d565b809150509250929050565b61119f80620002d56000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80631bf7e13e146100465780636ccbae5f1461006f578063a424740014610090575b600080fd5b610059610054366004610ba9565b6100b3565b6040516100669190610c98565b60405180910390f35b61008261007d366004610cab565b6101ce565b604051908152602001610066565b6100a361009e366004610ba9565b610332565b6040519015158152602001610066565b606060005a6001546040805163b3f9e4cb60e01b81529088013560048201529192506000916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa15801561010a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061012e9190610cd9565b90506101c26101406020880188610cf6565b8260408901358561015460608c018c610d13565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8f018190048102820181019092528d815292508d91508c90819084018382808284376000920191909152506103fb92505050565b925050505b9392505050565b60025460015460405163b3f9e4cb60e01b8152600481018490526000926001600160a01b0390811692169063b3f9e4cb90602401602060405180830381865afa92505050801561023b575060408051601f3d908101601f1916820190925261023891810190610cd9565b60015b156102435790505b6001600160a01b0381163b156102c557604051636ccbae5f60e01b81526004810184905281906001600160a01b03821690636ccbae5f90602401602060405180830381865afa9250505080156102b6575060408051601f3d908101601f191682019092526102b391810190610d5a565b60015b156102c357949350505050565b505b600254604051636ccbae5f60e01b8152600481018590526001600160a01b0390911690636ccbae5f90602401602060405180830381865afa15801561030e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101c79190610d5a565b6001546040805163b3f9e4cb60e01b815290850135600482015260009182916001600160a01b039091169063b3f9e4cb90602401602060405180830381865afa158015610383573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103a79190610cd9565b90506103f26103b586610e0b565b8286868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506104d392505050565b95945050505050565b6060600080876001600160a01b0316866104178b8a898961051f565b6040516104249190610eb5565b60006040518083038160008787f1925050503d8060008114610462576040519150601f19603f3d011682016040523d82523d6000602084013e610467565b606091505b509092509050610478603f87610ed1565b5a1161048657610486610ef3565b6104c682826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506105d4565b9998505050505050505050565b60006104e084848461060d565b8015610514575060608401516020908101516001600160e01b031990811660009081529182905260409091205460e01b1615155b949350505050565b50565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036105b15760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b60648201526084015b60405180910390fd5b835160031901600485019081526105c982828661074c565b979650505050505050565b606083156105e35750816101c7565b8251156105f35782518084602001fd5b8160405162461bcd60e51b81526004016105a89190610c98565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015610654573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106789190610d5a565b905060006107268660600151805190602001208688602001516040516020016106c69392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b90508186602001511480156101c2575085516101c2906001600160a01b03168286610935565b60606001600160e01b0319841663b87abc1160e01b036107cd5760008380602001905181019061077c9190610d5a565b9050848184604051602401610792929190610f09565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915291506101c79050565b6001600160e01b0319841663c597407360e01b03610859576000806000858060200190518101906107fe9190610f67565b925092509250868383838860405160240161081c9493929190610fd4565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293506101c792505050565b6001600160e01b031984166311ed383160e31b036108a85760008060008580602001905181019061088a91906110a6565b925092509250868383838860405160240161081c9493929190611157565b6001600160e01b031984166328d55f9b60e21b036101c7576000806000858060200190518101906108d991906110a6565b92509250925086838383886040516024016108f79493929190611157565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915293505050509392505050565b60008060006109448585610a77565b9092509050600081600481111561095d5761095d61117c565b14801561097b5750856001600160a01b0316826001600160a01b0316145b1561098b576001925050506101c7565b600080876001600160a01b0316631626ba7e60e01b88886040516024016109b3929190610f09565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516109f19190610eb5565b600060405180830381855afa9150503d8060008114610a2c576040519150601f19603f3d011682016040523d82523d6000602084013e610a31565b606091505b5091509150818015610a44575080516020145b8015610a6b57508051630b135d3f60e11b90610a699083016020908101908401610d5a565b145b98975050505050505050565b6000808251604103610aad5760208301516040840151606085015160001a610aa187828585610abc565b94509450505050610ab5565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115610af35750600090506003610ba0565b8460ff16601b14158015610b0b57508460ff16601c14155b15610b1c5750600090506004610ba0565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610b70573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610b9957600060019250925050610ba0565b9150600090505b94509492505050565b600080600060408486031215610bbe57600080fd5b833567ffffffffffffffff80821115610bd657600080fd5b9085019060808288031215610bea57600080fd5b90935060208501359080821115610c0057600080fd5b818601915086601f830112610c1457600080fd5b813581811115610c2357600080fd5b876020828501011115610c3557600080fd5b6020830194508093505050509250925092565b60005b83811015610c63578181015183820152602001610c4b565b50506000910152565b60008151808452610c84816020860160208601610c48565b601f01601f19169290920160200192915050565b6020815260006101c76020830184610c6c565b600060208284031215610cbd57600080fd5b5035919050565b6001600160a01b038116811461051c57600080fd5b600060208284031215610ceb57600080fd5b81516101c781610cc4565b600060208284031215610d0857600080fd5b81356101c781610cc4565b6000808335601e19843603018112610d2a57600080fd5b83018035915067ffffffffffffffff821115610d4557600080fd5b602001915036819003821315610ab557600080fd5b600060208284031215610d6c57600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610dac57610dac610d73565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ddb57610ddb610d73565b604052919050565b600067ffffffffffffffff821115610dfd57610dfd610d73565b50601f01601f191660200190565b600060808236031215610e1d57600080fd5b610e25610d89565b8235610e3081610cc4565b81526020838101358183015260408085013590830152606084013567ffffffffffffffff811115610e6057600080fd5b840136601f820112610e7157600080fd5b8035610e84610e7f82610de3565b610db2565b8181523684838501011115610e9857600080fd5b818484018583013760009181019093015250606082015292915050565b60008251610ec7818460208701610c48565b9190910192915050565b600082610eee57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b8281526040602082015260006105146040830184610c6c565b600082601f830112610f3357600080fd5b8151610f41610e7f82610de3565b818152846020838601011115610f5657600080fd5b610514826020830160208701610c48565b600080600060608486031215610f7c57600080fd5b835167ffffffffffffffff80821115610f9457600080fd5b610fa087838801610f22565b94506020860151915080821115610fb657600080fd5b50610fc386828701610f22565b925050604084015190509250925092565b608081526000610fe76080830187610c6c565b8281036020840152610ff98187610c6c565b905084604084015282810360608401526105c98185610c6c565b600082601f83011261102457600080fd5b8151602067ffffffffffffffff8083111561104157611041610d73565b8260051b611050838201610db2565b938452858101830193838101908886111561106a57600080fd5b84880192505b85831015610a6b578251848111156110885760008081fd5b6110968a87838c0101610f22565b8352509184019190840190611070565b6000806000606084860312156110bb57600080fd5b835167ffffffffffffffff808211156110d357600080fd5b6110df87838801611013565b945060208601519150808211156110f557600080fd5b50610fc386828701611013565b600081518084526020808501808196508360051b8101915082860160005b8581101561114a578284038952611138848351610c6c565b98850198935090840190600101611120565b5091979650505050505050565b60808152600061116a6080830187611102565b8281036020840152610ff98187611102565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a7365744d616e79466f7228737472696e675b5d2c737472696e675b5d2c75696e743235362c6279746573297265636f6e666967757265466f7228737472696e675b5d2c737472696e675b5d2c75696e743235362c627974657329736574466f7228737472696e672c737472696e672c75696e743235362c6279746573297365744d616e7928737472696e675b5d2c737472696e675b5d2c75696e74323536297265636f6e66696775726528737472696e675b5d2c737472696e675b5d2c75696e7432353629"; -const isSuperArgs = (xs) => xs.length > 1; -class ResolverForwarder__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(cnsRegistry, defaultCnsResolver, overrides) { - return super.getDeployTransaction(cnsRegistry, defaultCnsResolver, overrides || {}); - } - deploy(cnsRegistry, defaultCnsResolver, overrides) { - return super.deploy(cnsRegistry, defaultCnsResolver, overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.ResolverForwarder__factory = ResolverForwarder__factory; -ResolverForwarder__factory.bytecode = _bytecode; -ResolverForwarder__factory.abi = _abi; diff --git a/dist/types/factories/contracts/metatx/UNSRegistryForwarder__factory.d.ts b/dist/types/factories/contracts/metatx/UNSRegistryForwarder__factory.d.ts deleted file mode 100644 index fb8a6a8c..00000000 --- a/dist/types/factories/contracts/metatx/UNSRegistryForwarder__factory.d.ts +++ /dev/null @@ -1,102 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { UNSRegistryForwarder, UNSRegistryForwarderInterface } from "../../../contracts/metatx/UNSRegistryForwarder"; -export declare class UNSRegistryForwarder__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "uint8"; - readonly name: "version"; - readonly type: "uint8"; - }]; - readonly name: "Initialized"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly components: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "nonce"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly internalType: "struct IForwarder.ForwardRequest"; - readonly name: "req"; - readonly type: "tuple"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "execute"; - readonly outputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "nonceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly components: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "nonce"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly internalType: "struct IForwarder.ForwardRequest"; - readonly name: "req"; - readonly type: "tuple"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "verify"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): UNSRegistryForwarderInterface; - static connect(address: string, runner?: ContractRunner | null): UNSRegistryForwarder; -} -//# sourceMappingURL=UNSRegistryForwarder__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/metatx/UNSRegistryForwarder__factory.d.ts.map b/dist/types/factories/contracts/metatx/UNSRegistryForwarder__factory.d.ts.map deleted file mode 100644 index f685a623..00000000 --- a/dist/types/factories/contracts/metatx/UNSRegistryForwarder__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"UNSRegistryForwarder__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/metatx/UNSRegistryForwarder__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,oBAAoB,EACpB,6BAA6B,EAC9B,MAAM,gDAAgD,CAAC;AAiIxD,qBAAa,6BAA6B;IACxC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,6BAA6B;IAGvD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,oBAAoB;CAOxB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/metatx/UNSRegistryForwarder__factory.js b/dist/types/factories/contracts/metatx/UNSRegistryForwarder__factory.js deleted file mode 100644 index 10e0a621..00000000 --- a/dist/types/factories/contracts/metatx/UNSRegistryForwarder__factory.js +++ /dev/null @@ -1,140 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.UNSRegistryForwarder__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint8", - name: "version", - type: "uint8", - }, - ], - name: "Initialized", - type: "event", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - internalType: "struct IForwarder.ForwardRequest", - name: "req", - type: "tuple", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "execute", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "nonceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - internalType: "struct IForwarder.ForwardRequest", - name: "req", - type: "tuple", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "verify", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class UNSRegistryForwarder__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.UNSRegistryForwarder__factory = UNSRegistryForwarder__factory; -UNSRegistryForwarder__factory.abi = _abi; diff --git a/dist/types/factories/contracts/metatx/index.d.ts b/dist/types/factories/contracts/metatx/index.d.ts deleted file mode 100644 index 8bae4771..00000000 --- a/dist/types/factories/contracts/metatx/index.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -export { BaseForwarder__factory } from "./BaseForwarder__factory"; -export { BaseRoutingForwarder__factory } from "./BaseRoutingForwarder__factory"; -export { CNSRegistryForwarder__factory } from "./CNSRegistryForwarder__factory"; -export { ERC2771Context__factory } from "./ERC2771Context__factory"; -export { ERC2771RegistryContext__factory } from "./ERC2771RegistryContext__factory"; -export { Forwarder__factory } from "./Forwarder__factory"; -export { IForwarder__factory } from "./IForwarder__factory"; -export { MintingManagerForwarder__factory } from "./MintingManagerForwarder__factory"; -export { ResolverForwarder__factory } from "./ResolverForwarder__factory"; -export { UNSRegistryForwarder__factory } from "./UNSRegistryForwarder__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/metatx/index.d.ts.map b/dist/types/factories/contracts/metatx/index.d.ts.map deleted file mode 100644 index 8c302c16..00000000 --- a/dist/types/factories/contracts/metatx/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/metatx/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AAChF,OAAO,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AAChF,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,+BAA+B,EAAE,MAAM,mCAAmC,CAAC;AACpF,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,gCAAgC,EAAE,MAAM,oCAAoC,CAAC;AACtF,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/contracts/metatx/index.js b/dist/types/factories/contracts/metatx/index.js deleted file mode 100644 index 4cedd7a3..00000000 --- a/dist/types/factories/contracts/metatx/index.js +++ /dev/null @@ -1,23 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.UNSRegistryForwarder__factory = exports.ResolverForwarder__factory = exports.MintingManagerForwarder__factory = exports.IForwarder__factory = exports.Forwarder__factory = exports.ERC2771RegistryContext__factory = exports.ERC2771Context__factory = exports.CNSRegistryForwarder__factory = exports.BaseRoutingForwarder__factory = exports.BaseForwarder__factory = void 0; -var BaseForwarder__factory_1 = require("./BaseForwarder__factory"); -Object.defineProperty(exports, "BaseForwarder__factory", { enumerable: true, get: function () { return BaseForwarder__factory_1.BaseForwarder__factory; } }); -var BaseRoutingForwarder__factory_1 = require("./BaseRoutingForwarder__factory"); -Object.defineProperty(exports, "BaseRoutingForwarder__factory", { enumerable: true, get: function () { return BaseRoutingForwarder__factory_1.BaseRoutingForwarder__factory; } }); -var CNSRegistryForwarder__factory_1 = require("./CNSRegistryForwarder__factory"); -Object.defineProperty(exports, "CNSRegistryForwarder__factory", { enumerable: true, get: function () { return CNSRegistryForwarder__factory_1.CNSRegistryForwarder__factory; } }); -var ERC2771Context__factory_1 = require("./ERC2771Context__factory"); -Object.defineProperty(exports, "ERC2771Context__factory", { enumerable: true, get: function () { return ERC2771Context__factory_1.ERC2771Context__factory; } }); -var ERC2771RegistryContext__factory_1 = require("./ERC2771RegistryContext__factory"); -Object.defineProperty(exports, "ERC2771RegistryContext__factory", { enumerable: true, get: function () { return ERC2771RegistryContext__factory_1.ERC2771RegistryContext__factory; } }); -var Forwarder__factory_1 = require("./Forwarder__factory"); -Object.defineProperty(exports, "Forwarder__factory", { enumerable: true, get: function () { return Forwarder__factory_1.Forwarder__factory; } }); -var IForwarder__factory_1 = require("./IForwarder__factory"); -Object.defineProperty(exports, "IForwarder__factory", { enumerable: true, get: function () { return IForwarder__factory_1.IForwarder__factory; } }); -var MintingManagerForwarder__factory_1 = require("./MintingManagerForwarder__factory"); -Object.defineProperty(exports, "MintingManagerForwarder__factory", { enumerable: true, get: function () { return MintingManagerForwarder__factory_1.MintingManagerForwarder__factory; } }); -var ResolverForwarder__factory_1 = require("./ResolverForwarder__factory"); -Object.defineProperty(exports, "ResolverForwarder__factory", { enumerable: true, get: function () { return ResolverForwarder__factory_1.ResolverForwarder__factory; } }); -var UNSRegistryForwarder__factory_1 = require("./UNSRegistryForwarder__factory"); -Object.defineProperty(exports, "UNSRegistryForwarder__factory", { enumerable: true, get: function () { return UNSRegistryForwarder__factory_1.UNSRegistryForwarder__factory; } }); diff --git a/dist/types/factories/contracts/mocks/BaseForwarderMock__factory.d.ts b/dist/types/factories/contracts/mocks/BaseForwarderMock__factory.d.ts deleted file mode 100644 index 68463695..00000000 --- a/dist/types/factories/contracts/mocks/BaseForwarderMock__factory.d.ts +++ /dev/null @@ -1,139 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../common"; -import type { BaseForwarderMock, BaseForwarderMockInterface } from "../../../contracts/mocks/BaseForwarderMock"; -declare type BaseForwarderMockConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class BaseForwarderMock__factory extends ContractFactory { - constructor(...args: BaseForwarderMockConstructorParams); - getDeployTransaction(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): BaseForwarderMock__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b50610c30806100206000396000f3fe608060405234801561001057600080fd5b506004361061007d5760003560e01c80636ccbae5f1161005b5780636ccbae5f146100bd578063716ac80f146100eb578063a4247400146100f3578063a567fb471461011657600080fd5b80631bf7e13e146100825780634167168d146100ab5780635b2dd100146100b5575b600080fd5b610095610090366004610857565b610142565b6040516100a29190610946565b60405180910390f35b6100b3600080fd5b005b6100b361024e565b6100dd6100cb366004610959565b60009081526020819052604090205490565b6040519081526020016100a2565b6100b361027f565b610106610101366004610857565b6102b6565b60405190151581526020016100a2565b61010661012436600461098e565b6001600160a01b031660009081526001602052604090205460ff1690565b606060005a90506101548585856102b6565b6101b15760405162461bcd60e51b8152602060048201526024808201527f42617365466f727761726465724d6f636b3a205349474e41545552455f494e566044820152631053125160e21b60648201526084015b60405180910390fd5b6102436101c1602087018761098e565b306040880135846101d560608b018b6109a9565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061030992505050565b9150505b9392505050565b60405162461bcd60e51b815260206004820152600660248201526541414141414160d01b60448201526064016101a8565b600180600061028c6103ea565b6001600160a01b031681526020810191909152604001600020805460ff1916911515919091179055565b60006103016102c485610a60565b3085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061040592505050565b949350505050565b60606103148561054e565b600080876001600160a01b03168661032e8b8a898961057a565b60405161033b9190610b21565b60006040518083038160008787f1925050503d8060008114610379576040519150601f19603f3d011682016040523d82523d6000602084013e61037e565b606091505b50909250905061038f603f87610b3d565b5a1161039d5761039d610b5f565b6103dd82826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506105aa565b9998505050505050505050565b6000303303610400575060331936013560601c90565b503390565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561044c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104709190610b75565b9050600061051e8660600151805190602001208688602001516040516020016104be9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561054457508551610544906001600160a01b031682866105e3565b9695505050505050565b600081815260208190526040902054610568906001610b8e565b60009182526020829052604090912055565b606082858560405160200161059193929190610bb5565b6040516020818303038152906040529050949350505050565b606083156105b9575081610247565b8251156105c95782518084602001fd5b8160405162461bcd60e51b81526004016101a89190610946565b60008060006105f28585610725565b9092509050600081600481111561060b5761060b610bf4565b1480156106295750856001600160a01b0316826001600160a01b0316145b1561063957600192505050610247565b600080876001600160a01b0316631626ba7e60e01b8888604051602401610661929190610c0a565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161069f9190610b21565b600060405180830381855afa9150503d80600081146106da576040519150601f19603f3d011682016040523d82523d6000602084013e6106df565b606091505b50915091508180156106f2575080516020145b801561071957508051630b135d3f60e11b906107179083016020908101908401610b75565b145b98975050505050505050565b600080825160410361075b5760208301516040840151606085015160001a61074f8782858561076a565b94509450505050610763565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08311156107a1575060009050600361084e565b8460ff16601b141580156107b957508460ff16601c14155b156107ca575060009050600461084e565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa15801561081e573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166108475760006001925092505061084e565b9150600090505b94509492505050565b60008060006040848603121561086c57600080fd5b833567ffffffffffffffff8082111561088457600080fd5b908501906080828803121561089857600080fd5b909350602085013590808211156108ae57600080fd5b818601915086601f8301126108c257600080fd5b8135818111156108d157600080fd5b8760208285010111156108e357600080fd5b6020830194508093505050509250925092565b60005b838110156109115781810151838201526020016108f9565b50506000910152565b600081518084526109328160208601602086016108f6565b601f01601f19169290920160200192915050565b602081526000610247602083018461091a565b60006020828403121561096b57600080fd5b5035919050565b80356001600160a01b038116811461098957600080fd5b919050565b6000602082840312156109a057600080fd5b61024782610972565b6000808335601e198436030181126109c057600080fd5b83018035915067ffffffffffffffff8211156109db57600080fd5b60200191503681900382131561076357600080fd5b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610a2957610a296109f0565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610a5857610a586109f0565b604052919050565b600060808236031215610a7257600080fd5b610a7a610a06565b610a8383610972565b81526020808401358183015260408401356040830152606084013567ffffffffffffffff80821115610ab457600080fd5b9085019036601f830112610ac757600080fd5b813581811115610ad957610ad96109f0565b610aeb601f8201601f19168501610a2f565b91508082523684828501011115610b0157600080fd5b808484018584013760009082019093019290925250606082015292915050565b60008251610b338184602087016108f6565b9190910192915050565b600082610b5a57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b600060208284031215610b8757600080fd5b5051919050565b80820180821115610baf57634e487b7160e01b600052601160045260246000fd5b92915050565b60008451610bc78184602089016108f6565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b600052602160045260246000fd5b828152604060208201526000610301604083018461091a56fea164736f6c6343000811000a"; - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly components: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "nonce"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly internalType: "struct IForwarder.ForwardRequest"; - readonly name: "req"; - readonly type: "tuple"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "execute"; - readonly outputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }]; - readonly name: "hasAsset"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "mintAsset"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "nonceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "revertWithReason"; - readonly outputs: readonly []; - readonly stateMutability: "pure"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "revertWithoutReason"; - readonly outputs: readonly []; - readonly stateMutability: "pure"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly components: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "nonce"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly internalType: "struct IForwarder.ForwardRequest"; - readonly name: "req"; - readonly type: "tuple"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "verify"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): BaseForwarderMockInterface; - static connect(address: string, runner?: ContractRunner | null): BaseForwarderMock; -} -export {}; -//# sourceMappingURL=BaseForwarderMock__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/BaseForwarderMock__factory.d.ts.map b/dist/types/factories/contracts/mocks/BaseForwarderMock__factory.d.ts.map deleted file mode 100644 index bc004293..00000000 --- a/dist/types/factories/contracts/mocks/BaseForwarderMock__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"BaseForwarderMock__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/mocks/BaseForwarderMock__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,KAAK,EACV,iBAAiB,EACjB,0BAA0B,EAC3B,MAAM,4CAA4C,CAAC;AA+JpD,aAAK,kCAAkC,GACnC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,0BAA2B,SAAQ,eAAe;gBACjD,GAAG,IAAI,EAAE,kCAAkC;IAQ9C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,0BAA0B;IAI3E,MAAM,CAAC,QAAQ,CAAC,QAAQ,wqMAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,0BAA0B;IAGpD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,iBAAiB;CAGrB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/BaseForwarderMock__factory.js b/dist/types/factories/contracts/mocks/BaseForwarderMock__factory.js deleted file mode 100644 index 88b271e8..00000000 --- a/dist/types/factories/contracts/mocks/BaseForwarderMock__factory.js +++ /dev/null @@ -1,187 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.BaseForwarderMock__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - internalType: "struct IForwarder.ForwardRequest", - name: "req", - type: "tuple", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "execute", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "addr", - type: "address", - }, - ], - name: "hasAsset", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "mintAsset", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "nonceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "revertWithReason", - outputs: [], - stateMutability: "pure", - type: "function", - }, - { - inputs: [], - name: "revertWithoutReason", - outputs: [], - stateMutability: "pure", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - internalType: "struct IForwarder.ForwardRequest", - name: "req", - type: "tuple", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "verify", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -const _bytecode = "0x608060405234801561001057600080fd5b50610c30806100206000396000f3fe608060405234801561001057600080fd5b506004361061007d5760003560e01c80636ccbae5f1161005b5780636ccbae5f146100bd578063716ac80f146100eb578063a4247400146100f3578063a567fb471461011657600080fd5b80631bf7e13e146100825780634167168d146100ab5780635b2dd100146100b5575b600080fd5b610095610090366004610857565b610142565b6040516100a29190610946565b60405180910390f35b6100b3600080fd5b005b6100b361024e565b6100dd6100cb366004610959565b60009081526020819052604090205490565b6040519081526020016100a2565b6100b361027f565b610106610101366004610857565b6102b6565b60405190151581526020016100a2565b61010661012436600461098e565b6001600160a01b031660009081526001602052604090205460ff1690565b606060005a90506101548585856102b6565b6101b15760405162461bcd60e51b8152602060048201526024808201527f42617365466f727761726465724d6f636b3a205349474e41545552455f494e566044820152631053125160e21b60648201526084015b60405180910390fd5b6102436101c1602087018761098e565b306040880135846101d560608b018b6109a9565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061030992505050565b9150505b9392505050565b60405162461bcd60e51b815260206004820152600660248201526541414141414160d01b60448201526064016101a8565b600180600061028c6103ea565b6001600160a01b031681526020810191909152604001600020805460ff1916911515919091179055565b60006103016102c485610a60565b3085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061040592505050565b949350505050565b60606103148561054e565b600080876001600160a01b03168661032e8b8a898961057a565b60405161033b9190610b21565b60006040518083038160008787f1925050503d8060008114610379576040519150601f19603f3d011682016040523d82523d6000602084013e61037e565b606091505b50909250905061038f603f87610b3d565b5a1161039d5761039d610b5f565b6103dd82826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c45440000000000008152506105aa565b9998505050505050505050565b6000303303610400575060331936013560601c90565b503390565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa15801561044c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104709190610b75565b9050600061051e8660600151805190602001208688602001516040516020016104be9392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561054457508551610544906001600160a01b031682866105e3565b9695505050505050565b600081815260208190526040902054610568906001610b8e565b60009182526020829052604090912055565b606082858560405160200161059193929190610bb5565b6040516020818303038152906040529050949350505050565b606083156105b9575081610247565b8251156105c95782518084602001fd5b8160405162461bcd60e51b81526004016101a89190610946565b60008060006105f28585610725565b9092509050600081600481111561060b5761060b610bf4565b1480156106295750856001600160a01b0316826001600160a01b0316145b1561063957600192505050610247565b600080876001600160a01b0316631626ba7e60e01b8888604051602401610661929190610c0a565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161069f9190610b21565b600060405180830381855afa9150503d80600081146106da576040519150601f19603f3d011682016040523d82523d6000602084013e6106df565b606091505b50915091508180156106f2575080516020145b801561071957508051630b135d3f60e11b906107179083016020908101908401610b75565b145b98975050505050505050565b600080825160410361075b5760208301516040840151606085015160001a61074f8782858561076a565b94509450505050610763565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08311156107a1575060009050600361084e565b8460ff16601b141580156107b957508460ff16601c14155b156107ca575060009050600461084e565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa15801561081e573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166108475760006001925092505061084e565b9150600090505b94509492505050565b60008060006040848603121561086c57600080fd5b833567ffffffffffffffff8082111561088457600080fd5b908501906080828803121561089857600080fd5b909350602085013590808211156108ae57600080fd5b818601915086601f8301126108c257600080fd5b8135818111156108d157600080fd5b8760208285010111156108e357600080fd5b6020830194508093505050509250925092565b60005b838110156109115781810151838201526020016108f9565b50506000910152565b600081518084526109328160208601602086016108f6565b601f01601f19169290920160200192915050565b602081526000610247602083018461091a565b60006020828403121561096b57600080fd5b5035919050565b80356001600160a01b038116811461098957600080fd5b919050565b6000602082840312156109a057600080fd5b61024782610972565b6000808335601e198436030181126109c057600080fd5b83018035915067ffffffffffffffff8211156109db57600080fd5b60200191503681900382131561076357600080fd5b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610a2957610a296109f0565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610a5857610a586109f0565b604052919050565b600060808236031215610a7257600080fd5b610a7a610a06565b610a8383610972565b81526020808401358183015260408401356040830152606084013567ffffffffffffffff80821115610ab457600080fd5b9085019036601f830112610ac757600080fd5b813581811115610ad957610ad96109f0565b610aeb601f8201601f19168501610a2f565b91508082523684828501011115610b0157600080fd5b808484018584013760009082019093019290925250606082015292915050565b60008251610b338184602087016108f6565b9190910192915050565b600082610b5a57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b600060208284031215610b8757600080fd5b5051919050565b80820180821115610baf57634e487b7160e01b600052601160045260246000fd5b92915050565b60008451610bc78184602089016108f6565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b600052602160045260246000fd5b828152604060208201526000610301604083018461091a56fea164736f6c6343000811000a"; -const isSuperArgs = (xs) => xs.length > 1; -class BaseForwarderMock__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(overrides) { - return super.getDeployTransaction(overrides || {}); - } - deploy(overrides) { - return super.deploy(overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.BaseForwarderMock__factory = BaseForwarderMock__factory; -BaseForwarderMock__factory.bytecode = _bytecode; -BaseForwarderMock__factory.abi = _abi; diff --git a/dist/types/factories/contracts/mocks/BaseRoutingForwarderMock__factory.d.ts b/dist/types/factories/contracts/mocks/BaseRoutingForwarderMock__factory.d.ts deleted file mode 100644 index d16b209f..00000000 --- a/dist/types/factories/contracts/mocks/BaseRoutingForwarderMock__factory.d.ts +++ /dev/null @@ -1,218 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../common"; -import type { BaseRoutingForwarderMock, BaseRoutingForwarderMockInterface } from "../../../contracts/mocks/BaseRoutingForwarderMock"; -declare type BaseRoutingForwarderMockConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class BaseRoutingForwarderMock__factory extends ContractFactory { - constructor(...args: BaseRoutingForwarderMockConstructorParams); - getDeployTransaction(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): BaseRoutingForwarderMock__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b50610085604051806060016040528060258152602001610d5d602591396040518060600160405280602e8152602001610d82602e913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b6100f360405180604001604052806011815260200170707574537472696e6728737472696e672960781b8152506040518060400160405280601a81526020017f707574537472696e67466f7228737472696e672c6279746573290000000000008152506101df60201b60201c565b6101606040518060400160405280601081526020016f70757455696e742875696e743235362960801b8152506040518060400160405280601981526020017f70757455696e74466f722875696e743235362c627974657329000000000000008152506101df60201b60201c565b6101da6040518060400160405280601581526020017f70757455696e744172722875696e743235365b5d2900000000000000000000008152506040518060400160405280601e81526020017f70757455696e74417272466f722875696e743235365b5d2c62797465732900008152506101df60201b60201c565b61021e565b80516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b610b308061022d6000396000f3fe608060405234801561001057600080fd5b506004361061009e5760003560e01c8063a424740011610066578063a424740014610124578063ab3ca71b14610147578063cdec3fe31461015a578063da5703c214610168578063daa948aa1461017657600080fd5b806302c7ff77146100a35780631bf7e13e146100b857806332065ca7146100e15780633b526333146100f45780636ccbae5f14610102575b600080fd5b6100b66100b136600461054f565b610184565b005b6100cb6100c63660046105d3565b6101a5565b6040516100d89190610694565b60405180910390f35b6100cb6100ef3660046105d3565b6101bf565b6100b66100b13660046106a7565b6101166101103660046106dd565b50600090565b6040519081526020016100d8565b6101376101323660046105d3565b61025b565b60405190151581526020016100d8565b6100b66101553660046106f6565b610275565b6100b66100b13660046106dd565b6100b6610155366004610762565b6100b661015536600461079c565b60405162461bcd60e51b815260040161019c906107db565b60405180910390fd5b606060405162461bcd60e51b815260040161019c906107db565b60606102516101d16020860186610811565b60408601356101e3606088018861082e565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b0181900481028201810190925289815292508991508890819084018382808284376000920191909152506102a792505050565b90505b9392505050565b600060405162461bcd60e51b815260040161019c906107db565b60405162461bcd60e51b815260206004820152600760248201526636b7b1b5a337b960c91b604482015260640161019c565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036103345760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b606482015260840161019c565b8351600319016004850190815261034c828286610357565b979650505050505050565b606063021a79ef60e31b6001600160e01b03198516016103e55760008060008580602001905181019061038a9190610875565b92509250925086838383886040516024016103a894939291906108b8565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152935061025492505050565b6312d47e1f60e11b6001600160e01b031985160161046457600083806020019051810190610413919061093c565b90508481846040516024016104299291906109d0565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915291506102549050565b6312ab5bab60e11b6001600160e01b03198516016104a85760008380602001905181019061049291906109fe565b9050848184604051602401610429929190610a17565b6354c358e560e01b6001600160e01b03198516016104ec576000838060200190518101906104d69190610a30565b9050848184604051602401610429929190610ad6565b506040805160208101909152600081529392505050565b60008083601f84011261051557600080fd5b50813567ffffffffffffffff81111561052d57600080fd5b6020830191508360208260051b850101111561054857600080fd5b9250929050565b6000806020838503121561056257600080fd5b823567ffffffffffffffff81111561057957600080fd5b61058585828601610503565b90969095509350505050565b60008083601f8401126105a357600080fd5b50813567ffffffffffffffff8111156105bb57600080fd5b60208301915083602082850101111561054857600080fd5b6000806000604084860312156105e857600080fd5b833567ffffffffffffffff8082111561060057600080fd5b908501906080828803121561061457600080fd5b9093506020850135908082111561062a57600080fd5b5061063786828701610591565b9497909650939450505050565b60005b8381101561065f578181015183820152602001610647565b50506000910152565b60008151808452610680816020860160208601610644565b601f01601f19169290920160200192915050565b6020815260006102546020830184610668565b600080602083850312156106ba57600080fd5b823567ffffffffffffffff8111156106d157600080fd5b61058585828601610591565b6000602082840312156106ef57600080fd5b5035919050565b6000806000806040858703121561070c57600080fd5b843567ffffffffffffffff8082111561072457600080fd5b61073088838901610503565b9096509450602087013591508082111561074957600080fd5b5061075687828801610591565b95989497509550505050565b6000806000806040858703121561077857600080fd5b843567ffffffffffffffff8082111561079057600080fd5b61073088838901610591565b6000806000604084860312156107b157600080fd5b83359250602084013567ffffffffffffffff8111156107cf57600080fd5b61063786828701610591565b6020808252600490820152636d6f636b60e01b604082015260600190565b6001600160a01b038116811461080e57600080fd5b50565b60006020828403121561082357600080fd5b8135610254816107f9565b6000808335601e1984360301811261084557600080fd5b83018035915067ffffffffffffffff82111561086057600080fd5b60200191503681900382131561054857600080fd5b60008060006060848603121561088a57600080fd5b8351610895816107f9565b60208501519093506108a6816107f9565b80925050604084015190509250925092565b6001600160a01b03858116825284166020820152604081018390526080606082018190526000906108eb90830184610668565b9695505050505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715610934576109346108f5565b604052919050565b60006020828403121561094e57600080fd5b815167ffffffffffffffff8082111561096657600080fd5b818401915084601f83011261097a57600080fd5b81518181111561098c5761098c6108f5565b61099f601f8201601f191660200161090b565b91508082528560208285010111156109b657600080fd5b6109c7816020840160208601610644565b50949350505050565b6040815260006109e36040830185610668565b82810360208401526109f58185610668565b95945050505050565b600060208284031215610a1057600080fd5b5051919050565b8281526040602082015260006102516040830184610668565b60006020808385031215610a4357600080fd5b825167ffffffffffffffff80821115610a5b57600080fd5b818501915085601f830112610a6f57600080fd5b815181811115610a8157610a816108f5565b8060051b9150610a9284830161090b565b8181529183018401918481019088841115610aac57600080fd5b938501935b83851015610aca57845182529385019390850190610ab1565b98975050505050505050565b604080825283519082018190526000906020906060840190828701845b82811015610b0f57815184529284019290840190600101610af3565b505050838103828501526108eb818661066856fea164736f6c6343000811000a7472616e7366657246726f6d28616464726573732c616464726573732c75696e74323536297472616e7366657246726f6d466f7228616464726573732c616464726573732c75696e743235362c627974657329"; - static readonly abi: readonly [{ - readonly inputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "constructor"; - }, { - readonly inputs: readonly [{ - readonly components: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "nonce"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly internalType: "struct IForwarder.ForwardRequest"; - readonly name: "req"; - readonly type: "tuple"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "buildRouteData"; - readonly outputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly components: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "nonce"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly internalType: "struct IForwarder.ForwardRequest"; - readonly name: ""; - readonly type: "tuple"; - }, { - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly name: "execute"; - readonly outputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "pure"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly name: "nonceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "pure"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly name: "putString"; - readonly outputs: readonly []; - readonly stateMutability: "pure"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }, { - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly name: "putStringFor"; - readonly outputs: readonly []; - readonly stateMutability: "pure"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly name: "putUint"; - readonly outputs: readonly []; - readonly stateMutability: "pure"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256[]"; - readonly name: ""; - readonly type: "uint256[]"; - }]; - readonly name: "putUintArr"; - readonly outputs: readonly []; - readonly stateMutability: "pure"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256[]"; - readonly name: ""; - readonly type: "uint256[]"; - }, { - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly name: "putUintArrFor"; - readonly outputs: readonly []; - readonly stateMutability: "pure"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly name: "putUintFor"; - readonly outputs: readonly []; - readonly stateMutability: "pure"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly components: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "nonce"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly internalType: "struct IForwarder.ForwardRequest"; - readonly name: ""; - readonly type: "tuple"; - }, { - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly name: "verify"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "pure"; - readonly type: "function"; - }]; - static createInterface(): BaseRoutingForwarderMockInterface; - static connect(address: string, runner?: ContractRunner | null): BaseRoutingForwarderMock; -} -export {}; -//# sourceMappingURL=BaseRoutingForwarderMock__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/BaseRoutingForwarderMock__factory.d.ts.map b/dist/types/factories/contracts/mocks/BaseRoutingForwarderMock__factory.d.ts.map deleted file mode 100644 index 36721630..00000000 --- a/dist/types/factories/contracts/mocks/BaseRoutingForwarderMock__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"BaseRoutingForwarderMock__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/mocks/BaseRoutingForwarderMock__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,KAAK,EACV,wBAAwB,EACxB,iCAAiC,EAClC,MAAM,mDAAmD,CAAC;AAuQ3D,aAAK,yCAAyC,GAC1C,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,iCAAkC,SAAQ,eAAe;gBACxD,GAAG,IAAI,EAAE,yCAAyC;IAQrD,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CACd,MAAM,EAAE,cAAc,GAAG,IAAI,GAC5B,iCAAiC;IAIpC,MAAM,CAAC,QAAQ,CAAC,QAAQ,w2NAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,iCAAiC;IAG3D,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,wBAAwB;CAO5B"} \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/BaseRoutingForwarderMock__factory.js b/dist/types/factories/contracts/mocks/BaseRoutingForwarderMock__factory.js deleted file mode 100644 index da8359db..00000000 --- a/dist/types/factories/contracts/mocks/BaseRoutingForwarderMock__factory.js +++ /dev/null @@ -1,291 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.BaseRoutingForwarderMock__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [], - stateMutability: "nonpayable", - type: "constructor", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - internalType: "struct IForwarder.ForwardRequest", - name: "req", - type: "tuple", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "buildRouteData", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - internalType: "struct IForwarder.ForwardRequest", - name: "", - type: "tuple", - }, - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - name: "execute", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "pure", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - name: "nonceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "pure", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - name: "putString", - outputs: [], - stateMutability: "pure", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - name: "putStringFor", - outputs: [], - stateMutability: "pure", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - name: "putUint", - outputs: [], - stateMutability: "pure", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256[]", - name: "", - type: "uint256[]", - }, - ], - name: "putUintArr", - outputs: [], - stateMutability: "pure", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256[]", - name: "", - type: "uint256[]", - }, - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - name: "putUintArrFor", - outputs: [], - stateMutability: "pure", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - name: "putUintFor", - outputs: [], - stateMutability: "pure", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - internalType: "struct IForwarder.ForwardRequest", - name: "", - type: "tuple", - }, - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - name: "verify", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "pure", - type: "function", - }, -]; -const _bytecode = "0x608060405234801561001057600080fd5b50610085604051806060016040528060258152602001610d5d602591396040518060600160405280602e8152602001610d82602e913980516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b6100f360405180604001604052806011815260200170707574537472696e6728737472696e672960781b8152506040518060400160405280601a81526020017f707574537472696e67466f7228737472696e672c6279746573290000000000008152506101df60201b60201c565b6101606040518060400160405280601081526020016f70757455696e742875696e743235362960801b8152506040518060400160405280601981526020017f70757455696e74466f722875696e743235362c627974657329000000000000008152506101df60201b60201c565b6101da6040518060400160405280601581526020017f70757455696e744172722875696e743235365b5d2900000000000000000000008152506040518060400160405280601e81526020017f70757455696e74417272466f722875696e743235365b5d2c62797465732900008152506101df60201b60201c565b61021e565b80516020918201208251928201929092206001600160e01b03191660009081529081905260409020805463ffffffff191660e09290921c919091179055565b610b308061022d6000396000f3fe608060405234801561001057600080fd5b506004361061009e5760003560e01c8063a424740011610066578063a424740014610124578063ab3ca71b14610147578063cdec3fe31461015a578063da5703c214610168578063daa948aa1461017657600080fd5b806302c7ff77146100a35780631bf7e13e146100b857806332065ca7146100e15780633b526333146100f45780636ccbae5f14610102575b600080fd5b6100b66100b136600461054f565b610184565b005b6100cb6100c63660046105d3565b6101a5565b6040516100d89190610694565b60405180910390f35b6100cb6100ef3660046105d3565b6101bf565b6100b66100b13660046106a7565b6101166101103660046106dd565b50600090565b6040519081526020016100d8565b6101376101323660046105d3565b61025b565b60405190151581526020016100d8565b6100b66101553660046106f6565b610275565b6100b66100b13660046106dd565b6100b6610155366004610762565b6100b661015536600461079c565b60405162461bcd60e51b815260040161019c906107db565b60405180910390fd5b606060405162461bcd60e51b815260040161019c906107db565b60606102516101d16020860186610811565b60408601356101e3606088018861082e565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b0181900481028201810190925289815292508991508890819084018382808284376000920191909152506102a792505050565b90505b9392505050565b600060405162461bcd60e51b815260040161019c906107db565b60405162461bcd60e51b815260206004820152600760248201526636b7b1b5a337b960c91b604482015260640161019c565b6020808301516001600160e01b03191660009081529081905260408120546060919060e01b90506001600160e01b031981166000036103345760405162461bcd60e51b815260206004820152602360248201527f42617365526f7574696e67466f727761726465723a20524f5554455f554e4b4e60448201526227aba760e91b606482015260840161019c565b8351600319016004850190815261034c828286610357565b979650505050505050565b606063021a79ef60e31b6001600160e01b03198516016103e55760008060008580602001905181019061038a9190610875565b92509250925086838383886040516024016103a894939291906108b8565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152935061025492505050565b6312d47e1f60e11b6001600160e01b031985160161046457600083806020019051810190610413919061093c565b90508481846040516024016104299291906109d0565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915291506102549050565b6312ab5bab60e11b6001600160e01b03198516016104a85760008380602001905181019061049291906109fe565b9050848184604051602401610429929190610a17565b6354c358e560e01b6001600160e01b03198516016104ec576000838060200190518101906104d69190610a30565b9050848184604051602401610429929190610ad6565b506040805160208101909152600081529392505050565b60008083601f84011261051557600080fd5b50813567ffffffffffffffff81111561052d57600080fd5b6020830191508360208260051b850101111561054857600080fd5b9250929050565b6000806020838503121561056257600080fd5b823567ffffffffffffffff81111561057957600080fd5b61058585828601610503565b90969095509350505050565b60008083601f8401126105a357600080fd5b50813567ffffffffffffffff8111156105bb57600080fd5b60208301915083602082850101111561054857600080fd5b6000806000604084860312156105e857600080fd5b833567ffffffffffffffff8082111561060057600080fd5b908501906080828803121561061457600080fd5b9093506020850135908082111561062a57600080fd5b5061063786828701610591565b9497909650939450505050565b60005b8381101561065f578181015183820152602001610647565b50506000910152565b60008151808452610680816020860160208601610644565b601f01601f19169290920160200192915050565b6020815260006102546020830184610668565b600080602083850312156106ba57600080fd5b823567ffffffffffffffff8111156106d157600080fd5b61058585828601610591565b6000602082840312156106ef57600080fd5b5035919050565b6000806000806040858703121561070c57600080fd5b843567ffffffffffffffff8082111561072457600080fd5b61073088838901610503565b9096509450602087013591508082111561074957600080fd5b5061075687828801610591565b95989497509550505050565b6000806000806040858703121561077857600080fd5b843567ffffffffffffffff8082111561079057600080fd5b61073088838901610591565b6000806000604084860312156107b157600080fd5b83359250602084013567ffffffffffffffff8111156107cf57600080fd5b61063786828701610591565b6020808252600490820152636d6f636b60e01b604082015260600190565b6001600160a01b038116811461080e57600080fd5b50565b60006020828403121561082357600080fd5b8135610254816107f9565b6000808335601e1984360301811261084557600080fd5b83018035915067ffffffffffffffff82111561086057600080fd5b60200191503681900382131561054857600080fd5b60008060006060848603121561088a57600080fd5b8351610895816107f9565b60208501519093506108a6816107f9565b80925050604084015190509250925092565b6001600160a01b03858116825284166020820152604081018390526080606082018190526000906108eb90830184610668565b9695505050505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715610934576109346108f5565b604052919050565b60006020828403121561094e57600080fd5b815167ffffffffffffffff8082111561096657600080fd5b818401915084601f83011261097a57600080fd5b81518181111561098c5761098c6108f5565b61099f601f8201601f191660200161090b565b91508082528560208285010111156109b657600080fd5b6109c7816020840160208601610644565b50949350505050565b6040815260006109e36040830185610668565b82810360208401526109f58185610668565b95945050505050565b600060208284031215610a1057600080fd5b5051919050565b8281526040602082015260006102516040830184610668565b60006020808385031215610a4357600080fd5b825167ffffffffffffffff80821115610a5b57600080fd5b818501915085601f830112610a6f57600080fd5b815181811115610a8157610a816108f5565b8060051b9150610a9284830161090b565b8181529183018401918481019088841115610aac57600080fd5b938501935b83851015610aca57845182529385019390850190610ab1565b98975050505050505050565b604080825283519082018190526000906020906060840190828701845b82811015610b0f57815184529284019290840190600101610af3565b505050838103828501526108eb818661066856fea164736f6c6343000811000a7472616e7366657246726f6d28616464726573732c616464726573732c75696e74323536297472616e7366657246726f6d466f7228616464726573732c616464726573732c75696e743235362c627974657329"; -const isSuperArgs = (xs) => xs.length > 1; -class BaseRoutingForwarderMock__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(overrides) { - return super.getDeployTransaction(overrides || {}); - } - deploy(overrides) { - return super.deploy(overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.BaseRoutingForwarderMock__factory = BaseRoutingForwarderMock__factory; -BaseRoutingForwarderMock__factory.bytecode = _bytecode; -BaseRoutingForwarderMock__factory.abi = _abi; diff --git a/dist/types/factories/contracts/mocks/ERC1155Mock__factory.d.ts b/dist/types/factories/contracts/mocks/ERC1155Mock__factory.d.ts deleted file mode 100644 index cf4abd3c..00000000 --- a/dist/types/factories/contracts/mocks/ERC1155Mock__factory.d.ts +++ /dev/null @@ -1,612 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../common"; -import type { ERC1155Mock, ERC1155MockInterface } from "../../../contracts/mocks/ERC1155Mock"; -declare type ERC1155MockConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class ERC1155Mock__factory extends ContractFactory { - constructor(...args: ERC1155MockConstructorParams); - getDeployTransaction(uri: string, overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(uri: string, overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): ERC1155Mock__factory; - static readonly bytecode = "0x60806040523480156200001157600080fd5b506040516200346f3803806200346f83398101604081905262000034916200051c565b6200003f8162000046565b506200074b565b600054610100900460ff1615808015620000675750600054600160ff909116105b8062000097575062000084306200017a60201b62000b5d1760201c565b15801562000097575060005460ff166001145b620001005760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff19166001179055801562000124576000805461ff0019166101001790555b6200012f8262000189565b801562000176576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050565b6001600160a01b03163b151590565b600054610100900460ff16620001e55760405162461bcd60e51b815260206004820152602b60248201526000805160206200344f83398151915260448201526a6e697469616c697a696e6760a81b6064820152608401620000f7565b620001f08162000208565b620001fa6200026f565b6200020581620002d8565b50565b600054610100900460ff16620002645760405162461bcd60e51b815260206004820152602b60248201526000805160206200344f83398151915260448201526a6e697469616c697a696e6760a81b6064820152608401620000f7565b620002058162000399565b600054610100900460ff16620002cb5760405162461bcd60e51b815260206004820152602b60248201526000805160206200344f83398151915260448201526a6e697469616c697a696e6760a81b6064820152608401620000f7565b61012d805460ff19169055565b600054610100900460ff16620003345760405162461bcd60e51b815260206004820152602b60248201526000805160206200344f83398151915260448201526a6e697469616c697a696e6760a81b6064820152608401620000f7565b62000341600033620003a7565b6200036d7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a633620003a7565b620002057f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a33620003a7565b60cb6200017682826200067f565b620001768282620003c48282620003f060201b62000b6c1760201c565b6000828152609760209081526040909120620003eb91839062000bf262000494821b17901c565b505050565b60008281526065602090815260408083206001600160a01b038516845290915290205460ff16620001765760008281526065602090815260408083206001600160a01b03851684529091529020805460ff19166001179055620004503390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6000620004ab836001600160a01b038416620004b4565b90505b92915050565b6000818152600183016020526040812054620004fd57508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155620004ae565b506000620004ae565b634e487b7160e01b600052604160045260246000fd5b600060208083850312156200053057600080fd5b82516001600160401b03808211156200054857600080fd5b818501915085601f8301126200055d57600080fd5b81518181111562000572576200057262000506565b604051601f8201601f19908116603f011681019083821181831017156200059d576200059d62000506565b816040528281528886848701011115620005b657600080fd5b600093505b82841015620005da5784840186015181850187015292850192620005bb565b600086848301015280965050505050505092915050565b600181811c908216806200060657607f821691505b6020821081036200062757634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620003eb57600081815260208120601f850160051c81016020861015620006565750805b601f850160051c820191505b81811015620006775782815560010162000662565b505050505050565b81516001600160401b038111156200069b576200069b62000506565b620006b381620006ac8454620005f1565b846200062d565b602080601f831160018114620006eb5760008415620006d25750858301515b600019600386901b1c1916600185901b17855562000677565b600085815260208120601f198616915b828110156200071c57888601518255948401946001909101908401620006fb565b50858210156200073b5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b612cf4806200075b6000396000f3fe608060405234801561001057600080fd5b506004361061018d5760003560e01c80638456cb59116100de578063d539139311610097578063e985e9c511610071578063e985e9c514610377578063f242432a146103b3578063f5298aca146103c6578063f62d1888146103d957600080fd5b8063d53913931461033a578063d547741f1461034f578063e63ab1e91461036257600080fd5b80638456cb59146102c65780639010d07c146102ce57806391d14854146102f9578063a217fddf1461030c578063a22cb46514610314578063ca15c8731461032757600080fd5b80632f2ff15d1161014b5780634e1273f4116101255780634e1273f4146102745780635c975abb146102945780636b20c454146102a0578063731133e9146102b357600080fd5b80632f2ff15d1461024657806336568abe146102595780633f4ba83a1461026c57600080fd5b8062fdd58e1461019257806301ffc9a7146101b85780630e89341c146101db5780631f7fdffa146101fb578063248a9ca3146102105780632eb2c2d614610233575b600080fd5b6101a56101a0366004611eec565b6103ec565b6040519081526020015b60405180910390f35b6101cb6101c6366004611f2c565b610487565b60405190151581526020016101af565b6101ee6101e9366004611f49565b610492565b6040516101af9190611fb2565b61020e610209366004612118565b610526565b005b6101a561021e366004611f49565b60009081526065602052604090206001015490565b61020e6102413660046121b0565b61056c565b61020e610254366004612259565b6105b8565b61020e610267366004612259565b6105e2565b61020e610660565b610287610282366004612285565b6106f4565b6040516101af919061238a565b61012d5460ff166101cb565b61020e6102ae36600461239d565b61081d565b61020e6102c1366004612410565b610860565b61020e6108a0565b6102e16102dc366004612464565b610932565b6040516001600160a01b0390911681526020016101af565b6101cb610307366004612259565b610951565b6101a5600081565b61020e610322366004612486565b61097c565b6101a5610335366004611f49565b610987565b6101a5600080516020612cc883398151915281565b61020e61035d366004612259565b61099e565b6101a5600080516020612ca883398151915281565b6101cb6103853660046124c2565b6001600160a01b03918216600090815260ca6020908152604080832093909416825291909152205460ff1690565b61020e6103c13660046124ec565b6109c3565b61020e6103d4366004612550565b610a08565b61020e6103e7366004612583565b610a4b565b60006001600160a01b03831661045c5760405162461bcd60e51b815260206004820152602a60248201527f455243313135353a2061646472657373207a65726f206973206e6f742061207660448201526930b634b21037bbb732b960b11b60648201526084015b60405180910390fd5b50600081815260c9602090815260408083206001600160a01b03861684529091529020545b92915050565b600061048182610c07565b606060cb80546104a1906125d3565b80601f01602080910402602001604051908101604052809291908181526020018280546104cd906125d3565b801561051a5780601f106104ef5761010080835404028352916020019161051a565b820191906000526020600020905b8154815290600101906020018083116104fd57829003601f168201915b50505050509050919050565b61053e600080516020612cc883398151915233610951565b61055a5760405162461bcd60e51b81526004016104539061260d565b61056684848484610c47565b50505050565b6001600160a01b03851633148061058857506105888533610385565b6105a45760405162461bcd60e51b81526004016104539061266a565b6105b18585858585610da2565b5050505050565b6000828152606560205260409020600101546105d381610f4f565b6105dd8383610f5c565b505050565b6001600160a01b03811633146106525760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610453565b61065c8282610f7e565b5050565b610678600080516020612ca883398151915233610951565b6106ea5760405162461bcd60e51b815260206004820152603b60248201527f455243313135355072657365744d696e7465725061757365723a206d7573742060448201527f686176652070617573657220726f6c6520746f20756e706175736500000000006064820152608401610453565b6106f2610fa0565b565b606081518351146107595760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b6064820152608401610453565b600083516001600160401b0381111561077457610774611fc5565b60405190808252806020026020018201604052801561079d578160200160208202803683370190505b50905060005b8451811015610815576107e88582815181106107c1576107c16126b9565b60200260200101518583815181106107db576107db6126b9565b60200260200101516103ec565b8282815181106107fa576107fa6126b9565b602090810291909101015261080e816126e5565b90506107a3565b509392505050565b6001600160a01b03831633148061083957506108398333610385565b6108555760405162461bcd60e51b81526004016104539061266a565b6105dd838383610ff3565b610878600080516020612cc883398151915233610951565b6108945760405162461bcd60e51b81526004016104539061260d565b61056684848484611192565b6108b8600080516020612ca883398151915233610951565b61092a5760405162461bcd60e51b815260206004820152603960248201527f455243313135355072657365744d696e7465725061757365723a206d7573742060448201527f686176652070617573657220726f6c6520746f207061757365000000000000006064820152608401610453565b6106f261127d565b600082815260976020526040812061094a90836112bb565b9392505050565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b61065c3383836112c7565b6000818152609760205260408120610481906113a7565b6000828152606560205260409020600101546109b981610f4f565b6105dd8383610f7e565b6001600160a01b0385163314806109df57506109df8533610385565b6109fb5760405162461bcd60e51b81526004016104539061266a565b6105b185858585856113b1565b6001600160a01b038316331480610a245750610a248333610385565b610a405760405162461bcd60e51b81526004016104539061266a565b6105dd8383836114ed565b600054610100900460ff1615808015610a6b5750600054600160ff909116105b80610a855750303b158015610a85575060005460ff166001145b610ae85760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610453565b6000805460ff191660011790558015610b0b576000805461ff0019166101001790555b610b1482611609565b801561065c576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b6001600160a01b03163b151590565b610b768282610951565b61065c5760008281526065602090815260408083206001600160a01b03851684529091529020805460ff19166001179055610bae3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b600061094a836001600160a01b03841661164a565b60006001600160e01b03198216636cdb3d1360e11b1480610c3857506001600160e01b031982166303a24d0760e21b145b80610481575061048182611699565b6001600160a01b038416610c6d5760405162461bcd60e51b8152600401610453906126fe565b8151835114610c8e5760405162461bcd60e51b81526004016104539061273f565b33610c9e816000878787876116be565b60005b8451811015610d3a57838181518110610cbc57610cbc6126b9565b602002602001015160c96000878481518110610cda57610cda6126b9565b602002602001015181526020019081526020016000206000886001600160a01b03166001600160a01b031681526020019081526020016000206000828254610d229190612787565b90915550819050610d32816126e5565b915050610ca1565b50846001600160a01b031660006001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051610d8b92919061279a565b60405180910390a46105b1816000878787876116cc565b8151835114610dc35760405162461bcd60e51b81526004016104539061273f565b6001600160a01b038416610de95760405162461bcd60e51b8152600401610453906127c8565b33610df88187878787876116be565b60005b8451811015610ee1576000858281518110610e1857610e186126b9565b602002602001015190506000858381518110610e3657610e366126b9565b602090810291909101810151600084815260c9835260408082206001600160a01b038e168352909352919091205490915081811015610e875760405162461bcd60e51b81526004016104539061280d565b600083815260c9602090815260408083206001600160a01b038e8116855292528083208585039055908b16825281208054849290610ec6908490612787565b9250508190555050505080610eda906126e5565b9050610dfb565b50846001600160a01b0316866001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051610f3192919061279a565b60405180910390a4610f478187878787876116cc565b505050505050565b610f598133611827565b50565b610f668282610b6c565b60008281526097602052604090206105dd9082610bf2565b610f88828261188b565b60008281526097602052604090206105dd90826118f2565b610fa8611907565b61012d805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516001600160a01b03909116815260200160405180910390a1565b6001600160a01b0383166110195760405162461bcd60e51b815260040161045390612857565b805182511461103a5760405162461bcd60e51b81526004016104539061273f565b600033905061105d818560008686604051806020016040528060008152506116be565b60005b835181101561112557600084828151811061107d5761107d6126b9565b60200260200101519050600084838151811061109b5761109b6126b9565b602090810291909101810151600084815260c9835260408082206001600160a01b038c1683529093529190912054909150818110156110ec5760405162461bcd60e51b81526004016104539061289a565b600092835260c9602090815260408085206001600160a01b038b168652909152909220910390558061111d816126e5565b915050611060565b5060006001600160a01b0316846001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb868660405161117692919061279a565b60405180910390a4604080516020810190915260009052610566565b6001600160a01b0384166111b85760405162461bcd60e51b8152600401610453906126fe565b3360006111c485611951565b905060006111d185611951565b90506111e2836000898585896116be565b600086815260c9602090815260408083206001600160a01b038b16845290915281208054879290611214908490612787565b909155505060408051878152602081018790526001600160a01b03808a1692600092918716917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46112748360008989898961199c565b50505050505050565b611285611a57565b61012d805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258610fd63390565b600061094a8383611a9e565b816001600160a01b0316836001600160a01b03160361133a5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b6064820152608401610453565b6001600160a01b03838116600081815260ca6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6000610481825490565b6001600160a01b0384166113d75760405162461bcd60e51b8152600401610453906127c8565b3360006113e385611951565b905060006113f085611951565b90506114008389898585896116be565b600086815260c9602090815260408083206001600160a01b038c168452909152902054858110156114435760405162461bcd60e51b81526004016104539061280d565b600087815260c9602090815260408083206001600160a01b038d8116855292528083208985039055908a16825281208054889290611482908490612787565b909155505060408051888152602081018890526001600160a01b03808b16928c821692918816917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46114e2848a8a8a8a8a61199c565b505050505050505050565b6001600160a01b0383166115135760405162461bcd60e51b815260040161045390612857565b33600061151f84611951565b9050600061152c84611951565b905061154c838760008585604051806020016040528060008152506116be565b600085815260c9602090815260408083206001600160a01b038a1684529091529020548481101561158f5760405162461bcd60e51b81526004016104539061289a565b600086815260c9602090815260408083206001600160a01b038b81168086529184528285208a8703905582518b81529384018a90529092908816917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4604080516020810190915260009052611274565b600054610100900460ff166116305760405162461bcd60e51b8152600401610453906128de565b61163981611ac8565b611641611af8565b610f5981611b2c565b600081815260018301602052604081205461169157508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610481565b506000610481565b60006001600160e01b03198216635a05180f60e01b1480610481575061048182611b8e565b610f47868686868686611bc3565b6001600160a01b0384163b15610f475760405163bc197c8160e01b81526001600160a01b0385169063bc197c81906117109089908990889088908890600401612929565b6020604051808303816000875af192505050801561174b575060408051601f3d908101601f1916820190925261174891810190612987565b60015b6117f7576117576129a4565b806308c379a003611790575061176b6129c0565b806117765750611792565b8060405162461bcd60e51b81526004016104539190611fb2565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e20455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b6064820152608401610453565b6001600160e01b0319811663bc197c8160e01b146112745760405162461bcd60e51b815260040161045390612a49565b6118318282610951565b61065c57611849816001600160a01b03166014611c2c565b611854836020611c2c565b604051602001611865929190612a91565b60408051601f198184030181529082905262461bcd60e51b825261045391600401611fb2565b6118958282610951565b1561065c5760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b600061094a836001600160a01b038416611dc7565b61012d5460ff166106f25760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b6044820152606401610453565b6040805160018082528183019092526060916000919060208083019080368337019050509050828160008151811061198b5761198b6126b9565b602090810291909101015292915050565b6001600160a01b0384163b15610f475760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e61906119e09089908990889088908890600401612b06565b6020604051808303816000875af1925050508015611a1b575060408051601f3d908101601f19168201909252611a1891810190612987565b60015b611a27576117576129a4565b6001600160e01b0319811663f23a6e6160e01b146112745760405162461bcd60e51b815260040161045390612a49565b61012d5460ff16156106f25760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b6044820152606401610453565b6000826000018281548110611ab557611ab56126b9565b9060005260206000200154905092915050565b600054610100900460ff16611aef5760405162461bcd60e51b8152600401610453906128de565b610f5981611eba565b600054610100900460ff16611b1f5760405162461bcd60e51b8152600401610453906128de565b61012d805460ff19169055565b600054610100900460ff16611b535760405162461bcd60e51b8152600401610453906128de565b611b5e600033611ec6565b611b76600080516020612cc883398151915233611ec6565b610f59600080516020612ca883398151915233611ec6565b60006001600160e01b03198216637965db0b60e01b148061048157506301ffc9a760e01b6001600160e01b0319831614610481565b61012d5460ff1615610f475760405162461bcd60e51b815260206004820152602c60248201527f455243313135355061757361626c653a20746f6b656e207472616e736665722060448201526b1dda1a5b19481c185d5cd95960a21b6064820152608401610453565b60606000611c3b836002612b4b565b611c46906002612787565b6001600160401b03811115611c5d57611c5d611fc5565b6040519080825280601f01601f191660200182016040528015611c87576020820181803683370190505b509050600360fc1b81600081518110611ca257611ca26126b9565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110611cd157611cd16126b9565b60200101906001600160f81b031916908160001a9053506000611cf5846002612b4b565b611d00906001612787565b90505b6001811115611d78576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611d3457611d346126b9565b1a60f81b828281518110611d4a57611d4a6126b9565b60200101906001600160f81b031916908160001a90535060049490941c93611d7181612b62565b9050611d03565b50831561094a5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610453565b60008181526001830160205260408120548015611eb0576000611deb600183612b79565b8554909150600090611dff90600190612b79565b9050818114611e64576000866000018281548110611e1f57611e1f6126b9565b9060005260206000200154905080876000018481548110611e4257611e426126b9565b6000918252602080832090910192909255918252600188019052604090208390555b8554869080611e7557611e75612b8c565b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050610481565b6000915050610481565b60cb61065c8282612be8565b61065c8282610f5c565b80356001600160a01b0381168114611ee757600080fd5b919050565b60008060408385031215611eff57600080fd5b611f0883611ed0565b946020939093013593505050565b6001600160e01b031981168114610f5957600080fd5b600060208284031215611f3e57600080fd5b813561094a81611f16565b600060208284031215611f5b57600080fd5b5035919050565b60005b83811015611f7d578181015183820152602001611f65565b50506000910152565b60008151808452611f9e816020860160208601611f62565b601f01601f19169290920160200192915050565b60208152600061094a6020830184611f86565b634e487b7160e01b600052604160045260246000fd5b601f8201601f191681016001600160401b038111828210171561200057612000611fc5565b6040525050565b60006001600160401b0382111561202057612020611fc5565b5060051b60200190565b600082601f83011261203b57600080fd5b8135602061204882612007565b6040516120558282611fdb565b83815260059390931b850182019282810191508684111561207557600080fd5b8286015b848110156120905780358352918301918301612079565b509695505050505050565b60006001600160401b038311156120b4576120b4611fc5565b6040516120cb601f8501601f191660200182611fdb565b8091508381528484840111156120e057600080fd5b83836020830137600060208583010152509392505050565b600082601f83011261210957600080fd5b61094a8383356020850161209b565b6000806000806080858703121561212e57600080fd5b61213785611ed0565b935060208501356001600160401b038082111561215357600080fd5b61215f8883890161202a565b9450604087013591508082111561217557600080fd5b6121818883890161202a565b9350606087013591508082111561219757600080fd5b506121a4878288016120f8565b91505092959194509250565b600080600080600060a086880312156121c857600080fd5b6121d186611ed0565b94506121df60208701611ed0565b935060408601356001600160401b03808211156121fb57600080fd5b61220789838a0161202a565b9450606088013591508082111561221d57600080fd5b61222989838a0161202a565b9350608088013591508082111561223f57600080fd5b5061224c888289016120f8565b9150509295509295909350565b6000806040838503121561226c57600080fd5b8235915061227c60208401611ed0565b90509250929050565b6000806040838503121561229857600080fd5b82356001600160401b03808211156122af57600080fd5b818501915085601f8301126122c357600080fd5b813560206122d082612007565b6040516122dd8282611fdb565b83815260059390931b85018201928281019150898411156122fd57600080fd5b948201945b838610156123225761231386611ed0565b82529482019490820190612302565b9650508601359250508082111561233857600080fd5b506123458582860161202a565b9150509250929050565b600081518084526020808501945080840160005b8381101561237f57815187529582019590820190600101612363565b509495945050505050565b60208152600061094a602083018461234f565b6000806000606084860312156123b257600080fd5b6123bb84611ed0565b925060208401356001600160401b03808211156123d757600080fd5b6123e38783880161202a565b935060408601359150808211156123f957600080fd5b506124068682870161202a565b9150509250925092565b6000806000806080858703121561242657600080fd5b61242f85611ed0565b9350602085013592506040850135915060608501356001600160401b0381111561245857600080fd5b6121a4878288016120f8565b6000806040838503121561247757600080fd5b50508035926020909101359150565b6000806040838503121561249957600080fd5b6124a283611ed0565b9150602083013580151581146124b757600080fd5b809150509250929050565b600080604083850312156124d557600080fd5b6124de83611ed0565b915061227c60208401611ed0565b600080600080600060a0868803121561250457600080fd5b61250d86611ed0565b945061251b60208701611ed0565b9350604086013592506060860135915060808601356001600160401b0381111561254457600080fd5b61224c888289016120f8565b60008060006060848603121561256557600080fd5b61256e84611ed0565b95602085013595506040909401359392505050565b60006020828403121561259557600080fd5b81356001600160401b038111156125ab57600080fd5b8201601f810184136125bc57600080fd5b6125cb8482356020840161209b565b949350505050565b600181811c908216806125e757607f821691505b60208210810361260757634e487b7160e01b600052602260045260246000fd5b50919050565b60208082526038908201527f455243313135355072657365744d696e7465725061757365723a206d7573742060408201527f68617665206d696e74657220726f6c6520746f206d696e740000000000000000606082015260800190565b6020808252602f908201527f455243313135353a2063616c6c6572206973206e6f7420746f6b656e206f776e60408201526e195c881b9bdc88185c1c1c9bdd9959608a1b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000600182016126f7576126f76126cf565b5060010190565b60208082526021908201527f455243313135353a206d696e7420746f20746865207a65726f206164647265736040820152607360f81b606082015260800190565b60208082526028908201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206040820152670dad2e6dac2e8c6d60c31b606082015260800190565b80820180821115610481576104816126cf565b6040815260006127ad604083018561234f565b82810360208401526127bf818561234f565b95945050505050565b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b60208082526023908201527f455243313135353a206275726e2066726f6d20746865207a65726f206164647260408201526265737360e81b606082015260800190565b60208082526024908201527f455243313135353a206275726e20616d6f756e7420657863656564732062616c604082015263616e636560e01b606082015260800190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6001600160a01b0386811682528516602082015260a0604082018190526000906129559083018661234f565b8281036060840152612967818661234f565b9050828103608084015261297b8185611f86565b98975050505050505050565b60006020828403121561299957600080fd5b815161094a81611f16565b600060033d11156129bd5760046000803e5060005160e01c5b90565b600060443d10156129ce5790565b6040516003193d81016004833e81513d6001600160401b0381602484011181841117156129fd57505050505090565b8285019150815181811115612a155750505050505090565b843d8701016020828501011115612a2f5750505050505090565b612a3e60208286010187611fdb565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351612ac9816017850160208801611f62565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351612afa816028840160208801611f62565b01602801949350505050565b6001600160a01b03868116825285166020820152604081018490526060810183905260a060808201819052600090612b4090830184611f86565b979650505050505050565b8082028115828204841417610481576104816126cf565b600081612b7157612b716126cf565b506000190190565b81810381811115610481576104816126cf565b634e487b7160e01b600052603160045260246000fd5b601f8211156105dd57600081815260208120601f850160051c81016020861015612bc95750805b601f850160051c820191505b81811015610f4757828155600101612bd5565b81516001600160401b03811115612c0157612c01611fc5565b612c1581612c0f84546125d3565b84612ba2565b602080601f831160018114612c4a5760008415612c325750858301515b600019600386901b1c1916600185901b178555610f47565b600085815260208120601f198616915b82811015612c7957888601518255948401946001909101908401612c5a565b5085821015612c975787850151600019600388901b60f8161c191681555b5050505050600190811b0190555056fe65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000811000a496e697469616c697a61626c653a20636f6e7472616374206973206e6f742069"; - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "uri"; - readonly type: "string"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "constructor"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "ApprovalForAll"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "uint8"; - readonly name: "version"; - readonly type: "uint8"; - }]; - readonly name: "Initialized"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "Paused"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "previousAdminRole"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "newAdminRole"; - readonly type: "bytes32"; - }]; - readonly name: "RoleAdminChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "sender"; - readonly type: "address"; - }]; - readonly name: "RoleGranted"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "sender"; - readonly type: "address"; - }]; - readonly name: "RoleRevoked"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "uint256[]"; - readonly name: "ids"; - readonly type: "uint256[]"; - }, { - readonly indexed: false; - readonly internalType: "uint256[]"; - readonly name: "values"; - readonly type: "uint256[]"; - }]; - readonly name: "TransferBatch"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "value"; - readonly type: "uint256"; - }]; - readonly name: "TransferSingle"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }]; - readonly name: "URI"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "Unpaused"; - readonly type: "event"; - }, { - readonly inputs: readonly []; - readonly name: "DEFAULT_ADMIN_ROLE"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "MINTER_ROLE"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "PAUSER_ROLE"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }]; - readonly name: "balanceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address[]"; - readonly name: "accounts"; - readonly type: "address[]"; - }, { - readonly internalType: "uint256[]"; - readonly name: "ids"; - readonly type: "uint256[]"; - }]; - readonly name: "balanceOfBatch"; - readonly outputs: readonly [{ - readonly internalType: "uint256[]"; - readonly name: ""; - readonly type: "uint256[]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "value"; - readonly type: "uint256"; - }]; - readonly name: "burn"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly internalType: "uint256[]"; - readonly name: "ids"; - readonly type: "uint256[]"; - }, { - readonly internalType: "uint256[]"; - readonly name: "values"; - readonly type: "uint256[]"; - }]; - readonly name: "burnBatch"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }]; - readonly name: "getRoleAdmin"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "index"; - readonly type: "uint256"; - }]; - readonly name: "getRoleMember"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }]; - readonly name: "getRoleMemberCount"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "grantRole"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "hasRole"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "uri"; - readonly type: "string"; - }]; - readonly name: "initialize"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly name: "isApprovedForAll"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "amount"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "mint"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256[]"; - readonly name: "ids"; - readonly type: "uint256[]"; - }, { - readonly internalType: "uint256[]"; - readonly name: "amounts"; - readonly type: "uint256[]"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "mintBatch"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "pause"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "paused"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "renounceRole"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "revokeRole"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256[]"; - readonly name: "ids"; - readonly type: "uint256[]"; - }, { - readonly internalType: "uint256[]"; - readonly name: "amounts"; - readonly type: "uint256[]"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "safeBatchTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "id"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "amount"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "setApprovalForAll"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "unpause"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly name: "uri"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): ERC1155MockInterface; - static connect(address: string, runner?: ContractRunner | null): ERC1155Mock; -} -export {}; -//# sourceMappingURL=ERC1155Mock__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/ERC1155Mock__factory.d.ts.map b/dist/types/factories/contracts/mocks/ERC1155Mock__factory.d.ts.map deleted file mode 100644 index d90b6b43..00000000 --- a/dist/types/factories/contracts/mocks/ERC1155Mock__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ERC1155Mock__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/mocks/ERC1155Mock__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,KAAK,EACV,WAAW,EACX,oBAAoB,EACrB,MAAM,sCAAsC,CAAC;AA8vB9C,aAAK,4BAA4B,GAC7B,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,oBAAqB,SAAQ,eAAe;gBAC3C,GAAG,IAAI,EAAE,4BAA4B;IAQxC,oBAAoB,CAC3B,GAAG,EAAE,MAAM,EACX,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CACb,GAAG,EAAE,MAAM,EACX,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAItB,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,oBAAoB;IAIrE,MAAM,CAAC,QAAQ,CAAC,QAAQ,su0BAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,oBAAoB;IAG9C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,WAAW;CAG7E"} \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/ERC1155Mock__factory.js b/dist/types/factories/contracts/mocks/ERC1155Mock__factory.js deleted file mode 100644 index f4ec8a1e..00000000 --- a/dist/types/factories/contracts/mocks/ERC1155Mock__factory.js +++ /dev/null @@ -1,794 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ERC1155Mock__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "string", - name: "uri", - type: "string", - }, - ], - stateMutability: "nonpayable", - type: "constructor", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: false, - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "ApprovalForAll", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint8", - name: "version", - type: "uint8", - }, - ], - name: "Initialized", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "Paused", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - indexed: true, - internalType: "bytes32", - name: "previousAdminRole", - type: "bytes32", - }, - { - indexed: true, - internalType: "bytes32", - name: "newAdminRole", - type: "bytes32", - }, - ], - name: "RoleAdminChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "sender", - type: "address", - }, - ], - name: "RoleGranted", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "sender", - type: "address", - }, - ], - name: "RoleRevoked", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: false, - internalType: "uint256[]", - name: "ids", - type: "uint256[]", - }, - { - indexed: false, - internalType: "uint256[]", - name: "values", - type: "uint256[]", - }, - ], - name: "TransferBatch", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "value", - type: "uint256", - }, - ], - name: "TransferSingle", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "string", - name: "value", - type: "string", - }, - { - indexed: true, - internalType: "uint256", - name: "id", - type: "uint256", - }, - ], - name: "URI", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "Unpaused", - type: "event", - }, - { - inputs: [], - name: "DEFAULT_ADMIN_ROLE", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - 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: [ - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address[]", - name: "accounts", - type: "address[]", - }, - { - internalType: "uint256[]", - name: "ids", - type: "uint256[]", - }, - ], - name: "balanceOfBatch", - outputs: [ - { - internalType: "uint256[]", - name: "", - type: "uint256[]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - internalType: "uint256", - name: "value", - type: "uint256", - }, - ], - name: "burn", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "uint256[]", - name: "ids", - type: "uint256[]", - }, - { - internalType: "uint256[]", - name: "values", - type: "uint256[]", - }, - ], - name: "burnBatch", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - ], - name: "getRoleAdmin", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - 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: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "grantRole", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "hasRole", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "uri", - type: "string", - }, - ], - name: "initialize", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - name: "isApprovedForAll", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "mint", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256[]", - name: "ids", - type: "uint256[]", - }, - { - internalType: "uint256[]", - name: "amounts", - type: "uint256[]", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "mintBatch", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "pause", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "paused", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "renounceRole", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "revokeRole", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256[]", - name: "ids", - type: "uint256[]", - }, - { - internalType: "uint256[]", - name: "amounts", - type: "uint256[]", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "safeBatchTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "safeTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "setApprovalForAll", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "unpause", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - name: "uri", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -const _bytecode = "0x60806040523480156200001157600080fd5b506040516200346f3803806200346f83398101604081905262000034916200051c565b6200003f8162000046565b506200074b565b600054610100900460ff1615808015620000675750600054600160ff909116105b8062000097575062000084306200017a60201b62000b5d1760201c565b15801562000097575060005460ff166001145b620001005760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff19166001179055801562000124576000805461ff0019166101001790555b6200012f8262000189565b801562000176576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050565b6001600160a01b03163b151590565b600054610100900460ff16620001e55760405162461bcd60e51b815260206004820152602b60248201526000805160206200344f83398151915260448201526a6e697469616c697a696e6760a81b6064820152608401620000f7565b620001f08162000208565b620001fa6200026f565b6200020581620002d8565b50565b600054610100900460ff16620002645760405162461bcd60e51b815260206004820152602b60248201526000805160206200344f83398151915260448201526a6e697469616c697a696e6760a81b6064820152608401620000f7565b620002058162000399565b600054610100900460ff16620002cb5760405162461bcd60e51b815260206004820152602b60248201526000805160206200344f83398151915260448201526a6e697469616c697a696e6760a81b6064820152608401620000f7565b61012d805460ff19169055565b600054610100900460ff16620003345760405162461bcd60e51b815260206004820152602b60248201526000805160206200344f83398151915260448201526a6e697469616c697a696e6760a81b6064820152608401620000f7565b62000341600033620003a7565b6200036d7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a633620003a7565b620002057f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a33620003a7565b60cb6200017682826200067f565b620001768282620003c48282620003f060201b62000b6c1760201c565b6000828152609760209081526040909120620003eb91839062000bf262000494821b17901c565b505050565b60008281526065602090815260408083206001600160a01b038516845290915290205460ff16620001765760008281526065602090815260408083206001600160a01b03851684529091529020805460ff19166001179055620004503390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6000620004ab836001600160a01b038416620004b4565b90505b92915050565b6000818152600183016020526040812054620004fd57508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155620004ae565b506000620004ae565b634e487b7160e01b600052604160045260246000fd5b600060208083850312156200053057600080fd5b82516001600160401b03808211156200054857600080fd5b818501915085601f8301126200055d57600080fd5b81518181111562000572576200057262000506565b604051601f8201601f19908116603f011681019083821181831017156200059d576200059d62000506565b816040528281528886848701011115620005b657600080fd5b600093505b82841015620005da5784840186015181850187015292850192620005bb565b600086848301015280965050505050505092915050565b600181811c908216806200060657607f821691505b6020821081036200062757634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620003eb57600081815260208120601f850160051c81016020861015620006565750805b601f850160051c820191505b81811015620006775782815560010162000662565b505050505050565b81516001600160401b038111156200069b576200069b62000506565b620006b381620006ac8454620005f1565b846200062d565b602080601f831160018114620006eb5760008415620006d25750858301515b600019600386901b1c1916600185901b17855562000677565b600085815260208120601f198616915b828110156200071c57888601518255948401946001909101908401620006fb565b50858210156200073b5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b612cf4806200075b6000396000f3fe608060405234801561001057600080fd5b506004361061018d5760003560e01c80638456cb59116100de578063d539139311610097578063e985e9c511610071578063e985e9c514610377578063f242432a146103b3578063f5298aca146103c6578063f62d1888146103d957600080fd5b8063d53913931461033a578063d547741f1461034f578063e63ab1e91461036257600080fd5b80638456cb59146102c65780639010d07c146102ce57806391d14854146102f9578063a217fddf1461030c578063a22cb46514610314578063ca15c8731461032757600080fd5b80632f2ff15d1161014b5780634e1273f4116101255780634e1273f4146102745780635c975abb146102945780636b20c454146102a0578063731133e9146102b357600080fd5b80632f2ff15d1461024657806336568abe146102595780633f4ba83a1461026c57600080fd5b8062fdd58e1461019257806301ffc9a7146101b85780630e89341c146101db5780631f7fdffa146101fb578063248a9ca3146102105780632eb2c2d614610233575b600080fd5b6101a56101a0366004611eec565b6103ec565b6040519081526020015b60405180910390f35b6101cb6101c6366004611f2c565b610487565b60405190151581526020016101af565b6101ee6101e9366004611f49565b610492565b6040516101af9190611fb2565b61020e610209366004612118565b610526565b005b6101a561021e366004611f49565b60009081526065602052604090206001015490565b61020e6102413660046121b0565b61056c565b61020e610254366004612259565b6105b8565b61020e610267366004612259565b6105e2565b61020e610660565b610287610282366004612285565b6106f4565b6040516101af919061238a565b61012d5460ff166101cb565b61020e6102ae36600461239d565b61081d565b61020e6102c1366004612410565b610860565b61020e6108a0565b6102e16102dc366004612464565b610932565b6040516001600160a01b0390911681526020016101af565b6101cb610307366004612259565b610951565b6101a5600081565b61020e610322366004612486565b61097c565b6101a5610335366004611f49565b610987565b6101a5600080516020612cc883398151915281565b61020e61035d366004612259565b61099e565b6101a5600080516020612ca883398151915281565b6101cb6103853660046124c2565b6001600160a01b03918216600090815260ca6020908152604080832093909416825291909152205460ff1690565b61020e6103c13660046124ec565b6109c3565b61020e6103d4366004612550565b610a08565b61020e6103e7366004612583565b610a4b565b60006001600160a01b03831661045c5760405162461bcd60e51b815260206004820152602a60248201527f455243313135353a2061646472657373207a65726f206973206e6f742061207660448201526930b634b21037bbb732b960b11b60648201526084015b60405180910390fd5b50600081815260c9602090815260408083206001600160a01b03861684529091529020545b92915050565b600061048182610c07565b606060cb80546104a1906125d3565b80601f01602080910402602001604051908101604052809291908181526020018280546104cd906125d3565b801561051a5780601f106104ef5761010080835404028352916020019161051a565b820191906000526020600020905b8154815290600101906020018083116104fd57829003601f168201915b50505050509050919050565b61053e600080516020612cc883398151915233610951565b61055a5760405162461bcd60e51b81526004016104539061260d565b61056684848484610c47565b50505050565b6001600160a01b03851633148061058857506105888533610385565b6105a45760405162461bcd60e51b81526004016104539061266a565b6105b18585858585610da2565b5050505050565b6000828152606560205260409020600101546105d381610f4f565b6105dd8383610f5c565b505050565b6001600160a01b03811633146106525760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610453565b61065c8282610f7e565b5050565b610678600080516020612ca883398151915233610951565b6106ea5760405162461bcd60e51b815260206004820152603b60248201527f455243313135355072657365744d696e7465725061757365723a206d7573742060448201527f686176652070617573657220726f6c6520746f20756e706175736500000000006064820152608401610453565b6106f2610fa0565b565b606081518351146107595760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b6064820152608401610453565b600083516001600160401b0381111561077457610774611fc5565b60405190808252806020026020018201604052801561079d578160200160208202803683370190505b50905060005b8451811015610815576107e88582815181106107c1576107c16126b9565b60200260200101518583815181106107db576107db6126b9565b60200260200101516103ec565b8282815181106107fa576107fa6126b9565b602090810291909101015261080e816126e5565b90506107a3565b509392505050565b6001600160a01b03831633148061083957506108398333610385565b6108555760405162461bcd60e51b81526004016104539061266a565b6105dd838383610ff3565b610878600080516020612cc883398151915233610951565b6108945760405162461bcd60e51b81526004016104539061260d565b61056684848484611192565b6108b8600080516020612ca883398151915233610951565b61092a5760405162461bcd60e51b815260206004820152603960248201527f455243313135355072657365744d696e7465725061757365723a206d7573742060448201527f686176652070617573657220726f6c6520746f207061757365000000000000006064820152608401610453565b6106f261127d565b600082815260976020526040812061094a90836112bb565b9392505050565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b61065c3383836112c7565b6000818152609760205260408120610481906113a7565b6000828152606560205260409020600101546109b981610f4f565b6105dd8383610f7e565b6001600160a01b0385163314806109df57506109df8533610385565b6109fb5760405162461bcd60e51b81526004016104539061266a565b6105b185858585856113b1565b6001600160a01b038316331480610a245750610a248333610385565b610a405760405162461bcd60e51b81526004016104539061266a565b6105dd8383836114ed565b600054610100900460ff1615808015610a6b5750600054600160ff909116105b80610a855750303b158015610a85575060005460ff166001145b610ae85760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610453565b6000805460ff191660011790558015610b0b576000805461ff0019166101001790555b610b1482611609565b801561065c576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b6001600160a01b03163b151590565b610b768282610951565b61065c5760008281526065602090815260408083206001600160a01b03851684529091529020805460ff19166001179055610bae3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b600061094a836001600160a01b03841661164a565b60006001600160e01b03198216636cdb3d1360e11b1480610c3857506001600160e01b031982166303a24d0760e21b145b80610481575061048182611699565b6001600160a01b038416610c6d5760405162461bcd60e51b8152600401610453906126fe565b8151835114610c8e5760405162461bcd60e51b81526004016104539061273f565b33610c9e816000878787876116be565b60005b8451811015610d3a57838181518110610cbc57610cbc6126b9565b602002602001015160c96000878481518110610cda57610cda6126b9565b602002602001015181526020019081526020016000206000886001600160a01b03166001600160a01b031681526020019081526020016000206000828254610d229190612787565b90915550819050610d32816126e5565b915050610ca1565b50846001600160a01b031660006001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051610d8b92919061279a565b60405180910390a46105b1816000878787876116cc565b8151835114610dc35760405162461bcd60e51b81526004016104539061273f565b6001600160a01b038416610de95760405162461bcd60e51b8152600401610453906127c8565b33610df88187878787876116be565b60005b8451811015610ee1576000858281518110610e1857610e186126b9565b602002602001015190506000858381518110610e3657610e366126b9565b602090810291909101810151600084815260c9835260408082206001600160a01b038e168352909352919091205490915081811015610e875760405162461bcd60e51b81526004016104539061280d565b600083815260c9602090815260408083206001600160a01b038e8116855292528083208585039055908b16825281208054849290610ec6908490612787565b9250508190555050505080610eda906126e5565b9050610dfb565b50846001600160a01b0316866001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051610f3192919061279a565b60405180910390a4610f478187878787876116cc565b505050505050565b610f598133611827565b50565b610f668282610b6c565b60008281526097602052604090206105dd9082610bf2565b610f88828261188b565b60008281526097602052604090206105dd90826118f2565b610fa8611907565b61012d805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516001600160a01b03909116815260200160405180910390a1565b6001600160a01b0383166110195760405162461bcd60e51b815260040161045390612857565b805182511461103a5760405162461bcd60e51b81526004016104539061273f565b600033905061105d818560008686604051806020016040528060008152506116be565b60005b835181101561112557600084828151811061107d5761107d6126b9565b60200260200101519050600084838151811061109b5761109b6126b9565b602090810291909101810151600084815260c9835260408082206001600160a01b038c1683529093529190912054909150818110156110ec5760405162461bcd60e51b81526004016104539061289a565b600092835260c9602090815260408085206001600160a01b038b168652909152909220910390558061111d816126e5565b915050611060565b5060006001600160a01b0316846001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb868660405161117692919061279a565b60405180910390a4604080516020810190915260009052610566565b6001600160a01b0384166111b85760405162461bcd60e51b8152600401610453906126fe565b3360006111c485611951565b905060006111d185611951565b90506111e2836000898585896116be565b600086815260c9602090815260408083206001600160a01b038b16845290915281208054879290611214908490612787565b909155505060408051878152602081018790526001600160a01b03808a1692600092918716917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46112748360008989898961199c565b50505050505050565b611285611a57565b61012d805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258610fd63390565b600061094a8383611a9e565b816001600160a01b0316836001600160a01b03160361133a5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b6064820152608401610453565b6001600160a01b03838116600081815260ca6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6000610481825490565b6001600160a01b0384166113d75760405162461bcd60e51b8152600401610453906127c8565b3360006113e385611951565b905060006113f085611951565b90506114008389898585896116be565b600086815260c9602090815260408083206001600160a01b038c168452909152902054858110156114435760405162461bcd60e51b81526004016104539061280d565b600087815260c9602090815260408083206001600160a01b038d8116855292528083208985039055908a16825281208054889290611482908490612787565b909155505060408051888152602081018890526001600160a01b03808b16928c821692918816917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46114e2848a8a8a8a8a61199c565b505050505050505050565b6001600160a01b0383166115135760405162461bcd60e51b815260040161045390612857565b33600061151f84611951565b9050600061152c84611951565b905061154c838760008585604051806020016040528060008152506116be565b600085815260c9602090815260408083206001600160a01b038a1684529091529020548481101561158f5760405162461bcd60e51b81526004016104539061289a565b600086815260c9602090815260408083206001600160a01b038b81168086529184528285208a8703905582518b81529384018a90529092908816917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4604080516020810190915260009052611274565b600054610100900460ff166116305760405162461bcd60e51b8152600401610453906128de565b61163981611ac8565b611641611af8565b610f5981611b2c565b600081815260018301602052604081205461169157508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610481565b506000610481565b60006001600160e01b03198216635a05180f60e01b1480610481575061048182611b8e565b610f47868686868686611bc3565b6001600160a01b0384163b15610f475760405163bc197c8160e01b81526001600160a01b0385169063bc197c81906117109089908990889088908890600401612929565b6020604051808303816000875af192505050801561174b575060408051601f3d908101601f1916820190925261174891810190612987565b60015b6117f7576117576129a4565b806308c379a003611790575061176b6129c0565b806117765750611792565b8060405162461bcd60e51b81526004016104539190611fb2565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e20455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b6064820152608401610453565b6001600160e01b0319811663bc197c8160e01b146112745760405162461bcd60e51b815260040161045390612a49565b6118318282610951565b61065c57611849816001600160a01b03166014611c2c565b611854836020611c2c565b604051602001611865929190612a91565b60408051601f198184030181529082905262461bcd60e51b825261045391600401611fb2565b6118958282610951565b1561065c5760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b600061094a836001600160a01b038416611dc7565b61012d5460ff166106f25760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b6044820152606401610453565b6040805160018082528183019092526060916000919060208083019080368337019050509050828160008151811061198b5761198b6126b9565b602090810291909101015292915050565b6001600160a01b0384163b15610f475760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e61906119e09089908990889088908890600401612b06565b6020604051808303816000875af1925050508015611a1b575060408051601f3d908101601f19168201909252611a1891810190612987565b60015b611a27576117576129a4565b6001600160e01b0319811663f23a6e6160e01b146112745760405162461bcd60e51b815260040161045390612a49565b61012d5460ff16156106f25760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b6044820152606401610453565b6000826000018281548110611ab557611ab56126b9565b9060005260206000200154905092915050565b600054610100900460ff16611aef5760405162461bcd60e51b8152600401610453906128de565b610f5981611eba565b600054610100900460ff16611b1f5760405162461bcd60e51b8152600401610453906128de565b61012d805460ff19169055565b600054610100900460ff16611b535760405162461bcd60e51b8152600401610453906128de565b611b5e600033611ec6565b611b76600080516020612cc883398151915233611ec6565b610f59600080516020612ca883398151915233611ec6565b60006001600160e01b03198216637965db0b60e01b148061048157506301ffc9a760e01b6001600160e01b0319831614610481565b61012d5460ff1615610f475760405162461bcd60e51b815260206004820152602c60248201527f455243313135355061757361626c653a20746f6b656e207472616e736665722060448201526b1dda1a5b19481c185d5cd95960a21b6064820152608401610453565b60606000611c3b836002612b4b565b611c46906002612787565b6001600160401b03811115611c5d57611c5d611fc5565b6040519080825280601f01601f191660200182016040528015611c87576020820181803683370190505b509050600360fc1b81600081518110611ca257611ca26126b9565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110611cd157611cd16126b9565b60200101906001600160f81b031916908160001a9053506000611cf5846002612b4b565b611d00906001612787565b90505b6001811115611d78576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611d3457611d346126b9565b1a60f81b828281518110611d4a57611d4a6126b9565b60200101906001600160f81b031916908160001a90535060049490941c93611d7181612b62565b9050611d03565b50831561094a5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610453565b60008181526001830160205260408120548015611eb0576000611deb600183612b79565b8554909150600090611dff90600190612b79565b9050818114611e64576000866000018281548110611e1f57611e1f6126b9565b9060005260206000200154905080876000018481548110611e4257611e426126b9565b6000918252602080832090910192909255918252600188019052604090208390555b8554869080611e7557611e75612b8c565b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050610481565b6000915050610481565b60cb61065c8282612be8565b61065c8282610f5c565b80356001600160a01b0381168114611ee757600080fd5b919050565b60008060408385031215611eff57600080fd5b611f0883611ed0565b946020939093013593505050565b6001600160e01b031981168114610f5957600080fd5b600060208284031215611f3e57600080fd5b813561094a81611f16565b600060208284031215611f5b57600080fd5b5035919050565b60005b83811015611f7d578181015183820152602001611f65565b50506000910152565b60008151808452611f9e816020860160208601611f62565b601f01601f19169290920160200192915050565b60208152600061094a6020830184611f86565b634e487b7160e01b600052604160045260246000fd5b601f8201601f191681016001600160401b038111828210171561200057612000611fc5565b6040525050565b60006001600160401b0382111561202057612020611fc5565b5060051b60200190565b600082601f83011261203b57600080fd5b8135602061204882612007565b6040516120558282611fdb565b83815260059390931b850182019282810191508684111561207557600080fd5b8286015b848110156120905780358352918301918301612079565b509695505050505050565b60006001600160401b038311156120b4576120b4611fc5565b6040516120cb601f8501601f191660200182611fdb565b8091508381528484840111156120e057600080fd5b83836020830137600060208583010152509392505050565b600082601f83011261210957600080fd5b61094a8383356020850161209b565b6000806000806080858703121561212e57600080fd5b61213785611ed0565b935060208501356001600160401b038082111561215357600080fd5b61215f8883890161202a565b9450604087013591508082111561217557600080fd5b6121818883890161202a565b9350606087013591508082111561219757600080fd5b506121a4878288016120f8565b91505092959194509250565b600080600080600060a086880312156121c857600080fd5b6121d186611ed0565b94506121df60208701611ed0565b935060408601356001600160401b03808211156121fb57600080fd5b61220789838a0161202a565b9450606088013591508082111561221d57600080fd5b61222989838a0161202a565b9350608088013591508082111561223f57600080fd5b5061224c888289016120f8565b9150509295509295909350565b6000806040838503121561226c57600080fd5b8235915061227c60208401611ed0565b90509250929050565b6000806040838503121561229857600080fd5b82356001600160401b03808211156122af57600080fd5b818501915085601f8301126122c357600080fd5b813560206122d082612007565b6040516122dd8282611fdb565b83815260059390931b85018201928281019150898411156122fd57600080fd5b948201945b838610156123225761231386611ed0565b82529482019490820190612302565b9650508601359250508082111561233857600080fd5b506123458582860161202a565b9150509250929050565b600081518084526020808501945080840160005b8381101561237f57815187529582019590820190600101612363565b509495945050505050565b60208152600061094a602083018461234f565b6000806000606084860312156123b257600080fd5b6123bb84611ed0565b925060208401356001600160401b03808211156123d757600080fd5b6123e38783880161202a565b935060408601359150808211156123f957600080fd5b506124068682870161202a565b9150509250925092565b6000806000806080858703121561242657600080fd5b61242f85611ed0565b9350602085013592506040850135915060608501356001600160401b0381111561245857600080fd5b6121a4878288016120f8565b6000806040838503121561247757600080fd5b50508035926020909101359150565b6000806040838503121561249957600080fd5b6124a283611ed0565b9150602083013580151581146124b757600080fd5b809150509250929050565b600080604083850312156124d557600080fd5b6124de83611ed0565b915061227c60208401611ed0565b600080600080600060a0868803121561250457600080fd5b61250d86611ed0565b945061251b60208701611ed0565b9350604086013592506060860135915060808601356001600160401b0381111561254457600080fd5b61224c888289016120f8565b60008060006060848603121561256557600080fd5b61256e84611ed0565b95602085013595506040909401359392505050565b60006020828403121561259557600080fd5b81356001600160401b038111156125ab57600080fd5b8201601f810184136125bc57600080fd5b6125cb8482356020840161209b565b949350505050565b600181811c908216806125e757607f821691505b60208210810361260757634e487b7160e01b600052602260045260246000fd5b50919050565b60208082526038908201527f455243313135355072657365744d696e7465725061757365723a206d7573742060408201527f68617665206d696e74657220726f6c6520746f206d696e740000000000000000606082015260800190565b6020808252602f908201527f455243313135353a2063616c6c6572206973206e6f7420746f6b656e206f776e60408201526e195c881b9bdc88185c1c1c9bdd9959608a1b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000600182016126f7576126f76126cf565b5060010190565b60208082526021908201527f455243313135353a206d696e7420746f20746865207a65726f206164647265736040820152607360f81b606082015260800190565b60208082526028908201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206040820152670dad2e6dac2e8c6d60c31b606082015260800190565b80820180821115610481576104816126cf565b6040815260006127ad604083018561234f565b82810360208401526127bf818561234f565b95945050505050565b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b60208082526023908201527f455243313135353a206275726e2066726f6d20746865207a65726f206164647260408201526265737360e81b606082015260800190565b60208082526024908201527f455243313135353a206275726e20616d6f756e7420657863656564732062616c604082015263616e636560e01b606082015260800190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6001600160a01b0386811682528516602082015260a0604082018190526000906129559083018661234f565b8281036060840152612967818661234f565b9050828103608084015261297b8185611f86565b98975050505050505050565b60006020828403121561299957600080fd5b815161094a81611f16565b600060033d11156129bd5760046000803e5060005160e01c5b90565b600060443d10156129ce5790565b6040516003193d81016004833e81513d6001600160401b0381602484011181841117156129fd57505050505090565b8285019150815181811115612a155750505050505090565b843d8701016020828501011115612a2f5750505050505090565b612a3e60208286010187611fdb565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351612ac9816017850160208801611f62565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351612afa816028840160208801611f62565b01602801949350505050565b6001600160a01b03868116825285166020820152604081018490526060810183905260a060808201819052600090612b4090830184611f86565b979650505050505050565b8082028115828204841417610481576104816126cf565b600081612b7157612b716126cf565b506000190190565b81810381811115610481576104816126cf565b634e487b7160e01b600052603160045260246000fd5b601f8211156105dd57600081815260208120601f850160051c81016020861015612bc95750805b601f850160051c820191505b81811015610f4757828155600101612bd5565b81516001600160401b03811115612c0157612c01611fc5565b612c1581612c0f84546125d3565b84612ba2565b602080601f831160018114612c4a5760008415612c325750858301515b600019600386901b1c1916600185901b178555610f47565b600085815260208120601f198616915b82811015612c7957888601518255948401946001909101908401612c5a565b5085821015612c975787850151600019600388901b60f8161c191681555b5050505050600190811b0190555056fe65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000811000a496e697469616c697a61626c653a20636f6e7472616374206973206e6f742069"; -const isSuperArgs = (xs) => xs.length > 1; -class ERC1155Mock__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(uri, overrides) { - return super.getDeployTransaction(uri, overrides || {}); - } - deploy(uri, overrides) { - return super.deploy(uri, overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.ERC1155Mock__factory = ERC1155Mock__factory; -ERC1155Mock__factory.bytecode = _bytecode; -ERC1155Mock__factory.abi = _abi; diff --git a/dist/types/factories/contracts/mocks/ERC20Mock__factory.d.ts b/dist/types/factories/contracts/mocks/ERC20Mock__factory.d.ts deleted file mode 100644 index 8aeafe34..00000000 --- a/dist/types/factories/contracts/mocks/ERC20Mock__factory.d.ts +++ /dev/null @@ -1,243 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../common"; -import type { ERC20Mock, ERC20MockInterface } from "../../../contracts/mocks/ERC20Mock"; -declare type ERC20MockConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class ERC20Mock__factory extends ContractFactory { - constructor(...args: ERC20MockConstructorParams); - getDeployTransaction(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): ERC20Mock__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b5060408051602080820183526000808352835191820190935291825290600361003983826100ed565b50600461004682826100ed565b5050506101ac565b634e487b7160e01b600052604160045260246000fd5b600181811c9082168061007857607f821691505b60208210810361009857634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156100e857600081815260208120601f850160051c810160208610156100c55750805b601f850160051c820191505b818110156100e4578281556001016100d1565b5050505b505050565b81516001600160401b038111156101065761010661004e565b61011a816101148454610064565b8461009e565b602080601f83116001811461014f57600084156101375750858301515b600019600386901b1c1916600185901b1785556100e4565b600085815260208120601f198616915b8281101561017e5788860151825594840194600190910190840161015f565b508582101561019c5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b610916806101bb6000396000f3fe608060405234801561001057600080fd5b50600436106100b45760003560e01c806340c10f191161007157806340c10f191461014157806370a082311461015657806395d89b411461017f578063a457c2d714610187578063a9059cbb1461019a578063dd62ed3e146101ad57600080fd5b806306fdde03146100b9578063095ea7b3146100d757806318160ddd146100fa57806323b872dd1461010c578063313ce5671461011f578063395093511461012e575b600080fd5b6100c16101c0565b6040516100ce9190610789565b60405180910390f35b6100ea6100e53660046107f3565b610252565b60405190151581526020016100ce565b6002545b6040519081526020016100ce565b6100ea61011a36600461081d565b61026c565b604051601281526020016100ce565b6100ea61013c3660046107f3565b610290565b61015461014f3660046107f3565b6102b2565b005b6100fe610164366004610859565b6001600160a01b031660009081526020819052604090205490565b6100c16102c0565b6100ea6101953660046107f3565b6102cf565b6100ea6101a83660046107f3565b61034f565b6100fe6101bb36600461087b565b61035d565b6060600380546101cf906108ae565b80601f01602080910402602001604051908101604052809291908181526020018280546101fb906108ae565b80156102485780601f1061021d57610100808354040283529160200191610248565b820191906000526020600020905b81548152906001019060200180831161022b57829003601f168201915b5050505050905090565b600033610260818585610388565b60019150505b92915050565b60003361027a8582856104ac565b610285858585610526565b506001949350505050565b6000336102608185856102a3838361035d565b6102ad91906108e8565b610388565b6102bc82826106ca565b5050565b6060600480546101cf906108ae565b600033816102dd828661035d565b9050838110156103425760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b6102858286868403610388565b600033610260818585610526565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6001600160a01b0383166103ea5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610339565b6001600160a01b03821661044b5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610339565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b60006104b8848461035d565b9050600019811461052057818110156105135760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610339565b6105208484848403610388565b50505050565b6001600160a01b03831661058a5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610339565b6001600160a01b0382166105ec5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610339565b6001600160a01b038316600090815260208190526040902054818110156106645760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610339565b6001600160a01b03848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3610520565b6001600160a01b0382166107205760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606401610339565b806002600082825461073291906108e8565b90915550506001600160a01b038216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b600060208083528351808285015260005b818110156107b65785810183015185820160400152820161079a565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146107ee57600080fd5b919050565b6000806040838503121561080657600080fd5b61080f836107d7565b946020939093013593505050565b60008060006060848603121561083257600080fd5b61083b846107d7565b9250610849602085016107d7565b9150604084013590509250925092565b60006020828403121561086b57600080fd5b610874826107d7565b9392505050565b6000806040838503121561088e57600080fd5b610897836107d7565b91506108a5602084016107d7565b90509250929050565b600181811c908216806108c257607f821691505b6020821081036108e257634e487b7160e01b600052602260045260246000fd5b50919050565b8082018082111561026657634e487b7160e01b600052601160045260246000fdfea164736f6c6343000811000a"; - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "spender"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "value"; - readonly type: "uint256"; - }]; - readonly name: "Approval"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "value"; - readonly type: "uint256"; - }]; - readonly name: "Transfer"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "spender"; - readonly type: "address"; - }]; - readonly name: "allowance"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "spender"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "amount"; - readonly type: "uint256"; - }]; - readonly name: "approve"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "balanceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "decimals"; - readonly outputs: readonly [{ - readonly internalType: "uint8"; - readonly name: ""; - readonly type: "uint8"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "spender"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "subtractedValue"; - readonly type: "uint256"; - }]; - readonly name: "decreaseAllowance"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "spender"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "addedValue"; - readonly type: "uint256"; - }]; - readonly name: "increaseAllowance"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "amount"; - readonly type: "uint256"; - }]; - readonly name: "mint"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "name"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "symbol"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "totalSupply"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "amount"; - readonly type: "uint256"; - }]; - readonly name: "transfer"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "amount"; - readonly type: "uint256"; - }]; - readonly name: "transferFrom"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): ERC20MockInterface; - static connect(address: string, runner?: ContractRunner | null): ERC20Mock; -} -export {}; -//# sourceMappingURL=ERC20Mock__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/ERC20Mock__factory.d.ts.map b/dist/types/factories/contracts/mocks/ERC20Mock__factory.d.ts.map deleted file mode 100644 index 9d83778e..00000000 --- a/dist/types/factories/contracts/mocks/ERC20Mock__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ERC20Mock__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/mocks/ERC20Mock__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,KAAK,EACV,SAAS,EACT,kBAAkB,EACnB,MAAM,oCAAoC,CAAC;AAwS5C,aAAK,0BAA0B,GAC3B,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,kBAAmB,SAAQ,eAAe;gBACzC,GAAG,IAAI,EAAE,0BAA0B;IAQtC,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,kBAAkB;IAInE,MAAM,CAAC,QAAQ,CAAC,QAAQ,06KAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,kBAAkB;IAG5C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,SAAS;CAG3E"} \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/ERC20Mock__factory.js b/dist/types/factories/contracts/mocks/ERC20Mock__factory.js deleted file mode 100644 index cecd6cae..00000000 --- a/dist/types/factories/contracts/mocks/ERC20Mock__factory.js +++ /dev/null @@ -1,324 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ERC20Mock__factory = void 0; -const ethers_1 = require("ethers"); -const _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: [ - { - 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: [ - { - 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: "account", - type: "address", - }, - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - ], - name: "mint", - outputs: [], - stateMutability: "nonpayable", - 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", - }, -]; -const _bytecode = "0x608060405234801561001057600080fd5b5060408051602080820183526000808352835191820190935291825290600361003983826100ed565b50600461004682826100ed565b5050506101ac565b634e487b7160e01b600052604160045260246000fd5b600181811c9082168061007857607f821691505b60208210810361009857634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156100e857600081815260208120601f850160051c810160208610156100c55750805b601f850160051c820191505b818110156100e4578281556001016100d1565b5050505b505050565b81516001600160401b038111156101065761010661004e565b61011a816101148454610064565b8461009e565b602080601f83116001811461014f57600084156101375750858301515b600019600386901b1c1916600185901b1785556100e4565b600085815260208120601f198616915b8281101561017e5788860151825594840194600190910190840161015f565b508582101561019c5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b610916806101bb6000396000f3fe608060405234801561001057600080fd5b50600436106100b45760003560e01c806340c10f191161007157806340c10f191461014157806370a082311461015657806395d89b411461017f578063a457c2d714610187578063a9059cbb1461019a578063dd62ed3e146101ad57600080fd5b806306fdde03146100b9578063095ea7b3146100d757806318160ddd146100fa57806323b872dd1461010c578063313ce5671461011f578063395093511461012e575b600080fd5b6100c16101c0565b6040516100ce9190610789565b60405180910390f35b6100ea6100e53660046107f3565b610252565b60405190151581526020016100ce565b6002545b6040519081526020016100ce565b6100ea61011a36600461081d565b61026c565b604051601281526020016100ce565b6100ea61013c3660046107f3565b610290565b61015461014f3660046107f3565b6102b2565b005b6100fe610164366004610859565b6001600160a01b031660009081526020819052604090205490565b6100c16102c0565b6100ea6101953660046107f3565b6102cf565b6100ea6101a83660046107f3565b61034f565b6100fe6101bb36600461087b565b61035d565b6060600380546101cf906108ae565b80601f01602080910402602001604051908101604052809291908181526020018280546101fb906108ae565b80156102485780601f1061021d57610100808354040283529160200191610248565b820191906000526020600020905b81548152906001019060200180831161022b57829003601f168201915b5050505050905090565b600033610260818585610388565b60019150505b92915050565b60003361027a8582856104ac565b610285858585610526565b506001949350505050565b6000336102608185856102a3838361035d565b6102ad91906108e8565b610388565b6102bc82826106ca565b5050565b6060600480546101cf906108ae565b600033816102dd828661035d565b9050838110156103425760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b6102858286868403610388565b600033610260818585610526565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6001600160a01b0383166103ea5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610339565b6001600160a01b03821661044b5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610339565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b60006104b8848461035d565b9050600019811461052057818110156105135760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610339565b6105208484848403610388565b50505050565b6001600160a01b03831661058a5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610339565b6001600160a01b0382166105ec5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610339565b6001600160a01b038316600090815260208190526040902054818110156106645760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610339565b6001600160a01b03848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3610520565b6001600160a01b0382166107205760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606401610339565b806002600082825461073291906108e8565b90915550506001600160a01b038216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b600060208083528351808285015260005b818110156107b65785810183015185820160400152820161079a565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146107ee57600080fd5b919050565b6000806040838503121561080657600080fd5b61080f836107d7565b946020939093013593505050565b60008060006060848603121561083257600080fd5b61083b846107d7565b9250610849602085016107d7565b9150604084013590509250925092565b60006020828403121561086b57600080fd5b610874826107d7565b9392505050565b6000806040838503121561088e57600080fd5b610897836107d7565b91506108a5602084016107d7565b90509250929050565b600181811c908216806108c257607f821691505b6020821081036108e257634e487b7160e01b600052602260045260246000fd5b50919050565b8082018082111561026657634e487b7160e01b600052601160045260246000fdfea164736f6c6343000811000a"; -const isSuperArgs = (xs) => xs.length > 1; -class ERC20Mock__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(overrides) { - return super.getDeployTransaction(overrides || {}); - } - deploy(overrides) { - return super.deploy(overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.ERC20Mock__factory = ERC20Mock__factory; -ERC20Mock__factory.bytecode = _bytecode; -ERC20Mock__factory.abi = _abi; diff --git a/dist/types/factories/contracts/mocks/ERC20UnsafeMock__factory.d.ts b/dist/types/factories/contracts/mocks/ERC20UnsafeMock__factory.d.ts deleted file mode 100644 index 2a7b58ff..00000000 --- a/dist/types/factories/contracts/mocks/ERC20UnsafeMock__factory.d.ts +++ /dev/null @@ -1,243 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../common"; -import type { ERC20UnsafeMock, ERC20UnsafeMockInterface } from "../../../contracts/mocks/ERC20UnsafeMock"; -declare type ERC20UnsafeMockConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class ERC20UnsafeMock__factory extends ContractFactory { - constructor(...args: ERC20UnsafeMockConstructorParams); - getDeployTransaction(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): ERC20UnsafeMock__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b5060408051602080820183526000808352835191820190935291825290600361003983826100ed565b50600461004682826100ed565b5050506101ac565b634e487b7160e01b600052604160045260246000fd5b600181811c9082168061007857607f821691505b60208210810361009857634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156100e857600081815260208120601f850160051c810160208610156100c55750805b601f850160051c820191505b818110156100e4578281556001016100d1565b5050505b505050565b81516001600160401b038111156101065761010661004e565b61011a816101148454610064565b8461009e565b602080601f83116001811461014f57600084156101375750858301515b600019600386901b1c1916600185901b1785556100e4565b600085815260208120601f198616915b8281101561017e5788860151825594840194600190910190840161015f565b508582101561019c5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b610944806101bb6000396000f3fe608060405234801561001057600080fd5b50600436106100b45760003560e01c806340c10f191161007157806340c10f191461014157806370a082311461015657806395d89b411461017f578063a457c2d714610187578063a9059cbb1461019a578063dd62ed3e146101ad57600080fd5b806306fdde03146100b9578063095ea7b3146100d757806318160ddd146100fa57806323b872dd1461010c578063313ce5671461011f578063395093511461012e575b600080fd5b6100c16101c0565b6040516100ce91906107b7565b60405180910390f35b6100ea6100e5366004610821565b610252565b60405190151581526020016100ce565b6002545b6040519081526020016100ce565b6100ea61011a36600461084b565b61026c565b604051601281526020016100ce565b6100ea61013c366004610821565b610284565b61015461014f366004610821565b6102a6565b005b6100fe610164366004610887565b6001600160a01b031660009081526020819052604090205490565b6100c16102b4565b6100ea610195366004610821565b6102c3565b6100ea6101a8366004610821565b61034e565b6100fe6101bb3660046108a9565b610364565b6060600380546101cf906108dc565b80601f01602080910402602001604051908101604052809291908181526020018280546101fb906108dc565b80156102485780601f1061021d57610100808354040283529160200191610248565b820191906000526020600020905b81548152906001019060200180831161022b57829003601f168201915b5050505050905090565b60003361026081858561038f565b60019150505b92915050565b60006102798484846104b3565b506000949350505050565b6000336102608185856102978383610364565b6102a19190610916565b61038f565b6102b082826104cc565b5050565b6060600480546101cf906108dc565b600033816102d18286610364565b9050838110156103365760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b610343828686840361038f565b506001949350505050565b600061035a838361058b565b5060009392505050565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6001600160a01b0383166103f15760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161032d565b6001600160a01b0382166104525760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161032d565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6000336104c1858285610599565b610343858585610613565b6001600160a01b0382166105225760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640161032d565b80600260008282546105349190610916565b90915550506001600160a01b038216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b600033610260818585610613565b60006105a58484610364565b9050600019811461060d57818110156106005760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161032d565b61060d848484840361038f565b50505050565b6001600160a01b0383166106775760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161032d565b6001600160a01b0382166106d95760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161032d565b6001600160a01b038316600090815260208190526040902054818110156107515760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161032d565b6001600160a01b03848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a361060d565b600060208083528351808285015260005b818110156107e4578581018301518582016040015282016107c8565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b038116811461081c57600080fd5b919050565b6000806040838503121561083457600080fd5b61083d83610805565b946020939093013593505050565b60008060006060848603121561086057600080fd5b61086984610805565b925061087760208501610805565b9150604084013590509250925092565b60006020828403121561089957600080fd5b6108a282610805565b9392505050565b600080604083850312156108bc57600080fd5b6108c583610805565b91506108d360208401610805565b90509250929050565b600181811c908216806108f057607f821691505b60208210810361091057634e487b7160e01b600052602260045260246000fd5b50919050565b8082018082111561026657634e487b7160e01b600052601160045260246000fdfea164736f6c6343000811000a"; - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "spender"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "value"; - readonly type: "uint256"; - }]; - readonly name: "Approval"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "value"; - readonly type: "uint256"; - }]; - readonly name: "Transfer"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "spender"; - readonly type: "address"; - }]; - readonly name: "allowance"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "spender"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "amount"; - readonly type: "uint256"; - }]; - readonly name: "approve"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "balanceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "decimals"; - readonly outputs: readonly [{ - readonly internalType: "uint8"; - readonly name: ""; - readonly type: "uint8"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "spender"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "subtractedValue"; - readonly type: "uint256"; - }]; - readonly name: "decreaseAllowance"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "spender"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "addedValue"; - readonly type: "uint256"; - }]; - readonly name: "increaseAllowance"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "amount"; - readonly type: "uint256"; - }]; - readonly name: "mint"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "name"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "symbol"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "totalSupply"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "value"; - readonly type: "uint256"; - }]; - readonly name: "transfer"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "value"; - readonly type: "uint256"; - }]; - readonly name: "transferFrom"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): ERC20UnsafeMockInterface; - static connect(address: string, runner?: ContractRunner | null): ERC20UnsafeMock; -} -export {}; -//# sourceMappingURL=ERC20UnsafeMock__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/ERC20UnsafeMock__factory.d.ts.map b/dist/types/factories/contracts/mocks/ERC20UnsafeMock__factory.d.ts.map deleted file mode 100644 index c2ff96ed..00000000 --- a/dist/types/factories/contracts/mocks/ERC20UnsafeMock__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ERC20UnsafeMock__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/mocks/ERC20UnsafeMock__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,KAAK,EACV,eAAe,EACf,wBAAwB,EACzB,MAAM,0CAA0C,CAAC;AAwSlD,aAAK,gCAAgC,GACjC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,wBAAyB,SAAQ,eAAe;gBAC/C,GAAG,IAAI,EAAE,gCAAgC;IAQ5C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,wBAAwB;IAIzE,MAAM,CAAC,QAAQ,CAAC,QAAQ,sgLAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,wBAAwB;IAGlD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,eAAe;CAGnB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/ERC20UnsafeMock__factory.js b/dist/types/factories/contracts/mocks/ERC20UnsafeMock__factory.js deleted file mode 100644 index 8ae9ffeb..00000000 --- a/dist/types/factories/contracts/mocks/ERC20UnsafeMock__factory.js +++ /dev/null @@ -1,324 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ERC20UnsafeMock__factory = void 0; -const ethers_1 = require("ethers"); -const _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: [ - { - 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: [ - { - 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: "account", - type: "address", - }, - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - ], - name: "mint", - outputs: [], - stateMutability: "nonpayable", - 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: "value", - 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: "value", - type: "uint256", - }, - ], - name: "transferFrom", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, -]; -const _bytecode = "0x608060405234801561001057600080fd5b5060408051602080820183526000808352835191820190935291825290600361003983826100ed565b50600461004682826100ed565b5050506101ac565b634e487b7160e01b600052604160045260246000fd5b600181811c9082168061007857607f821691505b60208210810361009857634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156100e857600081815260208120601f850160051c810160208610156100c55750805b601f850160051c820191505b818110156100e4578281556001016100d1565b5050505b505050565b81516001600160401b038111156101065761010661004e565b61011a816101148454610064565b8461009e565b602080601f83116001811461014f57600084156101375750858301515b600019600386901b1c1916600185901b1785556100e4565b600085815260208120601f198616915b8281101561017e5788860151825594840194600190910190840161015f565b508582101561019c5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b610944806101bb6000396000f3fe608060405234801561001057600080fd5b50600436106100b45760003560e01c806340c10f191161007157806340c10f191461014157806370a082311461015657806395d89b411461017f578063a457c2d714610187578063a9059cbb1461019a578063dd62ed3e146101ad57600080fd5b806306fdde03146100b9578063095ea7b3146100d757806318160ddd146100fa57806323b872dd1461010c578063313ce5671461011f578063395093511461012e575b600080fd5b6100c16101c0565b6040516100ce91906107b7565b60405180910390f35b6100ea6100e5366004610821565b610252565b60405190151581526020016100ce565b6002545b6040519081526020016100ce565b6100ea61011a36600461084b565b61026c565b604051601281526020016100ce565b6100ea61013c366004610821565b610284565b61015461014f366004610821565b6102a6565b005b6100fe610164366004610887565b6001600160a01b031660009081526020819052604090205490565b6100c16102b4565b6100ea610195366004610821565b6102c3565b6100ea6101a8366004610821565b61034e565b6100fe6101bb3660046108a9565b610364565b6060600380546101cf906108dc565b80601f01602080910402602001604051908101604052809291908181526020018280546101fb906108dc565b80156102485780601f1061021d57610100808354040283529160200191610248565b820191906000526020600020905b81548152906001019060200180831161022b57829003601f168201915b5050505050905090565b60003361026081858561038f565b60019150505b92915050565b60006102798484846104b3565b506000949350505050565b6000336102608185856102978383610364565b6102a19190610916565b61038f565b6102b082826104cc565b5050565b6060600480546101cf906108dc565b600033816102d18286610364565b9050838110156103365760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b610343828686840361038f565b506001949350505050565b600061035a838361058b565b5060009392505050565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6001600160a01b0383166103f15760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161032d565b6001600160a01b0382166104525760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161032d565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6000336104c1858285610599565b610343858585610613565b6001600160a01b0382166105225760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640161032d565b80600260008282546105349190610916565b90915550506001600160a01b038216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b600033610260818585610613565b60006105a58484610364565b9050600019811461060d57818110156106005760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161032d565b61060d848484840361038f565b50505050565b6001600160a01b0383166106775760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161032d565b6001600160a01b0382166106d95760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161032d565b6001600160a01b038316600090815260208190526040902054818110156107515760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161032d565b6001600160a01b03848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a361060d565b600060208083528351808285015260005b818110156107e4578581018301518582016040015282016107c8565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b038116811461081c57600080fd5b919050565b6000806040838503121561083457600080fd5b61083d83610805565b946020939093013593505050565b60008060006060848603121561086057600080fd5b61086984610805565b925061087760208501610805565b9150604084013590509250925092565b60006020828403121561089957600080fd5b6108a282610805565b9392505050565b600080604083850312156108bc57600080fd5b6108c583610805565b91506108d360208401610805565b90509250929050565b600181811c908216806108f057607f821691505b60208210810361091057634e487b7160e01b600052602260045260246000fd5b50919050565b8082018082111561026657634e487b7160e01b600052601160045260246000fdfea164736f6c6343000811000a"; -const isSuperArgs = (xs) => xs.length > 1; -class ERC20UnsafeMock__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(overrides) { - return super.getDeployTransaction(overrides || {}); - } - deploy(overrides) { - return super.deploy(overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.ERC20UnsafeMock__factory = ERC20UnsafeMock__factory; -ERC20UnsafeMock__factory.bytecode = _bytecode; -ERC20UnsafeMock__factory.abi = _abi; diff --git a/dist/types/factories/contracts/mocks/ERC2771ContextMock__factory.d.ts b/dist/types/factories/contracts/mocks/ERC2771ContextMock__factory.d.ts deleted file mode 100644 index cb032491..00000000 --- a/dist/types/factories/contracts/mocks/ERC2771ContextMock__factory.d.ts +++ /dev/null @@ -1,97 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../common"; -import type { ERC2771ContextMock, ERC2771ContextMockInterface } from "../../../contracts/mocks/ERC2771ContextMock"; -declare type ERC2771ContextMockConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class ERC2771ContextMock__factory extends ContractFactory { - constructor(...args: ERC2771ContextMockConstructorParams); - getDeployTransaction(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): ERC2771ContextMock__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b5061053a806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c8063572b6c0514610067578063c04062261461008f578063c4c2bfdc146100ce578063c4d66de8146100e4578063d737d0c7146100f9578063f4b06cd814610119575b600080fd5b61007a6100753660046103e4565b61012f565b60405190151581526020015b60405180910390f35b604080518082018252601781527f45524332373731436f6e746578744d6f636b3a2072756e000000000000000000602082015290516100869190610414565b6100d6610162565b604051610086929190610462565b6100f76100f23660046103e4565b610175565b005b61010161028d565b6040516001600160a01b039091168152602001610086565b61012161029c565b604051908152602001610086565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546001600160a01b0390811691161490565b36600061016d6102a6565b915091509091565b600054610100900460ff16158080156101955750600054600160ff909116105b806101af5750303b1580156101af575060005460ff166001145b6102175760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff19166001179055801561023a576000805461ff0019166101001790555b610243826102db565b8015610289576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050565b6000610297610316565b905090565b600061029761033b565b3660006102b23361012f565b156102d357600080366102c6603482610491565b9261016d939291906104b8565b60003661016d565b600054610100900460ff166103025760405162461bcd60e51b815260040161020e906104e2565b61030a610355565b6103138161037e565b50565b60006103213361012f565b15610333575060331936013560601c90565b503390565b90565b60006103463361012f565b156103385750601f1936013590565b600054610100900460ff1661037c5760405162461bcd60e51b815260040161020e906104e2565b565b600054610100900460ff166103a55760405162461bcd60e51b815260040161020e906104e2565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e80546001600160a01b0319166001600160a01b038316179055610313565b6000602082840312156103f657600080fd5b81356001600160a01b038116811461040d57600080fd5b9392505050565b600060208083528351808285015260005b8181101561044157858101830151858201604001528201610425565b506000604082860101526040601f19601f8301168501019250505092915050565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b818103818111156104b257634e487b7160e01b600052601160045260246000fd5b92915050565b600080858511156104c857600080fd5b838611156104d557600080fd5b5050820193919092039150565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b60608201526080019056fea164736f6c6343000811000a"; - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "uint8"; - readonly name: "version"; - readonly type: "uint8"; - }]; - readonly name: "Initialized"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "forwarder"; - readonly type: "address"; - }]; - readonly name: "initialize"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "forwarder"; - readonly type: "address"; - }]; - readonly name: "isTrustedForwarder"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "msgData"; - readonly outputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "msgSender"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "msgToken"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "run"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "pure"; - readonly type: "function"; - }]; - static createInterface(): ERC2771ContextMockInterface; - static connect(address: string, runner?: ContractRunner | null): ERC2771ContextMock; -} -export {}; -//# sourceMappingURL=ERC2771ContextMock__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/ERC2771ContextMock__factory.d.ts.map b/dist/types/factories/contracts/mocks/ERC2771ContextMock__factory.d.ts.map deleted file mode 100644 index 83e3095f..00000000 --- a/dist/types/factories/contracts/mocks/ERC2771ContextMock__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ERC2771ContextMock__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/mocks/ERC2771ContextMock__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,KAAK,EACV,kBAAkB,EAClB,2BAA2B,EAC5B,MAAM,6CAA6C,CAAC;AAyGrD,aAAK,mCAAmC,GACpC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,2BAA4B,SAAQ,eAAe;gBAClD,GAAG,IAAI,EAAE,mCAAmC;IAQ/C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,2BAA2B;IAI5E,MAAM,CAAC,QAAQ,CAAC,QAAQ,4rFAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,2BAA2B;IAGrD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,kBAAkB;CAGtB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/ERC2771ContextMock__factory.js b/dist/types/factories/contracts/mocks/ERC2771ContextMock__factory.js deleted file mode 100644 index 8a7493ae..00000000 --- a/dist/types/factories/contracts/mocks/ERC2771ContextMock__factory.js +++ /dev/null @@ -1,133 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ERC2771ContextMock__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint8", - name: "version", - type: "uint8", - }, - ], - name: "Initialized", - type: "event", - }, - { - inputs: [ - { - internalType: "address", - name: "forwarder", - type: "address", - }, - ], - name: "initialize", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "forwarder", - type: "address", - }, - ], - name: "isTrustedForwarder", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "msgData", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "msgSender", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "msgToken", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "run", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "pure", - type: "function", - }, -]; -const _bytecode = "0x608060405234801561001057600080fd5b5061053a806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c8063572b6c0514610067578063c04062261461008f578063c4c2bfdc146100ce578063c4d66de8146100e4578063d737d0c7146100f9578063f4b06cd814610119575b600080fd5b61007a6100753660046103e4565b61012f565b60405190151581526020015b60405180910390f35b604080518082018252601781527f45524332373731436f6e746578744d6f636b3a2072756e000000000000000000602082015290516100869190610414565b6100d6610162565b604051610086929190610462565b6100f76100f23660046103e4565b610175565b005b61010161028d565b6040516001600160a01b039091168152602001610086565b61012161029c565b604051908152602001610086565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546001600160a01b0390811691161490565b36600061016d6102a6565b915091509091565b600054610100900460ff16158080156101955750600054600160ff909116105b806101af5750303b1580156101af575060005460ff166001145b6102175760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff19166001179055801561023a576000805461ff0019166101001790555b610243826102db565b8015610289576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050565b6000610297610316565b905090565b600061029761033b565b3660006102b23361012f565b156102d357600080366102c6603482610491565b9261016d939291906104b8565b60003661016d565b600054610100900460ff166103025760405162461bcd60e51b815260040161020e906104e2565b61030a610355565b6103138161037e565b50565b60006103213361012f565b15610333575060331936013560601c90565b503390565b90565b60006103463361012f565b156103385750601f1936013590565b600054610100900460ff1661037c5760405162461bcd60e51b815260040161020e906104e2565b565b600054610100900460ff166103a55760405162461bcd60e51b815260040161020e906104e2565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e80546001600160a01b0319166001600160a01b038316179055610313565b6000602082840312156103f657600080fd5b81356001600160a01b038116811461040d57600080fd5b9392505050565b600060208083528351808285015260005b8181101561044157858101830151858201604001528201610425565b506000604082860101526040601f19601f8301168501019250505092915050565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b818103818111156104b257634e487b7160e01b600052601160045260246000fd5b92915050565b600080858511156104c857600080fd5b838611156104d557600080fd5b5050820193919092039150565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b60608201526080019056fea164736f6c6343000811000a"; -const isSuperArgs = (xs) => xs.length > 1; -class ERC2771ContextMock__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(overrides) { - return super.getDeployTransaction(overrides || {}); - } - deploy(overrides) { - return super.deploy(overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.ERC2771ContextMock__factory = ERC2771ContextMock__factory; -ERC2771ContextMock__factory.bytecode = _bytecode; -ERC2771ContextMock__factory.abi = _abi; diff --git a/dist/types/factories/contracts/mocks/ERC2771RegistryContextMock__factory.d.ts b/dist/types/factories/contracts/mocks/ERC2771RegistryContextMock__factory.d.ts deleted file mode 100644 index a8119dca..00000000 --- a/dist/types/factories/contracts/mocks/ERC2771RegistryContextMock__factory.d.ts +++ /dev/null @@ -1,101 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../common"; -import type { ERC2771RegistryContextMock, ERC2771RegistryContextMockInterface } from "../../../contracts/mocks/ERC2771RegistryContextMock"; -declare type ERC2771RegistryContextMockConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class ERC2771RegistryContextMock__factory extends ContractFactory { - constructor(...args: ERC2771RegistryContextMockConstructorParams); - getDeployTransaction(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): ERC2771RegistryContextMock__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b50610562806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c806309c5eabe14610067578063572b6c05146100915780638129fc1c146100bd578063c4c2bfdc146100c7578063d737d0c7146100dd578063f4b06cd8146100fd575b600080fd5b61007a610075366004610380565b610113565b6040516100889291906103f2565b60405180910390f35b6100ad61009f36600461044a565b6001600160a01b0316301490565b6040519015158152602001610088565b6100c561017f565b005b6100cf610295565b60405161008892919061047a565b6100e56102a8565b6040516001600160a01b039091168152602001610088565b6101056102b7565b604051908152602001610088565b60006060306001600160a01b031684846040516101319291906104a9565b6000604051808303816000865af19150503d806000811461016e576040519150601f19603f3d011682016040523d82523d6000602084013e610173565b606091505b50915091509250929050565b600054610100900460ff161580801561019f5750600054600160ff909116105b806101b95750303b1580156101b9575060005460ff166001145b6102215760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff191660011790558015610244576000805461ff0019166101001790555b61024c6102c1565b8015610292576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50565b3660006102a06102fa565b915091509091565b60006102b2610328565b905090565b60006102b2610346565b600054610100900460ff166102e85760405162461bcd60e51b8152600401610218906104b9565b6102f0610359565b6102f8610359565b565b3660003033036103205760008036610313603482610504565b926102a09392919061052b565b6000366102a0565b600030330361033e575060331936013560601c90565b503390565b90565b60003033036103435750601f1936013590565b600054610100900460ff166102f85760405162461bcd60e51b8152600401610218906104b9565b6000806020838503121561039357600080fd5b823567ffffffffffffffff808211156103ab57600080fd5b818501915085601f8301126103bf57600080fd5b8135818111156103ce57600080fd5b8660208285010111156103e057600080fd5b60209290920196919550909350505050565b821515815260006020604081840152835180604085015260005b818110156104285785810183015185820160600152820161040c565b506000606082860101526060601f19601f830116850101925050509392505050565b60006020828403121561045c57600080fd5b81356001600160a01b038116811461047357600080fd5b9392505050565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b8183823760009101908152919050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b8181038181111561052557634e487b7160e01b600052601160045260246000fd5b92915050565b6000808585111561053b57600080fd5b8386111561054857600080fd5b505082019391909203915056fea164736f6c6343000811000a"; - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "uint8"; - readonly name: "version"; - readonly type: "uint8"; - }]; - readonly name: "Initialized"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "execute"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }, { - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "initialize"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "forwarder"; - readonly type: "address"; - }]; - readonly name: "isTrustedForwarder"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "msgData"; - readonly outputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "msgSender"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "msgToken"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): ERC2771RegistryContextMockInterface; - static connect(address: string, runner?: ContractRunner | null): ERC2771RegistryContextMock; -} -export {}; -//# sourceMappingURL=ERC2771RegistryContextMock__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/ERC2771RegistryContextMock__factory.d.ts.map b/dist/types/factories/contracts/mocks/ERC2771RegistryContextMock__factory.d.ts.map deleted file mode 100644 index 1b78cfcd..00000000 --- a/dist/types/factories/contracts/mocks/ERC2771RegistryContextMock__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ERC2771RegistryContextMock__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/mocks/ERC2771RegistryContextMock__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,KAAK,EACV,0BAA0B,EAC1B,mCAAmC,EACpC,MAAM,qDAAqD,CAAC;AA8G7D,aAAK,2CAA2C,GAC5C,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,mCAAoC,SAAQ,eAAe;gBAC1D,GAAG,IAAI,EAAE,2CAA2C;IAQvD,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CACd,MAAM,EAAE,cAAc,GAAG,IAAI,GAC5B,mCAAmC;IAItC,MAAM,CAAC,QAAQ,CAAC,QAAQ,4wFAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,mCAAmC;IAG7D,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,0BAA0B;CAO9B"} \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/ERC2771RegistryContextMock__factory.js b/dist/types/factories/contracts/mocks/ERC2771RegistryContextMock__factory.js deleted file mode 100644 index 43f780fb..00000000 --- a/dist/types/factories/contracts/mocks/ERC2771RegistryContextMock__factory.js +++ /dev/null @@ -1,138 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ERC2771RegistryContextMock__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint8", - name: "version", - type: "uint8", - }, - ], - name: "Initialized", - type: "event", - }, - { - inputs: [ - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "execute", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "initialize", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "forwarder", - type: "address", - }, - ], - name: "isTrustedForwarder", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "msgData", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "msgSender", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "msgToken", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -const _bytecode = "0x608060405234801561001057600080fd5b50610562806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c806309c5eabe14610067578063572b6c05146100915780638129fc1c146100bd578063c4c2bfdc146100c7578063d737d0c7146100dd578063f4b06cd8146100fd575b600080fd5b61007a610075366004610380565b610113565b6040516100889291906103f2565b60405180910390f35b6100ad61009f36600461044a565b6001600160a01b0316301490565b6040519015158152602001610088565b6100c561017f565b005b6100cf610295565b60405161008892919061047a565b6100e56102a8565b6040516001600160a01b039091168152602001610088565b6101056102b7565b604051908152602001610088565b60006060306001600160a01b031684846040516101319291906104a9565b6000604051808303816000865af19150503d806000811461016e576040519150601f19603f3d011682016040523d82523d6000602084013e610173565b606091505b50915091509250929050565b600054610100900460ff161580801561019f5750600054600160ff909116105b806101b95750303b1580156101b9575060005460ff166001145b6102215760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff191660011790558015610244576000805461ff0019166101001790555b61024c6102c1565b8015610292576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50565b3660006102a06102fa565b915091509091565b60006102b2610328565b905090565b60006102b2610346565b600054610100900460ff166102e85760405162461bcd60e51b8152600401610218906104b9565b6102f0610359565b6102f8610359565b565b3660003033036103205760008036610313603482610504565b926102a09392919061052b565b6000366102a0565b600030330361033e575060331936013560601c90565b503390565b90565b60003033036103435750601f1936013590565b600054610100900460ff166102f85760405162461bcd60e51b8152600401610218906104b9565b6000806020838503121561039357600080fd5b823567ffffffffffffffff808211156103ab57600080fd5b818501915085601f8301126103bf57600080fd5b8135818111156103ce57600080fd5b8660208285010111156103e057600080fd5b60209290920196919550909350505050565b821515815260006020604081840152835180604085015260005b818110156104285785810183015185820160600152820161040c565b506000606082860101526060601f19601f830116850101925050509392505050565b60006020828403121561045c57600080fd5b81356001600160a01b038116811461047357600080fd5b9392505050565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b8183823760009101908152919050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b8181038181111561052557634e487b7160e01b600052601160045260246000fd5b92915050565b6000808585111561053b57600080fd5b8386111561054857600080fd5b505082019391909203915056fea164736f6c6343000811000a"; -const isSuperArgs = (xs) => xs.length > 1; -class ERC2771RegistryContextMock__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(overrides) { - return super.getDeployTransaction(overrides || {}); - } - deploy(overrides) { - return super.deploy(overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.ERC2771RegistryContextMock__factory = ERC2771RegistryContextMock__factory; -ERC2771RegistryContextMock__factory.bytecode = _bytecode; -ERC2771RegistryContextMock__factory.abi = _abi; diff --git a/dist/types/factories/contracts/mocks/ERC721Mock__factory.d.ts b/dist/types/factories/contracts/mocks/ERC721Mock__factory.d.ts deleted file mode 100644 index 7ed21133..00000000 --- a/dist/types/factories/contracts/mocks/ERC721Mock__factory.d.ts +++ /dev/null @@ -1,295 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../common"; -import type { ERC721Mock, ERC721MockInterface } from "../../../contracts/mocks/ERC721Mock"; -declare type ERC721MockConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class ERC721Mock__factory extends ContractFactory { - constructor(...args: ERC721MockConstructorParams); - getDeployTransaction(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): ERC721Mock__factory; - static readonly bytecode = "0x60806040523480156200001157600080fd5b5060408051602080820183526000808352835191820190935282815290916200003b8382620000f8565b5060016200004a8282620000f8565b505050620001c4565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200007e57607f821691505b6020821081036200009f57634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620000f357600081815260208120601f850160051c81016020861015620000ce5750805b601f850160051c820191505b81811015620000ef57828155600101620000da565b5050505b505050565b81516001600160401b0381111562000114576200011462000053565b6200012c8162000125845462000069565b84620000a5565b602080601f8311600181146200016457600084156200014b5750858301515b600019600386901b1c1916600185901b178555620000ef565b600085815260208120601f198616915b82811015620001955788860151825594840194600190910190840162000174565b5085821015620001b45787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6112da80620001d46000396000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c80636352211e1161008c578063a22cb46511610066578063a22cb465146101e1578063b88d4fde146101f4578063c87b56dd14610207578063e985e9c51461021a57600080fd5b80636352211e146101a557806370a08231146101b857806395d89b41146101d957600080fd5b8063095ea7b3116100c8578063095ea7b31461015757806323b872dd1461016c57806340c10f191461017f57806342842e0e1461019257600080fd5b806301ffc9a7146100ef57806306fdde0314610117578063081812fc1461012c575b600080fd5b6101026100fd366004610e8f565b610256565b60405190151581526020015b60405180910390f35b61011f6102a8565b60405161010e9190610efc565b61013f61013a366004610f0f565b61033a565b6040516001600160a01b03909116815260200161010e565b61016a610165366004610f44565b610361565b005b61016a61017a366004610f6e565b61047b565b61016a61018d366004610f44565b6104ac565b61016a6101a0366004610f6e565b6104ba565b61013f6101b3366004610f0f565b6104d5565b6101cb6101c6366004610faa565b610535565b60405190815260200161010e565b61011f6105bb565b61016a6101ef366004610fc5565b6105ca565b61016a610202366004611017565b6105d5565b61011f610215366004610f0f565b61060d565b6101026102283660046110f3565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b60006001600160e01b031982166380ac58cd60e01b148061028757506001600160e01b03198216635b5e139f60e01b145b806102a257506301ffc9a760e01b6001600160e01b03198316145b92915050565b6060600080546102b790611126565b80601f01602080910402602001604051908101604052809291908181526020018280546102e390611126565b80156103305780601f1061030557610100808354040283529160200191610330565b820191906000526020600020905b81548152906001019060200180831161031357829003601f168201915b5050505050905090565b600061034582610681565b506000908152600460205260409020546001600160a01b031690565b600061036c826104d5565b9050806001600160a01b0316836001600160a01b0316036103de5760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084015b60405180910390fd5b336001600160a01b03821614806103fa57506103fa8133610228565b61046c5760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016103d5565b61047683836106e3565b505050565b6104853382610751565b6104a15760405162461bcd60e51b81526004016103d590611160565b6104768383836107d0565b6104b68282610934565b5050565b610476838383604051806020016040528060008152506105d5565b6000818152600260205260408120546001600160a01b0316806102a25760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016103d5565b60006001600160a01b03821661059f5760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b60648201526084016103d5565b506001600160a01b031660009081526003602052604090205490565b6060600180546102b790611126565b6104b633838361094e565b6105df3383610751565b6105fb5760405162461bcd60e51b81526004016103d590611160565b61060784848484610a1c565b50505050565b606061061882610681565b600061062f60408051602081019091526000815290565b9050600081511161064f576040518060200160405280600081525061067a565b8061065984610a4f565b60405160200161066a9291906111ad565b6040516020818303038152906040525b9392505050565b6000818152600260205260409020546001600160a01b03166106e05760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016103d5565b50565b600081815260046020526040902080546001600160a01b0319166001600160a01b0384169081179091558190610718826104d5565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60008061075d836104d5565b9050806001600160a01b0316846001600160a01b031614806107a457506001600160a01b0380821660009081526005602090815260408083209388168352929052205460ff165b806107c85750836001600160a01b03166107bd8461033a565b6001600160a01b0316145b949350505050565b826001600160a01b03166107e3826104d5565b6001600160a01b0316146108095760405162461bcd60e51b81526004016103d5906111dc565b6001600160a01b03821661086b5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b60648201526084016103d5565b826001600160a01b031661087e826104d5565b6001600160a01b0316146108a45760405162461bcd60e51b81526004016103d5906111dc565b600081815260046020908152604080832080546001600160a01b03199081169091556001600160a01b0387811680865260038552838620805460001901905590871680865283862080546001019055868652600290945282852080549092168417909155905184937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6104b6828260405180602001604052806000815250610ae2565b816001600160a01b0316836001600160a01b0316036109af5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c65720000000000000060448201526064016103d5565b6001600160a01b03838116600081815260056020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b610a278484846107d0565b610a3384848484610b15565b6106075760405162461bcd60e51b81526004016103d590611221565b60606000610a5c83610c16565b600101905060008167ffffffffffffffff811115610a7c57610a7c611001565b6040519080825280601f01601f191660200182016040528015610aa6576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a8504945084610ab057509392505050565b610aec8383610cee565b610af96000848484610b15565b6104765760405162461bcd60e51b81526004016103d590611221565b60006001600160a01b0384163b15610c0b57604051630a85bd0160e11b81526001600160a01b0385169063150b7a0290610b59903390899088908890600401611273565b6020604051808303816000875af1925050508015610b94575060408051601f3d908101601f19168201909252610b91918101906112b0565b60015b610bf1573d808015610bc2576040519150601f19603f3d011682016040523d82523d6000602084013e610bc7565b606091505b508051600003610be95760405162461bcd60e51b81526004016103d590611221565b805181602001fd5b6001600160e01b031916630a85bd0160e11b1490506107c8565b506001949350505050565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b8310610c555772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef81000000008310610c81576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc100008310610c9f57662386f26fc10000830492506010015b6305f5e1008310610cb7576305f5e100830492506008015b6127108310610ccb57612710830492506004015b60648310610cdd576064830492506002015b600a83106102a25760010192915050565b6001600160a01b038216610d445760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f206164647265737360448201526064016103d5565b6000818152600260205260409020546001600160a01b031615610da95760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016103d5565b6000818152600260205260409020546001600160a01b031615610e0e5760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016103d5565b6001600160a01b038216600081815260036020908152604080832080546001019055848352600290915280822080546001600160a01b0319168417905551839291907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b6001600160e01b0319811681146106e057600080fd5b600060208284031215610ea157600080fd5b813561067a81610e79565b60005b83811015610ec7578181015183820152602001610eaf565b50506000910152565b60008151808452610ee8816020860160208601610eac565b601f01601f19169290920160200192915050565b60208152600061067a6020830184610ed0565b600060208284031215610f2157600080fd5b5035919050565b80356001600160a01b0381168114610f3f57600080fd5b919050565b60008060408385031215610f5757600080fd5b610f6083610f28565b946020939093013593505050565b600080600060608486031215610f8357600080fd5b610f8c84610f28565b9250610f9a60208501610f28565b9150604084013590509250925092565b600060208284031215610fbc57600080fd5b61067a82610f28565b60008060408385031215610fd857600080fd5b610fe183610f28565b915060208301358015158114610ff657600080fd5b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b6000806000806080858703121561102d57600080fd5b61103685610f28565b935061104460208601610f28565b925060408501359150606085013567ffffffffffffffff8082111561106857600080fd5b818701915087601f83011261107c57600080fd5b81358181111561108e5761108e611001565b604051601f8201601f19908116603f011681019083821181831017156110b6576110b6611001565b816040528281528a60208487010111156110cf57600080fd5b82602086016020830137600060208483010152809550505050505092959194509250565b6000806040838503121561110657600080fd5b61110f83610f28565b915061111d60208401610f28565b90509250929050565b600181811c9082168061113a57607f821691505b60208210810361115a57634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252602d908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526c1c881bdc88185c1c1c9bdd9959609a1b606082015260800190565b600083516111bf818460208801610eac565b8351908301906111d3818360208801610eac565b01949350505050565b60208082526025908201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060408201526437bbb732b960d91b606082015260800190565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6001600160a01b03858116825284166020820152604081018390526080606082018190526000906112a690830184610ed0565b9695505050505050565b6000602082840312156112c257600080fd5b815161067a81610e7956fea164736f6c6343000811000a"; - static readonly abi: readonly [{ - readonly inputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "constructor"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "approved"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Approval"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "ApprovalForAll"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Transfer"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "approve"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "balanceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getApproved"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly name: "isApprovedForAll"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "mint"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "name"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "ownerOf"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "setApprovalForAll"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "symbol"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "tokenURI"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "transferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): ERC721MockInterface; - static connect(address: string, runner?: ContractRunner | null): ERC721Mock; -} -export {}; -//# sourceMappingURL=ERC721Mock__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/ERC721Mock__factory.d.ts.map b/dist/types/factories/contracts/mocks/ERC721Mock__factory.d.ts.map deleted file mode 100644 index 8b2e9854..00000000 --- a/dist/types/factories/contracts/mocks/ERC721Mock__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ERC721Mock__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/mocks/ERC721Mock__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,KAAK,EACV,UAAU,EACV,mBAAmB,EACpB,MAAM,qCAAqC,CAAC;AAyW7C,aAAK,2BAA2B,GAC5B,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,mBAAoB,SAAQ,eAAe;gBAC1C,GAAG,IAAI,EAAE,2BAA2B;IAQvC,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,mBAAmB;IAIpE,MAAM,CAAC,QAAQ,CAAC,QAAQ,o2UAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,mBAAmB;IAG7C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,UAAU;CAG5E"} \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/ERC721Mock__factory.js b/dist/types/factories/contracts/mocks/ERC721Mock__factory.js deleted file mode 100644 index 9e98cbba..00000000 --- a/dist/types/factories/contracts/mocks/ERC721Mock__factory.js +++ /dev/null @@ -1,389 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ERC721Mock__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [], - stateMutability: "nonpayable", - type: "constructor", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "approved", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Approval", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: false, - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "ApprovalForAll", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Transfer", - type: "event", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "approve", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getApproved", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - name: "isApprovedForAll", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "mint", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "name", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "ownerOf", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "safeTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "safeTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "setApprovalForAll", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "symbol", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "tokenURI", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "transferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -const _bytecode = "0x60806040523480156200001157600080fd5b5060408051602080820183526000808352835191820190935282815290916200003b8382620000f8565b5060016200004a8282620000f8565b505050620001c4565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200007e57607f821691505b6020821081036200009f57634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620000f357600081815260208120601f850160051c81016020861015620000ce5750805b601f850160051c820191505b81811015620000ef57828155600101620000da565b5050505b505050565b81516001600160401b0381111562000114576200011462000053565b6200012c8162000125845462000069565b84620000a5565b602080601f8311600181146200016457600084156200014b5750858301515b600019600386901b1c1916600185901b178555620000ef565b600085815260208120601f198616915b82811015620001955788860151825594840194600190910190840162000174565b5085821015620001b45787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6112da80620001d46000396000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c80636352211e1161008c578063a22cb46511610066578063a22cb465146101e1578063b88d4fde146101f4578063c87b56dd14610207578063e985e9c51461021a57600080fd5b80636352211e146101a557806370a08231146101b857806395d89b41146101d957600080fd5b8063095ea7b3116100c8578063095ea7b31461015757806323b872dd1461016c57806340c10f191461017f57806342842e0e1461019257600080fd5b806301ffc9a7146100ef57806306fdde0314610117578063081812fc1461012c575b600080fd5b6101026100fd366004610e8f565b610256565b60405190151581526020015b60405180910390f35b61011f6102a8565b60405161010e9190610efc565b61013f61013a366004610f0f565b61033a565b6040516001600160a01b03909116815260200161010e565b61016a610165366004610f44565b610361565b005b61016a61017a366004610f6e565b61047b565b61016a61018d366004610f44565b6104ac565b61016a6101a0366004610f6e565b6104ba565b61013f6101b3366004610f0f565b6104d5565b6101cb6101c6366004610faa565b610535565b60405190815260200161010e565b61011f6105bb565b61016a6101ef366004610fc5565b6105ca565b61016a610202366004611017565b6105d5565b61011f610215366004610f0f565b61060d565b6101026102283660046110f3565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b60006001600160e01b031982166380ac58cd60e01b148061028757506001600160e01b03198216635b5e139f60e01b145b806102a257506301ffc9a760e01b6001600160e01b03198316145b92915050565b6060600080546102b790611126565b80601f01602080910402602001604051908101604052809291908181526020018280546102e390611126565b80156103305780601f1061030557610100808354040283529160200191610330565b820191906000526020600020905b81548152906001019060200180831161031357829003601f168201915b5050505050905090565b600061034582610681565b506000908152600460205260409020546001600160a01b031690565b600061036c826104d5565b9050806001600160a01b0316836001600160a01b0316036103de5760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084015b60405180910390fd5b336001600160a01b03821614806103fa57506103fa8133610228565b61046c5760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016103d5565b61047683836106e3565b505050565b6104853382610751565b6104a15760405162461bcd60e51b81526004016103d590611160565b6104768383836107d0565b6104b68282610934565b5050565b610476838383604051806020016040528060008152506105d5565b6000818152600260205260408120546001600160a01b0316806102a25760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016103d5565b60006001600160a01b03821661059f5760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b60648201526084016103d5565b506001600160a01b031660009081526003602052604090205490565b6060600180546102b790611126565b6104b633838361094e565b6105df3383610751565b6105fb5760405162461bcd60e51b81526004016103d590611160565b61060784848484610a1c565b50505050565b606061061882610681565b600061062f60408051602081019091526000815290565b9050600081511161064f576040518060200160405280600081525061067a565b8061065984610a4f565b60405160200161066a9291906111ad565b6040516020818303038152906040525b9392505050565b6000818152600260205260409020546001600160a01b03166106e05760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b60448201526064016103d5565b50565b600081815260046020526040902080546001600160a01b0319166001600160a01b0384169081179091558190610718826104d5565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60008061075d836104d5565b9050806001600160a01b0316846001600160a01b031614806107a457506001600160a01b0380821660009081526005602090815260408083209388168352929052205460ff165b806107c85750836001600160a01b03166107bd8461033a565b6001600160a01b0316145b949350505050565b826001600160a01b03166107e3826104d5565b6001600160a01b0316146108095760405162461bcd60e51b81526004016103d5906111dc565b6001600160a01b03821661086b5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b60648201526084016103d5565b826001600160a01b031661087e826104d5565b6001600160a01b0316146108a45760405162461bcd60e51b81526004016103d5906111dc565b600081815260046020908152604080832080546001600160a01b03199081169091556001600160a01b0387811680865260038552838620805460001901905590871680865283862080546001019055868652600290945282852080549092168417909155905184937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6104b6828260405180602001604052806000815250610ae2565b816001600160a01b0316836001600160a01b0316036109af5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c65720000000000000060448201526064016103d5565b6001600160a01b03838116600081815260056020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b610a278484846107d0565b610a3384848484610b15565b6106075760405162461bcd60e51b81526004016103d590611221565b60606000610a5c83610c16565b600101905060008167ffffffffffffffff811115610a7c57610a7c611001565b6040519080825280601f01601f191660200182016040528015610aa6576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a8504945084610ab057509392505050565b610aec8383610cee565b610af96000848484610b15565b6104765760405162461bcd60e51b81526004016103d590611221565b60006001600160a01b0384163b15610c0b57604051630a85bd0160e11b81526001600160a01b0385169063150b7a0290610b59903390899088908890600401611273565b6020604051808303816000875af1925050508015610b94575060408051601f3d908101601f19168201909252610b91918101906112b0565b60015b610bf1573d808015610bc2576040519150601f19603f3d011682016040523d82523d6000602084013e610bc7565b606091505b508051600003610be95760405162461bcd60e51b81526004016103d590611221565b805181602001fd5b6001600160e01b031916630a85bd0160e11b1490506107c8565b506001949350505050565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b8310610c555772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef81000000008310610c81576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc100008310610c9f57662386f26fc10000830492506010015b6305f5e1008310610cb7576305f5e100830492506008015b6127108310610ccb57612710830492506004015b60648310610cdd576064830492506002015b600a83106102a25760010192915050565b6001600160a01b038216610d445760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f206164647265737360448201526064016103d5565b6000818152600260205260409020546001600160a01b031615610da95760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016103d5565b6000818152600260205260409020546001600160a01b031615610e0e5760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016103d5565b6001600160a01b038216600081815260036020908152604080832080546001019055848352600290915280822080546001600160a01b0319168417905551839291907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b6001600160e01b0319811681146106e057600080fd5b600060208284031215610ea157600080fd5b813561067a81610e79565b60005b83811015610ec7578181015183820152602001610eaf565b50506000910152565b60008151808452610ee8816020860160208601610eac565b601f01601f19169290920160200192915050565b60208152600061067a6020830184610ed0565b600060208284031215610f2157600080fd5b5035919050565b80356001600160a01b0381168114610f3f57600080fd5b919050565b60008060408385031215610f5757600080fd5b610f6083610f28565b946020939093013593505050565b600080600060608486031215610f8357600080fd5b610f8c84610f28565b9250610f9a60208501610f28565b9150604084013590509250925092565b600060208284031215610fbc57600080fd5b61067a82610f28565b60008060408385031215610fd857600080fd5b610fe183610f28565b915060208301358015158114610ff657600080fd5b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b6000806000806080858703121561102d57600080fd5b61103685610f28565b935061104460208601610f28565b925060408501359150606085013567ffffffffffffffff8082111561106857600080fd5b818701915087601f83011261107c57600080fd5b81358181111561108e5761108e611001565b604051601f8201601f19908116603f011681019083821181831017156110b6576110b6611001565b816040528281528a60208487010111156110cf57600080fd5b82602086016020830137600060208483010152809550505050505092959194509250565b6000806040838503121561110657600080fd5b61110f83610f28565b915061111d60208401610f28565b90509250929050565b600181811c9082168061113a57607f821691505b60208210810361115a57634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252602d908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526c1c881bdc88185c1c1c9bdd9959609a1b606082015260800190565b600083516111bf818460208801610eac565b8351908301906111d3818360208801610eac565b01949350505050565b60208082526025908201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060408201526437bbb732b960d91b606082015260800190565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6001600160a01b03858116825284166020820152604081018390526080606082018190526000906112a690830184610ed0565b9695505050505050565b6000602082840312156112c257600080fd5b815161067a81610e7956fea164736f6c6343000811000a"; -const isSuperArgs = (xs) => xs.length > 1; -class ERC721Mock__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(overrides) { - return super.getDeployTransaction(overrides || {}); - } - deploy(overrides) { - return super.deploy(overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.ERC721Mock__factory = ERC721Mock__factory; -ERC721Mock__factory.bytecode = _bytecode; -ERC721Mock__factory.abi = _abi; diff --git a/dist/types/factories/contracts/mocks/ERC721ReceiverMock__factory.d.ts b/dist/types/factories/contracts/mocks/ERC721ReceiverMock__factory.d.ts deleted file mode 100644 index 74990f00..00000000 --- a/dist/types/factories/contracts/mocks/ERC721ReceiverMock__factory.d.ts +++ /dev/null @@ -1,49 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../common"; -import type { ERC721ReceiverMock, ERC721ReceiverMockInterface } from "../../../contracts/mocks/ERC721ReceiverMock"; -declare type ERC721ReceiverMockConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class ERC721ReceiverMock__factory extends ContractFactory { - constructor(...args: ERC721ReceiverMockConstructorParams); - getDeployTransaction(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): ERC721ReceiverMock__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b50610186806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063150b7a0214610030575b600080fd5b61004e61003e36600461009d565b630a85bd0160e11b949350505050565b6040516001600160e01b0319909116815260200160405180910390f35b80356001600160a01b038116811461008257600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b600080600080608085870312156100b357600080fd5b6100bc8561006b565b93506100ca6020860161006b565b925060408501359150606085013567ffffffffffffffff808211156100ee57600080fd5b818701915087601f83011261010257600080fd5b81358181111561011457610114610087565b604051601f8201601f19908116603f0116810190838211818310171561013c5761013c610087565b816040528281528a602084870101111561015557600080fd5b8260208601602083013760006020848301015280955050505050509295919450925056fea164736f6c6343000811000a"; - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly name: "onERC721Received"; - readonly outputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: ""; - readonly type: "bytes4"; - }]; - readonly stateMutability: "pure"; - readonly type: "function"; - }]; - static createInterface(): ERC721ReceiverMockInterface; - static connect(address: string, runner?: ContractRunner | null): ERC721ReceiverMock; -} -export {}; -//# sourceMappingURL=ERC721ReceiverMock__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/ERC721ReceiverMock__factory.d.ts.map b/dist/types/factories/contracts/mocks/ERC721ReceiverMock__factory.d.ts.map deleted file mode 100644 index 5c696742..00000000 --- a/dist/types/factories/contracts/mocks/ERC721ReceiverMock__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ERC721ReceiverMock__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/mocks/ERC721ReceiverMock__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,KAAK,EACV,kBAAkB,EAClB,2BAA2B,EAC5B,MAAM,6CAA6C,CAAC;AA0CrD,aAAK,mCAAmC,GACpC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,2BAA4B,SAAQ,eAAe;gBAClD,GAAG,IAAI,EAAE,mCAAmC;IAQ/C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,2BAA2B;IAI5E,MAAM,CAAC,QAAQ,CAAC,QAAQ,o1BAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,2BAA2B;IAGrD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,kBAAkB;CAGtB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/ERC721ReceiverMock__factory.js b/dist/types/factories/contracts/mocks/ERC721ReceiverMock__factory.js deleted file mode 100644 index 7fac8c1d..00000000 --- a/dist/types/factories/contracts/mocks/ERC721ReceiverMock__factory.js +++ /dev/null @@ -1,70 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ERC721ReceiverMock__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - { - internalType: "address", - name: "", - type: "address", - }, - { - internalType: "uint256", - name: "", - type: "uint256", - }, - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - name: "onERC721Received", - outputs: [ - { - internalType: "bytes4", - name: "", - type: "bytes4", - }, - ], - stateMutability: "pure", - type: "function", - }, -]; -const _bytecode = "0x608060405234801561001057600080fd5b50610186806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063150b7a0214610030575b600080fd5b61004e61003e36600461009d565b630a85bd0160e11b949350505050565b6040516001600160e01b0319909116815260200160405180910390f35b80356001600160a01b038116811461008257600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b600080600080608085870312156100b357600080fd5b6100bc8561006b565b93506100ca6020860161006b565b925060408501359150606085013567ffffffffffffffff808211156100ee57600080fd5b818701915087601f83011261010257600080fd5b81358181111561011457610114610087565b604051601f8201601f19908116603f0116810190838211818310171561013c5761013c610087565b816040528281528a602084870101111561015557600080fd5b8260208601602083013760006020848301015280955050505050509295919450925056fea164736f6c6343000811000a"; -const isSuperArgs = (xs) => xs.length > 1; -class ERC721ReceiverMock__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(overrides) { - return super.getDeployTransaction(overrides || {}); - } - deploy(overrides) { - return super.deploy(overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.ERC721ReceiverMock__factory = ERC721ReceiverMock__factory; -ERC721ReceiverMock__factory.bytecode = _bytecode; -ERC721ReceiverMock__factory.abi = _abi; diff --git a/dist/types/factories/contracts/mocks/MinterRoleMock__factory.d.ts b/dist/types/factories/contracts/mocks/MinterRoleMock__factory.d.ts deleted file mode 100644 index 612db611..00000000 --- a/dist/types/factories/contracts/mocks/MinterRoleMock__factory.d.ts +++ /dev/null @@ -1,334 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../common"; -import type { MinterRoleMock, MinterRoleMockInterface } from "../../../contracts/mocks/MinterRoleMock"; -declare type MinterRoleMockConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class MinterRoleMock__factory extends ContractFactory { - constructor(...args: MinterRoleMockConstructorParams); - getDeployTransaction(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): MinterRoleMock__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b5061112a806100206000396000f3fe60806040526004361061012a5760003560e01c806381c81d35116100ab578063a217fddf1161006f578063a217fddf14610311578063aa271e1a14610326578063d539139314610346578063d547741f14610368578063ecfdcfb814610388578063f2fde38b1461039d57600080fd5b806381c81d35146102815780638da5cb5b1461029457806391d14854146102bc578063983b2d56146102dc57806398650275146102fc57600080fd5b80635fc1964f116100f25780635fc1964f14610204578063634486da14610224578063715018a61461023757806371e2a6571461024c5780638129fc1c1461026c57600080fd5b806301ffc9a71461012f578063248a9ca3146101645780632f2ff15d146101a25780633092afd5146101c457806336568abe146101e4575b600080fd5b34801561013b57600080fd5b5061014f61014a366004610d9b565b6103bd565b60405190151581526020015b60405180910390f35b34801561017057600080fd5b5061019461017f366004610dc5565b60009081526097602052604090206001015490565b60405190815260200161015b565b3480156101ae57600080fd5b506101c26101bd366004610e03565b6103f4565b005b3480156101d057600080fd5b506101c26101df366004610e33565b61041e565b3480156101f057600080fd5b506101c26101ff366004610e03565b610432565b34801561021057600080fd5b506101c261021f366004610e66565b6104b5565b6101c2610232366004610e33565b6104fd565b34801561024357600080fd5b506101c26105be565b34801561025857600080fd5b506101c2610267366004610e66565b6105d2565b34801561027857600080fd5b506101c261061a565b6101c261028f366004610e33565b61072a565b3480156102a057600080fd5b506033546040516001600160a01b03909116815260200161015b565b3480156102c857600080fd5b5061014f6102d7366004610e03565b6107a5565b3480156102e857600080fd5b506101c26102f7366004610e33565b6107d0565b34801561030857600080fd5b506101c26107e1565b34801561031d57600080fd5b50610194600081565b34801561033257600080fd5b5061014f610341366004610e33565b6107f9565b34801561035257600080fd5b506101946000805160206110fe83398151915281565b34801561037457600080fd5b506101c2610383366004610e03565b610813565b34801561039457600080fd5b506101c2610838565b3480156103a957600080fd5b506101c26103b8366004610e33565b61085d565b60006001600160e01b03198216637965db0b60e01b14806103ee57506301ffc9a760e01b6001600160e01b03198316145b92915050565b60008281526097602052604090206001015461040f81610879565b6104198383610883565b505050565b610426610909565b61042f81610963565b50565b6001600160a01b03811633146104a75760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6104b1828261097b565b5050565b6104bd610909565b60005b81518110156104b1576104eb8282815181106104de576104de610f2b565b6020026020010151610963565b806104f581610f57565b9150506104c0565b610506336107f9565b6105225760405162461bcd60e51b815260040161049e90610f70565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d505459000000604482015260640161049e565b610581816109e2565b6105896107e1565b6040516001600160a01b038216903480156108fc02916000818181858888f193505050501580156104b1573d6000803e3d6000fd5b6105c6610909565b6105d060006109fa565b565b6105da610909565b60005b81518110156104b1576106088282815181106105fb576105fb610f2b565b60200260200101516109e2565b8061061281610f57565b9150506105dd565b600054610100900460ff161580801561063a5750600054600160ff909116105b806106545750303b158015610654575060005460ff166001145b6106b75760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840161049e565b6000805460ff1916600117905580156106da576000805461ff0019166101001790555b6106e2610a4c565b801561042f576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150565b610733336107f9565b61074f5760405162461bcd60e51b815260040161049e90610f70565b6001600160a01b0381166105815760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d505459000000604482015260640161049e565b60009182526097602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6107d8610909565b61042f816109e2565b6105d06000805160206110fe83398151915233610432565b60006103ee6000805160206110fe833981519152836107a5565b60008281526097602052604090206001015461082e81610879565b610419838361097b565b610841336107f9565b6105d05760405162461bcd60e51b815260040161049e90610f70565b610865610909565b61086e81610a8b565b61042f600082610b01565b61042f8133610b0b565b61088d82826107a5565b6104b15760008281526097602090815260408083206001600160a01b03851684529091529020805460ff191660011790556108c53390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6033546001600160a01b031633146105d05760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161049e565b61042f6000805160206110fe83398151915282610813565b61098582826107a5565b156104b15760008281526097602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b61042f6000805160206110fe83398151915282610b01565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600054610100900460ff16610a735760405162461bcd60e51b815260040161049e90610fa5565b610a7b610b6f565b610a83610b9f565b6105d0610bc6565b610a93610909565b6001600160a01b038116610af85760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161049e565b61042f816109fa565b6104b18282610883565b610b1582826107a5565b6104b157610b2d816001600160a01b03166014610bf8565b610b38836020610bf8565b604051602001610b49929190611014565b60408051601f198184030181529082905262461bcd60e51b825261049e91600401611089565b600054610100900460ff16610b965760405162461bcd60e51b815260040161049e90610fa5565b6105d0336109fa565b600054610100900460ff166105d05760405162461bcd60e51b815260040161049e90610fa5565b600054610100900460ff16610bed5760405162461bcd60e51b815260040161049e90610fa5565b6105d0600033610b01565b60606000610c078360026110bc565b610c129060026110d3565b67ffffffffffffffff811115610c2a57610c2a610e50565b6040519080825280601f01601f191660200182016040528015610c54576020820181803683370190505b509050600360fc1b81600081518110610c6f57610c6f610f2b565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110610c9e57610c9e610f2b565b60200101906001600160f81b031916908160001a9053506000610cc28460026110bc565b610ccd9060016110d3565b90505b6001811115610d45576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110610d0157610d01610f2b565b1a60f81b828281518110610d1757610d17610f2b565b60200101906001600160f81b031916908160001a90535060049490941c93610d3e816110e6565b9050610cd0565b508315610d945760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e74604482015260640161049e565b9392505050565b600060208284031215610dad57600080fd5b81356001600160e01b031981168114610d9457600080fd5b600060208284031215610dd757600080fd5b5035919050565b6001600160a01b038116811461042f57600080fd5b8035610dfe81610dde565b919050565b60008060408385031215610e1657600080fd5b823591506020830135610e2881610dde565b809150509250929050565b600060208284031215610e4557600080fd5b8135610d9481610dde565b634e487b7160e01b600052604160045260246000fd5b60006020808385031215610e7957600080fd5b823567ffffffffffffffff80821115610e9157600080fd5b818501915085601f830112610ea557600080fd5b813581811115610eb757610eb7610e50565b8060051b604051601f19603f83011681018181108582111715610edc57610edc610e50565b604052918252848201925083810185019188831115610efa57600080fd5b938501935b82851015610f1f57610f1085610df3565b84529385019392850192610eff565b98975050505050505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201610f6957610f69610f41565b5060010190565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60005b8381101561100b578181015183820152602001610ff3565b50506000910152565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081526000835161104c816017850160208801610ff0565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835161107d816028840160208801610ff0565b01602801949350505050565b60208152600082518060208401526110a8816040850160208701610ff0565b601f01601f19169190910160400192915050565b80820281158282048414176103ee576103ee610f41565b808201808211156103ee576103ee610f41565b6000816110f5576110f5610f41565b50600019019056fe9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000811000a"; - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "uint8"; - readonly name: "version"; - readonly type: "uint8"; - }]; - readonly name: "Initialized"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "previousOwner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "newOwner"; - readonly type: "address"; - }]; - readonly name: "OwnershipTransferred"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "previousAdminRole"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "newAdminRole"; - readonly type: "bytes32"; - }]; - readonly name: "RoleAdminChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "sender"; - readonly type: "address"; - }]; - readonly name: "RoleGranted"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "sender"; - readonly type: "address"; - }]; - readonly name: "RoleRevoked"; - readonly type: "event"; - }, { - readonly inputs: readonly []; - readonly name: "DEFAULT_ADMIN_ROLE"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "MINTER_ROLE"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "addMinter"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address[]"; - readonly name: "accounts"; - readonly type: "address[]"; - }]; - readonly name: "addMinters"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address payable"; - readonly name: "receiver"; - readonly type: "address"; - }]; - readonly name: "closeMinter"; - readonly outputs: readonly []; - readonly stateMutability: "payable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }]; - readonly name: "getRoleAdmin"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "grantRole"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "hasRole"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "initialize"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "isMinter"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "olnyMinterFunc"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "owner"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "removeMinter"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address[]"; - readonly name: "accounts"; - readonly type: "address[]"; - }]; - readonly name: "removeMinters"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "renounceMinter"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "renounceOwnership"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "renounceRole"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "revokeRole"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address payable"; - readonly name: "receiver"; - readonly type: "address"; - }]; - readonly name: "rotateMinter"; - readonly outputs: readonly []; - readonly stateMutability: "payable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "newOwner"; - readonly type: "address"; - }]; - readonly name: "transferOwnership"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): MinterRoleMockInterface; - static connect(address: string, runner?: ContractRunner | null): MinterRoleMock; -} -export {}; -//# sourceMappingURL=MinterRoleMock__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/MinterRoleMock__factory.d.ts.map b/dist/types/factories/contracts/mocks/MinterRoleMock__factory.d.ts.map deleted file mode 100644 index accc4610..00000000 --- a/dist/types/factories/contracts/mocks/MinterRoleMock__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"MinterRoleMock__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/mocks/MinterRoleMock__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,KAAK,EACV,cAAc,EACd,uBAAuB,EACxB,MAAM,yCAAyC,CAAC;AAwZjD,aAAK,+BAA+B,GAChC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,uBAAwB,SAAQ,eAAe;gBAC9C,GAAG,IAAI,EAAE,+BAA+B;IAQ3C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,uBAAuB;IAIxE,MAAM,CAAC,QAAQ,CAAC,QAAQ,4pRAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,uBAAuB;IAGjD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,cAAc;CAGlB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/MinterRoleMock__factory.js b/dist/types/factories/contracts/mocks/MinterRoleMock__factory.js deleted file mode 100644 index fdaefe6c..00000000 --- a/dist/types/factories/contracts/mocks/MinterRoleMock__factory.js +++ /dev/null @@ -1,436 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.MinterRoleMock__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint8", - name: "version", - type: "uint8", - }, - ], - name: "Initialized", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "previousOwner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnershipTransferred", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - indexed: true, - internalType: "bytes32", - name: "previousAdminRole", - type: "bytes32", - }, - { - indexed: true, - internalType: "bytes32", - name: "newAdminRole", - type: "bytes32", - }, - ], - name: "RoleAdminChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "sender", - type: "address", - }, - ], - name: "RoleGranted", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "sender", - type: "address", - }, - ], - name: "RoleRevoked", - type: "event", - }, - { - inputs: [], - name: "DEFAULT_ADMIN_ROLE", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "MINTER_ROLE", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "addMinter", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address[]", - name: "accounts", - type: "address[]", - }, - ], - name: "addMinters", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address payable", - name: "receiver", - type: "address", - }, - ], - name: "closeMinter", - outputs: [], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - ], - name: "getRoleAdmin", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "grantRole", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "hasRole", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "initialize", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "isMinter", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "olnyMinterFunc", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "removeMinter", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address[]", - name: "accounts", - type: "address[]", - }, - ], - name: "removeMinters", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "renounceMinter", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "renounceOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "renounceRole", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "revokeRole", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address payable", - name: "receiver", - type: "address", - }, - ], - name: "rotateMinter", - outputs: [], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "transferOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -const _bytecode = "0x608060405234801561001057600080fd5b5061112a806100206000396000f3fe60806040526004361061012a5760003560e01c806381c81d35116100ab578063a217fddf1161006f578063a217fddf14610311578063aa271e1a14610326578063d539139314610346578063d547741f14610368578063ecfdcfb814610388578063f2fde38b1461039d57600080fd5b806381c81d35146102815780638da5cb5b1461029457806391d14854146102bc578063983b2d56146102dc57806398650275146102fc57600080fd5b80635fc1964f116100f25780635fc1964f14610204578063634486da14610224578063715018a61461023757806371e2a6571461024c5780638129fc1c1461026c57600080fd5b806301ffc9a71461012f578063248a9ca3146101645780632f2ff15d146101a25780633092afd5146101c457806336568abe146101e4575b600080fd5b34801561013b57600080fd5b5061014f61014a366004610d9b565b6103bd565b60405190151581526020015b60405180910390f35b34801561017057600080fd5b5061019461017f366004610dc5565b60009081526097602052604090206001015490565b60405190815260200161015b565b3480156101ae57600080fd5b506101c26101bd366004610e03565b6103f4565b005b3480156101d057600080fd5b506101c26101df366004610e33565b61041e565b3480156101f057600080fd5b506101c26101ff366004610e03565b610432565b34801561021057600080fd5b506101c261021f366004610e66565b6104b5565b6101c2610232366004610e33565b6104fd565b34801561024357600080fd5b506101c26105be565b34801561025857600080fd5b506101c2610267366004610e66565b6105d2565b34801561027857600080fd5b506101c261061a565b6101c261028f366004610e33565b61072a565b3480156102a057600080fd5b506033546040516001600160a01b03909116815260200161015b565b3480156102c857600080fd5b5061014f6102d7366004610e03565b6107a5565b3480156102e857600080fd5b506101c26102f7366004610e33565b6107d0565b34801561030857600080fd5b506101c26107e1565b34801561031d57600080fd5b50610194600081565b34801561033257600080fd5b5061014f610341366004610e33565b6107f9565b34801561035257600080fd5b506101946000805160206110fe83398151915281565b34801561037457600080fd5b506101c2610383366004610e03565b610813565b34801561039457600080fd5b506101c2610838565b3480156103a957600080fd5b506101c26103b8366004610e33565b61085d565b60006001600160e01b03198216637965db0b60e01b14806103ee57506301ffc9a760e01b6001600160e01b03198316145b92915050565b60008281526097602052604090206001015461040f81610879565b6104198383610883565b505050565b610426610909565b61042f81610963565b50565b6001600160a01b03811633146104a75760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6104b1828261097b565b5050565b6104bd610909565b60005b81518110156104b1576104eb8282815181106104de576104de610f2b565b6020026020010151610963565b806104f581610f57565b9150506104c0565b610506336107f9565b6105225760405162461bcd60e51b815260040161049e90610f70565b6001600160a01b0381166105785760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d505459000000604482015260640161049e565b610581816109e2565b6105896107e1565b6040516001600160a01b038216903480156108fc02916000818181858888f193505050501580156104b1573d6000803e3d6000fd5b6105c6610909565b6105d060006109fa565b565b6105da610909565b60005b81518110156104b1576106088282815181106105fb576105fb610f2b565b60200260200101516109e2565b8061061281610f57565b9150506105dd565b600054610100900460ff161580801561063a5750600054600160ff909116105b806106545750303b158015610654575060005460ff166001145b6106b75760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840161049e565b6000805460ff1916600117905580156106da576000805461ff0019166101001790555b6106e2610a4c565b801561042f576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150565b610733336107f9565b61074f5760405162461bcd60e51b815260040161049e90610f70565b6001600160a01b0381166105815760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d505459000000604482015260640161049e565b60009182526097602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6107d8610909565b61042f816109e2565b6105d06000805160206110fe83398151915233610432565b60006103ee6000805160206110fe833981519152836107a5565b60008281526097602052604090206001015461082e81610879565b610419838361097b565b610841336107f9565b6105d05760405162461bcd60e51b815260040161049e90610f70565b610865610909565b61086e81610a8b565b61042f600082610b01565b61042f8133610b0b565b61088d82826107a5565b6104b15760008281526097602090815260408083206001600160a01b03851684529091529020805460ff191660011790556108c53390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6033546001600160a01b031633146105d05760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161049e565b61042f6000805160206110fe83398151915282610813565b61098582826107a5565b156104b15760008281526097602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b61042f6000805160206110fe83398151915282610b01565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600054610100900460ff16610a735760405162461bcd60e51b815260040161049e90610fa5565b610a7b610b6f565b610a83610b9f565b6105d0610bc6565b610a93610909565b6001600160a01b038116610af85760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161049e565b61042f816109fa565b6104b18282610883565b610b1582826107a5565b6104b157610b2d816001600160a01b03166014610bf8565b610b38836020610bf8565b604051602001610b49929190611014565b60408051601f198184030181529082905262461bcd60e51b825261049e91600401611089565b600054610100900460ff16610b965760405162461bcd60e51b815260040161049e90610fa5565b6105d0336109fa565b600054610100900460ff166105d05760405162461bcd60e51b815260040161049e90610fa5565b600054610100900460ff16610bed5760405162461bcd60e51b815260040161049e90610fa5565b6105d0600033610b01565b60606000610c078360026110bc565b610c129060026110d3565b67ffffffffffffffff811115610c2a57610c2a610e50565b6040519080825280601f01601f191660200182016040528015610c54576020820181803683370190505b509050600360fc1b81600081518110610c6f57610c6f610f2b565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110610c9e57610c9e610f2b565b60200101906001600160f81b031916908160001a9053506000610cc28460026110bc565b610ccd9060016110d3565b90505b6001811115610d45576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110610d0157610d01610f2b565b1a60f81b828281518110610d1757610d17610f2b565b60200101906001600160f81b031916908160001a90535060049490941c93610d3e816110e6565b9050610cd0565b508315610d945760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e74604482015260640161049e565b9392505050565b600060208284031215610dad57600080fd5b81356001600160e01b031981168114610d9457600080fd5b600060208284031215610dd757600080fd5b5035919050565b6001600160a01b038116811461042f57600080fd5b8035610dfe81610dde565b919050565b60008060408385031215610e1657600080fd5b823591506020830135610e2881610dde565b809150509250929050565b600060208284031215610e4557600080fd5b8135610d9481610dde565b634e487b7160e01b600052604160045260246000fd5b60006020808385031215610e7957600080fd5b823567ffffffffffffffff80821115610e9157600080fd5b818501915085601f830112610ea557600080fd5b813581811115610eb757610eb7610e50565b8060051b604051601f19603f83011681018181108582111715610edc57610edc610e50565b604052918252848201925083810185019188831115610efa57600080fd5b938501935b82851015610f1f57610f1085610df3565b84529385019392850192610eff565b98975050505050505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201610f6957610f69610f41565b5060010190565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60005b8381101561100b578181015183820152602001610ff3565b50506000910152565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081526000835161104c816017850160208801610ff0565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835161107d816028840160208801610ff0565b01602801949350505050565b60208152600082518060208401526110a8816040850160208701610ff0565b601f01601f19169190910160400192915050565b80820281158282048414176103ee576103ee610f41565b808201808211156103ee576103ee610f41565b6000816110f5576110f5610f41565b50600019019056fe9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000811000a"; -const isSuperArgs = (xs) => xs.length > 1; -class MinterRoleMock__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(overrides) { - return super.getDeployTransaction(overrides || {}); - } - deploy(overrides) { - return super.deploy(overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.MinterRoleMock__factory = MinterRoleMock__factory; -MinterRoleMock__factory.bytecode = _bytecode; -MinterRoleMock__factory.abi = _abi; diff --git a/dist/types/factories/contracts/mocks/MintingManagerMock__factory.d.ts b/dist/types/factories/contracts/mocks/MintingManagerMock__factory.d.ts deleted file mode 100644 index 53eba5fa..00000000 --- a/dist/types/factories/contracts/mocks/MintingManagerMock__factory.d.ts +++ /dev/null @@ -1,930 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../common"; -import type { MintingManagerMock, MintingManagerMockInterface } from "../../../contracts/mocks/MintingManagerMock"; -declare type MintingManagerMockConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class MintingManagerMock__factory extends ContractFactory { - constructor(...args: MintingManagerMockConstructorParams); - getDeployTransaction(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): MintingManagerMock__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b5061509f806100206000396000f3fe6080604052600436106102c95760003560e01c806391d1485411610175578063b9998a24116100dc578063d547741f11610095578063f2fde38b1161006f578063f2fde38b146108cd578063f5243bc4146108ed578063f940e3851461090d578063ffa1ad741461092d57600080fd5b8063d547741f1461087a578063d7db74c71461089a578063ec527389146108ad57600080fd5b8063b9998a24146107b8578063cc2a9a5b146107d8578063cc2c3fc4146107f8578063ceeb4f5014610818578063d1f5692c14610838578063d53913931461085857600080fd5b8063a3f4df7e1161012e578063a3f4df7e146106cb578063a849d65c14610718578063aa271e1a14610738578063ae31844a14610758578063b0aa98c714610778578063b3ab15fb1461079857600080fd5b806391d1485414610621578063983b2d5614610641578063986502751461066157806399e0dd7c14610676578063a217fddf14610696578063a3a3f7f6146106ab57600080fd5b80635b6fa8db11610234578063715018a6116101ed57806381c81d35116101c757806381c81d35146105bb5780638456cb59146105ce5780638da5cb5b146105e3578063906cecc11461060157600080fd5b8063715018a61461056657806371e2a6571461057b57806377a2a5891461059b57600080fd5b80635b6fa8db146104be5780635c975abb146104de5780635cd7e3b3146104f35780635e22cd86146105135780635fc1964f14610533578063634486da1461055357600080fd5b80633092afd5116102865780633092afd5146103c357806336568abe146103e35780633f41b614146104035780633f4ba83a1461043b57806351cff8d914610450578063572b6c051461047057600080fd5b806301ffc9a7146102ce5780631edb948e1461030357806320c5429b14610325578063248a9ca314610345578063268b15ed146103835780632f2ff15d146103a3575b600080fd5b3480156102da57600080fd5b506102ee6102e9366004613f0a565b61095e565b60405190151581526020015b60405180910390f35b34801561030f57600080fd5b5061032361031e366004613f59565b610995565b005b34801561033157600080fd5b50610323610340366004613f85565b610b3e565b34801561035157600080fd5b50610375610360366004613f85565b60009081526097602052604090206001015490565b6040519081526020016102fa565b34801561038f57600080fd5b5061032361039e366004613fdf565b610c61565b3480156103af57600080fd5b506103236103be36600461404a565b610cf4565b3480156103cf57600080fd5b506103236103de36600461407a565b610d1e565b3480156103ef57600080fd5b506103236103fe36600461404a565b610d32565b34801561040f57600080fd5b5060c954610423906001600160a01b031681565b6040516001600160a01b0390911681526020016102fa565b34801561044757600080fd5b50610323610dc0565b34801561045c57600080fd5b5061032361046b36600461407a565b610dd2565b34801561047c57600080fd5b506102ee61048b36600461407a565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546001600160a01b0390811691161490565b3480156104ca57600080fd5b5060cc54610423906001600160a01b031681565b3480156104ea57600080fd5b506102ee610e72565b3480156104ff57600080fd5b5061032361050e3660046140e9565b610e88565b34801561051f57600080fd5b5061032361052e3660046141a8565b6110ec565b34801561053f57600080fd5b5061032361054e3660046142e2565b611331565b61032361056136600461407a565b611379565b34801561057257600080fd5b5061032361143c565b34801561058757600080fd5b506103236105963660046142e2565b61144e565b3480156105a757600080fd5b5060ce54610423906001600160a01b031681565b6103236105c936600461407a565b611496565b3480156105da57600080fd5b50610323611513565b3480156105ef57600080fd5b506033546001600160a01b0316610423565b34801561060d57600080fd5b5061032361061c366004614380565b611523565b34801561062d57600080fd5b506102ee61063c36600461404a565b6115a9565b34801561064d57600080fd5b5061032361065c36600461407a565b6115d4565b34801561066d57600080fd5b506103236115e5565b34801561068257600080fd5b506103236106913660046143db565b6115ff565b3480156106a257600080fd5b50610375600081565b3480156106b757600080fd5b506103236106c636600461441c565b6116e6565b3480156106d757600080fd5b5061070b604051806040016040528060148152602001732aa7299d1026b4b73a34b7339026b0b730b3b2b960611b81525081565b6040516102fa91906144c2565b34801561072457600080fd5b5060cb54610423906001600160a01b031681565b34801561074457600080fd5b506102ee61075336600461407a565b61172f565b34801561076457600080fd5b506103236107733660046144d5565b611749565b34801561078457600080fd5b506102ee610793366004613f85565b611854565b3480156107a457600080fd5b506103236107b336600461407a565b6118b2565b3480156107c457600080fd5b506103236107d336600461407a565b6118dc565b3480156107e457600080fd5b506103236107f336600461450a565b611921565b34801561080457600080fd5b5060ca54610423906001600160a01b031681565b34801561082457600080fd5b5061032361083336600461458c565b611e18565b34801561084457600080fd5b506103236108533660046144d5565b611ebc565b34801561086457600080fd5b5061037560008051602061507383398151915281565b34801561088657600080fd5b5061032361089536600461404a565b611f73565b6103236108a8366004614641565b611f98565b3480156108b957600080fd5b506103236108c8366004613f85565b612128565b3480156108d957600080fd5b506103236108e836600461407a565b61219a565b3480156108f957600080fd5b50610323610908366004614736565b6121b6565b34801561091957600080fd5b5061032361092836600461484e565b612368565b34801561093957600080fd5b5061070b60405180604001604052806005815260200164302e352e3160d81b81525081565b60006001600160e01b03198216637965db0b60e01b148061098f57506301ffc9a760e01b6001600160e01b03198316145b92915050565b6109a06107536124e4565b6109c55760405162461bcd60e51b81526004016109bc9061487c565b60405180910390fd5b60c95460405163baef73e960e01b8152600481018390526000916001600160a01b03169063baef73e990602401602060405180830381865afa158015610a0f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a3391906148b1565b9050806001600160401b0316600003610a5e5760405162461bcd60e51b81526004016109bc906148ce565b806001600160401b0316836001600160401b031611610acb5760405162461bcd60e51b815260206004820152602360248201527f4d696e74696e674d616e616765723a204558504952595f4e4f545f455854454e60448201526211115160ea1b60648201526084016109bc565b60c954604051631fb9763760e11b81526001600160401b0385166004820152602481018490526001600160a01b0390911690633f72ec6e906044015b600060405180830381600087803b158015610b2157600080fd5b505af1158015610b35573d6000803e3d6000fd5b50505050505050565b610b496107536124e4565b610b655760405162461bcd60e51b81526004016109bc9061487c565b60c95460405163baef73e960e01b8152600481018390526001600160a01b039091169063baef73e990602401602060405180830381865afa158015610bae573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bd291906148b1565b6001600160401b0316600003610bfa5760405162461bcd60e51b81526004016109bc906148ce565b60c954604051637eee288d60e01b8152306004820152602481018390526001600160a01b0390911690637eee288d90604401600060405180830381600087803b158015610c4657600080fd5b505af1158015610c5a573d6000803e3d6000fd5b5050505050565b8282828080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250610ca493508592508491506124f3565b610cac610e72565b15610cc95760405162461bcd60e51b81526004016109bc90614911565b6060610b35610cd66124e4565b610ce988610ce489896126ca565b6126f6565b838460006001612807565b600082815260976020526040902060010154610d0f81612d5b565b610d198383612d6c565b505050565b610d26612df3565b610d2f81612e6c565b50565b610d3a6124e4565b6001600160a01b0316816001600160a01b031614610db25760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084016109bc565b610dbc8282612e84565b5050565b610dc8612df3565b610dd0612f09565b565b610dda612df3565b6001600160a01b038116610ded57600080fd5b60405147906001600160a01b0383169082156108fc029083906000818181858888f19350505050158015610e25573d6000803e3d6000fd5b50604080516001600160a01b03841681526020810183905260008183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a15050565b6000805160206150538339815191525460ff1690565b610e92868861493b565b8051600203610ec757610ea66107536124e4565b610ec25760405162461bcd60e51b81526004016109bc90614a05565b61100c565b6000610ed282612fb1565b60c9549092506001600160a01b0316905063430c2081610ef06124e4565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015610f3b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f5f9190614a49565b80610fee575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa158015610fb8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fdc9190614a49565b8015610fee5750610fee6107536124e4565b61100a5760405162461bcd60e51b81526004016109bc90614a66565b505b611016878961493b565b600060028251101561103a5760405162461bcd60e51b81526004016109bc90614ab5565b61108f61106e600084600186516110519190614b10565b8151811061106157611061614b23565b6020026020010151612fec565b8360008151811061108157611081614b23565b6020026020010151836124f3565b611097610e72565b156110b45760405162461bcd60e51b81526004016109bc90614911565b6110de8b6110c28b8d61493b565b6110cc8a8c61493b565b6110d6898b61493b565b600089612807565b505050505050505050505050565b6110f6878961493b565b805160020361112b5761110a6107536124e4565b6111265760405162461bcd60e51b81526004016109bc90614a05565b611270565b600061113682612fb1565b60c9549092506001600160a01b0316905063430c20816111546124e4565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa15801561119f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111c39190614a49565b80611252575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa15801561121c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112409190614a49565b801561125257506112526107536124e4565b61126e5760405162461bcd60e51b81526004016109bc90614a66565b505b61127a888a61493b565b8360028251101561129d5760405162461bcd60e51b81526004016109bc90614ab5565b6112b461106e600084600186516110519190614b10565b6112bc610e72565b156112d95760405162461bcd60e51b81526004016109bc90614911565b60028a146112f95760405162461bcd60e51b81526004016109bc90614b39565b6113228c6113078c8e61493b565b6113118b8d61493b565b61131b8a8c61493b565b8989612807565b50505050505050505050505050565b611339612df3565b60005b8151811015610dbc5761136782828151811061135a5761135a614b23565b6020026020010151612e6c565b8061137181614b7f565b91505061133c565b6113846107536124e4565b6113a05760405162461bcd60e51b81526004016109bc9061487c565b6001600160a01b0381166113f65760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016109bc565b6113ff816130a0565b6114076115e5565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610dbc573d6000803e3d6000fd5b611444612df3565b610dd060006130b8565b611456612df3565b60005b8151811015610dbc5761148482828151811061147757611477614b23565b60200260200101516130a0565b8061148e81614b7f565b915050611459565b6114a16107536124e4565b6114bd5760405162461bcd60e51b81526004016109bc9061487c565b6001600160a01b0381166113ff5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016109bc565b61151b612df3565b610dd061310a565b8282828080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525061156693508592508491506124f3565b61156e610e72565b1561158b5760405162461bcd60e51b81526004016109bc90614911565b606061159f87610ce988610ce489896126ca565b5050505050505050565b60009182526097602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6115dc612df3565b610d2f816130a0565b610dd06000805160206150738339815191526103fe6124e4565b611607612df3565b60c954604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906116399085908590600401614b98565b600060405180830381600087803b15801561165357600080fd5b505af1158015611667573d6000803e3d6000fd5b505060cb546001600160a01b0316159150610dbc90505760cb54604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906116b09085908590600401614b98565b600060405180830381600087803b1580156116ca57600080fd5b505af11580156116de573d6000803e3d6000fd5b505050505050565b6116ee612df3565b610d1983838080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250859250613172915050565b600061098f600080516020615073833981519152836115a9565b6117546107536124e4565b6117705760405162461bcd60e51b81526004016109bc9061487c565b60c9546040516000916001600160a01b0316906117939085908590602401614bc7565b60408051601f198184030181529181526020820180516001600160e01b0316635718c22560e11b179052516117c89190614c00565b6000604051808303816000865af19150503d8060008114611805576040519150601f19603f3d011682016040523d82523d6000602084013e61180a565b606091505b5050905080610d195760405162461bcd60e51b81526020600482015260166024820152751d5c19dc985919505b1b081b5bd8dac819985a5b195960521b60448201526064016109bc565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd6960208201529081018290526000906118a8906060015b6040516020818303038152906040528051906020012090565b5460ff1692915050565b6118ba612df3565b60ce80546001600160a01b0319166001600160a01b0392909216919091179055565b6118e4612df3565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e80546001600160a01b0319166001600160a01b03831617905550565b600054610100900460ff16158080156119415750600054600160ff909116105b8061195b5750303b15801561195b575060005460ff166001145b6119be5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016109bc565b6000805460ff1916600117905580156119e1576000805461ff0019166101001790555b60c980546001600160a01b03199081166001600160a01b038a81169190911790925560ca8054821689841617905560cb8054821688841617905560cc8054821687841617905560ce8054909116918516919091179055611a3f613292565b611a476132c9565b611a5082613302565b611a58613329565b6040805161036081018252600661032082018181526563727970746f60d01b610340840152825282518084018452818152651dd85b1b195d60d21b602082810191909152808401919091528351808501855260018152600f60fb1b8183015283850152835180850185526003808252621b999d60ea1b82840152606085019190915284518086018652600a815269313637b1b5b1b430b4b760b11b818401526080850152845180860186526007808252663134ba31b7b4b760c91b8285015260a0860191909152855180870187528281526207070760eb1b8185015260c0860152855180870187528281526264616f60e81b8185015260e086015285518087018752828152621e9a5b60ea1b8185015261010086015285518087018752908152663837b63cb3b7b760c91b8184015261012085015284518086018652600b81526a756e73746f707061626c6560a81b81840152610140850152845180860186528381526535b632bb32b960d11b8184015261016085015284518086018652600280825261686960f01b8285015261018086019190915285518087018752848152656b726573757360d01b818501526101a086015285518087018752600580825264616e696d6560d81b828601526101c087019190915286518088018852818152646d616e676160d81b818601526101e087015286518088018852600981526862696e616e6365757360b81b8186015261020087015286518088018852818152647265616c6d60d81b818601526102208701528651808801885291825261676f60f01b82850152610240860191909152855180870187526008815267185b1d1a5b5a5cdd60c21b818501526102608601528551808701875290815264707564677960d81b81840152610280850152845180860186528381526530bab9ba34b760d11b818401526102a08501528451808601865292835265189a5d19d95d60d21b838301526102c08401929092528351808501855291825262706f6760e81b828201526102e083019190915282518084019093526004835263636c617960e01b9083015261030081019190915260005b6019811015611da257611d90828260198110611d8457611d84614b23565b60200201516000613172565b80611d9a81614b7f565b915050611d66565b50611dc960405180604001604052806003815260200162636f6d60e81b8152506001613172565b508015610b35576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050505050565b8686868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250611e5b93508592508491506124f3565b611e63610e72565b15611e805760405162461bcd60e51b81526004016109bc90614911565b611eaf8a611e928b610ce48c8c6126ca565b611e9c888a61493b565b611ea6878961493b565b60006001612807565b5050505050505050505050565b611ec4612df3565b60005b81811015610d195760c9546001600160a01b03166350960239848484818110611ef257611ef2614b23565b9050602002016020810190611f07919061407a565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401600060405180830381600087803b158015611f4857600080fd5b505af1158015611f5c573d6000803e3d6000fd5b505050508080611f6b90614b7f565b915050611ec7565b600082815260976020526040902060010154611f8e81612d5b565b610d198383612e84565b611fa2898b61493b565b6000600282511015611fc65760405162461bcd60e51b81526004016109bc90614ab5565b611fdd61106e600084600186516110519190614b10565b611fe5610e72565b156120025760405162461bcd60e51b81526004016109bc90614911565b60028b146120225760405162461bcd60e51b81526004016109bc90614b39565b6120688d8d8d898960008a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061336992505050565b843410156120b85760405162461bcd60e51b815260206004820181905260248201527f4d696e74696e674d616e616765723a204e4f545f454e4f5547485f46554e445360448201526064016109bc565b6120ca8d8d8d8d8d8d8d8c6000613529565b84341115611322576120da6124e4565b6001600160a01b03166108fc6120f08734614b10565b6040518115909202916000818181858888f19350505050158015612118573d6000803e3d6000fd5b5050505050505050505050505050565b612130612df3565b612139816135e5565b6121555760405162461bcd60e51b81526004016109bc90614c1c565b600081815260cd6020526040812061216c91613ebc565b60405181907f0aa1aff0f830e739d86baf0e6624d6763da02f7733575e0e463886cd062dea6a90600090a250565b6121a2612df3565b6121ab8161360b565b610d2f600082613681565b6121c08a8c61493b565b60006002825110156121e45760405162461bcd60e51b81526004016109bc90614ab5565b6121fb61106e600084600186516110519190614b10565b612203610e72565b156122205760405162461bcd60e51b81526004016109bc90614911565b60028c146122405760405162461bcd60e51b81526004016109bc90614b39565b6122858e8e8e8a898b8a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061336992505050565b856001600160a01b03166323b872dd61229c6124e4565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152306024820152604481018890526064016020604051808303816000875af11580156122ef573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123139190614a49565b6123575760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b60448201526064016109bc565b6121188e8e8e8e8e8e8e8c8e613529565b612370612df3565b6040516370a0823160e01b81523060048201526000906001600160a01b038416906370a0823190602401602060405180830381865afa1580156123b7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123db9190614c5e565b60405163a9059cbb60e01b81526001600160a01b038481166004830152602482018390529192509084169063a9059cbb906044016020604051808303816000875af115801561242e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124529190614a49565b6124965760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b60448201526064016109bc565b604080516001600160a01b0384811682526020820184905285168183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a1505050565b60006124ee61368b565b905090565b6124fc836135e5565b6125185760405162461bcd60e51b81526004016109bc90614c1c565b600083815260cf602052604090205460ff1615156001600160401b0382161515146125945760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544c445f455850495241424c455f4d496044820152650a69a82a886960d31b60648201526084016109bc565b60006125c78360408051808201825260008082526020918201528151808301909252825182529182019181019190915290565b9050600a8160000151111561266f576125f26125e6826000600a6136d1565b80516020909101512090565b7fb551e0305c8163b812374b8e78b577c77f226f6f10c5ad03e52699578fbc34b80361266f5760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544f4b454e5f4c4142454c5f50524f4860448201526512509255115160d21b60648201526084016109bc565b61267883613710565b6126c45760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a204c4142454c5f494e56414c494400000060448201526064016109bc565b50505050565b606082826040516020016126df929190614c77565b604051602081830303815290604052905092915050565b604080516002808252606082810190935260009190816020015b6060815260200190600190039081612710579050509050828160008151811061273b5761273b614b23565b602002602001018190525060cd6000858152602001908152602001600020805461276490614c9f565b80601f016020809104026020016040519081016040528092919081815260200182805461279090614c9f565b80156127dd5780601f106127b2576101008083540402835291602001916127dd565b820191906000526020600020905b8154815290600101906020018083116127c057829003601f168201915b5050505050816001815181106127f5576127f5614b23565b60209081029190910101529392505050565b600080600061281588612fb1565b91509150838015612827575060028851115b80156128a9575060c9546040516331a9108f60e11b8152600481018390526001600160a01b038b8116921690636352211e90602401602060405180830381865afa158015612879573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061289d9190614cd9565b6001600160a01b031614155b156129095760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e616765723a20524556455253455f5245434f52445f4e60448201526913d517d0531313d5d15160b21b60648201526084016109bc565b60c954604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401602060405180830381865afa158015612952573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129769190614a49565b8015612a67575060c9546040516331a9108f60e11b81526004810184905230916001600160a01b031690636352211e90602401602060405180830381865afa1580156129c6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129ea9190614cd9565b6001600160a01b03161480612a67575060c95460405163d9548e5360e01b8152600481018490526001600160a01b039091169063d9548e5390602401602060405180830381865afa158015612a43573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612a679190614a49565b15612b58576001600160401b03851615612ae95760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b158015612ad057600080fd5b505af1158015612ae4573d6000803e3d6000fd5b505050505b60c954604051630fb8df0360e11b81526001600160a01b0390911690631f71be0690612b21908c908c908c908c908b90600401614d4b565b600060405180830381600087803b158015612b3b57600080fd5b505af1158015612b4f573d6000803e3d6000fd5b50505050612d4f565b612b6182613874565b612b6a886138d3565b8015612b77575087516002145b8015612b8a57506001600160401b038516155b15612c685760ca5488516001600160a01b039091169063c36c2125908b908b90600090612bb957612bb9614b23565b602090810291909101015160cc546040516001600160e01b031960e086901b168152612bf39392916001600160a01b031690600401614daa565b600060405180830381600087803b158015612c0d57600080fd5b505af1158015612c21573d6000803e3d6000fd5b50505050600087511115612c635760cc54604051633a0deb9d60e21b81526001600160a01b039091169063e837ae7490612b21908a908a908790600401614ddf565b612d4f565b60c95460405163ba5d40b760e01b81526001600160a01b039091169063ba5d40b790612ca0908c908c908c908c908b90600401614d4b565b600060405180830381600087803b158015612cba57600080fd5b505af1158015612cce573d6000803e3d6000fd5b505050506001600160401b03851615612d4f5760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b158015612d3657600080fd5b505af1158015612d4a573d6000803e3d6000fd5b505050505b50979650505050505050565b610d2f81612d676124e4565b61392d565b612d7682826115a9565b610dbc5760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19166001179055612daf6124e4565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b612dfb6124e4565b6001600160a01b0316612e166033546001600160a01b031690565b6001600160a01b031614610dd05760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016109bc565b610d2f60008051602061507383398151915282611f73565b612e8e82826115a9565b15610dbc5760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19169055612ec56124e4565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612f11610e72565b612f545760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881393d517d4105554d15160621b60448201526064016109bc565b600080516020615053833981519152805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa612f946124e4565b6040516001600160a01b03909116815260200160405180910390a1565b805160009081905b8015612fe657829150612fd28285611051600185614b10565b925080612fde81614e15565b915050612fb9565b50915091565b6000815160000361303f5760405162461bcd60e51b815260206004820152601b60248201527f4d696e74696e674d616e616765723a204c4142454c5f454d505459000000000060448201526064016109bc565b82826040516020016130519190614c00565b60405160208183030381529060405280519060200120604051602001613081929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b610d2f60008051602061507383398151915282613681565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b613112610e72565b1561312f5760405162461bcd60e51b81526004016109bc90614911565b600080516020615053833981519152805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258612f946124e4565b600061317f600084612fec565b600081815260cd6020526040902090915061319a8482614e72565b50600081815260cf602052604090819020805460ff19168415151790555181907f4fce6f6e172b04eaa80325d8e3b0180a34945000f3e214605039e8420fdf8980906131e79086906144c2565b60405180910390a260c954604051634f558e7960e01b8152600481018390526001600160a01b0390911690634f558e7990602401602060405180830381865afa158015613238573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061325c9190614a49565b610d195760c9546040516307befae360e51b81526001600160a01b039091169063f7df5c6090610b079084908790600401614f31565b600054610100900460ff166132b95760405162461bcd60e51b81526004016109bc90614f52565b610dd06132c46124e4565b6130b8565b600054610100900460ff166132f05760405162461bcd60e51b81526004016109bc90614f52565b610dd060006132fd6124e4565b613681565b600054610100900460ff166118e45760405162461bcd60e51b81526004016109bc90614f52565b600054610100900460ff166133505760405162461bcd60e51b81526004016109bc90614f52565b600080516020615053833981519152805460ff19169055565b600061337d613378878961493b565b612fb1565b506040516bffffffffffffffffffffffff1930606090811b821660208401524660348401528b811b82166054840152606883018490526001600160c01b031960c08a901b1660888401526090830188905286901b1660b08201529091506000906134599084906134539060c401604051602081830303815290604052805190602001206040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c8101829052600090605c01604051602081830303815290604052805190602001209050919050565b90613991565b90506134648161172f565b6134bc5760405162461bcd60e51b8152602060048201526024808201527f4d696e74696e674d616e616765723a205349474e45525f49535f4e4f545f4d49604482015263272a22a960e11b60648201526084016109bc565b42866001600160401b03161161351e5760405162461bcd60e51b815260206004820152602160248201527f4d696e74696e674d616e616765723a20455850495245445f5349474e415455526044820152604560f81b60648201526084016109bc565b505050505050505050565b60006135708a6135398a8c61493b565b613543898b61493b565b61354d888a61493b565b60008f6001600160a01b03166135616124e4565b6001600160a01b031614612807565b9050896001600160a01b03166135846124e4565b6001600160a01b0316827fa545b6fd3355e8d57f8c8147bafe740545bd3ea1f94bef2576a6d532a7c3b60586866040516135d19291909182526001600160a01b0316602082015260400190565b60405180910390a450505050505050505050565b600081815260cd60205260408120805482919061360190614c9f565b9050119050919050565b613613612df3565b6001600160a01b0381166136785760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016109bc565b610d2f816130b8565b610dbc8282612d6c565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546000906001600160a01b031633036136cc575060331936013560601c90565b503390565b604080518082019091526000808252602082015260405180604001604052808381526020018486602001516137069190614f9d565b9052949350505050565b6000815160000361372357506000919050565b60208201805160f81c60308110801590613741575060398160ff1611155b158015613763575060618160ff16101580156137615750607a8160ff1611155b155b15613772575060009392505050565b835160018111156137e0576137948361378c600184614b10565b015160f81c90565b915060308260ff16101580156137ae575060398260ff1611155b1580156137d0575060618260ff16101580156137ce5750607a8260ff1611155b155b156137e057506000949350505050565b60015b6137ee600183614b10565b811015613868578381015160f81c9250602d8314801590613824575060308360ff1610158015613822575060398360ff1611155b155b8015613845575060618360ff16101580156138435750607a8360ff1611155b155b156138565750600095945050505050565b8061386081614b7f565b9150506137e3565b50600195945050505050565b61387d81611854565b156138ca5760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a20544f4b454e5f424c4f434b454400000060448201526064016109bc565b610d2f816139b5565b6000806138ea600084600186516110519190614b10565b60ca549091506001600160a01b0316158015906139265750807f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f145b9392505050565b61393782826115a9565b610dbc5761394f816001600160a01b03166014613a39565b61395a836020613a39565b60405160200161396b929190614fb0565b60408051601f198184030181529082905262461bcd60e51b82526109bc916004016144c2565b60008060006139a08585613bd4565b915091506139ad81613c19565b509392505050565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd6960208201529081018290526001906139f49060600161188f565b805460ff19169115159190911790556040518181527f2ce5d9351b1d590d5a066db0d2dc7602d55f092506a83a7ee8c4d78ee357d75a9060200160405180910390a150565b60606000613a48836002615025565b613a53906002614f9d565b6001600160401b03811115613a6a57613a6a614279565b6040519080825280601f01601f191660200182016040528015613a94576020820181803683370190505b509050600360fc1b81600081518110613aaf57613aaf614b23565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110613ade57613ade614b23565b60200101906001600160f81b031916908160001a9053506000613b02846002615025565b613b0d906001614f9d565b90505b6001811115613b85576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110613b4157613b41614b23565b1a60f81b828281518110613b5757613b57614b23565b60200101906001600160f81b031916908160001a90535060049490941c93613b7e81614e15565b9050613b10565b5083156139265760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016109bc565b6000808251604103613c0a5760208301516040840151606085015160001a613bfe87828585613dcf565b94509450505050613c12565b506000905060025b9250929050565b6000816004811115613c2d57613c2d61503c565b03613c355750565b6001816004811115613c4957613c4961503c565b03613c965760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e6174757265000000000000000060448201526064016109bc565b6002816004811115613caa57613caa61503c565b03613cf75760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e6774680060448201526064016109bc565b6003816004811115613d0b57613d0b61503c565b03613d635760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b60648201526084016109bc565b6004816004811115613d7757613d7761503c565b03610d2f5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c604482015261756560f01b60648201526084016109bc565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613e065750600090506003613eb3565b8460ff16601b14158015613e1e57508460ff16601c14155b15613e2f5750600090506004613eb3565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613e83573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613eac57600060019250925050613eb3565b9150600090505b94509492505050565b508054613ec890614c9f565b6000825580601f10613ed8575050565b601f016020900490600052602060002090810190610d2f91905b80821115613f065760008155600101613ef2565b5090565b600060208284031215613f1c57600080fd5b81356001600160e01b03198116811461392657600080fd5b6001600160401b0381168114610d2f57600080fd5b8035613f5481613f34565b919050565b60008060408385031215613f6c57600080fd5b8235613f7781613f34565b946020939093013593505050565b600060208284031215613f9757600080fd5b5035919050565b60008083601f840112613fb057600080fd5b5081356001600160401b03811115613fc757600080fd5b602083019150836020828501011115613c1257600080fd5b600080600060408486031215613ff457600080fd5b8335925060208401356001600160401b0381111561401157600080fd5b61401d86828701613f9e565b9497909650939450505050565b6001600160a01b0381168114610d2f57600080fd5b8035613f548161402a565b6000806040838503121561405d57600080fd5b82359150602083013561406f8161402a565b809150509250929050565b60006020828403121561408c57600080fd5b81356139268161402a565b60008083601f8401126140a957600080fd5b5081356001600160401b038111156140c057600080fd5b6020830191508360208260051b8501011115613c1257600080fd5b8015158114610d2f57600080fd5b60008060008060008060008060a0898b03121561410557600080fd5b88356141108161402a565b975060208901356001600160401b038082111561412c57600080fd5b6141388c838d01614097565b909950975060408b013591508082111561415157600080fd5b61415d8c838d01614097565b909750955060608b013591508082111561417657600080fd5b506141838b828c01614097565b9094509250506080890135614197816140db565b809150509295985092959890939650565b600080600080600080600080600060c08a8c0312156141c657600080fd5b89356141d18161402a565b985060208a01356001600160401b03808211156141ed57600080fd5b6141f98d838e01614097565b909a50985060408c013591508082111561421257600080fd5b61421e8d838e01614097565b909850965060608c013591508082111561423757600080fd5b506142448c828d01614097565b90955093505060808a013561425881613f34565b915060a08a0135614268816140db565b809150509295985092959850929598565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b03811182821017156142b7576142b7614279565b604052919050565b60006001600160401b038211156142d8576142d8614279565b5060051b60200190565b600060208083850312156142f557600080fd5b82356001600160401b0381111561430b57600080fd5b8301601f8101851361431c57600080fd5b803561432f61432a826142bf565b61428f565b81815260059190911b8201830190838101908783111561434e57600080fd5b928401925b828410156143755783356143668161402a565b82529284019290840190614353565b979650505050505050565b6000806000806060858703121561439657600080fd5b84356143a18161402a565b93506020850135925060408501356001600160401b038111156143c357600080fd5b6143cf87828801613f9e565b95989497509550505050565b600080602083850312156143ee57600080fd5b82356001600160401b0381111561440457600080fd5b61441085828601613f9e565b90969095509350505050565b60008060006040848603121561443157600080fd5b83356001600160401b0381111561444757600080fd5b61445386828701613f9e565b9094509250506020840135614467816140db565b809150509250925092565b60005b8381101561448d578181015183820152602001614475565b50506000910152565b600081518084526144ae816020860160208601614472565b601f01601f19169290920160200192915050565b6020815260006139266020830184614496565b600080602083850312156144e857600080fd5b82356001600160401b038111156144fe57600080fd5b61441085828601614097565b60008060008060008060c0878903121561452357600080fd5b863561452e8161402a565b9550602087013561453e8161402a565b9450604087013561454e8161402a565b9350606087013561455e8161402a565b9250608087013561456e8161402a565b915060a087013561457e8161402a565b809150509295509295509295565b60008060008060008060008060a0898b0312156145a857600080fd5b88356145b38161402a565b97506020890135965060408901356001600160401b03808211156145d657600080fd5b6145e28c838d01613f9e565b909850965060608b01359150808211156145fb57600080fd5b6146078c838d01614097565b909650945060808b013591508082111561462057600080fd5b5061462d8b828c01614097565b999c989b5096995094979396929594505050565b600080600080600080600080600080600060e08c8e03121561466257600080fd5b61466b8c61403f565b9a506001600160401b038060208e0135111561468657600080fd5b6146968e60208f01358f01614097565b909b50995060408d01358110156146ac57600080fd5b6146bc8e60408f01358f01614097565b909950975060608d01358110156146d257600080fd5b6146e28e60608f01358f01614097565b90975095506146f360808e01613f49565b945060a08d013593508060c08e0135111561470d57600080fd5b5061471e8d60c08e01358e01613f9e565b81935080925050509295989b509295989b9093969950565b6000806000806000806000806000806000806101008d8f03121561475957600080fd5b6147628d61403f565b9b506001600160401b0360208e0135111561477c57600080fd5b61478c8e60208f01358f01614097565b909b5099506001600160401b0360408e013511156147a957600080fd5b6147b98e60408f01358f01614097565b90995097506001600160401b0360608e013511156147d657600080fd5b6147e68e60608f01358f01614097565b90975095506147f760808e01613f49565b945061480560a08e0161403f565b935060c08d013592506001600160401b0360e08e0135111561482657600080fd5b6148368e60e08f01358f01613f9e565b81935080925050509295989b509295989b509295989b565b6000806040838503121561486157600080fd5b823561486c8161402a565b9150602083013561406f8161402a565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b6000602082840312156148c357600080fd5b815161392681613f34565b60208082526023908201527f4d696e74696e674d616e616765723a20544f4b454e5f4e4f545f455850495241604082015262424c4560e81b606082015260800190565b60208082526010908201526f14185d5cd8589b194e8814105554d15160821b604082015260600190565b600061494961432a846142bf565b80848252602080830192508560051b85013681111561496757600080fd5b855b818110156149f95780356001600160401b03808211156149895760008081fd5b90880190601f368184011261499e5760008081fd5b8235828111156149b0576149b0614279565b6149c1818301601f1916880161428f565b925080835236878286010111156149da57600091508182fd5b8087850188850137600090830187015250865250938201938201614969565b50919695505050505050565b60208082526024908201527f4d696e74696e674d616e616765723a2043414c4c45525f49535f4e4f545f4d49604082015263272a22a960e11b606082015260800190565b600060208284031215614a5b57600080fd5b8151613926816140db565b6020808252602f908201527f4d696e74696e674d616e616765723a2053454e4445525f49535f4e4f545f415060408201526e282927ab22a22fa7a92fa7aba722a960891b606082015260800190565b60208082526025908201527f4d696e74696e674d616e616765723a204c4142454c535f4c454e4754485f42456040820152642627abaf9960d91b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b8181038181111561098f5761098f614afa565b634e487b7160e01b600052603260045260246000fd5b60208082526026908201527f4d696e74696e674d616e616765723a20535542444f4d41494e535f4e4f545f41604082015265131313d5d15160d21b606082015260800190565b600060018201614b9157614b91614afa565b5060010190565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b6020808252810182905260006001600160fb1b03831115614be757600080fd5b8260051b80856040850137919091016040019392505050565b60008251614c12818460208701614472565b9190910192915050565b60208082526022908201527f4d696e74696e674d616e616765723a20544c445f4e4f545f5245474953544552604082015261115160f21b606082015260800190565b600060208284031215614c7057600080fd5b5051919050565b6b756e732d646576746573742d60a01b81528183600c83013760009101600c01908152919050565b600181811c90821680614cb357607f821691505b602082108103614cd357634e487b7160e01b600052602260045260246000fd5b50919050565b600060208284031215614ceb57600080fd5b81516139268161402a565b600081518084526020808501808196508360051b8101915082860160005b85811015614d3e578284038952614d2c848351614496565b98850198935090840190600101614d14565b5091979650505050505050565b6001600160a01b038616815260a060208201819052600090614d6f90830187614cf6565b8281036040840152614d818187614cf6565b90508281036060840152614d958186614cf6565b91505082151560808301529695505050505050565b600060018060a01b03808616835260606020840152614dcc6060840186614496565b9150808416604084015250949350505050565b606081526000614df26060830186614cf6565b8281036020840152614e048186614cf6565b915050826040830152949350505050565b600081614e2457614e24614afa565b506000190190565b601f821115610d1957600081815260208120601f850160051c81016020861015614e535750805b601f850160051c820191505b818110156116de57828155600101614e5f565b81516001600160401b03811115614e8b57614e8b614279565b614e9f81614e998454614c9f565b84614e2c565b602080601f831160018114614ed45760008415614ebc5750858301515b600019600386901b1c1916600185901b1785556116de565b600085815260208120601f198616915b82811015614f0357888601518255948401946001909101908401614ee4565b5085821015614f215787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b828152604060208201526000614f4a6040830184614496565b949350505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b8082018082111561098f5761098f614afa565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351614fe8816017850160208801614472565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351615019816028840160208801614472565b01602801949350505050565b808202811582820484141761098f5761098f614afa565b634e487b7160e01b600052602160045260246000fdfe5496787fc1ebdfeba375028c1865f13fbb1d63c0caa356ccc1b29a80f3ebd6229f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000811000a"; - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "address"; - readonly name: "previousAdmin"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "address"; - readonly name: "newAdmin"; - readonly type: "address"; - }]; - readonly name: "AdminChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Blocked"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "BlocklistDisabled"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "BlocklistEnabled"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "sender"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "price"; - readonly type: "uint256"; - }, { - readonly indexed: false; - readonly internalType: "address"; - readonly name: "token"; - readonly type: "address"; - }]; - readonly name: "DomainPurchase"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "uint8"; - readonly name: "version"; - readonly type: "uint8"; - }]; - readonly name: "Initialized"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly indexed: false; - readonly internalType: "string"; - readonly name: "tld"; - readonly type: "string"; - }]; - readonly name: "NewTld"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "previousOwner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "newOwner"; - readonly type: "address"; - }]; - readonly name: "OwnershipTransferred"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "Paused"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "RemoveTld"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "previousAdminRole"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "newAdminRole"; - readonly type: "bytes32"; - }]; - readonly name: "RoleAdminChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "sender"; - readonly type: "address"; - }]; - readonly name: "RoleGranted"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "sender"; - readonly type: "address"; - }]; - readonly name: "RoleRevoked"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "Unpaused"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "implementation"; - readonly type: "address"; - }]; - readonly name: "Upgraded"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "address"; - readonly name: "recepient"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "value"; - readonly type: "uint256"; - }, { - readonly indexed: false; - readonly internalType: "address"; - readonly name: "token"; - readonly type: "address"; - }]; - readonly name: "Withdrawal"; - readonly type: "event"; - }, { - readonly inputs: readonly []; - readonly name: "DEFAULT_ADMIN_ROLE"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "MINTER_ROLE"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "NAME"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "VERSION"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "addMinter"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address[]"; - readonly name: "accounts"; - readonly type: "address[]"; - }]; - readonly name: "addMinters"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address[]"; - readonly name: "addrs"; - readonly type: "address[]"; - }]; - readonly name: "addProxyReaders"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "tld"; - readonly type: "string"; - }, { - readonly internalType: "bool"; - readonly name: "isExpirable"; - readonly type: "bool"; - }]; - readonly name: "addTld"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "string[]"; - readonly name: "labels"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }, { - readonly internalType: "uint64"; - readonly name: "expiry"; - readonly type: "uint64"; - }, { - readonly internalType: "uint256"; - readonly name: "price"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "buy"; - readonly outputs: readonly []; - readonly stateMutability: "payable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "string[]"; - readonly name: "labels"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }, { - readonly internalType: "uint64"; - readonly name: "expiry"; - readonly type: "uint64"; - }, { - readonly internalType: "address"; - readonly name: "token"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "price"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "buyForErc20"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tld"; - readonly type: "uint256"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }]; - readonly name: "claim"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tld"; - readonly type: "uint256"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }]; - readonly name: "claimTo"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tld"; - readonly type: "uint256"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }, { - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }]; - readonly name: "claimToWithRecords"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address payable"; - readonly name: "receiver"; - readonly type: "address"; - }]; - readonly name: "closeMinter"; - readonly outputs: readonly []; - readonly stateMutability: "payable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "cnsMintingController"; - readonly outputs: readonly [{ - readonly internalType: "contract IMintingController"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "cnsResolver"; - readonly outputs: readonly [{ - readonly internalType: "contract IResolver"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "cnsURIPrefixController"; - readonly outputs: readonly [{ - readonly internalType: "contract IURIPrefixController"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }]; - readonly name: "getRoleAdmin"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "grantRole"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "hasRole"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "contract IUNSRegistry"; - readonly name: "unsRegistry_"; - readonly type: "address"; - }, { - readonly internalType: "contract IMintingController"; - readonly name: "cnsMintingController_"; - readonly type: "address"; - }, { - readonly internalType: "contract IURIPrefixController"; - readonly name: "cnsURIPrefixController_"; - readonly type: "address"; - }, { - readonly internalType: "contract IResolver"; - readonly name: "cnsResolver_"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "unsOperator_"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "forwarder"; - readonly type: "address"; - }]; - readonly name: "initialize"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "isBlocked"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "isMinter"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "forwarder"; - readonly type: "address"; - }]; - readonly name: "isTrustedForwarder"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "string[]"; - readonly name: "labels"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }, { - readonly internalType: "uint64"; - readonly name: "expiry"; - readonly type: "uint64"; - }, { - readonly internalType: "bool"; - readonly name: "withReverse"; - readonly type: "bool"; - }]; - readonly name: "issueExpirableWithRecords"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "string[]"; - readonly name: "labels"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }, { - readonly internalType: "bool"; - readonly name: "withReverse"; - readonly type: "bool"; - }]; - readonly name: "issueWithRecords"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "owner"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "pause"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "paused"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "removeMinter"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address[]"; - readonly name: "accounts"; - readonly type: "address[]"; - }]; - readonly name: "removeMinters"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tld"; - readonly type: "uint256"; - }]; - readonly name: "removeTld"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint64"; - readonly name: "expiry"; - readonly type: "uint64"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "renew"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "renounceMinter"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "renounceOwnership"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "renounceRole"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "revoke"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "revokeRole"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address payable"; - readonly name: "receiver"; - readonly type: "address"; - }]; - readonly name: "rotateMinter"; - readonly outputs: readonly []; - readonly stateMutability: "payable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "forwarder"; - readonly type: "address"; - }]; - readonly name: "setForwarder"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly name: "setOperator"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "prefix"; - readonly type: "string"; - }]; - readonly name: "setTokenURIPrefix"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "newOwner"; - readonly type: "address"; - }]; - readonly name: "transferOwnership"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "unpause"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "unsOperator"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "unsRegistry"; - readonly outputs: readonly [{ - readonly internalType: "contract IUNSRegistry"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256[]"; - readonly name: "tokenIds"; - readonly type: "uint256[]"; - }]; - readonly name: "upgradeAll"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "recepient"; - readonly type: "address"; - }]; - readonly name: "withdraw"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "token"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "recepient"; - readonly type: "address"; - }]; - readonly name: "withdraw"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): MintingManagerMockInterface; - static connect(address: string, runner?: ContractRunner | null): MintingManagerMock; -} -export {}; -//# sourceMappingURL=MintingManagerMock__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/MintingManagerMock__factory.d.ts.map b/dist/types/factories/contracts/mocks/MintingManagerMock__factory.d.ts.map deleted file mode 100644 index b0946702..00000000 --- a/dist/types/factories/contracts/mocks/MintingManagerMock__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"MintingManagerMock__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/mocks/MintingManagerMock__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,KAAK,EACV,kBAAkB,EAClB,2BAA2B,EAC5B,MAAM,6CAA6C,CAAC;AAqpCrD,aAAK,mCAAmC,GACpC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,2BAA4B,SAAQ,eAAe;gBAClD,GAAG,IAAI,EAAE,mCAAmC;IAQ/C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,2BAA2B;IAI5E,MAAM,CAAC,QAAQ,CAAC,QAAQ,s4wCAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,2BAA2B;IAGrD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,kBAAkB;CAGtB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/MintingManagerMock__factory.js b/dist/types/factories/contracts/mocks/MintingManagerMock__factory.js deleted file mode 100644 index b624b911..00000000 --- a/dist/types/factories/contracts/mocks/MintingManagerMock__factory.js +++ /dev/null @@ -1,1201 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.MintingManagerMock__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "previousAdmin", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "newAdmin", - type: "address", - }, - ], - name: "AdminChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Blocked", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "BlocklistDisabled", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "BlocklistEnabled", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - indexed: true, - internalType: "address", - name: "sender", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "price", - type: "uint256", - }, - { - indexed: false, - internalType: "address", - name: "token", - type: "address", - }, - ], - name: "DomainPurchase", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint8", - name: "version", - type: "uint8", - }, - ], - name: "Initialized", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - indexed: false, - internalType: "string", - name: "tld", - type: "string", - }, - ], - name: "NewTld", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "previousOwner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnershipTransferred", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "Paused", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "RemoveTld", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - indexed: true, - internalType: "bytes32", - name: "previousAdminRole", - type: "bytes32", - }, - { - indexed: true, - internalType: "bytes32", - name: "newAdminRole", - type: "bytes32", - }, - ], - name: "RoleAdminChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "sender", - type: "address", - }, - ], - name: "RoleGranted", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "sender", - type: "address", - }, - ], - name: "RoleRevoked", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "Unpaused", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "implementation", - type: "address", - }, - ], - name: "Upgraded", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "recepient", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "value", - type: "uint256", - }, - { - indexed: false, - internalType: "address", - name: "token", - type: "address", - }, - ], - name: "Withdrawal", - type: "event", - }, - { - inputs: [], - name: "DEFAULT_ADMIN_ROLE", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "MINTER_ROLE", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "NAME", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "VERSION", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "addMinter", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address[]", - name: "accounts", - type: "address[]", - }, - ], - name: "addMinters", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address[]", - name: "addrs", - type: "address[]", - }, - ], - name: "addProxyReaders", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "tld", - type: "string", - }, - { - internalType: "bool", - name: "isExpirable", - type: "bool", - }, - ], - name: "addTld", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "string[]", - name: "labels", - type: "string[]", - }, - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - { - internalType: "uint64", - name: "expiry", - type: "uint64", - }, - { - internalType: "uint256", - name: "price", - type: "uint256", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "buy", - outputs: [], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "string[]", - name: "labels", - type: "string[]", - }, - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - { - internalType: "uint64", - name: "expiry", - type: "uint64", - }, - { - internalType: "address", - name: "token", - type: "address", - }, - { - internalType: "uint256", - name: "price", - type: "uint256", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "buyForErc20", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tld", - type: "uint256", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - ], - name: "claim", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tld", - type: "uint256", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - ], - name: "claimTo", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tld", - type: "uint256", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - ], - name: "claimToWithRecords", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address payable", - name: "receiver", - type: "address", - }, - ], - name: "closeMinter", - outputs: [], - stateMutability: "payable", - type: "function", - }, - { - inputs: [], - name: "cnsMintingController", - outputs: [ - { - internalType: "contract IMintingController", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "cnsResolver", - outputs: [ - { - internalType: "contract IResolver", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "cnsURIPrefixController", - outputs: [ - { - internalType: "contract IURIPrefixController", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - ], - name: "getRoleAdmin", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "grantRole", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "hasRole", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "contract IUNSRegistry", - name: "unsRegistry_", - type: "address", - }, - { - internalType: "contract IMintingController", - name: "cnsMintingController_", - type: "address", - }, - { - internalType: "contract IURIPrefixController", - name: "cnsURIPrefixController_", - type: "address", - }, - { - internalType: "contract IResolver", - name: "cnsResolver_", - type: "address", - }, - { - internalType: "address", - name: "unsOperator_", - type: "address", - }, - { - internalType: "address", - name: "forwarder", - type: "address", - }, - ], - name: "initialize", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "isBlocked", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "isMinter", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "forwarder", - type: "address", - }, - ], - name: "isTrustedForwarder", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "string[]", - name: "labels", - type: "string[]", - }, - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - { - internalType: "uint64", - name: "expiry", - type: "uint64", - }, - { - internalType: "bool", - name: "withReverse", - type: "bool", - }, - ], - name: "issueExpirableWithRecords", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "string[]", - name: "labels", - type: "string[]", - }, - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - { - internalType: "bool", - name: "withReverse", - type: "bool", - }, - ], - name: "issueWithRecords", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - 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: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "removeMinter", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address[]", - name: "accounts", - type: "address[]", - }, - ], - name: "removeMinters", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tld", - type: "uint256", - }, - ], - name: "removeTld", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint64", - name: "expiry", - type: "uint64", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "renew", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "renounceMinter", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "renounceOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "renounceRole", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "revoke", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "revokeRole", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address payable", - name: "receiver", - type: "address", - }, - ], - name: "rotateMinter", - outputs: [], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "forwarder", - type: "address", - }, - ], - name: "setForwarder", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - name: "setOperator", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "prefix", - type: "string", - }, - ], - name: "setTokenURIPrefix", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "transferOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "unpause", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "unsOperator", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "unsRegistry", - outputs: [ - { - internalType: "contract IUNSRegistry", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256[]", - name: "tokenIds", - type: "uint256[]", - }, - ], - name: "upgradeAll", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "recepient", - type: "address", - }, - ], - name: "withdraw", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "token", - type: "address", - }, - { - internalType: "address", - name: "recepient", - type: "address", - }, - ], - name: "withdraw", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -const _bytecode = "0x608060405234801561001057600080fd5b5061509f806100206000396000f3fe6080604052600436106102c95760003560e01c806391d1485411610175578063b9998a24116100dc578063d547741f11610095578063f2fde38b1161006f578063f2fde38b146108cd578063f5243bc4146108ed578063f940e3851461090d578063ffa1ad741461092d57600080fd5b8063d547741f1461087a578063d7db74c71461089a578063ec527389146108ad57600080fd5b8063b9998a24146107b8578063cc2a9a5b146107d8578063cc2c3fc4146107f8578063ceeb4f5014610818578063d1f5692c14610838578063d53913931461085857600080fd5b8063a3f4df7e1161012e578063a3f4df7e146106cb578063a849d65c14610718578063aa271e1a14610738578063ae31844a14610758578063b0aa98c714610778578063b3ab15fb1461079857600080fd5b806391d1485414610621578063983b2d5614610641578063986502751461066157806399e0dd7c14610676578063a217fddf14610696578063a3a3f7f6146106ab57600080fd5b80635b6fa8db11610234578063715018a6116101ed57806381c81d35116101c757806381c81d35146105bb5780638456cb59146105ce5780638da5cb5b146105e3578063906cecc11461060157600080fd5b8063715018a61461056657806371e2a6571461057b57806377a2a5891461059b57600080fd5b80635b6fa8db146104be5780635c975abb146104de5780635cd7e3b3146104f35780635e22cd86146105135780635fc1964f14610533578063634486da1461055357600080fd5b80633092afd5116102865780633092afd5146103c357806336568abe146103e35780633f41b614146104035780633f4ba83a1461043b57806351cff8d914610450578063572b6c051461047057600080fd5b806301ffc9a7146102ce5780631edb948e1461030357806320c5429b14610325578063248a9ca314610345578063268b15ed146103835780632f2ff15d146103a3575b600080fd5b3480156102da57600080fd5b506102ee6102e9366004613f0a565b61095e565b60405190151581526020015b60405180910390f35b34801561030f57600080fd5b5061032361031e366004613f59565b610995565b005b34801561033157600080fd5b50610323610340366004613f85565b610b3e565b34801561035157600080fd5b50610375610360366004613f85565b60009081526097602052604090206001015490565b6040519081526020016102fa565b34801561038f57600080fd5b5061032361039e366004613fdf565b610c61565b3480156103af57600080fd5b506103236103be36600461404a565b610cf4565b3480156103cf57600080fd5b506103236103de36600461407a565b610d1e565b3480156103ef57600080fd5b506103236103fe36600461404a565b610d32565b34801561040f57600080fd5b5060c954610423906001600160a01b031681565b6040516001600160a01b0390911681526020016102fa565b34801561044757600080fd5b50610323610dc0565b34801561045c57600080fd5b5061032361046b36600461407a565b610dd2565b34801561047c57600080fd5b506102ee61048b36600461407a565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546001600160a01b0390811691161490565b3480156104ca57600080fd5b5060cc54610423906001600160a01b031681565b3480156104ea57600080fd5b506102ee610e72565b3480156104ff57600080fd5b5061032361050e3660046140e9565b610e88565b34801561051f57600080fd5b5061032361052e3660046141a8565b6110ec565b34801561053f57600080fd5b5061032361054e3660046142e2565b611331565b61032361056136600461407a565b611379565b34801561057257600080fd5b5061032361143c565b34801561058757600080fd5b506103236105963660046142e2565b61144e565b3480156105a757600080fd5b5060ce54610423906001600160a01b031681565b6103236105c936600461407a565b611496565b3480156105da57600080fd5b50610323611513565b3480156105ef57600080fd5b506033546001600160a01b0316610423565b34801561060d57600080fd5b5061032361061c366004614380565b611523565b34801561062d57600080fd5b506102ee61063c36600461404a565b6115a9565b34801561064d57600080fd5b5061032361065c36600461407a565b6115d4565b34801561066d57600080fd5b506103236115e5565b34801561068257600080fd5b506103236106913660046143db565b6115ff565b3480156106a257600080fd5b50610375600081565b3480156106b757600080fd5b506103236106c636600461441c565b6116e6565b3480156106d757600080fd5b5061070b604051806040016040528060148152602001732aa7299d1026b4b73a34b7339026b0b730b3b2b960611b81525081565b6040516102fa91906144c2565b34801561072457600080fd5b5060cb54610423906001600160a01b031681565b34801561074457600080fd5b506102ee61075336600461407a565b61172f565b34801561076457600080fd5b506103236107733660046144d5565b611749565b34801561078457600080fd5b506102ee610793366004613f85565b611854565b3480156107a457600080fd5b506103236107b336600461407a565b6118b2565b3480156107c457600080fd5b506103236107d336600461407a565b6118dc565b3480156107e457600080fd5b506103236107f336600461450a565b611921565b34801561080457600080fd5b5060ca54610423906001600160a01b031681565b34801561082457600080fd5b5061032361083336600461458c565b611e18565b34801561084457600080fd5b506103236108533660046144d5565b611ebc565b34801561086457600080fd5b5061037560008051602061507383398151915281565b34801561088657600080fd5b5061032361089536600461404a565b611f73565b6103236108a8366004614641565b611f98565b3480156108b957600080fd5b506103236108c8366004613f85565b612128565b3480156108d957600080fd5b506103236108e836600461407a565b61219a565b3480156108f957600080fd5b50610323610908366004614736565b6121b6565b34801561091957600080fd5b5061032361092836600461484e565b612368565b34801561093957600080fd5b5061070b60405180604001604052806005815260200164302e352e3160d81b81525081565b60006001600160e01b03198216637965db0b60e01b148061098f57506301ffc9a760e01b6001600160e01b03198316145b92915050565b6109a06107536124e4565b6109c55760405162461bcd60e51b81526004016109bc9061487c565b60405180910390fd5b60c95460405163baef73e960e01b8152600481018390526000916001600160a01b03169063baef73e990602401602060405180830381865afa158015610a0f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a3391906148b1565b9050806001600160401b0316600003610a5e5760405162461bcd60e51b81526004016109bc906148ce565b806001600160401b0316836001600160401b031611610acb5760405162461bcd60e51b815260206004820152602360248201527f4d696e74696e674d616e616765723a204558504952595f4e4f545f455854454e60448201526211115160ea1b60648201526084016109bc565b60c954604051631fb9763760e11b81526001600160401b0385166004820152602481018490526001600160a01b0390911690633f72ec6e906044015b600060405180830381600087803b158015610b2157600080fd5b505af1158015610b35573d6000803e3d6000fd5b50505050505050565b610b496107536124e4565b610b655760405162461bcd60e51b81526004016109bc9061487c565b60c95460405163baef73e960e01b8152600481018390526001600160a01b039091169063baef73e990602401602060405180830381865afa158015610bae573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bd291906148b1565b6001600160401b0316600003610bfa5760405162461bcd60e51b81526004016109bc906148ce565b60c954604051637eee288d60e01b8152306004820152602481018390526001600160a01b0390911690637eee288d90604401600060405180830381600087803b158015610c4657600080fd5b505af1158015610c5a573d6000803e3d6000fd5b5050505050565b8282828080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250610ca493508592508491506124f3565b610cac610e72565b15610cc95760405162461bcd60e51b81526004016109bc90614911565b6060610b35610cd66124e4565b610ce988610ce489896126ca565b6126f6565b838460006001612807565b600082815260976020526040902060010154610d0f81612d5b565b610d198383612d6c565b505050565b610d26612df3565b610d2f81612e6c565b50565b610d3a6124e4565b6001600160a01b0316816001600160a01b031614610db25760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084016109bc565b610dbc8282612e84565b5050565b610dc8612df3565b610dd0612f09565b565b610dda612df3565b6001600160a01b038116610ded57600080fd5b60405147906001600160a01b0383169082156108fc029083906000818181858888f19350505050158015610e25573d6000803e3d6000fd5b50604080516001600160a01b03841681526020810183905260008183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a15050565b6000805160206150538339815191525460ff1690565b610e92868861493b565b8051600203610ec757610ea66107536124e4565b610ec25760405162461bcd60e51b81526004016109bc90614a05565b61100c565b6000610ed282612fb1565b60c9549092506001600160a01b0316905063430c2081610ef06124e4565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa158015610f3b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f5f9190614a49565b80610fee575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa158015610fb8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fdc9190614a49565b8015610fee5750610fee6107536124e4565b61100a5760405162461bcd60e51b81526004016109bc90614a66565b505b611016878961493b565b600060028251101561103a5760405162461bcd60e51b81526004016109bc90614ab5565b61108f61106e600084600186516110519190614b10565b8151811061106157611061614b23565b6020026020010151612fec565b8360008151811061108157611081614b23565b6020026020010151836124f3565b611097610e72565b156110b45760405162461bcd60e51b81526004016109bc90614911565b6110de8b6110c28b8d61493b565b6110cc8a8c61493b565b6110d6898b61493b565b600089612807565b505050505050505050505050565b6110f6878961493b565b805160020361112b5761110a6107536124e4565b6111265760405162461bcd60e51b81526004016109bc90614a05565b611270565b600061113682612fb1565b60c9549092506001600160a01b0316905063430c20816111546124e4565b6040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260248101849052604401602060405180830381865afa15801561119f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111c39190614a49565b80611252575060c95460ce5460405163430c208160e01b81526001600160a01b0391821660048201526024810184905291169063430c208190604401602060405180830381865afa15801561121c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112409190614a49565b801561125257506112526107536124e4565b61126e5760405162461bcd60e51b81526004016109bc90614a66565b505b61127a888a61493b565b8360028251101561129d5760405162461bcd60e51b81526004016109bc90614ab5565b6112b461106e600084600186516110519190614b10565b6112bc610e72565b156112d95760405162461bcd60e51b81526004016109bc90614911565b60028a146112f95760405162461bcd60e51b81526004016109bc90614b39565b6113228c6113078c8e61493b565b6113118b8d61493b565b61131b8a8c61493b565b8989612807565b50505050505050505050505050565b611339612df3565b60005b8151811015610dbc5761136782828151811061135a5761135a614b23565b6020026020010151612e6c565b8061137181614b7f565b91505061133c565b6113846107536124e4565b6113a05760405162461bcd60e51b81526004016109bc9061487c565b6001600160a01b0381166113f65760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016109bc565b6113ff816130a0565b6114076115e5565b6040516001600160a01b038216903480156108fc02916000818181858888f19350505050158015610dbc573d6000803e3d6000fd5b611444612df3565b610dd060006130b8565b611456612df3565b60005b8151811015610dbc5761148482828151811061147757611477614b23565b60200260200101516130a0565b8061148e81614b7f565b915050611459565b6114a16107536124e4565b6114bd5760405162461bcd60e51b81526004016109bc9061487c565b6001600160a01b0381166113ff5760405162461bcd60e51b815260206004820152601d60248201527f4d696e746572526f6c653a2052454345495645525f49535f454d50545900000060448201526064016109bc565b61151b612df3565b610dd061310a565b8282828080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525061156693508592508491506124f3565b61156e610e72565b1561158b5760405162461bcd60e51b81526004016109bc90614911565b606061159f87610ce988610ce489896126ca565b5050505050505050565b60009182526097602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6115dc612df3565b610d2f816130a0565b610dd06000805160206150738339815191526103fe6124e4565b611607612df3565b60c954604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906116399085908590600401614b98565b600060405180830381600087803b15801561165357600080fd5b505af1158015611667573d6000803e3d6000fd5b505060cb546001600160a01b0316159150610dbc90505760cb54604051632678375f60e21b81526001600160a01b03909116906399e0dd7c906116b09085908590600401614b98565b600060405180830381600087803b1580156116ca57600080fd5b505af11580156116de573d6000803e3d6000fd5b505050505050565b6116ee612df3565b610d1983838080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250859250613172915050565b600061098f600080516020615073833981519152836115a9565b6117546107536124e4565b6117705760405162461bcd60e51b81526004016109bc9061487c565b60c9546040516000916001600160a01b0316906117939085908590602401614bc7565b60408051601f198184030181529181526020820180516001600160e01b0316635718c22560e11b179052516117c89190614c00565b6000604051808303816000865af19150503d8060008114611805576040519150601f19603f3d011682016040523d82523d6000602084013e61180a565b606091505b5050905080610d195760405162461bcd60e51b81526020600482015260166024820152751d5c19dc985919505b1b081b5bd8dac819985a5b195960521b60448201526064016109bc565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd6960208201529081018290526000906118a8906060015b6040516020818303038152906040528051906020012090565b5460ff1692915050565b6118ba612df3565b60ce80546001600160a01b0319166001600160a01b0392909216919091179055565b6118e4612df3565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e80546001600160a01b0319166001600160a01b03831617905550565b600054610100900460ff16158080156119415750600054600160ff909116105b8061195b5750303b15801561195b575060005460ff166001145b6119be5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016109bc565b6000805460ff1916600117905580156119e1576000805461ff0019166101001790555b60c980546001600160a01b03199081166001600160a01b038a81169190911790925560ca8054821689841617905560cb8054821688841617905560cc8054821687841617905560ce8054909116918516919091179055611a3f613292565b611a476132c9565b611a5082613302565b611a58613329565b6040805161036081018252600661032082018181526563727970746f60d01b610340840152825282518084018452818152651dd85b1b195d60d21b602082810191909152808401919091528351808501855260018152600f60fb1b8183015283850152835180850185526003808252621b999d60ea1b82840152606085019190915284518086018652600a815269313637b1b5b1b430b4b760b11b818401526080850152845180860186526007808252663134ba31b7b4b760c91b8285015260a0860191909152855180870187528281526207070760eb1b8185015260c0860152855180870187528281526264616f60e81b8185015260e086015285518087018752828152621e9a5b60ea1b8185015261010086015285518087018752908152663837b63cb3b7b760c91b8184015261012085015284518086018652600b81526a756e73746f707061626c6560a81b81840152610140850152845180860186528381526535b632bb32b960d11b8184015261016085015284518086018652600280825261686960f01b8285015261018086019190915285518087018752848152656b726573757360d01b818501526101a086015285518087018752600580825264616e696d6560d81b828601526101c087019190915286518088018852818152646d616e676160d81b818601526101e087015286518088018852600981526862696e616e6365757360b81b8186015261020087015286518088018852818152647265616c6d60d81b818601526102208701528651808801885291825261676f60f01b82850152610240860191909152855180870187526008815267185b1d1a5b5a5cdd60c21b818501526102608601528551808701875290815264707564677960d81b81840152610280850152845180860186528381526530bab9ba34b760d11b818401526102a08501528451808601865292835265189a5d19d95d60d21b838301526102c08401929092528351808501855291825262706f6760e81b828201526102e083019190915282518084019093526004835263636c617960e01b9083015261030081019190915260005b6019811015611da257611d90828260198110611d8457611d84614b23565b60200201516000613172565b80611d9a81614b7f565b915050611d66565b50611dc960405180604001604052806003815260200162636f6d60e81b8152506001613172565b508015610b35576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050505050565b8686868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250611e5b93508592508491506124f3565b611e63610e72565b15611e805760405162461bcd60e51b81526004016109bc90614911565b611eaf8a611e928b610ce48c8c6126ca565b611e9c888a61493b565b611ea6878961493b565b60006001612807565b5050505050505050505050565b611ec4612df3565b60005b81811015610d195760c9546001600160a01b03166350960239848484818110611ef257611ef2614b23565b9050602002016020810190611f07919061407a565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401600060405180830381600087803b158015611f4857600080fd5b505af1158015611f5c573d6000803e3d6000fd5b505050508080611f6b90614b7f565b915050611ec7565b600082815260976020526040902060010154611f8e81612d5b565b610d198383612e84565b611fa2898b61493b565b6000600282511015611fc65760405162461bcd60e51b81526004016109bc90614ab5565b611fdd61106e600084600186516110519190614b10565b611fe5610e72565b156120025760405162461bcd60e51b81526004016109bc90614911565b60028b146120225760405162461bcd60e51b81526004016109bc90614b39565b6120688d8d8d898960008a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061336992505050565b843410156120b85760405162461bcd60e51b815260206004820181905260248201527f4d696e74696e674d616e616765723a204e4f545f454e4f5547485f46554e445360448201526064016109bc565b6120ca8d8d8d8d8d8d8d8c6000613529565b84341115611322576120da6124e4565b6001600160a01b03166108fc6120f08734614b10565b6040518115909202916000818181858888f19350505050158015612118573d6000803e3d6000fd5b5050505050505050505050505050565b612130612df3565b612139816135e5565b6121555760405162461bcd60e51b81526004016109bc90614c1c565b600081815260cd6020526040812061216c91613ebc565b60405181907f0aa1aff0f830e739d86baf0e6624d6763da02f7733575e0e463886cd062dea6a90600090a250565b6121a2612df3565b6121ab8161360b565b610d2f600082613681565b6121c08a8c61493b565b60006002825110156121e45760405162461bcd60e51b81526004016109bc90614ab5565b6121fb61106e600084600186516110519190614b10565b612203610e72565b156122205760405162461bcd60e51b81526004016109bc90614911565b60028c146122405760405162461bcd60e51b81526004016109bc90614b39565b6122858e8e8e8a898b8a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061336992505050565b856001600160a01b03166323b872dd61229c6124e4565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152306024820152604481018890526064016020604051808303816000875af11580156122ef573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123139190614a49565b6123575760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b60448201526064016109bc565b6121188e8e8e8e8e8e8e8c8e613529565b612370612df3565b6040516370a0823160e01b81523060048201526000906001600160a01b038416906370a0823190602401602060405180830381865afa1580156123b7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123db9190614c5e565b60405163a9059cbb60e01b81526001600160a01b038481166004830152602482018390529192509084169063a9059cbb906044016020604051808303816000875af115801561242e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124529190614a49565b6124965760405162461bcd60e51b8152602060048201526015602482015274115490cc8c0e881313d5d7d31155915317d1905253605a1b60448201526064016109bc565b604080516001600160a01b0384811682526020820184905285168183015290517e1a143d5b175701cb3246058ffac3d63945192075a926ff73a19930f09d587a9181900360600190a1505050565b60006124ee61368b565b905090565b6124fc836135e5565b6125185760405162461bcd60e51b81526004016109bc90614c1c565b600083815260cf602052604090205460ff1615156001600160401b0382161515146125945760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544c445f455850495241424c455f4d496044820152650a69a82a886960d31b60648201526084016109bc565b60006125c78360408051808201825260008082526020918201528151808301909252825182529182019181019190915290565b9050600a8160000151111561266f576125f26125e6826000600a6136d1565b80516020909101512090565b7fb551e0305c8163b812374b8e78b577c77f226f6f10c5ad03e52699578fbc34b80361266f5760405162461bcd60e51b815260206004820152602660248201527f4d696e74696e674d616e616765723a20544f4b454e5f4c4142454c5f50524f4860448201526512509255115160d21b60648201526084016109bc565b61267883613710565b6126c45760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a204c4142454c5f494e56414c494400000060448201526064016109bc565b50505050565b606082826040516020016126df929190614c77565b604051602081830303815290604052905092915050565b604080516002808252606082810190935260009190816020015b6060815260200190600190039081612710579050509050828160008151811061273b5761273b614b23565b602002602001018190525060cd6000858152602001908152602001600020805461276490614c9f565b80601f016020809104026020016040519081016040528092919081815260200182805461279090614c9f565b80156127dd5780601f106127b2576101008083540402835291602001916127dd565b820191906000526020600020905b8154815290600101906020018083116127c057829003601f168201915b5050505050816001815181106127f5576127f5614b23565b60209081029190910101529392505050565b600080600061281588612fb1565b91509150838015612827575060028851115b80156128a9575060c9546040516331a9108f60e11b8152600481018390526001600160a01b038b8116921690636352211e90602401602060405180830381865afa158015612879573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061289d9190614cd9565b6001600160a01b031614155b156129095760405162461bcd60e51b815260206004820152602a60248201527f4d696e74696e674d616e616765723a20524556455253455f5245434f52445f4e60448201526913d517d0531313d5d15160b21b60648201526084016109bc565b60c954604051634f558e7960e01b8152600481018490526001600160a01b0390911690634f558e7990602401602060405180830381865afa158015612952573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129769190614a49565b8015612a67575060c9546040516331a9108f60e11b81526004810184905230916001600160a01b031690636352211e90602401602060405180830381865afa1580156129c6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129ea9190614cd9565b6001600160a01b03161480612a67575060c95460405163d9548e5360e01b8152600481018490526001600160a01b039091169063d9548e5390602401602060405180830381865afa158015612a43573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612a679190614a49565b15612b58576001600160401b03851615612ae95760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b158015612ad057600080fd5b505af1158015612ae4573d6000803e3d6000fd5b505050505b60c954604051630fb8df0360e11b81526001600160a01b0390911690631f71be0690612b21908c908c908c908c908b90600401614d4b565b600060405180830381600087803b158015612b3b57600080fd5b505af1158015612b4f573d6000803e3d6000fd5b50505050612d4f565b612b6182613874565b612b6a886138d3565b8015612b77575087516002145b8015612b8a57506001600160401b038516155b15612c685760ca5488516001600160a01b039091169063c36c2125908b908b90600090612bb957612bb9614b23565b602090810291909101015160cc546040516001600160e01b031960e086901b168152612bf39392916001600160a01b031690600401614daa565b600060405180830381600087803b158015612c0d57600080fd5b505af1158015612c21573d6000803e3d6000fd5b50505050600087511115612c635760cc54604051633a0deb9d60e21b81526001600160a01b039091169063e837ae7490612b21908a908a908790600401614ddf565b612d4f565b60c95460405163ba5d40b760e01b81526001600160a01b039091169063ba5d40b790612ca0908c908c908c908c908b90600401614d4b565b600060405180830381600087803b158015612cba57600080fd5b505af1158015612cce573d6000803e3d6000fd5b505050506001600160401b03851615612d4f5760c954604051631fb9763760e11b81526001600160401b0387166004820152602481018490526001600160a01b0390911690633f72ec6e90604401600060405180830381600087803b158015612d3657600080fd5b505af1158015612d4a573d6000803e3d6000fd5b505050505b50979650505050505050565b610d2f81612d676124e4565b61392d565b612d7682826115a9565b610dbc5760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19166001179055612daf6124e4565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b612dfb6124e4565b6001600160a01b0316612e166033546001600160a01b031690565b6001600160a01b031614610dd05760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016109bc565b610d2f60008051602061507383398151915282611f73565b612e8e82826115a9565b15610dbc5760008281526097602090815260408083206001600160a01b03851684529091529020805460ff19169055612ec56124e4565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b612f11610e72565b612f545760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881393d517d4105554d15160621b60448201526064016109bc565b600080516020615053833981519152805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa612f946124e4565b6040516001600160a01b03909116815260200160405180910390a1565b805160009081905b8015612fe657829150612fd28285611051600185614b10565b925080612fde81614e15565b915050612fb9565b50915091565b6000815160000361303f5760405162461bcd60e51b815260206004820152601b60248201527f4d696e74696e674d616e616765723a204c4142454c5f454d505459000000000060448201526064016109bc565b82826040516020016130519190614c00565b60405160208183030381529060405280519060200120604051602001613081929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b610d2f60008051602061507383398151915282613681565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b613112610e72565b1561312f5760405162461bcd60e51b81526004016109bc90614911565b600080516020615053833981519152805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258612f946124e4565b600061317f600084612fec565b600081815260cd6020526040902090915061319a8482614e72565b50600081815260cf602052604090819020805460ff19168415151790555181907f4fce6f6e172b04eaa80325d8e3b0180a34945000f3e214605039e8420fdf8980906131e79086906144c2565b60405180910390a260c954604051634f558e7960e01b8152600481018390526001600160a01b0390911690634f558e7990602401602060405180830381865afa158015613238573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061325c9190614a49565b610d195760c9546040516307befae360e51b81526001600160a01b039091169063f7df5c6090610b079084908790600401614f31565b600054610100900460ff166132b95760405162461bcd60e51b81526004016109bc90614f52565b610dd06132c46124e4565b6130b8565b600054610100900460ff166132f05760405162461bcd60e51b81526004016109bc90614f52565b610dd060006132fd6124e4565b613681565b600054610100900460ff166118e45760405162461bcd60e51b81526004016109bc90614f52565b600054610100900460ff166133505760405162461bcd60e51b81526004016109bc90614f52565b600080516020615053833981519152805460ff19169055565b600061337d613378878961493b565b612fb1565b506040516bffffffffffffffffffffffff1930606090811b821660208401524660348401528b811b82166054840152606883018490526001600160c01b031960c08a901b1660888401526090830188905286901b1660b08201529091506000906134599084906134539060c401604051602081830303815290604052805190602001206040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c8101829052600090605c01604051602081830303815290604052805190602001209050919050565b90613991565b90506134648161172f565b6134bc5760405162461bcd60e51b8152602060048201526024808201527f4d696e74696e674d616e616765723a205349474e45525f49535f4e4f545f4d49604482015263272a22a960e11b60648201526084016109bc565b42866001600160401b03161161351e5760405162461bcd60e51b815260206004820152602160248201527f4d696e74696e674d616e616765723a20455850495245445f5349474e415455526044820152604560f81b60648201526084016109bc565b505050505050505050565b60006135708a6135398a8c61493b565b613543898b61493b565b61354d888a61493b565b60008f6001600160a01b03166135616124e4565b6001600160a01b031614612807565b9050896001600160a01b03166135846124e4565b6001600160a01b0316827fa545b6fd3355e8d57f8c8147bafe740545bd3ea1f94bef2576a6d532a7c3b60586866040516135d19291909182526001600160a01b0316602082015260400190565b60405180910390a450505050505050505050565b600081815260cd60205260408120805482919061360190614c9f565b9050119050919050565b613613612df3565b6001600160a01b0381166136785760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016109bc565b610d2f816130b8565b610dbc8282612d6c565b7f893ef2ea16c023f61d4f55d3e6ee3fc3f2fbfd478461323dbc2fbf919047086e546000906001600160a01b031633036136cc575060331936013560601c90565b503390565b604080518082019091526000808252602082015260405180604001604052808381526020018486602001516137069190614f9d565b9052949350505050565b6000815160000361372357506000919050565b60208201805160f81c60308110801590613741575060398160ff1611155b158015613763575060618160ff16101580156137615750607a8160ff1611155b155b15613772575060009392505050565b835160018111156137e0576137948361378c600184614b10565b015160f81c90565b915060308260ff16101580156137ae575060398260ff1611155b1580156137d0575060618260ff16101580156137ce5750607a8260ff1611155b155b156137e057506000949350505050565b60015b6137ee600183614b10565b811015613868578381015160f81c9250602d8314801590613824575060308360ff1610158015613822575060398360ff1611155b155b8015613845575060618360ff16101580156138435750607a8360ff1611155b155b156138565750600095945050505050565b8061386081614b7f565b9150506137e3565b50600195945050505050565b61387d81611854565b156138ca5760405162461bcd60e51b815260206004820152601d60248201527f4d696e74696e674d616e616765723a20544f4b454e5f424c4f434b454400000060448201526064016109bc565b610d2f816139b5565b6000806138ea600084600186516110519190614b10565b60ca549091506001600160a01b0316158015906139265750807f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f145b9392505050565b61393782826115a9565b610dbc5761394f816001600160a01b03166014613a39565b61395a836020613a39565b60405160200161396b929190614fb0565b60408051601f198184030181529082905262461bcd60e51b82526109bc916004016144c2565b60008060006139a08585613bd4565b915091506139ad81613c19565b509392505050565b604080517f1ec047073e2c8b15660901dbfdb6e3ff6365bd699dd9f95dcc6eab5448bebd6960208201529081018290526001906139f49060600161188f565b805460ff19169115159190911790556040518181527f2ce5d9351b1d590d5a066db0d2dc7602d55f092506a83a7ee8c4d78ee357d75a9060200160405180910390a150565b60606000613a48836002615025565b613a53906002614f9d565b6001600160401b03811115613a6a57613a6a614279565b6040519080825280601f01601f191660200182016040528015613a94576020820181803683370190505b509050600360fc1b81600081518110613aaf57613aaf614b23565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110613ade57613ade614b23565b60200101906001600160f81b031916908160001a9053506000613b02846002615025565b613b0d906001614f9d565b90505b6001811115613b85576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110613b4157613b41614b23565b1a60f81b828281518110613b5757613b57614b23565b60200101906001600160f81b031916908160001a90535060049490941c93613b7e81614e15565b9050613b10565b5083156139265760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016109bc565b6000808251604103613c0a5760208301516040840151606085015160001a613bfe87828585613dcf565b94509450505050613c12565b506000905060025b9250929050565b6000816004811115613c2d57613c2d61503c565b03613c355750565b6001816004811115613c4957613c4961503c565b03613c965760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e6174757265000000000000000060448201526064016109bc565b6002816004811115613caa57613caa61503c565b03613cf75760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e6774680060448201526064016109bc565b6003816004811115613d0b57613d0b61503c565b03613d635760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b60648201526084016109bc565b6004816004811115613d7757613d7761503c565b03610d2f5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c604482015261756560f01b60648201526084016109bc565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613e065750600090506003613eb3565b8460ff16601b14158015613e1e57508460ff16601c14155b15613e2f5750600090506004613eb3565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613e83573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613eac57600060019250925050613eb3565b9150600090505b94509492505050565b508054613ec890614c9f565b6000825580601f10613ed8575050565b601f016020900490600052602060002090810190610d2f91905b80821115613f065760008155600101613ef2565b5090565b600060208284031215613f1c57600080fd5b81356001600160e01b03198116811461392657600080fd5b6001600160401b0381168114610d2f57600080fd5b8035613f5481613f34565b919050565b60008060408385031215613f6c57600080fd5b8235613f7781613f34565b946020939093013593505050565b600060208284031215613f9757600080fd5b5035919050565b60008083601f840112613fb057600080fd5b5081356001600160401b03811115613fc757600080fd5b602083019150836020828501011115613c1257600080fd5b600080600060408486031215613ff457600080fd5b8335925060208401356001600160401b0381111561401157600080fd5b61401d86828701613f9e565b9497909650939450505050565b6001600160a01b0381168114610d2f57600080fd5b8035613f548161402a565b6000806040838503121561405d57600080fd5b82359150602083013561406f8161402a565b809150509250929050565b60006020828403121561408c57600080fd5b81356139268161402a565b60008083601f8401126140a957600080fd5b5081356001600160401b038111156140c057600080fd5b6020830191508360208260051b8501011115613c1257600080fd5b8015158114610d2f57600080fd5b60008060008060008060008060a0898b03121561410557600080fd5b88356141108161402a565b975060208901356001600160401b038082111561412c57600080fd5b6141388c838d01614097565b909950975060408b013591508082111561415157600080fd5b61415d8c838d01614097565b909750955060608b013591508082111561417657600080fd5b506141838b828c01614097565b9094509250506080890135614197816140db565b809150509295985092959890939650565b600080600080600080600080600060c08a8c0312156141c657600080fd5b89356141d18161402a565b985060208a01356001600160401b03808211156141ed57600080fd5b6141f98d838e01614097565b909a50985060408c013591508082111561421257600080fd5b61421e8d838e01614097565b909850965060608c013591508082111561423757600080fd5b506142448c828d01614097565b90955093505060808a013561425881613f34565b915060a08a0135614268816140db565b809150509295985092959850929598565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b03811182821017156142b7576142b7614279565b604052919050565b60006001600160401b038211156142d8576142d8614279565b5060051b60200190565b600060208083850312156142f557600080fd5b82356001600160401b0381111561430b57600080fd5b8301601f8101851361431c57600080fd5b803561432f61432a826142bf565b61428f565b81815260059190911b8201830190838101908783111561434e57600080fd5b928401925b828410156143755783356143668161402a565b82529284019290840190614353565b979650505050505050565b6000806000806060858703121561439657600080fd5b84356143a18161402a565b93506020850135925060408501356001600160401b038111156143c357600080fd5b6143cf87828801613f9e565b95989497509550505050565b600080602083850312156143ee57600080fd5b82356001600160401b0381111561440457600080fd5b61441085828601613f9e565b90969095509350505050565b60008060006040848603121561443157600080fd5b83356001600160401b0381111561444757600080fd5b61445386828701613f9e565b9094509250506020840135614467816140db565b809150509250925092565b60005b8381101561448d578181015183820152602001614475565b50506000910152565b600081518084526144ae816020860160208601614472565b601f01601f19169290920160200192915050565b6020815260006139266020830184614496565b600080602083850312156144e857600080fd5b82356001600160401b038111156144fe57600080fd5b61441085828601614097565b60008060008060008060c0878903121561452357600080fd5b863561452e8161402a565b9550602087013561453e8161402a565b9450604087013561454e8161402a565b9350606087013561455e8161402a565b9250608087013561456e8161402a565b915060a087013561457e8161402a565b809150509295509295509295565b60008060008060008060008060a0898b0312156145a857600080fd5b88356145b38161402a565b97506020890135965060408901356001600160401b03808211156145d657600080fd5b6145e28c838d01613f9e565b909850965060608b01359150808211156145fb57600080fd5b6146078c838d01614097565b909650945060808b013591508082111561462057600080fd5b5061462d8b828c01614097565b999c989b5096995094979396929594505050565b600080600080600080600080600080600060e08c8e03121561466257600080fd5b61466b8c61403f565b9a506001600160401b038060208e0135111561468657600080fd5b6146968e60208f01358f01614097565b909b50995060408d01358110156146ac57600080fd5b6146bc8e60408f01358f01614097565b909950975060608d01358110156146d257600080fd5b6146e28e60608f01358f01614097565b90975095506146f360808e01613f49565b945060a08d013593508060c08e0135111561470d57600080fd5b5061471e8d60c08e01358e01613f9e565b81935080925050509295989b509295989b9093969950565b6000806000806000806000806000806000806101008d8f03121561475957600080fd5b6147628d61403f565b9b506001600160401b0360208e0135111561477c57600080fd5b61478c8e60208f01358f01614097565b909b5099506001600160401b0360408e013511156147a957600080fd5b6147b98e60408f01358f01614097565b90995097506001600160401b0360608e013511156147d657600080fd5b6147e68e60608f01358f01614097565b90975095506147f760808e01613f49565b945061480560a08e0161403f565b935060c08d013592506001600160401b0360e08e0135111561482657600080fd5b6148368e60e08f01358f01613f9e565b81935080925050509295989b509295989b509295989b565b6000806040838503121561486157600080fd5b823561486c8161402a565b9150602083013561406f8161402a565b6020808252818101527f4d696e746572526f6c653a2043414c4c45525f49535f4e4f545f4d494e544552604082015260600190565b6000602082840312156148c357600080fd5b815161392681613f34565b60208082526023908201527f4d696e74696e674d616e616765723a20544f4b454e5f4e4f545f455850495241604082015262424c4560e81b606082015260800190565b60208082526010908201526f14185d5cd8589b194e8814105554d15160821b604082015260600190565b600061494961432a846142bf565b80848252602080830192508560051b85013681111561496757600080fd5b855b818110156149f95780356001600160401b03808211156149895760008081fd5b90880190601f368184011261499e5760008081fd5b8235828111156149b0576149b0614279565b6149c1818301601f1916880161428f565b925080835236878286010111156149da57600091508182fd5b8087850188850137600090830187015250865250938201938201614969565b50919695505050505050565b60208082526024908201527f4d696e74696e674d616e616765723a2043414c4c45525f49535f4e4f545f4d49604082015263272a22a960e11b606082015260800190565b600060208284031215614a5b57600080fd5b8151613926816140db565b6020808252602f908201527f4d696e74696e674d616e616765723a2053454e4445525f49535f4e4f545f415060408201526e282927ab22a22fa7a92fa7aba722a960891b606082015260800190565b60208082526025908201527f4d696e74696e674d616e616765723a204c4142454c535f4c454e4754485f42456040820152642627abaf9960d91b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b8181038181111561098f5761098f614afa565b634e487b7160e01b600052603260045260246000fd5b60208082526026908201527f4d696e74696e674d616e616765723a20535542444f4d41494e535f4e4f545f41604082015265131313d5d15160d21b606082015260800190565b600060018201614b9157614b91614afa565b5060010190565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b6020808252810182905260006001600160fb1b03831115614be757600080fd5b8260051b80856040850137919091016040019392505050565b60008251614c12818460208701614472565b9190910192915050565b60208082526022908201527f4d696e74696e674d616e616765723a20544c445f4e4f545f5245474953544552604082015261115160f21b606082015260800190565b600060208284031215614c7057600080fd5b5051919050565b6b756e732d646576746573742d60a01b81528183600c83013760009101600c01908152919050565b600181811c90821680614cb357607f821691505b602082108103614cd357634e487b7160e01b600052602260045260246000fd5b50919050565b600060208284031215614ceb57600080fd5b81516139268161402a565b600081518084526020808501808196508360051b8101915082860160005b85811015614d3e578284038952614d2c848351614496565b98850198935090840190600101614d14565b5091979650505050505050565b6001600160a01b038616815260a060208201819052600090614d6f90830187614cf6565b8281036040840152614d818187614cf6565b90508281036060840152614d958186614cf6565b91505082151560808301529695505050505050565b600060018060a01b03808616835260606020840152614dcc6060840186614496565b9150808416604084015250949350505050565b606081526000614df26060830186614cf6565b8281036020840152614e048186614cf6565b915050826040830152949350505050565b600081614e2457614e24614afa565b506000190190565b601f821115610d1957600081815260208120601f850160051c81016020861015614e535750805b601f850160051c820191505b818110156116de57828155600101614e5f565b81516001600160401b03811115614e8b57614e8b614279565b614e9f81614e998454614c9f565b84614e2c565b602080601f831160018114614ed45760008415614ebc5750858301515b600019600386901b1c1916600185901b1785556116de565b600085815260208120601f198616915b82811015614f0357888601518255948401946001909101908401614ee4565b5085821015614f215787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b828152604060208201526000614f4a6040830184614496565b949350505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b8082018082111561098f5761098f614afa565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351614fe8816017850160208801614472565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351615019816028840160208801614472565b01602801949350505050565b808202811582820484141761098f5761098f614afa565b634e487b7160e01b600052602160045260246000fdfe5496787fc1ebdfeba375028c1865f13fbb1d63c0caa356ccc1b29a80f3ebd6229f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a164736f6c6343000811000a"; -const isSuperArgs = (xs) => xs.length > 1; -class MintingManagerMock__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(overrides) { - return super.getDeployTransaction(overrides || {}); - } - deploy(overrides) { - return super.deploy(overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.MintingManagerMock__factory = MintingManagerMock__factory; -MintingManagerMock__factory.bytecode = _bytecode; -MintingManagerMock__factory.abi = _abi; diff --git a/dist/types/factories/contracts/mocks/UNSRegistryForwarderMock__factory.d.ts b/dist/types/factories/contracts/mocks/UNSRegistryForwarderMock__factory.d.ts deleted file mode 100644 index cc53b4b2..00000000 --- a/dist/types/factories/contracts/mocks/UNSRegistryForwarderMock__factory.d.ts +++ /dev/null @@ -1,123 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../common"; -import type { UNSRegistryForwarderMock, UNSRegistryForwarderMockInterface } from "../../../contracts/mocks/UNSRegistryForwarderMock"; -declare type UNSRegistryForwarderMockConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class UNSRegistryForwarderMock__factory extends ContractFactory { - constructor(...args: UNSRegistryForwarderMockConstructorParams); - getDeployTransaction(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): UNSRegistryForwarderMock__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b50610cf8806100206000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c80631bf7e13e146100515780636ccbae5f1461007a5780638129fc1c146100a8578063a4247400146100b2575b600080fd5b61006461005f3660046108d4565b6100d5565b60405161007191906109c3565b60405180910390f35b61009a6100883660046109d6565b60009081526035602052604090205490565b604051908152602001610071565b6100b06101e5565b005b6100c56100c03660046108d4565b6102f6565b6040519015158152602001610071565b606060005a90506100e78585856102f6565b6101485760405162461bcd60e51b815260206004820152602760248201527f554e535265676973747279466f727761726465723a205349474e41545552455f6044820152661253959053125160ca1b60648201526084015b60405180910390fd5b6101da6101586020870187610a0b565b3060408801358461016c60608b018b610a26565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061034992505050565b9150505b9392505050565b600054610100900460ff16158080156102055750600054600160ff909116105b8061021f5750303b15801561021f575060005460ff166001145b6102825760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840161013f565b6000805460ff1916600117905580156102a5576000805461ff0019166101001790555b6102ad61042a565b80156102f3576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50565b600061034161030485610add565b3085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061045b92505050565b949350505050565b6060610354856105a4565b600080876001600160a01b03168661036e8b8a89896105d0565b60405161037b9190610b9e565b60006040518083038160008787f1925050503d80600081146103b9576040519150601f19603f3d011682016040523d82523d6000602084013e6103be565b606091505b5090925090506103cf603f87610bba565b5a116103dd576103dd610bdc565b61041d82826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c4544000000000000815250610600565b9998505050505050505050565b600054610100900460ff166104515760405162461bcd60e51b815260040161013f90610bf2565b610459610639565b565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa1580156104a2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104c69190610c3d565b905060006105748660600151805190602001208688602001516040516020016105149392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561059a5750855161059a906001600160a01b03168286610660565b9695505050505050565b6000818152603560205260409020546105be906001610c56565b60009182526035602052604090912055565b60608285856040516020016105e793929190610c7d565b6040516020818303038152906040529050949350505050565b6060831561060f5750816101de565b82511561061f5782518084602001fd5b8160405162461bcd60e51b815260040161013f91906109c3565b600054610100900460ff166104595760405162461bcd60e51b815260040161013f90610bf2565b600080600061066f85856107a2565b9092509050600081600481111561068857610688610cbc565b1480156106a65750856001600160a01b0316826001600160a01b0316145b156106b6576001925050506101de565b600080876001600160a01b0316631626ba7e60e01b88886040516024016106de929190610cd2565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161071c9190610b9e565b600060405180830381855afa9150503d8060008114610757576040519150601f19603f3d011682016040523d82523d6000602084013e61075c565b606091505b509150915081801561076f575080516020145b801561079657508051630b135d3f60e11b906107949083016020908101908401610c3d565b145b98975050505050505050565b60008082516041036107d85760208301516040840151606085015160001a6107cc878285856107e7565b945094505050506107e0565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561081e57506000905060036108cb565b8460ff16601b1415801561083657508460ff16601c14155b1561084757506000905060046108cb565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa15801561089b573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166108c4576000600192509250506108cb565b9150600090505b94509492505050565b6000806000604084860312156108e957600080fd5b833567ffffffffffffffff8082111561090157600080fd5b908501906080828803121561091557600080fd5b9093506020850135908082111561092b57600080fd5b818601915086601f83011261093f57600080fd5b81358181111561094e57600080fd5b87602082850101111561096057600080fd5b6020830194508093505050509250925092565b60005b8381101561098e578181015183820152602001610976565b50506000910152565b600081518084526109af816020860160208601610973565b601f01601f19169290920160200192915050565b6020815260006101de6020830184610997565b6000602082840312156109e857600080fd5b5035919050565b80356001600160a01b0381168114610a0657600080fd5b919050565b600060208284031215610a1d57600080fd5b6101de826109ef565b6000808335601e19843603018112610a3d57600080fd5b83018035915067ffffffffffffffff821115610a5857600080fd5b6020019150368190038213156107e057600080fd5b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610aa657610aa6610a6d565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ad557610ad5610a6d565b604052919050565b600060808236031215610aef57600080fd5b610af7610a83565b610b00836109ef565b81526020808401358183015260408401356040830152606084013567ffffffffffffffff80821115610b3157600080fd5b9085019036601f830112610b4457600080fd5b813581811115610b5657610b56610a6d565b610b68601f8201601f19168501610aac565b91508082523684828501011115610b7e57600080fd5b808484018584013760009082019093019290925250606082015292915050565b60008251610bb0818460208701610973565b9190910192915050565b600082610bd757634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b600060208284031215610c4f57600080fd5b5051919050565b80820180821115610c7757634e487b7160e01b600052601160045260246000fd5b92915050565b60008451610c8f818460208901610973565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b600052602160045260246000fd5b828152604060208201526000610341604083018461099756fea164736f6c6343000811000a"; - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "uint8"; - readonly name: "version"; - readonly type: "uint8"; - }]; - readonly name: "Initialized"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly components: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "nonce"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly internalType: "struct IForwarder.ForwardRequest"; - readonly name: "req"; - readonly type: "tuple"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "execute"; - readonly outputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "initialize"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "nonceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly components: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "nonce"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly internalType: "struct IForwarder.ForwardRequest"; - readonly name: "req"; - readonly type: "tuple"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "verify"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): UNSRegistryForwarderMockInterface; - static connect(address: string, runner?: ContractRunner | null): UNSRegistryForwarderMock; -} -export {}; -//# sourceMappingURL=UNSRegistryForwarderMock__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/UNSRegistryForwarderMock__factory.d.ts.map b/dist/types/factories/contracts/mocks/UNSRegistryForwarderMock__factory.d.ts.map deleted file mode 100644 index 2c02171c..00000000 --- a/dist/types/factories/contracts/mocks/UNSRegistryForwarderMock__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"UNSRegistryForwarderMock__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/mocks/UNSRegistryForwarderMock__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,KAAK,EACV,wBAAwB,EACxB,iCAAiC,EAClC,MAAM,mDAAmD,CAAC;AA2I3D,aAAK,yCAAyC,GAC1C,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,iCAAkC,SAAQ,eAAe;gBACxD,GAAG,IAAI,EAAE,yCAAyC;IAQrD,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CACd,MAAM,EAAE,cAAc,GAAG,IAAI,GAC5B,iCAAiC;IAIpC,MAAM,CAAC,QAAQ,CAAC,QAAQ,wjNAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,iCAAiC;IAG3D,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,wBAAwB;CAO5B"} \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/UNSRegistryForwarderMock__factory.js b/dist/types/factories/contracts/mocks/UNSRegistryForwarderMock__factory.js deleted file mode 100644 index 4af25f6f..00000000 --- a/dist/types/factories/contracts/mocks/UNSRegistryForwarderMock__factory.js +++ /dev/null @@ -1,167 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.UNSRegistryForwarderMock__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint8", - name: "version", - type: "uint8", - }, - ], - name: "Initialized", - type: "event", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - internalType: "struct IForwarder.ForwardRequest", - name: "req", - type: "tuple", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "execute", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "initialize", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "nonceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - internalType: "struct IForwarder.ForwardRequest", - name: "req", - type: "tuple", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "verify", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -const _bytecode = "0x608060405234801561001057600080fd5b50610cf8806100206000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c80631bf7e13e146100515780636ccbae5f1461007a5780638129fc1c146100a8578063a4247400146100b2575b600080fd5b61006461005f3660046108d4565b6100d5565b60405161007191906109c3565b60405180910390f35b61009a6100883660046109d6565b60009081526035602052604090205490565b604051908152602001610071565b6100b06101e5565b005b6100c56100c03660046108d4565b6102f6565b6040519015158152602001610071565b606060005a90506100e78585856102f6565b6101485760405162461bcd60e51b815260206004820152602760248201527f554e535265676973747279466f727761726465723a205349474e41545552455f6044820152661253959053125160ca1b60648201526084015b60405180910390fd5b6101da6101586020870187610a0b565b3060408801358461016c60608b018b610a26565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b908190840183828082843760009201919091525061034992505050565b9150505b9392505050565b600054610100900460ff16158080156102055750600054600160ff909116105b8061021f5750303b15801561021f575060005460ff166001145b6102825760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840161013f565b6000805460ff1916600117905580156102a5576000805461ff0019166101001790555b6102ad61042a565b80156102f3576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50565b600061034161030485610add565b3085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061045b92505050565b949350505050565b6060610354856105a4565b600080876001600160a01b03168661036e8b8a89896105d0565b60405161037b9190610b9e565b60006040518083038160008787f1925050503d80600081146103b9576040519150601f19603f3d011682016040523d82523d6000602084013e6103be565b606091505b5090925090506103cf603f87610bba565b5a116103dd576103dd610bdc565b61041d82826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c4544000000000000815250610600565b9998505050505050505050565b600054610100900460ff166104515760405162461bcd60e51b815260040161013f90610bf2565b610459610639565b565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa1580156104a2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104c69190610c3d565b905060006105748660600151805190602001208688602001516040516020016105149392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561059a5750855161059a906001600160a01b03168286610660565b9695505050505050565b6000818152603560205260409020546105be906001610c56565b60009182526035602052604090912055565b60608285856040516020016105e793929190610c7d565b6040516020818303038152906040529050949350505050565b6060831561060f5750816101de565b82511561061f5782518084602001fd5b8160405162461bcd60e51b815260040161013f91906109c3565b600054610100900460ff166104595760405162461bcd60e51b815260040161013f90610bf2565b600080600061066f85856107a2565b9092509050600081600481111561068857610688610cbc565b1480156106a65750856001600160a01b0316826001600160a01b0316145b156106b6576001925050506101de565b600080876001600160a01b0316631626ba7e60e01b88886040516024016106de929190610cd2565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161071c9190610b9e565b600060405180830381855afa9150503d8060008114610757576040519150601f19603f3d011682016040523d82523d6000602084013e61075c565b606091505b509150915081801561076f575080516020145b801561079657508051630b135d3f60e11b906107949083016020908101908401610c3d565b145b98975050505050505050565b60008082516041036107d85760208301516040840151606085015160001a6107cc878285856107e7565b945094505050506107e0565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561081e57506000905060036108cb565b8460ff16601b1415801561083657508460ff16601c14155b1561084757506000905060046108cb565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa15801561089b573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166108c4576000600192509250506108cb565b9150600090505b94509492505050565b6000806000604084860312156108e957600080fd5b833567ffffffffffffffff8082111561090157600080fd5b908501906080828803121561091557600080fd5b9093506020850135908082111561092b57600080fd5b818601915086601f83011261093f57600080fd5b81358181111561094e57600080fd5b87602082850101111561096057600080fd5b6020830194508093505050509250925092565b60005b8381101561098e578181015183820152602001610976565b50506000910152565b600081518084526109af816020860160208601610973565b601f01601f19169290920160200192915050565b6020815260006101de6020830184610997565b6000602082840312156109e857600080fd5b5035919050565b80356001600160a01b0381168114610a0657600080fd5b919050565b600060208284031215610a1d57600080fd5b6101de826109ef565b6000808335601e19843603018112610a3d57600080fd5b83018035915067ffffffffffffffff821115610a5857600080fd5b6020019150368190038213156107e057600080fd5b634e487b7160e01b600052604160045260246000fd5b6040516080810167ffffffffffffffff81118282101715610aa657610aa6610a6d565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715610ad557610ad5610a6d565b604052919050565b600060808236031215610aef57600080fd5b610af7610a83565b610b00836109ef565b81526020808401358183015260408401356040830152606084013567ffffffffffffffff80821115610b3157600080fd5b9085019036601f830112610b4457600080fd5b813581811115610b5657610b56610a6d565b610b68601f8201601f19168501610aac565b91508082523684828501011115610b7e57600080fd5b808484018584013760009082019093019290925250606082015292915050565b60008251610bb0818460208701610973565b9190910192915050565b600082610bd757634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052600160045260246000fd5b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b600060208284031215610c4f57600080fd5b5051919050565b80820180821115610c7757634e487b7160e01b600052601160045260246000fd5b92915050565b60008451610c8f818460208901610973565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b634e487b7160e01b600052602160045260246000fd5b828152604060208201526000610341604083018461099756fea164736f6c6343000811000a"; -const isSuperArgs = (xs) => xs.length > 1; -class UNSRegistryForwarderMock__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(overrides) { - return super.getDeployTransaction(overrides || {}); - } - deploy(overrides) { - return super.deploy(overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.UNSRegistryForwarderMock__factory = UNSRegistryForwarderMock__factory; -UNSRegistryForwarderMock__factory.bytecode = _bytecode; -UNSRegistryForwarderMock__factory.abi = _abi; diff --git a/dist/types/factories/contracts/mocks/UNSRegistryMock__factory.d.ts b/dist/types/factories/contracts/mocks/UNSRegistryMock__factory.d.ts deleted file mode 100644 index b8e77971..00000000 --- a/dist/types/factories/contracts/mocks/UNSRegistryMock__factory.d.ts +++ /dev/null @@ -1,1227 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../common"; -import type { UNSRegistryMock, UNSRegistryMockInterface } from "../../../contracts/mocks/UNSRegistryMock"; -declare type UNSRegistryMockConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class UNSRegistryMock__factory extends ContractFactory { - constructor(...args: UNSRegistryMockConstructorParams); - getDeployTransaction(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): UNSRegistryMock__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b506153de806100206000396000f3fe608060405234801561001057600080fd5b50600436106103c55760003560e01c80637eee288d116101ff578063baef73e91161011a578063e985e9c5116100ad578063f5c1f76e1161007c578063f5c1f76e14610914578063f7df5c6014610927578063f8c8765e1461093a578063ffa1ad741461094d57600080fd5b8063e985e9c5146108b6578063ebf0c717146108f2578063ec129eea146108f9578063f25eb5c11461090c57600080fd5b8063ce92b33e116100e9578063ce92b33e1461086a578063cf2c52cb1461087d578063d9548e5314610890578063dbe16c07146108a357600080fd5b8063baef73e9146107ef578063bb5b27e114610831578063bebec6b414610844578063c87b56dd1461085757600080fd5b8063a424740011610192578063b3f9e4cb11610161578063b3f9e4cb14610795578063b85afd28146107a8578063b88d4fde146107c9578063ba5d40b7146107dc57600080fd5b8063a42474001461073c578063ab3b87fe1461074f578063ac9650d814610762578063ae31844a1461078257600080fd5b806395d89b41116101ce57806395d89b41146106e257806399e0dd7c146106ea578063a22cb465146106fd578063a3f4df7e1461071057600080fd5b80637eee288d146106a157806394d008ef146106b45780639508b1c4146106c75780639559c0bd146106da57600080fd5b806342842e0e116102ef578063572b6c0511610282578063672b9f8111610251578063672b9f81146106395780636ccbae5f1461065a57806370a082311461067b5780637e37479e1461068e57600080fd5b8063572b6c05146105e45780636352211e14610600578063638e5c7814610613578063663f7b2a1461062657600080fd5b80634a72584d116102be5780634a72584d146105985780634f558e79146105ab57806350382c1a146105be57806350960239146105d157600080fd5b806342842e0e1461054c57806342966c681461055f578063430c20811461057257806347c816991461058557600080fd5b80631bf7e13e1161036757806327f189751161033657806327f1897514610500578063310bd74b146105135780633f72ec6e1461052657806340c10f191461053957600080fd5b80631bf7e13e146104a65780631f71be06146104b957806323b872dd146104cc578063276fabb1146104df57600080fd5b8063095ea7b3116103a3578063095ea7b314610432578063150b7a02146104475780631bd8cc1a146104735780631be5e7ed1461049357600080fd5b806301ffc9a7146103ca57806306fdde03146103f2578063081812fc14610407575b600080fd5b6103dd6103d8366004614003565b610971565b60405190151581526020015b60405180910390f35b6103fa610982565b6040516103e99190614070565b61041a610415366004614083565b610a14565b6040516001600160a01b0390911681526020016103e9565b6104456104403660046140b1565b610a3b565b005b61045a61045536600461411e565b610a54565b6040516001600160e01b031990911681526020016103e9565b6104866104813660046141d4565b610bae565b6040516103e99190614277565b6103fa6104a136600461428a565b610ca4565b6103fa6104b43660046142c1565b610cef565b6104456104c7366004614341565b610dfa565b6104456104da3660046143fd565b610e90565b6104f26104ed36600461443e565b610ee3565b6040519081526020016103e9565b61044561050e36600461447f565b610ef2565b610445610521366004614083565b610f3a565b6104456105343660046144f2565b610f75565b6104456105473660046140b1565b611077565b61044561055a3660046143fd565b6110c4565b61044561056d366004614083565b6110df565b6103dd6105803660046140b1565b611123565b61044561059336600461451c565b61112f565b6104456105a636600461457d565b61116e565b6103dd6105b9366004614083565b6111b4565b6104456105cc366004614684565b6111d3565b6104456105df3660046146b8565b611209565b6103dd6105f23660046146b8565b6001600160a01b0316301490565b61041a61060e366004614083565b611269565b610445610621366004614083565b611286565b610445610634366004614770565b6112d1565b61064c6106473660046147b8565b611372565b6040516103e99291906147da565b6104f2610668366004614083565b6000908152610100602052604090205490565b6104f26106893660046146b8565b61138a565b6104f261069c3660046146b8565b611410565b6104456106af3660046140b1565b611441565b6104456106c23660046147ff565b611498565b6104456106d536600461485a565b6114e7565b6104f2601481565b6103fa61156e565b6104456106f83660046148fd565b61157d565b61044561070b366004614932565b611604565b6103fa6040518060400160405280600d81526020016c554e533a20526567697374727960981b81525081565b6103dd61074a3660046142c1565b611616565b61044561075d3660046140b1565b611661565b61077561077036600461443e565b6116a6565b6040516103e9919061495e565b61044561079036600461443e565b611782565b61041a6107a3366004614083565b611820565b6107bb6107b63660046141d4565b61184a565b6040516103e99291906149c0565b6104456107d73660046149e5565b61196c565b6104456107ea366004614341565b6119b3565b6108196107fd366004614083565b600090815261013960205260409020546001600160401b031690565b6040516001600160401b0390911681526020016103e9565b6103fa61083f366004614083565b611a3c565b6103fa6108523660046146b8565b611ade565b6103fa610865366004614083565b611ba8565b61044561087836600461447f565b611c0e565b61044561088b366004614a50565b611c4d565b6103dd61089e366004614083565b611d1c565b6103fa6108b1366004614083565b611d5f565b6103dd6108c4366004614a97565b6001600160a01b039182166000908152606a6020908152604080832093909416825291909152205460ff1690565b60006104f2565b61044561090736600461447f565b611d7d565b610445611dbc565b61048661092236600461443e565b611e43565b610445610935366004614ad0565b611ef6565b610445610948366004614b02565b611f87565b6103fa60405180604001604052806005815260200164302e392e3160d81b81525081565b600061097c8261215d565b92915050565b60606065805461099190614b5e565b80601f01602080910402602001604051908101604052809291908181526020018280546109bd90614b5e565b8015610a0a5780601f106109df57610100808354040283529160200191610a0a565b820191906000526020600020905b8154815290600101906020018083116109ed57829003601f168201915b5050505050905090565b6000610a1f826121ad565b506000908152606960205260409020546001600160a01b031690565b80610a458161220c565b610a4f8383612272565b505050565b60007f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378546001600160a01b0316610a89612394565b6001600160a01b031603610b4a57610a9f612394565b6001600160a01b03166342966c68856040518263ffffffff1660e01b8152600401610acc91815260200190565b600060405180830381600087803b158015610ae657600080fd5b505af1158015610afa573d6000803e3d6000fd5b505050821580159150610b145750610b1482840184614b92565b15610b3257610b2330856123a3565b610b2d85856124f1565b610b3c565b610b3c85856123a3565b50630a85bd0160e11b610ba5565b60405162461bcd60e51b815260206004820152602560248201527f52656769737472793a204552433732315f524543454956494e475f50524f4849604482015264109255115160da1b60648201526084015b60405180910390fd5b95945050505050565b6060826001600160401b03811115610bc857610bc86145cf565b604051908082528060200260200182016040528015610bfb57816020015b6060815260200190600190039081610be65790505b50905060005b83811015610c9c57610c6c858583818110610c1e57610c1e614bad565b9050602002810190610c309190614bc3565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525087925061259c915050565b828281518110610c7e57610c7e614bad565b60200260200101819052508080610c9490614c1f565b915050610c01565b509392505050565b6060610ce784848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525086925061259c915050565b949350505050565b606060005a9050610d01858585611616565b610d5d5760405162461bcd60e51b815260206004820152602760248201527f554e535265676973747279466f727761726465723a205349474e41545552455f6044820152661253959053125160ca1b6064820152608401610b9c565b610def610d6d60208701876146b8565b30604088013584610d8160608b018b614bc3565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284376000920191909152506125d192505050565b9150505b9392505050565b610134546001600160a01b0316610e0f612394565b6001600160a01b031614610e355760405162461bcd60e51b8152600401610b9c90614c38565b6000610e49610e44888a614c7f565b6126b2565b509050610e568982611441565b610e63868686868561270a565b8115610e8557610e858982610e80610e7b8b8d614c7f565b612778565b6127f9565b505050505050505050565b80610ea2610e9c612394565b8261283b565b610ebe5760405162461bcd60e51b8152600401610b9c90614c8c565b81610ec88161220c565b610ed1836128cc565b610edc858585612939565b5050505050565b6000610c9c610e448385614c7f565b80610efe610e9c612394565b610f1a5760405162461bcd60e51b8152600401610b9c90614c8c565b81610f248161220c565b610f318787878787612ae0565b50505050505050565b80610f46610e9c612394565b610f625760405162461bcd60e51b8152600401610b9c90614c8c565b81610f6c8161220c565b610a4f836128cc565b610134546001600160a01b0316610f8a612394565b6001600160a01b031614610fb05760405162461bcd60e51b8152600401610b9c90614c38565b610fb9816121ad565b42826001600160401b0316116110115760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a204558504952595f494e5f5041535400000000000000006044820152606401610b9c565b60008181526101396020908152604091829020805467ffffffffffffffff19166001600160401b038616908117909155915191825282917f93feabb03ab84f47fc85bf0c298103fca21d8c8bc376eae0c1e1c56b9d4f7789910160405180910390a25050565b61107f612b43565b6001600160a01b0316611090612394565b6001600160a01b0316146110b65760405162461bcd60e51b8152600401610b9c90614cd5565b6110c082826123a3565b5050565b610a4f8383836040518060200160405280600081525061196c565b806110eb610e9c612394565b6111075760405162461bcd60e51b8152600401610b9c90614c8c565b816111118161220c565b61111a836128cc565b610a4f83612c44565b6000610df3838361283b565b8061113b610e9c612394565b6111575760405162461bcd60e51b8152600401610b9c90614c8c565b816111618161220c565b610f318787878787612ceb565b8061117a610e9c612394565b6111965760405162461bcd60e51b8152600401610b9c90614c8c565b816111a08161220c565b6111ac86868686612dca565b505050505050565b6000818152606760205260408120546001600160a01b0316151561097c565b611206816040516020016111e79190614d17565b6040516020818303038152906040528051906020012060001c82612e6a565b50565b610134546001600160a01b031661121e612394565b6001600160a01b0316146112445760405162461bcd60e51b8152600401610b9c90614c38565b6001600160a01b0316600090815261013660205260409020805460ff19166001179055565b600061127482611d1c565b6112815761097c82612e8f565b919050565b80611292610e9c612394565b6112ae5760405162461bcd60e51b8152600401610b9c90614c8c565b6112c06112b9612394565b3084612939565b6110c06112cb612394565b836124f1565b60006112dc826126b2565b5090506112e7612394565b6001600160a01b03166112f982611269565b6001600160a01b03161461134f5760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b9c565b6113588161220c565b6110c0611363612394565b8261136d85612778565b612eef565b60608061137f8484612f76565b909590945092505050565b60006001600160a01b0382166113f45760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b6064820152608401610b9c565b506001600160a01b031660009081526068602052604090205490565b6001600160a01b0381166000908152610135602052604081205461143381612f97565b61143b578091505b50919050565b610134546001600160a01b0316611456612394565b6001600160a01b03161461147c5760405162461bcd60e51b8152600401610b9c90614c38565b611485816128cc565b6110c061149182612e8f565b8383612939565b6114a0612b43565b6001600160a01b03166114b1612394565b6001600160a01b0316146114d75760405162461bcd60e51b8152600401610b9c90614cd5565b6114e184846123a3565b50505050565b6114f18787612fe1565b6114f9612394565b6001600160a01b031661150b86611269565b6001600160a01b0316146115615760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b9c565b610f31848484848961270a565b60606066805461099190614b5e565b610134546001600160a01b0316611592612394565b6001600160a01b0316146115b85760405162461bcd60e51b8152600401610b9c90614c38565b6101336115c6828483614d79565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b82826040516115f8929190614e61565b60405180910390a15050565b6110c061160f612394565b8383613050565b6000610ce761162485614e75565b3085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061311e92505050565b8061166d610e9c612394565b6116895760405162461bcd60e51b8152600401610b9c90614c8c565b816116938161220c565b6114e161169f84612e8f565b8585612939565b606060006116b48385614eff565b90503033036117795760005b83811015611777576117476116d3612394565b6116db613267565b8787858181106116ed576116ed614bad565b90506020028101906116ff9190614bc3565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201829052506040805160208101909152908152925061327b915050565b82828151811061175957611759614bad565b6020026020010181905250808061176f90614c1f565b9150506116c0565b505b610ce7816132ab565b610134546001600160a01b0316611797612394565b6001600160a01b0316146117bd5760405162461bcd60e51b8152600401610b9c90614c38565b60005b81811015610a4f57600161013760008585858181106117e1576117e1614bad565b90506020020135815260200190815260200160002060006101000a81548160ff021916908315150217905550808061181890614c1f565b9150506117c0565b6000818152606760205260408120546001600160a01b031661184357600061097c565b3092915050565b606080836001600160401b03811115611865576118656145cf565b60405190808252806020026020018201604052801561189857816020015b60608152602001906001900390816118835790505b509150836001600160401b038111156118b3576118b36145cf565b6040519080825280602002602001820160405280156118e657816020015b60608152602001906001900390816118d15790505b50905060005b848110156119635761191686868381811061190957611909614bad565b9050602002013585612f76565b84838151811061192857611928614bad565b6020026020010184848151811061194157611941614bad565b602002602001018290528290525050808061195b90614c1f565b9150506118ec565b50935093915050565b81611978610e9c612394565b6119945760405162461bcd60e51b8152600401610b9c90614c8c565b8261199e8161220c565b6119a7846128cc565b6111ac868686866133d6565b610134546001600160a01b03166119c8612394565b6001600160a01b0316146119ee5760405162461bcd60e51b8152600401610b9c90614c38565b6000806119fe610e44898b614c7f565b91509150611a0b81613409565b611a238a83611a1d610e7b8c8e614c7f565b86613469565b611a30878787878661270a565b50505050505050505050565b600081815260c960205260409020805460609190611a5990614b5e565b80601f0160208091040260200160405190810160405280929190818152602001828054611a8590614b5e565b8015611ad25780601f10611aa757610100808354040283529160200191611ad2565b820191906000526020600020905b815481529060010190602001808311611ab557829003601f168201915b50505050509050919050565b6001600160a01b03811660009081526101356020526040902054606090611b0481612f97565b61143b576000818152610138602052604090208054611b2290614b5e565b80601f0160208091040260200160405190810160405280929190818152602001828054611b4e90614b5e565b8015611b9b5780601f10611b7057610100808354040283529160200191611b9b565b820191906000526020600020905b815481529060010190602001808311611b7e57829003601f168201915b5050505050915050919050565b6060611bb3826121ad565b6000611bbd6134bc565b90506000815111611bdd5760405180602001604052806000815250610df3565b80611be7846134cc565b604051602001611bf8929190614f72565b6040516020818303038152906040529392505050565b80611c1a610e9c612394565b611c365760405162461bcd60e51b8152600401610b9c90614c8c565b81611c408161220c565b610f31878787878761270a565b7f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87546001600160a01b0316611c80612394565b6001600160a01b031614611ca65760405162461bcd60e51b8152600401610b9c90614cd5565b6020819003611cc9576000611cbd82840184614083565b90506114e184826123a3565b6000611cd782840184614fa1565b805190915060005b818110156111ac57611d0a86848381518110611cfd57611cfd614bad565b60200260200101516123a3565b80611d1481614c1f565b915050611cdf565b600081815261013960205260408120546001600160401b03161580159061097c57505060009081526101396020526040902054426001600160401b039091161090565b600081815261013860205260409020805460609190611a5990614b5e565b80611d89610e9c612394565b611da55760405162461bcd60e51b8152600401610b9c90614c8c565b81611daf8161220c565b610f3187878787876135cc565b6000611dc6612394565b6001600160a01b0381166000908152610135602052604081205491925003611e3a5760405162461bcd60e51b815260206004820152602160248201527f52656769737472793a20524556455253455f5245434f52445f49535f454d50546044820152605960f81b6064820152608401610b9c565b611206816135e2565b6060816001600160401b03811115611e5d57611e5d6145cf565b604051908082528060200260200182016040528015611e9057816020015b6060815260200190600190039081611e7b5790505b50905060005b82811015611eef57611ebf848483818110611eb357611eb3614bad565b90506020020135611a3c565b828281518110611ed157611ed1614bad565b60200260200101819052508080611ee790614c1f565b915050611e96565b5092915050565b610134546001600160a01b0316611f0b612394565b6001600160a01b031614611f315760405162461bcd60e51b8152600401610b9c90614c38565b61013454611f48906001600160a01b0316846123a3565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c39528383604051611f7a929190614e61565b60405180910390a2505050565b600054610100900460ff1615808015611fa75750600054600160ff909116105b80611fc15750303b158015611fc1575060005460ff166001145b6120245760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610b9c565b6000805460ff191660011790558015612047576000805461ff0019166101001790555b61013480546001600160a01b0319166001600160a01b038716179055837f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec9237880546001600160a01b0319166001600160a01b03929092169190911790556040805180820182526013815272556e73746f707061626c6520446f6d61696e7360681b60208083019190915282518084019093526002835261155160f21b908301526120ef91613627565b6120f7613667565b6120ff613667565b61210883613690565b612111826136c0565b8015610edc576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b60006001600160e01b031982166380ac58cd60e01b148061218e57506001600160e01b03198216635b5e139f60e01b145b8061097c57506301ffc9a760e01b6001600160e01b031983161461097c565b6000818152606760205260409020546001600160a01b03166112065760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b9c565b3033036122695761221b613267565b81146112065760405162461bcd60e51b815260206004820152601760248201527f52656769737472793a20544f4b454e5f494e56414c49440000000000000000006044820152606401610b9c565b611206816136f0565b600061227d82612e8f565b9050806001600160a01b0316836001600160a01b0316036122ea5760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b6064820152608401610b9c565b806001600160a01b03166122fc612394565b6001600160a01b031614806123185750612318816108c4612394565b61238a5760405162461bcd60e51b815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c00006064820152608401610b9c565b610a4f838361371e565b600061239e61378c565b905090565b6001600160a01b0382166123f95760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610b9c565b6000818152606760205260409020546001600160a01b03161561245e5760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610b9c565b61246a600083836137a7565b6001600160a01b0382166000908152606860205260408120805460019290612493908490615031565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b03861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b60006124fb612b43565b9050612507818361371e565b60008051602061538b83398151915254604080516020808201869052825180830390910181528183019283905263e3dec8fb60e01b9092526001600160a01b0390921691829163e3dec8fb91612564918891309190604401615044565b600060405180830381600087803b15801561257e57600080fd5b505af1158015612592573d6000803e3d6000fd5b5050505050505050565b6060610df3836040516020016125b29190614d17565b6040516020818303038152906040528051906020012060001c83613883565b60606125dc856136f0565b600080876001600160a01b0316866125f68b8a898961327b565b6040516126039190614d17565b60006040518083038160008787f1925050503d8060008114612641576040519150601f19603f3d011682016040523d82523d6000602084013e612646565b606091505b509092509050612657603f87615086565b5a116126655761266561509a565b6126a582826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c4544000000000000815250613965565b9998505050505050505050565b805160009081905b8015612704578291506126f082856126d36001856150b0565b815181106126e3576126e3614bad565b602002602001015161399e565b9250806126fc816150c3565b9150506126ba565b50915091565b60005b848110156111ac5761276686868381811061272a5761272a614bad565b905060200281019061273c9190614bc3565b86868581811061274e5761274e614bad565b90506020028101906127609190614bc3565b86612ceb565b8061277081614c1f565b91505061270d565b606060008260008151811061278f5761278f614bad565b602002602001015190506000600190505b8351811015611eef57818482815181106127bc576127bc614bad565b60200260200101516040516020016127d59291906150da565b604051602081830303815290604052915080806127f190614c1f565b9150506127a0565b61dead6001600160a01b0384161480159061282b57506001600160a01b03831660009081526101356020526040902054155b15610a4f57610a4f838383612eef565b60008061284783611269565b90506001600160a01b03811615801590610ce75750806001600160a01b0316846001600160a01b031614806128a157506001600160a01b038082166000908152606a602090815260408083209388168352929052205460ff165b80610ce75750836001600160a01b03166128ba84610a14565b6001600160a01b031614949350505050565b6128d581613a4a565b6040516020016128e791815260200190565b60408051601f198184030181528282528051602091820120600085815260cb9092529181209190915582917f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9190a250565b826001600160a01b031661294c82612e8f565b6001600160a01b0316146129b05760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b6064820152608401610b9c565b6001600160a01b038216612a125760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610b9c565b612a1d8383836137a7565b612a2860008261371e565b6001600160a01b0383166000908152606860205260408120805460019290612a519084906150b0565b90915550506001600160a01b0382166000908152606860205260408120805460019290612a7f908490615031565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60005b848110156111ac57612b31868683818110612b0057612b00614bad565b90506020020135858584818110612b1957612b19614bad565b9050602002810190612b2b9190614bc3565b85612dca565b80612b3b81614c1f565b915050612ae3565b60008051602061538b833981519152546000906001600160a01b03168015612c405760405163721804d360e11b81523060048201526000906001600160a01b0383169063e43009a690602401602060405180830381865afa158015612bac573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612bd09190615116565b60405163e66f960360e01b8152600481018290529091506001600160a01b0383169063e66f960390602401602060405180830381865afa158015612c18573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612c3c919061512f565b9250505b5090565b6000612c4f82612e8f565b9050612c5d816000846137a7565b612c6860008361371e565b6001600160a01b0381166000908152606860205260408120805460019290612c919084906150b0565b909155505060008281526067602052604080822080546001600160a01b0319169055518391906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b60008585604051602001612d0092919061514c565b60408051601f198184030181528282528051602091820120601f8901829004820284018201909252878352909250612d549183918990899081908401838280828437600092019190915250612e6a92505050565b6111ac8187878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b018190048102820181019092528981529250899150889081908401838280828437600092019190915250889250613a72915050565b612dd384613ba7565b612e1f5760405162461bcd60e51b815260206004820152601c60248201527f5265636f726453746f726167653a204b45595f4e4f545f464f554e44000000006044820152606401610b9c565b6114e184612e2c86611a3c565b85858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250879250613a72915050565b612e7382613ba7565b6110c057600082815260c960205260409020610a4f828261515c565b6000818152606760205260408120546001600160a01b03168061097c5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b9c565b6000828152610138602052604090208054612f0990614b5e565b9050600003612f2d57600082815261013860205260409020612f2b828261515c565b505b6001600160a01b03831660008181526101356020526040808220859055518492917feb76a21470988c474a21f690cc28fee1ed511bd812dc3c21fd0f49c5e5d4708a91a3505050565b606080612f8284611a3c565b9150612f8e8484613883565b90509250929050565b6000818152610137602052604081205460ff16801561097c57506101366000612fbe612394565b6001600160a01b0316815260208101919091526040016000205460ff1692915050565b60008051602061538b83398151915254604051633805550f60e01b81526001600160a01b03909116908190633805550f906130229086908690600401614e61565b600060405180830381600087803b15801561303c57600080fd5b505af1158015610f31573d6000803e3d6000fd5b816001600160a01b0316836001600160a01b0316036130b15760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610b9c565b6001600160a01b038381166000818152606a6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015613165573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131899190615116565b905060006132378660600151805190602001208688602001516040516020016131d79392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561325d5750855161325d906001600160a01b03168286613bcd565b9695505050505050565b60003033036132785750601f193601355b90565b60608285856040516020016132929392919061521b565b6040516020818303038152906040529050949350505050565b606081516001600160401b038111156132c6576132c66145cf565b6040519080825280602002602001820160405280156132f957816020015b60608152602001906001900390816132e45790505b50905060005b825181101561143b57600080306001600160a01b031685848151811061332757613327614bad565b602002602001015160405161333c9190614d17565b600060405180830381855af49150503d8060008114613377576040519150601f19603f3d011682016040523d82523d6000602084013e61337c565b606091505b50915091506133a482826040518060600160405280602781526020016153ab60279139613965565b8484815181106133b6576133b6614bad565b6020026020010181905250505080806133ce90614c1f565b9150506132ff565b6133e1848484612939565b6133ed84848484613d0f565b6114e15760405162461bcd60e51b8152600401610b9c9061525a565b6000818152610137602052604090205460ff16156112065760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a20544f4b454e5f555047524144454400000000000000006044820152606401610b9c565b61347384846123a3565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952836040516134a39190614070565b60405180910390a280156114e1576114e18484846127f9565b6060610133805461099190614b5e565b6060816000036134f35750506040805180820190915260018152600360fc1b602082015290565b8160005b811561351d578061350781614c1f565b91506135169050600a83615086565b91506134f7565b6000816001600160401b03811115613537576135376145cf565b6040519080825280601f01601f191660200182016040528015613561576020820181803683370190505b5090505b8415610ce7576135766001836150b0565b9150613583600a866152ac565b61358e906030615031565b60f81b8183815181106135a3576135a3614bad565b60200101906001600160f81b031916908160001a9053506135c5600a86615086565b9450613565565b6135d5816128cc565b610edc858585858561270a565b6001600160a01b03811660008181526101356020526040808220829055517ffcf5eec0cfa3e6332f5f0e63ec242d71f866a61d121d6cdf5c2eb3b668a26c4f9190a250565b600054610100900460ff1661364e5760405162461bcd60e51b8152600401610b9c906152c0565b606561365a838261515c565b506066610a4f828261515c565b600054610100900460ff1661368e5760405162461bcd60e51b8152600401610b9c906152c0565b565b600054610100900460ff166136b75760405162461bcd60e51b8152600401610b9c906152c0565b61120681613e14565b600054610100900460ff166136e75760405162461bcd60e51b8152600401610b9c906152c0565b61120681613e6d565b6000818152610100602052604090205461370b906001615031565b6000918252610100602052604090912055565b600081815260696020526040902080546001600160a01b0319166001600160a01b038416908117909155819061375382612e8f565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60003033036137a2575060331936013560601c90565b503390565b6001600160a01b0382166137be576137be81613409565b600081815261013960205260409020546001600160401b031615613859576001600160a01b0382161580159061380d57506137f7612b43565b6001600160a01b0316826001600160a01b031614155b6138595760405162461bcd60e51b815260206004820152601960248201527f52656769737472793a20544f4b454e5f455850495241424c45000000000000006044820152606401610b9c565b6001600160a01b03831660009081526101356020526040902054819003610a4f57610a4f836135e2565b606061388e82612f97565b156138a8575060408051602081019091526000815261097c565b60ca60006138b584613a4a565b8152602001908152602001600020600084815260200190815260200160002080546138df90614b5e565b80601f016020809104026020016040519081016040528092919081815260200182805461390b90614b5e565b80156139585780601f1061392d57610100808354040283529160200191613958565b820191906000526020600020905b81548152906001019060200180831161393b57829003601f168201915b5050505050905092915050565b60608315613974575081610df3565b8251156139845782518084602001fd5b8160405162461bcd60e51b8152600401610b9c9190614070565b600081516000036139e95760405162461bcd60e51b815260206004820152601560248201527452656769737472793a204c4142454c5f454d50545960581b6044820152606401610b9c565b82826040516020016139fb9190614d17565b60405160208183030381529060405280519060200120604051602001613a2b929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b600081815260cb602052604081205415612c4057600082815260cb602052604090205461097c565b60ca6000613a7f83613a4a565b815260200190815260200160002060008581526020019081526020016000208054613aa990614b5e565b9050600003613b015782604051613ac09190614d17565b6040518091039020817f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f8685604051613af89190614070565b60405180910390a35b8160ca6000613b0f84613a4a565b815260200190815260200160002060008681526020019081526020016000209081613b3a919061515c565b5081604051613b499190614d17565b604051809103902083604051613b5f9190614d17565b6040518091039020827f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d928686604051613b999291906147da565b60405180910390a450505050565b600081815260c9602052604081208054829190613bc390614b5e565b9050119050919050565b6000806000613bdc8585613ebb565b90925090506000816004811115613bf557613bf561530b565b148015613c135750856001600160a01b0316826001600160a01b0316145b15613c2357600192505050610df3565b600080876001600160a01b0316631626ba7e60e01b8888604051602401613c4b929190615321565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051613c899190614d17565b600060405180830381855afa9150503d8060008114613cc4576040519150601f19603f3d011682016040523d82523d6000602084013e613cc9565b606091505b5091509150818015613cdc575080516020145b8015613d0357508051630b135d3f60e11b90613d019083016020908101908401615116565b145b98975050505050505050565b60006001600160a01b0384163b15613e0c57836001600160a01b031663150b7a02613d38612394565b8786866040518563ffffffff1660e01b8152600401613d5a949392919061533a565b6020604051808303816000875af1925050508015613d95575060408051601f3d908101601f19168201909252613d929181019061536d565b60015b613df2573d808015613dc3576040519150601f19603f3d011682016040523d82523d6000602084013e613dc8565b606091505b508051600003613dea5760405162461bcd60e51b8152600401610b9c9061525a565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610ce7565b506001610ce7565b600054610100900460ff16613e3b5760405162461bcd60e51b8152600401610b9c906152c0565b8060008051602061538b8339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b600054610100900460ff16613e945760405162461bcd60e51b8152600401610b9c906152c0565b807f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87613e4c565b6000808251604103613ef15760208301516040840151606085015160001a613ee587828585613f00565b94509450505050613ef9565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613f375750600090506003613fe4565b8460ff16601b14158015613f4f57508460ff16601c14155b15613f605750600090506004613fe4565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613fb4573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613fdd57600060019250925050613fe4565b9150600090505b94509492505050565b6001600160e01b03198116811461120657600080fd5b60006020828403121561401557600080fd5b8135610df381613fed565b60005b8381101561403b578181015183820152602001614023565b50506000910152565b6000815180845261405c816020860160208601614020565b601f01601f19169290920160200192915050565b602081526000610df36020830184614044565b60006020828403121561409557600080fd5b5035919050565b6001600160a01b038116811461120657600080fd5b600080604083850312156140c457600080fd5b82356140cf8161409c565b946020939093013593505050565b60008083601f8401126140ef57600080fd5b5081356001600160401b0381111561410657600080fd5b602083019150836020828501011115613ef957600080fd5b60008060008060006080868803121561413657600080fd5b85356141418161409c565b945060208601356141518161409c565b93506040860135925060608601356001600160401b0381111561417357600080fd5b61417f888289016140dd565b969995985093965092949392505050565b60008083601f8401126141a257600080fd5b5081356001600160401b038111156141b957600080fd5b6020830191508360208260051b8501011115613ef957600080fd5b6000806000604084860312156141e957600080fd5b83356001600160401b038111156141ff57600080fd5b61420b86828701614190565b909790965060209590950135949350505050565b600082825180855260208086019550808260051b84010181860160005b8481101561426a57601f19868403018952614258838351614044565b9884019892509083019060010161423c565b5090979650505050505050565b602081526000610df3602083018461421f565b60008060006040848603121561429f57600080fd5b83356001600160401b038111156142b557600080fd5b61420b868287016140dd565b6000806000604084860312156142d657600080fd5b83356001600160401b03808211156142ed57600080fd5b908501906080828803121561430157600080fd5b9093506020850135908082111561431757600080fd5b50614324868287016140dd565b9497909650939450505050565b8035801515811461128157600080fd5b60008060008060008060008060a0898b03121561435d57600080fd5b88356143688161409c565b975060208901356001600160401b038082111561438457600080fd5b6143908c838d01614190565b909950975060408b01359150808211156143a957600080fd5b6143b58c838d01614190565b909750955060608b01359150808211156143ce57600080fd5b506143db8b828c01614190565b90945092506143ee905060808a01614331565b90509295985092959890939650565b60008060006060848603121561441257600080fd5b833561441d8161409c565b9250602084013561442d8161409c565b929592945050506040919091013590565b6000806020838503121561445157600080fd5b82356001600160401b0381111561446757600080fd5b61447385828601614190565b90969095509350505050565b60008060008060006060868803121561449757600080fd5b85356001600160401b03808211156144ae57600080fd5b6144ba89838a01614190565b909750955060208801359150808211156144d357600080fd5b506144e088828901614190565b96999598509660400135949350505050565b6000806040838503121561450557600080fd5b82356001600160401b03811681146140cf57600080fd5b60008060008060006060868803121561453457600080fd5b85356001600160401b038082111561454b57600080fd5b61455789838a016140dd565b9097509550602088013591508082111561457057600080fd5b506144e0888289016140dd565b6000806000806060858703121561459357600080fd5b8435935060208501356001600160401b038111156145b057600080fd5b6145bc878288016140dd565b9598909750949560400135949350505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561460d5761460d6145cf565b604052919050565b600082601f83011261462657600080fd5b81356001600160401b0381111561463f5761463f6145cf565b614652601f8201601f19166020016145e5565b81815284602083860101111561466757600080fd5b816020850160208301376000918101602001919091529392505050565b60006020828403121561469657600080fd5b81356001600160401b038111156146ac57600080fd5b610ce784828501614615565b6000602082840312156146ca57600080fd5b8135610df38161409c565b60006001600160401b038211156146ee576146ee6145cf565b5060051b60200190565b600061470b614706846146d5565b6145e5565b8381529050602080820190600585901b84018681111561472a57600080fd5b845b818110156147655780356001600160401b0381111561474b5760008081fd5b61475789828901614615565b85525092820192820161472c565b505050509392505050565b60006020828403121561478257600080fd5b81356001600160401b0381111561479857600080fd5b8201601f810184136147a957600080fd5b610ce7848235602084016146f8565b600080604083850312156147cb57600080fd5b50508035926020909101359150565b6040815260006147ed6040830185614044565b8281036020840152610def8185614044565b6000806000806060858703121561481557600080fd5b84356148208161409c565b93506020850135925060408501356001600160401b0381111561484257600080fd5b61484e878288016140dd565b95989497509550505050565b60008060008060008060006080888a03121561487557600080fd5b87356001600160401b038082111561488c57600080fd5b6148988b838c016140dd565b909950975060208a0135965060408a01359150808211156148b857600080fd5b6148c48b838c01614190565b909650945060608a01359150808211156148dd57600080fd5b506148ea8a828b01614190565b989b979a50959850939692959293505050565b6000806020838503121561491057600080fd5b82356001600160401b0381111561492657600080fd5b614473858286016140dd565b6000806040838503121561494557600080fd5b82356149508161409c565b9150612f8e60208401614331565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156149b357603f198886030184526149a1858351614044565b94509285019290850190600101614985565b5092979650505050505050565b6040815260006149d3604083018561421f565b8281036020840152610def818561421f565b600080600080608085870312156149fb57600080fd5b8435614a068161409c565b93506020850135614a168161409c565b92506040850135915060608501356001600160401b03811115614a3857600080fd5b614a4487828801614615565b91505092959194509250565b600080600060408486031215614a6557600080fd5b8335614a708161409c565b925060208401356001600160401b03811115614a8b57600080fd5b614324868287016140dd565b60008060408385031215614aaa57600080fd5b8235614ab58161409c565b91506020830135614ac58161409c565b809150509250929050565b600080600060408486031215614ae557600080fd5b8335925060208401356001600160401b03811115614a8b57600080fd5b60008060008060808587031215614b1857600080fd5b8435614b238161409c565b93506020850135614b338161409c565b92506040850135614b438161409c565b91506060850135614b538161409c565b939692955090935050565b600181811c90821680614b7257607f821691505b60208210810361143b57634e487b7160e01b600052602260045260246000fd5b600060208284031215614ba457600080fd5b610df382614331565b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112614bda57600080fd5b8301803591506001600160401b03821115614bf457600080fd5b602001915036819003821315613ef957600080fd5b634e487b7160e01b600052601160045260246000fd5b600060018201614c3157614c31614c09565b5060010190565b60208082526027908201527f52656769737472793a2053454e4445525f49535f4e4f545f4d494e54494e475f60408201526626a0a720a3a2a960c91b606082015260800190565b6000610df33684846146f8565b60208082526029908201527f52656769737472793a2053454e4445525f49535f4e4f545f415050524f5645446040820152682fa7a92fa7aba722a960b91b606082015260800190565b60208082526022908201527f52656769737472793a20494e53554646494349454e545f5045524d495353494f6040820152614e5360f01b606082015260800190565b60008251614d29818460208701614020565b9190910192915050565b601f821115610a4f57600081815260208120601f850160051c81016020861015614d5a5750805b601f850160051c820191505b818110156111ac57828155600101614d66565b6001600160401b03831115614d9057614d906145cf565b614da483614d9e8354614b5e565b83614d33565b6000601f841160018114614dd85760008515614dc05750838201355b600019600387901b1c1916600186901b178355610edc565b600083815260209020601f19861690835b82811015614e095786850135825560209485019460019092019101614de9565b5086821015614e265760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b602081526000610ce7602083018486614e38565b600060808236031215614e8757600080fd5b604051608081016001600160401b038282108183111715614eaa57614eaa6145cf565b8160405284359150614ebb8261409c565b81835260208501356020840152604085013560408401526060850135915080821115614ee657600080fd5b50614ef336828601614615565b60608301525092915050565b6000614f0d614706846146d5565b80848252602080830192508560051b850136811115614f2b57600080fd5b855b81811015614f665780356001600160401b03811115614f4c5760008081fd5b614f5836828a01614615565b865250938201938201614f2d565b50919695505050505050565b60008351614f84818460208801614020565b835190830190614f98818360208801614020565b01949350505050565b60006020808385031215614fb457600080fd5b82356001600160401b03811115614fca57600080fd5b8301601f81018513614fdb57600080fd5b8035614fe9614706826146d5565b81815260059190911b8201830190838101908783111561500857600080fd5b928401925b828410156150265783358252928401929084019061500d565b979650505050505050565b8082018082111561097c5761097c614c09565b6001600160a01b03848116825283166020820152606060408201819052600090610ba590830184614044565b634e487b7160e01b600052601260045260246000fd5b60008261509557615095615070565b500490565b634e487b7160e01b600052600160045260246000fd5b8181038181111561097c5761097c614c09565b6000816150d2576150d2614c09565b506000190190565b600083516150ec818460208801614020565b601760f91b908301908152835161510a816001840160208801614020565b01600101949350505050565b60006020828403121561512857600080fd5b5051919050565b60006020828403121561514157600080fd5b8151610df38161409c565b8183823760009101908152919050565b81516001600160401b03811115615175576151756145cf565b615189816151838454614b5e565b84614d33565b602080601f8311600181146151be57600084156151a65750858301515b600019600386901b1c1916600185901b1785556111ac565b600085815260208120601f198616915b828110156151ed578886015182559484019460019091019084016151ce565b508582101561520b5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6000845161522d818460208901614020565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6000826152bb576152bb615070565b500690565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b634e487b7160e01b600052602160045260246000fd5b828152604060208201526000610ce76040830184614044565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061325d90830184614044565b60006020828403121561537f57600080fd5b8151610df381613fed56febe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a"; - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "address"; - readonly name: "previousAdmin"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "address"; - readonly name: "newAdmin"; - readonly type: "address"; - }]; - readonly name: "AdminChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "approved"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Approval"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "ApprovalForAll"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "uint8"; - readonly name: "version"; - readonly type: "uint8"; - }]; - readonly name: "Initialized"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly indexed: true; - readonly internalType: "string"; - readonly name: "keyIndex"; - readonly type: "string"; - }, { - readonly indexed: false; - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }]; - readonly name: "NewKey"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly indexed: false; - readonly internalType: "string"; - readonly name: "uri"; - readonly type: "string"; - }]; - readonly name: "NewURI"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "string"; - readonly name: "prefix"; - readonly type: "string"; - }]; - readonly name: "NewURIPrefix"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }]; - readonly name: "RemoveReverse"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "ResetRecords"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly indexed: true; - readonly internalType: "string"; - readonly name: "keyIndex"; - readonly type: "string"; - }, { - readonly indexed: true; - readonly internalType: "string"; - readonly name: "valueIndex"; - readonly type: "string"; - }, { - readonly indexed: false; - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }, { - readonly indexed: false; - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }]; - readonly name: "Set"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly indexed: false; - readonly internalType: "uint64"; - readonly name: "expiry"; - readonly type: "uint64"; - }]; - readonly name: "SetExpiry"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "SetReverse"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Transfer"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "implementation"; - readonly type: "address"; - }]; - readonly name: "Upgraded"; - readonly type: "event"; - }, { - readonly inputs: readonly []; - readonly name: "BATCH_LIMIT"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "NAME"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "VERSION"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }]; - readonly name: "addKey"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }]; - readonly name: "addProxyReader"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "approve"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "balanceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "burn"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "user"; - readonly type: "address"; - }, { - readonly internalType: "bytes"; - readonly name: "depositData"; - readonly type: "bytes"; - }]; - readonly name: "deposit"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "depositToPolygon"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly components: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "nonce"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly internalType: "struct IForwarder.ForwardRequest"; - readonly name: "req"; - readonly type: "tuple"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "execute"; - readonly outputs: readonly [{ - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "exists"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "expiryOf"; - readonly outputs: readonly [{ - readonly internalType: "uint64"; - readonly name: ""; - readonly type: "uint64"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "get"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getApproved"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "keyHash"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getByHash"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }, { - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "keyHash"; - readonly type: "uint256"; - }]; - readonly name: "getKey"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256[]"; - readonly name: "hashes"; - readonly type: "uint256[]"; - }]; - readonly name: "getKeys"; - readonly outputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getMany"; - readonly outputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256[]"; - readonly name: "keyHashes"; - readonly type: "uint256[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getManyByHash"; - readonly outputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getTokenName"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "mintingManager"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "cnsRegistry"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "rootChainManager"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "childChainManager"; - readonly type: "address"; - }]; - readonly name: "initialize"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly name: "isApprovedForAll"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "spender"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "isApprovedOrOwner"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "isExpired"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "forwarder"; - readonly type: "address"; - }]; - readonly name: "isTrustedForwarder"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "user"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "mint"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "user"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: ""; - readonly type: "bytes"; - }]; - readonly name: "mint"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "string"; - readonly name: "uri"; - readonly type: "string"; - }]; - readonly name: "mintTLD"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "string[]"; - readonly name: "labels"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }, { - readonly internalType: "bool"; - readonly name: "withReverse"; - readonly type: "bool"; - }]; - readonly name: "mintWithRecords"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes[]"; - readonly name: "data"; - readonly type: "bytes[]"; - }]; - readonly name: "multicall"; - readonly outputs: readonly [{ - readonly internalType: "bytes[]"; - readonly name: "results"; - readonly type: "bytes[]"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "name"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "labels"; - readonly type: "string[]"; - }]; - readonly name: "namehash"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "hash"; - readonly type: "uint256"; - }]; - readonly stateMutability: "pure"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "nonceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "onERC721Received"; - readonly outputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: ""; - readonly type: "bytes4"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "ownerOf"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "reconfigure"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "removeReverse"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "reset"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "resolverOf"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }]; - readonly name: "reverseNameOf"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: "reverseUri"; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "addr"; - readonly type: "address"; - }]; - readonly name: "reverseOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "reverse"; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "root"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly stateMutability: "pure"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }, { - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "set"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "setApprovalForAll"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "keyHash"; - readonly type: "uint256"; - }, { - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "setByHash"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint64"; - readonly name: "expiry"; - readonly type: "uint64"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "setExpiry"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "setMany"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256[]"; - readonly name: "keyHashes"; - readonly type: "uint256[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "setManyByHash"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "setOwner"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "labels"; - readonly type: "string[]"; - }]; - readonly name: "setReverse"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "prefix"; - readonly type: "string"; - }]; - readonly name: "setTokenURIPrefix"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "symbol"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "tokenURI"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "transferFrom"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "unlock"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "string[]"; - readonly name: "labels"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }, { - readonly internalType: "bool"; - readonly name: "withReverse"; - readonly type: "bool"; - }]; - readonly name: "unlockWithRecords"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256[]"; - readonly name: "tokenIds"; - readonly type: "uint256[]"; - }]; - readonly name: "upgradeAll"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly components: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "nonce"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly internalType: "struct IForwarder.ForwardRequest"; - readonly name: "req"; - readonly type: "tuple"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "verify"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes"; - readonly name: "inputData"; - readonly type: "bytes"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }]; - readonly name: "withdrawFromPolygon"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): UNSRegistryMockInterface; - static connect(address: string, runner?: ContractRunner | null): UNSRegistryMock; -} -export {}; -//# sourceMappingURL=UNSRegistryMock__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/UNSRegistryMock__factory.d.ts.map b/dist/types/factories/contracts/mocks/UNSRegistryMock__factory.d.ts.map deleted file mode 100644 index a235dc9e..00000000 --- a/dist/types/factories/contracts/mocks/UNSRegistryMock__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"UNSRegistryMock__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/mocks/UNSRegistryMock__factory.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/UNSRegistryMock__factory.js b/dist/types/factories/contracts/mocks/UNSRegistryMock__factory.js deleted file mode 100644 index 06b88c23..00000000 --- a/dist/types/factories/contracts/mocks/UNSRegistryMock__factory.js +++ /dev/null @@ -1,1603 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.UNSRegistryMock__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "previousAdmin", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "newAdmin", - type: "address", - }, - ], - name: "AdminChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "approved", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Approval", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: false, - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "ApprovalForAll", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint8", - name: "version", - type: "uint8", - }, - ], - name: "Initialized", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - indexed: true, - internalType: "string", - name: "keyIndex", - type: "string", - }, - { - indexed: false, - internalType: "string", - name: "key", - type: "string", - }, - ], - name: "NewKey", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - indexed: false, - internalType: "string", - name: "uri", - type: "string", - }, - ], - name: "NewURI", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "string", - name: "prefix", - type: "string", - }, - ], - name: "NewURIPrefix", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "addr", - type: "address", - }, - ], - name: "RemoveReverse", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "ResetRecords", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - indexed: true, - internalType: "string", - name: "keyIndex", - type: "string", - }, - { - indexed: true, - internalType: "string", - name: "valueIndex", - type: "string", - }, - { - indexed: false, - internalType: "string", - name: "key", - type: "string", - }, - { - indexed: false, - internalType: "string", - name: "value", - type: "string", - }, - ], - name: "Set", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - indexed: false, - internalType: "uint64", - name: "expiry", - type: "uint64", - }, - ], - name: "SetExpiry", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "addr", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "SetReverse", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Transfer", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "implementation", - type: "address", - }, - ], - name: "Upgraded", - type: "event", - }, - { - inputs: [], - name: "BATCH_LIMIT", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "NAME", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "VERSION", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "key", - type: "string", - }, - ], - name: "addKey", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "addr", - type: "address", - }, - ], - name: "addProxyReader", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "approve", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "burn", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "user", - type: "address", - }, - { - internalType: "bytes", - name: "depositData", - type: "bytes", - }, - ], - name: "deposit", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "depositToPolygon", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - internalType: "struct IForwarder.ForwardRequest", - name: "req", - type: "tuple", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "execute", - outputs: [ - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "exists", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "expiryOf", - outputs: [ - { - internalType: "uint64", - name: "", - type: "uint64", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "key", - type: "string", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "get", - outputs: [ - { - internalType: "string", - name: "value", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getApproved", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "keyHash", - type: "uint256", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getByHash", - outputs: [ - { - internalType: "string", - name: "key", - type: "string", - }, - { - internalType: "string", - name: "value", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "keyHash", - type: "uint256", - }, - ], - name: "getKey", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256[]", - name: "hashes", - type: "uint256[]", - }, - ], - name: "getKeys", - outputs: [ - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getMany", - outputs: [ - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256[]", - name: "keyHashes", - type: "uint256[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getManyByHash", - outputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getTokenName", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "mintingManager", - type: "address", - }, - { - internalType: "address", - name: "cnsRegistry", - type: "address", - }, - { - internalType: "address", - name: "rootChainManager", - type: "address", - }, - { - internalType: "address", - name: "childChainManager", - type: "address", - }, - ], - name: "initialize", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - name: "isApprovedForAll", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "spender", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "isApprovedOrOwner", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "isExpired", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "forwarder", - type: "address", - }, - ], - name: "isTrustedForwarder", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "user", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "mint", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "user", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - name: "mint", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "string", - name: "uri", - type: "string", - }, - ], - name: "mintTLD", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "string[]", - name: "labels", - type: "string[]", - }, - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - { - internalType: "bool", - name: "withReverse", - type: "bool", - }, - ], - name: "mintWithRecords", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes[]", - name: "data", - type: "bytes[]", - }, - ], - name: "multicall", - outputs: [ - { - internalType: "bytes[]", - name: "results", - type: "bytes[]", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "name", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string[]", - name: "labels", - type: "string[]", - }, - ], - name: "namehash", - outputs: [ - { - internalType: "uint256", - name: "hash", - type: "uint256", - }, - ], - stateMutability: "pure", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "nonceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "onERC721Received", - outputs: [ - { - internalType: "bytes4", - name: "", - type: "bytes4", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "ownerOf", - outputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "reconfigure", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "removeReverse", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "reset", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "resolverOf", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "addr", - type: "address", - }, - ], - name: "reverseNameOf", - outputs: [ - { - internalType: "string", - name: "reverseUri", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "addr", - type: "address", - }, - ], - name: "reverseOf", - outputs: [ - { - internalType: "uint256", - name: "reverse", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "root", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "pure", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "safeTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "safeTransferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "key", - type: "string", - }, - { - internalType: "string", - name: "value", - type: "string", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "set", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "setApprovalForAll", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "keyHash", - type: "uint256", - }, - { - internalType: "string", - name: "value", - type: "string", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "setByHash", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint64", - name: "expiry", - type: "uint64", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "setExpiry", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "setMany", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256[]", - name: "keyHashes", - type: "uint256[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "setManyByHash", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "setOwner", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "string[]", - name: "labels", - type: "string[]", - }, - ], - name: "setReverse", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "prefix", - type: "string", - }, - ], - name: "setTokenURIPrefix", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "symbol", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "tokenURI", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "transferFrom", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "unlock", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "string[]", - name: "labels", - type: "string[]", - }, - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - { - internalType: "bool", - name: "withReverse", - type: "bool", - }, - ], - name: "unlockWithRecords", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256[]", - name: "tokenIds", - type: "uint256[]", - }, - ], - name: "upgradeAll", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - internalType: "struct IForwarder.ForwardRequest", - name: "req", - type: "tuple", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "verify", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes", - name: "inputData", - type: "bytes", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - ], - name: "withdrawFromPolygon", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -const _bytecode = "0x608060405234801561001057600080fd5b506153de806100206000396000f3fe608060405234801561001057600080fd5b50600436106103c55760003560e01c80637eee288d116101ff578063baef73e91161011a578063e985e9c5116100ad578063f5c1f76e1161007c578063f5c1f76e14610914578063f7df5c6014610927578063f8c8765e1461093a578063ffa1ad741461094d57600080fd5b8063e985e9c5146108b6578063ebf0c717146108f2578063ec129eea146108f9578063f25eb5c11461090c57600080fd5b8063ce92b33e116100e9578063ce92b33e1461086a578063cf2c52cb1461087d578063d9548e5314610890578063dbe16c07146108a357600080fd5b8063baef73e9146107ef578063bb5b27e114610831578063bebec6b414610844578063c87b56dd1461085757600080fd5b8063a424740011610192578063b3f9e4cb11610161578063b3f9e4cb14610795578063b85afd28146107a8578063b88d4fde146107c9578063ba5d40b7146107dc57600080fd5b8063a42474001461073c578063ab3b87fe1461074f578063ac9650d814610762578063ae31844a1461078257600080fd5b806395d89b41116101ce57806395d89b41146106e257806399e0dd7c146106ea578063a22cb465146106fd578063a3f4df7e1461071057600080fd5b80637eee288d146106a157806394d008ef146106b45780639508b1c4146106c75780639559c0bd146106da57600080fd5b806342842e0e116102ef578063572b6c0511610282578063672b9f8111610251578063672b9f81146106395780636ccbae5f1461065a57806370a082311461067b5780637e37479e1461068e57600080fd5b8063572b6c05146105e45780636352211e14610600578063638e5c7814610613578063663f7b2a1461062657600080fd5b80634a72584d116102be5780634a72584d146105985780634f558e79146105ab57806350382c1a146105be57806350960239146105d157600080fd5b806342842e0e1461054c57806342966c681461055f578063430c20811461057257806347c816991461058557600080fd5b80631bf7e13e1161036757806327f189751161033657806327f1897514610500578063310bd74b146105135780633f72ec6e1461052657806340c10f191461053957600080fd5b80631bf7e13e146104a65780631f71be06146104b957806323b872dd146104cc578063276fabb1146104df57600080fd5b8063095ea7b3116103a3578063095ea7b314610432578063150b7a02146104475780631bd8cc1a146104735780631be5e7ed1461049357600080fd5b806301ffc9a7146103ca57806306fdde03146103f2578063081812fc14610407575b600080fd5b6103dd6103d8366004614003565b610971565b60405190151581526020015b60405180910390f35b6103fa610982565b6040516103e99190614070565b61041a610415366004614083565b610a14565b6040516001600160a01b0390911681526020016103e9565b6104456104403660046140b1565b610a3b565b005b61045a61045536600461411e565b610a54565b6040516001600160e01b031990911681526020016103e9565b6104866104813660046141d4565b610bae565b6040516103e99190614277565b6103fa6104a136600461428a565b610ca4565b6103fa6104b43660046142c1565b610cef565b6104456104c7366004614341565b610dfa565b6104456104da3660046143fd565b610e90565b6104f26104ed36600461443e565b610ee3565b6040519081526020016103e9565b61044561050e36600461447f565b610ef2565b610445610521366004614083565b610f3a565b6104456105343660046144f2565b610f75565b6104456105473660046140b1565b611077565b61044561055a3660046143fd565b6110c4565b61044561056d366004614083565b6110df565b6103dd6105803660046140b1565b611123565b61044561059336600461451c565b61112f565b6104456105a636600461457d565b61116e565b6103dd6105b9366004614083565b6111b4565b6104456105cc366004614684565b6111d3565b6104456105df3660046146b8565b611209565b6103dd6105f23660046146b8565b6001600160a01b0316301490565b61041a61060e366004614083565b611269565b610445610621366004614083565b611286565b610445610634366004614770565b6112d1565b61064c6106473660046147b8565b611372565b6040516103e99291906147da565b6104f2610668366004614083565b6000908152610100602052604090205490565b6104f26106893660046146b8565b61138a565b6104f261069c3660046146b8565b611410565b6104456106af3660046140b1565b611441565b6104456106c23660046147ff565b611498565b6104456106d536600461485a565b6114e7565b6104f2601481565b6103fa61156e565b6104456106f83660046148fd565b61157d565b61044561070b366004614932565b611604565b6103fa6040518060400160405280600d81526020016c554e533a20526567697374727960981b81525081565b6103dd61074a3660046142c1565b611616565b61044561075d3660046140b1565b611661565b61077561077036600461443e565b6116a6565b6040516103e9919061495e565b61044561079036600461443e565b611782565b61041a6107a3366004614083565b611820565b6107bb6107b63660046141d4565b61184a565b6040516103e99291906149c0565b6104456107d73660046149e5565b61196c565b6104456107ea366004614341565b6119b3565b6108196107fd366004614083565b600090815261013960205260409020546001600160401b031690565b6040516001600160401b0390911681526020016103e9565b6103fa61083f366004614083565b611a3c565b6103fa6108523660046146b8565b611ade565b6103fa610865366004614083565b611ba8565b61044561087836600461447f565b611c0e565b61044561088b366004614a50565b611c4d565b6103dd61089e366004614083565b611d1c565b6103fa6108b1366004614083565b611d5f565b6103dd6108c4366004614a97565b6001600160a01b039182166000908152606a6020908152604080832093909416825291909152205460ff1690565b60006104f2565b61044561090736600461447f565b611d7d565b610445611dbc565b61048661092236600461443e565b611e43565b610445610935366004614ad0565b611ef6565b610445610948366004614b02565b611f87565b6103fa60405180604001604052806005815260200164302e392e3160d81b81525081565b600061097c8261215d565b92915050565b60606065805461099190614b5e565b80601f01602080910402602001604051908101604052809291908181526020018280546109bd90614b5e565b8015610a0a5780601f106109df57610100808354040283529160200191610a0a565b820191906000526020600020905b8154815290600101906020018083116109ed57829003601f168201915b5050505050905090565b6000610a1f826121ad565b506000908152606960205260409020546001600160a01b031690565b80610a458161220c565b610a4f8383612272565b505050565b60007f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec92378546001600160a01b0316610a89612394565b6001600160a01b031603610b4a57610a9f612394565b6001600160a01b03166342966c68856040518263ffffffff1660e01b8152600401610acc91815260200190565b600060405180830381600087803b158015610ae657600080fd5b505af1158015610afa573d6000803e3d6000fd5b505050821580159150610b145750610b1482840184614b92565b15610b3257610b2330856123a3565b610b2d85856124f1565b610b3c565b610b3c85856123a3565b50630a85bd0160e11b610ba5565b60405162461bcd60e51b815260206004820152602560248201527f52656769737472793a204552433732315f524543454956494e475f50524f4849604482015264109255115160da1b60648201526084015b60405180910390fd5b95945050505050565b6060826001600160401b03811115610bc857610bc86145cf565b604051908082528060200260200182016040528015610bfb57816020015b6060815260200190600190039081610be65790505b50905060005b83811015610c9c57610c6c858583818110610c1e57610c1e614bad565b9050602002810190610c309190614bc3565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525087925061259c915050565b828281518110610c7e57610c7e614bad565b60200260200101819052508080610c9490614c1f565b915050610c01565b509392505050565b6060610ce784848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525086925061259c915050565b949350505050565b606060005a9050610d01858585611616565b610d5d5760405162461bcd60e51b815260206004820152602760248201527f554e535265676973747279466f727761726465723a205349474e41545552455f6044820152661253959053125160ca1b6064820152608401610b9c565b610def610d6d60208701876146b8565b30604088013584610d8160608b018b614bc3565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8e018190048102820181019092528c815292508c91508b90819084018382808284376000920191909152506125d192505050565b9150505b9392505050565b610134546001600160a01b0316610e0f612394565b6001600160a01b031614610e355760405162461bcd60e51b8152600401610b9c90614c38565b6000610e49610e44888a614c7f565b6126b2565b509050610e568982611441565b610e63868686868561270a565b8115610e8557610e858982610e80610e7b8b8d614c7f565b612778565b6127f9565b505050505050505050565b80610ea2610e9c612394565b8261283b565b610ebe5760405162461bcd60e51b8152600401610b9c90614c8c565b81610ec88161220c565b610ed1836128cc565b610edc858585612939565b5050505050565b6000610c9c610e448385614c7f565b80610efe610e9c612394565b610f1a5760405162461bcd60e51b8152600401610b9c90614c8c565b81610f248161220c565b610f318787878787612ae0565b50505050505050565b80610f46610e9c612394565b610f625760405162461bcd60e51b8152600401610b9c90614c8c565b81610f6c8161220c565b610a4f836128cc565b610134546001600160a01b0316610f8a612394565b6001600160a01b031614610fb05760405162461bcd60e51b8152600401610b9c90614c38565b610fb9816121ad565b42826001600160401b0316116110115760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a204558504952595f494e5f5041535400000000000000006044820152606401610b9c565b60008181526101396020908152604091829020805467ffffffffffffffff19166001600160401b038616908117909155915191825282917f93feabb03ab84f47fc85bf0c298103fca21d8c8bc376eae0c1e1c56b9d4f7789910160405180910390a25050565b61107f612b43565b6001600160a01b0316611090612394565b6001600160a01b0316146110b65760405162461bcd60e51b8152600401610b9c90614cd5565b6110c082826123a3565b5050565b610a4f8383836040518060200160405280600081525061196c565b806110eb610e9c612394565b6111075760405162461bcd60e51b8152600401610b9c90614c8c565b816111118161220c565b61111a836128cc565b610a4f83612c44565b6000610df3838361283b565b8061113b610e9c612394565b6111575760405162461bcd60e51b8152600401610b9c90614c8c565b816111618161220c565b610f318787878787612ceb565b8061117a610e9c612394565b6111965760405162461bcd60e51b8152600401610b9c90614c8c565b816111a08161220c565b6111ac86868686612dca565b505050505050565b6000818152606760205260408120546001600160a01b0316151561097c565b611206816040516020016111e79190614d17565b6040516020818303038152906040528051906020012060001c82612e6a565b50565b610134546001600160a01b031661121e612394565b6001600160a01b0316146112445760405162461bcd60e51b8152600401610b9c90614c38565b6001600160a01b0316600090815261013660205260409020805460ff19166001179055565b600061127482611d1c565b6112815761097c82612e8f565b919050565b80611292610e9c612394565b6112ae5760405162461bcd60e51b8152600401610b9c90614c8c565b6112c06112b9612394565b3084612939565b6110c06112cb612394565b836124f1565b60006112dc826126b2565b5090506112e7612394565b6001600160a01b03166112f982611269565b6001600160a01b03161461134f5760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b9c565b6113588161220c565b6110c0611363612394565b8261136d85612778565b612eef565b60608061137f8484612f76565b909590945092505050565b60006001600160a01b0382166113f45760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b6064820152608401610b9c565b506001600160a01b031660009081526068602052604090205490565b6001600160a01b0381166000908152610135602052604081205461143381612f97565b61143b578091505b50919050565b610134546001600160a01b0316611456612394565b6001600160a01b03161461147c5760405162461bcd60e51b8152600401610b9c90614c38565b611485816128cc565b6110c061149182612e8f565b8383612939565b6114a0612b43565b6001600160a01b03166114b1612394565b6001600160a01b0316146114d75760405162461bcd60e51b8152600401610b9c90614cd5565b6114e184846123a3565b50505050565b6114f18787612fe1565b6114f9612394565b6001600160a01b031661150b86611269565b6001600160a01b0316146115615760405162461bcd60e51b815260206004820152601d60248201527f52656769737472793a2053454e4445525f49535f4e4f545f4f574e45520000006044820152606401610b9c565b610f31848484848961270a565b60606066805461099190614b5e565b610134546001600160a01b0316611592612394565b6001600160a01b0316146115b85760405162461bcd60e51b8152600401610b9c90614c38565b6101336115c6828483614d79565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b82826040516115f8929190614e61565b60405180910390a15050565b6110c061160f612394565b8383613050565b6000610ce761162485614e75565b3085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061311e92505050565b8061166d610e9c612394565b6116895760405162461bcd60e51b8152600401610b9c90614c8c565b816116938161220c565b6114e161169f84612e8f565b8585612939565b606060006116b48385614eff565b90503033036117795760005b83811015611777576117476116d3612394565b6116db613267565b8787858181106116ed576116ed614bad565b90506020028101906116ff9190614bc3565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201829052506040805160208101909152908152925061327b915050565b82828151811061175957611759614bad565b6020026020010181905250808061176f90614c1f565b9150506116c0565b505b610ce7816132ab565b610134546001600160a01b0316611797612394565b6001600160a01b0316146117bd5760405162461bcd60e51b8152600401610b9c90614c38565b60005b81811015610a4f57600161013760008585858181106117e1576117e1614bad565b90506020020135815260200190815260200160002060006101000a81548160ff021916908315150217905550808061181890614c1f565b9150506117c0565b6000818152606760205260408120546001600160a01b031661184357600061097c565b3092915050565b606080836001600160401b03811115611865576118656145cf565b60405190808252806020026020018201604052801561189857816020015b60608152602001906001900390816118835790505b509150836001600160401b038111156118b3576118b36145cf565b6040519080825280602002602001820160405280156118e657816020015b60608152602001906001900390816118d15790505b50905060005b848110156119635761191686868381811061190957611909614bad565b9050602002013585612f76565b84838151811061192857611928614bad565b6020026020010184848151811061194157611941614bad565b602002602001018290528290525050808061195b90614c1f565b9150506118ec565b50935093915050565b81611978610e9c612394565b6119945760405162461bcd60e51b8152600401610b9c90614c8c565b8261199e8161220c565b6119a7846128cc565b6111ac868686866133d6565b610134546001600160a01b03166119c8612394565b6001600160a01b0316146119ee5760405162461bcd60e51b8152600401610b9c90614c38565b6000806119fe610e44898b614c7f565b91509150611a0b81613409565b611a238a83611a1d610e7b8c8e614c7f565b86613469565b611a30878787878661270a565b50505050505050505050565b600081815260c960205260409020805460609190611a5990614b5e565b80601f0160208091040260200160405190810160405280929190818152602001828054611a8590614b5e565b8015611ad25780601f10611aa757610100808354040283529160200191611ad2565b820191906000526020600020905b815481529060010190602001808311611ab557829003601f168201915b50505050509050919050565b6001600160a01b03811660009081526101356020526040902054606090611b0481612f97565b61143b576000818152610138602052604090208054611b2290614b5e565b80601f0160208091040260200160405190810160405280929190818152602001828054611b4e90614b5e565b8015611b9b5780601f10611b7057610100808354040283529160200191611b9b565b820191906000526020600020905b815481529060010190602001808311611b7e57829003601f168201915b5050505050915050919050565b6060611bb3826121ad565b6000611bbd6134bc565b90506000815111611bdd5760405180602001604052806000815250610df3565b80611be7846134cc565b604051602001611bf8929190614f72565b6040516020818303038152906040529392505050565b80611c1a610e9c612394565b611c365760405162461bcd60e51b8152600401610b9c90614c8c565b81611c408161220c565b610f31878787878761270a565b7f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87546001600160a01b0316611c80612394565b6001600160a01b031614611ca65760405162461bcd60e51b8152600401610b9c90614cd5565b6020819003611cc9576000611cbd82840184614083565b90506114e184826123a3565b6000611cd782840184614fa1565b805190915060005b818110156111ac57611d0a86848381518110611cfd57611cfd614bad565b60200260200101516123a3565b80611d1481614c1f565b915050611cdf565b600081815261013960205260408120546001600160401b03161580159061097c57505060009081526101396020526040902054426001600160401b039091161090565b600081815261013860205260409020805460609190611a5990614b5e565b80611d89610e9c612394565b611da55760405162461bcd60e51b8152600401610b9c90614c8c565b81611daf8161220c565b610f3187878787876135cc565b6000611dc6612394565b6001600160a01b0381166000908152610135602052604081205491925003611e3a5760405162461bcd60e51b815260206004820152602160248201527f52656769737472793a20524556455253455f5245434f52445f49535f454d50546044820152605960f81b6064820152608401610b9c565b611206816135e2565b6060816001600160401b03811115611e5d57611e5d6145cf565b604051908082528060200260200182016040528015611e9057816020015b6060815260200190600190039081611e7b5790505b50905060005b82811015611eef57611ebf848483818110611eb357611eb3614bad565b90506020020135611a3c565b828281518110611ed157611ed1614bad565b60200260200101819052508080611ee790614c1f565b915050611e96565b5092915050565b610134546001600160a01b0316611f0b612394565b6001600160a01b031614611f315760405162461bcd60e51b8152600401610b9c90614c38565b61013454611f48906001600160a01b0316846123a3565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c39528383604051611f7a929190614e61565b60405180910390a2505050565b600054610100900460ff1615808015611fa75750600054600160ff909116105b80611fc15750303b158015611fc1575060005460ff166001145b6120245760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610b9c565b6000805460ff191660011790558015612047576000805461ff0019166101001790555b61013480546001600160a01b0319166001600160a01b038716179055837f8ffb960699dc2ba88f34d0e41c029c3c36c95149679fe1d0153a9582bec9237880546001600160a01b0319166001600160a01b03929092169190911790556040805180820182526013815272556e73746f707061626c6520446f6d61696e7360681b60208083019190915282518084019093526002835261155160f21b908301526120ef91613627565b6120f7613667565b6120ff613667565b61210883613690565b612111826136c0565b8015610edc576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b60006001600160e01b031982166380ac58cd60e01b148061218e57506001600160e01b03198216635b5e139f60e01b145b8061097c57506301ffc9a760e01b6001600160e01b031983161461097c565b6000818152606760205260409020546001600160a01b03166112065760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b9c565b3033036122695761221b613267565b81146112065760405162461bcd60e51b815260206004820152601760248201527f52656769737472793a20544f4b454e5f494e56414c49440000000000000000006044820152606401610b9c565b611206816136f0565b600061227d82612e8f565b9050806001600160a01b0316836001600160a01b0316036122ea5760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b6064820152608401610b9c565b806001600160a01b03166122fc612394565b6001600160a01b031614806123185750612318816108c4612394565b61238a5760405162461bcd60e51b815260206004820152603e60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c00006064820152608401610b9c565b610a4f838361371e565b600061239e61378c565b905090565b6001600160a01b0382166123f95760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610b9c565b6000818152606760205260409020546001600160a01b03161561245e5760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610b9c565b61246a600083836137a7565b6001600160a01b0382166000908152606860205260408120805460019290612493908490615031565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b03861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b60006124fb612b43565b9050612507818361371e565b60008051602061538b83398151915254604080516020808201869052825180830390910181528183019283905263e3dec8fb60e01b9092526001600160a01b0390921691829163e3dec8fb91612564918891309190604401615044565b600060405180830381600087803b15801561257e57600080fd5b505af1158015612592573d6000803e3d6000fd5b5050505050505050565b6060610df3836040516020016125b29190614d17565b6040516020818303038152906040528051906020012060001c83613883565b60606125dc856136f0565b600080876001600160a01b0316866125f68b8a898961327b565b6040516126039190614d17565b60006040518083038160008787f1925050503d8060008114612641576040519150601f19603f3d011682016040523d82523d6000602084013e612646565b606091505b509092509050612657603f87615086565b5a116126655761266561509a565b6126a582826040518060400160405280601a81526020017f42617365466f727761726465723a2043414c4c5f4641494c4544000000000000815250613965565b9998505050505050505050565b805160009081905b8015612704578291506126f082856126d36001856150b0565b815181106126e3576126e3614bad565b602002602001015161399e565b9250806126fc816150c3565b9150506126ba565b50915091565b60005b848110156111ac5761276686868381811061272a5761272a614bad565b905060200281019061273c9190614bc3565b86868581811061274e5761274e614bad565b90506020028101906127609190614bc3565b86612ceb565b8061277081614c1f565b91505061270d565b606060008260008151811061278f5761278f614bad565b602002602001015190506000600190505b8351811015611eef57818482815181106127bc576127bc614bad565b60200260200101516040516020016127d59291906150da565b604051602081830303815290604052915080806127f190614c1f565b9150506127a0565b61dead6001600160a01b0384161480159061282b57506001600160a01b03831660009081526101356020526040902054155b15610a4f57610a4f838383612eef565b60008061284783611269565b90506001600160a01b03811615801590610ce75750806001600160a01b0316846001600160a01b031614806128a157506001600160a01b038082166000908152606a602090815260408083209388168352929052205460ff165b80610ce75750836001600160a01b03166128ba84610a14565b6001600160a01b031614949350505050565b6128d581613a4a565b6040516020016128e791815260200190565b60408051601f198184030181528282528051602091820120600085815260cb9092529181209190915582917f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9190a250565b826001600160a01b031661294c82612e8f565b6001600160a01b0316146129b05760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b6064820152608401610b9c565b6001600160a01b038216612a125760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610b9c565b612a1d8383836137a7565b612a2860008261371e565b6001600160a01b0383166000908152606860205260408120805460019290612a519084906150b0565b90915550506001600160a01b0382166000908152606860205260408120805460019290612a7f908490615031565b909155505060008181526067602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60005b848110156111ac57612b31868683818110612b0057612b00614bad565b90506020020135858584818110612b1957612b19614bad565b9050602002810190612b2b9190614bc3565b85612dca565b80612b3b81614c1f565b915050612ae3565b60008051602061538b833981519152546000906001600160a01b03168015612c405760405163721804d360e11b81523060048201526000906001600160a01b0383169063e43009a690602401602060405180830381865afa158015612bac573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612bd09190615116565b60405163e66f960360e01b8152600481018290529091506001600160a01b0383169063e66f960390602401602060405180830381865afa158015612c18573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612c3c919061512f565b9250505b5090565b6000612c4f82612e8f565b9050612c5d816000846137a7565b612c6860008361371e565b6001600160a01b0381166000908152606860205260408120805460019290612c919084906150b0565b909155505060008281526067602052604080822080546001600160a01b0319169055518391906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b60008585604051602001612d0092919061514c565b60408051601f198184030181528282528051602091820120601f8901829004820284018201909252878352909250612d549183918990899081908401838280828437600092019190915250612e6a92505050565b6111ac8187878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b018190048102820181019092528981529250899150889081908401838280828437600092019190915250889250613a72915050565b612dd384613ba7565b612e1f5760405162461bcd60e51b815260206004820152601c60248201527f5265636f726453746f726167653a204b45595f4e4f545f464f554e44000000006044820152606401610b9c565b6114e184612e2c86611a3c565b85858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250879250613a72915050565b612e7382613ba7565b6110c057600082815260c960205260409020610a4f828261515c565b6000818152606760205260408120546001600160a01b03168061097c5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610b9c565b6000828152610138602052604090208054612f0990614b5e565b9050600003612f2d57600082815261013860205260409020612f2b828261515c565b505b6001600160a01b03831660008181526101356020526040808220859055518492917feb76a21470988c474a21f690cc28fee1ed511bd812dc3c21fd0f49c5e5d4708a91a3505050565b606080612f8284611a3c565b9150612f8e8484613883565b90509250929050565b6000818152610137602052604081205460ff16801561097c57506101366000612fbe612394565b6001600160a01b0316815260208101919091526040016000205460ff1692915050565b60008051602061538b83398151915254604051633805550f60e01b81526001600160a01b03909116908190633805550f906130229086908690600401614e61565b600060405180830381600087803b15801561303c57600080fd5b505af1158015610f31573d6000803e3d6000fd5b816001600160a01b0316836001600160a01b0316036130b15760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610b9c565b6001600160a01b038381166000818152606a6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6040838101519051636ccbae5f60e01b8152600481019190915260009081903090636ccbae5f90602401602060405180830381865afa158015613165573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131899190615116565b905060006132378660600151805190602001208688602001516040516020016131d79392919092835260609190911b6bffffffffffffffffffffffff19166020830152603482015260540190565b60408051601f1981840301815282825280516020918201207f19457468657265756d205369676e6564204d6573736167653a0a33320000000084830152603c8085019190915282518085039091018152605c909301909152815191012090565b905081866020015114801561325d5750855161325d906001600160a01b03168286613bcd565b9695505050505050565b60003033036132785750601f193601355b90565b60608285856040516020016132929392919061521b565b6040516020818303038152906040529050949350505050565b606081516001600160401b038111156132c6576132c66145cf565b6040519080825280602002602001820160405280156132f957816020015b60608152602001906001900390816132e45790505b50905060005b825181101561143b57600080306001600160a01b031685848151811061332757613327614bad565b602002602001015160405161333c9190614d17565b600060405180830381855af49150503d8060008114613377576040519150601f19603f3d011682016040523d82523d6000602084013e61337c565b606091505b50915091506133a482826040518060600160405280602781526020016153ab60279139613965565b8484815181106133b6576133b6614bad565b6020026020010181905250505080806133ce90614c1f565b9150506132ff565b6133e1848484612939565b6133ed84848484613d0f565b6114e15760405162461bcd60e51b8152600401610b9c9061525a565b6000818152610137602052604090205460ff16156112065760405162461bcd60e51b815260206004820152601860248201527f52656769737472793a20544f4b454e5f555047524144454400000000000000006044820152606401610b9c565b61347384846123a3565b827fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952836040516134a39190614070565b60405180910390a280156114e1576114e18484846127f9565b6060610133805461099190614b5e565b6060816000036134f35750506040805180820190915260018152600360fc1b602082015290565b8160005b811561351d578061350781614c1f565b91506135169050600a83615086565b91506134f7565b6000816001600160401b03811115613537576135376145cf565b6040519080825280601f01601f191660200182016040528015613561576020820181803683370190505b5090505b8415610ce7576135766001836150b0565b9150613583600a866152ac565b61358e906030615031565b60f81b8183815181106135a3576135a3614bad565b60200101906001600160f81b031916908160001a9053506135c5600a86615086565b9450613565565b6135d5816128cc565b610edc858585858561270a565b6001600160a01b03811660008181526101356020526040808220829055517ffcf5eec0cfa3e6332f5f0e63ec242d71f866a61d121d6cdf5c2eb3b668a26c4f9190a250565b600054610100900460ff1661364e5760405162461bcd60e51b8152600401610b9c906152c0565b606561365a838261515c565b506066610a4f828261515c565b600054610100900460ff1661368e5760405162461bcd60e51b8152600401610b9c906152c0565b565b600054610100900460ff166136b75760405162461bcd60e51b8152600401610b9c906152c0565b61120681613e14565b600054610100900460ff166136e75760405162461bcd60e51b8152600401610b9c906152c0565b61120681613e6d565b6000818152610100602052604090205461370b906001615031565b6000918252610100602052604090912055565b600081815260696020526040902080546001600160a01b0319166001600160a01b038416908117909155819061375382612e8f565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60003033036137a2575060331936013560601c90565b503390565b6001600160a01b0382166137be576137be81613409565b600081815261013960205260409020546001600160401b031615613859576001600160a01b0382161580159061380d57506137f7612b43565b6001600160a01b0316826001600160a01b031614155b6138595760405162461bcd60e51b815260206004820152601960248201527f52656769737472793a20544f4b454e5f455850495241424c45000000000000006044820152606401610b9c565b6001600160a01b03831660009081526101356020526040902054819003610a4f57610a4f836135e2565b606061388e82612f97565b156138a8575060408051602081019091526000815261097c565b60ca60006138b584613a4a565b8152602001908152602001600020600084815260200190815260200160002080546138df90614b5e565b80601f016020809104026020016040519081016040528092919081815260200182805461390b90614b5e565b80156139585780601f1061392d57610100808354040283529160200191613958565b820191906000526020600020905b81548152906001019060200180831161393b57829003601f168201915b5050505050905092915050565b60608315613974575081610df3565b8251156139845782518084602001fd5b8160405162461bcd60e51b8152600401610b9c9190614070565b600081516000036139e95760405162461bcd60e51b815260206004820152601560248201527452656769737472793a204c4142454c5f454d50545960581b6044820152606401610b9c565b82826040516020016139fb9190614d17565b60405160208183030381529060405280519060200120604051602001613a2b929190918252602082015260400190565b60408051601f1981840301815291905280516020909101209392505050565b600081815260cb602052604081205415612c4057600082815260cb602052604090205461097c565b60ca6000613a7f83613a4a565b815260200190815260200160002060008581526020019081526020016000208054613aa990614b5e565b9050600003613b015782604051613ac09190614d17565b6040518091039020817f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f8685604051613af89190614070565b60405180910390a35b8160ca6000613b0f84613a4a565b815260200190815260200160002060008681526020019081526020016000209081613b3a919061515c565b5081604051613b499190614d17565b604051809103902083604051613b5f9190614d17565b6040518091039020827f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d928686604051613b999291906147da565b60405180910390a450505050565b600081815260c9602052604081208054829190613bc390614b5e565b9050119050919050565b6000806000613bdc8585613ebb565b90925090506000816004811115613bf557613bf561530b565b148015613c135750856001600160a01b0316826001600160a01b0316145b15613c2357600192505050610df3565b600080876001600160a01b0316631626ba7e60e01b8888604051602401613c4b929190615321565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051613c899190614d17565b600060405180830381855afa9150503d8060008114613cc4576040519150601f19603f3d011682016040523d82523d6000602084013e613cc9565b606091505b5091509150818015613cdc575080516020145b8015613d0357508051630b135d3f60e11b90613d019083016020908101908401615116565b145b98975050505050505050565b60006001600160a01b0384163b15613e0c57836001600160a01b031663150b7a02613d38612394565b8786866040518563ffffffff1660e01b8152600401613d5a949392919061533a565b6020604051808303816000875af1925050508015613d95575060408051601f3d908101601f19168201909252613d929181019061536d565b60015b613df2573d808015613dc3576040519150601f19603f3d011682016040523d82523d6000602084013e613dc8565b606091505b508051600003613dea5760405162461bcd60e51b8152600401610b9c9061525a565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610ce7565b506001610ce7565b600054610100900460ff16613e3b5760405162461bcd60e51b8152600401610b9c906152c0565b8060008051602061538b8339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b600054610100900460ff16613e945760405162461bcd60e51b8152600401610b9c906152c0565b807f8bea9a6f8afd34f4e29c585f854e0cc5161431bf5fc299d468454d33dce53b87613e4c565b6000808251604103613ef15760208301516040840151606085015160001a613ee587828585613f00565b94509450505050613ef9565b506000905060025b9250929050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613f375750600090506003613fe4565b8460ff16601b14158015613f4f57508460ff16601c14155b15613f605750600090506004613fe4565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613fb4573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613fdd57600060019250925050613fe4565b9150600090505b94509492505050565b6001600160e01b03198116811461120657600080fd5b60006020828403121561401557600080fd5b8135610df381613fed565b60005b8381101561403b578181015183820152602001614023565b50506000910152565b6000815180845261405c816020860160208601614020565b601f01601f19169290920160200192915050565b602081526000610df36020830184614044565b60006020828403121561409557600080fd5b5035919050565b6001600160a01b038116811461120657600080fd5b600080604083850312156140c457600080fd5b82356140cf8161409c565b946020939093013593505050565b60008083601f8401126140ef57600080fd5b5081356001600160401b0381111561410657600080fd5b602083019150836020828501011115613ef957600080fd5b60008060008060006080868803121561413657600080fd5b85356141418161409c565b945060208601356141518161409c565b93506040860135925060608601356001600160401b0381111561417357600080fd5b61417f888289016140dd565b969995985093965092949392505050565b60008083601f8401126141a257600080fd5b5081356001600160401b038111156141b957600080fd5b6020830191508360208260051b8501011115613ef957600080fd5b6000806000604084860312156141e957600080fd5b83356001600160401b038111156141ff57600080fd5b61420b86828701614190565b909790965060209590950135949350505050565b600082825180855260208086019550808260051b84010181860160005b8481101561426a57601f19868403018952614258838351614044565b9884019892509083019060010161423c565b5090979650505050505050565b602081526000610df3602083018461421f565b60008060006040848603121561429f57600080fd5b83356001600160401b038111156142b557600080fd5b61420b868287016140dd565b6000806000604084860312156142d657600080fd5b83356001600160401b03808211156142ed57600080fd5b908501906080828803121561430157600080fd5b9093506020850135908082111561431757600080fd5b50614324868287016140dd565b9497909650939450505050565b8035801515811461128157600080fd5b60008060008060008060008060a0898b03121561435d57600080fd5b88356143688161409c565b975060208901356001600160401b038082111561438457600080fd5b6143908c838d01614190565b909950975060408b01359150808211156143a957600080fd5b6143b58c838d01614190565b909750955060608b01359150808211156143ce57600080fd5b506143db8b828c01614190565b90945092506143ee905060808a01614331565b90509295985092959890939650565b60008060006060848603121561441257600080fd5b833561441d8161409c565b9250602084013561442d8161409c565b929592945050506040919091013590565b6000806020838503121561445157600080fd5b82356001600160401b0381111561446757600080fd5b61447385828601614190565b90969095509350505050565b60008060008060006060868803121561449757600080fd5b85356001600160401b03808211156144ae57600080fd5b6144ba89838a01614190565b909750955060208801359150808211156144d357600080fd5b506144e088828901614190565b96999598509660400135949350505050565b6000806040838503121561450557600080fd5b82356001600160401b03811681146140cf57600080fd5b60008060008060006060868803121561453457600080fd5b85356001600160401b038082111561454b57600080fd5b61455789838a016140dd565b9097509550602088013591508082111561457057600080fd5b506144e0888289016140dd565b6000806000806060858703121561459357600080fd5b8435935060208501356001600160401b038111156145b057600080fd5b6145bc878288016140dd565b9598909750949560400135949350505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561460d5761460d6145cf565b604052919050565b600082601f83011261462657600080fd5b81356001600160401b0381111561463f5761463f6145cf565b614652601f8201601f19166020016145e5565b81815284602083860101111561466757600080fd5b816020850160208301376000918101602001919091529392505050565b60006020828403121561469657600080fd5b81356001600160401b038111156146ac57600080fd5b610ce784828501614615565b6000602082840312156146ca57600080fd5b8135610df38161409c565b60006001600160401b038211156146ee576146ee6145cf565b5060051b60200190565b600061470b614706846146d5565b6145e5565b8381529050602080820190600585901b84018681111561472a57600080fd5b845b818110156147655780356001600160401b0381111561474b5760008081fd5b61475789828901614615565b85525092820192820161472c565b505050509392505050565b60006020828403121561478257600080fd5b81356001600160401b0381111561479857600080fd5b8201601f810184136147a957600080fd5b610ce7848235602084016146f8565b600080604083850312156147cb57600080fd5b50508035926020909101359150565b6040815260006147ed6040830185614044565b8281036020840152610def8185614044565b6000806000806060858703121561481557600080fd5b84356148208161409c565b93506020850135925060408501356001600160401b0381111561484257600080fd5b61484e878288016140dd565b95989497509550505050565b60008060008060008060006080888a03121561487557600080fd5b87356001600160401b038082111561488c57600080fd5b6148988b838c016140dd565b909950975060208a0135965060408a01359150808211156148b857600080fd5b6148c48b838c01614190565b909650945060608a01359150808211156148dd57600080fd5b506148ea8a828b01614190565b989b979a50959850939692959293505050565b6000806020838503121561491057600080fd5b82356001600160401b0381111561492657600080fd5b614473858286016140dd565b6000806040838503121561494557600080fd5b82356149508161409c565b9150612f8e60208401614331565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156149b357603f198886030184526149a1858351614044565b94509285019290850190600101614985565b5092979650505050505050565b6040815260006149d3604083018561421f565b8281036020840152610def818561421f565b600080600080608085870312156149fb57600080fd5b8435614a068161409c565b93506020850135614a168161409c565b92506040850135915060608501356001600160401b03811115614a3857600080fd5b614a4487828801614615565b91505092959194509250565b600080600060408486031215614a6557600080fd5b8335614a708161409c565b925060208401356001600160401b03811115614a8b57600080fd5b614324868287016140dd565b60008060408385031215614aaa57600080fd5b8235614ab58161409c565b91506020830135614ac58161409c565b809150509250929050565b600080600060408486031215614ae557600080fd5b8335925060208401356001600160401b03811115614a8b57600080fd5b60008060008060808587031215614b1857600080fd5b8435614b238161409c565b93506020850135614b338161409c565b92506040850135614b438161409c565b91506060850135614b538161409c565b939692955090935050565b600181811c90821680614b7257607f821691505b60208210810361143b57634e487b7160e01b600052602260045260246000fd5b600060208284031215614ba457600080fd5b610df382614331565b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112614bda57600080fd5b8301803591506001600160401b03821115614bf457600080fd5b602001915036819003821315613ef957600080fd5b634e487b7160e01b600052601160045260246000fd5b600060018201614c3157614c31614c09565b5060010190565b60208082526027908201527f52656769737472793a2053454e4445525f49535f4e4f545f4d494e54494e475f60408201526626a0a720a3a2a960c91b606082015260800190565b6000610df33684846146f8565b60208082526029908201527f52656769737472793a2053454e4445525f49535f4e4f545f415050524f5645446040820152682fa7a92fa7aba722a960b91b606082015260800190565b60208082526022908201527f52656769737472793a20494e53554646494349454e545f5045524d495353494f6040820152614e5360f01b606082015260800190565b60008251614d29818460208701614020565b9190910192915050565b601f821115610a4f57600081815260208120601f850160051c81016020861015614d5a5750805b601f850160051c820191505b818110156111ac57828155600101614d66565b6001600160401b03831115614d9057614d906145cf565b614da483614d9e8354614b5e565b83614d33565b6000601f841160018114614dd85760008515614dc05750838201355b600019600387901b1c1916600186901b178355610edc565b600083815260209020601f19861690835b82811015614e095786850135825560209485019460019092019101614de9565b5086821015614e265760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b602081526000610ce7602083018486614e38565b600060808236031215614e8757600080fd5b604051608081016001600160401b038282108183111715614eaa57614eaa6145cf565b8160405284359150614ebb8261409c565b81835260208501356020840152604085013560408401526060850135915080821115614ee657600080fd5b50614ef336828601614615565b60608301525092915050565b6000614f0d614706846146d5565b80848252602080830192508560051b850136811115614f2b57600080fd5b855b81811015614f665780356001600160401b03811115614f4c5760008081fd5b614f5836828a01614615565b865250938201938201614f2d565b50919695505050505050565b60008351614f84818460208801614020565b835190830190614f98818360208801614020565b01949350505050565b60006020808385031215614fb457600080fd5b82356001600160401b03811115614fca57600080fd5b8301601f81018513614fdb57600080fd5b8035614fe9614706826146d5565b81815260059190911b8201830190838101908783111561500857600080fd5b928401925b828410156150265783358252928401929084019061500d565b979650505050505050565b8082018082111561097c5761097c614c09565b6001600160a01b03848116825283166020820152606060408201819052600090610ba590830184614044565b634e487b7160e01b600052601260045260246000fd5b60008261509557615095615070565b500490565b634e487b7160e01b600052600160045260246000fd5b8181038181111561097c5761097c614c09565b6000816150d2576150d2614c09565b506000190190565b600083516150ec818460208801614020565b601760f91b908301908152835161510a816001840160208801614020565b01600101949350505050565b60006020828403121561512857600080fd5b5051919050565b60006020828403121561514157600080fd5b8151610df38161409c565b8183823760009101908152919050565b81516001600160401b03811115615175576151756145cf565b615189816151838454614b5e565b84614d33565b602080601f8311600181146151be57600084156151a65750858301515b600019600386901b1c1916600185901b1785556111ac565b600085815260208120601f198616915b828110156151ed578886015182559484019460019091019084016151ce565b508582101561520b5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6000845161522d818460208901614020565b60609490941b6bffffffffffffffffffffffff191691909301908152601481019190915260340192915050565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6000826152bb576152bb615070565b500690565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b634e487b7160e01b600052602160045260246000fd5b828152604060208201526000610ce76040830184614044565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061325d90830184614044565b60006020828403121561537f57600080fd5b8151610df381613fed56febe2bb46ac0377341a1ec5c3116d70fd5029d704bd46292e58f6265dd177ebafe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000811000a"; -const isSuperArgs = (xs) => xs.length > 1; -class UNSRegistryMock__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(overrides) { - return super.getDeployTransaction(overrides || {}); - } - deploy(overrides) { - return super.deploy(overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.UNSRegistryMock__factory = UNSRegistryMock__factory; -UNSRegistryMock__factory.bytecode = _bytecode; -UNSRegistryMock__factory.abi = _abi; diff --git a/dist/types/factories/contracts/mocks/index.d.ts b/dist/types/factories/contracts/mocks/index.d.ts deleted file mode 100644 index bc463189..00000000 --- a/dist/types/factories/contracts/mocks/index.d.ts +++ /dev/null @@ -1,14 +0,0 @@ -export { BaseForwarderMock__factory } from "./BaseForwarderMock__factory"; -export { BaseRoutingForwarderMock__factory } from "./BaseRoutingForwarderMock__factory"; -export { ERC1155Mock__factory } from "./ERC1155Mock__factory"; -export { ERC20Mock__factory } from "./ERC20Mock__factory"; -export { ERC20UnsafeMock__factory } from "./ERC20UnsafeMock__factory"; -export { ERC2771ContextMock__factory } from "./ERC2771ContextMock__factory"; -export { ERC2771RegistryContextMock__factory } from "./ERC2771RegistryContextMock__factory"; -export { ERC721Mock__factory } from "./ERC721Mock__factory"; -export { ERC721ReceiverMock__factory } from "./ERC721ReceiverMock__factory"; -export { MinterRoleMock__factory } from "./MinterRoleMock__factory"; -export { MintingManagerMock__factory } from "./MintingManagerMock__factory"; -export { UNSRegistryForwarderMock__factory } from "./UNSRegistryForwarderMock__factory"; -export { UNSRegistryMock__factory } from "./UNSRegistryMock__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/index.d.ts.map b/dist/types/factories/contracts/mocks/index.d.ts.map deleted file mode 100644 index 4e3835f0..00000000 --- a/dist/types/factories/contracts/mocks/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/mocks/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,iCAAiC,EAAE,MAAM,qCAAqC,CAAC;AACxF,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,mCAAmC,EAAE,MAAM,uCAAuC,CAAC;AAC5F,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,iCAAiC,EAAE,MAAM,qCAAqC,CAAC;AACxF,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/contracts/mocks/index.js b/dist/types/factories/contracts/mocks/index.js deleted file mode 100644 index 741924b7..00000000 --- a/dist/types/factories/contracts/mocks/index.js +++ /dev/null @@ -1,29 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.UNSRegistryMock__factory = exports.UNSRegistryForwarderMock__factory = exports.MintingManagerMock__factory = exports.MinterRoleMock__factory = exports.ERC721ReceiverMock__factory = exports.ERC721Mock__factory = exports.ERC2771RegistryContextMock__factory = exports.ERC2771ContextMock__factory = exports.ERC20UnsafeMock__factory = exports.ERC20Mock__factory = exports.ERC1155Mock__factory = exports.BaseRoutingForwarderMock__factory = exports.BaseForwarderMock__factory = void 0; -var BaseForwarderMock__factory_1 = require("./BaseForwarderMock__factory"); -Object.defineProperty(exports, "BaseForwarderMock__factory", { enumerable: true, get: function () { return BaseForwarderMock__factory_1.BaseForwarderMock__factory; } }); -var BaseRoutingForwarderMock__factory_1 = require("./BaseRoutingForwarderMock__factory"); -Object.defineProperty(exports, "BaseRoutingForwarderMock__factory", { enumerable: true, get: function () { return BaseRoutingForwarderMock__factory_1.BaseRoutingForwarderMock__factory; } }); -var ERC1155Mock__factory_1 = require("./ERC1155Mock__factory"); -Object.defineProperty(exports, "ERC1155Mock__factory", { enumerable: true, get: function () { return ERC1155Mock__factory_1.ERC1155Mock__factory; } }); -var ERC20Mock__factory_1 = require("./ERC20Mock__factory"); -Object.defineProperty(exports, "ERC20Mock__factory", { enumerable: true, get: function () { return ERC20Mock__factory_1.ERC20Mock__factory; } }); -var ERC20UnsafeMock__factory_1 = require("./ERC20UnsafeMock__factory"); -Object.defineProperty(exports, "ERC20UnsafeMock__factory", { enumerable: true, get: function () { return ERC20UnsafeMock__factory_1.ERC20UnsafeMock__factory; } }); -var ERC2771ContextMock__factory_1 = require("./ERC2771ContextMock__factory"); -Object.defineProperty(exports, "ERC2771ContextMock__factory", { enumerable: true, get: function () { return ERC2771ContextMock__factory_1.ERC2771ContextMock__factory; } }); -var ERC2771RegistryContextMock__factory_1 = require("./ERC2771RegistryContextMock__factory"); -Object.defineProperty(exports, "ERC2771RegistryContextMock__factory", { enumerable: true, get: function () { return ERC2771RegistryContextMock__factory_1.ERC2771RegistryContextMock__factory; } }); -var ERC721Mock__factory_1 = require("./ERC721Mock__factory"); -Object.defineProperty(exports, "ERC721Mock__factory", { enumerable: true, get: function () { return ERC721Mock__factory_1.ERC721Mock__factory; } }); -var ERC721ReceiverMock__factory_1 = require("./ERC721ReceiverMock__factory"); -Object.defineProperty(exports, "ERC721ReceiverMock__factory", { enumerable: true, get: function () { return ERC721ReceiverMock__factory_1.ERC721ReceiverMock__factory; } }); -var MinterRoleMock__factory_1 = require("./MinterRoleMock__factory"); -Object.defineProperty(exports, "MinterRoleMock__factory", { enumerable: true, get: function () { return MinterRoleMock__factory_1.MinterRoleMock__factory; } }); -var MintingManagerMock__factory_1 = require("./MintingManagerMock__factory"); -Object.defineProperty(exports, "MintingManagerMock__factory", { enumerable: true, get: function () { return MintingManagerMock__factory_1.MintingManagerMock__factory; } }); -var UNSRegistryForwarderMock__factory_1 = require("./UNSRegistryForwarderMock__factory"); -Object.defineProperty(exports, "UNSRegistryForwarderMock__factory", { enumerable: true, get: function () { return UNSRegistryForwarderMock__factory_1.UNSRegistryForwarderMock__factory; } }); -var UNSRegistryMock__factory_1 = require("./UNSRegistryMock__factory"); -Object.defineProperty(exports, "UNSRegistryMock__factory", { enumerable: true, get: function () { return UNSRegistryMock__factory_1.UNSRegistryMock__factory; } }); diff --git a/dist/types/factories/contracts/roles/MinterRole__factory.d.ts b/dist/types/factories/contracts/roles/MinterRole__factory.d.ts deleted file mode 100644 index 2022751a..00000000 --- a/dist/types/factories/contracts/roles/MinterRole__factory.d.ts +++ /dev/null @@ -1,307 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { MinterRole, MinterRoleInterface } from "../../../contracts/roles/MinterRole"; -export declare class MinterRole__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "uint8"; - readonly name: "version"; - readonly type: "uint8"; - }]; - readonly name: "Initialized"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "previousOwner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "newOwner"; - readonly type: "address"; - }]; - readonly name: "OwnershipTransferred"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "previousAdminRole"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "newAdminRole"; - readonly type: "bytes32"; - }]; - readonly name: "RoleAdminChanged"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "sender"; - readonly type: "address"; - }]; - readonly name: "RoleGranted"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "sender"; - readonly type: "address"; - }]; - readonly name: "RoleRevoked"; - readonly type: "event"; - }, { - readonly inputs: readonly []; - readonly name: "DEFAULT_ADMIN_ROLE"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "MINTER_ROLE"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "addMinter"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address[]"; - readonly name: "accounts"; - readonly type: "address[]"; - }]; - readonly name: "addMinters"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address payable"; - readonly name: "receiver"; - readonly type: "address"; - }]; - readonly name: "closeMinter"; - readonly outputs: readonly []; - readonly stateMutability: "payable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }]; - readonly name: "getRoleAdmin"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: ""; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "grantRole"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "hasRole"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "isMinter"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "owner"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "removeMinter"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address[]"; - readonly name: "accounts"; - readonly type: "address[]"; - }]; - readonly name: "removeMinters"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "renounceMinter"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "renounceOwnership"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "renounceRole"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "role"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "revokeRole"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address payable"; - readonly name: "receiver"; - readonly type: "address"; - }]; - readonly name: "rotateMinter"; - readonly outputs: readonly []; - readonly stateMutability: "payable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "newOwner"; - readonly type: "address"; - }]; - readonly name: "transferOwnership"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): MinterRoleInterface; - static connect(address: string, runner?: ContractRunner | null): MinterRole; -} -//# sourceMappingURL=MinterRole__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/roles/MinterRole__factory.d.ts.map b/dist/types/factories/contracts/roles/MinterRole__factory.d.ts.map deleted file mode 100644 index d9e09395..00000000 --- a/dist/types/factories/contracts/roles/MinterRole__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"MinterRole__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/roles/MinterRole__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,UAAU,EACV,mBAAmB,EACpB,MAAM,qCAAqC,CAAC;AAuY7C,qBAAa,mBAAmB;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,mBAAmB;IAG7C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,UAAU;CAG5E"} \ No newline at end of file diff --git a/dist/types/factories/contracts/roles/MinterRole__factory.js b/dist/types/factories/contracts/roles/MinterRole__factory.js deleted file mode 100644 index db846305..00000000 --- a/dist/types/factories/contracts/roles/MinterRole__factory.js +++ /dev/null @@ -1,402 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.MinterRole__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint8", - name: "version", - type: "uint8", - }, - ], - name: "Initialized", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "previousOwner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnershipTransferred", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - indexed: true, - internalType: "bytes32", - name: "previousAdminRole", - type: "bytes32", - }, - { - indexed: true, - internalType: "bytes32", - name: "newAdminRole", - type: "bytes32", - }, - ], - name: "RoleAdminChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "sender", - type: "address", - }, - ], - name: "RoleGranted", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "sender", - type: "address", - }, - ], - name: "RoleRevoked", - type: "event", - }, - { - inputs: [], - name: "DEFAULT_ADMIN_ROLE", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "MINTER_ROLE", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "addMinter", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address[]", - name: "accounts", - type: "address[]", - }, - ], - name: "addMinters", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address payable", - name: "receiver", - type: "address", - }, - ], - name: "closeMinter", - outputs: [], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - ], - name: "getRoleAdmin", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "grantRole", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "hasRole", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "isMinter", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "removeMinter", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address[]", - name: "accounts", - type: "address[]", - }, - ], - name: "removeMinters", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "renounceMinter", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "renounceOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "renounceRole", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "role", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "revokeRole", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address payable", - name: "receiver", - type: "address", - }, - ], - name: "rotateMinter", - outputs: [], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "transferOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -class MinterRole__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.MinterRole__factory = MinterRole__factory; -MinterRole__factory.abi = _abi; diff --git a/dist/types/factories/contracts/roles/index.d.ts b/dist/types/factories/contracts/roles/index.d.ts deleted file mode 100644 index 963e97e0..00000000 --- a/dist/types/factories/contracts/roles/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export { MinterRole__factory } from "./MinterRole__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/roles/index.d.ts.map b/dist/types/factories/contracts/roles/index.d.ts.map deleted file mode 100644 index 768829c0..00000000 --- a/dist/types/factories/contracts/roles/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/roles/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/contracts/roles/index.js b/dist/types/factories/contracts/roles/index.js deleted file mode 100644 index bfce881c..00000000 --- a/dist/types/factories/contracts/roles/index.js +++ /dev/null @@ -1,5 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.MinterRole__factory = void 0; -var MinterRole__factory_1 = require("./MinterRole__factory"); -Object.defineProperty(exports, "MinterRole__factory", { enumerable: true, get: function () { return MinterRole__factory_1.MinterRole__factory; } }); diff --git a/dist/types/factories/contracts/utils/Blocklist__factory.d.ts b/dist/types/factories/contracts/utils/Blocklist__factory.d.ts deleted file mode 100644 index 204fa4b3..00000000 --- a/dist/types/factories/contracts/utils/Blocklist__factory.d.ts +++ /dev/null @@ -1,62 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { Blocklist, BlocklistInterface } from "../../../contracts/utils/Blocklist"; -export declare class Blocklist__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Blocked"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "BlocklistDisabled"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "BlocklistEnabled"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "uint8"; - readonly name: "version"; - readonly type: "uint8"; - }]; - readonly name: "Initialized"; - readonly type: "event"; - }, { - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "isBlocked"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): BlocklistInterface; - static connect(address: string, runner?: ContractRunner | null): Blocklist; -} -//# sourceMappingURL=Blocklist__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/utils/Blocklist__factory.d.ts.map b/dist/types/factories/contracts/utils/Blocklist__factory.d.ts.map deleted file mode 100644 index 96703baf..00000000 --- a/dist/types/factories/contracts/utils/Blocklist__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Blocklist__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/utils/Blocklist__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,SAAS,EACT,kBAAkB,EACnB,MAAM,oCAAoC,CAAC;AA4E5C,qBAAa,kBAAkB;IAC7B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,kBAAkB;IAG5C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,SAAS;CAG3E"} \ No newline at end of file diff --git a/dist/types/factories/contracts/utils/Blocklist__factory.js b/dist/types/factories/contracts/utils/Blocklist__factory.js deleted file mode 100644 index b159e3b5..00000000 --- a/dist/types/factories/contracts/utils/Blocklist__factory.js +++ /dev/null @@ -1,87 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.Blocklist__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Blocked", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "BlocklistDisabled", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "BlocklistEnabled", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint8", - name: "version", - type: "uint8", - }, - ], - name: "Initialized", - type: "event", - }, - { - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "isBlocked", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class Blocklist__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.Blocklist__factory = Blocklist__factory; -Blocklist__factory.abi = _abi; diff --git a/dist/types/factories/contracts/utils/ERC1271SimpleWallet__factory.d.ts b/dist/types/factories/contracts/utils/ERC1271SimpleWallet__factory.d.ts deleted file mode 100644 index 31bfc99b..00000000 --- a/dist/types/factories/contracts/utils/ERC1271SimpleWallet__factory.d.ts +++ /dev/null @@ -1,49 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, AddressLike, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../common"; -import type { ERC1271SimpleWallet, ERC1271SimpleWalletInterface } from "../../../contracts/utils/ERC1271SimpleWallet"; -declare type ERC1271SimpleWalletConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class ERC1271SimpleWallet__factory extends ContractFactory { - constructor(...args: ERC1271SimpleWalletConstructorParams); - getDeployTransaction(owner: AddressLike, overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(owner: AddressLike, overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): ERC1271SimpleWallet__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b5060405161055138038061055183398101604081905261002f91610054565b600080546001600160a01b0319166001600160a01b0392909216919091179055610084565b60006020828403121561006657600080fd5b81516001600160a01b038116811461007d57600080fd5b9392505050565b6104be806100936000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c80631626ba7e14610030575b600080fd5b61004361003e3660046103e0565b610060565b6040516001600160e01b0319909116815260200160405180910390f35b600080546001600160a01b031661007784846100b6565b6001600160a01b0316036100ac57507f1626ba7e356f5979dd355a3d2bfb43e80420a480c3b854edce286a82d74968696100b0565b5060005b92915050565b60008060006100c585856100da565b915091506100d28161011f565b509392505050565b60008082516041036101105760208301516040840151606085015160001a610104878285856102dd565b94509450505050610118565b506000905060025b9250929050565b60008160048111156101335761013361049b565b0361013b5750565b600181600481111561014f5761014f61049b565b036101a15760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e6174757265000000000000000060448201526064015b60405180910390fd5b60028160048111156101b5576101b561049b565b036102025760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610198565b60038160048111156102165761021661049b565b0361026e5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b6064820152608401610198565b60048160048111156102825761028261049b565b036102da5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c604482015261756560f01b6064820152608401610198565b50565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561031457506000905060036103c1565b8460ff16601b1415801561032c57508460ff16601c14155b1561033d57506000905060046103c1565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610391573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166103ba576000600192509250506103c1565b9150600090505b94509492505050565b634e487b7160e01b600052604160045260246000fd5b600080604083850312156103f357600080fd5b82359150602083013567ffffffffffffffff8082111561041257600080fd5b818501915085601f83011261042657600080fd5b813581811115610438576104386103ca565b604051601f8201601f19908116603f01168101908382118183101715610460576104606103ca565b8160405282815288602084870101111561047957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a"; - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "constructor"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "_hash"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes"; - readonly name: "_signature"; - readonly type: "bytes"; - }]; - readonly name: "isValidSignature"; - readonly outputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: ""; - readonly type: "bytes4"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): ERC1271SimpleWalletInterface; - static connect(address: string, runner?: ContractRunner | null): ERC1271SimpleWallet; -} -export {}; -//# sourceMappingURL=ERC1271SimpleWallet__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/utils/ERC1271SimpleWallet__factory.d.ts.map b/dist/types/factories/contracts/utils/ERC1271SimpleWallet__factory.d.ts.map deleted file mode 100644 index 88302cb4..00000000 --- a/dist/types/factories/contracts/utils/ERC1271SimpleWallet__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ERC1271SimpleWallet__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/utils/ERC1271SimpleWallet__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,MAAM,EACN,WAAW,EACX,yBAAyB,EACzB,cAAc,EACf,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,KAAK,EACV,mBAAmB,EACnB,4BAA4B,EAC7B,MAAM,8CAA8C,CAAC;AA2CtD,aAAK,oCAAoC,GACrC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,4BAA6B,SAAQ,eAAe;gBACnD,GAAG,IAAI,EAAE,oCAAoC;IAQhD,oBAAoB,CAC3B,KAAK,EAAE,WAAW,EAClB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CACb,KAAK,EAAE,WAAW,EAClB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAItB,2BAA2B;;IAIjD,OAAO,CACd,MAAM,EAAE,cAAc,GAAG,IAAI,GAC5B,4BAA4B;IAI/B,MAAM,CAAC,QAAQ,CAAC,QAAQ,0qFAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,4BAA4B;IAGtD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,mBAAmB;CAOvB"} \ No newline at end of file diff --git a/dist/types/factories/contracts/utils/ERC1271SimpleWallet__factory.js b/dist/types/factories/contracts/utils/ERC1271SimpleWallet__factory.js deleted file mode 100644 index eaf42e7d..00000000 --- a/dist/types/factories/contracts/utils/ERC1271SimpleWallet__factory.js +++ /dev/null @@ -1,71 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ERC1271SimpleWallet__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - stateMutability: "nonpayable", - type: "constructor", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "_hash", - type: "bytes32", - }, - { - internalType: "bytes", - name: "_signature", - type: "bytes", - }, - ], - name: "isValidSignature", - outputs: [ - { - internalType: "bytes4", - name: "", - type: "bytes4", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -const _bytecode = "0x608060405234801561001057600080fd5b5060405161055138038061055183398101604081905261002f91610054565b600080546001600160a01b0319166001600160a01b0392909216919091179055610084565b60006020828403121561006657600080fd5b81516001600160a01b038116811461007d57600080fd5b9392505050565b6104be806100936000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c80631626ba7e14610030575b600080fd5b61004361003e3660046103e0565b610060565b6040516001600160e01b0319909116815260200160405180910390f35b600080546001600160a01b031661007784846100b6565b6001600160a01b0316036100ac57507f1626ba7e356f5979dd355a3d2bfb43e80420a480c3b854edce286a82d74968696100b0565b5060005b92915050565b60008060006100c585856100da565b915091506100d28161011f565b509392505050565b60008082516041036101105760208301516040840151606085015160001a610104878285856102dd565b94509450505050610118565b506000905060025b9250929050565b60008160048111156101335761013361049b565b0361013b5750565b600181600481111561014f5761014f61049b565b036101a15760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e6174757265000000000000000060448201526064015b60405180910390fd5b60028160048111156101b5576101b561049b565b036102025760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610198565b60038160048111156102165761021661049b565b0361026e5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b6064820152608401610198565b60048160048111156102825761028261049b565b036102da5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c604482015261756560f01b6064820152608401610198565b50565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561031457506000905060036103c1565b8460ff16601b1415801561032c57508460ff16601c14155b1561033d57506000905060046103c1565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610391573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166103ba576000600192509250506103c1565b9150600090505b94509492505050565b634e487b7160e01b600052604160045260246000fd5b600080604083850312156103f357600080fd5b82359150602083013567ffffffffffffffff8082111561041257600080fd5b818501915085601f83011261042657600080fd5b813581811115610438576104386103ca565b604051601f8201601f19908116603f01168101908382118183101715610460576104606103ca565b8160405282815288602084870101111561047957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b634e487b7160e01b600052602160045260246000fdfea164736f6c6343000811000a"; -const isSuperArgs = (xs) => xs.length > 1; -class ERC1271SimpleWallet__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(owner, overrides) { - return super.getDeployTransaction(owner, overrides || {}); - } - deploy(owner, overrides) { - return super.deploy(owner, overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.ERC1271SimpleWallet__factory = ERC1271SimpleWallet__factory; -ERC1271SimpleWallet__factory.bytecode = _bytecode; -ERC1271SimpleWallet__factory.abi = _abi; diff --git a/dist/types/factories/contracts/utils/MultiSend__factory.d.ts b/dist/types/factories/contracts/utils/MultiSend__factory.d.ts deleted file mode 100644 index cf8c47fd..00000000 --- a/dist/types/factories/contracts/utils/MultiSend__factory.d.ts +++ /dev/null @@ -1,35 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, BigNumberish, AddressLike, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { PayableOverrides } from "../../../common"; -import type { MultiSend, MultiSendInterface } from "../../../contracts/utils/MultiSend"; -declare type MultiSendConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class MultiSend__factory extends ContractFactory { - constructor(...args: MultiSendConstructorParams); - getDeployTransaction(accounts: AddressLike[], values: BigNumberish[], overrides?: PayableOverrides & { - from?: string; - }): Promise; - deploy(accounts: AddressLike[], values: BigNumberish[], overrides?: PayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): MultiSend__factory; - static readonly bytecode = "0x608060405260405161029338038061029383398101604081905261002291610184565b60005b82518110156100ac5782818151811061004057610040610255565b60200260200101516001600160a01b03166108fc83838151811061006657610066610255565b60200260200101519081150290604051600060405180830381858888f19350505050158015610099573d6000803e3d6000fd5b50806100a48161026b565b915050610025565b5033ff5b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b03811182821017156100ee576100ee6100b0565b604052919050565b60006001600160401b0382111561010f5761010f6100b0565b5060051b60200190565b600082601f83011261012a57600080fd5b8151602061013f61013a836100f6565b6100c6565b82815260059290921b8401810191818101908684111561015e57600080fd5b8286015b848110156101795780518352918301918301610162565b509695505050505050565b6000806040838503121561019757600080fd5b82516001600160401b03808211156101ae57600080fd5b818501915085601f8301126101c257600080fd5b815160206101d261013a836100f6565b82815260059290921b840181019181810190898411156101f157600080fd5b948201945b838610156102255785516001600160a01b03811681146102165760008081fd5b825294820194908201906101f6565b9188015191965090935050508082111561023e57600080fd5b5061024b85828601610119565b9150509250929050565b634e487b7160e01b600052603260045260246000fd5b60006001820161028b57634e487b7160e01b600052601160045260246000fd5b506001019056fe"; - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "address payable[]"; - readonly name: "accounts"; - readonly type: "address[]"; - }, { - readonly internalType: "uint256[]"; - readonly name: "values"; - readonly type: "uint256[]"; - }]; - readonly stateMutability: "payable"; - readonly type: "constructor"; - }]; - static createInterface(): MultiSendInterface; - static connect(address: string, runner?: ContractRunner | null): MultiSend; -} -export {}; -//# sourceMappingURL=MultiSend__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/utils/MultiSend__factory.d.ts.map b/dist/types/factories/contracts/utils/MultiSend__factory.d.ts.map deleted file mode 100644 index 2a919024..00000000 --- a/dist/types/factories/contracts/utils/MultiSend__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"MultiSend__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/utils/MultiSend__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,MAAM,EACN,YAAY,EACZ,WAAW,EACX,yBAAyB,EACzB,cAAc,EACf,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,KAAK,EACV,SAAS,EACT,kBAAkB,EACnB,MAAM,oCAAoC,CAAC;AAwB5C,aAAK,0BAA0B,GAC3B,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,kBAAmB,SAAQ,eAAe;gBACzC,GAAG,IAAI,EAAE,0BAA0B;IAQtC,oBAAoB,CAC3B,QAAQ,EAAE,WAAW,EAAE,EACvB,MAAM,EAAE,YAAY,EAAE,EACtB,SAAS,CAAC,EAAE,gBAAgB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAC/C,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CACb,QAAQ,EAAE,WAAW,EAAE,EACvB,MAAM,EAAE,YAAY,EAAE,EACtB,SAAS,CAAC,EAAE,gBAAgB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAInB,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,kBAAkB;IAInE,MAAM,CAAC,QAAQ,CAAC,QAAQ,8yCAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,kBAAkB;IAG5C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,SAAS;CAG3E"} \ No newline at end of file diff --git a/dist/types/factories/contracts/utils/MultiSend__factory.js b/dist/types/factories/contracts/utils/MultiSend__factory.js deleted file mode 100644 index 3937a30e..00000000 --- a/dist/types/factories/contracts/utils/MultiSend__factory.js +++ /dev/null @@ -1,52 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.MultiSend__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "address payable[]", - name: "accounts", - type: "address[]", - }, - { - internalType: "uint256[]", - name: "values", - type: "uint256[]", - }, - ], - stateMutability: "payable", - type: "constructor", - }, -]; -const _bytecode = "0x608060405260405161029338038061029383398101604081905261002291610184565b60005b82518110156100ac5782818151811061004057610040610255565b60200260200101516001600160a01b03166108fc83838151811061006657610066610255565b60200260200101519081150290604051600060405180830381858888f19350505050158015610099573d6000803e3d6000fd5b50806100a48161026b565b915050610025565b5033ff5b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b03811182821017156100ee576100ee6100b0565b604052919050565b60006001600160401b0382111561010f5761010f6100b0565b5060051b60200190565b600082601f83011261012a57600080fd5b8151602061013f61013a836100f6565b6100c6565b82815260059290921b8401810191818101908684111561015e57600080fd5b8286015b848110156101795780518352918301918301610162565b509695505050505050565b6000806040838503121561019757600080fd5b82516001600160401b03808211156101ae57600080fd5b818501915085601f8301126101c257600080fd5b815160206101d261013a836100f6565b82815260059290921b840181019181810190898411156101f157600080fd5b948201945b838610156102255785516001600160a01b03811681146102165760008081fd5b825294820194908201906101f6565b9188015191965090935050508082111561023e57600080fd5b5061024b85828601610119565b9150509250929050565b634e487b7160e01b600052603260045260246000fd5b60006001820161028b57634e487b7160e01b600052601160045260246000fd5b506001019056fe"; -const isSuperArgs = (xs) => xs.length > 1; -class MultiSend__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(accounts, values, overrides) { - return super.getDeployTransaction(accounts, values, overrides || {}); - } - deploy(accounts, values, overrides) { - return super.deploy(accounts, values, overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.MultiSend__factory = MultiSend__factory; -MultiSend__factory.bytecode = _bytecode; -MultiSend__factory.abi = _abi; diff --git a/dist/types/factories/contracts/utils/Ownable__factory.d.ts b/dist/types/factories/contracts/utils/Ownable__factory.d.ts deleted file mode 100644 index cd9c94ea..00000000 --- a/dist/types/factories/contracts/utils/Ownable__factory.d.ts +++ /dev/null @@ -1,59 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { Ownable, OwnableInterface } from "../../../contracts/utils/Ownable"; -export declare class Ownable__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "uint8"; - readonly name: "version"; - readonly type: "uint8"; - }]; - readonly name: "Initialized"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "previousOwner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "newOwner"; - readonly type: "address"; - }]; - readonly name: "OwnershipTransferred"; - readonly type: "event"; - }, { - readonly inputs: readonly []; - readonly name: "owner"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "renounceOwnership"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "newOwner"; - readonly type: "address"; - }]; - readonly name: "transferOwnership"; - readonly outputs: readonly []; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): OwnableInterface; - static connect(address: string, runner?: ContractRunner | null): Ownable; -} -//# sourceMappingURL=Ownable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/utils/Ownable__factory.d.ts.map b/dist/types/factories/contracts/utils/Ownable__factory.d.ts.map deleted file mode 100644 index 36c85240..00000000 --- a/dist/types/factories/contracts/utils/Ownable__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Ownable__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/utils/Ownable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,OAAO,EACP,gBAAgB,EACjB,MAAM,kCAAkC,CAAC;AAsE1C,qBAAa,gBAAgB;IAC3B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,gBAAgB;IAG1C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,OAAO;CAGzE"} \ No newline at end of file diff --git a/dist/types/factories/contracts/utils/Ownable__factory.js b/dist/types/factories/contracts/utils/Ownable__factory.js deleted file mode 100644 index abc9ec40..00000000 --- a/dist/types/factories/contracts/utils/Ownable__factory.js +++ /dev/null @@ -1,81 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.Ownable__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint8", - name: "version", - type: "uint8", - }, - ], - name: "Initialized", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "previousOwner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnershipTransferred", - type: "event", - }, - { - inputs: [], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "renounceOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "transferOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -]; -class Ownable__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.Ownable__factory = Ownable__factory; -Ownable__factory.abi = _abi; diff --git a/dist/types/factories/contracts/utils/Pausable__factory.d.ts b/dist/types/factories/contracts/utils/Pausable__factory.d.ts deleted file mode 100644 index bcd64121..00000000 --- a/dist/types/factories/contracts/utils/Pausable__factory.d.ts +++ /dev/null @@ -1,48 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { Pausable, PausableInterface } from "../../../contracts/utils/Pausable"; -export declare class Pausable__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "uint8"; - readonly name: "version"; - readonly type: "uint8"; - }]; - readonly name: "Initialized"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "Paused"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "Unpaused"; - readonly type: "event"; - }, { - readonly inputs: readonly []; - readonly name: "paused"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): PausableInterface; - static connect(address: string, runner?: ContractRunner | null): Pausable; -} -//# sourceMappingURL=Pausable__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/utils/Pausable__factory.d.ts.map b/dist/types/factories/contracts/utils/Pausable__factory.d.ts.map deleted file mode 100644 index 8efefaa0..00000000 --- a/dist/types/factories/contracts/utils/Pausable__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Pausable__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/utils/Pausable__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,QAAQ,EACR,iBAAiB,EAClB,MAAM,mCAAmC,CAAC;AAyD3C,qBAAa,iBAAiB;IAC5B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,iBAAiB;IAG3C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,QAAQ;CAG1E"} \ No newline at end of file diff --git a/dist/types/factories/contracts/utils/Pausable__factory.js b/dist/types/factories/contracts/utils/Pausable__factory.js deleted file mode 100644 index 3345de40..00000000 --- a/dist/types/factories/contracts/utils/Pausable__factory.js +++ /dev/null @@ -1,68 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.Pausable__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint8", - name: "version", - type: "uint8", - }, - ], - name: "Initialized", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "Paused", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "Unpaused", - type: "event", - }, - { - inputs: [], - name: "paused", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, -]; -class Pausable__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.Pausable__factory = Pausable__factory; -Pausable__factory.abi = _abi; diff --git a/dist/types/factories/contracts/utils/index.d.ts b/dist/types/factories/contracts/utils/index.d.ts deleted file mode 100644 index 5cbb36f6..00000000 --- a/dist/types/factories/contracts/utils/index.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -export { Blocklist__factory } from "./Blocklist__factory"; -export { ERC1271SimpleWallet__factory } from "./ERC1271SimpleWallet__factory"; -export { MultiSend__factory } from "./MultiSend__factory"; -export { Ownable__factory } from "./Ownable__factory"; -export { Pausable__factory } from "./Pausable__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/contracts/utils/index.d.ts.map b/dist/types/factories/contracts/utils/index.d.ts.map deleted file mode 100644 index 8477a716..00000000 --- a/dist/types/factories/contracts/utils/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/utils/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/contracts/utils/index.js b/dist/types/factories/contracts/utils/index.js deleted file mode 100644 index c946b5ca..00000000 --- a/dist/types/factories/contracts/utils/index.js +++ /dev/null @@ -1,13 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.Pausable__factory = exports.Ownable__factory = exports.MultiSend__factory = exports.ERC1271SimpleWallet__factory = exports.Blocklist__factory = void 0; -var Blocklist__factory_1 = require("./Blocklist__factory"); -Object.defineProperty(exports, "Blocklist__factory", { enumerable: true, get: function () { return Blocklist__factory_1.Blocklist__factory; } }); -var ERC1271SimpleWallet__factory_1 = require("./ERC1271SimpleWallet__factory"); -Object.defineProperty(exports, "ERC1271SimpleWallet__factory", { enumerable: true, get: function () { return ERC1271SimpleWallet__factory_1.ERC1271SimpleWallet__factory; } }); -var MultiSend__factory_1 = require("./MultiSend__factory"); -Object.defineProperty(exports, "MultiSend__factory", { enumerable: true, get: function () { return MultiSend__factory_1.MultiSend__factory; } }); -var Ownable__factory_1 = require("./Ownable__factory"); -Object.defineProperty(exports, "Ownable__factory", { enumerable: true, get: function () { return Ownable__factory_1.Ownable__factory; } }); -var Pausable__factory_1 = require("./Pausable__factory"); -Object.defineProperty(exports, "Pausable__factory", { enumerable: true, get: function () { return Pausable__factory_1.Pausable__factory; } }); diff --git a/dist/types/factories/dot-crypto/contracts/CNSRegistry__factory.d.ts b/dist/types/factories/dot-crypto/contracts/CNSRegistry__factory.d.ts deleted file mode 100644 index 11ef9d7b..00000000 --- a/dist/types/factories/dot-crypto/contracts/CNSRegistry__factory.d.ts +++ /dev/null @@ -1,816 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../common"; -import type { CNSRegistry, CNSRegistryInterface } from "../../../dot-crypto/contracts/CNSRegistry"; -declare type CNSRegistryConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class CNSRegistry__factory extends ContractFactory { - constructor(...args: CNSRegistryConstructorParams); - getDeployTransaction(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): CNSRegistry__factory; - static readonly bytecode = "0x60806040523480156200001157600080fd5b50620000467f01ffc9a7000000000000000000000000000000000000000000000000000000006001600160e01b03620001cf16565b6200005a336001600160e01b036200029e16565b6200008e7f80ac58cd000000000000000000000000000000000000000000000000000000006001600160e01b03620001cf16565b620000b461dead6000805160206200300b8339815191526001600160e01b03620002bc16565b620000e87f5b5e139f000000000000000000000000000000000000000000000000000000006001600160e01b03620001cf16565b6040805180820190915260068082527f63727970746f000000000000000000000000000000000000000000000000000060208301526000620001326001600160e01b036200043916565b81526020019081526020016000209080519060200190620001559291906200059d565b50620001696001600160e01b036200043916565b6040805160208082526006908201527f63727970746f00000000000000000000000000000000000000000000000000008183015290517fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c39529181900360600190a26200063f565b7fffffffff0000000000000000000000000000000000000000000000000000000080821614156200026157604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f4552433136353a20696e76616c696420696e7465726661636520696400000000604482015290519081900360640190fd5b7fffffffff00000000000000000000000000000000000000000000000000000000166000908152602081905260409020805460ff19166001179055565b620002b98160016200044d60201b6200228e1790919060201c565b50565b6001600160a01b0382166200033257604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f2061646472657373604482015290519081900360640190fd5b62000346816001600160e01b03620004f416565b15620003b357604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000604482015290519081900360640190fd5b600081815260026020908152604080832080546001600160a01b0319166001600160a01b038716908117909155835260048252909120620003fd9162000511811b6200236117901c565b60405181906001600160a01b038416906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b6000805160206200300b8339815191525b90565b6200046282826001600160e01b036200051a16565b15620004cf57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b6000908152600260205260409020546001600160a01b0316151590565b80546001019055565b60006001600160a01b0382166200057d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602281526020018062002fe96022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620005e057805160ff191683800117855562000610565b8280016001018555821562000610579182015b8281111562000610578251825591602001919060010190620005f3565b506200061e92915062000622565b5090565b6200044a91905b808211156200061e576000815560010162000629565b61299a806200064f6000396000f3fe608060405234801561001057600080fd5b50600436106102325760003560e01c80637c69eae211610130578063b5466669116100b8578063d284d97a1161007c578063d284d97a14610d4e578063d8d3cc6e14610dbc578063e67ca8a314610e3f578063e985e9c514610e5c578063ebf0c71714610e8a57610232565b8063b5466669146109ce578063b88d4fde14610a51578063c29b52f914610b15578063c87b56dd14610c5e578063ce9fb82b14610c7b57610232565b8063a22cb465116100ff578063a22cb4651461090b578063a7fc7a0714610939578063ab3b87fe1461095f578063b3f9e4cb1461098b578063b429afeb146109a857610232565b80637c69eae21461076457806395d89b41146107e75780639d743989146107ef5780639e5be9a51461087d57610232565b806342842e0e116101be5780635cbe1112116101825780635cbe11121461061d5780636352211e1461069257806366ac3b68146106af57806368b62d32146106b757806370a082311461073e57610232565b806342842e0e146104ed57806342966c6814610523578063430c208114610540578063538361a71461056c57806357aac5741461058f57610232565b8063081812fc11610205578063081812fc146103fa578063095ea7b3146104335780632392c1891461045f57806323b872dd1461048b5780632525d06a146104c157610232565b806301ffc9a71461023757806302759c37146102725780630467e014146102aa57806306fdde031461037d575b600080fd5b61025e6004803603602081101561024d57600080fd5b50356001600160e01b031916610e92565b604080519115158252519081900360200190f35b6102a86004803603606081101561028857600080fd5b506001600160a01b03813581169160208101359091169060400135610eb1565b005b6102a8600480360360808110156102c057600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156102ef57600080fd5b82018360208201111561030157600080fd5b803590602001918460018302840111600160201b8311171561032257600080fd5b919390929091602081019035600160201b81111561033f57600080fd5b82018360208201111561035157600080fd5b803590602001918460018302840111600160201b8311171561037257600080fd5b509092509050610ed3565b610385610f62565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103bf5781810151838201526020016103a7565b50505050905090810190601f1680156103ec5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6104176004803603602081101561041057600080fd5b5035610f84565b604080516001600160a01b039092168252519081900360200190f35b6102a86004803603604081101561044957600080fd5b506001600160a01b038135169060200135610fe6565b6102a86004803603604081101561047557600080fd5b506001600160a01b0381351690602001356110f7565b6102a8600480360360608110156104a157600080fd5b506001600160a01b03813581169160208101359091169060400135611115565b6102a8600480360360408110156104d757600080fd5b506001600160a01b03813516906020013561115a565b6102a86004803603606081101561050357600080fd5b506001600160a01b0381358116916020810135909116906040013561117a565b6102a86004803603602081101561053957600080fd5b5035611195565b61025e6004803603604081101561055657600080fd5b506001600160a01b0381351690602001356111e6565b6102a86004803603604081101561058257600080fd5b50803590602001356111f9565b6102a8600480360360808110156105a557600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156105df57600080fd5b8201836020820111156105f157600080fd5b803590602001918460018302840111600160201b8311171561061257600080fd5b50909250905061124f565b6102a86004803603604081101561063357600080fd5b81359190810190604081016020820135600160201b81111561065457600080fd5b82018360208201111561066657600080fd5b803590602001918460018302840111600160201b8311171561068757600080fd5b5090925090506112be565b610417600480360360208110156106a857600080fd5b5035611320565b6102a861137a565b61072c600480360360408110156106cd57600080fd5b81359190810190604081016020820135600160201b8111156106ee57600080fd5b82018360208201111561070057600080fd5b803590602001918460018302840111600160201b8311171561072157600080fd5b509092509050611385565b60408051918252519081900360200190f35b61072c6004803603602081101561075457600080fd5b50356001600160a01b03166113cf565b6102a86004803603606081101561077a57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156107a957600080fd5b8201836020820111156107bb57600080fd5b803590602001918460018302840111600160201b831117156107dc57600080fd5b509092509050611437565b61038561149a565b6102a86004803603608081101561080557600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561083f57600080fd5b82018360208201111561085157600080fd5b803590602001918460018302840111600160201b8311171561087257600080fd5b5090925090506114b6565b6102a86004803603608081101561089357600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156108cd57600080fd5b8201836020820111156108df57600080fd5b803590602001918460018302840111600160201b8311171561090057600080fd5b509092509050611506565b6102a86004803603604081101561092157600080fd5b506001600160a01b0381351690602001351515611564565b6102a86004803603602081101561094f57600080fd5b50356001600160a01b0316611630565b6102a86004803603604081101561097557600080fd5b506001600160a01b03813516906020013561164b565b610417600480360360208110156109a157600080fd5b5035611672565b61025e600480360360208110156109be57600080fd5b50356001600160a01b0316611694565b6102a8600480360360608110156109e457600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610a1357600080fd5b820183602082011115610a2557600080fd5b803590602001918460018302840111600160201b83111715610a4657600080fd5b5090925090506116a7565b6102a860048036036080811015610a6757600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b811115610aa157600080fd5b820183602082011115610ab357600080fd5b803590602001918460018302840111600160201b83111715610ad457600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506116fa945050505050565b6102a8600480360360a0811015610b2b57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b811115610b6557600080fd5b820183602082011115610b7757600080fd5b803590602001918460018302840111600160201b83111715610b9857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b811115610bea57600080fd5b820183602082011115610bfc57600080fd5b803590602001918460018302840111600160201b83111715610c1d57600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061174c945050505050565b61038560048036036020811015610c7457600080fd5b5035611797565b6102a860048036036080811015610c9157600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610cc057600080fd5b820183602082011115610cd257600080fd5b803590602001918460018302840111600160201b83111715610cf357600080fd5b919390929091602081019035600160201b811115610d1057600080fd5b820183602082011115610d2257600080fd5b803590602001918460018302840111600160201b83111715610d4357600080fd5b509092509050611892565b6102a860048036036020811015610d6457600080fd5b810190602081018135600160201b811115610d7e57600080fd5b820183602082011115610d9057600080fd5b803590602001918460018302840111600160201b83111715610db157600080fd5b50909250905061191b565b6102a860048036036060811015610dd257600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610e0157600080fd5b820183602082011115610e1357600080fd5b803590602001918460018302840111600160201b83111715610e3457600080fd5b50909250905061199e565b6102a860048036036020811015610e5557600080fd5b50356119f3565b61025e60048036036040811015610e7257600080fd5b506001600160a01b0381358116916020013516611a05565b61072c611a33565b6001600160e01b03191660009081526020819052604090205460ff1690565b610eba33611694565b610ec357600080fd5b610ece838383611a57565b505050565b610edc33611694565b610ee557600080fd5b610f5a868686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8a018190048102820181019092528881529250889150879081908401838280828437600092019190915250611a9f92505050565b505050505050565b6040805180820190915260078152662e63727970746f60c81b60208201525b90565b6000610f8f82611ac9565b610fca5760405162461bcd60e51b815260040180806020018281038252602c815260200180612848602c913960400191505060405180910390fd5b506000908152600360205260409020546001600160a01b031690565b6000610ff182611320565b9050806001600160a01b0316836001600160a01b031614156110445760405162461bcd60e51b81526004018080602001828103825260218152602001806128bf6021913960400191505060405180910390fd5b336001600160a01b038216148061106057506110608133611a05565b61109b5760405162461bcd60e51b815260040180806020018281038252603881526020018061279c6038913960400191505060405180910390fd5b60008281526003602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b806111023382611ae6565b61110b57600080fd5b610ece8383611b82565b61111f3382611ae6565b610ec35760405162461bcd60e51b81526004018080602001828103825260318152602001806128e06031913960400191505060405180910390fd5b61116333611694565b61116c57600080fd5b6111768282611b82565b5050565b610ece838383604051806020016040528060008152506116fa565b61119f3382611ae6565b6111da5760405162461bcd60e51b81526004018080602001828103825260308152602001806129366030913960400191505060405180910390fd5b6111e381611bf8565b50565b60006111f28383611ae6565b9392505050565b6000828152600860205260409020546001600160a01b0316331461121c57600080fd5b6040518290829033907ff10fc780c78f994a214c79a2ae8d8b7bfe7cc3f0f935a8f05a29525e71d7f12790600090a45050565b61125833611694565b61126157600080fd5b61126c858585611a57565b6112ae85858585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611c7992505050565b6112b757600080fd5b5050505050565b826112c93382611ae6565b6112d257600080fd5b61131a6113158585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b611bf8565b50505050565b6000818152600260205260408120546001600160a01b0316806113745760405162461bcd60e51b81526004018080602001828103825260298152602001806127fe6029913960400191505060405180910390fd5b92915050565b61138333611e64565b565b60006113c78484848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b949350505050565b60006001600160a01b0382166114165760405162461bcd60e51b815260040180806020018281038252602a8152602001806127d4602a913960400191505060405180910390fd5b6001600160a01b038216600090815260046020526040902061137490611e75565b826114423382611ae6565b61144b57600080fd5b6112b7858585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250611a9f915050565b604080518082019091526002815261155160f21b602082015290565b6112b785858585858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201829052506040805160208101909152908152925061174c915050565b826115113382611ae6565b61151a57600080fd5b610f5a868661155f8787878080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b611a57565b6001600160a01b0382163314156115c2576040805162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604482015290519081900360640190fd5b3360008181526005602090815260408083206001600160a01b03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b61163933611694565b61164257600080fd5b6111e381611e79565b806116563382611ae6565b61165f57600080fd5b610ece61166b83611320565b8484611e8a565b6000818152600860205260408120546001600160a01b03168061137457600080fd5b600061137460018363ffffffff611fce16565b6116b033611694565b6116b957600080fd5b61131a848484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061203592505050565b611705848484611115565b61171184848484611c79565b61131a5760405162461bcd60e51b815260040180806020018281038252603281526020018061271a6032913960400191505060405180910390fd5b826117573382611ae6565b61176057600080fd5b600061176c8585611dac565b9050611779878783611a57565b61178587878386611c79565b61178e57600080fd5b50505050505050565b60606117a282611ac9565b6117ab57600080fd5b600760066000848152602001908152602001600020604051602001808380546001816001161561010002031660029004801561181e5780601f106117fc57610100808354040283529182019161181e565b820191906000526020600020905b81548152906001019060200180831161180a575b5050828054600181600116156101000203166002900480156118775780601f10611855576101008083540402835291820191611877565b820191906000526020600020905b815481529060010190602001808311611863575b505060408051601f1981840301815291905295945050505050565b8461189d3382611ae6565b6118a657600080fd5b61178e878787878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b018190048102820181019092528981529250899150889081908401838280828437600092019190915250611a9f92505050565b61192433611694565b61192d57600080fd5b611939600783836125cf565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b828260405180806020018281038252848482818152602001925080828437600083820152604051601f909101601f19169092018290039550909350505050a15050565b826119a93382611ae6565b6119b257600080fd5b6112b7858585858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061203592505050565b6119fc33611694565b6111da57600080fd5b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b7f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f90565b611a62838383611e8a565b6000818152600860205260409020546001600160a01b031615610ece57600090815260086020526040902080546001600160a01b03191690555050565b611aaa848484612035565b611ac0600085611aba8686611dac565b84611c79565b61131a57600080fd5b6000908152600260205260409020546001600160a01b0316151590565b6000611af182611ac9565b611b2c5760405162461bcd60e51b815260040180806020018281038252602c815260200180612770602c913960400191505060405180910390fd5b6000611b3783611320565b9050806001600160a01b0316846001600160a01b03161480611b725750836001600160a01b0316611b6784610f84565b6001600160a01b0316145b806113c757506113c78185611a05565b611b8b81611ac9565b611b9457600080fd5b6040516001600160a01b0383169082907fb1b34e6d89e1c584527d447f4b29ffad55635a37edeeb564939a6483401b31a590600090a3600090815260086020526040902080546001600160a01b0319166001600160a01b0392909216919091179055565b611c018161220f565b6000818152600860205260409020546001600160a01b031615611c3b57600081815260086020526040902080546001600160a01b03191690555b60008181526006602052604090205460026000196101006001841615020190911604156111e35760008181526006602052604081206111e39161264d565b6000611c8d846001600160a01b0316612221565b611c99575060016113c7565b604051630a85bd0160e11b815233600482018181526001600160a01b03888116602485015260448401879052608060648501908152865160848601528651600095928a169463150b7a029490938c938b938b939260a4019060208501908083838e5b83811015611d13578181015183820152602001611cfb565b50505050905090810190601f168015611d405780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015611d6257600080fd5b505af1158015611d76573d6000803e3d6000fd5b505050506040513d6020811015611d8c57600080fd5b50516001600160e01b031916630a85bd0160e11b14915050949350505050565b6000815160001415611dbd57600080fd5b82826040516020018082805190602001908083835b60208310611df15780518252601f199092019160209182019101611dd2565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040528051906020012060405160200180838152602001828152602001925050506040516020818303038152906040528051906020012060001c905092915050565b6111e360018263ffffffff61222716565b5490565b6111e360018263ffffffff61228e16565b826001600160a01b0316611e9d82611320565b6001600160a01b031614611ee25760405162461bcd60e51b81526004018080602001828103825260298152602001806128966029913960400191505060405180910390fd5b6001600160a01b038216611f275760405162461bcd60e51b815260040180806020018281038252602481526020018061274c6024913960400191505060405180910390fd5b611f308161230f565b6001600160a01b0383166000908152600460205260409020611f519061234a565b6001600160a01b0382166000908152600460205260409020611f7290612361565b60008181526002602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60006001600160a01b0382166120155760405162461bcd60e51b81526004018080602001828103825260228152602001806128746022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b60006120418383611dac565b905061204d848261236a565b815161205857600080fd5b61206181611ac9565b61206a57600080fd5b606082600660008681526020019081526020016000206040516020018083805190602001908083835b602083106120b25780518252601f199092019160209182019101612093565b6001836020036101000a03801982511681845116808217855250505050505090500180601760f91b815250600101828054600181600116156101000203166002900480156121375780601f10612115576101008083540402835291820191612137565b820191906000526020600020905b815481529060010190602001808311612123575b505060408051601f19818403018152918152600087815260066020908152919020825192965061216d9550935085019150612691565b50817fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952826040518080602001828103825283818151815260200191508051906020019080838360005b838110156121ce5781810151838201526020016121b6565b50505050905090810190601f1680156121fb5780820380516001836020036101000a031916815260200191505b509250505060405180910390a25050505050565b6111e361221b82611320565b8261249b565b3b151590565b6122318282611fce565b61226c5760405162461bcd60e51b81526004018080602001828103825260218152602001806128276021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff19169055565b6122988282611fce565b156122ea576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b6000818152600360205260409020546001600160a01b0316156111e357600090815260036020526040902080546001600160a01b0319169055565b805461235d90600163ffffffff61257216565b9055565b80546001019055565b6001600160a01b0382166123c5576040805162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f2061646472657373604482015290519081900360640190fd5b6123ce81611ac9565b15612420576040805162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000604482015290519081900360640190fd5b600081815260026020908152604080832080546001600160a01b0319166001600160a01b03871690811790915583526004909152902061245f90612361565b60405181906001600160a01b038416906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b816001600160a01b03166124ae82611320565b6001600160a01b0316146124f35760405162461bcd60e51b81526004018080602001828103825260258152602001806129116025913960400191505060405180910390fd5b6124fc8161230f565b6001600160a01b038216600090815260046020526040902061251d9061234a565b60008181526002602052604080822080546001600160a01b0319169055518291906001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6000828211156125c9576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106126105782800160ff1982351617855561263d565b8280016001018555821561263d579182015b8281111561263d578235825591602001919060010190612622565b506126499291506126ff565b5090565b50805460018160011615610100020316600290046000825580601f1061267357506111e3565b601f0160209004906000526020600020908101906111e391906126ff565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106126d257805160ff191683800117855561263d565b8280016001018555821561263d579182015b8281111561263d5782518255916020019190600101906126e4565b610f8191905b80821115612649576000815560010161270556fe4552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c654552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e526f6c65733a206163636f756e7420697320746865207a65726f20616464726573734552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f7665644552433732313a206275726e206f6620746f6b656e2074686174206973206e6f74206f776e4552433732314275726e61626c653a2063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564a265627a7a72315820fb6a1b26cc352dbb05e6627fd530bbb44114ac3a349f30d1f071136c656d20dc64736f6c634300050c0032526f6c65733a206163636f756e7420697320746865207a65726f20616464726573730f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f"; - static readonly abi: readonly [{ - readonly inputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "constructor"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "approved"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Approval"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "ApprovalForAll"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly indexed: false; - readonly internalType: "string"; - readonly name: "uri"; - readonly type: "string"; - }]; - readonly name: "NewURI"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "string"; - readonly name: "prefix"; - readonly type: "string"; - }]; - readonly name: "NewURIPrefix"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }]; - readonly name: "Resolve"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "updateId"; - readonly type: "uint256"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Sync"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Transfer"; - readonly type: "event"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "addController"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "approve"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "balanceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "burn"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }]; - readonly name: "burnChild"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }]; - readonly name: "childIdOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly payable: false; - readonly stateMutability: "pure"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "controlledBurn"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }]; - readonly name: "controlledMintChild"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "controlledResolveTo"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }, { - readonly internalType: "bytes"; - readonly name: "_data"; - readonly type: "bytes"; - }]; - readonly name: "controlledSafeMintChild"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "_data"; - readonly type: "bytes"; - }]; - readonly name: "controlledSafeTransferFrom"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "prefix"; - readonly type: "string"; - }]; - readonly name: "controlledSetTokenURIPrefix"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "controlledTransferFrom"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getApproved"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly name: "isApprovedForAll"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "spender"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "isApprovedOrOwner"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "isController"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }]; - readonly name: "mintChild"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly []; - readonly name: "name"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "ownerOf"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly []; - readonly name: "renounceController"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "resolveTo"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "resolverOf"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly []; - readonly name: "root"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly payable: false; - readonly stateMutability: "pure"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }]; - readonly name: "safeMintChild"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }, { - readonly internalType: "bytes"; - readonly name: "_data"; - readonly type: "bytes"; - }]; - readonly name: "safeMintChild"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "_data"; - readonly type: "bytes"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }]; - readonly name: "safeTransferFromChild"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }, { - readonly internalType: "bytes"; - readonly name: "_data"; - readonly type: "bytes"; - }]; - readonly name: "safeTransferFromChild"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "setApprovalForAll"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "setOwner"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly []; - readonly name: "symbol"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "updateId"; - readonly type: "uint256"; - }]; - readonly name: "sync"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "tokenURI"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "transferFrom"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }]; - readonly name: "transferFromChild"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): CNSRegistryInterface; - static connect(address: string, runner?: ContractRunner | null): CNSRegistry; -} -export {}; -//# sourceMappingURL=CNSRegistry__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/CNSRegistry__factory.d.ts.map b/dist/types/factories/dot-crypto/contracts/CNSRegistry__factory.d.ts.map deleted file mode 100644 index 71b073fe..00000000 --- a/dist/types/factories/dot-crypto/contracts/CNSRegistry__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"CNSRegistry__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/dot-crypto/contracts/CNSRegistry__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,KAAK,EACV,WAAW,EACX,oBAAoB,EACrB,MAAM,2CAA2C,CAAC;AAi/BnD,aAAK,4BAA4B,GAC7B,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,oBAAqB,SAAQ,eAAe;gBAC3C,GAAG,IAAI,EAAE,4BAA4B;IAQxC,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,oBAAoB;IAIrE,MAAM,CAAC,QAAQ,CAAC,QAAQ,8lwBAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,oBAAoB;IAG9C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,WAAW;CAG7E"} \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/CNSRegistry__factory.js b/dist/types/factories/dot-crypto/contracts/CNSRegistry__factory.js deleted file mode 100644 index d2c0275e..00000000 --- a/dist/types/factories/dot-crypto/contracts/CNSRegistry__factory.js +++ /dev/null @@ -1,1037 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.CNSRegistry__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [], - payable: false, - stateMutability: "nonpayable", - type: "constructor", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "approved", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Approval", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: false, - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "ApprovalForAll", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - indexed: false, - internalType: "string", - name: "uri", - type: "string", - }, - ], - name: "NewURI", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "string", - name: "prefix", - type: "string", - }, - ], - name: "NewURIPrefix", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - ], - name: "Resolve", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "resolver", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "updateId", - type: "uint256", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Sync", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Transfer", - type: "event", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "addController", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "approve", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "burn", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - ], - name: "burnChild", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - ], - name: "childIdOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "pure", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "controlledBurn", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - ], - name: "controlledMintChild", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "controlledResolveTo", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - { - internalType: "bytes", - name: "_data", - type: "bytes", - }, - ], - name: "controlledSafeMintChild", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "_data", - type: "bytes", - }, - ], - name: "controlledSafeTransferFrom", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "string", - name: "prefix", - type: "string", - }, - ], - name: "controlledSetTokenURIPrefix", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "controlledTransferFrom", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getApproved", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - name: "isApprovedForAll", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "spender", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "isApprovedOrOwner", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "isController", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - ], - name: "mintChild", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [], - name: "name", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "ownerOf", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [], - name: "renounceController", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "resolveTo", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "resolverOf", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "root", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "pure", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - ], - name: "safeMintChild", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - { - internalType: "bytes", - name: "_data", - type: "bytes", - }, - ], - name: "safeMintChild", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "safeTransferFrom", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "_data", - type: "bytes", - }, - ], - name: "safeTransferFrom", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - ], - name: "safeTransferFromChild", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - { - internalType: "bytes", - name: "_data", - type: "bytes", - }, - ], - name: "safeTransferFromChild", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "setApprovalForAll", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "setOwner", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "symbol", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "uint256", - name: "updateId", - type: "uint256", - }, - ], - name: "sync", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "tokenURI", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "transferFrom", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - ], - name: "transferFromChild", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, -]; -const _bytecode = "0x60806040523480156200001157600080fd5b50620000467f01ffc9a7000000000000000000000000000000000000000000000000000000006001600160e01b03620001cf16565b6200005a336001600160e01b036200029e16565b6200008e7f80ac58cd000000000000000000000000000000000000000000000000000000006001600160e01b03620001cf16565b620000b461dead6000805160206200300b8339815191526001600160e01b03620002bc16565b620000e87f5b5e139f000000000000000000000000000000000000000000000000000000006001600160e01b03620001cf16565b6040805180820190915260068082527f63727970746f000000000000000000000000000000000000000000000000000060208301526000620001326001600160e01b036200043916565b81526020019081526020016000209080519060200190620001559291906200059d565b50620001696001600160e01b036200043916565b6040805160208082526006908201527f63727970746f00000000000000000000000000000000000000000000000000008183015290517fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c39529181900360600190a26200063f565b7fffffffff0000000000000000000000000000000000000000000000000000000080821614156200026157604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f4552433136353a20696e76616c696420696e7465726661636520696400000000604482015290519081900360640190fd5b7fffffffff00000000000000000000000000000000000000000000000000000000166000908152602081905260409020805460ff19166001179055565b620002b98160016200044d60201b6200228e1790919060201c565b50565b6001600160a01b0382166200033257604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f2061646472657373604482015290519081900360640190fd5b62000346816001600160e01b03620004f416565b15620003b357604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000604482015290519081900360640190fd5b600081815260026020908152604080832080546001600160a01b0319166001600160a01b038716908117909155835260048252909120620003fd9162000511811b6200236117901c565b60405181906001600160a01b038416906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b6000805160206200300b8339815191525b90565b6200046282826001600160e01b036200051a16565b15620004cf57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b6000908152600260205260409020546001600160a01b0316151590565b80546001019055565b60006001600160a01b0382166200057d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602281526020018062002fe96022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620005e057805160ff191683800117855562000610565b8280016001018555821562000610579182015b8281111562000610578251825591602001919060010190620005f3565b506200061e92915062000622565b5090565b6200044a91905b808211156200061e576000815560010162000629565b61299a806200064f6000396000f3fe608060405234801561001057600080fd5b50600436106102325760003560e01c80637c69eae211610130578063b5466669116100b8578063d284d97a1161007c578063d284d97a14610d4e578063d8d3cc6e14610dbc578063e67ca8a314610e3f578063e985e9c514610e5c578063ebf0c71714610e8a57610232565b8063b5466669146109ce578063b88d4fde14610a51578063c29b52f914610b15578063c87b56dd14610c5e578063ce9fb82b14610c7b57610232565b8063a22cb465116100ff578063a22cb4651461090b578063a7fc7a0714610939578063ab3b87fe1461095f578063b3f9e4cb1461098b578063b429afeb146109a857610232565b80637c69eae21461076457806395d89b41146107e75780639d743989146107ef5780639e5be9a51461087d57610232565b806342842e0e116101be5780635cbe1112116101825780635cbe11121461061d5780636352211e1461069257806366ac3b68146106af57806368b62d32146106b757806370a082311461073e57610232565b806342842e0e146104ed57806342966c6814610523578063430c208114610540578063538361a71461056c57806357aac5741461058f57610232565b8063081812fc11610205578063081812fc146103fa578063095ea7b3146104335780632392c1891461045f57806323b872dd1461048b5780632525d06a146104c157610232565b806301ffc9a71461023757806302759c37146102725780630467e014146102aa57806306fdde031461037d575b600080fd5b61025e6004803603602081101561024d57600080fd5b50356001600160e01b031916610e92565b604080519115158252519081900360200190f35b6102a86004803603606081101561028857600080fd5b506001600160a01b03813581169160208101359091169060400135610eb1565b005b6102a8600480360360808110156102c057600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156102ef57600080fd5b82018360208201111561030157600080fd5b803590602001918460018302840111600160201b8311171561032257600080fd5b919390929091602081019035600160201b81111561033f57600080fd5b82018360208201111561035157600080fd5b803590602001918460018302840111600160201b8311171561037257600080fd5b509092509050610ed3565b610385610f62565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103bf5781810151838201526020016103a7565b50505050905090810190601f1680156103ec5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6104176004803603602081101561041057600080fd5b5035610f84565b604080516001600160a01b039092168252519081900360200190f35b6102a86004803603604081101561044957600080fd5b506001600160a01b038135169060200135610fe6565b6102a86004803603604081101561047557600080fd5b506001600160a01b0381351690602001356110f7565b6102a8600480360360608110156104a157600080fd5b506001600160a01b03813581169160208101359091169060400135611115565b6102a8600480360360408110156104d757600080fd5b506001600160a01b03813516906020013561115a565b6102a86004803603606081101561050357600080fd5b506001600160a01b0381358116916020810135909116906040013561117a565b6102a86004803603602081101561053957600080fd5b5035611195565b61025e6004803603604081101561055657600080fd5b506001600160a01b0381351690602001356111e6565b6102a86004803603604081101561058257600080fd5b50803590602001356111f9565b6102a8600480360360808110156105a557600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156105df57600080fd5b8201836020820111156105f157600080fd5b803590602001918460018302840111600160201b8311171561061257600080fd5b50909250905061124f565b6102a86004803603604081101561063357600080fd5b81359190810190604081016020820135600160201b81111561065457600080fd5b82018360208201111561066657600080fd5b803590602001918460018302840111600160201b8311171561068757600080fd5b5090925090506112be565b610417600480360360208110156106a857600080fd5b5035611320565b6102a861137a565b61072c600480360360408110156106cd57600080fd5b81359190810190604081016020820135600160201b8111156106ee57600080fd5b82018360208201111561070057600080fd5b803590602001918460018302840111600160201b8311171561072157600080fd5b509092509050611385565b60408051918252519081900360200190f35b61072c6004803603602081101561075457600080fd5b50356001600160a01b03166113cf565b6102a86004803603606081101561077a57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156107a957600080fd5b8201836020820111156107bb57600080fd5b803590602001918460018302840111600160201b831117156107dc57600080fd5b509092509050611437565b61038561149a565b6102a86004803603608081101561080557600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561083f57600080fd5b82018360208201111561085157600080fd5b803590602001918460018302840111600160201b8311171561087257600080fd5b5090925090506114b6565b6102a86004803603608081101561089357600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156108cd57600080fd5b8201836020820111156108df57600080fd5b803590602001918460018302840111600160201b8311171561090057600080fd5b509092509050611506565b6102a86004803603604081101561092157600080fd5b506001600160a01b0381351690602001351515611564565b6102a86004803603602081101561094f57600080fd5b50356001600160a01b0316611630565b6102a86004803603604081101561097557600080fd5b506001600160a01b03813516906020013561164b565b610417600480360360208110156109a157600080fd5b5035611672565b61025e600480360360208110156109be57600080fd5b50356001600160a01b0316611694565b6102a8600480360360608110156109e457600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610a1357600080fd5b820183602082011115610a2557600080fd5b803590602001918460018302840111600160201b83111715610a4657600080fd5b5090925090506116a7565b6102a860048036036080811015610a6757600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b811115610aa157600080fd5b820183602082011115610ab357600080fd5b803590602001918460018302840111600160201b83111715610ad457600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506116fa945050505050565b6102a8600480360360a0811015610b2b57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b811115610b6557600080fd5b820183602082011115610b7757600080fd5b803590602001918460018302840111600160201b83111715610b9857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b811115610bea57600080fd5b820183602082011115610bfc57600080fd5b803590602001918460018302840111600160201b83111715610c1d57600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061174c945050505050565b61038560048036036020811015610c7457600080fd5b5035611797565b6102a860048036036080811015610c9157600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610cc057600080fd5b820183602082011115610cd257600080fd5b803590602001918460018302840111600160201b83111715610cf357600080fd5b919390929091602081019035600160201b811115610d1057600080fd5b820183602082011115610d2257600080fd5b803590602001918460018302840111600160201b83111715610d4357600080fd5b509092509050611892565b6102a860048036036020811015610d6457600080fd5b810190602081018135600160201b811115610d7e57600080fd5b820183602082011115610d9057600080fd5b803590602001918460018302840111600160201b83111715610db157600080fd5b50909250905061191b565b6102a860048036036060811015610dd257600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b811115610e0157600080fd5b820183602082011115610e1357600080fd5b803590602001918460018302840111600160201b83111715610e3457600080fd5b50909250905061199e565b6102a860048036036020811015610e5557600080fd5b50356119f3565b61025e60048036036040811015610e7257600080fd5b506001600160a01b0381358116916020013516611a05565b61072c611a33565b6001600160e01b03191660009081526020819052604090205460ff1690565b610eba33611694565b610ec357600080fd5b610ece838383611a57565b505050565b610edc33611694565b610ee557600080fd5b610f5a868686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8a018190048102820181019092528881529250889150879081908401838280828437600092019190915250611a9f92505050565b505050505050565b6040805180820190915260078152662e63727970746f60c81b60208201525b90565b6000610f8f82611ac9565b610fca5760405162461bcd60e51b815260040180806020018281038252602c815260200180612848602c913960400191505060405180910390fd5b506000908152600360205260409020546001600160a01b031690565b6000610ff182611320565b9050806001600160a01b0316836001600160a01b031614156110445760405162461bcd60e51b81526004018080602001828103825260218152602001806128bf6021913960400191505060405180910390fd5b336001600160a01b038216148061106057506110608133611a05565b61109b5760405162461bcd60e51b815260040180806020018281038252603881526020018061279c6038913960400191505060405180910390fd5b60008281526003602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b806111023382611ae6565b61110b57600080fd5b610ece8383611b82565b61111f3382611ae6565b610ec35760405162461bcd60e51b81526004018080602001828103825260318152602001806128e06031913960400191505060405180910390fd5b61116333611694565b61116c57600080fd5b6111768282611b82565b5050565b610ece838383604051806020016040528060008152506116fa565b61119f3382611ae6565b6111da5760405162461bcd60e51b81526004018080602001828103825260308152602001806129366030913960400191505060405180910390fd5b6111e381611bf8565b50565b60006111f28383611ae6565b9392505050565b6000828152600860205260409020546001600160a01b0316331461121c57600080fd5b6040518290829033907ff10fc780c78f994a214c79a2ae8d8b7bfe7cc3f0f935a8f05a29525e71d7f12790600090a45050565b61125833611694565b61126157600080fd5b61126c858585611a57565b6112ae85858585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611c7992505050565b6112b757600080fd5b5050505050565b826112c93382611ae6565b6112d257600080fd5b61131a6113158585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b611bf8565b50505050565b6000818152600260205260408120546001600160a01b0316806113745760405162461bcd60e51b81526004018080602001828103825260298152602001806127fe6029913960400191505060405180910390fd5b92915050565b61138333611e64565b565b60006113c78484848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b949350505050565b60006001600160a01b0382166114165760405162461bcd60e51b815260040180806020018281038252602a8152602001806127d4602a913960400191505060405180910390fd5b6001600160a01b038216600090815260046020526040902061137490611e75565b826114423382611ae6565b61144b57600080fd5b6112b7858585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250611a9f915050565b604080518082019091526002815261155160f21b602082015290565b6112b785858585858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201829052506040805160208101909152908152925061174c915050565b826115113382611ae6565b61151a57600080fd5b610f5a868661155f8787878080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dac92505050565b611a57565b6001600160a01b0382163314156115c2576040805162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604482015290519081900360640190fd5b3360008181526005602090815260408083206001600160a01b03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b61163933611694565b61164257600080fd5b6111e381611e79565b806116563382611ae6565b61165f57600080fd5b610ece61166b83611320565b8484611e8a565b6000818152600860205260408120546001600160a01b03168061137457600080fd5b600061137460018363ffffffff611fce16565b6116b033611694565b6116b957600080fd5b61131a848484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061203592505050565b611705848484611115565b61171184848484611c79565b61131a5760405162461bcd60e51b815260040180806020018281038252603281526020018061271a6032913960400191505060405180910390fd5b826117573382611ae6565b61176057600080fd5b600061176c8585611dac565b9050611779878783611a57565b61178587878386611c79565b61178e57600080fd5b50505050505050565b60606117a282611ac9565b6117ab57600080fd5b600760066000848152602001908152602001600020604051602001808380546001816001161561010002031660029004801561181e5780601f106117fc57610100808354040283529182019161181e565b820191906000526020600020905b81548152906001019060200180831161180a575b5050828054600181600116156101000203166002900480156118775780601f10611855576101008083540402835291820191611877565b820191906000526020600020905b815481529060010190602001808311611863575b505060408051601f1981840301815291905295945050505050565b8461189d3382611ae6565b6118a657600080fd5b61178e878787878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b018190048102820181019092528981529250899150889081908401838280828437600092019190915250611a9f92505050565b61192433611694565b61192d57600080fd5b611939600783836125cf565b507f4b120d6a959a84a520fa48f5f937cca0e79129423487af7901213b5d2e89313b828260405180806020018281038252848482818152602001925080828437600083820152604051601f909101601f19169092018290039550909350505050a15050565b826119a93382611ae6565b6119b257600080fd5b6112b7858585858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061203592505050565b6119fc33611694565b6111da57600080fd5b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b7f0f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f90565b611a62838383611e8a565b6000818152600860205260409020546001600160a01b031615610ece57600090815260086020526040902080546001600160a01b03191690555050565b611aaa848484612035565b611ac0600085611aba8686611dac565b84611c79565b61131a57600080fd5b6000908152600260205260409020546001600160a01b0316151590565b6000611af182611ac9565b611b2c5760405162461bcd60e51b815260040180806020018281038252602c815260200180612770602c913960400191505060405180910390fd5b6000611b3783611320565b9050806001600160a01b0316846001600160a01b03161480611b725750836001600160a01b0316611b6784610f84565b6001600160a01b0316145b806113c757506113c78185611a05565b611b8b81611ac9565b611b9457600080fd5b6040516001600160a01b0383169082907fb1b34e6d89e1c584527d447f4b29ffad55635a37edeeb564939a6483401b31a590600090a3600090815260086020526040902080546001600160a01b0319166001600160a01b0392909216919091179055565b611c018161220f565b6000818152600860205260409020546001600160a01b031615611c3b57600081815260086020526040902080546001600160a01b03191690555b60008181526006602052604090205460026000196101006001841615020190911604156111e35760008181526006602052604081206111e39161264d565b6000611c8d846001600160a01b0316612221565b611c99575060016113c7565b604051630a85bd0160e11b815233600482018181526001600160a01b03888116602485015260448401879052608060648501908152865160848601528651600095928a169463150b7a029490938c938b938b939260a4019060208501908083838e5b83811015611d13578181015183820152602001611cfb565b50505050905090810190601f168015611d405780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015611d6257600080fd5b505af1158015611d76573d6000803e3d6000fd5b505050506040513d6020811015611d8c57600080fd5b50516001600160e01b031916630a85bd0160e11b14915050949350505050565b6000815160001415611dbd57600080fd5b82826040516020018082805190602001908083835b60208310611df15780518252601f199092019160209182019101611dd2565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040528051906020012060405160200180838152602001828152602001925050506040516020818303038152906040528051906020012060001c905092915050565b6111e360018263ffffffff61222716565b5490565b6111e360018263ffffffff61228e16565b826001600160a01b0316611e9d82611320565b6001600160a01b031614611ee25760405162461bcd60e51b81526004018080602001828103825260298152602001806128966029913960400191505060405180910390fd5b6001600160a01b038216611f275760405162461bcd60e51b815260040180806020018281038252602481526020018061274c6024913960400191505060405180910390fd5b611f308161230f565b6001600160a01b0383166000908152600460205260409020611f519061234a565b6001600160a01b0382166000908152600460205260409020611f7290612361565b60008181526002602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b60006001600160a01b0382166120155760405162461bcd60e51b81526004018080602001828103825260228152602001806128746022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b60006120418383611dac565b905061204d848261236a565b815161205857600080fd5b61206181611ac9565b61206a57600080fd5b606082600660008681526020019081526020016000206040516020018083805190602001908083835b602083106120b25780518252601f199092019160209182019101612093565b6001836020036101000a03801982511681845116808217855250505050505090500180601760f91b815250600101828054600181600116156101000203166002900480156121375780601f10612115576101008083540402835291820191612137565b820191906000526020600020905b815481529060010190602001808311612123575b505060408051601f19818403018152918152600087815260066020908152919020825192965061216d9550935085019150612691565b50817fc5beef08f693b11c316c0c8394a377a0033c9cf701b8cd8afd79cecef60c3952826040518080602001828103825283818151815260200191508051906020019080838360005b838110156121ce5781810151838201526020016121b6565b50505050905090810190601f1680156121fb5780820380516001836020036101000a031916815260200191505b509250505060405180910390a25050505050565b6111e361221b82611320565b8261249b565b3b151590565b6122318282611fce565b61226c5760405162461bcd60e51b81526004018080602001828103825260218152602001806128276021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff19169055565b6122988282611fce565b156122ea576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b6000818152600360205260409020546001600160a01b0316156111e357600090815260036020526040902080546001600160a01b0319169055565b805461235d90600163ffffffff61257216565b9055565b80546001019055565b6001600160a01b0382166123c5576040805162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f2061646472657373604482015290519081900360640190fd5b6123ce81611ac9565b15612420576040805162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000604482015290519081900360640190fd5b600081815260026020908152604080832080546001600160a01b0319166001600160a01b03871690811790915583526004909152902061245f90612361565b60405181906001600160a01b038416906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b816001600160a01b03166124ae82611320565b6001600160a01b0316146124f35760405162461bcd60e51b81526004018080602001828103825260258152602001806129116025913960400191505060405180910390fd5b6124fc8161230f565b6001600160a01b038216600090815260046020526040902061251d9061234a565b60008181526002602052604080822080546001600160a01b0319169055518291906001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6000828211156125c9576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106126105782800160ff1982351617855561263d565b8280016001018555821561263d579182015b8281111561263d578235825591602001919060010190612622565b506126499291506126ff565b5090565b50805460018160011615610100020316600290046000825580601f1061267357506111e3565b601f0160209004906000526020600020908101906111e391906126ff565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106126d257805160ff191683800117855561263d565b8280016001018555821561263d579182015b8281111561263d5782518255916020019190600101906126e4565b610f8191905b80821115612649576000815560010161270556fe4552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c654552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e526f6c65733a206163636f756e7420697320746865207a65726f20616464726573734552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f7665644552433732313a206275726e206f6620746f6b656e2074686174206973206e6f74206f776e4552433732314275726e61626c653a2063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564a265627a7a72315820fb6a1b26cc352dbb05e6627fd530bbb44114ac3a349f30d1f071136c656d20dc64736f6c634300050c0032526f6c65733a206163636f756e7420697320746865207a65726f20616464726573730f4a10a4f46c288cea365fcf45cccf0e9d901b945b9829ccdb54c10dc3cb7a6f"; -const isSuperArgs = (xs) => xs.length > 1; -class CNSRegistry__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(overrides) { - return super.getDeployTransaction(overrides || {}); - } - deploy(overrides) { - return super.deploy(overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.CNSRegistry__factory = CNSRegistry__factory; -CNSRegistry__factory.bytecode = _bytecode; -CNSRegistry__factory.abi = _abi; diff --git a/dist/types/factories/dot-crypto/contracts/ICNSRegistry__factory.d.ts b/dist/types/factories/dot-crypto/contracts/ICNSRegistry__factory.d.ts deleted file mode 100644 index b9b58eee..00000000 --- a/dist/types/factories/dot-crypto/contracts/ICNSRegistry__factory.d.ts +++ /dev/null @@ -1,652 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { ICNSRegistry, ICNSRegistryInterface } from "../../../dot-crypto/contracts/ICNSRegistry"; -export declare class ICNSRegistry__factory { - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "approved"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Approval"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly indexed: false; - readonly internalType: "bool"; - readonly name: "approved"; - readonly type: "bool"; - }]; - readonly name: "ApprovalForAll"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly indexed: false; - readonly internalType: "string"; - readonly name: "uri"; - readonly type: "string"; - }]; - readonly name: "NewURI"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: false; - readonly internalType: "string"; - readonly name: "prefix"; - readonly type: "string"; - }]; - readonly name: "NewURIPrefix"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }]; - readonly name: "Resolve"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "updateId"; - readonly type: "uint256"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Sync"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "Transfer"; - readonly type: "event"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "approve"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "balanceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "balance"; - readonly type: "uint256"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }]; - readonly name: "burnChild"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }]; - readonly name: "childIdOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly payable: false; - readonly stateMutability: "pure"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "controlledBurn"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }]; - readonly name: "controlledMintChild"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "controlledResolveTo"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "_data"; - readonly type: "bytes"; - }]; - readonly name: "controlledSafeTransferFrom"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "prefix"; - readonly type: "string"; - }]; - readonly name: "controlledSetTokenURIPrefix"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "controlledTransferFrom"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getApproved"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly name: "isApprovedForAll"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "spender"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "isApprovedOrOwner"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }]; - readonly name: "mintChild"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly []; - readonly name: "name"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "ownerOf"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "resolveTo"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "resolverOf"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "data"; - readonly type: "bytes"; - }]; - readonly name: "safeTransferFrom"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }]; - readonly name: "safeTransferFromChild"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }, { - readonly internalType: "bytes"; - readonly name: "_data"; - readonly type: "bytes"; - }]; - readonly name: "safeTransferFromChild"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }, { - readonly internalType: "bool"; - readonly name: "_approved"; - readonly type: "bool"; - }]; - readonly name: "setApprovalForAll"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "setOwner"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "bytes4"; - readonly name: "interfaceId"; - readonly type: "bytes4"; - }]; - readonly name: "supportsInterface"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly []; - readonly name: "symbol"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "tokenURI"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "transferFrom"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }]; - readonly name: "transferFromChild"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): ICNSRegistryInterface; - static connect(address: string, runner?: ContractRunner | null): ICNSRegistry; -} -//# sourceMappingURL=ICNSRegistry__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/ICNSRegistry__factory.d.ts.map b/dist/types/factories/dot-crypto/contracts/ICNSRegistry__factory.d.ts.map deleted file mode 100644 index dc5f6948..00000000 --- a/dist/types/factories/dot-crypto/contracts/ICNSRegistry__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ICNSRegistry__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/dot-crypto/contracts/ICNSRegistry__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,YAAY,EACZ,qBAAqB,EACtB,MAAM,4CAA4C,CAAC;AAozBpD,qBAAa,qBAAqB;IAChC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,qBAAqB;IAG/C,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,YAAY;CAGhB"} \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/ICNSRegistry__factory.js b/dist/types/factories/dot-crypto/contracts/ICNSRegistry__factory.js deleted file mode 100644 index e26d79e3..00000000 --- a/dist/types/factories/dot-crypto/contracts/ICNSRegistry__factory.js +++ /dev/null @@ -1,831 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ICNSRegistry__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "approved", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Approval", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "operator", - type: "address", - }, - { - indexed: false, - internalType: "bool", - name: "approved", - type: "bool", - }, - ], - name: "ApprovalForAll", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - indexed: false, - internalType: "string", - name: "uri", - type: "string", - }, - ], - name: "NewURI", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "string", - name: "prefix", - type: "string", - }, - ], - name: "NewURIPrefix", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - ], - name: "Resolve", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "resolver", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "updateId", - type: "uint256", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Sync", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "Transfer", - type: "event", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "approve", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "balance", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - ], - name: "burnChild", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - ], - name: "childIdOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "pure", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "controlledBurn", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - ], - name: "controlledMintChild", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "controlledResolveTo", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "_data", - type: "bytes", - }, - ], - name: "controlledSafeTransferFrom", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "string", - name: "prefix", - type: "string", - }, - ], - name: "controlledSetTokenURIPrefix", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "controlledTransferFrom", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getApproved", - outputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - name: "isApprovedForAll", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "spender", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "isApprovedOrOwner", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - ], - name: "mintChild", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [], - name: "name", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "ownerOf", - outputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "resolveTo", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "resolverOf", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "safeTransferFrom", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "safeTransferFrom", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - ], - name: "safeTransferFromChild", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - { - internalType: "bytes", - name: "_data", - type: "bytes", - }, - ], - name: "safeTransferFromChild", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "operator", - type: "address", - }, - { - internalType: "bool", - name: "_approved", - type: "bool", - }, - ], - name: "setApprovalForAll", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "setOwner", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "symbol", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "tokenURI", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "transferFrom", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - ], - name: "transferFromChild", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, -]; -class ICNSRegistry__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.ICNSRegistry__factory = ICNSRegistry__factory; -ICNSRegistry__factory.abi = _abi; diff --git a/dist/types/factories/dot-crypto/contracts/IRegistryReader__factory.d.ts b/dist/types/factories/dot-crypto/contracts/IRegistryReader__factory.d.ts deleted file mode 100644 index 6df0e6bd..00000000 --- a/dist/types/factories/dot-crypto/contracts/IRegistryReader__factory.d.ts +++ /dev/null @@ -1,200 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IRegistryReader, IRegistryReaderInterface } from "../../../dot-crypto/contracts/IRegistryReader"; -export declare class IRegistryReader__factory { - static readonly abi: readonly [{ - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }]; - readonly name: "balanceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }]; - readonly name: "childIdOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getApproved"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "owner"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "operator"; - readonly type: "address"; - }]; - readonly name: "isApprovedForAll"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "spender"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "isApprovedOrOwner"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "isController"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly []; - readonly name: "name"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "ownerOf"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "resolverOf"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly []; - readonly name: "root"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly []; - readonly name: "symbol"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "tokenURI"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): IRegistryReaderInterface; - static connect(address: string, runner?: ContractRunner | null): IRegistryReader; -} -//# sourceMappingURL=IRegistryReader__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/IRegistryReader__factory.d.ts.map b/dist/types/factories/dot-crypto/contracts/IRegistryReader__factory.d.ts.map deleted file mode 100644 index 63f9354c..00000000 --- a/dist/types/factories/dot-crypto/contracts/IRegistryReader__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IRegistryReader__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/dot-crypto/contracts/IRegistryReader__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,eAAe,EACf,wBAAwB,EACzB,MAAM,+CAA+C,CAAC;AA8PvD,qBAAa,wBAAwB;IACnC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,wBAAwB;IAGlD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,eAAe;CAGnB"} \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/IRegistryReader__factory.js b/dist/types/factories/dot-crypto/contracts/IRegistryReader__factory.js deleted file mode 100644 index 0646fb4e..00000000 --- a/dist/types/factories/dot-crypto/contracts/IRegistryReader__factory.js +++ /dev/null @@ -1,265 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IRegistryReader__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - constant: true, - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - ], - name: "childIdOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getApproved", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "address", - name: "operator", - type: "address", - }, - ], - name: "isApprovedForAll", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "spender", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "isApprovedOrOwner", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "isController", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "name", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "ownerOf", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "resolverOf", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "root", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "symbol", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "tokenURI", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, -]; -class IRegistryReader__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IRegistryReader__factory = IRegistryReader__factory; -IRegistryReader__factory.abi = _abi; diff --git a/dist/types/factories/dot-crypto/contracts/IResolverReader__factory.d.ts b/dist/types/factories/dot-crypto/contracts/IResolverReader__factory.d.ts deleted file mode 100644 index 695a8dfa..00000000 --- a/dist/types/factories/dot-crypto/contracts/IResolverReader__factory.d.ts +++ /dev/null @@ -1,124 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IResolverReader, IResolverReaderInterface } from "../../../dot-crypto/contracts/IResolverReader"; -export declare class IResolverReader__factory { - static readonly abi: readonly [{ - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "get"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "keyHash"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getByHash"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }, { - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getMany"; - readonly outputs: readonly [{ - readonly internalType: "string[]"; - readonly name: ""; - readonly type: "string[]"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "uint256[]"; - readonly name: "keyHashes"; - readonly type: "uint256[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getManyByHash"; - readonly outputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "nonceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly []; - readonly name: "registry"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): IResolverReaderInterface; - static connect(address: string, runner?: ContractRunner | null): IResolverReader; -} -//# sourceMappingURL=IResolverReader__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/IResolverReader__factory.d.ts.map b/dist/types/factories/dot-crypto/contracts/IResolverReader__factory.d.ts.map deleted file mode 100644 index fa590fa5..00000000 --- a/dist/types/factories/dot-crypto/contracts/IResolverReader__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IResolverReader__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/dot-crypto/contracts/IResolverReader__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,eAAe,EACf,wBAAwB,EACzB,MAAM,+CAA+C,CAAC;AA2JvD,qBAAa,wBAAwB;IACnC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,wBAAwB;IAGlD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,eAAe;CAGnB"} \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/IResolverReader__factory.js b/dist/types/factories/dot-crypto/contracts/IResolverReader__factory.js deleted file mode 100644 index eced3274..00000000 --- a/dist/types/factories/dot-crypto/contracts/IResolverReader__factory.js +++ /dev/null @@ -1,166 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IResolverReader__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - constant: true, - inputs: [ - { - internalType: "string", - name: "key", - type: "string", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "get", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "uint256", - name: "keyHash", - type: "uint256", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getByHash", - outputs: [ - { - internalType: "string", - name: "key", - type: "string", - }, - { - internalType: "string", - name: "value", - type: "string", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getMany", - outputs: [ - { - internalType: "string[]", - name: "", - type: "string[]", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "uint256[]", - name: "keyHashes", - type: "uint256[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getManyByHash", - outputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "nonceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "registry", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, -]; -class IResolverReader__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IResolverReader__factory = IResolverReader__factory; -IResolverReader__factory.abi = _abi; diff --git a/dist/types/factories/dot-crypto/contracts/IResolver__factory.d.ts b/dist/types/factories/dot-crypto/contracts/IResolver__factory.d.ts deleted file mode 100644 index 0aca3d20..00000000 --- a/dist/types/factories/dot-crypto/contracts/IResolver__factory.d.ts +++ /dev/null @@ -1,100 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IResolver, IResolverInterface } from "../../../dot-crypto/contracts/IResolver"; -export declare class IResolver__factory { - static readonly abi: readonly [{ - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "preconfigure"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "reconfigure"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "reset"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }, { - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "set"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "setMany"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): IResolverInterface; - static connect(address: string, runner?: ContractRunner | null): IResolver; -} -//# sourceMappingURL=IResolver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/IResolver__factory.d.ts.map b/dist/types/factories/dot-crypto/contracts/IResolver__factory.d.ts.map deleted file mode 100644 index ca030e6a..00000000 --- a/dist/types/factories/dot-crypto/contracts/IResolver__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IResolver__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/dot-crypto/contracts/IResolver__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,SAAS,EACT,kBAAkB,EACnB,MAAM,yCAAyC,CAAC;AAwHjD,qBAAa,kBAAkB;IAC7B,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,kBAAkB;IAG5C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,SAAS;CAG3E"} \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/IResolver__factory.js b/dist/types/factories/dot-crypto/contracts/IResolver__factory.js deleted file mode 100644 index c950b9bc..00000000 --- a/dist/types/factories/dot-crypto/contracts/IResolver__factory.js +++ /dev/null @@ -1,131 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IResolver__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - constant: false, - inputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "preconfigure", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "reconfigure", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "reset", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "string", - name: "key", - type: "string", - }, - { - internalType: "string", - name: "value", - type: "string", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "set", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "setMany", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, -]; -class IResolver__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IResolver__factory = IResolver__factory; -IResolver__factory.abi = _abi; diff --git a/dist/types/factories/dot-crypto/contracts/Resolver__factory.d.ts b/dist/types/factories/dot-crypto/contracts/Resolver__factory.d.ts deleted file mode 100644 index 31f51d1c..00000000 --- a/dist/types/factories/dot-crypto/contracts/Resolver__factory.d.ts +++ /dev/null @@ -1,424 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, AddressLike, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../common"; -import type { Resolver, ResolverInterface } from "../../../dot-crypto/contracts/Resolver"; -declare type ResolverConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class Resolver__factory extends ContractFactory { - constructor(...args: ResolverConstructorParams); - getDeployTransaction(registry: AddressLike, mintingController: AddressLike, overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(registry: AddressLike, mintingController: AddressLike, overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): Resolver__factory; - static readonly bytecode = "0x60806040523480156200001157600080fd5b506040516200240a3803806200240a833981016040819052620000349162000160565b8180600160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555050806001600160a01b0316637b1039996040518163ffffffff1660e01b815260040160206040518083038186803b1580156200009757600080fd5b505afa158015620000ac573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250620000d2919081019062000137565b6001600160a01b0316826001600160a01b031614620000f057600080fd5b600580546001600160a01b0319166001600160a01b039290921691909117905550620001ea565b80516200012481620001c5565b92915050565b80516200012481620001df565b6000602082840312156200014a57600080fd5b600062000158848462000117565b949350505050565b600080604083850312156200017457600080fd5b60006200018285856200012a565b925050602062000195858286016200012a565b9150509250929050565b60006200012482620001b9565b600062000124826200019f565b6001600160a01b031690565b620001d0816200019f565b8114620001dc57600080fd5b50565b620001d081620001ac565b61221080620001fa6000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c80638c87a4ea116100a2578063b87abc1111610071578063b87abc1114610244578063c597407314610257578063ce92b33e1461026a578063e837ae741461027d578063ec129eea146102905761010b565b80638c87a4ea146101ea5780638f69c188146101fd578063a3557e6c14610210578063b85afd28146102235761010b565b806347c81699116100de57806347c8169914610181578063672b9f81146101945780636ccbae5f146101b55780637b103999146101d55761010b565b80631bd8cc1a146101105780631be5e7ed146101395780632c3d376d14610159578063310bd74b1461016c575b600080fd5b61012361011e3660046117b4565b6102a3565b6040516101309190611eee565b60405180910390f35b61014c610147366004611aec565b6104f2565b6040516101309190611fd6565b61014c610167366004611b21565b610673565b61017f61017a366004611b21565b610714565b005b61017f61018f3660046119b5565b6107c0565b6101a76101a2366004611b94565b6108ef565b604051610130929190611fe7565b6101c86101c3366004611b21565b6109c3565b604051610130919061204c565b6101dd6109d5565b6040516101309190611ea9565b6101236101f836600461191d565b6109e5565b61017f61020b366004611878565b610a74565b61017f61021e366004611878565b610af0565b610236610231366004611951565b610b1b565b604051610130929190611eff565b61017f610252366004611b3f565b610ca9565b61017f610265366004611a39565b610d43565b61017f610278366004611808565b610df9565b61017f61028b366004611808565b610e97565b61017f61029e366004611808565b610f4e565b60015460405163b3f9e4cb60e01b815260609183916001600160a01b039091169063b3f9e4cb906102d890849060040161204c565b60206040518083038186803b1580156102f057600080fd5b505afa158015610304573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610328919081019061178e565b6001600160a01b0316306001600160a01b0316146103615760405162461bcd60e51b81526004016103589061201c565b60405180910390fd5b604080518581526020808702820101909152849060609082801561039957816020015b60608152602001906001900390816103845790505b506000868152600360205260408120549192505b838110156104e557600087815260026020908152604080832085845290915290208989838181106103da57fe5b602002820190508035601e19368490030181126103f657600080fd5b909101602081019150356001600160401b0381111561041457600080fd5b3681900382131561042457600080fd5b604051610432929190611e70565b9081526040805160209281900383018120805460026001821615610100026000190190911604601f810185900485028301850190935282825290929091908301828280156104c15780601f10610496576101008083540402835291602001916104c1565b820191906000526020600020905b8154815290600101906020018083116104a457829003601f168201915b50505050508382815181106104d257fe5b60209081029190910101526001016103ad565b5090979650505050505050565b60015460405163b3f9e4cb60e01b815260609183916001600160a01b039091169063b3f9e4cb9061052790849060040161204c565b60206040518083038186803b15801561053f57600080fd5b505afa158015610553573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610577919081019061178e565b6001600160a01b0316306001600160a01b0316146105a75760405162461bcd60e51b81526004016103589061201c565b6000838152600260209081526040808320600383528184205484529091529081902090516105d6908690611e7d565b9081526040805160209281900383018120805460026001821615610100026000190190911604601f810185900485028301850190935282825290929091908301828280156106655780601f1061063a57610100808354040283529160200191610665565b820191906000526020600020905b81548152906001019060200180831161064857829003601f168201915b505050505091505092915050565b60008181526004602090815260409182902080548351601f60026000196101006001861615020190931692909204918201849004840281018401909452808452606093928301828280156107085780601f106106dd57610100808354040283529160200191610708565b820191906000526020600020905b8154815290600101906020018083116106eb57829003601f168201915b50505050509050919050565b60015460405163430c208160e01b815282916001600160a01b03169063430c2081906107469033908590600401611ec5565b60206040518083038186803b15801561075e57600080fd5b505afa158015610772573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506107969190810190611997565b6107b25760405162461bcd60e51b81526004016103589061202c565b6107bc4283610fec565b5050565b60015460405163430c208160e01b815282916001600160a01b03169063430c2081906107f29033908590600401611ec5565b60206040518083038186803b15801561080a57600080fd5b505afa15801561081e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506108429190810190611997565b61085e5760405162461bcd60e51b81526004016103589061202c565b6108e7600360008481526020019081526020016000205487878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061108e915050565b505050505050565b60015460405163b3f9e4cb60e01b8152606091829184916001600160a01b03169063b3f9e4cb9061092490849060040161204c565b60206040518083038186803b15801561093c57600080fd5b505afa158015610950573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610974919081019061178e565b6001600160a01b0316306001600160a01b0316146109a45760405162461bcd60e51b81526004016103589061201c565b6109ad85610673565b92506109b983856104f2565b9150509250929050565b60009081526020819052604090205490565b6001546001600160a01b03165b90565b6060600082519050606081604051908082528060200260200182016040528015610a2357816020015b6060815260200190600190039081610a0e5790505b50905060005b82811015610a6c57610a4d858281518110610a4057fe5b6020026020010151610673565b828281518110610a5957fe5b6020908102919091010152600101610a29565b509392505050565b610acf63ce92b33e60e01b858585604051602401610a9493929190611f24565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092178252519020838361129f565b600082815260036020526040902054610aea908585856113c3565b50505050565b610b1063ec129eea60e01b858585604051602401610a9493929190611f24565b610aea84848461140a565b60015460405163b3f9e4cb60e01b8152606091829184916001600160a01b03169063b3f9e4cb90610b5090849060040161204c565b60206040518083038186803b158015610b6857600080fd5b505afa158015610b7c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610ba0919081019061178e565b6001600160a01b0316306001600160a01b031614610bd05760405162461bcd60e51b81526004016103589061201c565b8451604080518281526020808402820101909152818015610c0557816020015b6060815260200190600190039081610bf05790505b50935080604051908082528060200260200182016040528015610c3c57816020015b6060815260200190600190039081610c275790505b50925060005b81811015610c9f57610c67878281518110610c5957fe5b6020026020010151876108ef565b8651879084908110610c7557fe5b60200260200101868481518110610c8857fe5b602090810291909101019190915252600101610c42565b5050509250929050565b610d3463310bd74b60e01b84604051602401610cc5919061204c565b60408051601f19818403018152918152602080830180516001600160e01b03166001600160e01b031990951694909417845291519092208251601f8601839004830281018301909352848352918691869086908190840183828082843760009201919091525061129f92505050565b610d3e4284610fec565b505050565b610d676347c8169960e01b8888888888604051602401610cc5959493929190611f96565b610df0600360008581526020019081526020016000205488888080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8c018190048102820181019092528a815292508a915089908190840183828082843760009201919091525089925061108e915050565b50505050505050565b60015460405163430c208160e01b815282916001600160a01b03169063430c208190610e2b9033908590600401611ec5565b60206040518083038186803b158015610e4357600080fd5b505afa158015610e57573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610e7b9190810190611997565b610acf5760405162461bcd60e51b81526004016103589061202c565b6005546040516355138f0d60e11b81526001600160a01b039091169063aa271e1a90610ec7903390600401611eb7565b60206040518083038186803b158015610edf57600080fd5b505afa158015610ef3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610f179190810190611997565b610f335760405162461bcd60e51b81526004016103589061203c565b600081815260036020526040902054610d3e908484846113c3565b60015460405163430c208160e01b815282916001600160a01b03169063430c208190610f809033908590600401611ec5565b60206040518083038186803b158015610f9857600080fd5b505afa158015610fac573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610fd09190810190611997565b610b105760405162461bcd60e51b81526004016103589061202c565b600081815260036020526040808220849055600154905163538361a760e01b81526001600160a01b039091169163538361a79161102d91859160040161205a565b600060405180830381600087803b15801561104757600080fd5b505af115801561105b573d6000803e3d6000fd5b50506040518392507f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9150600090a25050565b825160208085019190912060008381526002835260408082208883529093528281209251919290916110c1908790611e7d565b908152604051602091819003919091018120546001805463538361a760e01b84526002918316156101000260001901909216041592506001600160a01b03169063538361a7906111179086908690600401612075565b600060405180830381600087803b15801561113157600080fd5b505af1158015611145573d6000803e3d6000fd5b50505060008481526002602090815260408083208a8452909152908190209051869250611173908890611e7d565b90815260200160405180910390209080519060200190611194929190611521565b50600082815260046020526040902054600260001961010060018416150201909116046111dc57600082815260046020908152604090912086516111da92880190611521565b505b801561123157846040516111f09190611e7d565b6040518091039020837f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f86876040516112289190611fd6565b60405180910390a35b8360405161123f9190611e7d565b6040518091039020856040516112559190611e7d565b6040518091039020847f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d92888860405161128f929190611fe7565b60405180910390a4505050505050565b6000828152602081815260408083205490519092916112f59185916112e9916112ce918a913091899101611e39565b60405160208183030381529060405280519060200120611414565b9063ffffffff61144416565b90506001600160a01b0381161580159061138c575060015460405163430c208160e01b81526001600160a01b039091169063430c20819061133c9084908890600401611ee0565b60206040518083038186803b15801561135457600080fd5b505afa158015611368573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061138c9190810190611997565b6113a85760405162461bcd60e51b81526004016103589061200c565b50505060009081526020819052604090208054600101905550565b825160005b818110156108e757611402868683815181106113e057fe5b60200260200101518684815181106113f457fe5b60200260200101518661108e565b6001016113c8565b610f334282610fec565b6000816040516020016114279190611e89565b604051602081830303815290604052805190602001209050919050565b600081516041146114575750600061151b565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a082111561149d576000935050505061151b565b8060ff16601b141580156114b557508060ff16601c14155b156114c6576000935050505061151b565b600186828585604051600081526020016040526040516114e99493929190611f58565b6020604051602081039080840390855afa15801561150b573d6000803e3d6000fd5b5050506020604051035193505050505b92915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061156257805160ff191683800117855561158f565b8280016001018555821561158f579182015b8281111561158f578251825591602001919060010190611574565b5061159b92915061159f565b5090565b6109e291905b8082111561159b57600081556001016115a5565b805161151b816121a4565b60008083601f8401126115d657600080fd5b5081356001600160401b038111156115ed57600080fd5b60208301915083602082028301111561160557600080fd5b9250929050565b600082601f83011261161d57600080fd5b813561163061162b826120a9565b612083565b81815260209384019390925082018360005b8381101561166e57813586016116588882611734565b8452506020928301929190910190600101611642565b5050505092915050565b600082601f83011261168957600080fd5b813561169761162b826120a9565b915081818352602084019350602081019050838560208402820111156116bc57600080fd5b60005b8381101561166e57816116d28882611783565b84525060209283019291909101906001016116bf565b805161151b816121bb565b60008083601f84011261170557600080fd5b5081356001600160401b0381111561171c57600080fd5b60208301915083600182028301111561160557600080fd5b600082601f83011261174557600080fd5b813561175361162b826120c9565b9150808252602083016020830185838301111561176f57600080fd5b61177a83828461214b565b50505092915050565b803561151b816121c4565b6000602082840312156117a057600080fd5b60006117ac84846115b9565b949350505050565b6000806000604084860312156117c957600080fd5b83356001600160401b038111156117df57600080fd5b6117eb868287016115c4565b935093505060206117fe86828701611783565b9150509250925092565b60008060006060848603121561181d57600080fd5b83356001600160401b0381111561183357600080fd5b61183f8682870161160c565b93505060208401356001600160401b0381111561185b57600080fd5b6118678682870161160c565b92505060406117fe86828701611783565b6000806000806080858703121561188e57600080fd5b84356001600160401b038111156118a457600080fd5b6118b08782880161160c565b94505060208501356001600160401b038111156118cc57600080fd5b6118d88782880161160c565b93505060406118e987828801611783565b92505060608501356001600160401b0381111561190557600080fd5b61191187828801611734565b91505092959194509250565b60006020828403121561192f57600080fd5b81356001600160401b0381111561194557600080fd5b6117ac84828501611678565b6000806040838503121561196457600080fd5b82356001600160401b0381111561197a57600080fd5b61198685828601611678565b92505060206109b985828601611783565b6000602082840312156119a957600080fd5b60006117ac84846116e8565b6000806000806000606086880312156119cd57600080fd5b85356001600160401b038111156119e357600080fd5b6119ef888289016116f3565b955095505060208601356001600160401b03811115611a0d57600080fd5b611a19888289016116f3565b93509350506040611a2c88828901611783565b9150509295509295909350565b60008060008060008060006080888a031215611a5457600080fd5b87356001600160401b03811115611a6a57600080fd5b611a768a828b016116f3565b975097505060208801356001600160401b03811115611a9457600080fd5b611aa08a828b016116f3565b95509550506040611ab38a828b01611783565b93505060608801356001600160401b03811115611acf57600080fd5b611adb8a828b016116f3565b925092505092959891949750929550565b60008060408385031215611aff57600080fd5b82356001600160401b03811115611b1557600080fd5b61198685828601611734565b600060208284031215611b3357600080fd5b60006117ac8484611783565b600080600060408486031215611b5457600080fd5b6000611b608686611783565b93505060208401356001600160401b03811115611b7c57600080fd5b611b88868287016116f3565b92509250509250925092565b60008060408385031215611ba757600080fd5b60006119868585611783565b6000611bbf8383611ccb565b9392505050565b611bcf8161212a565b82525050565b611bcf81612108565b611bcf611bea82612108565b612183565b6000611bfa826120f6565b611c0481856120fa565b935083602082028501611c16856120f0565b8060005b85811015611c505784840389528151611c338582611bb3565b9450611c3e836120f0565b60209a909a0199925050600101611c1a565b5091979650505050505050565b611bcf816109e2565b611bcf611c72826109e2565b6109e2565b611bcf81612135565b6000611c8c83856120fa565b9350611c9983858461214b565b611ca283612194565b9093019392505050565b6000611cb88385612103565b9350611cc583858461214b565b50500190565b6000611cd6826120f6565b611ce081856120fa565b9350611cf0818560208601612157565b611ca281612194565b6000611d04826120f6565b611d0e8185612103565b9350611d1e818560208601612157565b9290920192915050565b6000611d35601c83612103565b7f19457468657265756d205369676e6564204d6573736167653a0a3332000000008152601c0192915050565b6000611d6e6011836120fa565b70494e56414c49445f5349474e415455524560781b815260200192915050565b6000611d9b601d836120fa565b7f5245534f4c5645525f44455441434845445f46524f4d5f444f4d41494e000000815260200192915050565b6000611dd4601f836120fa565b7f53454e4445525f49535f4e4f545f415050524f5645445f4f525f4f574e455200815260200192915050565b6000611e0d6014836120fa565b7329a2a72222a92fa4a9afa727aa2fa6a4a72a22a960611b815260200192915050565b611bcf81612124565b6000611e458286611c66565b602082019150611e558285611bde565b601482019150611e658284611c66565b506020019392505050565b60006117ac828486611cac565b6000611bbf8284611cf9565b6000611e9482611d28565b9150611ea08284611c66565b50602001919050565b6020810161151b8284611bd5565b6020810161151b8284611bc6565b60408101611ed38285611bc6565b611bbf6020830184611c5d565b60408101611ed38285611bd5565b60208082528101611bbf8184611bef565b60408082528101611f108185611bef565b905081810360208301526117ac8184611bef565b60608082528101611f358186611bef565b90508181036020830152611f498185611bef565b90506117ac6040830184611c5d565b60808101611f668287611c5d565b611f736020830186611e30565b611f806040830185611c5d565b611f8d6060830184611c5d565b95945050505050565b60608082528101611fa8818789611c80565b90508181036020830152611fbd818587611c80565b9050611fcc6040830184611c5d565b9695505050505050565b60208082528101611bbf8184611ccb565b60408082528101611ff88185611ccb565b905081810360208301526117ac8184611ccb565b6020808252810161151b81611d61565b6020808252810161151b81611d8e565b6020808252810161151b81611dc7565b6020808252810161151b81611e00565b6020810161151b8284611c5d565b604081016120688285611c5d565b611bbf6020830184611c77565b60408101611ed38285611c5d565b6040518181016001600160401b03811182821017156120a157600080fd5b604052919050565b60006001600160401b038211156120bf57600080fd5b5060209081020190565b60006001600160401b038211156120df57600080fd5b506020601f91909101601f19160190565b60200190565b5190565b90815260200190565b919050565b600061151b82612118565b151590565b6001600160a01b031690565b60ff1690565b600061151b82612140565b600061151b826109e2565b600061151b82612108565b82818337506000910152565b60005b8381101561217257818101518382015260200161215a565b83811115610aea5750506000910152565b600061151b82600061151b8261219e565b601f01601f191690565b60601b90565b6121ad81612108565b81146121b857600080fd5b50565b6121ad81612113565b6121ad816109e256fea365627a7a723158207a1d8dfd286d14fcafd1812a4c44813691ac746a5a23fa711ac5551c9509654d6c6578706572696d656e74616cf564736f6c634300050c0040"; - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "contract CNSRegistry"; - readonly name: "registry"; - readonly type: "address"; - }, { - readonly internalType: "contract MintingController"; - readonly name: "mintingController"; - readonly type: "address"; - }]; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "constructor"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly indexed: true; - readonly internalType: "string"; - readonly name: "keyIndex"; - readonly type: "string"; - }, { - readonly indexed: false; - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }]; - readonly name: "NewKey"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "ResetRecords"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly indexed: true; - readonly internalType: "string"; - readonly name: "keyIndex"; - readonly type: "string"; - }, { - readonly indexed: true; - readonly internalType: "string"; - readonly name: "valueIndex"; - readonly type: "string"; - }, { - readonly indexed: false; - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }, { - readonly indexed: false; - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }]; - readonly name: "Set"; - readonly type: "event"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "get"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "keyHash"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getByHash"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }, { - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getMany"; - readonly outputs: readonly [{ - readonly internalType: "string[]"; - readonly name: ""; - readonly type: "string[]"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "uint256[]"; - readonly name: "keyHashes"; - readonly type: "uint256[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "getManyByHash"; - readonly outputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "keyHash"; - readonly type: "uint256"; - }]; - readonly name: "hashToKey"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "uint256[]"; - readonly name: "hashes"; - readonly type: "uint256[]"; - }]; - readonly name: "hashesToKeys"; - readonly outputs: readonly [{ - readonly internalType: "string[]"; - readonly name: ""; - readonly type: "string[]"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "nonceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "preconfigure"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "reconfigure"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "reconfigureFor"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly []; - readonly name: "registry"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "reset"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "resetFor"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }, { - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "set"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "key"; - readonly type: "string"; - }, { - readonly internalType: "string"; - readonly name: "value"; - readonly type: "string"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "setFor"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "setMany"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "setManyFor"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): ResolverInterface; - static connect(address: string, runner?: ContractRunner | null): Resolver; -} -export {}; -//# sourceMappingURL=Resolver__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/Resolver__factory.d.ts.map b/dist/types/factories/dot-crypto/contracts/Resolver__factory.d.ts.map deleted file mode 100644 index ede8f8db..00000000 --- a/dist/types/factories/dot-crypto/contracts/Resolver__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Resolver__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/dot-crypto/contracts/Resolver__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,MAAM,EACN,WAAW,EACX,yBAAyB,EACzB,cAAc,EACf,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,KAAK,EACV,QAAQ,EACR,iBAAiB,EAClB,MAAM,wCAAwC,CAAC;AAqgBhD,aAAK,yBAAyB,GAC1B,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,iBAAkB,SAAQ,eAAe;gBACxC,GAAG,IAAI,EAAE,yBAAyB;IAQrC,oBAAoB,CAC3B,QAAQ,EAAE,WAAW,EACrB,iBAAiB,EAAE,WAAW,EAC9B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAO5B,MAAM,CACb,QAAQ,EAAE,WAAW,EACrB,iBAAiB,EAAE,WAAW,EAC9B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAQtB,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,iBAAiB;IAIlE,MAAM,CAAC,QAAQ,CAAC,QAAQ,4hkBAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,iBAAiB;IAG3C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,QAAQ;CAG1E"} \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/Resolver__factory.js b/dist/types/factories/dot-crypto/contracts/Resolver__factory.js deleted file mode 100644 index 3e566f40..00000000 --- a/dist/types/factories/dot-crypto/contracts/Resolver__factory.js +++ /dev/null @@ -1,545 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.Resolver__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "contract CNSRegistry", - name: "registry", - type: "address", - }, - { - internalType: "contract MintingController", - name: "mintingController", - type: "address", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "constructor", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - indexed: true, - internalType: "string", - name: "keyIndex", - type: "string", - }, - { - indexed: false, - internalType: "string", - name: "key", - type: "string", - }, - ], - name: "NewKey", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "ResetRecords", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - indexed: true, - internalType: "string", - name: "keyIndex", - type: "string", - }, - { - indexed: true, - internalType: "string", - name: "valueIndex", - type: "string", - }, - { - indexed: false, - internalType: "string", - name: "key", - type: "string", - }, - { - indexed: false, - internalType: "string", - name: "value", - type: "string", - }, - ], - name: "Set", - type: "event", - }, - { - constant: true, - inputs: [ - { - internalType: "string", - name: "key", - type: "string", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "get", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "uint256", - name: "keyHash", - type: "uint256", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getByHash", - outputs: [ - { - internalType: "string", - name: "key", - type: "string", - }, - { - internalType: "string", - name: "value", - type: "string", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getMany", - outputs: [ - { - internalType: "string[]", - name: "", - type: "string[]", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "uint256[]", - name: "keyHashes", - type: "uint256[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "getManyByHash", - outputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "uint256", - name: "keyHash", - type: "uint256", - }, - ], - name: "hashToKey", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "uint256[]", - name: "hashes", - type: "uint256[]", - }, - ], - name: "hashesToKeys", - outputs: [ - { - internalType: "string[]", - name: "", - type: "string[]", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "nonceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "preconfigure", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "reconfigure", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "reconfigureFor", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [], - name: "registry", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "reset", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "resetFor", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "string", - name: "key", - type: "string", - }, - { - internalType: "string", - name: "value", - type: "string", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "set", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "string", - name: "key", - type: "string", - }, - { - internalType: "string", - name: "value", - type: "string", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "setFor", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "setMany", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "setManyFor", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, -]; -const _bytecode = "0x60806040523480156200001157600080fd5b506040516200240a3803806200240a833981016040819052620000349162000160565b8180600160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555050806001600160a01b0316637b1039996040518163ffffffff1660e01b815260040160206040518083038186803b1580156200009757600080fd5b505afa158015620000ac573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250620000d2919081019062000137565b6001600160a01b0316826001600160a01b031614620000f057600080fd5b600580546001600160a01b0319166001600160a01b039290921691909117905550620001ea565b80516200012481620001c5565b92915050565b80516200012481620001df565b6000602082840312156200014a57600080fd5b600062000158848462000117565b949350505050565b600080604083850312156200017457600080fd5b60006200018285856200012a565b925050602062000195858286016200012a565b9150509250929050565b60006200012482620001b9565b600062000124826200019f565b6001600160a01b031690565b620001d0816200019f565b8114620001dc57600080fd5b50565b620001d081620001ac565b61221080620001fa6000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c80638c87a4ea116100a2578063b87abc1111610071578063b87abc1114610244578063c597407314610257578063ce92b33e1461026a578063e837ae741461027d578063ec129eea146102905761010b565b80638c87a4ea146101ea5780638f69c188146101fd578063a3557e6c14610210578063b85afd28146102235761010b565b806347c81699116100de57806347c8169914610181578063672b9f81146101945780636ccbae5f146101b55780637b103999146101d55761010b565b80631bd8cc1a146101105780631be5e7ed146101395780632c3d376d14610159578063310bd74b1461016c575b600080fd5b61012361011e3660046117b4565b6102a3565b6040516101309190611eee565b60405180910390f35b61014c610147366004611aec565b6104f2565b6040516101309190611fd6565b61014c610167366004611b21565b610673565b61017f61017a366004611b21565b610714565b005b61017f61018f3660046119b5565b6107c0565b6101a76101a2366004611b94565b6108ef565b604051610130929190611fe7565b6101c86101c3366004611b21565b6109c3565b604051610130919061204c565b6101dd6109d5565b6040516101309190611ea9565b6101236101f836600461191d565b6109e5565b61017f61020b366004611878565b610a74565b61017f61021e366004611878565b610af0565b610236610231366004611951565b610b1b565b604051610130929190611eff565b61017f610252366004611b3f565b610ca9565b61017f610265366004611a39565b610d43565b61017f610278366004611808565b610df9565b61017f61028b366004611808565b610e97565b61017f61029e366004611808565b610f4e565b60015460405163b3f9e4cb60e01b815260609183916001600160a01b039091169063b3f9e4cb906102d890849060040161204c565b60206040518083038186803b1580156102f057600080fd5b505afa158015610304573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610328919081019061178e565b6001600160a01b0316306001600160a01b0316146103615760405162461bcd60e51b81526004016103589061201c565b60405180910390fd5b604080518581526020808702820101909152849060609082801561039957816020015b60608152602001906001900390816103845790505b506000868152600360205260408120549192505b838110156104e557600087815260026020908152604080832085845290915290208989838181106103da57fe5b602002820190508035601e19368490030181126103f657600080fd5b909101602081019150356001600160401b0381111561041457600080fd5b3681900382131561042457600080fd5b604051610432929190611e70565b9081526040805160209281900383018120805460026001821615610100026000190190911604601f810185900485028301850190935282825290929091908301828280156104c15780601f10610496576101008083540402835291602001916104c1565b820191906000526020600020905b8154815290600101906020018083116104a457829003601f168201915b50505050508382815181106104d257fe5b60209081029190910101526001016103ad565b5090979650505050505050565b60015460405163b3f9e4cb60e01b815260609183916001600160a01b039091169063b3f9e4cb9061052790849060040161204c565b60206040518083038186803b15801561053f57600080fd5b505afa158015610553573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610577919081019061178e565b6001600160a01b0316306001600160a01b0316146105a75760405162461bcd60e51b81526004016103589061201c565b6000838152600260209081526040808320600383528184205484529091529081902090516105d6908690611e7d565b9081526040805160209281900383018120805460026001821615610100026000190190911604601f810185900485028301850190935282825290929091908301828280156106655780601f1061063a57610100808354040283529160200191610665565b820191906000526020600020905b81548152906001019060200180831161064857829003601f168201915b505050505091505092915050565b60008181526004602090815260409182902080548351601f60026000196101006001861615020190931692909204918201849004840281018401909452808452606093928301828280156107085780601f106106dd57610100808354040283529160200191610708565b820191906000526020600020905b8154815290600101906020018083116106eb57829003601f168201915b50505050509050919050565b60015460405163430c208160e01b815282916001600160a01b03169063430c2081906107469033908590600401611ec5565b60206040518083038186803b15801561075e57600080fd5b505afa158015610772573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506107969190810190611997565b6107b25760405162461bcd60e51b81526004016103589061202c565b6107bc4283610fec565b5050565b60015460405163430c208160e01b815282916001600160a01b03169063430c2081906107f29033908590600401611ec5565b60206040518083038186803b15801561080a57600080fd5b505afa15801561081e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506108429190810190611997565b61085e5760405162461bcd60e51b81526004016103589061202c565b6108e7600360008481526020019081526020016000205487878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525088925061108e915050565b505050505050565b60015460405163b3f9e4cb60e01b8152606091829184916001600160a01b03169063b3f9e4cb9061092490849060040161204c565b60206040518083038186803b15801561093c57600080fd5b505afa158015610950573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610974919081019061178e565b6001600160a01b0316306001600160a01b0316146109a45760405162461bcd60e51b81526004016103589061201c565b6109ad85610673565b92506109b983856104f2565b9150509250929050565b60009081526020819052604090205490565b6001546001600160a01b03165b90565b6060600082519050606081604051908082528060200260200182016040528015610a2357816020015b6060815260200190600190039081610a0e5790505b50905060005b82811015610a6c57610a4d858281518110610a4057fe5b6020026020010151610673565b828281518110610a5957fe5b6020908102919091010152600101610a29565b509392505050565b610acf63ce92b33e60e01b858585604051602401610a9493929190611f24565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092178252519020838361129f565b600082815260036020526040902054610aea908585856113c3565b50505050565b610b1063ec129eea60e01b858585604051602401610a9493929190611f24565b610aea84848461140a565b60015460405163b3f9e4cb60e01b8152606091829184916001600160a01b03169063b3f9e4cb90610b5090849060040161204c565b60206040518083038186803b158015610b6857600080fd5b505afa158015610b7c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610ba0919081019061178e565b6001600160a01b0316306001600160a01b031614610bd05760405162461bcd60e51b81526004016103589061201c565b8451604080518281526020808402820101909152818015610c0557816020015b6060815260200190600190039081610bf05790505b50935080604051908082528060200260200182016040528015610c3c57816020015b6060815260200190600190039081610c275790505b50925060005b81811015610c9f57610c67878281518110610c5957fe5b6020026020010151876108ef565b8651879084908110610c7557fe5b60200260200101868481518110610c8857fe5b602090810291909101019190915252600101610c42565b5050509250929050565b610d3463310bd74b60e01b84604051602401610cc5919061204c565b60408051601f19818403018152918152602080830180516001600160e01b03166001600160e01b031990951694909417845291519092208251601f8601839004830281018301909352848352918691869086908190840183828082843760009201919091525061129f92505050565b610d3e4284610fec565b505050565b610d676347c8169960e01b8888888888604051602401610cc5959493929190611f96565b610df0600360008581526020019081526020016000205488888080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8c018190048102820181019092528a815292508a915089908190840183828082843760009201919091525089925061108e915050565b50505050505050565b60015460405163430c208160e01b815282916001600160a01b03169063430c208190610e2b9033908590600401611ec5565b60206040518083038186803b158015610e4357600080fd5b505afa158015610e57573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610e7b9190810190611997565b610acf5760405162461bcd60e51b81526004016103589061202c565b6005546040516355138f0d60e11b81526001600160a01b039091169063aa271e1a90610ec7903390600401611eb7565b60206040518083038186803b158015610edf57600080fd5b505afa158015610ef3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610f179190810190611997565b610f335760405162461bcd60e51b81526004016103589061203c565b600081815260036020526040902054610d3e908484846113c3565b60015460405163430c208160e01b815282916001600160a01b03169063430c208190610f809033908590600401611ec5565b60206040518083038186803b158015610f9857600080fd5b505afa158015610fac573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610fd09190810190611997565b610b105760405162461bcd60e51b81526004016103589061202c565b600081815260036020526040808220849055600154905163538361a760e01b81526001600160a01b039091169163538361a79161102d91859160040161205a565b600060405180830381600087803b15801561104757600080fd5b505af115801561105b573d6000803e3d6000fd5b50506040518392507f185c30856dadb58bf097c1f665a52ada7029752dbcad008ea3fefc73bee8c9fe9150600090a25050565b825160208085019190912060008381526002835260408082208883529093528281209251919290916110c1908790611e7d565b908152604051602091819003919091018120546001805463538361a760e01b84526002918316156101000260001901909216041592506001600160a01b03169063538361a7906111179086908690600401612075565b600060405180830381600087803b15801561113157600080fd5b505af1158015611145573d6000803e3d6000fd5b50505060008481526002602090815260408083208a8452909152908190209051869250611173908890611e7d565b90815260200160405180910390209080519060200190611194929190611521565b50600082815260046020526040902054600260001961010060018416150201909116046111dc57600082815260046020908152604090912086516111da92880190611521565b505b801561123157846040516111f09190611e7d565b6040518091039020837f7ae4f661958fbecc2f77be6b0eb280d2a6f604b29e1e7221c82b9da0c4af7f86876040516112289190611fd6565b60405180910390a35b8360405161123f9190611e7d565b6040518091039020856040516112559190611e7d565b6040518091039020847f851ffe8e74d5015261dba0a1f9e1b0e5d42c5af5d2ad1908fee897c7d80a0d92888860405161128f929190611fe7565b60405180910390a4505050505050565b6000828152602081815260408083205490519092916112f59185916112e9916112ce918a913091899101611e39565b60405160208183030381529060405280519060200120611414565b9063ffffffff61144416565b90506001600160a01b0381161580159061138c575060015460405163430c208160e01b81526001600160a01b039091169063430c20819061133c9084908890600401611ee0565b60206040518083038186803b15801561135457600080fd5b505afa158015611368573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061138c9190810190611997565b6113a85760405162461bcd60e51b81526004016103589061200c565b50505060009081526020819052604090208054600101905550565b825160005b818110156108e757611402868683815181106113e057fe5b60200260200101518684815181106113f457fe5b60200260200101518661108e565b6001016113c8565b610f334282610fec565b6000816040516020016114279190611e89565b604051602081830303815290604052805190602001209050919050565b600081516041146114575750600061151b565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a082111561149d576000935050505061151b565b8060ff16601b141580156114b557508060ff16601c14155b156114c6576000935050505061151b565b600186828585604051600081526020016040526040516114e99493929190611f58565b6020604051602081039080840390855afa15801561150b573d6000803e3d6000fd5b5050506020604051035193505050505b92915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061156257805160ff191683800117855561158f565b8280016001018555821561158f579182015b8281111561158f578251825591602001919060010190611574565b5061159b92915061159f565b5090565b6109e291905b8082111561159b57600081556001016115a5565b805161151b816121a4565b60008083601f8401126115d657600080fd5b5081356001600160401b038111156115ed57600080fd5b60208301915083602082028301111561160557600080fd5b9250929050565b600082601f83011261161d57600080fd5b813561163061162b826120a9565b612083565b81815260209384019390925082018360005b8381101561166e57813586016116588882611734565b8452506020928301929190910190600101611642565b5050505092915050565b600082601f83011261168957600080fd5b813561169761162b826120a9565b915081818352602084019350602081019050838560208402820111156116bc57600080fd5b60005b8381101561166e57816116d28882611783565b84525060209283019291909101906001016116bf565b805161151b816121bb565b60008083601f84011261170557600080fd5b5081356001600160401b0381111561171c57600080fd5b60208301915083600182028301111561160557600080fd5b600082601f83011261174557600080fd5b813561175361162b826120c9565b9150808252602083016020830185838301111561176f57600080fd5b61177a83828461214b565b50505092915050565b803561151b816121c4565b6000602082840312156117a057600080fd5b60006117ac84846115b9565b949350505050565b6000806000604084860312156117c957600080fd5b83356001600160401b038111156117df57600080fd5b6117eb868287016115c4565b935093505060206117fe86828701611783565b9150509250925092565b60008060006060848603121561181d57600080fd5b83356001600160401b0381111561183357600080fd5b61183f8682870161160c565b93505060208401356001600160401b0381111561185b57600080fd5b6118678682870161160c565b92505060406117fe86828701611783565b6000806000806080858703121561188e57600080fd5b84356001600160401b038111156118a457600080fd5b6118b08782880161160c565b94505060208501356001600160401b038111156118cc57600080fd5b6118d88782880161160c565b93505060406118e987828801611783565b92505060608501356001600160401b0381111561190557600080fd5b61191187828801611734565b91505092959194509250565b60006020828403121561192f57600080fd5b81356001600160401b0381111561194557600080fd5b6117ac84828501611678565b6000806040838503121561196457600080fd5b82356001600160401b0381111561197a57600080fd5b61198685828601611678565b92505060206109b985828601611783565b6000602082840312156119a957600080fd5b60006117ac84846116e8565b6000806000806000606086880312156119cd57600080fd5b85356001600160401b038111156119e357600080fd5b6119ef888289016116f3565b955095505060208601356001600160401b03811115611a0d57600080fd5b611a19888289016116f3565b93509350506040611a2c88828901611783565b9150509295509295909350565b60008060008060008060006080888a031215611a5457600080fd5b87356001600160401b03811115611a6a57600080fd5b611a768a828b016116f3565b975097505060208801356001600160401b03811115611a9457600080fd5b611aa08a828b016116f3565b95509550506040611ab38a828b01611783565b93505060608801356001600160401b03811115611acf57600080fd5b611adb8a828b016116f3565b925092505092959891949750929550565b60008060408385031215611aff57600080fd5b82356001600160401b03811115611b1557600080fd5b61198685828601611734565b600060208284031215611b3357600080fd5b60006117ac8484611783565b600080600060408486031215611b5457600080fd5b6000611b608686611783565b93505060208401356001600160401b03811115611b7c57600080fd5b611b88868287016116f3565b92509250509250925092565b60008060408385031215611ba757600080fd5b60006119868585611783565b6000611bbf8383611ccb565b9392505050565b611bcf8161212a565b82525050565b611bcf81612108565b611bcf611bea82612108565b612183565b6000611bfa826120f6565b611c0481856120fa565b935083602082028501611c16856120f0565b8060005b85811015611c505784840389528151611c338582611bb3565b9450611c3e836120f0565b60209a909a0199925050600101611c1a565b5091979650505050505050565b611bcf816109e2565b611bcf611c72826109e2565b6109e2565b611bcf81612135565b6000611c8c83856120fa565b9350611c9983858461214b565b611ca283612194565b9093019392505050565b6000611cb88385612103565b9350611cc583858461214b565b50500190565b6000611cd6826120f6565b611ce081856120fa565b9350611cf0818560208601612157565b611ca281612194565b6000611d04826120f6565b611d0e8185612103565b9350611d1e818560208601612157565b9290920192915050565b6000611d35601c83612103565b7f19457468657265756d205369676e6564204d6573736167653a0a3332000000008152601c0192915050565b6000611d6e6011836120fa565b70494e56414c49445f5349474e415455524560781b815260200192915050565b6000611d9b601d836120fa565b7f5245534f4c5645525f44455441434845445f46524f4d5f444f4d41494e000000815260200192915050565b6000611dd4601f836120fa565b7f53454e4445525f49535f4e4f545f415050524f5645445f4f525f4f574e455200815260200192915050565b6000611e0d6014836120fa565b7329a2a72222a92fa4a9afa727aa2fa6a4a72a22a960611b815260200192915050565b611bcf81612124565b6000611e458286611c66565b602082019150611e558285611bde565b601482019150611e658284611c66565b506020019392505050565b60006117ac828486611cac565b6000611bbf8284611cf9565b6000611e9482611d28565b9150611ea08284611c66565b50602001919050565b6020810161151b8284611bd5565b6020810161151b8284611bc6565b60408101611ed38285611bc6565b611bbf6020830184611c5d565b60408101611ed38285611bd5565b60208082528101611bbf8184611bef565b60408082528101611f108185611bef565b905081810360208301526117ac8184611bef565b60608082528101611f358186611bef565b90508181036020830152611f498185611bef565b90506117ac6040830184611c5d565b60808101611f668287611c5d565b611f736020830186611e30565b611f806040830185611c5d565b611f8d6060830184611c5d565b95945050505050565b60608082528101611fa8818789611c80565b90508181036020830152611fbd818587611c80565b9050611fcc6040830184611c5d565b9695505050505050565b60208082528101611bbf8184611ccb565b60408082528101611ff88185611ccb565b905081810360208301526117ac8184611ccb565b6020808252810161151b81611d61565b6020808252810161151b81611d8e565b6020808252810161151b81611dc7565b6020808252810161151b81611e00565b6020810161151b8284611c5d565b604081016120688285611c5d565b611bbf6020830184611c77565b60408101611ed38285611c5d565b6040518181016001600160401b03811182821017156120a157600080fd5b604052919050565b60006001600160401b038211156120bf57600080fd5b5060209081020190565b60006001600160401b038211156120df57600080fd5b506020601f91909101601f19160190565b60200190565b5190565b90815260200190565b919050565b600061151b82612118565b151590565b6001600160a01b031690565b60ff1690565b600061151b82612140565b600061151b826109e2565b600061151b82612108565b82818337506000910152565b60005b8381101561217257818101518382015260200161215a565b83811115610aea5750506000910152565b600061151b82600061151b8261219e565b601f01601f191690565b60601b90565b6121ad81612108565b81146121b857600080fd5b50565b6121ad81612113565b6121ad816109e256fea365627a7a723158207a1d8dfd286d14fcafd1812a4c44813691ac746a5a23fa711ac5551c9509654d6c6578706572696d656e74616cf564736f6c634300050c0040"; -const isSuperArgs = (xs) => xs.length > 1; -class Resolver__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(registry, mintingController, overrides) { - return super.getDeployTransaction(registry, mintingController, overrides || {}); - } - deploy(registry, mintingController, overrides) { - return super.deploy(registry, mintingController, overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.Resolver__factory = Resolver__factory; -Resolver__factory.bytecode = _bytecode; -Resolver__factory.abi = _abi; diff --git a/dist/types/factories/dot-crypto/contracts/controllers/DomainZoneController__factory.d.ts b/dist/types/factories/dot-crypto/contracts/controllers/DomainZoneController__factory.d.ts deleted file mode 100644 index 93afb65b..00000000 --- a/dist/types/factories/dot-crypto/contracts/controllers/DomainZoneController__factory.d.ts +++ /dev/null @@ -1,268 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, AddressLike, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../../common"; -import type { DomainZoneController, DomainZoneControllerInterface } from "../../../../dot-crypto/contracts/controllers/DomainZoneController"; -declare type DomainZoneControllerConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class DomainZoneController__factory extends ContractFactory { - constructor(...args: DomainZoneControllerConstructorParams); - getDeployTransaction(registry: AddressLike, accounts: AddressLike[], overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(registry: AddressLike, accounts: AddressLike[], overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): DomainZoneController__factory; - static readonly bytecode = "0x60806040523480156200001157600080fd5b50604051620016ec380380620016ec8339810160408190526200003491620002d4565b62000048336001600160e01b03620000a716565b600280546001600160a01b0319166001600160a01b03841617905560005b81518110156200009e57620000958282815181106200008157fe5b6020026020010151620000f960201b60201c565b60010162000066565b50505062000487565b620000c28160006200014b60201b6200099e1790919060201c565b6040516001600160a01b038216907f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129990600090a250565b620001148160016200014b60201b6200099e1790919060201c565b6040516001600160a01b038216907fee1504a83b6d4a361f4c1dc78ab59bfa30d6a3b6612c403e86bb01ef2984295f90600090a250565b6200016082826001600160e01b03620001c816565b15620001a3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200019a90620003c7565b60405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b60006001600160a01b0382166200020d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200019a90620003d9565b506001600160a01b03811660009081526020839052604090205460ff165b92915050565b80516200022b8162000462565b600082601f8301126200025057600080fd5b815162000267620002618262000412565b620003eb565b915081818352602084019350602081019050838560208402820111156200028d57600080fd5b60005b83811015620002bd5781620002a6888262000231565b845250602092830192919091019060010162000290565b5050505092915050565b80516200022b816200047c565b60008060408385031215620002e857600080fd5b6000620002f68585620002c7565b92505060208301516001600160401b038111156200031357600080fd5b62000321858286016200023e565b9150509250929050565b60006200033a601f8362000433565b7f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500815260200192915050565b60006200037560228362000433565b7f526f6c65733a206163636f756e7420697320746865207a65726f20616464726581527f7373000000000000000000000000000000000000000000000000000000000000602082015260400192915050565b602080825281016200022b816200032b565b602080825281016200022b8162000366565b6040518181016001600160401b03811182821017156200040a57600080fd5b604052919050565b60006001600160401b038211156200042957600080fd5b5060209081020190565b90815260200190565b60006200022b8262000456565b60006200022b826200043c565b6001600160a01b031690565b6200046d816200043c565b81146200047957600080fd5b50565b6200046d8162000449565b61125580620004976000396000f3fe608060405234801561001057600080fd5b50600436106100b45760003560e01c8063841cb28e11610071578063841cb28e14610138578063bb5f747b1461014b578063ce92b33e1461015e578063d6cd947314610171578063f6e491aa14610179578063f8a6c3d61461018c576100b4565b806310154bad146100b95780632392c189146100ce578063291d9549146100e15780633af32abf146100f45780634c5a628c1461011d5780637362d9c814610125575b600080fd5b6100cc6100c7366004610b89565b61019f565b005b6100cc6100dc366004610bcd565b6101d9565b6100cc6100ef366004610b89565b610266565b610107610102366004610b89565b610294565b6040516101149190611070565b60405180910390f35b6100cc6102ad565b6100cc610133366004610b89565b6102b8565b6100cc610146366004610c07565b6102e6565b610107610159366004610b89565b61065c565b6100cc61016c366004610cf9565b61066e565b6100cc61077f565b6100cc610187366004610cc4565b610788565b6100cc61019a366004610cc4565b6107e1565b6101a83361065c565b6101cd5760405162461bcd60e51b81526004016101c4906110bf565b60405180910390fd5b6101d681610836565b50565b6101e233610294565b6101fe5760405162461bcd60e51b81526004016101c4906110cf565b600254604051632392c18960e01b81526001600160a01b0390911690632392c189906102309085908590600401610feb565b600060405180830381600087803b15801561024a57600080fd5b505af115801561025e573d6000803e3d6000fd5b505050505050565b61026f3361065c565b61028b5760405162461bcd60e51b81526004016101c4906110bf565b6101d68161087e565b60006102a760018363ffffffff6108c616565b92915050565b6102b63361090e565b565b6102c13361065c565b6102dd5760405162461bcd60e51b81526004016101c4906110bf565b6101d681610956565b6102ef33610294565b61030b5760405162461bcd60e51b81526004016101c4906110cf565b60025460405163b3f9e4cb60e01b81526000916001600160a01b03169063b3f9e4cb9061033c9088906004016110df565b60206040518083038186803b15801561035457600080fd5b505afa158015610368573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061038c9190810190610baf565b60025460405163345b169960e11b81529192506000916001600160a01b03909116906368b62d32906103c490899089906004016110ed565b60206040518083038186803b1580156103dc57600080fd5b505afa1580156103f0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506104149190810190610d75565b8451909150156105b357600254604051636c69e63760e11b81526001600160a01b039091169063d8d3cc6e906104529030908a908a90600401611006565b600060405180830381600087803b15801561046c57600080fd5b505af1158015610480573d6000803e3d6000fd5b5050600254604051632392c18960e01b81526001600160a01b039091169250632392c18991506104b69085908590600401610feb565b600060405180830381600087803b1580156104d057600080fd5b505af11580156104e4573d6000803e3d6000fd5b50506040516376094f7560e11b81526001600160a01b038516925063ec129eea91506105189087908790869060040161103c565b600060405180830381600087803b15801561053257600080fd5b505af1158015610546573d6000803e3d6000fd5b505060025460405163559dc3ff60e11b81526001600160a01b03909116925063ab3b87fe915061057c908a908590600401610feb565b600060405180830381600087803b15801561059657600080fd5b505af11580156105aa573d6000803e3d6000fd5b5050505061061a565b600254604051636c69e63760e11b81526001600160a01b039091169063d8d3cc6e906105e7908a908a908a90600401611006565b600060405180830381600087803b15801561060157600080fd5b505af1158015610615573d6000803e3d6000fd5b505050505b85817f5653f60014b57c7e76e4b4be42e724badf242bc2918de8c398c2c3ab542dea388760405161064b919061107e565b60405180910390a350505050505050565b60006102a7818363ffffffff6108c616565b61067733610294565b6106935760405162461bcd60e51b81526004016101c4906110cf565b60025460405163b3f9e4cb60e01b81526000916001600160a01b03169063b3f9e4cb906106c49085906004016110df565b60206040518083038186803b1580156106dc57600080fd5b505afa1580156106f0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506107149190810190610baf565b604051636749599f60e11b81529091506001600160a01b0382169063ce92b33e906107479087908790879060040161103c565b600060405180830381600087803b15801561076157600080fd5b505af1158015610775573d6000803e3d6000fd5b5050505050505050565b6102b63361087e565b6107913361065c565b6107ad5760405162461bcd60e51b81526004016101c4906110bf565b60005b81518110156107dd576107d58282815181106107c857fe5b6020026020010151610836565b6001016107b0565b5050565b6107ea3361065c565b6108065760405162461bcd60e51b81526004016101c4906110bf565b60005b81518110156107dd5761082e82828151811061082157fe5b602002602001015161087e565b600101610809565b61084760018263ffffffff61099e16565b6040516001600160a01b038216907fee1504a83b6d4a361f4c1dc78ab59bfa30d6a3b6612c403e86bb01ef2984295f90600090a250565b61088f60018263ffffffff6109ea16565b6040516001600160a01b038216907f270d9b30cf5b0793bbfd54c9d5b94aeb49462b8148399000265144a8722da6b690600090a250565b60006001600160a01b0382166108ee5760405162461bcd60e51b81526004016101c4906110af565b506001600160a01b03166000908152602091909152604090205460ff1690565b61091f60008263ffffffff6109ea16565b6040516001600160a01b038216907f0a8eb35e5ca14b3d6f28e4abf2f128dbab231a58b56e89beb5d636115001e16590600090a250565b61096760008263ffffffff61099e16565b6040516001600160a01b038216907f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129990600090a250565b6109a882826108c6565b156109c55760405162461bcd60e51b81526004016101c49061108f565b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b6109f482826108c6565b610a105760405162461bcd60e51b81526004016101c49061109f565b6001600160a01b0316600090815260209190915260409020805460ff19169055565b80356102a7816111f5565b80516102a7816111f5565b600082601f830112610a5957600080fd5b8135610a6c610a6782611134565b61110d565b91508181835260208401935060208101905083856020840282011115610a9157600080fd5b60005b83811015610abd5781610aa78882610a32565b8452506020928301929190910190600101610a94565b5050505092915050565b600082601f830112610ad857600080fd5b8135610ae6610a6782611134565b81815260209384019390925082018360005b83811015610abd5781358601610b0e8882610b24565b8452506020928301929190910190600101610af8565b600082601f830112610b3557600080fd5b8135610b43610a6782611155565b91508082526020830160208301858383011115610b5f57600080fd5b610b6a8382846111af565b50505092915050565b80356102a781611209565b80516102a781611209565b600060208284031215610b9b57600080fd5b6000610ba78484610a32565b949350505050565b600060208284031215610bc157600080fd5b6000610ba78484610a3d565b60008060408385031215610be057600080fd5b6000610bec8585610a32565b9250506020610bfd85828601610b73565b9150509250929050565b600080600080600060a08688031215610c1f57600080fd5b6000610c2b8888610a32565b9550506020610c3c88828901610b73565b945050604086013567ffffffffffffffff811115610c5957600080fd5b610c6588828901610b24565b935050606086013567ffffffffffffffff811115610c8257600080fd5b610c8e88828901610ac7565b925050608086013567ffffffffffffffff811115610cab57600080fd5b610cb788828901610ac7565b9150509295509295909350565b600060208284031215610cd657600080fd5b813567ffffffffffffffff811115610ced57600080fd5b610ba784828501610a48565b600080600060608486031215610d0e57600080fd5b833567ffffffffffffffff811115610d2557600080fd5b610d3186828701610ac7565b935050602084013567ffffffffffffffff811115610d4e57600080fd5b610d5a86828701610ac7565b9250506040610d6b86828701610b73565b9150509250925092565b600060208284031215610d8757600080fd5b6000610ba78484610b7e565b6000610d9f8383610e2c565b9392505050565b610daf81611190565b82525050565b6000610dc082611183565b610dca8185611187565b935083602082028501610ddc8561117d565b8060005b85811015610e165784840389528151610df98582610d93565b9450610e048361117d565b60209a909a0199925050600101610de0565b5091979650505050505050565b610daf8161119b565b6000610e3782611183565b610e418185611187565b9350610e518185602086016111bb565b610e5a816111eb565b9093019392505050565b6000610e71601f83611187565b7f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500815260200192915050565b6000610eaa602183611187565b7f526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c8152606560f81b602082015260400192915050565b6000610eed602283611187565b7f526f6c65733a206163636f756e7420697320746865207a65726f206164647265815261737360f01b602082015260400192915050565b6000610f31604083611187565b7f57686974656c69737441646d696e526f6c653a2063616c6c657220646f65732081527f6e6f742068617665207468652057686974656c69737441646d696e20726f6c65602082015260400192915050565b6000610f90603a83611187565b7f57686974656c6973746564526f6c653a2063616c6c657220646f6573206e6f7481527f2068617665207468652057686974656c697374656420726f6c65000000000000602082015260400192915050565b610daf816111ac565b60408101610ff98285610da6565b610d9f6020830184610fe2565b606081016110148286610da6565b6110216020830185610fe2565b81810360408301526110338184610e2c565b95945050505050565b6060808252810161104d8186610db5565b905081810360208301526110618185610db5565b9050610ba76040830184610fe2565b602081016102a78284610e23565b60208082528101610d9f8184610e2c565b602080825281016102a781610e64565b602080825281016102a781610e9d565b602080825281016102a781610ee0565b602080825281016102a781610f24565b602080825281016102a781610f83565b602081016102a78284610fe2565b604081016110fb8285610fe2565b8181036020830152610ba78184610e2c565b60405181810167ffffffffffffffff8111828210171561112c57600080fd5b604052919050565b600067ffffffffffffffff82111561114b57600080fd5b5060209081020190565b600067ffffffffffffffff82111561116c57600080fd5b506020601f91909101601f19160190565b60200190565b5190565b90815260200190565b60006102a7826111a0565b151590565b6001600160a01b031690565b90565b82818337506000910152565b60005b838110156111d65781810151838201526020016111be565b838111156111e5576000848401525b50505050565b601f01601f191690565b6111fe81611190565b81146101d657600080fd5b6111fe816111ac56fea365627a7a723158201133b4cf3b641c36dd1661fa1ca1c9f7a2bf9049abd1a6f0c66110188587e4996c6578706572696d656e74616cf564736f6c634300050c0040"; - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "contract ICNSRegistry"; - readonly name: "registry"; - readonly type: "address"; - }, { - readonly internalType: "address[]"; - readonly name: "accounts"; - readonly type: "address[]"; - }]; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "constructor"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly indexed: true; - readonly internalType: "uint256"; - readonly name: "parentTokenId"; - readonly type: "uint256"; - }, { - readonly indexed: false; - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }]; - readonly name: "MintChild"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "WhitelistAdminAdded"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "WhitelistAdminRemoved"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "WhitelistedAdded"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "WhitelistedRemoved"; - readonly type: "event"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "addWhitelistAdmin"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "addWhitelisted"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address[]"; - readonly name: "accounts"; - readonly type: "address[]"; - }]; - readonly name: "bulkAddWhitelisted"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address[]"; - readonly name: "accounts"; - readonly type: "address[]"; - }]; - readonly name: "bulkRemoveWhitelisted"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "isWhitelistAdmin"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "isWhitelisted"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }, { - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }]; - readonly name: "mintChild"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "removeWhitelisted"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly []; - readonly name: "renounceWhitelistAdmin"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly []; - readonly name: "renounceWhitelisted"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "resolveTo"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "setMany"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): DomainZoneControllerInterface; - static connect(address: string, runner?: ContractRunner | null): DomainZoneController; -} -export {}; -//# sourceMappingURL=DomainZoneController__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/controllers/DomainZoneController__factory.d.ts.map b/dist/types/factories/dot-crypto/contracts/controllers/DomainZoneController__factory.d.ts.map deleted file mode 100644 index 99faef52..00000000 --- a/dist/types/factories/dot-crypto/contracts/controllers/DomainZoneController__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"DomainZoneController__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/dot-crypto/contracts/controllers/DomainZoneController__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,MAAM,EACN,WAAW,EACX,yBAAyB,EACzB,cAAc,EACf,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,KAAK,EACV,oBAAoB,EACpB,6BAA6B,EAC9B,MAAM,mEAAmE,CAAC;AA6T3E,aAAK,qCAAqC,GACtC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,6BAA8B,SAAQ,eAAe;gBACpD,GAAG,IAAI,EAAE,qCAAqC;IAQjD,oBAAoB,CAC3B,QAAQ,EAAE,WAAW,EACrB,QAAQ,EAAE,WAAW,EAAE,EACvB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CACb,QAAQ,EAAE,WAAW,EACrB,QAAQ,EAAE,WAAW,EAAE,EACvB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAItB,2BAA2B;;IAIjD,OAAO,CACd,MAAM,EAAE,cAAc,GAAG,IAAI,GAC5B,6BAA6B;IAIhC,MAAM,CAAC,QAAQ,CAAC,QAAQ,g+WAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,6BAA6B;IAGvD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,oBAAoB;CAOxB"} \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/controllers/DomainZoneController__factory.js b/dist/types/factories/dot-crypto/contracts/controllers/DomainZoneController__factory.js deleted file mode 100644 index 3867d1d8..00000000 --- a/dist/types/factories/dot-crypto/contracts/controllers/DomainZoneController__factory.js +++ /dev/null @@ -1,345 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.DomainZoneController__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "contract ICNSRegistry", - name: "registry", - type: "address", - }, - { - internalType: "address[]", - name: "accounts", - type: "address[]", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "constructor", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - indexed: true, - internalType: "uint256", - name: "parentTokenId", - type: "uint256", - }, - { - indexed: false, - internalType: "string", - name: "label", - type: "string", - }, - ], - name: "MintChild", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "WhitelistAdminAdded", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "WhitelistAdminRemoved", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "WhitelistedAdded", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "WhitelistedRemoved", - type: "event", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "addWhitelistAdmin", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "addWhitelisted", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address[]", - name: "accounts", - type: "address[]", - }, - ], - name: "bulkAddWhitelisted", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address[]", - name: "accounts", - type: "address[]", - }, - ], - name: "bulkRemoveWhitelisted", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "isWhitelistAdmin", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "isWhitelisted", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - ], - name: "mintChild", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "removeWhitelisted", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [], - name: "renounceWhitelistAdmin", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [], - name: "renounceWhitelisted", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "resolveTo", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "setMany", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, -]; -const _bytecode = "0x60806040523480156200001157600080fd5b50604051620016ec380380620016ec8339810160408190526200003491620002d4565b62000048336001600160e01b03620000a716565b600280546001600160a01b0319166001600160a01b03841617905560005b81518110156200009e57620000958282815181106200008157fe5b6020026020010151620000f960201b60201c565b60010162000066565b50505062000487565b620000c28160006200014b60201b6200099e1790919060201c565b6040516001600160a01b038216907f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129990600090a250565b620001148160016200014b60201b6200099e1790919060201c565b6040516001600160a01b038216907fee1504a83b6d4a361f4c1dc78ab59bfa30d6a3b6612c403e86bb01ef2984295f90600090a250565b6200016082826001600160e01b03620001c816565b15620001a3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200019a90620003c7565b60405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b60006001600160a01b0382166200020d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200019a90620003d9565b506001600160a01b03811660009081526020839052604090205460ff165b92915050565b80516200022b8162000462565b600082601f8301126200025057600080fd5b815162000267620002618262000412565b620003eb565b915081818352602084019350602081019050838560208402820111156200028d57600080fd5b60005b83811015620002bd5781620002a6888262000231565b845250602092830192919091019060010162000290565b5050505092915050565b80516200022b816200047c565b60008060408385031215620002e857600080fd5b6000620002f68585620002c7565b92505060208301516001600160401b038111156200031357600080fd5b62000321858286016200023e565b9150509250929050565b60006200033a601f8362000433565b7f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500815260200192915050565b60006200037560228362000433565b7f526f6c65733a206163636f756e7420697320746865207a65726f20616464726581527f7373000000000000000000000000000000000000000000000000000000000000602082015260400192915050565b602080825281016200022b816200032b565b602080825281016200022b8162000366565b6040518181016001600160401b03811182821017156200040a57600080fd5b604052919050565b60006001600160401b038211156200042957600080fd5b5060209081020190565b90815260200190565b60006200022b8262000456565b60006200022b826200043c565b6001600160a01b031690565b6200046d816200043c565b81146200047957600080fd5b50565b6200046d8162000449565b61125580620004976000396000f3fe608060405234801561001057600080fd5b50600436106100b45760003560e01c8063841cb28e11610071578063841cb28e14610138578063bb5f747b1461014b578063ce92b33e1461015e578063d6cd947314610171578063f6e491aa14610179578063f8a6c3d61461018c576100b4565b806310154bad146100b95780632392c189146100ce578063291d9549146100e15780633af32abf146100f45780634c5a628c1461011d5780637362d9c814610125575b600080fd5b6100cc6100c7366004610b89565b61019f565b005b6100cc6100dc366004610bcd565b6101d9565b6100cc6100ef366004610b89565b610266565b610107610102366004610b89565b610294565b6040516101149190611070565b60405180910390f35b6100cc6102ad565b6100cc610133366004610b89565b6102b8565b6100cc610146366004610c07565b6102e6565b610107610159366004610b89565b61065c565b6100cc61016c366004610cf9565b61066e565b6100cc61077f565b6100cc610187366004610cc4565b610788565b6100cc61019a366004610cc4565b6107e1565b6101a83361065c565b6101cd5760405162461bcd60e51b81526004016101c4906110bf565b60405180910390fd5b6101d681610836565b50565b6101e233610294565b6101fe5760405162461bcd60e51b81526004016101c4906110cf565b600254604051632392c18960e01b81526001600160a01b0390911690632392c189906102309085908590600401610feb565b600060405180830381600087803b15801561024a57600080fd5b505af115801561025e573d6000803e3d6000fd5b505050505050565b61026f3361065c565b61028b5760405162461bcd60e51b81526004016101c4906110bf565b6101d68161087e565b60006102a760018363ffffffff6108c616565b92915050565b6102b63361090e565b565b6102c13361065c565b6102dd5760405162461bcd60e51b81526004016101c4906110bf565b6101d681610956565b6102ef33610294565b61030b5760405162461bcd60e51b81526004016101c4906110cf565b60025460405163b3f9e4cb60e01b81526000916001600160a01b03169063b3f9e4cb9061033c9088906004016110df565b60206040518083038186803b15801561035457600080fd5b505afa158015610368573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061038c9190810190610baf565b60025460405163345b169960e11b81529192506000916001600160a01b03909116906368b62d32906103c490899089906004016110ed565b60206040518083038186803b1580156103dc57600080fd5b505afa1580156103f0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506104149190810190610d75565b8451909150156105b357600254604051636c69e63760e11b81526001600160a01b039091169063d8d3cc6e906104529030908a908a90600401611006565b600060405180830381600087803b15801561046c57600080fd5b505af1158015610480573d6000803e3d6000fd5b5050600254604051632392c18960e01b81526001600160a01b039091169250632392c18991506104b69085908590600401610feb565b600060405180830381600087803b1580156104d057600080fd5b505af11580156104e4573d6000803e3d6000fd5b50506040516376094f7560e11b81526001600160a01b038516925063ec129eea91506105189087908790869060040161103c565b600060405180830381600087803b15801561053257600080fd5b505af1158015610546573d6000803e3d6000fd5b505060025460405163559dc3ff60e11b81526001600160a01b03909116925063ab3b87fe915061057c908a908590600401610feb565b600060405180830381600087803b15801561059657600080fd5b505af11580156105aa573d6000803e3d6000fd5b5050505061061a565b600254604051636c69e63760e11b81526001600160a01b039091169063d8d3cc6e906105e7908a908a908a90600401611006565b600060405180830381600087803b15801561060157600080fd5b505af1158015610615573d6000803e3d6000fd5b505050505b85817f5653f60014b57c7e76e4b4be42e724badf242bc2918de8c398c2c3ab542dea388760405161064b919061107e565b60405180910390a350505050505050565b60006102a7818363ffffffff6108c616565b61067733610294565b6106935760405162461bcd60e51b81526004016101c4906110cf565b60025460405163b3f9e4cb60e01b81526000916001600160a01b03169063b3f9e4cb906106c49085906004016110df565b60206040518083038186803b1580156106dc57600080fd5b505afa1580156106f0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506107149190810190610baf565b604051636749599f60e11b81529091506001600160a01b0382169063ce92b33e906107479087908790879060040161103c565b600060405180830381600087803b15801561076157600080fd5b505af1158015610775573d6000803e3d6000fd5b5050505050505050565b6102b63361087e565b6107913361065c565b6107ad5760405162461bcd60e51b81526004016101c4906110bf565b60005b81518110156107dd576107d58282815181106107c857fe5b6020026020010151610836565b6001016107b0565b5050565b6107ea3361065c565b6108065760405162461bcd60e51b81526004016101c4906110bf565b60005b81518110156107dd5761082e82828151811061082157fe5b602002602001015161087e565b600101610809565b61084760018263ffffffff61099e16565b6040516001600160a01b038216907fee1504a83b6d4a361f4c1dc78ab59bfa30d6a3b6612c403e86bb01ef2984295f90600090a250565b61088f60018263ffffffff6109ea16565b6040516001600160a01b038216907f270d9b30cf5b0793bbfd54c9d5b94aeb49462b8148399000265144a8722da6b690600090a250565b60006001600160a01b0382166108ee5760405162461bcd60e51b81526004016101c4906110af565b506001600160a01b03166000908152602091909152604090205460ff1690565b61091f60008263ffffffff6109ea16565b6040516001600160a01b038216907f0a8eb35e5ca14b3d6f28e4abf2f128dbab231a58b56e89beb5d636115001e16590600090a250565b61096760008263ffffffff61099e16565b6040516001600160a01b038216907f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129990600090a250565b6109a882826108c6565b156109c55760405162461bcd60e51b81526004016101c49061108f565b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b6109f482826108c6565b610a105760405162461bcd60e51b81526004016101c49061109f565b6001600160a01b0316600090815260209190915260409020805460ff19169055565b80356102a7816111f5565b80516102a7816111f5565b600082601f830112610a5957600080fd5b8135610a6c610a6782611134565b61110d565b91508181835260208401935060208101905083856020840282011115610a9157600080fd5b60005b83811015610abd5781610aa78882610a32565b8452506020928301929190910190600101610a94565b5050505092915050565b600082601f830112610ad857600080fd5b8135610ae6610a6782611134565b81815260209384019390925082018360005b83811015610abd5781358601610b0e8882610b24565b8452506020928301929190910190600101610af8565b600082601f830112610b3557600080fd5b8135610b43610a6782611155565b91508082526020830160208301858383011115610b5f57600080fd5b610b6a8382846111af565b50505092915050565b80356102a781611209565b80516102a781611209565b600060208284031215610b9b57600080fd5b6000610ba78484610a32565b949350505050565b600060208284031215610bc157600080fd5b6000610ba78484610a3d565b60008060408385031215610be057600080fd5b6000610bec8585610a32565b9250506020610bfd85828601610b73565b9150509250929050565b600080600080600060a08688031215610c1f57600080fd5b6000610c2b8888610a32565b9550506020610c3c88828901610b73565b945050604086013567ffffffffffffffff811115610c5957600080fd5b610c6588828901610b24565b935050606086013567ffffffffffffffff811115610c8257600080fd5b610c8e88828901610ac7565b925050608086013567ffffffffffffffff811115610cab57600080fd5b610cb788828901610ac7565b9150509295509295909350565b600060208284031215610cd657600080fd5b813567ffffffffffffffff811115610ced57600080fd5b610ba784828501610a48565b600080600060608486031215610d0e57600080fd5b833567ffffffffffffffff811115610d2557600080fd5b610d3186828701610ac7565b935050602084013567ffffffffffffffff811115610d4e57600080fd5b610d5a86828701610ac7565b9250506040610d6b86828701610b73565b9150509250925092565b600060208284031215610d8757600080fd5b6000610ba78484610b7e565b6000610d9f8383610e2c565b9392505050565b610daf81611190565b82525050565b6000610dc082611183565b610dca8185611187565b935083602082028501610ddc8561117d565b8060005b85811015610e165784840389528151610df98582610d93565b9450610e048361117d565b60209a909a0199925050600101610de0565b5091979650505050505050565b610daf8161119b565b6000610e3782611183565b610e418185611187565b9350610e518185602086016111bb565b610e5a816111eb565b9093019392505050565b6000610e71601f83611187565b7f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500815260200192915050565b6000610eaa602183611187565b7f526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c8152606560f81b602082015260400192915050565b6000610eed602283611187565b7f526f6c65733a206163636f756e7420697320746865207a65726f206164647265815261737360f01b602082015260400192915050565b6000610f31604083611187565b7f57686974656c69737441646d696e526f6c653a2063616c6c657220646f65732081527f6e6f742068617665207468652057686974656c69737441646d696e20726f6c65602082015260400192915050565b6000610f90603a83611187565b7f57686974656c6973746564526f6c653a2063616c6c657220646f6573206e6f7481527f2068617665207468652057686974656c697374656420726f6c65000000000000602082015260400192915050565b610daf816111ac565b60408101610ff98285610da6565b610d9f6020830184610fe2565b606081016110148286610da6565b6110216020830185610fe2565b81810360408301526110338184610e2c565b95945050505050565b6060808252810161104d8186610db5565b905081810360208301526110618185610db5565b9050610ba76040830184610fe2565b602081016102a78284610e23565b60208082528101610d9f8184610e2c565b602080825281016102a781610e64565b602080825281016102a781610e9d565b602080825281016102a781610ee0565b602080825281016102a781610f24565b602080825281016102a781610f83565b602081016102a78284610fe2565b604081016110fb8285610fe2565b8181036020830152610ba78184610e2c565b60405181810167ffffffffffffffff8111828210171561112c57600080fd5b604052919050565b600067ffffffffffffffff82111561114b57600080fd5b5060209081020190565b600067ffffffffffffffff82111561116c57600080fd5b506020601f91909101601f19160190565b60200190565b5190565b90815260200190565b60006102a7826111a0565b151590565b6001600160a01b031690565b90565b82818337506000910152565b60005b838110156111d65781810151838201526020016111be565b838111156111e5576000848401525b50505050565b601f01601f191690565b6111fe81611190565b81146101d657600080fd5b6111fe816111ac56fea365627a7a723158201133b4cf3b641c36dd1661fa1ca1c9f7a2bf9049abd1a6f0c66110188587e4996c6578706572696d656e74616cf564736f6c634300050c0040"; -const isSuperArgs = (xs) => xs.length > 1; -class DomainZoneController__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(registry, accounts, overrides) { - return super.getDeployTransaction(registry, accounts, overrides || {}); - } - deploy(registry, accounts, overrides) { - return super.deploy(registry, accounts, overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.DomainZoneController__factory = DomainZoneController__factory; -DomainZoneController__factory.bytecode = _bytecode; -DomainZoneController__factory.abi = _abi; diff --git a/dist/types/factories/dot-crypto/contracts/controllers/IMintingController__factory.d.ts b/dist/types/factories/dot-crypto/contracts/controllers/IMintingController__factory.d.ts deleted file mode 100644 index 9805bf62..00000000 --- a/dist/types/factories/dot-crypto/contracts/controllers/IMintingController__factory.d.ts +++ /dev/null @@ -1,60 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IMintingController, IMintingControllerInterface } from "../../../../dot-crypto/contracts/controllers/IMintingController"; -export declare class IMintingController__factory { - static readonly abi: readonly [{ - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }]; - readonly name: "mintSLD"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }]; - readonly name: "safeMintSLD"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }, { - readonly internalType: "bytes"; - readonly name: "_data"; - readonly type: "bytes"; - }]; - readonly name: "safeMintSLD"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): IMintingControllerInterface; - static connect(address: string, runner?: ContractRunner | null): IMintingController; -} -//# sourceMappingURL=IMintingController__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/controllers/IMintingController__factory.d.ts.map b/dist/types/factories/dot-crypto/contracts/controllers/IMintingController__factory.d.ts.map deleted file mode 100644 index ecf9e71f..00000000 --- a/dist/types/factories/dot-crypto/contracts/controllers/IMintingController__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IMintingController__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/dot-crypto/contracts/controllers/IMintingController__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,kBAAkB,EAClB,2BAA2B,EAC5B,MAAM,iEAAiE,CAAC;AAsEzE,qBAAa,2BAA2B;IACtC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,2BAA2B;IAGrD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,kBAAkB;CAGtB"} \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/controllers/IMintingController__factory.js b/dist/types/factories/dot-crypto/contracts/controllers/IMintingController__factory.js deleted file mode 100644 index 6c457bf6..00000000 --- a/dist/types/factories/dot-crypto/contracts/controllers/IMintingController__factory.js +++ /dev/null @@ -1,81 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IMintingController__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - constant: false, - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - ], - name: "mintSLD", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - ], - name: "safeMintSLD", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - { - internalType: "bytes", - name: "_data", - type: "bytes", - }, - ], - name: "safeMintSLD", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, -]; -class IMintingController__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IMintingController__factory = IMintingController__factory; -IMintingController__factory.abi = _abi; diff --git a/dist/types/factories/dot-crypto/contracts/controllers/ISignatureController__factory.d.ts b/dist/types/factories/dot-crypto/contracts/controllers/ISignatureController__factory.d.ts deleted file mode 100644 index cbd3c1e8..00000000 --- a/dist/types/factories/dot-crypto/contracts/controllers/ISignatureController__factory.d.ts +++ /dev/null @@ -1,268 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { ISignatureController, ISignatureControllerInterface } from "../../../../dot-crypto/contracts/controllers/ISignatureController"; -export declare class ISignatureController__factory { - static readonly abi: readonly [{ - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "burnChildFor"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "burnFor"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "mintChildFor"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "nonceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "resolveToFor"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "safeTransferFromChildFor"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }, { - readonly internalType: "bytes"; - readonly name: "_data"; - readonly type: "bytes"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "safeTransferFromChildFor"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "_data"; - readonly type: "bytes"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "safeTransferFromFor"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "safeTransferFromFor"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "transferFromChildFor"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "transferFromFor"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): ISignatureControllerInterface; - static connect(address: string, runner?: ContractRunner | null): ISignatureController; -} -//# sourceMappingURL=ISignatureController__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/controllers/ISignatureController__factory.d.ts.map b/dist/types/factories/dot-crypto/contracts/controllers/ISignatureController__factory.d.ts.map deleted file mode 100644 index a3172130..00000000 --- a/dist/types/factories/dot-crypto/contracts/controllers/ISignatureController__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ISignatureController__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/dot-crypto/contracts/controllers/ISignatureController__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,oBAAoB,EACpB,6BAA6B,EAC9B,MAAM,mEAAmE,CAAC;AA2U3E,qBAAa,6BAA6B;IACxC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,6BAA6B;IAGvD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,oBAAoB;CAOxB"} \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/controllers/ISignatureController__factory.js b/dist/types/factories/dot-crypto/contracts/controllers/ISignatureController__factory.js deleted file mode 100644 index 10c78e51..00000000 --- a/dist/types/factories/dot-crypto/contracts/controllers/ISignatureController__factory.js +++ /dev/null @@ -1,342 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ISignatureController__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "burnChildFor", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "burnFor", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "mintChildFor", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "nonceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "resolveToFor", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "safeTransferFromChildFor", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - { - internalType: "bytes", - name: "_data", - type: "bytes", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "safeTransferFromChildFor", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "_data", - type: "bytes", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "safeTransferFromFor", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "safeTransferFromFor", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "transferFromChildFor", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "transferFromFor", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, -]; -class ISignatureController__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.ISignatureController__factory = ISignatureController__factory; -ISignatureController__factory.abi = _abi; diff --git a/dist/types/factories/dot-crypto/contracts/controllers/IURIPrefixController__factory.d.ts b/dist/types/factories/dot-crypto/contracts/controllers/IURIPrefixController__factory.d.ts deleted file mode 100644 index 9997858e..00000000 --- a/dist/types/factories/dot-crypto/contracts/controllers/IURIPrefixController__factory.d.ts +++ /dev/null @@ -1,20 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { IURIPrefixController, IURIPrefixControllerInterface } from "../../../../dot-crypto/contracts/controllers/IURIPrefixController"; -export declare class IURIPrefixController__factory { - static readonly abi: readonly [{ - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "prefix"; - readonly type: "string"; - }]; - readonly name: "setTokenURIPrefix"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): IURIPrefixControllerInterface; - static connect(address: string, runner?: ContractRunner | null): IURIPrefixController; -} -//# sourceMappingURL=IURIPrefixController__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/controllers/IURIPrefixController__factory.d.ts.map b/dist/types/factories/dot-crypto/contracts/controllers/IURIPrefixController__factory.d.ts.map deleted file mode 100644 index 5197dfe3..00000000 --- a/dist/types/factories/dot-crypto/contracts/controllers/IURIPrefixController__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IURIPrefixController__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/dot-crypto/contracts/controllers/IURIPrefixController__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,oBAAoB,EACpB,6BAA6B,EAC9B,MAAM,mEAAmE,CAAC;AAoB3E,qBAAa,6BAA6B;IACxC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,6BAA6B;IAGvD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,oBAAoB;CAOxB"} \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/controllers/IURIPrefixController__factory.js b/dist/types/factories/dot-crypto/contracts/controllers/IURIPrefixController__factory.js deleted file mode 100644 index d77be0db..00000000 --- a/dist/types/factories/dot-crypto/contracts/controllers/IURIPrefixController__factory.js +++ /dev/null @@ -1,31 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.IURIPrefixController__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - constant: false, - inputs: [ - { - internalType: "string", - name: "prefix", - type: "string", - }, - ], - name: "setTokenURIPrefix", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, -]; -class IURIPrefixController__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.IURIPrefixController__factory = IURIPrefixController__factory; -IURIPrefixController__factory.abi = _abi; diff --git a/dist/types/factories/dot-crypto/contracts/controllers/MintingController__factory.d.ts b/dist/types/factories/dot-crypto/contracts/controllers/MintingController__factory.d.ts deleted file mode 100644 index 4e3d02b8..00000000 --- a/dist/types/factories/dot-crypto/contracts/controllers/MintingController__factory.d.ts +++ /dev/null @@ -1,216 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, AddressLike, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../../common"; -import type { MintingController, MintingControllerInterface } from "../../../../dot-crypto/contracts/controllers/MintingController"; -declare type MintingControllerConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class MintingController__factory extends ContractFactory { - constructor(...args: MintingControllerConstructorParams); - getDeployTransaction(registry: AddressLike, overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(registry: AddressLike, overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): MintingController__factory; - static readonly bytecode = "0x60806040523480156200001157600080fd5b50604051620015bd380380620015bd833981810160405260208110156200003757600080fd5b50516200004d336001600160e01b036200007316565b600180546001600160a01b0319166001600160a01b0392909216919091179055620001ef565b6200008e816000620000c560201b6200120c1790919060201c565b6040516001600160a01b038216907f6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f690600090a250565b620000da82826001600160e01b036200016c16565b156200014757604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b60006001600160a01b038216620001cf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260228152602001806200159b6022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b61139c80620001ff6000396000f3fe608060405234801561001057600080fd5b506004361061009e5760003560e01c806398650275116100665780639865027514610305578063aa271e1a1461030d578063b2da297914610347578063be362e2e146103c5578063c36c2125146104fe5761009e565b80634c0b0ed2146100a35780637b103999146101595780637caf3ad81461017d5780638ad364f814610258578063983b2d56146102df575b600080fd5b610157600480360360408110156100b957600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156100e357600080fd5b8201836020820111156100f557600080fd5b803590602001918460018302840111600160201b8311171561011657600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506105bd945050505050565b005b61016161074c565b604080516001600160a01b039092168252519081900360200190f35b6101576004803603608081101561019357600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156101bd57600080fd5b8201836020820111156101cf57600080fd5b803590602001918460018302840111600160201b831117156101f057600080fd5b919390926001600160a01b0383351692604081019060200135600160201b81111561021a57600080fd5b82018360208201111561022c57600080fd5b803590602001918460018302840111600160201b8311171561024d57600080fd5b50909250905061075b565b6101576004803603606081101561026e57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561029857600080fd5b8201836020820111156102aa57600080fd5b803590602001918460018302840111600160201b831117156102cb57600080fd5b9193509150356001600160a01b0316610957565b610157600480360360208110156102f557600080fd5b50356001600160a01b0316610b2b565b610157610b7b565b6103336004803603602081101561032357600080fd5b50356001600160a01b0316610b86565b604080519115158252519081900360200190f35b6101576004803603604081101561035d57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561038757600080fd5b82018360208201111561039957600080fd5b803590602001918460018302840111600160201b831117156103ba57600080fd5b509092509050610b9e565b610157600480360360608110156103db57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561040557600080fd5b82018360208201111561041757600080fd5b803590602001918460018302840111600160201b8311171561043857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b81111561048a57600080fd5b82018360208201111561049c57600080fd5b803590602001918460018302840111600160201b831117156104bd57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610bf1945050505050565b6101576004803603606081101561051457600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561053e57600080fd5b82018360208201111561055057600080fd5b803590602001918460018302840111600160201b8311171561057157600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550505090356001600160a01b03169150610dec9050565b6105c633610b86565b6106015760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b039092169163b5466669918591849163ebf0c717916004808301926020929190829003018186803b15801561064f57600080fd5b505afa158015610663573d6000803e3d6000fd5b505050506040513d602081101561067957600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052606060448301908152875160648401528751889360840190602085019080838360005b838110156106e25781810151838201526020016106ca565b50505050905090810190601f16801561070f5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15801561073057600080fd5b505af1158015610744573d6000803e3d6000fd5b505050505050565b6001546001600160a01b031690565b6107cf8686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f89018190048102820181019092528781529250879150869081908401838280828437600092019190915250610bf192505050565b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691632525d06a91869184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b15801561082557600080fd5b505afa158015610839573d6000803e3d6000fd5b505050506040513d602081101561084f57600080fd5b5051604080516001600160e01b031960e085901b1681526004810183815260248201928352604482018d90528d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b1580156108bd57600080fd5b505afa1580156108d1573d6000803e3d6000fd5b505050506040513d60208110156108e757600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b15801561093757600080fd5b505af115801561094b573d6000803e3d6000fd5b50505050505050505050565b6109a58484848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250610bf1915050565b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691632525d06a91849184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b1580156109fb57600080fd5b505afa158015610a0f573d6000803e3d6000fd5b505050506040513d6020811015610a2557600080fd5b5051604080516001600160e01b031960e085901b1681526004810183815260248201928352604482018b90528b928b92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b158015610a9357600080fd5b505afa158015610aa7573d6000803e3d6000fd5b505050506040513d6020811015610abd57600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b158015610b0d57600080fd5b505af1158015610b21573d6000803e3d6000fd5b5050505050505050565b610b3433610b86565b610b6f5760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b610b7881611115565b50565b610b843361115d565b565b6000610b98818363ffffffff6111a516565b92915050565b610bec8383838080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250610bf1915050565b505050565b610bfa33610b86565b610c355760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691630467e014918691849163ebf0c717916004808301926020929190829003018186803b158015610c8357600080fd5b505afa158015610c97573d6000803e3d6000fd5b505050506040513d6020811015610cad57600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052608060448301908152885160848401528851899389939291606482019160a40190602087019080838360005b83811015610d1f578181015183820152602001610d07565b50505050905090810190601f168015610d4c5780820380516001836020036101000a031916815260200191505b50838103825284518152845160209182019186019080838360005b83811015610d7f578181015183820152602001610d67565b50505050905090810190601f168015610dac5780820380516001836020036101000a031916815260200191505b509650505050505050600060405180830381600087803b158015610dcf57600080fd5b505af1158015610de3573d6000803e3d6000fd5b50505050505050565b610df533610b86565b610e305760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b039092169163b5466669918691849163ebf0c717916004808301926020929190829003018186803b158015610e7e57600080fd5b505afa158015610e92573d6000803e3d6000fd5b505050506040513d6020811015610ea857600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052606060448301908152885160648401528851899360840190602085019080838360005b83811015610f11578181015183820152602001610ef9565b50505050905090810190601f168015610f3e5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015610f5f57600080fd5b505af1158015610f73573d6000803e3d6000fd5b50506001546040805163ebf0c71760e01b815290516001600160a01b039092169350632525d06a9250849184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b158015610fcd57600080fd5b505afa158015610fe1573d6000803e3d6000fd5b505050506040513d6020811015610ff757600080fd5b5051604080516001600160e01b031960e085901b16815260048101838152602482019283528a5160448301528a518b93919260640190602085019080838360005b83811015611050578181015183820152602001611038565b50505050905090810190601f16801561107d5780820380516001836020036101000a031916815260200191505b50935050505060206040518083038186803b15801561109b57600080fd5b505afa1580156110af573d6000803e3d6000fd5b505050506040513d60208110156110c557600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b158015610dcf57600080fd5b61112660008263ffffffff61120c16565b6040516001600160a01b038216907f6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f690600090a250565b61116e60008263ffffffff61128d16565b6040516001600160a01b038216907fe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb6669290600090a250565b60006001600160a01b0382166111ec5760405162461bcd60e51b81526004018080602001828103825260228152602001806113466022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b61121682826111a5565b15611268576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b61129782826111a5565b6112d25760405162461bcd60e51b81526004018080602001828103825260218152602001806113256021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe4d696e746572526f6c653a2063616c6c657220646f6573206e6f74206861766520746865204d696e74657220726f6c65526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f2061646472657373a265627a7a72315820c058d70355f7d37ff6b3b61cd850cc4a41893e30048389698c062148bf3d2ff464736f6c634300050c0032526f6c65733a206163636f756e7420697320746865207a65726f2061646472657373"; - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "contract CNSRegistry"; - readonly name: "registry"; - readonly type: "address"; - }]; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "constructor"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "MinterAdded"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "MinterRemoved"; - readonly type: "event"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "addMinter"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "isMinter"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }]; - readonly name: "mintSLD"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }, { - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }]; - readonly name: "mintSLDWithResolver"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly []; - readonly name: "registry"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly []; - readonly name: "renounceMinter"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }]; - readonly name: "safeMintSLD"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }, { - readonly internalType: "bytes"; - readonly name: "_data"; - readonly type: "bytes"; - }]; - readonly name: "safeMintSLD"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }, { - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }, { - readonly internalType: "bytes"; - readonly name: "_data"; - readonly type: "bytes"; - }]; - readonly name: "safeMintSLDWithResolver"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }, { - readonly internalType: "address"; - readonly name: "resolver"; - readonly type: "address"; - }]; - readonly name: "safeMintSLDWithResolver"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): MintingControllerInterface; - static connect(address: string, runner?: ContractRunner | null): MintingController; -} -export {}; -//# sourceMappingURL=MintingController__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/controllers/MintingController__factory.d.ts.map b/dist/types/factories/dot-crypto/contracts/controllers/MintingController__factory.d.ts.map deleted file mode 100644 index 083761ed..00000000 --- a/dist/types/factories/dot-crypto/contracts/controllers/MintingController__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"MintingController__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/dot-crypto/contracts/controllers/MintingController__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,MAAM,EACN,WAAW,EACX,yBAAyB,EACzB,cAAc,EACf,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,KAAK,EACV,iBAAiB,EACjB,0BAA0B,EAC3B,MAAM,gEAAgE,CAAC;AA2PxE,aAAK,kCAAkC,GACnC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,0BAA2B,SAAQ,eAAe;gBACjD,GAAG,IAAI,EAAE,kCAAkC;IAQ9C,oBAAoB,CAC3B,QAAQ,EAAE,WAAW,EACrB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CACb,QAAQ,EAAE,WAAW,EACrB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAItB,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,0BAA0B;IAI3E,MAAM,CAAC,QAAQ,CAAC,QAAQ,k4VAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,0BAA0B;IAGpD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,iBAAiB;CAGrB"} \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/controllers/MintingController__factory.js b/dist/types/factories/dot-crypto/contracts/controllers/MintingController__factory.js deleted file mode 100644 index d2279dba..00000000 --- a/dist/types/factories/dot-crypto/contracts/controllers/MintingController__factory.js +++ /dev/null @@ -1,279 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.MintingController__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "contract CNSRegistry", - name: "registry", - type: "address", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "constructor", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "MinterAdded", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "MinterRemoved", - type: "event", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "addMinter", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "isMinter", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - ], - name: "mintSLD", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - { - internalType: "address", - name: "resolver", - type: "address", - }, - ], - name: "mintSLDWithResolver", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [], - name: "registry", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [], - name: "renounceMinter", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - ], - name: "safeMintSLD", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - { - internalType: "bytes", - name: "_data", - type: "bytes", - }, - ], - name: "safeMintSLD", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - { - internalType: "address", - name: "resolver", - type: "address", - }, - { - internalType: "bytes", - name: "_data", - type: "bytes", - }, - ], - name: "safeMintSLDWithResolver", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - { - internalType: "address", - name: "resolver", - type: "address", - }, - ], - name: "safeMintSLDWithResolver", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, -]; -const _bytecode = "0x60806040523480156200001157600080fd5b50604051620015bd380380620015bd833981810160405260208110156200003757600080fd5b50516200004d336001600160e01b036200007316565b600180546001600160a01b0319166001600160a01b0392909216919091179055620001ef565b6200008e816000620000c560201b6200120c1790919060201c565b6040516001600160a01b038216907f6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f690600090a250565b620000da82826001600160e01b036200016c16565b156200014757604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b60006001600160a01b038216620001cf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260228152602001806200159b6022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b61139c80620001ff6000396000f3fe608060405234801561001057600080fd5b506004361061009e5760003560e01c806398650275116100665780639865027514610305578063aa271e1a1461030d578063b2da297914610347578063be362e2e146103c5578063c36c2125146104fe5761009e565b80634c0b0ed2146100a35780637b103999146101595780637caf3ad81461017d5780638ad364f814610258578063983b2d56146102df575b600080fd5b610157600480360360408110156100b957600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156100e357600080fd5b8201836020820111156100f557600080fd5b803590602001918460018302840111600160201b8311171561011657600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506105bd945050505050565b005b61016161074c565b604080516001600160a01b039092168252519081900360200190f35b6101576004803603608081101561019357600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156101bd57600080fd5b8201836020820111156101cf57600080fd5b803590602001918460018302840111600160201b831117156101f057600080fd5b919390926001600160a01b0383351692604081019060200135600160201b81111561021a57600080fd5b82018360208201111561022c57600080fd5b803590602001918460018302840111600160201b8311171561024d57600080fd5b50909250905061075b565b6101576004803603606081101561026e57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561029857600080fd5b8201836020820111156102aa57600080fd5b803590602001918460018302840111600160201b831117156102cb57600080fd5b9193509150356001600160a01b0316610957565b610157600480360360208110156102f557600080fd5b50356001600160a01b0316610b2b565b610157610b7b565b6103336004803603602081101561032357600080fd5b50356001600160a01b0316610b86565b604080519115158252519081900360200190f35b6101576004803603604081101561035d57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561038757600080fd5b82018360208201111561039957600080fd5b803590602001918460018302840111600160201b831117156103ba57600080fd5b509092509050610b9e565b610157600480360360608110156103db57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561040557600080fd5b82018360208201111561041757600080fd5b803590602001918460018302840111600160201b8311171561043857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b81111561048a57600080fd5b82018360208201111561049c57600080fd5b803590602001918460018302840111600160201b831117156104bd57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610bf1945050505050565b6101576004803603606081101561051457600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561053e57600080fd5b82018360208201111561055057600080fd5b803590602001918460018302840111600160201b8311171561057157600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550505090356001600160a01b03169150610dec9050565b6105c633610b86565b6106015760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b039092169163b5466669918591849163ebf0c717916004808301926020929190829003018186803b15801561064f57600080fd5b505afa158015610663573d6000803e3d6000fd5b505050506040513d602081101561067957600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052606060448301908152875160648401528751889360840190602085019080838360005b838110156106e25781810151838201526020016106ca565b50505050905090810190601f16801561070f5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15801561073057600080fd5b505af1158015610744573d6000803e3d6000fd5b505050505050565b6001546001600160a01b031690565b6107cf8686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f89018190048102820181019092528781529250879150869081908401838280828437600092019190915250610bf192505050565b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691632525d06a91869184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b15801561082557600080fd5b505afa158015610839573d6000803e3d6000fd5b505050506040513d602081101561084f57600080fd5b5051604080516001600160e01b031960e085901b1681526004810183815260248201928352604482018d90528d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b1580156108bd57600080fd5b505afa1580156108d1573d6000803e3d6000fd5b505050506040513d60208110156108e757600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b15801561093757600080fd5b505af115801561094b573d6000803e3d6000fd5b50505050505050505050565b6109a58484848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250610bf1915050565b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691632525d06a91849184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b1580156109fb57600080fd5b505afa158015610a0f573d6000803e3d6000fd5b505050506040513d6020811015610a2557600080fd5b5051604080516001600160e01b031960e085901b1681526004810183815260248201928352604482018b90528b928b92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b158015610a9357600080fd5b505afa158015610aa7573d6000803e3d6000fd5b505050506040513d6020811015610abd57600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b158015610b0d57600080fd5b505af1158015610b21573d6000803e3d6000fd5b5050505050505050565b610b3433610b86565b610b6f5760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b610b7881611115565b50565b610b843361115d565b565b6000610b98818363ffffffff6111a516565b92915050565b610bec8383838080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602081019091529081529250610bf1915050565b505050565b610bfa33610b86565b610c355760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b0390921691630467e014918691849163ebf0c717916004808301926020929190829003018186803b158015610c8357600080fd5b505afa158015610c97573d6000803e3d6000fd5b505050506040513d6020811015610cad57600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052608060448301908152885160848401528851899389939291606482019160a40190602087019080838360005b83811015610d1f578181015183820152602001610d07565b50505050905090810190601f168015610d4c5780820380516001836020036101000a031916815260200191505b50838103825284518152845160209182019186019080838360005b83811015610d7f578181015183820152602001610d67565b50505050905090810190601f168015610dac5780820380516001836020036101000a031916815260200191505b509650505050505050600060405180830381600087803b158015610dcf57600080fd5b505af1158015610de3573d6000803e3d6000fd5b50505050505050565b610df533610b86565b610e305760405162461bcd60e51b81526004018080602001828103825260308152602001806112f56030913960400191505060405180910390fd5b6001546040805163ebf0c71760e01b815290516001600160a01b039092169163b5466669918691849163ebf0c717916004808301926020929190829003018186803b158015610e7e57600080fd5b505afa158015610e92573d6000803e3d6000fd5b505050506040513d6020811015610ea857600080fd5b50516040516001600160e01b031960e085901b1681526001600160a01b0383166004820190815260248201839052606060448301908152885160648401528851899360840190602085019080838360005b83811015610f11578181015183820152602001610ef9565b50505050905090810190601f168015610f3e5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015610f5f57600080fd5b505af1158015610f73573d6000803e3d6000fd5b50506001546040805163ebf0c71760e01b815290516001600160a01b039092169350632525d06a9250849184916368b62d3291839163ebf0c717916004808301926020929190829003018186803b158015610fcd57600080fd5b505afa158015610fe1573d6000803e3d6000fd5b505050506040513d6020811015610ff757600080fd5b5051604080516001600160e01b031960e085901b16815260048101838152602482019283528a5160448301528a518b93919260640190602085019080838360005b83811015611050578181015183820152602001611038565b50505050905090810190601f16801561107d5780820380516001836020036101000a031916815260200191505b50935050505060206040518083038186803b15801561109b57600080fd5b505afa1580156110af573d6000803e3d6000fd5b505050506040513d60208110156110c557600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152602483019190915251604480830192600092919082900301818387803b158015610dcf57600080fd5b61112660008263ffffffff61120c16565b6040516001600160a01b038216907f6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f690600090a250565b61116e60008263ffffffff61128d16565b6040516001600160a01b038216907fe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb6669290600090a250565b60006001600160a01b0382166111ec5760405162461bcd60e51b81526004018080602001828103825260228152602001806113466022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b61121682826111a5565b15611268576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b61129782826111a5565b6112d25760405162461bcd60e51b81526004018080602001828103825260218152602001806113256021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe4d696e746572526f6c653a2063616c6c657220646f6573206e6f74206861766520746865204d696e74657220726f6c65526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f2061646472657373a265627a7a72315820c058d70355f7d37ff6b3b61cd850cc4a41893e30048389698c062148bf3d2ff464736f6c634300050c0032526f6c65733a206163636f756e7420697320746865207a65726f2061646472657373"; -const isSuperArgs = (xs) => xs.length > 1; -class MintingController__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(registry, overrides) { - return super.getDeployTransaction(registry, overrides || {}); - } - deploy(registry, overrides) { - return super.deploy(registry, overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.MintingController__factory = MintingController__factory; -MintingController__factory.bytecode = _bytecode; -MintingController__factory.abi = _abi; diff --git a/dist/types/factories/dot-crypto/contracts/controllers/SignatureController__factory.d.ts b/dist/types/factories/dot-crypto/contracts/controllers/SignatureController__factory.d.ts deleted file mode 100644 index 30ca294a..00000000 --- a/dist/types/factories/dot-crypto/contracts/controllers/SignatureController__factory.d.ts +++ /dev/null @@ -1,356 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, AddressLike, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../../common"; -import type { SignatureController, SignatureControllerInterface } from "../../../../dot-crypto/contracts/controllers/SignatureController"; -declare type SignatureControllerConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class SignatureController__factory extends ContractFactory { - constructor(...args: SignatureControllerConstructorParams); - getDeployTransaction(registry: AddressLike, overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(registry: AddressLike, overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): SignatureController__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b506040516120813803806120818339818101604052602081101561003357600080fd5b5051600180546001600160a01b0319166001600160a01b0390921691909117905561201e806100636000396000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c80636debcb8d1161008c578063b34f33c511610066578063b34f33c514610741578063d0778d6c14610814578063ef2c3088146108f2578063f5090c1e14610980576100ea565b80636debcb8d146105ca5780636fab95b3146106585780637b1039991461071d576100ea565b8063511f1112116100c8578063511f1112146103c557806361603dd91461044857806368b6154f146104bd5780636ccbae5f1461059b576100ea565b806307eca395146100ef578063280d9b051461021457806330135293146102f2575b600080fd5b610212600480360360a081101561010557600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561013457600080fd5b82018360208201111561014657600080fd5b803590602001918460018302840111600160201b8311171561016757600080fd5b919390929091602081019035600160201b81111561018457600080fd5b82018360208201111561019657600080fd5b803590602001918460018302840111600160201b831117156101b757600080fd5b919390929091602081019035600160201b8111156101d457600080fd5b8201836020820111156101e657600080fd5b803590602001918460018302840111600160201b8311171561020757600080fd5b509092509050610aae565b005b610212600480360360a081101561022a57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561026457600080fd5b82018360208201111561027657600080fd5b803590602001918460018302840111600160201b8311171561029757600080fd5b919390929091602081019035600160201b8111156102b457600080fd5b8201836020820111156102c657600080fd5b803590602001918460018302840111600160201b831117156102e757600080fd5b509092509050610c92565b6102126004803603608081101561030857600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561033757600080fd5b82018360208201111561034957600080fd5b803590602001918460018302840111600160201b8311171561036a57600080fd5b919390929091602081019035600160201b81111561038757600080fd5b82018360208201111561039957600080fd5b803590602001918460018302840111600160201b831117156103ba57600080fd5b509092509050610e3d565b610212600480360360608110156103db57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561040a57600080fd5b82018360208201111561041c57600080fd5b803590602001918460018302840111600160201b8311171561043d57600080fd5b509092509050610fcc565b6102126004803603604081101561045e57600080fd5b81359190810190604081016020820135600160201b81111561047f57600080fd5b82018360208201111561049157600080fd5b803590602001918460018302840111600160201b831117156104b257600080fd5b5090925090506110c9565b610212600480360360a08110156104d357600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561050d57600080fd5b82018360208201111561051f57600080fd5b803590602001918460018302840111600160201b8311171561054057600080fd5b919390929091602081019035600160201b81111561055d57600080fd5b82018360208201111561056f57600080fd5b803590602001918460018302840111600160201b8311171561059057600080fd5b5090925090506111ae565b6105b8600480360360208110156105b157600080fd5b50356113a8565b60408051918252519081900360200190f35b610212600480360360808110156105e057600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561061a57600080fd5b82018360208201111561062c57600080fd5b803590602001918460018302840111600160201b8311171561064d57600080fd5b5090925090506113ba565b6102126004803603606081101561066e57600080fd5b81359190810190604081016020820135600160201b81111561068f57600080fd5b8201836020820111156106a157600080fd5b803590602001918460018302840111600160201b831117156106c257600080fd5b919390929091602081019035600160201b8111156106df57600080fd5b8201836020820111156106f157600080fd5b803590602001918460018302840111600160201b8311171561071257600080fd5b5090925090506114d4565b610725611675565b604080516001600160a01b039092168252519081900360200190f35b6102126004803603608081101561075757600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561078657600080fd5b82018360208201111561079857600080fd5b803590602001918460018302840111600160201b831117156107b957600080fd5b919390929091602081019035600160201b8111156107d657600080fd5b8201836020820111156107e857600080fd5b803590602001918460018302840111600160201b8311171561080957600080fd5b509092509050611684565b610212600480360360a081101561082a57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561086457600080fd5b82018360208201111561087657600080fd5b803590602001918460018302840111600160201b8311171561089757600080fd5b919390929091602081019035600160201b8111156108b457600080fd5b8201836020820111156108c657600080fd5b803590602001918460018302840111600160201b831117156108e757600080fd5b5090925090506117de565b6102126004803603608081101561090857600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561094257600080fd5b82018360208201111561095457600080fd5b803590602001918460018302840111600160201b8311171561097557600080fd5b5090925090506119e4565b610212600480360360c081101561099657600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156109d057600080fd5b8201836020820111156109e257600080fd5b803590602001918460018302840111600160201b83111715610a0357600080fd5b919390929091602081019035600160201b811115610a2057600080fd5b820183602082011115610a3257600080fd5b803590602001918460018302840111600160201b83111715610a5357600080fd5b919390929091602081019035600160201b811115610a7057600080fd5b820183602082011115610a8257600080fd5b803590602001918460018302840111600160201b83111715610aa357600080fd5b509092509050611ad3565b610bb163ce9fb82b89898989898960405160240180876001600160a01b03166001600160a01b0316815260200186815260200180602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f820116905080830192505050985050505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208884848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b600154604051630119f80560e21b81526001600160a01b038a811660048301908152602483018b9052608060448401908152608484018a90529190931692630467e014928c928c928c928c928c928c92909190606481019060a401878780828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f82011690508083019250505098505050505050505050600060405180830381600087803b158015610c7057600080fd5b505af1158015610c84573d6000803e3d6000fd5b505050505050505050505050565b610d8363b88d4fde888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040516315eab15d60e21b81526001600160a01b03898116600483019081528982166024840152604483018990526080606484019081526084840188905291909316926357aac574928b928b928b928b928b929160a401848480828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b158015610e1c57600080fd5b505af1158015610e30573d6000803e3d6000fd5b5050505050505050505050565b610f09637c69eae28787878760405160240180856001600160a01b03166001600160a01b0316815260200184815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09d909d1b9c909c178c529351909a208a51918d01849004840282018401909a528b81528f985096508b95508a94508493505085019050838280828437600092019190915250611d5492505050565b600154604051630119f80560e21b81526001600160a01b038881166004830190815260248301899052608060448401908152608484018890529190931692630467e014928a928a928a928a9290606481019060a401858580828437600081840152601f19601f8201169050808301925050508381038252600081526020016020019650505050505050600060405180830381600087803b158015610fac57600080fd5b505af1158015610fc0573d6000803e3d6000fd5b50505050505050505050565b604080516001600160a01b038616602482015260448082018690528251808303909101815260649091018252602081810180516001600160e01b0316632392c18960e01b17815291519091208251601f85018390048302810183019093528383526110569290918691908690869081908401838280828437600092019190915250611d5492505050565b60015460408051631292e83560e11b81526001600160a01b0387811660048301526024820187905291519190921691632525d06a91604480830192600092919082900301818387803b1580156110ab57600080fd5b505af11580156110bf573d6000803e3d6000fd5b5050505050505050565b6040805160248082018690528251808303909101815260449091018252602081810180516001600160e01b0316630852cd8d60e31b17815291519091208251601f85018390048302810183019093528383526111449290918691908690869081908401838280828437600092019190915250611d5492505050565b6001546040805163e67ca8a360e01b81526004810186905290516001600160a01b039092169163e67ca8a39160248082019260009290919082900301818387803b15801561119157600080fd5b505af11580156111a5573d6000803e3d6000fd5b50505050505050565b61129f639e5be9a5888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b03909316926302759c37928b928b9286926368b62d32928d928d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561132757600080fd5b505afa15801561133b573d6000803e3d6000fd5b505050506040513d602081101561135157600080fd5b5051604080516001600160e01b031960e087901b1681526001600160a01b03948516600482015292909316602483015260448201529051606480830192600092919082900301818387803b158015610e1c57600080fd5b60009081526020819052604090205490565b604080516001600160a01b0380881660248301528616604482015260648082018690528251808303909101815260849091018252602081810180516001600160e01b0316632142170760e11b17815291519091208251601f850183900483028101830190935283835261144c9290918691908690869081908401838280828437600092019190915250611d5492505050565b600154604080516315eab15d60e21b81526001600160a01b0388811660048301528781166024830152604482018790526080606483015260006084830181905292519316926357aac5749260c48084019391929182900301818387803b1580156114b557600080fd5b505af11580156114c9573d6000803e3d6000fd5b505050505050505050565b611585635cbe11128686866040516024018084815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09c909c1b9b909b178b5293519099208951918c018490048402820184019099528a81528e975095508a9450899350839250508401838280828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b039093169263e67ca8a39284926368b62d32928b928b928b929190606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561160b57600080fd5b505afa15801561161f573d6000803e3d6000fd5b505050506040513d602081101561163557600080fd5b5051604080516001600160e01b031960e085901b168152600481019290925251602480830192600092919082900301818387803b1580156114b557600080fd5b6001546001600160a01b031690565b61175063d8d3cc6e8787878760405160240180856001600160a01b03166001600160a01b0316815260200184815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09d909d1b9c909c178c529351909a208a51918d01849004840282018401909a528b81528f985096508b95508a94508493505085019050838280828437600092019190915250611d5492505050565b60015460405163b546666960e01b81526001600160a01b03888116600483019081526024830189905260606044840190815260648401889052919093169263b5466669928a928a928a928a9290608401848480828437600081840152601f19601f82011690508083019250505095505050505050600060405180830381600087803b158015610fac57600080fd5b6118cf639d743989888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b03909316926357aac574928b928b9286926368b62d32928d928d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561195757600080fd5b505afa15801561196b573d6000803e3d6000fd5b505050506040513d602081101561198157600080fd5b5051604080516001600160e01b031960e087901b1681526001600160a01b039485166004820152929093166024830152604482015260806064820152600060848201819052915160c4808301939282900301818387803b158015610e1c57600080fd5b604080516001600160a01b0380881660248301528616604482015260648082018690528251808303909101815260849091018252602081810180516001600160e01b03166323b872dd60e01b17815291519091208251601f8501839004830281018301909352838352611a769290918691908690869081908401838280828437600092019190915250611d5492505050565b600154604080516302759c3760e01b81526001600160a01b038881166004830152878116602483015260448201879052915191909216916302759c3791606480830192600092919082900301818387803b1580156114b557600080fd5b611bf063c29b52f98a8a8a8a8a8a8a60405160240180886001600160a01b03166001600160a01b03168152602001876001600160a01b03166001600160a01b0316815260200186815260200180602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f82011690508083019250505099505050505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208884848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b8152600481018a815260248201928352604482018990526001600160a01b03909316926357aac574928d928d9286926368b62d32928f928f928f92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b158015611c7857600080fd5b505afa158015611c8c573d6000803e3d6000fd5b505050506040513d6020811015611ca257600080fd5b50516040516001600160e01b031960e086901b1681526001600160a01b0380851660048301908152908416602483015260448201839052608060648301908152608483018b90528b928b92919060a401848480828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b158015611d3157600080fd5b505af1158015611d45573d6000803e3d6000fd5b50505050505050505050505050565b6000828152602081815260408083205481518084018890523060601b81840152605480820183905283518083039091018152607490910190925281519190920120909190611db3908490611da790611ea9565b9063ffffffff611efa16565b90506001600160a01b03811615801590611e4957506001546040805163430c208160e01b81526001600160a01b038481166004830152602482018890529151919092169163430c2081916044808301926020929190829003018186803b158015611e1c57600080fd5b505afa158015611e30573d6000803e3d6000fd5b505050506040513d6020811015611e4657600080fd5b50515b611e8e576040805162461bcd60e51b8152602060048201526011602482015270494e56414c49445f5349474e415455524560781b604482015290519081900360640190fd5b50505060009081526020819052604090208054600101905550565b604080517f19457468657265756d205369676e6564204d6573736167653a0a333200000000602080830191909152603c8083019490945282518083039094018452605c909101909152815191012090565b60008151604114611f0d57506000611fe3565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0821115611f535760009350505050611fe3565b8060ff16601b14158015611f6b57508060ff16601c14155b15611f7c5760009350505050611fe3565b6040805160008152602080820180845289905260ff8416828401526060820186905260808201859052915160019260a0808401939192601f1981019281900390910190855afa158015611fd3573d6000803e3d6000fd5b5050506020604051035193505050505b9291505056fea265627a7a7231582014816bfd0c1519ce8c4cf272eb0526ffdba3abef0df7f17deb0da40bd8abb77f64736f6c634300050c0032"; - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "contract CNSRegistry"; - readonly name: "registry"; - readonly type: "address"; - }]; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "constructor"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "burnChildFor"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "burnFor"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "mintChildFor"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "nonceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly []; - readonly name: "registry"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "resolveToFor"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }, { - readonly internalType: "bytes"; - readonly name: "_data"; - readonly type: "bytes"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "safeMintChildFor"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "safeMintChildFor"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "safeTransferFromChildFor"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }, { - readonly internalType: "bytes"; - readonly name: "_data"; - readonly type: "bytes"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "safeTransferFromChildFor"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "_data"; - readonly type: "bytes"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "safeTransferFromFor"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "safeTransferFromFor"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "transferFromChildFor"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "from"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "to"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly name: "transferFromFor"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): SignatureControllerInterface; - static connect(address: string, runner?: ContractRunner | null): SignatureController; -} -export {}; -//# sourceMappingURL=SignatureController__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/controllers/SignatureController__factory.d.ts.map b/dist/types/factories/dot-crypto/contracts/controllers/SignatureController__factory.d.ts.map deleted file mode 100644 index 1666e826..00000000 --- a/dist/types/factories/dot-crypto/contracts/controllers/SignatureController__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"SignatureController__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/dot-crypto/contracts/controllers/SignatureController__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,MAAM,EACN,WAAW,EACX,yBAAyB,EACzB,cAAc,EACf,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,KAAK,EACV,mBAAmB,EACnB,4BAA4B,EAC7B,MAAM,kEAAkE,CAAC;AA0a1E,aAAK,oCAAoC,GACrC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,4BAA6B,SAAQ,eAAe;gBACnD,GAAG,IAAI,EAAE,oCAAoC;IAQhD,oBAAoB,CAC3B,QAAQ,EAAE,WAAW,EACrB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CACb,QAAQ,EAAE,WAAW,EACrB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAItB,2BAA2B;;IAIjD,OAAO,CACd,MAAM,EAAE,cAAc,GAAG,IAAI,GAC5B,4BAA4B;IAI/B,MAAM,CAAC,QAAQ,CAAC,QAAQ,0wgBAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,4BAA4B;IAGtD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,mBAAmB;CAOvB"} \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/controllers/SignatureController__factory.js b/dist/types/factories/dot-crypto/contracts/controllers/SignatureController__factory.js deleted file mode 100644 index 6d60cbdb..00000000 --- a/dist/types/factories/dot-crypto/contracts/controllers/SignatureController__factory.js +++ /dev/null @@ -1,454 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.SignatureController__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "contract CNSRegistry", - name: "registry", - type: "address", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "constructor", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "burnChildFor", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "burnFor", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "mintChildFor", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "nonceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "registry", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "resolveToFor", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - { - internalType: "bytes", - name: "_data", - type: "bytes", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "safeMintChildFor", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "safeMintChildFor", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "safeTransferFromChildFor", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - { - internalType: "bytes", - name: "_data", - type: "bytes", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "safeTransferFromChildFor", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "_data", - type: "bytes", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "safeTransferFromFor", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "safeTransferFromFor", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "string", - name: "label", - type: "string", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "transferFromChildFor", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - name: "transferFromFor", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, -]; -const _bytecode = "0x608060405234801561001057600080fd5b506040516120813803806120818339818101604052602081101561003357600080fd5b5051600180546001600160a01b0319166001600160a01b0390921691909117905561201e806100636000396000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c80636debcb8d1161008c578063b34f33c511610066578063b34f33c514610741578063d0778d6c14610814578063ef2c3088146108f2578063f5090c1e14610980576100ea565b80636debcb8d146105ca5780636fab95b3146106585780637b1039991461071d576100ea565b8063511f1112116100c8578063511f1112146103c557806361603dd91461044857806368b6154f146104bd5780636ccbae5f1461059b576100ea565b806307eca395146100ef578063280d9b051461021457806330135293146102f2575b600080fd5b610212600480360360a081101561010557600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561013457600080fd5b82018360208201111561014657600080fd5b803590602001918460018302840111600160201b8311171561016757600080fd5b919390929091602081019035600160201b81111561018457600080fd5b82018360208201111561019657600080fd5b803590602001918460018302840111600160201b831117156101b757600080fd5b919390929091602081019035600160201b8111156101d457600080fd5b8201836020820111156101e657600080fd5b803590602001918460018302840111600160201b8311171561020757600080fd5b509092509050610aae565b005b610212600480360360a081101561022a57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561026457600080fd5b82018360208201111561027657600080fd5b803590602001918460018302840111600160201b8311171561029757600080fd5b919390929091602081019035600160201b8111156102b457600080fd5b8201836020820111156102c657600080fd5b803590602001918460018302840111600160201b831117156102e757600080fd5b509092509050610c92565b6102126004803603608081101561030857600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561033757600080fd5b82018360208201111561034957600080fd5b803590602001918460018302840111600160201b8311171561036a57600080fd5b919390929091602081019035600160201b81111561038757600080fd5b82018360208201111561039957600080fd5b803590602001918460018302840111600160201b831117156103ba57600080fd5b509092509050610e3d565b610212600480360360608110156103db57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561040a57600080fd5b82018360208201111561041c57600080fd5b803590602001918460018302840111600160201b8311171561043d57600080fd5b509092509050610fcc565b6102126004803603604081101561045e57600080fd5b81359190810190604081016020820135600160201b81111561047f57600080fd5b82018360208201111561049157600080fd5b803590602001918460018302840111600160201b831117156104b257600080fd5b5090925090506110c9565b610212600480360360a08110156104d357600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561050d57600080fd5b82018360208201111561051f57600080fd5b803590602001918460018302840111600160201b8311171561054057600080fd5b919390929091602081019035600160201b81111561055d57600080fd5b82018360208201111561056f57600080fd5b803590602001918460018302840111600160201b8311171561059057600080fd5b5090925090506111ae565b6105b8600480360360208110156105b157600080fd5b50356113a8565b60408051918252519081900360200190f35b610212600480360360808110156105e057600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561061a57600080fd5b82018360208201111561062c57600080fd5b803590602001918460018302840111600160201b8311171561064d57600080fd5b5090925090506113ba565b6102126004803603606081101561066e57600080fd5b81359190810190604081016020820135600160201b81111561068f57600080fd5b8201836020820111156106a157600080fd5b803590602001918460018302840111600160201b831117156106c257600080fd5b919390929091602081019035600160201b8111156106df57600080fd5b8201836020820111156106f157600080fd5b803590602001918460018302840111600160201b8311171561071257600080fd5b5090925090506114d4565b610725611675565b604080516001600160a01b039092168252519081900360200190f35b6102126004803603608081101561075757600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561078657600080fd5b82018360208201111561079857600080fd5b803590602001918460018302840111600160201b831117156107b957600080fd5b919390929091602081019035600160201b8111156107d657600080fd5b8201836020820111156107e857600080fd5b803590602001918460018302840111600160201b8311171561080957600080fd5b509092509050611684565b610212600480360360a081101561082a57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561086457600080fd5b82018360208201111561087657600080fd5b803590602001918460018302840111600160201b8311171561089757600080fd5b919390929091602081019035600160201b8111156108b457600080fd5b8201836020820111156108c657600080fd5b803590602001918460018302840111600160201b831117156108e757600080fd5b5090925090506117de565b6102126004803603608081101561090857600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561094257600080fd5b82018360208201111561095457600080fd5b803590602001918460018302840111600160201b8311171561097557600080fd5b5090925090506119e4565b610212600480360360c081101561099657600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156109d057600080fd5b8201836020820111156109e257600080fd5b803590602001918460018302840111600160201b83111715610a0357600080fd5b919390929091602081019035600160201b811115610a2057600080fd5b820183602082011115610a3257600080fd5b803590602001918460018302840111600160201b83111715610a5357600080fd5b919390929091602081019035600160201b811115610a7057600080fd5b820183602082011115610a8257600080fd5b803590602001918460018302840111600160201b83111715610aa357600080fd5b509092509050611ad3565b610bb163ce9fb82b89898989898960405160240180876001600160a01b03166001600160a01b0316815260200186815260200180602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f820116905080830192505050985050505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208884848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b600154604051630119f80560e21b81526001600160a01b038a811660048301908152602483018b9052608060448401908152608484018a90529190931692630467e014928c928c928c928c928c928c92909190606481019060a401878780828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f82011690508083019250505098505050505050505050600060405180830381600087803b158015610c7057600080fd5b505af1158015610c84573d6000803e3d6000fd5b505050505050505050505050565b610d8363b88d4fde888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040516315eab15d60e21b81526001600160a01b03898116600483019081528982166024840152604483018990526080606484019081526084840188905291909316926357aac574928b928b928b928b928b929160a401848480828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b158015610e1c57600080fd5b505af1158015610e30573d6000803e3d6000fd5b5050505050505050505050565b610f09637c69eae28787878760405160240180856001600160a01b03166001600160a01b0316815260200184815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09d909d1b9c909c178c529351909a208a51918d01849004840282018401909a528b81528f985096508b95508a94508493505085019050838280828437600092019190915250611d5492505050565b600154604051630119f80560e21b81526001600160a01b038881166004830190815260248301899052608060448401908152608484018890529190931692630467e014928a928a928a928a9290606481019060a401858580828437600081840152601f19601f8201169050808301925050508381038252600081526020016020019650505050505050600060405180830381600087803b158015610fac57600080fd5b505af1158015610fc0573d6000803e3d6000fd5b50505050505050505050565b604080516001600160a01b038616602482015260448082018690528251808303909101815260649091018252602081810180516001600160e01b0316632392c18960e01b17815291519091208251601f85018390048302810183019093528383526110569290918691908690869081908401838280828437600092019190915250611d5492505050565b60015460408051631292e83560e11b81526001600160a01b0387811660048301526024820187905291519190921691632525d06a91604480830192600092919082900301818387803b1580156110ab57600080fd5b505af11580156110bf573d6000803e3d6000fd5b5050505050505050565b6040805160248082018690528251808303909101815260449091018252602081810180516001600160e01b0316630852cd8d60e31b17815291519091208251601f85018390048302810183019093528383526111449290918691908690869081908401838280828437600092019190915250611d5492505050565b6001546040805163e67ca8a360e01b81526004810186905290516001600160a01b039092169163e67ca8a39160248082019260009290919082900301818387803b15801561119157600080fd5b505af11580156111a5573d6000803e3d6000fd5b50505050505050565b61129f639e5be9a5888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b03909316926302759c37928b928b9286926368b62d32928d928d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561132757600080fd5b505afa15801561133b573d6000803e3d6000fd5b505050506040513d602081101561135157600080fd5b5051604080516001600160e01b031960e087901b1681526001600160a01b03948516600482015292909316602483015260448201529051606480830192600092919082900301818387803b158015610e1c57600080fd5b60009081526020819052604090205490565b604080516001600160a01b0380881660248301528616604482015260648082018690528251808303909101815260849091018252602081810180516001600160e01b0316632142170760e11b17815291519091208251601f850183900483028101830190935283835261144c9290918691908690869081908401838280828437600092019190915250611d5492505050565b600154604080516315eab15d60e21b81526001600160a01b0388811660048301528781166024830152604482018790526080606483015260006084830181905292519316926357aac5749260c48084019391929182900301818387803b1580156114b557600080fd5b505af11580156114c9573d6000803e3d6000fd5b505050505050505050565b611585635cbe11128686866040516024018084815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09c909c1b9b909b178b5293519099208951918c018490048402820184019099528a81528e975095508a9450899350839250508401838280828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b039093169263e67ca8a39284926368b62d32928b928b928b929190606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561160b57600080fd5b505afa15801561161f573d6000803e3d6000fd5b505050506040513d602081101561163557600080fd5b5051604080516001600160e01b031960e085901b168152600481019290925251602480830192600092919082900301818387803b1580156114b557600080fd5b6001546001600160a01b031690565b61175063d8d3cc6e8787878760405160240180856001600160a01b03166001600160a01b0316815260200184815260200180602001828103825284848281815260200192508082843760008382015260408051601f928301601f199081169095018181039095018152938152602080850180516001600160e01b031660e09d909d1b9c909c178c529351909a208a51918d01849004840282018401909a528b81528f985096508b95508a94508493505085019050838280828437600092019190915250611d5492505050565b60015460405163b546666960e01b81526001600160a01b03888116600483019081526024830189905260606044840190815260648401889052919093169263b5466669928a928a928a928a9290608401848480828437600081840152601f19601f82011690508083019250505095505050505050600060405180830381600087803b158015610fac57600080fd5b6118cf639d743989888888888860405160240180866001600160a01b03166001600160a01b03168152602001856001600160a01b03166001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f82011690508083019250505096505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b81526004810188815260248201928352604482018790526001600160a01b03909316926357aac574928b928b9286926368b62d32928d928d928d92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b15801561195757600080fd5b505afa15801561196b573d6000803e3d6000fd5b505050506040513d602081101561198157600080fd5b5051604080516001600160e01b031960e087901b1681526001600160a01b039485166004820152929093166024830152604482015260806064820152600060848201819052915160c4808301939282900301818387803b158015610e1c57600080fd5b604080516001600160a01b0380881660248301528616604482015260648082018690528251808303909101815260849091018252602081810180516001600160e01b03166323b872dd60e01b17815291519091208251601f8501839004830281018301909352838352611a769290918691908690869081908401838280828437600092019190915250611d5492505050565b600154604080516302759c3760e01b81526001600160a01b038881166004830152878116602483015260448201879052915191909216916302759c3791606480830192600092919082900301818387803b1580156114b557600080fd5b611bf063c29b52f98a8a8a8a8a8a8a60405160240180886001600160a01b03166001600160a01b03168152602001876001600160a01b03166001600160a01b0316815260200186815260200180602001806020018381038352878782818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f82011690508083019250505099505050505050505050506040516020818303038152906040529060e01b6020820180516001600160e01b038381831617835250505050805190602001208884848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d5492505050565b6001546040805163345b169960e11b8152600481018a815260248201928352604482018990526001600160a01b03909316926357aac574928d928d9286926368b62d32928f928f928f92606401848480828437600083820152604051601f909101601f1916909201965060209550909350505081840390508186803b158015611c7857600080fd5b505afa158015611c8c573d6000803e3d6000fd5b505050506040513d6020811015611ca257600080fd5b50516040516001600160e01b031960e086901b1681526001600160a01b0380851660048301908152908416602483015260448201839052608060648301908152608483018b90528b928b92919060a401848480828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b158015611d3157600080fd5b505af1158015611d45573d6000803e3d6000fd5b50505050505050505050505050565b6000828152602081815260408083205481518084018890523060601b81840152605480820183905283518083039091018152607490910190925281519190920120909190611db3908490611da790611ea9565b9063ffffffff611efa16565b90506001600160a01b03811615801590611e4957506001546040805163430c208160e01b81526001600160a01b038481166004830152602482018890529151919092169163430c2081916044808301926020929190829003018186803b158015611e1c57600080fd5b505afa158015611e30573d6000803e3d6000fd5b505050506040513d6020811015611e4657600080fd5b50515b611e8e576040805162461bcd60e51b8152602060048201526011602482015270494e56414c49445f5349474e415455524560781b604482015290519081900360640190fd5b50505060009081526020819052604090208054600101905550565b604080517f19457468657265756d205369676e6564204d6573736167653a0a333200000000602080830191909152603c8083019490945282518083039094018452605c909101909152815191012090565b60008151604114611f0d57506000611fe3565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0821115611f535760009350505050611fe3565b8060ff16601b14158015611f6b57508060ff16601c14155b15611f7c5760009350505050611fe3565b6040805160008152602080820180845289905260ff8416828401526060820186905260808201859052915160019260a0808401939192601f1981019281900390910190855afa158015611fd3573d6000803e3d6000fd5b5050506020604051035193505050505b9291505056fea265627a7a7231582014816bfd0c1519ce8c4cf272eb0526ffdba3abef0df7f17deb0da40bd8abb77f64736f6c634300050c0032"; -const isSuperArgs = (xs) => xs.length > 1; -class SignatureController__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(registry, overrides) { - return super.getDeployTransaction(registry, overrides || {}); - } - deploy(registry, overrides) { - return super.deploy(registry, overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.SignatureController__factory = SignatureController__factory; -SignatureController__factory.bytecode = _bytecode; -SignatureController__factory.abi = _abi; diff --git a/dist/types/factories/dot-crypto/contracts/controllers/URIPrefixController__factory.d.ts b/dist/types/factories/dot-crypto/contracts/controllers/URIPrefixController__factory.d.ts deleted file mode 100644 index 9aadbf5a..00000000 --- a/dist/types/factories/dot-crypto/contracts/controllers/URIPrefixController__factory.d.ts +++ /dev/null @@ -1,180 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, AddressLike, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../../common"; -import type { URIPrefixController, URIPrefixControllerInterface } from "../../../../dot-crypto/contracts/controllers/URIPrefixController"; -declare type URIPrefixControllerConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class URIPrefixController__factory extends ContractFactory { - constructor(...args: URIPrefixControllerConstructorParams); - getDeployTransaction(registry: AddressLike, overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(registry: AddressLike, overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): URIPrefixController__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b506040516109913803806109918339818101604052602081101561003357600080fd5b5051610047336001600160e01b0361006c16565b600280546001600160a01b0319166001600160a01b03929092169190911790556101e0565b6100848160006100bb60201b6105a61790919060201c565b6040516001600160a01b038216907f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129990600090a250565b6100ce82826001600160e01b0361015f16565b1561013a57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b60006001600160a01b0382166101c0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602281526020018061096f6022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b610780806101ef6000396000f3fe608060405234801561001057600080fd5b50600436106100935760003560e01c80637362d9c8116100665780637362d9c8146101285780637b1039991461014e57806399e0dd7c14610172578063bb5f747b146101e2578063d6cd94731461020857610093565b806310154bad14610098578063291d9549146100c05780633af32abf146100e65780634c5a628c14610120575b600080fd5b6100be600480360360208110156100ae57600080fd5b50356001600160a01b0316610210565b005b6100be600480360360208110156100d657600080fd5b50356001600160a01b0316610260565b61010c600480360360208110156100fc57600080fd5b50356001600160a01b03166102ad565b604080519115158252519081900360200190f35b6100be6102c6565b6100be6004803603602081101561013e57600080fd5b50356001600160a01b03166102d1565b61015661031e565b604080516001600160a01b039092168252519081900360200190f35b6100be6004803603602081101561018857600080fd5b8101906020810181356401000000008111156101a357600080fd5b8201836020820111156101b557600080fd5b803590602001918460018302840111640100000000831117156101d757600080fd5b50909250905061032d565b61010c600480360360208110156101f857600080fd5b50356001600160a01b0316610404565b6100be610416565b61021933610404565b6102545760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d8161041f565b50565b61026933610404565b6102a45760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d81610467565b60006102c060018363ffffffff6104af16565b92915050565b6102cf33610516565b565b6102da33610404565b6103155760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d8161055e565b6002546001600160a01b031690565b610336336102ad565b6103715760405162461bcd60e51b815260040180806020018281038252603a815260200180610712603a913960400191505060405180910390fd5b6002546040516369426cbd60e11b8152602060048201908152602482018490526001600160a01b039092169163d284d97a91859185918190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b1580156103e857600080fd5b505af11580156103fc573d6000803e3d6000fd5b505050505050565b60006102c0818363ffffffff6104af16565b6102cf33610467565b61043060018263ffffffff6105a616565b6040516001600160a01b038216907fee1504a83b6d4a361f4c1dc78ab59bfa30d6a3b6612c403e86bb01ef2984295f90600090a250565b61047860018263ffffffff61062716565b6040516001600160a01b038216907f270d9b30cf5b0793bbfd54c9d5b94aeb49462b8148399000265144a8722da6b690600090a250565b60006001600160a01b0382166104f65760405162461bcd60e51b81526004018080602001828103825260228152602001806106b06022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b61052760008263ffffffff61062716565b6040516001600160a01b038216907f0a8eb35e5ca14b3d6f28e4abf2f128dbab231a58b56e89beb5d636115001e16590600090a250565b61056f60008263ffffffff6105a616565b6040516001600160a01b038216907f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129990600090a250565b6105b082826104af565b15610602576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b61063182826104af565b61066c5760405162461bcd60e51b815260040180806020018281038252602181526020018061068f6021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f206164647265737357686974656c69737441646d696e526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c69737441646d696e20726f6c6557686974656c6973746564526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c697374656420726f6c65a265627a7a72315820debca60946c0819dc5b5c2756c5c1dd8dd8a46f2429fa8a43a4f4362af3030c164736f6c634300050c0032526f6c65733a206163636f756e7420697320746865207a65726f2061646472657373"; - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "contract CNSRegistry"; - readonly name: "registry"; - readonly type: "address"; - }]; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "constructor"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "WhitelistAdminAdded"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "WhitelistAdminRemoved"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "WhitelistedAdded"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "WhitelistedRemoved"; - readonly type: "event"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "addWhitelistAdmin"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "addWhitelisted"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "isWhitelistAdmin"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "isWhitelisted"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly []; - readonly name: "registry"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "removeWhitelisted"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly []; - readonly name: "renounceWhitelistAdmin"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly []; - readonly name: "renounceWhitelisted"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "prefix"; - readonly type: "string"; - }]; - readonly name: "setTokenURIPrefix"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): URIPrefixControllerInterface; - static connect(address: string, runner?: ContractRunner | null): URIPrefixController; -} -export {}; -//# sourceMappingURL=URIPrefixController__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/controllers/URIPrefixController__factory.d.ts.map b/dist/types/factories/dot-crypto/contracts/controllers/URIPrefixController__factory.d.ts.map deleted file mode 100644 index 66d63d79..00000000 --- a/dist/types/factories/dot-crypto/contracts/controllers/URIPrefixController__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"URIPrefixController__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/dot-crypto/contracts/controllers/URIPrefixController__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,MAAM,EACN,WAAW,EACX,yBAAyB,EACzB,cAAc,EACf,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,KAAK,EACV,mBAAmB,EACnB,4BAA4B,EAC7B,MAAM,kEAAkE,CAAC;AA+M1E,aAAK,oCAAoC,GACrC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,4BAA6B,SAAQ,eAAe;gBACnD,GAAG,IAAI,EAAE,oCAAoC;IAQhD,oBAAoB,CAC3B,QAAQ,EAAE,WAAW,EACrB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CACb,QAAQ,EAAE,WAAW,EACrB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAItB,2BAA2B;;IAIjD,OAAO,CACd,MAAM,EAAE,cAAc,GAAG,IAAI,GAC5B,4BAA4B;IAI/B,MAAM,CAAC,QAAQ,CAAC,QAAQ,0yJAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,4BAA4B;IAGtD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,mBAAmB;CAOvB"} \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/controllers/URIPrefixController__factory.js b/dist/types/factories/dot-crypto/contracts/controllers/URIPrefixController__factory.js deleted file mode 100644 index fc0ab33c..00000000 --- a/dist/types/factories/dot-crypto/contracts/controllers/URIPrefixController__factory.js +++ /dev/null @@ -1,235 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.URIPrefixController__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "contract CNSRegistry", - name: "registry", - type: "address", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "constructor", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "WhitelistAdminAdded", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "WhitelistAdminRemoved", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "WhitelistedAdded", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "WhitelistedRemoved", - type: "event", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "addWhitelistAdmin", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "addWhitelisted", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "isWhitelistAdmin", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "isWhitelisted", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "registry", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "removeWhitelisted", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [], - name: "renounceWhitelistAdmin", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [], - name: "renounceWhitelisted", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "string", - name: "prefix", - type: "string", - }, - ], - name: "setTokenURIPrefix", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, -]; -const _bytecode = "0x608060405234801561001057600080fd5b506040516109913803806109918339818101604052602081101561003357600080fd5b5051610047336001600160e01b0361006c16565b600280546001600160a01b0319166001600160a01b03929092169190911790556101e0565b6100848160006100bb60201b6105a61790919060201c565b6040516001600160a01b038216907f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129990600090a250565b6100ce82826001600160e01b0361015f16565b1561013a57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b60006001600160a01b0382166101c0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602281526020018061096f6022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b610780806101ef6000396000f3fe608060405234801561001057600080fd5b50600436106100935760003560e01c80637362d9c8116100665780637362d9c8146101285780637b1039991461014e57806399e0dd7c14610172578063bb5f747b146101e2578063d6cd94731461020857610093565b806310154bad14610098578063291d9549146100c05780633af32abf146100e65780634c5a628c14610120575b600080fd5b6100be600480360360208110156100ae57600080fd5b50356001600160a01b0316610210565b005b6100be600480360360208110156100d657600080fd5b50356001600160a01b0316610260565b61010c600480360360208110156100fc57600080fd5b50356001600160a01b03166102ad565b604080519115158252519081900360200190f35b6100be6102c6565b6100be6004803603602081101561013e57600080fd5b50356001600160a01b03166102d1565b61015661031e565b604080516001600160a01b039092168252519081900360200190f35b6100be6004803603602081101561018857600080fd5b8101906020810181356401000000008111156101a357600080fd5b8201836020820111156101b557600080fd5b803590602001918460018302840111640100000000831117156101d757600080fd5b50909250905061032d565b61010c600480360360208110156101f857600080fd5b50356001600160a01b0316610404565b6100be610416565b61021933610404565b6102545760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d8161041f565b50565b61026933610404565b6102a45760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d81610467565b60006102c060018363ffffffff6104af16565b92915050565b6102cf33610516565b565b6102da33610404565b6103155760405162461bcd60e51b81526004018080602001828103825260408152602001806106d26040913960400191505060405180910390fd5b61025d8161055e565b6002546001600160a01b031690565b610336336102ad565b6103715760405162461bcd60e51b815260040180806020018281038252603a815260200180610712603a913960400191505060405180910390fd5b6002546040516369426cbd60e11b8152602060048201908152602482018490526001600160a01b039092169163d284d97a91859185918190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b1580156103e857600080fd5b505af11580156103fc573d6000803e3d6000fd5b505050505050565b60006102c0818363ffffffff6104af16565b6102cf33610467565b61043060018263ffffffff6105a616565b6040516001600160a01b038216907fee1504a83b6d4a361f4c1dc78ab59bfa30d6a3b6612c403e86bb01ef2984295f90600090a250565b61047860018263ffffffff61062716565b6040516001600160a01b038216907f270d9b30cf5b0793bbfd54c9d5b94aeb49462b8148399000265144a8722da6b690600090a250565b60006001600160a01b0382166104f65760405162461bcd60e51b81526004018080602001828103825260228152602001806106b06022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b61052760008263ffffffff61062716565b6040516001600160a01b038216907f0a8eb35e5ca14b3d6f28e4abf2f128dbab231a58b56e89beb5d636115001e16590600090a250565b61056f60008263ffffffff6105a616565b6040516001600160a01b038216907f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129990600090a250565b6105b082826104af565b15610602576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b61063182826104af565b61066c5760405162461bcd60e51b815260040180806020018281038252602181526020018061068f6021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f206164647265737357686974656c69737441646d696e526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c69737441646d696e20726f6c6557686974656c6973746564526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c697374656420726f6c65a265627a7a72315820debca60946c0819dc5b5c2756c5c1dd8dd8a46f2429fa8a43a4f4362af3030c164736f6c634300050c0032526f6c65733a206163636f756e7420697320746865207a65726f2061646472657373"; -const isSuperArgs = (xs) => xs.length > 1; -class URIPrefixController__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(registry, overrides) { - return super.getDeployTransaction(registry, overrides || {}); - } - deploy(registry, overrides) { - return super.deploy(registry, overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.URIPrefixController__factory = URIPrefixController__factory; -URIPrefixController__factory.bytecode = _bytecode; -URIPrefixController__factory.abi = _abi; diff --git a/dist/types/factories/dot-crypto/contracts/controllers/index.d.ts b/dist/types/factories/dot-crypto/contracts/controllers/index.d.ts deleted file mode 100644 index 27f11ddd..00000000 --- a/dist/types/factories/dot-crypto/contracts/controllers/index.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -export { DomainZoneController__factory } from "./DomainZoneController__factory"; -export { IMintingController__factory } from "./IMintingController__factory"; -export { ISignatureController__factory } from "./ISignatureController__factory"; -export { IURIPrefixController__factory } from "./IURIPrefixController__factory"; -export { MintingController__factory } from "./MintingController__factory"; -export { SignatureController__factory } from "./SignatureController__factory"; -export { URIPrefixController__factory } from "./URIPrefixController__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/controllers/index.d.ts.map b/dist/types/factories/dot-crypto/contracts/controllers/index.d.ts.map deleted file mode 100644 index 2b4604bb..00000000 --- a/dist/types/factories/dot-crypto/contracts/controllers/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/dot-crypto/contracts/controllers/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AAChF,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AAChF,OAAO,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AAChF,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/controllers/index.js b/dist/types/factories/dot-crypto/contracts/controllers/index.js deleted file mode 100644 index e9bd0c2f..00000000 --- a/dist/types/factories/dot-crypto/contracts/controllers/index.js +++ /dev/null @@ -1,17 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.URIPrefixController__factory = exports.SignatureController__factory = exports.MintingController__factory = exports.IURIPrefixController__factory = exports.ISignatureController__factory = exports.IMintingController__factory = exports.DomainZoneController__factory = void 0; -var DomainZoneController__factory_1 = require("./DomainZoneController__factory"); -Object.defineProperty(exports, "DomainZoneController__factory", { enumerable: true, get: function () { return DomainZoneController__factory_1.DomainZoneController__factory; } }); -var IMintingController__factory_1 = require("./IMintingController__factory"); -Object.defineProperty(exports, "IMintingController__factory", { enumerable: true, get: function () { return IMintingController__factory_1.IMintingController__factory; } }); -var ISignatureController__factory_1 = require("./ISignatureController__factory"); -Object.defineProperty(exports, "ISignatureController__factory", { enumerable: true, get: function () { return ISignatureController__factory_1.ISignatureController__factory; } }); -var IURIPrefixController__factory_1 = require("./IURIPrefixController__factory"); -Object.defineProperty(exports, "IURIPrefixController__factory", { enumerable: true, get: function () { return IURIPrefixController__factory_1.IURIPrefixController__factory; } }); -var MintingController__factory_1 = require("./MintingController__factory"); -Object.defineProperty(exports, "MintingController__factory", { enumerable: true, get: function () { return MintingController__factory_1.MintingController__factory; } }); -var SignatureController__factory_1 = require("./SignatureController__factory"); -Object.defineProperty(exports, "SignatureController__factory", { enumerable: true, get: function () { return SignatureController__factory_1.SignatureController__factory; } }); -var URIPrefixController__factory_1 = require("./URIPrefixController__factory"); -Object.defineProperty(exports, "URIPrefixController__factory", { enumerable: true, get: function () { return URIPrefixController__factory_1.URIPrefixController__factory; } }); diff --git a/dist/types/factories/dot-crypto/contracts/index.d.ts b/dist/types/factories/dot-crypto/contracts/index.d.ts deleted file mode 100644 index 5274e981..00000000 --- a/dist/types/factories/dot-crypto/contracts/index.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -export * as controllers from "./controllers"; -export * as util from "./util"; -export { CNSRegistry__factory } from "./CNSRegistry__factory"; -export { ICNSRegistry__factory } from "./ICNSRegistry__factory"; -export { IRegistryReader__factory } from "./IRegistryReader__factory"; -export { IResolver__factory } from "./IResolver__factory"; -export { IResolverReader__factory } from "./IResolverReader__factory"; -export { Resolver__factory } from "./Resolver__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/index.d.ts.map b/dist/types/factories/dot-crypto/contracts/index.d.ts.map deleted file mode 100644 index 83b242bf..00000000 --- a/dist/types/factories/dot-crypto/contracts/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/factories/dot-crypto/contracts/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,WAAW,MAAM,eAAe,CAAC;AAC7C,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAC/B,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/index.js b/dist/types/factories/dot-crypto/contracts/index.js deleted file mode 100644 index 34917c67..00000000 --- a/dist/types/factories/dot-crypto/contracts/index.js +++ /dev/null @@ -1,40 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.Resolver__factory = exports.IResolverReader__factory = exports.IResolver__factory = exports.IRegistryReader__factory = exports.ICNSRegistry__factory = exports.CNSRegistry__factory = exports.util = exports.controllers = void 0; -exports.controllers = __importStar(require("./controllers")); -exports.util = __importStar(require("./util")); -var CNSRegistry__factory_1 = require("./CNSRegistry__factory"); -Object.defineProperty(exports, "CNSRegistry__factory", { enumerable: true, get: function () { return CNSRegistry__factory_1.CNSRegistry__factory; } }); -var ICNSRegistry__factory_1 = require("./ICNSRegistry__factory"); -Object.defineProperty(exports, "ICNSRegistry__factory", { enumerable: true, get: function () { return ICNSRegistry__factory_1.ICNSRegistry__factory; } }); -var IRegistryReader__factory_1 = require("./IRegistryReader__factory"); -Object.defineProperty(exports, "IRegistryReader__factory", { enumerable: true, get: function () { return IRegistryReader__factory_1.IRegistryReader__factory; } }); -var IResolver__factory_1 = require("./IResolver__factory"); -Object.defineProperty(exports, "IResolver__factory", { enumerable: true, get: function () { return IResolver__factory_1.IResolver__factory; } }); -var IResolverReader__factory_1 = require("./IResolverReader__factory"); -Object.defineProperty(exports, "IResolverReader__factory", { enumerable: true, get: function () { return IResolverReader__factory_1.IResolverReader__factory; } }); -var Resolver__factory_1 = require("./Resolver__factory"); -Object.defineProperty(exports, "Resolver__factory", { enumerable: true, get: function () { return Resolver__factory_1.Resolver__factory; } }); diff --git a/dist/types/factories/dot-crypto/contracts/util/BulkWhitelistedRole__factory.d.ts b/dist/types/factories/dot-crypto/contracts/util/BulkWhitelistedRole__factory.d.ts deleted file mode 100644 index 40922906..00000000 --- a/dist/types/factories/dot-crypto/contracts/util/BulkWhitelistedRole__factory.d.ts +++ /dev/null @@ -1,171 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../../common"; -import type { BulkWhitelistedRole, BulkWhitelistedRoleInterface } from "../../../../dot-crypto/contracts/util/BulkWhitelistedRole"; -declare type BulkWhitelistedRoleConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class BulkWhitelistedRole__factory extends ContractFactory { - constructor(...args: BulkWhitelistedRoleConstructorParams); - getDeployTransaction(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): BulkWhitelistedRole__factory; - static readonly bytecode = "0x6080604052610016336001600160e01b0361001b16565b61018f565b61003381600061006a60201b61065e1790919060201c565b6040516001600160a01b038216907f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129990600090a250565b61007d82826001600160e01b0361010e16565b156100e957604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b60006001600160a01b03821661016f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602281526020018061099c6022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b6107fe8061019e6000396000f3fe608060405234801561001057600080fd5b50600436106100935760003560e01c80637362d9c8116100665780637362d9c814610128578063bb5f747b1461014e578063d6cd947314610174578063f6e491aa1461017c578063f8a6c3d61461021f57610093565b806310154bad14610098578063291d9549146100c05780633af32abf146100e65780634c5a628c14610120575b600080fd5b6100be600480360360208110156100ae57600080fd5b50356001600160a01b03166102c2565b005b6100be600480360360208110156100d657600080fd5b50356001600160a01b0316610312565b61010c600480360360208110156100fc57600080fd5b50356001600160a01b031661035f565b604080519115158252519081900360200190f35b6100be610378565b6100be6004803603602081101561013e57600080fd5b50356001600160a01b0316610383565b61010c6004803603602081101561016457600080fd5b50356001600160a01b03166103d0565b6100be6103e2565b6100be6004803603602081101561019257600080fd5b8101906020810181356401000000008111156101ad57600080fd5b8201836020820111156101bf57600080fd5b803590602001918460208302840111640100000000831117156101e157600080fd5b9190808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152509295506103eb945050505050565b6100be6004803603602081101561023557600080fd5b81019060208101813564010000000081111561025057600080fd5b82018360208201111561026257600080fd5b8035906020019184602083028401116401000000008311171561028457600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250929550610463945050505050565b6102cb336103d0565b6103065760405162461bcd60e51b815260040180806020018281038252604081526020018061078a6040913960400191505060405180910390fd5b61030f816104d7565b50565b61031b336103d0565b6103565760405162461bcd60e51b815260040180806020018281038252604081526020018061078a6040913960400191505060405180910390fd5b61030f8161051f565b600061037260018363ffffffff61056716565b92915050565b610381336105ce565b565b61038c336103d0565b6103c75760405162461bcd60e51b815260040180806020018281038252604081526020018061078a6040913960400191505060405180910390fd5b61030f81610616565b6000610372818363ffffffff61056716565b6103813361051f565b6103f4336103d0565b61042f5760405162461bcd60e51b815260040180806020018281038252604081526020018061078a6040913960400191505060405180910390fd5b60005b815181101561045f5761045782828151811061044a57fe5b60200260200101516104d7565b600101610432565b5050565b61046c336103d0565b6104a75760405162461bcd60e51b815260040180806020018281038252604081526020018061078a6040913960400191505060405180910390fd5b60005b815181101561045f576104cf8282815181106104c257fe5b602002602001015161051f565b6001016104aa565b6104e860018263ffffffff61065e16565b6040516001600160a01b038216907fee1504a83b6d4a361f4c1dc78ab59bfa30d6a3b6612c403e86bb01ef2984295f90600090a250565b61053060018263ffffffff6106df16565b6040516001600160a01b038216907f270d9b30cf5b0793bbfd54c9d5b94aeb49462b8148399000265144a8722da6b690600090a250565b60006001600160a01b0382166105ae5760405162461bcd60e51b81526004018080602001828103825260228152602001806107686022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b6105df60008263ffffffff6106df16565b6040516001600160a01b038216907f0a8eb35e5ca14b3d6f28e4abf2f128dbab231a58b56e89beb5d636115001e16590600090a250565b61062760008263ffffffff61065e16565b6040516001600160a01b038216907f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129990600090a250565b6106688282610567565b156106ba576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b6106e98282610567565b6107245760405162461bcd60e51b81526004018080602001828103825260218152602001806107476021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f206164647265737357686974656c69737441646d696e526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c69737441646d696e20726f6c65a265627a7a7231582035dbd8362e05f6fd37a31d481003d9409cc607f91fc47e2eab1cf7fff7af997064736f6c634300050c0032526f6c65733a206163636f756e7420697320746865207a65726f2061646472657373"; - static readonly abi: readonly [{ - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "WhitelistAdminAdded"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "WhitelistAdminRemoved"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "WhitelistedAdded"; - readonly type: "event"; - }, { - readonly anonymous: false; - readonly inputs: readonly [{ - readonly indexed: true; - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "WhitelistedRemoved"; - readonly type: "event"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "addWhitelistAdmin"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "addWhitelisted"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address[]"; - readonly name: "accounts"; - readonly type: "address[]"; - }]; - readonly name: "bulkAddWhitelisted"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address[]"; - readonly name: "accounts"; - readonly type: "address[]"; - }]; - readonly name: "bulkRemoveWhitelisted"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "isWhitelistAdmin"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "isWhitelisted"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "removeWhitelisted"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly []; - readonly name: "renounceWhitelistAdmin"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly []; - readonly name: "renounceWhitelisted"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): BulkWhitelistedRoleInterface; - static connect(address: string, runner?: ContractRunner | null): BulkWhitelistedRole; -} -export {}; -//# sourceMappingURL=BulkWhitelistedRole__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/util/BulkWhitelistedRole__factory.d.ts.map b/dist/types/factories/dot-crypto/contracts/util/BulkWhitelistedRole__factory.d.ts.map deleted file mode 100644 index 88ba0912..00000000 --- a/dist/types/factories/dot-crypto/contracts/util/BulkWhitelistedRole__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"BulkWhitelistedRole__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/dot-crypto/contracts/util/BulkWhitelistedRole__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,KAAK,EACV,mBAAmB,EACnB,4BAA4B,EAC7B,MAAM,2DAA2D,CAAC;AAmMnE,aAAK,oCAAoC,GACrC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,4BAA6B,SAAQ,eAAe;gBACnD,GAAG,IAAI,EAAE,oCAAoC;IAQhD,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CACd,MAAM,EAAE,cAAc,GAAG,IAAI,GAC5B,4BAA4B;IAI/B,MAAM,CAAC,QAAQ,CAAC,QAAQ,o4JAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,4BAA4B;IAGtD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,mBAAmB;CAOvB"} \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/util/BulkWhitelistedRole__factory.js b/dist/types/factories/dot-crypto/contracts/util/BulkWhitelistedRole__factory.js deleted file mode 100644 index 2b99afd4..00000000 --- a/dist/types/factories/dot-crypto/contracts/util/BulkWhitelistedRole__factory.js +++ /dev/null @@ -1,223 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.BulkWhitelistedRole__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "WhitelistAdminAdded", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "WhitelistAdminRemoved", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "WhitelistedAdded", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "WhitelistedRemoved", - type: "event", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "addWhitelistAdmin", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "addWhitelisted", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address[]", - name: "accounts", - type: "address[]", - }, - ], - name: "bulkAddWhitelisted", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address[]", - name: "accounts", - type: "address[]", - }, - ], - name: "bulkRemoveWhitelisted", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "isWhitelistAdmin", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "isWhitelisted", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "removeWhitelisted", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [], - name: "renounceWhitelistAdmin", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [], - name: "renounceWhitelisted", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, -]; -const _bytecode = "0x6080604052610016336001600160e01b0361001b16565b61018f565b61003381600061006a60201b61065e1790919060201c565b6040516001600160a01b038216907f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129990600090a250565b61007d82826001600160e01b0361010e16565b156100e957604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b60006001600160a01b03821661016f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602281526020018061099c6022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b6107fe8061019e6000396000f3fe608060405234801561001057600080fd5b50600436106100935760003560e01c80637362d9c8116100665780637362d9c814610128578063bb5f747b1461014e578063d6cd947314610174578063f6e491aa1461017c578063f8a6c3d61461021f57610093565b806310154bad14610098578063291d9549146100c05780633af32abf146100e65780634c5a628c14610120575b600080fd5b6100be600480360360208110156100ae57600080fd5b50356001600160a01b03166102c2565b005b6100be600480360360208110156100d657600080fd5b50356001600160a01b0316610312565b61010c600480360360208110156100fc57600080fd5b50356001600160a01b031661035f565b604080519115158252519081900360200190f35b6100be610378565b6100be6004803603602081101561013e57600080fd5b50356001600160a01b0316610383565b61010c6004803603602081101561016457600080fd5b50356001600160a01b03166103d0565b6100be6103e2565b6100be6004803603602081101561019257600080fd5b8101906020810181356401000000008111156101ad57600080fd5b8201836020820111156101bf57600080fd5b803590602001918460208302840111640100000000831117156101e157600080fd5b9190808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152509295506103eb945050505050565b6100be6004803603602081101561023557600080fd5b81019060208101813564010000000081111561025057600080fd5b82018360208201111561026257600080fd5b8035906020019184602083028401116401000000008311171561028457600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250929550610463945050505050565b6102cb336103d0565b6103065760405162461bcd60e51b815260040180806020018281038252604081526020018061078a6040913960400191505060405180910390fd5b61030f816104d7565b50565b61031b336103d0565b6103565760405162461bcd60e51b815260040180806020018281038252604081526020018061078a6040913960400191505060405180910390fd5b61030f8161051f565b600061037260018363ffffffff61056716565b92915050565b610381336105ce565b565b61038c336103d0565b6103c75760405162461bcd60e51b815260040180806020018281038252604081526020018061078a6040913960400191505060405180910390fd5b61030f81610616565b6000610372818363ffffffff61056716565b6103813361051f565b6103f4336103d0565b61042f5760405162461bcd60e51b815260040180806020018281038252604081526020018061078a6040913960400191505060405180910390fd5b60005b815181101561045f5761045782828151811061044a57fe5b60200260200101516104d7565b600101610432565b5050565b61046c336103d0565b6104a75760405162461bcd60e51b815260040180806020018281038252604081526020018061078a6040913960400191505060405180910390fd5b60005b815181101561045f576104cf8282815181106104c257fe5b602002602001015161051f565b6001016104aa565b6104e860018263ffffffff61065e16565b6040516001600160a01b038216907fee1504a83b6d4a361f4c1dc78ab59bfa30d6a3b6612c403e86bb01ef2984295f90600090a250565b61053060018263ffffffff6106df16565b6040516001600160a01b038216907f270d9b30cf5b0793bbfd54c9d5b94aeb49462b8148399000265144a8722da6b690600090a250565b60006001600160a01b0382166105ae5760405162461bcd60e51b81526004018080602001828103825260228152602001806107686022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b6105df60008263ffffffff6106df16565b6040516001600160a01b038216907f0a8eb35e5ca14b3d6f28e4abf2f128dbab231a58b56e89beb5d636115001e16590600090a250565b61062760008263ffffffff61065e16565b6040516001600160a01b038216907f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129990600090a250565b6106688282610567565b156106ba576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b6106e98282610567565b6107245760405162461bcd60e51b81526004018080602001828103825260218152602001806107476021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f206164647265737357686974656c69737441646d696e526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c69737441646d696e20726f6c65a265627a7a7231582035dbd8362e05f6fd37a31d481003d9409cc607f91fc47e2eab1cf7fff7af997064736f6c634300050c0032526f6c65733a206163636f756e7420697320746865207a65726f2061646472657373"; -const isSuperArgs = (xs) => xs.length > 1; -class BulkWhitelistedRole__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(overrides) { - return super.getDeployTransaction(overrides || {}); - } - deploy(overrides) { - return super.deploy(overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.BulkWhitelistedRole__factory = BulkWhitelistedRole__factory; -BulkWhitelistedRole__factory.bytecode = _bytecode; -BulkWhitelistedRole__factory.abi = _abi; diff --git a/dist/types/factories/dot-crypto/contracts/util/ControllerRole__factory.d.ts b/dist/types/factories/dot-crypto/contracts/util/ControllerRole__factory.d.ts deleted file mode 100644 index 7ec841ef..00000000 --- a/dist/types/factories/dot-crypto/contracts/util/ControllerRole__factory.d.ts +++ /dev/null @@ -1,64 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../../common"; -import type { ControllerRole, ControllerRoleInterface } from "../../../../dot-crypto/contracts/util/ControllerRole"; -declare type ControllerRoleConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class ControllerRole__factory extends ContractFactory { - constructor(...args: ControllerRoleConstructorParams); - getDeployTransaction(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): ControllerRole__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b50610023336001600160e01b0361002816565b610168565b61004081600061004360201b6101e11790919060201c565b50565b61005682826001600160e01b036100e716565b156100c257604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b60006001600160a01b038216610148576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260228152602001806104516022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b6102da806101776000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806366ac3b6814610046578063a7fc7a0714610050578063b429afeb14610076575b600080fd5b61004e6100b0565b005b61004e6004803603602081101561006657600080fd5b50356001600160a01b03166100bb565b61009c6004803603602081101561008c57600080fd5b50356001600160a01b03166100d9565b604080519115158252519081900360200190f35b6100b9336100f1565b565b6100c4336100d9565b6100cd57600080fd5b6100d681610102565b50565b60006100eb818363ffffffff61011316565b92915050565b6100d660008263ffffffff61017a16565b6100d660008263ffffffff6101e116565b60006001600160a01b03821661015a5760405162461bcd60e51b81526004018080602001828103825260228152602001806102846022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b6101848282610113565b6101bf5760405162461bcd60e51b81526004018080602001828103825260218152602001806102636021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff19169055565b6101eb8282610113565b1561023d576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff1916600117905556fe526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f2061646472657373a265627a7a723158203f5cad0be955d3ba0bdc521b5cecdcc2ff4d35429e8c84794fb194ccfc853b6664736f6c634300050c0032526f6c65733a206163636f756e7420697320746865207a65726f2061646472657373"; - static readonly abi: readonly [{ - readonly inputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "constructor"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "addController"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "account"; - readonly type: "address"; - }]; - readonly name: "isController"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: ""; - readonly type: "bool"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly []; - readonly name: "renounceController"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): ControllerRoleInterface; - static connect(address: string, runner?: ContractRunner | null): ControllerRole; -} -export {}; -//# sourceMappingURL=ControllerRole__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/util/ControllerRole__factory.d.ts.map b/dist/types/factories/dot-crypto/contracts/util/ControllerRole__factory.d.ts.map deleted file mode 100644 index 820da9f3..00000000 --- a/dist/types/factories/dot-crypto/contracts/util/ControllerRole__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ControllerRole__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/dot-crypto/contracts/util/ControllerRole__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,KAAK,EACV,cAAc,EACd,uBAAuB,EACxB,MAAM,sDAAsD,CAAC;AA2D9D,aAAK,+BAA+B,GAChC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,uBAAwB,SAAQ,eAAe;gBAC9C,GAAG,IAAI,EAAE,+BAA+B;IAQ3C,oBAAoB,CAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CAAC,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAGpC,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,uBAAuB;IAIxE,MAAM,CAAC,QAAQ,CAAC,QAAQ,8uEAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,uBAAuB;IAGjD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,cAAc;CAGlB"} \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/util/ControllerRole__factory.js b/dist/types/factories/dot-crypto/contracts/util/ControllerRole__factory.js deleted file mode 100644 index 1dca7239..00000000 --- a/dist/types/factories/dot-crypto/contracts/util/ControllerRole__factory.js +++ /dev/null @@ -1,87 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ControllerRole__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [], - payable: false, - stateMutability: "nonpayable", - type: "constructor", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "addController", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "isController", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [], - name: "renounceController", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, -]; -const _bytecode = "0x608060405234801561001057600080fd5b50610023336001600160e01b0361002816565b610168565b61004081600061004360201b6101e11790919060201c565b50565b61005682826001600160e01b036100e716565b156100c257604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b60006001600160a01b038216610148576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260228152602001806104516022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b6102da806101776000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806366ac3b6814610046578063a7fc7a0714610050578063b429afeb14610076575b600080fd5b61004e6100b0565b005b61004e6004803603602081101561006657600080fd5b50356001600160a01b03166100bb565b61009c6004803603602081101561008c57600080fd5b50356001600160a01b03166100d9565b604080519115158252519081900360200190f35b6100b9336100f1565b565b6100c4336100d9565b6100cd57600080fd5b6100d681610102565b50565b60006100eb818363ffffffff61011316565b92915050565b6100d660008263ffffffff61017a16565b6100d660008263ffffffff6101e116565b60006001600160a01b03821661015a5760405162461bcd60e51b81526004018080602001828103825260228152602001806102846022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b6101848282610113565b6101bf5760405162461bcd60e51b81526004018080602001828103825260218152602001806102636021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff19169055565b6101eb8282610113565b1561023d576040805162461bcd60e51b815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff1916600117905556fe526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f2061646472657373a265627a7a723158203f5cad0be955d3ba0bdc521b5cecdcc2ff4d35429e8c84794fb194ccfc853b6664736f6c634300050c0032526f6c65733a206163636f756e7420697320746865207a65726f2061646472657373"; -const isSuperArgs = (xs) => xs.length > 1; -class ControllerRole__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(overrides) { - return super.getDeployTransaction(overrides || {}); - } - deploy(overrides) { - return super.deploy(overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.ControllerRole__factory = ControllerRole__factory; -ControllerRole__factory.bytecode = _bytecode; -ControllerRole__factory.abi = _abi; diff --git a/dist/types/factories/dot-crypto/contracts/util/FreeMinter__factory.d.ts b/dist/types/factories/dot-crypto/contracts/util/FreeMinter__factory.d.ts deleted file mode 100644 index 4c1b9b3a..00000000 --- a/dist/types/factories/dot-crypto/contracts/util/FreeMinter__factory.d.ts +++ /dev/null @@ -1,116 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, AddressLike, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../../common"; -import type { FreeMinter, FreeMinterInterface } from "../../../../dot-crypto/contracts/util/FreeMinter"; -declare type FreeMinterConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class FreeMinter__factory extends ContractFactory { - constructor(...args: FreeMinterConstructorParams); - getDeployTransaction(mintingController: AddressLike, resolver: AddressLike, registry: AddressLike, overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(mintingController: AddressLike, resolver: AddressLike, registry: AddressLike, overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): FreeMinter__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b50604051610a45380380610a4583398101604081905261002f91610082565b600080546001600160a01b039485166001600160a01b031991821617909155600180549385169382169390931790925560028054919093169116179055610108565b805161007c816100f1565b92915050565b60008060006060848603121561009757600080fd5b60006100a38686610071565b93505060206100b486828701610071565b92505060406100c586828701610071565b9150509250925092565b600061007c826100e5565b600061007c826100cf565b6001600160a01b031690565b6100fa816100da565b811461010557600080fd5b50565b61092e806101176000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c80639dcb816a1461005c578063a3f4df7e14610071578063bba652d91461008f578063f3fe12c9146100a2578063ffa1ad74146100b5575b600080fd5b61006f61006a366004610554565b6100bd565b005b610079610277565b60405161008691906107d4565b60405180910390f35b61006f61009d3660046104ff565b6102b0565b61006f6100b03660046104bd565b6102f7565b61007961033d565b606061010088888080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508a925061035e915050565b90508361010d575061026e565b6002546040805163ebf0c71760e01b815290516000926001600160a01b0316916368b62d3291839163ebf0c717916004808301926020929190829003018186803b15801561015a57600080fd5b505afa15801561016e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610192919081019061060a565b846040518363ffffffff1660e01b81526004016101b09291906107ec565b60206040518083038186803b1580156101c857600080fd5b505afa1580156101dc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610200919081019061060a565b600154604051633a0deb9d60e21b81529192506001600160a01b03169063e837ae74906102399089908990899089908890600401610794565b600060405180830381600087803b15801561025357600080fd5b505af1158015610267573d6000803e3d6000fd5b5050505050505b50505050505050565b6040518060400160405280601f81526020017f556e73746f707061626c65204672656520446f6d61696e73204d696e7465720081525081565b6102f183838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525085925061035e915050565b50505050565b61033882828080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525033925061035e915050565b505050565b604051806040016040528060058152602001640302e312e360dc1b81525081565b6060806040518060400160405280600a8152602001697564746573746465762d60b01b8152508460405160200161039692919061074d565b60408051601f198184030181529082905260005460015463c36c212560e01b84529193506001600160a01b039081169263c36c2125926103e0928892879290911690600401610765565b600060405180830381600087803b1580156103fa57600080fd5b505af115801561040e573d6000803e3d6000fd5b509293505050505b92915050565b8035610416816108cb565b60008083601f84011261043957600080fd5b50813567ffffffffffffffff81111561045157600080fd5b60208301915083602082028301111561046957600080fd5b9250929050565b60008083601f84011261048257600080fd5b50813567ffffffffffffffff81111561049a57600080fd5b60208301915083600182028301111561046957600080fd5b8051610416816108e2565b600080602083850312156104d057600080fd5b823567ffffffffffffffff8111156104e757600080fd5b6104f385828601610470565b92509250509250929050565b60008060006040848603121561051457600080fd5b833567ffffffffffffffff81111561052b57600080fd5b61053786828701610470565b9350935050602061054a8682870161041c565b9150509250925092565b60008060008060008060006080888a03121561056f57600080fd5b873567ffffffffffffffff81111561058657600080fd5b6105928a828b01610470565b975097505060206105a58a828b0161041c565b955050604088013567ffffffffffffffff8111156105c257600080fd5b6105ce8a828b01610427565b9450945050606088013567ffffffffffffffff8111156105ed57600080fd5b6105f98a828b01610427565b925092505092959891949750929550565b60006020828403121561061c57600080fd5b600061062884846104b2565b949350505050565b60006106288484846106bb565b61064681610878565b82525050565b60006106588385610819565b93508360208402850161066a8461080c565b8060005b878110156106ae5784840389526106858284610827565b610690868284610630565b955061069b84610813565b60209b909b019a9350505060010161066e565b5091979650505050505050565b60006106c78385610819565b93506106d4838584610889565b6106dd836108c1565b9093019392505050565b60006106f28261080f565b6106fc8185610819565b935061070c818560208601610895565b6106dd816108c1565b60006107208261080f565b61072a8185610822565b935061073a818560208601610895565b9290920192915050565b6106468161080c565b60006107598285610715565b91506106288284610715565b60608101610773828661063d565b818103602083015261078581856106e7565b9050610628604083018461063d565b606080825281016107a681878961064c565b905081810360208301526107bb81858761064c565b90506107ca6040830184610744565b9695505050505050565b602080825281016107e581846106e7565b9392505050565b604081016107fa8285610744565b818103602083015261062881846106e7565b90565b5190565b60200190565b90815260200190565b919050565b6000808335601e193685900301811261083f57600080fd5b83810160208101935035915067ffffffffffffffff82111561086057600080fd5b3682900384131561087057600080fd5b509250929050565b60006001600160a01b038216610416565b82818337506000910152565b60005b838110156108b0578181015183820152602001610898565b838111156102f15750506000910152565b601f01601f191690565b6108d481610878565b81146108df57600080fd5b50565b6108d48161080c56fea365627a7a723158200b9239a7e176a847a51bd6184cfde12825afe2b8c85d40d8c3f7dd62517ee6fa6c6578706572696d656e74616cf564736f6c634300050c0040"; - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "contract MintingController"; - readonly name: "mintingController"; - readonly type: "address"; - }, { - readonly internalType: "contract IResolver"; - readonly name: "resolver"; - readonly type: "address"; - }, { - readonly internalType: "contract IRegistryReader"; - readonly name: "registry"; - readonly type: "address"; - }]; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "constructor"; - }, { - readonly constant: true; - readonly inputs: readonly []; - readonly name: "NAME"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly []; - readonly name: "VERSION"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: ""; - readonly type: "string"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }]; - readonly name: "claim"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }, { - readonly internalType: "address"; - readonly name: "receiver"; - readonly type: "address"; - }]; - readonly name: "claimTo"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly constant: false; - readonly inputs: readonly [{ - readonly internalType: "string"; - readonly name: "label"; - readonly type: "string"; - }, { - readonly internalType: "address"; - readonly name: "receiver"; - readonly type: "address"; - }, { - readonly internalType: "string[]"; - readonly name: "keys"; - readonly type: "string[]"; - }, { - readonly internalType: "string[]"; - readonly name: "values"; - readonly type: "string[]"; - }]; - readonly name: "claimToWithRecords"; - readonly outputs: readonly []; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): FreeMinterInterface; - static connect(address: string, runner?: ContractRunner | null): FreeMinter; -} -export {}; -//# sourceMappingURL=FreeMinter__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/util/FreeMinter__factory.d.ts.map b/dist/types/factories/dot-crypto/contracts/util/FreeMinter__factory.d.ts.map deleted file mode 100644 index d969b5d1..00000000 --- a/dist/types/factories/dot-crypto/contracts/util/FreeMinter__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"FreeMinter__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/dot-crypto/contracts/util/FreeMinter__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,MAAM,EACN,WAAW,EACX,yBAAyB,EACzB,cAAc,EACf,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,KAAK,EACV,UAAU,EACV,mBAAmB,EACpB,MAAM,kDAAkD,CAAC;AA6H1D,aAAK,2BAA2B,GAC5B,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,mBAAoB,SAAQ,eAAe;gBAC1C,GAAG,IAAI,EAAE,2BAA2B;IAQvC,oBAAoB,CAC3B,iBAAiB,EAAE,WAAW,EAC9B,QAAQ,EAAE,WAAW,EACrB,QAAQ,EAAE,WAAW,EACrB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAQ5B,MAAM,CACb,iBAAiB,EAAE,WAAW,EAC9B,QAAQ,EAAE,WAAW,EACrB,QAAQ,EAAE,WAAW,EACrB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAStB,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,mBAAmB;IAIpE,MAAM,CAAC,QAAQ,CAAC,QAAQ,kpKAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,mBAAmB;IAG7C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,UAAU;CAG5E"} \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/util/FreeMinter__factory.js b/dist/types/factories/dot-crypto/contracts/util/FreeMinter__factory.js deleted file mode 100644 index 7ae21e1a..00000000 --- a/dist/types/factories/dot-crypto/contracts/util/FreeMinter__factory.js +++ /dev/null @@ -1,153 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.FreeMinter__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "contract MintingController", - name: "mintingController", - type: "address", - }, - { - internalType: "contract IResolver", - name: "resolver", - type: "address", - }, - { - internalType: "contract IRegistryReader", - name: "registry", - type: "address", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "constructor", - }, - { - constant: true, - inputs: [], - name: "NAME", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "VERSION", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "string", - name: "label", - type: "string", - }, - ], - name: "claim", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "string", - name: "label", - type: "string", - }, - { - internalType: "address", - name: "receiver", - type: "address", - }, - ], - name: "claimTo", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "string", - name: "label", - type: "string", - }, - { - internalType: "address", - name: "receiver", - type: "address", - }, - { - internalType: "string[]", - name: "keys", - type: "string[]", - }, - { - internalType: "string[]", - name: "values", - type: "string[]", - }, - ], - name: "claimToWithRecords", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, -]; -const _bytecode = "0x608060405234801561001057600080fd5b50604051610a45380380610a4583398101604081905261002f91610082565b600080546001600160a01b039485166001600160a01b031991821617909155600180549385169382169390931790925560028054919093169116179055610108565b805161007c816100f1565b92915050565b60008060006060848603121561009757600080fd5b60006100a38686610071565b93505060206100b486828701610071565b92505060406100c586828701610071565b9150509250925092565b600061007c826100e5565b600061007c826100cf565b6001600160a01b031690565b6100fa816100da565b811461010557600080fd5b50565b61092e806101176000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c80639dcb816a1461005c578063a3f4df7e14610071578063bba652d91461008f578063f3fe12c9146100a2578063ffa1ad74146100b5575b600080fd5b61006f61006a366004610554565b6100bd565b005b610079610277565b60405161008691906107d4565b60405180910390f35b61006f61009d3660046104ff565b6102b0565b61006f6100b03660046104bd565b6102f7565b61007961033d565b606061010088888080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508a925061035e915050565b90508361010d575061026e565b6002546040805163ebf0c71760e01b815290516000926001600160a01b0316916368b62d3291839163ebf0c717916004808301926020929190829003018186803b15801561015a57600080fd5b505afa15801561016e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610192919081019061060a565b846040518363ffffffff1660e01b81526004016101b09291906107ec565b60206040518083038186803b1580156101c857600080fd5b505afa1580156101dc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610200919081019061060a565b600154604051633a0deb9d60e21b81529192506001600160a01b03169063e837ae74906102399089908990899089908890600401610794565b600060405180830381600087803b15801561025357600080fd5b505af1158015610267573d6000803e3d6000fd5b5050505050505b50505050505050565b6040518060400160405280601f81526020017f556e73746f707061626c65204672656520446f6d61696e73204d696e7465720081525081565b6102f183838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525085925061035e915050565b50505050565b61033882828080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525033925061035e915050565b505050565b604051806040016040528060058152602001640302e312e360dc1b81525081565b6060806040518060400160405280600a8152602001697564746573746465762d60b01b8152508460405160200161039692919061074d565b60408051601f198184030181529082905260005460015463c36c212560e01b84529193506001600160a01b039081169263c36c2125926103e0928892879290911690600401610765565b600060405180830381600087803b1580156103fa57600080fd5b505af115801561040e573d6000803e3d6000fd5b509293505050505b92915050565b8035610416816108cb565b60008083601f84011261043957600080fd5b50813567ffffffffffffffff81111561045157600080fd5b60208301915083602082028301111561046957600080fd5b9250929050565b60008083601f84011261048257600080fd5b50813567ffffffffffffffff81111561049a57600080fd5b60208301915083600182028301111561046957600080fd5b8051610416816108e2565b600080602083850312156104d057600080fd5b823567ffffffffffffffff8111156104e757600080fd5b6104f385828601610470565b92509250509250929050565b60008060006040848603121561051457600080fd5b833567ffffffffffffffff81111561052b57600080fd5b61053786828701610470565b9350935050602061054a8682870161041c565b9150509250925092565b60008060008060008060006080888a03121561056f57600080fd5b873567ffffffffffffffff81111561058657600080fd5b6105928a828b01610470565b975097505060206105a58a828b0161041c565b955050604088013567ffffffffffffffff8111156105c257600080fd5b6105ce8a828b01610427565b9450945050606088013567ffffffffffffffff8111156105ed57600080fd5b6105f98a828b01610427565b925092505092959891949750929550565b60006020828403121561061c57600080fd5b600061062884846104b2565b949350505050565b60006106288484846106bb565b61064681610878565b82525050565b60006106588385610819565b93508360208402850161066a8461080c565b8060005b878110156106ae5784840389526106858284610827565b610690868284610630565b955061069b84610813565b60209b909b019a9350505060010161066e565b5091979650505050505050565b60006106c78385610819565b93506106d4838584610889565b6106dd836108c1565b9093019392505050565b60006106f28261080f565b6106fc8185610819565b935061070c818560208601610895565b6106dd816108c1565b60006107208261080f565b61072a8185610822565b935061073a818560208601610895565b9290920192915050565b6106468161080c565b60006107598285610715565b91506106288284610715565b60608101610773828661063d565b818103602083015261078581856106e7565b9050610628604083018461063d565b606080825281016107a681878961064c565b905081810360208301526107bb81858761064c565b90506107ca6040830184610744565b9695505050505050565b602080825281016107e581846106e7565b9392505050565b604081016107fa8285610744565b818103602083015261062881846106e7565b90565b5190565b60200190565b90815260200190565b919050565b6000808335601e193685900301811261083f57600080fd5b83810160208101935035915067ffffffffffffffff82111561086057600080fd5b3682900384131561087057600080fd5b509250929050565b60006001600160a01b038216610416565b82818337506000910152565b60005b838110156108b0578181015183820152602001610898565b838111156102f15750506000910152565b601f01601f191690565b6108d481610878565b81146108df57600080fd5b50565b6108d48161080c56fea365627a7a723158200b9239a7e176a847a51bd6184cfde12825afe2b8c85d40d8c3f7dd62517ee6fa6c6578706572696d656e74616cf564736f6c634300050c0040"; -const isSuperArgs = (xs) => xs.length > 1; -class FreeMinter__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(mintingController, resolver, registry, overrides) { - return super.getDeployTransaction(mintingController, resolver, registry, overrides || {}); - } - deploy(mintingController, resolver, registry, overrides) { - return super.deploy(mintingController, resolver, registry, overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.FreeMinter__factory = FreeMinter__factory; -FreeMinter__factory.bytecode = _bytecode; -FreeMinter__factory.abi = _abi; diff --git a/dist/types/factories/dot-crypto/contracts/util/SignatureUtil__factory.d.ts b/dist/types/factories/dot-crypto/contracts/util/SignatureUtil__factory.d.ts deleted file mode 100644 index 35b7edef..00000000 --- a/dist/types/factories/dot-crypto/contracts/util/SignatureUtil__factory.d.ts +++ /dev/null @@ -1,60 +0,0 @@ -import { ContractFactory, ContractTransactionResponse } from "ethers"; -import type { Signer, AddressLike, ContractDeployTransaction, ContractRunner } from "ethers"; -import type { NonPayableOverrides } from "../../../../common"; -import type { SignatureUtil, SignatureUtilInterface } from "../../../../dot-crypto/contracts/util/SignatureUtil"; -declare type SignatureUtilConstructorParams = [signer?: Signer] | ConstructorParameters; -export declare class SignatureUtil__factory extends ContractFactory { - constructor(...args: SignatureUtilConstructorParams); - getDeployTransaction(registry: AddressLike, overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - deploy(registry: AddressLike, overrides?: NonPayableOverrides & { - from?: string; - }): Promise; - connect(runner: ContractRunner | null): SignatureUtil__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b5060405161013d38038061013d8339818101604052602081101561003357600080fd5b5051600180546001600160a01b0319166001600160a01b0390921691909117905560db806100626000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c80636ccbae5f1460375780637b103999146063575b600080fd5b605160048036036020811015604b57600080fd5b50356085565b60408051918252519081900360200190f35b60696097565b604080516001600160a01b039092168252519081900360200190f35b60009081526020819052604090205490565b6001546001600160a01b03169056fea265627a7a723158209ce28ed4bcc27cb55d265eaa0611259b785b62de333c7977452c1130d6df0bbc64736f6c634300050c0032"; - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly internalType: "contract CNSRegistry"; - readonly name: "registry"; - readonly type: "address"; - }]; - readonly payable: false; - readonly stateMutability: "nonpayable"; - readonly type: "constructor"; - }, { - readonly constant: true; - readonly inputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "tokenId"; - readonly type: "uint256"; - }]; - readonly name: "nonceOf"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: ""; - readonly type: "uint256"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly constant: true; - readonly inputs: readonly []; - readonly name: "registry"; - readonly outputs: readonly [{ - readonly internalType: "address"; - readonly name: ""; - readonly type: "address"; - }]; - readonly payable: false; - readonly stateMutability: "view"; - readonly type: "function"; - }]; - static createInterface(): SignatureUtilInterface; - static connect(address: string, runner?: ContractRunner | null): SignatureUtil; -} -export {}; -//# sourceMappingURL=SignatureUtil__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/util/SignatureUtil__factory.d.ts.map b/dist/types/factories/dot-crypto/contracts/util/SignatureUtil__factory.d.ts.map deleted file mode 100644 index ec190f86..00000000 --- a/dist/types/factories/dot-crypto/contracts/util/SignatureUtil__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"SignatureUtil__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/dot-crypto/contracts/util/SignatureUtil__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,MAAM,EACN,WAAW,EACX,yBAAyB,EACzB,cAAc,EACf,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,KAAK,EACV,aAAa,EACb,sBAAsB,EACvB,MAAM,qDAAqD,CAAC;AAwD7D,aAAK,8BAA8B,GAC/B,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,sBAAuB,SAAQ,eAAe;gBAC7C,GAAG,IAAI,EAAE,8BAA8B;IAQ1C,oBAAoB,CAC3B,QAAQ,EAAE,WAAW,EACrB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CACb,QAAQ,EAAE,WAAW,EACrB,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;iCAItB,2BAA2B;;IAIjD,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,sBAAsB;IAIvE,MAAM,CAAC,QAAQ,CAAC,QAAQ,koBAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,sBAAsB;IAGhD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,aAAa;CAGjB"} \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/util/SignatureUtil__factory.js b/dist/types/factories/dot-crypto/contracts/util/SignatureUtil__factory.js deleted file mode 100644 index 0f0eaacc..00000000 --- a/dist/types/factories/dot-crypto/contracts/util/SignatureUtil__factory.js +++ /dev/null @@ -1,84 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.SignatureUtil__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - internalType: "contract CNSRegistry", - name: "registry", - type: "address", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "constructor", - }, - { - constant: true, - inputs: [ - { - internalType: "uint256", - name: "tokenId", - type: "uint256", - }, - ], - name: "nonceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "registry", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, -]; -const _bytecode = "0x608060405234801561001057600080fd5b5060405161013d38038061013d8339818101604052602081101561003357600080fd5b5051600180546001600160a01b0319166001600160a01b0390921691909117905560db806100626000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c80636ccbae5f1460375780637b103999146063575b600080fd5b605160048036036020811015604b57600080fd5b50356085565b60408051918252519081900360200190f35b60696097565b604080516001600160a01b039092168252519081900360200190f35b60009081526020819052604090205490565b6001546001600160a01b03169056fea265627a7a723158209ce28ed4bcc27cb55d265eaa0611259b785b62de333c7977452c1130d6df0bbc64736f6c634300050c0032"; -const isSuperArgs = (xs) => xs.length > 1; -class SignatureUtil__factory extends ethers_1.ContractFactory { - constructor(...args) { - if (isSuperArgs(args)) { - super(...args); - } - else { - super(_abi, _bytecode, args[0]); - } - } - getDeployTransaction(registry, overrides) { - return super.getDeployTransaction(registry, overrides || {}); - } - deploy(registry, overrides) { - return super.deploy(registry, overrides || {}); - } - connect(runner) { - return super.connect(runner); - } - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.SignatureUtil__factory = SignatureUtil__factory; -SignatureUtil__factory.bytecode = _bytecode; -SignatureUtil__factory.abi = _abi; diff --git a/dist/types/factories/dot-crypto/contracts/util/index.d.ts b/dist/types/factories/dot-crypto/contracts/util/index.d.ts deleted file mode 100644 index 3263ea72..00000000 --- a/dist/types/factories/dot-crypto/contracts/util/index.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -export { BulkWhitelistedRole__factory } from "./BulkWhitelistedRole__factory"; -export { ControllerRole__factory } from "./ControllerRole__factory"; -export { FreeMinter__factory } from "./FreeMinter__factory"; -export { SignatureUtil__factory } from "./SignatureUtil__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/util/index.d.ts.map b/dist/types/factories/dot-crypto/contracts/util/index.d.ts.map deleted file mode 100644 index 19b8c5e3..00000000 --- a/dist/types/factories/dot-crypto/contracts/util/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/dot-crypto/contracts/util/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/contracts/util/index.js b/dist/types/factories/dot-crypto/contracts/util/index.js deleted file mode 100644 index d3f13637..00000000 --- a/dist/types/factories/dot-crypto/contracts/util/index.js +++ /dev/null @@ -1,11 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.SignatureUtil__factory = exports.FreeMinter__factory = exports.ControllerRole__factory = exports.BulkWhitelistedRole__factory = void 0; -var BulkWhitelistedRole__factory_1 = require("./BulkWhitelistedRole__factory"); -Object.defineProperty(exports, "BulkWhitelistedRole__factory", { enumerable: true, get: function () { return BulkWhitelistedRole__factory_1.BulkWhitelistedRole__factory; } }); -var ControllerRole__factory_1 = require("./ControllerRole__factory"); -Object.defineProperty(exports, "ControllerRole__factory", { enumerable: true, get: function () { return ControllerRole__factory_1.ControllerRole__factory; } }); -var FreeMinter__factory_1 = require("./FreeMinter__factory"); -Object.defineProperty(exports, "FreeMinter__factory", { enumerable: true, get: function () { return FreeMinter__factory_1.FreeMinter__factory; } }); -var SignatureUtil__factory_1 = require("./SignatureUtil__factory"); -Object.defineProperty(exports, "SignatureUtil__factory", { enumerable: true, get: function () { return SignatureUtil__factory_1.SignatureUtil__factory; } }); diff --git a/dist/types/factories/dot-crypto/index.d.ts b/dist/types/factories/dot-crypto/index.d.ts deleted file mode 100644 index 0687b2ab..00000000 --- a/dist/types/factories/dot-crypto/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export * as contracts from "./contracts"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/index.d.ts.map b/dist/types/factories/dot-crypto/index.d.ts.map deleted file mode 100644 index c00ac0c2..00000000 --- a/dist/types/factories/dot-crypto/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../types/factories/dot-crypto/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/dot-crypto/index.js b/dist/types/factories/dot-crypto/index.js deleted file mode 100644 index 7ed2f1f8..00000000 --- a/dist/types/factories/dot-crypto/index.js +++ /dev/null @@ -1,27 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.contracts = void 0; -exports.contracts = __importStar(require("./contracts")); diff --git a/dist/types/factories/index.d.ts b/dist/types/factories/index.d.ts deleted file mode 100644 index 3190a4cf..00000000 --- a/dist/types/factories/index.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -export * as ensdomains from "./@ensdomains"; -export * as openzeppelin from "./@openzeppelin"; -export * as contracts from "./contracts"; -export * as dotCrypto from "./dot-crypto"; -export * as seaportTypes from "./seaport-types"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/index.d.ts.map b/dist/types/factories/index.d.ts.map deleted file mode 100644 index 0f75d44a..00000000 --- a/dist/types/factories/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../types/factories/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,UAAU,MAAM,eAAe,CAAC;AAC5C,OAAO,KAAK,YAAY,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,SAAS,MAAM,cAAc,CAAC;AAC1C,OAAO,KAAK,YAAY,MAAM,iBAAiB,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/index.js b/dist/types/factories/index.js deleted file mode 100644 index fa2f2e34..00000000 --- a/dist/types/factories/index.js +++ /dev/null @@ -1,31 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.seaportTypes = exports.dotCrypto = exports.contracts = exports.openzeppelin = exports.ensdomains = void 0; -exports.ensdomains = __importStar(require("./@ensdomains")); -exports.openzeppelin = __importStar(require("./@openzeppelin")); -exports.contracts = __importStar(require("./contracts")); -exports.dotCrypto = __importStar(require("./dot-crypto")); -exports.seaportTypes = __importStar(require("./seaport-types")); diff --git a/dist/types/factories/seaport-types/index.d.ts b/dist/types/factories/seaport-types/index.d.ts deleted file mode 100644 index f83478b5..00000000 --- a/dist/types/factories/seaport-types/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export * as src from "./src"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/seaport-types/index.d.ts.map b/dist/types/factories/seaport-types/index.d.ts.map deleted file mode 100644 index 43555a96..00000000 --- a/dist/types/factories/seaport-types/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../types/factories/seaport-types/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/seaport-types/index.js b/dist/types/factories/seaport-types/index.js deleted file mode 100644 index ebd202b6..00000000 --- a/dist/types/factories/seaport-types/index.js +++ /dev/null @@ -1,27 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.src = void 0; -exports.src = __importStar(require("./src")); diff --git a/dist/types/factories/seaport-types/src/index.d.ts b/dist/types/factories/seaport-types/src/index.d.ts deleted file mode 100644 index 3f4ce49d..00000000 --- a/dist/types/factories/seaport-types/src/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export * as interfaces from "./interfaces"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/seaport-types/src/index.d.ts.map b/dist/types/factories/seaport-types/src/index.d.ts.map deleted file mode 100644 index cf695f0c..00000000 --- a/dist/types/factories/seaport-types/src/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/factories/seaport-types/src/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/seaport-types/src/index.js b/dist/types/factories/seaport-types/src/index.js deleted file mode 100644 index f6659030..00000000 --- a/dist/types/factories/seaport-types/src/index.js +++ /dev/null @@ -1,27 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.interfaces = void 0; -exports.interfaces = __importStar(require("./interfaces")); diff --git a/dist/types/factories/seaport-types/src/interfaces/ConsiderationInterface__factory.d.ts b/dist/types/factories/seaport-types/src/interfaces/ConsiderationInterface__factory.d.ts deleted file mode 100644 index c7839802..00000000 --- a/dist/types/factories/seaport-types/src/interfaces/ConsiderationInterface__factory.d.ts +++ /dev/null @@ -1,1705 +0,0 @@ -import { type ContractRunner } from "ethers"; -import type { ConsiderationInterface, ConsiderationInterfaceInterface } from "../../../../seaport-types/src/interfaces/ConsiderationInterface"; -export declare class ConsiderationInterface__factory { - static readonly abi: readonly [{ - readonly inputs: readonly [{ - readonly components: readonly [{ - readonly internalType: "address"; - readonly name: "offerer"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "zone"; - readonly type: "address"; - }, { - readonly components: readonly [{ - readonly internalType: "enum ItemType"; - readonly name: "itemType"; - readonly type: "uint8"; - }, { - readonly internalType: "address"; - readonly name: "token"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "identifierOrCriteria"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "startAmount"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "endAmount"; - readonly type: "uint256"; - }]; - readonly internalType: "struct OfferItem[]"; - readonly name: "offer"; - readonly type: "tuple[]"; - }, { - readonly components: readonly [{ - readonly internalType: "enum ItemType"; - readonly name: "itemType"; - readonly type: "uint8"; - }, { - readonly internalType: "address"; - readonly name: "token"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "identifierOrCriteria"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "startAmount"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "endAmount"; - readonly type: "uint256"; - }, { - readonly internalType: "address payable"; - readonly name: "recipient"; - readonly type: "address"; - }]; - readonly internalType: "struct ConsiderationItem[]"; - readonly name: "consideration"; - readonly type: "tuple[]"; - }, { - readonly internalType: "enum OrderType"; - readonly name: "orderType"; - readonly type: "uint8"; - }, { - readonly internalType: "uint256"; - readonly name: "startTime"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "endTime"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes32"; - readonly name: "zoneHash"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "salt"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes32"; - readonly name: "conduitKey"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "counter"; - readonly type: "uint256"; - }]; - readonly internalType: "struct OrderComponents[]"; - readonly name: "orders"; - readonly type: "tuple[]"; - }]; - readonly name: "cancel"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: "cancelled"; - readonly type: "bool"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly components: readonly [{ - readonly components: readonly [{ - readonly internalType: "address"; - readonly name: "offerer"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "zone"; - readonly type: "address"; - }, { - readonly components: readonly [{ - readonly internalType: "enum ItemType"; - readonly name: "itemType"; - readonly type: "uint8"; - }, { - readonly internalType: "address"; - readonly name: "token"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "identifierOrCriteria"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "startAmount"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "endAmount"; - readonly type: "uint256"; - }]; - readonly internalType: "struct OfferItem[]"; - readonly name: "offer"; - readonly type: "tuple[]"; - }, { - readonly components: readonly [{ - readonly internalType: "enum ItemType"; - readonly name: "itemType"; - readonly type: "uint8"; - }, { - readonly internalType: "address"; - readonly name: "token"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "identifierOrCriteria"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "startAmount"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "endAmount"; - readonly type: "uint256"; - }, { - readonly internalType: "address payable"; - readonly name: "recipient"; - readonly type: "address"; - }]; - readonly internalType: "struct ConsiderationItem[]"; - readonly name: "consideration"; - readonly type: "tuple[]"; - }, { - readonly internalType: "enum OrderType"; - readonly name: "orderType"; - readonly type: "uint8"; - }, { - readonly internalType: "uint256"; - readonly name: "startTime"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "endTime"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes32"; - readonly name: "zoneHash"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "salt"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes32"; - readonly name: "conduitKey"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "totalOriginalConsiderationItems"; - readonly type: "uint256"; - }]; - readonly internalType: "struct OrderParameters"; - readonly name: "parameters"; - readonly type: "tuple"; - }, { - readonly internalType: "uint120"; - readonly name: "numerator"; - readonly type: "uint120"; - }, { - readonly internalType: "uint120"; - readonly name: "denominator"; - readonly type: "uint120"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }, { - readonly internalType: "bytes"; - readonly name: "extraData"; - readonly type: "bytes"; - }]; - readonly internalType: "struct AdvancedOrder"; - readonly name: "advancedOrder"; - readonly type: "tuple"; - }, { - readonly components: readonly [{ - readonly internalType: "uint256"; - readonly name: "orderIndex"; - readonly type: "uint256"; - }, { - readonly internalType: "enum Side"; - readonly name: "side"; - readonly type: "uint8"; - }, { - readonly internalType: "uint256"; - readonly name: "index"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "identifier"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes32[]"; - readonly name: "criteriaProof"; - readonly type: "bytes32[]"; - }]; - readonly internalType: "struct CriteriaResolver[]"; - readonly name: "criteriaResolvers"; - readonly type: "tuple[]"; - }, { - readonly internalType: "bytes32"; - readonly name: "fulfillerConduitKey"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "recipient"; - readonly type: "address"; - }]; - readonly name: "fulfillAdvancedOrder"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: "fulfilled"; - readonly type: "bool"; - }]; - readonly stateMutability: "payable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly components: readonly [{ - readonly components: readonly [{ - readonly internalType: "address"; - readonly name: "offerer"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "zone"; - readonly type: "address"; - }, { - readonly components: readonly [{ - readonly internalType: "enum ItemType"; - readonly name: "itemType"; - readonly type: "uint8"; - }, { - readonly internalType: "address"; - readonly name: "token"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "identifierOrCriteria"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "startAmount"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "endAmount"; - readonly type: "uint256"; - }]; - readonly internalType: "struct OfferItem[]"; - readonly name: "offer"; - readonly type: "tuple[]"; - }, { - readonly components: readonly [{ - readonly internalType: "enum ItemType"; - readonly name: "itemType"; - readonly type: "uint8"; - }, { - readonly internalType: "address"; - readonly name: "token"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "identifierOrCriteria"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "startAmount"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "endAmount"; - readonly type: "uint256"; - }, { - readonly internalType: "address payable"; - readonly name: "recipient"; - readonly type: "address"; - }]; - readonly internalType: "struct ConsiderationItem[]"; - readonly name: "consideration"; - readonly type: "tuple[]"; - }, { - readonly internalType: "enum OrderType"; - readonly name: "orderType"; - readonly type: "uint8"; - }, { - readonly internalType: "uint256"; - readonly name: "startTime"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "endTime"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes32"; - readonly name: "zoneHash"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "salt"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes32"; - readonly name: "conduitKey"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "totalOriginalConsiderationItems"; - readonly type: "uint256"; - }]; - readonly internalType: "struct OrderParameters"; - readonly name: "parameters"; - readonly type: "tuple"; - }, { - readonly internalType: "uint120"; - readonly name: "numerator"; - readonly type: "uint120"; - }, { - readonly internalType: "uint120"; - readonly name: "denominator"; - readonly type: "uint120"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }, { - readonly internalType: "bytes"; - readonly name: "extraData"; - readonly type: "bytes"; - }]; - readonly internalType: "struct AdvancedOrder[]"; - readonly name: "advancedOrders"; - readonly type: "tuple[]"; - }, { - readonly components: readonly [{ - readonly internalType: "uint256"; - readonly name: "orderIndex"; - readonly type: "uint256"; - }, { - readonly internalType: "enum Side"; - readonly name: "side"; - readonly type: "uint8"; - }, { - readonly internalType: "uint256"; - readonly name: "index"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "identifier"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes32[]"; - readonly name: "criteriaProof"; - readonly type: "bytes32[]"; - }]; - readonly internalType: "struct CriteriaResolver[]"; - readonly name: "criteriaResolvers"; - readonly type: "tuple[]"; - }, { - readonly components: readonly [{ - readonly internalType: "uint256"; - readonly name: "orderIndex"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "itemIndex"; - readonly type: "uint256"; - }]; - readonly internalType: "struct FulfillmentComponent[][]"; - readonly name: "offerFulfillments"; - readonly type: "tuple[][]"; - }, { - readonly components: readonly [{ - readonly internalType: "uint256"; - readonly name: "orderIndex"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "itemIndex"; - readonly type: "uint256"; - }]; - readonly internalType: "struct FulfillmentComponent[][]"; - readonly name: "considerationFulfillments"; - readonly type: "tuple[][]"; - }, { - readonly internalType: "bytes32"; - readonly name: "fulfillerConduitKey"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "recipient"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "maximumFulfilled"; - readonly type: "uint256"; - }]; - readonly name: "fulfillAvailableAdvancedOrders"; - readonly outputs: readonly [{ - readonly internalType: "bool[]"; - readonly name: "availableOrders"; - readonly type: "bool[]"; - }, { - readonly components: readonly [{ - readonly components: readonly [{ - readonly internalType: "enum ItemType"; - readonly name: "itemType"; - readonly type: "uint8"; - }, { - readonly internalType: "address"; - readonly name: "token"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "identifier"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "amount"; - readonly type: "uint256"; - }, { - readonly internalType: "address payable"; - readonly name: "recipient"; - readonly type: "address"; - }]; - readonly internalType: "struct ReceivedItem"; - readonly name: "item"; - readonly type: "tuple"; - }, { - readonly internalType: "address"; - readonly name: "offerer"; - readonly type: "address"; - }, { - readonly internalType: "bytes32"; - readonly name: "conduitKey"; - readonly type: "bytes32"; - }]; - readonly internalType: "struct Execution[]"; - readonly name: "executions"; - readonly type: "tuple[]"; - }]; - readonly stateMutability: "payable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly components: readonly [{ - readonly components: readonly [{ - readonly internalType: "address"; - readonly name: "offerer"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "zone"; - readonly type: "address"; - }, { - readonly components: readonly [{ - readonly internalType: "enum ItemType"; - readonly name: "itemType"; - readonly type: "uint8"; - }, { - readonly internalType: "address"; - readonly name: "token"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "identifierOrCriteria"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "startAmount"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "endAmount"; - readonly type: "uint256"; - }]; - readonly internalType: "struct OfferItem[]"; - readonly name: "offer"; - readonly type: "tuple[]"; - }, { - readonly components: readonly [{ - readonly internalType: "enum ItemType"; - readonly name: "itemType"; - readonly type: "uint8"; - }, { - readonly internalType: "address"; - readonly name: "token"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "identifierOrCriteria"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "startAmount"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "endAmount"; - readonly type: "uint256"; - }, { - readonly internalType: "address payable"; - readonly name: "recipient"; - readonly type: "address"; - }]; - readonly internalType: "struct ConsiderationItem[]"; - readonly name: "consideration"; - readonly type: "tuple[]"; - }, { - readonly internalType: "enum OrderType"; - readonly name: "orderType"; - readonly type: "uint8"; - }, { - readonly internalType: "uint256"; - readonly name: "startTime"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "endTime"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes32"; - readonly name: "zoneHash"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "salt"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes32"; - readonly name: "conduitKey"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "totalOriginalConsiderationItems"; - readonly type: "uint256"; - }]; - readonly internalType: "struct OrderParameters"; - readonly name: "parameters"; - readonly type: "tuple"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly internalType: "struct Order[]"; - readonly name: "orders"; - readonly type: "tuple[]"; - }, { - readonly components: readonly [{ - readonly internalType: "uint256"; - readonly name: "orderIndex"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "itemIndex"; - readonly type: "uint256"; - }]; - readonly internalType: "struct FulfillmentComponent[][]"; - readonly name: "offerFulfillments"; - readonly type: "tuple[][]"; - }, { - readonly components: readonly [{ - readonly internalType: "uint256"; - readonly name: "orderIndex"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "itemIndex"; - readonly type: "uint256"; - }]; - readonly internalType: "struct FulfillmentComponent[][]"; - readonly name: "considerationFulfillments"; - readonly type: "tuple[][]"; - }, { - readonly internalType: "bytes32"; - readonly name: "fulfillerConduitKey"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "maximumFulfilled"; - readonly type: "uint256"; - }]; - readonly name: "fulfillAvailableOrders"; - readonly outputs: readonly [{ - readonly internalType: "bool[]"; - readonly name: "availableOrders"; - readonly type: "bool[]"; - }, { - readonly components: readonly [{ - readonly components: readonly [{ - readonly internalType: "enum ItemType"; - readonly name: "itemType"; - readonly type: "uint8"; - }, { - readonly internalType: "address"; - readonly name: "token"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "identifier"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "amount"; - readonly type: "uint256"; - }, { - readonly internalType: "address payable"; - readonly name: "recipient"; - readonly type: "address"; - }]; - readonly internalType: "struct ReceivedItem"; - readonly name: "item"; - readonly type: "tuple"; - }, { - readonly internalType: "address"; - readonly name: "offerer"; - readonly type: "address"; - }, { - readonly internalType: "bytes32"; - readonly name: "conduitKey"; - readonly type: "bytes32"; - }]; - readonly internalType: "struct Execution[]"; - readonly name: "executions"; - readonly type: "tuple[]"; - }]; - readonly stateMutability: "payable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly components: readonly [{ - readonly internalType: "address"; - readonly name: "considerationToken"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "considerationIdentifier"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "considerationAmount"; - readonly type: "uint256"; - }, { - readonly internalType: "address payable"; - readonly name: "offerer"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "zone"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "offerToken"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "offerIdentifier"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "offerAmount"; - readonly type: "uint256"; - }, { - readonly internalType: "enum BasicOrderType"; - readonly name: "basicOrderType"; - readonly type: "uint8"; - }, { - readonly internalType: "uint256"; - readonly name: "startTime"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "endTime"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes32"; - readonly name: "zoneHash"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "salt"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes32"; - readonly name: "offererConduitKey"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes32"; - readonly name: "fulfillerConduitKey"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "totalOriginalAdditionalRecipients"; - readonly type: "uint256"; - }, { - readonly components: readonly [{ - readonly internalType: "uint256"; - readonly name: "amount"; - readonly type: "uint256"; - }, { - readonly internalType: "address payable"; - readonly name: "recipient"; - readonly type: "address"; - }]; - readonly internalType: "struct AdditionalRecipient[]"; - readonly name: "additionalRecipients"; - readonly type: "tuple[]"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly internalType: "struct BasicOrderParameters"; - readonly name: "parameters"; - readonly type: "tuple"; - }]; - readonly name: "fulfillBasicOrder"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: "fulfilled"; - readonly type: "bool"; - }]; - readonly stateMutability: "payable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly components: readonly [{ - readonly internalType: "address"; - readonly name: "considerationToken"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "considerationIdentifier"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "considerationAmount"; - readonly type: "uint256"; - }, { - readonly internalType: "address payable"; - readonly name: "offerer"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "zone"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "offerToken"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "offerIdentifier"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "offerAmount"; - readonly type: "uint256"; - }, { - readonly internalType: "enum BasicOrderType"; - readonly name: "basicOrderType"; - readonly type: "uint8"; - }, { - readonly internalType: "uint256"; - readonly name: "startTime"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "endTime"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes32"; - readonly name: "zoneHash"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "salt"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes32"; - readonly name: "offererConduitKey"; - readonly type: "bytes32"; - }, { - readonly internalType: "bytes32"; - readonly name: "fulfillerConduitKey"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "totalOriginalAdditionalRecipients"; - readonly type: "uint256"; - }, { - readonly components: readonly [{ - readonly internalType: "uint256"; - readonly name: "amount"; - readonly type: "uint256"; - }, { - readonly internalType: "address payable"; - readonly name: "recipient"; - readonly type: "address"; - }]; - readonly internalType: "struct AdditionalRecipient[]"; - readonly name: "additionalRecipients"; - readonly type: "tuple[]"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly internalType: "struct BasicOrderParameters"; - readonly name: "parameters"; - readonly type: "tuple"; - }]; - readonly name: "fulfillBasicOrder_efficient_6GL6yc"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: "fulfilled"; - readonly type: "bool"; - }]; - readonly stateMutability: "payable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly components: readonly [{ - readonly components: readonly [{ - readonly internalType: "address"; - readonly name: "offerer"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "zone"; - readonly type: "address"; - }, { - readonly components: readonly [{ - readonly internalType: "enum ItemType"; - readonly name: "itemType"; - readonly type: "uint8"; - }, { - readonly internalType: "address"; - readonly name: "token"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "identifierOrCriteria"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "startAmount"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "endAmount"; - readonly type: "uint256"; - }]; - readonly internalType: "struct OfferItem[]"; - readonly name: "offer"; - readonly type: "tuple[]"; - }, { - readonly components: readonly [{ - readonly internalType: "enum ItemType"; - readonly name: "itemType"; - readonly type: "uint8"; - }, { - readonly internalType: "address"; - readonly name: "token"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "identifierOrCriteria"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "startAmount"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "endAmount"; - readonly type: "uint256"; - }, { - readonly internalType: "address payable"; - readonly name: "recipient"; - readonly type: "address"; - }]; - readonly internalType: "struct ConsiderationItem[]"; - readonly name: "consideration"; - readonly type: "tuple[]"; - }, { - readonly internalType: "enum OrderType"; - readonly name: "orderType"; - readonly type: "uint8"; - }, { - readonly internalType: "uint256"; - readonly name: "startTime"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "endTime"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes32"; - readonly name: "zoneHash"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "salt"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes32"; - readonly name: "conduitKey"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "totalOriginalConsiderationItems"; - readonly type: "uint256"; - }]; - readonly internalType: "struct OrderParameters"; - readonly name: "parameters"; - readonly type: "tuple"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly internalType: "struct Order"; - readonly name: "order"; - readonly type: "tuple"; - }, { - readonly internalType: "bytes32"; - readonly name: "fulfillerConduitKey"; - readonly type: "bytes32"; - }]; - readonly name: "fulfillOrder"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: "fulfilled"; - readonly type: "bool"; - }]; - readonly stateMutability: "payable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "contractOfferer"; - readonly type: "address"; - }]; - readonly name: "getContractOffererNonce"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "nonce"; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "address"; - readonly name: "offerer"; - readonly type: "address"; - }]; - readonly name: "getCounter"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "counter"; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly components: readonly [{ - readonly internalType: "address"; - readonly name: "offerer"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "zone"; - readonly type: "address"; - }, { - readonly components: readonly [{ - readonly internalType: "enum ItemType"; - readonly name: "itemType"; - readonly type: "uint8"; - }, { - readonly internalType: "address"; - readonly name: "token"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "identifierOrCriteria"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "startAmount"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "endAmount"; - readonly type: "uint256"; - }]; - readonly internalType: "struct OfferItem[]"; - readonly name: "offer"; - readonly type: "tuple[]"; - }, { - readonly components: readonly [{ - readonly internalType: "enum ItemType"; - readonly name: "itemType"; - readonly type: "uint8"; - }, { - readonly internalType: "address"; - readonly name: "token"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "identifierOrCriteria"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "startAmount"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "endAmount"; - readonly type: "uint256"; - }, { - readonly internalType: "address payable"; - readonly name: "recipient"; - readonly type: "address"; - }]; - readonly internalType: "struct ConsiderationItem[]"; - readonly name: "consideration"; - readonly type: "tuple[]"; - }, { - readonly internalType: "enum OrderType"; - readonly name: "orderType"; - readonly type: "uint8"; - }, { - readonly internalType: "uint256"; - readonly name: "startTime"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "endTime"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes32"; - readonly name: "zoneHash"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "salt"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes32"; - readonly name: "conduitKey"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "counter"; - readonly type: "uint256"; - }]; - readonly internalType: "struct OrderComponents"; - readonly name: "order"; - readonly type: "tuple"; - }]; - readonly name: "getOrderHash"; - readonly outputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "orderHash"; - readonly type: "bytes32"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly internalType: "bytes32"; - readonly name: "orderHash"; - readonly type: "bytes32"; - }]; - readonly name: "getOrderStatus"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: "isValidated"; - readonly type: "bool"; - }, { - readonly internalType: "bool"; - readonly name: "isCancelled"; - readonly type: "bool"; - }, { - readonly internalType: "uint256"; - readonly name: "totalFilled"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "totalSize"; - readonly type: "uint256"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "incrementCounter"; - readonly outputs: readonly [{ - readonly internalType: "uint256"; - readonly name: "newCounter"; - readonly type: "uint256"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "information"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: "version"; - readonly type: "string"; - }, { - readonly internalType: "bytes32"; - readonly name: "domainSeparator"; - readonly type: "bytes32"; - }, { - readonly internalType: "address"; - readonly name: "conduitController"; - readonly type: "address"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly components: readonly [{ - readonly components: readonly [{ - readonly internalType: "address"; - readonly name: "offerer"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "zone"; - readonly type: "address"; - }, { - readonly components: readonly [{ - readonly internalType: "enum ItemType"; - readonly name: "itemType"; - readonly type: "uint8"; - }, { - readonly internalType: "address"; - readonly name: "token"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "identifierOrCriteria"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "startAmount"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "endAmount"; - readonly type: "uint256"; - }]; - readonly internalType: "struct OfferItem[]"; - readonly name: "offer"; - readonly type: "tuple[]"; - }, { - readonly components: readonly [{ - readonly internalType: "enum ItemType"; - readonly name: "itemType"; - readonly type: "uint8"; - }, { - readonly internalType: "address"; - readonly name: "token"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "identifierOrCriteria"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "startAmount"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "endAmount"; - readonly type: "uint256"; - }, { - readonly internalType: "address payable"; - readonly name: "recipient"; - readonly type: "address"; - }]; - readonly internalType: "struct ConsiderationItem[]"; - readonly name: "consideration"; - readonly type: "tuple[]"; - }, { - readonly internalType: "enum OrderType"; - readonly name: "orderType"; - readonly type: "uint8"; - }, { - readonly internalType: "uint256"; - readonly name: "startTime"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "endTime"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes32"; - readonly name: "zoneHash"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "salt"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes32"; - readonly name: "conduitKey"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "totalOriginalConsiderationItems"; - readonly type: "uint256"; - }]; - readonly internalType: "struct OrderParameters"; - readonly name: "parameters"; - readonly type: "tuple"; - }, { - readonly internalType: "uint120"; - readonly name: "numerator"; - readonly type: "uint120"; - }, { - readonly internalType: "uint120"; - readonly name: "denominator"; - readonly type: "uint120"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }, { - readonly internalType: "bytes"; - readonly name: "extraData"; - readonly type: "bytes"; - }]; - readonly internalType: "struct AdvancedOrder[]"; - readonly name: "orders"; - readonly type: "tuple[]"; - }, { - readonly components: readonly [{ - readonly internalType: "uint256"; - readonly name: "orderIndex"; - readonly type: "uint256"; - }, { - readonly internalType: "enum Side"; - readonly name: "side"; - readonly type: "uint8"; - }, { - readonly internalType: "uint256"; - readonly name: "index"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "identifier"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes32[]"; - readonly name: "criteriaProof"; - readonly type: "bytes32[]"; - }]; - readonly internalType: "struct CriteriaResolver[]"; - readonly name: "criteriaResolvers"; - readonly type: "tuple[]"; - }, { - readonly components: readonly [{ - readonly components: readonly [{ - readonly internalType: "uint256"; - readonly name: "orderIndex"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "itemIndex"; - readonly type: "uint256"; - }]; - readonly internalType: "struct FulfillmentComponent[]"; - readonly name: "offerComponents"; - readonly type: "tuple[]"; - }, { - readonly components: readonly [{ - readonly internalType: "uint256"; - readonly name: "orderIndex"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "itemIndex"; - readonly type: "uint256"; - }]; - readonly internalType: "struct FulfillmentComponent[]"; - readonly name: "considerationComponents"; - readonly type: "tuple[]"; - }]; - readonly internalType: "struct Fulfillment[]"; - readonly name: "fulfillments"; - readonly type: "tuple[]"; - }, { - readonly internalType: "address"; - readonly name: "recipient"; - readonly type: "address"; - }]; - readonly name: "matchAdvancedOrders"; - readonly outputs: readonly [{ - readonly components: readonly [{ - readonly components: readonly [{ - readonly internalType: "enum ItemType"; - readonly name: "itemType"; - readonly type: "uint8"; - }, { - readonly internalType: "address"; - readonly name: "token"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "identifier"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "amount"; - readonly type: "uint256"; - }, { - readonly internalType: "address payable"; - readonly name: "recipient"; - readonly type: "address"; - }]; - readonly internalType: "struct ReceivedItem"; - readonly name: "item"; - readonly type: "tuple"; - }, { - readonly internalType: "address"; - readonly name: "offerer"; - readonly type: "address"; - }, { - readonly internalType: "bytes32"; - readonly name: "conduitKey"; - readonly type: "bytes32"; - }]; - readonly internalType: "struct Execution[]"; - readonly name: "executions"; - readonly type: "tuple[]"; - }]; - readonly stateMutability: "payable"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly components: readonly [{ - readonly components: readonly [{ - readonly internalType: "address"; - readonly name: "offerer"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "zone"; - readonly type: "address"; - }, { - readonly components: readonly [{ - readonly internalType: "enum ItemType"; - readonly name: "itemType"; - readonly type: "uint8"; - }, { - readonly internalType: "address"; - readonly name: "token"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "identifierOrCriteria"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "startAmount"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "endAmount"; - readonly type: "uint256"; - }]; - readonly internalType: "struct OfferItem[]"; - readonly name: "offer"; - readonly type: "tuple[]"; - }, { - readonly components: readonly [{ - readonly internalType: "enum ItemType"; - readonly name: "itemType"; - readonly type: "uint8"; - }, { - readonly internalType: "address"; - readonly name: "token"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "identifierOrCriteria"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "startAmount"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "endAmount"; - readonly type: "uint256"; - }, { - readonly internalType: "address payable"; - readonly name: "recipient"; - readonly type: "address"; - }]; - readonly internalType: "struct ConsiderationItem[]"; - readonly name: "consideration"; - readonly type: "tuple[]"; - }, { - readonly internalType: "enum OrderType"; - readonly name: "orderType"; - readonly type: "uint8"; - }, { - readonly internalType: "uint256"; - readonly name: "startTime"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "endTime"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes32"; - readonly name: "zoneHash"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "salt"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes32"; - readonly name: "conduitKey"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "totalOriginalConsiderationItems"; - readonly type: "uint256"; - }]; - readonly internalType: "struct OrderParameters"; - readonly name: "parameters"; - readonly type: "tuple"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly internalType: "struct Order[]"; - readonly name: "orders"; - readonly type: "tuple[]"; - }, { - readonly components: readonly [{ - readonly components: readonly [{ - readonly internalType: "uint256"; - readonly name: "orderIndex"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "itemIndex"; - readonly type: "uint256"; - }]; - readonly internalType: "struct FulfillmentComponent[]"; - readonly name: "offerComponents"; - readonly type: "tuple[]"; - }, { - readonly components: readonly [{ - readonly internalType: "uint256"; - readonly name: "orderIndex"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "itemIndex"; - readonly type: "uint256"; - }]; - readonly internalType: "struct FulfillmentComponent[]"; - readonly name: "considerationComponents"; - readonly type: "tuple[]"; - }]; - readonly internalType: "struct Fulfillment[]"; - readonly name: "fulfillments"; - readonly type: "tuple[]"; - }]; - readonly name: "matchOrders"; - readonly outputs: readonly [{ - readonly components: readonly [{ - readonly components: readonly [{ - readonly internalType: "enum ItemType"; - readonly name: "itemType"; - readonly type: "uint8"; - }, { - readonly internalType: "address"; - readonly name: "token"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "identifier"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "amount"; - readonly type: "uint256"; - }, { - readonly internalType: "address payable"; - readonly name: "recipient"; - readonly type: "address"; - }]; - readonly internalType: "struct ReceivedItem"; - readonly name: "item"; - readonly type: "tuple"; - }, { - readonly internalType: "address"; - readonly name: "offerer"; - readonly type: "address"; - }, { - readonly internalType: "bytes32"; - readonly name: "conduitKey"; - readonly type: "bytes32"; - }]; - readonly internalType: "struct Execution[]"; - readonly name: "executions"; - readonly type: "tuple[]"; - }]; - readonly stateMutability: "payable"; - readonly type: "function"; - }, { - readonly inputs: readonly []; - readonly name: "name"; - readonly outputs: readonly [{ - readonly internalType: "string"; - readonly name: "contractName"; - readonly type: "string"; - }]; - readonly stateMutability: "view"; - readonly type: "function"; - }, { - readonly inputs: readonly [{ - readonly components: readonly [{ - readonly components: readonly [{ - readonly internalType: "address"; - readonly name: "offerer"; - readonly type: "address"; - }, { - readonly internalType: "address"; - readonly name: "zone"; - readonly type: "address"; - }, { - readonly components: readonly [{ - readonly internalType: "enum ItemType"; - readonly name: "itemType"; - readonly type: "uint8"; - }, { - readonly internalType: "address"; - readonly name: "token"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "identifierOrCriteria"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "startAmount"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "endAmount"; - readonly type: "uint256"; - }]; - readonly internalType: "struct OfferItem[]"; - readonly name: "offer"; - readonly type: "tuple[]"; - }, { - readonly components: readonly [{ - readonly internalType: "enum ItemType"; - readonly name: "itemType"; - readonly type: "uint8"; - }, { - readonly internalType: "address"; - readonly name: "token"; - readonly type: "address"; - }, { - readonly internalType: "uint256"; - readonly name: "identifierOrCriteria"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "startAmount"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "endAmount"; - readonly type: "uint256"; - }, { - readonly internalType: "address payable"; - readonly name: "recipient"; - readonly type: "address"; - }]; - readonly internalType: "struct ConsiderationItem[]"; - readonly name: "consideration"; - readonly type: "tuple[]"; - }, { - readonly internalType: "enum OrderType"; - readonly name: "orderType"; - readonly type: "uint8"; - }, { - readonly internalType: "uint256"; - readonly name: "startTime"; - readonly type: "uint256"; - }, { - readonly internalType: "uint256"; - readonly name: "endTime"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes32"; - readonly name: "zoneHash"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "salt"; - readonly type: "uint256"; - }, { - readonly internalType: "bytes32"; - readonly name: "conduitKey"; - readonly type: "bytes32"; - }, { - readonly internalType: "uint256"; - readonly name: "totalOriginalConsiderationItems"; - readonly type: "uint256"; - }]; - readonly internalType: "struct OrderParameters"; - readonly name: "parameters"; - readonly type: "tuple"; - }, { - readonly internalType: "bytes"; - readonly name: "signature"; - readonly type: "bytes"; - }]; - readonly internalType: "struct Order[]"; - readonly name: "orders"; - readonly type: "tuple[]"; - }]; - readonly name: "validate"; - readonly outputs: readonly [{ - readonly internalType: "bool"; - readonly name: "validated"; - readonly type: "bool"; - }]; - readonly stateMutability: "nonpayable"; - readonly type: "function"; - }]; - static createInterface(): ConsiderationInterfaceInterface; - static connect(address: string, runner?: ContractRunner | null): ConsiderationInterface; -} -//# sourceMappingURL=ConsiderationInterface__factory.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/seaport-types/src/interfaces/ConsiderationInterface__factory.d.ts.map b/dist/types/factories/seaport-types/src/interfaces/ConsiderationInterface__factory.d.ts.map deleted file mode 100644 index 3d2e5988..00000000 --- a/dist/types/factories/seaport-types/src/interfaces/ConsiderationInterface__factory.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ConsiderationInterface__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/seaport-types/src/interfaces/ConsiderationInterface__factory.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EACV,sBAAsB,EACtB,+BAA+B,EAChC,MAAM,iEAAiE,CAAC;AAipEzE,qBAAa,+BAA+B;IAC1C,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,+BAA+B;IAGzD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,sBAAsB;CAO1B"} \ No newline at end of file diff --git a/dist/types/factories/seaport-types/src/interfaces/ConsiderationInterface__factory.js b/dist/types/factories/seaport-types/src/interfaces/ConsiderationInterface__factory.js deleted file mode 100644 index 7799078f..00000000 --- a/dist/types/factories/seaport-types/src/interfaces/ConsiderationInterface__factory.js +++ /dev/null @@ -1,2204 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ConsiderationInterface__factory = void 0; -const ethers_1 = require("ethers"); -const _abi = [ - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "offerer", - type: "address", - }, - { - internalType: "address", - name: "zone", - type: "address", - }, - { - components: [ - { - internalType: "enum ItemType", - name: "itemType", - type: "uint8", - }, - { - internalType: "address", - name: "token", - type: "address", - }, - { - internalType: "uint256", - name: "identifierOrCriteria", - type: "uint256", - }, - { - internalType: "uint256", - name: "startAmount", - type: "uint256", - }, - { - internalType: "uint256", - name: "endAmount", - type: "uint256", - }, - ], - internalType: "struct OfferItem[]", - name: "offer", - type: "tuple[]", - }, - { - components: [ - { - internalType: "enum ItemType", - name: "itemType", - type: "uint8", - }, - { - internalType: "address", - name: "token", - type: "address", - }, - { - internalType: "uint256", - name: "identifierOrCriteria", - type: "uint256", - }, - { - internalType: "uint256", - name: "startAmount", - type: "uint256", - }, - { - internalType: "uint256", - name: "endAmount", - type: "uint256", - }, - { - internalType: "address payable", - name: "recipient", - type: "address", - }, - ], - internalType: "struct ConsiderationItem[]", - name: "consideration", - type: "tuple[]", - }, - { - internalType: "enum OrderType", - name: "orderType", - type: "uint8", - }, - { - internalType: "uint256", - name: "startTime", - type: "uint256", - }, - { - internalType: "uint256", - name: "endTime", - type: "uint256", - }, - { - internalType: "bytes32", - name: "zoneHash", - type: "bytes32", - }, - { - internalType: "uint256", - name: "salt", - type: "uint256", - }, - { - internalType: "bytes32", - name: "conduitKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "counter", - type: "uint256", - }, - ], - internalType: "struct OrderComponents[]", - name: "orders", - type: "tuple[]", - }, - ], - name: "cancel", - outputs: [ - { - internalType: "bool", - name: "cancelled", - type: "bool", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - components: [ - { - components: [ - { - internalType: "address", - name: "offerer", - type: "address", - }, - { - internalType: "address", - name: "zone", - type: "address", - }, - { - components: [ - { - internalType: "enum ItemType", - name: "itemType", - type: "uint8", - }, - { - internalType: "address", - name: "token", - type: "address", - }, - { - internalType: "uint256", - name: "identifierOrCriteria", - type: "uint256", - }, - { - internalType: "uint256", - name: "startAmount", - type: "uint256", - }, - { - internalType: "uint256", - name: "endAmount", - type: "uint256", - }, - ], - internalType: "struct OfferItem[]", - name: "offer", - type: "tuple[]", - }, - { - components: [ - { - internalType: "enum ItemType", - name: "itemType", - type: "uint8", - }, - { - internalType: "address", - name: "token", - type: "address", - }, - { - internalType: "uint256", - name: "identifierOrCriteria", - type: "uint256", - }, - { - internalType: "uint256", - name: "startAmount", - type: "uint256", - }, - { - internalType: "uint256", - name: "endAmount", - type: "uint256", - }, - { - internalType: "address payable", - name: "recipient", - type: "address", - }, - ], - internalType: "struct ConsiderationItem[]", - name: "consideration", - type: "tuple[]", - }, - { - internalType: "enum OrderType", - name: "orderType", - type: "uint8", - }, - { - internalType: "uint256", - name: "startTime", - type: "uint256", - }, - { - internalType: "uint256", - name: "endTime", - type: "uint256", - }, - { - internalType: "bytes32", - name: "zoneHash", - type: "bytes32", - }, - { - internalType: "uint256", - name: "salt", - type: "uint256", - }, - { - internalType: "bytes32", - name: "conduitKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "totalOriginalConsiderationItems", - type: "uint256", - }, - ], - internalType: "struct OrderParameters", - name: "parameters", - type: "tuple", - }, - { - internalType: "uint120", - name: "numerator", - type: "uint120", - }, - { - internalType: "uint120", - name: "denominator", - type: "uint120", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - { - internalType: "bytes", - name: "extraData", - type: "bytes", - }, - ], - internalType: "struct AdvancedOrder", - name: "advancedOrder", - type: "tuple", - }, - { - components: [ - { - internalType: "uint256", - name: "orderIndex", - type: "uint256", - }, - { - internalType: "enum Side", - name: "side", - type: "uint8", - }, - { - internalType: "uint256", - name: "index", - type: "uint256", - }, - { - internalType: "uint256", - name: "identifier", - type: "uint256", - }, - { - internalType: "bytes32[]", - name: "criteriaProof", - type: "bytes32[]", - }, - ], - internalType: "struct CriteriaResolver[]", - name: "criteriaResolvers", - type: "tuple[]", - }, - { - internalType: "bytes32", - name: "fulfillerConduitKey", - type: "bytes32", - }, - { - internalType: "address", - name: "recipient", - type: "address", - }, - ], - name: "fulfillAdvancedOrder", - outputs: [ - { - internalType: "bool", - name: "fulfilled", - type: "bool", - }, - ], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - components: [ - { - components: [ - { - internalType: "address", - name: "offerer", - type: "address", - }, - { - internalType: "address", - name: "zone", - type: "address", - }, - { - components: [ - { - internalType: "enum ItemType", - name: "itemType", - type: "uint8", - }, - { - internalType: "address", - name: "token", - type: "address", - }, - { - internalType: "uint256", - name: "identifierOrCriteria", - type: "uint256", - }, - { - internalType: "uint256", - name: "startAmount", - type: "uint256", - }, - { - internalType: "uint256", - name: "endAmount", - type: "uint256", - }, - ], - internalType: "struct OfferItem[]", - name: "offer", - type: "tuple[]", - }, - { - components: [ - { - internalType: "enum ItemType", - name: "itemType", - type: "uint8", - }, - { - internalType: "address", - name: "token", - type: "address", - }, - { - internalType: "uint256", - name: "identifierOrCriteria", - type: "uint256", - }, - { - internalType: "uint256", - name: "startAmount", - type: "uint256", - }, - { - internalType: "uint256", - name: "endAmount", - type: "uint256", - }, - { - internalType: "address payable", - name: "recipient", - type: "address", - }, - ], - internalType: "struct ConsiderationItem[]", - name: "consideration", - type: "tuple[]", - }, - { - internalType: "enum OrderType", - name: "orderType", - type: "uint8", - }, - { - internalType: "uint256", - name: "startTime", - type: "uint256", - }, - { - internalType: "uint256", - name: "endTime", - type: "uint256", - }, - { - internalType: "bytes32", - name: "zoneHash", - type: "bytes32", - }, - { - internalType: "uint256", - name: "salt", - type: "uint256", - }, - { - internalType: "bytes32", - name: "conduitKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "totalOriginalConsiderationItems", - type: "uint256", - }, - ], - internalType: "struct OrderParameters", - name: "parameters", - type: "tuple", - }, - { - internalType: "uint120", - name: "numerator", - type: "uint120", - }, - { - internalType: "uint120", - name: "denominator", - type: "uint120", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - { - internalType: "bytes", - name: "extraData", - type: "bytes", - }, - ], - internalType: "struct AdvancedOrder[]", - name: "advancedOrders", - type: "tuple[]", - }, - { - components: [ - { - internalType: "uint256", - name: "orderIndex", - type: "uint256", - }, - { - internalType: "enum Side", - name: "side", - type: "uint8", - }, - { - internalType: "uint256", - name: "index", - type: "uint256", - }, - { - internalType: "uint256", - name: "identifier", - type: "uint256", - }, - { - internalType: "bytes32[]", - name: "criteriaProof", - type: "bytes32[]", - }, - ], - internalType: "struct CriteriaResolver[]", - name: "criteriaResolvers", - type: "tuple[]", - }, - { - components: [ - { - internalType: "uint256", - name: "orderIndex", - type: "uint256", - }, - { - internalType: "uint256", - name: "itemIndex", - type: "uint256", - }, - ], - internalType: "struct FulfillmentComponent[][]", - name: "offerFulfillments", - type: "tuple[][]", - }, - { - components: [ - { - internalType: "uint256", - name: "orderIndex", - type: "uint256", - }, - { - internalType: "uint256", - name: "itemIndex", - type: "uint256", - }, - ], - internalType: "struct FulfillmentComponent[][]", - name: "considerationFulfillments", - type: "tuple[][]", - }, - { - internalType: "bytes32", - name: "fulfillerConduitKey", - type: "bytes32", - }, - { - internalType: "address", - name: "recipient", - type: "address", - }, - { - internalType: "uint256", - name: "maximumFulfilled", - type: "uint256", - }, - ], - name: "fulfillAvailableAdvancedOrders", - outputs: [ - { - internalType: "bool[]", - name: "availableOrders", - type: "bool[]", - }, - { - components: [ - { - components: [ - { - internalType: "enum ItemType", - name: "itemType", - type: "uint8", - }, - { - internalType: "address", - name: "token", - type: "address", - }, - { - internalType: "uint256", - name: "identifier", - type: "uint256", - }, - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - { - internalType: "address payable", - name: "recipient", - type: "address", - }, - ], - internalType: "struct ReceivedItem", - name: "item", - type: "tuple", - }, - { - internalType: "address", - name: "offerer", - type: "address", - }, - { - internalType: "bytes32", - name: "conduitKey", - type: "bytes32", - }, - ], - internalType: "struct Execution[]", - name: "executions", - type: "tuple[]", - }, - ], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - components: [ - { - components: [ - { - internalType: "address", - name: "offerer", - type: "address", - }, - { - internalType: "address", - name: "zone", - type: "address", - }, - { - components: [ - { - internalType: "enum ItemType", - name: "itemType", - type: "uint8", - }, - { - internalType: "address", - name: "token", - type: "address", - }, - { - internalType: "uint256", - name: "identifierOrCriteria", - type: "uint256", - }, - { - internalType: "uint256", - name: "startAmount", - type: "uint256", - }, - { - internalType: "uint256", - name: "endAmount", - type: "uint256", - }, - ], - internalType: "struct OfferItem[]", - name: "offer", - type: "tuple[]", - }, - { - components: [ - { - internalType: "enum ItemType", - name: "itemType", - type: "uint8", - }, - { - internalType: "address", - name: "token", - type: "address", - }, - { - internalType: "uint256", - name: "identifierOrCriteria", - type: "uint256", - }, - { - internalType: "uint256", - name: "startAmount", - type: "uint256", - }, - { - internalType: "uint256", - name: "endAmount", - type: "uint256", - }, - { - internalType: "address payable", - name: "recipient", - type: "address", - }, - ], - internalType: "struct ConsiderationItem[]", - name: "consideration", - type: "tuple[]", - }, - { - internalType: "enum OrderType", - name: "orderType", - type: "uint8", - }, - { - internalType: "uint256", - name: "startTime", - type: "uint256", - }, - { - internalType: "uint256", - name: "endTime", - type: "uint256", - }, - { - internalType: "bytes32", - name: "zoneHash", - type: "bytes32", - }, - { - internalType: "uint256", - name: "salt", - type: "uint256", - }, - { - internalType: "bytes32", - name: "conduitKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "totalOriginalConsiderationItems", - type: "uint256", - }, - ], - internalType: "struct OrderParameters", - name: "parameters", - type: "tuple", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - internalType: "struct Order[]", - name: "orders", - type: "tuple[]", - }, - { - components: [ - { - internalType: "uint256", - name: "orderIndex", - type: "uint256", - }, - { - internalType: "uint256", - name: "itemIndex", - type: "uint256", - }, - ], - internalType: "struct FulfillmentComponent[][]", - name: "offerFulfillments", - type: "tuple[][]", - }, - { - components: [ - { - internalType: "uint256", - name: "orderIndex", - type: "uint256", - }, - { - internalType: "uint256", - name: "itemIndex", - type: "uint256", - }, - ], - internalType: "struct FulfillmentComponent[][]", - name: "considerationFulfillments", - type: "tuple[][]", - }, - { - internalType: "bytes32", - name: "fulfillerConduitKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "maximumFulfilled", - type: "uint256", - }, - ], - name: "fulfillAvailableOrders", - outputs: [ - { - internalType: "bool[]", - name: "availableOrders", - type: "bool[]", - }, - { - components: [ - { - components: [ - { - internalType: "enum ItemType", - name: "itemType", - type: "uint8", - }, - { - internalType: "address", - name: "token", - type: "address", - }, - { - internalType: "uint256", - name: "identifier", - type: "uint256", - }, - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - { - internalType: "address payable", - name: "recipient", - type: "address", - }, - ], - internalType: "struct ReceivedItem", - name: "item", - type: "tuple", - }, - { - internalType: "address", - name: "offerer", - type: "address", - }, - { - internalType: "bytes32", - name: "conduitKey", - type: "bytes32", - }, - ], - internalType: "struct Execution[]", - name: "executions", - type: "tuple[]", - }, - ], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "considerationToken", - type: "address", - }, - { - internalType: "uint256", - name: "considerationIdentifier", - type: "uint256", - }, - { - internalType: "uint256", - name: "considerationAmount", - type: "uint256", - }, - { - internalType: "address payable", - name: "offerer", - type: "address", - }, - { - internalType: "address", - name: "zone", - type: "address", - }, - { - internalType: "address", - name: "offerToken", - type: "address", - }, - { - internalType: "uint256", - name: "offerIdentifier", - type: "uint256", - }, - { - internalType: "uint256", - name: "offerAmount", - type: "uint256", - }, - { - internalType: "enum BasicOrderType", - name: "basicOrderType", - type: "uint8", - }, - { - internalType: "uint256", - name: "startTime", - type: "uint256", - }, - { - internalType: "uint256", - name: "endTime", - type: "uint256", - }, - { - internalType: "bytes32", - name: "zoneHash", - type: "bytes32", - }, - { - internalType: "uint256", - name: "salt", - type: "uint256", - }, - { - internalType: "bytes32", - name: "offererConduitKey", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "fulfillerConduitKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "totalOriginalAdditionalRecipients", - type: "uint256", - }, - { - components: [ - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - { - internalType: "address payable", - name: "recipient", - type: "address", - }, - ], - internalType: "struct AdditionalRecipient[]", - name: "additionalRecipients", - type: "tuple[]", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - internalType: "struct BasicOrderParameters", - name: "parameters", - type: "tuple", - }, - ], - name: "fulfillBasicOrder", - outputs: [ - { - internalType: "bool", - name: "fulfilled", - type: "bool", - }, - ], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "considerationToken", - type: "address", - }, - { - internalType: "uint256", - name: "considerationIdentifier", - type: "uint256", - }, - { - internalType: "uint256", - name: "considerationAmount", - type: "uint256", - }, - { - internalType: "address payable", - name: "offerer", - type: "address", - }, - { - internalType: "address", - name: "zone", - type: "address", - }, - { - internalType: "address", - name: "offerToken", - type: "address", - }, - { - internalType: "uint256", - name: "offerIdentifier", - type: "uint256", - }, - { - internalType: "uint256", - name: "offerAmount", - type: "uint256", - }, - { - internalType: "enum BasicOrderType", - name: "basicOrderType", - type: "uint8", - }, - { - internalType: "uint256", - name: "startTime", - type: "uint256", - }, - { - internalType: "uint256", - name: "endTime", - type: "uint256", - }, - { - internalType: "bytes32", - name: "zoneHash", - type: "bytes32", - }, - { - internalType: "uint256", - name: "salt", - type: "uint256", - }, - { - internalType: "bytes32", - name: "offererConduitKey", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "fulfillerConduitKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "totalOriginalAdditionalRecipients", - type: "uint256", - }, - { - components: [ - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - { - internalType: "address payable", - name: "recipient", - type: "address", - }, - ], - internalType: "struct AdditionalRecipient[]", - name: "additionalRecipients", - type: "tuple[]", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - internalType: "struct BasicOrderParameters", - name: "parameters", - type: "tuple", - }, - ], - name: "fulfillBasicOrder_efficient_6GL6yc", - outputs: [ - { - internalType: "bool", - name: "fulfilled", - type: "bool", - }, - ], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - components: [ - { - components: [ - { - internalType: "address", - name: "offerer", - type: "address", - }, - { - internalType: "address", - name: "zone", - type: "address", - }, - { - components: [ - { - internalType: "enum ItemType", - name: "itemType", - type: "uint8", - }, - { - internalType: "address", - name: "token", - type: "address", - }, - { - internalType: "uint256", - name: "identifierOrCriteria", - type: "uint256", - }, - { - internalType: "uint256", - name: "startAmount", - type: "uint256", - }, - { - internalType: "uint256", - name: "endAmount", - type: "uint256", - }, - ], - internalType: "struct OfferItem[]", - name: "offer", - type: "tuple[]", - }, - { - components: [ - { - internalType: "enum ItemType", - name: "itemType", - type: "uint8", - }, - { - internalType: "address", - name: "token", - type: "address", - }, - { - internalType: "uint256", - name: "identifierOrCriteria", - type: "uint256", - }, - { - internalType: "uint256", - name: "startAmount", - type: "uint256", - }, - { - internalType: "uint256", - name: "endAmount", - type: "uint256", - }, - { - internalType: "address payable", - name: "recipient", - type: "address", - }, - ], - internalType: "struct ConsiderationItem[]", - name: "consideration", - type: "tuple[]", - }, - { - internalType: "enum OrderType", - name: "orderType", - type: "uint8", - }, - { - internalType: "uint256", - name: "startTime", - type: "uint256", - }, - { - internalType: "uint256", - name: "endTime", - type: "uint256", - }, - { - internalType: "bytes32", - name: "zoneHash", - type: "bytes32", - }, - { - internalType: "uint256", - name: "salt", - type: "uint256", - }, - { - internalType: "bytes32", - name: "conduitKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "totalOriginalConsiderationItems", - type: "uint256", - }, - ], - internalType: "struct OrderParameters", - name: "parameters", - type: "tuple", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - internalType: "struct Order", - name: "order", - type: "tuple", - }, - { - internalType: "bytes32", - name: "fulfillerConduitKey", - type: "bytes32", - }, - ], - name: "fulfillOrder", - outputs: [ - { - internalType: "bool", - name: "fulfilled", - type: "bool", - }, - ], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "contractOfferer", - type: "address", - }, - ], - name: "getContractOffererNonce", - outputs: [ - { - internalType: "uint256", - name: "nonce", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "offerer", - type: "address", - }, - ], - name: "getCounter", - outputs: [ - { - internalType: "uint256", - name: "counter", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "offerer", - type: "address", - }, - { - internalType: "address", - name: "zone", - type: "address", - }, - { - components: [ - { - internalType: "enum ItemType", - name: "itemType", - type: "uint8", - }, - { - internalType: "address", - name: "token", - type: "address", - }, - { - internalType: "uint256", - name: "identifierOrCriteria", - type: "uint256", - }, - { - internalType: "uint256", - name: "startAmount", - type: "uint256", - }, - { - internalType: "uint256", - name: "endAmount", - type: "uint256", - }, - ], - internalType: "struct OfferItem[]", - name: "offer", - type: "tuple[]", - }, - { - components: [ - { - internalType: "enum ItemType", - name: "itemType", - type: "uint8", - }, - { - internalType: "address", - name: "token", - type: "address", - }, - { - internalType: "uint256", - name: "identifierOrCriteria", - type: "uint256", - }, - { - internalType: "uint256", - name: "startAmount", - type: "uint256", - }, - { - internalType: "uint256", - name: "endAmount", - type: "uint256", - }, - { - internalType: "address payable", - name: "recipient", - type: "address", - }, - ], - internalType: "struct ConsiderationItem[]", - name: "consideration", - type: "tuple[]", - }, - { - internalType: "enum OrderType", - name: "orderType", - type: "uint8", - }, - { - internalType: "uint256", - name: "startTime", - type: "uint256", - }, - { - internalType: "uint256", - name: "endTime", - type: "uint256", - }, - { - internalType: "bytes32", - name: "zoneHash", - type: "bytes32", - }, - { - internalType: "uint256", - name: "salt", - type: "uint256", - }, - { - internalType: "bytes32", - name: "conduitKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "counter", - type: "uint256", - }, - ], - internalType: "struct OrderComponents", - name: "order", - type: "tuple", - }, - ], - name: "getOrderHash", - outputs: [ - { - internalType: "bytes32", - name: "orderHash", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "orderHash", - type: "bytes32", - }, - ], - name: "getOrderStatus", - outputs: [ - { - internalType: "bool", - name: "isValidated", - type: "bool", - }, - { - internalType: "bool", - name: "isCancelled", - type: "bool", - }, - { - internalType: "uint256", - name: "totalFilled", - type: "uint256", - }, - { - internalType: "uint256", - name: "totalSize", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "incrementCounter", - outputs: [ - { - internalType: "uint256", - name: "newCounter", - type: "uint256", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "information", - outputs: [ - { - internalType: "string", - name: "version", - type: "string", - }, - { - internalType: "bytes32", - name: "domainSeparator", - type: "bytes32", - }, - { - internalType: "address", - name: "conduitController", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - components: [ - { - components: [ - { - internalType: "address", - name: "offerer", - type: "address", - }, - { - internalType: "address", - name: "zone", - type: "address", - }, - { - components: [ - { - internalType: "enum ItemType", - name: "itemType", - type: "uint8", - }, - { - internalType: "address", - name: "token", - type: "address", - }, - { - internalType: "uint256", - name: "identifierOrCriteria", - type: "uint256", - }, - { - internalType: "uint256", - name: "startAmount", - type: "uint256", - }, - { - internalType: "uint256", - name: "endAmount", - type: "uint256", - }, - ], - internalType: "struct OfferItem[]", - name: "offer", - type: "tuple[]", - }, - { - components: [ - { - internalType: "enum ItemType", - name: "itemType", - type: "uint8", - }, - { - internalType: "address", - name: "token", - type: "address", - }, - { - internalType: "uint256", - name: "identifierOrCriteria", - type: "uint256", - }, - { - internalType: "uint256", - name: "startAmount", - type: "uint256", - }, - { - internalType: "uint256", - name: "endAmount", - type: "uint256", - }, - { - internalType: "address payable", - name: "recipient", - type: "address", - }, - ], - internalType: "struct ConsiderationItem[]", - name: "consideration", - type: "tuple[]", - }, - { - internalType: "enum OrderType", - name: "orderType", - type: "uint8", - }, - { - internalType: "uint256", - name: "startTime", - type: "uint256", - }, - { - internalType: "uint256", - name: "endTime", - type: "uint256", - }, - { - internalType: "bytes32", - name: "zoneHash", - type: "bytes32", - }, - { - internalType: "uint256", - name: "salt", - type: "uint256", - }, - { - internalType: "bytes32", - name: "conduitKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "totalOriginalConsiderationItems", - type: "uint256", - }, - ], - internalType: "struct OrderParameters", - name: "parameters", - type: "tuple", - }, - { - internalType: "uint120", - name: "numerator", - type: "uint120", - }, - { - internalType: "uint120", - name: "denominator", - type: "uint120", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - { - internalType: "bytes", - name: "extraData", - type: "bytes", - }, - ], - internalType: "struct AdvancedOrder[]", - name: "orders", - type: "tuple[]", - }, - { - components: [ - { - internalType: "uint256", - name: "orderIndex", - type: "uint256", - }, - { - internalType: "enum Side", - name: "side", - type: "uint8", - }, - { - internalType: "uint256", - name: "index", - type: "uint256", - }, - { - internalType: "uint256", - name: "identifier", - type: "uint256", - }, - { - internalType: "bytes32[]", - name: "criteriaProof", - type: "bytes32[]", - }, - ], - internalType: "struct CriteriaResolver[]", - name: "criteriaResolvers", - type: "tuple[]", - }, - { - components: [ - { - components: [ - { - internalType: "uint256", - name: "orderIndex", - type: "uint256", - }, - { - internalType: "uint256", - name: "itemIndex", - type: "uint256", - }, - ], - internalType: "struct FulfillmentComponent[]", - name: "offerComponents", - type: "tuple[]", - }, - { - components: [ - { - internalType: "uint256", - name: "orderIndex", - type: "uint256", - }, - { - internalType: "uint256", - name: "itemIndex", - type: "uint256", - }, - ], - internalType: "struct FulfillmentComponent[]", - name: "considerationComponents", - type: "tuple[]", - }, - ], - internalType: "struct Fulfillment[]", - name: "fulfillments", - type: "tuple[]", - }, - { - internalType: "address", - name: "recipient", - type: "address", - }, - ], - name: "matchAdvancedOrders", - outputs: [ - { - components: [ - { - components: [ - { - internalType: "enum ItemType", - name: "itemType", - type: "uint8", - }, - { - internalType: "address", - name: "token", - type: "address", - }, - { - internalType: "uint256", - name: "identifier", - type: "uint256", - }, - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - { - internalType: "address payable", - name: "recipient", - type: "address", - }, - ], - internalType: "struct ReceivedItem", - name: "item", - type: "tuple", - }, - { - internalType: "address", - name: "offerer", - type: "address", - }, - { - internalType: "bytes32", - name: "conduitKey", - type: "bytes32", - }, - ], - internalType: "struct Execution[]", - name: "executions", - type: "tuple[]", - }, - ], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - components: [ - { - components: [ - { - internalType: "address", - name: "offerer", - type: "address", - }, - { - internalType: "address", - name: "zone", - type: "address", - }, - { - components: [ - { - internalType: "enum ItemType", - name: "itemType", - type: "uint8", - }, - { - internalType: "address", - name: "token", - type: "address", - }, - { - internalType: "uint256", - name: "identifierOrCriteria", - type: "uint256", - }, - { - internalType: "uint256", - name: "startAmount", - type: "uint256", - }, - { - internalType: "uint256", - name: "endAmount", - type: "uint256", - }, - ], - internalType: "struct OfferItem[]", - name: "offer", - type: "tuple[]", - }, - { - components: [ - { - internalType: "enum ItemType", - name: "itemType", - type: "uint8", - }, - { - internalType: "address", - name: "token", - type: "address", - }, - { - internalType: "uint256", - name: "identifierOrCriteria", - type: "uint256", - }, - { - internalType: "uint256", - name: "startAmount", - type: "uint256", - }, - { - internalType: "uint256", - name: "endAmount", - type: "uint256", - }, - { - internalType: "address payable", - name: "recipient", - type: "address", - }, - ], - internalType: "struct ConsiderationItem[]", - name: "consideration", - type: "tuple[]", - }, - { - internalType: "enum OrderType", - name: "orderType", - type: "uint8", - }, - { - internalType: "uint256", - name: "startTime", - type: "uint256", - }, - { - internalType: "uint256", - name: "endTime", - type: "uint256", - }, - { - internalType: "bytes32", - name: "zoneHash", - type: "bytes32", - }, - { - internalType: "uint256", - name: "salt", - type: "uint256", - }, - { - internalType: "bytes32", - name: "conduitKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "totalOriginalConsiderationItems", - type: "uint256", - }, - ], - internalType: "struct OrderParameters", - name: "parameters", - type: "tuple", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - internalType: "struct Order[]", - name: "orders", - type: "tuple[]", - }, - { - components: [ - { - components: [ - { - internalType: "uint256", - name: "orderIndex", - type: "uint256", - }, - { - internalType: "uint256", - name: "itemIndex", - type: "uint256", - }, - ], - internalType: "struct FulfillmentComponent[]", - name: "offerComponents", - type: "tuple[]", - }, - { - components: [ - { - internalType: "uint256", - name: "orderIndex", - type: "uint256", - }, - { - internalType: "uint256", - name: "itemIndex", - type: "uint256", - }, - ], - internalType: "struct FulfillmentComponent[]", - name: "considerationComponents", - type: "tuple[]", - }, - ], - internalType: "struct Fulfillment[]", - name: "fulfillments", - type: "tuple[]", - }, - ], - name: "matchOrders", - outputs: [ - { - components: [ - { - components: [ - { - internalType: "enum ItemType", - name: "itemType", - type: "uint8", - }, - { - internalType: "address", - name: "token", - type: "address", - }, - { - internalType: "uint256", - name: "identifier", - type: "uint256", - }, - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - { - internalType: "address payable", - name: "recipient", - type: "address", - }, - ], - internalType: "struct ReceivedItem", - name: "item", - type: "tuple", - }, - { - internalType: "address", - name: "offerer", - type: "address", - }, - { - internalType: "bytes32", - name: "conduitKey", - type: "bytes32", - }, - ], - internalType: "struct Execution[]", - name: "executions", - type: "tuple[]", - }, - ], - stateMutability: "payable", - type: "function", - }, - { - inputs: [], - name: "name", - outputs: [ - { - internalType: "string", - name: "contractName", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - components: [ - { - components: [ - { - internalType: "address", - name: "offerer", - type: "address", - }, - { - internalType: "address", - name: "zone", - type: "address", - }, - { - components: [ - { - internalType: "enum ItemType", - name: "itemType", - type: "uint8", - }, - { - internalType: "address", - name: "token", - type: "address", - }, - { - internalType: "uint256", - name: "identifierOrCriteria", - type: "uint256", - }, - { - internalType: "uint256", - name: "startAmount", - type: "uint256", - }, - { - internalType: "uint256", - name: "endAmount", - type: "uint256", - }, - ], - internalType: "struct OfferItem[]", - name: "offer", - type: "tuple[]", - }, - { - components: [ - { - internalType: "enum ItemType", - name: "itemType", - type: "uint8", - }, - { - internalType: "address", - name: "token", - type: "address", - }, - { - internalType: "uint256", - name: "identifierOrCriteria", - type: "uint256", - }, - { - internalType: "uint256", - name: "startAmount", - type: "uint256", - }, - { - internalType: "uint256", - name: "endAmount", - type: "uint256", - }, - { - internalType: "address payable", - name: "recipient", - type: "address", - }, - ], - internalType: "struct ConsiderationItem[]", - name: "consideration", - type: "tuple[]", - }, - { - internalType: "enum OrderType", - name: "orderType", - type: "uint8", - }, - { - internalType: "uint256", - name: "startTime", - type: "uint256", - }, - { - internalType: "uint256", - name: "endTime", - type: "uint256", - }, - { - internalType: "bytes32", - name: "zoneHash", - type: "bytes32", - }, - { - internalType: "uint256", - name: "salt", - type: "uint256", - }, - { - internalType: "bytes32", - name: "conduitKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "totalOriginalConsiderationItems", - type: "uint256", - }, - ], - internalType: "struct OrderParameters", - name: "parameters", - type: "tuple", - }, - { - internalType: "bytes", - name: "signature", - type: "bytes", - }, - ], - internalType: "struct Order[]", - name: "orders", - type: "tuple[]", - }, - ], - name: "validate", - outputs: [ - { - internalType: "bool", - name: "validated", - type: "bool", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, -]; -class ConsiderationInterface__factory { - static createInterface() { - return new ethers_1.Interface(_abi); - } - static connect(address, runner) { - return new ethers_1.Contract(address, _abi, runner); - } -} -exports.ConsiderationInterface__factory = ConsiderationInterface__factory; -ConsiderationInterface__factory.abi = _abi; diff --git a/dist/types/factories/seaport-types/src/interfaces/index.d.ts b/dist/types/factories/seaport-types/src/interfaces/index.d.ts deleted file mode 100644 index b2df2560..00000000 --- a/dist/types/factories/seaport-types/src/interfaces/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export { ConsiderationInterface__factory } from "./ConsiderationInterface__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/factories/seaport-types/src/interfaces/index.d.ts.map b/dist/types/factories/seaport-types/src/interfaces/index.d.ts.map deleted file mode 100644 index d2d729bf..00000000 --- a/dist/types/factories/seaport-types/src/interfaces/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/seaport-types/src/interfaces/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,+BAA+B,EAAE,MAAM,mCAAmC,CAAC"} \ No newline at end of file diff --git a/dist/types/factories/seaport-types/src/interfaces/index.js b/dist/types/factories/seaport-types/src/interfaces/index.js deleted file mode 100644 index 1ec1bab6..00000000 --- a/dist/types/factories/seaport-types/src/interfaces/index.js +++ /dev/null @@ -1,5 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ConsiderationInterface__factory = void 0; -var ConsiderationInterface__factory_1 = require("./ConsiderationInterface__factory"); -Object.defineProperty(exports, "ConsiderationInterface__factory", { enumerable: true, get: function () { return ConsiderationInterface__factory_1.ConsiderationInterface__factory; } }); diff --git a/dist/types/index.d.ts b/dist/types/index.d.ts deleted file mode 100644 index 42335e46..00000000 --- a/dist/types/index.d.ts +++ /dev/null @@ -1,404 +0,0 @@ -import type * as ensdomains from "./@ensdomains"; -export type { ensdomains }; -import type * as openzeppelin from "./@openzeppelin"; -export type { openzeppelin }; -import type * as contracts from "./contracts"; -export type { contracts }; -import type * as dotCrypto from "./dot-crypto"; -export type { dotCrypto }; -import type * as seaportTypes from "./seaport-types"; -export type { seaportTypes }; -export * as factories from "./factories"; -export type { BytesUtils } from "./@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils"; -export { BytesUtils__factory } from "./factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils__factory"; -export type { BaseRegistrarImplementation } from "./@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation"; -export { BaseRegistrarImplementation__factory } from "./factories/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation__factory"; -export type { DummyOracle } from "./@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle"; -export { DummyOracle__factory } from "./factories/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle__factory"; -export type { ETHRegistrarController } from "./@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController"; -export { ETHRegistrarController__factory } from "./factories/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController__factory"; -export type { IBaseRegistrar } from "./@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar"; -export { IBaseRegistrar__factory } from "./factories/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar__factory"; -export type { IETHRegistrarController } from "./@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController"; -export { IETHRegistrarController__factory } from "./factories/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController__factory"; -export type { IPriceOracle } from "./@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle"; -export { IPriceOracle__factory } from "./factories/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle__factory"; -export type { AggregatorInterface } from "./@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface"; -export { AggregatorInterface__factory } from "./factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface__factory"; -export type { StablePriceOracle } from "./@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle"; -export { StablePriceOracle__factory } from "./factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle__factory"; -export type { ENS } from "./@ensdomains/ens-contracts/contracts/registry/ENS"; -export { ENS__factory } from "./factories/@ensdomains/ens-contracts/contracts/registry/ENS__factory"; -export type { ENSRegistry } from "./@ensdomains/ens-contracts/contracts/registry/ENSRegistry"; -export { ENSRegistry__factory } from "./factories/@ensdomains/ens-contracts/contracts/registry/ENSRegistry__factory"; -export type { IMulticallable } from "./@ensdomains/ens-contracts/contracts/resolvers/IMulticallable"; -export { IMulticallable__factory } from "./factories/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable__factory"; -export type { Multicallable } from "./@ensdomains/ens-contracts/contracts/resolvers/Multicallable"; -export { Multicallable__factory } from "./factories/@ensdomains/ens-contracts/contracts/resolvers/Multicallable__factory"; -export type { ABIResolver } from "./@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver"; -export { ABIResolver__factory } from "./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver__factory"; -export type { AddrResolver } from "./@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver"; -export { AddrResolver__factory } from "./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver__factory"; -export type { ContentHashResolver } from "./@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver"; -export { ContentHashResolver__factory } from "./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver__factory"; -export type { DNSResolver } from "./@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver"; -export { DNSResolver__factory } from "./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver__factory"; -export type { IABIResolver } from "./@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver"; -export { IABIResolver__factory } from "./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver__factory"; -export type { IAddressResolver } from "./@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver"; -export { IAddressResolver__factory } from "./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver__factory"; -export type { IAddrResolver } from "./@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver"; -export { IAddrResolver__factory } from "./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver__factory"; -export type { IContentHashResolver } from "./@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver"; -export { IContentHashResolver__factory } from "./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver__factory"; -export type { IDNSRecordResolver } from "./@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver"; -export { IDNSRecordResolver__factory } from "./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver__factory"; -export type { IDNSZoneResolver } from "./@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver"; -export { IDNSZoneResolver__factory } from "./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver__factory"; -export type { IExtendedResolver } from "./@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver"; -export { IExtendedResolver__factory } from "./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver__factory"; -export type { IInterfaceResolver } from "./@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver"; -export { IInterfaceResolver__factory } from "./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver__factory"; -export type { INameResolver } from "./@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver"; -export { INameResolver__factory } from "./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver__factory"; -export type { InterfaceResolver } from "./@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver"; -export { InterfaceResolver__factory } from "./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver__factory"; -export type { IPubkeyResolver } from "./@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver"; -export { IPubkeyResolver__factory } from "./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver__factory"; -export type { ITextResolver } from "./@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver"; -export { ITextResolver__factory } from "./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver__factory"; -export type { IVersionableResolver } from "./@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver"; -export { IVersionableResolver__factory } from "./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver__factory"; -export type { NameResolver } from "./@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver"; -export { NameResolver__factory } from "./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver__factory"; -export type { PubkeyResolver } from "./@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver"; -export { PubkeyResolver__factory } from "./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver__factory"; -export type { TextResolver } from "./@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver"; -export { TextResolver__factory } from "./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver__factory"; -export type { PublicResolver } from "./@ensdomains/ens-contracts/contracts/resolvers/PublicResolver"; -export { PublicResolver__factory } from "./factories/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver__factory"; -export type { Resolver } from "./@ensdomains/ens-contracts/contracts/resolvers/Resolver"; -export { Resolver__factory } from "./factories/@ensdomains/ens-contracts/contracts/resolvers/Resolver__factory"; -export type { ResolverBase } from "./@ensdomains/ens-contracts/contracts/resolvers/ResolverBase"; -export { ResolverBase__factory } from "./factories/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase__factory"; -export type { IReverseRegistrar } from "./@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar"; -export { IReverseRegistrar__factory } from "./factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar__factory"; -export type { ReverseClaimer } from "./@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer"; -export { ReverseClaimer__factory } from "./factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer__factory"; -export type { ReverseRegistrar } from "./@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar"; -export { ReverseRegistrar__factory } from "./factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar__factory"; -export type { Controllable } from "./@ensdomains/ens-contracts/contracts/root/Controllable"; -export { Controllable__factory } from "./factories/@ensdomains/ens-contracts/contracts/root/Controllable__factory"; -export type { Root } from "./@ensdomains/ens-contracts/contracts/root/Root"; -export { Root__factory } from "./factories/@ensdomains/ens-contracts/contracts/root/Root__factory"; -export type { ERC20Recoverable } from "./@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable"; -export { ERC20Recoverable__factory } from "./factories/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable__factory"; -export type { ERC1155Fuse } from "./@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse"; -export { ERC1155Fuse__factory } from "./factories/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse__factory"; -export type { IMetadataService } from "./@ensdomains/ens-contracts/contracts/wrapper/IMetadataService"; -export { IMetadataService__factory } from "./factories/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService__factory"; -export type { INameWrapper } from "./@ensdomains/ens-contracts/contracts/wrapper/INameWrapper"; -export { INameWrapper__factory } from "./factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper__factory"; -export type { INameWrapperUpgrade } from "./@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade"; -export { INameWrapperUpgrade__factory } from "./factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade__factory"; -export type { NameWrapper } from "./@ensdomains/ens-contracts/contracts/wrapper/NameWrapper"; -export { NameWrapper__factory } from "./factories/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper__factory"; -export type { MinterRole } from "./@openzeppelin/contracts-2.3/access/roles/MinterRole"; -export { MinterRole__factory } from "./factories/@openzeppelin/contracts-2.3/access/roles/MinterRole__factory"; -export type { WhitelistAdminRole } from "./@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole"; -export { WhitelistAdminRole__factory } from "./factories/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole__factory"; -export type { WhitelistedRole } from "./@openzeppelin/contracts-2.3/access/roles/WhitelistedRole"; -export { WhitelistedRole__factory } from "./factories/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole__factory"; -export type { ERC165 } from "./@openzeppelin/contracts-2.3/introspection/ERC165"; -export { ERC165__factory } from "./factories/@openzeppelin/contracts-2.3/introspection/ERC165__factory"; -export type { IERC165 } from "./@openzeppelin/contracts-2.3/introspection/IERC165"; -export { IERC165__factory } from "./factories/@openzeppelin/contracts-2.3/introspection/IERC165__factory"; -export type { ERC721 } from "./@openzeppelin/contracts-2.3/token/ERC721/ERC721"; -export { ERC721__factory } from "./factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721__factory"; -export type { ERC721Burnable } from "./@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable"; -export { ERC721Burnable__factory } from "./factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable__factory"; -export type { IERC721 } from "./@openzeppelin/contracts-2.3/token/ERC721/IERC721"; -export { IERC721__factory } from "./factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721__factory"; -export type { IERC721Metadata } from "./@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata"; -export { IERC721Metadata__factory } from "./factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata__factory"; -export type { IERC721Receiver } from "./@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver"; -export { IERC721Receiver__factory } from "./factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver__factory"; -export type { AccessControlEnumerableUpgradeable } from "./@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable"; -export { AccessControlEnumerableUpgradeable__factory } from "./factories/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable__factory"; -export type { AccessControlUpgradeable } from "./@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable"; -export { AccessControlUpgradeable__factory } from "./factories/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable__factory"; -export type { IAccessControlEnumerableUpgradeable } from "./@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable"; -export { IAccessControlEnumerableUpgradeable__factory } from "./factories/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable__factory"; -export type { IAccessControlUpgradeable } from "./@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable"; -export { IAccessControlUpgradeable__factory } from "./factories/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable__factory"; -export type { OwnableUpgradeable } from "./@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable"; -export { OwnableUpgradeable__factory } from "./factories/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable__factory"; -export type { IERC1271Upgradeable } from "./@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable"; -export { IERC1271Upgradeable__factory } from "./factories/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable__factory"; -export type { Initializable } from "./@openzeppelin/contracts-upgradeable/proxy/utils/Initializable"; -export { Initializable__factory } from "./factories/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable__factory"; -export type { PausableUpgradeable } from "./@openzeppelin/contracts-upgradeable/security/PausableUpgradeable"; -export { PausableUpgradeable__factory } from "./factories/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable__factory"; -export type { ReentrancyGuardUpgradeable } from "./@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable"; -export { ReentrancyGuardUpgradeable__factory } from "./factories/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable__factory"; -export type { ERC1155Upgradeable } from "./@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable"; -export { ERC1155Upgradeable__factory } from "./factories/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable__factory"; -export type { ERC1155BurnableUpgradeable } from "./@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable"; -export { ERC1155BurnableUpgradeable__factory } from "./factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable__factory"; -export type { ERC1155PausableUpgradeable } from "./@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable"; -export { ERC1155PausableUpgradeable__factory } from "./factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable__factory"; -export type { IERC1155MetadataURIUpgradeable } from "./@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable"; -export { IERC1155MetadataURIUpgradeable__factory } from "./factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable__factory"; -export type { IERC1155ReceiverUpgradeable } from "./@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable"; -export { IERC1155ReceiverUpgradeable__factory } from "./factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable__factory"; -export type { IERC1155Upgradeable } from "./@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable"; -export { IERC1155Upgradeable__factory } from "./factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable__factory"; -export type { ERC1155PresetMinterPauserUpgradeable } from "./@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable"; -export { ERC1155PresetMinterPauserUpgradeable__factory } from "./factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable__factory"; -export type { IERC20Upgradeable } from "./@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable"; -export { IERC20Upgradeable__factory } from "./factories/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable__factory"; -export type { ERC721Upgradeable } from "./@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable"; -export { ERC721Upgradeable__factory } from "./factories/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable__factory"; -export type { IERC721MetadataUpgradeable } from "./@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable"; -export { IERC721MetadataUpgradeable__factory } from "./factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable__factory"; -export type { IERC721ReceiverUpgradeable } from "./@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable"; -export { IERC721ReceiverUpgradeable__factory } from "./factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable__factory"; -export type { IERC721Upgradeable } from "./@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable"; -export { IERC721Upgradeable__factory } from "./factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable__factory"; -export type { ContextUpgradeable } from "./@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable"; -export { ContextUpgradeable__factory } from "./factories/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable__factory"; -export type { ERC165Upgradeable } from "./@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable"; -export { ERC165Upgradeable__factory } from "./factories/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable__factory"; -export type { IERC165Upgradeable } from "./@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable"; -export { IERC165Upgradeable__factory } from "./factories/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable__factory"; -export type { MulticallUpgradeable } from "./@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable"; -export { MulticallUpgradeable__factory } from "./factories/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable__factory"; -export type { Ownable } from "./@openzeppelin/contracts/access/Ownable"; -export { Ownable__factory } from "./factories/@openzeppelin/contracts/access/Ownable__factory"; -export type { IERC1155MetadataURI } from "./@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI"; -export { IERC1155MetadataURI__factory } from "./factories/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI__factory"; -export type { IERC1155 } from "./@openzeppelin/contracts/token/ERC1155/IERC1155"; -export { IERC1155__factory } from "./factories/@openzeppelin/contracts/token/ERC1155/IERC1155__factory"; -export type { IERC1155Receiver } from "./@openzeppelin/contracts/token/ERC1155/IERC1155Receiver"; -export { IERC1155Receiver__factory } from "./factories/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver__factory"; -export type { ERC20 } from "./@openzeppelin/contracts/token/ERC20/ERC20"; -export { ERC20__factory } from "./factories/@openzeppelin/contracts/token/ERC20/ERC20__factory"; -export type { IERC20Metadata } from "./@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata"; -export { IERC20Metadata__factory } from "./factories/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata__factory"; -export type { IERC20 } from "./@openzeppelin/contracts/token/ERC20/IERC20"; -export { IERC20__factory } from "./factories/@openzeppelin/contracts/token/ERC20/IERC20__factory"; -export type { DummyAlgorithm } from "./contracts/@ens/dnssec/algorithms/DummyAlgorithm"; -export { DummyAlgorithm__factory } from "./factories/contracts/@ens/dnssec/algorithms/DummyAlgorithm__factory"; -export type { RSASHA256Algorithm } from "./contracts/@ens/dnssec/algorithms/RSASHA256Algorithm"; -export { RSASHA256Algorithm__factory } from "./factories/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm__factory"; -export type { SHA1Digest } from "./contracts/@ens/dnssec/digests/SHA1Digest"; -export { SHA1Digest__factory } from "./factories/contracts/@ens/dnssec/digests/SHA1Digest__factory"; -export type { SHA1NSEC3Digest } from "./contracts/@ens/dnssec/digests/SHA1NSEC3Digest"; -export { SHA1NSEC3Digest__factory } from "./factories/contracts/@ens/dnssec/digests/SHA1NSEC3Digest__factory"; -export type { SHA256Digest } from "./contracts/@ens/dnssec/digests/SHA256Digest"; -export { SHA256Digest__factory } from "./factories/contracts/@ens/dnssec/digests/SHA256Digest__factory"; -export type { DNSRegistrar } from "./contracts/@ens/dnssec/DNSRegistrar"; -export { DNSRegistrar__factory } from "./factories/contracts/@ens/dnssec/DNSRegistrar__factory"; -export type { DNSSEC } from "./contracts/@ens/dnssec/DNSSEC"; -export { DNSSEC__factory } from "./factories/contracts/@ens/dnssec/DNSSEC__factory"; -export type { DNSSECImpl } from "./contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl"; -export { DNSSECImpl__factory } from "./factories/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl__factory"; -export type { Owned } from "./contracts/@ens/dnssec/DNSSECImpl.sol/Owned"; -export { Owned__factory } from "./factories/contracts/@ens/dnssec/DNSSECImpl.sol/Owned__factory"; -export type { Algorithm } from "./contracts/@ens/dnssec/interfaces/Algorithm"; -export { Algorithm__factory } from "./factories/contracts/@ens/dnssec/interfaces/Algorithm__factory"; -export type { Digest } from "./contracts/@ens/dnssec/interfaces/Digest"; -export { Digest__factory } from "./factories/contracts/@ens/dnssec/interfaces/Digest__factory"; -export type { IDNSRegistrar } from "./contracts/@ens/dnssec/interfaces/IDNSRegistrar"; -export { IDNSRegistrar__factory } from "./factories/contracts/@ens/dnssec/interfaces/IDNSRegistrar__factory"; -export type { NSEC3Digest } from "./contracts/@ens/dnssec/interfaces/NSEC3Digest"; -export { NSEC3Digest__factory } from "./factories/contracts/@ens/dnssec/interfaces/NSEC3Digest__factory"; -export type { PublicSuffixList } from "./contracts/@ens/dnssec/interfaces/PublicSuffixList"; -export { PublicSuffixList__factory } from "./factories/contracts/@ens/dnssec/interfaces/PublicSuffixList__factory"; -export type { SHA1 } from "./contracts/@ens/dnssec/libraries/SHA1"; -export { SHA1__factory } from "./factories/contracts/@ens/dnssec/libraries/SHA1__factory"; -export type { TLDPublicSuffixList } from "./contracts/@ens/dnssec/TLDPublicSuffixList"; -export { TLDPublicSuffixList__factory } from "./factories/contracts/@ens/dnssec/TLDPublicSuffixList__factory"; -export type { LegacyENS } from "./contracts/@ens/LegacyENSRegistry.sol/LegacyENS"; -export { LegacyENS__factory } from "./factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENS__factory"; -export type { LegacyENSRegistry } from "./contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry"; -export { LegacyENSRegistry__factory } from "./factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry__factory"; -export type { BaseRegistrar } from "./contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar"; -export { BaseRegistrar__factory } from "./factories/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar__factory"; -export type { LegacyETHRegistrarController } from "./contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController"; -export { LegacyETHRegistrarController__factory } from "./factories/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController__factory"; -export type { PriceOracle } from "./contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle"; -export { PriceOracle__factory } from "./factories/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle__factory"; -export type { IChildToken } from "./contracts/@maticnetwork/IChildToken"; -export { IChildToken__factory } from "./factories/contracts/@maticnetwork/IChildToken__factory"; -export type { IMintableERC721 } from "./contracts/@maticnetwork/IMintableERC721"; -export { IMintableERC721__factory } from "./factories/contracts/@maticnetwork/IMintableERC721__factory"; -export type { IRootChainManager } from "./contracts/@maticnetwork/IRootChainManager"; -export { IRootChainManager__factory } from "./factories/contracts/@maticnetwork/IRootChainManager__factory"; -export type { DummyStateSender } from "./contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender"; -export { DummyStateSender__factory } from "./factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender__factory"; -export type { IStateSender } from "./contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender"; -export { IStateSender__factory } from "./factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender__factory"; -export type { AccessControl } from "./contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl"; -export { AccessControl__factory } from "./factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl__factory"; -export type { AccessControlMixin } from "./contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin"; -export { AccessControlMixin__factory } from "./factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin__factory"; -export type { ITokenPredicate } from "./contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate"; -export { ITokenPredicate__factory } from "./factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate__factory"; -export type { MintableERC721Predicate } from "./contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate"; -export { MintableERC721Predicate__factory } from "./factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate__factory"; -export type { EIP712Base } from "./contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base"; -export { EIP712Base__factory } from "./factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base__factory"; -export type { ICheckpointManager } from "./contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager"; -export { ICheckpointManager__factory } from "./factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager__factory"; -export type { NativeMetaTransaction } from "./contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction"; -export { NativeMetaTransaction__factory } from "./factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction__factory"; -export type { RootChainManager } from "./contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager"; -export { RootChainManager__factory } from "./factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager__factory"; -export type { RootChainManagerStorage } from "./contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage"; -export { RootChainManagerStorage__factory } from "./factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage__factory"; -export type { IRootChain } from "./contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain"; -export { IRootChain__factory } from "./factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain__factory"; -export type { SimpleCheckpointManager } from "./contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager"; -export { SimpleCheckpointManager__factory } from "./factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager__factory"; -export type { ChildRegistry } from "./contracts/ChildRegistry"; -export { ChildRegistry__factory } from "./factories/contracts/ChildRegistry__factory"; -export type { ICNSRegistry } from "./contracts/cns/ICNSRegistry"; -export { ICNSRegistry__factory } from "./factories/contracts/cns/ICNSRegistry__factory"; -export type { IMintingController } from "./contracts/cns/IMintingController"; -export { IMintingController__factory } from "./factories/contracts/cns/IMintingController__factory"; -export type { IResolver } from "./contracts/cns/IResolver"; -export { IResolver__factory } from "./factories/contracts/cns/IResolver__factory"; -export type { IURIPrefixController } from "./contracts/cns/IURIPrefixController"; -export { IURIPrefixController__factory } from "./factories/contracts/cns/IURIPrefixController__factory"; -export type { ENSCustody } from "./contracts/custody/ENSCustody"; -export { ENSCustody__factory } from "./factories/contracts/custody/ENSCustody__factory"; -export type { IENSCustody } from "./contracts/custody/IENSCustody"; -export { IENSCustody__factory } from "./factories/contracts/custody/IENSCustody__factory"; -export type { ZilliqaRecover } from "./contracts/custody/ZilliqaRecover"; -export { ZilliqaRecover__factory } from "./factories/contracts/custody/ZilliqaRecover__factory"; -export type { DotCoinBurner } from "./contracts/DotCoinBurner"; -export { DotCoinBurner__factory } from "./factories/contracts/DotCoinBurner__factory"; -export type { IUNSRegistryV07 } from "./contracts/history/IUNSRegistryV07"; -export { IUNSRegistryV07__factory } from "./factories/contracts/history/IUNSRegistryV07__factory"; -export type { ProxyReaderV04 } from "./contracts/history/ProxyReaderV04"; -export { ProxyReaderV04__factory } from "./factories/contracts/history/ProxyReaderV04__factory"; -export type { UNSRegistryV07 } from "./contracts/history/UNSRegistryV07"; -export { UNSRegistryV07__factory } from "./factories/contracts/history/UNSRegistryV07__factory"; -export type { IAddressReader } from "./contracts/IAddressReader"; -export { IAddressReader__factory } from "./factories/contracts/IAddressReader__factory"; -export type { IDataReader } from "./contracts/IDataReader"; -export { IDataReader__factory } from "./factories/contracts/IDataReader__factory"; -export type { IERC1967 } from "./contracts/IERC1967"; -export { IERC1967__factory } from "./factories/contracts/IERC1967__factory"; -export type { IMintingManager } from "./contracts/IMintingManager"; -export { IMintingManager__factory } from "./factories/contracts/IMintingManager__factory"; -export type { IRecordReader } from "./contracts/IRecordReader"; -export { IRecordReader__factory } from "./factories/contracts/IRecordReader__factory"; -export type { IRecordStorage } from "./contracts/IRecordStorage"; -export { IRecordStorage__factory } from "./factories/contracts/IRecordStorage__factory"; -export type { IRegistryReader } from "./contracts/IRegistryReader"; -export { IRegistryReader__factory } from "./factories/contracts/IRegistryReader__factory"; -export type { IReverseRegistry } from "./contracts/IReverseRegistry"; -export { IReverseRegistry__factory } from "./factories/contracts/IReverseRegistry__factory"; -export type { IRootRegistry } from "./contracts/IRootRegistry"; -export { IRootRegistry__factory } from "./factories/contracts/IRootRegistry__factory"; -export type { IUNSRegistry } from "./contracts/IUNSRegistry"; -export { IUNSRegistry__factory } from "./factories/contracts/IUNSRegistry__factory"; -export type { KeyStorage } from "./contracts/KeyStorage"; -export { KeyStorage__factory } from "./factories/contracts/KeyStorage__factory"; -export type { ISeaportProxyBuyer } from "./contracts/marketplace/ISeaportProxyBuyer"; -export { ISeaportProxyBuyer__factory } from "./factories/contracts/marketplace/ISeaportProxyBuyer__factory"; -export type { SeaportProxyBuyer } from "./contracts/marketplace/SeaportProxyBuyer"; -export { SeaportProxyBuyer__factory } from "./factories/contracts/marketplace/SeaportProxyBuyer__factory"; -export type { BaseForwarder } from "./contracts/metatx/BaseForwarder"; -export { BaseForwarder__factory } from "./factories/contracts/metatx/BaseForwarder__factory"; -export type { BaseRoutingForwarder } from "./contracts/metatx/BaseRoutingForwarder"; -export { BaseRoutingForwarder__factory } from "./factories/contracts/metatx/BaseRoutingForwarder__factory"; -export type { CNSRegistryForwarder } from "./contracts/metatx/CNSRegistryForwarder"; -export { CNSRegistryForwarder__factory } from "./factories/contracts/metatx/CNSRegistryForwarder__factory"; -export type { ERC2771Context } from "./contracts/metatx/ERC2771Context"; -export { ERC2771Context__factory } from "./factories/contracts/metatx/ERC2771Context__factory"; -export type { ERC2771RegistryContext } from "./contracts/metatx/ERC2771RegistryContext"; -export { ERC2771RegistryContext__factory } from "./factories/contracts/metatx/ERC2771RegistryContext__factory"; -export type { Forwarder } from "./contracts/metatx/Forwarder"; -export { Forwarder__factory } from "./factories/contracts/metatx/Forwarder__factory"; -export type { IForwarder } from "./contracts/metatx/IForwarder"; -export { IForwarder__factory } from "./factories/contracts/metatx/IForwarder__factory"; -export type { MintingManagerForwarder } from "./contracts/metatx/MintingManagerForwarder"; -export { MintingManagerForwarder__factory } from "./factories/contracts/metatx/MintingManagerForwarder__factory"; -export type { ResolverForwarder } from "./contracts/metatx/ResolverForwarder"; -export { ResolverForwarder__factory } from "./factories/contracts/metatx/ResolverForwarder__factory"; -export type { UNSRegistryForwarder } from "./contracts/metatx/UNSRegistryForwarder"; -export { UNSRegistryForwarder__factory } from "./factories/contracts/metatx/UNSRegistryForwarder__factory"; -export type { MintingManager } from "./contracts/MintingManager"; -export { MintingManager__factory } from "./factories/contracts/MintingManager__factory"; -export type { BaseForwarderMock } from "./contracts/mocks/BaseForwarderMock"; -export { BaseForwarderMock__factory } from "./factories/contracts/mocks/BaseForwarderMock__factory"; -export type { BaseRoutingForwarderMock } from "./contracts/mocks/BaseRoutingForwarderMock"; -export { BaseRoutingForwarderMock__factory } from "./factories/contracts/mocks/BaseRoutingForwarderMock__factory"; -export type { ERC1155Mock } from "./contracts/mocks/ERC1155Mock"; -export { ERC1155Mock__factory } from "./factories/contracts/mocks/ERC1155Mock__factory"; -export type { ERC20Mock } from "./contracts/mocks/ERC20Mock"; -export { ERC20Mock__factory } from "./factories/contracts/mocks/ERC20Mock__factory"; -export type { ERC20UnsafeMock } from "./contracts/mocks/ERC20UnsafeMock"; -export { ERC20UnsafeMock__factory } from "./factories/contracts/mocks/ERC20UnsafeMock__factory"; -export type { ERC2771ContextMock } from "./contracts/mocks/ERC2771ContextMock"; -export { ERC2771ContextMock__factory } from "./factories/contracts/mocks/ERC2771ContextMock__factory"; -export type { ERC2771RegistryContextMock } from "./contracts/mocks/ERC2771RegistryContextMock"; -export { ERC2771RegistryContextMock__factory } from "./factories/contracts/mocks/ERC2771RegistryContextMock__factory"; -export type { ERC721Mock } from "./contracts/mocks/ERC721Mock"; -export { ERC721Mock__factory } from "./factories/contracts/mocks/ERC721Mock__factory"; -export type { ERC721ReceiverMock } from "./contracts/mocks/ERC721ReceiverMock"; -export { ERC721ReceiverMock__factory } from "./factories/contracts/mocks/ERC721ReceiverMock__factory"; -export type { MinterRoleMock } from "./contracts/mocks/MinterRoleMock"; -export { MinterRoleMock__factory } from "./factories/contracts/mocks/MinterRoleMock__factory"; -export type { MintingManagerMock } from "./contracts/mocks/MintingManagerMock"; -export { MintingManagerMock__factory } from "./factories/contracts/mocks/MintingManagerMock__factory"; -export type { UNSRegistryForwarderMock } from "./contracts/mocks/UNSRegistryForwarderMock"; -export { UNSRegistryForwarderMock__factory } from "./factories/contracts/mocks/UNSRegistryForwarderMock__factory"; -export type { UNSRegistryMock } from "./contracts/mocks/UNSRegistryMock"; -export { UNSRegistryMock__factory } from "./factories/contracts/mocks/UNSRegistryMock__factory"; -export type { ProxyReader } from "./contracts/ProxyReader"; -export { ProxyReader__factory } from "./factories/contracts/ProxyReader__factory"; -export type { RecordStorage } from "./contracts/RecordStorage"; -export { RecordStorage__factory } from "./factories/contracts/RecordStorage__factory"; -export type { RootRegistry } from "./contracts/RootRegistry"; -export { RootRegistry__factory } from "./factories/contracts/RootRegistry__factory"; -export type { UNSOperator } from "./contracts/UNSOperator"; -export { UNSOperator__factory } from "./factories/contracts/UNSOperator__factory"; -export type { UNSRegistry } from "./contracts/UNSRegistry"; -export { UNSRegistry__factory } from "./factories/contracts/UNSRegistry__factory"; -export type { Blocklist } from "./contracts/utils/Blocklist"; -export { Blocklist__factory } from "./factories/contracts/utils/Blocklist__factory"; -export type { ERC1271SimpleWallet } from "./contracts/utils/ERC1271SimpleWallet"; -export { ERC1271SimpleWallet__factory } from "./factories/contracts/utils/ERC1271SimpleWallet__factory"; -export type { MultiSend } from "./contracts/utils/MultiSend"; -export { MultiSend__factory } from "./factories/contracts/utils/MultiSend__factory"; -export type { Pausable } from "./contracts/utils/Pausable"; -export { Pausable__factory } from "./factories/contracts/utils/Pausable__factory"; -export type { CNSRegistry } from "./dot-crypto/contracts/CNSRegistry"; -export { CNSRegistry__factory } from "./factories/dot-crypto/contracts/CNSRegistry__factory"; -export type { DomainZoneController } from "./dot-crypto/contracts/controllers/DomainZoneController"; -export { DomainZoneController__factory } from "./factories/dot-crypto/contracts/controllers/DomainZoneController__factory"; -export type { ISignatureController } from "./dot-crypto/contracts/controllers/ISignatureController"; -export { ISignatureController__factory } from "./factories/dot-crypto/contracts/controllers/ISignatureController__factory"; -export type { MintingController } from "./dot-crypto/contracts/controllers/MintingController"; -export { MintingController__factory } from "./factories/dot-crypto/contracts/controllers/MintingController__factory"; -export type { SignatureController } from "./dot-crypto/contracts/controllers/SignatureController"; -export { SignatureController__factory } from "./factories/dot-crypto/contracts/controllers/SignatureController__factory"; -export type { URIPrefixController } from "./dot-crypto/contracts/controllers/URIPrefixController"; -export { URIPrefixController__factory } from "./factories/dot-crypto/contracts/controllers/URIPrefixController__factory"; -export type { IResolverReader } from "./dot-crypto/contracts/IResolverReader"; -export { IResolverReader__factory } from "./factories/dot-crypto/contracts/IResolverReader__factory"; -export type { BulkWhitelistedRole } from "./dot-crypto/contracts/util/BulkWhitelistedRole"; -export { BulkWhitelistedRole__factory } from "./factories/dot-crypto/contracts/util/BulkWhitelistedRole__factory"; -export type { ControllerRole } from "./dot-crypto/contracts/util/ControllerRole"; -export { ControllerRole__factory } from "./factories/dot-crypto/contracts/util/ControllerRole__factory"; -export type { FreeMinter } from "./dot-crypto/contracts/util/FreeMinter"; -export { FreeMinter__factory } from "./factories/dot-crypto/contracts/util/FreeMinter__factory"; -export type { SignatureUtil } from "./dot-crypto/contracts/util/SignatureUtil"; -export { SignatureUtil__factory } from "./factories/dot-crypto/contracts/util/SignatureUtil__factory"; -export type { ConsiderationInterface } from "./seaport-types/src/interfaces/ConsiderationInterface"; -export { ConsiderationInterface__factory } from "./factories/seaport-types/src/interfaces/ConsiderationInterface__factory"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/index.d.ts.map b/dist/types/index.d.ts.map deleted file mode 100644 index 9252b8f8..00000000 --- a/dist/types/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../types/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/index.js b/dist/types/index.js deleted file mode 100644 index 8b72a45a..00000000 --- a/dist/types/index.js +++ /dev/null @@ -1,422 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.WhitelistAdminRole__factory = exports.MinterRole__factory = exports.NameWrapper__factory = exports.INameWrapperUpgrade__factory = exports.INameWrapper__factory = exports.IMetadataService__factory = exports.ERC1155Fuse__factory = exports.ERC20Recoverable__factory = exports.Root__factory = exports.Controllable__factory = exports.ReverseRegistrar__factory = exports.ReverseClaimer__factory = exports.IReverseRegistrar__factory = exports.ResolverBase__factory = exports.Resolver__factory = exports.PublicResolver__factory = exports.TextResolver__factory = exports.PubkeyResolver__factory = exports.NameResolver__factory = exports.IVersionableResolver__factory = exports.ITextResolver__factory = exports.IPubkeyResolver__factory = exports.InterfaceResolver__factory = exports.INameResolver__factory = exports.IInterfaceResolver__factory = exports.IExtendedResolver__factory = exports.IDNSZoneResolver__factory = exports.IDNSRecordResolver__factory = exports.IContentHashResolver__factory = exports.IAddrResolver__factory = exports.IAddressResolver__factory = exports.IABIResolver__factory = exports.DNSResolver__factory = exports.ContentHashResolver__factory = exports.AddrResolver__factory = exports.ABIResolver__factory = exports.Multicallable__factory = exports.IMulticallable__factory = exports.ENSRegistry__factory = exports.ENS__factory = exports.StablePriceOracle__factory = exports.AggregatorInterface__factory = exports.IPriceOracle__factory = exports.IETHRegistrarController__factory = exports.IBaseRegistrar__factory = exports.ETHRegistrarController__factory = exports.DummyOracle__factory = exports.BaseRegistrarImplementation__factory = exports.BytesUtils__factory = exports.factories = void 0; -exports.Algorithm__factory = exports.Owned__factory = exports.DNSSECImpl__factory = exports.DNSSEC__factory = exports.DNSRegistrar__factory = exports.SHA256Digest__factory = exports.SHA1NSEC3Digest__factory = exports.SHA1Digest__factory = exports.RSASHA256Algorithm__factory = exports.DummyAlgorithm__factory = exports.IERC20__factory = exports.IERC20Metadata__factory = exports.ERC20__factory = exports.IERC1155Receiver__factory = exports.IERC1155__factory = exports.IERC1155MetadataURI__factory = exports.Ownable__factory = exports.MulticallUpgradeable__factory = exports.IERC165Upgradeable__factory = exports.ERC165Upgradeable__factory = exports.ContextUpgradeable__factory = exports.IERC721Upgradeable__factory = exports.IERC721ReceiverUpgradeable__factory = exports.IERC721MetadataUpgradeable__factory = exports.ERC721Upgradeable__factory = exports.IERC20Upgradeable__factory = exports.ERC1155PresetMinterPauserUpgradeable__factory = exports.IERC1155Upgradeable__factory = exports.IERC1155ReceiverUpgradeable__factory = exports.IERC1155MetadataURIUpgradeable__factory = exports.ERC1155PausableUpgradeable__factory = exports.ERC1155BurnableUpgradeable__factory = exports.ERC1155Upgradeable__factory = exports.ReentrancyGuardUpgradeable__factory = exports.PausableUpgradeable__factory = exports.Initializable__factory = exports.IERC1271Upgradeable__factory = exports.OwnableUpgradeable__factory = exports.IAccessControlUpgradeable__factory = exports.IAccessControlEnumerableUpgradeable__factory = exports.AccessControlUpgradeable__factory = exports.AccessControlEnumerableUpgradeable__factory = exports.IERC721Receiver__factory = exports.IERC721Metadata__factory = exports.IERC721__factory = exports.ERC721Burnable__factory = exports.ERC721__factory = exports.IERC165__factory = exports.ERC165__factory = exports.WhitelistedRole__factory = void 0; -exports.KeyStorage__factory = exports.IUNSRegistry__factory = exports.IRootRegistry__factory = exports.IReverseRegistry__factory = exports.IRegistryReader__factory = exports.IRecordStorage__factory = exports.IRecordReader__factory = exports.IMintingManager__factory = exports.IERC1967__factory = exports.IDataReader__factory = exports.IAddressReader__factory = exports.UNSRegistryV07__factory = exports.ProxyReaderV04__factory = exports.IUNSRegistryV07__factory = exports.DotCoinBurner__factory = exports.ZilliqaRecover__factory = exports.IENSCustody__factory = exports.ENSCustody__factory = exports.IURIPrefixController__factory = exports.IResolver__factory = exports.IMintingController__factory = exports.ICNSRegistry__factory = exports.ChildRegistry__factory = exports.SimpleCheckpointManager__factory = exports.IRootChain__factory = exports.RootChainManagerStorage__factory = exports.RootChainManager__factory = exports.NativeMetaTransaction__factory = exports.ICheckpointManager__factory = exports.EIP712Base__factory = exports.MintableERC721Predicate__factory = exports.ITokenPredicate__factory = exports.AccessControlMixin__factory = exports.AccessControl__factory = exports.IStateSender__factory = exports.DummyStateSender__factory = exports.IRootChainManager__factory = exports.IMintableERC721__factory = exports.IChildToken__factory = exports.PriceOracle__factory = exports.LegacyETHRegistrarController__factory = exports.BaseRegistrar__factory = exports.LegacyENSRegistry__factory = exports.LegacyENS__factory = exports.TLDPublicSuffixList__factory = exports.SHA1__factory = exports.PublicSuffixList__factory = exports.NSEC3Digest__factory = exports.IDNSRegistrar__factory = exports.Digest__factory = void 0; -exports.ConsiderationInterface__factory = exports.SignatureUtil__factory = exports.FreeMinter__factory = exports.ControllerRole__factory = exports.BulkWhitelistedRole__factory = exports.IResolverReader__factory = exports.URIPrefixController__factory = exports.SignatureController__factory = exports.MintingController__factory = exports.ISignatureController__factory = exports.DomainZoneController__factory = exports.CNSRegistry__factory = exports.Pausable__factory = exports.MultiSend__factory = exports.ERC1271SimpleWallet__factory = exports.Blocklist__factory = exports.UNSRegistry__factory = exports.UNSOperator__factory = exports.RootRegistry__factory = exports.RecordStorage__factory = exports.ProxyReader__factory = exports.UNSRegistryMock__factory = exports.UNSRegistryForwarderMock__factory = exports.MintingManagerMock__factory = exports.MinterRoleMock__factory = exports.ERC721ReceiverMock__factory = exports.ERC721Mock__factory = exports.ERC2771RegistryContextMock__factory = exports.ERC2771ContextMock__factory = exports.ERC20UnsafeMock__factory = exports.ERC20Mock__factory = exports.ERC1155Mock__factory = exports.BaseRoutingForwarderMock__factory = exports.BaseForwarderMock__factory = exports.MintingManager__factory = exports.UNSRegistryForwarder__factory = exports.ResolverForwarder__factory = exports.MintingManagerForwarder__factory = exports.IForwarder__factory = exports.Forwarder__factory = exports.ERC2771RegistryContext__factory = exports.ERC2771Context__factory = exports.CNSRegistryForwarder__factory = exports.BaseRoutingForwarder__factory = exports.BaseForwarder__factory = exports.SeaportProxyBuyer__factory = exports.ISeaportProxyBuyer__factory = void 0; -exports.factories = __importStar(require("./factories")); -var BytesUtils__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils__factory"); -Object.defineProperty(exports, "BytesUtils__factory", { enumerable: true, get: function () { return BytesUtils__factory_1.BytesUtils__factory; } }); -var BaseRegistrarImplementation__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation__factory"); -Object.defineProperty(exports, "BaseRegistrarImplementation__factory", { enumerable: true, get: function () { return BaseRegistrarImplementation__factory_1.BaseRegistrarImplementation__factory; } }); -var DummyOracle__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle__factory"); -Object.defineProperty(exports, "DummyOracle__factory", { enumerable: true, get: function () { return DummyOracle__factory_1.DummyOracle__factory; } }); -var ETHRegistrarController__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController__factory"); -Object.defineProperty(exports, "ETHRegistrarController__factory", { enumerable: true, get: function () { return ETHRegistrarController__factory_1.ETHRegistrarController__factory; } }); -var IBaseRegistrar__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar__factory"); -Object.defineProperty(exports, "IBaseRegistrar__factory", { enumerable: true, get: function () { return IBaseRegistrar__factory_1.IBaseRegistrar__factory; } }); -var IETHRegistrarController__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController__factory"); -Object.defineProperty(exports, "IETHRegistrarController__factory", { enumerable: true, get: function () { return IETHRegistrarController__factory_1.IETHRegistrarController__factory; } }); -var IPriceOracle__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle__factory"); -Object.defineProperty(exports, "IPriceOracle__factory", { enumerable: true, get: function () { return IPriceOracle__factory_1.IPriceOracle__factory; } }); -var AggregatorInterface__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface__factory"); -Object.defineProperty(exports, "AggregatorInterface__factory", { enumerable: true, get: function () { return AggregatorInterface__factory_1.AggregatorInterface__factory; } }); -var StablePriceOracle__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle__factory"); -Object.defineProperty(exports, "StablePriceOracle__factory", { enumerable: true, get: function () { return StablePriceOracle__factory_1.StablePriceOracle__factory; } }); -var ENS__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/registry/ENS__factory"); -Object.defineProperty(exports, "ENS__factory", { enumerable: true, get: function () { return ENS__factory_1.ENS__factory; } }); -var ENSRegistry__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/registry/ENSRegistry__factory"); -Object.defineProperty(exports, "ENSRegistry__factory", { enumerable: true, get: function () { return ENSRegistry__factory_1.ENSRegistry__factory; } }); -var IMulticallable__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable__factory"); -Object.defineProperty(exports, "IMulticallable__factory", { enumerable: true, get: function () { return IMulticallable__factory_1.IMulticallable__factory; } }); -var Multicallable__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/resolvers/Multicallable__factory"); -Object.defineProperty(exports, "Multicallable__factory", { enumerable: true, get: function () { return Multicallable__factory_1.Multicallable__factory; } }); -var ABIResolver__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver__factory"); -Object.defineProperty(exports, "ABIResolver__factory", { enumerable: true, get: function () { return ABIResolver__factory_1.ABIResolver__factory; } }); -var AddrResolver__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver__factory"); -Object.defineProperty(exports, "AddrResolver__factory", { enumerable: true, get: function () { return AddrResolver__factory_1.AddrResolver__factory; } }); -var ContentHashResolver__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver__factory"); -Object.defineProperty(exports, "ContentHashResolver__factory", { enumerable: true, get: function () { return ContentHashResolver__factory_1.ContentHashResolver__factory; } }); -var DNSResolver__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver__factory"); -Object.defineProperty(exports, "DNSResolver__factory", { enumerable: true, get: function () { return DNSResolver__factory_1.DNSResolver__factory; } }); -var IABIResolver__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver__factory"); -Object.defineProperty(exports, "IABIResolver__factory", { enumerable: true, get: function () { return IABIResolver__factory_1.IABIResolver__factory; } }); -var IAddressResolver__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver__factory"); -Object.defineProperty(exports, "IAddressResolver__factory", { enumerable: true, get: function () { return IAddressResolver__factory_1.IAddressResolver__factory; } }); -var IAddrResolver__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver__factory"); -Object.defineProperty(exports, "IAddrResolver__factory", { enumerable: true, get: function () { return IAddrResolver__factory_1.IAddrResolver__factory; } }); -var IContentHashResolver__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver__factory"); -Object.defineProperty(exports, "IContentHashResolver__factory", { enumerable: true, get: function () { return IContentHashResolver__factory_1.IContentHashResolver__factory; } }); -var IDNSRecordResolver__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver__factory"); -Object.defineProperty(exports, "IDNSRecordResolver__factory", { enumerable: true, get: function () { return IDNSRecordResolver__factory_1.IDNSRecordResolver__factory; } }); -var IDNSZoneResolver__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver__factory"); -Object.defineProperty(exports, "IDNSZoneResolver__factory", { enumerable: true, get: function () { return IDNSZoneResolver__factory_1.IDNSZoneResolver__factory; } }); -var IExtendedResolver__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver__factory"); -Object.defineProperty(exports, "IExtendedResolver__factory", { enumerable: true, get: function () { return IExtendedResolver__factory_1.IExtendedResolver__factory; } }); -var IInterfaceResolver__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver__factory"); -Object.defineProperty(exports, "IInterfaceResolver__factory", { enumerable: true, get: function () { return IInterfaceResolver__factory_1.IInterfaceResolver__factory; } }); -var INameResolver__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver__factory"); -Object.defineProperty(exports, "INameResolver__factory", { enumerable: true, get: function () { return INameResolver__factory_1.INameResolver__factory; } }); -var InterfaceResolver__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver__factory"); -Object.defineProperty(exports, "InterfaceResolver__factory", { enumerable: true, get: function () { return InterfaceResolver__factory_1.InterfaceResolver__factory; } }); -var IPubkeyResolver__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver__factory"); -Object.defineProperty(exports, "IPubkeyResolver__factory", { enumerable: true, get: function () { return IPubkeyResolver__factory_1.IPubkeyResolver__factory; } }); -var ITextResolver__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver__factory"); -Object.defineProperty(exports, "ITextResolver__factory", { enumerable: true, get: function () { return ITextResolver__factory_1.ITextResolver__factory; } }); -var IVersionableResolver__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver__factory"); -Object.defineProperty(exports, "IVersionableResolver__factory", { enumerable: true, get: function () { return IVersionableResolver__factory_1.IVersionableResolver__factory; } }); -var NameResolver__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver__factory"); -Object.defineProperty(exports, "NameResolver__factory", { enumerable: true, get: function () { return NameResolver__factory_1.NameResolver__factory; } }); -var PubkeyResolver__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver__factory"); -Object.defineProperty(exports, "PubkeyResolver__factory", { enumerable: true, get: function () { return PubkeyResolver__factory_1.PubkeyResolver__factory; } }); -var TextResolver__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver__factory"); -Object.defineProperty(exports, "TextResolver__factory", { enumerable: true, get: function () { return TextResolver__factory_1.TextResolver__factory; } }); -var PublicResolver__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver__factory"); -Object.defineProperty(exports, "PublicResolver__factory", { enumerable: true, get: function () { return PublicResolver__factory_1.PublicResolver__factory; } }); -var Resolver__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/resolvers/Resolver__factory"); -Object.defineProperty(exports, "Resolver__factory", { enumerable: true, get: function () { return Resolver__factory_1.Resolver__factory; } }); -var ResolverBase__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase__factory"); -Object.defineProperty(exports, "ResolverBase__factory", { enumerable: true, get: function () { return ResolverBase__factory_1.ResolverBase__factory; } }); -var IReverseRegistrar__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar__factory"); -Object.defineProperty(exports, "IReverseRegistrar__factory", { enumerable: true, get: function () { return IReverseRegistrar__factory_1.IReverseRegistrar__factory; } }); -var ReverseClaimer__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer__factory"); -Object.defineProperty(exports, "ReverseClaimer__factory", { enumerable: true, get: function () { return ReverseClaimer__factory_1.ReverseClaimer__factory; } }); -var ReverseRegistrar__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar__factory"); -Object.defineProperty(exports, "ReverseRegistrar__factory", { enumerable: true, get: function () { return ReverseRegistrar__factory_1.ReverseRegistrar__factory; } }); -var Controllable__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/root/Controllable__factory"); -Object.defineProperty(exports, "Controllable__factory", { enumerable: true, get: function () { return Controllable__factory_1.Controllable__factory; } }); -var Root__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/root/Root__factory"); -Object.defineProperty(exports, "Root__factory", { enumerable: true, get: function () { return Root__factory_1.Root__factory; } }); -var ERC20Recoverable__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable__factory"); -Object.defineProperty(exports, "ERC20Recoverable__factory", { enumerable: true, get: function () { return ERC20Recoverable__factory_1.ERC20Recoverable__factory; } }); -var ERC1155Fuse__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse__factory"); -Object.defineProperty(exports, "ERC1155Fuse__factory", { enumerable: true, get: function () { return ERC1155Fuse__factory_1.ERC1155Fuse__factory; } }); -var IMetadataService__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService__factory"); -Object.defineProperty(exports, "IMetadataService__factory", { enumerable: true, get: function () { return IMetadataService__factory_1.IMetadataService__factory; } }); -var INameWrapper__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper__factory"); -Object.defineProperty(exports, "INameWrapper__factory", { enumerable: true, get: function () { return INameWrapper__factory_1.INameWrapper__factory; } }); -var INameWrapperUpgrade__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade__factory"); -Object.defineProperty(exports, "INameWrapperUpgrade__factory", { enumerable: true, get: function () { return INameWrapperUpgrade__factory_1.INameWrapperUpgrade__factory; } }); -var NameWrapper__factory_1 = require("./factories/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper__factory"); -Object.defineProperty(exports, "NameWrapper__factory", { enumerable: true, get: function () { return NameWrapper__factory_1.NameWrapper__factory; } }); -var MinterRole__factory_1 = require("./factories/@openzeppelin/contracts-2.3/access/roles/MinterRole__factory"); -Object.defineProperty(exports, "MinterRole__factory", { enumerable: true, get: function () { return MinterRole__factory_1.MinterRole__factory; } }); -var WhitelistAdminRole__factory_1 = require("./factories/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole__factory"); -Object.defineProperty(exports, "WhitelistAdminRole__factory", { enumerable: true, get: function () { return WhitelistAdminRole__factory_1.WhitelistAdminRole__factory; } }); -var WhitelistedRole__factory_1 = require("./factories/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole__factory"); -Object.defineProperty(exports, "WhitelistedRole__factory", { enumerable: true, get: function () { return WhitelistedRole__factory_1.WhitelistedRole__factory; } }); -var ERC165__factory_1 = require("./factories/@openzeppelin/contracts-2.3/introspection/ERC165__factory"); -Object.defineProperty(exports, "ERC165__factory", { enumerable: true, get: function () { return ERC165__factory_1.ERC165__factory; } }); -var IERC165__factory_1 = require("./factories/@openzeppelin/contracts-2.3/introspection/IERC165__factory"); -Object.defineProperty(exports, "IERC165__factory", { enumerable: true, get: function () { return IERC165__factory_1.IERC165__factory; } }); -var ERC721__factory_1 = require("./factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721__factory"); -Object.defineProperty(exports, "ERC721__factory", { enumerable: true, get: function () { return ERC721__factory_1.ERC721__factory; } }); -var ERC721Burnable__factory_1 = require("./factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable__factory"); -Object.defineProperty(exports, "ERC721Burnable__factory", { enumerable: true, get: function () { return ERC721Burnable__factory_1.ERC721Burnable__factory; } }); -var IERC721__factory_1 = require("./factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721__factory"); -Object.defineProperty(exports, "IERC721__factory", { enumerable: true, get: function () { return IERC721__factory_1.IERC721__factory; } }); -var IERC721Metadata__factory_1 = require("./factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata__factory"); -Object.defineProperty(exports, "IERC721Metadata__factory", { enumerable: true, get: function () { return IERC721Metadata__factory_1.IERC721Metadata__factory; } }); -var IERC721Receiver__factory_1 = require("./factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver__factory"); -Object.defineProperty(exports, "IERC721Receiver__factory", { enumerable: true, get: function () { return IERC721Receiver__factory_1.IERC721Receiver__factory; } }); -var AccessControlEnumerableUpgradeable__factory_1 = require("./factories/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable__factory"); -Object.defineProperty(exports, "AccessControlEnumerableUpgradeable__factory", { enumerable: true, get: function () { return AccessControlEnumerableUpgradeable__factory_1.AccessControlEnumerableUpgradeable__factory; } }); -var AccessControlUpgradeable__factory_1 = require("./factories/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable__factory"); -Object.defineProperty(exports, "AccessControlUpgradeable__factory", { enumerable: true, get: function () { return AccessControlUpgradeable__factory_1.AccessControlUpgradeable__factory; } }); -var IAccessControlEnumerableUpgradeable__factory_1 = require("./factories/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable__factory"); -Object.defineProperty(exports, "IAccessControlEnumerableUpgradeable__factory", { enumerable: true, get: function () { return IAccessControlEnumerableUpgradeable__factory_1.IAccessControlEnumerableUpgradeable__factory; } }); -var IAccessControlUpgradeable__factory_1 = require("./factories/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable__factory"); -Object.defineProperty(exports, "IAccessControlUpgradeable__factory", { enumerable: true, get: function () { return IAccessControlUpgradeable__factory_1.IAccessControlUpgradeable__factory; } }); -var OwnableUpgradeable__factory_1 = require("./factories/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable__factory"); -Object.defineProperty(exports, "OwnableUpgradeable__factory", { enumerable: true, get: function () { return OwnableUpgradeable__factory_1.OwnableUpgradeable__factory; } }); -var IERC1271Upgradeable__factory_1 = require("./factories/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable__factory"); -Object.defineProperty(exports, "IERC1271Upgradeable__factory", { enumerable: true, get: function () { return IERC1271Upgradeable__factory_1.IERC1271Upgradeable__factory; } }); -var Initializable__factory_1 = require("./factories/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable__factory"); -Object.defineProperty(exports, "Initializable__factory", { enumerable: true, get: function () { return Initializable__factory_1.Initializable__factory; } }); -var PausableUpgradeable__factory_1 = require("./factories/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable__factory"); -Object.defineProperty(exports, "PausableUpgradeable__factory", { enumerable: true, get: function () { return PausableUpgradeable__factory_1.PausableUpgradeable__factory; } }); -var ReentrancyGuardUpgradeable__factory_1 = require("./factories/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable__factory"); -Object.defineProperty(exports, "ReentrancyGuardUpgradeable__factory", { enumerable: true, get: function () { return ReentrancyGuardUpgradeable__factory_1.ReentrancyGuardUpgradeable__factory; } }); -var ERC1155Upgradeable__factory_1 = require("./factories/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable__factory"); -Object.defineProperty(exports, "ERC1155Upgradeable__factory", { enumerable: true, get: function () { return ERC1155Upgradeable__factory_1.ERC1155Upgradeable__factory; } }); -var ERC1155BurnableUpgradeable__factory_1 = require("./factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable__factory"); -Object.defineProperty(exports, "ERC1155BurnableUpgradeable__factory", { enumerable: true, get: function () { return ERC1155BurnableUpgradeable__factory_1.ERC1155BurnableUpgradeable__factory; } }); -var ERC1155PausableUpgradeable__factory_1 = require("./factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable__factory"); -Object.defineProperty(exports, "ERC1155PausableUpgradeable__factory", { enumerable: true, get: function () { return ERC1155PausableUpgradeable__factory_1.ERC1155PausableUpgradeable__factory; } }); -var IERC1155MetadataURIUpgradeable__factory_1 = require("./factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable__factory"); -Object.defineProperty(exports, "IERC1155MetadataURIUpgradeable__factory", { enumerable: true, get: function () { return IERC1155MetadataURIUpgradeable__factory_1.IERC1155MetadataURIUpgradeable__factory; } }); -var IERC1155ReceiverUpgradeable__factory_1 = require("./factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable__factory"); -Object.defineProperty(exports, "IERC1155ReceiverUpgradeable__factory", { enumerable: true, get: function () { return IERC1155ReceiverUpgradeable__factory_1.IERC1155ReceiverUpgradeable__factory; } }); -var IERC1155Upgradeable__factory_1 = require("./factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable__factory"); -Object.defineProperty(exports, "IERC1155Upgradeable__factory", { enumerable: true, get: function () { return IERC1155Upgradeable__factory_1.IERC1155Upgradeable__factory; } }); -var ERC1155PresetMinterPauserUpgradeable__factory_1 = require("./factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable__factory"); -Object.defineProperty(exports, "ERC1155PresetMinterPauserUpgradeable__factory", { enumerable: true, get: function () { return ERC1155PresetMinterPauserUpgradeable__factory_1.ERC1155PresetMinterPauserUpgradeable__factory; } }); -var IERC20Upgradeable__factory_1 = require("./factories/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable__factory"); -Object.defineProperty(exports, "IERC20Upgradeable__factory", { enumerable: true, get: function () { return IERC20Upgradeable__factory_1.IERC20Upgradeable__factory; } }); -var ERC721Upgradeable__factory_1 = require("./factories/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable__factory"); -Object.defineProperty(exports, "ERC721Upgradeable__factory", { enumerable: true, get: function () { return ERC721Upgradeable__factory_1.ERC721Upgradeable__factory; } }); -var IERC721MetadataUpgradeable__factory_1 = require("./factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable__factory"); -Object.defineProperty(exports, "IERC721MetadataUpgradeable__factory", { enumerable: true, get: function () { return IERC721MetadataUpgradeable__factory_1.IERC721MetadataUpgradeable__factory; } }); -var IERC721ReceiverUpgradeable__factory_1 = require("./factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable__factory"); -Object.defineProperty(exports, "IERC721ReceiverUpgradeable__factory", { enumerable: true, get: function () { return IERC721ReceiverUpgradeable__factory_1.IERC721ReceiverUpgradeable__factory; } }); -var IERC721Upgradeable__factory_1 = require("./factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable__factory"); -Object.defineProperty(exports, "IERC721Upgradeable__factory", { enumerable: true, get: function () { return IERC721Upgradeable__factory_1.IERC721Upgradeable__factory; } }); -var ContextUpgradeable__factory_1 = require("./factories/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable__factory"); -Object.defineProperty(exports, "ContextUpgradeable__factory", { enumerable: true, get: function () { return ContextUpgradeable__factory_1.ContextUpgradeable__factory; } }); -var ERC165Upgradeable__factory_1 = require("./factories/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable__factory"); -Object.defineProperty(exports, "ERC165Upgradeable__factory", { enumerable: true, get: function () { return ERC165Upgradeable__factory_1.ERC165Upgradeable__factory; } }); -var IERC165Upgradeable__factory_1 = require("./factories/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable__factory"); -Object.defineProperty(exports, "IERC165Upgradeable__factory", { enumerable: true, get: function () { return IERC165Upgradeable__factory_1.IERC165Upgradeable__factory; } }); -var MulticallUpgradeable__factory_1 = require("./factories/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable__factory"); -Object.defineProperty(exports, "MulticallUpgradeable__factory", { enumerable: true, get: function () { return MulticallUpgradeable__factory_1.MulticallUpgradeable__factory; } }); -var Ownable__factory_1 = require("./factories/@openzeppelin/contracts/access/Ownable__factory"); -Object.defineProperty(exports, "Ownable__factory", { enumerable: true, get: function () { return Ownable__factory_1.Ownable__factory; } }); -var IERC1155MetadataURI__factory_1 = require("./factories/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI__factory"); -Object.defineProperty(exports, "IERC1155MetadataURI__factory", { enumerable: true, get: function () { return IERC1155MetadataURI__factory_1.IERC1155MetadataURI__factory; } }); -var IERC1155__factory_1 = require("./factories/@openzeppelin/contracts/token/ERC1155/IERC1155__factory"); -Object.defineProperty(exports, "IERC1155__factory", { enumerable: true, get: function () { return IERC1155__factory_1.IERC1155__factory; } }); -var IERC1155Receiver__factory_1 = require("./factories/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver__factory"); -Object.defineProperty(exports, "IERC1155Receiver__factory", { enumerable: true, get: function () { return IERC1155Receiver__factory_1.IERC1155Receiver__factory; } }); -var ERC20__factory_1 = require("./factories/@openzeppelin/contracts/token/ERC20/ERC20__factory"); -Object.defineProperty(exports, "ERC20__factory", { enumerable: true, get: function () { return ERC20__factory_1.ERC20__factory; } }); -var IERC20Metadata__factory_1 = require("./factories/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata__factory"); -Object.defineProperty(exports, "IERC20Metadata__factory", { enumerable: true, get: function () { return IERC20Metadata__factory_1.IERC20Metadata__factory; } }); -var IERC20__factory_1 = require("./factories/@openzeppelin/contracts/token/ERC20/IERC20__factory"); -Object.defineProperty(exports, "IERC20__factory", { enumerable: true, get: function () { return IERC20__factory_1.IERC20__factory; } }); -var DummyAlgorithm__factory_1 = require("./factories/contracts/@ens/dnssec/algorithms/DummyAlgorithm__factory"); -Object.defineProperty(exports, "DummyAlgorithm__factory", { enumerable: true, get: function () { return DummyAlgorithm__factory_1.DummyAlgorithm__factory; } }); -var RSASHA256Algorithm__factory_1 = require("./factories/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm__factory"); -Object.defineProperty(exports, "RSASHA256Algorithm__factory", { enumerable: true, get: function () { return RSASHA256Algorithm__factory_1.RSASHA256Algorithm__factory; } }); -var SHA1Digest__factory_1 = require("./factories/contracts/@ens/dnssec/digests/SHA1Digest__factory"); -Object.defineProperty(exports, "SHA1Digest__factory", { enumerable: true, get: function () { return SHA1Digest__factory_1.SHA1Digest__factory; } }); -var SHA1NSEC3Digest__factory_1 = require("./factories/contracts/@ens/dnssec/digests/SHA1NSEC3Digest__factory"); -Object.defineProperty(exports, "SHA1NSEC3Digest__factory", { enumerable: true, get: function () { return SHA1NSEC3Digest__factory_1.SHA1NSEC3Digest__factory; } }); -var SHA256Digest__factory_1 = require("./factories/contracts/@ens/dnssec/digests/SHA256Digest__factory"); -Object.defineProperty(exports, "SHA256Digest__factory", { enumerable: true, get: function () { return SHA256Digest__factory_1.SHA256Digest__factory; } }); -var DNSRegistrar__factory_1 = require("./factories/contracts/@ens/dnssec/DNSRegistrar__factory"); -Object.defineProperty(exports, "DNSRegistrar__factory", { enumerable: true, get: function () { return DNSRegistrar__factory_1.DNSRegistrar__factory; } }); -var DNSSEC__factory_1 = require("./factories/contracts/@ens/dnssec/DNSSEC__factory"); -Object.defineProperty(exports, "DNSSEC__factory", { enumerable: true, get: function () { return DNSSEC__factory_1.DNSSEC__factory; } }); -var DNSSECImpl__factory_1 = require("./factories/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl__factory"); -Object.defineProperty(exports, "DNSSECImpl__factory", { enumerable: true, get: function () { return DNSSECImpl__factory_1.DNSSECImpl__factory; } }); -var Owned__factory_1 = require("./factories/contracts/@ens/dnssec/DNSSECImpl.sol/Owned__factory"); -Object.defineProperty(exports, "Owned__factory", { enumerable: true, get: function () { return Owned__factory_1.Owned__factory; } }); -var Algorithm__factory_1 = require("./factories/contracts/@ens/dnssec/interfaces/Algorithm__factory"); -Object.defineProperty(exports, "Algorithm__factory", { enumerable: true, get: function () { return Algorithm__factory_1.Algorithm__factory; } }); -var Digest__factory_1 = require("./factories/contracts/@ens/dnssec/interfaces/Digest__factory"); -Object.defineProperty(exports, "Digest__factory", { enumerable: true, get: function () { return Digest__factory_1.Digest__factory; } }); -var IDNSRegistrar__factory_1 = require("./factories/contracts/@ens/dnssec/interfaces/IDNSRegistrar__factory"); -Object.defineProperty(exports, "IDNSRegistrar__factory", { enumerable: true, get: function () { return IDNSRegistrar__factory_1.IDNSRegistrar__factory; } }); -var NSEC3Digest__factory_1 = require("./factories/contracts/@ens/dnssec/interfaces/NSEC3Digest__factory"); -Object.defineProperty(exports, "NSEC3Digest__factory", { enumerable: true, get: function () { return NSEC3Digest__factory_1.NSEC3Digest__factory; } }); -var PublicSuffixList__factory_1 = require("./factories/contracts/@ens/dnssec/interfaces/PublicSuffixList__factory"); -Object.defineProperty(exports, "PublicSuffixList__factory", { enumerable: true, get: function () { return PublicSuffixList__factory_1.PublicSuffixList__factory; } }); -var SHA1__factory_1 = require("./factories/contracts/@ens/dnssec/libraries/SHA1__factory"); -Object.defineProperty(exports, "SHA1__factory", { enumerable: true, get: function () { return SHA1__factory_1.SHA1__factory; } }); -var TLDPublicSuffixList__factory_1 = require("./factories/contracts/@ens/dnssec/TLDPublicSuffixList__factory"); -Object.defineProperty(exports, "TLDPublicSuffixList__factory", { enumerable: true, get: function () { return TLDPublicSuffixList__factory_1.TLDPublicSuffixList__factory; } }); -var LegacyENS__factory_1 = require("./factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENS__factory"); -Object.defineProperty(exports, "LegacyENS__factory", { enumerable: true, get: function () { return LegacyENS__factory_1.LegacyENS__factory; } }); -var LegacyENSRegistry__factory_1 = require("./factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry__factory"); -Object.defineProperty(exports, "LegacyENSRegistry__factory", { enumerable: true, get: function () { return LegacyENSRegistry__factory_1.LegacyENSRegistry__factory; } }); -var BaseRegistrar__factory_1 = require("./factories/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar__factory"); -Object.defineProperty(exports, "BaseRegistrar__factory", { enumerable: true, get: function () { return BaseRegistrar__factory_1.BaseRegistrar__factory; } }); -var LegacyETHRegistrarController__factory_1 = require("./factories/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController__factory"); -Object.defineProperty(exports, "LegacyETHRegistrarController__factory", { enumerable: true, get: function () { return LegacyETHRegistrarController__factory_1.LegacyETHRegistrarController__factory; } }); -var PriceOracle__factory_1 = require("./factories/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle__factory"); -Object.defineProperty(exports, "PriceOracle__factory", { enumerable: true, get: function () { return PriceOracle__factory_1.PriceOracle__factory; } }); -var IChildToken__factory_1 = require("./factories/contracts/@maticnetwork/IChildToken__factory"); -Object.defineProperty(exports, "IChildToken__factory", { enumerable: true, get: function () { return IChildToken__factory_1.IChildToken__factory; } }); -var IMintableERC721__factory_1 = require("./factories/contracts/@maticnetwork/IMintableERC721__factory"); -Object.defineProperty(exports, "IMintableERC721__factory", { enumerable: true, get: function () { return IMintableERC721__factory_1.IMintableERC721__factory; } }); -var IRootChainManager__factory_1 = require("./factories/contracts/@maticnetwork/IRootChainManager__factory"); -Object.defineProperty(exports, "IRootChainManager__factory", { enumerable: true, get: function () { return IRootChainManager__factory_1.IRootChainManager__factory; } }); -var DummyStateSender__factory_1 = require("./factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender__factory"); -Object.defineProperty(exports, "DummyStateSender__factory", { enumerable: true, get: function () { return DummyStateSender__factory_1.DummyStateSender__factory; } }); -var IStateSender__factory_1 = require("./factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender__factory"); -Object.defineProperty(exports, "IStateSender__factory", { enumerable: true, get: function () { return IStateSender__factory_1.IStateSender__factory; } }); -var AccessControl__factory_1 = require("./factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl__factory"); -Object.defineProperty(exports, "AccessControl__factory", { enumerable: true, get: function () { return AccessControl__factory_1.AccessControl__factory; } }); -var AccessControlMixin__factory_1 = require("./factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin__factory"); -Object.defineProperty(exports, "AccessControlMixin__factory", { enumerable: true, get: function () { return AccessControlMixin__factory_1.AccessControlMixin__factory; } }); -var ITokenPredicate__factory_1 = require("./factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate__factory"); -Object.defineProperty(exports, "ITokenPredicate__factory", { enumerable: true, get: function () { return ITokenPredicate__factory_1.ITokenPredicate__factory; } }); -var MintableERC721Predicate__factory_1 = require("./factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate__factory"); -Object.defineProperty(exports, "MintableERC721Predicate__factory", { enumerable: true, get: function () { return MintableERC721Predicate__factory_1.MintableERC721Predicate__factory; } }); -var EIP712Base__factory_1 = require("./factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base__factory"); -Object.defineProperty(exports, "EIP712Base__factory", { enumerable: true, get: function () { return EIP712Base__factory_1.EIP712Base__factory; } }); -var ICheckpointManager__factory_1 = require("./factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager__factory"); -Object.defineProperty(exports, "ICheckpointManager__factory", { enumerable: true, get: function () { return ICheckpointManager__factory_1.ICheckpointManager__factory; } }); -var NativeMetaTransaction__factory_1 = require("./factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction__factory"); -Object.defineProperty(exports, "NativeMetaTransaction__factory", { enumerable: true, get: function () { return NativeMetaTransaction__factory_1.NativeMetaTransaction__factory; } }); -var RootChainManager__factory_1 = require("./factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager__factory"); -Object.defineProperty(exports, "RootChainManager__factory", { enumerable: true, get: function () { return RootChainManager__factory_1.RootChainManager__factory; } }); -var RootChainManagerStorage__factory_1 = require("./factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage__factory"); -Object.defineProperty(exports, "RootChainManagerStorage__factory", { enumerable: true, get: function () { return RootChainManagerStorage__factory_1.RootChainManagerStorage__factory; } }); -var IRootChain__factory_1 = require("./factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain__factory"); -Object.defineProperty(exports, "IRootChain__factory", { enumerable: true, get: function () { return IRootChain__factory_1.IRootChain__factory; } }); -var SimpleCheckpointManager__factory_1 = require("./factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager__factory"); -Object.defineProperty(exports, "SimpleCheckpointManager__factory", { enumerable: true, get: function () { return SimpleCheckpointManager__factory_1.SimpleCheckpointManager__factory; } }); -var ChildRegistry__factory_1 = require("./factories/contracts/ChildRegistry__factory"); -Object.defineProperty(exports, "ChildRegistry__factory", { enumerable: true, get: function () { return ChildRegistry__factory_1.ChildRegistry__factory; } }); -var ICNSRegistry__factory_1 = require("./factories/contracts/cns/ICNSRegistry__factory"); -Object.defineProperty(exports, "ICNSRegistry__factory", { enumerable: true, get: function () { return ICNSRegistry__factory_1.ICNSRegistry__factory; } }); -var IMintingController__factory_1 = require("./factories/contracts/cns/IMintingController__factory"); -Object.defineProperty(exports, "IMintingController__factory", { enumerable: true, get: function () { return IMintingController__factory_1.IMintingController__factory; } }); -var IResolver__factory_1 = require("./factories/contracts/cns/IResolver__factory"); -Object.defineProperty(exports, "IResolver__factory", { enumerable: true, get: function () { return IResolver__factory_1.IResolver__factory; } }); -var IURIPrefixController__factory_1 = require("./factories/contracts/cns/IURIPrefixController__factory"); -Object.defineProperty(exports, "IURIPrefixController__factory", { enumerable: true, get: function () { return IURIPrefixController__factory_1.IURIPrefixController__factory; } }); -var ENSCustody__factory_1 = require("./factories/contracts/custody/ENSCustody__factory"); -Object.defineProperty(exports, "ENSCustody__factory", { enumerable: true, get: function () { return ENSCustody__factory_1.ENSCustody__factory; } }); -var IENSCustody__factory_1 = require("./factories/contracts/custody/IENSCustody__factory"); -Object.defineProperty(exports, "IENSCustody__factory", { enumerable: true, get: function () { return IENSCustody__factory_1.IENSCustody__factory; } }); -var ZilliqaRecover__factory_1 = require("./factories/contracts/custody/ZilliqaRecover__factory"); -Object.defineProperty(exports, "ZilliqaRecover__factory", { enumerable: true, get: function () { return ZilliqaRecover__factory_1.ZilliqaRecover__factory; } }); -var DotCoinBurner__factory_1 = require("./factories/contracts/DotCoinBurner__factory"); -Object.defineProperty(exports, "DotCoinBurner__factory", { enumerable: true, get: function () { return DotCoinBurner__factory_1.DotCoinBurner__factory; } }); -var IUNSRegistryV07__factory_1 = require("./factories/contracts/history/IUNSRegistryV07__factory"); -Object.defineProperty(exports, "IUNSRegistryV07__factory", { enumerable: true, get: function () { return IUNSRegistryV07__factory_1.IUNSRegistryV07__factory; } }); -var ProxyReaderV04__factory_1 = require("./factories/contracts/history/ProxyReaderV04__factory"); -Object.defineProperty(exports, "ProxyReaderV04__factory", { enumerable: true, get: function () { return ProxyReaderV04__factory_1.ProxyReaderV04__factory; } }); -var UNSRegistryV07__factory_1 = require("./factories/contracts/history/UNSRegistryV07__factory"); -Object.defineProperty(exports, "UNSRegistryV07__factory", { enumerable: true, get: function () { return UNSRegistryV07__factory_1.UNSRegistryV07__factory; } }); -var IAddressReader__factory_1 = require("./factories/contracts/IAddressReader__factory"); -Object.defineProperty(exports, "IAddressReader__factory", { enumerable: true, get: function () { return IAddressReader__factory_1.IAddressReader__factory; } }); -var IDataReader__factory_1 = require("./factories/contracts/IDataReader__factory"); -Object.defineProperty(exports, "IDataReader__factory", { enumerable: true, get: function () { return IDataReader__factory_1.IDataReader__factory; } }); -var IERC1967__factory_1 = require("./factories/contracts/IERC1967__factory"); -Object.defineProperty(exports, "IERC1967__factory", { enumerable: true, get: function () { return IERC1967__factory_1.IERC1967__factory; } }); -var IMintingManager__factory_1 = require("./factories/contracts/IMintingManager__factory"); -Object.defineProperty(exports, "IMintingManager__factory", { enumerable: true, get: function () { return IMintingManager__factory_1.IMintingManager__factory; } }); -var IRecordReader__factory_1 = require("./factories/contracts/IRecordReader__factory"); -Object.defineProperty(exports, "IRecordReader__factory", { enumerable: true, get: function () { return IRecordReader__factory_1.IRecordReader__factory; } }); -var IRecordStorage__factory_1 = require("./factories/contracts/IRecordStorage__factory"); -Object.defineProperty(exports, "IRecordStorage__factory", { enumerable: true, get: function () { return IRecordStorage__factory_1.IRecordStorage__factory; } }); -var IRegistryReader__factory_1 = require("./factories/contracts/IRegistryReader__factory"); -Object.defineProperty(exports, "IRegistryReader__factory", { enumerable: true, get: function () { return IRegistryReader__factory_1.IRegistryReader__factory; } }); -var IReverseRegistry__factory_1 = require("./factories/contracts/IReverseRegistry__factory"); -Object.defineProperty(exports, "IReverseRegistry__factory", { enumerable: true, get: function () { return IReverseRegistry__factory_1.IReverseRegistry__factory; } }); -var IRootRegistry__factory_1 = require("./factories/contracts/IRootRegistry__factory"); -Object.defineProperty(exports, "IRootRegistry__factory", { enumerable: true, get: function () { return IRootRegistry__factory_1.IRootRegistry__factory; } }); -var IUNSRegistry__factory_1 = require("./factories/contracts/IUNSRegistry__factory"); -Object.defineProperty(exports, "IUNSRegistry__factory", { enumerable: true, get: function () { return IUNSRegistry__factory_1.IUNSRegistry__factory; } }); -var KeyStorage__factory_1 = require("./factories/contracts/KeyStorage__factory"); -Object.defineProperty(exports, "KeyStorage__factory", { enumerable: true, get: function () { return KeyStorage__factory_1.KeyStorage__factory; } }); -var ISeaportProxyBuyer__factory_1 = require("./factories/contracts/marketplace/ISeaportProxyBuyer__factory"); -Object.defineProperty(exports, "ISeaportProxyBuyer__factory", { enumerable: true, get: function () { return ISeaportProxyBuyer__factory_1.ISeaportProxyBuyer__factory; } }); -var SeaportProxyBuyer__factory_1 = require("./factories/contracts/marketplace/SeaportProxyBuyer__factory"); -Object.defineProperty(exports, "SeaportProxyBuyer__factory", { enumerable: true, get: function () { return SeaportProxyBuyer__factory_1.SeaportProxyBuyer__factory; } }); -var BaseForwarder__factory_1 = require("./factories/contracts/metatx/BaseForwarder__factory"); -Object.defineProperty(exports, "BaseForwarder__factory", { enumerable: true, get: function () { return BaseForwarder__factory_1.BaseForwarder__factory; } }); -var BaseRoutingForwarder__factory_1 = require("./factories/contracts/metatx/BaseRoutingForwarder__factory"); -Object.defineProperty(exports, "BaseRoutingForwarder__factory", { enumerable: true, get: function () { return BaseRoutingForwarder__factory_1.BaseRoutingForwarder__factory; } }); -var CNSRegistryForwarder__factory_1 = require("./factories/contracts/metatx/CNSRegistryForwarder__factory"); -Object.defineProperty(exports, "CNSRegistryForwarder__factory", { enumerable: true, get: function () { return CNSRegistryForwarder__factory_1.CNSRegistryForwarder__factory; } }); -var ERC2771Context__factory_1 = require("./factories/contracts/metatx/ERC2771Context__factory"); -Object.defineProperty(exports, "ERC2771Context__factory", { enumerable: true, get: function () { return ERC2771Context__factory_1.ERC2771Context__factory; } }); -var ERC2771RegistryContext__factory_1 = require("./factories/contracts/metatx/ERC2771RegistryContext__factory"); -Object.defineProperty(exports, "ERC2771RegistryContext__factory", { enumerable: true, get: function () { return ERC2771RegistryContext__factory_1.ERC2771RegistryContext__factory; } }); -var Forwarder__factory_1 = require("./factories/contracts/metatx/Forwarder__factory"); -Object.defineProperty(exports, "Forwarder__factory", { enumerable: true, get: function () { return Forwarder__factory_1.Forwarder__factory; } }); -var IForwarder__factory_1 = require("./factories/contracts/metatx/IForwarder__factory"); -Object.defineProperty(exports, "IForwarder__factory", { enumerable: true, get: function () { return IForwarder__factory_1.IForwarder__factory; } }); -var MintingManagerForwarder__factory_1 = require("./factories/contracts/metatx/MintingManagerForwarder__factory"); -Object.defineProperty(exports, "MintingManagerForwarder__factory", { enumerable: true, get: function () { return MintingManagerForwarder__factory_1.MintingManagerForwarder__factory; } }); -var ResolverForwarder__factory_1 = require("./factories/contracts/metatx/ResolverForwarder__factory"); -Object.defineProperty(exports, "ResolverForwarder__factory", { enumerable: true, get: function () { return ResolverForwarder__factory_1.ResolverForwarder__factory; } }); -var UNSRegistryForwarder__factory_1 = require("./factories/contracts/metatx/UNSRegistryForwarder__factory"); -Object.defineProperty(exports, "UNSRegistryForwarder__factory", { enumerable: true, get: function () { return UNSRegistryForwarder__factory_1.UNSRegistryForwarder__factory; } }); -var MintingManager__factory_1 = require("./factories/contracts/MintingManager__factory"); -Object.defineProperty(exports, "MintingManager__factory", { enumerable: true, get: function () { return MintingManager__factory_1.MintingManager__factory; } }); -var BaseForwarderMock__factory_1 = require("./factories/contracts/mocks/BaseForwarderMock__factory"); -Object.defineProperty(exports, "BaseForwarderMock__factory", { enumerable: true, get: function () { return BaseForwarderMock__factory_1.BaseForwarderMock__factory; } }); -var BaseRoutingForwarderMock__factory_1 = require("./factories/contracts/mocks/BaseRoutingForwarderMock__factory"); -Object.defineProperty(exports, "BaseRoutingForwarderMock__factory", { enumerable: true, get: function () { return BaseRoutingForwarderMock__factory_1.BaseRoutingForwarderMock__factory; } }); -var ERC1155Mock__factory_1 = require("./factories/contracts/mocks/ERC1155Mock__factory"); -Object.defineProperty(exports, "ERC1155Mock__factory", { enumerable: true, get: function () { return ERC1155Mock__factory_1.ERC1155Mock__factory; } }); -var ERC20Mock__factory_1 = require("./factories/contracts/mocks/ERC20Mock__factory"); -Object.defineProperty(exports, "ERC20Mock__factory", { enumerable: true, get: function () { return ERC20Mock__factory_1.ERC20Mock__factory; } }); -var ERC20UnsafeMock__factory_1 = require("./factories/contracts/mocks/ERC20UnsafeMock__factory"); -Object.defineProperty(exports, "ERC20UnsafeMock__factory", { enumerable: true, get: function () { return ERC20UnsafeMock__factory_1.ERC20UnsafeMock__factory; } }); -var ERC2771ContextMock__factory_1 = require("./factories/contracts/mocks/ERC2771ContextMock__factory"); -Object.defineProperty(exports, "ERC2771ContextMock__factory", { enumerable: true, get: function () { return ERC2771ContextMock__factory_1.ERC2771ContextMock__factory; } }); -var ERC2771RegistryContextMock__factory_1 = require("./factories/contracts/mocks/ERC2771RegistryContextMock__factory"); -Object.defineProperty(exports, "ERC2771RegistryContextMock__factory", { enumerable: true, get: function () { return ERC2771RegistryContextMock__factory_1.ERC2771RegistryContextMock__factory; } }); -var ERC721Mock__factory_1 = require("./factories/contracts/mocks/ERC721Mock__factory"); -Object.defineProperty(exports, "ERC721Mock__factory", { enumerable: true, get: function () { return ERC721Mock__factory_1.ERC721Mock__factory; } }); -var ERC721ReceiverMock__factory_1 = require("./factories/contracts/mocks/ERC721ReceiverMock__factory"); -Object.defineProperty(exports, "ERC721ReceiverMock__factory", { enumerable: true, get: function () { return ERC721ReceiverMock__factory_1.ERC721ReceiverMock__factory; } }); -var MinterRoleMock__factory_1 = require("./factories/contracts/mocks/MinterRoleMock__factory"); -Object.defineProperty(exports, "MinterRoleMock__factory", { enumerable: true, get: function () { return MinterRoleMock__factory_1.MinterRoleMock__factory; } }); -var MintingManagerMock__factory_1 = require("./factories/contracts/mocks/MintingManagerMock__factory"); -Object.defineProperty(exports, "MintingManagerMock__factory", { enumerable: true, get: function () { return MintingManagerMock__factory_1.MintingManagerMock__factory; } }); -var UNSRegistryForwarderMock__factory_1 = require("./factories/contracts/mocks/UNSRegistryForwarderMock__factory"); -Object.defineProperty(exports, "UNSRegistryForwarderMock__factory", { enumerable: true, get: function () { return UNSRegistryForwarderMock__factory_1.UNSRegistryForwarderMock__factory; } }); -var UNSRegistryMock__factory_1 = require("./factories/contracts/mocks/UNSRegistryMock__factory"); -Object.defineProperty(exports, "UNSRegistryMock__factory", { enumerable: true, get: function () { return UNSRegistryMock__factory_1.UNSRegistryMock__factory; } }); -var ProxyReader__factory_1 = require("./factories/contracts/ProxyReader__factory"); -Object.defineProperty(exports, "ProxyReader__factory", { enumerable: true, get: function () { return ProxyReader__factory_1.ProxyReader__factory; } }); -var RecordStorage__factory_1 = require("./factories/contracts/RecordStorage__factory"); -Object.defineProperty(exports, "RecordStorage__factory", { enumerable: true, get: function () { return RecordStorage__factory_1.RecordStorage__factory; } }); -var RootRegistry__factory_1 = require("./factories/contracts/RootRegistry__factory"); -Object.defineProperty(exports, "RootRegistry__factory", { enumerable: true, get: function () { return RootRegistry__factory_1.RootRegistry__factory; } }); -var UNSOperator__factory_1 = require("./factories/contracts/UNSOperator__factory"); -Object.defineProperty(exports, "UNSOperator__factory", { enumerable: true, get: function () { return UNSOperator__factory_1.UNSOperator__factory; } }); -var UNSRegistry__factory_1 = require("./factories/contracts/UNSRegistry__factory"); -Object.defineProperty(exports, "UNSRegistry__factory", { enumerable: true, get: function () { return UNSRegistry__factory_1.UNSRegistry__factory; } }); -var Blocklist__factory_1 = require("./factories/contracts/utils/Blocklist__factory"); -Object.defineProperty(exports, "Blocklist__factory", { enumerable: true, get: function () { return Blocklist__factory_1.Blocklist__factory; } }); -var ERC1271SimpleWallet__factory_1 = require("./factories/contracts/utils/ERC1271SimpleWallet__factory"); -Object.defineProperty(exports, "ERC1271SimpleWallet__factory", { enumerable: true, get: function () { return ERC1271SimpleWallet__factory_1.ERC1271SimpleWallet__factory; } }); -var MultiSend__factory_1 = require("./factories/contracts/utils/MultiSend__factory"); -Object.defineProperty(exports, "MultiSend__factory", { enumerable: true, get: function () { return MultiSend__factory_1.MultiSend__factory; } }); -var Pausable__factory_1 = require("./factories/contracts/utils/Pausable__factory"); -Object.defineProperty(exports, "Pausable__factory", { enumerable: true, get: function () { return Pausable__factory_1.Pausable__factory; } }); -var CNSRegistry__factory_1 = require("./factories/dot-crypto/contracts/CNSRegistry__factory"); -Object.defineProperty(exports, "CNSRegistry__factory", { enumerable: true, get: function () { return CNSRegistry__factory_1.CNSRegistry__factory; } }); -var DomainZoneController__factory_1 = require("./factories/dot-crypto/contracts/controllers/DomainZoneController__factory"); -Object.defineProperty(exports, "DomainZoneController__factory", { enumerable: true, get: function () { return DomainZoneController__factory_1.DomainZoneController__factory; } }); -var ISignatureController__factory_1 = require("./factories/dot-crypto/contracts/controllers/ISignatureController__factory"); -Object.defineProperty(exports, "ISignatureController__factory", { enumerable: true, get: function () { return ISignatureController__factory_1.ISignatureController__factory; } }); -var MintingController__factory_1 = require("./factories/dot-crypto/contracts/controllers/MintingController__factory"); -Object.defineProperty(exports, "MintingController__factory", { enumerable: true, get: function () { return MintingController__factory_1.MintingController__factory; } }); -var SignatureController__factory_1 = require("./factories/dot-crypto/contracts/controllers/SignatureController__factory"); -Object.defineProperty(exports, "SignatureController__factory", { enumerable: true, get: function () { return SignatureController__factory_1.SignatureController__factory; } }); -var URIPrefixController__factory_1 = require("./factories/dot-crypto/contracts/controllers/URIPrefixController__factory"); -Object.defineProperty(exports, "URIPrefixController__factory", { enumerable: true, get: function () { return URIPrefixController__factory_1.URIPrefixController__factory; } }); -var IResolverReader__factory_1 = require("./factories/dot-crypto/contracts/IResolverReader__factory"); -Object.defineProperty(exports, "IResolverReader__factory", { enumerable: true, get: function () { return IResolverReader__factory_1.IResolverReader__factory; } }); -var BulkWhitelistedRole__factory_1 = require("./factories/dot-crypto/contracts/util/BulkWhitelistedRole__factory"); -Object.defineProperty(exports, "BulkWhitelistedRole__factory", { enumerable: true, get: function () { return BulkWhitelistedRole__factory_1.BulkWhitelistedRole__factory; } }); -var ControllerRole__factory_1 = require("./factories/dot-crypto/contracts/util/ControllerRole__factory"); -Object.defineProperty(exports, "ControllerRole__factory", { enumerable: true, get: function () { return ControllerRole__factory_1.ControllerRole__factory; } }); -var FreeMinter__factory_1 = require("./factories/dot-crypto/contracts/util/FreeMinter__factory"); -Object.defineProperty(exports, "FreeMinter__factory", { enumerable: true, get: function () { return FreeMinter__factory_1.FreeMinter__factory; } }); -var SignatureUtil__factory_1 = require("./factories/dot-crypto/contracts/util/SignatureUtil__factory"); -Object.defineProperty(exports, "SignatureUtil__factory", { enumerable: true, get: function () { return SignatureUtil__factory_1.SignatureUtil__factory; } }); -var ConsiderationInterface__factory_1 = require("./factories/seaport-types/src/interfaces/ConsiderationInterface__factory"); -Object.defineProperty(exports, "ConsiderationInterface__factory", { enumerable: true, get: function () { return ConsiderationInterface__factory_1.ConsiderationInterface__factory; } }); diff --git a/dist/types/seaport-types/index.d.ts b/dist/types/seaport-types/index.d.ts deleted file mode 100644 index 11d0df31..00000000 --- a/dist/types/seaport-types/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import type * as src from "./src"; -export type { src }; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/seaport-types/index.d.ts.map b/dist/types/seaport-types/index.d.ts.map deleted file mode 100644 index 8f6a0b06..00000000 --- a/dist/types/seaport-types/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../types/seaport-types/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,GAAG,MAAM,OAAO,CAAC;AAClC,YAAY,EAAE,GAAG,EAAE,CAAC"} \ No newline at end of file diff --git a/dist/types/seaport-types/index.js b/dist/types/seaport-types/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/seaport-types/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/seaport-types/src/index.d.ts b/dist/types/seaport-types/src/index.d.ts deleted file mode 100644 index 2c1195f8..00000000 --- a/dist/types/seaport-types/src/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import type * as interfaces from "./interfaces"; -export type { interfaces }; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/seaport-types/src/index.d.ts.map b/dist/types/seaport-types/src/index.d.ts.map deleted file mode 100644 index d97ab511..00000000 --- a/dist/types/seaport-types/src/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../types/seaport-types/src/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,UAAU,MAAM,cAAc,CAAC;AAChD,YAAY,EAAE,UAAU,EAAE,CAAC"} \ No newline at end of file diff --git a/dist/types/seaport-types/src/index.js b/dist/types/seaport-types/src/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/seaport-types/src/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/seaport-types/src/interfaces/ConsiderationInterface.d.ts b/dist/types/seaport-types/src/interfaces/ConsiderationInterface.d.ts deleted file mode 100644 index 13b0f1c7..00000000 --- a/dist/types/seaport-types/src/interfaces/ConsiderationInterface.d.ts +++ /dev/null @@ -1,604 +0,0 @@ -import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; -import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../../common"; -export declare type OfferItemStruct = { - itemType: BigNumberish; - token: AddressLike; - identifierOrCriteria: BigNumberish; - startAmount: BigNumberish; - endAmount: BigNumberish; -}; -export declare type OfferItemStructOutput = [ - itemType: bigint, - token: string, - identifierOrCriteria: bigint, - startAmount: bigint, - endAmount: bigint -] & { - itemType: bigint; - token: string; - identifierOrCriteria: bigint; - startAmount: bigint; - endAmount: bigint; -}; -export declare type ConsiderationItemStruct = { - itemType: BigNumberish; - token: AddressLike; - identifierOrCriteria: BigNumberish; - startAmount: BigNumberish; - endAmount: BigNumberish; - recipient: AddressLike; -}; -export declare type ConsiderationItemStructOutput = [ - itemType: bigint, - token: string, - identifierOrCriteria: bigint, - startAmount: bigint, - endAmount: bigint, - recipient: string -] & { - itemType: bigint; - token: string; - identifierOrCriteria: bigint; - startAmount: bigint; - endAmount: bigint; - recipient: string; -}; -export declare type OrderComponentsStruct = { - offerer: AddressLike; - zone: AddressLike; - offer: OfferItemStruct[]; - consideration: ConsiderationItemStruct[]; - orderType: BigNumberish; - startTime: BigNumberish; - endTime: BigNumberish; - zoneHash: BytesLike; - salt: BigNumberish; - conduitKey: BytesLike; - counter: BigNumberish; -}; -export declare type OrderComponentsStructOutput = [ - offerer: string, - zone: string, - offer: OfferItemStructOutput[], - consideration: ConsiderationItemStructOutput[], - orderType: bigint, - startTime: bigint, - endTime: bigint, - zoneHash: string, - salt: bigint, - conduitKey: string, - counter: bigint -] & { - offerer: string; - zone: string; - offer: OfferItemStructOutput[]; - consideration: ConsiderationItemStructOutput[]; - orderType: bigint; - startTime: bigint; - endTime: bigint; - zoneHash: string; - salt: bigint; - conduitKey: string; - counter: bigint; -}; -export declare type OrderParametersStruct = { - offerer: AddressLike; - zone: AddressLike; - offer: OfferItemStruct[]; - consideration: ConsiderationItemStruct[]; - orderType: BigNumberish; - startTime: BigNumberish; - endTime: BigNumberish; - zoneHash: BytesLike; - salt: BigNumberish; - conduitKey: BytesLike; - totalOriginalConsiderationItems: BigNumberish; -}; -export declare type OrderParametersStructOutput = [ - offerer: string, - zone: string, - offer: OfferItemStructOutput[], - consideration: ConsiderationItemStructOutput[], - orderType: bigint, - startTime: bigint, - endTime: bigint, - zoneHash: string, - salt: bigint, - conduitKey: string, - totalOriginalConsiderationItems: bigint -] & { - offerer: string; - zone: string; - offer: OfferItemStructOutput[]; - consideration: ConsiderationItemStructOutput[]; - orderType: bigint; - startTime: bigint; - endTime: bigint; - zoneHash: string; - salt: bigint; - conduitKey: string; - totalOriginalConsiderationItems: bigint; -}; -export declare type AdvancedOrderStruct = { - parameters: OrderParametersStruct; - numerator: BigNumberish; - denominator: BigNumberish; - signature: BytesLike; - extraData: BytesLike; -}; -export declare type AdvancedOrderStructOutput = [ - parameters: OrderParametersStructOutput, - numerator: bigint, - denominator: bigint, - signature: string, - extraData: string -] & { - parameters: OrderParametersStructOutput; - numerator: bigint; - denominator: bigint; - signature: string; - extraData: string; -}; -export declare type CriteriaResolverStruct = { - orderIndex: BigNumberish; - side: BigNumberish; - index: BigNumberish; - identifier: BigNumberish; - criteriaProof: BytesLike[]; -}; -export declare type CriteriaResolverStructOutput = [ - orderIndex: bigint, - side: bigint, - index: bigint, - identifier: bigint, - criteriaProof: string[] -] & { - orderIndex: bigint; - side: bigint; - index: bigint; - identifier: bigint; - criteriaProof: string[]; -}; -export declare type FulfillmentComponentStruct = { - orderIndex: BigNumberish; - itemIndex: BigNumberish; -}; -export declare type FulfillmentComponentStructOutput = [ - orderIndex: bigint, - itemIndex: bigint -] & { - orderIndex: bigint; - itemIndex: bigint; -}; -export declare type ReceivedItemStruct = { - itemType: BigNumberish; - token: AddressLike; - identifier: BigNumberish; - amount: BigNumberish; - recipient: AddressLike; -}; -export declare type ReceivedItemStructOutput = [ - itemType: bigint, - token: string, - identifier: bigint, - amount: bigint, - recipient: string -] & { - itemType: bigint; - token: string; - identifier: bigint; - amount: bigint; - recipient: string; -}; -export declare type ExecutionStruct = { - item: ReceivedItemStruct; - offerer: AddressLike; - conduitKey: BytesLike; -}; -export declare type ExecutionStructOutput = [ - item: ReceivedItemStructOutput, - offerer: string, - conduitKey: string -] & { - item: ReceivedItemStructOutput; - offerer: string; - conduitKey: string; -}; -export declare type OrderStruct = { - parameters: OrderParametersStruct; - signature: BytesLike; -}; -export declare type OrderStructOutput = [ - parameters: OrderParametersStructOutput, - signature: string -] & { - parameters: OrderParametersStructOutput; - signature: string; -}; -export declare type AdditionalRecipientStruct = { - amount: BigNumberish; - recipient: AddressLike; -}; -export declare type AdditionalRecipientStructOutput = [ - amount: bigint, - recipient: string -] & { - amount: bigint; - recipient: string; -}; -export declare type BasicOrderParametersStruct = { - considerationToken: AddressLike; - considerationIdentifier: BigNumberish; - considerationAmount: BigNumberish; - offerer: AddressLike; - zone: AddressLike; - offerToken: AddressLike; - offerIdentifier: BigNumberish; - offerAmount: BigNumberish; - basicOrderType: BigNumberish; - startTime: BigNumberish; - endTime: BigNumberish; - zoneHash: BytesLike; - salt: BigNumberish; - offererConduitKey: BytesLike; - fulfillerConduitKey: BytesLike; - totalOriginalAdditionalRecipients: BigNumberish; - additionalRecipients: AdditionalRecipientStruct[]; - signature: BytesLike; -}; -export declare type BasicOrderParametersStructOutput = [ - considerationToken: string, - considerationIdentifier: bigint, - considerationAmount: bigint, - offerer: string, - zone: string, - offerToken: string, - offerIdentifier: bigint, - offerAmount: bigint, - basicOrderType: bigint, - startTime: bigint, - endTime: bigint, - zoneHash: string, - salt: bigint, - offererConduitKey: string, - fulfillerConduitKey: string, - totalOriginalAdditionalRecipients: bigint, - additionalRecipients: AdditionalRecipientStructOutput[], - signature: string -] & { - considerationToken: string; - considerationIdentifier: bigint; - considerationAmount: bigint; - offerer: string; - zone: string; - offerToken: string; - offerIdentifier: bigint; - offerAmount: bigint; - basicOrderType: bigint; - startTime: bigint; - endTime: bigint; - zoneHash: string; - salt: bigint; - offererConduitKey: string; - fulfillerConduitKey: string; - totalOriginalAdditionalRecipients: bigint; - additionalRecipients: AdditionalRecipientStructOutput[]; - signature: string; -}; -export declare type FulfillmentStruct = { - offerComponents: FulfillmentComponentStruct[]; - considerationComponents: FulfillmentComponentStruct[]; -}; -export declare type FulfillmentStructOutput = [ - offerComponents: FulfillmentComponentStructOutput[], - considerationComponents: FulfillmentComponentStructOutput[] -] & { - offerComponents: FulfillmentComponentStructOutput[]; - considerationComponents: FulfillmentComponentStructOutput[]; -}; -export interface ConsiderationInterfaceInterface extends Interface { - getFunction(nameOrSignature: "cancel" | "fulfillAdvancedOrder" | "fulfillAvailableAdvancedOrders" | "fulfillAvailableOrders" | "fulfillBasicOrder" | "fulfillBasicOrder_efficient_6GL6yc" | "fulfillOrder" | "getContractOffererNonce" | "getCounter" | "getOrderHash" | "getOrderStatus" | "incrementCounter" | "information" | "matchAdvancedOrders" | "matchOrders" | "name" | "validate"): FunctionFragment; - encodeFunctionData(functionFragment: "cancel", values: [OrderComponentsStruct[]]): string; - encodeFunctionData(functionFragment: "fulfillAdvancedOrder", values: [ - AdvancedOrderStruct, - CriteriaResolverStruct[], - BytesLike, - AddressLike - ]): string; - encodeFunctionData(functionFragment: "fulfillAvailableAdvancedOrders", values: [ - AdvancedOrderStruct[], - CriteriaResolverStruct[], - FulfillmentComponentStruct[][], - FulfillmentComponentStruct[][], - BytesLike, - AddressLike, - BigNumberish - ]): string; - encodeFunctionData(functionFragment: "fulfillAvailableOrders", values: [ - OrderStruct[], - FulfillmentComponentStruct[][], - FulfillmentComponentStruct[][], - BytesLike, - BigNumberish - ]): string; - encodeFunctionData(functionFragment: "fulfillBasicOrder", values: [BasicOrderParametersStruct]): string; - encodeFunctionData(functionFragment: "fulfillBasicOrder_efficient_6GL6yc", values: [BasicOrderParametersStruct]): string; - encodeFunctionData(functionFragment: "fulfillOrder", values: [OrderStruct, BytesLike]): string; - encodeFunctionData(functionFragment: "getContractOffererNonce", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "getCounter", values: [AddressLike]): string; - encodeFunctionData(functionFragment: "getOrderHash", values: [OrderComponentsStruct]): string; - encodeFunctionData(functionFragment: "getOrderStatus", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "incrementCounter", values?: undefined): string; - encodeFunctionData(functionFragment: "information", values?: undefined): string; - encodeFunctionData(functionFragment: "matchAdvancedOrders", values: [ - AdvancedOrderStruct[], - CriteriaResolverStruct[], - FulfillmentStruct[], - AddressLike - ]): string; - encodeFunctionData(functionFragment: "matchOrders", values: [OrderStruct[], FulfillmentStruct[]]): string; - encodeFunctionData(functionFragment: "name", values?: undefined): string; - encodeFunctionData(functionFragment: "validate", values: [OrderStruct[]]): string; - decodeFunctionResult(functionFragment: "cancel", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "fulfillAdvancedOrder", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "fulfillAvailableAdvancedOrders", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "fulfillAvailableOrders", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "fulfillBasicOrder", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "fulfillBasicOrder_efficient_6GL6yc", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "fulfillOrder", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getContractOffererNonce", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getCounter", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getOrderHash", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getOrderStatus", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "incrementCounter", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "information", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "matchAdvancedOrders", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "matchOrders", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "validate", data: BytesLike): Result; -} -export interface ConsiderationInterface extends BaseContract { - connect(runner?: ContractRunner | null): ConsiderationInterface; - waitForDeployment(): Promise; - interface: ConsiderationInterfaceInterface; - queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; - on(event: TCEvent, listener: TypedListener): Promise; - on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - once(event: TCEvent, listener: TypedListener): Promise; - once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; - listeners(event: TCEvent): Promise>>; - listeners(eventName?: string): Promise>; - removeAllListeners(event?: TCEvent): Promise; - cancel: TypedContractMethod<[ - orders: OrderComponentsStruct[] - ], [ - boolean - ], "nonpayable">; - fulfillAdvancedOrder: TypedContractMethod<[ - advancedOrder: AdvancedOrderStruct, - criteriaResolvers: CriteriaResolverStruct[], - fulfillerConduitKey: BytesLike, - recipient: AddressLike - ], [ - boolean - ], "payable">; - fulfillAvailableAdvancedOrders: TypedContractMethod<[ - advancedOrders: AdvancedOrderStruct[], - criteriaResolvers: CriteriaResolverStruct[], - offerFulfillments: FulfillmentComponentStruct[][], - considerationFulfillments: FulfillmentComponentStruct[][], - fulfillerConduitKey: BytesLike, - recipient: AddressLike, - maximumFulfilled: BigNumberish - ], [ - [ - boolean[], - ExecutionStructOutput[] - ] & { - availableOrders: boolean[]; - executions: ExecutionStructOutput[]; - } - ], "payable">; - fulfillAvailableOrders: TypedContractMethod<[ - orders: OrderStruct[], - offerFulfillments: FulfillmentComponentStruct[][], - considerationFulfillments: FulfillmentComponentStruct[][], - fulfillerConduitKey: BytesLike, - maximumFulfilled: BigNumberish - ], [ - [ - boolean[], - ExecutionStructOutput[] - ] & { - availableOrders: boolean[]; - executions: ExecutionStructOutput[]; - } - ], "payable">; - fulfillBasicOrder: TypedContractMethod<[ - parameters: BasicOrderParametersStruct - ], [ - boolean - ], "payable">; - fulfillBasicOrder_efficient_6GL6yc: TypedContractMethod<[ - parameters: BasicOrderParametersStruct - ], [ - boolean - ], "payable">; - fulfillOrder: TypedContractMethod<[ - order: OrderStruct, - fulfillerConduitKey: BytesLike - ], [ - boolean - ], "payable">; - getContractOffererNonce: TypedContractMethod<[ - contractOfferer: AddressLike - ], [ - bigint - ], "view">; - getCounter: TypedContractMethod<[offerer: AddressLike], [bigint], "view">; - getOrderHash: TypedContractMethod<[ - order: OrderComponentsStruct - ], [ - string - ], "view">; - getOrderStatus: TypedContractMethod<[ - orderHash: BytesLike - ], [ - [ - boolean, - boolean, - bigint, - bigint - ] & { - isValidated: boolean; - isCancelled: boolean; - totalFilled: bigint; - totalSize: bigint; - } - ], "view">; - incrementCounter: TypedContractMethod<[], [bigint], "nonpayable">; - information: TypedContractMethod<[ - ], [ - [ - string, - string, - string - ] & { - version: string; - domainSeparator: string; - conduitController: string; - } - ], "view">; - matchAdvancedOrders: TypedContractMethod<[ - orders: AdvancedOrderStruct[], - criteriaResolvers: CriteriaResolverStruct[], - fulfillments: FulfillmentStruct[], - recipient: AddressLike - ], [ - ExecutionStructOutput[] - ], "payable">; - matchOrders: TypedContractMethod<[ - orders: OrderStruct[], - fulfillments: FulfillmentStruct[] - ], [ - ExecutionStructOutput[] - ], "payable">; - name: TypedContractMethod<[], [string], "view">; - validate: TypedContractMethod<[ - orders: OrderStruct[] - ], [ - boolean - ], "nonpayable">; - getFunction(key: string | FunctionFragment): T; - getFunction(nameOrSignature: "cancel"): TypedContractMethod<[ - orders: OrderComponentsStruct[] - ], [ - boolean - ], "nonpayable">; - getFunction(nameOrSignature: "fulfillAdvancedOrder"): TypedContractMethod<[ - advancedOrder: AdvancedOrderStruct, - criteriaResolvers: CriteriaResolverStruct[], - fulfillerConduitKey: BytesLike, - recipient: AddressLike - ], [ - boolean - ], "payable">; - getFunction(nameOrSignature: "fulfillAvailableAdvancedOrders"): TypedContractMethod<[ - advancedOrders: AdvancedOrderStruct[], - criteriaResolvers: CriteriaResolverStruct[], - offerFulfillments: FulfillmentComponentStruct[][], - considerationFulfillments: FulfillmentComponentStruct[][], - fulfillerConduitKey: BytesLike, - recipient: AddressLike, - maximumFulfilled: BigNumberish - ], [ - [ - boolean[], - ExecutionStructOutput[] - ] & { - availableOrders: boolean[]; - executions: ExecutionStructOutput[]; - } - ], "payable">; - getFunction(nameOrSignature: "fulfillAvailableOrders"): TypedContractMethod<[ - orders: OrderStruct[], - offerFulfillments: FulfillmentComponentStruct[][], - considerationFulfillments: FulfillmentComponentStruct[][], - fulfillerConduitKey: BytesLike, - maximumFulfilled: BigNumberish - ], [ - [ - boolean[], - ExecutionStructOutput[] - ] & { - availableOrders: boolean[]; - executions: ExecutionStructOutput[]; - } - ], "payable">; - getFunction(nameOrSignature: "fulfillBasicOrder"): TypedContractMethod<[ - parameters: BasicOrderParametersStruct - ], [ - boolean - ], "payable">; - getFunction(nameOrSignature: "fulfillBasicOrder_efficient_6GL6yc"): TypedContractMethod<[ - parameters: BasicOrderParametersStruct - ], [ - boolean - ], "payable">; - getFunction(nameOrSignature: "fulfillOrder"): TypedContractMethod<[ - order: OrderStruct, - fulfillerConduitKey: BytesLike - ], [ - boolean - ], "payable">; - getFunction(nameOrSignature: "getContractOffererNonce"): TypedContractMethod<[contractOfferer: AddressLike], [bigint], "view">; - getFunction(nameOrSignature: "getCounter"): TypedContractMethod<[offerer: AddressLike], [bigint], "view">; - getFunction(nameOrSignature: "getOrderHash"): TypedContractMethod<[order: OrderComponentsStruct], [string], "view">; - getFunction(nameOrSignature: "getOrderStatus"): TypedContractMethod<[ - orderHash: BytesLike - ], [ - [ - boolean, - boolean, - bigint, - bigint - ] & { - isValidated: boolean; - isCancelled: boolean; - totalFilled: bigint; - totalSize: bigint; - } - ], "view">; - getFunction(nameOrSignature: "incrementCounter"): TypedContractMethod<[], [bigint], "nonpayable">; - getFunction(nameOrSignature: "information"): TypedContractMethod<[ - ], [ - [ - string, - string, - string - ] & { - version: string; - domainSeparator: string; - conduitController: string; - } - ], "view">; - getFunction(nameOrSignature: "matchAdvancedOrders"): TypedContractMethod<[ - orders: AdvancedOrderStruct[], - criteriaResolvers: CriteriaResolverStruct[], - fulfillments: FulfillmentStruct[], - recipient: AddressLike - ], [ - ExecutionStructOutput[] - ], "payable">; - getFunction(nameOrSignature: "matchOrders"): TypedContractMethod<[ - orders: OrderStruct[], - fulfillments: FulfillmentStruct[] - ], [ - ExecutionStructOutput[] - ], "payable">; - getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">; - getFunction(nameOrSignature: "validate"): TypedContractMethod<[orders: OrderStruct[]], [boolean], "nonpayable">; - filters: {}; -} -//# sourceMappingURL=ConsiderationInterface.d.ts.map \ No newline at end of file diff --git a/dist/types/seaport-types/src/interfaces/ConsiderationInterface.d.ts.map b/dist/types/seaport-types/src/interfaces/ConsiderationInterface.d.ts.map deleted file mode 100644 index 8a7369fd..00000000 --- a/dist/types/seaport-types/src/interfaces/ConsiderationInterface.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ConsiderationInterface.d.ts","sourceRoot":"","sources":["../../../../../types/seaport-types/src/interfaces/ConsiderationInterface.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/seaport-types/src/interfaces/ConsiderationInterface.js b/dist/types/seaport-types/src/interfaces/ConsiderationInterface.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/seaport-types/src/interfaces/ConsiderationInterface.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/types/seaport-types/src/interfaces/index.d.ts b/dist/types/seaport-types/src/interfaces/index.d.ts deleted file mode 100644 index f91e0267..00000000 --- a/dist/types/seaport-types/src/interfaces/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export type { ConsiderationInterface } from "./ConsiderationInterface"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/types/seaport-types/src/interfaces/index.d.ts.map b/dist/types/seaport-types/src/interfaces/index.d.ts.map deleted file mode 100644 index 093abbd7..00000000 --- a/dist/types/seaport-types/src/interfaces/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/seaport-types/src/interfaces/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC"} \ No newline at end of file diff --git a/dist/types/seaport-types/src/interfaces/index.js b/dist/types/seaport-types/src/interfaces/index.js deleted file mode 100644 index c8ad2e54..00000000 --- a/dist/types/seaport-types/src/interfaces/index.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/dist/uns-config.json b/dist/uns-config.json deleted file mode 100644 index 3d0b9068..00000000 --- a/dist/uns-config.json +++ /dev/null @@ -1,571 +0,0 @@ -{ - "version": "0.9.2", - "networks": { - "1": { - "contracts": { - "UNSRegistry": { - "address": "0x049aba7510f45BA5b64ea9E658E342F904DB358D", - "implementation": "0xCd451149ffa9d059030528917842bcE14327DfD6", - "legacyAddresses": [], - "deploymentBlock": "0xc2fede", - "forwarder": "0x049aba7510f45BA5b64ea9E658E342F904DB358D" - }, - "CNSRegistry": { - "address": "0xD1E5b0FF1287aA9f9A268759062E4Ab08b9Dacbe", - "legacyAddresses": [], - "deploymentBlock": "0x8a958b", - "forwarder": "0x97B0E89fC1B7eD4A8B237D9d8Fcce9b234f25A37" - }, - "MintingManager": { - "address": "0x2a7084870bB724175a3C96Da8FaA55128fa3E19D", - "implementation": "0xc2729efaBe5746C0875AE8969ce386a02A19fB13", - "legacyAddresses": [], - "deploymentBlock": "0xc2fee0", - "forwarder": "0xb970fbCF52cd8111c76c379D4f2FE12E7f8AE7fb" - }, - "UNSOperator": { - "address": "0x28400c6e89f11a99fD7145a24d39c19f949Ab86e", - "implementation": "0x4f78Db4b434128a45C6236bd61dFf2258637cd7f", - "legacyAddresses": [], - "deploymentBlock": "0xfdd3a7" - }, - "ProxyAdmin": { - "address": "0xAA16DA78110D9A9742c760a1a064F28654Ab93de", - "legacyAddresses": [], - "deploymentBlock": "0xc2fedc" - }, - "SignatureController": { - "address": "0x82EF94294C95aD0930055f31e53A34509227c5f7", - "legacyAddresses": [], - "deploymentBlock": "0x8a95a6" - }, - "MintingController": { - "address": "0xb0EE56339C3253361730F50c08d3d7817ecD60Ca", - "legacyAddresses": [], - "deploymentBlock": "0x8a95aa", - "deprecated": true - }, - "WhitelistedMinter": { - "address": "0xd3fF3377b0ceade1303dAF9Db04068ef8a650757", - "legacyAddresses": [], - "deploymentBlock": "0xa76ad3", - "deprecated": true - }, - "URIPrefixController": { - "address": "0x09B091492759737C03da9dB7eDF1CD6BCC3A9d91", - "legacyAddresses": [], - "deploymentBlock": "0x8a95ae", - "deprecated": true - }, - "DomainZoneController": { - "address": "0xeA70777e28E00E81f58b8921fC47F78B8a72eFE7", - "legacyAddresses": [], - "deploymentBlock": "0x98ca20", - "deprecated": true - }, - "Resolver": { - "address": "0xb66DcE2DA6afAAa98F2013446dBCB0f4B0ab2842", - "legacyAddresses": [ - "0xa1cac442be6673c49f8e74ffc7c4fd746f3cbd0d", - "0x878bc2f3f717766ab69c0a5f9a6144931e61aed3" - ], - "deploymentBlock": "0x960844", - "forwarder": "0x486eb10E4F48C038513ECAf11585Ca2779768CF2" - }, - "ProxyReader": { - "address": "0x578853aa776Eef10CeE6c4dd2B5862bdcE767A8B", - "implementation": "0xF83b08F90C1d5eEf255E8DB50b3Ab158A37a9AD4", - "legacyAddresses": [ - "0x6E68f3EaAD2CC946C6CC7f4859251d8D70Dd3EDB", - "0x1BDc0fD4fbABeed3E611fd6195fCd5d41dcEF393", - "0x58034A288D2E56B661c9056A0C27273E5460B63c", - "0xc3C2BAB5e3e52DBF311b2aAcEf2e40344f19494E", - "0xfEe4D4F0aDFF8D84c12170306507554bC7045878", - "0xa6E7cEf2EDDEA66352Fd68E5915b60BDbb7309f5", - "0x7ea9Ee21077F84339eDa9C80048ec6db678642B1" - ], - "deploymentBlock": "0xf2f03c" - }, - "TwitterValidationOperator": { - "address": "0x2F659766E3D08561CA3408FbAba7C0749ab2c402", - "legacyAddresses": [ - "0xbb486C6E9cF1faA86a6E3eAAFE2e5665C0507855" - ], - "deploymentBlock": "0xc300b5" - }, - "FreeMinter": { - "address": "0x1fC985cAc641ED5846b631f96F35d9b48Bc3b834", - "legacyAddresses": [], - "deploymentBlock": "0xacc390", - "deprecated": true - }, - "MintableERC721Predicate": { - "address": "0x932532aA4c0174b8453839A6E44eE09Cc615F2b7", - "legacyAddresses": [], - "deploymentBlock": "0xa3cf69" - }, - "RootChainManager": { - "address": "0xA0c68C638235ee32657e8f720a23ceC1bFc77C77", - "legacyAddresses": [], - "deploymentBlock": "0xa3cf4d" - }, - "DotCoinBurner": { - "address": "0x65c6abdf52aD08A53A77488D1Acc5c666ada840F", - "legacyAddresses": [], - "deploymentBlock": "0xf335e0" - }, - "ZilliqaRecover": { - "address": "0x0000000000000000000000000000000000000000", - "legacyAddresses": [], - "deploymentBlock": "0x0" - } - } - }, - "137": { - "contracts": { - "UNSRegistry": { - "address": "0xa9a6A3626993D487d2Dbda3173cf58cA1a9D9e9f", - "implementation": "0x11227E54F19934164A81d5aDd1ce5825D46B2271", - "legacyAddresses": [], - "deploymentBlock": "0x01272eb5", - "forwarder": "0xa9a6A3626993D487d2Dbda3173cf58cA1a9D9e9f" - }, - "CNSRegistry": { - "address": "0x0000000000000000000000000000000000000000", - "legacyAddresses": [], - "deploymentBlock": "0x0", - "forwarder": "0x0000000000000000000000000000000000000000" - }, - "MintingManager": { - "address": "0x7be83293BeeDc9Eba1bd76c66A65F10F3efaeC26", - "implementation": "0x8Efbe119357753c5d12f078AC081E37a5AFACf33", - "legacyAddresses": [], - "deploymentBlock": "0x01272f41", - "forwarder": "0xC37d3c4326ab0E1D2b9D8b916bBdf5715f780fcF" - }, - "UNSOperator": { - "address": "0x8f0c61C9BD21d3a5c078FB03eCA01AE2Ff5380dB", - "implementation": "0xbB101ae4B5Df5F9375112D38D9f5a3394916EA97", - "legacyAddresses": [], - "deploymentBlock": "0x025809c0" - }, - "ProxyAdmin": { - "address": "0xe1D668052D52388F52b90f4d1798DB2b04bC3b88", - "legacyAddresses": [], - "deploymentBlock": "0x01272d15" - }, - "SignatureController": { - "address": "0x0000000000000000000000000000000000000000", - "legacyAddresses": [], - "deploymentBlock": "0x0" - }, - "MintingController": { - "address": "0x0000000000000000000000000000000000000000", - "legacyAddresses": [], - "deploymentBlock": "0x0", - "deprecated": true - }, - "WhitelistedMinter": { - "address": "0x0000000000000000000000000000000000000000", - "legacyAddresses": [], - "deploymentBlock": "0x0", - "deprecated": true - }, - "URIPrefixController": { - "address": "0x0000000000000000000000000000000000000000", - "legacyAddresses": [], - "deploymentBlock": "0x0", - "deprecated": true - }, - "DomainZoneController": { - "address": "0x0000000000000000000000000000000000000000", - "legacyAddresses": [], - "deploymentBlock": "0x0", - "deprecated": true - }, - "Resolver": { - "address": "0x0000000000000000000000000000000000000000", - "legacyAddresses": [], - "deploymentBlock": "0x0", - "forwarder": "0x0000000000000000000000000000000000000000" - }, - "ProxyReader": { - "address": "0x91EDd8708062bd4233f4Dd0FCE15A7cb4d500091", - "implementation": "0x989730eAe394d0415eaB088e0C1d83aCD40A66A1", - "legacyAddresses": [ - "0x68Af8fFFCdC6218836C62Bc2Fd2D35dA544471dD", - "0x3E67b8c702a1292d1CEb025494C84367fcb12b45", - "0x423F2531bd5d3C3D4EF7C318c2D1d9BEDE67c680", - "0xA3f32c8cd786dc089Bd1fC175F2707223aeE5d00" - ], - "deploymentBlock": "0x021b1c05" - }, - "TwitterValidationOperator": { - "address": "0x0000000000000000000000000000000000000000", - "legacyAddresses": [], - "deploymentBlock": "0x0" - }, - "FreeMinter": { - "address": "0x0000000000000000000000000000000000000000", - "legacyAddresses": [], - "deploymentBlock": "0x0", - "deprecated": true - }, - "MintableERC721Predicate": { - "address": "0x0000000000000000000000000000000000000000", - "legacyAddresses": [], - "deploymentBlock": "0x0" - }, - "RootChainManager": { - "address": "0x0000000000000000000000000000000000000000", - "legacyAddresses": [], - "deploymentBlock": "0x0" - }, - "DotCoinBurner": { - "address": "0x65c6abdf52aD08A53A77488D1Acc5c666ada840F", - "legacyAddresses": [], - "deploymentBlock": "0x021cac00" - }, - "ZilliqaRecover": { - "address": "0x07B58C81f160257BCb3a2d549ea02D36E3e70461", - "legacyAddresses": [], - "deploymentBlock": "0x032b35a6", - "implementation": "0x50752EcBedBb07543C4191E2492e2e888a7D04bD", - "forwarder": "0x07B58C81f160257BCb3a2d549ea02D36E3e70461" - } - } - }, - "1337": { - "contracts": { - "UNSRegistry": { - "address": "0x107733feD96C4Cd390c944a31F5425A7FB98Ae5e", - "implementation": "0x62b11ad5F582a5C5d378fB310125b030042554F1", - "legacyAddresses": [], - "deploymentBlock": "0x15", - "forwarder": "0x107733feD96C4Cd390c944a31F5425A7FB98Ae5e" - }, - "CNSRegistry": { - "address": "0xC58206842E4030a3B2CaBC78780Ae7635173C533", - "legacyAddresses": [], - "deploymentBlock": "0x01", - "forwarder": "0xAc52F68f31577E44aE0C7E95A42dC9eb574B9383" - }, - "MintingManager": { - "address": "0x39a27956B78d00a4E00EA8833Ff0947410A2933F", - "implementation": "0x229C56b7805aB5935a883207F6a6bD5847E65Aee", - "legacyAddresses": [], - "deploymentBlock": "0x17", - "forwarder": "0x7c3c91245769c8B7450aD522792deC4bd4bf797f" - }, - "UNSOperator": { - "address": "0xCE4bb7Dc1Eb9DCe75743dE6a4B48534fD427Ef51", - "legacyAddresses": [], - "deploymentBlock": "0x19", - "implementation": "0xe85541865Bbb62A05064ce5C9F41cC293A8eA996" - }, - "ProxyAdmin": { - "address": "0x4e44E79e0cEc05D9e62e952B2088c02A3C450aeC", - "legacyAddresses": [], - "deploymentBlock": "0x01" - }, - "SignatureController": { - "address": "0x7bB6Cd9be29fab783c0b494A06FED8b2E2596B7a", - "legacyAddresses": [], - "deploymentBlock": "0x02" - }, - "MintingController": { - "address": "0x4a3C194eB88966178bfDD81744ddDafED611B830", - "legacyAddresses": [], - "deploymentBlock": "0x03", - "deprecated": true - }, - "WhitelistedMinter": { - "address": "0x0000000000000000000000000000000000000000", - "legacyAddresses": [], - "deploymentBlock": "0x0", - "deprecated": true - }, - "URIPrefixController": { - "address": "0x4872CC1be60A9DB9c880A0A437Da7a6AF134F08f", - "legacyAddresses": [], - "deploymentBlock": "0x04", - "deprecated": true - }, - "DomainZoneController": { - "address": "0x0000000000000000000000000000000000000000", - "legacyAddresses": [], - "deploymentBlock": "0x0", - "deprecated": true - }, - "Resolver": { - "address": "0xF8C26340C1eAeA6c7fF1760B25005e1306953572", - "legacyAddresses": [], - "deploymentBlock": "0x08", - "forwarder": "0x11dD97b7Ca847DfB6504e61B7B9Eb30F55E554a0" - }, - "ProxyReader": { - "address": "0x5CC819C9915eADfcEBd76952B8C1BC36CADd7376", - "implementation": "0xBDeFCF6429D0AC68236A6BEb321cBD2Ce66B463C", - "legacyAddresses": [], - "deploymentBlock": "0x1f" - }, - "TwitterValidationOperator": { - "address": "0x0000000000000000000000000000000000000000", - "legacyAddresses": [], - "deploymentBlock": "0x0" - }, - "FreeMinter": { - "address": "0x0000000000000000000000000000000000000000", - "legacyAddresses": [], - "deploymentBlock": "0x0", - "deprecated": true - }, - "MintableERC721Predicate": { - "address": "0x58a175BEbc8ec21A94ea63Aa5a28743945940EE6", - "legacyAddresses": [], - "deploymentBlock": "0x0d" - }, - "RootChainManager": { - "address": "0x27935e7e85db3c4e7885eB828B9e889BA69a4e7f", - "legacyAddresses": [], - "deploymentBlock": "0x0f" - }, - "DotCoinBurner": { - "address": "0xEE9A59532B50514d4Cb2440b19E9539b6380CEcf", - "legacyAddresses": [], - "deploymentBlock": "0x2a" - }, - "ZilliqaRecover": { - "address": "0x70fDaD6FB674d2EbAa36719839aCf496843994A2", - "deploymentBlock": "0x25", - "implementation": "0x56b793E4aD031Dd3EFeF272dc133D212d5fBddc3", - "legacyAddresses": [], - "forwarder": "0x70fDaD6FB674d2EbAa36719839aCf496843994A2" - } - } - }, - "80002": { - "contracts": { - "CNSRegistry": { - "address": "0x0000000000000000000000000000000000000000", - "legacyAddresses": [], - "deploymentBlock": "0x0", - "forwarder": "0x0000000000000000000000000000000000000000" - }, - "SignatureController": { - "address": "0x0000000000000000000000000000000000000000", - "legacyAddresses": [], - "deploymentBlock": "0x0" - }, - "MintingController": { - "address": "0x0000000000000000000000000000000000000000", - "legacyAddresses": [], - "deploymentBlock": "0x0", - "deprecated": true - }, - "WhitelistedMinter": { - "address": "0x0000000000000000000000000000000000000000", - "legacyAddresses": [], - "deploymentBlock": "0x0", - "deprecated": true - }, - "URIPrefixController": { - "address": "0x0000000000000000000000000000000000000000", - "legacyAddresses": [], - "deploymentBlock": "0x0", - "deprecated": true - }, - "DomainZoneController": { - "address": "0x0000000000000000000000000000000000000000", - "legacyAddresses": [], - "deploymentBlock": "0x0", - "deprecated": true - }, - "Resolver": { - "address": "0x0000000000000000000000000000000000000000", - "legacyAddresses": [], - "deploymentBlock": "0x0", - "forwarder": "0x0000000000000000000000000000000000000000" - }, - "TwitterValidationOperator": { - "address": "0x0000000000000000000000000000000000000000", - "legacyAddresses": [], - "deploymentBlock": "0x0" - }, - "FreeMinter": { - "address": "0x0000000000000000000000000000000000000000", - "legacyAddresses": [], - "deploymentBlock": "0x0", - "deprecated": true - }, - "MintableERC721Predicate": { - "address": "0x0000000000000000000000000000000000000000", - "legacyAddresses": [], - "deploymentBlock": "0x0" - }, - "RootChainManager": { - "address": "0x0000000000000000000000000000000000000000", - "legacyAddresses": [], - "deploymentBlock": "0x0" - }, - "ProxyAdmin": { - "address": "0xCbF16B0E2A06916F0Ca4892F704349d13E11cF66", - "legacyAddresses": [], - "deploymentBlock": "0x53f24d" - }, - "UNSOperator": { - "address": "0x89D35aABc8427a32ee7032e73975271e1480fd4E", - "legacyAddresses": [], - "deploymentBlock": "0x53f775", - "implementation": "0x49Ac063337cF2fB26dD421Ab650b893CD54b900F" - }, - "UNSRegistry": { - "address": "0xAb005176D74900A9c25fDA144e2f9f329A409166", - "legacyAddresses": [], - "deploymentBlock": "0x53f76a", - "implementation": "0x223350B4892300EA6E8adEF48C955dcf1C544D02", - "forwarder": "0xAb005176D74900A9c25fDA144e2f9f329A409166" - }, - "MintingManager": { - "address": "0xabec3fF0F0b6375F65CB9aEB01e8347bf697082F", - "legacyAddresses": [], - "deploymentBlock": "0x53f770", - "implementation": "0x5e6f02BA94648Fb25Ca98C6a577c04A0Db34c724", - "forwarder": "0xC738bD0E31CF0f7a777D815F8cA965f3c064C012" - }, - "ProxyReader": { - "address": "0x109e7315189E476AB21166955a0fB9BE9b531BEc", - "legacyAddresses": [], - "deploymentBlock": "0x53fff5", - "implementation": "0xA35F199591bD4F0Cb301ff85b6109Bda146dfb09" - }, - "DotCoinBurner": { - "address": "0xFc86844dE82FA7906C9789ca3161004F18Ca8ff4", - "legacyAddresses": [], - "deploymentBlock": "0x540d0d" - }, - "ZilliqaRecover": { - "address": "0x002380ccAFf852dEF50a176873d50f8019e36FBc", - "legacyAddresses": [], - "deploymentBlock": "0x540d6a", - "implementation": "0xBf101Ad6226024D1d26180136311d77387353c71", - "forwarder": "0x002380ccAFf852dEF50a176873d50f8019e36FBc" - } - } - }, - "11155111": { - "contracts": { - "ProxyAdmin": { - "address": "0xCbF16B0E2A06916F0Ca4892F704349d13E11cF66", - "legacyAddresses": [], - "deploymentBlock": "0x5588B8" - }, - "ENSCustody": { - "address": "0xd2Bf816C7b23fF6e7d141ECC4c1e41DcC857aD45", - "legacyAddresses": [], - "deploymentBlock": "0x5588b9", - "implementation": "0x49Ac063337cF2fB26dD421Ab650b893CD54b900F", - "forwarder": "0xd2Bf816C7b23fF6e7d141ECC4c1e41DcC857aD45" - }, - "CNSRegistry": { - "address": "0xAb005176D74900A9c25fDA144e2f9f329A409166", - "legacyAddresses": [], - "deploymentBlock": "0x558be7", - "forwarder": "0xD3146C740c0Fa128ab1aEA90e4E75194AC0Bbc9B" - }, - "SignatureController": { - "address": "0x5e6f02BA94648Fb25Ca98C6a577c04A0Db34c724", - "legacyAddresses": [], - "deploymentBlock": "0x558bee" - }, - "MintingController": { - "address": "0xabec3fF0F0b6375F65CB9aEB01e8347bf697082F", - "legacyAddresses": [], - "deploymentBlock": "0x558bef", - "deprecated": true - }, - "URIPrefixController": { - "address": "0x89D35aABc8427a32ee7032e73975271e1480fd4E", - "legacyAddresses": [], - "deploymentBlock": "0x558bf6", - "deprecated": true - }, - "Resolver": { - "address": "0xf8F0622A88eC688140890153191Db1713442618D", - "legacyAddresses": [], - "deploymentBlock": "0x558bfc", - "forwarder": "0xA35F199591bD4F0Cb301ff85b6109Bda146dfb09" - }, - "WhitelistedMinter": { - "address": "0x0000000000000000000000000000000000000000", - "legacyAddresses": [], - "deploymentBlock": "0x0", - "deprecated": true - }, - "DomainZoneController": { - "address": "0x0000000000000000000000000000000000000000", - "legacyAddresses": [], - "deploymentBlock": "0x0", - "deprecated": true - }, - "TwitterValidationOperator": { - "address": "0x0000000000000000000000000000000000000000", - "legacyAddresses": [], - "deploymentBlock": "0x0" - }, - "FreeMinter": { - "address": "0x0000000000000000000000000000000000000000", - "legacyAddresses": [], - "deploymentBlock": "0x0", - "deprecated": true - }, - "MintableERC721Predicate": { - "address": "0xf8D2ecCA43F50F04922A13c417aEd05C34F1EF52", - "legacyAddresses": [], - "deploymentBlock": "0x486873" - }, - "RootChainManager": { - "address": "0x34F5A25B627f50Bb3f5cAb72807c4D4F405a9232", - "legacyAddresses": [], - "deploymentBlock": "0x486867" - }, - "UNSRegistry": { - "address": "0xDD907B4d80B4a979fd77eE502580c55F2700292c", - "deploymentBlock": "0x55a711", - "legacyAddresses": [], - "implementation": "0x7f21bA760352326c55FD6A83D218c2FCd294Dd1c", - "forwarder": "0xDD907B4d80B4a979fd77eE502580c55F2700292c" - }, - "MintingManager": { - "address": "0x1620637c0ce88cccfa919ef562b4398e3187189d", - "deploymentBlock": "0x55a715", - "legacyAddresses": [], - "implementation": "0x63B6F3F80d12A70eA26a57cdFDc16F33e6fD319A", - "forwarder": "0x38F532B32E0b42E747483A37Dfaf05460b1F4Fa3" - }, - "UNSOperator": { - "address": "0x41fD65E5a1cbdcCdD69F8C11DA4c829F7d3565A6", - "deploymentBlock": "0x55A717", - "legacyAddresses": [], - "implementation": "0xf9A7A6516Ee73E4Bd3FA9fbABdA3C8DeA40c89FA" - }, - "ProxyReader": { - "address": "0x880F7D37E9E4EB6868F92F4bB9C8C0995178fdA9", - "deploymentBlock": "0x55a857", - "legacyAddresses": [], - "implementation": "0xdA0E8ec8f801593161e689275Ab1394e7791ee18" - }, - "DotCoinBurner": { - "address": "0x64E3ecF931610d2503247b7c7A885688de54241A", - "legacyAddresses": [], - "deploymentBlock": "0x55f932" - }, - "ZilliqaRecover": { - "address": "0x0000000000000000000000000000000000000000", - "legacyAddresses": [], - "deploymentBlock": "0x0" - } - } - } - } -} diff --git a/test/marketplace/SeaportProxyBuyer.test.ts b/test/marketplace/SeaportProxyBuyer.test.ts index c9edea8a..093699d1 100644 --- a/test/marketplace/SeaportProxyBuyer.test.ts +++ b/test/marketplace/SeaportProxyBuyer.test.ts @@ -1,4 +1,4 @@ -import { ethers, upgrades } from 'hardhat'; +import { ethers } from 'hardhat'; import { expect } from 'chai'; import { SignerWithAddress } from '@nomicfoundation/hardhat-ethers/signers'; import { Seaport as seaportjs } from '@opensea/seaport-js'; @@ -36,12 +36,11 @@ describe('SeaportProxyBuyer', async () => { feesRecipient: SignerWithAddress; let tokenIdToSell: bigint; - let seaportSdk: seaportjs; + let proxyBuyerAddress: string; before(async () => { - signers = await ethers.getSigners(); [coinbase, seller, buyer, reader, feesRecipient] = signers; @@ -62,8 +61,9 @@ describe('SeaportProxyBuyer', async () => { ], { initializer: false })) as SeaportProxyBuyer; await seaportProxyBuyer.initialize( await seaportContract.getAddress(), - await usdcMock.getAddress(), ); + await seaportProxyBuyer.connect(coinbase).approve(await usdcMock.getAddress()); + proxyBuyerAddress = await seaportProxyBuyer.getAddress(); await seaportProxyBuyer.addMinter(coinbase.address); seaportSdk = new seaportjs(seller, { overrides: { @@ -76,17 +76,56 @@ describe('SeaportProxyBuyer', async () => { await usdcMock.mint(await seaportProxyBuyer.getAddress(), ethers.parseUnits('250000', 6)); await unsRegistry.connect(seller).setApprovalForAll(await seaportContract.getAddress(), true); tokenIdToSell = await mintRandomDomain({ unsRegistry, owner: seller.address, tld: 'crypto' }); - try { await seaportProxyBuyer.connect(coinbase).unpause(); } catch {} }); + const createOrder = async (priceToSell: bigint, recipientFeesBasisPoints: bigint, zone?: string) => { + const order = await seaportSdk.createOrder({ + zone: zone, + restrictedByZone: true, + offer: [ + { + token: await unsRegistry.getAddress(), + itemType: ItemType.ERC721, + identifier: tokenIdToSell.toString(), + }, + ], + consideration: [ + { + token: await usdcMock.getAddress(), + amount: priceToSell.toString(), + }, + ], + fees: [ + { + recipient: feesRecipient.address, + basisPoints: Number(recipientFeesBasisPoints), + }, + ], + }, seller.address); + const seaportOrderData = await order.executeAllActions(); + const fulfillOrderData: OrderStruct = { + ...seaportOrderData, + parameters: { + ...seaportOrderData.parameters, + consideration: seaportOrderData.parameters.consideration, + totalOriginalConsiderationItems: seaportOrderData.parameters.consideration.length, + }, + }; + const { numerator, denominator } = getAdvancedOrderNumeratorDenominator(seaportOrderData); + + const hash = ethers.toBigInt(seaportSdk.getOrderHash(seaportOrderData.parameters)); + return { fulfillOrderData, numerator, denominator, hash }; + }; + describe('Regular tranactions', async () => { it('should execute Seaport order via Proxy', async () => { const priceToSell = BigInt(ethers.parseUnits('100', 6)); const recipientFeesBasisPoints = BigInt(50); // 0.5% const feesAmount = priceToSell * recipientFeesBasisPoints / BigInt(10000); - const { fulfillOrderData, numerator, denominator } = await createOrder(priceToSell, recipientFeesBasisPoints); + const { fulfillOrderData, numerator, denominator } = + await createOrder(priceToSell, recipientFeesBasisPoints, proxyBuyerAddress); - const initialProxyBalance = await usdcMock.balanceOf(await seaportProxyBuyer.getAddress()); + const initialProxyBalance = await usdcMock.balanceOf(proxyBuyerAddress); const initialSellerBalance = await usdcMock.balanceOf(seller.address); const initialFeesRecipientBalance = await usdcMock.balanceOf(feesRecipient.address); await (await seaportProxyBuyer.connect(coinbase).fulfillAdvancedOrder( @@ -94,7 +133,7 @@ describe('SeaportProxyBuyer', async () => { )).wait(); const sellerBalance = await usdcMock.balanceOf(seller.address); - const proxyBalance = await usdcMock.balanceOf(await seaportProxyBuyer.getAddress()); + const proxyBalance = await usdcMock.balanceOf(proxyBuyerAddress); const domainOwner = await unsRegistry.ownerOf(tokenIdToSell); const feesRecipientBalance = await usdcMock.balanceOf(feesRecipient.address); @@ -107,7 +146,8 @@ describe('SeaportProxyBuyer', async () => { it('should not execute Seaport order from non-minter', async () => { const priceToSell = BigInt(ethers.parseUnits('100', 6)); const recipientFeesBasisPoints = BigInt(50); - const { fulfillOrderData, numerator, denominator } = await createOrder(priceToSell, recipientFeesBasisPoints); + const { fulfillOrderData, numerator, denominator } = + await createOrder(priceToSell, recipientFeesBasisPoints, proxyBuyerAddress); await expect(seaportProxyBuyer.connect(buyer).fulfillAdvancedOrder( { ...fulfillOrderData, numerator, denominator, extraData: '0x' }, [], ethers.ZeroHash, buyer.address, @@ -118,7 +158,8 @@ describe('SeaportProxyBuyer', async () => { const amountToWithdraw = BigInt(ethers.parseUnits('100', 6)); const initialProxyBalance = await usdcMock.balanceOf(await seaportProxyBuyer.getAddress()); const initialRecipientBalance = await usdcMock.balanceOf(feesRecipient.address); - await seaportProxyBuyer.connect(coinbase).withdraw(feesRecipient.address, amountToWithdraw); + await seaportProxyBuyer.connect(coinbase) + .withdraw(await usdcMock.getAddress(), feesRecipient.address, amountToWithdraw); const recipientBalance = await usdcMock.balanceOf(feesRecipient.address); const proxyBalance = await usdcMock.balanceOf(await seaportProxyBuyer.getAddress()); @@ -129,14 +170,16 @@ describe('SeaportProxyBuyer', async () => { it('should not withdraw USDC from Proxy by non-owner', async () => { const amountToWithdraw = BigInt(ethers.parseUnits('100', 6)); await expect( - seaportProxyBuyer.connect(buyer).withdraw(feesRecipient.address, amountToWithdraw), + seaportProxyBuyer.connect(buyer) + .withdraw(await usdcMock.getAddress(), feesRecipient.address, amountToWithdraw), ).to.be.revertedWith('Ownable: caller is not the owner'); }); it('should not execute Seaport order with zero recipient address', async () => { const priceToSell = BigInt(ethers.parseUnits('100', 6)); const recipientFeesBasisPoints = BigInt(50); - const { fulfillOrderData, numerator, denominator } = await createOrder(priceToSell, recipientFeesBasisPoints); + const { fulfillOrderData, numerator, denominator } = + await createOrder(priceToSell, recipientFeesBasisPoints, proxyBuyerAddress); await expect(seaportProxyBuyer.connect(coinbase).fulfillAdvancedOrder( { ...fulfillOrderData, numerator, denominator, extraData: '0x' }, [], ethers.ZeroHash, ZERO_ADDRESS, @@ -147,19 +190,23 @@ describe('SeaportProxyBuyer', async () => { await seaportProxyBuyer.connect(coinbase).pause(); const priceToSell = BigInt(ethers.parseUnits('100', 6)); const recipientFeesBasisPoints = BigInt(50); - const { fulfillOrderData, numerator, denominator } = await createOrder(priceToSell, recipientFeesBasisPoints); + const { fulfillOrderData, numerator, denominator } = + await createOrder(priceToSell, recipientFeesBasisPoints, proxyBuyerAddress); await expect(seaportProxyBuyer.connect(coinbase).fulfillAdvancedOrder( { ...fulfillOrderData, numerator, denominator, extraData: '0x' }, [], ethers.ZeroHash, buyer.address, )).to.be.revertedWith('Pausable: paused'); + await seaportProxyBuyer.connect(coinbase).unpause(); }); it('should not withdraw USDC from Proxy if contract is paused', async () => { await seaportProxyBuyer.connect(coinbase).pause(); const amountToWithdraw = BigInt(ethers.parseUnits('100', 6)); await expect( - seaportProxyBuyer.connect(coinbase).withdraw(feesRecipient.address, amountToWithdraw), + seaportProxyBuyer.connect(coinbase) + .withdraw(await usdcMock.getAddress(), feesRecipient.address, amountToWithdraw), ).to.be.revertedWith('Pausable: paused'); + await seaportProxyBuyer.connect(coinbase).unpause(); }); it('should unpause contract', async () => { @@ -167,7 +214,8 @@ describe('SeaportProxyBuyer', async () => { await seaportProxyBuyer.connect(coinbase).unpause(); const priceToSell = BigInt(ethers.parseUnits('100', 6)); const recipientFeesBasisPoints = BigInt(50); - const { fulfillOrderData, numerator, denominator } = await createOrder(priceToSell, recipientFeesBasisPoints); + const { fulfillOrderData, numerator, denominator } = + await createOrder(priceToSell, recipientFeesBasisPoints, proxyBuyerAddress); await seaportProxyBuyer.connect(coinbase).fulfillAdvancedOrder( { ...fulfillOrderData, numerator, denominator, extraData: '0x' }, [], ethers.ZeroHash, buyer.address, @@ -177,6 +225,7 @@ describe('SeaportProxyBuyer', async () => { it('should not pause if paused', async () => { await seaportProxyBuyer.connect(coinbase).pause(); await expect(seaportProxyBuyer.connect(coinbase).pause()).to.be.revertedWith('Pausable: paused'); + await seaportProxyBuyer.connect(coinbase).unpause(); }); it('should not unpause if not paused', async () => { @@ -190,6 +239,54 @@ describe('SeaportProxyBuyer', async () => { it('should not unpause by non-owner', async () => { await seaportProxyBuyer.connect(coinbase).pause(); await expect(seaportProxyBuyer.connect(buyer).unpause()).to.be.revertedWith('Ownable: caller is not the owner'); + await seaportProxyBuyer.connect(coinbase).unpause(); + }); + + it('should not process order if zone is not set', async () => { + const priceToSell = BigInt(ethers.parseUnits('100', 6)); + const recipientFeesBasisPoints = BigInt(50); + const { fulfillOrderData, numerator, denominator } = + await createOrder(priceToSell, recipientFeesBasisPoints); + + await expect(seaportProxyBuyer.connect(coinbase).fulfillAdvancedOrder( + { ...fulfillOrderData, numerator, denominator, extraData: '0x' }, [], ethers.ZeroHash, buyer.address, + )).to.be.revertedWithCustomError(seaportProxyBuyer, 'InvalidZone'); + }); + + it('should not process order if zone is invalid', async () => { + const priceToSell = BigInt(ethers.parseUnits('100', 6)); + const recipientFeesBasisPoints = BigInt(50); + const { fulfillOrderData, numerator, denominator } = + await createOrder(priceToSell, recipientFeesBasisPoints, ZERO_ADDRESS); + + await expect(seaportProxyBuyer.connect(coinbase).fulfillAdvancedOrder( + { ...fulfillOrderData, numerator, denominator, extraData: '0x' }, [], ethers.ZeroHash, buyer.address, + )).to.be.revertedWithCustomError(seaportProxyBuyer, 'InvalidZone'); + }); + + it('should approve ERC20 spending to Seaport contract', async () => { + const erc20Mock = await new ERC20Mock__factory(coinbase).deploy(); + const initialAllowaneAmount = + await erc20Mock.allowance(proxyBuyerAddress, await seaportContract.getAddress()); + expect(initialAllowaneAmount).to.be.eq(0); + await seaportProxyBuyer.connect(coinbase).approve(await erc20Mock.getAddress()); + const allowanceAmount = + await erc20Mock.allowance(proxyBuyerAddress, await seaportContract.getAddress()); + expect(allowanceAmount).to.be.eq(ethers.MaxUint256); + }); + + it('should not approve ERC20 spending to Seaport contract by non-owner', async () => { + const erc20Mock = await new ERC20Mock__factory(coinbase).deploy(); + await expect(seaportProxyBuyer.connect(buyer).approve(await erc20Mock.getAddress())) + .to.be.revertedWith('Ownable: caller is not the owner'); + }); + + it('should not approve ERC20 spending to Seaport contract if contract is paused', async () => { + const erc20Mock = await new ERC20Mock__factory(coinbase).deploy(); + await seaportProxyBuyer.connect(coinbase).pause(); + await expect(seaportProxyBuyer.connect(coinbase).approve(await erc20Mock.getAddress())) + .to.be.revertedWith('Pausable: paused'); + await seaportProxyBuyer.connect(coinbase).unpause(); }); }); @@ -208,7 +305,8 @@ describe('SeaportProxyBuyer', async () => { const priceToSell = BigInt(ethers.parseUnits('100', 6)); const recipientFeesBasisPoints = BigInt(50); const feesAmount = priceToSell * recipientFeesBasisPoints / BigInt(10000); - const { fulfillOrderData, numerator, denominator } = await createOrder(priceToSell, recipientFeesBasisPoints); + const { fulfillOrderData, numerator, denominator, hash } = + await createOrder(priceToSell, recipientFeesBasisPoints, proxyBuyerAddress); const initialProxyBalance = await usdcMock.balanceOf(await seaportProxyBuyer.getAddress()); const initialSellerBalance = await usdcMock.balanceOf(seller.address); @@ -217,7 +315,7 @@ describe('SeaportProxyBuyer', async () => { 'fulfillAdvancedOrder', [{ ...fulfillOrderData, numerator, denominator, extraData: '0x' }, [], ethers.ZeroHash, buyer.address], coinbase, - 0, + hash, ); await (await seaportProxyBuyer.connect(seller).execute(req, signature)).wait(); @@ -235,13 +333,14 @@ describe('SeaportProxyBuyer', async () => { it('should not execute Seaport order from non-minter', async () => { const priceToSell = BigInt(ethers.parseUnits('100', 6)); const recipientFeesBasisPoints = BigInt(50); - const { fulfillOrderData, numerator, denominator } = await createOrder(priceToSell, recipientFeesBasisPoints); + const { fulfillOrderData, numerator, denominator, hash } = + await createOrder(priceToSell, recipientFeesBasisPoints, proxyBuyerAddress); const { req, signature } = await buildExecuteParams( 'fulfillAdvancedOrder', [{ ...fulfillOrderData, numerator, denominator, extraData: '0x' }, [], ethers.ZeroHash, buyer.address], buyer, - 0, + hash, ); await expect( seaportProxyBuyer.connect(coinbase).execute(req, signature), @@ -254,7 +353,7 @@ describe('SeaportProxyBuyer', async () => { const initialRecipientBalance = await usdcMock.balanceOf(feesRecipient.address); const { req, signature } = await buildExecuteParams( 'withdraw', - [feesRecipient.address, amountToWithdraw], + [await usdcMock.getAddress(), feesRecipient.address, amountToWithdraw], coinbase, 0, ); @@ -270,7 +369,7 @@ describe('SeaportProxyBuyer', async () => { const amountToWithdraw = BigInt(ethers.parseUnits('100', 6)); const { req, signature } = await buildExecuteParams( 'withdraw', - [feesRecipient.address, amountToWithdraw], + [await usdcMock.getAddress(), feesRecipient.address, amountToWithdraw], buyer, 0, ); @@ -278,112 +377,69 @@ describe('SeaportProxyBuyer', async () => { seaportProxyBuyer.connect(coinbase).execute(req, signature), ).to.be.revertedWith('Ownable: caller is not the owner'); }); - }); - - describe('Contract upgrades', async () => { - it('should keep USDC balance after upgrade', async () => { - const balanceBefore = await usdcMock.balanceOf(await seaportProxyBuyer.getAddress()); - seaportProxyBuyer = - (await upgrades.upgradeProxy( - await seaportProxyBuyer.getAddress(), seaportProxyBuyerFactory, - )) as unknown as SeaportProxyBuyer; - const balanceAfter = await usdcMock.balanceOf(await seaportProxyBuyer.getAddress()); - expect(balanceAfter).to.be.eq(balanceBefore); - }); - it('should execute Seaport order after upgrade', async () => { + it('should not process order if zone is not set', async () => { const priceToSell = BigInt(ethers.parseUnits('100', 6)); const recipientFeesBasisPoints = BigInt(50); - const { fulfillOrderData, numerator, denominator } = await createOrder(priceToSell, recipientFeesBasisPoints); - seaportProxyBuyer = - (await upgrades.upgradeProxy( - await seaportProxyBuyer.getAddress(), seaportProxyBuyerFactory, - )) as unknown as SeaportProxyBuyer; - (await seaportProxyBuyer.connect(coinbase).fulfillAdvancedOrder( - { ...fulfillOrderData, numerator, denominator, extraData: '0x' }, [], ethers.ZeroHash, buyer.address, - )).wait(); + const { fulfillOrderData, numerator, denominator, hash } = + await createOrder(priceToSell, recipientFeesBasisPoints); - const domainOwner = await unsRegistry.ownerOf(tokenIdToSell); - expect(domainOwner).to.be.eq(buyer.address); + const { req, signature } = await buildExecuteParams( + 'fulfillAdvancedOrder', + [{ ...fulfillOrderData, numerator, denominator, extraData: '0x' }, [], ethers.ZeroHash, buyer.address], + coinbase, + hash, + ); + await expect( + seaportProxyBuyer.connect(coinbase).execute(req, signature), + ).to.be.revertedWithCustomError(seaportProxyBuyer, 'InvalidZone'); }); - it('should withdraw USDC after upgrade', async () => { - const amountToWithdraw = BigInt(ethers.parseUnits('100', 6)); - const initialProxyBalance = await usdcMock.balanceOf(await seaportProxyBuyer.getAddress()); - const initialRecipientBalance = await usdcMock.balanceOf(feesRecipient.address); - seaportProxyBuyer = - (await upgrades.upgradeProxy( - await seaportProxyBuyer.getAddress(), seaportProxyBuyerFactory, - )) as unknown as SeaportProxyBuyer; - await seaportProxyBuyer.connect(coinbase).withdraw(feesRecipient.address, amountToWithdraw); + it('should not process order if zone is invalid', async () => { + const priceToSell = BigInt(ethers.parseUnits('100', 6)); + const recipientFeesBasisPoints = BigInt(50); + const { fulfillOrderData, numerator, denominator, hash } = + await createOrder(priceToSell, recipientFeesBasisPoints, ZERO_ADDRESS); - const recipientBalance = await usdcMock.balanceOf(feesRecipient.address); - const proxyBalance = await usdcMock.balanceOf(await seaportProxyBuyer.getAddress()); - expect(recipientBalance).to.be.eq(initialRecipientBalance + amountToWithdraw); - expect(proxyBalance).to.be.eq(initialProxyBalance - amountToWithdraw); + const { req, signature } = await buildExecuteParams( + 'fulfillAdvancedOrder', + [{ ...fulfillOrderData, numerator, denominator, extraData: '0x' }, [], ethers.ZeroHash, buyer.address], + coinbase, + hash, + ); + await expect( + seaportProxyBuyer.connect(coinbase).execute(req, signature), + ).to.be.revertedWithCustomError(seaportProxyBuyer, 'InvalidZone'); }); - it('should not withdraw USDC after upgrade by non-owner', async () => { - const amountToWithdraw = BigInt(ethers.parseUnits('100', 6)); - seaportProxyBuyer = - (await upgrades.upgradeProxy( - await seaportProxyBuyer.getAddress(), seaportProxyBuyerFactory, - )) as unknown as SeaportProxyBuyer; + it('should not approve ERC20 spending to Seaport contract by non-owner', async () => { + const erc20Mock = await new ERC20Mock__factory(coinbase).deploy(); + const { req, signature } = await buildExecuteParams( + 'approve', + [await erc20Mock.getAddress()], + buyer, + 0, + ); await expect( - seaportProxyBuyer.connect(buyer).withdraw(feesRecipient.address, amountToWithdraw), + seaportProxyBuyer.connect(coinbase).execute(req, signature), ).to.be.revertedWith('Ownable: caller is not the owner'); }); - it('should not execute Seaport order after upgrade by non-minter', async () => { - const priceToSell = BigInt(ethers.parseUnits('100', 6)); - const recipientFeesBasisPoints = BigInt(50); - const { fulfillOrderData, numerator, denominator } = await createOrder(priceToSell, recipientFeesBasisPoints); - seaportProxyBuyer = - (await upgrades.upgradeProxy( - await seaportProxyBuyer.getAddress(), seaportProxyBuyerFactory, - )) as unknown as SeaportProxyBuyer; - - await expect(seaportProxyBuyer.connect(buyer).fulfillAdvancedOrder( - { ...fulfillOrderData, numerator, denominator, extraData: '0x' }, [], ethers.ZeroHash, buyer.address, - )).to.be.revertedWith('MinterRole: CALLER_IS_NOT_MINTER'); + it('should approve ERC20 spending to Seaport contract', async () => { + const erc20Mock = await new ERC20Mock__factory(coinbase).deploy(); + const initialAllowaneAmount = + await erc20Mock.allowance(proxyBuyerAddress, await seaportContract.getAddress()); + expect(initialAllowaneAmount).to.be.eq(0); + const { req, signature } = await buildExecuteParams( + 'approve', + [await erc20Mock.getAddress()], + coinbase, + 0, + ); + await seaportProxyBuyer.connect(coinbase).execute(req, signature); + const allowanceAmount = + await erc20Mock.allowance(proxyBuyerAddress, await seaportContract.getAddress()); + expect(allowanceAmount).to.be.eq(ethers.MaxUint256); }); }); - - const createOrder = async (priceToSell: bigint, recipientFeesBasisPoints: bigint) => { - const order = await seaportSdk.createOrder({ - zone: await seaportProxyBuyer.getAddress(), - restrictedByZone: true, - offer: [ - { - token: await unsRegistry.getAddress(), - itemType: ItemType.ERC721, - identifier: tokenIdToSell.toString(), - }, - ], - consideration: [ - { - token: await usdcMock.getAddress(), - amount: priceToSell.toString(), - }, - ], - fees: [ - { - recipient: feesRecipient.address, - basisPoints: Number(recipientFeesBasisPoints), - }, - ], - }, seller.address); - const seaportOrderData = await order.executeAllActions(); - const fulfillOrderData: OrderStruct = { - ...seaportOrderData, - parameters: { - ...seaportOrderData.parameters, - consideration: seaportOrderData.parameters.consideration, - totalOriginalConsiderationItems: seaportOrderData.parameters.consideration.length, - }, - }; - const { numerator, denominator } = getAdvancedOrderNumeratorDenominator(seaportOrderData); - - return { fulfillOrderData, numerator, denominator }; - }; }); From 52a462786206ef299ad0ff8b07c1d0af82f82773 Mon Sep 17 00:00:00 2001 From: derain Date: Thu, 16 May 2024 16:57:16 +0300 Subject: [PATCH 04/21] [REG-1273] - return dist directory --- dist/hardhat.config.d.ts | 36 + dist/hardhat.config.d.ts.map | 1 + dist/hardhat.config.js | 183 ++ dist/index.d.ts | 5 + dist/index.d.ts.map | 1 + dist/index.js | 33 + dist/sandbox/db.tgz | Bin 0 -> 548070 bytes dist/sandbox/ganache-service.d.ts | 17 + dist/sandbox/ganache-service.d.ts.map | 1 + dist/sandbox/ganache-service.js | 43 + dist/sandbox/index.d.ts | 57 + dist/sandbox/index.d.ts.map | 1 + dist/sandbox/index.js | 173 ++ dist/src/config.d.ts | 9 + dist/src/config.d.ts.map | 1 + dist/src/config.js | 33 + dist/src/types.d.ts | 101 ++ dist/src/types.d.ts.map | 1 + dist/src/types.js | 82 + dist/src/utils.d.ts | 5 + dist/src/utils.d.ts.map | 1 + dist/src/utils.js | 23 + .../contracts/dnssec-oracle/BytesUtils.d.ts | 21 + .../dnssec-oracle/BytesUtils.d.ts.map | 1 + .../contracts/dnssec-oracle/BytesUtils.js | 2 + .../contracts/dnssec-oracle/index.d.ts | 2 + .../contracts/dnssec-oracle/index.d.ts.map | 1 + .../contracts/dnssec-oracle/index.js | 2 + .../BaseRegistrarImplementation.d.ts | 434 +++++ .../BaseRegistrarImplementation.d.ts.map | 1 + .../BaseRegistrarImplementation.js | 2 + .../contracts/ethregistrar/DummyOracle.d.ts | 30 + .../ethregistrar/DummyOracle.d.ts.map | 1 + .../contracts/ethregistrar/DummyOracle.js | 2 + .../ethregistrar/ETHRegistrarController.d.ts | 291 +++ .../ETHRegistrarController.d.ts.map | 1 + .../ethregistrar/ETHRegistrarController.js | 2 + .../ethregistrar/IBaseRegistrar.d.ts | 359 ++++ .../ethregistrar/IBaseRegistrar.d.ts.map | 1 + .../contracts/ethregistrar/IBaseRegistrar.js | 2 + .../ethregistrar/IETHRegistrarController.d.ts | 133 ++ .../IETHRegistrarController.d.ts.map | 1 + .../ethregistrar/IETHRegistrarController.js | 2 + .../contracts/ethregistrar/IPriceOracle.d.ts | 48 + .../ethregistrar/IPriceOracle.d.ts.map | 1 + .../contracts/ethregistrar/IPriceOracle.js | 2 + .../AggregatorInterface.d.ts | 26 + .../AggregatorInterface.d.ts.map | 1 + .../AggregatorInterface.js | 2 + .../StablePriceOracle.d.ts | 112 ++ .../StablePriceOracle.d.ts.map | 1 + .../StablePriceOracle.js | 2 + .../StablePriceOracle.sol/index.d.ts | 3 + .../StablePriceOracle.sol/index.d.ts.map | 1 + .../StablePriceOracle.sol/index.js | 2 + .../contracts/ethregistrar/index.d.ts | 9 + .../contracts/ethregistrar/index.d.ts.map | 1 + .../contracts/ethregistrar/index.js | 2 + .../ens-contracts/contracts/index.d.ts | 17 + .../ens-contracts/contracts/index.d.ts.map | 1 + .../ens-contracts/contracts/index.js | 2 + .../ens-contracts/contracts/registry/ENS.d.ts | 253 +++ .../contracts/registry/ENS.d.ts.map | 1 + .../ens-contracts/contracts/registry/ENS.js | 2 + .../contracts/registry/ENSRegistry.d.ts | 253 +++ .../contracts/registry/ENSRegistry.d.ts.map | 1 + .../contracts/registry/ENSRegistry.js | 2 + .../contracts/registry/index.d.ts | 3 + .../contracts/registry/index.d.ts.map | 1 + .../ens-contracts/contracts/registry/index.js | 2 + .../contracts/resolvers/IMulticallable.d.ts | 40 + .../resolvers/IMulticallable.d.ts.map | 1 + .../contracts/resolvers/IMulticallable.js | 2 + .../contracts/resolvers/Multicallable.d.ts | 48 + .../resolvers/Multicallable.d.ts.map | 1 + .../contracts/resolvers/Multicallable.js | 2 + .../contracts/resolvers/PublicResolver.d.ts | 661 +++++++ .../resolvers/PublicResolver.d.ts.map | 1 + .../contracts/resolvers/PublicResolver.js | 2 + .../contracts/resolvers/Resolver.d.ts | 624 +++++++ .../contracts/resolvers/Resolver.d.ts.map | 1 + .../contracts/resolvers/Resolver.js | 2 + .../contracts/resolvers/ResolverBase.d.ts | 55 + .../contracts/resolvers/ResolverBase.d.ts.map | 1 + .../contracts/resolvers/ResolverBase.js | 2 + .../contracts/resolvers/index.d.ts | 8 + .../contracts/resolvers/index.d.ts.map | 1 + .../contracts/resolvers/index.js | 2 + .../resolvers/profiles/ABIResolver.d.ts | 100 + .../resolvers/profiles/ABIResolver.d.ts.map | 1 + .../resolvers/profiles/ABIResolver.js | 2 + .../resolvers/profiles/AddrResolver.d.ts | 142 ++ .../resolvers/profiles/AddrResolver.d.ts.map | 1 + .../resolvers/profiles/AddrResolver.js | 2 + .../profiles/ContentHashResolver.d.ts | 88 + .../profiles/ContentHashResolver.d.ts.map | 1 + .../resolvers/profiles/ContentHashResolver.js | 2 + .../resolvers/profiles/DNSResolver.d.ts | 183 ++ .../resolvers/profiles/DNSResolver.d.ts.map | 1 + .../resolvers/profiles/DNSResolver.js | 2 + .../resolvers/profiles/IABIResolver.d.ts | 53 + .../resolvers/profiles/IABIResolver.d.ts.map | 1 + .../resolvers/profiles/IABIResolver.js | 2 + .../resolvers/profiles/IAddrResolver.d.ts | 43 + .../resolvers/profiles/IAddrResolver.d.ts.map | 1 + .../resolvers/profiles/IAddrResolver.js | 2 + .../resolvers/profiles/IAddressResolver.d.ts | 62 + .../profiles/IAddressResolver.d.ts.map | 1 + .../resolvers/profiles/IAddressResolver.js | 2 + .../profiles/IContentHashResolver.d.ts | 43 + .../profiles/IContentHashResolver.d.ts.map | 1 + .../profiles/IContentHashResolver.js | 2 + .../profiles/IDNSRecordResolver.d.ts | 87 + .../profiles/IDNSRecordResolver.d.ts.map | 1 + .../resolvers/profiles/IDNSRecordResolver.js | 2 + .../resolvers/profiles/IDNSZoneResolver.d.ts | 52 + .../profiles/IDNSZoneResolver.d.ts.map | 1 + .../resolvers/profiles/IDNSZoneResolver.js | 2 + .../resolvers/profiles/IExtendedResolver.d.ts | 31 + .../profiles/IExtendedResolver.d.ts.map | 1 + .../resolvers/profiles/IExtendedResolver.js | 2 + .../profiles/IInterfaceResolver.d.ts | 62 + .../profiles/IInterfaceResolver.d.ts.map | 1 + .../resolvers/profiles/IInterfaceResolver.js | 2 + .../resolvers/profiles/INameResolver.d.ts | 43 + .../resolvers/profiles/INameResolver.d.ts.map | 1 + .../resolvers/profiles/INameResolver.js | 2 + .../resolvers/profiles/IPubkeyResolver.d.ts | 58 + .../profiles/IPubkeyResolver.d.ts.map | 1 + .../resolvers/profiles/IPubkeyResolver.js | 2 + .../resolvers/profiles/ITextResolver.d.ts | 55 + .../resolvers/profiles/ITextResolver.d.ts.map | 1 + .../resolvers/profiles/ITextResolver.js | 2 + .../profiles/IVersionableResolver.d.ts | 43 + .../profiles/IVersionableResolver.d.ts.map | 1 + .../profiles/IVersionableResolver.js | 2 + .../resolvers/profiles/InterfaceResolver.d.ts | 196 ++ .../profiles/InterfaceResolver.d.ts.map | 1 + .../resolvers/profiles/InterfaceResolver.js | 2 + .../resolvers/profiles/NameResolver.d.ts | 88 + .../resolvers/profiles/NameResolver.d.ts.map | 1 + .../resolvers/profiles/NameResolver.js | 2 + .../resolvers/profiles/PubkeyResolver.d.ts | 105 ++ .../profiles/PubkeyResolver.d.ts.map | 1 + .../resolvers/profiles/PubkeyResolver.js | 2 + .../resolvers/profiles/TextResolver.d.ts | 102 ++ .../resolvers/profiles/TextResolver.d.ts.map | 1 + .../resolvers/profiles/TextResolver.js | 2 + .../contracts/resolvers/profiles/index.d.ts | 21 + .../resolvers/profiles/index.d.ts.map | 1 + .../contracts/resolvers/profiles/index.js | 2 + .../reverseRegistrar/IReverseRegistrar.d.ts | 90 + .../IReverseRegistrar.d.ts.map | 1 + .../reverseRegistrar/IReverseRegistrar.js | 2 + .../reverseRegistrar/ReverseClaimer.d.ts | 21 + .../reverseRegistrar/ReverseClaimer.d.ts.map | 1 + .../reverseRegistrar/ReverseClaimer.js | 2 + .../ReverseRegistrar.sol/NameResolver.d.ts | 31 + .../NameResolver.d.ts.map | 1 + .../ReverseRegistrar.sol/NameResolver.js | 2 + .../ReverseRegistrar.d.ts | 193 ++ .../ReverseRegistrar.d.ts.map | 1 + .../ReverseRegistrar.sol/ReverseRegistrar.js | 2 + .../ReverseRegistrar.sol/index.d.ts | 3 + .../ReverseRegistrar.sol/index.d.ts.map | 1 + .../ReverseRegistrar.sol/index.js | 2 + .../contracts/reverseRegistrar/index.d.ts | 5 + .../contracts/reverseRegistrar/index.d.ts.map | 1 + .../contracts/reverseRegistrar/index.js | 2 + .../contracts/root/Controllable.d.ts | 88 + .../contracts/root/Controllable.d.ts.map | 1 + .../contracts/root/Controllable.js | 2 + .../ens-contracts/contracts/root/Root.d.ts | 144 ++ .../contracts/root/Root.d.ts.map | 1 + .../ens-contracts/contracts/root/Root.js | 2 + .../ens-contracts/contracts/root/index.d.ts | 3 + .../contracts/root/index.d.ts.map | 1 + .../ens-contracts/contracts/root/index.js | 2 + .../contracts/utils/ERC20Recoverable.d.ts | 71 + .../contracts/utils/ERC20Recoverable.d.ts.map | 1 + .../contracts/utils/ERC20Recoverable.js | 2 + .../ens-contracts/contracts/utils/index.d.ts | 2 + .../contracts/utils/index.d.ts.map | 1 + .../ens-contracts/contracts/utils/index.js | 2 + .../contracts/wrapper/Controllable.d.ts | 88 + .../contracts/wrapper/Controllable.d.ts.map | 1 + .../contracts/wrapper/Controllable.js | 2 + .../contracts/wrapper/ERC1155Fuse.d.ts | 311 ++++ .../contracts/wrapper/ERC1155Fuse.d.ts.map | 1 + .../contracts/wrapper/ERC1155Fuse.js | 2 + .../contracts/wrapper/IMetadataService.d.ts | 26 + .../wrapper/IMetadataService.d.ts.map | 1 + .../contracts/wrapper/IMetadataService.js | 2 + .../contracts/wrapper/INameWrapper.d.ts | 691 +++++++ .../contracts/wrapper/INameWrapper.d.ts.map | 1 + .../contracts/wrapper/INameWrapper.js | 2 + .../wrapper/INameWrapperUpgrade.d.ts | 51 + .../wrapper/INameWrapperUpgrade.d.ts.map | 1 + .../contracts/wrapper/INameWrapperUpgrade.js | 2 + .../contracts/wrapper/NameWrapper.d.ts | 848 +++++++++ .../contracts/wrapper/NameWrapper.d.ts.map | 1 + .../contracts/wrapper/NameWrapper.js | 2 + .../contracts/wrapper/index.d.ts | 7 + .../contracts/wrapper/index.d.ts.map | 1 + .../ens-contracts/contracts/wrapper/index.js | 2 + .../@ensdomains/ens-contracts/index.d.ts | 3 + .../@ensdomains/ens-contracts/index.d.ts.map | 1 + dist/types/@ensdomains/ens-contracts/index.js | 2 + dist/types/@ensdomains/index.d.ts | 3 + dist/types/@ensdomains/index.d.ts.map | 1 + dist/types/@ensdomains/index.js | 2 + .../contracts-2.3/access/index.d.ts | 3 + .../contracts-2.3/access/index.d.ts.map | 1 + .../contracts-2.3/access/index.js | 2 + .../access/roles/MinterRole.d.ts | 64 + .../access/roles/MinterRole.d.ts.map | 1 + .../contracts-2.3/access/roles/MinterRole.js | 2 + .../access/roles/WhitelistAdminRole.d.ts | 72 + .../access/roles/WhitelistAdminRole.d.ts.map | 1 + .../access/roles/WhitelistAdminRole.js | 2 + .../access/roles/WhitelistedRole.d.ts | 124 ++ .../access/roles/WhitelistedRole.d.ts.map | 1 + .../access/roles/WhitelistedRole.js | 2 + .../contracts-2.3/access/roles/index.d.ts | 4 + .../contracts-2.3/access/roles/index.d.ts.map | 1 + .../contracts-2.3/access/roles/index.js | 2 + .../@openzeppelin/contracts-2.3/index.d.ts | 7 + .../contracts-2.3/index.d.ts.map | 1 + .../@openzeppelin/contracts-2.3/index.js | 2 + .../contracts-2.3/introspection/ERC165.d.ts | 30 + .../introspection/ERC165.d.ts.map | 1 + .../contracts-2.3/introspection/ERC165.js | 2 + .../contracts-2.3/introspection/IERC165.d.ts | 30 + .../introspection/IERC165.d.ts.map | 1 + .../contracts-2.3/introspection/IERC165.js | 2 + .../contracts-2.3/introspection/index.d.ts | 3 + .../introspection/index.d.ts.map | 1 + .../contracts-2.3/introspection/index.js | 2 + .../contracts-2.3/token/ERC721/ERC721.d.ts | 200 ++ .../token/ERC721/ERC721.d.ts.map | 1 + .../contracts-2.3/token/ERC721/ERC721.js | 2 + .../token/ERC721/ERC721Burnable.d.ts | 204 +++ .../token/ERC721/ERC721Burnable.d.ts.map | 1 + .../token/ERC721/ERC721Burnable.js | 2 + .../contracts-2.3/token/ERC721/IERC721.d.ts | 200 ++ .../token/ERC721/IERC721.d.ts.map | 1 + .../contracts-2.3/token/ERC721/IERC721.js | 2 + .../token/ERC721/IERC721Metadata.d.ts | 212 +++ .../token/ERC721/IERC721Metadata.d.ts.map | 1 + .../token/ERC721/IERC721Metadata.js | 2 + .../token/ERC721/IERC721Receiver.d.ts | 40 + .../token/ERC721/IERC721Receiver.d.ts.map | 1 + .../token/ERC721/IERC721Receiver.js | 2 + .../contracts-2.3/token/ERC721/index.d.ts | 6 + .../contracts-2.3/token/ERC721/index.d.ts.map | 1 + .../contracts-2.3/token/ERC721/index.js | 2 + .../contracts-2.3/token/index.d.ts | 3 + .../contracts-2.3/token/index.d.ts.map | 1 + .../contracts-2.3/token/index.js | 2 + .../AccessControlEnumerableUpgradeable.d.ts | 192 ++ ...ccessControlEnumerableUpgradeable.d.ts.map | 1 + .../AccessControlEnumerableUpgradeable.js | 2 + .../access/AccessControlUpgradeable.d.ts | 174 ++ .../access/AccessControlUpgradeable.d.ts.map | 1 + .../access/AccessControlUpgradeable.js | 2 + .../IAccessControlEnumerableUpgradeable.d.ts | 166 ++ ...ccessControlEnumerableUpgradeable.d.ts.map | 1 + .../IAccessControlEnumerableUpgradeable.js | 2 + .../access/IAccessControlUpgradeable.d.ts | 148 ++ .../access/IAccessControlUpgradeable.d.ts.map | 1 + .../access/IAccessControlUpgradeable.js | 2 + .../access/OwnableUpgradeable.d.ts | 69 + .../access/OwnableUpgradeable.d.ts.map | 1 + .../access/OwnableUpgradeable.js | 2 + .../contracts-upgradeable/access/index.d.ts | 6 + .../access/index.d.ts.map | 1 + .../contracts-upgradeable/access/index.js | 2 + .../contracts-upgradeable/index.d.ts | 13 + .../contracts-upgradeable/index.d.ts.map | 1 + .../contracts-upgradeable/index.js | 2 + .../interfaces/IERC1271Upgradeable.d.ts | 36 + .../interfaces/IERC1271Upgradeable.d.ts.map | 1 + .../interfaces/IERC1271Upgradeable.js | 2 + .../interfaces/index.d.ts | 2 + .../interfaces/index.d.ts.map | 1 + .../contracts-upgradeable/interfaces/index.js | 2 + .../contracts-upgradeable/proxy/index.d.ts | 3 + .../proxy/index.d.ts.map | 1 + .../contracts-upgradeable/proxy/index.js | 2 + .../proxy/utils/Initializable.d.ts | 37 + .../proxy/utils/Initializable.d.ts.map | 1 + .../proxy/utils/Initializable.js | 2 + .../proxy/utils/index.d.ts | 2 + .../proxy/utils/index.d.ts.map | 1 + .../proxy/utils/index.js | 2 + .../security/PausableUpgradeable.d.ts | 70 + .../security/PausableUpgradeable.d.ts.map | 1 + .../security/PausableUpgradeable.js | 2 + .../security/ReentrancyGuardUpgradeable.d.ts | 37 + .../ReentrancyGuardUpgradeable.d.ts.map | 1 + .../security/ReentrancyGuardUpgradeable.js | 2 + .../contracts-upgradeable/security/index.d.ts | 3 + .../security/index.d.ts.map | 1 + .../contracts-upgradeable/security/index.js | 2 + .../token/ERC1155/ERC1155Upgradeable.d.ts | 251 +++ .../token/ERC1155/ERC1155Upgradeable.d.ts.map | 1 + .../token/ERC1155/ERC1155Upgradeable.js | 2 + .../ERC1155/IERC1155ReceiverUpgradeable.d.ts | 76 + .../IERC1155ReceiverUpgradeable.d.ts.map | 1 + .../ERC1155/IERC1155ReceiverUpgradeable.js | 2 + .../token/ERC1155/IERC1155Upgradeable.d.ts | 233 +++ .../ERC1155/IERC1155Upgradeable.d.ts.map | 1 + .../token/ERC1155/IERC1155Upgradeable.js | 2 + .../ERC1155BurnableUpgradeable.d.ts | 283 +++ .../ERC1155BurnableUpgradeable.d.ts.map | 1 + .../extensions/ERC1155BurnableUpgradeable.js | 2 + .../ERC1155PausableUpgradeable.d.ts | 283 +++ .../ERC1155PausableUpgradeable.d.ts.map | 1 + .../extensions/ERC1155PausableUpgradeable.js | 2 + .../IERC1155MetadataURIUpgradeable.d.ts | 237 +++ .../IERC1155MetadataURIUpgradeable.d.ts.map | 1 + .../IERC1155MetadataURIUpgradeable.js | 2 + .../token/ERC1155/extensions/index.d.ts | 4 + .../token/ERC1155/extensions/index.d.ts.map | 1 + .../token/ERC1155/extensions/index.js | 2 + .../token/ERC1155/index.d.ts | 8 + .../token/ERC1155/index.d.ts.map | 1 + .../token/ERC1155/index.js | 2 + .../ERC1155PresetMinterPauserUpgradeable.d.ts | 517 ++++++ ...1155PresetMinterPauserUpgradeable.d.ts.map | 1 + .../ERC1155PresetMinterPauserUpgradeable.js | 2 + .../token/ERC1155/presets/index.d.ts | 2 + .../token/ERC1155/presets/index.d.ts.map | 1 + .../token/ERC1155/presets/index.js | 2 + .../token/ERC20/IERC20Upgradeable.d.ts | 130 ++ .../token/ERC20/IERC20Upgradeable.d.ts.map | 1 + .../token/ERC20/IERC20Upgradeable.js | 2 + .../token/ERC20/index.d.ts | 2 + .../token/ERC20/index.d.ts.map | 1 + .../token/ERC20/index.js | 2 + .../token/ERC721/ERC721Upgradeable.d.ts | 226 +++ .../token/ERC721/ERC721Upgradeable.d.ts.map | 1 + .../token/ERC721/ERC721Upgradeable.js | 2 + .../ERC721/IERC721ReceiverUpgradeable.d.ts | 40 + .../IERC721ReceiverUpgradeable.d.ts.map | 1 + .../ERC721/IERC721ReceiverUpgradeable.js | 2 + .../token/ERC721/IERC721Upgradeable.d.ts | 200 ++ .../token/ERC721/IERC721Upgradeable.d.ts.map | 1 + .../token/ERC721/IERC721Upgradeable.js | 2 + .../IERC721MetadataUpgradeable.d.ts | 212 +++ .../IERC721MetadataUpgradeable.d.ts.map | 1 + .../extensions/IERC721MetadataUpgradeable.js | 2 + .../token/ERC721/extensions/index.d.ts | 2 + .../token/ERC721/extensions/index.d.ts.map | 1 + .../token/ERC721/extensions/index.js | 2 + .../token/ERC721/index.d.ts | 6 + .../token/ERC721/index.d.ts.map | 1 + .../token/ERC721/index.js | 2 + .../contracts-upgradeable/token/index.d.ts | 7 + .../token/index.d.ts.map | 1 + .../contracts-upgradeable/token/index.js | 2 + .../utils/ContextUpgradeable.d.ts | 37 + .../utils/ContextUpgradeable.d.ts.map | 1 + .../utils/ContextUpgradeable.js | 2 + .../utils/MulticallUpgradeable.d.ts | 42 + .../utils/MulticallUpgradeable.d.ts.map | 1 + .../utils/MulticallUpgradeable.js | 2 + .../contracts-upgradeable/utils/index.d.ts | 5 + .../utils/index.d.ts.map | 1 + .../contracts-upgradeable/utils/index.js | 2 + .../introspection/ERC165Upgradeable.d.ts | 46 + .../introspection/ERC165Upgradeable.d.ts.map | 1 + .../utils/introspection/ERC165Upgradeable.js | 2 + .../introspection/IERC165Upgradeable.d.ts | 30 + .../introspection/IERC165Upgradeable.d.ts.map | 1 + .../utils/introspection/IERC165Upgradeable.js | 2 + .../utils/introspection/index.d.ts | 3 + .../utils/introspection/index.d.ts.map | 1 + .../utils/introspection/index.js | 2 + .../contracts/access/Ownable.d.ts | 55 + .../contracts/access/Ownable.d.ts.map | 1 + .../@openzeppelin/contracts/access/Ownable.js | 2 + .../@openzeppelin/contracts/access/index.d.ts | 2 + .../contracts/access/index.d.ts.map | 1 + .../@openzeppelin/contracts/access/index.js | 2 + dist/types/@openzeppelin/contracts/index.d.ts | 7 + .../@openzeppelin/contracts/index.d.ts.map | 1 + dist/types/@openzeppelin/contracts/index.js | 2 + .../contracts/token/ERC1155/IERC1155.d.ts | 233 +++ .../contracts/token/ERC1155/IERC1155.d.ts.map | 1 + .../contracts/token/ERC1155/IERC1155.js | 2 + .../token/ERC1155/IERC1155Receiver.d.ts | 76 + .../token/ERC1155/IERC1155Receiver.d.ts.map | 1 + .../token/ERC1155/IERC1155Receiver.js | 2 + .../extensions/IERC1155MetadataURI.d.ts | 237 +++ .../extensions/IERC1155MetadataURI.d.ts.map | 1 + .../ERC1155/extensions/IERC1155MetadataURI.js | 2 + .../token/ERC1155/extensions/index.d.ts | 2 + .../token/ERC1155/extensions/index.d.ts.map | 1 + .../token/ERC1155/extensions/index.js | 2 + .../contracts/token/ERC1155/index.d.ts | 5 + .../contracts/token/ERC1155/index.d.ts.map | 1 + .../contracts/token/ERC1155/index.js | 2 + .../contracts/token/ERC20/ERC20.d.ts | 170 ++ .../contracts/token/ERC20/ERC20.d.ts.map | 1 + .../contracts/token/ERC20/ERC20.js | 2 + .../contracts/token/ERC20/IERC20.d.ts | 130 ++ .../contracts/token/ERC20/IERC20.d.ts.map | 1 + .../contracts/token/ERC20/IERC20.js | 2 + .../ERC20/extensions/IERC20Metadata.d.ts | 142 ++ .../ERC20/extensions/IERC20Metadata.d.ts.map | 1 + .../token/ERC20/extensions/IERC20Metadata.js | 2 + .../token/ERC20/extensions/index.d.ts | 2 + .../token/ERC20/extensions/index.d.ts.map | 1 + .../contracts/token/ERC20/extensions/index.js | 2 + .../contracts/token/ERC20/index.d.ts | 5 + .../contracts/token/ERC20/index.d.ts.map | 1 + .../contracts/token/ERC20/index.js | 2 + .../contracts/token/ERC721/ERC721.d.ts | 212 +++ .../contracts/token/ERC721/ERC721.d.ts.map | 1 + .../contracts/token/ERC721/ERC721.js | 2 + .../contracts/token/ERC721/IERC721.d.ts | 200 ++ .../contracts/token/ERC721/IERC721.d.ts.map | 1 + .../contracts/token/ERC721/IERC721.js | 2 + .../token/ERC721/IERC721Receiver.d.ts | 40 + .../token/ERC721/IERC721Receiver.d.ts.map | 1 + .../contracts/token/ERC721/IERC721Receiver.js | 2 + .../ERC721/extensions/IERC721Metadata.d.ts | 212 +++ .../extensions/IERC721Metadata.d.ts.map | 1 + .../ERC721/extensions/IERC721Metadata.js | 2 + .../token/ERC721/extensions/index.d.ts | 2 + .../token/ERC721/extensions/index.d.ts.map | 1 + .../token/ERC721/extensions/index.js | 2 + .../contracts/token/ERC721/index.d.ts | 6 + .../contracts/token/ERC721/index.d.ts.map | 1 + .../contracts/token/ERC721/index.js | 2 + .../@openzeppelin/contracts/token/index.d.ts | 7 + .../contracts/token/index.d.ts.map | 1 + .../@openzeppelin/contracts/token/index.js | 2 + .../@openzeppelin/contracts/utils/index.d.ts | 3 + .../contracts/utils/index.d.ts.map | 1 + .../@openzeppelin/contracts/utils/index.js | 2 + .../contracts/utils/introspection/ERC165.d.ts | 30 + .../utils/introspection/ERC165.d.ts.map | 1 + .../contracts/utils/introspection/ERC165.js | 2 + .../utils/introspection/IERC165.d.ts | 30 + .../utils/introspection/IERC165.d.ts.map | 1 + .../contracts/utils/introspection/IERC165.js | 2 + .../contracts/utils/introspection/index.d.ts | 3 + .../utils/introspection/index.d.ts.map | 1 + .../contracts/utils/introspection/index.js | 2 + dist/types/@openzeppelin/index.d.ts | 7 + dist/types/@openzeppelin/index.d.ts.map | 1 + dist/types/@openzeppelin/index.js | 2 + dist/types/common.d.ts | 51 + dist/types/common.d.ts.map | 1 + dist/types/common.js | 2 + .../@ens/LegacyENSRegistry.sol/LegacyENS.d.ts | 159 ++ .../LegacyENSRegistry.sol/LegacyENS.d.ts.map | 1 + .../@ens/LegacyENSRegistry.sol/LegacyENS.js | 2 + .../LegacyENSRegistry.d.ts | 159 ++ .../LegacyENSRegistry.d.ts.map | 1 + .../LegacyENSRegistry.js | 2 + .../@ens/LegacyENSRegistry.sol/index.d.ts | 3 + .../@ens/LegacyENSRegistry.sol/index.d.ts.map | 1 + .../@ens/LegacyENSRegistry.sol/index.js | 2 + .../BaseRegistrar.d.ts | 410 +++++ .../BaseRegistrar.d.ts.map | 1 + .../BaseRegistrar.js | 2 + .../LegacyETHRegistrarController.sol/ENS.d.ts | 253 +++ .../ENS.d.ts.map | 1 + .../LegacyETHRegistrarController.sol/ENS.js | 2 + .../IERC165.d.ts | 30 + .../IERC165.d.ts.map | 1 + .../IERC165.js | 2 + .../IERC721.d.ts | 200 ++ .../IERC721.d.ts.map | 1 + .../IERC721.js | 2 + .../LegacyETHRegistrarController.d.ts | 303 ++++ .../LegacyETHRegistrarController.d.ts.map | 1 + .../LegacyETHRegistrarController.js | 2 + .../Ownable.d.ts | 59 + .../Ownable.d.ts.map | 1 + .../Ownable.js | 2 + .../PriceOracle.d.ts | 38 + .../PriceOracle.d.ts.map | 1 + .../PriceOracle.js | 2 + .../Resolver.d.ts | 415 +++++ .../Resolver.d.ts.map | 1 + .../Resolver.js | 2 + .../index.d.ts | 9 + .../index.d.ts.map | 1 + .../LegacyETHRegistrarController.sol/index.js | 2 + .../contracts/@ens/dnssec/DNSRegistrar.d.ts | 170 ++ .../@ens/dnssec/DNSRegistrar.d.ts.map | 1 + .../contracts/@ens/dnssec/DNSRegistrar.js | 2 + dist/types/contracts/@ens/dnssec/DNSSEC.d.ts | 189 ++ .../contracts/@ens/dnssec/DNSSEC.d.ts.map | 1 + dist/types/contracts/@ens/dnssec/DNSSEC.js | 2 + .../dnssec/DNSSECImpl.sol/DNSSECImpl.d.ts | 278 +++ .../dnssec/DNSSECImpl.sol/DNSSECImpl.d.ts.map | 1 + .../@ens/dnssec/DNSSECImpl.sol/DNSSECImpl.js | 2 + .../@ens/dnssec/DNSSECImpl.sol/Owned.d.ts | 30 + .../@ens/dnssec/DNSSECImpl.sol/Owned.d.ts.map | 1 + .../@ens/dnssec/DNSSECImpl.sol/Owned.js | 2 + .../@ens/dnssec/DNSSECImpl.sol/index.d.ts | 3 + .../@ens/dnssec/DNSSECImpl.sol/index.d.ts.map | 1 + .../@ens/dnssec/DNSSECImpl.sol/index.js | 2 + .../@ens/dnssec/TLDPublicSuffixList.d.ts | 26 + .../@ens/dnssec/TLDPublicSuffixList.d.ts.map | 1 + .../@ens/dnssec/TLDPublicSuffixList.js | 2 + .../dnssec/algorithms/DummyAlgorithm.d.ts | 38 + .../dnssec/algorithms/DummyAlgorithm.d.ts.map | 1 + .../@ens/dnssec/algorithms/DummyAlgorithm.js | 2 + .../dnssec/algorithms/RSASHA256Algorithm.d.ts | 38 + .../algorithms/RSASHA256Algorithm.d.ts.map | 1 + .../dnssec/algorithms/RSASHA256Algorithm.js | 2 + .../@ens/dnssec/algorithms/index.d.ts | 3 + .../@ens/dnssec/algorithms/index.d.ts.map | 1 + .../contracts/@ens/dnssec/algorithms/index.js | 2 + .../@ens/dnssec/digests/SHA1Digest.d.ts | 31 + .../@ens/dnssec/digests/SHA1Digest.d.ts.map | 1 + .../@ens/dnssec/digests/SHA1Digest.js | 2 + .../@ens/dnssec/digests/SHA1NSEC3Digest.d.ts | 38 + .../dnssec/digests/SHA1NSEC3Digest.d.ts.map | 1 + .../@ens/dnssec/digests/SHA1NSEC3Digest.js | 2 + .../@ens/dnssec/digests/SHA256Digest.d.ts | 31 + .../@ens/dnssec/digests/SHA256Digest.d.ts.map | 1 + .../@ens/dnssec/digests/SHA256Digest.js | 2 + .../contracts/@ens/dnssec/digests/index.d.ts | 4 + .../@ens/dnssec/digests/index.d.ts.map | 1 + .../contracts/@ens/dnssec/digests/index.js | 2 + dist/types/contracts/@ens/dnssec/index.d.ts | 14 + .../contracts/@ens/dnssec/index.d.ts.map | 1 + dist/types/contracts/@ens/dnssec/index.js | 2 + .../@ens/dnssec/interfaces/Algorithm.d.ts | 38 + .../@ens/dnssec/interfaces/Algorithm.d.ts.map | 1 + .../@ens/dnssec/interfaces/Algorithm.js | 2 + .../@ens/dnssec/interfaces/Digest.d.ts | 31 + .../@ens/dnssec/interfaces/Digest.d.ts.map | 1 + .../@ens/dnssec/interfaces/Digest.js | 2 + .../@ens/dnssec/interfaces/IDNSRegistrar.d.ts | 88 + .../dnssec/interfaces/IDNSRegistrar.d.ts.map | 1 + .../@ens/dnssec/interfaces/IDNSRegistrar.js | 2 + .../@ens/dnssec/interfaces/NSEC3Digest.d.ts | 38 + .../dnssec/interfaces/NSEC3Digest.d.ts.map | 1 + .../@ens/dnssec/interfaces/NSEC3Digest.js | 2 + .../dnssec/interfaces/PublicSuffixList.d.ts | 26 + .../interfaces/PublicSuffixList.d.ts.map | 1 + .../dnssec/interfaces/PublicSuffixList.js | 2 + .../@ens/dnssec/interfaces/index.d.ts | 6 + .../@ens/dnssec/interfaces/index.d.ts.map | 1 + .../contracts/@ens/dnssec/interfaces/index.js | 2 + .../contracts/@ens/dnssec/libraries/SHA1.d.ts | 37 + .../@ens/dnssec/libraries/SHA1.d.ts.map | 1 + .../contracts/@ens/dnssec/libraries/SHA1.js | 2 + .../@ens/dnssec/libraries/index.d.ts | 2 + .../@ens/dnssec/libraries/index.d.ts.map | 1 + .../contracts/@ens/dnssec/libraries/index.js | 2 + dist/types/contracts/@ens/index.d.ts | 7 + dist/types/contracts/@ens/index.d.ts.map | 1 + dist/types/contracts/@ens/index.js | 2 + .../contracts/@maticnetwork/IChildToken.d.ts | 36 + .../@maticnetwork/IChildToken.d.ts.map | 1 + .../contracts/@maticnetwork/IChildToken.js | 2 + .../@maticnetwork/IMintableERC721.d.ts | 234 +++ .../@maticnetwork/IMintableERC721.d.ts.map | 1 + .../@maticnetwork/IMintableERC721.js | 2 + .../@maticnetwork/IRootChainManager.d.ts | 150 ++ .../@maticnetwork/IRootChainManager.d.ts.map | 1 + .../@maticnetwork/IRootChainManager.js | 2 + .../RootChainManagerStorage.d.ts | 30 + .../RootChainManagerStorage.d.ts.map | 1 + .../@maticnetwork/RootChainManagerStorage.js | 2 + dist/types/contracts/@maticnetwork/index.d.ts | 7 + .../contracts/@maticnetwork/index.d.ts.map | 1 + dist/types/contracts/@maticnetwork/index.js | 2 + .../DummyStateSender.d.ts | 58 + .../DummyStateSender.d.ts.map | 1 + .../DummyStateSender.sol/DummyStateSender.js | 2 + .../DummyStateSender.sol/IStateSender.d.ts | 36 + .../IStateSender.d.ts.map | 1 + .../DummyStateSender.sol/IStateSender.js | 2 + .../DummyStateSender.sol/index.d.ts | 3 + .../DummyStateSender.sol/index.d.ts.map | 1 + .../pos-portal/DummyStateSender.sol/index.js | 2 + .../AccessControl.d.ts | 170 ++ .../AccessControl.d.ts.map | 1 + .../AccessControl.js | 2 + .../AccessControlMixin.d.ts | 170 ++ .../AccessControlMixin.d.ts.map | 1 + .../AccessControlMixin.js | 2 + .../MintableERC721Predicate.sol/IERC165.d.ts | 30 + .../IERC165.d.ts.map | 1 + .../MintableERC721Predicate.sol/IERC165.js | 2 + .../MintableERC721Predicate.sol/IERC721.d.ts | 200 ++ .../IERC721.d.ts.map | 1 + .../MintableERC721Predicate.sol/IERC721.js | 2 + .../IERC721Receiver.d.ts | 40 + .../IERC721Receiver.d.ts.map | 1 + .../IERC721Receiver.js | 2 + .../IMintableERC721.d.ts | 234 +++ .../IMintableERC721.d.ts.map | 1 + .../IMintableERC721.js | 2 + .../ITokenPredicate.d.ts | 56 + .../ITokenPredicate.d.ts.map | 1 + .../ITokenPredicate.js | 2 + .../MintableERC721Predicate.d.ts | 304 ++++ .../MintableERC721Predicate.d.ts.map | 1 + .../MintableERC721Predicate.js | 2 + .../MintableERC721Predicate.sol/index.d.ts | 9 + .../index.d.ts.map | 1 + .../MintableERC721Predicate.sol/index.js | 2 + .../RootChainManager.sol/AccessControl.d.ts | 170 ++ .../AccessControl.d.ts.map | 1 + .../RootChainManager.sol/AccessControl.js | 2 + .../AccessControlMixin.d.ts | 170 ++ .../AccessControlMixin.d.ts.map | 1 + .../AccessControlMixin.js | 2 + .../RootChainManager.sol/EIP712Base.d.ts | 34 + .../RootChainManager.sol/EIP712Base.d.ts.map | 1 + .../RootChainManager.sol/EIP712Base.js | 2 + .../ICheckpointManager.d.ts | 58 + .../ICheckpointManager.d.ts.map | 1 + .../ICheckpointManager.js | 2 + .../IRootChainManager.d.ts | 150 ++ .../IRootChainManager.d.ts.map | 1 + .../RootChainManager.sol/IRootChainManager.js | 2 + .../RootChainManager.sol/IStateSender.d.ts | 36 + .../IStateSender.d.ts.map | 1 + .../RootChainManager.sol/IStateSender.js | 2 + .../RootChainManager.sol/ITokenPredicate.d.ts | 56 + .../ITokenPredicate.d.ts.map | 1 + .../RootChainManager.sol/ITokenPredicate.js | 2 + .../NativeMetaTransaction.d.ts | 84 + .../NativeMetaTransaction.d.ts.map | 1 + .../NativeMetaTransaction.js | 2 + .../RootChainManager.d.ts | 448 +++++ .../RootChainManager.d.ts.map | 1 + .../RootChainManager.sol/RootChainManager.js | 2 + .../RootChainManagerStorage.d.ts | 46 + .../RootChainManagerStorage.d.ts.map | 1 + .../RootChainManagerStorage.js | 2 + .../RootChainManager.sol/index.d.ts | 11 + .../RootChainManager.sol/index.d.ts.map | 1 + .../pos-portal/RootChainManager.sol/index.js | 2 + .../ICheckpointManager.d.ts | 58 + .../ICheckpointManager.d.ts.map | 1 + .../ICheckpointManager.js | 2 + .../IRootChain.d.ts | 56 + .../IRootChain.d.ts.map | 1 + .../SimpleCheckpointManager.sol/IRootChain.js | 2 + .../SimpleCheckpointManager.d.ts | 113 ++ .../SimpleCheckpointManager.d.ts.map | 1 + .../SimpleCheckpointManager.js | 2 + .../SimpleCheckpointManager.sol/index.d.ts | 4 + .../index.d.ts.map | 1 + .../SimpleCheckpointManager.sol/index.js | 2 + .../@maticnetwork/pos-portal/index.d.ts | 9 + .../@maticnetwork/pos-portal/index.d.ts.map | 1 + .../@maticnetwork/pos-portal/index.js | 2 + dist/types/contracts/ChildRegistry.d.ts | 244 +++ dist/types/contracts/ChildRegistry.d.ts.map | 1 + dist/types/contracts/ChildRegistry.js | 2 + dist/types/contracts/DotCoinBurner.d.ts | 47 + dist/types/contracts/DotCoinBurner.d.ts.map | 1 + dist/types/contracts/DotCoinBurner.js | 2 + dist/types/contracts/IAddressReader.d.ts | 63 + dist/types/contracts/IAddressReader.d.ts.map | 1 + dist/types/contracts/IAddressReader.js | 2 + dist/types/contracts/IDataReader.d.ts | 158 ++ dist/types/contracts/IDataReader.d.ts.map | 1 + dist/types/contracts/IDataReader.js | 2 + dist/types/contracts/IERC1967.d.ts | 52 + dist/types/contracts/IERC1967.d.ts.map | 1 + dist/types/contracts/IERC1967.js | 2 + dist/types/contracts/IMintingManager.d.ts | 357 ++++ dist/types/contracts/IMintingManager.d.ts.map | 1 + dist/types/contracts/IMintingManager.js | 2 + dist/types/contracts/IRecordReader.d.ts | 90 + dist/types/contracts/IRecordReader.d.ts.map | 1 + dist/types/contracts/IRecordReader.js | 2 + dist/types/contracts/IRecordStorage.d.ts | 240 +++ dist/types/contracts/IRecordStorage.d.ts.map | 1 + dist/types/contracts/IRecordStorage.js | 2 + dist/types/contracts/IRegistryReader.d.ts | 86 + dist/types/contracts/IRegistryReader.d.ts.map | 1 + dist/types/contracts/IRegistryReader.js | 2 + dist/types/contracts/IReverseRegistry.d.ts | 69 + .../types/contracts/IReverseRegistry.d.ts.map | 1 + dist/types/contracts/IReverseRegistry.js | 2 + dist/types/contracts/IRootRegistry.d.ts | 260 +++ dist/types/contracts/IRootRegistry.d.ts.map | 1 + dist/types/contracts/IRootRegistry.js | 2 + dist/types/contracts/IUNSRegistry.d.ts | 784 ++++++++ dist/types/contracts/IUNSRegistry.d.ts.map | 1 + dist/types/contracts/IUNSRegistry.js | 2 + dist/types/contracts/KeyStorage.d.ts | 34 + dist/types/contracts/KeyStorage.d.ts.map | 1 + dist/types/contracts/KeyStorage.js | 2 + dist/types/contracts/MintingManager.d.ts | 761 ++++++++ dist/types/contracts/MintingManager.d.ts.map | 1 + dist/types/contracts/MintingManager.js | 2 + dist/types/contracts/ProxyReader.d.ts | 490 +++++ dist/types/contracts/ProxyReader.d.ts.map | 1 + dist/types/contracts/ProxyReader.js | 2 + dist/types/contracts/RecordStorage.d.ts | 252 +++ dist/types/contracts/RecordStorage.d.ts.map | 1 + dist/types/contracts/RecordStorage.js | 2 + dist/types/contracts/RootRegistry.d.ts | 286 +++ dist/types/contracts/RootRegistry.d.ts.map | 1 + dist/types/contracts/RootRegistry.js | 2 + dist/types/contracts/UNSOperator.d.ts | 81 + dist/types/contracts/UNSOperator.d.ts.map | 1 + dist/types/contracts/UNSOperator.js | 2 + dist/types/contracts/UNSRegistry.d.ts | 907 ++++++++++ dist/types/contracts/UNSRegistry.d.ts.map | 1 + dist/types/contracts/UNSRegistry.js | 2 + dist/types/contracts/cns/ICNSRegistry.d.ts | 248 +++ .../types/contracts/cns/ICNSRegistry.d.ts.map | 1 + dist/types/contracts/cns/ICNSRegistry.js | 2 + .../contracts/cns/IMintingController.d.ts | 116 ++ .../contracts/cns/IMintingController.d.ts.map | 1 + .../types/contracts/cns/IMintingController.js | 2 + dist/types/contracts/cns/IResolver.d.ts | 122 ++ dist/types/contracts/cns/IResolver.d.ts.map | 1 + dist/types/contracts/cns/IResolver.js | 2 + .../contracts/cns/IURIPrefixController.d.ts | 30 + .../cns/IURIPrefixController.d.ts.map | 1 + .../contracts/cns/IURIPrefixController.js | 2 + dist/types/contracts/cns/index.d.ts | 5 + dist/types/contracts/cns/index.d.ts.map | 1 + dist/types/contracts/cns/index.js | 2 + dist/types/contracts/custody/ENSCustody.d.ts | 549 ++++++ .../contracts/custody/ENSCustody.d.ts.map | 1 + dist/types/contracts/custody/ENSCustody.js | 2 + dist/types/contracts/custody/IENSCustody.d.ts | 219 +++ .../contracts/custody/IENSCustody.d.ts.map | 1 + dist/types/contracts/custody/IENSCustody.js | 2 + .../contracts/custody/ZilliqaRecover.d.ts | 307 ++++ .../contracts/custody/ZilliqaRecover.d.ts.map | 1 + .../types/contracts/custody/ZilliqaRecover.js | 2 + dist/types/contracts/custody/index.d.ts | 4 + dist/types/contracts/custody/index.d.ts.map | 1 + dist/types/contracts/custody/index.js | 2 + .../contracts/history/IUNSRegistryV07.d.ts | 733 ++++++++ .../history/IUNSRegistryV07.d.ts.map | 1 + .../contracts/history/IUNSRegistryV07.js | 2 + .../contracts/history/ProxyReaderV04.d.ts | 344 ++++ .../contracts/history/ProxyReaderV04.d.ts.map | 1 + .../types/contracts/history/ProxyReaderV04.js | 2 + .../contracts/history/UNSRegistryV07.d.ts | 852 +++++++++ .../contracts/history/UNSRegistryV07.d.ts.map | 1 + .../types/contracts/history/UNSRegistryV07.js | 2 + dist/types/contracts/history/index.d.ts | 4 + dist/types/contracts/history/index.d.ts.map | 1 + dist/types/contracts/history/index.js | 2 + dist/types/contracts/index.d.ts | 38 + dist/types/contracts/index.d.ts.map | 1 + dist/types/contracts/index.js | 2 + .../types/contracts/metatx/BaseForwarder.d.ts | 73 + .../contracts/metatx/BaseForwarder.d.ts.map | 1 + dist/types/contracts/metatx/BaseForwarder.js | 2 + .../metatx/BaseRoutingForwarder.d.ts | 73 + .../metatx/BaseRoutingForwarder.d.ts.map | 1 + .../contracts/metatx/BaseRoutingForwarder.js | 2 + .../metatx/CNSRegistryForwarder.d.ts | 73 + .../metatx/CNSRegistryForwarder.d.ts.map | 1 + .../contracts/metatx/CNSRegistryForwarder.js | 2 + .../contracts/metatx/ERC2771Context.d.ts | 46 + .../contracts/metatx/ERC2771Context.d.ts.map | 1 + dist/types/contracts/metatx/ERC2771Context.js | 2 + .../metatx/ERC2771RegistryContext.d.ts | 46 + .../metatx/ERC2771RegistryContext.d.ts.map | 1 + .../metatx/ERC2771RegistryContext.js | 2 + dist/types/contracts/metatx/Forwarder.d.ts | 89 + .../types/contracts/metatx/Forwarder.d.ts.map | 1 + dist/types/contracts/metatx/Forwarder.js | 2 + dist/types/contracts/metatx/IForwarder.d.ts | 73 + .../contracts/metatx/IForwarder.d.ts.map | 1 + dist/types/contracts/metatx/IForwarder.js | 2 + .../metatx/MintingManagerForwarder.d.ts | 73 + .../metatx/MintingManagerForwarder.d.ts.map | 1 + .../metatx/MintingManagerForwarder.js | 2 + .../contracts/metatx/ResolverForwarder.d.ts | 73 + .../metatx/ResolverForwarder.d.ts.map | 1 + .../contracts/metatx/ResolverForwarder.js | 2 + .../metatx/UNSRegistryForwarder.d.ts | 89 + .../metatx/UNSRegistryForwarder.d.ts.map | 1 + .../contracts/metatx/UNSRegistryForwarder.js | 2 + dist/types/contracts/metatx/index.d.ts | 11 + dist/types/contracts/metatx/index.d.ts.map | 1 + dist/types/contracts/metatx/index.js | 2 + .../contracts/mocks/BaseForwarderMock.d.ts | 89 + .../mocks/BaseForwarderMock.d.ts.map | 1 + .../contracts/mocks/BaseForwarderMock.js | 2 + .../mocks/BaseRoutingForwarderMock.d.ts | 131 ++ .../mocks/BaseRoutingForwarderMock.d.ts.map | 1 + .../mocks/BaseRoutingForwarderMock.js | 2 + dist/types/contracts/mocks/ERC1155Mock.d.ts | 517 ++++++ .../contracts/mocks/ERC1155Mock.d.ts.map | 1 + dist/types/contracts/mocks/ERC1155Mock.js | 2 + dist/types/contracts/mocks/ERC20Mock.d.ts | 184 ++ dist/types/contracts/mocks/ERC20Mock.d.ts.map | 1 + dist/types/contracts/mocks/ERC20Mock.js | 2 + .../contracts/mocks/ERC20UnsafeMock.d.ts | 184 ++ .../contracts/mocks/ERC20UnsafeMock.d.ts.map | 1 + dist/types/contracts/mocks/ERC20UnsafeMock.js | 2 + .../contracts/mocks/ERC2771ContextMock.d.ts | 70 + .../mocks/ERC2771ContextMock.d.ts.map | 1 + .../contracts/mocks/ERC2771ContextMock.js | 2 + .../mocks/ERC2771RegistryContextMock.d.ts | 70 + .../mocks/ERC2771RegistryContextMock.d.ts.map | 1 + .../mocks/ERC2771RegistryContextMock.js | 2 + dist/types/contracts/mocks/ERC721Mock.d.ts | 226 +++ .../types/contracts/mocks/ERC721Mock.d.ts.map | 1 + dist/types/contracts/mocks/ERC721Mock.js | 2 + .../contracts/mocks/ERC721ReceiverMock.d.ts | 40 + .../mocks/ERC721ReceiverMock.d.ts.map | 1 + .../contracts/mocks/ERC721ReceiverMock.js | 2 + .../types/contracts/mocks/MinterRoleMock.d.ts | 261 +++ .../contracts/mocks/MinterRoleMock.d.ts.map | 1 + dist/types/contracts/mocks/MinterRoleMock.js | 2 + .../contracts/mocks/MintingManagerMock.d.ts | 769 ++++++++ .../mocks/MintingManagerMock.d.ts.map | 1 + .../contracts/mocks/MintingManagerMock.js | 2 + .../mocks/UNSRegistryForwarderMock.d.ts | 93 + .../mocks/UNSRegistryForwarderMock.d.ts.map | 1 + .../mocks/UNSRegistryForwarderMock.js | 2 + .../contracts/mocks/UNSRegistryMock.d.ts | 919 ++++++++++ .../contracts/mocks/UNSRegistryMock.d.ts.map | 1 + dist/types/contracts/mocks/UNSRegistryMock.js | 2 + dist/types/contracts/mocks/index.d.ts | 14 + dist/types/contracts/mocks/index.d.ts.map | 1 + dist/types/contracts/mocks/index.js | 2 + dist/types/contracts/roles/MinterRole.d.ts | 253 +++ .../types/contracts/roles/MinterRole.d.ts.map | 1 + dist/types/contracts/roles/MinterRole.js | 2 + dist/types/contracts/roles/index.d.ts | 2 + dist/types/contracts/roles/index.d.ts.map | 1 + dist/types/contracts/roles/index.js | 2 + dist/types/contracts/utils/Blocklist.d.ts | 84 + dist/types/contracts/utils/Blocklist.d.ts.map | 1 + dist/types/contracts/utils/Blocklist.js | 2 + .../contracts/utils/ERC1271SimpleWallet.d.ts | 36 + .../utils/ERC1271SimpleWallet.d.ts.map | 1 + .../contracts/utils/ERC1271SimpleWallet.js | 2 + dist/types/contracts/utils/MultiSend.d.ts | 21 + dist/types/contracts/utils/MultiSend.d.ts.map | 1 + dist/types/contracts/utils/MultiSend.js | 2 + dist/types/contracts/utils/Ownable.d.ts | 69 + dist/types/contracts/utils/Ownable.d.ts.map | 1 + dist/types/contracts/utils/Ownable.js | 2 + dist/types/contracts/utils/Pausable.d.ts | 70 + dist/types/contracts/utils/Pausable.d.ts.map | 1 + dist/types/contracts/utils/Pausable.js | 2 + dist/types/contracts/utils/index.d.ts | 6 + dist/types/contracts/utils/index.d.ts.map | 1 + dist/types/contracts/utils/index.js | 2 + .../dot-crypto/contracts/CNSRegistry.d.ts | 596 ++++++ .../dot-crypto/contracts/CNSRegistry.d.ts.map | 1 + .../types/dot-crypto/contracts/CNSRegistry.js | 2 + .../dot-crypto/contracts/ICNSRegistry.d.ts | 506 ++++++ .../contracts/ICNSRegistry.d.ts.map | 1 + .../dot-crypto/contracts/ICNSRegistry.js | 2 + .../dot-crypto/contracts/IRegistryReader.d.ts | 100 + .../contracts/IRegistryReader.d.ts.map | 1 + .../dot-crypto/contracts/IRegistryReader.js | 2 + .../types/dot-crypto/contracts/IResolver.d.ts | 90 + .../dot-crypto/contracts/IResolver.d.ts.map | 1 + dist/types/dot-crypto/contracts/IResolver.js | 2 + .../dot-crypto/contracts/IResolverReader.d.ts | 98 + .../contracts/IResolverReader.d.ts.map | 1 + .../dot-crypto/contracts/IResolverReader.js | 2 + dist/types/dot-crypto/contracts/Resolver.d.ts | 312 ++++ .../dot-crypto/contracts/Resolver.d.ts.map | 1 + dist/types/dot-crypto/contracts/Resolver.js | 2 + .../controllers/DomainZoneController.d.ts | 214 +++ .../controllers/DomainZoneController.d.ts.map | 1 + .../controllers/DomainZoneController.js | 2 + .../controllers/IMintingController.d.ts | 66 + .../controllers/IMintingController.d.ts.map | 1 + .../controllers/IMintingController.js | 2 + .../controllers/ISignatureController.d.ts | 215 +++ .../controllers/ISignatureController.d.ts.map | 1 + .../controllers/ISignatureController.js | 2 + .../controllers/IURIPrefixController.d.ts | 30 + .../controllers/IURIPrefixController.d.ts.map | 1 + .../controllers/IURIPrefixController.js | 2 + .../controllers/MintingController.d.ts | 162 ++ .../controllers/MintingController.d.ts.map | 1 + .../controllers/MintingController.js | 2 + .../controllers/SignatureController.d.ts | 257 +++ .../controllers/SignatureController.d.ts.map | 1 + .../controllers/SignatureController.js | 2 + .../controllers/URIPrefixController.d.ts | 136 ++ .../controllers/URIPrefixController.d.ts.map | 1 + .../controllers/URIPrefixController.js | 2 + .../contracts/controllers/index.d.ts | 8 + .../contracts/controllers/index.d.ts.map | 1 + .../dot-crypto/contracts/controllers/index.js | 2 + dist/types/dot-crypto/contracts/index.d.ts | 11 + .../types/dot-crypto/contracts/index.d.ts.map | 1 + dist/types/dot-crypto/contracts/index.js | 2 + .../contracts/util/BulkWhitelistedRole.d.ts | 140 ++ .../util/BulkWhitelistedRole.d.ts.map | 1 + .../contracts/util/BulkWhitelistedRole.js | 2 + .../contracts/util/ControllerRole.d.ts | 38 + .../contracts/util/ControllerRole.d.ts.map | 1 + .../contracts/util/ControllerRole.js | 2 + .../dot-crypto/contracts/util/FreeMinter.d.ts | 66 + .../contracts/util/FreeMinter.d.ts.map | 1 + .../dot-crypto/contracts/util/FreeMinter.js | 2 + .../contracts/util/SignatureUtil.d.ts | 30 + .../contracts/util/SignatureUtil.d.ts.map | 1 + .../contracts/util/SignatureUtil.js | 2 + .../dot-crypto/contracts/util/index.d.ts | 5 + .../dot-crypto/contracts/util/index.d.ts.map | 1 + dist/types/dot-crypto/contracts/util/index.js | 2 + dist/types/dot-crypto/index.d.ts | 3 + dist/types/dot-crypto/index.d.ts.map | 1 + dist/types/dot-crypto/index.js | 2 + .../dnssec-oracle/BytesUtils__factory.d.ts | 35 + .../BytesUtils__factory.d.ts.map | 1 + .../dnssec-oracle/BytesUtils__factory.js | 52 + .../contracts/dnssec-oracle/index.d.ts | 2 + .../contracts/dnssec-oracle/index.d.ts.map | 1 + .../contracts/dnssec-oracle/index.js | 5 + .../BaseRegistrarImplementation__factory.d.ts | 583 ++++++ ...eRegistrarImplementation__factory.d.ts.map | 1 + .../BaseRegistrarImplementation__factory.js | 764 ++++++++ .../ethregistrar/DummyOracle__factory.d.ts | 51 + .../DummyOracle__factory.d.ts.map | 1 + .../ethregistrar/DummyOracle__factory.js | 73 + .../ETHRegistrarController__factory.d.ts | 483 +++++ .../ETHRegistrarController__factory.d.ts.map | 1 + .../ETHRegistrarController__factory.js | 631 +++++++ .../ethregistrar/IBaseRegistrar__factory.d.ts | 415 +++++ .../IBaseRegistrar__factory.d.ts.map | 1 + .../ethregistrar/IBaseRegistrar__factory.js | 544 ++++++ .../IETHRegistrarController__factory.d.ts | 153 ++ .../IETHRegistrarController__factory.d.ts.map | 1 + .../IETHRegistrarController__factory.js | 204 +++ .../ethregistrar/IPriceOracle__factory.d.ts | 39 + .../IPriceOracle__factory.d.ts.map | 1 + .../ethregistrar/IPriceOracle__factory.js | 57 + .../AggregatorInterface__factory.d.ts | 18 + .../AggregatorInterface__factory.d.ts.map | 1 + .../AggregatorInterface__factory.js | 29 + .../StablePriceOracle__factory.d.ts | 172 ++ .../StablePriceOracle__factory.d.ts.map | 1 + .../StablePriceOracle__factory.js | 232 +++ .../StablePriceOracle.sol/index.d.ts | 3 + .../StablePriceOracle.sol/index.d.ts.map | 1 + .../StablePriceOracle.sol/index.js | 7 + .../contracts/ethregistrar/index.d.ts | 8 + .../contracts/ethregistrar/index.d.ts.map | 1 + .../contracts/ethregistrar/index.js | 39 + .../ens-contracts/contracts/index.d.ts | 9 + .../ens-contracts/contracts/index.d.ts.map | 1 + .../ens-contracts/contracts/index.js | 34 + .../registry/ENSRegistry__factory.d.ts | 312 ++++ .../registry/ENSRegistry__factory.d.ts.map | 1 + .../registry/ENSRegistry__factory.js | 410 +++++ .../contracts/registry/ENS__factory.d.ts | 293 +++ .../contracts/registry/ENS__factory.d.ts.map | 1 + .../contracts/registry/ENS__factory.js | 385 ++++ .../contracts/registry/index.d.ts | 3 + .../contracts/registry/index.d.ts.map | 1 + .../ens-contracts/contracts/registry/index.js | 7 + .../resolvers/IMulticallable__factory.d.ts | 40 + .../IMulticallable__factory.d.ts.map | 1 + .../resolvers/IMulticallable__factory.js | 59 + .../resolvers/Multicallable__factory.d.ts | 54 + .../resolvers/Multicallable__factory.d.ts.map | 1 + .../resolvers/Multicallable__factory.js | 78 + .../resolvers/PublicResolver__factory.d.ts | 805 +++++++++ .../PublicResolver__factory.d.ts.map | 1 + .../resolvers/PublicResolver__factory.js | 1047 +++++++++++ .../resolvers/ResolverBase__factory.d.ts | 61 + .../resolvers/ResolverBase__factory.d.ts.map | 1 + .../resolvers/ResolverBase__factory.js | 86 + .../resolvers/Resolver__factory.d.ts | 735 ++++++++ .../resolvers/Resolver__factory.d.ts.map | 1 + .../contracts/resolvers/Resolver__factory.js | 957 ++++++++++ .../contracts/resolvers/index.d.ts | 7 + .../contracts/resolvers/index.d.ts.map | 1 + .../contracts/resolvers/index.js | 37 + .../profiles/ABIResolver__factory.d.ts | 116 ++ .../profiles/ABIResolver__factory.d.ts.map | 1 + .../profiles/ABIResolver__factory.js | 157 ++ .../profiles/AddrResolver__factory.d.ts | 160 ++ .../profiles/AddrResolver__factory.d.ts.map | 1 + .../profiles/AddrResolver__factory.js | 214 +++ .../ContentHashResolver__factory.d.ts | 104 ++ .../ContentHashResolver__factory.d.ts.map | 1 + .../profiles/ContentHashResolver__factory.js | 142 ++ .../profiles/DNSResolver__factory.d.ts | 208 +++ .../profiles/DNSResolver__factory.d.ts.map | 1 + .../profiles/DNSResolver__factory.js | 275 +++ .../profiles/IABIResolver__factory.d.ts | 45 + .../profiles/IABIResolver__factory.d.ts.map | 1 + .../profiles/IABIResolver__factory.js | 64 + .../profiles/IAddrResolver__factory.d.ts | 37 + .../profiles/IAddrResolver__factory.d.ts.map | 1 + .../profiles/IAddrResolver__factory.js | 54 + .../profiles/IAddressResolver__factory.d.ts | 46 + .../IAddressResolver__factory.d.ts.map | 1 + .../profiles/IAddressResolver__factory.js | 65 + .../IContentHashResolver__factory.d.ts | 37 + .../IContentHashResolver__factory.d.ts.map | 1 + .../profiles/IContentHashResolver__factory.js | 54 + .../profiles/IDNSRecordResolver__factory.d.ts | 75 + .../IDNSRecordResolver__factory.d.ts.map | 1 + .../profiles/IDNSRecordResolver__factory.js | 101 ++ .../profiles/IDNSZoneResolver__factory.d.ts | 42 + .../IDNSZoneResolver__factory.d.ts.map | 1 + .../profiles/IDNSZoneResolver__factory.js | 60 + .../profiles/IExtendedResolver__factory.d.ts | 26 + .../IExtendedResolver__factory.d.ts.map | 1 + .../profiles/IExtendedResolver__factory.js | 40 + .../profiles/IInterfaceResolver__factory.d.ts | 46 + .../IInterfaceResolver__factory.d.ts.map | 1 + .../profiles/IInterfaceResolver__factory.js | 65 + .../profiles/INameResolver__factory.d.ts | 37 + .../profiles/INameResolver__factory.d.ts.map | 1 + .../profiles/INameResolver__factory.js | 54 + .../profiles/IPubkeyResolver__factory.d.ts | 46 + .../IPubkeyResolver__factory.d.ts.map | 1 + .../profiles/IPubkeyResolver__factory.js | 65 + .../profiles/ITextResolver__factory.d.ts | 51 + .../profiles/ITextResolver__factory.d.ts.map | 1 + .../profiles/ITextResolver__factory.js | 71 + .../IVersionableResolver__factory.d.ts | 37 + .../IVersionableResolver__factory.d.ts.map | 1 + .../profiles/IVersionableResolver__factory.js | 54 + .../profiles/InterfaceResolver__factory.d.ts | 216 +++ .../InterfaceResolver__factory.d.ts.map | 1 + .../profiles/InterfaceResolver__factory.js | 286 +++ .../profiles/NameResolver__factory.d.ts | 104 ++ .../profiles/NameResolver__factory.d.ts.map | 1 + .../profiles/NameResolver__factory.js | 142 ++ .../profiles/PubkeyResolver__factory.d.ts | 117 ++ .../profiles/PubkeyResolver__factory.d.ts.map | 1 + .../profiles/PubkeyResolver__factory.js | 158 ++ .../profiles/TextResolver__factory.d.ts | 122 ++ .../profiles/TextResolver__factory.d.ts.map | 1 + .../profiles/TextResolver__factory.js | 164 ++ .../contracts/resolvers/profiles/index.d.ts | 21 + .../resolvers/profiles/index.d.ts.map | 1 + .../contracts/resolvers/profiles/index.js | 43 + .../IReverseRegistrar__factory.d.ts | 126 ++ .../IReverseRegistrar__factory.d.ts.map | 1 + .../IReverseRegistrar__factory.js | 173 ++ .../ReverseClaimer__factory.d.ts | 35 + .../ReverseClaimer__factory.d.ts.map | 1 + .../ReverseClaimer__factory.js | 52 + .../NameResolver__factory.d.ts | 22 + .../NameResolver__factory.d.ts.map | 1 + .../NameResolver__factory.js | 34 + .../ReverseRegistrar__factory.d.ts | 278 +++ .../ReverseRegistrar__factory.d.ts.map | 1 + .../ReverseRegistrar__factory.js | 370 ++++ .../ReverseRegistrar.sol/index.d.ts | 3 + .../ReverseRegistrar.sol/index.d.ts.map | 1 + .../ReverseRegistrar.sol/index.js | 7 + .../contracts/reverseRegistrar/index.d.ts | 4 + .../contracts/reverseRegistrar/index.d.ts.map | 1 + .../contracts/reverseRegistrar/index.js | 31 + .../contracts/root/Controllable__factory.d.ts | 107 ++ .../root/Controllable__factory.d.ts.map | 1 + .../contracts/root/Controllable__factory.js | 144 ++ .../contracts/root/Root__factory.d.ts | 197 ++ .../contracts/root/Root__factory.d.ts.map | 1 + .../contracts/root/Root__factory.js | 263 +++ .../ens-contracts/contracts/root/index.d.ts | 3 + .../contracts/root/index.d.ts.map | 1 + .../ens-contracts/contracts/root/index.js | 7 + .../utils/ERC20Recoverable__factory.d.ts | 82 + .../utils/ERC20Recoverable__factory.d.ts.map | 1 + .../utils/ERC20Recoverable__factory.js | 111 ++ .../ens-contracts/contracts/utils/index.d.ts | 2 + .../contracts/utils/index.d.ts.map | 1 + .../ens-contracts/contracts/utils/index.js | 5 + .../wrapper/Controllable__factory.d.ts | 107 ++ .../wrapper/Controllable__factory.d.ts.map | 1 + .../wrapper/Controllable__factory.js | 144 ++ .../wrapper/ERC1155Fuse__factory.d.ts | 349 ++++ .../wrapper/ERC1155Fuse__factory.d.ts.map | 1 + .../contracts/wrapper/ERC1155Fuse__factory.js | 457 +++++ .../wrapper/IMetadataService__factory.d.ts | 22 + .../IMetadataService__factory.d.ts.map | 1 + .../wrapper/IMetadataService__factory.js | 35 + .../wrapper/INameWrapperUpgrade__factory.d.ts | 38 + .../INameWrapperUpgrade__factory.d.ts.map | 1 + .../wrapper/INameWrapperUpgrade__factory.js | 54 + .../wrapper/INameWrapper__factory.d.ts | 864 +++++++++ .../wrapper/INameWrapper__factory.d.ts.map | 1 + .../wrapper/INameWrapper__factory.js | 1125 ++++++++++++ .../wrapper/NameWrapper__factory.d.ts | 1143 ++++++++++++ .../wrapper/NameWrapper__factory.d.ts.map | 1 + .../contracts/wrapper/NameWrapper__factory.js | 1489 +++++++++++++++ .../contracts/wrapper/index.d.ts | 7 + .../contracts/wrapper/index.d.ts.map | 1 + .../ens-contracts/contracts/wrapper/index.js | 15 + .../@ensdomains/ens-contracts/index.d.ts | 2 + .../@ensdomains/ens-contracts/index.d.ts.map | 1 + .../@ensdomains/ens-contracts/index.js | 27 + dist/types/factories/@ensdomains/index.d.ts | 2 + .../factories/@ensdomains/index.d.ts.map | 1 + dist/types/factories/@ensdomains/index.js | 27 + .../contracts-2.3/access/index.d.ts | 2 + .../contracts-2.3/access/index.d.ts.map | 1 + .../contracts-2.3/access/index.js | 27 + .../access/roles/MinterRole__factory.d.ts | 69 + .../access/roles/MinterRole__factory.d.ts.map | 1 + .../access/roles/MinterRole__factory.js | 93 + .../roles/WhitelistAdminRole__factory.d.ts | 69 + .../WhitelistAdminRole__factory.d.ts.map | 1 + .../roles/WhitelistAdminRole__factory.js | 93 + .../roles/WhitelistedRole__factory.d.ts | 147 ++ .../roles/WhitelistedRole__factory.d.ts.map | 1 + .../access/roles/WhitelistedRole__factory.js | 193 ++ .../contracts-2.3/access/roles/index.d.ts | 4 + .../contracts-2.3/access/roles/index.d.ts.map | 1 + .../contracts-2.3/access/roles/index.js | 9 + .../@openzeppelin/contracts-2.3/index.d.ts | 4 + .../contracts-2.3/index.d.ts.map | 1 + .../@openzeppelin/contracts-2.3/index.js | 29 + .../introspection/ERC165__factory.d.ts | 29 + .../introspection/ERC165__factory.d.ts.map | 1 + .../introspection/ERC165__factory.js | 43 + .../introspection/IERC165__factory.d.ts | 24 + .../introspection/IERC165__factory.d.ts.map | 1 + .../introspection/IERC165__factory.js | 37 + .../contracts-2.3/introspection/index.d.ts | 3 + .../introspection/index.d.ts.map | 1 + .../contracts-2.3/introspection/index.js | 7 + .../token/ERC721/ERC721Burnable__factory.d.ts | 275 +++ .../ERC721/ERC721Burnable__factory.d.ts.map | 1 + .../token/ERC721/ERC721Burnable__factory.js | 356 ++++ .../token/ERC721/ERC721__factory.d.ts | 268 +++ .../token/ERC721/ERC721__factory.d.ts.map | 1 + .../token/ERC721/ERC721__factory.js | 347 ++++ .../ERC721/IERC721Metadata__factory.d.ts | 288 +++ .../ERC721/IERC721Metadata__factory.d.ts.map | 1 + .../token/ERC721/IERC721Metadata__factory.js | 372 ++++ .../ERC721/IERC721Receiver__factory.d.ts | 36 + .../ERC721/IERC721Receiver__factory.d.ts.map | 1 + .../token/ERC721/IERC721Receiver__factory.js | 52 + .../token/ERC721/IERC721__factory.d.ts | 248 +++ .../token/ERC721/IERC721__factory.d.ts.map | 1 + .../token/ERC721/IERC721__factory.js | 321 ++++ .../contracts-2.3/token/ERC721/index.d.ts | 6 + .../contracts-2.3/token/ERC721/index.d.ts.map | 1 + .../contracts-2.3/token/ERC721/index.js | 13 + .../contracts-2.3/token/index.d.ts | 2 + .../contracts-2.3/token/index.d.ts.map | 1 + .../contracts-2.3/token/index.js | 27 + ...ControlEnumerableUpgradeable__factory.d.ts | 208 +++ ...rolEnumerableUpgradeable__factory.d.ts.map | 1 + ...ssControlEnumerableUpgradeable__factory.js | 276 +++ .../AccessControlUpgradeable__factory.d.ts | 176 ++ ...AccessControlUpgradeable__factory.d.ts.map | 1 + .../AccessControlUpgradeable__factory.js | 233 +++ ...ControlEnumerableUpgradeable__factory.d.ts | 174 ++ ...rolEnumerableUpgradeable__factory.d.ts.map | 1 + ...ssControlEnumerableUpgradeable__factory.js | 231 +++ .../IAccessControlUpgradeable__factory.d.ts | 142 ++ ...AccessControlUpgradeable__factory.d.ts.map | 1 + .../IAccessControlUpgradeable__factory.js | 188 ++ .../access/OwnableUpgradeable__factory.d.ts | 59 + .../OwnableUpgradeable__factory.d.ts.map | 1 + .../access/OwnableUpgradeable__factory.js | 81 + .../contracts-upgradeable/access/index.d.ts | 6 + .../access/index.d.ts.map | 1 + .../contracts-upgradeable/access/index.js | 13 + .../contracts-upgradeable/index.d.ts | 7 + .../contracts-upgradeable/index.d.ts.map | 1 + .../contracts-upgradeable/index.js | 32 + .../IERC1271Upgradeable__factory.d.ts | 26 + .../IERC1271Upgradeable__factory.d.ts.map | 1 + .../IERC1271Upgradeable__factory.js | 40 + .../interfaces/index.d.ts | 2 + .../interfaces/index.d.ts.map | 1 + .../contracts-upgradeable/interfaces/index.js | 5 + .../contracts-upgradeable/proxy/index.d.ts | 2 + .../proxy/index.d.ts.map | 1 + .../contracts-upgradeable/proxy/index.js | 27 + .../proxy/utils/Initializable__factory.d.ts | 18 + .../utils/Initializable__factory.d.ts.map | 1 + .../proxy/utils/Initializable__factory.js | 29 + .../proxy/utils/index.d.ts | 2 + .../proxy/utils/index.d.ts.map | 1 + .../proxy/utils/index.js | 5 + .../PausableUpgradeable__factory.d.ts | 48 + .../PausableUpgradeable__factory.d.ts.map | 1 + .../security/PausableUpgradeable__factory.js | 68 + .../ReentrancyGuardUpgradeable__factory.d.ts | 18 + ...entrancyGuardUpgradeable__factory.d.ts.map | 1 + .../ReentrancyGuardUpgradeable__factory.js | 29 + .../contracts-upgradeable/security/index.d.ts | 3 + .../security/index.d.ts.map | 1 + .../contracts-upgradeable/security/index.js | 7 + .../ERC1155/ERC1155Upgradeable__factory.d.ts | 276 +++ .../ERC1155Upgradeable__factory.d.ts.map | 1 + .../ERC1155/ERC1155Upgradeable__factory.js | 361 ++++ .../IERC1155ReceiverUpgradeable__factory.d.ts | 82 + ...C1155ReceiverUpgradeable__factory.d.ts.map | 1 + .../IERC1155ReceiverUpgradeable__factory.js | 113 ++ .../ERC1155/IERC1155Upgradeable__factory.d.ts | 237 +++ .../IERC1155Upgradeable__factory.d.ts.map | 1 + .../ERC1155/IERC1155Upgradeable__factory.js | 309 ++++ .../ERC1155BurnableUpgradeable__factory.d.ts | 297 +++ ...C1155BurnableUpgradeable__factory.d.ts.map | 1 + .../ERC1155BurnableUpgradeable__factory.js | 387 ++++ .../ERC1155PausableUpgradeable__factory.d.ts | 291 +++ ...C1155PausableUpgradeable__factory.d.ts.map | 1 + .../ERC1155PausableUpgradeable__factory.js | 380 ++++ ...RC1155MetadataURIUpgradeable__factory.d.ts | 251 +++ ...55MetadataURIUpgradeable__factory.d.ts.map | 1 + ...IERC1155MetadataURIUpgradeable__factory.js | 328 ++++ .../token/ERC1155/extensions/index.d.ts | 4 + .../token/ERC1155/extensions/index.d.ts.map | 1 + .../token/ERC1155/extensions/index.js | 9 + .../token/ERC1155/index.d.ts | 6 + .../token/ERC1155/index.d.ts.map | 1 + .../token/ERC1155/index.js | 34 + ...resetMinterPauserUpgradeable__factory.d.ts | 604 +++++++ ...tMinterPauserUpgradeable__factory.d.ts.map | 1 + ...5PresetMinterPauserUpgradeable__factory.js | 783 ++++++++ .../token/ERC1155/presets/index.d.ts | 2 + .../token/ERC1155/presets/index.d.ts.map | 1 + .../token/ERC1155/presets/index.js | 5 + .../ERC20/IERC20Upgradeable__factory.d.ts | 148 ++ .../ERC20/IERC20Upgradeable__factory.d.ts.map | 1 + .../token/ERC20/IERC20Upgradeable__factory.js | 199 ++ .../token/ERC20/index.d.ts | 2 + .../token/ERC20/index.d.ts.map | 1 + .../token/ERC20/index.js | 5 + .../ERC721/ERC721Upgradeable__factory.d.ts | 287 +++ .../ERC721Upgradeable__factory.d.ts.map | 1 + .../ERC721/ERC721Upgradeable__factory.js | 379 ++++ .../IERC721ReceiverUpgradeable__factory.d.ts | 34 + ...RC721ReceiverUpgradeable__factory.d.ts.map | 1 + .../IERC721ReceiverUpgradeable__factory.js | 50 + .../ERC721/IERC721Upgradeable__factory.d.ts | 228 +++ .../IERC721Upgradeable__factory.d.ts.map | 1 + .../ERC721/IERC721Upgradeable__factory.js | 301 ++++ .../IERC721MetadataUpgradeable__factory.d.ts | 262 +++ ...RC721MetadataUpgradeable__factory.d.ts.map | 1 + .../IERC721MetadataUpgradeable__factory.js | 346 ++++ .../token/ERC721/extensions/index.d.ts | 2 + .../token/ERC721/extensions/index.d.ts.map | 1 + .../token/ERC721/extensions/index.js | 5 + .../token/ERC721/index.d.ts | 5 + .../token/ERC721/index.d.ts.map | 1 + .../token/ERC721/index.js | 33 + .../contracts-upgradeable/token/index.d.ts | 4 + .../token/index.d.ts.map | 1 + .../contracts-upgradeable/token/index.js | 29 + .../utils/ContextUpgradeable__factory.d.ts | 18 + .../ContextUpgradeable__factory.d.ts.map | 1 + .../utils/ContextUpgradeable__factory.js | 29 + .../utils/MulticallUpgradeable__factory.d.ts | 32 + .../MulticallUpgradeable__factory.d.ts.map | 1 + .../utils/MulticallUpgradeable__factory.js | 48 + .../contracts-upgradeable/utils/index.d.ts | 4 + .../utils/index.d.ts.map | 1 + .../contracts-upgradeable/utils/index.js | 31 + .../ERC165Upgradeable__factory.d.ts | 32 + .../ERC165Upgradeable__factory.d.ts.map | 1 + .../ERC165Upgradeable__factory.js | 48 + .../IERC165Upgradeable__factory.d.ts | 22 + .../IERC165Upgradeable__factory.d.ts.map | 1 + .../IERC165Upgradeable__factory.js | 35 + .../utils/introspection/index.d.ts | 3 + .../utils/introspection/index.d.ts.map | 1 + .../utils/introspection/index.js | 7 + .../contracts/access/Ownable__factory.d.ts | 49 + .../access/Ownable__factory.d.ts.map | 1 + .../contracts/access/Ownable__factory.js | 68 + .../@openzeppelin/contracts/access/index.d.ts | 2 + .../contracts/access/index.d.ts.map | 1 + .../@openzeppelin/contracts/access/index.js | 5 + .../@openzeppelin/contracts/index.d.ts | 4 + .../@openzeppelin/contracts/index.d.ts.map | 1 + .../@openzeppelin/contracts/index.js | 29 + .../ERC1155/IERC1155Receiver__factory.d.ts | 82 + .../IERC1155Receiver__factory.d.ts.map | 1 + .../ERC1155/IERC1155Receiver__factory.js | 113 ++ .../token/ERC1155/IERC1155__factory.d.ts | 237 +++ .../token/ERC1155/IERC1155__factory.d.ts.map | 1 + .../token/ERC1155/IERC1155__factory.js | 309 ++++ .../IERC1155MetadataURI__factory.d.ts | 251 +++ .../IERC1155MetadataURI__factory.d.ts.map | 1 + .../IERC1155MetadataURI__factory.js | 328 ++++ .../token/ERC1155/extensions/index.d.ts | 2 + .../token/ERC1155/extensions/index.d.ts.map | 1 + .../token/ERC1155/extensions/index.js | 5 + .../contracts/token/ERC1155/index.d.ts | 4 + .../contracts/token/ERC1155/index.d.ts.map | 1 + .../contracts/token/ERC1155/index.js | 31 + .../contracts/token/ERC20/ERC20__factory.d.ts | 241 +++ .../token/ERC20/ERC20__factory.d.ts.map | 1 + .../contracts/token/ERC20/ERC20__factory.js | 322 ++++ .../token/ERC20/IERC20__factory.d.ts | 148 ++ .../token/ERC20/IERC20__factory.d.ts.map | 1 + .../contracts/token/ERC20/IERC20__factory.js | 199 ++ .../extensions/IERC20Metadata__factory.d.ts | 178 ++ .../IERC20Metadata__factory.d.ts.map | 1 + .../extensions/IERC20Metadata__factory.js | 238 +++ .../token/ERC20/extensions/index.d.ts | 2 + .../token/ERC20/extensions/index.d.ts.map | 1 + .../contracts/token/ERC20/extensions/index.js | 5 + .../contracts/token/ERC20/index.d.ts | 4 + .../contracts/token/ERC20/index.d.ts.map | 1 + .../contracts/token/ERC20/index.js | 31 + .../token/ERC721/ERC721__factory.d.ts | 289 +++ .../token/ERC721/ERC721__factory.d.ts.map | 1 + .../contracts/token/ERC721/ERC721__factory.js | 382 ++++ .../ERC721/IERC721Receiver__factory.d.ts | 34 + .../ERC721/IERC721Receiver__factory.d.ts.map | 1 + .../token/ERC721/IERC721Receiver__factory.js | 50 + .../token/ERC721/IERC721__factory.d.ts | 228 +++ .../token/ERC721/IERC721__factory.d.ts.map | 1 + .../token/ERC721/IERC721__factory.js | 301 ++++ .../extensions/IERC721Metadata__factory.d.ts | 262 +++ .../IERC721Metadata__factory.d.ts.map | 1 + .../extensions/IERC721Metadata__factory.js | 346 ++++ .../token/ERC721/extensions/index.d.ts | 2 + .../token/ERC721/extensions/index.d.ts.map | 1 + .../token/ERC721/extensions/index.js | 5 + .../contracts/token/ERC721/index.d.ts | 5 + .../contracts/token/ERC721/index.d.ts.map | 1 + .../contracts/token/ERC721/index.js | 33 + .../@openzeppelin/contracts/token/index.d.ts | 4 + .../contracts/token/index.d.ts.map | 1 + .../@openzeppelin/contracts/token/index.js | 29 + .../@openzeppelin/contracts/utils/index.d.ts | 2 + .../contracts/utils/index.d.ts.map | 1 + .../@openzeppelin/contracts/utils/index.js | 27 + .../utils/introspection/ERC165__factory.d.ts | 22 + .../introspection/ERC165__factory.d.ts.map | 1 + .../utils/introspection/ERC165__factory.js | 35 + .../utils/introspection/IERC165__factory.d.ts | 22 + .../introspection/IERC165__factory.d.ts.map | 1 + .../utils/introspection/IERC165__factory.js | 35 + .../contracts/utils/introspection/index.d.ts | 3 + .../utils/introspection/index.d.ts.map | 1 + .../contracts/utils/introspection/index.js | 7 + dist/types/factories/@openzeppelin/index.d.ts | 4 + .../factories/@openzeppelin/index.d.ts.map | 1 + dist/types/factories/@openzeppelin/index.js | 29 + .../LegacyENSRegistry__factory.d.ts | 194 ++ .../LegacyENSRegistry__factory.d.ts.map | 1 + .../LegacyENSRegistry__factory.js | 257 +++ .../LegacyENS__factory.d.ts | 175 ++ .../LegacyENS__factory.d.ts.map | 1 + .../LegacyENS__factory.js | 232 +++ .../@ens/LegacyENSRegistry.sol/index.d.ts | 3 + .../@ens/LegacyENSRegistry.sol/index.d.ts.map | 1 + .../@ens/LegacyENSRegistry.sol/index.js | 7 + .../BaseRegistrar__factory.d.ts | 562 ++++++ .../BaseRegistrar__factory.d.ts.map | 1 + .../BaseRegistrar__factory.js | 719 ++++++++ .../ENS__factory.d.ts | 317 ++++ .../ENS__factory.d.ts.map | 1 + .../ENS__factory.js | 409 +++++ .../IERC165__factory.d.ts | 24 + .../IERC165__factory.d.ts.map | 1 + .../IERC165__factory.js | 37 + .../IERC721__factory.d.ts | 248 +++ .../IERC721__factory.d.ts.map | 1 + .../IERC721__factory.js | 321 ++++ ...LegacyETHRegistrarController__factory.d.ts | 464 +++++ ...cyETHRegistrarController__factory.d.ts.map | 1 + .../LegacyETHRegistrarController__factory.js | 593 ++++++ .../Ownable__factory.d.ts | 72 + .../Ownable__factory.d.ts.map | 1 + .../Ownable__factory.js | 95 + .../PriceOracle__factory.d.ts | 32 + .../PriceOracle__factory.d.ts.map | 1 + .../PriceOracle__factory.js | 47 + .../Resolver__factory.d.ts | 555 ++++++ .../Resolver__factory.d.ts.map | 1 + .../Resolver__factory.js | 713 ++++++++ .../index.d.ts | 9 + .../index.d.ts.map | 1 + .../LegacyETHRegistrarController.sol/index.js | 19 + .../@ens/dnssec/DNSRegistrar__factory.d.ts | 219 +++ .../dnssec/DNSRegistrar__factory.d.ts.map | 1 + .../@ens/dnssec/DNSRegistrar__factory.js | 290 +++ .../DNSSECImpl.sol/DNSSECImpl__factory.d.ts | 375 ++++ .../DNSSECImpl__factory.d.ts.map | 1 + .../DNSSECImpl.sol/DNSSECImpl__factory.js | 495 +++++ .../dnssec/DNSSECImpl.sol/Owned__factory.d.ts | 47 + .../DNSSECImpl.sol/Owned__factory.d.ts.map | 1 + .../dnssec/DNSSECImpl.sol/Owned__factory.js | 67 + .../@ens/dnssec/DNSSECImpl.sol/index.d.ts | 3 + .../@ens/dnssec/DNSSECImpl.sol/index.d.ts.map | 1 + .../@ens/dnssec/DNSSECImpl.sol/index.js | 7 + .../@ens/dnssec/DNSSEC__factory.d.ts | 233 +++ .../@ens/dnssec/DNSSEC__factory.d.ts.map | 1 + .../contracts/@ens/dnssec/DNSSEC__factory.js | 308 ++++ .../dnssec/TLDPublicSuffixList__factory.d.ts | 37 + .../TLDPublicSuffixList__factory.d.ts.map | 1 + .../dnssec/TLDPublicSuffixList__factory.js | 55 + .../algorithms/DummyAlgorithm__factory.d.ts | 45 + .../DummyAlgorithm__factory.d.ts.map | 1 + .../algorithms/DummyAlgorithm__factory.js | 65 + .../RSASHA256Algorithm__factory.d.ts | 45 + .../RSASHA256Algorithm__factory.d.ts.map | 1 + .../algorithms/RSASHA256Algorithm__factory.js | 65 + .../@ens/dnssec/algorithms/index.d.ts | 3 + .../@ens/dnssec/algorithms/index.d.ts.map | 1 + .../contracts/@ens/dnssec/algorithms/index.js | 7 + .../dnssec/digests/SHA1Digest__factory.d.ts | 41 + .../digests/SHA1Digest__factory.d.ts.map | 1 + .../dnssec/digests/SHA1Digest__factory.js | 60 + .../digests/SHA1NSEC3Digest__factory.d.ts | 45 + .../digests/SHA1NSEC3Digest__factory.d.ts.map | 1 + .../digests/SHA1NSEC3Digest__factory.js | 65 + .../dnssec/digests/SHA256Digest__factory.d.ts | 41 + .../digests/SHA256Digest__factory.d.ts.map | 1 + .../dnssec/digests/SHA256Digest__factory.js | 60 + .../contracts/@ens/dnssec/digests/index.d.ts | 4 + .../@ens/dnssec/digests/index.d.ts.map | 1 + .../contracts/@ens/dnssec/digests/index.js | 9 + .../contracts/@ens/dnssec/index.d.ts | 9 + .../contracts/@ens/dnssec/index.d.ts.map | 1 + .../factories/contracts/@ens/dnssec/index.js | 37 + .../dnssec/interfaces/Algorithm__factory.d.ts | 30 + .../interfaces/Algorithm__factory.d.ts.map | 1 + .../dnssec/interfaces/Algorithm__factory.js | 45 + .../dnssec/interfaces/Digest__factory.d.ts | 26 + .../interfaces/Digest__factory.d.ts.map | 1 + .../@ens/dnssec/interfaces/Digest__factory.js | 40 + .../interfaces/IDNSRegistrar__factory.d.ts | 84 + .../IDNSRegistrar__factory.d.ts.map | 1 + .../interfaces/IDNSRegistrar__factory.js | 114 ++ .../interfaces/NSEC3Digest__factory.d.ts | 30 + .../interfaces/NSEC3Digest__factory.d.ts.map | 1 + .../dnssec/interfaces/NSEC3Digest__factory.js | 45 + .../interfaces/PublicSuffixList__factory.d.ts | 22 + .../PublicSuffixList__factory.d.ts.map | 1 + .../interfaces/PublicSuffixList__factory.js | 35 + .../@ens/dnssec/interfaces/index.d.ts | 6 + .../@ens/dnssec/interfaces/index.d.ts.map | 1 + .../contracts/@ens/dnssec/interfaces/index.js | 13 + .../@ens/dnssec/libraries/SHA1__factory.d.ts | 33 + .../dnssec/libraries/SHA1__factory.d.ts.map | 1 + .../@ens/dnssec/libraries/SHA1__factory.js | 49 + .../@ens/dnssec/libraries/index.d.ts | 2 + .../@ens/dnssec/libraries/index.d.ts.map | 1 + .../contracts/@ens/dnssec/libraries/index.js | 5 + .../types/factories/contracts/@ens/index.d.ts | 4 + .../factories/contracts/@ens/index.d.ts.map | 1 + dist/types/factories/contracts/@ens/index.js | 29 + .../@maticnetwork/IChildToken__factory.d.ts | 22 + .../IChildToken__factory.d.ts.map | 1 + .../@maticnetwork/IChildToken__factory.js | 34 + .../IMintableERC721__factory.d.ts | 274 +++ .../IMintableERC721__factory.d.ts.map | 1 + .../@maticnetwork/IMintableERC721__factory.js | 361 ++++ .../IRootChainManager__factory.d.ts | 145 ++ .../IRootChainManager__factory.d.ts.map | 1 + .../IRootChainManager__factory.js | 191 ++ .../RootChainManagerStorage__factory.d.ts | 36 + .../RootChainManagerStorage__factory.d.ts.map | 1 + .../RootChainManagerStorage__factory.js | 54 + .../contracts/@maticnetwork/index.d.ts | 6 + .../contracts/@maticnetwork/index.d.ts.map | 1 + .../contracts/@maticnetwork/index.js | 35 + .../DummyStateSender__factory.d.ts | 57 + .../DummyStateSender__factory.d.ts.map | 1 + .../DummyStateSender__factory.js | 79 + .../IStateSender__factory.d.ts | 22 + .../IStateSender__factory.d.ts.map | 1 + .../IStateSender__factory.js | 34 + .../DummyStateSender.sol/index.d.ts | 3 + .../DummyStateSender.sol/index.d.ts.map | 1 + .../pos-portal/DummyStateSender.sol/index.js | 7 + .../AccessControlMixin__factory.d.ts | 199 ++ .../AccessControlMixin__factory.d.ts.map | 1 + .../AccessControlMixin__factory.js | 264 +++ .../AccessControl__factory.d.ts | 184 ++ .../AccessControl__factory.d.ts.map | 1 + .../AccessControl__factory.js | 244 +++ .../IERC165__factory.d.ts | 22 + .../IERC165__factory.d.ts.map | 1 + .../IERC165__factory.js | 35 + .../IERC721Receiver__factory.d.ts | 34 + .../IERC721Receiver__factory.d.ts.map | 1 + .../IERC721Receiver__factory.js | 50 + .../IERC721__factory.d.ts | 228 +++ .../IERC721__factory.d.ts.map | 1 + .../IERC721__factory.js | 301 ++++ .../IMintableERC721__factory.d.ts | 274 +++ .../IMintableERC721__factory.d.ts.map | 1 + .../IMintableERC721__factory.js | 361 ++++ .../ITokenPredicate__factory.d.ts | 48 + .../ITokenPredicate__factory.d.ts.map | 1 + .../ITokenPredicate__factory.js | 67 + .../MintableERC721Predicate__factory.d.ts | 389 ++++ .../MintableERC721Predicate__factory.d.ts.map | 1 + .../MintableERC721Predicate__factory.js | 507 ++++++ .../MintableERC721Predicate.sol/index.d.ts | 9 + .../index.d.ts.map | 1 + .../MintableERC721Predicate.sol/index.js | 19 + .../AccessControlMixin__factory.d.ts | 199 ++ .../AccessControlMixin__factory.d.ts.map | 1 + .../AccessControlMixin__factory.js | 264 +++ .../AccessControl__factory.d.ts | 184 ++ .../AccessControl__factory.d.ts.map | 1 + .../AccessControl__factory.js | 244 +++ .../EIP712Base__factory.d.ts | 53 + .../EIP712Base__factory.d.ts.map | 1 + .../EIP712Base__factory.js | 75 + .../ICheckpointManager__factory.d.ts | 53 + .../ICheckpointManager__factory.d.ts.map | 1 + .../ICheckpointManager__factory.js | 75 + .../IRootChainManager__factory.d.ts | 145 ++ .../IRootChainManager__factory.d.ts.map | 1 + .../IRootChainManager__factory.js | 191 ++ .../IStateSender__factory.d.ts | 22 + .../IStateSender__factory.d.ts.map | 1 + .../IStateSender__factory.js | 34 + .../ITokenPredicate__factory.d.ts | 48 + .../ITokenPredicate__factory.d.ts.map | 1 + .../ITokenPredicate__factory.js | 67 + .../NativeMetaTransaction__factory.d.ts | 117 ++ .../NativeMetaTransaction__factory.d.ts.map | 1 + .../NativeMetaTransaction__factory.js | 158 ++ .../RootChainManagerStorage__factory.d.ts | 88 + .../RootChainManagerStorage__factory.d.ts.map | 1 + .../RootChainManagerStorage__factory.js | 124 ++ .../RootChainManager__factory.d.ts | 625 +++++++ .../RootChainManager__factory.d.ts.map | 1 + .../RootChainManager__factory.js | 817 +++++++++ .../RootChainManager.sol/index.d.ts | 11 + .../RootChainManager.sol/index.d.ts.map | 1 + .../pos-portal/RootChainManager.sol/index.js | 23 + .../ICheckpointManager__factory.d.ts | 53 + .../ICheckpointManager__factory.d.ts.map | 1 + .../ICheckpointManager__factory.js | 75 + .../IRootChain__factory.d.ts | 43 + .../IRootChain__factory.d.ts.map | 1 + .../IRootChain__factory.js | 59 + .../SimpleCheckpointManager__factory.d.ts | 116 ++ .../SimpleCheckpointManager__factory.d.ts.map | 1 + .../SimpleCheckpointManager__factory.js | 154 ++ .../SimpleCheckpointManager.sol/index.d.ts | 4 + .../index.d.ts.map | 1 + .../SimpleCheckpointManager.sol/index.js | 9 + .../@maticnetwork/pos-portal/index.d.ts | 5 + .../@maticnetwork/pos-portal/index.d.ts.map | 1 + .../@maticnetwork/pos-portal/index.js | 30 + .../contracts/ChildRegistry__factory.d.ts | 296 +++ .../contracts/ChildRegistry__factory.d.ts.map | 1 + .../contracts/ChildRegistry__factory.js | 390 ++++ .../contracts/DotCoinBurner__factory.d.ts | 56 + .../contracts/DotCoinBurner__factory.d.ts.map | 1 + .../contracts/DotCoinBurner__factory.js | 79 + .../contracts/IAddressReader__factory.d.ts | 70 + .../IAddressReader__factory.d.ts.map | 1 + .../contracts/IAddressReader__factory.js | 98 + .../contracts/IDataReader__factory.d.ts | 134 ++ .../contracts/IDataReader__factory.d.ts.map | 1 + .../contracts/IDataReader__factory.js | 181 ++ .../contracts/IERC1967__factory.d.ts | 33 + .../contracts/IERC1967__factory.d.ts.map | 1 + .../factories/contracts/IERC1967__factory.js | 48 + .../contracts/IMintingManager__factory.d.ts | 376 ++++ .../IMintingManager__factory.d.ts.map | 1 + .../contracts/IMintingManager__factory.js | 484 +++++ .../contracts/IRecordReader__factory.d.ts | 88 + .../contracts/IRecordReader__factory.d.ts.map | 1 + .../contracts/IRecordReader__factory.js | 122 ++ .../contracts/IRecordStorage__factory.d.ts | 248 +++ .../IRecordStorage__factory.d.ts.map | 1 + .../contracts/IRecordStorage__factory.js | 325 ++++ .../contracts/IRegistryReader__factory.d.ts | 170 ++ .../IRegistryReader__factory.d.ts.map | 1 + .../contracts/IRegistryReader__factory.js | 235 +++ .../contracts/IReverseRegistry__factory.d.ts | 77 + .../IReverseRegistry__factory.d.ts.map | 1 + .../contracts/IReverseRegistry__factory.js | 106 ++ .../contracts/IRootRegistry__factory.d.ts | 306 ++++ .../contracts/IRootRegistry__factory.d.ts.map | 1 + .../contracts/IRootRegistry__factory.js | 402 +++++ .../contracts/IUNSRegistry__factory.d.ts | 966 ++++++++++ .../contracts/IUNSRegistry__factory.d.ts.map | 1 + .../contracts/IUNSRegistry__factory.js | 1258 +++++++++++++ .../contracts/KeyStorage__factory.d.ts | 46 + .../contracts/KeyStorage__factory.d.ts.map | 1 + .../contracts/KeyStorage__factory.js | 67 + .../contracts/MintingManager__factory.d.ts | 920 ++++++++++ .../MintingManager__factory.d.ts.map | 1 + .../contracts/MintingManager__factory.js | 1188 ++++++++++++ .../contracts/ProxyReader__factory.d.ts | 652 +++++++ .../contracts/ProxyReader__factory.d.ts.map | 1 + .../contracts/ProxyReader__factory.js | 867 +++++++++ .../contracts/RecordStorage__factory.d.ts | 286 +++ .../contracts/RecordStorage__factory.d.ts.map | 1 + .../contracts/RecordStorage__factory.js | 376 ++++ .../contracts/RootRegistry__factory.d.ts | 350 ++++ .../contracts/RootRegistry__factory.d.ts.map | 1 + .../contracts/RootRegistry__factory.js | 460 +++++ .../contracts/UNSOperator__factory.d.ts | 100 + .../contracts/UNSOperator__factory.d.ts.map | 1 + .../contracts/UNSOperator__factory.js | 134 ++ .../contracts/UNSRegistry__factory.d.ts | 1203 +++++++++++++ .../contracts/UNSRegistry__factory.d.ts.map | 1 + .../contracts/UNSRegistry__factory.js | 1571 ++++++++++++++++ .../contracts/cns/ICNSRegistry__factory.d.ts | 322 ++++ .../cns/ICNSRegistry__factory.d.ts.map | 1 + .../contracts/cns/ICNSRegistry__factory.js | 426 +++++ .../cns/IMintingController__factory.d.ts | 112 ++ .../cns/IMintingController__factory.d.ts.map | 1 + .../cns/IMintingController__factory.js | 149 ++ .../contracts/cns/IResolver__factory.d.ts | 124 ++ .../contracts/cns/IResolver__factory.d.ts.map | 1 + .../contracts/cns/IResolver__factory.js | 168 ++ .../cns/IURIPrefixController__factory.d.ts | 18 + .../IURIPrefixController__factory.d.ts.map | 1 + .../cns/IURIPrefixController__factory.js | 29 + dist/types/factories/contracts/cns/index.d.ts | 5 + .../factories/contracts/cns/index.d.ts.map | 1 + dist/types/factories/contracts/cns/index.js | 11 + .../custody/ENSCustody__factory.d.ts | 790 ++++++++ .../custody/ENSCustody__factory.d.ts.map | 1 + .../contracts/custody/ENSCustody__factory.js | 1033 +++++++++++ .../custody/IENSCustody__factory.d.ts | 258 +++ .../custody/IENSCustody__factory.d.ts.map | 1 + .../contracts/custody/IENSCustody__factory.js | 340 ++++ .../custody/ZilliqaRecover__factory.d.ts | 454 +++++ .../custody/ZilliqaRecover__factory.d.ts.map | 1 + .../custody/ZilliqaRecover__factory.js | 601 ++++++ .../factories/contracts/custody/index.d.ts | 4 + .../contracts/custody/index.d.ts.map | 1 + .../factories/contracts/custody/index.js | 9 + .../history/IUNSRegistryV07__factory.d.ts | 895 +++++++++ .../history/IUNSRegistryV07__factory.d.ts.map | 1 + .../history/IUNSRegistryV07__factory.js | 1165 ++++++++++++ .../history/ProxyReaderV04__factory.d.ts | 477 +++++ .../history/ProxyReaderV04__factory.d.ts.map | 1 + .../history/ProxyReaderV04__factory.js | 640 +++++++ .../history/UNSRegistryV07__factory.d.ts | 1118 ++++++++++++ .../history/UNSRegistryV07__factory.d.ts.map | 1 + .../history/UNSRegistryV07__factory.js | 1459 +++++++++++++++ .../factories/contracts/history/index.d.ts | 4 + .../contracts/history/index.d.ts.map | 1 + .../factories/contracts/history/index.js | 9 + dist/types/factories/contracts/index.d.ts | 29 + dist/types/factories/contracts/index.d.ts.map | 1 + dist/types/factories/contracts/index.js | 73 + .../metatx/BaseForwarder__factory.d.ts | 92 + .../metatx/BaseForwarder__factory.d.ts.map | 1 + .../metatx/BaseForwarder__factory.js | 127 ++ .../metatx/BaseRoutingForwarder__factory.d.ts | 92 + .../BaseRoutingForwarder__factory.d.ts.map | 1 + .../metatx/BaseRoutingForwarder__factory.js | 127 ++ .../metatx/CNSRegistryForwarder__factory.d.ts | 115 ++ .../CNSRegistryForwarder__factory.d.ts.map | 1 + .../metatx/CNSRegistryForwarder__factory.js | 158 ++ .../metatx/ERC2771Context__factory.d.ts | 32 + .../metatx/ERC2771Context__factory.d.ts.map | 1 + .../metatx/ERC2771Context__factory.js | 48 + .../ERC2771RegistryContext__factory.d.ts | 32 + .../ERC2771RegistryContext__factory.d.ts.map | 1 + .../metatx/ERC2771RegistryContext__factory.js | 48 + .../contracts/metatx/Forwarder__factory.d.ts | 106 ++ .../metatx/Forwarder__factory.d.ts.map | 1 + .../contracts/metatx/Forwarder__factory.js | 145 ++ .../contracts/metatx/IForwarder__factory.d.ts | 92 + .../metatx/IForwarder__factory.d.ts.map | 1 + .../contracts/metatx/IForwarder__factory.js | 127 ++ .../MintingManagerForwarder__factory.d.ts | 115 ++ .../MintingManagerForwarder__factory.d.ts.map | 1 + .../MintingManagerForwarder__factory.js | 158 ++ .../metatx/ResolverForwarder__factory.d.ts | 119 ++ .../ResolverForwarder__factory.d.ts.map | 1 + .../metatx/ResolverForwarder__factory.js | 163 ++ .../metatx/UNSRegistryForwarder__factory.d.ts | 102 ++ .../UNSRegistryForwarder__factory.d.ts.map | 1 + .../metatx/UNSRegistryForwarder__factory.js | 140 ++ .../factories/contracts/metatx/index.d.ts | 11 + .../factories/contracts/metatx/index.d.ts.map | 1 + .../types/factories/contracts/metatx/index.js | 23 + .../mocks/BaseForwarderMock__factory.d.ts | 139 ++ .../mocks/BaseForwarderMock__factory.d.ts.map | 1 + .../mocks/BaseForwarderMock__factory.js | 187 ++ .../BaseRoutingForwarderMock__factory.d.ts | 218 +++ ...BaseRoutingForwarderMock__factory.d.ts.map | 1 + .../BaseRoutingForwarderMock__factory.js | 291 +++ .../contracts/mocks/ERC1155Mock__factory.d.ts | 612 +++++++ .../mocks/ERC1155Mock__factory.d.ts.map | 1 + .../contracts/mocks/ERC1155Mock__factory.js | 794 ++++++++ .../contracts/mocks/ERC20Mock__factory.d.ts | 243 +++ .../mocks/ERC20Mock__factory.d.ts.map | 1 + .../contracts/mocks/ERC20Mock__factory.js | 324 ++++ .../mocks/ERC20UnsafeMock__factory.d.ts | 243 +++ .../mocks/ERC20UnsafeMock__factory.d.ts.map | 1 + .../mocks/ERC20UnsafeMock__factory.js | 324 ++++ .../mocks/ERC2771ContextMock__factory.d.ts | 97 + .../ERC2771ContextMock__factory.d.ts.map | 1 + .../mocks/ERC2771ContextMock__factory.js | 133 ++ .../ERC2771RegistryContextMock__factory.d.ts | 101 ++ ...C2771RegistryContextMock__factory.d.ts.map | 1 + .../ERC2771RegistryContextMock__factory.js | 138 ++ .../contracts/mocks/ERC721Mock__factory.d.ts | 295 +++ .../mocks/ERC721Mock__factory.d.ts.map | 1 + .../contracts/mocks/ERC721Mock__factory.js | 389 ++++ .../mocks/ERC721ReceiverMock__factory.d.ts | 49 + .../ERC721ReceiverMock__factory.d.ts.map | 1 + .../mocks/ERC721ReceiverMock__factory.js | 70 + .../mocks/MinterRoleMock__factory.d.ts | 334 ++++ .../mocks/MinterRoleMock__factory.d.ts.map | 1 + .../mocks/MinterRoleMock__factory.js | 436 +++++ .../mocks/MintingManagerMock__factory.d.ts | 930 ++++++++++ .../MintingManagerMock__factory.d.ts.map | 1 + .../mocks/MintingManagerMock__factory.js | 1201 ++++++++++++ .../UNSRegistryForwarderMock__factory.d.ts | 123 ++ ...UNSRegistryForwarderMock__factory.d.ts.map | 1 + .../UNSRegistryForwarderMock__factory.js | 167 ++ .../mocks/UNSRegistryMock__factory.d.ts | 1227 +++++++++++++ .../mocks/UNSRegistryMock__factory.d.ts.map | 1 + .../mocks/UNSRegistryMock__factory.js | 1603 +++++++++++++++++ .../factories/contracts/mocks/index.d.ts | 14 + .../factories/contracts/mocks/index.d.ts.map | 1 + dist/types/factories/contracts/mocks/index.js | 29 + .../contracts/roles/MinterRole__factory.d.ts | 307 ++++ .../roles/MinterRole__factory.d.ts.map | 1 + .../contracts/roles/MinterRole__factory.js | 402 +++++ .../factories/contracts/roles/index.d.ts | 2 + .../factories/contracts/roles/index.d.ts.map | 1 + dist/types/factories/contracts/roles/index.js | 5 + .../contracts/utils/Blocklist__factory.d.ts | 62 + .../utils/Blocklist__factory.d.ts.map | 1 + .../contracts/utils/Blocklist__factory.js | 87 + .../utils/ERC1271SimpleWallet__factory.d.ts | 49 + .../ERC1271SimpleWallet__factory.d.ts.map | 1 + .../utils/ERC1271SimpleWallet__factory.js | 71 + .../contracts/utils/MultiSend__factory.d.ts | 35 + .../utils/MultiSend__factory.d.ts.map | 1 + .../contracts/utils/MultiSend__factory.js | 52 + .../contracts/utils/Ownable__factory.d.ts | 59 + .../contracts/utils/Ownable__factory.d.ts.map | 1 + .../contracts/utils/Ownable__factory.js | 81 + .../contracts/utils/Pausable__factory.d.ts | 48 + .../utils/Pausable__factory.d.ts.map | 1 + .../contracts/utils/Pausable__factory.js | 68 + .../factories/contracts/utils/index.d.ts | 6 + .../factories/contracts/utils/index.d.ts.map | 1 + dist/types/factories/contracts/utils/index.js | 13 + .../contracts/CNSRegistry__factory.d.ts | 816 +++++++++ .../contracts/CNSRegistry__factory.d.ts.map | 1 + .../contracts/CNSRegistry__factory.js | 1037 +++++++++++ .../contracts/ICNSRegistry__factory.d.ts | 652 +++++++ .../contracts/ICNSRegistry__factory.d.ts.map | 1 + .../contracts/ICNSRegistry__factory.js | 831 +++++++++ .../contracts/IRegistryReader__factory.d.ts | 200 ++ .../IRegistryReader__factory.d.ts.map | 1 + .../contracts/IRegistryReader__factory.js | 265 +++ .../contracts/IResolverReader__factory.d.ts | 124 ++ .../IResolverReader__factory.d.ts.map | 1 + .../contracts/IResolverReader__factory.js | 166 ++ .../contracts/IResolver__factory.d.ts | 100 + .../contracts/IResolver__factory.d.ts.map | 1 + .../contracts/IResolver__factory.js | 131 ++ .../contracts/Resolver__factory.d.ts | 424 +++++ .../contracts/Resolver__factory.d.ts.map | 1 + .../dot-crypto/contracts/Resolver__factory.js | 545 ++++++ .../DomainZoneController__factory.d.ts | 268 +++ .../DomainZoneController__factory.d.ts.map | 1 + .../DomainZoneController__factory.js | 345 ++++ .../IMintingController__factory.d.ts | 60 + .../IMintingController__factory.d.ts.map | 1 + .../IMintingController__factory.js | 81 + .../ISignatureController__factory.d.ts | 268 +++ .../ISignatureController__factory.d.ts.map | 1 + .../ISignatureController__factory.js | 342 ++++ .../IURIPrefixController__factory.d.ts | 20 + .../IURIPrefixController__factory.d.ts.map | 1 + .../IURIPrefixController__factory.js | 31 + .../MintingController__factory.d.ts | 216 +++ .../MintingController__factory.d.ts.map | 1 + .../controllers/MintingController__factory.js | 279 +++ .../SignatureController__factory.d.ts | 356 ++++ .../SignatureController__factory.d.ts.map | 1 + .../SignatureController__factory.js | 454 +++++ .../URIPrefixController__factory.d.ts | 180 ++ .../URIPrefixController__factory.d.ts.map | 1 + .../URIPrefixController__factory.js | 235 +++ .../contracts/controllers/index.d.ts | 8 + .../contracts/controllers/index.d.ts.map | 1 + .../dot-crypto/contracts/controllers/index.js | 17 + .../factories/dot-crypto/contracts/index.d.ts | 9 + .../dot-crypto/contracts/index.d.ts.map | 1 + .../factories/dot-crypto/contracts/index.js | 40 + .../util/BulkWhitelistedRole__factory.d.ts | 171 ++ .../BulkWhitelistedRole__factory.d.ts.map | 1 + .../util/BulkWhitelistedRole__factory.js | 223 +++ .../util/ControllerRole__factory.d.ts | 64 + .../util/ControllerRole__factory.d.ts.map | 1 + .../contracts/util/ControllerRole__factory.js | 87 + .../contracts/util/FreeMinter__factory.d.ts | 116 ++ .../util/FreeMinter__factory.d.ts.map | 1 + .../contracts/util/FreeMinter__factory.js | 153 ++ .../util/SignatureUtil__factory.d.ts | 60 + .../util/SignatureUtil__factory.d.ts.map | 1 + .../contracts/util/SignatureUtil__factory.js | 84 + .../dot-crypto/contracts/util/index.d.ts | 5 + .../dot-crypto/contracts/util/index.d.ts.map | 1 + .../dot-crypto/contracts/util/index.js | 11 + dist/types/factories/dot-crypto/index.d.ts | 2 + .../types/factories/dot-crypto/index.d.ts.map | 1 + dist/types/factories/dot-crypto/index.js | 27 + dist/types/factories/index.d.ts | 5 + dist/types/factories/index.d.ts.map | 1 + dist/types/factories/index.js | 30 + dist/types/index.d.ts | 396 ++++ dist/types/index.d.ts.map | 1 + dist/types/index.js | 416 +++++ dist/uns-config.json | 571 ++++++ 1826 files changed, 148835 insertions(+) create mode 100644 dist/hardhat.config.d.ts create mode 100644 dist/hardhat.config.d.ts.map create mode 100644 dist/hardhat.config.js create mode 100644 dist/index.d.ts create mode 100644 dist/index.d.ts.map create mode 100644 dist/index.js create mode 100644 dist/sandbox/db.tgz create mode 100644 dist/sandbox/ganache-service.d.ts create mode 100644 dist/sandbox/ganache-service.d.ts.map create mode 100644 dist/sandbox/ganache-service.js create mode 100644 dist/sandbox/index.d.ts create mode 100644 dist/sandbox/index.d.ts.map create mode 100644 dist/sandbox/index.js create mode 100644 dist/src/config.d.ts create mode 100644 dist/src/config.d.ts.map create mode 100644 dist/src/config.js create mode 100644 dist/src/types.d.ts create mode 100644 dist/src/types.d.ts.map create mode 100644 dist/src/types.js create mode 100644 dist/src/utils.d.ts create mode 100644 dist/src/utils.d.ts.map create mode 100644 dist/src/utils.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/dnssec-oracle/index.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/dnssec-oracle/index.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/dnssec-oracle/index.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/index.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/index.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/index.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/index.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/index.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/ethregistrar/index.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/index.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/index.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/index.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/registry/ENS.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/registry/ENS.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/registry/ENS.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/registry/ENSRegistry.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/registry/ENSRegistry.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/registry/ENSRegistry.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/registry/index.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/registry/index.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/registry/index.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/Multicallable.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/Multicallable.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/Multicallable.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/Resolver.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/Resolver.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/Resolver.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/index.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/index.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/index.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/index.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/index.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/resolvers/profiles/index.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/NameResolver.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/NameResolver.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/NameResolver.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/index.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/index.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/index.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/index.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/index.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/reverseRegistrar/index.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/root/Controllable.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/root/Controllable.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/root/Controllable.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/root/Root.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/root/Root.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/root/Root.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/root/index.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/root/index.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/root/index.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/utils/index.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/utils/index.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/utils/index.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/wrapper/Controllable.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/wrapper/Controllable.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/wrapper/Controllable.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper.js create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/wrapper/index.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/wrapper/index.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/contracts/wrapper/index.js create mode 100644 dist/types/@ensdomains/ens-contracts/index.d.ts create mode 100644 dist/types/@ensdomains/ens-contracts/index.d.ts.map create mode 100644 dist/types/@ensdomains/ens-contracts/index.js create mode 100644 dist/types/@ensdomains/index.d.ts create mode 100644 dist/types/@ensdomains/index.d.ts.map create mode 100644 dist/types/@ensdomains/index.js create mode 100644 dist/types/@openzeppelin/contracts-2.3/access/index.d.ts create mode 100644 dist/types/@openzeppelin/contracts-2.3/access/index.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-2.3/access/index.js create mode 100644 dist/types/@openzeppelin/contracts-2.3/access/roles/MinterRole.d.ts create mode 100644 dist/types/@openzeppelin/contracts-2.3/access/roles/MinterRole.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-2.3/access/roles/MinterRole.js create mode 100644 dist/types/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole.d.ts create mode 100644 dist/types/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole.js create mode 100644 dist/types/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole.d.ts create mode 100644 dist/types/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole.js create mode 100644 dist/types/@openzeppelin/contracts-2.3/access/roles/index.d.ts create mode 100644 dist/types/@openzeppelin/contracts-2.3/access/roles/index.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-2.3/access/roles/index.js create mode 100644 dist/types/@openzeppelin/contracts-2.3/index.d.ts create mode 100644 dist/types/@openzeppelin/contracts-2.3/index.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-2.3/index.js create mode 100644 dist/types/@openzeppelin/contracts-2.3/introspection/ERC165.d.ts create mode 100644 dist/types/@openzeppelin/contracts-2.3/introspection/ERC165.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-2.3/introspection/ERC165.js create mode 100644 dist/types/@openzeppelin/contracts-2.3/introspection/IERC165.d.ts create mode 100644 dist/types/@openzeppelin/contracts-2.3/introspection/IERC165.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-2.3/introspection/IERC165.js create mode 100644 dist/types/@openzeppelin/contracts-2.3/introspection/index.d.ts create mode 100644 dist/types/@openzeppelin/contracts-2.3/introspection/index.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-2.3/introspection/index.js create mode 100644 dist/types/@openzeppelin/contracts-2.3/token/ERC721/ERC721.d.ts create mode 100644 dist/types/@openzeppelin/contracts-2.3/token/ERC721/ERC721.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-2.3/token/ERC721/ERC721.js create mode 100644 dist/types/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable.d.ts create mode 100644 dist/types/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable.js create mode 100644 dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721.d.ts create mode 100644 dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721.js create mode 100644 dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata.d.ts create mode 100644 dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata.js create mode 100644 dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver.d.ts create mode 100644 dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver.js create mode 100644 dist/types/@openzeppelin/contracts-2.3/token/ERC721/index.d.ts create mode 100644 dist/types/@openzeppelin/contracts-2.3/token/ERC721/index.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-2.3/token/ERC721/index.js create mode 100644 dist/types/@openzeppelin/contracts-2.3/token/index.d.ts create mode 100644 dist/types/@openzeppelin/contracts-2.3/token/index.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-2.3/token/index.js create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable.d.ts create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable.js create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.d.ts create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.js create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable.d.ts create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable.js create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable.d.ts create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable.js create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.d.ts create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.js create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/access/index.d.ts create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/access/index.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/access/index.js create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/index.d.ts create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/index.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/index.js create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable.d.ts create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable.js create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/interfaces/index.d.ts create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/interfaces/index.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/interfaces/index.js create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/proxy/index.d.ts create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/proxy/index.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/proxy/index.js create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.d.ts create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.js create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/proxy/utils/index.d.ts create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/proxy/utils/index.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/proxy/utils/index.js create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.d.ts create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.js create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.d.ts create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.js create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/security/index.d.ts create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/security/index.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/security/index.js create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable.d.ts create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable.js create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable.d.ts create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable.js create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable.d.ts create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable.js create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable.d.ts create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable.js create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable.d.ts create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable.js create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.d.ts create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.js create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/index.d.ts create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/index.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/index.js create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/index.d.ts create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/index.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/index.js create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable.d.ts create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable.js create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/index.d.ts create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/index.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/index.js create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.d.ts create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.js create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC20/index.d.ts create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC20/index.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC20/index.js create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.d.ts create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.js create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable.d.ts create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable.js create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable.d.ts create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable.js create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable.d.ts create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable.js create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/index.d.ts create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/index.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/index.js create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/index.d.ts create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/index.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/ERC721/index.js create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/index.d.ts create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/index.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/token/index.js create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.d.ts create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.js create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable.d.ts create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable.js create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/utils/index.d.ts create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/utils/index.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/utils/index.js create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.d.ts create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.js create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable.d.ts create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable.js create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/index.d.ts create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/index.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts-upgradeable/utils/introspection/index.js create mode 100644 dist/types/@openzeppelin/contracts/access/Ownable.d.ts create mode 100644 dist/types/@openzeppelin/contracts/access/Ownable.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts/access/Ownable.js create mode 100644 dist/types/@openzeppelin/contracts/access/index.d.ts create mode 100644 dist/types/@openzeppelin/contracts/access/index.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts/access/index.js create mode 100644 dist/types/@openzeppelin/contracts/index.d.ts create mode 100644 dist/types/@openzeppelin/contracts/index.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts/index.js create mode 100644 dist/types/@openzeppelin/contracts/token/ERC1155/IERC1155.d.ts create mode 100644 dist/types/@openzeppelin/contracts/token/ERC1155/IERC1155.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts/token/ERC1155/IERC1155.js create mode 100644 dist/types/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.d.ts create mode 100644 dist/types/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.js create mode 100644 dist/types/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI.d.ts create mode 100644 dist/types/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI.js create mode 100644 dist/types/@openzeppelin/contracts/token/ERC1155/extensions/index.d.ts create mode 100644 dist/types/@openzeppelin/contracts/token/ERC1155/extensions/index.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts/token/ERC1155/extensions/index.js create mode 100644 dist/types/@openzeppelin/contracts/token/ERC1155/index.d.ts create mode 100644 dist/types/@openzeppelin/contracts/token/ERC1155/index.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts/token/ERC1155/index.js create mode 100644 dist/types/@openzeppelin/contracts/token/ERC20/ERC20.d.ts create mode 100644 dist/types/@openzeppelin/contracts/token/ERC20/ERC20.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts/token/ERC20/ERC20.js create mode 100644 dist/types/@openzeppelin/contracts/token/ERC20/IERC20.d.ts create mode 100644 dist/types/@openzeppelin/contracts/token/ERC20/IERC20.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts/token/ERC20/IERC20.js create mode 100644 dist/types/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.d.ts create mode 100644 dist/types/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.js create mode 100644 dist/types/@openzeppelin/contracts/token/ERC20/extensions/index.d.ts create mode 100644 dist/types/@openzeppelin/contracts/token/ERC20/extensions/index.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts/token/ERC20/extensions/index.js create mode 100644 dist/types/@openzeppelin/contracts/token/ERC20/index.d.ts create mode 100644 dist/types/@openzeppelin/contracts/token/ERC20/index.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts/token/ERC20/index.js create mode 100644 dist/types/@openzeppelin/contracts/token/ERC721/ERC721.d.ts create mode 100644 dist/types/@openzeppelin/contracts/token/ERC721/ERC721.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts/token/ERC721/ERC721.js create mode 100644 dist/types/@openzeppelin/contracts/token/ERC721/IERC721.d.ts create mode 100644 dist/types/@openzeppelin/contracts/token/ERC721/IERC721.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts/token/ERC721/IERC721.js create mode 100644 dist/types/@openzeppelin/contracts/token/ERC721/IERC721Receiver.d.ts create mode 100644 dist/types/@openzeppelin/contracts/token/ERC721/IERC721Receiver.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts/token/ERC721/IERC721Receiver.js create mode 100644 dist/types/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.d.ts create mode 100644 dist/types/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.js create mode 100644 dist/types/@openzeppelin/contracts/token/ERC721/extensions/index.d.ts create mode 100644 dist/types/@openzeppelin/contracts/token/ERC721/extensions/index.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts/token/ERC721/extensions/index.js create mode 100644 dist/types/@openzeppelin/contracts/token/ERC721/index.d.ts create mode 100644 dist/types/@openzeppelin/contracts/token/ERC721/index.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts/token/ERC721/index.js create mode 100644 dist/types/@openzeppelin/contracts/token/index.d.ts create mode 100644 dist/types/@openzeppelin/contracts/token/index.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts/token/index.js create mode 100644 dist/types/@openzeppelin/contracts/utils/index.d.ts create mode 100644 dist/types/@openzeppelin/contracts/utils/index.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts/utils/index.js create mode 100644 dist/types/@openzeppelin/contracts/utils/introspection/ERC165.d.ts create mode 100644 dist/types/@openzeppelin/contracts/utils/introspection/ERC165.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts/utils/introspection/ERC165.js create mode 100644 dist/types/@openzeppelin/contracts/utils/introspection/IERC165.d.ts create mode 100644 dist/types/@openzeppelin/contracts/utils/introspection/IERC165.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts/utils/introspection/IERC165.js create mode 100644 dist/types/@openzeppelin/contracts/utils/introspection/index.d.ts create mode 100644 dist/types/@openzeppelin/contracts/utils/introspection/index.d.ts.map create mode 100644 dist/types/@openzeppelin/contracts/utils/introspection/index.js create mode 100644 dist/types/@openzeppelin/index.d.ts create mode 100644 dist/types/@openzeppelin/index.d.ts.map create mode 100644 dist/types/@openzeppelin/index.js create mode 100644 dist/types/common.d.ts create mode 100644 dist/types/common.d.ts.map create mode 100644 dist/types/common.js create mode 100644 dist/types/contracts/@ens/LegacyENSRegistry.sol/LegacyENS.d.ts create mode 100644 dist/types/contracts/@ens/LegacyENSRegistry.sol/LegacyENS.d.ts.map create mode 100644 dist/types/contracts/@ens/LegacyENSRegistry.sol/LegacyENS.js create mode 100644 dist/types/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry.d.ts create mode 100644 dist/types/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry.d.ts.map create mode 100644 dist/types/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry.js create mode 100644 dist/types/contracts/@ens/LegacyENSRegistry.sol/index.d.ts create mode 100644 dist/types/contracts/@ens/LegacyENSRegistry.sol/index.d.ts.map create mode 100644 dist/types/contracts/@ens/LegacyENSRegistry.sol/index.js create mode 100644 dist/types/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar.d.ts create mode 100644 dist/types/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar.d.ts.map create mode 100644 dist/types/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar.js create mode 100644 dist/types/contracts/@ens/LegacyETHRegistrarController.sol/ENS.d.ts create mode 100644 dist/types/contracts/@ens/LegacyETHRegistrarController.sol/ENS.d.ts.map create mode 100644 dist/types/contracts/@ens/LegacyETHRegistrarController.sol/ENS.js create mode 100644 dist/types/contracts/@ens/LegacyETHRegistrarController.sol/IERC165.d.ts create mode 100644 dist/types/contracts/@ens/LegacyETHRegistrarController.sol/IERC165.d.ts.map create mode 100644 dist/types/contracts/@ens/LegacyETHRegistrarController.sol/IERC165.js create mode 100644 dist/types/contracts/@ens/LegacyETHRegistrarController.sol/IERC721.d.ts create mode 100644 dist/types/contracts/@ens/LegacyETHRegistrarController.sol/IERC721.d.ts.map create mode 100644 dist/types/contracts/@ens/LegacyETHRegistrarController.sol/IERC721.js create mode 100644 dist/types/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController.d.ts create mode 100644 dist/types/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController.d.ts.map create mode 100644 dist/types/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController.js create mode 100644 dist/types/contracts/@ens/LegacyETHRegistrarController.sol/Ownable.d.ts create mode 100644 dist/types/contracts/@ens/LegacyETHRegistrarController.sol/Ownable.d.ts.map create mode 100644 dist/types/contracts/@ens/LegacyETHRegistrarController.sol/Ownable.js create mode 100644 dist/types/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle.d.ts create mode 100644 dist/types/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle.d.ts.map create mode 100644 dist/types/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle.js create mode 100644 dist/types/contracts/@ens/LegacyETHRegistrarController.sol/Resolver.d.ts create mode 100644 dist/types/contracts/@ens/LegacyETHRegistrarController.sol/Resolver.d.ts.map create mode 100644 dist/types/contracts/@ens/LegacyETHRegistrarController.sol/Resolver.js create mode 100644 dist/types/contracts/@ens/LegacyETHRegistrarController.sol/index.d.ts create mode 100644 dist/types/contracts/@ens/LegacyETHRegistrarController.sol/index.d.ts.map create mode 100644 dist/types/contracts/@ens/LegacyETHRegistrarController.sol/index.js create mode 100644 dist/types/contracts/@ens/dnssec/DNSRegistrar.d.ts create mode 100644 dist/types/contracts/@ens/dnssec/DNSRegistrar.d.ts.map create mode 100644 dist/types/contracts/@ens/dnssec/DNSRegistrar.js create mode 100644 dist/types/contracts/@ens/dnssec/DNSSEC.d.ts create mode 100644 dist/types/contracts/@ens/dnssec/DNSSEC.d.ts.map create mode 100644 dist/types/contracts/@ens/dnssec/DNSSEC.js create mode 100644 dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl.d.ts create mode 100644 dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl.d.ts.map create mode 100644 dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl.js create mode 100644 dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/Owned.d.ts create mode 100644 dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/Owned.d.ts.map create mode 100644 dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/Owned.js create mode 100644 dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/index.d.ts create mode 100644 dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/index.d.ts.map create mode 100644 dist/types/contracts/@ens/dnssec/DNSSECImpl.sol/index.js create mode 100644 dist/types/contracts/@ens/dnssec/TLDPublicSuffixList.d.ts create mode 100644 dist/types/contracts/@ens/dnssec/TLDPublicSuffixList.d.ts.map create mode 100644 dist/types/contracts/@ens/dnssec/TLDPublicSuffixList.js create mode 100644 dist/types/contracts/@ens/dnssec/algorithms/DummyAlgorithm.d.ts create mode 100644 dist/types/contracts/@ens/dnssec/algorithms/DummyAlgorithm.d.ts.map create mode 100644 dist/types/contracts/@ens/dnssec/algorithms/DummyAlgorithm.js create mode 100644 dist/types/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm.d.ts create mode 100644 dist/types/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm.d.ts.map create mode 100644 dist/types/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm.js create mode 100644 dist/types/contracts/@ens/dnssec/algorithms/index.d.ts create mode 100644 dist/types/contracts/@ens/dnssec/algorithms/index.d.ts.map create mode 100644 dist/types/contracts/@ens/dnssec/algorithms/index.js create mode 100644 dist/types/contracts/@ens/dnssec/digests/SHA1Digest.d.ts create mode 100644 dist/types/contracts/@ens/dnssec/digests/SHA1Digest.d.ts.map create mode 100644 dist/types/contracts/@ens/dnssec/digests/SHA1Digest.js create mode 100644 dist/types/contracts/@ens/dnssec/digests/SHA1NSEC3Digest.d.ts create mode 100644 dist/types/contracts/@ens/dnssec/digests/SHA1NSEC3Digest.d.ts.map create mode 100644 dist/types/contracts/@ens/dnssec/digests/SHA1NSEC3Digest.js create mode 100644 dist/types/contracts/@ens/dnssec/digests/SHA256Digest.d.ts create mode 100644 dist/types/contracts/@ens/dnssec/digests/SHA256Digest.d.ts.map create mode 100644 dist/types/contracts/@ens/dnssec/digests/SHA256Digest.js create mode 100644 dist/types/contracts/@ens/dnssec/digests/index.d.ts create mode 100644 dist/types/contracts/@ens/dnssec/digests/index.d.ts.map create mode 100644 dist/types/contracts/@ens/dnssec/digests/index.js create mode 100644 dist/types/contracts/@ens/dnssec/index.d.ts create mode 100644 dist/types/contracts/@ens/dnssec/index.d.ts.map create mode 100644 dist/types/contracts/@ens/dnssec/index.js create mode 100644 dist/types/contracts/@ens/dnssec/interfaces/Algorithm.d.ts create mode 100644 dist/types/contracts/@ens/dnssec/interfaces/Algorithm.d.ts.map create mode 100644 dist/types/contracts/@ens/dnssec/interfaces/Algorithm.js create mode 100644 dist/types/contracts/@ens/dnssec/interfaces/Digest.d.ts create mode 100644 dist/types/contracts/@ens/dnssec/interfaces/Digest.d.ts.map create mode 100644 dist/types/contracts/@ens/dnssec/interfaces/Digest.js create mode 100644 dist/types/contracts/@ens/dnssec/interfaces/IDNSRegistrar.d.ts create mode 100644 dist/types/contracts/@ens/dnssec/interfaces/IDNSRegistrar.d.ts.map create mode 100644 dist/types/contracts/@ens/dnssec/interfaces/IDNSRegistrar.js create mode 100644 dist/types/contracts/@ens/dnssec/interfaces/NSEC3Digest.d.ts create mode 100644 dist/types/contracts/@ens/dnssec/interfaces/NSEC3Digest.d.ts.map create mode 100644 dist/types/contracts/@ens/dnssec/interfaces/NSEC3Digest.js create mode 100644 dist/types/contracts/@ens/dnssec/interfaces/PublicSuffixList.d.ts create mode 100644 dist/types/contracts/@ens/dnssec/interfaces/PublicSuffixList.d.ts.map create mode 100644 dist/types/contracts/@ens/dnssec/interfaces/PublicSuffixList.js create mode 100644 dist/types/contracts/@ens/dnssec/interfaces/index.d.ts create mode 100644 dist/types/contracts/@ens/dnssec/interfaces/index.d.ts.map create mode 100644 dist/types/contracts/@ens/dnssec/interfaces/index.js create mode 100644 dist/types/contracts/@ens/dnssec/libraries/SHA1.d.ts create mode 100644 dist/types/contracts/@ens/dnssec/libraries/SHA1.d.ts.map create mode 100644 dist/types/contracts/@ens/dnssec/libraries/SHA1.js create mode 100644 dist/types/contracts/@ens/dnssec/libraries/index.d.ts create mode 100644 dist/types/contracts/@ens/dnssec/libraries/index.d.ts.map create mode 100644 dist/types/contracts/@ens/dnssec/libraries/index.js create mode 100644 dist/types/contracts/@ens/index.d.ts create mode 100644 dist/types/contracts/@ens/index.d.ts.map create mode 100644 dist/types/contracts/@ens/index.js create mode 100644 dist/types/contracts/@maticnetwork/IChildToken.d.ts create mode 100644 dist/types/contracts/@maticnetwork/IChildToken.d.ts.map create mode 100644 dist/types/contracts/@maticnetwork/IChildToken.js create mode 100644 dist/types/contracts/@maticnetwork/IMintableERC721.d.ts create mode 100644 dist/types/contracts/@maticnetwork/IMintableERC721.d.ts.map create mode 100644 dist/types/contracts/@maticnetwork/IMintableERC721.js create mode 100644 dist/types/contracts/@maticnetwork/IRootChainManager.d.ts create mode 100644 dist/types/contracts/@maticnetwork/IRootChainManager.d.ts.map create mode 100644 dist/types/contracts/@maticnetwork/IRootChainManager.js create mode 100644 dist/types/contracts/@maticnetwork/RootChainManagerStorage.d.ts create mode 100644 dist/types/contracts/@maticnetwork/RootChainManagerStorage.d.ts.map create mode 100644 dist/types/contracts/@maticnetwork/RootChainManagerStorage.js create mode 100644 dist/types/contracts/@maticnetwork/index.d.ts create mode 100644 dist/types/contracts/@maticnetwork/index.d.ts.map create mode 100644 dist/types/contracts/@maticnetwork/index.js create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender.d.ts create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender.d.ts.map create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender.js create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender.d.ts create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender.d.ts.map create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender.js create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/index.d.ts create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/index.d.ts.map create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/index.js create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl.d.ts create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl.d.ts.map create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl.js create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin.d.ts create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin.d.ts.map create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin.js create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC165.d.ts create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC165.d.ts.map create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC165.js create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721.d.ts create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721.d.ts.map create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721.js create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721Receiver.d.ts create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721Receiver.d.ts.map create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721Receiver.js create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IMintableERC721.d.ts create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IMintableERC721.d.ts.map create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IMintableERC721.js create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate.d.ts create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate.d.ts.map create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate.js create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate.d.ts create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate.d.ts.map create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate.js create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/index.d.ts create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/index.d.ts.map create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/index.js create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControl.d.ts create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControl.d.ts.map create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControl.js create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControlMixin.d.ts create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControlMixin.d.ts.map create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControlMixin.js create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base.d.ts create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base.d.ts.map create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base.js create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager.d.ts create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager.d.ts.map create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager.js create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IRootChainManager.d.ts create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IRootChainManager.d.ts.map create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IRootChainManager.js create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IStateSender.d.ts create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IStateSender.d.ts.map create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IStateSender.js create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ITokenPredicate.d.ts create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ITokenPredicate.d.ts.map create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ITokenPredicate.js create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction.d.ts create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction.d.ts.map create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction.js create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager.d.ts create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager.d.ts.map create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager.js create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage.d.ts create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage.d.ts.map create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage.js create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/index.d.ts create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/index.d.ts.map create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/RootChainManager.sol/index.js create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/ICheckpointManager.d.ts create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/ICheckpointManager.d.ts.map create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/ICheckpointManager.js create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain.d.ts create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain.d.ts.map create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain.js create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager.d.ts create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager.d.ts.map create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager.js create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/index.d.ts create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/index.d.ts.map create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/index.js create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/index.d.ts create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/index.d.ts.map create mode 100644 dist/types/contracts/@maticnetwork/pos-portal/index.js create mode 100644 dist/types/contracts/ChildRegistry.d.ts create mode 100644 dist/types/contracts/ChildRegistry.d.ts.map create mode 100644 dist/types/contracts/ChildRegistry.js create mode 100644 dist/types/contracts/DotCoinBurner.d.ts create mode 100644 dist/types/contracts/DotCoinBurner.d.ts.map create mode 100644 dist/types/contracts/DotCoinBurner.js create mode 100644 dist/types/contracts/IAddressReader.d.ts create mode 100644 dist/types/contracts/IAddressReader.d.ts.map create mode 100644 dist/types/contracts/IAddressReader.js create mode 100644 dist/types/contracts/IDataReader.d.ts create mode 100644 dist/types/contracts/IDataReader.d.ts.map create mode 100644 dist/types/contracts/IDataReader.js create mode 100644 dist/types/contracts/IERC1967.d.ts create mode 100644 dist/types/contracts/IERC1967.d.ts.map create mode 100644 dist/types/contracts/IERC1967.js create mode 100644 dist/types/contracts/IMintingManager.d.ts create mode 100644 dist/types/contracts/IMintingManager.d.ts.map create mode 100644 dist/types/contracts/IMintingManager.js create mode 100644 dist/types/contracts/IRecordReader.d.ts create mode 100644 dist/types/contracts/IRecordReader.d.ts.map create mode 100644 dist/types/contracts/IRecordReader.js create mode 100644 dist/types/contracts/IRecordStorage.d.ts create mode 100644 dist/types/contracts/IRecordStorage.d.ts.map create mode 100644 dist/types/contracts/IRecordStorage.js create mode 100644 dist/types/contracts/IRegistryReader.d.ts create mode 100644 dist/types/contracts/IRegistryReader.d.ts.map create mode 100644 dist/types/contracts/IRegistryReader.js create mode 100644 dist/types/contracts/IReverseRegistry.d.ts create mode 100644 dist/types/contracts/IReverseRegistry.d.ts.map create mode 100644 dist/types/contracts/IReverseRegistry.js create mode 100644 dist/types/contracts/IRootRegistry.d.ts create mode 100644 dist/types/contracts/IRootRegistry.d.ts.map create mode 100644 dist/types/contracts/IRootRegistry.js create mode 100644 dist/types/contracts/IUNSRegistry.d.ts create mode 100644 dist/types/contracts/IUNSRegistry.d.ts.map create mode 100644 dist/types/contracts/IUNSRegistry.js create mode 100644 dist/types/contracts/KeyStorage.d.ts create mode 100644 dist/types/contracts/KeyStorage.d.ts.map create mode 100644 dist/types/contracts/KeyStorage.js create mode 100644 dist/types/contracts/MintingManager.d.ts create mode 100644 dist/types/contracts/MintingManager.d.ts.map create mode 100644 dist/types/contracts/MintingManager.js create mode 100644 dist/types/contracts/ProxyReader.d.ts create mode 100644 dist/types/contracts/ProxyReader.d.ts.map create mode 100644 dist/types/contracts/ProxyReader.js create mode 100644 dist/types/contracts/RecordStorage.d.ts create mode 100644 dist/types/contracts/RecordStorage.d.ts.map create mode 100644 dist/types/contracts/RecordStorage.js create mode 100644 dist/types/contracts/RootRegistry.d.ts create mode 100644 dist/types/contracts/RootRegistry.d.ts.map create mode 100644 dist/types/contracts/RootRegistry.js create mode 100644 dist/types/contracts/UNSOperator.d.ts create mode 100644 dist/types/contracts/UNSOperator.d.ts.map create mode 100644 dist/types/contracts/UNSOperator.js create mode 100644 dist/types/contracts/UNSRegistry.d.ts create mode 100644 dist/types/contracts/UNSRegistry.d.ts.map create mode 100644 dist/types/contracts/UNSRegistry.js create mode 100644 dist/types/contracts/cns/ICNSRegistry.d.ts create mode 100644 dist/types/contracts/cns/ICNSRegistry.d.ts.map create mode 100644 dist/types/contracts/cns/ICNSRegistry.js create mode 100644 dist/types/contracts/cns/IMintingController.d.ts create mode 100644 dist/types/contracts/cns/IMintingController.d.ts.map create mode 100644 dist/types/contracts/cns/IMintingController.js create mode 100644 dist/types/contracts/cns/IResolver.d.ts create mode 100644 dist/types/contracts/cns/IResolver.d.ts.map create mode 100644 dist/types/contracts/cns/IResolver.js create mode 100644 dist/types/contracts/cns/IURIPrefixController.d.ts create mode 100644 dist/types/contracts/cns/IURIPrefixController.d.ts.map create mode 100644 dist/types/contracts/cns/IURIPrefixController.js create mode 100644 dist/types/contracts/cns/index.d.ts create mode 100644 dist/types/contracts/cns/index.d.ts.map create mode 100644 dist/types/contracts/cns/index.js create mode 100644 dist/types/contracts/custody/ENSCustody.d.ts create mode 100644 dist/types/contracts/custody/ENSCustody.d.ts.map create mode 100644 dist/types/contracts/custody/ENSCustody.js create mode 100644 dist/types/contracts/custody/IENSCustody.d.ts create mode 100644 dist/types/contracts/custody/IENSCustody.d.ts.map create mode 100644 dist/types/contracts/custody/IENSCustody.js create mode 100644 dist/types/contracts/custody/ZilliqaRecover.d.ts create mode 100644 dist/types/contracts/custody/ZilliqaRecover.d.ts.map create mode 100644 dist/types/contracts/custody/ZilliqaRecover.js create mode 100644 dist/types/contracts/custody/index.d.ts create mode 100644 dist/types/contracts/custody/index.d.ts.map create mode 100644 dist/types/contracts/custody/index.js create mode 100644 dist/types/contracts/history/IUNSRegistryV07.d.ts create mode 100644 dist/types/contracts/history/IUNSRegistryV07.d.ts.map create mode 100644 dist/types/contracts/history/IUNSRegistryV07.js create mode 100644 dist/types/contracts/history/ProxyReaderV04.d.ts create mode 100644 dist/types/contracts/history/ProxyReaderV04.d.ts.map create mode 100644 dist/types/contracts/history/ProxyReaderV04.js create mode 100644 dist/types/contracts/history/UNSRegistryV07.d.ts create mode 100644 dist/types/contracts/history/UNSRegistryV07.d.ts.map create mode 100644 dist/types/contracts/history/UNSRegistryV07.js create mode 100644 dist/types/contracts/history/index.d.ts create mode 100644 dist/types/contracts/history/index.d.ts.map create mode 100644 dist/types/contracts/history/index.js create mode 100644 dist/types/contracts/index.d.ts create mode 100644 dist/types/contracts/index.d.ts.map create mode 100644 dist/types/contracts/index.js create mode 100644 dist/types/contracts/metatx/BaseForwarder.d.ts create mode 100644 dist/types/contracts/metatx/BaseForwarder.d.ts.map create mode 100644 dist/types/contracts/metatx/BaseForwarder.js create mode 100644 dist/types/contracts/metatx/BaseRoutingForwarder.d.ts create mode 100644 dist/types/contracts/metatx/BaseRoutingForwarder.d.ts.map create mode 100644 dist/types/contracts/metatx/BaseRoutingForwarder.js create mode 100644 dist/types/contracts/metatx/CNSRegistryForwarder.d.ts create mode 100644 dist/types/contracts/metatx/CNSRegistryForwarder.d.ts.map create mode 100644 dist/types/contracts/metatx/CNSRegistryForwarder.js create mode 100644 dist/types/contracts/metatx/ERC2771Context.d.ts create mode 100644 dist/types/contracts/metatx/ERC2771Context.d.ts.map create mode 100644 dist/types/contracts/metatx/ERC2771Context.js create mode 100644 dist/types/contracts/metatx/ERC2771RegistryContext.d.ts create mode 100644 dist/types/contracts/metatx/ERC2771RegistryContext.d.ts.map create mode 100644 dist/types/contracts/metatx/ERC2771RegistryContext.js create mode 100644 dist/types/contracts/metatx/Forwarder.d.ts create mode 100644 dist/types/contracts/metatx/Forwarder.d.ts.map create mode 100644 dist/types/contracts/metatx/Forwarder.js create mode 100644 dist/types/contracts/metatx/IForwarder.d.ts create mode 100644 dist/types/contracts/metatx/IForwarder.d.ts.map create mode 100644 dist/types/contracts/metatx/IForwarder.js create mode 100644 dist/types/contracts/metatx/MintingManagerForwarder.d.ts create mode 100644 dist/types/contracts/metatx/MintingManagerForwarder.d.ts.map create mode 100644 dist/types/contracts/metatx/MintingManagerForwarder.js create mode 100644 dist/types/contracts/metatx/ResolverForwarder.d.ts create mode 100644 dist/types/contracts/metatx/ResolverForwarder.d.ts.map create mode 100644 dist/types/contracts/metatx/ResolverForwarder.js create mode 100644 dist/types/contracts/metatx/UNSRegistryForwarder.d.ts create mode 100644 dist/types/contracts/metatx/UNSRegistryForwarder.d.ts.map create mode 100644 dist/types/contracts/metatx/UNSRegistryForwarder.js create mode 100644 dist/types/contracts/metatx/index.d.ts create mode 100644 dist/types/contracts/metatx/index.d.ts.map create mode 100644 dist/types/contracts/metatx/index.js create mode 100644 dist/types/contracts/mocks/BaseForwarderMock.d.ts create mode 100644 dist/types/contracts/mocks/BaseForwarderMock.d.ts.map create mode 100644 dist/types/contracts/mocks/BaseForwarderMock.js create mode 100644 dist/types/contracts/mocks/BaseRoutingForwarderMock.d.ts create mode 100644 dist/types/contracts/mocks/BaseRoutingForwarderMock.d.ts.map create mode 100644 dist/types/contracts/mocks/BaseRoutingForwarderMock.js create mode 100644 dist/types/contracts/mocks/ERC1155Mock.d.ts create mode 100644 dist/types/contracts/mocks/ERC1155Mock.d.ts.map create mode 100644 dist/types/contracts/mocks/ERC1155Mock.js create mode 100644 dist/types/contracts/mocks/ERC20Mock.d.ts create mode 100644 dist/types/contracts/mocks/ERC20Mock.d.ts.map create mode 100644 dist/types/contracts/mocks/ERC20Mock.js create mode 100644 dist/types/contracts/mocks/ERC20UnsafeMock.d.ts create mode 100644 dist/types/contracts/mocks/ERC20UnsafeMock.d.ts.map create mode 100644 dist/types/contracts/mocks/ERC20UnsafeMock.js create mode 100644 dist/types/contracts/mocks/ERC2771ContextMock.d.ts create mode 100644 dist/types/contracts/mocks/ERC2771ContextMock.d.ts.map create mode 100644 dist/types/contracts/mocks/ERC2771ContextMock.js create mode 100644 dist/types/contracts/mocks/ERC2771RegistryContextMock.d.ts create mode 100644 dist/types/contracts/mocks/ERC2771RegistryContextMock.d.ts.map create mode 100644 dist/types/contracts/mocks/ERC2771RegistryContextMock.js create mode 100644 dist/types/contracts/mocks/ERC721Mock.d.ts create mode 100644 dist/types/contracts/mocks/ERC721Mock.d.ts.map create mode 100644 dist/types/contracts/mocks/ERC721Mock.js create mode 100644 dist/types/contracts/mocks/ERC721ReceiverMock.d.ts create mode 100644 dist/types/contracts/mocks/ERC721ReceiverMock.d.ts.map create mode 100644 dist/types/contracts/mocks/ERC721ReceiverMock.js create mode 100644 dist/types/contracts/mocks/MinterRoleMock.d.ts create mode 100644 dist/types/contracts/mocks/MinterRoleMock.d.ts.map create mode 100644 dist/types/contracts/mocks/MinterRoleMock.js create mode 100644 dist/types/contracts/mocks/MintingManagerMock.d.ts create mode 100644 dist/types/contracts/mocks/MintingManagerMock.d.ts.map create mode 100644 dist/types/contracts/mocks/MintingManagerMock.js create mode 100644 dist/types/contracts/mocks/UNSRegistryForwarderMock.d.ts create mode 100644 dist/types/contracts/mocks/UNSRegistryForwarderMock.d.ts.map create mode 100644 dist/types/contracts/mocks/UNSRegistryForwarderMock.js create mode 100644 dist/types/contracts/mocks/UNSRegistryMock.d.ts create mode 100644 dist/types/contracts/mocks/UNSRegistryMock.d.ts.map create mode 100644 dist/types/contracts/mocks/UNSRegistryMock.js create mode 100644 dist/types/contracts/mocks/index.d.ts create mode 100644 dist/types/contracts/mocks/index.d.ts.map create mode 100644 dist/types/contracts/mocks/index.js create mode 100644 dist/types/contracts/roles/MinterRole.d.ts create mode 100644 dist/types/contracts/roles/MinterRole.d.ts.map create mode 100644 dist/types/contracts/roles/MinterRole.js create mode 100644 dist/types/contracts/roles/index.d.ts create mode 100644 dist/types/contracts/roles/index.d.ts.map create mode 100644 dist/types/contracts/roles/index.js create mode 100644 dist/types/contracts/utils/Blocklist.d.ts create mode 100644 dist/types/contracts/utils/Blocklist.d.ts.map create mode 100644 dist/types/contracts/utils/Blocklist.js create mode 100644 dist/types/contracts/utils/ERC1271SimpleWallet.d.ts create mode 100644 dist/types/contracts/utils/ERC1271SimpleWallet.d.ts.map create mode 100644 dist/types/contracts/utils/ERC1271SimpleWallet.js create mode 100644 dist/types/contracts/utils/MultiSend.d.ts create mode 100644 dist/types/contracts/utils/MultiSend.d.ts.map create mode 100644 dist/types/contracts/utils/MultiSend.js create mode 100644 dist/types/contracts/utils/Ownable.d.ts create mode 100644 dist/types/contracts/utils/Ownable.d.ts.map create mode 100644 dist/types/contracts/utils/Ownable.js create mode 100644 dist/types/contracts/utils/Pausable.d.ts create mode 100644 dist/types/contracts/utils/Pausable.d.ts.map create mode 100644 dist/types/contracts/utils/Pausable.js create mode 100644 dist/types/contracts/utils/index.d.ts create mode 100644 dist/types/contracts/utils/index.d.ts.map create mode 100644 dist/types/contracts/utils/index.js create mode 100644 dist/types/dot-crypto/contracts/CNSRegistry.d.ts create mode 100644 dist/types/dot-crypto/contracts/CNSRegistry.d.ts.map create mode 100644 dist/types/dot-crypto/contracts/CNSRegistry.js create mode 100644 dist/types/dot-crypto/contracts/ICNSRegistry.d.ts create mode 100644 dist/types/dot-crypto/contracts/ICNSRegistry.d.ts.map create mode 100644 dist/types/dot-crypto/contracts/ICNSRegistry.js create mode 100644 dist/types/dot-crypto/contracts/IRegistryReader.d.ts create mode 100644 dist/types/dot-crypto/contracts/IRegistryReader.d.ts.map create mode 100644 dist/types/dot-crypto/contracts/IRegistryReader.js create mode 100644 dist/types/dot-crypto/contracts/IResolver.d.ts create mode 100644 dist/types/dot-crypto/contracts/IResolver.d.ts.map create mode 100644 dist/types/dot-crypto/contracts/IResolver.js create mode 100644 dist/types/dot-crypto/contracts/IResolverReader.d.ts create mode 100644 dist/types/dot-crypto/contracts/IResolverReader.d.ts.map create mode 100644 dist/types/dot-crypto/contracts/IResolverReader.js create mode 100644 dist/types/dot-crypto/contracts/Resolver.d.ts create mode 100644 dist/types/dot-crypto/contracts/Resolver.d.ts.map create mode 100644 dist/types/dot-crypto/contracts/Resolver.js create mode 100644 dist/types/dot-crypto/contracts/controllers/DomainZoneController.d.ts create mode 100644 dist/types/dot-crypto/contracts/controllers/DomainZoneController.d.ts.map create mode 100644 dist/types/dot-crypto/contracts/controllers/DomainZoneController.js create mode 100644 dist/types/dot-crypto/contracts/controllers/IMintingController.d.ts create mode 100644 dist/types/dot-crypto/contracts/controllers/IMintingController.d.ts.map create mode 100644 dist/types/dot-crypto/contracts/controllers/IMintingController.js create mode 100644 dist/types/dot-crypto/contracts/controllers/ISignatureController.d.ts create mode 100644 dist/types/dot-crypto/contracts/controllers/ISignatureController.d.ts.map create mode 100644 dist/types/dot-crypto/contracts/controllers/ISignatureController.js create mode 100644 dist/types/dot-crypto/contracts/controllers/IURIPrefixController.d.ts create mode 100644 dist/types/dot-crypto/contracts/controllers/IURIPrefixController.d.ts.map create mode 100644 dist/types/dot-crypto/contracts/controllers/IURIPrefixController.js create mode 100644 dist/types/dot-crypto/contracts/controllers/MintingController.d.ts create mode 100644 dist/types/dot-crypto/contracts/controllers/MintingController.d.ts.map create mode 100644 dist/types/dot-crypto/contracts/controllers/MintingController.js create mode 100644 dist/types/dot-crypto/contracts/controllers/SignatureController.d.ts create mode 100644 dist/types/dot-crypto/contracts/controllers/SignatureController.d.ts.map create mode 100644 dist/types/dot-crypto/contracts/controllers/SignatureController.js create mode 100644 dist/types/dot-crypto/contracts/controllers/URIPrefixController.d.ts create mode 100644 dist/types/dot-crypto/contracts/controllers/URIPrefixController.d.ts.map create mode 100644 dist/types/dot-crypto/contracts/controllers/URIPrefixController.js create mode 100644 dist/types/dot-crypto/contracts/controllers/index.d.ts create mode 100644 dist/types/dot-crypto/contracts/controllers/index.d.ts.map create mode 100644 dist/types/dot-crypto/contracts/controllers/index.js create mode 100644 dist/types/dot-crypto/contracts/index.d.ts create mode 100644 dist/types/dot-crypto/contracts/index.d.ts.map create mode 100644 dist/types/dot-crypto/contracts/index.js create mode 100644 dist/types/dot-crypto/contracts/util/BulkWhitelistedRole.d.ts create mode 100644 dist/types/dot-crypto/contracts/util/BulkWhitelistedRole.d.ts.map create mode 100644 dist/types/dot-crypto/contracts/util/BulkWhitelistedRole.js create mode 100644 dist/types/dot-crypto/contracts/util/ControllerRole.d.ts create mode 100644 dist/types/dot-crypto/contracts/util/ControllerRole.d.ts.map create mode 100644 dist/types/dot-crypto/contracts/util/ControllerRole.js create mode 100644 dist/types/dot-crypto/contracts/util/FreeMinter.d.ts create mode 100644 dist/types/dot-crypto/contracts/util/FreeMinter.d.ts.map create mode 100644 dist/types/dot-crypto/contracts/util/FreeMinter.js create mode 100644 dist/types/dot-crypto/contracts/util/SignatureUtil.d.ts create mode 100644 dist/types/dot-crypto/contracts/util/SignatureUtil.d.ts.map create mode 100644 dist/types/dot-crypto/contracts/util/SignatureUtil.js create mode 100644 dist/types/dot-crypto/contracts/util/index.d.ts create mode 100644 dist/types/dot-crypto/contracts/util/index.d.ts.map create mode 100644 dist/types/dot-crypto/contracts/util/index.js create mode 100644 dist/types/dot-crypto/index.d.ts create mode 100644 dist/types/dot-crypto/index.d.ts.map create mode 100644 dist/types/dot-crypto/index.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils__factory.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils__factory.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/BytesUtils__factory.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/index.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/index.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/dnssec-oracle/index.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation__factory.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation__factory.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/BaseRegistrarImplementation__factory.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle__factory.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle__factory.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/DummyOracle__factory.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController__factory.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController__factory.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/ETHRegistrarController__factory.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar__factory.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar__factory.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IBaseRegistrar__factory.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController__factory.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController__factory.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IETHRegistrarController__factory.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle__factory.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle__factory.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/IPriceOracle__factory.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface__factory.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface__factory.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/AggregatorInterface__factory.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle__factory.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle__factory.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/StablePriceOracle__factory.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/index.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/index.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/StablePriceOracle.sol/index.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/index.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/index.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/ethregistrar/index.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/index.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/index.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/index.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/registry/ENSRegistry__factory.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/registry/ENSRegistry__factory.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/registry/ENSRegistry__factory.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/registry/ENS__factory.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/registry/ENS__factory.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/registry/ENS__factory.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/registry/index.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/registry/index.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/registry/index.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable__factory.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable__factory.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/IMulticallable__factory.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/Multicallable__factory.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/Multicallable__factory.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/Multicallable__factory.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver__factory.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver__factory.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/PublicResolver__factory.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase__factory.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase__factory.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/ResolverBase__factory.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/Resolver__factory.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/Resolver__factory.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/Resolver__factory.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/index.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/index.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/index.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver__factory.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver__factory.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ABIResolver__factory.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver__factory.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver__factory.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/AddrResolver__factory.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver__factory.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver__factory.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ContentHashResolver__factory.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver__factory.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver__factory.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/DNSResolver__factory.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver__factory.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver__factory.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IABIResolver__factory.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver__factory.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver__factory.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddrResolver__factory.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver__factory.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver__factory.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IAddressResolver__factory.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver__factory.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver__factory.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IContentHashResolver__factory.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver__factory.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver__factory.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSRecordResolver__factory.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver__factory.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver__factory.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IDNSZoneResolver__factory.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver__factory.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver__factory.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IExtendedResolver__factory.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver__factory.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver__factory.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IInterfaceResolver__factory.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver__factory.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver__factory.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/INameResolver__factory.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver__factory.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver__factory.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IPubkeyResolver__factory.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver__factory.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver__factory.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/ITextResolver__factory.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver__factory.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver__factory.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/IVersionableResolver__factory.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver__factory.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver__factory.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/InterfaceResolver__factory.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver__factory.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver__factory.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/NameResolver__factory.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver__factory.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver__factory.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/PubkeyResolver__factory.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver__factory.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver__factory.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/TextResolver__factory.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/index.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/index.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/resolvers/profiles/index.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar__factory.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar__factory.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/IReverseRegistrar__factory.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer__factory.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer__factory.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseClaimer__factory.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/NameResolver__factory.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/NameResolver__factory.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/NameResolver__factory.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar__factory.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar__factory.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/ReverseRegistrar__factory.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/index.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/index.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/ReverseRegistrar.sol/index.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/index.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/index.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/reverseRegistrar/index.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/root/Controllable__factory.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/root/Controllable__factory.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/root/Controllable__factory.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/root/Root__factory.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/root/Root__factory.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/root/Root__factory.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/root/index.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/root/index.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/root/index.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable__factory.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable__factory.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/utils/ERC20Recoverable__factory.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/utils/index.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/utils/index.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/utils/index.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/Controllable__factory.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/Controllable__factory.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/Controllable__factory.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse__factory.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse__factory.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/ERC1155Fuse__factory.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService__factory.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService__factory.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/IMetadataService__factory.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade__factory.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade__factory.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapperUpgrade__factory.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper__factory.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper__factory.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/INameWrapper__factory.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper__factory.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper__factory.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/NameWrapper__factory.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/index.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/index.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/contracts/wrapper/index.js create mode 100644 dist/types/factories/@ensdomains/ens-contracts/index.d.ts create mode 100644 dist/types/factories/@ensdomains/ens-contracts/index.d.ts.map create mode 100644 dist/types/factories/@ensdomains/ens-contracts/index.js create mode 100644 dist/types/factories/@ensdomains/index.d.ts create mode 100644 dist/types/factories/@ensdomains/index.d.ts.map create mode 100644 dist/types/factories/@ensdomains/index.js create mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/access/index.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/access/index.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/access/index.js create mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/access/roles/MinterRole__factory.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/access/roles/MinterRole__factory.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/access/roles/MinterRole__factory.js create mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole__factory.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole__factory.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/access/roles/WhitelistAdminRole__factory.js create mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole__factory.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole__factory.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/access/roles/WhitelistedRole__factory.js create mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/access/roles/index.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/access/roles/index.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/access/roles/index.js create mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/index.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/index.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/index.js create mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/introspection/ERC165__factory.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/introspection/ERC165__factory.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/introspection/ERC165__factory.js create mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/introspection/IERC165__factory.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/introspection/IERC165__factory.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/introspection/IERC165__factory.js create mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/introspection/index.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/introspection/index.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/introspection/index.js create mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable__factory.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable__factory.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721Burnable__factory.js create mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721__factory.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721__factory.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/ERC721__factory.js create mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata__factory.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata__factory.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Metadata__factory.js create mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver__factory.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver__factory.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721Receiver__factory.js create mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721__factory.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721__factory.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/IERC721__factory.js create mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/index.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/index.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/token/ERC721/index.js create mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/token/index.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/token/index.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-2.3/token/index.js create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable__factory.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable__factory.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable__factory.js create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable__factory.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable__factory.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable__factory.js create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable__factory.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable__factory.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable__factory.js create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable__factory.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable__factory.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable__factory.js create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable__factory.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable__factory.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable__factory.js create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/access/index.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/access/index.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/access/index.js create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/index.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/index.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/index.js create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable__factory.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable__factory.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable__factory.js create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/interfaces/index.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/interfaces/index.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/interfaces/index.js create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/index.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/index.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/index.js create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable__factory.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable__factory.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable__factory.js create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/index.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/index.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/index.js create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable__factory.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable__factory.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable__factory.js create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable__factory.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable__factory.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable__factory.js create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/security/index.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/security/index.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/security/index.js create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable__factory.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable__factory.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable__factory.js create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable__factory.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable__factory.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155ReceiverUpgradeable__factory.js create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable__factory.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable__factory.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/IERC1155Upgradeable__factory.js create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable__factory.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable__factory.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155BurnableUpgradeable__factory.js create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable__factory.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable__factory.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/ERC1155PausableUpgradeable__factory.js create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable__factory.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable__factory.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable__factory.js create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/index.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/index.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/extensions/index.js create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/index.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/index.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/index.js create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable__factory.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable__factory.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable__factory.js create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/index.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/index.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC1155/presets/index.js create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable__factory.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable__factory.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable__factory.js create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/index.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/index.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/index.js create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable__factory.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable__factory.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable__factory.js create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable__factory.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable__factory.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable__factory.js create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable__factory.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable__factory.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable__factory.js create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable__factory.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable__factory.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable__factory.js create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/index.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/index.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/extensions/index.js create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/index.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/index.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/ERC721/index.js create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/index.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/index.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/token/index.js create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable__factory.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable__factory.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable__factory.js create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable__factory.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable__factory.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/utils/MulticallUpgradeable__factory.js create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/utils/index.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/utils/index.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/utils/index.js create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable__factory.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable__factory.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable__factory.js create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable__factory.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable__factory.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable__factory.js create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/index.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/index.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/index.js create mode 100644 dist/types/factories/@openzeppelin/contracts/access/Ownable__factory.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts/access/Ownable__factory.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts/access/Ownable__factory.js create mode 100644 dist/types/factories/@openzeppelin/contracts/access/index.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts/access/index.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts/access/index.js create mode 100644 dist/types/factories/@openzeppelin/contracts/index.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts/index.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts/index.js create mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver__factory.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver__factory.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver__factory.js create mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC1155/IERC1155__factory.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC1155/IERC1155__factory.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC1155/IERC1155__factory.js create mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI__factory.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI__factory.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI__factory.js create mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC1155/extensions/index.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC1155/extensions/index.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC1155/extensions/index.js create mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC1155/index.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC1155/index.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC1155/index.js create mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC20/ERC20__factory.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC20/ERC20__factory.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC20/ERC20__factory.js create mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC20/IERC20__factory.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC20/IERC20__factory.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC20/IERC20__factory.js create mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata__factory.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata__factory.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata__factory.js create mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC20/extensions/index.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC20/extensions/index.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC20/extensions/index.js create mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC20/index.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC20/index.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC20/index.js create mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC721/ERC721__factory.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC721/ERC721__factory.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC721/ERC721__factory.js create mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC721/IERC721Receiver__factory.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC721/IERC721Receiver__factory.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC721/IERC721Receiver__factory.js create mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC721/IERC721__factory.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC721/IERC721__factory.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC721/IERC721__factory.js create mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata__factory.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata__factory.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata__factory.js create mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC721/extensions/index.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC721/extensions/index.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC721/extensions/index.js create mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC721/index.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC721/index.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts/token/ERC721/index.js create mode 100644 dist/types/factories/@openzeppelin/contracts/token/index.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts/token/index.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts/token/index.js create mode 100644 dist/types/factories/@openzeppelin/contracts/utils/index.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts/utils/index.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts/utils/index.js create mode 100644 dist/types/factories/@openzeppelin/contracts/utils/introspection/ERC165__factory.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts/utils/introspection/ERC165__factory.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts/utils/introspection/ERC165__factory.js create mode 100644 dist/types/factories/@openzeppelin/contracts/utils/introspection/IERC165__factory.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts/utils/introspection/IERC165__factory.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts/utils/introspection/IERC165__factory.js create mode 100644 dist/types/factories/@openzeppelin/contracts/utils/introspection/index.d.ts create mode 100644 dist/types/factories/@openzeppelin/contracts/utils/introspection/index.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/contracts/utils/introspection/index.js create mode 100644 dist/types/factories/@openzeppelin/index.d.ts create mode 100644 dist/types/factories/@openzeppelin/index.d.ts.map create mode 100644 dist/types/factories/@openzeppelin/index.js create mode 100644 dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry__factory.d.ts create mode 100644 dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry__factory.d.ts.map create mode 100644 dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENSRegistry__factory.js create mode 100644 dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENS__factory.d.ts create mode 100644 dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENS__factory.d.ts.map create mode 100644 dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/LegacyENS__factory.js create mode 100644 dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/index.d.ts create mode 100644 dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/index.d.ts.map create mode 100644 dist/types/factories/contracts/@ens/LegacyENSRegistry.sol/index.js create mode 100644 dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar__factory.d.ts create mode 100644 dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar__factory.d.ts.map create mode 100644 dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/BaseRegistrar__factory.js create mode 100644 dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/ENS__factory.d.ts create mode 100644 dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/ENS__factory.d.ts.map create mode 100644 dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/ENS__factory.js create mode 100644 dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/IERC165__factory.d.ts create mode 100644 dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/IERC165__factory.d.ts.map create mode 100644 dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/IERC165__factory.js create mode 100644 dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/IERC721__factory.d.ts create mode 100644 dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/IERC721__factory.d.ts.map create mode 100644 dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/IERC721__factory.js create mode 100644 dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController__factory.d.ts create mode 100644 dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController__factory.d.ts.map create mode 100644 dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/LegacyETHRegistrarController__factory.js create mode 100644 dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/Ownable__factory.d.ts create mode 100644 dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/Ownable__factory.d.ts.map create mode 100644 dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/Ownable__factory.js create mode 100644 dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle__factory.d.ts create mode 100644 dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle__factory.d.ts.map create mode 100644 dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/PriceOracle__factory.js create mode 100644 dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/Resolver__factory.d.ts create mode 100644 dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/Resolver__factory.d.ts.map create mode 100644 dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/Resolver__factory.js create mode 100644 dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/index.d.ts create mode 100644 dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/index.d.ts.map create mode 100644 dist/types/factories/contracts/@ens/LegacyETHRegistrarController.sol/index.js create mode 100644 dist/types/factories/contracts/@ens/dnssec/DNSRegistrar__factory.d.ts create mode 100644 dist/types/factories/contracts/@ens/dnssec/DNSRegistrar__factory.d.ts.map create mode 100644 dist/types/factories/contracts/@ens/dnssec/DNSRegistrar__factory.js create mode 100644 dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl__factory.d.ts create mode 100644 dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl__factory.d.ts.map create mode 100644 dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/DNSSECImpl__factory.js create mode 100644 dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/Owned__factory.d.ts create mode 100644 dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/Owned__factory.d.ts.map create mode 100644 dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/Owned__factory.js create mode 100644 dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/index.d.ts create mode 100644 dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/index.d.ts.map create mode 100644 dist/types/factories/contracts/@ens/dnssec/DNSSECImpl.sol/index.js create mode 100644 dist/types/factories/contracts/@ens/dnssec/DNSSEC__factory.d.ts create mode 100644 dist/types/factories/contracts/@ens/dnssec/DNSSEC__factory.d.ts.map create mode 100644 dist/types/factories/contracts/@ens/dnssec/DNSSEC__factory.js create mode 100644 dist/types/factories/contracts/@ens/dnssec/TLDPublicSuffixList__factory.d.ts create mode 100644 dist/types/factories/contracts/@ens/dnssec/TLDPublicSuffixList__factory.d.ts.map create mode 100644 dist/types/factories/contracts/@ens/dnssec/TLDPublicSuffixList__factory.js create mode 100644 dist/types/factories/contracts/@ens/dnssec/algorithms/DummyAlgorithm__factory.d.ts create mode 100644 dist/types/factories/contracts/@ens/dnssec/algorithms/DummyAlgorithm__factory.d.ts.map create mode 100644 dist/types/factories/contracts/@ens/dnssec/algorithms/DummyAlgorithm__factory.js create mode 100644 dist/types/factories/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm__factory.d.ts create mode 100644 dist/types/factories/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm__factory.d.ts.map create mode 100644 dist/types/factories/contracts/@ens/dnssec/algorithms/RSASHA256Algorithm__factory.js create mode 100644 dist/types/factories/contracts/@ens/dnssec/algorithms/index.d.ts create mode 100644 dist/types/factories/contracts/@ens/dnssec/algorithms/index.d.ts.map create mode 100644 dist/types/factories/contracts/@ens/dnssec/algorithms/index.js create mode 100644 dist/types/factories/contracts/@ens/dnssec/digests/SHA1Digest__factory.d.ts create mode 100644 dist/types/factories/contracts/@ens/dnssec/digests/SHA1Digest__factory.d.ts.map create mode 100644 dist/types/factories/contracts/@ens/dnssec/digests/SHA1Digest__factory.js create mode 100644 dist/types/factories/contracts/@ens/dnssec/digests/SHA1NSEC3Digest__factory.d.ts create mode 100644 dist/types/factories/contracts/@ens/dnssec/digests/SHA1NSEC3Digest__factory.d.ts.map create mode 100644 dist/types/factories/contracts/@ens/dnssec/digests/SHA1NSEC3Digest__factory.js create mode 100644 dist/types/factories/contracts/@ens/dnssec/digests/SHA256Digest__factory.d.ts create mode 100644 dist/types/factories/contracts/@ens/dnssec/digests/SHA256Digest__factory.d.ts.map create mode 100644 dist/types/factories/contracts/@ens/dnssec/digests/SHA256Digest__factory.js create mode 100644 dist/types/factories/contracts/@ens/dnssec/digests/index.d.ts create mode 100644 dist/types/factories/contracts/@ens/dnssec/digests/index.d.ts.map create mode 100644 dist/types/factories/contracts/@ens/dnssec/digests/index.js create mode 100644 dist/types/factories/contracts/@ens/dnssec/index.d.ts create mode 100644 dist/types/factories/contracts/@ens/dnssec/index.d.ts.map create mode 100644 dist/types/factories/contracts/@ens/dnssec/index.js create mode 100644 dist/types/factories/contracts/@ens/dnssec/interfaces/Algorithm__factory.d.ts create mode 100644 dist/types/factories/contracts/@ens/dnssec/interfaces/Algorithm__factory.d.ts.map create mode 100644 dist/types/factories/contracts/@ens/dnssec/interfaces/Algorithm__factory.js create mode 100644 dist/types/factories/contracts/@ens/dnssec/interfaces/Digest__factory.d.ts create mode 100644 dist/types/factories/contracts/@ens/dnssec/interfaces/Digest__factory.d.ts.map create mode 100644 dist/types/factories/contracts/@ens/dnssec/interfaces/Digest__factory.js create mode 100644 dist/types/factories/contracts/@ens/dnssec/interfaces/IDNSRegistrar__factory.d.ts create mode 100644 dist/types/factories/contracts/@ens/dnssec/interfaces/IDNSRegistrar__factory.d.ts.map create mode 100644 dist/types/factories/contracts/@ens/dnssec/interfaces/IDNSRegistrar__factory.js create mode 100644 dist/types/factories/contracts/@ens/dnssec/interfaces/NSEC3Digest__factory.d.ts create mode 100644 dist/types/factories/contracts/@ens/dnssec/interfaces/NSEC3Digest__factory.d.ts.map create mode 100644 dist/types/factories/contracts/@ens/dnssec/interfaces/NSEC3Digest__factory.js create mode 100644 dist/types/factories/contracts/@ens/dnssec/interfaces/PublicSuffixList__factory.d.ts create mode 100644 dist/types/factories/contracts/@ens/dnssec/interfaces/PublicSuffixList__factory.d.ts.map create mode 100644 dist/types/factories/contracts/@ens/dnssec/interfaces/PublicSuffixList__factory.js create mode 100644 dist/types/factories/contracts/@ens/dnssec/interfaces/index.d.ts create mode 100644 dist/types/factories/contracts/@ens/dnssec/interfaces/index.d.ts.map create mode 100644 dist/types/factories/contracts/@ens/dnssec/interfaces/index.js create mode 100644 dist/types/factories/contracts/@ens/dnssec/libraries/SHA1__factory.d.ts create mode 100644 dist/types/factories/contracts/@ens/dnssec/libraries/SHA1__factory.d.ts.map create mode 100644 dist/types/factories/contracts/@ens/dnssec/libraries/SHA1__factory.js create mode 100644 dist/types/factories/contracts/@ens/dnssec/libraries/index.d.ts create mode 100644 dist/types/factories/contracts/@ens/dnssec/libraries/index.d.ts.map create mode 100644 dist/types/factories/contracts/@ens/dnssec/libraries/index.js create mode 100644 dist/types/factories/contracts/@ens/index.d.ts create mode 100644 dist/types/factories/contracts/@ens/index.d.ts.map create mode 100644 dist/types/factories/contracts/@ens/index.js create mode 100644 dist/types/factories/contracts/@maticnetwork/IChildToken__factory.d.ts create mode 100644 dist/types/factories/contracts/@maticnetwork/IChildToken__factory.d.ts.map create mode 100644 dist/types/factories/contracts/@maticnetwork/IChildToken__factory.js create mode 100644 dist/types/factories/contracts/@maticnetwork/IMintableERC721__factory.d.ts create mode 100644 dist/types/factories/contracts/@maticnetwork/IMintableERC721__factory.d.ts.map create mode 100644 dist/types/factories/contracts/@maticnetwork/IMintableERC721__factory.js create mode 100644 dist/types/factories/contracts/@maticnetwork/IRootChainManager__factory.d.ts create mode 100644 dist/types/factories/contracts/@maticnetwork/IRootChainManager__factory.d.ts.map create mode 100644 dist/types/factories/contracts/@maticnetwork/IRootChainManager__factory.js create mode 100644 dist/types/factories/contracts/@maticnetwork/RootChainManagerStorage__factory.d.ts create mode 100644 dist/types/factories/contracts/@maticnetwork/RootChainManagerStorage__factory.d.ts.map create mode 100644 dist/types/factories/contracts/@maticnetwork/RootChainManagerStorage__factory.js create mode 100644 dist/types/factories/contracts/@maticnetwork/index.d.ts create mode 100644 dist/types/factories/contracts/@maticnetwork/index.d.ts.map create mode 100644 dist/types/factories/contracts/@maticnetwork/index.js create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender__factory.d.ts create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender__factory.d.ts.map create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/DummyStateSender__factory.js create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender__factory.d.ts create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender__factory.d.ts.map create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/IStateSender__factory.js create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/index.d.ts create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/index.d.ts.map create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/DummyStateSender.sol/index.js create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin__factory.d.ts create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin__factory.d.ts.map create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControlMixin__factory.js create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl__factory.d.ts create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl__factory.d.ts.map create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/AccessControl__factory.js create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC165__factory.d.ts create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC165__factory.d.ts.map create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC165__factory.js create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721Receiver__factory.d.ts create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721Receiver__factory.d.ts.map create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721Receiver__factory.js create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721__factory.d.ts create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721__factory.d.ts.map create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IERC721__factory.js create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IMintableERC721__factory.d.ts create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IMintableERC721__factory.d.ts.map create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/IMintableERC721__factory.js create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate__factory.d.ts create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate__factory.d.ts.map create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/ITokenPredicate__factory.js create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate__factory.d.ts create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate__factory.d.ts.map create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/MintableERC721Predicate__factory.js create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/index.d.ts create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/index.d.ts.map create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/MintableERC721Predicate.sol/index.js create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControlMixin__factory.d.ts create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControlMixin__factory.d.ts.map create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControlMixin__factory.js create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControl__factory.d.ts create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControl__factory.d.ts.map create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/AccessControl__factory.js create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base__factory.d.ts create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base__factory.d.ts.map create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/EIP712Base__factory.js create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager__factory.d.ts create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager__factory.d.ts.map create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ICheckpointManager__factory.js create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IRootChainManager__factory.d.ts create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IRootChainManager__factory.d.ts.map create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IRootChainManager__factory.js create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IStateSender__factory.d.ts create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IStateSender__factory.d.ts.map create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/IStateSender__factory.js create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ITokenPredicate__factory.d.ts create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ITokenPredicate__factory.d.ts.map create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/ITokenPredicate__factory.js create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction__factory.d.ts create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction__factory.d.ts.map create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/NativeMetaTransaction__factory.js create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage__factory.d.ts create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage__factory.d.ts.map create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManagerStorage__factory.js create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager__factory.d.ts create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager__factory.d.ts.map create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/RootChainManager__factory.js create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/index.d.ts create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/index.d.ts.map create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/RootChainManager.sol/index.js create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/ICheckpointManager__factory.d.ts create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/ICheckpointManager__factory.d.ts.map create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/ICheckpointManager__factory.js create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain__factory.d.ts create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain__factory.d.ts.map create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/IRootChain__factory.js create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager__factory.d.ts create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager__factory.d.ts.map create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/SimpleCheckpointManager__factory.js create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/index.d.ts create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/index.d.ts.map create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/SimpleCheckpointManager.sol/index.js create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/index.d.ts create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/index.d.ts.map create mode 100644 dist/types/factories/contracts/@maticnetwork/pos-portal/index.js create mode 100644 dist/types/factories/contracts/ChildRegistry__factory.d.ts create mode 100644 dist/types/factories/contracts/ChildRegistry__factory.d.ts.map create mode 100644 dist/types/factories/contracts/ChildRegistry__factory.js create mode 100644 dist/types/factories/contracts/DotCoinBurner__factory.d.ts create mode 100644 dist/types/factories/contracts/DotCoinBurner__factory.d.ts.map create mode 100644 dist/types/factories/contracts/DotCoinBurner__factory.js create mode 100644 dist/types/factories/contracts/IAddressReader__factory.d.ts create mode 100644 dist/types/factories/contracts/IAddressReader__factory.d.ts.map create mode 100644 dist/types/factories/contracts/IAddressReader__factory.js create mode 100644 dist/types/factories/contracts/IDataReader__factory.d.ts create mode 100644 dist/types/factories/contracts/IDataReader__factory.d.ts.map create mode 100644 dist/types/factories/contracts/IDataReader__factory.js create mode 100644 dist/types/factories/contracts/IERC1967__factory.d.ts create mode 100644 dist/types/factories/contracts/IERC1967__factory.d.ts.map create mode 100644 dist/types/factories/contracts/IERC1967__factory.js create mode 100644 dist/types/factories/contracts/IMintingManager__factory.d.ts create mode 100644 dist/types/factories/contracts/IMintingManager__factory.d.ts.map create mode 100644 dist/types/factories/contracts/IMintingManager__factory.js create mode 100644 dist/types/factories/contracts/IRecordReader__factory.d.ts create mode 100644 dist/types/factories/contracts/IRecordReader__factory.d.ts.map create mode 100644 dist/types/factories/contracts/IRecordReader__factory.js create mode 100644 dist/types/factories/contracts/IRecordStorage__factory.d.ts create mode 100644 dist/types/factories/contracts/IRecordStorage__factory.d.ts.map create mode 100644 dist/types/factories/contracts/IRecordStorage__factory.js create mode 100644 dist/types/factories/contracts/IRegistryReader__factory.d.ts create mode 100644 dist/types/factories/contracts/IRegistryReader__factory.d.ts.map create mode 100644 dist/types/factories/contracts/IRegistryReader__factory.js create mode 100644 dist/types/factories/contracts/IReverseRegistry__factory.d.ts create mode 100644 dist/types/factories/contracts/IReverseRegistry__factory.d.ts.map create mode 100644 dist/types/factories/contracts/IReverseRegistry__factory.js create mode 100644 dist/types/factories/contracts/IRootRegistry__factory.d.ts create mode 100644 dist/types/factories/contracts/IRootRegistry__factory.d.ts.map create mode 100644 dist/types/factories/contracts/IRootRegistry__factory.js create mode 100644 dist/types/factories/contracts/IUNSRegistry__factory.d.ts create mode 100644 dist/types/factories/contracts/IUNSRegistry__factory.d.ts.map create mode 100644 dist/types/factories/contracts/IUNSRegistry__factory.js create mode 100644 dist/types/factories/contracts/KeyStorage__factory.d.ts create mode 100644 dist/types/factories/contracts/KeyStorage__factory.d.ts.map create mode 100644 dist/types/factories/contracts/KeyStorage__factory.js create mode 100644 dist/types/factories/contracts/MintingManager__factory.d.ts create mode 100644 dist/types/factories/contracts/MintingManager__factory.d.ts.map create mode 100644 dist/types/factories/contracts/MintingManager__factory.js create mode 100644 dist/types/factories/contracts/ProxyReader__factory.d.ts create mode 100644 dist/types/factories/contracts/ProxyReader__factory.d.ts.map create mode 100644 dist/types/factories/contracts/ProxyReader__factory.js create mode 100644 dist/types/factories/contracts/RecordStorage__factory.d.ts create mode 100644 dist/types/factories/contracts/RecordStorage__factory.d.ts.map create mode 100644 dist/types/factories/contracts/RecordStorage__factory.js create mode 100644 dist/types/factories/contracts/RootRegistry__factory.d.ts create mode 100644 dist/types/factories/contracts/RootRegistry__factory.d.ts.map create mode 100644 dist/types/factories/contracts/RootRegistry__factory.js create mode 100644 dist/types/factories/contracts/UNSOperator__factory.d.ts create mode 100644 dist/types/factories/contracts/UNSOperator__factory.d.ts.map create mode 100644 dist/types/factories/contracts/UNSOperator__factory.js create mode 100644 dist/types/factories/contracts/UNSRegistry__factory.d.ts create mode 100644 dist/types/factories/contracts/UNSRegistry__factory.d.ts.map create mode 100644 dist/types/factories/contracts/UNSRegistry__factory.js create mode 100644 dist/types/factories/contracts/cns/ICNSRegistry__factory.d.ts create mode 100644 dist/types/factories/contracts/cns/ICNSRegistry__factory.d.ts.map create mode 100644 dist/types/factories/contracts/cns/ICNSRegistry__factory.js create mode 100644 dist/types/factories/contracts/cns/IMintingController__factory.d.ts create mode 100644 dist/types/factories/contracts/cns/IMintingController__factory.d.ts.map create mode 100644 dist/types/factories/contracts/cns/IMintingController__factory.js create mode 100644 dist/types/factories/contracts/cns/IResolver__factory.d.ts create mode 100644 dist/types/factories/contracts/cns/IResolver__factory.d.ts.map create mode 100644 dist/types/factories/contracts/cns/IResolver__factory.js create mode 100644 dist/types/factories/contracts/cns/IURIPrefixController__factory.d.ts create mode 100644 dist/types/factories/contracts/cns/IURIPrefixController__factory.d.ts.map create mode 100644 dist/types/factories/contracts/cns/IURIPrefixController__factory.js create mode 100644 dist/types/factories/contracts/cns/index.d.ts create mode 100644 dist/types/factories/contracts/cns/index.d.ts.map create mode 100644 dist/types/factories/contracts/cns/index.js create mode 100644 dist/types/factories/contracts/custody/ENSCustody__factory.d.ts create mode 100644 dist/types/factories/contracts/custody/ENSCustody__factory.d.ts.map create mode 100644 dist/types/factories/contracts/custody/ENSCustody__factory.js create mode 100644 dist/types/factories/contracts/custody/IENSCustody__factory.d.ts create mode 100644 dist/types/factories/contracts/custody/IENSCustody__factory.d.ts.map create mode 100644 dist/types/factories/contracts/custody/IENSCustody__factory.js create mode 100644 dist/types/factories/contracts/custody/ZilliqaRecover__factory.d.ts create mode 100644 dist/types/factories/contracts/custody/ZilliqaRecover__factory.d.ts.map create mode 100644 dist/types/factories/contracts/custody/ZilliqaRecover__factory.js create mode 100644 dist/types/factories/contracts/custody/index.d.ts create mode 100644 dist/types/factories/contracts/custody/index.d.ts.map create mode 100644 dist/types/factories/contracts/custody/index.js create mode 100644 dist/types/factories/contracts/history/IUNSRegistryV07__factory.d.ts create mode 100644 dist/types/factories/contracts/history/IUNSRegistryV07__factory.d.ts.map create mode 100644 dist/types/factories/contracts/history/IUNSRegistryV07__factory.js create mode 100644 dist/types/factories/contracts/history/ProxyReaderV04__factory.d.ts create mode 100644 dist/types/factories/contracts/history/ProxyReaderV04__factory.d.ts.map create mode 100644 dist/types/factories/contracts/history/ProxyReaderV04__factory.js create mode 100644 dist/types/factories/contracts/history/UNSRegistryV07__factory.d.ts create mode 100644 dist/types/factories/contracts/history/UNSRegistryV07__factory.d.ts.map create mode 100644 dist/types/factories/contracts/history/UNSRegistryV07__factory.js create mode 100644 dist/types/factories/contracts/history/index.d.ts create mode 100644 dist/types/factories/contracts/history/index.d.ts.map create mode 100644 dist/types/factories/contracts/history/index.js create mode 100644 dist/types/factories/contracts/index.d.ts create mode 100644 dist/types/factories/contracts/index.d.ts.map create mode 100644 dist/types/factories/contracts/index.js create mode 100644 dist/types/factories/contracts/metatx/BaseForwarder__factory.d.ts create mode 100644 dist/types/factories/contracts/metatx/BaseForwarder__factory.d.ts.map create mode 100644 dist/types/factories/contracts/metatx/BaseForwarder__factory.js create mode 100644 dist/types/factories/contracts/metatx/BaseRoutingForwarder__factory.d.ts create mode 100644 dist/types/factories/contracts/metatx/BaseRoutingForwarder__factory.d.ts.map create mode 100644 dist/types/factories/contracts/metatx/BaseRoutingForwarder__factory.js create mode 100644 dist/types/factories/contracts/metatx/CNSRegistryForwarder__factory.d.ts create mode 100644 dist/types/factories/contracts/metatx/CNSRegistryForwarder__factory.d.ts.map create mode 100644 dist/types/factories/contracts/metatx/CNSRegistryForwarder__factory.js create mode 100644 dist/types/factories/contracts/metatx/ERC2771Context__factory.d.ts create mode 100644 dist/types/factories/contracts/metatx/ERC2771Context__factory.d.ts.map create mode 100644 dist/types/factories/contracts/metatx/ERC2771Context__factory.js create mode 100644 dist/types/factories/contracts/metatx/ERC2771RegistryContext__factory.d.ts create mode 100644 dist/types/factories/contracts/metatx/ERC2771RegistryContext__factory.d.ts.map create mode 100644 dist/types/factories/contracts/metatx/ERC2771RegistryContext__factory.js create mode 100644 dist/types/factories/contracts/metatx/Forwarder__factory.d.ts create mode 100644 dist/types/factories/contracts/metatx/Forwarder__factory.d.ts.map create mode 100644 dist/types/factories/contracts/metatx/Forwarder__factory.js create mode 100644 dist/types/factories/contracts/metatx/IForwarder__factory.d.ts create mode 100644 dist/types/factories/contracts/metatx/IForwarder__factory.d.ts.map create mode 100644 dist/types/factories/contracts/metatx/IForwarder__factory.js create mode 100644 dist/types/factories/contracts/metatx/MintingManagerForwarder__factory.d.ts create mode 100644 dist/types/factories/contracts/metatx/MintingManagerForwarder__factory.d.ts.map create mode 100644 dist/types/factories/contracts/metatx/MintingManagerForwarder__factory.js create mode 100644 dist/types/factories/contracts/metatx/ResolverForwarder__factory.d.ts create mode 100644 dist/types/factories/contracts/metatx/ResolverForwarder__factory.d.ts.map create mode 100644 dist/types/factories/contracts/metatx/ResolverForwarder__factory.js create mode 100644 dist/types/factories/contracts/metatx/UNSRegistryForwarder__factory.d.ts create mode 100644 dist/types/factories/contracts/metatx/UNSRegistryForwarder__factory.d.ts.map create mode 100644 dist/types/factories/contracts/metatx/UNSRegistryForwarder__factory.js create mode 100644 dist/types/factories/contracts/metatx/index.d.ts create mode 100644 dist/types/factories/contracts/metatx/index.d.ts.map create mode 100644 dist/types/factories/contracts/metatx/index.js create mode 100644 dist/types/factories/contracts/mocks/BaseForwarderMock__factory.d.ts create mode 100644 dist/types/factories/contracts/mocks/BaseForwarderMock__factory.d.ts.map create mode 100644 dist/types/factories/contracts/mocks/BaseForwarderMock__factory.js create mode 100644 dist/types/factories/contracts/mocks/BaseRoutingForwarderMock__factory.d.ts create mode 100644 dist/types/factories/contracts/mocks/BaseRoutingForwarderMock__factory.d.ts.map create mode 100644 dist/types/factories/contracts/mocks/BaseRoutingForwarderMock__factory.js create mode 100644 dist/types/factories/contracts/mocks/ERC1155Mock__factory.d.ts create mode 100644 dist/types/factories/contracts/mocks/ERC1155Mock__factory.d.ts.map create mode 100644 dist/types/factories/contracts/mocks/ERC1155Mock__factory.js create mode 100644 dist/types/factories/contracts/mocks/ERC20Mock__factory.d.ts create mode 100644 dist/types/factories/contracts/mocks/ERC20Mock__factory.d.ts.map create mode 100644 dist/types/factories/contracts/mocks/ERC20Mock__factory.js create mode 100644 dist/types/factories/contracts/mocks/ERC20UnsafeMock__factory.d.ts create mode 100644 dist/types/factories/contracts/mocks/ERC20UnsafeMock__factory.d.ts.map create mode 100644 dist/types/factories/contracts/mocks/ERC20UnsafeMock__factory.js create mode 100644 dist/types/factories/contracts/mocks/ERC2771ContextMock__factory.d.ts create mode 100644 dist/types/factories/contracts/mocks/ERC2771ContextMock__factory.d.ts.map create mode 100644 dist/types/factories/contracts/mocks/ERC2771ContextMock__factory.js create mode 100644 dist/types/factories/contracts/mocks/ERC2771RegistryContextMock__factory.d.ts create mode 100644 dist/types/factories/contracts/mocks/ERC2771RegistryContextMock__factory.d.ts.map create mode 100644 dist/types/factories/contracts/mocks/ERC2771RegistryContextMock__factory.js create mode 100644 dist/types/factories/contracts/mocks/ERC721Mock__factory.d.ts create mode 100644 dist/types/factories/contracts/mocks/ERC721Mock__factory.d.ts.map create mode 100644 dist/types/factories/contracts/mocks/ERC721Mock__factory.js create mode 100644 dist/types/factories/contracts/mocks/ERC721ReceiverMock__factory.d.ts create mode 100644 dist/types/factories/contracts/mocks/ERC721ReceiverMock__factory.d.ts.map create mode 100644 dist/types/factories/contracts/mocks/ERC721ReceiverMock__factory.js create mode 100644 dist/types/factories/contracts/mocks/MinterRoleMock__factory.d.ts create mode 100644 dist/types/factories/contracts/mocks/MinterRoleMock__factory.d.ts.map create mode 100644 dist/types/factories/contracts/mocks/MinterRoleMock__factory.js create mode 100644 dist/types/factories/contracts/mocks/MintingManagerMock__factory.d.ts create mode 100644 dist/types/factories/contracts/mocks/MintingManagerMock__factory.d.ts.map create mode 100644 dist/types/factories/contracts/mocks/MintingManagerMock__factory.js create mode 100644 dist/types/factories/contracts/mocks/UNSRegistryForwarderMock__factory.d.ts create mode 100644 dist/types/factories/contracts/mocks/UNSRegistryForwarderMock__factory.d.ts.map create mode 100644 dist/types/factories/contracts/mocks/UNSRegistryForwarderMock__factory.js create mode 100644 dist/types/factories/contracts/mocks/UNSRegistryMock__factory.d.ts create mode 100644 dist/types/factories/contracts/mocks/UNSRegistryMock__factory.d.ts.map create mode 100644 dist/types/factories/contracts/mocks/UNSRegistryMock__factory.js create mode 100644 dist/types/factories/contracts/mocks/index.d.ts create mode 100644 dist/types/factories/contracts/mocks/index.d.ts.map create mode 100644 dist/types/factories/contracts/mocks/index.js create mode 100644 dist/types/factories/contracts/roles/MinterRole__factory.d.ts create mode 100644 dist/types/factories/contracts/roles/MinterRole__factory.d.ts.map create mode 100644 dist/types/factories/contracts/roles/MinterRole__factory.js create mode 100644 dist/types/factories/contracts/roles/index.d.ts create mode 100644 dist/types/factories/contracts/roles/index.d.ts.map create mode 100644 dist/types/factories/contracts/roles/index.js create mode 100644 dist/types/factories/contracts/utils/Blocklist__factory.d.ts create mode 100644 dist/types/factories/contracts/utils/Blocklist__factory.d.ts.map create mode 100644 dist/types/factories/contracts/utils/Blocklist__factory.js create mode 100644 dist/types/factories/contracts/utils/ERC1271SimpleWallet__factory.d.ts create mode 100644 dist/types/factories/contracts/utils/ERC1271SimpleWallet__factory.d.ts.map create mode 100644 dist/types/factories/contracts/utils/ERC1271SimpleWallet__factory.js create mode 100644 dist/types/factories/contracts/utils/MultiSend__factory.d.ts create mode 100644 dist/types/factories/contracts/utils/MultiSend__factory.d.ts.map create mode 100644 dist/types/factories/contracts/utils/MultiSend__factory.js create mode 100644 dist/types/factories/contracts/utils/Ownable__factory.d.ts create mode 100644 dist/types/factories/contracts/utils/Ownable__factory.d.ts.map create mode 100644 dist/types/factories/contracts/utils/Ownable__factory.js create mode 100644 dist/types/factories/contracts/utils/Pausable__factory.d.ts create mode 100644 dist/types/factories/contracts/utils/Pausable__factory.d.ts.map create mode 100644 dist/types/factories/contracts/utils/Pausable__factory.js create mode 100644 dist/types/factories/contracts/utils/index.d.ts create mode 100644 dist/types/factories/contracts/utils/index.d.ts.map create mode 100644 dist/types/factories/contracts/utils/index.js create mode 100644 dist/types/factories/dot-crypto/contracts/CNSRegistry__factory.d.ts create mode 100644 dist/types/factories/dot-crypto/contracts/CNSRegistry__factory.d.ts.map create mode 100644 dist/types/factories/dot-crypto/contracts/CNSRegistry__factory.js create mode 100644 dist/types/factories/dot-crypto/contracts/ICNSRegistry__factory.d.ts create mode 100644 dist/types/factories/dot-crypto/contracts/ICNSRegistry__factory.d.ts.map create mode 100644 dist/types/factories/dot-crypto/contracts/ICNSRegistry__factory.js create mode 100644 dist/types/factories/dot-crypto/contracts/IRegistryReader__factory.d.ts create mode 100644 dist/types/factories/dot-crypto/contracts/IRegistryReader__factory.d.ts.map create mode 100644 dist/types/factories/dot-crypto/contracts/IRegistryReader__factory.js create mode 100644 dist/types/factories/dot-crypto/contracts/IResolverReader__factory.d.ts create mode 100644 dist/types/factories/dot-crypto/contracts/IResolverReader__factory.d.ts.map create mode 100644 dist/types/factories/dot-crypto/contracts/IResolverReader__factory.js create mode 100644 dist/types/factories/dot-crypto/contracts/IResolver__factory.d.ts create mode 100644 dist/types/factories/dot-crypto/contracts/IResolver__factory.d.ts.map create mode 100644 dist/types/factories/dot-crypto/contracts/IResolver__factory.js create mode 100644 dist/types/factories/dot-crypto/contracts/Resolver__factory.d.ts create mode 100644 dist/types/factories/dot-crypto/contracts/Resolver__factory.d.ts.map create mode 100644 dist/types/factories/dot-crypto/contracts/Resolver__factory.js create mode 100644 dist/types/factories/dot-crypto/contracts/controllers/DomainZoneController__factory.d.ts create mode 100644 dist/types/factories/dot-crypto/contracts/controllers/DomainZoneController__factory.d.ts.map create mode 100644 dist/types/factories/dot-crypto/contracts/controllers/DomainZoneController__factory.js create mode 100644 dist/types/factories/dot-crypto/contracts/controllers/IMintingController__factory.d.ts create mode 100644 dist/types/factories/dot-crypto/contracts/controllers/IMintingController__factory.d.ts.map create mode 100644 dist/types/factories/dot-crypto/contracts/controllers/IMintingController__factory.js create mode 100644 dist/types/factories/dot-crypto/contracts/controllers/ISignatureController__factory.d.ts create mode 100644 dist/types/factories/dot-crypto/contracts/controllers/ISignatureController__factory.d.ts.map create mode 100644 dist/types/factories/dot-crypto/contracts/controllers/ISignatureController__factory.js create mode 100644 dist/types/factories/dot-crypto/contracts/controllers/IURIPrefixController__factory.d.ts create mode 100644 dist/types/factories/dot-crypto/contracts/controllers/IURIPrefixController__factory.d.ts.map create mode 100644 dist/types/factories/dot-crypto/contracts/controllers/IURIPrefixController__factory.js create mode 100644 dist/types/factories/dot-crypto/contracts/controllers/MintingController__factory.d.ts create mode 100644 dist/types/factories/dot-crypto/contracts/controllers/MintingController__factory.d.ts.map create mode 100644 dist/types/factories/dot-crypto/contracts/controllers/MintingController__factory.js create mode 100644 dist/types/factories/dot-crypto/contracts/controllers/SignatureController__factory.d.ts create mode 100644 dist/types/factories/dot-crypto/contracts/controllers/SignatureController__factory.d.ts.map create mode 100644 dist/types/factories/dot-crypto/contracts/controllers/SignatureController__factory.js create mode 100644 dist/types/factories/dot-crypto/contracts/controllers/URIPrefixController__factory.d.ts create mode 100644 dist/types/factories/dot-crypto/contracts/controllers/URIPrefixController__factory.d.ts.map create mode 100644 dist/types/factories/dot-crypto/contracts/controllers/URIPrefixController__factory.js create mode 100644 dist/types/factories/dot-crypto/contracts/controllers/index.d.ts create mode 100644 dist/types/factories/dot-crypto/contracts/controllers/index.d.ts.map create mode 100644 dist/types/factories/dot-crypto/contracts/controllers/index.js create mode 100644 dist/types/factories/dot-crypto/contracts/index.d.ts create mode 100644 dist/types/factories/dot-crypto/contracts/index.d.ts.map create mode 100644 dist/types/factories/dot-crypto/contracts/index.js create mode 100644 dist/types/factories/dot-crypto/contracts/util/BulkWhitelistedRole__factory.d.ts create mode 100644 dist/types/factories/dot-crypto/contracts/util/BulkWhitelistedRole__factory.d.ts.map create mode 100644 dist/types/factories/dot-crypto/contracts/util/BulkWhitelistedRole__factory.js create mode 100644 dist/types/factories/dot-crypto/contracts/util/ControllerRole__factory.d.ts create mode 100644 dist/types/factories/dot-crypto/contracts/util/ControllerRole__factory.d.ts.map create mode 100644 dist/types/factories/dot-crypto/contracts/util/ControllerRole__factory.js create mode 100644 dist/types/factories/dot-crypto/contracts/util/FreeMinter__factory.d.ts create mode 100644 dist/types/factories/dot-crypto/contracts/util/FreeMinter__factory.d.ts.map create mode 100644 dist/types/factories/dot-crypto/contracts/util/FreeMinter__factory.js create mode 100644 dist/types/factories/dot-crypto/contracts/util/SignatureUtil__factory.d.ts create mode 100644 dist/types/factories/dot-crypto/contracts/util/SignatureUtil__factory.d.ts.map create mode 100644 dist/types/factories/dot-crypto/contracts/util/SignatureUtil__factory.js create mode 100644 dist/types/factories/dot-crypto/contracts/util/index.d.ts create mode 100644 dist/types/factories/dot-crypto/contracts/util/index.d.ts.map create mode 100644 dist/types/factories/dot-crypto/contracts/util/index.js create mode 100644 dist/types/factories/dot-crypto/index.d.ts create mode 100644 dist/types/factories/dot-crypto/index.d.ts.map create mode 100644 dist/types/factories/dot-crypto/index.js create mode 100644 dist/types/factories/index.d.ts create mode 100644 dist/types/factories/index.d.ts.map create mode 100644 dist/types/factories/index.js create mode 100644 dist/types/index.d.ts create mode 100644 dist/types/index.d.ts.map create mode 100644 dist/types/index.js create mode 100644 dist/uns-config.json diff --git a/dist/hardhat.config.d.ts b/dist/hardhat.config.d.ts new file mode 100644 index 00000000..ca5c6fee --- /dev/null +++ b/dist/hardhat.config.d.ts @@ -0,0 +1,36 @@ +import { HardhatUserConfig } from 'hardhat/types/config'; +declare type MintersMap = Record; +declare module 'hardhat/types/config' { + interface HardhatUserConfig { + uns?: { + minters: MintersMap; + multisig: Record; + }; + } + interface HardhatConfig { + uns: { + minters: MintersMap; + multisig: Record; + }; + } + interface ProjectPathsUserConfig { + flatArtifacts: string; + } + interface ProjectPathsConfig { + flatArtifacts: string; + } +} +import '@typechain/hardhat'; +import '@nomicfoundation/hardhat-ethers'; +import '@nomicfoundation/hardhat-verify'; +import '@nomicfoundation/hardhat-chai-matchers'; +import '@nomiclabs/hardhat-solhint'; +import 'hardhat-tracer'; +import '@openzeppelin/hardhat-upgrades'; +import 'solidity-coverage'; +import 'hardhat-gas-reporter'; +import 'hardhat-contract-sizer'; +import 'hardhat-abi-exporter'; +declare const config: HardhatUserConfig; +export default config; +//# sourceMappingURL=hardhat.config.d.ts.map \ No newline at end of file diff --git a/dist/hardhat.config.d.ts.map b/dist/hardhat.config.d.ts.map new file mode 100644 index 00000000..bf15ae13 --- /dev/null +++ b/dist/hardhat.config.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"hardhat.config.d.ts","sourceRoot":"","sources":["../hardhat.config.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAMzD,aAAK,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;AAG3C,OAAO,QAAQ,sBAAsB,CAAC;IACpC,UAAU,iBAAiB;QACzB,GAAG,CAAC,EAAE;YACJ,OAAO,EAAE,UAAU,CAAC;YACpB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC;SACzC,CAAC;KACH;IAED,UAAU,aAAa;QACrB,GAAG,EAAE;YACH,OAAO,EAAE,UAAU,CAAC;YACpB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;SAClC,CAAC;KACH;IAED,UAAU,sBAAsB;QAC9B,aAAa,EAAE,MAAM,CAAC;KACvB;IAED,UAAU,kBAAkB;QAC1B,aAAa,EAAE,MAAM,CAAC;KACvB;CACF;AAED,OAAO,oBAAoB,CAAC;AAC5B,OAAO,iCAAiC,CAAC;AACzC,OAAO,iCAAiC,CAAC;AACzC,OAAO,wCAAwC,CAAC;AAEhD,OAAO,4BAA4B,CAAC;AACpC,OAAO,gBAAgB,CAAC;AAExB,OAAO,gCAAgC,CAAC;AAGxC,OAAO,mBAAmB,CAAC;AAE3B,OAAO,sBAAsB,CAAC;AAC9B,OAAO,wBAAwB,CAAC;AAqChC,OAAO,sBAAsB,CAAC;AAS9B,QAAA,MAAM,MAAM,EAAE,iBAmIb,CAAC;AAEF,eAAe,MAAM,CAAC"} \ No newline at end of file diff --git a/dist/hardhat.config.js b/dist/hardhat.config.js new file mode 100644 index 00000000..9014fa74 --- /dev/null +++ b/dist/hardhat.config.js @@ -0,0 +1,183 @@ +"use strict"; +var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { + function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } + return new (P || (P = Promise))(function (resolve, reject) { + function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } + function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } + function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); +}; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +const path_1 = __importDefault(require("path")); +const fs_1 = __importDefault(require("fs")); +const task_names_1 = require("hardhat/builtin-tasks/task-names"); +const config_1 = require("hardhat/config"); +const lodash_1 = require("lodash"); +require("@typechain/hardhat"); +require("@nomicfoundation/hardhat-ethers"); +require("@nomicfoundation/hardhat-verify"); +require("@nomicfoundation/hardhat-chai-matchers"); +require("@nomiclabs/hardhat-solhint"); +require("hardhat-tracer"); +require("@openzeppelin/hardhat-upgrades"); +require("solidity-coverage"); +require("hardhat-gas-reporter"); +require("hardhat-contract-sizer"); +const yargs_1 = __importDefault(require("yargs/yargs")); +const sandbox_1 = require("./sandbox"); +const argv = (0, yargs_1.default)().env('').boolean('enableGasReport').boolean('enableContractSizer').boolean('ci').parseSync(); +(0, config_1.task)(task_names_1.TASK_COMPILE, 'hook compile task to perform post-compile task', (_, hre, runSuper) => __awaiter(void 0, void 0, void 0, function* () { + const { root, flatArtifacts } = hre.config.paths; + const outputDir = path_1.default.resolve(root, flatArtifacts); + yield runSuper(); + if (fs_1.default.existsSync(outputDir)) { + fs_1.default.rmdirSync(outputDir, { recursive: true }); + } + fs_1.default.mkdirSync(outputDir, { recursive: true }); + for (const artifactPath of yield hre.artifacts.getArtifactPaths()) { + const artifact = fs_1.default.readFileSync(artifactPath); + const { abi, contractName } = JSON.parse(artifact.toString()); + if (!abi.length || contractName.includes('Mock')) + continue; + const target = path_1.default.join(outputDir, `${contractName}.json`); + fs_1.default.copyFileSync(artifactPath, target); + } +})); +require("hardhat-abi-exporter"); +const settings = { + optimizer: { + enabled: true, + runs: 200, + }, +}; +const config = { + solidity: { + compilers: [ + { + version: '0.5.12', + settings, + }, + { + version: '0.6.6', + settings: Object.assign(Object.assign({}, settings), { metadata: { + bytecodeHash: 'none', + } }), + }, + { + version: '0.8.17', + settings: Object.assign(Object.assign({}, settings), { metadata: { + bytecodeHash: 'none', + } }), + }, + ], + }, + paths: { + artifacts: './.artifacts', + flatArtifacts: './artifacts', + }, + networks: { + hardhat: { + blockGasLimit: 10000000, + initialBaseFeePerGas: 0, + hardfork: 'merge', + }, + localhost: { + url: 'http://localhost:8545', + chainId: 31337, + loggingEnabled: true, + }, + sandbox: sandbox_1.Sandbox.defaultNetworkOptions(), + sepolia: { + url: `https://sepolia.infura.io/v3/${process.env.SEPOLIA_INFURA_KEY}`, + chainId: 11155111, + accounts: process.env.SEPOLIA_UNS_PRIVATE_KEY ? [process.env.SEPOLIA_UNS_PRIVATE_KEY] : undefined, + }, + amoy: { + url: `https://polygon-amoy.infura.io/v3/${process.env.AMOY_INFURA_KEY}`, + chainId: 80002, + accounts: process.env.AMOY_UNS_PRIVATE_KEY ? [process.env.AMOY_UNS_PRIVATE_KEY] : undefined, + }, + mainnet: { + url: `https://mainnet.infura.io/v3/${process.env.MAINNET_INFURA_KEY}`, + chainId: 1, + accounts: process.env.MAINNET_UNS_PRIVATE_KEY ? [process.env.MAINNET_UNS_PRIVATE_KEY] : undefined, + loggingEnabled: true, + }, + polygon: { + url: `https://polygon-mainnet.infura.io/v3/${process.env.POLYGON_INFURA_KEY}`, + chainId: 137, + accounts: process.env.POLYGON_UNS_PRIVATE_KEY ? [process.env.POLYGON_UNS_PRIVATE_KEY] : undefined, + loggingEnabled: true, + }, + }, + typechain: { + outDir: 'types', + target: 'ethers-v6', + }, + gasReporter: { + enabled: argv.enableGasReport, + currency: 'USD', + outputFile: argv.ci ? 'gas-report.txt' : undefined, + excludeContracts: ['ERC721ReceiverMock', 'ERC2771RegistryContextMock', 'ERC20Upgradeable'], + }, + contractSizer: { + alphaSort: true, + runOnCompile: argv.enableContractSizer, + disambiguatePaths: false, + only: ['UNSRegistry.sol', 'ProxyReader.sol', 'MintingManager.sol', 'ENSCustody.sol'], + }, + mocha: { + timeout: 100000, + }, + etherscan: { + apiKey: (0, lodash_1.pickBy)({ + mainnet: process.env.ETHERSCAN_API_KEY, + sepolia: process.env.ETHERSCAN_API_KEY, + polygon: process.env.POLYGONSCAN_API_KEY, + polygonAmoy: process.env.POLYGONSCAN_API_KEY, + }), + customChains: [ + { + network: 'polygonAmoy', + chainId: 80002, + urls: { + apiURL: 'https://api-amoy.polygonscan.com/api', + browserURL: 'https://amoy.polygonscan.com/', + }, + }, + ], + }, + abiExporter: { + path: './artifacts/abi', + clear: true, + flat: true, + except: ['Mock'], + spacing: 0, + }, + uns: { + minters: { + hardhat: ['0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266'], + localhost: ['0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266'], + sandbox: ['0x9DC64b2558b458A15C7f01c192D874Ef460f0A29'], + sepolia: ['0x1daf08a27304a78434e22ab79bea508e341f910d'], + amoy: ['0x31df70766e92c0a69ada7ecb6dc1634d64748be2'], + mainnet: ['0x5465c72ce00196550d6f89c40830f6bc81599f4f'], + polygon: ['0x58cb2542a5b3b0999d41de59ad03331bbfb4dda3'], + }, + multisig: { + mainnet: '0x6bEca92600be24179ae70A430AEF4aE632fddDc8', + polygon: '0xC8E1B5c41c42ad1cE8336714cA2b2f2588F0a337', + sepolia: '0x1197C09C38d460584473e8837D79c14343f24890', + amoy: '0x458adB6cce7D9984b74bC83c6F71Fbd1fd16085e', + }, + }, + defender: { + apiKey: process.env.DEFENDER_API_KEY || '', + apiSecret: process.env.DEFENDER_API_SECRET || '', + }, +}; +exports.default = config; diff --git a/dist/index.d.ts b/dist/index.d.ts new file mode 100644 index 00000000..3fce74b8 --- /dev/null +++ b/dist/index.d.ts @@ -0,0 +1,5 @@ +export * from './sandbox'; +export * from './src/config'; +export * from './src/types'; +export * as contracts from './src/types'; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/index.d.ts.map b/dist/index.d.ts.map new file mode 100644 index 00000000..7b753be6 --- /dev/null +++ b/dist/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC"} \ No newline at end of file diff --git a/dist/index.js b/dist/index.js new file mode 100644 index 00000000..d45e9625 --- /dev/null +++ b/dist/index.js @@ -0,0 +1,33 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __exportStar = (this && this.__exportStar) || function(m, exports) { + for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); +}; +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.contracts = void 0; +__exportStar(require("./sandbox"), exports); +__exportStar(require("./src/config"), exports); +__exportStar(require("./src/types"), exports); +exports.contracts = __importStar(require("./src/types")); diff --git a/dist/sandbox/db.tgz b/dist/sandbox/db.tgz new file mode 100644 index 0000000000000000000000000000000000000000..bac527ed4728642940e1c00f0160847f1e2cb663 GIT binary patch literal 548070 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

Csik_7tJA+^V_z&yIfxxEViztMosc+D@p5Pv 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%0D#%Ct~F8xaJ>X!X_B|GccQpHB!KHfZ9A^> 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

Csik_7tJA+^V_z&yIfxxEViztMosc+D@p5Pv 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%0D#%Ct~F8xaJ>X!X_B|GccQpHB!KHfZ9A^> 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